about summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--.git-blame-ignore-revs9
-rw-r--r--.github/CODEOWNERS18
-rw-r--r--.github/labeler.yml8
-rw-r--r--.github/workflows/backport.yml2
-rw-r--r--.github/workflows/basic-eval.yml2
-rw-r--r--.github/workflows/check-by-name.yml23
-rw-r--r--.github/workflows/check-cherry-picks.yml2
-rw-r--r--.github/workflows/check-maintainers-sorted.yaml2
-rw-r--r--.github/workflows/check-nix-format.yml10
-rw-r--r--.github/workflows/editorconfig.yml2
-rw-r--r--.github/workflows/manual-nixos.yml2
-rw-r--r--.github/workflows/manual-nixpkgs.yml2
-rw-r--r--.github/workflows/nix-parse.yml2
-rw-r--r--.github/workflows/periodic-merge-24h.yml2
-rw-r--r--.github/workflows/periodic-merge-6h.yml2
-rw-r--r--.github/workflows/update-terraform-providers.yml2
-rw-r--r--CONTRIBUTING.md2
-rw-r--r--doc/README.md4
-rw-r--r--doc/build-helpers/special/fhs-environments.section.md2
-rw-r--r--doc/languages-frameworks/gnome.section.md32
-rw-r--r--doc/languages-frameworks/go.section.md2
-rw-r--r--doc/languages-frameworks/haskell.section.md72
-rw-r--r--doc/languages-frameworks/pkg-config.section.md12
-rw-r--r--doc/stdenv/meta.chapter.md2
-rw-r--r--lib/fetchers.nix1
-rw-r--r--lib/systems/default.nix2
-rw-r--r--maintainers/maintainer-list.nix262
-rwxr-xr-xmaintainers/scripts/kde/collect-missing-deps.py4
-rw-r--r--maintainers/scripts/luarocks-packages.csv39
-rw-r--r--maintainers/team-list.nix22
-rw-r--r--nixos/doc/manual/configuration/abstractions.section.md2
-rw-r--r--nixos/doc/manual/development/settings-options.section.md21
-rw-r--r--nixos/doc/manual/installation/installing-from-other-distro.section.md4
-rw-r--r--nixos/doc/manual/installation/installing-virtualbox-guest.section.md4
-rw-r--r--nixos/doc/manual/installation/upgrading.chapter.md4
-rw-r--r--nixos/doc/manual/release-notes/rl-2405.section.md120
-rw-r--r--nixos/lib/systemd-lib.nix3
-rw-r--r--nixos/lib/testing/driver.nix2
-rw-r--r--nixos/modules/config/terminfo.nix2
-rw-r--r--nixos/modules/config/xdg/terminal-exec.nix54
-rw-r--r--nixos/modules/hardware/openrazer.nix21
-rw-r--r--nixos/modules/hardware/video/intel-gpu-tools.nix25
-rw-r--r--nixos/modules/misc/version.nix2
-rw-r--r--nixos/modules/module-list.nix7
-rw-r--r--nixos/modules/profiles/perlless.nix2
-rw-r--r--nixos/modules/programs/_1password-gui.nix16
-rw-r--r--nixos/modules/programs/_1password.nix10
-rw-r--r--nixos/modules/programs/adb.nix10
-rw-r--r--nixos/modules/programs/alvr.nix16
-rw-r--r--nixos/modules/programs/appgate-sdp.nix6
-rw-r--r--nixos/modules/programs/atop.nix50
-rw-r--r--nixos/modules/programs/ausweisapp.nix8
-rw-r--r--nixos/modules/programs/autojump.nix12
-rw-r--r--nixos/modules/programs/bandwhich.nix10
-rw-r--r--nixos/modules/programs/bash-my-aws.nix6
-rw-r--r--nixos/modules/programs/bash/bash-completion.nix6
-rw-r--r--nixos/modules/programs/bash/bash.nix48
-rw-r--r--nixos/modules/programs/bash/blesh.nix9
-rw-r--r--nixos/modules/programs/bash/ls-colors.nix6
-rw-r--r--nixos/modules/programs/bash/undistract-me.nix16
-rw-r--r--nixos/modules/programs/browserpass.nix6
-rw-r--r--nixos/modules/programs/calls.nix6
-rw-r--r--nixos/modules/programs/cdemu.nix24
-rw-r--r--nixos/modules/programs/cfs-zen-tweaks.nix8
-rw-r--r--nixos/modules/programs/chromium.nix44
-rw-r--r--nixos/modules/programs/cnping.nix6
-rw-r--r--nixos/modules/programs/command-not-found/command-not-found.nix12
-rw-r--r--nixos/modules/programs/criu.nix8
-rw-r--r--nixos/modules/programs/digitalbitbox/default.nix10
-rw-r--r--nixos/modules/programs/dmrconfig.nix12
-rw-r--r--nixos/modules/programs/droidcam.nix4
-rw-r--r--nixos/modules/programs/dublin-traceroute.nix10
-rw-r--r--nixos/modules/programs/ecryptfs.nix6
-rw-r--r--nixos/modules/programs/environment.nix10
-rw-r--r--nixos/modules/programs/extra-container.nix5
-rw-r--r--nixos/modules/programs/feedbackd.nix8
-rw-r--r--nixos/modules/programs/firefox.nix52
-rw-r--r--nixos/modules/programs/firejail.nix40
-rw-r--r--nixos/modules/programs/fish.nix86
-rw-r--r--nixos/modules/programs/flashrom.nix10
-rw-r--r--nixos/modules/programs/flexoptix-app.nix8
-rw-r--r--nixos/modules/programs/freetds.nix12
-rw-r--r--nixos/modules/programs/fuse.nix16
-rw-r--r--nixos/modules/programs/gamemode.nix20
-rw-r--r--nixos/modules/programs/gamescope.nix36
-rw-r--r--nixos/modules/programs/geary.nix8
-rw-r--r--nixos/modules/programs/git.nix34
-rw-r--r--nixos/modules/programs/gphoto2.nix10
-rw-r--r--nixos/modules/programs/haguichi.nix6
-rw-r--r--nixos/modules/programs/hamster.nix4
-rw-r--r--nixos/modules/programs/htop.nix24
-rw-r--r--nixos/modules/programs/i3lock.nix14
-rw-r--r--nixos/modules/programs/iftop.nix6
-rw-r--r--nixos/modules/programs/iotop.nix6
-rw-r--r--nixos/modules/programs/java.nix12
-rw-r--r--nixos/modules/programs/joycond-cemuhook.nix3
-rw-r--r--nixos/modules/programs/k3b.nix8
-rw-r--r--nixos/modules/programs/k40-whisperer.nix12
-rw-r--r--nixos/modules/programs/kbdlight.nix6
-rw-r--r--nixos/modules/programs/kclock.nix5
-rw-r--r--nixos/modules/programs/kdeconnect.nix8
-rw-r--r--nixos/modules/programs/less.nix64
-rw-r--r--nixos/modules/programs/liboping.nix8
-rw-r--r--nixos/modules/programs/light.nix20
-rw-r--r--nixos/modules/programs/mdevctl.nix5
-rw-r--r--nixos/modules/programs/mepo.nix17
-rw-r--r--nixos/modules/programs/mininet.nix6
-rw-r--r--nixos/modules/programs/msmtp.nix32
-rw-r--r--nixos/modules/programs/mtr.nix12
-rw-r--r--nixos/modules/programs/nbd.nix6
-rw-r--r--nixos/modules/programs/neovim.nix76
-rw-r--r--nixos/modules/programs/nethoscope.nix10
-rw-r--r--nixos/modules/programs/nncp.nix23
-rw-r--r--nixos/modules/programs/noisetorch.nix8
-rw-r--r--nixos/modules/programs/npm.nix8
-rw-r--r--nixos/modules/programs/oblogout.nix4
-rw-r--r--nixos/modules/programs/openvpn3.nix12
-rw-r--r--nixos/modules/programs/pantheon-tweaks.nix8
-rw-r--r--nixos/modules/programs/plotinus.nix8
-rw-r--r--nixos/modules/programs/proxychains.nix71
-rw-r--r--nixos/modules/programs/qt5ct.nix4
-rw-r--r--nixos/modules/programs/rust-motd.nix34
-rw-r--r--nixos/modules/programs/sedutil.nix6
-rw-r--r--nixos/modules/programs/shadow.nix53
-rw-r--r--nixos/modules/programs/sharing.nix5
-rw-r--r--nixos/modules/programs/singularity.nix35
-rw-r--r--nixos/modules/programs/slock.nix10
-rw-r--r--nixos/modules/programs/soundmodem.nix10
-rw-r--r--nixos/modules/programs/spacefm.nix16
-rw-r--r--nixos/modules/programs/ssh.nix136
-rw-r--r--nixos/modules/programs/steam.nix72
-rw-r--r--nixos/modules/programs/streamdeck-ui.nix18
-rw-r--r--nixos/modules/programs/sysdig.nix6
-rw-r--r--nixos/modules/programs/system-config-printer.nix6
-rw-r--r--nixos/modules/programs/systemtap.nix8
-rw-r--r--nixos/modules/programs/thefuck.nix14
-rw-r--r--nixos/modules/programs/thunar.nix14
-rw-r--r--nixos/modules/programs/traceroute.nix8
-rw-r--r--nixos/modules/programs/turbovnc.nix8
-rw-r--r--nixos/modules/programs/udevil.nix6
-rw-r--r--nixos/modules/programs/usbtop.nix6
-rw-r--r--nixos/modules/programs/vim.nix12
-rw-r--r--nixos/modules/programs/virt-manager.nix18
-rw-r--r--nixos/modules/programs/wavemon.nix8
-rw-r--r--nixos/modules/programs/wayland/hyprland.nix60
-rw-r--r--nixos/modules/programs/wayland/river.nix22
-rw-r--r--nixos/modules/programs/wayland/sway.nix50
-rw-r--r--nixos/modules/programs/wayland/waybar.nix10
-rw-r--r--nixos/modules/programs/wayland/wayland-session.nix12
-rw-r--r--nixos/modules/programs/weylus.nix16
-rw-r--r--nixos/modules/programs/wireshark.nix10
-rw-r--r--nixos/modules/programs/xastir.nix8
-rw-r--r--nixos/modules/programs/xfconf.nix8
-rw-r--r--nixos/modules/programs/xfs_quota.nix48
-rw-r--r--nixos/modules/programs/xonsh.nix14
-rw-r--r--nixos/modules/programs/xss-lock.nix29
-rw-r--r--nixos/modules/programs/xwayland.nix20
-rw-r--r--nixos/modules/programs/yabar.nix60
-rw-r--r--nixos/modules/programs/ydotool.nix83
-rw-r--r--nixos/modules/programs/zmap.nix6
-rw-r--r--nixos/modules/programs/zsh/oh-my-zsh.nix52
-rw-r--r--nixos/modules/programs/zsh/zsh-autoenv.nix8
-rw-r--r--nixos/modules/programs/zsh/zsh-autosuggestions.nix32
-rw-r--r--nixos/modules/programs/zsh/zsh-syntax-highlighting.nix50
-rw-r--r--nixos/modules/programs/zsh/zsh.nix86
-rw-r--r--nixos/modules/security/systemd-confinement.nix36
-rw-r--r--nixos/modules/services/audio/navidrome.nix160
-rw-r--r--nixos/modules/services/backup/borgbackup.nix32
-rw-r--r--nixos/modules/services/backup/restic.nix19
-rw-r--r--nixos/modules/services/cluster/k3s/default.nix44
-rw-r--r--nixos/modules/services/databases/postgresql.nix2
-rw-r--r--nixos/modules/services/desktop-managers/plasma6.nix9
-rw-r--r--nixos/modules/services/desktops/gnome/gnome-remote-desktop.nix14
-rw-r--r--nixos/modules/services/display-managers/default.nix6
-rw-r--r--nixos/modules/services/display-managers/greetd.nix14
-rw-r--r--nixos/modules/services/hardware/kanata.nix53
-rw-r--r--nixos/modules/services/hardware/thermald.nix13
-rw-r--r--nixos/modules/services/hardware/udev.nix14
-rw-r--r--nixos/modules/services/home-automation/ebusd.nix159
-rw-r--r--nixos/modules/services/logging/promtail.nix4
-rw-r--r--nixos/modules/services/mail/stalwart-mail.nix1
-rw-r--r--nixos/modules/services/matrix/conduit.nix2
-rw-r--r--nixos/modules/services/matrix/mautrix-signal.nix249
-rw-r--r--nixos/modules/services/misc/bcg.nix6
-rw-r--r--nixos/modules/services/misc/devpi-server.nix128
-rw-r--r--nixos/modules/services/misc/heisenbridge.nix2
-rw-r--r--nixos/modules/services/misc/llama-cpp.nix1
-rw-r--r--nixos/modules/services/misc/portunus.nix14
-rw-r--r--nixos/modules/services/misc/private-gpt.nix121
-rw-r--r--nixos/modules/services/misc/snapper.nix21
-rw-r--r--nixos/modules/services/misc/tzupdate.nix2
-rw-r--r--nixos/modules/services/misc/wastebin.nix2
-rw-r--r--nixos/modules/services/misc/zoneminder.nix2
-rw-r--r--nixos/modules/services/monitoring/arbtt.nix2
-rw-r--r--nixos/modules/services/monitoring/loki.nix9
-rw-r--r--nixos/modules/services/monitoring/prometheus/exporters/bitcoin.nix4
-rw-r--r--nixos/modules/services/networking/clatd.nix1
-rw-r--r--nixos/modules/services/networking/hostapd.nix17
-rw-r--r--nixos/modules/services/networking/jotta-cli.md4
-rw-r--r--nixos/modules/services/networking/jotta-cli.nix4
-rw-r--r--nixos/modules/services/networking/networkmanager.nix2
-rw-r--r--nixos/modules/services/networking/pixiecore.nix4
-rw-r--r--nixos/modules/services/networking/radvd.nix13
-rw-r--r--nixos/modules/services/networking/smokeping.nix63
-rw-r--r--nixos/modules/services/networking/ssh/sshd.nix13
-rw-r--r--nixos/modules/services/networking/sunshine.nix6
-rw-r--r--nixos/modules/services/networking/tayga.nix26
-rw-r--r--nixos/modules/services/networking/vsftpd.nix2
-rw-r--r--nixos/modules/services/security/oauth2-proxy-nginx.nix6
-rw-r--r--nixos/modules/services/security/oauth2-proxy.nix32
-rw-r--r--nixos/modules/services/security/step-ca.nix2
-rw-r--r--nixos/modules/services/system/dbus.nix12
-rw-r--r--nixos/modules/services/web-apps/keycloak.nix7
-rw-r--r--nixos/modules/services/web-apps/miniflux.nix15
-rw-r--r--nixos/modules/services/web-apps/nextcloud.md5
-rw-r--r--nixos/modules/services/web-apps/nextcloud.nix23
-rw-r--r--nixos/modules/services/web-apps/plausible.nix9
-rw-r--r--nixos/modules/services/web-apps/pretalx.nix84
-rw-r--r--nixos/modules/services/web-apps/pretix.nix12
-rw-r--r--nixos/modules/services/web-apps/your_spotify.nix191
-rw-r--r--nixos/modules/services/web-servers/caddy/default.nix5
-rw-r--r--nixos/modules/services/web-servers/garage.nix45
-rw-r--r--nixos/modules/services/web-servers/nginx/default.nix11
-rw-r--r--nixos/modules/services/web-servers/traefik.nix2
-rw-r--r--nixos/modules/services/x11/desktop-managers/cinnamon.nix1
-rw-r--r--nixos/modules/services/x11/desktop-managers/gnome.nix4
-rw-r--r--nixos/modules/services/x11/desktop-managers/mate.nix1
-rw-r--r--nixos/modules/services/x11/window-managers/clfswm.nix2
-rw-r--r--nixos/modules/services/x11/window-managers/qtile.nix14
-rw-r--r--nixos/modules/services/x11/xserver.nix3
-rwxr-xr-xnixos/modules/system/activation/switch-to-configuration.pl3
-rw-r--r--nixos/modules/system/activation/switchable-system.nix109
-rw-r--r--nixos/modules/system/activation/test.nix4
-rw-r--r--nixos/modules/system/activation/top-level.nix23
-rw-r--r--nixos/modules/system/boot/binfmt.nix2
-rw-r--r--nixos/modules/system/boot/networkd.nix2
-rw-r--r--nixos/modules/tasks/filesystems/zfs.nix34
-rw-r--r--nixos/modules/testing/test-instrumentation.nix2
-rw-r--r--nixos/modules/virtualisation/containers.nix13
-rw-r--r--nixos/modules/virtualisation/incus.nix74
-rw-r--r--nixos/modules/virtualisation/lxc-image-metadata.nix4
-rw-r--r--nixos/modules/virtualisation/qemu-vm.nix2
-rw-r--r--nixos/release-combined.nix4
-rw-r--r--nixos/release-small.nix4
-rw-r--r--nixos/tests/acme.nix32
-rw-r--r--nixos/tests/all-tests.nix13
-rw-r--r--nixos/tests/archi.nix4
-rw-r--r--nixos/tests/avahi.nix2
-rw-r--r--nixos/tests/bittorrent.nix2
-rw-r--r--nixos/tests/containers-bridge.nix2
-rw-r--r--nixos/tests/containers-imperative.nix2
-rw-r--r--nixos/tests/containers-ip.nix2
-rw-r--r--nixos/tests/containers-portforward.nix2
-rw-r--r--nixos/tests/devpi-server.nix35
-rw-r--r--nixos/tests/elk.nix2
-rw-r--r--nixos/tests/fcitx5/default.nix3
-rw-r--r--nixos/tests/firefox.nix6
-rw-r--r--nixos/tests/firewall.nix2
-rw-r--r--nixos/tests/fish.nix2
-rw-r--r--nixos/tests/garage/default.nix1
-rw-r--r--nixos/tests/garage/with-3node-replication.nix8
-rw-r--r--nixos/tests/incus/container.nix108
-rw-r--r--nixos/tests/incus/default.nix21
-rw-r--r--nixos/tests/incus/incusd-options.nix110
-rw-r--r--nixos/tests/incus/lxd-to-incus.nix12
-rw-r--r--nixos/tests/incus/openvswitch.nix8
-rw-r--r--nixos/tests/incus/preseed.nix63
-rw-r--r--nixos/tests/incus/socket-activated.nix9
-rw-r--r--nixos/tests/incus/storage.nix12
-rw-r--r--nixos/tests/incus/ui.nix7
-rw-r--r--nixos/tests/incus/virtual-machine.nix13
-rw-r--r--nixos/tests/initrd-network.nix2
-rw-r--r--nixos/tests/installed-tests/gnome-photos.nix2
-rw-r--r--nixos/tests/installer.nix11
-rw-r--r--nixos/tests/ipv6.nix2
-rw-r--r--nixos/tests/jenkins.nix2
-rw-r--r--nixos/tests/jotta-cli.nix2
-rw-r--r--nixos/tests/k3s/default.nix18
-rw-r--r--nixos/tests/k3s/etcd.nix200
-rw-r--r--nixos/tests/k3s/multi-node.nix226
-rw-r--r--nixos/tests/k3s/single-node.nix131
-rw-r--r--nixos/tests/knot.nix4
-rw-r--r--nixos/tests/login.nix2
-rw-r--r--nixos/tests/logrotate.nix90
-rw-r--r--nixos/tests/mediamtx.nix95
-rw-r--r--nixos/tests/misc.nix343
-rw-r--r--nixos/tests/mumble.nix2
-rw-r--r--nixos/tests/munin.nix2
-rw-r--r--nixos/tests/mysql/common.nix2
-rw-r--r--nixos/tests/mysql/mysql.nix2
-rw-r--r--nixos/tests/nat.nix2
-rw-r--r--nixos/tests/nfs/simple.nix2
-rw-r--r--nixos/tests/openssh.nix2
-rw-r--r--nixos/tests/patroni.nix2
-rw-r--r--nixos/tests/pgvecto-rs.nix2
-rw-r--r--nixos/tests/postgresql-jit.nix15
-rw-r--r--nixos/tests/postgresql-wal-receiver.nix202
-rw-r--r--nixos/tests/printing.nix2
-rw-r--r--nixos/tests/private-gpt.nix27
-rw-r--r--nixos/tests/proxy.nix2
-rw-r--r--nixos/tests/quake3.nix2
-rw-r--r--nixos/tests/rabbitmq.nix2
-rw-r--r--nixos/tests/samba.nix2
-rw-r--r--nixos/tests/simple.nix2
-rw-r--r--nixos/tests/smokeping.nix14
-rw-r--r--nixos/tests/stalwart-mail.nix12
-rw-r--r--nixos/tests/stub-ld.nix4
-rw-r--r--nixos/tests/switch-test.nix7
-rw-r--r--nixos/tests/systemd-confinement.nix184
-rw-r--r--nixos/tests/systemd-confinement/checkperms.py187
-rw-r--r--nixos/tests/systemd-confinement/default.nix274
-rw-r--r--nixos/tests/systemd-initrd-modprobe.nix12
-rw-r--r--nixos/tests/tayga.nix19
-rw-r--r--nixos/tests/udisks2.nix3
-rw-r--r--nixos/tests/vector.nix20
-rw-r--r--nixos/tests/virtualbox.nix1
-rw-r--r--nixos/tests/web-apps/pretalx.nix9
-rw-r--r--nixos/tests/ydotool.nix115
-rw-r--r--nixos/tests/your_spotify.nix33
-rw-r--r--pkgs/applications/accessibility/dasher/default.nix4
-rw-r--r--pkgs/applications/accessibility/mousetweaks/default.nix4
-rw-r--r--pkgs/applications/accessibility/squeekboard/default.nix4
-rw-r--r--pkgs/applications/accessibility/wvkbd/default.nix4
-rw-r--r--pkgs/applications/audio/ardour/default.nix4
-rw-r--r--pkgs/applications/audio/ario/default.nix4
-rw-r--r--pkgs/applications/audio/audacious/default.nix1
-rw-r--r--pkgs/applications/audio/audacity/default.nix4
-rw-r--r--pkgs/applications/audio/audio-recorder/default.nix4
-rw-r--r--pkgs/applications/audio/beast/patch.patch187
-rw-r--r--pkgs/applications/audio/bitwig-studio/bitwig-studio3.nix4
-rw-r--r--pkgs/applications/audio/bitwig-studio/bitwig-studio4.nix4
-rw-r--r--pkgs/applications/audio/bitwig-studio/bitwig-studio5.nix4
-rw-r--r--pkgs/applications/audio/buzztrax/default.nix4
-rw-r--r--pkgs/applications/audio/cava/default.nix4
-rw-r--r--pkgs/applications/audio/deadbeef/default.nix4
-rw-r--r--pkgs/applications/audio/denemo/default.nix4
-rw-r--r--pkgs/applications/audio/eartag/default.nix6
-rw-r--r--pkgs/applications/audio/easyabc/default.nix4
-rw-r--r--pkgs/applications/audio/easytag/default.nix4
-rw-r--r--pkgs/applications/audio/ensemble-chorus/default.nix5
-rw-r--r--pkgs/applications/audio/ensemble-chorus/juice-cxx-packing-fix.diff55
-rw-r--r--pkgs/applications/audio/exaile/default.nix4
-rw-r--r--pkgs/applications/audio/feishin/default.nix8
-rw-r--r--pkgs/applications/audio/flac123/default.nix22
-rw-r--r--pkgs/applications/audio/flacon/default.nix4
-rw-r--r--pkgs/applications/audio/ft2-clone/default.nix4
-rw-r--r--pkgs/applications/audio/gbsplay/default.nix32
-rw-r--r--pkgs/applications/audio/gmpc/default.nix4
-rw-r--r--pkgs/applications/audio/go-musicfox/default.nix6
-rw-r--r--pkgs/applications/audio/goodvibes/default.nix4
-rw-r--r--pkgs/applications/audio/gpodder/default.nix4
-rw-r--r--pkgs/applications/audio/gspeech/default.nix4
-rw-r--r--pkgs/applications/audio/gst123/default.nix4
-rw-r--r--pkgs/applications/audio/guitarix/default.nix4
-rw-r--r--pkgs/applications/audio/hivelytracker/default.nix4
-rw-r--r--pkgs/applications/audio/hushboard/default.nix4
-rw-r--r--pkgs/applications/audio/indicator-sound-switcher/default.nix4
-rw-r--r--pkgs/applications/audio/jacktrip/default.nix4
-rw-r--r--pkgs/applications/audio/jmusicbot/default.nix4
-rw-r--r--pkgs/applications/audio/keyfinder-cli/default.nix2
-rw-r--r--pkgs/applications/audio/lingot/default.nix4
-rw-r--r--pkgs/applications/audio/lollypop/default.nix62
-rw-r--r--pkgs/applications/audio/lyrebird/default.nix4
-rw-r--r--pkgs/applications/audio/mixxx/default.nix11
-rw-r--r--pkgs/applications/audio/monkeys-audio/default.nix4
-rw-r--r--pkgs/applications/audio/mopidy/youtube.nix3
-rw-r--r--pkgs/applications/audio/mpdevil/default.nix6
-rw-r--r--pkgs/applications/audio/mpg321/default.nix53
-rw-r--r--pkgs/applications/audio/muse/default.nix2
-rw-r--r--pkgs/applications/audio/musescore/default.nix9
-rw-r--r--pkgs/applications/audio/muso/default.nix4
-rw-r--r--pkgs/applications/audio/mympd/default.nix4
-rw-r--r--pkgs/applications/audio/ncspot/default.nix6
-rw-r--r--pkgs/applications/audio/opustags/default.nix4
-rw-r--r--pkgs/applications/audio/paprefs/default.nix4
-rw-r--r--pkgs/applications/audio/pavucontrol/default.nix4
-rw-r--r--pkgs/applications/audio/pithos/default.nix4
-rw-r--r--pkgs/applications/audio/plexamp/default.nix5
-rw-r--r--pkgs/applications/audio/praat/default.nix8
-rw-r--r--pkgs/applications/audio/pulseeffects-legacy/default.nix4
-rw-r--r--pkgs/applications/audio/pyradio/default.nix10
-rw-r--r--pkgs/applications/audio/qmmp/default.nix4
-rw-r--r--pkgs/applications/audio/qpwgraph/default.nix4
-rw-r--r--pkgs/applications/audio/quodlibet/default.nix4
-rw-r--r--pkgs/applications/audio/radiotray-ng/default.nix4
-rw-r--r--pkgs/applications/audio/rhythmbox/default.nix4
-rw-r--r--pkgs/applications/audio/sfxr/default.nix4
-rw-r--r--pkgs/applications/audio/snd/default.nix4
-rw-r--r--pkgs/applications/audio/sonata/default.nix4
-rw-r--r--pkgs/applications/audio/sound-juicer/default.nix4
-rw-r--r--pkgs/applications/audio/soundconverter/default.nix4
-rw-r--r--pkgs/applications/audio/soundsource/default.nix6
-rw-r--r--pkgs/applications/audio/spek/default.nix4
-rw-r--r--pkgs/applications/audio/spotify-player/default.nix6
-rw-r--r--pkgs/applications/audio/spotify/linux.nix4
-rw-r--r--pkgs/applications/audio/squeezelite/default.nix6
-rw-r--r--pkgs/applications/audio/sublime-music/default.nix66
-rw-r--r--pkgs/applications/audio/surge-XT/default.nix4
-rw-r--r--pkgs/applications/audio/tidal-hifi/default.nix4
-rw-r--r--pkgs/applications/audio/transcribe/default.nix4
-rw-r--r--pkgs/applications/audio/tuner/default.nix4
-rw-r--r--pkgs/applications/audio/vcv-rack/default.nix4
-rw-r--r--pkgs/applications/audio/vocal/default.nix4
-rw-r--r--pkgs/applications/audio/waylyrics/default.nix15
-rw-r--r--pkgs/applications/audio/ymuse/default.nix4
-rw-r--r--pkgs/applications/audio/zam-plugins/default.nix4
-rw-r--r--pkgs/applications/audio/zrythm/default.nix103
-rw-r--r--pkgs/applications/backup/areca/fix-javah-bug.diff24
-rw-r--r--pkgs/applications/backup/ludusavi/default.nix24
-rw-r--r--pkgs/applications/backup/proxmox-backup-client/Cargo.lock1157
-rw-r--r--pkgs/applications/backup/proxmox-backup-client/default.nix28
-rw-r--r--pkgs/applications/backup/timeshift/wrapper.nix4
-rw-r--r--pkgs/applications/blockchains/bitcoin-abc/default.nix4
-rw-r--r--pkgs/applications/blockchains/bitcoin-knots/default.nix9
-rw-r--r--pkgs/applications/blockchains/bitcoin/default.nix3
-rw-r--r--pkgs/applications/blockchains/clboss/default.nix4
-rw-r--r--pkgs/applications/blockchains/erigon/default.nix6
-rw-r--r--pkgs/applications/blockchains/exodus/default.nix4
-rw-r--r--pkgs/applications/blockchains/ledger-live-desktop/default.nix10
-rw-r--r--pkgs/applications/blockchains/lnd/default.nix13
-rw-r--r--pkgs/applications/blockchains/miniscript/default.nix35
-rw-r--r--pkgs/applications/blockchains/mycrypto/default.nix8
-rw-r--r--pkgs/applications/blockchains/openethereum/Cargo.lock5476
-rw-r--r--pkgs/applications/blockchains/openethereum/default.nix62
-rw-r--r--pkgs/applications/blockchains/polkadot/Cargo.lock2136
-rw-r--r--pkgs/applications/blockchains/polkadot/default.nix12
-rw-r--r--pkgs/applications/blockchains/sparrow/default.nix53
-rw-r--r--pkgs/applications/blockchains/sparrow/publickey.asc90
-rwxr-xr-xpkgs/applications/blockchains/sparrow/update.sh26
-rw-r--r--pkgs/applications/blockchains/trezor-suite/default.nix6
-rw-r--r--pkgs/applications/blockchains/wasabiwallet/default.nix4
-rw-r--r--pkgs/applications/display-managers/greetd/default.nix6
-rw-r--r--pkgs/applications/display-managers/greetd/gtkgreet.nix4
-rw-r--r--pkgs/applications/display-managers/greetd/tuigreet.nix6
-rw-r--r--pkgs/applications/display-managers/lightdm-enso-os-greeter/default.nix4
-rw-r--r--pkgs/applications/display-managers/lightdm-mini-greeter/default.nix4
-rw-r--r--pkgs/applications/display-managers/lightdm-slick-greeter/default.nix4
-rw-r--r--pkgs/applications/display-managers/lightdm-tiny-greeter/default.nix4
-rw-r--r--pkgs/applications/display-managers/lightdm/gtk-greeter.nix6
-rw-r--r--pkgs/applications/editors/apostrophe/default.nix59
-rw-r--r--pkgs/applications/editors/bluefish/default.nix4
-rw-r--r--pkgs/applications/editors/bluej/default.nix4
-rw-r--r--pkgs/applications/editors/codeblocks/default.nix4
-rw-r--r--pkgs/applications/editors/ed/sources.nix4
-rw-r--r--pkgs/applications/editors/emacs/elisp-packages/elpa-devel-generated.nix1280
-rw-r--r--pkgs/applications/editors/emacs/elisp-packages/elpa-generated.nix1197
-rw-r--r--pkgs/applications/editors/emacs/elisp-packages/manual-packages/lsp-bridge/default.nix6
-rw-r--r--pkgs/applications/editors/emacs/elisp-packages/nongnu-generated.nix554
-rw-r--r--pkgs/applications/editors/emacs/elisp-packages/recipes-archive-melpa.json5033
-rw-r--r--pkgs/applications/editors/emacs/make-emacs.nix50
-rw-r--r--pkgs/applications/editors/focuswriter/default.nix4
-rw-r--r--pkgs/applications/editors/formiko/default.nix4
-rw-r--r--pkgs/applications/editors/fte/default.nix33
-rw-r--r--pkgs/applications/editors/geany/default.nix4
-rw-r--r--pkgs/applications/editors/gedit/default.nix4
-rw-r--r--pkgs/applications/editors/gnome-builder/default.nix11
-rw-r--r--pkgs/applications/editors/gnome-inform7/default.nix8
-rw-r--r--pkgs/applications/editors/gnome-latex/default.nix4
-rw-r--r--pkgs/applications/editors/gobby/default.nix4
-rw-r--r--pkgs/applications/editors/greenfoot/default.nix4
-rw-r--r--pkgs/applications/editors/heh/default.nix6
-rw-r--r--pkgs/applications/editors/hexedit/default.nix25
-rw-r--r--pkgs/applications/editors/jetbrains/bin/versions.json176
-rw-r--r--pkgs/applications/editors/jetbrains/plugins/plugins.json138
-rw-r--r--pkgs/applications/editors/kakoune/default.nix28
-rw-r--r--pkgs/applications/editors/l3afpad/default.nix4
-rw-r--r--pkgs/applications/editors/lapce/default.nix4
-rw-r--r--pkgs/applications/editors/lifeograph/default.nix4
-rw-r--r--pkgs/applications/editors/marker/default.nix4
-rw-r--r--pkgs/applications/editors/mindforger/default.nix4
-rw-r--r--pkgs/applications/editors/nano/default.nix13
-rw-r--r--pkgs/applications/editors/neovim/treesitter-parsers.nix24
-rw-r--r--pkgs/applications/editors/neovim/utils.nix2
-rw-r--r--pkgs/applications/editors/pinegrow/default.nix4
-rw-r--r--pkgs/applications/editors/pulsar/default.nix4
-rw-r--r--pkgs/applications/editors/quartus-prime/default.nix9
-rw-r--r--pkgs/applications/editors/sublime/3/common.nix4
-rw-r--r--pkgs/applications/editors/sublime/4/common.nix4
-rw-r--r--pkgs/applications/editors/texmaker/default.nix4
-rw-r--r--pkgs/applications/editors/textadept/default.nix4
-rw-r--r--pkgs/applications/editors/textadept/deps.nix17
-rw-r--r--pkgs/applications/editors/thiefmd/default.nix4
-rw-r--r--pkgs/applications/editors/tijolo/default.nix4
-rw-r--r--pkgs/applications/editors/vim/common.nix4
-rw-r--r--pkgs/applications/editors/vim/full.nix4
-rw-r--r--pkgs/applications/editors/vim/macvim.nix3
-rw-r--r--pkgs/applications/editors/vim/plugins/aliases.nix1
-rw-r--r--pkgs/applications/editors/vim/plugins/build-vim-plugin.nix3
-rw-r--r--pkgs/applications/editors/vim/plugins/deprecated.json14
-rw-r--r--pkgs/applications/editors/vim/plugins/generated.nix1500
-rw-r--r--pkgs/applications/editors/vim/plugins/nvim-treesitter/generated.nix677
-rw-r--r--pkgs/applications/editors/vim/plugins/overrides.nix24
-rw-r--r--pkgs/applications/editors/vim/plugins/vim-clap/Cargo.lock1307
-rw-r--r--pkgs/applications/editors/vim/plugins/vim-clap/default.nix4
-rw-r--r--pkgs/applications/editors/vim/plugins/vim-plugin-names8
-rw-r--r--pkgs/applications/editors/vim/plugins/vim-utils.nix1
-rw-r--r--pkgs/applications/editors/vscode/extensions/default.nix39
-rw-r--r--pkgs/applications/editors/vscode/extensions/jackmacwindows.craftos-pc/default.nix4
-rw-r--r--pkgs/applications/editors/vscode/extensions/ms-python.python/default.nix12
-rw-r--r--pkgs/applications/editors/vscode/extensions/ms-python.vscode-pylance/default.nix4
-rw-r--r--pkgs/applications/editors/vscode/extensions/ms-vscode.cpptools/default.nix12
-rw-r--r--pkgs/applications/editors/vscode/extensions/myriad-dreamin.tinymist/default.nix4
-rw-r--r--pkgs/applications/editors/vscode/extensions/reditorsupport.r/default.nix4
-rw-r--r--pkgs/applications/editors/vscode/extensions/tekumara.typos-vscode/default.nix64
-rw-r--r--pkgs/applications/editors/vscode/extensions/vadimcn.vscode-lldb/default.nix2
-rw-r--r--pkgs/applications/editors/vscode/generic.nix2
-rw-r--r--pkgs/applications/editors/vscode/vscode.nix16
-rw-r--r--pkgs/applications/editors/xed-editor/default.nix4
-rw-r--r--pkgs/applications/emulators/bsnes/ares/default.nix4
-rw-r--r--pkgs/applications/emulators/bsnes/bsnes-hd/default.nix4
-rw-r--r--pkgs/applications/emulators/cdemu/analyzer.nix39
-rw-r--r--pkgs/applications/emulators/cdemu/client.nix33
-rw-r--r--pkgs/applications/emulators/cdemu/common-drv-attrs.nix (renamed from pkgs/applications/emulators/cdemu/base.nix)23
-rw-r--r--pkgs/applications/emulators/cdemu/daemon.nix22
-rw-r--r--pkgs/applications/emulators/cdemu/gui.nix39
-rw-r--r--pkgs/applications/emulators/cdemu/libmirage.nix27
-rw-r--r--pkgs/applications/emulators/cdemu/vhba.nix2
-rw-r--r--pkgs/applications/emulators/cemu/default.nix8
-rw-r--r--pkgs/applications/emulators/craftos-pc/default.nix16
-rw-r--r--pkgs/applications/emulators/desmume/default.nix4
-rw-r--r--pkgs/applications/emulators/flycast/default.nix4
-rw-r--r--pkgs/applications/emulators/fuse-emulator/default.nix4
-rw-r--r--pkgs/applications/emulators/pcem/default.nix4
-rw-r--r--pkgs/applications/emulators/pcsxr/default.nix4
-rw-r--r--pkgs/applications/emulators/retroarch/cores.nix7
-rw-r--r--pkgs/applications/emulators/retroarch/hashes.json121
-rwxr-xr-xpkgs/applications/emulators/retroarch/update_cores.py8
-rw-r--r--pkgs/applications/emulators/ruffle/default.nix4
-rw-r--r--pkgs/applications/emulators/sameboy/default.nix6
-rw-r--r--pkgs/applications/emulators/vbam/default.nix6
-rw-r--r--pkgs/applications/emulators/vice/default.nix4
-rw-r--r--pkgs/applications/emulators/wine/base.nix92
-rw-r--r--pkgs/applications/emulators/wine/darwin-metal-compat-pre8.12.patch22
-rw-r--r--pkgs/applications/emulators/wine/darwin-metal-compat-pre8.18.patch12
-rw-r--r--pkgs/applications/emulators/wine/darwin-metal-compat.patch13
-rw-r--r--pkgs/applications/emulators/wine/darwin-qos.patch12
-rw-r--r--pkgs/applications/emulators/wine/sources.nix6
-rw-r--r--pkgs/applications/emulators/wine/staging.nix8
-rw-r--r--pkgs/applications/file-managers/krusader/default.nix4
-rw-r--r--pkgs/applications/file-managers/pcmanfm/default.nix4
-rw-r--r--pkgs/applications/file-managers/spacefm/default.nix4
-rw-r--r--pkgs/applications/finance/irpf/default.nix6
-rw-r--r--pkgs/applications/gis/grass/default.nix4
-rw-r--r--pkgs/applications/gis/qgis/unwrapped-ltr.nix4
-rw-r--r--pkgs/applications/gis/qgis/unwrapped.nix4
-rw-r--r--pkgs/applications/gis/zombietrackergps/default.nix74
-rw-r--r--pkgs/applications/graphics/ImageMagick/default.nix4
-rw-r--r--pkgs/applications/graphics/akira/default.nix4
-rw-r--r--pkgs/applications/graphics/avocode/default.nix4
-rw-r--r--pkgs/applications/graphics/ciano/default.nix4
-rw-r--r--pkgs/applications/graphics/cloudcompare/default.nix4
-rw-r--r--pkgs/applications/graphics/cq-editor/default.nix63
-rw-r--r--pkgs/applications/graphics/darktable/default.nix4
-rw-r--r--pkgs/applications/graphics/dia/default.nix4
-rw-r--r--pkgs/applications/graphics/dosage/default.nix2
-rw-r--r--pkgs/applications/graphics/drawing/default.nix4
-rw-r--r--pkgs/applications/graphics/emulsion/default.nix6
-rw-r--r--pkgs/applications/graphics/figma-linux/default.nix4
-rw-r--r--pkgs/applications/graphics/fondo/default.nix4
-rw-r--r--pkgs/applications/graphics/gcolor3/default.nix4
-rw-r--r--pkgs/applications/graphics/geeqie/default.nix4
-rw-r--r--pkgs/applications/graphics/gimp/default.nix4
-rw-r--r--pkgs/applications/graphics/gnome-photos/default.nix4
-rw-r--r--pkgs/applications/graphics/goxel/default.nix4
-rw-r--r--pkgs/applications/graphics/gscan2pdf/default.nix4
-rw-r--r--pkgs/applications/graphics/gscreenshot/default.nix6
-rw-r--r--pkgs/applications/graphics/gthumb/default.nix4
-rw-r--r--pkgs/applications/graphics/halftone/default.nix6
-rw-r--r--pkgs/applications/graphics/hugin/default.nix4
-rw-r--r--pkgs/applications/graphics/icon-library/default.nix6
-rw-r--r--pkgs/applications/graphics/ideogram/default.nix4
-rw-r--r--pkgs/applications/graphics/imagej/default.nix4
-rw-r--r--pkgs/applications/graphics/inkscape/default.nix4
-rw-r--r--pkgs/applications/graphics/inkscape/extensions/textext/default.nix4
-rw-r--r--pkgs/applications/graphics/kgraphviewer/default.nix4
-rw-r--r--pkgs/applications/graphics/komikku/default.nix6
-rw-r--r--pkgs/applications/graphics/komorebi/default.nix4
-rw-r--r--pkgs/applications/graphics/kphotoalbum/default.nix4
-rw-r--r--pkgs/applications/graphics/lightburn/default.nix4
-rw-r--r--pkgs/applications/graphics/mypaint/default.nix4
-rw-r--r--pkgs/applications/graphics/ocrfeeder/default.nix4
-rw-r--r--pkgs/applications/graphics/oculante/default.nix10
-rw-r--r--pkgs/applications/graphics/openscad/default.nix4
-rw-r--r--pkgs/applications/graphics/pencil/default.nix4
-rw-r--r--pkgs/applications/graphics/photoqt/default.nix4
-rw-r--r--pkgs/applications/graphics/pick-colour-picker/default.nix4
-rw-r--r--pkgs/applications/graphics/pinta/default.nix4
-rw-r--r--pkgs/applications/graphics/pizarra/default.nix4
-rw-r--r--pkgs/applications/graphics/processing/default.nix4
-rw-r--r--pkgs/applications/graphics/rawtherapee/default.nix4
-rw-r--r--pkgs/applications/graphics/shotwell/default.nix4
-rw-r--r--pkgs/applications/graphics/shutter/default.nix4
-rw-r--r--pkgs/applications/graphics/snapshot/default.nix4
-rw-r--r--pkgs/applications/graphics/solvespace/default.nix4
-rw-r--r--pkgs/applications/graphics/symbolic-preview/default.nix6
-rw-r--r--pkgs/applications/graphics/synfigstudio/default.nix4
-rw-r--r--pkgs/applications/graphics/tev/default.nix4
-rw-r--r--pkgs/applications/graphics/texturepacker/default.nix4
-rw-r--r--pkgs/applications/graphics/upscayl/default.nix2
-rw-r--r--pkgs/applications/graphics/vengi-tools/default.nix4
-rw-r--r--pkgs/applications/graphics/xournalpp/default.nix4
-rw-r--r--pkgs/applications/graphics/xpano/default.nix4
-rw-r--r--pkgs/applications/graphics/yed/default.nix6
-rw-r--r--pkgs/applications/kde/audiotube.nix4
-rw-r--r--pkgs/applications/kde/kasts.nix4
-rw-r--r--pkgs/applications/kde/kdenlive/default.nix4
-rw-r--r--pkgs/applications/kde/partitionmanager/default.nix4
-rw-r--r--pkgs/applications/kde/plasmatube/default.nix4
-rw-r--r--pkgs/applications/kde/skanlite.nix4
-rw-r--r--pkgs/applications/kde/spectacle.nix4
-rw-r--r--pkgs/applications/misc/1password-gui/linux.nix4
-rw-r--r--pkgs/applications/misc/1password/default.nix10
-rw-r--r--pkgs/applications/misc/HentaiAtHome/default.nix4
-rw-r--r--pkgs/applications/misc/almanah/default.nix4
-rw-r--r--pkgs/applications/misc/appeditor/default.nix4
-rw-r--r--pkgs/applications/misc/audio/sox/default.nix2
-rw-r--r--pkgs/applications/misc/auto-multiple-choice/default.nix4
-rw-r--r--pkgs/applications/misc/avizo/default.nix4
-rw-r--r--pkgs/applications/misc/bambu-studio/default.nix7
-rw-r--r--pkgs/applications/misc/barrier/default.nix4
-rw-r--r--pkgs/applications/misc/bazecor/default.nix4
-rw-r--r--pkgs/applications/misc/bleachbit/default.nix4
-rw-r--r--pkgs/applications/misc/blender/darwin.patch67
-rw-r--r--pkgs/applications/misc/blender/default.nix62
-rw-r--r--pkgs/applications/misc/break-time/default.nix4
-rw-r--r--pkgs/applications/misc/caerbannog/default.nix4
-rw-r--r--pkgs/applications/misc/calibre/default.nix8
-rw-r--r--pkgs/applications/misc/cartridges/default.nix6
-rw-r--r--pkgs/applications/misc/cbatticon/default.nix4
-rw-r--r--pkgs/applications/misc/cherrytree/default.nix4
-rw-r--r--pkgs/applications/misc/cipher/default.nix4
-rw-r--r--pkgs/applications/misc/clight/clight-gui.nix34
-rw-r--r--pkgs/applications/misc/clipit/default.nix4
-rw-r--r--pkgs/applications/misc/cobang/default.nix8
-rw-r--r--pkgs/applications/misc/cotp/default.nix6
-rw-r--r--pkgs/applications/misc/dialect/default.nix13
-rw-r--r--pkgs/applications/misc/diebahn/default.nix8
-rw-r--r--pkgs/applications/misc/diffuse/default.nix4
-rw-r--r--pkgs/applications/misc/dockbarx/default.nix4
-rw-r--r--pkgs/applications/misc/electrum/default.nix24
-rw-r--r--pkgs/applications/misc/electrum/ltc-aiorpcX-version-bump.patch44
-rw-r--r--pkgs/applications/misc/electrum/ltc.nix20
-rw-r--r--pkgs/applications/misc/elogind/default.nix10
-rw-r--r--pkgs/applications/misc/exercism/default.nix6
-rw-r--r--pkgs/applications/misc/fbmenugen/default.nix4
-rw-r--r--pkgs/applications/misc/feedbackd/default.nix4
-rw-r--r--pkgs/applications/misc/findex/default.nix4
-rw-r--r--pkgs/applications/misc/firefly-desktop/default.nix2
-rw-r--r--pkgs/applications/misc/fluidd/default.nix4
-rw-r--r--pkgs/applications/misc/fluxboxlauncher/default.nix4
-rw-r--r--pkgs/applications/misc/font-manager/default.nix15
-rw-r--r--pkgs/applications/misc/fontfinder/default.nix4
-rw-r--r--pkgs/applications/misc/formatter/default.nix4
-rw-r--r--pkgs/applications/misc/foxtrotgps/default.nix4
-rw-r--r--pkgs/applications/misc/gImageReader/default.nix4
-rw-r--r--pkgs/applications/misc/gcstar/default.nix4
-rw-r--r--pkgs/applications/misc/genxword/default.nix4
-rw-r--r--pkgs/applications/misc/gkrellm/default.nix4
-rw-r--r--pkgs/applications/misc/glom/default.nix4
-rw-r--r--pkgs/applications/misc/gmtp/default.nix4
-rw-r--r--pkgs/applications/misc/gnome-multi-writer/default.nix4
-rw-r--r--pkgs/applications/misc/gnome-recipes/default.nix4
-rw-r--r--pkgs/applications/misc/gnome-tecla/default.nix4
-rw-r--r--pkgs/applications/misc/gnome-usage/default.nix4
-rw-r--r--pkgs/applications/misc/golden-cheetah-bin/default.nix2
-rw-r--r--pkgs/applications/misc/goldendict-ng/default.nix10
-rw-r--r--pkgs/applications/misc/goldendict/default.nix4
-rw-r--r--pkgs/applications/misc/gollum/Gemfile.lock10
-rw-r--r--pkgs/applications/misc/gollum/gemset.nix16
-rw-r--r--pkgs/applications/misc/gpu-viewer/default.nix4
-rw-r--r--pkgs/applications/misc/gpx-viewer/default.nix4
-rw-r--r--pkgs/applications/misc/gradience/default.nix1
-rw-r--r--pkgs/applications/misc/gramps/default.nix4
-rw-r--r--pkgs/applications/misc/grsync/default.nix4
-rw-r--r--pkgs/applications/misc/gummi/default.nix4
-rw-r--r--pkgs/applications/misc/gxkb/default.nix18
-rw-r--r--pkgs/applications/misc/hamster/default.nix4
-rw-r--r--pkgs/applications/misc/hcl2json/default.nix6
-rw-r--r--pkgs/applications/misc/hmm/default.nix5
-rw-r--r--pkgs/applications/misc/hmm/rustc-serialize-fix.patch16
-rw-r--r--pkgs/applications/misc/holochain-launcher/default.nix4
-rw-r--r--pkgs/applications/misc/hyprland-autoname-workspaces/default.nix6
-rw-r--r--pkgs/applications/misc/input-leap/default.nix4
-rw-r--r--pkgs/applications/misc/joplin-desktop/default.nix2
-rw-r--r--pkgs/applications/misc/josm/default.nix6
-rw-r--r--pkgs/applications/misc/jrnl/default.nix2
-rw-r--r--pkgs/applications/misc/k40-whisperer/default.nix4
-rw-r--r--pkgs/applications/misc/kdbplus/default.nix76
-rw-r--r--pkgs/applications/misc/keepassxc/default.nix4
-rw-r--r--pkgs/applications/misc/keeweb/default.nix4
-rw-r--r--pkgs/applications/misc/keymapp/default.nix4
-rw-r--r--pkgs/applications/misc/keystore-explorer/default.nix4
-rw-r--r--pkgs/applications/misc/klipper-estimator/default.nix6
-rw-r--r--pkgs/applications/misc/klipperscreen/default.nix4
-rw-r--r--pkgs/applications/misc/kratos/default.nix30
-rw-r--r--pkgs/applications/misc/krename/default.nix4
-rw-r--r--pkgs/applications/misc/kupfer/default.nix4
-rw-r--r--pkgs/applications/misc/lunatask/default.nix4
-rw-r--r--pkgs/applications/misc/lutris/default.nix4
-rw-r--r--pkgs/applications/misc/mainsail/default.nix4
-rw-r--r--pkgs/applications/misc/maliit-keyboard/default.nix4
-rw-r--r--pkgs/applications/misc/markets/default.nix4
-rw-r--r--pkgs/applications/misc/marktext/default.nix8
-rw-r--r--pkgs/applications/misc/meerk40t/default.nix4
-rw-r--r--pkgs/applications/misc/minder/default.nix4
-rw-r--r--pkgs/applications/misc/minigalaxy/default.nix4
-rw-r--r--pkgs/applications/misc/mission-center/Cargo.lock1309
-rw-r--r--pkgs/applications/misc/mission-center/default.nix7
-rw-r--r--pkgs/applications/misc/mission-center/gatherer-Cargo.lock508
-rw-r--r--pkgs/applications/misc/mobilecoin-wallet/default.nix2
-rw-r--r--pkgs/applications/misc/mysql-workbench/default.nix4
-rw-r--r--pkgs/applications/misc/neo4j-desktop/default.nix2
-rw-r--r--pkgs/applications/misc/notable/default.nix6
-rw-r--r--pkgs/applications/misc/notesnook/default.nix2
-rw-r--r--pkgs/applications/misc/notifymuch/default.nix4
-rw-r--r--pkgs/applications/misc/ns-usbloader/default.nix4
-rw-r--r--pkgs/applications/misc/numberstation/default.nix4
-rw-r--r--pkgs/applications/misc/nwg-bar/default.nix4
-rw-r--r--pkgs/applications/misc/nwg-displays/default.nix8
-rw-r--r--pkgs/applications/misc/nwg-dock-hyprland/default.nix10
-rw-r--r--pkgs/applications/misc/nwg-menu/default.nix4
-rw-r--r--pkgs/applications/misc/nwg-panel/default.nix10
-rw-r--r--pkgs/applications/misc/nwg-wrapper/default.nix4
-rw-r--r--pkgs/applications/misc/octoprint/default.nix5
-rw-r--r--pkgs/applications/misc/onagre/default.nix41
-rw-r--r--pkgs/applications/misc/onboard/default.nix4
-rw-r--r--pkgs/applications/misc/openlp/default.nix4
-rw-r--r--pkgs/applications/misc/oranda/default.nix6
-rw-r--r--pkgs/applications/misc/orca/fix-paths.patch88
-rw-r--r--pkgs/applications/misc/otpclient/default.nix4
-rw-r--r--pkgs/applications/misc/oversteer/default.nix4
-rw-r--r--pkgs/applications/misc/oxker/default.nix6
-rw-r--r--pkgs/applications/misc/pattypan/default.nix4
-rw-r--r--pkgs/applications/misc/pdf-quench/default.nix4
-rw-r--r--pkgs/applications/misc/pdfarranger/default.nix6
-rw-r--r--pkgs/applications/misc/pdfpc/default.nix4
-rw-r--r--pkgs/applications/misc/pdfsam-basic/default.nix4
-rw-r--r--pkgs/applications/misc/pdfslicer/default.nix4
-rw-r--r--pkgs/applications/misc/pgmodeler/default.nix4
-rw-r--r--pkgs/applications/misc/phoc/default.nix10
-rw-r--r--pkgs/applications/misc/plank/default.nix4
-rw-r--r--pkgs/applications/misc/playonlinux/default.nix4
-rw-r--r--pkgs/applications/misc/polar-bookshelf/default.nix4
-rw-r--r--pkgs/applications/misc/polar-bookshelf1/default.nix4
-rw-r--r--pkgs/applications/misc/polychromatic/default.nix4
-rw-r--r--pkgs/applications/misc/premid/default.nix4
-rw-r--r--pkgs/applications/misc/printrun/default.nix4
-rw-r--r--pkgs/applications/misc/process-compose/default.nix6
-rw-r--r--pkgs/applications/misc/prusa-slicer/default.nix7
-rw-r--r--pkgs/applications/misc/pytrainer/default.nix4
-rw-r--r--pkgs/applications/misc/qcad/default.nix4
-rw-r--r--pkgs/applications/misc/qtpass/default.nix3
-rw-r--r--pkgs/applications/misc/raider/default.nix4
-rw-r--r--pkgs/applications/misc/redshift/default.nix4
-rw-r--r--pkgs/applications/misc/regextester/default.nix4
-rw-r--r--pkgs/applications/misc/remarkable/rmview/default.nix3
-rw-r--r--pkgs/applications/misc/remontoire/default.nix4
-rw-r--r--pkgs/applications/misc/resp-app/default.nix1
-rw-r--r--pkgs/applications/misc/rofi-rbw/default.nix4
-rw-r--r--pkgs/applications/misc/rofi-top/default.nix4
-rw-r--r--pkgs/applications/misc/rofi/wrapper.nix4
-rw-r--r--pkgs/applications/misc/rootbar/default.nix4
-rw-r--r--pkgs/applications/misc/safeeyes/default.nix4
-rw-r--r--pkgs/applications/misc/sequeler/default.nix4
-rw-r--r--pkgs/applications/misc/shipments/default.nix4
-rw-r--r--pkgs/applications/misc/siglo/default.nix4
-rw-r--r--pkgs/applications/misc/skytemple/default.nix4
-rw-r--r--pkgs/applications/misc/slic3r/default.nix4
-rw-r--r--pkgs/applications/misc/snapmaker-luban/default.nix4
-rw-r--r--pkgs/applications/misc/snapper-gui/default.nix4
-rw-r--r--pkgs/applications/misc/solaar/default.nix8
-rw-r--r--pkgs/applications/misc/sticky/default.nix4
-rw-r--r--pkgs/applications/misc/streamdeck-ui/default.nix4
-rw-r--r--pkgs/applications/misc/survex/default.nix4
-rw-r--r--pkgs/applications/misc/swappy/default.nix4
-rw-r--r--pkgs/applications/misc/swaynotificationcenter/default.nix4
-rw-r--r--pkgs/applications/misc/swaysettings/default.nix4
-rw-r--r--pkgs/applications/misc/syncthingtray/default.nix4
-rw-r--r--pkgs/applications/misc/system76-keyboard-configurator/default.nix4
-rw-r--r--pkgs/applications/misc/taskwarrior-tui/default.nix6
-rw-r--r--pkgs/applications/misc/themechanger/default.nix4
-rw-r--r--pkgs/applications/misc/tint2/default.nix4
-rw-r--r--pkgs/applications/misc/tipp10/default.nix14
-rw-r--r--pkgs/applications/misc/todoist-electron/default.nix4
-rw-r--r--pkgs/applications/misc/transifex-cli/default.nix4
-rw-r--r--pkgs/applications/misc/ttdl/default.nix6
-rw-r--r--pkgs/applications/misc/tuba/default.nix6
-rw-r--r--pkgs/applications/misc/tuhi/default.nix4
-rw-r--r--pkgs/applications/misc/tui-journal/default.nix6
-rw-r--r--pkgs/applications/misc/tzupdate/default.nix2
-rw-r--r--pkgs/applications/misc/udiskie/default.nix4
-rw-r--r--pkgs/applications/misc/ulauncher/default.nix4
-rw-r--r--pkgs/applications/misc/unipicker/default.nix41
-rw-r--r--pkgs/applications/misc/upwork/default.nix4
-rw-r--r--pkgs/applications/misc/variety/default.nix4
-rw-r--r--pkgs/applications/misc/veracrypt/default.nix4
-rw-r--r--pkgs/applications/misc/viking/default.nix4
-rw-r--r--pkgs/applications/misc/volnoti/default.nix4
-rw-r--r--pkgs/applications/misc/waypaper/default.nix8
-rw-r--r--pkgs/applications/misc/wmenu/default.nix12
-rw-r--r--pkgs/applications/misc/wofi-emoji/default.nix41
-rw-r--r--pkgs/applications/misc/wofi/default.nix4
-rw-r--r--pkgs/applications/misc/workrave/default.nix4
-rw-r--r--pkgs/applications/misc/xautoclick/default.nix4
-rw-r--r--pkgs/applications/misc/xdgmenumaker/default.nix4
-rw-r--r--pkgs/applications/misc/xiphos/default.nix4
-rw-r--r--pkgs/applications/misc/xneur/default.nix4
-rw-r--r--pkgs/applications/misc/xpad/default.nix4
-rw-r--r--pkgs/applications/misc/yambar/default.nix4
-rw-r--r--pkgs/applications/misc/zathura/core/default.nix4
-rw-r--r--pkgs/applications/misc/zettlr/default.nix4
-rw-r--r--pkgs/applications/misc/zettlr/generic.nix6
-rw-r--r--pkgs/applications/networking/Sylk/default.nix3
-rw-r--r--pkgs/applications/networking/avalanchego/default.nix6
-rw-r--r--pkgs/applications/networking/browsers/badwolf/default.nix4
-rw-r--r--pkgs/applications/networking/browsers/brave/default.nix12
-rw-r--r--pkgs/applications/networking/browsers/brave/make-brave.nix4
-rw-r--r--pkgs/applications/networking/browsers/castor/default.nix4
-rw-r--r--pkgs/applications/networking/browsers/chromium/common.nix78
-rw-r--r--pkgs/applications/networking/browsers/chromium/default.nix77
-rw-r--r--pkgs/applications/networking/browsers/chromium/patches/widevine-79.patch13
-rw-r--r--pkgs/applications/networking/browsers/chromium/patches/widevine-disable-auto-download-allow-bundle.patch28
-rwxr-xr-xpkgs/applications/networking/browsers/chromium/update.py5
-rw-r--r--pkgs/applications/networking/browsers/chromium/upstream-info.nix34
-rw-r--r--pkgs/applications/networking/browsers/dillo/default.nix63
-rw-r--r--pkgs/applications/networking/browsers/eolie/default.nix4
-rw-r--r--pkgs/applications/networking/browsers/ephemeral/default.nix4
-rw-r--r--pkgs/applications/networking/browsers/firefox-bin/beta_sources.nix818
-rw-r--r--pkgs/applications/networking/browsers/firefox-bin/default.nix4
-rw-r--r--pkgs/applications/networking/browsers/firefox-bin/developer-edition_sources.nix818
-rw-r--r--pkgs/applications/networking/browsers/firefox-bin/release_sources.nix818
-rw-r--r--pkgs/applications/networking/browsers/firefox/common.nix4
-rw-r--r--pkgs/applications/networking/browsers/firefox/packages.nix16
-rw-r--r--pkgs/applications/networking/browsers/librewolf/src.json10
-rw-r--r--pkgs/applications/networking/browsers/luakit/default.nix4
-rw-r--r--pkgs/applications/networking/browsers/microsoft-edge/default.nix12
-rw-r--r--pkgs/applications/networking/browsers/midori/default.nix4
-rw-r--r--pkgs/applications/networking/browsers/mullvad-browser/default.nix8
-rw-r--r--pkgs/applications/networking/browsers/netsurf/browser.nix4
-rw-r--r--pkgs/applications/networking/browsers/nyxt/default.nix4
-rw-r--r--pkgs/applications/networking/browsers/opera/default.nix8
-rw-r--r--pkgs/applications/networking/browsers/palemoon/bin.nix4
-rw-r--r--pkgs/applications/networking/browsers/polypane/default.nix7
-rw-r--r--pkgs/applications/networking/browsers/surf/default.nix4
-rw-r--r--pkgs/applications/networking/browsers/tor-browser/default.nix10
-rw-r--r--pkgs/applications/networking/browsers/vimb/default.nix4
-rw-r--r--pkgs/applications/networking/browsers/vivaldi/default.nix6
-rw-r--r--pkgs/applications/networking/browsers/yandex-browser/default.nix16
-rw-r--r--pkgs/applications/networking/calls/default.nix4
-rw-r--r--pkgs/applications/networking/cloudflared/default.nix4
-rw-r--r--pkgs/applications/networking/cluster/argocd/default.nix6
-rw-r--r--pkgs/applications/networking/cluster/arkade/default.nix4
-rw-r--r--pkgs/applications/networking/cluster/atlantis/default.nix6
-rw-r--r--pkgs/applications/networking/cluster/atmos/default.nix6
-rw-r--r--pkgs/applications/networking/cluster/cilium/default.nix4
-rw-r--r--pkgs/applications/networking/cluster/civo/default.nix6
-rw-r--r--pkgs/applications/networking/cluster/clusterctl/default.nix4
-rw-r--r--pkgs/applications/networking/cluster/fluxcd/default.nix8
-rw-r--r--pkgs/applications/networking/cluster/fn-cli/default.nix4
-rw-r--r--pkgs/applications/networking/cluster/gatekeeper/default.nix4
-rw-r--r--pkgs/applications/networking/cluster/glooctl/default.nix4
-rw-r--r--pkgs/applications/networking/cluster/helm/default.nix6
-rw-r--r--pkgs/applications/networking/cluster/helm/plugins/helm-unittest.nix6
-rw-r--r--pkgs/applications/networking/cluster/hubble/default.nix4
-rw-r--r--pkgs/applications/networking/cluster/istioctl/default.nix6
-rw-r--r--pkgs/applications/networking/cluster/k0sctl/default.nix15
-rw-r--r--pkgs/applications/networking/cluster/k3s/1_26/chart-versions.nix16
-rw-r--r--pkgs/applications/networking/cluster/k3s/1_27/chart-versions.nix16
-rw-r--r--pkgs/applications/networking/cluster/k3s/1_27/versions.nix12
-rw-r--r--pkgs/applications/networking/cluster/k3s/1_28/chart-versions.nix16
-rw-r--r--pkgs/applications/networking/cluster/k3s/1_28/versions.nix12
-rw-r--r--pkgs/applications/networking/cluster/k3s/1_29/chart-versions.nix16
-rw-r--r--pkgs/applications/networking/cluster/k3s/1_29/versions.nix16
-rw-r--r--pkgs/applications/networking/cluster/k3s/1_30/chart-versions.nix10
-rw-r--r--pkgs/applications/networking/cluster/k3s/1_30/versions.nix14
-rw-r--r--pkgs/applications/networking/cluster/k3s/builder.nix161
-rw-r--r--pkgs/applications/networking/cluster/k3s/default.nix59
-rwxr-xr-xpkgs/applications/networking/cluster/k3s/update-script.sh16
-rw-r--r--pkgs/applications/networking/cluster/k8sgpt/default.nix12
-rw-r--r--pkgs/applications/networking/cluster/kaniko/default.nix4
-rw-r--r--pkgs/applications/networking/cluster/krane/Gemfile.lock10
-rw-r--r--pkgs/applications/networking/cluster/krane/gemset.nix16
-rw-r--r--pkgs/applications/networking/cluster/kube-router/default.nix6
-rw-r--r--pkgs/applications/networking/cluster/kubebuilder/default.nix12
-rw-r--r--pkgs/applications/networking/cluster/kubecolor/default.nix4
-rw-r--r--pkgs/applications/networking/cluster/kubeconform/default.nix4
-rw-r--r--pkgs/applications/networking/cluster/kubectl-explore/default.nix6
-rw-r--r--pkgs/applications/networking/cluster/kubectl-gadget/default.nix6
-rw-r--r--pkgs/applications/networking/cluster/kubefirst/default.nix4
-rw-r--r--pkgs/applications/networking/cluster/kubeone/default.nix6
-rw-r--r--pkgs/applications/networking/cluster/kubernetes/default.nix4
-rw-r--r--pkgs/applications/networking/cluster/kubeshark/default.nix4
-rw-r--r--pkgs/applications/networking/cluster/kubevpn/default.nix4
-rw-r--r--pkgs/applications/networking/cluster/kyverno/default.nix4
-rw-r--r--pkgs/applications/networking/cluster/lens/linux.nix4
-rw-r--r--pkgs/applications/networking/cluster/linkerd/edge.nix6
-rw-r--r--pkgs/applications/networking/cluster/minikube/default.nix6
-rw-r--r--pkgs/applications/networking/cluster/nerdctl/default.nix14
-rw-r--r--pkgs/applications/networking/cluster/nova/default.nix6
-rw-r--r--pkgs/applications/networking/cluster/opentofu/default.nix4
-rw-r--r--pkgs/applications/networking/cluster/pachyderm/default.nix4
-rw-r--r--pkgs/applications/networking/cluster/pluto/default.nix6
-rw-r--r--pkgs/applications/networking/cluster/rke/default.nix6
-rw-r--r--pkgs/applications/networking/cluster/talosctl/default.nix6
-rw-r--r--pkgs/applications/networking/cluster/tektoncd-cli/default.nix4
-rw-r--r--pkgs/applications/networking/cluster/temporal-cli/default.nix7
-rw-r--r--pkgs/applications/networking/cluster/terraform/default.nix4
-rw-r--r--pkgs/applications/networking/cluster/tftui/default.nix4
-rw-r--r--pkgs/applications/networking/cluster/werf/default.nix4
-rw-r--r--pkgs/applications/networking/cluster/yor/default.nix4
-rw-r--r--pkgs/applications/networking/cluster/zarf/default.nix6
-rw-r--r--pkgs/applications/networking/coreth/default.nix6
-rw-r--r--pkgs/applications/networking/cozy-drive/default.nix4
-rw-r--r--pkgs/applications/networking/datovka/default.nix4
-rw-r--r--pkgs/applications/networking/dnscontrol/default.nix6
-rw-r--r--pkgs/applications/networking/feedreaders/gnome-feeds/default.nix4
-rw-r--r--pkgs/applications/networking/feedreaders/newsflash/Cargo.lock868
-rw-r--r--pkgs/applications/networking/feedreaders/newsflash/default.nix16
-rw-r--r--pkgs/applications/networking/feedreaders/newsflash/hardcode-version.patch12
-rw-r--r--pkgs/applications/networking/feedreaders/rssguard/default.nix4
-rw-r--r--pkgs/applications/networking/feedreaders/russ/default.nix7
-rw-r--r--pkgs/applications/networking/flexget/default.nix4
-rw-r--r--pkgs/applications/networking/ftp/filezilla/default.nix4
-rw-r--r--pkgs/applications/networking/ftp/taxi/default.nix4
-rw-r--r--pkgs/applications/networking/gnmic/default.nix6
-rw-r--r--pkgs/applications/networking/gnome-network-displays/default.nix4
-rw-r--r--pkgs/applications/networking/gns3/server.nix12
-rw-r--r--pkgs/applications/networking/hpmyroom/default.nix5
-rw-r--r--pkgs/applications/networking/ids/suricata/default.nix8
-rw-r--r--pkgs/applications/networking/ids/zeek/default.nix4
-rw-r--r--pkgs/applications/networking/instant-messengers/alfaview/default.nix8
-rw-r--r--pkgs/applications/networking/instant-messengers/armcord/default.nix4
-rw-r--r--pkgs/applications/networking/instant-messengers/beeper/default.nix9
-rw-r--r--pkgs/applications/networking/instant-messengers/caprine-bin/build-from-appimage.nix5
-rw-r--r--pkgs/applications/networking/instant-messengers/cinny-desktop/default.nix4
-rw-r--r--pkgs/applications/networking/instant-messengers/cinny/default.nix5
-rw-r--r--pkgs/applications/networking/instant-messengers/coyim/default.nix4
-rw-r--r--pkgs/applications/networking/instant-messengers/dino/default.nix6
-rw-r--r--pkgs/applications/networking/instant-messengers/dino/fix-compile-new-vala-c.diff16
-rw-r--r--pkgs/applications/networking/instant-messengers/discord/default.nix36
-rw-r--r--pkgs/applications/networking/instant-messengers/discord/linux.nix4
-rw-r--r--pkgs/applications/networking/instant-messengers/element/pin.nix10
-rw-r--r--pkgs/applications/networking/instant-messengers/feishu/default.nix2
-rw-r--r--pkgs/applications/networking/instant-messengers/ferdium/default.nix6
-rw-r--r--pkgs/applications/networking/instant-messengers/flare-signal/Cargo.lock1197
-rw-r--r--pkgs/applications/networking/instant-messengers/flare-signal/default.nix12
-rw-r--r--pkgs/applications/networking/instant-messengers/fractal/Cargo.lock2382
-rw-r--r--pkgs/applications/networking/instant-messengers/fractal/default.nix13
-rw-r--r--pkgs/applications/networking/instant-messengers/franz/default.nix4
-rw-r--r--pkgs/applications/networking/instant-messengers/franz/generic.nix4
-rw-r--r--pkgs/applications/networking/instant-messengers/gajim/default.nix6
-rw-r--r--pkgs/applications/networking/instant-messengers/jami/config/pjsip_args_common19
-rw-r--r--pkgs/applications/networking/instant-messengers/jami/config/pjsip_args_linux1
-rw-r--r--pkgs/applications/networking/instant-messengers/jami/config/pjsip_patches1
-rw-r--r--pkgs/applications/networking/instant-messengers/jami/default.nix94
-rw-r--r--pkgs/applications/networking/instant-messengers/jitsi-meet-electron/default.nix6
-rw-r--r--pkgs/applications/networking/instant-messengers/mattermost-desktop/default.nix4
-rw-r--r--pkgs/applications/networking/instant-messengers/mikutter/default.nix4
-rw-r--r--pkgs/applications/networking/instant-messengers/pidgin/default.nix4
-rw-r--r--pkgs/applications/networking/instant-messengers/qq/default.nix4
-rw-r--r--pkgs/applications/networking/instant-messengers/rambox/default.nix6
-rw-r--r--pkgs/applications/networking/instant-messengers/rocketchat-desktop/default.nix4
-rw-r--r--pkgs/applications/networking/instant-messengers/signal-desktop/default.nix17
-rw-r--r--pkgs/applications/networking/instant-messengers/signal-desktop/generic.nix11
-rw-r--r--pkgs/applications/networking/instant-messengers/signal-desktop/signal-desktop-beta.nix4
-rw-r--r--pkgs/applications/networking/instant-messengers/signal-desktop/signal-desktop.nix4
-rw-r--r--pkgs/applications/networking/instant-messengers/signalbackup-tools/default.nix4
-rw-r--r--pkgs/applications/networking/instant-messengers/skypeforlinux/default.nix4
-rw-r--r--pkgs/applications/networking/instant-messengers/slack/default.nix12
-rw-r--r--pkgs/applications/networking/instant-messengers/telegram/telegram-desktop/default.nix8
-rw-r--r--pkgs/applications/networking/instant-messengers/twitch-tui/default.nix6
-rw-r--r--pkgs/applications/networking/instant-messengers/vk-messenger/default.nix4
-rw-r--r--pkgs/applications/networking/instant-messengers/whatsapp-for-linux/default.nix4
-rw-r--r--pkgs/applications/networking/instant-messengers/wire-desktop/default.nix4
-rw-r--r--pkgs/applications/networking/ipfs-cluster/default.nix6
-rw-r--r--pkgs/applications/networking/irc/catgirl/default.nix4
-rw-r--r--pkgs/applications/networking/irc/irccloud/default.nix2
-rw-r--r--pkgs/applications/networking/irc/ircdog/default.nix4
-rw-r--r--pkgs/applications/networking/irc/srain/default.nix12
-rw-r--r--pkgs/applications/networking/irc/weechat/scripts/autosort/default.nix29
-rw-r--r--pkgs/applications/networking/irc/weechat/scripts/default.nix2
-rw-r--r--pkgs/applications/networking/iroh/default.nix6
-rw-r--r--pkgs/applications/networking/maestral-qt/default.nix8
-rw-r--r--pkgs/applications/networking/mailreaders/astroid/default.nix4
-rw-r--r--pkgs/applications/networking/mailreaders/ayatana-webmail/default.nix4
-rw-r--r--pkgs/applications/networking/mailreaders/balsa/default.nix4
-rw-r--r--pkgs/applications/networking/mailreaders/bluemail/default.nix4
-rw-r--r--pkgs/applications/networking/mailreaders/bubblemail/default.nix4
-rw-r--r--pkgs/applications/networking/mailreaders/claws-mail/default.nix4
-rw-r--r--pkgs/applications/networking/mailreaders/electron-mail/default.nix8
-rw-r--r--pkgs/applications/networking/mailreaders/evolution/evolution-ews/default.nix4
-rw-r--r--pkgs/applications/networking/mailreaders/evolution/evolution/default.nix8
-rw-r--r--pkgs/applications/networking/mailreaders/mailnag/default.nix6
-rw-r--r--pkgs/applications/networking/mailreaders/mailspring/linux.nix4
-rw-r--r--pkgs/applications/networking/mailreaders/notmuch/default.nix37
-rw-r--r--pkgs/applications/networking/mailreaders/thunderbird-bin/default.nix4
-rw-r--r--pkgs/applications/networking/mailreaders/thunderbird/packages.nix49
-rw-r--r--pkgs/applications/networking/mailreaders/tutanota-desktop/default.nix6
-rw-r--r--pkgs/applications/networking/netmaker/default.nix6
-rw-r--r--pkgs/applications/networking/newsreaders/liferea/default.nix4
-rw-r--r--pkgs/applications/networking/newsreaders/pan/default.nix4
-rw-r--r--pkgs/applications/networking/nextdns/default.nix4
-rw-r--r--pkgs/applications/networking/onionshare/default.nix30
-rw-r--r--pkgs/applications/networking/p2p/deluge/default.nix4
-rw-r--r--pkgs/applications/networking/p2p/flood/default.nix6
-rw-r--r--pkgs/applications/networking/p2p/gnunet/gtk.nix4
-rw-r--r--pkgs/applications/networking/p2p/qbittorrent/default.nix4
-rw-r--r--pkgs/applications/networking/p2p/transmission-remote-gtk/default.nix4
-rw-r--r--pkgs/applications/networking/p2p/transmission/4.nix4
-rw-r--r--pkgs/applications/networking/p2p/transmission/default.nix4
-rw-r--r--pkgs/applications/networking/p2p/xd/default.nix4
-rw-r--r--pkgs/applications/networking/protonmail-bridge/default.nix6
-rw-r--r--pkgs/applications/networking/protonvpn-gui/default.nix4
-rw-r--r--pkgs/applications/networking/protonvpn-gui/legacy.nix4
-rw-r--r--pkgs/applications/networking/pyload-ng/default.nix8
-rw-r--r--pkgs/applications/networking/remote/citrix-workspace/generic.nix4
-rw-r--r--pkgs/applications/networking/remote/freerdp/3.nix208
-rw-r--r--pkgs/applications/networking/remote/freerdp/default.nix1
-rw-r--r--pkgs/applications/networking/remote/nice-dcv-client/default.nix4
-rw-r--r--pkgs/applications/networking/remote/remmina/default.nix36
-rw-r--r--pkgs/applications/networking/remote/rustdesk/default.nix4
-rw-r--r--pkgs/applications/networking/remote/teamviewer/default.nix3
-rw-r--r--pkgs/applications/networking/remote/wayvnc/default.nix1
-rw-r--r--pkgs/applications/networking/remote/xrdp/default.nix47
-rw-r--r--pkgs/applications/networking/remote/xrdp/pulseaudio-module-xrdp/default.nix4
-rw-r--r--pkgs/applications/networking/seaweedfs/default.nix6
-rw-r--r--pkgs/applications/networking/shellhub-agent/default.nix6
-rw-r--r--pkgs/applications/networking/sniffers/wireshark/default.nix8
-rw-r--r--pkgs/applications/networking/station/default.nix2
-rw-r--r--pkgs/applications/networking/sync/lcsync/default.nix4
-rw-r--r--pkgs/applications/networking/sync/rsync/configure.ac-fix-failing-IPv6-check.patch12
-rw-r--r--pkgs/applications/networking/sync/rsync/default.nix12
-rw-r--r--pkgs/applications/networking/sync/rsync/rsync-fortified-strlcpy-fix.patch49
-rw-r--r--pkgs/applications/networking/sync/storj-uplink/default.nix6
-rw-r--r--pkgs/applications/networking/syncplay/default.nix12
-rw-r--r--pkgs/applications/networking/syncthing/default.nix4
-rw-r--r--pkgs/applications/networking/termius/default.nix4
-rw-r--r--pkgs/applications/networking/trayscale/default.nix9
-rw-r--r--pkgs/applications/networking/upnp-router-control/default.nix4
-rw-r--r--pkgs/applications/networking/warp/default.nix17
-rw-r--r--pkgs/applications/networking/weather/meteo/default.nix6
-rw-r--r--pkgs/applications/networking/wgnord/default.nix1
-rw-r--r--pkgs/applications/networking/xpipe/default.nix4
-rw-r--r--pkgs/applications/networking/yaup/default.nix4
-rw-r--r--pkgs/applications/office/abiword/default.nix4
-rw-r--r--pkgs/applications/office/agenda/default.nix4
-rw-r--r--pkgs/applications/office/appflowy/default.nix4
-rw-r--r--pkgs/applications/office/autokey/default.nix4
-rw-r--r--pkgs/applications/office/banana-accounting/default.nix4
-rw-r--r--pkgs/applications/office/beamerpresenter/default.nix4
-rw-r--r--pkgs/applications/office/bookworm/default.nix4
-rw-r--r--pkgs/applications/office/clockify/default.nix2
-rw-r--r--pkgs/applications/office/gnote/default.nix6
-rw-r--r--pkgs/applications/office/gnucash/0005-disable-test-lots.patch11
-rw-r--r--pkgs/applications/office/gnucash/default.nix17
-rw-r--r--pkgs/applications/office/gnumeric/default.nix4
-rw-r--r--pkgs/applications/office/grisbi/default.nix4
-rw-r--r--pkgs/applications/office/gtg/default.nix4
-rw-r--r--pkgs/applications/office/homebank/default.nix8
-rw-r--r--pkgs/applications/office/jabref/default.nix30
-rw-r--r--pkgs/applications/office/jameica/default.nix4
-rw-r--r--pkgs/applications/office/libreoffice/wrapper.nix2
-rw-r--r--pkgs/applications/office/mendeley/default.nix4
-rw-r--r--pkgs/applications/office/mmex/default.nix4
-rw-r--r--pkgs/applications/office/morgen/default.nix4
-rw-r--r--pkgs/applications/office/notes-up/default.nix4
-rw-r--r--pkgs/applications/office/osmo/default.nix4
-rw-r--r--pkgs/applications/office/paperless-ngx/default.nix11
-rw-r--r--pkgs/applications/office/paperwork/paperwork-gtk.nix4
-rw-r--r--pkgs/applications/office/planify/default.nix8
-rw-r--r--pkgs/applications/office/portfolio/default.nix4
-rw-r--r--pkgs/applications/office/pympress/default.nix4
-rw-r--r--pkgs/applications/office/qownnotes/default.nix4
-rw-r--r--pkgs/applications/office/spice-up/default.nix4
-rw-r--r--pkgs/applications/office/ticktick/default.nix4
-rw-r--r--pkgs/applications/office/timeline/default.nix4
-rw-r--r--pkgs/applications/office/timeular/default.nix9
-rw-r--r--pkgs/applications/office/treesheets/default.nix14
-rw-r--r--pkgs/applications/office/trilium/desktop.nix4
-rw-r--r--pkgs/applications/office/tryton/default.nix8
-rw-r--r--pkgs/applications/office/tusk/default.nix2
-rw-r--r--pkgs/applications/office/wpsoffice/default.nix1
-rw-r--r--pkgs/applications/office/zim/default.nix4
-rw-r--r--pkgs/applications/office/zotero/default.nix4
-rw-r--r--pkgs/applications/office/zotero/zotero_7.nix4
-rw-r--r--pkgs/applications/radio/chirp/default.nix10
-rw-r--r--pkgs/applications/radio/cloudlog/default.nix4
-rw-r--r--pkgs/applications/radio/cqrlog/default.nix4
-rw-r--r--pkgs/applications/radio/flamp/default.nix4
-rw-r--r--pkgs/applications/radio/fldigi/default.nix9
-rw-r--r--pkgs/applications/radio/gnuradio/wrapper.nix5
-rw-r--r--pkgs/applications/radio/gqrx/default.nix4
-rw-r--r--pkgs/applications/radio/gridtracker/default.nix4
-rw-r--r--pkgs/applications/radio/grig/default.nix4
-rw-r--r--pkgs/applications/radio/qlog/default.nix4
-rw-r--r--pkgs/applications/radio/quisk/default.nix4
-rw-r--r--pkgs/applications/radio/tqsl/default.nix8
-rw-r--r--pkgs/applications/science/astronomy/gpredict/default.nix4
-rw-r--r--pkgs/applications/science/astronomy/phd2/default.nix4
-rw-r--r--pkgs/applications/science/astronomy/siril/default.nix23
-rw-r--r--pkgs/applications/science/astronomy/stellarium/default.nix4
-rw-r--r--pkgs/applications/science/biology/conglomerate/default.nix62
-rw-r--r--pkgs/applications/science/biology/dssp/default.nix25
-rw-r--r--pkgs/applications/science/biology/igv/default.nix4
-rw-r--r--pkgs/applications/science/biology/iqtree/default.nix4
-rw-r--r--pkgs/applications/science/biology/jbrowse/default.nix6
-rw-r--r--pkgs/applications/science/biology/messer-slim/default.nix4
-rw-r--r--pkgs/applications/science/biology/migrate/default.nix34
-rw-r--r--pkgs/applications/science/chemistry/chemtool/default.nix4
-rw-r--r--pkgs/applications/science/chemistry/cp2k/default.nix17
-rw-r--r--pkgs/applications/science/chemistry/cp2k/remove-compiler-options.patch37
-rw-r--r--pkgs/applications/science/chemistry/jmol/default.nix4
-rw-r--r--pkgs/applications/science/chemistry/octopus/default.nix4
-rw-r--r--pkgs/applications/science/electronics/gtkwave/default.nix4
-rw-r--r--pkgs/applications/science/electronics/horizon-eda/base.nix6
-rw-r--r--pkgs/applications/science/electronics/horizon-eda/default.nix4
-rw-r--r--pkgs/applications/science/electronics/kicad/base.nix3
-rw-r--r--pkgs/applications/science/electronics/kicad/default.nix4
-rw-r--r--pkgs/applications/science/electronics/nvc/default.nix4
-rw-r--r--pkgs/applications/science/electronics/openboardview/default.nix4
-rw-r--r--pkgs/applications/science/logic/alt-ergo/default.nix4
-rw-r--r--pkgs/applications/science/logic/coq/default.nix4
-rw-r--r--pkgs/applications/science/logic/eprover/default.nix4
-rw-r--r--pkgs/applications/science/logic/prooftree/default.nix3
-rw-r--r--pkgs/applications/science/logic/tlaplus/toolbox.nix4
-rw-r--r--pkgs/applications/science/logic/why3/default.nix4
-rw-r--r--pkgs/applications/science/math/R/default.nix8
-rw-r--r--pkgs/applications/science/math/eigenmath/default.nix6
-rw-r--r--pkgs/applications/science/math/getdp/default.nix2
-rw-r--r--pkgs/applications/science/math/gretl/default.nix4
-rw-r--r--pkgs/applications/science/math/gurobi/default.nix4
-rw-r--r--pkgs/applications/science/math/lrcalc/default.nix5
-rw-r--r--pkgs/applications/science/math/nasc/default.nix4
-rw-r--r--pkgs/applications/science/math/polymake/default.nix4
-rw-r--r--pkgs/applications/science/math/pynac/default.nix18
-rw-r--r--pkgs/applications/science/math/qalculate-gtk/default.nix8
-rw-r--r--pkgs/applications/science/math/qalculate-qt/default.nix4
-rw-r--r--pkgs/applications/science/math/rofi-calc/default.nix4
-rw-r--r--pkgs/applications/science/math/sage/sagelib.nix6
-rw-r--r--pkgs/applications/science/math/wxmaxima/default.nix8
-rw-r--r--pkgs/applications/science/medicine/xmedcon/default.nix4
-rw-r--r--pkgs/applications/science/misc/rink/default.nix10
-rw-r--r--pkgs/applications/science/misc/root/default.nix51
-rw-r--r--pkgs/applications/science/misc/root/setup-hook.sh4
-rw-r--r--pkgs/applications/science/misc/root/sw_vers.patch2
-rw-r--r--pkgs/applications/science/misc/snakemake/default.nix4
-rw-r--r--pkgs/applications/science/physics/crystfel/default.nix4
-rw-r--r--pkgs/applications/science/physics/elmerfem/default.nix23
-rw-r--r--pkgs/applications/science/physics/xnec2c/default.nix4
-rw-r--r--pkgs/applications/science/robotics/betaflight-configurator/default.nix4
-rw-r--r--pkgs/applications/science/robotics/emuflight-configurator/default.nix4
-rw-r--r--pkgs/applications/science/robotics/inav-configurator/default.nix4
-rw-r--r--pkgs/applications/science/robotics/mujoco/default.nix14
-rw-r--r--pkgs/applications/search/recoll/default.nix6
-rw-r--r--pkgs/applications/system/asusctl/Cargo.lock3492
-rw-r--r--pkgs/applications/system/asusctl/default.nix50
-rw-r--r--pkgs/applications/system/monitor/default.nix4
-rw-r--r--pkgs/applications/system/thumbdrives/default.nix4
-rw-r--r--pkgs/applications/terminal-emulators/blackbox-terminal/default.nix3
-rw-r--r--pkgs/applications/terminal-emulators/gnome-console/default.nix4
-rw-r--r--pkgs/applications/terminal-emulators/guake/default.nix44
-rw-r--r--pkgs/applications/terminal-emulators/guake/no-compile-schemas.patch34
-rw-r--r--pkgs/applications/terminal-emulators/kitty/default.nix5
-rw-r--r--pkgs/applications/terminal-emulators/kitty/themes.nix10
-rw-r--r--pkgs/applications/terminal-emulators/lxterminal/default.nix4
-rw-r--r--pkgs/applications/terminal-emulators/mlterm/default.nix4
-rw-r--r--pkgs/applications/terminal-emulators/rio/default.nix6
-rw-r--r--pkgs/applications/terminal-emulators/terminator/default.nix15
-rw-r--r--pkgs/applications/terminal-emulators/termite/default.nix4
-rw-r--r--pkgs/applications/terminal-emulators/x3270/default.nix4
-rw-r--r--pkgs/applications/version-management/commitizen/default.nix4
-rw-r--r--pkgs/applications/version-management/deepgit/default.nix4
-rw-r--r--pkgs/applications/version-management/gh/default.nix6
-rw-r--r--pkgs/applications/version-management/ghorg/default.nix4
-rw-r--r--pkgs/applications/version-management/git-cliff/default.nix7
-rw-r--r--pkgs/applications/version-management/git-cola/default.nix4
-rw-r--r--pkgs/applications/version-management/git-credential-oauth/default.nix4
-rw-r--r--pkgs/applications/version-management/git-machete/default.nix4
-rw-r--r--pkgs/applications/version-management/git-mit/default.nix6
-rw-r--r--pkgs/applications/version-management/git-town/default.nix22
-rw-r--r--pkgs/applications/version-management/gitbatch/default.nix9
-rw-r--r--pkgs/applications/version-management/gitkraken/default.nix4
-rw-r--r--pkgs/applications/version-management/gitlab/data.json12
-rw-r--r--pkgs/applications/version-management/gitlab/gitaly/default.nix6
-rw-r--r--pkgs/applications/version-management/gitlab/gitlab-container-registry/Disable-inmemory-storage-driver-test.patch38
-rw-r--r--pkgs/applications/version-management/gitlab/gitlab-container-registry/default.nix13
-rw-r--r--pkgs/applications/version-management/gitlab/gitlab-pages/default.nix4
-rw-r--r--pkgs/applications/version-management/gitlab/gitlab-workhorse/default.nix2
-rw-r--r--pkgs/applications/version-management/gitnuro/default.nix8
-rw-r--r--pkgs/applications/version-management/gitsign/default.nix6
-rw-r--r--pkgs/applications/version-management/hut/default.nix6
-rw-r--r--pkgs/applications/version-management/jujutsu/default.nix6
-rw-r--r--pkgs/applications/version-management/meld/default.nix4
-rw-r--r--pkgs/applications/version-management/pass-git-helper/default.nix4
-rw-r--r--pkgs/applications/version-management/radicle-cli/Cargo.lock6892
-rw-r--r--pkgs/applications/version-management/radicle-cli/default.nix88
-rw-r--r--pkgs/applications/version-management/radicle-upstream/default.nix82
-rw-r--r--pkgs/applications/version-management/sourcehut/default.nix8
-rw-r--r--pkgs/applications/version-management/stgit/default.nix6
-rw-r--r--pkgs/applications/version-management/sublime-merge/common.nix4
-rw-r--r--pkgs/applications/version-management/tig/default.nix4
-rw-r--r--pkgs/applications/video/anilibria-winmaclinux/default.nix4
-rw-r--r--pkgs/applications/video/bombono/default.nix4
-rw-r--r--pkgs/applications/video/byzanz/default.nix4
-rw-r--r--pkgs/applications/video/davinci-resolve/default.nix26
-rw-r--r--pkgs/applications/video/devede/default.nix4
-rw-r--r--pkgs/applications/video/dvdstyler/default.nix4
-rw-r--r--pkgs/applications/video/entangle/default.nix4
-rw-r--r--pkgs/applications/video/flowblade/default.nix4
-rw-r--r--pkgs/applications/video/gnome-mplayer/default.nix4
-rw-r--r--pkgs/applications/video/gnomecast/default.nix4
-rw-r--r--pkgs/applications/video/go2tv/default.nix12
-rw-r--r--pkgs/applications/video/gpu-screen-recorder/gpu-screen-recorder-gtk.nix4
-rw-r--r--pkgs/applications/video/handbrake/default.nix4
-rw-r--r--pkgs/applications/video/haruna/default.nix4
-rw-r--r--pkgs/applications/video/hypnotix/default.nix4
-rw-r--r--pkgs/applications/video/imagination/default.nix4
-rw-r--r--pkgs/applications/video/jellyfin-media-player/default.nix7
-rw-r--r--pkgs/applications/video/jellyfin-media-player/disable-update-notifications.patch8
-rw-r--r--pkgs/applications/video/jellyfin-mpv-shim/default.nix4
-rw-r--r--pkgs/applications/video/kazam/default.nix4
-rw-r--r--pkgs/applications/video/kodi/addons/inputstream-adaptive/default.nix8
-rw-r--r--pkgs/applications/video/kodi/addons/pvr-hdhomerun/default.nix4
-rw-r--r--pkgs/applications/video/kodi/addons/pvr-hts/default.nix4
-rw-r--r--pkgs/applications/video/kodi/addons/pvr-iptvsimple/default.nix4
-rw-r--r--pkgs/applications/video/kodi/addons/pvr-vdr-vnsi/default.nix4
-rw-r--r--pkgs/applications/video/kodi/addons/visualization-projectm/default.nix4
-rw-r--r--pkgs/applications/video/kodi/addons/youtube/default.nix4
-rw-r--r--pkgs/applications/video/lbry/default.nix4
-rw-r--r--pkgs/applications/video/losslesscut-bin/build-from-appimage.nix2
-rw-r--r--pkgs/applications/video/media-downloader/default.nix4
-rw-r--r--pkgs/applications/video/mkvtoolnix/default.nix6
-rw-r--r--pkgs/applications/video/mpv/scripts/buildLua.nix147
-rw-r--r--pkgs/applications/video/mpv/scripts/chapterskip.nix24
-rw-r--r--pkgs/applications/video/mpv/scripts/convert.nix33
-rw-r--r--pkgs/applications/video/mpv/scripts/cutter.nix14
-rw-r--r--pkgs/applications/video/mpv/scripts/default.nix219
-rw-r--r--pkgs/applications/video/mpv/scripts/dynamic-crop.nix9
-rw-r--r--pkgs/applications/video/mpv/scripts/evafast.nix28
-rw-r--r--pkgs/applications/video/mpv/scripts/inhibit-gnome.nix19
-rw-r--r--pkgs/applications/video/mpv/scripts/memo.nix11
-rw-r--r--pkgs/applications/video/mpv/scripts/modernx-zydezu.nix20
-rw-r--r--pkgs/applications/video/mpv/scripts/modernx.nix11
-rw-r--r--pkgs/applications/video/mpv/scripts/mpris.nix21
-rw-r--r--pkgs/applications/video/mpv/scripts/mpv-cheatsheet.nix16
-rw-r--r--pkgs/applications/video/mpv/scripts/mpv-notify-send.nix19
-rw-r--r--pkgs/applications/video/mpv/scripts/mpv-osc-modern.nix11
-rw-r--r--pkgs/applications/video/mpv/scripts/mpv-playlistmanager.nix14
-rw-r--r--pkgs/applications/video/mpv/scripts/mpv-webm.nix11
-rw-r--r--pkgs/applications/video/mpv/scripts/mpv.nix41
-rw-r--r--pkgs/applications/video/mpv/scripts/mpvacious.nix27
-rw-r--r--pkgs/applications/video/mpv/scripts/occivink.nix68
-rw-r--r--pkgs/applications/video/mpv/scripts/quack.nix18
-rw-r--r--pkgs/applications/video/mpv/scripts/quality-menu.nix15
-rw-r--r--pkgs/applications/video/mpv/scripts/reload.nix18
-rw-r--r--pkgs/applications/video/mpv/scripts/simple-mpv-webui.nix22
-rw-r--r--pkgs/applications/video/mpv/scripts/sponsorblock-minimal.nix12
-rw-r--r--pkgs/applications/video/mpv/scripts/sponsorblock.nix17
-rw-r--r--pkgs/applications/video/mpv/scripts/thumbfast.nix15
-rw-r--r--pkgs/applications/video/mpv/scripts/thumbnail.nix10
-rw-r--r--pkgs/applications/video/mpv/scripts/uosc.nix17
-rw-r--r--pkgs/applications/video/mpv/scripts/videoclip.nix33
-rw-r--r--pkgs/applications/video/mpv/scripts/visualizer.nix4
-rw-r--r--pkgs/applications/video/mpv/scripts/vr-reversal.nix14
-rw-r--r--pkgs/applications/video/mpv/scripts/webtorrent-mpv-hook.nix17
-rw-r--r--pkgs/applications/video/mpv/scripts/youtube-upnext.nix10
-rw-r--r--pkgs/applications/video/obs-studio/default.nix4
-rw-r--r--pkgs/applications/video/obs-studio/plugins/advanced-scene-switcher/default.nix4
-rw-r--r--pkgs/applications/video/obs-studio/plugins/obs-mute-filter.nix4
-rw-r--r--pkgs/applications/video/obs-studio/plugins/obs-ndi/default.nix4
-rw-r--r--pkgs/applications/video/obs-studio/plugins/obs-webkitgtk.nix4
-rw-r--r--pkgs/applications/video/open-in-mpv/default.nix4
-rw-r--r--pkgs/applications/video/openshot-qt/default.nix4
-rw-r--r--pkgs/applications/video/peek/default.nix4
-rw-r--r--pkgs/applications/video/pipe-viewer/default.nix10
-rw-r--r--pkgs/applications/video/pitivi/default.nix4
-rw-r--r--pkgs/applications/video/plex-mpv-shim/default.nix4
-rw-r--r--pkgs/applications/video/recapp/default.nix4
-rw-r--r--pkgs/applications/video/rtabmap/default.nix8
-rw-r--r--pkgs/applications/video/screenkey/default.nix6
-rw-r--r--pkgs/applications/video/streamlink-twitch-gui/bin.nix4
-rw-r--r--pkgs/applications/video/streamlink/default.nix11
-rw-r--r--pkgs/applications/video/subtitleeditor/default.nix4
-rw-r--r--pkgs/applications/video/tartube/default.nix4
-rw-r--r--pkgs/applications/video/timelens/default.nix4
-rw-r--r--pkgs/applications/video/vdr/softhddevice/default.nix4
-rw-r--r--pkgs/applications/video/xplayer/default.nix4
-rw-r--r--pkgs/applications/virtualization/conmon/default.nix4
-rw-r--r--pkgs/applications/virtualization/cri-o/default.nix4
-rw-r--r--pkgs/applications/virtualization/crosvm/default.nix10
-rw-r--r--pkgs/applications/virtualization/crun/default.nix4
-rw-r--r--pkgs/applications/virtualization/ddev/default.nix4
-rw-r--r--pkgs/applications/virtualization/distrobox/default.nix6
-rw-r--r--pkgs/applications/virtualization/docker/compose_1.nix8
-rw-r--r--pkgs/applications/virtualization/docker/default.nix14
-rw-r--r--pkgs/applications/virtualization/dumb-init/default.nix2
-rw-r--r--pkgs/applications/virtualization/ecs-agent/default.nix4
-rw-r--r--pkgs/applications/virtualization/kraft/default.nix6
-rw-r--r--pkgs/applications/virtualization/podman-tui/default.nix19
-rw-r--r--pkgs/applications/virtualization/podman/default.nix21
-rw-r--r--pkgs/applications/virtualization/podman/hardcode-paths.patch41
-rw-r--r--pkgs/applications/virtualization/qemu/default.nix8
-rw-r--r--pkgs/applications/virtualization/quickgui/default.nix4
-rw-r--r--pkgs/applications/virtualization/singularity/packages.nix6
-rw-r--r--pkgs/applications/virtualization/tart/default.nix4
-rw-r--r--pkgs/applications/virtualization/virt-manager/default.nix4
-rw-r--r--pkgs/applications/virtualization/virt-viewer/default.nix4
-rw-r--r--pkgs/applications/virtualization/virtualbox/default.nix11
-rw-r--r--pkgs/applications/virtualization/virtualbox/guest-additions-iso/default.nix19
-rw-r--r--pkgs/applications/window-managers/dk/default.nix4
-rw-r--r--pkgs/applications/window-managers/hyprwm/hyprland/default.nix89
-rw-r--r--pkgs/applications/window-managers/hyprwm/hyprland/udis86.nix15
-rw-r--r--pkgs/applications/window-managers/hyprwm/hyprland/wlroots.nix20
-rw-r--r--pkgs/applications/window-managers/i3/lock-fancy.nix59
-rw-r--r--pkgs/applications/window-managers/jay/default.nix6
-rw-r--r--pkgs/applications/window-managers/miriway/default.nix6
-rw-r--r--pkgs/applications/window-managers/sommelier/default.nix6
-rw-r--r--pkgs/applications/window-managers/wayfire/wcm.nix4
-rw-r--r--pkgs/build-support/appimage/default.nix2
-rw-r--r--pkgs/build-support/dlang/builddubpackage/default.nix37
-rw-r--r--pkgs/build-support/dlang/dub-to-nix/default.nix9
-rw-r--r--pkgs/build-support/dlang/dub-to-nix/dub-to-nix.py62
-rw-r--r--pkgs/build-support/dotnet/build-dotnet-module/default.nix10
-rwxr-xr-xpkgs/build-support/fetchgit/nix-prefetch-git2
-rw-r--r--pkgs/build-support/fetchgit/tests.nix7
-rw-r--r--pkgs/build-support/flutter/default.nix4
-rw-r--r--pkgs/build-support/go/module.nix20
-rw-r--r--pkgs/build-support/go/package.nix2
-rw-r--r--pkgs/build-support/kernel/compress-firmware-xz.nix29
-rw-r--r--pkgs/build-support/kernel/compress-firmware.nix43
-rw-r--r--pkgs/build-support/kernel/modules-closure.sh2
-rw-r--r--pkgs/build-support/lib/meson.nix4
-rw-r--r--pkgs/build-support/php/build-composer-project.nix85
-rw-r--r--pkgs/build-support/php/build-pecl.nix98
-rw-r--r--pkgs/build-support/php/builders/default.nix8
-rw-r--r--pkgs/build-support/php/builders/v1/build-composer-project.nix111
-rw-r--r--pkgs/build-support/php/builders/v1/build-composer-repository.nix (renamed from pkgs/build-support/php/build-composer-repository.nix)87
-rw-r--r--pkgs/build-support/php/builders/v1/hooks/composer-install-hook.sh (renamed from pkgs/build-support/php/hooks/composer-install-hook.sh)0
-rw-r--r--pkgs/build-support/php/builders/v1/hooks/composer-repository-hook.sh (renamed from pkgs/build-support/php/hooks/composer-repository-hook.sh)0
-rw-r--r--pkgs/build-support/php/builders/v1/hooks/default.nix45
-rw-r--r--pkgs/build-support/php/builders/v1/hooks/php-script-utils.bash (renamed from pkgs/build-support/php/hooks/php-script-utils.bash)0
-rw-r--r--pkgs/build-support/php/hooks/default.nix39
-rw-r--r--pkgs/build-support/php/pkgs/composer-local-repo-plugin.nix31
-rw-r--r--pkgs/build-support/php/pkgs/composer-phar.nix40
-rw-r--r--pkgs/build-support/rust/build-rust-package/default.nix6
-rw-r--r--pkgs/build-support/rust/hooks/cargo-build-hook.sh9
-rw-r--r--pkgs/build-support/rust/replace-workspace-values.py42
-rw-r--r--pkgs/build-support/setup-hooks/wrap-gapps-hook/default.nix16
-rw-r--r--pkgs/build-support/testers/hasPkgConfigModules/tester.nix32
-rw-r--r--pkgs/build-support/testers/hasPkgConfigModules/tests.nix15
-rw-r--r--pkgs/build-support/vm/default.nix9
-rw-r--r--pkgs/by-name/_0/_0xpropo/package.nix4
-rw-r--r--pkgs/by-name/_6/_64gram/package.nix4
-rw-r--r--pkgs/by-name/ad/adafruit-nrfutil/package.nix6
-rw-r--r--pkgs/by-name/ad/adbtuifm/package.nix2
-rw-r--r--pkgs/by-name/ad/adrs/package.nix26
-rw-r--r--pkgs/by-name/ad/adwsteamgtk/package.nix4
-rw-r--r--pkgs/by-name/ae/aegisub/package.nix4
-rw-r--r--pkgs/by-name/af/affine/package.nix4
-rw-r--r--pkgs/by-name/ag/ags/package.nix62
-rw-r--r--pkgs/by-name/al/alacarte/package.nix70
-rw-r--r--pkgs/by-name/al/alephone-durandal/package.nix4
-rw-r--r--pkgs/by-name/al/alephone-infinity/package.nix4
-rw-r--r--pkgs/by-name/al/alephone-marathon/package.nix4
-rw-r--r--pkgs/by-name/al/alephone/package.nix168
-rw-r--r--pkgs/by-name/al/alsa-ucm-conf/package.nix17
-rw-r--r--pkgs/by-name/al/alt-tab-macos/package.nix31
-rw-r--r--pkgs/by-name/am/am2rlauncher/package.nix4
-rw-r--r--pkgs/by-name/an/ananicy-rules-cachyos/package.nix (renamed from pkgs/misc/ananicy-rules-cachyos/default.nix)23
-rw-r--r--pkgs/by-name/an/annotator/package.nix4
-rw-r--r--pkgs/by-name/an/ansel/package.nix11
-rw-r--r--pkgs/by-name/an/antares/package.nix6
-rw-r--r--pkgs/by-name/an/anyk/package.nix18
-rwxr-xr-xpkgs/by-name/an/anyk/update.py29
-rw-r--r--pkgs/by-name/an/anyk/version.json5
-rw-r--r--pkgs/by-name/an/anyrun/package.nix4
-rw-r--r--pkgs/by-name/an/anytype/package.nix3
-rw-r--r--pkgs/by-name/ap/apostrophe/package.nix118
-rw-r--r--pkgs/by-name/ap/apt/package.nix4
-rw-r--r--pkgs/by-name/ap/apvlv/package.nix4
-rw-r--r--pkgs/by-name/ar/arc-browser/package.nix4
-rw-r--r--pkgs/by-name/ar/arduino-ide/package.nix3
-rw-r--r--pkgs/by-name/ar/argc/package.nix66
-rw-r--r--pkgs/by-name/ar/aribb24/package.nix52
-rw-r--r--pkgs/by-name/ar/ark-pixel-font/package.nix8
-rw-r--r--pkgs/by-name/as/ascii-draw/fix_palette_data_dir.patch38
-rw-r--r--pkgs/by-name/as/ascii-draw/package.nix8
-rw-r--r--pkgs/by-name/as/asm-lsp/package.nix11
-rw-r--r--pkgs/by-name/as/assemblyscript/package.nix (renamed from pkgs/development/compilers/assemblyscript/default.nix)0
-rw-r--r--pkgs/by-name/as/ast-grep/package.nix6
-rw-r--r--pkgs/by-name/as/async-profiler/package.nix46
-rw-r--r--pkgs/by-name/at/atac/package.nix7
-rw-r--r--pkgs/by-name/at/atf/package.nix89
-rw-r--r--pkgs/by-name/at/atlauncher/package.nix63
-rw-r--r--pkgs/by-name/au/audio-sharing/package.nix6
-rw-r--r--pkgs/by-name/au/autosuspend/package.nix6
-rw-r--r--pkgs/by-name/ay/ayatana-indicator-datetime/package.nix4
-rw-r--r--pkgs/by-name/ay/ayatana-indicator-messages/package.nix8
-rw-r--r--pkgs/by-name/ay/ayatana-indicator-session/package.nix4
-rw-r--r--pkgs/by-name/ba/backgroundremover/package.nix10
-rw-r--r--pkgs/by-name/ba/badkeys/package.nix45
-rw-r--r--pkgs/by-name/bc/bcc/absolute-ausyscall.patch (renamed from pkgs/os-specific/linux/bcc/absolute-ausyscall.patch)0
-rw-r--r--pkgs/by-name/bc/bcc/fix-deadlock-detector-import.patch (renamed from pkgs/os-specific/linux/bcc/fix-deadlock-detector-import.patch)0
-rw-r--r--pkgs/by-name/bc/bcc/libbcc-path.patch (renamed from pkgs/os-specific/linux/bcc/libbcc-path.patch)0
-rw-r--r--pkgs/by-name/bc/bcc/package.nix (renamed from pkgs/os-specific/linux/bcc/default.nix)0
-rw-r--r--pkgs/by-name/bd/bdf2ttf/package.nix32
-rw-r--r--pkgs/by-name/be/beekeeper-studio/package.nix6
-rw-r--r--pkgs/by-name/be/bevelbar/package.nix (renamed from pkgs/tools/X11/bevelbar/default.nix)28
-rw-r--r--pkgs/by-name/bi/biglybt/package.nix4
-rw-r--r--pkgs/by-name/bi/bitmagnet/package.nix10
-rw-r--r--pkgs/by-name/bl/blanket/package.nix (renamed from pkgs/applications/audio/blanket/default.nix)57
-rw-r--r--pkgs/by-name/bl/blockbench/package.nix6
-rw-r--r--pkgs/by-name/bl/bluez-tools/package.nix2
-rw-r--r--pkgs/by-name/bl/bluez/package.nix7
-rw-r--r--pkgs/by-name/bn/bngblaster/package.nix4
-rw-r--r--pkgs/by-name/bo/boehmgc/package.nix8
-rw-r--r--pkgs/by-name/bo/bombsquad/package.nix114
-rw-r--r--pkgs/by-name/bo/boogie/package.nix4
-rw-r--r--pkgs/by-name/bo/boxbuddy/package.nix6
-rw-r--r--pkgs/by-name/bp/bpftrace/package.nix (renamed from pkgs/os-specific/linux/bpftrace/default.nix)0
-rw-r--r--pkgs/by-name/br/bruno/package.nix6
-rw-r--r--pkgs/by-name/bt/btrfs-auto-snapshot/package.nix75
-rw-r--r--pkgs/by-name/bu/buckle/package.nix13
-rw-r--r--pkgs/by-name/bu/bugstalker/package.nix104
-rw-r--r--pkgs/by-name/bu/bustle/package.nix61
-rw-r--r--pkgs/by-name/bu/buttermanager/package.nix4
-rw-r--r--pkgs/by-name/c2/c2fmzq/package.nix6
-rw-r--r--pkgs/by-name/ca/caddy/package.nix (renamed from pkgs/servers/caddy/default.nix)10
-rw-r--r--pkgs/by-name/ca/caido/package.nix2
-rw-r--r--pkgs/by-name/ca/caligula/package.nix42
-rw-r--r--pkgs/by-name/ca/cargo-bloat/package.nix6
-rw-r--r--pkgs/by-name/ca/cargo-expand/package.nix6
-rw-r--r--pkgs/by-name/ca/cargo-geiger/allow-warnings.patch12
-rw-r--r--pkgs/by-name/ca/cargo-geiger/package.nix (renamed from pkgs/development/tools/rust/cargo-geiger/default.nix)22
-rw-r--r--pkgs/by-name/ca/cargo-information/Cargo.lock380
-rw-r--r--pkgs/by-name/ca/cargo-information/package.nix5
-rw-r--r--pkgs/by-name/ca/cargo-make/package.nix6
-rw-r--r--pkgs/by-name/ca/cargo-profiler/package.nix (renamed from pkgs/development/tools/rust/cargo-profiler/default.nix)0
-rw-r--r--pkgs/by-name/ca/cargo-raze/package.nix55
-rw-r--r--pkgs/by-name/ca/cargo-raze/rustc-serialize-fix.patch29
-rw-r--r--pkgs/by-name/ca/cargo-shear/package.nix34
-rw-r--r--pkgs/by-name/ca/cargo-typify/package.nix5
-rw-r--r--pkgs/by-name/ca/cargo-wasi/package.nix (renamed from pkgs/development/tools/rust/cargo-wasi/default.nix)4
-rw-r--r--pkgs/by-name/ca/castxml/package.nix (renamed from pkgs/development/tools/castxml/default.nix)50
-rw-r--r--pkgs/by-name/ca/catppuccin-sddm-corners/package.nix6
-rw-r--r--pkgs/by-name/ca/catppuccin-sddm/package.nix80
-rw-r--r--pkgs/by-name/ca/catppuccinifier-cli/Cargo.lock1596
-rw-r--r--pkgs/by-name/ca/catppuccinifier-cli/package.nix34
-rw-r--r--pkgs/by-name/cd/cdecl/cdecl-2.5-lex.patch (renamed from pkgs/development/tools/cdecl/cdecl-2.5-lex.patch)0
-rw-r--r--pkgs/by-name/cd/cdecl/package.nix82
-rw-r--r--pkgs/by-name/cd/cdecl/test_remove_interactive_line.patch10
-rw-r--r--pkgs/by-name/ce/cent/package.nix33
-rw-r--r--pkgs/by-name/ce/centrifugo/package.nix6
-rw-r--r--pkgs/by-name/ch/chezmoi/package.nix6
-rw-r--r--pkgs/by-name/ch/chrysalis/package.nix3
-rw-r--r--pkgs/by-name/ci/cimg/package.nix4
-rw-r--r--pkgs/by-name/cl/clairvoyant/package.nix16
-rw-r--r--pkgs/by-name/cl/clamtk/package.nix4
-rw-r--r--pkgs/by-name/cl/clash-verge-rev/package.nix4
-rw-r--r--pkgs/by-name/cl/clash-verge/package.nix4
-rw-r--r--pkgs/by-name/cl/cli11/package.nix (renamed from pkgs/development/tools/misc/cli11/default.nix)30
-rw-r--r--pkgs/by-name/cl/clipse/package.nix4
-rw-r--r--pkgs/by-name/cm/cmake/package.nix4
-rw-r--r--pkgs/by-name/co/codeberg-cli/package.nix (renamed from pkgs/applications/version-management/codeberg-cli/default.nix)42
-rw-r--r--pkgs/by-name/co/codeium/package.nix10
-rw-r--r--pkgs/by-name/co/codux/package.nix4
-rw-r--r--pkgs/by-name/co/committed/package.nix43
-rw-r--r--pkgs/by-name/co/connman-gtk/package.nix4
-rw-r--r--pkgs/by-name/co/connman-notify/package.nix4
-rw-r--r--pkgs/by-name/co/coost/package.nix (renamed from pkgs/development/libraries/coost/default.nix)13
-rw-r--r--pkgs/by-name/co/coppwr/Cargo.lock2166
-rw-r--r--pkgs/by-name/co/coppwr/package.nix11
-rw-r--r--pkgs/by-name/co/cosmic-edit/Cargo.lock1353
-rw-r--r--pkgs/by-name/co/cosmic-edit/package.nix17
-rw-r--r--pkgs/by-name/co/cosmic-icons/package.nix6
-rw-r--r--pkgs/by-name/co/cosmic-store/Cargo.lock373
-rw-r--r--pkgs/by-name/co/cosmic-store/package.nix12
-rw-r--r--pkgs/by-name/co/cosmic-tasks/package.nix4
-rw-r--r--pkgs/by-name/cp/cpu-x/package.nix8
-rw-r--r--pkgs/by-name/cr/criterion/package.nix117
-rw-r--r--pkgs/by-name/cr/criterion/tests/001-version.nix25
-rw-r--r--pkgs/by-name/cr/criterion/tests/test_dummy.c7
-rw-r--r--pkgs/by-name/cr/crunchy-cli/Cargo.lock235
-rw-r--r--pkgs/by-name/cr/crunchy-cli/package.nix4
-rw-r--r--pkgs/by-name/cr/cryptor/package.nix4
-rw-r--r--pkgs/by-name/cs/csvkit/package.nix4
-rw-r--r--pkgs/by-name/cs/csvq/package.nix (renamed from pkgs/development/tools/csvq/default.nix)0
-rw-r--r--pkgs/by-name/da/dapr-cli/package.nix (renamed from pkgs/development/tools/dapr/cli/default.nix)0
-rw-r--r--pkgs/by-name/da/darklua/package.nix (renamed from pkgs/development/tools/darklua/default.nix)16
-rw-r--r--pkgs/by-name/db/dbeaver-bin/package.nix54
-rw-r--r--pkgs/by-name/de/dep-scan/package.nix4
-rw-r--r--pkgs/by-name/de/devcontainer/package.nix6
-rw-r--r--pkgs/by-name/di/diffedit3/package.nix30
-rw-r--r--pkgs/by-name/di/digikam/package.nix10
-rw-r--r--pkgs/by-name/di/dillo/package.nix87
-rw-r--r--pkgs/by-name/di/dillong/package.nix (renamed from pkgs/applications/networking/browsers/dillong/default.nix)50
-rw-r--r--pkgs/by-name/di/dim/package.nix23
-rw-r--r--pkgs/by-name/di/discord-gamesdk/package.nix (renamed from pkgs/development/libraries/discord-gamesdk/default.nix)21
-rw-r--r--pkgs/by-name/di/discover-overlay/package.nix9
-rw-r--r--pkgs/by-name/di/disko/package.nix4
-rw-r--r--pkgs/by-name/di/displaycal/package.nix4
-rw-r--r--pkgs/by-name/dm/dmarc-report-converter/package.nix4
-rw-r--r--pkgs/by-name/do/docfd/package.nix50
-rw-r--r--pkgs/by-name/do/door-knocker/package.nix4
-rw-r--r--pkgs/by-name/do/doppler/package.nix (renamed from pkgs/tools/security/doppler/default.nix)0
-rw-r--r--pkgs/by-name/do/dorion/package.nix8
-rw-r--r--pkgs/by-name/do/dotnet-outdated/package.nix4
-rw-r--r--pkgs/by-name/do/doublecmd/package.nix4
-rw-r--r--pkgs/by-name/do/downonspot/Cargo.lock.patch (renamed from pkgs/applications/misc/downonspot/Cargo.lock.patch)0
-rw-r--r--pkgs/by-name/do/downonspot/package.nix (renamed from pkgs/applications/misc/downonspot/default.nix)8
-rw-r--r--pkgs/by-name/dp/dpp/package.nix4
-rw-r--r--pkgs/by-name/du/dualsensectl/package.nix (renamed from pkgs/tools/games/dualsensectl/default.nix)37
-rw-r--r--pkgs/by-name/du/dumbpipe/package.nix6
-rw-r--r--pkgs/by-name/du/dune3d/package.nix8
-rw-r--r--pkgs/by-name/du/dunst/package.nix77
-rw-r--r--pkgs/by-name/e1/e1s/package.nix26
-rw-r--r--pkgs/by-name/ea/earlyoom/package.nix4
-rw-r--r--pkgs/by-name/ec/eclint/package.nix (renamed from pkgs/development/tools/eclint/default.nix)0
-rw-r--r--pkgs/by-name/ed/eduvpn-client/package.nix4
-rw-r--r--pkgs/by-name/ee/eepers/package.nix81
-rw-r--r--pkgs/by-name/ei/eigenlayer/package.nix6
-rw-r--r--pkgs/by-name/en/endlessh-go/package.nix (renamed from pkgs/servers/endlessh-go/default.nix)12
-rw-r--r--pkgs/by-name/en/engage/package.nix13
-rw-r--r--pkgs/by-name/er/errands/package.nix41
-rw-r--r--pkgs/by-name/ew/eww/package.nix40
-rw-r--r--pkgs/by-name/ez/eza/package.nix6
-rw-r--r--pkgs/by-name/fa/fasole/package.nix23
-rw-r--r--pkgs/by-name/fa/fastahack/package.nix43
-rw-r--r--pkgs/by-name/fa/fastfetch/package.nix9
-rw-r--r--pkgs/by-name/fe/fennel-ls/package.nix28
-rw-r--r--pkgs/by-name/ff/ff2mpv-rust/Cargo.lock112
-rw-r--r--pkgs/by-name/ff/ff2mpv-rust/package.nix48
-rw-r--r--pkgs/by-name/ff/fflogs/package.nix4
-rw-r--r--pkgs/by-name/fi/files-cli/package.nix6
-rw-r--r--pkgs/by-name/fl/flac123/package.nix39
-rw-r--r--pkgs/by-name/fl/flarectl/package.nix6
-rw-r--r--pkgs/by-name/fl/flashmq/package.nix (renamed from pkgs/servers/mqtt/flashmq/default.nix)4
-rw-r--r--pkgs/by-name/fl/flashprog/package.nix10
-rw-r--r--pkgs/by-name/fl/flet-client-flutter/package.nix24
-rw-r--r--pkgs/by-name/fl/flet-client-flutter/pubspec.lock.json32
-rw-r--r--pkgs/by-name/fl/flowtime/package.nix (renamed from pkgs/applications/misc/flowtime/default.nix)4
-rw-r--r--pkgs/by-name/fl/flye/package.nix6
-rw-r--r--pkgs/by-name/fo/fontfor/package.nix (renamed from pkgs/tools/misc/fontfor/default.nix)26
-rw-r--r--pkgs/by-name/fo/fooyin/package.nix61
-rw-r--r--pkgs/by-name/fo/forbidden/package.nix10
-rw-r--r--pkgs/by-name/fo/forge-sparks/package.nix16
-rw-r--r--pkgs/by-name/fr/fragments/package.nix (renamed from pkgs/applications/networking/p2p/fragments/default.nix)27
-rw-r--r--pkgs/by-name/fr/frankenphp/package.nix9
-rw-r--r--pkgs/by-name/fr/free42/package.nix4
-rw-r--r--pkgs/by-name/fr/freecad/package.nix7
-rw-r--r--pkgs/by-name/fr/freefilesync/package.nix16
-rw-r--r--pkgs/by-name/fr/fretboard/package.nix22
-rw-r--r--pkgs/by-name/ft/fte/package.nix59
-rw-r--r--pkgs/by-name/fu/furnace/package.nix (renamed from pkgs/applications/audio/furnace/default.nix)64
-rwxr-xr-xpkgs/by-name/fu/furnace/update.sh (renamed from pkgs/applications/audio/furnace/update.sh)0
-rw-r--r--pkgs/by-name/fu/fusuma/Gemfile (renamed from pkgs/tools/inputmethods/fusuma/Gemfile)0
-rw-r--r--pkgs/by-name/fu/fusuma/Gemfile.lock (renamed from pkgs/tools/inputmethods/fusuma/Gemfile.lock)12
-rw-r--r--pkgs/by-name/fu/fusuma/gemset.nix (renamed from pkgs/tools/inputmethods/fusuma/gemset.nix)27
-rw-r--r--pkgs/by-name/fu/fusuma/package.nix (renamed from pkgs/tools/inputmethods/fusuma/default.nix)0
-rw-r--r--pkgs/by-name/fw/fwupd/package.nix8
-rw-r--r--pkgs/by-name/fz/fzf-make/package.nix6
-rw-r--r--pkgs/by-name/fz/fzf/package.nix6
-rw-r--r--pkgs/by-name/ga/galah/package.nix32
-rw-r--r--pkgs/by-name/ga/gamescope/package.nix4
-rw-r--r--pkgs/by-name/gb/gbsplay/package.nix43
-rw-r--r--pkgs/by-name/ge/germinal/package.nix4
-rw-r--r--pkgs/by-name/gh/gh-poi/package.nix6
-rw-r--r--pkgs/by-name/gi/gickup/package.nix4
-rw-r--r--pkgs/by-name/gi/git-instafix/package.nix6
-rw-r--r--pkgs/by-name/gi/git-standup/package.nix (renamed from pkgs/applications/version-management/git-standup/default.nix)16
-rw-r--r--pkgs/by-name/gi/githooks/package.nix85
-rw-r--r--pkgs/by-name/gi/github-desktop/package.nix4
-rw-r--r--pkgs/by-name/gi/gitlab-ci-local/package.nix6
-rw-r--r--pkgs/by-name/gi/gitprompt-rs/package.nix (renamed from pkgs/applications/version-management/gitprompt-rs/default.nix)18
-rw-r--r--pkgs/by-name/gi/gittuf/package.nix6
-rw-r--r--pkgs/by-name/gi/gitu/package.nix6
-rw-r--r--pkgs/by-name/gi/gitversion/package.nix20
-rw-r--r--pkgs/by-name/gl/glance/package.nix32
-rw-r--r--pkgs/by-name/gl/glasskube/package.nix6
-rw-r--r--pkgs/by-name/gl/glsl_analyzer/package.nix39
-rw-r--r--pkgs/by-name/gl/glycin-loaders/fix-glycin-paths.patch35
-rw-r--r--pkgs/by-name/gl/glycin-loaders/package.nix10
-rw-r--r--pkgs/by-name/gm/gmetronome/package.nix8
-rw-r--r--pkgs/by-name/gm/gmic-qt/package.nix4
-rw-r--r--pkgs/by-name/gn/gnome-online-accounts-gtk/package.nix48
-rw-r--r--pkgs/by-name/go/go-cover-treemap/package.nix28
-rw-r--r--pkgs/by-name/go/go-errorlint/package.nix6
-rw-r--r--pkgs/by-name/go/go-judge/package.nix6
-rw-r--r--pkgs/by-name/go/go-landlock/package.nix30
-rw-r--r--pkgs/by-name/go/go-passbolt-cli/package.nix52
-rw-r--r--pkgs/by-name/go/godns/package.nix6
-rw-r--r--pkgs/by-name/go/goflow2/package.nix (renamed from pkgs/tools/networking/goflow2/default.nix)15
-rw-r--r--pkgs/by-name/go/goofcord/package.nix151
-rw-r--r--pkgs/by-name/go/google-chrome/package.nix (renamed from pkgs/applications/networking/browsers/google-chrome/default.nix)66
-rw-r--r--pkgs/by-name/go/got/package.nix8
-rw-r--r--pkgs/by-name/gp/gpscorrelate/package.nix4
-rw-r--r--pkgs/by-name/gp/gpt4all/package.nix4
-rw-r--r--pkgs/by-name/gr/grafana-kiosk/package.nix7
-rw-r--r--pkgs/by-name/gr/graphite-cli/package-lock.json10
-rw-r--r--pkgs/by-name/gr/graphite-cli/package.nix6
-rw-r--r--pkgs/by-name/gr/greenmask/package.nix50
-rw-r--r--pkgs/by-name/gr/grype/package.nix12
-rw-r--r--pkgs/by-name/gt/gtimelog/package.nix4
-rw-r--r--pkgs/by-name/gt/gtkhash/package.nix4
-rw-r--r--pkgs/by-name/gu/guile-goblins/package.nix4
-rw-r--r--pkgs/by-name/gu/guile-lzlib/package.nix4
-rw-r--r--pkgs/by-name/gu/gungnir/package.nix29
-rw-r--r--pkgs/by-name/ha/halloy/Cargo.lock75
-rw-r--r--pkgs/by-name/ha/halloy/package.nix98
-rw-r--r--pkgs/by-name/ha/halo/package.nix72
-rw-r--r--pkgs/by-name/ha/handheld-daemon/package.nix4
-rw-r--r--pkgs/by-name/ha/hare/003-hardcode-qbe-and-harec.patch24
-rw-r--r--pkgs/by-name/ha/hare/package.nix157
-rw-r--r--pkgs/by-name/ha/haredo/001-use-nix-store-sh.patch20
-rw-r--r--pkgs/by-name/ha/haredo/package.nix36
-rw-r--r--pkgs/by-name/ha/hatch/package.nix (renamed from pkgs/development/tools/hatch/default.nix)23
-rw-r--r--pkgs/by-name/he/hexedit/package.nix31
-rw-r--r--pkgs/by-name/hi/hieroglyphic/package.nix75
-rw-r--r--pkgs/by-name/ho/home-manager/package.nix6
-rw-r--r--pkgs/by-name/ho/hoppscotch/package.nix29
-rw-r--r--pkgs/by-name/ht/httpie-desktop/package.nix23
-rw-r--r--pkgs/by-name/hu/hugo/package.nix6
-rw-r--r--pkgs/by-name/hu/humioctl/package.nix (renamed from pkgs/applications/logging/humioctl/default.nix)0
-rw-r--r--pkgs/by-name/hy/hyprdim/Cargo.lock1213
-rw-r--r--pkgs/by-name/hy/hyprdim/package.nix11
-rw-r--r--pkgs/by-name/hy/hyprland-activewindow/package.nix6
-rw-r--r--pkgs/by-name/hy/hyprland-workspaces/package.nix6
-rw-r--r--pkgs/by-name/hy/hyprlock/cmake.patch15
-rw-r--r--pkgs/by-name/hy/hyprlock/package.nix58
-rw-r--r--pkgs/by-name/hy/hyprnome/package.nix6
-rw-r--r--pkgs/by-name/i2/i2p/package.nix4
-rw-r--r--pkgs/by-name/i3/i3bar-river/package.nix6
-rw-r--r--pkgs/by-name/ic/icnsify/package.nix29
-rw-r--r--pkgs/by-name/ig/ignite-cli/package.nix6
-rw-r--r--pkgs/by-name/ig/igvm-tooling/package.nix86
-rw-r--r--pkgs/by-name/im/imposm/package.nix34
-rw-r--r--pkgs/by-name/in/incus/generic.nix10
-rw-r--r--pkgs/by-name/in/incus/package.nix6
-rw-r--r--pkgs/by-name/in/inotify-info/package.nix13
-rw-r--r--pkgs/by-name/in/inshellisense/package.nix6
-rw-r--r--pkgs/by-name/in/intune-portal/package.nix4
-rw-r--r--pkgs/by-name/ir/ironbar/package.nix110
-rw-r--r--pkgs/by-name/iz/izrss/package.nix40
-rw-r--r--pkgs/by-name/ja/jailer/package.nix83
-rw-r--r--pkgs/by-name/je/jetbrains-toolbox/package.nix1
-rw-r--r--pkgs/by-name/ji/jikken/package.nix7
-rw-r--r--pkgs/by-name/js/jsoncons/package.nix4
-rw-r--r--pkgs/by-name/ju/just/package.nix6
-rw-r--r--pkgs/by-name/ka/katawa-shoujo-re-engineered/package.nix6
-rw-r--r--pkgs/by-name/ka/katriawm/package.nix35
-rw-r--r--pkgs/by-name/kc/kcl-cli/package.nix6
-rw-r--r--pkgs/by-name/ke/keto/package.nix45
-rw-r--r--pkgs/by-name/ki/kittysay/package.nix6
-rw-r--r--pkgs/by-name/ko/komac/package.nix14
-rw-r--r--pkgs/by-name/ko/konbucase/package.nix4
-rw-r--r--pkgs/by-name/ko/koodo-reader/package.nix4
-rw-r--r--pkgs/by-name/ko/kor/package.nix6
-rw-r--r--pkgs/by-name/ko/kotlin-interactive-shell/package.nix45
-rw-r--r--pkgs/by-name/kx/kx-aspe-cli/package.nix36
-rw-r--r--pkgs/by-name/ky/kyua/kyua-check-hook.sh10
-rw-r--r--pkgs/by-name/ky/kyua/package.nix119
-rw-r--r--pkgs/by-name/ky/kyverno-chainsaw/package.nix6
-rw-r--r--pkgs/by-name/la/labelle/package.nix6
-rw-r--r--pkgs/by-name/la/labwc-gtktheme/package.nix6
-rw-r--r--pkgs/by-name/la/labwc-menu-generator/package.nix2
-rw-r--r--pkgs/by-name/la/labwc-tweaks-gtk/package.nix4
-rw-r--r--pkgs/by-name/la/labwc/package.nix4
-rw-r--r--pkgs/by-name/la/lacus/package.nix8
-rw-r--r--pkgs/by-name/lb/lbreakouthd/package.nix4
-rw-r--r--pkgs/by-name/le/lefthook/package.nix4
-rw-r--r--pkgs/by-name/le/lexical/package.nix4
-rw-r--r--pkgs/by-name/li/libation/package.nix43
-rw-r--r--pkgs/by-name/li/libewf-legacy/package.nix4
-rw-r--r--pkgs/by-name/li/libiconv-darwin/meson.build303
-rw-r--r--pkgs/by-name/li/libiconv-darwin/meson.options1
-rw-r--r--pkgs/by-name/li/libiconv-darwin/nixpkgs_test.c82
-rw-r--r--pkgs/by-name/li/libiconv-darwin/package.nix95
-rw-r--r--pkgs/by-name/li/libmamba/package.nix4
-rw-r--r--pkgs/by-name/li/libmediainfo/package.nix4
-rw-r--r--pkgs/by-name/li/libmsgraph/package.nix73
-rw-r--r--pkgs/by-name/li/libsbml/package.nix58
-rw-r--r--pkgs/by-name/li/libui-ng/package.nix10
-rw-r--r--pkgs/by-name/li/lightningcss/package.nix3
-rw-r--r--pkgs/by-name/li/limine/package.nix4
-rw-r--r--pkgs/by-name/li/litmusctl/package.nix43
-rw-r--r--pkgs/by-name/li/live555/package.nix4
-rw-r--r--pkgs/by-name/li/livi/package.nix4
-rw-r--r--pkgs/by-name/ll/llama-cpp/package.nix4
-rw-r--r--pkgs/by-name/lm/lms/package.nix86
-rw-r--r--pkgs/by-name/lm/lmstudio/darwin.nix28
-rw-r--r--pkgs/by-name/lm/lmstudio/linux.nix29
-rw-r--r--pkgs/by-name/lm/lmstudio/package.nix38
-rw-r--r--pkgs/by-name/lo/local-ai/module.nix26
-rw-r--r--pkgs/by-name/lo/local-ai/package.nix33
-rw-r--r--pkgs/by-name/lo/local-ai/tests.nix30
-rw-r--r--pkgs/by-name/lo/lorem/package.nix24
-rw-r--r--pkgs/by-name/lo/loupe/package.nix10
-rw-r--r--pkgs/by-name/lo/louvain-community/package.nix2
-rw-r--r--pkgs/by-name/lu/lumafly/deps.nix729
-rw-r--r--pkgs/by-name/lu/lumafly/package.nix75
-rw-r--r--pkgs/by-name/lu/lunar-client/package.nix4
-rw-r--r--pkgs/by-name/lu/lutgen/package.nix6
-rw-r--r--pkgs/by-name/lu/lutok/package.nix87
-rw-r--r--pkgs/by-name/lx/lxd-unwrapped-lts/package.nix7
-rw-r--r--pkgs/by-name/lx/lxgw-wenkai-tc/package.nix30
-rw-r--r--pkgs/by-name/ma/maa-assistant-arknights/pin.json8
-rw-r--r--pkgs/by-name/ma/makejinja/package.nix52
-rw-r--r--pkgs/by-name/ma/makima/package.nix6
-rw-r--r--pkgs/by-name/ma/mako/package.nix (renamed from pkgs/applications/misc/mako/default.nix)25
-rw-r--r--pkgs/by-name/ma/marwaita-x/package.nix4
-rw-r--r--pkgs/by-name/ma/materialx/package.nix76
-rw-r--r--pkgs/by-name/ma/matrix-authentication-service/package.nix6
-rw-r--r--pkgs/by-name/ma/matugen/package.nix34
-rw-r--r--pkgs/by-name/ma/mautrix-meta/package.nix6
-rw-r--r--pkgs/by-name/ma/maxfetch/package.nix39
-rw-r--r--pkgs/by-name/mc/mcomix/package.nix4
-rw-r--r--pkgs/by-name/me/mealie/package.nix2
-rw-r--r--pkgs/by-name/me/mediainfo-gui/package.nix4
-rw-r--r--pkgs/by-name/me/mediainfo/package.nix4
-rw-r--r--pkgs/by-name/me/mednaffe/package.nix4
-rw-r--r--pkgs/by-name/me/megapixels/package.nix4
-rw-r--r--pkgs/by-name/me/meli/package.nix6
-rw-r--r--pkgs/by-name/me/melonDS/package.nix6
-rw-r--r--pkgs/by-name/me/menulibre/package.nix4
-rw-r--r--pkgs/by-name/me/mermaid-cli/package.nix6
-rw-r--r--pkgs/by-name/mg/mgba/package.nix4
-rw-r--r--pkgs/by-name/mi/mini-calc/package.nix16
-rw-r--r--pkgs/by-name/mi/miracode/package.nix32
-rw-r--r--pkgs/by-name/mi/misconfig-mapper/package.nix33
-rw-r--r--pkgs/by-name/mo/modprobed-db/package.nix4
-rw-r--r--pkgs/by-name/mo/modrinth-app-unwrapped/Cargo.lock6712
-rw-r--r--pkgs/by-name/mo/modrinth-app-unwrapped/package.nix192
-rw-r--r--pkgs/by-name/mo/modrinth-app/package.nix70
-rw-r--r--pkgs/by-name/mo/mold/package.nix (renamed from pkgs/development/tools/mold/default.nix)4
-rw-r--r--pkgs/by-name/mo/monaspace/package.nix4
-rw-r--r--pkgs/by-name/mo/moneydance/package.nix27
-rw-r--r--pkgs/by-name/mo/mousam/package.nix8
-rw-r--r--pkgs/by-name/mq/mqttx/package.nix2
-rw-r--r--pkgs/by-name/my/mycelium/Cargo.lock35
-rw-r--r--pkgs/by-name/my/mycelium/package.nix4
-rw-r--r--pkgs/by-name/my/mysql84/no-force-outline-atomics.patch24
-rw-r--r--pkgs/by-name/my/mysql84/package.nix78
-rw-r--r--pkgs/by-name/my/mystmd/package.nix6
-rw-r--r--pkgs/by-name/my/myxer/package.nix4
-rw-r--r--pkgs/by-name/na/namespace-cli/package.nix4
-rw-r--r--pkgs/by-name/na/navidrome/package.nix (renamed from pkgs/servers/misc/navidrome/default.nix)1
-rw-r--r--pkgs/by-name/ne/nekoray/package.nix6
-rw-r--r--pkgs/by-name/ne/neothesia/Cargo.lock (renamed from pkgs/applications/audio/waylyrics/Cargo.lock)4674
-rw-r--r--pkgs/by-name/ne/neothesia/package.nix70
-rw-r--r--pkgs/by-name/ne/neovide/package.nix (renamed from pkgs/applications/editors/neovim/neovide/default.nix)0
-rw-r--r--pkgs/by-name/ne/neovide/skia-externals.json (renamed from pkgs/applications/editors/neovim/neovide/skia-externals.json)0
-rw-r--r--pkgs/by-name/ne/neovim-unwrapped/package.nix (renamed from pkgs/applications/editors/neovim/default.nix)18
-rw-r--r--pkgs/by-name/ne/neovim-unwrapped/system_rplugin_manifest.patch (renamed from pkgs/applications/editors/neovim/system_rplugin_manifest.patch)0
-rw-r--r--pkgs/by-name/ne/neovim-unwrapped/treesitter-parsers.nix36
-rwxr-xr-xpkgs/by-name/ne/neovim-unwrapped/update-treesitter-parsers.py (renamed from pkgs/applications/editors/neovim/update-treesitter-parsers.py)8
-rw-r--r--pkgs/by-name/ne/nestopia-ue/package.nix4
-rw-r--r--pkgs/by-name/ne/netclient/package.nix6
-rw-r--r--pkgs/by-name/ne/netscanner/package.nix6
-rw-r--r--pkgs/by-name/ne/nezha-agent/package.nix6
-rw-r--r--pkgs/by-name/nf/nf-test/package.nix58
-rw-r--r--pkgs/by-name/nh/nh/package.nix6
-rw-r--r--pkgs/by-name/ni/nim_lk/package.nix35
-rw-r--r--pkgs/by-name/ni/nitter/package.nix2
-rw-r--r--pkgs/by-name/ni/nix-search-cli/package.nix8
-rw-r--r--pkgs/by-name/ni/nixos-anywhere/package.nix1
-rw-r--r--pkgs/by-name/no/nodeinfo/package.nix33
-rw-r--r--pkgs/by-name/no/normcap/package.nix4
-rw-r--r--pkgs/by-name/no/nosql-workbench/package.nix4
-rw-r--r--pkgs/by-name/no/novops/package.nix6
-rw-r--r--pkgs/by-name/nr/nrfconnect/package.nix9
-rw-r--r--pkgs/by-name/nr/nrr/package.nix6
-rw-r--r--pkgs/by-name/nu/nuclei-templates/package.nix4
-rw-r--r--pkgs/by-name/nw/nwg-drawer/package.nix4
-rw-r--r--pkgs/by-name/nw/nwg-hello/package.nix4
-rw-r--r--pkgs/by-name/of/offat/package.nix4
-rw-r--r--pkgs/by-name/oh/oh-my-posh/package.nix (renamed from pkgs/development/tools/oh-my-posh/default.nix)6
-rw-r--r--pkgs/by-name/ol/olvid/package.nix4
-rw-r--r--pkgs/by-name/om/omnictl/package.nix6
-rw-r--r--pkgs/by-name/on/onagre/package.nix58
-rw-r--r--pkgs/by-name/on/onedriver/package.nix7
-rw-r--r--pkgs/by-name/on/onevpl-intel-gpu/package.nix4
-rw-r--r--pkgs/by-name/on/onlyoffice-bin/package.nix4
-rw-r--r--pkgs/by-name/on/onlyoffice-bin_latest/package.nix4
-rw-r--r--pkgs/by-name/op/openasar/package.nix (renamed from pkgs/applications/networking/instant-messengers/discord/openasar.nix)35
-rw-r--r--pkgs/by-name/op/opencomposite/package.nix13
-rw-r--r--pkgs/by-name/op/openfga-cli/package.nix55
-rw-r--r--pkgs/by-name/op/openfga/package.nix58
-rw-r--r--pkgs/by-name/op/openpgl/package.nix6
-rw-r--r--pkgs/by-name/op/openrocket/package.nix2
-rw-r--r--pkgs/by-name/op/openscad-unstable/package.nix4
-rw-r--r--pkgs/by-name/op/openswitcher/package.nix4
-rw-r--r--pkgs/by-name/op/openturns/package.nix99
-rw-r--r--pkgs/by-name/op/openvas-scanner/package.nix4
-rw-r--r--pkgs/by-name/op/openvr/package.nix (renamed from pkgs/development/libraries/openvr/default.nix)7
-rw-r--r--pkgs/by-name/op/openvswitch/generic.nix1
-rw-r--r--pkgs/by-name/or/orca/fix-paths.patch75
-rw-r--r--pkgs/by-name/or/orca/package.nix (renamed from pkgs/applications/misc/orca/default.nix)37
-rw-r--r--pkgs/by-name/ot/oterm/package.nix46
-rw-r--r--pkgs/by-name/pa/pablodraw/package.nix4
-rw-r--r--pkgs/by-name/pa/pahole/package.nix (renamed from pkgs/development/tools/misc/pahole/default.nix)0
-rw-r--r--pkgs/by-name/pa/pahole/threading-reproducibility.patch (renamed from pkgs/development/tools/misc/pahole/threading-reproducibility.patch)0
-rw-r--r--pkgs/by-name/pa/paper-clip/package.nix4
-rw-r--r--pkgs/by-name/pa/paper-plane/package.nix4
-rw-r--r--pkgs/by-name/pa/paperless-asn-qr-codes/package.nix42
-rw-r--r--pkgs/by-name/pa/papers/Cargo.lock1251
-rw-r--r--pkgs/by-name/pa/papers/package.nix133
-rw-r--r--pkgs/by-name/pa/paratest/package.nix2
-rw-r--r--pkgs/by-name/pa/parinfer-rust-emacs/package.nix27
-rw-r--r--pkgs/by-name/pa/passt/package.nix4
-rw-r--r--pkgs/by-name/pa/patch2pr/package.nix6
-rw-r--r--pkgs/by-name/pa/payme/package.nix6
-rw-r--r--pkgs/by-name/pe/persepolis/0003-Search-PATH-for-aria2c-on-darwin.patch (renamed from pkgs/tools/networking/persepolis/0003-Search-PATH-for-aria2c-on-darwin.patch)2
-rw-r--r--pkgs/by-name/pe/persepolis/0004-Search-PATH-for-ffmpeg-on-darwin.patch (renamed from pkgs/tools/networking/persepolis/0004-Search-PATH-for-ffmpeg-on-darwin.patch)0
-rw-r--r--pkgs/by-name/pe/persepolis/package.nix84
-rw-r--r--pkgs/by-name/pe/pest/package.nix2
-rw-r--r--pkgs/by-name/ph/phel/package.nix6
-rw-r--r--pkgs/by-name/ph/photocollage/package.nix4
-rw-r--r--pkgs/by-name/ph/phpactor/package.nix2
-rw-r--r--pkgs/by-name/ph/phpdocumentor/package.nix3
-rw-r--r--pkgs/by-name/ph/phpunit/package.nix9
-rw-r--r--pkgs/by-name/pl/plasticity/package.nix4
-rw-r--r--pkgs/by-name/pl/platformsh/package.nix85
-rw-r--r--pkgs/by-name/pl/plymouth-matrix-theme/package.nix48
-rw-r--r--pkgs/by-name/pn/pnpm-shell-completion/package.nix6
-rw-r--r--pkgs/by-name/po/poethepoet/package.nix4
-rw-r--r--pkgs/by-name/po/popcorntime/package.nix11
-rw-r--r--pkgs/by-name/po/portablemc/package.nix97
-rw-r--r--pkgs/by-name/po/portablemc/use-builtin-java.patch47
-rw-r--r--pkgs/by-name/po/pot/package.nix4
-rw-r--r--pkgs/by-name/po/powerpipe/package.nix71
-rw-r--r--pkgs/by-name/po/powersupply/package.nix4
-rw-r--r--pkgs/by-name/pp/ppsspp/package.nix130
-rw-r--r--pkgs/by-name/pr/pragtical/package.nix86
-rw-r--r--pkgs/by-name/pr/pretalx/package.nix17
-rw-r--r--pkgs/by-name/pr/pretalx/plugins/downstream.nix30
-rw-r--r--pkgs/by-name/pr/pretalx/plugins/media-ccc-de.nix30
-rw-r--r--pkgs/by-name/pr/pretalx/plugins/pages.nix30
-rw-r--r--pkgs/by-name/pr/pretalx/plugins/public-voting.nix30
-rw-r--r--pkgs/by-name/pr/pretalx/plugins/venueless.nix40
-rw-r--r--pkgs/by-name/pr/pretalx/plugins/vimeo.nix30
-rw-r--r--pkgs/by-name/pr/pretalx/plugins/youtube.nix30
-rw-r--r--pkgs/by-name/pr/pretix/package.nix17
-rw-r--r--pkgs/by-name/pr/primesieve/package.nix4
-rw-r--r--pkgs/by-name/pr/private-gpt/package.nix17
-rw-r--r--pkgs/by-name/pr/promptfoo/package.nix6
-rw-r--r--pkgs/by-name/pr/proto/package.nix6
-rw-r--r--pkgs/by-name/pr/protoc-gen-rust/package.nix (renamed from pkgs/development/tools/protoc-gen-rust/default.nix)0
-rw-r--r--pkgs/by-name/pr/proton-ge-bin/package.nix4
-rw-r--r--pkgs/by-name/pr/protonmail-desktop/package.nix4
-rw-r--r--pkgs/by-name/pr/protonplus/package.nix65
-rw-r--r--pkgs/by-name/pr/prowler/package.nix2
-rw-r--r--pkgs/by-name/ps/ps_mem/package.nix (renamed from pkgs/tools/system/ps_mem/default.nix)18
-rw-r--r--pkgs/by-name/pt/ptyxis/package.nix66
-rw-r--r--pkgs/by-name/pu/pupdate/package.nix4
-rw-r--r--pkgs/by-name/pw/pw3270/package.nix4
-rw-r--r--pkgs/by-name/py/pyprland/package.nix20
-rw-r--r--pkgs/by-name/py/pyright/package.nix8
-rw-r--r--pkgs/by-name/qu/quark-goldleaf/package.nix4
-rw-r--r--pkgs/by-name/qu/quarkus/package.nix4
-rw-r--r--pkgs/by-name/qu/quickemu/package.nix (renamed from pkgs/development/quickemu/default.nix)51
-rw-r--r--pkgs/by-name/ra/radicale/package.nix (renamed from pkgs/servers/radicale/3.x.nix)5
-rw-r--r--pkgs/by-name/ra/radicle-node/package.nix63
-rw-r--r--pkgs/by-name/ra/ratslap/package.nix20
-rw-r--r--pkgs/by-name/rc/rclip/package.nix6
-rw-r--r--pkgs/by-name/rc/rcu/package.nix4
-rw-r--r--pkgs/by-name/re/redka/package.nix30
-rw-r--r--pkgs/by-name/re/refinery-cli/package.nix (renamed from pkgs/development/tools/refinery-cli/default.nix)0
-rw-r--r--pkgs/by-name/re/regal/package.nix4
-rw-r--r--pkgs/by-name/re/regina/package.nix4
-rw-r--r--pkgs/by-name/re/renode-dts2repl/package.nix6
-rw-r--r--pkgs/by-name/re/renode-unstable/package.nix4
-rw-r--r--pkgs/by-name/re/renpy/package.nix (renamed from pkgs/development/interpreters/renpy/default.nix)101
-rw-r--r--pkgs/by-name/re/renpy/shutup-erofs-errors.patch (renamed from pkgs/development/interpreters/renpy/shutup-erofs-errors.patch)0
-rw-r--r--pkgs/by-name/re/retool/package.nix4
-rw-r--r--pkgs/by-name/re/retrospy/deps.nix154
-rw-r--r--pkgs/by-name/re/retrospy/package.nix89
-rwxr-xr-xpkgs/by-name/re/retrospy/update.sh17
-rw-r--r--pkgs/by-name/rh/rHttp/package.nix27
-rw-r--r--pkgs/by-name/ri/ride/mk.patch34
-rw-r--r--pkgs/by-name/ri/ride/package.nix152
-rw-r--r--pkgs/by-name/ri/ripunzip/package.nix6
-rw-r--r--pkgs/by-name/ri/river-bnf/package.nix2
-rw-r--r--pkgs/by-name/rm/rmenu/package.nix4
-rw-r--r--pkgs/by-name/rm/rmfakecloud/package.nix (renamed from pkgs/servers/rmfakecloud/default.nix)0
-rw-r--r--pkgs/by-name/rm/rmfakecloud/webui.nix (renamed from pkgs/servers/rmfakecloud/webui.nix)0
-rw-r--r--pkgs/by-name/rm/rmg/package.nix7
-rw-r--r--pkgs/by-name/ro/rofimoji/package.nix6
-rw-r--r--pkgs/by-name/ro/rosa/package.nix16
-rw-r--r--pkgs/by-name/ro/roxterm/package.nix4
-rw-r--r--pkgs/by-name/rp/rpcs3/package.nix8
-rw-r--r--pkgs/by-name/rw/rwpspread/package.nix6
-rw-r--r--pkgs/by-name/ry/ryujinx/deps.nix2
-rw-r--r--pkgs/by-name/ry/ryujinx/package.nix6
-rw-r--r--pkgs/by-name/s0/s0ix-selftest-tool/package.nix (renamed from pkgs/tools/system/s0ix-selftest-tool/default.nix)63
-rw-r--r--pkgs/by-name/sa/sabnzbd/package.nix4
-rw-r--r--pkgs/by-name/sa/samrewritten/package.nix2
-rw-r--r--pkgs/by-name/sa/sarasa-gothic/package.nix4
-rw-r--r--pkgs/by-name/sa/sarif-tools/package.nix4
-rw-r--r--pkgs/by-name/sa/satellite/package.nix4
-rw-r--r--pkgs/by-name/sb/sbom-utility/package.nix6
-rw-r--r--pkgs/by-name/sc/scc/package.nix (renamed from pkgs/development/tools/misc/scc/default.nix)22
-rw-r--r--pkgs/by-name/sc/scion/package.nix32
-rw-r--r--pkgs/by-name/sc/screenly-cli/package.nix6
-rw-r--r--pkgs/by-name/sd/SDL2_mixer/package.nix82
-rw-r--r--pkgs/by-name/sd/SDL2_mixer_2_0/SDL_mixer-2.0-incompatible-pointer-comparison-fix.patch (renamed from pkgs/development/libraries/SDL2_mixer/SDL_mixer-2.0-incompatible-pointer-comparison-fix.patch)0
-rw-r--r--pkgs/by-name/sd/SDL2_mixer_2_0/package.nix40
-rw-r--r--pkgs/by-name/se/seabird/package.nix6
-rw-r--r--pkgs/by-name/se/sendme/package.nix6
-rw-r--r--pkgs/by-name/se/sesh/package.nix4
-rw-r--r--pkgs/by-name/sh/shellcheck-sarif/package.nix37
-rw-r--r--pkgs/by-name/sh/shopware-cli/package.nix6
-rw-r--r--pkgs/by-name/sh/showmethekey/package.nix (renamed from pkgs/applications/video/showmethekey/default.nix)4
-rw-r--r--pkgs/by-name/si/simde/package.nix4
-rw-r--r--pkgs/by-name/si/simdutf/package.nix4
-rw-r--r--pkgs/by-name/si/simplex-chat-desktop/package.nix8
-rw-r--r--pkgs/by-name/si/sirius/package.nix6
-rw-r--r--pkgs/by-name/si/sispmctl/package.nix4
-rw-r--r--pkgs/by-name/si/siyuan/package-lock.json7762
-rw-r--r--pkgs/by-name/si/siyuan/package.nix100
-rw-r--r--pkgs/by-name/si/siyuan/set-pandoc-path.patch13
-rw-r--r--pkgs/by-name/sk/sketchybar-app-font/package.nix8
-rw-r--r--pkgs/by-name/sl/slumber/package.nix30
-rw-r--r--pkgs/by-name/sm/smartgithg/package.nix8
-rw-r--r--pkgs/by-name/sn/snapcraft/package.nix4
-rw-r--r--pkgs/by-name/sn/snes9x/package.nix4
-rw-r--r--pkgs/by-name/sn/snipe-it/package.nix6
-rw-r--r--pkgs/by-name/sn/snippetexpandergui/package.nix4
-rw-r--r--pkgs/by-name/sn/snippetexpanderx/package.nix4
-rw-r--r--pkgs/by-name/sp/spacedrive/package.nix11
-rw-r--r--pkgs/by-name/sp/spade/Cargo.lock32
-rw-r--r--pkgs/by-name/sp/spade/package.nix19
-rw-r--r--pkgs/by-name/sp/spectral-language-server/package.json159
-rw-r--r--pkgs/by-name/sp/spectral-language-server/package.nix109
-rw-r--r--pkgs/by-name/sp/spfft/package.nix3
-rw-r--r--pkgs/by-name/sp/spicetify-cli/package.nix4
-rw-r--r--pkgs/by-name/sp/spla/package.nix12
-rw-r--r--pkgs/by-name/sp/spotube/package.nix4
-rw-r--r--pkgs/by-name/sq/squirreldisk/package.nix4
-rw-r--r--pkgs/by-name/ss/sse2neon/package.nix41
-rw-r--r--pkgs/by-name/st/stackit-cli/package.nix6
-rw-r--r--pkgs/by-name/st/stats/package.nix4
-rw-r--r--pkgs/by-name/st/stereotool/package.nix26
-rw-r--r--pkgs/by-name/st/strictdoc/package.nix4
-rw-r--r--pkgs/by-name/su/superfile/package.nix32
-rw-r--r--pkgs/by-name/su/surrealdb/package.nix6
-rw-r--r--pkgs/by-name/sw/sway-easyfocus/package.nix4
-rw-r--r--pkgs/by-name/sw/sway/package.nix4
-rw-r--r--pkgs/by-name/sw/swayosd/package.nix4
-rw-r--r--pkgs/by-name/sw/switch-to-configuration-ng/.gitignore1
-rw-r--r--pkgs/by-name/sw/switch-to-configuration-ng/Cargo.lock527
-rw-r--r--pkgs/by-name/sw/switch-to-configuration-ng/Cargo.toml19
-rw-r--r--pkgs/by-name/sw/switch-to-configuration-ng/build.rs30
-rw-r--r--pkgs/by-name/sw/switch-to-configuration-ng/package.nix36
-rw-r--r--pkgs/by-name/sw/switch-to-configuration-ng/src/main.rs2077
-rw-r--r--pkgs/by-name/sw/switcheroo/package.nix8
-rw-r--r--pkgs/by-name/sw/swww/Cargo.lock138
-rw-r--r--pkgs/by-name/sw/swww/package.nix32
-rw-r--r--pkgs/by-name/sy/syft/package.nix6
-rw-r--r--pkgs/by-name/sy/symfony-cli/package.nix15
-rw-r--r--pkgs/by-name/sy/symphony/package.nix37
-rw-r--r--pkgs/by-name/sy/sync/package.nix63
-rw-r--r--pkgs/by-name/sy/systemctl-tui/package.nix6
-rw-r--r--pkgs/by-name/ta/tabby/Cargo.lock2779
-rw-r--r--pkgs/by-name/ta/tabby/package.nix11
-rw-r--r--pkgs/by-name/ta/tailscale-nginx-auth/package.nix6
-rw-r--r--pkgs/by-name/ta/tartan/package.nix (renamed from pkgs/development/tools/analysis/tartan/default.nix)31
-rw-r--r--pkgs/by-name/ta/taskwarrior3/package.nix20
-rw-r--r--pkgs/by-name/te/tecoc/package.nix2
-rw-r--r--pkgs/by-name/te/templ/package.nix6
-rw-r--r--pkgs/by-name/te/tenki/package.nix6
-rw-r--r--pkgs/by-name/te/tenv/package.nix6
-rw-r--r--pkgs/by-name/te/termsonic/package.nix33
-rw-r--r--pkgs/by-name/te/terragrunt/package.nix6
-rw-r--r--pkgs/by-name/te/textsnatcher/package.nix4
-rw-r--r--pkgs/by-name/th/the-powder-toy/package.nix75
-rw-r--r--pkgs/by-name/th/themix-gui/package.nix6
-rw-r--r--pkgs/by-name/ti/tilix/package.nix4
-rw-r--r--pkgs/by-name/ti/tiny-dfr/package.nix40
-rw-r--r--pkgs/by-name/ti/tinymist/Cargo.lock100
-rw-r--r--pkgs/by-name/ti/tinymist/package.nix6
-rw-r--r--pkgs/by-name/tk/tkdiff/189.patch71
-rw-r--r--pkgs/by-name/tk/tkdiff/194.patch15
-rw-r--r--pkgs/by-name/tk/tkdiff/package.nix15
-rw-r--r--pkgs/by-name/to/tootik/package.nix6
-rw-r--r--pkgs/by-name/to/torrentstream/deps.nix66
-rw-r--r--pkgs/by-name/to/torrentstream/package.nix28
-rw-r--r--pkgs/by-name/tp/tplay/package.nix10
-rw-r--r--pkgs/by-name/tr/tracexec/package.nix37
-rw-r--r--pkgs/by-name/tr/tracker-miners/package.nix (renamed from pkgs/development/libraries/tracker-miners/default.nix)20
-rw-r--r--pkgs/by-name/tr/treedome/package.nix4
-rw-r--r--pkgs/by-name/tr/treefmt/package.nix (renamed from pkgs/development/tools/treefmt/default.nix)0
-rw-r--r--pkgs/by-name/tr/treefmt2/package.nix33
-rw-r--r--pkgs/by-name/tr/tribler/package.nix (renamed from pkgs/applications/networking/p2p/tribler/default.nix)141
-rw-r--r--pkgs/by-name/tr/troubadix/package.nix4
-rw-r--r--pkgs/by-name/tt/tt/package.nix35
-rw-r--r--pkgs/by-name/tu/tuifimanager/package.nix48
-rw-r--r--pkgs/by-name/tw/twiggy/package.nix (renamed from pkgs/development/tools/twiggy/default.nix)0
-rw-r--r--pkgs/by-name/tw/twitch-dl/package.nix5
-rw-r--r--pkgs/by-name/ty/typos-lsp/package.nix8
-rw-r--r--pkgs/by-name/ty/typst/Cargo.lock52
-rw-r--r--pkgs/by-name/ty/typst/package.nix6
-rw-r--r--pkgs/by-name/ty/typstyle/Cargo.lock2
-rw-r--r--pkgs/by-name/ty/typstyle/package.nix14
-rw-r--r--pkgs/by-name/uc/ucblogo/package.nix4
-rw-r--r--pkgs/by-name/uc/uclibc-ng/package.nix4
-rw-r--r--pkgs/by-name/ue/ueberzugpp/package.nix4
-rw-r--r--pkgs/by-name/uh/uhttpmock_1_0/package.nix56
-rw-r--r--pkgs/by-name/un/unciv/package.nix4
-rw-r--r--pkgs/by-name/un/unipicker/package.nix47
-rw-r--r--pkgs/by-name/un/unison/package.nix8
-rw-r--r--pkgs/by-name/un/unrar/package.nix4
-rw-r--r--pkgs/by-name/up/upbound/package.nix (renamed from pkgs/development/tools/upbound/default.nix)6
-rw-r--r--pkgs/by-name/up/updatecli/package.nix6
-rw-r--r--pkgs/by-name/up/ups/package.nix24
-rw-r--r--pkgs/by-name/up/upsun/package.nix63
-rw-r--r--pkgs/by-name/us/usql/package.nix6
-rw-r--r--pkgs/by-name/us/ustr/package.nix52
-rw-r--r--pkgs/by-name/us/ustr/va_args.patch (renamed from pkgs/development/libraries/ustr/va_args.patch)0
-rwxr-xr-xpkgs/by-name/uu/uuu/package.nix4
-rw-r--r--pkgs/by-name/uv/uv/Cargo.lock547
-rw-r--r--pkgs/by-name/uv/uv/package.nix6
-rw-r--r--pkgs/by-name/ux/uxn/package.nix6
-rw-r--r--pkgs/by-name/ux/uxplay/package.nix (renamed from pkgs/servers/uxplay/default.nix)31
-rw-r--r--pkgs/by-name/va/valuta/package.nix65
-rw-r--r--pkgs/by-name/va/varia/package.nix4
-rw-r--r--pkgs/by-name/va/vaults/package.nix4
-rw-r--r--pkgs/by-name/vc/vcpkg/package.nix4
-rw-r--r--pkgs/by-name/ve/vencord/package-lock.json85
-rw-r--r--pkgs/by-name/ve/vencord/package.nix10
-rw-r--r--pkgs/by-name/ve/vesktop/package.nix178
-rw-r--r--pkgs/by-name/vi/vieb/package.nix7
-rw-r--r--pkgs/by-name/vl/vlc/package.nix4
-rw-r--r--pkgs/by-name/vu/vunnel/package.nix4
-rw-r--r--pkgs/by-name/wa/wakatime/package.nix (renamed from pkgs/tools/misc/wakatime/default.nix)28
-rw-r--r--pkgs/by-name/wa/wapm/package.nix (renamed from pkgs/tools/package-management/wapm/cli/default.nix)5
-rw-r--r--pkgs/by-name/wa/warp-terminal/package.nix2
-rw-r--r--pkgs/by-name/wa/warp-terminal/versions.json8
-rw-r--r--pkgs/by-name/wa/waybar/package.nix252
-rw-r--r--pkgs/by-name/wa/waycheck/package.nix4
-rw-r--r--pkgs/by-name/wb/wbg/package.nix (renamed from pkgs/applications/misc/wbg/default.nix)4
-rw-r--r--pkgs/by-name/we/weasis/package.nix4
-rw-r--r--pkgs/by-name/we/webcord-vencord/add-extension.patch (renamed from pkgs/applications/networking/instant-messengers/webcord/webcord-vencord/add-extension.patch)0
-rw-r--r--pkgs/by-name/we/webcord-vencord/package.nix (renamed from pkgs/applications/networking/instant-messengers/webcord/webcord-vencord/default.nix)19
-rw-r--r--pkgs/by-name/we/webcord/package.nix (renamed from pkgs/applications/networking/instant-messengers/webcord/default.nix)66
-rwxr-xr-xpkgs/by-name/we/webcord/update.sh15
-rw-r--r--pkgs/by-name/wh/whatsapp-emoji-font/package.nix4
-rw-r--r--pkgs/by-name/wi/windows10-icons/package.nix36
-rw-r--r--pkgs/by-name/wi/wio/package.nix6
-rw-r--r--pkgs/by-name/wi/wireguard-vanity-keygen/package.nix6
-rw-r--r--pkgs/by-name/wi/wizer/package.nix (renamed from pkgs/development/tools/wizer/default.nix)0
-rw-r--r--pkgs/by-name/wl/wl-clip-persist/package.nix6
-rw-r--r--pkgs/by-name/wl/wlr-layout-ui/package.nix6
-rw-r--r--pkgs/by-name/wo/workout-tracker/package.nix4
-rw-r--r--pkgs/by-name/wo/workshop-runner/package.nix31
-rw-r--r--pkgs/by-name/wo/wowup-cf/package.nix38
-rw-r--r--pkgs/by-name/wp/wpaperd/package.nix (renamed from pkgs/tools/wayland/wpaperd/default.nix)26
-rw-r--r--pkgs/by-name/wt/wtfis/package.nix4
-rw-r--r--pkgs/by-name/wt/wttrbar/package.nix6
-rw-r--r--pkgs/by-name/xa/xarcan/package.nix12
-rw-r--r--pkgs/by-name/xc/xcaddy/inject_version_info.diff (renamed from pkgs/servers/caddy/xcaddy/inject_version_info.diff)0
-rw-r--r--pkgs/by-name/xc/xcaddy/package.nix (renamed from pkgs/servers/caddy/xcaddy/default.nix)4
-rw-r--r--pkgs/by-name/xc/xcaddy/use_tmpdir_on_darwin.diff (renamed from pkgs/servers/caddy/xcaddy/use_tmpdir_on_darwin.diff)0
-rw-r--r--pkgs/by-name/xc/xclicker/package.nix4
-rw-r--r--pkgs/by-name/xd/xdg-terminal-exec-mkhl/package.nix27
-rw-r--r--pkgs/by-name/xe/xemu/package.nix161
-rw-r--r--pkgs/by-name/xm/xml-tooling-c/package.nix (renamed from pkgs/development/libraries/xml-tooling-c/default.nix)37
-rw-r--r--pkgs/by-name/xn/xnlinkfinder/package.nix55
-rw-r--r--pkgs/by-name/xp/xplr/package.nix6
-rw-r--r--pkgs/by-name/yd/ydotool/package.nix (renamed from pkgs/tools/wayland/ydotool/default.nix)38
-rw-r--r--pkgs/by-name/ye/yesplaymusic/package.nix4
-rw-r--r--pkgs/by-name/yo/yofi/package.nix50
-rw-r--r--pkgs/by-name/yo/your_spotify/client.nix58
-rw-r--r--pkgs/by-name/yo/your_spotify/package.json10
-rw-r--r--pkgs/by-name/yo/your_spotify/package.nix85
-rw-r--r--pkgs/by-name/yo/youtrack/package.nix4
-rw-r--r--pkgs/by-name/yt/ytermusic/Cargo.lock (renamed from pkgs/applications/misc/onagre/Cargo.lock)4745
-rw-r--r--pkgs/by-name/yt/ytermusic/package.nix54
-rw-r--r--pkgs/by-name/ze/zed-editor/Cargo.lock318
-rw-r--r--pkgs/by-name/ze/zed-editor/package.nix52
-rw-r--r--pkgs/by-name/zp/zpaqfranz/package.nix4
-rw-r--r--pkgs/by-name/zx/zxtune/package.nix4
-rw-r--r--pkgs/common-updater/unstable-updater.nix4
-rw-r--r--pkgs/data/documentation/gnome-user-docs/default.nix4
-rw-r--r--pkgs/data/documentation/man-pages/default.nix8
-rw-r--r--pkgs/data/documentation/scheme-manpages/default.nix2
-rw-r--r--pkgs/data/fonts/0xproto/default.nix4
-rw-r--r--pkgs/data/fonts/apl386/default.nix2
-rw-r--r--pkgs/data/fonts/cozette/default.nix4
-rw-r--r--pkgs/data/fonts/iosevka/bin.nix2
-rw-r--r--pkgs/data/fonts/iosevka/default.nix6
-rw-r--r--pkgs/data/fonts/iosevka/variants.nix180
-rw-r--r--pkgs/data/fonts/julia-mono/default.nix4
-rw-r--r--pkgs/data/fonts/kanji-stroke-order-font/default.nix34
-rw-r--r--pkgs/data/fonts/lxgw-wenkai/default.nix4
-rw-r--r--pkgs/data/fonts/undefined-medium/default.nix6
-rw-r--r--pkgs/data/icons/kora-icon-theme/default.nix4
-rw-r--r--pkgs/data/icons/nordzy-icon-theme/default.nix4
-rw-r--r--pkgs/data/icons/papirus-icon-theme/default.nix4
-rw-r--r--pkgs/data/icons/whitesur-cursors/default.nix11
-rw-r--r--pkgs/data/misc/clash-geoip/default.nix4
-rw-r--r--pkgs/data/misc/dbip-country-lite/default.nix4
-rw-r--r--pkgs/data/misc/hackage/pin.json8
-rw-r--r--pkgs/data/misc/unicode-emoji/default.nix8
-rw-r--r--pkgs/data/misc/wireless-regdb/default.nix4
-rw-r--r--pkgs/data/themes/alacritty-theme/default.nix6
-rw-r--r--pkgs/data/themes/catppuccin-gtk/default.nix4
-rw-r--r--pkgs/data/themes/colloid-gtk-theme/default.nix4
-rw-r--r--pkgs/data/themes/dracula-theme/default.nix10
-rw-r--r--pkgs/data/themes/flat-remix-gnome/default.nix8
-rw-r--r--pkgs/data/themes/graphite-gtk-theme/default.nix4
-rw-r--r--pkgs/data/themes/kwin-decorations/kde-rounded-corners/default.nix4
-rw-r--r--pkgs/data/themes/material-kwin-decoration/default.nix6
-rw-r--r--pkgs/data/themes/nixos-bgrt-plymouth/default.nix2
-rw-r--r--pkgs/data/themes/orchis-theme/default.nix4
-rw-r--r--pkgs/data/themes/yaru/default.nix4
-rw-r--r--pkgs/desktops/budgie/budgie-control-center/default.nix4
-rw-r--r--pkgs/desktops/budgie/budgie-desktop-view/default.nix4
-rw-r--r--pkgs/desktops/budgie/budgie-desktop/default.nix4
-rw-r--r--pkgs/desktops/budgie/budgie-desktop/wrapper.nix4
-rw-r--r--pkgs/desktops/budgie/budgie-gsettings-overrides/default.nix3
-rw-r--r--pkgs/desktops/budgie/budgie-screensaver/default.nix4
-rw-r--r--pkgs/desktops/budgie/magpie/default.nix4
-rw-r--r--pkgs/desktops/cinnamon/bulky/default.nix4
-rw-r--r--pkgs/desktops/cinnamon/cinnamon-common/default.nix35
-rw-r--r--pkgs/desktops/cinnamon/cinnamon-control-center/default.nix8
-rw-r--r--pkgs/desktops/cinnamon/cinnamon-desktop/default.nix4
-rw-r--r--pkgs/desktops/cinnamon/cinnamon-menus/default.nix4
-rw-r--r--pkgs/desktops/cinnamon/cinnamon-screensaver/default.nix4
-rw-r--r--pkgs/desktops/cinnamon/cinnamon-session/default.nix4
-rw-r--r--pkgs/desktops/cinnamon/cinnamon-settings-daemon/default.nix4
-rw-r--r--pkgs/desktops/cinnamon/mint-artwork/default.nix6
-rw-r--r--pkgs/desktops/cinnamon/muffin/default.nix4
-rw-r--r--pkgs/desktops/cinnamon/nemo/default.nix4
-rw-r--r--pkgs/desktops/cinnamon/pix/default.nix4
-rw-r--r--pkgs/desktops/cinnamon/warpinator/default.nix4
-rw-r--r--pkgs/desktops/cinnamon/xapp/default.nix4
-rw-r--r--pkgs/desktops/cinnamon/xreader/default.nix4
-rw-r--r--pkgs/desktops/cinnamon/xviewer/default.nix4
-rw-r--r--pkgs/desktops/deepin/core/dde-control-center/default.nix4
-rw-r--r--pkgs/desktops/deepin/core/dde-dock/default.nix4
-rw-r--r--pkgs/desktops/deepin/core/dde-file-manager/default.nix4
-rw-r--r--pkgs/desktops/deepin/core/dde-session-shell/default.nix4
-rw-r--r--pkgs/desktops/deepin/default.nix5
-rw-r--r--pkgs/desktops/deepin/go-package/dde-api/default.nix4
-rw-r--r--pkgs/desktops/deepin/go-package/dde-daemon/default.nix4
-rw-r--r--pkgs/desktops/deepin/go-package/startdde/default.nix4
-rw-r--r--pkgs/desktops/deepin/library/dtk6core/default.nix84
-rw-r--r--pkgs/desktops/deepin/library/dtk6core/fix-pkgconfig-path.patch14
-rw-r--r--pkgs/desktops/deepin/library/dtk6core/fix-pri-path.patch17
-rw-r--r--pkgs/desktops/deepin/library/dtk6declarative/default.nix70
-rw-r--r--pkgs/desktops/deepin/library/dtk6declarative/fix-pkgconfig-path.patch14
-rw-r--r--pkgs/desktops/deepin/library/dtk6declarative/fix-pri-path.patch15
-rw-r--r--pkgs/desktops/deepin/library/dtk6gui/default.nix74
-rw-r--r--pkgs/desktops/deepin/library/dtk6gui/fix-pkgconfig-path.patch16
-rw-r--r--pkgs/desktops/deepin/library/dtk6gui/fix-pri-path.patch17
-rw-r--r--pkgs/desktops/deepin/library/dtk6systemsettings/default.nix63
-rw-r--r--pkgs/desktops/deepin/library/dtk6widget/default.nix83
-rw-r--r--pkgs/desktops/deepin/library/dtk6widget/fix-build-on-qt-6_7.patch20
-rw-r--r--pkgs/desktops/deepin/library/dtk6widget/fix-pkgconfig-path.patch14
-rw-r--r--pkgs/desktops/deepin/library/dtk6widget/fix-pri-path.patch17
-rw-r--r--pkgs/desktops/enlightenment/rage/default.nix4
-rw-r--r--pkgs/desktops/gnome/apps/accerciser/default.nix4
-rw-r--r--pkgs/desktops/gnome/apps/cheese/default.nix4
-rw-r--r--pkgs/desktops/gnome/apps/file-roller/default.nix18
-rw-r--r--pkgs/desktops/gnome/apps/ghex/default.nix4
-rw-r--r--pkgs/desktops/gnome/apps/gnome-boxes/default.nix12
-rw-r--r--pkgs/desktops/gnome/apps/gnome-calendar/default.nix4
-rw-r--r--pkgs/desktops/gnome/apps/gnome-characters/default.nix4
-rw-r--r--pkgs/desktops/gnome/apps/gnome-clocks/default.nix4
-rw-r--r--pkgs/desktops/gnome/apps/gnome-connections/default.nix10
-rw-r--r--pkgs/desktops/gnome/apps/gnome-logs/default.nix4
-rw-r--r--pkgs/desktops/gnome/apps/gnome-maps/default.nix20
-rw-r--r--pkgs/desktops/gnome/apps/gnome-music/default.nix4
-rw-r--r--pkgs/desktops/gnome/apps/gnome-nettool/default.nix4
-rw-r--r--pkgs/desktops/gnome/apps/gnome-notes/default.nix4
-rw-r--r--pkgs/desktops/gnome/apps/gnome-power-manager/default.nix4
-rw-r--r--pkgs/desktops/gnome/apps/gnome-text-editor/default.nix6
-rw-r--r--pkgs/desktops/gnome/apps/gnome-weather/default.nix4
-rw-r--r--pkgs/desktops/gnome/apps/polari/default.nix11
-rw-r--r--pkgs/desktops/gnome/apps/seahorse/default.nix4
-rw-r--r--pkgs/desktops/gnome/apps/vinagre/default.nix4
-rw-r--r--pkgs/desktops/gnome/core/adwaita-icon-theme/default.nix4
-rw-r--r--pkgs/desktops/gnome/core/baobab/default.nix4
-rw-r--r--pkgs/desktops/gnome/core/caribou/default.nix4
-rw-r--r--pkgs/desktops/gnome/core/dconf-editor/default.nix4
-rw-r--r--pkgs/desktops/gnome/core/eog/default.nix4
-rw-r--r--pkgs/desktops/gnome/core/epiphany/default.nix4
-rw-r--r--pkgs/desktops/gnome/core/evince/default.nix10
-rw-r--r--pkgs/desktops/gnome/core/evolution-data-server/default.nix12
-rw-r--r--pkgs/desktops/gnome/core/evolution-data-server/hardcode-gsettings.patch38
-rw-r--r--pkgs/desktops/gnome/core/gdm/default.nix8
-rw-r--r--pkgs/desktops/gnome/core/gdm/fix-paths.patch20
-rw-r--r--pkgs/desktops/gnome/core/gnome-backgrounds/default.nix4
-rw-r--r--pkgs/desktops/gnome/core/gnome-bluetooth/1.0/default.nix4
-rw-r--r--pkgs/desktops/gnome/core/gnome-bluetooth/default.nix4
-rw-r--r--pkgs/desktops/gnome/core/gnome-calculator/default.nix6
-rw-r--r--pkgs/desktops/gnome/core/gnome-color-manager/default.nix1
-rw-r--r--pkgs/desktops/gnome/core/gnome-contacts/default.nix6
-rw-r--r--pkgs/desktops/gnome/core/gnome-control-center/default.nix17
-rw-r--r--pkgs/desktops/gnome/core/gnome-control-center/paths.patch49
-rw-r--r--pkgs/desktops/gnome/core/gnome-dictionary/default.nix4
-rw-r--r--pkgs/desktops/gnome/core/gnome-disk-utility/default.nix8
-rw-r--r--pkgs/desktops/gnome/core/gnome-font-viewer/default.nix4
-rw-r--r--pkgs/desktops/gnome/core/gnome-initial-setup/default.nix10
-rw-r--r--pkgs/desktops/gnome/core/gnome-keyring/default.nix11
-rw-r--r--pkgs/desktops/gnome/core/gnome-online-miners/default.nix4
-rw-r--r--pkgs/desktops/gnome/core/gnome-remote-desktop/default.nix25
-rw-r--r--pkgs/desktops/gnome/core/gnome-screenshot/default.nix4
-rw-r--r--pkgs/desktops/gnome/core/gnome-session/ctl.nix4
-rw-r--r--pkgs/desktops/gnome/core/gnome-session/default.nix9
-rw-r--r--pkgs/desktops/gnome/core/gnome-settings-daemon/43/default.nix4
-rw-r--r--pkgs/desktops/gnome/core/gnome-settings-daemon/default.nix8
-rw-r--r--pkgs/desktops/gnome/core/gnome-shell-extensions/default.nix4
-rw-r--r--pkgs/desktops/gnome/core/gnome-shell/default.nix26
-rw-r--r--pkgs/desktops/gnome/core/gnome-shell/fix-paths.patch13
-rw-r--r--pkgs/desktops/gnome/core/gnome-shell/greeter-logo-size.patch8
-rw-r--r--pkgs/desktops/gnome/core/gnome-software/default.nix16
-rw-r--r--pkgs/desktops/gnome/core/gnome-system-monitor/default.nix20
-rw-r--r--pkgs/desktops/gnome/core/gnome-terminal/default.nix15
-rw-r--r--pkgs/desktops/gnome/core/gnome-tour/default.nix4
-rw-r--r--pkgs/desktops/gnome/core/gucharmap/default.nix4
-rw-r--r--pkgs/desktops/gnome/core/mutter/43/default.nix4
-rw-r--r--pkgs/desktops/gnome/core/mutter/default.nix10
-rw-r--r--pkgs/desktops/gnome/core/nautilus/default.nix6
-rw-r--r--pkgs/desktops/gnome/core/nautilus/extension_dir.patch2
-rw-r--r--pkgs/desktops/gnome/core/rygel/default.nix4
-rw-r--r--pkgs/desktops/gnome/core/simple-scan/default.nix16
-rw-r--r--pkgs/desktops/gnome/core/sushi/default.nix8
-rw-r--r--pkgs/desktops/gnome/core/totem/default.nix4
-rw-r--r--pkgs/desktops/gnome/core/yelp/default.nix4
-rw-r--r--pkgs/desktops/gnome/devtools/devhelp/default.nix4
-rw-r--r--pkgs/desktops/gnome/extensions/default.nix2
-rw-r--r--pkgs/desktops/gnome/extensions/extensionOverrides.nix6
-rw-r--r--pkgs/desktops/gnome/extensions/gsconnect/default.nix8
-rw-r--r--pkgs/desktops/gnome/games/aisleriot/default.nix10
-rw-r--r--pkgs/desktops/gnome/games/atomix/default.nix4
-rw-r--r--pkgs/desktops/gnome/games/five-or-more/default.nix4
-rw-r--r--pkgs/desktops/gnome/games/four-in-a-row/default.nix4
-rw-r--r--pkgs/desktops/gnome/games/gnome-2048/default.nix4
-rw-r--r--pkgs/desktops/gnome/games/gnome-chess/default.nix4
-rw-r--r--pkgs/desktops/gnome/games/gnome-klotski/default.nix4
-rw-r--r--pkgs/desktops/gnome/games/gnome-mines/default.nix4
-rw-r--r--pkgs/desktops/gnome/games/gnome-nibbles/default.nix4
-rw-r--r--pkgs/desktops/gnome/games/gnome-robots/default.nix4
-rw-r--r--pkgs/desktops/gnome/games/gnome-sudoku/default.nix4
-rw-r--r--pkgs/desktops/gnome/games/gnome-taquin/default.nix4
-rw-r--r--pkgs/desktops/gnome/games/gnome-tetravex/default.nix4
-rw-r--r--pkgs/desktops/gnome/games/hitori/default.nix4
-rw-r--r--pkgs/desktops/gnome/games/iagno/default.nix4
-rw-r--r--pkgs/desktops/gnome/games/lightsoff/default.nix8
-rw-r--r--pkgs/desktops/gnome/games/quadrapassel/default.nix4
-rw-r--r--pkgs/desktops/gnome/games/swell-foop/default.nix29
-rw-r--r--pkgs/desktops/gnome/games/tali/default.nix4
-rw-r--r--pkgs/desktops/gnome/misc/geary/default.nix4
-rw-r--r--pkgs/desktops/gnome/misc/gitg/default.nix4
-rw-r--r--pkgs/desktops/gnome/misc/gnome-applets/default.nix4
-rw-r--r--pkgs/desktops/gnome/misc/gnome-flashback/default.nix12
-rw-r--r--pkgs/desktops/gnome/misc/gnome-packagekit/default.nix4
-rw-r--r--pkgs/desktops/gnome/misc/gnome-panel/default.nix8
-rw-r--r--pkgs/desktops/gnome/misc/gnome-panel/wrapper.nix4
-rw-r--r--pkgs/desktops/gnome/misc/gnome-tweaks/default.nix21
-rw-r--r--pkgs/desktops/gnome/misc/gpaste/default.nix26
-rw-r--r--pkgs/desktops/gnome/misc/metacity/default.nix8
-rw-r--r--pkgs/desktops/gnome/misc/nautilus-python/default.nix4
-rw-r--r--pkgs/desktops/gnome/misc/pomodoro/default.nix4
-rw-r--r--pkgs/desktops/lomiri/applications/lomiri-system-settings/default.nix2
-rw-r--r--pkgs/desktops/lomiri/applications/lomiri-system-settings/wrapper.nix4
-rw-r--r--pkgs/desktops/lomiri/applications/lomiri/default.nix4
-rw-r--r--pkgs/desktops/lomiri/services/content-hub/default.nix4
-rw-r--r--pkgs/desktops/lomiri/services/lomiri-thumbnailer/default.nix4
-rw-r--r--pkgs/desktops/lumina/lumina/default.nix4
-rw-r--r--pkgs/desktops/lxde/core/lxappearance/default.nix4
-rw-r--r--pkgs/desktops/lxde/core/lxsession/default.nix4
-rw-r--r--pkgs/desktops/lxqt/libfm-qt/default.nix4
-rw-r--r--pkgs/desktops/lxqt/lximage-qt/default.nix4
-rw-r--r--pkgs/desktops/lxqt/lxqt-notificationd/default.nix4
-rw-r--r--pkgs/desktops/lxqt/lxqt-openssh-askpass/default.nix4
-rw-r--r--pkgs/desktops/lxqt/lxqt-panel/default.nix4
-rw-r--r--pkgs/desktops/lxqt/pcmanfm-qt/default.nix2
-rw-r--r--pkgs/desktops/lxqt/xdg-desktop-portal-lxqt/default.nix4
-rw-r--r--pkgs/desktops/mate/atril/default.nix4
-rw-r--r--pkgs/desktops/mate/caja-extensions/default.nix4
-rw-r--r--pkgs/desktops/mate/caja/default.nix4
-rw-r--r--pkgs/desktops/mate/caja/with-extensions.nix4
-rw-r--r--pkgs/desktops/mate/engrampa/default.nix4
-rw-r--r--pkgs/desktops/mate/eom/default.nix4
-rw-r--r--pkgs/desktops/mate/marco/default.nix4
-rw-r--r--pkgs/desktops/mate/mate-applets/default.nix4
-rw-r--r--pkgs/desktops/mate/mate-calc/default.nix4
-rw-r--r--pkgs/desktops/mate/mate-control-center/default.nix4
-rw-r--r--pkgs/desktops/mate/mate-desktop/default.nix4
-rw-r--r--pkgs/desktops/mate/mate-indicator-applet/default.nix4
-rw-r--r--pkgs/desktops/mate/mate-media/default.nix4
-rw-r--r--pkgs/desktops/mate/mate-netbook/default.nix4
-rw-r--r--pkgs/desktops/mate/mate-notification-daemon/default.nix4
-rw-r--r--pkgs/desktops/mate/mate-panel/default.nix6
-rw-r--r--pkgs/desktops/mate/mate-panel/with-applets.nix4
-rw-r--r--pkgs/desktops/mate/mate-power-manager/default.nix4
-rw-r--r--pkgs/desktops/mate/mate-screensaver/default.nix4
-rw-r--r--pkgs/desktops/mate/mate-session-manager/default.nix4
-rw-r--r--pkgs/desktops/mate/mate-settings-daemon/default.nix4
-rw-r--r--pkgs/desktops/mate/mate-settings-daemon/wrapped.nix4
-rw-r--r--pkgs/desktops/mate/mate-system-monitor/default.nix4
-rw-r--r--pkgs/desktops/mate/mate-terminal/default.nix4
-rw-r--r--pkgs/desktops/mate/mate-tweak/default.nix4
-rw-r--r--pkgs/desktops/mate/mate-user-share/default.nix4
-rw-r--r--pkgs/desktops/mate/mate-utils/default.nix4
-rw-r--r--pkgs/desktops/mate/mozo/default.nix4
-rw-r--r--pkgs/desktops/mate/pluma/default.nix4
-rw-r--r--pkgs/desktops/pantheon/apps/appcenter/default.nix4
-rw-r--r--pkgs/desktops/pantheon/apps/elementary-calendar/default.nix4
-rw-r--r--pkgs/desktops/pantheon/apps/elementary-camera/default.nix4
-rw-r--r--pkgs/desktops/pantheon/apps/elementary-code/default.nix4
-rw-r--r--pkgs/desktops/pantheon/apps/elementary-dock/default.nix4
-rw-r--r--pkgs/desktops/pantheon/apps/elementary-files/default.nix4
-rw-r--r--pkgs/desktops/pantheon/apps/elementary-mail/default.nix4
-rw-r--r--pkgs/desktops/pantheon/apps/elementary-photos/default.nix4
-rw-r--r--pkgs/desktops/pantheon/apps/elementary-screenshot/default.nix4
-rw-r--r--pkgs/desktops/pantheon/apps/elementary-tasks/default.nix4
-rw-r--r--pkgs/desktops/pantheon/apps/elementary-terminal/default.nix4
-rw-r--r--pkgs/desktops/pantheon/apps/elementary-videos/default.nix4
-rw-r--r--pkgs/desktops/pantheon/apps/switchboard/default.nix4
-rw-r--r--pkgs/desktops/pantheon/apps/switchboard/wrapper.nix4
-rw-r--r--pkgs/desktops/pantheon/desktop/elementary-greeter/default.nix6
-rw-r--r--pkgs/desktops/pantheon/desktop/file-roller-contract/default.nix2
-rw-r--r--pkgs/desktops/pantheon/desktop/gala/default.nix4
-rw-r--r--pkgs/desktops/pantheon/desktop/wingpanel/default.nix4
-rw-r--r--pkgs/desktops/pantheon/desktop/wingpanel/wrapper.nix4
-rw-r--r--pkgs/desktops/pantheon/granite/7/default.nix4
-rw-r--r--pkgs/desktops/pantheon/granite/default.nix4
-rw-r--r--pkgs/desktops/pantheon/services/contractor/default.nix4
-rw-r--r--pkgs/desktops/pantheon/services/elementary-capnet-assist/default.nix4
-rw-r--r--pkgs/desktops/pantheon/services/elementary-notifications/default.nix10
-rw-r--r--pkgs/desktops/pantheon/services/elementary-settings-daemon/default.nix4
-rw-r--r--pkgs/desktops/pantheon/services/pantheon-agent-geoclue2/default.nix4
-rw-r--r--pkgs/desktops/pantheon/services/pantheon-agent-polkit/default.nix4
-rw-r--r--pkgs/desktops/pantheon/third-party/wingpanel-indicator-ayatana/default.nix2
-rw-r--r--pkgs/desktops/plasma-5/kde-gtk-config/default.nix4
-rw-r--r--pkgs/desktops/rox/rox-filer/default.nix4
-rw-r--r--pkgs/desktops/xfce/applications/catfish/default.nix4
-rw-r--r--pkgs/desktops/xfce/applications/xfce4-panel-profiles/default.nix60
-rw-r--r--pkgs/desktops/xfce/default.nix3
-rw-r--r--pkgs/desktops/xfce/mkXfceDerivation.nix4
-rw-r--r--pkgs/desktops/xfce/panel-plugins/xfce4-dockbarx-plugin/default.nix4
-rw-r--r--pkgs/desktops/xfce/panel-plugins/xfce4-namebar-plugin/default.nix43
-rw-r--r--pkgs/development/beam-modules/elixir-ls/default.nix6
-rw-r--r--pkgs/development/beam-modules/fetch-hex.nix2
-rw-r--r--pkgs/development/chez-modules/chez-mit/default.nix9
-rw-r--r--pkgs/development/compilers/aspectj/default.nix4
-rw-r--r--pkgs/development/compilers/ballerina/default.nix4
-rw-r--r--pkgs/development/compilers/c0/default.nix2
-rw-r--r--pkgs/development/compilers/c3c/default.nix33
-rw-r--r--pkgs/development/compilers/cakelisp/default.nix6
-rw-r--r--pkgs/development/compilers/circt/circt-llvm.nix2
-rw-r--r--pkgs/development/compilers/circt/default.nix7
-rw-r--r--pkgs/development/compilers/dotnet/8/deps.nix16
-rw-r--r--pkgs/development/compilers/dotnet/8/release-info.json6
-rw-r--r--pkgs/development/compilers/dotnet/8/release.json12
-rw-r--r--pkgs/development/compilers/dotnet/build-dotnet.nix28
-rw-r--r--pkgs/development/compilers/dotnet/common.nix33
-rw-r--r--pkgs/development/compilers/dotnet/stage0.nix8
-rw-r--r--pkgs/development/compilers/dotnet/versions/6.0.nix288
-rw-r--r--pkgs/development/compilers/dotnet/versions/7.0.nix320
-rw-r--r--pkgs/development/compilers/dotnet/versions/8.0.nix313
-rw-r--r--pkgs/development/compilers/dtc/default.nix6
-rw-r--r--pkgs/development/compilers/ecl/default.nix4
-rw-r--r--pkgs/development/compilers/erg/default.nix6
-rw-r--r--pkgs/development/compilers/flix/default.nix4
-rw-r--r--pkgs/development/compilers/flutter/wrapper.nix4
-rw-r--r--pkgs/development/compilers/gcc/common/pre-configure.nix25
-rw-r--r--pkgs/development/compilers/ghc/9.0.2.nix395
-rw-r--r--pkgs/development/compilers/ghc/9.10.1.nix4
-rw-r--r--pkgs/development/compilers/ghc/9.2.5.nix391
-rw-r--r--pkgs/development/compilers/ghc/9.2.6.nix391
-rw-r--r--pkgs/development/compilers/ghc/9.2.7.nix391
-rw-r--r--pkgs/development/compilers/ghc/9.2.8.nix391
-rw-r--r--pkgs/development/compilers/ghc/9.4.5.nix396
-rw-r--r--pkgs/development/compilers/ghc/9.4.6.nix392
-rw-r--r--pkgs/development/compilers/ghc/9.4.7.nix388
-rw-r--r--pkgs/development/compilers/ghc/9.4.8.fixme.nix6
-rw-r--r--pkgs/development/compilers/ghc/common-hadrian.nix77
-rw-r--r--pkgs/development/compilers/ghc/common-make-native-bignum.nix (renamed from pkgs/development/compilers/ghc/9.4.8.nix)105
-rw-r--r--pkgs/development/compilers/ghdl/default.nix2
-rw-r--r--pkgs/development/compilers/gnu-cim/default.nix2
-rw-r--r--pkgs/development/compilers/go/1.21.nix4
-rw-r--r--pkgs/development/compilers/idris2/idris2.nix10
-rw-r--r--pkgs/development/compilers/inform6/default.nix4
-rw-r--r--pkgs/development/compilers/julia/default.nix14
-rw-r--r--pkgs/development/compilers/kotlin/default.nix4
-rw-r--r--pkgs/development/compilers/llvm/12/default.nix47
-rw-r--r--pkgs/development/compilers/llvm/12/llvm/default.nix357
-rw-r--r--pkgs/development/compilers/llvm/13/default.nix42
-rw-r--r--pkgs/development/compilers/llvm/13/llvm/default.nix315
-rw-r--r--pkgs/development/compilers/llvm/14/default.nix23
-rw-r--r--pkgs/development/compilers/llvm/14/llvm/default.nix323
-rw-r--r--pkgs/development/compilers/llvm/15/default.nix59
-rw-r--r--pkgs/development/compilers/llvm/15/llvm/default.nix442
-rw-r--r--pkgs/development/compilers/llvm/16/default.nix52
-rw-r--r--pkgs/development/compilers/llvm/16/llvm/default.nix435
-rw-r--r--pkgs/development/compilers/llvm/17/default.nix52
-rw-r--r--pkgs/development/compilers/llvm/17/llvm/default.nix431
-rw-r--r--pkgs/development/compilers/llvm/18/default.nix54
-rw-r--r--pkgs/development/compilers/llvm/common/clang/default.nix6
-rw-r--r--pkgs/development/compilers/llvm/common/llvm/default.nix (renamed from pkgs/development/compilers/llvm/18/llvm/default.nix)335
-rw-r--r--pkgs/development/compilers/llvm/git/default.nix52
-rw-r--r--pkgs/development/compilers/llvm/git/llvm/default.nix435
-rw-r--r--pkgs/development/compilers/nasm/default.nix4
-rw-r--r--pkgs/development/compilers/nim/default.nix8
-rw-r--r--pkgs/development/compilers/ocaml/5.2.nix7
-rw-r--r--pkgs/development/compilers/odin/default.nix16
-rw-r--r--pkgs/development/compilers/open-watcom/v2.nix4
-rw-r--r--pkgs/development/compilers/orc/default.nix2
-rw-r--r--pkgs/development/compilers/osl/default.nix4
-rw-r--r--pkgs/development/compilers/rasm/default.nix2
-rw-r--r--pkgs/development/compilers/rust/1_77.nix4
-rw-r--r--pkgs/development/compilers/sbcl/default.nix9
-rw-r--r--pkgs/development/compilers/sbcl/dynamic-space-size-envvar-feature.patch63
-rw-r--r--pkgs/development/compilers/sbcl/dynamic-space-size-envvar-tests.patch104
-rw-r--r--pkgs/development/compilers/terra/default.nix3
-rw-r--r--pkgs/development/compilers/tvm/default.nix4
-rw-r--r--pkgs/development/compilers/unison/default.nix2
-rw-r--r--pkgs/development/compilers/vala/default.nix12
-rw-r--r--pkgs/development/compilers/zig/shell-completions.nix2
-rw-r--r--pkgs/development/compilers/zulu/22.nix6
-rw-r--r--pkgs/development/compilers/zz/Cargo.lock961
-rw-r--r--pkgs/development/compilers/zz/default.nix52
-rw-r--r--pkgs/development/coq-modules/compcert/default.nix3
-rw-r--r--pkgs/development/coq-modules/coq-record-update/default.nix3
-rw-r--r--pkgs/development/coq-modules/coqide/default.nix4
-rw-r--r--pkgs/development/coq-modules/ssprove/default.nix48
-rw-r--r--pkgs/development/coq-modules/vscoq-language-server/default.nix4
-rw-r--r--pkgs/development/embedded/arduino/arduino-core/chrootenv.nix1
-rw-r--r--pkgs/development/embedded/arduino/arduino-core/default.nix4
-rw-r--r--pkgs/development/embedded/bossa/default.nix10
-rw-r--r--pkgs/development/embedded/rshell/default.nix3
-rw-r--r--pkgs/development/guile-modules/guile-git/default.nix4
-rw-r--r--pkgs/development/guile-modules/guile-lib/default.nix4
-rw-r--r--pkgs/development/haskell-modules/configuration-common.nix183
-rw-r--r--pkgs/development/haskell-modules/configuration-darwin.nix7
-rw-r--r--pkgs/development/haskell-modules/configuration-ghc-8.10.x.nix3
-rw-r--r--pkgs/development/haskell-modules/configuration-ghc-9.6.x.nix10
-rw-r--r--pkgs/development/haskell-modules/configuration-ghc-9.8.x.nix20
-rw-r--r--pkgs/development/haskell-modules/configuration-ghcjs.nix2
-rw-r--r--pkgs/development/haskell-modules/configuration-hackage2nix/broken.yaml27
-rw-r--r--pkgs/development/haskell-modules/configuration-hackage2nix/main.yaml11
-rw-r--r--pkgs/development/haskell-modules/configuration-hackage2nix/stackage.yaml202
-rw-r--r--pkgs/development/haskell-modules/configuration-hackage2nix/transitive-broken.yaml27
-rw-r--r--pkgs/development/haskell-modules/configuration-nix.nix34
-rw-r--r--pkgs/development/haskell-modules/hackage-packages.nix4651
-rw-r--r--pkgs/development/haskell-modules/make-package-set.nix14
-rw-r--r--pkgs/development/interpreters/clojure/default.nix4
-rw-r--r--pkgs/development/interpreters/emilua/default.nix79
-rw-r--r--pkgs/development/interpreters/erlang/25.nix4
-rw-r--r--pkgs/development/interpreters/erlang/26.nix4
-rw-r--r--pkgs/development/interpreters/erlang/generic-builder.nix4
-rw-r--r--pkgs/development/interpreters/femtolisp/default.nix2
-rw-r--r--pkgs/development/interpreters/gnudatalanguage/default.nix4
-rw-r--r--pkgs/development/interpreters/gtk-server/default.nix4
-rw-r--r--pkgs/development/interpreters/jruby/default.nix4
-rw-r--r--pkgs/development/interpreters/lua-5/build-luarocks-package.nix2
-rw-r--r--pkgs/development/interpreters/lua-5/hooks/default.nix13
-rw-r--r--pkgs/development/interpreters/lua-5/hooks/setup-hook.sh54
-rw-r--r--pkgs/development/interpreters/lua-5/interpreter.nix15
-rw-r--r--pkgs/development/interpreters/lua-5/utils.sh54
-rw-r--r--pkgs/development/interpreters/lua-5/wrap-lua.nix2
-rw-r--r--pkgs/development/interpreters/lua-5/wrap.sh2
-rw-r--r--pkgs/development/interpreters/lua-5/wrapper.nix4
-rw-r--r--pkgs/development/interpreters/luajit/default.nix14
-rw-r--r--pkgs/development/interpreters/nelua/default.nix9
-rw-r--r--pkgs/development/interpreters/octave/build-env.nix8
-rw-r--r--pkgs/development/interpreters/php/8.2.nix4
-rw-r--r--pkgs/development/interpreters/php/8.3.nix4
-rw-r--r--pkgs/development/interpreters/picoc/default.nix29
-rw-r--r--pkgs/development/interpreters/python/default.nix4
-rw-r--r--pkgs/development/interpreters/python/pypy/default.nix2
-rw-r--r--pkgs/development/interpreters/python/python-packages-base.nix5
-rw-r--r--pkgs/development/interpreters/python/rustpython/Cargo.lock958
-rw-r--r--pkgs/development/interpreters/python/rustpython/default.nix7
-rw-r--r--pkgs/development/interpreters/racket/default.nix4
-rw-r--r--pkgs/development/interpreters/racket/racket_7_9.nix4
-rw-r--r--pkgs/development/interpreters/risor/default.nix6
-rw-r--r--pkgs/development/interpreters/ruby/default.nix8
-rw-r--r--pkgs/development/interpreters/ruby/rubygems/default.nix4
-rw-r--r--pkgs/development/interpreters/wasmtime/default.nix6
-rw-r--r--pkgs/development/julia-modules/depot.nix5
-rw-r--r--pkgs/development/libraries/SDL2_mixer/2_0.nix34
-rw-r--r--pkgs/development/libraries/SDL2_mixer/default.nix74
-rw-r--r--pkgs/development/libraries/aravis/default.nix6
-rw-r--r--pkgs/development/libraries/armadillo/default.nix4
-rw-r--r--pkgs/development/libraries/at-spi2-core/default.nix4
-rw-r--r--pkgs/development/libraries/aws-c-auth/default.nix4
-rw-r--r--pkgs/development/libraries/aws-c-cal/default.nix4
-rw-r--r--pkgs/development/libraries/aws-c-common/default.nix4
-rw-r--r--pkgs/development/libraries/aws-c-io/default.nix4
-rw-r--r--pkgs/development/libraries/aws-c-mqtt/default.nix4
-rw-r--r--pkgs/development/libraries/aws-c-s3/default.nix4
-rw-r--r--pkgs/development/libraries/aws-c-sdkutils/default.nix4
-rw-r--r--pkgs/development/libraries/aws-crt-cpp/default.nix4
-rw-r--r--pkgs/development/libraries/aws-sdk-cpp/default.nix4
-rw-r--r--pkgs/development/libraries/bamf/default.nix4
-rw-r--r--pkgs/development/libraries/botan/2.0.nix4
-rw-r--r--pkgs/development/libraries/catch2/3.nix5
-rw-r--r--pkgs/development/libraries/cegui/default.nix9
-rw-r--r--pkgs/development/libraries/cjson/default.nix4
-rw-r--r--pkgs/development/libraries/cpp-utilities/default.nix8
-rw-r--r--pkgs/development/libraries/criterion/default.nix50
-rw-r--r--pkgs/development/libraries/crossguid/default.nix6
-rw-r--r--pkgs/development/libraries/ctranslate2/default.nix4
-rw-r--r--pkgs/development/libraries/ctre/default.nix4
-rw-r--r--pkgs/development/libraries/drogon/default.nix4
-rw-r--r--pkgs/development/libraries/enchant/2.x.nix4
-rw-r--r--pkgs/development/libraries/faac/default.nix11
-rw-r--r--pkgs/development/libraries/faudio/default.nix4
-rw-r--r--pkgs/development/libraries/ffmpeg/generic.nix21
-rw-r--r--pkgs/development/libraries/folks/default.nix4
-rw-r--r--pkgs/development/libraries/functionalplus/default.nix4
-rw-r--r--pkgs/development/libraries/gcr/4.nix4
-rw-r--r--pkgs/development/libraries/gcr/default.nix4
-rw-r--r--pkgs/development/libraries/gdk-pixbuf/default.nix4
-rw-r--r--pkgs/development/libraries/geis/default.nix4
-rw-r--r--pkgs/development/libraries/geoclue/default.nix4
-rw-r--r--pkgs/development/libraries/giflib/default.nix11
-rw-r--r--pkgs/development/libraries/gjs/default.nix8
-rw-r--r--pkgs/development/libraries/gjs/disable-introspection-test.patch12
-rw-r--r--pkgs/development/libraries/gl3w/default.nix2
-rw-r--r--pkgs/development/libraries/glib-networking/default.nix4
-rw-r--r--pkgs/development/libraries/glib/default.nix135
-rw-r--r--pkgs/development/libraries/glib/elementary-terminal-support.patch4
-rw-r--r--pkgs/development/libraries/glib/glib-appinfo-watch.patch26
-rw-r--r--pkgs/development/libraries/glib/schema-override-variable.patch4
-rw-r--r--pkgs/development/libraries/glib/skip-timer-test.patch17
-rw-r--r--pkgs/development/libraries/glib/split-dev-programs.patch34
-rw-r--r--pkgs/development/libraries/glibc/2.39-master.patch8526
-rw-r--r--pkgs/development/libraries/glibc/common.nix17
-rw-r--r--pkgs/development/libraries/glibc/default.nix3
-rw-r--r--pkgs/development/libraries/glibmm/2.68.nix4
-rw-r--r--pkgs/development/libraries/glibmm/default.nix4
-rw-r--r--pkgs/development/libraries/gmime/3.nix82
-rw-r--r--pkgs/development/libraries/gnome-online-accounts/default.nix27
-rw-r--r--pkgs/development/libraries/gnu-efi/default.nix4
-rw-r--r--pkgs/development/libraries/gnutls/default.nix17
-rw-r--r--pkgs/development/libraries/gobject-introspection/default.nix10
-rw-r--r--pkgs/development/libraries/gsettings-desktop-schemas/default.nix4
-rw-r--r--pkgs/development/libraries/gstreamer/bad/default.nix25
-rw-r--r--pkgs/development/libraries/gstreamer/bad/fix-paths.patch26
-rw-r--r--pkgs/development/libraries/gstreamer/base/default.nix9
-rw-r--r--pkgs/development/libraries/gstreamer/core/default.nix9
-rw-r--r--pkgs/development/libraries/gstreamer/default.nix3
-rw-r--r--pkgs/development/libraries/gstreamer/devtools/default.nix4
-rw-r--r--pkgs/development/libraries/gstreamer/ges/default.nix4
-rw-r--r--pkgs/development/libraries/gstreamer/good/default.nix10
-rw-r--r--pkgs/development/libraries/gstreamer/icamerasrc/default.nix2
-rw-r--r--pkgs/development/libraries/gstreamer/libav/default.nix4
-rw-r--r--pkgs/development/libraries/gstreamer/rs/Cargo.lock3194
-rw-r--r--pkgs/development/libraries/gstreamer/rs/default.nix55
-rw-r--r--pkgs/development/libraries/gstreamer/rtsp-server/default.nix4
-rw-r--r--pkgs/development/libraries/gstreamer/ugly/default.nix6
-rw-r--r--pkgs/development/libraries/gstreamer/vaapi/default.nix4
-rw-r--r--pkgs/development/libraries/gstreamer/viperfx/default.nix4
-rw-r--r--pkgs/development/libraries/gtk-frdp/default.nix14
-rw-r--r--pkgs/development/libraries/gtk/4.x.nix27
-rw-r--r--pkgs/development/libraries/gtkmm/4.x.nix4
-rw-r--r--pkgs/development/libraries/gtksourceview/5.x.nix8
-rw-r--r--pkgs/development/libraries/gvfs/default.nix16
-rw-r--r--pkgs/development/libraries/hax11/default.nix2
-rw-r--r--pkgs/development/libraries/icu/make-icu.nix16
-rw-r--r--pkgs/development/libraries/imgui/default.nix4
-rw-r--r--pkgs/development/libraries/ipu6-camera-hal/default.nix2
-rw-r--r--pkgs/development/libraries/java/commons/bcel/default.nix4
-rw-r--r--pkgs/development/libraries/java/commons/io/default.nix4
-rw-r--r--pkgs/development/libraries/java/commons/logging/default.nix4
-rw-r--r--pkgs/development/libraries/jellyfin-ffmpeg/default.nix13
-rw-r--r--pkgs/development/libraries/kde-frameworks/kded.nix4
-rw-r--r--pkgs/development/libraries/kerberos/krb5.nix2
-rw-r--r--pkgs/development/libraries/ldutils/default.nix32
-rw-r--r--pkgs/development/libraries/libadwaita/default.nix4
-rw-r--r--pkgs/development/libraries/libajantv2/default.nix15
-rw-r--r--pkgs/development/libraries/libaom/default.nix13
-rw-r--r--pkgs/development/libraries/libarchive/default.nix30
-rw-r--r--pkgs/development/libraries/libcifpp/default.nix10
-rw-r--r--pkgs/development/libraries/libcloudproviders/default.nix2
-rw-r--r--pkgs/development/libraries/libcxxrt/default.nix8
-rw-r--r--pkgs/development/libraries/libdatachannel/default.nix4
-rw-r--r--pkgs/development/libraries/libdevil/default.nix2
-rw-r--r--pkgs/development/libraries/libdex/default.nix13
-rw-r--r--pkgs/development/libraries/libdigidocpp/default.nix4
-rw-r--r--pkgs/development/libraries/libeatmydata/default.nix20
-rw-r--r--pkgs/development/libraries/libgbinder/default.nix4
-rw-r--r--pkgs/development/libraries/libglibutil/default.nix4
-rw-r--r--pkgs/development/libraries/libgnomekbd/default.nix4
-rw-r--r--pkgs/development/libraries/libgnt/default.nix18
-rw-r--r--pkgs/development/libraries/libgpiod/default.nix4
-rw-r--r--pkgs/development/libraries/libgweather/default.nix4
-rw-r--r--pkgs/development/libraries/libhandy/default.nix2
-rw-r--r--pkgs/development/libraries/libical/default.nix8
-rw-r--r--pkgs/development/libraries/libiconv/default.nix2
-rw-r--r--pkgs/development/libraries/libirecovery/default.nix4
-rw-r--r--pkgs/development/libraries/libjwt/default.nix4
-rw-r--r--pkgs/development/libraries/libjxl/default.nix4
-rw-r--r--pkgs/development/libraries/liblc3/default.nix9
-rw-r--r--pkgs/development/libraries/libmad/default.nix3
-rw-r--r--pkgs/development/libraries/libmodulemd/default.nix26
-rw-r--r--pkgs/development/libraries/libmodulemd/glib-devdoc.patch13
-rw-r--r--pkgs/development/libraries/libopus/default.nix5
-rw-r--r--pkgs/development/libraries/libopus/fix-pkg-config-paths.patch13
-rw-r--r--pkgs/development/libraries/libowlevelzs/default.nix2
-rw-r--r--pkgs/development/libraries/libpanel/default.nix4
-rw-r--r--pkgs/development/libraries/libpeas/2.x.nix4
-rw-r--r--pkgs/development/libraries/libpeas/default.nix4
-rw-r--r--pkgs/development/libraries/libproxy/default.nix19
-rw-r--r--pkgs/development/libraries/libqalculate/default.nix4
-rw-r--r--pkgs/development/libraries/librecast/default.nix4
-rw-r--r--pkgs/development/libraries/libressl/default.nix4
-rw-r--r--pkgs/development/libraries/librsvg/default.nix2
-rw-r--r--pkgs/development/libraries/libsecret/default.nix9
-rw-r--r--pkgs/development/libraries/libsegfault/default.nix2
-rw-r--r--pkgs/development/libraries/libshumate/default.nix28
-rw-r--r--pkgs/development/libraries/libsolv/default.nix4
-rw-r--r--pkgs/development/libraries/libubox/default.nix4
-rw-r--r--pkgs/development/libraries/liburcu/default.nix3
-rw-r--r--pkgs/development/libraries/libusb1/default.nix15
-rw-r--r--pkgs/development/libraries/libuv/default.nix4
-rw-r--r--pkgs/development/libraries/libva/default.nix4
-rw-r--r--pkgs/development/libraries/libvgm/default.nix2
-rw-r--r--pkgs/development/libraries/libwacom/default.nix4
-rw-r--r--pkgs/development/libraries/libwebp/default.nix6
-rw-r--r--pkgs/development/libraries/libxcrypt/default.nix14
-rw-r--r--pkgs/development/libraries/libxkbcommon/default.nix13
-rw-r--r--pkgs/development/libraries/libxkbcommon/disable-x11com.patch17
-rw-r--r--pkgs/development/libraries/libxlsxwriter/default.nix12
-rw-r--r--pkgs/development/libraries/libxmlb/default.nix4
-rw-r--r--pkgs/development/libraries/libxmlb/installed-tests-path.patch3
-rw-r--r--pkgs/development/libraries/libz/default.nix6
-rw-r--r--pkgs/development/libraries/llhttp/default.nix16
-rw-r--r--pkgs/development/libraries/malcontent/default.nix4
-rw-r--r--pkgs/development/libraries/mdk-sdk/default.nix4
-rw-r--r--pkgs/development/libraries/mesa/default.nix396
-rw-r--r--pkgs/development/libraries/mimalloc/default.nix4
-rw-r--r--pkgs/development/libraries/minilibx/default.nix2
-rw-r--r--pkgs/development/libraries/miniz/default.nix5
-rw-r--r--pkgs/development/libraries/mongoc/default.nix4
-rw-r--r--pkgs/development/libraries/msgpack-c/default.nix9
-rw-r--r--pkgs/development/libraries/ngtcp2/default.nix4
-rw-r--r--pkgs/development/libraries/ngtcp2/gnutls.nix4
-rw-r--r--pkgs/development/libraries/nss/latest.nix4
-rw-r--r--pkgs/development/libraries/nsync/default.nix4
-rw-r--r--pkgs/development/libraries/nvidia-vaapi-driver/default.nix4
-rw-r--r--pkgs/development/libraries/ogre/default.nix6
-rw-r--r--pkgs/development/libraries/onnxruntime/default.nix4
-rw-r--r--pkgs/development/libraries/openbabel/2.nix2
-rw-r--r--pkgs/development/libraries/opencascade-occt/default.nix38
-rw-r--r--pkgs/development/libraries/opendht/default.nix4
-rw-r--r--pkgs/development/libraries/openimagedenoise/default.nix28
-rw-r--r--pkgs/development/libraries/opensaml-cpp/default.nix7
-rw-r--r--pkgs/development/libraries/openssl/default.nix6
-rw-r--r--pkgs/development/libraries/openturns/default.nix82
-rw-r--r--pkgs/development/libraries/openvdb/default.nix2
-rw-r--r--pkgs/development/libraries/openvino/default.nix6
-rw-r--r--pkgs/development/libraries/p11-kit/default.nix5
-rw-r--r--pkgs/development/libraries/pango/default.nix4
-rw-r--r--pkgs/development/libraries/pangomm/2.48.nix4
-rw-r--r--pkgs/development/libraries/parson/default.nix2
-rw-r--r--pkgs/development/libraries/pcre/default.nix15
-rw-r--r--pkgs/development/libraries/pcre2/default.nix2
-rw-r--r--pkgs/development/libraries/physics/fastnlo-toolkit/default.nix4
-rw-r--r--pkgs/development/libraries/physics/nlojet/default.nix2
-rw-r--r--pkgs/development/libraries/pinocchio/default.nix33
-rw-r--r--pkgs/development/libraries/poco/default.nix4
-rw-r--r--pkgs/development/libraries/qmenumodel/default.nix2
-rw-r--r--pkgs/development/libraries/qt-5/5.15/default.nix4
-rw-r--r--pkgs/development/libraries/qt-5/modules/qtpurchasing.nix14
-rw-r--r--pkgs/development/libraries/qt-5/modules/qtquick3d.nix11
-rw-r--r--pkgs/development/libraries/qtkeychain/default.nix7
-rw-r--r--pkgs/development/libraries/qxlsx/default.nix4
-rw-r--r--pkgs/development/libraries/qxmpp/default.nix4
-rw-r--r--pkgs/development/libraries/rapidcheck/default.nix2
-rw-r--r--pkgs/development/libraries/rapidyaml/default.nix5
-rw-r--r--pkgs/development/libraries/re2/default.nix4
-rw-r--r--pkgs/development/libraries/rocksdb/default.nix4
-rw-r--r--pkgs/development/libraries/rutabaga_gfx/default.nix18
-rw-r--r--pkgs/development/libraries/s2n-tls/default.nix4
-rw-r--r--pkgs/development/libraries/science/astronomy/wcslib/default.nix4
-rw-r--r--pkgs/development/libraries/science/biology/bicpl/default.nix31
-rw-r--r--pkgs/development/libraries/science/chemistry/libvdwxc/default.nix2
-rw-r--r--pkgs/development/libraries/science/math/blis/default.nix4
-rw-r--r--pkgs/development/libraries/science/math/clblas/default.nix9
-rw-r--r--pkgs/development/libraries/science/math/ipopt/default.nix4
-rw-r--r--pkgs/development/libraries/science/math/libtorch/bin.nix13
-rw-r--r--pkgs/development/libraries/science/math/libtorch/binary-hashes.nix24
-rwxr-xr-xpkgs/development/libraries/science/math/libtorch/prefetch.sh5
-rw-r--r--pkgs/development/libraries/science/math/openblas/default.nix14
-rw-r--r--pkgs/development/libraries/science/math/openspecfun/default.nix4
-rw-r--r--pkgs/development/libraries/science/math/osi/default.nix4
-rw-r--r--pkgs/development/libraries/simdjson/default.nix4
-rw-r--r--pkgs/development/libraries/snappy/default.nix9
-rw-r--r--pkgs/development/libraries/spice-gtk/default.nix4
-rw-r--r--pkgs/development/libraries/sqlite/default.nix4
-rw-r--r--pkgs/development/libraries/sqlite/tools.nix4
-rw-r--r--pkgs/development/libraries/template-glib/default.nix4
-rw-r--r--pkgs/development/libraries/tkrzw/default.nix4
-rw-r--r--pkgs/development/libraries/tpm2-tss/default.nix13
-rw-r--r--pkgs/development/libraries/tpm2-tss/no-dynamic-loader-path.patch475
-rw-r--r--pkgs/development/libraries/tracker/default.nix6
-rw-r--r--pkgs/development/libraries/ubus/default.nix4
-rw-r--r--pkgs/development/libraries/ucl/default.nix5
-rw-r--r--pkgs/development/libraries/uclient/default.nix1
-rw-r--r--pkgs/development/libraries/uriparser/default.nix5
-rw-r--r--pkgs/development/libraries/ustr/default.nix43
-rw-r--r--pkgs/development/libraries/ustream-ssl/default.nix6
-rw-r--r--pkgs/development/libraries/vte/default.nix16
-rw-r--r--pkgs/development/libraries/wayland/protocols.nix4
-rw-r--r--pkgs/development/libraries/webrtc-audio-processing/0.3.nix2
-rw-r--r--pkgs/development/libraries/webrtc-audio-processing/default.nix3
-rw-r--r--pkgs/development/libraries/wildmidi/default.nix8
-rw-r--r--pkgs/development/libraries/wlroots/protocols.nix4
-rw-r--r--pkgs/development/libraries/xdg-desktop-portal-gnome/default.nix4
-rw-r--r--pkgs/development/libraries/xdg-desktop-portal-gtk/default.nix4
-rw-r--r--pkgs/development/libraries/xdg-desktop-portal-xapp/default.nix4
-rw-r--r--pkgs/development/libraries/xdg-desktop-portal/default.nix6
-rw-r--r--pkgs/development/libraries/xml-security-c/default.nix35
-rw-r--r--pkgs/development/libraries/yyjson/default.nix2
-rw-r--r--pkgs/development/lisp-modules-new-obsolete/.gitattributes1
-rw-r--r--pkgs/development/lisp-modules-new-obsolete/.gitignore3
-rw-r--r--pkgs/development/lisp-modules-new-obsolete/doc/api.md197
-rw-r--r--pkgs/development/lisp-modules-new-obsolete/doc/nix-cl.md98
-rw-r--r--pkgs/development/lisp-modules-new-obsolete/doc/quicklisp.md54
-rw-r--r--pkgs/development/lisp-modules-new-obsolete/doc/quirks.md5
-rw-r--r--pkgs/development/lisp-modules-new-obsolete/examples/abcl-package-set.nix24
-rw-r--r--pkgs/development/lisp-modules-new-obsolete/examples/abcl-with-packages.nix23
-rw-r--r--pkgs/development/lisp-modules-new-obsolete/examples/bordeaux-threads.nix43
-rw-r--r--pkgs/development/lisp-modules-new-obsolete/examples/sbcl-with-bt.nix31
-rw-r--r--pkgs/development/lisp-modules-new-obsolete/import/api.lisp18
-rw-r--r--pkgs/development/lisp-modules-new-obsolete/import/database/sqlite.lisp162
-rw-r--r--pkgs/development/lisp-modules-new-obsolete/import/init.sql41
-rw-r--r--pkgs/development/lisp-modules-new-obsolete/import/main.lisp40
-rw-r--r--pkgs/development/lisp-modules-new-obsolete/import/nix.lisp81
-rw-r--r--pkgs/development/lisp-modules-new-obsolete/import/org.lispbuilds.nix.asd24
-rw-r--r--pkgs/development/lisp-modules-new-obsolete/import/repository/quicklisp.lisp199
-rw-r--r--pkgs/development/lisp-modules-new-obsolete/import/util.lisp16
-rw-r--r--pkgs/development/lisp-modules-new-obsolete/imported.nix72088
-rw-r--r--pkgs/development/lisp-modules-new-obsolete/lisp-packages.nix418
-rw-r--r--pkgs/development/lisp-modules-new-obsolete/old-make-wrapper.sh155
-rw-r--r--pkgs/development/lisp-modules-new-obsolete/packages.nix336
-rw-r--r--pkgs/development/lisp-modules-new-obsolete/patches/cffi-libffi-darwin-ffi-h.patch14
-rw-r--r--pkgs/development/lisp-modules-new-obsolete/patches/cl-freetype2-fix-grovel-includes.patch16
-rw-r--r--pkgs/development/lisp-modules-new-obsolete/patches/cl-liballegro-nuklear-missing-dll.patch17
-rw-r--r--pkgs/development/lisp-modules-new-obsolete/patches/cl-sat.glucose-binary-from-PATH-if-present.patch27
-rw-r--r--pkgs/development/lisp-modules-new-obsolete/patches/magicl-dont-build-fortran-twice.patch21
-rw-r--r--pkgs/development/lisp-modules-new-obsolete/patches/swank-pure-paths.patch28
-rw-r--r--pkgs/development/lisp-modules-new-obsolete/ql-import.lisp6
-rw-r--r--pkgs/development/lisp-modules-new-obsolete/ql.nix239
-rw-r--r--pkgs/development/lisp-modules-new-obsolete/readme.md34
-rw-r--r--pkgs/development/lisp-modules-new-obsolete/shell.nix7
-rw-r--r--pkgs/development/lisp-modules-new-obsolete/test/lispPackagesToTest.txt395
-rwxr-xr-xpkgs/development/lisp-modules-new-obsolete/test/test.lisp94
-rw-r--r--pkgs/development/lisp-modules-obsolete/README.txt30
-rw-r--r--pkgs/development/lisp-modules-obsolete/asdf/2.26.nix38
-rw-r--r--pkgs/development/lisp-modules-obsolete/asdf/3.1.nix37
-rw-r--r--pkgs/development/lisp-modules-obsolete/asdf/default.nix37
-rwxr-xr-xpkgs/development/lisp-modules-obsolete/clwrapper/build-with-lisp.sh67
-rwxr-xr-xpkgs/development/lisp-modules-obsolete/clwrapper/cl-wrapper.sh134
-rwxr-xr-xpkgs/development/lisp-modules-obsolete/clwrapper/common-lisp.sh3
-rw-r--r--pkgs/development/lisp-modules-obsolete/clwrapper/default.nix57
-rw-r--r--pkgs/development/lisp-modules-obsolete/clwrapper/setup-hook.sh39
-rw-r--r--pkgs/development/lisp-modules-obsolete/define-package.nix120
-rwxr-xr-xpkgs/development/lisp-modules-obsolete/from-quicklisp/asdf-description.sh16
-rwxr-xr-xpkgs/development/lisp-modules-obsolete/from-quicklisp/barebones-quicklisp-expression.sh174
-rwxr-xr-xpkgs/development/lisp-modules-obsolete/from-quicklisp/quicklisp-beta-env.sh16
-rwxr-xr-xpkgs/development/lisp-modules-obsolete/from-quicklisp/quicklisp-dependencies.sh11
-rwxr-xr-xpkgs/development/lisp-modules-obsolete/from-quicklisp/urls-from-page.sh14
-rw-r--r--pkgs/development/lisp-modules-obsolete/lisp-packages.nix272
-rw-r--r--pkgs/development/lisp-modules-obsolete/openssl-lib-marked.nix18
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/_1am.nix25
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/_3bmd-ext-code-blocks.nix39
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/_3bmd.nix34
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/access.nix40
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/acclimation.nix26
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/agutil.nix29
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/alexandria.nix27
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/anaphora.nix28
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/arnesi.nix35
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/array-operations.nix32
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/array-utils.nix26
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/arrows.nix31
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/asdf-package-system.nix26
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/asdf-system-connections.nix27
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/babel.nix28
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/binomial-heap.nix26
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/binpack.nix28
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/blackbird.nix26
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/bordeaux-threads.nix31
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/buildnode-xhtml.nix49
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/buildnode.nix50
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/calispel.nix36
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cffi-grovel.nix31
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cffi-toolchain.nix32
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cffi-uffi-compat.nix32
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cffi.nix35
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/chanl.nix32
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/check-it.nix32
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/chipz.nix26
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/chunga.nix26
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/circular-streams.nix37
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-aa.nix26
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-annot.nix26
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-anonfun.nix25
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-ansi-text.nix30
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-ascii-table.nix27
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-async-repl.nix44
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-async-ssl.nix45
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-async.nix42
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-base64.nix29
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-cffi-gtk-cairo.nix40
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-cffi-gtk-gdk-pixbuf.nix42
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-cffi-gtk-gdk.nix48
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-cffi-gtk-gio.nix42
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-cffi-gtk-glib.nix37
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-cffi-gtk-gobject.nix41
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-cffi-gtk-pango.nix43
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-cffi-gtk.nix49
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-change-case.nix34
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-cli.nix26
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-colors.nix30
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-colors2.nix31
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-containers.nix34
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-cookie.nix35
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-css.nix25
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-csv.nix38
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-cuda.nix45
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-custom-hash-table.nix26
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-dbi.nix31
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-difflib.nix27
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-digraph.nix26
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-dot.nix26
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-emb.nix26
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-environments.nix42
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-fad.nix31
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-form-types.nix42
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-fuse-meta-fs.nix41
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-fuse.nix36
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-fuzz.nix26
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-geometry.nix27
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-gobject-introspection.nix32
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-heap.nix26
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-hooks.nix35
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-html-diff.nix26
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-html-parse.nix26
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-html5-parser.nix32
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-interpol.nix32
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-jpeg.nix26
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-json.nix29
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-l10n-cldr.nix27
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-l10n.nix43
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-libuv.nix31
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-locale.nix38
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-markup.nix26
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-mustache.nix26
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-mysql.nix29
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-num-utils.nix34
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-paths-ttf.nix28
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-paths.nix26
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-pattern.nix34
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-pdf.nix28
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-postgres.nix41
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-postgres_plus_local-time.nix37
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-ppcre-template.nix39
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-ppcre-unicode.nix34
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-ppcre.nix28
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-prevalence.nix35
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-project.nix35
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-protobufs.nix32
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-qprint.nix29
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-qrencode.nix30
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-reexport.nix26
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-semver.nix31
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-shellwords.nix29
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-slice.nix30
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-smt-lib.nix31
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-smtp.nix39
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-speedy-queue.nix27
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-store.nix28
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-svg.nix25
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-syntax-annot.nix34
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-syntax-anonfun.nix33
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-syntax-markup.nix33
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-syntax.nix31
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-syslog.nix34
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-test-more.nix35
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-typesetting.nix29
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-unicode.nix31
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-unification.nix30
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-utilities.nix26
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-vectors.nix27
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-webkit2.nix44
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-who.nix28
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-xmlspam.nix35
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl_plus_ssl.nix39
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/clack-handler-hunchentoot.nix55
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/clack-socket.nix29
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/clack-test.nix80
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/clack.nix40
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/classowary.nix30
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/clfswm.nix26
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/closer-mop.nix26
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/closure-common.nix30
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/closure-html.nix34
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/clsql-postgresql-socket.nix32
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/clsql-postgresql.nix32
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/clsql-sqlite3.nix32
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/clsql-uffi.nix31
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/clsql.nix30
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/clss.nix29
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/clump-2-3-tree.nix27
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/clump-binary-tree.nix27
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/clump.nix30
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/clunit.nix25
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/clunit2.nix25
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/clx.nix29
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/collectors.nix36
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/colorize.nix29
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/command-line-arguments.nix32
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/css-lite.nix25
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/css-selectors-simple-tree.nix52
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/css-selectors-stp.nix52
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/css-selectors.nix51
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cxml-stp.nix39
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cxml.nix35
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/data-frame.nix34
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/data-table.nix40
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/dbd-mysql.nix35
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/dbd-postgres.nix39
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/dbd-sqlite3.nix38
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/dbi-test.nix36
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/dbi.nix42
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/dbus.nix51
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/defclass-std.nix29
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/dexador.nix51
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/dfio.nix39
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/dissect.nix26
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/djula.nix54
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/do-urlencode.nix29
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/documentation-utils.nix28
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/drakma.nix40
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/eager-future2.nix31
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/enchant.nix30
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/esrap-peg.nix33
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/esrap.nix32
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/external-program.nix31
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/fare-csv.nix25
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/fare-mop.nix29
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/fare-quasiquote-extras.nix47
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/fare-quasiquote-optima.nix46
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/fare-quasiquote-readtable.nix33
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/fare-quasiquote.nix29
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/fare-utils.nix27
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/fast-http.nix36
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/fast-io.nix34
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/fiasco.nix31
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/file-attributes.nix34
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/fiveam.nix31
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/flexi-streams.nix30
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/float-features.nix30
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/flow.nix29
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/fn.nix26
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/form-fiddle.nix30
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/fset.nix35
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/generic-cl.nix76
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/generic-cl_dot_arithmetic.nix60
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/generic-cl_dot_collector.nix62
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/generic-cl_dot_comparison.nix57
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/generic-cl_dot_container.nix60
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/generic-cl_dot_internal.nix57
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/generic-cl_dot_iterator.nix61
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/generic-cl_dot_lazy-seq.nix68
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/generic-cl_dot_map.nix65
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/generic-cl_dot_math.nix60
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/generic-cl_dot_object.nix60
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/generic-cl_dot_sequence.nix67
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/generic-cl_dot_set.nix69
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/gettext.nix31
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/global-vars.nix26
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/glsl-docs.nix28
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/glsl-spec.nix26
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/glsl-symbols.nix27
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/heap.nix25
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/html-encode.nix26
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/http-body.nix50
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/hu_dot_dwim_dot_asdf.nix29
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/hu_dot_dwim_dot_common-lisp.nix29
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/hu_dot_dwim_dot_common.nix37
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/hu_dot_dwim_dot_def.nix36
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/hu_dot_dwim_dot_def_plus_swank.nix37
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/hu_dot_dwim_dot_defclass-star.nix37
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/hu_dot_dwim_dot_stefil.nix31
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/hu_dot_dwim_dot_stefil_plus_hu_dot_dwim_dot_def.nix37
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/hu_dot_dwim_dot_stefil_plus_hu_dot_dwim_dot_def_plus_swank.nix43
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/hu_dot_dwim_dot_stefil_plus_swank.nix34
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/hunchensocket.nix48
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/hunchentoot.nix54
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/idna.nix27
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/ieee-floats.nix29
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/inferior-shell.nix55
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/introspect-environment.nix27
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/iolib.nix47
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/iolib_dot_asdf.nix28
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/iolib_dot_base.nix35
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/iolib_dot_common-lisp.nix31
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/iolib_dot_conf.nix30
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/iolib_dot_grovel.nix40
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/ironclad.nix62
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/iterate.nix29
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/jonathan.nix43
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/jpl-queues.nix32
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/jpl-util.nix25
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/jsown.nix26
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/kmrcl.nix28
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/lack-component.nix35
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/lack-middleware-backtrace.nix36
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/lack-util.nix39
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/lack.nix42
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/lambda-fiddle.nix27
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/legit.nix35
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/let-plus.nix30
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/lev.nix29
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/lfarm-client.nix42
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/lfarm-common.nix42
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/lfarm-server.nix41
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/lfarm-ssl.nix43
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/lift.nix26
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/lisp-binary.nix37
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/lisp-namespace.nix28
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/lisp-stat.nix49
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/lisp-unit.nix26
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/lisp-unit2.nix39
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/lla.nix37
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/local-time.nix32
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/log4cl.nix32
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/lparallel.nix28
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/lquery.nix32
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/make-hash.nix26
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/map-set.nix25
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/marshal.nix27
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/md5.nix25
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/metabang-bind.nix27
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/metatilities-base.nix27
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/mgl-pax.nix39
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/minheap.nix26
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/misc-extensions.nix26
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/mk-string-metrics.nix27
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/mmap.nix33
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/moptilities.nix26
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/more-conditions.nix35
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/mt19937.nix26
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/myway.nix33
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/named-readtables.nix31
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/nbd.nix33
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/net-telent-date.nix26
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/net_dot_didierverna_dot_asdf-flv.nix27
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/nibbles.nix29
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/num-utils.nix33
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/optima.nix28
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/osicat.nix33
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/parachute.nix31
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/parenscript.nix29
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/parse-declarations-1_dot_0.nix27
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/parse-float.nix30
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/parse-number.nix28
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/parseq.nix28
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/parser-combinators.nix31
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/parser_dot_common-rules.nix39
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/pcall-queue.nix28
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/pcall.nix31
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/physical-quantities.nix30
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/plump.nix30
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/postmodern.nix50
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/proc-parse.nix29
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/prove-asdf.nix26
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/prove.nix34
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/ptester.nix25
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/puri.nix28
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/pythonic-string-reader.nix30
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/quasiquote-2_dot_0.nix31
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/query-fs.nix44
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/quri.nix31
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/rfc2388.nix25
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/rove.nix31
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/rt.nix25
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/s-sql.nix43
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/s-sysdeps.nix33
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/s-xml.nix28
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/salza2.nix34
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/select.nix30
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/serapeum.nix63
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/simple-date-time.nix26
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/simple-date.nix30
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/simple-inferiors.nix33
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/simple-tasks.nix31
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/slynk.nix30
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/smart-buffer.nix30
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/smug.nix27
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/spinneret.nix67
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/split-sequence.nix31
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/sqlite.nix30
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/static-dispatch.nix43
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/static-vectors.nix36
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/stefil.nix30
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/str.nix33
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/string-case.nix26
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/stumpwm.nix28
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/swank.nix25
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/swap-bytes.nix31
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/sycamore.nix29
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/symbol-munger.nix31
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/trees.nix28
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/trivia.nix45
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/trivia_dot_balland2006.nix45
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/trivia_dot_level0.nix31
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/trivia_dot_level1.nix33
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/trivia_dot_level2.nix40
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/trivia_dot_quasiquote.nix46
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/trivia_dot_trivial.nix45
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/trivial-arguments.nix27
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/trivial-backtrace.nix26
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/trivial-clipboard.nix27
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/trivial-cltl2.nix27
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/trivial-features.nix27
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/trivial-file-size.nix30
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/trivial-garbage.nix29
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/trivial-gray-streams.nix27
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/trivial-indent.nix27
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/trivial-macroexpand-all.nix27
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/trivial-main-thread.nix35
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/trivial-mimes.nix27
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/trivial-package-local-nicknames.nix27
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/trivial-shell.nix27
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/trivial-types.nix26
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/trivial-utf-8.nix30
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/trivial-with-current-source-form.nix28
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/type-i.nix38
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/uax-15.nix31
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/uffi.nix25
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/uiop.nix25
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/unit-test.nix25
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/unix-options.nix26
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/unix-opts.nix28
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/usocket-server.nix32
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/usocket.nix27
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/utilities_dot_print-items.nix31
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/utilities_dot_print-tree.nix32
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/uuid.nix30
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/varjo.nix39
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/vas-string-metrics.nix27
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/vecto.nix31
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/vom.nix25
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/wild-package-inferred-system.nix30
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/woo.nix47
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/wookie.nix52
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/xembed.nix27
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/xkeyboard.nix29
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/xml_dot_location.nix48
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/xmls.nix28
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/xpath.nix38
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/xsubseq.nix25
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/yacc.nix25
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/yason.nix28
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/zpb-ttf.nix26
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/zpng.nix28
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-overrides.nix295
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-systems.txt259
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix.nix5247
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix/invocation.emb7
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix/nix-package.emb23
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix/parasitic-invocation.emb1
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix/ql-to-nix.lisp327
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix/quicklisp-bootstrap.lisp76
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix/system-info.lisp493
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix/top-package.emb13
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp-to-nix/util.lisp178
-rw-r--r--pkgs/development/lisp-modules-obsolete/quicklisp.sh85
-rw-r--r--pkgs/development/lisp-modules-obsolete/shell.nix38
-rw-r--r--pkgs/development/lisp-modules/packages.nix79
-rw-r--r--pkgs/development/lua-modules/generated-packages.nix2553
-rw-r--r--pkgs/development/lua-modules/nfd/default.nix14
-rw-r--r--pkgs/development/lua-modules/overrides.nix59
-rw-r--r--pkgs/development/lua-modules/toml.patch24
-rw-r--r--pkgs/development/lua-modules/updater/.flake82
-rwxr-xr-xpkgs/development/lua-modules/updater/updater.py21
-rw-r--r--pkgs/development/misc/brev-cli/default.nix4
-rw-r--r--pkgs/development/misc/loc/default.nix2
-rw-r--r--pkgs/development/misc/resholve/README.md26
-rw-r--r--pkgs/development/misc/resholve/source.nix4
-rw-r--r--pkgs/development/misc/resholve/test.nix116
-rw-r--r--pkgs/development/mobile/genymotion/default.nix7
-rw-r--r--pkgs/development/ocaml-modules/alcotest/default.nix10
-rw-r--r--pkgs/development/ocaml-modules/arp/default.nix4
-rw-r--r--pkgs/development/ocaml-modules/eliom/default.nix11
-rw-r--r--pkgs/development/ocaml-modules/janestreet/0.16.nix12
-rw-r--r--pkgs/development/ocaml-modules/menhir/lib.nix5
-rw-r--r--pkgs/development/ocaml-modules/ocamlformat/generic.nix3
-rw-r--r--pkgs/development/ocaml-modules/ocamlformat/ocamlformat.nix3
-rw-r--r--pkgs/development/ocaml-modules/odoc-parser/default.nix16
-rw-r--r--pkgs/development/ocaml-modules/odoc/default.nix10
-rw-r--r--pkgs/development/ocaml-modules/pecu/default.nix8
-rw-r--r--pkgs/development/ocaml-modules/ppx_import/default.nix21
-rw-r--r--pkgs/development/ocaml-modules/ppx_tools/default.nix5
-rw-r--r--pkgs/development/ocaml-modules/unstrctrd/default.nix8
-rw-r--r--pkgs/development/ocaml-modules/uring/default.nix12
-rw-r--r--pkgs/development/octave-modules/ga/default.nix4
-rw-r--r--pkgs/development/perl-modules/ImageExifTool/default.nix26
-rw-r--r--pkgs/development/php-packages/amqp/default.nix10
-rw-r--r--pkgs/development/php-packages/apcu/default.nix22
-rw-r--r--pkgs/development/php-packages/ast/default.nix9
-rw-r--r--pkgs/development/php-packages/box/default.nix12
-rw-r--r--pkgs/development/php-packages/castor/default.nix15
-rw-r--r--pkgs/development/php-packages/composer/default.nix40
-rw-r--r--pkgs/development/php-packages/couchbase/default.nix16
-rw-r--r--pkgs/development/php-packages/datadog_trace/default.nix69
-rw-r--r--pkgs/development/php-packages/deployer/default.nix12
-rw-r--r--pkgs/development/php-packages/ds/default.nix11
-rw-r--r--pkgs/development/php-packages/event/default.nix14
-rw-r--r--pkgs/development/php-packages/gnupg/default.nix13
-rw-r--r--pkgs/development/php-packages/grpc/default.nix9
-rw-r--r--pkgs/development/php-packages/grumphp/default.nix7
-rw-r--r--pkgs/development/php-packages/igbinary/default.nix5
-rw-r--r--pkgs/development/php-packages/imagick/default.nix8
-rw-r--r--pkgs/development/php-packages/inotify/default.nix4
-rw-r--r--pkgs/development/php-packages/ioncube-loader/default.nix20
-rw-r--r--pkgs/development/php-packages/mailparse/default.nix6
-rw-r--r--pkgs/development/php-packages/maxminddb/default.nix7
-rw-r--r--pkgs/development/php-packages/memcache/default.nix17
-rw-r--r--pkgs/development/php-packages/memcached/default.nix20
-rw-r--r--pkgs/development/php-packages/meminfo/default.nix6
-rw-r--r--pkgs/development/php-packages/memprof/default.nix16
-rw-r--r--pkgs/development/php-packages/mongodb/default.nix57
-rw-r--r--pkgs/development/php-packages/oci8/default.nix33
-rw-r--r--pkgs/development/php-packages/openswoole/default.nix12
-rw-r--r--pkgs/development/php-packages/opentelemetry/default.nix13
-rw-r--r--pkgs/development/php-packages/pcov/default.nix11
-rw-r--r--pkgs/development/php-packages/pdlib/default.nix8
-rw-r--r--pkgs/development/php-packages/pdo_sqlsrv/default.nix9
-rw-r--r--pkgs/development/php-packages/phalcon/default.nix14
-rw-r--r--pkgs/development/php-packages/phan/default.nix52
-rw-r--r--pkgs/development/php-packages/phing/default.nix50
-rw-r--r--pkgs/development/php-packages/phive/default.nix7
-rw-r--r--pkgs/development/php-packages/php-codesniffer/default.nix7
-rw-r--r--pkgs/development/php-packages/php-cs-fixer/default.nix7
-rw-r--r--pkgs/development/php-packages/php-parallel-lint/default.nix7
-rw-r--r--pkgs/development/php-packages/phpinsights/composer.lock1080
-rw-r--r--pkgs/development/php-packages/phpinsights/default.nix11
-rw-r--r--pkgs/development/php-packages/phpmd/default.nix7
-rw-r--r--pkgs/development/php-packages/phpspy/default.nix13
-rw-r--r--pkgs/development/php-packages/phpstan/default.nix12
-rw-r--r--pkgs/development/php-packages/pinba/default.nix8
-rw-r--r--pkgs/development/php-packages/protobuf/default.nix6
-rw-r--r--pkgs/development/php-packages/psalm/default.nix7
-rw-r--r--pkgs/development/php-packages/psysh/default.nix6
-rw-r--r--pkgs/development/php-packages/rdkafka/default.nix12
-rw-r--r--pkgs/development/php-packages/redis/default.nix14
-rw-r--r--pkgs/development/php-packages/relay/default.nix155
-rw-r--r--pkgs/development/php-packages/rrd/default.nix12
-rw-r--r--pkgs/development/php-packages/smbclient/default.nix7
-rw-r--r--pkgs/development/php-packages/snuffleupagus/default.nix39
-rw-r--r--pkgs/development/php-packages/spx/default.nix14
-rw-r--r--pkgs/development/php-packages/sqlsrv/default.nix12
-rw-r--r--pkgs/development/php-packages/ssh2/default.nix6
-rw-r--r--pkgs/development/php-packages/swoole/default.nix20
-rw-r--r--pkgs/development/php-packages/uv/default.nix7
-rw-r--r--pkgs/development/php-packages/vld/default.nix12
-rw-r--r--pkgs/development/php-packages/xdebug/default.nix9
-rw-r--r--pkgs/development/php-packages/yaml/default.nix12
-rw-r--r--pkgs/development/php-packages/zstd/default.nix19
-rw-r--r--pkgs/development/python-modules/absl-py/default.nix4
-rw-r--r--pkgs/development/python-modules/accelerate/default.nix29
-rw-r--r--pkgs/development/python-modules/accessible-pygments/default.nix9
-rw-r--r--pkgs/development/python-modules/accupy/default.nix19
-rw-r--r--pkgs/development/python-modules/acquire/default.nix8
-rw-r--r--pkgs/development/python-modules/adafruit-platformdetect/default.nix25
-rw-r--r--pkgs/development/python-modules/adal/default.nix9
-rw-r--r--pkgs/development/python-modules/adext/default.nix39
-rw-r--r--pkgs/development/python-modules/aeppl/default.nix29
-rw-r--r--pkgs/development/python-modules/aesara/default.nix24
-rw-r--r--pkgs/development/python-modules/ago/default.nix6
-rw-r--r--pkgs/development/python-modules/ailment/default.nix4
-rw-r--r--pkgs/development/python-modules/aioairq/default.nix42
-rw-r--r--pkgs/development/python-modules/aioairzone-cloud/default.nix4
-rw-r--r--pkgs/development/python-modules/aioamqp/default.nix13
-rw-r--r--pkgs/development/python-modules/aioautomower/default.nix48
-rw-r--r--pkgs/development/python-modules/aioazuredevops/default.nix53
-rw-r--r--pkgs/development/python-modules/aiobiketrax/default.nix17
-rw-r--r--pkgs/development/python-modules/aiobotocore/default.nix4
-rw-r--r--pkgs/development/python-modules/aiocache/default.nix54
-rw-r--r--pkgs/development/python-modules/aiocoap/default.nix107
-rw-r--r--pkgs/development/python-modules/aioconsole/default.nix4
-rw-r--r--pkgs/development/python-modules/aiocontextvars/default.nix12
-rw-r--r--pkgs/development/python-modules/aiodhcpwatcher/default.nix1
-rw-r--r--pkgs/development/python-modules/aiodns/default.nix32
-rw-r--r--pkgs/development/python-modules/aioesphomeapi/default.nix4
-rw-r--r--pkgs/development/python-modules/aiogram/default.nix4
-rw-r--r--pkgs/development/python-modules/aiohttp-isal/default.nix56
-rw-r--r--pkgs/development/python-modules/aiohttp-jinja2/default.nix17
-rw-r--r--pkgs/development/python-modules/aiohttp-openmetrics/default.nix9
-rw-r--r--pkgs/development/python-modules/aiohttp-session/default.nix59
-rw-r--r--pkgs/development/python-modules/aiohttp/default.nix22
-rw-r--r--pkgs/development/python-modules/aiokafka/default.nix12
-rw-r--r--pkgs/development/python-modules/aiomcache/default.nix49
-rw-r--r--pkgs/development/python-modules/aiomisc-pytest/default.nix44
-rw-r--r--pkgs/development/python-modules/aiomisc/default.nix4
-rw-r--r--pkgs/development/python-modules/aiomqtt/default.nix6
-rw-r--r--pkgs/development/python-modules/aiomysql/default.nix6
-rw-r--r--pkgs/development/python-modules/aiorpcx/default.nix4
-rw-r--r--pkgs/development/python-modules/aiorun/default.nix8
-rw-r--r--pkgs/development/python-modules/aioshelly/default.nix37
-rw-r--r--pkgs/development/python-modules/aiosmtpd/default.nix10
-rw-r--r--pkgs/development/python-modules/aiounifi/default.nix4
-rw-r--r--pkgs/development/python-modules/airthings-ble/default.nix45
-rw-r--r--pkgs/development/python-modules/albumentations/default.nix23
-rw-r--r--pkgs/development/python-modules/alembic/default.nix6
-rw-r--r--pkgs/development/python-modules/aliyun-python-sdk-kms/default.nix28
-rw-r--r--pkgs/development/python-modules/allure-behave/default.nix4
-rw-r--r--pkgs/development/python-modules/allure-pytest/default.nix4
-rw-r--r--pkgs/development/python-modules/allure-python-commons-test/default.nix7
-rw-r--r--pkgs/development/python-modules/allure-python-commons/default.nix4
-rw-r--r--pkgs/development/python-modules/android-backup/default.nix4
-rw-r--r--pkgs/development/python-modules/androidtvremote2/default.nix35
-rw-r--r--pkgs/development/python-modules/angr/default.nix4
-rw-r--r--pkgs/development/python-modules/ansible-compat/default.nix6
-rw-r--r--pkgs/development/python-modules/ansible-kernel/default.nix7
-rw-r--r--pkgs/development/python-modules/ansible-runner/default.nix13
-rw-r--r--pkgs/development/python-modules/ansiwrap/default.nix19
-rw-r--r--pkgs/development/python-modules/anthropic/default.nix4
-rw-r--r--pkgs/development/python-modules/anyascii/default.nix2
-rw-r--r--pkgs/development/python-modules/apipkg/default.nix6
-rw-r--r--pkgs/development/python-modules/app-model/default.nix41
-rw-r--r--pkgs/development/python-modules/apprise/default.nix62
-rw-r--r--pkgs/development/python-modules/apscheduler/default.nix9
-rw-r--r--pkgs/development/python-modules/archinfo/default.nix4
-rw-r--r--pkgs/development/python-modules/argcomplete/default.nix4
-rw-r--r--pkgs/development/python-modules/argilla/default.nix278
-rw-r--r--pkgs/development/python-modules/argostranslate/default.nix4
-rw-r--r--pkgs/development/python-modules/art/default.nix6
-rw-r--r--pkgs/development/python-modules/asana/default.nix21
-rw-r--r--pkgs/development/python-modules/asciitree/default.nix19
-rw-r--r--pkgs/development/python-modules/asdf/default.nix65
-rw-r--r--pkgs/development/python-modules/ase/default.nix34
-rw-r--r--pkgs/development/python-modules/aspell-python/default.nix7
-rw-r--r--pkgs/development/python-modules/astropy-healpix/default.nix9
-rw-r--r--pkgs/development/python-modules/astroquery/default.nix13
-rw-r--r--pkgs/development/python-modules/asyncio-dgram/default.nix37
-rw-r--r--pkgs/development/python-modules/asyncssh/default.nix17
-rw-r--r--pkgs/development/python-modules/asyncwhois/default.nix47
-rw-r--r--pkgs/development/python-modules/atomman/default.nix16
-rw-r--r--pkgs/development/python-modules/atpublic/default.nix8
-rw-r--r--pkgs/development/python-modules/atsim-potentials/default.nix30
-rw-r--r--pkgs/development/python-modules/attacut/default.nix73
-rw-r--r--pkgs/development/python-modules/aubio/default.nix15
-rw-r--r--pkgs/development/python-modules/audiotools/default.nix5
-rw-r--r--pkgs/development/python-modules/augmax/default.nix13
-rw-r--r--pkgs/development/python-modules/autobahn/default.nix19
-rw-r--r--pkgs/development/python-modules/av/default.nix10
-rw-r--r--pkgs/development/python-modules/avro/default.nix1
-rw-r--r--pkgs/development/python-modules/avwx-engine/default.nix84
-rw-r--r--pkgs/development/python-modules/awkward-cpp/default.nix8
-rw-r--r--pkgs/development/python-modules/awkward/default.nix8
-rw-r--r--pkgs/development/python-modules/aws-lambda-builders/default.nix4
-rw-r--r--pkgs/development/python-modules/ax/default.nix6
-rw-r--r--pkgs/development/python-modules/azure-cosmos/default.nix4
-rw-r--r--pkgs/development/python-modules/azure-identity/default.nix4
-rw-r--r--pkgs/development/python-modules/azure-mgmt-cdn/default.nix7
-rw-r--r--pkgs/development/python-modules/azure-mgmt-containerservice/default.nix33
-rw-r--r--pkgs/development/python-modules/azure-mgmt-datafactory/default.nix4
-rw-r--r--pkgs/development/python-modules/azure-mgmt-recoveryservices/default.nix4
-rw-r--r--pkgs/development/python-modules/b2sdk/default.nix4
-rw-r--r--pkgs/development/python-modules/bash-kernel/default.nix20
-rw-r--r--pkgs/development/python-modules/bash-kernel/test.ipynb26
-rw-r--r--pkgs/development/python-modules/bayespy/default.nix46
-rw-r--r--pkgs/development/python-modules/bc-detect-secrets/default.nix50
-rw-r--r--pkgs/development/python-modules/bdffont/default.nix4
-rw-r--r--pkgs/development/python-modules/beancount-black/default.nix4
-rw-r--r--pkgs/development/python-modules/beancount-parser/default.nix4
-rw-r--r--pkgs/development/python-modules/beanhub-cli/default.nix78
-rw-r--r--pkgs/development/python-modules/beanhub-extract/default.nix47
-rw-r--r--pkgs/development/python-modules/beanhub-forms/default.nix55
-rw-r--r--pkgs/development/python-modules/beanhub-import/default.nix59
-rw-r--r--pkgs/development/python-modules/bellows/default.nix55
-rw-r--r--pkgs/development/python-modules/betterproto/default.nix1
-rw-r--r--pkgs/development/python-modules/bids-validator/default.nix4
-rw-r--r--pkgs/development/python-modules/bimmer-connected/default.nix10
-rw-r--r--pkgs/development/python-modules/binance-connector/default.nix61
-rw-r--r--pkgs/development/python-modules/biom-format/default.nix71
-rw-r--r--pkgs/development/python-modules/biopython/close_parser_on_time.patch18
-rw-r--r--pkgs/development/python-modules/biopython/default.nix27
-rw-r--r--pkgs/development/python-modules/bitbox02/default.nix38
-rw-r--r--pkgs/development/python-modules/black/default.nix4
-rw-r--r--pkgs/development/python-modules/blackjax/default.nix24
-rw-r--r--pkgs/development/python-modules/bleak/default.nix4
-rw-r--r--pkgs/development/python-modules/bloodyad/default.nix47
-rw-r--r--pkgs/development/python-modules/bluetooth-adapters/default.nix10
-rw-r--r--pkgs/development/python-modules/bluetooth-auto-recovery/default.nix4
-rw-r--r--pkgs/development/python-modules/bokeh/default.nix6
-rw-r--r--pkgs/development/python-modules/bokeh/hardcode-nodejs-npmjs-paths.patch11
-rw-r--r--pkgs/development/python-modules/boto3-stubs/default.nix4
-rw-r--r--pkgs/development/python-modules/botocore/default.nix4
-rw-r--r--pkgs/development/python-modules/botorch/default.nix4
-rw-r--r--pkgs/development/python-modules/boxx/default.nix4
-rw-r--r--pkgs/development/python-modules/breathe/default.nix5
-rw-r--r--pkgs/development/python-modules/bsddb3/default.nix10
-rw-r--r--pkgs/development/python-modules/bthome-ble/default.nix51
-rw-r--r--pkgs/development/python-modules/btrfs/default.nix4
-rw-r--r--pkgs/development/python-modules/buienradar/default.nix3
-rw-r--r--pkgs/development/python-modules/build/default.nix4
-rw-r--r--pkgs/development/python-modules/cadquery/default.nix100
-rw-r--r--pkgs/development/python-modules/cartopy/default.nix4
-rw-r--r--pkgs/development/python-modules/casa-formats-io/default.nix51
-rw-r--r--pkgs/development/python-modules/cbor2/default.nix4
-rw-r--r--pkgs/development/python-modules/celery/default.nix65
-rw-r--r--pkgs/development/python-modules/cepa/default.nix48
-rw-r--r--pkgs/development/python-modules/cgen/default.nix2
-rw-r--r--pkgs/development/python-modules/chai/default.nix8
-rw-r--r--pkgs/development/python-modules/character-encoding-utils/default.nix4
-rw-r--r--pkgs/development/python-modules/chart-studio/default.nix4
-rw-r--r--pkgs/development/python-modules/cheroot/default.nix4
-rw-r--r--pkgs/development/python-modules/chromadb/default.nix1
-rw-r--r--pkgs/development/python-modules/clarifai/default.nix4
-rw-r--r--pkgs/development/python-modules/claripy/default.nix4
-rw-r--r--pkgs/development/python-modules/cle/default.nix6
-rw-r--r--pkgs/development/python-modules/click-didyoumean/default.nix27
-rw-r--r--pkgs/development/python-modules/click-spinner/default.nix36
-rw-r--r--pkgs/development/python-modules/cloudflare/default.nix4
-rw-r--r--pkgs/development/python-modules/cnvkit/default.nix4
-rw-r--r--pkgs/development/python-modules/coffea/default.nix25
-rw-r--r--pkgs/development/python-modules/cohere/default.nix4
-rw-r--r--pkgs/development/python-modules/comicon/default.nix11
-rw-r--r--pkgs/development/python-modules/command-runner/default.nix34
-rw-r--r--pkgs/development/python-modules/conda/default.nix6
-rw-r--r--pkgs/development/python-modules/contexttimer/default.nix3
-rw-r--r--pkgs/development/python-modules/contourpy/default.nix6
-rw-r--r--pkgs/development/python-modules/controku/default.nix4
-rw-r--r--pkgs/development/python-modules/coordinates/default.nix30
-rw-r--r--pkgs/development/python-modules/cornice/default.nix38
-rw-r--r--pkgs/development/python-modules/courlan/default.nix56
-rw-r--r--pkgs/development/python-modules/coverage/default.nix4
-rw-r--r--pkgs/development/python-modules/craft-application/default.nix4
-rw-r--r--pkgs/development/python-modules/cramjam/default.nix39
-rw-r--r--pkgs/development/python-modules/croniter/default.nix4
-rw-r--r--pkgs/development/python-modules/cryptacular/default.nix27
-rw-r--r--pkgs/development/python-modules/cryptodatahub/default.nix10
-rw-r--r--pkgs/development/python-modules/cryptoparser/default.nix44
-rw-r--r--pkgs/development/python-modules/css-inline/Cargo.lock683
-rw-r--r--pkgs/development/python-modules/css-inline/default.nix7
-rw-r--r--pkgs/development/python-modules/curl-cffi/default.nix49
-rw-r--r--pkgs/development/python-modules/curl-cffi/use-system-libs.patch23
-rw-r--r--pkgs/development/python-modules/customtkinter/default.nix53
-rw-r--r--pkgs/development/python-modules/cvelib/default.nix49
-rw-r--r--pkgs/development/python-modules/cvxpy/default.nix15
-rw-r--r--pkgs/development/python-modules/cyclonedx-python-lib/default.nix68
-rw-r--r--pkgs/development/python-modules/cypari2/default.nix5
-rw-r--r--pkgs/development/python-modules/cypherpunkpay/default.nix1
-rw-r--r--pkgs/development/python-modules/cysignals/default.nix5
-rw-r--r--pkgs/development/python-modules/cython/default.nix9
-rw-r--r--pkgs/development/python-modules/dash/default.nix4
-rw-r--r--pkgs/development/python-modules/dask-awkward/default.nix2
-rw-r--r--pkgs/development/python-modules/dask-expr/default.nix6
-rw-r--r--pkgs/development/python-modules/dask-glm/default.nix2
-rw-r--r--pkgs/development/python-modules/dask-jobqueue/default.nix4
-rw-r--r--pkgs/development/python-modules/dask-ml/default.nix42
-rw-r--r--pkgs/development/python-modules/dask-yarn/default.nix27
-rw-r--r--pkgs/development/python-modules/dask/default.nix5
-rw-r--r--pkgs/development/python-modules/databricks-connect/default.nix4
-rw-r--r--pkgs/development/python-modules/dataclasses-json/default.nix41
-rw-r--r--pkgs/development/python-modules/dataprep-ml/default.nix4
-rw-r--r--pkgs/development/python-modules/datasets/default.nix4
-rw-r--r--pkgs/development/python-modules/datashader/default.nix4
-rw-r--r--pkgs/development/python-modules/datauri/default.nix39
-rw-r--r--pkgs/development/python-modules/dbt-bigquery/default.nix4
-rw-r--r--pkgs/development/python-modules/dbt-core/default.nix4
-rw-r--r--pkgs/development/python-modules/dbus-fast/default.nix37
-rw-r--r--pkgs/development/python-modules/dbus-python/default.nix94
-rw-r--r--pkgs/development/python-modules/dbus-python/fix-includedir.patch8
-rw-r--r--pkgs/development/python-modules/dbutils/default.nix18
-rw-r--r--pkgs/development/python-modules/deebot-client/default.nix4
-rw-r--r--pkgs/development/python-modules/desktop-notifier/default.nix10
-rw-r--r--pkgs/development/python-modules/devito/default.nix24
-rw-r--r--pkgs/development/python-modules/diffusers/default.nix26
-rw-r--r--pkgs/development/python-modules/dirigera/default.nix4
-rw-r--r--pkgs/development/python-modules/dissect-archive/default.nix45
-rw-r--r--pkgs/development/python-modules/dissect-btrfs/default.nix4
-rw-r--r--pkgs/development/python-modules/dissect-cim/default.nix39
-rw-r--r--pkgs/development/python-modules/dissect-clfs/default.nix35
-rw-r--r--pkgs/development/python-modules/dissect-cobaltstrike/default.nix43
-rw-r--r--pkgs/development/python-modules/dissect-cstruct/default.nix29
-rw-r--r--pkgs/development/python-modules/dissect-esedb/default.nix4
-rw-r--r--pkgs/development/python-modules/dissect-etl/default.nix35
-rw-r--r--pkgs/development/python-modules/dissect-eventlog/default.nix6
-rw-r--r--pkgs/development/python-modules/dissect-evidence/default.nix35
-rw-r--r--pkgs/development/python-modules/dissect-executable/default.nix29
-rw-r--r--pkgs/development/python-modules/dissect-extfs/default.nix6
-rw-r--r--pkgs/development/python-modules/dissect-fat/default.nix29
-rw-r--r--pkgs/development/python-modules/dissect-ffs/default.nix39
-rw-r--r--pkgs/development/python-modules/dissect-hypervisor/default.nix41
-rw-r--r--pkgs/development/python-modules/dissect-jffs/default.nix4
-rw-r--r--pkgs/development/python-modules/dissect-ntfs/default.nix6
-rw-r--r--pkgs/development/python-modules/dissect-ole/default.nix33
-rw-r--r--pkgs/development/python-modules/dissect-regf/default.nix6
-rw-r--r--pkgs/development/python-modules/dissect-shellitem/default.nix39
-rw-r--r--pkgs/development/python-modules/dissect-sql/default.nix39
-rw-r--r--pkgs/development/python-modules/dissect-squashfs/default.nix37
-rw-r--r--pkgs/development/python-modules/dissect-target/default.nix54
-rw-r--r--pkgs/development/python-modules/dissect-thumbcache/default.nix35
-rw-r--r--pkgs/development/python-modules/dissect-util/default.nix4
-rw-r--r--pkgs/development/python-modules/dissect-vmfs/default.nix6
-rw-r--r--pkgs/development/python-modules/dissect-volume/default.nix6
-rw-r--r--pkgs/development/python-modules/dissect-xfs/default.nix39
-rw-r--r--pkgs/development/python-modules/dissect/default.nix84
-rw-r--r--pkgs/development/python-modules/distributed/default.nix8
-rw-r--r--pkgs/development/python-modules/dj-rest-auth/default.nix67
-rw-r--r--pkgs/development/python-modules/django-allauth/default.nix7
-rw-r--r--pkgs/development/python-modules/django-auditlog/default.nix10
-rw-r--r--pkgs/development/python-modules/django-auth-ldap/default.nix4
-rw-r--r--pkgs/development/python-modules/django-bootstrap3/default.nix4
-rw-r--r--pkgs/development/python-modules/django-bootstrap4/default.nix4
-rw-r--r--pkgs/development/python-modules/django-bootstrap5/default.nix36
-rw-r--r--pkgs/development/python-modules/django-configurations/default.nix4
-rw-r--r--pkgs/development/python-modules/django-extensions/default.nix22
-rw-r--r--pkgs/development/python-modules/django-hierarkey/default.nix18
-rw-r--r--pkgs/development/python-modules/django-ipware/default.nix4
-rw-r--r--pkgs/development/python-modules/django-mailman3/default.nix27
-rw-r--r--pkgs/development/python-modules/django-model-utils/default.nix4
-rw-r--r--pkgs/development/python-modules/django-mysql/default.nix14
-rw-r--r--pkgs/development/python-modules/django-otp/default.nix4
-rw-r--r--pkgs/development/python-modules/django-statici18n/default.nix7
-rw-r--r--pkgs/development/python-modules/django/4.nix21
-rw-r--r--pkgs/development/python-modules/django/5.nix20
-rw-r--r--pkgs/development/python-modules/dkimpy/default.nix4
-rw-r--r--pkgs/development/python-modules/dm-control/default.nix98
-rw-r--r--pkgs/development/python-modules/dnfile/default.nix2
-rw-r--r--pkgs/development/python-modules/docformatter/default.nix6
-rw-r--r--pkgs/development/python-modules/docplex/default.nix16
-rw-r--r--pkgs/development/python-modules/docstr-coverage/default.nix4
-rw-r--r--pkgs/development/python-modules/docutils/default.nix34
-rw-r--r--pkgs/development/python-modules/dogpile-cache/default.nix4
-rw-r--r--pkgs/development/python-modules/dogtail/default.nix4
-rw-r--r--pkgs/development/python-modules/domeneshop/default.nix11
-rw-r--r--pkgs/development/python-modules/dramatiq/default.nix4
-rw-r--r--pkgs/development/python-modules/drawsvg/default.nix61
-rw-r--r--pkgs/development/python-modules/drf-spectacular/default.nix74
-rw-r--r--pkgs/development/python-modules/dronecan/default.nix2
-rw-r--r--pkgs/development/python-modules/dropbox/default.nix12
-rw-r--r--pkgs/development/python-modules/dtlssocket/default.nix4
-rw-r--r--pkgs/development/python-modules/duckdb/default.nix3
-rw-r--r--pkgs/development/python-modules/duckduckgo-search/default.nix96
-rw-r--r--pkgs/development/python-modules/dugong/default.nix2
-rw-r--r--pkgs/development/python-modules/dulwich/default.nix2
-rw-r--r--pkgs/development/python-modules/dvclive/default.nix4
-rw-r--r--pkgs/development/python-modules/dwdwfsapi/default.nix13
-rw-r--r--pkgs/development/python-modules/dynalite-panel/default.nix3
-rw-r--r--pkgs/development/python-modules/ecdsa/default.nix4
-rw-r--r--pkgs/development/python-modules/einops/default.nix4
-rw-r--r--pkgs/development/python-modules/elastic-transport/default.nix19
-rw-r--r--pkgs/development/python-modules/elasticsearch/default.nix4
-rw-r--r--pkgs/development/python-modules/elasticsearch8/default.nix4
-rw-r--r--pkgs/development/python-modules/emv/default.nix61
-rw-r--r--pkgs/development/python-modules/env-canada/default.nix13
-rw-r--r--pkgs/development/python-modules/equinox/default.nix17
-rw-r--r--pkgs/development/python-modules/exchangelib/default.nix4
-rw-r--r--pkgs/development/python-modules/execnb/default.nix37
-rw-r--r--pkgs/development/python-modules/execnet/default.nix4
-rw-r--r--pkgs/development/python-modules/faker/default.nix4
-rw-r--r--pkgs/development/python-modules/fakeredis/default.nix68
-rw-r--r--pkgs/development/python-modules/fastai/default.nix4
-rw-r--r--pkgs/development/python-modules/fastapi/default.nix4
-rw-r--r--pkgs/development/python-modules/fastbencode/default.nix33
-rw-r--r--pkgs/development/python-modules/fastcore/default.nix32
-rw-r--r--pkgs/development/python-modules/faster-fifo/default.nix8
-rw-r--r--pkgs/development/python-modules/faster-whisper/default.nix8
-rw-r--r--pkgs/development/python-modules/ffmpy/default.nix6
-rw-r--r--pkgs/development/python-modules/file-read-backwards/default.nix29
-rw-r--r--pkgs/development/python-modules/filedate/default.nix59
-rw-r--r--pkgs/development/python-modules/filelock/default.nix4
-rw-r--r--pkgs/development/python-modules/flask-appbuilder/default.nix2
-rw-r--r--pkgs/development/python-modules/flask/default.nix4
-rw-r--r--pkgs/development/python-modules/flax/default.nix8
-rw-r--r--pkgs/development/python-modules/flexmock/default.nix4
-rw-r--r--pkgs/development/python-modules/flow-record/default.nix53
-rw-r--r--pkgs/development/python-modules/fontbakery/default.nix4
-rw-r--r--pkgs/development/python-modules/fontbakery/tests.nix5
-rw-r--r--pkgs/development/python-modules/fontmake/default.nix6
-rw-r--r--pkgs/development/python-modules/fonttools/default.nix4
-rw-r--r--pkgs/development/python-modules/fpdf2/default.nix3
-rw-r--r--pkgs/development/python-modules/fpylll/default.nix5
-rw-r--r--pkgs/development/python-modules/frozendict/default.nix4
-rw-r--r--pkgs/development/python-modules/functools32/default.nix22
-rw-r--r--pkgs/development/python-modules/fuzzytm/default.nix34
-rw-r--r--pkgs/development/python-modules/fyta-cli/default.nix4
-rw-r--r--pkgs/development/python-modules/gamble/default.nix21
-rw-r--r--pkgs/development/python-modules/gcal-sync/default.nix4
-rw-r--r--pkgs/development/python-modules/gcovr/default.nix2
-rw-r--r--pkgs/development/python-modules/gdown/default.nix4
-rw-r--r--pkgs/development/python-modules/gemfileparser/default.nix37
-rw-r--r--pkgs/development/python-modules/gensim/default.nix11
-rw-r--r--pkgs/development/python-modules/geoalchemy2/default.nix4
-rw-r--r--pkgs/development/python-modules/geventhttpclient/default.nix42
-rw-r--r--pkgs/development/python-modules/gflanguages/default.nix4
-rw-r--r--pkgs/development/python-modules/gguf/default.nix33
-rw-r--r--pkgs/development/python-modules/gipc/default.nix54
-rw-r--r--pkgs/development/python-modules/glean-parser/default.nix6
-rw-r--r--pkgs/development/python-modules/glob2/default.nix2
-rw-r--r--pkgs/development/python-modules/globre/default.nix29
-rw-r--r--pkgs/development/python-modules/globus-sdk/default.nix26
-rw-r--r--pkgs/development/python-modules/glymur/default.nix47
-rw-r--r--pkgs/development/python-modules/glymur/set-lib-paths.patch16
-rw-r--r--pkgs/development/python-modules/glyphsets/default.nix6
-rw-r--r--pkgs/development/python-modules/glyphslib/default.nix4
-rw-r--r--pkgs/development/python-modules/gmpy/default.nix31
-rw-r--r--pkgs/development/python-modules/gmpy2/default.nix78
-rw-r--r--pkgs/development/python-modules/goodwe/default.nix4
-rw-r--r--pkgs/development/python-modules/google-ai-generativelanguage/default.nix4
-rw-r--r--pkgs/development/python-modules/google-auth/default.nix4
-rw-r--r--pkgs/development/python-modules/google-cloud-bigquery-storage/default.nix4
-rw-r--r--pkgs/development/python-modules/google-cloud-bigquery/default.nix8
-rw-r--r--pkgs/development/python-modules/google-cloud-dlp/default.nix4
-rw-r--r--pkgs/development/python-modules/google-cloud-iam/default.nix9
-rw-r--r--pkgs/development/python-modules/google-cloud-kms/default.nix4
-rw-r--r--pkgs/development/python-modules/google-generativeai/default.nix4
-rw-r--r--pkgs/development/python-modules/gotailwind/default.nix59
-rw-r--r--pkgs/development/python-modules/govee-local-api/default.nix15
-rw-r--r--pkgs/development/python-modules/gpapi/default.nix2
-rw-r--r--pkgs/development/python-modules/gpaw/default.nix5
-rw-r--r--pkgs/development/python-modules/gradio/client.nix10
-rw-r--r--pkgs/development/python-modules/gradio/default.nix6
-rw-r--r--pkgs/development/python-modules/griffe/default.nix4
-rw-r--r--pkgs/development/python-modules/grpcio-channelz/default.nix4
-rw-r--r--pkgs/development/python-modules/grpcio-status/default.nix4
-rw-r--r--pkgs/development/python-modules/grpcio-testing/default.nix4
-rw-r--r--pkgs/development/python-modules/grpcio-tools/default.nix4
-rw-r--r--pkgs/development/python-modules/grpcio/default.nix4
-rw-r--r--pkgs/development/python-modules/gst-python/default.nix4
-rw-r--r--pkgs/development/python-modules/gurobipy/default.nix14
-rw-r--r--pkgs/development/python-modules/h5py/default.nix19
-rw-r--r--pkgs/development/python-modules/h5py/mpi4py-requirement.patch13
-rw-r--r--pkgs/development/python-modules/habluetooth/default.nix12
-rw-r--r--pkgs/development/python-modules/hass-nabucasa/default.nix4
-rw-r--r--pkgs/development/python-modules/hatchling/default.nix4
-rw-r--r--pkgs/development/python-modules/hawkauthlib/default.nix37
-rw-r--r--pkgs/development/python-modules/hcs-utils/default.nix4
-rw-r--r--pkgs/development/python-modules/heatzypy/default.nix40
-rw-r--r--pkgs/development/python-modules/hid/default.nix28
-rw-r--r--pkgs/development/python-modules/hikari-lightbulb/default.nix48
-rw-r--r--pkgs/development/python-modules/hikari/default.nix4
-rw-r--r--pkgs/development/python-modules/hikvision/default.nix34
-rw-r--r--pkgs/development/python-modules/hiyapyco/default.nix4
-rw-r--r--pkgs/development/python-modules/hjson/default.nix35
-rw-r--r--pkgs/development/python-modules/holidays/default.nix4
-rw-r--r--pkgs/development/python-modules/homematicip/default.nix113
-rw-r--r--pkgs/development/python-modules/hstspreload/default.nix23
-rw-r--r--pkgs/development/python-modules/html-text/default.nix40
-rw-r--r--pkgs/development/python-modules/html2text/default.nix24
-rw-r--r--pkgs/development/python-modules/htseq/default.nix72
-rw-r--r--pkgs/development/python-modules/http-parser/default.nix36
-rw-r--r--pkgs/development/python-modules/httpcore/default.nix7
-rw-r--r--pkgs/development/python-modules/httpserver/default.nix5
-rw-r--r--pkgs/development/python-modules/httpx-ws/default.nix68
-rw-r--r--pkgs/development/python-modules/humanfriendly/default.nix4
-rw-r--r--pkgs/development/python-modules/hurry-filesize/default.nix5
-rw-r--r--pkgs/development/python-modules/hvac/default.nix4
-rw-r--r--pkgs/development/python-modules/hypercorn/default.nix32
-rw-r--r--pkgs/development/python-modules/hypothesis/default.nix4
-rw-r--r--pkgs/development/python-modules/iapws/default.nix4
-rw-r--r--pkgs/development/python-modules/ibis-framework/default.nix17
-rw-r--r--pkgs/development/python-modules/ibm-cloud-sdk-core/default.nix4
-rw-r--r--pkgs/development/python-modules/ical/default.nix41
-rw-r--r--pkgs/development/python-modules/idna/default.nix9
-rw-r--r--pkgs/development/python-modules/ifcopenshell/default.nix6
-rw-r--r--pkgs/development/python-modules/igraph/default.nix4
-rw-r--r--pkgs/development/python-modules/ihm/default.nix4
-rw-r--r--pkgs/development/python-modules/imgtool/default.nix4
-rw-r--r--pkgs/development/python-modules/importlib-metadata/default.nix9
-rw-r--r--pkgs/development/python-modules/importlib-resources/default.nix9
-rw-r--r--pkgs/development/python-modules/indexed-zstd/default.nix4
-rw-r--r--pkgs/development/python-modules/inflect/default.nix12
-rw-r--r--pkgs/development/python-modules/influxdb/default.nix50
-rw-r--r--pkgs/development/python-modules/inform/default.nix4
-rw-r--r--pkgs/development/python-modules/intbitset/default.nix25
-rw-r--r--pkgs/development/python-modules/internetarchive/default.nix4
-rw-r--r--pkgs/development/python-modules/ipykernel/default.nix4
-rw-r--r--pkgs/development/python-modules/ipympl/default.nix6
-rw-r--r--pkgs/development/python-modules/ipynbname/default.nix13
-rw-r--r--pkgs/development/python-modules/ipython/default.nix5
-rw-r--r--pkgs/development/python-modules/ipyvue/default.nix16
-rw-r--r--pkgs/development/python-modules/isal/default.nix67
-rw-r--r--pkgs/development/python-modules/islpy/default.nix74
-rw-r--r--pkgs/development/python-modules/iterable-io/default.nix37
-rw-r--r--pkgs/development/python-modules/itsdangerous/default.nix15
-rw-r--r--pkgs/development/python-modules/jaraco-collections/default.nix4
-rw-r--r--pkgs/development/python-modules/jaraco-functools/default.nix14
-rw-r--r--pkgs/development/python-modules/jax/default.nix12
-rw-r--r--pkgs/development/python-modules/jaxlib/bin.nix67
-rw-r--r--pkgs/development/python-modules/jaxlib/default.nix40
-rw-r--r--pkgs/development/python-modules/jaxopt/default.nix20
-rw-r--r--pkgs/development/python-modules/jenkins-job-builder/default.nix4
-rw-r--r--pkgs/development/python-modules/jinja2/default.nix16
-rw-r--r--pkgs/development/python-modules/jiwer/default.nix12
-rw-r--r--pkgs/development/python-modules/joblib/default.nix13
-rw-r--r--pkgs/development/python-modules/jpylyzer/default.nix15
-rw-r--r--pkgs/development/python-modules/json-logging/default.nix23
-rw-r--r--pkgs/development/python-modules/json-schema-for-humans/default.nix58
-rw-r--r--pkgs/development/python-modules/json-stream-rs-tokenizer/default.nix4
-rw-r--r--pkgs/development/python-modules/jsonpickle/default.nix4
-rw-r--r--pkgs/development/python-modules/jupyter-collaboration/default.nix6
-rw-r--r--pkgs/development/python-modules/jupyter-core/default.nix5
-rw-r--r--pkgs/development/python-modules/jupytext/default.nix13
-rw-r--r--pkgs/development/python-modules/justext/default.nix4
-rw-r--r--pkgs/development/python-modules/kasa-crypt/default.nix35
-rw-r--r--pkgs/development/python-modules/kazoo/default.nix4
-rw-r--r--pkgs/development/python-modules/keras/default.nix6
-rw-r--r--pkgs/development/python-modules/keyrings-alt/default.nix6
-rw-r--r--pkgs/development/python-modules/kombu/default.nix4
-rw-r--r--pkgs/development/python-modules/kornia-rs/default.nix4
-rw-r--r--pkgs/development/python-modules/lacuscore/default.nix4
-rw-r--r--pkgs/development/python-modules/langchain-community/default.nix4
-rw-r--r--pkgs/development/python-modules/langchain-core/default.nix4
-rw-r--r--pkgs/development/python-modules/langchain-text-splitters/default.nix29
-rw-r--r--pkgs/development/python-modules/langchain/default.nix8
-rw-r--r--pkgs/development/python-modules/langsmith/default.nix4
-rw-r--r--pkgs/development/python-modules/language-data/default.nix46
-rw-r--r--pkgs/development/python-modules/latex2mathml/default.nix6
-rw-r--r--pkgs/development/python-modules/ldappool/default.nix58
-rw-r--r--pkgs/development/python-modules/ledgerblue/default.nix23
-rw-r--r--pkgs/development/python-modules/lib4sbom/default.nix61
-rw-r--r--pkgs/development/python-modules/libarcus/default.nix4
-rw-r--r--pkgs/development/python-modules/libgravatar/default.nix37
-rw-r--r--pkgs/development/python-modules/libretranslate/default.nix4
-rw-r--r--pkgs/development/python-modules/librosa/default.nix34
-rw-r--r--pkgs/development/python-modules/lightning-utilities/default.nix16
-rw-r--r--pkgs/development/python-modules/limnoria/default.nix4
-rw-r--r--pkgs/development/python-modules/line-profiler/default.nix4
-rw-r--r--pkgs/development/python-modules/linknlink/default.nix4
-rw-r--r--pkgs/development/python-modules/litellm/default.nix4
-rw-r--r--pkgs/development/python-modules/llama-index-agent-openai/default.nix4
-rw-r--r--pkgs/development/python-modules/llama-index-core/default.nix4
-rw-r--r--pkgs/development/python-modules/llama-index-llms-openai/default.nix4
-rw-r--r--pkgs/development/python-modules/llama-index-multi-modal-llms-openai/default.nix4
-rw-r--r--pkgs/development/python-modules/llama-index-readers-database/default.nix4
-rw-r--r--pkgs/development/python-modules/llama-index-readers-file/default.nix4
-rw-r--r--pkgs/development/python-modules/llama-index-vector-stores-chroma/default.nix4
-rw-r--r--pkgs/development/python-modules/llama-parse/default.nix29
-rw-r--r--pkgs/development/python-modules/llm/default.nix4
-rw-r--r--pkgs/development/python-modules/lmfit/default.nix17
-rw-r--r--pkgs/development/python-modules/loadcredential/default.nix34
-rw-r--r--pkgs/development/python-modules/localzone/default.nix35
-rw-r--r--pkgs/development/python-modules/lockfile/default.nix15
-rw-r--r--pkgs/development/python-modules/logilab/common.nix44
-rw-r--r--pkgs/development/python-modules/logutils/default.nix27
-rw-r--r--pkgs/development/python-modules/loopy/default.nix61
-rw-r--r--pkgs/development/python-modules/losant-rest/default.nix38
-rw-r--r--pkgs/development/python-modules/lsassy/default.nix4
-rw-r--r--pkgs/development/python-modules/m2crypto/default.nix52
-rw-r--r--pkgs/development/python-modules/maestral/default.nix10
-rw-r--r--pkgs/development/python-modules/magic-wormhole-mailbox-server/default.nix39
-rw-r--r--pkgs/development/python-modules/magic-wormhole-transit-relay/default.nix25
-rw-r--r--pkgs/development/python-modules/magic-wormhole/default.nix16
-rw-r--r--pkgs/development/python-modules/magika/default.nix4
-rw-r--r--pkgs/development/python-modules/mahotas/default.nix6
-rw-r--r--pkgs/development/python-modules/mako/default.nix4
-rw-r--r--pkgs/development/python-modules/malduck/default.nix60
-rw-r--r--pkgs/development/python-modules/mandown/default.nix7
-rw-r--r--pkgs/development/python-modules/manim-slides/default.nix4
-rw-r--r--pkgs/development/python-modules/markdown/default.nix16
-rw-r--r--pkgs/development/python-modules/marshmallow-dataclass/default.nix4
-rw-r--r--pkgs/development/python-modules/marshmallow-enum/default.nix43
-rw-r--r--pkgs/development/python-modules/mat2/default.nix4
-rw-r--r--pkgs/development/python-modules/matlink-gpapi/default.nix2
-rw-r--r--pkgs/development/python-modules/matplotlib-inline/default.nix26
-rw-r--r--pkgs/development/python-modules/matplotlib/default.nix33
-rw-r--r--pkgs/development/python-modules/maxminddb/default.nix4
-rw-r--r--pkgs/development/python-modules/mayavi/default.nix7
-rw-r--r--pkgs/development/python-modules/mdformat-mkdocs/default.nix4
-rw-r--r--pkgs/development/python-modules/mdtraj/default.nix30
-rw-r--r--pkgs/development/python-modules/mecab-python3/default.nix7
-rw-r--r--pkgs/development/python-modules/mechanize/default.nix44
-rw-r--r--pkgs/development/python-modules/meilisearch/default.nix31
-rw-r--r--pkgs/development/python-modules/memestra/default.nix3
-rw-r--r--pkgs/development/python-modules/memory-allocator/default.nix5
-rw-r--r--pkgs/development/python-modules/meraki/default.nix4
-rw-r--r--pkgs/development/python-modules/meson-python/default.nix4
-rw-r--r--pkgs/development/python-modules/miasm/0001-setup.py-use-valid-semver.patch26
-rw-r--r--pkgs/development/python-modules/miasm/0002-core-remove-IDAPython-dependency.patch65
-rw-r--r--pkgs/development/python-modules/miasm/default.nix58
-rw-r--r--pkgs/development/python-modules/minari/default.nix88
-rw-r--r--pkgs/development/python-modules/mindsdb-evaluator/default.nix4
-rw-r--r--pkgs/development/python-modules/minidb/default.nix29
-rw-r--r--pkgs/development/python-modules/mizani/default.nix8
-rw-r--r--pkgs/development/python-modules/mkdocs-git-authors-plugin/default.nix4
-rw-r--r--pkgs/development/python-modules/mkdocs-git-revision-date-localized-plugin/default.nix4
-rw-r--r--pkgs/development/python-modules/mkdocs-rss-plugin/default.nix4
-rw-r--r--pkgs/development/python-modules/mkdocs-swagger-ui-tag/default.nix4
-rw-r--r--pkgs/development/python-modules/mkdocstrings-python/default.nix4
-rw-r--r--pkgs/development/python-modules/mkdocstrings/default.nix4
-rw-r--r--pkgs/development/python-modules/mlflow/default.nix4
-rw-r--r--pkgs/development/python-modules/mock-open/default.nix11
-rw-r--r--pkgs/development/python-modules/mocket/default.nix4
-rw-r--r--pkgs/development/python-modules/monty/default.nix4
-rw-r--r--pkgs/development/python-modules/mpegdash/default.nix36
-rw-r--r--pkgs/development/python-modules/mplhep/default.nix4
-rw-r--r--pkgs/development/python-modules/mpmath/default.nix5
-rw-r--r--pkgs/development/python-modules/msgraph-sdk/default.nix4
-rw-r--r--pkgs/development/python-modules/mujoco/default.nix4
-rw-r--r--pkgs/development/python-modules/mypy-protobuf/default.nix60
-rw-r--r--pkgs/development/python-modules/myst-docutils/default.nix4
-rw-r--r--pkgs/development/python-modules/myst-parser/default.nix15
-rw-r--r--pkgs/development/python-modules/nanobind/default.nix6
-rw-r--r--pkgs/development/python-modules/nanomsg-python/default.nix19
-rw-r--r--pkgs/development/python-modules/nanotime/default.nix25
-rw-r--r--pkgs/development/python-modules/napari-console/default.nix43
-rw-r--r--pkgs/development/python-modules/napari/default.nix94
-rw-r--r--pkgs/development/python-modules/nats-python/default.nix37
-rw-r--r--pkgs/development/python-modules/naturalsort/default.nix24
-rw-r--r--pkgs/development/python-modules/nbconvert/default.nix4
-rw-r--r--pkgs/development/python-modules/nbdev/default.nix4
-rw-r--r--pkgs/development/python-modules/nbmake/default.nix74
-rw-r--r--pkgs/development/python-modules/nbsphinx/default.nix13
-rw-r--r--pkgs/development/python-modules/neo/default.nix4
-rw-r--r--pkgs/development/python-modules/netcdf4/default.nix6
-rw-r--r--pkgs/development/python-modules/nethsm/default.nix4
-rw-r--r--pkgs/development/python-modules/nettigo-air-monitor/default.nix4
-rw-r--r--pkgs/development/python-modules/netutils/default.nix4
-rw-r--r--pkgs/development/python-modules/networkx/default.nix9
-rw-r--r--pkgs/development/python-modules/niaaml/default.nix4
-rw-r--r--pkgs/development/python-modules/nidaqmx/default.nix4
-rw-r--r--pkgs/development/python-modules/nilearn/default.nix4
-rw-r--r--pkgs/development/python-modules/nocasedict/default.nix4
-rw-r--r--pkgs/development/python-modules/nocaselist/default.nix4
-rw-r--r--pkgs/development/python-modules/noiseprotocol/default.nix23
-rw-r--r--pkgs/development/python-modules/normality/default.nix43
-rw-r--r--pkgs/development/python-modules/nose-xunitmp/default.nix39
-rw-r--r--pkgs/development/python-modules/numexpr/default.nix50
-rw-r--r--pkgs/development/python-modules/numpy/default.nix7
-rw-r--r--pkgs/development/python-modules/numpyro/default.nix13
-rw-r--r--pkgs/development/python-modules/objax/default.nix10
-rw-r--r--pkgs/development/python-modules/objax/replace-deprecated-device_buffers.patch14
-rw-r--r--pkgs/development/python-modules/oci/default.nix4
-rw-r--r--pkgs/development/python-modules/oelint-parser/default.nix4
-rw-r--r--pkgs/development/python-modules/oemthermostat/default.nix38
-rw-r--r--pkgs/development/python-modules/okta/default.nix4
-rw-r--r--pkgs/development/python-modules/ollama/default.nix4
-rw-r--r--pkgs/development/python-modules/ome-zarr/default.nix21
-rw-r--r--pkgs/development/python-modules/open-clip-torch/default.nix2
-rw-r--r--pkgs/development/python-modules/openai-triton/default.nix2
-rw-r--r--pkgs/development/python-modules/openai-whisper/default.nix6
-rw-r--r--pkgs/development/python-modules/openai/default.nix4
-rw-r--r--pkgs/development/python-modules/opencensus-ext-azure/default.nix3
-rw-r--r--pkgs/development/python-modules/openrazer/daemon.nix2
-rw-r--r--pkgs/development/python-modules/openusd/default.nix5
-rw-r--r--pkgs/development/python-modules/openwrt-ubus-rpc/default.nix27
-rw-r--r--pkgs/development/python-modules/opower/default.nix4
-rw-r--r--pkgs/development/python-modules/optimum/default.nix4
-rw-r--r--pkgs/development/python-modules/optree/default.nix60
-rw-r--r--pkgs/development/python-modules/opuslib/default.nix17
-rw-r--r--pkgs/development/python-modules/oracledb/default.nix34
-rw-r--r--pkgs/development/python-modules/orange-canvas-core/default.nix4
-rw-r--r--pkgs/development/python-modules/orange-widget-base/default.nix4
-rw-r--r--pkgs/development/python-modules/orange3/default.nix40
-rw-r--r--pkgs/development/python-modules/orjson/default.nix8
-rw-r--r--pkgs/development/python-modules/osc-sdk-python/default.nix19
-rw-r--r--pkgs/development/python-modules/outcome/default.nix3
-rw-r--r--pkgs/development/python-modules/owslib/default.nix8
-rw-r--r--pkgs/development/python-modules/paddle2onnx/default.nix4
-rw-r--r--pkgs/development/python-modules/pandas-datareader/default.nix21
-rw-r--r--pkgs/development/python-modules/panel/default.nix6
-rw-r--r--pkgs/development/python-modules/parametrize-from-file/default.nix4
-rw-r--r--pkgs/development/python-modules/parsedmarc/default.nix4
-rw-r--r--pkgs/development/python-modules/parsel/default.nix4
-rw-r--r--pkgs/development/python-modules/parso/default.nix4
-rw-r--r--pkgs/development/python-modules/paste/default.nix4
-rw-r--r--pkgs/development/python-modules/path/default.nix4
-rw-r--r--pkgs/development/python-modules/pathlib/default.nix27
-rw-r--r--pkgs/development/python-modules/pathlib2/default.nix4
-rw-r--r--pkgs/development/python-modules/paypalhttp/default.nix5
-rw-r--r--pkgs/development/python-modules/pcffont/default.nix44
-rw-r--r--pkgs/development/python-modules/pdm-backend/default.nix12
-rw-r--r--pkgs/development/python-modules/peaqevcore/default.nix4
-rw-r--r--pkgs/development/python-modules/peco/default.nix31
-rw-r--r--pkgs/development/python-modules/peewee/default.nix55
-rw-r--r--pkgs/development/python-modules/pettingzoo/default.nix135
-rw-r--r--pkgs/development/python-modules/pexpect/default.nix5
-rw-r--r--pkgs/development/python-modules/pg8000/default.nix16
-rw-r--r--pkgs/development/python-modules/pgspecial/default.nix34
-rw-r--r--pkgs/development/python-modules/phe/default.nix49
-rw-r--r--pkgs/development/python-modules/phik/default.nix48
-rw-r--r--pkgs/development/python-modules/phonenumbers/default.nix4
-rw-r--r--pkgs/development/python-modules/phonopy/default.nix4
-rw-r--r--pkgs/development/python-modules/phunspell/default.nix53
-rw-r--r--pkgs/development/python-modules/pickleshare/default.nix5
-rw-r--r--pkgs/development/python-modules/piep/default.nix2
-rw-r--r--pkgs/development/python-modules/pikepdf/default.nix4
-rw-r--r--pkgs/development/python-modules/pikepdf/paths.patch16
-rw-r--r--pkgs/development/python-modules/pillow/default.nix8
-rw-r--r--pkgs/development/python-modules/pinecone-client/default.nix49
-rw-r--r--pkgs/development/python-modules/pipdeptree/default.nix10
-rw-r--r--pkgs/development/python-modules/pipenv-poetry-migrate/default.nix4
-rw-r--r--pkgs/development/python-modules/pipetools/default.nix32
-rw-r--r--pkgs/development/python-modules/pixel-font-builder/default.nix18
-rw-r--r--pkgs/development/python-modules/plaid-python/default.nix4
-rw-r--r--pkgs/development/python-modules/plantuml-markdown/default.nix4
-rw-r--r--pkgs/development/python-modules/playwright/default.nix2
-rw-r--r--pkgs/development/python-modules/playwrightcapture/default.nix4
-rw-r--r--pkgs/development/python-modules/plotly/default.nix4
-rw-r--r--pkgs/development/python-modules/plotnine/default.nix10
-rw-r--r--pkgs/development/python-modules/plugwise/default.nix4
-rw-r--r--pkgs/development/python-modules/portion/default.nix49
-rw-r--r--pkgs/development/python-modules/pplpy/default.nix5
-rw-r--r--pkgs/development/python-modules/pretty-errors/default.nix40
-rw-r--r--pkgs/development/python-modules/primecountpy/default.nix5
-rw-r--r--pkgs/development/python-modules/private-gpt/default.nix119
-rw-r--r--pkgs/development/python-modules/prometrix/default.nix46
-rw-r--r--pkgs/development/python-modules/proxy-py/default.nix4
-rw-r--r--pkgs/development/python-modules/psycopg2cffi/default.nix49
-rw-r--r--pkgs/development/python-modules/publicsuffixlist/default.nix4
-rw-r--r--pkgs/development/python-modules/pubnub/default.nix4
-rw-r--r--pkgs/development/python-modules/pure-cdb/default.nix3
-rw-r--r--pkgs/development/python-modules/puremagic/default.nix30
-rw-r--r--pkgs/development/python-modules/pvlib/default.nix57
-rw-r--r--pkgs/development/python-modules/pwkit/default.nix40
-rw-r--r--pkgs/development/python-modules/pxml/default.nix37
-rw-r--r--pkgs/development/python-modules/py-libzfs/default.nix12
-rw-r--r--pkgs/development/python-modules/py-multihash/default.nix3
-rw-r--r--pkgs/development/python-modules/py-synologydsm-api/default.nix4
-rw-r--r--pkgs/development/python-modules/py-zabbix/default.nix31
-rw-r--r--pkgs/development/python-modules/py65/default.nix36
-rw-r--r--pkgs/development/python-modules/pyTelegramBotAPI/default.nix4
-rw-r--r--pkgs/development/python-modules/pyais/default.nix49
-rw-r--r--pkgs/development/python-modules/pyannote-core/default.nix42
-rw-r--r--pkgs/development/python-modules/pyannote-database/default.nix43
-rw-r--r--pkgs/development/python-modules/pyannote-pipeline/default.nix48
-rw-r--r--pkgs/development/python-modules/pyasn1/default.nix4
-rw-r--r--pkgs/development/python-modules/pyathena/default.nix4
-rw-r--r--pkgs/development/python-modules/pybrowserid/default.nix34
-rw-r--r--pkgs/development/python-modules/pycognito/default.nix57
-rw-r--r--pkgs/development/python-modules/pycomm3/default.nix47
-rw-r--r--pkgs/development/python-modules/pycparser/default.nix7
-rw-r--r--pkgs/development/python-modules/pycrdt-websocket/default.nix20
-rw-r--r--pkgs/development/python-modules/pycrdt/Cargo.lock141
-rw-r--r--pkgs/development/python-modules/pycrdt/default.nix11
-rw-r--r--pkgs/development/python-modules/pyct/default.nix4
-rw-r--r--pkgs/development/python-modules/pycups/default.nix4
-rw-r--r--pkgs/development/python-modules/pydeck/default.nix4
-rw-r--r--pkgs/development/python-modules/pyduotecno/default.nix4
-rw-r--r--pkgs/development/python-modules/pyelftools/default.nix29
-rw-r--r--pkgs/development/python-modules/pyenphase/default.nix4
-rw-r--r--pkgs/development/python-modules/pyerfa/default.nix21
-rw-r--r--pkgs/development/python-modules/pyexploitdb/default.nix32
-rw-r--r--pkgs/development/python-modules/pyfaidx/default.nix43
-rw-r--r--pkgs/development/python-modules/pyfakefs/default.nix6
-rw-r--r--pkgs/development/python-modules/pyftpdlib/default.nix37
-rw-r--r--pkgs/development/python-modules/pyfxa/default.nix8
-rw-r--r--pkgs/development/python-modules/pygame-sdl2/default.nix55
-rw-r--r--pkgs/development/python-modules/pyglet/default.nix2
-rw-r--r--pkgs/development/python-modules/pygobject/3.nix5
-rw-r--r--pkgs/development/python-modules/pygount/default.nix4
-rw-r--r--pkgs/development/python-modules/pygraphviz/default.nix6
-rw-r--r--pkgs/development/python-modules/pygsl/default.nix18
-rw-r--r--pkgs/development/python-modules/pyinsteon/default.nix48
-rw-r--r--pkgs/development/python-modules/pyipp/default.nix56
-rw-r--r--pkgs/development/python-modules/pyjet/default.nix35
-rw-r--r--pkgs/development/python-modules/pyjson5/default.nix44
-rw-r--r--pkgs/development/python-modules/pykalman/default.nix4
-rw-r--r--pkgs/development/python-modules/pykdtree/default.nix9
-rw-r--r--pkgs/development/python-modules/pykrakenapi/default.nix3
-rw-r--r--pkgs/development/python-modules/pylint/default.nix121
-rw-r--r--pkgs/development/python-modules/pylutron/default.nix26
-rw-r--r--pkgs/development/python-modules/pymarshal/default.nix2
-rw-r--r--pkgs/development/python-modules/pymatgen/default.nix4
-rw-r--r--pkgs/development/python-modules/pymc/default.nix4
-rw-r--r--pkgs/development/python-modules/pymdown-extensions/default.nix5
-rw-r--r--pkgs/development/python-modules/pymilter/default.nix20
-rw-r--r--pkgs/development/python-modules/pymongo/default.nix4
-rw-r--r--pkgs/development/python-modules/pymysql/default.nix10
-rw-r--r--pkgs/development/python-modules/pynetbox/default.nix2
-rw-r--r--pkgs/development/python-modules/pynmeagps/default.nix40
-rw-r--r--pkgs/development/python-modules/pynvml/default.nix7
-rw-r--r--pkgs/development/python-modules/pynws/default.nix49
-rw-r--r--pkgs/development/python-modules/pyomo/default.nix36
-rw-r--r--pkgs/development/python-modules/pyopenssl/default.nix8
-rw-r--r--pkgs/development/python-modules/pypass/default.nix4
-rw-r--r--pkgs/development/python-modules/pyphen/default.nix6
-rw-r--r--pkgs/development/python-modules/pypng/default.nix10
-rw-r--r--pkgs/development/python-modules/pyproject-metadata/default.nix17
-rw-r--r--pkgs/development/python-modules/pyqt-builder/default.nix6
-rw-r--r--pkgs/development/python-modules/pyqtgraph/default.nix6
-rw-r--r--pkgs/development/python-modules/pyrad/default.nix66
-rw-r--r--pkgs/development/python-modules/pyrainbird/default.nix59
-rw-r--r--pkgs/development/python-modules/pyramid-beaker/default.nix4
-rw-r--r--pkgs/development/python-modules/pyrisco/default.nix4
-rw-r--r--pkgs/development/python-modules/pyscard/default.nix70
-rw-r--r--pkgs/development/python-modules/pyscss/default.nix6
-rw-r--r--pkgs/development/python-modules/pysendfile/default.nix36
-rw-r--r--pkgs/development/python-modules/pyserial/default.nix5
-rw-r--r--pkgs/development/python-modules/pysigma-backend-insightidr/default.nix4
-rw-r--r--pkgs/development/python-modules/pysigma-backend-opensearch/default.nix42
-rw-r--r--pkgs/development/python-modules/pysimplegui/default.nix4
-rw-r--r--pkgs/development/python-modules/pyslurm/default.nix17
-rw-r--r--pkgs/development/python-modules/pysqlcipher3/default.nix4
-rw-r--r--pkgs/development/python-modules/pysqlitecipher/default.nix2
-rw-r--r--pkgs/development/python-modules/pystemd/default.nix3
-rw-r--r--pkgs/development/python-modules/pytado/default.nix4
-rw-r--r--pkgs/development/python-modules/pytapo/default.nix34
-rw-r--r--pkgs/development/python-modules/pytest-ansible/default.nix4
-rw-r--r--pkgs/development/python-modules/pytest-fixture-config/default.nix29
-rw-r--r--pkgs/development/python-modules/pytest-markdown-docs/default.nix48
-rw-r--r--pkgs/development/python-modules/pytest-mock/default.nix4
-rw-r--r--pkgs/development/python-modules/pytest-mpl/default.nix4
-rw-r--r--pkgs/development/python-modules/pytest-mypy/default.nix2
-rw-r--r--pkgs/development/python-modules/pytest-order/default.nix12
-rw-r--r--pkgs/development/python-modules/pytest-playwright/default.nix4
-rw-r--r--pkgs/development/python-modules/pytest-server-fixtures/default.nix43
-rw-r--r--pkgs/development/python-modules/pytest-shutil/default.nix45
-rw-r--r--pkgs/development/python-modules/pytest-virtualenv/default.nix46
-rw-r--r--pkgs/development/python-modules/python-creole/default.nix9
-rw-r--r--pkgs/development/python-modules/python-dbusmock/default.nix2
-rw-r--r--pkgs/development/python-modules/python-ecobee-api/default.nix32
-rw-r--r--pkgs/development/python-modules/python-glanceclient/default.nix73
-rw-r--r--pkgs/development/python-modules/python-homeassistant-analytics/default.nix3
-rw-r--r--pkgs/development/python-modules/python-hosts/default.nix4
-rw-r--r--pkgs/development/python-modules/python-ironicclient/default.nix4
-rw-r--r--pkgs/development/python-modules/python-jose/default.nix7
-rw-r--r--pkgs/development/python-modules/python-jsonrpc-server/default.nix7
-rw-r--r--pkgs/development/python-modules/python-keycloak/default.nix48
-rw-r--r--pkgs/development/python-modules/python-ldap/default.nix44
-rw-r--r--pkgs/development/python-modules/python-manilaclient/default.nix4
-rw-r--r--pkgs/development/python-modules/python-matter-server/default.nix4
-rw-r--r--pkgs/development/python-modules/python-musicpd/default.nix4
-rw-r--r--pkgs/development/python-modules/python-roborock/default.nix4
-rw-r--r--pkgs/development/python-modules/python-tado/default.nix34
-rw-r--r--pkgs/development/python-modules/python-telegram-bot/default.nix4
-rw-r--r--pkgs/development/python-modules/python3-gnutls/default.nix12
-rw-r--r--pkgs/development/python-modules/pytools/default.nix4
-rw-r--r--pkgs/development/python-modules/pytorch-lightning/default.nix4
-rw-r--r--pkgs/development/python-modules/pytrydan/default.nix47
-rw-r--r--pkgs/development/python-modules/pyvex/default.nix4
-rw-r--r--pkgs/development/python-modules/pyvista/default.nix4
-rw-r--r--pkgs/development/python-modules/pywavelets/default.nix45
-rw-r--r--pkgs/development/python-modules/pywbem/default.nix4
-rw-r--r--pkgs/development/python-modules/pywlroots/default.nix4
-rw-r--r--pkgs/development/python-modules/pyzufall/default.nix30
-rw-r--r--pkgs/development/python-modules/qcs-api-client/default.nix2
-rw-r--r--pkgs/development/python-modules/qcs-sdk-python/default.nix9
-rw-r--r--pkgs/development/python-modules/qdldl/default.nix4
-rw-r--r--pkgs/development/python-modules/qdrant-client/default.nix4
-rw-r--r--pkgs/development/python-modules/qrcode/default.nix3
-rw-r--r--pkgs/development/python-modules/qreactor/default.nix3
-rw-r--r--pkgs/development/python-modules/qtconsole/default.nix13
-rw-r--r--pkgs/development/python-modules/qtile/default.nix10
-rw-r--r--pkgs/development/python-modules/quantile-forest/default.nix4
-rw-r--r--pkgs/development/python-modules/queuelib/default.nix4
-rw-r--r--pkgs/development/python-modules/quil/default.nix4
-rw-r--r--pkgs/development/python-modules/rarfile/default.nix56
-rw-r--r--pkgs/development/python-modules/readme-renderer/default.nix12
-rw-r--r--pkgs/development/python-modules/redis-om/default.nix4
-rw-r--r--pkgs/development/python-modules/redis/default.nix4
-rw-r--r--pkgs/development/python-modules/referencing/default.nix46
-rw-r--r--pkgs/development/python-modules/relatorio/default.nix4
-rw-r--r--pkgs/development/python-modules/reolink-aio/default.nix33
-rw-r--r--pkgs/development/python-modules/reportlab-qrcode/default.nix49
-rw-r--r--pkgs/development/python-modules/reportlab/default.nix4
-rw-r--r--pkgs/development/python-modules/reproject/default.nix13
-rw-r--r--pkgs/development/python-modules/requests-mock/default.nix19
-rw-r--r--pkgs/development/python-modules/requirements-detector/default.nix14
-rw-r--r--pkgs/development/python-modules/resend/default.nix35
-rw-r--r--pkgs/development/python-modules/rich-rst/default.nix34
-rw-r--r--pkgs/development/python-modules/riscv-config/default.nix4
-rw-r--r--pkgs/development/python-modules/rlcard/default.nix77
-rw-r--r--pkgs/development/python-modules/rnginline/default.nix18
-rw-r--r--pkgs/development/python-modules/rns/default.nix31
-rw-r--r--pkgs/development/python-modules/roadlib/default.nix31
-rw-r--r--pkgs/development/python-modules/roadtx/default.nix39
-rw-r--r--pkgs/development/python-modules/rokuecp/default.nix59
-rw-r--r--pkgs/development/python-modules/rotary-embedding-torch/default.nix4
-rw-r--r--pkgs/development/python-modules/rpy2/default.nix10
-rw-r--r--pkgs/development/python-modules/rq/default.nix21
-rw-r--r--pkgs/development/python-modules/rst2pdf/default.nix8
-rw-r--r--pkgs/development/python-modules/rtsp-to-webrtc/default.nix37
-rw-r--r--pkgs/development/python-modules/s3fs/default.nix2
-rw-r--r--pkgs/development/python-modules/s3transfer/default.nix4
-rw-r--r--pkgs/development/python-modules/sacn/default.nix4
-rw-r--r--pkgs/development/python-modules/safety/default.nix8
-rw-r--r--pkgs/development/python-modules/sagemaker/default.nix4
-rw-r--r--pkgs/development/python-modules/samplerate/default.nix43
-rw-r--r--pkgs/development/python-modules/sarif-tools/default.nix69
-rw-r--r--pkgs/development/python-modules/scalene/default.nix21
-rw-r--r--pkgs/development/python-modules/schemdraw/default.nix14
-rw-r--r--pkgs/development/python-modules/schwifty/default.nix11
-rw-r--r--pkgs/development/python-modules/scikit-bio/default.nix85
-rw-r--r--pkgs/development/python-modules/scikit-build/default.nix2
-rw-r--r--pkgs/development/python-modules/scikit-learn/default.nix19
-rw-r--r--pkgs/development/python-modules/scikit-posthocs/default.nix9
-rw-r--r--pkgs/development/python-modules/scikit-rf/default.nix6
-rw-r--r--pkgs/development/python-modules/scipy/default.nix4
-rw-r--r--pkgs/development/python-modules/scooby/default.nix4
-rw-r--r--pkgs/development/python-modules/scrapy/default.nix11
-rw-r--r--pkgs/development/python-modules/sdkmanager/default.nix4
-rw-r--r--pkgs/development/python-modules/setuptools-gettext/default.nix41
-rw-r--r--pkgs/development/python-modules/setuptools/default.nix4
-rw-r--r--pkgs/development/python-modules/setuptools/setuptools-distutils-C++.patch32
-rw-r--r--pkgs/development/python-modules/shap/default.nix4
-rw-r--r--pkgs/development/python-modules/shimmy/default.nix92
-rw-r--r--pkgs/development/python-modules/shiv/default.nix4
-rw-r--r--pkgs/development/python-modules/sigstore-protobuf-specs/default.nix4
-rw-r--r--pkgs/development/python-modules/sigtools/default.nix3
-rw-r--r--pkgs/development/python-modules/simple-term-menu/default.nix3
-rw-r--r--pkgs/development/python-modules/skein/default.nix21
-rw-r--r--pkgs/development/python-modules/skytemple-ssb-debugger/default.nix4
-rw-r--r--pkgs/development/python-modules/slack-bolt/default.nix83
-rw-r--r--pkgs/development/python-modules/slack-sdk/default.nix55
-rw-r--r--pkgs/development/python-modules/slicedimage/default.nix5
-rw-r--r--pkgs/development/python-modules/slicer/default.nix30
-rw-r--r--pkgs/development/python-modules/smart-meter-texas/default.nix15
-rw-r--r--pkgs/development/python-modules/smart-open/default.nix11
-rw-r--r--pkgs/development/python-modules/smtpdfix/default.nix4
-rw-r--r--pkgs/development/python-modules/snakemake-storage-plugin-s3/default.nix4
-rw-r--r--pkgs/development/python-modules/snitun/default.nix100
-rw-r--r--pkgs/development/python-modules/snowflake-sqlalchemy/default.nix4
-rw-r--r--pkgs/development/python-modules/soco/default.nix4
-rw-r--r--pkgs/development/python-modules/softlayer/default.nix4
-rw-r--r--pkgs/development/python-modules/solax/default.nix8
-rw-r--r--pkgs/development/python-modules/speechrecognition/default.nix41
-rw-r--r--pkgs/development/python-modules/spglib/default.nix4
-rw-r--r--pkgs/development/python-modules/sphinx-autoapi/default.nix2
-rw-r--r--pkgs/development/python-modules/sphinx-autobuild/default.nix35
-rw-r--r--pkgs/development/python-modules/sphinx-autodoc-typehints/default.nix4
-rw-r--r--pkgs/development/python-modules/sphinx-intl/default.nix6
-rw-r--r--pkgs/development/python-modules/sphinx-jupyterbook-latex/default.nix2
-rw-r--r--pkgs/development/python-modules/sphinx-pytest/default.nix2
-rw-r--r--pkgs/development/python-modules/sphinx-rtd-theme/default.nix5
-rw-r--r--pkgs/development/python-modules/sphinx/default.nix23
-rw-r--r--pkgs/development/python-modules/sphinxcontrib-confluencebuilder/default.nix4
-rw-r--r--pkgs/development/python-modules/sphinxcontrib-jquery/default.nix2
-rw-r--r--pkgs/development/python-modules/sphinxcontrib-tikz/default.nix4
-rw-r--r--pkgs/development/python-modules/sqlalchemy-utils/default.nix10
-rw-r--r--pkgs/development/python-modules/sqlalchemy/default.nix4
-rw-r--r--pkgs/development/python-modules/sqlbag/default.nix7
-rw-r--r--pkgs/development/python-modules/sqlite-anyio/default.nix42
-rw-r--r--pkgs/development/python-modules/sqlmap/default.nix4
-rw-r--r--pkgs/development/python-modules/sqlparse/default.nix18
-rw-r--r--pkgs/development/python-modules/sqlsoup/default.nix23
-rw-r--r--pkgs/development/python-modules/srt/default.nix3
-rw-r--r--pkgs/development/python-modules/stack-data/default.nix34
-rw-r--r--pkgs/development/python-modules/starlette-wtf/default.nix6
-rw-r--r--pkgs/development/python-modules/stashy/default.nix2
-rw-r--r--pkgs/development/python-modules/statsmodels/default.nix18
-rw-r--r--pkgs/development/python-modules/stdlibs/default.nix25
-rw-r--r--pkgs/development/python-modules/stem/default.nix9
-rw-r--r--pkgs/development/python-modules/stickytape/default.nix6
-rw-r--r--pkgs/development/python-modules/stim/default.nix2
-rw-r--r--pkgs/development/python-modules/stix2-patterns/default.nix35
-rw-r--r--pkgs/development/python-modules/strct/default.nix27
-rw-r--r--pkgs/development/python-modules/streamlit/default.nix4
-rw-r--r--pkgs/development/python-modules/streamz/default.nix22
-rw-r--r--pkgs/development/python-modules/stripe/default.nix4
-rw-r--r--pkgs/development/python-modules/succulent/default.nix9
-rw-r--r--pkgs/development/python-modules/sunpy/default.nix4
-rw-r--r--pkgs/development/python-modules/superqt/default.nix60
-rw-r--r--pkgs/development/python-modules/sympy/default.nix5
-rw-r--r--pkgs/development/python-modules/tablib/default.nix4
-rw-r--r--pkgs/development/python-modules/tabula-py/default.nix47
-rw-r--r--pkgs/development/python-modules/tencentcloud-sdk-python/default.nix4
-rw-r--r--pkgs/development/python-modules/tensordict/default.nix11
-rw-r--r--pkgs/development/python-modules/tensorflow/bin.nix8
-rw-r--r--pkgs/development/python-modules/tensorflow/default.nix19
-rw-r--r--pkgs/development/python-modules/tesla-fleet-api/default.nix29
-rw-r--r--pkgs/development/python-modules/testcontainers/default.nix6
-rw-r--r--pkgs/development/python-modules/textdistance/default.nix4
-rw-r--r--pkgs/development/python-modules/theano/default.nix2
-rw-r--r--pkgs/development/python-modules/thriftpy2/default.nix38
-rw-r--r--pkgs/development/python-modules/tidalapi/default.nix43
-rw-r--r--pkgs/development/python-modules/tifffile/default.nix4
-rw-r--r--pkgs/development/python-modules/timm/default.nix14
-rw-r--r--pkgs/development/python-modules/tinytuya/default.nix50
-rw-r--r--pkgs/development/python-modules/torch/bin.nix6
-rw-r--r--pkgs/development/python-modules/torch/binary-hashes.nix107
-rw-r--r--pkgs/development/python-modules/torch/default.nix12
-rwxr-xr-xpkgs/development/python-modules/torch/prefetch.sh7
-rw-r--r--pkgs/development/python-modules/torchaudio/bin.nix28
-rw-r--r--pkgs/development/python-modules/torchaudio/binary-hashes.nix107
-rw-r--r--pkgs/development/python-modules/torchaudio/default.nix6
-rwxr-xr-xpkgs/development/python-modules/torchaudio/prefetch.sh7
-rw-r--r--pkgs/development/python-modules/torchmetrics/default.nix8
-rw-r--r--pkgs/development/python-modules/torchrl/default.nix37
-rw-r--r--pkgs/development/python-modules/torchsnapshot/default.nix71
-rw-r--r--pkgs/development/python-modules/torchvision/bin.nix6
-rw-r--r--pkgs/development/python-modules/torchvision/binary-hashes.nix103
-rw-r--r--pkgs/development/python-modules/torchvision/default.nix4
-rwxr-xr-xpkgs/development/python-modules/torchvision/prefetch.sh11
-rw-r--r--pkgs/development/python-modules/total-connect-client/default.nix37
-rw-r--r--pkgs/development/python-modules/tpm2-pytss/default.nix5
-rw-r--r--pkgs/development/python-modules/trafilatura/default.nix72
-rw-r--r--pkgs/development/python-modules/traitlets/default.nix4
-rw-r--r--pkgs/development/python-modules/transformers/default.nix6
-rw-r--r--pkgs/development/python-modules/transitions/default.nix4
-rw-r--r--pkgs/development/python-modules/trio-asyncio/default.nix29
-rw-r--r--pkgs/development/python-modules/trio-websocket/default.nix28
-rw-r--r--pkgs/development/python-modules/trio/default.nix26
-rw-r--r--pkgs/development/python-modules/trove-classifiers/default.nix4
-rw-r--r--pkgs/development/python-modules/truncnorm/default.nix44
-rw-r--r--pkgs/development/python-modules/trytond/default.nix4
-rw-r--r--pkgs/development/python-modules/tubes/default.nix31
-rw-r--r--pkgs/development/python-modules/type-infer/default.nix6
-rw-r--r--pkgs/development/python-modules/typer/default.nix18
-rw-r--r--pkgs/development/python-modules/types-beautifulsoup4/default.nix26
-rw-r--r--pkgs/development/python-modules/types-pillow/default.nix4
-rw-r--r--pkgs/development/python-modules/types-protobuf/default.nix4
-rw-r--r--pkgs/development/python-modules/types-pyopenssl/default.nix4
-rw-r--r--pkgs/development/python-modules/types-python-dateutil/default.nix4
-rw-r--r--pkgs/development/python-modules/types-pytz/default.nix4
-rw-r--r--pkgs/development/python-modules/types-pyyaml/default.nix4
-rw-r--r--pkgs/development/python-modules/types-s3transfer/default.nix4
-rw-r--r--pkgs/development/python-modules/types-setuptools/default.nix4
-rw-r--r--pkgs/development/python-modules/types-toml/default.nix4
-rw-r--r--pkgs/development/python-modules/types-ujson/default.nix21
-rw-r--r--pkgs/development/python-modules/typing-extensions/default.nix4
-rw-r--r--pkgs/development/python-modules/ucsmsdk/default.nix4
-rw-r--r--pkgs/development/python-modules/ufo2ft/default.nix6
-rw-r--r--pkgs/development/python-modules/unittest-xml-reporting/default.nix46
-rw-r--r--pkgs/development/python-modules/unstructured/default.nix4
-rw-r--r--pkgs/development/python-modules/uproot/default.nix10
-rw-r--r--pkgs/development/python-modules/uptime/default.nix25
-rw-r--r--pkgs/development/python-modules/uqbar/default.nix11
-rw-r--r--pkgs/development/python-modules/uvicorn/default.nix10
-rw-r--r--pkgs/development/python-modules/uxsim/add-qt-plugin-path-to-env.patch24
-rw-r--r--pkgs/development/python-modules/uxsim/default.nix69
-rw-r--r--pkgs/development/python-modules/validator-collection/default.nix8
-rw-r--r--pkgs/development/python-modules/validators/default.nix33
-rw-r--r--pkgs/development/python-modules/versioningit/default.nix4
-rw-r--r--pkgs/development/python-modules/virt-firmware/default.nix4
-rw-r--r--pkgs/development/python-modules/virtualenv-clone/default.nix2
-rw-r--r--pkgs/development/python-modules/virtualenv/default.nix4
-rw-r--r--pkgs/development/python-modules/waybackpy/default.nix34
-rw-r--r--pkgs/development/python-modules/wcmatch/default.nix4
-rw-r--r--pkgs/development/python-modules/weasel/default.nix1
-rw-r--r--pkgs/development/python-modules/weaviate-client/default.nix4
-rw-r--r--pkgs/development/python-modules/webauthn/default.nix4
-rw-r--r--pkgs/development/python-modules/webdataset/default.nix14
-rw-r--r--pkgs/development/python-modules/webexteamssdk/default.nix42
-rw-r--r--pkgs/development/python-modules/werkzeug/default.nix13
-rw-r--r--pkgs/development/python-modules/wheel-inspect/default.nix7
-rw-r--r--pkgs/development/python-modules/wheel/default.nix4
-rw-r--r--pkgs/development/python-modules/wheezy-template/default.nix4
-rw-r--r--pkgs/development/python-modules/willow/default.nix3
-rw-r--r--pkgs/development/python-modules/winacl/default.nix31
-rw-r--r--pkgs/development/python-modules/wktutils/default.nix66
-rw-r--r--pkgs/development/python-modules/wled/default.nix4
-rw-r--r--pkgs/development/python-modules/woob/default.nix11
-rw-r--r--pkgs/development/python-modules/wsgidav/default.nix45
-rw-r--r--pkgs/development/python-modules/wsgitools/default.nix24
-rw-r--r--pkgs/development/python-modules/wurlitzer/default.nix4
-rw-r--r--pkgs/development/python-modules/wxpython/4.2.nix4
-rw-r--r--pkgs/development/python-modules/xarray-dataclasses/default.nix6
-rw-r--r--pkgs/development/python-modules/xcffib/default.nix4
-rw-r--r--pkgs/development/python-modules/xdot/default.nix4
-rw-r--r--pkgs/development/python-modules/xiaomi-ble/default.nix54
-rw-r--r--pkgs/development/python-modules/xmldiff/default.nix8
-rw-r--r--pkgs/development/python-modules/xmlsec/default.nix4
-rw-r--r--pkgs/development/python-modules/xmltodict/default.nix2
-rw-r--r--pkgs/development/python-modules/yalexs/default.nix4
-rw-r--r--pkgs/development/python-modules/yamale/default.nix4
-rw-r--r--pkgs/development/python-modules/yapf/default.nix1
-rw-r--r--pkgs/development/python-modules/ydiff/default.nix10
-rw-r--r--pkgs/development/python-modules/yolink-api/default.nix4
-rw-r--r--pkgs/development/python-modules/youless-api/default.nix51
-rw-r--r--pkgs/development/python-modules/yq/default.nix4
-rw-r--r--pkgs/development/python-modules/ytmusicapi/default.nix31
-rw-r--r--pkgs/development/python-modules/zarr/default.nix4
-rw-r--r--pkgs/development/python-modules/zdaemon/default.nix4
-rw-r--r--pkgs/development/python-modules/zephyr-python-api/default.nix7
-rw-r--r--pkgs/development/python-modules/zha-quirks/default.nix4
-rw-r--r--pkgs/development/python-modules/zha/default.nix1
-rw-r--r--pkgs/development/python-modules/ziafont/default.nix9
-rw-r--r--pkgs/development/python-modules/ziamath/default.nix10
-rw-r--r--pkgs/development/python-modules/zigpy/default.nix11
-rw-r--r--pkgs/development/python-modules/zipp/default.nix4
-rw-r--r--pkgs/development/python-modules/zlib-ng/default.nix4
-rw-r--r--pkgs/development/r-modules/default.nix53
-rw-r--r--pkgs/development/r-modules/generic-builder.nix3
-rw-r--r--pkgs/development/ruby-modules/bundler/default.nix4
-rw-r--r--pkgs/development/ruby-modules/gem-config/default.nix18
-rw-r--r--pkgs/development/skaware-packages/build-skaware-package.nix5
-rw-r--r--pkgs/development/skaware-packages/execline/default.nix8
-rw-r--r--pkgs/development/skaware-packages/s6/default.nix8
-rw-r--r--pkgs/development/skaware-packages/tipidee/default.nix7
-rw-r--r--pkgs/development/tools/air/default.nix4
-rw-r--r--pkgs/development/tools/algolia-cli/default.nix4
-rw-r--r--pkgs/development/tools/altair-graphql-client/default.nix4
-rw-r--r--pkgs/development/tools/analysis/actionlint/default.nix6
-rw-r--r--pkgs/development/tools/analysis/cargo-tarpaulin/default.nix6
-rw-r--r--pkgs/development/tools/analysis/checkov/default.nix7
-rw-r--r--pkgs/development/tools/analysis/checkstyle/default.nix4
-rw-r--r--pkgs/development/tools/analysis/codeql/default.nix4
-rw-r--r--pkgs/development/tools/analysis/cvehound/default.nix4
-rw-r--r--pkgs/development/tools/analysis/frama-c/default.nix4
-rw-r--r--pkgs/development/tools/analysis/jacoco/default.nix4
-rw-r--r--pkgs/development/tools/analysis/randoop/default.nix4
-rw-r--r--pkgs/development/tools/analysis/snyk/default.nix6
-rw-r--r--pkgs/development/tools/analysis/stylelint/default.nix6
-rw-r--r--pkgs/development/tools/analysis/tflint-plugins/tflint-ruleset-aws.nix6
-rw-r--r--pkgs/development/tools/analysis/tflint-plugins/tflint-ruleset-google.nix6
-rw-r--r--pkgs/development/tools/analysis/tflint/default.nix6
-rw-r--r--pkgs/development/tools/analysis/tfsec/default.nix18
-rw-r--r--pkgs/development/tools/apko/default.nix6
-rw-r--r--pkgs/development/tools/argc/default.nix37
-rw-r--r--pkgs/development/tools/async-profiler/default.nix44
-rw-r--r--pkgs/development/tools/bacon/default.nix6
-rw-r--r--pkgs/development/tools/bazel-watcher/default.nix8
-rw-r--r--pkgs/development/tools/bearer/default.nix6
-rw-r--r--pkgs/development/tools/benthos/default.nix6
-rw-r--r--pkgs/development/tools/biome/default.nix8
-rw-r--r--pkgs/development/tools/bloom/default.nix2
-rw-r--r--pkgs/development/tools/bodyclose/default.nix13
-rw-r--r--pkgs/development/tools/build-managers/bob/default.nix19
-rw-r--r--pkgs/development/tools/build-managers/moon/default.nix6
-rw-r--r--pkgs/development/tools/build-managers/sbt/default.nix4
-rw-r--r--pkgs/development/tools/build-managers/scala-cli/sources.json10
-rw-r--r--pkgs/development/tools/buildah/default.nix4
-rw-r--r--pkgs/development/tools/buildkit/default.nix10
-rw-r--r--pkgs/development/tools/cambalache/default.nix18
-rw-r--r--pkgs/development/tools/cdecl/default.nix26
-rw-r--r--pkgs/development/tools/changie/default.nix6
-rw-r--r--pkgs/development/tools/check-jsonschema/default.nix4
-rw-r--r--pkgs/development/tools/click/default.nix4
-rw-r--r--pkgs/development/tools/coder/default.nix18
-rw-r--r--pkgs/development/tools/confluent-cli/default.nix10
-rw-r--r--pkgs/development/tools/continuous-integration/agola/default.nix6
-rw-r--r--pkgs/development/tools/continuous-integration/codeberg-pages/default.nix5
-rw-r--r--pkgs/development/tools/continuous-integration/codeberg-pages/disable_httptest.patch58
-rw-r--r--pkgs/development/tools/continuous-integration/drone/default.nix4
-rw-r--r--pkgs/development/tools/continuous-integration/gitea-actions-runner/default.nix6
-rw-r--r--pkgs/development/tools/continuous-integration/github-runner/default.nix4
-rw-r--r--pkgs/development/tools/continuous-integration/gitlab-runner/default.nix6
-rw-r--r--pkgs/development/tools/coursier/default.nix4
-rw-r--r--pkgs/development/tools/database/atlas/default.nix6
-rw-r--r--pkgs/development/tools/database/clickhouse-backup/default.nix6
-rw-r--r--pkgs/development/tools/database/litecli/default.nix5
-rw-r--r--pkgs/development/tools/database/sqlcl/default.nix4
-rw-r--r--pkgs/development/tools/database/sqlfluff/default.nix4
-rw-r--r--pkgs/development/tools/database/sqlitebrowser/default.nix4
-rw-r--r--pkgs/development/tools/devbox/default.nix4
-rw-r--r--pkgs/development/tools/devpi-client/default.nix73
-rw-r--r--pkgs/development/tools/devpi-server/default.nix8
-rw-r--r--pkgs/development/tools/doctl/default.nix4
-rw-r--r--pkgs/development/tools/documentation/gtk-doc/default.nix4
-rw-r--r--pkgs/development/tools/earthly/default.nix6
-rw-r--r--pkgs/development/tools/electron/binary/default.nix47
-rw-r--r--pkgs/development/tools/electron/binary/generic.nix4
-rw-r--r--pkgs/development/tools/electron/binary/info.json57
-rwxr-xr-xpkgs/development/tools/electron/binary/print-hashes.sh38
-rw-r--r--pkgs/development/tools/electron/common.nix2
-rw-r--r--pkgs/development/tools/electron/info.json3833
-rwxr-xr-xpkgs/development/tools/electron/update.py792
-rw-r--r--pkgs/development/tools/electron/wrapper.nix4
-rw-r--r--pkgs/development/tools/ent/default.nix14
-rw-r--r--pkgs/development/tools/faas-cli/default.nix4
-rw-r--r--pkgs/development/tools/firebase-tools/default.nix6
-rw-r--r--pkgs/development/tools/fsautocomplete/default.nix8
-rw-r--r--pkgs/development/tools/fsautocomplete/deps.nix34
-rw-r--r--pkgs/development/tools/gauge/default.nix6
-rw-r--r--pkgs/development/tools/ginkgo/default.nix4
-rw-r--r--pkgs/development/tools/git-ps-rs/default.nix6
-rw-r--r--pkgs/development/tools/glade/default.nix4
-rw-r--r--pkgs/development/tools/glamoroustoolkit/default.nix4
-rw-r--r--pkgs/development/tools/go-minimock/default.nix6
-rw-r--r--pkgs/development/tools/go-mockery/default.nix4
-rw-r--r--pkgs/development/tools/go-swagger/default.nix6
-rw-r--r--pkgs/development/tools/go-task/default.nix6
-rw-r--r--pkgs/development/tools/goconvey/default.nix6
-rw-r--r--pkgs/development/tools/goda/default.nix4
-rw-r--r--pkgs/development/tools/godot/4/default.nix4
-rw-r--r--pkgs/development/tools/golangci-lint/default.nix6
-rw-r--r--pkgs/development/tools/goperf/default.nix6
-rw-r--r--pkgs/development/tools/goresym/default.nix4
-rw-r--r--pkgs/development/tools/gosec/default.nix6
-rw-r--r--pkgs/development/tools/grpc-gateway/default.nix6
-rw-r--r--pkgs/development/tools/haskell/hadrian/disable-hyperlinked-source.patch4
-rw-r--r--pkgs/development/tools/haskell/hadrian/hadrian-9.8.1-allow-Cabal-3.10.patch4
-rw-r--r--pkgs/development/tools/haskell/hadrian/hadrian.nix8
-rw-r--r--pkgs/development/tools/haskell/hadrian/make-hadrian.nix6
-rw-r--r--pkgs/development/tools/headache/default.nix4
-rw-r--r--pkgs/development/tools/heroku/default.nix6
-rw-r--r--pkgs/development/tools/infisical/default.nix2
-rw-r--r--pkgs/development/tools/jqp/default.nix6
-rw-r--r--pkgs/development/tools/k6/default.nix4
-rw-r--r--pkgs/development/tools/kind/default.nix6
-rw-r--r--pkgs/development/tools/ko/default.nix6
-rw-r--r--pkgs/development/tools/language-servers/csharp-ls/default.nix4
-rw-r--r--pkgs/development/tools/language-servers/fortls/default.nix6
-rw-r--r--pkgs/development/tools/language-servers/helm-ls/default.nix6
-rw-r--r--pkgs/development/tools/language-servers/lua-language-server/default.nix4
-rw-r--r--pkgs/development/tools/language-servers/neocmakelsp/default.nix6
-rw-r--r--pkgs/development/tools/language-servers/pylyzer/Cargo.lock24
-rw-r--r--pkgs/development/tools/language-servers/pylyzer/default.nix4
-rw-r--r--pkgs/development/tools/language-servers/vscode-langservers-extracted/default.nix6
-rw-r--r--pkgs/development/tools/melange/default.nix6
-rw-r--r--pkgs/development/tools/metal-cli/default.nix6
-rw-r--r--pkgs/development/tools/micronaut/default.nix4
-rw-r--r--pkgs/development/tools/misc/astyle/default.nix4
-rw-r--r--pkgs/development/tools/misc/awf/default.nix4
-rw-r--r--pkgs/development/tools/misc/blackfire/default.nix12
-rw-r--r--pkgs/development/tools/misc/blackfire/php-probe.nix32
-rw-r--r--pkgs/development/tools/misc/c2ffi/default.nix3
-rw-r--r--pkgs/development/tools/misc/cppi/default.nix2
-rw-r--r--pkgs/development/tools/misc/cwebbin/default.nix32
-rw-r--r--pkgs/development/tools/misc/d-spy/default.nix4
-rw-r--r--pkgs/development/tools/misc/dart-sass/default.nix8
-rw-r--r--pkgs/development/tools/misc/dart-sass/pubspec.lock.json60
-rw-r--r--pkgs/development/tools/misc/gpuvis/default.nix4
-rw-r--r--pkgs/development/tools/misc/lttng-ust/default.nix4
-rw-r--r--pkgs/development/tools/misc/luarocks/default.nix7
-rw-r--r--pkgs/development/tools/misc/luarocks/luarocks-nix.nix27
-rw-r--r--pkgs/development/tools/misc/n98-magerun2/default.nix6
-rw-r--r--pkgs/development/tools/misc/nix-bisect/default.nix19
-rw-r--r--pkgs/development/tools/misc/patchelf/unstable.nix2
-rw-r--r--pkgs/development/tools/misc/src-cli/default.nix6
-rw-r--r--pkgs/development/tools/misc/stlink/default.nix4
-rw-r--r--pkgs/development/tools/misc/strace/default.nix4
-rw-r--r--pkgs/development/tools/misc/sysbench/default.nix24
-rw-r--r--pkgs/development/tools/misc/terramate/default.nix9
-rw-r--r--pkgs/development/tools/misc/texinfo/common.nix7
-rw-r--r--pkgs/development/tools/misc/tie/default.nix2
-rw-r--r--pkgs/development/tools/misc/usb-modeswitch/default.nix5
-rw-r--r--pkgs/development/tools/misc/usb-modeswitch/pkg-config.patch14
-rw-r--r--pkgs/development/tools/mysql-shell/default.nix10
-rw-r--r--pkgs/development/tools/mysql-shell/innovation.nix40
-rw-r--r--pkgs/development/tools/nemiver/default.nix4
-rw-r--r--pkgs/development/tools/nwjs/default.nix16
-rw-r--r--pkgs/development/tools/ocaml/js_of_ocaml/compiler.nix4
-rw-r--r--pkgs/development/tools/ocaml/ocp-index/default.nix4
-rw-r--r--pkgs/development/tools/ols/default.nix6
-rw-r--r--pkgs/development/tools/opcr-policy/default.nix6
-rw-r--r--pkgs/development/tools/open-policy-agent/default.nix4
-rw-r--r--pkgs/development/tools/operator-sdk/default.nix4
-rw-r--r--pkgs/development/tools/packer/default.nix6
-rw-r--r--pkgs/development/tools/parsing/tree-sitter/default.nix10
-rw-r--r--pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-commonlisp.json10
-rw-r--r--pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-cpp.json10
-rw-r--r--pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-cuda.json10
-rw-r--r--pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-dart.json10
-rw-r--r--pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-elixir.json10
-rw-r--r--pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-fish.json10
-rw-r--r--pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-glsl.json10
-rw-r--r--pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-haskell.json10
-rw-r--r--pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-javascript.json10
-rw-r--r--pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-json.json10
-rw-r--r--pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-julia.json10
-rw-r--r--pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-just.json10
-rw-r--r--pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-latex.json10
-rw-r--r--pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-markdown.json10
-rw-r--r--pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-nix.json10
-rw-r--r--pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-norg-meta.json10
-rw-r--r--pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-norg.json10
-rw-r--r--pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-nu.json10
-rw-r--r--pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-ocaml.json10
-rw-r--r--pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-perl.json10
-rw-r--r--pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-python.json10
-rw-r--r--pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-query.json10
-rw-r--r--pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-rust.json10
-rw-r--r--pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-scheme.json10
-rw-r--r--pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-solidity.json10
-rw-r--r--pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-templ.json10
-rw-r--r--pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-tlaplus.json10
-rw-r--r--pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-typst.json10
-rw-r--r--pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-wing.json10
-rw-r--r--pkgs/development/tools/pet/default.nix6
-rw-r--r--pkgs/development/tools/profiling/pprof/default.nix11
-rw-r--r--pkgs/development/tools/profiling/sysprof/default.nix4
-rw-r--r--pkgs/development/tools/protoc-gen-connect-go/default.nix6
-rw-r--r--pkgs/development/tools/protoc-gen-go/default.nix4
-rw-r--r--pkgs/development/tools/protolint/default.nix6
-rw-r--r--pkgs/development/tools/purescript/spago/default.nix88
-rw-r--r--pkgs/development/tools/purescript/spago/spago.nix13
-rw-r--r--pkgs/development/tools/pyenv/default.nix4
-rw-r--r--pkgs/development/tools/qtcreator/default.nix4
-rw-r--r--pkgs/development/tools/rain/default.nix6
-rw-r--r--pkgs/development/tools/rbspy/default.nix6
-rw-r--r--pkgs/development/tools/redisinsight/default.nix10
-rw-r--r--pkgs/development/tools/reindeer/default.nix10
-rw-r--r--pkgs/development/tools/ruff/default.nix6
-rw-r--r--pkgs/development/tools/rust/cargo-about/default.nix35
-rw-r--r--pkgs/development/tools/rust/cargo-binstall/default.nix6
-rw-r--r--pkgs/development/tools/rust/cargo-bisect-rustc/default.nix66
-rw-r--r--pkgs/development/tools/rust/cargo-c/default.nix10
-rw-r--r--pkgs/development/tools/rust/cargo-component/default.nix6
-rw-r--r--pkgs/development/tools/rust/cargo-deb/default.nix6
-rw-r--r--pkgs/development/tools/rust/cargo-deny/default.nix6
-rw-r--r--pkgs/development/tools/rust/cargo-duplicates/default.nix6
-rw-r--r--pkgs/development/tools/rust/cargo-generate/default.nix6
-rw-r--r--pkgs/development/tools/rust/cargo-llvm-lines/default.nix6
-rw-r--r--pkgs/development/tools/rust/cargo-mutants/default.nix6
-rw-r--r--pkgs/development/tools/rust/cargo-ndk/default.nix6
-rw-r--r--pkgs/development/tools/rust/cargo-raze/default.nix48
-rw-r--r--pkgs/development/tools/rust/cargo-show-asm/default.nix6
-rw-r--r--pkgs/development/tools/rust/cargo-tally/default.nix6
-rw-r--r--pkgs/development/tools/rust/cargo-tauri/default.nix6
-rw-r--r--pkgs/development/tools/rust/cargo-whatfeatures/default.nix6
-rw-r--r--pkgs/development/tools/rust/rust-analyzer/default.nix6
-rw-r--r--pkgs/development/tools/rust/svd2rust/default.nix6
-rw-r--r--pkgs/development/tools/scenebuilder/default.nix4
-rw-r--r--pkgs/development/tools/sea-orm-cli/default.nix6
-rw-r--r--pkgs/development/tools/sentry-cli/default.nix6
-rw-r--r--pkgs/development/tools/skaffold/default.nix4
-rw-r--r--pkgs/development/tools/skopeo/default.nix4
-rw-r--r--pkgs/development/tools/sqldef/default.nix6
-rw-r--r--pkgs/development/tools/subxt/default.nix6
-rw-r--r--pkgs/development/tools/supabase-cli/default.nix6
-rw-r--r--pkgs/development/tools/swiftpm2nix/support.nix2
-rw-r--r--pkgs/development/tools/trunk/default.nix27
-rw-r--r--pkgs/development/tools/ttfb/default.nix6
-rw-r--r--pkgs/development/tools/turso-cli/default.nix4
-rw-r--r--pkgs/development/tools/vala-lint/default.nix6
-rw-r--r--pkgs/development/tools/vsce/default.nix4
-rw-r--r--pkgs/development/tools/wabt/default.nix4
-rw-r--r--pkgs/development/tools/wails/default.nix6
-rw-r--r--pkgs/development/tools/wasm-bindgen-cli/default.nix6
-rw-r--r--pkgs/development/tools/wgo/default.nix4
-rw-r--r--pkgs/development/tools/yamlfmt/default.nix6
-rw-r--r--pkgs/development/tools/yarn-berry/default.nix4
-rw-r--r--pkgs/development/tools/yq-go/default.nix6
-rw-r--r--pkgs/development/web/bloomrpc/default.nix3
-rw-r--r--pkgs/development/web/bun/default.nix10
-rw-r--r--pkgs/development/web/cog/default.nix4
-rw-r--r--pkgs/development/web/cypress/default.nix4
-rw-r--r--pkgs/development/web/deno/default.nix6
-rw-r--r--pkgs/development/web/deno/librusty_v8.nix10
-rw-r--r--pkgs/development/web/flyctl/default.nix6
-rw-r--r--pkgs/development/web/ihp-new/default.nix4
-rw-r--r--pkgs/development/web/insomnia/default.nix4
-rw-r--r--pkgs/development/web/nodejs/node-npm-build-npm-package-logic.patch4
-rw-r--r--pkgs/development/web/nodejs/v22.nix4
-rw-r--r--pkgs/development/web/postman/darwin.nix4
-rw-r--r--pkgs/development/web/postman/default.nix2
-rw-r--r--pkgs/development/web/postman/linux.nix8
-rw-r--r--pkgs/development/web/publii/default.nix4
-rw-r--r--pkgs/games/0ad/game.nix1
-rw-r--r--pkgs/games/chiaki4deck/default.nix9
-rw-r--r--pkgs/games/colobot/default.nix4
-rw-r--r--pkgs/games/doom-ports/doomretro/default.nix4
-rw-r--r--pkgs/games/doom-ports/gzdoom/default.nix4
-rw-r--r--pkgs/games/doom-ports/slade/default.nix4
-rw-r--r--pkgs/games/doom-ports/slade/git.nix2
-rw-r--r--pkgs/games/dwarf-fortress/default.nix8
-rw-r--r--pkgs/games/dwarf-fortress/dfhack/default.nix5
-rw-r--r--pkgs/games/dwarf-fortress/dwarf-therapist/default.nix7
-rw-r--r--pkgs/games/dwarf-fortress/game.json3
-rw-r--r--pkgs/games/eduke32/convert-bmp-to-png.diff23
-rw-r--r--pkgs/games/eduke32/default.nix6
-rw-r--r--pkgs/games/extremetuxracer/default.nix4
-rw-r--r--pkgs/games/factorio/versions.json48
-rw-r--r--pkgs/games/freeciv/default.nix18
-rw-r--r--pkgs/games/gamehub/default.nix4
-rw-r--r--pkgs/games/gnonograms/default.nix4
-rw-r--r--pkgs/games/gnuchess/default.nix5
-rw-r--r--pkgs/games/grapejuice/default.nix4
-rw-r--r--pkgs/games/gscrabble/default.nix4
-rw-r--r--pkgs/games/gshogi/default.nix4
-rw-r--r--pkgs/games/gtypist/default.nix2
-rw-r--r--pkgs/games/gweled/default.nix4
-rw-r--r--pkgs/games/hmcl/default.nix4
-rw-r--r--pkgs/games/instawow/default.nix4
-rw-r--r--pkgs/games/jfsw/default.nix4
-rw-r--r--pkgs/games/jumpnbump/default.nix4
-rw-r--r--pkgs/games/katago/default.nix6
-rw-r--r--pkgs/games/liberation-circuit/default.nix4
-rw-r--r--pkgs/games/linthesia/default.nix4
-rw-r--r--pkgs/games/maptool/default.nix4
-rw-r--r--pkgs/games/mindustry/default.nix1
-rw-r--r--pkgs/games/minecraft-servers/versions.json44
-rw-r--r--pkgs/games/minecraft/default.nix7
-rw-r--r--pkgs/games/nile/default.nix10
-rw-r--r--pkgs/games/openclonk/default.nix24
-rw-r--r--pkgs/games/openlierox/default.nix87
-rw-r--r--pkgs/games/openrct2/default.nix12
-rw-r--r--pkgs/games/openttd/jgrpp.nix4
-rw-r--r--pkgs/games/principia/default.nix4
-rw-r--r--pkgs/games/runescape-launcher/default.nix4
-rw-r--r--pkgs/games/sgt-puzzles/default.nix4
-rw-r--r--pkgs/games/shattered-pixel-dungeon/default.nix4
-rw-r--r--pkgs/games/space-station-14-launcher/space-station-14-launcher.nix4
-rw-r--r--pkgs/games/starsector/default.nix10
-rw-r--r--pkgs/games/the-powder-toy/default.nix65
-rw-r--r--pkgs/games/vassal/default.nix8
-rw-r--r--pkgs/games/worldofgoo/default.nix1
-rw-r--r--pkgs/games/xskat/default.nix2
-rw-r--r--pkgs/kde/frameworks/kfilemetadata/default.nix3
-rw-r--r--pkgs/kde/frameworks/kguiaddons/default.nix3
-rw-r--r--pkgs/kde/frameworks/kidletime/default.nix3
-rw-r--r--pkgs/kde/frameworks/kwindowsystem/default.nix3
-rw-r--r--pkgs/kde/frameworks/qqc2-desktop-style/default.nix2
-rw-r--r--pkgs/kde/frameworks/solid/default.nix8
-rw-r--r--pkgs/kde/gear/akonadi-search/default.nix3
-rw-r--r--pkgs/kde/gear/angelfish/default.nix3
-rw-r--r--pkgs/kde/gear/arianna/default.nix2
-rw-r--r--pkgs/kde/gear/ghostwriter/default.nix4
-rw-r--r--pkgs/kde/gear/gwenview/default.nix4
-rw-r--r--pkgs/kde/gear/kasts/default.nix2
-rw-r--r--pkgs/kde/gear/kcalc/default.nix3
-rw-r--r--pkgs/kde/gear/kdeconnect-kde/default.nix20
-rw-r--r--pkgs/kde/gear/kdeconnect-kde/hardcode-sshfs-path.patch13
-rw-r--r--pkgs/kde/gear/kdeconnect-kde/remove-ssh-dss.patch13
-rw-r--r--pkgs/kde/gear/kdepim-addons/default.nix5
-rw-r--r--pkgs/kde/gear/kio-extras/default.nix2
-rw-r--r--pkgs/kde/gear/koko/default.nix2
-rw-r--r--pkgs/kde/gear/kopeninghours/default.nix1
-rw-r--r--pkgs/kde/gear/plasmatube/default.nix7
-rw-r--r--pkgs/kde/gear/sweeper/default.nix6
-rw-r--r--pkgs/kde/gear/tokodon/default.nix5
-rw-r--r--pkgs/kde/generated/dependencies.json180
-rw-r--r--pkgs/kde/generated/projects.json24
-rw-r--r--pkgs/kde/generated/sources/frameworks.json432
-rw-r--r--pkgs/kde/lib/mk-kde-derivation.nix16
-rw-r--r--pkgs/kde/misc/kirigami-addons/default.nix4
-rw-r--r--pkgs/kde/misc/mpvqt/default.nix4
-rw-r--r--pkgs/kde/plasma/kde-gtk-config/default.nix4
-rw-r--r--pkgs/kde/plasma/kwayland/default.nix3
-rw-r--r--pkgs/kde/plasma/kwin/0001-Lower-CAP_SYS_NICE-from-the-ambient-set.patch40
-rw-r--r--pkgs/kde/plasma/kwin/default.nix1
-rw-r--r--pkgs/kde/plasma/layer-shell-qt/default.nix4
-rw-r--r--pkgs/kde/plasma/xdg-desktop-portal-kde/default.nix4
-rw-r--r--pkgs/misc/drivers/epsonscan2/default.nix14
-rw-r--r--pkgs/misc/drivers/sc-controller/default.nix4
-rw-r--r--pkgs/misc/fastly/default.nix6
-rw-r--r--pkgs/misc/lilypond/unstable.nix4
-rw-r--r--pkgs/misc/plasma-hud/default.nix4
-rw-r--r--pkgs/misc/screensavers/light-locker/default.nix4
-rw-r--r--pkgs/misc/solfege/default.nix4
-rw-r--r--pkgs/misc/tmux-plugins/default.nix6
-rw-r--r--pkgs/os-specific/bsd/freebsd/default.nix122
-rw-r--r--pkgs/os-specific/bsd/freebsd/evdev-proto/default.nix11
-rw-r--r--pkgs/os-specific/bsd/freebsd/lib/default.nix18
-rw-r--r--pkgs/os-specific/bsd/freebsd/package-set.nix96
-rw-r--r--pkgs/os-specific/bsd/freebsd/patches/13.1/compat-fix-typedefs-locations.patch (renamed from pkgs/os-specific/bsd/freebsd/pkgs/compat/compat-fix-typedefs-locations.patch)0
-rw-r--r--pkgs/os-specific/bsd/freebsd/patches/13.1/compat-install-dirs.patch (renamed from pkgs/os-specific/bsd/freebsd/pkgs/compat/compat-install-dirs.patch)0
-rw-r--r--pkgs/os-specific/bsd/freebsd/patches/13.1/libc-msun-arch-subdir.patch (renamed from pkgs/os-specific/bsd/freebsd/pkgs/libc/libc-msun-arch-subdir.patch)0
-rw-r--r--pkgs/os-specific/bsd/freebsd/patches/13.1/libc-no-force--lcompiler-rt.patch (renamed from pkgs/os-specific/bsd/freebsd/pkgs/libc/libc-no-force--lcompiler-rt.patch)0
-rw-r--r--pkgs/os-specific/bsd/freebsd/patches/13.1/libnetbsd-do-install.patch (renamed from pkgs/os-specific/bsd/freebsd/pkgs/libnetbsd/libnetbsd-do-install.patch)0
-rw-r--r--pkgs/os-specific/bsd/freebsd/patches/13.1/librpcsvc-include-subdir.patch (renamed from pkgs/os-specific/bsd/freebsd/pkgs/libc/librpcsvc-include-subdir.patch)0
-rw-r--r--pkgs/os-specific/bsd/freebsd/patches/13.1/mtree-Makefile.patch13
-rw-r--r--pkgs/os-specific/bsd/freebsd/patches/13.1/no-perms-BSD.include.dist.patch (renamed from pkgs/os-specific/bsd/freebsd/pkgs/include/no-perms-BSD.include.dist.patch)0
-rw-r--r--pkgs/os-specific/bsd/freebsd/patches/13.1/sys-gnu-date.patch (renamed from pkgs/os-specific/bsd/freebsd/pkgs/sys/sys-gnu-date.patch)0
-rw-r--r--pkgs/os-specific/bsd/freebsd/patches/13.1/sys-no-explicit-intrinsics-dep.patch (renamed from pkgs/os-specific/bsd/freebsd/pkgs/sys/sys-no-explicit-intrinsics-dep.patch)0
-rw-r--r--pkgs/os-specific/bsd/freebsd/patches/14.0/bmake-no-compiler-rt.patch11
-rw-r--r--pkgs/os-specific/bsd/freebsd/patches/14.0/compat-fix-typedefs-locations.patch32
-rw-r--r--pkgs/os-specific/bsd/freebsd/patches/14.0/compat-install-dirs.patch40
-rw-r--r--pkgs/os-specific/bsd/freebsd/patches/14.0/install-bootstrap-Makefile.patch11
-rw-r--r--pkgs/os-specific/bsd/freebsd/patches/14.0/libc-msun-arch-subdir.patch11
-rw-r--r--pkgs/os-specific/bsd/freebsd/patches/14.0/libc-no-force--lcompiler-rt.patch10
-rw-r--r--pkgs/os-specific/bsd/freebsd/patches/14.0/libnetbsd-do-install.patch32
-rw-r--r--pkgs/os-specific/bsd/freebsd/patches/14.0/librpcsvc-include-subdir.patch11
-rw-r--r--pkgs/os-specific/bsd/freebsd/patches/14.0/mtree-Makefile.patch13
-rw-r--r--pkgs/os-specific/bsd/freebsd/patches/14.0/no-perms-BSD.include.dist.patch11
-rw-r--r--pkgs/os-specific/bsd/freebsd/patches/14.0/rtld-no-force--lcompiler-rt.patch10
-rw-r--r--pkgs/os-specific/bsd/freebsd/patches/14.0/sys-gnu-date.patch13
-rw-r--r--pkgs/os-specific/bsd/freebsd/patches/14.0/sys-no-explicit-intrinsics-dep.patch42
-rw-r--r--pkgs/os-specific/bsd/freebsd/pkgs/boot-install.nix9
-rw-r--r--pkgs/os-specific/bsd/freebsd/pkgs/compat/package.nix241
-rw-r--r--pkgs/os-specific/bsd/freebsd/pkgs/config.nix36
-rw-r--r--pkgs/os-specific/bsd/freebsd/pkgs/csu.nix25
-rw-r--r--pkgs/os-specific/bsd/freebsd/pkgs/ctfconvert.nix25
-rw-r--r--pkgs/os-specific/bsd/freebsd/pkgs/filterSource.nix23
-rw-r--r--pkgs/os-specific/bsd/freebsd/pkgs/freebsdSetupHook/package.nix4
-rw-r--r--pkgs/os-specific/bsd/freebsd/pkgs/freebsdSetupHook/setup-hook.sh11
-rw-r--r--pkgs/os-specific/bsd/freebsd/pkgs/gencat.nix4
-rw-r--r--pkgs/os-specific/bsd/freebsd/pkgs/include/package.nix33
-rw-r--r--pkgs/os-specific/bsd/freebsd/pkgs/install.nix76
-rw-r--r--pkgs/os-specific/bsd/freebsd/pkgs/libc/package.nix315
-rw-r--r--pkgs/os-specific/bsd/freebsd/pkgs/libdwarf.nix21
-rw-r--r--pkgs/os-specific/bsd/freebsd/pkgs/libelf.nix24
-rw-r--r--pkgs/os-specific/bsd/freebsd/pkgs/libmd.nix49
-rw-r--r--pkgs/os-specific/bsd/freebsd/pkgs/libnetbsd/package.nix32
-rw-r--r--pkgs/os-specific/bsd/freebsd/pkgs/libsbuf.nix4
-rw-r--r--pkgs/os-specific/bsd/freebsd/pkgs/libspl.nix23
-rw-r--r--pkgs/os-specific/bsd/freebsd/pkgs/libutil.nix9
-rw-r--r--pkgs/os-specific/bsd/freebsd/pkgs/lorder.nix19
-rw-r--r--pkgs/os-specific/bsd/freebsd/pkgs/make.nix27
-rw-r--r--pkgs/os-specific/bsd/freebsd/pkgs/makeMinimal.nix21
-rw-r--r--pkgs/os-specific/bsd/freebsd/pkgs/mkDerivation.nix218
-rw-r--r--pkgs/os-specific/bsd/freebsd/pkgs/mkcsmapper.nix22
-rw-r--r--pkgs/os-specific/bsd/freebsd/pkgs/mkesdb.nix19
-rw-r--r--pkgs/os-specific/bsd/freebsd/pkgs/mknod.nix4
-rw-r--r--pkgs/os-specific/bsd/freebsd/pkgs/mtree.nix37
-rw-r--r--pkgs/os-specific/bsd/freebsd/pkgs/rpcgen/package.nix11
-rw-r--r--pkgs/os-specific/bsd/freebsd/pkgs/sed.nix3
-rw-r--r--pkgs/os-specific/bsd/freebsd/pkgs/source.nix1
-rw-r--r--pkgs/os-specific/bsd/freebsd/pkgs/stat.nix19
-rw-r--r--pkgs/os-specific/bsd/freebsd/pkgs/statHook.nix16
-rw-r--r--pkgs/os-specific/bsd/freebsd/pkgs/sys/package.nix148
-rw-r--r--pkgs/os-specific/bsd/freebsd/pkgs/tsort.nix28
-rwxr-xr-xpkgs/os-specific/bsd/freebsd/update.py22
-rw-r--r--pkgs/os-specific/bsd/freebsd/versions.json59
-rw-r--r--pkgs/os-specific/bsd/netbsd/default.nix314
-rw-r--r--pkgs/os-specific/bsd/netbsd/pkgs/compat/package.nix172
-rw-r--r--pkgs/os-specific/bsd/netbsd/pkgs/config.nix27
-rw-r--r--pkgs/os-specific/bsd/netbsd/pkgs/csu.nix49
-rw-r--r--pkgs/os-specific/bsd/netbsd/pkgs/fts/package.nix19
-rw-r--r--pkgs/os-specific/bsd/netbsd/pkgs/headers.nix8
-rw-r--r--pkgs/os-specific/bsd/netbsd/pkgs/i18n_module.nix6
-rw-r--r--pkgs/os-specific/bsd/netbsd/pkgs/include.nix32
-rw-r--r--pkgs/os-specific/bsd/netbsd/pkgs/install/package.nix81
-rw-r--r--pkgs/os-specific/bsd/netbsd/pkgs/ld_elf_so.nix16
-rw-r--r--pkgs/os-specific/bsd/netbsd/pkgs/libc.nix59
-rw-r--r--pkgs/os-specific/bsd/netbsd/pkgs/libcurses.nix24
-rw-r--r--pkgs/os-specific/bsd/netbsd/pkgs/libedit.nix52
-rw-r--r--pkgs/os-specific/bsd/netbsd/pkgs/libm.nix6
-rw-r--r--pkgs/os-specific/bsd/netbsd/pkgs/libpci.nix6
-rw-r--r--pkgs/os-specific/bsd/netbsd/pkgs/libpthread/base.nix1
-rw-r--r--pkgs/os-specific/bsd/netbsd/pkgs/libpthread/headers.nix17
-rw-r--r--pkgs/os-specific/bsd/netbsd/pkgs/libpthread/package.nix39
-rw-r--r--pkgs/os-specific/bsd/netbsd/pkgs/libresolv.nix6
-rw-r--r--pkgs/os-specific/bsd/netbsd/pkgs/librpcsvc.nix28
-rw-r--r--pkgs/os-specific/bsd/netbsd/pkgs/librt.nix7
-rw-r--r--pkgs/os-specific/bsd/netbsd/pkgs/libterminfo.nix33
-rw-r--r--pkgs/os-specific/bsd/netbsd/pkgs/libutil.nix39
-rw-r--r--pkgs/os-specific/bsd/netbsd/pkgs/lorder.nix21
-rw-r--r--pkgs/os-specific/bsd/netbsd/pkgs/make.nix97
-rw-r--r--pkgs/os-specific/bsd/netbsd/pkgs/makeMinimal.nix15
-rw-r--r--pkgs/os-specific/bsd/netbsd/pkgs/mkDerivation.nix173
-rw-r--r--pkgs/os-specific/bsd/netbsd/pkgs/nbperf.nix1
-rw-r--r--pkgs/os-specific/bsd/netbsd/pkgs/netbsdSetupHook/package.nix4
-rw-r--r--pkgs/os-specific/bsd/netbsd/pkgs/netbsdSetupHook/setup-hook.sh1
-rw-r--r--pkgs/os-specific/bsd/netbsd/pkgs/stat/hook.nix17
-rw-r--r--pkgs/os-specific/bsd/netbsd/pkgs/stat/package.nix21
-rw-r--r--pkgs/os-specific/bsd/netbsd/pkgs/sys/base.nix55
-rw-r--r--pkgs/os-specific/bsd/netbsd/pkgs/sys/headers.nix50
-rw-r--r--pkgs/os-specific/bsd/netbsd/pkgs/sys/package.nix50
-rw-r--r--pkgs/os-specific/bsd/netbsd/pkgs/tic.nix31
-rw-r--r--pkgs/os-specific/bsd/netbsd/pkgs/tsort.nix21
-rw-r--r--pkgs/os-specific/bsd/netbsd/pkgs/uudecode.nix7
-rw-r--r--pkgs/os-specific/bsd/setup-hook.sh1
-rw-r--r--pkgs/os-specific/darwin/apple-source-releases/default.nix3
-rw-r--r--pkgs/os-specific/darwin/apple-source-releases/libiconv/default.nix38
-rw-r--r--pkgs/os-specific/darwin/apple-source-releases/macos-11.0.1.nix1
-rw-r--r--pkgs/os-specific/darwin/apple-source-releases/system_cmds/meson.build9
-rw-r--r--pkgs/os-specific/darwin/openwith/default.nix6
-rw-r--r--pkgs/os-specific/darwin/raycast/default.nix4
-rw-r--r--pkgs/os-specific/darwin/rectangle/default.nix4
-rw-r--r--pkgs/os-specific/darwin/utm/default.nix6
-rw-r--r--pkgs/os-specific/linux/batman-adv/version.nix10
-rw-r--r--pkgs/os-specific/linux/cpupower-gui/default.nix4
-rw-r--r--pkgs/os-specific/linux/cryptodev/default.nix15
-rw-r--r--pkgs/os-specific/linux/ddcci/default.nix13
-rw-r--r--pkgs/os-specific/linux/digimend/default.nix13
-rw-r--r--pkgs/os-specific/linux/ena/default.nix10
-rw-r--r--pkgs/os-specific/linux/ena/override-features-api-detection.patch55
-rw-r--r--pkgs/os-specific/linux/ffado/default.nix4
-rw-r--r--pkgs/os-specific/linux/firmware/firmware-manager/default.nix4
-rw-r--r--pkgs/os-specific/linux/firmware/fwupd-efi/default.nix11
-rw-r--r--pkgs/os-specific/linux/firmware/ipu6-camera-bins/default.nix4
-rw-r--r--pkgs/os-specific/linux/firmware/ivsc-firmware/default.nix4
-rw-r--r--pkgs/os-specific/linux/firmware/linux-firmware/source.nix8
-rw-r--r--pkgs/os-specific/linux/fnotifystat/default.nix4
-rw-r--r--pkgs/os-specific/linux/fscrypt/default.nix6
-rw-r--r--pkgs/os-specific/linux/fw-ectool/default.nix33
-rw-r--r--pkgs/os-specific/linux/fwts/default.nix4
-rw-r--r--pkgs/os-specific/linux/game-devices-udev-rules/default.nix6
-rw-r--r--pkgs/os-specific/linux/guvcview/default.nix4
-rw-r--r--pkgs/os-specific/linux/hwdata/default.nix4
-rw-r--r--pkgs/os-specific/linux/iproute/default.nix8
-rw-r--r--pkgs/os-specific/linux/ipu6-drivers/default.nix2
-rw-r--r--pkgs/os-specific/linux/ivsc-driver/default.nix2
-rw-r--r--pkgs/os-specific/linux/kernel/common-config.nix19
-rw-r--r--pkgs/os-specific/linux/kernel/generic.nix2
-rw-r--r--pkgs/os-specific/linux/kernel/htmldocs.nix18
-rw-r--r--pkgs/os-specific/linux/kernel/kernels-org.json32
-rw-r--r--pkgs/os-specific/linux/kernel/linux-rt-5.10.nix6
-rw-r--r--pkgs/os-specific/linux/kernel/linux-rt-5.15.nix6
-rw-r--r--pkgs/os-specific/linux/kernel/linux-rt-6.1.nix6
-rw-r--r--pkgs/os-specific/linux/kernel/linux-rt-6.6.nix6
-rw-r--r--pkgs/os-specific/linux/kernel/xanmod-kernels.nix8
-rw-r--r--pkgs/os-specific/linux/kernel/zen-kernels.nix4
-rw-r--r--pkgs/os-specific/linux/kvmfr/default.nix3
-rw-r--r--pkgs/os-specific/linux/kvmfr/linux-6-4-compat.patch16
-rw-r--r--pkgs/os-specific/linux/ledger-udev-rules/default.nix8
-rw-r--r--pkgs/os-specific/linux/libbpf/0.x.nix4
-rw-r--r--pkgs/os-specific/linux/libbpf/default.nix4
-rw-r--r--pkgs/os-specific/linux/libcap-ng/default.nix4
-rw-r--r--pkgs/os-specific/linux/libzbc/default.nix4
-rw-r--r--pkgs/os-specific/linux/microcode/intel.nix4
-rw-r--r--pkgs/os-specific/linux/mm-tools/default.nix (renamed from pkgs/os-specific/linux/vm-tools/default.nix)4
-rw-r--r--pkgs/os-specific/linux/mstflint_access/default.nix6
-rw-r--r--pkgs/os-specific/linux/nftables/default.nix16
-rw-r--r--pkgs/os-specific/linux/nftables/fix-py-libnftables.patch13
-rw-r--r--pkgs/os-specific/linux/nftables/python.nix26
-rwxr-xr-xpkgs/os-specific/linux/nixos-rebuild/nixos-rebuild.sh2
-rw-r--r--pkgs/os-specific/linux/nvidia-x11/settings.nix4
-rw-r--r--pkgs/os-specific/linux/pam/default.nix22
-rw-r--r--pkgs/os-specific/linux/piper/default.nix4
-rw-r--r--pkgs/os-specific/linux/power-profiles-daemon/default.nix9
-rw-r--r--pkgs/os-specific/linux/rtl8189es/default.nix6
-rw-r--r--pkgs/os-specific/linux/rtl8189fs/default.nix6
-rw-r--r--pkgs/os-specific/linux/rtl8192eu/default.nix8
-rw-r--r--pkgs/os-specific/linux/rtl8723ds/default.nix6
-rw-r--r--pkgs/os-specific/linux/rtl8812au/default.nix6
-rw-r--r--pkgs/os-specific/linux/rtl8821cu/default.nix8
-rw-r--r--pkgs/os-specific/linux/rtl8852au/default.nix6
-rw-r--r--pkgs/os-specific/linux/sysdig/default.nix40
-rw-r--r--pkgs/os-specific/linux/systemd/default.nix7
-rw-r--r--pkgs/os-specific/linux/tbs/default.nix12
-rw-r--r--pkgs/os-specific/linux/tiscamera/default.nix6
-rw-r--r--pkgs/os-specific/linux/tuna/default.nix4
-rw-r--r--pkgs/os-specific/linux/uhk-agent/default.nix4
-rw-r--r--pkgs/os-specific/linux/waydroid/default.nix4
-rw-r--r--pkgs/os-specific/linux/zenmonitor/default.nix4
-rw-r--r--pkgs/os-specific/linux/zfs/2_2.nix8
-rw-r--r--pkgs/os-specific/linux/zfs/unstable.nix8
-rw-r--r--pkgs/pkgs-lib/formats.nix2
-rw-r--r--pkgs/pkgs-lib/formats/php/default.nix69
-rw-r--r--pkgs/pkgs-lib/tests/formats.nix44
-rw-r--r--pkgs/servers/bloat/default.nix2
-rw-r--r--pkgs/servers/blockbook/default.nix15
-rw-r--r--pkgs/servers/computing/storm/default.nix38
-rw-r--r--pkgs/servers/dgraph/default.nix4
-rw-r--r--pkgs/servers/dns/bind/default.nix4
-rw-r--r--pkgs/servers/elasticmq-server-bin/default.nix4
-rw-r--r--pkgs/servers/go-libp2p-daemon/default.nix6
-rw-r--r--pkgs/servers/gpsd/default.nix4
-rw-r--r--pkgs/servers/home-assistant/component-packages.nix845
-rw-r--r--pkgs/servers/home-assistant/custom-components/default.nix6
-rw-r--r--pkgs/servers/home-assistant/custom-components/midea_ac_lan/default.nix25
-rw-r--r--pkgs/servers/home-assistant/custom-components/ntfy/default.nix30
-rw-r--r--pkgs/servers/home-assistant/custom-components/smartir/default.nix24
-rw-r--r--pkgs/servers/home-assistant/custom-components/tuya_local/default.nix30
-rw-r--r--pkgs/servers/home-assistant/custom-components/waste_collection_schedule/default.nix13
-rw-r--r--pkgs/servers/home-assistant/custom-components/xiaomi_gateway3/default.nix20
-rw-r--r--pkgs/servers/home-assistant/custom-components/xiaomi_miot/default.nix22
-rw-r--r--pkgs/servers/home-assistant/custom-lovelace-modules/android-tv-card/default.nix39
-rw-r--r--pkgs/servers/home-assistant/custom-lovelace-modules/android-tv-card/dont-call-git.patch17
-rw-r--r--pkgs/servers/home-assistant/custom-lovelace-modules/button-card/default.nix52
-rw-r--r--pkgs/servers/home-assistant/custom-lovelace-modules/button-card/package.json78
-rw-r--r--pkgs/servers/home-assistant/custom-lovelace-modules/card-mod/default.nix37
-rw-r--r--pkgs/servers/home-assistant/custom-lovelace-modules/decluttering-card/default.nix36
-rw-r--r--pkgs/servers/home-assistant/custom-lovelace-modules/default.nix12
-rw-r--r--pkgs/servers/home-assistant/custom-lovelace-modules/lg-webos-remote-control/default.nix37
-rw-r--r--pkgs/servers/home-assistant/custom-lovelace-modules/valetudo-map-card/default.nix39
-rw-r--r--pkgs/servers/home-assistant/custom-lovelace-modules/valetudo-map-card/remove-git-dependency.patch64
-rw-r--r--pkgs/servers/home-assistant/custom-lovelace-modules/zigbee2mqtt-networkmap/default.nix19
-rwxr-xr-xpkgs/servers/home-assistant/custom-lovelace-modules/zigbee2mqtt-networkmap/update.sh9
-rw-r--r--pkgs/servers/home-assistant/default.nix168
-rw-r--r--pkgs/servers/home-assistant/frontend.nix4
-rw-r--r--pkgs/servers/home-assistant/intents.nix7
-rw-r--r--pkgs/servers/home-assistant/stubs.nix4
-rw-r--r--pkgs/servers/home-assistant/tests.nix22
-rw-r--r--pkgs/servers/home-automation/evcc/default.nix42
-rw-r--r--pkgs/servers/homepage-dashboard/default.nix6
-rw-r--r--pkgs/servers/hqplayerd/rygel.nix4
-rw-r--r--pkgs/servers/http/nginx/stable.nix4
-rw-r--r--pkgs/servers/http/tomcat/default.nix8
-rw-r--r--pkgs/servers/imgproxy/default.nix4
-rw-r--r--pkgs/servers/invidious/default.nix57
-rwxr-xr-xpkgs/servers/invidious/update.sh32
-rw-r--r--pkgs/servers/invidious/versions.json7
-rw-r--r--pkgs/servers/invidious/videojs.nix12
-rw-r--r--pkgs/servers/irc/ergochat/default.nix4
-rw-r--r--pkgs/servers/irc/ngircd/default.nix4
-rw-r--r--pkgs/servers/jackett/default.nix4
-rw-r--r--pkgs/servers/jellyfin/default.nix13
-rw-r--r--pkgs/servers/jellyfin/disable-warnings.patch38
-rw-r--r--pkgs/servers/jellyfin/nuget-deps.nix316
-rw-r--r--pkgs/servers/jellyfin/web.nix57
-rw-r--r--pkgs/servers/keycloak/all-plugins.nix18
-rw-r--r--pkgs/servers/keycloak/default.nix4
-rw-r--r--pkgs/servers/keycloak/keycloak-metrics-spi/default.nix9
-rw-r--r--pkgs/servers/klipper/default.nix11
-rw-r--r--pkgs/servers/klipper/simulator.cfg1
-rw-r--r--pkgs/servers/knxd/default.nix4
-rw-r--r--pkgs/servers/mail/stalwart/default.nix6
-rw-r--r--pkgs/servers/matrix-conduit/default.nix2
-rw-r--r--pkgs/servers/matrix-synapse/default.nix6
-rw-r--r--pkgs/servers/matrix-synapse/sliding-sync/default.nix4
-rw-r--r--pkgs/servers/mattermost/default.nix8
-rw-r--r--pkgs/servers/mautrix-signal/default.nix6
-rw-r--r--pkgs/servers/mediamtx/default.nix6
-rw-r--r--pkgs/servers/metabase/default.nix4
-rw-r--r--pkgs/servers/miniflux/default.nix6
-rw-r--r--pkgs/servers/minio/default.nix6
-rw-r--r--pkgs/servers/mir/default.nix2
-rw-r--r--pkgs/servers/monitoring/buildkite-agent-metrics/default.nix6
-rw-r--r--pkgs/servers/monitoring/do-agent/default.nix4
-rw-r--r--pkgs/servers/monitoring/grafana-agent/default.nix6
-rw-r--r--pkgs/servers/monitoring/laurel/default.nix6
-rw-r--r--pkgs/servers/monitoring/mtail/default.nix4
-rw-r--r--pkgs/servers/monitoring/prometheus/bitcoin-exporter.nix15
-rw-r--r--pkgs/servers/monitoring/prometheus/cloudflare-exporter.nix6
-rw-r--r--pkgs/servers/monitoring/prometheus/default.nix8
-rw-r--r--pkgs/servers/monitoring/prometheus/dnsmasq-exporter.nix8
-rw-r--r--pkgs/servers/monitoring/prometheus/gitlab-ci-pipelines-exporter.nix6
-rw-r--r--pkgs/servers/monitoring/prometheus/graphite-exporter.nix22
-rw-r--r--pkgs/servers/monitoring/prometheus/mysqld-exporter.nix6
-rw-r--r--pkgs/servers/monitoring/prometheus/process-exporter.nix6
-rw-r--r--pkgs/servers/monitoring/prometheus/snmp-exporter.nix6
-rw-r--r--pkgs/servers/monitoring/prometheus/tor-exporter.nix2
-rw-r--r--pkgs/servers/monitoring/prometheus/unbound-exporter.nix2
-rw-r--r--pkgs/servers/monitoring/vmagent/default.nix4
-rw-r--r--pkgs/servers/moonraker/default.nix7
-rw-r--r--pkgs/servers/nominatim/default.nix12
-rw-r--r--pkgs/servers/nosql/aerospike/default.nix4
-rw-r--r--pkgs/servers/nosql/apache-jena/fuseki-binary.nix5
-rw-r--r--pkgs/servers/nosql/mongodb/5.0.nix4
-rw-r--r--pkgs/servers/nosql/mongodb/6.0.nix4
-rw-r--r--pkgs/servers/nosql/mongodb/mongodb.nix9
-rw-r--r--pkgs/servers/nosql/neo4j/default.nix4
-rw-r--r--pkgs/servers/nosql/questdb/default.nix4
-rw-r--r--pkgs/servers/onlyoffice-documentserver/default.nix2
-rw-r--r--pkgs/servers/openvscode-server/default.nix6
-rw-r--r--pkgs/servers/osmocom/libasn1c/default.nix2
-rw-r--r--pkgs/servers/photoprism/backend.nix2
-rw-r--r--pkgs/servers/photoprism/default.nix4
-rw-r--r--pkgs/servers/photoprism/frontend.nix2
-rw-r--r--pkgs/servers/pinnwand/default.nix18
-rw-r--r--pkgs/servers/pocketbase/default.nix6
-rw-r--r--pkgs/servers/prowlarr/default.nix10
-rw-r--r--pkgs/servers/psitransfer/default.nix15
-rw-r--r--pkgs/servers/pulseaudio/default.nix4
-rw-r--r--pkgs/servers/radarr/default.nix10
-rw-r--r--pkgs/servers/readarr/default.nix8
-rw-r--r--pkgs/servers/redpanda/default.nix6
-rw-r--r--pkgs/servers/roadrunner/default.nix13
-rw-r--r--pkgs/servers/roon-server/default.nix4
-rw-r--r--pkgs/servers/rpiplay/default.nix4
-rw-r--r--pkgs/servers/samba/4.x.nix4
-rw-r--r--pkgs/servers/search/opensearch/default.nix4
-rw-r--r--pkgs/servers/search/qdrant/1.7.4-CVE-2024-3078.patch142
-rw-r--r--pkgs/servers/search/qdrant/Cargo.lock1663
-rw-r--r--pkgs/servers/search/qdrant/default.nix12
-rw-r--r--pkgs/servers/search/weaviate/default.nix6
-rw-r--r--pkgs/servers/sftpgo/default.nix6
-rw-r--r--pkgs/servers/smcroute/default.nix4
-rw-r--r--pkgs/servers/snac2/default.nix4
-rw-r--r--pkgs/servers/snappymail/default.nix4
-rw-r--r--pkgs/servers/sonarr/default.nix10
-rw-r--r--pkgs/servers/spicedb/default.nix6
-rw-r--r--pkgs/servers/spicedb/zed.nix6
-rw-r--r--pkgs/servers/sql/dolt/default.nix6
-rw-r--r--pkgs/servers/sql/materialize/default.nix1
-rw-r--r--pkgs/servers/sql/patroni/default.nix13
-rw-r--r--pkgs/servers/sql/percona-server/default.nix15
-rw-r--r--pkgs/servers/sql/percona-server/innovation.nix112
-rw-r--r--pkgs/servers/sql/percona-server/lts.nix (renamed from pkgs/servers/sql/percona-server/8.0.x.nix)4
-rw-r--r--pkgs/servers/sql/postgresql/12.nix6
-rw-r--r--pkgs/servers/sql/postgresql/13.nix4
-rw-r--r--pkgs/servers/sql/postgresql/14.nix4
-rw-r--r--pkgs/servers/sql/postgresql/15.nix6
-rw-r--r--pkgs/servers/sql/postgresql/16.nix6
-rw-r--r--pkgs/servers/sql/postgresql/default.nix1
-rw-r--r--pkgs/servers/sql/postgresql/ext/pg_libversion.nix7
-rw-r--r--pkgs/servers/sql/postgresql/ext/pgjwt.nix2
-rw-r--r--pkgs/servers/sql/postgresql/ext/pgvecto-rs/default.nix5
-rw-r--r--pkgs/servers/sql/postgresql/ext/tds_fdw.nix6
-rw-r--r--pkgs/servers/sql/postgresql/generic.nix46
-rw-r--r--pkgs/servers/sql/postgresql/patches/disable-resolve_symlinks.patch12
-rw-r--r--pkgs/servers/sql/postgresql/patches/hardcode-pgxs-path.patch14
-rw-r--r--pkgs/servers/sql/postgresql/patches/less-is-more.patch5
-rw-r--r--pkgs/servers/sql/postgresql/patches/locale-binary-path.patch2
-rw-r--r--pkgs/servers/sql/postgresql/patches/paths-for-split-outputs.patch11
-rw-r--r--pkgs/servers/sql/postgresql/patches/paths-with-postgresql-suffix.patch (renamed from pkgs/servers/sql/postgresql/patches/findstring.patch)18
-rw-r--r--pkgs/servers/sql/postgresql/patches/relative-to-symlinks-16+.patch (renamed from pkgs/servers/sql/postgresql/patches/disable-normalize_exec_path.patch)5
-rw-r--r--pkgs/servers/sql/postgresql/patches/relative-to-symlinks.patch13
-rw-r--r--pkgs/servers/sql/postgresql/patches/socketdir-in-run-13+.patch (renamed from pkgs/servers/sql/postgresql/patches/socketdir-in-run-13.patch)6
-rw-r--r--pkgs/servers/sql/postgresql/patches/socketdir-in-run.patch2
-rw-r--r--pkgs/servers/sql/postgresql/patches/specify_pkglibdir_at_runtime.patch5
-rw-r--r--pkgs/servers/sql/rqlite/default.nix6
-rw-r--r--pkgs/servers/sslh/default.nix4
-rw-r--r--pkgs/servers/sunshine/default.nix22
-rw-r--r--pkgs/servers/sunshine/dont-build-webui.patch13
-rw-r--r--pkgs/servers/sunshine/package-lock.json163
-rw-r--r--pkgs/servers/tailscale/default.nix16
-rw-r--r--pkgs/servers/tracing/tempo/default.nix4
-rw-r--r--pkgs/servers/traefik/default.nix7
-rw-r--r--pkgs/servers/trickster/trickster.nix25
-rw-r--r--pkgs/servers/uwsgi/default.nix4
-rw-r--r--pkgs/servers/varnish/default.nix5
-rw-r--r--pkgs/servers/varnish/modules.nix12
-rw-r--r--pkgs/servers/varnish/packages.nix6
-rw-r--r--pkgs/servers/web-apps/changedetection-io/default.nix4
-rw-r--r--pkgs/servers/web-apps/dolibarr/default.nix4
-rw-r--r--pkgs/servers/web-apps/galene/default.nix6
-rw-r--r--pkgs/servers/web-apps/kavita/default.nix6
-rw-r--r--pkgs/servers/web-apps/kavita/restore-migrations.diff147
-rw-r--r--pkgs/servers/web-apps/monica/default.nix4
-rw-r--r--pkgs/servers/web-apps/netbox/default.nix4
-rw-r--r--pkgs/servers/web-apps/nifi/default.nix4
-rw-r--r--pkgs/servers/web-apps/outline/default.nix6
-rw-r--r--pkgs/servers/web-apps/plausible/default.nix2
-rw-r--r--pkgs/servers/web-apps/wordpress/packages/languages.json12
-rw-r--r--pkgs/servers/web-apps/wordpress/packages/plugins.json92
-rw-r--r--pkgs/servers/web-apps/wordpress/packages/wordpress-plugins.json2
-rw-r--r--pkgs/servers/x11/xorg/default.nix200
-rw-r--r--pkgs/servers/x11/xorg/overrides.nix1
-rw-r--r--pkgs/servers/x11/xorg/tarballs.list64
-rwxr-xr-xpkgs/servers/x11/xorg/update.py116
-rw-r--r--pkgs/servers/x11/xorg/xwayland.nix22
-rw-r--r--pkgs/servers/xmpp/prosody/default.nix4
-rw-r--r--pkgs/servers/zigbee2mqtt/default.nix6
-rw-r--r--pkgs/shells/carapace/default.nix6
-rw-r--r--pkgs/shells/fish/plugins/default.nix4
-rw-r--r--pkgs/shells/fish/plugins/git-abbr.nix23
-rw-r--r--pkgs/shells/fish/plugins/gruvbox.nix17
-rw-r--r--pkgs/shells/hishtory/default.nix6
-rw-r--r--pkgs/shells/ksh/default.nix40
-rw-r--r--pkgs/shells/nushell/default.nix6
-rw-r--r--pkgs/shells/nushell/nu_scripts/default.nix6
-rw-r--r--pkgs/shells/nushell/plugins/formats.nix2
-rw-r--r--pkgs/shells/nushell/plugins/gstat.nix2
-rw-r--r--pkgs/shells/nushell/plugins/net.nix4
-rw-r--r--pkgs/shells/nushell/plugins/query.nix2
-rw-r--r--pkgs/shells/rc-9front/default.nix2
-rw-r--r--pkgs/shells/zsh/oh-my-zsh/default.nix6
-rw-r--r--pkgs/shells/zsh/zsh-abbr/default.nix4
-rw-r--r--pkgs/shells/zsh/zsh-fzf-tab/default.nix12
-rw-r--r--pkgs/shells/zsh/zsh-prezto/default.nix2
-rw-r--r--pkgs/shells/zsh/zsh-you-should-use/default.nix4
-rw-r--r--pkgs/stdenv/darwin/default.nix41
-rw-r--r--pkgs/stdenv/generic/make-derivation.nix11
-rw-r--r--pkgs/test/cuda/default.nix1
-rw-r--r--pkgs/tools/X11/arandr/default.nix4
-rw-r--r--pkgs/tools/X11/caffeine-ng/default.nix4
-rw-r--r--pkgs/tools/X11/dispad/default.nix2
-rw-r--r--pkgs/tools/X11/imwheel/default.nix2
-rw-r--r--pkgs/tools/X11/nitrogen/default.nix2
-rw-r--r--pkgs/tools/X11/nx-libs/default.nix2
-rw-r--r--pkgs/tools/X11/obconf/default.nix4
-rw-r--r--pkgs/tools/X11/opentabletdriver/default.nix4
-rw-r--r--pkgs/tools/X11/sbs/default.nix2
-rw-r--r--pkgs/tools/X11/wmctrl/default.nix2
-rw-r--r--pkgs/tools/X11/wpgtk/default.nix4
-rw-r--r--pkgs/tools/X11/x11vnc/default.nix2
-rw-r--r--pkgs/tools/X11/x2vnc/default.nix2
-rw-r--r--pkgs/tools/X11/xborders/default.nix4
-rw-r--r--pkgs/tools/X11/xcalib/default.nix2
-rw-r--r--pkgs/tools/X11/xdg-utils/default.nix40
-rw-r--r--pkgs/tools/X11/xmacro/default.nix2
-rw-r--r--pkgs/tools/X11/xmousepasteblock/default.nix2
-rw-r--r--pkgs/tools/X11/xpra/default.nix6
-rw-r--r--pkgs/tools/X11/xpra/libfakeXinerama.nix2
-rw-r--r--pkgs/tools/X11/xtrace/default.nix2
-rw-r--r--pkgs/tools/admin/aliyun-cli/default.nix6
-rw-r--r--pkgs/tools/admin/analog/default.nix2
-rw-r--r--pkgs/tools/admin/aws-encryption-sdk-cli/default.nix9
-rw-r--r--pkgs/tools/admin/aws-mfa/default.nix9
-rw-r--r--pkgs/tools/admin/awscli/default.nix132
-rw-r--r--pkgs/tools/admin/awscli2/default.nix6
-rw-r--r--pkgs/tools/admin/azure-cli/default.nix8
-rw-r--r--pkgs/tools/admin/azure-cli/python-packages.nix12
-rw-r--r--pkgs/tools/admin/balena-cli/default.nix6
-rw-r--r--pkgs/tools/admin/drawterm/default.nix6
-rw-r--r--pkgs/tools/admin/fits-cloudctl/default.nix16
-rw-r--r--pkgs/tools/admin/gimme-aws-creds/default.nix4
-rw-r--r--pkgs/tools/admin/google-cloud-sdk/components.json993
-rw-r--r--pkgs/tools/admin/google-cloud-sdk/data.nix22
-rw-r--r--pkgs/tools/admin/google-cloud-sdk/default.nix4
-rw-r--r--pkgs/tools/admin/google-cloud-sdk/withExtraComponents.nix64
-rw-r--r--pkgs/tools/admin/granted/default.nix6
-rw-r--r--pkgs/tools/admin/kics/default.nix6
-rw-r--r--pkgs/tools/admin/lego/default.nix6
-rw-r--r--pkgs/tools/admin/pgadmin/default.nix24
-rw-r--r--pkgs/tools/admin/pgadmin/yarn.lock6713
-rw-r--r--pkgs/tools/admin/pulsarctl/default.nix26
-rw-r--r--pkgs/tools/admin/pulumi-bin/data.nix498
-rw-r--r--pkgs/tools/admin/pulumi/default.nix57
-rw-r--r--pkgs/tools/admin/qovery-cli/default.nix6
-rw-r--r--pkgs/tools/admin/sec/default.nix2
-rw-r--r--pkgs/tools/admin/stripe-cli/default.nix6
-rw-r--r--pkgs/tools/admin/trivy/default.nix6
-rw-r--r--pkgs/tools/archivers/rpmextract/default.nix2
-rw-r--r--pkgs/tools/archivers/unp/default.nix2
-rw-r--r--pkgs/tools/archivers/xarchive/default.nix2
-rw-r--r--pkgs/tools/archivers/xarchiver/default.nix4
-rw-r--r--pkgs/tools/audio/alsaequal/default.nix2
-rw-r--r--pkgs/tools/audio/bpm-tools/default.nix2
-rw-r--r--pkgs/tools/audio/ezstream/default.nix2
-rw-r--r--pkgs/tools/audio/gvolicon/default.nix4
-rw-r--r--pkgs/tools/audio/headset-charge-indicator/default.nix4
-rw-r--r--pkgs/tools/audio/kaldi/default.nix2
-rw-r--r--pkgs/tools/audio/liquidsoap/full.nix11
-rw-r--r--pkgs/tools/audio/mictray/default.nix4
-rw-r--r--pkgs/tools/audio/mp3cat/default.nix2
-rw-r--r--pkgs/tools/audio/mpdris2/default.nix4
-rw-r--r--pkgs/tools/audio/mpris-scrobbler/default.nix4
-rw-r--r--pkgs/tools/audio/pa-applet/default.nix2
-rw-r--r--pkgs/tools/audio/pasystray/default.nix4
-rw-r--r--pkgs/tools/audio/pulsemixer/default.nix2
-rw-r--r--pkgs/tools/audio/trx/default.nix2
-rw-r--r--pkgs/tools/audio/vgmtools/default.nix4
-rw-r--r--pkgs/tools/audio/volctl/default.nix6
-rw-r--r--pkgs/tools/audio/whisper-ctranslate2/default.nix4
-rw-r--r--pkgs/tools/audio/wyoming/faster-whisper.nix1
-rw-r--r--pkgs/tools/backup/bakelite/default.nix2
-rw-r--r--pkgs/tools/backup/bdsync/default.nix2
-rw-r--r--pkgs/tools/backup/borgmatic/default.nix13
-rw-r--r--pkgs/tools/backup/chunksync/default.nix2
-rw-r--r--pkgs/tools/backup/duplicity/default.nix20
-rw-r--r--pkgs/tools/backup/duply/default.nix2
-rw-r--r--pkgs/tools/backup/mt-st/default.nix2
-rw-r--r--pkgs/tools/backup/mtx/default.nix2
-rw-r--r--pkgs/tools/backup/partimage/default.nix2
-rw-r--r--pkgs/tools/backup/percona-xtrabackup/default.nix6
-rw-r--r--pkgs/tools/backup/percona-xtrabackup/generic.nix8
-rw-r--r--pkgs/tools/backup/percona-xtrabackup/innovation.nix15
-rw-r--r--pkgs/tools/backup/percona-xtrabackup/lts.nix (renamed from pkgs/tools/backup/percona-xtrabackup/8_0.nix)0
-rw-r--r--pkgs/tools/backup/sigtop/default.nix6
-rw-r--r--pkgs/tools/backup/stenc/default.nix2
-rw-r--r--pkgs/tools/bluetooth/blueberry/default.nix4
-rw-r--r--pkgs/tools/bluetooth/blueman/default.nix4
-rw-r--r--pkgs/tools/bluetooth/obex-data-server/default.nix2
-rw-r--r--pkgs/tools/cd-dvd/bchunk/default.nix2
-rw-r--r--pkgs/tools/cd-dvd/brasero/default.nix4
-rw-r--r--pkgs/tools/cd-dvd/ccd2iso/default.nix2
-rw-r--r--pkgs/tools/cd-dvd/cdi2iso/default.nix2
-rw-r--r--pkgs/tools/cd-dvd/cdimgtools/default.nix2
-rw-r--r--pkgs/tools/cd-dvd/cdrdao/default.nix2
-rw-r--r--pkgs/tools/cd-dvd/cdrkit/default.nix2
-rw-r--r--pkgs/tools/cd-dvd/cdrtools/default.nix2
-rw-r--r--pkgs/tools/cd-dvd/cuetools/default.nix2
-rw-r--r--pkgs/tools/cd-dvd/dvd+rw-tools/default.nix2
-rw-r--r--pkgs/tools/cd-dvd/dvd-vr/default.nix2
-rw-r--r--pkgs/tools/cd-dvd/isomd5sum/default.nix2
-rw-r--r--pkgs/tools/cd-dvd/lsdvd/default.nix2
-rw-r--r--pkgs/tools/cd-dvd/mdf2iso/default.nix2
-rw-r--r--pkgs/tools/cd-dvd/nrg2iso/default.nix2
-rw-r--r--pkgs/tools/cd-dvd/vobcopy/default.nix2
-rw-r--r--pkgs/tools/compression/flips/default.nix4
-rw-r--r--pkgs/tools/compression/lzop/default.nix2
-rw-r--r--pkgs/tools/filesystems/afpfs-ng/default.nix2
-rw-r--r--pkgs/tools/filesystems/archivemount/default.nix2
-rw-r--r--pkgs/tools/filesystems/bashmount/default.nix2
-rw-r--r--pkgs/tools/filesystems/bcache-tools/default.nix2
-rw-r--r--pkgs/tools/filesystems/bcachefs-tools/Cargo.lock871
-rw-r--r--pkgs/tools/filesystems/bcachefs-tools/default.nix108
-rw-r--r--pkgs/tools/filesystems/bindfs/default.nix5
-rw-r--r--pkgs/tools/filesystems/btrfs-progs/default.nix4
-rw-r--r--pkgs/tools/filesystems/ceph/default.nix9
-rw-r--r--pkgs/tools/filesystems/chunkfs/default.nix2
-rw-r--r--pkgs/tools/filesystems/ciopfs/default.nix2
-rw-r--r--pkgs/tools/filesystems/dislocker/default.nix2
-rw-r--r--pkgs/tools/filesystems/djmount/default.nix2
-rw-r--r--pkgs/tools/filesystems/duperemove/default.nix2
-rw-r--r--pkgs/tools/filesystems/e2tools/default.nix2
-rw-r--r--pkgs/tools/filesystems/ext4magic/default.nix2
-rw-r--r--pkgs/tools/filesystems/extundelete/default.nix2
-rw-r--r--pkgs/tools/filesystems/f2fs-tools/default.nix2
-rw-r--r--pkgs/tools/filesystems/fuseiso/default.nix2
-rw-r--r--pkgs/tools/filesystems/garage/default.nix1
-rw-r--r--pkgs/tools/filesystems/gcsfuse/default.nix14
-rw-r--r--pkgs/tools/filesystems/genext2fs/default.nix2
-rw-r--r--pkgs/tools/filesystems/genromfs/default.nix2
-rw-r--r--pkgs/tools/filesystems/go-mtpfs/default.nix6
-rw-r--r--pkgs/tools/filesystems/grive2/default.nix2
-rw-r--r--pkgs/tools/filesystems/moosefs/default.nix2
-rw-r--r--pkgs/tools/filesystems/nilfs-utils/default.nix2
-rw-r--r--pkgs/tools/filesystems/orangefs/default.nix2
-rw-r--r--pkgs/tools/filesystems/reiser4progs/default.nix2
-rw-r--r--pkgs/tools/filesystems/reiserfsprogs/default.nix2
-rw-r--r--pkgs/tools/filesystems/s3backer/default.nix4
-rw-r--r--pkgs/tools/filesystems/smbnetfs/default.nix2
-rw-r--r--pkgs/tools/filesystems/squashfs-tools-ng/default.nix4
-rw-r--r--pkgs/tools/filesystems/u3-tool/default.nix2
-rw-r--r--pkgs/tools/filesystems/vmfs-tools/default.nix2
-rw-r--r--pkgs/tools/filesystems/wiimms-iso-tools/default.nix2
-rw-r--r--pkgs/tools/filesystems/zerofree/default.nix2
-rw-r--r--pkgs/tools/games/joystickwake/default.nix4
-rw-r--r--pkgs/tools/games/minecraft/fabric-installer/default.nix4
-rw-r--r--pkgs/tools/games/minecraft/mcaselector/default.nix4
-rw-r--r--pkgs/tools/games/mymcplus/default.nix4
-rw-r--r--pkgs/tools/games/opentracker/default.nix4
-rw-r--r--pkgs/tools/games/pokefinder/default.nix3
-rw-r--r--pkgs/tools/games/scarab/default.nix4
-rw-r--r--pkgs/tools/games/slipstream/default.nix2
-rw-r--r--pkgs/tools/games/steam-rom-manager/default.nix4
-rw-r--r--pkgs/tools/games/steamtinkerlaunch/default.nix20
-rw-r--r--pkgs/tools/games/ukmm/default.nix4
-rw-r--r--pkgs/tools/graphics/agi/default.nix4
-rw-r--r--pkgs/tools/graphics/astc-encoder/default.nix4
-rw-r--r--pkgs/tools/graphics/dpic/default.nix4
-rw-r--r--pkgs/tools/graphics/dynamic-wallpaper/default.nix2
-rw-r--r--pkgs/tools/graphics/enblend-enfuse/default.nix2
-rw-r--r--pkgs/tools/graphics/epstool/default.nix2
-rw-r--r--pkgs/tools/graphics/escrotum/default.nix4
-rw-r--r--pkgs/tools/graphics/fgallery/default.nix2
-rw-r--r--pkgs/tools/graphics/gifsicle/default.nix2
-rw-r--r--pkgs/tools/graphics/gromit-mpx/default.nix4
-rw-r--r--pkgs/tools/graphics/ifm/default.nix2
-rw-r--r--pkgs/tools/graphics/mscgen/default.nix2
-rw-r--r--pkgs/tools/graphics/netpbm/default.nix6
-rw-r--r--pkgs/tools/graphics/optar/default.nix2
-rw-r--r--pkgs/tools/graphics/pdf2svg/default.nix2
-rw-r--r--pkgs/tools/graphics/pdftag/default.nix4
-rw-r--r--pkgs/tools/graphics/pstoedit/default.nix2
-rw-r--r--pkgs/tools/graphics/realesrgan-ncnn-vulkan/cmakelists.patch22
-rw-r--r--pkgs/tools/graphics/realesrgan-ncnn-vulkan/default.nix2
-rw-r--r--pkgs/tools/graphics/s2png/default.nix2
-rw-r--r--pkgs/tools/graphics/sanjuuni/default.nix5
-rw-r--r--pkgs/tools/graphics/svgcleaner/default.nix2
-rw-r--r--pkgs/tools/graphics/unpaper/default.nix2
-rw-r--r--pkgs/tools/graphics/vulkan-cts/default.nix4
-rw-r--r--pkgs/tools/graphics/vulkan-cts/sources.nix4
-rw-r--r--pkgs/tools/graphics/wallutils/default.nix22
-rw-r--r--pkgs/tools/graphics/wdisplays/default.nix4
-rw-r--r--pkgs/tools/graphics/xcftools/default.nix2
-rw-r--r--pkgs/tools/graphics/zbar/default.nix4
-rw-r--r--pkgs/tools/inputmethods/emote/default.nix4
-rw-r--r--pkgs/tools/inputmethods/ibus-engines/ibus-anthy/default.nix4
-rw-r--r--pkgs/tools/inputmethods/ibus-engines/ibus-bamboo/default.nix4
-rw-r--r--pkgs/tools/inputmethods/ibus-engines/ibus-cangjie/default.nix4
-rw-r--r--pkgs/tools/inputmethods/ibus-engines/ibus-hangul/default.nix6
-rw-r--r--pkgs/tools/inputmethods/ibus-engines/ibus-kkc/default.nix2
-rw-r--r--pkgs/tools/inputmethods/ibus-engines/ibus-libpinyin/default.nix4
-rw-r--r--pkgs/tools/inputmethods/ibus-engines/ibus-m17n/default.nix4
-rw-r--r--pkgs/tools/inputmethods/ibus-engines/ibus-table/default.nix4
-rw-r--r--pkgs/tools/inputmethods/ibus-engines/ibus-typing-booster/default.nix4
-rw-r--r--pkgs/tools/inputmethods/ibus-engines/ibus-uniemoji/default.nix4
-rw-r--r--pkgs/tools/inputmethods/ibus/default.nix4
-rw-r--r--pkgs/tools/inputmethods/input-remapper/default.nix6
-rw-r--r--pkgs/tools/inputmethods/nabi/default.nix2
-rw-r--r--pkgs/tools/misc/aescrypt/default.nix2
-rw-r--r--pkgs/tools/misc/aichat/default.nix6
-rw-r--r--pkgs/tools/misc/alarm-clock-applet/default.nix4
-rw-r--r--pkgs/tools/misc/apparix/default.nix2
-rw-r--r--pkgs/tools/misc/archi/default.nix19
-rw-r--r--pkgs/tools/misc/bfr/default.nix2
-rw-r--r--pkgs/tools/misc/bibtex2html/default.nix2
-rw-r--r--pkgs/tools/misc/bibtool/default.nix2
-rw-r--r--pkgs/tools/misc/bibutils/default.nix2
-rw-r--r--pkgs/tools/misc/birdfont/default.nix4
-rw-r--r--pkgs/tools/misc/bmap-tools/default.nix2
-rw-r--r--pkgs/tools/misc/bogofilter/default.nix2
-rw-r--r--pkgs/tools/misc/broot/default.nix6
-rw-r--r--pkgs/tools/misc/ccze/default.nix2
-rw-r--r--pkgs/tools/misc/cf-terraforming/default.nix6
-rw-r--r--pkgs/tools/misc/cht.sh/default.nix2
-rw-r--r--pkgs/tools/misc/ckb-next/default.nix2
-rw-r--r--pkgs/tools/misc/clipster/default.nix4
-rw-r--r--pkgs/tools/misc/cloc/default.nix2
-rw-r--r--pkgs/tools/misc/contacts/default.nix2
-rw-r--r--pkgs/tools/misc/coreutils/default.nix3
-rw-r--r--pkgs/tools/misc/cpulimit/default.nix2
-rw-r--r--pkgs/tools/misc/cpuminer/default.nix2
-rw-r--r--pkgs/tools/misc/csv2latex/default.nix2
-rw-r--r--pkgs/tools/misc/cyberchef/default.nix4
-rw-r--r--pkgs/tools/misc/dbus-map/default.nix2
-rw-r--r--pkgs/tools/misc/ddcutil/default.nix2
-rw-r--r--pkgs/tools/misc/diffoscope/default.nix4
-rw-r--r--pkgs/tools/misc/dtool/default.nix4
-rw-r--r--pkgs/tools/misc/dtool/rustc-serialize-fix.patch16
-rw-r--r--pkgs/tools/misc/duc/default.nix2
-rw-r--r--pkgs/tools/misc/dumptorrent/default.nix2
-rw-r--r--pkgs/tools/misc/edid-decode/default.nix2
-rw-r--r--pkgs/tools/misc/esphome/dashboard.nix4
-rw-r--r--pkgs/tools/misc/esphome/default.nix11
-rw-r--r--pkgs/tools/misc/esptool-ck/default.nix2
-rw-r--r--pkgs/tools/misc/ethtool/default.nix14
-rw-r--r--pkgs/tools/misc/ets/default.nix18
-rw-r--r--pkgs/tools/misc/fd/default.nix6
-rw-r--r--pkgs/tools/misc/fend/default.nix6
-rw-r--r--pkgs/tools/misc/flashrom/default.nix2
-rw-r--r--pkgs/tools/misc/flexoptix-app/default.nix5
-rw-r--r--pkgs/tools/misc/flowgger/default.nix6
-rw-r--r--pkgs/tools/misc/fsearch/default.nix4
-rw-r--r--pkgs/tools/misc/fsmark/default.nix2
-rw-r--r--pkgs/tools/misc/gaphor/default.nix6
-rw-r--r--pkgs/tools/misc/geekbench/6.nix8
-rw-r--r--pkgs/tools/misc/geteltorito/default.nix2
-rw-r--r--pkgs/tools/misc/gh-markdown-preview/default.nix4
-rw-r--r--pkgs/tools/misc/github-backup/default.nix4
-rw-r--r--pkgs/tools/misc/google-cloud-bigtable-tool/default.nix6
-rw-r--r--pkgs/tools/misc/google-cloud-sql-proxy/default.nix6
-rw-r--r--pkgs/tools/misc/goose/default.nix14
-rw-r--r--pkgs/tools/misc/goreleaser/default.nix6
-rw-r--r--pkgs/tools/misc/gparted/default.nix4
-rw-r--r--pkgs/tools/misc/gpick/default.nix4
-rw-r--r--pkgs/tools/misc/graylog/5.2.nix4
-rw-r--r--pkgs/tools/misc/grizzly/default.nix6
-rw-r--r--pkgs/tools/misc/grub4dos/default.nix2
-rw-r--r--pkgs/tools/misc/gsmartcontrol/default.nix4
-rw-r--r--pkgs/tools/misc/gtkterm/default.nix8
-rw-r--r--pkgs/tools/misc/gwe/default.nix4
-rw-r--r--pkgs/tools/misc/h5utils/default.nix2
-rw-r--r--pkgs/tools/misc/hakuneko/default.nix4
-rw-r--r--pkgs/tools/misc/hashit/default.nix4
-rw-r--r--pkgs/tools/misc/hdaps-gl/default.nix2
-rw-r--r--pkgs/tools/misc/heatseeker/default.nix2
-rw-r--r--pkgs/tools/misc/hebcal/default.nix2
-rw-r--r--pkgs/tools/misc/html-proofer/Gemfile.lock4
-rw-r--r--pkgs/tools/misc/html-proofer/gemset.nix4
-rw-r--r--pkgs/tools/misc/hueadm/default.nix2
-rw-r--r--pkgs/tools/misc/hunt/default.nix2
-rw-r--r--pkgs/tools/misc/hwatch/default.nix6
-rw-r--r--pkgs/tools/misc/infracost/default.nix9
-rw-r--r--pkgs/tools/misc/ink/default.nix2
-rw-r--r--pkgs/tools/misc/ipxe/default.nix10
-rw-r--r--pkgs/tools/misc/jfrog-cli/default.nix6
-rw-r--r--pkgs/tools/misc/jugglinglab/default.nix4
-rw-r--r--pkgs/tools/misc/keychain/default.nix2
-rw-r--r--pkgs/tools/misc/kodi-cli/default.nix2
-rw-r--r--pkgs/tools/misc/kronometer/default.nix2
-rw-r--r--pkgs/tools/misc/latex2html/default.nix2
-rw-r--r--pkgs/tools/misc/lbdb/default.nix2
-rw-r--r--pkgs/tools/misc/lcdf-typetools/default.nix2
-rw-r--r--pkgs/tools/misc/ldapvi/default.nix2
-rw-r--r--pkgs/tools/misc/lektor/default.nix31
-rw-r--r--pkgs/tools/misc/lesspipe/default.nix2
-rw-r--r--pkgs/tools/misc/limitcpu/default.nix2
-rw-r--r--pkgs/tools/misc/linuxquota/default.nix2
-rw-r--r--pkgs/tools/misc/loadlibrary/default.nix2
-rw-r--r--pkgs/tools/misc/lrzsz/default.nix2
-rw-r--r--pkgs/tools/misc/makebootfat/default.nix2
-rw-r--r--pkgs/tools/misc/maker-panel/default.nix4
-rw-r--r--pkgs/tools/misc/maker-panel/update-gerber-types-to-0.3.patch109
-rw-r--r--pkgs/tools/misc/man-db/default.nix2
-rw-r--r--pkgs/tools/misc/massren/default.nix6
-rw-r--r--pkgs/tools/misc/mcfly/default.nix6
-rw-r--r--pkgs/tools/misc/mdbtools/default.nix2
-rw-r--r--pkgs/tools/misc/memtest86+/default.nix2
-rw-r--r--pkgs/tools/misc/minicom/default.nix2
-rw-r--r--pkgs/tools/misc/minipro/default.nix5
-rw-r--r--pkgs/tools/misc/mise/default.nix6
-rw-r--r--pkgs/tools/misc/mlocate/default.nix2
-rw-r--r--pkgs/tools/misc/moar/default.nix4
-rw-r--r--pkgs/tools/misc/mongodb-compass/default.nix8
-rw-r--r--pkgs/tools/misc/most/default.nix2
-rw-r--r--pkgs/tools/misc/mstflint/default.nix15
-rw-r--r--pkgs/tools/misc/nagstamon/default.nix2
-rw-r--r--pkgs/tools/misc/nautilus-open-any-terminal/default.nix4
-rw-r--r--pkgs/tools/misc/notify-desktop/default.nix2
-rw-r--r--pkgs/tools/misc/ntfy-sh/default.nix8
-rw-r--r--pkgs/tools/misc/octosql/default.nix4
-rw-r--r--pkgs/tools/misc/opencorsairlink/default.nix2
-rw-r--r--pkgs/tools/misc/opentelemetry-collector/contrib.nix6
-rw-r--r--pkgs/tools/misc/opentelemetry-collector/default.nix6
-rw-r--r--pkgs/tools/misc/os-prober/default.nix2
-rw-r--r--pkgs/tools/misc/ostree/default.nix2
-rw-r--r--pkgs/tools/misc/pal/default.nix2
-rw-r--r--pkgs/tools/misc/panoply/default.nix4
-rw-r--r--pkgs/tools/misc/parallel/default.nix4
-rw-r--r--pkgs/tools/misc/parallel/wrapper.nix22
-rw-r--r--pkgs/tools/misc/parcellite/default.nix4
-rw-r--r--pkgs/tools/misc/pastebinit/default.nix2
-rw-r--r--pkgs/tools/misc/phrase-cli/default.nix6
-rw-r--r--pkgs/tools/misc/pipelight/default.nix2
-rw-r--r--pkgs/tools/misc/pkgdiff/default.nix2
-rw-r--r--pkgs/tools/misc/plotinus/default.nix4
-rw-r--r--pkgs/tools/misc/popsicle/default.nix4
-rw-r--r--pkgs/tools/misc/pre-commit/default.nix4
-rw-r--r--pkgs/tools/misc/pspg/default.nix4
-rw-r--r--pkgs/tools/misc/qflipper/default.nix4
-rw-r--r--pkgs/tools/misc/qjoypad/default.nix2
-rw-r--r--pkgs/tools/misc/recoverjpeg/default.nix2
-rw-r--r--pkgs/tools/misc/riemann-c-client/default.nix4
-rw-r--r--pkgs/tools/misc/rig/default.nix2
-rw-r--r--pkgs/tools/misc/rmlint/default.nix4
-rw-r--r--pkgs/tools/misc/rrdtool/default.nix2
-rw-r--r--pkgs/tools/misc/rshim-user-space/default.nix2
-rw-r--r--pkgs/tools/misc/scanmem/default.nix4
-rw-r--r--pkgs/tools/misc/sensible-utils/default.nix2
-rw-r--r--pkgs/tools/misc/sixpair/default.nix2
-rw-r--r--pkgs/tools/misc/slsnif/default.nix2
-rw-r--r--pkgs/tools/misc/sonota/default.nix2
-rw-r--r--pkgs/tools/misc/sqlite3-to-mysql/default.nix4
-rw-r--r--pkgs/tools/misc/starship/default.nix6
-rw-r--r--pkgs/tools/misc/staruml/default.nix4
-rw-r--r--pkgs/tools/misc/statserial/default.nix2
-rw-r--r--pkgs/tools/misc/subberthehut/default.nix2
-rw-r--r--pkgs/tools/misc/system-config-printer/default.nix6
-rw-r--r--pkgs/tools/misc/tbls/default.nix6
-rw-r--r--pkgs/tools/misc/tewisay/default.nix2
-rw-r--r--pkgs/tools/misc/timidity/default.nix2
-rw-r--r--pkgs/tools/misc/tmpwatch/default.nix2
-rw-r--r--pkgs/tools/misc/topicctl/default.nix4
-rw-r--r--pkgs/tools/misc/toybox/default.nix4
-rw-r--r--pkgs/tools/misc/trackma/default.nix4
-rw-r--r--pkgs/tools/misc/ttylog/default.nix2
-rw-r--r--pkgs/tools/misc/ttyplot/default.nix4
-rw-r--r--pkgs/tools/misc/txt2man/default.nix2
-rw-r--r--pkgs/tools/misc/uhubctl/default.nix2
-rw-r--r--pkgs/tools/misc/ultrastar-creator/default.nix2
-rw-r--r--pkgs/tools/misc/ultrastar-manager/default.nix2
-rw-r--r--pkgs/tools/misc/undocker/default.nix33
-rw-r--r--pkgs/tools/misc/url-parser/default.nix6
-rw-r--r--pkgs/tools/misc/urn-timer/default.nix6
-rw-r--r--pkgs/tools/misc/usbimager/default.nix4
-rw-r--r--pkgs/tools/misc/uucp/default.nix27
-rw-r--r--pkgs/tools/misc/vector/Cargo.lock1346
-rw-r--r--pkgs/tools/misc/vector/default.nix4
-rw-r--r--pkgs/tools/misc/vorbisgain/default.nix2
-rw-r--r--pkgs/tools/misc/vrc-get/default.nix17
-rw-r--r--pkgs/tools/misc/vsh/default.nix4
-rw-r--r--pkgs/tools/misc/wacomtablet/default.nix2
-rw-r--r--pkgs/tools/misc/wagyu/default.nix10
-rw-r--r--pkgs/tools/misc/wagyu/fix-rustc-serialize-version.patch15
-rw-r--r--pkgs/tools/misc/wakapi/default.nix6
-rw-r--r--pkgs/tools/misc/wasm-tools/default.nix6
-rw-r--r--pkgs/tools/misc/watchexec/default.nix6
-rw-r--r--pkgs/tools/misc/woeusb-ng/default.nix4
-rw-r--r--pkgs/tools/misc/wootility/default.nix4
-rw-r--r--pkgs/tools/misc/wv/default.nix2
-rw-r--r--pkgs/tools/misc/wyrd/default.nix2
-rw-r--r--pkgs/tools/misc/xclip/default.nix2
-rw-r--r--pkgs/tools/misc/xdaliclock/default.nix4
-rw-r--r--pkgs/tools/misc/xflux/gui.nix4
-rw-r--r--pkgs/tools/misc/xfstests/default.nix2
-rw-r--r--pkgs/tools/misc/xvfb-run/default.nix2
-rw-r--r--pkgs/tools/misc/yad/default.nix5
-rw-r--r--pkgs/tools/networking/6tunnel/default.nix2
-rw-r--r--pkgs/tools/networking/apc-temp-fetch/default.nix9
-rw-r--r--pkgs/tools/networking/arpoison/default.nix2
-rw-r--r--pkgs/tools/networking/axel/default.nix2
-rw-r--r--pkgs/tools/networking/bacnet-stack/default.nix6
-rw-r--r--pkgs/tools/networking/bgpq4/default.nix4
-rw-r--r--pkgs/tools/networking/biosdevname/default.nix2
-rw-r--r--pkgs/tools/networking/brook/default.nix6
-rw-r--r--pkgs/tools/networking/castnow/default.nix2
-rw-r--r--pkgs/tools/networking/chrony/default.nix2
-rw-r--r--pkgs/tools/networking/cksfv/default.nix2
-rw-r--r--pkgs/tools/networking/cloud-custodian/default.nix4
-rw-r--r--pkgs/tools/networking/cntlm/default.nix2
-rw-r--r--pkgs/tools/networking/corerad/default.nix8
-rw-r--r--pkgs/tools/networking/corkscrew/default.nix2
-rw-r--r--pkgs/tools/networking/curl-impersonate/default.nix18
-rw-r--r--pkgs/tools/networking/curl/8.7.1-compression-fix.patch168
-rw-r--r--pkgs/tools/networking/curl/default.nix6
-rw-r--r--pkgs/tools/networking/ddns-go/default.nix4
-rw-r--r--pkgs/tools/networking/dibbler/default.nix29
-rw-r--r--pkgs/tools/networking/dirb/default.nix2
-rw-r--r--pkgs/tools/networking/dnsmasq/default.nix2
-rw-r--r--pkgs/tools/networking/dnsproxy/default.nix4
-rw-r--r--pkgs/tools/networking/dsniff/default.nix7
-rw-r--r--pkgs/tools/networking/easyrsa/default.nix2
-rw-r--r--pkgs/tools/networking/eggdrop/default.nix2
-rw-r--r--pkgs/tools/networking/email/default.nix2
-rw-r--r--pkgs/tools/networking/eternal-terminal/default.nix7
-rw-r--r--pkgs/tools/networking/ferm/default.nix6
-rw-r--r--pkgs/tools/networking/ferm/import-ferm-wrapped.patch14
-rw-r--r--pkgs/tools/networking/ghz/default.nix6
-rw-r--r--pkgs/tools/networking/gp-saml-gui/default.nix4
-rw-r--r--pkgs/tools/networking/grpc_cli/default.nix4
-rw-r--r--pkgs/tools/networking/gupnp-tools/default.nix4
-rw-r--r--pkgs/tools/networking/gvpe/default.nix2
-rw-r--r--pkgs/tools/networking/haguichi/default.nix4
-rw-r--r--pkgs/tools/networking/httperf/default.nix2
-rw-r--r--pkgs/tools/networking/httptunnel/default.nix2
-rw-r--r--pkgs/tools/networking/hurl/default.nix6
-rw-r--r--pkgs/tools/networking/i2pd/default.nix4
-rw-r--r--pkgs/tools/networking/ifstat-legacy/default.nix2
-rw-r--r--pkgs/tools/networking/ip2unix/default.nix11
-rw-r--r--pkgs/tools/networking/isync/default.nix2
-rw-r--r--pkgs/tools/networking/juicity/default.nix4
-rw-r--r--pkgs/tools/networking/jwhois/default.nix37
-rw-r--r--pkgs/tools/networking/libnids/default.nix2
-rw-r--r--pkgs/tools/networking/linkchecker/default.nix32
-rw-r--r--pkgs/tools/networking/lychee/default.nix6
-rw-r--r--pkgs/tools/networking/memtier-benchmark/default.nix6
-rw-r--r--pkgs/tools/networking/minidlna/default.nix2
-rw-r--r--pkgs/tools/networking/minio-client/default.nix4
-rw-r--r--pkgs/tools/networking/miredo/default.nix2
-rw-r--r--pkgs/tools/networking/mmsd/default.nix2
-rw-r--r--pkgs/tools/networking/mtr/default.nix3
-rw-r--r--pkgs/tools/networking/mu/default.nix4
-rw-r--r--pkgs/tools/networking/nbd/default.nix2
-rw-r--r--pkgs/tools/networking/ndisc6/default.nix2
-rw-r--r--pkgs/tools/networking/ndjbdns/default.nix2
-rw-r--r--pkgs/tools/networking/nebula/default.nix6
-rw-r--r--pkgs/tools/networking/netbird/default.nix4
-rw-r--r--pkgs/tools/networking/netmask/default.nix2
-rw-r--r--pkgs/tools/networking/netrw/default.nix2
-rw-r--r--pkgs/tools/networking/nettee/default.nix2
-rw-r--r--pkgs/tools/networking/networkd-dispatcher/default.nix13
-rw-r--r--pkgs/tools/networking/networkmanager/applet/default.nix4
-rw-r--r--pkgs/tools/networking/networkmanager/default.nix4
-rw-r--r--pkgs/tools/networking/networkmanager/fortisslvpn/default.nix2
-rw-r--r--pkgs/tools/networking/networkmanager/l2tp/default.nix4
-rw-r--r--pkgs/tools/networking/nfstrace/default.nix2
-rw-r--r--pkgs/tools/networking/noip/default.nix2
-rw-r--r--pkgs/tools/networking/nzbget/default.nix4
-rw-r--r--pkgs/tools/networking/ockam/default.nix6
-rw-r--r--pkgs/tools/networking/openfortivpn/default.nix4
-rw-r--r--pkgs/tools/networking/opensm/default.nix2
-rw-r--r--pkgs/tools/networking/openssh/common.nix7
-rw-r--r--pkgs/tools/networking/openvpn/update-resolv-conf.nix2
-rw-r--r--pkgs/tools/networking/openvpn3/default.nix4
-rw-r--r--pkgs/tools/networking/packetdrill/default.nix2
-rw-r--r--pkgs/tools/networking/pdsh/default.nix2
-rw-r--r--pkgs/tools/networking/persepolis/0001-Allow-building-on-darwin.patch45
-rw-r--r--pkgs/tools/networking/persepolis/0002-Fix-startup-crash-on-darwin.patch41
-rw-r--r--pkgs/tools/networking/persepolis/default.nix92
-rw-r--r--pkgs/tools/networking/pmacct/default.nix2
-rw-r--r--pkgs/tools/networking/ppp/default.nix2
-rw-r--r--pkgs/tools/networking/pptp/default.nix2
-rw-r--r--pkgs/tools/networking/pptpd/default.nix2
-rw-r--r--pkgs/tools/networking/proxychains-ng/default.nix21
-rw-r--r--pkgs/tools/networking/quickserve/default.nix2
-rw-r--r--pkgs/tools/networking/redir/default.nix2
-rw-r--r--pkgs/tools/networking/s3cmd/default.nix2
-rw-r--r--pkgs/tools/networking/shadowsocks-rust/default.nix6
-rw-r--r--pkgs/tools/networking/simpleproxy/default.nix2
-rw-r--r--pkgs/tools/networking/sing-box/default.nix6
-rw-r--r--pkgs/tools/networking/sipsak/default.nix2
-rw-r--r--pkgs/tools/networking/slirp4netns/default.nix6
-rw-r--r--pkgs/tools/networking/speedtest-go/default.nix17
-rw-r--r--pkgs/tools/networking/sshpass/default.nix2
-rw-r--r--pkgs/tools/networking/stevenblack-blocklist/default.nix9
-rw-r--r--pkgs/tools/networking/swagger-codegen3/default.nix5
-rw-r--r--pkgs/tools/networking/tcp-cutter/default.nix2
-rw-r--r--pkgs/tools/networking/tcptraceroute/default.nix2
-rw-r--r--pkgs/tools/networking/tgt/default.nix2
-rw-r--r--pkgs/tools/networking/tracebox/default.nix2
-rw-r--r--pkgs/tools/networking/trurl/default.nix4
-rw-r--r--pkgs/tools/networking/uget/default.nix4
-rw-r--r--pkgs/tools/networking/uqmi/default.nix2
-rw-r--r--pkgs/tools/networking/vde2/default.nix2
-rw-r--r--pkgs/tools/networking/veilid/Cargo.lock563
-rw-r--r--pkgs/tools/networking/veilid/default.nix4
-rw-r--r--pkgs/tools/networking/webalizer/default.nix2
-rw-r--r--pkgs/tools/networking/whois/default.nix2
-rw-r--r--pkgs/tools/networking/wireguard-tools/default.nix2
-rw-r--r--pkgs/tools/networking/wol/default.nix2
-rw-r--r--pkgs/tools/networking/xdp-tools/default.nix2
-rw-r--r--pkgs/tools/networking/xl2tpd/default.nix2
-rw-r--r--pkgs/tools/networking/xnbd/default.nix2
-rw-r--r--pkgs/tools/networking/zap/default.nix6
-rw-r--r--pkgs/tools/networking/zerotierone/Cargo.lock2426
-rw-r--r--pkgs/tools/networking/zerotierone/default.nix9
-rwxr-xr-xpkgs/tools/networking/zerotierone/update.sh2
-rw-r--r--pkgs/tools/networking/zssh/default.nix2
-rw-r--r--pkgs/tools/nix/nix-query-tree-viewer/default.nix4
-rw-r--r--pkgs/tools/nix/npins/default.nix2
-rw-r--r--pkgs/tools/nix/npins/sources.json8
-rw-r--r--pkgs/tools/package-management/checkinstall/default.nix2
-rw-r--r--pkgs/tools/package-management/lix/common.nix286
-rw-r--r--pkgs/tools/package-management/lix/default.nix60
-rw-r--r--pkgs/tools/package-management/lix/doc/default.nix12
-rw-r--r--pkgs/tools/package-management/nfpm/default.nix6
-rw-r--r--pkgs/tools/package-management/nix-eval-jobs/2.19.nix47
-rw-r--r--pkgs/tools/package-management/nix-eval-jobs/default.nix4
-rw-r--r--pkgs/tools/package-management/nix/default.nix19
-rw-r--r--pkgs/tools/package-management/opkg-utils/default.nix2
-rw-r--r--pkgs/tools/package-management/poetry/plugins/poetry-plugin-export.nix4
-rw-r--r--pkgs/tools/package-management/poetry/unwrapped.nix4
-rw-r--r--pkgs/tools/security/aespipe/default.nix6
-rw-r--r--pkgs/tools/security/aide/default.nix4
-rw-r--r--pkgs/tools/security/arti/default.nix6
-rw-r--r--pkgs/tools/security/aws-iam-authenticator/default.nix6
-rw-r--r--pkgs/tools/security/bash-supergenpass/default.nix2
-rw-r--r--pkgs/tools/security/buttercup-desktop/default.nix6
-rw-r--r--pkgs/tools/security/cdxgen/default.nix6
-rw-r--r--pkgs/tools/security/chntpw/default.nix2
-rw-r--r--pkgs/tools/security/clamav/default.nix6
-rw-r--r--pkgs/tools/security/cnquery/default.nix6
-rw-r--r--pkgs/tools/security/cnspec/default.nix6
-rw-r--r--pkgs/tools/security/crowdsec/default.nix6
-rw-r--r--pkgs/tools/security/cryptomator/default.nix4
-rw-r--r--pkgs/tools/security/cve-bin-tool/default.nix144
-rw-r--r--pkgs/tools/security/cve-bin-tool/no-gsutil-python-dependency.patch12
-rw-r--r--pkgs/tools/security/donkey/default.nix2
-rw-r--r--pkgs/tools/security/doona/default.nix2
-rw-r--r--pkgs/tools/security/duo-unix/default.nix2
-rw-r--r--pkgs/tools/security/ecdsatool/ctype-header-c99-implicit-function-declaration.patch12
-rw-r--r--pkgs/tools/security/ecdsatool/default.nix5
-rw-r--r--pkgs/tools/security/ecdsatool/openssl-header-c99-implicit-function-declaration.patch33
-rw-r--r--pkgs/tools/security/efitools/default.nix2
-rw-r--r--pkgs/tools/security/eid-mw/default.nix4
-rw-r--r--pkgs/tools/security/exploitdb/default.nix4
-rw-r--r--pkgs/tools/security/fcrackzip/default.nix2
-rw-r--r--pkgs/tools/security/fpm2/default.nix2
-rw-r--r--pkgs/tools/security/fscan/default.nix6
-rw-r--r--pkgs/tools/security/gau/default.nix22
-rw-r--r--pkgs/tools/security/gencfsm/default.nix4
-rw-r--r--pkgs/tools/security/ggshield/default.nix54
-rw-r--r--pkgs/tools/security/ghidra/build.nix12
-rw-r--r--pkgs/tools/security/gnome-keysign/default.nix4
-rw-r--r--pkgs/tools/security/gorilla-bin/default.nix2
-rw-r--r--pkgs/tools/security/gotestwaf/default.nix15
-rw-r--r--pkgs/tools/security/hashcash/default.nix2
-rw-r--r--pkgs/tools/security/hashdeep/default.nix2
-rw-r--r--pkgs/tools/security/kestrel/default.nix6
-rw-r--r--pkgs/tools/security/keybase/gui.nix4
-rw-r--r--pkgs/tools/security/knowsmore/default.nix40
-rw-r--r--pkgs/tools/security/kubeclarity/default.nix9
-rw-r--r--pkgs/tools/security/kubescape/default.nix41
-rw-r--r--pkgs/tools/security/medusa/default.nix2
-rw-r--r--pkgs/tools/security/metasploit/Gemfile2
-rw-r--r--pkgs/tools/security/metasploit/Gemfile.lock6
-rw-r--r--pkgs/tools/security/metasploit/default.nix4
-rw-r--r--pkgs/tools/security/metasploit/gemset.nix6
-rw-r--r--pkgs/tools/security/mfcuk/default.nix2
-rw-r--r--pkgs/tools/security/mfoc/default.nix2
-rw-r--r--pkgs/tools/security/mkpasswd/default.nix2
-rw-r--r--pkgs/tools/security/naabu/default.nix6
-rw-r--r--pkgs/tools/security/nasty/default.nix2
-rw-r--r--pkgs/tools/security/nmap/default.nix2
-rw-r--r--pkgs/tools/security/nmap/qt.nix2
-rw-r--r--pkgs/tools/security/notation/default.nix13
-rw-r--r--pkgs/tools/security/nuclei/default.nix6
-rw-r--r--pkgs/tools/security/onioncircuits/default.nix4
-rw-r--r--pkgs/tools/security/onlykey/default.nix4
-rw-r--r--pkgs/tools/security/ossec/agent.nix2
-rw-r--r--pkgs/tools/security/ossec/server.nix2
-rw-r--r--pkgs/tools/security/osv-scanner/default.nix6
-rw-r--r--pkgs/tools/security/paperkey/default.nix2
-rw-r--r--pkgs/tools/security/pass/rofi-pass.nix2
-rw-r--r--pkgs/tools/security/passff-host/default.nix2
-rw-r--r--pkgs/tools/security/pcsc-tools/default.nix27
-rw-r--r--pkgs/tools/security/pcsclite/default.nix50
-rw-r--r--pkgs/tools/security/pinentry/default.nix4
-rw-r--r--pkgs/tools/security/pius/default.nix2
-rw-r--r--pkgs/tools/security/qdigidoc/default.nix15
-rw-r--r--pkgs/tools/security/quark-engine/default.nix34
-rw-r--r--pkgs/tools/security/rarcrack/default.nix2
-rw-r--r--pkgs/tools/security/rbw/default.nix7
-rw-r--r--pkgs/tools/security/rnp/default.nix7
-rw-r--r--pkgs/tools/security/rnp/sexp_sexpp_rename.patch50
-rw-r--r--pkgs/tools/security/rnp/unbundle-sexpp.patch38
-rw-r--r--pkgs/tools/security/rustscan/default.nix6
-rw-r--r--pkgs/tools/security/schleuder/default.nix2
-rw-r--r--pkgs/tools/security/semgrep/common.nix16
-rw-r--r--pkgs/tools/security/sherlock/default.nix13
-rw-r--r--pkgs/tools/security/sigma-cli/default.nix27
-rw-r--r--pkgs/tools/security/signing-party/default.nix2
-rw-r--r--pkgs/tools/security/softhsm/default.nix7
-rw-r--r--pkgs/tools/security/sops/default.nix2
-rw-r--r--pkgs/tools/security/spire/default.nix4
-rw-r--r--pkgs/tools/security/ssdeep/default.nix2
-rw-r--r--pkgs/tools/security/ssh-mitm/default.nix55
-rw-r--r--pkgs/tools/security/tor/torsocks.nix2
-rw-r--r--pkgs/tools/security/tpm2-tools/default.nix12
-rw-r--r--pkgs/tools/security/trufflehog/default.nix6
-rw-r--r--pkgs/tools/security/vals/default.nix6
-rw-r--r--pkgs/tools/security/vault/default.nix6
-rw-r--r--pkgs/tools/security/vault/vault-bin.nix12
-rw-r--r--pkgs/tools/security/web-eid-app/default.nix4
-rw-r--r--pkgs/tools/security/wipe/default.nix2
-rw-r--r--pkgs/tools/security/xsser/default.nix4
-rw-r--r--pkgs/tools/security/yara/default.nix9
-rw-r--r--pkgs/tools/system/actkbd/default.nix2
-rw-r--r--pkgs/tools/system/amtterm/default.nix2
-rw-r--r--pkgs/tools/system/automatic-timezoned/default.nix6
-rw-r--r--pkgs/tools/system/bar/default.nix2
-rw-r--r--pkgs/tools/system/cm-rgb/default.nix4
-rw-r--r--pkgs/tools/system/collectd/default.nix2
-rw-r--r--pkgs/tools/system/consul-template/default.nix4
-rw-r--r--pkgs/tools/system/datefudge/default.nix2
-rw-r--r--pkgs/tools/system/dcfldd/default.nix2
-rw-r--r--pkgs/tools/system/fcron/default.nix2
-rw-r--r--pkgs/tools/system/fio/default.nix2
-rw-r--r--pkgs/tools/system/gdmap/default.nix2
-rw-r--r--pkgs/tools/system/gkraken/default.nix4
-rw-r--r--pkgs/tools/system/gptfdisk/default.nix2
-rw-r--r--pkgs/tools/system/hardinfo/default.nix2
-rw-r--r--pkgs/tools/system/incron/default.nix2
-rw-r--r--pkgs/tools/system/ior/default.nix2
-rw-r--r--pkgs/tools/system/journalwatch/default.nix3
-rw-r--r--pkgs/tools/system/kanata/default.nix9
-rw-r--r--pkgs/tools/system/krakenx/default.nix2
-rw-r--r--pkgs/tools/system/ledmon/default.nix2
-rw-r--r--pkgs/tools/system/loadwatch/default.nix2
-rw-r--r--pkgs/tools/system/memtester/default.nix2
-rw-r--r--pkgs/tools/system/openipmi/default.nix4
-rw-r--r--pkgs/tools/system/pciutils/default.nix1
-rw-r--r--pkgs/tools/system/proot/default.nix2
-rw-r--r--pkgs/tools/system/psensor/default.nix4
-rw-r--r--pkgs/tools/system/runitor/default.nix4
-rw-r--r--pkgs/tools/system/s-tui/default.nix2
-rw-r--r--pkgs/tools/system/setserial/default.nix2
-rw-r--r--pkgs/tools/system/skeema/default.nix35
-rw-r--r--pkgs/tools/system/stress-ng/default.nix4
-rw-r--r--pkgs/tools/system/stress/default.nix2
-rw-r--r--pkgs/tools/system/throttled/default.nix16
-rw-r--r--pkgs/tools/system/tree/default.nix2
-rw-r--r--pkgs/tools/system/ts/default.nix2
-rw-r--r--pkgs/tools/system/vbetool/default.nix2
-rw-r--r--pkgs/tools/system/zenith/Cargo.lock747
-rw-r--r--pkgs/tools/system/zenith/default.nix8
-rw-r--r--pkgs/tools/text/agrep/default.nix40
-rw-r--r--pkgs/tools/text/boxes/default.nix2
-rw-r--r--pkgs/tools/text/catdoc/default.nix2
-rw-r--r--pkgs/tools/text/convertlit/default.nix2
-rw-r--r--pkgs/tools/text/crowdin-cli/default.nix4
-rw-r--r--pkgs/tools/text/csview/default.nix6
-rw-r--r--pkgs/tools/text/enca/default.nix2
-rw-r--r--pkgs/tools/text/gtranslator/default.nix6
-rw-r--r--pkgs/tools/text/gucci/default.nix17
-rw-r--r--pkgs/tools/text/kdiff3/default.nix4
-rw-r--r--pkgs/tools/text/lv/default.nix2
-rw-r--r--pkgs/tools/text/mawk/default.nix2
-rw-r--r--pkgs/tools/text/mdbook-open-on-gh/default.nix6
-rw-r--r--pkgs/tools/text/multitran/data/default.nix2
-rw-r--r--pkgs/tools/text/multitran/libbtree/default.nix2
-rw-r--r--pkgs/tools/text/multitran/libfacet/default.nix2
-rw-r--r--pkgs/tools/text/multitran/libmtquery/default.nix2
-rw-r--r--pkgs/tools/text/multitran/libmtsupport/default.nix2
-rw-r--r--pkgs/tools/text/multitran/mtutils/default.nix2
-rw-r--r--pkgs/tools/text/odt2txt/default.nix2
-rw-r--r--pkgs/tools/text/poedit/default.nix4
-rw-r--r--pkgs/tools/text/popfile/default.nix2
-rw-r--r--pkgs/tools/text/riffdiff/default.nix6
-rw-r--r--pkgs/tools/text/rpl/default.nix2
-rw-r--r--pkgs/tools/text/rust-petname/default.nix6
-rw-r--r--pkgs/tools/text/snippetpixie/default.nix4
-rw-r--r--pkgs/tools/text/subedit/default.nix2
-rw-r--r--pkgs/tools/text/ugrep/default.nix4
-rw-r--r--pkgs/tools/text/unoconv/default.nix2
-rw-r--r--pkgs/tools/text/vale/styles.nix8
-rw-r--r--pkgs/tools/text/zoekt/default.nix9
-rw-r--r--pkgs/tools/typesetting/bibclean/default.nix2
-rw-r--r--pkgs/tools/typesetting/hayagriva/default.nix6
-rw-r--r--pkgs/tools/typesetting/pdf2djvu/default.nix2
-rw-r--r--pkgs/tools/typesetting/pdfchain/default.nix4
-rw-r--r--pkgs/tools/typesetting/pdfsandwich/default.nix2
-rw-r--r--pkgs/tools/typesetting/pulldown-cmark/default.nix6
-rw-r--r--pkgs/tools/typesetting/ted/default.nix2
-rw-r--r--pkgs/tools/typesetting/tex/catdvi/default.nix2
-rw-r--r--pkgs/tools/typesetting/tex/texlive/build-tex-env.nix18
-rw-r--r--pkgs/tools/typesetting/tex/texlive/build-tex-env.sh50
-rw-r--r--pkgs/tools/typesetting/tex/texpresso/default.nix6
-rw-r--r--pkgs/tools/typesetting/tex/texpresso/tectonic.nix4
-rw-r--r--pkgs/tools/typesetting/xmlto/default.nix78
-rw-r--r--pkgs/tools/video/blackmagic-desktop-video/default.nix4
-rw-r--r--pkgs/tools/video/go2rtc/default.nix6
-rw-r--r--pkgs/tools/video/lux/default.nix4
-rw-r--r--pkgs/tools/video/rtmpdump/default.nix2
-rw-r--r--pkgs/tools/video/swfmill/default.nix2
-rw-r--r--pkgs/tools/video/untrunc-anthwlock/default.nix13
-rw-r--r--pkgs/tools/video/vncrec/default.nix2
-rw-r--r--pkgs/tools/virtualization/govc/default.nix4
-rw-r--r--pkgs/tools/virtualization/mkosi/default.nix26
-rw-r--r--pkgs/tools/virtualization/xva-img/default.nix2
-rw-r--r--pkgs/tools/wayland/aw-watcher-window-wayland/Cargo.lock4
-rw-r--r--pkgs/tools/wayland/aw-watcher-window-wayland/default.nix3
-rw-r--r--pkgs/tools/wayland/aw-watcher-window-wayland/rustc-serialize-fix.patch16
-rw-r--r--pkgs/tools/wayland/gtklock/default.nix4
-rw-r--r--pkgs/tools/wayland/mpvpaper/default.nix4
-rw-r--r--pkgs/tools/wayland/sirula/Cargo.lock966
-rw-r--r--pkgs/tools/wayland/sirula/default.nix13
-rw-r--r--pkgs/tools/wayland/way-displays/default.nix4
-rw-r--r--pkgs/tools/wayland/wayland-proxy-virtwl/default.nix2
-rw-r--r--pkgs/tools/wayland/wl-clipboard/default.nix12
-rw-r--r--pkgs/tools/wayland/wlsunset/default.nix4
-rw-r--r--pkgs/tools/wayland/wluma/Cargo.lock864
-rw-r--r--pkgs/tools/wayland/wluma/default.nix14
-rw-r--r--pkgs/tools/wayland/wpaperd/Cargo.lock2041
-rw-r--r--pkgs/top-level/aliases.nix30
-rw-r--r--pkgs/top-level/all-packages.nix527
-rw-r--r--pkgs/top-level/coq-packages.nix3
-rw-r--r--pkgs/top-level/darwin-aliases.nix8
-rw-r--r--pkgs/top-level/darwin-packages.nix4
-rw-r--r--pkgs/top-level/haskell-packages.nix34
-rw-r--r--pkgs/top-level/linux-kernels.nix15
-rw-r--r--pkgs/top-level/lua-packages.nix2
-rw-r--r--pkgs/top-level/ocaml-packages.nix3
-rw-r--r--pkgs/top-level/packages-config.nix2
-rw-r--r--pkgs/top-level/perl-packages.nix13
-rw-r--r--pkgs/top-level/php-packages.nix26
-rw-r--r--pkgs/top-level/python-aliases.nix12
-rw-r--r--pkgs/top-level/python-packages.nix155
-rw-r--r--pkgs/top-level/release-attrpaths-superset.nix1
-rw-r--r--pkgs/top-level/release-cross.nix1
-rw-r--r--pkgs/top-level/release-haskell.nix23
-rw-r--r--pkgs/top-level/splice.nix22
-rw-r--r--pkgs/top-level/stage.nix8
5760 files changed, 128387 insertions, 184290 deletions
diff --git a/.git-blame-ignore-revs b/.git-blame-ignore-revs
index 219efb6e2a54..c0a31e826ac0 100644
--- a/.git-blame-ignore-revs
+++ b/.git-blame-ignore-revs
@@ -105,3 +105,12 @@ fb0e5be84331188a69b3edd31679ca6576edb75a
 
 # {pkgs/development/cuda-modules,pkgs/test/cuda,pkgs/top-level/cuda-packages.nix}: reformat all CUDA files with nixfmt-rfc-style 2023-03-01
 802a1b4d3338f24cbc4efd704616654456d75a94
+
+# postgresql: move packages.nix to ext/default.nix
+719034f6f6749d624faa28dff259309fc0e3e730
+
+# pkgs/os-specific/bsd: Reformat with nixfmt-rfc-style 2024-03-01
+3fe3b055adfc020e6a923c466b6bcd978a13069a
+
+# k3s: format with nixfmt-rfc-style
+6cfcd3c75428ede517bc6b15a353d704837a2830
diff --git a/.github/CODEOWNERS b/.github/CODEOWNERS
index 109b64d7392a..47d5d399f198 100644
--- a/.github/CODEOWNERS
+++ b/.github/CODEOWNERS
@@ -41,7 +41,7 @@
 /pkgs/top-level/splice.nix                       @Ericson2314
 /pkgs/top-level/release-cross.nix                @Ericson2314
 /pkgs/stdenv/generic                             @Ericson2314
-/pkgs/stdenv/generic/check-meta.nix              @Ericson2314 @piegamesde
+/pkgs/stdenv/generic/check-meta.nix              @Ericson2314
 /pkgs/stdenv/cross                               @Ericson2314
 /pkgs/build-support/cc-wrapper                   @Ericson2314
 /pkgs/build-support/bintools-wrapper             @Ericson2314
@@ -137,9 +137,9 @@ nixos/modules/installer/tools/nix-fallback-paths.nix  @raitobezarius @ma27
 /pkgs/top-level/haskell-packages.nix          @sternenseemann @maralorn @ncfavier
 
 # Perl
-/pkgs/development/interpreters/perl @stigtsp @zakame @dasJ
-/pkgs/top-level/perl-packages.nix   @stigtsp @zakame @dasJ
-/pkgs/development/perl-modules      @stigtsp @zakame @dasJ
+/pkgs/development/interpreters/perl @stigtsp @zakame @dasJ @marcusramberg
+/pkgs/top-level/perl-packages.nix   @stigtsp @zakame @dasJ @marcusramberg
+/pkgs/development/perl-modules      @stigtsp @zakame @dasJ @marcusramberg
 
 # R
 /pkgs/applications/science/math/R   @jbedo
@@ -305,13 +305,6 @@ nixos/modules/services/networking/networkmanager.nix @Janik-Haag
 # terraform providers
 /pkgs/applications/networking/cluster/terraform-providers @zowoq
 
-# Matrix
-/pkgs/servers/heisenbridge                                 @piegamesde
-/pkgs/servers/matrix-conduit                               @piegamesde
-/nixos/modules/services/misc/heisenbridge.nix              @piegamesde
-/nixos/modules/services/misc/matrix-conduit.nix            @piegamesde
-/nixos/tests/matrix-conduit.nix                            @piegamesde
-
 # Forgejo
 nixos/modules/services/misc/forgejo.nix      @bendlas @emilylange
 pkgs/applications/version-management/forgejo @bendlas @emilylange
@@ -352,8 +345,11 @@ pkgs/development/tools/continuous-integration/buildbot @Mic92 @zowoq
 
 # Pretix
 pkgs/by-name/pr/pretix/ @mweinelt
+pkgs/by-name/pr/pretalx/ @mweinelt
 nixos/modules/services/web-apps/pretix.nix @mweinelt
+nixos/modules/services/web-apps/pretalx.nix @mweinelt
 nixos/tests/web-apps/pretix.nix @mweinelt
+nixos/tests/web-apps/pretalx.nix @mweinelt
 
 # incus/lxc/lxd
 nixos/maintainers/scripts/lxd/          @adamcstephens
diff --git a/.github/labeler.yml b/.github/labeler.yml
index b88f7f5179ec..57086953f8d0 100644
--- a/.github/labeler.yml
+++ b/.github/labeler.yml
@@ -113,6 +113,14 @@
         - pkgs/applications/editors/jupyter-kernels/**/*
         - pkgs/applications/editors/jupyter/**/*
 
+"6.topic: k3s":
+  - any:
+    - changed-files:
+      - any-glob-to-any-file:
+        - nixos/modules/services/cluster/k3s/**/*
+        - nixos/tests/k3s/**/*
+        - pkgs/applications/networking/cluster/k3s/**/*
+
 "6.topic: kernel":
   - any:
     - changed-files:
diff --git a/.github/workflows/backport.yml b/.github/workflows/backport.yml
index 7a168d14a479..188d2709740f 100644
--- a/.github/workflows/backport.yml
+++ b/.github/workflows/backport.yml
@@ -20,7 +20,7 @@ jobs:
     if: github.repository_owner == 'NixOS' && github.event.pull_request.merged == true && (github.event_name != 'labeled' || startsWith('backport', github.event.label.name))
     runs-on: ubuntu-latest
     steps:
-      - uses: actions/checkout@0ad4b8fadaa221de15dcec353f45205ec38ea70b # v4.1.4
+      - uses: actions/checkout@44c2b7a8a4ea60a981eaca3cf939b5f4305c123b # v4.1.5
         with:
           ref: ${{ github.event.pull_request.head.sha }}
       - name: Create backport PRs
diff --git a/.github/workflows/basic-eval.yml b/.github/workflows/basic-eval.yml
index 6059ba784959..1f787397f261 100644
--- a/.github/workflows/basic-eval.yml
+++ b/.github/workflows/basic-eval.yml
@@ -18,7 +18,7 @@ jobs:
     runs-on: ubuntu-latest
     # we don't limit this action to only NixOS repo since the checks are cheap and useful developer feedback
     steps:
-    - uses: actions/checkout@0ad4b8fadaa221de15dcec353f45205ec38ea70b # v4.1.4
+    - uses: actions/checkout@44c2b7a8a4ea60a981eaca3cf939b5f4305c123b # v4.1.5
     - uses: cachix/install-nix-action@8887e596b4ee1134dae06b98d573bd674693f47c # v26
     - uses: cachix/cachix-action@18cf96c7c98e048e10a83abd92116114cd8504be # v14
       with:
diff --git a/.github/workflows/check-by-name.yml b/.github/workflows/check-by-name.yml
index 8e2011cb6d52..e857c88f746d 100644
--- a/.github/workflows/check-by-name.yml
+++ b/.github/workflows/check-by-name.yml
@@ -16,9 +16,7 @@ on:
     # so it shouldn't be a problem
     types: [opened, synchronize, reopened, edited]
 
-permissions:
-  # We need this permission to cancel the workflow run if there's a merge conflict
-  actions: write
+permissions: {}
 
 # Create a check-by-name concurrency group based on the pull request number. if
 # an event triggers a run on the same PR while a previous run is still in
@@ -79,31 +77,27 @@ jobs:
 
           if [[ "$mergeable" == "true" ]]; then
             echo "The PR can be merged, checking the merge commit $mergedSha"
+            echo "mergedSha=$mergedSha" >> "$GITHUB_ENV"
           else
-            echo "The PR cannot be merged, it has a merge conflict, cancelling the workflow.."
-            gh api \
-              --method POST \
-              -H "Accept: application/vnd.github+json" \
-              -H "X-GitHub-Api-Version: 2022-11-28" \
-              /repos/"$GITHUB_REPOSITORY"/actions/runs/"$GITHUB_RUN_ID"/cancel
-            sleep 60
-            # If it's still not canceled after a minute, something probably went wrong, just exit
-            exit 1
+            echo "The PR cannot be merged, it has a merge conflict, skipping the rest.."
           fi
-          echo "mergedSha=$mergedSha" >> "$GITHUB_ENV"
-      - uses: actions/checkout@0ad4b8fadaa221de15dcec353f45205ec38ea70b # v4.1.4
+      - uses: actions/checkout@44c2b7a8a4ea60a981eaca3cf939b5f4305c123b # v4.1.5
+        if: env.mergedSha
         with:
           # pull_request_target checks out the base branch by default
           ref: ${{ env.mergedSha }}
           # Fetches the merge commit and its parents
           fetch-depth: 2
       - name: Checking out base branch
+        if: env.mergedSha
         run: |
           base=$(mktemp -d)
           git worktree add "$base" "$(git rev-parse HEAD^1)"
           echo "base=$base" >> "$GITHUB_ENV"
       - uses: cachix/install-nix-action@8887e596b4ee1134dae06b98d573bd674693f47c # v26
+        if: env.mergedSha
       - name: Fetching the pinned tool
+        if: env.mergedSha
         # Update the pinned version using pkgs/test/check-by-name/update-pinned-tool.sh
         run: |
           # The pinned version of the tooling to use
@@ -114,6 +108,7 @@ jobs:
           # Adds a result symlink as a GC root
           nix-store --realise "$toolPath" --add-root result
       - name: Running nixpkgs-check-by-name
+        if: env.mergedSha
         env:
           # Force terminal colors to be enabled. The library that
           # nixpkgs-check-by-name uses respects: https://bixense.com/clicolors/
diff --git a/.github/workflows/check-cherry-picks.yml b/.github/workflows/check-cherry-picks.yml
index f8d244594165..0bee949c3dbc 100644
--- a/.github/workflows/check-cherry-picks.yml
+++ b/.github/workflows/check-cherry-picks.yml
@@ -12,7 +12,7 @@ jobs:
     runs-on: ubuntu-latest
     if: github.repository_owner == 'NixOS'
     steps:
-    - uses: actions/checkout@0ad4b8fadaa221de15dcec353f45205ec38ea70b # v4.1.4
+    - uses: actions/checkout@44c2b7a8a4ea60a981eaca3cf939b5f4305c123b # v4.1.5
       with:
         fetch-depth: 0
         filter: blob:none
diff --git a/.github/workflows/check-maintainers-sorted.yaml b/.github/workflows/check-maintainers-sorted.yaml
index 062522928c2a..8de3318589b8 100644
--- a/.github/workflows/check-maintainers-sorted.yaml
+++ b/.github/workflows/check-maintainers-sorted.yaml
@@ -12,7 +12,7 @@ jobs:
     runs-on: ubuntu-latest
     if: github.repository_owner == 'NixOS'
     steps:
-      - uses: actions/checkout@0ad4b8fadaa221de15dcec353f45205ec38ea70b # v4.1.4
+      - uses: actions/checkout@44c2b7a8a4ea60a981eaca3cf939b5f4305c123b # v4.1.5
         with:
           # pull_request_target checks out the base branch by default
           ref: refs/pull/${{ github.event.pull_request.number }}/merge
diff --git a/.github/workflows/check-nix-format.yml b/.github/workflows/check-nix-format.yml
index 5e30762821ea..6003c9a0b841 100644
--- a/.github/workflows/check-nix-format.yml
+++ b/.github/workflows/check-nix-format.yml
@@ -15,7 +15,7 @@ jobs:
     runs-on: ubuntu-latest
     if: github.repository_owner == 'NixOS'
     steps:
-      - uses: actions/checkout@0ad4b8fadaa221de15dcec353f45205ec38ea70b # v4.1.4
+      - uses: actions/checkout@44c2b7a8a4ea60a981eaca3cf939b5f4305c123b # v4.1.5
         with:
           # pull_request_target checks out the base branch by default
           ref: refs/pull/${{ github.event.pull_request.number }}/merge
@@ -32,12 +32,20 @@ jobs:
         # Each environment variable beginning with NIX_FMT_PATHS_ is a list of
         # paths to check with nixfmt.
         env:
+          NIX_FMT_PATHS_BSD: pkgs/os-specific/bsd
+          NIX_FMT_PATHS_MPVSCRIPTS: pkgs/applications/video/mpv/scripts
           # Format paths related to the Nixpkgs CUDA ecosystem.
           NIX_FMT_PATHS_CUDA: |
             pkgs/development/cuda-modules
             pkgs/test/cuda
             pkgs/top-level/cuda-packages.nix
+          NIX_FMT_PATHS_K3S: |
+            nixos/modules/services/cluster/k3s
+            nixos/tests/k3s
+            pkgs/applications/networking/cluster/k3s
           NIX_FMT_PATHS_VSCODE_EXTS: pkgs/applications/editors/vscode/extensions
+          NIX_FMT_PATHS_PHP_PACKAGES: pkgs/development/php-packages
+          NIX_FMT_PATHS_BUILD_SUPPORT_PHP: pkgs/build-support/php
         # Iterate over all environment variables beginning with NIX_FMT_PATHS_.
         run: |
           for env_var in "${!NIX_FMT_PATHS_@}"; do
diff --git a/.github/workflows/editorconfig.yml b/.github/workflows/editorconfig.yml
index bb864ace316b..b2b96722993b 100644
--- a/.github/workflows/editorconfig.yml
+++ b/.github/workflows/editorconfig.yml
@@ -24,7 +24,7 @@ jobs:
     - name: print list of changed files
       run: |
         cat "$HOME/changed_files"
-    - uses: actions/checkout@0ad4b8fadaa221de15dcec353f45205ec38ea70b # v4.1.4
+    - uses: actions/checkout@44c2b7a8a4ea60a981eaca3cf939b5f4305c123b # v4.1.5
       with:
         # pull_request_target checks out the base branch by default
         ref: refs/pull/${{ github.event.pull_request.number }}/merge
diff --git a/.github/workflows/manual-nixos.yml b/.github/workflows/manual-nixos.yml
index ac5532a25370..a72b1adfeac0 100644
--- a/.github/workflows/manual-nixos.yml
+++ b/.github/workflows/manual-nixos.yml
@@ -14,7 +14,7 @@ jobs:
     runs-on: ubuntu-latest
     if: github.repository_owner == 'NixOS'
     steps:
-      - uses: actions/checkout@0ad4b8fadaa221de15dcec353f45205ec38ea70b # v4.1.4
+      - uses: actions/checkout@44c2b7a8a4ea60a981eaca3cf939b5f4305c123b # v4.1.5
         with:
           # pull_request_target checks out the base branch by default
           ref: refs/pull/${{ github.event.pull_request.number }}/merge
diff --git a/.github/workflows/manual-nixpkgs.yml b/.github/workflows/manual-nixpkgs.yml
index 672ebf61ac77..52aefa8472ed 100644
--- a/.github/workflows/manual-nixpkgs.yml
+++ b/.github/workflows/manual-nixpkgs.yml
@@ -16,7 +16,7 @@ jobs:
     runs-on: ubuntu-latest
     if: github.repository_owner == 'NixOS'
     steps:
-      - uses: actions/checkout@0ad4b8fadaa221de15dcec353f45205ec38ea70b # v4.1.4
+      - uses: actions/checkout@44c2b7a8a4ea60a981eaca3cf939b5f4305c123b # v4.1.5
         with:
           # pull_request_target checks out the base branch by default
           ref: refs/pull/${{ github.event.pull_request.number }}/merge
diff --git a/.github/workflows/nix-parse.yml b/.github/workflows/nix-parse.yml
index b86594e0d53b..ffccf9d53de1 100644
--- a/.github/workflows/nix-parse.yml
+++ b/.github/workflows/nix-parse.yml
@@ -24,7 +24,7 @@ jobs:
         if [[ -s "$HOME/changed_files" ]]; then
           echo "CHANGED_FILES=$HOME/changed_files" > "$GITHUB_ENV"
         fi
-    - uses: actions/checkout@0ad4b8fadaa221de15dcec353f45205ec38ea70b # v4.1.4
+    - uses: actions/checkout@44c2b7a8a4ea60a981eaca3cf939b5f4305c123b # v4.1.5
       with:
         # pull_request_target checks out the base branch by default
         ref: refs/pull/${{ github.event.pull_request.number }}/merge
diff --git a/.github/workflows/periodic-merge-24h.yml b/.github/workflows/periodic-merge-24h.yml
index d9ad593618ae..7001dccb0d5d 100644
--- a/.github/workflows/periodic-merge-24h.yml
+++ b/.github/workflows/periodic-merge-24h.yml
@@ -41,7 +41,7 @@ jobs:
             into: staging-23.11
     name: ${{ matrix.pairs.from }} → ${{ matrix.pairs.into }}
     steps:
-      - uses: actions/checkout@0ad4b8fadaa221de15dcec353f45205ec38ea70b # v4.1.4
+      - uses: actions/checkout@44c2b7a8a4ea60a981eaca3cf939b5f4305c123b # v4.1.5
 
       - name: ${{ matrix.pairs.from }} → ${{ matrix.pairs.into }}
         uses: devmasx/merge-branch@854d3ac71ed1e9deb668e0074781b81fdd6e771f # 1.4.0
diff --git a/.github/workflows/periodic-merge-6h.yml b/.github/workflows/periodic-merge-6h.yml
index a3131e802534..0a229052605e 100644
--- a/.github/workflows/periodic-merge-6h.yml
+++ b/.github/workflows/periodic-merge-6h.yml
@@ -39,7 +39,7 @@ jobs:
             into: staging
     name: ${{ matrix.pairs.from }} → ${{ matrix.pairs.into }}
     steps:
-      - uses: actions/checkout@0ad4b8fadaa221de15dcec353f45205ec38ea70b # v4.1.4
+      - uses: actions/checkout@44c2b7a8a4ea60a981eaca3cf939b5f4305c123b # v4.1.5
 
       - name: ${{ matrix.pairs.from }} → ${{ matrix.pairs.into }}
         uses: devmasx/merge-branch@854d3ac71ed1e9deb668e0074781b81fdd6e771f # 1.4.0
diff --git a/.github/workflows/update-terraform-providers.yml b/.github/workflows/update-terraform-providers.yml
index 36d84d617dc4..a1c949ba3770 100644
--- a/.github/workflows/update-terraform-providers.yml
+++ b/.github/workflows/update-terraform-providers.yml
@@ -16,7 +16,7 @@ jobs:
     if: github.repository_owner == 'NixOS' && github.ref == 'refs/heads/master' # ensure workflow_dispatch only runs on master
     runs-on: ubuntu-latest
     steps:
-      - uses: actions/checkout@0ad4b8fadaa221de15dcec353f45205ec38ea70b # v4.1.4
+      - uses: actions/checkout@44c2b7a8a4ea60a981eaca3cf939b5f4305c123b # v4.1.5
       - uses: cachix/install-nix-action@8887e596b4ee1134dae06b98d573bd674693f47c # v26
         with:
           nix_path: nixpkgs=channel:nixpkgs-unstable
diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md
index 8d54124acfd7..f40fb86ee559 100644
--- a/CONTRIBUTING.md
+++ b/CONTRIBUTING.md
@@ -321,7 +321,7 @@ All the review template samples provided in this section are generic and meant a
 
 To get more information about how to review specific parts of Nixpkgs, refer to the documents linked to in the [overview section][overview].
 
-If a pull request contains documentation changes that might require feedback from the documentation team, ping [@NixOS/documentation-reviewers](https://github.com/orgs/nixos/teams/documentation-reviewers) on the pull request.
+If a pull request contains documentation changes that might require feedback from the documentation team, ping [@NixOS/documentation-team](https://github.com/orgs/nixos/teams/documentation-team) on the pull request.
 
 If you consider having enough knowledge and experience in a topic and would like to be a long-term reviewer for related submissions, please contact the current reviewers for that topic. They will give you information about the reviewing process. The main reviewers for a topic can be hard to find as there is no list, but checking past pull requests to see who reviewed or git-blaming the code to see who committed to that topic can give some hints.
 
diff --git a/doc/README.md b/doc/README.md
index 41afc090b374..a060876969c9 100644
--- a/doc/README.md
+++ b/doc/README.md
@@ -62,7 +62,7 @@ Allow linking arbitrary place in the text (e.g. individual list items, sentences
 They are defined using a hybrid of the link syntax with the attributes syntax known from headings, called [bracketed spans](https://github.com/jgm/commonmark-hs/blob/master/commonmark-extensions/test/bracketed_spans.md):
 
 ```markdown
-- []{#ssec-gnome-hooks-glib} `glib` setup hook will populate `GSETTINGS_SCHEMAS_PATH` and then `wrapGAppsHook` will prepend it to `XDG_DATA_DIRS`.
+- []{#ssec-gnome-hooks-glib} `glib` setup hook will populate `GSETTINGS_SCHEMAS_PATH` and then `wrapGApps*` hook will prepend it to `XDG_DATA_DIRS`.
 ```
 
 #### Automatic links
@@ -345,4 +345,4 @@ Typographic replacements are enabled. Check the [list of possible replacement pa
 
 ## Getting help
 
-If you need documentation-specific help or reviews, ping [@NixOS/documentation-reviewers](https://github.com/orgs/nixos/teams/documentation-reviewers) on your pull request.
+If you need documentation-specific help or reviews, ping [@NixOS/documentation-team](https://github.com/orgs/nixos/teams/documentation-team) on your pull request.
diff --git a/doc/build-helpers/special/fhs-environments.section.md b/doc/build-helpers/special/fhs-environments.section.md
index 918d1e8c2951..b87bb9727857 100644
--- a/doc/build-helpers/special/fhs-environments.section.md
+++ b/doc/build-helpers/special/fhs-environments.section.md
@@ -57,4 +57,4 @@ You can create a simple environment using a `shell.nix` like this:
 Running `nix-shell` on it would drop you into a shell inside an FHS env where those libraries and binaries are available in FHS-compliant paths. Applications that expect an FHS structure (i.e. proprietary binaries) can run inside this environment without modification.
 You can build a wrapper by running your binary in `runScript`, e.g. `./bin/start.sh`. Relative paths work as expected.
 
-Additionally, the FHS builder links all relocated gsettings-schemas (the glib setup-hook moves them to `share/gsettings-schemas/${name}/glib-2.0/schemas`) to their standard FHS location. This means you don't need to wrap binaries with `wrapGAppsHook`.
+Additionally, the FHS builder links all relocated gsettings-schemas (the glib setup-hook moves them to `share/gsettings-schemas/${name}/glib-2.0/schemas`) to their standard FHS location. This means you don't need to wrap binaries with `wrapGApps*` hook.
diff --git a/doc/languages-frameworks/gnome.section.md b/doc/languages-frameworks/gnome.section.md
index 21cdcb0dd35e..743327770891 100644
--- a/doc/languages-frameworks/gnome.section.md
+++ b/doc/languages-frameworks/gnome.section.md
@@ -82,7 +82,7 @@ Previously, a GTK theme needed to be in `XDG_DATA_DIRS`. This is no longer neces
 
 If your application uses [GStreamer](https://gstreamer.freedesktop.org/) or [Grilo](https://gitlab.gnome.org/GNOME/grilo), you should set `GST_PLUGIN_SYSTEM_PATH_1_0` and `GRL_PLUGIN_PATH`, respectively.
 
-## Onto `wrapGAppsHook` {#ssec-gnome-hooks}
+## Onto `wrapGApps*` hooks {#ssec-gnome-hooks}
 
 Given the requirements above, the package expression would become messy quickly:
 
@@ -102,27 +102,29 @@ Given the requirements above, the package expression would become messy quickly:
 }
 ```
 
-Fortunately, there is [`wrapGAppsHook`]{#ssec-gnome-hooks-wrapgappshook}. It works in conjunction with other setup hooks that populate environment variables, and it will then wrap all executables in `bin` and `libexec` directories using said variables. For convenience, it also adds `dconf.lib` for a GIO module implementing a GSettings backend using `dconf`, `gtk3` for GSettings schemas, and `librsvg` for GdkPixbuf loader to the closure.
+Fortunately, we have a [family of hooks]{#ssec-gnome-hooks-wrapgappshook} that automate this. They work in conjunction with other setup hooks that populate environment variables, and will then wrap all executables in `bin` and `libexec` directories using said variables.
 
-There is also [`wrapGAppsHook4`]{#ssec-gnome-hooks-wrapgappshook4}, which replaces GTK 3 with GTK 4. Instead of `wrapGAppsHook`, this should be used for all GTK4 applications.
+- [`wrapGAppsHook3`]{#ssec-gnome-hooks-wrapgappshook3} for GTK 3 apps. For convenience, it also adds `dconf.lib` for a GIO module implementing a GSettings backend using `dconf`, `gtk3` for GSettings schemas, and `librsvg` for GdkPixbuf loader to the closure.
+- [`wrapGAppsHook4`]{#ssec-gnome-hooks-wrapgappshook4} for GTK 4 apps. Same as `wrapGAppsHook3` but replaces `gtk3` with `gtk4`.
+- [`wrapGAppsNoGuiHook`]{#ssec-gnome-hooks-wrapgappsnoguihook} for programs without a graphical interface. Same as the above but does not bring `gtk3` and `librsvg` into the closure.
 
-In case you are packaging a program without a graphical interface, you might want to use [`wrapGAppsNoGuiHook`]{#ssec-gnome-hooks-wrapgappsnoguihook}, which runs the same script as `wrapGAppsHook` but does not bring `gtk3` and `librsvg` into the closure.
+The hooks do the the following:
 
-- `wrapGAppsHook` itself will add the package’s `share` directory to `XDG_DATA_DIRS`.
+- `wrapGApps*` hook itself will add the package’s `share` directory to `XDG_DATA_DIRS`.
 
-- []{#ssec-gnome-hooks-glib} `glib` setup hook will populate `GSETTINGS_SCHEMAS_PATH` and then `wrapGAppsHook` will prepend it to `XDG_DATA_DIRS`.
+- []{#ssec-gnome-hooks-glib} `glib` setup hook will populate `GSETTINGS_SCHEMAS_PATH` and then `wrapGApps*` hook will prepend it to `XDG_DATA_DIRS`.
 
-- []{#ssec-gnome-hooks-gdk-pixbuf} `gdk-pixbuf` setup hook will populate `GDK_PIXBUF_MODULE_FILE` with the path to biggest `loaders.cache` file from the dependencies containing [GdkPixbuf loaders](#ssec-gnome-gdk-pixbuf-loaders). This works fine when there are only two packages containing loaders (`gdk-pixbuf` and e.g. `librsvg`) – it will choose the second one, reasonably expecting that it will be bigger since it describes extra loader in addition to the default ones. But when there are more than two loader packages, this logic will break. One possible solution would be constructing a custom cache file for each package containing a program like `services/x11/gdk-pixbuf.nix` NixOS module does. `wrapGAppsHook` copies the `GDK_PIXBUF_MODULE_FILE` environment variable into the produced wrapper.
+- []{#ssec-gnome-hooks-gdk-pixbuf} `gdk-pixbuf` setup hook will populate `GDK_PIXBUF_MODULE_FILE` with the path to biggest `loaders.cache` file from the dependencies containing [GdkPixbuf loaders](#ssec-gnome-gdk-pixbuf-loaders). This works fine when there are only two packages containing loaders (`gdk-pixbuf` and e.g. `librsvg`) – it will choose the second one, reasonably expecting that it will be bigger since it describes extra loader in addition to the default ones. But when there are more than two loader packages, this logic will break. One possible solution would be constructing a custom cache file for each package containing a program like `services/x11/gdk-pixbuf.nix` NixOS module does. `wrapGApps*` hook copies the `GDK_PIXBUF_MODULE_FILE` environment variable into the produced wrapper.
 
 - []{#ssec-gnome-hooks-gtk-drop-icon-theme-cache} One of `gtk3`’s setup hooks will remove `icon-theme.cache` files from package’s icon theme directories to avoid conflicts. Icon theme packages should prevent this with `dontDropIconThemeCache = true;`.
 
-- []{#ssec-gnome-hooks-dconf} `dconf.lib` is a dependency of `wrapGAppsHook`, which then also adds it to the `GIO_EXTRA_MODULES` variable.
+- []{#ssec-gnome-hooks-dconf} `dconf.lib` is a dependency of `wrapGApps*` hook, which then also adds it to the `GIO_EXTRA_MODULES` variable.
 
 - []{#ssec-gnome-hooks-hicolor-icon-theme} `hicolor-icon-theme`’s setup hook will add icon themes to `XDG_ICON_DIRS`.
 
-- []{#ssec-gnome-hooks-gobject-introspection} `gobject-introspection` setup hook populates `GI_TYPELIB_PATH` variable with `lib/girepository-1.0` directories of dependencies, which is then added to wrapper by `wrapGAppsHook`. It also adds `share` directories of dependencies to `XDG_DATA_DIRS`, which is intended to promote GIR files but it also [pollutes the closures](https://github.com/NixOS/nixpkgs/issues/32790) of packages using `wrapGAppsHook`.
+- []{#ssec-gnome-hooks-gobject-introspection} `gobject-introspection` setup hook populates `GI_TYPELIB_PATH` variable with `lib/girepository-1.0` directories of dependencies, which is then added to wrapper by `wrapGApps*` hook. It also adds `share` directories of dependencies to `XDG_DATA_DIRS`, which is intended to promote GIR files but it also [pollutes the closures](https://github.com/NixOS/nixpkgs/issues/32790) of packages using `wrapGApps*` hook.
 
-- []{#ssec-gnome-hooks-gst-grl-plugins} Setup hooks of `gst_all_1.gstreamer` and `grilo` will populate the `GST_PLUGIN_SYSTEM_PATH_1_0` and `GRL_PLUGIN_PATH` variables, respectively, which will then be added to the wrapper by `wrapGAppsHook`.
+- []{#ssec-gnome-hooks-gst-grl-plugins} Setup hooks of `gst_all_1.gstreamer` and `grilo` will populate the `GST_PLUGIN_SYSTEM_PATH_1_0` and `GRL_PLUGIN_PATH` variables, respectively, which will then be added to the wrapper by `wrapGApps*` hook.
 
 You can also pass additional arguments to `makeWrapper` using `gappsWrapperArgs` in `preFixup` hook:
 
@@ -147,15 +149,15 @@ Most GNOME package offer [`updateScript`](#var-passthru-updateScript), it is the
 
 ### `GLib-GIO-ERROR **: 06:04:50.903: No GSettings schemas are installed on the system` {#ssec-gnome-common-issues-no-schemas}
 
-There are no schemas available in `XDG_DATA_DIRS`. Temporarily add a random package containing schemas like `gsettings-desktop-schemas` to `buildInputs`. [`glib`](#ssec-gnome-hooks-glib) and [`wrapGAppsHook`](#ssec-gnome-hooks-wrapgappshook) setup hooks will take care of making the schemas available to application and you will see the actual missing schemas with the [next error](#ssec-gnome-common-issues-missing-schema). Or you can try looking through the source code for the actual schemas used.
+There are no schemas available in `XDG_DATA_DIRS`. Temporarily add a random package containing schemas like `gsettings-desktop-schemas` to `buildInputs`. [`glib`](#ssec-gnome-hooks-glib) and [`wrapGApps*`](#ssec-gnome-hooks-wrapgappshook) setup hooks will take care of making the schemas available to application and you will see the actual missing schemas with the [next error](#ssec-gnome-common-issues-missing-schema). Or you can try looking through the source code for the actual schemas used.
 
 ### `GLib-GIO-ERROR **: 06:04:50.903: Settings schema ‘org.gnome.foo’ is not installed` {#ssec-gnome-common-issues-missing-schema}
 
 Package is missing some GSettings schemas. You can find out the package containing the schema with `nix-locate org.gnome.foo.gschema.xml` and let the hooks handle the wrapping as [above](#ssec-gnome-common-issues-no-schemas).
 
-### When using `wrapGAppsHook` with special derivers you can end up with double wrapped binaries. {#ssec-gnome-common-issues-double-wrapped}
+### When using `wrapGApps*` hook with special derivers you can end up with double wrapped binaries. {#ssec-gnome-common-issues-double-wrapped}
 
-This is because derivers like `python.pkgs.buildPythonApplication` or `qt5.mkDerivation` have setup-hooks automatically added that produce wrappers with makeWrapper. The simplest way to workaround that is to disable the `wrapGAppsHook` automatic wrapping with `dontWrapGApps = true;` and pass the arguments it intended to pass to makeWrapper to another.
+This is because derivers like `python.pkgs.buildPythonApplication` or `qt5.mkDerivation` have setup-hooks automatically added that produce wrappers with makeWrapper. The simplest way to workaround that is to disable the `wrapGApps*` hook automatic wrapping with `dontWrapGApps = true;` and pass the arguments it intended to pass to makeWrapper to another.
 
 In the case of a Python application it could look like:
 
@@ -165,7 +167,7 @@ python3.pkgs.buildPythonApplication {
   version = "3.32.2";
 
   nativeBuildInputs = [
-    wrapGAppsHook
+    wrapGAppsHook3
     gobject-introspection
     # ...
   ];
@@ -187,7 +189,7 @@ mkDerivation {
   version = "3.47.0";
 
   nativeBuildInputs = [
-    wrapGAppsHook
+    wrapGAppsHook3
     qmake
     # ...
   ];
diff --git a/doc/languages-frameworks/go.section.md b/doc/languages-frameworks/go.section.md
index 2f4cb0326a8a..d98ecb1c0421 100644
--- a/doc/languages-frameworks/go.section.md
+++ b/doc/languages-frameworks/go.section.md
@@ -2,7 +2,7 @@
 
 ## Building Go modules with `buildGoModule` {#ssec-language-go}
 
-The function `buildGoModule` builds Go programs managed with Go modules. It builds [Go Modules](https://github.com/golang/go/wiki/Modules) through a two phase build:
+The function `buildGoModule` builds Go programs managed with Go modules. It builds [Go Modules](https://go.dev/wiki/Modules) through a two phase build:
 
 - An intermediate fetcher derivation called `goModules`. This derivation will be used to fetch all the dependencies of the Go module.
 - A final derivation will use the output of the intermediate derivation to build the binaries and produce the final output.
diff --git a/doc/languages-frameworks/haskell.section.md b/doc/languages-frameworks/haskell.section.md
index 5d7796b554de..dde55c329a4a 100644
--- a/doc/languages-frameworks/haskell.section.md
+++ b/doc/languages-frameworks/haskell.section.md
@@ -230,7 +230,7 @@ completely incompatible with packages from `haskellPackages`.
 
 Every haskell package set has its own haskell-aware `mkDerivation` which is used
 to build its packages. Generally you won't have to interact with this builder
-since [cabal2nix][cabal2nix] can generate packages
+since [cabal2nix](#haskell-cabal2nix) can generate packages
 using it for an arbitrary cabal package definition. Still it is useful to know
 the parameters it takes when you need to
 [override](#haskell-overriding-haskell-packages) a generated Nix expression.
@@ -1123,17 +1123,74 @@ for [this to work][optparse-applicative-completions].
 Note that this feature is automatically disabled when cross-compiling, since it
 requires executing the binaries in question.
 
+## Import-from-Derivation helpers {#haskell-import-from-derivation}
+
+### cabal2nix {#haskell-cabal2nix}
+
+[`cabal2nix`][cabal2nix] can generate Nix package definitions for arbitrary
+Haskell packages using [import from derivation][import-from-derivation].
+`cabal2nix` will generate Nix expressions that look like this:
+
+```nix
+# cabal get mtl-2.2.1 && cd mtl-2.2.1 && cabal2nix .
+{ mkDerivation, base, lib, transformers }:
+mkDerivation {
+  pname = "mtl";
+  version = "2.2.1";
+  src = ./.;
+  libraryHaskellDepends = [ base transformers ];
+  homepage = "http://github.com/ekmett/mtl";
+  description = "Monad classes, using functional dependencies";
+  license = lib.licenses.bsd3;
+}
+```
+
+This expression should be called with `haskellPackages.callPackage`, which will
+supply [`haskellPackages.mkDerivation`](#haskell-mkderivation) and the Haskell
+dependencies as arguments.
+
+`callCabal2nix name src args`
+: Create a package named `name` from the source derivation `src` using
+  `cabal2nix`.
+
+  `args` are extra arguments provided to `haskellPackages.callPackage`.
+
+`callCabal2nixWithOptions name src opts args`
+: Create a package named `name` from the source derivation `src` using
+  `cabal2nix`.
+
+  `opts` are extra options for calling `cabal2nix`. If `opts` is a string, it
+  will be used as extra command line arguments for `cabal2nix`, e.g. `--subpath
+  path/to/dir/containing/cabal-file`. Otherwise, `opts` should be an AttrSet
+  which can contain the following attributes:
+
+  `extraCabal2nixOptions`
+  : Extra command line arguments for `cabal2nix`.
+
+  `srcModifier`
+  : A function which is used to modify the given `src` instead of the default
+    filter.
+
+    The default source filter will remove all files from `src` except for
+    `.cabal` files and `package.yaml` files.
+
 <!--
 
-TODO(@NixOS/haskell): finish these planned sections
-### Overriding the entire package set
+`callHackage`
+: TODO
 
+`callHackageDirect`
+: TODO
 
-## Import-from-Derivation helpers
+`developPackage`
+: TODO
 
-* `callCabal2nix`
-* `callHackage`, `callHackageDirect`
-* `developPackage`
+-->
+
+<!--
+
+TODO(@NixOS/haskell): finish these planned sections
+### Overriding the entire package set
 
 ## Contributing {#haskell-contributing}
 
@@ -1309,3 +1366,4 @@ relevant.
 [profiling]: https://downloads.haskell.org/~ghc/latest/docs/html/users_guide/profiling.html
 [search.nixos.org]: https://search.nixos.org
 [turtle]: https://hackage.haskell.org/package/turtle
+[import-from-derivation]: https://nixos.org/manual/nix/stable/language/import-from-derivation
diff --git a/doc/languages-frameworks/pkg-config.section.md b/doc/languages-frameworks/pkg-config.section.md
index e5a2b85b6576..0b25396314cb 100644
--- a/doc/languages-frameworks/pkg-config.section.md
+++ b/doc/languages-frameworks/pkg-config.section.md
@@ -7,10 +7,11 @@ Nixpkgs provides a couple of facilities for working with this tool.
 ## Writing packages providing pkg-config modules {#pkg-config-writing-packages}
 
 Packages should set `meta.pkgConfigModules` with the list of package config modules they provide.
-They should also use `testers.testMetaPkgConfig` to check that the final built package matches that list.
+They should also use `testers.hasPkgConfigModules` to check that the final built package matches that list,
+and optionally check that the pkgconf modules' version metadata matches the derivation's.
 Additionally, the [`validatePkgConfig` setup hook](https://nixos.org/manual/nixpkgs/stable/#validatepkgconfig), will do extra checks on to-be-installed pkg-config modules.
 
-A good example of all these things is zlib:
+A good example of all these things is miniz:
 
 ```nix
 { pkg-config, testers, ... }:
@@ -20,11 +21,14 @@ stdenv.mkDerivation (finalAttrs: {
 
   nativeBuildInputs = [ pkg-config validatePkgConfig ];
 
-  passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
+  passthru.tests.pkg-config = testers.hasPkgConfigModules {
+    package = finalAttrs.finalPackage;
+    versionCheck = true;
+  };
 
   meta = {
     /* ... */
-    pkgConfigModules = [ "zlib" ];
+    pkgConfigModules = [ "miniz" ];
   };
 })
 ```
diff --git a/doc/stdenv/meta.chapter.md b/doc/stdenv/meta.chapter.md
index 7f57eda791ea..575d3368326d 100644
--- a/doc/stdenv/meta.chapter.md
+++ b/doc/stdenv/meta.chapter.md
@@ -101,7 +101,7 @@ For example, a package which requires dynamic linking and cannot be linked stati
 ```nix
 {
   meta.platforms = lib.platforms.all;
-  meta.badPlatforms = [ lib.systems.inspect.patterns.isStatic ];
+  meta.badPlatforms = [ lib.systems.inspect.platformPatterns.isStatic ];
 }
 ```
 
diff --git a/lib/fetchers.nix b/lib/fetchers.nix
index 1107353b51dd..e94c611299be 100644
--- a/lib/fetchers.nix
+++ b/lib/fetchers.nix
@@ -8,6 +8,7 @@
     # derivation like fetchurl is allowed to do so since its result is
     # by definition pure.
     "http_proxy" "https_proxy" "ftp_proxy" "all_proxy" "no_proxy"
+    "HTTP_PROXY" "HTTPS_PROXY" "FTP_PROXY" "ALL_PROXY" "NO_PROXY"
   ];
 
 }
diff --git a/lib/systems/default.nix b/lib/systems/default.nix
index 7e9aadeef72e..fbd6c323bf42 100644
--- a/lib/systems/default.nix
+++ b/lib/systems/default.nix
@@ -81,6 +81,8 @@ let
         && final.parsed.kernel == platform.parsed.kernel;
       isCompatible = _: throw "2022-05-23: isCompatible has been removed in favor of canExecute, refer to the 22.11 changelog for details";
       # Derived meta-data
+      useLLVM = final.isFreeBSD;
+
       libc =
         /**/ if final.isDarwin              then "libSystem"
         else if final.isMinGW               then "msvcrt"
diff --git a/maintainers/maintainer-list.nix b/maintainers/maintainer-list.nix
index 004fd4f49c32..a0569f44c06e 100644
--- a/maintainers/maintainer-list.nix
+++ b/maintainers/maintainer-list.nix
@@ -435,6 +435,12 @@
     github = "a-camarillo";
     githubId = 58638902;
   };
+  acesyde = {
+    name = "Pierre-Emmanuel Mercier";
+    email = "acesyde@gmail.com";
+    github = "acesyde";
+    githubId = 958435;
+  };
   aciceri = {
     name = "Andrea Ciceri";
     email = "andrea.ciceri@autistici.org";
@@ -774,6 +780,12 @@
     github = "akgrant43";
     githubId = 2062166;
   };
+  akhilmhdh = {
+    email = "akhilmhdh@infisical.com";
+    github = "akhilmhdh";
+    githubId = 31166322;
+    name = "Akhil Mohan";
+  };
   akho = {
     name = "Alexander Khodyrev";
     email = "a@akho.name";
@@ -1950,7 +1962,7 @@
   };
   atry = {
     name = "Bo Yang";
-    email = "atry@fb.com";
+    email = "yang-bo@yang-bo.com";
     github = "Atry";
     githubId = 601530;
   };
@@ -2974,6 +2986,14 @@
     githubId = 184563;
     name = "Bruno Paz";
   };
+  brsvh = {
+    email = "bsc@brsvh.org";
+    github = "brsvh";
+    githubId = 63050399;
+    keys = [ { fingerprint = "7B74 0DB9 F2AC 6D3B 226B  C530 78D7 4502 D92E 0218"; } ];
+    matrix = "@brsvh:mozilla.org";
+    name = "Burgess Chang";
+  };
   bryanasdev000 = {
     email = "bryanasdev000@gmail.com";
     matrix = "@bryanasdev000:matrix.org";
@@ -3513,6 +3533,16 @@
     githubId = 28303440;
     name = "Max Hausch";
   };
+  cherrykitten = {
+    email = "contact@cherrykitten.dev";
+    github = "cherrykitten";
+    githubId = 20300586;
+    matrix = "@sammy:cherrykitten.dev";
+    name = "CherryKitten";
+    keys = [{
+      fingerprint = "264C FA1A 194C 585D F822  F673 C01A 7CBB A617 BD5F";
+    }];
+  };
   chessai = {
     email = "chessai1996@gmail.com";
     github = "chessai";
@@ -3834,6 +3864,14 @@
     githubId = 180339;
     name = "Andrew Cobb";
   };
+  coca = {
+    github = "Coca162";
+    githubId = 62479942;
+    name = "Coca";
+    keys = [{
+      fingerprint = "99CB 86FF 62BB 7DA4 8903  B16D 0328 2DF8 8179 AB19";
+    }];
+  };
   coconnor = {
     email = "coreyoconnor@gmail.com";
     github = "coreyoconnor";
@@ -3849,6 +3887,16 @@
       fingerprint = "6E3A FA6D 915C C2A4 D26F  C53E 7BB4 BA9C 783D 2BBC";
     }];
   };
+  codebam = {
+      name = "Sean Behan";
+      email = "codebam@riseup.net";
+      matrix = "@codebam:fedora.im";
+      github = "codebam";
+      githubId = 6035884;
+      keys = [{
+        fingerprint = "42CD E212 593C F2FD C723 48A8 0F6D 5021 A87F 92BA";
+      }];
+    };
   codec = {
     email = "codec@fnord.cx";
     github = "codec";
@@ -5361,6 +5409,12 @@
     githubId = 472846;
     name = "Sebastian Krohn";
   };
+  drawbu = {
+    email = "clement21.boillot@gmail.com";
+    github = "drawbu";
+    githubId = 69208565;
+    name = "Clément Boillot";
+  };
   drets = {
     email = "dmitryrets@gmail.com";
     github = "drets";
@@ -5480,6 +5534,12 @@
       fingerprint = "9484 44FC E03B 05BA 5AB0  591E C37B 1C1D 44C7 86EE";
     }];
   };
+  dvn0 = {
+    email = "git@dvn.me";
+    github = "dvn0";
+    githubId = 10859387;
+    name = "Devan Carpenter";
+  };
   dwarfmaster = {
     email = "nixpkgs@dwarfmaster.net";
     github = "dwarfmaster";
@@ -5688,6 +5748,11 @@
     githubId = 54799;
     name = "Edward Tjörnhammar";
   };
+  eeedean = {
+    github = "eeedean";
+    githubId = 8173116;
+    name = "Dean Eckert";
+  };
   eelco = {
     email = "edolstra+nixpkgs@gmail.com";
     github = "edolstra";
@@ -5886,6 +5951,12 @@
     githubId = 1365692;
     name = "Will Fancher";
   };
+  elysasrc = {
+    name = "Elysa";
+    github = "ElysaSrc";
+    githubId = 101974839;
+    email = "elysasrc@proton.me";
+  };
   emantor = {
     email = "rouven+nixos@czerwinskis.de";
     github = "Emantor";
@@ -6436,6 +6507,15 @@
     githubId = 225893;
     name = "James Cook";
   };
+  fangpen = {
+    email = "hello@fangpenlin.com";
+    github = "fangpenlin";
+    githubId = 201615;
+    name = "Fang-Pen Lin";
+    keys = [{
+      fingerprint = "7130 3454 A7CD 0F0A 941A  F9A3 2A26 9964 AD29 2131";
+    }];
+  };
   farcaller = {
     name = "Vladimir Pouzanov";
     email = "farcaller@gmail.com";
@@ -6995,15 +7075,6 @@
     githubId = 12715461;
     name = "Anders Bo Rasmussen";
   };
-  fwam = {
-    name = "Legion Orsetti";
-    email = "fwam@queereen.dev";
-    github = "fwam";
-    githubId = 113541944;
-    keys = [{
-      fingerprint = "3822 20B8 57ED 0602 3786  8A7A 18E1 AE22 D704 B4FC";
-    }];
-  };
   fwc = {
     github = "fwc";
     githubId = 29337229;
@@ -7741,6 +7812,12 @@
     githubId = 10654650;
     name = "Guillaume Koenig";
   };
+  guillaumematheron = {
+    email = "guillaume_nix@matheron.eu";
+    github = "guillaumematheron";
+    githubId = 1949438;
+    name = "Guillaume Matheron";
+  };
   guitargeek = {
     email = "jonas.rembser@cern.ch";
     github = "guitargeek";
@@ -8559,6 +8636,12 @@
     githubId = 3948275;
     name = "Harikrishnan R";
   };
+  ilya-epifanov = {
+    email = "mail@ilya.network";
+    github = "ilya-epifanov";
+    githubId = 92526;
+    name = "Ilya";
+  };
   ilya-fedin = {
     email = "fedin-ilja2010@ya.ru";
     github = "ilya-fedin";
@@ -9070,6 +9153,12 @@
     githubId = 6789916;
     name = "Jason Odoom";
   };
+  javaes = {
+    email = "jan+dev@vanesdonk.de";
+    github = "javaes";
+    githubId = 1131529;
+    name = "Jan van Esdonk";
+  };
   javaguirre = {
     email = "contacto@javaguirre.net";
     github = "javaguirre";
@@ -9409,12 +9498,6 @@
     githubId = 6445082;
     name = "Joseph Lukasik";
   };
-  jgoux = {
-    email = "hi@jgoux.dev";
-    github = "jgoux";
-    githubId = 1443499;
-    name = "Julien Goux";
-  };
   jhh = {
     email = "jeff@j3ff.io";
     github = "jhh";
@@ -10004,6 +10087,11 @@
     githubId = 107689;
     name = "Josh Holland";
   };
+  jshort = {
+    github = "jshort";
+    githubId = 1186444;
+    name = "James Short";
+  };
   jsierles = {
     email = "joshua@hey.com";
     matrix = "@jsierles:matrix.org";
@@ -11258,6 +11346,14 @@
     githubId = 887072;
     name = "Alexander Lebedev";
   };
+  lebensterben = {
+    name = "Lucius Hu";
+    github = "lebensterben";
+    githubId = 1222865;
+    keys = [{
+      fingerprint = "80C6 77F2 ED0B E732 3835 A8D3 7E47 4E82 E29B 5A7A";
+    }];
+  };
   lecoqjacob = {
     name = "Jacob LeCoq";
     email = "lecoqjacob@gmail.com";
@@ -11901,6 +11997,12 @@
       fingerprint = "66D1 3048 2B5F 2069 81A6  6B83 6F98 7CCF 224D 20B9";
     }];
   };
+  luftmensch-luftmensch = {
+    email = "valentinobocchetti59@gmail.com";
+    name = "Valentino Bocchetti";
+    github = "luftmensch-luftmensch";
+    githubId = 65391343;
+  };
   lugarun = {
     email = "lfschmidt.me@gmail.com";
     github = "lugarun";
@@ -13098,7 +13200,7 @@
     }];
   };
   michaelpj = {
-    email = "michaelpj@gmail.com";
+    email = "me@michaelpj.com";
     github = "michaelpj";
     githubId = 1699466;
     name = "Michael Peyton Jones";
@@ -13387,6 +13489,12 @@
     matrix = "@mjm:beeper.com";
     name = "Matt Moriarity";
   };
+  mjoerg = {
+    name = "Martin Joerg";
+    email = "martin.joerg@gmail.com";
+    github = "mjoerg";
+    githubId = 147256;
+  };
   mjp = {
     email = "mike@mythik.co.uk";
     github = "MikePlayle";
@@ -13543,6 +13651,15 @@
       fingerprint = "1248 D3E1 1D11 4A85 75C9  8934 6794 D45A 488C 2EDE";
     }];
   };
+  momeemt = {
+    name = "Mutsuha Asada";
+    email = "me@momee.mt";
+    github = "momeemt";
+    githubId = 43488453;
+    keys = [{
+      fingerprint = "D94F EA9F 5B08 F6A1 7B8F  EB8B ACB5 4F0C BC6A A7C6";
+    }];
+  };
   monaaraj = {
     name = "Mon Aaraj";
     email = "owo69uwu69@gmail.com";
@@ -13766,6 +13883,12 @@
     githubId = 133448;
     name = "Mikołaj Siedlarek";
   };
+  msladecek = {
+    email = "martin.sladecek+nixpkgs@gmail.com";
+    name = "Martin Sladecek";
+    github = "msladecek";
+    githubId = 7304317;
+  };
   mslingsby = {
     email = "morten.slingsby@eviny.no";
     github = "MortenSlingsby";
@@ -14088,12 +14211,23 @@
     githubId = 56316606;
     name = "Amneesh Singh";
   };
+  naxdy = {
+    name = "Naxdy";
+    email = "naxdy@naxdy.org";
+    matrix = "@naxdy:naxdy.org";
+    github = "Naxdy";
+    githubId = 4532582;
+    keys = [{
+      fingerprint = "BDEA AB07 909D B96F 4106 85F1 CC15 0758 46BC E91B";
+    }];
+  };
   nayala = {
     name = "Nia";
     matrix = "@fly:asra.gr";
   };
   nazarewk = {
     name = "Krzysztof Nazarewski";
+    email = "nixpkgs@kdn.im";
     matrix = "@nazarewk:matrix.org";
     github = "nazarewk";
     githubId = 3494992;
@@ -15382,6 +15516,27 @@
     githubId = 72527881;
     name = "PassiveLemon";
   };
+  pathob = {
+    email = "patrick@hobusch.net";
+    github = "pathob";
+    githubId = 4580157;
+    name = "Patrick Hobusch";
+  };
+  patka = {
+    email = "patka@patka.dev";
+    github = "patka-123";
+    githubId = 69802930;
+    name = "patka";
+  };
+  patrickdag = {
+    email = "patrick-nixos@failmail.dev";
+    github = "PatrickDaG";
+    githubId = 58092422;
+    name = "Patrick";
+    keys = [{
+      fingerprint = "5E4C 3D74 80C2 35FE 2F0B  D23F 7DD6 A72E C899 617D";
+    }];
+  };
   patricksjackson = {
     email = "patrick@jackson.dev";
     github = "patricksjackson";
@@ -15795,6 +15950,12 @@
     githubId = 1179566;
     name = "Nicolas B. Pierron";
   };
+  pigeonf = {
+    email = "fnoegip+nixpkgs@gmail.com";
+    github = "PigeonF";
+    githubId = 7536431;
+    name = "Jonas Fierlings";
+  };
   pimeys = {
     email = "julius@nauk.io";
     github = "pimeys";
@@ -16236,6 +16397,12 @@
     githubId = 3153638;
     name = "Profpatsch";
   };
+  proggerx = {
+    email = "x@proggers.ru";
+    github = "ProggerX";
+    githubId = 88623613;
+    name = "ProggerX";
+  };
   proglodyte = {
     email = "proglodyte23@gmail.com";
     github = "proglodyte";
@@ -17313,6 +17480,12 @@
     githubId = 69053978;
     name = "rogarb";
   };
+  rohanssrao = {
+    email = "rohanssrao@gmail.com";
+    github = "rohanssrao";
+    githubId = 17805516;
+    name = "Rohan Rao";
+  };
   rollf = {
     email = "rolf.schroeder@limbus-medtec.com";
     github = "rollf";
@@ -17701,6 +17874,14 @@
       fingerprint = "D260 79E3 C2BC 2E43 905B  D057 BB3E FA30 3760 A0DB";
     }];
   };
+  ryze = {
+    name = "Ryze";
+    github = "ryze312";
+    githubId = 50497128;
+    keys = [{
+      fingerprint = "73D5 BFF5 0AD7 F3C1 AF1A  AC24 9B29 6C5C EAEA AAC1";
+    }];
+  };
   rzetterberg = {
     email = "richard.zetterberg@gmail.com";
     github = "rzetterberg";
@@ -17724,6 +17905,12 @@
       fingerprint = "E628 C811 6FB8 1657 F706  4EA4 F251 ADDC 9D04 1C7E";
     }];
   };
+  sailord = {
+    name = "Sailord";
+    email = "sailord328@gmail.com";
+    github = "Sail0rd";
+    githubId = 55802415;
+  };
   samalws = {
     email = "sam@samalws.com";
     name = "Sam Alws";
@@ -19573,6 +19760,12 @@
     githubId = 12841859;
     name = "Syboxez Blank";
   };
+  syedahkam = {
+    email = "smahkam57@gmail.com";
+    github = "SyedAhkam";
+    githubId = 52673095;
+    name = "Syed Ahkam";
+  };
   symphorien = {
     email = "symphorien_nixpkgs@xlumurb.eu";
     matrix = "@symphorien:xlumurb.eu";
@@ -20404,6 +20597,12 @@
       fingerprint = "7944 74B7 D236 DAB9 C9EF  E7F9 5CCE 6F14 66D4 7C9E";
     }];
   };
+  toasteruwu = {
+    email = "Aki@ToasterUwU.com";
+    github = "ToasterUwU";
+    githubId = 43654377;
+    name = "Aki";
+  };
   tobiasBora = {
     email = "tobias.bora.list@gmail.com";
     github = "tobiasBora";
@@ -20597,6 +20796,11 @@
     githubId = 9870613;
     name = "Hubert Mühlhans";
   };
+  trishtzy = {
+    github = "trishtzy";
+    githubId = 5356506;
+    name = "Tricia Tan";
+  };
   trobert = {
     email = "thibaut.robert@gmail.com";
     github = "trobert";
@@ -21512,6 +21716,12 @@
     github = "wegank";
     githubId = 9713184;
   };
+  weitzj = {
+    name = "Jan Weitz";
+    email = "nixpkgs@janweitz.de";
+    github = "weitzj";
+    githubId = 829277;
+  };
   welteki = {
     email = "welteki@pm.me";
     github = "welteki";
@@ -21797,6 +22007,12 @@
     github = "wr0belj";
     githubId = 40501814;
   };
+  wr7 = {
+    name = "wr7";
+    email = "d-wr7@outlook.com";
+    github = "wr7";
+    githubId = 53203261;
+  };
   wraithm = {
     name = "Matthew Wraith";
     email = "wraithm@gmail.com";
@@ -22026,6 +22242,12 @@
     githubId = 2242427;
     name = "Yoann Ono";
   };
+  yah = {
+    email = "yah@singularpoint.cc";
+    github = "wangxiaoerYah";
+    githubId = 48443038;
+    name = "Yah";
+  };
   yajo = {
     email = "yajo.sk8@gmail.com";
     github = "yajo";
@@ -22446,6 +22668,12 @@
       fingerprint = "065A 0A98 FE61 E1C1 41B0  AFE7 64FA BC62 F457 2875";
     }];
   };
+  zelkourban = {
+    name = "zelkourban";
+    email = "zelo.urban@gmail.com";
+    github = "zelkourban";
+    githubId = 33812622;
+  };
   zendo = {
     name = "zendo";
     email = "linzway@qq.com";
diff --git a/maintainers/scripts/kde/collect-missing-deps.py b/maintainers/scripts/kde/collect-missing-deps.py
index f3943338b57f..9625da71c3e5 100755
--- a/maintainers/scripts/kde/collect-missing-deps.py
+++ b/maintainers/scripts/kde/collect-missing-deps.py
@@ -28,6 +28,7 @@ OK_MISSING_BY_PACKAGE = {
     "discover": {
         "rpm-ostree-1",  # we don't have rpm-ostree (duh)
         "Snapd",  # we don't have snaps and probably never will
+        "packagekitqt6",  # intentionally disabled
     },
     "elisa": {
         "UPNPQT",  # upstream says it's broken
@@ -36,6 +37,9 @@ OK_MISSING_BY_PACKAGE = {
         "Sphinx",  # only used for docs, bloats closure size
         "QCollectionGenerator"
     },
+    "gwenview": {
+        "Tiff",  # duplicate?
+    },
     "kio-extras-kf5": {
         "KDSoapWSDiscoveryClient",  # actually vendored on KF5 version
     },
diff --git a/maintainers/scripts/luarocks-packages.csv b/maintainers/scripts/luarocks-packages.csv
index 4b41b7887512..0091e93b7d58 100644
--- a/maintainers/scripts/luarocks-packages.csv
+++ b/maintainers/scripts/luarocks-packages.csv
@@ -1,4 +1,4 @@
-name,src,ref,server,version,luaversion,maintainers
+name,rockspec,ref,server,version,luaversion,maintainers
 alt-getopt,,,,,,arobyn
 bit32,,,,5.3.0-1,5.1,lblasc
 argparse,,,,,,
@@ -13,7 +13,7 @@ cosmo,,,,,,
 coxpcall,,,,1.17.0-1,,
 cqueues,,,,,,vcunat
 cyan,,,,,,
-digestif,https://github.com/astoff/digestif.git,,,,5.3,
+digestif,,,,,5.3,
 dkjson,,,,,,
 fennel,,,,,,misterio77
 fidget.nvim,,,,,,mrcjkb
@@ -22,8 +22,8 @@ fluent,,,,,,alerque
 funnyfiles.nvim,,,,,,mrcjkb
 fzf-lua,,,,,,mrcjkb
 fzy,,,,,,mrcjkb
-gitsigns.nvim,https://github.com/lewis6991/gitsigns.nvim.git,,,,5.1,
-haskell-tools.nvim,,,,,,
+gitsigns.nvim,https://raw.githubusercontent.com/lewis6991/gitsigns.nvim/main/gitsigns.nvim-scm-1.rockspec,,,,5.1,
+haskell-tools.nvim,,,,,,mrcjkb
 http,,,,0.3-0,,vcunat
 image.nvim,,,,,,teto
 inspect,,,,,,
@@ -31,7 +31,7 @@ jsregexp,,,,,,
 ldbus,,,http://luarocks.org/dev,,,
 ldoc,,,,,,
 lgi,,,,,,
-linenoise,https://github.com/hoelzro/lua-linenoise.git,,,,,
+linenoise,https://raw.githubusercontent.com/hoelzro/lua-linenoise/master/linenoise-0.9-1.rockspec,,,,,
 ljsyscall,,,,,5.1,lblasc
 lmathx,,,,,5.3,alexshpilkin
 lmpfrlib,,,,,5.3,alexshpilkin
@@ -54,13 +54,13 @@ lua-resty-jwt,,,,,,
 lua-resty-openidc,,,,,,
 lua-resty-openssl,,,,,,
 lua-resty-session,,,,,,
-lua-rtoml,https://github.com/lblasc/lua-rtoml,,,,,lblasc
-lua-subprocess,https://github.com/0x0ade/lua-subprocess,,,,5.1,scoder12
+lua-rtoml,https://raw.githubusercontent.com/lblasc/lua-rtoml/main/lua-rtoml-0.2-0.rockspec,,,,,lblasc
+lua-subprocess,https://raw.githubusercontent.com/0x0ade/lua-subprocess/master/subprocess-scm-1.rockspec,,,,5.1,scoder12
 lua-term,,,,,,
 lua-toml,,,,,,
 lua-zlib,,,,,,koral
 lua_cliargs,,,,,,
-luabitop,https://github.com/teto/luabitop.git,,,,,
+luabitop,https://raw.githubusercontent.com/teto/luabitop/master/luabitop-1.0.2-3.rockspec,,,,,
 luacheck,,,,,,
 luacov,,,,,,
 luadbi,,,,,,
@@ -78,12 +78,14 @@ luaossl,,,,,5.1,
 luaposix,,,,34.1.1-1,,vyp lblasc
 luarepl,,,,,,
 luarocks-build-rust-mlua,,,,,,mrcjkb
+luarocks-build-treesitter-parser,,,,,,mrcjkb
 luasec,,,,,,flosse
 luasnip,,,,,,
 luasocket,,,,,,
 luasql-sqlite3,,,,,,vyp
 luassert,,,,,,
 luasystem,,,,,,
+luatext,,,,,,
 luaunbound,,,,,,
 luaunit,,,,,,lockejan
 luautf8,,,,,,pstn
@@ -93,7 +95,7 @@ lua-yajl,,,,,,pstn
 lua-iconv,,,,7.0.0,,
 luuid,,,,20120509-2,,
 luv,,,,1.44.2-1,,
-lush.nvim,https://github.com/rktjmp/lush.nvim,,,,,teto
+lush.nvim,,,https://luarocks.org/dev,,,teto
 lyaml,,,,,,lblasc
 magick,,,,,5.1,donovanglover
 markdown,,,,,,
@@ -101,27 +103,27 @@ mediator_lua,,,,,,
 middleclass,,,,,,
 mimetypes,,,,,,
 mpack,,,,,,
-moonscript,https://github.com/leafo/moonscript.git,dev-1,,,,arobyn
+moonscript,https://raw.githubusercontent.com/leafo/moonscript/master/moonscript-dev-1.rockspec,,,,,arobyn
 neotest,,,,,,mrcjkb
 nlua,,,,,,teto
 nui.nvim,,,,,,mrcjkb
-nvim-cmp,https://github.com/hrsh7th/nvim-cmp,,,,,
+nvim-cmp,https://raw.githubusercontent.com/hrsh7th/nvim-cmp/main/nvim-cmp-scm-1.rockspec,,,,,
 nvim-nio,,,,,,mrcjkb
 pathlib.nvim,,,,,,
-penlight,https://github.com/lunarmodules/Penlight.git,,,,,alerque
-plenary.nvim,https://github.com/nvim-lua/plenary.nvim.git,,,,5.1,
-rapidjson,https://github.com/xpol/lua-rapidjson.git,,,,,
-rocks.nvim,,,,,5.1,teto mrcjkb
+penlight,,,,,,alerque
+plenary.nvim,https://raw.githubusercontent.com/nvim-lua/plenary.nvim/master/plenary.nvim-scm-1.rockspec,,,,5.1,
+rapidjson,,,,,,
 rest.nvim,,,,,5.1,teto
 rocks.nvim,,,,,,mrcjkb
 rocks-git.nvim,,,,,,mrcjkb
 rocks-config.nvim,,,,,,mrcjkb
 rocks-dev.nvim,,,,,,mrcjkb
+rtp.nvim,,,,,,mrcjkb
 rustaceanvim,,,,,,mrcjkb
-say,https://github.com/Olivine-Labs/say.git,,,,,
+say,,,,,,
 serpent,,,,,,lockejan
 sqlite,,,,,,
-std._debug,https://github.com/lua-stdlib/_debug.git,,,,,
+std._debug,,,,,,
 std.normalize,,,,,,
 stdlib,,,,41.2.2,,vyp
 teal-language-server,,,http://luarocks.org/dev,,,
@@ -131,6 +133,7 @@ tiktoken_core,,,,,,natsukium
 tl,,,,,,mephistophiles
 toml,,,,,,mrcjkb
 toml-edit,,,,,5.1,mrcjkb
-vstruct,https://github.com/ToxicFrog/vstruct.git,,,,,
+tree-sitter-norg,,,,,5.1,mrcjkb
+vstruct,,,,,,
 vusted,,,,,,figsoda
 xml2lua,,,,,,teto
diff --git a/maintainers/team-list.nix b/maintainers/team-list.nix
index 96ab9d94a169..e0c1629a6f23 100644
--- a/maintainers/team-list.nix
+++ b/maintainers/team-list.nix
@@ -263,6 +263,9 @@ with lib.maintainers; {
 
   docs = {
     members = [ ];
+    githubTeams = [
+      "documentation-team"
+    ];
     scope = "Maintain nixpkgs/NixOS documentation and tools for building it.";
     shortName = "Docs";
     enableFeatureFreezePing = true;
@@ -460,6 +463,14 @@ with lib.maintainers; {
     shortName = "Home Assistant";
   };
 
+  infisical = {
+    members = [
+      akhilmhdh
+    ];
+    scope = "Maintain Infisical";
+    shortName = "Infisical";
+  };
+
   iog = {
     members = [
       cleverca22
@@ -715,6 +726,16 @@ with lib.maintainers; {
     enableFeatureFreezePing = true;
   };
 
+  lix = {
+    members = [
+      raitobezarius
+      qyriad
+    ];
+    scope = "Maintain the Lix package manager inside of Nixpkgs.";
+    shortName = "Lix ecosystem";
+    enableFeatureFreezePing = true;
+  };
+
   module-system = {
     members = [
       infinisil
@@ -793,6 +814,7 @@ with lib.maintainers; {
       aanderse
       drupol
       ma27
+      patka
       talyz
     ];
     githubTeams = [
diff --git a/nixos/doc/manual/configuration/abstractions.section.md b/nixos/doc/manual/configuration/abstractions.section.md
index 06356c472ba9..3ff8ac885b65 100644
--- a/nixos/doc/manual/configuration/abstractions.section.md
+++ b/nixos/doc/manual/configuration/abstractions.section.md
@@ -10,14 +10,12 @@ If you find yourself repeating yourself over and over, it’s time to abstract.
         adminAddr = "alice@example.org";
         forceSSL = true;
         enableACME = true;
-        enablePHP = true;
       };
       "wiki.example.org" = {
         documentRoot = "/webroot/wiki.example.org";
         adminAddr = "alice@example.org";
         forceSSL = true;
         enableACME = true;
-        enablePHP = true;
       };
     };
 }
diff --git a/nixos/doc/manual/development/settings-options.section.md b/nixos/doc/manual/development/settings-options.section.md
index 806eee563790..cedc82d32f89 100644
--- a/nixos/doc/manual/development/settings-options.section.md
+++ b/nixos/doc/manual/development/settings-options.section.md
@@ -146,6 +146,27 @@ have a predefined type and string generator already declared under
     :   Outputs the given attribute set as an Elixir map, instead of the
         default Elixir keyword list
 
+`pkgs.formats.php { finalVariable }` []{#pkgs-formats-php}
+
+:   A function taking an attribute set with values
+
+    `finalVariable`
+
+    :   The variable that will store generated expression (usually `config`). If set to `null`, generated expression will contain `return`.
+
+    It returns a set with PHP-Config-specific attributes `type`, `lib`, and
+    `generate` as specified [below](#pkgs-formats-result).
+
+    The `lib` attribute contains functions to be used in settings, for
+    generating special PHP values:
+
+    `mkRaw phpCode`
+
+    :   Outputs the given string as raw PHP code
+
+    `mkMixedArray list set`
+
+    :   Creates PHP array that contains both indexed and associative values. For example, `lib.mkMixedArray [ "hello" "world" ] { "nix" = "is-great"; }` returns `['hello', 'world', 'nix' => 'is-great']`
 
 []{#pkgs-formats-result}
 These functions all return an attribute set with these values:
diff --git a/nixos/doc/manual/installation/installing-from-other-distro.section.md b/nixos/doc/manual/installation/installing-from-other-distro.section.md
index 10ac2be4e161..38f0e5301472 100644
--- a/nixos/doc/manual/installation/installing-from-other-distro.section.md
+++ b/nixos/doc/manual/installation/installing-from-other-distro.section.md
@@ -42,9 +42,11 @@ The first steps to all these are the same:
     will be safer to use the `nixos-*` channels instead:
 
     ```ShellSession
-    $ nix-channel --add https://nixos.org/channels/nixos-version nixpkgs
+    $ nix-channel --add https://nixos.org/channels/nixos-<version> nixpkgs
     ```
 
+    Where `<version>` corresponds to the latest version available on [channels.nixos.org](https://channels.nixos.org/).
+
     You may want to throw in a `nix-channel --update` for good measure.
 
 1.  Install the NixOS installation tools:
diff --git a/nixos/doc/manual/installation/installing-virtualbox-guest.section.md b/nixos/doc/manual/installation/installing-virtualbox-guest.section.md
index 4b9ae0a9c55f..415119bd8c89 100644
--- a/nixos/doc/manual/installation/installing-virtualbox-guest.section.md
+++ b/nixos/doc/manual/installation/installing-virtualbox-guest.section.md
@@ -3,8 +3,8 @@
 Installing NixOS into a VirtualBox guest is convenient for users who
 want to try NixOS without installing it on bare metal. If you want to
 use a pre-made VirtualBox appliance, it is available at [the downloads
-page](https://nixos.org/nixos/download.html). If you want to set up a
-VirtualBox guest manually, follow these instructions:
+page](https://nixos.org/download/#nixos-virtualbox). If you want to set
+up a VirtualBox guest manually, follow these instructions:
 
 1.  Add a New Machine in VirtualBox with OS Type "Linux / Other Linux"
 
diff --git a/nixos/doc/manual/installation/upgrading.chapter.md b/nixos/doc/manual/installation/upgrading.chapter.md
index 09338bf8723d..11fc65502f95 100644
--- a/nixos/doc/manual/installation/upgrading.chapter.md
+++ b/nixos/doc/manual/installation/upgrading.chapter.md
@@ -33,8 +33,8 @@ To see what channels are available, go to <https://channels.nixos.org>.
 contains the channel's latest version and includes ISO images and
 VirtualBox appliances.) Please note that during the release process,
 channels that are not yet released will be present here as well. See the
-Getting NixOS page <https://nixos.org/nixos/download.html> to find the
-newest supported stable release.
+Getting NixOS page <https://nixos.org/download/> to find the newest
+supported stable release.
 
 When you first install NixOS, you're automatically subscribed to the
 NixOS channel that corresponds to your installation source. For
diff --git a/nixos/doc/manual/release-notes/rl-2405.section.md b/nixos/doc/manual/release-notes/rl-2405.section.md
index e3880d3deec5..72f24f5e1905 100644
--- a/nixos/doc/manual/release-notes/rl-2405.section.md
+++ b/nixos/doc/manual/release-notes/rl-2405.section.md
@@ -16,7 +16,7 @@ In addition to numerous new and upgraded packages, this release has the followin
 
 - `linuxPackages_testing_bcachefs` is now fully deprecated by `linuxPackages_latest`, and is therefore no longer available.
 
-- (TODO not sure what path to use here) The default kernel package has been updated from 6.1 to 6.6. All supported kernels remain available.
+- The default kernel package has been updated from 6.1 to 6.6. All supported kernels remain available.
 
 - NixOS now installs a stub ELF loader that prints an informative error message when users attempt to run binaries not made for NixOS.
    - This can be disabled through the `environment.stub-ld.enable` option.
@@ -53,6 +53,10 @@ Use `services.pipewire.extraConfig` or `services.pipewire.configPackages` for Pi
 - `system.etc.overlay.enable` option was added. If enabled, `/etc` is
   mounted via an overlayfs instead of being created by a custom perl script.
 
+- For each supporting version of the Linux kernel firmware blobs
+  are compressed with zstd. For firmware blobs this means an increase of 4.4% in size, however
+  a significantly higher decompression speed.
+
 - NixOS AMIs are now uploaded regularly to a new AWS Account.
   Instructions on how to use them can be found on <https://nixos.github.io/amis>.
   We are working on integration the data into the NixOS homepage.
@@ -92,15 +96,15 @@ Use `services.pipewire.extraConfig` or `services.pipewire.configPackages` for Pi
 
 - [PhotonVision](https://photonvision.org/), a free, fast, and easy-to-use computer vision solution for the FIRST® Robotics Competition.
 
-- [clatd](https://github.com/toreanderson/clatd), a a CLAT / SIIT-DC Edge Relay implementation for Linux.
+- [clatd](https://github.com/toreanderson/clatd), a CLAT / SIIT-DC Edge Relay implementation for Linux.
 
-- [pyLoad](https://pyload.net/), a FOSS download manager written in Python. Available as [services.pyload](#opt-services.pyload.enable)
+- [pyLoad](https://pyload.net/), a FOSS download manager written in Python. Available as [services.pyload](#opt-services.pyload.enable).
 
 - [maubot](https://github.com/maubot/maubot), a plugin-based Matrix bot framework. Available as [services.maubot](#opt-services.maubot.enable).
 
-- [ryzen-monitor-ng](https://github.com/mann1x/ryzen_monitor_ng), a desktop AMD CPU power monitor and controller, similar to Ryzen Master but for Linux. Available as [programs.ryzen-monitor-ng](#opt-programs.ryzen-monitor-ng.enable)
+- [ryzen-monitor-ng](https://github.com/mann1x/ryzen_monitor_ng), a desktop AMD CPU power monitor and controller, similar to Ryzen Master but for Linux. Available as [programs.ryzen-monitor-ng](#opt-programs.ryzen-monitor-ng.enable).
 
-- [ryzen-smu](https://gitlab.com/leogx9r/ryzen_smu), Linux kernel driver to expose the SMU (System Management Unit) for certain AMD Ryzen Processors. Includes the userspace program `monitor_cpu`. Available at [hardward.cpu.amd.ryzen-smu](#opt-hardware.cpu.amd.ryzen-smu.enable)
+- [ryzen-smu](https://gitlab.com/leogx9r/ryzen_smu), Linux kernel driver to expose the SMU (System Management Unit) for certain AMD Ryzen Processors. Includes the userspace program `monitor_cpu`. Available at [hardward.cpu.amd.ryzen-smu](#opt-hardware.cpu.amd.ryzen-smu.enable).
 
 - `systemd`'s `gateway`, `upload`, and `remote` services, which provide ways of sending journals across the network. Enable using [services.journald.gateway](#opt-services.journald.gateway.enable), [services.journald.upload](#opt-services.journald.upload.enable), and [services.journald.remote](#opt-services.journald.remote.enable).
 
@@ -124,16 +128,18 @@ Use `services.pipewire.extraConfig` or `services.pipewire.configPackages` for Pi
 
 - [Python Matter Server](https://github.com/home-assistant-libs/python-matter-server), a
   Matter Controller Server exposing websocket connections for use with other services, notably Home Assistant.
-  Available as [services.matter-server](#opt-services.matter-server.enable)
+  Available as [services.matter-server](#opt-services.matter-server.enable).
 
 - [db-rest](https://github.com/derhuerst/db-rest), a wrapper around Deutsche Bahn's internal API for public transport data. Available as [services.db-rest](#opt-services.db-rest.enable).
 
+- [mautrix-signal](https://github.com/mautrix/signal), a Matrix-Signal puppeting bridge. Available as [services.mautrix-signal](#opt-services.mautrix-signal.enable).
+
 - [Anki Sync Server](https://docs.ankiweb.net/sync-server.html), the official sync server built into recent versions of Anki. Available as [services.anki-sync-server](#opt-services.anki-sync-server.enable).
 The pre-existing [services.ankisyncd](#opt-services.ankisyncd.enable) has been marked deprecated and will be dropped after 24.05 due to lack of maintenance of the anki-sync-server software.
 
-- [mautrix-meta](https://github.com/mautrix/meta), a Matrix <-> Facebook and Matrix <-> Instagram hybrid puppeting/relaybot bridge. Available as services.mautrix-meta
+- [mautrix-meta](https://github.com/mautrix/meta), a Matrix <-> Facebook and Matrix <-> Instagram hybrid puppeting/relaybot bridge. Available as services.mautrix-meta.
 
-- [Jottacloud Command-line Tool](https://docs.jottacloud.com/en/articles/1436834-jottacloud-command-line-tool), a CLI for the [Jottacloud](https://jottacloud.com/) cloud storage provider. Available as [user.services.jotta-cli](#opt-user.services.jotta-cli.enable).
+- [Jottacloud Command-line Tool](https://docs.jottacloud.com/en/articles/1436834-jottacloud-command-line-tool), a CLI for the [Jottacloud](https://jottacloud.com/) cloud storage provider. Available as [services.jotta-cli](#opt-services.jotta-cli.enable).
 
 - [transfer-sh](https://github.com/dutchcoders/transfer.sh), a tool that supports easy and fast file sharing from the command-line. Available as [services.transfer-sh](#opt-services.transfer-sh.enable).
 
@@ -155,6 +161,8 @@ The pre-existing [services.ankisyncd](#opt-services.ankisyncd.enable) has been m
 
 - [Monado](https://monado.freedesktop.org/), an open source XR runtime. Available as [services.monado](#opt-services.monado.enable).
 
+- [intel-gpu-tools](https://drm.pages.freedesktop.org/igt-gpu-tools), tools for development and testing of the Intel DRM driver. Available as [hardware.intel-gpu-tools](#opt-hardware.intel-gpu-tools.enable).
+
 - [Pretix](https://pretix.eu/about/en/), an open source ticketing software for events. Available as [services.pretix](#opt-services.pretix.enable).
 
 - [microsocks](https://github.com/rofl0r/microsocks), a tiny, portable SOCKS5 server with very moderate resource usage. Available as [services.microsocks](#opt-services.microsocks.enable).
@@ -175,7 +183,11 @@ The pre-existing [services.ankisyncd](#opt-services.ankisyncd.enable) has been m
 
 - [nh](https://github.com/viperML/nh), yet another Nix CLI helper. Available as [programs.nh](#opt-programs.nh.enable).
 
-- [ALVR](https://github.com/alvr-org/alvr), a VR desktop streamer. Available as [programs.alvr](#opt-programs.alvr.enable)
+- [ALVR](https://github.com/alvr-org/alvr), a VR desktop streamer. Available as [programs.alvr](#opt-programs.alvr.enable).
+
+- [xdg-terminal-exec](https://github.com/Vladimir-csp/xdg-terminal-exec), the proposed Default Terminal Execution Specification.
+
+- [your_spotify](https://github.com/Yooooomi/your_spotify), a self hosted Spotify tracking dashboard. Available as [services.your_spotify](#opt-services.your_spotify.enable)
 
 - [RustDesk](https://rustdesk.com), a full-featured open source remote control alternative for self-hosting and security with minimal configuration. Alternative to TeamViewer. Available as [services.rustdesk-server](#opt-services.rustdesk-server.enable).
 
@@ -183,22 +195,28 @@ The pre-existing [services.ankisyncd](#opt-services.ankisyncd.enable) has been m
 
 - [davis](https://github.com/tchapi/davis), a simple CardDav and CalDav server inspired by Baïkal. Available as [services.davis](#opt-services.davis.enable).
 
-- [Firefly-iii](https://www.firefly-iii.org), a free and open source personal finance manager. Available as [services.firefly-iii](#opt-services.firefly-iii.enable)
+- [Firefly-iii](https://www.firefly-iii.org), a free and open source personal finance manager. Available as [services.firefly-iii](#opt-services.firefly-iii.enable).
 
 - [systemd-lock-handler](https://git.sr.ht/~whynothugo/systemd-lock-handler/), a bridge between logind D-Bus events and systemd targets. Available as [services.systemd-lock-handler.enable](#opt-services.systemd-lock-handler.enable).
 
 - [wastebin](https://github.com/matze/wastebin), a pastebin server written in rust. Available as [services.wastebin](#opt-services.wastebin.enable).
 
-- [Mealie](https://nightly.mealie.io/), a self-hosted recipe manager and meal planner with a RestAPI backend and a reactive frontend application built in NuxtJS for a pleasant user experience for the whole family. Available as [services.mealie](#opt-services.mealie.enable)
+- [Mealie](https://nightly.mealie.io/), a self-hosted recipe manager and meal planner with a RestAPI backend and a reactive frontend application built in NuxtJS for a pleasant user experience for the whole family. Available as [services.mealie](#opt-services.mealie.enable).
 
 - [Sunshine](https://app.lizardbyte.dev/Sunshine), a self-hosted game stream host for Moonlight. Available as [services.sunshine](#opt-services.sunshine.enable).
 
-- [Uni-Sync](https://github.com/EightB1ts/uni-sync), a synchronization tool for Lian Li Uni Controllers. Available as [hardware.uni-sync](#opt-hardware.uni-sync.enable)
+- [Uni-Sync](https://github.com/EightB1ts/uni-sync), a synchronization tool for Lian Li Uni Controllers. Available as [hardware.uni-sync](#opt-hardware.uni-sync.enable).
 
 - [prometheus-nats-exporter](https://github.com/nats-io/prometheus-nats-exporter), a Prometheus exporter for NATS. Available as [services.prometheus.exporters.nats](#opt-services.prometheus.exporters.nats.enable).
 
 - [isolate](https://github.com/ioi/isolate), a sandbox for securely executing untrusted programs. Available as [security.isolate](#opt-security.isolate.enable).
 
+- [ydotool](https://github.com/ReimuNotMoe/ydotool), a generic command-line automation tool now has a module. Available as [programs.ydotool](#opt-programs.ydotool.enable).
+
+- [private-gpt](https://github.com/zylon-ai/private-gpt), a service to interact with your documents using the power of LLMs, 100% privately, no data leaks. Available as [services.private-gpt](#opt-services.private-gpt.enable).
+
+- [keto](https://www.ory.sh/keto/), a permission & access control server, the first open source implementation of ["Zanzibar: Google's Consistent, Global Authorization System"](https://research.google/pubs/zanzibar-googles-consistent-global-authorization-system/).
+
 ## Backward Incompatibilities {#sec-release-24.05-incompatibilities}
 
 <!-- To avoid merge conflicts, consider adding your item at an arbitrary place in the list instead. -->
@@ -236,6 +254,10 @@ The pre-existing [services.ankisyncd](#opt-services.ankisyncd.enable) has been m
 
 - `unrar` was updated to v7. See [changelog](https://www.rarlab.com/unrar7notes.htm) for more information.
 
+- `percona-server` now follows [the same two-fold release cycle](https://www.percona.com/blog/lts-and-innovation-releases-for-percona-server-for-mysql/) as Oracle MySQL and provides a *Long-Term-Support (LTS)* in parallel with a continuous-delivery *Innovation* release. `percona-server` defaults to `percona-server_lts`, will be backed by the same release branch throughout the lifetime of this stable NixOS release, and is still available under the versioned attribute `percona-server_8_0`.
+  The `percona-server_innovation` releases however have support periods shorter than the lifetime of this NixOS release and will continuously be updated to newer Percona releases. Note that Oracle considers the *Innovation* releases to be production-grade, but each release might include backwards-incompatible changes, even in its on-disk format.
+  The same release scheme is applied to the supporting `percona-xtrabackup` tool as well.
+
 - `git-town` was updated from version 11 to 13. See the [changelog](https://github.com/git-town/git-town/blob/main/CHANGELOG.md#1300-2024-03-22) for breaking changes.
 
 - `k9s` was updated to v0.31. There have been various breaking changes in the config file format,
@@ -244,6 +266,9 @@ The pre-existing [services.ankisyncd](#opt-services.ankisyncd.enable) has been m
   [v0.31](https://github.com/derailed/k9s/releases/tag/v0.31.0) for details. It is recommended
   to back up your current configuration and let k9s recreate the new base configuration.
 
+- the .csv format used to define lua packages to be updated via
+  `luarocks-packages-updater` has changed: `src` (URL towards a git repository) has now become `rockspec` (URL towards a rockspec) to remove ambiguity regarding which rockspec to use and simplify implementation.
+
 - NixOS AMIs are now uploaded regularly to a new AWS Account.
   Instructions on how to use them can be found on <https://nixos.github.io/amis>.
   We are working on integration the data into the NixOS homepage.
@@ -257,7 +282,7 @@ The pre-existing [services.ankisyncd](#opt-services.ankisyncd.enable) has been m
 
 - `idris2` was updated to v0.7.0. This version introduces breaking changes. Check out the [changelog](https://github.com/idris-lang/Idris2/blob/v0.7.0/CHANGELOG.md#v070) for details.
 
-- `nvtop` family of packages was reorganized into nested attrset. `nvtop` has been renamed to `nvtopPackages.full`, and all `nvtop-{amd,nvidia,intel,msm}` packages are now named as `nvtopPackages.{amd,nvidia,intel,msm}`
+- `nvtop` family of packages was reorganized into nested attrset. `nvtop` has been renamed to `nvtopPackages.full`, and all `nvtop-{amd,nvidia,intel,msm}` packages are now named as `nvtopPackages.{amd,nvidia,intel,msm}`.
 
 - `neo4j` has been updated to version 5. You may want to read the [release notes for Neo4j 5](https://neo4j.com/release-notes/database/neo4j-5/).
 
@@ -267,6 +292,8 @@ The pre-existing [services.ankisyncd](#opt-services.ankisyncd.enable) has been m
 
 - `mongodb-4_4` has been removed as it has reached end of life. Consequently, `unifi7` and `unifi8` now use MongoDB 5.0 by default.
 
+- `mongodb-5_0` and newer requires a cpu with the avx instruction set to run.
+
 - `nitter` requires a `guest_accounts.jsonl` to be provided as a path or loaded into the default location at `/var/lib/nitter/guest_accounts.jsonl`. See [Guest Account Branch Deployment](https://github.com/zedeus/nitter/wiki/Guest-Account-Branch-Deployment) for details.
 
 - `boot.supportedFilesystems` and `boot.initrd.supportedFilesystems` are now attribute sets instead of lists. Assignment from lists as done previously is still supported, but checking whether a filesystem is enabled must now by done using `supportedFilesystems.fs or false` instead of using `lib.elem "fs" supportedFilesystems` as was done previously.
@@ -278,12 +305,14 @@ The pre-existing [services.ankisyncd](#opt-services.ankisyncd.enable) has been m
   "mysecret"` becomes `services.aria2.rpcSecretFile = "/path/to/secret_file"`
   where the file `secret_file` contains the string `mysecret`.
 
+- The `system.forbiddenDependenciesRegex` option has been renamed to `system.forbiddenDependenciesRegexes` and now has the type of `listOf string` instead of `string` to accept multiple regexes.
+
 - `openssh`, `openssh_hpn` and `openssh_gssapi` are now compiled without support for the DSA signature algorithm as it is being deprecated upstream. Users still relying on DSA keys should consider upgrading
   to another signature algorithm. However, for the time being it is possible to restore DSA key support using `override` to set `dsaKeysSupport = true`.
 
 - `buildGoModule` now throws an error when `vendorHash` is not specified. `vendorSha256`, deprecated in Nixpkgs 23.11, is now ignored and is no longer a `vendorHash` alias.
 
-- `services.invidious.settings.db.user`, the default database username has changed from `kemal` to `invidious`. Setups involving an externally-provisioned database (i.e. `services.invidious.database.createLocally == false`) should adjust their configuration accordingly. The old `kemal` user will not be removed automatically even when the database is provisioned automatically.(https://github.com/NixOS/nixpkgs/pull/265857)
+- `services.invidious.settings.db.user`, the default database username has changed from `kemal` to `invidious`. Setups involving an externally-provisioned database (i.e. `services.invidious.database.createLocally == false`) should adjust their configuration accordingly. The old `kemal` user will not be removed automatically even when the database is provisioned automatically.(https://github.com/NixOS/nixpkgs/pull/265857).
 
 - `writeReferencesToFile` is deprecated in favour of the new trivial build helper `writeClosure`. The latter accepts a list of paths and has an unambiguous name and cleaner implementation.
 
@@ -317,9 +346,11 @@ The pre-existing [services.ankisyncd](#opt-services.ankisyncd.enable) has been m
   - Proxies are now defined with a new option `settings.proxies` which takes a list of proxies.
   - Consult the [upstream documentation](https://github.com/fatedier/frp#example-usage) for more details on the changes.
 
-- `mkosi` was updated to v20. Parts of the user interface have changed. Consult the
-  release notes of [v19](https://github.com/systemd/mkosi/releases/tag/v19) and
-  [v20](https://github.com/systemd/mkosi/releases/tag/v20) for a list of changes.
+- `mkosi` was updated to v22. Parts of the user interface have changed. Consult the
+  release notes of [v19](https://github.com/systemd/mkosi/releases/tag/v19),
+  [v20](https://github.com/systemd/mkosi/releases/tag/v20),
+  [v21](https://github.com/systemd/mkosi/releases/tag/v21) and
+  [v22](https://github.com/systemd/mkosi/releases/tag/v22) for a list of changes.
 
 - `gonic` has been updated to v0.16.4. Config now requires `playlists-path` to be set. See the rest of the [v0.16.0 release notes](https://github.com/sentriz/gonic/releases/tag/v0.16.0) for more details.
 
@@ -349,7 +380,7 @@ The pre-existing [services.ankisyncd](#opt-services.ankisyncd.enable) has been m
 
 - `optparse-bash` is now dropped due to upstream inactivity. Alternatives available in Nixpkgs include [`argc`](https://github.com/sigoden/argc), [`argbash`](https://github.com/matejak/argbash), [`bashly`](https://github.com/DannyBen/bashly) and [`gum`](https://github.com/charmbracelet/gum), to name a few.
 
-- `kanata` package has been updated to v1.6.0, which includes breaking changes.  Check out the changelog of [v1.5.0](https://github.com/jtroo/kanata/releases/tag/v1.5.0) and [v1.6.0](https://github.com/jtroo/kanata/releases/tag/v1.6.0) for details.
+- `kanata` package has been updated to v1.6.1, which includes breaking changes.  Check out the changelog of [v1.5.0](https://github.com/jtroo/kanata/releases/tag/v1.5.0) and [v1.6.0](https://github.com/jtroo/kanata/releases/tag/v1.6.0) for details.
 
 - `craftos-pc` package has been updated to v2.8, which includes [breaking changes](https://github.com/MCJack123/craftos2/releases/tag/v2.8).
   - Files are now handled in binary mode; this could break programs with embedded UTF-8 characters.
@@ -366,7 +397,8 @@ The pre-existing [services.ankisyncd](#opt-services.ankisyncd.enable) has been m
   - If [`system.stateVersion`](#opt-system.stateVersion) is >=24.05, `pkgs.nextcloud29` will be installed by default.
   - If [`system.stateVersion`](#opt-system.stateVersion) is >=23.11, `pkgs.nextcloud27` will be installed by default.
   - Please note that an upgrade from v27 (or older) to v29 directly is not possible. Please upgrade to `nextcloud28` (or earlier) first. Nextcloud prohibits skipping major versions while upgrading. You can upgrade by declaring [`services.nextcloud.package = pkgs.nextcloud28;`](options.html#opt-services.nextcloud.package).
-  - Known warnings after the upgrade are documented in [](#module-services-nextcloud-known-warnings).
+  - Known warnings after the upgrade are documented in [](#module-services-nextcloud-known-warnings) from now on.
+  - The "Photos" app only displays Media from inside the `Photos` directory. This can be changed manually in the "Photos" tab below "Photos settings".
 
 - The vendored third party libraries have been mostly removed from `cudaPackages.nsight_systems`, which we now only ship for `cudaPackages_11_8` and later due to outdated dependencies. Users comfortable with the vendored dependencies may use `overrideAttrs` to amend the `postPatch` phase and the `meta.broken` correspondingly. Alternatively, one could package the deprecated `boost170` locally, as required for `cudaPackages_11_4.nsight_systems`.
 
@@ -380,6 +412,12 @@ The pre-existing [services.ankisyncd](#opt-services.ankisyncd.enable) has been m
 
 - `halloy` package was updated past 2024.5 which introduced a breaking change by switching the config format from YAML to TOML. See https://github.com/squidowl/halloy/releases/tag/2024.5 for details.
 
+- If `services.smokeping.webService` was enabled, smokeping is now served via nginx instead of thttpd. This change brings the following consequences:
+  - The default port for smokeping is now the nginx default port 80 instead of 8081.
+  - The option `services.smokeping.port` has been removed. To customize the port, use `services.nginx.virtualHosts.smokeping.listen.*.port`.
+
+- The `wpaperd` package has a breaking change moving to 1.0.1, previous version 0.3.0 had 2 different configuration files, one for wpaperd and one for the wallpapers. Remove the former and move the latter (`wallpaper.toml`) to `config.toml`.
+
 - Ada packages (libraries and tools) have been moved into the `gnatPackages` scope. `gnatPackages` uses the default GNAT compiler, `gnat12Packages` and `gnat13Packages` use the respective matching compiler version.
 
 - Paths provided as `restartTriggers` and `reloadTriggers` for systemd units will now be copied into the nix store to make the behavior consistent.
@@ -440,6 +478,11 @@ The pre-existing [services.ankisyncd](#opt-services.ankisyncd.enable) has been m
 
 - `firefox-devedition`, `firefox-beta`, `firefox-esr` executable file names for now match their package names, which is consistent with the `firefox-*-bin` packages. The desktop entries are also updated so that you can have multiple editions of firefox in your app launcher.
 
+- `chromium` and `ungoogled-chromium` had a long stanging issue regarding Widevine DRM handling in nixpkgs fixed.
+  `chromium` now no longer automatically downloads Widevine when encountering DRM protected content.
+  To be able to play DRM protected content in `chromium` now, you have to explicitly opt-in as originally intended using `chromium.override { enableWideVine = true; }`.
+  This override has been added almost 10 years ago.
+
 - switch-to-configuration does not directly call systemd-tmpfiles anymore.
   Instead, the new artificial sysinit-reactivation.target is introduced which
   allows to restart multiple services that are ordered before sysinit.target
@@ -448,11 +491,11 @@ The pre-existing [services.ankisyncd](#opt-services.ankisyncd.enable) has been m
 - `systemd.oomd` module behavior is changed as:
 
   - Raise ManagedOOMMemoryPressureLimit from 50% to 80%. This should make systemd-oomd kill things less often, and fix issues like [this](https://pagure.io/fedora-workstation/issue/358).
-    Reference: [commit](https://src.fedoraproject.org/rpms/systemd/c/806c95e1c70af18f81d499b24cd7acfa4c36ffd6?branch=806c95e1c70af18f81d499b24cd7acfa4c36ffd6)
+    Reference: [commit](https://src.fedoraproject.org/rpms/systemd/c/806c95e1c70af18f81d499b24cd7acfa4c36ffd6?branch=806c95e1c70af18f81d499b24cd7acfa4c36ffd6).
 
   - Remove swap policy. This helps prevent killing processes when user's swap is small.
 
-  - Expand the memory pressure policy to system.slice, user-.slice, and all user owned slices. Reference: [commit](https://src.fedoraproject.org/rpms/systemd/c/7665e1796f915dedbf8e014f0a78f4f576d609bb)
+  - Expand the memory pressure policy to system.slice, user-.slice, and all user owned slices. Reference: [commit](https://src.fedoraproject.org/rpms/systemd/c/7665e1796f915dedbf8e014f0a78f4f576d609bb).
 
   - `systemd.oomd.enableUserServices` is renamed to `systemd.oomd.enableUserSlices`.
 
@@ -503,6 +546,8 @@ The pre-existing [services.ankisyncd](#opt-services.ankisyncd.enable) has been m
 
 - `erlang-ls` package no longer ships the `els_dap` binary as of v0.51.0.
 
+- `icu` no longer includes `install-sh` and `mkinstalldirs` in the shared folder.
+
 ## Other Notable Changes {#sec-release-24.05-notable-changes}
 
 <!-- To avoid merge conflicts, consider adding your item at an arbitrary place in the list instead. -->
@@ -511,7 +556,7 @@ The pre-existing [services.ankisyncd](#opt-services.ankisyncd.enable) has been m
 
 - `cinnamon` has been updated to 6.0. Please beware that the [Wayland session](https://blog.linuxmint.com/?p=4591) is still experimental in this release and could potentially [affect Xorg sessions](https://blog.linuxmint.com/?p=4639). We suggest a reboot when switching between sessions.
 
-- (TODO awaiting feedback on code-casing package names) MATE has been updated to 1.28.
+- `mate` has been updated to 1.28.
   - To properly support panel plugins built with Wayland (in-process) support, we are introducing `services.xserver.desktopManager.mate.extraPanelApplets` option, please use that for installing panel applets.
   - Similarly, please use `services.xserver.desktopManager.mate.extraCajaExtensions` option for installing Caja extensions.
   - To use the Wayland session, enable `services.xserver.desktopManager.mate.enableWaylandSession`. This is opt-in for now as it is in early stage and introduces a new set of Wayfire closure. Due to [known issues with LightDM](https://github.com/canonical/lightdm/issues/63), we suggest using SDDM for display manager.
@@ -525,6 +570,17 @@ The pre-existing [services.ankisyncd](#opt-services.ankisyncd.enable) has been m
 - `services.postgresql.extraPlugins` changed its type from just a list of packages to also a function that returns such a list.
   For example a config line like ``services.postgresql.extraPlugins = with pkgs.postgresql_11.pkgs; [ postgis ];`` is recommended to be changed to ``services.postgresql.extraPlugins = ps: with ps; [ postgis ];``;
 
+- `services.openssh` now has an option `authorizedKeysInHomedir`, controlling whether `~/.ssh/authorizedKeys` is
+  added to `authorizedKeysFiles`.
+  ::: {.note}
+  This option currently defaults to `true` for NixOS 24.05, preserving the previous behaviour.
+  This is expected to change in NixOS 24.11.
+  :::
+  ::: {.warning}
+  Users should check that their SSH keys are in `users.users.*.openssh`, or that they have another way to access
+  and administer the system, before setting this option to `false`.
+  :::
+
 - [`matrix-synapse`](https://element-hq.github.io/synapse/) homeserver module now supports configuring UNIX domain socket [`listeners`](#opt-services.matrix-synapse.settings.listeners) through the `path` option.
   The default replication worker on the main instance has been migrated away from TCP sockets to UNIX domain sockets.
 
@@ -536,7 +592,7 @@ The pre-existing [services.ankisyncd](#opt-services.ankisyncd.enable) has been m
   The `nimPackages` and `nim2Packages` sets have been removed.
   See https://nixos.org/manual/nixpkgs/unstable#nim for more information.
 
-- [TODO: reword to place an attribute at the front] Programs written in [D](https://dlang.org/) using the `dub` build system and package manager can now be built using `buildDubPackage` utilizing lockfiles provided by the new `dub-to-nix` helper program.
+- `buildDubPackage` can now be used to build Programs written in [D](https://dlang.org/) using the `dub` build system and package manager.
   See the [D section](https://nixos.org/manual/nixpkgs/unstable#dlang) in the manual for more information.
 
 - [`portunus`](https://github.com/majewsky/portunus) has been updated to major version 2.
@@ -552,7 +608,7 @@ The pre-existing [services.ankisyncd](#opt-services.ankisyncd.enable) has been m
 
 - `garage` has been updated to v1.x.x. Users should read the [upstream release notes](https://git.deuxfleurs.fr/Deuxfleurs/garage/releases/tag/v1.0.0) and follow the documentation when changing over their `services.garage.package` and performing this manual upgrade.
 
-- [TODO: reword to place an attribute at the front] The EC2 image module now enables the [Amazon SSM Agent](https://docs.aws.amazon.com/systems-manager/latest/userguide/ssm-agent.html) by default.
+- The EC2 image module now enables the [Amazon SSM Agent](https://docs.aws.amazon.com/systems-manager/latest/userguide/ssm-agent.html) by default.
 
 - The following options of the Nextcloud module were moved into [`services.nextcloud.settings`](#opt-services.nextcloud.settings) and renamed to match the name from Nextcloud's `config.php`:
   - `logLevel` -> [`loglevel`](#opt-services.nextcloud.settings.loglevel),
@@ -587,7 +643,7 @@ The pre-existing [services.ankisyncd](#opt-services.ankisyncd.enable) has been m
 
 - `sonarr` version bumped to from 3.0.10 to 4.0.3. Consequently existing config database files will be upgraded automatically, but note that some old apparently-working configs [might actually be corrupt and fail to upgrade cleanly](https://forums.sonarr.tv/t/sonarr-v4-released/33089).
 
-- [TODO: reword to place an attribute at the front] The Yama LSM is now enabled by default in the kernel, which prevents ptracing
+- The kernel Yama LSM is now enabled by default, which prevents ptracing
   non-child processes. This means you will not be able to attach gdb to an
   existing process, but will need to start that process from gdb (so it is a
   child). Or you can set `boot.kernel.sysctl."kernel.yama.ptrace_scope"` to 0.
@@ -605,7 +661,7 @@ The pre-existing [services.ankisyncd](#opt-services.ankisyncd.enable) has been m
 
 - [](#opt-boot.kernel.sysctl._net.core.wmem_max_) changed from a string to an integer because of the addition of a custom merge option (taking the highest value defined to avoid conflicts between 2 services trying to set that value), just as [](#opt-boot.kernel.sysctl._net.core.rmem_max_) since 22.11.
 
-- [TODO: reword to place an attribute at the front] A new top-level package set, `pkgsExtraHardening` is added. This is a set of packages built with stricter hardening flags - those that have not yet received enough testing to be applied universally, those that are more likely to cause build failures or those that have drawbacks to their use (e.g. performance or required hardware features).
+- `pkgsExtraHardening`, a new top-level package set, was added. This is a set of packages built with stricter hardening flags - those that have not yet received enough testing to be applied universally, those that are more likely to cause build failures or those that have drawbacks to their use (e.g. performance or required hardware features).
 
 - `services.zfs.zed.enableMail` now uses the global `sendmail` wrapper defined by an email module
   (such as msmtp or Postfix). It no longer requires using a special ZFS build with email support.
@@ -657,16 +713,22 @@ The pre-existing [services.ankisyncd](#opt-services.ankisyncd.enable) has been m
   making it possible to accumulate definitions without resorting to `mkForce`,
   hence to retain the definitions not anticipating that need.
 
+- Lisp modules: previously deprecated interface based on `common-lisp.sh` has now been removed.
+
 - `youtrack` is bumped to 2023.3. The update is not performed automatically, it requires manual interaction. See the YouTrack section in the manual for details.
 
-- QtMultimedia has changed its default backend to `QT_MEDIA_BACKEND=ffmpeg` (previously `gstreamer` on Linux or `darwin` on MacOS).
+- `qt6.qtmultimedia` has changed its default backend to `QT_MEDIA_BACKEND=ffmpeg` (previously `gstreamer` on Linux or `darwin` on MacOS).
   The previous native backends remain available but are now minimally maintained. Refer to [upstream documentation](https://doc.qt.io/qt-6/qtmultimedia-index.html#ffmpeg-as-the-default-backend) for further details about each platform.
 
 - `drbd` out-of-tree Linux kernel driver has been added in version 9.2.7. With it the DRBD 9.x features can be used instead of the 8.x features provided by the 8.4.11 in-tree driver.
 
-- [TODO: reword to place an attribute at the front] The oil shell's c++ version is now available as `oils-for-unix`. The python version is still available as `oil`
+- `oils-for-unix`, the oil shell's c++ version is now available. The python version is still available as `oil`.
 
 - `documentation.man.mandoc` now by default uses `MANPATH` to set the directories where mandoc will search for manual pages.
   This enables mandoc to find manual pages in Nix profiles. To set the manual search paths via the `mandoc.conf` configuration file like before, use `documentation.man.mandoc.settings.manpath` instead.
 
-- `grafana-loki` package was updated to 3.0.0 which includes [breaking changes](https://github.com/grafana/loki/releases/tag/v3.0.0)
+- The `systemd-confinement` module extension is now compatible with `DynamicUser=true` and thus `ProtectSystem=strict` too.
+
+- `grafana-loki` package was updated to 3.0.0 which includes [breaking changes](https://github.com/grafana/loki/releases/tag/v3.0.0).
+
+- `programs.fish.package` now allows you to override the package used in the `fish` module.
diff --git a/nixos/lib/systemd-lib.nix b/nixos/lib/systemd-lib.nix
index eef49f8c4ef3..0641da8e7751 100644
--- a/nixos/lib/systemd-lib.nix
+++ b/nixos/lib/systemd-lib.nix
@@ -18,6 +18,7 @@ let
     flip
     head
     isInt
+    isFloat
     isList
     isPath
     length
@@ -152,7 +153,7 @@ in rec {
       "Systemd ${group} field `${name}' is outside the range [${toString min},${toString max}]";
 
   assertRangeOrOneOf = name: min: max: values: group: attr:
-    optional (attr ? ${name} && !((min <= attr.${name} && max >= attr.${name}) || elem attr.${name} values))
+    optional (attr ? ${name} && !(((isInt attr.${name} || isFloat attr.${name}) && min <= attr.${name} && max >= attr.${name}) || elem attr.${name} values))
       "Systemd ${group} field `${name}' is not a value in range [${toString min},${toString max}], or one of ${toString values}";
 
   assertMinimum = name: min: group: attr:
diff --git a/nixos/lib/testing/driver.nix b/nixos/lib/testing/driver.nix
index 7eb06e023918..d4f8e0f0c6e3 100644
--- a/nixos/lib/testing/driver.nix
+++ b/nixos/lib/testing/driver.nix
@@ -139,7 +139,7 @@ in
     enableOCR = mkOption {
       description = ''
         Whether to enable Optical Character Recognition functionality for
-        testing graphical programs. See [Machine objects](`ssec-machine-objects`).
+        testing graphical programs. See [`Machine objects`](#ssec-machine-objects).
       '';
       type = types.bool;
       default = false;
diff --git a/nixos/modules/config/terminfo.nix b/nixos/modules/config/terminfo.nix
index 4b58605aa7f1..b538d749ffcb 100644
--- a/nixos/modules/config/terminfo.nix
+++ b/nixos/modules/config/terminfo.nix
@@ -31,7 +31,7 @@ with lib;
     # attrNames (filterAttrs
     #  (_: drv: (builtins.tryEval (isDerivation drv && drv ? terminfo)).value)
     #  pkgs)
-    environment.systemPackages = mkIf config.environment.enableAllTerminfo (map (x: x.terminfo) (with pkgs; [
+    environment.systemPackages = mkIf config.environment.enableAllTerminfo (map (x: x.terminfo) (with pkgs.pkgsBuildBuild; [
       alacritty
       contour
       foot
diff --git a/nixos/modules/config/xdg/terminal-exec.nix b/nixos/modules/config/xdg/terminal-exec.nix
new file mode 100644
index 000000000000..daf2055d2e90
--- /dev/null
+++ b/nixos/modules/config/xdg/terminal-exec.nix
@@ -0,0 +1,54 @@
+{
+  config,
+  lib,
+  pkgs,
+  ...
+}:
+
+let
+  cfg = config.xdg.terminal-exec;
+  inherit (lib) mkIf mkEnableOption mkOption mkPackageOption types;
+in
+{
+  meta.maintainers = with lib.maintainers; [ Cryolitia ];
+
+  ###### interface
+
+  options = {
+    xdg.terminal-exec = {
+      enable = mkEnableOption "xdg-terminal-exec, the [proposed](https://gitlab.freedesktop.org/xdg/xdg-specs/-/merge_requests/46) Default Terminal Execution Specification";
+      package = mkPackageOption pkgs "xdg-terminal-exec" { };
+      settings = mkOption {
+        type = with types; attrsOf (listOf str);
+        default = { };
+        description = ''
+          Configuration options for the Default Terminal Execution Specification.
+
+          The keys are the desktop environments that are matched (case-insensitively) against `$XDG_CURRENT_DESKTOP`,
+          or `default` which is used when the current desktop environment is not found in the configuration.
+          The values are a list of terminals' [desktop file IDs](https://specifications.freedesktop.org/desktop-entry-spec/latest/ar01s02.html#desktop-file-id) to try in order of decreasing priority.
+        '';
+        example = {
+          default = [ "kitty.desktop" ];
+          GNOME = [ "com.raggesilver.BlackBox.desktop" "org.gnome.Terminal.desktop" ];
+        };
+      };
+    };
+  };
+
+  ###### implementation
+
+  config = mkIf cfg.enable {
+    environment = {
+      systemPackages = [ cfg.package ];
+
+      etc = lib.mapAttrs' (
+        desktop: terminals:
+        # map desktop name such as GNOME to `xdg/gnome-xdg-terminals.list`, default to `xdg/xdg-terminals.list`
+        lib.nameValuePair (
+          "xdg/${if desktop == "default" then "" else "${lib.toLower desktop}-"}xdg-terminals.list"
+        ) { text = lib.concatLines terminals; }
+      ) cfg.settings;
+    };
+  };
+}
diff --git a/nixos/modules/hardware/openrazer.nix b/nixos/modules/hardware/openrazer.nix
index 5ba6abfdb3d7..6f61254a60c1 100644
--- a/nixos/modules/hardware/openrazer.nix
+++ b/nixos/modules/hardware/openrazer.nix
@@ -19,7 +19,7 @@ let
       [Startup]
       sync_effects_enabled = ${toPyBoolStr cfg.syncEffectsEnabled}
       devices_off_on_screensaver = ${toPyBoolStr cfg.devicesOffOnScreensaver}
-      battery_notifier = ${toPyBoolStr (cfg.mouseBatteryNotifier || cfg.batteryNotifier.enable)}
+      battery_notifier = ${toPyBoolStr cfg.batteryNotifier.enable}
       battery_notifier_freq = ${builtins.toString cfg.batteryNotifier.frequency}
       battery_notifier_percent = ${builtins.toString cfg.batteryNotifier.percentage}
 
@@ -80,14 +80,6 @@ in
         '';
       };
 
-      mouseBatteryNotifier = mkOption {
-        type = types.bool;
-        default = true;
-        description = ''
-          Mouse battery notifier.
-        '';
-      };
-
       batteryNotifier = mkOption {
         description = ''
           Settings for device battery notifications.
@@ -143,14 +135,11 @@ in
     };
   };
 
-  config = mkIf cfg.enable {
-    warnings = flatten [
-      (optional cfg.mouseBatteryNotifier ''
-        The option openrazer.mouseBatteryNotifier is deprecated.
-        Please use openrazer.batteryNotifier instead to enable and configure battery notifications.
-      '')
-    ];
+  imports = [
+    (mkRenamedOptionModule [ "hardware" "openrazer" "mouseBatteryNotifier" ] [ "hardware" "openrazer" "batteryNotifier" "enable" ])
+  ];
 
+  config = mkIf cfg.enable {
     boot.extraModulePackages = [ kernelPackages.openrazer ];
     boot.kernelModules = drivers;
 
diff --git a/nixos/modules/hardware/video/intel-gpu-tools.nix b/nixos/modules/hardware/video/intel-gpu-tools.nix
new file mode 100644
index 000000000000..b69fefcae118
--- /dev/null
+++ b/nixos/modules/hardware/video/intel-gpu-tools.nix
@@ -0,0 +1,25 @@
+{ config, lib, pkgs, ... }:
+
+let
+  cfg = config.hardware.intel-gpu-tools;
+in
+{
+  options = {
+    hardware.intel-gpu-tools = {
+      enable = lib.mkEnableOption "a setcap wrapper for intel-gpu-tools";
+    };
+  };
+
+  config = lib.mkIf cfg.enable {
+    security.wrappers.intel_gpu_top = {
+      owner = "root";
+      group = "root";
+      source = "${pkgs.intel-gpu-tools}/bin/intel_gpu_top";
+      capabilities = "cap_perfmon+ep";
+    };
+  };
+
+  meta = {
+    maintainers = with lib.maintainers; [ kira-bruneau ];
+  };
+}
diff --git a/nixos/modules/misc/version.nix b/nixos/modules/misc/version.nix
index d582e0c162de..29e9498018ec 100644
--- a/nixos/modules/misc/version.nix
+++ b/nixos/modules/misc/version.nix
@@ -135,7 +135,7 @@ in
       };
 
       version = lib.mkOption {
-        type = types.nullOr (types.strMatching "^[a-z0-9._-]+$");
+        type = types.nullOr (types.strMatching "^[a-z0-9._-~^]+$");
         default = null;
         description = ''
           Image version.
diff --git a/nixos/modules/module-list.nix b/nixos/modules/module-list.nix
index 111b5c129cb3..b14b83a8119a 100644
--- a/nixos/modules/module-list.nix
+++ b/nixos/modules/module-list.nix
@@ -45,6 +45,7 @@
   ./config/xdg/portals/lxqt.nix
   ./config/xdg/portals/wlr.nix
   ./config/xdg/sounds.nix
+  ./config/xdg/terminal-exec.nix
   ./config/zram.nix
   ./hardware/acpilight.nix
   ./hardware/all-firmware.nix
@@ -106,6 +107,7 @@
   ./hardware/video/bumblebee.nix
   ./hardware/video/capture/mwprocapture.nix
   ./hardware/video/displaylink.nix
+  ./hardware/video/intel-gpu-tools.nix
   ./hardware/video/nvidia.nix
   ./hardware/video/switcheroo-control.nix
   ./hardware/video/uvcvideo/default.nix
@@ -306,6 +308,7 @@
   ./programs/xwayland.nix
   ./programs/yabar.nix
   ./programs/yazi.nix
+  ./programs/ydotool.nix
   ./programs/yubikey-touch-detector.nix
   ./programs/zmap.nix
   ./programs/zsh/oh-my-zsh.nix
@@ -664,6 +667,7 @@
   ./services/matrix/maubot.nix
   ./services/matrix/mautrix-facebook.nix
   ./services/matrix/mautrix-meta.nix
+  ./services/matrix/mautrix-signal.nix
   ./services/matrix/mautrix-telegram.nix
   ./services/matrix/mautrix-whatsapp.nix
   ./services/matrix/mjolnir.nix
@@ -696,6 +700,7 @@
   ./services/misc/cpuminer-cryptonight.nix
   ./services/misc/db-rest.nix
   ./services/misc/devmon.nix
+  ./services/misc/devpi-server.nix
   ./services/misc/dictd.nix
   ./services/misc/disnix.nix
   ./services/misc/docker-registry.nix
@@ -773,6 +778,7 @@
   ./services/misc/polaris.nix
   ./services/misc/portunus.nix
   ./services/misc/preload.nix
+  ./services/misc/private-gpt.nix
   ./services/misc/prowlarr.nix
   ./services/misc/pufferpanel.nix
   ./services/misc/pykms.nix
@@ -1425,6 +1431,7 @@
   ./services/web-apps/windmill.nix
   ./services/web-apps/wordpress.nix
   ./services/web-apps/writefreely.nix
+  ./services/web-apps/your_spotify.nix
   ./services/web-apps/youtrack.nix
   ./services/web-apps/zabbix.nix
   ./services/web-apps/zitadel.nix
diff --git a/nixos/modules/profiles/perlless.nix b/nixos/modules/profiles/perlless.nix
index 90abd14f077e..010e4f8f2a28 100644
--- a/nixos/modules/profiles/perlless.nix
+++ b/nixos/modules/profiles/perlless.nix
@@ -26,6 +26,6 @@
 
   # Check that the system does not contain a Nix store path that contains the
   # string "perl".
-  system.forbiddenDependenciesRegex = "perl";
+  system.forbiddenDependenciesRegexes = ["perl"];
 
 }
diff --git a/nixos/modules/programs/_1password-gui.nix b/nixos/modules/programs/_1password-gui.nix
index b21e8783f660..04f36cf0237a 100644
--- a/nixos/modules/programs/_1password-gui.nix
+++ b/nixos/modules/programs/_1password-gui.nix
@@ -1,7 +1,5 @@
 { config, pkgs, lib, ... }:
 
-with lib;
-
 let
 
   cfg = config.programs._1password-gui;
@@ -9,25 +7,25 @@ let
 in
 {
   imports = [
-    (mkRemovedOptionModule [ "programs" "_1password-gui" "gid" ] ''
+    (lib.mkRemovedOptionModule [ "programs" "_1password-gui" "gid" ] ''
       A preallocated GID will be used instead.
     '')
   ];
 
   options = {
     programs._1password-gui = {
-      enable = mkEnableOption "the 1Password GUI application";
+      enable = lib.mkEnableOption "the 1Password GUI application";
 
-      polkitPolicyOwners = mkOption {
-        type = types.listOf types.str;
+      polkitPolicyOwners = lib.mkOption {
+        type = lib.types.listOf lib.types.str;
         default = [ ];
-        example = literalExpression ''["user1" "user2" "user3"]'';
+        example = lib.literalExpression ''["user1" "user2" "user3"]'';
         description = ''
           A list of users who should be able to integrate 1Password with polkit-based authentication mechanisms.
         '';
       };
 
-      package = mkPackageOption pkgs "1Password GUI" {
+      package = lib.mkPackageOption pkgs "1Password GUI" {
         default = [ "_1password-gui" ];
       };
     };
@@ -39,7 +37,7 @@ in
         polkitPolicyOwners = cfg.polkitPolicyOwners;
       };
     in
-    mkIf cfg.enable {
+    lib.mkIf cfg.enable {
       environment.systemPackages = [ package ];
       users.groups.onepassword.gid = config.ids.gids.onepassword;
 
diff --git a/nixos/modules/programs/_1password.nix b/nixos/modules/programs/_1password.nix
index b87e9b776e85..5dff199341b9 100644
--- a/nixos/modules/programs/_1password.nix
+++ b/nixos/modules/programs/_1password.nix
@@ -1,7 +1,5 @@
 { config, pkgs, lib, ... }:
 
-with lib;
-
 let
 
   cfg = config.programs._1password;
@@ -9,22 +7,22 @@ let
 in
 {
   imports = [
-    (mkRemovedOptionModule [ "programs" "_1password" "gid" ] ''
+    (lib.mkRemovedOptionModule [ "programs" "_1password" "gid" ] ''
       A preallocated GID will be used instead.
     '')
   ];
 
   options = {
     programs._1password = {
-      enable = mkEnableOption "the 1Password CLI tool";
+      enable = lib.mkEnableOption "the 1Password CLI tool";
 
-      package = mkPackageOption pkgs "1Password CLI" {
+      package = lib.mkPackageOption pkgs "1Password CLI" {
         default = [ "_1password" ];
       };
     };
   };
 
-  config = mkIf cfg.enable {
+  config = lib.mkIf cfg.enable {
     environment.systemPackages = [ cfg.package ];
     users.groups.onepassword-cli.gid = config.ids.gids.onepassword-cli;
 
diff --git a/nixos/modules/programs/adb.nix b/nixos/modules/programs/adb.nix
index d8c700bc36b6..62ab6ab4137a 100644
--- a/nixos/modules/programs/adb.nix
+++ b/nixos/modules/programs/adb.nix
@@ -1,16 +1,14 @@
 { config, lib, pkgs, ... }:
 
-with lib;
-
 {
-  meta.maintainers = [ maintainers.mic92 ];
+  meta.maintainers = [ lib.maintainers.mic92 ];
 
   ###### interface
   options = {
     programs.adb = {
-      enable = mkOption {
+      enable = lib.mkOption {
         default = false;
-        type = types.bool;
+        type = lib.types.bool;
         description = ''
           Whether to configure system to use Android Debug Bridge (adb).
           To grant access to a user, it must be part of adbusers group:
@@ -21,7 +19,7 @@ with lib;
   };
 
   ###### implementation
-  config = mkIf config.programs.adb.enable {
+  config = lib.mkIf config.programs.adb.enable {
     services.udev.packages = [ pkgs.android-udev-rules ];
     environment.systemPackages = [ pkgs.android-tools ];
     users.groups.adbusers = {};
diff --git a/nixos/modules/programs/alvr.nix b/nixos/modules/programs/alvr.nix
index e5de06f1157a..da66200cf075 100644
--- a/nixos/modules/programs/alvr.nix
+++ b/nixos/modules/programs/alvr.nix
@@ -1,19 +1,17 @@
 { config, pkgs, lib, ... }:
 
-with lib;
-
 let
   cfg = config.programs.alvr;
 in
 {
   options = {
     programs.alvr = {
-      enable = mkEnableOption "ALVR, the VR desktop streamer";
+      enable = lib.mkEnableOption "ALVR, the VR desktop streamer";
 
-      package = mkPackageOption pkgs "alvr" { };
+      package = lib.mkPackageOption pkgs "alvr" { };
 
-      openFirewall = mkOption {
-        type = types.bool;
+      openFirewall = lib.mkOption {
+        type = lib.types.bool;
         default = false;
         description = ''
           Whether to open the default ports in the firewall for the ALVR server.
@@ -22,14 +20,14 @@ in
     };
   };
 
-  config = mkIf cfg.enable {
+  config = lib.mkIf cfg.enable {
     environment.systemPackages = [ cfg.package ];
 
-    networking.firewall = mkIf cfg.openFirewall {
+    networking.firewall = lib.mkIf cfg.openFirewall {
       allowedTCPPorts = [ 9943 9944 ];
       allowedUDPPorts = [ 9943 9944 ];
     };
   };
 
-  meta.maintainers = with maintainers; [ passivelemon ];
+  meta.maintainers = with lib.maintainers; [ passivelemon ];
 }
diff --git a/nixos/modules/programs/appgate-sdp.nix b/nixos/modules/programs/appgate-sdp.nix
index 6d61c87eeb61..f4d4140571a6 100644
--- a/nixos/modules/programs/appgate-sdp.nix
+++ b/nixos/modules/programs/appgate-sdp.nix
@@ -1,15 +1,13 @@
 { config, pkgs, lib, ... }:
 
-with lib;
-
 {
   options = {
     programs.appgate-sdp = {
-      enable = mkEnableOption "the AppGate SDP VPN client";
+      enable = lib.mkEnableOption "the AppGate SDP VPN client";
     };
   };
 
-  config = mkIf config.programs.appgate-sdp.enable {
+  config = lib.mkIf config.programs.appgate-sdp.enable {
     boot.kernelModules = [ "tun" ];
     environment.systemPackages = [ pkgs.appgate-sdp ];
     services.dbus.packages = [ pkgs.appgate-sdp ];
diff --git a/nixos/modules/programs/atop.nix b/nixos/modules/programs/atop.nix
index 618b64114359..3738f926ca3d 100644
--- a/nixos/modules/programs/atop.nix
+++ b/nixos/modules/programs/atop.nix
@@ -2,8 +2,6 @@
 
 { config, lib, pkgs, ... }:
 
-with lib;
-
 let cfg = config.programs.atop;
 
 in
@@ -14,31 +12,31 @@ in
 
     programs.atop = rec {
 
-      enable = mkEnableOption "Atop, a tool for monitoring system resources";
+      enable = lib.mkEnableOption "Atop, a tool for monitoring system resources";
 
-      package = mkPackageOption pkgs "atop" { };
+      package = lib.mkPackageOption pkgs "atop" { };
 
       netatop = {
-        enable = mkOption {
-          type = types.bool;
+        enable = lib.mkOption {
+          type = lib.types.bool;
           default = false;
           description = ''
             Whether to install and enable the netatop kernel module.
             Note: this sets the kernel taint flag "O" for loading out-of-tree modules.
           '';
         };
-        package = mkOption {
-          type = types.package;
+        package = lib.mkOption {
+          type = lib.types.package;
           default = config.boot.kernelPackages.netatop;
-          defaultText = literalExpression "config.boot.kernelPackages.netatop";
+          defaultText = lib.literalExpression "config.boot.kernelPackages.netatop";
           description = ''
             Which package to use for netatop.
           '';
         };
       };
 
-      atopgpu.enable = mkOption {
-        type = types.bool;
+      atopgpu.enable = lib.mkOption {
+        type = lib.types.bool;
         default = false;
         description = ''
           Whether to install and enable the atopgpud daemon to get information about
@@ -46,8 +44,8 @@ in
         '';
       };
 
-      setuidWrapper.enable = mkOption {
-        type = types.bool;
+      setuidWrapper.enable = lib.mkOption {
+        type = lib.types.bool;
         default = false;
         description = ''
           Whether to install a setuid wrapper for Atop. This is required to use some of
@@ -56,24 +54,24 @@ in
         '';
       };
 
-      atopService.enable = mkOption {
-        type = types.bool;
+      atopService.enable = lib.mkOption {
+        type = lib.types.bool;
         default = true;
         description = ''
           Whether to enable the atop service responsible for storing statistics for
           long-term analysis.
         '';
       };
-      atopRotateTimer.enable = mkOption {
-        type = types.bool;
+      atopRotateTimer.enable = lib.mkOption {
+        type = lib.types.bool;
         default = true;
         description = ''
           Whether to enable the atop-rotate timer, which restarts the atop service
           daily to make sure the data files are rotate.
         '';
       };
-      atopacctService.enable = mkOption {
-        type = types.bool;
+      atopacctService.enable = lib.mkOption {
+        type = lib.types.bool;
         default = true;
         description = ''
           Whether to enable the atopacct service which manages process accounting.
@@ -81,8 +79,8 @@ in
           two refresh intervals.
         '';
       };
-      settings = mkOption {
-        type = types.attrs;
+      settings = lib.mkOption {
+        type = lib.types.attrs;
         default = { };
         example = {
           flags = "a1f";
@@ -95,7 +93,7 @@ in
     };
   };
 
-  config = mkIf cfg.enable (
+  config = lib.mkIf cfg.enable (
     let
       atop =
         if cfg.atopgpu.enable then
@@ -104,11 +102,11 @@ in
           cfg.package;
     in
     {
-      environment.etc = mkIf (cfg.settings != { }) {
-        atoprc.text = concatStrings
-          (mapAttrsToList
+      environment.etc = lib.mkIf (cfg.settings != { }) {
+        atoprc.text = lib.concatStrings
+          (lib.mapAttrsToList
             (n: v: ''
-              ${n} ${toString v}
+              ${n} ${builtins.toString v}
             '')
             cfg.settings);
       };
diff --git a/nixos/modules/programs/ausweisapp.nix b/nixos/modules/programs/ausweisapp.nix
index 0359e58c554c..ebd6a3e13bf6 100644
--- a/nixos/modules/programs/ausweisapp.nix
+++ b/nixos/modules/programs/ausweisapp.nix
@@ -1,15 +1,13 @@
 { config, lib, pkgs, ... }:
 
-with lib;
-
 let
   cfg  = config.programs.ausweisapp;
 in
 {
   options.programs.ausweisapp = {
-    enable = mkEnableOption "AusweisApp";
+    enable = lib.mkEnableOption "AusweisApp";
 
-    openFirewall = mkOption {
+    openFirewall = lib.mkOption {
       description = ''
         Whether to open the required firewall ports for the Smartphone as Card Reader (SaC) functionality of AusweisApp.
       '';
@@ -18,7 +16,7 @@ in
     };
   };
 
-  config = mkIf cfg.enable {
+  config = lib.mkIf cfg.enable {
     environment.systemPackages = with pkgs; [ ausweisapp ];
     networking.firewall.allowedUDPPorts = lib.optionals cfg.openFirewall [ 24727 ];
   };
diff --git a/nixos/modules/programs/autojump.nix b/nixos/modules/programs/autojump.nix
index ecfc2f658079..5011d7e14237 100644
--- a/nixos/modules/programs/autojump.nix
+++ b/nixos/modules/programs/autojump.nix
@@ -1,7 +1,5 @@
 { config, lib, pkgs, ... }:
 
-with lib;
-
 let
   cfg = config.programs.autojump;
   prg = config.programs;
@@ -10,8 +8,8 @@ in
   options = {
     programs.autojump = {
 
-      enable = mkOption {
-        type = types.bool;
+      enable = lib.mkOption {
+        type = lib.types.bool;
         default = false;
         description = ''
           Whether to enable autojump.
@@ -22,12 +20,12 @@ in
 
   ###### implementation
 
-  config = mkIf cfg.enable {
+  config = lib.mkIf cfg.enable {
     environment.pathsToLink = [ "/share/autojump" ];
     environment.systemPackages = [ pkgs.autojump ];
 
     programs.bash.interactiveShellInit = "source ${pkgs.autojump}/share/autojump/autojump.bash";
-    programs.zsh.interactiveShellInit = mkIf prg.zsh.enable "source ${pkgs.autojump}/share/autojump/autojump.zsh";
-    programs.fish.interactiveShellInit = mkIf prg.fish.enable "source ${pkgs.autojump}/share/autojump/autojump.fish";
+    programs.zsh.interactiveShellInit = lib.mkIf prg.zsh.enable "source ${pkgs.autojump}/share/autojump/autojump.zsh";
+    programs.fish.interactiveShellInit = lib.mkIf prg.fish.enable "source ${pkgs.autojump}/share/autojump/autojump.fish";
   };
 }
diff --git a/nixos/modules/programs/bandwhich.nix b/nixos/modules/programs/bandwhich.nix
index 2c78584f2d24..e2c55ca5bea4 100644
--- a/nixos/modules/programs/bandwhich.nix
+++ b/nixos/modules/programs/bandwhich.nix
@@ -1,15 +1,13 @@
 { config, lib, pkgs, ... }:
 
-with lib;
-
 let cfg = config.programs.bandwhich;
 in {
-  meta.maintainers = with maintainers; [ Br1ght0ne ];
+  meta.maintainers = with lib.maintainers; [ Br1ght0ne ];
 
   options = {
     programs.bandwhich = {
-      enable = mkOption {
-        type = types.bool;
+      enable = lib.mkOption {
+        type = lib.types.bool;
         default = false;
         description = ''
           Whether to add bandwhich to the global environment and configure a
@@ -19,7 +17,7 @@ in {
     };
   };
 
-  config = mkIf cfg.enable {
+  config = lib.mkIf cfg.enable {
     environment.systemPackages = with pkgs; [ bandwhich ];
     security.wrappers.bandwhich = {
       owner = "root";
diff --git a/nixos/modules/programs/bash-my-aws.nix b/nixos/modules/programs/bash-my-aws.nix
index 15e429a75497..85618ad98f08 100644
--- a/nixos/modules/programs/bash-my-aws.nix
+++ b/nixos/modules/programs/bash-my-aws.nix
@@ -1,7 +1,5 @@
 { config, pkgs, lib, ... }:
 
-with lib;
-
 let
   prg = config.programs;
   cfg = prg.bash-my-aws;
@@ -13,11 +11,11 @@ in
   {
     options = {
       programs.bash-my-aws = {
-        enable = mkEnableOption "bash-my-aws";
+        enable = lib.mkEnableOption "bash-my-aws";
       };
     };
 
-    config = mkIf cfg.enable {
+    config = lib.mkIf cfg.enable {
       environment.systemPackages = with pkgs; [ bash-my-aws ];
 
       programs.bash.interactiveShellInit = initScript;
diff --git a/nixos/modules/programs/bash/bash-completion.nix b/nixos/modules/programs/bash/bash-completion.nix
index b8e5b1bfa336..c973d36fdfbf 100644
--- a/nixos/modules/programs/bash/bash-completion.nix
+++ b/nixos/modules/programs/bash/bash-completion.nix
@@ -1,18 +1,16 @@
 { config, lib, pkgs, ... }:
 
-with lib;
-
 let
   enable = config.programs.bash.enableCompletion;
 in
 {
   options = {
-    programs.bash.enableCompletion = mkEnableOption "Bash completion for all interactive bash shells" // {
+    programs.bash.enableCompletion = lib.mkEnableOption "Bash completion for all interactive bash shells" // {
       default = true;
     };
   };
 
-  config = mkIf enable {
+  config = lib.mkIf enable {
     programs.bash.promptPluginInit = ''
       # Check whether we're running a version of Bash that has support for
       # programmable completion. If we do, enable all modules installed in
diff --git a/nixos/modules/programs/bash/bash.nix b/nixos/modules/programs/bash/bash.nix
index 21ef8338d8dd..0f8c40da801b 100644
--- a/nixos/modules/programs/bash/bash.nix
+++ b/nixos/modules/programs/bash/bash.nix
@@ -3,24 +3,22 @@
 
 { config, lib, pkgs, ... }:
 
-with lib;
-
 let
 
   cfge = config.environment;
 
   cfg = config.programs.bash;
 
-  bashAliases = concatStringsSep "\n" (
-    mapAttrsFlatten (k: v: "alias -- ${k}=${escapeShellArg v}")
-      (filterAttrs (k: v: v != null) cfg.shellAliases)
+  bashAliases = builtins.concatStringsSep "\n" (
+    lib.mapAttrsFlatten (k: v: "alias -- ${k}=${lib.escapeShellArg v}")
+      (lib.filterAttrs (k: v: v != null) cfg.shellAliases)
   );
 
 in
 
 {
   imports = [
-    (mkRemovedOptionModule [ "programs" "bash" "enable" ] "")
+    (lib.mkRemovedOptionModule [ "programs" "bash" "enable" ] "")
   ];
 
   options = {
@@ -28,7 +26,7 @@ in
     programs.bash = {
 
       /*
-      enable = mkOption {
+      enable = lib.mkOption {
         default = true;
         description = ''
           Whenever to configure Bash as an interactive shell.
@@ -38,44 +36,44 @@ in
           set this variable if you have another shell configured
           with NixOS.
         '';
-        type = types.bool;
+        type = lib.types.bool;
       };
       */
 
-      shellAliases = mkOption {
+      shellAliases = lib.mkOption {
         default = {};
         description = ''
           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));
+        type = with lib.types; attrsOf (nullOr (either str path));
       };
 
-      shellInit = mkOption {
+      shellInit = lib.mkOption {
         default = "";
         description = ''
           Shell script code called during bash shell initialisation.
         '';
-        type = types.lines;
+        type = lib.types.lines;
       };
 
-      loginShellInit = mkOption {
+      loginShellInit = lib.mkOption {
         default = "";
         description = ''
           Shell script code called during login bash shell initialisation.
         '';
-        type = types.lines;
+        type = lib.types.lines;
       };
 
-      interactiveShellInit = mkOption {
+      interactiveShellInit = lib.mkOption {
         default = "";
         description = ''
           Shell script code called during interactive bash shell initialisation.
         '';
-        type = types.lines;
+        type = lib.types.lines;
       };
 
-      promptInit = mkOption {
+      promptInit = lib.mkOption {
         default = ''
           # Provide a nice prompt if the terminal supports it.
           if [ "$TERM" != "dumb" ] || [ -n "$INSIDE_EMACS" ]; then
@@ -95,15 +93,15 @@ in
         description = ''
           Shell script code used to initialise the bash prompt.
         '';
-        type = types.lines;
+        type = lib.types.lines;
       };
 
-      promptPluginInit = mkOption {
+      promptPluginInit = lib.mkOption {
         default = "";
         description = ''
           Shell script code used to initialise bash prompt plugins.
         '';
-        type = types.lines;
+        type = lib.types.lines;
         internal = true;
       };
 
@@ -111,11 +109,11 @@ in
 
   };
 
-  config = /* mkIf cfg.enable */ {
+  config = /* lib.mkIf cfg.enable */ {
 
     programs.bash = {
 
-      shellAliases = mapAttrs (name: mkDefault) cfge.shellAliases;
+      shellAliases = builtins.mapAttrs (name: lib.mkDefault) cfge.shellAliases;
 
       shellInit = ''
         if [ -z "$__NIXOS_SET_ENVIRONMENT_DONE" ]; then
@@ -196,11 +194,11 @@ in
 
     # Configuration for readline in bash. We use "option default"
     # priority to allow user override using both .text and .source.
-    environment.etc.inputrc.source = mkOptionDefault ./inputrc;
+    environment.etc.inputrc.source = lib.mkOptionDefault ./inputrc;
 
-    users.defaultUserShell = mkDefault pkgs.bashInteractive;
+    users.defaultUserShell = lib.mkDefault pkgs.bashInteractive;
 
-    environment.pathsToLink = optionals cfg.enableCompletion [
+    environment.pathsToLink = lib.optionals cfg.enableCompletion [
       "/etc/bash_completion.d"
       "/share/bash-completion"
     ];
diff --git a/nixos/modules/programs/bash/blesh.nix b/nixos/modules/programs/bash/blesh.nix
index ea342b0ce3ee..b5ca83a883bb 100644
--- a/nixos/modules/programs/bash/blesh.nix
+++ b/nixos/modules/programs/bash/blesh.nix
@@ -1,16 +1,15 @@
 { lib, config, pkgs, ... }:
-with lib;
 let
   cfg = config.programs.bash.blesh;
 in {
   options = {
-    programs.bash.blesh.enable = mkEnableOption "blesh, a full-featured line editor written in pure Bash";
+    programs.bash.blesh.enable = lib.mkEnableOption "blesh, a full-featured line editor written in pure Bash";
   };
 
-  config = mkIf cfg.enable {
-    programs.bash.interactiveShellInit = mkBefore ''
+  config = lib.mkIf cfg.enable {
+    programs.bash.interactiveShellInit = lib.mkBefore ''
       source ${pkgs.blesh}/share/blesh/ble.sh
     '';
   };
-  meta.maintainers = with maintainers; [ laalsaas ];
+  meta.maintainers = with lib.maintainers; [ laalsaas ];
 }
diff --git a/nixos/modules/programs/bash/ls-colors.nix b/nixos/modules/programs/bash/ls-colors.nix
index 254ee14c477d..3ee00e93d4da 100644
--- a/nixos/modules/programs/bash/ls-colors.nix
+++ b/nixos/modules/programs/bash/ls-colors.nix
@@ -1,18 +1,16 @@
 { config, lib, pkgs, ... }:
 
-with lib;
-
 let
   enable = config.programs.bash.enableLsColors;
 in
 {
   options = {
-    programs.bash.enableLsColors = mkEnableOption "extra colors in directory listings" // {
+    programs.bash.enableLsColors = lib.mkEnableOption "extra colors in directory listings" // {
       default = true;
     };
   };
 
-  config = mkIf enable {
+  config = lib.mkIf enable {
     programs.bash.promptPluginInit = ''
       eval "$(${pkgs.coreutils}/bin/dircolors -b)"
     '';
diff --git a/nixos/modules/programs/bash/undistract-me.nix b/nixos/modules/programs/bash/undistract-me.nix
index 0e6465e048a1..af4f3a737dab 100644
--- a/nixos/modules/programs/bash/undistract-me.nix
+++ b/nixos/modules/programs/bash/undistract-me.nix
@@ -1,36 +1,34 @@
 { config, lib, pkgs, ... }:
 
-with lib;
-
 let
   cfg = config.programs.bash.undistractMe;
 in
 {
   options = {
     programs.bash.undistractMe = {
-      enable = mkEnableOption "notifications when long-running terminal commands complete";
+      enable = lib.mkEnableOption "notifications when long-running terminal commands complete";
 
-      playSound = mkEnableOption "notification sounds when long-running terminal commands complete";
+      playSound = lib.mkEnableOption "notification sounds when long-running terminal commands complete";
 
-      timeout = mkOption {
+      timeout = lib.mkOption {
         default = 10;
         description = ''
           Number of seconds it would take for a command to be considered long-running.
         '';
-        type = types.int;
+        type = lib.types.int;
       };
     };
   };
 
-  config = mkIf cfg.enable {
+  config = lib.mkIf cfg.enable {
     programs.bash.promptPluginInit = ''
-      export LONG_RUNNING_COMMAND_TIMEOUT=${toString cfg.timeout}
+      export LONG_RUNNING_COMMAND_TIMEOUT=${builtins.toString cfg.timeout}
       export UDM_PLAY_SOUND=${if cfg.playSound then "1" else "0"}
       . "${pkgs.undistract-me}/etc/profile.d/undistract-me.sh"
     '';
   };
 
   meta = {
-    maintainers = with maintainers; [ kira-bruneau ];
+    maintainers = with lib.maintainers; [ kira-bruneau ];
   };
 }
diff --git a/nixos/modules/programs/browserpass.nix b/nixos/modules/programs/browserpass.nix
index 2894e237e3d4..ab6be266ea8d 100644
--- a/nixos/modules/programs/browserpass.nix
+++ b/nixos/modules/programs/browserpass.nix
@@ -1,12 +1,10 @@
 { config, lib, pkgs, ... }:
 
-with lib;
-
 {
 
-  options.programs.browserpass.enable = mkEnableOption "Browserpass native messaging host";
+  options.programs.browserpass.enable = lib.mkEnableOption "Browserpass native messaging host";
 
-  config = mkIf config.programs.browserpass.enable {
+  config = lib.mkIf config.programs.browserpass.enable {
     environment.etc = let
       appId = "com.github.browserpass.native.json";
       source = part: "${pkgs.browserpass}/lib/browserpass/${part}/${appId}";
diff --git a/nixos/modules/programs/calls.nix b/nixos/modules/programs/calls.nix
index 0cf05f8a2ea0..36a4c51ddf43 100644
--- a/nixos/modules/programs/calls.nix
+++ b/nixos/modules/programs/calls.nix
@@ -1,19 +1,17 @@
 { config, lib, pkgs, ... }:
 
-with lib;
-
 let
   cfg = config.programs.calls;
 in {
   options = {
     programs.calls = {
-      enable = mkEnableOption ''
+      enable = lib.mkEnableOption ''
         GNOME calls: a phone dialer and call handler
       '';
     };
   };
 
-  config = mkIf cfg.enable {
+  config = lib.mkIf cfg.enable {
     programs.dconf.enable = true;
 
     environment.systemPackages = [
diff --git a/nixos/modules/programs/cdemu.nix b/nixos/modules/programs/cdemu.nix
index 3ee8b2d8fcd6..1aac28af1d2c 100644
--- a/nixos/modules/programs/cdemu.nix
+++ b/nixos/modules/programs/cdemu.nix
@@ -1,36 +1,34 @@
 { config, lib, pkgs, ... }:
 
-with lib;
-
 let cfg = config.programs.cdemu;
 in {
 
   options = {
     programs.cdemu = {
-      enable = mkOption {
-        type = types.bool;
+      enable = lib.mkOption {
+        type = lib.types.bool;
         default = false;
         description = ''
           {command}`cdemu` for members of
           {option}`programs.cdemu.group`.
         '';
       };
-      group = mkOption {
-        type = types.str;
+      group = lib.mkOption {
+        type = lib.types.str;
         default = "cdrom";
         description = ''
           Group that users must be in to use {command}`cdemu`.
         '';
       };
-      gui = mkOption {
-        type = types.bool;
+      gui = lib.mkOption {
+        type = lib.types.bool;
         default = true;
         description = ''
           Whether to install the {command}`cdemu` GUI (gCDEmu).
         '';
       };
-      image-analyzer = mkOption {
-        type = types.bool;
+      image-analyzer = lib.mkOption {
+        type = lib.types.bool;
         default = true;
         description = ''
           Whether to install the image analyzer.
@@ -39,7 +37,7 @@ in {
     };
   };
 
-  config = mkIf cfg.enable {
+  config = lib.mkIf cfg.enable {
 
     boot = {
       extraModulePackages = [ config.boot.kernelPackages.vhba ];
@@ -68,8 +66,8 @@ in {
 
     environment.systemPackages =
       [ pkgs.cdemu-daemon pkgs.cdemu-client ]
-      ++ optional cfg.gui pkgs.gcdemu
-      ++ optional cfg.image-analyzer pkgs.image-analyzer;
+      ++ lib.optional cfg.gui pkgs.gcdemu
+      ++ lib.optional cfg.image-analyzer pkgs.image-analyzer;
   };
 
 }
diff --git a/nixos/modules/programs/cfs-zen-tweaks.nix b/nixos/modules/programs/cfs-zen-tweaks.nix
index 28d1ef5992d7..bc1626403935 100644
--- a/nixos/modules/programs/cfs-zen-tweaks.nix
+++ b/nixos/modules/programs/cfs-zen-tweaks.nix
@@ -2,8 +2,6 @@
 
 { config, pkgs, lib, ... }:
 
-with lib;
-
 let
 
   cfg = config.programs.cfs-zen-tweaks;
@@ -13,14 +11,14 @@ in
 {
 
   meta = {
-    maintainers = with maintainers; [ mkg20001 ];
+    maintainers = with lib.maintainers; [ mkg20001 ];
   };
 
   options = {
-    programs.cfs-zen-tweaks.enable = mkEnableOption "CFS Zen Tweaks";
+    programs.cfs-zen-tweaks.enable = lib.mkEnableOption "CFS Zen Tweaks";
   };
 
-  config = mkIf cfg.enable {
+  config = lib.mkIf cfg.enable {
     systemd.packages = [ pkgs.cfs-zen-tweaks ];
 
     systemd.services.set-cfs-tweaks.wantedBy = [
diff --git a/nixos/modules/programs/chromium.nix b/nixos/modules/programs/chromium.nix
index fa5abe957a90..4d248dbe0945 100644
--- a/nixos/modules/programs/chromium.nix
+++ b/nixos/modules/programs/chromium.nix
@@ -1,11 +1,9 @@
 { config, lib, pkgs, ... }:
 
-with lib;
-
 let
   cfg = config.programs.chromium;
 
-  defaultProfile = filterAttrs (k: v: v != null) {
+  defaultProfile = lib.filterAttrs (k: v: v != null) {
     HomepageLocation = cfg.homepageLocation;
     DefaultSearchProviderEnabled = cfg.defaultSearchProviderEnabled;
     DefaultSearchProviderSearchURL = cfg.defaultSearchProviderSearchURL;
@@ -19,14 +17,14 @@ in
 
   options = {
     programs.chromium = {
-      enable = mkEnableOption "{command}`chromium` policies";
+      enable = lib.mkEnableOption "{command}`chromium` policies";
 
-      enablePlasmaBrowserIntegration = mkEnableOption "Native Messaging Host for Plasma Browser Integration";
+      enablePlasmaBrowserIntegration = lib.mkEnableOption "Native Messaging Host for Plasma Browser Integration";
 
-      plasmaBrowserIntegrationPackage = mkPackageOption pkgs [ "plasma5Packages" "plasma-browser-integration" ] { };
+      plasmaBrowserIntegrationPackage = lib.mkPackageOption pkgs [ "plasma5Packages" "plasma-browser-integration" ] { };
 
-      extensions = mkOption {
-        type = with types; nullOr (listOf str);
+      extensions = lib.mkOption {
+        type = with lib.types; nullOr (listOf str);
         description = ''
           List of chromium extensions to install.
           For list of plugins ids see id in url of extensions on
@@ -38,7 +36,7 @@ in
           for additional details.
         '';
         default = null;
-        example = literalExpression ''
+        example = lib.literalExpression ''
           [
             "chlffgpmiacpedhhbkiomidkjlcfhogd" # pushbullet
             "mbniclmhobmnbdlbpiphghaielnnpgdp" # lightshot
@@ -48,36 +46,36 @@ in
         '';
       };
 
-      homepageLocation = mkOption {
-        type = types.nullOr types.str;
+      homepageLocation = lib.mkOption {
+        type = lib.types.nullOr lib.types.str;
         description = "Chromium default homepage";
         default = null;
         example = "https://nixos.org";
       };
 
-      defaultSearchProviderEnabled = mkOption {
-        type = types.nullOr types.bool;
+      defaultSearchProviderEnabled = lib.mkOption {
+        type = lib.types.nullOr lib.types.bool;
         description = "Enable the default search provider.";
         default = null;
         example = true;
       };
 
-      defaultSearchProviderSearchURL = mkOption {
-        type = types.nullOr types.str;
+      defaultSearchProviderSearchURL = lib.mkOption {
+        type = lib.types.nullOr lib.types.str;
         description = "Chromium default search provider url.";
         default = null;
         example = "https://encrypted.google.com/search?q={searchTerms}&{google:RLZ}{google:originalQueryForSuggestion}{google:assistedQueryStats}{google:searchFieldtrialParameter}{google:searchClient}{google:sourceId}{google:instantExtendedEnabledParameter}ie={inputEncoding}";
       };
 
-      defaultSearchProviderSuggestURL = mkOption {
-        type = types.nullOr types.str;
+      defaultSearchProviderSuggestURL = lib.mkOption {
+        type = lib.types.nullOr lib.types.str;
         description = "Chromium default search provider url for suggestions.";
         default = null;
         example = "https://encrypted.google.com/complete/search?output=chrome&q={searchTerms}";
       };
 
-      extraOpts = mkOption {
-        type = types.attrs;
+      extraOpts = lib.mkOption {
+        type = lib.types.attrs;
         description = ''
           Extra chromium policy options. A list of available policies
           can be found in the Chrome Enterprise documentation:
@@ -85,7 +83,7 @@ in
           Make sure the selected policy is supported on Linux and your browser version.
         '';
         default = {};
-        example = literalExpression ''
+        example = lib.literalExpression ''
           {
             "BrowserSignin" = 0;
             "SyncDisabled" = true;
@@ -99,8 +97,8 @@ in
         '';
       };
 
-      initialPrefs = mkOption {
-        type = types.attrs;
+      initialPrefs = lib.mkOption {
+        type = lib.types.attrs;
         description = ''
           Initial preferences are used to configure the browser for the first run.
           Unlike {option}`programs.chromium.extraOpts`, initialPrefs can be changed by users in the browser settings.
@@ -108,7 +106,7 @@ in
           <https://www.chromium.org/administrators/configuring-other-preferences/>
         '';
         default = {};
-        example = literalExpression ''
+        example = lib.literalExpression ''
           {
             "first_run_tabs" = [
               "https://nixos.org/"
diff --git a/nixos/modules/programs/cnping.nix b/nixos/modules/programs/cnping.nix
index 77cbf4d82086..f4b5aa845b5f 100644
--- a/nixos/modules/programs/cnping.nix
+++ b/nixos/modules/programs/cnping.nix
@@ -1,18 +1,16 @@
 { config, lib, pkgs, ... }:
 
-with lib;
-
 let
   cfg = config.programs.cnping;
 in
 {
   options = {
     programs.cnping = {
-      enable = mkEnableOption "a setcap wrapper for cnping";
+      enable = lib.mkEnableOption "a setcap wrapper for cnping";
     };
   };
 
-  config = mkIf cfg.enable {
+  config = lib.mkIf cfg.enable {
     security.wrappers.cnping = {
       source = "${pkgs.cnping}/bin/cnping";
       capabilities = "cap_net_raw+ep";
diff --git a/nixos/modules/programs/command-not-found/command-not-found.nix b/nixos/modules/programs/command-not-found/command-not-found.nix
index 4d2a89b51584..a223e811728d 100644
--- a/nixos/modules/programs/command-not-found/command-not-found.nix
+++ b/nixos/modules/programs/command-not-found/command-not-found.nix
@@ -5,8 +5,6 @@
 
 { config, lib, pkgs, ... }:
 
-with lib;
-
 let
   cfg = config.programs.command-not-found;
   commandNotFound = pkgs.substituteAll {
@@ -23,8 +21,8 @@ in
 {
   options.programs.command-not-found = {
 
-    enable = mkOption {
-      type = types.bool;
+    enable = lib.mkOption {
+      type = lib.types.bool;
       default = true;
       description = ''
         Whether interactive shells should show which Nix package (if
@@ -32,7 +30,7 @@ in
       '';
     };
 
-    dbPath = mkOption {
+    dbPath = lib.mkOption {
       default = "/nix/var/nix/profiles/per-user/root/channels/nixos/programs.sqlite" ;
       description = ''
         Absolute path to programs.sqlite.
@@ -40,11 +38,11 @@ in
         By default this file will be provided by your channel
         (nixexprs.tar.xz).
       '';
-      type = types.path;
+      type = lib.types.path;
     };
   };
 
-  config = mkIf cfg.enable {
+  config = lib.mkIf cfg.enable {
     programs.bash.interactiveShellInit =
       ''
         # This function is called whenever a command is not found.
diff --git a/nixos/modules/programs/criu.nix b/nixos/modules/programs/criu.nix
index 9414d0b27f0d..492a158923cb 100644
--- a/nixos/modules/programs/criu.nix
+++ b/nixos/modules/programs/criu.nix
@@ -1,14 +1,12 @@
 { config, lib, pkgs, ... }:
 
-with lib;
-
 let cfg = config.programs.criu;
 in {
 
   options = {
     programs.criu = {
-      enable = mkOption {
-        type = types.bool;
+      enable = lib.mkOption {
+        type = lib.types.bool;
         default = false;
         description = ''
           Install {command}`criu` along with necessary kernel options.
@@ -16,7 +14,7 @@ in {
       };
     };
   };
-  config = mkIf cfg.enable {
+  config = lib.mkIf cfg.enable {
     system.requiredKernelConfig = with config.lib.kernelConfig; [
       (isYes "CHECKPOINT_RESTORE")
     ];
diff --git a/nixos/modules/programs/digitalbitbox/default.nix b/nixos/modules/programs/digitalbitbox/default.nix
index 10b5a88171fc..06d33966b4a0 100644
--- a/nixos/modules/programs/digitalbitbox/default.nix
+++ b/nixos/modules/programs/digitalbitbox/default.nix
@@ -1,29 +1,27 @@
 { config, lib, pkgs, ... }:
 
-with lib;
-
 let
   cfg = config.programs.digitalbitbox;
 in
 
 {
   options.programs.digitalbitbox = {
-    enable = mkOption {
-      type = types.bool;
+    enable = lib.mkOption {
+      type = lib.types.bool;
       default = false;
       description = ''
         Installs the Digital Bitbox application and enables the complementary hardware module.
       '';
     };
 
-    package = mkPackageOption pkgs "digitalbitbox" {
+    package = lib.mkPackageOption pkgs "digitalbitbox" {
       extraDescription = ''
         This can be used to install a package with udev rules that differ from the defaults.
       '';
     };
   };
 
-  config = mkIf cfg.enable {
+  config = lib.mkIf cfg.enable {
     environment.systemPackages = [ cfg.package ];
     hardware.digitalbitbox = {
       enable = true;
diff --git a/nixos/modules/programs/dmrconfig.nix b/nixos/modules/programs/dmrconfig.nix
index 15338681e642..0078ca19f41a 100644
--- a/nixos/modules/programs/dmrconfig.nix
+++ b/nixos/modules/programs/dmrconfig.nix
@@ -1,19 +1,17 @@
 { config, lib, pkgs, ... }:
 
-with lib;
-
 let
   cfg = config.programs.dmrconfig;
 
 in {
-  meta.maintainers = with maintainers; [ ];
+  meta.maintainers = with lib.maintainers; [ ];
 
   ###### interface
   options = {
     programs.dmrconfig = {
-      enable = mkOption {
+      enable = lib.mkOption {
         default = false;
-        type = types.bool;
+        type = lib.types.bool;
         description = ''
           Whether to configure system to enable use of dmrconfig. This
           enables the required udev rules and installs the program.
@@ -21,12 +19,12 @@ in {
         relatedPackages = [ "dmrconfig" ];
       };
 
-      package = mkPackageOption pkgs "dmrconfig" { };
+      package = lib.mkPackageOption pkgs "dmrconfig" { };
     };
   };
 
   ###### implementation
-  config = mkIf cfg.enable {
+  config = lib.mkIf cfg.enable {
     environment.systemPackages = [ cfg.package ];
     services.udev.packages = [ cfg.package ];
   };
diff --git a/nixos/modules/programs/droidcam.nix b/nixos/modules/programs/droidcam.nix
index 9843a1f5be25..eef3997e6b80 100644
--- a/nixos/modules/programs/droidcam.nix
+++ b/nixos/modules/programs/droidcam.nix
@@ -1,10 +1,8 @@
 { lib, pkgs, config, ... }:
 
-with lib;
-
 {
   options.programs.droidcam = {
-    enable = mkEnableOption "DroidCam client";
+    enable = lib.mkEnableOption "DroidCam client";
   };
 
   config = lib.mkIf config.programs.droidcam.enable {
diff --git a/nixos/modules/programs/dublin-traceroute.nix b/nixos/modules/programs/dublin-traceroute.nix
index 6ff8a5bdefc3..de9446ad7377 100644
--- a/nixos/modules/programs/dublin-traceroute.nix
+++ b/nixos/modules/programs/dublin-traceroute.nix
@@ -1,7 +1,5 @@
 { config, lib, pkgs, ... }:
 
-with lib;
-
 let
   cfg = config.programs.dublin-traceroute;
 
@@ -10,22 +8,22 @@ in {
 
   options = {
     programs.dublin-traceroute = {
-      enable = mkEnableOption ''
+      enable = lib.mkEnableOption ''
       dublin-traceroute, add it to the global environment and configure a setcap wrapper for it.
       '';
 
-      package = mkPackageOption pkgs "dublin-traceroute" { };
+      package = lib.mkPackageOption pkgs "dublin-traceroute" { };
     };
   };
 
-  config = mkIf cfg.enable {
+  config = lib.mkIf cfg.enable {
     environment.systemPackages = [ cfg.package ];
 
     security.wrappers.dublin-traceroute = {
       owner = "root";
       group = "root";
       capabilities = "cap_net_raw+p";
-      source = getExe cfg.package;
+      source = lib.getExe cfg.package;
     };
   };
 }
diff --git a/nixos/modules/programs/ecryptfs.nix b/nixos/modules/programs/ecryptfs.nix
index ced5eb26fb9a..8674f7ec80e0 100644
--- a/nixos/modules/programs/ecryptfs.nix
+++ b/nixos/modules/programs/ecryptfs.nix
@@ -1,16 +1,14 @@
 { config, lib, pkgs, ... }:
 
-with lib;
-
 let
   cfg = config.programs.ecryptfs;
 
 in {
   options.programs.ecryptfs = {
-    enable = mkEnableOption "ecryptfs setuid mount wrappers";
+    enable = lib.mkEnableOption "ecryptfs setuid mount wrappers";
   };
 
-  config = mkIf cfg.enable {
+  config = lib.mkIf cfg.enable {
     security.wrappers = {
 
       "mount.ecryptfs_private" = {
diff --git a/nixos/modules/programs/environment.nix b/nixos/modules/programs/environment.nix
index 8ac723f42f61..8a565b7bcac4 100644
--- a/nixos/modules/programs/environment.nix
+++ b/nixos/modules/programs/environment.nix
@@ -4,8 +4,6 @@
 
 { config, lib, ... }:
 
-with lib;
-
 let
 
   cfg = config.environment;
@@ -20,14 +18,14 @@ in
       { NIXPKGS_CONFIG = "/etc/nix/nixpkgs-config.nix";
         # note: many programs exec() this directly, so default options for less must not
         # be specified here; do so in the default value of programs.less.envVariables instead
-        PAGER = mkDefault "less";
-        EDITOR = mkDefault "nano";
+        PAGER = lib.mkDefault "less";
+        EDITOR = lib.mkDefault "nano";
       };
 
     # since we set PAGER to this above, make sure it's installed
     programs.less.enable = true;
 
-    environment.profiles = mkAfter
+    environment.profiles = lib.mkAfter
       [ "/nix/var/nix/profiles/default"
         "/run/current-system/sw"
       ];
@@ -53,7 +51,7 @@ in
     environment.extraInit =
       ''
          export NIX_USER_PROFILE_DIR="/nix/var/nix/profiles/per-user/$USER"
-         export NIX_PROFILES="${concatStringsSep " " (reverseList cfg.profiles)}"
+         export NIX_PROFILES="${builtins.concatStringsSep " " (lib.reverseList cfg.profiles)}"
       '';
 
   };
diff --git a/nixos/modules/programs/extra-container.nix b/nixos/modules/programs/extra-container.nix
index c10ccd769168..6dcfba7971da 100644
--- a/nixos/modules/programs/extra-container.nix
+++ b/nixos/modules/programs/extra-container.nix
@@ -1,16 +1,15 @@
 { config, pkgs, lib, ... }:
 
-with lib;
 let
   cfg = config.programs.extra-container;
 in {
   options = {
-    programs.extra-container.enable = mkEnableOption ''
+    programs.extra-container.enable = lib.mkEnableOption ''
       extra-container, a tool for running declarative NixOS containers
       without host system rebuilds
     '';
   };
-  config = mkIf cfg.enable {
+  config = lib.mkIf cfg.enable {
     environment.systemPackages = [ pkgs.extra-container ];
     boot.extraSystemdUnitPaths = [ "/etc/systemd-mutable/system" ];
   };
diff --git a/nixos/modules/programs/feedbackd.nix b/nixos/modules/programs/feedbackd.nix
index 9de604c34a7e..0c82c7840c8f 100644
--- a/nixos/modules/programs/feedbackd.nix
+++ b/nixos/modules/programs/feedbackd.nix
@@ -1,21 +1,19 @@
 { pkgs, lib, config, ... }:
 
-with lib;
-
 let
   cfg = config.programs.feedbackd;
 in {
   options = {
     programs.feedbackd = {
-      enable = mkEnableOption ''
+      enable = lib.mkEnableOption ''
         the feedbackd D-BUS service and udev rules.
 
         Your user needs to be in the `feedbackd` group to trigger effects
       '';
-      package = mkPackageOption pkgs "feedbackd" { };
+      package = lib.mkPackageOption pkgs "feedbackd" { };
     };
   };
-  config = mkIf cfg.enable {
+  config = lib.mkIf cfg.enable {
     environment.systemPackages = [ cfg.package ];
 
     services.dbus.packages = [ cfg.package ];
diff --git a/nixos/modules/programs/firefox.nix b/nixos/modules/programs/firefox.nix
index 39b30be48de9..7e0dec57d2da 100644
--- a/nixos/modules/programs/firefox.nix
+++ b/nixos/modules/programs/firefox.nix
@@ -1,7 +1,5 @@
 { pkgs, config, lib, ... }:
 
-with lib;
-
 let
   cfg = config.programs.firefox;
 
@@ -62,13 +60,13 @@ let
 in
 {
   options.programs.firefox = {
-    enable = mkEnableOption "the Firefox web browser";
+    enable = lib.mkEnableOption "the Firefox web browser";
 
-    package = mkOption {
-      type = types.package;
+    package = lib.mkOption {
+      type = lib.types.package;
       default = pkgs.firefox;
       description = "Firefox package to use.";
-      defaultText = literalExpression "pkgs.firefox";
+      defaultText = lib.literalExpression "pkgs.firefox";
       relatedPackages = [
         "firefox"
         "firefox-beta-bin"
@@ -78,13 +76,13 @@ in
       ];
     };
 
-    wrapperConfig = mkOption {
-      type = types.attrs;
+    wrapperConfig = lib.mkOption {
+      type = lib.types.attrs;
       default = {};
       description = "Arguments to pass to Firefox wrapper";
     };
 
-    policies = mkOption {
+    policies = lib.mkOption {
       type = policyFormat.type;
       default = { };
       description = ''
@@ -100,8 +98,8 @@ in
       '';
     };
 
-    preferences = mkOption {
-      type = with types; attrsOf (oneOf [ bool int str ]);
+    preferences = lib.mkOption {
+      type = with lib.types; attrsOf (oneOf [ bool int str ]);
       default = { };
       description = ''
         Preferences to set from `about:config`.
@@ -113,8 +111,8 @@ in
       '';
     };
 
-    preferencesStatus = mkOption {
-      type = types.enum [ "default" "locked" "user" "clear" ];
+    preferencesStatus = lib.mkOption {
+      type = lib.types.enum [ "default" "locked" "user" "clear" ];
       default = "locked";
       description = ''
         The status of `firefox.preferences`.
@@ -127,9 +125,9 @@ in
       '';
     };
 
-    languagePacks = mkOption {
+    languagePacks = lib.mkOption {
       # Available languages can be found in https://releases.mozilla.org/pub/firefox/releases/${cfg.package.version}/linux-x86_64/xpi/
-      type = types.listOf (types.enum ([
+      type = lib.types.listOf (lib.types.enum ([
         "ach"
         "af"
         "an"
@@ -235,8 +233,8 @@ in
       '';
     };
 
-    autoConfig = mkOption {
-      type = types.lines;
+    autoConfig = lib.mkOption {
+      type = lib.types.lines;
       default = "";
       description = ''
         AutoConfig files can be used to set and lock preferences that are not covered
@@ -247,19 +245,19 @@ in
     };
 
     nativeMessagingHosts = ({
-      packages = mkOption {
-        type = types.listOf types.package;
+      packages = lib.mkOption {
+        type = lib.types.listOf lib.types.package;
         default = [];
         description = ''
           Additional packages containing native messaging hosts that should be made available to Firefox extensions.
         '';
       };
-    }) // (mapAttrs (k: v: mkEnableOption "${v.name} support") nmhOptions);
+    }) // (builtins.mapAttrs (k: v: lib.mkEnableOption "${v.name} support") nmhOptions);
   };
 
   config = let
-    forEachEnabledNmh = fn: flatten (mapAttrsToList (k: v: lib.optional cfg.nativeMessagingHosts.${k} (fn k v)) nmhOptions);
-  in mkIf cfg.enable {
+    forEachEnabledNmh = fn: lib.flatten (lib.mapAttrsToList (k: v: lib.optional cfg.nativeMessagingHosts.${k} (fn k v)) nmhOptions);
+  in lib.mkIf cfg.enable {
     warnings = forEachEnabledNmh (k: v:
       "The `programs.firefox.nativeMessagingHosts.${k}` option is deprecated, " +
       "please add `${v.package.pname}` to `programs.firefox.nativeMessagingHosts.packages` instead."
@@ -278,18 +276,18 @@ in
       let
         policiesJSON = policyFormat.generate "firefox-policies.json" { inherit (cfg) policies; };
       in
-      mkIf (cfg.policies != { }) {
+      lib.mkIf (cfg.policies != { }) {
         "firefox/policies/policies.json".source = "${policiesJSON}";
       };
 
     # Preferences are converted into a policy
     programs.firefox.policies = {
       DisableAppUpdate = true;
-      Preferences = (mapAttrs
+      Preferences = (builtins.mapAttrs
         (_: value: { Value = value; Status = cfg.preferencesStatus; })
         cfg.preferences);
-      ExtensionSettings = listToAttrs (map
-        (lang: nameValuePair
+      ExtensionSettings = builtins.listToAttrs (builtins.map
+        (lang: lib.attrsets.nameValuePair
           "langpack-${lang}@firefox.mozilla.org"
           {
             installation_mode = "normal_installed";
@@ -300,5 +298,5 @@ in
     };
   };
 
-  meta.maintainers = with maintainers; [ danth ];
+  meta.maintainers = with lib.maintainers; [ danth ];
 }
diff --git a/nixos/modules/programs/firejail.nix b/nixos/modules/programs/firejail.nix
index 0510cf8c610d..90da93818274 100644
--- a/nixos/modules/programs/firejail.nix
+++ b/nixos/modules/programs/firejail.nix
@@ -1,7 +1,5 @@
 { config, lib, pkgs, ... }:
 
-with lib;
-
 let
   cfg = config.programs.firejail;
 
@@ -21,13 +19,13 @@ let
         else { executable = value; desktop = null; profile = null; extraArgs = []; };
         args = lib.escapeShellArgs (
           opts.extraArgs
-          ++ (optional (opts.profile != null) "--profile=${toString opts.profile}")
+          ++ (lib.optional (opts.profile != null) "--profile=${builtins.toString opts.profile}")
         );
       in
       ''
         cat <<_EOF >$out/bin/${command}
         #! ${pkgs.runtimeShell} -e
-        exec /run/wrappers/bin/firejail ${args} -- ${toString opts.executable} "\$@"
+        exec /run/wrappers/bin/firejail ${args} -- ${builtins.toString opts.executable} "\$@"
         _EOF
         chmod 0755 $out/bin/${command}
 
@@ -40,30 +38,30 @@ let
 
 in {
   options.programs.firejail = {
-    enable = mkEnableOption "firejail, a sandboxing tool for Linux";
+    enable = lib.mkEnableOption "firejail, a sandboxing tool for Linux";
 
-    wrappedBinaries = mkOption {
-      type = types.attrsOf (types.either types.path (types.submodule {
+    wrappedBinaries = lib.mkOption {
+      type = lib.types.attrsOf (lib.types.either lib.types.path (lib.types.submodule {
         options = {
-          executable = mkOption {
-            type = types.path;
+          executable = lib.mkOption {
+            type = lib.types.path;
             description = "Executable to run sandboxed";
-            example = literalExpression ''"''${lib.getBin pkgs.firefox}/bin/firefox"'';
+            example = lib.literalExpression ''"''${lib.getBin pkgs.firefox}/bin/firefox"'';
           };
-          desktop = mkOption {
-            type = types.nullOr types.path;
+          desktop = lib.mkOption {
+            type = lib.types.nullOr lib.types.path;
             default = null;
             description = ".desktop file to modify. Only necessary if it uses the absolute path to the executable.";
-            example = literalExpression ''"''${pkgs.firefox}/share/applications/firefox.desktop"'';
+            example = lib.literalExpression ''"''${pkgs.firefox}/share/applications/firefox.desktop"'';
           };
-          profile = mkOption {
-            type = types.nullOr types.path;
+          profile = lib.mkOption {
+            type = lib.types.nullOr lib.types.path;
             default = null;
             description = "Profile to use";
-            example = literalExpression ''"''${pkgs.firejail}/etc/firejail/firefox.profile"'';
+            example = lib.literalExpression ''"''${pkgs.firejail}/etc/firejail/firefox.profile"'';
           };
-          extraArgs = mkOption {
-            type = types.listOf types.str;
+          extraArgs = lib.mkOption {
+            type = lib.types.listOf lib.types.str;
             default = [];
             description = "Extra arguments to pass to firejail";
             example = [ "--private=~/.firejail_home" ];
@@ -71,7 +69,7 @@ in {
         };
       }));
       default = {};
-      example = literalExpression ''
+      example = lib.literalExpression ''
         {
           firefox = {
             executable = "''${lib.getBin pkgs.firefox}/bin/firefox";
@@ -89,7 +87,7 @@ in {
     };
   };
 
-  config = mkIf cfg.enable {
+  config = lib.mkIf cfg.enable {
     security.wrappers.firejail =
       { setuid = true;
         owner = "root";
@@ -100,5 +98,5 @@ in {
     environment.systemPackages = [ pkgs.firejail ] ++ [ wrappedBins ];
   };
 
-  meta.maintainers = with maintainers; [ peterhoeg ];
+  meta.maintainers = with lib.maintainers; [ peterhoeg ];
 }
diff --git a/nixos/modules/programs/fish.nix b/nixos/modules/programs/fish.nix
index 2102a07cd0bc..5a6fdb9b5ec5 100644
--- a/nixos/modules/programs/fish.nix
+++ b/nixos/modules/programs/fish.nix
@@ -1,21 +1,19 @@
 { config, lib, pkgs, ... }:
 
-with lib;
-
 let
 
   cfge = config.environment;
 
   cfg = config.programs.fish;
 
-  fishAbbrs = concatStringsSep "\n" (
-    mapAttrsFlatten (k: v: "abbr -ag ${k} ${escapeShellArg v}")
+  fishAbbrs = lib.concatStringsSep "\n" (
+    lib.mapAttrsFlatten (k: v: "abbr -ag ${k} ${lib.escapeShellArg v}")
       cfg.shellAbbrs
   );
 
-  fishAliases = concatStringsSep "\n" (
-    mapAttrsFlatten (k: v: "alias ${k} ${escapeShellArg v}")
-      (filterAttrs (k: v: v != null) cfg.shellAliases)
+  fishAliases = lib.concatStringsSep "\n" (
+    lib.mapAttrsFlatten (k: v: "alias ${k} ${lib.escapeShellArg v}")
+      (lib.filterAttrs (k: v: v != null) cfg.shellAliases)
   );
 
   envShellInit = pkgs.writeText "shellInit" cfge.shellInit;
@@ -47,16 +45,18 @@ in
 
     programs.fish = {
 
-      enable = mkOption {
+      enable = lib.mkOption {
         default = false;
         description = ''
           Whether to configure fish as an interactive shell.
         '';
-        type = types.bool;
+        type = lib.types.bool;
       };
 
-      useBabelfish = mkOption {
-        type = types.bool;
+      package = lib.mkPackageOption pkgs "fish" { };
+
+      useBabelfish = lib.mkOption {
+        type = lib.types.bool;
         default = false;
         description = ''
           If enabled, the configured environment will be translated to native fish using [babelfish](https://github.com/bouk/babelfish).
@@ -64,31 +64,31 @@ in
         '';
       };
 
-      vendor.config.enable = mkOption {
-        type = types.bool;
+      vendor.config.enable = lib.mkOption {
+        type = lib.types.bool;
         default = true;
         description = ''
           Whether fish should source configuration snippets provided by other packages.
         '';
       };
 
-      vendor.completions.enable = mkOption {
-        type = types.bool;
+      vendor.completions.enable = lib.mkOption {
+        type = lib.types.bool;
         default = true;
         description = ''
           Whether fish should use completion files provided by other packages.
         '';
       };
 
-      vendor.functions.enable = mkOption {
-        type = types.bool;
+      vendor.functions.enable = lib.mkOption {
+        type = lib.types.bool;
         default = true;
         description = ''
           Whether fish should autoload fish functions provided by other packages.
         '';
       };
 
-      shellAbbrs = mkOption {
+      shellAbbrs = lib.mkOption {
         default = {};
         example = {
           gco = "git checkout";
@@ -97,63 +97,63 @@ in
         description = ''
           Set of fish abbreviations.
         '';
-        type = with types; attrsOf str;
+        type = with lib.types; attrsOf str;
       };
 
-      shellAliases = mkOption {
+      shellAliases = lib.mkOption {
         default = {};
         description = ''
           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));
+        type = with lib.types; attrsOf (nullOr (either str path));
       };
 
-      shellInit = mkOption {
+      shellInit = lib.mkOption {
         default = "";
         description = ''
           Shell script code called during fish shell initialisation.
         '';
-        type = types.lines;
+        type = lib.types.lines;
       };
 
-      loginShellInit = mkOption {
+      loginShellInit = lib.mkOption {
         default = "";
         description = ''
           Shell script code called during fish login shell initialisation.
         '';
-        type = types.lines;
+        type = lib.types.lines;
       };
 
-      interactiveShellInit = mkOption {
+      interactiveShellInit = lib.mkOption {
         default = "";
         description = ''
           Shell script code called during interactive fish shell initialisation.
         '';
-        type = types.lines;
+        type = lib.types.lines;
       };
 
-      promptInit = mkOption {
+      promptInit = lib.mkOption {
         default = "";
         description = ''
           Shell script code used to initialise fish prompt.
         '';
-        type = types.lines;
+        type = lib.types.lines;
       };
 
     };
 
   };
 
-  config = mkIf cfg.enable {
+  config = lib.mkIf cfg.enable {
 
-    programs.fish.shellAliases = mapAttrs (name: mkDefault) cfge.shellAliases;
+    programs.fish.shellAliases = lib.mapAttrs (name: lib.mkDefault) cfge.shellAliases;
 
     # Required for man completions
     documentation.man.generateCaches = lib.mkDefault true;
 
-    environment = mkMerge [
-      (mkIf cfg.useBabelfish
+    environment = lib.mkMerge [
+      (lib.mkIf cfg.useBabelfish
       {
         etc."fish/setEnvironment.fish".source = babelfishTranslate config.system.build.setEnvironment "setEnvironment";
         etc."fish/shellInit.fish".source = babelfishTranslate envShellInit "shellInit";
@@ -161,7 +161,7 @@ in
         etc."fish/interactiveShellInit.fish".source = babelfishTranslate envInteractiveShellInit "interactiveShellInit";
      })
 
-      (mkIf (!cfg.useBabelfish)
+      (lib.mkIf (!cfg.useBabelfish)
       {
         etc."fish/foreign-env/shellInit".source = envShellInit;
         etc."fish/foreign-env/loginShellInit".source = envLoginShellInit;
@@ -244,8 +244,8 @@ in
           patchedGenerator = pkgs.stdenv.mkDerivation {
             name = "fish_patched-completion-generator";
             srcs = [
-              "${pkgs.fish}/share/fish/tools/create_manpage_completions.py"
-              "${pkgs.fish}/share/fish/tools/deroff.py"
+              "${cfg.package}/share/fish/tools/create_manpage_completions.py"
+              "${cfg.package}/share/fish/tools/deroff.py"
             ];
             unpackCmd = "cp $curSrc $(basename $curSrc)";
             sourceRoot = ".";
@@ -264,7 +264,7 @@ in
                 pathName = substring storeLength (stringLength package - storeLength) package;
               in (package.name or pathName) + "_fish-completions")
             ( { inherit package; } //
-              optionalAttrs (package ? meta.priority) { meta.priority = package.meta.priority; })
+              lib.optionalAttrs (package ? meta.priority) { meta.priority = package.meta.priority; })
             ''
               mkdir -p $out
               if [ -d $package/share/man ]; then
@@ -275,24 +275,24 @@ in
           pkgs.buildEnv {
             name = "system_fish-completions";
             ignoreCollisions = true;
-            paths = map generateCompletions config.environment.systemPackages;
+            paths = builtins.map generateCompletions config.environment.systemPackages;
           };
       }
 
       # include programs that bring their own completions
       {
         pathsToLink = []
-        ++ optional cfg.vendor.config.enable "/share/fish/vendor_conf.d"
-        ++ optional cfg.vendor.completions.enable "/share/fish/vendor_completions.d"
-        ++ optional cfg.vendor.functions.enable "/share/fish/vendor_functions.d";
+        ++ lib.optional cfg.vendor.config.enable "/share/fish/vendor_conf.d"
+        ++ lib.optional cfg.vendor.completions.enable "/share/fish/vendor_completions.d"
+        ++ lib.optional cfg.vendor.functions.enable "/share/fish/vendor_functions.d";
       }
 
-      { systemPackages = [ pkgs.fish ]; }
+      { systemPackages = [ cfg.package ]; }
 
       {
         shells = [
           "/run/current-system/sw/bin/fish"
-          "${pkgs.fish}/bin/fish"
+          (lib.getExe cfg.package)
         ];
       }
     ];
diff --git a/nixos/modules/programs/flashrom.nix b/nixos/modules/programs/flashrom.nix
index 1b9b4493ef20..dd398497c2d0 100644
--- a/nixos/modules/programs/flashrom.nix
+++ b/nixos/modules/programs/flashrom.nix
@@ -1,14 +1,12 @@
 { config, lib, pkgs, ... }:
 
-with lib;
-
 let
   cfg = config.programs.flashrom;
 in
 {
   options.programs.flashrom = {
-    enable = mkOption {
-      type = types.bool;
+    enable = lib.mkOption {
+      type = lib.types.bool;
       default = false;
       description = ''
         Installs flashrom and configures udev rules for programmers
@@ -16,10 +14,10 @@ in
         group.
       '';
     };
-    package = mkPackageOption pkgs "flashrom" { };
+    package = lib.mkPackageOption pkgs "flashrom" { };
   };
 
-  config = mkIf cfg.enable {
+  config = lib.mkIf cfg.enable {
     services.udev.packages = [ cfg.package ];
     environment.systemPackages = [ cfg.package ];
   };
diff --git a/nixos/modules/programs/flexoptix-app.nix b/nixos/modules/programs/flexoptix-app.nix
index 47a76da125f0..baa9e33882ca 100644
--- a/nixos/modules/programs/flexoptix-app.nix
+++ b/nixos/modules/programs/flexoptix-app.nix
@@ -1,19 +1,17 @@
 { config, pkgs, lib, ... }:
 
-with lib;
-
 let
   cfg = config.programs.flexoptix-app;
 in {
   options = {
     programs.flexoptix-app = {
-      enable = mkEnableOption "FLEXOPTIX app + udev rules";
+      enable = lib.mkEnableOption "FLEXOPTIX app + udev rules";
 
-      package = mkPackageOption pkgs "flexoptix-app" { };
+      package = lib.mkPackageOption pkgs "flexoptix-app" { };
     };
   };
 
-  config = mkIf cfg.enable {
+  config = lib.mkIf cfg.enable {
     environment.systemPackages = [ cfg.package ];
     services.udev.packages = [ cfg.package ];
   };
diff --git a/nixos/modules/programs/freetds.nix b/nixos/modules/programs/freetds.nix
index 8b52fc37c5e0..77daaa8fd398 100644
--- a/nixos/modules/programs/freetds.nix
+++ b/nixos/modules/programs/freetds.nix
@@ -2,8 +2,6 @@
 
 { config, lib, pkgs, ... }:
 
-with lib;
-
 let
 
   cfg = config.environment.freetds;
@@ -14,10 +12,10 @@ in
 
   options = {
 
-    environment.freetds = mkOption {
-      type = types.attrsOf types.str;
+    environment.freetds = lib.mkOption {
+      type = lib.types.attrsOf lib.types.str;
       default = {};
-      example = literalExpression ''
+      example = lib.literalExpression ''
         { MYDATABASE = '''
             host = 10.0.2.100
             port = 1433
@@ -40,14 +38,14 @@ in
 
   ###### implementation
 
-  config = mkIf (length (attrNames cfg) > 0) {
+  config = lib.mkIf (builtins.length (builtins.attrNames cfg) > 0) {
 
     environment.variables.FREETDSCONF = "/etc/freetds.conf";
     environment.variables.FREETDS = "/etc/freetds.conf";
     environment.variables.SYBASE = "${pkgs.freetds}";
 
     environment.etc."freetds.conf" = { text =
-      (concatStrings (mapAttrsToList (name: value:
+      (lib.concatStrings (lib.mapAttrsToList (name: value:
         ''
         [${name}]
         ${value}
diff --git a/nixos/modules/programs/fuse.nix b/nixos/modules/programs/fuse.nix
index c15896efbb51..7083194bd989 100644
--- a/nixos/modules/programs/fuse.nix
+++ b/nixos/modules/programs/fuse.nix
@@ -1,25 +1,23 @@
 { config, lib, ... }:
 
-with lib;
-
 let
   cfg = config.programs.fuse;
 in {
-  meta.maintainers = with maintainers; [ primeos ];
+  meta.maintainers = with lib.maintainers; [ primeos ];
 
   options.programs.fuse = {
-    mountMax = mkOption {
+    mountMax = lib.mkOption {
       # In the C code it's an "int" (i.e. signed and at least 16 bit), but
       # negative numbers obviously make no sense:
-      type = types.ints.between 0 32767; # 2^15 - 1
+      type = lib.types.ints.between 0 32767; # 2^15 - 1
       default = 1000;
       description = ''
         Set the maximum number of FUSE mounts allowed to non-root users.
       '';
     };
 
-    userAllowOther = mkOption {
-      type = types.bool;
+    userAllowOther = lib.mkOption {
+      type = lib.types.bool;
       default = false;
       description = ''
         Allow non-root users to specify the allow_other or allow_root mount
@@ -30,8 +28,8 @@ in {
 
   config =  {
     environment.etc."fuse.conf".text = ''
-      ${optionalString (!cfg.userAllowOther) "#"}user_allow_other
-      mount_max = ${toString cfg.mountMax}
+      ${lib.optionalString (!cfg.userAllowOther) "#"}user_allow_other
+      mount_max = ${builtins.toString cfg.mountMax}
     '';
   };
 }
diff --git a/nixos/modules/programs/gamemode.nix b/nixos/modules/programs/gamemode.nix
index 878f785074f1..14892f9c6eac 100644
--- a/nixos/modules/programs/gamemode.nix
+++ b/nixos/modules/programs/gamemode.nix
@@ -1,7 +1,5 @@
 { config, lib, pkgs, ... }:
 
-with lib;
-
 let
   cfg = config.programs.gamemode;
   settingsFormat = pkgs.formats.ini { };
@@ -10,20 +8,20 @@ in
 {
   options = {
     programs.gamemode = {
-      enable = mkEnableOption "GameMode to optimise system performance on demand";
+      enable = lib.mkEnableOption "GameMode to optimise system performance on demand";
 
-      enableRenice = mkEnableOption "CAP_SYS_NICE on gamemoded to support lowering process niceness" // {
+      enableRenice = lib.mkEnableOption "CAP_SYS_NICE on gamemoded to support lowering process niceness" // {
         default = true;
       };
 
-      settings = mkOption {
+      settings = lib.mkOption {
         type = settingsFormat.type;
         default = { };
         description = ''
           System-wide configuration for GameMode (/etc/gamemode.ini).
           See gamemoded(8) man page for available settings.
         '';
-        example = literalExpression ''
+        example = lib.literalExpression ''
           {
             general = {
               renice = 10;
@@ -46,7 +44,7 @@ in
     };
   };
 
-  config = mkIf cfg.enable {
+  config = lib.mkIf cfg.enable {
     environment = {
       systemPackages = [ pkgs.gamemode ];
       etc."gamemode.ini".source = configFile;
@@ -54,7 +52,7 @@ in
 
     security = {
       polkit.enable = true;
-      wrappers = mkIf cfg.enableRenice {
+      wrappers = lib.mkIf cfg.enableRenice {
         gamemoded = {
           owner = "root";
           group = "root";
@@ -77,14 +75,14 @@ in
         #
         # This uses a link farm to make sure other wrapped executables
         # aren't included in PATH.
-        environment.PATH = mkForce (pkgs.linkFarm "pkexec" [
+        environment.PATH = lib.mkForce (pkgs.linkFarm "pkexec" [
           {
             name = "pkexec";
             path = "${config.security.wrapperDir}/pkexec";
           }
         ]);
 
-        serviceConfig.ExecStart = mkIf cfg.enableRenice [
+        serviceConfig.ExecStart = lib.mkIf cfg.enableRenice [
           "" # Tell systemd to clear the existing ExecStart list, to prevent appending to it.
           "${config.security.wrapperDir}/gamemoded"
         ];
@@ -95,6 +93,6 @@ in
   };
 
   meta = {
-    maintainers = with maintainers; [ kira-bruneau ];
+    maintainers = with lib.maintainers; [ kira-bruneau ];
   };
 }
diff --git a/nixos/modules/programs/gamescope.nix b/nixos/modules/programs/gamescope.nix
index af9ced471539..6a0b0a8fbddd 100644
--- a/nixos/modules/programs/gamescope.nix
+++ b/nixos/modules/programs/gamescope.nix
@@ -3,30 +3,30 @@
 , pkgs
 , ...
 }:
-with lib; let
+let
   cfg = config.programs.gamescope;
 
   gamescope =
     let
       wrapperArgs =
-        optional (cfg.args != [ ])
-          ''--add-flags "${toString cfg.args}"''
-        ++ builtins.attrValues (mapAttrs (var: val: "--set-default ${var} ${val}") cfg.env);
+        lib.optional (cfg.args != [ ])
+          ''--add-flags "${builtins.toString cfg.args}"''
+        ++ builtins.attrValues (builtins.mapAttrs (var: val: "--set-default ${var} ${val}") cfg.env);
     in
     pkgs.runCommand "gamescope" { nativeBuildInputs = [ pkgs.makeBinaryWrapper ]; } ''
       mkdir -p $out/bin
       makeWrapper ${cfg.package}/bin/gamescope $out/bin/gamescope --inherit-argv0 \
-        ${toString wrapperArgs}
+        ${builtins.toString wrapperArgs}
     '';
 in
 {
   options.programs.gamescope = {
-    enable = mkEnableOption "gamescope, the SteamOS session compositing window manager";
+    enable = lib.mkEnableOption "gamescope, the SteamOS session compositing window manager";
 
-    package = mkPackageOption pkgs "gamescope" { };
+    package = lib.mkPackageOption pkgs "gamescope" { };
 
-    capSysNice = mkOption {
-      type = types.bool;
+    capSysNice = lib.mkOption {
+      type = lib.types.bool;
       default = false;
       description = ''
         Add cap_sys_nice capability to the GameScope
@@ -34,8 +34,8 @@ in
       '';
     };
 
-    args = mkOption {
-      type = types.listOf types.str;
+    args = lib.mkOption {
+      type = lib.types.listOf lib.types.str;
       default = [ ];
       example = [ "--rt" "--prefer-vk-device 8086:9bc4" ];
       description = ''
@@ -43,10 +43,10 @@ in
       '';
     };
 
-    env = mkOption {
-      type = types.attrsOf types.str;
+    env = lib.mkOption {
+      type = lib.types.attrsOf lib.types.str;
       default = { };
-      example = literalExpression ''
+      example = lib.literalExpression ''
         # for Prime render offload on Nvidia laptops.
         # Also requires `hardware.nvidia.prime.offload.enable`.
         {
@@ -61,8 +61,8 @@ in
     };
   };
 
-  config = mkIf cfg.enable {
-    security.wrappers = mkIf cfg.capSysNice {
+  config = lib.mkIf cfg.enable {
+    security.wrappers = lib.mkIf cfg.capSysNice {
       gamescope = {
         owner = "root";
         group = "root";
@@ -71,8 +71,8 @@ in
       };
     };
 
-    environment.systemPackages = mkIf (!cfg.capSysNice) [ gamescope ];
+    environment.systemPackages = lib.mkIf (!cfg.capSysNice) [ gamescope ];
   };
 
-  meta.maintainers = with maintainers; [ nrdxp ];
+  meta.maintainers = with lib.maintainers; [ nrdxp ];
 }
diff --git a/nixos/modules/programs/geary.nix b/nixos/modules/programs/geary.nix
index 6103ee7df859..cfd5bed78d97 100644
--- a/nixos/modules/programs/geary.nix
+++ b/nixos/modules/programs/geary.nix
@@ -1,20 +1,18 @@
 { config, pkgs, lib, ... }:
 
-with lib;
-
 let
   cfg = config.programs.geary;
 
 in {
   meta = {
-    maintainers = teams.gnome.members;
+    maintainers = lib.teams.gnome.members;
   };
 
   options = {
-    programs.geary.enable = mkEnableOption "Geary, a Mail client for GNOME";
+    programs.geary.enable = lib.mkEnableOption "Geary, a Mail client for GNOME";
   };
 
-  config = mkIf cfg.enable {
+  config = lib.mkIf cfg.enable {
     environment.systemPackages = [ pkgs.gnome.geary ];
     programs.dconf.enable = true;
     services.gnome.gnome-keyring.enable = true;
diff --git a/nixos/modules/programs/git.nix b/nixos/modules/programs/git.nix
index 2a5d52f2d191..e4f6ce937f04 100644
--- a/nixos/modules/programs/git.nix
+++ b/nixos/modules/programs/git.nix
@@ -1,7 +1,5 @@
 { config, lib, pkgs, ... }:
 
-with lib;
-
 let
   cfg = config.programs.git;
 in
@@ -9,23 +7,23 @@ in
 {
   options = {
     programs.git = {
-      enable = mkEnableOption "git, a distributed version control system";
+      enable = lib.mkEnableOption "git, a distributed version control system";
 
-      package = mkPackageOption pkgs "git" {
+      package = lib.mkPackageOption pkgs "git" {
         example = "gitFull";
       };
 
-      config = mkOption {
+      config = lib.mkOption {
         type =
-          with types;
+          with lib.types;
           let
             gitini = attrsOf (attrsOf anything);
           in
           either gitini (listOf gitini) // {
             merge = loc: defs:
               let
-                config = foldl'
-                  (acc: { value, ... }@x: acc // (if isList value then {
+                config = builtins.foldl'
+                  (acc: { value, ... }@x: acc // (if builtins.isList value then {
                     ordered = acc.ordered ++ value;
                   } else {
                     unordered = acc.unordered ++ [ x ];
@@ -55,25 +53,25 @@ in
       };
 
       prompt = {
-        enable = mkEnableOption "automatically sourcing git-prompt.sh. This does not change $PS1; it simply provides relevant utility functions";
+        enable = lib.mkEnableOption "automatically sourcing git-prompt.sh. This does not change $PS1; it simply provides relevant utility functions";
       };
 
       lfs = {
-        enable = mkEnableOption "git-lfs (Large File Storage)";
+        enable = lib.mkEnableOption "git-lfs (Large File Storage)";
 
-        package = mkPackageOption pkgs "git-lfs" { };
+        package = lib.mkPackageOption pkgs "git-lfs" { };
       };
     };
   };
 
-  config = mkMerge [
-    (mkIf cfg.enable {
+  config = lib.mkMerge [
+    (lib.mkIf cfg.enable {
       environment.systemPackages = [ cfg.package ];
-      environment.etc.gitconfig = mkIf (cfg.config != [ ]) {
-        text = concatMapStringsSep "\n" generators.toGitINI cfg.config;
+      environment.etc.gitconfig = lib.mkIf (cfg.config != [ ]) {
+        text = lib.concatMapStringsSep "\n" lib.generators.toGitINI cfg.config;
       };
     })
-    (mkIf (cfg.enable && cfg.lfs.enable) {
+    (lib.mkIf (cfg.enable && cfg.lfs.enable) {
       environment.systemPackages = [ cfg.lfs.package ];
       programs.git.config = {
         filter.lfs = {
@@ -84,12 +82,12 @@ in
         };
       };
     })
-    (mkIf (cfg.enable && cfg.prompt.enable) {
+    (lib.mkIf (cfg.enable && cfg.prompt.enable) {
       environment.interactiveShellInit = ''
         source ${cfg.package}/share/bash-completion/completions/git-prompt.sh
       '';
     })
   ];
 
-  meta.maintainers = with maintainers; [ figsoda ];
+  meta.maintainers = with lib.maintainers; [ figsoda ];
 }
diff --git a/nixos/modules/programs/gphoto2.nix b/nixos/modules/programs/gphoto2.nix
index d99259b54582..d9f09483f63c 100644
--- a/nixos/modules/programs/gphoto2.nix
+++ b/nixos/modules/programs/gphoto2.nix
@@ -1,16 +1,14 @@
 { config, lib, pkgs, ... }:
 
-with lib;
-
 {
-  meta.maintainers = [ maintainers.league ];
+  meta.maintainers = [ lib.maintainers.league ];
 
   ###### interface
   options = {
     programs.gphoto2 = {
-      enable = mkOption {
+      enable = lib.mkOption {
         default = false;
-        type = types.bool;
+        type = lib.types.bool;
         description = ''
           Whether to configure system to use gphoto2.
           To grant digital camera access to a user, the user must
@@ -22,7 +20,7 @@ with lib;
   };
 
   ###### implementation
-  config = mkIf config.programs.gphoto2.enable {
+  config = lib.mkIf config.programs.gphoto2.enable {
     services.udev.packages = [ pkgs.libgphoto2 ];
     environment.systemPackages = [ pkgs.gphoto2 ];
     users.groups.camera = {};
diff --git a/nixos/modules/programs/haguichi.nix b/nixos/modules/programs/haguichi.nix
index 4f48551cf1da..fd769ac8d0a0 100644
--- a/nixos/modules/programs/haguichi.nix
+++ b/nixos/modules/programs/haguichi.nix
@@ -1,13 +1,11 @@
 { lib, pkgs, config, ... }:
 
-with lib;
-
 {
   options.programs.haguichi = {
-    enable = mkEnableOption "Haguichi, a Linux GUI frontend to the proprietary LogMeIn Hamachi";
+    enable = lib.mkEnableOption "Haguichi, a Linux GUI frontend to the proprietary LogMeIn Hamachi";
   };
 
-  config = mkIf config.programs.haguichi.enable {
+  config = lib.mkIf config.programs.haguichi.enable {
     environment.systemPackages = with pkgs; [ haguichi ];
 
     services.logmein-hamachi.enable = true;
diff --git a/nixos/modules/programs/hamster.nix b/nixos/modules/programs/hamster.nix
index 0bb56ad7ff36..90cfc0f86a24 100644
--- a/nixos/modules/programs/hamster.nix
+++ b/nixos/modules/programs/hamster.nix
@@ -1,12 +1,10 @@
 { config, lib, pkgs, ... }:
 
-with lib;
-
 {
   meta.maintainers = pkgs.hamster.meta.maintainers;
 
   options.programs.hamster.enable =
-    mkEnableOption "hamster, a time tracking program";
+    lib.mkEnableOption "hamster, a time tracking program";
 
   config = lib.mkIf config.programs.hamster.enable {
     environment.systemPackages = [ pkgs.hamster ];
diff --git a/nixos/modules/programs/htop.nix b/nixos/modules/programs/htop.nix
index bf3d85108170..1252b41e8b85 100644
--- a/nixos/modules/programs/htop.nix
+++ b/nixos/modules/programs/htop.nix
@@ -1,29 +1,27 @@
 { config, lib, pkgs, ... }:
 
-with lib;
-
 let
 
   cfg = config.programs.htop;
 
   fmt = value:
-    if isList value then concatStringsSep " " (map fmt value) else
-    if isString value then value else
-    if isBool value then if value then "1" else "0" else
-    if isInt value then toString value else
-    throw "Unrecognized type ${typeOf value} in htop settings";
+    if builtins.isList value then builtins.concatStringsSep " " (builtins.map fmt value) else
+    if builtins.isString value then value else
+    if builtins.isBool value then if value then "1" else "0" else
+    if builtins.isInt value then builtins.toString value else
+    throw "Unrecognized type ${builtins.typeOf value} in htop settings";
 
 in
 
 {
 
   options.programs.htop = {
-    package = mkPackageOption pkgs "htop" { };
+    package = lib.mkPackageOption pkgs "htop" { };
 
-    enable = mkEnableOption "htop process monitor";
+    enable = lib.mkEnableOption "htop process monitor";
 
-    settings = mkOption {
-      type = with types; attrsOf (oneOf [ str int bool (listOf (oneOf [ str int bool ])) ]);
+    settings = lib.mkOption {
+      type = with lib.types; attrsOf (oneOf [ str int bool (listOf (oneOf [ str int bool ])) ]);
       default = {};
       example = {
         hide_kernel_threads = true;
@@ -38,7 +36,7 @@ in
     };
   };
 
-  config = mkIf cfg.enable {
+  config = lib.mkIf cfg.enable {
     environment.systemPackages = [
       cfg.package
     ];
@@ -46,7 +44,7 @@ in
     environment.etc."htoprc".text = ''
       # Global htop configuration
       # To change set: programs.htop.settings.KEY = VALUE;
-    '' + concatStringsSep "\n" (mapAttrsToList (key: value: "${key}=${fmt value}") cfg.settings);
+    '' + builtins.concatStringsSep "\n" (lib.mapAttrsToList (key: value: "${key}=${fmt value}") cfg.settings);
   };
 
 }
diff --git a/nixos/modules/programs/i3lock.nix b/nixos/modules/programs/i3lock.nix
index 8068ecaf08ca..ff616144e283 100644
--- a/nixos/modules/programs/i3lock.nix
+++ b/nixos/modules/programs/i3lock.nix
@@ -1,7 +1,5 @@
 { config, lib, pkgs, ... }:
 
-with lib;
-
 let
 
   cfg = config.programs.i3lock;
@@ -12,8 +10,8 @@ in {
 
   options = {
     programs.i3lock = {
-      enable = mkEnableOption "i3lock";
-      package = mkPackageOption pkgs "i3lock" {
+      enable = lib.mkEnableOption "i3lock";
+      package = lib.mkPackageOption pkgs "i3lock" {
         example = "i3lock-color";
         extraDescription = ''
           ::: {.note}
@@ -21,8 +19,8 @@ in {
           :::
         '';
       };
-      u2fSupport = mkOption {
-        type        = types.bool;
+      u2fSupport = lib.mkOption {
+        type        = lib.types.bool;
         default     = false;
         example     = true;
         description = ''
@@ -36,11 +34,11 @@ in {
 
   ###### implementation
 
-  config = mkIf cfg.enable {
+  config = lib.mkIf cfg.enable {
 
     environment.systemPackages = [ cfg.package ];
 
-    security.wrappers.i3lock = mkIf cfg.u2fSupport {
+    security.wrappers.i3lock = lib.mkIf cfg.u2fSupport {
       setuid = true;
       owner = "root";
       group = "root";
diff --git a/nixos/modules/programs/iftop.nix b/nixos/modules/programs/iftop.nix
index c74714a9a6d6..d6e56c8fded6 100644
--- a/nixos/modules/programs/iftop.nix
+++ b/nixos/modules/programs/iftop.nix
@@ -1,14 +1,12 @@
 { config, pkgs, lib, ... }:
 
-with lib;
-
 let
   cfg = config.programs.iftop;
 in {
   options = {
-    programs.iftop.enable = mkEnableOption "iftop + setcap wrapper";
+    programs.iftop.enable = lib.mkEnableOption "iftop + setcap wrapper";
   };
-  config = mkIf cfg.enable {
+  config = lib.mkIf cfg.enable {
     environment.systemPackages = [ pkgs.iftop ];
     security.wrappers.iftop = {
       owner = "root";
diff --git a/nixos/modules/programs/iotop.nix b/nixos/modules/programs/iotop.nix
index b7c1c69f9ddd..ba8d028f6bb8 100644
--- a/nixos/modules/programs/iotop.nix
+++ b/nixos/modules/programs/iotop.nix
@@ -1,14 +1,12 @@
 { config, pkgs, lib, ... }:
 
-with lib;
-
 let
   cfg = config.programs.iotop;
 in {
   options = {
-    programs.iotop.enable = mkEnableOption "iotop + setcap wrapper";
+    programs.iotop.enable = lib.mkEnableOption "iotop + setcap wrapper";
   };
-  config = mkIf cfg.enable {
+  config = lib.mkIf cfg.enable {
     security.wrappers.iotop = {
       owner = "root";
       group = "root";
diff --git a/nixos/modules/programs/java.nix b/nixos/modules/programs/java.nix
index f201f67b42e4..784add809682 100644
--- a/nixos/modules/programs/java.nix
+++ b/nixos/modules/programs/java.nix
@@ -3,8 +3,6 @@
 
 { config, lib, pkgs, ... }:
 
-with lib;
-
 let
   cfg = config.programs.java;
 in
@@ -14,7 +12,7 @@ in
 
     programs.java = {
 
-      enable = mkEnableOption "java" // {
+      enable = lib.mkEnableOption "java" // {
         description = ''
           Install and setup the Java development kit.
 
@@ -30,19 +28,19 @@ in
         '';
       };
 
-      package = mkPackageOption pkgs "jdk" {
+      package = lib.mkPackageOption pkgs "jdk" {
         example = "jre";
       };
 
-      binfmt = mkEnableOption "binfmt to execute java jar's and classes";
+      binfmt = lib.mkEnableOption "binfmt to execute java jar's and classes";
 
     };
 
   };
 
-  config = mkIf cfg.enable {
+  config = lib.mkIf cfg.enable {
 
-    boot.binfmt.registrations = mkIf cfg.binfmt {
+    boot.binfmt.registrations = lib.mkIf cfg.binfmt {
       java-class = {
         recognitionType = "extension";
         magicOrExtension = "class";
diff --git a/nixos/modules/programs/joycond-cemuhook.nix b/nixos/modules/programs/joycond-cemuhook.nix
index ebb0198ee60c..6cdd198a7df2 100644
--- a/nixos/modules/programs/joycond-cemuhook.nix
+++ b/nixos/modules/programs/joycond-cemuhook.nix
@@ -1,8 +1,7 @@
 { lib, pkgs, config, ... }:
-with lib;
 {
   options.programs.joycond-cemuhook = {
-    enable = mkEnableOption "joycond-cemuhook, a program to enable support for cemuhook's UDP protocol for joycond devices.";
+    enable = lib.mkEnableOption "joycond-cemuhook, a program to enable support for cemuhook's UDP protocol for joycond devices.";
   };
 
   config = lib.mkIf config.programs.joycond-cemuhook.enable {
diff --git a/nixos/modules/programs/k3b.nix b/nixos/modules/programs/k3b.nix
index 4d6385dab4f0..3e9435d3dc60 100644
--- a/nixos/modules/programs/k3b.nix
+++ b/nixos/modules/programs/k3b.nix
@@ -1,12 +1,10 @@
 { config, pkgs, lib, ... }:
 
-with lib;
-
 {
   # interface
   options.programs.k3b = {
-    enable = mkOption {
-      type = types.bool;
+    enable = lib.mkOption {
+      type = lib.types.bool;
       default = false;
       description = ''
         Whether to enable k3b, the KDE disk burning application.
@@ -22,7 +20,7 @@ with lib;
   };
 
   # implementation
-  config = mkIf config.programs.k3b.enable {
+  config = lib.mkIf config.programs.k3b.enable {
 
     environment.systemPackages = with pkgs; [
       k3b
diff --git a/nixos/modules/programs/k40-whisperer.nix b/nixos/modules/programs/k40-whisperer.nix
index 156ded6c39fe..0f29c476cbb7 100644
--- a/nixos/modules/programs/k40-whisperer.nix
+++ b/nixos/modules/programs/k40-whisperer.nix
@@ -1,7 +1,5 @@
 { config, lib, pkgs, ... }:
 
-with lib;
-
 let
   cfg = config.programs.k40-whisperer;
   pkg = cfg.package.override {
@@ -10,20 +8,20 @@ let
 in
 {
   options.programs.k40-whisperer = {
-    enable = mkEnableOption "K40-Whisperer";
+    enable = lib.mkEnableOption "K40-Whisperer";
 
-    group = mkOption {
-      type = types.str;
+    group = lib.mkOption {
+      type = lib.types.str;
       description = ''
         Group assigned to the device when connected.
       '';
       default = "k40";
     };
 
-    package = mkPackageOption pkgs "k40-whisperer" { };
+    package = lib.mkPackageOption pkgs "k40-whisperer" { };
   };
 
-  config = mkIf cfg.enable {
+  config = lib.mkIf cfg.enable {
     users.groups.${cfg.group} = {};
 
     environment.systemPackages = [ pkg ];
diff --git a/nixos/modules/programs/kbdlight.nix b/nixos/modules/programs/kbdlight.nix
index 8a2a0057cf2d..934bb214c116 100644
--- a/nixos/modules/programs/kbdlight.nix
+++ b/nixos/modules/programs/kbdlight.nix
@@ -1,15 +1,13 @@
 { config, lib, pkgs, ... }:
 
-with lib;
-
 let
   cfg = config.programs.kbdlight;
 
 in
 {
-  options.programs.kbdlight.enable = mkEnableOption "kbdlight";
+  options.programs.kbdlight.enable = lib.mkEnableOption "kbdlight";
 
-  config = mkIf cfg.enable {
+  config = lib.mkIf cfg.enable {
     environment.systemPackages = [ pkgs.kbdlight ];
     security.wrappers.kbdlight =
       { setuid = true;
diff --git a/nixos/modules/programs/kclock.nix b/nixos/modules/programs/kclock.nix
index c2299a3f1b03..b69f358ec1ff 100644
--- a/nixos/modules/programs/kclock.nix
+++ b/nixos/modules/programs/kclock.nix
@@ -1,12 +1,11 @@
 { lib, pkgs, config, ... }:
-with lib;
 let
   cfg = config.programs.kclock;
   kclockPkg = pkgs.libsForQt5.kclock;
 in {
-  options.programs.kclock = { enable = mkEnableOption "KClock"; };
+  options.programs.kclock = { enable = lib.mkEnableOption "KClock"; };
 
-  config = mkIf cfg.enable {
+  config = lib.mkIf cfg.enable {
     services.dbus.packages = [ kclockPkg ];
     environment.systemPackages = [ kclockPkg ];
   };
diff --git a/nixos/modules/programs/kdeconnect.nix b/nixos/modules/programs/kdeconnect.nix
index 143128140596..76bba4010308 100644
--- a/nixos/modules/programs/kdeconnect.nix
+++ b/nixos/modules/programs/kdeconnect.nix
@@ -1,8 +1,7 @@
 { config, pkgs, lib, ... }:
-with lib;
 {
   options.programs.kdeconnect = {
-    enable = mkEnableOption ''
+    enable = lib.mkEnableOption ''
       kdeconnect.
 
       Note that it will open the TCP and UDP port from
@@ -11,7 +10,7 @@ with lib;
       `gnomeExtensions.gsconnect` as an alternative
       implementation if you use Gnome
     '';
-    package = mkPackageOption pkgs [ "plasma5Packages" "kdeconnect-kde" ] {
+    package = lib.mkPackageOption pkgs [ "plasma5Packages" "kdeconnect-kde" ] {
       example = "gnomeExtensions.gsconnect";
     };
   };
@@ -19,10 +18,9 @@ with lib;
     let
       cfg = config.programs.kdeconnect;
     in
-      mkIf cfg.enable {
+      lib.mkIf cfg.enable {
         environment.systemPackages = [
           cfg.package
-          pkgs.sshfs
         ];
         networking.firewall = rec {
           allowedTCPPortRanges = [ { from = 1714; to = 1764; } ];
diff --git a/nixos/modules/programs/less.nix b/nixos/modules/programs/less.nix
index 2cb762007511..c904fc2089aa 100644
--- a/nixos/modules/programs/less.nix
+++ b/nixos/modules/programs/less.nix
@@ -1,26 +1,24 @@
 { config, lib, pkgs, ... }:
 
-with lib;
-
 let
 
   cfg = config.programs.less;
 
   configText = if (cfg.configFile != null) then (builtins.readFile cfg.configFile) else ''
     #command
-    ${concatStringsSep "\n"
-      (mapAttrsToList (command: action: "${command} ${action}") cfg.commands)
+    ${builtins.concatStringsSep "\n"
+      (lib.mapAttrsToList (command: action: "${command} ${action}") cfg.commands)
     }
-    ${optionalString cfg.clearDefaultCommands "#stop"}
+    ${lib.optionalString cfg.clearDefaultCommands "#stop"}
 
     #line-edit
-    ${concatStringsSep "\n"
-      (mapAttrsToList (command: action: "${command} ${action}") cfg.lineEditingKeys)
+    ${builtins.concatStringsSep "\n"
+      (lib.mapAttrsToList (command: action: "${command} ${action}") cfg.lineEditingKeys)
     }
 
     #env
-    ${concatStringsSep "\n"
-      (mapAttrsToList (variable: values: "${variable}=${values}") cfg.envVariables)
+    ${builtins.concatStringsSep "\n"
+      (lib.mapAttrsToList (variable: values: "${variable}=${values}") cfg.envVariables)
     }
   '';
 
@@ -35,12 +33,12 @@ in
 
       # note that environment.nix sets PAGER=less, and
       # therefore also enables this module
-      enable = mkEnableOption "less, a file pager";
+      enable = lib.mkEnableOption "less, a file pager";
 
-      configFile = mkOption {
-        type = types.nullOr types.path;
+      configFile = lib.mkOption {
+        type = lib.types.nullOr lib.types.path;
         default = null;
-        example = literalExpression ''"''${pkgs.my-configs}/lesskey"'';
+        example = lib.literalExpression ''"''${pkgs.my-configs}/lesskey"'';
         description = ''
           Path to lesskey configuration file.
 
@@ -50,8 +48,8 @@ in
         '';
       };
 
-      commands = mkOption {
-        type = types.attrsOf types.str;
+      commands = lib.mkOption {
+        type = lib.types.attrsOf lib.types.str;
         default = {};
         example = {
           h = "noaction 5\\e(";
@@ -60,8 +58,8 @@ in
         description = "Defines new command keys.";
       };
 
-      clearDefaultCommands = mkOption {
-        type = types.bool;
+      clearDefaultCommands = lib.mkOption {
+        type = lib.types.bool;
         default = false;
         description = ''
           Clear all default commands.
@@ -70,8 +68,8 @@ in
         '';
       };
 
-      lineEditingKeys = mkOption {
-        type = types.attrsOf types.str;
+      lineEditingKeys = lib.mkOption {
+        type = lib.types.attrsOf lib.types.str;
         default = {};
         example = {
           e = "abort";
@@ -79,8 +77,8 @@ in
         description = "Defines new line-editing keys.";
       };
 
-      envVariables = mkOption {
-        type = types.attrsOf types.str;
+      envVariables = lib.mkOption {
+        type = lib.types.attrsOf lib.types.str;
         default = {
           LESS = "-R";
         };
@@ -90,17 +88,17 @@ in
         description = "Defines environment variables.";
       };
 
-      lessopen = mkOption {
-        type = types.nullOr types.str;
+      lessopen = lib.mkOption {
+        type = lib.types.nullOr lib.types.str;
         default = "|${pkgs.lesspipe}/bin/lesspipe.sh %s";
-        defaultText = literalExpression ''"|''${pkgs.lesspipe}/bin/lesspipe.sh %s"'';
+        defaultText = lib.literalExpression ''"|''${pkgs.lesspipe}/bin/lesspipe.sh %s"'';
         description = ''
           Before less opens a file, it first gives your input preprocessor a chance to modify the way the contents of the file are displayed.
         '';
       };
 
-      lessclose = mkOption {
-        type = types.nullOr types.str;
+      lessclose = lib.mkOption {
+        type = lib.types.nullOr lib.types.str;
         default = null;
         description = ''
           When less closes a file opened in such a way, it will call another program, called the input postprocessor,
@@ -110,26 +108,26 @@ in
     };
   };
 
-  config = mkIf cfg.enable {
+  config = lib.mkIf cfg.enable {
 
     environment.systemPackages = [ pkgs.less ];
 
     environment.variables = {
-      LESSKEYIN_SYSTEM = toString lessKey;
-    } // optionalAttrs (cfg.lessopen != null) {
+      LESSKEYIN_SYSTEM = builtins.toString lessKey;
+    } // lib.optionalAttrs (cfg.lessopen != null) {
       LESSOPEN = cfg.lessopen;
-    } // optionalAttrs (cfg.lessclose != null) {
+    } // lib.optionalAttrs (cfg.lessclose != null) {
       LESSCLOSE = cfg.lessclose;
     };
 
-    warnings = optional (
-      cfg.clearDefaultCommands && (all (x: x != "quit") (attrValues cfg.commands))
+    warnings = lib.optional (
+      cfg.clearDefaultCommands && (builtins.all (x: x != "quit") (builtins.attrValues cfg.commands))
     ) ''
       config.programs.less.clearDefaultCommands clears all default commands of less but there is no alternative binding for exiting.
       Consider adding a binding for 'quit'.
     '';
   };
 
-  meta.maintainers = with maintainers; [ johnazoidberg ];
+  meta.maintainers = with lib.maintainers; [ johnazoidberg ];
 
 }
diff --git a/nixos/modules/programs/liboping.nix b/nixos/modules/programs/liboping.nix
index 4433f9767d6e..5ff9ad74b158 100644
--- a/nixos/modules/programs/liboping.nix
+++ b/nixos/modules/programs/liboping.nix
@@ -1,16 +1,14 @@
 { config, lib, pkgs, ... }:
 
-with lib;
-
 let
   cfg = config.programs.liboping;
 in {
   options.programs.liboping = {
-    enable = mkEnableOption "liboping";
+    enable = lib.mkEnableOption "liboping";
   };
-  config = mkIf cfg.enable {
+  config = lib.mkIf cfg.enable {
     environment.systemPackages = with pkgs; [ liboping ];
-    security.wrappers = mkMerge (map (
+    security.wrappers = lib.mkMerge (builtins.map (
       exec: {
         "${exec}" = {
           owner = "root";
diff --git a/nixos/modules/programs/light.nix b/nixos/modules/programs/light.nix
index b1584a1b3d28..29fcc98a8e0a 100644
--- a/nixos/modules/programs/light.nix
+++ b/nixos/modules/programs/light.nix
@@ -1,7 +1,5 @@
 { config, lib, pkgs, ... }:
 
-with lib;
-
 let
   cfg = config.programs.light;
 
@@ -10,9 +8,9 @@ in
   options = {
     programs.light = {
 
-      enable = mkOption {
+      enable = lib.mkOption {
         default = false;
-        type = types.bool;
+        type = lib.types.bool;
         description = ''
           Whether to install Light backlight control command
           and udev rules granting access to members of the "video" group.
@@ -20,8 +18,8 @@ in
       };
 
       brightnessKeys = {
-        enable = mkOption {
-          type = types.bool;
+        enable = lib.mkOption {
+          type = lib.types.bool;
           default = false;
           description = ''
             Whether to enable brightness control with keyboard keys.
@@ -38,8 +36,8 @@ in
           '';
         };
 
-        step = mkOption {
-          type = types.int;
+        step = lib.mkOption {
+          type = lib.types.int;
           default = 10;
           description = ''
             The percentage value by which to increase/decrease brightness.
@@ -51,14 +49,14 @@ in
     };
   };
 
-  config = mkIf cfg.enable {
+  config = lib.mkIf cfg.enable {
     environment.systemPackages = [ pkgs.light ];
     services.udev.packages = [ pkgs.light ];
-    services.actkbd = mkIf cfg.brightnessKeys.enable {
+    services.actkbd = lib.mkIf cfg.brightnessKeys.enable {
       enable = true;
       bindings = let
         light = "${pkgs.light}/bin/light";
-        step = toString cfg.brightnessKeys.step;
+        step = builtins.toString cfg.brightnessKeys.step;
       in [
         {
           keys = [ 224 ];
diff --git a/nixos/modules/programs/mdevctl.nix b/nixos/modules/programs/mdevctl.nix
index be33835639d2..a7e7d01dffdf 100644
--- a/nixos/modules/programs/mdevctl.nix
+++ b/nixos/modules/programs/mdevctl.nix
@@ -1,14 +1,13 @@
 { config, pkgs, lib, ... }:
 
-with lib;
 let
   cfg = config.programs.mdevctl;
 in {
   options.programs.mdevctl = {
-    enable = mkEnableOption "Mediated Device Management";
+    enable = lib.mkEnableOption "Mediated Device Management";
   };
 
-  config = mkIf cfg.enable {
+  config = lib.mkIf cfg.enable {
     environment.systemPackages = with pkgs; [ mdevctl ];
 
     environment.etc."mdevctl.d/scripts.d/notifiers/.keep".text = "";
diff --git a/nixos/modules/programs/mepo.nix b/nixos/modules/programs/mepo.nix
index 22596892ff5d..783d2ad14962 100644
--- a/nixos/modules/programs/mepo.nix
+++ b/nixos/modules/programs/mepo.nix
@@ -1,15 +1,14 @@
 { pkgs, config, lib, ...}:
-with lib;
 let
   cfg = config.programs.mepo;
 in
 {
   options.programs.mepo = {
-    enable = mkEnableOption "Mepo, a fast, simple and hackable OSM map viewer";
+    enable = lib.mkEnableOption "Mepo, a fast, simple and hackable OSM map viewer";
 
     locationBackends = {
-      gpsd = mkOption {
-        type = types.bool;
+      gpsd = lib.mkOption {
+        type = lib.types.bool;
         default = false;
         description = ''
           Whether to enable location detection via gpsd.
@@ -17,21 +16,21 @@ in
         '';
       };
 
-      geoclue = mkOption {
-        type = types.bool;
+      geoclue = lib.mkOption {
+        type = lib.types.bool;
         default = true;
         description = "Whether to enable location detection via geoclue";
       };
     };
   };
 
-  config = mkIf cfg.enable {
+  config = lib.mkIf cfg.enable {
     environment.systemPackages = with pkgs; [
       mepo
     ] ++ lib.optional cfg.locationBackends.geoclue geoclue2-with-demo-agent
     ++ lib.optional cfg.locationBackends.gpsd gpsd;
 
-    services.geoclue2 = mkIf cfg.locationBackends.geoclue {
+    services.geoclue2 = lib.mkIf cfg.locationBackends.geoclue {
       enable = true;
       appConfig.where-am-i = {
         isAllowed = true;
@@ -42,5 +41,5 @@ in
     services.gpsd.enable = cfg.locationBackends.gpsd;
   };
 
-  meta.maintainers = with maintainers; [ laalsaas ];
+  meta.maintainers = with lib.maintainers; [ laalsaas ];
 }
diff --git a/nixos/modules/programs/mininet.nix b/nixos/modules/programs/mininet.nix
index a9190ed98900..ab862b21fe02 100644
--- a/nixos/modules/programs/mininet.nix
+++ b/nixos/modules/programs/mininet.nix
@@ -2,15 +2,13 @@
 # kernel must have NETNS/VETH/SCHED
 { config, lib, pkgs, ... }:
 
-with lib;
-
 let
   cfg = config.programs.mininet;
 in
 {
-  options.programs.mininet.enable = mkEnableOption "Mininet, an emulator for rapid prototyping of Software Defined Networks";
+  options.programs.mininet.enable = lib.mkEnableOption "Mininet, an emulator for rapid prototyping of Software Defined Networks";
 
-  config = mkIf cfg.enable {
+  config = lib.mkIf cfg.enable {
 
     virtualisation.vswitch.enable = true;
 
diff --git a/nixos/modules/programs/msmtp.nix b/nixos/modules/programs/msmtp.nix
index 9c067bdc9695..8a04acb3b7ea 100644
--- a/nixos/modules/programs/msmtp.nix
+++ b/nixos/modules/programs/msmtp.nix
@@ -1,27 +1,25 @@
 { config, lib, pkgs, ... }:
 
-with lib;
-
 let
   cfg = config.programs.msmtp;
 
 in {
-  meta.maintainers = with maintainers; [ pacien ];
+  meta.maintainers = with lib.maintainers; [ pacien ];
 
   options = {
     programs.msmtp = {
-      enable = mkEnableOption "msmtp - an SMTP client";
+      enable = lib.mkEnableOption "msmtp - an SMTP client";
 
-      setSendmail = mkOption {
-        type = types.bool;
+      setSendmail = lib.mkOption {
+        type = lib.types.bool;
         default = true;
         description = ''
           Whether to set the system sendmail to msmtp's.
         '';
       };
 
-      defaults = mkOption {
-        type = types.attrs;
+      defaults = lib.mkOption {
+        type = lib.types.attrs;
         default = {};
         example = {
           aliases = "/etc/aliases";
@@ -34,8 +32,8 @@ in {
         '';
       };
 
-      accounts = mkOption {
-        type = with types; attrsOf attrs;
+      accounts = lib.mkOption {
+        type = with lib.types; attrsOf attrs;
         default = {};
         example = {
           "default" = {
@@ -59,8 +57,8 @@ in {
         '';
       };
 
-      extraConfig = mkOption {
-        type = types.lines;
+      extraConfig = lib.mkOption {
+        type = lib.types.lines;
         default = "";
         description = ''
           Extra lines to add to the msmtp configuration verbatim.
@@ -70,10 +68,10 @@ in {
     };
   };
 
-  config = mkIf cfg.enable {
+  config = lib.mkIf cfg.enable {
     environment.systemPackages = [ pkgs.msmtp ];
 
-    services.mail.sendmailSetuidWrapper = mkIf cfg.setSendmail {
+    services.mail.sendmailSetuidWrapper = lib.mkIf cfg.setSendmail {
       program = "sendmail";
       source = "${pkgs.msmtp}/bin/sendmail";
       setuid = false;
@@ -86,10 +84,10 @@ in {
       mkValueString = v:
         if v == true then "on"
         else if v == false then "off"
-        else generators.mkValueStringDefault {} v;
+        else lib.generators.mkValueStringDefault {} v;
       mkKeyValueString = k: v: "${k} ${mkValueString v}";
       mkInnerSectionString =
-        attrs: concatStringsSep "\n" (mapAttrsToList mkKeyValueString attrs);
+        attrs: builtins.concatStringsSep "\n" (lib.mapAttrsToList mkKeyValueString attrs);
       mkAccountString = name: attrs: ''
         account ${name}
         ${mkInnerSectionString attrs}
@@ -98,7 +96,7 @@ in {
       defaults
       ${mkInnerSectionString cfg.defaults}
 
-      ${concatStringsSep "\n" (mapAttrsToList mkAccountString cfg.accounts)}
+      ${builtins.concatStringsSep "\n" (lib.mapAttrsToList mkAccountString cfg.accounts)}
 
       ${cfg.extraConfig}
     '';
diff --git a/nixos/modules/programs/mtr.nix b/nixos/modules/programs/mtr.nix
index 6a767df15f09..1a9deba98966 100644
--- a/nixos/modules/programs/mtr.nix
+++ b/nixos/modules/programs/mtr.nix
@@ -1,15 +1,13 @@
 { config, lib, pkgs, ... }:
 
-with lib;
-
 let
   cfg = config.programs.mtr;
 
 in {
   options = {
     programs.mtr = {
-      enable = mkOption {
-        type = types.bool;
+      enable = lib.mkOption {
+        type = lib.types.bool;
         default = false;
         description = ''
           Whether to add mtr to the global environment and configure a
@@ -17,12 +15,12 @@ in {
         '';
       };
 
-      package = mkPackageOption pkgs "mtr" { };
+      package = lib.mkPackageOption pkgs "mtr" { };
     };
   };
 
-  config = mkIf cfg.enable {
-    environment.systemPackages = with pkgs; [ cfg.package ];
+  config = lib.mkIf cfg.enable {
+    environment.systemPackages = [ cfg.package ];
 
     security.wrappers.mtr-packet = {
       owner = "root";
diff --git a/nixos/modules/programs/nbd.nix b/nixos/modules/programs/nbd.nix
index fea9bc1ff71a..1e319f027345 100644
--- a/nixos/modules/programs/nbd.nix
+++ b/nixos/modules/programs/nbd.nix
@@ -1,18 +1,16 @@
 { config, lib, pkgs, ... }:
 
-with lib;
-
 let
   cfg = config.programs.nbd;
 in
 {
   options = {
     programs.nbd = {
-      enable = mkEnableOption "Network Block Device (nbd) support";
+      enable = lib.mkEnableOption "Network Block Device (nbd) support";
     };
   };
 
-  config = mkIf cfg.enable {
+  config = lib.mkIf cfg.enable {
     environment.systemPackages = with pkgs; [ nbd ];
     boot.kernelModules = [ "nbd" ];
   };
diff --git a/nixos/modules/programs/neovim.nix b/nixos/modules/programs/neovim.nix
index 6f6829444a64..8fe6a664b675 100644
--- a/nixos/modules/programs/neovim.nix
+++ b/nixos/modules/programs/neovim.nix
@@ -1,14 +1,12 @@
 { config, lib, pkgs, ... }:
 
-with lib;
-
 let
   cfg = config.programs.neovim;
 in
 {
   options.programs.neovim = {
-    enable = mkOption {
-      type = types.bool;
+    enable = lib.mkOption {
+      type = lib.types.bool;
       default = false;
       example = true;
       description = ''
@@ -21,8 +19,8 @@ in
       '';
     };
 
-    defaultEditor = mkOption {
-      type = types.bool;
+    defaultEditor = lib.mkOption {
+      type = lib.types.bool;
       default = false;
       description = ''
         When enabled, installs neovim and configures neovim to be the default editor
@@ -30,44 +28,44 @@ in
       '';
     };
 
-    viAlias = mkOption {
-      type = types.bool;
+    viAlias = lib.mkOption {
+      type = lib.types.bool;
       default = false;
       description = ''
         Symlink {command}`vi` to {command}`nvim` binary.
       '';
     };
 
-    vimAlias = mkOption {
-      type = types.bool;
+    vimAlias = lib.mkOption {
+      type = lib.types.bool;
       default = false;
       description = ''
         Symlink {command}`vim` to {command}`nvim` binary.
       '';
     };
 
-    withRuby = mkOption {
-      type = types.bool;
+    withRuby = lib.mkOption {
+      type = lib.types.bool;
       default = true;
       description = "Enable Ruby provider.";
     };
 
-    withPython3 = mkOption {
-      type = types.bool;
+    withPython3 = lib.mkOption {
+      type = lib.types.bool;
       default = true;
       description = "Enable Python 3 provider.";
     };
 
-    withNodeJs = mkOption {
-      type = types.bool;
+    withNodeJs = lib.mkOption {
+      type = lib.types.bool;
       default = false;
       description = "Enable Node provider.";
     };
 
-    configure = mkOption {
-      type = types.attrs;
+    configure = lib.mkOption {
+      type = lib.types.attrs;
       default = { };
-      example = literalExpression ''
+      example = lib.literalExpression ''
         {
           customRC = '''
             " here your custom configuration goes!
@@ -86,31 +84,31 @@ in
       '';
     };
 
-    package = mkPackageOption pkgs "neovim-unwrapped" { };
+    package = lib.mkPackageOption pkgs "neovim-unwrapped" { };
 
-    finalPackage = mkOption {
-      type = types.package;
+    finalPackage = lib.mkOption {
+      type = lib.types.package;
       visible = false;
       readOnly = true;
       description = "Resulting customized neovim package.";
     };
 
-    runtime = mkOption {
+    runtime = lib.mkOption {
       default = { };
-      example = literalExpression ''
+      example = lib.literalExpression ''
         { "ftplugin/c.vim".text = "setlocal omnifunc=v:lua.vim.lsp.omnifunc"; }
       '';
       description = ''
         Set of files that have to be linked in {file}`runtime`.
       '';
 
-      type = with types; attrsOf (submodule (
+      type = with lib.types; attrsOf (submodule (
         { name, config, ... }:
         {
           options = {
 
-            enable = mkOption {
-              type = types.bool;
+            enable = lib.mkOption {
+              type = lib.types.bool;
               default = true;
               description = ''
                 Whether this runtime directory should be generated.  This
@@ -118,49 +116,49 @@ in
               '';
             };
 
-            target = mkOption {
-              type = types.str;
+            target = lib.mkOption {
+              type = lib.types.str;
               description = ''
                 Name of symlink.  Defaults to the attribute
                 name.
               '';
             };
 
-            text = mkOption {
+            text = lib.mkOption {
               default = null;
-              type = types.nullOr types.lines;
+              type = lib.types.nullOr lib.types.lines;
               description = "Text of the file.";
             };
 
-            source = mkOption {
+            source = lib.mkOption {
               default = null;
-              type = types.nullOr types.path;
+              type = lib.types.nullOr lib.types.path;
               description = "Path of the source file.";
             };
 
           };
 
-          config.target = mkDefault name;
+          config.target = lib.mkDefault name;
         }
       ));
 
     };
   };
 
-  config = mkIf cfg.enable {
+  config = lib.mkIf cfg.enable {
     environment.systemPackages = [
       cfg.finalPackage
     ];
-    environment.variables.EDITOR = mkIf cfg.defaultEditor (mkOverride 900 "nvim");
+    environment.variables.EDITOR = lib.mkIf cfg.defaultEditor (lib.mkOverride 900 "nvim");
 
-    environment.etc = listToAttrs (attrValues (mapAttrs
+    environment.etc = builtins.listToAttrs (builtins.attrValues (builtins.mapAttrs
       (name: value: {
         name = "xdg/nvim/${name}";
-        value = removeAttrs
+        value = builtins.removeAttrs
           (value // {
             target = "xdg/nvim/${value.target}";
           })
-          (optionals (isNull value.source) [ "source" ]);
+          (lib.optionals (builtins.isNull value.source) [ "source" ]);
       })
       cfg.runtime));
 
diff --git a/nixos/modules/programs/nethoscope.nix b/nixos/modules/programs/nethoscope.nix
index 495548e9c656..7bc1f61b31ea 100644
--- a/nixos/modules/programs/nethoscope.nix
+++ b/nixos/modules/programs/nethoscope.nix
@@ -1,16 +1,14 @@
 { config, lib, pkgs, ... }:
 
-with lib;
-
 let cfg = config.programs.nethoscope;
 in
 {
-  meta.maintainers = with maintainers; [ _0x4A6F ];
+  meta.maintainers = with lib.maintainers; [ _0x4A6F ];
 
   options = {
     programs.nethoscope = {
-      enable = mkOption {
-        type = types.bool;
+      enable = lib.mkOption {
+        type = lib.types.bool;
         default = false;
         description = ''
           Whether to add nethoscope to the global environment and configure a
@@ -20,7 +18,7 @@ in
     };
   };
 
-  config = mkIf cfg.enable {
+  config = lib.mkIf cfg.enable {
     environment.systemPackages = with pkgs; [ nethoscope ];
     security.wrappers.nethoscope = {
       source = "${pkgs.nethoscope}/bin/nethoscope";
diff --git a/nixos/modules/programs/nncp.nix b/nixos/modules/programs/nncp.nix
index aa2e7c7a6e5b..3feccef4cf11 100644
--- a/nixos/modules/programs/nncp.nix
+++ b/nixos/modules/programs/nncp.nix
@@ -1,6 +1,5 @@
 { config, lib, pkgs, ... }:
 
-with lib;
 let
   nncpCfgFile = "/run/nncp.hjson";
   programCfg = config.programs.nncp;
@@ -11,10 +10,10 @@ in {
   options.programs.nncp = {
 
     enable =
-      mkEnableOption "NNCP (Node to Node copy) utilities and configuration";
+      lib.mkEnableOption "NNCP (Node to Node copy) utilities and configuration";
 
-    group = mkOption {
-      type = types.str;
+    group = lib.mkOption {
+      type = lib.types.str;
       default = "uucp";
       description = ''
         The group under which NNCP files shall be owned.
@@ -23,10 +22,10 @@ in {
       '';
     };
 
-    package = mkPackageOption pkgs "nncp" { };
+    package = lib.mkPackageOption pkgs "nncp" { };
 
-    secrets = mkOption {
-      type = with types; listOf str;
+    secrets = lib.mkOption {
+      type = with lib.types; listOf str;
       example = [ "/run/keys/nncp.hjson" ];
       description = ''
         A list of paths to NNCP configuration files that should not be
@@ -35,7 +34,7 @@ in {
       '';
     };
 
-    settings = mkOption {
+    settings = lib.mkOption {
       type = settingsFormat.type;
       description = ''
         NNCP configuration, see
@@ -52,7 +51,7 @@ in {
 
   };
 
-  config = mkIf programCfg.enable {
+  config = lib.mkIf programCfg.enable {
 
     environment = {
       systemPackages = [ pkg ];
@@ -60,8 +59,8 @@ in {
     };
 
     programs.nncp.settings = {
-      spool = mkDefault "/var/spool/nncp";
-      log = mkDefault "/var/spool/nncp/log";
+      spool = lib.mkDefault "/var/spool/nncp";
+      log = lib.mkDefault "/var/spool/nncp/log";
     };
 
     systemd.tmpfiles.rules = [
@@ -77,7 +76,7 @@ in {
       script = ''
         umask u=rw
         nncpCfgDir=$(mktemp --directory nncp.XXX)
-        for f in ${jsonCfgFile} ${toString config.programs.nncp.secrets}; do
+        for f in ${jsonCfgFile} ${builtins.toString config.programs.nncp.secrets}; do
           tmpdir=$(mktemp --directory nncp.XXX)
           nncp-cfgdir -cfg $f -dump $tmpdir
           find $tmpdir -size 1c -delete
diff --git a/nixos/modules/programs/noisetorch.nix b/nixos/modules/programs/noisetorch.nix
index 70a0441bd767..5e37061d9a1d 100644
--- a/nixos/modules/programs/noisetorch.nix
+++ b/nixos/modules/programs/noisetorch.nix
@@ -1,17 +1,15 @@
 { config, pkgs, lib, ... }:
 
-with lib;
-
 let cfg = config.programs.noisetorch;
 in
 {
   options.programs.noisetorch = {
-    enable = mkEnableOption "noisetorch (+ setcap wrapper), a virtual microphone device with noise suppression";
+    enable = lib.mkEnableOption "noisetorch (+ setcap wrapper), a virtual microphone device with noise suppression";
 
-    package = mkPackageOption pkgs "noisetorch" { };
+    package = lib.mkPackageOption pkgs "noisetorch" { };
   };
 
-  config = mkIf cfg.enable {
+  config = lib.mkIf cfg.enable {
     security.wrappers.noisetorch = {
       owner = "root";
       group = "root";
diff --git a/nixos/modules/programs/npm.nix b/nixos/modules/programs/npm.nix
index b379f0165bfe..470188b879b6 100644
--- a/nixos/modules/programs/npm.nix
+++ b/nixos/modules/programs/npm.nix
@@ -1,7 +1,5 @@
 { config, lib, pkgs, ... }:
 
-with lib;
-
 let
   cfg = config.programs.npm;
 in
@@ -11,13 +9,13 @@ in
 
   options = {
     programs.npm = {
-      enable = mkEnableOption "{command}`npm` global config";
+      enable = lib.mkEnableOption "{command}`npm` global config";
 
-      package = mkPackageOption pkgs [ "nodePackages" "npm" ] {
+      package = lib.mkPackageOption pkgs [ "nodePackages" "npm" ] {
         example = "nodePackages_13_x.npm";
       };
 
-      npmrc = mkOption {
+      npmrc = lib.mkOption {
         type = lib.types.lines;
         description = ''
           The system-wide npm configuration.
diff --git a/nixos/modules/programs/oblogout.nix b/nixos/modules/programs/oblogout.nix
index a039b0623b52..f09fbdc06242 100644
--- a/nixos/modules/programs/oblogout.nix
+++ b/nixos/modules/programs/oblogout.nix
@@ -1,11 +1,9 @@
 { config, lib, pkgs, ... }:
 
-with lib;
-
 {
 
   imports = [
-    (mkRemovedOptionModule [ "programs" "oblogout" ] "programs.oblogout has been removed from NixOS. This is because the oblogout repository has been archived upstream.")
+    (lib.mkRemovedOptionModule [ "programs" "oblogout" ] "programs.oblogout has been removed from NixOS. This is because the oblogout repository has been archived upstream.")
   ];
 
 }
diff --git a/nixos/modules/programs/openvpn3.nix b/nixos/modules/programs/openvpn3.nix
index 6415cccecb4f..10042b44471f 100644
--- a/nixos/modules/programs/openvpn3.nix
+++ b/nixos/modules/programs/openvpn3.nix
@@ -1,19 +1,17 @@
 { config, lib, pkgs, ... }:
 
-with lib;
-
 let
   cfg = config.programs.openvpn3;
 in
 {
   options.programs.openvpn3 = {
-    enable = mkEnableOption "the openvpn3 client";
-    package = mkOption {
-      type = types.package;
+    enable = lib.mkEnableOption "the openvpn3 client";
+    package = lib.mkOption {
+      type = lib.types.package;
       default = pkgs.openvpn3.override {
         enableSystemdResolved = config.services.resolved.enable;
       };
-      defaultText = literalExpression ''pkgs.openvpn3.override {
+      defaultText = lib.literalExpression ''pkgs.openvpn3.override {
         enableSystemdResolved = config.services.resolved.enable;
       }'';
       description = ''
@@ -22,7 +20,7 @@ in
     };
   };
 
-  config = mkIf cfg.enable {
+  config = lib.mkIf cfg.enable {
     services.dbus.packages = [
       cfg.package
     ];
diff --git a/nixos/modules/programs/pantheon-tweaks.nix b/nixos/modules/programs/pantheon-tweaks.nix
index 0b8a19ea22c0..b7258e2eb4bf 100644
--- a/nixos/modules/programs/pantheon-tweaks.nix
+++ b/nixos/modules/programs/pantheon-tweaks.nix
@@ -1,19 +1,17 @@
 { config, lib, pkgs, ... }:
 
-with lib;
-
 {
   meta = {
-    maintainers = teams.pantheon.members;
+    maintainers = lib.teams.pantheon.members;
   };
 
   ###### interface
   options = {
-    programs.pantheon-tweaks.enable = mkEnableOption "Pantheon Tweaks, an unofficial system settings panel for Pantheon";
+    programs.pantheon-tweaks.enable = lib.mkEnableOption "Pantheon Tweaks, an unofficial system settings panel for Pantheon";
   };
 
   ###### implementation
-  config = mkIf config.programs.pantheon-tweaks.enable {
+  config = lib.mkIf config.programs.pantheon-tweaks.enable {
     services.xserver.desktopManager.pantheon.extraSwitchboardPlugs = [ pkgs.pantheon-tweaks ];
   };
 }
diff --git a/nixos/modules/programs/plotinus.nix b/nixos/modules/programs/plotinus.nix
index 41c75b69a2d2..835db049d862 100644
--- a/nixos/modules/programs/plotinus.nix
+++ b/nixos/modules/programs/plotinus.nix
@@ -1,7 +1,5 @@
 { config, lib, pkgs, ... }:
 
-with lib;
-
 let
   cfg = config.programs.plotinus;
 in
@@ -15,21 +13,21 @@ in
 
   options = {
     programs.plotinus = {
-      enable = mkOption {
+      enable = lib.mkOption {
         default = false;
         description = ''
           Whether to enable the Plotinus GTK 3 plugin. Plotinus provides a
           popup (triggered by Ctrl-Shift-P) to search the menus of a
           compatible application.
         '';
-        type = types.bool;
+        type = lib.types.bool;
       };
     };
   };
 
   ###### implementation
 
-  config = mkIf cfg.enable {
+  config = lib.mkIf cfg.enable {
     environment.sessionVariables.XDG_DATA_DIRS = [ "${pkgs.plotinus}/share/gsettings-schemas/${pkgs.plotinus.name}" ];
     environment.variables.GTK3_MODULES = [ "${pkgs.plotinus}/lib/libplotinus.so" ];
   };
diff --git a/nixos/modules/programs/proxychains.nix b/nixos/modules/programs/proxychains.nix
index b15475dac075..86bbf16a64ce 100644
--- a/nixos/modules/programs/proxychains.nix
+++ b/nixos/modules/programs/proxychains.nix
@@ -1,15 +1,14 @@
 { config, lib, pkgs, ... }:
-with lib;
 let
 
   cfg = config.programs.proxychains;
 
   configFile = ''
     ${cfg.chain.type}_chain
-    ${optionalString (cfg.chain.type == "random")
+    ${lib.optionalString (cfg.chain.type == "random")
     "chain_len = ${builtins.toString cfg.chain.length}"}
-    ${optionalString cfg.proxyDNS "proxy_dns"}
-    ${optionalString cfg.quietMode "quiet_mode"}
+    ${lib.optionalString cfg.proxyDNS "proxy_dns"}
+    ${lib.optionalString cfg.quietMode "quiet_mode"}
     remote_dns_subnet ${builtins.toString cfg.remoteDNSSubnet}
     tcp_read_time_out ${builtins.toString cfg.tcpReadTimeOut}
     tcp_connect_time_out ${builtins.toString cfg.tcpConnectTimeOut}
@@ -22,20 +21,20 @@ let
 
   proxyOptions = {
     options = {
-      enable = mkEnableOption "this proxy";
+      enable = lib.mkEnableOption "this proxy";
 
-      type = mkOption {
-        type = types.enum [ "http" "socks4" "socks5" ];
+      type = lib.mkOption {
+        type = lib.types.enum [ "http" "socks4" "socks5" ];
         description = "Proxy type.";
       };
 
-      host = mkOption {
-        type = types.str;
+      host = lib.mkOption {
+        type = lib.types.str;
         description = "Proxy host or IP address.";
       };
 
-      port = mkOption {
-        type = types.port;
+      port = lib.mkOption {
+        type = lib.types.port;
         description = "Proxy port";
       };
     };
@@ -49,15 +48,15 @@ in {
 
     programs.proxychains = {
 
-      enable = mkEnableOption "proxychains configuration";
+      enable = lib.mkEnableOption "proxychains configuration";
 
-      package = mkPackageOption pkgs "proxychains" {
+      package = lib.mkPackageOption pkgs "proxychains" {
         example = "proxychains-ng";
       };
 
       chain = {
-        type = mkOption {
-          type = types.enum [ "dynamic" "strict" "random" ];
+        type = lib.mkOption {
+          type = lib.types.enum [ "dynamic" "strict" "random" ];
           default = "strict";
           description = ''
             `dynamic` - Each connection will be done via chained proxies
@@ -75,8 +74,8 @@ in {
             (or proxy chain, see {option}`programs.proxychains.chain.length`) from the list.
           '';
         };
-        length = mkOption {
-          type = types.nullOr types.int;
+        length = lib.mkOption {
+          type = lib.types.nullOr lib.types.int;
           default = null;
           description = ''
             Chain length for random chain.
@@ -84,47 +83,47 @@ in {
         };
       };
 
-      proxyDNS = mkOption {
-        type = types.bool;
+      proxyDNS = lib.mkOption {
+        type = lib.types.bool;
         default = true;
         description = "Proxy DNS requests - no leak for DNS data.";
       };
 
-      quietMode = mkEnableOption "Quiet mode (no output from the library)";
+      quietMode = lib.mkEnableOption "Quiet mode (no output from the library)";
 
-      remoteDNSSubnet = mkOption {
-        type = types.enum [ 10 127 224 ];
+      remoteDNSSubnet = lib.mkOption {
+        type = lib.types.enum [ 10 127 224 ];
         default = 224;
         description = ''
           Set the class A subnet number to use for the internal remote DNS mapping, uses the reserved 224.x.x.x range by default.
         '';
       };
 
-      tcpReadTimeOut = mkOption {
-        type = types.int;
+      tcpReadTimeOut = lib.mkOption {
+        type = lib.types.int;
         default = 15000;
         description = "Connection read time-out in milliseconds.";
       };
 
-      tcpConnectTimeOut = mkOption {
-        type = types.int;
+      tcpConnectTimeOut = lib.mkOption {
+        type = lib.types.int;
         default = 8000;
         description = "Connection time-out in milliseconds.";
       };
 
-      localnet = mkOption {
-        type = types.str;
+      localnet = lib.mkOption {
+        type = lib.types.str;
         default = "127.0.0.0/255.0.0.0";
         description = "By default enable localnet for loopback address ranges.";
       };
 
-      proxies = mkOption {
-        type = types.attrsOf (types.submodule proxyOptions);
+      proxies = lib.mkOption {
+        type = lib.types.attrsOf (lib.types.submodule proxyOptions);
         description = ''
           Proxies to be used by proxychains.
         '';
 
-        example = literalExpression ''
+        example = lib.literalExpression ''
           { myproxy =
             { type = "socks4";
               host = "127.0.0.1";
@@ -140,11 +139,11 @@ in {
 
   ###### implementation
 
-  meta.maintainers = with maintainers; [ sorki ];
+  meta.maintainers = with lib.maintainers; [ sorki ];
 
-  config = mkIf cfg.enable {
+  config = lib.mkIf cfg.enable {
 
-    assertions = singleton {
+    assertions = lib.singleton {
       assertion = cfg.chain.type != "random" && cfg.chain.length == null;
       message = ''
         Option `programs.proxychains.chain.length`
@@ -152,9 +151,9 @@ in {
       '';
     };
 
-    programs.proxychains.proxies = mkIf config.services.tor.client.enable
+    programs.proxychains.proxies = lib.mkIf config.services.tor.client.enable
       {
-        torproxy = mkDefault {
+        torproxy = lib.mkDefault {
           enable = true;
           type = "socks4";
           host = "127.0.0.1";
diff --git a/nixos/modules/programs/qt5ct.nix b/nixos/modules/programs/qt5ct.nix
index 3ff47b355915..bc7b28b9c6e9 100644
--- a/nixos/modules/programs/qt5ct.nix
+++ b/nixos/modules/programs/qt5ct.nix
@@ -1,9 +1,7 @@
 { lib, ... }:
 
-with lib;
-
 {
   imports = [
-    (mkRemovedOptionModule [ "programs" "qt5ct" "enable" ] "Use qt5.platformTheme = \"qt5ct\" instead.")
+    (lib.mkRemovedOptionModule [ "programs" "qt5ct" "enable" ] "Use qt5.platformTheme = \"qt5ct\" instead.")
   ];
 }
diff --git a/nixos/modules/programs/rust-motd.nix b/nixos/modules/programs/rust-motd.nix
index 93240fcdd85e..301b7cebb7f8 100644
--- a/nixos/modules/programs/rust-motd.nix
+++ b/nixos/modules/programs/rust-motd.nix
@@ -1,7 +1,5 @@
 { config, lib, pkgs, ... }:
 
-with lib;
-
 let
   cfg = config.programs.rust-motd;
   format = pkgs.formats.toml { };
@@ -24,10 +22,10 @@ let
     '';
 in {
   options.programs.rust-motd = {
-    enable = mkEnableOption "rust-motd, a Message Of The Day (MOTD) generator";
-    enableMotdInSSHD = mkOption {
+    enable = lib.mkEnableOption "rust-motd, a Message Of The Day (MOTD) generator";
+    enableMotdInSSHD = lib.mkOption {
       default = true;
-      type = types.bool;
+      type = lib.types.bool;
       description = ''
         Whether to let `openssh` print the
         result when entering a new `ssh`-session.
@@ -36,18 +34,18 @@ in {
         the latter option is incompatible with this module.
       '';
     };
-    refreshInterval = mkOption {
+    refreshInterval = lib.mkOption {
       default = "*:0/5";
-      type = types.str;
+      type = lib.types.str;
       description = ''
         Interval in which the {manpage}`motd(5)` file is refreshed.
         For possible formats, please refer to {manpage}`systemd.time(7)`.
       '';
     };
-    order = mkOption {
-      type = types.listOf types.str;
-      default = attrNames cfg.settings;
-      defaultText = literalExpression "attrNames cfg.settings";
+    order = lib.mkOption {
+      type = lib.types.listOf lib.types.str;
+      default = builtins.attrNames cfg.settings;
+      defaultText = lib.literalExpression "attrNames cfg.settings";
       description = ''
         The order of the sections in [](#opt-programs.rust-motd.settings).
         By default they are ordered alphabetically.
@@ -79,8 +77,8 @@ in {
         makes sure that `uptime` is placed before `banner` in the motd.
       '';
     };
-    settings = mkOption {
-      type = types.attrsOf format.type;
+    settings = lib.mkOption {
+      type = lib.types.attrsOf format.type;
       description = ''
         Settings on what to generate. Please read the
         [upstream documentation](https://github.com/rust-motd/rust-motd/blob/main/README.md#configuration)
@@ -88,14 +86,14 @@ in {
       '';
     };
   };
-  config = mkIf cfg.enable {
+  config = lib.mkIf cfg.enable {
     assertions = [
       { assertion = config.users.motd == null;
         message = ''
           `programs.rust-motd` is incompatible with `users.motd`!
         '';
       }
-      { assertion = sort (a: b: a < b) cfg.order == attrNames cfg.settings;
+      { assertion = builtins.sort (a: b: a < b) cfg.order == builtins.attrNames cfg.settings;
         message = ''
           Please ensure that every section from `programs.rust-motd.settings` is present in
           `programs.rust-motd.order`.
@@ -138,12 +136,12 @@ in {
       wantedBy = [ "timers.target" ];
       timerConfig.OnCalendar = cfg.refreshInterval;
     };
-    security.pam.services.sshd.text = mkIf cfg.enableMotdInSSHD (mkDefault (mkAfter ''
+    security.pam.services.sshd.text = lib.mkIf cfg.enableMotdInSSHD (lib.mkDefault (lib.mkAfter ''
       session optional ${pkgs.pam}/lib/security/pam_motd.so motd=/var/lib/rust-motd/motd
     ''));
-    services.openssh.extraConfig = mkIf (cfg.settings ? last_login && cfg.settings.last_login != {}) ''
+    services.openssh.extraConfig = lib.mkIf (cfg.settings ? last_login && cfg.settings.last_login != {}) ''
       PrintLastLog no
     '';
   };
-  meta.maintainers = with maintainers; [ ma27 ];
+  meta.maintainers = with lib.maintainers; [ ma27 ];
 }
diff --git a/nixos/modules/programs/sedutil.nix b/nixos/modules/programs/sedutil.nix
index c62ca24eaa01..978aaa5c82d5 100644
--- a/nixos/modules/programs/sedutil.nix
+++ b/nixos/modules/programs/sedutil.nix
@@ -1,14 +1,12 @@
 { config, lib, pkgs, ... }:
 
-with lib;
-
 let
   cfg = config.programs.sedutil;
 
 in {
-  options.programs.sedutil.enable = mkEnableOption "sedutil, to manage self encrypting drives that conform to the Trusted Computing Group OPAL 2.0 SSC specification";
+  options.programs.sedutil.enable = lib.mkEnableOption "sedutil, to manage self encrypting drives that conform to the Trusted Computing Group OPAL 2.0 SSC specification";
 
-  config = mkIf cfg.enable {
+  config = lib.mkIf cfg.enable {
     boot.kernelParams = [
       "libata.allow_tpm=1"
     ];
diff --git a/nixos/modules/programs/shadow.nix b/nixos/modules/programs/shadow.nix
index 2d20644ec51e..f09bfaa5393d 100644
--- a/nixos/modules/programs/shadow.nix
+++ b/nixos/modules/programs/shadow.nix
@@ -1,15 +1,14 @@
 # Configuration for the pwdutils suite of tools: passwd, useradd, etc.
 { config, lib, utils, pkgs, ... }:
-with lib;
 let
   cfg = config.security.loginDefs;
 in
 {
-  options = with types; {
+  options = with lib.types; {
     security.loginDefs = {
-      package = mkPackageOption pkgs "shadow" { };
+      package = lib.mkPackageOption pkgs "shadow" { };
 
-      chfnRestrict = mkOption {
+      chfnRestrict = lib.mkOption {
         description = ''
           Use chfn SUID to allow non-root users to change their account GECOS information.
         '';
@@ -17,7 +16,7 @@ in
         default = null;
       };
 
-      settings = mkOption {
+      settings = lib.mkOption {
         description = ''
           Config options for the /etc/login.defs file, that defines
           the site-specific configuration for the shadow password suite.
@@ -35,68 +34,68 @@ in
                by systemd for features like ConditionUser=@system and systemd-sysusers
               */
           options = {
-            DEFAULT_HOME = mkOption {
+            DEFAULT_HOME = lib.mkOption {
               description = "Indicate if login is allowed if we can't cd to the home directory.";
               default = "yes";
               type = enum [ "yes" "no" ];
             };
 
-            ENCRYPT_METHOD = mkOption {
+            ENCRYPT_METHOD = lib.mkOption {
               description = "This defines the system default encryption algorithm for encrypting passwords.";
               # The default crypt() method, keep in sync with the PAM default
               default = "YESCRYPT";
               type = enum [ "YESCRYPT" "SHA512" "SHA256" "MD5" "DES"];
             };
 
-            SYS_UID_MIN = mkOption {
+            SYS_UID_MIN = lib.mkOption {
               description = "Range of user IDs used for the creation of system users by useradd or newusers.";
               default = 400;
               type = int;
             };
 
-            SYS_UID_MAX = mkOption {
+            SYS_UID_MAX = lib.mkOption {
               description = "Range of user IDs used for the creation of system users by useradd or newusers.";
               default = 999;
               type = int;
             };
 
-            UID_MIN = mkOption {
+            UID_MIN = lib.mkOption {
               description = "Range of user IDs used for the creation of regular users by useradd or newusers.";
               default = 1000;
               type = int;
             };
 
-            UID_MAX = mkOption {
+            UID_MAX = lib.mkOption {
               description = "Range of user IDs used for the creation of regular users by useradd or newusers.";
               default = 29999;
               type = int;
             };
 
-            SYS_GID_MIN = mkOption {
+            SYS_GID_MIN = lib.mkOption {
               description = "Range of group IDs used for the creation of system groups by useradd, groupadd, or newusers";
               default = 400;
               type = int;
             };
 
-            SYS_GID_MAX = mkOption {
+            SYS_GID_MAX = lib.mkOption {
               description = "Range of group IDs used for the creation of system groups by useradd, groupadd, or newusers";
               default = 999;
               type = int;
             };
 
-            GID_MIN = mkOption {
+            GID_MIN = lib.mkOption {
               description = "Range of group IDs used for the creation of regular groups by useradd, groupadd, or newusers.";
               default = 1000;
               type = int;
             };
 
-            GID_MAX = mkOption {
+            GID_MAX = lib.mkOption {
               description = "Range of group IDs used for the creation of regular groups by useradd, groupadd, or newusers.";
               default = 29999;
               type = int;
             };
 
-            TTYGROUP = mkOption {
+            TTYGROUP = lib.mkOption {
               description = ''
                 The terminal permissions: the login tty will be owned by the TTYGROUP group,
                 and the permissions will be set to TTYPERM'';
@@ -104,7 +103,7 @@ in
               type = str;
             };
 
-            TTYPERM = mkOption {
+            TTYPERM = lib.mkOption {
               description = ''
                 The terminal permissions: the login tty will be owned by the TTYGROUP group,
                 and the permissions will be set to TTYPERM'';
@@ -113,7 +112,7 @@ in
             };
 
             # Ensure privacy for newly created home directories.
-            UMASK = mkOption {
+            UMASK = lib.mkOption {
               description = "The file mode creation mask is initialized to this value.";
               default = "077";
               type = str;
@@ -124,7 +123,7 @@ in
       };
     };
 
-    users.defaultUserShell = mkOption {
+    users.defaultUserShell = lib.mkOption {
       description = ''
         This option defines the default shell assigned to user
         accounts. This can be either a full system path or a shell package.
@@ -132,7 +131,7 @@ in
         This must not be a store path, since the path is
         used outside the store (in particular in /etc/passwd).
       '';
-      example = literalExpression "pkgs.zsh";
+      example = lib.literalExpression "pkgs.zsh";
       type = either path shellPackage;
     };
   };
@@ -160,18 +159,18 @@ in
     ];
 
     security.loginDefs.settings.CHFN_RESTRICT =
-      mkIf (cfg.chfnRestrict != null) cfg.chfnRestrict;
+      lib.mkIf (cfg.chfnRestrict != null) cfg.chfnRestrict;
 
-    environment.systemPackages = optional config.users.mutableUsers cfg.package
-      ++ optional (types.shellPackage.check config.users.defaultUserShell) config.users.defaultUserShell
-      ++ optional (cfg.chfnRestrict != null) pkgs.util-linux;
+    environment.systemPackages = lib.optional config.users.mutableUsers cfg.package
+      ++ lib.optional (lib.types.shellPackage.check config.users.defaultUserShell) config.users.defaultUserShell
+      ++ lib.optional (cfg.chfnRestrict != null) pkgs.util-linux;
 
     environment.etc =
       # Create custom toKeyValue generator
       # see https://man7.org/linux/man-pages/man5/login.defs.5.html for config specification
       let
-        toKeyValue = generators.toKeyValue {
-          mkKeyValue = generators.mkKeyValueDefault { } " ";
+        toKeyValue = lib.generators.toKeyValue {
+          mkKeyValue = lib.generators.mkKeyValueDefault { } " ";
         };
       in
       {
@@ -231,7 +230,7 @@ in
         newuidmap = mkSetuidRoot "${cfg.package.out}/bin/newuidmap";
         newgidmap = mkSetuidRoot "${cfg.package.out}/bin/newgidmap";
       }
-      // optionalAttrs config.users.mutableUsers {
+      // lib.optionalAttrs config.users.mutableUsers {
         chsh = mkSetuidRoot "${cfg.package.out}/bin/chsh";
         passwd = mkSetuidRoot "${cfg.package.out}/bin/passwd";
       };
diff --git a/nixos/modules/programs/sharing.nix b/nixos/modules/programs/sharing.nix
index 211dc9815166..0fe8100bbc56 100644
--- a/nixos/modules/programs/sharing.nix
+++ b/nixos/modules/programs/sharing.nix
@@ -1,8 +1,7 @@
 { config, pkgs, lib, ... }:
-with lib;
 {
   options.programs.sharing = {
-    enable = mkEnableOption ''
+    enable = lib.mkEnableOption ''
       sharing, a CLI tool for sharing files.
 
       Note that it will opens the 7478 port for TCP in the firewall, which is needed for it to function properly
@@ -12,7 +11,7 @@ with lib;
     let
       cfg = config.programs.sharing;
     in
-      mkIf cfg.enable {
+      lib.mkIf cfg.enable {
         environment.systemPackages = [ pkgs.sharing ];
         networking.firewall.allowedTCPPorts = [ 7478 ];
       };
diff --git a/nixos/modules/programs/singularity.nix b/nixos/modules/programs/singularity.nix
index f4c0a6fe487e..bc989ad2dbaf 100644
--- a/nixos/modules/programs/singularity.nix
+++ b/nixos/modules/programs/singularity.nix
@@ -5,21 +5,20 @@
   ...
 }:
 
-with lib;
 let
   cfg = config.programs.singularity;
 in
 {
 
   options.programs.singularity = {
-    enable = mkEnableOption "singularity" // {
+    enable = lib.mkEnableOption "singularity" // {
       description = ''
         Whether to install Singularity/Apptainer with system-level overriding such as SUID support.
       '';
     };
-    package = mkPackageOption pkgs "singularity" { example = "apptainer"; };
-    packageOverriden = mkOption {
-      type = types.nullOr types.package;
+    package = lib.mkPackageOption pkgs "singularity" { example = "apptainer"; };
+    packageOverriden = lib.mkOption {
+      type = lib.types.nullOr lib.types.package;
       default = null;
       description = ''
         This option provides access to the overridden result of `programs.singularity.package`.
@@ -42,8 +41,8 @@ in
         Use `lib.mkForce` to forcefully specify the overridden package.
       '';
     };
-    enableExternalLocalStateDir = mkOption {
-      type = types.bool;
+    enableExternalLocalStateDir = lib.mkOption {
+      type = lib.types.bool;
       default = true;
       example = false;
       description = ''
@@ -54,22 +53,22 @@ in
         `/var/lib/''${projectName}/mnt/session`.
       '';
     };
-    enableFakeroot = mkOption {
-      type = types.bool;
+    enableFakeroot = lib.mkOption {
+      type = lib.types.bool;
       default = true;
       example = false;
       description = ''
         Whether to enable the `--fakeroot` support of Singularity/Apptainer.
       '';
     };
-    enableSuid = mkOption {
-      type = types.bool;
+    enableSuid = lib.mkOption {
+      type = lib.types.bool;
       # SingularityCE requires SETUID for most things. Apptainer prefers user
       # namespaces, e.g. `apptainer exec --nv` would fail if built
       # `--with-suid`:
       # > `FATAL: nvidia-container-cli not allowed in setuid mode`
       default = cfg.package.projectName != "apptainer";
-      defaultText = literalExpression ''config.services.singularity.package.projectName != "apptainer"'';
+      defaultText = lib.literalExpression ''config.services.singularity.package.projectName != "apptainer"'';
       example = false;
       description = ''
         Whether to enable the SUID support of Singularity/Apptainer.
@@ -77,28 +76,28 @@ in
     };
   };
 
-  config = mkIf cfg.enable {
+  config = lib.mkIf cfg.enable {
     programs.singularity.packageOverriden = (
       cfg.package.override (
-        optionalAttrs cfg.enableExternalLocalStateDir { externalLocalStateDir = "/var/lib"; }
-        // optionalAttrs cfg.enableFakeroot {
+        lib.optionalAttrs cfg.enableExternalLocalStateDir { externalLocalStateDir = "/var/lib"; }
+        // lib.optionalAttrs cfg.enableFakeroot {
           newuidmapPath = "/run/wrappers/bin/newuidmap";
           newgidmapPath = "/run/wrappers/bin/newgidmap";
         }
-        // optionalAttrs cfg.enableSuid {
+        // lib.optionalAttrs cfg.enableSuid {
           enableSuid = true;
           starterSuidPath = "/run/wrappers/bin/${cfg.package.projectName}-suid";
         }
       )
     );
     environment.systemPackages = [ cfg.packageOverriden ];
-    security.wrappers."${cfg.packageOverriden.projectName}-suid" = mkIf cfg.enableSuid {
+    security.wrappers."${cfg.packageOverriden.projectName}-suid" = lib.mkIf cfg.enableSuid {
       setuid = true;
       owner = "root";
       group = "root";
       source = "${cfg.packageOverriden}/libexec/${cfg.packageOverriden.projectName}/bin/starter-suid.orig";
     };
-    systemd.tmpfiles.rules = mkIf cfg.enableExternalLocalStateDir [
+    systemd.tmpfiles.rules = lib.mkIf cfg.enableExternalLocalStateDir [
       "d /var/lib/${cfg.packageOverriden.projectName}/mnt/session 0770 root root -"
     ];
   };
diff --git a/nixos/modules/programs/slock.nix b/nixos/modules/programs/slock.nix
index f39b4d5e9280..ce24f662f218 100644
--- a/nixos/modules/programs/slock.nix
+++ b/nixos/modules/programs/slock.nix
@@ -1,7 +1,5 @@
 { config, lib, pkgs, ... }:
 
-with lib;
-
 let
   cfg = config.programs.slock;
 
@@ -9,18 +7,18 @@ in
 {
   options = {
     programs.slock = {
-      enable = mkOption {
+      enable = lib.mkOption {
         default = false;
-        type = types.bool;
+        type = lib.types.bool;
         description = ''
           Whether to install slock screen locker with setuid wrapper.
         '';
       };
-      package = mkPackageOption pkgs "slock" {};
+      package = lib.mkPackageOption pkgs "slock" {};
     };
   };
 
-  config = mkIf cfg.enable {
+  config = lib.mkIf cfg.enable {
     environment.systemPackages = [ cfg.package ];
     security.wrappers.slock =
       { setuid = true;
diff --git a/nixos/modules/programs/soundmodem.nix b/nixos/modules/programs/soundmodem.nix
index ab992c63c608..5f57e24a4524 100644
--- a/nixos/modules/programs/soundmodem.nix
+++ b/nixos/modules/programs/soundmodem.nix
@@ -1,26 +1,24 @@
 { config, lib, pkgs, ... }:
 
-with lib;
-
 let
   cfg = config.programs.soundmodem;
 in
 {
   options = {
     programs.soundmodem = {
-      enable = mkOption {
-        type = types.bool;
+      enable = lib.mkOption {
+        type = lib.types.bool;
         default = false;
         description = ''
           Whether to add Soundmodem to the global environment and configure a
           wrapper for 'soundmodemconfig' for users in the 'soundmodem' group.
         '';
       };
-      package = mkPackageOption pkgs "soundmodem" { };
+      package = lib.mkPackageOption pkgs "soundmodem" { };
     };
   };
 
-  config = mkIf cfg.enable {
+  config = lib.mkIf cfg.enable {
     environment.systemPackages = [ cfg.package ];
     users.groups.soundmodem = { };
 
diff --git a/nixos/modules/programs/spacefm.nix b/nixos/modules/programs/spacefm.nix
index fec14fca48e1..73d48cf6a3a8 100644
--- a/nixos/modules/programs/spacefm.nix
+++ b/nixos/modules/programs/spacefm.nix
@@ -2,8 +2,6 @@
 
 { config, lib, pkgs, ... }:
 
-with lib;
-
 let cfg = config.programs.spacefm;
 
 in
@@ -14,21 +12,21 @@ in
 
     programs.spacefm = {
 
-      enable = mkOption {
-        type = types.bool;
+      enable = lib.mkOption {
+        type = lib.types.bool;
         default = false;
         description = ''
           Whether to install SpaceFM and create {file}`/etc/spacefm/spacefm.conf`.
         '';
       };
 
-      settings = mkOption {
-        type = types.attrs;
+      settings = lib.mkOption {
+        type = lib.types.attrs;
         default = {
           tmp_dir = "/tmp";
           terminal_su = "${pkgs.sudo}/bin/sudo";
         };
-        defaultText = literalExpression ''
+        defaultText = lib.literalExpression ''
           {
             tmp_dir = "/tmp";
             terminal_su = "''${pkgs.sudo}/bin/sudo";
@@ -46,10 +44,10 @@ in
 
   ###### implementation
 
-  config = mkIf cfg.enable {
+  config = lib.mkIf cfg.enable {
     environment.systemPackages = [ pkgs.spaceFM ];
 
     environment.etc."spacefm/spacefm.conf".text =
-      concatStrings (mapAttrsToList (n: v: "${n}=${toString v}\n") cfg.settings);
+      lib.concatStrings (lib.mapAttrsToList (n: v: "${n}=${builtins.toString v}\n") cfg.settings);
   };
 }
diff --git a/nixos/modules/programs/ssh.nix b/nixos/modules/programs/ssh.nix
index 2d25c7a93662..0692dd46f7d0 100644
--- a/nixos/modules/programs/ssh.nix
+++ b/nixos/modules/programs/ssh.nix
@@ -2,8 +2,6 @@
 
 { config, lib, pkgs, ... }:
 
-with lib;
-
 let
 
   cfg  = config.programs.ssh;
@@ -17,16 +15,16 @@ let
       exec ${cfg.askPassword} "$@"
     '';
 
-  knownHosts = attrValues cfg.knownHosts;
+  knownHosts = builtins.attrValues cfg.knownHosts;
 
-  knownHostsText = (flip (concatMapStringsSep "\n") knownHosts
+  knownHostsText = (lib.flip (lib.concatMapStringsSep "\n") knownHosts
     (h: assert h.hostNames != [];
-      optionalString h.certAuthority "@cert-authority " + concatStringsSep "," h.hostNames + " "
-      + (if h.publicKey != null then h.publicKey else readFile h.publicKeyFile)
+      lib.optionalString h.certAuthority "@cert-authority " + builtins.concatStringsSep "," h.hostNames + " "
+      + (if h.publicKey != null then h.publicKey else builtins.readFile h.publicKeyFile)
     )) + "\n";
 
   knownHostsFiles = [ "/etc/ssh/ssh_known_hosts" ]
-    ++ map pkgs.copyPathToStore cfg.knownHostsFiles;
+    ++ builtins.map pkgs.copyPathToStore cfg.knownHostsFiles;
 
 in
 {
@@ -36,21 +34,21 @@ in
 
     programs.ssh = {
 
-      enableAskPassword = mkOption {
-        type = types.bool;
+      enableAskPassword = lib.mkOption {
+        type = lib.types.bool;
         default = config.services.xserver.enable;
-        defaultText = literalExpression "config.services.xserver.enable";
+        defaultText = lib.literalExpression "config.services.xserver.enable";
         description = "Whether to configure SSH_ASKPASS in the environment.";
       };
 
-      askPassword = mkOption {
-        type = types.str;
+      askPassword = lib.mkOption {
+        type = lib.types.str;
         default = "${pkgs.x11_ssh_askpass}/libexec/x11-ssh-askpass";
-        defaultText = literalExpression ''"''${pkgs.x11_ssh_askpass}/libexec/x11-ssh-askpass"'';
+        defaultText = lib.literalExpression ''"''${pkgs.x11_ssh_askpass}/libexec/x11-ssh-askpass"'';
         description = "Program used by SSH to ask for passwords.";
       };
 
-      forwardX11 = mkOption {
+      forwardX11 = lib.mkOption {
         type = with lib.types; nullOr bool;
         default = false;
         description = ''
@@ -65,25 +63,25 @@ in
         '';
       };
 
-      setXAuthLocation = mkOption {
-        type = types.bool;
+      setXAuthLocation = lib.mkOption {
+        type = lib.types.bool;
         description = ''
           Whether to set the path to {command}`xauth` for X11-forwarded connections.
           This causes a dependency on X11 packages.
         '';
       };
 
-      pubkeyAcceptedKeyTypes = mkOption {
-        type = types.listOf types.str;
+      pubkeyAcceptedKeyTypes = lib.mkOption {
+        type = lib.types.listOf lib.types.str;
         default = [];
         example = [ "ssh-ed25519" "ssh-rsa" ];
         description = ''
-          Specifies the key types that will be used for public key authentication.
+          Specifies the key lib.types that will be used for public key authentication.
         '';
       };
 
-      hostKeyAlgorithms = mkOption {
-        type = types.listOf types.str;
+      hostKeyAlgorithms = lib.mkOption {
+        type = lib.types.listOf lib.types.str;
         default = [];
         example = [ "ssh-ed25519" "ssh-rsa" ];
         description = ''
@@ -91,8 +89,8 @@ in
         '';
       };
 
-      extraConfig = mkOption {
-        type = types.lines;
+      extraConfig = lib.mkOption {
+        type = lib.types.lines;
         default = "";
         description = ''
           Extra configuration text prepended to {file}`ssh_config`. Other generated
@@ -102,8 +100,8 @@ in
         '';
       };
 
-      startAgent = mkOption {
-        type = types.bool;
+      startAgent = lib.mkOption {
+        type = lib.types.bool;
         default = false;
         description = ''
           Whether to start the OpenSSH agent when you log in.  The OpenSSH agent
@@ -113,8 +111,8 @@ in
         '';
       };
 
-      agentTimeout = mkOption {
-        type = types.nullOr types.str;
+      agentTimeout = lib.mkOption {
+        type = lib.types.nullOr lib.types.str;
         default = null;
         example = "1h";
         description = ''
@@ -122,34 +120,34 @@ in
         '';
       };
 
-      agentPKCS11Whitelist = mkOption {
-        type = types.nullOr types.str;
+      agentPKCS11Whitelist = lib.mkOption {
+        type = lib.types.nullOr lib.types.str;
         default = null;
-        example = literalExpression ''"''${pkgs.opensc}/lib/opensc-pkcs11.so"'';
+        example = lib.literalExpression ''"''${pkgs.opensc}/lib/opensc-pkcs11.so"'';
         description = ''
           A pattern-list of acceptable paths for PKCS#11 shared libraries
           that may be used with the -s option to ssh-add.
         '';
       };
 
-      package = mkPackageOption pkgs "openssh" { };
+      package = lib.mkPackageOption pkgs "openssh" { };
 
-      knownHosts = mkOption {
+      knownHosts = lib.mkOption {
         default = {};
-        type = types.attrsOf (types.submodule ({ name, config, options, ... }: {
+        type = lib.types.attrsOf (lib.types.submodule ({ name, config, options, ... }: {
           options = {
-            certAuthority = mkOption {
-              type = types.bool;
+            certAuthority = lib.mkOption {
+              type = lib.types.bool;
               default = false;
               description = ''
                 This public key is an SSH certificate authority, rather than an
                 individual host's key.
               '';
             };
-            hostNames = mkOption {
-              type = types.listOf types.str;
+            hostNames = lib.mkOption {
+              type = lib.types.listOf lib.types.str;
               default = [ name ] ++ config.extraHostNames;
-              defaultText = literalExpression "[ ${name} ] ++ config.${options.extraHostNames}";
+              defaultText = lib.literalExpression "[ ${name} ] ++ config.${options.extraHostNames}";
               description = ''
                 A list of host names and/or IP numbers used for accessing
                 the host's ssh service. This list includes the name of the
@@ -160,8 +158,8 @@ in
                 `hostNames` list.
               '';
             };
-            extraHostNames = mkOption {
-              type = types.listOf types.str;
+            extraHostNames = lib.mkOption {
+              type = lib.types.listOf lib.types.str;
               default = [];
               description = ''
                 A list of additional host names and/or IP numbers used for
@@ -169,9 +167,9 @@ in
                 `hostNames` is set explicitly.
               '';
             };
-            publicKey = mkOption {
+            publicKey = lib.mkOption {
               default = null;
-              type = types.nullOr types.str;
+              type = lib.types.nullOr lib.types.str;
               example = "ecdsa-sha2-nistp521 AAAAE2VjZHN...UEPg==";
               description = ''
                 The public key data for the host. You can fetch a public key
@@ -180,9 +178,9 @@ in
                 the key type and the key itself.
               '';
             };
-            publicKeyFile = mkOption {
+            publicKeyFile = lib.mkOption {
               default = null;
-              type = types.nullOr types.path;
+              type = lib.types.nullOr lib.types.path;
               description = ''
                 The path to the public key file for the host. The public
                 key file is read at build time and saved in the Nix store.
@@ -204,7 +202,7 @@ in
           `extraHostNames` to add additional host names without
           disabling this default.
         '';
-        example = literalExpression ''
+        example = lib.literalExpression ''
           {
             myhost = {
               extraHostNames = [ "myhost.mydomain.com" "10.10.1.4" ];
@@ -219,16 +217,16 @@ in
         '';
       };
 
-      knownHostsFiles = mkOption {
+      knownHostsFiles = lib.mkOption {
         default = [];
-        type = with types; listOf path;
+        type = with lib.types; listOf path;
         description = ''
           Files containing SSH host keys to set as global known hosts.
           `/etc/ssh/ssh_known_hosts` (which is
           generated by {option}`programs.ssh.knownHosts`) is
           always included.
         '';
-        example = literalExpression ''
+        example = lib.literalExpression ''
           [
             ./known_hosts
             (writeText "github.keys" '''
@@ -240,8 +238,8 @@ in
         '';
       };
 
-      kexAlgorithms = mkOption {
-        type = types.nullOr (types.listOf types.str);
+      kexAlgorithms = lib.mkOption {
+        type = lib.types.nullOr (lib.types.listOf lib.types.str);
         default = null;
         example = [ "curve25519-sha256@libssh.org" "diffie-hellman-group-exchange-sha256" ];
         description = ''
@@ -249,8 +247,8 @@ in
         '';
       };
 
-      ciphers = mkOption {
-        type = types.nullOr (types.listOf types.str);
+      ciphers = lib.mkOption {
+        type = lib.types.nullOr (lib.types.listOf lib.types.str);
         default = null;
         example = [ "chacha20-poly1305@openssh.com" "aes256-gcm@openssh.com" ];
         description = ''
@@ -258,8 +256,8 @@ in
         '';
       };
 
-      macs = mkOption {
-        type = types.nullOr (types.listOf types.str);
+      macs = lib.mkOption {
+        type = lib.types.nullOr (lib.types.listOf lib.types.str);
         default = null;
         example = [ "hmac-sha2-512-etm@openssh.com" "hmac-sha1" ];
         description = ''
@@ -274,13 +272,13 @@ in
   config = {
 
     programs.ssh.setXAuthLocation =
-      mkDefault (config.services.xserver.enable || config.programs.ssh.forwardX11 == true || config.services.openssh.settings.X11Forwarding);
+      lib.mkDefault (config.services.xserver.enable || config.programs.ssh.forwardX11 == true || config.services.openssh.settings.X11Forwarding);
 
     assertions =
       [ { assertion = cfg.forwardX11 == true -> cfg.setXAuthLocation;
           message = "cannot enable X11 forwarding without setting XAuth location";
         }
-      ] ++ flip mapAttrsToList cfg.knownHosts (name: data: {
+      ] ++ lib.flip lib.mapAttrsToList cfg.knownHosts (name: data: {
         assertion = (data.publicKey == null && data.publicKeyFile != null) ||
                     (data.publicKey != null && data.publicKeyFile == null);
         message = "knownHost ${name} must contain either a publicKey or publicKeyFile";
@@ -296,22 +294,22 @@ in
         # Generated options from other settings
         Host *
         AddressFamily ${if config.networking.enableIPv6 then "any" else "inet"}
-        GlobalKnownHostsFile ${concatStringsSep " " knownHostsFiles}
+        GlobalKnownHostsFile ${builtins.concatStringsSep " " knownHostsFiles}
 
-        ${optionalString cfg.setXAuthLocation "XAuthLocation ${pkgs.xorg.xauth}/bin/xauth"}
+        ${lib.optionalString cfg.setXAuthLocation "XAuthLocation ${pkgs.xorg.xauth}/bin/xauth"}
         ${lib.optionalString (cfg.forwardX11 != null) "ForwardX11 ${if cfg.forwardX11 then "yes" else "no"}"}
 
-        ${optionalString (cfg.pubkeyAcceptedKeyTypes != []) "PubkeyAcceptedKeyTypes ${concatStringsSep "," cfg.pubkeyAcceptedKeyTypes}"}
-        ${optionalString (cfg.hostKeyAlgorithms != []) "HostKeyAlgorithms ${concatStringsSep "," cfg.hostKeyAlgorithms}"}
-        ${optionalString (cfg.kexAlgorithms != null) "KexAlgorithms ${concatStringsSep "," cfg.kexAlgorithms}"}
-        ${optionalString (cfg.ciphers != null) "Ciphers ${concatStringsSep "," cfg.ciphers}"}
-        ${optionalString (cfg.macs != null) "MACs ${concatStringsSep "," cfg.macs}"}
+        ${lib.optionalString (cfg.pubkeyAcceptedKeyTypes != []) "PubkeyAcceptedKeyTypes ${builtins.concatStringsSep "," cfg.pubkeyAcceptedKeyTypes}"}
+        ${lib.optionalString (cfg.hostKeyAlgorithms != []) "HostKeyAlgorithms ${builtins.concatStringsSep "," cfg.hostKeyAlgorithms}"}
+        ${lib.optionalString (cfg.kexAlgorithms != null) "KexAlgorithms ${builtins.concatStringsSep "," cfg.kexAlgorithms}"}
+        ${lib.optionalString (cfg.ciphers != null) "Ciphers ${builtins.concatStringsSep "," cfg.ciphers}"}
+        ${lib.optionalString (cfg.macs != null) "MACs ${builtins.concatStringsSep "," cfg.macs}"}
       '';
 
     environment.etc."ssh/ssh_known_hosts".text = knownHostsText;
 
     # FIXME: this should really be socket-activated for über-awesomeness.
-    systemd.user.services.ssh-agent = mkIf cfg.startAgent
+    systemd.user.services.ssh-agent = lib.mkIf cfg.startAgent
       { description = "SSH Agent";
         wantedBy = [ "default.target" ];
         unitConfig.ConditionUser = "!@system";
@@ -319,8 +317,8 @@ in
           { ExecStartPre = "${pkgs.coreutils}/bin/rm -f %t/ssh-agent";
             ExecStart =
                 "${cfg.package}/bin/ssh-agent " +
-                optionalString (cfg.agentTimeout != null) ("-t ${cfg.agentTimeout} ") +
-                optionalString (cfg.agentPKCS11Whitelist != null) ("-P ${cfg.agentPKCS11Whitelist} ") +
+                lib.optionalString (cfg.agentTimeout != null) ("-t ${cfg.agentTimeout} ") +
+                lib.optionalString (cfg.agentPKCS11Whitelist != null) ("-P ${cfg.agentPKCS11Whitelist} ") +
                 "-a %t/ssh-agent";
             StandardOutput = "null";
             Type = "forking";
@@ -330,18 +328,18 @@ in
         # Allow ssh-agent to ask for confirmation. This requires the
         # unit to know about the user's $DISPLAY (via ‘systemctl
         # import-environment’).
-        environment.SSH_ASKPASS = optionalString cfg.enableAskPassword askPasswordWrapper;
+        environment.SSH_ASKPASS = lib.optionalString cfg.enableAskPassword askPasswordWrapper;
         environment.DISPLAY = "fake"; # required to make ssh-agent start $SSH_ASKPASS
       };
 
-    environment.extraInit = optionalString cfg.startAgent
+    environment.extraInit = lib.optionalString cfg.startAgent
       ''
         if [ -z "$SSH_AUTH_SOCK" -a -n "$XDG_RUNTIME_DIR" ]; then
           export SSH_AUTH_SOCK="$XDG_RUNTIME_DIR/ssh-agent"
         fi
       '';
 
-    environment.variables.SSH_ASKPASS = optionalString cfg.enableAskPassword cfg.askPassword;
+    environment.variables.SSH_ASKPASS = lib.optionalString cfg.enableAskPassword cfg.askPassword;
 
   };
 }
diff --git a/nixos/modules/programs/steam.nix b/nixos/modules/programs/steam.nix
index 58aa0aa25b08..d317398495f5 100644
--- a/nixos/modules/programs/steam.nix
+++ b/nixos/modules/programs/steam.nix
@@ -1,7 +1,5 @@
 { config, lib, pkgs, ... }:
 
-with lib;
-
 let
   cfg = config.programs.steam;
   gamescopeCfg = config.programs.gamescope;
@@ -11,7 +9,7 @@ let
   in
     pkgs.writeShellScriptBin "steam-gamescope" ''
       ${builtins.concatStringsSep "\n" exports}
-      gamescope --steam ${toString cfg.gamescopeSession.args} -- steam -tenfoot -pipewire-dmabuf
+      gamescope --steam ${builtins.toString cfg.gamescopeSession.args} -- steam -tenfoot -pipewire-dmabuf
     '';
 
   gamescopeSessionFile =
@@ -24,13 +22,13 @@ let
     '').overrideAttrs (_: { passthru.providedSessions = [ "steam" ]; });
 in {
   options.programs.steam = {
-    enable = mkEnableOption "steam";
+    enable = lib.mkEnableOption "steam";
 
-    package = mkOption {
-      type = types.package;
+    package = lib.mkOption {
+      type = lib.types.package;
       default = pkgs.steam;
-      defaultText = literalExpression "pkgs.steam";
-      example = literalExpression ''
+      defaultText = lib.literalExpression "pkgs.steam";
+      example = lib.literalExpression ''
         pkgs.steam-small.override {
           extraEnv = {
             MANGOHUD = true;
@@ -44,8 +42,8 @@ in {
       '';
       apply = steam: steam.override (prev: {
         extraEnv = (lib.optionalAttrs (cfg.extraCompatPackages != [ ]) {
-          STEAM_EXTRA_COMPAT_TOOLS_PATHS = makeSearchPathOutput "steamcompattool" "" cfg.extraCompatPackages;
-        }) // (optionalAttrs cfg.extest.enable {
+          STEAM_EXTRA_COMPAT_TOOLS_PATHS = lib.makeSearchPathOutput "steamcompattool" "" cfg.extraCompatPackages;
+        }) // (lib.optionalAttrs cfg.extest.enable {
           LD_PRELOAD = "${pkgs.pkgsi686Linux.extest}/lib/libextest.so";
         }) // (prev.extraEnv or {});
         extraLibraries = pkgs: let
@@ -55,7 +53,7 @@ in {
             then [ package ] ++ extraPackages
             else [ package32 ] ++ extraPackages32;
         in prevLibs ++ additionalLibs;
-      } // optionalAttrs (cfg.gamescopeSession.enable && gamescopeCfg.capSysNice)
+      } // lib.optionalAttrs (cfg.gamescopeSession.enable && gamescopeCfg.capSysNice)
       {
         buildFHSEnv = pkgs.buildFHSEnv.override {
           # use the setuid wrapped bubblewrap
@@ -71,10 +69,10 @@ in {
       '';
     };
 
-    extraCompatPackages = mkOption {
-      type = types.listOf types.package;
+    extraCompatPackages = lib.mkOption {
+      type = lib.types.listOf lib.types.package;
       default = [ ];
-      example = literalExpression ''
+      example = lib.literalExpression ''
         with pkgs; [
           proton-ge-bin
         ]
@@ -88,46 +86,46 @@ in {
       '';
     };
 
-    remotePlay.openFirewall = mkOption {
-      type = types.bool;
+    remotePlay.openFirewall = lib.mkOption {
+      type = lib.types.bool;
       default = false;
       description = ''
         Open ports in the firewall for Steam Remote Play.
       '';
     };
 
-    dedicatedServer.openFirewall = mkOption {
-      type = types.bool;
+    dedicatedServer.openFirewall = lib.mkOption {
+      type = lib.types.bool;
       default = false;
       description = ''
         Open ports in the firewall for Source Dedicated Server.
       '';
     };
 
-    localNetworkGameTransfers.openFirewall = mkOption {
-      type = types.bool;
+    localNetworkGameTransfers.openFirewall = lib.mkOption {
+      type = lib.types.bool;
       default = false;
       description = ''
         Open ports in the firewall for Steam Local Network Game Transfers.
       '';
     };
 
-    gamescopeSession = mkOption {
+    gamescopeSession = lib.mkOption {
       description = "Run a GameScope driven Steam session from your display-manager";
       default = {};
-      type = types.submodule {
+      type = lib.types.submodule {
         options = {
-          enable = mkEnableOption "GameScope Session";
-          args = mkOption {
-            type = types.listOf types.str;
+          enable = lib.mkEnableOption "GameScope Session";
+          args = lib.mkOption {
+            type = lib.types.listOf lib.types.str;
             default = [ ];
             description = ''
               Arguments to be passed to GameScope for the session.
             '';
           };
 
-          env = mkOption {
-            type = types.attrsOf types.str;
+          env = lib.mkOption {
+            type = lib.types.attrsOf lib.types.str;
             default = { };
             description = ''
               Environmental variables to be passed to GameScope for the session.
@@ -137,20 +135,20 @@ in {
       };
     };
 
-    extest.enable = mkEnableOption ''
+    extest.enable = lib.mkEnableOption ''
       Load the extest library into Steam, to translate X11 input events to
       uinput events (e.g. for using Steam Input on Wayland)
     '';
   };
 
-  config = mkIf cfg.enable {
+  config = lib.mkIf cfg.enable {
     hardware.opengl = { # this fixes the "glXChooseVisual failed" bug, context: https://github.com/NixOS/nixpkgs/issues/47932
       enable = true;
       driSupport = true;
       driSupport32Bit = true;
     };
 
-    security.wrappers = mkIf (cfg.gamescopeSession.enable && gamescopeCfg.capSysNice) {
+    security.wrappers = lib.mkIf (cfg.gamescopeSession.enable && gamescopeCfg.capSysNice) {
       # needed or steam fails
       bwrap = {
         owner = "root";
@@ -160,8 +158,8 @@ in {
       };
     };
 
-    programs.gamescope.enable = mkDefault cfg.gamescopeSession.enable;
-    services.displayManager.sessionPackages = mkIf cfg.gamescopeSession.enable [ gamescopeSessionFile ];
+    programs.gamescope.enable = lib.mkDefault cfg.gamescopeSession.enable;
+    services.displayManager.sessionPackages = lib.mkIf cfg.gamescopeSession.enable [ gamescopeSessionFile ];
 
     # optionally enable 32bit pulseaudio support if pulseaudio is enabled
     hardware.pulseaudio.support32Bit = config.hardware.pulseaudio.enable;
@@ -174,25 +172,25 @@ in {
     ] ++ lib.optional cfg.gamescopeSession.enable steam-gamescope;
 
     networking.firewall = lib.mkMerge [
-      (mkIf (cfg.remotePlay.openFirewall || cfg.localNetworkGameTransfers.openFirewall) {
+      (lib.mkIf (cfg.remotePlay.openFirewall || cfg.localNetworkGameTransfers.openFirewall) {
         allowedUDPPorts = [ 27036 ]; # Peer discovery
       })
 
-      (mkIf cfg.remotePlay.openFirewall {
+      (lib.mkIf cfg.remotePlay.openFirewall {
         allowedTCPPorts = [ 27036 ];
         allowedUDPPortRanges = [ { from = 27031; to = 27035; } ];
       })
 
-      (mkIf cfg.dedicatedServer.openFirewall {
+      (lib.mkIf cfg.dedicatedServer.openFirewall {
         allowedTCPPorts = [ 27015 ]; # SRCDS Rcon port
         allowedUDPPorts = [ 27015 ]; # Gameplay traffic
       })
 
-      (mkIf cfg.localNetworkGameTransfers.openFirewall {
+      (lib.mkIf cfg.localNetworkGameTransfers.openFirewall {
         allowedTCPPorts = [ 27040 ]; # Data transfers
       })
     ];
   };
 
-  meta.maintainers = teams.steam;
+  meta.maintainers = lib.teams.steam;
 }
diff --git a/nixos/modules/programs/streamdeck-ui.nix b/nixos/modules/programs/streamdeck-ui.nix
index 6bec2abdfbec..a1366c42181c 100644
--- a/nixos/modules/programs/streamdeck-ui.nix
+++ b/nixos/modules/programs/streamdeck-ui.nix
@@ -1,34 +1,32 @@
 { config, lib, pkgs, ... }:
 
-with lib;
-
 let
   cfg = config.programs.streamdeck-ui;
 in
 {
   options.programs.streamdeck-ui = {
-    enable = mkEnableOption "streamdeck-ui";
+    enable = lib.mkEnableOption "streamdeck-ui";
 
-    autoStart = mkOption {
+    autoStart = lib.mkOption {
       default = true;
-      type = types.bool;
+      type = lib.types.bool;
       description = "Whether streamdeck-ui should be started automatically.";
     };
 
-    package = mkPackageOption pkgs "streamdeck-ui" {
+    package = lib.mkPackageOption pkgs "streamdeck-ui" {
       default = [ "streamdeck-ui" ];
     };
 
   };
 
-  config = mkIf cfg.enable {
-    environment.systemPackages = with pkgs; [
+  config = lib.mkIf cfg.enable {
+    environment.systemPackages = [
       cfg.package
-      (mkIf cfg.autoStart (makeAutostartItem { name = "streamdeck-ui-noui"; package = cfg.package; }))
+      (lib.mkIf cfg.autoStart (pkgs.makeAutostartItem { name = "streamdeck-ui-noui"; package = cfg.package; }))
     ];
 
     services.udev.packages = [ cfg.package ];
   };
 
-  meta.maintainers = with maintainers; [ majiir ];
+  meta.maintainers = with lib.maintainers; [ majiir ];
 }
diff --git a/nixos/modules/programs/sysdig.nix b/nixos/modules/programs/sysdig.nix
index cf2cbab5cf6e..47b95ef64e97 100644
--- a/nixos/modules/programs/sysdig.nix
+++ b/nixos/modules/programs/sysdig.nix
@@ -1,13 +1,11 @@
 { config, lib, pkgs, ... }:
 
-with lib;
-
 let
   cfg = config.programs.sysdig;
 in {
-  options.programs.sysdig.enable = mkEnableOption "sysdig, a tracing tool";
+  options.programs.sysdig.enable = lib.mkEnableOption "sysdig, a tracing tool";
 
-  config = mkIf cfg.enable {
+  config = lib.mkIf cfg.enable {
     environment.systemPackages = [ pkgs.sysdig ];
     boot.extraModulePackages = [ config.boot.kernelPackages.sysdig ];
   };
diff --git a/nixos/modules/programs/system-config-printer.nix b/nixos/modules/programs/system-config-printer.nix
index 34592dd7064b..68b7897d64c2 100644
--- a/nixos/modules/programs/system-config-printer.nix
+++ b/nixos/modules/programs/system-config-printer.nix
@@ -1,7 +1,5 @@
 { config, pkgs, lib, ... }:
 
-with lib;
-
 {
 
   ###### interface
@@ -10,7 +8,7 @@ with lib;
 
     programs.system-config-printer = {
 
-      enable = mkEnableOption "system-config-printer, a Graphical user interface for CUPS administration";
+      enable = lib.mkEnableOption "system-config-printer, a Graphical user interface for CUPS administration";
 
     };
 
@@ -19,7 +17,7 @@ with lib;
 
   ###### implementation
 
-  config = mkIf config.programs.system-config-printer.enable {
+  config = lib.mkIf config.programs.system-config-printer.enable {
 
     environment.systemPackages = [
       pkgs.system-config-printer
diff --git a/nixos/modules/programs/systemtap.nix b/nixos/modules/programs/systemtap.nix
index d23bd13fdd85..e61e255e5221 100644
--- a/nixos/modules/programs/systemtap.nix
+++ b/nixos/modules/programs/systemtap.nix
@@ -1,14 +1,12 @@
 { config, lib, ... }:
 
-with lib;
-
 let cfg = config.programs.systemtap;
 in {
 
   options = {
     programs.systemtap = {
-      enable = mkOption {
-        type = types.bool;
+      enable = lib.mkOption {
+        type = lib.types.bool;
         default = false;
         description = ''
           Install {command}`systemtap` along with necessary kernel options.
@@ -16,7 +14,7 @@ in {
       };
     };
   };
-  config = mkIf cfg.enable {
+  config = lib.mkIf cfg.enable {
     system.requiredKernelConfig = with config.lib.kernelConfig; [
       (isYes "DEBUG")
     ];
diff --git a/nixos/modules/programs/thefuck.nix b/nixos/modules/programs/thefuck.nix
index ba2e39c013ae..0e65352a1f21 100644
--- a/nixos/modules/programs/thefuck.nix
+++ b/nixos/modules/programs/thefuck.nix
@@ -1,7 +1,5 @@
 { config, pkgs, lib, ... }:
 
-with lib;
-
 let
   prg = config.programs;
   cfg = prg.thefuck;
@@ -16,11 +14,11 @@ in
   {
     options = {
       programs.thefuck = {
-        enable = mkEnableOption "thefuck, an app which corrects your previous console command";
+        enable = lib.mkEnableOption "thefuck, an app which corrects your previous console command";
 
-        alias = mkOption {
+        alias = lib.mkOption {
           default = "fuck";
-          type = types.str;
+          type = lib.types.str;
 
           description = ''
             `thefuck` needs an alias to be configured.
@@ -30,11 +28,11 @@ in
       };
     };
 
-    config = mkIf cfg.enable {
+    config = lib.mkIf cfg.enable {
       environment.systemPackages = with pkgs; [ thefuck ];
 
       programs.bash.interactiveShellInit = bashAndZshInitScript;
-      programs.zsh.interactiveShellInit = mkIf prg.zsh.enable bashAndZshInitScript;
-      programs.fish.interactiveShellInit = mkIf prg.fish.enable fishInitScript;
+      programs.zsh.interactiveShellInit = lib.mkIf prg.zsh.enable bashAndZshInitScript;
+      programs.fish.interactiveShellInit = lib.mkIf prg.fish.enable fishInitScript;
     };
   }
diff --git a/nixos/modules/programs/thunar.nix b/nixos/modules/programs/thunar.nix
index 5ea2982dd93c..76fcc9d8298f 100644
--- a/nixos/modules/programs/thunar.nix
+++ b/nixos/modules/programs/thunar.nix
@@ -1,29 +1,27 @@
 { config, lib, pkgs, ... }:
 
-with lib;
-
 let cfg = config.programs.thunar;
 
 in {
   meta = {
-    maintainers = teams.xfce.members;
+    maintainers = lib.teams.xfce.members;
   };
 
   options = {
     programs.thunar = {
-      enable = mkEnableOption "Thunar, the Xfce file manager";
+      enable = lib.mkEnableOption "Thunar, the Xfce file manager";
 
-      plugins = mkOption {
+      plugins = lib.mkOption {
         default = [];
-        type = types.listOf types.package;
+        type = lib.types.listOf lib.types.package;
         description = "List of thunar plugins to install.";
-        example = literalExpression "with pkgs.xfce; [ thunar-archive-plugin thunar-volman ]";
+        example = lib.literalExpression "with pkgs.xfce; [ thunar-archive-plugin thunar-volman ]";
       };
 
     };
   };
 
-  config = mkIf cfg.enable (
+  config = lib.mkIf cfg.enable (
     let package = pkgs.xfce.thunar.override { thunarPlugins = cfg.plugins; };
 
     in {
diff --git a/nixos/modules/programs/traceroute.nix b/nixos/modules/programs/traceroute.nix
index 6e04057ac503..0864dbe79db6 100644
--- a/nixos/modules/programs/traceroute.nix
+++ b/nixos/modules/programs/traceroute.nix
@@ -1,14 +1,12 @@
 { config, lib, pkgs, ... }:
 
-with lib;
-
 let
   cfg = config.programs.traceroute;
 in {
   options = {
     programs.traceroute = {
-      enable = mkOption {
-        type = types.bool;
+      enable = lib.mkOption {
+        type = lib.types.bool;
         default = false;
         description = ''
           Whether to configure a setcap wrapper for traceroute.
@@ -17,7 +15,7 @@ in {
     };
   };
 
-  config = mkIf cfg.enable {
+  config = lib.mkIf cfg.enable {
     security.wrappers.traceroute = {
       owner = "root";
       group = "root";
diff --git a/nixos/modules/programs/turbovnc.nix b/nixos/modules/programs/turbovnc.nix
index fbb3a7bf22e9..c28b7f7d7991 100644
--- a/nixos/modules/programs/turbovnc.nix
+++ b/nixos/modules/programs/turbovnc.nix
@@ -2,8 +2,6 @@
 
 { config, lib, pkgs, ... }:
 
-with lib;
-
 let
   cfg = config.programs.turbovnc;
 in
@@ -12,8 +10,8 @@ in
 
     programs.turbovnc = {
 
-      ensureHeadlessSoftwareOpenGL = mkOption {
-        type = types.bool;
+      ensureHeadlessSoftwareOpenGL = lib.mkOption {
+        type = lib.types.bool;
         default = false;
         description = ''
           Whether to set up NixOS such that TurboVNC's built-in software OpenGL
@@ -36,7 +34,7 @@ in
 
   };
 
-  config = mkIf cfg.ensureHeadlessSoftwareOpenGL {
+  config = lib.mkIf cfg.ensureHeadlessSoftwareOpenGL {
 
     # TurboVNC has builtin support for Mesa llvmpipe's `swrast`
     # software rendering to implement GLX (OpenGL on Xorg).
diff --git a/nixos/modules/programs/udevil.nix b/nixos/modules/programs/udevil.nix
index 44b9dd9234b3..e4c0daea72c1 100644
--- a/nixos/modules/programs/udevil.nix
+++ b/nixos/modules/programs/udevil.nix
@@ -1,14 +1,12 @@
 { config, lib, pkgs, ... }:
 
-with lib;
-
 let
   cfg = config.programs.udevil;
 
 in {
-  options.programs.udevil.enable = mkEnableOption "udevil, to mount filesystems without password";
+  options.programs.udevil.enable = lib.mkEnableOption "udevil, to mount filesystems without password";
 
-  config = mkIf cfg.enable {
+  config = lib.mkIf cfg.enable {
     security.wrappers.udevil =
       { setuid = true;
         owner = "root";
diff --git a/nixos/modules/programs/usbtop.nix b/nixos/modules/programs/usbtop.nix
index 4f13ce5f6262..8b77b2bf51c4 100644
--- a/nixos/modules/programs/usbtop.nix
+++ b/nixos/modules/programs/usbtop.nix
@@ -1,15 +1,13 @@
 { config, pkgs, lib, ... }:
 
-with lib;
-
 let
   cfg = config.programs.usbtop;
 in {
   options = {
-    programs.usbtop.enable = mkEnableOption "usbtop and required kernel module, to show estimated USB bandwidth";
+    programs.usbtop.enable = lib.mkEnableOption "usbtop and required kernel module, to show estimated USB bandwidth";
   };
 
-  config = mkIf cfg.enable {
+  config = lib.mkIf cfg.enable {
     environment.systemPackages = with pkgs; [
       usbtop
     ];
diff --git a/nixos/modules/programs/vim.nix b/nixos/modules/programs/vim.nix
index eb3499fd243f..8232340ddebb 100644
--- a/nixos/modules/programs/vim.nix
+++ b/nixos/modules/programs/vim.nix
@@ -1,13 +1,11 @@
 { config, lib, pkgs, ... }:
 
-with lib;
-
 let
   cfg = config.programs.vim;
 in {
   options.programs.vim = {
-    defaultEditor = mkOption {
-      type = types.bool;
+    defaultEditor = lib.mkOption {
+      type = lib.types.bool;
       default = false;
       description = ''
         When enabled, installs vim and configures vim to be the default editor
@@ -15,13 +13,13 @@ in {
       '';
     };
 
-    package = mkPackageOption pkgs "vim" {
+    package = lib.mkPackageOption pkgs "vim" {
       example = "vim-full";
     };
   };
 
-  config = mkIf cfg.defaultEditor {
+  config = lib.mkIf cfg.defaultEditor {
     environment.systemPackages = [ cfg.package ];
-    environment.variables = { EDITOR = mkOverride 900 "vim"; };
+    environment.variables = { EDITOR = lib.mkOverride 900 "vim"; };
   };
 }
diff --git a/nixos/modules/programs/virt-manager.nix b/nixos/modules/programs/virt-manager.nix
index 095db7586a03..9b5fa22268ae 100644
--- a/nixos/modules/programs/virt-manager.nix
+++ b/nixos/modules/programs/virt-manager.nix
@@ -2,15 +2,27 @@
 
 let
   cfg = config.programs.virt-manager;
-in {
+in
+{
   options.programs.virt-manager = {
     enable = lib.mkEnableOption "virt-manager, an UI for managing virtual machines in libvirt";
 
-    package = lib.mkPackageOption pkgs "virt-manager" {};
+    package = lib.mkPackageOption pkgs "virt-manager" { };
   };
 
   config = lib.mkIf cfg.enable {
     environment.systemPackages = [ cfg.package ];
-    programs.dconf.enable = true;
+    programs.dconf = {
+      profiles.user.databases = [
+        {
+          settings = {
+            "org/virt-manager/virt-manager/connections" = {
+              autoconnect = [ "qemu:///system" ];
+              uris = [ "qemu:///system" ];
+            };
+          };
+        }
+      ];
+    };
   };
 }
diff --git a/nixos/modules/programs/wavemon.nix b/nixos/modules/programs/wavemon.nix
index e5ccacba75d4..86bc7cc09795 100644
--- a/nixos/modules/programs/wavemon.nix
+++ b/nixos/modules/programs/wavemon.nix
@@ -1,14 +1,12 @@
 { config, lib, pkgs, ... }:
 
-with lib;
-
 let
   cfg = config.programs.wavemon;
 in {
   options = {
     programs.wavemon = {
-      enable = mkOption {
-        type = types.bool;
+      enable = lib.mkOption {
+        type = lib.types.bool;
         default = false;
         description = ''
           Whether to add wavemon to the global environment and configure a
@@ -18,7 +16,7 @@ in {
     };
   };
 
-  config = mkIf cfg.enable {
+  config = lib.mkIf cfg.enable {
     environment.systemPackages = with pkgs; [ wavemon ];
     security.wrappers.wavemon = {
       owner = "root";
diff --git a/nixos/modules/programs/wayland/hyprland.nix b/nixos/modules/programs/wayland/hyprland.nix
index e648eaa1b68e..c963429f2e2a 100644
--- a/nixos/modules/programs/wayland/hyprland.nix
+++ b/nixos/modules/programs/wayland/hyprland.nix
@@ -3,7 +3,7 @@
 , pkgs
 , ...
 }:
-with lib; let
+let
   cfg = config.programs.hyprland;
 
   finalPortalPackage = cfg.portalPackage.override {
@@ -12,7 +12,7 @@ with lib; let
 in
 {
   options.programs.hyprland = {
-    enable = mkEnableOption null // {
+    enable = lib.mkEnableOption null // {
       description = ''
         Whether to enable Hyprland, the dynamic tiling Wayland compositor that doesn't sacrifice on its looks.
 
@@ -23,35 +23,26 @@ in
       '';
     };
 
-    package = mkPackageOption pkgs "hyprland" { };
+    package = lib.mkPackageOption pkgs "hyprland" { };
 
-    finalPackage = mkOption {
-      type = types.package;
+    finalPackage = lib.mkOption {
+      type = lib.types.package;
       readOnly = true;
       default = cfg.package.override {
         enableXWayland = cfg.xwayland.enable;
       };
-      defaultText = literalExpression
+      defaultText = lib.literalExpression
         "`programs.hyprland.package` with applied configuration";
       description = ''
         The Hyprland package after applying configuration.
       '';
     };
 
-    portalPackage = mkPackageOption pkgs "xdg-desktop-portal-hyprland" { };
+    portalPackage = lib.mkPackageOption pkgs "xdg-desktop-portal-hyprland" { };
 
-    xwayland.enable = mkEnableOption ("XWayland") // { default = true; };
+    xwayland.enable = lib.mkEnableOption ("XWayland") // { default = true; };
 
-    envVars.enable = mkEnableOption null // {
-      default = true;
-      example = false;
-      description = ''
-        Set environment variables for Hyprland to work properly.
-        Enabled by default.
-      '';
-    };
-
-    systemd.setPath.enable = mkEnableOption null // {
+    systemd.setPath.enable = lib.mkEnableOption null // {
       default = true;
       example = false;
       description = ''
@@ -62,15 +53,15 @@ in
     };
   };
 
-  config = mkIf cfg.enable {
+  config = lib.mkIf cfg.enable {
     environment.systemPackages = [ cfg.finalPackage ];
 
-    fonts.enableDefaultPackages = mkDefault true;
-    hardware.opengl.enable = mkDefault true;
+    fonts.enableDefaultPackages = lib.mkDefault true;
+    hardware.opengl.enable = lib.mkDefault true;
 
     programs = {
-      dconf.enable = mkDefault true;
-      xwayland.enable = mkDefault cfg.xwayland.enable;
+      dconf.enable = lib.mkDefault true;
+      xwayland.enable = lib.mkDefault cfg.xwayland.enable;
     };
 
     security.polkit.enable = true;
@@ -78,37 +69,28 @@ in
     services.displayManager.sessionPackages = [ cfg.finalPackage ];
 
     xdg.portal = {
-      enable = mkDefault true;
+      enable = lib.mkDefault true;
       extraPortals = [ finalPortalPackage ];
-      configPackages = mkDefault [ cfg.finalPackage ];
-    };
-
-    environment.sessionVariables = mkIf cfg.envVars.enable {
-      XDG_CURRENT_DESKTOP = "Hyprland";
-      XDG_SESSION_DESKTOP = "Hyprland";
-      XDG_SESSION_TYPE = "wayland";
-      GDK_BACKEND = "wayland,x11";
-      QT_QPA_PLATFORM = "wayland;xcb";
-      _JAVA_AWT_WM_NONREPARENTING = "1"; # Fix for Java applications on tiling window managers
+      configPackages = lib.mkDefault [ cfg.finalPackage ];
     };
 
-    systemd = mkIf cfg.systemd.setPath.enable {
+    systemd = lib.mkIf cfg.systemd.setPath.enable {
       user.extraConfig = ''
         DefaultEnvironment="PATH=$PATH:/run/current-system/sw/bin:/etc/profiles/per-user/%u/bin:/run/wrappers/bin"
       '';
     };
   };
 
-  imports = with lib; [
-    (mkRemovedOptionModule
+  imports = [
+    (lib.mkRemovedOptionModule
       [ "programs" "hyprland" "xwayland" "hidpi" ]
       "XWayland patches are deprecated. Refer to https://wiki.hyprland.org/Configuring/XWayland"
     )
-    (mkRemovedOptionModule
+    (lib.mkRemovedOptionModule
       [ "programs" "hyprland" "enableNvidiaPatches" ]
       "Nvidia patches are no longer needed"
     )
-    (mkRemovedOptionModule
+    (lib.mkRemovedOptionModule
       [ "programs" "hyprland" "nvidiaPatches" ]
       "Nvidia patches are no longer needed"
     )
diff --git a/nixos/modules/programs/wayland/river.nix b/nixos/modules/programs/wayland/river.nix
index d0e309646b0e..6f8bafb15506 100644
--- a/nixos/modules/programs/wayland/river.nix
+++ b/nixos/modules/programs/wayland/river.nix
@@ -4,13 +4,13 @@
   lib,
   ...
 }:
-with lib; let
+let
   cfg = config.programs.river;
 in {
   options.programs.river = {
-    enable = mkEnableOption "river, a dynamic tiling Wayland compositor";
+    enable = lib.mkEnableOption "river, a dynamic tiling Wayland compositor";
 
-    package = mkPackageOption pkgs "river" {
+    package = lib.mkPackageOption pkgs "river" {
       nullable = true;
       extraDescription = ''
         Set to `null` to not add any River package to your path.
@@ -18,17 +18,17 @@ in {
       '';
     };
 
-    extraPackages = mkOption {
-      type = with types; listOf package;
+    extraPackages = lib.mkOption {
+      type = with lib.types; listOf package;
       default = with pkgs; [
         swaylock
         foot
         dmenu
       ];
-      defaultText = literalExpression ''
+      defaultText = lib.literalExpression ''
         with pkgs; [ swaylock foot dmenu ];
       '';
-      example = literalExpression ''
+      example = lib.literalExpression ''
         with pkgs; [
           termite rofi light
         ]
@@ -42,15 +42,15 @@ in {
   };
 
   config =
-    mkIf cfg.enable (mkMerge [
+    lib.mkIf cfg.enable (lib.mkMerge [
       {
-        environment.systemPackages = optional (cfg.package != null) cfg.package ++ cfg.extraPackages;
+        environment.systemPackages = lib.optional (cfg.package != null) cfg.package ++ cfg.extraPackages;
 
         # To make a river session available if a display manager like SDDM is enabled:
-        services.displayManager.sessionPackages = optionals (cfg.package != null) [ cfg.package ];
+        services.displayManager.sessionPackages = lib.optionals (cfg.package != null) [ cfg.package ];
 
         # https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1050913
-        xdg.portal.config.river.default = mkDefault [ "wlr" "gtk" ];
+        xdg.portal.config.river.default = lib.mkDefault [ "wlr" "gtk" ];
       }
       (import ./wayland-session.nix { inherit lib pkgs; })
     ]);
diff --git a/nixos/modules/programs/wayland/sway.nix b/nixos/modules/programs/wayland/sway.nix
index 348e1db7cdc1..cec634b6b033 100644
--- a/nixos/modules/programs/wayland/sway.nix
+++ b/nixos/modules/programs/wayland/sway.nix
@@ -1,15 +1,13 @@
 { config, pkgs, lib, ... }:
 
-with lib;
-
 let
   cfg = config.programs.sway;
 
-  wrapperOptions = types.submodule {
+  wrapperOptions = lib.types.submodule {
     options =
       let
-        mkWrapperFeature  = default: description: mkOption {
-          type = types.bool;
+        mkWrapperFeature  = default: description: lib.mkOption {
+          type = lib.types.bool;
           inherit default;
           example = !default;
           description = "Whether to make use of the ${description}";
@@ -50,18 +48,18 @@ let
       };
 in {
   options.programs.sway = {
-    enable = mkEnableOption ''
+    enable = lib.mkEnableOption ''
       Sway, the i3-compatible tiling Wayland compositor. You can manually launch
       Sway by executing "exec sway" on a TTY. Copy /etc/sway/config to
       ~/.config/sway/config to modify the default configuration. See
       <https://github.com/swaywm/sway/wiki> and
       "man 5 sway" for more information'';
 
-    package = mkOption {
-      type = with types; nullOr package;
+    package = lib.mkOption {
+      type = with lib.types; nullOr package;
       default = pkgs.sway;
       apply = p: if p == null then null else genFinalPackage p;
-      defaultText = literalExpression "pkgs.sway";
+      defaultText = lib.literalExpression "pkgs.sway";
       description = ''
         Sway package to use. If the package does not contain the override arguments
         `extraSessionCommands`, `extraOptions`, `withBaseWrapper`, `withGtkWrapper`,
@@ -72,7 +70,7 @@ in {
       '';
     };
 
-    wrapperFeatures = mkOption {
+    wrapperFeatures = lib.mkOption {
       type = wrapperOptions;
       default = { };
       example = { gtk = true; };
@@ -81,8 +79,8 @@ in {
       '';
     };
 
-    extraSessionCommands = mkOption {
-      type = types.lines;
+    extraSessionCommands = lib.mkOption {
+      type = lib.types.lines;
       default = "";
       example = ''
         # SDL:
@@ -102,8 +100,8 @@ in {
       '';
     };
 
-    extraOptions = mkOption {
-      type = types.listOf types.str;
+    extraOptions = lib.mkOption {
+      type = lib.types.listOf lib.types.str;
       default = [];
       example = [
         "--verbose"
@@ -116,15 +114,15 @@ in {
       '';
     };
 
-    extraPackages = mkOption {
-      type = with types; listOf package;
+    extraPackages = lib.mkOption {
+      type = with lib.types; listOf package;
       default = with pkgs; [
         swaylock swayidle foot dmenu wmenu
       ];
-      defaultText = literalExpression ''
+      defaultText = lib.literalExpression ''
         with pkgs; [ swaylock swayidle foot dmenu wmenu ];
       '';
-      example = literalExpression ''
+      example = lib.literalExpression ''
         with pkgs; [
           i3status i3status-rust
           termite rofi light
@@ -140,8 +138,8 @@ in {
 
   };
 
-  config = mkIf cfg.enable
-    (mkMerge [
+  config = lib.mkIf cfg.enable
+    (lib.mkMerge [
       {
         assertions = [
           {
@@ -154,27 +152,27 @@ in {
         ];
 
         environment = {
-          systemPackages = optional (cfg.package != null) cfg.package ++ cfg.extraPackages;
+          systemPackages = lib.optional (cfg.package != null) cfg.package ++ cfg.extraPackages;
           # Needed for the default wallpaper:
-          pathsToLink = optionals (cfg.package != null) [ "/share/backgrounds/sway" ];
+          pathsToLink = lib.optionals (cfg.package != null) [ "/share/backgrounds/sway" ];
           etc = {
             "sway/config.d/nixos.conf".source = pkgs.writeText "nixos.conf" ''
               # Import the most important environment variables into the D-Bus and systemd
               # user environments (e.g. required for screen sharing and Pinentry prompts):
               exec dbus-update-activation-environment --systemd DISPLAY WAYLAND_DISPLAY SWAYSOCK XDG_CURRENT_DESKTOP
             '';
-          } // optionalAttrs (cfg.package != null) {
-            "sway/config".source = mkOptionDefault "${cfg.package}/etc/sway/config";
+          } // lib.optionalAttrs (cfg.package != null) {
+            "sway/config".source = lib.mkOptionDefault "${cfg.package}/etc/sway/config";
           };
         };
 
         programs.gnupg.agent.pinentryPackage = lib.mkDefault pkgs.pinentry-gnome3;
 
         # https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1050913
-        xdg.portal.config.sway.default = mkDefault [ "wlr" "gtk" ];
+        xdg.portal.config.sway.default = lib.mkDefault [ "wlr" "gtk" ];
 
         # To make a Sway session available if a display manager like SDDM is enabled:
-        services.displayManager.sessionPackages = optionals (cfg.package != null) [ cfg.package ]; }
+        services.displayManager.sessionPackages = lib.optionals (cfg.package != null) [ cfg.package ]; }
       (import ./wayland-session.nix { inherit lib pkgs; })
     ]);
 
diff --git a/nixos/modules/programs/wayland/waybar.nix b/nixos/modules/programs/wayland/waybar.nix
index ffe889504cd3..ab811994be07 100644
--- a/nixos/modules/programs/wayland/waybar.nix
+++ b/nixos/modules/programs/wayland/waybar.nix
@@ -1,17 +1,15 @@
 { lib, pkgs, config, ... }:
 
-with lib;
-
 let
   cfg = config.programs.waybar;
 in
 {
   options.programs.waybar = {
-    enable = mkEnableOption "waybar, a highly customizable Wayland bar for Sway and Wlroots based compositors";
-    package = mkPackageOption pkgs "waybar" { };
+    enable = lib.mkEnableOption "waybar, a highly customizable Wayland bar for Sway and Wlroots based compositors";
+    package = lib.mkPackageOption pkgs "waybar" { };
   };
 
-  config = mkIf cfg.enable {
+  config = lib.mkIf cfg.enable {
     environment.systemPackages = [ cfg.package ];
     systemd.user.services.waybar = {
       description = "Waybar as systemd service";
@@ -21,5 +19,5 @@ in
     };
   };
 
-  meta.maintainers = [ maintainers.FlorianFranzen ];
+  meta.maintainers = [ lib.maintainers.FlorianFranzen ];
 }
diff --git a/nixos/modules/programs/wayland/wayland-session.nix b/nixos/modules/programs/wayland/wayland-session.nix
index da117ceae0ad..47ee0788e0f3 100644
--- a/nixos/modules/programs/wayland/wayland-session.nix
+++ b/nixos/modules/programs/wayland/wayland-session.nix
@@ -1,19 +1,19 @@
-{ lib, pkgs, ... }: with lib; {
+{ lib, pkgs, ... }: {
     security = {
       polkit.enable = true;
       pam.services.swaylock = {};
     };
 
-    hardware.opengl.enable = mkDefault true;
-    fonts.enableDefaultPackages = mkDefault true;
+    hardware.opengl.enable = lib.mkDefault true;
+    fonts.enableDefaultPackages = lib.mkDefault true;
 
     programs = {
-      dconf.enable = mkDefault true;
-      xwayland.enable = mkDefault true;
+      dconf.enable = lib.mkDefault true;
+      xwayland.enable = lib.mkDefault true;
     };
 
     xdg.portal = {
-      enable = mkDefault true;
+      enable = lib.mkDefault true;
 
       extraPortals = [
         # For screen sharing
diff --git a/nixos/modules/programs/weylus.nix b/nixos/modules/programs/weylus.nix
index a47dccb95cd9..d76e2f81b2c9 100644
--- a/nixos/modules/programs/weylus.nix
+++ b/nixos/modules/programs/weylus.nix
@@ -1,15 +1,13 @@
 { config, lib, pkgs, ... }:
 
-with lib;
-
 let
   cfg = config.programs.weylus;
 in
 {
-  options.programs.weylus = with types; {
-    enable = mkEnableOption "weylus, which turns your smart phone into a graphic tablet/touch screen for your computer";
+  options.programs.weylus = with lib.types; {
+    enable = lib.mkEnableOption "weylus, which turns your smart phone into a graphic tablet/touch screen for your computer";
 
-    openFirewall = mkOption {
+    openFirewall = lib.mkOption {
       type = bool;
       default = false;
       description = ''
@@ -17,7 +15,7 @@ in
       '';
     };
 
-     users = mkOption {
+     users = lib.mkOption {
       type = listOf str;
       default = [ ];
       description = ''
@@ -26,10 +24,10 @@ in
       '';
     };
 
-    package = mkPackageOption pkgs "weylus" { };
+    package = lib.mkPackageOption pkgs "weylus" { };
   };
-  config = mkIf cfg.enable {
-    networking.firewall = mkIf cfg.openFirewall {
+  config = lib.mkIf cfg.enable {
+    networking.firewall = lib.mkIf cfg.openFirewall {
       allowedTCPPorts = [ 1701 9001 ];
     };
 
diff --git a/nixos/modules/programs/wireshark.nix b/nixos/modules/programs/wireshark.nix
index 2d947154e822..f5673e5940fe 100644
--- a/nixos/modules/programs/wireshark.nix
+++ b/nixos/modules/programs/wireshark.nix
@@ -1,28 +1,26 @@
 { config, lib, pkgs, ... }:
 
-with lib;
-
 let
   cfg = config.programs.wireshark;
   wireshark = cfg.package;
 in {
   options = {
     programs.wireshark = {
-      enable = mkOption {
-        type = types.bool;
+      enable = lib.mkOption {
+        type = lib.types.bool;
         default = false;
         description = ''
           Whether to add Wireshark to the global environment and configure a
           setcap wrapper for 'dumpcap' for users in the 'wireshark' group.
         '';
       };
-      package = mkPackageOption pkgs "wireshark-cli" {
+      package = lib.mkPackageOption pkgs "wireshark-cli" {
         example = "wireshark";
       };
     };
   };
 
-  config = mkIf cfg.enable {
+  config = lib.mkIf cfg.enable {
     environment.systemPackages = [ wireshark ];
     users.groups.wireshark = {};
 
diff --git a/nixos/modules/programs/xastir.nix b/nixos/modules/programs/xastir.nix
index d9c687289ec2..96201eb5455d 100644
--- a/nixos/modules/programs/xastir.nix
+++ b/nixos/modules/programs/xastir.nix
@@ -1,17 +1,15 @@
 { config, lib, pkgs, ... }:
 
-with lib;
-
 let
   cfg = config.programs.xastir;
 in {
-  meta.maintainers = with maintainers; [ melling ];
+  meta.maintainers = with lib.maintainers; [ melling ];
 
   options.programs.xastir = {
-    enable = mkEnableOption "Xastir Graphical APRS client";
+    enable = lib.mkEnableOption "Xastir Graphical APRS client";
   };
 
-  config = mkIf cfg.enable {
+  config = lib.mkIf cfg.enable {
     environment.systemPackages = with pkgs; [ xastir ];
     security.wrappers.xastir = {
       source = "${pkgs.xastir}/bin/xastir";
diff --git a/nixos/modules/programs/xfconf.nix b/nixos/modules/programs/xfconf.nix
index 8e854b40e513..f2fda3b692d3 100644
--- a/nixos/modules/programs/xfconf.nix
+++ b/nixos/modules/programs/xfconf.nix
@@ -1,21 +1,19 @@
 { config, lib, pkgs, ... }:
 
-with lib;
-
 let cfg = config.programs.xfconf;
 
 in {
   meta = {
-    maintainers = teams.xfce.members;
+    maintainers = lib.teams.xfce.members;
   };
 
   options = {
     programs.xfconf = {
-      enable = mkEnableOption "Xfconf, the Xfce configuration storage system";
+      enable = lib.mkEnableOption "Xfconf, the Xfce configuration storage system";
     };
   };
 
-  config = mkIf cfg.enable {
+  config = lib.mkIf cfg.enable {
     environment.systemPackages = [
       pkgs.xfce.xfconf
     ];
diff --git a/nixos/modules/programs/xfs_quota.nix b/nixos/modules/programs/xfs_quota.nix
index 8f70cc2d9416..5ca05f4dc297 100644
--- a/nixos/modules/programs/xfs_quota.nix
+++ b/nixos/modules/programs/xfs_quota.nix
@@ -2,15 +2,13 @@
 
 { config, lib, pkgs, ... }:
 
-with lib;
-
 let
 
   cfg = config.programs.xfs_quota;
 
-  limitOptions = opts: concatStringsSep " " [
-    (optionalString (opts.sizeSoftLimit != null) "bsoft=${opts.sizeSoftLimit}")
-    (optionalString (opts.sizeHardLimit != null) "bhard=${opts.sizeHardLimit}")
+  limitOptions = opts: builtins.concatStringsSep " " [
+    (lib.optionalString (opts.sizeSoftLimit != null) "bsoft=${opts.sizeSoftLimit}")
+    (lib.optionalString (opts.sizeHardLimit != null) "bhard=${opts.sizeHardLimit}")
   ];
 
 in
@@ -22,35 +20,35 @@ in
   options = {
 
     programs.xfs_quota = {
-      projects = mkOption {
+      projects = lib.mkOption {
         default = {};
-        type = types.attrsOf (types.submodule {
+        type = lib.types.attrsOf (lib.types.submodule {
           options = {
-            id = mkOption {
-              type = types.int;
+            id = lib.mkOption {
+              type = lib.types.int;
               description = "Project ID.";
             };
 
-            fileSystem = mkOption {
-              type = types.str;
+            fileSystem = lib.mkOption {
+              type = lib.types.str;
               description = "XFS filesystem hosting the xfs_quota project.";
               default = "/";
             };
 
-            path = mkOption {
-              type = types.str;
+            path = lib.mkOption {
+              type = lib.types.str;
               description = "Project directory.";
             };
 
-            sizeSoftLimit = mkOption {
-              type = types.nullOr types.str;
+            sizeSoftLimit = lib.mkOption {
+              type = lib.types.nullOr lib.types.str;
               default = null;
               example = "30g";
               description = "Soft limit of the project size";
             };
 
-            sizeHardLimit = mkOption {
-              type = types.nullOr types.str;
+            sizeHardLimit = lib.mkOption {
+              type = lib.types.nullOr lib.types.str;
               default = null;
               example = "50g";
               description = "Hard limit of the project size.";
@@ -75,18 +73,18 @@ in
 
   ###### implementation
 
-  config = mkIf (cfg.projects != {}) {
+  config = lib.mkIf (cfg.projects != {}) {
 
     environment.etc.projects.source = pkgs.writeText "etc-project"
-      (concatStringsSep "\n" (mapAttrsToList
-        (name: opts: "${toString opts.id}:${opts.path}") cfg.projects));
+      (builtins.concatStringsSep "\n" (lib.mapAttrsToList
+        (name: opts: "${builtins.toString opts.id}:${opts.path}") cfg.projects));
 
     environment.etc.projid.source = pkgs.writeText "etc-projid"
-      (concatStringsSep "\n" (mapAttrsToList
-        (name: opts: "${name}:${toString opts.id}") cfg.projects));
+      (builtins.concatStringsSep "\n" (lib.mapAttrsToList
+        (name: opts: "${name}:${builtins.toString opts.id}") cfg.projects));
 
-    systemd.services = mapAttrs' (name: opts:
-      nameValuePair "xfs_quota-${name}" {
+    systemd.services = lib.mapAttrs' (name: opts:
+      lib.nameValuePair "xfs_quota-${name}" {
         description = "Setup xfs_quota for project ${name}";
         script = ''
           ${pkgs.xfsprogs.bin}/bin/xfs_quota -x -c 'project -s ${name}' ${opts.fileSystem}
@@ -94,7 +92,7 @@ in
         '';
 
         wantedBy = [ "multi-user.target" ];
-        after = [ ((replaceStrings [ "/" ] [ "-" ] opts.fileSystem) + ".mount") ];
+        after = [ ((builtins.replaceStrings [ "/" ] [ "-" ] opts.fileSystem) + ".mount") ];
 
         restartTriggers = [ config.environment.etc.projects.source ];
 
diff --git a/nixos/modules/programs/xonsh.nix b/nixos/modules/programs/xonsh.nix
index fefe6b456c96..eed5152ba69a 100644
--- a/nixos/modules/programs/xonsh.nix
+++ b/nixos/modules/programs/xonsh.nix
@@ -2,8 +2,6 @@
 
 { config, lib, pkgs, ... }:
 
-with lib;
-
 let
 
   cfg = config.programs.xonsh;
@@ -16,29 +14,29 @@ in
 
     programs.xonsh = {
 
-      enable = mkOption {
+      enable = lib.mkOption {
         default = false;
         description = ''
           Whether to configure xonsh as an interactive shell.
         '';
-        type = types.bool;
+        type = lib.types.bool;
       };
 
-      package = mkPackageOption pkgs "xonsh" {
+      package = lib.mkPackageOption pkgs "xonsh" {
         example = "xonsh.override { extraPackages = ps: [ ps.requests ]; }";
       };
 
-      config = mkOption {
+      config = lib.mkOption {
         default = "";
         description = "Control file to customize your shell behavior.";
-        type = types.lines;
+        type = lib.types.lines;
       };
 
     };
 
   };
 
-  config = mkIf cfg.enable {
+  config = lib.mkIf cfg.enable {
 
     environment.etc."xonsh/xonshrc".text = ''
       # /etc/xonsh/xonshrc: DO NOT EDIT -- this file has been generated automatically.
diff --git a/nixos/modules/programs/xss-lock.nix b/nixos/modules/programs/xss-lock.nix
index 1bb73905599f..b818c52e1442 100644
--- a/nixos/modules/programs/xss-lock.nix
+++ b/nixos/modules/programs/xss-lock.nix
@@ -1,26 +1,24 @@
 { config, pkgs, lib, ... }:
 
-with lib;
-
 let
   cfg = config.programs.xss-lock;
 in
 {
   options.programs.xss-lock = {
-    enable = mkEnableOption "xss-lock";
+    enable = lib.mkEnableOption "xss-lock";
 
-    lockerCommand = mkOption {
+    lockerCommand = lib.mkOption {
       default = "${pkgs.i3lock}/bin/i3lock";
-      defaultText = literalExpression ''"''${pkgs.i3lock}/bin/i3lock"'';
-      example = literalExpression ''"''${pkgs.i3lock-fancy}/bin/i3lock-fancy"'';
-      type = types.separatedString " ";
+      defaultText = lib.literalExpression ''"''${pkgs.i3lock}/bin/i3lock"'';
+      example = lib.literalExpression ''"''${pkgs.i3lock-fancy}/bin/i3lock-fancy"'';
+      type = lib.types.separatedString " ";
       description = "Locker to be used with xsslock";
     };
 
-    extraOptions = mkOption {
+    extraOptions = lib.mkOption {
       default = [ ];
       example = [ "--ignore-sleep" ];
-      type = types.listOf types.str;
+      type = lib.types.listOf lib.types.str;
       description = ''
         Additional command-line arguments to pass to
         {command}`xss-lock`.
@@ -28,19 +26,24 @@ in
     };
   };
 
-  config = mkIf cfg.enable {
+  config = lib.mkIf cfg.enable {
     systemd.user.services.xss-lock = {
       description = "XSS Lock Daemon";
       wantedBy = [ "graphical-session.target" ];
       partOf = [ "graphical-session.target" ];
-      serviceConfig.ExecStart = with lib;
-        strings.concatStringsSep " " ([
+      serviceConfig.ExecStart =
+        builtins.concatStringsSep " " ([
             "${pkgs.xss-lock}/bin/xss-lock" "--session \${XDG_SESSION_ID}"
-          ] ++ (map escapeShellArg cfg.extraOptions) ++ [
+          ] ++ (builtins.map lib.escapeShellArg cfg.extraOptions) ++ [
             "--"
             cfg.lockerCommand
         ]);
       serviceConfig.Restart = "always";
     };
+
+    warnings = lib.mkIf (config.services.xserver.displayManager.startx.enable) [
+      "xss-lock service only works if a displayManager is set; it doesn't work when services.xserver.displayManager.startx.enable = true"
+    ];
+
   };
 }
diff --git a/nixos/modules/programs/xwayland.nix b/nixos/modules/programs/xwayland.nix
index 3a8080fa4c4d..3df3dbf3783f 100644
--- a/nixos/modules/programs/xwayland.nix
+++ b/nixos/modules/programs/xwayland.nix
@@ -1,7 +1,5 @@
 { config, lib, pkgs, ... }:
 
-with lib;
-
 let
   cfg = config.programs.xwayland;
 
@@ -10,13 +8,13 @@ in
 {
   options.programs.xwayland = {
 
-    enable = mkEnableOption "Xwayland (an X server for interfacing X11 apps with the Wayland protocol)";
+    enable = lib.mkEnableOption "Xwayland (an X server for interfacing X11 apps with the Wayland protocol)";
 
-    defaultFontPath = mkOption {
-      type = types.str;
-      default = optionalString config.fonts.fontDir.enable
+    defaultFontPath = lib.mkOption {
+      type = lib.types.str;
+      default = lib.optionalString config.fonts.fontDir.enable
         "/run/current-system/sw/share/X11/fonts";
-      defaultText = literalExpression ''
+      defaultText = lib.literalExpression ''
         optionalString config.fonts.fontDir.enable "/run/current-system/sw/share/X11/fonts"
       '';
       description = ''
@@ -24,12 +22,12 @@ in
       '';
     };
 
-    package = mkOption {
-      type = types.path;
+    package = lib.mkOption {
+      type = lib.types.path;
       default = pkgs.xwayland.override (oldArgs: {
         inherit (cfg) defaultFontPath;
       });
-      defaultText = literalExpression ''
+      defaultText = lib.literalExpression ''
         pkgs.xwayland.override (oldArgs: {
           inherit (config.programs.xwayland) defaultFontPath;
         })
@@ -39,7 +37,7 @@ in
 
   };
 
-  config = mkIf cfg.enable {
+  config = lib.mkIf cfg.enable {
 
     # Needed by some applications for fonts and default settings
     environment.pathsToLink = [ "/share/X11" ];
diff --git a/nixos/modules/programs/yabar.nix b/nixos/modules/programs/yabar.nix
index 6e117506a2dc..0457f8e76655 100644
--- a/nixos/modules/programs/yabar.nix
+++ b/nixos/modules/programs/yabar.nix
@@ -1,18 +1,16 @@
 { lib, pkgs, config, ... }:
 
-with lib;
-
 let
   cfg = config.programs.yabar;
 
-  mapExtra = v: lib.concatStringsSep "\n" (mapAttrsToList (
-    key: val: "${key} = ${if (isString val) then "\"${val}\"" else "${builtins.toString val}"};"
+  mapExtra = v: lib.concatStringsSep "\n" (lib.mapAttrsToList (
+    key: val: "${key} = ${if (builtins.isString val) then "\"${val}\"" else "${builtins.toString val}"};"
   ) v);
 
-  listKeys = r: concatStringsSep "," (map (n: "\"${n}\"") (attrNames r));
+  listKeys = r: builtins.concatStringsSep "," (builtins.map (n: "\"${n}\"") (builtins.attrNames r));
 
   configFile = let
-    bars = mapAttrsToList (
+    bars = lib.mapAttrsToList (
       name: cfg: ''
         ${name}: {
           font: "${cfg.font}";
@@ -22,7 +20,7 @@ let
 
           block-list: [${listKeys cfg.indicators}]
 
-          ${concatStringsSep "\n" (mapAttrsToList (
+          ${builtins.concatStringsSep "\n" (lib.mapAttrsToList (
             name: cfg: ''
               ${name}: {
                 exec: "${cfg.exec}";
@@ -36,21 +34,21 @@ let
     ) cfg.bars;
   in pkgs.writeText "yabar.conf" ''
     bar-list = [${listKeys cfg.bars}];
-    ${concatStringsSep "\n" bars}
+    ${builtins.concatStringsSep "\n" bars}
   '';
 in
   {
     options.programs.yabar = {
-      enable = mkEnableOption "yabar, a status bar for X window managers";
+      enable = lib.mkEnableOption "yabar, a status bar for X window managers";
 
-      package = mkOption {
+      package = lib.mkOption {
         default = pkgs.yabar-unstable;
-        defaultText = literalExpression "pkgs.yabar-unstable";
-        example = literalExpression "pkgs.yabar";
-        type = types.package;
+        defaultText = lib.literalExpression "pkgs.yabar-unstable";
+        example = lib.literalExpression "pkgs.yabar";
+        type = lib.types.package;
 
         # `yabar-stable` segfaults under certain conditions.
-        apply = x: if x == pkgs.yabar-unstable then x else flip warn x ''
+        apply = x: if x == pkgs.yabar-unstable then x else lib.flip lib.warn x ''
           It's not recommended to use `yabar' with `programs.yabar', the (old) stable release
           tends to segfault under certain circumstances:
 
@@ -70,63 +68,63 @@ in
         '';
       };
 
-      bars = mkOption {
+      bars = lib.mkOption {
         default = {};
-        type = types.attrsOf(types.submodule {
+        type = lib.types.attrsOf(lib.types.submodule {
           options = {
-            font = mkOption {
+            font = lib.mkOption {
               default = "sans bold 9";
               example = "Droid Sans, FontAwesome Bold 9";
-              type = types.str;
+              type = lib.types.str;
 
               description = ''
                 The font that will be used to draw the status bar.
               '';
             };
 
-            position = mkOption {
+            position = lib.mkOption {
               default = "top";
               example = "bottom";
-              type = types.enum [ "top" "bottom" ];
+              type = lib.types.enum [ "top" "bottom" ];
 
               description = ''
                 The position where the bar will be rendered.
               '';
             };
 
-            extra = mkOption {
+            extra = lib.mkOption {
               default = {};
-              type = types.attrsOf types.str;
+              type = lib.types.attrsOf lib.types.str;
 
               description = ''
                 An attribute set which contains further attributes of a bar.
               '';
             };
 
-            indicators = mkOption {
+            indicators = lib.mkOption {
               default = {};
-              type = types.attrsOf(types.submodule {
-                options.exec = mkOption {
+              type = lib.types.attrsOf(lib.types.submodule {
+                options.exec = lib.mkOption {
                   example = "YABAR_DATE";
-                  type = types.str;
+                  type = lib.types.str;
                   description = ''
                      The type of the indicator to be executed.
                   '';
                 };
 
-                options.align = mkOption {
+                options.align = lib.mkOption {
                   default = "left";
                   example = "right";
-                  type = types.enum [ "left" "center" "right" ];
+                  type = lib.types.enum [ "left" "center" "right" ];
 
                   description = ''
                     Whether to align the indicator at the left or right of the bar.
                   '';
                 };
 
-                options.extra = mkOption {
+                options.extra = lib.mkOption {
                   default = {};
-                  type = types.attrsOf (types.either types.str types.int);
+                  type = lib.types.attrsOf (lib.types.either lib.types.str lib.types.int);
 
                   description = ''
                     An attribute set which contains further attributes of a indicator.
@@ -147,7 +145,7 @@ in
       };
     };
 
-    config = mkIf cfg.enable {
+    config = lib.mkIf cfg.enable {
       systemd.user.services.yabar = {
         description = "yabar service";
         wantedBy = [ "graphical-session.target" ];
diff --git a/nixos/modules/programs/ydotool.nix b/nixos/modules/programs/ydotool.nix
new file mode 100644
index 000000000000..f639e9283de4
--- /dev/null
+++ b/nixos/modules/programs/ydotool.nix
@@ -0,0 +1,83 @@
+{
+  config,
+  lib,
+  pkgs,
+  ...
+}:
+let
+  cfg = config.programs.ydotool;
+in
+{
+  meta = {
+    maintainers = with lib.maintainers; [ quantenzitrone ];
+  };
+
+  options.programs.ydotool = {
+    enable = lib.mkEnableOption ''
+      ydotoold system service and install ydotool.
+      Add yourself to the 'ydotool' group to be able to use it.
+    '';
+  };
+
+  config = lib.mkIf cfg.enable {
+    users.groups.ydotool = { };
+
+    systemd.services.ydotoold = {
+      description = "ydotoold - backend for ydotool";
+      wantedBy = [ "multi-user.target" ];
+      partOf = [ "multi-user.target" ];
+      serviceConfig = {
+        Group = "ydotool";
+        RuntimeDirectory = "ydotoold";
+        RuntimeDirectoryMode = "0750";
+        ExecStart = "${lib.getExe' pkgs.ydotool "ydotoold"} --socket-path=/run/ydotoold/socket --socket-perm=0660";
+
+        # hardening
+
+        ## allow access to uinput
+        DeviceAllow = [ "/dev/uinput" ];
+        DevicePolicy = "closed";
+
+        ## allow creation of unix sockets
+        RestrictAddressFamilies = [ "AF_UNIX" ];
+
+        CapabilityBoundingSet = "";
+        IPAddressDeny = "any";
+        LockPersonality = true;
+        MemoryDenyWriteExecute = true;
+        NoNewPrivileges = true;
+        PrivateNetwork = true;
+        PrivateTmp = true;
+        PrivateUsers = true;
+        ProcSubset = "pid";
+        ProtectClock = true;
+        ProtectControlGroups = true;
+        ProtectHome = true;
+        ProtectHostname = true;
+        ProtectKernelLogs = true;
+        ProtectKernelModules = true;
+        ProtectKernelTunables = true;
+        ProtectProc = "invisible";
+        ProtectSystem = "strict";
+        ProtectUser = true;
+        RestrictNamespaces = true;
+        RestrictRealtime = true;
+        RestrictSUIDSGID = true;
+        SystemCallArchitectures = "native";
+        SystemCallFilter = [
+          "@system-service"
+          "~@privileged"
+          "~@resources"
+        ];
+        UMask = "0077";
+
+        # -> systemd-analyze security score 0.7 SAFE 😀
+      };
+    };
+
+    environment.variables = {
+      YDOTOOL_SOCKET = "/run/ydotoold/socket";
+    };
+    environment.systemPackages = with pkgs; [ ydotool ];
+  };
+}
diff --git a/nixos/modules/programs/zmap.nix b/nixos/modules/programs/zmap.nix
index 827d9bedca13..4f31d42c4add 100644
--- a/nixos/modules/programs/zmap.nix
+++ b/nixos/modules/programs/zmap.nix
@@ -1,15 +1,13 @@
 { pkgs, config, lib, ... }:
 
-with lib;
-
 let
   cfg = config.programs.zmap;
 in {
   options.programs.zmap = {
-    enable = mkEnableOption "ZMap, a network scanner designed for Internet-wide network surveys";
+    enable = lib.mkEnableOption "ZMap, a network scanner designed for Internet-wide network surveys";
   };
 
-  config = mkIf cfg.enable {
+  config = lib.mkIf cfg.enable {
     environment.systemPackages = [ pkgs.zmap ];
 
     environment.etc."zmap/blacklist.conf".source = "${pkgs.zmap}/etc/zmap/blacklist.conf";
diff --git a/nixos/modules/programs/zsh/oh-my-zsh.nix b/nixos/modules/programs/zsh/oh-my-zsh.nix
index f2a5a7560e40..2120cf1af07e 100644
--- a/nixos/modules/programs/zsh/oh-my-zsh.nix
+++ b/nixos/modules/programs/zsh/oh-my-zsh.nix
@@ -1,7 +1,5 @@
 { config, lib, pkgs, ... }:
 
-with lib;
-
 let
 
   cfg = config.programs.zsh.ohMyZsh;
@@ -20,7 +18,7 @@ let
 
   custom =
     if cfg.custom != null then cfg.custom
-    else if length cfg.customPkgs == 0 then null
+    else if builtins.length cfg.customPkgs == 0 then null
     else pkgs.linkFarm "oh-my-zsh-custom" [
       (mkLinkFarmEntry' "themes")
       (mkLinkFarmEntry "completions" "site-functions")
@@ -30,60 +28,60 @@ let
 in
   {
     imports = [
-      (mkRenamedOptionModule [ "programs" "zsh" "oh-my-zsh" "enable" ] [ "programs" "zsh" "ohMyZsh" "enable" ])
-      (mkRenamedOptionModule [ "programs" "zsh" "oh-my-zsh" "theme" ] [ "programs" "zsh" "ohMyZsh" "theme" ])
-      (mkRenamedOptionModule [ "programs" "zsh" "oh-my-zsh" "custom" ] [ "programs" "zsh" "ohMyZsh" "custom" ])
-      (mkRenamedOptionModule [ "programs" "zsh" "oh-my-zsh" "plugins" ] [ "programs" "zsh" "ohMyZsh" "plugins" ])
+      (lib.mkRenamedOptionModule [ "programs" "zsh" "oh-my-zsh" "enable" ] [ "programs" "zsh" "ohMyZsh" "enable" ])
+      (lib.mkRenamedOptionModule [ "programs" "zsh" "oh-my-zsh" "theme" ] [ "programs" "zsh" "ohMyZsh" "theme" ])
+      (lib.mkRenamedOptionModule [ "programs" "zsh" "oh-my-zsh" "custom" ] [ "programs" "zsh" "ohMyZsh" "custom" ])
+      (lib.mkRenamedOptionModule [ "programs" "zsh" "oh-my-zsh" "plugins" ] [ "programs" "zsh" "ohMyZsh" "plugins" ])
     ];
 
     options = {
       programs.zsh.ohMyZsh = {
-        enable = mkOption {
-          type = types.bool;
+        enable = lib.mkOption {
+          type = lib.types.bool;
           default = false;
           description = ''
             Enable oh-my-zsh.
           '';
         };
 
-        package = mkPackageOption pkgs "oh-my-zsh" { };
+        package = lib.mkPackageOption pkgs "oh-my-zsh" { };
 
-        plugins = mkOption {
+        plugins = lib.mkOption {
           default = [];
-          type = types.listOf(types.str);
+          type = lib.types.listOf(lib.types.str);
           description = ''
             List of oh-my-zsh plugins
           '';
         };
 
-        custom = mkOption {
+        custom = lib.mkOption {
           default = null;
-          type = with types; nullOr str;
+          type = with lib.types; nullOr str;
           description = ''
             Path to a custom oh-my-zsh package to override config of oh-my-zsh.
             (Can't be used along with `customPkgs`).
           '';
         };
 
-        customPkgs = mkOption {
+        customPkgs = lib.mkOption {
           default = [];
-          type = types.listOf types.package;
+          type = lib.types.listOf lib.types.package;
           description = ''
             List of custom packages that should be loaded into `oh-my-zsh`.
           '';
         };
 
-        theme = mkOption {
+        theme = lib.mkOption {
           default = "";
-          type = types.str;
+          type = lib.types.str;
           description = ''
             Name of the theme to be used by oh-my-zsh.
           '';
         };
 
-        cacheDir = mkOption {
+        cacheDir = lib.mkOption {
           default = "$HOME/.cache/oh-my-zsh";
-          type = types.str;
+          type = lib.types.str;
           description = ''
             Cache directory to be used by `oh-my-zsh`.
             Without this option it would default to the read-only nix store.
@@ -92,10 +90,10 @@ in
       };
     };
 
-    config = mkIf cfg.enable {
+    config = lib.mkIf cfg.enable {
 
       # Prevent zsh from overwriting oh-my-zsh's prompt
-      programs.zsh.promptInit = mkDefault "";
+      programs.zsh.promptInit = lib.mkDefault "";
 
       environment.systemPackages = [ cfg.package ];
 
@@ -103,19 +101,19 @@ in
         # oh-my-zsh configuration generated by NixOS
         export ZSH=${cfg.package}/share/oh-my-zsh
 
-        ${optionalString (length(cfg.plugins) > 0)
-          "plugins=(${concatStringsSep " " cfg.plugins})"
+        ${lib.optionalString (builtins.length(cfg.plugins) > 0)
+          "plugins=(${builtins.concatStringsSep " " cfg.plugins})"
         }
 
-        ${optionalString (custom != null)
+        ${lib.optionalString (custom != null)
           "ZSH_CUSTOM=\"${custom}\""
         }
 
-        ${optionalString (stringLength(cfg.theme) > 0)
+        ${lib.optionalString (builtins.stringLength(cfg.theme) > 0)
           "ZSH_THEME=\"${cfg.theme}\""
         }
 
-        ${optionalString (cfg.cacheDir != null) ''
+        ${lib.optionalString (cfg.cacheDir != null) ''
           if [[ ! -d "${cfg.cacheDir}" ]]; then
             mkdir -p "${cfg.cacheDir}"
           fi
diff --git a/nixos/modules/programs/zsh/zsh-autoenv.nix b/nixos/modules/programs/zsh/zsh-autoenv.nix
index f07fb5c24d7b..8e0c19f1afea 100644
--- a/nixos/modules/programs/zsh/zsh-autoenv.nix
+++ b/nixos/modules/programs/zsh/zsh-autoenv.nix
@@ -1,18 +1,16 @@
 { config, lib, pkgs, ... }:
 
-with lib;
-
 let
   cfg = config.programs.zsh.zsh-autoenv;
 in {
   options = {
     programs.zsh.zsh-autoenv = {
-      enable = mkEnableOption "zsh-autoenv";
-      package = mkPackageOption pkgs "zsh-autoenv" { };
+      enable = lib.mkEnableOption "zsh-autoenv";
+      package = lib.mkPackageOption pkgs "zsh-autoenv" { };
     };
   };
 
-  config = mkIf cfg.enable {
+  config = lib.mkIf cfg.enable {
     programs.zsh.interactiveShellInit = ''
       source ${cfg.package}/share/zsh-autoenv/autoenv.zsh
     '';
diff --git a/nixos/modules/programs/zsh/zsh-autosuggestions.nix b/nixos/modules/programs/zsh/zsh-autosuggestions.nix
index 2e53e907d547..e046c2102500 100644
--- a/nixos/modules/programs/zsh/zsh-autosuggestions.nix
+++ b/nixos/modules/programs/zsh/zsh-autosuggestions.nix
@@ -1,28 +1,26 @@
 { config, pkgs, lib, ... }:
 
-with lib;
-
 let
   cfg = config.programs.zsh.autosuggestions;
 in
 {
   imports = [
-    (mkRenamedOptionModule [ "programs" "zsh" "enableAutosuggestions" ] [ "programs" "zsh" "autosuggestions" "enable" ])
+    (lib.mkRenamedOptionModule [ "programs" "zsh" "enableAutosuggestions" ] [ "programs" "zsh" "autosuggestions" "enable" ])
   ];
 
   options.programs.zsh.autosuggestions = {
 
-    enable = mkEnableOption "zsh-autosuggestions";
+    enable = lib.mkEnableOption "zsh-autosuggestions";
 
-    highlightStyle = mkOption {
-      type = types.str;
+    highlightStyle = lib.mkOption {
+      type = lib.types.str;
       default = "fg=8"; # https://github.com/zsh-users/zsh-autosuggestions/tree/v0.4.3#suggestion-highlight-style
       description = "Highlight style for suggestions ({fore,back}ground color)";
       example = "fg=cyan";
     };
 
-    strategy = mkOption {
-      type = types.listOf (types.enum [ "history" "completion" "match_prev_cmd" ]);
+    strategy = lib.mkOption {
+      type = lib.types.listOf (lib.types.enum [ "history" "completion" "match_prev_cmd" ]);
       default = [ "history" ];
       description = ''
         `ZSH_AUTOSUGGEST_STRATEGY` is an array that specifies how suggestions should be generated.
@@ -37,18 +35,18 @@ in
       '';
     };
 
-    async = mkOption {
-      type = types.bool;
+    async = lib.mkOption {
+      type = lib.types.bool;
       default = true;
       description = "Whether to fetch suggestions asynchronously";
       example = false;
     };
 
-    extraConfig = mkOption {
-      type = with types; attrsOf str;
+    extraConfig = lib.mkOption {
+      type = lib.types.attrsOf lib.types.str;
       default = {};
       description = "Attribute set with additional configuration values";
-      example = literalExpression ''
+      example = lib.literalExpression ''
         {
           "ZSH_AUTOSUGGEST_BUFFER_MAX_SIZE" = "20";
         }
@@ -57,16 +55,16 @@ in
 
   };
 
-  config = mkIf cfg.enable {
+  config = lib.mkIf cfg.enable {
 
     programs.zsh.interactiveShellInit = ''
       source ${pkgs.zsh-autosuggestions}/share/zsh-autosuggestions/zsh-autosuggestions.zsh
 
       export ZSH_AUTOSUGGEST_HIGHLIGHT_STYLE="${cfg.highlightStyle}"
-      export ZSH_AUTOSUGGEST_STRATEGY=(${concatStringsSep " " cfg.strategy})
-      ${optionalString (!cfg.async) "unset ZSH_AUTOSUGGEST_USE_ASYNC"}
+      export ZSH_AUTOSUGGEST_STRATEGY=(${builtins.concatStringsSep " " cfg.strategy})
+      ${lib.optionalString (!cfg.async) "unset ZSH_AUTOSUGGEST_USE_ASYNC"}
 
-      ${concatStringsSep "\n" (mapAttrsToList (key: value: ''export ${key}="${value}"'') cfg.extraConfig)}
+      ${builtins.concatStringsSep "\n" (lib.mapAttrsToList (key: value: ''export ${key}="${value}"'') cfg.extraConfig)}
     '';
 
   };
diff --git a/nixos/modules/programs/zsh/zsh-syntax-highlighting.nix b/nixos/modules/programs/zsh/zsh-syntax-highlighting.nix
index 46bc4fcb87f4..3f70c14048c7 100644
--- a/nixos/modules/programs/zsh/zsh-syntax-highlighting.nix
+++ b/nixos/modules/programs/zsh/zsh-syntax-highlighting.nix
@@ -1,27 +1,25 @@
 { config, lib, pkgs, ... }:
 
-with lib;
-
 let
   cfg = config.programs.zsh.syntaxHighlighting;
 in
 {
   imports = [
-    (mkRenamedOptionModule [ "programs" "zsh" "enableSyntaxHighlighting" ] [ "programs" "zsh" "syntaxHighlighting" "enable" ])
-    (mkRenamedOptionModule [ "programs" "zsh" "syntax-highlighting" "enable" ] [ "programs" "zsh" "syntaxHighlighting" "enable" ])
-    (mkRenamedOptionModule [ "programs" "zsh" "syntax-highlighting" "highlighters" ] [ "programs" "zsh" "syntaxHighlighting" "highlighters" ])
-    (mkRenamedOptionModule [ "programs" "zsh" "syntax-highlighting" "patterns" ] [ "programs" "zsh" "syntaxHighlighting" "patterns" ])
+    (lib.mkRenamedOptionModule [ "programs" "zsh" "enableSyntaxHighlighting" ] [ "programs" "zsh" "syntaxHighlighting" "enable" ])
+    (lib.mkRenamedOptionModule [ "programs" "zsh" "syntax-highlighting" "enable" ] [ "programs" "zsh" "syntaxHighlighting" "enable" ])
+    (lib.mkRenamedOptionModule [ "programs" "zsh" "syntax-highlighting" "highlighters" ] [ "programs" "zsh" "syntaxHighlighting" "highlighters" ])
+    (lib.mkRenamedOptionModule [ "programs" "zsh" "syntax-highlighting" "patterns" ] [ "programs" "zsh" "syntaxHighlighting" "patterns" ])
   ];
 
   options = {
     programs.zsh.syntaxHighlighting = {
-      enable = mkEnableOption "zsh-syntax-highlighting";
+      enable = lib.mkEnableOption "zsh-syntax-highlighting";
 
-      highlighters = mkOption {
+      highlighters = lib.mkOption {
         default = [ "main" ];
 
         # https://github.com/zsh-users/zsh-syntax-highlighting/blob/master/docs/highlighters.md
-        type = types.listOf(types.enum([
+        type = lib.types.listOf(lib.types.enum([
           "main"
           "brackets"
           "pattern"
@@ -39,11 +37,11 @@ in
         '';
       };
 
-      patterns = mkOption {
+      patterns = lib.mkOption {
         default = {};
-        type = types.attrsOf types.str;
+        type = lib.types.attrsOf lib.types.str;
 
-        example = literalExpression ''
+        example = lib.literalExpression ''
           {
             "rm -rf *" = "fg=white,bold,bg=red";
           }
@@ -56,11 +54,11 @@ in
           https://github.com/zsh-users/zsh-syntax-highlighting/blob/master/docs/highlighters/pattern.md
         '';
       };
-      styles = mkOption {
+      styles = lib.mkOption {
         default = {};
-        type = types.attrsOf types.str;
+        type = lib.types.attrsOf lib.types.str;
 
-        example = literalExpression ''
+        example = lib.literalExpression ''
           {
             "alias" = "fg=magenta,bold";
           }
@@ -76,30 +74,30 @@ in
     };
   };
 
-  config = mkIf cfg.enable {
-    environment.systemPackages = with pkgs; [ zsh-syntax-highlighting ];
+  config = lib.mkIf cfg.enable {
+    environment.systemPackages = [ pkgs.zsh-syntax-highlighting ];
 
     assertions = [
       {
-        assertion = length(attrNames cfg.patterns) > 0 -> elem "pattern" cfg.highlighters;
+        assertion = builtins.length(builtins.attrNames cfg.patterns) > 0 -> builtins.elem "pattern" cfg.highlighters;
         message = ''
           When highlighting patterns, "pattern" needs to be included in the list of highlighters.
         '';
       }
     ];
 
-    programs.zsh.interactiveShellInit = with pkgs;
+    programs.zsh.interactiveShellInit =
       lib.mkAfter (lib.concatStringsSep "\n" ([
-        "source ${zsh-syntax-highlighting}/share/zsh-syntax-highlighting/zsh-syntax-highlighting.zsh"
-      ] ++ optional (length(cfg.highlighters) > 0)
-        "ZSH_HIGHLIGHT_HIGHLIGHTERS=(${concatStringsSep " " cfg.highlighters})"
-        ++ optionals (length(attrNames cfg.patterns) > 0)
-          (mapAttrsToList (
+        "source ${pkgs.zsh-syntax-highlighting}/share/zsh-syntax-highlighting/zsh-syntax-highlighting.zsh"
+      ] ++ lib.optional (builtins.length(cfg.highlighters) > 0)
+        "ZSH_HIGHLIGHT_HIGHLIGHTERS=(${builtins.concatStringsSep " " cfg.highlighters})"
+        ++ lib.optionals (builtins.length(builtins.attrNames cfg.patterns) > 0)
+          (lib.mapAttrsToList (
             pattern: design:
             "ZSH_HIGHLIGHT_PATTERNS+=('${pattern}' '${design}')"
           ) cfg.patterns)
-        ++ optionals (length(attrNames cfg.styles) > 0)
-          (mapAttrsToList (
+        ++ lib.optionals (builtins.length(builtins.attrNames cfg.styles) > 0)
+          (lib.mapAttrsToList (
             styles: design:
             "ZSH_HIGHLIGHT_STYLES[${styles}]='${design}'"
           ) cfg.styles)
diff --git a/nixos/modules/programs/zsh/zsh.nix b/nixos/modules/programs/zsh/zsh.nix
index d7e300b50136..35d2cf461056 100644
--- a/nixos/modules/programs/zsh/zsh.nix
+++ b/nixos/modules/programs/zsh/zsh.nix
@@ -2,8 +2,6 @@
 
 { config, lib, options, pkgs, ... }:
 
-with lib;
-
 let
 
   cfge = config.environment;
@@ -11,9 +9,9 @@ let
   cfg = config.programs.zsh;
   opt = options.programs.zsh;
 
-  zshAliases = concatStringsSep "\n" (
-    mapAttrsFlatten (k: v: "alias -- ${k}=${escapeShellArg v}")
-      (filterAttrs (k: v: v != null) cfg.shellAliases)
+  zshAliases = builtins.concatStringsSep "\n" (
+    lib.mapAttrsFlatten (k: v: "alias -- ${k}=${lib.escapeShellArg v}")
+      (lib.filterAttrs (k: v: v != null) cfg.shellAliases)
   );
 
   zshStartupNotes = ''
@@ -42,7 +40,7 @@ in
 
     programs.zsh = {
 
-      enable = mkOption {
+      enable = lib.mkOption {
         default = false;
         description = ''
           Whether to configure zsh as an interactive shell. To enable zsh for
@@ -50,43 +48,43 @@ in
           option for that user. To enable zsh system-wide use the
           {option}`users.defaultUserShell` option.
         '';
-        type = types.bool;
+        type = lib.types.bool;
       };
 
-      shellAliases = mkOption {
+      shellAliases = lib.mkOption {
         default = { };
         description = ''
           Set of aliases for zsh shell, which overrides {option}`environment.shellAliases`.
           See {option}`environment.shellAliases` for an option format description.
         '';
-        type = with types; attrsOf (nullOr (either str path));
+        type = with lib.types; attrsOf (nullOr (either str path));
       };
 
-      shellInit = mkOption {
+      shellInit = lib.mkOption {
         default = "";
         description = ''
           Shell script code called during zsh shell initialisation.
         '';
-        type = types.lines;
+        type = lib.types.lines;
       };
 
-      loginShellInit = mkOption {
+      loginShellInit = lib.mkOption {
         default = "";
         description = ''
           Shell script code called during zsh login shell initialisation.
         '';
-        type = types.lines;
+        type = lib.types.lines;
       };
 
-      interactiveShellInit = mkOption {
+      interactiveShellInit = lib.mkOption {
         default = "";
         description = ''
           Shell script code called during interactive zsh shell initialisation.
         '';
-        type = types.lines;
+        type = lib.types.lines;
       };
 
-      promptInit = mkOption {
+      promptInit = lib.mkOption {
         default = ''
           # Note that to manually override this in ~/.zshrc you should run `prompt off`
           # before setting your PS1 and etc. Otherwise this will likely to interact with
@@ -97,27 +95,27 @@ in
         description = ''
           Shell script code used to initialise the zsh prompt.
         '';
-        type = types.lines;
+        type = lib.types.lines;
       };
 
-      histSize = mkOption {
+      histSize = lib.mkOption {
         default = 2000;
         description = ''
           Change history size.
         '';
-        type = types.int;
+        type = lib.types.int;
       };
 
-      histFile = mkOption {
+      histFile = lib.mkOption {
         default = "$HOME/.zsh_history";
         description = ''
           Change history file.
         '';
-        type = types.str;
+        type = lib.types.str;
       };
 
-      setOptions = mkOption {
-        type = types.listOf types.str;
+      setOptions = lib.mkOption {
+        type = lib.types.listOf lib.types.str;
         default = [
           "HIST_IGNORE_DUPS"
           "SHARE_HISTORY"
@@ -130,25 +128,25 @@ in
         '';
       };
 
-      enableCompletion = mkOption {
+      enableCompletion = lib.mkOption {
         default = true;
         description = ''
           Enable zsh completion for all interactive zsh shells.
         '';
-        type = types.bool;
+        type = lib.types.bool;
       };
 
-      enableBashCompletion = mkOption {
+      enableBashCompletion = lib.mkOption {
         default = false;
         description = ''
           Enable compatibility with bash's programmable completion system.
         '';
-        type = types.bool;
+        type = lib.types.bool;
       };
 
-      enableGlobalCompInit = mkOption {
+      enableGlobalCompInit = lib.mkOption {
         default = cfg.enableCompletion;
-        defaultText = literalExpression "config.${opt.enableCompletion}";
+        defaultText = lib.literalExpression "config.${opt.enableCompletion}";
         description = ''
           Enable execution of compinit call for all interactive zsh shells.
 
@@ -156,24 +154,24 @@ in
           `fpath` and a custom `compinit`
           call in the local config is required.
         '';
-        type = types.bool;
+        type = lib.types.bool;
       };
 
-      enableLsColors = mkOption {
+      enableLsColors = lib.mkOption {
         default = true;
         description = ''
           Enable extra colors in directory listings (used by `ls` and `tree`).
         '';
-        type = types.bool;
+        type = lib.types.bool;
       };
 
     };
 
   };
 
-  config = mkIf cfg.enable {
+  config = lib.mkIf cfg.enable {
 
-    programs.zsh.shellAliases = mapAttrs (name: mkDefault) cfge.shellAliases;
+    programs.zsh.shellAliases = builtins.mapAttrs (name: lib.mkDefault) cfge.shellAliases;
 
     environment.etc.zshenv.text =
       ''
@@ -239,9 +237,9 @@ in
         if [ -n "$__ETC_ZSHRC_SOURCED" -o -n "$NOSYSZSHRC" ]; then return; fi
         __ETC_ZSHRC_SOURCED=1
 
-        ${optionalString (cfg.setOptions != []) ''
+        ${lib.optionalString (cfg.setOptions != []) ''
           # Set zsh options.
-          setopt ${concatStringsSep " " cfg.setOptions}
+          setopt ${builtins.concatStringsSep " " cfg.setOptions}
         ''}
 
         # Alternative method of determining short and full hostname.
@@ -249,19 +247,19 @@ in
 
         # Setup command line history.
         # Don't export these, otherwise other shells (bash) will try to use same HISTFILE.
-        SAVEHIST=${toString cfg.histSize}
-        HISTSIZE=${toString cfg.histSize}
+        SAVEHIST=${builtins.toString cfg.histSize}
+        HISTSIZE=${builtins.toString cfg.histSize}
         HISTFILE=${cfg.histFile}
 
         # Configure sane keyboard defaults.
         . /etc/zinputrc
 
-        ${optionalString cfg.enableGlobalCompInit ''
+        ${lib.optionalString cfg.enableGlobalCompInit ''
           # Enable autocompletion.
           autoload -U compinit && compinit
         ''}
 
-        ${optionalString cfg.enableBashCompletion ''
+        ${lib.optionalString cfg.enableBashCompletion ''
           # Enable compatibility with bash's completion system.
           autoload -U bashcompinit && bashcompinit
         ''}
@@ -271,7 +269,7 @@ in
 
         ${cfg.interactiveShellInit}
 
-        ${optionalString cfg.enableLsColors ''
+        ${lib.optionalString cfg.enableLsColors ''
           # Extra colors for directory listings.
           eval "$(${pkgs.coreutils}/bin/dircolors -b)"
         ''}
@@ -302,11 +300,11 @@ in
     environment.etc.zinputrc.text = builtins.readFile ./zinputrc;
 
     environment.systemPackages = [ pkgs.zsh ]
-      ++ optional cfg.enableCompletion pkgs.nix-zsh-completions;
+      ++ lib.optional cfg.enableCompletion pkgs.nix-zsh-completions;
 
-    environment.pathsToLink = optional cfg.enableCompletion "/share/zsh";
+    environment.pathsToLink = lib.optional cfg.enableCompletion "/share/zsh";
 
-    #users.defaultUserShell = mkDefault "/run/current-system/sw/bin/zsh";
+    #users.defaultUserShell = lib.mkDefault "/run/current-system/sw/bin/zsh";
 
     environment.shells =
       [
diff --git a/nixos/modules/security/systemd-confinement.nix b/nixos/modules/security/systemd-confinement.nix
index 0304749b8d10..041c90033886 100644
--- a/nixos/modules/security/systemd-confinement.nix
+++ b/nixos/modules/security/systemd-confinement.nix
@@ -79,13 +79,20 @@ in {
         description = ''
           The value `full-apivfs` (the default) sets up
           private {file}`/dev`, {file}`/proc`,
-          {file}`/sys` and {file}`/tmp` file systems in a separate user
-          name space.
+          {file}`/sys`, {file}`/tmp` and {file}`/var/tmp` file systems
+          in a separate user name space.
 
           If this is set to `chroot-only`, only the file
           system name space is set up along with the call to
           {manpage}`chroot(2)`.
 
+          In all cases, unless `serviceConfig.PrivateTmp=true` is set,
+          both {file}`/tmp` and {file}`/var/tmp` paths are added to `InaccessiblePaths=`.
+          This is to overcome options like `DynamicUser=true`
+          implying `PrivateTmp=true` without letting it being turned off.
+          Beware however that giving processes the `CAP_SYS_ADMIN` and `@mount` privileges
+          can let them undo the effects of `InaccessiblePaths=`.
+
           ::: {.note}
           This doesn't cover network namespaces and is solely for
           file system level isolation.
@@ -98,8 +105,12 @@ in {
         wantsAPIVFS = lib.mkDefault (config.confinement.mode == "full-apivfs");
       in lib.mkIf config.confinement.enable {
         serviceConfig = {
-          RootDirectory = "/var/empty";
-          TemporaryFileSystem = "/";
+          ReadOnlyPaths = [ "+/" ];
+          RuntimeDirectory = [ "confinement/${mkPathSafeName name}" ];
+          RootDirectory = "/run/confinement/${mkPathSafeName name}";
+          InaccessiblePaths = [
+            "-+/run/confinement/${mkPathSafeName name}"
+          ];
           PrivateMounts = lib.mkDefault true;
 
           # https://github.com/NixOS/nixpkgs/issues/14645 is a future attempt
@@ -148,16 +159,6 @@ in {
               + " Please either define a separate service or find a way to run"
               + " commands other than ExecStart within the chroot.";
     }
-    { assertion = !cfg.serviceConfig.DynamicUser or false;
-      message = "${whatOpt "DynamicUser"}. Please create a dedicated user via"
-              + " the 'users.users' option instead as this combination is"
-              + " currently not supported.";
-    }
-    { assertion = cfg.serviceConfig ? ProtectSystem -> cfg.serviceConfig.ProtectSystem == false;
-      message = "${whatOpt "ProtectSystem"}. ProtectSystem is not compatible"
-              + " with service confinement as it fails to remount /usr within"
-              + " our chroot. Please disable the option.";
-    }
   ]) config.systemd.services);
 
   config.systemd.packages = lib.concatLists (lib.mapAttrsToList (name: cfg: let
@@ -183,6 +184,13 @@ in {
         echo "BindReadOnlyPaths=$realprog:/bin/sh" >> "$serviceFile"
       ''}
 
+      # If DynamicUser= is enabled, PrivateTmp=true is implied (and cannot be turned off).
+      # so disable them unless PrivateTmp=true is explicitely set.
+      ${lib.optionalString (!cfg.serviceConfig.PrivateTmp) ''
+        echo "InaccessiblePaths=-+/tmp" >> "$serviceFile"
+        echo "InaccessiblePaths=-+/var/tmp" >> "$serviceFile"
+      ''}
+
       while read storePath; do
         if [ -L "$storePath" ]; then
           # Currently, systemd can't cope with symlinks in Bind(ReadOnly)Paths,
diff --git a/nixos/modules/services/audio/navidrome.nix b/nixos/modules/services/audio/navidrome.nix
index a5a7e805e3d6..ca1cd6ca43af 100644
--- a/nixos/modules/services/audio/navidrome.nix
+++ b/nixos/modules/services/audio/navidrome.nix
@@ -1,11 +1,17 @@
-{ config, lib, pkgs, ... }:
-
-with lib;
+{
+  config,
+  lib,
+  pkgs,
+  ...
+}:
 
 let
+  inherit (lib) mkEnableOption mkPackageOption mkOption maintainers;
+  inherit (lib.types) bool str;
   cfg = config.services.navidrome;
-  settingsFormat = pkgs.formats.json {};
-in {
+  settingsFormat = pkgs.formats.json { };
+in
+{
   options = {
     services.navidrome = {
 
@@ -13,9 +19,8 @@ in {
 
       package = mkPackageOption pkgs "navidrome" { };
 
-      settings = mkOption rec {
+      settings = mkOption {
         type = settingsFormat.type;
-        apply = recursiveUpdate default;
         default = {
           Address = "127.0.0.1";
           Port = 4533;
@@ -23,62 +28,111 @@ in {
         example = {
           MusicFolder = "/mnt/music";
         };
-        description = ''
-          Configuration for Navidrome, see <https://www.navidrome.org/docs/usage/configuration-options/> for supported values.
-        '';
+        description = "Configuration for Navidrome, see <https://www.navidrome.org/docs/usage/configuration-options/> for supported values.";
+      };
+
+      user = mkOption {
+        type = str;
+        default = "navidrome";
+        description = "User under which Navidrome runs.";
+      };
+
+      group = mkOption {
+        type = str;
+        default = "navidrome";
+        description = "Group under which Navidrome runs.";
       };
 
       openFirewall = mkOption {
-        type = types.bool;
+        type = bool;
         default = false;
         description = "Whether to open the TCP port in the firewall";
       };
     };
   };
 
-  config = mkIf cfg.enable {
-    networking.firewall.allowedTCPPorts = mkIf cfg.openFirewall [cfg.settings.Port];
+  config =
+    let
+      inherit (lib) mkIf optional getExe;
+      WorkingDirectory = "/var/lib/navidrome";
+    in
+    mkIf cfg.enable {
+      systemd = {
+        tmpfiles.settings.navidromeDirs = {
+          "${cfg.settings.DataFolder or WorkingDirectory}"."d" = {
+            mode = "700";
+            inherit (cfg) user group;
+          };
+          "${cfg.settings.CacheFolder or (WorkingDirectory + "/cache")}"."d" = {
+            mode = "700";
+            inherit (cfg) user group;
+          };
+        };
+        services.navidrome = {
+          description = "Navidrome Media Server";
+          after = [ "network.target" ];
+          wantedBy = [ "multi-user.target" ];
+          serviceConfig = {
+            ExecStart = ''
+              ${getExe cfg.package} --configfile ${settingsFormat.generate "navidrome.json" cfg.settings}
+            '';
+            User = cfg.user;
+            Group = cfg.group;
+            StateDirectory = "navidrome";
+            inherit WorkingDirectory;
+            RuntimeDirectory = "navidrome";
+            RootDirectory = "/run/navidrome";
+            ReadWritePaths = "";
+            BindPaths =
+              optional (cfg.settings ? DataFolder) cfg.settings.DataFolder
+              ++ optional (cfg.settings ? CacheFolder) cfg.settings.CacheFolder;
+            BindReadOnlyPaths = [
+              # navidrome uses online services to download additional album metadata / covers
+              "${
+                config.environment.etc."ssl/certs/ca-certificates.crt".source
+              }:/etc/ssl/certs/ca-certificates.crt"
+              builtins.storeDir
+              "/etc"
+            ] ++ optional (cfg.settings ? MusicFolder) cfg.settings.MusicFolder;
+            CapabilityBoundingSet = "";
+            RestrictAddressFamilies = [
+              "AF_UNIX"
+              "AF_INET"
+              "AF_INET6"
+            ];
+            RestrictNamespaces = true;
+            PrivateDevices = true;
+            PrivateUsers = true;
+            ProtectClock = true;
+            ProtectControlGroups = true;
+            ProtectHome = true;
+            ProtectKernelLogs = true;
+            ProtectKernelModules = true;
+            ProtectKernelTunables = true;
+            SystemCallArchitectures = "native";
+            SystemCallFilter = [
+              "@system-service"
+              "~@privileged"
+            ];
+            RestrictRealtime = true;
+            LockPersonality = true;
+            MemoryDenyWriteExecute = true;
+            UMask = "0066";
+            ProtectHostname = true;
+          };
+        };
+      };
 
-    systemd.services.navidrome = {
-      description = "Navidrome Media Server";
-      after = [ "network.target" ];
-      wantedBy = [ "multi-user.target" ];
-      serviceConfig = {
-        ExecStart = ''
-          ${cfg.package}/bin/navidrome --configfile ${settingsFormat.generate "navidrome.json" cfg.settings}
-        '';
-        DynamicUser = true;
-        StateDirectory = "navidrome";
-        WorkingDirectory = "/var/lib/navidrome";
-        RuntimeDirectory = "navidrome";
-        RootDirectory = "/run/navidrome";
-        ReadWritePaths = "";
-        BindPaths = lib.optional (cfg.settings ? DataFolder) cfg.settings.DataFolder;
-        BindReadOnlyPaths = [
-          # navidrome uses online services to download additional album metadata / covers
-          "${config.environment.etc."ssl/certs/ca-certificates.crt".source}:/etc/ssl/certs/ca-certificates.crt"
-          builtins.storeDir
-          "/etc"
-        ] ++ lib.optional (cfg.settings ? MusicFolder) cfg.settings.MusicFolder;
-        CapabilityBoundingSet = "";
-        RestrictAddressFamilies = [ "AF_UNIX" "AF_INET" "AF_INET6" ];
-        RestrictNamespaces = true;
-        PrivateDevices = true;
-        PrivateUsers = true;
-        ProtectClock = true;
-        ProtectControlGroups = true;
-        ProtectHome = true;
-        ProtectKernelLogs = true;
-        ProtectKernelModules = true;
-        ProtectKernelTunables = true;
-        SystemCallArchitectures = "native";
-        SystemCallFilter = [ "@system-service" "~@privileged" ];
-        RestrictRealtime = true;
-        LockPersonality = true;
-        MemoryDenyWriteExecute = true;
-        UMask = "0066";
-        ProtectHostname = true;
+      users.users = mkIf (cfg.user == "navidrome") {
+        navidrome = {
+          inherit (cfg) group;
+          isSystemUser = true;
+        };
       };
+
+      users.groups = mkIf (cfg.group == "navidrome") { navidrome = { }; };
+
+      networking.firewall.allowedTCPPorts = mkIf cfg.openFirewall [ cfg.settings.Port ];
     };
-  };
+    meta.maintainers = with maintainers; [ nu-nu-ko ];
 }
diff --git a/nixos/modules/services/backup/borgbackup.nix b/nixos/modules/services/backup/borgbackup.nix
index 570f8931bd9e..04f971008073 100644
--- a/nixos/modules/services/backup/borgbackup.nix
+++ b/nixos/modules/services/backup/borgbackup.nix
@@ -33,13 +33,24 @@ let
     }
     trap on_exit EXIT
 
+    borgWrapper () {
+      local result
+      borg "$@" && result=$? || result=$?
+      if [[ -z "${toString cfg.failOnWarnings}" ]] && [[ "$result" == 1 ]]; then
+        echo "ignoring warning return value 1"
+        return 0
+      else
+        return "$result"
+      fi
+    }
+
     archiveName="${optionalString (cfg.archiveBaseName != null) (cfg.archiveBaseName + "-")}$(date ${cfg.dateFormat})"
     archiveSuffix="${optionalString cfg.appendFailedSuffix ".failed"}"
     ${cfg.preHook}
   '' + optionalString cfg.doInit ''
     # Run borg init if the repo doesn't exist yet
-    if ! borg list $extraArgs > /dev/null; then
-      borg init $extraArgs \
+    if ! borgWrapper list $extraArgs > /dev/null; then
+      borgWrapper init $extraArgs \
         --encryption ${cfg.encryption.mode} \
         $extraInitArgs
       ${cfg.postInit}
@@ -48,7 +59,7 @@ let
     (
       set -o pipefail
       ${optionalString (cfg.dumpCommand != null) ''${escapeShellArg cfg.dumpCommand} | \''}
-      borg create $extraArgs \
+      borgWrapper create $extraArgs \
         --compression ${cfg.compression} \
         --exclude-from ${mkExcludeFile cfg} \
         --patterns-from ${mkPatternsFile cfg} \
@@ -57,16 +68,16 @@ let
         ${if cfg.paths == null then "-" else escapeShellArgs cfg.paths}
     )
   '' + optionalString cfg.appendFailedSuffix ''
-    borg rename $extraArgs \
+    borgWrapper rename $extraArgs \
       "::$archiveName$archiveSuffix" "$archiveName"
   '' + ''
     ${cfg.postCreate}
   '' + optionalString (cfg.prune.keep != { }) ''
-    borg prune $extraArgs \
+    borgWrapper prune $extraArgs \
       ${mkKeepArgs cfg} \
       ${optionalString (cfg.prune.prefix != null) "--glob-archives ${escapeShellArg "${cfg.prune.prefix}*"}"} \
       $extraPruneArgs
-    borg compact $extraArgs $extraCompactArgs
+    borgWrapper compact $extraArgs $extraCompactArgs
     ${cfg.postPrune}
   '');
 
@@ -488,6 +499,15 @@ in {
             default = true;
           };
 
+          failOnWarnings = mkOption {
+            type = types.bool;
+            description = ''
+              Fail the whole backup job if any borg command returns a warning
+              (exit code 1), for example because a file changed during backup.
+            '';
+            default = true;
+          };
+
           doInit = mkOption {
             type = types.bool;
             description = ''
diff --git a/nixos/modules/services/backup/restic.nix b/nixos/modules/services/backup/restic.nix
index 8b56636c7969..8be2649189b9 100644
--- a/nixos/modules/services/backup/restic.nix
+++ b/nixos/modules/services/backup/restic.nix
@@ -11,7 +11,7 @@ in
     description = ''
       Periodic backups to create with Restic.
     '';
-    type = types.attrsOf (types.submodule ({ config, name, ... }: {
+    type = types.attrsOf (types.submodule ({ name, ... }: {
       options = {
         passwordFile = mkOption {
           type = types.str;
@@ -206,12 +206,19 @@ in
           ];
         };
 
+        runCheck = mkOption {
+          type = types.bool;
+          default = (builtins.length config.services.restic.backups.${name}.checkOpts > 0);
+          defaultText = literalExpression ''builtins.length config.services.backups.${name}.checkOpts > 0'';
+          description = "Whether to run the `check` command with the provided `checkOpts` options.";
+          example = true;
+        };
+
         checkOpts = mkOption {
           type = types.listOf types.str;
           default = [ ];
           description = ''
-            A list of options for 'restic check', which is run after
-            pruning.
+            A list of options for 'restic check'.
           '';
           example = [
             "--with-cache"
@@ -298,7 +305,9 @@ in
             doBackup = (backup.dynamicFilesFrom != null) || (backup.paths != null && backup.paths != []);
             pruneCmd = optionals (builtins.length backup.pruneOpts > 0) [
               (resticCmd + " forget --prune " + (concatStringsSep " " backup.pruneOpts))
-              (resticCmd + " check " + (concatStringsSep " " backup.checkOpts))
+            ];
+            checkCmd = optionals backup.runCheck [
+                (resticCmd + " check " + (concatStringsSep " " backup.checkOpts))
             ];
             # Helper functions for rclone remotes
             rcloneRemoteName = builtins.elemAt (splitString ":" backup.repository) 1;
@@ -331,7 +340,7 @@ in
             serviceConfig = {
               Type = "oneshot";
               ExecStart = (optionals doBackup [ "${resticCmd} backup ${concatStringsSep " " (backup.extraBackupArgs ++ excludeFlags)} --files-from=${filesFromTmpFile}" ])
-                ++ pruneCmd;
+                ++ pruneCmd ++ checkCmd;
               User = backup.user;
               RuntimeDirectory = "restic-backups-${name}";
               CacheDirectory = "restic-backups-${name}";
diff --git a/nixos/modules/services/cluster/k3s/default.nix b/nixos/modules/services/cluster/k3s/default.nix
index 040cf7640de1..4d18d378d794 100644
--- a/nixos/modules/services/cluster/k3s/default.nix
+++ b/nixos/modules/services/cluster/k3s/default.nix
@@ -1,15 +1,25 @@
-{ config, lib, pkgs, ... }:
+{
+  config,
+  lib,
+  pkgs,
+  ...
+}:
 
 with lib;
 let
   cfg = config.services.k3s;
-  removeOption = config: instruction:
-    lib.mkRemovedOptionModule ([ "services" "k3s" ] ++ config) instruction;
+  removeOption =
+    config: instruction:
+    lib.mkRemovedOptionModule (
+      [
+        "services"
+        "k3s"
+      ]
+      ++ config
+    ) instruction;
 in
 {
-  imports = [
-    (removeOption [ "docker" ] "k3s docker option is no longer supported.")
-  ];
+  imports = [ (removeOption [ "docker" ] "k3s docker option is no longer supported.") ];
 
   # interface
   options.services.k3s = {
@@ -33,7 +43,10 @@ in
         - `serverAddr` is required.
       '';
       default = "server";
-      type = types.enum [ "server" "agent" ];
+      type = types.enum [
+        "server"
+        "agent"
+      ];
     };
 
     serverAddr = mkOption {
@@ -125,7 +138,8 @@ in
         message = "serverAddr or configPath (with 'server' key) should be set if role is 'agent'";
       }
       {
-        assertion = cfg.role == "agent" -> cfg.configPath != null || cfg.tokenFile != null || cfg.token != "";
+        assertion =
+          cfg.role == "agent" -> cfg.configPath != null || cfg.tokenFile != null || cfg.token != "";
         message = "token or tokenFile or configPath (with 'token' or 'token-file' keys) should be set if role is 'agent'";
       }
       {
@@ -142,8 +156,14 @@ in
 
     systemd.services.k3s = {
       description = "k3s service";
-      after = [ "firewall.service" "network-online.target" ];
-      wants = [ "firewall.service" "network-online.target" ];
+      after = [
+        "firewall.service"
+        "network-online.target"
+      ];
+      wants = [
+        "firewall.service"
+        "network-online.target"
+      ];
       wantedBy = [ "multi-user.target" ];
       path = optional config.boot.zfs.enabled config.boot.zfs.package;
       serviceConfig = {
@@ -159,9 +179,7 @@ in
         TasksMax = "infinity";
         EnvironmentFile = cfg.environmentFile;
         ExecStart = concatStringsSep " \\\n " (
-          [
-            "${cfg.package}/bin/k3s ${cfg.role}"
-          ]
+          [ "${cfg.package}/bin/k3s ${cfg.role}" ]
           ++ (optional cfg.clusterInit "--cluster-init")
           ++ (optional cfg.disableAgent "--disable-agent")
           ++ (optional (cfg.serverAddr != "") "--server ${cfg.serverAddr}")
diff --git a/nixos/modules/services/databases/postgresql.nix b/nixos/modules/services/databases/postgresql.nix
index 35d3ba0aa209..8a9d8c210b34 100644
--- a/nixos/modules/services/databases/postgresql.nix
+++ b/nixos/modules/services/databases/postgresql.nix
@@ -37,7 +37,7 @@ let
       #     package = pkgs.postgresql_<major>;
       #   };
       # works.
-      base = if cfg.enableJIT then cfg.package.withJIT else cfg.package;
+      base = if cfg.enableJIT then cfg.package.withJIT else cfg.package.withoutJIT;
     in
     if cfg.extraPlugins == []
       then base
diff --git a/nixos/modules/services/desktop-managers/plasma6.nix b/nixos/modules/services/desktop-managers/plasma6.nix
index 08507b4d370a..842b0716b928 100644
--- a/nixos/modules/services/desktop-managers/plasma6.nix
+++ b/nixos/modules/services/desktop-managers/plasma6.nix
@@ -286,6 +286,15 @@ in {
       kde-smartcard = lib.mkIf config.security.pam.p11.enable { p11Auth = true; };
     };
 
+    security.wrappers = {
+      kwin_wayland = {
+        owner = "root";
+        group = "root";
+        capabilities = "cap_sys_nice+ep";
+        source = "${lib.getBin pkgs.kdePackages.kwin}/bin/kwin_wayland";
+      };
+    };
+
     programs.dconf.enable = true;
 
     programs.firefox.nativeMessagingHosts.packages = [kdePackages.plasma-browser-integration];
diff --git a/nixos/modules/services/desktops/gnome/gnome-remote-desktop.nix b/nixos/modules/services/desktops/gnome/gnome-remote-desktop.nix
index b56027b6eb4b..d81a9edfa126 100644
--- a/nixos/modules/services/desktops/gnome/gnome-remote-desktop.nix
+++ b/nixos/modules/services/desktops/gnome/gnome-remote-desktop.nix
@@ -16,7 +16,21 @@
   ###### implementation
   config = lib.mkIf config.services.gnome.gnome-remote-desktop.enable {
     services.pipewire.enable = true;
+    services.dbus.packages = [ pkgs.gnome.gnome-remote-desktop ];
+
+    environment.systemPackages = [ pkgs.gnome.gnome-remote-desktop ];
 
     systemd.packages = [ pkgs.gnome.gnome-remote-desktop ];
+    systemd.tmpfiles.packages = [ pkgs.gnome.gnome-remote-desktop ];
+
+    # TODO: if possible, switch to using provided g-r-d sysusers.d
+    users = {
+      users.gnome-remote-desktop = {
+        isSystemUser = true;
+        group = "gnome-remote-desktop";
+        home = "/var/lib/gnome-remote-desktop";
+      };
+      groups.gnome-remote-desktop = { };
+    };
   };
 }
diff --git a/nixos/modules/services/display-managers/default.nix b/nixos/modules/services/display-managers/default.nix
index 005ae8f1c8a5..feba4b163ccd 100644
--- a/nixos/modules/services/display-managers/default.nix
+++ b/nixos/modules/services/display-managers/default.nix
@@ -113,10 +113,10 @@ in
         type = lib.types.nullOr lib.types.str // {
           description = "session name";
           check = d:
-            lib.assertMsg (d != null -> (lib.types.str.check d && lib.elem d config.services.displayManager.sessionData.sessionNames)) ''
+            lib.assertMsg (d != null -> (lib.types.str.check d && lib.elem d cfg.sessionData.sessionNames)) ''
                 Default graphical session, '${d}', not found.
                 Valid names for 'services.displayManager.defaultSession' are:
-                  ${lib.concatStringsSep "\n  " cfg.displayManager.sessionData.sessionNames}
+                  ${lib.concatStringsSep "\n  " cfg.sessionData.sessionNames}
               '';
         };
         default = null;
@@ -187,7 +187,7 @@ in
 
     services.displayManager.sessionData = {
       desktops = installedSessions;
-      sessionNames = lib.concatMap (p: p.providedSessions) config.services.displayManager.sessionPackages;
+      sessionNames = lib.concatMap (p: p.providedSessions) cfg.sessionPackages;
       # We do not want to force users to set defaultSession when they have only single DE.
       autologinSession =
         if cfg.defaultSession != null then
diff --git a/nixos/modules/services/display-managers/greetd.nix b/nixos/modules/services/display-managers/greetd.nix
index c07b225fc4d9..118a3e1df378 100644
--- a/nixos/modules/services/display-managers/greetd.nix
+++ b/nixos/modules/services/display-managers/greetd.nix
@@ -27,6 +27,17 @@ in
       '';
     };
 
+    greeterManagesPlymouth = mkOption {
+      type = types.bool;
+      internal = true;
+      default = false;
+      description = ''
+        Don't configure the greetd service to wait for Plymouth to exit.
+
+        Enable this if the greeter you're using can manage Plymouth itself to provide a smoother handoff.
+      '';
+    };
+
     vt = mkOption {
       type = types.int;
       default = 1;
@@ -72,8 +83,9 @@ in
         ];
         After = [
           "systemd-user-sessions.service"
-          "plymouth-quit-wait.service"
           "getty@${tty}.service"
+        ] ++ lib.optionals (!cfg.greeterManagesPlymouth) [
+          "plymouth-quit-wait.service"
         ];
         Conflicts = [
           "getty@${tty}.service"
diff --git a/nixos/modules/services/hardware/kanata.nix b/nixos/modules/services/hardware/kanata.nix
index 333b2d2a88a5..46af3e36b985 100644
--- a/nixos/modules/services/hardware/kanata.nix
+++ b/nixos/modules/services/hardware/kanata.nix
@@ -5,6 +5,8 @@ with lib;
 let
   cfg = config.services.kanata;
 
+  upstreamDoc = "See [the upstream documentation](https://github.com/jtroo/kanata/blob/main/docs/config.adoc) and [example config files](https://github.com/jtroo/kanata/tree/main/cfg_samples) for more information.";
+
   keyboard = {
     options = {
       devices = mkOption {
@@ -22,28 +24,16 @@ let
         type = types.lines;
         example = ''
           (defsrc
-            grv  1    2    3    4    5    6    7    8    9    0    -    =    bspc
-            tab  q    w    e    r    t    y    u    i    o    p    [    ]    \
-            caps a    s    d    f    g    h    j    k    l    ;    '    ret
-            lsft z    x    c    v    b    n    m    ,    .    /    rsft
-            lctl lmet lalt           spc            ralt rmet rctl)
-
-          (deflayer qwerty
-            grv  1    2    3    4    5    6    7    8    9    0    -    =    bspc
-            tab  q    w    e    r    t    y    u    i    o    p    [    ]    \
-            @cap a    s    d    f    g    h    j    k    l    ;    '    ret
-            lsft z    x    c    v    b    n    m    ,    .    /    rsft
-            lctl lmet lalt           spc            ralt rmet rctl)
-
-          (defalias
-            ;; tap within 100ms for capslk, hold more than 100ms for lctl
-            cap (tap-hold 100 100 caps lctl))
+            caps)
+
+          (deflayermap (default-layer)
+            ;; tap caps lock as caps lock, hold caps lock as left control
+            caps (tap-hold 100 100 caps lctl))
         '';
         description = ''
           Configuration other than `defcfg`.
 
-          See [example config files](https://github.com/jtroo/kanata)
-          for more information.
+          ${upstreamDoc}
         '';
       };
       extraDefCfg = mkOption {
@@ -55,8 +45,7 @@ let
           from the devices option) and
           `linux-continue-if-no-devs-found` (hardcoded to be yes).
 
-          See [example config files](https://github.com/jtroo/kanata)
-          for more information.
+          ${upstreamDoc}
         '';
       };
       extraArgs = mkOption {
@@ -86,14 +75,20 @@ let
     in
     optionalString ((length devices) > 0) "linux-dev (${devicesString})";
 
-  mkConfig = name: keyboard: pkgs.writeText "${mkName name}-config.kdb" ''
-    (defcfg
-      ${keyboard.extraDefCfg}
-      ${mkDevices keyboard.devices}
-      linux-continue-if-no-devs-found yes)
-
-    ${keyboard.config}
-  '';
+  mkConfig = name: keyboard: pkgs.writeTextFile {
+    name = "${mkName name}-config.kdb";
+    text = ''
+      (defcfg
+        ${keyboard.extraDefCfg}
+        ${mkDevices keyboard.devices}
+        linux-continue-if-no-devs-found yes)
+
+      ${keyboard.config}
+    '';
+    checkPhase = ''
+      ${getExe cfg.package} --cfg "$target" --check --debug
+    '';
+  };
 
   mkService = name: keyboard: nameValuePair (mkName name) {
     wantedBy = [ "multi-user.target" ];
@@ -153,7 +148,7 @@ in
   options.services.kanata = {
     enable = mkEnableOption "kanata, a tool to improve keyboard comfort and usability with advanced customization";
     package = mkPackageOption pkgs "kanata" {
-      example = "kanata-with-cmd";
+      example = [ "kanata-with-cmd" ];
       extraDescription = ''
         ::: {.note}
         If {option}`danger-enable-cmd` is enabled in any of the keyboards, the
diff --git a/nixos/modules/services/hardware/thermald.nix b/nixos/modules/services/hardware/thermald.nix
index 4f9202d13d90..fb7cf3735a7e 100644
--- a/nixos/modules/services/hardware/thermald.nix
+++ b/nixos/modules/services/hardware/thermald.nix
@@ -28,7 +28,13 @@ in
       configFile = mkOption {
         type = types.nullOr types.path;
         default = null;
-        description = "the thermald manual configuration file.";
+        description = ''
+          The thermald manual configuration file.
+
+          Leave unspecified to run with the `--adaptive` flag instead which will have thermald use your computer's DPTF adaptive tables.
+
+          See `man thermald` for more information.
+        '';
       };
 
       package = mkPackageOption pkgs "thermald" { };
@@ -49,9 +55,8 @@ in
             --no-daemon \
             ${optionalString cfg.debug "--loglevel=debug"} \
             ${optionalString cfg.ignoreCpuidCheck "--ignore-cpuid-check"} \
-            ${optionalString (cfg.configFile != null) "--config-file ${cfg.configFile}"} \
-            --dbus-enable \
-            --adaptive
+            ${if cfg.configFile != null then "--config-file ${cfg.configFile}" else "--adaptive"} \
+            --dbus-enable
         '';
       };
     };
diff --git a/nixos/modules/services/hardware/udev.nix b/nixos/modules/services/hardware/udev.nix
index 3db661644281..62603d20e2d3 100644
--- a/nixos/modules/services/hardware/udev.nix
+++ b/nixos/modules/services/hardware/udev.nix
@@ -167,10 +167,16 @@ let
       mv etc/udev/hwdb.bin $out
     '';
 
-  compressFirmware = firmware: if (config.boot.kernelPackages.kernelAtLeast "5.3" && (firmware.compressFirmware or true)) then
-    pkgs.compressFirmwareXz firmware
-  else
-    id firmware;
+  compressFirmware = firmware:
+    let
+      inherit (config.boot.kernelPackages) kernelAtLeast;
+    in
+      if ! (firmware.compressFirmware or true) then
+        firmware
+      else
+        if kernelAtLeast "5.19" then pkgs.compressFirmwareZstd firmware
+        else if kernelAtLeast "5.3" then pkgs.compressFirmwareXz firmware
+        else firmware;
 
   # Udev has a 512-character limit for ENV{PATH}, so create a symlink
   # tree to work around this.
diff --git a/nixos/modules/services/home-automation/ebusd.nix b/nixos/modules/services/home-automation/ebusd.nix
index d388022d7b50..ac9ec06639c1 100644
--- a/nixos/modules/services/home-automation/ebusd.nix
+++ b/nixos/modules/services/home-automation/ebusd.nix
@@ -4,41 +4,6 @@ with lib;
 
 let
   cfg = config.services.ebusd;
-
-  package = pkgs.ebusd;
-
-  arguments = [
-    "${package}/bin/ebusd"
-    "--foreground"
-    "--updatecheck=off"
-    "--device=${cfg.device}"
-    "--port=${toString cfg.port}"
-    "--configpath=${cfg.configpath}"
-    "--scanconfig=${cfg.scanconfig}"
-    "--log=all:${cfg.logs.all}"
-    "--log=main:${cfg.logs.main}"
-    "--log=network:${cfg.logs.network}"
-    "--log=bus:${cfg.logs.bus}"
-    "--log=update:${cfg.logs.update}"
-    "--log=other:${cfg.logs.other}"
-  ] ++ lib.optionals cfg.readonly [
-    "--readonly"
-  ] ++ lib.optionals cfg.mqtt.enable [
-    "--mqtthost=${cfg.mqtt.host}"
-    "--mqttport=${toString cfg.mqtt.port}"
-    "--mqttuser=${cfg.mqtt.user}"
-    "--mqttpass=${cfg.mqtt.password}"
-  ] ++ lib.optionals cfg.mqtt.home-assistant [
-    "--mqttint=${package}/etc/ebusd/mqtt-hassio.cfg"
-    "--mqttjson"
-  ] ++ lib.optionals cfg.mqtt.retain [
-    "--mqttretain"
-  ] ++ cfg.extraArguments;
-
-  usesDev = hasPrefix "/" cfg.device;
-
-  command = concatStringsSep " " arguments;
-
 in
 {
   meta.maintainers = with maintainers; [ nathan-gs ];
@@ -46,6 +11,8 @@ in
   options.services.ebusd = {
     enable = mkEnableOption "ebusd, a daemon for communication with eBUS heating systems";
 
+    package = mkPackageOptionMD pkgs "ebusd" { };
+
     device = mkOption {
       type = types.str;
       default = "";
@@ -57,7 +24,8 @@ in
           ens:DEVICE for enhanced high speed serial device (only adapter v3 and newer with firmware since 20220731),
           DEVICE for serial device (normal speed, for all other serial adapters like adapter v2 as well as adapter v3 in non-enhanced mode), or
           [udp:]IP:PORT for network device.
-        https://github.com/john30/ebusd/wiki/2.-Run#device-options
+
+        Source: <https://github.com/john30/ebusd/wiki/2.-Run#device-options>
       '';
     };
 
@@ -81,7 +49,7 @@ in
       type = types.str;
       default = "https://cfg.ebusd.eu/";
       description = ''
-        Read CSV config files from PATH (local folder or HTTPS URL) [https://cfg.ebusd.eu/]
+        Directory to read CSV config files from. This can be a local folder or a URL.
       '';
     };
 
@@ -95,65 +63,21 @@ in
       '';
     };
 
-    logs = {
-      main = mkOption {
-        type = types.enum [ "none" "error" "notice" "info" "debug"];
-        default = "info";
-        description = ''
-          Only write log for matching AREAs (main|network|bus|update|other|all) below or equal to LEVEL (none|error|notice|info|debug) [all:notice].
-        '';
-      };
-
-      network = mkOption {
-        type = types.enum [ "none" "error" "notice" "info" "debug"];
-        default = "info";
-        description = ''
-          Only write log for matching AREAs (main|network|bus|update|other|all) below or equal to LEVEL (none|error|notice|info|debug) [all:notice].
-        '';
-      };
-
-      bus = mkOption {
-        type = types.enum [ "none" "error" "notice" "info" "debug"];
-        default = "info";
-        description = ''
-          Only write log for matching AREAs (main|network|bus|update|other|all) below or equal to LEVEL (none|error|notice|info|debug) [all:notice].
-        '';
-      };
-
-      update = mkOption {
-        type = types.enum [ "none" "error" "notice" "info" "debug"];
-        default = "info";
-        description = ''
-          Only write log for matching AREAs (main|network|bus|update|other|all) below or equal to LEVEL (none|error|notice|info|debug) [all:notice].
-        '';
-      };
-
-      other = mkOption {
-        type = types.enum [ "none" "error" "notice" "info" "debug"];
-        default = "info";
-        description = ''
-          Only write log for matching AREAs (main|network|bus|update|other|all) below or equal to LEVEL (none|error|notice|info|debug) [all:notice].
-        '';
-      };
-
-      all = mkOption {
-        type = types.enum [ "none" "error" "notice" "info" "debug"];
-        default = "info";
-        description = ''
-          Only write log for matching AREAs (main|network|bus|update|other|all) below or equal to LEVEL (none|error|notice|info|debug) [all:notice].
-        '';
-      };
-    };
+    logs = let
+      # "all" must come first so it can be overridden by more specific areas
+      areas = [ "all" "main" "network" "bus" "update" "other" ];
+      levels = [ "none" "error" "notice" "info" "debug" ];
+    in listToAttrs (map (area: nameValuePair area (mkOption {
+      type = types.enum levels;
+      default = "notice";
+      example = "debug";
+      description = ''
+        Only write log for matching `AREA`s (${concatStringsSep "|" areas}) below or equal to `LEVEL` (${concatStringsSep "|" levels})
+      '';
+    })) areas);
 
     mqtt = {
-
-      enable = mkOption {
-        type = types.bool;
-        default = false;
-        description = ''
-          Adds support for MQTT
-        '';
-      };
+      enable = mkEnableOption "support for MQTT";
 
       host = mkOption {
         type = types.str;
@@ -179,13 +103,7 @@ in
         '';
       };
 
-      retain = mkOption {
-        type = types.bool;
-        default = false;
-        description = ''
-          Set the retain flag on all topics instead of only selected global ones
-        '';
-      };
+      retain = mkEnableOption "set the retain flag on all topics instead of only selected global ones";
 
       user = mkOption {
         type = types.str;
@@ -200,7 +118,6 @@ in
           The MQTT password.
         '';
       };
-
     };
 
     extraArguments = mkOption {
@@ -210,25 +127,44 @@ in
         Extra arguments to the ebus daemon
       '';
     };
-
   };
 
-  config = mkIf (cfg.enable) {
-
+  config = let
+    usesDev = hasPrefix "/" cfg.device;
+  in mkIf cfg.enable {
     systemd.services.ebusd = {
       description = "EBUSd Service";
       wantedBy = [ "multi-user.target" ];
       after = [ "network.target" ];
       serviceConfig = {
-        ExecStart = command;
+        ExecStart = let
+          args = cli.toGNUCommandLineShell { } (foldr (a: b: a // b) { } [
+            {
+              inherit (cfg) device port configpath scanconfig readonly;
+              foreground = true;
+              updatecheck = "off";
+              log = mapAttrsToList (name: value: "${name}:${value}") cfg.logs;
+              mqttretain = cfg.mqtt.retain;
+            }
+            (optionalAttrs cfg.mqtt.enable {
+              mqtthost  = cfg.mqtt.host;
+              mqttport  = cfg.mqtt.port;
+              mqttuser  = cfg.mqtt.user;
+              mqttpass  = cfg.mqtt.password;
+            })
+            (optionalAttrs cfg.mqtt.home-assistant {
+              mqttint = "${cfg.package}/etc/ebusd/mqtt-hassio.cfg";
+              mqttjson = true;
+            })
+          ]);
+        in "${cfg.package}/bin/ebusd ${args} ${escapeShellArgs cfg.extraArguments}";
+
         DynamicUser = true;
         Restart = "on-failure";
 
         # Hardening
         CapabilityBoundingSet = "";
-        DeviceAllow = lib.optionals usesDev [
-          cfg.device
-        ] ;
+        DeviceAllow = optionals usesDev [ cfg.device ];
         DevicePolicy = "closed";
         LockPersonality = true;
         MemoryDenyWriteExecute = false;
@@ -254,9 +190,7 @@ in
         RestrictNamespaces = true;
         RestrictRealtime = true;
         RestrictSUIDSGID = true;
-        SupplementaryGroups = [
-          "dialout"
-        ];
+        SupplementaryGroups = [ "dialout" ];
         SystemCallArchitectures = "native";
         SystemCallFilter = [
           "@system-service @pkey"
@@ -265,6 +199,5 @@ in
         UMask = "0077";
       };
     };
-
   };
 }
diff --git a/nixos/modules/services/logging/promtail.nix b/nixos/modules/services/logging/promtail.nix
index a34bc07b6ab2..9eccd34cef23 100644
--- a/nixos/modules/services/logging/promtail.nix
+++ b/nixos/modules/services/logging/promtail.nix
@@ -41,6 +41,10 @@ in {
       wantedBy = [ "multi-user.target" ];
       stopIfChanged = false;
 
+      preStart = ''
+        ${lib.getExe pkgs.promtail} -config.file=${prettyJSON cfg.configuration} -check-syntax
+      '';
+
       serviceConfig = {
         Restart = "on-failure";
         TimeoutStopSec = 10;
diff --git a/nixos/modules/services/mail/stalwart-mail.nix b/nixos/modules/services/mail/stalwart-mail.nix
index 9cc919fd117d..08b07b885b69 100644
--- a/nixos/modules/services/mail/stalwart-mail.nix
+++ b/nixos/modules/services/mail/stalwart-mail.nix
@@ -38,6 +38,7 @@ in {
       store.blob.path = mkDefault "${dataDir}/data/blobs";
       storage.data = mkDefault "db";
       storage.fts = mkDefault "db";
+      storage.lookup = mkDefault "db";
       storage.blob = mkDefault "blob";
       resolver.type = mkDefault "system";
       resolver.public-suffix = mkDefault ["https://publicsuffix.org/list/public_suffix_list.dat"];
diff --git a/nixos/modules/services/matrix/conduit.nix b/nixos/modules/services/matrix/conduit.nix
index 9b8a4f45c268..b1d9b0424295 100644
--- a/nixos/modules/services/matrix/conduit.nix
+++ b/nixos/modules/services/matrix/conduit.nix
@@ -9,7 +9,7 @@ let
   configFile = format.generate "conduit.toml" cfg.settings;
 in
   {
-    meta.maintainers = with maintainers; [ pstn piegames ];
+    meta.maintainers = with maintainers; [ pstn ];
     options.services.matrix-conduit = {
       enable = mkEnableOption "matrix-conduit";
 
diff --git a/nixos/modules/services/matrix/mautrix-signal.nix b/nixos/modules/services/matrix/mautrix-signal.nix
new file mode 100644
index 000000000000..faca10551abb
--- /dev/null
+++ b/nixos/modules/services/matrix/mautrix-signal.nix
@@ -0,0 +1,249 @@
+{ lib
+, config
+, pkgs
+, ...
+}:
+let
+  cfg = config.services.mautrix-signal;
+  dataDir = "/var/lib/mautrix-signal";
+  registrationFile = "${dataDir}/signal-registration.yaml";
+  settingsFile = "${dataDir}/config.yaml";
+  settingsFileUnsubstituted = settingsFormat.generate "mautrix-signal-config-unsubstituted.json" cfg.settings;
+  settingsFormat = pkgs.formats.json { };
+  appservicePort = 29328;
+
+  # to be used with a list of lib.mkIf values
+  optOneOf = lib.lists.findFirst (value: value.condition) (lib.mkIf false null);
+  mkDefaults = lib.mapAttrsRecursive (n: v: lib.mkDefault v);
+  defaultConfig = {
+    homeserver.address = "http://localhost:8448";
+    appservice = {
+      hostname = "[::]";
+      port = appservicePort;
+      database.type = "sqlite3";
+      database.uri = "file:${dataDir}/mautrix-signal.db?_txlock=immediate";
+      id = "signal";
+      bot = {
+        username = "signalbot";
+        displayname = "Signal Bridge Bot";
+      };
+      as_token = "";
+      hs_token = "";
+    };
+    bridge = {
+      username_template = "signal_{{.}}";
+      displayname_template = "{{or .ProfileName .PhoneNumber \"Unknown user\"}}";
+      double_puppet_server_map = { };
+      login_shared_secret_map = { };
+      command_prefix = "!signal";
+      permissions."*" = "relay";
+      relay.enabled = true;
+    };
+    logging = {
+      min_level = "info";
+      writers = lib.singleton {
+        type = "stdout";
+        format = "pretty-colored";
+        time_format = " ";
+      };
+    };
+  };
+
+in
+{
+  options.services.mautrix-signal = {
+    enable = lib.mkEnableOption "mautrix-signal, a Matrix-Signal puppeting bridge.";
+
+    settings = lib.mkOption {
+      apply = lib.recursiveUpdate defaultConfig;
+      type = settingsFormat.type;
+      default = defaultConfig;
+      description = ''
+        {file}`config.yaml` configuration as a Nix attribute set.
+        Configuration options should match those described in
+        [example-config.yaml](https://github.com/mautrix/signal/blob/master/example-config.yaml).
+        Secret tokens should be specified using {option}`environmentFile`
+        instead of this world-readable attribute set.
+      '';
+      example = {
+        appservice = {
+          database = {
+            type = "postgres";
+            uri = "postgresql:///mautrix_signal?host=/run/postgresql";
+          };
+          id = "signal";
+          ephemeral_events = false;
+        };
+        bridge = {
+          history_sync = {
+            request_full_sync = true;
+          };
+          private_chat_portal_meta = true;
+          mute_bridging = true;
+          encryption = {
+            allow = true;
+            default = true;
+            require = true;
+          };
+          provisioning = {
+            shared_secret = "disable";
+          };
+          permissions = {
+            "example.com" = "user";
+          };
+        };
+      };
+    };
+
+    environmentFile = lib.mkOption {
+      type = lib.types.nullOr lib.types.path;
+      default = null;
+      description = ''
+        File containing environment variables to be passed to the mautrix-signal service.
+        If an environment variable `MAUTRIX_SIGNAL_BRIDGE_LOGIN_SHARED_SECRET` is set,
+        then its value will be used in the configuration file for the option
+        `login_shared_secret_map` without leaking it to the store, using the configured
+        `homeserver.domain` as key.
+        See [here](https://github.com/mautrix/signal/blob/main/example-config.yaml)
+        for the documentation of `login_shared_secret_map`.
+      '';
+    };
+
+    serviceDependencies = lib.mkOption {
+      type = with lib.types; listOf str;
+      default = (lib.optional config.services.matrix-synapse.enable config.services.matrix-synapse.serviceUnit)
+        ++ (lib.optional config.services.matrix-conduit.enable "conduit.service");
+      defaultText = lib.literalExpression ''
+        (optional config.services.matrix-synapse.enable config.services.matrix-synapse.serviceUnit)
+        ++ (optional config.services.matrix-conduit.enable "conduit.service")
+      '';
+      description = ''
+        List of systemd units to require and wait for when starting the application service.
+      '';
+    };
+
+    registerToSynapse = lib.mkOption {
+      type = lib.types.bool;
+      default = config.services.matrix-synapse.enable;
+      defaultText = lib.literalExpression ''
+        config.services.matrix-synapse.enable
+      '';
+      description = ''
+        Whether to add the bridge's app service registration file to
+        `services.matrix-synapse.settings.app_service_config_files`.
+      '';
+    };
+  };
+
+  config = lib.mkIf cfg.enable {
+
+    users.users.mautrix-signal = {
+      isSystemUser = true;
+      group = "mautrix-signal";
+      home = dataDir;
+      description = "Mautrix-Signal bridge user";
+    };
+
+    users.groups.mautrix-signal = { };
+
+    services.matrix-synapse = lib.mkIf cfg.registerToSynapse {
+      settings.app_service_config_files = [ registrationFile ];
+    };
+    systemd.services.matrix-synapse = lib.mkIf cfg.registerToSynapse {
+      serviceConfig.SupplementaryGroups = [ "mautrix-signal" ];
+    };
+
+    # Note: this is defined here to avoid the docs depending on `config`
+    services.mautrix-signal.settings.homeserver = optOneOf (with config.services; [
+      (lib.mkIf matrix-synapse.enable (mkDefaults {
+        domain = matrix-synapse.settings.server_name;
+      }))
+      (lib.mkIf matrix-conduit.enable (mkDefaults {
+        domain = matrix-conduit.settings.global.server_name;
+        address = "http://localhost:${toString matrix-conduit.settings.global.port}";
+      }))
+    ]);
+
+    systemd.services.mautrix-signal = {
+      description = "mautrix-signal, a Matrix-Signal puppeting bridge.";
+
+      wantedBy = [ "multi-user.target" ];
+      wants = [ "network-online.target" ] ++ cfg.serviceDependencies;
+      after = [ "network-online.target" ] ++ cfg.serviceDependencies;
+      # ffmpeg is required for conversion of voice messages
+      path = [ pkgs.ffmpeg-headless ];
+
+      preStart = ''
+        # substitute the settings file by environment variables
+        # in this case read from EnvironmentFile
+        test -f '${settingsFile}' && rm -f '${settingsFile}'
+        old_umask=$(umask)
+        umask 0177
+        ${pkgs.envsubst}/bin/envsubst \
+          -o '${settingsFile}' \
+          -i '${settingsFileUnsubstituted}'
+        umask $old_umask
+
+        # generate the appservice's registration file if absent
+        if [ ! -f '${registrationFile}' ]; then
+          ${pkgs.mautrix-signal}/bin/mautrix-signal \
+            --generate-registration \
+            --config='${settingsFile}' \
+            --registration='${registrationFile}'
+        fi
+        chmod 640 ${registrationFile}
+
+        umask 0177
+        # 1. Overwrite registration tokens in config
+        # 2. If environment variable MAUTRIX_SIGNAL_BRIDGE_LOGIN_SHARED_SECRET
+        #    is set, set it as the login shared secret value for the configured
+        #    homeserver domain.
+        ${pkgs.yq}/bin/yq -s '.[0].appservice.as_token = .[1].as_token
+          | .[0].appservice.hs_token = .[1].hs_token
+          | .[0]
+          | if env.MAUTRIX_SIGNAL_BRIDGE_LOGIN_SHARED_SECRET then .bridge.login_shared_secret_map.[.homeserver.domain] = env.MAUTRIX_SIGNAL_BRIDGE_LOGIN_SHARED_SECRET else . end' \
+          '${settingsFile}' '${registrationFile}' > '${settingsFile}.tmp'
+        mv '${settingsFile}.tmp' '${settingsFile}'
+        umask $old_umask
+      '';
+
+      serviceConfig = {
+        User = "mautrix-signal";
+        Group = "mautrix-signal";
+        EnvironmentFile = cfg.environmentFile;
+        StateDirectory = baseNameOf dataDir;
+        WorkingDirectory = dataDir;
+        ExecStart = ''
+          ${pkgs.mautrix-signal}/bin/mautrix-signal \
+          --config='${settingsFile}' \
+          --registration='${registrationFile}'
+        '';
+        LockPersonality = true;
+        MemoryDenyWriteExecute = true;
+        NoNewPrivileges = true;
+        PrivateDevices = true;
+        PrivateTmp = true;
+        PrivateUsers = true;
+        ProtectClock = true;
+        ProtectControlGroups = true;
+        ProtectHome = true;
+        ProtectHostname = true;
+        ProtectKernelLogs = true;
+        ProtectKernelModules = true;
+        ProtectKernelTunables = true;
+        ProtectSystem = "strict";
+        Restart = "on-failure";
+        RestartSec = "30s";
+        RestrictRealtime = true;
+        RestrictSUIDSGID = true;
+        SystemCallArchitectures = "native";
+        SystemCallErrorNumber = "EPERM";
+        SystemCallFilter = [ "@system-service" ];
+        Type = "simple";
+        UMask = 0027;
+      };
+      restartTriggers = [ settingsFileUnsubstituted ];
+    };
+  };
+  meta.maintainers = with lib.maintainers; [ niklaskorz ];
+}
diff --git a/nixos/modules/services/misc/bcg.nix b/nixos/modules/services/misc/bcg.nix
index 626a67f66d08..63c441833d95 100644
--- a/nixos/modules/services/misc/bcg.nix
+++ b/nixos/modules/services/misc/bcg.nix
@@ -149,20 +149,20 @@ in
     systemd.services.bcg = let
       envConfig = cfg.environmentFiles != [];
       finalConfig = if envConfig
-                    then "$RUNTIME_DIRECTORY/bcg.config.yaml"
+                    then "\${RUNTIME_DIRECTORY}/bcg.config.yaml"
                     else configFile;
     in {
       description = "BigClown Gateway";
       wantedBy = [ "multi-user.target" ];
       wants = [ "network-online.target" ] ++ lib.optional config.services.mosquitto.enable "mosquitto.service";
       after = [ "network-online.target" ];
-      preStart = ''
+      preStart = mkIf envConfig ''
         umask 077
         ${pkgs.envsubst}/bin/envsubst -i "${configFile}" -o "${finalConfig}"
         '';
       serviceConfig = {
         EnvironmentFile = cfg.environmentFiles;
-        ExecStart="${cfg.package}/bin/bcg -c ${finalConfig} -v ${cfg.verbose}";
+        ExecStart = "${cfg.package}/bin/bcg -c ${finalConfig} -v ${cfg.verbose}";
         RuntimeDirectory = "bcg";
       };
     };
diff --git a/nixos/modules/services/misc/devpi-server.nix b/nixos/modules/services/misc/devpi-server.nix
new file mode 100644
index 000000000000..0234db4bc2c5
--- /dev/null
+++ b/nixos/modules/services/misc/devpi-server.nix
@@ -0,0 +1,128 @@
+{
+  pkgs,
+  lib,
+  config,
+  ...
+}:
+with lib;
+let
+  cfg = config.services.devpi-server;
+
+  secretsFileName = "devpi-secret-file";
+
+  stateDirName = "devpi";
+
+  runtimeDir = "/run/${stateDirName}";
+  serverDir = "/var/lib/${stateDirName}";
+in
+{
+  options.services.devpi-server = {
+    enable = mkEnableOption "Devpi Server";
+
+    package = mkPackageOption pkgs "devpi-server" { };
+
+    primaryUrl = mkOption {
+      type = types.str;
+      description = "Url for the primary node. Required option for replica nodes.";
+    };
+
+    replica = mkOption {
+      type = types.bool;
+      default = false;
+      description = ''
+        Run node as a replica.
+        Requires the secretFile option and the primaryUrl to be enabled.
+      '';
+    };
+
+    secretFile = mkOption {
+      type = types.nullOr types.path;
+      default = null;
+      description = ''
+        Path to a shared secret file used for synchronization,
+        Required for all nodes in a replica/primary setup.
+      '';
+    };
+
+    host = mkOption {
+      type = types.str;
+      default = "localhost";
+      description = ''
+        domain/ip address to listen on
+      '';
+    };
+
+    port = mkOption {
+      type = types.port;
+      default = 3141;
+      description = "The port on which Devpi Server will listen.";
+    };
+
+    openFirewall = mkEnableOption "opening the default ports in the firewall for Devpi Server";
+  };
+
+  config = mkIf cfg.enable {
+
+    systemd.services.devpi-server = {
+      enable = true;
+      description = "devpi PyPI-compatible server";
+      documentation = [ "https://devpi.net/docs/devpi/devpi/stable/+d/index.html" ];
+      wants = [ "network-online.target" ];
+      wantedBy = [ "multi-user.target" ];
+      after = [ "network-online.target" ];
+      # Since at least devpi-server 6.10.0, devpi requires the secrets file to
+      # have 0600 permissions.
+      preStart =
+        ''
+          cp ${cfg.secretFile} ${runtimeDir}/${secretsFileName}
+          chmod 0600 ${runtimeDir}/*${secretsFileName}
+
+          if [ -f ${serverDir}/.nodeinfo ]; then
+            # already initialized the package index, exit gracefully
+            exit 0
+          fi
+          ${cfg.package}/bin/devpi-init --serverdir ${serverDir} ''
+        + strings.optionalString cfg.replica "--role=replica --master-url=${cfg.primaryUrl}";
+
+      serviceConfig = {
+        Restart = "always";
+        ExecStart =
+          let
+            args =
+              [
+                "--request-timeout=5"
+                "--serverdir=${serverDir}"
+                "--host=${cfg.host}"
+                "--port=${builtins.toString cfg.port}"
+              ]
+              ++ lib.optionals (! isNull cfg.secretFile) [
+                "--secretfile=${runtimeDir}/${secretsFileName}"
+              ]
+              ++ (
+                if cfg.replica then
+                  [
+                    "--role=replica"
+                    "--master-url=${cfg.primaryUrl}"
+                  ]
+                else
+                  [ "--role=master" ]
+              );
+          in
+          "${cfg.package}/bin/devpi-server ${concatStringsSep " " args}";
+        DynamicUser = true;
+        StateDirectory = stateDirName;
+        RuntimeDirectory = stateDirName;
+        PrivateDevices = true;
+        PrivateTmp = true;
+        ProtectHome = true;
+        ProtectSystem = "strict";
+      };
+    };
+
+    networking.firewall = mkIf cfg.openFirewall {
+      allowedTCPPorts = [ cfg.port ];
+    };
+
+    meta.maintainers = [ cafkafk ];
+  };
+}
diff --git a/nixos/modules/services/misc/heisenbridge.nix b/nixos/modules/services/misc/heisenbridge.nix
index de109e726633..54c298f1b560 100644
--- a/nixos/modules/services/misc/heisenbridge.nix
+++ b/nixos/modules/services/misc/heisenbridge.nix
@@ -210,5 +210,5 @@ in
     };
   };
 
-  meta.maintainers = [ lib.maintainers.piegames ];
+  meta.maintainers = [ ];
 }
diff --git a/nixos/modules/services/misc/llama-cpp.nix b/nixos/modules/services/misc/llama-cpp.nix
index c73cff027e22..2fa1a7b28e3b 100644
--- a/nixos/modules/services/misc/llama-cpp.nix
+++ b/nixos/modules/services/misc/llama-cpp.nix
@@ -92,7 +92,6 @@ in {
         SystemCallFilter = [
           "@system-service"
           "~@privileged"
-          "~@resources"
         ];
         SystemCallErrorNumber = "EPERM";
         ProtectProc = "invisible";
diff --git a/nixos/modules/services/misc/portunus.nix b/nixos/modules/services/misc/portunus.nix
index ab78479c96cd..bdb35da788e3 100644
--- a/nixos/modules/services/misc/portunus.nix
+++ b/nixos/modules/services/misc/portunus.nix
@@ -231,12 +231,14 @@ in
     };
 
     systemd.services = {
-      dex.serviceConfig = mkIf cfg.dex.enable {
-        # `dex.service` is super locked down out of the box, but we need some
-        # place to write the SQLite database. This creates $STATE_DIRECTORY below
-        # /var/lib/private because DynamicUser=true, but it gets symlinked into
-        # /var/lib/dex inside the unit
-        StateDirectory = "dex";
+      dex = mkIf cfg.dex.enable {
+        serviceConfig = {
+          # `dex.service` is super locked down out of the box, but we need some
+          # place to write the SQLite database. This creates $STATE_DIRECTORY below
+          # /var/lib/private because DynamicUser=true, but it gets symlinked into
+          # /var/lib/dex inside the unit
+          StateDirectory = "dex";
+        };
       };
 
       portunus = {
diff --git a/nixos/modules/services/misc/private-gpt.nix b/nixos/modules/services/misc/private-gpt.nix
new file mode 100644
index 000000000000..9a3e5317cdb1
--- /dev/null
+++ b/nixos/modules/services/misc/private-gpt.nix
@@ -0,0 +1,121 @@
+{ config
+, lib
+, pkgs
+, ...
+}:
+let
+  inherit (lib) types;
+
+  format = pkgs.formats.yaml { };
+  cfg = config.services.private-gpt;
+in
+{
+  options = {
+    services.private-gpt = {
+      enable = lib.mkEnableOption "private-gpt for local large language models";
+      package = lib.mkPackageOption pkgs "private-gpt" { };
+
+      stateDir = lib.mkOption {
+        type = types.path;
+        default = "/var/lib/private-gpt";
+        description = "State directory of private-gpt.";
+      };
+
+      settings = lib.mkOption {
+        type = format.type;
+        default = {
+          llm = {
+            mode = "ollama";
+            tokenizer = "";
+          };
+          embedding = {
+            mode = "ollama";
+          };
+          ollama = {
+            llm_model = "llama3";
+            embedding_model = "nomic-embed-text";
+            api_base = "http://localhost:11434";
+            embedding_api_base = "http://localhost:11434";
+            keep_alive = "5m";
+            tfs_z = 1;
+            top_k = 40;
+            top_p = 0.9;
+            repeat_last_n = 64;
+            repeat_penalty = 1.2;
+            request_timeout = 120;
+          };
+          vectorstore = {
+            database = "qdrant";
+          };
+          qdrant = {
+            path = "/var/lib/private-gpt/vectorstore/qdrant";
+          };
+          data = {
+            local_data_folder = "/var/lib/private-gpt";
+          };
+          openai = { };
+          azopenai = { };
+        };
+        description = ''
+          settings-local.yaml for private-gpt
+        '';
+      };
+    };
+  };
+
+  config = lib.mkIf cfg.enable {
+    systemd.services.private-gpt = {
+      description = "Interact with your documents using the power of GPT, 100% privately, no data leaks";
+      wantedBy = [ "multi-user.target" ];
+      after = [ "network.target" ];
+
+      preStart =
+        let
+          config = format.generate "settings-local.yaml" (cfg.settings // { server.env_name = "local"; });
+        in
+        ''
+          mkdir -p ${cfg.stateDir}/{settings,huggingface,matplotlib,tiktoken_cache}
+          cp ${cfg.package.cl100k_base.tiktoken} ${cfg.stateDir}/tiktoken_cache/9b5ad71b2ce5302211f9c61530b329a4922fc6a4
+          cp ${pkgs.python3Packages.private-gpt}/${pkgs.python3.sitePackages}/private_gpt/settings.yaml ${cfg.stateDir}/settings/settings.yaml
+          cp "${config}" "${cfg.stateDir}/settings/settings-local.yaml"
+          chmod 600 "${cfg.stateDir}/settings/settings-local.yaml"
+        '';
+
+      environment = {
+        PGPT_PROFILES = "local";
+        PGPT_SETTINGS_FOLDER = "${cfg.stateDir}/settings";
+        HF_HOME = "${cfg.stateDir}/huggingface";
+        TRANSFORMERS_OFFLINE = "1";
+        HF_DATASETS_OFFLINE = "1";
+        MPLCONFIGDIR = "${cfg.stateDir}/matplotlib";
+      };
+
+      serviceConfig = {
+        ExecStart = lib.getExe cfg.package;
+        WorkingDirectory = cfg.stateDir;
+        StateDirectory = "private-gpt";
+        RuntimeDirectory = "private-gpt";
+        RuntimeDirectoryMode = "0755";
+        PrivateTmp = true;
+        DynamicUser = true;
+        DevicePolicy = "closed";
+        LockPersonality = true;
+        MemoryDenyWriteExecute = true;
+        PrivateUsers = true;
+        ProtectHome = true;
+        ProtectHostname = true;
+        ProtectKernelLogs = true;
+        ProtectKernelModules = true;
+        ProtectKernelTunables = true;
+        ProtectControlGroups = true;
+        ProcSubset = "pid";
+        RestrictNamespaces = true;
+        RestrictRealtime = true;
+        SystemCallArchitectures = "native";
+        UMask = "0077";
+      };
+    };
+  };
+
+  meta.maintainers = with lib.maintainers; [ drupol ];
+}
diff --git a/nixos/modules/services/misc/snapper.nix b/nixos/modules/services/misc/snapper.nix
index 3a3ed1b5c0f5..33207ac2b5bd 100644
--- a/nixos/modules/services/misc/snapper.nix
+++ b/nixos/modules/services/misc/snapper.nix
@@ -103,6 +103,18 @@ in
       '';
     };
 
+    persistentTimer = mkOption {
+      default = false;
+      type = types.bool;
+      example = true;
+      description = ''
+        Set the `persistentTimer` option for the
+        {manpage}`systemd.timer(5)`
+        which triggers the snapshot immediately if the last trigger
+        was missed (e.g. if the system was powered down).
+      '';
+    };
+
     cleanupInterval = mkOption {
       type = types.str;
       default = "1d";
@@ -198,7 +210,14 @@ in
       inherit documentation;
       requires = [ "local-fs.target" ];
       serviceConfig.ExecStart = "${pkgs.snapper}/lib/snapper/systemd-helper --timeline";
-      startAt = cfg.snapshotInterval;
+    };
+
+    systemd.timers.snapper-timeline = {
+      wantedBy = [ "timers.target" ];
+      timerConfig = {
+        Persistent = cfg.persistentTimer;
+        OnCalendar = cfg.snapshotInterval;
+      };
     };
 
     systemd.services.snapper-cleanup = {
diff --git a/nixos/modules/services/misc/tzupdate.nix b/nixos/modules/services/misc/tzupdate.nix
index eac1e1112a5a..be63bb179e42 100644
--- a/nixos/modules/services/misc/tzupdate.nix
+++ b/nixos/modules/services/misc/tzupdate.nix
@@ -41,5 +41,5 @@ in {
     };
   };
 
-  meta.maintainers = [ maintainers.michaelpj ];
+  meta.maintainers = [ ];
 }
diff --git a/nixos/modules/services/misc/wastebin.nix b/nixos/modules/services/misc/wastebin.nix
index 3d0af2862683..f24bf94fa52b 100644
--- a/nixos/modules/services/misc/wastebin.nix
+++ b/nixos/modules/services/misc/wastebin.nix
@@ -10,7 +10,7 @@ in
 
   options.services.wastebin = {
 
-    enable = mkEnableOption "Wastenbin pastebin service";
+    enable = mkEnableOption "Wastebin, a pastebin service";
 
     package = mkPackageOption pkgs "wastebin" { };
 
diff --git a/nixos/modules/services/misc/zoneminder.nix b/nixos/modules/services/misc/zoneminder.nix
index 84c3a6710c0d..d09cd87febff 100644
--- a/nixos/modules/services/misc/zoneminder.nix
+++ b/nixos/modules/services/misc/zoneminder.nix
@@ -350,7 +350,7 @@ in {
           RestartSec = "10s";
           CacheDirectory = dirs cacheDirs;
           RuntimeDirectory = dirName;
-          ReadWriteDirectories = lib.mkIf useCustomDir [ cfg.storageDir ];
+          ReadWritePaths = lib.mkIf useCustomDir [ cfg.storageDir ];
           StateDirectory = dirs (lib.optionals (!useCustomDir) libDirs);
           LogsDirectory = dirName;
           PrivateTmp = true;
diff --git a/nixos/modules/services/monitoring/arbtt.nix b/nixos/modules/services/monitoring/arbtt.nix
index 6dad6bdec328..cf9a236c079c 100644
--- a/nixos/modules/services/monitoring/arbtt.nix
+++ b/nixos/modules/services/monitoring/arbtt.nix
@@ -45,5 +45,5 @@ in {
     };
   };
 
-  meta.maintainers = [ maintainers.michaelpj ];
+  meta.maintainers = [ ];
 }
diff --git a/nixos/modules/services/monitoring/loki.nix b/nixos/modules/services/monitoring/loki.nix
index ba63f95e7f1a..9af1de6aa11f 100644
--- a/nixos/modules/services/monitoring/loki.nix
+++ b/nixos/modules/services/monitoring/loki.nix
@@ -99,9 +99,16 @@ in {
         conf = if cfg.configFile == null
                then prettyJSON cfg.configuration
                else cfg.configFile;
+        validateConfig = file:
+        pkgs.runCommand "validate-loki-conf" {
+          nativeBuildInputs = [ cfg.package ];
+        } ''
+            loki -verify-config -config.file "${file}"
+            ln -s "${file}" "$out"
+          '';
       in
       {
-        ExecStart = "${cfg.package}/bin/loki --config.file=${conf} ${escapeShellArgs cfg.extraFlags}";
+        ExecStart = "${cfg.package}/bin/loki --config.file=${validateConfig conf} ${escapeShellArgs cfg.extraFlags}";
         User = cfg.user;
         Restart = "always";
         PrivateTmp = true;
diff --git a/nixos/modules/services/monitoring/prometheus/exporters/bitcoin.nix b/nixos/modules/services/monitoring/prometheus/exporters/bitcoin.nix
index e44140b1f51a..e1b7dc91a0d7 100644
--- a/nixos/modules/services/monitoring/prometheus/exporters/bitcoin.nix
+++ b/nixos/modules/services/monitoring/prometheus/exporters/bitcoin.nix
@@ -7,6 +7,8 @@ in
 {
   port = 9332;
   extraOpts = {
+    package = lib.mkPackageOption pkgs "prometheus-bitcoin-exporter" { };
+
     rpcUser = mkOption {
       type = types.str;
       default = "bitcoinrpc";
@@ -65,7 +67,7 @@ in
   serviceOpts = {
     script = ''
       export BITCOIN_RPC_PASSWORD=$(cat ${cfg.rpcPasswordFile})
-      exec ${pkgs.prometheus-bitcoin-exporter}/bin/bitcoind-monitor.py
+      exec ${cfg.package}/bin/bitcoind-monitor.py
     '';
 
     environment = {
diff --git a/nixos/modules/services/networking/clatd.nix b/nixos/modules/services/networking/clatd.nix
index 76e0c130ca46..de6cde4e979c 100644
--- a/nixos/modules/services/networking/clatd.nix
+++ b/nixos/modules/services/networking/clatd.nix
@@ -43,7 +43,6 @@ in
 
       serviceConfig = {
         ExecStart = "${cfg.package}/bin/clatd -c ${configFile}";
-        startLimitIntervalSec = 0;
 
         # Hardening
         CapabilityBoundingSet = [
diff --git a/nixos/modules/services/networking/hostapd.nix b/nixos/modules/services/networking/hostapd.nix
index 1bef5a1f0a9e..b678656f2e04 100644
--- a/nixos/modules/services/networking/hostapd.nix
+++ b/nixos/modules/services/networking/hostapd.nix
@@ -687,7 +687,7 @@ in {
                   authentication = {
                     mode = mkOption {
                       default = "wpa3-sae";
-                      type = types.enum ["none" "wpa2-sha256" "wpa3-sae-transition" "wpa3-sae"];
+                      type = types.enum ["none" "wpa2-sha1" "wpa2-sha256" "wpa3-sae-transition" "wpa3-sae"];
                       description = ''
                         Selects the authentication mode for this AP.
 
@@ -695,7 +695,9 @@ in {
                           and create an open AP. Use {option}`settings` together with this option if you
                           want to configure the authentication manually. Any password options will still be
                           effective, if set.
-                        - {var}`"wpa2-sha256"`: WPA2-Personal using SHA256 (IEEE 802.11i/RSN). Passwords are set
+                        - {var}`"wpa2-sha1"`: Not recommended. WPA2-Personal using HMAC-SHA1. Passwords are set
+                          using {option}`wpaPassword` or preferably by {option}`wpaPasswordFile` or {option}`wpaPskFile`.
+                        - {var}`"wpa2-sha256"`: WPA2-Personal using HMAC-SHA256 (IEEE 802.11i/RSN). Passwords are set
                           using {option}`wpaPassword` or preferably by {option}`wpaPasswordFile` or {option}`wpaPskFile`.
                         - {var}`"wpa3-sae-transition"`: Use WPA3-Personal (SAE) if possible, otherwise fallback
                           to WPA2-SHA256. Only use if necessary and switch to the newer WPA3-SAE when possible.
@@ -812,7 +814,7 @@ in {
                         Warning: These entries will get put into a world-readable file in
                         the Nix store! Using {option}`saePasswordFile` instead is recommended.
 
-                        Not used when {option}`mode` is {var}`"wpa2-sha256"`.
+                        Not used when {option}`mode` is {var}`"wpa2-sha1"` or {var}`"wpa2-sha256"`.
                       '';
                       type = types.listOf (types.submodule {
                         options = {
@@ -884,7 +886,7 @@ in {
                         parameters doesn't matter:
                         `<password>[|mac=<peer mac>][|vlanid=<VLAN ID>][|pk=<m:ECPrivateKey-base64>][|id=<identifier>]`
 
-                        Not used when {option}`mode` is {var}`"wpa2-sha256"`.
+                        Not used when {option}`mode` is {var}`"wpa2-sha1"` or {var}`"wpa2-sha256"`.
                       '';
                     };
 
@@ -959,6 +961,9 @@ in {
                   } // optionalAttrs (bssCfg.authentication.mode == "wpa3-sae-transition") {
                     wpa = 2;
                     wpa_key_mgmt = "WPA-PSK-SHA256 SAE";
+                  } // optionalAttrs (bssCfg.authentication.mode == "wpa2-sha1") {
+                    wpa = 2;
+                    wpa_key_mgmt = "WPA-PSK";
                   } // optionalAttrs (bssCfg.authentication.mode == "wpa2-sha256") {
                     wpa = 2;
                     wpa_key_mgmt = "WPA-PSK-SHA256";
@@ -1186,8 +1191,8 @@ in {
                   message = ''hostapd radio ${radio} bss ${bss}: uses WPA3-SAE in transition mode requires defining both a wpa password option and a sae password option'';
                 }
                 {
-                  assertion = auth.mode == "wpa2-sha256" -> countWpaPasswordDefinitions == 1;
-                  message = ''hostapd radio ${radio} bss ${bss}: uses WPA2-SHA256 which requires defining a wpa password option'';
+                  assertion = (auth.mode == "wpa2-sha1" || auth.mode == "wpa2-sha256") -> countWpaPasswordDefinitions == 1;
+                  message = ''hostapd radio ${radio} bss ${bss}: uses WPA2-PSK which requires defining a wpa password option'';
                 }
               ])
               radioCfg.networks))
diff --git a/nixos/modules/services/networking/jotta-cli.md b/nixos/modules/services/networking/jotta-cli.md
index fee002a4e604..335e5c8e3856 100644
--- a/nixos/modules/services/networking/jotta-cli.md
+++ b/nixos/modules/services/networking/jotta-cli.md
@@ -6,7 +6,7 @@ The [Jottacloud Command-line Tool](https://docs.jottacloud.com/en/articles/14368
 
 ```nix
 {
-  user.services.jotta-cli.enable = true;
+  services.jotta-cli.enable = true;
 }
 ```
 
@@ -15,7 +15,7 @@ This adds `jotta-cli` to `environment.systemPackages` and starts a user service
 ## Example Configuration {#module-services-jotta-cli-example-configuration}
 
 ```nix
-user.services.jotta-cli = {
+services.jotta-cli = {
   enable = true;
   options = [ "slow" ];
   package = pkgs.jotta-cli;
diff --git a/nixos/modules/services/networking/jotta-cli.nix b/nixos/modules/services/networking/jotta-cli.nix
index c7e6dad5453c..e0fa1ef332fe 100644
--- a/nixos/modules/services/networking/jotta-cli.nix
+++ b/nixos/modules/services/networking/jotta-cli.nix
@@ -2,10 +2,10 @@
 
 with lib;
 
-let cfg = config.user.services.jotta-cli;
+let cfg = config.services.jotta-cli;
 in {
   options = {
-    user.services.jotta-cli = {
+    services.jotta-cli = {
 
       enable = mkEnableOption "Jottacloud Command-line Tool";
 
diff --git a/nixos/modules/services/networking/networkmanager.nix b/nixos/modules/services/networking/networkmanager.nix
index e33bbb2af178..b7143cf520f9 100644
--- a/nixos/modules/services/networking/networkmanager.nix
+++ b/nixos/modules/services/networking/networkmanager.nix
@@ -470,7 +470,7 @@ in
       -      [main]
       -      no-auto-default=*
       -    '''
-      +    extraConfig.main.no-auto-default = "*";
+      +    settings.main.no-auto-default = "*";
          };
       ```
     ''
diff --git a/nixos/modules/services/networking/pixiecore.nix b/nixos/modules/services/networking/pixiecore.nix
index cfdb8014136e..111cb7e35504 100644
--- a/nixos/modules/services/networking/pixiecore.nix
+++ b/nixos/modules/services/networking/pixiecore.nix
@@ -82,8 +82,8 @@ in
 
       apiServer = mkOption {
         type = types.str;
-        example = "localhost:8080";
-        description = "host:port to connect to the API. Ignored unless mode is set to 'api'";
+        example = "http://localhost:8080";
+        description = "URI to connect to the API. Ignored unless mode is set to 'api'";
       };
 
       extraArguments = mkOption {
diff --git a/nixos/modules/services/networking/radvd.nix b/nixos/modules/services/networking/radvd.nix
index 4e3e501d2f59..0143324a7815 100644
--- a/nixos/modules/services/networking/radvd.nix
+++ b/nixos/modules/services/networking/radvd.nix
@@ -33,6 +33,17 @@ in
 
     package = mkPackageOption pkgs "radvd" { };
 
+    debugLevel = mkOption {
+      type = types.int;
+      default = 0;
+      example = 5;
+      description = ''
+          The debugging level is an integer in the range from 1 to 5,
+          from quiet to very verbose. A debugging level of 0 completely
+          turns off debugging.
+        '';
+    };
+
     config = mkOption {
       type = types.lines;
       example =
@@ -67,7 +78,7 @@ in
         wantedBy = [ "multi-user.target" ];
         after = [ "network.target" ];
         serviceConfig =
-          { ExecStart = "@${cfg.package}/bin/radvd radvd -n -u radvd -C ${confFile}";
+          { ExecStart = "@${cfg.package}/bin/radvd radvd -n -u radvd -d ${toString cfg.debugLevel} -C ${confFile}";
             Restart = "always";
           };
       };
diff --git a/nixos/modules/services/networking/smokeping.nix b/nixos/modules/services/networking/smokeping.nix
index 38d6e4452c97..3fb3eac45cc8 100644
--- a/nixos/modules/services/networking/smokeping.nix
+++ b/nixos/modules/services/networking/smokeping.nix
@@ -47,6 +47,13 @@ let
 in
 
 {
+  imports = [
+    (mkRemovedOptionModule [ "services" "smokeping" "port" ] ''
+      The smokeping web service is now served by nginx.
+      In order to change the port, you need to change the nginx configuration under `services.nginx.virtualHosts.smokeping.listen.*.port`.
+    '')
+  ];
+
   options = {
     services.smokeping = {
       enable = mkEnableOption "smokeping service";
@@ -71,8 +78,8 @@ in
       };
       cgiUrl = mkOption {
         type = types.str;
-        default = "http://${cfg.hostName}:${toString cfg.port}/smokeping.cgi";
-        defaultText = literalExpression ''"http://''${hostName}:''${toString port}/smokeping.cgi"'';
+        default = "http://${cfg.hostName}/smokeping.cgi";
+        defaultText = literalExpression ''"http://''${hostName}/smokeping.cgi"'';
         example = "https://somewhere.example.com/smokeping.cgi";
         description = "URL to the smokeping cgi.";
       };
@@ -177,11 +184,6 @@ in
           which makes it bind to all interfaces.
         '';
       };
-      port = mkOption {
-        type = types.port;
-        default = 8081;
-        description = "TCP port to use for the web server.";
-      };
       presentationConfig = mkOption {
         type = types.lines;
         default = ''
@@ -312,17 +314,8 @@ in
       description = "smokeping daemon user";
       home = smokepingHome;
       createHome = true;
-      # When `cfg.webService` is enabled, `thttpd` makes SmokePing available
-      # under `${cfg.host}:${cfg.port}/smokeping.fcgi` as per the `ln -s` below.
-      # We also want that going to `${cfg.host}:${cfg.port}` without `smokeping.fcgi`
-      # makes it easy for the user to find SmokePing.
-      # However `thttpd` does not seem to support easy redirections from `/` to `smokeping.fcgi`
-      # and only allows directory listings or `/` -> `index.html` resolution if the directory
-      # has `chmod 755` (see https://acme.com/software/thttpd/thttpd_man.html#PERMISSIONS,
-      # " directories should be 755 if you want to allow indexing").
-      # Otherwise it shows `403 Forbidden` on `/`.
-      # Thus, we need to make `smokepingHome` (which is given to `thttpd -d` below) `755`.
-      homeMode = "755";
+      # When `cfg.webService` is enabled, `nginx` requires read permissions on the home directory.
+      homeMode = "711";
     };
     users.groups.${cfg.user} = { };
     systemd.services.smokeping = {
@@ -342,21 +335,25 @@ in
         ${cfg.package}/bin/smokeping --static --config=${configPath}
       '';
     };
-    systemd.services.thttpd = mkIf cfg.webService {
-      requiredBy = [ "multi-user.target" ];
-      requires = [ "smokeping.service" ];
-      path = with pkgs; [ bash rrdtool smokeping thttpd ];
-      serviceConfig = {
-        Restart = "always";
-        ExecStart = lib.concatStringsSep " " (lib.concatLists [
-          [ "${pkgs.thttpd}/bin/thttpd" ]
-          [ "-u ${cfg.user}" ]
-          [ ''-c "**.fcgi"'' ]
-          [ "-d ${smokepingHome}" ]
-          (lib.optional (cfg.host != null) "-h ${cfg.host}")
-          [ "-p ${builtins.toString cfg.port}" ]
-          [ "-D -nos" ]
-        ]);
+
+    # use nginx to serve the smokeping web service
+    services.fcgiwrap.enable = mkIf cfg.webService true;
+    services.nginx = mkIf cfg.webService {
+      enable = true;
+      virtualHosts."smokeping" = {
+        serverName = mkDefault cfg.host;
+        locations."/" = {
+          root = smokepingHome;
+          index = "smokeping.fcgi";
+        };
+        locations."/smokeping.fcgi" = {
+          extraConfig = ''
+            include ${config.services.nginx.package}/conf/fastcgi_params;
+            fastcgi_pass unix:${config.services.fcgiwrap.socketAddress};
+            fastcgi_param SCRIPT_FILENAME ${smokepingHome}/smokeping.fcgi;
+            fastcgi_param DOCUMENT_ROOT ${smokepingHome};
+          '';
+        };
       };
     };
   };
diff --git a/nixos/modules/services/networking/ssh/sshd.nix b/nixos/modules/services/networking/ssh/sshd.nix
index c62bccd462d3..0fdb708bf052 100644
--- a/nixos/modules/services/networking/ssh/sshd.nix
+++ b/nixos/modules/services/networking/ssh/sshd.nix
@@ -296,6 +296,17 @@ in
         '';
       };
 
+      authorizedKeysInHomedir = mkOption {
+        type = types.bool;
+        default = true;
+        description = ''
+          Enables the use of the `~/.ssh/authorized_keys` file.
+
+          Otherwise, the only files trusted by default are those in `/etc/ssh/authorized_keys.d`,
+          *i.e.* SSH keys from [](#opt-users.users._name_.openssh.authorizedKeys.keys).
+        '';
+      };
+
       authorizedKeysCommand = mkOption {
         type = types.str;
         default = "none";
@@ -635,7 +646,7 @@ in
     # https://github.com/NixOS/nixpkgs/pull/10155
     # https://github.com/NixOS/nixpkgs/pull/41745
     services.openssh.authorizedKeysFiles =
-      [ "%h/.ssh/authorized_keys" "/etc/ssh/authorized_keys.d/%u" ];
+      lib.optional cfg.authorizedKeysInHomedir "%h/.ssh/authorized_keys" ++ [ "/etc/ssh/authorized_keys.d/%u" ];
 
     services.openssh.settings.AuthorizedPrincipalsFile = mkIf (authPrincipalsFiles != {}) "/etc/ssh/authorized_principals.d/%u";
 
diff --git a/nixos/modules/services/networking/sunshine.nix b/nixos/modules/services/networking/sunshine.nix
index 0749eaee95d8..ec78db1f3f8e 100644
--- a/nixos/modules/services/networking/sunshine.nix
+++ b/nixos/modules/services/networking/sunshine.nix
@@ -1,6 +1,6 @@
 { config, lib, pkgs, utils, ... }:
 let
-  inherit (lib) mkEnableOption mkPackageOption mkOption mkIf mkDefault types optionals getExe;
+  inherit (lib) mkEnableOption mkPackageOption mkOption literalExpression mkIf mkDefault types optionals getExe;
   inherit (utils) escapeSystemdExecArgs;
   cfg = config.services.sunshine;
 
@@ -46,7 +46,7 @@ in
 
         See https://docs.lizardbyte.dev/projects/sunshine/en/latest/about/advanced_usage.html#configuration for syntax.
       '';
-      example = ''
+      example = literalExpression ''
         {
           sunshine_name = "nixos";
         }
@@ -67,7 +67,7 @@ in
       description = ''
         Configuration for applications to be exposed to Moonlight. If this is set, no configuration is possible from the web UI, and must be by the `settings` option.
       '';
-      example = ''
+      example = literalExpression ''
         {
           env = {
             PATH = "$(PATH):$(HOME)/.local/bin";
diff --git a/nixos/modules/services/networking/tayga.nix b/nixos/modules/services/networking/tayga.nix
index 1a0df33fe883..9f118b243e90 100644
--- a/nixos/modules/services/networking/tayga.nix
+++ b/nixos/modules/services/networking/tayga.nix
@@ -16,6 +16,8 @@ let
     prefix ${strAddr cfg.ipv6.pool}
     dynamic-pool ${strAddr cfg.ipv4.pool}
     data-dir ${cfg.dataDir}
+
+    ${concatStringsSep "\n" (mapAttrsToList (ipv4: ipv6: "map " + ipv4 + " " + ipv6) cfg.mappings)}
   '';
 
   addrOpts = v:
@@ -103,18 +105,38 @@ in
       dataDir = mkOption {
         type = types.path;
         default = "/var/lib/tayga";
-        description = "Directory for persistent data";
+        description = "Directory for persistent data.";
       };
 
       tunDevice = mkOption {
         type = types.str;
         default = "nat64";
-        description = "Name of the nat64 tun device";
+        description = "Name of the nat64 tun device.";
+      };
+
+      mappings = mkOption {
+        type = types.attrsOf types.str;
+        default = {};
+        description = "Static IPv4 -> IPv6 host mappings.";
+        example = literalExpression ''
+          {
+            "192.168.5.42" = "2001:db8:1:4444::1";
+            "192.168.5.43" = "2001:db8:1:4444::2";
+            "192.168.255.2" = "2001:db8:1:569::143";
+          }
+        '';
       };
     };
   };
 
   config = mkIf cfg.enable {
+    assertions = [
+      {
+        assertion = allUnique (attrValues cfg.mappings);
+        message = "Neither the IPv4 nor the IPv6 addresses must be entered twice in the mappings.";
+      }
+    ];
+
     networking.interfaces."${cfg.tunDevice}" = {
       virtual = true;
       virtualType = "tun";
diff --git a/nixos/modules/services/networking/vsftpd.nix b/nixos/modules/services/networking/vsftpd.nix
index 25f950600b91..07b93e92a750 100644
--- a/nixos/modules/services/networking/vsftpd.nix
+++ b/nixos/modules/services/networking/vsftpd.nix
@@ -278,7 +278,7 @@ in
       }
       {
         assertion = (cfg.enableVirtualUsers -> cfg.userDbPath != null)
-                 && (cfg.enableVirtualUsers -> cfg.localUsers != null);
+                 && (cfg.enableVirtualUsers -> cfg.localUsers);
         message = "vsftpd: If enableVirtualUsers is true, you need to setup both the userDbPath and localUsers options.";
       }];
 
diff --git a/nixos/modules/services/security/oauth2-proxy-nginx.nix b/nixos/modules/services/security/oauth2-proxy-nginx.nix
index c05bd304752d..07192e7287b0 100644
--- a/nixos/modules/services/security/oauth2-proxy-nginx.nix
+++ b/nixos/modules/services/security/oauth2-proxy-nginx.nix
@@ -64,11 +64,11 @@ in
     };
   };
 
-  config.services.oauth2-proxy = lib.mkIf (cfg.virtualHosts != [] && (lib.hasPrefix "127.0.0.1:" cfg.proxy)) {
+  config.services.oauth2-proxy = lib.mkIf (cfg.virtualHosts != {} && (lib.hasPrefix "127.0.0.1:" cfg.proxy)) {
     enable = true;
   };
 
-  config.services.nginx = lib.mkIf (cfg.virtualHosts != [] && config.services.oauth2-proxy.enable) (lib.mkMerge ([
+  config.services.nginx = lib.mkIf (cfg.virtualHosts != {} && config.services.oauth2-proxy.enable) (lib.mkMerge ([
     {
       virtualHosts.${cfg.domain}.locations."/oauth2/" = {
         proxyPass = cfg.proxy;
@@ -78,7 +78,7 @@ in
         '';
       };
     }
-  ] ++ lib.optional (cfg.virtualHosts != []) {
+  ] ++ lib.optional (cfg.virtualHosts != {}) {
     recommendedProxySettings = true; # needed because duplicate headers
   } ++ (lib.mapAttrsToList (vhost: conf: {
     virtualHosts.${vhost} = {
diff --git a/nixos/modules/services/security/oauth2-proxy.nix b/nixos/modules/services/security/oauth2-proxy.nix
index 075e64b743b1..3079a1d030c5 100644
--- a/nixos/modules/services/security/oauth2-proxy.nix
+++ b/nixos/modules/services/security/oauth2-proxy.nix
@@ -17,7 +17,7 @@ let
       inherit (cfg.github) org team;
     }; };
 
-    google = cfg: { google = with cfg.google; optionalAttrs (groups != []) {
+    google = cfg: { google = with cfg.google; lib.optionalAttrs (groups != []) {
       admin-email = adminEmail;
       service-account = serviceAccountJSON;
       group = groups;
@@ -577,20 +577,22 @@ in
 
     users.groups.oauth2-proxy = {};
 
-    systemd.services.oauth2-proxy = {
-      description = "OAuth2 Proxy";
-      path = [ cfg.package ];
-      wantedBy = [ "multi-user.target" ];
-      wants = [ "network-online.target" ];
-      after = [ "network-online.target" ];
-
-      serviceConfig = {
-        User = "oauth2-proxy";
-        Restart = "always";
-        ExecStart = "${cfg.package}/bin/oauth2-proxy ${configString}";
-        EnvironmentFile = lib.mkIf (cfg.keyFile != null) cfg.keyFile;
+    systemd.services.oauth2-proxy =
+      let needsKeycloak = lib.elem cfg.provider ["keycloak" "keycloak-oidc"]
+                          && config.services.keycloak.enable;
+      in {
+        description = "OAuth2 Proxy";
+        path = [ cfg.package ];
+        wantedBy = [ "multi-user.target" ];
+        wants = [ "network-online.target" ] ++ lib.optionals needsKeycloak [ "keycloak.service" ];
+        after = [ "network-online.target" ] ++ lib.optionals needsKeycloak [ "keycloak.service" ];
+
+        serviceConfig = {
+          User = "oauth2-proxy";
+          Restart = "always";
+          ExecStart = "${cfg.package}/bin/oauth2-proxy ${configString}";
+          EnvironmentFile = lib.mkIf (cfg.keyFile != null) cfg.keyFile;
+        };
       };
-    };
-
   };
 }
diff --git a/nixos/modules/services/security/step-ca.nix b/nixos/modules/services/security/step-ca.nix
index c708cb2b8910..e9195fbd5160 100644
--- a/nixos/modules/services/security/step-ca.nix
+++ b/nixos/modules/services/security/step-ca.nix
@@ -107,7 +107,7 @@ in
           UMask = "0077";
           Environment = "HOME=%S/step-ca";
           WorkingDirectory = ""; # override upstream
-          ReadWriteDirectories = ""; # override upstream
+          ReadWritePaths = ""; # override upstream
 
           # LocalCredential handles file permission problems arising from the use of DynamicUser.
           LoadCredential = "intermediate_password:${cfg.intermediatePasswordFile}";
diff --git a/nixos/modules/services/system/dbus.nix b/nixos/modules/services/system/dbus.nix
index 8dba0aca6433..26f4eba707f9 100644
--- a/nixos/modules/services/system/dbus.nix
+++ b/nixos/modules/services/system/dbus.nix
@@ -147,6 +147,10 @@ in
       };
 
       systemd.services.dbus = {
+        aliases = [
+          # hack aiding to prevent dbus from restarting when switching from dbus-broker back to dbus
+          "dbus-broker.service"
+        ];
         # Don't restart dbus-daemon. Bad things tend to happen if we do.
         reloadIfChanged = true;
         restartTriggers = [
@@ -158,6 +162,10 @@ in
       };
 
       systemd.user.services.dbus = {
+        aliases = [
+          # hack aiding to prevent dbus from restarting when switching from dbus-broker back to dbus
+          "dbus-broker.service"
+        ];
         # Don't restart dbus-daemon. Bad things tend to happen if we do.
         reloadIfChanged = true;
         restartTriggers = [
@@ -184,6 +192,8 @@ in
       # https://github.com/NixOS/nixpkgs/issues/108643
       systemd.services.dbus-broker = {
         aliases = [
+          # allow other services to just depend on dbus,
+          # but also a hack aiding to prevent dbus from restarting when switching from dbus-broker back to dbus
           "dbus.service"
         ];
         unitConfig = {
@@ -203,6 +213,8 @@ in
 
       systemd.user.services.dbus-broker = {
         aliases = [
+          # allow other services to just depend on dbus,
+          # but also a hack aiding to prevent dbus from restarting when switching from dbus-broker back to dbus
           "dbus.service"
         ];
         # Don't restart dbus. Bad things tend to happen if we do.
diff --git a/nixos/modules/services/web-apps/keycloak.nix b/nixos/modules/services/web-apps/keycloak.nix
index cf1282b3d4cf..6d472cf48cd0 100644
--- a/nixos/modules/services/web-apps/keycloak.nix
+++ b/nixos/modules/services/web-apps/keycloak.nix
@@ -466,7 +466,8 @@ in
       confFile = pkgs.writeText "keycloak.conf" (keycloakConfig filteredConfig);
       keycloakBuild = cfg.package.override {
         inherit confFile;
-        plugins = cfg.package.enabledPlugins ++ cfg.plugins;
+        plugins = cfg.package.enabledPlugins ++ cfg.plugins ++
+                  (with cfg.package.plugins; [quarkus-systemd-notify quarkus-systemd-notify-deployment]);
       };
     in
     mkIf cfg.enable
@@ -638,6 +639,8 @@ in
               RuntimeDirectory = "keycloak";
               RuntimeDirectoryMode = "0700";
               AmbientCapabilities = "CAP_NET_BIND_SERVICE";
+              Type = "notify";  # Requires quarkus-systemd-notify plugin
+              NotifyAccess = "all";
             };
             script = ''
               set -o errexit -o pipefail -o nounset -o errtrace
@@ -663,7 +666,7 @@ in
             '' + ''
               export KEYCLOAK_ADMIN=admin
               export KEYCLOAK_ADMIN_PASSWORD=${escapeShellArg cfg.initialAdminPassword}
-              kc.sh start --optimized
+              kc.sh --verbose start --optimized
             '';
           };
 
diff --git a/nixos/modules/services/web-apps/miniflux.nix b/nixos/modules/services/web-apps/miniflux.nix
index d65d6db3cdaa..61243a63c582 100644
--- a/nixos/modules/services/web-apps/miniflux.nix
+++ b/nixos/modules/services/web-apps/miniflux.nix
@@ -1,7 +1,7 @@
 { config, lib, pkgs, ... }:
 
-with lib;
 let
+  inherit (lib) mkEnableOption mkPackageOption mkOption types literalExpression mkIf mkDefault;
   cfg = config.services.miniflux;
 
   defaultAddress = "localhost:8080";
@@ -20,8 +20,8 @@ in
 
       package = mkPackageOption pkgs "miniflux" { };
 
-      createDatabaseLocally = lib.mkOption {
-        type = lib.types.bool;
+      createDatabaseLocally = mkOption {
+        type = types.bool;
         default = true;
         description = ''
           Whether a PostgreSQL database should be automatically created and
@@ -66,6 +66,7 @@ in
       DATABASE_URL = lib.mkIf cfg.createDatabaseLocally "user=miniflux host=/run/postgresql dbname=miniflux";
       RUN_MIGRATIONS = 1;
       CREATE_ADMIN = 1;
+      WATCHDOG = 1;
     };
 
     services.postgresql = lib.mkIf cfg.createDatabaseLocally {
@@ -96,12 +97,18 @@ in
         ++ lib.optionals cfg.createDatabaseLocally [ "postgresql.service" "miniflux-dbsetup.service" ];
 
       serviceConfig = {
-        ExecStart = "${cfg.package}/bin/miniflux";
+        Type = "notify";
+        ExecStart = lib.getExe cfg.package;
         User = "miniflux";
         DynamicUser = true;
         RuntimeDirectory = "miniflux";
         RuntimeDirectoryMode = "0750";
         EnvironmentFile = cfg.adminCredentialsFile;
+        WatchdogSec = 60;
+        WatchdogSignal = "SIGKILL";
+        Restart = "always";
+        RestartSec = 5;
+
         # Hardening
         CapabilityBoundingSet = [ "" ];
         DeviceAllow = [ "" ];
diff --git a/nixos/modules/services/web-apps/nextcloud.md b/nixos/modules/services/web-apps/nextcloud.md
index ec860d307b38..0b615deae44b 100644
--- a/nixos/modules/services/web-apps/nextcloud.md
+++ b/nixos/modules/services/web-apps/nextcloud.md
@@ -205,11 +205,6 @@ it complains loudly now. So nothing actionable here by default. Alternatively yo
 * set [](#opt-services.nextcloud.settings.log_type) to "file" to be able to view logs
   from the admin panel.
 
-### Your web server is not properly set up to resolve `.well-known` URLs, failed on: `/.well-known/caldav` {#module-services-nextcloud-warning-wellknown-caldav}
-
-This warning appearing seems to be an upstream issue and is being sorted out
-in [nextcloud/server#45033](https://github.com/nextcloud/server/issues/45033).
-
 ## Maintainer information {#module-services-nextcloud-maintainer-info}
 
 As stated in the previous paragraph, we must provide a clean upgrade-path for Nextcloud
diff --git a/nixos/modules/services/web-apps/nextcloud.nix b/nixos/modules/services/web-apps/nextcloud.nix
index 21f76938f20c..91d03dc16077 100644
--- a/nixos/modules/services/web-apps/nextcloud.nix
+++ b/nixos/modules/services/web-apps/nextcloud.nix
@@ -797,7 +797,7 @@ in {
 
   config = mkIf cfg.enable (mkMerge [
     { warnings = let
-        latest = 28;
+        latest = 29;
         upgradeWarning = major: nixos:
           ''
             A legacy Nextcloud install (from before NixOS ${nixos}) may be installed.
@@ -939,6 +939,7 @@ in {
 
         in {
           wantedBy = [ "multi-user.target" ];
+          wants = [ "nextcloud-update-db.service" ];
           before = [ "phpfpm-nextcloud.service" ];
           after = optional mysqlLocal "mysql.service" ++ optional pgsqlLocal "postgresql.service";
           requires = optional mysqlLocal "mysql.service" ++ optional pgsqlLocal "postgresql.service";
@@ -997,7 +998,7 @@ in {
           after = [ "nextcloud-setup.service" ];
           environment.NEXTCLOUD_CONFIG_DIR = "${datadir}/config";
           serviceConfig = {
-            Type = "oneshot";
+            Type = "exec";
             User = "nextcloud";
             ExecCondition = "${lib.getExe phpPackage} -f ${webroot}/occ status -e";
             ExecStart = "${lib.getExe phpPackage} -f ${webroot}/cron.php";
@@ -1013,6 +1014,20 @@ in {
           };
           startAt = cfg.autoUpdateApps.startAt;
         };
+        nextcloud-update-db = {
+          after = [ "nextcloud-setup.service" ];
+          environment.NEXTCLOUD_CONFIG_DIR = "${datadir}/config";
+          script = ''
+            ${occ}/bin/nextcloud-occ db:add-missing-columns
+            ${occ}/bin/nextcloud-occ db:add-missing-indices
+            ${occ}/bin/nextcloud-occ db:add-missing-primary-keys
+          '';
+          serviceConfig = {
+            Type = "exec";
+            User = "nextcloud";
+            ExecCondition = "${lib.getExe phpPackage} -f ${webroot}/occ status -e";
+          };
+        };
       };
 
       services.phpfpm = {
@@ -1105,10 +1120,10 @@ in {
             extraConfig = ''
               absolute_redirect off;
               location = /.well-known/carddav {
-                return 301 /remote.php/dav;
+                return 301 /remote.php/dav/;
               }
               location = /.well-known/caldav {
-                return 301 /remote.php/dav;
+                return 301 /remote.php/dav/;
               }
               location ~ ^/\.well-known/(?!acme-challenge|pki-validation) {
                 return 301 /index.php$request_uri;
diff --git a/nixos/modules/services/web-apps/plausible.nix b/nixos/modules/services/web-apps/plausible.nix
index 8e49e591f75c..1f909bbd67a3 100644
--- a/nixos/modules/services/web-apps/plausible.nix
+++ b/nixos/modules/services/web-apps/plausible.nix
@@ -276,8 +276,11 @@ in {
             ${lib.optionalString (cfg.mail.smtp.passwordFile != null)
               ''export SMTP_USER_PWD="$(< $CREDENTIALS_DIRECTORY/SMTP_USER_PWD )"''}
 
-            # setup
-            ${cfg.package}/createdb.sh
+            ${lib.optionalString cfg.database.postgres.setup ''
+              # setup
+              ${cfg.package}/createdb.sh
+            ''}
+
             ${cfg.package}/migrate.sh
             export IP_GEOLOCATION_DB=${pkgs.dbip-country-lite}/share/dbip/dbip-country-lite.mmdb
             ${cfg.package}/bin/plausible eval "(Plausible.Release.prepare() ; Plausible.Auth.create_user(\"$ADMIN_USER_NAME\", \"$ADMIN_USER_EMAIL\", \"$ADMIN_USER_PWD\"))"
@@ -326,6 +329,6 @@ in {
     ];
   };
 
-  meta.maintainers = with maintainers; [ ];
+  meta.maintainers = with maintainers; [ xanderio ];
   meta.doc = ./plausible.md;
 }
diff --git a/nixos/modules/services/web-apps/pretalx.nix b/nixos/modules/services/web-apps/pretalx.nix
index b062a8b7eeea..1411d11982c8 100644
--- a/nixos/modules/services/web-apps/pretalx.nix
+++ b/nixos/modules/services/web-apps/pretalx.nix
@@ -11,20 +11,25 @@ let
 
   configFile = format.generate "pretalx.cfg" cfg.settings;
 
-  extras = cfg.package.optional-dependencies.redis
-    ++ lib.optionals (cfg.settings.database.backend == "mysql") cfg.package.optional-dependencies.mysql
-    ++ lib.optionals (cfg.settings.database.backend == "postgresql") cfg.package.optional-dependencies.postgres;
-
-  pythonEnv = cfg.package.python.buildEnv.override {
-    extraLibs = [ (cfg.package.python.pkgs.toPythonModule cfg.package) ]
-      ++ (with cfg.package.python.pkgs; [ gunicorn ]
-      ++ lib.optional cfg.celery.enable celery) ++ extras;
+  finalPackage = cfg.package.override {
+    inherit (cfg) plugins;
+  };
+
+  pythonEnv = finalPackage.python.buildEnv.override {
+    extraLibs = with finalPackage.python.pkgs; [
+      (toPythonModule finalPackage)
+      gunicorn
+    ]
+    ++ finalPackage.optional-dependencies.redis
+    ++ lib.optionals cfg.celery.enable [ celery ]
+    ++ lib.optionals (cfg.settings.database.backend == "mysql") finalPackage.optional-dependencies.mysql
+    ++ lib.optionals (cfg.settings.database.backend == "postgresql") finalPackage.optional-dependencies.postgres;
   };
 in
 
 {
   meta = with lib; {
-    maintainers = teams.c3d2.members;
+    maintainers = with maintainers; [ hexa] ++ teams.c3d2.members;
   };
 
   options.services.pretalx = {
@@ -44,6 +49,20 @@ in
       description = "User under which pretalx should run.";
     };
 
+    plugins = lib.mkOption {
+      type = with lib.types; listOf package;
+      default = [];
+      example = lib.literalExpression ''
+        with config.services.pretalx.package.plugins; [
+          pages
+          youtube
+        ];
+      '';
+      description = ''
+        Pretalx plugins to install into the Python environment.
+      '';
+    };
+
     gunicorn.extraArgs = lib.mkOption {
       type = with lib.types; listOf str;
       default = [
@@ -329,10 +348,47 @@ in
         serviceConfig = {
           User = "pretalx";
           Group = "pretalx";
-          StateDirectory = [ "pretalx" "pretalx/media" ];
+          StateDirectory = [
+            "pretalx"
+            "pretalx/media"
+          ];
+          StateDirectoryMode = "0750";
           LogsDirectory = "pretalx";
           WorkingDirectory = cfg.settings.filesystem.data;
           SupplementaryGroups = [ "redis-pretalx" ];
+          AmbientCapabilities = "";
+          CapabilityBoundingSet = [ "" ];
+          DevicePolicy = "closed";
+          LockPersonality = true;
+          MemoryDenyWriteExecute = true;
+          NoNewPrivileges = true;
+          PrivateDevices = true;
+          PrivateTmp = true;
+          ProcSubset = "pid";
+          ProtectControlGroups = true;
+          ProtectHome = true;
+          ProtectHostname = true;
+          ProtectKernelLogs = true;
+          ProtectKernelModules = true;
+          ProtectKernelTunables = true;
+          ProtectProc = "invisible";
+          ProtectSystem = "strict";
+          RemoveIPC = true;
+          RestrictAddressFamilies = [
+            "AF_INET"
+            "AF_INET6"
+            "AF_UNIX"
+          ];
+          RestrictNamespaces = true;
+          RestrictRealtime = true;
+          RestrictSUIDSGID = true;
+          SystemCallArchitectures = "native";
+          SystemCallFilter = [
+            "@system-service"
+            "~@privileged"
+            "@chown"
+          ];
+          UMask = "0027";
         };
       };
     in {
@@ -395,6 +451,8 @@ in
         wantedBy = [ "multi-user.target" ];
         serviceConfig.ExecStart = "${lib.getExe' pythonEnv "celery"} -A pretalx.celery_app worker ${cfg.celery.extraArgs}";
       });
+
+      nginx.serviceConfig.SupplementaryGroups = lib.mkIf cfg.nginx.enable [ "pretalx" ];
     };
 
     systemd.sockets.pretalx-web.socketConfig = {
@@ -403,11 +461,9 @@ in
     };
 
     users = {
-      groups."${cfg.group}" = {};
-      users."${cfg.user}" = {
+      groups.${cfg.group} = {};
+      users.${cfg.user} = {
         isSystemUser = true;
-        createHome = true;
-        home = cfg.settings.filesystem.data;
         inherit (cfg) group;
       };
     };
diff --git a/nixos/modules/services/web-apps/pretix.nix b/nixos/modules/services/web-apps/pretix.nix
index 22ee9769aa92..498face7456d 100644
--- a/nixos/modules/services/web-apps/pretix.nix
+++ b/nixos/modules/services/web-apps/pretix.nix
@@ -468,7 +468,7 @@ in
           StateDirectory = [
             "pretix"
           ];
-          StateDirectoryMode = "0755";
+          StateDirectoryMode = "0750";
           CacheDirectory = "pretix";
           LogsDirectory = "pretix";
           WorkingDirectory = cfg.settings.pretix.datadir;
@@ -507,7 +507,7 @@ in
             "~@privileged"
             "@chown"
           ];
-          UMask = "0022";
+          UMask = "0027";
         };
       };
     in {
@@ -561,6 +561,8 @@ in
         wantedBy = [ "multi-user.target" ];
         serviceConfig.ExecStart = "${getExe' pythonEnv "celery"} -A pretix.celery_app worker ${cfg.celery.extraArgs}";
       };
+
+      nginx.serviceConfig.SupplementaryGroups = mkIf cfg.nginx.enable [ "pretix" ];
     };
 
     systemd.sockets.pretix-web.socketConfig = {
@@ -569,11 +571,9 @@ in
     };
 
     users = {
-      groups."${cfg.group}" = {};
-      users."${cfg.user}" = {
+      groups.${cfg.group} = {};
+      users.${cfg.user} = {
         isSystemUser = true;
-        createHome = true;
-        home = cfg.settings.pretix.datadir;
         inherit (cfg) group;
       };
     };
diff --git a/nixos/modules/services/web-apps/your_spotify.nix b/nixos/modules/services/web-apps/your_spotify.nix
new file mode 100644
index 000000000000..3eb2ffef4f93
--- /dev/null
+++ b/nixos/modules/services/web-apps/your_spotify.nix
@@ -0,0 +1,191 @@
+{
+  pkgs,
+  config,
+  lib,
+  ...
+}: let
+  inherit
+    (lib)
+    boolToString
+    concatMapAttrs
+    concatStrings
+    isBool
+    mapAttrsToList
+    mkEnableOption
+    mkIf
+    mkOption
+    mkPackageOption
+    optionalAttrs
+    types
+    mkDefault
+    ;
+  cfg = config.services.your_spotify;
+
+  configEnv = concatMapAttrs (name: value:
+    optionalAttrs (value != null) {
+      ${name} =
+        if isBool value
+        then boolToString value
+        else toString value;
+    })
+  cfg.settings;
+
+  configFile = pkgs.writeText "your_spotify.env" (concatStrings (mapAttrsToList (name: value: "${name}=${value}\n") configEnv));
+in {
+  options.services.your_spotify = let
+    inherit (types) nullOr port str path package;
+  in {
+    enable = mkEnableOption "your_spotify";
+
+    enableLocalDB = mkEnableOption "a local mongodb instance";
+    nginxVirtualHost = mkOption {
+      type = nullOr str;
+      default = null;
+      description = ''
+        If set creates an nginx virtual host for the client.
+        In most cases this should be the CLIENT_ENDPOINT without
+        protocol prefix.
+      '';
+    };
+
+    package = mkPackageOption pkgs "your_spotify" {};
+
+    clientPackage = mkOption {
+      type = package;
+      description = "Client package to use.";
+    };
+
+    spotifySecretFile = mkOption {
+      type = path;
+      description = ''
+        A file containing the secret key of your Spotify application.
+        Refer to: [Creating the Spotify Application](https://github.com/Yooooomi/your_spotify#creating-the-spotify-application).
+      '';
+    };
+
+    settings = mkOption {
+      description = ''
+        Your Spotify Configuration. Refer to [Your Spotify](https://github.com/Yooooomi/your_spotify) for definitions and values.
+      '';
+      example = lib.literalExpression ''
+        {
+          CLIENT_ENDPOINT = "https://example.com";
+          API_ENDPOINT = "https://api.example.com";
+          SPOTIFY_PUBLIC = "spotify_client_id";
+        }
+      '';
+      type = types.submodule {
+        freeformType = types.attrsOf types.str;
+        options = {
+          CLIENT_ENDPOINT = mkOption {
+            type = str;
+            description = ''
+              The endpoint of your web application.
+              Has to include a protocol Prefix (e.g. `http://`)
+            '';
+            example = "https://your_spotify.example.org";
+          };
+          API_ENDPOINT = mkOption {
+            type = str;
+            description = ''
+              The endpoint of your server
+              This api has to be reachable from the device you use the website from not from the server.
+              This means that for example you may need two nginx virtual hosts if you want to expose this on the
+              internet.
+              Has to include a protocol Prefix (e.g. `http://`)
+            '';
+            example = "https://localhost:3000";
+          };
+          SPOTIFY_PUBLIC = mkOption {
+            type = str;
+            description = ''
+              The public client ID of your Spotify application.
+              Refer to: [Creating the Spotify Application](https://github.com/Yooooomi/your_spotify#creating-the-spotify-application)
+            '';
+          };
+          MONGO_ENDPOINT = mkOption {
+            type = str;
+            description = ''The endpoint of the Mongo database.'';
+            default = "mongodb://localhost:27017/your_spotify";
+          };
+          PORT = mkOption {
+            type = port;
+            description = "The port of the api server";
+            default = 3000;
+          };
+        };
+      };
+    };
+  };
+
+  config = mkIf cfg.enable {
+    services.your_spotify.clientPackage = mkDefault (cfg.package.client.override {apiEndpoint = cfg.settings.API_ENDPOINT;});
+    systemd.services.your_spotify = {
+      after = ["network.target"];
+      script = ''
+        export SPOTIFY_SECRET=$(< "$CREDENTIALS_DIRECTORY/SPOTIFY_SECRET")
+        ${lib.getExe' cfg.package "your_spotify_migrate"}
+        exec ${lib.getExe cfg.package}
+      '';
+      serviceConfig = {
+        User = "your_spotify";
+        Group = "your_spotify";
+        DynamicUser = true;
+        EnvironmentFile = [configFile];
+        StateDirectory = "your_spotify";
+        LimitNOFILE = "1048576";
+        PrivateTmp = true;
+        PrivateDevices = true;
+        StateDirectoryMode = "0700";
+        Restart = "always";
+
+        LoadCredential = ["SPOTIFY_SECRET:${cfg.spotifySecretFile}"];
+
+        # Hardening
+        CapabilityBoundingSet = "";
+        LockPersonality = true;
+        #MemoryDenyWriteExecute = true; # Leads to coredump because V8 does JIT
+        PrivateUsers = true;
+        ProtectClock = true;
+        ProtectControlGroups = true;
+        ProtectHome = true;
+        ProtectHostname = true;
+        ProtectKernelLogs = true;
+        ProtectKernelModules = true;
+        ProtectKernelTunables = true;
+        ProtectProc = "invisible";
+        ProcSubset = "pid";
+        ProtectSystem = "strict";
+        RestrictAddressFamilies = [
+          "AF_INET"
+          "AF_INET6"
+          "AF_NETLINK"
+        ];
+        RestrictNamespaces = true;
+        RestrictRealtime = true;
+        SystemCallArchitectures = "native";
+        SystemCallFilter = [
+          "@system-service"
+          "@pkey"
+        ];
+        UMask = "0077";
+      };
+      wantedBy = ["multi-user.target"];
+    };
+    services.nginx = mkIf (cfg.nginxVirtualHost != null) {
+      enable = true;
+      virtualHosts.${cfg.nginxVirtualHost} = {
+        root = cfg.clientPackage;
+        locations."/".extraConfig = ''
+          add_header Content-Security-Policy "frame-ancestors 'none';" ;
+          add_header X-Content-Type-Options "nosniff" ;
+          try_files = $uri $uri/ /index.html ;
+        '';
+      };
+    };
+    services.mongodb = mkIf cfg.enableLocalDB {
+      enable = true;
+    };
+  };
+  meta.maintainers = with lib.maintainers; [patrickdag];
+}
diff --git a/nixos/modules/services/web-servers/caddy/default.nix b/nixos/modules/services/web-servers/caddy/default.nix
index 08ce50bff62c..064a0c71b586 100644
--- a/nixos/modules/services/web-servers/caddy/default.nix
+++ b/nixos/modules/services/web-servers/caddy/default.nix
@@ -360,14 +360,15 @@ in
       serviceConfig = let
         runOptions = ''--config ${configPath} ${optionalString (cfg.adapter != null) "--adapter ${cfg.adapter}"}'';
       in {
+        # Override the `ExecStart` line from upstream's systemd unit file by our own:
         # https://www.freedesktop.org/software/systemd/man/systemd.service.html#ExecStart=
         # If the empty string is assigned to this option, the list of commands to start is reset, prior assignments of this option will have no effect.
         ExecStart = [ "" ''${cfg.package}/bin/caddy run ${runOptions} ${optionalString cfg.resume "--resume"}'' ];
         # Validating the configuration before applying it ensures we’ll get a proper error that will be reported when switching to the configuration
-        ExecReload = [ "" ''${cfg.package}/bin/caddy reload ${runOptions} --force'' ];
+        ExecReload = [ "" ] ++ lib.optional cfg.enableReload "${lib.getExe cfg.package} reload ${runOptions} --force";
         User = cfg.user;
         Group = cfg.group;
-        ReadWriteDirectories = cfg.dataDir;
+        ReadWritePaths = [ cfg.dataDir ];
         StateDirectory = mkIf (cfg.dataDir == "/var/lib/caddy") [ "caddy" ];
         LogsDirectory = mkIf (cfg.logDir == "/var/log/caddy") [ "caddy" ];
         Restart = "on-failure";
diff --git a/nixos/modules/services/web-servers/garage.nix b/nixos/modules/services/web-servers/garage.nix
index 39ea8f21b126..d2a5109e266a 100644
--- a/nixos/modules/services/web-servers/garage.nix
+++ b/nixos/modules/services/web-servers/garage.nix
@@ -52,13 +52,6 @@ in
             type = types.path;
             description = "The main data storage, put this on your large storage (e.g. high capacity HDD)";
           };
-
-          replication_mode = mkOption {
-            default = "none";
-            type = types.enum ([ "none" "1" "2" "3" "2-dangerous" "3-dangerous" "3-degraded" 1 2 3 ]);
-            apply = v: toString v;
-            description = "Garage replication mode, defaults to none, see: <https://garagehq.deuxfleurs.fr/documentation/reference-manual/configuration/#replication-mode> for reference.";
-          };
         };
       };
       description = "Garage configuration, see <https://garagehq.deuxfleurs.fr/documentation/reference-manual/configuration/> for reference.";
@@ -71,6 +64,44 @@ in
   };
 
   config = mkIf cfg.enable {
+
+    assertions = [
+      # We removed our module-level default for replication_mode. If a user upgraded
+      # to garage 1.0.0 while relying on the module-level default, they would be left
+      # with a config which evaluates and builds, but then garage refuses to start
+      # because either replication_factor or replication_mode is required.
+      # The replication_factor option also was `toString`'ed before, which is
+      # now not possible anymore, so we prompt the user to change it to a string
+      # if present.
+      # These assertions can be removed in NixOS 24.11, when all users have been
+      # warned once.
+      {
+        assertion = (cfg.settings ? replication_factor || cfg.settings ? replication_mode) || lib.versionOlder cfg.package "1.0.0";
+        message = ''
+          Garage 1.0.0 requires an explicit replication factor to be set.
+          Please set replication_factor to 1 explicitly to preserve the previous behavior.
+          https://git.deuxfleurs.fr/Deuxfleurs/garage/src/tag/v1.0.0/doc/book/reference-manual/configuration.md#replication_factor
+
+        '';
+      }
+      {
+        assertion = lib.isString (cfg.settings.replication_mode or "");
+        message = ''
+          The explicit `replication_mode` option in `services.garage.settings`
+          has been removed and is now handled by the freeform settings in order
+          to allow it being completely absent (for Garage 1.x).
+          That module option previously `toString`'ed the value it's configured
+          with, which is now no longer possible.
+
+          You're still using a non-string here, please manually set it to
+          a string, or migrate to the separate setting keys introduced in 1.x.
+
+          Refer to https://garagehq.deuxfleurs.fr/documentation/working-documents/migration-1/
+          for the migration guide.
+        '';
+      }
+    ];
+
     environment.etc."garage.toml" = {
       source = configFile;
     };
diff --git a/nixos/modules/services/web-servers/nginx/default.nix b/nixos/modules/services/web-servers/nginx/default.nix
index 08fab09e1e55..f9720c362935 100644
--- a/nixos/modules/services/web-servers/nginx/default.nix
+++ b/nixos/modules/services/web-servers/nginx/default.nix
@@ -142,7 +142,11 @@ let
       default_type application/octet-stream;
   '';
 
-  configFile = pkgs.writers.writeNginxConfig "nginx.conf" ''
+  configFile = (
+      if cfg.validateConfigFile
+      then pkgs.writers.writeNginxConfig
+      else pkgs.writeText
+    ) "nginx.conf" ''
     pid /run/nginx/nginx.pid;
     error_log ${cfg.logError};
     daemon off;
@@ -352,7 +356,7 @@ let
 
         # The acme-challenge location doesn't need to be added if we are not using any automated
         # certificate provisioning and can also be omitted when we use a certificate obtained via a DNS-01 challenge
-        acmeName = if vhost.useACMEHost != null then vhost.useACMEHost else vhostName;
+        acmeName = if vhost.useACMEHost != null then vhost.useACMEHost else vhost.serverName;
         acmeLocation = optionalString ((vhost.enableACME || vhost.useACMEHost != null) && config.security.acme.certs.${acmeName}.dnsProvider == null)
           # Rule for legitimate ACME Challenge requests (like /.well-known/acme-challenge/xxxxxxxxx)
           # We use ^~ here, so that we don't check any regexes (which could
@@ -1082,6 +1086,9 @@ in
         '';
         description = "Declarative vhost config";
       };
+      validateConfigFile = lib.mkEnableOption ''
+        Validate configuration with pkgs.writeNginxConfig.
+      '' // { default = true; };
     };
   };
 
diff --git a/nixos/modules/services/web-servers/traefik.nix b/nixos/modules/services/web-servers/traefik.nix
index 9c53455bcf3d..1a65ce21112e 100644
--- a/nixos/modules/services/web-servers/traefik.nix
+++ b/nixos/modules/services/web-servers/traefik.nix
@@ -170,7 +170,7 @@ in {
         PrivateDevices = true;
         ProtectHome = true;
         ProtectSystem = "full";
-        ReadWriteDirectories = cfg.dataDir;
+        ReadWritePaths = [ cfg.dataDir ];
         RuntimeDirectory = "traefik";
       };
     };
diff --git a/nixos/modules/services/x11/desktop-managers/cinnamon.nix b/nixos/modules/services/x11/desktop-managers/cinnamon.nix
index 482527d1e8ad..2e0eef67c0b3 100644
--- a/nixos/modules/services/x11/desktop-managers/cinnamon.nix
+++ b/nixos/modules/services/x11/desktop-managers/cinnamon.nix
@@ -157,6 +157,7 @@ in
 
         # packages
         nemo-with-extensions
+        gnome-online-accounts-gtk
         cinnamon-control-center
         cinnamon-settings-daemon
         libgnomekbd
diff --git a/nixos/modules/services/x11/desktop-managers/gnome.nix b/nixos/modules/services/x11/desktop-managers/gnome.nix
index ce300431d47c..fe50d930b5af 100644
--- a/nixos/modules/services/x11/desktop-managers/gnome.nix
+++ b/nixos/modules/services/x11/desktop-managers/gnome.nix
@@ -343,10 +343,6 @@ in
 
       services.avahi.enable = mkDefault true;
 
-      xdg.portal.extraPortals = [
-        pkgs.gnome.gnome-shell
-      ];
-
       services.geoclue2.enable = mkDefault true;
       services.geoclue2.enableDemoAgent = false; # GNOME has its own geoclue agent
 
diff --git a/nixos/modules/services/x11/desktop-managers/mate.nix b/nixos/modules/services/x11/desktop-managers/mate.nix
index beae07b70dbf..19235be4aa8d 100644
--- a/nixos/modules/services/x11/desktop-managers/mate.nix
+++ b/nixos/modules/services/x11/desktop-managers/mate.nix
@@ -84,6 +84,7 @@ in
       programs.system-config-printer.enable = (mkIf config.services.printing.enable (mkDefault true));
 
       services.gnome.at-spi2-core.enable = true;
+      services.gnome.glib-networking.enable = true;
       services.gnome.gnome-keyring.enable = true;
       services.udev.packages = [ pkgs.mate.mate-settings-daemon ];
       services.gvfs.enable = true;
diff --git a/nixos/modules/services/x11/window-managers/clfswm.nix b/nixos/modules/services/x11/window-managers/clfswm.nix
index 5500c77a038b..09b49962f2ad 100644
--- a/nixos/modules/services/x11/window-managers/clfswm.nix
+++ b/nixos/modules/services/x11/window-managers/clfswm.nix
@@ -10,7 +10,7 @@ in
   options = {
     services.xserver.windowManager.clfswm = {
       enable = mkEnableOption "clfswm";
-      package = mkPackageOption pkgs [ "lispPackages" "clfswm" ] { };
+      package = mkPackageOption pkgs [ "sbclPackages" "clfswm" ] { };
     };
   };
 
diff --git a/nixos/modules/services/x11/window-managers/qtile.nix b/nixos/modules/services/x11/window-managers/qtile.nix
index 78152283a0a5..700ead836600 100644
--- a/nixos/modules/services/x11/window-managers/qtile.nix
+++ b/nixos/modules/services/x11/window-managers/qtile.nix
@@ -4,7 +4,6 @@ with lib;
 
 let
   cfg = config.services.xserver.windowManager.qtile;
-  pyEnv = pkgs.python3.withPackages (p: [ (cfg.package.unwrapped or cfg.package) ] ++ (cfg.extraPackages p));
 in
 
 {
@@ -48,13 +47,24 @@ in
           ];
         '';
       };
+
+    finalPackage = mkOption {
+      type = types.package;
+      visible = false;
+      readOnly = true;
+      description = "The resulting Qtile package, bundled with extra packages";
+    };
   };
 
   config = mkIf cfg.enable {
+    services.xserver.windowManager.qtile.finalPackage = pkgs.python3.withPackages (p:
+      [ (cfg.package.unwrapped or cfg.package) ] ++ (cfg.extraPackages p)
+    );
+
     services.xserver.windowManager.session = [{
       name = "qtile";
       start = ''
-        ${pyEnv}/bin/qtile start -b ${cfg.backend} \
+        ${cfg.finalPackage}/bin/qtile start -b ${cfg.backend} \
         ${optionalString (cfg.configFile != null)
         "--config \"${cfg.configFile}\""} &
         waitPID=$!
diff --git a/nixos/modules/services/x11/xserver.nix b/nixos/modules/services/x11/xserver.nix
index e13c27374670..5a86d055c271 100644
--- a/nixos/modules/services/x11/xserver.nix
+++ b/nixos/modules/services/x11/xserver.nix
@@ -728,9 +728,6 @@ in
             rm -f /tmp/.X0-lock
           '';
 
-        # TODO: move declaring the systemd service to its own mkIf
-        script = mkIf (config.systemd.services.display-manager.enable == true) "${config.services.displayManager.execCmd}";
-
         # Stop restarting if the display manager stops (crashes) 2 times
         # in one minute. Starting X typically takes 3-4s.
         startLimitIntervalSec = 30;
diff --git a/nixos/modules/system/activation/switch-to-configuration.pl b/nixos/modules/system/activation/switch-to-configuration.pl
index ba45231465fb..cabc1dcc2d65 100755
--- a/nixos/modules/system/activation/switch-to-configuration.pl
+++ b/nixos/modules/system/activation/switch-to-configuration.pl
@@ -472,6 +472,9 @@ sub handle_modified_unit { ## no critic(Subroutines::ProhibitManyArgs, Subroutin
             $units_to_reload->{$unit} = 1;
             record_unit($reload_list_file, $unit);
         }
+        elsif ($unit eq "dbus.service" || $unit eq "dbus-broker.service") {
+            # dbus service should only ever be reloaded, not started/stoped/restarted as that would break the system.
+        }
         elsif (!parse_systemd_bool(\%new_unit_info, "Service", "X-RestartIfChanged", 1) || parse_systemd_bool(\%new_unit_info, "Unit", "RefuseManualStop", 0) || parse_systemd_bool(\%new_unit_info, "Unit", "X-OnlyManualStart", 0)) {
             $units_to_skip->{$unit} = 1;
         } else {
diff --git a/nixos/modules/system/activation/switchable-system.nix b/nixos/modules/system/activation/switchable-system.nix
index d5bd8cc1dc11..d70fefd0920b 100644
--- a/nixos/modules/system/activation/switchable-system.nix
+++ b/nixos/modules/system/activation/switchable-system.nix
@@ -4,52 +4,93 @@ let
 
   perlWrapped = pkgs.perl.withPackages (p: with p; [ ConfigIniFiles FileSlurp ]);
 
+  description = extra: ''
+    Whether to include the capability to switch configurations.
+
+    Disabling this makes the system unable to be reconfigured via `nixos-rebuild`.
+
+    ${extra}
+  '';
+
 in
 
 {
 
-  options = {
-    system.switch.enable = lib.mkOption {
+  options.system.switch = {
+    enable = lib.mkOption {
       type = lib.types.bool;
       default = true;
-      description = ''
-        Whether to include the capability to switch configurations.
-
-        Disabling this makes the system unable to be reconfigured via `nixos-rebuild`.
-
+      description = description ''
         This is good for image based appliances where updates are handled
         outside the image. Reducing features makes the image lighter and
         slightly more secure.
       '';
     };
-  };
 
-  config = lib.mkIf config.system.switch.enable {
-    system.activatableSystemBuilderCommands = ''
-      mkdir $out/bin
-      substitute ${./switch-to-configuration.pl} $out/bin/switch-to-configuration \
-        --subst-var out \
-        --subst-var-by toplevel ''${!toplevelVar} \
-        --subst-var-by coreutils "${pkgs.coreutils}" \
-        --subst-var-by distroId ${lib.escapeShellArg config.system.nixos.distroId} \
-        --subst-var-by installBootLoader ${lib.escapeShellArg config.system.build.installBootLoader} \
-        --subst-var-by localeArchive "${config.i18n.glibcLocales}/lib/locale/locale-archive" \
-        --subst-var-by perl "${perlWrapped}" \
-        --subst-var-by shell "${pkgs.bash}/bin/sh" \
-        --subst-var-by su "${pkgs.shadow.su}/bin/su" \
-        --subst-var-by systemd "${config.systemd.package}" \
-        --subst-var-by utillinux "${pkgs.util-linux}" \
-        ;
-
-      chmod +x $out/bin/switch-to-configuration
-      ${lib.optionalString (pkgs.stdenv.hostPlatform == pkgs.stdenv.buildPlatform) ''
-        if ! output=$(${perlWrapped}/bin/perl -c $out/bin/switch-to-configuration 2>&1); then
-          echo "switch-to-configuration syntax is not valid:"
-          echo "$output"
-          exit 1
-        fi
-      ''}
-    '';
+    enableNg = lib.mkOption {
+      type = lib.types.bool;
+      default = false;
+      description = description ''
+        Whether to use `switch-to-configuration-ng`, an experimental
+        re-implementation of `switch-to-configuration` with the goal of
+        replacing the original.
+      '';
+    };
   };
 
+  config = lib.mkMerge [
+    {
+      assertions = [{
+        assertion = with config.system.switch; enable -> !enableNg;
+        message = "Only one of system.switch.enable and system.switch.enableNg may be enabled at a time";
+      }];
+    }
+    (lib.mkIf config.system.switch.enable {
+      system.activatableSystemBuilderCommands = ''
+        mkdir $out/bin
+        substitute ${./switch-to-configuration.pl} $out/bin/switch-to-configuration \
+          --subst-var out \
+          --subst-var-by toplevel ''${!toplevelVar} \
+          --subst-var-by coreutils "${pkgs.coreutils}" \
+          --subst-var-by distroId ${lib.escapeShellArg config.system.nixos.distroId} \
+          --subst-var-by installBootLoader ${lib.escapeShellArg config.system.build.installBootLoader} \
+          --subst-var-by localeArchive "${config.i18n.glibcLocales}/lib/locale/locale-archive" \
+          --subst-var-by perl "${perlWrapped}" \
+          --subst-var-by shell "${pkgs.bash}/bin/sh" \
+          --subst-var-by su "${pkgs.shadow.su}/bin/su" \
+          --subst-var-by systemd "${config.systemd.package}" \
+          --subst-var-by utillinux "${pkgs.util-linux}" \
+          ;
+
+        chmod +x $out/bin/switch-to-configuration
+        ${lib.optionalString (pkgs.stdenv.hostPlatform == pkgs.stdenv.buildPlatform) ''
+          if ! output=$(${perlWrapped}/bin/perl -c $out/bin/switch-to-configuration 2>&1); then
+            echo "switch-to-configuration syntax is not valid:"
+            echo "$output"
+            exit 1
+          fi
+        ''}
+      '';
+    })
+    (lib.mkIf config.system.switch.enableNg {
+      # Use a subshell so we can source makeWrapper's setup hook without
+      # affecting the rest of activatableSystemBuilderCommands.
+      system.activatableSystemBuilderCommands = ''
+        (
+          source ${pkgs.buildPackages.makeWrapper}/nix-support/setup-hook
+
+          mkdir $out/bin
+          ln -sf ${lib.getExe pkgs.switch-to-configuration-ng} $out/bin/switch-to-configuration
+          wrapProgram $out/bin/switch-to-configuration \
+            --set OUT $out \
+            --set TOPLEVEL ''${!toplevelVar} \
+            --set DISTRO_ID ${lib.escapeShellArg config.system.nixos.distroId} \
+            --set INSTALL_BOOTLOADER ${lib.escapeShellArg config.system.build.installBootLoader} \
+            --set LOCALE_ARCHIVE ${config.i18n.glibcLocales}/lib/locale/locale-archive \
+            --set SYSTEMD ${config.systemd.package}
+        )
+      '';
+    })
+  ];
+
 }
diff --git a/nixos/modules/system/activation/test.nix b/nixos/modules/system/activation/test.nix
index 8cf000451c6e..fd251d528957 100644
--- a/nixos/modules/system/activation/test.nix
+++ b/nixos/modules/system/activation/test.nix
@@ -5,7 +5,7 @@
 }:
 let
   node-forbiddenDependencies-fail = nixos ({ ... }: {
-    system.forbiddenDependenciesRegex = "-dev$";
+    system.forbiddenDependenciesRegexes = ["-dev$"];
     environment.etc."dev-dependency" = {
       text = "${expect.dev}";
     };
@@ -14,7 +14,7 @@ let
     boot.loader.grub.enable = false;
   });
   node-forbiddenDependencies-succeed = nixos ({ ... }: {
-    system.forbiddenDependenciesRegex = "-dev$";
+    system.forbiddenDependenciesRegexes = ["-dev$"];
     system.extraDependencies = [ expect.dev ];
     documentation.enable = false;
     fileSystems."/".device = "ignore-root-device";
diff --git a/nixos/modules/system/activation/top-level.nix b/nixos/modules/system/activation/top-level.nix
index 4cf3012646fa..ed0ece19f2fa 100644
--- a/nixos/modules/system/activation/top-level.nix
+++ b/nixos/modules/system/activation/top-level.nix
@@ -86,6 +86,7 @@ in
     ../build.nix
     (mkRemovedOptionModule [ "nesting" "clone" ] "Use `specialisation.«name» = { inheritParentConfig = true; configuration = { ... }; }` instead.")
     (mkRemovedOptionModule [ "nesting" "children" ] "Use `specialisation.«name».configuration = { ... }` instead.")
+    (mkRenamedOptionModule [ "system" "forbiddenDependenciesRegex" ] [ "system" "forbiddenDependenciesRegexes" ])
   ];
 
   options = {
@@ -160,12 +161,12 @@ in
       '';
     };
 
-    system.forbiddenDependenciesRegex = mkOption {
-      default = "";
-      example = "-dev$";
-      type = types.str;
+    system.forbiddenDependenciesRegexes = mkOption {
+      default = [];
+      example = ["-dev$"];
+      type = types.listOf types.str;
       description = ''
-        A POSIX Extended Regular Expression that matches store paths that
+        POSIX Extended Regular Expressions that match store paths that
         should not appear in the system closure, with the exception of {option}`system.extraDependencies`, which is not checked.
       '';
     };
@@ -289,15 +290,14 @@ in
             "$out/configuration.nix"
         '' +
       optionalString
-        (config.system.forbiddenDependenciesRegex != "")
-        ''
-          if [[ $forbiddenDependenciesRegex != "" && -n $closureInfo ]]; then
-            if forbiddenPaths="$(grep -E -- "$forbiddenDependenciesRegex" $closureInfo/store-paths)"; then
+        (config.system.forbiddenDependenciesRegexes != []) (lib.concatStringsSep "\n" (map (regex: ''
+          if [[ ${regex} != "" && -n $closureInfo ]]; then
+            if forbiddenPaths="$(grep -E -- "${regex}" $closureInfo/store-paths)"; then
               echo -e "System closure $out contains the following disallowed paths:\n$forbiddenPaths"
               exit 1
             fi
           fi
-        '';
+        '') config.system.forbiddenDependenciesRegexes));
 
     system.systemBuilderArgs = {
 
@@ -319,8 +319,7 @@ in
       # option, as opposed to `system.extraDependencies`.
       passedChecks = concatStringsSep " " config.system.checks;
     }
-    // lib.optionalAttrs (config.system.forbiddenDependenciesRegex != "") {
-      inherit (config.system) forbiddenDependenciesRegex;
+    // lib.optionalAttrs (config.system.forbiddenDependenciesRegexes != []) {
       closureInfo = pkgs.closureInfo { rootPaths = [
         # override to avoid  infinite recursion (and to allow using extraDependencies to add forbidden dependencies)
         (config.system.build.toplevel.overrideAttrs (_: { extraDependencies = []; closureInfo = null; }))
diff --git a/nixos/modules/system/boot/binfmt.nix b/nixos/modules/system/boot/binfmt.nix
index 3605ce56910e..1d702442f7f6 100644
--- a/nixos/modules/system/boot/binfmt.nix
+++ b/nixos/modules/system/boot/binfmt.nix
@@ -280,7 +280,7 @@ in {
   };
 
   config = {
-    boot.binfmt.registrations = builtins.listToAttrs (map (system: {
+    boot.binfmt.registrations = builtins.listToAttrs (map (system: assert system != pkgs.stdenv.hostPlatform.system; {
       name = system;
       value = { config, ... }: let
         interpreter = getEmulator system;
diff --git a/nixos/modules/system/boot/networkd.nix b/nixos/modules/system/boot/networkd.nix
index bb899c8d8999..7f53efbf83f5 100644
--- a/nixos/modules/system/boot/networkd.nix
+++ b/nixos/modules/system/boot/networkd.nix
@@ -17,11 +17,13 @@ let
           "ManageForeignRoutingPolicyRules"
           "ManageForeignRoutes"
           "RouteTable"
+          "IPv6PrivacyExtensions"
         ])
         (assertValueOneOf "SpeedMeter" boolValues)
         (assertInt "SpeedMeterIntervalSec")
         (assertValueOneOf "ManageForeignRoutingPolicyRules" boolValues)
         (assertValueOneOf "ManageForeignRoutes" boolValues)
+        (assertValueOneOf "IPv6PrivacyExtensions" (boolValues ++ ["prefer-public" "kernel"]))
       ];
 
       sectionDHCPv4 = checkUnitConfig "DHCPv4" [
diff --git a/nixos/modules/tasks/filesystems/zfs.nix b/nixos/modules/tasks/filesystems/zfs.nix
index 2c749d45d7a1..b75817a011cb 100644
--- a/nixos/modules/tasks/filesystems/zfs.nix
+++ b/nixos/modules/tasks/filesystems/zfs.nix
@@ -441,21 +441,45 @@ in
           {manpage}`systemd.time(7)`.
         '';
       };
+
+      randomizedDelaySec = mkOption {
+        default = "6h";
+        type = types.str;
+        example = "12h";
+        description = ''
+          Add a randomized delay before each ZFS trim.
+          The delay will be chosen between zero and this value.
+          This value must be a time span in the format specified by
+          {manpage}`systemd.time(7)`
+        '';
+      };
     };
 
     services.zfs.autoScrub = {
       enable = mkEnableOption "periodic scrubbing of ZFS pools";
 
       interval = mkOption {
-        default = "Sun, 02:00";
+        default = "monthly";
         type = types.str;
-        example = "daily";
+        example = "quarterly";
         description = ''
           Systemd calendar expression when to scrub ZFS pools. See
           {manpage}`systemd.time(7)`.
         '';
       };
 
+      randomizedDelaySec = mkOption {
+        default = "6h";
+        type = types.str;
+        example = "12h";
+        description = ''
+          Add a randomized delay before each ZFS autoscrub.
+          The delay will be chosen between zero and this value.
+          This value must be a time span in the format specified by
+          {manpage}`systemd.time(7)`
+        '';
+      };
+
       pools = mkOption {
         default = [];
         type = types.listOf types.str;
@@ -862,6 +886,7 @@ in
         timerConfig = {
           OnCalendar = cfgScrub.interval;
           Persistent = "yes";
+          RandomizedDelaySec = cfgScrub.randomizedDelaySec;
         };
       };
     })
@@ -879,7 +904,10 @@ in
         serviceConfig.ExecStart = "${pkgs.runtimeShell} -c 'for pool in $(zpool list -H -o name); do zpool trim $pool;  done || true' ";
       };
 
-      systemd.timers.zpool-trim.timerConfig.Persistent = "yes";
+      systemd.timers.zpool-trim.timerConfig = {
+        Persistent = "yes";
+        RandomizedDelaySec = cfgTrim.randomizedDelaySec;
+      };
     })
   ];
 }
diff --git a/nixos/modules/testing/test-instrumentation.nix b/nixos/modules/testing/test-instrumentation.nix
index 28abbe66adaf..2b365bc55585 100644
--- a/nixos/modules/testing/test-instrumentation.nix
+++ b/nixos/modules/testing/test-instrumentation.nix
@@ -218,6 +218,8 @@ in
 
     services.displayManager.logToJournal = true;
 
+    services.logrotate.enable = mkOverride 150 false;
+
     # Make sure we use the Guest Agent from the QEMU package for testing
     # to reduce the closure size required for the tests.
     services.qemuGuest.package = pkgs.qemu_test.ga;
diff --git a/nixos/modules/virtualisation/containers.nix b/nixos/modules/virtualisation/containers.nix
index 65620dd3935b..c3639f660dfe 100644
--- a/nixos/modules/virtualisation/containers.nix
+++ b/nixos/modules/virtualisation/containers.nix
@@ -53,13 +53,6 @@ in
 
     storage.settings = mkOption {
       type = toml.type;
-      default = {
-        storage = {
-          driver = "overlay";
-          graphroot = "/var/lib/containers/storage";
-          runroot = "/run/containers/storage";
-        };
-      };
       description = "storage.conf configuration";
     };
 
@@ -124,6 +117,12 @@ in
       };
     };
 
+    virtualisation.containers.storage.settings.storage = {
+      driver = lib.mkDefault "overlay";
+      graphroot = lib.mkDefault "/var/lib/containers/storage";
+      runroot = lib.mkDefault "/run/containers/storage";
+    };
+
     environment.etc = {
       "containers/containers.conf".source =
         toml.generate "containers.conf" cfg.containersConf.settings;
diff --git a/nixos/modules/virtualisation/incus.nix b/nixos/modules/virtualisation/incus.nix
index 4d04853d20a5..87568390bd3b 100644
--- a/nixos/modules/virtualisation/incus.nix
+++ b/nixos/modules/virtualisation/incus.nix
@@ -105,6 +105,37 @@ let
       path = "${pkgs.OVMFFull.fd}/FV/${ovmf-prefix}_VARS.fd";
     }
   ];
+
+  environment = lib.mkMerge [
+    {
+      INCUS_LXC_TEMPLATE_CONFIG = "${pkgs.lxcfs}/share/lxc/config";
+      INCUS_OVMF_PATH = ovmf;
+      INCUS_USBIDS_PATH = "${pkgs.hwdata}/share/hwdata/usb.ids";
+      PATH = lib.mkForce serverBinPath;
+    }
+    (lib.mkIf (cfg.ui.enable) { "INCUS_UI" = cfg.ui.package; })
+  ];
+
+  incus-startup = pkgs.writeShellScript "incus-startup" ''
+    case "$1" in
+        start)
+          systemctl is-active incus.service -q && exit 0
+          exec incusd activateifneeded
+        ;;
+
+        stop)
+          systemctl is-active incus.service -q || exit 0
+          exec incusd shutdown
+        ;;
+
+        *)
+          echo "unknown argument \`$1'" >&2
+          exit 1
+        ;;
+    esac
+
+    exit 0
+  '';
 in
 {
   meta = {
@@ -137,6 +168,14 @@ in
         description = "The incus client package to use. This package is added to PATH.";
       };
 
+      softDaemonRestart = lib.mkOption {
+        type = lib.types.bool;
+        default = true;
+        description = ''
+          Allow for incus.service to be stopped without affecting running instances.
+        '';
+      };
+
       preseed = lib.mkOption {
         type = lib.types.nullOr (lib.types.submodule { freeformType = preseedFormat.type; });
 
@@ -282,6 +321,8 @@ in
     systemd.services.incus = {
       description = "Incus Container and Virtual Machine Management Daemon";
 
+      inherit environment;
+
       wantedBy = lib.mkIf (!cfg.socketActivation) [ "multi-user.target" ];
       after = [
         "network-online.target"
@@ -296,20 +337,10 @@ in
 
       wants = [ "network-online.target" ];
 
-      environment = lib.mkMerge [
-        {
-          INCUS_LXC_TEMPLATE_CONFIG = "${pkgs.lxcfs}/share/lxc/config";
-          INCUS_OVMF_PATH = ovmf;
-          INCUS_USBIDS_PATH = "${pkgs.hwdata}/share/hwdata/usb.ids";
-          PATH = lib.mkForce serverBinPath;
-        }
-        (lib.mkIf (cfg.ui.enable) { "INCUS_UI" = cfg.ui.package; })
-      ];
-
       serviceConfig = {
         ExecStart = "${cfg.package}/bin/incusd --group incus-admin";
         ExecStartPost = "${cfg.package}/bin/incusd waitready --timeout=${cfg.startTimeout}";
-        ExecStop = "${cfg.package}/bin/incus admin shutdown";
+        ExecStop = lib.optionalString (!cfg.softDaemonRestart) "${cfg.package}/bin/incus admin shutdown";
 
         KillMode = "process"; # when stopping, leave the containers alone
         Delegate = "yes";
@@ -324,6 +355,27 @@ in
       };
     };
 
+    systemd.services.incus-startup = lib.mkIf cfg.softDaemonRestart {
+      description = "Incus Instances Startup/Shutdown";
+
+      inherit environment;
+
+      after = [
+        "incus.service"
+        "incus.socket"
+      ];
+      requires = [ "incus.socket" ];
+
+      serviceConfig = {
+        ExecStart = "${incus-startup} start";
+        ExecStop = "${incus-startup} stop";
+        RemainAfterExit = true;
+        TimeoutStartSec = "600s";
+        TimeoutStopSec = "600s";
+        Type = "oneshot";
+      };
+    };
+
     systemd.sockets.incus = {
       description = "Incus UNIX socket";
       wantedBy = [ "sockets.target" ];
diff --git a/nixos/modules/virtualisation/lxc-image-metadata.nix b/nixos/modules/virtualisation/lxc-image-metadata.nix
index 2c0568b4c468..38d955798f3e 100644
--- a/nixos/modules/virtualisation/lxc-image-metadata.nix
+++ b/nixos/modules/virtualisation/lxc-image-metadata.nix
@@ -87,10 +87,10 @@ in {
       contents = [
         {
           source = toYAML "metadata.yaml" {
-            architecture = builtins.elemAt (builtins.match "^([a-z0-9_]+).+" (toString pkgs.system)) 0;
+            architecture = builtins.elemAt (builtins.match "^([a-z0-9_]+).+" (toString pkgs.stdenv.hostPlatform.system)) 0;
             creation_date = 1;
             properties = {
-              description = "${config.system.nixos.distroName} ${config.system.nixos.codeName} ${config.system.nixos.label} ${pkgs.system}";
+              description = "${config.system.nixos.distroName} ${config.system.nixos.codeName} ${config.system.nixos.label} ${pkgs.stdenv.hostPlatform.system}";
               os = "${config.system.nixos.distroId}";
               release = "${config.system.nixos.codeName}";
             };
diff --git a/nixos/modules/virtualisation/qemu-vm.nix b/nixos/modules/virtualisation/qemu-vm.nix
index c30f4577fdd8..3b81cfaf2b8c 100644
--- a/nixos/modules/virtualisation/qemu-vm.nix
+++ b/nixos/modules/virtualisation/qemu-vm.nix
@@ -912,7 +912,7 @@ in
           "ppc64-linux" = "tpm-spapr";
           "armv7-linux" = "tpm-tis-device";
           "aarch64-linux" = "tpm-tis-device";
-        }.${pkgs.hostPlatform.system} or (throw "Unsupported system for TPM2 emulation in QEMU"));
+        }.${pkgs.stdenv.hostPlatform.system} or (throw "Unsupported system for TPM2 emulation in QEMU"));
         defaultText = ''
           Based on the guest platform Linux system:
 
diff --git a/nixos/release-combined.nix b/nixos/release-combined.nix
index d1773da9afa6..19223d46f6b9 100644
--- a/nixos/release-combined.nix
+++ b/nixos/release-combined.nix
@@ -43,7 +43,7 @@ in rec {
       name = "nixos-${nixos.channel.version}";
       meta = {
         description = "Release-critical builds for the NixOS channel";
-        maintainers = with pkgs.lib.maintainers; [ eelco ];
+        maintainers = with pkgs.lib.maintainers; [ ];
       };
       constituents = pkgs.lib.concatLists [
         [ "nixos.channel" ]
@@ -112,7 +112,7 @@ in rec {
         (onFullSupported "nixos.tests.latestKernel.login")
         (onFullSupported "nixos.tests.lightdm")
         (onFullSupported "nixos.tests.login")
-        (onFullSupported "nixos.tests.misc")
+        (onFullSupported "nixos.tests.misc.default")
         (onFullSupported "nixos.tests.mutableUsers")
         (onFullSupported "nixos.tests.nat.firewall")
         (onFullSupported "nixos.tests.nat.standalone")
diff --git a/nixos/release-small.nix b/nixos/release-small.nix
index 091c2b1f305b..b87a58f5eee8 100644
--- a/nixos/release-small.nix
+++ b/nixos/release-small.nix
@@ -98,7 +98,7 @@ in rec {
     name = "nixos-${nixos.channel.version}";
     meta = {
       description = "Release-critical builds for the NixOS channel";
-      maintainers = [ lib.maintainers.eelco ];
+      maintainers = [ ];
     };
     constituents = lib.flatten [
       [
@@ -124,7 +124,7 @@ in rec {
         "nixos.tests.firewall"
         "nixos.tests.ipv6"
         "nixos.tests.login"
-        "nixos.tests.misc"
+        "nixos.tests.misc.default"
         "nixos.tests.nat.firewall"
         "nixos.tests.nat.standalone"
         "nixos.tests.nfs4.simple"
diff --git a/nixos/tests/acme.nix b/nixos/tests/acme.nix
index d63a77fcdd23..511d3c589fae 100644
--- a/nixos/tests/acme.nix
+++ b/nixos/tests/acme.nix
@@ -99,7 +99,14 @@
               serverAliases = [ "${server}-wildcard-alias.example.test" ];
               useACMEHost = "example.test";
             };
-          };
+          } // (lib.optionalAttrs (server == "nginx") {
+            # The nginx module supports using a different key than the hostname
+            different-key = vhostBaseData // {
+              serverName = "${server}-different-key.example.test";
+              serverAliases = [ "${server}-different-key-alias.example.test" ];
+              enableACME = true;
+            };
+          });
         };
 
         # Used to determine if service reload was triggered
@@ -653,20 +660,20 @@ in {
           webserver.succeed("systemctl restart caddy.service")
           check_connection_key_bits(client, "a.example.test", "384")
 
-      domains = ["http", "dns", "wildcard"]
-      for server, logsrc in [
-          ("nginx", "journalctl -n 30 -u nginx.service"),
-          ("httpd", "tail -n 30 /var/log/httpd/*.log"),
+      common_domains = ["http", "dns", "wildcard"]
+      for server, logsrc, domains in [
+          ("nginx", "journalctl -n 30 -u nginx.service", common_domains + ["different-key"]),
+          ("httpd", "tail -n 30 /var/log/httpd/*.log", common_domains),
       ]:
           wait_for_server = lambda: webserver.wait_for_unit(f"{server}.service")
           with subtest(f"Works with {server}"):
               try:
                   switch_to(webserver, server)
-                  # Skip wildcard domain for this check ([:-1])
-                  for domain in domains[:-1]:
-                      webserver.wait_for_unit(
-                          f"acme-finished-{server}-{domain}.example.test.target"
-                      )
+                  for domain in domains:
+                      if domain != "wildcard":
+                          webserver.wait_for_unit(
+                              f"acme-finished-{server}-{domain}.example.test.target"
+                          )
               except Exception as err:
                   _, output = webserver.execute(
                       f"{logsrc} && ls -al /var/lib/acme/acme-challenge"
@@ -676,8 +683,9 @@ in {
 
               wait_for_server()
 
-              for domain in domains[:-1]:
-                  check_issuer(webserver, f"{server}-{domain}.example.test", "pebble")
+              for domain in domains:
+                  if domain != "wildcard":
+                      check_issuer(webserver, f"{server}-{domain}.example.test", "pebble")
               for domain in domains:
                   check_connection(client, f"{server}-{domain}.example.test")
                   check_connection(client, f"{server}-{domain}-alias.example.test")
diff --git a/nixos/tests/all-tests.nix b/nixos/tests/all-tests.nix
index d4da32c44990..c6ec2474e605 100644
--- a/nixos/tests/all-tests.nix
+++ b/nixos/tests/all-tests.nix
@@ -243,6 +243,7 @@ in {
   deepin = handleTest ./deepin.nix {};
   deluge = handleTest ./deluge.nix {};
   dendrite = handleTest ./matrix/dendrite.nix {};
+  devpi-server = handleTest ./devpi-server.nix {};
   dex-oidc = handleTest ./dex-oidc.nix {};
   dhparams = handleTest ./dhparams.nix {};
   disable-installer-tools = handleTest ./disable-installer-tools.nix {};
@@ -424,7 +425,8 @@ in {
   icingaweb2 = handleTest ./icingaweb2.nix {};
   iftop = handleTest ./iftop.nix {};
   incron = handleTest ./incron.nix {};
-  incus = pkgs.recurseIntoAttrs (handleTest ./incus { inherit handleTestOn; });
+  incus = pkgs.recurseIntoAttrs (handleTest ./incus { inherit handleTestOn; inherit (pkgs) incus; });
+  incus-lts = pkgs.recurseIntoAttrs (handleTest ./incus { inherit handleTestOn; });
   influxdb = handleTest ./influxdb.nix {};
   influxdb2 = handleTest ./influxdb2.nix {};
   initrd-network-openvpn = handleTestOn [ "x86_64-linux" "i686-linux" ] ./initrd-network-openvpn {};
@@ -756,6 +758,7 @@ in {
   pretix = runTest ./web-apps/pretix.nix;
   printing-socket = handleTest ./printing.nix { socket = true; };
   printing-service = handleTest ./printing.nix { socket = false; };
+  private-gpt = handleTest ./private-gpt.nix {};
   privoxy = handleTest ./privoxy.nix {};
   prometheus = handleTest ./prometheus.nix {};
   prometheus-exporters = handleTest ./prometheus-exporters.nix {};
@@ -870,7 +873,8 @@ in {
   swap-random-encryption = handleTest ./swap-random-encryption.nix {};
   sway = handleTest ./sway.nix {};
   swayfx = handleTest ./swayfx.nix {};
-  switchTest = handleTest ./switch-test.nix {};
+  switchTest = handleTest ./switch-test.nix { ng = false; };
+  switchTestNg = handleTest ./switch-test.nix { ng = true; };
   sympa = handleTest ./sympa.nix {};
   syncthing = handleTest ./syncthing.nix {};
   syncthing-no-settings = handleTest ./syncthing-no-settings.nix {};
@@ -883,7 +887,7 @@ in {
   systemd-binfmt = handleTestOn ["x86_64-linux"] ./systemd-binfmt.nix {};
   systemd-boot = handleTest ./systemd-boot.nix {};
   systemd-bpf = handleTest ./systemd-bpf.nix {};
-  systemd-confinement = handleTest ./systemd-confinement.nix {};
+  systemd-confinement = handleTest ./systemd-confinement {};
   systemd-coredump = handleTest ./systemd-coredump.nix {};
   systemd-cryptenroll = handleTest ./systemd-cryptenroll.nix {};
   systemd-credentials-tpm2 = handleTest ./systemd-credentials-tpm2.nix {};
@@ -994,6 +998,7 @@ in {
   v2ray = handleTest ./v2ray.nix {};
   varnish60 = handleTest ./varnish.nix { package = pkgs.varnish60; };
   varnish74 = handleTest ./varnish.nix { package = pkgs.varnish74; };
+  varnish75 = handleTest ./varnish.nix { package = pkgs.varnish75; };
   vault = handleTest ./vault.nix {};
   vault-agent = handleTest ./vault-agent.nix {};
   vault-dev = handleTest ./vault-dev.nix {};
@@ -1035,7 +1040,9 @@ in {
   xterm = handleTest ./xterm.nix {};
   xxh = handleTest ./xxh.nix {};
   yabar = handleTest ./yabar.nix {};
+  ydotool = handleTest ./ydotool.nix {};
   yggdrasil = handleTest ./yggdrasil.nix {};
+  your_spotify = handleTest ./your_spotify.nix {};
   zammad = handleTest ./zammad.nix {};
   zeronet-conservancy = handleTest ./zeronet-conservancy.nix {};
   zfs = handleTest ./zfs.nix {};
diff --git a/nixos/tests/archi.nix b/nixos/tests/archi.nix
index 59f2e940c005..a8cb1c503d4f 100644
--- a/nixos/tests/archi.nix
+++ b/nixos/tests/archi.nix
@@ -24,7 +24,9 @@ import ./make-test-python.nix ({ lib, ... }: {
          machine.wait_for_window("Archi")
 
          # wait till main UI is open
-         machine.wait_for_text("Welcome to Archi")
+         # since OCR seems to be buggy wait_for_text was replaced by sleep, issue: #302965
+         # machine.wait_for_text("Welcome to Archi")
+         machine.sleep(20)
 
          machine.screenshot("welcome-screen")
   '';
diff --git a/nixos/tests/avahi.nix b/nixos/tests/avahi.nix
index d8f4d13340fb..4ae2f919f2f7 100644
--- a/nixos/tests/avahi.nix
+++ b/nixos/tests/avahi.nix
@@ -9,7 +9,7 @@
 import ./make-test-python.nix {
   name = "avahi";
   meta = with pkgs.lib.maintainers; {
-    maintainers = [ eelco ];
+    maintainers = [ ];
   };
 
   nodes = let
diff --git a/nixos/tests/bittorrent.nix b/nixos/tests/bittorrent.nix
index 473b05d4c98e..b5f5982743a1 100644
--- a/nixos/tests/bittorrent.nix
+++ b/nixos/tests/bittorrent.nix
@@ -36,7 +36,7 @@ in
 {
   name = "bittorrent";
   meta = with pkgs.lib.maintainers; {
-    maintainers = [ domenkozar eelco rob bobvanderlinden ];
+    maintainers = [ domenkozar rob bobvanderlinden ];
   };
 
   nodes = {
diff --git a/nixos/tests/containers-bridge.nix b/nixos/tests/containers-bridge.nix
index d2e16299edaa..3001db33ba5a 100644
--- a/nixos/tests/containers-bridge.nix
+++ b/nixos/tests/containers-bridge.nix
@@ -8,7 +8,7 @@ in
 import ./make-test-python.nix ({ pkgs, lib, ... }: {
   name = "containers-bridge";
   meta = {
-    maintainers = with lib.maintainers; [ aristid aszlig eelco kampfschlaefer ];
+    maintainers = with lib.maintainers; [ aristid aszlig kampfschlaefer ];
   };
 
   nodes.machine =
diff --git a/nixos/tests/containers-imperative.nix b/nixos/tests/containers-imperative.nix
index fff00e4f73a8..ea1046b40354 100644
--- a/nixos/tests/containers-imperative.nix
+++ b/nixos/tests/containers-imperative.nix
@@ -1,7 +1,7 @@
 import ./make-test-python.nix ({ pkgs, lib, ... }: {
   name = "containers-imperative";
   meta = {
-    maintainers = with lib.maintainers; [ aristid aszlig eelco kampfschlaefer ];
+    maintainers = with lib.maintainers; [ aristid aszlig kampfschlaefer ];
   };
 
   nodes.machine =
diff --git a/nixos/tests/containers-ip.nix b/nixos/tests/containers-ip.nix
index ecff99a3f0c2..034e5d660415 100644
--- a/nixos/tests/containers-ip.nix
+++ b/nixos/tests/containers-ip.nix
@@ -14,7 +14,7 @@ let
 in import ./make-test-python.nix ({ pkgs, lib, ... }: {
   name = "containers-ipv4-ipv6";
   meta = {
-    maintainers = with lib.maintainers; [ aristid aszlig eelco kampfschlaefer ];
+    maintainers = with lib.maintainers; [ aristid aszlig kampfschlaefer ];
   };
 
   nodes.machine =
diff --git a/nixos/tests/containers-portforward.nix b/nixos/tests/containers-portforward.nix
index b8c7aabc5a50..1a9880fe9313 100644
--- a/nixos/tests/containers-portforward.nix
+++ b/nixos/tests/containers-portforward.nix
@@ -8,7 +8,7 @@ in
 import ./make-test-python.nix ({ pkgs, lib, ... }: {
   name = "containers-portforward";
   meta = {
-    maintainers = with lib.maintainers; [ aristid aszlig eelco kampfschlaefer ianwookim ];
+    maintainers = with lib.maintainers; [ aristid aszlig kampfschlaefer ianwookim ];
   };
 
   nodes.machine =
diff --git a/nixos/tests/devpi-server.nix b/nixos/tests/devpi-server.nix
new file mode 100644
index 000000000000..2a16d49724db
--- /dev/null
+++ b/nixos/tests/devpi-server.nix
@@ -0,0 +1,35 @@
+import ./make-test-python.nix ({pkgs, ...}: let
+  server-port = 3141;
+in {
+  name = "devpi-server";
+  meta = with pkgs.lib.maintainers; {
+    maintainers = [cafkafk];
+  };
+
+  nodes = {
+    devpi = {...}: {
+      services.devpi-server = {
+        enable = true;
+        host = "0.0.0.0";
+        port = server-port;
+        openFirewall = true;
+        secretFile = pkgs.writeText "devpi-secret" "v263P+V3YGDYUyfYL/RBURw+tCPMDw94R/iCuBNJrDhaYrZYjpA6XPFVDDH8ViN20j77y2PHoMM/U0opNkVQ2g==";
+      };
+    };
+
+    client1 = {...}: {
+      environment.systemPackages = with pkgs; [
+        devpi-client
+        jq
+      ];
+    };
+  };
+
+  testScript = ''
+    start_all()
+    devpi.wait_for_unit("devpi-server.service")
+    devpi.wait_for_open_port(${builtins.toString server-port})
+
+    client1.succeed("devpi getjson http://devpi:${builtins.toString server-port}")
+  '';
+})
diff --git a/nixos/tests/elk.nix b/nixos/tests/elk.nix
index b5a8cb532ae0..87c82877fe10 100644
--- a/nixos/tests/elk.nix
+++ b/nixos/tests/elk.nix
@@ -16,7 +16,7 @@ let
     import ./make-test-python.nix ({
     inherit name;
     meta = with pkgs.lib.maintainers; {
-      maintainers = [ eelco offline basvandijk ];
+      maintainers = [ offline basvandijk ];
     };
     nodes = {
       one =
diff --git a/nixos/tests/fcitx5/default.nix b/nixos/tests/fcitx5/default.nix
index c113f2e2c052..feea621f6b5b 100644
--- a/nixos/tests/fcitx5/default.nix
+++ b/nixos/tests/fcitx5/default.nix
@@ -89,10 +89,13 @@ rec {
             machine.succeed("xauth merge ${xauth}")
             machine.sleep(5)
 
+            machine.wait_until_succeeds("pgrep fcitx5")
             machine.succeed("su - ${user.name} -c 'kill $(pgrep fcitx5)'")
             machine.sleep(1)
 
             machine.succeed("su - ${user.name} -c 'alacritty >&2 &'")
+            machine.wait_for_window("alice@machine")
+
             machine.succeed("su - ${user.name} -c 'fcitx5 >&2 &'")
             machine.sleep(10)
 
diff --git a/nixos/tests/firefox.nix b/nixos/tests/firefox.nix
index fbea95dc7523..6418e029f80d 100644
--- a/nixos/tests/firefox.nix
+++ b/nixos/tests/firefox.nix
@@ -1,9 +1,9 @@
-import ./make-test-python.nix ({ pkgs, firefoxPackage, ... }:
+import ./make-test-python.nix ({ lib, pkgs, firefoxPackage, ... }:
 {
   name = firefoxPackage.pname;
 
   meta = with pkgs.lib.maintainers; {
-    maintainers = [ eelco shlevy ];
+    maintainers = [ shlevy ];
   };
 
   nodes.machine =
@@ -55,7 +55,7 @@ import ./make-test-python.nix ({ pkgs, firefoxPackage, ... }:
     };
 
   testScript = let
-    exe = firefoxPackage.unwrapped.binaryName;
+    exe = lib.getExe firefoxPackage;
   in ''
       from contextlib import contextmanager
 
diff --git a/nixos/tests/firewall.nix b/nixos/tests/firewall.nix
index dd7551f143a5..34e8bda60eef 100644
--- a/nixos/tests/firewall.nix
+++ b/nixos/tests/firewall.nix
@@ -3,7 +3,7 @@
 import ./make-test-python.nix ( { pkgs, nftables, ... } : {
   name = "firewall" + pkgs.lib.optionalString nftables "-nftables";
   meta = with pkgs.lib.maintainers; {
-    maintainers = [ eelco ];
+    maintainers = [ ];
   };
 
   nodes =
diff --git a/nixos/tests/fish.nix b/nixos/tests/fish.nix
index 3d9b13c6af70..c9a1bef51478 100644
--- a/nixos/tests/fish.nix
+++ b/nixos/tests/fish.nix
@@ -10,6 +10,8 @@ import ./make-test-python.nix ({ pkgs, ... }: {
         coreutils
         procps # kill collides with coreutils' to test https://github.com/NixOS/nixpkgs/issues/56432
       ];
+      # TODO: remove if/when #267880 is merged and this is a default
+      services.logrotate.enable = false;
     };
 
   testScript =
diff --git a/nixos/tests/garage/default.nix b/nixos/tests/garage/default.nix
index a42236e9a5bb..b7f9bb4b865b 100644
--- a/nixos/tests/garage/default.nix
+++ b/nixos/tests/garage/default.nix
@@ -51,4 +51,5 @@ in
   [
     "0_8"
     "0_9"
+    "1_x"
   ]
diff --git a/nixos/tests/garage/with-3node-replication.nix b/nixos/tests/garage/with-3node-replication.nix
index d4387b198d97..266a1082893f 100644
--- a/nixos/tests/garage/with-3node-replication.nix
+++ b/nixos/tests/garage/with-3node-replication.nix
@@ -7,10 +7,10 @@ args@{ mkNode, ver, ... }:
   };
 
   nodes = {
-    node1 = mkNode { replicationMode = 3; publicV6Address = "fc00:1::1"; };
-    node2 = mkNode { replicationMode = 3; publicV6Address = "fc00:1::2"; };
-    node3 = mkNode { replicationMode = 3; publicV6Address = "fc00:1::3"; };
-    node4 = mkNode { replicationMode = 3; publicV6Address = "fc00:1::4"; };
+    node1 = mkNode { replicationMode = "3"; publicV6Address = "fc00:1::1"; };
+    node2 = mkNode { replicationMode = "3"; publicV6Address = "fc00:1::2"; };
+    node3 = mkNode { replicationMode = "3"; publicV6Address = "fc00:1::3"; };
+    node4 = mkNode { replicationMode = "3"; publicV6Address = "fc00:1::4"; };
   };
 
   testScript = ''
diff --git a/nixos/tests/incus/container.nix b/nixos/tests/incus/container.nix
index a71c5355046a..10262cf2132b 100644
--- a/nixos/tests/incus/container.nix
+++ b/nixos/tests/incus/container.nix
@@ -1,4 +1,4 @@
-import ../make-test-python.nix ({ pkgs, lib, extra ? {}, name ? "incus-container", ... } :
+import ../make-test-python.nix ({ pkgs, lib, extra ? {}, name ? "incus-container", incus ? pkgs.incus-lts, ... } :
 
 let
   releases = import ../../release.nix {
@@ -28,7 +28,10 @@ in
       memorySize = 1024;
       diskSize = 4096;
 
-      incus.enable = true;
+      incus = {
+        enable = true;
+        package = incus;
+      };
     };
     networking.nftables.enable = true;
   };
@@ -70,51 +73,60 @@ in
         machine.succeed("incus exec container mount | grep 'lxcfs on /proc/cpuinfo type fuse.lxcfs'")
         machine.succeed("incus exec container mount | grep 'lxcfs on /proc/meminfo type fuse.lxcfs'")
 
-    with subtest("Container CPU limits can be managed"):
-        set_container("limits.cpu 1")
-        cpuinfo = machine.succeed("incus exec container grep -- -c ^processor /proc/cpuinfo").strip()
-        assert cpuinfo == "1", f"Wrong number of CPUs reported from /proc/cpuinfo, want: 1, got: {cpuinfo}"
-
-        set_container("limits.cpu 2")
-        cpuinfo = machine.succeed("incus exec container grep -- -c ^processor /proc/cpuinfo").strip()
-        assert cpuinfo == "2", f"Wrong number of CPUs reported from /proc/cpuinfo, want: 2, got: {cpuinfo}"
-
-    with subtest("Container memory limits can be managed"):
-        set_container("limits.memory 64MB")
-        meminfo = machine.succeed("incus exec container grep -- MemTotal /proc/meminfo").strip()
-        meminfo_bytes = " ".join(meminfo.split(' ')[-2:])
-        assert meminfo_bytes == "62500 kB", f"Wrong amount of memory reported from /proc/meminfo, want: '62500 kB', got: '{meminfo_bytes}'"
-
-        set_container("limits.memory 128MB")
-        meminfo = machine.succeed("incus exec container grep -- MemTotal /proc/meminfo").strip()
-        meminfo_bytes = " ".join(meminfo.split(' ')[-2:])
-        assert meminfo_bytes == "125000 kB", f"Wrong amount of memory reported from /proc/meminfo, want: '125000 kB', got: '{meminfo_bytes}'"
-
-    with subtest("lxc-container generator configures plain container"):
-        # reuse the existing container to save some time
-        machine.succeed("incus exec container test -- -e /run/systemd/system/service.d/zzz-lxc-service.conf")
-        check_sysctl("container")
-
-    with subtest("lxc-container generator configures nested container"):
-        machine.execute("incus delete --force container")
-        machine.succeed("incus launch nixos container --config security.nesting=true")
-        with machine.nested("Waiting for instance to start and be usable"):
-          retry(instance_is_up)
-
-        machine.fail("incus exec container test -- -e /run/systemd/system/service.d/zzz-lxc-service.conf")
-        target = machine.succeed("incus exec container readlink -- -f /run/systemd/system/systemd-binfmt.service").strip()
-        assert target == "/dev/null", "lxc generator did not correctly mask /run/systemd/system/systemd-binfmt.service"
-
-        check_sysctl("container")
-
-    with subtest("lxc-container generator configures privileged container"):
-        machine.execute("incus delete --force container")
-        machine.succeed("incus launch nixos container --config security.privileged=true")
-        with machine.nested("Waiting for instance to start and be usable"):
-          retry(instance_is_up)
-
-        machine.succeed("incus exec container test -- -e /run/systemd/system/service.d/zzz-lxc-service.conf")
-
-        check_sysctl("container")
+    with subtest("resource limits"):
+        with subtest("Container CPU limits can be managed"):
+            set_container("limits.cpu 1")
+            cpuinfo = machine.succeed("incus exec container grep -- -c ^processor /proc/cpuinfo").strip()
+            assert cpuinfo == "1", f"Wrong number of CPUs reported from /proc/cpuinfo, want: 1, got: {cpuinfo}"
+
+            set_container("limits.cpu 2")
+            cpuinfo = machine.succeed("incus exec container grep -- -c ^processor /proc/cpuinfo").strip()
+            assert cpuinfo == "2", f"Wrong number of CPUs reported from /proc/cpuinfo, want: 2, got: {cpuinfo}"
+
+        with subtest("Container memory limits can be managed"):
+            set_container("limits.memory 64MB")
+            meminfo = machine.succeed("incus exec container grep -- MemTotal /proc/meminfo").strip()
+            meminfo_bytes = " ".join(meminfo.split(' ')[-2:])
+            assert meminfo_bytes == "62500 kB", f"Wrong amount of memory reported from /proc/meminfo, want: '62500 kB', got: '{meminfo_bytes}'"
+
+            set_container("limits.memory 128MB")
+            meminfo = machine.succeed("incus exec container grep -- MemTotal /proc/meminfo").strip()
+            meminfo_bytes = " ".join(meminfo.split(' ')[-2:])
+            assert meminfo_bytes == "125000 kB", f"Wrong amount of memory reported from /proc/meminfo, want: '125000 kB', got: '{meminfo_bytes}'"
+
+    with subtest("lxc-generator"):
+        with subtest("lxc-container generator configures plain container"):
+            # reuse the existing container to save some time
+            machine.succeed("incus exec container test -- -e /run/systemd/system/service.d/zzz-lxc-service.conf")
+            check_sysctl("container")
+
+        with subtest("lxc-container generator configures nested container"):
+            machine.execute("incus delete --force container")
+            machine.succeed("incus launch nixos container --config security.nesting=true")
+            with machine.nested("Waiting for instance to start and be usable"):
+              retry(instance_is_up)
+
+            machine.fail("incus exec container test -- -e /run/systemd/system/service.d/zzz-lxc-service.conf")
+            target = machine.succeed("incus exec container readlink -- -f /run/systemd/system/systemd-binfmt.service").strip()
+            assert target == "/dev/null", "lxc generator did not correctly mask /run/systemd/system/systemd-binfmt.service"
+
+            check_sysctl("container")
+
+        with subtest("lxc-container generator configures privileged container"):
+            machine.execute("incus delete --force container")
+            machine.succeed("incus launch nixos container --config security.privileged=true")
+            with machine.nested("Waiting for instance to start and be usable"):
+              retry(instance_is_up)
+
+            machine.succeed("incus exec container test -- -e /run/systemd/system/service.d/zzz-lxc-service.conf")
+
+            check_sysctl("container")
+
+    with subtest("softDaemonRestart"):
+        with subtest("Instance remains running when softDaemonRestart is enabled and services is stopped"):
+            pid = machine.succeed("incus info container | grep 'PID'").split(":")[1].strip()
+            machine.succeed(f"ps {pid}")
+            machine.succeed("systemctl stop incus")
+            machine.succeed(f"ps {pid}")
   '';
 })
diff --git a/nixos/tests/incus/default.nix b/nixos/tests/incus/default.nix
index b850c4fba018..c33bf1600f27 100644
--- a/nixos/tests/incus/default.nix
+++ b/nixos/tests/incus/default.nix
@@ -3,24 +3,27 @@
   config ? { },
   pkgs ? import ../../.. { inherit system config; },
   handleTestOn,
+  incus ? pkgs.incus-lts,
 }:
 {
   container-legacy-init = import ./container.nix {
     name = "container-legacy-init";
-    inherit system pkgs;
+    inherit incus system pkgs;
   };
   container-systemd-init = import ./container.nix {
     name = "container-systemd-init";
-    inherit system pkgs;
+    inherit incus system pkgs;
     extra = {
       boot.initrd.systemd.enable = true;
     };
   };
-  lxd-to-incus = import ./lxd-to-incus.nix { inherit system pkgs; };
-  openvswitch = import ./openvswitch.nix { inherit system pkgs; };
-  preseed = import ./preseed.nix { inherit system pkgs; };
-  socket-activated = import ./socket-activated.nix { inherit system pkgs; };
-  storage = import ./storage.nix { inherit system pkgs; };
-  ui = import ./ui.nix { inherit system pkgs; };
-  virtual-machine = handleTestOn [ "x86_64-linux" ] ./virtual-machine.nix { inherit system pkgs; };
+  incusd-options = import ./incusd-options.nix { inherit incus system pkgs; };
+  lxd-to-incus = import ./lxd-to-incus.nix { inherit incus system pkgs; };
+  openvswitch = import ./openvswitch.nix { inherit incus system pkgs; };
+  socket-activated = import ./socket-activated.nix { inherit incus system pkgs; };
+  storage = import ./storage.nix { inherit incus system pkgs; };
+  ui = import ./ui.nix { inherit incus system pkgs; };
+  virtual-machine = handleTestOn [ "x86_64-linux" ] ./virtual-machine.nix {
+    inherit incus system pkgs;
+  };
 }
diff --git a/nixos/tests/incus/incusd-options.nix b/nixos/tests/incus/incusd-options.nix
new file mode 100644
index 000000000000..7b3a4d726e38
--- /dev/null
+++ b/nixos/tests/incus/incusd-options.nix
@@ -0,0 +1,110 @@
+# this is a set of tests for non-default options. typically the default options
+# will be handled by the other tests
+import ../make-test-python.nix (
+  {
+    pkgs,
+    lib,
+    incus ? pkgs.incus-lts,
+    ...
+  }:
+
+  let
+    releases = import ../../release.nix {
+      configuration = {
+        # Building documentation makes the test unnecessarily take a longer time:
+        documentation.enable = lib.mkForce false;
+      };
+    };
+
+    container-image-metadata = releases.lxdContainerMeta.${pkgs.stdenv.hostPlatform.system};
+    container-image-rootfs = releases.lxdContainerImage.${pkgs.stdenv.hostPlatform.system};
+  in
+  {
+    name = "incusd-options";
+
+    meta = {
+      maintainers = lib.teams.lxc.members;
+    };
+
+    nodes.machine = {
+      virtualisation = {
+        cores = 2;
+        memorySize = 1024;
+        diskSize = 4096;
+
+        incus = {
+          enable = true;
+          package = incus;
+          softDaemonRestart = false;
+
+          preseed = {
+            networks = [
+              {
+                name = "nixostestbr0";
+                type = "bridge";
+                config = {
+                  "ipv4.address" = "10.0.100.1/24";
+                  "ipv4.nat" = "true";
+                };
+              }
+            ];
+            profiles = [
+              {
+                name = "default";
+                devices = {
+                  eth0 = {
+                    name = "eth0";
+                    network = "nixostestbr0";
+                    type = "nic";
+                  };
+                  root = {
+                    path = "/";
+                    pool = "nixostest_pool";
+                    size = "35GiB";
+                    type = "disk";
+                  };
+                };
+              }
+            ];
+            storage_pools = [
+              {
+                name = "nixostest_pool";
+                driver = "dir";
+              }
+            ];
+          };
+        };
+      };
+      networking.nftables.enable = true;
+    };
+
+    testScript = ''
+      def instance_is_up(_) -> bool:
+          status, _ = machine.execute("incus exec container --disable-stdin --force-interactive /run/current-system/sw/bin/systemctl -- is-system-running")
+          return status == 0
+
+      machine.wait_for_unit("incus.service")
+      machine.wait_for_unit("incus-preseed.service")
+
+      with subtest("Container image can be imported"):
+          machine.succeed("incus image import ${container-image-metadata}/*/*.tar.xz ${container-image-rootfs}/*/*.tar.xz --alias nixos")
+
+      with subtest("Container can be launched and managed"):
+          machine.succeed("incus launch nixos container")
+          with machine.nested("Waiting for instance to start and be usable"):
+            retry(instance_is_up)
+          machine.succeed("echo true | incus exec container /run/current-system/sw/bin/bash -")
+
+      with subtest("Verify preseed resources created"):
+          machine.succeed("incus profile show default")
+          machine.succeed("incus network info nixostestbr0")
+          machine.succeed("incus storage show nixostest_pool")
+
+      with subtest("Instance is stopped when softDaemonRestart is disabled and services is stopped"):
+          pid = machine.succeed("incus info container | grep 'PID'").split(":")[1].strip()
+          machine.succeed(f"ps {pid}")
+          machine.succeed("systemctl stop incus")
+          machine.fail(f"ps {pid}")
+    '';
+  }
+)
diff --git a/nixos/tests/incus/lxd-to-incus.nix b/nixos/tests/incus/lxd-to-incus.nix
index e93b76591eca..66f78cbd33b4 100644
--- a/nixos/tests/incus/lxd-to-incus.nix
+++ b/nixos/tests/incus/lxd-to-incus.nix
@@ -1,6 +1,11 @@
 import ../make-test-python.nix (
 
-  { pkgs, lib, ... }:
+  {
+    pkgs,
+    lib,
+    incus ? pkgs.incus-lts,
+    ...
+  }:
 
   let
     releases = import ../../release.nix { configuration.documentation.enable = lib.mkForce false; };
@@ -65,7 +70,10 @@ import ../make-test-python.nix (
             ];
           };
 
-          incus.enable = true;
+          incus = {
+            enable = true;
+            package = incus;
+          };
         };
         networking.nftables.enable = true;
       };
diff --git a/nixos/tests/incus/openvswitch.nix b/nixos/tests/incus/openvswitch.nix
index 5d4aef031ad0..1cead99080e7 100644
--- a/nixos/tests/incus/openvswitch.nix
+++ b/nixos/tests/incus/openvswitch.nix
@@ -1,4 +1,4 @@
-import ../make-test-python.nix ({ pkgs, lib, ... } :
+import ../make-test-python.nix ({ pkgs, lib, incus ? pkgs.incus-lts, ... } :
 
 {
   name = "incus-openvswitch";
@@ -9,7 +9,11 @@ import ../make-test-python.nix ({ pkgs, lib, ... } :
 
   nodes.machine = { lib, ... }: {
     virtualisation = {
-      incus.enable = true;
+      incus = {
+        enable = true;
+        package = incus;
+      };
+
       vswitch.enable = true;
       incus.preseed = {
         networks = [
diff --git a/nixos/tests/incus/preseed.nix b/nixos/tests/incus/preseed.nix
deleted file mode 100644
index f2d928115f3e..000000000000
--- a/nixos/tests/incus/preseed.nix
+++ /dev/null
@@ -1,63 +0,0 @@
-import ../make-test-python.nix ({ pkgs, lib, ... } :
-
-{
-  name = "incus-preseed";
-
-  meta = {
-    maintainers = lib.teams.lxc.members;
-  };
-
-  nodes.machine = { lib, ... }: {
-    virtualisation = {
-      incus.enable = true;
-
-      incus.preseed = {
-        networks = [
-          {
-            name = "nixostestbr0";
-            type = "bridge";
-            config = {
-              "ipv4.address" = "10.0.100.1/24";
-              "ipv4.nat" = "true";
-            };
-          }
-        ];
-        profiles = [
-          {
-            name = "nixostest_default";
-            devices = {
-              eth0 = {
-                name = "eth0";
-                network = "nixostestbr0";
-                type = "nic";
-              };
-              root = {
-                path = "/";
-                pool = "default";
-                size = "35GiB";
-                type = "disk";
-              };
-            };
-          }
-        ];
-        storage_pools = [
-          {
-            name = "nixostest_pool";
-            driver = "dir";
-          }
-        ];
-      };
-    };
-    networking.nftables.enable = true;
-  };
-
-  testScript = ''
-    machine.wait_for_unit("incus.service")
-    machine.wait_for_unit("incus-preseed.service")
-
-    with subtest("Verify preseed resources created"):
-      machine.succeed("incus profile show nixostest_default")
-      machine.succeed("incus network info nixostestbr0")
-      machine.succeed("incus storage show nixostest_pool")
-  '';
-})
diff --git a/nixos/tests/incus/socket-activated.nix b/nixos/tests/incus/socket-activated.nix
index 59caf1090fbd..55c5496396e9 100644
--- a/nixos/tests/incus/socket-activated.nix
+++ b/nixos/tests/incus/socket-activated.nix
@@ -1,4 +1,4 @@
-import ../make-test-python.nix ({ pkgs, lib, ... } :
+import ../make-test-python.nix ({ pkgs, lib, incus ? pkgs.incus-lts, ... } :
 
 {
   name = "incus-socket-activated";
@@ -9,8 +9,11 @@ import ../make-test-python.nix ({ pkgs, lib, ... } :
 
   nodes.machine = { lib, ... }: {
     virtualisation = {
-      incus.enable = true;
-      incus.socketActivation = true;
+      incus = {
+        enable = true;
+        package = incus;
+        socketActivation = true;
+      };
     };
     networking.nftables.enable = true;
   };
diff --git a/nixos/tests/incus/storage.nix b/nixos/tests/incus/storage.nix
index 190f4f7451c2..05ea6ba996eb 100644
--- a/nixos/tests/incus/storage.nix
+++ b/nixos/tests/incus/storage.nix
@@ -1,5 +1,10 @@
 import ../make-test-python.nix (
-  { pkgs, lib, ... }:
+  {
+    pkgs,
+    lib,
+    incus ? pkgs.incus-lts,
+    ...
+  }:
 
   {
     name = "incus-storage";
@@ -19,7 +24,10 @@ import ../make-test-python.nix (
 
         virtualisation = {
           emptyDiskImages = [ 2048 ];
-          incus.enable = true;
+          incus = {
+            enable = true;
+            package = incus;
+          };
         };
       };
 
diff --git a/nixos/tests/incus/ui.nix b/nixos/tests/incus/ui.nix
index 837eb14844ce..a255d6fabe83 100644
--- a/nixos/tests/incus/ui.nix
+++ b/nixos/tests/incus/ui.nix
@@ -1,4 +1,4 @@
-import ../make-test-python.nix ({ pkgs, lib, ... }: {
+import ../make-test-python.nix ({ pkgs, lib, incus ? pkgs.incus-lts, ... }: {
   name = "incus-ui";
 
   meta = {
@@ -7,7 +7,10 @@ import ../make-test-python.nix ({ pkgs, lib, ... }: {
 
   nodes.machine = { lib, ... }: {
     virtualisation = {
-      incus.enable = true;
+      incus = {
+        enable = true;
+        package = incus;
+      };
       incus.ui.enable = true;
     };
     networking.nftables.enable = true;
diff --git a/nixos/tests/incus/virtual-machine.nix b/nixos/tests/incus/virtual-machine.nix
index eebbbd113ed1..70e54191d330 100644
--- a/nixos/tests/incus/virtual-machine.nix
+++ b/nixos/tests/incus/virtual-machine.nix
@@ -1,4 +1,4 @@
-import ../make-test-python.nix ({ pkgs, lib, ... }:
+import ../make-test-python.nix ({ pkgs, lib, incus ? pkgs.incus-lts, ... }:
 
 let
   releases = import ../../release.nix {
@@ -33,7 +33,10 @@ in
       # Provide a TPM to test vTPM support for guests
       tpm.enable = true;
 
-      incus.enable = true;
+      incus = {
+        enable = true;
+        package = incus;
+      };
     };
     networking.nftables.enable = true;
   };
@@ -75,5 +78,11 @@ in
         machine.succeed("incus config set ${instance-name} limits.cpu=2")
         count = int(machine.succeed("incus exec ${instance-name} -- nproc").strip())
         assert count == 2, f"Wrong number of CPUs reported, want: 2, got: {count}"
+
+    with subtest("Instance remains running when softDaemonRestart is enabled and services is stopped"):
+        pid = machine.succeed("incus info ${instance-name} | grep 'PID'").split(":")[1].strip()
+        machine.succeed(f"ps {pid}")
+        machine.succeed("systemctl stop incus")
+        machine.succeed(f"ps {pid}")
   '';
 })
diff --git a/nixos/tests/initrd-network.nix b/nixos/tests/initrd-network.nix
index f2483b7393de..abbc3d0fce82 100644
--- a/nixos/tests/initrd-network.nix
+++ b/nixos/tests/initrd-network.nix
@@ -1,7 +1,7 @@
 import ./make-test-python.nix ({ pkgs, lib, ...} : {
   name = "initrd-network";
 
-  meta.maintainers = [ pkgs.lib.maintainers.eelco ];
+  meta.maintainers = [ ];
 
   nodes.machine = { ... }: {
     imports = [ ../modules/profiles/minimal.nix ];
diff --git a/nixos/tests/installed-tests/gnome-photos.nix b/nixos/tests/installed-tests/gnome-photos.nix
index bcb6479ee89c..010ad9702402 100644
--- a/nixos/tests/installed-tests/gnome-photos.nix
+++ b/nixos/tests/installed-tests/gnome-photos.nix
@@ -13,7 +13,7 @@ makeInstalledTest {
       (stdenv.mkDerivation {
         name = "desktop-gsettings";
         dontUnpack = true;
-        nativeBuildInputs = [ glib wrapGAppsHook ];
+        nativeBuildInputs = [ glib wrapGAppsHook3 ];
         buildInputs = [ gsettings-desktop-schemas ];
         installPhase = ''
           runHook preInstall
diff --git a/nixos/tests/installer.nix b/nixos/tests/installer.nix
index 7e835041eb39..b034d21146f3 100644
--- a/nixos/tests/installer.nix
+++ b/nixos/tests/installer.nix
@@ -249,12 +249,11 @@ let
       with subtest("Check whether nixos-rebuild works"):
           target.succeed("nixos-rebuild switch >&2")
 
-      # FIXME: Nix 2.4 broke nixos-option, someone has to fix it.
-      # with subtest("Test nixos-option"):
-      #     kernel_modules = target.succeed("nixos-option boot.initrd.kernelModules")
-      #     assert "virtio_console" in kernel_modules
-      #     assert "List of modules" in kernel_modules
-      #     assert "qemu-guest.nix" in kernel_modules
+      with subtest("Test nixos-option"):
+          kernel_modules = target.succeed("nixos-option boot.initrd.kernelModules")
+          assert "virtio_console" in kernel_modules
+          assert "List of modules" in kernel_modules
+          assert "qemu-guest.nix" in kernel_modules
 
       target.shutdown()
 
diff --git a/nixos/tests/ipv6.nix b/nixos/tests/ipv6.nix
index 75faa6f60201..7f91457fa5ea 100644
--- a/nixos/tests/ipv6.nix
+++ b/nixos/tests/ipv6.nix
@@ -4,7 +4,7 @@
 import ./make-test-python.nix ({ pkgs, lib, ...} : {
   name = "ipv6";
   meta = with pkgs.lib.maintainers; {
-    maintainers = [ eelco ];
+    maintainers = [ ];
   };
 
   nodes =
diff --git a/nixos/tests/jenkins.nix b/nixos/tests/jenkins.nix
index a8f621000654..d7394c866c14 100644
--- a/nixos/tests/jenkins.nix
+++ b/nixos/tests/jenkins.nix
@@ -7,7 +7,7 @@
 import ./make-test-python.nix ({ pkgs, ...} : {
   name = "jenkins";
   meta = with pkgs.lib.maintainers; {
-    maintainers = [ bjornfor coconnor domenkozar eelco ];
+    maintainers = [ bjornfor coconnor domenkozar ];
   };
 
   nodes = {
diff --git a/nixos/tests/jotta-cli.nix b/nixos/tests/jotta-cli.nix
index 5eefe65c1d38..0df23ee2cba5 100644
--- a/nixos/tests/jotta-cli.nix
+++ b/nixos/tests/jotta-cli.nix
@@ -4,7 +4,7 @@ import ./make-test-python.nix ({ pkgs, ... }: {
   meta.maintainers = with pkgs.lib.maintainers; [ evenbrenden ];
 
   nodes.machine = { pkgs, ... }: {
-    user.services.jotta-cli.enable = true;
+    services.jotta-cli.enable = true;
     imports = [ ./common/user-account.nix ];
   };
 
diff --git a/nixos/tests/k3s/default.nix b/nixos/tests/k3s/default.nix
index 512dc06ee77e..297b05a4e4a7 100644
--- a/nixos/tests/k3s/default.nix
+++ b/nixos/tests/k3s/default.nix
@@ -1,16 +1,20 @@
-{ system ? builtins.currentSystem
-, pkgs ? import ../../.. { inherit system; }
-, lib ? pkgs.lib
+{
+  system ? builtins.currentSystem,
+  pkgs ? import ../../.. { inherit system; },
+  lib ? pkgs.lib,
 }:
 let
   allK3s = lib.filterAttrs (n: _: lib.strings.hasPrefix "k3s_" n) pkgs;
 in
 {
   # Testing K3s with Etcd backend
-  etcd = lib.mapAttrs (_: k3s: import ./etcd.nix {
-    inherit system pkgs k3s;
-    inherit (pkgs) etcd;
-  }) allK3s;
+  etcd = lib.mapAttrs (
+    _: k3s:
+    import ./etcd.nix {
+      inherit system pkgs k3s;
+      inherit (pkgs) etcd;
+    }
+  ) allK3s;
   # Run a single node k3s cluster and verify a pod can run
   single-node = lib.mapAttrs (_: k3s: import ./single-node.nix { inherit system pkgs k3s; }) allK3s;
   # Run a multi-node k3s cluster and verify pod networking works across nodes
diff --git a/nixos/tests/k3s/etcd.nix b/nixos/tests/k3s/etcd.nix
index d6e9a294adb1..ac0aa9047251 100644
--- a/nixos/tests/k3s/etcd.nix
+++ b/nixos/tests/k3s/etcd.nix
@@ -1,100 +1,130 @@
-import ../make-test-python.nix ({ pkgs, lib, k3s, etcd, ... }:
-
-{
-  name = "${k3s.name}-etcd";
-
-  nodes = {
-
-    etcd = { ... }: {
-      services.etcd = {
-        enable = true;
-        openFirewall = true;
-        listenClientUrls = [ "http://192.168.1.1:2379" "http://127.0.0.1:2379" ];
-        listenPeerUrls = [ "http://192.168.1.1:2380" ];
-        initialAdvertisePeerUrls = [ "http://192.168.1.1:2380" ];
-        initialCluster = [ "etcd=http://192.168.1.1:2380" ];
-      };
-      networking = {
-        useDHCP = false;
-        defaultGateway = "192.168.1.1";
-        interfaces.eth1.ipv4.addresses = pkgs.lib.mkForce [
-          { address = "192.168.1.1"; prefixLength = 24; }
-        ];
-      };
-    };
+import ../make-test-python.nix (
+  {
+    pkgs,
+    lib,
+    k3s,
+    etcd,
+    ...
+  }:
+
+  {
+    name = "${k3s.name}-etcd";
+
+    nodes = {
+
+      etcd =
+        { ... }:
+        {
+          services.etcd = {
+            enable = true;
+            openFirewall = true;
+            listenClientUrls = [
+              "http://192.168.1.1:2379"
+              "http://127.0.0.1:2379"
+            ];
+            listenPeerUrls = [ "http://192.168.1.1:2380" ];
+            initialAdvertisePeerUrls = [ "http://192.168.1.1:2380" ];
+            initialCluster = [ "etcd=http://192.168.1.1:2380" ];
+          };
+          networking = {
+            useDHCP = false;
+            defaultGateway = "192.168.1.1";
+            interfaces.eth1.ipv4.addresses = pkgs.lib.mkForce [
+              {
+                address = "192.168.1.1";
+                prefixLength = 24;
+              }
+            ];
+          };
+        };
 
-    k3s = { pkgs, ... }: {
-      environment.systemPackages = with pkgs; [ jq ];
-      # k3s uses enough resources the default vm fails.
-      virtualisation.memorySize = 1536;
-      virtualisation.diskSize = 4096;
-
-      services.k3s = {
-        enable = true;
-        role = "server";
-        extraFlags = builtins.toString [
-          "--datastore-endpoint=\"http://192.168.1.1:2379\""
-          "--disable" "coredns"
-          "--disable" "local-storage"
-          "--disable" "metrics-server"
-          "--disable" "servicelb"
-          "--disable" "traefik"
-          "--node-ip" "192.168.1.2"
-        ];
-      };
-
-      networking = {
-        firewall = {
-          allowedTCPPorts = [ 2379 2380 6443 ];
-          allowedUDPPorts = [ 8472 ];
+      k3s =
+        { pkgs, ... }:
+        {
+          environment.systemPackages = with pkgs; [ jq ];
+          # k3s uses enough resources the default vm fails.
+          virtualisation.memorySize = 1536;
+          virtualisation.diskSize = 4096;
+
+          services.k3s = {
+            enable = true;
+            role = "server";
+            extraFlags = builtins.toString [
+              "--datastore-endpoint=\"http://192.168.1.1:2379\""
+              "--disable"
+              "coredns"
+              "--disable"
+              "local-storage"
+              "--disable"
+              "metrics-server"
+              "--disable"
+              "servicelb"
+              "--disable"
+              "traefik"
+              "--node-ip"
+              "192.168.1.2"
+            ];
+          };
+
+          networking = {
+            firewall = {
+              allowedTCPPorts = [
+                2379
+                2380
+                6443
+              ];
+              allowedUDPPorts = [ 8472 ];
+            };
+            useDHCP = false;
+            defaultGateway = "192.168.1.2";
+            interfaces.eth1.ipv4.addresses = pkgs.lib.mkForce [
+              {
+                address = "192.168.1.2";
+                prefixLength = 24;
+              }
+            ];
+          };
         };
-        useDHCP = false;
-        defaultGateway = "192.168.1.2";
-        interfaces.eth1.ipv4.addresses = pkgs.lib.mkForce [
-          { address = "192.168.1.2"; prefixLength = 24; }
-        ];
-      };
     };
 
-  };
-
-  testScript = ''
-    with subtest("should start etcd"):
-        etcd.start()
-        etcd.wait_for_unit("etcd.service")
+    testScript = ''
+      with subtest("should start etcd"):
+          etcd.start()
+          etcd.wait_for_unit("etcd.service")
 
-    with subtest("should wait for etcdctl endpoint status to succeed"):
-        etcd.wait_until_succeeds("etcdctl endpoint status")
+      with subtest("should wait for etcdctl endpoint status to succeed"):
+          etcd.wait_until_succeeds("etcdctl endpoint status")
 
-    with subtest("should start k3s"):
-        k3s.start()
-        k3s.wait_for_unit("k3s")
+      with subtest("should start k3s"):
+          k3s.start()
+          k3s.wait_for_unit("k3s")
 
-    with subtest("should test if kubectl works"):
-        k3s.wait_until_succeeds("k3s kubectl get node")
+      with subtest("should test if kubectl works"):
+          k3s.wait_until_succeeds("k3s kubectl get node")
 
-    with subtest("should wait for service account to show up; takes a sec"):
-        k3s.wait_until_succeeds("k3s kubectl get serviceaccount default")
+      with subtest("should wait for service account to show up; takes a sec"):
+          k3s.wait_until_succeeds("k3s kubectl get serviceaccount default")
 
-    with subtest("should create a sample secret object"):
-        k3s.succeed("k3s kubectl create secret generic nixossecret --from-literal thesecret=abacadabra")
+      with subtest("should create a sample secret object"):
+          k3s.succeed("k3s kubectl create secret generic nixossecret --from-literal thesecret=abacadabra")
 
-    with subtest("should check if secret is correct"):
-        k3s.wait_until_succeeds("[[ $(kubectl get secrets nixossecret -o json | jq -r .data.thesecret | base64 -d) == abacadabra ]]")
+      with subtest("should check if secret is correct"):
+          k3s.wait_until_succeeds("[[ $(kubectl get secrets nixossecret -o json | jq -r .data.thesecret | base64 -d) == abacadabra ]]")
 
-    with subtest("should have a secret in database"):
-        etcd.wait_until_succeeds("[[ $(etcdctl get /registry/secrets/default/nixossecret | head -c1 | wc -c) -ne 0 ]]")
+      with subtest("should have a secret in database"):
+          etcd.wait_until_succeeds("[[ $(etcdctl get /registry/secrets/default/nixossecret | head -c1 | wc -c) -ne 0 ]]")
 
-    with subtest("should delete the secret"):
-        k3s.succeed("k3s kubectl delete secret nixossecret")
+      with subtest("should delete the secret"):
+          k3s.succeed("k3s kubectl delete secret nixossecret")
 
-    with subtest("should not have a secret in database"):
-        etcd.wait_until_fails("[[ $(etcdctl get /registry/secrets/default/nixossecret | head -c1 | wc -c) -ne 0 ]]")
+      with subtest("should not have a secret in database"):
+          etcd.wait_until_fails("[[ $(etcdctl get /registry/secrets/default/nixossecret | head -c1 | wc -c) -ne 0 ]]")
 
-    with subtest("should shutdown k3s and etcd"):
-        k3s.shutdown()
-        etcd.shutdown()
-  '';
+      with subtest("should shutdown k3s and etcd"):
+          k3s.shutdown()
+          etcd.shutdown()
+    '';
 
-  meta.maintainers = etcd.meta.maintainers ++ k3s.meta.maintainers;
-})
+    meta.maintainers = etcd.meta.maintainers ++ k3s.meta.maintainers;
+  }
+)
diff --git a/nixos/tests/k3s/multi-node.nix b/nixos/tests/k3s/multi-node.nix
index 20279f3ca4b9..b618d2aff34c 100644
--- a/nixos/tests/k3s/multi-node.nix
+++ b/nixos/tests/k3s/multi-node.nix
@@ -1,14 +1,30 @@
-import ../make-test-python.nix ({ pkgs, lib, k3s, ... }:
+import ../make-test-python.nix (
+  {
+    pkgs,
+    lib,
+    k3s,
+    ...
+  }:
   let
     imageEnv = pkgs.buildEnv {
       name = "k3s-pause-image-env";
-      paths = with pkgs; [ tini bashInteractive coreutils socat ];
+      paths = with pkgs; [
+        tini
+        bashInteractive
+        coreutils
+        socat
+      ];
     };
     pauseImage = pkgs.dockerTools.streamLayeredImage {
       name = "test.local/pause";
       tag = "local";
       contents = imageEnv;
-      config.Entrypoint = [ "/bin/tini" "--" "/bin/sleep" "inf" ];
+      config.Entrypoint = [
+        "/bin/tini"
+        "--"
+        "/bin/sleep"
+        "inf"
+      ];
     };
     # A daemonset that responds 'server' on port 8000
     networkTestDaemonset = pkgs.writeText "test.yml" ''
@@ -42,90 +58,135 @@ import ../make-test-python.nix ({ pkgs, lib, k3s, ... }:
     name = "${k3s.name}-multi-node";
 
     nodes = {
-      server = { pkgs, ... }: {
-        environment.systemPackages = with pkgs; [ gzip jq ];
-        # k3s uses enough resources the default vm fails.
-        virtualisation.memorySize = 1536;
-        virtualisation.diskSize = 4096;
-
-        services.k3s = {
-          inherit tokenFile;
-          enable = true;
-          role = "server";
-          package = k3s;
-          clusterInit = true;
-          extraFlags = builtins.toString [
-            "--disable" "coredns"
-            "--disable" "local-storage"
-            "--disable" "metrics-server"
-            "--disable" "servicelb"
-            "--disable" "traefik"
-            "--node-ip" "192.168.1.1"
-            "--pause-image" "test.local/pause:local"
+      server =
+        { pkgs, ... }:
+        {
+          environment.systemPackages = with pkgs; [
+            gzip
+            jq
+          ];
+          # k3s uses enough resources the default vm fails.
+          virtualisation.memorySize = 1536;
+          virtualisation.diskSize = 4096;
+
+          services.k3s = {
+            inherit tokenFile;
+            enable = true;
+            role = "server";
+            package = k3s;
+            clusterInit = true;
+            extraFlags = builtins.toString [
+              "--disable"
+              "coredns"
+              "--disable"
+              "local-storage"
+              "--disable"
+              "metrics-server"
+              "--disable"
+              "servicelb"
+              "--disable"
+              "traefik"
+              "--node-ip"
+              "192.168.1.1"
+              "--pause-image"
+              "test.local/pause:local"
+            ];
+          };
+          networking.firewall.allowedTCPPorts = [
+            2379
+            2380
+            6443
+          ];
+          networking.firewall.allowedUDPPorts = [ 8472 ];
+          networking.firewall.trustedInterfaces = [ "flannel.1" ];
+          networking.useDHCP = false;
+          networking.defaultGateway = "192.168.1.1";
+          networking.interfaces.eth1.ipv4.addresses = pkgs.lib.mkForce [
+            {
+              address = "192.168.1.1";
+              prefixLength = 24;
+            }
           ];
         };
-        networking.firewall.allowedTCPPorts = [ 2379 2380 6443 ];
-        networking.firewall.allowedUDPPorts = [ 8472 ];
-        networking.firewall.trustedInterfaces = [ "flannel.1" ];
-        networking.useDHCP = false;
-        networking.defaultGateway = "192.168.1.1";
-        networking.interfaces.eth1.ipv4.addresses = pkgs.lib.mkForce [
-          { address = "192.168.1.1"; prefixLength = 24; }
-        ];
-      };
-
-      server2 = { pkgs, ... }: {
-        environment.systemPackages = with pkgs; [ gzip jq ];
-        virtualisation.memorySize = 1536;
-        virtualisation.diskSize = 4096;
-
-        services.k3s = {
-          inherit tokenFile;
-          enable = true;
-          serverAddr = "https://192.168.1.1:6443";
-          clusterInit = false;
-          extraFlags = builtins.toString [
-            "--disable" "coredns"
-            "--disable" "local-storage"
-            "--disable" "metrics-server"
-            "--disable" "servicelb"
-            "--disable" "traefik"
-            "--node-ip" "192.168.1.3"
-            "--pause-image" "test.local/pause:local"
+
+      server2 =
+        { pkgs, ... }:
+        {
+          environment.systemPackages = with pkgs; [
+            gzip
+            jq
+          ];
+          virtualisation.memorySize = 1536;
+          virtualisation.diskSize = 4096;
+
+          services.k3s = {
+            inherit tokenFile;
+            enable = true;
+            serverAddr = "https://192.168.1.1:6443";
+            clusterInit = false;
+            extraFlags = builtins.toString [
+              "--disable"
+              "coredns"
+              "--disable"
+              "local-storage"
+              "--disable"
+              "metrics-server"
+              "--disable"
+              "servicelb"
+              "--disable"
+              "traefik"
+              "--node-ip"
+              "192.168.1.3"
+              "--pause-image"
+              "test.local/pause:local"
+            ];
+          };
+          networking.firewall.allowedTCPPorts = [
+            2379
+            2380
+            6443
+          ];
+          networking.firewall.allowedUDPPorts = [ 8472 ];
+          networking.firewall.trustedInterfaces = [ "flannel.1" ];
+          networking.useDHCP = false;
+          networking.defaultGateway = "192.168.1.3";
+          networking.interfaces.eth1.ipv4.addresses = pkgs.lib.mkForce [
+            {
+              address = "192.168.1.3";
+              prefixLength = 24;
+            }
           ];
         };
-        networking.firewall.allowedTCPPorts = [ 2379 2380 6443 ];
-        networking.firewall.allowedUDPPorts = [ 8472 ];
-        networking.firewall.trustedInterfaces = [ "flannel.1" ];
-        networking.useDHCP = false;
-        networking.defaultGateway = "192.168.1.3";
-        networking.interfaces.eth1.ipv4.addresses = pkgs.lib.mkForce [
-          { address = "192.168.1.3"; prefixLength = 24; }
-        ];
-      };
-
-      agent = { pkgs, ... }: {
-        virtualisation.memorySize = 1024;
-        virtualisation.diskSize = 2048;
-        services.k3s = {
-          inherit tokenFile;
-          enable = true;
-          role = "agent";
-          serverAddr = "https://192.168.1.3:6443";
-          extraFlags = lib.concatStringsSep " " [
-            "--pause-image" "test.local/pause:local"
-            "--node-ip" "192.168.1.2"
+
+      agent =
+        { pkgs, ... }:
+        {
+          virtualisation.memorySize = 1024;
+          virtualisation.diskSize = 2048;
+          services.k3s = {
+            inherit tokenFile;
+            enable = true;
+            role = "agent";
+            serverAddr = "https://192.168.1.3:6443";
+            extraFlags = lib.concatStringsSep " " [
+              "--pause-image"
+              "test.local/pause:local"
+              "--node-ip"
+              "192.168.1.2"
+            ];
+          };
+          networking.firewall.allowedTCPPorts = [ 6443 ];
+          networking.firewall.allowedUDPPorts = [ 8472 ];
+          networking.firewall.trustedInterfaces = [ "flannel.1" ];
+          networking.useDHCP = false;
+          networking.defaultGateway = "192.168.1.2";
+          networking.interfaces.eth1.ipv4.addresses = pkgs.lib.mkForce [
+            {
+              address = "192.168.1.2";
+              prefixLength = 24;
+            }
           ];
         };
-        networking.firewall.allowedTCPPorts = [ 6443 ];
-        networking.firewall.allowedUDPPorts = [ 8472 ];
-        networking.firewall.trustedInterfaces = [ "flannel.1" ];
-        networking.useDHCP = false;
-        networking.defaultGateway = "192.168.1.2";
-        networking.interfaces.eth1.ipv4.addresses = pkgs.lib.mkForce [
-          { address = "192.168.1.2"; prefixLength = 24; }
-        ];
-      };
     };
 
     meta.maintainers = k3s.meta.maintainers;
@@ -178,4 +239,5 @@ import ../make-test-python.nix ({ pkgs, lib, k3s, ... }:
       for m in machines:
           m.shutdown()
     '';
-  })
+  }
+)
diff --git a/nixos/tests/k3s/single-node.nix b/nixos/tests/k3s/single-node.nix
index fd64a050e61e..80d80a55ddf4 100644
--- a/nixos/tests/k3s/single-node.nix
+++ b/nixos/tests/k3s/single-node.nix
@@ -1,14 +1,29 @@
-import ../make-test-python.nix ({ pkgs, lib, k3s, ... }:
+import ../make-test-python.nix (
+  {
+    pkgs,
+    lib,
+    k3s,
+    ...
+  }:
   let
     imageEnv = pkgs.buildEnv {
       name = "k3s-pause-image-env";
-      paths = with pkgs; [ tini (hiPrio coreutils) busybox ];
+      paths = with pkgs; [
+        tini
+        (hiPrio coreutils)
+        busybox
+      ];
     };
     pauseImage = pkgs.dockerTools.streamLayeredImage {
       name = "test.local/pause";
       tag = "local";
       contents = imageEnv;
-      config.Entrypoint = [ "/bin/tini" "--" "/bin/sleep" "inf" ];
+      config.Entrypoint = [
+        "/bin/tini"
+        "--"
+        "/bin/sleep"
+        "inf"
+      ];
     };
     testPodYaml = pkgs.writeText "test.yml" ''
       apiVersion: v1
@@ -27,57 +42,83 @@ import ../make-test-python.nix ({ pkgs, lib, k3s, ... }:
     name = "${k3s.name}-single-node";
     meta.maintainers = k3s.meta.maintainers;
 
-    nodes.machine = { pkgs, ... }: {
-      environment.systemPackages = with pkgs; [ k3s gzip ];
+    nodes.machine =
+      { pkgs, ... }:
+      {
+        environment.systemPackages = with pkgs; [
+          k3s
+          gzip
+        ];
 
-      # k3s uses enough resources the default vm fails.
-      virtualisation.memorySize = 1536;
-      virtualisation.diskSize = 4096;
+        # k3s uses enough resources the default vm fails.
+        virtualisation.memorySize = 1536;
+        virtualisation.diskSize = 4096;
 
-      services.k3s.enable = true;
-      services.k3s.role = "server";
-      services.k3s.package = k3s;
-      # Slightly reduce resource usage
-      services.k3s.extraFlags = builtins.toString [
-        "--disable" "coredns"
-        "--disable" "local-storage"
-        "--disable" "metrics-server"
-        "--disable" "servicelb"
-        "--disable" "traefik"
-        "--pause-image" "test.local/pause:local"
-      ];
+        services.k3s.enable = true;
+        services.k3s.role = "server";
+        services.k3s.package = k3s;
+        # Slightly reduce resource usage
+        services.k3s.extraFlags = builtins.toString [
+          "--disable"
+          "coredns"
+          "--disable"
+          "local-storage"
+          "--disable"
+          "metrics-server"
+          "--disable"
+          "servicelb"
+          "--disable"
+          "traefik"
+          "--pause-image"
+          "test.local/pause:local"
+        ];
 
-      users.users = {
-        noprivs = {
-          isNormalUser = true;
-          description = "Can't access k3s by default";
-          password = "*";
+        users.users = {
+          noprivs = {
+            isNormalUser = true;
+            description = "Can't access k3s by default";
+            password = "*";
+          };
         };
       };
-    };
 
-    testScript = ''
-      start_all()
+    testScript =
+      ''
+        start_all()
 
-      machine.wait_for_unit("k3s")
-      machine.succeed("kubectl cluster-info")
-      machine.fail("sudo -u noprivs kubectl cluster-info")
+        machine.wait_for_unit("k3s")
+        machine.succeed("kubectl cluster-info")
+        machine.fail("sudo -u noprivs kubectl cluster-info")
       '' # Fix-Me: Tests fail for 'aarch64-linux' as: "CONFIG_CGROUP_FREEZER: missing (fail)"
-      + lib.optionalString (!pkgs.stdenv.isAarch64) ''machine.succeed("k3s check-config")'' + ''
+      + lib.optionalString (!pkgs.stdenv.isAarch64) ''machine.succeed("k3s check-config")''
+      + ''
 
-      machine.succeed(
-          "${pauseImage} | ctr image import -"
-      )
+        machine.succeed(
+            "${pauseImage} | ctr image import -"
+        )
 
-      # Also wait for our service account to show up; it takes a sec
-      machine.wait_until_succeeds("kubectl get serviceaccount default")
-      machine.succeed("kubectl apply -f ${testPodYaml}")
-      machine.succeed("kubectl wait --for 'condition=Ready' pod/test")
-      machine.succeed("kubectl delete -f ${testPodYaml}")
+        # Also wait for our service account to show up; it takes a sec
+        machine.wait_until_succeeds("kubectl get serviceaccount default")
+        machine.succeed("kubectl apply -f ${testPodYaml}")
+        machine.succeed("kubectl wait --for 'condition=Ready' pod/test")
+        machine.succeed("kubectl delete -f ${testPodYaml}")
 
-      # regression test for #176445
-      machine.fail("journalctl -o cat -u k3s.service | grep 'ipset utility not found'")
+        # regression test for #176445
+        machine.fail("journalctl -o cat -u k3s.service | grep 'ipset utility not found'")
 
-      machine.shutdown()
-    '';
-  })
+        with subtest("Run k3s-killall"):
+            # Call the killall script with a clean path to assert that
+            # all required commands are wrapped
+            output = machine.succeed("PATH= ${k3s}/bin/k3s-killall.sh 2>&1 | tee /dev/stderr")
+            assert "command not found" not in output, "killall script contains unknown command"
+
+            # Check that killall cleaned up properly
+            machine.fail("systemctl is-active k3s.service")
+            machine.fail("systemctl list-units | grep containerd")
+            machine.fail("ip link show | awk -F': ' '{print $2}' | grep -e flannel -e cni0")
+            machine.fail("ip netns show | grep cni-")
+
+        machine.shutdown()
+      '';
+  }
+)
diff --git a/nixos/tests/knot.nix b/nixos/tests/knot.nix
index eec94a22f2fa..4441fed6ef50 100644
--- a/nixos/tests/knot.nix
+++ b/nixos/tests/knot.nix
@@ -190,6 +190,10 @@ in {
     primary.wait_for_unit("knot.service")
     secondary.wait_for_unit("knot.service")
 
+    for zone in ("example.com.", "sub.example.com."):
+        secondary.wait_until_succeeds(
+          f"knotc zone-status {zone} | grep -q 'serial: 2019031302'"
+        )
 
     def test(host, query_type, query, pattern):
         out = client.succeed(f"khost -t {query_type} {query} {host}").strip()
diff --git a/nixos/tests/login.nix b/nixos/tests/login.nix
index 67f5764a0a16..bcaee03175ad 100644
--- a/nixos/tests/login.nix
+++ b/nixos/tests/login.nix
@@ -3,7 +3,7 @@ import ./make-test-python.nix ({ pkgs, latestKernel ? false, ... }:
 {
   name = "login";
   meta = with pkgs.lib.maintainers; {
-    maintainers = [ eelco ];
+    maintainers = [ ];
   };
 
   nodes.machine =
diff --git a/nixos/tests/logrotate.nix b/nixos/tests/logrotate.nix
index bcbe89c259ae..f9c5e9060970 100644
--- a/nixos/tests/logrotate.nix
+++ b/nixos/tests/logrotate.nix
@@ -16,52 +16,60 @@ import ./make-test-python.nix ({ pkgs, ... }: rec {
   };
 
   nodes = {
-    defaultMachine = { ... }: { };
+    defaultMachine = { ... }: {
+      services.logrotate.enable = true;
+    };
     failingMachine = { ... }: {
-      services.logrotate.configFile = pkgs.writeText "logrotate.conf" ''
-        # self-written config file
-        su notarealuser notagroupeither
-      '';
+      services.logrotate = {
+        enable = true;
+        configFile = pkgs.writeText "logrotate.conf" ''
+          # self-written config file
+          su notarealuser notagroupeither
+        '';
+      };
     };
     machine = { config, ... }: {
       imports = [ importTest ];
 
-      services.logrotate.settings = {
-        # remove default frequency header and add another
-        header = {
-          frequency = null;
-          delaycompress = true;
-        };
-        # extra global setting... affecting nothing
-        last_line = {
-          global = true;
-          priority = 2000;
-          shred = true;
-        };
-        # using mail somewhere should add --mail to logrotate invocation
-        sendmail = {
-          mail = "user@domain.tld";
-        };
-        # postrotate should be suffixed by 'endscript'
-        postrotate = {
-          postrotate = "touch /dev/null";
-        };
-        # check checkConfig works as expected: there is nothing to check here
-        # except that the file build passes
-        checkConf = {
-          su = "root utmp";
-          createolddir = "0750 root utmp";
-          create = "root utmp";
-          "create " = "0750 root utmp";
-        };
-        # multiple paths should be aggregated
-        multipath = {
-          files = [ "file1" "file2" ];
-        };
-        # overriding imported path should keep existing attributes
-        # (e.g. olddir is still set)
-        import = {
-          notifempty = true;
+      services.logrotate = {
+        enable = true;
+        settings = {
+          # remove default frequency header and add another
+          header = {
+            frequency = null;
+            delaycompress = true;
+          };
+          # extra global setting... affecting nothing
+          last_line = {
+            global = true;
+            priority = 2000;
+            shred = true;
+          };
+          # using mail somewhere should add --mail to logrotate invocation
+          sendmail = {
+            mail = "user@domain.tld";
+          };
+          # postrotate should be suffixed by 'endscript'
+          postrotate = {
+            postrotate = "touch /dev/null";
+          };
+          # check checkConfig works as expected: there is nothing to check here
+          # except that the file build passes
+          checkConf = {
+            su = "root utmp";
+            createolddir = "0750 root utmp";
+            create = "root utmp";
+            "create " = "0750 root utmp";
+          };
+          # multiple paths should be aggregated
+          multipath = {
+            files = [ "file1" "file2" ];
+          };
+          # overriding imported path should keep existing attributes
+          # (e.g. olddir is still set)
+          import = {
+            notifempty = true;
+          };
         };
       };
     };
diff --git a/nixos/tests/mediamtx.nix b/nixos/tests/mediamtx.nix
index 8cacd02631d9..f40c4a8cb583 100644
--- a/nixos/tests/mediamtx.nix
+++ b/nixos/tests/mediamtx.nix
@@ -1,57 +1,60 @@
-import ./make-test-python.nix ({ pkgs, lib, ...} :
+import ./make-test-python.nix (
+  { pkgs, lib, ... }:
 
-{
-  name = "mediamtx";
-  meta.maintainers = with lib.maintainers; [ fpletz ];
+  {
+    name = "mediamtx";
+    meta.maintainers = with lib.maintainers; [ fpletz ];
 
-  nodes = {
-    machine = { config, ... }: {
-      services.mediamtx = {
-        enable = true;
-        settings = {
-          metrics = true;
-          paths.all.source = "publisher";
+    nodes = {
+      machine = {
+        services.mediamtx = {
+          enable = true;
+          settings = {
+            metrics = true;
+            paths.all.source = "publisher";
+          };
         };
-      };
 
-      systemd.services.rtmp-publish = {
-        description = "Publish an RTMP stream to mediamtx";
-        after = [ "mediamtx.service" ];
-        bindsTo = [ "mediamtx.service" ];
-        wantedBy = [ "multi-user.target" ];
-        serviceConfig = {
-          DynamicUser = true;
-          Restart = "on-failure";
-          RestartSec = "1s";
-          TimeoutStartSec = "10s";
-          ExecStart = "${lib.getBin pkgs.ffmpeg-headless}/bin/ffmpeg -re -f lavfi -i smptebars=size=800x600:rate=10 -c libx264 -f flv rtmp://localhost:1935/test";
+        systemd.services.rtmp-publish = {
+          description = "Publish an RTMP stream to mediamtx";
+          after = [ "mediamtx.service" ];
+          bindsTo = [ "mediamtx.service" ];
+          wantedBy = [ "multi-user.target" ];
+          serviceConfig = {
+            DynamicUser = true;
+            Restart = "on-failure";
+            RestartSec = "1s";
+            TimeoutStartSec = "10s";
+            ExecStart = "${lib.getBin pkgs.ffmpeg-headless}/bin/ffmpeg -re -f lavfi -i smptebars=size=800x600:rate=10 -c libx264 -f flv rtmp://localhost:1935/test";
+          };
         };
-      };
 
-      systemd.services.rtmp-receive = {
-        description = "Receive an RTMP stream from mediamtx";
-        after = [ "rtmp-publish.service" ];
-        bindsTo = [ "rtmp-publish.service" ];
-        wantedBy = [ "multi-user.target" ];
-        serviceConfig = {
-          DynamicUser = true;
-          Restart = "on-failure";
-          RestartSec = "1s";
-          TimeoutStartSec = "10s";
-          ExecStart = "${lib.getBin pkgs.ffmpeg-headless}/bin/ffmpeg -y -re -i rtmp://localhost:1935/test -f flv /dev/null";
+        systemd.services.rtmp-receive = {
+          description = "Receive an RTMP stream from mediamtx";
+          after = [ "rtmp-publish.service" ];
+          bindsTo = [ "rtmp-publish.service" ];
+          wantedBy = [ "multi-user.target" ];
+          serviceConfig = {
+            DynamicUser = true;
+            Restart = "on-failure";
+            RestartSec = "1s";
+            TimeoutStartSec = "10s";
+            ExecStart = "${lib.getBin pkgs.ffmpeg-headless}/bin/ffmpeg -y -re -i rtmp://localhost:1935/test -f flv /dev/null";
+          };
         };
       };
     };
-  };
 
-  testScript = ''
-    start_all()
+    testScript = ''
+      start_all()
 
-    machine.wait_for_unit("mediamtx.service")
-    machine.wait_for_unit("rtmp-publish.service")
-    machine.wait_for_unit("rtmp-receive.service")
-    machine.wait_for_open_port(9998)
-    machine.succeed("curl http://localhost:9998/metrics | grep '^rtmp_conns.*state=\"publish\".*1$'")
-    machine.succeed("curl http://localhost:9998/metrics | grep '^rtmp_conns.*state=\"read\".*1$'")
-  '';
-})
+      machine.wait_for_unit("mediamtx.service")
+      machine.wait_for_unit("rtmp-publish.service")
+      machine.sleep(10)
+      machine.wait_for_unit("rtmp-receive.service")
+      machine.wait_for_open_port(9998)
+      machine.succeed("curl http://localhost:9998/metrics | grep '^rtmp_conns.*state=\"publish\".*1$'")
+      machine.succeed("curl http://localhost:9998/metrics | grep '^rtmp_conns.*state=\"read\".*1$'")
+    '';
+  }
+)
diff --git a/nixos/tests/misc.nix b/nixos/tests/misc.nix
index e7842debba7a..83e0f46be3ec 100644
--- a/nixos/tests/misc.nix
+++ b/nixos/tests/misc.nix
@@ -1,164 +1,185 @@
 # Miscellaneous small tests that don't warrant their own VM run.
-
-import ./make-test-python.nix ({ lib, pkgs, ...} : let
-  foo = pkgs.writeText "foo" "Hello World";
-in {
-  name = "misc";
-  meta.maintainers = with lib.maintainers; [ eelco ];
-
-  nodes.machine =
-    { lib, ... }:
-    { swapDevices = lib.mkOverride 0
-        [ { device = "/root/swapfile"; size = 128; } ];
-      environment.variables.EDITOR = lib.mkOverride 0 "emacs";
-      documentation.nixos.enable = lib.mkOverride 0 true;
-      systemd.tmpfiles.rules = [ "d /tmp 1777 root root 10d" ];
-      systemd.tmpfiles.settings."10-test"."/tmp/somefile".d = {};
-      virtualisation.fileSystems = { "/tmp2" =
-        { fsType = "tmpfs";
-          options = [ "mode=1777" "noauto" ];
-        };
-        # Tests https://discourse.nixos.org/t/how-to-make-a-derivations-executables-have-the-s-permission/8555
-        "/user-mount/point" = {
-          device = "/user-mount/source";
-          fsType = "none";
-          options = [ "bind" "rw" "user" "noauto" ];
-        };
-        "/user-mount/denied-point" = {
-          device = "/user-mount/denied-source";
-          fsType = "none";
-          options = [ "bind" "rw" "noauto" ];
+{ pkgs, ... }:
+
+let
+  inherit (pkgs) lib;
+  tests = {
+    default = testsForPackage { nixPackage = pkgs.nix; };
+    lix = testsForPackage { nixPackage = pkgs.lix; };
+  };
+
+  testsForPackage = args: lib.recurseIntoAttrs {
+    # If the attribute is not named 'test'
+    # You will break all the universe on the release-*.nix side of things.
+    # `discoverTests` relies on `test` existence to perform a `callTest`.
+    test = testMiscFeatures args;
+    passthru.override = args': testsForPackage (args // args');
+  };
+
+  testMiscFeatures = { nixPackage, ... }: pkgs.testers.nixosTest (
+  let
+    foo = pkgs.writeText "foo" "Hello World";
+  in {
+    name = "misc";
+    meta.maintainers = with lib.maintainers; [ raitobezarius ];
+
+    nodes.machine =
+      { lib, ... }:
+      { swapDevices = lib.mkOverride 0
+          [ { device = "/root/swapfile"; size = 128; } ];
+        environment.variables.EDITOR = lib.mkOverride 0 "emacs";
+        documentation.nixos.enable = lib.mkOverride 0 true;
+        systemd.tmpfiles.rules = [ "d /tmp 1777 root root 10d" ];
+        systemd.tmpfiles.settings."10-test"."/tmp/somefile".d = {};
+        virtualisation.fileSystems = { "/tmp2" =
+          { fsType = "tmpfs";
+            options = [ "mode=1777" "noauto" ];
+          };
+          # Tests https://discourse.nixos.org/t/how-to-make-a-derivations-executables-have-the-s-permission/8555
+          "/user-mount/point" = {
+            device = "/user-mount/source";
+            fsType = "none";
+            options = [ "bind" "rw" "user" "noauto" ];
+          };
+          "/user-mount/denied-point" = {
+            device = "/user-mount/denied-source";
+            fsType = "none";
+            options = [ "bind" "rw" "noauto" ];
+          };
         };
+        systemd.automounts = lib.singleton
+          { wantedBy = [ "multi-user.target" ];
+            where = "/tmp2";
+          };
+        users.users.sybil = { isNormalUser = true; group = "wheel"; };
+        users.users.alice = { isNormalUser = true; };
+        security.sudo = { enable = true; wheelNeedsPassword = false; };
+        boot.kernel.sysctl."vm.swappiness" = 1;
+        boot.kernelParams = [ "vsyscall=emulate" ];
+        system.extraDependencies = [ foo ];
+
+        nix.package = nixPackage;
       };
-      systemd.automounts = lib.singleton
-        { wantedBy = [ "multi-user.target" ];
-          where = "/tmp2";
-        };
-      users.users.sybil = { isNormalUser = true; group = "wheel"; };
-      users.users.alice = { isNormalUser = true; };
-      security.sudo = { enable = true; wheelNeedsPassword = false; };
-      boot.kernel.sysctl."vm.swappiness" = 1;
-      boot.kernelParams = [ "vsyscall=emulate" ];
-      system.extraDependencies = [ foo ];
-    };
-
-  testScript =
-    ''
-      import json
-
-
-      def get_path_info(path):
-          result = machine.succeed(f"nix --option experimental-features nix-command path-info --json {path}")
-          parsed = json.loads(result)
-          return parsed
-
-
-      with subtest("nix-db"):
-          info = get_path_info("${foo}")
-          print(info)
-
-          if (
-              info[0]["narHash"]
-              != "sha256-BdMdnb/0eWy3EddjE83rdgzWWpQjfWPAj3zDIFMD3Ck="
-          ):
-              raise Exception("narHash not set")
-
-          if info[0]["narSize"] != 128:
-              raise Exception("narSize not set")
-
-      with subtest("nixos-version"):
-          machine.succeed("[ `nixos-version | wc -w` = 2 ]")
-
-      with subtest("nixos-rebuild"):
-          assert "NixOS module" in machine.succeed("nixos-rebuild --help")
-
-      with subtest("Sanity check for uid/gid assignment"):
-          assert "4" == machine.succeed("id -u messagebus").strip()
-          assert "4" == machine.succeed("id -g messagebus").strip()
-          assert "users:x:100:" == machine.succeed("getent group users").strip()
-
-      with subtest("Regression test for GMP aborts on QEMU."):
-          machine.succeed("expr 1 + 2")
-
-      with subtest("the swap file got created"):
-          machine.wait_for_unit("root-swapfile.swap")
-          machine.succeed("ls -l /root/swapfile | grep 134217728")
-
-      with subtest("whether kernel.poweroff_cmd is set"):
-          machine.succeed('[ -x "$(cat /proc/sys/kernel/poweroff_cmd)" ]')
-
-      with subtest("whether the io cgroupv2 controller is properly enabled"):
-          machine.succeed("grep -q '\\bio\\b' /sys/fs/cgroup/cgroup.controllers")
-
-      with subtest("whether we have a reboot record in wtmp"):
-          machine.shutdown
-          machine.wait_for_unit("multi-user.target")
-          machine.succeed("last | grep reboot >&2")
-
-      with subtest("whether we can override environment variables"):
-          machine.succeed('[ "$EDITOR" = emacs ]')
-
-      with subtest("whether hostname (and by extension nss_myhostname) works"):
-          assert "machine" == machine.succeed("hostname").strip()
-          assert "machine" == machine.succeed("hostname -s").strip()
-
-      with subtest("whether systemd-udevd automatically loads modules for our hardware"):
-          machine.succeed("systemctl start systemd-udev-settle.service")
-          machine.wait_for_unit("systemd-udev-settle.service")
-          assert "mousedev" in machine.succeed("lsmod")
-
-      with subtest("whether systemd-tmpfiles-clean works"):
-          machine.succeed(
-              "touch /tmp/foo", "systemctl start systemd-tmpfiles-clean", "[ -e /tmp/foo ]"
-          )
-          # move into the future
-          machine.succeed(
-              'date -s "@$(($(date +%s) + 1000000))"',
-              "systemctl start systemd-tmpfiles-clean",
-          )
-          machine.fail("[ -e /tmp/foo ]")
-
-      with subtest("whether systemd-tmpfiles settings works"):
-          machine.succeed("[ -e /tmp/somefile ]")
-
-      with subtest("whether automounting works"):
-          machine.fail("grep '/tmp2 tmpfs' /proc/mounts")
-          machine.succeed("touch /tmp2/x")
-          machine.succeed("grep '/tmp2 tmpfs' /proc/mounts")
-
-      with subtest(
-          "Whether mounting by a user is possible with the `user` option in fstab (#95444)"
-      ):
-          machine.succeed("mkdir -p /user-mount/source")
-          machine.succeed("touch /user-mount/source/file")
-          machine.succeed("chmod -R a+Xr /user-mount/source")
-          machine.succeed("mkdir /user-mount/point")
-          machine.succeed("chown alice:users /user-mount/point")
-          machine.succeed("su - alice -c 'mount /user-mount/point'")
-          machine.succeed("su - alice -c 'ls /user-mount/point/file'")
-      with subtest(
-          "Whether mounting by a user is denied without the `user` option in  fstab"
-      ):
-          machine.succeed("mkdir -p /user-mount/denied-source")
-          machine.succeed("touch /user-mount/denied-source/file")
-          machine.succeed("chmod -R a+Xr /user-mount/denied-source")
-          machine.succeed("mkdir /user-mount/denied-point")
-          machine.succeed("chown alice:users /user-mount/denied-point")
-          machine.fail("su - alice -c 'mount /user-mount/denied-point'")
-
-      with subtest("shell-vars"):
-          machine.succeed('[ -n "$NIX_PATH" ]')
-
-      with subtest("nix-db"):
-          machine.succeed("nix-store -qR /run/current-system | grep nixos-")
-
-      with subtest("Test sysctl"):
-          machine.wait_for_unit("systemd-sysctl.service")
-          assert "1" == machine.succeed("sysctl -ne vm.swappiness").strip()
-          machine.execute("sysctl vm.swappiness=60")
-          assert "60" == machine.succeed("sysctl -ne vm.swappiness").strip()
-
-      with subtest("Test boot parameters"):
-          assert "vsyscall=emulate" in machine.succeed("cat /proc/cmdline")
-    '';
-})
+
+    testScript =
+      ''
+        import json
+
+
+        def get_path_info(path):
+            result = machine.succeed(f"nix --option experimental-features nix-command path-info --json {path}")
+            parsed = json.loads(result)
+            return parsed
+
+
+        with subtest("nix-db"):
+            info = get_path_info("${foo}")
+            print(info)
+
+            if (
+                info[0]["narHash"]
+                != "sha256-BdMdnb/0eWy3EddjE83rdgzWWpQjfWPAj3zDIFMD3Ck="
+            ):
+                raise Exception("narHash not set")
+
+            if info[0]["narSize"] != 128:
+                raise Exception("narSize not set")
+
+        with subtest("nixos-version"):
+            machine.succeed("[ `nixos-version | wc -w` = 2 ]")
+
+        with subtest("nixos-rebuild"):
+            assert "NixOS module" in machine.succeed("nixos-rebuild --help")
+
+        with subtest("Sanity check for uid/gid assignment"):
+            assert "4" == machine.succeed("id -u messagebus").strip()
+            assert "4" == machine.succeed("id -g messagebus").strip()
+            assert "users:x:100:" == machine.succeed("getent group users").strip()
+
+        with subtest("Regression test for GMP aborts on QEMU."):
+            machine.succeed("expr 1 + 2")
+
+        with subtest("the swap file got created"):
+            machine.wait_for_unit("root-swapfile.swap")
+            machine.succeed("ls -l /root/swapfile | grep 134217728")
+
+        with subtest("whether kernel.poweroff_cmd is set"):
+            machine.succeed('[ -x "$(cat /proc/sys/kernel/poweroff_cmd)" ]')
+
+        with subtest("whether the io cgroupv2 controller is properly enabled"):
+            machine.succeed("grep -q '\\bio\\b' /sys/fs/cgroup/cgroup.controllers")
+
+        with subtest("whether we have a reboot record in wtmp"):
+            machine.shutdown
+            machine.wait_for_unit("multi-user.target")
+            machine.succeed("last | grep reboot >&2")
+
+        with subtest("whether we can override environment variables"):
+            machine.succeed('[ "$EDITOR" = emacs ]')
+
+        with subtest("whether hostname (and by extension nss_myhostname) works"):
+            assert "machine" == machine.succeed("hostname").strip()
+            assert "machine" == machine.succeed("hostname -s").strip()
+
+        with subtest("whether systemd-udevd automatically loads modules for our hardware"):
+            machine.succeed("systemctl start systemd-udev-settle.service")
+            machine.wait_for_unit("systemd-udev-settle.service")
+            assert "mousedev" in machine.succeed("lsmod")
+
+        with subtest("whether systemd-tmpfiles-clean works"):
+            machine.succeed(
+                "touch /tmp/foo", "systemctl start systemd-tmpfiles-clean", "[ -e /tmp/foo ]"
+            )
+            # move into the future
+            machine.succeed(
+                'date -s "@$(($(date +%s) + 1000000))"',
+                "systemctl start systemd-tmpfiles-clean",
+            )
+            machine.fail("[ -e /tmp/foo ]")
+
+        with subtest("whether systemd-tmpfiles settings works"):
+            machine.succeed("[ -e /tmp/somefile ]")
+
+        with subtest("whether automounting works"):
+            machine.fail("grep '/tmp2 tmpfs' /proc/mounts")
+            machine.succeed("touch /tmp2/x")
+            machine.succeed("grep '/tmp2 tmpfs' /proc/mounts")
+
+        with subtest(
+            "Whether mounting by a user is possible with the `user` option in fstab (#95444)"
+        ):
+            machine.succeed("mkdir -p /user-mount/source")
+            machine.succeed("touch /user-mount/source/file")
+            machine.succeed("chmod -R a+Xr /user-mount/source")
+            machine.succeed("mkdir /user-mount/point")
+            machine.succeed("chown alice:users /user-mount/point")
+            machine.succeed("su - alice -c 'mount /user-mount/point'")
+            machine.succeed("su - alice -c 'ls /user-mount/point/file'")
+        with subtest(
+            "Whether mounting by a user is denied without the `user` option in  fstab"
+        ):
+            machine.succeed("mkdir -p /user-mount/denied-source")
+            machine.succeed("touch /user-mount/denied-source/file")
+            machine.succeed("chmod -R a+Xr /user-mount/denied-source")
+            machine.succeed("mkdir /user-mount/denied-point")
+            machine.succeed("chown alice:users /user-mount/denied-point")
+            machine.fail("su - alice -c 'mount /user-mount/denied-point'")
+
+        with subtest("shell-vars"):
+            machine.succeed('[ -n "$NIX_PATH" ]')
+
+        with subtest("nix-db"):
+            machine.succeed("nix-store -qR /run/current-system | grep nixos-")
+
+        with subtest("Test sysctl"):
+            machine.wait_for_unit("systemd-sysctl.service")
+            assert "1" == machine.succeed("sysctl -ne vm.swappiness").strip()
+            machine.execute("sysctl vm.swappiness=60")
+            assert "60" == machine.succeed("sysctl -ne vm.swappiness").strip()
+
+        with subtest("Test boot parameters"):
+            assert "vsyscall=emulate" in machine.succeed("cat /proc/cmdline")
+      '';
+  });
+  in
+  tests
diff --git a/nixos/tests/mumble.nix b/nixos/tests/mumble.nix
index 8eee454721a1..12fa00b79bbf 100644
--- a/nixos/tests/mumble.nix
+++ b/nixos/tests/mumble.nix
@@ -15,7 +15,7 @@ in
 {
   name = "mumble";
   meta = with pkgs.lib.maintainers; {
-    maintainers = [ thoughtpolice eelco ];
+    maintainers = [ thoughtpolice ];
   };
 
   nodes = {
diff --git a/nixos/tests/munin.nix b/nixos/tests/munin.nix
index e371b2dffa6b..7b7bf6f41c04 100644
--- a/nixos/tests/munin.nix
+++ b/nixos/tests/munin.nix
@@ -4,7 +4,7 @@
 import ./make-test-python.nix ({ pkgs, ...} : {
   name = "munin";
   meta = with pkgs.lib.maintainers; {
-    maintainers = [ domenkozar eelco ];
+    maintainers = [ domenkozar ];
   };
 
   nodes = {
diff --git a/nixos/tests/mysql/common.nix b/nixos/tests/mysql/common.nix
index 1cf52347f4c7..ad54b0e00c1b 100644
--- a/nixos/tests/mysql/common.nix
+++ b/nixos/tests/mysql/common.nix
@@ -4,7 +4,7 @@
     inherit (pkgs) mysql80;
   };
   perconaPackages = {
-    inherit (pkgs) percona-server_8_0;
+    inherit (pkgs) percona-server_lts percona-server_innovation;
   };
   mkTestName = pkg: "mariadb_${builtins.replaceStrings ["."] [""] (lib.versions.majorMinor pkg.version)}";
 }
diff --git a/nixos/tests/mysql/mysql.nix b/nixos/tests/mysql/mysql.nix
index 0a61f9d38fe2..093da4f46aa1 100644
--- a/nixos/tests/mysql/mysql.nix
+++ b/nixos/tests/mysql/mysql.nix
@@ -146,6 +146,6 @@ in
   }) mariadbPackages)
   // (lib.mapAttrs (_: package: makeMySQLTest {
     inherit package;
-    name = "percona_8_0";
+    name = builtins.replaceStrings ["-"] ["_"] package.pname;
     hasMroonga = false; useSocketAuth = false;
   }) perconaPackages)
diff --git a/nixos/tests/nat.nix b/nixos/tests/nat.nix
index 0b617cea7774..8b682a8b3aa7 100644
--- a/nixos/tests/nat.nix
+++ b/nixos/tests/nat.nix
@@ -22,7 +22,7 @@ import ./make-test-python.nix ({ pkgs, lib, withFirewall, nftables ? false, ...
     name = "nat" + (lib.optionalString nftables "Nftables")
                  + (if withFirewall then "WithFirewall" else "Standalone");
     meta = with pkgs.lib.maintainers; {
-      maintainers = [ eelco rob ];
+      maintainers = [ rob ];
     };
 
     nodes =
diff --git a/nixos/tests/nfs/simple.nix b/nixos/tests/nfs/simple.nix
index 026da9563bc0..077c1d410935 100644
--- a/nixos/tests/nfs/simple.nix
+++ b/nixos/tests/nfs/simple.nix
@@ -20,7 +20,7 @@ in
 {
   name = "nfs";
   meta = with pkgs.lib.maintainers; {
-    maintainers = [ eelco ];
+    maintainers = [ ];
   };
 
   nodes =
diff --git a/nixos/tests/openssh.nix b/nixos/tests/openssh.nix
index 2684b6f45e84..140723a2df81 100644
--- a/nixos/tests/openssh.nix
+++ b/nixos/tests/openssh.nix
@@ -5,7 +5,7 @@ let inherit (import ./ssh-keys.nix pkgs)
 in {
   name = "openssh";
   meta = with pkgs.lib.maintainers; {
-    maintainers = [ aszlig eelco ];
+    maintainers = [ aszlig ];
   };
 
   nodes = {
diff --git a/nixos/tests/patroni.nix b/nixos/tests/patroni.nix
index 1f15cd59677a..68fce4051553 100644
--- a/nixos/tests/patroni.nix
+++ b/nixos/tests/patroni.nix
@@ -155,7 +155,7 @@ import ./make-test-python.nix ({ pkgs, lib, ... }:
               print(node.succeed("patronictl list cluster1"))
               node.wait_until_succeeds(f"[ $(patronictl list -f json cluster1 | jq 'length') == {expected_replicas + 1} ]")
               node.wait_until_succeeds("[ $(patronictl list -f json cluster1 | jq 'map(select(.Role | test(\"^Leader$\"))) | map(select(.State | test(\"^running$\"))) | length') == 1 ]")
-              node.wait_until_succeeds(f"[ $(patronictl list -f json cluster1 | jq 'map(select(.Role | test(\"^Replica$\"))) | map(select(.State | test(\"^running$\"))) | length') == {expected_replicas} ]")
+              node.wait_until_succeeds(f"[ $(patronictl list -f json cluster1 | jq 'map(select(.Role | test(\"^Replica$\"))) | map(select(.State | test(\"^streaming$\"))) | length') == {expected_replicas} ]")
               print(node.succeed("patronictl list cluster1"))
           client.wait_until_succeeds("psql -h 127.0.0.1 -U postgres --command='select 1;'")
 
diff --git a/nixos/tests/pgvecto-rs.nix b/nixos/tests/pgvecto-rs.nix
index cd871dab6a0f..8d9d6c0b88f5 100644
--- a/nixos/tests/pgvecto-rs.nix
+++ b/nixos/tests/pgvecto-rs.nix
@@ -66,7 +66,7 @@ let
     '';
 
   };
-  applicablePostgresqlVersions = filterAttrs (_: value: versionAtLeast value.version "12") postgresql-versions;
+  applicablePostgresqlVersions = filterAttrs (_: value: versionAtLeast value.version "14") postgresql-versions;
 in
 mapAttrs'
   (name: package: {
diff --git a/nixos/tests/postgresql-jit.nix b/nixos/tests/postgresql-jit.nix
index baf26b8da2b3..f4b1d07a7faf 100644
--- a/nixos/tests/postgresql-jit.nix
+++ b/nixos/tests/postgresql-jit.nix
@@ -1,6 +1,7 @@
 { system ? builtins.currentSystem
 , config ? {}
 , pkgs ? import ../.. { inherit system config; }
+, package ? null
 }:
 
 with import ../lib/testing-python.nix { inherit system pkgs; };
@@ -9,14 +10,17 @@ let
   inherit (pkgs) lib;
   packages = builtins.attrNames (import ../../pkgs/servers/sql/postgresql pkgs);
 
-  mkJitTest = packageName: makeTest {
-    name = "${packageName}";
+  mkJitTestFromName = name:
+    mkJitTest pkgs.${name};
+
+  mkJitTest = package: makeTest {
+    name = package.name;
     meta.maintainers = with lib.maintainers; [ ma27 ];
     nodes.machine = { pkgs, lib, ... }: {
       services.postgresql = {
+        inherit package;
         enable = true;
         enableJIT = true;
-        package = pkgs.${packageName};
         initialScript = pkgs.writeText "init.sql" ''
           create table demo (id int);
           insert into demo (id) select generate_series(1, 5);
@@ -45,4 +49,7 @@ let
     '';
   };
 in
-lib.genAttrs packages mkJitTest
+if package == null then
+  lib.genAttrs packages mkJitTestFromName
+else
+  mkJitTest package
diff --git a/nixos/tests/postgresql-wal-receiver.nix b/nixos/tests/postgresql-wal-receiver.nix
index b0bd7711dbcd..ab2ab4ad0d4f 100644
--- a/nixos/tests/postgresql-wal-receiver.nix
+++ b/nixos/tests/postgresql-wal-receiver.nix
@@ -1,6 +1,7 @@
 { system ? builtins.currentSystem,
   config ? {},
-  pkgs ? import ../.. { inherit system config; }
+  pkgs ? import ../.. { inherit system config; },
+  package ? null
 }:
 
 with import ../lib/testing-python.nix { inherit system pkgs; };
@@ -9,111 +10,110 @@ let
   lib = pkgs.lib;
 
   # Makes a test for a PostgreSQL package, given by name and looked up from `pkgs`.
-  makePostgresqlWalReceiverTest = postgresqlPackage:
+  makeTestAttribute = name:
   {
-    name = postgresqlPackage;
-    value =
-      let
-        pkg = pkgs."${postgresqlPackage}";
-        postgresqlDataDir = "/var/lib/postgresql/${pkg.psqlSchema}";
-        replicationUser = "wal_receiver_user";
-        replicationSlot = "wal_receiver_slot";
-        replicationConn = "postgresql://${replicationUser}@localhost";
-        baseBackupDir = "/tmp/pg_basebackup";
-        walBackupDir = "/tmp/pg_wal";
-        atLeast12 = lib.versionAtLeast pkg.version "12.0";
-
-        recoveryFile = if atLeast12
-            then pkgs.writeTextDir "recovery.signal" ""
-            else pkgs.writeTextDir "recovery.conf" "restore_command = 'cp ${walBackupDir}/%f %p'";
-
-      in makeTest {
-        name = "postgresql-wal-receiver-${postgresqlPackage}";
-        meta.maintainers = with lib.maintainers; [ pacien ];
-
-        nodes.machine = { ... }: {
-          services.postgresql = {
-            package = pkg;
-            enable = true;
-            settings = lib.mkMerge [
-              {
-                wal_level = "archive"; # alias for replica on pg >= 9.6
-                max_wal_senders = 10;
-                max_replication_slots = 10;
-              }
-              (lib.mkIf atLeast12 {
-                restore_command = "cp ${walBackupDir}/%f %p";
-                recovery_end_command = "touch recovery.done";
-              })
-            ];
-            authentication = ''
-              host replication ${replicationUser} all trust
-            '';
-            initialScript = pkgs.writeText "init.sql" ''
-              create user ${replicationUser} replication;
-              select * from pg_create_physical_replication_slot('${replicationSlot}');
-            '';
-          };
+    inherit name;
+    value = makePostgresqlWalReceiverTest pkgs."${name}";
+  };
+
+  makePostgresqlWalReceiverTest = pkg:
+    let
+      postgresqlDataDir = "/var/lib/postgresql/${pkg.psqlSchema}";
+      replicationUser = "wal_receiver_user";
+      replicationSlot = "wal_receiver_slot";
+      replicationConn = "postgresql://${replicationUser}@localhost";
+      baseBackupDir = "/tmp/pg_basebackup";
+      walBackupDir = "/tmp/pg_wal";
+
+      recoveryFile = pkgs.writeTextDir "recovery.signal" "";
 
-          services.postgresqlWalReceiver.receivers.main = {
-            postgresqlPackage = pkg;
-            connection = replicationConn;
-            slot = replicationSlot;
-            directory = walBackupDir;
+    in makeTest {
+      name = "postgresql-wal-receiver-${pkg.name}";
+      meta.maintainers = with lib.maintainers; [ pacien ];
+
+      nodes.machine = { ... }: {
+        services.postgresql = {
+          package = pkg;
+          enable = true;
+          settings = {
+            max_replication_slots = 10;
+            max_wal_senders = 10;
+            recovery_end_command = "touch recovery.done";
+            restore_command = "cp ${walBackupDir}/%f %p";
+            wal_level = "archive"; # alias for replica on pg >= 9.6
           };
-          # This is only to speedup test, it isn't time racing. Service is set to autorestart always,
-          # default 60sec is fine for real system, but is too much for a test
-          systemd.services.postgresql-wal-receiver-main.serviceConfig.RestartSec = lib.mkForce 5;
+          authentication = ''
+            host replication ${replicationUser} all trust
+          '';
+          initialScript = pkgs.writeText "init.sql" ''
+            create user ${replicationUser} replication;
+            select * from pg_create_physical_replication_slot('${replicationSlot}');
+          '';
         };
 
-        testScript = ''
-          # make an initial base backup
-          machine.wait_for_unit("postgresql")
-          machine.wait_for_unit("postgresql-wal-receiver-main")
-          # WAL receiver healthchecks PG every 5 seconds, so let's be sure they have connected each other
-          # required only for 9.4
-          machine.sleep(5)
-          machine.succeed(
-              "${pkg}/bin/pg_basebackup --dbname=${replicationConn} --pgdata=${baseBackupDir}"
-          )
-
-          # create a dummy table with 100 records
-          machine.succeed(
-              "sudo -u postgres psql --command='create table dummy as select * from generate_series(1, 100) as val;'"
-          )
-
-          # stop postgres and destroy data
-          machine.systemctl("stop postgresql")
-          machine.systemctl("stop postgresql-wal-receiver-main")
-          machine.succeed("rm -r ${postgresqlDataDir}/{base,global,pg_*}")
-
-          # restore the base backup
-          machine.succeed(
-              "cp -r ${baseBackupDir}/* ${postgresqlDataDir} && chown postgres:postgres -R ${postgresqlDataDir}"
-          )
-
-          # prepare WAL and recovery
-          machine.succeed("chmod a+rX -R ${walBackupDir}")
-          machine.execute(
-              "for part in ${walBackupDir}/*.partial; do mv $part ''${part%%.*}; done"
-          )  # make use of partial segments too
-          machine.succeed(
-              "cp ${recoveryFile}/* ${postgresqlDataDir}/ && chmod 666 ${postgresqlDataDir}/recovery*"
-          )
-
-          # replay WAL
-          machine.systemctl("start postgresql")
-          machine.wait_for_file("${postgresqlDataDir}/recovery.done")
-          machine.systemctl("restart postgresql")
-          machine.wait_for_unit("postgresql")
-
-          # check that our records have been restored
-          machine.succeed(
-              "test $(sudo -u postgres psql --pset='pager=off' --tuples-only --command='select count(distinct val) from dummy;') -eq 100"
-          )
-        '';
+        services.postgresqlWalReceiver.receivers.main = {
+          postgresqlPackage = pkg;
+          connection = replicationConn;
+          slot = replicationSlot;
+          directory = walBackupDir;
+        };
+        # This is only to speedup test, it isn't time racing. Service is set to autorestart always,
+        # default 60sec is fine for real system, but is too much for a test
+        systemd.services.postgresql-wal-receiver-main.serviceConfig.RestartSec = lib.mkForce 5;
       };
+
+      testScript = ''
+        # make an initial base backup
+        machine.wait_for_unit("postgresql")
+        machine.wait_for_unit("postgresql-wal-receiver-main")
+        # WAL receiver healthchecks PG every 5 seconds, so let's be sure they have connected each other
+        # required only for 9.4
+        machine.sleep(5)
+        machine.succeed(
+            "${pkg}/bin/pg_basebackup --dbname=${replicationConn} --pgdata=${baseBackupDir}"
+        )
+
+        # create a dummy table with 100 records
+        machine.succeed(
+            "sudo -u postgres psql --command='create table dummy as select * from generate_series(1, 100) as val;'"
+        )
+
+        # stop postgres and destroy data
+        machine.systemctl("stop postgresql")
+        machine.systemctl("stop postgresql-wal-receiver-main")
+        machine.succeed("rm -r ${postgresqlDataDir}/{base,global,pg_*}")
+
+        # restore the base backup
+        machine.succeed(
+            "cp -r ${baseBackupDir}/* ${postgresqlDataDir} && chown postgres:postgres -R ${postgresqlDataDir}"
+        )
+
+        # prepare WAL and recovery
+        machine.succeed("chmod a+rX -R ${walBackupDir}")
+        machine.execute(
+            "for part in ${walBackupDir}/*.partial; do mv $part ''${part%%.*}; done"
+        )  # make use of partial segments too
+        machine.succeed(
+            "cp ${recoveryFile}/* ${postgresqlDataDir}/ && chmod 666 ${postgresqlDataDir}/recovery*"
+        )
+
+        # replay WAL
+        machine.systemctl("start postgresql")
+        machine.wait_for_file("${postgresqlDataDir}/recovery.done")
+        machine.systemctl("restart postgresql")
+        machine.wait_for_unit("postgresql")
+
+        # check that our records have been restored
+        machine.succeed(
+            "test $(sudo -u postgres psql --pset='pager=off' --tuples-only --command='select count(distinct val) from dummy;') -eq 100"
+        )
+      '';
     };
 
-# Maps the generic function over all attributes of PostgreSQL packages
-in builtins.listToAttrs (map makePostgresqlWalReceiverTest (builtins.attrNames (import ../../pkgs/servers/sql/postgresql pkgs)))
+in
+if package == null then
+  # all-tests.nix: Maps the generic function over all attributes of PostgreSQL packages
+  builtins.listToAttrs (map makeTestAttribute (builtins.attrNames (import ../../pkgs/servers/sql/postgresql pkgs)))
+else
+  # Called directly from <package>.tests
+  makePostgresqlWalReceiverTest package
diff --git a/nixos/tests/printing.nix b/nixos/tests/printing.nix
index 29c5d810f215..b413996c67db 100644
--- a/nixos/tests/printing.nix
+++ b/nixos/tests/printing.nix
@@ -9,7 +9,7 @@ import ./make-test-python.nix (
 {
   name = "printing";
   meta = with pkgs.lib.maintainers; {
-    maintainers = [ domenkozar eelco matthewbauer ];
+    maintainers = [ domenkozar matthewbauer ];
   };
 
   nodes.server = { ... }: {
diff --git a/nixos/tests/private-gpt.nix b/nixos/tests/private-gpt.nix
new file mode 100644
index 000000000000..d19e167cc303
--- /dev/null
+++ b/nixos/tests/private-gpt.nix
@@ -0,0 +1,27 @@
+import ./make-test-python.nix ({ pkgs, lib, ... }:
+let
+  mainPort = "8001";
+in
+{
+  name = "private-gpt";
+  meta = with lib.maintainers; {
+    maintainers = [ drupol ];
+  };
+
+  nodes = {
+    machine = { ... }: {
+      services.private-gpt = {
+        enable = true;
+      };
+    };
+  };
+
+  testScript = ''
+    machine.start()
+
+    machine.wait_for_unit("private-gpt.service")
+    machine.wait_for_open_port(${mainPort})
+
+    machine.succeed("curl http://127.0.0.1:${mainPort}")
+  '';
+})
diff --git a/nixos/tests/proxy.nix b/nixos/tests/proxy.nix
index f8a3d576903e..ce7131b09a8a 100644
--- a/nixos/tests/proxy.nix
+++ b/nixos/tests/proxy.nix
@@ -12,7 +12,7 @@ let
 in {
   name = "proxy";
   meta = with pkgs.lib.maintainers; {
-    maintainers = [ eelco ];
+    maintainers = [ ];
   };
 
   nodes = {
diff --git a/nixos/tests/quake3.nix b/nixos/tests/quake3.nix
index 2d8c5207001c..4b7ca03b365b 100644
--- a/nixos/tests/quake3.nix
+++ b/nixos/tests/quake3.nix
@@ -32,7 +32,7 @@ in
 rec {
   name = "quake3";
   meta = with lib.maintainers; {
-    maintainers = [ domenkozar eelco ];
+    maintainers = [ domenkozar ];
   };
 
   # TODO: lcov doesn't work atm
diff --git a/nixos/tests/rabbitmq.nix b/nixos/tests/rabbitmq.nix
index 040679e68d98..4b8921662b7f 100644
--- a/nixos/tests/rabbitmq.nix
+++ b/nixos/tests/rabbitmq.nix
@@ -9,7 +9,7 @@ in
 {
   name = "rabbitmq";
   meta = with pkgs.lib.maintainers; {
-    maintainers = [ eelco offline ];
+    maintainers = [ offline ];
   };
 
   nodes.machine = {
diff --git a/nixos/tests/samba.nix b/nixos/tests/samba.nix
index 252c3dd9c76e..53cdbbe1c40f 100644
--- a/nixos/tests/samba.nix
+++ b/nixos/tests/samba.nix
@@ -3,7 +3,7 @@ import ./make-test-python.nix ({ pkgs, ... }:
 {
   name = "samba";
 
-  meta.maintainers = [ pkgs.lib.maintainers.eelco ];
+  meta.maintainers = [ ];
 
   nodes =
     { client =
diff --git a/nixos/tests/simple.nix b/nixos/tests/simple.nix
index c36287b4e843..afd49d481a65 100644
--- a/nixos/tests/simple.nix
+++ b/nixos/tests/simple.nix
@@ -1,7 +1,7 @@
 import ./make-test-python.nix ({ pkgs, ...} : {
   name = "simple";
   meta = with pkgs.lib.maintainers; {
-    maintainers = [ eelco ];
+    maintainers = [ ];
   };
 
   nodes.machine = { ... }: {
diff --git a/nixos/tests/smokeping.nix b/nixos/tests/smokeping.nix
index 04f813964291..fe1ecad9969b 100644
--- a/nixos/tests/smokeping.nix
+++ b/nixos/tests/smokeping.nix
@@ -11,7 +11,6 @@ import ./make-test-python.nix ({ pkgs, ...} : {
         networking.domain = "example.com"; # FQDN: sm.example.com
         services.smokeping = {
           enable = true;
-          port = 8081;
           mailHost = "127.0.0.2";
           probeConfig = ''
             + FPing
@@ -25,12 +24,19 @@ import ./make-test-python.nix ({ pkgs, ...} : {
   testScript = ''
     start_all()
     sm.wait_for_unit("smokeping")
-    sm.wait_for_unit("thttpd")
+    sm.wait_for_unit("nginx")
     sm.wait_for_file("/var/lib/smokeping/data/Local/LocalMachine.rrd")
-    sm.succeed("curl -s -f localhost:8081/smokeping.fcgi?target=Local")
+    sm.succeed("curl -s -f localhost/smokeping.fcgi?target=Local")
     # Check that there's a helpful page without explicit path as well.
-    sm.succeed("curl -s -f localhost:8081")
+    sm.succeed("curl -s -f localhost")
     sm.succeed("ls /var/lib/smokeping/cache/Local/LocalMachine_mini.png")
     sm.succeed("ls /var/lib/smokeping/cache/index.html")
+
+    # stop and start the service like nixos-rebuild would do
+    # see https://github.com/NixOS/nixpkgs/issues/265953)
+    sm.succeed("systemctl stop smokeping")
+    sm.succeed("systemctl start smokeping")
+    # ensure all services restarted properly
+    sm.succeed("systemctl --failed | grep -q '0 loaded units listed'")
   '';
 })
diff --git a/nixos/tests/stalwart-mail.nix b/nixos/tests/stalwart-mail.nix
index 634c0e2e3926..581090cd70f4 100644
--- a/nixos/tests/stalwart-mail.nix
+++ b/nixos/tests/stalwart-mail.nix
@@ -40,12 +40,14 @@ in import ./make-test-python.nix ({ lib, ... }: {
           };
         };
 
-        session.auth.mechanisms = [ "PLAIN" ];
-        session.auth.directory = "in-memory";
-        storage.directory = "in-memory";  # shared with imap
+        resolver.public-suffix = [ ];  # do not fetch from web in sandbox
 
-        session.rcpt.directory = "in-memory";
-        queue.outbound.next-hop = [ "local" ];
+        session.auth.mechanisms = "[plain]";
+        session.auth.directory = "'in-memory'";
+        storage.directory = "in-memory";
+
+        session.rcpt.directory = "'in-memory'";
+        queue.outbound.next-hop = "'local'";
 
         directory."in-memory" = {
           type = "memory";
diff --git a/nixos/tests/stub-ld.nix b/nixos/tests/stub-ld.nix
index 25161301741b..72b0aebf3e6c 100644
--- a/nixos/tests/stub-ld.nix
+++ b/nixos/tests/stub-ld.nix
@@ -45,10 +45,10 @@ import ./make-test-python.nix ({ lib, pkgs, ... }: {
           ${if32 "machine.succeed('test -L /${libDir32}/${ldsoBasename32}')"}
 
       with subtest("Try FHS executable"):
-          machine.copy_from_host('${test-exec.${pkgs.system}}','test-exec')
+          machine.copy_from_host('${test-exec.${pkgs.stdenv.hostPlatform.system}}','test-exec')
           machine.succeed('if test-exec/${exec-name} 2>outfile; then false; else [ $? -eq 127 ];fi')
           machine.succeed('grep -qi nixos outfile')
-          ${if32 "machine.copy_from_host('${test-exec.${pkgs32.system}}','test-exec32')"}
+          ${if32 "machine.copy_from_host('${test-exec.${pkgs32.stdenv.hostPlatform.system}}','test-exec32')"}
           ${if32 "machine.succeed('if test-exec32/${exec-name} 2>outfile32; then false; else [ $? -eq 127 ];fi')"}
           ${if32 "machine.succeed('grep -qi nixos outfile32')"}
 
diff --git a/nixos/tests/switch-test.nix b/nixos/tests/switch-test.nix
index 4a7bcd5a8226..d90e5bb088ce 100644
--- a/nixos/tests/switch-test.nix
+++ b/nixos/tests/switch-test.nix
@@ -1,6 +1,6 @@
 # Test configuration switching.
 
-import ./make-test-python.nix ({ lib, pkgs, ...} : let
+import ./make-test-python.nix ({ lib, pkgs, ng, ...} : let
 
   # Simple service that can either be socket-activated or that will
   # listen on port 1234 if not socket-activated.
@@ -48,6 +48,11 @@ in {
 
   nodes = {
     machine = { pkgs, lib, ... }: {
+      system.switch = {
+        enable = !ng;
+        enableNg = ng;
+      };
+
       environment.systemPackages = [ pkgs.socat ]; # for the socket activation stuff
       users.mutableUsers = false;
 
diff --git a/nixos/tests/systemd-confinement.nix b/nixos/tests/systemd-confinement.nix
deleted file mode 100644
index bde5b770ea50..000000000000
--- a/nixos/tests/systemd-confinement.nix
+++ /dev/null
@@ -1,184 +0,0 @@
-import ./make-test-python.nix {
-  name = "systemd-confinement";
-
-  nodes.machine = { pkgs, lib, ... }: let
-    testServer = pkgs.writeScript "testserver.sh" ''
-      #!${pkgs.runtimeShell}
-      export PATH=${lib.escapeShellArg "${pkgs.coreutils}/bin"}
-      ${lib.escapeShellArg pkgs.runtimeShell} 2>&1
-      echo "exit-status:$?"
-    '';
-
-    testClient = pkgs.writeScriptBin "chroot-exec" ''
-      #!${pkgs.runtimeShell} -e
-      output="$(echo "$@" | nc -NU "/run/test$(< /teststep).sock")"
-      ret="$(echo "$output" | sed -nre '$s/^exit-status:([0-9]+)$/\1/p')"
-      echo "$output" | head -n -1
-      exit "''${ret:-1}"
-    '';
-
-    mkTestStep = num: {
-      testScript,
-      config ? {},
-      serviceName ? "test${toString num}",
-    }: {
-      systemd.sockets.${serviceName} = {
-        description = "Socket for Test Service ${toString num}";
-        wantedBy = [ "sockets.target" ];
-        socketConfig.ListenStream = "/run/test${toString num}.sock";
-        socketConfig.Accept = true;
-      };
-
-      systemd.services."${serviceName}@" = {
-        description = "Confined Test Service ${toString num}";
-        confinement = (config.confinement or {}) // { enable = true; };
-        serviceConfig = (config.serviceConfig or {}) // {
-          ExecStart = testServer;
-          StandardInput = "socket";
-        };
-      } // removeAttrs config [ "confinement" "serviceConfig" ];
-
-      __testSteps = lib.mkOrder num (''
-        machine.succeed("echo ${toString num} > /teststep")
-      '' + testScript);
-    };
-
-  in {
-    imports = lib.imap1 mkTestStep [
-      { config.confinement.mode = "chroot-only";
-        testScript = ''
-          with subtest("chroot-only confinement"):
-              paths = machine.succeed('chroot-exec ls -1 / | paste -sd,').strip()
-              assert_eq(paths, "bin,nix,run")
-              uid = machine.succeed('chroot-exec id -u').strip()
-              assert_eq(uid, "0")
-              machine.succeed("chroot-exec chown 65534 /bin")
-        '';
-      }
-      { testScript = ''
-          with subtest("full confinement with APIVFS"):
-              machine.fail("chroot-exec ls -l /etc")
-              machine.fail("chroot-exec chown 65534 /bin")
-              assert_eq(machine.succeed('chroot-exec id -u').strip(), "0")
-              machine.succeed("chroot-exec chown 0 /bin")
-        '';
-      }
-      { config.serviceConfig.BindReadOnlyPaths = [ "/etc" ];
-        testScript = ''
-          with subtest("check existence of bind-mounted /etc"):
-              passwd = machine.succeed('chroot-exec cat /etc/passwd').strip()
-              assert len(passwd) > 0, "/etc/passwd must not be empty"
-        '';
-      }
-      { config.serviceConfig.User = "chroot-testuser";
-        config.serviceConfig.Group = "chroot-testgroup";
-        testScript = ''
-          with subtest("check if User/Group really runs as non-root"):
-              machine.succeed("chroot-exec ls -l /dev")
-              uid = machine.succeed('chroot-exec id -u').strip()
-              assert uid != "0", "UID of chroot-testuser shouldn't be 0"
-              machine.fail("chroot-exec touch /bin/test")
-        '';
-      }
-      (let
-        symlink = pkgs.runCommand "symlink" {
-          target = pkgs.writeText "symlink-target" "got me\n";
-        } "ln -s \"$target\" \"$out\"";
-      in {
-        config.confinement.packages = lib.singleton symlink;
-        testScript = ''
-          with subtest("check if symlinks are properly bind-mounted"):
-              machine.fail("chroot-exec test -e /etc")
-              text = machine.succeed('chroot-exec cat ${symlink}').strip()
-              assert_eq(text, "got me")
-        '';
-      })
-      { config.serviceConfig.User = "chroot-testuser";
-        config.serviceConfig.Group = "chroot-testgroup";
-        config.serviceConfig.StateDirectory = "testme";
-        testScript = ''
-          with subtest("check if StateDirectory works"):
-              machine.succeed("chroot-exec touch /tmp/canary")
-              machine.succeed('chroot-exec "echo works > /var/lib/testme/foo"')
-              machine.succeed('test "$(< /var/lib/testme/foo)" = works')
-              machine.succeed("test ! -e /tmp/canary")
-        '';
-      }
-      { testScript = ''
-          with subtest("check if /bin/sh works"):
-              machine.succeed(
-                  "chroot-exec test -e /bin/sh",
-                  'test "$(chroot-exec \'/bin/sh -c "echo bar"\')" = bar',
-              )
-        '';
-      }
-      { config.confinement.binSh = null;
-        testScript = ''
-          with subtest("check if suppressing /bin/sh works"):
-              machine.succeed("chroot-exec test ! -e /bin/sh")
-              machine.succeed('test "$(chroot-exec \'/bin/sh -c "echo foo"\')" != foo')
-        '';
-      }
-      { config.confinement.binSh = "${pkgs.hello}/bin/hello";
-        testScript = ''
-          with subtest("check if we can set /bin/sh to something different"):
-              machine.succeed("chroot-exec test -e /bin/sh")
-              machine.succeed('test "$(chroot-exec /bin/sh -g foo)" = foo')
-        '';
-      }
-      { config.environment.FOOBAR = pkgs.writeText "foobar" "eek\n";
-        testScript = ''
-          with subtest("check if only Exec* dependencies are included"):
-              machine.succeed('test "$(chroot-exec \'cat "$FOOBAR"\')" != eek')
-        '';
-      }
-      { config.environment.FOOBAR = pkgs.writeText "foobar" "eek\n";
-        config.confinement.fullUnit = true;
-        testScript = ''
-          with subtest("check if all unit dependencies are included"):
-              machine.succeed('test "$(chroot-exec \'cat "$FOOBAR"\')" = eek')
-        '';
-      }
-      { serviceName = "shipped-unitfile";
-        config.confinement.mode = "chroot-only";
-        testScript = ''
-          with subtest("check if shipped unit file still works"):
-              machine.succeed(
-                  'chroot-exec \'kill -9 $$ 2>&1 || :\' | '
-                  'grep -q "Too many levels of symbolic links"'
-              )
-        '';
-      }
-    ];
-
-    options.__testSteps = lib.mkOption {
-      type = lib.types.lines;
-      description = "All of the test steps combined as a single script.";
-    };
-
-    config.environment.systemPackages = lib.singleton testClient;
-    config.systemd.packages = lib.singleton (pkgs.writeTextFile {
-      name = "shipped-unitfile";
-      destination = "/etc/systemd/system/shipped-unitfile@.service";
-      text = ''
-        [Service]
-        SystemCallFilter=~kill
-        SystemCallErrorNumber=ELOOP
-      '';
-    });
-
-    config.users.groups.chroot-testgroup = {};
-    config.users.users.chroot-testuser = {
-      isSystemUser = true;
-      description = "Chroot Test User";
-      group = "chroot-testgroup";
-    };
-  };
-
-  testScript = { nodes, ... }: ''
-    def assert_eq(a, b):
-        assert a == b, f"{a} != {b}"
-
-    machine.wait_for_unit("multi-user.target")
-  '' + nodes.machine.config.__testSteps;
-}
diff --git a/nixos/tests/systemd-confinement/checkperms.py b/nixos/tests/systemd-confinement/checkperms.py
new file mode 100644
index 000000000000..3c7ba279a3d2
--- /dev/null
+++ b/nixos/tests/systemd-confinement/checkperms.py
@@ -0,0 +1,187 @@
+import errno
+import os
+
+from enum import IntEnum
+from pathlib import Path
+
+
+class Accessibility(IntEnum):
+    """
+    The level of accessibility we have on a file or directory.
+
+    This is needed to assess the attack surface on the file system namespace we
+    have within a confined service. Higher levels mean more permissions for the
+    user and thus a bigger attack surface.
+    """
+    NONE = 0
+
+    # Directories can be listed or files can be read.
+    READABLE = 1
+
+    # This is for special file systems such as procfs and for stuff such as
+    # FIFOs or character special files. The reason why this has a lower value
+    # than WRITABLE is because those files are more restricted on what and how
+    # they can be written to.
+    SPECIAL = 2
+
+    # Another special case are sticky directories, which do allow write access
+    # but restrict deletion. This does *not* apply to sticky directories that
+    # are read-only.
+    STICKY = 3
+
+    # Essentially full permissions, the kind of accessibility we want to avoid
+    # in most cases.
+    WRITABLE = 4
+
+    def assert_on(self, path: Path) -> None:
+        """
+        Raise an AssertionError if the given 'path' allows for more
+        accessibility than 'self'.
+        """
+        actual = self.NONE
+
+        if path.is_symlink():
+            actual = self.READABLE
+        elif path.is_dir():
+            writable = True
+
+            dummy_file = path / 'can_i_write'
+            try:
+                dummy_file.touch()
+            except OSError as e:
+                if e.errno in [errno.EROFS, errno.EACCES]:
+                    writable = False
+                else:
+                    raise
+            else:
+                dummy_file.unlink()
+
+            if writable:
+                # The reason why we test this *after* we made sure it's
+                # writable is because we could have a sticky directory where
+                # the current user doesn't have write access.
+                if path.stat().st_mode & 0o1000 == 0o1000:
+                    actual = self.STICKY
+                else:
+                    actual = self.WRITABLE
+            else:
+                actual = self.READABLE
+        elif path.is_file():
+            try:
+                with path.open('rb') as fp:
+                    fp.read(1)
+                actual = self.READABLE
+            except PermissionError:
+                pass
+
+            writable = True
+            try:
+                with path.open('ab') as fp:
+                    fp.write('x')
+                    size = fp.tell()
+                    fp.truncate(size)
+            except PermissionError:
+                writable = False
+            except OSError as e:
+                if e.errno == errno.ETXTBSY:
+                    writable = os.access(path, os.W_OK)
+                elif e.errno == errno.EROFS:
+                    writable = False
+                else:
+                    raise
+
+            # Let's always try to fail towards being writable, so if *either*
+            # access(2) or a real write is successful it's writable. This is to
+            # make sure we don't accidentally introduce no-ops if we have bugs
+            # in the more complicated real write code above.
+            if writable or os.access(path, os.W_OK):
+                actual = self.WRITABLE
+        else:
+            # We need to be very careful when writing to or reading from
+            # special files (eg.  FIFOs), since they can possibly block. So if
+            # it's not a file, just trust that access(2) won't lie.
+            if os.access(path, os.R_OK):
+                actual = self.READABLE
+
+            if os.access(path, os.W_OK):
+                actual = self.SPECIAL
+
+        if actual > self:
+            stat = path.stat()
+            details = ', '.join([
+                f'permissions: {stat.st_mode & 0o7777:o}',
+                f'uid: {stat.st_uid}',
+                f'group: {stat.st_gid}',
+            ])
+
+            raise AssertionError(
+                f'Expected at most {self!r} but got {actual!r} for path'
+                f' {path} ({details}).'
+            )
+
+
+def is_special_fs(path: Path) -> bool:
+    """
+    Check whether the given path truly is a special file system such as procfs
+    or sysfs.
+    """
+    try:
+        if path == Path('/proc'):
+            return (path / 'version').read_text().startswith('Linux')
+        elif path == Path('/sys'):
+            return b'Linux' in (path / 'kernel' / 'notes').read_bytes()
+    except FileNotFoundError:
+        pass
+    return False
+
+
+def is_empty_dir(path: Path) -> bool:
+    try:
+        next(path.iterdir())
+        return False
+    except (StopIteration, PermissionError):
+        return True
+
+
+def _assert_permissions_in_directory(
+    directory: Path,
+    accessibility: Accessibility,
+    subdirs: dict[Path, Accessibility],
+) -> None:
+    accessibility.assert_on(directory)
+
+    for file in directory.iterdir():
+        if is_special_fs(file):
+            msg = f'Got unexpected special filesystem at {file}.'
+            assert subdirs.pop(file) == Accessibility.SPECIAL, msg
+        elif not file.is_symlink() and file.is_dir():
+            subdir_access = subdirs.pop(file, accessibility)
+            if is_empty_dir(file):
+                # Whenever we got an empty directory, we check the permission
+                # constraints on the current directory (except if specified
+                # explicitly in subdirs) because for example if we're non-root
+                # (the constraints of the current directory are thus
+                # Accessibility.READABLE), we really have to make sure that
+                # empty directories are *never* writable.
+                subdir_access.assert_on(file)
+            else:
+                _assert_permissions_in_directory(file, subdir_access, subdirs)
+        else:
+            subdirs.pop(file, accessibility).assert_on(file)
+
+
+def assert_permissions(subdirs: dict[str, Accessibility]) -> None:
+    """
+    Recursively check whether the file system conforms to the accessibility
+    specification we specified via 'subdirs'.
+    """
+    root = Path('/')
+    absolute_subdirs = {root / p: a for p, a in subdirs.items()}
+    _assert_permissions_in_directory(
+        root,
+        Accessibility.WRITABLE if os.getuid() == 0 else Accessibility.READABLE,
+        absolute_subdirs,
+    )
+    for file in absolute_subdirs.keys():
+        msg = f'Expected {file} to exist, but it was nowwhere to be found.'
+        raise AssertionError(msg)
diff --git a/nixos/tests/systemd-confinement/default.nix b/nixos/tests/systemd-confinement/default.nix
new file mode 100644
index 000000000000..15d442d476b0
--- /dev/null
+++ b/nixos/tests/systemd-confinement/default.nix
@@ -0,0 +1,274 @@
+import ../make-test-python.nix {
+  name = "systemd-confinement";
+
+  nodes.machine = { pkgs, lib, ... }: let
+    testLib = pkgs.python3Packages.buildPythonPackage {
+      name = "confinement-testlib";
+      unpackPhase = ''
+        cat > setup.py <<EOF
+        from setuptools import setup
+        setup(name='confinement-testlib', py_modules=["checkperms"])
+        EOF
+        cp ${./checkperms.py} checkperms.py
+      '';
+    };
+
+    mkTest = name: testScript: pkgs.writers.writePython3 "${name}.py" {
+      libraries = [ pkgs.python3Packages.pytest testLib ];
+    } ''
+      # This runs our test script by using pytest's assertion rewriting, so
+      # that whenever we use "assert <something>", the actual values are
+      # printed rather than getting a generic AssertionError or the need to
+      # pass an explicit assertion error message.
+      import ast
+      from pathlib import Path
+      from _pytest.assertion.rewrite import rewrite_asserts
+
+      script = Path('${pkgs.writeText "${name}-main.py" ''
+        import errno, os, pytest, signal
+        from subprocess import run
+        from checkperms import Accessibility, assert_permissions
+
+        ${testScript}
+      ''}') # noqa
+      filename = str(script)
+      source = script.read_bytes()
+
+      tree = ast.parse(source, filename=filename)
+      rewrite_asserts(tree, source, filename)
+      exec(compile(tree, filename, 'exec', dont_inherit=True))
+    '';
+
+    mkTestStep = num: {
+      description,
+      testScript,
+      config ? {},
+      serviceName ? "test${toString num}",
+      rawUnit ? null,
+    }: {
+      systemd.packages = lib.optional (rawUnit != null) (pkgs.writeTextFile {
+        name = serviceName;
+        destination = "/etc/systemd/system/${serviceName}.service";
+        text = rawUnit;
+      });
+
+      systemd.services.${serviceName} = {
+        inherit description;
+        requiredBy = [ "multi-user.target" ];
+        confinement = (config.confinement or {}) // { enable = true; };
+        serviceConfig = (config.serviceConfig or {}) // {
+          ExecStart = mkTest serviceName testScript;
+          Type = "oneshot";
+        };
+      } // removeAttrs config [ "confinement" "serviceConfig" ];
+    };
+
+    parametrisedTests = lib.concatMap ({ user, privateTmp }: let
+      withTmp = if privateTmp then "with PrivateTmp" else "without PrivateTmp";
+
+      serviceConfig = if user == "static-user" then {
+        User = "chroot-testuser";
+        Group = "chroot-testgroup";
+      } else if user == "dynamic-user" then {
+        DynamicUser = true;
+      } else {};
+
+    in [
+      { description = "${user}, chroot-only confinement ${withTmp}";
+        config = {
+          confinement.mode = "chroot-only";
+          # Only set if privateTmp is true to ensure that the default is false.
+          serviceConfig = serviceConfig // lib.optionalAttrs privateTmp {
+            PrivateTmp = true;
+          };
+        };
+        testScript = if user == "root" then ''
+          assert os.getuid() == 0
+          assert os.getgid() == 0
+
+          assert_permissions({
+            'bin': Accessibility.READABLE,
+            'nix': Accessibility.READABLE,
+            'run': Accessibility.READABLE,
+            ${lib.optionalString privateTmp "'tmp': Accessibility.STICKY,"}
+            ${lib.optionalString privateTmp "'var': Accessibility.READABLE,"}
+            ${lib.optionalString privateTmp "'var/tmp': Accessibility.STICKY,"}
+          })
+        '' else ''
+          assert os.getuid() != 0
+          assert os.getgid() != 0
+
+          assert_permissions({
+            'bin': Accessibility.READABLE,
+            'nix': Accessibility.READABLE,
+            'run': Accessibility.READABLE,
+            ${lib.optionalString privateTmp "'tmp': Accessibility.STICKY,"}
+            ${lib.optionalString privateTmp "'var': Accessibility.READABLE,"}
+            ${lib.optionalString privateTmp "'var/tmp': Accessibility.STICKY,"}
+          })
+        '';
+      }
+      { description = "${user}, full APIVFS confinement ${withTmp}";
+        config = {
+          # Only set if privateTmp is false to ensure that the default is true.
+          serviceConfig = serviceConfig // lib.optionalAttrs (!privateTmp) {
+            PrivateTmp = false;
+          };
+        };
+        testScript = if user == "root" then ''
+          assert os.getuid() == 0
+          assert os.getgid() == 0
+
+          assert_permissions({
+            'bin': Accessibility.READABLE,
+            'nix': Accessibility.READABLE,
+            ${lib.optionalString privateTmp "'tmp': Accessibility.STICKY,"}
+            'run': Accessibility.WRITABLE,
+
+            'proc': Accessibility.SPECIAL,
+            'sys': Accessibility.SPECIAL,
+            'dev': Accessibility.WRITABLE,
+
+            ${lib.optionalString privateTmp "'var': Accessibility.READABLE,"}
+            ${lib.optionalString privateTmp "'var/tmp': Accessibility.STICKY,"}
+          })
+        '' else ''
+          assert os.getuid() != 0
+          assert os.getgid() != 0
+
+          assert_permissions({
+            'bin': Accessibility.READABLE,
+            'nix': Accessibility.READABLE,
+            ${lib.optionalString privateTmp "'tmp': Accessibility.STICKY,"}
+            'run': Accessibility.STICKY,
+
+            'proc': Accessibility.SPECIAL,
+            'sys': Accessibility.SPECIAL,
+            'dev': Accessibility.SPECIAL,
+            'dev/shm': Accessibility.STICKY,
+            'dev/mqueue': Accessibility.STICKY,
+
+            ${lib.optionalString privateTmp "'var': Accessibility.READABLE,"}
+            ${lib.optionalString privateTmp "'var/tmp': Accessibility.STICKY,"}
+          })
+        '';
+      }
+    ]) (lib.cartesianProductOfSets {
+      user = [ "root" "dynamic-user" "static-user" ];
+      privateTmp = [ true false ];
+    });
+
+  in {
+    imports = lib.imap1 mkTestStep (parametrisedTests ++ [
+      { description = "existence of bind-mounted /etc";
+        config.serviceConfig.BindReadOnlyPaths = [ "/etc" ];
+        testScript = ''
+          assert Path('/etc/passwd').read_text()
+        '';
+      }
+      (let
+        symlink = pkgs.runCommand "symlink" {
+          target = pkgs.writeText "symlink-target" "got me";
+        } "ln -s \"$target\" \"$out\"";
+      in {
+        description = "check if symlinks are properly bind-mounted";
+        config.confinement.packages = lib.singleton symlink;
+        testScript = ''
+          assert Path('${symlink}').read_text() == 'got me'
+        '';
+      })
+      { description = "check if StateDirectory works";
+        config.serviceConfig.User = "chroot-testuser";
+        config.serviceConfig.Group = "chroot-testgroup";
+        config.serviceConfig.StateDirectory = "testme";
+
+        # We restart on purpose here since we want to check whether the state
+        # directory actually persists.
+        config.serviceConfig.Restart = "on-failure";
+        config.serviceConfig.RestartMode = "direct";
+
+        testScript = ''
+          assert not Path('/tmp/canary').exists()
+          Path('/tmp/canary').touch()
+
+          if (foo := Path('/var/lib/testme/foo')).exists():
+            assert Path('/var/lib/testme/foo').read_text() == 'works'
+          else:
+            Path('/var/lib/testme/foo').write_text('works')
+            print('<4>Exiting with failure to check persistence on restart.')
+            raise SystemExit(1)
+        '';
+      }
+      { description = "check if /bin/sh works";
+        testScript = ''
+          assert Path('/bin/sh').exists()
+
+          result = run(
+            ['/bin/sh', '-c', 'echo -n bar'],
+            capture_output=True,
+            check=True,
+          )
+          assert result.stdout == b'bar'
+        '';
+      }
+      { description = "check if suppressing /bin/sh works";
+        config.confinement.binSh = null;
+        testScript = ''
+          assert not Path('/bin/sh').exists()
+          with pytest.raises(FileNotFoundError):
+            run(['/bin/sh', '-c', 'echo foo'])
+        '';
+      }
+      { description = "check if we can set /bin/sh to something different";
+        config.confinement.binSh = "${pkgs.hello}/bin/hello";
+        testScript = ''
+          assert Path('/bin/sh').exists()
+          result = run(
+            ['/bin/sh', '-g', 'foo'],
+            capture_output=True,
+            check=True,
+          )
+          assert result.stdout == b'foo\n'
+        '';
+      }
+      { description = "check if only Exec* dependencies are included";
+        config.environment.FOOBAR = pkgs.writeText "foobar" "eek";
+        testScript = ''
+          with pytest.raises(FileNotFoundError):
+            Path(os.environ['FOOBAR']).read_text()
+        '';
+      }
+      { description = "check if fullUnit includes all dependencies";
+        config.environment.FOOBAR = pkgs.writeText "foobar" "eek";
+        config.confinement.fullUnit = true;
+        testScript = ''
+          assert Path(os.environ['FOOBAR']).read_text() == 'eek'
+        '';
+      }
+      { description = "check if shipped unit file still works";
+        config.confinement.mode = "chroot-only";
+        rawUnit = ''
+          [Service]
+          SystemCallFilter=~kill
+          SystemCallErrorNumber=ELOOP
+        '';
+        testScript = ''
+          with pytest.raises(OSError) as excinfo:
+            os.kill(os.getpid(), signal.SIGKILL)
+          assert excinfo.value.errno == errno.ELOOP
+        '';
+      }
+    ]);
+
+    config.users.groups.chroot-testgroup = {};
+    config.users.users.chroot-testuser = {
+      isSystemUser = true;
+      description = "Chroot Test User";
+      group = "chroot-testgroup";
+    };
+  };
+
+  testScript = ''
+    machine.wait_for_unit("multi-user.target")
+  '';
+}
diff --git a/nixos/tests/systemd-initrd-modprobe.nix b/nixos/tests/systemd-initrd-modprobe.nix
index 0f93492176b4..e563552a645f 100644
--- a/nixos/tests/systemd-initrd-modprobe.nix
+++ b/nixos/tests/systemd-initrd-modprobe.nix
@@ -4,21 +4,21 @@ import ./make-test-python.nix ({ lib, pkgs, ... }: {
   nodes.machine = { pkgs, ... }: {
     testing.initrdBackdoor = true;
     boot.initrd.systemd.enable = true;
-    boot.initrd.kernelModules = [ "loop" ]; # Load module in initrd.
+    boot.initrd.kernelModules = [ "tcp_hybla" ]; # Load module in initrd.
     boot.extraModprobeConfig = ''
-      options loop max_loop=42
+      options tcp_hybla rtt0=42
     '';
   };
 
   testScript = ''
     machine.wait_for_unit("initrd.target")
-    max_loop = machine.succeed("cat /sys/module/loop/parameters/max_loop")
-    assert int(max_loop) == 42, "Parameter should be respected for initrd kernel modules"
+    rtt = machine.succeed("cat /sys/module/tcp_hybla/parameters/rtt0")
+    assert int(rtt) == 42, "Parameter should be respected for initrd kernel modules"
 
     # Make sure it sticks in stage 2
     machine.switch_root()
     machine.wait_for_unit("multi-user.target")
-    max_loop = machine.succeed("cat /sys/module/loop/parameters/max_loop")
-    assert int(max_loop) == 42, "Parameter should be respected for initrd kernel modules"
+    rtt = machine.succeed("cat /sys/module/tcp_hybla/parameters/rtt0")
+    assert int(rtt) == 42, "Parameter should be respected for initrd kernel modules"
   '';
 })
diff --git a/nixos/tests/tayga.nix b/nixos/tests/tayga.nix
index 4aade67d74d0..204391d1312f 100644
--- a/nixos/tests/tayga.nix
+++ b/nixos/tests/tayga.nix
@@ -59,6 +59,7 @@ import ./make-test-python.nix ({ pkgs, lib, ... }:
           ];
         };
       };
+      programs.mtr.enable = true;
     };
 
     # The router is configured with static IPv4 addresses towards the server
@@ -120,6 +121,9 @@ import ./make-test-python.nix ({ pkgs, lib, ... }:
             prefixLength = 96;
           };
         };
+        mappings = {
+          "192.0.2.42" = "2001:db8::2";
+        };
       };
     };
 
@@ -171,6 +175,9 @@ import ./make-test-python.nix ({ pkgs, lib, ... }:
             prefixLength = 96;
           };
         };
+        mappings = {
+          "192.0.2.42" = "2001:db8::2";
+        };
       };
     };
 
@@ -199,7 +206,7 @@ import ./make-test-python.nix ({ pkgs, lib, ... }:
           ];
         };
       };
-      environment.systemPackages = [ pkgs.mtr ];
+      programs.mtr.enable = true;
     };
   };
 
@@ -225,10 +232,16 @@ import ./make-test-python.nix ({ pkgs, lib, ... }:
       with subtest("Wait for tayga"):
         router.wait_for_unit("tayga.service")
 
-      with subtest("Test ICMP"):
+      with subtest("Test ICMP server -> client"):
+        server.wait_until_succeeds("ping -c 3 192.0.2.42 >&2")
+
+      with subtest("Test ICMP and show a traceroute server -> client"):
+        server.wait_until_succeeds("mtr --show-ips --report-wide 192.0.2.42 >&2")
+
+      with subtest("Test ICMP client -> server"):
         client.wait_until_succeeds("ping -c 3 64:ff9b::100.64.0.2 >&2")
 
-      with subtest("Test ICMP and show a traceroute"):
+      with subtest("Test ICMP and show a traceroute client -> server"):
         client.wait_until_succeeds("mtr --show-ips --report-wide 64:ff9b::100.64.0.2 >&2")
 
       router.log(router.execute("systemd-analyze security tayga.service")[1])
diff --git a/nixos/tests/udisks2.nix b/nixos/tests/udisks2.nix
index 8cc148750c7b..b934f0b95156 100644
--- a/nixos/tests/udisks2.nix
+++ b/nixos/tests/udisks2.nix
@@ -2,6 +2,7 @@ import ./make-test-python.nix ({ pkgs, ... }:
 
 let
 
+  # FIXME: 404s
   stick = pkgs.fetchurl {
     url = "https://nixos.org/~eelco/nix/udisks-test.img.xz";
     sha256 = "0was1xgjkjad91nipzclaz5biv3m4b2nk029ga6nk7iklwi19l8b";
@@ -12,7 +13,7 @@ in
 {
   name = "udisks2";
   meta = with pkgs.lib.maintainers; {
-    maintainers = [ eelco ];
+    maintainers = [ ];
   };
 
   nodes.machine =
diff --git a/nixos/tests/vector.nix b/nixos/tests/vector.nix
index a55eb4e012c5..9c0d7e84fab3 100644
--- a/nixos/tests/vector.nix
+++ b/nixos/tests/vector.nix
@@ -14,15 +14,27 @@ with pkgs.lib;
         enable = true;
         journaldAccess = true;
         settings = {
-          sources.journald.type = "journald";
+          sources = {
+            journald.type = "journald";
+
+            vector_metrics.type = "internal_metrics";
+
+            vector_logs.type = "internal_logs";
+          };
 
           sinks = {
             file = {
               type = "file";
-              inputs = [ "journald" ];
+              inputs = [ "journald" "vector_logs" ];
               path = "/var/lib/vector/logs.log";
               encoding = { codec = "json"; };
             };
+
+            prometheus_exporter = {
+              type = "prometheus_exporter";
+              inputs = [ "vector_metrics" ];
+              address = "[::]:9598";
+            };
           };
         };
       };
@@ -31,6 +43,10 @@ with pkgs.lib;
     # ensure vector is forwarding the messages appropriately
     testScript = ''
       machine.wait_for_unit("vector.service")
+      machine.wait_for_open_port(9598)
+      machine.wait_until_succeeds("curl -sSf http://localhost:9598/metrics | grep vector_build_info")
+      machine.wait_until_succeeds("curl -sSf http://localhost:9598/metrics | grep vector_component_received_bytes_total | grep journald")
+      machine.wait_until_succeeds("curl -sSf http://localhost:9598/metrics | grep vector_utilization | grep prometheus_exporter")
       machine.wait_for_file("/var/lib/vector/logs.log")
     '';
   };
diff --git a/nixos/tests/virtualbox.nix b/nixos/tests/virtualbox.nix
index 3c2a391233db..5fce3ba54812 100644
--- a/nixos/tests/virtualbox.nix
+++ b/nixos/tests/virtualbox.nix
@@ -98,7 +98,6 @@ let
     cfg = (import ../lib/eval-config.nix {
       system = if use64bitGuest then "x86_64-linux" else "i686-linux";
       modules = [
-        ../modules/profiles/minimal.nix
         (testVMConfig vmName vmScript)
       ];
     }).config;
diff --git a/nixos/tests/web-apps/pretalx.nix b/nixos/tests/web-apps/pretalx.nix
index a226639b076b..cbb6580aa051 100644
--- a/nixos/tests/web-apps/pretalx.nix
+++ b/nixos/tests/web-apps/pretalx.nix
@@ -5,13 +5,16 @@
   meta.maintainers = lib.teams.c3d2.members;
 
   nodes = {
-    pretalx = {
+    pretalx = { config, ... }: {
       networking.extraHosts = ''
         127.0.0.1 talks.local
       '';
 
       services.pretalx = {
         enable = true;
+        plugins = with config.services.pretalx.package.plugins; [
+          pages
+        ];
         nginx.domain = "talks.local";
         settings = {
           site.url = "http://talks.local";
@@ -27,5 +30,9 @@
     pretalx.wait_for_unit("pretalx-worker.service")
 
     pretalx.wait_until_succeeds("curl -q --fail http://talks.local/orga/")
+
+    pretalx.succeed("pretalx-manage --help")
+
+    pretalx.log(pretalx.succeed("systemd-analyze security pretalx-web.service"))
   '';
 }
diff --git a/nixos/tests/ydotool.nix b/nixos/tests/ydotool.nix
new file mode 100644
index 000000000000..818ac6f2d50d
--- /dev/null
+++ b/nixos/tests/ydotool.nix
@@ -0,0 +1,115 @@
+import ./make-test-python.nix (
+  { pkgs, lib, ... }:
+  let
+    textInput = "This works.";
+    inputBoxText = "Enter input";
+    inputBox = pkgs.writeShellScript "zenity-input" ''
+      ${lib.getExe pkgs.gnome.zenity} --entry --text '${inputBoxText}:' > /tmp/output &
+    '';
+  in
+  {
+    name = "ydotool";
+
+    meta = {
+      maintainers = with lib.maintainers; [
+        OPNA2608
+        quantenzitrone
+      ];
+    };
+
+    nodes = {
+      headless =
+        { config, ... }:
+        {
+          imports = [ ./common/user-account.nix ];
+
+          users.users.alice.extraGroups = [ "ydotool" ];
+
+          programs.ydotool.enable = true;
+
+          services.getty.autologinUser = "alice";
+        };
+
+      x11 =
+        { config, ... }:
+        {
+          imports = [
+            ./common/user-account.nix
+            ./common/auto.nix
+            ./common/x11.nix
+          ];
+
+          users.users.alice.extraGroups = [ "ydotool" ];
+
+          programs.ydotool.enable = true;
+
+          test-support.displayManager.auto = {
+            enable = true;
+            user = "alice";
+          };
+
+          services.xserver.windowManager.dwm.enable = true;
+          services.displayManager.defaultSession = lib.mkForce "none+dwm";
+        };
+
+      wayland =
+        { config, ... }:
+        {
+          imports = [ ./common/user-account.nix ];
+
+          services.cage = {
+            enable = true;
+            user = "alice";
+          };
+
+          programs.ydotool.enable = true;
+
+          services.cage.program = inputBox;
+        };
+    };
+
+    enableOCR = true;
+
+    testScript =
+      { nodes, ... }:
+      ''
+        def as_user(cmd: str):
+          """
+          Return a shell command for running a shell command as a specific user.
+          """
+          return f"sudo -u alice -i {cmd}"
+
+        start_all()
+
+        # Headless
+        headless.wait_for_unit("multi-user.target")
+        headless.wait_for_text("alice")
+        headless.succeed(as_user("ydotool type 'echo ${textInput} > /tmp/output'")) # text input
+        headless.succeed(as_user("ydotool key 28:1 28:0")) # text input
+        headless.screenshot("headless_input")
+        headless.wait_for_file("/tmp/output")
+        headless.wait_until_succeeds("grep '${textInput}' /tmp/output") # text input
+
+        # X11
+        x11.wait_for_x()
+        x11.execute(as_user("${inputBox}"))
+        x11.wait_for_text("${inputBoxText}")
+        x11.succeed(as_user("ydotool type '${textInput}'")) # text input
+        x11.screenshot("x11_input")
+        x11.succeed(as_user("ydotool mousemove -a 400 110")) # mouse input
+        x11.succeed(as_user("ydotool click 0xC0")) # mouse input
+        x11.wait_for_file("/tmp/output")
+        x11.wait_until_succeeds("grep '${textInput}' /tmp/output") # text input
+
+        # Wayland
+        wayland.wait_for_unit("graphical.target")
+        wayland.wait_for_text("${inputBoxText}")
+        wayland.succeed("ydotool type '${textInput}'") # text input
+        wayland.screenshot("wayland_input")
+        wayland.succeed("ydotool mousemove -a 100 100") # mouse input
+        wayland.succeed("ydotool click 0xC0") # mouse input
+        wayland.wait_for_file("/tmp/output")
+        wayland.wait_until_succeeds("grep '${textInput}' /tmp/output") # text input
+      '';
+  }
+)
diff --git a/nixos/tests/your_spotify.nix b/nixos/tests/your_spotify.nix
new file mode 100644
index 000000000000..a1fa0e459a8e
--- /dev/null
+++ b/nixos/tests/your_spotify.nix
@@ -0,0 +1,33 @@
+import ./make-test-python.nix ({pkgs, ...}: {
+  name = "your_spotify";
+  meta = with pkgs.lib.maintainers; {
+    maintainers = [patrickdag];
+  };
+
+  nodes.machine = {
+    services.your_spotify = {
+      enable = true;
+      spotifySecretFile = pkgs.writeText "spotifySecretFile" "deadbeef";
+      settings = {
+        CLIENT_ENDPOINT = "http://localhost";
+        API_ENDPOINT = "http://localhost:3000";
+        SPOTIFY_PUBLIC = "beefdead";
+      };
+      enableLocalDB = true;
+      nginxVirtualHost = "localhost";
+    };
+  };
+
+  testScript = ''
+    machine.wait_for_unit("your_spotify.service")
+
+    machine.wait_for_open_port(3000)
+    machine.wait_for_open_port(80)
+
+    out = machine.succeed("curl --fail -X GET 'http://localhost:3000/'")
+    assert "Hello !" in out
+
+    out = machine.succeed("curl --fail -X GET 'http://localhost:80/'")
+    assert "<title>Your Spotify</title>" in out
+  '';
+})
diff --git a/pkgs/applications/accessibility/dasher/default.nix b/pkgs/applications/accessibility/dasher/default.nix
index 0de562c5331b..6e602dc35c33 100644
--- a/pkgs/applications/accessibility/dasher/default.nix
+++ b/pkgs/applications/accessibility/dasher/default.nix
@@ -3,7 +3,7 @@
 , fetchFromGitLab
 , autoreconfHook
 , pkg-config
-, wrapGAppsHook
+, wrapGAppsHook3
 , glib
 , gtk3
 , expat
@@ -39,7 +39,7 @@ stdenv.mkDerivation {
 
   nativeBuildInputs = [
     autoreconfHook
-    wrapGAppsHook
+    wrapGAppsHook3
     pkg-config
     # doc generation
     gnome-doc-utils
diff --git a/pkgs/applications/accessibility/mousetweaks/default.nix b/pkgs/applications/accessibility/mousetweaks/default.nix
index 5426f2c8fdd0..c05c1dd8bf1d 100644
--- a/pkgs/applications/accessibility/mousetweaks/default.nix
+++ b/pkgs/applications/accessibility/mousetweaks/default.nix
@@ -1,5 +1,5 @@
 { lib, stdenv, fetchurl, pkg-config
-, glib, gtk3, gnome, gsettings-desktop-schemas, wrapGAppsHook
+, glib, gtk3, gnome, gsettings-desktop-schemas, wrapGAppsHook3
 , xorg
 }:
 
@@ -12,7 +12,7 @@ stdenv.mkDerivation rec {
    sha256 = "005fhmvb45sa9mq17dpa23n1xnspiissx5rnpiy7hiqmy3g5rg8f";
   };
 
-  nativeBuildInputs = [ pkg-config wrapGAppsHook ];
+  nativeBuildInputs = [ pkg-config wrapGAppsHook3 ];
 
   buildInputs = [
     glib gtk3 gsettings-desktop-schemas
diff --git a/pkgs/applications/accessibility/squeekboard/default.nix b/pkgs/applications/accessibility/squeekboard/default.nix
index c7ea8b34a66f..119217ddfd8c 100644
--- a/pkgs/applications/accessibility/squeekboard/default.nix
+++ b/pkgs/applications/accessibility/squeekboard/default.nix
@@ -17,7 +17,7 @@
 , rustPlatform
 , rustc
 , feedbackd
-, wrapGAppsHook
+, wrapGAppsHook3
 , fetchpatch
 , nixosTests
 }:
@@ -47,7 +47,7 @@ stdenv.mkDerivation rec {
     pkg-config
     glib
     wayland
-    wrapGAppsHook
+    wrapGAppsHook3
     rustPlatform.cargoSetupHook
     cargo
     rustc
diff --git a/pkgs/applications/accessibility/wvkbd/default.nix b/pkgs/applications/accessibility/wvkbd/default.nix
index d74790c2f1bd..a918797e2de2 100644
--- a/pkgs/applications/accessibility/wvkbd/default.nix
+++ b/pkgs/applications/accessibility/wvkbd/default.nix
@@ -13,13 +13,13 @@
 
 stdenv.mkDerivation rec {
   pname = "wvkbd";
-  version = "0.14.4";
+  version = "0.15";
 
   src = fetchFromGitHub {
     owner = "jjsullivan5196";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-1ySKsWgSCqsWV0RnR+wZt7+hWVWUqXrQLd1H6FqYzc8=";
+    sha256 = "sha256-9gDxMH1hghqjcXlbda7CHjDdjcjApjjie7caihKIg9M=";
   };
 
   postPatch = ''
diff --git a/pkgs/applications/audio/ardour/default.nix b/pkgs/applications/audio/ardour/default.nix
index 226aa832f80f..9aaff5539268 100644
--- a/pkgs/applications/audio/ardour/default.nix
+++ b/pkgs/applications/audio/ardour/default.nix
@@ -64,14 +64,14 @@
 }:
 stdenv.mkDerivation rec {
   pname = "ardour";
-  version = "8.4";
+  version = "8.6";
 
   # We can't use `fetchFromGitea` here, as attempting to fetch release archives from git.ardour.org
   # result in an empty archive. See https://tracker.ardour.org/view.php?id=7328 for more info.
   src = fetchgit {
     url = "git://git.ardour.org/ardour/ardour.git";
     rev = version;
-    hash = "sha256-6qx/elkj4Kb4YK1JZG/S036WdUO7wEE6/yf4pZQP8J0=";
+    hash = "sha256-sMp24tjtX8fZJWc7dvb+9e6pEflT4ugoOZjDis6/3nM=";
   };
 
   bundledContent = fetchzip {
diff --git a/pkgs/applications/audio/ario/default.nix b/pkgs/applications/audio/ario/default.nix
index b9e14f486b7a..f34ff19ea04c 100644
--- a/pkgs/applications/audio/ario/default.nix
+++ b/pkgs/applications/audio/ario/default.nix
@@ -13,7 +13,7 @@
 , libsoup
 , libxml2
 , taglib
-, wrapGAppsHook
+, wrapGAppsHook3
 }:
 
 stdenv.mkDerivation rec {
@@ -30,7 +30,7 @@ stdenv.mkDerivation rec {
     pkg-config
     gettext
     intltool
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
diff --git a/pkgs/applications/audio/audacious/default.nix b/pkgs/applications/audio/audacious/default.nix
index 15eff9f8e8b9..cd97d460d3b3 100644
--- a/pkgs/applications/audio/audacious/default.nix
+++ b/pkgs/applications/audio/audacious/default.nix
@@ -38,6 +38,7 @@ stdenv.mkDerivation rec {
 
   postInstall = lib.optionalString (audacious-plugins != null) ''
     ln -s ${audacious-plugins}/lib/audacious $out/lib
+    ln -s ${audacious-plugins}/share/audacious/Skins $out/share/audacious/
   '';
 
   meta = with lib; {
diff --git a/pkgs/applications/audio/audacity/default.nix b/pkgs/applications/audio/audacity/default.nix
index c0db59b1d2bb..365ea7d9c9eb 100644
--- a/pkgs/applications/audio/audacity/default.nix
+++ b/pkgs/applications/audio/audacity/default.nix
@@ -3,7 +3,7 @@
 , fetchFromGitHub
 , cmake
 , makeWrapper
-, wrapGAppsHook
+, wrapGAppsHook3
 , pkg-config
 , python3
 , gettext
@@ -88,7 +88,7 @@ stdenv.mkDerivation rec {
     pkg-config
     python3
     makeWrapper
-    wrapGAppsHook
+    wrapGAppsHook3
   ] ++ lib.optionals stdenv.isLinux [
     linuxHeaders
   ];
diff --git a/pkgs/applications/audio/audio-recorder/default.nix b/pkgs/applications/audio/audio-recorder/default.nix
index 72d31e2966ff..ebf9eafcb0d3 100644
--- a/pkgs/applications/audio/audio-recorder/default.nix
+++ b/pkgs/applications/audio/audio-recorder/default.nix
@@ -1,7 +1,7 @@
 { lib, stdenv, fetchurl
 , pkg-config, intltool
 , glib, dbus, gtk3, libappindicator-gtk3, gst_all_1
-, librsvg, wrapGAppsHook
+, librsvg, wrapGAppsHook3
 , pulseaudioSupport ? true, libpulseaudio }:
 
 stdenv.mkDerivation rec {
@@ -17,7 +17,7 @@ stdenv.mkDerivation rec {
   # https://bugs.launchpad.net/audio-recorder/+bug/1784622
   env.NIX_CFLAGS_COMPILE = "-I${glib.dev}/include/gio-unix-2.0";
 
-  nativeBuildInputs = [ pkg-config intltool wrapGAppsHook ];
+  nativeBuildInputs = [ pkg-config intltool wrapGAppsHook3 ];
 
   buildInputs = [
     glib dbus gtk3 librsvg libappindicator-gtk3
diff --git a/pkgs/applications/audio/beast/patch.patch b/pkgs/applications/audio/beast/patch.patch
deleted file mode 100644
index 9d9f82cf4b4b..000000000000
--- a/pkgs/applications/audio/beast/patch.patch
+++ /dev/null
@@ -1,187 +0,0 @@
-Index: beast-0.7.1/shell/Makefile.in
-===================================================================
---- beast-0.7.1.orig/shell/Makefile.in
-+++ beast-0.7.1/shell/Makefile.in
-@@ -859,10 +859,7 @@ check-before: check-installation
- check-installation:
- 	@for p in $(bin_PROGRAMS) ; do					\
- 	  pp="$(DESTDIR)$(bindir)/$$p" ;				\
--	  echo "TEST: test -x \"$$pp\"" ;				\
--	  test -x "$$pp" ||						\
--	    { echo "Failed to verify installation of executable: $$pp";	\
--	      exit 1 ; }						\
-+	  echo "TEST: test -x \"$$pp\" Test disabled" ;				\
- 	done
- # Tell versions [3.59,3.63) of GNU make to not export all variables.
- # Otherwise a system limit (for SysV at least) may be exceeded.
-Index: beast-0.7.1/shell/Makefile.am
-===================================================================
---- beast-0.7.1.orig/shell/Makefile.am
-+++ beast-0.7.1/shell/Makefile.am
-@@ -859,10 +859,7 @@ check-before: check-installation
- check-installation:
- 	@for p in $(bin_PROGRAMS) ; do					\
- 	  pp="$(DESTDIR)$(bindir)/$$p" ;				\
--	  echo "TEST: test -x \"$$pp\"" ;				\
--	  test -x "$$pp" ||						\
--	    { echo "Failed to verify installation of executable: $$pp";	\
--	      exit 1 ; }						\
-+	  echo "TEST: test -x \"$$pp\" Test disabled" ;				\
- 	done
- # Tell versions [3.59,3.63) of GNU make to not export all variables.
- # Otherwise a system limit (for SysV at least) may be exceeded.
-Index: beast-0.7.1/birnet/birnettests.h
-===================================================================
---- beast-0.7.1.orig/birnet/birnettests.h
-+++ beast-0.7.1/birnet/birnettests.h
-@@ -27,6 +27,7 @@
- 
- #include <glib.h>
- #include <string.h>
-+#include <signal.h>
- 
- BIRNET_EXTERN_C_BEGIN();
- 
-Index: beast-0.7.1/tools/bseloopfuncs.c
-===================================================================
---- beast-0.7.1.orig/tools/bseloopfuncs.c
-+++ beast-0.7.1/tools/bseloopfuncs.c
-@@ -21,6 +21,7 @@
- #include <string.h>
- #include <stdio.h>
- #include <math.h>
-+#include <signal.h>
- 
- typedef struct {
-   gdouble score;
---- beast-0.7.1.orig/bse/Makefile.am	2008-06-01 13:12:28.116708321 +0200
-+++ beast-0.7.1/bse/Makefile.am	2008-06-01 13:12:40.000000000 +0200
-@@ -10,7 +10,7 @@
- # need -I$(top_builddir) for <sfi/sficonfig.h>
- # need -I$(srcdir) for "bseserver.h" in .genprc.c
- # need -I. (builddir) for "bsecore.genidl.hh" in bsecore.cc
--INCLUDES += -I$(top_srcdir) -I$(top_builddir) -I$(srcdir) -I. $(BSE_CFLAGS) -DG_DISABLE_DEPRECATED -DG_DISABLE_CONST_RETURNS
-+INCLUDES += -I$(top_srcdir) -I$(top_builddir) -I$(srcdir) -I. $(BSE_CFLAGS) -DG_DISABLE_CONST_RETURNS
- DEFS     += $(strip \
- 	$(patsubst %, -DG_LOG_DOMAIN=\"BSE\" -DBSE_COMPILATION, \
- 	              $(filter $(<F), $(bse_sources) $(bse_sources))) \
---- beast-0.7.1.orig/bse/zintern/Makefile.am	2008-06-01 13:14:25.880028999 +0200
-+++ beast-0.7.1/bse/zintern/Makefile.am	2008-06-01 13:14:38.000000000 +0200
-@@ -4,7 +4,7 @@
- ## GNU Lesser General Public License version 2 or any later version.
- include $(top_srcdir)/Makefile.decl
- 
--INCLUDES += -I$(top_srcdir) -I$(top_builddir) $(BSE_CFLAGS) -DG_DISABLE_DEPRECATED -DG_DISABLE_CONST_RETURNS
-+INCLUDES += -I$(top_srcdir) -I$(top_builddir) $(BSE_CFLAGS) -DG_DISABLE_CONST_RETURNS
- 
- ZFILE_DEFS = $(strip \
- 	wave-mono		$(srcdir)/wave-mono.bse		\
---- a/configure.in	2008-06-01 15:19:46.000000000 +0200
-+++ b/configure.in	2008-06-01 15:27:45.000000000 +0200
-@@ -159,39 +159,33 @@
- dnl # Define package requirements.
- dnl #
- dnl ## include acintltool.m4 to provide IT_PROG_INTLTOOL
--builtin(include, acintltool.m4)dnl
--AC_DEFUN([AC_I18N_REQUIREMENTS],
--[
--    ALL_LINGUAS=`cat "$srcdir/po/LINGUAS" | grep -v '^#' | xargs echo -n `
--    AC_SUBST(ALL_LINGUAS)
--    AC_SUBST([CONFIG_STATUS_DEPENDENCIES], ['$(top_srcdir)/po/LINGUAS'])
--
--    dnl # versioned BEAST gettext domain (po/)
--    BST_GETTEXT_DOMAIN=beast-v$BIN_VERSION    # version without -rcZ
--    AC_SUBST(BST_GETTEXT_DOMAIN)
--    AC_DEFINE_UNQUOTED(BST_GETTEXT_DOMAIN, "$BST_GETTEXT_DOMAIN", [Versioned BEAST gettext domain])
--    GETTEXT_PACKAGE=$BST_GETTEXT_DOMAIN
--    AC_SUBST(GETTEXT_PACKAGE)
--
--    dnl # locale directory for all domains
--    dnl # (AM_GLIB_DEFINE_LOCALEDIR() could do this if it would do AC_SUBST())
--    saved_prefix="$prefix"
--    saved_exec_prefix="$exec_prefix"
--    test "x$prefix" = xNONE && prefix=$ac_default_prefix
--    test "x$exec_prefix" = xNONE && exec_prefix=$prefix
--    if test "x$CATOBJEXT" = "x.mo" ; then
--      beastlocaledir=`eval echo "${libdir}/locale"`
--    else
--      beastlocaledir=`eval echo "${datadir}/locale"`
--    fi
--    exec_prefix="$saved_exec_prefix"
--    prefix="$saved_prefix"
--    AC_SUBST(beastlocaledir)
--
--    dnl # do gettext checks and prepare for intltool
--    AM_GLIB_GNU_GETTEXT
--    IT_PROG_INTLTOOL
--])
-+IT_PROG_INTLTOOL([0.35.0])
-+
-+dnl # versioned BEAST gettext domain (po/)
-+BST_GETTEXT_DOMAIN=beast-v$BIN_VERSION    # version without -rcZ
-+AC_SUBST(BST_GETTEXT_DOMAIN)
-+AC_DEFINE_UNQUOTED(BST_GETTEXT_DOMAIN, "$BST_GETTEXT_DOMAIN", [Versioned BEAST gettext domain])
-+GETTEXT_PACKAGE=$BST_GETTEXT_DOMAIN
-+AC_SUBST(GETTEXT_PACKAGE)
-+
-+dnl # locale directory for all domains
-+dnl # (AM_GLIB_DEFINE_LOCALEDIR() could do this if it would do AC_SUBST())
-+saved_prefix="$prefix"
-+saved_exec_prefix="$exec_prefix"
-+test "x$prefix" = xNONE && prefix=$ac_default_prefix
-+test "x$exec_prefix" = xNONE && exec_prefix=$prefix
-+if test "x$CATOBJEXT" = "x.mo" ; then
-+  beastlocaledir=`eval echo "${libdir}/locale"`
-+else
-+  beastlocaledir=`eval echo "${datadir}/locale"`
-+fi
-+exec_prefix="$saved_exec_prefix"
-+prefix="$saved_prefix"
-+AC_SUBST(beastlocaledir)
-+
-+dnl # do gettext checks and prepare for intltool
-+AM_GLIB_GNU_GETTEXT
-+
- AC_DEFUN([AC_SFI_REQUIREMENTS],
- [
-     dnl # check for GLib libs, libbirnet already provides gthread-2.0 and glib-2.0
-@@ -570,7 +564,6 @@
- AC_BIRNET_REQUIREMENTS
- 
- # Check requirement sets
--AC_I18N_REQUIREMENTS
- AC_SFI_REQUIREMENTS
- AC_BSE_REQUIREMENTS
- AC_BSESCM_REQUIREMENTS
---- a/po/POTFILES.in	2008-06-22 15:12:10.000000000 +0200
-+++ b/po/POTFILES.in	2008-06-22 15:13:28.000000000 +0200
-@@ -131,3 +131,29 @@
- plugins/davxtalstrings.c
- plugins/freeverb/bsefreeverb.c
- tools/bsewavetool.cc
-+
-+beast-gtk/bstgentypes.c
-+birnet/birnetcpu.cc
-+birnet/birnetutils.hh
-+bse/bsebus.genprc.c
-+bse/bsebusmodule.genidl.hh
-+bse/bsecontainer.genprc.c
-+bse/bsecore.genidl.hh
-+bse/bseieee754.h
-+bse/bseladspamodule.c
-+bse/bseparasite.genprc.c
-+bse/bsesong.genprc.c
-+bse/bsesource.genprc.c
-+bse/bsetrack.genprc.c
-+plugins/artscompressor.genidl.hh
-+plugins/bseamplifier.genidl.hh
-+plugins/bsebalance.genidl.hh
-+plugins/bsecontribsampleandhold.genidl.hh
-+plugins/bsenoise.genidl.hh
-+plugins/bsequantizer.genidl.hh
-+plugins/bsesummation.genidl.hh
-+plugins/davbassfilter.genidl.hh
-+plugins/davchorus.genidl.hh
-+plugins/standardguspatchenvelope.genidl.hh
-+plugins/standardsaturator.genidl.hh
-+tests/latency/bselatencytest.genidl.hh
diff --git a/pkgs/applications/audio/bitwig-studio/bitwig-studio3.nix b/pkgs/applications/audio/bitwig-studio/bitwig-studio3.nix
index 5f750a885d15..8eda6c204b7f 100644
--- a/pkgs/applications/audio/bitwig-studio/bitwig-studio3.nix
+++ b/pkgs/applications/audio/bitwig-studio/bitwig-studio3.nix
@@ -2,7 +2,7 @@
 , gdk-pixbuf, glib, gtk3, lib, xorg
 , libglvnd, libjack2, ffmpeg
 , libxkbcommon, xdg-utils, zlib, pulseaudio
-, wrapGAppsHook, makeWrapper }:
+, wrapGAppsHook3, makeWrapper }:
 
 stdenv.mkDerivation rec {
   pname = "bitwig-studio";
@@ -13,7 +13,7 @@ stdenv.mkDerivation rec {
     sha256 = "sha256-cF8gVPjM0KUcKOW09uFccp4/lzbUmZcBkVOwr/A/8Yw=";
   };
 
-  nativeBuildInputs = [ dpkg makeWrapper wrapGAppsHook ];
+  nativeBuildInputs = [ dpkg makeWrapper wrapGAppsHook3 ];
 
   unpackCmd = ''
     mkdir -p root
diff --git a/pkgs/applications/audio/bitwig-studio/bitwig-studio4.nix b/pkgs/applications/audio/bitwig-studio/bitwig-studio4.nix
index 9d4da6407461..24d5147327aa 100644
--- a/pkgs/applications/audio/bitwig-studio/bitwig-studio4.nix
+++ b/pkgs/applications/audio/bitwig-studio/bitwig-studio4.nix
@@ -16,7 +16,7 @@
 , makeWrapper
 , pipewire
 , pulseaudio
-, wrapGAppsHook
+, wrapGAppsHook3
 , xdg-utils
 , xorg
 , zlib
@@ -31,7 +31,7 @@ stdenv.mkDerivation rec {
     sha256 = "sha256-gtQ1mhXk0AqGidZk5TCzSR58pD1JJoELMBmELtqyb4U=";
   };
 
-  nativeBuildInputs = [ dpkg makeWrapper wrapGAppsHook ];
+  nativeBuildInputs = [ dpkg makeWrapper wrapGAppsHook3 ];
 
   unpackCmd = ''
     mkdir -p root
diff --git a/pkgs/applications/audio/bitwig-studio/bitwig-studio5.nix b/pkgs/applications/audio/bitwig-studio/bitwig-studio5.nix
index d6bb4edfabd2..e795128ba944 100644
--- a/pkgs/applications/audio/bitwig-studio/bitwig-studio5.nix
+++ b/pkgs/applications/audio/bitwig-studio/bitwig-studio5.nix
@@ -19,7 +19,7 @@
 , pango
 , pipewire
 , pulseaudio
-, wrapGAppsHook
+, wrapGAppsHook3
 , xdg-utils
 , xorg
 , zlib
@@ -34,7 +34,7 @@ stdenv.mkDerivation rec {
     sha256 = "sha256-KxNLae/uTYL1m/X+/7wr7hhKfw31NpB9Mw9RzfrTuus=";
   };
 
-  nativeBuildInputs = [ dpkg makeWrapper wrapGAppsHook ];
+  nativeBuildInputs = [ dpkg makeWrapper wrapGAppsHook3 ];
 
   unpackCmd = ''
     mkdir -p root
diff --git a/pkgs/applications/audio/buzztrax/default.nix b/pkgs/applications/audio/buzztrax/default.nix
index 85d8fbed7671..eee9d4cadbc0 100644
--- a/pkgs/applications/audio/buzztrax/default.nix
+++ b/pkgs/applications/audio/buzztrax/default.nix
@@ -7,7 +7,7 @@
 , itstool
 , libtool
 , pkg-config
-, wrapGAppsHook
+, wrapGAppsHook3
 , yelp-tools
 , clutter-gtk
 , gst_all_1
@@ -41,7 +41,7 @@ stdenv.mkDerivation {
     itstool
     libtool
     pkg-config
-    wrapGAppsHook
+    wrapGAppsHook3
     yelp-tools
   ];
 
diff --git a/pkgs/applications/audio/cava/default.nix b/pkgs/applications/audio/cava/default.nix
index 23ecf095147f..ed15a6df8808 100644
--- a/pkgs/applications/audio/cava/default.nix
+++ b/pkgs/applications/audio/cava/default.nix
@@ -18,13 +18,13 @@
 
 stdenv.mkDerivation rec {
   pname = "cava";
-  version = "0.10.1";
+  version = "0.10.2";
 
   src = fetchFromGitHub {
     owner = "karlstav";
     repo = "cava";
     rev = version;
-    hash = "sha256-hndlEuKbI8oHvm0dosO0loQAw/U2qasoJ+4K8JG7I2Q=";
+    hash = "sha256-y6RslsU/zmr0Ai/rnr73N3OtjuBcWa3JCwh9P5GkNss=";
   };
 
   buildInputs = [
diff --git a/pkgs/applications/audio/deadbeef/default.nix b/pkgs/applications/audio/deadbeef/default.nix
index f26fd4903726..d141a6196365 100644
--- a/pkgs/applications/audio/deadbeef/default.nix
+++ b/pkgs/applications/audio/deadbeef/default.nix
@@ -8,7 +8,7 @@
 , swift-corelibs-libdispatch
 # deadbeef can use either gtk2 or gtk3
 , gtk2Support ? false, gtk2
-, gtk3Support ? true, gtk3, gsettings-desktop-schemas, wrapGAppsHook
+, gtk3Support ? true, gtk3, gsettings-desktop-schemas, wrapGAppsHook3
 # input plugins
 , vorbisSupport ? true, libvorbis
 , mp123Support ? true, libmad
@@ -112,7 +112,7 @@ in clangStdenv.mkDerivation {
     libtool
     pkg-config
   ] ++ optionals gtk3Support [
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   enableParallelBuilding = true;
diff --git a/pkgs/applications/audio/denemo/default.nix b/pkgs/applications/audio/denemo/default.nix
index ed4460a28322..1a5ce4c77e6e 100644
--- a/pkgs/applications/audio/denemo/default.nix
+++ b/pkgs/applications/audio/denemo/default.nix
@@ -3,7 +3,7 @@
 , glib, libxml2, librsvg, libsndfile, aubio
 , gtk3, gtksourceview, evince, fluidsynth, rubberband
 , autoreconfHook, gtk-doc
-, portaudio, portmidi, fftw, wrapGAppsHook }:
+, portaudio, portmidi, fftw, wrapGAppsHook3 }:
 
 stdenv.mkDerivation rec {
   pname = "denemo";
@@ -41,7 +41,7 @@ stdenv.mkDerivation rec {
   nativeBuildInputs = [
     autoreconfHook
     gtk-doc
-    wrapGAppsHook
+    wrapGAppsHook3
     intltool
     gettext
     pkg-config
diff --git a/pkgs/applications/audio/eartag/default.nix b/pkgs/applications/audio/eartag/default.nix
index cb5a650a2191..11bd27953f12 100644
--- a/pkgs/applications/audio/eartag/default.nix
+++ b/pkgs/applications/audio/eartag/default.nix
@@ -15,11 +15,12 @@
 , gtk4
 , librsvg
 , python3Packages
+, blueprint-compiler
 }:
 
 python3Packages.buildPythonApplication rec {
   pname = "eartag";
-  version = "0.6.0";
+  version = "0.6.1";
   format = "other";
 
   src = fetchFromGitLab {
@@ -27,7 +28,7 @@ python3Packages.buildPythonApplication rec {
     owner = "World";
     repo = pname;
     rev = version;
-    hash = "sha256-MfffIqxfelwP+9wsFvQfEIMkav7j5LJEHjLPOsuYdtQ=";
+    hash = "sha256-CAJz9p1PJxq3VDxzZEHD860xINCQF722bPaf7psNztY=";
   };
 
   postPatch = ''
@@ -48,6 +49,7 @@ python3Packages.buildPythonApplication rec {
     gettext
     gobject-introspection
     wrapGAppsHook4
+    blueprint-compiler
   ] ++ lib.optional stdenv.isDarwin gtk4; # for gtk4-update-icon-cache
 
   buildInputs = [
diff --git a/pkgs/applications/audio/easyabc/default.nix b/pkgs/applications/audio/easyabc/default.nix
index 9fb792626ac2..bdc753d0f45e 100644
--- a/pkgs/applications/audio/easyabc/default.nix
+++ b/pkgs/applications/audio/easyabc/default.nix
@@ -1,4 +1,4 @@
-{ lib, fetchFromGitHub, fetchPypi, substituteAll, python39, fluidsynth, soundfont-fluid, wrapGAppsHook, abcmidi, abcm2ps, ghostscript }:
+{ lib, fetchFromGitHub, fetchPypi, substituteAll, python39, fluidsynth, soundfont-fluid, wrapGAppsHook3, abcmidi, abcm2ps, ghostscript }:
 
 let
   # requires python39 due to https://stackoverflow.com/a/71902541 https://github.com/jwdj/EasyABC/issues/52
@@ -28,7 +28,7 @@ in python.pkgs.buildPythonApplication {
     hash = "sha256-leC3A4HQMeJNeZXArb3YAYr2mddGPcws618NrRh2Q1Y=";
   };
 
-  nativeBuildInputs = [ wrapGAppsHook ];
+  nativeBuildInputs = [ wrapGAppsHook3 ];
 
   propagatedBuildInputs = with python.pkgs; [
     cx-freeze
diff --git a/pkgs/applications/audio/easytag/default.nix b/pkgs/applications/audio/easytag/default.nix
index 6366721a3565..34a4ddc64b37 100644
--- a/pkgs/applications/audio/easytag/default.nix
+++ b/pkgs/applications/audio/easytag/default.nix
@@ -1,6 +1,6 @@
 { lib, stdenv, fetchurl, pkg-config, intltool, gtk3, glib, libid3tag, id3lib, taglib
 , libvorbis, libogg, opusfile, flac, itstool, libxml2, gsettings-desktop-schemas
-, gnome, wrapGAppsHook
+, gnome, wrapGAppsHook3
 }:
 
 let
@@ -16,7 +16,7 @@ in stdenv.mkDerivation rec {
 
   NIX_LDFLAGS = "-lid3tag -lz";
 
-  nativeBuildInputs = [ pkg-config intltool itstool libxml2 wrapGAppsHook ];
+  nativeBuildInputs = [ pkg-config intltool itstool libxml2 wrapGAppsHook3 ];
   buildInputs = [
     gtk3 glib libid3tag id3lib taglib libvorbis libogg opusfile flac
     gsettings-desktop-schemas gnome.adwaita-icon-theme
diff --git a/pkgs/applications/audio/ensemble-chorus/default.nix b/pkgs/applications/audio/ensemble-chorus/default.nix
index 7fcf412dd593..a83719a5e416 100644
--- a/pkgs/applications/audio/ensemble-chorus/default.nix
+++ b/pkgs/applications/audio/ensemble-chorus/default.nix
@@ -12,6 +12,11 @@ stdenv.mkDerivation rec {
     fetchSubmodules = true;
   };
 
+  patches = [
+    # fix compile error regarding packed attribute in 3rd party juice library
+    ./juice-cxx-packing-fix.diff
+  ];
+
   nativeBuildInputs = [ cmake pkg-config ];
 
   buildInputs = [
diff --git a/pkgs/applications/audio/ensemble-chorus/juice-cxx-packing-fix.diff b/pkgs/applications/audio/ensemble-chorus/juice-cxx-packing-fix.diff
new file mode 100644
index 000000000000..041f252a81e0
--- /dev/null
+++ b/pkgs/applications/audio/ensemble-chorus/juice-cxx-packing-fix.diff
@@ -0,0 +1,55 @@
+diff --git a/thirdparty/JUCE/modules/juce_graphics/colour/juce_PixelFormats.h b/thirdparty/JUCE/modules/juce_graphics/colour/juce_PixelFormats.h
+index 69a66e4..3e50635 100644
+--- a/thirdparty/JUCE/modules/juce_graphics/colour/juce_PixelFormats.h
++++ b/thirdparty/JUCE/modules/juce_graphics/colour/juce_PixelFormats.h
+@@ -111,18 +111,10 @@ public:
+     forcedinline uint8 getGreen() const noexcept      { return components.g; }

+     forcedinline uint8 getBlue() const noexcept       { return components.b; }

+ 

+-   #if JUCE_GCC

+-    // NB these are here as a workaround because GCC refuses to bind to packed values.

+-    forcedinline uint8& getAlpha() noexcept           { return comps [indexA]; }

+-    forcedinline uint8& getRed() noexcept             { return comps [indexR]; }

+-    forcedinline uint8& getGreen() noexcept           { return comps [indexG]; }

+-    forcedinline uint8& getBlue() noexcept            { return comps [indexB]; }

+-   #else

+     forcedinline uint8& getAlpha() noexcept           { return components.a; }

+     forcedinline uint8& getRed() noexcept             { return components.r; }

+     forcedinline uint8& getGreen() noexcept           { return components.g; }

+     forcedinline uint8& getBlue() noexcept            { return components.b; }

+-   #endif

+ 

+     //==============================================================================

+     /** Copies another pixel colour over this one.

+@@ -336,21 +328,22 @@ private:
+         uint8 b, g, r, a;

+        #endif

+       #endif

+-    } JUCE_PACKED;

++    };

++

++    // structure must be packed but using the packed attribute causes compile

++    // failures with newer c++ compilers. Verify default packing produces same layout

++    static_assert(sizeof(Components) == 4, "Components struct is not packed");

+ 

+     union

+     {

+         uint32 internal;

+         Components components;

+-       #if JUCE_GCC

+-        uint8 comps[4];  // helper struct needed because gcc does not allow references to packed union members

+-       #endif

+     };

+-}

+-#ifndef DOXYGEN

+- JUCE_PACKED

+-#endif

+-;

++};

++

++// class must be packed but using the packed attribute causes compile

++// failures with newer c++ compilers. Verify default packing produces same layout

++static_assert(sizeof(PixelARGB) == 4, "PixelARGB class is not packed");

+ 

+ 

+ //==============================================================================

diff --git a/pkgs/applications/audio/exaile/default.nix b/pkgs/applications/audio/exaile/default.nix
index a2f75fd85a70..624f14558142 100644
--- a/pkgs/applications/audio/exaile/default.nix
+++ b/pkgs/applications/audio/exaile/default.nix
@@ -1,5 +1,5 @@
 { stdenv, lib, fetchFromGitHub
-, gobject-introspection, makeWrapper, wrapGAppsHook
+, gobject-introspection, makeWrapper, wrapGAppsHook3
 , gtk3, gst_all_1, python3
 , gettext, gnome, help2man, keybinder3, libnotify, librsvg, streamripper, udisks, webkitgtk
 , iconTheme ? gnome.adwaita-icon-theme
@@ -33,7 +33,7 @@ stdenv.mkDerivation rec {
   nativeBuildInputs = [
     gobject-introspection
     makeWrapper
-    wrapGAppsHook
+    wrapGAppsHook3
   ] ++ lib.optionals documentationSupport [
     help2man
     python3.pkgs.sphinx
diff --git a/pkgs/applications/audio/feishin/default.nix b/pkgs/applications/audio/feishin/default.nix
index e0e35bae6df0..90561314fec9 100644
--- a/pkgs/applications/audio/feishin/default.nix
+++ b/pkgs/applications/audio/feishin/default.nix
@@ -11,13 +11,13 @@
 }:
 let
   pname = "feishin";
-  version = "0.6.1";
+  version = "0.7.1";
 
   src = fetchFromGitHub {
     owner = "jeffvli";
     repo = pname;
     rev = "v${version}";
-    hash = "sha256-Nj8GwrH49ph14xvJldj5GQR4mlt9unCPEcgLrsH/sx8=";
+    hash = "sha256-eNGHrSF/MgRHh0CVc0l8denZIbAnPXwFCZJZcvF+Xtc=";
   };
 
   electron = electron_27;
@@ -26,7 +26,7 @@ buildNpmPackage {
   inherit pname version;
 
   inherit src;
-  npmDepsHash = "sha256-+pr9fWg/9kxkYMmthtqhjgF6MOomSQxVCO5V8tHHRdE=";
+  npmDepsHash = "sha256-7oh5bl5APAvzb/TxHMUP/saRWLwuP9xqGvn7/RDhFk8=";
 
   npmFlags = [ "--legacy-peer-deps" ];
   makeCacheWritable = true;
@@ -60,7 +60,7 @@ buildNpmPackage {
         inherit version;
 
         src = "${src}/release/app";
-        npmDepsHash = "sha256-MRwKxe1hoFs5bPXT6K/UspSDs9XBdcRJGvxGlTKExp4=";
+        npmDepsHash = "sha256-NgWPr3mctn7f6X2JFsbdNNHkN84RRlLAywqfbyahCQw=";
 
         npmFlags = [ "--ignore-scripts" ];
         dontNpmBuild = true;
diff --git a/pkgs/applications/audio/flac123/default.nix b/pkgs/applications/audio/flac123/default.nix
deleted file mode 100644
index 646e361524d4..000000000000
--- a/pkgs/applications/audio/flac123/default.nix
+++ /dev/null
@@ -1,22 +0,0 @@
-{ lib, stdenv, fetchurl, autoreconfHook, flac, libao, libogg, popt }:
-
-stdenv.mkDerivation rec {
-  pname = "flac123";
-  version = "0.0.12";
-
-  src = fetchurl {
-    url = "mirror://sourceforge/flac-tools/${pname}-${version}-release.tar.gz";
-    sha256 = "0zg4ahkg7v81za518x32wldf42g0rrvlrcqhrg9sv3li9bayyxhr";
-  };
-
-  nativeBuildInputs = [ autoreconfHook ];
-  buildInputs = [ flac libao libogg popt ];
-
-  meta = with lib; {
-    homepage = "https://flac-tools.sourceforge.net/";
-    description = "A command-line program for playing FLAC audio files";
-    license = licenses.gpl2Plus;
-    platforms = platforms.all;
-    mainProgram = "flac123";
-  };
-}
diff --git a/pkgs/applications/audio/flacon/default.nix b/pkgs/applications/audio/flacon/default.nix
index a06efc1c78ea..811e1d806c60 100644
--- a/pkgs/applications/audio/flacon/default.nix
+++ b/pkgs/applications/audio/flacon/default.nix
@@ -4,13 +4,13 @@
 
 stdenv.mkDerivation rec {
   pname = "flacon";
-  version = "11.3.0";
+  version = "11.4.0";
 
   src = fetchFromGitHub {
     owner = "flacon";
     repo = "flacon";
     rev = "v${version}";
-    sha256 = "sha256-jzpD8+zhIbOYgSNsoE1Pay+FiPXtRCd6Zz6HHkzWAkY=";
+    sha256 = "sha256-guIGSKmpinDDfTDSCmcJKWysUPdG/gw5oaKmXqgf53o=";
   };
 
   nativeBuildInputs = [ cmake pkg-config wrapQtAppsHook ];
diff --git a/pkgs/applications/audio/ft2-clone/default.nix b/pkgs/applications/audio/ft2-clone/default.nix
index 1f05808536e1..20615369cb64 100644
--- a/pkgs/applications/audio/ft2-clone/default.nix
+++ b/pkgs/applications/audio/ft2-clone/default.nix
@@ -13,13 +13,13 @@
 
 stdenv.mkDerivation rec {
   pname = "ft2-clone";
-  version = "1.82";
+  version = "1.84";
 
   src = fetchFromGitHub {
     owner = "8bitbubsy";
     repo = "ft2-clone";
     rev = "v${version}";
-    hash = "sha256-qEwPKrgmWYMIwIdgKozG9kghCYp4aoYTX28GqKbuDu4=";
+    hash = "sha256-RPrNpm+0N//CpVtG6cJD+m+0G6ca75hZwdEdHsGadEg=";
   };
 
   nativeBuildInputs = [ cmake ];
diff --git a/pkgs/applications/audio/gbsplay/default.nix b/pkgs/applications/audio/gbsplay/default.nix
deleted file mode 100644
index 5c7d302346e3..000000000000
--- a/pkgs/applications/audio/gbsplay/default.nix
+++ /dev/null
@@ -1,32 +0,0 @@
-{ lib, stdenv, fetchFromGitHub, installShellFiles, libpulseaudio, nas }:
-
-stdenv.mkDerivation rec {
-  pname = "gbsplay";
-  version = "0.0.97";
-
-  src = fetchFromGitHub {
-    owner = "mmitch";
-    repo = "gbsplay";
-    rev = version;
-    sha256 = "sha256-O4t5OzXcrGoxzSXr0nzc01bItjcp1LvFeWnbdSUDwFU=";
-  };
-
-  configureFlags = [
-    "--without-test" # See mmitch/gbsplay#62
-    "--without-contrib"
-  ];
-
-  nativeBuildInputs = [ installShellFiles ];
-  buildInputs = [ libpulseaudio nas ];
-
-  postInstall = ''
-    installShellCompletion --bash --name gbsplay contrib/gbsplay.bashcompletion
-  '';
-
-  meta = with lib; {
-    description = "Gameboy sound player";
-    license = licenses.gpl1Plus;
-    platforms = [ "i686-linux" "x86_64-linux" ];
-    maintainers = with maintainers; [ ];
-  };
-}
diff --git a/pkgs/applications/audio/gmpc/default.nix b/pkgs/applications/audio/gmpc/default.nix
index 33930dfb7d2d..071e900b59b2 100644
--- a/pkgs/applications/audio/gmpc/default.nix
+++ b/pkgs/applications/audio/gmpc/default.nix
@@ -16,7 +16,7 @@
 , libICE
 , sqlite
 , hicolor-icon-theme
-, wrapGAppsHook
+, wrapGAppsHook3
 }:
 
 stdenv.mkDerivation rec {
@@ -41,7 +41,7 @@ stdenv.mkDerivation rec {
     sha256 = "0b3bnxf98i5lhjyljvgxgx9xmb6p46cn3a9cccrng14nagri9556";
   };
 
-  nativeBuildInputs = [ pkg-config libtool intltool gob2 vala wrapGAppsHook ];
+  nativeBuildInputs = [ pkg-config libtool intltool gob2 vala wrapGAppsHook3 ];
   buildInputs = [
     glib
     gtk2
diff --git a/pkgs/applications/audio/go-musicfox/default.nix b/pkgs/applications/audio/go-musicfox/default.nix
index 944b2aa1aef1..4a51ab050314 100644
--- a/pkgs/applications/audio/go-musicfox/default.nix
+++ b/pkgs/applications/audio/go-musicfox/default.nix
@@ -9,18 +9,18 @@
 
 buildGoModule rec {
   pname = "go-musicfox";
-  version = "4.3.3";
+  version = "4.4.0";
 
   src = fetchFromGitHub {
     owner = "go-musicfox";
     repo = "go-musicfox";
     rev = "v${version}";
-    hash = "sha256-J6R3T92cHFUkKwc+GKm612tVjglP2Tc/kDUmzUMhvio=";
+    hash = "sha256-11N3dykuEDKAryieNVaPfb3G7E/a4A7Znx9rBvFTHC4=";
   };
 
   deleteVendor = true;
 
-  vendorHash = "sha256-KSIdBEEvYaYcDIDmzfRO857I8FSN4Ajw6phAPQLYEqg=";
+  vendorHash = "sha256-ey78zeCSEuRgteG5ZRb4uO88E6lwEgqSxKfjJg3NGT4=";
 
   subPackages = [ "cmd/musicfox.go" ];
 
diff --git a/pkgs/applications/audio/goodvibes/default.nix b/pkgs/applications/audio/goodvibes/default.nix
index 111cad65a013..d2eb394e59b3 100644
--- a/pkgs/applications/audio/goodvibes/default.nix
+++ b/pkgs/applications/audio/goodvibes/default.nix
@@ -10,7 +10,7 @@
 , libsoup
 , keybinder3
 , gst_all_1
-, wrapGAppsHook
+, wrapGAppsHook3
 , appstream-glib
 , desktop-file-utils
 }:
@@ -30,7 +30,7 @@ stdenv.mkDerivation rec {
     meson
     ninja
     pkg-config
-    wrapGAppsHook
+    wrapGAppsHook3
     appstream-glib
     desktop-file-utils
   ];
diff --git a/pkgs/applications/audio/gpodder/default.nix b/pkgs/applications/audio/gpodder/default.nix
index 80f12aa2d0dc..cde01e65bdee 100644
--- a/pkgs/applications/audio/gpodder/default.nix
+++ b/pkgs/applications/audio/gpodder/default.nix
@@ -8,7 +8,7 @@
 , intltool
 , python3
 , python3Packages
-, wrapGAppsHook
+, wrapGAppsHook3
 , xdg-utils
 }:
 
@@ -34,7 +34,7 @@ python3Packages.buildPythonApplication rec {
 
   nativeBuildInputs = [
     intltool
-    wrapGAppsHook
+    wrapGAppsHook3
     glibcLocales
     gobject-introspection
   ];
diff --git a/pkgs/applications/audio/gspeech/default.nix b/pkgs/applications/audio/gspeech/default.nix
index f2216ed7d256..86a93c78962d 100644
--- a/pkgs/applications/audio/gspeech/default.nix
+++ b/pkgs/applications/audio/gspeech/default.nix
@@ -2,7 +2,7 @@
 , fetchFromGitHub
 , python3
 , gtk3
-, wrapGAppsHook
+, wrapGAppsHook3
 , glibcLocales
 , gobject-introspection
 , gettext
@@ -30,7 +30,7 @@ python3.pkgs.buildPythonApplication rec {
   };
 
   nativeBuildInputs = [
-    wrapGAppsHook
+    wrapGAppsHook3
     gobject-introspection
     pango
     gdk-pixbuf
diff --git a/pkgs/applications/audio/gst123/default.nix b/pkgs/applications/audio/gst123/default.nix
index 37b343f540b4..65d925342be2 100644
--- a/pkgs/applications/audio/gst123/default.nix
+++ b/pkgs/applications/audio/gst123/default.nix
@@ -3,7 +3,7 @@
 , fetchFromGitHub
 , autoreconfHook
 , pkg-config
-, wrapGAppsHook
+, wrapGAppsHook3
 , gst_all_1
 , gtk3
 , ncurses
@@ -23,7 +23,7 @@ stdenv.mkDerivation (finalAttrs: {
   nativeBuildInputs = [
     autoreconfHook
     pkg-config
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
diff --git a/pkgs/applications/audio/guitarix/default.nix b/pkgs/applications/audio/guitarix/default.nix
index c1d1cf5571c5..50c00101dc21 100644
--- a/pkgs/applications/audio/guitarix/default.nix
+++ b/pkgs/applications/audio/guitarix/default.nix
@@ -31,7 +31,7 @@
 , sord
 , sratom
 , wafHook
-, wrapGAppsHook
+, wrapGAppsHook3
 , zita-convolver
 , zita-resampler
 , optimizationSupport ? false # Enable support for native CPU extensions
@@ -62,7 +62,7 @@ stdenv.mkDerivation (finalAttrs: {
     pkg-config
     python3
     wafHook
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
diff --git a/pkgs/applications/audio/hivelytracker/default.nix b/pkgs/applications/audio/hivelytracker/default.nix
index 324d0ca362b4..8ad62eb81a5a 100644
--- a/pkgs/applications/audio/hivelytracker/default.nix
+++ b/pkgs/applications/audio/hivelytracker/default.nix
@@ -6,7 +6,7 @@
 , SDL_image
 , SDL_ttf
 , gtk3
-, wrapGAppsHook
+, wrapGAppsHook3
 }:
 
 stdenv.mkDerivation (finalAttrs: {
@@ -22,7 +22,7 @@ stdenv.mkDerivation (finalAttrs: {
 
   nativeBuildInputs = [
     pkg-config
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
diff --git a/pkgs/applications/audio/hushboard/default.nix b/pkgs/applications/audio/hushboard/default.nix
index 3248ab35b22c..dbc0a467024c 100644
--- a/pkgs/applications/audio/hushboard/default.nix
+++ b/pkgs/applications/audio/hushboard/default.nix
@@ -9,7 +9,7 @@
 , pycairo
 , pygobject3
 , six
-, wrapGAppsHook
+, wrapGAppsHook3
 , xlib
 }:
 
@@ -25,7 +25,7 @@ buildPythonApplication {
   };
 
   nativeBuildInputs = [
-    wrapGAppsHook
+    wrapGAppsHook3
     gobject-introspection
   ];
 
diff --git a/pkgs/applications/audio/indicator-sound-switcher/default.nix b/pkgs/applications/audio/indicator-sound-switcher/default.nix
index c47aff47fffe..1a9928734827 100644
--- a/pkgs/applications/audio/indicator-sound-switcher/default.nix
+++ b/pkgs/applications/audio/indicator-sound-switcher/default.nix
@@ -5,7 +5,7 @@
 , gettext
 , gtk3
 , gobject-introspection
-, intltool, wrapGAppsHook, glib
+, intltool, wrapGAppsHook3, glib
 , librsvg
 , libayatana-appindicator
 , libpulseaudio
@@ -32,7 +32,7 @@ python3Packages.buildPythonApplication rec {
   nativeBuildInputs = [
     gettext
     intltool
-    wrapGAppsHook
+    wrapGAppsHook3
     glib
     gdk-pixbuf
   ];
diff --git a/pkgs/applications/audio/jacktrip/default.nix b/pkgs/applications/audio/jacktrip/default.nix
index f8fb4cedbc9f..a7b3624546e0 100644
--- a/pkgs/applications/audio/jacktrip/default.nix
+++ b/pkgs/applications/audio/jacktrip/default.nix
@@ -11,7 +11,7 @@
 }:
 
 stdenv.mkDerivation rec {
-  version = "2.2.5";
+  version = "2.3.0";
   pname = "jacktrip";
 
   src = fetchFromGitHub {
@@ -19,7 +19,7 @@ stdenv.mkDerivation rec {
     repo = "jacktrip";
     rev = "v${version}";
     fetchSubmodules = true;
-    sha256 = "sha256-rZ8oaud+ovJ7t+SGnWe7QbqjQns1EkbbwpdE+rLr6nc=";
+    sha256 = "sha256-MUP+8Hjrj95D5SONIEsweB5j+kgEhLEWTKWBlEWLt94=";
   };
 
   preConfigure = ''
diff --git a/pkgs/applications/audio/jmusicbot/default.nix b/pkgs/applications/audio/jmusicbot/default.nix
index 5caf1a472d57..3bf4d63eec72 100644
--- a/pkgs/applications/audio/jmusicbot/default.nix
+++ b/pkgs/applications/audio/jmusicbot/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   pname = "JMusicBot";
-  version = "0.4.0";
+  version = "0.4.1";
 
   src = fetchurl {
     url = "https://github.com/jagrosh/MusicBot/releases/download/${version}/JMusicBot-${version}.jar";
-    sha256 = "sha256-JSVrzyCqAp3V5OZ+KJczhWGolPkdaHsPmiqfmhapQMs=";
+    sha256 = "sha256-+0814w4zKNr2TxZ9CS8FxeuTLa71jM+DhrfFvLMFlw0=";
   };
 
   dontUnpack = true;
diff --git a/pkgs/applications/audio/keyfinder-cli/default.nix b/pkgs/applications/audio/keyfinder-cli/default.nix
index 33adb65f5e8a..9fe910d85769 100644
--- a/pkgs/applications/audio/keyfinder-cli/default.nix
+++ b/pkgs/applications/audio/keyfinder-cli/default.nix
@@ -26,7 +26,7 @@ stdenv.mkDerivation rec {
       used to estimate the musical key of many different audio formats.
     '';
     license = licenses.gpl3Plus;
-    platforms = platforms.linux;
+    platforms = platforms.unix;
     mainProgram = "keyfinder-cli";
   };
 }
diff --git a/pkgs/applications/audio/lingot/default.nix b/pkgs/applications/audio/lingot/default.nix
index 3d7339f571d6..4cc31ae42154 100644
--- a/pkgs/applications/audio/lingot/default.nix
+++ b/pkgs/applications/audio/lingot/default.nix
@@ -3,7 +3,7 @@
 , fetchurl
 , pkg-config
 , intltool
-, wrapGAppsHook
+, wrapGAppsHook3
 , gtk3
 , alsa-lib
 , libpulseaudio
@@ -26,7 +26,7 @@ stdenv.mkDerivation rec {
   nativeBuildInputs = [
     pkg-config
     intltool
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
diff --git a/pkgs/applications/audio/lollypop/default.nix b/pkgs/applications/audio/lollypop/default.nix
index 3fb5e7efa798..1b833425610d 100644
--- a/pkgs/applications/audio/lollypop/default.nix
+++ b/pkgs/applications/audio/lollypop/default.nix
@@ -18,14 +18,15 @@
 , gdk-pixbuf
 , glib
 , pango
-, wrapGAppsHook
+, wrapGAppsHook3
 , lastFMSupport ? true
 , youtubeSupport ? true
+, kid3Support ? true
 }:
 
-python3.pkgs.buildPythonApplication rec  {
+python3.pkgs.buildPythonApplication rec {
   pname = "lollypop";
-  version = "1.4.37";
+  version = "1.4.39";
 
   format = "other";
 
@@ -35,7 +36,7 @@ python3.pkgs.buildPythonApplication rec  {
     repo = pname;
     rev = version;
     fetchSubmodules = true;
-    sha256 = "sha256-3GPmGNbbSxvLq0t3F9q1x64BwNQCEvFQWLb0bSO9KUY=";
+    sha256 = "sha256-VPHQwy2+XR9R7toIN5sNFB91ddROlL7Scr8AKLgUzuo=";
   };
 
   nativeBuildInputs = [
@@ -45,35 +46,32 @@ python3.pkgs.buildPythonApplication rec  {
     meson
     ninja
     pkg-config
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
-  buildInputs = with gst_all_1; [
-    gdk-pixbuf
-    glib
-    glib-networking
-    gst-libav
-    gst-plugins-bad
-    gst-plugins-base
-    gst-plugins-good
-    gst-plugins-ugly
-    gstreamer
-    gtk3
-    libhandy
-    libsoup_3
-    pango
-    totem-pl-parser
-  ] ++ lib.optional lastFMSupport libsecret;
+  buildInputs = with gst_all_1;
+    [
+      gdk-pixbuf
+      glib
+      glib-networking
+      gst-libav
+      gst-plugins-bad
+      gst-plugins-base
+      gst-plugins-good
+      gst-plugins-ugly
+      gstreamer
+      gtk3
+      libhandy
+      libsoup_3
+      pango
+      totem-pl-parser
+    ] ++ lib.optional lastFMSupport libsecret;
 
-  propagatedBuildInputs = with python3.pkgs; [
-    beautifulsoup4
-    pillow
-    pycairo
-    pygobject3
-  ]
-  ++ lib.optional lastFMSupport pylast
-  ++ lib.optional youtubeSupport youtube-dl
-  ;
+  propagatedBuildInputs = with python3.pkgs;
+    [ beautifulsoup4 pillow pycairo pygobject3 ]
+    ++ lib.optional lastFMSupport pylast
+    ++ lib.optional youtubeSupport youtube-dl
+    ++ lib.optional kid3Support pkgs.kid3;
 
   postPatch = ''
     chmod +x meson_post_install.py
@@ -95,9 +93,7 @@ python3.pkgs.buildPythonApplication rec  {
     makeWrapperArgs+=("''${gappsWrapperArgs[@]}")
   '';
 
-  passthru = {
-    updateScript = nix-update-script { };
-  };
+  passthru = { updateScript = nix-update-script { }; };
 
   meta = with lib; {
     changelog = "https://gitlab.gnome.org/World/lollypop/tags/${version}";
diff --git a/pkgs/applications/audio/lyrebird/default.nix b/pkgs/applications/audio/lyrebird/default.nix
index 5eb2d745cdc3..be12c5559650 100644
--- a/pkgs/applications/audio/lyrebird/default.nix
+++ b/pkgs/applications/audio/lyrebird/default.nix
@@ -2,7 +2,7 @@
 , lib
 , fetchFromGitHub
 , makeDesktopItem
-, wrapGAppsHook
+, wrapGAppsHook3
 , gtk3
 , gobject-introspection
 , sox
@@ -34,7 +34,7 @@ python3Packages.buildPythonApplication rec {
 
   propagatedBuildInputs = with python3Packages; [ toml pygobject3 ];
 
-  nativeBuildInputs = [ wrapGAppsHook gobject-introspection ];
+  nativeBuildInputs = [ wrapGAppsHook3 gobject-introspection ];
 
   buildInputs = [ gtk3 sox ];
 
diff --git a/pkgs/applications/audio/mixxx/default.nix b/pkgs/applications/audio/mixxx/default.nix
index 4abc6d4956f4..0ebc6c604bdc 100644
--- a/pkgs/applications/audio/mixxx/default.nix
+++ b/pkgs/applications/audio/mixxx/default.nix
@@ -52,6 +52,7 @@
 , upower
 , vamp-plugin-sdk
 , wavpack
+, wrapGAppsHook3
 }:
 
 mkDerivation rec {
@@ -65,7 +66,9 @@ mkDerivation rec {
     hash = "sha256-JSWUzerm7D6AKq6g/9eRrt3EE2movRdM+VLUg07sLHo=";
   };
 
-  nativeBuildInputs = [ cmake pkg-config ];
+  nativeBuildInputs = [ cmake pkg-config wrapGAppsHook3 ];
+
+  dontWrapGApps = true;
 
   buildInputs = [
     chromaprint
@@ -118,9 +121,9 @@ mkDerivation rec {
     wavpack
   ];
 
-  qtWrapperArgs = [
-    "--set LOCALE_ARCHIVE ${glibcLocales}/lib/locale/locale-archive"
-  ];
+  preFixup=''
+    qtWrapperArgs+=(--set LOCALE_ARCHIVE ${glibcLocales}/lib/locale/locale-archive ''${gappsWrapperArgs[@]})
+  '';
 
   # mixxx installs udev rules to DATADIR instead of SYSCONFDIR
   # let's disable this and install udev rules manually via postInstall
diff --git a/pkgs/applications/audio/monkeys-audio/default.nix b/pkgs/applications/audio/monkeys-audio/default.nix
index 0018c99bc1af..3fdcda98d116 100644
--- a/pkgs/applications/audio/monkeys-audio/default.nix
+++ b/pkgs/applications/audio/monkeys-audio/default.nix
@@ -5,13 +5,13 @@
 }:
 
 stdenv.mkDerivation (finalAttrs: {
-  version = "10.71";
+  version = "10.72";
   pname = "monkeys-audio";
 
   src = fetchzip {
     url = "https://monkeysaudio.com/files/MAC_${
       builtins.concatStringsSep "" (lib.strings.splitString "." finalAttrs.version)}_SDK.zip";
-    hash = "sha256-YHPC+dHfvRSr6GldWSlgCGt/wuO/WXQGRliarnM8/AU=";
+    hash = "sha256-vtpQhCV1hkme69liTO13vz+kxpA3zJ+U1In/4z6qLbQ=";
     stripRoot = false;
   };
   nativeBuildInputs = [
diff --git a/pkgs/applications/audio/mopidy/youtube.nix b/pkgs/applications/audio/mopidy/youtube.nix
index 20958429c30e..a4aea017ea4e 100644
--- a/pkgs/applications/audio/mopidy/youtube.nix
+++ b/pkgs/applications/audio/mopidy/youtube.nix
@@ -2,6 +2,7 @@
 , fetchFromGitHub
 , python3
 , mopidy
+, extraPkgs ? pkgs: []
 }:
 
 python3.pkgs.buildPythonApplication rec {
@@ -25,7 +26,7 @@ python3.pkgs.buildPythonApplication rec {
     ytmusicapi
   ] ++ [
     mopidy
-  ];
+  ] ++ extraPkgs pkgs;
 
   nativeCheckInputs = with python3.pkgs; [
     vcrpy
diff --git a/pkgs/applications/audio/mpdevil/default.nix b/pkgs/applications/audio/mpdevil/default.nix
index 9dff16959447..3ca2a0e66152 100644
--- a/pkgs/applications/audio/mpdevil/default.nix
+++ b/pkgs/applications/audio/mpdevil/default.nix
@@ -3,7 +3,7 @@
 , python3Packages
 , gdk-pixbuf, glib, gobject-introspection, gtk3
 , libnotify
-, wrapGAppsHook }:
+, wrapGAppsHook3 }:
 
 python3Packages.buildPythonApplication rec {
   pname = "mpdevil";
@@ -19,7 +19,7 @@ python3Packages.buildPythonApplication rec {
   format = "other";
 
   nativeBuildInputs = [
-    glib.dev gobject-introspection gtk3 pkg-config meson ninja wrapGAppsHook
+    glib.dev gobject-introspection gtk3 pkg-config meson ninja wrapGAppsHook3
   ];
 
   buildInputs = [
@@ -40,7 +40,7 @@ python3Packages.buildPythonApplication rec {
 
   # Prevent double wrapping.
   dontWrapGApps = true;
-  # Otherwise wrapGAppsHook do not pick up the dependencies correctly.
+  # Otherwise wrapGAppsHook3 do not pick up the dependencies correctly.
   strictDeps = false;
   # There aren't any checks.
   doCheck = false;
diff --git a/pkgs/applications/audio/mpg321/default.nix b/pkgs/applications/audio/mpg321/default.nix
deleted file mode 100644
index e00b6722f38d..000000000000
--- a/pkgs/applications/audio/mpg321/default.nix
+++ /dev/null
@@ -1,53 +0,0 @@
-{lib, stdenv, fetchurl, fetchpatch, libao, libmad, libid3tag, zlib, alsa-lib
-# Specify default libao output plugin to use (e.g. "alsa", "pulse" …).
-# If null, it will use the libao system default.
-, defaultAudio ? null
-}:
-
-stdenv.mkDerivation rec {
-  pname = "mpg321";
-  version = "0.3.2";
-
-  src = fetchurl {
-    url = "mirror://sourceforge/mpg321/${version}/mpg321_${version}.orig.tar.gz";
-    sha256 = "0ki8mh76bbmdh77qsiw682dvi8y468yhbdabqwg05igmwc1wqvq5";
-  };
-
-  patches = [
-    (fetchpatch {
-      name = "CVE-2018-7263.patch";
-      url = "https://sources.debian.org/data/main/m/mpg321/0.3.2-3/debian/patches/handle_illegal_bitrate_value.patch";
-      sha256 = "15simp5fjvm9b024ryfh441rkh2d5bcrizqkzlrh07n9sm7fkw6x";
-    })
-    # Apple defines semun already. Skip redefining it to fix build errors.
-    (fetchpatch {
-      url = "https://raw.githubusercontent.com/Homebrew/formula-patches/85fa66a9/mpg321/0.3.2.patch";
-      sha256 = "sha256-qFYpKpE9PZSzOJrnsQINZi6FvUVX0anRyOvlF5eOYqE=";
-    })
-  ];
-
-  hardeningDisable = [ "format" ];
-
-  # Workaround build failure on -fno-common toolchains like upstream
-  # gcc-10. Otherwise build fails as:
-  #   ld: volume.o:/build/mpg321-0.3.2-orig/mpg321.h:119: multiple definition of
-  #     `loop_remaining'; mpg321.o:/build/mpg321-0.3.2-orig/mpg321.h:119: first defined here
-  env.NIX_CFLAGS_COMPILE = "-fcommon";
-
-  configureFlags =
-    [ ("--enable-alsa=" + (if stdenv.isLinux then "yes" else "no")) ]
-    ++ (lib.optional (defaultAudio != null)
-         "--with-default-audio=${defaultAudio}");
-
-  buildInputs = [libao libid3tag libmad zlib]
-    ++ lib.optional stdenv.isLinux alsa-lib;
-
-  installTargets = [ "install" "install-man" ];
-
-  meta = with lib; {
-    description = "Command-line MP3 player";
-    homepage = "https://mpg321.sourceforge.net/";
-    license = licenses.gpl2;
-    platforms = platforms.unix;
-  };
-}
diff --git a/pkgs/applications/audio/muse/default.nix b/pkgs/applications/audio/muse/default.nix
index 642d1057b483..d5f32097250b 100644
--- a/pkgs/applications/audio/muse/default.nix
+++ b/pkgs/applications/audio/muse/default.nix
@@ -81,7 +81,7 @@ stdenv.mkDerivation (finalAttrs: {
       it is published under the GNU General Public License.
     '';
     license = lib.licenses.gpl2Plus;
-    maintainers = with lib.maintainers; [ eclairevoyant orivej ];
+    maintainers = with lib.maintainers; [ orivej ];
     platforms = lib.platforms.linux;
     mainProgram = "muse4";
   };
diff --git a/pkgs/applications/audio/musescore/default.nix b/pkgs/applications/audio/musescore/default.nix
index 707ec5c8ebfe..a5058f9b7834 100644
--- a/pkgs/applications/audio/musescore/default.nix
+++ b/pkgs/applications/audio/musescore/default.nix
@@ -47,13 +47,13 @@ let
   } else portaudio;
 in stdenv'.mkDerivation (finalAttrs: {
   pname = "musescore";
-  version = "4.2.1";
+  version = "4.3.0";
 
   src = fetchFromGitHub {
     owner = "musescore";
     repo = "MuseScore";
     rev = "v${finalAttrs.version}";
-    sha256 = "sha256-YCeO/ijxA+tZxNviqmlIBkAdjPTrKoOoo1QyMIOqhWU=";
+    sha256 = "sha256-X3zvrIf5DOC5PWcnuw0aClm++IWUED1ZzAyjnp7Mo+g=";
   };
 
   cmakeFlags = [
@@ -84,11 +84,6 @@ in stdenv'.mkDerivation (finalAttrs: {
     "--set-default QT_QPA_PLATFORM xcb"
   ];
 
-  # HACK `propagatedSandboxProfile` does not appear to actually propagate the
-  # sandbox profile from `qtbase`, see:
-  # https://github.com/NixOS/nixpkgs/issues/237458
-  sandboxProfile = toString qtbase.__propagatedSandboxProfile or null;
-
   nativeBuildInputs = [
     wrapQtAppsHook
     cmake
diff --git a/pkgs/applications/audio/muso/default.nix b/pkgs/applications/audio/muso/default.nix
index 30b26e7e5979..217ff8afef8a 100644
--- a/pkgs/applications/audio/muso/default.nix
+++ b/pkgs/applications/audio/muso/default.nix
@@ -1,5 +1,5 @@
 { lib, stdenv, fetchFromGitHub, rustPlatform
-, pkg-config, wrapGAppsHook, CoreServices
+, pkg-config, wrapGAppsHook3, CoreServices
 }:
 
 rustPlatform.buildRustPackage rec {
@@ -13,7 +13,7 @@ rustPlatform.buildRustPackage rec {
     hash = "sha256-09DWUER0ZWQuwfE3sjov2GjJNI7coE3D3E5iUy9mlSE=";
   };
 
-  nativeBuildInputs = [ pkg-config wrapGAppsHook ];
+  nativeBuildInputs = [ pkg-config wrapGAppsHook3 ];
   buildInputs = lib.optional stdenv.isDarwin CoreServices;
 
   preConfigure = ''
diff --git a/pkgs/applications/audio/mympd/default.nix b/pkgs/applications/audio/mympd/default.nix
index cae2a3b7f1a9..5d60783e0171 100644
--- a/pkgs/applications/audio/mympd/default.nix
+++ b/pkgs/applications/audio/mympd/default.nix
@@ -16,13 +16,13 @@
 
 stdenv.mkDerivation (finalAttrs: {
   pname = "mympd";
-  version = "14.1.2";
+  version = "15.0.2";
 
   src = fetchFromGitHub {
     owner = "jcorporation";
     repo = "myMPD";
     rev = "v${finalAttrs.version}";
-    sha256 = "sha256-CMqH9iy9U85bKj7YLcYsKFs5CDePGBEfUWL+sb7WzBw=";
+    sha256 = "sha256-Yz6gL87Vc8iFTRgKhyUgLL1ool+oinvwq2W9OjFl/OQ=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/applications/audio/ncspot/default.nix b/pkgs/applications/audio/ncspot/default.nix
index 1bc391b4b55c..d5abb66d2398 100644
--- a/pkgs/applications/audio/ncspot/default.nix
+++ b/pkgs/applications/audio/ncspot/default.nix
@@ -20,16 +20,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "ncspot";
-  version = "1.1.0";
+  version = "1.1.1";
 
   src = fetchFromGitHub {
     owner = "hrkfdn";
     repo = "ncspot";
     rev = "v${version}";
-    hash = "sha256-RgA3jV/vD6qgIVQCZ0Sm+9CST4SlqN4MUurVM3nIdh0=";
+    hash = "sha256-Sl4i9HFl+Dth9jmW6hPZzgh0Y35pRo1Xi9LRxCuSIP4=";
   };
 
-  cargoHash = "sha256-8ZUgm1O4NmZpxgNRKnh1MNhiFNoBWQHo22kyP3hWJwI=";
+  cargoHash = "sha256-INgDavtBI75h+qVlxTncYu3su+SH/D7HTlThRHJzwkY=";
 
   nativeBuildInputs = [ pkg-config ]
     ++ lib.optional withClipboard python3;
diff --git a/pkgs/applications/audio/opustags/default.nix b/pkgs/applications/audio/opustags/default.nix
index 314d475a04ed..7978e4864ac4 100644
--- a/pkgs/applications/audio/opustags/default.nix
+++ b/pkgs/applications/audio/opustags/default.nix
@@ -3,13 +3,13 @@
 
 stdenv.mkDerivation rec {
   pname = "opustags";
-  version = "1.9.0";
+  version = "1.10.0";
 
   src = fetchFromGitHub {
     owner = "fmang";
     repo = "opustags";
     rev = version;
-    sha256 = "sha256-cRDyE6/nv8g0OWxZ/AqfwVrk3cSIycvbjvQm9CyQK7g=";
+    sha256 = "sha256-2t6fhA1s1sKpHTmaMtK+DZ8xLpS6ntq33b4ycuMc8x8=";
   };
 
 
diff --git a/pkgs/applications/audio/paprefs/default.nix b/pkgs/applications/audio/paprefs/default.nix
index 212d866059da..fa28433fe9cd 100644
--- a/pkgs/applications/audio/paprefs/default.nix
+++ b/pkgs/applications/audio/paprefs/default.nix
@@ -8,7 +8,7 @@
 , pulseaudioFull
 , glibmm
 , gtkmm3
-, wrapGAppsHook
+, wrapGAppsHook3
 }:
 
 stdenv.mkDerivation rec {
@@ -25,7 +25,7 @@ stdenv.mkDerivation rec {
     ninja
     gettext
     pkg-config
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
diff --git a/pkgs/applications/audio/pavucontrol/default.nix b/pkgs/applications/audio/pavucontrol/default.nix
index 00aed303666e..019c777cd046 100644
--- a/pkgs/applications/audio/pavucontrol/default.nix
+++ b/pkgs/applications/audio/pavucontrol/default.nix
@@ -9,7 +9,7 @@
 , libcanberra-gtk3
 , json-glib
 , gnome
-, wrapGAppsHook
+, wrapGAppsHook3
 }:
 
 stdenv.mkDerivation rec {
@@ -30,7 +30,7 @@ stdenv.mkDerivation rec {
     gnome.adwaita-icon-theme
   ];
 
-  nativeBuildInputs = [ pkg-config intltool wrapGAppsHook ];
+  nativeBuildInputs = [ pkg-config intltool wrapGAppsHook3 ];
 
   configureFlags = [ "--disable-lynx" ];
 
diff --git a/pkgs/applications/audio/pithos/default.nix b/pkgs/applications/audio/pithos/default.nix
index 1ff4aedb6b00..dbb3a63fce6b 100644
--- a/pkgs/applications/audio/pithos/default.nix
+++ b/pkgs/applications/audio/pithos/default.nix
@@ -1,5 +1,5 @@
 { stdenv, lib, fetchFromGitHub, meson, ninja, pkg-config, appstream-glib
-, wrapGAppsHook, pythonPackages, gtk3, gnome, gobject-introspection
+, wrapGAppsHook3, pythonPackages, gtk3, gnome, gobject-introspection
 , libnotify, libsecret, gst_all_1 }:
 
 pythonPackages.buildPythonApplication rec {
@@ -20,7 +20,7 @@ pythonPackages.buildPythonApplication rec {
     patchShebangs meson_post_install.py
   '';
 
-  nativeBuildInputs = [ meson ninja pkg-config appstream-glib wrapGAppsHook ];
+  nativeBuildInputs = [ meson ninja pkg-config appstream-glib wrapGAppsHook3 ];
 
   propagatedNativeBuildInputs = [
     gobject-introspection
diff --git a/pkgs/applications/audio/plexamp/default.nix b/pkgs/applications/audio/plexamp/default.nix
index 245760be5f70..29f8dd929bad 100644
--- a/pkgs/applications/audio/plexamp/default.nix
+++ b/pkgs/applications/audio/plexamp/default.nix
@@ -1,4 +1,4 @@
-{ lib, fetchurl, appimageTools, pkgs }:
+{ lib, fetchurl, appimageTools }:
 
 let
   pname = "plexamp";
@@ -16,9 +16,6 @@ let
 in appimageTools.wrapType2 {
   inherit pname version src;
 
-  multiArch = false; # no 32bit needed
-  extraPkgs = pkgs: appimageTools.defaultFhsEnvArgs.multiPkgs pkgs ++ [ pkgs.bash ];
-
   extraInstallCommands = ''
     install -m 444 -D ${appimageContents}/plexamp.desktop $out/share/applications/plexamp.desktop
     install -m 444 -D ${appimageContents}/plexamp.png \
diff --git a/pkgs/applications/audio/praat/default.nix b/pkgs/applications/audio/praat/default.nix
index 6ea7b2f88536..39d258c806c7 100644
--- a/pkgs/applications/audio/praat/default.nix
+++ b/pkgs/applications/audio/praat/default.nix
@@ -6,23 +6,23 @@
 , libpulseaudio
 , pkg-config
 , stdenv
-, wrapGAppsHook
+, wrapGAppsHook3
 }:
 
 stdenv.mkDerivation (finalAttrs: {
   pname = "praat";
-  version = "6.4.07";
+  version = "6.4.12";
 
   src = fetchFromGitHub {
     owner = "praat";
     repo = "praat";
     rev = "v${finalAttrs.version}";
-    hash = "sha256-r36znpkyI6/UPtOm1ZjedOadRG1BiIscRV9qRLf/A5Q=";
+    hash = "sha256-nriw/nP73m27QWdhC5ooTuVMul+GdOUsnVroM/CZiiY=";
   };
 
   nativeBuildInputs = [
     pkg-config
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
diff --git a/pkgs/applications/audio/pulseeffects-legacy/default.nix b/pkgs/applications/audio/pulseeffects-legacy/default.nix
index c243b99f098c..1fb71e05d2f2 100644
--- a/pkgs/applications/audio/pulseeffects-legacy/default.nix
+++ b/pkgs/applications/audio/pulseeffects-legacy/default.nix
@@ -7,7 +7,7 @@
 , python3
 , libxml2
 , desktop-file-utils
-, wrapGAppsHook
+, wrapGAppsHook3
 , gst_all_1
 , pulseaudio
 , gtk3
@@ -62,7 +62,7 @@ in stdenv.mkDerivation rec {
     itstool
     python3
     desktop-file-utils
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
diff --git a/pkgs/applications/audio/pyradio/default.nix b/pkgs/applications/audio/pyradio/default.nix
index 72cbfd443c08..45cec01bd698 100644
--- a/pkgs/applications/audio/pyradio/default.nix
+++ b/pkgs/applications/audio/pyradio/default.nix
@@ -6,13 +6,13 @@
 
 python3Packages.buildPythonApplication rec {
   pname = "pyradio";
-  version = "0.9.3.4";
+  version = "0.9.3.6";
 
   src = fetchFromGitHub {
     owner = "coderholic";
     repo = "pyradio";
     rev = "refs/tags/${version}";
-    hash = "sha256-QifBzQsvYU5kP5mnidOgWGBh3h2MvJm8Wo0i1v6j/cU=";
+    hash = "sha256-As4xjwJtEKlnFuBigC7nN0kAPe0+99rE9KZ0F6i7qIQ=";
   };
 
   nativeBuildInputs = [
@@ -28,6 +28,12 @@ python3Packages.buildPythonApplication rec {
     rich
   ];
 
+  postPatch = ''
+    # Disable update check
+    substituteInPlace pyradio/config \
+      --replace-fail "distro = None" "distro = NixOS"
+  '';
+
   checkPhase = ''
     $out/bin/pyradio --help
   '';
diff --git a/pkgs/applications/audio/qmmp/default.nix b/pkgs/applications/audio/qmmp/default.nix
index 943c5ab0b974..af7abcef17db 100644
--- a/pkgs/applications/audio/qmmp/default.nix
+++ b/pkgs/applications/audio/qmmp/default.nix
@@ -26,11 +26,11 @@
 
 stdenv.mkDerivation rec {
   pname = "qmmp";
-  version = "2.1.7";
+  version = "2.1.8";
 
   src = fetchurl {
     url = "https://qmmp.ylsoftware.com/files/qmmp/2.1/${pname}-${version}.tar.bz2";
-    hash = "sha256-5qdnvGFgFEk+00tjnVhqW29AyyjCfiFQOyYyVmAjHnM=";
+    hash = "sha256-hGphQ8epqym47C9doiSOQd3yc28XwV2UsNc7ivhaae4=";
   };
 
   nativeBuildInputs = [ cmake pkg-config wrapQtAppsHook ];
diff --git a/pkgs/applications/audio/qpwgraph/default.nix b/pkgs/applications/audio/qpwgraph/default.nix
index 60ac9cb81b79..97427b99e586 100644
--- a/pkgs/applications/audio/qpwgraph/default.nix
+++ b/pkgs/applications/audio/qpwgraph/default.nix
@@ -13,14 +13,14 @@
 
 stdenv.mkDerivation (finalAttrs: {
   pname = "qpwgraph";
-  version = "0.7.1";
+  version = "0.7.2";
 
   src = fetchFromGitLab {
     domain = "gitlab.freedesktop.org";
     owner = "rncbc";
     repo = "qpwgraph";
     rev = "v${finalAttrs.version}";
-    sha256 = "sha256-mtW+dbjdp7as0N5+iacMSNrJ4jm8HWYqJP6G+lutucc=";
+    sha256 = "sha256-aXZsAOsdp0x7J0T9B9C1Qm2qDkhRNHRWUmPafdHRrOQ=";
   };
 
   nativeBuildInputs = [ cmake pkg-config wrapQtAppsHook ];
diff --git a/pkgs/applications/audio/quodlibet/default.nix b/pkgs/applications/audio/quodlibet/default.nix
index f7baad9c53a0..66d74efdcfd7 100644
--- a/pkgs/applications/audio/quodlibet/default.nix
+++ b/pkgs/applications/audio/quodlibet/default.nix
@@ -5,7 +5,7 @@
   # build time
 , gettext
 , gobject-introspection
-, wrapGAppsHook
+, wrapGAppsHook3
 
   # runtime
 , adwaita-icon-theme
@@ -62,7 +62,7 @@ python3.pkgs.buildPythonApplication rec {
   nativeBuildInputs = [
     gettext
     gobject-introspection
-    wrapGAppsHook
+    wrapGAppsHook3
   ] ++ (with python3.pkgs; [
     sphinx-rtd-theme
     sphinxHook
diff --git a/pkgs/applications/audio/radiotray-ng/default.nix b/pkgs/applications/audio/radiotray-ng/default.nix
index 56c316dadcdb..c67f3f4c56c0 100644
--- a/pkgs/applications/audio/radiotray-ng/default.nix
+++ b/pkgs/applications/audio/radiotray-ng/default.nix
@@ -26,7 +26,7 @@
 # Testing
 , gtest
 # Fixup
-, wrapGAppsHook
+, wrapGAppsHook3
 , makeWrapper
 }:
 
@@ -50,7 +50,7 @@ stdenv.mkDerivation rec {
     sha256 = "sha256-/0GlQdSsIPKGrDT9CgxvaH8TpAbqxFduwL2A2+BSrEI=";
   };
 
-  nativeBuildInputs = [ cmake pkg-config wrapGAppsHook makeWrapper ];
+  nativeBuildInputs = [ cmake pkg-config wrapGAppsHook3 makeWrapper ];
 
   buildInputs = [
     curl
diff --git a/pkgs/applications/audio/rhythmbox/default.nix b/pkgs/applications/audio/rhythmbox/default.nix
index c14638912af2..0ef2bd5a6c40 100644
--- a/pkgs/applications/audio/rhythmbox/default.nix
+++ b/pkgs/applications/audio/rhythmbox/default.nix
@@ -27,7 +27,7 @@
 , tdb
 , json-glib
 , itstool
-, wrapGAppsHook
+, wrapGAppsHook3
 , desktop-file-utils
 , gst_all_1
 , gst_plugins ? with gst_all_1; [ gst-plugins-good gst-plugins-ugly ]
@@ -50,7 +50,7 @@ stdenv.mkDerivation rec {
     vala
     glib
     itstool
-    wrapGAppsHook
+    wrapGAppsHook3
     desktop-file-utils
     gobject-introspection
   ];
diff --git a/pkgs/applications/audio/sfxr/default.nix b/pkgs/applications/audio/sfxr/default.nix
index 552bc8ea52a5..6f148fae2524 100644
--- a/pkgs/applications/audio/sfxr/default.nix
+++ b/pkgs/applications/audio/sfxr/default.nix
@@ -6,7 +6,7 @@
 , SDL
 , gtk3
 , gsettings-desktop-schemas
-, wrapGAppsHook
+, wrapGAppsHook3
 }:
 
 stdenv.mkDerivation (finalAttrs: {
@@ -49,7 +49,7 @@ stdenv.mkDerivation (finalAttrs: {
     SDL
     gtk3
     gsettings-desktop-schemas
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   makeFlags = [ "DESTDIR=$(out)" ];
diff --git a/pkgs/applications/audio/snd/default.nix b/pkgs/applications/audio/snd/default.nix
index 6958a38f2586..4cb879850b09 100644
--- a/pkgs/applications/audio/snd/default.nix
+++ b/pkgs/applications/audio/snd/default.nix
@@ -5,11 +5,11 @@
 
 stdenv.mkDerivation rec {
   pname = "snd";
-  version = "24.2";
+  version = "24.3";
 
   src = fetchurl {
     url = "mirror://sourceforge/snd/snd-${version}.tar.gz";
-    sha256 = "sha256-1ngnhOpPaRGH3xmiA7cUfVDqlJM1ZC+XfeSiV8vcdls=";
+    sha256 = "sha256-riy8WrL6jbD4aYnFf9x5DVeYabmty0OCb53jP3iVD9I=";
   };
 
   nativeBuildInputs = [ pkg-config ];
diff --git a/pkgs/applications/audio/sonata/default.nix b/pkgs/applications/audio/sonata/default.nix
index 97397da96f25..b0093a8093da 100644
--- a/pkgs/applications/audio/sonata/default.nix
+++ b/pkgs/applications/audio/sonata/default.nix
@@ -1,4 +1,4 @@
-{ lib, fetchFromGitHub, wrapGAppsHook, gettext
+{ lib, fetchFromGitHub, wrapGAppsHook3, gettext
 , python3Packages, gnome, gtk3, glib, gdk-pixbuf, gsettings-desktop-schemas, gobject-introspection }:
 
 let
@@ -19,7 +19,7 @@ in buildPythonApplication rec {
   nativeBuildInputs = [
     gettext
     gobject-introspection
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
diff --git a/pkgs/applications/audio/sound-juicer/default.nix b/pkgs/applications/audio/sound-juicer/default.nix
index 65a12c423b3f..88e7a314c822 100644
--- a/pkgs/applications/audio/sound-juicer/default.nix
+++ b/pkgs/applications/audio/sound-juicer/default.nix
@@ -16,7 +16,7 @@
 , libdiscid
 , isocodes
 , gsettings-desktop-schemas
-, wrapGAppsHook
+, wrapGAppsHook3
 }:
 
 stdenv.mkDerivation rec {
@@ -34,7 +34,7 @@ stdenv.mkDerivation rec {
     pkg-config
     itstool
     libxml2
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
diff --git a/pkgs/applications/audio/soundconverter/default.nix b/pkgs/applications/audio/soundconverter/default.nix
index b07ed63f220d..27238e36d088 100644
--- a/pkgs/applications/audio/soundconverter/default.nix
+++ b/pkgs/applications/audio/soundconverter/default.nix
@@ -1,7 +1,7 @@
 { lib, fetchurl
 # Optional due to unfree license.
 , faacSupport ? false
-, glib, python3Packages, gtk3, wrapGAppsHook
+, glib, python3Packages, gtk3, wrapGAppsHook3
 , gsettings-desktop-schemas, intltool, xvfb-run
 , gobject-introspection, gst_all_1, fdk-aac-encoder }:
 
@@ -26,7 +26,7 @@ python3Packages.buildPythonApplication rec {
 
   nativeBuildInputs = [
     intltool
-    wrapGAppsHook
+    wrapGAppsHook3
     gobject-introspection
   ];
 
diff --git a/pkgs/applications/audio/soundsource/default.nix b/pkgs/applications/audio/soundsource/default.nix
index e211a5736689..8f2d743e03df 100644
--- a/pkgs/applications/audio/soundsource/default.nix
+++ b/pkgs/applications/audio/soundsource/default.nix
@@ -5,11 +5,11 @@
 }:
 stdenvNoCC.mkDerivation (finalAttrs: {
   pname = "soundsource";
-  version = "5.6.0";
+  version = "5.6.3";
 
   src = fetchurl {
-    url = "https://web.archive.org/web/20230707140658/https://rogueamoeba.com/soundsource/download/SoundSource.zip";
-    sha256 = "1avm1jr75mjbps0fad3glshrwl42vnhc0f9sak038ny85f3apyi0";
+    url = "https://web.archive.org/web/20240505002011/https://rogueamoeba.com/soundsource/download/SoundSource.zip";
+    sha256 = "sha256-uXQw4MEV4hkrd7tjNCxtuXpbfmdW8bilI5ZmXwn9BLM=";
   };
   dontUnpack = true;
 
diff --git a/pkgs/applications/audio/spek/default.nix b/pkgs/applications/audio/spek/default.nix
index bd206709c26e..6bc15adf6082 100644
--- a/pkgs/applications/audio/spek/default.nix
+++ b/pkgs/applications/audio/spek/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetchFromGitHub, autoreconfHook, intltool, pkg-config, ffmpeg, wxGTK32, gtk3, wrapGAppsHook }:
+{ lib, stdenv, fetchFromGitHub, autoreconfHook, intltool, pkg-config, ffmpeg, wxGTK32, gtk3, wrapGAppsHook3 }:
 
 stdenv.mkDerivation rec {
   pname = "spek";
@@ -11,7 +11,7 @@ stdenv.mkDerivation rec {
     sha256 = "sha256-VYt2so2k3Rk3sLSV1Tf1G2pESYiXygrKr9Koop8ChCg=";
   };
 
-  nativeBuildInputs = [ autoreconfHook intltool pkg-config wrapGAppsHook ];
+  nativeBuildInputs = [ autoreconfHook intltool pkg-config wrapGAppsHook3 ];
 
   buildInputs = [ ffmpeg wxGTK32 gtk3 ];
 
diff --git a/pkgs/applications/audio/spotify-player/default.nix b/pkgs/applications/audio/spotify-player/default.nix
index e4e02f03891b..e0bc35858b04 100644
--- a/pkgs/applications/audio/spotify-player/default.nix
+++ b/pkgs/applications/audio/spotify-player/default.nix
@@ -33,16 +33,16 @@ assert lib.assertOneOf "withAudioBackend" withAudioBackend [ "" "alsa" "pulseaud
 
 rustPlatform.buildRustPackage rec {
   pname = "spotify-player";
-  version = "0.17.2";
+  version = "0.18.1";
 
   src = fetchFromGitHub {
     owner = "aome510";
     repo = pname;
     rev = "refs/tags/v${version}";
-    hash = "sha256-TwMQtyg8ygFTI5DgT5rBVkZE31U4puaANIo5S8W0TXU=";
+    hash = "sha256-3nPESnBWaxWjWMvRG7gbXt8FzuPlx2soOonCKom+tzA=";
   };
 
-  cargoHash = "sha256-RTvMywRWdZiBgNMjlUGa4jlD0HYOL3ESkVppGlsl4So=";
+  cargoHash = "sha256-9HroNMHvmNjGPnEO4kTDalHBXe5MH7btEwk6maLh05E=";
 
   nativeBuildInputs = [
     pkg-config
diff --git a/pkgs/applications/audio/spotify/linux.nix b/pkgs/applications/audio/spotify/linux.nix
index 202f8b4ceeec..88e4e8658a8b 100644
--- a/pkgs/applications/audio/spotify/linux.nix
+++ b/pkgs/applications/audio/spotify/linux.nix
@@ -1,4 +1,4 @@
-{ fetchurl, lib, stdenv, squashfsTools, xorg, alsa-lib, makeShellWrapper, wrapGAppsHook, openssl, freetype
+{ fetchurl, lib, stdenv, squashfsTools, xorg, alsa-lib, makeShellWrapper, wrapGAppsHook3, openssl, freetype
 , glib, pango, cairo, atk, gdk-pixbuf, gtk3, cups, nspr, nss_latest, libpng, libnotify
 , libgcrypt, systemd, fontconfig, dbus, expat, ffmpeg_4, curlWithGnuTls, zlib, gnome
 , at-spi2-atk, at-spi2-core, libpulseaudio, libdrm, mesa, libxkbcommon
@@ -90,7 +90,7 @@ stdenv.mkDerivation {
     hash = "sha512-o4iLcbNqbsxo9YJMy0SXO7Udv4CMhhBcsf53UuqWKFFWY/jKVN+Lb+dB7Jf9+UowpmbrP44w97Oi+dnbfFXYjQ==";
   };
 
-  nativeBuildInputs = [ wrapGAppsHook makeShellWrapper squashfsTools ];
+  nativeBuildInputs = [ wrapGAppsHook3 makeShellWrapper squashfsTools ];
 
   dontStrip = true;
   dontPatchELF = true;
diff --git a/pkgs/applications/audio/squeezelite/default.nix b/pkgs/applications/audio/squeezelite/default.nix
index deaec9e16d7c..92f6932fb375 100644
--- a/pkgs/applications/audio/squeezelite/default.nix
+++ b/pkgs/applications/audio/squeezelite/default.nix
@@ -45,13 +45,13 @@ stdenv.mkDerivation {
   pname = binName;
   # versions are specified in `squeezelite.h`
   # see https://github.com/ralph-irving/squeezelite/issues/29
-  version = "2.0.0.1486";
+  version = "2.0.0.1488";
 
   src = fetchFromGitHub {
     owner = "ralph-irving";
     repo = "squeezelite";
-    rev = "fd4a82e7d0e53124d9618320f3c115d90654509d";
-    hash = "sha256-nR2Px7VYjAktUsueEyBAV2392+/dX6JYIy7YSMh05c0=";
+    rev = "0e85ddfd79337cdc30b7d29922b1d790600bb6b4";
+    hash = "sha256-FGqo/c74JN000w/iRnvYUejqnYGDzHNZu9pEmR7yR3s=";
   };
 
   buildInputs = [ flac libmad libvorbis mpg123 ]
diff --git a/pkgs/applications/audio/sublime-music/default.nix b/pkgs/applications/audio/sublime-music/default.nix
index 2ce12df23dcf..a1c74abeca1c 100644
--- a/pkgs/applications/audio/sublime-music/default.nix
+++ b/pkgs/applications/audio/sublime-music/default.nix
@@ -4,8 +4,7 @@
 , gobject-introspection
 , gtk3
 , pango
-, wrapGAppsHook
-, xvfb-run
+, wrapGAppsHook3
 , chromecastSupport ? false
 , serverSupport ? false
 , keyringSupport ? true
@@ -15,51 +14,18 @@
 , networkmanager
 }:
 
-let
-  python = python3.override {
-    packageOverrides = self: super: {
-      semver = super.semver.overridePythonAttrs (oldAttrs: rec {
-        version = "2.13.0";
-        src = fetchFromGitHub {
-          owner = "python-semver";
-          repo = "python-semver";
-          rev = "refs/tags/${version}";
-          hash = "sha256-IWTo/P9JRxBQlhtcH3JMJZZrwAA8EALF4dtHajWUc4w=";
-        };
-        doCheck = false; # no tests
-      });
-
-      dataclasses-json = super.dataclasses-json.overridePythonAttrs (oldAttrs: rec {
-        version = "0.5.7";
-        src = fetchFromGitHub {
-          owner = "lidatong";
-          repo = "dataclasses-json";
-          rev = "refs/tags/v${version}";
-          hash = "sha256-0tw5Lz+c4ymO+AGpG6THbiALWGBrehC84+yWWk1eafc=";
-        };
-        nativeBuildInputs = [ python3.pkgs.setuptools ];
-      });
-    };
-  };
-in
-python.pkgs.buildPythonApplication rec {
+python3.pkgs.buildPythonApplication rec {
   pname = "sublime-music";
   version = "0.12.0";
-  format = "pyproject";
+  pyproject = true;
 
   src = fetchFromGitHub {
     owner = "sublime-music";
-    repo = pname;
+    repo = "sublime-music";
     rev = "refs/tags/v${version}";
     hash = "sha256-FPzeFqDOcaiariz7qJwz6P3Wd+ZDxNP57uj+ptMtEyM=";
   };
 
-  nativeBuildInputs = [
-    python.pkgs.flit-core
-    gobject-introspection
-    wrapGAppsHook
-  ];
-
   postPatch = ''
     sed -i "/--cov/d" setup.cfg
     sed -i "/--no-cov-on-fail/d" setup.cfg
@@ -68,6 +34,15 @@ python.pkgs.buildPythonApplication rec {
     sed -i "s/python-mpv/mpv/g" pyproject.toml
   '';
 
+  build-system = with python3.pkgs; [
+    flit-core
+  ];
+
+  nativeBuildInputs = [
+    gobject-introspection
+    wrapGAppsHook3
+  ];
+
   buildInputs = [
     gtk3
     pango
@@ -76,7 +51,7 @@ python.pkgs.buildPythonApplication rec {
   ++ lib.optional networkSupport networkmanager
   ;
 
-  propagatedBuildInputs = with python.pkgs; [
+  propagatedBuildInputs = with python3.pkgs; [
     bleach
     bottle
     dataclasses-json
@@ -94,13 +69,14 @@ python.pkgs.buildPythonApplication rec {
   ++ lib.optional keyringSupport keyring
   ;
 
-  nativeCheckInputs = with python.pkgs; [
-    pytest
+  nativeCheckInputs = with python3.pkgs; [
+    pytestCheckHook
   ];
 
-  checkPhase = ''
-    ${xvfb-run}/bin/xvfb-run pytest
-  '';
+  disabledTests = [
+    # https://github.com/sublime-music/sublime-music/issues/439
+    "test_get_music_directory"
+  ];
 
   pythonImportsCheck = [
     "sublime_music"
@@ -118,10 +94,10 @@ python.pkgs.buildPythonApplication rec {
 
   meta = with lib; {
     description = "GTK3 Subsonic/Airsonic client";
-    mainProgram = "sublime-music";
     homepage = "https://sublimemusic.app/";
     changelog = "https://github.com/sublime-music/sublime-music/blob/v${version}/CHANGELOG.rst";
     license = licenses.gpl3Plus;
     maintainers = with maintainers; [ albakham sumnerevans ];
+    mainProgram = "sublime-music";
   };
 }
diff --git a/pkgs/applications/audio/surge-XT/default.nix b/pkgs/applications/audio/surge-XT/default.nix
index 63cf1110d784..08dd794275d6 100644
--- a/pkgs/applications/audio/surge-XT/default.nix
+++ b/pkgs/applications/audio/surge-XT/default.nix
@@ -16,14 +16,14 @@
 
 stdenv.mkDerivation rec {
   pname = "surge-XT";
-  version = "1.3.1";
+  version = "1.3.2";
 
   src = fetchFromGitHub {
     owner = "surge-synthesizer";
     repo = "surge";
     rev = "release_xt_${version}";
     fetchSubmodules = true;
-    sha256 = "sha256-xcbZ5TC2W2PVzAkpoKPFIgW1oRGaC+ynQYot3cb5NAQ=";
+    sha256 = "sha256-r8CZxjmH9lfCizc95jRB4je+R/74zMqRMlGIZxxxriw=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/applications/audio/tidal-hifi/default.nix b/pkgs/applications/audio/tidal-hifi/default.nix
index d9d14b9670db..744508f404d9 100644
--- a/pkgs/applications/audio/tidal-hifi/default.nix
+++ b/pkgs/applications/audio/tidal-hifi/default.nix
@@ -36,11 +36,11 @@
 
 stdenv.mkDerivation (finalAttrs: {
   pname = "tidal-hifi";
-  version = "5.10.0";
+  version = "5.12.0";
 
   src = fetchurl {
     url = "https://github.com/Mastermindzh/tidal-hifi/releases/download/${finalAttrs.version}/tidal-hifi_${finalAttrs.version}_amd64.deb";
-    sha256 = "sha256-+sRXpRAtbLpQlyJUhbc1Cuzh6aV8HRvYH/ja9sfvKoA=";
+    sha256 = "sha256-DwUKoDaXA99ILxlyay5dRL/ewnzyqSSR6fxPxkr8X34=";
   };
 
   nativeBuildInputs = [ autoPatchelfHook dpkg makeWrapper ];
diff --git a/pkgs/applications/audio/transcribe/default.nix b/pkgs/applications/audio/transcribe/default.nix
index 0d311adf8799..785550a0a040 100644
--- a/pkgs/applications/audio/transcribe/default.nix
+++ b/pkgs/applications/audio/transcribe/default.nix
@@ -1,7 +1,7 @@
 { stdenv
 , fetchzip
 , lib
-, wrapGAppsHook
+, wrapGAppsHook3
 , xdg-utils
 , which
 , alsa-lib
@@ -36,7 +36,7 @@ stdenv.mkDerivation rec {
   nativeBuildInputs = [
     which
     xdg-utils
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = with gst_all_1; [
diff --git a/pkgs/applications/audio/tuner/default.nix b/pkgs/applications/audio/tuner/default.nix
index 0f4db5af20a6..8262fa152bde 100644
--- a/pkgs/applications/audio/tuner/default.nix
+++ b/pkgs/applications/audio/tuner/default.nix
@@ -7,7 +7,7 @@
 , vala
 , glib
 , itstool
-, wrapGAppsHook
+, wrapGAppsHook3
 , desktop-file-utils
 , libsoup
 , json-glib
@@ -37,7 +37,7 @@ stdenv.mkDerivation rec {
     vala
     glib
     itstool
-    wrapGAppsHook
+    wrapGAppsHook3
     desktop-file-utils
   ];
 
diff --git a/pkgs/applications/audio/vcv-rack/default.nix b/pkgs/applications/audio/vcv-rack/default.nix
index 8f107ee2cb9c..7a1ded3e2f82 100644
--- a/pkgs/applications/audio/vcv-rack/default.nix
+++ b/pkgs/applications/audio/vcv-rack/default.nix
@@ -24,7 +24,7 @@
 , rtmidi
 , speexdsp
 , stdenv
-, wrapGAppsHook
+, wrapGAppsHook3
 , zstd
 }:
 
@@ -183,7 +183,7 @@ stdenv.mkDerivation rec {
     libicns
     makeWrapper
     pkg-config
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
   buildInputs = [
     alsa-lib
diff --git a/pkgs/applications/audio/vocal/default.nix b/pkgs/applications/audio/vocal/default.nix
index 00f4ac9172ac..eeea9a73f1e6 100644
--- a/pkgs/applications/audio/vocal/default.nix
+++ b/pkgs/applications/audio/vocal/default.nix
@@ -21,7 +21,7 @@
 , gst_all_1
 , json-glib
 , libgee
-, wrapGAppsHook
+, wrapGAppsHook3
 }:
 
 stdenv.mkDerivation rec {
@@ -41,7 +41,7 @@ stdenv.mkDerivation rec {
     ninja
     vala
     pkg-config
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = with gst_all_1; [
diff --git a/pkgs/applications/audio/waylyrics/default.nix b/pkgs/applications/audio/waylyrics/default.nix
index 8fcfe02acfe9..a7be3babf562 100644
--- a/pkgs/applications/audio/waylyrics/default.nix
+++ b/pkgs/applications/audio/waylyrics/default.nix
@@ -9,25 +9,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "waylyrics";
-  version = "0.3.5";
+  version = "0.3.8";
 
   src = fetchFromGitHub {
     owner = "waylyrics";
     repo = "waylyrics";
     rev = "v${version}";
-    hash = "sha256-44O2+OLsBZhl0/0910RsdCe8cHt6UGhYF7CUfhsFQU8=";
+    hash = "sha256-ZOz8LkMznSX/7nSu7IpZ8kVemo2AuRLOgrS3WWg+BXU=";
   };
 
-  cargoLock = {
-    lockFile = ./Cargo.lock;
-    outputHashes = {
-      "ksni-0.2.1" = "sha256-kjirYZVDP9e7/933L7gwSgVrNInSTbsRCAfnhUqmcLI=";
-    };
-  };
-
-  postPatch = ''
-    cp ${./Cargo.lock} Cargo.lock
-  '';
+  cargoHash = "sha256-mURcz3i98qlsn/rzZjeJncyVX5xsuqWY2/PcNA6WAWQ=";
 
   nativeBuildInputs = [ pkg-config wrapGAppsHook4 ];
   buildInputs = [ openssl dbus ];
diff --git a/pkgs/applications/audio/ymuse/default.nix b/pkgs/applications/audio/ymuse/default.nix
index 2c8da2f3af44..19859a1d819d 100644
--- a/pkgs/applications/audio/ymuse/default.nix
+++ b/pkgs/applications/audio/ymuse/default.nix
@@ -1,7 +1,7 @@
 { lib
 , fetchFromGitHub
 , buildGoModule
-, wrapGAppsHook
+, wrapGAppsHook3
 , pkg-config
 , glib
 , gobject-introspection
@@ -26,7 +26,7 @@ buildGoModule rec {
 
   nativeBuildInputs = [
     pkg-config
-    wrapGAppsHook
+    wrapGAppsHook3
     glib
     gobject-introspection
     gdk-pixbuf
diff --git a/pkgs/applications/audio/zam-plugins/default.nix b/pkgs/applications/audio/zam-plugins/default.nix
index 7d499ff1664e..11f039588882 100644
--- a/pkgs/applications/audio/zam-plugins/default.nix
+++ b/pkgs/applications/audio/zam-plugins/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "zam-plugins";
-  version = "4.2";
+  version = "4.3";
 
   src = fetchFromGitHub {
     owner = "zamaudio";
     repo = pname;
     rev = version;
-    sha256 = "sha256-6TPZMDhGHqXjY8UYEqlr4hweF+W19IpIfSa9Bo9Ta1A=";
+    sha256 = "sha256-wT1BXQrcD+TI+trqx0ZVUmVLZMTDQgJI3dAvN54wy6Y=";
     fetchSubmodules = true;
   };
 
diff --git a/pkgs/applications/audio/zrythm/default.nix b/pkgs/applications/audio/zrythm/default.nix
index 663c159d5d9b..8ec6ba1a040a 100644
--- a/pkgs/applications/audio/zrythm/default.nix
+++ b/pkgs/applications/audio/zrythm/default.nix
@@ -1,12 +1,9 @@
 { stdenv
 , lib
 , fetchFromGitHub
-, fetchFromSourcehut
-, fetchpatch
-, SDL2
+, fetchzip
 , alsa-lib
 , appstream
-, appstream-glib
 , bash-completion
 , boost
 , breeze-icons
@@ -16,7 +13,6 @@
 , curl
 , dbus
 , dconf
-, faust2lv2
 , fftw
 , fftwFloat
 , flex
@@ -27,159 +23,140 @@
 , guile
 , help2man
 , jq
-, json-glib
 , kissfft
 , libadwaita
-, libaudec
 , libbacktrace
 , libcyaml
 , libepoxy
-, libgtop
 , libjack2
 , libpanel
 , libpulseaudio
 , libsamplerate
-, libsass
 , libsndfile
-, libsoundio
 , libxml2
 , libyaml
 , lilv
 , lv2
 , meson
 , ninja
-, pandoc
-, pcre
 , pcre2
 , pkg-config
 , python3
-, reproc
-, rtaudio
+, rtaudio_6
 , rtmidi
 , rubberband
 , sassc
 , serd
 , sord
 , sox
+, soxr
 , sratom
 , texi2html
 , vamp-plugin-sdk
 , wrapGAppsHook4
+, writeScript
 , xdg-utils
 , xxHash
+, yyjson
 , zix
 , zstd
 }:
 
 let
-  # As of zrythm-1.0.0-beta.4.5.62, Zrythm needs clap
-  # https://github.com/falktx/carla/tree/main/source/includes/clap, which is
-  # only available on Carla unstable as of 2023-02-24.
-  carla-unstable = carla.overrideAttrs (oldAttrs: rec {
+  # Error: Dependency carla-host-plugin found: NO found 2.5.6 but need: '>=2.6.0'
+  # So we need Carla unstable
+  carla-unstable = carla.overrideAttrs (oldAttrs: {
     pname = "carla";
-    version = "unstable-2023-05-12";
+    version = "unstable-2024-04-26";
 
     src = fetchFromGitHub {
       owner = "falkTX";
-      repo = pname;
-      rev = "0175570f1d41285f39efe0ee32234458e0ed941c";
-      hash = "sha256-yfVzZV8G4AUDM8+yS9finzobpOb1PUEPgBWFhEY4nFQ=";
+      repo = "carla";
+      rev = "948991d7b5104280c03960925908e589c77b169a";
+      hash = "sha256-uGAuKheoMfP9hZXsw29ec+58dJM8wMuowe95QutzKBY=";
     };
   });
 in
-stdenv.mkDerivation rec {
+stdenv.mkDerivation (finalAttrs: {
   pname = "zrythm";
-  version = "1.0.0-beta.4.9.1";
+  version = "1.0.0-rc.1";
 
-  src = fetchFromSourcehut {
-    owner = "~alextee";
-    repo = pname;
-    rev = "v${version}";
-    hash = "sha256-U3IUqNbHu20uyWfkTsLOOlUZjcUL4QdHilB3srSsebw=";
+  src = fetchzip {
+    url = "https://www.zrythm.org/releases/${finalAttrs.pname}-${finalAttrs.version}.tar.xz";
+    sha256 = "sha256-Ljbw7bjGI6js4OP9KEXCkhC9AMbInSz0nn+pROm4vXw=";
   };
 
+  passthru.updateScript = writeScript "update-zrythm" ''
+    #!/usr/bin/env nix-shell
+    #!nix-shell -i bash -p curl common-updater-scripts
+
+    version="$(curl -s https://www.zrythm.org/releases/ | grep -o -m 1 'href="zrythm-[^"]*\.tar\.xz"' | head -1 | sed 's/href="zrythm-\(.*\)\.tar\.xz"/\1/')"
+    update-source-version zrythm "$version"
+  '';
+
   nativeBuildInputs = [
+    chromaprint
     cmake
+    flex
+    guile
     help2man
     jq
-    libaudec
     libxml2
+    lilv
     meson
     ninja
-    pandoc
     pkg-config
     python3
     python3.pkgs.sphinx
     sassc
+    serd
+    sord
+    sratom
     texi2html
     wrapGAppsHook4
   ];
 
   buildInputs = [
-    SDL2
     alsa-lib
     appstream
-    appstream-glib
     bash-completion
     boost
-    breeze-icons
     carla-unstable
-    chromaprint
     curl
     dbus
     dconf
-    faust2lv2
     fftw
     fftwFloat
-    flex
     glib
     graphviz
     gtk4
     gtksourceview5
-    guile
-    json-glib
     kissfft
     libadwaita
     libbacktrace
     libcyaml
     libepoxy
-    libgtop
     libjack2
     libpanel
     libpulseaudio
     libsamplerate
-    libsass
     libsndfile
-    libsoundio
     libyaml
-    lilv
     lv2
-    pcre
     pcre2
-    reproc
-    rtaudio
+    rtaudio_6
     rtmidi
     rubberband
-    serd
-    sord
     sox
-    sratom
+    soxr
     vamp-plugin-sdk
     xdg-utils
     xxHash
+    yyjson
     zix
     zstd
   ];
 
-  patches = [
-    # Fix gcc-13 build failure
-    (fetchpatch {
-      name = "gcc-13.patch";
-      url = "https://gitlab.zrythm.org/zrythm/zrythm/-/commit/cbc2b3715b939718479631841f2d9703fb28e6da.diff";
-      hash = "sha256-2ZTSaCtSO3yynJVFe5B1AEjWhjRa5YyA26ergAfdL5Y=";
-    })
-  ];
-
   # Zrythm uses meson to build, but requires cmake for dependency detection.
   dontUseCmakeConfigure = true;
 
@@ -197,7 +174,6 @@ stdenv.mkDerivation rec {
     "-Dmanpage=true"
     "-Drtaudio=enabled"
     "-Drtmidi=enabled"
-    "-Dsdl=enabled"
     # "-Duser_manual=true" # needs sphinx-intl
   ];
 
@@ -220,7 +196,7 @@ stdenv.mkDerivation rec {
 
   preFixup = ''
     gappsWrapperArgs+=(
-      --prefix GSETTINGS_SCHEMA_DIR : "$out/share/gsettings-schemas/${pname}-${version}/glib-2.0/schemas/"
+      --prefix GSETTINGS_SCHEMA_DIR : "$out/share/gsettings-schemas/${finalAttrs.pname}-${finalAttrs.version}/glib-2.0/schemas/"
       --prefix XDG_DATA_DIRS : "$XDG_ICON_DIRS:${breeze-icons}/share"
     )
   '';
@@ -228,8 +204,9 @@ stdenv.mkDerivation rec {
   meta = with lib; {
     homepage = "https://www.zrythm.org";
     description = "Automated and intuitive digital audio workstation";
-    maintainers = with maintainers; [ tshaynik magnetophon yuu ];
-    platforms = platforms.linux;
+    maintainers = with maintainers; [ tshaynik magnetophon yuu astavie PowerUser64 ];
+    platforms = platforms.unix;
+    broken = stdenv.isDarwin;
     license = licenses.agpl3Plus;
   };
-}
+})
diff --git a/pkgs/applications/backup/areca/fix-javah-bug.diff b/pkgs/applications/backup/areca/fix-javah-bug.diff
deleted file mode 100644
index 5d5feaf9b943..000000000000
--- a/pkgs/applications/backup/areca/fix-javah-bug.diff
+++ /dev/null
@@ -1,24 +0,0 @@
-diff --git a/build.xml b/build.xml
-index 1ba08e0..9248b76 100644
---- a/build.xml
-+++ b/build.xml
-@@ -56,10 +56,16 @@
-
-     <target name="compilejni" unless="isWindows">
-         <description>JNI compilation task (builds libarecafs.so ... for unix-like operating systems only)</description>
-+
-         <!--Generate the JNI header-->
--        <javah destdir="${root}/jni" force="yes" classpath="${root}/lib/areca.jar">
--            <class name="com.myJava.file.metadata.posix.jni.wrapper.FileAccessWrapper"/>
--        </javah>
-+	<exec executable="javah">
-+		<arg value="-d"/>
-+		<arg value="${root}/jni"/>
-+		<arg value="-force"/>
-+		<arg value="-classpath"/>
-+		<arg value="${root}/lib/areca.jar"/>
-+		<arg value="com.myJava.file.metadata.posix.jni.wrapper.FileAccessWrapper"/>
-+	</exec>
-
-         <!-- Compile the JNI code -->
-         <exec dir="${root}/jni" executable="gcc">
diff --git a/pkgs/applications/backup/ludusavi/default.nix b/pkgs/applications/backup/ludusavi/default.nix
index cba677e6e16a..29e0950775cb 100644
--- a/pkgs/applications/backup/ludusavi/default.nix
+++ b/pkgs/applications/backup/ludusavi/default.nix
@@ -12,23 +12,25 @@
 , libXcursor
 , libXrandr
 , libXi
+, libxkbcommon
 , vulkan-loader
+, wayland
 , gnome
 , libsForQt5
 }:
 
 rustPlatform.buildRustPackage rec {
   pname = "ludusavi";
-  version = "0.22.0";
+  version = "0.23.0";
 
   src = fetchFromGitHub {
     owner = "mtkennerly";
-    repo = pname;
+    repo = "ludusavi";
     rev = "v${version}";
-    hash = "sha256-FVM/HJpBd9G161JTaVTeWQhz4p5uDgQtohaIw1iNOJo=";
+    hash = "sha256-3Z/v3+3mrmPV2Rb/5tM+h6UN+MEIF/aK07B93Zn38AA=";
   };
 
-  cargoHash = "sha256-5RhFyC4e4OOdnhwk4sgG6mmRVa1gLaBUA8DW5XW6E14=";
+  cargoHash = "sha256-bAap8eSXAPLrs5MEX1Pp6gKdp0iLxci4aX+2+ve6Wk0=";
 
   nativeBuildInputs = [
     cmake
@@ -49,12 +51,12 @@ rustPlatform.buildRustPackage rec {
     install -Dm644 assets/com.github.mtkennerly.ludusavi.metainfo.xml -t \
       "$out/share/metainfo/"
     install -Dm644 assets/icon.png \
-      "$out/share/icons/hicolor/64x64/apps/${pname}.png"
+      "$out/share/icons/hicolor/64x64/apps/ludusavi.png"
     install -Dm644 assets/icon.svg \
-      "$out/share/icons/hicolor/scalable/apps/${pname}.svg"
-    install -Dm644 "assets/${pname}.desktop" -t "$out/share/applications/"
+      "$out/share/icons/hicolor/scalable/apps/ludusavi.svg"
+    install -Dm644 "assets/ludusavi.desktop" -t "$out/share/applications/"
     install -Dm644 assets/MaterialIcons-Regular.ttf -t "$out/share/fonts/TTF/"
-    install -Dm644 LICENSE -t "$out/share/licenses/${pname}/"
+    install -Dm644 LICENSE -t "$out/share/licenses/ludusavi/"
   '';
 
   postFixup =
@@ -68,12 +70,14 @@ rustPlatform.buildRustPackage rec {
         libXcursor
         libXrandr
         libXi
+        libxkbcommon
         vulkan-loader
+        wayland
       ];
     in
     ''
-      patchelf --set-rpath "${libPath}" "$out/bin/$pname"
-      wrapProgram $out/bin/$pname --prefix PATH : ${lib.makeBinPath [ gnome.zenity libsForQt5.kdialog ]}
+      patchelf --set-rpath "${libPath}" "$out/bin/ludusavi"
+      wrapProgram $out/bin/ludusavi --prefix PATH : ${lib.makeBinPath [ gnome.zenity libsForQt5.kdialog ]}
     '';
 
 
diff --git a/pkgs/applications/backup/proxmox-backup-client/Cargo.lock b/pkgs/applications/backup/proxmox-backup-client/Cargo.lock
index 18d7726b3cb5..2412f6a78da6 100644
--- a/pkgs/applications/backup/proxmox-backup-client/Cargo.lock
+++ b/pkgs/applications/backup/proxmox-backup-client/Cargo.lock
@@ -18,31 +18,49 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "f26201604c87b1e01bd3d98f8d5d9a8fcbb815e8cedb41ffccbeb4bf593a35fe"
 
 [[package]]
+name = "ahash"
+version = "0.8.11"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "e89da841a80418a9b391ebaea17f5c112ffaaa96f621d2c285b5174da76b9011"
+dependencies = [
+ "cfg-if",
+ "once_cell",
+ "version_check",
+ "zerocopy",
+]
+
+[[package]]
 name = "aho-corasick"
-version = "1.1.2"
+version = "1.1.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b2969dcb958b36655471fc61f7e416fa76033bdd4bfed0678d8fee1e2d07a1f0"
+checksum = "8e60d3430d3a69478ad0993f19238d2df97c507009a52b3c10addcd7f6bcb916"
 dependencies = [
  "memchr",
 ]
 
 [[package]]
+name = "allocator-api2"
+version = "0.2.18"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "5c6cb57a04249c6480766f7f7cef5467412af1490f8d1e243141daddada3264f"
+
+[[package]]
 name = "anyhow"
-version = "1.0.75"
+version = "1.0.82"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a4668cab20f66d8d020e1fbc0ebe47217433c1b6c8f2040faf858554e394ace6"
+checksum = "f538837af36e6f6a9be0faa67f9a314f8119e4e4b5867c6ab40ed60360142519"
 
 [[package]]
 name = "autocfg"
-version = "1.1.0"
+version = "1.2.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d468802bab17cbc0cc575e9b053f41e72aa36bfa6b7f55e3529ffa43161b97fa"
+checksum = "f1fdabc7756949593fe60f30ec81974b613357de856987752631dea1e3394c80"
 
 [[package]]
 name = "backtrace"
-version = "0.3.69"
+version = "0.3.71"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2089b7e3f35b9dd2d0ed921ead4f6d318c27680d4a5bd167b3ee120edb105837"
+checksum = "26b05800d2e817c8b3b4b54abd461726265fa9789ae34330622f2db9ee696f9d"
 dependencies = [
  "addr2line",
  "cc",
@@ -60,23 +78,29 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "9e1b586273c5702936fe7b7d6896644d8be71e6314cfe09d3167c95f712589e8"
 
 [[package]]
+name = "base64"
+version = "0.22.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "72b3254f16251a8381aa12e40e3c4d2f0199f8c6508fbecb9d91f575e0fbb8c6"
+
+[[package]]
 name = "bindgen"
-version = "0.68.1"
+version = "0.69.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "726e4313eb6ec35d2730258ad4e15b547ee75d6afaa1361a922e78e59b7d8078"
+checksum = "a00dc851838a2120612785d195287475a3ac45514741da670b735818822129a0"
 dependencies = [
- "bitflags 2.4.1",
+ "bitflags 2.5.0",
  "cexpr",
  "clang-sys",
+ "itertools",
  "lazy_static",
  "lazycell",
- "peeking_take_while",
- "proc-macro2 1.0.70",
- "quote 1.0.33",
+ "proc-macro2 1.0.81",
+ "quote 1.0.36",
  "regex",
  "rustc-hash",
  "shlex",
- "syn 2.0.39",
+ "syn 2.0.60",
  "which",
 ]
 
@@ -88,30 +112,40 @@ checksum = "bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a"
 
 [[package]]
 name = "bitflags"
-version = "2.4.1"
+version = "2.5.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "327762f6e5a765692301e5bb513e0d9fef63be86bbc14528052b1cd3e6f03e07"
+checksum = "cf4b9d6a944f767f8e5e0db018570623c85f3d925ac718db4e06d0187adb21c1"
+
+[[package]]
+name = "block-buffer"
+version = "0.10.4"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "3078c7629b62d3f0439517fa394996acacc5cbc91c5a20d8c658e77abd503a71"
+dependencies = [
+ "generic-array",
+]
 
 [[package]]
 name = "bumpalo"
-version = "3.14.0"
+version = "3.16.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7f30e7476521f6f8af1a1c4c0b8cc94f0bee37d91763d0ca2665f299b6cd8aec"
+checksum = "79296716171880943b8470b5f8d03aa55eb2e645a4874bdbb28adb49162e012c"
 
 [[package]]
 name = "bytes"
-version = "1.5.0"
+version = "1.6.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a2bd12c1caf447e69cd4528f47f94d203fd2582878ecb9e9465484c4148a8223"
+checksum = "514de17de45fdb8dc022b1a7975556c53c86f9f0aa5f534b98977b171857c2c9"
 
 [[package]]
 name = "cc"
-version = "1.0.83"
+version = "1.0.96"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f1174fb0b6ec23863f8b971027804a42614e347eafb0a95bf0b12cdae21fc4d0"
+checksum = "065a29261d53ba54260972629f9ca6bffa69bac13cd1fed61420f7fa68b9f8bd"
 dependencies = [
  "jobserver",
  "libc",
+ "once_cell",
 ]
 
 [[package]]
@@ -130,10 +164,20 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd"
 
 [[package]]
+name = "chumsky"
+version = "0.9.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "8eebd66744a15ded14960ab4ccdbfb51ad3b81f51f3f04a80adac98c985396c9"
+dependencies = [
+ "hashbrown",
+ "stacker",
+]
+
+[[package]]
 name = "clang-sys"
-version = "1.6.1"
+version = "1.7.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c688fc74432808e3eb684cae8830a86be1d66a2bd58e1f248ed0960a590baf6f"
+checksum = "67523a3b4be3ce1989d607a828d036249522dd9c1c8de7f4dd2dae43a37369d1"
 dependencies = [
  "glob",
  "libc",
@@ -152,15 +196,80 @@ dependencies = [
 ]
 
 [[package]]
+name = "const_format"
+version = "0.2.32"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "e3a214c7af3d04997541b18d432afaff4c455e79e2029079647e72fc2bd27673"
+dependencies = [
+ "const_format_proc_macros",
+]
+
+[[package]]
+name = "const_format_proc_macros"
+version = "0.2.32"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "c7f6ff08fd20f4f299298a28e2dfa8a8ba1036e6cd2460ac1de7b425d76f2500"
+dependencies = [
+ "proc-macro2 1.0.81",
+ "quote 1.0.36",
+ "unicode-xid 0.2.4",
+]
+
+[[package]]
+name = "core-foundation"
+version = "0.9.4"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "91e195e091a93c46f7102ec7818a2aa394e1e1771c3ab4825963fa03e45afb8f"
+dependencies = [
+ "core-foundation-sys",
+ "libc",
+]
+
+[[package]]
+name = "core-foundation-sys"
+version = "0.8.6"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "06ea2b9bc92be3c2baa9334a323ebca2d6f074ff852cd1d7b11064035cd3868f"
+
+[[package]]
+name = "cpufeatures"
+version = "0.2.12"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "53fe5e26ff1b7aef8bca9c6080520cfb8d9333c7568e1829cef191a9723e5504"
+dependencies = [
+ "libc",
+]
+
+[[package]]
 name = "crc32fast"
-version = "1.3.2"
+version = "1.4.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b540bd8bc810d3885c6ea91e2018302f68baba2129ab3e88f32389ee9370880d"
+checksum = "b3855a8a784b474f333699ef2bbca9db2c4a1f6d9088a90a2d25b1eb53111eaa"
 dependencies = [
  "cfg-if",
 ]
 
 [[package]]
+name = "crypto-common"
+version = "0.1.6"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "1bfb12502f3fc46cca1bb51ac28df9d618d813cdc3d2f25b9fe775a34af26bb3"
+dependencies = [
+ "generic-array",
+ "typenum",
+]
+
+[[package]]
+name = "digest"
+version = "0.10.7"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "9ed9a281f7bc9b7576e61468ba615a66a5c8cfdff42420a70aa82701a3b1e292"
+dependencies = [
+ "block-buffer",
+ "crypto-common",
+]
+
+[[package]]
 name = "dirs-next"
 version = "2.0.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -183,9 +292,25 @@ dependencies = [
 
 [[package]]
 name = "either"
-version = "1.9.0"
+version = "1.11.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "a47c1c47d2f5964e29c61246e81db715514cd532db6b5116a25ea3c03d6780a2"
+
+[[package]]
+name = "email-encoding"
+version = "0.3.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "60d1d33cdaede7e24091f039632eb5d3c7469fe5b066a985281a34fc70fa317f"
+dependencies = [
+ "base64 0.22.1",
+ "memchr",
+]
+
+[[package]]
+name = "email_address"
+version = "0.2.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a26ae43d7bcc3b814de94796a5e736d4029efb0ee900c12e2d54c993ad1a1e07"
+checksum = "e2153bd83ebc09db15bcbdc3e2194d901804952e3dc96967e1cd3b0c5c32d112"
 
 [[package]]
 name = "endian-type"
@@ -214,9 +339,9 @@ dependencies = [
 
 [[package]]
 name = "env_logger"
-version = "0.10.1"
+version = "0.10.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "95b3f3e67048839cb0d0781f445682a35113da7121f7c949db0e2be96a4fbece"
+checksum = "4cd405aab171cb85d6735e5c8d9db038c17d3ca007a4d2c25f337935c3d90580"
 dependencies = [
  "humantime",
  "is-terminal",
@@ -252,6 +377,12 @@ dependencies = [
 ]
 
 [[package]]
+name = "fastrand"
+version = "2.1.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "9fc0510504f03c51ada170672ac806f1f105a88aa97a5281117e1ddc3368e51a"
+
+[[package]]
 name = "fd-lock"
 version = "3.0.13"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -264,21 +395,21 @@ dependencies = [
 
 [[package]]
 name = "filetime"
-version = "0.2.22"
+version = "0.2.23"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d4029edd3e734da6fe05b6cd7bd2960760a616bd2ddd0d59a0124746d6272af0"
+checksum = "1ee447700ac8aa0b2f2bd7bc4462ad686ba06baa6727ac149a2d6277f0d240fd"
 dependencies = [
  "cfg-if",
  "libc",
- "redox_syscall 0.3.5",
- "windows-sys 0.48.0",
+ "redox_syscall",
+ "windows-sys 0.52.0",
 ]
 
 [[package]]
 name = "flate2"
-version = "1.0.28"
+version = "1.0.30"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "46303f565772937ffe1d394a4fac6f411c6013172fadde9dcdb1e147a086940e"
+checksum = "5f54427cfd1c7829e2a139fcefea601bf088ebca651d2bf53ebc600eac295dae"
 dependencies = [
  "crc32fast",
  "miniz_oxide",
@@ -316,9 +447,9 @@ dependencies = [
 
 [[package]]
 name = "futures"
-version = "0.3.29"
+version = "0.3.30"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "da0290714b38af9b4a7b094b8a37086d1b4e61f2df9122c3cad2577669145335"
+checksum = "645c6916888f6cb6350d2550b80fb63e734897a8498abe35cfb732b6487804b0"
 dependencies = [
  "futures-channel",
  "futures-core",
@@ -331,9 +462,9 @@ dependencies = [
 
 [[package]]
 name = "futures-channel"
-version = "0.3.29"
+version = "0.3.30"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ff4dd66668b557604244583e3e1e1eada8c5c2e96a6d0d6653ede395b78bbacb"
+checksum = "eac8f7d7865dcb88bd4373ab671c8cf4508703796caa2b1985a9ca867b3fcb78"
 dependencies = [
  "futures-core",
  "futures-sink",
@@ -341,15 +472,15 @@ dependencies = [
 
 [[package]]
 name = "futures-core"
-version = "0.3.29"
+version = "0.3.30"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "eb1d22c66e66d9d72e1758f0bd7d4fd0bee04cad842ee34587d68c07e45d088c"
+checksum = "dfc6580bb841c5a68e9ef15c77ccc837b40a7504914d52e47b8b0e9bbda25a1d"
 
 [[package]]
 name = "futures-executor"
-version = "0.3.29"
+version = "0.3.30"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0f4fb8693db0cf099eadcca0efe2a5a22e4550f98ed16aba6c48700da29597bc"
+checksum = "a576fc72ae164fca6b9db127eaa9a9dda0d61316034f33a0a0d4eda41f02b01d"
 dependencies = [
  "futures-core",
  "futures-task",
@@ -358,38 +489,38 @@ dependencies = [
 
 [[package]]
 name = "futures-io"
-version = "0.3.29"
+version = "0.3.30"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8bf34a163b5c4c52d0478a4d757da8fb65cabef42ba90515efee0f6f9fa45aaa"
+checksum = "a44623e20b9681a318efdd71c299b6b222ed6f231972bfe2f224ebad6311f0c1"
 
 [[package]]
 name = "futures-macro"
-version = "0.3.29"
+version = "0.3.30"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "53b153fd91e4b0147f4aced87be237c98248656bb01050b96bf3ee89220a8ddb"
+checksum = "87750cf4b7a4c0625b1529e4c543c2182106e4dedc60a2a6455e00d212c489ac"
 dependencies = [
- "proc-macro2 1.0.70",
- "quote 1.0.33",
- "syn 2.0.39",
+ "proc-macro2 1.0.81",
+ "quote 1.0.36",
+ "syn 2.0.60",
 ]
 
 [[package]]
 name = "futures-sink"
-version = "0.3.29"
+version = "0.3.30"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e36d3378ee38c2a36ad710c5d30c2911d752cb941c00c72dbabfb786a7970817"
+checksum = "9fb8e00e87438d937621c1c6269e53f536c14d3fbd6a042bb24879e57d474fb5"
 
 [[package]]
 name = "futures-task"
-version = "0.3.29"
+version = "0.3.30"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "efd193069b0ddadc69c46389b740bbccdd97203899b48d09c5f7969591d6bae2"
+checksum = "38d84fa142264698cdce1a9f9172cf383a0c82de1bddcf3092901442c4097004"
 
 [[package]]
 name = "futures-util"
-version = "0.3.29"
+version = "0.3.30"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a19526d624e703a3179b3d322efec918b6246ea0fa51d41124525f00f1cc8104"
+checksum = "3d6401deb83407ab3da39eba7e33987a73c3df0c82b4bb5813ee871c19c41d48"
 dependencies = [
  "futures-channel",
  "futures-core",
@@ -404,10 +535,20 @@ dependencies = [
 ]
 
 [[package]]
+name = "generic-array"
+version = "0.14.7"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "85649ca51fd72272d7821adaf274ad91c288277713d9c18820d8499a7ff69e9a"
+dependencies = [
+ "typenum",
+ "version_check",
+]
+
+[[package]]
 name = "getrandom"
-version = "0.2.11"
+version = "0.2.14"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "fe9006bed769170c11f845cf00c7c1e9092aeb3f268e007c3e760ac68008070f"
+checksum = "94b22e06ecb0110981051723910cbf0b5f5e09a2062dd7663334ee79a9d1286c"
 dependencies = [
  "cfg-if",
  "libc",
@@ -428,9 +569,9 @@ checksum = "d2fabcfbdc87f4758337ca535fb41a6d701b65693ce38287d856d1674551ec9b"
 
 [[package]]
 name = "h2"
-version = "0.3.22"
+version = "0.3.26"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4d6250322ef6e60f93f9a2162799302cd6f68f79f6e5d85c8c16f14d1d958178"
+checksum = "81fe527a889e1532da5c525686d96d4c2e74cdd345badf8dfef9f6b39dd5f5e8"
 dependencies = [
  "bytes",
  "fnv",
@@ -446,16 +587,34 @@ dependencies = [
 ]
 
 [[package]]
+name = "handlebars"
+version = "3.5.5"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "4498fc115fa7d34de968184e473529abb40eeb6be8bc5f7faba3d08c316cb3e3"
+dependencies = [
+ "log",
+ "pest",
+ "pest_derive",
+ "quick-error",
+ "serde",
+ "serde_json",
+]
+
+[[package]]
 name = "hashbrown"
-version = "0.14.3"
+version = "0.14.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "290f1a1d9242c78d09ce40a5e87e7554ee637af1351968159f4952f028f75604"
+checksum = "e5274423e17b7c9fc20b6e7e208532f9b19825d82dfd615708b70edd83df41f1"
+dependencies = [
+ "ahash",
+ "allocator-api2",
+]
 
 [[package]]
 name = "hermit-abi"
-version = "0.3.3"
+version = "0.3.9"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d77f7ec81a6d05a3abb01ab6eb7590f6083d08449fe5a1c8b1e620283546ccb7"
+checksum = "d231dfb89cfffdbc30e7fc41579ed6066ad03abda9e567ccafae602b97ec5024"
 
 [[package]]
 name = "hex"
@@ -468,18 +627,29 @@ dependencies = [
 
 [[package]]
 name = "home"
-version = "0.5.5"
+version = "0.5.9"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5444c27eef6923071f7ebcc33e3444508466a76f7a2b93da00ed6e19f30c1ddb"
+checksum = "e3d1354bf6b7235cb4a0576c2619fd4ed18183f689b12b006a0ee7329eeff9a5"
 dependencies = [
- "windows-sys 0.48.0",
+ "windows-sys 0.52.0",
+]
+
+[[package]]
+name = "hostname"
+version = "0.4.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "f9c7c7c8ac16c798734b8a24560c1362120597c40d5e1459f09498f8f6c8f2ba"
+dependencies = [
+ "cfg-if",
+ "libc",
+ "windows",
 ]
 
 [[package]]
 name = "http"
-version = "0.2.11"
+version = "0.2.12"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8947b1a6fad4393052c7ba1f4cd97bed3e953a95c79c92ad9b051a04611d9fbb"
+checksum = "601cbb57e577e2f5ef5be8e7b83f0f63994f25aa94d673e54a92d5c516d101f1"
 dependencies = [
  "bytes",
  "fnv",
@@ -488,9 +658,9 @@ dependencies = [
 
 [[package]]
 name = "http-body"
-version = "0.4.5"
+version = "0.4.6"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d5f38f16d184e36f2408a55281cd658ecbd3ca05cce6d6510a176eca393e26d1"
+checksum = "7ceab25649e9960c0311ea418d17bee82c0dcec1bd053b5f9a66e265a693bed2"
 dependencies = [
  "bytes",
  "http",
@@ -517,9 +687,9 @@ checksum = "9a3a5bfb195931eeb336b2a7b4d761daec841b97f947d34394601737a7bba5e4"
 
 [[package]]
 name = "hyper"
-version = "0.14.27"
+version = "0.14.28"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ffb1cfd654a8219eaef89881fdb3bb3b1cdc5fa75ded05d6933b2b382e395468"
+checksum = "bf96e135eb83a2a8ddf766e426a841d8ddd7449d5f00d34ea02b41d2f19eef80"
 dependencies = [
  "bytes",
  "futures-channel",
@@ -532,7 +702,7 @@ dependencies = [
  "httpdate",
  "itoa",
  "pin-project-lite",
- "socket2 0.4.10",
+ "socket2",
  "tokio",
  "tower-service",
  "tracing",
@@ -551,9 +721,9 @@ dependencies = [
 
 [[package]]
 name = "indexmap"
-version = "2.1.0"
+version = "2.2.6"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d530e1a18b1cb4c484e6e34556a0d948706958449fca0cab753d649f2bce3d1f"
+checksum = "168fb715dda47215e360912c096649d23d58bf392ac62f73919e831745e40f26"
 dependencies = [
  "equivalent",
  "hashbrown",
@@ -561,35 +731,44 @@ dependencies = [
 
 [[package]]
 name = "is-terminal"
-version = "0.4.9"
+version = "0.4.12"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "cb0889898416213fab133e1d33a0e5858a48177452750691bde3666d0fdbaf8b"
+checksum = "f23ff5ef2b80d608d61efee834934d862cd92461afc0560dedf493e4c033738b"
 dependencies = [
  "hermit-abi",
- "rustix",
- "windows-sys 0.48.0",
+ "libc",
+ "windows-sys 0.52.0",
+]
+
+[[package]]
+name = "itertools"
+version = "0.12.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "ba291022dbbd398a455acf126c1e341954079855bc60dfdda641363bd6922569"
+dependencies = [
+ "either",
 ]
 
 [[package]]
 name = "itoa"
-version = "1.0.9"
+version = "1.0.11"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "af150ab688ff2122fcef229be89cb50dd66af9e01a4ff320cc137eecc9bacc38"
+checksum = "49f1f14873335454500d59611f1cf4a4b0f786f9ac11f4312a78e4cf2566695b"
 
 [[package]]
 name = "jobserver"
-version = "0.1.27"
+version = "0.1.31"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8c37f63953c4c63420ed5fd3d6d398c719489b9f872b9fa683262f8edd363c7d"
+checksum = "d2b099aaa34a9751c5bf0878add70444e1ed2dd73f347be99003d4577277de6e"
 dependencies = [
  "libc",
 ]
 
 [[package]]
 name = "js-sys"
-version = "0.3.66"
+version = "0.3.69"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "cee9c64da59eae3b50095c18d3e74f8b73c0b86d2792824ff01bbce68ba229ca"
+checksum = "29c15563dc2726973df627357ce0c9ddddbea194836909d655df6a75d2cf296d"
 dependencies = [
  "wasm-bindgen",
 ]
@@ -607,30 +786,54 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "830d08ce1d1d941e6b30645f1a0eb5643013d835ce3779a5fc208261dbe10f55"
 
 [[package]]
+name = "lettre"
+version = "0.11.7"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "1a62049a808f1c4e2356a2a380bd5f2aca3b011b0b482cf3b914ba1731426969"
+dependencies = [
+ "base64 0.22.1",
+ "chumsky",
+ "email-encoding",
+ "email_address",
+ "fastrand",
+ "futures-util",
+ "hostname",
+ "httpdate",
+ "idna",
+ "mime",
+ "native-tls",
+ "nom",
+ "percent-encoding",
+ "quoted_printable",
+ "socket2",
+ "tokio",
+ "url",
+]
+
+[[package]]
 name = "libc"
-version = "0.2.150"
+version = "0.2.154"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "89d92a4743f9a61002fae18374ed11e7973f530cb3a3255fb354818118b2203c"
+checksum = "ae743338b92ff9146ce83992f766a31066a91a8c84a45e0e9f21e7cf6de6d346"
 
 [[package]]
 name = "libloading"
-version = "0.7.4"
+version = "0.8.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b67380fd3b2fbe7527a606e18729d21c6f3951633d0500574c4dc22d2d638b9f"
+checksum = "0c2a198fb6b0eada2a8df47933734e6d35d350665a33a3593d7164fa52c75c19"
 dependencies = [
  "cfg-if",
- "winapi",
+ "windows-targets 0.52.5",
 ]
 
 [[package]]
 name = "libredox"
-version = "0.0.1"
+version = "0.1.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "85c833ca1e66078851dba29046874e38f08b2c883700aa29a03ddd3b23814ee8"
+checksum = "c0ff37bd590ca25063e35af745c343cb7a0271906fb7b37e4813e8f79f00268d"
 dependencies = [
- "bitflags 2.4.1",
+ "bitflags 2.5.0",
  "libc",
- "redox_syscall 0.4.1",
 ]
 
 [[package]]
@@ -645,21 +848,21 @@ dependencies = [
 
 [[package]]
 name = "linux-raw-sys"
-version = "0.4.12"
+version = "0.4.13"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c4cd1a83af159aa67994778be9070f0ae1bd732942279cabb14f86f986a21456"
+checksum = "01cda141df6706de531b6c46c3a33ecca755538219bd484262fa09410c13539c"
 
 [[package]]
 name = "log"
-version = "0.4.20"
+version = "0.4.21"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b5e6163cb8c49088c2c36f57875e58ccd8c87c7427f7fbd50ea6710b2f3f2e8f"
+checksum = "90ed8c1e510134f979dbc4f070f87d4313098b704861a105fe34231c70a3901c"
 
 [[package]]
 name = "memchr"
-version = "2.6.4"
+version = "2.7.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f665ee40bc4a3c5590afb1e9677db74a508659dfd71e126420da8274909a0167"
+checksum = "6c8640c5d730cb13ebd907d8d04b52f55ac9a2eec55b440c8892f40d56c76c1d"
 
 [[package]]
 name = "memoffset"
@@ -680,6 +883,12 @@ dependencies = [
 ]
 
 [[package]]
+name = "mime"
+version = "0.3.17"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "6877bb514081ee2a7ff5ef9de3281f14a4dd4bceac4c09388074a6b5df8a139a"
+
+[[package]]
 name = "minimal-lexical"
 version = "0.2.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -687,18 +896,18 @@ checksum = "68354c5c6bd36d73ff3feceb05efa59b6acb7626617f4962be322a825e61f79a"
 
 [[package]]
 name = "miniz_oxide"
-version = "0.7.1"
+version = "0.7.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e7810e0be55b428ada41041c41f32c9f1a42817901b4ccf45fa3d4b6561e74c7"
+checksum = "9d811f3e15f28568be3407c8e7fdb6514c1cda3cb30683f15b6a1a1dc4ea14a7"
 dependencies = [
  "adler",
 ]
 
 [[package]]
 name = "mio"
-version = "0.8.9"
+version = "0.8.11"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3dce281c5e46beae905d4de1870d8b1509a9142b62eedf18b443b011ca8343d0"
+checksum = "a4a650543ca06a924e8b371db273b2756685faae30f8487da1b56505a8f78b0c"
 dependencies = [
  "libc",
  "wasi",
@@ -706,6 +915,24 @@ dependencies = [
 ]
 
 [[package]]
+name = "native-tls"
+version = "0.2.11"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "07226173c32f2926027b63cce4bcd8076c3552846cbe7925f3aaffeac0a3b92e"
+dependencies = [
+ "lazy_static",
+ "libc",
+ "log",
+ "openssl",
+ "openssl-probe",
+ "openssl-sys",
+ "schannel",
+ "security-framework",
+ "security-framework-sys",
+ "tempfile",
+]
+
+[[package]]
 name = "nibble_vec"
 version = "0.1.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -762,26 +989,26 @@ dependencies = [
 
 [[package]]
 name = "object"
-version = "0.32.1"
+version = "0.32.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9cf5f9dd3933bd50a9e1f149ec995f39ae2c496d31fd772c1fd45ebc27e902b0"
+checksum = "a6a622008b6e321afc04970976f62ee297fdbaa6f95318ca343e3eebb9648441"
 dependencies = [
  "memchr",
 ]
 
 [[package]]
 name = "once_cell"
-version = "1.18.0"
+version = "1.19.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "dd8b5dd2ae5ed71462c540258bedcb51965123ad7e7ccf4b9a8cafaa4a63576d"
+checksum = "3fdb12b2476b595f9358c5161aa467c2438859caa136dec86c26fdd2efe17b92"
 
 [[package]]
 name = "openssl"
-version = "0.10.60"
+version = "0.10.64"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "79a4c6c3a2b158f7f8f2a2fc5a969fa3a068df6fc9dbb4a43845436e3af7c800"
+checksum = "95a0481286a310808298130d22dd1fef0fa571e05a8f44ec801801e84b216b1f"
 dependencies = [
- "bitflags 2.4.1",
+ "bitflags 2.5.0",
  "cfg-if",
  "foreign-types",
  "libc",
@@ -796,16 +1023,22 @@ version = "0.1.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "a948666b637a0f465e8564c73e89d4dde00d72d4d473cc972f390fc3dcee7d9c"
 dependencies = [
- "proc-macro2 1.0.70",
- "quote 1.0.33",
- "syn 2.0.39",
+ "proc-macro2 1.0.81",
+ "quote 1.0.36",
+ "syn 2.0.60",
 ]
 
 [[package]]
+name = "openssl-probe"
+version = "0.1.5"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "ff011a302c396a5197692431fc1948019154afc178baf7d8e37367442a4601cf"
+
+[[package]]
 name = "openssl-sys"
-version = "0.9.96"
+version = "0.9.102"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3812c071ba60da8b5677cc12bcb1d42989a65553772897a7e0355545a819838f"
+checksum = "c597637d56fbc83893a35eb0dd04b2b8e7a50c91e64e9493e398b5df4fb45fa2"
 dependencies = [
  "cc",
  "libc",
@@ -826,6 +1059,7 @@ name = "pbs-api-types"
 version = "0.1.0"
 dependencies = [
  "anyhow",
+ "const_format",
  "hex",
  "lazy_static",
  "percent-encoding",
@@ -843,7 +1077,7 @@ dependencies = [
 
 [[package]]
 name = "pbs-buildcfg"
-version = "3.1.2"
+version = "3.2.2"
 
 [[package]]
 name = "pbs-client"
@@ -897,7 +1131,7 @@ name = "pbs-config"
 version = "0.1.0"
 dependencies = [
  "anyhow",
- "hex",
+ "const_format",
  "lazy_static",
  "libc",
  "nix 0.26.4",
@@ -905,6 +1139,7 @@ dependencies = [
  "openssl",
  "pbs-api-types",
  "pbs-buildcfg",
+ "proxmox-notify",
  "proxmox-router",
  "proxmox-schema",
  "proxmox-section-config",
@@ -921,7 +1156,7 @@ name = "pbs-datastore"
 version = "0.1.0"
 dependencies = [
  "anyhow",
- "base64",
+ "base64 0.13.1",
  "crc32fast",
  "endian_trait",
  "futures",
@@ -1016,6 +1251,7 @@ dependencies = [
  "libc",
  "log",
  "nix 0.26.4",
+ "openssl",
  "pbs-api-types",
  "pbs-config",
  "proxmox-io",
@@ -1037,7 +1273,7 @@ name = "pbs-tools"
 version = "0.1.0"
 dependencies = [
  "anyhow",
- "base64",
+ "base64 0.13.1",
  "bytes",
  "crc32fast",
  "endian_trait",
@@ -1068,22 +1304,61 @@ dependencies = [
 ]
 
 [[package]]
-name = "peeking_take_while"
-version = "0.1.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "19b17cddbe7ec3f8bc800887bab5e717348c95ea2ca0b1bf0837fb964dc67099"
-
-[[package]]
 name = "percent-encoding"
 version = "2.3.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "e3148f5046208a5d56bcfc03053e3ca6334e51da8dfb19b6cdc8b306fae3283e"
 
 [[package]]
+name = "pest"
+version = "2.7.10"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "560131c633294438da9f7c4b08189194b20946c8274c6b9e38881a7874dc8ee8"
+dependencies = [
+ "memchr",
+ "thiserror",
+ "ucd-trie",
+]
+
+[[package]]
+name = "pest_derive"
+version = "2.7.10"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "26293c9193fbca7b1a3bf9b79dc1e388e927e6cacaa78b4a3ab705a1d3d41459"
+dependencies = [
+ "pest",
+ "pest_generator",
+]
+
+[[package]]
+name = "pest_generator"
+version = "2.7.10"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "3ec22af7d3fb470a85dd2ca96b7c577a1eb4ef6f1683a9fe9a8c16e136c04687"
+dependencies = [
+ "pest",
+ "pest_meta",
+ "proc-macro2 1.0.81",
+ "quote 1.0.36",
+ "syn 2.0.60",
+]
+
+[[package]]
+name = "pest_meta"
+version = "2.7.10"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "d7a240022f37c361ec1878d646fc5b7d7c4d28d5946e1a80ad5a7a4f4ca0bdcd"
+dependencies = [
+ "once_cell",
+ "pest",
+ "sha2",
+]
+
+[[package]]
 name = "pin-project-lite"
-version = "0.2.13"
+version = "0.2.14"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8afb450f006bf6385ca15ef45d71d2288452bc3683ce2e2cacc0d18e4be60b58"
+checksum = "bda66fc9667c18cb2758a2ac84d1167245054bcf85d5d1aaa6923f45801bdd02"
 
 [[package]]
 name = "pin-utils"
@@ -1093,9 +1368,9 @@ checksum = "8b870d8c151b6f2fb93e84a13146138f05d02ed11c7e7c54f8826aaaf7c9f184"
 
 [[package]]
 name = "pkg-config"
-version = "0.3.27"
+version = "0.3.30"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "26072860ba924cbfa98ea39c8c19b4dd6a4a25423dbdf219c1eca91aa0cf6964"
+checksum = "d231b230927b5e4ad203db57bbcbee2802f6bce620b1e4a9024a07d94e2907ec"
 
 [[package]]
 name = "proc-macro2"
@@ -1103,26 +1378,26 @@ version = "0.2.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "cd07deb3c6d1d9ff827999c7f9b04cdfd66b1b17ae508e14fe47b620f2282ae0"
 dependencies = [
- "unicode-xid",
+ "unicode-xid 0.1.0",
 ]
 
 [[package]]
 name = "proc-macro2"
-version = "1.0.70"
+version = "1.0.81"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "39278fbbf5fb4f646ce651690877f89d1c5811a3d4acb27700c1cb3cdb78fd3b"
+checksum = "3d1597b0c024618f09a9c3b8655b7e430397a36d23fdafec26d6965e9eec3eba"
 dependencies = [
  "unicode-ident",
 ]
 
 [[package]]
 name = "proxmox-api-macro"
-version = "1.0.6"
+version = "1.0.8"
 dependencies = [
  "anyhow",
- "proc-macro2 1.0.70",
- "quote 1.0.33",
- "syn 2.0.39",
+ "proc-macro2 1.0.81",
+ "quote 1.0.36",
+ "syn 2.0.60",
 ]
 
 [[package]]
@@ -1140,9 +1415,10 @@ dependencies = [
 
 [[package]]
 name = "proxmox-auth-api"
-version = "0.3.2"
+version = "0.3.5"
 dependencies = [
  "anyhow",
+ "const_format",
  "lazy_static",
  "proxmox-schema",
  "regex",
@@ -1152,7 +1428,7 @@ dependencies = [
 
 [[package]]
 name = "proxmox-backup"
-version = "3.1.2"
+version = "3.2.2"
 
 [[package]]
 name = "proxmox-backup-banner"
@@ -1228,9 +1504,10 @@ dependencies = [
 
 [[package]]
 name = "proxmox-fuse"
-version = "0.1.4"
+version = "0.1.7"
 dependencies = [
  "anyhow",
+ "cc",
  "futures",
  "libc",
  "tokio",
@@ -1239,10 +1516,10 @@ dependencies = [
 
 [[package]]
 name = "proxmox-http"
-version = "0.9.0"
+version = "0.9.1"
 dependencies = [
  "anyhow",
- "base64",
+ "base64 0.13.1",
  "futures",
  "http",
  "hyper",
@@ -1253,6 +1530,7 @@ dependencies = [
  "serde_json",
  "tokio",
  "tokio-openssl",
+ "ureq",
  "url",
 ]
 
@@ -1267,7 +1545,7 @@ dependencies = [
 
 [[package]]
 name = "proxmox-human-byte"
-version = "0.1.2"
+version = "0.1.3"
 dependencies = [
  "anyhow",
  "proxmox-schema",
@@ -1288,8 +1566,32 @@ name = "proxmox-lang"
 version = "1.1.0"
 
 [[package]]
+name = "proxmox-notify"
+version = "0.4.0"
+dependencies = [
+ "anyhow",
+ "const_format",
+ "handlebars",
+ "lettre",
+ "log",
+ "openssl",
+ "proxmox-http",
+ "proxmox-http-error",
+ "proxmox-human-byte",
+ "proxmox-schema",
+ "proxmox-section-config",
+ "proxmox-serde",
+ "proxmox-sys",
+ "proxmox-time",
+ "proxmox-uuid",
+ "regex",
+ "serde",
+ "serde_json",
+]
+
+[[package]]
 name = "proxmox-router"
-version = "2.1.1"
+version = "2.1.3"
 dependencies = [
  "anyhow",
  "env_logger",
@@ -1311,9 +1613,10 @@ dependencies = [
 
 [[package]]
 name = "proxmox-schema"
-version = "2.0.2"
+version = "3.1.0"
 dependencies = [
  "anyhow",
+ "const_format",
  "lazy_static",
  "proxmox-api-macro",
  "regex",
@@ -1324,7 +1627,7 @@ dependencies = [
 
 [[package]]
 name = "proxmox-section-config"
-version = "2.0.0"
+version = "2.0.1"
 dependencies = [
  "anyhow",
  "hex",
@@ -1339,7 +1642,7 @@ name = "proxmox-serde"
 version = "0.1.1"
 dependencies = [
  "anyhow",
- "base64",
+ "base64 0.13.1",
  "proxmox-time",
  "serde",
  "serde_json",
@@ -1359,17 +1662,17 @@ dependencies = [
 name = "proxmox-sortable-macro"
 version = "0.1.3"
 dependencies = [
- "proc-macro2 1.0.70",
- "quote 1.0.33",
- "syn 2.0.39",
+ "proc-macro2 1.0.81",
+ "quote 1.0.36",
+ "syn 2.0.60",
 ]
 
 [[package]]
 name = "proxmox-sys"
-version = "0.5.2"
+version = "0.5.3"
 dependencies = [
  "anyhow",
- "base64",
+ "base64 0.13.1",
  "lazy_static",
  "libc",
  "log",
@@ -1384,7 +1687,7 @@ dependencies = [
 
 [[package]]
 name = "proxmox-time"
-version = "1.1.5"
+version = "1.1.6"
 dependencies = [
  "anyhow",
  "bitflags 1.3.2",
@@ -1404,6 +1707,15 @@ dependencies = [
 ]
 
 [[package]]
+name = "psm"
+version = "0.1.21"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "5787f7cda34e3033a72192c018bc5883100330f362ef279a8cbccfce8bb4e874"
+dependencies = [
+ "cc",
+]
+
+[[package]]
 name = "pxar"
 version = "0.10.2"
 dependencies = [
@@ -1436,6 +1748,12 @@ dependencies = [
 ]
 
 [[package]]
+name = "quick-error"
+version = "2.0.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "a993555f31e5a609f617c12db6250dedcac1b0a85076912c436e6fc9b2c8e6a3"
+
+[[package]]
 name = "quote"
 version = "0.4.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -1446,14 +1764,20 @@ dependencies = [
 
 [[package]]
 name = "quote"
-version = "1.0.33"
+version = "1.0.36"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5267fca4496028628a95160fc423a33e8b2e6af8a5302579e322e4b520293cae"
+checksum = "0fa76aaf39101c457836aec0ce2316dbdc3ab723cdda1c6bd4e6ad4208acaca7"
 dependencies = [
- "proc-macro2 1.0.70",
+ "proc-macro2 1.0.81",
 ]
 
 [[package]]
+name = "quoted_printable"
+version = "0.5.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "79ec282e887b434b68c18fe5c121d38e72a5cf35119b59e54ec5b992ea9c8eb0"
+
+[[package]]
 name = "radix_trie"
 version = "0.2.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -1465,15 +1789,6 @@ dependencies = [
 
 [[package]]
 name = "redox_syscall"
-version = "0.3.5"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "567664f262709473930a4bf9e51bf2ebf3348f2e748ccc50dea20646858f8f29"
-dependencies = [
- "bitflags 1.3.2",
-]
-
-[[package]]
-name = "redox_syscall"
 version = "0.4.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "4722d768eff46b75989dd134e5c353f0d6296e5aaa3132e776cbdb56be7731aa"
@@ -1483,9 +1798,9 @@ dependencies = [
 
 [[package]]
 name = "redox_users"
-version = "0.4.4"
+version = "0.4.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a18479200779601e498ada4e8c1e1f50e3ee19deb0259c25825a98b5603b2cb4"
+checksum = "bd283d9651eeda4b2a83a43c1c91b266c40fd76ecd39a50a8c630ae69dc72891"
 dependencies = [
  "getrandom",
  "libredox",
@@ -1494,9 +1809,9 @@ dependencies = [
 
 [[package]]
 name = "regex"
-version = "1.10.2"
+version = "1.10.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "380b951a9c5e80ddfd6136919eef32310721aa4aacd4889a8d39124b026ab343"
+checksum = "c117dbdfde9c8308975b6a18d71f3f385c89461f7b3fb054288ecf2a2058ba4c"
 dependencies = [
  "aho-corasick",
  "memchr",
@@ -1506,9 +1821,9 @@ dependencies = [
 
 [[package]]
 name = "regex-automata"
-version = "0.4.3"
+version = "0.4.6"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5f804c7828047e88b2d32e2d7fe5a105da8ee3264f01902f796c8e067dc2483f"
+checksum = "86b83b8b9847f9bf95ef68afb0b8e6cdb80f498442f5179a29fad448fcc1eaea"
 dependencies = [
  "aho-corasick",
  "memchr",
@@ -1517,9 +1832,24 @@ dependencies = [
 
 [[package]]
 name = "regex-syntax"
-version = "0.8.2"
+version = "0.8.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "adad44e29e4c806119491a7f06f03de4d1af22c3a680dd47f1e6e179439d1f56"
+
+[[package]]
+name = "ring"
+version = "0.17.8"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c08c74e62047bb2de4ff487b251e4a92e24f48745648451635cec7d591162d9f"
+checksum = "c17fa4cb658e3583423e915b9f3acc01cceaee1860e33d59ebae66adc3a2dc0d"
+dependencies = [
+ "cc",
+ "cfg-if",
+ "getrandom",
+ "libc",
+ "spin",
+ "untrusted",
+ "windows-sys 0.52.0",
+]
 
 [[package]]
 name = "rustc-demangle"
@@ -1535,11 +1865,11 @@ checksum = "08d43f7aa6b08d49f382cde6a7982047c3426db949b1424bc4b7ec9ae12c6ce2"
 
 [[package]]
 name = "rustix"
-version = "0.38.26"
+version = "0.38.34"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9470c4bf8246c8daf25f9598dca807fb6510347b1e1cfa55749113850c79d88a"
+checksum = "70dc5ec042f7a43c4a73241207cecc9873a06d45debb38b329f8541d85c2730f"
 dependencies = [
- "bitflags 2.4.1",
+ "bitflags 2.5.0",
  "errno",
  "libc",
  "linux-raw-sys",
@@ -1547,6 +1877,60 @@ dependencies = [
 ]
 
 [[package]]
+name = "rustls"
+version = "0.22.4"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "bf4ef73721ac7bcd79b2b315da7779d8fc09718c6b3d2d1b2d94850eb8c18432"
+dependencies = [
+ "log",
+ "ring",
+ "rustls-pki-types",
+ "rustls-webpki",
+ "subtle",
+ "zeroize",
+]
+
+[[package]]
+name = "rustls-native-certs"
+version = "0.7.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "8f1fb85efa936c42c6d5fc28d2629bb51e4b2f4b8a5211e297d599cc5a093792"
+dependencies = [
+ "openssl-probe",
+ "rustls-pemfile",
+ "rustls-pki-types",
+ "schannel",
+ "security-framework",
+]
+
+[[package]]
+name = "rustls-pemfile"
+version = "2.1.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "29993a25686778eb88d4189742cd713c9bce943bc54251a33509dc63cbacf73d"
+dependencies = [
+ "base64 0.22.1",
+ "rustls-pki-types",
+]
+
+[[package]]
+name = "rustls-pki-types"
+version = "1.5.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "beb461507cee2c2ff151784c52762cf4d9ff6a61f3e80968600ed24fa837fa54"
+
+[[package]]
+name = "rustls-webpki"
+version = "0.102.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "f3bce581c0dd41bce533ce695a1437fa16a7ab5ac3ccfa99fe1a620a7885eabf"
+dependencies = [
+ "ring",
+ "rustls-pki-types",
+ "untrusted",
+]
+
+[[package]]
 name = "rustyline"
 version = "9.1.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -1572,9 +1956,9 @@ dependencies = [
 
 [[package]]
 name = "ryu"
-version = "1.0.15"
+version = "1.0.17"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1ad4cc8da4ef723ed60bced201181d83791ad433213d8c24efffda1eec85d741"
+checksum = "e86697c916019a8588c99b5fac3cead74ec0b4b819707a682fd4d23fa0ce1ba1"
 
 [[package]]
 name = "same-file"
@@ -1586,36 +1970,68 @@ dependencies = [
 ]
 
 [[package]]
+name = "schannel"
+version = "0.1.23"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "fbc91545643bcf3a0bbb6569265615222618bdf33ce4ffbbd13c4bbd4c093534"
+dependencies = [
+ "windows-sys 0.52.0",
+]
+
+[[package]]
 name = "scopeguard"
 version = "1.2.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "94143f37725109f92c262ed2cf5e59bce7498c01bcc1502d7b9afe439a4e9f49"
 
 [[package]]
+name = "security-framework"
+version = "2.10.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "770452e37cad93e0a50d5abc3990d2bc351c36d0328f86cefec2f2fb206eaef6"
+dependencies = [
+ "bitflags 1.3.2",
+ "core-foundation",
+ "core-foundation-sys",
+ "libc",
+ "security-framework-sys",
+]
+
+[[package]]
+name = "security-framework-sys"
+version = "2.10.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "41f3cc463c0ef97e11c3461a9d3787412d30e8e7eb907c79180c4a57bf7c04ef"
+dependencies = [
+ "core-foundation-sys",
+ "libc",
+]
+
+[[package]]
 name = "serde"
-version = "1.0.193"
+version = "1.0.200"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "25dd9975e68d0cb5aa1120c288333fc98731bd1dd12f561e468ea4728c042b89"
+checksum = "ddc6f9cc94d67c0e21aaf7eda3a010fd3af78ebf6e096aa6e2e13c79749cce4f"
 dependencies = [
  "serde_derive",
 ]
 
 [[package]]
 name = "serde_derive"
-version = "1.0.193"
+version = "1.0.200"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "43576ca501357b9b071ac53cdc7da8ef0cbd9493d8df094cd821777ea6e894d3"
+checksum = "856f046b9400cee3c8c94ed572ecdb752444c24528c035cd35882aad6f492bcb"
 dependencies = [
- "proc-macro2 1.0.70",
- "quote 1.0.33",
- "syn 2.0.39",
+ "proc-macro2 1.0.81",
+ "quote 1.0.36",
+ "syn 2.0.60",
 ]
 
 [[package]]
 name = "serde_json"
-version = "1.0.108"
+version = "1.0.116"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3d1c7e3eac408d115102c4c24ad393e0821bb3a5df4d506a80f85f7a742a526b"
+checksum = "3e17db7126d17feb94eb3fad46bf1a96b034e8aacbc2e775fe81505f8b0b2813"
 dependencies = [
  "itoa",
  "ryu",
@@ -1632,16 +2048,27 @@ dependencies = [
 ]
 
 [[package]]
+name = "sha2"
+version = "0.10.8"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "793db75ad2bcafc3ffa7c68b215fee268f537982cd901d132f89c6343f3a3dc8"
+dependencies = [
+ "cfg-if",
+ "cpufeatures",
+ "digest",
+]
+
+[[package]]
 name = "shlex"
-version = "1.2.0"
+version = "1.3.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a7cee0529a6d40f580e7a5e6c495c8fbfe21b7b52795ed4bb5e62cdf92bc6380"
+checksum = "0fda2ff0d084019ba4d7c6f371c95d8fd75ce3524c3cb8fb653a3023f6323e64"
 
 [[package]]
 name = "signal-hook-registry"
-version = "1.4.1"
+version = "1.4.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d8229b473baa5980ac72ef434c4415e70c4b5e71b423043adb4ba059f89c99a1"
+checksum = "a9e9e0b4211b72e7b8b6e85c807d36c212bdb33ea8587f7569562a84df5465b1"
 dependencies = [
  "libc",
 ]
@@ -1663,9 +2090,9 @@ dependencies = [
 
 [[package]]
 name = "smallvec"
-version = "1.11.2"
+version = "1.13.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4dccd0940a2dcdf68d092b8cbab7dc0ad8fa938bf95787e1b916b0e3d0e8e970"
+checksum = "3c5e1a9a646d36c3599cd173a41282daf47c44583ad367b8e6837255952e5c67"
 
 [[package]]
 name = "smawk"
@@ -1675,22 +2102,31 @@ checksum = "b7c388c1b5e93756d0c740965c41e8822f866621d41acbdf6336a6a168f8840c"
 
 [[package]]
 name = "socket2"
-version = "0.4.10"
+version = "0.5.7"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9f7916fc008ca5542385b89a3d3ce689953c143e9304a9bf8beec1de48994c0d"
+checksum = "ce305eb0b4296696835b71df73eb912e0f1ffd2556a501fcede6e0c50349191c"
 dependencies = [
  "libc",
- "winapi",
+ "windows-sys 0.52.0",
 ]
 
 [[package]]
-name = "socket2"
-version = "0.5.5"
+name = "spin"
+version = "0.9.8"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "6980e8d7511241f8acf4aebddbb1ff938df5eebe98691418c4468d0b72a96a67"
+
+[[package]]
+name = "stacker"
+version = "0.1.15"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7b5fac59a5cb5dd637972e5fca70daf0523c9067fcdc4842f053dae04a18f8e9"
+checksum = "c886bd4480155fd3ef527d45e9ac8dd7118a898a46530b7b94c3e21866259fce"
 dependencies = [
+ "cc",
+ "cfg-if",
  "libc",
- "windows-sys 0.48.0",
+ "psm",
+ "winapi",
 ]
 
 [[package]]
@@ -1700,6 +2136,12 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "9e08d8363704e6c71fc928674353e6b7c23dcea9d82d7012c8faf2a3a025f8d0"
 
 [[package]]
+name = "subtle"
+version = "2.5.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "81cdd64d312baedb58e21336b31bc043b77e01cc99033ce76ef539f78e965ebc"
+
+[[package]]
 name = "syn"
 version = "0.12.15"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -1707,17 +2149,17 @@ checksum = "c97c05b8ebc34ddd6b967994d5c6e9852fa92f8b82b3858c39451f97346dcce5"
 dependencies = [
  "proc-macro2 0.2.3",
  "quote 0.4.2",
- "unicode-xid",
+ "unicode-xid 0.1.0",
 ]
 
 [[package]]
 name = "syn"
-version = "2.0.39"
+version = "2.0.60"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "23e78b90f2fcf45d3e842032ce32e3f2d1545ba6636271dcbf24fa306d87be7a"
+checksum = "909518bc7b1c9b779f1bbf07f2929d35af9f0f37e47c6e9ef7f9dddc1e1821f3"
 dependencies = [
- "proc-macro2 1.0.70",
- "quote 1.0.33",
+ "proc-macro2 1.0.81",
+ "quote 1.0.36",
  "unicode-ident",
 ]
 
@@ -1733,19 +2175,31 @@ dependencies = [
 ]
 
 [[package]]
+name = "tempfile"
+version = "3.10.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "85b77fafb263dd9d05cbeac119526425676db3784113aa9295c88498cbf8bff1"
+dependencies = [
+ "cfg-if",
+ "fastrand",
+ "rustix",
+ "windows-sys 0.52.0",
+]
+
+[[package]]
 name = "termcolor"
-version = "1.4.0"
+version = "1.4.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ff1bc3d3f05aff0403e8ac0d92ced918ec05b666a43f83297ccef5bea8a3d449"
+checksum = "06794f8f6c5c898b3275aebefa6b8a1cb24cd2c6c79397ab15774837a0bc5755"
 dependencies = [
  "winapi-util",
 ]
 
 [[package]]
 name = "textwrap"
-version = "0.16.0"
+version = "0.16.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "222a222a5bfe1bba4a77b45ec488a741b3cb8872e5e499451fd7d0129c9c7c3d"
+checksum = "23d434d3f8967a09480fb04132ebe0a3e088c173e6d0ee7897abbdf4eab0f8b9"
 dependencies = [
  "smawk",
  "unicode-linebreak",
@@ -1754,22 +2208,22 @@ dependencies = [
 
 [[package]]
 name = "thiserror"
-version = "1.0.50"
+version = "1.0.59"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f9a7210f5c9a7156bb50aa36aed4c95afb51df0df00713949448cf9e97d382d2"
+checksum = "f0126ad08bff79f29fc3ae6a55cc72352056dfff61e3ff8bb7129476d44b23aa"
 dependencies = [
  "thiserror-impl",
 ]
 
 [[package]]
 name = "thiserror-impl"
-version = "1.0.50"
+version = "1.0.59"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "266b2e40bc00e5a6c09c3584011e08b06f123c00362c92b975ba9843aaaa14b8"
+checksum = "d1cd413b5d558b4c5bf3680e324a6fa5014e7b7c067a51e69dbdf47eb7148b66"
 dependencies = [
- "proc-macro2 1.0.70",
- "quote 1.0.33",
- "syn 2.0.39",
+ "proc-macro2 1.0.81",
+ "quote 1.0.36",
+ "syn 2.0.60",
 ]
 
 [[package]]
@@ -1789,9 +2243,9 @@ checksum = "1f3ccbac311fea05f86f61904b462b55fb3df8837a366dfc601a0161d0532f20"
 
 [[package]]
 name = "tokio"
-version = "1.34.0"
+version = "1.37.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d0c014766411e834f7af5b8f4cf46257aab4036ca95e9d2c144a10f59ad6f5b9"
+checksum = "1adbebffeca75fcfd058afa480fb6c0b81e165a0323f9c9d39c9697e37c46787"
 dependencies = [
  "backtrace",
  "bytes",
@@ -1800,7 +2254,7 @@ dependencies = [
  "num_cpus",
  "pin-project-lite",
  "signal-hook-registry",
- "socket2 0.5.5",
+ "socket2",
  "tokio-macros",
  "windows-sys 0.48.0",
 ]
@@ -1811,16 +2265,16 @@ version = "2.2.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "5b8a1e28f2deaa14e508979454cb3a223b10b938b45af148bc0986de36f1923b"
 dependencies = [
- "proc-macro2 1.0.70",
- "quote 1.0.33",
- "syn 2.0.39",
+ "proc-macro2 1.0.81",
+ "quote 1.0.36",
+ "syn 2.0.60",
 ]
 
 [[package]]
 name = "tokio-openssl"
-version = "0.6.3"
+version = "0.6.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c08f9ffb7809f1b20c1b398d92acf4cc719874b3b2b2d9ea2f09b4a80350878a"
+checksum = "6ffab79df67727f6acf57f1ff743091873c24c579b1e2ce4d8f53e47ded4d63d"
 dependencies = [
  "futures-util",
  "openssl",
@@ -1830,9 +2284,9 @@ dependencies = [
 
 [[package]]
 name = "tokio-stream"
-version = "0.1.14"
+version = "0.1.15"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "397c988d37662c7dda6d2208364a706264bf3d6138b11d436cbac0ad38832842"
+checksum = "267ac89e0bec6e691e5813911606935d77c476ff49024f98abcea3e7b15e37af"
 dependencies = [
  "futures-core",
  "pin-project-lite",
@@ -1880,9 +2334,21 @@ dependencies = [
 
 [[package]]
 name = "try-lock"
-version = "0.2.4"
+version = "0.2.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3528ecfd12c466c6f163363caf2d02a71161dd5e1cc6ae7b34207ea2d42d81ed"
+checksum = "e421abadd41a4225275504ea4d6566923418b7f05506fbc9c0fe86ba7396114b"
+
+[[package]]
+name = "typenum"
+version = "1.17.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "42ff0bf0c66b8238c6f3b578df37d0b7848e55df8577b3f74f92a69acceeb825"
+
+[[package]]
+name = "ucd-trie"
+version = "0.1.6"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "ed646292ffc8188ef8ea4d1e0e0150fb15a5c2e12ad9b8fc191ae7a8a7f3c4b9"
 
 [[package]]
 name = "udev"
@@ -1896,9 +2362,9 @@ dependencies = [
 
 [[package]]
 name = "unicode-bidi"
-version = "0.3.13"
+version = "0.3.15"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "92888ba5573ff080736b3648696b70cafad7d250551175acbaa4e0385b3e1460"
+checksum = "08f95100a766bf4f8f28f90d77e0a5461bbdb219042e7679bebe79004fed8d75"
 
 [[package]]
 name = "unicode-ident"
@@ -1914,24 +2380,24 @@ checksum = "3b09c83c3c29d37506a3e260c08c03743a6bb66a9cd432c6934ab501a190571f"
 
 [[package]]
 name = "unicode-normalization"
-version = "0.1.22"
+version = "0.1.23"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5c5713f0fc4b5db668a2ac63cdb7bb4469d8c9fed047b1d0292cc7b0ce2ba921"
+checksum = "a56d1686db2308d901306f92a263857ef59ea39678a5458e7cb17f01415101f5"
 dependencies = [
  "tinyvec",
 ]
 
 [[package]]
 name = "unicode-segmentation"
-version = "1.10.1"
+version = "1.11.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1dd624098567895118886609431a7c3b8f516e41d30e0643f03d94592a147e36"
+checksum = "d4c87d22b6e3f4a18d4d40ef354e97c90fcb14dd91d7dc0aa9d8a1172ebf7202"
 
 [[package]]
 name = "unicode-width"
-version = "0.1.11"
+version = "0.1.12"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e51733f11c9c4f72aa0c160008246859e340b00807569a0da0e7a1079b27ba85"
+checksum = "68f5e5f3158ecfd4b8ff6fe086db7c8467a2dfdac97fe420f2b7c4aa97af66d6"
 
 [[package]]
 name = "unicode-xid"
@@ -1940,6 +2406,36 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "fc72304796d0818e357ead4e000d19c9c174ab23dc11093ac919054d20a6a7fc"
 
 [[package]]
+name = "unicode-xid"
+version = "0.2.4"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "f962df74c8c05a667b5ee8bcf162993134c104e96440b663c8daa176dc772d8c"
+
+[[package]]
+name = "untrusted"
+version = "0.9.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "8ecb6da28b8a351d773b68d5825ac39017e680750f980f3a1a85cd8dd28a47c1"
+
+[[package]]
+name = "ureq"
+version = "2.9.7"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "d11a831e3c0b56e438a28308e7c810799e3c118417f342d30ecec080105395cd"
+dependencies = [
+ "base64 0.22.1",
+ "flate2",
+ "log",
+ "once_cell",
+ "rustls",
+ "rustls-native-certs",
+ "rustls-pki-types",
+ "rustls-webpki",
+ "url",
+ "webpki-roots",
+]
+
+[[package]]
 name = "url"
 version = "2.5.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -1963,10 +2459,16 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "accd4ea62f7bb7a82fe23066fb0957d48ef677f6eeb8215f372f52e48bb32426"
 
 [[package]]
+name = "version_check"
+version = "0.9.4"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "49874b5167b65d7193b8aba1567f5c7d93d001cafc34600cee003eda787e483f"
+
+[[package]]
 name = "walkdir"
-version = "2.4.0"
+version = "2.5.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d71d857dc86794ca4c280d616f7da00d2dbfd8cd788846559a6813e6aa4b54ee"
+checksum = "29790946404f91d9c5d06f9874efddea1dc06c5efe94541a7d6863108e3a5e4b"
 dependencies = [
  "same-file",
  "winapi-util",
@@ -1989,9 +2491,9 @@ checksum = "9c8d87e72b64a3b4db28d11ce29237c246188f4f51057d65a7eab63b7987e423"
 
 [[package]]
 name = "wasm-bindgen"
-version = "0.2.89"
+version = "0.2.92"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0ed0d4f68a3015cc185aff4db9506a015f4b96f95303897bfa23f846db54064e"
+checksum = "4be2531df63900aeb2bca0daaaddec08491ee64ceecbee5076636a3b026795a8"
 dependencies = [
  "cfg-if",
  "wasm-bindgen-macro",
@@ -1999,47 +2501,56 @@ dependencies = [
 
 [[package]]
 name = "wasm-bindgen-backend"
-version = "0.2.89"
+version = "0.2.92"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1b56f625e64f3a1084ded111c4d5f477df9f8c92df113852fa5a374dbda78826"
+checksum = "614d787b966d3989fa7bb98a654e369c762374fd3213d212cfc0251257e747da"
 dependencies = [
  "bumpalo",
  "log",
  "once_cell",
- "proc-macro2 1.0.70",
- "quote 1.0.33",
- "syn 2.0.39",
+ "proc-macro2 1.0.81",
+ "quote 1.0.36",
+ "syn 2.0.60",
  "wasm-bindgen-shared",
 ]
 
 [[package]]
 name = "wasm-bindgen-macro"
-version = "0.2.89"
+version = "0.2.92"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0162dbf37223cd2afce98f3d0785506dcb8d266223983e4b5b525859e6e182b2"
+checksum = "a1f8823de937b71b9460c0c34e25f3da88250760bec0ebac694b49997550d726"
 dependencies = [
- "quote 1.0.33",
+ "quote 1.0.36",
  "wasm-bindgen-macro-support",
 ]
 
 [[package]]
 name = "wasm-bindgen-macro-support"
-version = "0.2.89"
+version = "0.2.92"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f0eb82fcb7930ae6219a7ecfd55b217f5f0893484b7a13022ebb2b2bf20b5283"
+checksum = "e94f17b526d0a461a191c78ea52bbce64071ed5c04c9ffe424dcb38f74171bb7"
 dependencies = [
- "proc-macro2 1.0.70",
- "quote 1.0.33",
- "syn 2.0.39",
+ "proc-macro2 1.0.81",
+ "quote 1.0.36",
+ "syn 2.0.60",
  "wasm-bindgen-backend",
  "wasm-bindgen-shared",
 ]
 
 [[package]]
 name = "wasm-bindgen-shared"
-version = "0.2.89"
+version = "0.2.92"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7ab9b36309365056cd639da3134bf87fa8f3d86008abf99e612384a6eecd459f"
+checksum = "af190c94f2773fdb3729c55b007a722abb5384da03bc0986df4c289bf5567e96"
+
+[[package]]
+name = "webpki-roots"
+version = "0.26.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "b3de34ae270483955a94f4b21bdaaeb83d508bb84a01435f393818edb0012009"
+dependencies = [
+ "rustls-pki-types",
+]
 
 [[package]]
 name = "which"
@@ -2071,11 +2582,11 @@ checksum = "ac3b87c63620426dd9b991e5ce0329eff545bccbbb34f3be09ff6fb6ab51b7b6"
 
 [[package]]
 name = "winapi-util"
-version = "0.1.6"
+version = "0.1.8"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f29e6f9198ba0d26b4c9f07dbe6f9ed633e1f3d5b8b414090084349e46a52596"
+checksum = "4d4cc384e1e73b93bafa6fb4f1df8c41695c8a91cf9c4c64358067d15a7b6c6b"
 dependencies = [
- "winapi",
+ "windows-sys 0.52.0",
 ]
 
 [[package]]
@@ -2085,6 +2596,25 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f"
 
 [[package]]
+name = "windows"
+version = "0.52.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "e48a53791691ab099e5e2ad123536d0fff50652600abaf43bbf952894110d0be"
+dependencies = [
+ "windows-core",
+ "windows-targets 0.52.5",
+]
+
+[[package]]
+name = "windows-core"
+version = "0.52.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "33ab640c8d7e35bf8ba19b884ba838ceb4fba93a4e8c65a9059d08afcfc683d9"
+dependencies = [
+ "windows-targets 0.52.5",
+]
+
+[[package]]
 name = "windows-sys"
 version = "0.48.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -2099,7 +2629,7 @@ version = "0.52.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "282be5f36a8ce781fad8c8ae18fa3f9beff57ec1b52cb3de0789201425d9a33d"
 dependencies = [
- "windows-targets 0.52.0",
+ "windows-targets 0.52.5",
 ]
 
 [[package]]
@@ -2119,17 +2649,18 @@ dependencies = [
 
 [[package]]
 name = "windows-targets"
-version = "0.52.0"
+version = "0.52.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8a18201040b24831fbb9e4eb208f8892e1f50a37feb53cc7ff887feb8f50e7cd"
+checksum = "6f0713a46559409d202e70e28227288446bf7841d3211583a4b53e3f6d96e7eb"
 dependencies = [
- "windows_aarch64_gnullvm 0.52.0",
- "windows_aarch64_msvc 0.52.0",
- "windows_i686_gnu 0.52.0",
- "windows_i686_msvc 0.52.0",
- "windows_x86_64_gnu 0.52.0",
- "windows_x86_64_gnullvm 0.52.0",
- "windows_x86_64_msvc 0.52.0",
+ "windows_aarch64_gnullvm 0.52.5",
+ "windows_aarch64_msvc 0.52.5",
+ "windows_i686_gnu 0.52.5",
+ "windows_i686_gnullvm",
+ "windows_i686_msvc 0.52.5",
+ "windows_x86_64_gnu 0.52.5",
+ "windows_x86_64_gnullvm 0.52.5",
+ "windows_x86_64_msvc 0.52.5",
 ]
 
 [[package]]
@@ -2140,9 +2671,9 @@ checksum = "2b38e32f0abccf9987a4e3079dfb67dcd799fb61361e53e2882c3cbaf0d905d8"
 
 [[package]]
 name = "windows_aarch64_gnullvm"
-version = "0.52.0"
+version = "0.52.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "cb7764e35d4db8a7921e09562a0304bf2f93e0a51bfccee0bd0bb0b666b015ea"
+checksum = "7088eed71e8b8dda258ecc8bac5fb1153c5cffaf2578fc8ff5d61e23578d3263"
 
 [[package]]
 name = "windows_aarch64_msvc"
@@ -2152,9 +2683,9 @@ checksum = "dc35310971f3b2dbbf3f0690a219f40e2d9afcf64f9ab7cc1be722937c26b4bc"
 
 [[package]]
 name = "windows_aarch64_msvc"
-version = "0.52.0"
+version = "0.52.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "bbaa0368d4f1d2aaefc55b6fcfee13f41544ddf36801e793edbbfd7d7df075ef"
+checksum = "9985fd1504e250c615ca5f281c3f7a6da76213ebd5ccc9561496568a2752afb6"
 
 [[package]]
 name = "windows_i686_gnu"
@@ -2164,9 +2695,15 @@ checksum = "a75915e7def60c94dcef72200b9a8e58e5091744960da64ec734a6c6e9b3743e"
 
 [[package]]
 name = "windows_i686_gnu"
-version = "0.52.0"
+version = "0.52.5"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "88ba073cf16d5372720ec942a8ccbf61626074c6d4dd2e745299726ce8b89670"
+
+[[package]]
+name = "windows_i686_gnullvm"
+version = "0.52.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a28637cb1fa3560a16915793afb20081aba2c92ee8af57b4d5f28e4b3e7df313"
+checksum = "87f4261229030a858f36b459e748ae97545d6f1ec60e5e0d6a3d32e0dc232ee9"
 
 [[package]]
 name = "windows_i686_msvc"
@@ -2176,9 +2713,9 @@ checksum = "8f55c233f70c4b27f66c523580f78f1004e8b5a8b659e05a4eb49d4166cca406"
 
 [[package]]
 name = "windows_i686_msvc"
-version = "0.52.0"
+version = "0.52.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ffe5e8e31046ce6230cc7215707b816e339ff4d4d67c65dffa206fd0f7aa7b9a"
+checksum = "db3c2bf3d13d5b658be73463284eaf12830ac9a26a90c717b7f771dfe97487bf"
 
 [[package]]
 name = "windows_x86_64_gnu"
@@ -2188,9 +2725,9 @@ checksum = "53d40abd2583d23e4718fddf1ebec84dbff8381c07cae67ff7768bbf19c6718e"
 
 [[package]]
 name = "windows_x86_64_gnu"
-version = "0.52.0"
+version = "0.52.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3d6fa32db2bc4a2f5abeacf2b69f7992cd09dca97498da74a151a3132c26befd"
+checksum = "4e4246f76bdeff09eb48875a0fd3e2af6aada79d409d33011886d3e1581517d9"
 
 [[package]]
 name = "windows_x86_64_gnullvm"
@@ -2200,9 +2737,9 @@ checksum = "0b7b52767868a23d5bab768e390dc5f5c55825b6d30b86c844ff2dc7414044cc"
 
 [[package]]
 name = "windows_x86_64_gnullvm"
-version = "0.52.0"
+version = "0.52.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1a657e1e9d3f514745a572a6846d3c7aa7dbe1658c056ed9c3344c4109a6949e"
+checksum = "852298e482cd67c356ddd9570386e2862b5673c85bd5f88df9ab6802b334c596"
 
 [[package]]
 name = "windows_x86_64_msvc"
@@ -2212,17 +2749,19 @@ checksum = "ed94fce61571a4006852b7389a063ab983c02eb1bb37b47f8272ce92d06d9538"
 
 [[package]]
 name = "windows_x86_64_msvc"
-version = "0.52.0"
+version = "0.52.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "dff9641d1cd4be8d1a070daf9e3773c5f67e78b4d9d42263020c057706765c04"
+checksum = "bec47e5bfd1bff0eeaf6d8b485cc1074891a197ab4225d504cb7a1ab88b02bf0"
 
 [[package]]
 name = "xattr"
-version = "1.0.1"
+version = "1.3.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f4686009f71ff3e5c4dbcf1a282d0a44db3f021ba69350cd42086b3e5f1c6985"
+checksum = "8da84f1a25939b27f6820d92aed108f83ff920fdf11a7b19366c27c4cda81d4f"
 dependencies = [
  "libc",
+ "linux-raw-sys",
+ "rustix",
 ]
 
 [[package]]
@@ -2232,6 +2771,32 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "213b7324336b53d2414b2db8537e56544d981803139155afa84f76eeebb7a546"
 
 [[package]]
+name = "zerocopy"
+version = "0.7.32"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "74d4d3961e53fa4c9a25a8637fc2bfaf2595b3d3ae34875568a5cf64787716be"
+dependencies = [
+ "zerocopy-derive",
+]
+
+[[package]]
+name = "zerocopy-derive"
+version = "0.7.32"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "9ce1b18ccd8e73a9321186f97e46f9f04b778851177567b1975109d26a08d2a6"
+dependencies = [
+ "proc-macro2 1.0.81",
+ "quote 1.0.36",
+ "syn 2.0.60",
+]
+
+[[package]]
+name = "zeroize"
+version = "1.7.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "525b4ec142c6b68a2d10f01f7bbf6755599ca3f81ea53b8431b7dd348f5fdb2d"
+
+[[package]]
 name = "zstd"
 version = "0.12.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -2252,9 +2817,9 @@ dependencies = [
 
 [[package]]
 name = "zstd-sys"
-version = "2.0.9+zstd.1.5.5"
+version = "2.0.10+zstd.1.5.6"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9e16efa8a874a0481a574084d34cc26fdb3b99627480f785888deb6386506656"
+checksum = "c253a4914af5bafc8fa8c86ee400827e83cf6ec01195ec1f1ed8441bf00d65aa"
 dependencies = [
  "bindgen",
  "cc",
@@ -2262,21 +2827,17 @@ dependencies = [
 ]
 
 [[patch.unused]]
-name = "proxmox-ldap"
-version = "0.2.1"
-
-[[patch.unused]]
-name = "proxmox-metrics"
-version = "0.3.0"
+name = "proxmox-apt"
+version = "0.10.9"
 
 [[patch.unused]]
 name = "proxmox-rest-server"
-version = "0.5.1"
+version = "0.5.2"
 
 [[patch.unused]]
 name = "proxmox-subscription"
-version = "0.4.2"
+version = "0.4.3"
 
 [[patch.unused]]
 name = "proxmox-tfa"
-version = "4.1.0"
+version = "4.1.2"
diff --git a/pkgs/applications/backup/proxmox-backup-client/default.nix b/pkgs/applications/backup/proxmox-backup-client/default.nix
index e074c131e39e..41060b725110 100644
--- a/pkgs/applications/backup/proxmox-backup-client/default.nix
+++ b/pkgs/applications/backup/proxmox-backup-client/default.nix
@@ -2,6 +2,7 @@
 , fetchgit
 , rustPlatform
 , pkg-config
+, pkgconf
 , openssl
 , fuse3
 , libuuid
@@ -18,36 +19,36 @@
 
 let
   pname = "proxmox-backup-client";
-  version = "3.1.2";
+  version = "3.2.2";
 
   proxmox-backup_src = fetchgit {
     url = "git://git.proxmox.com/git/proxmox-backup.git";
     rev = "v${version}";
     name = "proxmox-backup";
-    hash = "sha256-G4wadZelQHlveVhuOpu0FjLvfegoimoxlw3Fe8DhsQA=";
+    hash = "sha256-9rzUGaUoc87VkB4XJUwI0BjuvxdemE6fjTIR7VRp55Y=";
   };
 
   # Same revision as used in
   # https://aur.archlinux.org/cgit/aur.git/tree/PKGBUILD?h=proxmox-backup-client
   proxmox_src = fetchgit {
     url = "git://git.proxmox.com/git/proxmox.git";
-    rev = "50b79198f83659e77b810fe0eedaa79b140744db";
+    rev = "863d7603403405ccbf8e841b875bf3c9a7a76116";
     name = "proxmox";
-    hash = "sha256-ffkOXGqe0xjvvhouzemcQ8qNdmJx70x10ny2uhYAYaI=";
+    hash = "sha256-aSBT0TGhmM7QDux4gDY1k4HQhAMNWvxX+IVIsq6KeuM=";
   };
 
   proxmox-fuse_src = fetchgit {
     url = "git://git.proxmox.com/git/proxmox-fuse.git";
-    rev = "93099f76b6bbbc8a0bbaca9b459a1ce4dc5e0a79";
+    rev = "6faec3a52fcdb0df3ca13fee2977683824d62d01"; # 0.1.7-1
     name = "proxmox-fuse";
-    hash = "sha256-3l0lAZVFQC0MYaqZvB+S+ihb1fTkEgs5i9q463+cbvQ=";
+    hash = "sha256-FwkZ5L7gJr9xZTQkdVHmOP8vnzf+To5Wz2SbIEzGUOY=";
   };
 
   proxmox-pxar_src = fetchgit {
     url = "git://git.proxmox.com/git/pxar.git";
-    rev = "fab647085426dc39c25c137575a3b8fc575c4b78";
+    rev = "675ecff32fbeff0973eaea016c4b8f3877015adb";
     name = "pxar";
-    hash = "sha256-tedQDQUFSGUZCChGcRRJsh7lIozfispLCLeX1OuUc4k=";
+    hash = "sha256-P5fblRCFq7NI1UkP/jkg38bamM1yuJYX+YhCKPgS15Y=";
   };
 
   proxmox-pathpatterns_src = fetchgit {
@@ -57,6 +58,7 @@ let
     hash = "sha256-717XSlvQdvP0Q516fEx04rsrLCk3QI8frTD5NMmkSr4=";
   };
 
+  aurPatchCommit = "12c04aa14ee09cb3dafcbe193da9d36a6809695d";
 in
 
 rustPlatform.buildRustPackage {
@@ -80,15 +82,15 @@ rustPlatform.buildRustPackage {
     # works in combination with the other three repos being checked out.
     (fetchpatch {
       name = "0001-re-route-dependencies-not-available-on-crates.io-to-.patch";
-      url = "https://aur.archlinux.org/cgit/aur.git/plain/0001-re-route-dependencies-not-available-on-crates.io-to-.patch?h=proxmox-backup-client&id=33ef762d3b3a8a0300117efada8d957f6d0cfa07";
-      hash = "sha256-hBct1NVFum7WG0sgdE7DdvjfnC6KPlLG9r4syxgYKWA=";
+      url = "https://aur.archlinux.org/cgit/aur.git/plain/0001-re-route-dependencies-not-available-on-crates.io-to-.patch?h=proxmox-backup-client&id=${aurPatchCommit}";
+      hash = "sha256-YOlC8A1FKIbNY9+q6n/gDV0efHx2i3kwsmIdZcYhf80=";
     })
     # This patch prevents the generation of the man-pages for other components inside the repo,
     # which would require them too be built too. Thus avoid wasting resources and just skip them.
     (fetchpatch {
       name = "0002-docs-drop-all-but-client-man-pages.patch";
-      url = "https://aur.archlinux.org/cgit/aur.git/plain/0002-docs-drop-all-but-client-man-pages.patch?h=proxmox-backup-client&id=33ef762d3b3a8a0300117efada8d957f6d0cfa07";
-      hash = "sha256-DvWm18udvOpcma0V3JY06Lhn+h0BDPhNqrNOyrgpvWk=";
+      url = "https://aur.archlinux.org/cgit/aur.git/plain/0002-docs-drop-all-but-client-man-pages.patch?h=proxmox-backup-client&id=${aurPatchCommit}";
+      hash = "sha256-vUGDBx+g05ipL+boY9DaWDAMmstY1IDZs5nILbCIBLY=";
     })
     # `make docs` assumes that the binaries are located under `target/{debug,release}`, but due
     # to how `buildRustPackage` works, they get put under `target/$RUSTC_TARGET/{debug,release}`.
@@ -135,7 +137,7 @@ rustPlatform.buildRustPackage {
 
   doCheck = false;
 
-  nativeBuildInputs = [ git pkg-config rustPlatform.bindgenHook installShellFiles sphinx ];
+  nativeBuildInputs = [ git pkg-config pkgconf rustPlatform.bindgenHook installShellFiles sphinx ];
   buildInputs = [ openssl fuse3 libuuid acl libxcrypt ];
 
   passthru.tests.version = testers.testVersion {
diff --git a/pkgs/applications/backup/timeshift/wrapper.nix b/pkgs/applications/backup/timeshift/wrapper.nix
index e72052fda1ba..84b3f14ac2ff 100644
--- a/pkgs/applications/backup/timeshift/wrapper.nix
+++ b/pkgs/applications/backup/timeshift/wrapper.nix
@@ -1,6 +1,6 @@
 { stdenvNoCC
 , lib
-, wrapGAppsHook
+, wrapGAppsHook3
 , gdk-pixbuf
 , librsvg
 , xorg
@@ -16,7 +16,7 @@ stdenvNoCC.mkDerivation {
 
   nativeBuildInputs = [
     xorg.lndir
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   installPhase = ''
diff --git a/pkgs/applications/blockchains/bitcoin-abc/default.nix b/pkgs/applications/blockchains/bitcoin-abc/default.nix
index 948645d60006..7a41062d6bf1 100644
--- a/pkgs/applications/blockchains/bitcoin-abc/default.nix
+++ b/pkgs/applications/blockchains/bitcoin-abc/default.nix
@@ -25,13 +25,13 @@
 
 mkDerivation rec {
   pname = "bitcoin" + lib.optionalString (!withGui) "d" + "-abc";
-  version = "0.29.3";
+  version = "0.29.4";
 
   src = fetchFromGitHub {
     owner = "bitcoin-ABC";
     repo = "bitcoin-abc";
     rev = "v${version}";
-    hash = "sha256-hYA0O7nDT8J1EnpW4i1+eBzkNw77JC6M7GwO3BdBh3U=";
+    hash = "sha256-RT9sdwwF39arW2AnoQ9KnRzYqhnQhpjWU1eykTiKWSo=";
   };
 
   nativeBuildInputs = [ pkg-config cmake ];
diff --git a/pkgs/applications/blockchains/bitcoin-knots/default.nix b/pkgs/applications/blockchains/bitcoin-knots/default.nix
index ace8329bb876..181c14ecd7a9 100644
--- a/pkgs/applications/blockchains/bitcoin-knots/default.nix
+++ b/pkgs/applications/blockchains/bitcoin-knots/default.nix
@@ -25,11 +25,11 @@
 
 stdenv.mkDerivation rec {
   pname = if withGui then "bitcoin-knots" else "bitcoind-knots";
-  version = "25.1.knots20231115";
+  version = "26.1.knots20240325";
 
   src = fetchurl {
-    url = "https://bitcoinknots.org/files/25.x/${version}/bitcoin-${version}.tar.gz";
-    sha256 = "b6251beee95cf6701c6ebc443b47fb0e99884880f2661397f964a8828add4002";
+    url = "https://bitcoinknots.org/files/26.x/${version}/bitcoin-${version}.tar.gz";
+    hash = "sha256-PqpePDna2gpCzF2K43N4h6cV5Y9w/e5ZcUvaNEaFaIk=";
   };
 
   nativeBuildInputs =
@@ -40,7 +40,8 @@ stdenv.mkDerivation rec {
     ++ lib.optionals withGui [ wrapQtAppsHook ];
 
   buildInputs = [ boost libevent miniupnpc zeromq zlib ]
-    ++ lib.optionals withWallet [ db48 sqlite ]
+    ++ lib.optionals withWallet [ sqlite ]
+    ++ lib.optionals (withWallet && !stdenv.isDarwin) [ db48 ]
     ++ lib.optionals withGui [ qrencode qtbase qttools ];
 
   configureFlags = [
diff --git a/pkgs/applications/blockchains/bitcoin/default.nix b/pkgs/applications/blockchains/bitcoin/default.nix
index aaa3564890f2..7385d4bd9c45 100644
--- a/pkgs/applications/blockchains/bitcoin/default.nix
+++ b/pkgs/applications/blockchains/bitcoin/default.nix
@@ -13,6 +13,7 @@
 , miniupnpc
 , zeromq
 , zlib
+, db48
 , sqlite
 , qrencode
 , qtbase ? null
@@ -51,6 +52,8 @@ stdenv.mkDerivation rec {
 
   buildInputs = [ boost libevent miniupnpc zeromq zlib ]
     ++ lib.optionals withWallet [ sqlite ]
+    # building with db48 (for legacy descriptor wallet support) is broken on Darwin
+    ++ lib.optionals (withWallet && !stdenv.isDarwin) [ db48 ]
     ++ lib.optionals withGui [ qrencode qtbase qttools ];
 
   postInstall = ''
diff --git a/pkgs/applications/blockchains/clboss/default.nix b/pkgs/applications/blockchains/clboss/default.nix
index 0cad0ed2ae54..da6e5b41aae1 100644
--- a/pkgs/applications/blockchains/clboss/default.nix
+++ b/pkgs/applications/blockchains/clboss/default.nix
@@ -11,13 +11,13 @@
 
 stdenv.mkDerivation rec {
   pname = "clboss";
-  version = "0.13";
+  version = "0.13.1";
 
   src = fetchFromGitHub {
     owner = "ZmnSCPxj";
     repo = "clboss";
     rev = "v${version}";
-    hash = "sha256-NP9blymdqDXo/OtGLQg/MXK24PpPvCrzqXRdtfCvpfI=";
+    hash = "sha256-DQvcf+y73QQYQanEvbOCOgwQzvNOXS1ZY+hVvS6N+G0=";
   };
 
   nativeBuildInputs = [ autoconf-archive autoreconfHook pkg-config libev curlWithGnuTls sqlite ];
diff --git a/pkgs/applications/blockchains/erigon/default.nix b/pkgs/applications/blockchains/erigon/default.nix
index a0e11018f828..4e22796cd6d1 100644
--- a/pkgs/applications/blockchains/erigon/default.nix
+++ b/pkgs/applications/blockchains/erigon/default.nix
@@ -2,7 +2,7 @@
 
 let
   pname = "erigon";
-  version = "2.59.3";
+  version = "2.60.0";
 in
 buildGoModule {
   inherit pname version;
@@ -11,11 +11,11 @@ buildGoModule {
     owner = "ledgerwatch";
     repo = pname;
     rev = "v${version}";
-    hash = "sha256-pkcT9KFX4rz6WXUm9cG+6x9k+jGmLPGgl/4VnS7TNVE=";
+    hash = "sha256-c0CArubKvdh9xcvBM15O4vGwAsSHzaINtoKd0XczJHU=";
     fetchSubmodules = true;
   };
 
-  vendorHash = "sha256-B3xbCI0szSAo9ULHDiqoTTR8tvgZUry7spDGuldu0lU=";
+  vendorHash = "sha256-38NmSSK3a70WvhZAZ529wdAMlEuk8/4YqtadoLOn1IY=";
   proxyVendor = true;
 
   # Build errors in mdbx when format hardening is enabled:
diff --git a/pkgs/applications/blockchains/exodus/default.nix b/pkgs/applications/blockchains/exodus/default.nix
index b6f2539b02da..5e13ece9a51e 100644
--- a/pkgs/applications/blockchains/exodus/default.nix
+++ b/pkgs/applications/blockchains/exodus/default.nix
@@ -27,13 +27,13 @@
 
 stdenv.mkDerivation (finalAttrs: {
   pname = "exodus";
-  version = "24.17.5";
+  version = "24.19.4";
 
   src = fetchurl {
     name = "exodus-linux-x64-${finalAttrs.version}.zip";
     url = "https://downloads.exodus.com/releases/exodus-linux-x64-${finalAttrs.version}.zip";
     curlOptsList = [ "--user-agent" "Mozilla/5.0" ];
-    hash = "sha256-HlyscqoxGucoQoFgSWN3vEjAnkdAmtBLOhjhWbScPFc=";
+    hash = "sha256-+g7DdDrSVmBl1wCSCoJcO2gmbWQBnJUYqjT+GuDlCYw=";
   };
 
   nativeBuildInputs = [ unzip ];
diff --git a/pkgs/applications/blockchains/ledger-live-desktop/default.nix b/pkgs/applications/blockchains/ledger-live-desktop/default.nix
index d49902c9d5ac..462ae649510a 100644
--- a/pkgs/applications/blockchains/ledger-live-desktop/default.nix
+++ b/pkgs/applications/blockchains/ledger-live-desktop/default.nix
@@ -1,12 +1,12 @@
-{ lib, fetchurl, appimageTools, imagemagick }:
+{ lib, fetchurl, appimageTools, makeWrapper, imagemagick }:
 
 let
   pname = "ledger-live-desktop";
-  version = "2.77.2";
+  version = "2.80.0";
 
   src = fetchurl {
     url = "https://download.live.ledger.com/${pname}-${version}-linux-x86_64.AppImage";
-    hash = "sha256-orIyfRs6TJgqGGLpl2tvoUtejsB0ni8xRK0SboP2LHw=";
+    hash = "sha256-mtvLrA2wQM1om9En16/4AQFeddcRDoEyOwrefo5tOkk=";
   };
 
   appimageContents = appimageTools.extractType2 {
@@ -22,6 +22,10 @@ appimageTools.wrapType2 rec {
     ${imagemagick}/bin/convert ${appimageContents}/ledger-live-desktop.png -resize 512x512 ledger-live-desktop_512.png
     install -m 444 -D ledger-live-desktop_512.png $out/share/icons/hicolor/512x512/apps/ledger-live-desktop.png
 
+    source "${makeWrapper}/nix-support/setup-hook"
+    wrapProgram "$out/bin/${pname}" \
+       --add-flags "\''${NIXOS_OZONE_WL:+\''${WAYLAND_DISPLAY:+--ozone-platform=wayland --enable-features=WaylandWindowDecorations --enable-wayland-ime}}"
+
     substituteInPlace $out/share/applications/ledger-live-desktop.desktop \
       --replace 'Exec=AppRun' 'Exec=${pname}'
   '';
diff --git a/pkgs/applications/blockchains/lnd/default.nix b/pkgs/applications/blockchains/lnd/default.nix
index 077ff6b11f45..d4eef345eb77 100644
--- a/pkgs/applications/blockchains/lnd/default.nix
+++ b/pkgs/applications/blockchains/lnd/default.nix
@@ -1,6 +1,7 @@
 { buildGoModule
 , fetchFromGitHub
 , lib
+, go
 , tags ? [ "autopilotrpc" "signrpc" "walletrpc" "chainrpc" "invoicesrpc" "watchtowerrpc" "routerrpc" "monitoring" "kvdb_postgres" "kvdb_etcd" ]
 }:
 
@@ -19,17 +20,7 @@ buildGoModule rec {
 
   subPackages = [ "cmd/lncli" "cmd/lnd" ];
 
-  preBuild = let
-    buildVars = {
-      RawTags = lib.concatStringsSep "," tags;
-      GoVersion = "$(go version | egrep -o 'go[0-9]+[.][^ ]*')";
-    };
-    buildVarsFlags = lib.concatStringsSep " " (lib.mapAttrsToList (k: v: "-X github.com/lightningnetwork/lnd/build.${k}=${v}") buildVars);
-  in
-  lib.optionalString (tags != []) ''
-    buildFlagsArray+=("-tags=${lib.concatStringsSep " " tags}")
-    buildFlagsArray+=("-ldflags=${buildVarsFlags}")
-  '';
+  inherit tags;
 
   meta = with lib; {
     description = "Lightning Network Daemon";
diff --git a/pkgs/applications/blockchains/miniscript/default.nix b/pkgs/applications/blockchains/miniscript/default.nix
index acdcd108c607..84b1b55f6618 100644
--- a/pkgs/applications/blockchains/miniscript/default.nix
+++ b/pkgs/applications/blockchains/miniscript/default.nix
@@ -1,16 +1,31 @@
-{ stdenv, lib, fetchFromGitHub }:
+{
+  stdenv,
+  lib,
+  fetchFromGitHub,
+}:
 
 stdenv.mkDerivation rec {
   pname = "miniscript";
-  version = "unstable-2022-07-19";
+  version = "unstable-2023-03-16";
 
   src = fetchFromGitHub {
     owner = "sipa";
     repo = pname;
-    rev = "ca675488c4aa9605f6ae70c0e68a148a6fb277b4";
-    sha256 = "sha256-kzLIJ0os6UnC0RPEybfw6wGrZpgmRCgj3zifmZjieoU=";
+    rev = "6806dfb15a1fafabf7dd28aae3c9d2bc49db01f1";
+    sha256 = "sha256-qkYDzsl2Y4WEDDXs9cE/jIXm01jclkYUQbDGe1S0wYs=";
   };
 
+    postPatch = lib.optionalString stdenv.isDarwin ''
+    # Replace hardcoded g++ with c++ so clang can be used
+    # on darwin
+    #
+    # lto must be disabled on darwin as well due to
+    # https://github.com/NixOS/nixpkgs/issues/19098
+    substituteInPlace Makefile \
+        --replace-fail 'g++' 'c++' \
+        --replace-fail '-flto' ""
+  '';
+
   installPhase = ''
     runHook preInstall
     mkdir -p $out/bin
@@ -19,12 +34,14 @@ stdenv.mkDerivation rec {
   '';
 
   meta = with lib; {
-    description     = "Compiler and inspector for the miniscript Bitcoin policy language";
+    description = "Compiler and inspector for the miniscript Bitcoin policy language";
     longDescription = "Miniscript is a language for writing (a subset of) Bitcoin Scripts in a structured way, enabling analysis, composition, generic signing and more.";
-    homepage        = "https://bitcoin.sipa.be/miniscript/";
-    license         = licenses.mit;
-    platforms       = platforms.linux;
-    maintainers     = with maintainers; [ RaghavSood jb55 ];
+    homepage = "https://bitcoin.sipa.be/miniscript/";
+    license = licenses.mit;
+    maintainers = with maintainers; [
+      RaghavSood
+      jb55
+    ];
     mainProgram = "miniscript";
   };
 }
diff --git a/pkgs/applications/blockchains/mycrypto/default.nix b/pkgs/applications/blockchains/mycrypto/default.nix
index 607ecf23c362..0e4de3af6ba7 100644
--- a/pkgs/applications/blockchains/mycrypto/default.nix
+++ b/pkgs/applications/blockchains/mycrypto/default.nix
@@ -1,5 +1,4 @@
-{ lib, appimageTools, fetchurl, makeDesktopItem
-}:
+{ lib, appimageTools, fetchurl, makeDesktopItem }:
 
 let
   pname = "MyCrypto";
@@ -24,12 +23,9 @@ let
     categories = [ "Finance" ];
   };
 
-in appimageTools.wrapType2 rec {
+in appimageTools.wrapType2 {
   inherit pname version src;
 
-  multiArch = false; # no p32bit needed
-  extraPkgs = appimageTools.defaultFhsEnvArgs.multiPkgs;
-
   extraInstallCommands = ''
     mkdir -p $out/share
     cp -rt $out/share ${desktopItem}/share/applications ${appimageContents}/usr/share/icons
diff --git a/pkgs/applications/blockchains/openethereum/Cargo.lock b/pkgs/applications/blockchains/openethereum/Cargo.lock
deleted file mode 100644
index 5f88af6338e7..000000000000
--- a/pkgs/applications/blockchains/openethereum/Cargo.lock
+++ /dev/null
@@ -1,5476 +0,0 @@
-# This file is automatically @generated by Cargo.
-# It is not intended for manual editing.
-version = 3
-
-[[package]]
-name = "addr2line"
-version = "0.14.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a55f82cfe485775d02112886f4169bde0c5894d75e79ead7eafe7e40a25e45f7"
-dependencies = [
- "gimli",
-]
-
-[[package]]
-name = "adler"
-version = "1.0.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f26201604c87b1e01bd3d98f8d5d9a8fcbb815e8cedb41ffccbeb4bf593a35fe"
-
-[[package]]
-name = "adler32"
-version = "1.2.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "aae1277d39aeec15cb388266ecc24b11c80469deae6067e17a1a7aa9e5c1f234"
-
-[[package]]
-name = "aes"
-version = "0.3.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "54eb1d8fe354e5fc611daf4f2ea97dd45a765f4f1e4512306ec183ae2e8f20c9"
-dependencies = [
- "aes-soft",
- "aesni",
- "block-cipher-trait",
-]
-
-[[package]]
-name = "aes-ctr"
-version = "0.3.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d2e5b0458ea3beae0d1d8c0f3946564f8e10f90646cf78c06b4351052058d1ee"
-dependencies = [
- "aes-soft",
- "aesni",
- "ctr",
- "stream-cipher",
-]
-
-[[package]]
-name = "aes-soft"
-version = "0.3.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "cfd7e7ae3f9a1fb5c03b389fc6bb9a51400d0c13053f0dca698c832bfd893a0d"
-dependencies = [
- "block-cipher-trait",
- "byteorder",
- "opaque-debug",
-]
-
-[[package]]
-name = "aesni"
-version = "0.6.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2f70a6b5f971e473091ab7cfb5ffac6cde81666c4556751d8d5620ead8abf100"
-dependencies = [
- "block-cipher-trait",
- "opaque-debug",
- "stream-cipher",
-]
-
-[[package]]
-name = "ahash"
-version = "0.2.19"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "29661b60bec623f0586702976ff4d0c9942dcb6723161c2df0eea78455cfedfb"
-dependencies = [
- "const-random",
-]
-
-[[package]]
-name = "ahash"
-version = "0.3.8"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e8fd72866655d1904d6b0997d0b07ba561047d070fbe29de039031c641b61217"
-
-[[package]]
-name = "aho-corasick"
-version = "0.6.10"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "81ce3d38065e618af2d7b77e10c5ad9a069859b4be3c2250f674af3840d9c8a5"
-dependencies = [
- "memchr",
-]
-
-[[package]]
-name = "aho-corasick"
-version = "0.7.6"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "58fb5e95d83b38284460a5fda7d6470aa0b8844d283a0b614b8535e880800d2d"
-dependencies = [
- "memchr",
-]
-
-[[package]]
-name = "ansi_term"
-version = "0.10.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6b3568b48b7cefa6b8ce125f9bb4989e52fbcc29ebea88df04cc7c5f12f70455"
-
-[[package]]
-name = "ansi_term"
-version = "0.11.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ee49baf6cb617b853aa8d93bf420db2383fab46d314482ca2803b40d5fde979b"
-dependencies = [
- "winapi 0.3.8",
-]
-
-[[package]]
-name = "app_dirs"
-version = "1.2.1"
-source = "git+https://github.com/openethereum/app-dirs-rs#0b37f9481ce29e9d5174ad185bca695b206368eb"
-dependencies = [
- "ole32-sys",
- "shell32-sys",
- "winapi 0.2.8",
- "xdg",
-]
-
-[[package]]
-name = "arrayvec"
-version = "0.4.12"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "cd9fd44efafa8690358b7408d253adf110036b88f55672a933f01d616ad9b1b9"
-dependencies = [
- "nodrop",
-]
-
-[[package]]
-name = "arrayvec"
-version = "0.5.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "cff77d8686867eceff3105329d4698d96c2391c176d5d03adc90c7389162b5b8"
-
-[[package]]
-name = "assert_matches"
-version = "1.3.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7deb0a829ca7bcfaf5da70b073a8d128619259a7be8216a355e23f00763059e5"
-
-[[package]]
-name = "atty"
-version = "0.2.13"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1803c647a3ec87095e7ae7acfca019e98de5ec9a7d01343f611cf3152ed71a90"
-dependencies = [
- "libc",
- "winapi 0.3.8",
-]
-
-[[package]]
-name = "autocfg"
-version = "0.1.7"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1d49d90015b3c36167a20fe2810c5cd875ad504b39cff3d4eae7977e6b7c1cb2"
-
-[[package]]
-name = "autocfg"
-version = "1.0.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f8aac770f1885fd7e387acedd76065302551364496e46b3dd00860b2f8359b9d"
-
-[[package]]
-name = "backtrace"
-version = "0.3.56"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9d117600f438b1707d4e4ae15d3595657288f8235a0eb593e80ecc98ab34e1bc"
-dependencies = [
- "addr2line",
- "cfg-if 1.0.0",
- "libc",
- "miniz_oxide",
- "object",
- "rustc-demangle",
-]
-
-[[package]]
-name = "base64"
-version = "0.9.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "489d6c0ed21b11d038c31b6ceccca973e65d73ba3bd8ecb9a2babf5546164643"
-dependencies = [
- "byteorder",
- "safemem",
-]
-
-[[package]]
-name = "base64"
-version = "0.10.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0b25d992356d2eb0ed82172f5248873db5560c4721f564b13cb5193bda5e668e"
-dependencies = [
- "byteorder",
-]
-
-[[package]]
-name = "beef"
-version = "0.5.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "bed554bd50246729a1ec158d08aa3235d1b69d94ad120ebe187e28894787e736"
-
-[[package]]
-name = "bit-set"
-version = "0.4.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d9bf6104718e80d7b26a68fdbacff3481cfc05df670821affc7e9cbc1884400c"
-dependencies = [
- "bit-vec",
-]
-
-[[package]]
-name = "bit-vec"
-version = "0.4.4"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "02b4ff8b16e6076c3e14220b39fbc1fabb6737522281a388998046859400895f"
-
-[[package]]
-name = "bitflags"
-version = "0.7.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "aad18937a628ec6abcd26d1489012cc0e18c21798210f491af69ded9b881106d"
-
-[[package]]
-name = "bitflags"
-version = "1.2.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "cf1de2fe8c75bc145a2f577add951f8134889b4795d47466a54a5c846d691693"
-
-[[package]]
-name = "bitvec"
-version = "0.17.4"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "41262f11d771fd4a61aa3ce019fca363b4b6c282fca9da2a31186d3965a47a5c"
-dependencies = [
- "either",
- "radium",
-]
-
-[[package]]
-name = "block-buffer"
-version = "0.7.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c0940dc441f31689269e10ac70eb1002a3a1d3ad1390e030043662eb7fe4688b"
-dependencies = [
- "block-padding",
- "byte-tools",
- "byteorder",
- "generic-array",
-]
-
-[[package]]
-name = "block-cipher-trait"
-version = "0.6.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1c924d49bd09e7c06003acda26cd9742e796e34282ec6c1189404dee0c1f4774"
-dependencies = [
- "generic-array",
-]
-
-[[package]]
-name = "block-modes"
-version = "0.3.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "31aa8410095e39fdb732909fb5730a48d5bd7c2e3cd76bd1b07b3dbea130c529"
-dependencies = [
- "block-cipher-trait",
- "block-padding",
-]
-
-[[package]]
-name = "block-padding"
-version = "0.1.4"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6d4dc3af3ee2e12f3e5d224e5e1e3d73668abbeb69e566d361f7d5563a4fdf09"
-dependencies = [
- "byte-tools",
-]
-
-[[package]]
-name = "blooms-db"
-version = "0.1.0"
-dependencies = [
- "byteorder",
- "criterion 0.3.0",
- "ethbloom 0.9.2",
- "parking_lot 0.11.1",
- "tempdir",
- "tiny-keccak 1.5.0",
-]
-
-[[package]]
-name = "bn"
-version = "0.4.4"
-source = "git+https://github.com/paritytech/bn#6079255e65793038b9a6e5292203eab482737cc2"
-dependencies = [
- "byteorder",
- "crunchy 0.2.2",
- "lazy_static",
- "rand 0.5.6",
- "rustc-hex 2.1.0",
-]
-
-[[package]]
-name = "bstr"
-version = "0.2.8"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8d6c2c5b58ab920a4f5aeaaca34b4488074e8cc7596af94e6f8c6ff247c60245"
-dependencies = [
- "lazy_static",
- "memchr",
- "regex-automata",
- "serde",
-]
-
-[[package]]
-name = "build_const"
-version = "0.2.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "39092a32794787acd8525ee150305ff051b0aa6cc2abaf193924f5ab05425f39"
-
-[[package]]
-name = "byte-slice-cast"
-version = "0.3.5"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b0a5e3906bcbf133e33c1d4d95afc664ad37fbdb9f6568d8043e7ea8c27d93d3"
-
-[[package]]
-name = "byte-tools"
-version = "0.3.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e3b5ca7a04898ad4bcd41c90c5285445ff5b791899bb1b0abdd2a2aa791211d7"
-
-[[package]]
-name = "byteorder"
-version = "1.3.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a7c3dd8985a7111efc5c80b44e23ecdd8c007de8ade3b96595387e812b957cf5"
-
-[[package]]
-name = "bytes"
-version = "0.4.12"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "206fdffcfa2df7cbe15601ef46c813fce0965eb3286db6b56c583b814b51c81c"
-dependencies = [
- "byteorder",
- "either",
- "iovec",
-]
-
-[[package]]
-name = "c2-chacha"
-version = "0.2.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "214238caa1bf3a496ec3392968969cab8549f96ff30652c9e56885329315f6bb"
-dependencies = [
- "ppv-lite86",
-]
-
-[[package]]
-name = "cast"
-version = "0.2.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "926013f2860c46252efceabb19f4a6b308197505082c609025aa6706c011d427"
-
-[[package]]
-name = "cc"
-version = "1.0.41"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8dae9c4b8fedcae85592ba623c4fd08cfdab3e3b72d6df780c6ead964a69bfff"
-
-[[package]]
-name = "cfg-if"
-version = "0.1.10"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4785bdd1c96b2a846b2bd7cc02e86b6b3dbf14e7e53446c4f54c92a361040822"
-
-[[package]]
-name = "cfg-if"
-version = "1.0.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd"
-
-[[package]]
-name = "chainspec"
-version = "0.1.0"
-dependencies = [
- "ethjson",
- "serde_json",
-]
-
-[[package]]
-name = "chrono"
-version = "0.4.9"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e8493056968583b0193c1bb04d6f7684586f3726992d6c573261941a895dbd68"
-dependencies = [
- "libc",
- "num-integer",
- "num-traits 0.2.8",
- "time",
-]
-
-[[package]]
-name = "clap"
-version = "2.33.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5067f5bb2d80ef5d68b4c87db81601f0b75bca627bc2ef76b141d7b846a3c6d9"
-dependencies = [
- "ansi_term 0.11.0",
- "atty",
- "bitflags 1.2.1",
- "strsim 0.8.0",
- "textwrap 0.11.0",
- "unicode-width",
- "vec_map",
-]
-
-[[package]]
-name = "cli-signer"
-version = "1.4.0"
-dependencies = [
- "ethereum-types 0.9.2",
- "futures",
- "parity-rpc",
- "parity-rpc-client",
- "rpassword",
-]
-
-[[package]]
-name = "cloudabi"
-version = "0.0.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ddfc5b9aa5d4507acaf872de71051dfd0e309860e88966e1051e462a077aac4f"
-dependencies = [
- "bitflags 1.2.1",
-]
-
-[[package]]
-name = "cmake"
-version = "0.1.42"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "81fb25b677f8bf1eb325017cb6bb8452f87969db0fedb4f757b297bee78a7c62"
-dependencies = [
- "cc",
-]
-
-[[package]]
-name = "common-types"
-version = "0.1.0"
-dependencies = [
- "ethereum-types 0.9.2",
- "ethkey",
- "hex",
- "inflate",
- "keccak-hash",
- "parity-bytes",
- "parity-crypto",
- "parity-util-mem",
- "rlp",
- "rlp_derive",
- "rustc-hex 1.0.0",
- "serde",
- "serde_json",
- "serde_repr",
- "unexpected",
-]
-
-[[package]]
-name = "const-random"
-version = "0.1.13"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f590d95d011aa80b063ffe3253422ed5aa462af4e9867d43ce8337562bac77c4"
-dependencies = [
- "const-random-macro",
- "proc-macro-hack",
-]
-
-[[package]]
-name = "const-random-macro"
-version = "0.1.13"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "615f6e27d000a2bffbc7f2f6a8669179378fa27ee4d0a509e985dfc0a7defb40"
-dependencies = [
- "getrandom 0.2.2",
- "lazy_static",
- "proc-macro-hack",
- "tiny-keccak 2.0.2",
-]
-
-[[package]]
-name = "crc"
-version = "1.8.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d663548de7f5cca343f1e0a48d14dcfb0e9eb4e079ec58883b7251539fa10aeb"
-dependencies = [
- "build_const",
-]
-
-[[package]]
-name = "criterion"
-version = "0.2.11"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0363053954f3e679645fc443321ca128b7b950a6fe288cf5f9335cc22ee58394"
-dependencies = [
- "atty",
- "cast",
- "clap",
- "criterion-plot 0.3.1",
- "csv",
- "itertools 0.8.1",
- "lazy_static",
- "libc",
- "num-traits 0.2.8",
- "rand_core 0.3.1",
- "rand_os 0.1.3",
- "rand_xoshiro 0.1.0",
- "rayon",
- "rayon-core",
- "serde",
- "serde_derive",
- "serde_json",
- "tinytemplate",
- "walkdir",
-]
-
-[[package]]
-name = "criterion"
-version = "0.3.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "938703e165481c8d612ea3479ac8342e5615185db37765162e762ec3523e2fc6"
-dependencies = [
- "atty",
- "cast",
- "clap",
- "criterion-plot 0.4.0",
- "csv",
- "itertools 0.8.1",
- "lazy_static",
- "num-traits 0.2.8",
- "rand_core 0.5.1",
- "rand_os 0.2.2",
- "rand_xoshiro 0.3.1",
- "rayon",
- "serde",
- "serde_derive",
- "serde_json",
- "tinytemplate",
- "walkdir",
-]
-
-[[package]]
-name = "criterion-plot"
-version = "0.3.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "76f9212ddf2f4a9eb2d401635190600656a1f88a932ef53d06e7fa4c7e02fb8e"
-dependencies = [
- "byteorder",
- "cast",
- "itertools 0.8.1",
-]
-
-[[package]]
-name = "criterion-plot"
-version = "0.4.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "eccdc6ce8bbe352ca89025bee672aa6d24f4eb8c53e3a8b5d1bc58011da072a2"
-dependencies = [
- "cast",
- "itertools 0.8.1",
-]
-
-[[package]]
-name = "crossbeam-channel"
-version = "0.5.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e54ea8bc3fb1ee042f5aace6e3c6e025d3874866da222930f70ce62aceba0bfa"
-dependencies = [
- "cfg-if 1.0.0",
- "crossbeam-utils 0.8.6",
-]
-
-[[package]]
-name = "crossbeam-deque"
-version = "0.6.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "05e44b8cf3e1a625844d1750e1f7820da46044ff6d28f4d43e455ba3e5bb2c13"
-dependencies = [
- "crossbeam-epoch",
- "crossbeam-utils 0.6.6",
-]
-
-[[package]]
-name = "crossbeam-deque"
-version = "0.7.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b18cd2e169ad86297e6bc0ad9aa679aee9daa4f19e8163860faf7c164e4f5a71"
-dependencies = [
- "crossbeam-epoch",
- "crossbeam-utils 0.6.6",
-]
-
-[[package]]
-name = "crossbeam-epoch"
-version = "0.7.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "fedcd6772e37f3da2a9af9bf12ebe046c0dfe657992377b4df982a2b54cd37a9"
-dependencies = [
- "arrayvec 0.4.12",
- "cfg-if 0.1.10",
- "crossbeam-utils 0.6.6",
- "lazy_static",
- "memoffset",
- "scopeguard 1.1.0",
-]
-
-[[package]]
-name = "crossbeam-queue"
-version = "0.1.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7c979cd6cfe72335896575c6b5688da489e420d36a27a0b9eb0c73db574b4a4b"
-dependencies = [
- "crossbeam-utils 0.6.6",
-]
-
-[[package]]
-name = "crossbeam-queue"
-version = "0.2.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "774ba60a54c213d409d5353bda12d49cd68d14e45036a285234c8d6f91f92570"
-dependencies = [
- "cfg-if 0.1.10",
- "crossbeam-utils 0.7.2",
- "maybe-uninit",
-]
-
-[[package]]
-name = "crossbeam-utils"
-version = "0.6.6"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "04973fa96e96579258a5091af6003abde64af786b860f18622b82e026cca60e6"
-dependencies = [
- "cfg-if 0.1.10",
- "lazy_static",
-]
-
-[[package]]
-name = "crossbeam-utils"
-version = "0.7.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c3c7c73a2d1e9fc0886a08b93e98eb643461230d5f1925e4036204d5f2e261a8"
-dependencies = [
- "autocfg 1.0.0",
- "cfg-if 0.1.10",
- "lazy_static",
-]
-
-[[package]]
-name = "crossbeam-utils"
-version = "0.8.6"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "cfcae03edb34f947e64acdb1c33ec169824e20657e9ecb61cef6c8c74dcb8120"
-dependencies = [
- "cfg-if 1.0.0",
- "lazy_static",
-]
-
-[[package]]
-name = "crunchy"
-version = "0.1.6"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a2f4a431c5c9f662e1200b7c7f02c34e91361150e382089a8f2dec3ba680cbda"
-
-[[package]]
-name = "crunchy"
-version = "0.2.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7a81dae078cea95a014a339291cec439d2f232ebe854a9d672b796c6afafa9b7"
-
-[[package]]
-name = "crypto-mac"
-version = "0.7.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4434400df11d95d556bac068ddfedd482915eb18fe8bea89bc80b6e4b1c179e5"
-dependencies = [
- "generic-array",
- "subtle 1.0.0",
-]
-
-[[package]]
-name = "csv"
-version = "1.1.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "37519ccdfd73a75821cac9319d4fce15a81b9fcf75f951df5b9988aa3a0af87d"
-dependencies = [
- "bstr",
- "csv-core",
- "itoa",
- "ryu",
- "serde",
-]
-
-[[package]]
-name = "csv-core"
-version = "0.1.6"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9b5cadb6b25c77aeff80ba701712494213f4a8418fcda2ee11b6560c3ad0bf4c"
-dependencies = [
- "memchr",
-]
-
-[[package]]
-name = "ct-logs"
-version = "0.5.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1b4660f8b07a560a88c02d76286edb9f0d5d64e495d2b0f233186155aa51be1f"
-dependencies = [
- "sct",
-]
-
-[[package]]
-name = "ctr"
-version = "0.3.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "022cd691704491df67d25d006fe8eca083098253c4d43516c2206479c58c6736"
-dependencies = [
- "block-cipher-trait",
- "stream-cipher",
-]
-
-[[package]]
-name = "ctrlc"
-version = "1.1.1"
-source = "git+https://github.com/paritytech/rust-ctrlc.git#b523017108bb2d571a7a69bd97bc406e63bc7a9d"
-dependencies = [
- "kernel32-sys",
- "libc",
- "winapi 0.2.8",
-]
-
-[[package]]
-name = "derive_more"
-version = "0.99.9"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "298998b1cf6b5b2c8a7b023dfd45821825ce3ba8a8af55c921a0e734e4653f76"
-dependencies = [
- "proc-macro2 1.0.36",
- "quote 1.0.7",
- "syn 1.0.86",
-]
-
-[[package]]
-name = "difference"
-version = "1.0.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b3304d19798a8e067e48d8e69b2c37f0b5e9b4e462504ad9e27e9f3fce02bba8"
-
-[[package]]
-name = "digest"
-version = "0.8.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f3d0c8c8752312f9713efd397ff63acb9f85585afbf179282e720e7704954dd5"
-dependencies = [
- "generic-array",
-]
-
-[[package]]
-name = "dir"
-version = "0.1.2"
-dependencies = [
- "app_dirs",
- "ethereum-types 0.9.2",
- "home 0.3.4",
- "journaldb",
-]
-
-[[package]]
-name = "docopt"
-version = "1.1.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7f525a586d310c87df72ebcd98009e57f1cc030c8c268305287a476beb653969"
-dependencies = [
- "lazy_static",
- "regex 1.3.9",
- "serde",
- "strsim 0.9.2",
-]
-
-[[package]]
-name = "edit-distance"
-version = "2.1.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "bbbaaaf38131deb9ca518a274a45bfdb8771f139517b073b16c2d3d32ae5037b"
-
-[[package]]
-name = "eip-152"
-version = "0.1.0"
-dependencies = [
- "rustc-hex 2.1.0",
-]
-
-[[package]]
-name = "eip-712"
-version = "0.1.0"
-dependencies = [
- "ethabi 12.0.0",
- "ethereum-types 0.9.2",
- "failure",
- "indexmap",
- "itertools 0.7.11",
- "keccak-hash",
- "lazy_static",
- "logos",
- "regex 1.3.9",
- "rustc-hex 2.1.0",
- "serde",
- "serde_derive",
- "serde_json",
- "validator",
- "validator_derive",
-]
-
-[[package]]
-name = "either"
-version = "1.5.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "bb1f6b1ce1c140482ea30ddd3335fc0024ac7ee112895426e0a629a6c20adfe3"
-
-[[package]]
-name = "elastic-array"
-version = "0.10.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "073be79b6538296faf81c631872676600616073817dd9a440c477ad09b408983"
-dependencies = [
- "heapsize",
-]
-
-[[package]]
-name = "enum_primitive"
-version = "0.1.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "be4551092f4d519593039259a9ed8daedf0da12e5109c5280338073eaeb81180"
-dependencies = [
- "num-traits 0.1.43",
-]
-
-[[package]]
-name = "env_logger"
-version = "0.5.13"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "15b0a4d2e39f8420210be8b27eeda28029729e2fd4291019455016c348240c38"
-dependencies = [
- "atty",
- "humantime",
- "log",
- "regex 1.3.9",
- "termcolor",
-]
-
-[[package]]
-name = "error-chain"
-version = "0.12.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3ab49e9dcb602294bc42f9a7dfc9bc6e936fca4418ea300dbfb84fe16de0b7d9"
-dependencies = [
- "backtrace",
- "version_check",
-]
-
-[[package]]
-name = "eth-secp256k1"
-version = "0.5.7"
-source = "git+https://github.com/paritytech/rust-secp256k1?rev=9791e79f21a5309dcb6e0bd254b1ef88fca2f1f4#9791e79f21a5309dcb6e0bd254b1ef88fca2f1f4"
-dependencies = [
- "arrayvec 0.4.12",
- "cc",
- "cfg-if 0.1.10",
- "rand 0.6.5",
-]
-
-[[package]]
-name = "eth_pairings"
-version = "0.6.0"
-source = "git+https://github.com/matter-labs/eip1962.git?rev=ece6cbabc41948db4200e41f0bfdab7ab94c7af8#ece6cbabc41948db4200e41f0bfdab7ab94c7af8"
-dependencies = [
- "byteorder",
- "eth_pairings_repr_derive",
- "fixed_width_field",
- "fixed_width_group_and_loop",
- "num-bigint 0.2.3",
- "num-traits 0.2.8",
- "once_cell",
- "static_assertions 1.1.0",
-]
-
-[[package]]
-name = "eth_pairings_repr_derive"
-version = "0.2.0"
-source = "git+https://github.com/matter-labs/eip1962.git?rev=ece6cbabc41948db4200e41f0bfdab7ab94c7af8#ece6cbabc41948db4200e41f0bfdab7ab94c7af8"
-dependencies = [
- "byteorder",
- "proc-macro2 1.0.36",
- "quote 1.0.7",
- "syn 1.0.86",
-]
-
-[[package]]
-name = "ethabi"
-version = "11.0.0"
-source = "git+https://github.com/rimrakhimov/ethabi?branch=rimrakhimov/remove-syn-export-span#222e6482ac45d9c01f9e895ade8e439f86dbfc2f"
-dependencies = [
- "ethereum-types 0.9.2",
- "rustc-hex 2.1.0",
- "serde",
- "serde_json",
- "tiny-keccak 1.5.0",
- "uint",
-]
-
-[[package]]
-name = "ethabi"
-version = "12.0.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "052a565e3de82944527d6d10a465697e6bb92476b772ca7141080c901f6a63c6"
-dependencies = [
- "ethereum-types 0.9.2",
- "rustc-hex 2.1.0",
- "serde",
- "serde_json",
- "tiny-keccak 1.5.0",
- "uint",
-]
-
-[[package]]
-name = "ethabi-contract"
-version = "11.0.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "88d4002f1f77d8233685dafd8589efe1c9dfa63e21ca6c11134372acc7f68032"
-
-[[package]]
-name = "ethabi-derive"
-version = "11.0.0"
-source = "git+https://github.com/rimrakhimov/ethabi?branch=rimrakhimov/remove-syn-export-span#222e6482ac45d9c01f9e895ade8e439f86dbfc2f"
-dependencies = [
- "ethabi 11.0.0",
- "heck",
- "proc-macro2 1.0.36",
- "quote 1.0.7",
- "syn 1.0.86",
-]
-
-[[package]]
-name = "ethash"
-version = "1.12.0"
-dependencies = [
- "criterion 0.2.11",
- "crunchy 0.1.6",
- "either",
- "ethereum-types 0.9.2",
- "keccak-hash",
- "log",
- "memmap",
- "parking_lot 0.11.1",
- "primal",
- "rustc-hex 1.0.0",
- "serde_json",
- "tempdir",
- "tiny-keccak 2.0.2",
-]
-
-[[package]]
-name = "ethbloom"
-version = "0.7.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "bd0584482a6433370908dee84ea13992c2cf39c569600e4dbfafe520bb3b90d1"
-dependencies = [
- "crunchy 0.2.2",
- "fixed-hash 0.4.0",
- "impl-rlp",
- "impl-serde 0.2.3",
- "tiny-keccak 1.5.0",
-]
-
-[[package]]
-name = "ethbloom"
-version = "0.9.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "71a6567e6fd35589fea0c63b94b4cf2e55573e413901bdbe60ab15cf0e25e5df"
-dependencies = [
- "crunchy 0.2.2",
- "fixed-hash 0.6.1",
- "impl-rlp",
- "impl-serde 0.3.1",
- "tiny-keccak 2.0.2",
-]
-
-[[package]]
-name = "ethcore"
-version = "1.12.0"
-dependencies = [
- "ansi_term 0.10.2",
- "blooms-db",
- "common-types",
- "criterion 0.2.11",
- "crossbeam-channel",
- "crossbeam-utils 0.6.6",
- "derive_more",
- "eip-152",
- "env_logger",
- "error-chain",
- "ethabi 12.0.0",
- "ethabi-contract",
- "ethabi-derive",
- "ethash",
- "ethcore-accounts",
- "ethcore-blockchain",
- "ethcore-bloom-journal",
- "ethcore-builtin",
- "ethcore-call-contract",
- "ethcore-db",
- "ethcore-io",
- "ethcore-miner",
- "ethcore-stratum",
- "ethereum-types 0.9.2",
- "ethjson",
- "ethkey",
- "evm",
- "fetch",
- "globset",
- "hash-db 0.11.0",
- "hex-literal",
- "itertools 0.5.10",
- "journaldb",
- "keccak-hash",
- "keccak-hasher 0.1.1",
- "kvdb",
- "kvdb-memorydb",
- "kvdb-rocksdb",
- "lazy_static",
- "len-caching-lock",
- "log",
- "lru-cache",
- "macros",
- "maplit",
- "memory-cache",
- "memory-db 0.11.0",
- "num_cpus",
- "parity-bytes",
- "parity-crypto",
- "parity-runtime",
- "parity-snappy",
- "parity-util-mem",
- "parking_lot 0.11.1",
- "patricia-trie-ethereum",
- "rand 0.7.3",
- "rand_xorshift 0.2.0",
- "rayon",
- "regex 1.3.9",
- "reth-util",
- "rlp",
- "rlp_compress",
- "rlp_derive",
- "rustc-hex 1.0.0",
- "scopeguard 1.1.0",
- "serde",
- "serde_derive",
- "serde_json",
- "stats",
- "tempdir",
- "tempfile",
- "time-utils",
- "trace-time",
- "trie-db",
- "trie-standardmap",
- "triehash-ethereum",
- "unexpected",
- "using_queue",
- "vm",
- "walkdir",
- "wasm",
-]
-
-[[package]]
-name = "ethcore-accounts"
-version = "0.1.0"
-dependencies = [
- "common-types",
- "ethereum-types 0.9.2",
- "ethkey",
- "ethstore",
- "log",
- "parity-crypto",
- "parking_lot 0.11.1",
- "serde",
- "serde_derive",
- "serde_json",
- "tempdir",
-]
-
-[[package]]
-name = "ethcore-blockchain"
-version = "0.1.0"
-dependencies = [
- "ansi_term 0.11.0",
- "blooms-db",
- "common-types",
- "env_logger",
- "ethcore-db",
- "ethereum-types 0.9.2",
- "ethkey",
- "itertools 0.5.10",
- "keccak-hash",
- "kvdb",
- "kvdb-memorydb",
- "log",
- "parity-bytes",
- "parity-crypto",
- "parity-util-mem",
- "parking_lot 0.11.1",
- "rand 0.7.3",
- "rayon",
- "rlp",
- "rlp_compress",
- "rlp_derive",
- "rustc-hex 1.0.0",
- "stats",
- "tempdir",
- "triehash-ethereum",
-]
-
-[[package]]
-name = "ethcore-bloom-journal"
-version = "0.1.0"
-dependencies = [
- "siphasher",
-]
-
-[[package]]
-name = "ethcore-builtin"
-version = "0.1.0"
-dependencies = [
- "bn",
- "byteorder",
- "eip-152",
- "eth_pairings",
- "ethereum-types 0.9.2",
- "ethjson",
- "ethkey",
- "hex-literal",
- "keccak-hash",
- "log",
- "macros",
- "maplit",
- "num",
- "parity-bytes",
- "parity-crypto",
- "rustc-hex 1.0.0",
-]
-
-[[package]]
-name = "ethcore-call-contract"
-version = "0.1.0"
-dependencies = [
- "common-types",
- "ethereum-types 0.9.2",
- "parity-bytes",
-]
-
-[[package]]
-name = "ethcore-db"
-version = "0.1.0"
-dependencies = [
- "common-types",
- "ethereum-types 0.9.2",
- "kvdb",
- "kvdb-memorydb",
- "kvdb-rocksdb",
- "parity-util-mem",
- "parking_lot 0.11.1",
- "rlp",
- "rlp_derive",
- "stats",
-]
-
-[[package]]
-name = "ethcore-io"
-version = "1.12.0"
-dependencies = [
- "crossbeam-deque 0.6.3",
- "fnv",
- "futures",
- "log",
- "mio",
- "num_cpus",
- "parking_lot 0.11.1",
- "slab 0.4.2",
- "time",
- "timer",
- "tokio",
-]
-
-[[package]]
-name = "ethcore-logger"
-version = "1.12.0"
-dependencies = [
- "ansi_term 0.10.2",
- "arrayvec 0.4.12",
- "atty",
- "env_logger",
- "lazy_static",
- "log",
- "parking_lot 0.11.1",
- "regex 1.3.9",
- "time",
-]
-
-[[package]]
-name = "ethcore-miner"
-version = "1.12.0"
-dependencies = [
- "ansi_term 0.10.2",
- "common-types",
- "env_logger",
- "error-chain",
- "ethabi 12.0.0",
- "ethabi-contract",
- "ethabi-derive",
- "ethash",
- "ethcore-call-contract",
- "ethereum-types 0.9.2",
- "ethkey",
- "fetch",
- "futures",
- "hyper 0.12.35",
- "keccak-hash",
- "linked-hash-map",
- "log",
- "parity-crypto",
- "parity-runtime",
- "parity-util-mem",
- "parking_lot 0.11.1",
- "price-info",
- "rlp",
- "rustc-hex 1.0.0",
- "serde",
- "serde_derive",
- "serde_json",
- "trace-time",
- "txpool",
- "url 2.1.0",
-]
-
-[[package]]
-name = "ethcore-network"
-version = "1.12.0"
-dependencies = [
- "assert_matches",
- "error-chain",
- "ethcore-io",
- "ethereum-types 0.9.2",
- "ethkey",
- "ipnetwork",
- "lazy_static",
- "libc",
- "parity-crypto",
- "parity-snappy",
- "rlp",
- "semver",
- "serde",
- "serde_derive",
-]
-
-[[package]]
-name = "ethcore-network-devp2p"
-version = "1.12.0"
-dependencies = [
- "ansi_term 0.10.2",
- "assert_matches",
- "bytes",
- "env_logger",
- "error-chain",
- "ethcore-io",
- "ethcore-network",
- "ethereum-types 0.9.2",
- "ethkey",
- "igd",
- "ipnetwork",
- "keccak-hash",
- "libc",
- "log",
- "lru-cache",
- "mio",
- "parity-bytes",
- "parity-crypto",
- "parity-path",
- "parity-snappy",
- "parking_lot 0.11.1",
- "rand 0.7.3",
- "rlp",
- "rust-crypto",
- "rustc-hex 1.0.0",
- "serde",
- "serde_derive",
- "serde_json",
- "slab 0.2.0",
- "tempdir",
- "tiny-keccak 1.5.0",
-]
-
-[[package]]
-name = "ethcore-service"
-version = "0.1.0"
-dependencies = [
- "ansi_term 0.10.2",
- "error-chain",
- "ethcore",
- "ethcore-blockchain",
- "ethcore-db",
- "ethcore-io",
- "ethcore-sync",
- "ethereum-types 0.9.2",
- "kvdb",
- "kvdb-rocksdb",
- "log",
- "tempdir",
- "trace-time",
-]
-
-[[package]]
-name = "ethcore-stratum"
-version = "1.12.0"
-dependencies = [
- "env_logger",
- "ethereum-types 0.9.2",
- "jsonrpc-core",
- "jsonrpc-tcp-server",
- "keccak-hash",
- "log",
- "parking_lot 0.11.1",
- "tokio",
- "tokio-io",
-]
-
-[[package]]
-name = "ethcore-sync"
-version = "1.12.0"
-dependencies = [
- "common-types",
- "crossbeam-channel",
- "derive_more",
- "enum_primitive",
- "env_logger",
- "ethcore",
- "ethcore-io",
- "ethcore-miner",
- "ethcore-network",
- "ethcore-network-devp2p",
- "ethereum-forkid",
- "ethereum-types 0.9.2",
- "ethkey",
- "ethstore",
- "fastmap",
- "hash-db 0.11.0",
- "keccak-hash",
- "keccak-hasher 0.1.1",
- "kvdb",
- "kvdb-memorydb",
- "log",
- "macros",
- "parity-bytes",
- "parity-crypto",
- "parity-util-mem",
- "parking_lot 0.11.1",
- "primitive-types 0.7.2",
- "rand 0.7.3",
- "rand_xorshift 0.2.0",
- "rlp",
- "rustc-hex 1.0.0",
- "stats",
- "trace-time",
- "triehash-ethereum",
-]
-
-[[package]]
-name = "ethereum-forkid"
-version = "0.2.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3010d8372e3a76d4e2c44de0a080257ab62b6d108857ee7bd70fe8dfb2815f13"
-dependencies = [
- "crc",
- "ethereum-types 0.9.2",
- "maplit",
- "parity-util-mem",
- "rlp",
- "rlp-derive",
-]
-
-[[package]]
-name = "ethereum-types"
-version = "0.7.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4a5a7777cb75d9ee2b8d3752634b15e4e4e70d2ef81a227e9d157acfa18592b1"
-dependencies = [
- "ethbloom 0.7.0",
- "fixed-hash 0.4.0",
- "impl-rlp",
- "impl-serde 0.2.3",
- "primitive-types 0.5.1",
- "uint",
-]
-
-[[package]]
-name = "ethereum-types"
-version = "0.9.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "473aecff686bd8e7b9db0165cbbb53562376b39bf35b427f0c60446a9e1634b0"
-dependencies = [
- "ethbloom 0.9.2",
- "fixed-hash 0.6.1",
- "impl-rlp",
- "impl-serde 0.3.1",
- "primitive-types 0.7.2",
- "uint",
-]
-
-[[package]]
-name = "ethjson"
-version = "0.1.0"
-dependencies = [
- "common-types",
- "ethereum-types 0.9.2",
- "macros",
- "maplit",
- "parity-crypto",
- "rustc-hex 1.0.0",
- "serde",
- "serde_derive",
- "serde_json",
-]
-
-[[package]]
-name = "ethkey"
-version = "0.3.0"
-dependencies = [
- "edit-distance",
- "eth-secp256k1",
- "ethereum-types 0.9.2",
- "lazy_static",
- "log",
- "memzero",
- "parity-crypto",
- "parity-wordlist",
- "quick-error",
- "rand 0.7.3",
- "rustc-hex 1.0.0",
- "serde",
- "serde_derive",
- "tiny-keccak 1.5.0",
-]
-
-[[package]]
-name = "ethkey-cli"
-version = "0.1.0"
-dependencies = [
- "docopt",
- "env_logger",
- "ethkey",
- "panic_hook",
- "parity-crypto",
- "parity-wordlist",
- "rustc-hex 1.0.0",
- "serde",
- "serde_derive",
- "threadpool",
-]
-
-[[package]]
-name = "ethstore"
-version = "0.2.1"
-dependencies = [
- "ethereum-types 0.9.2",
- "ethkey",
- "itertools 0.5.10",
- "lazy_static",
- "libc",
- "log",
- "matches",
- "parity-crypto",
- "parity-wordlist",
- "parking_lot 0.11.1",
- "rand 0.7.3",
- "rustc-hex 1.0.0",
- "serde",
- "serde_derive",
- "serde_json",
- "smallvec 0.6.13",
- "tempdir",
- "time",
-]
-
-[[package]]
-name = "ethstore-cli"
-version = "0.1.1"
-dependencies = [
- "dir",
- "docopt",
- "env_logger",
- "ethstore",
- "num_cpus",
- "panic_hook",
- "parking_lot 0.11.1",
- "rustc-hex 1.0.0",
- "serde",
- "serde_derive",
- "tempdir",
-]
-
-[[package]]
-name = "evm"
-version = "0.1.0"
-dependencies = [
- "bit-set",
- "criterion 0.2.11",
- "ethcore-builtin",
- "ethereum-types 0.9.2",
- "hex-literal",
- "keccak-hash",
- "lazy_static",
- "log",
- "memory-cache",
- "num-bigint 0.2.3",
- "parity-bytes",
- "parity-util-mem",
- "parking_lot 0.11.1",
- "rustc-hex 1.0.0",
- "vm",
-]
-
-[[package]]
-name = "evmbin"
-version = "0.1.0"
-dependencies = [
- "common-types",
- "criterion 0.3.0",
- "docopt",
- "env_logger",
- "ethcore",
- "ethereum-types 0.9.2",
- "ethjson",
- "evm",
- "panic_hook",
- "parity-bytes",
- "pretty_assertions",
- "rustc-hex 1.0.0",
- "serde",
- "serde_derive",
- "serde_json",
- "tempdir",
- "vm",
-]
-
-[[package]]
-name = "failure"
-version = "0.1.8"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d32e9bd16cc02eae7db7ef620b392808b89f6a5e16bb3497d159c6b92a0f4f86"
-dependencies = [
- "backtrace",
- "failure_derive",
-]
-
-[[package]]
-name = "failure_derive"
-version = "0.1.8"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "aa4da3c766cd7a0db8242e326e9e4e081edd567072893ed320008189715366a4"
-dependencies = [
- "proc-macro2 1.0.36",
- "quote 1.0.7",
- "syn 1.0.86",
- "synstructure",
-]
-
-[[package]]
-name = "fake-fetch"
-version = "0.0.1"
-dependencies = [
- "fetch",
- "futures",
- "hyper 0.12.35",
-]
-
-[[package]]
-name = "fake-simd"
-version = "0.1.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e88a8acf291dafb59c2d96e8f59828f3838bb1a70398823ade51a84de6a6deed"
-
-[[package]]
-name = "fastmap"
-version = "0.1.0"
-dependencies = [
- "ethereum-types 0.9.2",
- "plain_hasher",
-]
-
-[[package]]
-name = "fdlimit"
-version = "0.1.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b1ee15a7050e5580b3712877157068ea713b245b080ff302ae2ca973cfcd9baa"
-dependencies = [
- "libc",
-]
-
-[[package]]
-name = "fetch"
-version = "0.1.0"
-dependencies = [
- "bytes",
- "futures",
- "http",
- "hyper 0.12.35",
- "hyper-rustls",
- "log",
- "tokio",
- "url 2.1.0",
-]
-
-[[package]]
-name = "fixed-hash"
-version = "0.4.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "516877b7b9a1cc2d0293cbce23cd6203f0edbfd4090e6ca4489fecb5aa73050e"
-dependencies = [
- "byteorder",
- "rand 0.5.6",
- "rustc-hex 2.1.0",
- "static_assertions 0.2.5",
-]
-
-[[package]]
-name = "fixed-hash"
-version = "0.6.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "11498d382790b7a8f2fd211780bec78619bba81cdad3a283997c0c41f836759c"
-dependencies = [
- "byteorder",
- "rand 0.7.3",
- "rustc-hex 2.1.0",
- "static_assertions 1.1.0",
-]
-
-[[package]]
-name = "fixed_width_field"
-version = "0.1.0"
-source = "git+https://github.com/matter-labs/eip1962.git?rev=ece6cbabc41948db4200e41f0bfdab7ab94c7af8#ece6cbabc41948db4200e41f0bfdab7ab94c7af8"
-dependencies = [
- "simple_uint",
-]
-
-[[package]]
-name = "fixed_width_group_and_loop"
-version = "0.1.0"
-source = "git+https://github.com/matter-labs/eip1962.git?rev=ece6cbabc41948db4200e41f0bfdab7ab94c7af8#ece6cbabc41948db4200e41f0bfdab7ab94c7af8"
-dependencies = [
- "simple_uint",
-]
-
-[[package]]
-name = "fixedbitset"
-version = "0.2.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "37ab347416e802de484e4d03c7316c48f1ecb56574dfd4a46a80f173ce1de04d"
-
-[[package]]
-name = "fnv"
-version = "1.0.6"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2fad85553e09a6f881f739c29f0b00b0f01357c743266d478b68951ce23285f3"
-
-[[package]]
-name = "fs-swap"
-version = "0.2.4"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "921d332c89b3b61a826de38c61ee5b6e02c56806cade1b0e5d81bd71f57a71bb"
-dependencies = [
- "lazy_static",
- "libc",
- "libloading",
- "winapi 0.3.8",
-]
-
-[[package]]
-name = "fuchsia-cprng"
-version = "0.1.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a06f77d526c1a601b7c4cdd98f54b5eaabffc14d5f2f0296febdc7f357c6d3ba"
-
-[[package]]
-name = "fuchsia-zircon"
-version = "0.3.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2e9763c69ebaae630ba35f74888db465e49e259ba1bc0eda7d06f4a067615d82"
-dependencies = [
- "bitflags 1.2.1",
- "fuchsia-zircon-sys",
-]
-
-[[package]]
-name = "fuchsia-zircon-sys"
-version = "0.3.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3dcaa9ae7725d12cdb85b3ad99a434db70b468c09ded17e012d86b5c1010f7a7"
-
-[[package]]
-name = "futures"
-version = "0.1.29"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1b980f2816d6ee8673b6517b52cb0e808a180efc92e5c19d02cdda79066703ef"
-
-[[package]]
-name = "futures-cpupool"
-version = "0.1.8"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ab90cde24b3319636588d0c35fe03b1333857621051837ed769faefb4c2162e4"
-dependencies = [
- "futures",
- "num_cpus",
-]
-
-[[package]]
-name = "gcc"
-version = "0.3.55"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8f5f3913fa0bfe7ee1fd8248b6b9f42a5af4b9d65ec2dd2c3c26132b950ecfc2"
-
-[[package]]
-name = "generic-array"
-version = "0.12.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c68f0274ae0e023facc3c97b2e00f076be70e254bc851d972503b328db79b2ec"
-dependencies = [
- "typenum",
-]
-
-[[package]]
-name = "getopts"
-version = "0.2.21"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "14dbbfd5c71d70241ecf9e6f13737f7b5ce823821063188d7e46c41d371eebd5"
-dependencies = [
- "unicode-width",
-]
-
-[[package]]
-name = "getrandom"
-version = "0.1.13"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e7db7ca94ed4cd01190ceee0d8a8052f08a247aa1b469a7f68c6a3b71afcf407"
-dependencies = [
- "cfg-if 0.1.10",
- "libc",
- "wasi 0.7.0",
-]
-
-[[package]]
-name = "getrandom"
-version = "0.2.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c9495705279e7140bf035dde1f6e750c162df8b625267cd52cc44e0b156732c8"
-dependencies = [
- "cfg-if 1.0.0",
- "libc",
- "wasi 0.10.2+wasi-snapshot-preview1",
-]
-
-[[package]]
-name = "gimli"
-version = "0.23.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f6503fe142514ca4799d4c26297c4248239fe8838d827db6bd6065c6ed29a6ce"
-
-[[package]]
-name = "globset"
-version = "0.4.5"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7ad1da430bd7281dde2576f44c84cc3f0f7b475e7202cd503042dff01a8c8120"
-dependencies = [
- "aho-corasick 0.7.6",
- "bstr",
- "fnv",
- "log",
- "regex 1.3.9",
-]
-
-[[package]]
-name = "h2"
-version = "0.1.26"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a5b34c246847f938a410a03c5458c7fee2274436675e76d8b903c08efc29c462"
-dependencies = [
- "byteorder",
- "bytes",
- "fnv",
- "futures",
- "http",
- "indexmap",
- "log",
- "slab 0.4.2",
- "string",
- "tokio-io",
-]
-
-[[package]]
-name = "hamming"
-version = "0.1.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "65043da274378d68241eb9a8f8f8aa54e349136f7b8e12f63e3ef44043cc30e1"
-
-[[package]]
-name = "hash-db"
-version = "0.11.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1b03501f6e1a2a97f1618879aba3156f14ca2847faa530c4e28859638bd11483"
-
-[[package]]
-name = "hash-db"
-version = "0.15.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d23bd4e7b5eda0d0f3a307e8b381fdc8ba9000f26fbe912250c0a4cc3956364a"
-
-[[package]]
-name = "hash256-std-hasher"
-version = "0.11.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f5c13dbac3cc50684760f54af18545c9e80fb75e93a3e586d71ebdc13138f6a4"
-dependencies = [
- "crunchy 0.2.2",
-]
-
-[[package]]
-name = "hash256-std-hasher"
-version = "0.15.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "92c171d55b98633f4ed3860808f004099b36c1cc29c42cfc53aa8591b21efcf2"
-dependencies = [
- "crunchy 0.2.2",
-]
-
-[[package]]
-name = "hashbrown"
-version = "0.6.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8e6073d0ca812575946eb5f35ff68dbe519907b25c42530389ff946dc84c6ead"
-dependencies = [
- "ahash 0.2.19",
- "autocfg 0.1.7",
-]
-
-[[package]]
-name = "hashbrown"
-version = "0.8.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e91b62f79061a0bc2e046024cb7ba44b08419ed238ecbd9adbd787434b9e8c25"
-dependencies = [
- "ahash 0.3.8",
- "autocfg 1.0.0",
-]
-
-[[package]]
-name = "heapsize"
-version = "0.4.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1679e6ea370dee694f91f1dc469bf94cf8f52051d147aec3e1f9497c6fc22461"
-dependencies = [
- "winapi 0.3.8",
-]
-
-[[package]]
-name = "heck"
-version = "0.3.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "20564e78d53d2bb135c343b3f47714a56af2061f1c928fdb541dc7b9fdd94205"
-dependencies = [
- "unicode-segmentation",
-]
-
-[[package]]
-name = "hermit-abi"
-version = "0.1.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "307c3c9f937f38e3534b1d6447ecf090cafcc9744e4a6360e8b037b2cf5af120"
-dependencies = [
- "libc",
-]
-
-[[package]]
-name = "hex"
-version = "0.4.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7f24254aa9a54b5c858eaee2f5bccdb46aaf0e486a595ed5fd8f86ba55232a70"
-
-[[package]]
-name = "hex-literal"
-version = "0.2.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "961de220ec9a91af2e1e5bd80d02109155695e516771762381ef8581317066e0"
-dependencies = [
- "hex-literal-impl",
- "proc-macro-hack",
-]
-
-[[package]]
-name = "hex-literal-impl"
-version = "0.2.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9d4c5c844e2fee0bf673d54c2c177f1713b3d2af2ff6e666b49cb7572e6cf42d"
-dependencies = [
- "proc-macro-hack",
-]
-
-[[package]]
-name = "hmac"
-version = "0.7.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5dcb5e64cda4c23119ab41ba960d1e170a774c8e4b9d9e6a9bc18aabf5e59695"
-dependencies = [
- "crypto-mac",
- "digest",
-]
-
-[[package]]
-name = "home"
-version = "0.3.4"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "29302b90cfa76231a757a887d1e3153331a63c7f80b6c75f86366334cbe70708"
-dependencies = [
- "scopeguard 0.3.3",
- "winapi 0.3.8",
-]
-
-[[package]]
-name = "home"
-version = "0.5.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a3753954f7bd71f0e671afb8b5a992d1724cf43b7f95a563cd4a0bde94659ca8"
-dependencies = [
- "scopeguard 1.1.0",
- "winapi 0.3.8",
-]
-
-[[package]]
-name = "http"
-version = "0.1.21"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d6ccf5ede3a895d8856620237b2f02972c1bbc78d2965ad7fe8838d4a0ed41f0"
-dependencies = [
- "bytes",
- "fnv",
- "itoa",
-]
-
-[[package]]
-name = "http-body"
-version = "0.1.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6741c859c1b2463a423a1dbce98d418e6c3c3fc720fb0d45528657320920292d"
-dependencies = [
- "bytes",
- "futures",
- "http",
- "tokio-buf",
-]
-
-[[package]]
-name = "httparse"
-version = "1.3.4"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "cd179ae861f0c2e53da70d892f5f3029f9594be0c41dc5269cd371691b1dc2f9"
-
-[[package]]
-name = "humantime"
-version = "1.3.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "df004cfca50ef23c36850aaaa59ad52cc70d0e90243c3c7737a4dd32dc7a3c4f"
-dependencies = [
- "quick-error",
-]
-
-[[package]]
-name = "hyper"
-version = "0.11.27"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "34a590ca09d341e94cddf8e5af0bbccde205d5fbc2fa3c09dd67c7f85cea59d7"
-dependencies = [
- "base64 0.9.3",
- "bytes",
- "futures",
- "futures-cpupool",
- "httparse",
- "iovec",
- "language-tags",
- "log",
- "mime",
- "net2",
- "percent-encoding 1.0.1",
- "relay",
- "time",
- "tokio-core",
- "tokio-io",
- "tokio-service",
- "unicase",
- "want 0.0.4",
-]
-
-[[package]]
-name = "hyper"
-version = "0.12.35"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9dbe6ed1438e1f8ad955a4701e9a944938e9519f6888d12d8558b645e247d5f6"
-dependencies = [
- "bytes",
- "futures",
- "futures-cpupool",
- "h2",
- "http",
- "http-body",
- "httparse",
- "iovec",
- "itoa",
- "log",
- "net2",
- "rustc_version",
- "time",
- "tokio",
- "tokio-buf",
- "tokio-executor",
- "tokio-io",
- "tokio-reactor",
- "tokio-tcp",
- "tokio-threadpool",
- "tokio-timer 0.2.13",
- "want 0.2.0",
-]
-
-[[package]]
-name = "hyper-rustls"
-version = "0.16.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "15b66d1bd4864ef036adf2363409caa3acd63ebb4725957b66e621c8a36631a3"
-dependencies = [
- "bytes",
- "ct-logs",
- "futures",
- "hyper 0.12.35",
- "rustls",
- "tokio-io",
- "tokio-rustls",
- "webpki",
- "webpki-roots",
-]
-
-[[package]]
-name = "idna"
-version = "0.1.5"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "38f09e0f0b1fb55fdee1f17470ad800da77af5186a1a76c026b679358b7e844e"
-dependencies = [
- "matches",
- "unicode-bidi",
- "unicode-normalization",
-]
-
-[[package]]
-name = "idna"
-version = "0.2.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "02e2673c30ee86b5b96a9cb52ad15718aa1f966f5ab9ad54a8b95d5ca33120a9"
-dependencies = [
- "matches",
- "unicode-bidi",
- "unicode-normalization",
-]
-
-[[package]]
-name = "if_chain"
-version = "0.1.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4bac95d9aa0624e7b78187d6fb8ab012b41d9f6f54b1bcb61e61c4845f8357ec"
-
-[[package]]
-name = "igd"
-version = "0.7.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c8aef7814a769f156ef3a86169a8b04c066e3aebc324f522c159978466e32a1c"
-dependencies = [
- "futures",
- "hyper 0.11.27",
- "rand 0.4.6",
- "regex 0.2.11",
- "tokio-core",
- "tokio-retry",
- "tokio-timer 0.1.2",
- "xml-rs",
- "xmltree",
-]
-
-[[package]]
-name = "impl-codec"
-version = "0.4.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1be51a921b067b0eaca2fad532d9400041561aa922221cc65f95a85641c6bf53"
-dependencies = [
- "parity-scale-codec",
-]
-
-[[package]]
-name = "impl-rlp"
-version = "0.2.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8f7a72f11830b52333f36e3b09a288333888bf54380fd0ac0790a3c31ab0f3c5"
-dependencies = [
- "rlp",
-]
-
-[[package]]
-name = "impl-serde"
-version = "0.2.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "58e3cae7e99c7ff5a995da2cf78dd0a5383740eda71d98cf7b1910c301ac69b8"
-dependencies = [
- "serde",
-]
-
-[[package]]
-name = "impl-serde"
-version = "0.3.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b47ca4d2b6931707a55fce5cf66aff80e2178c8b63bbb4ecb5695cbc870ddf6f"
-dependencies = [
- "serde",
-]
-
-[[package]]
-name = "impl-trait-for-tuples"
-version = "0.1.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7ef5550a42e3740a0e71f909d4c861056a284060af885ae7aa6242820f920d9d"
-dependencies = [
- "proc-macro2 1.0.36",
- "quote 1.0.7",
- "syn 1.0.86",
-]
-
-[[package]]
-name = "indexmap"
-version = "1.3.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "712d7b3ea5827fcb9d4fda14bf4da5f136f0db2ae9c8f4bd4e2d1c6fde4e6db2"
-dependencies = [
- "autocfg 0.1.7",
-]
-
-[[package]]
-name = "inflate"
-version = "0.4.5"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1cdb29978cc5797bd8dcc8e5bf7de604891df2a8dc576973d71a281e916db2ff"
-dependencies = [
- "adler32",
-]
-
-[[package]]
-name = "instant"
-version = "0.1.9"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "61124eeebbd69b8190558df225adf7e4caafce0d743919e5d6b19652314ec5ec"
-dependencies = [
- "cfg-if 1.0.0",
-]
-
-[[package]]
-name = "interleaved-ordered"
-version = "0.1.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "141340095b15ed7491bd3d4ced9d20cebfb826174b6bb03386381f62b01e3d77"
-
-[[package]]
-name = "iovec"
-version = "0.1.4"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b2b3ea6ff95e175473f8ffe6a7eb7c00d054240321b84c57051175fe3c1e075e"
-dependencies = [
- "libc",
-]
-
-[[package]]
-name = "ipnetwork"
-version = "0.12.8"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "70783119ac90828aaba91eae39db32c6c1b8838deea3637e5238efa0130801ab"
-
-[[package]]
-name = "itertools"
-version = "0.5.10"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4833d6978da405305126af4ac88569b5d71ff758581ce5a987dbfa3755f694fc"
-dependencies = [
- "either",
-]
-
-[[package]]
-name = "itertools"
-version = "0.7.11"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0d47946d458e94a1b7bcabbf6521ea7c037062c81f534615abcad76e84d4970d"
-dependencies = [
- "either",
-]
-
-[[package]]
-name = "itertools"
-version = "0.8.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "87fa75c9dea7b07be3138c49abbb83fd4bea199b5cdc76f9804458edc5da0d6e"
-dependencies = [
- "either",
-]
-
-[[package]]
-name = "itoa"
-version = "0.4.4"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "501266b7edd0174f8530248f87f99c88fbe60ca4ef3dd486835b8d8d53136f7f"
-
-[[package]]
-name = "journaldb"
-version = "0.2.0"
-dependencies = [
- "env_logger",
- "ethcore-db",
- "ethereum-types 0.9.2",
- "fastmap",
- "hash-db 0.11.0",
- "keccak-hash",
- "keccak-hasher 0.1.1",
- "kvdb",
- "kvdb-memorydb",
- "log",
- "memory-db 0.11.0",
- "parity-bytes",
- "parity-util-mem",
- "parking_lot 0.11.1",
- "rlp",
-]
-
-[[package]]
-name = "jsonrpc-core"
-version = "15.0.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f30b12567a31d48588a65b6cf870081e6ba1d7b2ae353977cb9820d512e69c70"
-dependencies = [
- "futures",
- "log",
- "serde",
- "serde_derive",
- "serde_json",
-]
-
-[[package]]
-name = "jsonrpc-derive"
-version = "15.0.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c2cc6ea7f785232d9ca8786a44e9fa698f92149dcdc1acc4aa1fc69c4993d79e"
-dependencies = [
- "proc-macro-crate",
- "proc-macro2 1.0.36",
- "quote 1.0.7",
- "syn 1.0.86",
-]
-
-[[package]]
-name = "jsonrpc-http-server"
-version = "15.0.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9996b26c0c7a59626d0ed6c5ec8bf06218e62ce1474bd2849f9b9fd38a0158c0"
-dependencies = [
- "hyper 0.12.35",
- "jsonrpc-core",
- "jsonrpc-server-utils",
- "log",
- "net2",
- "parking_lot 0.10.2",
- "unicase",
-]
-
-[[package]]
-name = "jsonrpc-ipc-server"
-version = "15.0.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b8e8f2278fb2b277175b6e21b23e7ecf30e78daff5ee301d0a2a411d9a821a0a"
-dependencies = [
- "jsonrpc-core",
- "jsonrpc-server-utils",
- "log",
- "parity-tokio-ipc",
- "parking_lot 0.10.2",
- "tokio-service",
-]
-
-[[package]]
-name = "jsonrpc-pubsub"
-version = "15.0.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f389c5cd1f3db258a99296892c21047e21ae73ff4c0e2d39650ea86fe994b4c7"
-dependencies = [
- "jsonrpc-core",
- "log",
- "parking_lot 0.10.2",
- "rand 0.7.3",
- "serde",
-]
-
-[[package]]
-name = "jsonrpc-server-utils"
-version = "15.0.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c623e1895d0d9110cb0ea7736cfff13191ff52335ad33b21bd5c775ea98b27af"
-dependencies = [
- "bytes",
- "globset",
- "jsonrpc-core",
- "lazy_static",
- "log",
- "tokio",
- "tokio-codec",
- "unicase",
-]
-
-[[package]]
-name = "jsonrpc-tcp-server"
-version = "15.0.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1b7d4a377ea231ca0d14fe1fb515ca89d6a46a33169efa6bdd5d0e56b9f359fc"
-dependencies = [
- "jsonrpc-core",
- "jsonrpc-server-utils",
- "log",
- "parking_lot 0.10.2",
- "tokio-service",
-]
-
-[[package]]
-name = "jsonrpc-ws-server"
-version = "15.0.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "436a92034d0137ab3e3c64a7a6350b428f31cb4d7d1a89f284bcdbcd98a7bc56"
-dependencies = [
- "jsonrpc-core",
- "jsonrpc-server-utils",
- "log",
- "parity-ws",
- "parking_lot 0.10.2",
- "slab 0.4.2",
-]
-
-[[package]]
-name = "keccak-hash"
-version = "0.5.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1f58a51ef3df9398cf2434bea8d4eb61fb748d0feb1571f87388579a120a4c8f"
-dependencies = [
- "primitive-types 0.7.2",
- "tiny-keccak 2.0.2",
-]
-
-[[package]]
-name = "keccak-hasher"
-version = "0.1.1"
-dependencies = [
- "ethereum-types 0.9.2",
- "hash-db 0.11.0",
- "plain_hasher",
- "tiny-keccak 1.5.0",
-]
-
-[[package]]
-name = "keccak-hasher"
-version = "0.11.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "cb9d3670023f4c04153d90b8a557a822d1b27ed702bb015a87cf7bffead5b611"
-dependencies = [
- "hash-db 0.11.0",
- "hash256-std-hasher 0.11.0",
- "tiny-keccak 1.5.0",
-]
-
-[[package]]
-name = "keccak-hasher"
-version = "0.15.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "711adba9940a039f4374fc5724c0a5eaca84a2d558cce62256bfe26f0dbef05e"
-dependencies = [
- "hash-db 0.15.2",
- "hash256-std-hasher 0.15.2",
- "tiny-keccak 2.0.2",
-]
-
-[[package]]
-name = "kernel32-sys"
-version = "0.2.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7507624b29483431c0ba2d82aece8ca6cdba9382bff4ddd0f7490560c056098d"
-dependencies = [
- "winapi 0.2.8",
- "winapi-build",
-]
-
-[[package]]
-name = "kvdb"
-version = "0.1.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c1b2f251f01a7224426abdb2563707d856f7de995d821744fd8fa8e2874f69e3"
-dependencies = [
- "elastic-array",
- "parity-bytes",
-]
-
-[[package]]
-name = "kvdb-memorydb"
-version = "0.1.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "45bcdf5eb083602cff61a6f8438dce2a7900d714e893fc48781c39fb119d37aa"
-dependencies = [
- "kvdb",
- "parking_lot 0.6.4",
-]
-
-[[package]]
-name = "kvdb-rocksdb"
-version = "0.1.6"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d5c5f57ad492ecfb9e2a91614ff0204bda82e41f832bebd64cd03ffecb74e02b"
-dependencies = [
- "elastic-array",
- "fs-swap",
- "interleaved-ordered",
- "kvdb",
- "log",
- "num_cpus",
- "parity-rocksdb",
- "parking_lot 0.9.0",
- "regex 1.3.9",
-]
-
-[[package]]
-name = "language-tags"
-version = "0.2.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a91d884b6667cd606bb5a69aa0c99ba811a115fc68915e7056ec08a46e93199a"
-
-[[package]]
-name = "lazy_static"
-version = "1.4.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e2abad23fbc42b3700f2f279844dc832adb2b2eb069b2df918f455c4e18cc646"
-
-[[package]]
-name = "lazycell"
-version = "1.2.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b294d6fa9ee409a054354afc4352b0b9ef7ca222c69b8812cbea9e7d2bf3783f"
-
-[[package]]
-name = "len-caching-lock"
-version = "0.1.1"
-dependencies = [
- "parking_lot 0.11.1",
-]
-
-[[package]]
-name = "libc"
-version = "0.2.89"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "538c092e5586f4cdd7dd8078c4a79220e3e168880218124dcbce860f0ea938c6"
-
-[[package]]
-name = "libloading"
-version = "0.5.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f2b111a074963af1d37a139918ac6d49ad1d0d5e47f72fd55388619691a7d753"
-dependencies = [
- "cc",
- "winapi 0.3.8",
-]
-
-[[package]]
-name = "linked-hash-map"
-version = "0.5.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8dd5a6d5999d9907cda8ed67bbd137d3af8085216c2ac62de5be860bd41f304a"
-
-[[package]]
-name = "local-encoding"
-version = "0.2.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e1ceb20f39ff7ae42f3ff9795f3986b1daad821caaa1e1732a0944103a5a1a66"
-dependencies = [
- "kernel32-sys",
- "skeptic",
- "winapi 0.2.8",
-]
-
-[[package]]
-name = "lock_api"
-version = "0.1.5"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "62ebf1391f6acad60e5c8b43706dde4582df75c06698ab44511d15016bc2442c"
-dependencies = [
- "owning_ref",
- "scopeguard 0.3.3",
-]
-
-[[package]]
-name = "lock_api"
-version = "0.3.4"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c4da24a77a3d8a6d4862d95f72e6fdb9c09a643ecdb402d754004a557f2bec75"
-dependencies = [
- "scopeguard 1.1.0",
-]
-
-[[package]]
-name = "lock_api"
-version = "0.4.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5a3c91c24eae6777794bb1997ad98bbb87daf92890acab859f7eaa4320333176"
-dependencies = [
- "scopeguard 1.1.0",
-]
-
-[[package]]
-name = "log"
-version = "0.4.8"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "14b6052be84e6b71ab17edffc2eeabf5c2c3ae1fdb464aae35ac50c67a44e1f7"
-dependencies = [
- "cfg-if 0.1.10",
-]
-
-[[package]]
-name = "logos"
-version = "0.12.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "427e2abca5be13136da9afdbf874e6b34ad9001dd70f2b103b083a85daa7b345"
-dependencies = [
- "logos-derive",
-]
-
-[[package]]
-name = "logos-derive"
-version = "0.12.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "56a7d287fd2ac3f75b11f19a1c8a874a7d55744bd91f7a1b3e7cf87d4343c36d"
-dependencies = [
- "beef",
- "fnv",
- "proc-macro2 1.0.36",
- "quote 1.0.7",
- "regex-syntax 0.6.18",
- "syn 1.0.86",
- "utf8-ranges",
-]
-
-[[package]]
-name = "lru"
-version = "0.5.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "35c456c123957de3a220cd03786e0d86aa542a88b46029973b542f426da6ef34"
-dependencies = [
- "hashbrown 0.6.3",
-]
-
-[[package]]
-name = "lru-cache"
-version = "0.1.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "31e24f1ad8321ca0e8a1e0ac13f23cb668e6f5466c2c57319f6a5cf1cc8e3b1c"
-dependencies = [
- "linked-hash-map",
-]
-
-[[package]]
-name = "macros"
-version = "0.1.0"
-
-[[package]]
-name = "maplit"
-version = "1.0.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3e2e65a1a2e43cfcb47a895c4c8b10d1f4a61097f9f254f183aee60cad9c651d"
-
-[[package]]
-name = "matches"
-version = "0.1.8"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7ffc5c5338469d4d3ea17d269fa8ea3512ad247247c30bd2df69e68309ed0a08"
-
-[[package]]
-name = "maybe-uninit"
-version = "2.0.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "60302e4db3a61da70c0cb7991976248362f30319e88850c487b9b95bbf059e00"
-
-[[package]]
-name = "memchr"
-version = "2.2.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "88579771288728879b57485cc7d6b07d648c9f0141eb955f8ab7f9d45394468e"
-dependencies = [
- "libc",
-]
-
-[[package]]
-name = "memmap"
-version = "0.6.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e2ffa2c986de11a9df78620c01eeaaf27d94d3ff02bf81bfcca953102dd0c6ff"
-dependencies = [
- "libc",
- "winapi 0.3.8",
-]
-
-[[package]]
-name = "memoffset"
-version = "0.5.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4a85c1a8c329f11437034d7313dca647c79096523533a1c79e86f1d0f657c7cc"
-dependencies = [
- "rustc_version",
-]
-
-[[package]]
-name = "memory-cache"
-version = "0.1.0"
-dependencies = [
- "lru-cache",
- "parity-util-mem",
-]
-
-[[package]]
-name = "memory-db"
-version = "0.11.0"
-dependencies = [
- "criterion 0.2.11",
- "hash-db 0.11.0",
- "keccak-hasher 0.11.0",
- "parity-util-mem",
-]
-
-[[package]]
-name = "memory-db"
-version = "0.11.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "94da53143d45f6bad3753f532e56ad57a6a26c0ca6881794583310c7cb4c885f"
-dependencies = [
- "hash-db 0.11.0",
- "heapsize",
-]
-
-[[package]]
-name = "memory_units"
-version = "0.3.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "71d96e3f3c0b6325d8ccd83c33b28acb183edcb6c67938ba104ec546854b0882"
-
-[[package]]
-name = "memzero"
-version = "0.1.0"
-
-[[package]]
-name = "migration-rocksdb"
-version = "0.1.0"
-dependencies = [
- "kvdb",
- "kvdb-rocksdb",
- "log",
- "macros",
- "tempdir",
-]
-
-[[package]]
-name = "mime"
-version = "0.3.14"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "dd1d63acd1b78403cc0c325605908475dd9b9a3acbf65ed8bcab97e27014afcf"
-
-[[package]]
-name = "miniz_oxide"
-version = "0.4.4"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a92518e98c078586bc6c934028adcca4c92a53d6a958196de835170a01d84e4b"
-dependencies = [
- "adler",
- "autocfg 1.0.0",
-]
-
-[[package]]
-name = "mio"
-version = "0.6.22"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "fce347092656428bc8eaf6201042cb551b8d67855af7374542a92a0fbfcac430"
-dependencies = [
- "cfg-if 0.1.10",
- "fuchsia-zircon",
- "fuchsia-zircon-sys",
- "iovec",
- "kernel32-sys",
- "libc",
- "log",
- "miow 0.2.1",
- "net2",
- "slab 0.4.2",
- "winapi 0.2.8",
-]
-
-[[package]]
-name = "mio-extras"
-version = "2.0.5"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "46e73a04c2fa6250b8d802134d56d554a9ec2922bf977777c805ea5def61ce40"
-dependencies = [
- "lazycell",
- "log",
- "mio",
- "slab 0.4.2",
-]
-
-[[package]]
-name = "mio-named-pipes"
-version = "0.1.6"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f5e374eff525ce1c5b7687c4cef63943e7686524a387933ad27ca7ec43779cb3"
-dependencies = [
- "log",
- "mio",
- "miow 0.3.7",
- "winapi 0.3.8",
-]
-
-[[package]]
-name = "mio-uds"
-version = "0.6.7"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "966257a94e196b11bb43aca423754d87429960a768de9414f3691d6957abf125"
-dependencies = [
- "iovec",
- "libc",
- "mio",
-]
-
-[[package]]
-name = "miow"
-version = "0.2.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8c1f2f3b1cf331de6896aabf6e9d55dca90356cc9960cca7eaaf408a355ae919"
-dependencies = [
- "kernel32-sys",
- "net2",
- "winapi 0.2.8",
- "ws2_32-sys",
-]
-
-[[package]]
-name = "miow"
-version = "0.3.7"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b9f1c5b025cda876f66ef43a113f91ebc9f4ccef34843000e0adf6ebbab84e21"
-dependencies = [
- "winapi 0.3.8",
-]
-
-[[package]]
-name = "nan-preserving-float"
-version = "0.1.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "34d4f00fcc2f4c9efa8cc971db0da9e28290e28e97af47585e48691ef10ff31f"
-
-[[package]]
-name = "net2"
-version = "0.2.33"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "42550d9fb7b6684a6d404d9fa7250c2eb2646df731d1c06afc06dcee9e1bcf88"
-dependencies = [
- "cfg-if 0.1.10",
- "libc",
- "winapi 0.3.8",
-]
-
-[[package]]
-name = "node-filter"
-version = "1.12.0"
-dependencies = [
- "ethabi 12.0.0",
- "ethabi-contract",
- "ethabi-derive",
- "ethcore",
- "ethcore-io",
- "ethcore-network",
- "ethcore-network-devp2p",
- "ethereum-types 0.9.2",
- "kvdb-memorydb",
- "log",
- "lru-cache",
- "parking_lot 0.11.1",
- "tempdir",
-]
-
-[[package]]
-name = "nodrop"
-version = "0.1.14"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "72ef4a56884ca558e5ddb05a1d1e7e1bfd9a68d9ed024c21704cc98872dae1bb"
-
-[[package]]
-name = "num"
-version = "0.1.42"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4703ad64153382334aa8db57c637364c322d3372e097840c72000dabdcf6156e"
-dependencies = [
- "num-bigint 0.1.44",
- "num-integer",
- "num-iter",
- "num-traits 0.2.8",
-]
-
-[[package]]
-name = "num-bigint"
-version = "0.1.44"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e63899ad0da84ce718c14936262a41cee2c79c981fc0a0e7c7beb47d5a07e8c1"
-dependencies = [
- "num-integer",
- "num-traits 0.2.8",
- "rand 0.4.6",
- "rustc-serialize",
-]
-
-[[package]]
-name = "num-bigint"
-version = "0.2.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f9c3f34cdd24f334cb265d9bf8bfa8a241920d026916785747a92f0e55541a1a"
-dependencies = [
- "autocfg 0.1.7",
- "num-integer",
- "num-traits 0.2.8",
-]
-
-[[package]]
-name = "num-integer"
-version = "0.1.41"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b85e541ef8255f6cf42bbfe4ef361305c6c135d10919ecc26126c4e5ae94bc09"
-dependencies = [
- "autocfg 0.1.7",
- "num-traits 0.2.8",
-]
-
-[[package]]
-name = "num-iter"
-version = "0.1.39"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "76bd5272412d173d6bf9afdf98db8612bbabc9a7a830b7bfc9c188911716132e"
-dependencies = [
- "autocfg 0.1.7",
- "num-integer",
- "num-traits 0.2.8",
-]
-
-[[package]]
-name = "num-traits"
-version = "0.1.43"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "92e5113e9fd4cc14ded8e499429f396a20f98c772a47cc8622a736e1ec843c31"
-dependencies = [
- "num-traits 0.2.8",
-]
-
-[[package]]
-name = "num-traits"
-version = "0.2.8"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6ba9a427cfca2be13aa6f6403b0b7e7368fe982bfa16fccc450ce74c46cd9b32"
-dependencies = [
- "autocfg 0.1.7",
-]
-
-[[package]]
-name = "num_cpus"
-version = "1.11.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "155394f924cdddf08149da25bfb932d226b4a593ca7468b08191ff6335941af5"
-dependencies = [
- "hermit-abi",
- "libc",
-]
-
-[[package]]
-name = "number_prefix"
-version = "0.2.8"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "dbf9993e59c894e3c08aa1c2712914e9e6bf1fcbfc6bef283e2183df345a4fee"
-dependencies = [
- "num-traits 0.2.8",
-]
-
-[[package]]
-name = "object"
-version = "0.23.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a9a7ab5d64814df0fe4a4b5ead45ed6c5f181ee3ff04ba344313a6c80446c5d4"
-
-[[package]]
-name = "oe-rpc-common"
-version = "0.0.0"
-dependencies = [
- "rustc-hex 1.0.0",
- "serde",
- "serde_json",
-]
-
-[[package]]
-name = "oe-rpc-servers"
-version = "0.0.0"
-dependencies = [
- "jsonrpc-core",
- "jsonrpc-http-server",
- "jsonrpc-ipc-server",
- "jsonrpc-ws-server",
-]
-
-[[package]]
-name = "ole32-sys"
-version = "0.2.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5d2c49021782e5233cd243168edfa8037574afed4eba4bbaf538b3d8d1789d8c"
-dependencies = [
- "winapi 0.2.8",
- "winapi-build",
-]
-
-[[package]]
-name = "once_cell"
-version = "1.4.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0b631f7e854af39a1739f401cf34a8a013dfe09eac4fa4dba91e9768bd28168d"
-
-[[package]]
-name = "opaque-debug"
-version = "0.2.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2839e79665f131bdb5782e51f2c6c9599c133c6098982a54c794358bf432529c"
-
-[[package]]
-name = "openethereum"
-version = "3.3.5"
-dependencies = [
- "ansi_term 0.10.2",
- "atty",
- "blooms-db",
- "clap",
- "cli-signer",
- "common-types",
- "crossbeam-channel",
- "ctrlc",
- "dir",
- "docopt",
- "ethcore",
- "ethcore-accounts",
- "ethcore-blockchain",
- "ethcore-call-contract",
- "ethcore-db",
- "ethcore-io",
- "ethcore-logger",
- "ethcore-miner",
- "ethcore-network",
- "ethcore-service",
- "ethcore-sync",
- "ethereum-types 0.9.2",
- "ethkey",
- "ethstore",
- "fake-fetch",
- "fdlimit",
- "fetch",
- "futures",
- "hyper 0.12.35",
- "ipnetwork",
- "journaldb",
- "jsonrpc-core",
- "keccak-hash",
- "kvdb",
- "kvdb-rocksdb",
- "lazy_static",
- "log",
- "migration-rocksdb",
- "node-filter",
- "num_cpus",
- "number_prefix",
- "oe-rpc-common",
- "oe-rpc-servers",
- "panic_hook",
- "parity-bytes",
- "parity-crypto",
- "parity-daemonize",
- "parity-local-store",
- "parity-path",
- "parity-rpc",
- "parity-runtime",
- "parity-version",
- "parking_lot 0.11.1",
- "pretty_assertions",
- "prometheus",
- "regex 1.3.9",
- "rlp",
- "rpassword",
- "rustc-hex 1.0.0",
- "rustc_version",
- "semver",
- "serde",
- "serde_derive",
- "serde_json",
- "stats",
- "tempdir",
- "term_size",
- "textwrap 0.9.0",
- "toml 0.4.10",
- "winapi 0.3.8",
-]
-
-[[package]]
-name = "order-stat"
-version = "0.1.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "efa535d5117d3661134dbf1719b6f0ffe06f2375843b13935db186cd094105eb"
-
-[[package]]
-name = "owning_ref"
-version = "0.4.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "49a4b8ea2179e6a2e27411d3bca09ca6dd630821cf6894c6c7c8467a8ee7ef13"
-dependencies = [
- "stable_deref_trait",
-]
-
-[[package]]
-name = "panic_hook"
-version = "0.1.0"
-dependencies = [
- "backtrace",
-]
-
-[[package]]
-name = "parity-bytes"
-version = "0.1.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0c276d76c5333b8c2579e02d49a06733a55b8282d2d9b13e8d53b6406bd7e30a"
-
-[[package]]
-name = "parity-crypto"
-version = "0.6.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "88e15b5e11d7a4829490630a797c537a68c9e864a139f56fe7a1e6a51f0da25d"
-dependencies = [
- "aes",
- "aes-ctr",
- "block-modes",
- "digest",
- "ethereum-types 0.9.2",
- "hmac",
- "lazy_static",
- "pbkdf2",
- "rand 0.7.3",
- "ripemd160",
- "rustc-hex 2.1.0",
- "scrypt",
- "secp256k1",
- "sha2",
- "subtle 2.3.0",
- "tiny-keccak 2.0.2",
- "zeroize",
-]
-
-[[package]]
-name = "parity-daemonize"
-version = "0.3.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "69b1910b2793ff52713fca0a4ee92544ebec59ccd218ea74560be6f947b4ca77"
-dependencies = [
- "ansi_term 0.11.0",
- "failure",
- "libc",
- "log",
- "mio",
-]
-
-[[package]]
-name = "parity-local-store"
-version = "0.1.0"
-dependencies = [
- "common-types",
- "ethcore-db",
- "ethcore-io",
- "ethkey",
- "kvdb",
- "kvdb-memorydb",
- "log",
- "parity-crypto",
- "rlp",
- "serde",
- "serde_derive",
- "serde_json",
-]
-
-[[package]]
-name = "parity-path"
-version = "0.1.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7b027aab22527061b7005cecf7805e8f42eed94ce89e76bac3a6035394b56627"
-dependencies = [
- "home 0.5.1",
-]
-
-[[package]]
-name = "parity-rocksdb"
-version = "0.5.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2d17caf6640e24b70242f3f48615e3f0764f98871e8c7aea25584e29833eb5a8"
-dependencies = [
- "libc",
- "local-encoding",
- "parity-rocksdb-sys",
-]
-
-[[package]]
-name = "parity-rocksdb-sys"
-version = "0.5.6"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9581e6b8c63f3808500638372ee56faaaffb57c4d349974bff591606b94d5f57"
-dependencies = [
- "cmake",
- "libc",
- "local-encoding",
- "parity-snappy-sys",
-]
-
-[[package]]
-name = "parity-rpc"
-version = "1.12.0"
-dependencies = [
- "ansi_term 0.10.2",
- "common-types",
- "eip-712",
- "ethash",
- "ethcore",
- "ethcore-accounts",
- "ethcore-io",
- "ethcore-logger",
- "ethcore-miner",
- "ethcore-network",
- "ethcore-sync",
- "ethereum-types 0.9.2",
- "ethjson",
- "ethkey",
- "ethstore",
- "fake-fetch",
- "fetch",
- "futures",
- "itertools 0.5.10",
- "jsonrpc-core",
- "jsonrpc-derive",
- "jsonrpc-http-server",
- "jsonrpc-ipc-server",
- "jsonrpc-pubsub",
- "jsonrpc-ws-server",
- "keccak-hash",
- "log",
- "macros",
- "oe-rpc-common",
- "oe-rpc-servers",
- "order-stat",
- "parity-bytes",
- "parity-crypto",
- "parity-runtime",
- "parity-version",
- "parking_lot 0.11.1",
- "pretty_assertions",
- "rand 0.7.3",
- "rand_xorshift 0.2.0",
- "rlp",
- "rustc-hex 1.0.0",
- "serde",
- "serde_derive",
- "serde_json",
- "stats",
- "tempdir",
- "tiny-keccak 1.5.0",
- "tokio-timer 0.1.2",
- "transient-hashmap",
- "txpool",
- "vm",
-]
-
-[[package]]
-name = "parity-rpc-client"
-version = "1.4.0"
-dependencies = [
- "ethereum-types 0.9.2",
- "futures",
- "jsonrpc-core",
- "jsonrpc-ws-server",
- "keccak-hash",
- "log",
- "matches",
- "parity-rpc",
- "parking_lot 0.9.0",
- "serde",
- "serde_json",
- "url 2.1.0",
-]
-
-[[package]]
-name = "parity-runtime"
-version = "0.1.0"
-dependencies = [
- "futures",
- "tokio",
-]
-
-[[package]]
-name = "parity-scale-codec"
-version = "1.3.5"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7c740e5fbcb6847058b40ac7e5574766c6388f585e184d769910fe0d3a2ca861"
-dependencies = [
- "arrayvec 0.5.1",
- "bitvec",
- "byte-slice-cast",
- "serde",
-]
-
-[[package]]
-name = "parity-snappy"
-version = "0.1.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e2c5f9d149b13134b8b354d93a92830efcbee6fe5b73a2e6e540fe70d4dd8a63"
-dependencies = [
- "libc",
- "parity-snappy-sys",
-]
-
-[[package]]
-name = "parity-snappy-sys"
-version = "0.1.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1a413d51e5e1927320c9de992998e4a279dffb8c8a7363570198bd8383e66f1b"
-dependencies = [
- "cmake",
- "libc",
-]
-
-[[package]]
-name = "parity-tokio-ipc"
-version = "0.4.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1e57fea504fea33f9fbb5f49f378359030e7e026a6ab849bb9e8f0787376f1bf"
-dependencies = [
- "bytes",
- "futures",
- "libc",
- "log",
- "mio-named-pipes",
- "miow 0.3.7",
- "rand 0.7.3",
- "tokio",
- "tokio-named-pipes",
- "tokio-uds",
- "winapi 0.3.8",
-]
-
-[[package]]
-name = "parity-util-mem"
-version = "0.7.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "297ff91fa36aec49ce183484b102f6b75b46776822bd81525bfc4cc9b0dd0f5c"
-dependencies = [
- "cfg-if 0.1.10",
- "ethereum-types 0.9.2",
- "hashbrown 0.8.2",
- "impl-trait-for-tuples",
- "lru",
- "parity-util-mem-derive",
- "parking_lot 0.10.2",
- "primitive-types 0.7.2",
- "smallvec 1.6.1",
- "winapi 0.3.8",
-]
-
-[[package]]
-name = "parity-util-mem-derive"
-version = "0.1.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f557c32c6d268a07c921471619c0295f5efad3a0e76d4f97a05c091a51d110b2"
-dependencies = [
- "proc-macro2 1.0.36",
- "syn 1.0.86",
- "synstructure",
-]
-
-[[package]]
-name = "parity-version"
-version = "3.3.5"
-dependencies = [
- "parity-bytes",
- "rlp",
- "rustc_version",
- "target_info",
- "toml 0.4.10",
- "vergen",
-]
-
-[[package]]
-name = "parity-wasm"
-version = "0.31.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "511379a8194230c2395d2f5fa627a5a7e108a9f976656ce723ae68fca4097bfc"
-dependencies = [
- "byteorder",
-]
-
-[[package]]
-name = "parity-wordlist"
-version = "1.3.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "573d08f0d3bc8a6ffcdac1de2725b5daeed8db26345a9c12d91648e2d6457f3e"
-dependencies = [
- "lazy_static",
- "rand 0.6.5",
-]
-
-[[package]]
-name = "parity-ws"
-version = "0.10.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9e02a625dd75084c2a7024f07c575b61b782f729d18702dabb3cdbf31911dc61"
-dependencies = [
- "byteorder",
- "bytes",
- "httparse",
- "log",
- "mio",
- "mio-extras",
- "rand 0.7.3",
- "sha-1",
- "slab 0.4.2",
- "url 2.1.0",
-]
-
-[[package]]
-name = "parking_lot"
-version = "0.6.4"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f0802bff09003b291ba756dc7e79313e51cc31667e94afbe847def490424cde5"
-dependencies = [
- "lock_api 0.1.5",
- "parking_lot_core 0.3.1",
-]
-
-[[package]]
-name = "parking_lot"
-version = "0.9.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f842b1982eb6c2fe34036a4fbfb06dd185a3f5c8edfaacdf7d1ea10b07de6252"
-dependencies = [
- "lock_api 0.3.4",
- "parking_lot_core 0.6.2",
- "rustc_version",
-]
-
-[[package]]
-name = "parking_lot"
-version = "0.10.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d3a704eb390aafdc107b0e392f56a82b668e3a71366993b5340f5833fd62505e"
-dependencies = [
- "lock_api 0.3.4",
- "parking_lot_core 0.7.2",
-]
-
-[[package]]
-name = "parking_lot"
-version = "0.11.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6d7744ac029df22dca6284efe4e898991d28e3085c706c972bcd7da4a27a15eb"
-dependencies = [
- "instant",
- "lock_api 0.4.3",
- "parking_lot_core 0.8.3",
-]
-
-[[package]]
-name = "parking_lot_core"
-version = "0.3.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ad7f7e6ebdc79edff6fdcb87a55b620174f7a989e3eb31b65231f4af57f00b8c"
-dependencies = [
- "libc",
- "rand 0.5.6",
- "rustc_version",
- "smallvec 0.6.13",
- "winapi 0.3.8",
-]
-
-[[package]]
-name = "parking_lot_core"
-version = "0.6.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b876b1b9e7ac6e1a74a6da34d25c42e17e8862aa409cbbbdcfc8d86c6f3bc62b"
-dependencies = [
- "cfg-if 0.1.10",
- "cloudabi",
- "libc",
- "redox_syscall 0.1.56",
- "rustc_version",
- "smallvec 0.6.13",
- "winapi 0.3.8",
-]
-
-[[package]]
-name = "parking_lot_core"
-version = "0.7.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d58c7c768d4ba344e3e8d72518ac13e259d7c7ade24167003b8488e10b6740a3"
-dependencies = [
- "cfg-if 0.1.10",
- "cloudabi",
- "libc",
- "redox_syscall 0.1.56",
- "smallvec 1.6.1",
- "winapi 0.3.8",
-]
-
-[[package]]
-name = "parking_lot_core"
-version = "0.8.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "fa7a782938e745763fe6907fc6ba86946d72f49fe7e21de074e08128a99fb018"
-dependencies = [
- "backtrace",
- "cfg-if 1.0.0",
- "instant",
- "libc",
- "petgraph",
- "redox_syscall 0.2.5",
- "smallvec 1.6.1",
- "thread-id",
- "winapi 0.3.8",
-]
-
-[[package]]
-name = "patricia-trie-ethereum"
-version = "0.1.0"
-dependencies = [
- "elastic-array",
- "ethereum-types 0.9.2",
- "hash-db 0.11.0",
- "journaldb",
- "keccak-hash",
- "keccak-hasher 0.1.1",
- "memory-db 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)",
- "parity-bytes",
- "rlp",
- "trie-db",
-]
-
-[[package]]
-name = "pbkdf2"
-version = "0.3.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "006c038a43a45995a9670da19e67600114740e8511d4333bf97a56e66a7542d9"
-dependencies = [
- "base64 0.9.3",
- "byteorder",
- "crypto-mac",
- "hmac",
- "rand 0.5.6",
- "sha2",
- "subtle 1.0.0",
-]
-
-[[package]]
-name = "percent-encoding"
-version = "1.0.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "31010dd2e1ac33d5b46a5b413495239882813e0369f8ed8a5e266f173602f831"
-
-[[package]]
-name = "percent-encoding"
-version = "2.1.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d4fd5641d01c8f18a23da7b6fe29298ff4b55afcccdf78973b24cf3175fee32e"
-
-[[package]]
-name = "petgraph"
-version = "0.5.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "467d164a6de56270bd7c4d070df81d07beace25012d5103ced4e9ff08d6afdb7"
-dependencies = [
- "fixedbitset",
- "indexmap",
-]
-
-[[package]]
-name = "plain_hasher"
-version = "0.2.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8f1c24f5061a6a53aaa21b0aaaa2e1beb5271a9ecc8c5bd7ae9ac92969070a2a"
-dependencies = [
- "crunchy 0.2.2",
-]
-
-[[package]]
-name = "ppv-lite86"
-version = "0.2.6"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "74490b50b9fbe561ac330df47c08f3f33073d2d00c150f719147d7c54522fa1b"
-
-[[package]]
-name = "pretty_assertions"
-version = "0.1.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2412f3332a07c7a2a50168988dcc184f32180a9758ad470390e5f55e089f6b6e"
-dependencies = [
- "difference",
-]
-
-[[package]]
-name = "price-info"
-version = "1.12.0"
-dependencies = [
- "fake-fetch",
- "fetch",
- "futures",
- "log",
- "parity-runtime",
- "parking_lot 0.11.1",
- "serde_json",
-]
-
-[[package]]
-name = "primal"
-version = "0.2.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0e31b86efadeaeb1235452171a66689682783149a6249ff334a2c5d8218d00a4"
-dependencies = [
- "primal-check",
- "primal-estimate",
- "primal-sieve",
-]
-
-[[package]]
-name = "primal-bit"
-version = "0.2.4"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "686a64e2f50194c64942992af5799e6b6e8775b8f88c607d72ed0a2fd58b9b21"
-dependencies = [
- "hamming",
-]
-
-[[package]]
-name = "primal-check"
-version = "0.2.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8e65f96c0a171f887198c274392c99a116ef65aa7f53f3b6d4902f493965c2d1"
-dependencies = [
- "num-integer",
-]
-
-[[package]]
-name = "primal-estimate"
-version = "0.2.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "56ea4531dde757b56906493c8604641da14607bf9cdaa80fb9c9cabd2429f8d5"
-
-[[package]]
-name = "primal-sieve"
-version = "0.2.9"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "da2d6ed369bb4b0273aeeb43f07c105c0117717cbae827b20719438eb2eb798c"
-dependencies = [
- "hamming",
- "primal-bit",
- "primal-estimate",
- "smallvec 0.6.13",
-]
-
-[[package]]
-name = "primitive-types"
-version = "0.5.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "83ef7b3b965c0eadcb6838f34f827e1dfb2939bdd5ebd43f9647e009b12b0371"
-dependencies = [
- "fixed-hash 0.4.0",
- "impl-codec",
- "impl-rlp",
- "impl-serde 0.2.3",
- "uint",
-]
-
-[[package]]
-name = "primitive-types"
-version = "0.7.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c55c21c64d0eaa4d7ed885d959ef2d62d9e488c27c0e02d9aa5ce6c877b7d5f8"
-dependencies = [
- "fixed-hash 0.6.1",
- "impl-codec",
- "impl-rlp",
- "impl-serde 0.3.1",
- "uint",
-]
-
-[[package]]
-name = "proc-macro-crate"
-version = "0.1.4"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e10d4b51f154c8a7fb96fd6dad097cb74b863943ec010ac94b9fd1be8861fe1e"
-dependencies = [
- "toml 0.5.5",
-]
-
-[[package]]
-name = "proc-macro-hack"
-version = "0.5.19"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "dbf0c48bc1d91375ae5c3cd81e3722dff1abcf81a30960240640d223f59fe0e5"
-
-[[package]]
-name = "proc-macro2"
-version = "0.4.30"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "cf3d2011ab5c909338f7887f4fc896d35932e29146c12c8d01da6b22a80ba759"
-dependencies = [
- "unicode-xid 0.1.0",
-]
-
-[[package]]
-name = "proc-macro2"
-version = "1.0.36"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c7342d5883fbccae1cc37a2353b09c87c9b0f3afd73f5fb9bba687a1f733b029"
-dependencies = [
- "unicode-xid 0.2.0",
-]
-
-[[package]]
-name = "prometheus"
-version = "0.9.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "dd0ced56dee39a6e960c15c74dc48849d614586db2eaada6497477af7c7811cd"
-dependencies = [
- "cfg-if 0.1.10",
- "fnv",
- "lazy_static",
- "protobuf",
- "spin",
- "thiserror",
-]
-
-[[package]]
-name = "protobuf"
-version = "2.16.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d883f78645c21b7281d21305181aa1f4dd9e9363e7cf2566c93121552cff003e"
-
-[[package]]
-name = "pulldown-cmark"
-version = "0.0.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8361e81576d2e02643b04950e487ec172b687180da65c731c03cf336784e6c07"
-dependencies = [
- "getopts",
-]
-
-[[package]]
-name = "pwasm-utils"
-version = "0.6.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "efb0dcbddbb600f47a7098d33762a00552c671992171637f5bb310b37fe1f0e4"
-dependencies = [
- "byteorder",
- "log",
- "parity-wasm",
-]
-
-[[package]]
-name = "quick-error"
-version = "1.2.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9274b940887ce9addde99c4eee6b5c44cc494b182b97e73dc8ffdcb3397fd3f0"
-
-[[package]]
-name = "quote"
-version = "0.6.13"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6ce23b6b870e8f94f81fb0a363d65d86675884b34a09043c81e5562f11c1f8e1"
-dependencies = [
- "proc-macro2 0.4.30",
-]
-
-[[package]]
-name = "quote"
-version = "1.0.7"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "aa563d17ecb180e500da1cfd2b028310ac758de548efdd203e18f283af693f37"
-dependencies = [
- "proc-macro2 1.0.36",
-]
-
-[[package]]
-name = "radium"
-version = "0.3.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "def50a86306165861203e7f84ecffbbdfdea79f0e51039b33de1e952358c47ac"
-
-[[package]]
-name = "rand"
-version = "0.3.23"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "64ac302d8f83c0c1974bf758f6b041c6c8ada916fbb44a609158ca8b064cc76c"
-dependencies = [
- "libc",
- "rand 0.4.6",
-]
-
-[[package]]
-name = "rand"
-version = "0.4.6"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "552840b97013b1a26992c11eac34bdd778e464601a4c2054b5f0bff7c6761293"
-dependencies = [
- "fuchsia-cprng",
- "libc",
- "rand_core 0.3.1",
- "rdrand",
- "winapi 0.3.8",
-]
-
-[[package]]
-name = "rand"
-version = "0.5.6"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c618c47cd3ebd209790115ab837de41425723956ad3ce2e6a7f09890947cacb9"
-dependencies = [
- "cloudabi",
- "fuchsia-cprng",
- "libc",
- "rand_core 0.3.1",
- "winapi 0.3.8",
-]
-
-[[package]]
-name = "rand"
-version = "0.6.5"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6d71dacdc3c88c1fde3885a3be3fbab9f35724e6ce99467f7d9c5026132184ca"
-dependencies = [
- "autocfg 0.1.7",
- "libc",
- "rand_chacha 0.1.1",
- "rand_core 0.4.2",
- "rand_hc 0.1.0",
- "rand_isaac",
- "rand_jitter",
- "rand_os 0.1.3",
- "rand_pcg",
- "rand_xorshift 0.1.1",
- "winapi 0.3.8",
-]
-
-[[package]]
-name = "rand"
-version = "0.7.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6a6b1679d49b24bbfe0c803429aa1874472f50d9b363131f0e89fc356b544d03"
-dependencies = [
- "getrandom 0.1.13",
- "libc",
- "rand_chacha 0.2.1",
- "rand_core 0.5.1",
- "rand_hc 0.2.0",
-]
-
-[[package]]
-name = "rand_chacha"
-version = "0.1.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "556d3a1ca6600bfcbab7c7c91ccb085ac7fbbcd70e008a98742e7847f4f7bcef"
-dependencies = [
- "autocfg 0.1.7",
- "rand_core 0.3.1",
-]
-
-[[package]]
-name = "rand_chacha"
-version = "0.2.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "03a2a90da8c7523f554344f921aa97283eadf6ac484a6d2a7d0212fa7f8d6853"
-dependencies = [
- "c2-chacha",
- "rand_core 0.5.1",
-]
-
-[[package]]
-name = "rand_core"
-version = "0.3.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7a6fdeb83b075e8266dcc8762c22776f6877a63111121f5f8c7411e5be7eed4b"
-dependencies = [
- "rand_core 0.4.2",
-]
-
-[[package]]
-name = "rand_core"
-version = "0.4.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9c33a3c44ca05fa6f1807d8e6743f3824e8509beca625669633be0acbdf509dc"
-
-[[package]]
-name = "rand_core"
-version = "0.5.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "90bde5296fc891b0cef12a6d03ddccc162ce7b2aff54160af9338f8d40df6d19"
-dependencies = [
- "getrandom 0.1.13",
-]
-
-[[package]]
-name = "rand_hc"
-version = "0.1.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7b40677c7be09ae76218dc623efbf7b18e34bced3f38883af07bb75630a21bc4"
-dependencies = [
- "rand_core 0.3.1",
-]
-
-[[package]]
-name = "rand_hc"
-version = "0.2.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ca3129af7b92a17112d59ad498c6f81eaf463253766b90396d39ea7a39d6613c"
-dependencies = [
- "rand_core 0.5.1",
-]
-
-[[package]]
-name = "rand_isaac"
-version = "0.1.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ded997c9d5f13925be2a6fd7e66bf1872597f759fd9dd93513dd7e92e5a5ee08"
-dependencies = [
- "rand_core 0.3.1",
-]
-
-[[package]]
-name = "rand_jitter"
-version = "0.1.4"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1166d5c91dc97b88d1decc3285bb0a99ed84b05cfd0bc2341bdf2d43fc41e39b"
-dependencies = [
- "libc",
- "rand_core 0.4.2",
- "winapi 0.3.8",
-]
-
-[[package]]
-name = "rand_os"
-version = "0.1.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7b75f676a1e053fc562eafbb47838d67c84801e38fc1ba459e8f180deabd5071"
-dependencies = [
- "cloudabi",
- "fuchsia-cprng",
- "libc",
- "rand_core 0.4.2",
- "rdrand",
- "winapi 0.3.8",
-]
-
-[[package]]
-name = "rand_os"
-version = "0.2.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a788ae3edb696cfcba1c19bfd388cc4b8c21f8a408432b199c072825084da58a"
-dependencies = [
- "getrandom 0.1.13",
- "rand_core 0.5.1",
-]
-
-[[package]]
-name = "rand_pcg"
-version = "0.1.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "abf9b09b01790cfe0364f52bf32995ea3c39f4d2dd011eac241d2914146d0b44"
-dependencies = [
- "autocfg 0.1.7",
- "rand_core 0.4.2",
-]
-
-[[package]]
-name = "rand_xorshift"
-version = "0.1.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "cbf7e9e623549b0e21f6e97cf8ecf247c1a8fd2e8a992ae265314300b2455d5c"
-dependencies = [
- "rand_core 0.3.1",
-]
-
-[[package]]
-name = "rand_xorshift"
-version = "0.2.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "77d416b86801d23dde1aa643023b775c3a462efc0ed96443add11546cdf1dca8"
-dependencies = [
- "rand_core 0.5.1",
-]
-
-[[package]]
-name = "rand_xoshiro"
-version = "0.1.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "03b418169fb9c46533f326efd6eed2576699c44ca92d3052a066214a8d828929"
-dependencies = [
- "byteorder",
- "rand_core 0.3.1",
-]
-
-[[package]]
-name = "rand_xoshiro"
-version = "0.3.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0e18c91676f670f6f0312764c759405f13afb98d5d73819840cf72a518487bff"
-dependencies = [
- "rand_core 0.5.1",
-]
-
-[[package]]
-name = "rayon"
-version = "1.2.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "83a27732a533a1be0a0035a111fe76db89ad312f6f0347004c220c57f209a123"
-dependencies = [
- "crossbeam-deque 0.7.1",
- "either",
- "rayon-core",
-]
-
-[[package]]
-name = "rayon-core"
-version = "1.6.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "98dcf634205083b17d0861252431eb2acbfb698ab7478a2d20de07954f47ec7b"
-dependencies = [
- "crossbeam-deque 0.7.1",
- "crossbeam-queue 0.1.2",
- "crossbeam-utils 0.6.6",
- "lazy_static",
- "num_cpus",
-]
-
-[[package]]
-name = "rdrand"
-version = "0.4.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "678054eb77286b51581ba43620cc911abf02758c91f93f479767aed0f90458b2"
-dependencies = [
- "rand_core 0.3.1",
-]
-
-[[package]]
-name = "redox_syscall"
-version = "0.1.56"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2439c63f3f6139d1b57529d16bc3b8bb855230c8efcc5d3a896c8bea7c3b1e84"
-
-[[package]]
-name = "redox_syscall"
-version = "0.2.5"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "94341e4e44e24f6b591b59e47a8a027df12e008d73fd5672dbea9cc22f4507d9"
-dependencies = [
- "bitflags 1.2.1",
-]
-
-[[package]]
-name = "regex"
-version = "0.2.11"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9329abc99e39129fcceabd24cf5d85b4671ef7c29c50e972bc5afe32438ec384"
-dependencies = [
- "aho-corasick 0.6.10",
- "memchr",
- "regex-syntax 0.5.6",
- "thread_local 0.3.6",
- "utf8-ranges",
-]
-
-[[package]]
-name = "regex"
-version = "1.3.9"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9c3780fcf44b193bc4d09f36d2a3c87b251da4a046c87795a0d35f4f927ad8e6"
-dependencies = [
- "aho-corasick 0.7.6",
- "memchr",
- "regex-syntax 0.6.18",
- "thread_local 1.0.1",
-]
-
-[[package]]
-name = "regex-automata"
-version = "0.1.8"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "92b73c2a1770c255c240eaa4ee600df1704a38dc3feaa6e949e7fcd4f8dc09f9"
-dependencies = [
- "byteorder",
-]
-
-[[package]]
-name = "regex-syntax"
-version = "0.5.6"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7d707a4fa2637f2dca2ef9fd02225ec7661fe01a53623c1e6515b6916511f7a7"
-dependencies = [
- "ucd-util",
-]
-
-[[package]]
-name = "regex-syntax"
-version = "0.6.18"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "26412eb97c6b088a6997e05f69403a802a92d520de2f8e63c2b65f9e0f47c4e8"
-
-[[package]]
-name = "relay"
-version = "0.1.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1576e382688d7e9deecea24417e350d3062d97e32e45d70b1cde65994ff1489a"
-dependencies = [
- "futures",
-]
-
-[[package]]
-name = "remove_dir_all"
-version = "0.5.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4a83fa3702a688b9359eccba92d153ac33fd2e8462f9e0e3fdf155239ea7792e"
-dependencies = [
- "winapi 0.3.8",
-]
-
-[[package]]
-name = "reth-util"
-version = "0.1.0"
-source = "git+https://github.com/gnosis/reth.git?rev=573e128#573e128487d5651f301e21faa97fc8e80f91dee8"
-
-[[package]]
-name = "ring"
-version = "0.14.6"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "426bc186e3e95cac1e4a4be125a4aca7e84c2d616ffc02244eef36e2a60a093c"
-dependencies = [
- "cc",
- "lazy_static",
- "libc",
- "spin",
- "untrusted",
- "winapi 0.3.8",
-]
-
-[[package]]
-name = "ripemd160"
-version = "0.8.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ad5112e0dbbb87577bfbc56c42450235e3012ce336e29c5befd7807bd626da4a"
-dependencies = [
- "block-buffer",
- "digest",
- "opaque-debug",
-]
-
-[[package]]
-name = "rlp"
-version = "0.4.6"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1190dcc8c3a512f1eef5d09bb8c84c7f39e1054e174d1795482e18f5272f2e73"
-dependencies = [
- "rustc-hex 2.1.0",
-]
-
-[[package]]
-name = "rlp-derive"
-version = "0.1.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e33d7b2abe0c340d8797fe2907d3f20d3b5ea5908683618bfe80df7f621f672a"
-dependencies = [
- "proc-macro2 1.0.36",
- "quote 1.0.7",
- "syn 1.0.86",
-]
-
-[[package]]
-name = "rlp_compress"
-version = "0.1.0"
-dependencies = [
- "elastic-array",
- "lazy_static",
- "rlp",
-]
-
-[[package]]
-name = "rlp_derive"
-version = "0.1.0"
-dependencies = [
- "proc-macro2 0.4.30",
- "quote 0.6.13",
- "rlp",
- "syn 0.15.26",
-]
-
-[[package]]
-name = "rpassword"
-version = "1.0.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b273c91bd242ca03ad6d71c143b6f17a48790e61f21a6c78568fa2b6774a24a4"
-dependencies = [
- "kernel32-sys",
- "libc",
- "rprompt",
- "winapi 0.2.8",
-]
-
-[[package]]
-name = "rprompt"
-version = "1.0.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1601f32bc5858aae3cbfa1c645c96c4d820cc5c16be0194f089560c00b6eb625"
-
-[[package]]
-name = "rust-crypto"
-version = "0.2.36"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f76d05d3993fd5f4af9434e8e436db163a12a9d40e1a58a726f27a01dfd12a2a"
-dependencies = [
- "gcc",
- "libc",
- "rand 0.3.23",
- "rustc-serialize",
- "time",
-]
-
-[[package]]
-name = "rustc-demangle"
-version = "0.1.16"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4c691c0e608126e00913e33f0ccf3727d5fc84573623b8d65b2df340b5201783"
-
-[[package]]
-name = "rustc-hex"
-version = "1.0.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0ceb8ce7a5e520de349e1fa172baeba4a9e8d5ef06c47471863530bc4972ee1e"
-
-[[package]]
-name = "rustc-hex"
-version = "2.1.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3e75f6a532d0fd9f7f13144f392b6ad56a32696bfcd9c78f797f16bbb6f072d6"
-
-[[package]]
-name = "rustc-serialize"
-version = "0.3.24"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "dcf128d1287d2ea9d80910b5f1120d0b8eede3fbf1abe91c40d39ea7d51e6fda"
-
-[[package]]
-name = "rustc_version"
-version = "0.2.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "138e3e0acb6c9fb258b19b67cb8abd63c00679d2851805ea151465464fe9030a"
-dependencies = [
- "semver",
-]
-
-[[package]]
-name = "rustls"
-version = "0.15.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f271e3552cd835fa28c541c34a7e8fdd8cdff09d77fe4eb8f6c42e87a11b096e"
-dependencies = [
- "base64 0.10.1",
- "log",
- "ring",
- "sct",
- "untrusted",
- "webpki",
-]
-
-[[package]]
-name = "ryu"
-version = "1.0.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "bfa8506c1de11c9c4e4c38863ccbe02a305c8188e85a05a784c9e11e1c3910c8"
-
-[[package]]
-name = "safemem"
-version = "0.3.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ef703b7cb59335eae2eb93ceb664c0eb7ea6bf567079d843e09420219668e072"
-
-[[package]]
-name = "same-file"
-version = "1.0.5"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "585e8ddcedc187886a30fa705c47985c3fa88d06624095856b36ca0b82ff4421"
-dependencies = [
- "winapi-util",
-]
-
-[[package]]
-name = "scoped-tls"
-version = "0.1.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "332ffa32bf586782a3efaeb58f127980944bbc8c4d6913a86107ac2a5ab24b28"
-
-[[package]]
-name = "scopeguard"
-version = "0.3.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "94258f53601af11e6a49f722422f6e3425c52b06245a5cf9bc09908b174f5e27"
-
-[[package]]
-name = "scopeguard"
-version = "1.1.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d29ab0c6d3fc0ee92fe66e2d99f700eab17a8d57d1c1d3b748380fb20baa78cd"
-
-[[package]]
-name = "scrypt"
-version = "0.2.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "656c79d0e90d0ab28ac86bf3c3d10bfbbac91450d3f190113b4e76d9fec3cfdd"
-dependencies = [
- "byte-tools",
- "byteorder",
- "hmac",
- "pbkdf2",
- "sha2",
-]
-
-[[package]]
-name = "sct"
-version = "0.5.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2f5adf8fbd58e1b1b52699dc8bed2630faecb6d8c7bee77d009d6bbe4af569b9"
-dependencies = [
- "ring",
- "untrusted",
-]
-
-[[package]]
-name = "secp256k1"
-version = "0.17.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2932dc07acd2066ff2e3921a4419606b220ba6cd03a9935123856cc534877056"
-dependencies = [
- "rand 0.6.5",
- "secp256k1-sys",
-]
-
-[[package]]
-name = "secp256k1-sys"
-version = "0.1.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7ab2c26f0d3552a0f12e639ae8a64afc2e3db9c52fe32f5fc6c289d38519f220"
-dependencies = [
- "cc",
-]
-
-[[package]]
-name = "semver"
-version = "0.9.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1d7eb9ef2c18661902cc47e535f9bc51b78acd254da71d375c2f6720d9a40403"
-dependencies = [
- "semver-parser",
- "serde",
-]
-
-[[package]]
-name = "semver-parser"
-version = "0.7.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "388a1df253eca08550bef6c72392cfe7c30914bf41df5269b68cbd6ff8f570a3"
-
-[[package]]
-name = "serde"
-version = "1.0.102"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0c4b39bd9b0b087684013a792c59e3e07a46a01d2322518d8a1104641a0b1be0"
-dependencies = [
- "serde_derive",
-]
-
-[[package]]
-name = "serde_derive"
-version = "1.0.102"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ca13fc1a832f793322228923fbb3aba9f3f44444898f835d31ad1b74fa0a2bf8"
-dependencies = [
- "proc-macro2 1.0.36",
- "quote 1.0.7",
- "syn 1.0.86",
-]
-
-[[package]]
-name = "serde_json"
-version = "1.0.41"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2f72eb2a68a7dc3f9a691bfda9305a1c017a6215e5a4545c258500d2099a37c2"
-dependencies = [
- "itoa",
- "ryu",
- "serde",
-]
-
-[[package]]
-name = "serde_repr"
-version = "0.1.6"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2dc6b7951b17b051f3210b063f12cc17320e2fe30ae05b0fe2a3abb068551c76"
-dependencies = [
- "proc-macro2 1.0.36",
- "quote 1.0.7",
- "syn 1.0.86",
-]
-
-[[package]]
-name = "sha-1"
-version = "0.8.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "23962131a91661d643c98940b20fcaffe62d776a823247be80a48fcb8b6fce68"
-dependencies = [
- "block-buffer",
- "digest",
- "fake-simd",
- "opaque-debug",
-]
-
-[[package]]
-name = "sha2"
-version = "0.8.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7b4d8bfd0e469f417657573d8451fb33d16cfe0989359b93baf3a1ffc639543d"
-dependencies = [
- "block-buffer",
- "digest",
- "fake-simd",
- "opaque-debug",
-]
-
-[[package]]
-name = "shell32-sys"
-version = "0.1.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9ee04b46101f57121c9da2b151988283b6beb79b34f5bb29a58ee48cb695122c"
-dependencies = [
- "winapi 0.2.8",
- "winapi-build",
-]
-
-[[package]]
-name = "simple_uint"
-version = "0.1.0"
-source = "git+https://github.com/matter-labs/eip1962.git?rev=ece6cbabc41948db4200e41f0bfdab7ab94c7af8#ece6cbabc41948db4200e41f0bfdab7ab94c7af8"
-dependencies = [
- "byteorder",
- "crunchy 0.2.2",
- "rustc-hex 2.1.0",
- "static_assertions 1.1.0",
-]
-
-[[package]]
-name = "siphasher"
-version = "0.1.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "833011ca526bd88f16778d32c699d325a9ad302fa06381cd66f7be63351d3f6d"
-
-[[package]]
-name = "skeptic"
-version = "0.4.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "24ebf8a06f5f8bae61ae5bbc7af7aac4ef6907ae975130faba1199e5fe82256a"
-dependencies = [
- "pulldown-cmark",
- "tempdir",
-]
-
-[[package]]
-name = "slab"
-version = "0.2.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6dbdd334bd28d328dad1c41b0ea662517883d8880d8533895ef96c8003dec9c4"
-
-[[package]]
-name = "slab"
-version = "0.3.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "17b4fcaed89ab08ef143da37bc52adbcc04d4a69014f4c1208d6b51f0c47bc23"
-
-[[package]]
-name = "slab"
-version = "0.4.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c111b5bd5695e56cffe5129854aa230b39c93a305372fdbb2668ca2394eea9f8"
-
-[[package]]
-name = "smallvec"
-version = "0.6.13"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f7b0758c52e15a8b5e3691eae6cc559f08eee9406e548a4477ba4e67770a82b6"
-dependencies = [
- "maybe-uninit",
-]
-
-[[package]]
-name = "smallvec"
-version = "1.6.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "fe0f37c9e8f3c5a4a66ad655a93c74daac4ad00c441533bf5c6e7990bb42604e"
-
-[[package]]
-name = "spin"
-version = "0.5.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6e63cff320ae2c57904679ba7cb63280a3dc4613885beafb148ee7bf9aa9042d"
-
-[[package]]
-name = "stable_deref_trait"
-version = "1.1.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "dba1a27d3efae4351c8051072d619e3ade2820635c3958d826bfea39d59b54c8"
-
-[[package]]
-name = "static_assertions"
-version = "0.2.5"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c19be23126415861cb3a23e501d34a708f7f9b2183c5252d690941c2e69199d5"
-
-[[package]]
-name = "static_assertions"
-version = "1.1.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a2eb9349b6444b326872e140eb1cf5e7c522154d69e7a0ffb0fb81c06b37543f"
-
-[[package]]
-name = "stats"
-version = "0.1.0"
-dependencies = [
- "log",
- "prometheus",
-]
-
-[[package]]
-name = "stream-cipher"
-version = "0.3.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8131256a5896cabcf5eb04f4d6dacbe1aefda854b0d9896e09cb58829ec5638c"
-dependencies = [
- "generic-array",
-]
-
-[[package]]
-name = "string"
-version = "0.2.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d24114bfcceb867ca7f71a0d3fe45d45619ec47a6fbfa98cb14e14250bfa5d6d"
-dependencies = [
- "bytes",
-]
-
-[[package]]
-name = "strsim"
-version = "0.8.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8ea5119cdb4c55b55d432abb513a0429384878c15dde60cc77b1c99de1a95a6a"
-
-[[package]]
-name = "strsim"
-version = "0.9.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "032c03039aae92b350aad2e3779c352e104d919cb192ba2fabbd7b831ce4f0f6"
-
-[[package]]
-name = "subtle"
-version = "1.0.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2d67a5a62ba6e01cb2192ff309324cb4875d0c451d55fe2319433abe7a05a8ee"
-
-[[package]]
-name = "subtle"
-version = "2.3.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "343f3f510c2915908f155e94f17220b19ccfacf2a64a2a5d8004f2c3e311e7fd"
-
-[[package]]
-name = "syn"
-version = "0.15.26"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f92e629aa1d9c827b2bb8297046c1ccffc57c99b947a680d3ccff1f136a3bee9"
-dependencies = [
- "proc-macro2 0.4.30",
- "quote 0.6.13",
- "unicode-xid 0.1.0",
-]
-
-[[package]]
-name = "syn"
-version = "1.0.86"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8a65b3f4ffa0092e9887669db0eae07941f023991ab58ea44da8fe8e2d511c6b"
-dependencies = [
- "proc-macro2 1.0.36",
- "quote 1.0.7",
- "unicode-xid 0.2.0",
-]
-
-[[package]]
-name = "synstructure"
-version = "0.12.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "575be94ccb86e8da37efb894a87e2b660be299b41d8ef347f9d6d79fbe61b1ba"
-dependencies = [
- "proc-macro2 1.0.36",
- "quote 1.0.7",
- "syn 1.0.86",
- "unicode-xid 0.2.0",
-]
-
-[[package]]
-name = "target_info"
-version = "0.1.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c63f48baada5c52e65a29eef93ab4f8982681b67f9e8d29c7b05abcfec2b9ffe"
-
-[[package]]
-name = "tempdir"
-version = "0.3.7"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "15f2b5fb00ccdf689e0149d1b1b3c03fead81c2b37735d812fa8bddbbf41b6d8"
-dependencies = [
- "rand 0.4.6",
- "remove_dir_all",
-]
-
-[[package]]
-name = "tempfile"
-version = "3.1.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7a6e24d9338a0a5be79593e2fa15a648add6138caa803e2d5bc782c371732ca9"
-dependencies = [
- "cfg-if 0.1.10",
- "libc",
- "rand 0.7.3",
- "redox_syscall 0.1.56",
- "remove_dir_all",
- "winapi 0.3.8",
-]
-
-[[package]]
-name = "term_size"
-version = "0.3.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9e5b9a66db815dcfd2da92db471106457082577c3c278d4138ab3e3b4e189327"
-dependencies = [
- "kernel32-sys",
- "libc",
- "winapi 0.2.8",
-]
-
-[[package]]
-name = "termcolor"
-version = "1.0.5"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "96d6098003bde162e4277c70665bd87c326f5a0c3f3fbfb285787fa482d54e6e"
-dependencies = [
- "wincolor",
-]
-
-[[package]]
-name = "textwrap"
-version = "0.9.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c0b59b6b4b44d867f1370ef1bd91bfb262bf07bf0ae65c202ea2fbc16153b693"
-dependencies = [
- "unicode-width",
-]
-
-[[package]]
-name = "textwrap"
-version = "0.11.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d326610f408c7a4eb6f51c37c330e496b08506c9457c9d34287ecc38809fb060"
-dependencies = [
- "unicode-width",
-]
-
-[[package]]
-name = "thiserror"
-version = "1.0.20"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7dfdd070ccd8ccb78f4ad66bf1982dc37f620ef696c6b5028fe2ed83dd3d0d08"
-dependencies = [
- "thiserror-impl",
-]
-
-[[package]]
-name = "thiserror-impl"
-version = "1.0.20"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "bd80fc12f73063ac132ac92aceea36734f04a1d93c1240c6944e23a3b8841793"
-dependencies = [
- "proc-macro2 1.0.36",
- "quote 1.0.7",
- "syn 1.0.86",
-]
-
-[[package]]
-name = "thread-id"
-version = "3.3.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c7fbf4c9d56b320106cd64fd024dadfa0be7cb4706725fc44a7d7ce952d820c1"
-dependencies = [
- "libc",
- "redox_syscall 0.1.56",
- "winapi 0.3.8",
-]
-
-[[package]]
-name = "thread_local"
-version = "0.3.6"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c6b53e329000edc2b34dbe8545fd20e55a333362d0a321909685a19bd28c3f1b"
-dependencies = [
- "lazy_static",
-]
-
-[[package]]
-name = "thread_local"
-version = "1.0.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d40c6d1b69745a6ec6fb1ca717914848da4b44ae29d9b3080cbee91d72a69b14"
-dependencies = [
- "lazy_static",
-]
-
-[[package]]
-name = "threadpool"
-version = "1.7.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e2f0c90a5f3459330ac8bc0d2f879c693bb7a2f59689c1083fc4ef83834da865"
-dependencies = [
- "num_cpus",
-]
-
-[[package]]
-name = "time"
-version = "0.1.42"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "db8dcfca086c1143c9270ac42a2bbd8a7ee477b78ac8e45b19abfb0cbede4b6f"
-dependencies = [
- "libc",
- "redox_syscall 0.1.56",
- "winapi 0.3.8",
-]
-
-[[package]]
-name = "time-utils"
-version = "0.1.0"
-
-[[package]]
-name = "timer"
-version = "0.2.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "31d42176308937165701f50638db1c31586f183f1aab416268216577aec7306b"
-dependencies = [
- "chrono",
-]
-
-[[package]]
-name = "tiny-keccak"
-version = "1.5.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1d8a021c69bb74a44ccedb824a046447e2c84a01df9e5c20779750acb38e11b2"
-dependencies = [
- "crunchy 0.2.2",
-]
-
-[[package]]
-name = "tiny-keccak"
-version = "2.0.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2c9d3793400a45f954c52e73d068316d76b6f4e36977e3fcebb13a2721e80237"
-dependencies = [
- "crunchy 0.2.2",
-]
-
-[[package]]
-name = "tinytemplate"
-version = "1.0.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4574b75faccaacddb9b284faecdf0b544b80b6b294f3d062d325c5726a209c20"
-dependencies = [
- "serde",
- "serde_json",
-]
-
-[[package]]
-name = "tokio"
-version = "0.1.22"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5a09c0b5bb588872ab2f09afa13ee6e9dac11e10a0ec9e8e3ba39a5a5d530af6"
-dependencies = [
- "bytes",
- "futures",
- "mio",
- "num_cpus",
- "tokio-codec",
- "tokio-current-thread",
- "tokio-executor",
- "tokio-fs",
- "tokio-io",
- "tokio-reactor",
- "tokio-sync",
- "tokio-tcp",
- "tokio-threadpool",
- "tokio-timer 0.2.13",
- "tokio-udp",
- "tokio-uds",
-]
-
-[[package]]
-name = "tokio-buf"
-version = "0.1.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8fb220f46c53859a4b7ec083e41dec9778ff0b1851c0942b211edb89e0ccdc46"
-dependencies = [
- "bytes",
- "either",
- "futures",
-]
-
-[[package]]
-name = "tokio-codec"
-version = "0.1.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5c501eceaf96f0e1793cf26beb63da3d11c738c4a943fdf3746d81d64684c39f"
-dependencies = [
- "bytes",
- "futures",
- "tokio-io",
-]
-
-[[package]]
-name = "tokio-core"
-version = "0.1.17"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "aeeffbbb94209023feaef3c196a41cbcdafa06b4a6f893f68779bb5e53796f71"
-dependencies = [
- "bytes",
- "futures",
- "iovec",
- "log",
- "mio",
- "scoped-tls",
- "tokio",
- "tokio-executor",
- "tokio-io",
- "tokio-reactor",
- "tokio-timer 0.2.13",
-]
-
-[[package]]
-name = "tokio-current-thread"
-version = "0.1.6"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d16217cad7f1b840c5a97dfb3c43b0c871fef423a6e8d2118c604e843662a443"
-dependencies = [
- "futures",
- "tokio-executor",
-]
-
-[[package]]
-name = "tokio-executor"
-version = "0.1.10"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "fb2d1b8f4548dbf5e1f7818512e9c406860678f29c300cdf0ebac72d1a3a1671"
-dependencies = [
- "crossbeam-utils 0.7.2",
- "futures",
-]
-
-[[package]]
-name = "tokio-fs"
-version = "0.1.6"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3fe6dc22b08d6993916647d108a1a7d15b9cd29c4f4496c62b92c45b5041b7af"
-dependencies = [
- "futures",
- "tokio-io",
- "tokio-threadpool",
-]
-
-[[package]]
-name = "tokio-io"
-version = "0.1.12"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5090db468dad16e1a7a54c8c67280c5e4b544f3d3e018f0b913b400261f85926"
-dependencies = [
- "bytes",
- "futures",
- "log",
-]
-
-[[package]]
-name = "tokio-named-pipes"
-version = "0.1.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9d282d483052288b2308ba5ee795f5673b159c9bdf63c385a05609da782a5eae"
-dependencies = [
- "bytes",
- "futures",
- "mio",
- "mio-named-pipes",
- "tokio",
-]
-
-[[package]]
-name = "tokio-reactor"
-version = "0.1.12"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "09bc590ec4ba8ba87652da2068d150dcada2cfa2e07faae270a5e0409aa51351"
-dependencies = [
- "crossbeam-utils 0.7.2",
- "futures",
- "lazy_static",
- "log",
- "mio",
- "num_cpus",
- "parking_lot 0.9.0",
- "slab 0.4.2",
- "tokio-executor",
- "tokio-io",
- "tokio-sync",
-]
-
-[[package]]
-name = "tokio-retry"
-version = "0.1.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f05746ae87dca83a2016b4f5dba5b237b897dd12fd324f60afe282112f16969a"
-dependencies = [
- "futures",
- "rand 0.3.23",
- "tokio-core",
- "tokio-service",
-]
-
-[[package]]
-name = "tokio-rustls"
-version = "0.9.4"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "95a199832a67452c60bed18ed951d28d5755ff57b02b3d2d535d9f13a81ea6c9"
-dependencies = [
- "futures",
- "rustls",
- "tokio-io",
- "webpki",
-]
-
-[[package]]
-name = "tokio-service"
-version = "0.1.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "24da22d077e0f15f55162bdbdc661228c1581892f52074fb242678d015b45162"
-dependencies = [
- "futures",
-]
-
-[[package]]
-name = "tokio-sync"
-version = "0.1.7"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d06554cce1ae4a50f42fba8023918afa931413aded705b560e29600ccf7c6d76"
-dependencies = [
- "fnv",
- "futures",
-]
-
-[[package]]
-name = "tokio-tcp"
-version = "0.1.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1d14b10654be682ac43efee27401d792507e30fd8d26389e1da3b185de2e4119"
-dependencies = [
- "bytes",
- "futures",
- "iovec",
- "mio",
- "tokio-io",
- "tokio-reactor",
-]
-
-[[package]]
-name = "tokio-threadpool"
-version = "0.1.18"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "df720b6581784c118f0eb4310796b12b1d242a7eb95f716a8367855325c25f89"
-dependencies = [
- "crossbeam-deque 0.7.1",
- "crossbeam-queue 0.2.3",
- "crossbeam-utils 0.7.2",
- "futures",
- "lazy_static",
- "log",
- "num_cpus",
- "slab 0.4.2",
- "tokio-executor",
-]
-
-[[package]]
-name = "tokio-timer"
-version = "0.1.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6131e780037787ff1b3f8aad9da83bca02438b72277850dd6ad0d455e0e20efc"
-dependencies = [
- "futures",
- "slab 0.3.0",
-]
-
-[[package]]
-name = "tokio-timer"
-version = "0.2.13"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "93044f2d313c95ff1cb7809ce9a7a05735b012288a888b62d4434fd58c94f296"
-dependencies = [
- "crossbeam-utils 0.7.2",
- "futures",
- "slab 0.4.2",
- "tokio-executor",
-]
-
-[[package]]
-name = "tokio-udp"
-version = "0.1.5"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f02298505547f73e60f568359ef0d016d5acd6e830ab9bc7c4a5b3403440121b"
-dependencies = [
- "bytes",
- "futures",
- "log",
- "mio",
- "tokio-codec",
- "tokio-io",
- "tokio-reactor",
-]
-
-[[package]]
-name = "tokio-uds"
-version = "0.2.5"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "037ffc3ba0e12a0ab4aca92e5234e0dedeb48fddf6ccd260f1f150a36a9f2445"
-dependencies = [
- "bytes",
- "futures",
- "iovec",
- "libc",
- "log",
- "mio",
- "mio-uds",
- "tokio-codec",
- "tokio-io",
- "tokio-reactor",
-]
-
-[[package]]
-name = "toml"
-version = "0.4.10"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "758664fc71a3a69038656bee8b6be6477d2a6c315a6b81f7081f591bffa4111f"
-dependencies = [
- "serde",
-]
-
-[[package]]
-name = "toml"
-version = "0.5.5"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "01d1404644c8b12b16bfcffa4322403a91a451584daaaa7c28d3152e6cbc98cf"
-dependencies = [
- "serde",
-]
-
-[[package]]
-name = "trace-time"
-version = "0.1.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c9adf04084eeb9a1ea91be6c3f8ef3df392391c91fc7d8f696d4875f6754e715"
-dependencies = [
- "log",
-]
-
-[[package]]
-name = "transient-hashmap"
-version = "0.4.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "aeb4b191d033a35edfce392a38cdcf9790b6cebcb30fa690c312c29da4dc433e"
-
-[[package]]
-name = "trie-db"
-version = "0.11.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3c7319e28ca295f27359d944a682f7f65b419158bf1590c92cadc0000258d788"
-dependencies = [
- "elastic-array",
- "hash-db 0.11.0",
- "log",
- "rand 0.6.5",
-]
-
-[[package]]
-name = "trie-standardmap"
-version = "0.15.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c3161ba520ab28cd8e6b68e1126f1009f6e335339d1a73b978139011703264c8"
-dependencies = [
- "hash-db 0.15.2",
- "keccak-hasher 0.15.3",
-]
-
-[[package]]
-name = "triehash"
-version = "0.5.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "92148b4d8d55eff71bc8c9e3c5f714e266c2a05e724dce5405a10deabbf449a8"
-dependencies = [
- "hash-db 0.11.0",
- "rlp",
-]
-
-[[package]]
-name = "triehash-ethereum"
-version = "0.2.0"
-dependencies = [
- "ethereum-types 0.9.2",
- "keccak-hasher 0.1.1",
- "triehash",
-]
-
-[[package]]
-name = "try-lock"
-version = "0.1.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ee2aa4715743892880f70885373966c83d73ef1b0838a664ef0c76fffd35e7c2"
-
-[[package]]
-name = "try-lock"
-version = "0.2.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e604eb7b43c06650e854be16a2a03155743d3752dd1c943f6829e26b7a36e382"
-
-[[package]]
-name = "txpool"
-version = "1.0.0-alpha"
-dependencies = [
- "ethereum-types 0.7.0",
- "log",
- "smallvec 0.6.13",
- "trace-time",
-]
-
-[[package]]
-name = "typenum"
-version = "1.11.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6d2783fe2d6b8c1101136184eb41be8b1ad379e4657050b8aaff0c79ee7575f9"
-
-[[package]]
-name = "ucd-util"
-version = "0.1.8"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c85f514e095d348c279b1e5cd76795082cf15bd59b93207832abe0b1d8fed236"
-
-[[package]]
-name = "uint"
-version = "0.8.5"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9db035e67dfaf7edd9aebfe8676afcd63eed53c8a4044fed514c8cccf1835177"
-dependencies = [
- "byteorder",
- "crunchy 0.2.2",
- "rustc-hex 2.1.0",
- "static_assertions 1.1.0",
-]
-
-[[package]]
-name = "unexpected"
-version = "0.1.0"
-
-[[package]]
-name = "unicase"
-version = "2.5.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2e2e6bd1e59e56598518beb94fd6db628ded570326f0a98c679a304bd9f00150"
-dependencies = [
- "version_check",
-]
-
-[[package]]
-name = "unicode-bidi"
-version = "0.3.4"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "49f2bd0c6468a8230e1db229cff8029217cf623c767ea5d60bfbd42729ea54d5"
-dependencies = [
- "matches",
-]
-
-[[package]]
-name = "unicode-normalization"
-version = "0.1.8"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "141339a08b982d942be2ca06ff8b076563cbe223d1befd5450716790d44e2426"
-dependencies = [
- "smallvec 0.6.13",
-]
-
-[[package]]
-name = "unicode-segmentation"
-version = "1.5.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "49f5526225fd8b77342d5986ab5f6055552e9c0776193b5b63fd53b46debfad7"
-
-[[package]]
-name = "unicode-width"
-version = "0.1.6"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7007dbd421b92cc6e28410fe7362e2e0a2503394908f417b68ec8d1c364c4e20"
-
-[[package]]
-name = "unicode-xid"
-version = "0.1.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "fc72304796d0818e357ead4e000d19c9c174ab23dc11093ac919054d20a6a7fc"
-
-[[package]]
-name = "unicode-xid"
-version = "0.2.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "826e7639553986605ec5979c7dd957c7895e93eabed50ab2ffa7f6128a75097c"
-
-[[package]]
-name = "untrusted"
-version = "0.6.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "55cd1f4b4e96b46aeb8d4855db4a7a9bd96eeeb5c6a1ab54593328761642ce2f"
-
-[[package]]
-name = "url"
-version = "1.7.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "dd4e7c0d531266369519a4aa4f399d748bd37043b00bde1e4ff1f60a120b355a"
-dependencies = [
- "idna 0.1.5",
- "matches",
- "percent-encoding 1.0.1",
-]
-
-[[package]]
-name = "url"
-version = "2.1.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "75b414f6c464c879d7f9babf951f23bc3743fb7313c081b2e6ca719067ea9d61"
-dependencies = [
- "idna 0.2.0",
- "matches",
- "percent-encoding 2.1.0",
-]
-
-[[package]]
-name = "using_queue"
-version = "0.1.0"
-
-[[package]]
-name = "utf8-ranges"
-version = "1.0.4"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b4ae116fef2b7fea257ed6440d3cfcff7f190865f170cdad00bb6465bf18ecba"
-
-[[package]]
-name = "validator"
-version = "0.8.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "236a5eda3df2c877872e98dbc55d497d943792e6405d8fc65bd4f8a5e3b53c99"
-dependencies = [
- "idna 0.1.5",
- "lazy_static",
- "regex 1.3.9",
- "serde",
- "serde_derive",
- "serde_json",
- "url 1.7.2",
-]
-
-[[package]]
-name = "validator_derive"
-version = "0.8.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d360d6f5754972c0c1da14fb3d5580daa31aee566e1e45e2f8d3bf5950ecd3e9"
-dependencies = [
- "if_chain",
- "lazy_static",
- "proc-macro2 0.4.30",
- "quote 0.6.13",
- "regex 1.3.9",
- "syn 0.15.26",
- "validator",
-]
-
-[[package]]
-name = "vec_map"
-version = "0.8.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "05c78687fb1a80548ae3250346c3db86a80a7cdd77bda190189f2d0a0987c81a"
-
-[[package]]
-name = "vergen"
-version = "0.1.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8c3365f36c57e5df714a34be40902b27a992eeddb9996eca52d0584611cf885d"
-dependencies = [
- "bitflags 0.7.0",
- "time",
-]
-
-[[package]]
-name = "version_check"
-version = "0.1.5"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "914b1a6776c4c929a602fafd8bc742e06365d4bcbe48c30f9cca5824f70dc9dd"
-
-[[package]]
-name = "vm"
-version = "0.1.0"
-dependencies = [
- "ethereum-types 0.9.2",
- "ethjson",
- "keccak-hash",
- "parity-bytes",
- "patricia-trie-ethereum",
- "rlp",
-]
-
-[[package]]
-name = "walkdir"
-version = "2.3.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "777182bc735b6424e1a57516d35ed72cb8019d85c8c9bf536dccb3445c1a2f7d"
-dependencies = [
- "same-file",
- "winapi 0.3.8",
- "winapi-util",
-]
-
-[[package]]
-name = "want"
-version = "0.0.4"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a05d9d966753fa4b5c8db73fcab5eed4549cfe0e1e4e66911e5564a0085c35d1"
-dependencies = [
- "futures",
- "log",
- "try-lock 0.1.0",
-]
-
-[[package]]
-name = "want"
-version = "0.2.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b6395efa4784b027708f7451087e647ec73cc74f5d9bc2e418404248d679a230"
-dependencies = [
- "futures",
- "log",
- "try-lock 0.2.2",
-]
-
-[[package]]
-name = "wasi"
-version = "0.7.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b89c3ce4ce14bdc6fb6beaf9ec7928ca331de5df7e5ea278375642a2f478570d"
-
-[[package]]
-name = "wasi"
-version = "0.10.2+wasi-snapshot-preview1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "fd6fbd9a79829dd1ad0cc20627bf1ed606756a7f77edff7b66b7064f9cb327c6"
-
-[[package]]
-name = "wasm"
-version = "0.1.0"
-dependencies = [
- "byteorder",
- "env_logger",
- "ethereum-types 0.9.2",
- "libc",
- "log",
- "parity-wasm",
- "pwasm-utils",
- "vm",
- "wasmi",
-]
-
-[[package]]
-name = "wasmi"
-version = "0.3.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9b4a6d379e9332b1b1f52c5a87f2481c85c7c931d8ec411963dfb8f26b1ec1e3"
-dependencies = [
- "byteorder",
- "memory_units",
- "nan-preserving-float",
- "parity-wasm",
-]
-
-[[package]]
-name = "webpki"
-version = "0.19.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4f7e1cd7900a3a6b65a3e8780c51a3e6b59c0e2c55c6dc69578c288d69f7d082"
-dependencies = [
- "ring",
- "untrusted",
-]
-
-[[package]]
-name = "webpki-roots"
-version = "0.16.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c10fa4212003ba19a564f25cd8ab572c6791f99a03cc219c13ed35ccab00de0e"
-dependencies = [
- "untrusted",
- "webpki",
-]
-
-[[package]]
-name = "winapi"
-version = "0.2.8"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "167dc9d6949a9b857f3451275e911c3f44255842c1f7a76f33c55103a909087a"
-
-[[package]]
-name = "winapi"
-version = "0.3.8"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8093091eeb260906a183e6ae1abdba2ef5ef2257a21801128899c3fc699229c6"
-dependencies = [
- "winapi-i686-pc-windows-gnu",
- "winapi-x86_64-pc-windows-gnu",
-]
-
-[[package]]
-name = "winapi-build"
-version = "0.1.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2d315eee3b34aca4797b2da6b13ed88266e6d612562a0c46390af8299fc699bc"
-
-[[package]]
-name = "winapi-i686-pc-windows-gnu"
-version = "0.4.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ac3b87c63620426dd9b991e5ce0329eff545bccbbb34f3be09ff6fb6ab51b7b6"
-
-[[package]]
-name = "winapi-util"
-version = "0.1.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7168bab6e1daee33b4557efd0e95d5ca70a03706d39fa5f3fe7a236f584b03c9"
-dependencies = [
- "winapi 0.3.8",
-]
-
-[[package]]
-name = "winapi-x86_64-pc-windows-gnu"
-version = "0.4.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f"
-
-[[package]]
-name = "wincolor"
-version = "1.0.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "96f5016b18804d24db43cebf3c77269e7569b8954a8464501c216cc5e070eaa9"
-dependencies = [
- "winapi 0.3.8",
- "winapi-util",
-]
-
-[[package]]
-name = "ws2_32-sys"
-version = "0.2.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d59cefebd0c892fa2dd6de581e937301d8552cb44489cdff035c6187cb63fa5e"
-dependencies = [
- "winapi 0.2.8",
- "winapi-build",
-]
-
-[[package]]
-name = "xdg"
-version = "2.2.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d089681aa106a86fade1b0128fb5daf07d5867a509ab036d99988dec80429a57"
-
-[[package]]
-name = "xml-rs"
-version = "0.7.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3c1cb601d29fe2c2ac60a2b2e5e293994d87a1f6fa9687a31a15270f909be9c2"
-dependencies = [
- "bitflags 1.2.1",
-]
-
-[[package]]
-name = "xmltree"
-version = "0.7.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a9cfb54ca6b8f17d2377219ce485b134d53561b77e1393c7ea416f543a527431"
-dependencies = [
- "xml-rs",
-]
-
-[[package]]
-name = "zeroize"
-version = "1.2.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "81a974bcdd357f0dca4d41677db03436324d45a4c9ed2d0b873a5a360ce41c36"
diff --git a/pkgs/applications/blockchains/openethereum/default.nix b/pkgs/applications/blockchains/openethereum/default.nix
deleted file mode 100644
index a41b9df83751..000000000000
--- a/pkgs/applications/blockchains/openethereum/default.nix
+++ /dev/null
@@ -1,62 +0,0 @@
-{ lib
-, fetchFromGitHub
-, rustPlatform
-, cmake
-, openssl
-, pkg-config
-, stdenv
-, systemd
-, darwin
-}:
-
-rustPlatform.buildRustPackage rec {
-  pname = "openethereum";
-  version = "3.3.5";
-
-  src = fetchFromGitHub {
-    owner = "openethereum";
-    repo = "openethereum";
-    rev = "v${version}";
-    sha256 = "sha256-PpRRoufuZ9fXbLonMAo6qaA/jtJZXW98uM0BEXdJ2oU=";
-  };
-
-  cargoLock = {
-    lockFile = ./Cargo.lock;
-    outputHashes = {
-      "app_dirs-1.2.1" = "sha256-zn9/b6VUuQ4U7KpN95hWumaKUg+xUdyEBRBngWhHuqA=";
-      "bn-0.4.4" = "sha256-SdlIZwN2AVrq8Ezz0AeLRc+4G/YpqwCpFPS8QqLQ0yU=";
-      "ctrlc-1.1.1" = "sha256-AqJR2B4PnR/fc7N+t2L0zZQ1fYy1GouGKkzupQw8uRQ=";
-      "eth-secp256k1-0.5.7" = "sha256-2ZwY2cODE7AVJ2WBTuHZ01dZXegeNmZHKRUXVemLs1A=";
-      "eth_pairings-0.6.0" = "sha256-2qLyuOArJOH029JKXuyB67p9gggsTRpavW1AO4O93L4=";
-      "ethabi-11.0.0" = "sha256-QVlwdv5iHOhp98rwSZC6b+YFLTdlq3va6YzAZzm8q8Y=";
-      "reth-util-0.1.0" = "sha256-3W8ESWCqEtDuoY2YhB1YVlQXs91XWfuAN2feuv0u6yU=";
-    };
-  };
-
-  nativeBuildInputs = [ cmake pkg-config ];
-
-  buildInputs = [ openssl ]
-    ++ lib.optionals stdenv.isLinux [ systemd ]
-    ++ lib.optionals stdenv.isDarwin [ darwin.Security ];
-
-  buildFeatures = [ "final" ];
-
-  # Fix tests by preventing them from writing to /homeless-shelter.
-  preCheck = ''
-    export HOME=$(mktemp -d)
-  '';
-
-  # Exclude some tests that don't work in the sandbox
-  # - Nat test requires network access
-  checkFlags = [ "--skip" "configuration::tests::should_resolve_external_nat_hosts" ];
-
-  meta = with lib; {
-    broken = stdenv.isDarwin;
-    description = "Fast, light, robust Ethereum implementation";
-    homepage = "http://parity.io/ethereum";
-    license = licenses.gpl3;
-    maintainers = with maintainers; [ akru ];
-    platforms = lib.platforms.unix;
-    mainProgram = "openethereum";
-  };
-}
diff --git a/pkgs/applications/blockchains/polkadot/Cargo.lock b/pkgs/applications/blockchains/polkadot/Cargo.lock
index ad5d00791502..68af7cb7ff71 100644
--- a/pkgs/applications/blockchains/polkadot/Cargo.lock
+++ b/pkgs/applications/blockchains/polkadot/Cargo.lock
@@ -165,7 +165,7 @@ dependencies = [
  "hex-literal",
  "itoa",
  "proptest",
- "rand",
+ "rand 0.8.5",
  "ruint",
  "serde",
  "tiny-keccak",
@@ -177,24 +177,12 @@ version = "0.3.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "cc0fac0fc16baf1f63f78b47c3d24718f3619b0714076f6a02957d808d52cbef"
 dependencies = [
- "alloy-rlp-derive",
  "arrayvec 0.7.4",
  "bytes",
  "smol_str",
 ]
 
 [[package]]
-name = "alloy-rlp-derive"
-version = "0.3.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c0391754c09fab4eae3404d19d0d297aa1c670c1775ab51d8a5312afeca23157"
-dependencies = [
- "proc-macro2",
- "quote",
- "syn 2.0.53",
-]
-
-[[package]]
 name = "alloy-sol-macro"
 version = "0.4.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -204,8 +192,8 @@ dependencies = [
  "dunce",
  "heck 0.4.1",
  "proc-macro-error",
- "proc-macro2",
- "quote",
+ "proc-macro2 1.0.75",
+ "quote 1.0.35",
  "syn 2.0.53",
  "syn-solidity",
  "tiny-keccak",
@@ -331,8 +319,8 @@ dependencies = [
  "include_dir",
  "itertools 0.10.5",
  "proc-macro-error",
- "proc-macro2",
- "quote",
+ "proc-macro2 1.0.75",
+ "quote 1.0.35",
  "syn 1.0.109",
 ]
 
@@ -345,8 +333,8 @@ dependencies = [
  "include_dir",
  "itertools 0.10.5",
  "proc-macro-error",
- "proc-macro2",
- "quote",
+ "proc-macro2 1.0.75",
+ "quote 1.0.35",
  "syn 2.0.53",
 ]
 
@@ -542,7 +530,7 @@ version = "0.3.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "db02d390bf6643fb404d3d22d31aee1c4bc4459600aef9113833d17e786c6e44"
 dependencies = [
- "quote",
+ "quote 1.0.35",
  "syn 1.0.109",
 ]
 
@@ -552,7 +540,7 @@ version = "0.4.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "3ed4aa4fe255d0bc6d79373f7e31d2ea147bcf486cba1be5ba7ea85abdb92348"
 dependencies = [
- "quote",
+ "quote 1.0.35",
  "syn 1.0.109",
 ]
 
@@ -564,7 +552,7 @@ checksum = "db2fd794a08ccb318058009eefdf15bcaaaaf6f8161eb3345f907222bac38b20"
 dependencies = [
  "num-bigint",
  "num-traits",
- "quote",
+ "quote 1.0.35",
  "syn 1.0.109",
 ]
 
@@ -576,8 +564,8 @@ checksum = "7abe79b0e4288889c4574159ab790824d0033b9fdcb2a112a3182fac2e514565"
 dependencies = [
  "num-bigint",
  "num-traits",
- "proc-macro2",
- "quote",
+ "proc-macro2 1.0.75",
+ "quote 1.0.35",
  "syn 1.0.109",
 ]
 
@@ -678,8 +666,8 @@ version = "0.4.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "ae3281bc6d0fd7e549af32b52511e1302185bd688fd3359fa36423346ff682ea"
 dependencies = [
- "proc-macro2",
- "quote",
+ "proc-macro2 1.0.75",
+ "quote 1.0.35",
  "syn 1.0.109",
 ]
 
@@ -690,7 +678,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "1df2c09229cbc5a028b1d70e00fdb2acee28b1055dfb5ca73eea49c5a25c4e7c"
 dependencies = [
  "num-traits",
- "rand",
+ "rand 0.8.5",
 ]
 
 [[package]]
@@ -700,7 +688,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "94893f1e0c6eeab764ade8dc4c0db24caf4fe7cbbaafc0eba0a9030f447b5185"
 dependencies = [
  "num-traits",
- "rand",
+ "rand 0.8.5",
  "rayon",
 ]
 
@@ -772,8 +760,8 @@ version = "0.4.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "726535892e8eae7e70657b4c8ea93d26b8553afb1ce617caee529ef96d7dee6c"
 dependencies = [
- "proc-macro2",
- "quote",
+ "proc-macro2 1.0.75",
+ "quote 1.0.35",
  "syn 1.0.109",
  "synstructure",
 ]
@@ -784,8 +772,8 @@ version = "0.1.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "2777730b2039ac0f95f093556e61b6d26cebed5393ca6f152717777cec3a42ed"
 dependencies = [
- "proc-macro2",
- "quote",
+ "proc-macro2 1.0.75",
+ "quote 1.0.35",
  "syn 1.0.109",
 ]
 
@@ -821,6 +809,7 @@ dependencies = [
  "parachains-common",
  "rococo-emulated-chain",
  "sp-core",
+ "staging-xcm",
  "testnet-parachains-constants",
 ]
 
@@ -838,16 +827,19 @@ dependencies = [
  "pallet-assets",
  "pallet-balances",
  "pallet-message-queue",
+ "pallet-treasury",
+ "pallet-utility",
  "pallet-xcm",
  "parachains-common",
  "parity-scale-codec",
  "penpal-runtime",
+ "polkadot-runtime-common",
  "rococo-runtime",
+ "rococo-runtime-constants",
  "rococo-system-emulated-network",
  "sp-runtime",
  "staging-xcm",
  "staging-xcm-executor",
- "testnet-parachains-constants",
 ]
 
 [[package]]
@@ -879,6 +871,7 @@ dependencies = [
  "hex-literal",
  "log",
  "pallet-asset-conversion",
+ "pallet-asset-conversion-ops",
  "pallet-asset-conversion-tx-payment",
  "pallet-assets",
  "pallet-aura",
@@ -941,6 +934,7 @@ dependencies = [
  "frame-support",
  "parachains-common",
  "sp-core",
+ "staging-xcm",
  "testnet-parachains-constants",
  "westend-emulated-chain",
 ]
@@ -969,7 +963,6 @@ dependencies = [
  "sp-runtime",
  "staging-xcm",
  "staging-xcm-executor",
- "testnet-parachains-constants",
  "westend-runtime",
  "westend-system-emulated-network",
 ]
@@ -1003,6 +996,7 @@ dependencies = [
  "hex-literal",
  "log",
  "pallet-asset-conversion",
+ "pallet-asset-conversion-ops",
  "pallet-asset-conversion-tx-payment",
  "pallet-assets",
  "pallet-aura",
@@ -1105,6 +1099,16 @@ dependencies = [
 ]
 
 [[package]]
+name = "async-attributes"
+version = "1.1.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "a3203e79f4dd9bdda415ed03cf14dae5a2bf775c683a00f94e9cd1faf0f596e5"
+dependencies = [
+ "quote 1.0.35",
+ "syn 1.0.109",
+]
+
+[[package]]
 name = "async-channel"
 version = "1.9.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -1142,6 +1146,21 @@ dependencies = [
 ]
 
 [[package]]
+name = "async-global-executor"
+version = "2.3.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "f1b6f5d7df27bd294849f8eec66ecfc63d11814df7a4f5d74168a2394467b776"
+dependencies = [
+ "async-channel",
+ "async-executor",
+ "async-io",
+ "async-lock 2.8.0",
+ "blocking",
+ "futures-lite",
+ "once_cell",
+]
+
+[[package]]
 name = "async-io"
 version = "1.13.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -1212,6 +1231,33 @@ dependencies = [
 ]
 
 [[package]]
+name = "async-std"
+version = "1.12.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "62565bb4402e926b29953c785397c6dc0391b7b446e45008b0049eb43cec6f5d"
+dependencies = [
+ "async-attributes",
+ "async-channel",
+ "async-global-executor",
+ "async-io",
+ "async-lock 2.8.0",
+ "crossbeam-utils",
+ "futures-channel",
+ "futures-core",
+ "futures-io",
+ "futures-lite",
+ "gloo-timers",
+ "kv-log-macro",
+ "log",
+ "memchr",
+ "once_cell",
+ "pin-project-lite 0.2.12",
+ "pin-utils",
+ "slab",
+ "wasm-bindgen-futures",
+]
+
+[[package]]
 name = "async-stream"
 version = "0.3.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -1228,8 +1274,8 @@ version = "0.3.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "16e62a023e7c117e27523144c5d2459f4397fcc3cab0085af8e2224f643a0193"
 dependencies = [
- "proc-macro2",
- "quote",
+ "proc-macro2 1.0.75",
+ "quote 1.0.35",
  "syn 2.0.53",
 ]
 
@@ -1245,8 +1291,8 @@ version = "0.1.79"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "a507401cad91ec6a857ed5513a2073c82a9b9048762b885bb98655b306964681"
 dependencies = [
- "proc-macro2",
- "quote",
+ "proc-macro2 1.0.75",
+ "quote 1.0.35",
  "syn 2.0.53",
 ]
 
@@ -1293,8 +1339,8 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "fee3da8ef1276b0bee5dd1c7258010d8fffd31801447323115a25560e1327b89"
 dependencies = [
  "proc-macro-error",
- "proc-macro2",
- "quote",
+ "proc-macro2 1.0.75",
+ "quote 1.0.35",
  "syn 1.0.109",
 ]
 
@@ -1305,6 +1351,17 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "d468802bab17cbc0cc575e9b053f41e72aa36bfa6b7f55e3529ffa43161b97fa"
 
 [[package]]
+name = "backoff"
+version = "0.4.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "b62ddb9cb1ec0a098ad4bbf9344d0713fa193ae1a80af55febcff2627b6a00c1"
+dependencies = [
+ "getrandom 0.2.10",
+ "instant",
+ "rand 0.8.5",
+]
+
+[[package]]
 name = "backtrace"
 version = "0.3.69"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -1424,8 +1481,8 @@ dependencies = [
  "lazycell",
  "peeking_take_while",
  "prettyplease 0.2.12",
- "proc-macro2",
- "quote",
+ "proc-macro2 1.0.75",
+ "quote 1.0.35",
  "regex",
  "rustc-hash",
  "shlex",
@@ -1647,6 +1704,23 @@ dependencies = [
 ]
 
 [[package]]
+name = "bp-beefy"
+version = "0.1.0"
+dependencies = [
+ "binary-merkle-tree",
+ "bp-runtime",
+ "frame-support",
+ "pallet-beefy-mmr",
+ "pallet-mmr",
+ "parity-scale-codec",
+ "scale-info",
+ "serde",
+ "sp-consensus-beefy",
+ "sp-runtime",
+ "sp-std 14.0.0",
+]
+
+[[package]]
 name = "bp-bridge-hub-cumulus"
 version = "0.7.0"
 dependencies = [
@@ -1880,7 +1954,7 @@ dependencies = [
  "bp-parachains",
  "bp-polkadot-core",
  "bp-runtime",
- "ed25519-dalek",
+ "ed25519-dalek 2.1.0",
  "finality-grandpa",
  "parity-scale-codec",
  "sp-application-crypto",
@@ -1922,7 +1996,7 @@ dependencies = [
 
 [[package]]
 name = "bridge-hub-common"
-version = "0.0.0"
+version = "0.1.0"
 dependencies = [
  "cumulus-primitives-core",
  "frame-support",
@@ -1954,7 +2028,6 @@ name = "bridge-hub-rococo-integration-tests"
 version = "1.0.0"
 dependencies = [
  "asset-hub-rococo-runtime",
- "bp-messages",
  "bridge-hub-rococo-runtime",
  "cumulus-pallet-xcmp-queue",
  "emulated-integration-tests-common",
@@ -1972,7 +2045,6 @@ dependencies = [
  "rococo-westend-system-emulated-network",
  "scale-info",
  "snowbridge-core",
- "snowbridge-pallet-inbound-queue",
  "snowbridge-pallet-inbound-queue-fixtures",
  "snowbridge-pallet-outbound-queue",
  "snowbridge-pallet-system",
@@ -2139,7 +2211,6 @@ dependencies = [
 name = "bridge-hub-westend-integration-tests"
 version = "1.0.0"
 dependencies = [
- "bp-messages",
  "bridge-hub-westend-runtime",
  "cumulus-pallet-xcmp-queue",
  "emulated-integration-tests-common",
@@ -2151,7 +2222,6 @@ dependencies = [
  "pallet-message-queue",
  "pallet-xcm",
  "parachains-common",
- "parity-scale-codec",
  "rococo-westend-system-emulated-network",
  "sp-runtime",
  "staging-xcm",
@@ -2412,6 +2482,12 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "37b2a672a2cb129a2e41c10b1224bb368f9f37a2b16b612598138befd7b37eb5"
 
 [[package]]
+name = "castaway"
+version = "0.1.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "a2698f953def977c68f935bb0dfa959375ad4638570e969e2f1e9f433cbf1af6"
+
+[[package]]
 name = "cc"
 version = "1.0.83"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -2552,6 +2628,19 @@ dependencies = [
 ]
 
 [[package]]
+name = "cid"
+version = "0.10.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "fd94671561e36e4e7de75f753f577edafb0e7c05d6e4547229fdf7938fbcd2c3"
+dependencies = [
+ "core2",
+ "multibase",
+ "multihash 0.18.1",
+ "serde",
+ "unsigned-varint",
+]
+
+[[package]]
 name = "cipher"
 version = "0.2.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -2601,6 +2690,21 @@ dependencies = [
 
 [[package]]
 name = "clap"
+version = "2.34.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "a0610544180c38b88101fecf2dd634b174a62eef6946f84dfc6a7127512b381c"
+dependencies = [
+ "ansi_term",
+ "atty",
+ "bitflags 1.3.2",
+ "strsim 0.8.0",
+ "textwrap 0.11.0",
+ "unicode-width",
+ "vec_map",
+]
+
+[[package]]
+name = "clap"
 version = "3.2.25"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "4ea181bf566f71cb9a5d17a59e1871af638180a18fb0035c92ae62b705207123"
@@ -2613,7 +2717,7 @@ dependencies = [
  "once_cell",
  "strsim 0.10.0",
  "termcolor",
- "textwrap",
+ "textwrap 0.16.0",
 ]
 
 [[package]]
@@ -2665,8 +2769,8 @@ checksum = "ae6371b8bdc8b7d3959e9cf7b22d4435ef3e79e138688421ec654acf8c81b008"
 dependencies = [
  "heck 0.4.1",
  "proc-macro-error",
- "proc-macro2",
- "quote",
+ "proc-macro2 1.0.75",
+ "quote 1.0.35",
  "syn 1.0.109",
 ]
 
@@ -2677,8 +2781,8 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "90239a040c80f5e14809ca132ddc4176ab33d5e17e49691793296e3fcb34d72f"
 dependencies = [
  "heck 0.5.0",
- "proc-macro2",
- "quote",
+ "proc-macro2 1.0.75",
+ "quote 1.0.35",
  "syn 2.0.53",
 ]
 
@@ -2733,6 +2837,36 @@ dependencies = [
 ]
 
 [[package]]
+name = "collectives-westend-integration-tests"
+version = "1.0.0"
+dependencies = [
+ "assert_matches",
+ "asset-hub-westend-runtime",
+ "collectives-westend-runtime",
+ "cumulus-pallet-parachain-system",
+ "cumulus-pallet-xcmp-queue",
+ "emulated-integration-tests-common",
+ "frame-support",
+ "pallet-asset-rate",
+ "pallet-assets",
+ "pallet-balances",
+ "pallet-message-queue",
+ "pallet-treasury",
+ "pallet-utility",
+ "pallet-xcm",
+ "parachains-common",
+ "parity-scale-codec",
+ "polkadot-runtime-common",
+ "sp-runtime",
+ "staging-xcm",
+ "staging-xcm-executor",
+ "testnet-parachains-constants",
+ "westend-runtime",
+ "westend-runtime-constants",
+ "westend-system-emulated-network",
+]
+
+[[package]]
 name = "collectives-westend-runtime"
 version = "3.0.0"
 dependencies = [
@@ -2836,8 +2970,8 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "d51beaa537d73d2d1ff34ee70bc095f170420ab2ec5d687ecd3ec2b0d092514b"
 dependencies = [
  "nom",
- "proc-macro2",
- "quote",
+ "proc-macro2 1.0.75",
+ "quote 1.0.35",
  "syn 1.0.109",
 ]
 
@@ -2859,6 +2993,16 @@ dependencies = [
 ]
 
 [[package]]
+name = "combine"
+version = "4.6.6"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "35ed6e9d84f0b51a7f52daf1c7d71dd136fd7a3f41a8462b8cdb8c78d920fad4"
+dependencies = [
+ "bytes",
+ "memchr",
+]
+
+[[package]]
 name = "comfy-table"
 version = "7.1.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -3348,6 +3492,21 @@ dependencies = [
 ]
 
 [[package]]
+name = "crc"
+version = "3.2.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "c2b432c56615136f8dba245fed7ec3d5518c500a31108661067e61e72fe7e6bc"
+dependencies = [
+ "crc-catalog",
+]
+
+[[package]]
+name = "crc-catalog"
+version = "2.4.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "19d374276b40fb8bbdee95aef7c7fa6b5316ec764510eb64b8dd0e2ed0d7e7f5"
+
+[[package]]
 name = "crc32fast"
 version = "1.3.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -3423,16 +3582,6 @@ dependencies = [
 ]
 
 [[package]]
-name = "crossbeam-channel"
-version = "0.5.8"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a33c2bf77f2df06183c3aa30d1e96c0695a313d4f9c453cc3762a6db39f99200"
-dependencies = [
- "cfg-if",
- "crossbeam-utils",
-]
-
-[[package]]
 name = "crossbeam-deque"
 version = "0.8.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -3769,7 +3918,7 @@ dependencies = [
  "polkadot-overseer",
  "polkadot-primitives",
  "portpicker",
- "rand",
+ "rand 0.8.5",
  "sc-cli",
  "sc-client-api",
  "sc-consensus",
@@ -3865,6 +4014,7 @@ dependencies = [
  "cumulus-primitives-proof-size-hostfunction",
  "cumulus-test-client",
  "cumulus-test-relay-sproof-builder",
+ "cumulus-test-runtime",
  "environmental",
  "frame-benchmarking",
  "frame-support",
@@ -3879,9 +4029,10 @@ dependencies = [
  "polkadot-parachain-primitives",
  "polkadot-runtime-common",
  "polkadot-runtime-parachains",
- "rand",
+ "rand 0.8.5",
  "sc-client-api",
  "scale-info",
+ "sp-consensus-slots",
  "sp-core",
  "sp-crypto-hashing",
  "sp-externalities 0.25.0",
@@ -3904,8 +4055,8 @@ name = "cumulus-pallet-parachain-system-proc-macro"
 version = "0.6.0"
 dependencies = [
  "proc-macro-crate 3.0.0",
- "proc-macro2",
- "quote",
+ "proc-macro2 1.0.75",
+ "quote 1.0.35",
  "syn 2.0.53",
 ]
 
@@ -4201,7 +4352,7 @@ dependencies = [
  "parity-scale-codec",
  "pin-project",
  "polkadot-overseer",
- "rand",
+ "rand 0.8.5",
  "sc-client-api",
  "sc-rpc-api",
  "sc-service",
@@ -4244,15 +4395,19 @@ dependencies = [
  "polkadot-primitives",
  "sc-block-builder",
  "sc-consensus",
+ "sc-consensus-aura",
  "sc-executor",
  "sc-executor-common",
  "sc-service",
  "sp-api",
+ "sp-application-crypto",
  "sp-blockchain",
+ "sp-consensus-aura",
  "sp-core",
  "sp-inherents",
  "sp-io",
  "sp-keyring",
+ "sp-keystore",
  "sp-runtime",
  "sp-timestamp",
  "substrate-test-client",
@@ -4275,16 +4430,22 @@ dependencies = [
 name = "cumulus-test-runtime"
 version = "0.1.0"
 dependencies = [
+ "cumulus-pallet-aura-ext",
  "cumulus-pallet-parachain-system",
+ "cumulus-primitives-aura",
  "cumulus-primitives-core",
  "cumulus-primitives-storage-weight-reclaim",
  "frame-executive",
  "frame-support",
  "frame-system",
  "frame-system-rpc-runtime-api",
+ "pallet-aura",
+ "pallet-authorship",
  "pallet-balances",
+ "pallet-collator-selection",
  "pallet-glutton",
  "pallet-message-queue",
+ "pallet-session",
  "pallet-sudo",
  "pallet-timestamp",
  "pallet-transaction-payment",
@@ -4292,6 +4453,7 @@ dependencies = [
  "scale-info",
  "sp-api",
  "sp-block-builder",
+ "sp-consensus-aura",
  "sp-core",
  "sp-genesis-builder",
  "sp-inherents",
@@ -4313,7 +4475,10 @@ dependencies = [
  "clap 4.5.3",
  "criterion 0.5.1",
  "cumulus-client-cli",
+ "cumulus-client-collator",
+ "cumulus-client-consensus-aura",
  "cumulus-client-consensus-common",
+ "cumulus-client-consensus-proposer",
  "cumulus-client-consensus-relay-chain",
  "cumulus-client-parachain-inherent",
  "cumulus-client-pov-recovery",
@@ -4342,7 +4507,7 @@ dependencies = [
  "polkadot-service",
  "polkadot-test-service",
  "portpicker",
- "rand",
+ "rand 0.8.5",
  "rococo-parachain-runtime",
  "sc-basic-authorship",
  "sc-block-builder",
@@ -4350,6 +4515,7 @@ dependencies = [
  "sc-cli",
  "sc-client-api",
  "sc-consensus",
+ "sc-consensus-aura",
  "sc-executor",
  "sc-executor-common",
  "sc-executor-wasmtime",
@@ -4366,6 +4532,7 @@ dependencies = [
  "sp-authority-discovery",
  "sp-blockchain",
  "sp-consensus",
+ "sp-consensus-aura",
  "sp-consensus-grandpa",
  "sp-core",
  "sp-io",
@@ -4383,6 +4550,37 @@ dependencies = [
 ]
 
 [[package]]
+name = "curl"
+version = "0.4.46"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "1e2161dd6eba090ff1594084e95fd67aeccf04382ffea77999ea94ed42ec67b6"
+dependencies = [
+ "curl-sys",
+ "libc",
+ "openssl-probe",
+ "openssl-sys",
+ "schannel",
+ "socket2 0.5.6",
+ "windows-sys 0.52.0",
+]
+
+[[package]]
+name = "curl-sys"
+version = "0.4.72+curl-8.6.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "29cbdc8314c447d11e8fd156dcdd031d9e02a7a976163e396b548c03153bc9ea"
+dependencies = [
+ "cc",
+ "libc",
+ "libnghttp2-sys",
+ "libz-sys",
+ "openssl-sys",
+ "pkg-config",
+ "vcpkg",
+ "windows-sys 0.52.0",
+]
+
+[[package]]
 name = "curve25519-dalek"
 version = "3.2.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -4418,8 +4616,8 @@ version = "0.1.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "83fdaf97f4804dcebfa5862639bc9ce4121e82140bec2a987ac5140294865b5b"
 dependencies = [
- "proc-macro2",
- "quote",
+ "proc-macro2 1.0.75",
+ "quote 1.0.35",
  "syn 2.0.53",
 ]
 
@@ -4457,8 +4655,8 @@ dependencies = [
  "cc",
  "codespan-reporting",
  "once_cell",
- "proc-macro2",
- "quote",
+ "proc-macro2 1.0.75",
+ "quote 1.0.35",
  "scratch",
  "syn 2.0.53",
 ]
@@ -4475,8 +4673,8 @@ version = "1.0.106"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "50c49547d73ba8dcfd4ad7325d64c6d5391ff4224d498fc39a6f3f49825a530d"
 dependencies = [
- "proc-macro2",
- "quote",
+ "proc-macro2 1.0.75",
+ "quote 1.0.35",
  "syn 2.0.53",
 ]
 
@@ -4564,8 +4762,8 @@ version = "2.2.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "fcc3dd5e9e9c0b295d6e1e4d811fb6f157d5ffd784b8d202fc62eac8035a770b"
 dependencies = [
- "proc-macro2",
- "quote",
+ "proc-macro2 1.0.75",
+ "quote 1.0.35",
  "syn 1.0.109",
 ]
 
@@ -4575,8 +4773,8 @@ version = "0.1.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "e79116f119dd1dba1abf1f3405f03b9b0e79a27a3883864bfebded8a3dc768cd"
 dependencies = [
- "proc-macro2",
- "quote",
+ "proc-macro2 1.0.75",
+ "quote 1.0.35",
  "syn 1.0.109",
 ]
 
@@ -4586,8 +4784,8 @@ version = "0.2.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "d65d7ce8132b7c0e54497a4d9a55a1c2a0912a0d786cf894472ba818fba45762"
 dependencies = [
- "proc-macro2",
- "quote",
+ "proc-macro2 1.0.75",
+ "quote 1.0.35",
  "syn 2.0.53",
 ]
 
@@ -4598,8 +4796,8 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "4fb810d30a7c1953f91334de7244731fc3f3c10d7fe163338a35b9f640960321"
 dependencies = [
  "convert_case",
- "proc-macro2",
- "quote",
+ "proc-macro2 1.0.75",
+ "quote 1.0.35",
  "rustc_version 0.4.0",
  "syn 1.0.109",
 ]
@@ -4694,8 +4892,8 @@ version = "0.2.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "487585f4d0c6655fe74905e2504d8ad6908e4db67f744eb140876906c2f3175d"
 dependencies = [
- "proc-macro2",
- "quote",
+ "proc-macro2 1.0.75",
+ "quote 1.0.35",
  "syn 2.0.53",
 ]
 
@@ -4754,8 +4952,8 @@ dependencies = [
  "common-path",
  "derive-syn-parse 0.2.0",
  "once_cell",
- "proc-macro2",
- "quote",
+ "proc-macro2 1.0.75",
+ "quote 1.0.35",
  "regex",
  "syn 2.0.53",
  "termcolor",
@@ -4803,8 +5001,8 @@ version = "0.9.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "558e40ea573c374cf53507fd240b7ee2f5477df7cfebdb97323ec61c719399c5"
 dependencies = [
- "proc-macro2",
- "quote",
+ "proc-macro2 1.0.75",
+ "quote 1.0.35",
  "syn 1.0.109",
 ]
 
@@ -4825,18 +5023,41 @@ dependencies = [
  "elliptic-curve",
  "rfc6979",
  "serdect",
- "signature",
+ "signature 2.1.0",
  "spki",
 ]
 
 [[package]]
 name = "ed25519"
+version = "1.5.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "91cff35c70bba8a626e3185d8cd48cc11b5437e1a5bcd15b9b5fa3c64b6dfee7"
+dependencies = [
+ "signature 1.6.4",
+]
+
+[[package]]
+name = "ed25519"
 version = "2.2.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "60f6d271ca33075c88028be6f04d502853d63a5ece419d269c15315d4fc1cf1d"
 dependencies = [
  "pkcs8",
- "signature",
+ "signature 2.1.0",
+]
+
+[[package]]
+name = "ed25519-dalek"
+version = "1.0.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "c762bae6dcaf24c4c84667b8579785430908723d5c889f469d76a41d59cc7a9d"
+dependencies = [
+ "curve25519-dalek 3.2.0",
+ "ed25519 1.5.3",
+ "rand 0.7.3",
+ "serde",
+ "sha2 0.9.9",
+ "zeroize",
 ]
 
 [[package]]
@@ -4846,7 +5067,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "1f628eaec48bfd21b865dc2950cfa014450c01d2fa2b69a86c2fd5844ec523c0"
 dependencies = [
  "curve25519-dalek 4.1.2",
- "ed25519",
+ "ed25519 2.2.2",
  "rand_core 0.6.4",
  "serde",
  "sha2 0.10.7",
@@ -4875,7 +5096,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "7d9ce6874da5d4415896cd45ffbc4d1cfc0c4f9c079427bd870742c30f2f65a9"
 dependencies = [
  "curve25519-dalek 4.1.2",
- "ed25519",
+ "ed25519 2.2.2",
  "hashbrown 0.14.3",
  "hex",
  "rand_core 0.6.4",
@@ -4963,12 +5184,24 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "c9720bba047d567ffc8a3cba48bf19126600e249ab7f128e9233e6376976a116"
 dependencies = [
  "heck 0.4.1",
- "proc-macro2",
- "quote",
+ "proc-macro2 1.0.75",
+ "quote 1.0.35",
  "syn 1.0.109",
 ]
 
 [[package]]
+name = "enum-as-inner"
+version = "0.6.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "5ffccbb6966c05b32ef8fbac435df276c4ae4d3dc55a8cd0eb9745e6c12f546a"
+dependencies = [
+ "heck 0.4.1",
+ "proc-macro2 1.0.75",
+ "quote 1.0.35",
+ "syn 2.0.53",
+]
+
+[[package]]
 name = "enumflags2"
 version = "0.7.7"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -4983,8 +5216,8 @@ version = "0.7.7"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "5e9a1f9f7d83e59740248a6e14ecf93929ade55027844dfcea78beafccc15745"
 dependencies = [
- "proc-macro2",
- "quote",
+ "proc-macro2 1.0.75",
+ "quote 1.0.35",
  "syn 2.0.53",
 ]
 
@@ -4994,8 +5227,8 @@ version = "0.1.12"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "c2ad8cef1d801a4686bfd8919f0b30eac4c8e48968c437a6405ded4fb5272d2b"
 dependencies = [
- "proc-macro2",
- "quote",
+ "proc-macro2 1.0.75",
+ "quote 1.0.35",
  "syn 2.0.53",
 ]
 
@@ -5058,6 +5291,21 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "5443807d6dff69373d433ab9ef5378ad8df50ca6298caf15de6e52e24aaf54d5"
 
 [[package]]
+name = "equivocation-detector"
+version = "0.1.0"
+dependencies = [
+ "async-std",
+ "async-trait",
+ "bp-header-chain",
+ "finality-relay",
+ "frame-support",
+ "futures",
+ "log",
+ "num-traits",
+ "relay-utils",
+]
+
+[[package]]
 name = "erased-serde"
 version = "0.4.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -5182,8 +5430,8 @@ checksum = "a718c0675c555c5f976fff4ea9e2c150fa06cefa201cadef87cfbf9324075881"
 dependencies = [
  "blake3",
  "fs-err",
- "proc-macro2",
- "quote",
+ "proc-macro2 1.0.75",
+ "quote 1.0.35",
 ]
 
 [[package]]
@@ -5194,8 +5442,8 @@ checksum = "5f86a749cf851891866c10515ef6c299b5c69661465e9c3bbe7e07a2b77fb0f7"
 dependencies = [
  "blake2 0.10.6",
  "fs-err",
- "proc-macro2",
- "quote",
+ "proc-macro2 1.0.75",
+ "quote 1.0.35",
  "syn 2.0.53",
 ]
 
@@ -5266,8 +5514,8 @@ dependencies = [
  "expander 0.0.4",
  "indexmap 1.9.3",
  "proc-macro-crate 1.3.1",
- "proc-macro2",
- "quote",
+ "proc-macro2 1.0.75",
+ "quote 1.0.35",
  "syn 1.0.109",
  "thiserror",
 ]
@@ -5362,11 +5610,26 @@ dependencies = [
  "num-traits",
  "parity-scale-codec",
  "parking_lot 0.12.1",
- "rand",
+ "rand 0.8.5",
  "scale-info",
 ]
 
 [[package]]
+name = "finality-relay"
+version = "0.1.0"
+dependencies = [
+ "async-std",
+ "async-trait",
+ "backoff",
+ "bp-header-chain",
+ "futures",
+ "log",
+ "num-traits",
+ "parking_lot 0.12.1",
+ "relay-utils",
+]
+
+[[package]]
 name = "findshlibs"
 version = "0.10.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -5385,7 +5648,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "835c052cb0c08c1acf6ffd71c022172e18723949c8282f2b9f27efbc51e64534"
 dependencies = [
  "byteorder",
- "rand",
+ "rand 0.8.5",
  "rustc-hex",
  "static_assertions",
 ]
@@ -5423,6 +5686,21 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "3f9eec918d3f24069decb9af1554cad7c880e2da24a9afd88aca000531ab82c1"
 
 [[package]]
+name = "foreign-types"
+version = "0.3.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "f6f339eb8adc052cd2ca78910fda869aefa38d22d5cb648e6485e4d3fc06f3b1"
+dependencies = [
+ "foreign-types-shared",
+]
+
+[[package]]
+name = "foreign-types-shared"
+version = "0.1.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "00b0228411908ca8685dba7fc2cdd70ec9990a6e753e89b6ac91a84c40fbaf4b"
+
+[[package]]
 name = "fork-tree"
 version = "12.0.0"
 dependencies = [
@@ -5455,35 +5733,6 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "6c2141d6d6c8512188a7891b4b01590a45f6dac67afb4f255c4124dbb86d4eaa"
 
 [[package]]
-name = "frame"
-version = "0.0.1-dev"
-dependencies = [
- "docify",
- "frame-executive",
- "frame-support",
- "frame-system",
- "frame-system-rpc-runtime-api",
- "log",
- "pallet-examples",
- "parity-scale-codec",
- "scale-info",
- "sp-api",
- "sp-arithmetic",
- "sp-block-builder",
- "sp-consensus-aura",
- "sp-consensus-grandpa",
- "sp-core",
- "sp-inherents",
- "sp-io",
- "sp-offchain",
- "sp-runtime",
- "sp-session",
- "sp-std 14.0.0",
- "sp-transaction-pool",
- "sp-version",
-]
-
-[[package]]
 name = "frame-benchmarking"
 version = "28.0.0"
 dependencies = [
@@ -5529,9 +5778,10 @@ dependencies = [
  "linked-hash-map",
  "log",
  "parity-scale-codec",
- "rand",
+ "rand 0.8.5",
  "rand_pcg",
  "sc-block-builder",
+ "sc-chain-spec",
  "sc-cli",
  "sc-client-api",
  "sc-client-db",
@@ -5545,6 +5795,7 @@ dependencies = [
  "sp-core",
  "sp-database",
  "sp-externalities 0.25.0",
+ "sp-genesis-builder",
  "sp-inherents",
  "sp-io",
  "sp-keystore",
@@ -5579,8 +5830,8 @@ dependencies = [
  "frame-support",
  "parity-scale-codec",
  "proc-macro-crate 3.0.0",
- "proc-macro2",
- "quote",
+ "proc-macro2 1.0.75",
+ "quote 1.0.35",
  "scale-info",
  "sp-arithmetic",
  "syn 2.0.53",
@@ -5595,7 +5846,7 @@ dependencies = [
  "frame-support",
  "frame-system",
  "parity-scale-codec",
- "rand",
+ "rand 0.8.5",
  "scale-info",
  "sp-arithmetic",
  "sp-core",
@@ -5615,7 +5866,7 @@ dependencies = [
  "frame-support",
  "honggfuzz",
  "parity-scale-codec",
- "rand",
+ "rand 0.8.5",
  "scale-info",
  "sp-arithmetic",
  "sp-npos-elections",
@@ -5658,6 +5909,20 @@ dependencies = [
 ]
 
 [[package]]
+name = "frame-omni-bencher"
+version = "0.1.0"
+dependencies = [
+ "clap 4.5.3",
+ "cumulus-primitives-proof-size-hostfunction",
+ "env_logger 0.11.3",
+ "frame-benchmarking-cli",
+ "log",
+ "sc-cli",
+ "sp-runtime",
+ "sp-statement-store",
+]
+
+[[package]]
 name = "frame-remote-externalities"
 version = "0.35.0"
 dependencies = [
@@ -5736,8 +6001,8 @@ dependencies = [
  "itertools 0.10.5",
  "macro_magic",
  "proc-macro-warning",
- "proc-macro2",
- "quote",
+ "proc-macro2 1.0.75",
+ "quote 1.0.35",
  "regex",
  "sp-crypto-hashing",
  "syn 2.0.53",
@@ -5749,8 +6014,8 @@ version = "10.0.0"
 dependencies = [
  "frame-support-procedural-tools-derive",
  "proc-macro-crate 3.0.0",
- "proc-macro2",
- "quote",
+ "proc-macro2 1.0.75",
+ "quote 1.0.35",
  "syn 2.0.53",
 ]
 
@@ -5758,8 +6023,8 @@ dependencies = [
 name = "frame-support-procedural-tools-derive"
 version = "11.0.0"
 dependencies = [
- "proc-macro2",
- "quote",
+ "proc-macro2 1.0.75",
+ "quote 1.0.35",
  "syn 2.0.53",
 ]
 
@@ -5820,8 +6085,8 @@ dependencies = [
 name = "frame-support-test-stg-frame-crate"
 version = "0.1.0"
 dependencies = [
- "frame",
  "parity-scale-codec",
+ "polkadot-sdk-frame",
  "scale-info",
 ]
 
@@ -5991,8 +6256,8 @@ version = "0.3.30"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "87750cf4b7a4c0625b1529e4c543c2182106e4dedc60a2a6455e00d212c489ac"
 dependencies = [
- "proc-macro2",
- "quote",
+ "proc-macro2 1.0.75",
+ "quote 1.0.35",
  "syn 2.0.53",
 ]
 
@@ -6123,7 +6388,7 @@ version = "0.0.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "6ea1015b5a70616b688dc230cfe50c8af89d972cb132d5a622814d29773b10b9"
 dependencies = [
- "rand",
+ "rand 0.8.5",
  "rand_core 0.6.4",
 ]
 
@@ -6175,6 +6440,18 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "d2fabcfbdc87f4758337ca535fb41a6d701b65693ce38287d856d1674551ec9b"
 
 [[package]]
+name = "gloo-timers"
+version = "0.2.6"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "9b995a66bb87bebce9a0f4a95aed01daca4872c050bfcb21653361c03bc35e5c"
+dependencies = [
+ "futures-channel",
+ "futures-core",
+ "js-sys",
+ "wasm-bindgen",
+]
+
+[[package]]
 name = "glutton-westend-runtime"
 version = "3.0.0"
 dependencies = [
@@ -6234,7 +6511,7 @@ dependencies = [
  "nonzero_ext",
  "parking_lot 0.12.1",
  "quanta",
- "rand",
+ "rand 0.8.5",
  "smallvec",
 ]
 
@@ -6251,9 +6528,9 @@ dependencies = [
 
 [[package]]
 name = "h2"
-version = "0.3.24"
+version = "0.3.26"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "bb2c4422095b67ee78da96fbb51a4cc413b3b25883c7717ff7ca1ab31022c9c9"
+checksum = "81fe527a889e1532da5c525686d96d4c2e74cdd345badf8dfef9f6b39dd5f5e8"
 dependencies = [
  "bytes",
  "fnv",
@@ -6343,6 +6620,15 @@ dependencies = [
 
 [[package]]
 name = "heck"
+version = "0.3.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "6d621efb26863f0e9924c6ac577e8275e5e6b77455db64ffa6c65c904e9e132c"
+dependencies = [
+ "unicode-segmentation",
+]
+
+[[package]]
+name = "heck"
 version = "0.4.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "95505c38b4572b2d910cecb0281560f54b440a19336cbbcb27bf6ce6adc6f5a8"
@@ -6651,8 +6937,8 @@ version = "0.2.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "11d7a9f6330b71fea57921c9b61c47ee6e84f72d394754eff6163ae67e7395eb"
 dependencies = [
- "proc-macro2",
- "quote",
+ "proc-macro2 1.0.75",
+ "quote 1.0.35",
  "syn 1.0.109",
 ]
 
@@ -6671,8 +6957,8 @@ version = "0.7.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "b139284b5cf57ecfa712bcc66950bb635b31aff41c188e8a4cfc758eca374a3f"
 dependencies = [
- "proc-macro2",
- "quote",
+ "proc-macro2 1.0.75",
+ "quote 1.0.35",
 ]
 
 [[package]]
@@ -6810,6 +7096,33 @@ dependencies = [
 ]
 
 [[package]]
+name = "isahc"
+version = "1.7.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "334e04b4d781f436dc315cb1e7515bd96826426345d498149e4bde36b67f8ee9"
+dependencies = [
+ "async-channel",
+ "castaway",
+ "crossbeam-utils",
+ "curl",
+ "curl-sys",
+ "encoding_rs",
+ "event-listener 2.5.3",
+ "futures-lite",
+ "http",
+ "log",
+ "mime",
+ "once_cell",
+ "polling",
+ "slab",
+ "sluice",
+ "tracing",
+ "tracing-futures",
+ "url",
+ "waker-fn",
+]
+
+[[package]]
 name = "itertools"
 version = "0.10.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -6858,6 +7171,17 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "078e285eafdfb6c4b434e0d31e8cfcb5115b651496faca5749b88fafd4f23bfd"
 
 [[package]]
+name = "jsonpath_lib"
+version = "0.3.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "eaa63191d68230cccb81c5aa23abd53ed64d83337cacbb25a7b8c7979523774f"
+dependencies = [
+ "log",
+ "serde",
+ "serde_json",
+]
+
+[[package]]
 name = "jsonrpsee"
 version = "0.22.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -6910,7 +7234,7 @@ dependencies = [
  "jsonrpsee-types",
  "parking_lot 0.12.1",
  "pin-project",
- "rand",
+ "rand 0.8.5",
  "rustc-hash",
  "serde",
  "serde_json",
@@ -6948,8 +7272,8 @@ checksum = "30ca066e73dd70294aebc5c2675d8ffae43be944af027c857ce0d4c51785f014"
 dependencies = [
  "heck 0.4.1",
  "proc-macro-crate 3.0.0",
- "proc-macro2",
- "quote",
+ "proc-macro2 1.0.75",
+ "quote 1.0.35",
  "syn 2.0.53",
 ]
 
@@ -7060,6 +7384,7 @@ dependencies = [
  "node-primitives",
  "pallet-alliance",
  "pallet-asset-conversion",
+ "pallet-asset-conversion-ops",
  "pallet-asset-conversion-tx-payment",
  "pallet-asset-rate",
  "pallet-asset-tx-payment",
@@ -7082,6 +7407,7 @@ dependencies = [
  "pallet-election-provider-multi-phase",
  "pallet-election-provider-support-benchmarking",
  "pallet-elections-phragmen",
+ "pallet-example-mbm",
  "pallet-example-tasks",
  "pallet-fast-unstake",
  "pallet-glutton",
@@ -7167,6 +7493,15 @@ dependencies = [
 ]
 
 [[package]]
+name = "kv-log-macro"
+version = "1.0.7"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "0de8b303297635ad57c9f5059fd9cee7a47f8e8daa09df0fcd07dd39fb22977f"
+dependencies = [
+ "log",
+]
+
+[[package]]
 name = "kvdb"
 version = "0.13.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -7239,9 +7574,9 @@ checksum = "884e2677b40cc8c339eaefcb701c32ef1fd2493d71118dc0ca4b6a736c93bd67"
 
 [[package]]
 name = "libc"
-version = "0.2.152"
+version = "0.2.153"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "13e3bf6590cbc649f4d1a3eefc9d5d6eb746f5200ffb04e5e142700b8faa56e7"
+checksum = "9c198f91728a82281a64e1f4f9eeb25d82cb32a5de251c6bd1b5154d63a8e7bd"
 
 [[package]]
 name = "libflate"
@@ -7291,6 +7626,16 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "f7012b1bbb0719e1097c47611d3898568c546d597c2e74d66f6087edd5233ff4"
 
 [[package]]
+name = "libnghttp2-sys"
+version = "0.1.9+1.58.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "b57e858af2798e167e709b9d969325b6d8e9d50232fcbc494d7d54f976854a64"
+dependencies = [
+ "cc",
+ "libc",
+]
+
+[[package]]
 name = "libp2p"
 version = "0.51.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -7367,7 +7712,7 @@ dependencies = [
  "parking_lot 0.12.1",
  "pin-project",
  "quick-protobuf",
- "rand",
+ "rand 0.8.5",
  "rw-stream-sink",
  "smallvec",
  "thiserror",
@@ -7386,7 +7731,7 @@ dependencies = [
  "log",
  "parking_lot 0.12.1",
  "smallvec",
- "trust-dns-resolver",
+ "trust-dns-resolver 0.22.0",
 ]
 
 [[package]]
@@ -7418,12 +7763,12 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "276bb57e7af15d8f100d3c11cbdd32c6752b7eef4ba7a18ecf464972c07abcce"
 dependencies = [
  "bs58 0.4.0",
- "ed25519-dalek",
+ "ed25519-dalek 2.1.0",
  "log",
  "multiaddr",
  "multihash 0.17.0",
  "quick-protobuf",
- "rand",
+ "rand 0.8.5",
  "sha2 0.10.7",
  "thiserror",
  "zeroize",
@@ -7448,7 +7793,7 @@ dependencies = [
  "libp2p-swarm",
  "log",
  "quick-protobuf",
- "rand",
+ "rand 0.8.5",
  "sha2 0.10.7",
  "smallvec",
  "thiserror",
@@ -7470,11 +7815,11 @@ dependencies = [
  "libp2p-identity",
  "libp2p-swarm",
  "log",
- "rand",
+ "rand 0.8.5",
  "smallvec",
  "socket2 0.4.9",
  "tokio",
- "trust-dns-proto",
+ "trust-dns-proto 0.22.0",
  "void",
 ]
 
@@ -7506,7 +7851,7 @@ dependencies = [
  "log",
  "once_cell",
  "quick-protobuf",
- "rand",
+ "rand 0.8.5",
  "sha2 0.10.7",
  "snow",
  "static_assertions",
@@ -7528,7 +7873,7 @@ dependencies = [
  "libp2p-core",
  "libp2p-swarm",
  "log",
- "rand",
+ "rand 0.8.5",
  "void",
 ]
 
@@ -7548,7 +7893,7 @@ dependencies = [
  "log",
  "parking_lot 0.12.1",
  "quinn-proto",
- "rand",
+ "rand 0.8.5",
  "rustls 0.20.8",
  "thiserror",
  "tokio",
@@ -7566,7 +7911,7 @@ dependencies = [
  "libp2p-core",
  "libp2p-identity",
  "libp2p-swarm",
- "rand",
+ "rand 0.8.5",
  "smallvec",
 ]
 
@@ -7585,7 +7930,7 @@ dependencies = [
  "libp2p-identity",
  "libp2p-swarm-derive",
  "log",
- "rand",
+ "rand 0.8.5",
  "smallvec",
  "tokio",
  "void",
@@ -7598,7 +7943,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "0fba456131824ab6acd4c7bf61e9c0f0a3014b5fc9868ccb8e10d344594cdc4f"
 dependencies = [
  "heck 0.4.1",
- "quote",
+ "quote 1.0.35",
  "syn 1.0.109",
 ]
 
@@ -7633,7 +7978,7 @@ dependencies = [
  "rustls 0.20.8",
  "thiserror",
  "webpki",
- "x509-parser",
+ "x509-parser 0.14.0",
  "yasna",
 ]
 
@@ -7711,7 +8056,7 @@ dependencies = [
  "libsecp256k1-core",
  "libsecp256k1-gen-ecmult",
  "libsecp256k1-gen-genmult",
- "rand",
+ "rand 0.8.5",
  "serde",
  "sha2 0.9.9",
  "typenum",
@@ -7753,6 +8098,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "d97137b25e321a73eef1418d1d5d2eda4d77e12813f8e6dead84bc52c5870a7b"
 dependencies = [
  "cc",
+ "libc",
  "pkg-config",
  "vcpkg",
 ]
@@ -7839,6 +8185,60 @@ dependencies = [
 ]
 
 [[package]]
+name = "litep2p"
+version = "0.3.0"
+source = "git+https://github.com/paritytech/litep2p?branch=master#b142c9eb611fb2fe78d2830266a3675b37299ceb"
+dependencies = [
+ "async-trait",
+ "bs58 0.4.0",
+ "bytes",
+ "cid 0.10.1",
+ "ed25519-dalek 1.0.1",
+ "futures",
+ "futures-timer",
+ "hex-literal",
+ "indexmap 2.2.3",
+ "libc",
+ "mockall",
+ "multiaddr",
+ "multihash 0.17.0",
+ "network-interface",
+ "nohash-hasher",
+ "parking_lot 0.12.1",
+ "pin-project",
+ "prost 0.11.9",
+ "prost-build",
+ "quinn",
+ "rand 0.8.5",
+ "rcgen",
+ "ring 0.16.20",
+ "rustls 0.20.8",
+ "serde",
+ "sha2 0.10.7",
+ "simple-dns",
+ "smallvec",
+ "snow",
+ "socket2 0.5.6",
+ "static_assertions",
+ "str0m",
+ "thiserror",
+ "tokio",
+ "tokio-stream",
+ "tokio-tungstenite 0.20.1",
+ "tokio-util",
+ "tracing",
+ "trust-dns-resolver 0.23.2",
+ "uint",
+ "unsigned-varint",
+ "url",
+ "webpki",
+ "x25519-dalek 2.0.0",
+ "x509-parser 0.15.1",
+ "yasna",
+ "zeroize",
+]
+
+[[package]]
 name = "lock_api"
 version = "0.4.10"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -7937,7 +8337,7 @@ checksum = "e03844fc635e92f3a0067e25fa4bf3e3dbf3f2927bf3aa01bb7bc8f1c428949d"
 dependencies = [
  "macro_magic_core",
  "macro_magic_macros",
- "quote",
+ "quote 1.0.35",
  "syn 2.0.53",
 ]
 
@@ -7950,8 +8350,8 @@ dependencies = [
  "const-random",
  "derive-syn-parse 0.1.5",
  "macro_magic_core_macros",
- "proc-macro2",
- "quote",
+ "proc-macro2 1.0.75",
+ "quote 1.0.35",
  "syn 2.0.53",
 ]
 
@@ -7961,8 +8361,8 @@ version = "0.5.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "9ea73aa640dc01d62a590d48c0c3521ed739d53b27f919b25c3551e233481654"
 dependencies = [
- "proc-macro2",
- "quote",
+ "proc-macro2 1.0.75",
+ "quote 1.0.35",
  "syn 2.0.53",
 ]
 
@@ -7973,7 +8373,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "ef9d79ae96aaba821963320eb2b6e34d17df1e5a83d8a1985c29cc5be59577b3"
 dependencies = [
  "macro_magic_core",
- "quote",
+ "quote 1.0.35",
  "syn 2.0.53",
 ]
 
@@ -8105,13 +8505,31 @@ dependencies = [
 ]
 
 [[package]]
+name = "messages-relay"
+version = "0.1.0"
+dependencies = [
+ "async-std",
+ "async-trait",
+ "bp-messages",
+ "env_logger 0.11.3",
+ "finality-relay",
+ "futures",
+ "hex",
+ "log",
+ "num-traits",
+ "parking_lot 0.12.1",
+ "relay-utils",
+ "sp-arithmetic",
+]
+
+[[package]]
 name = "mick-jaeger"
 version = "0.1.8"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "69672161530e8aeca1d1400fbf3f1a1747ff60ea604265a4e906c2442df20532"
 dependencies = [
  "futures",
- "rand",
+ "rand 0.8.5",
  "thrift",
 ]
 
@@ -8132,11 +8550,11 @@ name = "minimal-template-node"
 version = "0.0.0"
 dependencies = [
  "clap 4.5.3",
- "frame",
  "futures",
  "futures-timer",
  "jsonrpsee",
  "minimal-template-runtime",
+ "polkadot-sdk-frame",
  "sc-basic-authorship",
  "sc-cli",
  "sc-client-api",
@@ -8166,7 +8584,6 @@ dependencies = [
 name = "minimal-template-runtime"
 version = "0.0.0"
 dependencies = [
- "frame",
  "pallet-balances",
  "pallet-minimal-template",
  "pallet-sudo",
@@ -8174,8 +8591,10 @@ dependencies = [
  "pallet-transaction-payment",
  "pallet-transaction-payment-rpc-runtime-api",
  "parity-scale-codec",
+ "polkadot-sdk-frame",
  "scale-info",
  "sp-genesis-builder",
+ "sp-runtime",
  "substrate-wasm-builder",
 ]
 
@@ -8216,7 +8635,7 @@ dependencies = [
  "lioness",
  "log",
  "parking_lot 0.12.1",
- "rand",
+ "rand 0.8.5",
  "rand_chacha 0.3.1",
  "rand_distr",
  "subtle 2.5.0",
@@ -8284,8 +8703,8 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "22ce75669015c4f47b289fd4d4f56e894e4c96003ffdf3ac51313126f94c6cbb"
 dependencies = [
  "cfg-if",
- "proc-macro2",
- "quote",
+ "proc-macro2 1.0.75",
+ "quote 1.0.35",
  "syn 1.0.109",
 ]
 
@@ -8342,10 +8761,14 @@ version = "0.18.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "cfd8a792c1694c6da4f68db0a9d707c72bd260994da179e6030a5dcee00bb815"
 dependencies = [
+ "blake2b_simd",
+ "blake2s_simd",
+ "blake3",
  "core2",
  "digest 0.10.7",
  "multihash-derive 0.8.0",
  "sha2 0.10.7",
+ "sha3",
  "unsigned-varint",
 ]
 
@@ -8387,8 +8810,8 @@ checksum = "fc076939022111618a5026d3be019fd8b366e76314538ff9a1b59ffbcbf98bcd"
 dependencies = [
  "proc-macro-crate 1.3.1",
  "proc-macro-error",
- "proc-macro2",
- "quote",
+ "proc-macro2 1.0.75",
+ "quote 1.0.35",
  "syn 1.0.109",
  "synstructure",
 ]
@@ -8412,8 +8835,8 @@ checksum = "d38685e08adb338659871ecfc6ee47ba9b22dcc8abcf6975d379cc49145c3040"
 dependencies = [
  "proc-macro-crate 1.3.1",
  "proc-macro-error",
- "proc-macro2",
- "quote",
+ "proc-macro2 1.0.75",
+ "quote 1.0.35",
  "syn 1.0.109",
  "synstructure",
 ]
@@ -8460,8 +8883,8 @@ version = "0.2.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "91761aed67d03ad966ef783ae962ef9bbaca728d2dd7ceb7939ec110fffad998"
 dependencies = [
- "proc-macro2",
- "quote",
+ "proc-macro2 1.0.75",
+ "quote 1.0.35",
  "syn 1.0.109",
 ]
 
@@ -8472,7 +8895,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "7bddcd3bf5144b6392de80e04c347cd7fab2508f6df16a85fc496ecd5cec39bc"
 dependencies = [
  "clap 3.2.25",
- "rand",
+ "rand 0.8.5",
 ]
 
 [[package]]
@@ -8548,6 +8971,18 @@ dependencies = [
 ]
 
 [[package]]
+name = "network-interface"
+version = "1.1.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "ae72fd9dbd7f55dda80c00d66acc3b2130436fcba9ea89118fc508eaae48dfb0"
+dependencies = [
+ "cc",
+ "libc",
+ "thiserror",
+ "winapi",
+]
+
+[[package]]
 name = "nix"
 version = "0.24.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -8613,7 +9048,7 @@ dependencies = [
  "node-primitives",
  "node-testing",
  "parity-db",
- "rand",
+ "rand 0.8.5",
  "sc-basic-authorship",
  "sc-client-api",
  "sc-transaction-pool",
@@ -8769,6 +9204,15 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "61807f77802ff30975e01f4f071c8ba10c022052f98b3294119f3e615d13e5be"
 
 [[package]]
+name = "ntapi"
+version = "0.4.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "e8a3895c6391c39d7fe7ebc444a87eb2991b2a0bc718fdabd071eec617fc68e4"
+dependencies = [
+ "winapi",
+]
+
+[[package]]
 name = "nu-ansi-term"
 version = "0.46.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -8876,6 +9320,15 @@ dependencies = [
 ]
 
 [[package]]
+name = "num_threads"
+version = "0.1.7"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "5c7398b9c8b70908f6371f47ed36737907c87c52af34c268fed0bf0ceb92ead9"
+dependencies = [
+ "libc",
+]
+
+[[package]]
 name = "number_prefix"
 version = "0.4.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -8936,12 +9389,60 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "624a8340c38c1b80fd549087862da4ba43e08858af025b236e509b6649fc13d5"
 
 [[package]]
+name = "openssl"
+version = "0.10.64"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "95a0481286a310808298130d22dd1fef0fa571e05a8f44ec801801e84b216b1f"
+dependencies = [
+ "bitflags 2.4.0",
+ "cfg-if",
+ "foreign-types",
+ "libc",
+ "once_cell",
+ "openssl-macros",
+ "openssl-sys",
+]
+
+[[package]]
+name = "openssl-macros"
+version = "0.1.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "a948666b637a0f465e8564c73e89d4dde00d72d4d473cc972f390fc3dcee7d9c"
+dependencies = [
+ "proc-macro2 1.0.75",
+ "quote 1.0.35",
+ "syn 2.0.53",
+]
+
+[[package]]
 name = "openssl-probe"
 version = "0.1.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "ff011a302c396a5197692431fc1948019154afc178baf7d8e37367442a4601cf"
 
 [[package]]
+name = "openssl-src"
+version = "300.2.3+3.2.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "5cff92b6f71555b61bb9315f7c64da3ca43d87531622120fea0195fc761b4843"
+dependencies = [
+ "cc",
+]
+
+[[package]]
+name = "openssl-sys"
+version = "0.9.102"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "c597637d56fbc83893a35eb0dd04b2b8e7a50c91e64e9493e398b5df4fb45fa2"
+dependencies = [
+ "cc",
+ "libc",
+ "openssl-src",
+ "pkg-config",
+ "vcpkg",
+]
+
+[[package]]
 name = "option-ext"
 version = "0.2.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -8975,8 +9476,8 @@ dependencies = [
  "itertools 0.11.0",
  "petgraph",
  "proc-macro-crate 1.3.1",
- "proc-macro2",
- "quote",
+ "proc-macro2 1.0.75",
+ "quote 1.0.35",
  "syn 1.0.109",
 ]
 
@@ -9035,6 +9536,7 @@ dependencies = [
  "frame-benchmarking",
  "frame-support",
  "frame-system",
+ "log",
  "pallet-assets",
  "pallet-balances",
  "parity-scale-codec",
@@ -9049,6 +9551,27 @@ dependencies = [
 ]
 
 [[package]]
+name = "pallet-asset-conversion-ops"
+version = "0.1.0"
+dependencies = [
+ "frame-benchmarking",
+ "frame-support",
+ "frame-system",
+ "log",
+ "pallet-asset-conversion",
+ "pallet-assets",
+ "pallet-balances",
+ "parity-scale-codec",
+ "primitive-types",
+ "scale-info",
+ "sp-arithmetic",
+ "sp-core",
+ "sp-io",
+ "sp-runtime",
+ "sp-std 14.0.0",
+]
+
+[[package]]
 name = "pallet-asset-conversion-tx-payment"
 version = "10.0.0"
 dependencies = [
@@ -9107,7 +9630,7 @@ dependencies = [
 
 [[package]]
 name = "pallet-assets"
-version = "29.0.0"
+version = "29.1.0"
 dependencies = [
  "frame-benchmarking",
  "frame-support",
@@ -9243,7 +9766,7 @@ dependencies = [
  "frame-election-provider-support",
  "honggfuzz",
  "pallet-bags-list",
- "rand",
+ "rand 0.8.5",
 ]
 
 [[package]]
@@ -9355,6 +9878,30 @@ dependencies = [
 ]
 
 [[package]]
+name = "pallet-bridge-beefy"
+version = "0.1.0"
+dependencies = [
+ "bp-beefy",
+ "bp-runtime",
+ "bp-test-utils",
+ "ckb-merkle-mountain-range",
+ "frame-support",
+ "frame-system",
+ "log",
+ "pallet-beefy-mmr",
+ "pallet-mmr",
+ "parity-scale-codec",
+ "rand 0.8.5",
+ "scale-info",
+ "serde",
+ "sp-consensus-beefy",
+ "sp-core",
+ "sp-io",
+ "sp-runtime",
+ "sp-std 14.0.0",
+]
+
+[[package]]
 name = "pallet-bridge-grandpa"
 version = "0.7.0"
 dependencies = [
@@ -9448,8 +9995,11 @@ dependencies = [
  "frame-benchmarking",
  "frame-support",
  "frame-system",
+ "log",
  "parity-scale-codec",
+ "pretty_assertions",
  "scale-info",
+ "sp-api",
  "sp-arithmetic",
  "sp-core",
  "sp-io",
@@ -9490,7 +10040,7 @@ dependencies = [
  "pallet-session",
  "pallet-timestamp",
  "parity-scale-codec",
- "rand",
+ "rand 0.8.5",
  "scale-info",
  "sp-consensus-aura",
  "sp-core",
@@ -9559,7 +10109,7 @@ dependencies = [
  "parity-scale-codec",
  "paste",
  "pretty_assertions",
- "rand",
+ "rand 0.8.5",
  "rand_pcg",
  "scale-info",
  "serde",
@@ -9634,8 +10184,8 @@ dependencies = [
 name = "pallet-contracts-proc-macro"
 version = "18.0.0"
 dependencies = [
- "proc-macro2",
- "quote",
+ "proc-macro2 1.0.75",
+ "quote 1.0.35",
  "syn 2.0.53",
 ]
 
@@ -9777,7 +10327,7 @@ dependencies = [
  "pallet-election-provider-support-benchmarking",
  "parity-scale-codec",
  "parking_lot 0.12.1",
- "rand",
+ "rand 0.8.5",
  "scale-info",
  "sp-arithmetic",
  "sp-core",
@@ -9844,8 +10394,8 @@ dependencies = [
 name = "pallet-example-frame-crate"
 version = "0.0.1"
 dependencies = [
- "frame",
  "parity-scale-codec",
+ "polkadot-sdk-frame",
  "scale-info",
 ]
 
@@ -9867,6 +10417,20 @@ dependencies = [
 ]
 
 [[package]]
+name = "pallet-example-mbm"
+version = "0.1.0"
+dependencies = [
+ "frame-benchmarking",
+ "frame-support",
+ "frame-system",
+ "log",
+ "pallet-migrations",
+ "parity-scale-codec",
+ "scale-info",
+ "sp-io",
+]
+
+[[package]]
 name = "pallet-example-offchain-worker"
 version = "28.0.0"
 dependencies = [
@@ -10136,7 +10700,7 @@ dependencies = [
  "frame-system",
  "log",
  "parity-scale-codec",
- "rand",
+ "rand 0.8.5",
  "rand_distr",
  "scale-info",
  "serde",
@@ -10178,8 +10742,8 @@ dependencies = [
 name = "pallet-minimal-template"
 version = "0.0.0"
 dependencies = [
- "frame",
  "parity-scale-codec",
+ "polkadot-sdk-frame",
  "scale-info",
 ]
 
@@ -10369,7 +10933,7 @@ dependencies = [
  "honggfuzz",
  "log",
  "pallet-nomination-pools",
- "rand",
+ "rand 0.8.5",
  "sp-io",
  "sp-runtime",
  "sp-tracing 16.0.0",
@@ -10498,7 +11062,7 @@ dependencies = [
 
 [[package]]
 name = "pallet-parameters"
-version = "0.0.1"
+version = "0.1.0"
 dependencies = [
  "docify",
  "frame-benchmarking",
@@ -10784,7 +11348,7 @@ dependencies = [
  "pallet-staking-reward-curve",
  "pallet-timestamp",
  "parity-scale-codec",
- "rand",
+ "rand 0.8.5",
  "scale-info",
  "sp-core",
  "sp-io",
@@ -10861,8 +11425,8 @@ name = "pallet-staking-reward-curve"
 version = "11.0.0"
 dependencies = [
  "proc-macro-crate 3.0.0",
- "proc-macro2",
- "quote",
+ "proc-macro2 1.0.75",
+ "quote 1.0.35",
  "sp-runtime",
  "syn 2.0.53",
 ]
@@ -11212,7 +11776,6 @@ dependencies = [
  "polkadot-primitives",
  "polkadot-runtime-common",
  "scale-info",
- "sp-core",
  "sp-io",
  "sp-runtime",
  "sp-std 14.0.0",
@@ -11413,6 +11976,21 @@ dependencies = [
 ]
 
 [[package]]
+name = "parachains-relay"
+version = "0.1.0"
+dependencies = [
+ "async-std",
+ "async-trait",
+ "bp-polkadot-core",
+ "futures",
+ "log",
+ "parity-scale-codec",
+ "relay-substrate-client",
+ "relay-utils",
+ "sp-core",
+]
+
+[[package]]
 name = "parachains-runtimes-test-utils"
 version = "7.0.0"
 dependencies = [
@@ -11450,7 +12028,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "4e69bf016dc406eff7d53a7d3f7cf1c2e72c82b9088aac1118591e36dd2cd3e9"
 dependencies = [
  "bitcoin_hashes 0.13.0",
- "rand",
+ "rand 0.8.5",
  "rand_core 0.6.4",
  "serde",
  "unicode-normalization",
@@ -11477,7 +12055,7 @@ dependencies = [
  "lz4",
  "memmap2 0.5.10",
  "parking_lot 0.12.1",
- "rand",
+ "rand 0.8.5",
  "siphasher",
  "snap",
 ]
@@ -11504,8 +12082,8 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "312270ee71e1cd70289dacf597cab7b207aa107d2f28191c2ae45b2ece18a260"
 dependencies = [
  "proc-macro-crate 1.3.1",
- "proc-macro2",
- "quote",
+ "proc-macro2 1.0.75",
+ "quote 1.0.35",
  "syn 1.0.109",
 ]
 
@@ -11539,7 +12117,7 @@ version = "0.1.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "f557c32c6d268a07c921471619c0295f5efad3a0e76d4f97a05c091a51d110b2"
 dependencies = [
- "proc-macro2",
+ "proc-macro2 1.0.75",
  "syn 1.0.109",
  "synstructure",
 ]
@@ -11960,8 +12538,8 @@ checksum = "68ca01446f50dbda87c1786af8770d535423fa8a53aec03b8f4e3d7eb10e0929"
 dependencies = [
  "pest",
  "pest_meta",
- "proc-macro2",
- "quote",
+ "proc-macro2 1.0.75",
+ "quote 1.0.35",
  "syn 2.0.53",
 ]
 
@@ -12001,8 +12579,8 @@ version = "1.1.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "4359fd9c9171ec6e8c62926d6faaf553a8dc3f64e1507e76da7911b4f6a04405"
 dependencies = [
- "proc-macro2",
- "quote",
+ "proc-macro2 1.0.75",
+ "quote 1.0.35",
  "syn 2.0.53",
 ]
 
@@ -12115,7 +12693,7 @@ dependencies = [
  "polkadot-node-subsystem-util",
  "polkadot-primitives",
  "polkadot-primitives-test-helpers",
- "rand",
+ "rand 0.8.5",
  "rand_chacha 0.3.1",
  "rand_core 0.6.4",
  "schnorrkel 0.11.4",
@@ -12141,7 +12719,7 @@ dependencies = [
  "polkadot-node-subsystem-test-helpers",
  "polkadot-node-subsystem-util",
  "polkadot-primitives",
- "rand",
+ "rand 0.8.5",
  "rand_chacha 0.3.1",
  "sp-application-crypto",
  "sp-authority-discovery",
@@ -12170,7 +12748,7 @@ dependencies = [
  "polkadot-primitives",
  "polkadot-primitives-test-helpers",
  "polkadot-subsystem-bench",
- "rand",
+ "rand 0.8.5",
  "sc-network",
  "schnellru",
  "sp-core",
@@ -12202,7 +12780,7 @@ dependencies = [
  "polkadot-primitives",
  "polkadot-primitives-test-helpers",
  "polkadot-subsystem-bench",
- "rand",
+ "rand 0.8.5",
  "sc-network",
  "schnellru",
  "sp-application-crypto",
@@ -12240,7 +12818,6 @@ dependencies = [
  "sp-runtime",
  "substrate-build-script-utils",
  "thiserror",
- "try-runtime-cli",
 ]
 
 [[package]]
@@ -12347,7 +12924,7 @@ dependencies = [
  "polkadot-node-subsystem-util",
  "polkadot-primitives",
  "quickcheck",
- "rand",
+ "rand 0.8.5",
  "rand_chacha 0.3.1",
  "sc-network",
  "sc-network-common",
@@ -12439,7 +13016,8 @@ dependencies = [
  "polkadot-overseer",
  "polkadot-primitives",
  "polkadot-primitives-test-helpers",
- "rand",
+ "polkadot-subsystem-bench",
+ "rand 0.8.5",
  "rand_chacha 0.3.1",
  "rand_core 0.6.4",
  "sc-keystore",
@@ -12717,14 +13295,13 @@ dependencies = [
  "polkadot-parachain-primitives",
  "polkadot-primitives",
  "procfs",
- "rand",
+ "rand 0.8.5",
  "rococo-runtime",
  "rusty-fork",
  "sc-sysinfo",
  "slotmap",
  "sp-core",
  "sp-maybe-compressed-blob",
- "sp-wasm-interface 20.0.0",
  "tempfile",
  "test-parachain-adder",
  "test-parachain-halt",
@@ -12761,7 +13338,6 @@ name = "polkadot-node-core-pvf-common"
 version = "7.0.0"
 dependencies = [
  "assert_matches",
- "cfg-if",
  "cpu-time",
  "futures",
  "landlock",
@@ -12855,6 +13431,7 @@ dependencies = [
  "polkadot-node-primitives",
  "polkadot-primitives",
  "sc-network",
+ "sc-network-types",
  "sp-core",
  "thiserror",
  "tokio",
@@ -12901,10 +13478,12 @@ dependencies = [
  "polkadot-node-jaeger",
  "polkadot-node-primitives",
  "polkadot-primitives",
- "rand",
+ "rand 0.8.5",
  "rand_chacha 0.3.1",
  "sc-authority-discovery",
  "sc-network",
+ "sc-network-types",
+ "sp-runtime",
  "strum 0.26.2",
  "thiserror",
  "tracing-gum",
@@ -12979,6 +13558,7 @@ dependencies = [
  "polkadot-statement-table",
  "sc-client-api",
  "sc-network",
+ "sc-network-types",
  "sc-transaction-pool-api",
  "smallvec",
  "sp-api",
@@ -13022,7 +13602,7 @@ dependencies = [
  "polkadot-primitives",
  "polkadot-primitives-test-helpers",
  "prioritized-metered-channel",
- "rand",
+ "rand 0.8.5",
  "sc-client-api",
  "schnellru",
  "sp-application-crypto",
@@ -13061,7 +13641,7 @@ dependencies = [
 
 [[package]]
 name = "polkadot-parachain-bin"
-version = "1.10.0"
+version = "1.11.0"
 dependencies = [
  "assert_cmd",
  "asset-hub-rococo-runtime",
@@ -13203,7 +13783,7 @@ name = "polkadot-primitives-test-helpers"
 version = "1.0.0"
 dependencies = [
  "polkadot-primitives",
- "rand",
+ "rand 0.8.5",
  "sp-application-crypto",
  "sp-core",
  "sp-keyring",
@@ -13342,7 +13922,7 @@ dependencies = [
  "polkadot-primitives",
  "polkadot-primitives-test-helpers",
  "polkadot-runtime-metrics",
- "rand",
+ "rand 0.8.5",
  "rand_chacha 0.3.1",
  "rstest",
  "rustc-hex",
@@ -13377,7 +13957,6 @@ dependencies = [
  "cumulus-pallet-aura-ext",
  "cumulus-pallet-parachain-system",
  "docify",
- "frame",
  "frame-executive",
  "frame-support",
  "frame-system",
@@ -13405,6 +13984,7 @@ dependencies = [
  "pallet-uniques",
  "pallet-utility",
  "parity-scale-codec",
+ "polkadot-sdk-frame",
  "sc-cli",
  "sc-client-db",
  "sc-consensus-aura",
@@ -13435,6 +14015,35 @@ dependencies = [
 ]
 
 [[package]]
+name = "polkadot-sdk-frame"
+version = "0.1.0"
+dependencies = [
+ "docify",
+ "frame-executive",
+ "frame-support",
+ "frame-system",
+ "frame-system-rpc-runtime-api",
+ "log",
+ "pallet-examples",
+ "parity-scale-codec",
+ "scale-info",
+ "sp-api",
+ "sp-arithmetic",
+ "sp-block-builder",
+ "sp-consensus-aura",
+ "sp-consensus-grandpa",
+ "sp-core",
+ "sp-inherents",
+ "sp-io",
+ "sp-offchain",
+ "sp-runtime",
+ "sp-session",
+ "sp-std 14.0.0",
+ "sp-transaction-pool",
+ "sp-version",
+]
+
+[[package]]
 name = "polkadot-service"
 version = "7.0.0"
 dependencies = [
@@ -13648,12 +14257,13 @@ dependencies = [
  "prometheus",
  "pyroscope",
  "pyroscope_pprofrs",
- "rand",
+ "rand 0.8.5",
  "rand_chacha 0.3.1",
  "rand_core 0.6.4",
  "rand_distr",
  "sc-keystore",
  "sc-network",
+ "sc-network-types",
  "sc-service",
  "schnorrkel 0.11.4",
  "serde",
@@ -13726,7 +14336,7 @@ dependencies = [
  "polkadot-node-subsystem-types",
  "polkadot-node-subsystem-util",
  "polkadot-primitives",
- "rand",
+ "rand 0.8.5",
  "sp-core",
  "sp-keystore",
  "substrate-build-script-utils",
@@ -13737,7 +14347,6 @@ dependencies = [
 name = "polkadot-test-runtime"
 version = "1.0.0"
 dependencies = [
- "bitvec",
  "frame-election-provider-support",
  "frame-executive",
  "frame-support",
@@ -13762,16 +14371,12 @@ dependencies = [
  "pallet-vesting",
  "pallet-xcm",
  "parity-scale-codec",
- "polkadot-parachain-primitives",
  "polkadot-primitives",
  "polkadot-runtime-common",
  "polkadot-runtime-parachains",
- "rustc-hex",
  "scale-info",
  "serde",
- "serde_derive",
  "serde_json",
- "smallvec",
  "sp-api",
  "sp-authority-discovery",
  "sp-block-builder",
@@ -13819,7 +14424,7 @@ dependencies = [
  "polkadot-runtime-parachains",
  "polkadot-service",
  "polkadot-test-runtime",
- "rand",
+ "rand 0.8.5",
  "sc-authority-discovery",
  "sc-chain-spec",
  "sc-cli",
@@ -13908,8 +14513,8 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "5c4fdfc49717fb9a196e74a5d28e0bc764eb394a2c803eb11133a31ac996c60c"
 dependencies = [
  "polkavm-common",
- "proc-macro2",
- "quote",
+ "proc-macro2 1.0.75",
+ "quote 1.0.35",
  "syn 2.0.53",
 ]
 
@@ -14018,7 +14623,7 @@ version = "0.1.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "be97d76faf1bfab666e1375477b23fde79eccf0276e9b63b92a39d676a889ba9"
 dependencies = [
- "rand",
+ "rand 0.8.5",
 ]
 
 [[package]]
@@ -14105,7 +14710,7 @@ version = "0.1.25"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "6c8646e95016a7a6c4adea95bafa8a16baab64b583356217f2c85db4a39d9a86"
 dependencies = [
- "proc-macro2",
+ "proc-macro2 1.0.75",
  "syn 1.0.109",
 ]
 
@@ -14115,7 +14720,7 @@ version = "0.2.12"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "6c64d9ba0963cdcea2e1b2230fbae2bab30eb25a174be395c41e764bfb65dd62"
 dependencies = [
- "proc-macro2",
+ "proc-macro2 1.0.75",
  "syn 2.0.53",
 ]
 
@@ -14176,8 +14781,8 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "da25490ff9892aab3fcf7c36f08cfb902dd3e71ca0f9f9517bea02a73a5ce38c"
 dependencies = [
  "proc-macro-error-attr",
- "proc-macro2",
- "quote",
+ "proc-macro2 1.0.75",
+ "quote 1.0.35",
  "syn 1.0.109",
  "version_check",
 ]
@@ -14188,8 +14793,8 @@ version = "1.0.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "a1be40180e52ecc98ad80b184934baf3d0d29f979574e439af5a55274b35f869"
 dependencies = [
- "proc-macro2",
- "quote",
+ "proc-macro2 1.0.75",
+ "quote 1.0.35",
  "version_check",
 ]
 
@@ -14205,13 +14810,22 @@ version = "1.0.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "9b698b0b09d40e9b7c1a47b132d66a8b54bcd20583d9b6d06e4535e383b4405c"
 dependencies = [
- "proc-macro2",
- "quote",
+ "proc-macro2 1.0.75",
+ "quote 1.0.35",
  "syn 2.0.53",
 ]
 
 [[package]]
 name = "proc-macro2"
+version = "0.4.30"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "cf3d2011ab5c909338f7887f4fc896d35932e29146c12c8d01da6b22a80ba759"
+dependencies = [
+ "unicode-xid 0.1.0",
+]
+
+[[package]]
+name = "proc-macro2"
 version = "1.0.75"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "907a61bd0f64c2f29cd1cf1dc34d05176426a3f504a78010f08416ddb7b13708"
@@ -14277,8 +14891,8 @@ version = "0.4.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "440f724eba9f6996b75d63681b0a92b06947f1457076d503a4d2e2c8f56442b8"
 dependencies = [
- "proc-macro2",
- "quote",
+ "proc-macro2 1.0.75",
+ "quote 1.0.35",
  "syn 2.0.53",
 ]
 
@@ -14305,7 +14919,7 @@ dependencies = [
  "bitflags 2.4.0",
  "lazy_static",
  "num-traits",
- "rand",
+ "rand 0.8.5",
  "rand_chacha 0.3.1",
  "rand_xorshift",
  "regex-syntax 0.8.2",
@@ -14364,8 +14978,8 @@ checksum = "e5d2d8d10f3c6ded6da8b05b5fb3b8a5082514344d56c9f871412d29b4e075b4"
 dependencies = [
  "anyhow",
  "itertools 0.10.5",
- "proc-macro2",
- "quote",
+ "proc-macro2 1.0.75",
+ "quote 1.0.35",
  "syn 1.0.109",
 ]
 
@@ -14377,8 +14991,8 @@ checksum = "efb6c9a1dd1def8e2124d17e83a20af56f1570d6c2d2bd9e266ccb768df3840e"
 dependencies = [
  "anyhow",
  "itertools 0.11.0",
- "proc-macro2",
- "quote",
+ "proc-macro2 1.0.75",
+ "quote 1.0.35",
  "syn 2.0.53",
 ]
 
@@ -14482,7 +15096,7 @@ checksum = "588f6378e4dd99458b60ec275b4477add41ce4fa9f64dcba6f15adccb19b50d6"
 dependencies = [
  "env_logger 0.8.4",
  "log",
- "rand",
+ "rand 0.8.5",
 ]
 
 [[package]]
@@ -14497,13 +15111,31 @@ dependencies = [
 ]
 
 [[package]]
+name = "quinn"
+version = "0.9.4"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "2e8b432585672228923edbbf64b8b12c14e1112f62e88737655b4a083dbcd78e"
+dependencies = [
+ "bytes",
+ "pin-project-lite 0.2.12",
+ "quinn-proto",
+ "quinn-udp",
+ "rustc-hash",
+ "rustls 0.20.8",
+ "thiserror",
+ "tokio",
+ "tracing",
+ "webpki",
+]
+
+[[package]]
 name = "quinn-proto"
 version = "0.9.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "c956be1b23f4261676aed05a0046e204e8a6836e50203902683a718af0797989"
 dependencies = [
  "bytes",
- "rand",
+ "rand 0.8.5",
  "ring 0.16.20",
  "rustc-hash",
  "rustls 0.20.8",
@@ -14515,12 +15147,34 @@ dependencies = [
 ]
 
 [[package]]
+name = "quinn-udp"
+version = "0.3.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "641538578b21f5e5c8ea733b736895576d0fe329bb883b937db6f4d163dbaaf4"
+dependencies = [
+ "libc",
+ "quinn-proto",
+ "socket2 0.4.9",
+ "tracing",
+ "windows-sys 0.42.0",
+]
+
+[[package]]
+name = "quote"
+version = "0.6.13"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "6ce23b6b870e8f94f81fb0a363d65d86675884b34a09043c81e5562f11c1f8e1"
+dependencies = [
+ "proc-macro2 0.4.30",
+]
+
+[[package]]
 name = "quote"
 version = "1.0.35"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "291ec9ab5efd934aaf503a6466c5d5251535d108ee747472c3977cc5acc868ef"
 dependencies = [
- "proc-macro2",
+ "proc-macro2 1.0.75",
 ]
 
 [[package]]
@@ -14531,6 +15185,19 @@ checksum = "dc33ff2d4973d518d823d61aa239014831e521c75da58e3df4840d3f47749d09"
 
 [[package]]
 name = "rand"
+version = "0.7.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "6a6b1679d49b24bbfe0c803429aa1874472f50d9b363131f0e89fc356b544d03"
+dependencies = [
+ "getrandom 0.1.16",
+ "libc",
+ "rand_chacha 0.2.2",
+ "rand_core 0.5.1",
+ "rand_hc",
+]
+
+[[package]]
+name = "rand"
 version = "0.8.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "34af8d1a0e25924bc5b7c43c079c942339d8f0a8b57c39049bef581b46327404"
@@ -14585,7 +15252,16 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "32cb0b9bc82b0a0876c2dd994a7e7a2683d3e7390ca40e6886785ef0c7e3ee31"
 dependencies = [
  "num-traits",
- "rand",
+ "rand 0.8.5",
+]
+
+[[package]]
+name = "rand_hc"
+version = "0.2.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "ca3129af7b92a17112d59ad498c6f81eaf463253766b90396d39ea7a39d6613c"
+dependencies = [
+ "rand_core 0.5.1",
 ]
 
 [[package]]
@@ -14623,9 +15299,9 @@ checksum = "60a357793950651c4ed0f3f52338f53b2f809f32d83a07f72909fa13e4c6c1e3"
 
 [[package]]
 name = "rayon"
-version = "1.7.0"
+version = "1.10.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1d2df5196e37bcc87abebc0053e20787d73847bb33134a69841207dd0a47f03b"
+checksum = "b418a60154510ca1a002a752ca9714984e21e4241e804d32555251faf8b78ffa"
 dependencies = [
  "either",
  "rayon-core",
@@ -14633,14 +15309,32 @@ dependencies = [
 
 [[package]]
 name = "rayon-core"
-version = "1.11.0"
+version = "1.12.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4b8f95bd6966f5c87776639160a66bd8ab9895d9d4ab01ddba9fc60661aebe8d"
+checksum = "1465873a3dfdaa8ae7cb14b4383657caab0b3e8a0aa9ae8e04b044854c8dfce2"
 dependencies = [
- "crossbeam-channel",
  "crossbeam-deque",
  "crossbeam-utils",
- "num_cpus",
+]
+
+[[package]]
+name = "rbtag"
+version = "0.3.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "72c64936fcc0b811890a9d90020f3df5cec9c604efde88af7db6a35d365132a3"
+dependencies = [
+ "rbtag_derive",
+]
+
+[[package]]
+name = "rbtag_derive"
+version = "0.3.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "b75511b710ccca8adbb211e04763bd8c78fed585b0ec188a20ed9b0dd95567c4"
+dependencies = [
+ "proc-macro2 0.4.30",
+ "quote 0.6.13",
+ "syn 0.15.44",
 ]
 
 [[package]]
@@ -14720,8 +15414,8 @@ version = "1.0.20"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "7f7473c2cfcf90008193dd0e3e16599455cb601a9fce322b5bb55de799664925"
 dependencies = [
- "proc-macro2",
- "quote",
+ "proc-macro2 1.0.75",
+ "quote 1.0.35",
  "syn 2.0.53",
 ]
 
@@ -14807,6 +15501,72 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "e898588f33fdd5b9420719948f9f2a32c922a246964576f71ba7f24f80610fbc"
 
 [[package]]
+name = "relay-substrate-client"
+version = "0.1.0"
+dependencies = [
+ "async-std",
+ "async-trait",
+ "bp-header-chain",
+ "bp-messages",
+ "bp-polkadot-core",
+ "bp-runtime",
+ "finality-relay",
+ "frame-support",
+ "frame-system",
+ "futures",
+ "jsonrpsee",
+ "log",
+ "num-traits",
+ "pallet-balances",
+ "pallet-bridge-messages",
+ "pallet-transaction-payment",
+ "pallet-transaction-payment-rpc-runtime-api",
+ "pallet-utility",
+ "parity-scale-codec",
+ "rand 0.8.5",
+ "relay-utils",
+ "sc-chain-spec",
+ "sc-rpc-api",
+ "sc-transaction-pool-api",
+ "scale-info",
+ "sp-consensus-grandpa",
+ "sp-core",
+ "sp-rpc",
+ "sp-runtime",
+ "sp-std 14.0.0",
+ "sp-trie",
+ "sp-version",
+ "staging-xcm",
+ "thiserror",
+ "tokio",
+]
+
+[[package]]
+name = "relay-utils"
+version = "0.1.0"
+dependencies = [
+ "ansi_term",
+ "anyhow",
+ "async-std",
+ "async-trait",
+ "backoff",
+ "bp-runtime",
+ "env_logger 0.11.3",
+ "futures",
+ "isahc",
+ "jsonpath_lib",
+ "log",
+ "num-traits",
+ "serde_json",
+ "sp-runtime",
+ "substrate-prometheus-endpoint",
+ "sysinfo",
+ "thiserror",
+ "time",
+ "tokio",
+]
+
+[[package]]
 name = "remote-ext-tests-bags-list"
 version = "1.0.0"
 dependencies = [
@@ -15033,6 +15793,7 @@ name = "rococo-runtime"
 version = "7.0.0"
 dependencies = [
  "binary-merkle-tree",
+ "bitvec",
  "frame-benchmarking",
  "frame-executive",
  "frame-remote-externalities",
@@ -15065,6 +15826,7 @@ dependencies = [
  "pallet-multisig",
  "pallet-nis",
  "pallet-offences",
+ "pallet-parameters",
  "pallet-preimage",
  "pallet-proxy",
  "pallet-ranked-collective",
@@ -15105,6 +15867,7 @@ dependencies = [
  "sp-block-builder",
  "sp-consensus-babe",
  "sp-consensus-beefy",
+ "sp-consensus-grandpa",
  "sp-core",
  "sp-genesis-builder",
  "sp-inherents",
@@ -15209,8 +15972,8 @@ checksum = "d428f8247852f894ee1be110b375111b586d4fa431f6c46e64ba5a0dcccbe605"
 dependencies = [
  "cfg-if",
  "glob",
- "proc-macro2",
- "quote",
+ "proc-macro2 1.0.75",
+ "quote 1.0.35",
  "regex",
  "relative-path",
  "rustc_version 0.4.0",
@@ -15259,7 +16022,7 @@ dependencies = [
  "parity-scale-codec",
  "primitive-types",
  "proptest",
- "rand",
+ "rand 0.8.5",
  "rlp",
  "ruint-macro",
  "serde",
@@ -15571,15 +16334,16 @@ dependencies = [
  "libp2p",
  "linked_hash_set",
  "log",
- "multihash 0.18.1",
+ "multihash 0.17.0",
  "multihash-codetable",
  "parity-scale-codec",
  "prost 0.12.3",
  "prost-build",
  "quickcheck",
- "rand",
+ "rand 0.8.5",
  "sc-client-api",
  "sc-network",
+ "sc-network-types",
  "sp-api",
  "sp-authority-discovery",
  "sp-blockchain",
@@ -15635,7 +16399,7 @@ dependencies = [
 
 [[package]]
 name = "sc-chain-spec"
-version = "27.0.0"
+version = "28.0.0"
 dependencies = [
  "array-bytes 6.1.0",
  "docify",
@@ -15659,6 +16423,7 @@ dependencies = [
  "sp-keyring",
  "sp-runtime",
  "sp-state-machine",
+ "sp-tracing 16.0.0",
  "substrate-test-runtime",
 ]
 
@@ -15667,8 +16432,8 @@ name = "sc-chain-spec-derive"
 version = "11.0.0"
 dependencies = [
  "proc-macro-crate 3.0.0",
- "proc-macro2",
- "quote",
+ "proc-macro2 1.0.75",
+ "quote 1.0.35",
  "syn 2.0.53",
 ]
 
@@ -15688,7 +16453,7 @@ dependencies = [
  "names",
  "parity-bip39",
  "parity-scale-codec",
- "rand",
+ "rand 0.8.5",
  "regex",
  "rpassword",
  "sc-client-api",
@@ -15761,7 +16526,7 @@ dependencies = [
  "parity-scale-codec",
  "parking_lot 0.12.1",
  "quickcheck",
- "rand",
+ "rand 0.8.5",
  "sc-client-api",
  "sc-state-db",
  "schnellru",
@@ -15784,11 +16549,11 @@ dependencies = [
  "async-trait",
  "futures",
  "futures-timer",
- "libp2p-identity",
  "log",
  "mockall",
  "parking_lot 0.12.1",
  "sc-client-api",
+ "sc-network-types",
  "sc-utils",
  "serde",
  "sp-api",
@@ -15929,6 +16694,7 @@ dependencies = [
  "sc-network-gossip",
  "sc-network-sync",
  "sc-network-test",
+ "sc-network-types",
  "sc-utils",
  "serde",
  "sp-api",
@@ -16002,7 +16768,7 @@ dependencies = [
  "log",
  "parity-scale-codec",
  "parking_lot 0.12.1",
- "rand",
+ "rand 0.8.5",
  "sc-block-builder",
  "sc-chain-spec",
  "sc-client-api",
@@ -16012,6 +16778,7 @@ dependencies = [
  "sc-network-gossip",
  "sc-network-sync",
  "sc-network-test",
+ "sc-network-types",
  "sc-telemetry",
  "sc-transaction-pool-api",
  "sc-utils",
@@ -16180,7 +16947,7 @@ dependencies = [
  "substrate-test-runtime",
  "tempfile",
  "tracing",
- "tracing-subscriber 0.2.25",
+ "tracing-subscriber 0.3.18",
  "wat",
 ]
 
@@ -16270,7 +17037,6 @@ dependencies = [
  "bytes",
  "futures",
  "futures-timer",
- "libp2p-identity",
  "log",
  "mixnet",
  "multiaddr",
@@ -16278,6 +17044,7 @@ dependencies = [
  "parking_lot 0.12.1",
  "sc-client-api",
  "sc-network",
+ "sc-network-types",
  "sc-transaction-pool-api",
  "sp-api",
  "sp-consensus",
@@ -16298,6 +17065,7 @@ dependencies = [
  "async-trait",
  "asynchronous-codec",
  "bytes",
+ "cid 0.9.0",
  "either",
  "fnv",
  "futures",
@@ -16305,25 +17073,34 @@ dependencies = [
  "ip_network",
  "libp2p",
  "linked_hash_set",
+ "litep2p",
  "log",
  "mockall",
  "multistream-select",
+ "once_cell",
  "parity-scale-codec",
  "parking_lot 0.12.1",
  "partial_sort",
  "pin-project",
- "rand",
+ "prost 0.11.9",
+ "prost-build",
+ "rand 0.8.5",
+ "sc-block-builder",
  "sc-client-api",
  "sc-network-common",
  "sc-network-light",
  "sc-network-sync",
+ "sc-network-types",
  "sc-utils",
+ "schnellru",
  "serde",
  "serde_json",
  "smallvec",
  "sp-arithmetic",
  "sp-blockchain",
+ "sp-consensus",
  "sp-core",
+ "sp-crypto-hashing",
  "sp-runtime",
  "sp-test-primitives",
  "sp-tracing 16.0.0",
@@ -16337,37 +17114,12 @@ dependencies = [
  "tokio-test",
  "tokio-util",
  "unsigned-varint",
+ "void",
  "wasm-timer",
  "zeroize",
 ]
 
 [[package]]
-name = "sc-network-bitswap"
-version = "0.33.0"
-dependencies = [
- "async-channel",
- "cid",
- "futures",
- "libp2p-identity",
- "log",
- "prost 0.12.3",
- "prost-build",
- "sc-block-builder",
- "sc-client-api",
- "sc-consensus",
- "sc-network",
- "sp-blockchain",
- "sp-consensus",
- "sp-crypto-hashing",
- "sp-runtime",
- "substrate-test-runtime",
- "substrate-test-runtime-client",
- "thiserror",
- "tokio",
- "unsigned-varint",
-]
-
-[[package]]
 name = "sc-network-common"
 version = "0.33.0"
 dependencies = [
@@ -16378,6 +17130,7 @@ dependencies = [
  "parity-scale-codec",
  "prost-build",
  "sc-consensus",
+ "sc-network-types",
  "sp-consensus",
  "sp-consensus-grandpa",
  "sp-runtime",
@@ -16399,6 +17152,7 @@ dependencies = [
  "sc-network",
  "sc-network-common",
  "sc-network-sync",
+ "sc-network-types",
  "schnellru",
  "sp-runtime",
  "substrate-prometheus-endpoint",
@@ -16414,13 +17168,13 @@ dependencies = [
  "array-bytes 6.1.0",
  "async-channel",
  "futures",
- "libp2p-identity",
  "log",
  "parity-scale-codec",
  "prost 0.12.3",
  "prost-build",
  "sc-client-api",
  "sc-network",
+ "sc-network-types",
  "sp-blockchain",
  "sp-core",
  "sp-runtime",
@@ -16440,7 +17194,9 @@ dependencies = [
  "sc-network",
  "sc-network-common",
  "sc-network-sync",
+ "sc-network-types",
  "sp-consensus",
+ "sp-runtime",
  "sp-statement-store",
  "substrate-prometheus-endpoint",
 ]
@@ -16467,6 +17223,7 @@ dependencies = [
  "sc-consensus",
  "sc-network",
  "sc-network-common",
+ "sc-network-types",
  "sc-utils",
  "schnellru",
  "smallvec",
@@ -16495,7 +17252,7 @@ dependencies = [
  "libp2p",
  "log",
  "parking_lot 0.12.1",
- "rand",
+ "rand 0.8.5",
  "sc-block-builder",
  "sc-client-api",
  "sc-consensus",
@@ -16503,6 +17260,7 @@ dependencies = [
  "sc-network-common",
  "sc-network-light",
  "sc-network-sync",
+ "sc-network-types",
  "sc-service",
  "sc-utils",
  "sp-blockchain",
@@ -16527,6 +17285,7 @@ dependencies = [
  "sc-network",
  "sc-network-common",
  "sc-network-sync",
+ "sc-network-types",
  "sc-utils",
  "sp-consensus",
  "sp-runtime",
@@ -16534,10 +17293,24 @@ dependencies = [
 ]
 
 [[package]]
+name = "sc-network-types"
+version = "0.10.0-dev"
+dependencies = [
+ "bs58 0.4.0",
+ "libp2p-identity",
+ "litep2p",
+ "multiaddr",
+ "multihash 0.17.0",
+ "rand 0.8.5",
+ "thiserror",
+]
+
+[[package]]
 name = "sc-offchain"
 version = "29.0.0"
 dependencies = [
  "array-bytes 6.1.0",
+ "async-trait",
  "bytes",
  "fnv",
  "futures",
@@ -16551,12 +17324,13 @@ dependencies = [
  "once_cell",
  "parity-scale-codec",
  "parking_lot 0.12.1",
- "rand",
+ "rand 0.8.5",
  "sc-block-builder",
  "sc-client-api",
  "sc-client-db",
  "sc-network",
  "sc-network-common",
+ "sc-network-types",
  "sc-transaction-pool",
  "sc-transaction-pool-api",
  "sc-utils",
@@ -16674,7 +17448,7 @@ dependencies = [
  "parity-scale-codec",
  "parking_lot 0.12.1",
  "pretty_assertions",
- "rand",
+ "rand 0.8.5",
  "sc-block-builder",
  "sc-chain-spec",
  "sc-client-api",
@@ -16683,6 +17457,7 @@ dependencies = [
  "sc-transaction-pool",
  "sc-transaction-pool-api",
  "sc-utils",
+ "schnellru",
  "serde",
  "serde_json",
  "sp-api",
@@ -16728,7 +17503,7 @@ dependencies = [
  "parity-scale-codec",
  "parking_lot 0.12.1",
  "pin-project",
- "rand",
+ "rand 0.8.5",
  "sc-chain-spec",
  "sc-client-api",
  "sc-client-db",
@@ -16737,11 +17512,11 @@ dependencies = [
  "sc-informant",
  "sc-keystore",
  "sc-network",
- "sc-network-bitswap",
  "sc-network-common",
  "sc-network-light",
  "sc-network-sync",
  "sc-network-transactions",
+ "sc-network-types",
  "sc-rpc",
  "sc-rpc-server",
  "sc-rpc-spec-v2",
@@ -16883,7 +17658,7 @@ dependencies = [
  "futures",
  "libc",
  "log",
- "rand",
+ "rand 0.8.5",
  "rand_pcg",
  "regex",
  "sc-telemetry",
@@ -16906,7 +17681,8 @@ dependencies = [
  "log",
  "parking_lot 0.12.1",
  "pin-project",
- "rand",
+ "rand 0.8.5",
+ "sc-network",
  "sc-utils",
  "serde",
  "serde_json",
@@ -16941,7 +17717,7 @@ dependencies = [
  "thiserror",
  "tracing",
  "tracing-log 0.1.3",
- "tracing-subscriber 0.2.25",
+ "tracing-subscriber 0.3.18",
 ]
 
 [[package]]
@@ -16949,8 +17725,8 @@ name = "sc-tracing-proc-macro"
 version = "11.0.0"
 dependencies = [
  "proc-macro-crate 3.0.0",
- "proc-macro2",
- "quote",
+ "proc-macro2 1.0.75",
+ "quote 1.0.35",
  "syn 2.0.53",
 ]
 
@@ -17040,8 +17816,8 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "7dc2f4e8bc344b9fc3d5f74f72c2e55bfc38d28dc2ebc69c194a3df424e4d9ac"
 dependencies = [
  "proc-macro-crate 1.3.1",
- "proc-macro2",
- "quote",
+ "proc-macro2 1.0.75",
+ "quote 1.0.35",
  "syn 1.0.109",
 ]
 
@@ -17072,8 +17848,8 @@ version = "0.8.13"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "ec0f696e21e10fa546b7ffb1c9672c6de8fbc7a81acf59524386d8639bf12737"
 dependencies = [
- "proc-macro2",
- "quote",
+ "proc-macro2 1.0.75",
+ "quote 1.0.35",
  "serde_derive_internals",
  "syn 1.0.109",
 ]
@@ -17153,6 +17929,21 @@ dependencies = [
 ]
 
 [[package]]
+name = "sctp-proto"
+version = "0.1.7"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "8f64cef148d3295c730c3cb340b0b252a4d570b1c7d4bf0808f88540b0a888bc"
+dependencies = [
+ "bytes",
+ "crc",
+ "fxhash",
+ "log",
+ "rand 0.8.5",
+ "slab",
+ "thiserror",
+]
+
+[[package]]
 name = "sec1"
 version = "0.7.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -17351,8 +18142,8 @@ version = "1.0.197"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "7eb0b34b42edc17f6b7cac84a52a1c5f0e1bb2227e997ca9011ea3dd34e8610b"
 dependencies = [
- "proc-macro2",
- "quote",
+ "proc-macro2 1.0.75",
+ "quote 1.0.35",
  "syn 2.0.53",
 ]
 
@@ -17362,8 +18153,8 @@ version = "0.26.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "85bf8229e7920a9f636479437026331ce11aa132b4dde37d121944a44d6e5f3c"
 dependencies = [
- "proc-macro2",
- "quote",
+ "proc-macro2 1.0.75",
+ "quote 1.0.35",
  "syn 1.0.109",
 ]
 
@@ -17382,6 +18173,7 @@ version = "1.0.114"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "c5f09b1bd632ef549eaa9f60a1f8de742bdbc698e6cee2095fc84dde5f549ae0"
 dependencies = [
+ "indexmap 2.2.3",
  "itoa",
  "ryu",
  "serde",
@@ -17451,8 +18243,8 @@ version = "2.0.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "91d129178576168c589c9ec973feedf7d3126c01ac2bf08795109aa35b69fb8f"
 dependencies = [
- "proc-macro2",
- "quote",
+ "proc-macro2 1.0.75",
+ "quote 1.0.35",
  "syn 2.0.53",
 ]
 
@@ -17478,6 +18270,7 @@ dependencies = [
  "cfg-if",
  "cpufeatures",
  "digest 0.10.7",
+ "sha1-asm",
 ]
 
 [[package]]
@@ -17492,6 +18285,15 @@ dependencies = [
 ]
 
 [[package]]
+name = "sha1-asm"
+version = "0.5.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "2ba6947745e7f86be3b8af00b7355857085dbdf8901393c89514510eb61f4e21"
+dependencies = [
+ "cc",
+]
+
+[[package]]
 name = "sha2"
 version = "0.9.9"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -17598,6 +18400,12 @@ dependencies = [
 
 [[package]]
 name = "signature"
+version = "1.6.4"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "74233d3b3b2f6d4b006dc19dee745e73e2a6bfb6f93607cd3b02bd5b00797d7c"
+
+[[package]]
+name = "signature"
 version = "2.1.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "5e1788eed21689f9cf370582dfc467ef36ed9c707f073528ddafa8d83e3b8500"
@@ -17620,6 +18428,15 @@ dependencies = [
 ]
 
 [[package]]
+name = "simple-dns"
+version = "0.5.7"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "cae9a3fcdadafb6d97f4c0e007e4247b114ee0f119f650c3cbf3a8b3a1479694"
+dependencies = [
+ "bitflags 2.4.0",
+]
+
+[[package]]
 name = "simple-mermaid"
 version = "0.1.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -17667,6 +18484,17 @@ dependencies = [
 ]
 
 [[package]]
+name = "sluice"
+version = "0.5.5"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "6d7400c0eff44aa2fcb5e31a5f24ba9716ed90138769e4977a2ba6014ae63eb5"
+dependencies = [
+ "async-channel",
+ "futures-core",
+ "futures-io",
+]
+
+[[package]]
 name = "smallvec"
 version = "1.11.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -17734,7 +18562,7 @@ dependencies = [
  "pbkdf2",
  "pin-project",
  "poly1305 0.8.0",
- "rand",
+ "rand 0.8.5",
  "rand_chacha 0.3.1",
  "ruzstd",
  "schnorrkel 0.10.2",
@@ -17777,7 +18605,7 @@ dependencies = [
  "no-std-net",
  "parking_lot 0.12.1",
  "pin-project",
- "rand",
+ "rand 0.8.5",
  "rand_chacha 0.3.1",
  "serde",
  "serde_json",
@@ -17827,7 +18655,6 @@ version = "0.2.0"
 dependencies = [
  "byte-slice-cast",
  "frame-support",
- "frame-system",
  "hex",
  "hex-literal",
  "parity-scale-codec",
@@ -17842,7 +18669,6 @@ dependencies = [
  "sp-std 14.0.0",
  "ssz_rs",
  "ssz_rs_derive",
- "static_assertions",
 ]
 
 [[package]]
@@ -17878,14 +18704,12 @@ dependencies = [
  "hex-literal",
  "parity-bytes",
  "parity-scale-codec",
- "rand",
+ "rand 0.8.5",
  "rlp",
- "rustc-hex",
  "scale-info",
  "serde",
  "serde-big-array",
  "serde_json",
- "sp-core",
  "sp-io",
  "sp-runtime",
  "sp-std 14.0.0",
@@ -17901,7 +18725,7 @@ dependencies = [
  "hex",
  "lazy_static",
  "parity-scale-codec",
- "rand",
+ "rand 0.8.5",
  "scale-info",
  "snowbridge-amcl",
  "zeroize",
@@ -17931,17 +18755,13 @@ dependencies = [
  "snowbridge-core",
  "snowbridge-outbound-queue-merkle-tree",
  "sp-api",
- "sp-core",
  "sp-std 14.0.0",
- "staging-xcm",
 ]
 
 [[package]]
 name = "snowbridge-pallet-ethereum-client"
 version = "0.2.0"
 dependencies = [
- "bp-runtime",
- "byte-slice-cast",
  "frame-benchmarking",
  "frame-support",
  "frame-system",
@@ -17949,8 +18769,7 @@ dependencies = [
  "log",
  "pallet-timestamp",
  "parity-scale-codec",
- "rand",
- "rlp",
+ "rand 0.8.5",
  "scale-info",
  "serde",
  "serde_json",
@@ -17963,8 +18782,6 @@ dependencies = [
  "sp-keyring",
  "sp-runtime",
  "sp-std 14.0.0",
- "ssz_rs",
- "ssz_rs_derive",
  "static_assertions",
 ]
 
@@ -17972,9 +18789,6 @@ dependencies = [
 name = "snowbridge-pallet-ethereum-client-fixtures"
 version = "0.9.0"
 dependencies = [
- "frame-benchmarking",
- "frame-support",
- "frame-system",
  "hex-literal",
  "snowbridge-beacon-primitives",
  "snowbridge-core",
@@ -17987,21 +18801,18 @@ name = "snowbridge-pallet-inbound-queue"
 version = "0.2.0"
 dependencies = [
  "alloy-primitives",
- "alloy-rlp",
  "alloy-sol-types",
  "frame-benchmarking",
  "frame-support",
  "frame-system",
  "hex-literal",
  "log",
- "num-traits",
  "pallet-balances",
  "parity-scale-codec",
  "scale-info",
  "serde",
  "snowbridge-beacon-primitives",
  "snowbridge-core",
- "snowbridge-ethereum",
  "snowbridge-pallet-ethereum-client",
  "snowbridge-pallet-inbound-queue-fixtures",
  "snowbridge-router-primitives",
@@ -18011,7 +18822,6 @@ dependencies = [
  "sp-runtime",
  "sp-std 14.0.0",
  "staging-xcm",
- "staging-xcm-builder",
  "staging-xcm-executor",
 ]
 
@@ -18019,9 +18829,6 @@ dependencies = [
 name = "snowbridge-pallet-inbound-queue-fixtures"
 version = "0.10.0"
 dependencies = [
- "frame-benchmarking",
- "frame-support",
- "frame-system",
  "hex-literal",
  "snowbridge-beacon-primitives",
  "snowbridge-core",
@@ -18038,7 +18845,6 @@ dependencies = [
  "frame-benchmarking",
  "frame-support",
  "frame-system",
- "hex-literal",
  "pallet-message-queue",
  "parity-scale-codec",
  "scale-info",
@@ -18051,14 +18857,12 @@ dependencies = [
  "sp-keyring",
  "sp-runtime",
  "sp-std 14.0.0",
- "staging-xcm",
 ]
 
 [[package]]
 name = "snowbridge-pallet-system"
 version = "0.2.0"
 dependencies = [
- "ethabi-decode",
  "frame-benchmarking",
  "frame-support",
  "frame-system",
@@ -18078,7 +18882,6 @@ dependencies = [
  "sp-runtime",
  "sp-std 14.0.0",
  "staging-xcm",
- "staging-xcm-builder",
  "staging-xcm-executor",
 ]
 
@@ -18086,22 +18889,18 @@ dependencies = [
 name = "snowbridge-router-primitives"
 version = "0.9.0"
 dependencies = [
- "ethabi-decode",
  "frame-support",
- "frame-system",
  "hex-literal",
  "log",
  "parity-scale-codec",
  "rustc-hex",
  "scale-info",
- "serde",
  "snowbridge-core",
  "sp-core",
  "sp-io",
  "sp-runtime",
  "sp-std 14.0.0",
  "staging-xcm",
- "staging-xcm-builder",
  "staging-xcm-executor",
 ]
 
@@ -18110,7 +18909,6 @@ name = "snowbridge-runtime-common"
 version = "0.2.0"
 dependencies = [
  "frame-support",
- "frame-system",
  "log",
  "parity-scale-codec",
  "snowbridge-core",
@@ -18125,77 +18923,30 @@ dependencies = [
 name = "snowbridge-runtime-test-common"
 version = "0.2.0"
 dependencies = [
- "assets-common",
- "bridge-hub-test-utils",
- "bridge-runtime-common",
- "cumulus-pallet-aura-ext",
  "cumulus-pallet-parachain-system",
- "cumulus-pallet-session-benchmarking",
- "cumulus-pallet-xcm",
- "cumulus-pallet-xcmp-queue",
- "cumulus-primitives-core",
- "cumulus-primitives-utility",
- "frame-benchmarking",
- "frame-executive",
  "frame-support",
  "frame-system",
- "frame-system-benchmarking",
- "frame-system-rpc-runtime-api",
- "frame-try-runtime",
- "hex-literal",
- "log",
- "pallet-aura",
- "pallet-authorship",
  "pallet-balances",
  "pallet-collator-selection",
  "pallet-message-queue",
- "pallet-multisig",
  "pallet-session",
  "pallet-timestamp",
- "pallet-transaction-payment",
- "pallet-transaction-payment-rpc-runtime-api",
  "pallet-utility",
  "pallet-xcm",
- "pallet-xcm-benchmarks",
- "parachains-common",
  "parachains-runtimes-test-utils",
  "parity-scale-codec",
- "polkadot-core-primitives",
- "polkadot-parachain-primitives",
- "polkadot-runtime-common",
- "scale-info",
- "serde",
- "smallvec",
- "snowbridge-beacon-primitives",
  "snowbridge-core",
- "snowbridge-outbound-queue-runtime-api",
  "snowbridge-pallet-ethereum-client",
  "snowbridge-pallet-ethereum-client-fixtures",
- "snowbridge-pallet-inbound-queue",
  "snowbridge-pallet-outbound-queue",
  "snowbridge-pallet-system",
- "snowbridge-router-primitives",
- "snowbridge-system-runtime-api",
- "sp-api",
- "sp-block-builder",
- "sp-consensus-aura",
  "sp-core",
- "sp-genesis-builder",
- "sp-inherents",
  "sp-io",
  "sp-keyring",
- "sp-offchain",
  "sp-runtime",
- "sp-session",
- "sp-std 14.0.0",
- "sp-storage 19.0.0",
- "sp-transaction-pool",
- "sp-version",
  "staging-parachain-info",
  "staging-xcm",
- "staging-xcm-builder",
  "staging-xcm-executor",
- "static_assertions",
 ]
 
 [[package]]
@@ -18205,7 +18956,6 @@ dependencies = [
  "parity-scale-codec",
  "snowbridge-core",
  "sp-api",
- "sp-core",
  "sp-std 14.0.0",
  "staging-xcm",
 ]
@@ -18243,7 +18993,7 @@ dependencies = [
  "http",
  "httparse",
  "log",
- "rand",
+ "rand 0.8.5",
  "sha-1 0.9.8",
 ]
 
@@ -18287,7 +19037,6 @@ dependencies = [
  "sp-timestamp",
  "substrate-build-script-utils",
  "substrate-frame-rpc-system",
- "try-runtime-cli",
 ]
 
 [[package]]
@@ -18359,8 +19108,8 @@ dependencies = [
  "blake2 0.10.6",
  "expander 2.0.0",
  "proc-macro-crate 3.0.0",
- "proc-macro2",
- "quote",
+ "proc-macro2 1.0.75",
+ "quote 1.0.35",
  "syn 2.0.53",
 ]
 
@@ -18420,7 +19169,7 @@ dependencies = [
  "num-traits",
  "parity-scale-codec",
  "primitive-types",
- "rand",
+ "rand 0.8.5",
  "scale-info",
  "serde",
  "sp-crypto-hashing",
@@ -18640,7 +19389,7 @@ dependencies = [
  "parking_lot 0.12.1",
  "paste",
  "primitive-types",
- "rand",
+ "rand 0.8.5",
  "regex",
  "scale-info",
  "schnorrkel 0.11.4",
@@ -18728,7 +19477,7 @@ dependencies = [
 
 [[package]]
 name = "sp-crypto-hashing"
-version = "0.0.0"
+version = "0.1.0"
 dependencies = [
  "blake2b_simd",
  "byteorder",
@@ -18742,9 +19491,9 @@ dependencies = [
 
 [[package]]
 name = "sp-crypto-hashing-proc-macro"
-version = "0.0.0"
+version = "0.1.0"
 dependencies = [
- "quote",
+ "quote 1.0.35",
  "sp-crypto-hashing",
  "syn 2.0.53",
 ]
@@ -18762,8 +19511,8 @@ name = "sp-debug-derive"
 version = "8.0.0"
 source = "git+https://github.com/paritytech/polkadot-sdk#82912acb33a9030c0ef3bf590a34fca09b72dc5f"
 dependencies = [
- "proc-macro2",
- "quote",
+ "proc-macro2 1.0.75",
+ "quote 1.0.35",
  "syn 2.0.53",
 ]
 
@@ -18771,8 +19520,8 @@ dependencies = [
 name = "sp-debug-derive"
 version = "14.0.0"
 dependencies = [
- "proc-macro2",
- "quote",
+ "proc-macro2 1.0.75",
+ "quote 1.0.35",
  "syn 2.0.53",
 ]
 
@@ -18798,8 +19547,10 @@ dependencies = [
 
 [[package]]
 name = "sp-genesis-builder"
-version = "0.7.0"
+version = "0.8.0"
 dependencies = [
+ "parity-scale-codec",
+ "scale-info",
  "serde_json",
  "sp-api",
  "sp-runtime",
@@ -18823,7 +19574,7 @@ name = "sp-io"
 version = "30.0.0"
 dependencies = [
  "bytes",
- "ed25519-dalek",
+ "ed25519-dalek 2.1.0",
  "libsecp256k1",
  "log",
  "parity-scale-codec",
@@ -18858,7 +19609,7 @@ version = "0.34.0"
 dependencies = [
  "parity-scale-codec",
  "parking_lot 0.12.1",
- "rand",
+ "rand 0.8.5",
  "rand_chacha 0.2.2",
  "sp-core",
  "sp-externalities 0.25.0",
@@ -18913,7 +19664,7 @@ name = "sp-npos-elections"
 version = "26.0.0"
 dependencies = [
  "parity-scale-codec",
- "rand",
+ "rand 0.8.5",
  "scale-info",
  "serde",
  "sp-arithmetic",
@@ -18928,7 +19679,7 @@ version = "2.0.0-alpha.5"
 dependencies = [
  "clap 4.5.3",
  "honggfuzz",
- "rand",
+ "rand 0.8.5",
  "sp-npos-elections",
  "sp-runtime",
 ]
@@ -18972,7 +19723,7 @@ dependencies = [
  "log",
  "parity-scale-codec",
  "paste",
- "rand",
+ "rand 0.8.5",
  "scale-info",
  "serde",
  "serde_json",
@@ -19039,8 +19790,8 @@ source = "git+https://github.com/paritytech/polkadot-sdk#82912acb33a9030c0ef3bf5
 dependencies = [
  "Inflector",
  "proc-macro-crate 1.3.1",
- "proc-macro2",
- "quote",
+ "proc-macro2 1.0.75",
+ "quote 1.0.35",
  "syn 2.0.53",
 ]
 
@@ -19051,8 +19802,8 @@ dependencies = [
  "Inflector",
  "expander 2.0.0",
  "proc-macro-crate 3.0.0",
- "proc-macro2",
- "quote",
+ "proc-macro2 1.0.75",
+ "quote 1.0.35",
  "syn 2.0.53",
 ]
 
@@ -19130,7 +19881,7 @@ dependencies = [
  "parity-scale-codec",
  "parking_lot 0.12.1",
  "pretty_assertions",
- "rand",
+ "rand 0.8.5",
  "smallvec",
  "sp-core",
  "sp-externalities 0.25.0",
@@ -19148,10 +19899,10 @@ version = "10.0.0"
 dependencies = [
  "aes-gcm 0.10.3",
  "curve25519-dalek 4.1.2",
- "ed25519-dalek",
+ "ed25519-dalek 2.1.0",
  "hkdf",
  "parity-scale-codec",
- "rand",
+ "rand 0.8.5",
  "scale-info",
  "sha2 0.10.7",
  "sp-api",
@@ -19240,7 +19991,7 @@ dependencies = [
  "parity-scale-codec",
  "tracing",
  "tracing-core",
- "tracing-subscriber 0.2.25",
+ "tracing-subscriber 0.3.18",
 ]
 
 [[package]]
@@ -19270,14 +20021,14 @@ version = "29.0.0"
 dependencies = [
  "ahash 0.8.8",
  "array-bytes 6.1.0",
- "criterion 0.4.0",
+ "criterion 0.5.1",
  "hash-db",
  "lazy_static",
  "memory-db",
  "nohash-hasher",
  "parity-scale-codec",
  "parking_lot 0.12.1",
- "rand",
+ "rand 0.8.5",
  "scale-info",
  "schnellru",
  "sp-core",
@@ -19312,8 +20063,8 @@ name = "sp-version-proc-macro"
 version = "13.0.0"
 dependencies = [
  "parity-scale-codec",
- "proc-macro2",
- "quote",
+ "proc-macro2 1.0.75",
+ "quote 1.0.35",
  "sp-version",
  "syn 2.0.53",
 ]
@@ -19397,11 +20148,11 @@ checksum = "5e6915280e2d0db8911e5032a5c275571af6bdded2916abd691a659be25d3439"
 dependencies = [
  "Inflector",
  "num-format",
- "proc-macro2",
- "quote",
+ "proc-macro2 1.0.75",
+ "quote 1.0.35",
  "serde",
  "serde_json",
- "unicode-xid",
+ "unicode-xid 0.2.4",
 ]
 
 [[package]]
@@ -19422,8 +20173,8 @@ version = "0.9.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "f07d54c4d01a1713eb363b55ba51595da15f6f1211435b71466460da022aa140"
 dependencies = [
- "proc-macro2",
- "quote",
+ "proc-macro2 1.0.75",
+ "quote 1.0.35",
  "syn 1.0.109",
 ]
 
@@ -19435,7 +20186,7 @@ checksum = "a8f112729512f8e442d81f95a8a7ddf2b7c6b8a1a6f509a95864142b30cab2d3"
 
 [[package]]
 name = "staging-chain-spec-builder"
-version = "2.0.0"
+version = "3.0.0"
 dependencies = [
  "clap 4.5.3",
  "log",
@@ -19482,7 +20233,7 @@ dependencies = [
  "pallet-treasury",
  "parity-scale-codec",
  "platforms",
- "rand",
+ "rand 0.8.5",
  "regex",
  "sc-authority-discovery",
  "sc-basic-authorship",
@@ -19530,6 +20281,7 @@ dependencies = [
  "sp-core",
  "sp-crypto-hashing",
  "sp-externalities 0.25.0",
+ "sp-genesis-builder",
  "sp-inherents",
  "sp-io",
  "sp-keyring",
@@ -19551,7 +20303,6 @@ dependencies = [
  "tempfile",
  "tokio",
  "tokio-util",
- "try-runtime-cli",
  "wait-timeout",
  "wat",
 ]
@@ -19690,12 +20441,32 @@ checksum = "70a2595fc3aa78f2d0e45dd425b22282dd863273761cc77780914b2cf3003acf"
 dependencies = [
  "cfg_aliases",
  "memchr",
- "proc-macro2",
- "quote",
+ "proc-macro2 1.0.75",
+ "quote 1.0.35",
  "syn 1.0.109",
 ]
 
 [[package]]
+name = "str0m"
+version = "0.2.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "ee48572247f422dcbe68630c973f8296fbd5157119cd36a3223e48bf83d47727"
+dependencies = [
+ "combine",
+ "crc",
+ "hmac 0.12.1",
+ "once_cell",
+ "openssl",
+ "openssl-sys",
+ "rand 0.8.5",
+ "sctp-proto",
+ "serde",
+ "sha-1 0.10.1",
+ "thiserror",
+ "tracing",
+]
+
+[[package]]
 name = "strobe-rs"
 version = "0.8.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -19710,6 +20481,12 @@ dependencies = [
 
 [[package]]
 name = "strsim"
+version = "0.8.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "8ea5119cdb4c55b55d432abb513a0429384878c15dde60cc77b1c99de1a95a6a"
+
+[[package]]
+name = "strsim"
 version = "0.10.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "73473c0e59e6d5812c5dfe2a064a6444949f089e20eec9a2e5506596494e4623"
@@ -19721,6 +20498,30 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "5ee073c9e4cd00e28217186dbe12796d692868f432bf2e97ee73bed0c56dfa01"
 
 [[package]]
+name = "structopt"
+version = "0.3.26"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "0c6b5c64445ba8094a6ab0c3cd2ad323e07171012d9c98b0b15651daf1787a10"
+dependencies = [
+ "clap 2.34.0",
+ "lazy_static",
+ "structopt-derive",
+]
+
+[[package]]
+name = "structopt-derive"
+version = "0.4.18"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "dcb5ae327f9cc13b68763b5749770cb9e048a99bd9dfdfa58d0cf05d5f64afe0"
+dependencies = [
+ "heck 0.3.3",
+ "proc-macro-error",
+ "proc-macro2 1.0.75",
+ "quote 1.0.35",
+ "syn 1.0.109",
+]
+
+[[package]]
 name = "strum"
 version = "0.24.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -19751,8 +20552,8 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "1e385be0d24f186b4ce2f9982191e7101bb737312ad61c1f2f984f34bcf85d59"
 dependencies = [
  "heck 0.4.1",
- "proc-macro2",
- "quote",
+ "proc-macro2 1.0.75",
+ "quote 1.0.35",
  "rustversion",
  "syn 1.0.109",
 ]
@@ -19764,8 +20565,8 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "23dc1fa9ac9c169a78ba62f0b841814b7abae11bdd047b9c58f893439e309ea0"
 dependencies = [
  "heck 0.4.1",
- "proc-macro2",
- "quote",
+ "proc-macro2 1.0.75",
+ "quote 1.0.35",
  "rustversion",
  "syn 2.0.53",
 ]
@@ -19777,8 +20578,8 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "c6cf59daf282c0a494ba14fd21610a0325f9f90ec9d1231dea26bcb1d696c946"
 dependencies = [
  "heck 0.4.1",
- "proc-macro2",
- "quote",
+ "proc-macro2 1.0.75",
+ "quote 1.0.35",
  "rustversion",
  "syn 2.0.53",
 ]
@@ -19889,6 +20690,49 @@ dependencies = [
 ]
 
 [[package]]
+name = "substrate-relay-helper"
+version = "0.1.0"
+dependencies = [
+ "anyhow",
+ "async-std",
+ "async-trait",
+ "bp-header-chain",
+ "bp-messages",
+ "bp-parachains",
+ "bp-polkadot-core",
+ "bp-relayers",
+ "bp-runtime",
+ "bridge-runtime-common",
+ "equivocation-detector",
+ "finality-grandpa",
+ "finality-relay",
+ "frame-support",
+ "frame-system",
+ "futures",
+ "hex",
+ "log",
+ "messages-relay",
+ "num-traits",
+ "pallet-balances",
+ "pallet-bridge-grandpa",
+ "pallet-bridge-messages",
+ "pallet-bridge-parachains",
+ "pallet-grandpa",
+ "pallet-transaction-payment",
+ "parachains-relay",
+ "parity-scale-codec",
+ "rbtag",
+ "relay-substrate-client",
+ "relay-utils",
+ "sp-consensus-grandpa",
+ "sp-core",
+ "sp-runtime",
+ "structopt",
+ "strum 0.26.2",
+ "thiserror",
+]
+
+[[package]]
 name = "substrate-rpc-client"
 version = "0.33.0"
 dependencies = [
@@ -19955,6 +20799,7 @@ dependencies = [
  "frame-system",
  "frame-system-rpc-runtime-api",
  "futures",
+ "hex-literal",
  "log",
  "pallet-babe",
  "pallet-balances",
@@ -20166,12 +21011,23 @@ dependencies = [
 
 [[package]]
 name = "syn"
+version = "0.15.44"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "9ca4b3b69a77cbe1ffc9e198781b7acb0c7365a883670e8f1c1bc66fba79a5c5"
+dependencies = [
+ "proc-macro2 0.4.30",
+ "quote 0.6.13",
+ "unicode-xid 0.1.0",
+]
+
+[[package]]
+name = "syn"
 version = "1.0.109"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "72b64191b275b66ffe2469e8af2c1cfe3bafa67b529ead792a6d0160888b4237"
 dependencies = [
- "proc-macro2",
- "quote",
+ "proc-macro2 1.0.75",
+ "quote 1.0.35",
  "unicode-ident",
 ]
 
@@ -20181,8 +21037,8 @@ version = "2.0.53"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "7383cd0e49fff4b6b90ca5670bfd3e9d6a733b3f90c686605aa7eec8c4996032"
 dependencies = [
- "proc-macro2",
- "quote",
+ "proc-macro2 1.0.75",
+ "quote 1.0.35",
  "unicode-ident",
 ]
 
@@ -20193,8 +21049,8 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "86b837ef12ab88835251726eb12237655e61ec8dc8a280085d1961cdc3dfd047"
 dependencies = [
  "paste",
- "proc-macro2",
- "quote",
+ "proc-macro2 1.0.75",
+ "quote 1.0.35",
  "syn 2.0.53",
 ]
 
@@ -20204,10 +21060,25 @@ version = "0.12.6"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "f36bdaa60a83aca3921b5259d5400cbf5e90fc51931376a9bd4a0eb79aa7210f"
 dependencies = [
- "proc-macro2",
- "quote",
+ "proc-macro2 1.0.75",
+ "quote 1.0.35",
  "syn 1.0.109",
- "unicode-xid",
+ "unicode-xid 0.2.4",
+]
+
+[[package]]
+name = "sysinfo"
+version = "0.30.5"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "1fb4f3438c8f6389c864e61221cbc97e9bca98b4daf39a5beb7bea660f528bb2"
+dependencies = [
+ "cfg-if",
+ "core-foundation-sys",
+ "libc",
+ "ntapi",
+ "once_cell",
+ "rayon",
+ "windows 0.52.0",
 ]
 
 [[package]]
@@ -20396,11 +21267,8 @@ version = "1.0.0"
 dependencies = [
  "frame-support",
  "polkadot-primitives",
- "polkadot-runtime-common",
  "smallvec",
- "sp-core",
  "sp-runtime",
- "sp-weights",
 ]
 
 [[package]]
@@ -20419,6 +21287,15 @@ dependencies = [
 
 [[package]]
 name = "textwrap"
+version = "0.11.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "d326610f408c7a4eb6f51c37c330e496b08506c9457c9d34287ecc38809fb060"
+dependencies = [
+ "unicode-width",
+]
+
+[[package]]
+name = "textwrap"
 version = "0.16.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "222a222a5bfe1bba4a77b45ec488a741b3cb8872e5e499451fd7d0129c9c7c3d"
@@ -20447,8 +21324,8 @@ version = "1.0.38"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "10ac1c5050e43014d16b2f94d0d2ce79e65ffdd8b38d8048f9c8f6a8a6da62ac"
 dependencies = [
- "proc-macro2",
- "quote",
+ "proc-macro2 1.0.75",
+ "quote 1.0.35",
  "syn 1.0.109",
 ]
 
@@ -20458,8 +21335,8 @@ version = "1.0.50"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "266b2e40bc00e5a6c09c3584011e08b06f123c00362c92b975ba9843aaaa14b8"
 dependencies = [
- "proc-macro2",
- "quote",
+ "proc-macro2 1.0.75",
+ "quote 1.0.35",
  "syn 2.0.53",
 ]
 
@@ -20540,6 +21417,8 @@ checksum = "0bb39ee79a6d8de55f48f2293a830e040392f1c5f16e336bdd1788cd0aadce07"
 dependencies = [
  "deranged",
  "itoa",
+ "libc",
+ "num_threads",
  "serde",
  "time-core",
  "time-macros",
@@ -20619,8 +21498,8 @@ version = "2.2.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "5b8a1e28f2deaa14e508979454cb3a223b10b938b45af148bc0986de36f1923b"
 dependencies = [
- "proc-macro2",
- "quote",
+ "proc-macro2 1.0.75",
+ "quote 1.0.35",
  "syn 2.0.53",
 ]
 
@@ -20631,7 +21510,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "7f57eb36ecbe0fc510036adff84824dd3c24bb781e21bfa67b69d556aa85214f"
 dependencies = [
  "pin-project",
- "rand",
+ "rand 0.8.5",
  "tokio",
 ]
 
@@ -20690,7 +21569,22 @@ dependencies = [
  "futures-util",
  "log",
  "tokio",
- "tungstenite",
+ "tungstenite 0.17.3",
+]
+
+[[package]]
+name = "tokio-tungstenite"
+version = "0.20.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "212d5dcb2a1ce06d81107c3d0ffa3121fe974b73f068c8282cb1c32328113b6c"
+dependencies = [
+ "futures-util",
+ "log",
+ "rustls 0.21.6",
+ "rustls-native-certs 0.6.3",
+ "tokio",
+ "tokio-rustls 0.24.1",
+ "tungstenite 0.20.1",
 ]
 
 [[package]]
@@ -20809,11 +21703,10 @@ checksum = "b6bc1c9ce2b5135ac7f93c72918fc37feb872bdc6a5533a8b85eb4b86bfdae52"
 
 [[package]]
 name = "tracing"
-version = "0.1.37"
+version = "0.1.40"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8ce8c33a8d48bd45d624a6e523445fd21ec13d3653cd51f681abf67418f54eb8"
+checksum = "c3523ab5a71916ccf420eebdf5521fcef02141234bbc0b8a49f2fdc4544364ef"
 dependencies = [
- "cfg-if",
  "log",
  "pin-project-lite 0.2.12",
  "tracing-attributes",
@@ -20822,12 +21715,12 @@ dependencies = [
 
 [[package]]
 name = "tracing-attributes"
-version = "0.1.26"
+version = "0.1.27"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5f4f31f56159e98206da9efd823404b79b6ef3143b4a7ab76e67b1751b25a4ab"
+checksum = "34704c8d6ebcbc939824180af020566b01a7c01f80641264eba0999f6c2b6be7"
 dependencies = [
- "proc-macro2",
- "quote",
+ "proc-macro2 1.0.75",
+ "quote 1.0.35",
  "syn 2.0.53",
 ]
 
@@ -20868,8 +21761,8 @@ dependencies = [
  "assert_matches",
  "expander 2.0.0",
  "proc-macro-crate 3.0.0",
- "proc-macro2",
- "quote",
+ "proc-macro2 1.0.75",
+ "quote 1.0.35",
  "syn 2.0.53",
 ]
 
@@ -20915,7 +21808,6 @@ dependencies = [
  "chrono",
  "lazy_static",
  "matchers 0.0.1",
- "parking_lot 0.11.2",
  "regex",
  "serde",
  "serde_json",
@@ -20934,9 +21826,11 @@ version = "0.3.18"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "ad0f048c97dbd9faa9b7df56362b8ebcaa52adb06b498c050d2f4e32f90a7a8b"
 dependencies = [
+ "chrono",
  "matchers 0.1.0",
  "nu-ansi-term",
  "once_cell",
+ "parking_lot 0.12.1",
  "regex",
  "sharded-slab",
  "smallvec",
@@ -20948,11 +21842,11 @@ dependencies = [
 
 [[package]]
 name = "trie-bench"
-version = "0.38.0"
+version = "0.39.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a4680cb226e31d2a096592d0edecdda91cc371743002f80c0f8cf80219819b3b"
+checksum = "3092f400e9f7e3ce8c1756016a8b6287163ab7a11dd47d82169260cb4cc2d680"
 dependencies = [
- "criterion 0.4.0",
+ "criterion 0.5.1",
  "hash-db",
  "keccak-hasher",
  "memory-db",
@@ -20964,12 +21858,11 @@ dependencies = [
 
 [[package]]
 name = "trie-db"
-version = "0.28.0"
+version = "0.29.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ff28e0f815c2fea41ebddf148e008b077d2faddb026c9555b29696114d602642"
+checksum = "65ed83be775d85ebb0e272914fff6462c39b3ddd6dc67b5c1c41271aad280c69"
 dependencies = [
  "hash-db",
- "hashbrown 0.13.2",
  "log",
  "rustc-hex",
  "smallvec",
@@ -21003,14 +21896,14 @@ dependencies = [
  "async-trait",
  "cfg-if",
  "data-encoding",
- "enum-as-inner",
+ "enum-as-inner 0.5.1",
  "futures-channel",
  "futures-io",
  "futures-util",
  "idna 0.2.3",
  "ipnet",
  "lazy_static",
- "rand",
+ "rand 0.8.5",
  "smallvec",
  "socket2 0.4.9",
  "thiserror",
@@ -21021,6 +21914,31 @@ dependencies = [
 ]
 
 [[package]]
+name = "trust-dns-proto"
+version = "0.23.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "3119112651c157f4488931a01e586aa459736e9d6046d3bd9105ffb69352d374"
+dependencies = [
+ "async-trait",
+ "cfg-if",
+ "data-encoding",
+ "enum-as-inner 0.6.0",
+ "futures-channel",
+ "futures-io",
+ "futures-util",
+ "idna 0.4.0",
+ "ipnet",
+ "once_cell",
+ "rand 0.8.5",
+ "smallvec",
+ "thiserror",
+ "tinyvec",
+ "tokio",
+ "tracing",
+ "url",
+]
+
+[[package]]
 name = "trust-dns-resolver"
 version = "0.22.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -21037,57 +21955,37 @@ dependencies = [
  "thiserror",
  "tokio",
  "tracing",
- "trust-dns-proto",
+ "trust-dns-proto 0.22.0",
 ]
 
 [[package]]
-name = "try-lock"
-version = "0.2.4"
+name = "trust-dns-resolver"
+version = "0.23.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3528ecfd12c466c6f163363caf2d02a71161dd5e1cc6ae7b34207ea2d42d81ed"
-
-[[package]]
-name = "try-runtime-cli"
-version = "0.38.0"
+checksum = "10a3e6c3aff1718b3c73e395d1f35202ba2ffa847c6a62eea0db8fb4cfe30be6"
 dependencies = [
- "assert_cmd",
- "async-trait",
- "clap 4.5.3",
- "frame-remote-externalities",
- "frame-try-runtime",
- "hex",
- "log",
- "node-primitives",
- "parity-scale-codec",
- "regex",
- "sc-cli",
- "sc-executor",
- "serde",
- "serde_json",
- "sp-api",
- "sp-consensus-aura",
- "sp-consensus-babe",
- "sp-core",
- "sp-debug-derive 14.0.0",
- "sp-externalities 0.25.0",
- "sp-inherents",
- "sp-io",
- "sp-keystore",
- "sp-rpc",
- "sp-runtime",
- "sp-state-machine",
- "sp-timestamp",
- "sp-transaction-storage-proof",
- "sp-version",
- "sp-weights",
- "substrate-cli-test-utils",
- "substrate-rpc-client",
- "tempfile",
+ "cfg-if",
+ "futures-util",
+ "ipconfig",
+ "lru-cache",
+ "once_cell",
+ "parking_lot 0.12.1",
+ "rand 0.8.5",
+ "resolv-conf",
+ "smallvec",
+ "thiserror",
  "tokio",
- "zstd 0.12.4",
+ "tracing",
+ "trust-dns-proto 0.23.2",
 ]
 
 [[package]]
+name = "try-lock"
+version = "0.2.4"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "3528ecfd12c466c6f163363caf2d02a71161dd5e1cc6ae7b34207ea2d42d81ed"
+
+[[package]]
 name = "trybuild"
 version = "1.0.89"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -21121,7 +22019,7 @@ dependencies = [
  "http",
  "httparse",
  "log",
- "rand",
+ "rand 0.8.5",
  "sha-1 0.10.1",
  "thiserror",
  "url",
@@ -21129,6 +22027,26 @@ dependencies = [
 ]
 
 [[package]]
+name = "tungstenite"
+version = "0.20.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "9e3dac10fd62eaf6617d3a904ae222845979aec67c615d1c842b4002c7666fb9"
+dependencies = [
+ "byteorder",
+ "bytes",
+ "data-encoding",
+ "http",
+ "httparse",
+ "log",
+ "rand 0.8.5",
+ "rustls 0.21.6",
+ "sha1",
+ "thiserror",
+ "url",
+ "utf-8",
+]
+
+[[package]]
 name = "twox-hash"
 version = "1.6.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -21136,7 +22054,7 @@ checksum = "97fee6b57c6a41524a810daee9286c02d7752c4253064d0b05472833a438f675"
 dependencies = [
  "cfg-if",
  "digest 0.10.7",
- "rand",
+ "rand 0.8.5",
  "static_assertions",
 ]
 
@@ -21192,6 +22110,12 @@ dependencies = [
 ]
 
 [[package]]
+name = "unicode-segmentation"
+version = "1.11.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "d4c87d22b6e3f4a18d4d40ef354e97c90fcb14dd91d7dc0aa9d8a1172ebf7202"
+
+[[package]]
 name = "unicode-width"
 version = "0.1.10"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -21199,6 +22123,12 @@ checksum = "c0edd1e5b14653f783770bce4a4dabb4a5108a5370a5f5d8cfe8710c361f6c8b"
 
 [[package]]
 name = "unicode-xid"
+version = "0.1.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "fc72304796d0818e357ead4e000d19c9c174ab23dc11093ac919054d20a6a7fc"
+
+[[package]]
+name = "unicode-xid"
 version = "0.2.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "f962df74c8c05a667b5ee8bcf162993134c104e96440b663c8daa176dc772d8c"
@@ -21231,14 +22161,15 @@ checksum = "673aac59facbab8a9007c7f6108d11f63b603f7cabff99fabf650fea5c32b861"
 
 [[package]]
 name = "unsigned-varint"
-version = "0.7.1"
+version = "0.7.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d86a8dc7f45e4c1b0d30e43038c38f274e77af056aa5f74b93c2cf9eb3c1c836"
+checksum = "6889a77d49f1f013504cec6bf97a2c730394adedaeb1deb5ea08949a50541105"
 dependencies = [
  "asynchronous-codec",
  "bytes",
  "futures-io",
  "futures-util",
+ "tokio-util",
 ]
 
 [[package]]
@@ -21331,6 +22262,12 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "accd4ea62f7bb7a82fe23066fb0957d48ef677f6eeb8215f372f52e48bb32426"
 
 [[package]]
+name = "vec_map"
+version = "0.8.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "f1bddf1187be692e79c5ffeab891132dfb0f236ed36a43c7ed39f1165ee20191"
+
+[[package]]
 name = "version_check"
 version = "0.9.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -21357,7 +22294,7 @@ dependencies = [
  "arrayref",
  "constcat",
  "digest 0.10.7",
- "rand",
+ "rand 0.8.5",
  "rand_chacha 0.3.1",
  "rand_core 0.6.4",
  "sha2 0.10.7",
@@ -21433,8 +22370,8 @@ dependencies = [
  "bumpalo",
  "log",
  "once_cell",
- "proc-macro2",
- "quote",
+ "proc-macro2 1.0.75",
+ "quote 1.0.35",
  "syn 2.0.53",
  "wasm-bindgen-shared",
 ]
@@ -21457,7 +22394,7 @@ version = "0.2.87"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "dee495e55982a3bd48105a7b947fd2a9b4a8ae3010041b9e0faab3f9cd028f1d"
 dependencies = [
- "quote",
+ "quote 1.0.35",
  "wasm-bindgen-macro-support",
 ]
 
@@ -21467,8 +22404,8 @@ version = "0.2.87"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "54681b18a46765f095758388f2d0cf16eb8d4169b639ab575a8f5693af210c7b"
 dependencies = [
- "proc-macro2",
- "quote",
+ "proc-macro2 1.0.75",
+ "quote 1.0.35",
  "syn 2.0.53",
  "wasm-bindgen-backend",
  "wasm-bindgen-shared",
@@ -21500,8 +22437,8 @@ version = "0.3.37"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "ecb993dd8c836930ed130e020e77d9b2e65dd0fbab1b67c790b0f5d80b11a575"
 dependencies = [
- "proc-macro2",
- "quote",
+ "proc-macro2 1.0.75",
+ "quote 1.0.35",
 ]
 
 [[package]]
@@ -21802,7 +22739,7 @@ dependencies = [
  "memfd",
  "memoffset 0.8.0",
  "paste",
- "rand",
+ "rand 0.8.5",
  "rustix 0.36.15",
  "wasmtime-asm-macros",
  "wasmtime-environ",
@@ -22116,6 +23053,40 @@ dependencies = [
 ]
 
 [[package]]
+name = "windows"
+version = "0.52.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "e48a53791691ab099e5e2ad123536d0fff50652600abaf43bbf952894110d0be"
+dependencies = [
+ "windows-core",
+ "windows-targets 0.52.0",
+]
+
+[[package]]
+name = "windows-core"
+version = "0.52.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "33ab640c8d7e35bf8ba19b884ba838ceb4fba93a4e8c65a9059d08afcfc683d9"
+dependencies = [
+ "windows-targets 0.52.0",
+]
+
+[[package]]
+name = "windows-sys"
+version = "0.42.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "5a3e1820f08b8513f676f7ab6c1f99ff312fb97b553d30ff4dd86f9f15728aa7"
+dependencies = [
+ "windows_aarch64_gnullvm 0.42.2",
+ "windows_aarch64_msvc 0.42.2",
+ "windows_i686_gnu 0.42.2",
+ "windows_i686_msvc 0.42.2",
+ "windows_x86_64_gnu 0.42.2",
+ "windows_x86_64_gnullvm 0.42.2",
+ "windows_x86_64_msvc 0.42.2",
+]
+
+[[package]]
 name = "windows-sys"
 version = "0.45.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -22413,6 +23384,23 @@ dependencies = [
 ]
 
 [[package]]
+name = "x509-parser"
+version = "0.15.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "7069fba5b66b9193bd2c5d3d4ff12b839118f6bcbef5328efafafb5395cf63da"
+dependencies = [
+ "asn1-rs",
+ "data-encoding",
+ "der-parser",
+ "lazy_static",
+ "nom",
+ "oid-registry",
+ "rusticata-macros",
+ "thiserror",
+ "time",
+]
+
+[[package]]
 name = "xattr"
 version = "1.0.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -22497,8 +23485,8 @@ name = "xcm-procedural"
 version = "7.0.0"
 dependencies = [
  "Inflector",
- "proc-macro2",
- "quote",
+ "proc-macro2 1.0.75",
+ "quote 1.0.35",
  "staging-xcm",
  "syn 2.0.53",
  "trybuild",
@@ -22586,7 +23574,7 @@ dependencies = [
  "log",
  "nohash-hasher",
  "parking_lot 0.12.1",
- "rand",
+ "rand 0.8.5",
  "static_assertions",
 ]
 
@@ -22620,8 +23608,8 @@ version = "0.7.32"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "9ce1b18ccd8e73a9321186f97e46f9f04b778851177567b1975109d26a08d2a6"
 dependencies = [
- "proc-macro2",
- "quote",
+ "proc-macro2 1.0.75",
+ "quote 1.0.35",
  "syn 2.0.53",
 ]
 
@@ -22640,8 +23628,8 @@ version = "1.4.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "ce36e65b0d2999d2aafac989fb249189a141aee1f53c612c1f37d72631959f69"
 dependencies = [
- "proc-macro2",
- "quote",
+ "proc-macro2 1.0.75",
+ "quote 1.0.35",
  "syn 2.0.53",
 ]
 
@@ -22657,7 +23645,7 @@ dependencies = [
  "serde_json",
  "thiserror",
  "tokio",
- "tokio-tungstenite",
+ "tokio-tungstenite 0.17.2",
  "tracing-gum",
  "url",
 ]
diff --git a/pkgs/applications/blockchains/polkadot/default.nix b/pkgs/applications/blockchains/polkadot/default.nix
index fe54ddacc311..9aa8a66c9e8b 100644
--- a/pkgs/applications/blockchains/polkadot/default.nix
+++ b/pkgs/applications/blockchains/polkadot/default.nix
@@ -1,5 +1,7 @@
 { fetchFromGitHub
 , lib
+, openssl
+, pkg-config
 , protobuf
 , rocksdb_8_3
 , rust-jemalloc-sys-unprefixed
@@ -15,13 +17,13 @@ let
 in
 rustPlatform.buildRustPackage rec {
   pname = "polkadot";
-  version = "1.10.0";
+  version = "1.11.0";
 
   src = fetchFromGitHub {
     owner = "paritytech";
     repo = "polkadot-sdk";
     rev = "polkadot-v${version}";
-    hash = "sha256-xRuV/1+OZeoth/lb5OXwVzHl2IWK1G0GgIN0E8EZlYg=";
+    hash = "sha256-q8u2L7CUDUPZrU/i8K5jsqG4Ib0Wh5e/LIUc6Z4SFfY=";
 
     # the build process of polkadot requires a .git folder in order to determine
     # the git commit hash that is being built and add it to the version string.
@@ -48,6 +50,7 @@ rustPlatform.buildRustPackage rec {
       "ark-secret-scalar-0.0.2" = "sha256-91sODxaj0psMw0WqigMCGO5a7+NenAsRj5ZmW6C7lvc=";
       "common-0.1.0" = "sha256-LHz2dK1p8GwyMimlR7AxHLz1tjTYolPwdjP7pxork1o=";
       "fflonk-0.1.0" = "sha256-+BvZ03AhYNP0D8Wq9EMsP+lSgPA6BBlnWkoxTffVLwo=";
+      "litep2p-0.3.0" = "sha256-IiJmmSb1+8+HbT/LP/zvhioVBeeGAncf4zo7Czuq6qY=";
       "sp-ark-bls12-381-0.4.2" = "sha256-nNr0amKhSvvI9BlsoP+8v6Xppx/s7zkf0l9Lm3DW8w8=";
       "sp-crypto-ec-utils-0.4.1" = "sha256-/Sw1ZM/JcJBokFE4y2mv/P43ciTL5DEm0PDG0jZvMkI=";
     };
@@ -63,13 +66,15 @@ rustPlatform.buildRustPackage rec {
   doCheck = false;
 
   nativeBuildInputs = [
+    pkg-config
     rustPlatform.bindgenHook
     rustc
     rustc.llvmPackages.lld
   ];
 
   # NOTE: jemalloc is used by default on Linux with unprefixed enabled
-  buildInputs = lib.optionals stdenv.isLinux [ rust-jemalloc-sys-unprefixed ] ++
+  buildInputs = [ openssl ] ++
+    lib.optionals stdenv.isLinux [ rust-jemalloc-sys-unprefixed ] ++
     lib.optionals stdenv.isDarwin [ Security SystemConfiguration ];
 
   # NOTE: disable building `core`/`std` in wasm environment since rust-src isn't
@@ -78,6 +83,7 @@ rustPlatform.buildRustPackage rec {
 
   # NOTE: we need to force lld otherwise rust-lld is not found for wasm32 target
   CARGO_TARGET_WASM32_UNKNOWN_UNKNOWN_LINKER = "lld";
+  OPENSSL_NO_VENDOR = 1;
   PROTOC = "${protobuf}/bin/protoc";
   ROCKSDB_LIB_DIR = "${rocksdb}/lib";
 
diff --git a/pkgs/applications/blockchains/sparrow/default.nix b/pkgs/applications/blockchains/sparrow/default.nix
index 8552d12bc9bf..ab58899889de 100644
--- a/pkgs/applications/blockchains/sparrow/default.nix
+++ b/pkgs/applications/blockchains/sparrow/default.nix
@@ -1,4 +1,5 @@
 { stdenv
+, stdenvNoCC
 , lib
 , makeWrapper
 , fetchurl
@@ -17,17 +18,54 @@
 , hwi
 , imagemagick
 , gzip
+, gnupg
 }:
 
 let
   pname = "sparrow";
-  version = "1.8.4";
+  version = "1.9.1";
 
   src = fetchurl {
     url = "https://github.com/sparrowwallet/${pname}/releases/download/${version}/${pname}-${version}-x86_64.tar.gz";
-    sha256 = "0w6z84w9spwfpqrf5m9bcq30xqp94c27jw3qzxfdyisp8n22xvd8";
+    sha256 = "sha256-b1OIizSMTOtLM3/RFiBJPSbkj/C0d0s5ggcUwjCdBBo=";
+
+    # nativeBuildInputs, downloadToTemp, and postFetch are used to verify the signed upstream package.
+    # The signature is not a self-contained file. Instead the SHA256 of the package is added to a manifest file.
+    # The manifest file is signed by the owner of the public key, Craig Raw.
+    # Thus to verify the signed package, the manifest is verified with the public key,
+    # and then the package is verified against the manifest.
+    # The public key is obtained from https://keybase.io/craigraw/pgp_keys.asc
+    # and is included in this repo to provide reproducibility.
+    nativeBuildInputs = [ gnupg ];
+    downloadToTemp = true;
+
+    postFetch = ''
+      pushd $(mktemp -d)
+      export GNUPGHOME=$PWD/gnupg
+      mkdir -m 700 -p $GNUPGHOME
+      ln -s ${manifest} ./manifest.txt
+      ln -s ${manifestSignature} ./manifest.txt.asc
+      ln -s $downloadedFile ./${pname}-${version}-x86_64.tar.gz
+      gpg --import ${publicKey}
+      gpg --verify manifest.txt.asc manifest.txt
+      sha256sum -c --ignore-missing manifest.txt
+      popd
+      mv $downloadedFile $out
+    '';
+  };
+
+  manifest = fetchurl {
+    url = "https://github.com/sparrowwallet/${pname}/releases/download/${version}/${pname}-${version}-manifest.txt";
+    sha256 = "sha256-2IGhP9Xsli9d0zTzPliJH/tE5TXei1vjVngtjL9vA48=";
+  };
+
+  manifestSignature = fetchurl {
+    url = "https://github.com/sparrowwallet/${pname}/releases/download/${version}/${pname}-${version}-manifest.txt.asc";
+    sha256 = "sha256-FSR9Z+27J/u1MYIR+LrL+pqCP6q4GfVYtRZ0WA9AaKM=";
   };
 
+  publicKey = ./publickey.asc;
+
   launcher = writeScript "sparrow" ''
     #! ${bash}/bin/bash
     params=(
@@ -74,7 +112,7 @@ let
     exec ${tor}/bin/tor "$@"
   '';
 
-  jdk-modules = stdenv.mkDerivation {
+  jdk-modules = stdenvNoCC.mkDerivation {
     name = "jdk-modules";
     nativeBuildInputs = [ openjdk ];
     dontUnpack = true;
@@ -95,7 +133,7 @@ let
     '';
   };
 
-  sparrow-modules = stdenv.mkDerivation {
+  sparrow-modules = stdenvNoCC.mkDerivation {
     pname = "sparrow-modules";
     inherit version src;
     nativeBuildInputs = [ makeWrapper gzip gnugrep openjdk autoPatchelfHook stdenv.cc.cc.lib zlib ];
@@ -150,7 +188,6 @@ let
       # with one from Nixpkgs.
       gzip -c ${torWrapper}  > tor.gz
       cp tor.gz modules/kmp.tor.binary.linuxx64/kmptor/linux/x64/tor.gz
-      find modules
     '';
 
     installPhase = ''
@@ -162,7 +199,7 @@ let
     '';
   };
 in
-stdenv.mkDerivation rec {
+stdenvNoCC.mkDerivation rec {
   inherit version src;
   pname = "sparrow-unwrapped";
   nativeBuildInputs = [ makeWrapper copyDesktopItems ];
@@ -180,7 +217,7 @@ stdenv.mkDerivation rec {
     })
   ];
 
-  sparrow-icons = stdenv.mkDerivation {
+  sparrow-icons = stdenvNoCC.mkDerivation {
     inherit version src;
     pname = "sparrow-icons";
     nativeBuildInputs = [ imagemagick ];
@@ -212,8 +249,6 @@ stdenv.mkDerivation rec {
     runHook postInstall
   '';
 
-  passthru.updateScript = ./update.sh;
-
   meta = with lib; {
     description = "A modern desktop Bitcoin wallet application supporting most hardware wallets and built on common standards such as PSBT, with an emphasis on transparency and usability.";
     homepage = "https://sparrowwallet.com";
diff --git a/pkgs/applications/blockchains/sparrow/publickey.asc b/pkgs/applications/blockchains/sparrow/publickey.asc
new file mode 100644
index 000000000000..c053995b68eb
--- /dev/null
+++ b/pkgs/applications/blockchains/sparrow/publickey.asc
@@ -0,0 +1,90 @@
+-----BEGIN PGP PUBLIC KEY BLOCK-----
+Comment: GPGTools - http://gpgtools.org
+
+mQINBF2V8eEBEADmjYzGOpxEI0J7jQ1qFzlsrjF6NaBSq+UqKwPOL917pvI/8b/d
+bI1gLV1kgIMAnwf3/JWkF4Ind0pk3g3Vj/jzTYg/ePSwjAhvhowoDo4va+AtV066
+tRf3FjQYFCWR6ccN4zxmQxZ9QPOp4XIcXwu7Ce+ORRRiU9gkWXfiU64pmpzH89gz
+LF35r+98+d9Ov6nAPhRSUlj+vk85mu6Lk8J26srHKWB7iXat1rl4lEAPpFtyvU6L
+oO5XZoRPvXce3mByyuh8SDYTr6GVYjfPHWPaxcGrS/qTe2RCn3ec3xWSGT/U4xH0
+TwagphjxlSnpeHDxZXG6wpgyVEcjpQ1M9hIK7z1G+SHuW4EoyaZf2llTsNbKvbV8
+UOao6g5uAYeLQyBJPKExocNj7+DvbNrpRXYy1levrWtnkNS/oPx3wJgxeXL55uXC
+MCcc5X5T6GNNAtBubAxtYRt65Q6Lvga7v6dWTDtvwufxfjtXZGFO/Hut4wS6IyTt
+77i4GB/WeAQGGhPHGssVECd80u7/DEZ1EMcfTexsDJ9T1ZeM6orvAQ3i2DGdoiYt
+/pJPd2g0LE1Q0HhSVC74JP0pUPJ7V/nzBVPXbYQTQWxESce+NUpnONs2uW+XNSxb
+i0PoUwyDZsRQ7SZJZuOStBWqUXC8TUoGtkaRQHtBgumW0zHasgShVpkU+wARAQAB
+tCNDcmFpZyBSYXcgPGNyYWlnQHNwYXJyb3d3YWxsZXQuY29tPokCVAQTAQoAPgIb
+AwULCQgHAwUVCgkICwUWAgMBAAIeBQIXgBYhBNTQ0yAvwGhJolezjelGGDNMZ0tA
+BQJlCacEBQkO+IMiAAoJEOlGGDNMZ0tAMZ0QAJtLTl8n/H2nn3nnuHMV18lLya+F
+92/7Q5cSls+EPDzmhZnOY13aVlzL0y9++snRA6QrajyF5pxk5/t6OUcztg9PSSzz
+dJ4SrjqF7nxSWXAybQLSWK0NmAZGC4cCkHuFwOOpTYTsGjUH0lMnvGF7PllQK0L7
+8zKrNUpHHLWpkPBHfJEnGbv3XVG4DVWfdTAmpgSP/Lma3qRs5TRlr4pWbCQxUjd3
+8QCw25PGT4xQ9g/yCWY1rBq2x7MzHsiuNmd/qCuwcXiSCChrlGUUVYWwp7FXkVFq
+9wIJB7lYxOKbrwL8KcA2jQL0ZH9421+xfThCruMEnb3fPiW7y5VAbJKNLvk+WHa6
+Vfj12+R3a3ZM2P8iExS6+d04xM0AXK4J5bIcpFW0D8GdjJyED6I7cAPF723xSws1
+t9RD1rVslOlCvOJtoqATuWqGoTVAR4cdpdpnTywKZpjQowLdIcUPbW58zJQxmONh
+vXoTzqvhQV2b9wRlrT+8gwlYmGh+P+xpR8nlHD7GQWoUC/mfWm4w6rMfX6xHBylC
+SHB+teH+9lqUaefbbxKQlAbLL+3q7M4O4Dx224OZBvRN7MFnvBWJimhj8n7lJwfY
+Pl7l/ZENqigiosH5XPLIXE8WhbT2SLh9a2Lp+qH8xrEcsUlUST+F0gE9qawTTl9X
+RGfvr16YhNpScpBptB5DcmFpZyBSYXcgPGNyYWlncmF3QGdtYWlsLmNvbT6JAjYE
+MAEKACAWIQTU0NMgL8BoSaJXs43pRhgzTGdLQAUCZQmpwgIdIAAKCRDpRhgzTGdL
+QNX9D/4kl6JOsL4/P88m8i3SYW1N+FzCrr486Ak8zmfoPjtoSytk0+QIsjb5Esn4
+ltU2UD7MPoPplky3TykNUbVqPr1LtSoabbxOOpz3kpHgkYN2KvH6Bv2H81kBF0k9
+a8XYY92/73q7n7QiMmm6SNm0LO0QvHRu5KoCVQ+FyeLu4h4UqpK0RWtjIUUo6whO
+hXO1ZkkAcV38gewbU92bQBnhLxQNm/EHs9g3Dx+dmhmym4yn0sfNxX+4MsLNMa6E
+jcQ0YF+EgrQk9r8MF3NtPPFfzxswOThXNlEzie5ETAqcouT6mnlfTnB8UL4wjBoP
+GueatUqvtO99RUZbM2otZdz1bBAmOQ/R92wcqsC46zY+PdIXX3YuiGVEfZHjuAU7
+3FlajlZeWvp2NgZzLHFAjjWt67IeYkvfsv4bvq9EANXebI0Srq/g0o2Ego+kfBsZ
+Ca+2jMgxo9+6X69+WJEe46G9bHatpl2dStylgWRhroEbkV83bIFwwE8Q9QOX4uJW
+FB16kl/qTuBiG/rDgVT8eZuCYJXFKQtgPoslEramQuURyUfKFrOAyL7mQHHGSZab
+mgI8kKI//DvTD3t/BspikmdgZLQL4zoXKIFFPuES+TQO+BHoB+TikjZC81mcyZOX
+Sh+Eg21pO3B+HMOXkpv0aj3ZCUt55hslWUom8huQxY7sUdg4KIkCNgQwAQoAIBYh
+BNTQ0yAvwGhJolezjelGGDNMZ0tABQJlCaa2Ah0gAAoJEOlGGDNMZ0tA4uYQAJuP
+GEiE6/XO10lG8feXk5EIpTgFT8XiF7/CEFrGdPOgb/2HQ2G0QXGfrYI5VTJPdgsG
+Mj2JgTcFX12fyKvGpb0HXMdvqNEtNUV4z5wrhUkItPFF4wJ2YAeFuJpdgsTU3RYL
+mct30Dcr79M0JSsOO3erjAqsMj+GlTWbHMEzM86regfe0KTU9f4G8DIYRoM+Zu3E
+P3BgpKm2miyEW++vuK+/Q+cWPSi7ztRPQ9CoswPb/xEFuxnzRCbdmwGqRUJzFfQJ
+3uMTSt5JACn1mn/Bojn8IcAhCKJsBNL3MHAqkJVPdzzQhsr2z0bevVBhhbBabaub
+zbFOIHluSge5/IGr7bFjldql/UflYavrV1+aH2CzI/YEgBxZZoIgYl9N5n+vO1GI
+Xn39axQ4Lhf7mJc5Y89ojZkhT7sHgpCceyzsFWrBrcLXhhFCafTBcVQd+U1xk5Xf
+SV+3TTbWz1woIzVJ6ef5wUYI0qZBuXDef6kIEBnFUwbn5Iu834NtthSkam9LeDcJ
+NDISaoCOd+cRgKSTrGkLEIF7hzlF901S/jTDDaKGs9JnruhokxjmyxJvFcowP4Lo
+O8J+782+e1QiL49M97tvnYwzLU/iGieG6kWgQcJHVy5ZJdDNMfkZMNR6Ek4dzBVQ
+c5pgVp882o9l61xdCQq6o/oSBSCbOGe8Ujr1tGpXiQJUBBMBCgA+AhsDBQsJCAcD
+BRUKCQgLBRYCAwEAAh4BAheAFiEE1NDTIC/AaEmiV7ON6UYYM0xnS0AFAmUJpwMF
+CQ74gyIACgkQ6UYYM0xnS0Dnww//fMTpZ66XJK15CqbqqFHOlkneoV/X2Oo1CN/t
+qIiG6s1TMA/ZwF1dmHSZh46tAd2TK0qTxR4kxXlVq5oO5HbzIA9n/hvJJA8ZXk3g
+QieX4L5uITdHmAzChhf0N0jAQT8Oe72SocRMgPCI8c3ZKhBHYqI1PCTUSQKD6+dS
+D0zHGZhtPJctDBJGVDCT8jaS4JeDVBU0UijzxLo6qkZvSIXoTxjQHQILFZq4biCs
+2gLQ6aJ870TtQz/PiZkL+o5XImY+nPoAyEIC+mDSgO4kb5ELJ5U66vDMpR75FFpW
+t/wU0/0q7W9wIzifdRuctVDyh88/5ycg4zrVyX0PmNrx27EGIhL1sEPfLnzMU7am
+FqffWVtjvWrPtOiJE6vYRZA1IhallNY1eVI2NcEAj3+gSUsQx5rl7loP+axB7eSM
+BKNUBlTptKrCMCWiYVrIFHDG7rHpNc/8G7mpjQCZtUyTNfRG87991JI9nAXHqntr
+Slvr2t1TBaNkJQn06/Vx4StR8dNHvN09OzmriPibjxVXfW1fbiPD8mNPM1q1ll37
+15IaZJLJfxA0tz5hhK1J9/asM80GMRfJmbGprZqkbDEFoi4QlLGJfYM5YeHi/TKB
+j0IBS7Kh0rZ0y2YpwYRGJjeL+RMwRdbFV0vIayyZ8AS6mXbYVFfpgDnQQ2mJUkm2
+XNpucCm5Ag0EXZXx4QEQAMkaRHXCSMDjBJ+7hQp5+OW7vhRb3jJ5RvveGJpMaV9z
+/6UTo+VhI1AzkKKFZ/gwk7fJWm5cuE9fA6rc+h5eHbTtDkcPxAQk58YJyNdKj1t+
+XncvU3Nhb8C/+cChQrnxAlQeFeSk2VUnxh7eTU4jwZo89N+cLJCzz0gIBbmOtTS6
+zcdVaAhi0ePmD496kFxOz0ccGtukeXE38VdUM5PfSSEE8Cy+pokgFjyUSXBefW9u
+XsETpw12KvF6xBizFYBTsMmGQQqxtk5bO/bQly61798gcFsxnrMPxBDyENJPkNEJ
+s7tdCWEQB2dA8BZw7tN7sItVQabTmz4gUlmRSfsZfZbNZy7nL3zIBXRBZ6I9OPOp
+m7BCUlOEQgJQru3RJdfnFVaNUURTd0Up+t+lACuUXXuMlrDbjAFlIGN0YR86JN6b
+yAv2s9V5U/3R6QV50BRkj1qQehwUKRQYNMMeSs0I63zHgWOLjXwqr1O0U2/x+8o+
++UOUVCvsicQcl2CDLbC4C+xntZSKUwYmWtAWjkiDp5Fk2Fxyj9vK5TSym+ur3AAH
+gZVugkoM5yMhiOIJVPKGB1aAnQNmQVYREEpJBTtFqbURraqObqiHKPF6MKAL+AW4
+jv2Lms0gJ2S5rSmP/Zi0CiABYg1pppojYlrHp1vXb251o7WlPgwf6nKKLTi8byTN
+ABEBAAGJAjwEGAEKACYCGwwWIQTU0NMgL8BoSaJXs43pRhgzTGdLQAUCZQmnLAUJ
+DviDSwAKCRDpRhgzTGdLQNAwD/0ThrnXqwZ+dyFK4M73nqSXwWjED/xHAQYmrEAr
+kVoox3GZYlTFlQlCQZTi+yOsrFdiP7EfWM8jbc6BqEh4fhn1f+wUIiZQELl+6M/U
+rHrPz5h4c9rD/+M62awPa6HdauaHkUrF3nAax9EOTVQJvxKLpuaE9Ki9p2ZMEQOK
+HakTDtLL2BeXiJG1I/SH1thBPuGL4hReY8qrj0ryYMrlYdu7l+RJrQUemLVD/eQI
+S8MqH8E5HjZKS7QNSCEEeHgFw1Yu28C+AnjHQHS5gDugw8ire/NetFxI8Wx5nOOU
+oCRR3P1U5IFWqj+Yukc3rB0z9+kSK3cic1jdCRy26JYxz9xuBbAqcnKoGtrB3HVI
+Y2pdQKN4kTpifGDriSEe6epuEvvObBovYJE3lc4AWr8VNFJd4UYphJ/9Px+5xajo
+ZBicNI9pGq0gTDuBb+tBwTt2dw8tFSCLyJ+C1dFRZX8NM3FlnpjeJQb7SCcLT4PZ
+h4+CyElfF/HkcVZHjjanpXZdP91clgmRidnlDBQ07BmaTgvxdlkwHJFGqGcuZn1A
+y1p23CECTYiFxFxgMvVjNHSPSyrEnNC0ash+BIGuxvYfm/7CioThFXw9TbwQXn6C
+IsgINPAvnKVmW6Ui0jLvtlIWV/TW2yDFjPoC2ilVexwt9QdvtBf5baT8GCilb5Yo
+EmR2yA==
+=t5JY
+-----END PGP PUBLIC KEY BLOCK-----
diff --git a/pkgs/applications/blockchains/sparrow/update.sh b/pkgs/applications/blockchains/sparrow/update.sh
deleted file mode 100755
index 7a520b351aa4..000000000000
--- a/pkgs/applications/blockchains/sparrow/update.sh
+++ /dev/null
@@ -1,26 +0,0 @@
-#!/usr/bin/env nix-shell
-#!nix-shell -i bash -p coreutils curl jq gnused gnupg common-updater-scripts
-
-set -eu -o pipefail
-
-version="$(curl -s https://api.github.com/repos/sparrowwallet/sparrow/releases| jq '.[] | {name} | limit(1;.[])' | sed 's/[\"v]//g' | head -n 1)"
-depname="sparrow-$version-x86_64.tar.gz"
-src_root="https://github.com/sparrowwallet/sparrow/releases/download/$version";
-src="$src_root/$depname";
-manifest="$src_root/sparrow-$version-manifest.txt"
-signature="$src_root/sparrow-$version-manifest.txt.asc"
-key="D4D0 D320 2FC0 6849 A257 B38D E946 1833 4C67 4B40"
-
-pushd $(mktemp -d --suffix=-sparrow-updater)
-export GNUPGHOME=$PWD/gnupg
-mkdir -m 700 -p "$GNUPGHOME"
-curl -L -o "$depname" -- "$src"
-curl -L -o manifest.txt -- "$manifest"
-curl -L -o signature.asc -- "$signature"
-gpg --batch --recv-keys "$key"
-gpg --batch --verify signature.asc manifest.txt
-sha256sum -c --ignore-missing manifest.txt
-sha256=$(nix-prefetch-url --type sha256 "file://$PWD/$depname")
-popd
-
-update-source-version sparrow-unwrapped "$version" "$sha256"
diff --git a/pkgs/applications/blockchains/trezor-suite/default.nix b/pkgs/applications/blockchains/trezor-suite/default.nix
index 328e423535f3..a718d06c714a 100644
--- a/pkgs/applications/blockchains/trezor-suite/default.nix
+++ b/pkgs/applications/blockchains/trezor-suite/default.nix
@@ -8,7 +8,7 @@
 
 let
   pname = "trezor-suite";
-  version = "24.3.2";
+  version = "24.5.2";
   name = "${pname}-${version}";
 
   suffix = {
@@ -19,8 +19,8 @@ let
   src = fetchurl {
     url = "https://github.com/trezor/${pname}/releases/download/v${version}/Trezor-Suite-${version}-${suffix}.AppImage";
     hash = { # curl -Lfs https://github.com/trezor/trezor-suite/releases/latest/download/latest-linux{-arm64,}.yml | grep ^sha512 | sed 's/: /-/'
-      aarch64-linux = "sha512-oj/UrUFTH0QZD2eTHdR/Lu6Tz6AIhbIBgPJD3jH1YJKgOZIzX21H0KSddMgu+iKPw2WmoKf0UP+qqf+yFs/mVQ==";
-      x86_64-linux  = "sha512-RakNuSDKR0neO0IZwTVaARX9tWNDfJwOBFL3teUsNlcrur862I1c6NaaA/RxriujolDRI+wgG0twaUGEXXar5g==";
+      aarch64-linux = "sha512-U3Az5MtsHup+aNO6lVHeAXRAnNLUbQkL5qMTpYZTaLgiZEFQCUigBJXNPaiUiHA1rJAsFh6wpv20iRMcqRr9gA==";
+      x86_64-linux  = "sha512-9Gz0T9/GpTEzZDNk8tV7dg4QvQIB4IoEcOLIjrig6kmlaUoPwwoWFuJP0BH5WW2AhOZ+CEWBP6zFD7uw6VVDnA==";
     }.${stdenv.hostPlatform.system} or (throw "Unsupported system: ${stdenv.hostPlatform.system}");
   };
 
diff --git a/pkgs/applications/blockchains/wasabiwallet/default.nix b/pkgs/applications/blockchains/wasabiwallet/default.nix
index 81d8a5dac203..2d8b7b7c7385 100644
--- a/pkgs/applications/blockchains/wasabiwallet/default.nix
+++ b/pkgs/applications/blockchains/wasabiwallet/default.nix
@@ -25,11 +25,11 @@ let
 in
 stdenv.mkDerivation rec {
   pname = "wasabiwallet";
-  version = "2.0.7.1";
+  version = "2.0.7.2";
 
   src = fetchurl {
     url = "https://github.com/zkSNACKs/WalletWasabi/releases/download/v${version}/Wasabi-${version}.tar.gz";
-    sha256 = "sha256-u/QDdGLdD5+8j3r8pZQwcG3iTToFJEvzzV7Rl4ggvtM=";
+    sha256 = "sha256-s/rzjlPsOylbuQx7gDnctvl1tms95RqErk0vVlzhouw=";
   };
 
   dontBuild = true;
diff --git a/pkgs/applications/display-managers/greetd/default.nix b/pkgs/applications/display-managers/greetd/default.nix
index 3a4d385f4f6c..6d8a5f2bda29 100644
--- a/pkgs/applications/display-managers/greetd/default.nix
+++ b/pkgs/applications/display-managers/greetd/default.nix
@@ -8,16 +8,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "greetd";
-  version = "0.9.0";
+  version = "0.10.0";
 
   src = fetchFromSourcehut {
     owner = "~kennylevinsen";
     repo = pname;
     rev = version;
-    sha256 = "sha256-w68iKabVVIHB+ujCd5q+L4T6+Tfqedou3wXOuMGi6aw=";
+    sha256 = "sha256-QFxE5c4XDOBa3rKpUFur6xOG+5m0NSCOWo7960ZWEow=";
   };
 
-  cargoHash = "sha256-vn1ih4YXsltR1zdy7BzS3CSJO9Uewx/654lRTSkWV0k=";
+  cargoHash = "sha256-w7V5ZBFy5MIEQKOPPgsc7XnrXsF5rEDNzUKeLPPy4P4=";
 
   nativeBuildInputs = [
     scdoc
diff --git a/pkgs/applications/display-managers/greetd/gtkgreet.nix b/pkgs/applications/display-managers/greetd/gtkgreet.nix
index 674257e8526e..10389c262742 100644
--- a/pkgs/applications/display-managers/greetd/gtkgreet.nix
+++ b/pkgs/applications/display-managers/greetd/gtkgreet.nix
@@ -1,7 +1,7 @@
 { stdenv
 , lib
 , fetchFromSourcehut
-, wrapGAppsHook
+, wrapGAppsHook3
 , pkg-config
 , cmake
 , meson
@@ -29,7 +29,7 @@ stdenv.mkDerivation rec {
     meson
     ninja
     cmake
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
diff --git a/pkgs/applications/display-managers/greetd/tuigreet.nix b/pkgs/applications/display-managers/greetd/tuigreet.nix
index 2a6a4c6ef782..d0aebc5921b9 100644
--- a/pkgs/applications/display-managers/greetd/tuigreet.nix
+++ b/pkgs/applications/display-managers/greetd/tuigreet.nix
@@ -5,16 +5,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "tuigreet";
-  version = "0.8.0";
+  version = "0.9.0";
 
   src = fetchFromGitHub {
     owner = "apognu";
     repo = pname;
     rev = version;
-    sha256 = "sha256-8/2I6bk29/GqZ1ACuN9RgBiGAy7yt0iw2fagHfu4/BI=";
+    sha256 = "sha256-o1NPwZ2gvFxq988RhLz/6ucL4qb2dGtMdhNvAbQzIvg=";
   };
 
-  cargoSha256 = "sha256-fOs9a0/1c8Kh4JA5up3XSQ+km/FwSYzl0w4UDL4yU4M=";
+  cargoSha256 = "sha256-dfzNRs3NOtHoWBq6tx3DjL2knNwsdxBmjqJbPzQJifQ=";
 
   meta = with lib; {
     description = "Graphical console greeter for greetd";
diff --git a/pkgs/applications/display-managers/lightdm-enso-os-greeter/default.nix b/pkgs/applications/display-managers/lightdm-enso-os-greeter/default.nix
index a35b52bf8cd6..b8082c4510d6 100644
--- a/pkgs/applications/display-managers/lightdm-enso-os-greeter/default.nix
+++ b/pkgs/applications/display-managers/lightdm-enso-os-greeter/default.nix
@@ -1,6 +1,6 @@
 { lib, stdenv, fetchFromGitHub, pkg-config, linkFarm, lightdm-enso-os-greeter
 , dbus, pcre, libepoxy, xorg, at-spi2-core, libxklavier, libxkbcommon
-, gtk3, vala, cmake, libgee, lightdm, gdk-pixbuf, clutter-gtk, wrapGAppsHook, librsvg }:
+, gtk3, vala, cmake, libgee, lightdm, gdk-pixbuf, clutter-gtk, wrapGAppsHook3, librsvg }:
 
 stdenv.mkDerivation {
   pname = "lightdm-enso-os-greeter";
@@ -21,7 +21,7 @@ stdenv.mkDerivation {
     cmake
     pkg-config
     vala
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
diff --git a/pkgs/applications/display-managers/lightdm-mini-greeter/default.nix b/pkgs/applications/display-managers/lightdm-mini-greeter/default.nix
index 353e5150356f..16fa1cfe4dcf 100644
--- a/pkgs/applications/display-managers/lightdm-mini-greeter/default.nix
+++ b/pkgs/applications/display-managers/lightdm-mini-greeter/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, linkFarm, lightdm-mini-greeter, fetchFromGitHub, autoreconfHook, pkg-config, lightdm, gtk3, glib, gdk-pixbuf, wrapGAppsHook, librsvg }:
+{ lib, stdenv, linkFarm, lightdm-mini-greeter, fetchFromGitHub, autoreconfHook, pkg-config, lightdm, gtk3, glib, gdk-pixbuf, wrapGAppsHook3, librsvg }:
 
 stdenv.mkDerivation rec {
   pname = "lightdm-mini-greeter";
@@ -11,7 +11,7 @@ stdenv.mkDerivation rec {
     sha256 = "sha256-Pm7ExfusFIPktX2C4UE07qgOVhcWhVxnaD3QARpmu7Y=";
   };
 
-  nativeBuildInputs = [ autoreconfHook pkg-config wrapGAppsHook ];
+  nativeBuildInputs = [ autoreconfHook pkg-config wrapGAppsHook3 ];
   buildInputs = [ lightdm gtk3 glib gdk-pixbuf librsvg ];
 
   configureFlags = [ "--sysconfdir=/etc" ];
diff --git a/pkgs/applications/display-managers/lightdm-slick-greeter/default.nix b/pkgs/applications/display-managers/lightdm-slick-greeter/default.nix
index 67bbf3754534..b7aded60260d 100644
--- a/pkgs/applications/display-managers/lightdm-slick-greeter/default.nix
+++ b/pkgs/applications/display-managers/lightdm-slick-greeter/default.nix
@@ -6,7 +6,7 @@
 , vala
 , intltool
 , autoreconfHook
-, wrapGAppsHook
+, wrapGAppsHook3
 , cinnamon
 , lightdm
 , gtk3
@@ -36,7 +36,7 @@ stdenv.mkDerivation rec {
     vala
     intltool
     autoreconfHook
-    wrapGAppsHook
+    wrapGAppsHook3
     python3
     python3.pkgs.wrapPython
   ];
diff --git a/pkgs/applications/display-managers/lightdm-tiny-greeter/default.nix b/pkgs/applications/display-managers/lightdm-tiny-greeter/default.nix
index c6c479505d12..1090be3c932e 100644
--- a/pkgs/applications/display-managers/lightdm-tiny-greeter/default.nix
+++ b/pkgs/applications/display-managers/lightdm-tiny-greeter/default.nix
@@ -1,5 +1,5 @@
 { lib, stdenv, linkFarm, lightdm-tiny-greeter, fetchFromGitHub
-, pkg-config, lightdm, gtk3, glib, wrapGAppsHook, config, conf ? config.lightdm-tiny-greeter.conf or "" }:
+, pkg-config, lightdm, gtk3, glib, wrapGAppsHook3, config, conf ? config.lightdm-tiny-greeter.conf or "" }:
 
 stdenv.mkDerivation rec {
   pname = "lightdm-tiny-greeter";
@@ -12,7 +12,7 @@ stdenv.mkDerivation rec {
     sha256 = "08azpj7b5qgac9bgi1xvd6qy6x2nb7iapa0v40ggr3d1fabyhrg6";
   };
 
-  nativeBuildInputs = [ pkg-config wrapGAppsHook ];
+  nativeBuildInputs = [ pkg-config wrapGAppsHook3 ];
   buildInputs = [ lightdm gtk3 glib ];
 
   postUnpack = lib.optionalString (conf != "") ''
diff --git a/pkgs/applications/display-managers/lightdm/gtk-greeter.nix b/pkgs/applications/display-managers/lightdm/gtk-greeter.nix
index 6d29d90d4b56..e3ef95bdcdc6 100644
--- a/pkgs/applications/display-managers/lightdm/gtk-greeter.nix
+++ b/pkgs/applications/display-managers/lightdm/gtk-greeter.nix
@@ -6,7 +6,7 @@
 , pkg-config
 , intltool
 , linkFarm
-, wrapGAppsHook
+, wrapGAppsHook3
 , gtk3
 , xfce4-dev-tools
 , at-spi2-core
@@ -28,7 +28,7 @@ stdenv.mkDerivation rec {
     pkg-config
     intltool
     xfce4-dev-tools
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
@@ -42,7 +42,7 @@ stdenv.mkDerivation rec {
     "--localstatedir=/var"
     "--sysconfdir=/etc"
     "--disable-indicator-services-command"
-    "--sbindir=${placeholder "out"}/bin" # for wrapGAppsHook to wrap automatically
+    "--sbindir=${placeholder "out"}/bin" # for wrapGAppsHook3 to wrap automatically
   ];
 
   preConfigure = ''
diff --git a/pkgs/applications/editors/apostrophe/default.nix b/pkgs/applications/editors/apostrophe/default.nix
deleted file mode 100644
index 501f820664f2..000000000000
--- a/pkgs/applications/editors/apostrophe/default.nix
+++ /dev/null
@@ -1,59 +0,0 @@
-{ lib, stdenv, fetchFromGitLab, meson, ninja
-, wrapGAppsHook, pkg-config, desktop-file-utils
-, appstream-glib, pythonPackages, glib, gobject-introspection
-, gtk3, webkitgtk, glib-networking, gnome, gspell, texliveMedium
-, shared-mime-info, libhandy, fira, sassc
-}:
-
-let
-  pythonEnv = pythonPackages.python.withPackages(p: with p; [
-    regex setuptools levenshtein pyenchant
-    pygobject3 pycairo pypandoc chardet
-  ]);
-
-in stdenv.mkDerivation rec {
-  pname = "apostrophe";
-  version = "2.6.3";
-
-  src = fetchFromGitLab {
-    owner  = "World";
-    repo   = pname;
-    domain = "gitlab.gnome.org";
-    rev    = "v${version}";
-    sha256 = "sha256-RBrrG1TO810LidIelYGNaK7PjDq84D0cA8VcMojAW3M=";
-  };
-
-  nativeBuildInputs = [ meson ninja pkg-config desktop-file-utils
-    appstream-glib wrapGAppsHook sassc gobject-introspection ];
-
-  buildInputs = [ glib pythonEnv gtk3
-    gnome.adwaita-icon-theme webkitgtk gspell texliveMedium
-    glib-networking libhandy ];
-
-  postPatch = ''
-    substituteInPlace data/media/css/web/base.css                                        \
-      --replace 'url("/app/share/fonts/FiraSans-Regular.ttf") format("ttf")'             \
-                'url("${fira}/share/fonts/opentype/FiraSans-Regular.otf") format("otf")' \
-      --replace 'url("/app/share/fonts/FiraMono-Regular.ttf") format("ttf")'             \
-                'url("${fira}/share/fonts/opentype/FiraMono-Regular.otf") format("otf")'
-
-    patchShebangs --build build-aux/meson_post_install.py
-  '';
-
-  preFixup = ''
-    gappsWrapperArgs+=(
-      --prefix PYTHONPATH : "$out/lib/python${pythonEnv.pythonVersion}/site-packages/"
-      --prefix PATH : "${texliveMedium}/bin"
-      --prefix XDG_DATA_DIRS : "${shared-mime-info}/share"
-    )
-  '';
-
-  meta = with lib; {
-    homepage = "https://gitlab.gnome.org/World/apostrophe";
-    description = "A distraction free Markdown editor for GNU/Linux";
-    license = licenses.gpl3;
-    platforms = platforms.linux;
-    maintainers = [ maintainers.sternenseemann ];
-    mainProgram = "apostrophe";
-  };
-}
diff --git a/pkgs/applications/editors/bluefish/default.nix b/pkgs/applications/editors/bluefish/default.nix
index afcc62a28999..41b107f0dcae 100644
--- a/pkgs/applications/editors/bluefish/default.nix
+++ b/pkgs/applications/editors/bluefish/default.nix
@@ -1,7 +1,7 @@
 { lib
 , stdenv
 , fetchurl
-, wrapGAppsHook
+, wrapGAppsHook3
 , pkg-config
 , gtk
 , libxml2
@@ -20,7 +20,7 @@ stdenv.mkDerivation rec {
     sha256 = "sha256-YUPlHGtVedWW86moXg8NhYDJ9Y+ChXWxGYgODKHZQbw=";
   };
 
-  nativeBuildInputs = [ pkg-config wrapGAppsHook ];
+  nativeBuildInputs = [ pkg-config wrapGAppsHook3 ];
   buildInputs = [
     gnome.adwaita-icon-theme
     gtk
diff --git a/pkgs/applications/editors/bluej/default.nix b/pkgs/applications/editors/bluej/default.nix
index 32dc84f33a69..0e8629a0693c 100644
--- a/pkgs/applications/editors/bluej/default.nix
+++ b/pkgs/applications/editors/bluej/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetchurl, openjdk, glib, dpkg, wrapGAppsHook }:
+{ lib, stdenv, fetchurl, openjdk, glib, dpkg, wrapGAppsHook3 }:
 
 stdenv.mkDerivation rec {
   pname = "bluej";
@@ -12,7 +12,7 @@ stdenv.mkDerivation rec {
     sha256 = "sha256-sOT86opMa9ytxJlfURIsD06HiP+j+oz3lQ0DqmLV1wE=";
   };
 
-  nativeBuildInputs = [ dpkg wrapGAppsHook ];
+  nativeBuildInputs = [ dpkg wrapGAppsHook3 ];
   buildInputs = [ glib ];
 
   dontWrapGApps = true;
diff --git a/pkgs/applications/editors/codeblocks/default.nix b/pkgs/applications/editors/codeblocks/default.nix
index 60edd1871bca..4c53fbb2a4b7 100644
--- a/pkgs/applications/editors/codeblocks/default.nix
+++ b/pkgs/applications/editors/codeblocks/default.nix
@@ -1,5 +1,5 @@
 { lib, stdenv, fetchurl, fetchpatch, pkg-config, file, zip, wxGTK32, gtk3
-, contribPlugins ? false, hunspell, gamin, boost, wrapGAppsHook
+, contribPlugins ? false, hunspell, gamin, boost, wrapGAppsHook3
 }:
 
 stdenv.mkDerivation rec {
@@ -12,7 +12,7 @@ stdenv.mkDerivation rec {
     sha256 = "1idaksw1vacmm83krxh5zlb12kad3dkz9ixh70glw1gaibib7vhm";
   };
 
-  nativeBuildInputs = [ pkg-config file zip wrapGAppsHook ];
+  nativeBuildInputs = [ pkg-config file zip wrapGAppsHook3 ];
   buildInputs = [ wxGTK32 gtk3 ]
     ++ lib.optionals contribPlugins [ hunspell gamin boost ];
   enableParallelBuilding = true;
diff --git a/pkgs/applications/editors/ed/sources.nix b/pkgs/applications/editors/ed/sources.nix
index 77e13da9eb15..de20aa1bf8a7 100644
--- a/pkgs/applications/editors/ed/sources.nix
+++ b/pkgs/applications/editors/ed/sources.nix
@@ -23,10 +23,10 @@ in
 {
   ed = let
     pname = "ed";
-    version = "1.20.1";
+    version = "1.20.2";
     src = fetchurl {
       url = "mirror://gnu/ed/ed-${version}.tar.lz";
-      hash = "sha256-saRjspehQfmHbEsfzQFHf2Rc3tkhaAkOmjXbKvS6u8o=";
+      hash = "sha256-Zf7HMY9IwsoX8zSsD0cD3v5iA3uxPMI5IN4He1+iRSM=";
     };
   in import ./generic.nix {
     inherit pname version src meta;
diff --git a/pkgs/applications/editors/emacs/elisp-packages/elpa-devel-generated.nix b/pkgs/applications/editors/emacs/elisp-packages/elpa-devel-generated.nix
index 797ecd493d21..fd0ec451ec93 100644
--- a/pkgs/applications/editors/emacs/elisp-packages/elpa-devel-generated.nix
+++ b/pkgs/applications/editors/emacs/elisp-packages/elpa-devel-generated.nix
@@ -10,7 +10,7 @@
         version = "0.10.0.0.20220911.35841";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/ace-window-0.10.0.0.20220911.35841.tar";
-          sha256 = "1q506qdi55rg2c9z3555klsqy5sxqpii11mx69l8x76a33a0j1f4";
+          sha256 = "0xfc1pw7m4vg0xvj40djm7rxqr0405pby3rgl5vyd8ci5kpmmvhs";
         };
         packageRequires = [ avy ];
         meta = {
@@ -25,7 +25,7 @@
         version = "1.11.0.20220924.84123";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/ack-1.11.0.20220924.84123.tar";
-          sha256 = "1npl618r6g25mzkibj0x4l31kqws73w9aid6ichm0ql9mi6pry5m";
+          sha256 = "0vic2izviakj6qh2l15jd8qm8yr0h0qhy4r8sx7zdngpi9i14r5v";
         };
         packageRequires = [];
         meta = {
@@ -41,10 +41,10 @@
       elpaBuild {
         pname = "activities";
         ename = "activities";
-        version = "0.8pre0.20240313.183743";
+        version = "0.8pre0.20240328.110921";
         src = fetchurl {
-          url = "https://elpa.gnu.org/devel/activities-0.8pre0.20240313.183743.tar";
-          sha256 = "1ba85ik0knxrlhw2prwsawin5r86n75qm240qkgkd05xhm7znqnw";
+          url = "https://elpa.gnu.org/devel/activities-0.8pre0.20240328.110921.tar";
+          sha256 = "0b8g9zb0x0hx0fgkrvn0lr7sxakrm931m1mrdzxrg779h8h24025";
         };
         packageRequires = [ emacs persist ];
         meta = {
@@ -65,7 +65,7 @@
         version = "8.1.0.0.20231018.91522";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/ada-mode-8.1.0.0.20231018.91522.tar";
-          sha256 = "00ywqyvqvynrskyg0wh2acl6a68f0s2r83w3cmsgxd569phlsrqp";
+          sha256 = "07kd6dj1dbds68qmi4dh4w3fc8l18jyxrfbz4lxb5v9c59hk8c46";
         };
         packageRequires = [ emacs gnat-compiler uniquify-files wisi ];
         meta = {
@@ -82,7 +82,7 @@
         version = "2020.1.0.20201129.190419";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/ada-ref-man-2020.1.0.20201129.190419.tar";
-          sha256 = "0pvlfgq4b2a4d7452b3y0ns3saq8497fq9m62pi4ylqnqwjkfy61";
+          sha256 = "0a201fn9xs3vg52vri8aw2p56rsw428hk745m6hja6q5gn6rl0zw";
         };
         packageRequires = [];
         meta = {
@@ -100,7 +100,7 @@
         version = "0.8.0.20240113.95028";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/adaptive-wrap-0.8.0.20240113.95028.tar";
-          sha256 = "1s31ql23mrcarwcp1z4068qsyqcddss8ybr23jpplp3y0faaqmc8";
+          sha256 = "0dj20mmipnik62480cm11rnvsvbc3js2ql5r321kj20g87rz9l2a";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -118,7 +118,7 @@
         version = "3.2.0.20240113.95404";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/adjust-parens-3.2.0.20240113.95404.tar";
-          sha256 = "1lnwpir9rnk7c8hhd8w88lk5bx01v757szi9p02hv0i5l3w494r1";
+          sha256 = "0l7s63dfpar2ddiydl43m6ipzc7qghv9k5hfcnj56aj6hs7ibcd2";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -136,7 +136,7 @@
         version = "0.1.0.20201220.233221";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/advice-patch-0.1.0.20201220.233221.tar";
-          sha256 = "09ivqir4b5rr1h7mc5g9czr5d9iig10zxvwjnnx12qzqaqwz2yvr";
+          sha256 = "1bca9s6cxpsyvyl0fxqa59x68rpdj44kxcaxmaa0lsy10vgib542";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -154,7 +154,7 @@
         version = "1.7.0.20220417.71805";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/aggressive-completion-1.7.0.20220417.71805.tar";
-          sha256 = "0kizmb64l0dbrgyj0wzbpdxpyr060myval62y5i88an74fvjli60";
+          sha256 = "1nmh9as4m0xjvda1f0hda8s1wk1z973wlfxcfci768y45ffnjn0g";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -172,7 +172,7 @@
         version = "1.10.0.0.20230112.100030";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/aggressive-indent-1.10.0.0.20230112.100030.tar";
-          sha256 = "0jjai48mf0j8b9dcxi9rlrpcpbz2cm2y6iqbi2f7q8012166hvgs";
+          sha256 = "0vp49nz5n82pcds2hxqz0fy5zcmvcrpfd1zgsm1cwyph7vvx7djj";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -187,7 +187,7 @@
         version = "0.0.20240117.23316";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/agitate-0.0.20240117.23316.tar";
-          sha256 = "0fa6yjakcws7rj83yyj5d8adq4jdmzp1l5ydz81yw5jyiw5zwrgi";
+          sha256 = "0md795hvmz15bb3vsji4p12g9lm8j34mj9wqq338dhn6zw91n5hi";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -205,7 +205,7 @@
         version = "1.10.0.0.20211231.115425";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/ahungry-theme-1.10.0.0.20211231.115425.tar";
-          sha256 = "0irq26pxgv31ak0wrwy1smhfazsc3nvn99ki3zq21h1d31i2xhcr";
+          sha256 = "0iddqqkv9i3d9yajhysl54av91i0gdngxqyn7vvapf1nz3pxzrvz";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -223,7 +223,7 @@
         version = "0.0.6.0.20240307.233340";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/aircon-theme-0.0.6.0.20240307.233340.tar";
-          sha256 = "1jw2w80sjglh1fq4psr5nflm20h37ldd5xjlqbmfd46ghmlanb1d";
+          sha256 = "0wlnk169zkb3l7aw8536p6dvlf7qzqdcf0jbmn92w75hy8k7jwjk";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -235,10 +235,10 @@
       elpaBuild {
         pname = "all";
         ename = "all";
-        version = "1.0.0.20240113.95556";
+        version = "1.1.0.20240405.133638";
         src = fetchurl {
-          url = "https://elpa.gnu.org/devel/all-1.0.0.20240113.95556.tar";
-          sha256 = "193hiqxh3hzrm928arcbzbrmja9qn0rs3ka8zb7fra9k2rd214dn";
+          url = "https://elpa.gnu.org/devel/all-1.1.0.20240405.133638.tar";
+          sha256 = "0cybsyr7ksgslwdfnrz8cpymk34f9gz75ahz368rhg926qlxy95j";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -253,7 +253,7 @@
         version = "1.2.0.0.20240117.23410";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/altcaps-1.2.0.0.20240117.23410.tar";
-          sha256 = "1jgl15jyz1xz8541yi3dfwc1k6rb6w469nsnpwmdvl36vnk9f0hq";
+          sha256 = "0ylsxw86h2d8b407rmai174yw4hq4jjcpviz7hq2aj0amvk7p5ml";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -268,7 +268,7 @@
         version = "0.2.0.20240220.181558";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/ampc-0.2.0.20240220.181558.tar";
-          sha256 = "0mlf9lggf41rlx6zxjj2kjdy4k11s0kjmxg6qga45r38ynd3am5d";
+          sha256 = "139gqhijy92qnprk25av550zd7165ilsnnmdx4v0v0fnwgxnya7h";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -286,7 +286,7 @@
         version = "0.977.0.20221212.221354";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/arbitools-0.977.0.20221212.221354.tar";
-          sha256 = "1fxm44g6ymvzcz784v48c4114kf23h8qylc5fnirla9bk0lhwqpj";
+          sha256 = "0s9w9hfki33bnfgm7yyhhcl0kbpn1ahd5li7nfy409zcb5spz17h";
         };
         packageRequires = [ cl-lib ];
         meta = {
@@ -303,7 +303,7 @@
         version = "1.13.0.20230911.4520";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/ascii-art-to-unicode-1.13.0.20230911.4520.tar";
-          sha256 = "119pwcfrr0x2nyd9w4gpaka408rdivs1l0zw2kk80hq9fccrgm47";
+          sha256 = "10x2svbc9qkrcckwjfsd1rlcqbvapvrb80x8m0p2awffwisr165j";
         };
         packageRequires = [];
         meta = {
@@ -318,7 +318,7 @@
         version = "0.7.0.20240303.95456";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/assess-0.7.0.20240303.95456.tar";
-          sha256 = "0k9n0j5q5l2bwbb7yql8jg9fnqvmk7mgx6dv612hpv9hdsls65h1";
+          sha256 = "0yqiqlgnhqvqc4w9s05csk2h2iwyv1m32wb121v6famfqaicgl12";
         };
         packageRequires = [ emacs m-buffer ];
         meta = {
@@ -333,7 +333,7 @@
         version = "1.9.8.0.20240323.191212";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/async-1.9.8.0.20240323.191212.tar";
-          sha256 = "0w0nqdam98ahvbbbzr3i4z7zx2xfl6h1b3aq53qn8cxwnl1mfnqx";
+          sha256 = "0ji1ai2zx8wly0b0f670v0wij57hrclr4yr6kwiq0ljaqnbm59h3";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -341,17 +341,14 @@
           license = lib.licenses.free;
         };
       }) {};
-    auctex = callPackage ({ elpaBuild
-                          , emacs
-                          , fetchurl
-                          , lib }:
+    auctex = callPackage ({ elpaBuild, emacs, fetchurl, lib }:
       elpaBuild {
         pname = "auctex";
         ename = "auctex";
-        version = "14.0.4.0.20240317.113904";
+        version = "14.0.4.0.20240427.91120";
         src = fetchurl {
-          url = "https://elpa.gnu.org/devel/auctex-14.0.4.0.20240317.113904.tar";
-          sha256 = "1iwzym6ygq0wzb96qgbv7530fv3cxykjilbxzxb3la3xhqb93qhs";
+          url = "https://elpa.gnu.org/devel/auctex-14.0.4.0.20240427.91120.tar";
+          sha256 = "1qp2vgmna7fi66qdi4flgvl0l4cpz516klkx2rcd6wixvhyc53rx";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -366,7 +363,7 @@
         version = "7.0.20221221.74552";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/aumix-mode-7.0.20221221.74552.tar";
-          sha256 = "0ksihp1qa9n1290qpf7ahxxpbp4q9pwbpvk6ybgjcjdb4pjgfyms";
+          sha256 = "0c3yhk8ir4adv3wy80iywbvl1sm86xssg0j0q4rym50pr4vqx60n";
         };
         packageRequires = [];
         meta = {
@@ -383,7 +380,7 @@
         version = "1.1.4.0.20221221.74656";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/auto-correct-1.1.4.0.20221221.74656.tar";
-          sha256 = "0w9q0ibghmafbwla8wxnfki1fidb476cvsx37v3bs4pvq2kkcphk";
+          sha256 = "10h6b5px4krcwjwhc475al9kcizijsz773zkcijrfi83283l35nc";
         };
         packageRequires = [];
         meta = {
@@ -400,7 +397,7 @@
         version = "0.1.2.0.20230407.82136";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/auto-header-0.1.2.0.20230407.82136.tar";
-          sha256 = "1h455ikypf1sd082r7i59yldm4p794a3w1ya7qfzcwvfhygdzdgz";
+          sha256 = "1dm5nqcvbya9fyj45q6k8ni507prs3ij2q5rhdl9m8vwkq6gf72w";
         };
         packageRequires = [];
         meta = {
@@ -418,7 +415,7 @@
         version = "0.10.10.0.20201215.220815";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/auto-overlays-0.10.10.0.20201215.220815.tar";
-          sha256 = "18lq41am7psh7kbf7yxk5qqhiddjzjqkb1pv0zn0vbps7pka68qh";
+          sha256 = "1gmsli1bil210867x642x4zvhqradl3d4pk4n5ky5g6xp1h36c7w";
         };
         packageRequires = [ cl-lib ];
         meta = {
@@ -433,10 +430,10 @@
       elpaBuild {
         pname = "autocrypt";
         ename = "autocrypt";
-        version = "0.4.1.0.20230505.70117";
+        version = "0.4.2.0.20240410.70023";
         src = fetchurl {
-          url = "https://elpa.gnu.org/devel/autocrypt-0.4.1.0.20230505.70117.tar";
-          sha256 = "1g83wm21a56w056bj97ciqalw464ra3bfhp1m66jiw7v06ppgi56";
+          url = "https://elpa.gnu.org/devel/autocrypt-0.4.2.0.20240410.70023.tar";
+          sha256 = "13g6422lcv8bjwcfrkxmw7fi5by1liz2ni6zxf10pr3qcpv6046n";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -451,7 +448,7 @@
         version = "0.5.0.0.20230424.65712";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/avy-0.5.0.0.20230424.65712.tar";
-          sha256 = "08kbfjwjbkbgbkkc51nmcbs9qq1hw8gv1z8h1knry8clvh23k735";
+          sha256 = "1z7d59fif97j12jx9vmk2p91sr01d53gp57gjvqdcdr2lqvdsaz8";
         };
         packageRequires = [ cl-lib emacs ];
         meta = {
@@ -466,7 +463,7 @@
         version = "3.2.2.4.0.20231023.5901";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/bbdb-3.2.2.4.0.20231023.5901.tar";
-          sha256 = "1hvhrbnnhc5hy4szkhsl5fvqlm13kzn5cx4l5sm5pr75xnmcvm08";
+          sha256 = "16m5irp1y9crv13l2qncafys4fscwq2d28ig8hnx4g5bag9bi7j4";
         };
         packageRequires = [ cl-lib emacs ];
         meta = {
@@ -481,7 +478,7 @@
         version = "1.3.4.0.20220729.220057";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/beacon-1.3.4.0.20220729.220057.tar";
-          sha256 = "0wcc9hw6h1b3p1s506mc7zgjhhcb1bc4wq1bplax62lg2jyxiaks";
+          sha256 = "1dpd3j2aip3zi3ivbszsgrifw43bryx01df868hmrxm1s0vvjhh6";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -496,7 +493,7 @@
         version = "1.0.1.0.20240224.51508";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/beframe-1.0.1.0.20240224.51508.tar";
-          sha256 = "1i22lbwck2q80byxd6bd6cba9jj3iqzsj129rb81a221wp91sarj";
+          sha256 = "105axrl2m6x5gc523ai9lna89jf44n2na337brxqn1jflnnpdh43";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -513,7 +510,7 @@
         version = "0.1.3.0.20240218.140135";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/bicep-ts-mode-0.1.3.0.20240218.140135.tar";
-          sha256 = "0c6xg1dpz60akcr847x6ydl7riwy9bchww31l14wr1s54zrf76sg";
+          sha256 = "1qa1ws7hvn7ni8qnrzhmwnf8hq2wb3dc36i49vdiv0rf68kci210";
         };
         packageRequires = [];
         meta = {
@@ -531,7 +528,7 @@
         version = "2.4.1.0.20240321.194020";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/bind-key-2.4.1.0.20240321.194020.tar";
-          sha256 = "0fjx32brckrmbvcyps45akzhimw93rzi7hy7f8nx0j72nkncavpp";
+          sha256 = "02v2pc830b9vp0rmdxwcxjj36y5x2p8sy381h3c8hsi61pwyqy93";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -546,7 +543,7 @@
         version = "0.3.0.20231213.61103";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/blist-0.3.0.20231213.61103.tar";
-          sha256 = "06h1k2i43pxpa2c394aqznrhf2pj8c7pgjcgs56iz2faar6zri38";
+          sha256 = "01pqf794syngh6v4bym3qzg2rh2gp3z9h6hvpw74nadimfg5pz61";
         };
         packageRequires = [ emacs ilist ];
         meta = {
@@ -565,7 +562,7 @@
         version = "0.3.1.0.20230119.122638";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/bluetooth-0.3.1.0.20230119.122638.tar";
-          sha256 = "1wzv7wlpimqiagli02s87i75lj2xb33jld5w9xqnfnks2xvh7srl";
+          sha256 = "1s5vfprs06xf400p01qiwxbcy0y05pbgmp731c8z3zyk5ai4s88g";
         };
         packageRequires = [ dash emacs ];
         meta = {
@@ -584,7 +581,7 @@
         version = "0.4.5.0.20221205.150230";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/bnf-mode-0.4.5.0.20221205.150230.tar";
-          sha256 = "0rlg12z0dxy190c15p09inpnms374xxr5zv3h4gn9ilbb5g5r7d4";
+          sha256 = "0ljzk39ck12hyshm32vbwjx1a87dw7v9v3wmf01cyc7k2i5d8rip";
         };
         packageRequires = [ cl-lib emacs ];
         meta = {
@@ -596,10 +593,10 @@
       elpaBuild {
         pname = "boxy";
         ename = "boxy";
-        version = "1.1.3.0.20231024.113314";
+        version = "1.1.4.0.20240326.215209";
         src = fetchurl {
-          url = "https://elpa.gnu.org/devel/boxy-1.1.3.0.20231024.113314.tar";
-          sha256 = "1b5dkjic7spzbkj78m03z00gh8a9f8yv1kkyhnr4gks81jdr1gsn";
+          url = "https://elpa.gnu.org/devel/boxy-1.1.4.0.20240326.215209.tar";
+          sha256 = "077q9xxrsd98r4h9xj4djgiwfw34bjx3w0mhnbip2p57xknjjr46";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -616,10 +613,10 @@
       elpaBuild {
         pname = "boxy-headings";
         ename = "boxy-headings";
-        version = "2.1.4.0.20231024.114002";
+        version = "2.1.5.0.20240326.215829";
         src = fetchurl {
-          url = "https://elpa.gnu.org/devel/boxy-headings-2.1.4.0.20231024.114002.tar";
-          sha256 = "1fan3pdslmwxkdc8lj7svcjllzjqhnhsma1yjpfhi99dv4b8fyns";
+          url = "https://elpa.gnu.org/devel/boxy-headings-2.1.5.0.20240326.215829.tar";
+          sha256 = "0zh5g1k2nql8jyg9ws0spsbhzwfa28f6qxs9krihp5qgz8kihn2p";
         };
         packageRequires = [ boxy emacs org ];
         meta = {
@@ -638,7 +635,7 @@
         version = "1.0.1.0.20231126.221621";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/breadcrumb-1.0.1.0.20231126.221621.tar";
-          sha256 = "0z111vmwdc3lvbnbim8233ck3vm6haq2zx9pjaiimipv36jxkzf3";
+          sha256 = "11qx345ggpm78dcvlrnji50b50wh3cv3i0ihxwxsw55n86kv9x0k";
         };
         packageRequires = [ emacs project ];
         meta = {
@@ -650,10 +647,10 @@
       elpaBuild {
         pname = "brief";
         ename = "brief";
-        version = "5.90.0.20240321.65101";
+        version = "5.91.0.20240401.34715";
         src = fetchurl {
-          url = "https://elpa.gnu.org/devel/brief-5.90.0.20240321.65101.tar";
-          sha256 = "1z4nww74gaxjjjfg4i9qdk6lwfjnbsc41jq95k0pcj12ilwilg54";
+          url = "https://elpa.gnu.org/devel/brief-5.91.0.20240401.34715.tar";
+          sha256 = "1knpamvbpz92b9zql6p0l7g1p5595l6kns0gw1vfhm7cl37dngyr";
         };
         packageRequires = [ cl-lib nadvice ];
         meta = {
@@ -672,7 +669,7 @@
         version = "0.6.0.20240323.72724";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/buffer-env-0.6.0.20240323.72724.tar";
-          sha256 = "1bdch2ah5c0ikzl2zyfv7hkpbhvkvcdd4ljkzd5zmnwj11fk7ml2";
+          sha256 = "061cbq2pb5wg3jap3l9lbm1axb700aqar9s8vx2zys0hl65klw51";
         };
         packageRequires = [ compat emacs ];
         meta = {
@@ -691,7 +688,7 @@
         version = "0.4.3.0.20190429.135558";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/buffer-expose-0.4.3.0.20190429.135558.tar";
-          sha256 = "0s11p8dlycv14j94599d33bkp3hhpvjq5a3jrmx9rynamhzvfig9";
+          sha256 = "0f3a064i4a1ylb1ibqmz302h24kymir3zj1d225b7v6r89nam216";
         };
         packageRequires = [ cl-lib emacs ];
         meta = {
@@ -706,7 +703,7 @@
         version = "0.6.0.20240105.200601";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/bufferlo-0.6.0.20240105.200601.tar";
-          sha256 = "1m0740ljllwyyfmjl1jlxrfgj4ndq7zh9lbyi4j2c40xliikgs09";
+          sha256 = "02iqarvq8b2siivbv878f2yzkm5law15idnbi5wv72v5pc2hxrjk";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -725,7 +722,7 @@
         version = "1.3.1.0.20201128.92354";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/bug-hunter-1.3.1.0.20201128.92354.tar";
-          sha256 = "0gis7vrjrh0khjl71mb5vsbfhcwph0yv5c11wmwa3jc4n1wgxiq9";
+          sha256 = "1bskf9csg49n4cisl57wv0sa74s6v3wffdxw80m3r2yr0kx01cfs";
         };
         packageRequires = [ cl-lib seq ];
         meta = {
@@ -743,7 +740,7 @@
         version = "0.0.1.0.20230726.134747";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/buildbot-0.0.1.0.20230726.134747.tar";
-          sha256 = "1knkx80fcmxhi8y3ns3vb4zrg8s6la81gr3rbs1v3fss4h1snka1";
+          sha256 = "1z27pfx3h1fad9wiazrkqgfdc1h06g2rlb3cq1zk83hilg64nnjd";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -758,7 +755,7 @@
         version = "1.4.1.0.20240208.85735";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/calibre-1.4.1.0.20240208.85735.tar";
-          sha256 = "0b69ymkcahx6bh9ss8zygwfwiffsql370i9pwriv9ypy17nbjxlc";
+          sha256 = "1rbmck8bc28c2rf321606w748nqc5klly6yrm3r8zyviggwd1v2c";
         };
         packageRequires = [ compat emacs ];
         meta = {
@@ -770,10 +767,10 @@
       elpaBuild {
         pname = "cape";
         ename = "cape";
-        version = "1.4.0.20240315.54216";
+        version = "1.5.0.20240411.220758";
         src = fetchurl {
-          url = "https://elpa.gnu.org/devel/cape-1.4.0.20240315.54216.tar";
-          sha256 = "0pqr36i8ijq32kf0qxb0hdm0gffakya12jjj4dy0hwan13scq77d";
+          url = "https://elpa.gnu.org/devel/cape-1.5.0.20240411.220758.tar";
+          sha256 = "0mbw0azs2a33ywq1iqqvm2r5pyhpl1qfjkzmqv473n7qm658gkfg";
         };
         packageRequires = [ compat emacs ];
         meta = {
@@ -791,7 +788,7 @@
         version = "0.3.0.20211123.104430";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/capf-autosuggest-0.3.0.20211123.104430.tar";
-          sha256 = "17ih1lbsiydazwdn8caqnw8fm31yfyq8aqmcyv85y1w8zlnb6x4j";
+          sha256 = "0f16csl2ky8kys3wcv41zqh1l9976gc009pjy21kp6ck0pm0m3kg";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -806,7 +803,7 @@
         version = "1.0.0.20221221.74713";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/caps-lock-1.0.0.20221221.74713.tar";
-          sha256 = "1wylgdwfm9pf0fpj53fprn7dknv3ldkf74xibgndh5i8xn11d036";
+          sha256 = "0f8n79yw9zs1cpa8nhqmvw95kj762lv8rzrkj30ybvj1612vl1z9";
         };
         packageRequires = [];
         meta = {
@@ -821,7 +818,7 @@
         version = "1.0.3.0.20221221.74732";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/captain-1.0.3.0.20221221.74732.tar";
-          sha256 = "03zgffj8lbh4y6gg8dr40kxcm8pnllzfy3jbsapmw98ps9qnahi7";
+          sha256 = "0ay26xzbhrxgvslrwcc504k5s0kxk0c8rnps656xz1wl38fbvm5b";
         };
         packageRequires = [];
         meta = {
@@ -836,7 +833,7 @@
         version = "2.0.5.0.20220926.150547";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/chess-2.0.5.0.20220926.150547.tar";
-          sha256 = "0wdyq7a142r57f9qa77gcvdld9mlh3nqjm0jyz8z7xwjz1km395b";
+          sha256 = "16md052m600mmy43fgpcpwl4jz5q67v9w2h3y234ild6sp1qanlj";
         };
         packageRequires = [ cl-lib ];
         meta = {
@@ -853,7 +850,7 @@
         version = "0.3.0.20221221.74800";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/cl-generic-0.3.0.20221221.74800.tar";
-          sha256 = "12yqi7fc59rblh4asf94a4fj8qj873qs20bgjydp2djkrh4xas62";
+          sha256 = "1yhjgcc3rnhi0kf2mgm7yii1pa9hzz0dnfkg393p456rl07q7vqq";
         };
         packageRequires = [];
         meta = {
@@ -868,7 +865,7 @@
         version = "0.7.1.0.20221221.74809";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/cl-lib-0.7.1.0.20221221.74809.tar";
-          sha256 = "18wfqbdibz62bisphcw91rpd3jacs7i24lib7l3wg9pf2563p98i";
+          sha256 = "1xig9cma7p5bplnqnxmwh1axxlf813ar69bzyvks09yhg04jikm1";
         };
         packageRequires = [];
         meta = {
@@ -886,7 +883,7 @@
         version = "0.3.0.20190215.154741";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/clipboard-collector-0.3.0.20190215.154741.tar";
-          sha256 = "1hjvwqi089r3wrs5771i1sjgmk63gk9m9a88gxnk99vzvh6r31dq";
+          sha256 = "03y1wivagbsl4f2qgmxcy43pbpvpxhd1d57ihpdvsl2illb6bwlq";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -904,7 +901,7 @@
         version = "1.1.0.20221221.74904";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/cobol-mode-1.1.0.20221221.74904.tar";
-          sha256 = "1c3axx65bycr44hjy1cw4c9z89l3sqq16d2yk2animms3iwajvl0";
+          sha256 = "0268d848pj3vszspmbcz9923945pzz4kzcd0jcrl7k3dasg3mpka";
         };
         packageRequires = [ cl-lib ];
         meta = {
@@ -922,7 +919,7 @@
         version = "0.4.0.20231119.213845";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/code-cells-0.4.0.20231119.213845.tar";
-          sha256 = "0wrsp2xrvfp8f20gjw4r6434i4f822hz794mhnz44sn2ggs2mrn2";
+          sha256 = "1i66d234fb9g4aqnpzjz9dn6hs37bq5l1vrk076hib1rb1vm36ir";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -937,10 +934,10 @@
       elpaBuild {
         pname = "comint-mime";
         ename = "comint-mime";
-        version = "0.4.0.20240302.74422";
+        version = "0.4.0.20240426.193136";
         src = fetchurl {
-          url = "https://elpa.gnu.org/devel/comint-mime-0.4.0.20240302.74422.tar";
-          sha256 = "0zgna6h5v2mgmlkxyxla0faf3xrs13mv62xayyf3ddrhjgk82ggb";
+          url = "https://elpa.gnu.org/devel/comint-mime-0.4.0.20240426.193136.tar";
+          sha256 = "1znk6anr6yxb9jfh3z7702msl011k54z37vbixbdk2bvd7hihcx3";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -957,7 +954,7 @@
         version = "0.2.0.20220305.183958";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/compact-docstrings-0.2.0.20220305.183958.tar";
-          sha256 = "0xmhvfrla7la127hkj0jpam0laq495q4gfa3kbw4p3p3m070jxks";
+          sha256 = "024l45bxxkh6x7rd8qcmykxdhdj0yckcf7vzacl7ynzwm9ah7sry";
         };
         packageRequires = [];
         meta = {
@@ -975,7 +972,7 @@
         version = "0.10.2.0.20240311.194338";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/company-0.10.2.0.20240311.194338.tar";
-          sha256 = "159g5aii6bw006hkb49f653zc3lnnxnimg2xmyvwl0rgyk7imfl1";
+          sha256 = "1bmf7xa7pwfmwqrdz3sjnbbaqr472n6f2n8mz5qrzc4y09xl8i0r";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -994,7 +991,7 @@
         version = "1.1.0.20221221.74915";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/company-ebdb-1.1.0.20221221.74915.tar";
-          sha256 = "1nh7jwlwd8wji5s3ywzlwj7vyqjn6jllrywi6mjk9bwyg5yhyd8a";
+          sha256 = "1qidrgcm2hdkrbh75rjfzxbmbyvxvyfy4m2kd6lgcx0v494lzvqw";
         };
         packageRequires = [ company ebdb ];
         meta = {
@@ -1013,7 +1010,7 @@
         version = "1.5.1.0.20221227.132907";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/company-math-1.5.1.0.20221227.132907.tar";
-          sha256 = "10jm0vb9z3pkh681vdd2ggi6pvhykghmalgib20pgcnm383kwpcn";
+          sha256 = "070kfw13aw1hfvkdxb83zic44301nawnl57saqwrg6lh0psxpyxv";
         };
         packageRequires = [ company math-symbol-lists ];
         meta = {
@@ -1032,7 +1029,7 @@
         version = "0.2.3.0.20170210.193350";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/company-statistics-0.2.3.0.20170210.193350.tar";
-          sha256 = "140281sy7w5pj3dkidlgi130axrzwh0y8z3ivkpk55bypdaardlw";
+          sha256 = "0fwvaadfr5jlx3021kfjbij9692c2v3l600v2rwqijc563phdfg3";
         };
         packageRequires = [ company emacs ];
         meta = {
@@ -1048,10 +1045,10 @@
       elpaBuild {
         pname = "compat";
         ename = "compat";
-        version = "29.1.4.5.0.20240316.105418";
+        version = "29.1.4.5.0.20240401.110429";
         src = fetchurl {
-          url = "https://elpa.gnu.org/devel/compat-29.1.4.5.0.20240316.105418.tar";
-          sha256 = "1f0rhf0p2szvqq1ixv7fxn726h3mnc0iqlyal1qzrf46vdsjkf87";
+          url = "https://elpa.gnu.org/devel/compat-29.1.4.5.0.20240401.110429.tar";
+          sha256 = "1mbkvl2fcdcnc8jriwn61z0aim0llg7rgb9rh12rq8djrinw1r5d";
         };
         packageRequires = [ emacs seq ];
         meta = {
@@ -1063,10 +1060,10 @@
       elpaBuild {
         pname = "consult";
         ename = "consult";
-        version = "1.4.0.20240324.100717";
+        version = "1.5.0.20240420.92954";
         src = fetchurl {
-          url = "https://elpa.gnu.org/devel/consult-1.4.0.20240324.100717.tar";
-          sha256 = "1dngyxxviml9a4gqr85ah38pb4028wx2cvm8g9h4jp02g4cr7rkc";
+          url = "https://elpa.gnu.org/devel/consult-1.5.0.20240420.92954.tar";
+          sha256 = "1cg72m5aqvh7apdv3j4fhm232168vi0iddx3n9w42jwmhsxxq7fr";
         };
         packageRequires = [ compat emacs ];
         meta = {
@@ -1082,10 +1079,10 @@
       elpaBuild {
         pname = "consult-hoogle";
         ename = "consult-hoogle";
-        version = "0.2.0.0.20240309.142502";
+        version = "0.2.1.0.20240427.131842";
         src = fetchurl {
-          url = "https://elpa.gnu.org/devel/consult-hoogle-0.2.0.0.20240309.142502.tar";
-          sha256 = "0igkhv7hg4bd6h27j16w2in6d542818ich94fhif4g36xh0jhdw7";
+          url = "https://elpa.gnu.org/devel/consult-hoogle-0.2.1.0.20240427.131842.tar";
+          sha256 = "05rx4kw9w51cbgx8nm1jbi2yv7p70w1yv9np8gmpj7z65gbw7v0m";
         };
         packageRequires = [ emacs haskell-mode ];
         meta = {
@@ -1104,7 +1101,7 @@
         version = "0.8.1.0.20231211.122134";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/consult-recoll-0.8.1.0.20231211.122134.tar";
-          sha256 = "1agx2pv6zp61wr0hbywlr1mqhgrrlkxr48pnbia3iah82s81hqxp";
+          sha256 = "1hpgcqbnvqcd6vzhxqi4axihjyp764hvbggk1skviys2apywk4s1";
         };
         packageRequires = [ consult emacs ];
         meta = {
@@ -1119,10 +1116,10 @@
       elpaBuild {
         pname = "context-coloring";
         ename = "context-coloring";
-        version = "8.1.0.0.20201127.182211";
+        version = "8.1.0.0.20240331.133753";
         src = fetchurl {
-          url = "https://elpa.gnu.org/devel/context-coloring-8.1.0.0.20201127.182211.tar";
-          sha256 = "0mbj7awrnifn3jb0i9s25535h41pk45fz6n0m5p5nq3jjyhj6z62";
+          url = "https://elpa.gnu.org/devel/context-coloring-8.1.0.0.20240331.133753.tar";
+          sha256 = "1m8c7vccdb868n777rqi8mhjwfbm25q7hbx7x6y145mxmnqr1vgn";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -1134,10 +1131,10 @@
       elpaBuild {
         pname = "corfu";
         ename = "corfu";
-        version = "1.2.0.20240320.91948";
+        version = "1.3.0.20240413.92757";
         src = fetchurl {
-          url = "https://elpa.gnu.org/devel/corfu-1.2.0.20240320.91948.tar";
-          sha256 = "1gpqqh7f0ywn3mg31psdl7nanl3zqf3bddxz0hs018yp9dhr4d9v";
+          url = "https://elpa.gnu.org/devel/corfu-1.3.0.20240413.92757.tar";
+          sha256 = "0qf5nvg70sb313mv1m1mycipf182lz8c0y2rsacniqzykvqhbv74";
         };
         packageRequires = [ compat emacs ];
         meta = {
@@ -1152,7 +1149,7 @@
         version = "1.6.0.20221015.160420";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/coterm-1.6.0.20221015.160420.tar";
-          sha256 = "0n5694klkdki9q363mknr4qwvr6q28lb6ss27v3pw0mzh91gavzp";
+          sha256 = "1633q3vrqhjfv4ipirirgkpmal5j1rfh6jxkq3sm3qwlg8lgak4s";
         };
         packageRequires = [ compat emacs ];
         meta = {
@@ -1169,10 +1166,10 @@
       elpaBuild {
         pname = "counsel";
         ename = "counsel";
-        version = "0.14.2.0.20240229.151718";
+        version = "0.14.2.0.20240413.191055";
         src = fetchurl {
-          url = "https://elpa.gnu.org/devel/counsel-0.14.2.0.20240229.151718.tar";
-          sha256 = "0wq8by3bc15cry533ybawzpb6qypnzvq79kpd9h0wrkd1yfbdazz";
+          url = "https://elpa.gnu.org/devel/counsel-0.14.2.0.20240413.191055.tar";
+          sha256 = "14iphwfpmbmg44f1gx54y3ks920z3p86mfvg99h86yy817wb73pl";
         };
         packageRequires = [ emacs ivy swiper ];
         meta = {
@@ -1190,7 +1187,7 @@
         version = "0.17.0.20211211.193556";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/cpio-mode-0.17.0.20211211.193556.tar";
-          sha256 = "064yc4hs6ci80a231mlv3688ys9p8z5aabfg2s2ya1kkmpwra4f2";
+          sha256 = "0z9dkdz1s1b7gfd0fgfxjdvbjlwwqwa6q4jjf8kkvvkgwwvqv3yq";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -1207,7 +1204,7 @@
         version = "1.0.5.0.20230704.131557";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/cpupower-1.0.5.0.20230704.131557.tar";
-          sha256 = "03c5lbm9vmgx5m5pmi4a12npmf1v6g7kiryfxx6j2zy1ix9nk4jl";
+          sha256 = "1xls5wjxrx2a193piav0yp0sv1m7jv5zqk46hbxxhfakl3jg5zlq";
         };
         packageRequires = [];
         meta = {
@@ -1222,7 +1219,7 @@
         version = "0.3.5.0.20230213.22302";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/crdt-0.3.5.0.20230213.22302.tar";
-          sha256 = "1hpkxpr88g4lpq7kxb15xhm3gpks5rz4vfdkkrkflh1wm3bpf4ah";
+          sha256 = "0cl97di7s5a1v6widil63pwzywxpcxmhvhp34kqn256czsliv4pw";
         };
         packageRequires = [];
         meta = {
@@ -1237,7 +1234,7 @@
         version = "1.3.6.0.20221221.74923";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/crisp-1.3.6.0.20221221.74923.tar";
-          sha256 = "1jjl6hv0qib5519p5xigbiydz2f2h0fy773abnga7lvzx57rgppi";
+          sha256 = "0kpw81h9n8qwrvmqan9bwj32d4vgsrmma4f0rig04bdx0mxmdzir";
         };
         packageRequires = [];
         meta = {
@@ -1255,7 +1252,7 @@
         version = "2.0.0.0.20221205.181941";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/csharp-mode-2.0.0.0.20221205.181941.tar";
-          sha256 = "0fl1v45apz448pqnz0psi6w4inakdxv54wydc99sjq8l3lm8ldrm";
+          sha256 = "1cmc6b7pwjalzipc2clis2si7d03r0glpgxj7qpvfdp26y1cjabv";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -1274,7 +1271,7 @@
         version = "1.23.0.20240114.203711";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/csv-mode-1.23.0.20240114.203711.tar";
-          sha256 = "0y6zbqdh5gxhfbh2hfxx9k73h5aaknc041jr84s9ims67iavb17b";
+          sha256 = "0r36dycnc76a5l94ad6p7lkx0f9ma6qmjvnivimgq6man5lw6lxh";
         };
         packageRequires = [ cl-lib emacs ];
         meta = {
@@ -1286,10 +1283,10 @@
       elpaBuild {
         pname = "cursory";
         ename = "cursory";
-        version = "1.0.1.0.20240117.23936";
+        version = "1.0.1.0.20240425.35714";
         src = fetchurl {
-          url = "https://elpa.gnu.org/devel/cursory-1.0.1.0.20240117.23936.tar";
-          sha256 = "0izi2gz5pgxjgw7jcpgcy9q0gf0pvcvsszhjq9mg157w8sbkfx06";
+          url = "https://elpa.gnu.org/devel/cursory-1.0.1.0.20240425.35714.tar";
+          sha256 = "0bm381nbrnh4j0pq1a53whsbs0mjvznr9mp0ymhxw8w935cvbl72";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -1306,7 +1303,7 @@
         version = "0.1.0.20221221.75021";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/cycle-quotes-0.1.0.20221221.75021.tar";
-          sha256 = "07gp0bbwajm44n24wywj7la1jdy9hrid6j9cj0cxhv3gdg3681z2";
+          sha256 = "0igwwbhf1b6c67znik3zphdngddkgai146qcjlkgg1ihr4ajc3pc";
         };
         packageRequires = [];
         meta = {
@@ -1318,10 +1315,10 @@
       elpaBuild {
         pname = "dape";
         ename = "dape";
-        version = "0.9.0.0.20240318.94928";
+        version = "0.10.0.0.20240427.142238";
         src = fetchurl {
-          url = "https://elpa.gnu.org/devel/dape-0.9.0.0.20240318.94928.tar";
-          sha256 = "0f190gkicqqj02irhgcwcjjalh4srbcd9y80src888wp775vwy1x";
+          url = "https://elpa.gnu.org/devel/dape-0.10.0.0.20240427.142238.tar";
+          sha256 = "0d2mn565l5ag023z1yqg5nj0fj0iraf5yifh54pyl6cnz7ipmcj3";
         };
         packageRequires = [ emacs jsonrpc ];
         meta = {
@@ -1336,7 +1333,7 @@
         version = "0.3.0.20200507.173652";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/darkroom-0.3.0.20200507.173652.tar";
-          sha256 = "1njijhakvxqh6ik3krrz3zz97asfxmaxs7dz3wsnkmmcy9x0bbjb";
+          sha256 = "1j57wa2jhpjs6ynda73s0vv4dzyr9jg0lifv7nc8bv79lr4sjab2";
         };
         packageRequires = [ cl-lib ];
         meta = {
@@ -1348,10 +1345,10 @@
       elpaBuild {
         pname = "dash";
         ename = "dash";
-        version = "2.19.1.0.20240216.133446";
+        version = "2.19.1.0.20240405.94636";
         src = fetchurl {
-          url = "https://elpa.gnu.org/devel/dash-2.19.1.0.20240216.133446.tar";
-          sha256 = "0wjx6lxj5svvhifnqffmxqf1li57606v0hv1ixs90275r56294gh";
+          url = "https://elpa.gnu.org/devel/dash-2.19.1.0.20240405.94636.tar";
+          sha256 = "0s1wqxjv1xdhd251zpk52wlglcc5apbhdhld30vmb7c9bq9288xw";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -1369,7 +1366,7 @@
         version = "0.1.0.20220306.62546";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/dbus-codegen-0.1.0.20220306.62546.tar";
-          sha256 = "0s2ax0vqbh69dan5vdgy2dc2qfsfbxk4cqnxwysbhhpc7qqd7ljq";
+          sha256 = "1jg8ibxy79g93b3hl97bpgz90ny5q936k8bjcmxix7hn82wg7a9l";
         };
         packageRequires = [ cl-lib ];
         meta = {
@@ -1384,7 +1381,7 @@
         version = "0.40.0.20240318.175047";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/debbugs-0.40.0.20240318.175047.tar";
-          sha256 = "1vkap2h2041hib1rw3n91z9hs6vfphkgi84257x7b8yj1f0dr2xn";
+          sha256 = "02kb6klsixyxn4a65mgr9m8n1cx68n7zqyym8m14381k0mi8pq0h";
         };
         packageRequires = [ emacs soap-client ];
         meta = {
@@ -1399,7 +1396,7 @@
         version = "1.7.0.20200711.42851";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/delight-1.7.0.20200711.42851.tar";
-          sha256 = "1s22gr05yqirb4dddafw96kq4ifccncypvr09rxmhdf7iv4096dm";
+          sha256 = "1v8yhii0s1rs1c2i7gs2rd98224qhpkybvrks8w5ghq4p3nxrrvw";
         };
         packageRequires = [ cl-lib nadvice ];
         meta = {
@@ -1411,10 +1408,10 @@
       elpaBuild {
         pname = "denote";
         ename = "denote";
-        version = "2.3.0.0.20240324.175148";
+        version = "2.3.5.0.20240427.91057";
         src = fetchurl {
-          url = "https://elpa.gnu.org/devel/denote-2.3.0.0.20240324.175148.tar";
-          sha256 = "00bd7470a01dd92nzcw9g7zpff3sy3vzxy13ig6a7gk9i5a8c7zg";
+          url = "https://elpa.gnu.org/devel/denote-2.3.5.0.20240427.91057.tar";
+          sha256 = "0xa0jxd6fbd2ayhaaxn1rnimi35pipgidx9l6v19swal0yk08kf4";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -1433,7 +1430,7 @@
         version = "1.2.0.0.20230927.131718";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/denote-menu-1.2.0.0.20230927.131718.tar";
-          sha256 = "1hm13sg6sif4620c78vma9qdgkpak0v1k3hfc35c946vzv8399x8";
+          sha256 = "0pq8k2aif60y22sjxs6d4vlf43fqlizs1zlk3wrd1k52sn2dkgxp";
         };
         packageRequires = [ denote emacs ];
         meta = {
@@ -1451,7 +1448,7 @@
         version = "0.10.1.0.20221129.143049";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/detached-0.10.1.0.20221129.143049.tar";
-          sha256 = "0b6b3q5z983744s5k9k771d0hnnbnrx249cqw4nkgplb2zay9zii";
+          sha256 = "0fidhqf1m599v939hv3xsqbkckgk2fm550i7lkh0p961a3v542i8";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -1463,10 +1460,10 @@
       elpaBuild {
         pname = "devdocs";
         ename = "devdocs";
-        version = "0.6.0.20240323.82337";
+        version = "0.6.1.0.20240329.73808";
         src = fetchurl {
-          url = "https://elpa.gnu.org/devel/devdocs-0.6.0.20240323.82337.tar";
-          sha256 = "1pdjf4j6wcpz98i50fx11sndqycpalwxips45lgsnjglyc8sa1lr";
+          url = "https://elpa.gnu.org/devel/devdocs-0.6.1.0.20240329.73808.tar";
+          sha256 = "1q4n5r5ki8f7qksr18w273l7qw8c38snn6d842kxwp9zg2417i8x";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -1484,7 +1481,7 @@
         version = "0.3.0.20240117.132538";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/devicetree-ts-mode-0.3.0.20240117.132538.tar";
-          sha256 = "0zn2fb2lbfizfas5silkahbmrcf508x10746amw79a7mfwap2x90";
+          sha256 = "12jfiv7j0k5sqjbz28nd5x34hpxp76lyl41fl7bvsgiyb06i0gnf";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -1505,7 +1502,7 @@
         version = "0.17.0.20231015.24654";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/dict-tree-0.17.0.20231015.24654.tar";
-          sha256 = "0snnya38i4pl583578rqykr7rj63qlfj6hygxivfpjaw187nqw27";
+          sha256 = "0nij9pkscr6mdjmrq9dlqnks91sd21pn01bsgn4zk918zygnkggj";
         };
         packageRequires = [ emacs heap tNFA trie ];
         meta = {
@@ -1513,14 +1510,18 @@
           license = lib.licenses.free;
         };
       }) {};
-    diff-hl = callPackage ({ cl-lib ? null, elpaBuild, emacs, fetchurl, lib }:
+    diff-hl = callPackage ({ cl-lib ? null
+                           , elpaBuild
+                           , emacs
+                           , fetchurl
+                           , lib }:
       elpaBuild {
         pname = "diff-hl";
         ename = "diff-hl";
-        version = "1.9.2.0.20240225.11635";
+        version = "1.9.2.0.20240401.235744";
         src = fetchurl {
-          url = "https://elpa.gnu.org/devel/diff-hl-1.9.2.0.20240225.11635.tar";
-          sha256 = "0g32092z52xmmch8aya1wz9xds93agv4509nvf4zzygg9pr40x0w";
+          url = "https://elpa.gnu.org/devel/diff-hl-1.9.2.0.20240401.235744.tar";
+          sha256 = "1ilmi9a5g2h3xw49kiavr6pwp091i6j3qd7yxyixvw15ygvc6mi8";
         };
         packageRequires = [ cl-lib emacs ];
         meta = {
@@ -1535,7 +1536,7 @@
         version = "1.0.0.20230224.111651";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/diffview-1.0.0.20230224.111651.tar";
-          sha256 = "030lkz0y188frlr8525ka4q26pbrj1rd1i5mn3152wnac3xmzj3q";
+          sha256 = "1shw58jk2dzr8sc9hhfjqjrmwqarvq989ic96zjmhajxvcqcz3ql";
         };
         packageRequires = [];
         meta = {
@@ -1550,7 +1551,7 @@
         version = "0.46.0.20220909.84745";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/diminish-0.46.0.20220909.84745.tar";
-          sha256 = "05yv0gvqcha0404spd200rgfw08zww9r5h2rbmykhq7c7chml542";
+          sha256 = "1d31bk42p1qjhpbr6lin87y18nya1qk9dm37vhhiq5sxajfr5ab9";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -1569,7 +1570,7 @@
         version = "0.5.2.0.20221221.75108";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/dired-du-0.5.2.0.20221221.75108.tar";
-          sha256 = "0hbb6f2ycnn8s5b5wk3zqfwmz56ijgiyggr2rjj3pqvg3hhrdkcx";
+          sha256 = "0h31k45sx47vmk20sn77fzz86gbwiqxrryr091p5s05smrlsfxc2";
         };
         packageRequires = [ cl-lib emacs ];
         meta = {
@@ -1584,10 +1585,10 @@
       elpaBuild {
         pname = "dired-duplicates";
         ename = "dired-duplicates";
-        version = "0.3.0.20231114.215046";
+        version = "0.4.0.20240328.201645";
         src = fetchurl {
-          url = "https://elpa.gnu.org/devel/dired-duplicates-0.3.0.20231114.215046.tar";
-          sha256 = "0rla938sj1zig7qcdxybl7qm4x1b0ndpf9xf9ikj0vfdghyg7z2s";
+          url = "https://elpa.gnu.org/devel/dired-duplicates-0.4.0.20240328.201645.tar";
+          sha256 = "0122wxl2sql31s4h7rf7mxz6kv15m77q9bqmixxsgzhfghbia7k7";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -1605,7 +1606,7 @@
         version = "0.3.1.0.20191229.192948";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/dired-git-info-0.3.1.0.20191229.192948.tar";
-          sha256 = "1gkvn9g3nn113qa0fdq3h88fbmjy9498y9zcd5jfyz4kx0iid016";
+          sha256 = "0zq74nynra4cbyb81l3v9w0qrzz057z9abg6c6zjshlrq8kxv5kx";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -1620,10 +1621,10 @@
       elpaBuild {
         pname = "dired-preview";
         ename = "dired-preview";
-        version = "0.1.1.0.20240312.193205";
+        version = "0.1.1.0.20240425.180328";
         src = fetchurl {
-          url = "https://elpa.gnu.org/devel/dired-preview-0.1.1.0.20240312.193205.tar";
-          sha256 = "02yi5rxcv8v10zsypsn19i16rakik2ii650drk337h0iqkdwx8ax";
+          url = "https://elpa.gnu.org/devel/dired-preview-0.1.1.0.20240425.180328.tar";
+          sha256 = "1wn8k1wr126nw22sczjrhkxwsjnbhr08ym01sy8d4422wif0l4as";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -1641,7 +1642,7 @@
         version = "1.3.3.0.20230920.164444";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/disk-usage-1.3.3.0.20230920.164444.tar";
-          sha256 = "0x0rlvls7csj81cgmmdminq806f4l9rlcz3g45z6rnr1x6d236sh";
+          sha256 = "06vd56yaaz9a6b46g4r6ccasc74pyqls9krj3bcrdayhj34w3mxy";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -1656,7 +1657,7 @@
         version = "1.5.2.0.20221221.75154";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/dismal-1.5.2.0.20221221.75154.tar";
-          sha256 = "011lvc7sxy8waqyirgsbf7p0y1n16zc5srlx0yk22x7q7i28svrp";
+          sha256 = "0nyy9dkafkzxvx60d1bzrn2a1m3n53al3x17r3kf7d2b24gcljbd";
         };
         packageRequires = [ cl-lib emacs ];
         meta = {
@@ -1671,7 +1672,7 @@
         version = "1.1.2.0.20221221.75224";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/djvu-1.1.2.0.20221221.75224.tar";
-          sha256 = "08q6sryvpgl0nx17r3rr2sramgzxgwx9qlwripy1iqcydyz844d1";
+          sha256 = "0iirmzaah0nix14jaj0hnszrdkdsh4wli8hb951l7iw7szkc5fsp";
         };
         packageRequires = [];
         meta = {
@@ -1689,7 +1690,7 @@
         version = "0.1.1.0.20231027.63811";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/do-at-point-0.1.1.0.20231027.63811.tar";
-          sha256 = "0k490g70lv89l87bn79m4bphnkv6vk578qgv1vk64z403wdgvxbv";
+          sha256 = "1cf4inz5805vd9hcrqsmwxjzc8wy7qwwxg9731d03czjxxcvyp0d";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -1704,7 +1705,7 @@
         version = "1.2.0.20230409.212954";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/doc-toc-1.2.0.20230409.212954.tar";
-          sha256 = "1y5i6669416llpkpnqnhkckvbwy493gfbcjlq1hh1mwy508bq2va";
+          sha256 = "1gcdkcb1ydgl24jmrnkg1a7kndl7kkvckwf12y5pj2l2idf9ifx8";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -1719,7 +1720,7 @@
         version = "0.1.0.20221221.75233";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/docbook-0.1.0.20221221.75233.tar";
-          sha256 = "0zp2hhgxi4ab6ijxfinjay34jjbwn36iy1laaxp65cb7dy6k2aas";
+          sha256 = "0r7sjnbj4wgqa2vw57ac28gixw762km0cwas0qhclxizb95nsnz2";
         };
         packageRequires = [];
         meta = {
@@ -1731,10 +1732,10 @@
       elpaBuild {
         pname = "drepl";
         ename = "drepl";
-        version = "0.1.0.20231123.162851";
+        version = "0.2.0.20240421.84519";
         src = fetchurl {
-          url = "https://elpa.gnu.org/devel/drepl-0.1.0.20231123.162851.tar";
-          sha256 = "10b5xk30vm5d7n3vzv0rafvbqwx4y5l9fhjrrgxh3j57z4v8lw0k";
+          url = "https://elpa.gnu.org/devel/drepl-0.2.0.20240421.84519.tar";
+          sha256 = "1kxxj0dd9yj168gaq89hm1sqajv8p8y7mgpqrxsqbz2hg6p568af";
         };
         packageRequires = [ comint-mime emacs ];
         meta = {
@@ -1749,7 +1750,7 @@
         version = "1.0.0.20221221.75311";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/dts-mode-1.0.0.20221221.75311.tar";
-          sha256 = "0jmvg2gi43iaqq82s1ahzymday7i9gihhv9affjxcs97ydzwzaj2";
+          sha256 = "1bpd6npx70rzh3mb5235g1ydh839bnjag70qp17r0wd2wkj6w0gj";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -1766,7 +1767,7 @@
         version = "0.2.1.0.20210917.85414";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/easy-escape-0.2.1.0.20210917.85414.tar";
-          sha256 = "08npj12pd9jjmwvzadxxs6ldkyqm40355by1q9xq0wdmnh60lcpg";
+          sha256 = "0hk9244g7hgnan7xd4451qjklfqh5hbkxjl60l32nr19ynw0ygif";
         };
         packageRequires = [];
         meta = {
@@ -1785,7 +1786,7 @@
         version = "0.9.5.0.20220511.55730";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/easy-kill-0.9.5.0.20220511.55730.tar";
-          sha256 = "0lwj2x09a8rmanymk25cgx4wlqlnq9zxwzymc9bsv9pxg0svcira";
+          sha256 = "0il8lhi2j80sz63lnjkayryikcya03zn3z40bnfjbsydpyqj4kzd";
         };
         packageRequires = [ cl-lib emacs ];
         meta = {
@@ -1800,7 +1801,7 @@
         version = "0.8.22.0.20240305.123820";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/ebdb-0.8.22.0.20240305.123820.tar";
-          sha256 = "1y680dfqvmbpq75ylgw16jx0p7hyggi12bb1f0c7z0w0y473gdj0";
+          sha256 = "0j6wflmslapq3wr5bg6ql7qamh9k9zzp1xzadkxq3i3124syanfs";
         };
         packageRequires = [ emacs seq ];
         meta = {
@@ -1819,7 +1820,7 @@
         version = "1.0.2.0.20221221.75324";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/ebdb-gnorb-1.0.2.0.20221221.75324.tar";
-          sha256 = "1g71ycs0z0ac2011wazfm2caqh5gly82dxj88kcwh4pbcx4p6ywn";
+          sha256 = "0lzsarv0pkdgkj19il0syk7yz6gcfkp0rl3i49rsqb3lpf5b6s5q";
         };
         packageRequires = [ ebdb gnorb ];
         meta = {
@@ -1838,7 +1839,7 @@
         version = "1.3.2.0.20221221.75334";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/ebdb-i18n-chn-1.3.2.0.20221221.75334.tar";
-          sha256 = "087fc78fczrmv73nigvxy25x8k69l57v67big5p8kaddp2z756l8";
+          sha256 = "16hna0z08903pkq957cgxk26ihq6j3fab775ickb24zfssjm3l61";
         };
         packageRequires = [ ebdb pyim ];
         meta = {
@@ -1853,7 +1854,7 @@
         version = "2.2.0.20221026.91800";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/ediprolog-2.2.0.20221026.91800.tar";
-          sha256 = "0hgqwscykw0030w9vlkrxvid2li93v5z6js829nfmssmqvzibic2";
+          sha256 = "0y2xa0k7sv21yabxkfzxnl0fdnppgcwx5jdnm1zw2j2sbaf9k6ca";
         };
         packageRequires = [];
         meta = {
@@ -1865,10 +1866,10 @@
       elpaBuild {
         pname = "eev";
         ename = "eev";
-        version = "20240309.0.20240309.40750";
+        version = "20240309.0.20240325.4057";
         src = fetchurl {
-          url = "https://elpa.gnu.org/devel/eev-20240309.0.20240309.40750.tar";
-          sha256 = "03vmfj9ialviza0j1xdrfxrm948qfqsvj95k6xsgx6kr4fh0gy8i";
+          url = "https://elpa.gnu.org/devel/eev-20240309.0.20240325.4057.tar";
+          sha256 = "0h6b69ykrdkzhqkv8b0qjanpfkcw4408kcxlv672h3i660w9jj0j";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -1883,10 +1884,10 @@
       elpaBuild {
         pname = "ef-themes";
         ename = "ef-themes";
-        version = "1.6.1.0.20240322.140619";
+        version = "1.6.1.0.20240427.83621";
         src = fetchurl {
-          url = "https://elpa.gnu.org/devel/ef-themes-1.6.1.0.20240322.140619.tar";
-          sha256 = "0zmwx7l3dgjrqwg4nlsjkaiqx95pswpznzzrbzzlkc4aajk9l047";
+          url = "https://elpa.gnu.org/devel/ef-themes-1.6.1.0.20240427.83621.tar";
+          sha256 = "1pjq8yblcmk4mp83bqcnb154rq8dbn8qn6q394wzzwnn6kv08ay2";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -1908,10 +1909,10 @@
       elpaBuild {
         pname = "eglot";
         ename = "eglot";
-        version = "1.17.0.20240323.73745";
+        version = "1.17.0.20240423.182809";
         src = fetchurl {
-          url = "https://elpa.gnu.org/devel/eglot-1.17.0.20240323.73745.tar";
-          sha256 = "0g2a6hj6k1z74ymsl568117bql1xalf0pqlckscj8dj1glcn6jq5";
+          url = "https://elpa.gnu.org/devel/eglot-1.17.0.20240423.182809.tar";
+          sha256 = "129ibvdqcv7jablim041x55vm4awyvcjk295nrrffryzbb75fgi9";
         };
         packageRequires = [
           eldoc
@@ -1940,7 +1941,7 @@
         version = "1.12.6.1.0.20221221.75346";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/el-search-1.12.6.1.0.20221221.75346.tar";
-          sha256 = "08r2hw47ijwb7y1amhn49r9l9kh2kv0y631rg4f8xjqfd38msh45";
+          sha256 = "12500xc7aln09kzf3kn6xq7xnphbqzmyz20h0sgpf8f1rvlh2h33";
         };
         packageRequires = [ cl-print emacs stream ];
         meta = {
@@ -1955,7 +1956,7 @@
         version = "1.15.0.0.20240223.120227";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/eldoc-1.15.0.0.20240223.120227.tar";
-          sha256 = "0v9y8qbcxs9dkb9sfgqsnqiz4b1w75hwq3hc24j9jkjkpny7fd4m";
+          sha256 = "1jlvlzd2bvz0xgc8gdlzw655v5qiaihc4wz5k3yqqck6dbmhd8fy";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -1972,7 +1973,7 @@
         version = "5.0.0.20201201.154407";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/electric-spacing-5.0.0.20201201.154407.tar";
-          sha256 = "1iaw30bxjzxkvnqvcw10vxyjfbxabr0cb04kmwy0ibzh8dim25i0";
+          sha256 = "0ywa68zwci0v6g9nc8czlhvf9872vl262nrxffahc5r7lp1hay8k";
         };
         packageRequires = [];
         meta = {
@@ -1986,10 +1987,10 @@
       elpaBuild {
         pname = "elisp-benchmarks";
         ename = "elisp-benchmarks";
-        version = "1.14.0.20230928.180802";
+        version = "1.14.0.20240404.94558";
         src = fetchurl {
-          url = "https://elpa.gnu.org/devel/elisp-benchmarks-1.14.0.20230928.180802.tar";
-          sha256 = "0izajmxmbanlwkflp4fr2b8inka8i9p68bh93fvnp062cpk44pfj";
+          url = "https://elpa.gnu.org/devel/elisp-benchmarks-1.14.0.20240404.94558.tar";
+          sha256 = "1lfpwwm9114x7431pc12kppb0mgia1zd4b5pnfpvqyk3159xx40v";
         };
         packageRequires = [];
         meta = {
@@ -1997,19 +1998,14 @@
           license = lib.licenses.free;
         };
       }) {};
-    ellama = callPackage ({ elpaBuild
-                          , emacs
-                          , fetchurl
-                          , lib
-                          , llm
-                          , spinner }:
+    ellama = callPackage ({ elpaBuild, emacs, fetchurl, lib, llm, spinner }:
       elpaBuild {
         pname = "ellama";
         ename = "ellama";
-        version = "0.8.13.0.20240316.161027";
+        version = "0.9.1.0.20240415.73018";
         src = fetchurl {
-          url = "https://elpa.gnu.org/devel/ellama-0.8.13.0.20240316.161027.tar";
-          sha256 = "00pf48z90sirwyrk40p8fy9vi2cckrxismcp1yr8sirifs0wi574";
+          url = "https://elpa.gnu.org/devel/ellama-0.9.1.0.20240415.73018.tar";
+          sha256 = "1fcw0ll24bj32mjjb952in5shnyxz63gdkg80njy89s2bknw1ra1";
         };
         packageRequires = [ emacs llm spinner ];
         meta = {
@@ -2027,7 +2023,7 @@
         version = "1.4.2.0.20231206.152254";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/emacs-gc-stats-1.4.2.0.20231206.152254.tar";
-          sha256 = "047bvpm3sbikr31z3kv3z5fb02vpmrd98qv2zypxdx9rk5yid3pb";
+          sha256 = "08ivfm6m9y4i1w0xmjkbs6b2h7i5q1v2991rjs2w5s9d864yqg2l";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -2039,10 +2035,10 @@
       elpaBuild {
         pname = "embark";
         ename = "embark";
-        version = "1.0.0.20240323.170519";
+        version = "1.1.0.20240418.225241";
         src = fetchurl {
-          url = "https://elpa.gnu.org/devel/embark-1.0.0.20240323.170519.tar";
-          sha256 = "0mj762p6pbqciw1jjbn03qmcw7z4nc823ssd42jbx3a5mzvyi3qr";
+          url = "https://elpa.gnu.org/devel/embark-1.1.0.20240418.225241.tar";
+          sha256 = "120wh0r76wnsk5kczdnr5b7029x78fyd8p0h9rl2sbss4ac8wa48";
         };
         packageRequires = [ compat emacs ];
         meta = {
@@ -2060,10 +2056,10 @@
       elpaBuild {
         pname = "embark-consult";
         ename = "embark-consult";
-        version = "1.0.0.20240323.170519";
+        version = "1.1.0.20240418.225241";
         src = fetchurl {
-          url = "https://elpa.gnu.org/devel/embark-consult-1.0.0.20240323.170519.tar";
-          sha256 = "0ys3v2519vw02c04vyl5jggk9n6nf2hzhb3xr8y635lg2f8chbh9";
+          url = "https://elpa.gnu.org/devel/embark-consult-1.1.0.20240418.225241.tar";
+          sha256 = "09qqwd5p7gasazg0plz1ijq5lgxh26358sia4727rs75pxwlz0zv";
         };
         packageRequires = [ compat consult emacs embark ];
         meta = {
@@ -2085,10 +2081,10 @@
       elpaBuild {
         pname = "ement";
         ename = "ement";
-        version = "0.15pre0.20240319.190705";
+        version = "0.15.0.20240416.101741";
         src = fetchurl {
-          url = "https://elpa.gnu.org/devel/ement-0.15pre0.20240319.190705.tar";
-          sha256 = "1g5bjg9z4k33pfvskv1nkxpzrp197rfwq4mpki74kmr9z7cmspaa";
+          url = "https://elpa.gnu.org/devel/ement-0.15.0.20240416.101741.tar";
+          sha256 = "1fjns4li3cvi3p2jkwxagzs6aj8x9s4zjc1lwpj013d54mflkndp";
         };
         packageRequires = [
           emacs
@@ -2114,10 +2110,10 @@
       elpaBuild {
         pname = "emms";
         ename = "emms";
-        version = "19.0.20240318.161230";
+        version = "19.0.20240414.193332";
         src = fetchurl {
-          url = "https://elpa.gnu.org/devel/emms-19.0.20240318.161230.tar";
-          sha256 = "0yk3v3vglv8hl4x9piyis7q783gmbb49sw15zdgjys56plcg2k17";
+          url = "https://elpa.gnu.org/devel/emms-19.0.20240414.193332.tar";
+          sha256 = "03jxpxgrlr1amxix4skfyag5pl6xvls011rcjjx1ka5sjdvnygvp";
         };
         packageRequires = [ cl-lib nadvice seq ];
         meta = {
@@ -2132,10 +2128,10 @@
       elpaBuild {
         pname = "engrave-faces";
         ename = "engrave-faces";
-        version = "0.3.1.0.20230115.70118";
+        version = "0.3.1.0.20240421.82802";
         src = fetchurl {
-          url = "https://elpa.gnu.org/devel/engrave-faces-0.3.1.0.20230115.70118.tar";
-          sha256 = "19cg0ksh1v3yhvknpf18q21y0wbhf55ll8p67vvlqaaikwlmbpxz";
+          url = "https://elpa.gnu.org/devel/engrave-faces-0.3.1.0.20240421.82802.tar";
+          sha256 = "0dxj9m9jyvrqhv67m2kkh0akjc7l6h40fvsy20k721zq9xvc6zkl";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -2150,7 +2146,7 @@
         version = "2.0.0.20171007.121321";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/enwc-2.0.0.20171007.121321.tar";
-          sha256 = "13lj4br2r845zwg491y9f2m5zxi2gj4qkihwcsrnc1ybf3zdlpfy";
+          sha256 = "0c308kd1pinhb1lh2vi40bcnmvzydf1j7sqka9kajhxr0l4kjazb";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -2167,7 +2163,7 @@
         version = "0.0.1.0.20221221.75416";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/epoch-view-0.0.1.0.20221221.75416.tar";
-          sha256 = "0lhs1i02rl8mb7m56bsmv942pq7dgdp5qjp1zs7flv0zgyi8ip5c";
+          sha256 = "0hd51d441c2w05rx10wpa0rbc94pjwwaqy5mxlgfwnx52jabz15h";
         };
         packageRequires = [];
         meta = {
@@ -2183,10 +2179,10 @@
       elpaBuild {
         pname = "erc";
         ename = "erc";
-        version = "5.6snapshot0.20240323.151032";
+        version = "5.6snapshot0.20240419.135452";
         src = fetchurl {
-          url = "https://elpa.gnu.org/devel/erc-5.6snapshot0.20240323.151032.tar";
-          sha256 = "1vydh0v3rw44r6y1lfbr4nlxhmbx224idj5s5g4kas6r2pgi0b74";
+          url = "https://elpa.gnu.org/devel/erc-5.6snapshot0.20240419.135452.tar";
+          sha256 = "1yx1k6r6fg77r6h7bvi1v205mnxmw8qjqr96k4dh73a7ik972vmh";
         };
         packageRequires = [ compat emacs ];
         meta = {
@@ -2206,7 +2202,7 @@
         version = "5.16.10.12.0.20240129.80712";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/ergoemacs-mode-5.16.10.12.0.20240129.80712.tar";
-          sha256 = "14ydcz8mhq9cy1ivxdyjslh83lxigqcqw8nb1f22g9ksxxxsz9fr";
+          sha256 = "0jsl7yyhbcg1y20lp50r3i3rcxmxq035mks1kwbsnyqmdikby9s3";
         };
         packageRequires = [ cl-lib emacs nadvice ];
         meta = {
@@ -2218,10 +2214,10 @@
       elpaBuild {
         pname = "ess";
         ename = "ess";
-        version = "24.1.1.0.20240311.150545";
+        version = "24.1.1.0.20240426.115232";
         src = fetchurl {
-          url = "https://elpa.gnu.org/devel/ess-24.1.1.0.20240311.150545.tar";
-          sha256 = "0dyyyl7akn50j15asr6msrx704vr4wjfz3a1h7nsxjjaczz0n8kz";
+          url = "https://elpa.gnu.org/devel/ess-24.1.1.0.20240426.115232.tar";
+          sha256 = "1rskraim68fibf568f07r62h14ni45wvzifn21qyfcvv8slb63jd";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -2245,7 +2241,7 @@
         version = "1.1.2.0.20240219.90343";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/excorporate-1.1.2.0.20240219.90343.tar";
-          sha256 = "1cfpg7i4jvzfi4iak5g9cj7bsvb0zkqh64jkbfrchhk4wxpj0s01";
+          sha256 = "0wm1qx1y9az3fdh81hjccpsw4xxx0p9acz9pfvsyjlywclcycd4i";
         };
         packageRequires = [
           cl-lib
@@ -2271,7 +2267,7 @@
         version = "1.0.0.0.20240119.103925";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/expand-region-1.0.0.0.20240119.103925.tar";
-          sha256 = "147zh74zjzq8qwmrsdjikkiaky7lagjf4jim2mj1rf35lw5z1m5z";
+          sha256 = "16npbi0nryvnrz61ycpdp4s4nb067brkv83ih7fymc0dlmvp1x50";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -2286,7 +2282,7 @@
         version = "1.3.1.0.20230915.150818";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/expreg-1.3.1.0.20230915.150818.tar";
-          sha256 = "1wxayvfqc41c2qfqjmf8drzb0q7r5kyfygdl5l4c3idcm8agsim4";
+          sha256 = "11r4vwavax904dxmcpbr2nbycr7096aalblh6pfvjbhb23a0vx7m";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -2303,7 +2299,7 @@
         version = "0.1.0.20240102.22814";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/external-completion-0.1.0.20240102.22814.tar";
-          sha256 = "0azy67n2lb9lcmrcz1k0z8gpx32w8g5xcz9ly73yh5kdfb83227p";
+          sha256 = "0y2lh89zmyrfkdzwxhc7npbbyp97xi1mnr7qdlsnlnw8gllknf27";
         };
         packageRequires = [];
         meta = {
@@ -2315,10 +2311,10 @@
       elpaBuild {
         pname = "exwm";
         ename = "exwm";
-        version = "0.28.0.20240316.164011";
+        version = "0.28.0.20240403.140839";
         src = fetchurl {
-          url = "https://elpa.gnu.org/devel/exwm-0.28.0.20240316.164011.tar";
-          sha256 = "0kqg4rfwrrd9z714a6k4ldmpq4iqihkx1c2q4fnf82p9616pd88w";
+          url = "https://elpa.gnu.org/devel/exwm-0.28.0.20240403.140839.tar";
+          sha256 = "1hyf2m1inifvxzv6y2wmrfylp9vrb130nj1pvpy169miw2n50vzm";
         };
         packageRequires = [ emacs xelb ];
         meta = {
@@ -2336,7 +2332,7 @@
         version = "1.1.0.20221221.75553";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/f90-interface-browser-1.1.0.20221221.75553.tar";
-          sha256 = "1xbrm524dadmww961m4n2dqi1gplbflfldxwc6cs0cas2cf4ydal";
+          sha256 = "0qv3v3ya8qdgwq0plcc3qbba4n66fqww3sawmqhzssksry39l1yj";
         };
         packageRequires = [ cl-lib ];
         meta = {
@@ -2354,7 +2350,7 @@
         version = "0.2.1.0.20230426.73945";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/face-shift-0.2.1.0.20230426.73945.tar";
-          sha256 = "0h33w6n1sj0g4ji8ckdd9pgxq3gj4kn0mqlazrs82sf32hsjfi5w";
+          sha256 = "0gl9k7g3wsc045dx9mp9ypk084r4j3mhf2a4xn08lzz8z8i9k2rz";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -2373,7 +2369,7 @@
         version = "0.2.0.0.20240310.203607";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/filechooser-0.2.0.0.20240310.203607.tar";
-          sha256 = "0ra072qdg38y92f73cimwlgcclvfpz4wvrr8wr7i808jv1rdagv7";
+          sha256 = "1hcjnhb3bhk6im5k1mqrlb599jrdg9hxadjhvw31f5l5rjg2636l";
         };
         packageRequires = [ compat emacs ];
         meta = {
@@ -2391,7 +2387,7 @@
         version = "2.12.2.0.20221221.75607";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/filladapt-2.12.2.0.20221221.75607.tar";
-          sha256 = "0izqqh2dlp9p6kbkmn5qp9lbqdf8ps3f38lclc9fm2652mssvddv";
+          sha256 = "11s9n8d4psjs4dbsx2w8hyir5hapz952da5nz3xihli8a0q93mhv";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -2409,7 +2405,7 @@
         version = "0.9.5.0.20230605.161924";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/firefox-javascript-repl-0.9.5.0.20230605.161924.tar";
-          sha256 = "1fwi01mqyz0mvy27rxz4k97mww02gv6njhb4p7wxj1wrx1xsmm1z";
+          sha256 = "1nfkzx07j3hddai213lia9pixfrrdajrvg7fvlx5js8zxfpvcjx6";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -2424,7 +2420,7 @@
         version = "0.2.0.20221221.75619";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/flylisp-0.2.0.20221221.75619.tar";
-          sha256 = "0b48wd2isf5nqfgscpd311hwisp9gs77lsinpdrs40swvwnflyfb";
+          sha256 = "110hfk979c664y27qf5af54phm8i4iq5qqk5vygjwd7252nd7i4a";
         };
         packageRequires = [ cl-lib emacs ];
         meta = {
@@ -2432,19 +2428,14 @@
           license = lib.licenses.free;
         };
       }) {};
-    flymake = callPackage ({ eldoc
-                           , elpaBuild
-                           , emacs
-                           , fetchurl
-                           , lib
-                           , project }:
+    flymake = callPackage ({ eldoc, elpaBuild, emacs, fetchurl, lib, project }:
       elpaBuild {
         pname = "flymake";
         ename = "flymake";
-        version = "1.3.7.0.20240223.154540";
+        version = "1.3.7.0.20240422.65418";
         src = fetchurl {
-          url = "https://elpa.gnu.org/devel/flymake-1.3.7.0.20240223.154540.tar";
-          sha256 = "1z9j0mrka8qznz3d81h1pzns2bn1sswqj2rd8m2drwjzzgaq4j0w";
+          url = "https://elpa.gnu.org/devel/flymake-1.3.7.0.20240422.65418.tar";
+          sha256 = "0gq3x3ssvsccwjajd3w835dd1zvlakj7gxdn6b1fqj46rkyi60vw";
         };
         packageRequires = [ eldoc emacs project ];
         meta = {
@@ -2463,7 +2454,7 @@
         version = "0.1.0.20231030.222337";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/flymake-codespell-0.1.0.20231030.222337.tar";
-          sha256 = "1i4gk9z9yfs9gb9x64n8wzxqy8lb81j422173xxg1lwsirc9a040";
+          sha256 = "1v3a2gg4myav4cs1vj4d5isxhbw9qvryk5r2dx3x19qqmmmm6djz";
         };
         packageRequires = [ compat emacs ];
         meta = {
@@ -2481,7 +2472,7 @@
         version = "0.3.0.0.20230325.160756";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/flymake-proselint-0.3.0.0.20230325.160756.tar";
-          sha256 = "09r9karqm7f8s8wmbfai8nrawpxcn5f7lwpfp5vz1j7w068zn3mi";
+          sha256 = "1p3jpsv6w4hask7bk07dmafwgymbw3xl6i0vx0sjd0i5aa0xs9vz";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -2496,10 +2487,10 @@
       elpaBuild {
         pname = "fontaine";
         ename = "fontaine";
-        version = "1.0.0.0.20240222.132833";
+        version = "2.0.0.0.20240426.105847";
         src = fetchurl {
-          url = "https://elpa.gnu.org/devel/fontaine-1.0.0.0.20240222.132833.tar";
-          sha256 = "19smmj7fk5584fwh0yhf0h2h01xv5148rvwc4bcypdsm744rcvfj";
+          url = "https://elpa.gnu.org/devel/fontaine-2.0.0.0.20240426.105847.tar";
+          sha256 = "0h7l5agnzpq8k14c3lr6dkpsh2id9akiqa9z3x88xn440rjbld51";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -2516,7 +2507,7 @@
         version = "1.1.0.20221221.75627";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/frame-tabs-1.1.0.20221221.75627.tar";
-          sha256 = "0c9sbfqnl2vmrw9ziaybd7dmzw23a9p5b8nl1g5w4kkwwh7kwl35";
+          sha256 = "08ql56h8h425ngs40m9zpy4ysxlxi74vanlkga42bskzax0ns2cm";
         };
         packageRequires = [];
         meta = {
@@ -2536,7 +2527,7 @@
         version = "0.2.11.0.20201115.95734";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/frog-menu-0.2.11.0.20201115.95734.tar";
-          sha256 = "1rvvkzd639x8rddkbcxwqi6f29y4zybiryvp1is9f68jj6dn3y98";
+          sha256 = "00ihlqq4bxgrp6hdf1b6xhnvp87ilys1ykp0l38cs5lv6a10wvqs";
         };
         packageRequires = [ avy emacs posframe ];
         meta = {
@@ -2551,7 +2542,7 @@
         version = "0.2.1.0.20221212.223608";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/fsm-0.2.1.0.20221212.223608.tar";
-          sha256 = "1q7i32b3kx1cp1yag2mijab36b289hpv1vx7fby8n35agbnqabh8";
+          sha256 = "1zwl1b9sn4imxynada0vf8nxwm49lh8fahxfc35czlbn0w0jqm1k";
         };
         packageRequires = [ cl-lib emacs ];
         meta = {
@@ -2566,7 +2557,7 @@
         version = "1.1.0.20230102.145125";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/ftable-1.1.0.20230102.145125.tar";
-          sha256 = "0bhzxrhl87fyv9ynlxp0c3nschpbamkkxzh5gzakdigbm79602ir";
+          sha256 = "0231qjah5s76g8dmnc5zpn6i6lysypf6jvvzmnyyv92lr8arzmfz";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -2581,7 +2572,7 @@
         version = "0.2.1.0.20201116.225142";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/gcmh-0.2.1.0.20201116.225142.tar";
-          sha256 = "1xfpms62svxmvhpdprhb68bsa27m8m8z8wmq3sn42rjf8fi9hrqf";
+          sha256 = "0yb47avdy5f3a2g9cg2028h5agsqpddsbfsc6ncavnxnnyiccj8h";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -2596,7 +2587,7 @@
         version = "0.9.0.0.20230602.13355";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/ggtags-0.9.0.0.20230602.13355.tar";
-          sha256 = "1d8d4shaf3rkan48vpqjc32qms6n90f912wdxsy7nz9fqadv31cz";
+          sha256 = "1krykf1hknczhdhh8rfj4vzcba87q5sjbv0p2y41mcvmmfnhharw";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -2611,7 +2602,7 @@
         version = "0.6.0.0.20221221.75709";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/gited-0.6.0.0.20221221.75709.tar";
-          sha256 = "1pl8chdmnpfby8ap3lirjc837nns5bdgsqms4v86g3acgyz1zd8d";
+          sha256 = "095679pq1lam42zran5qjk3zd4gf908vd5fkq9jppqlilcsqf7zb";
         };
         packageRequires = [ cl-lib emacs ];
         meta = {
@@ -2626,7 +2617,7 @@
         version = "1.1.0.20221221.75729";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/gle-mode-1.1.0.20221221.75729.tar";
-          sha256 = "1icjvfrh7j1jp31fhgazai9xdm1s2wk0b3zs3n44km9v2gfy4gcc";
+          sha256 = "1bakvlx4bzz62hibwwm0hmhyzqqzy31xvsg6pw3lh2i028qd1ykx";
         };
         packageRequires = [ cl-lib ];
         meta = {
@@ -2645,7 +2636,7 @@
         version = "1.0.3.0.20230915.165808";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/gnat-compiler-1.0.3.0.20230915.165808.tar";
-          sha256 = "1za3ihjbramms85r35kz1d3gyyr3kyimd5m7xsmqnrpj3wsrjika";
+          sha256 = "0rm0s33nl9dzghlfsprycr2na412z4vnfc69q2pc6nlazsliz6w0";
         };
         packageRequires = [ emacs wisi ];
         meta = {
@@ -2662,7 +2653,7 @@
         version = "0.1.0.20230924.235858";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/gnome-c-style-0.1.0.20230924.235858.tar";
-          sha256 = "0zp4dyqm04vk0168s7s972bzxajl0h4d3ywxqw7a6lj3ykjg1ir5";
+          sha256 = "0gij2d1k40yhifr7ad3p465f5lg77cb441pl41mdc0g6v5gipnqf";
         };
         packageRequires = [];
         meta = {
@@ -2677,7 +2668,7 @@
         version = "1.6.11.0.20230108.110132";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/gnorb-1.6.11.0.20230108.110132.tar";
-          sha256 = "0w14v19idq2njgb80ry0qa7dv9hhj5lg488acxx0pz5cxk606rgh";
+          sha256 = "0jha80xr8pbribp0ki40cydvi35as7v2c2xsy0anh65j9ciym5ag";
         };
         packageRequires = [ cl-lib ];
         meta = {
@@ -2692,7 +2683,7 @@
         version = "1.1.0.20221212.224322";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/gnu-elpa-1.1.0.20221212.224322.tar";
-          sha256 = "1aglbzgvprqws45xybs7cfajgkgbcl8pk61nqdja7qhgr7a68ymx";
+          sha256 = "0hk9ha7f0721wnsnjazpr970lfa4q03dhpxxffw9qcn1mlvh8qb8";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -2709,7 +2700,7 @@
         version = "2022.12.0.20221228.123117";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/gnu-elpa-keyring-update-2022.12.0.20221228.123117.tar";
-          sha256 = "1aa9lwjd4cll6qm5909dg2dgx34sai3w3jg76xjlax3afg4vak2v";
+          sha256 = "18dqjkg9gva5a9967k4gkyjvzhjvh55z2jds7xwgbwczppg8mdz2";
         };
         packageRequires = [];
         meta = {
@@ -2729,7 +2720,7 @@
         version = "3.1.2.0.20230911.4426";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/gnugo-3.1.2.0.20230911.4426.tar";
-          sha256 = "1fl4zvi5h84qccpym6kaasmv37zbjfj4lc8nq2bqq4ris689y7vj";
+          sha256 = "0pxw1z6inw0ikagcfvi14i83sg6affii277mbyzh5liv655hn9rj";
         };
         packageRequires = [ ascii-art-to-unicode cl-lib xpm ];
         meta = {
@@ -2746,7 +2737,7 @@
         version = "0.5.0.20210503.105756";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/gnus-mock-0.5.0.20210503.105756.tar";
-          sha256 = "1p4znd3hzzlxwzxja764vfdy4vb6lf39m6hhvm8knqikq823y26d";
+          sha256 = "1gpjbx9iabrx2b4qinw0chv44g2v1z2ivaiywjzr3vy3h3pp6fga";
         };
         packageRequires = [];
         meta = {
@@ -2761,7 +2752,7 @@
         version = "0.5.0.0.20231030.71342";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/gpastel-0.5.0.0.20231030.71342.tar";
-          sha256 = "1vd49mn7xgys0apc7z6s6cs3yygznlyyf4l1hhfrgg5vwfb3c7ry";
+          sha256 = "1d5pj1rk0xv2fww827yplpcll5hy8w9fkcm9c8wf4yi3l6igkmgz";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -2781,7 +2772,7 @@
         version = "1.0.5.0.20231115.90848";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/gpr-mode-1.0.5.0.20231115.90848.tar";
-          sha256 = "1z7v8kwamh217k0lfwcdycj4wnq4dj9lrryppqhjdqb7cj02bmdz";
+          sha256 = "1m768s196027zl402vmfvdzvdl3whbjg5lyfiwjx25d9gfx32351";
         };
         packageRequires = [ emacs gnat-compiler wisi ];
         meta = {
@@ -2801,7 +2792,7 @@
         version = "1.0.4.0.20231018.92052";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/gpr-query-1.0.4.0.20231018.92052.tar";
-          sha256 = "1pk14d88vy0ylgcdymp9pclygpn06n25yhy0hsjs0lrd8zr56a49";
+          sha256 = "0j0p685v1v0byma8x5lpihvfj6hyg30dx8jqa6q0xmm2c6i8cqai";
         };
         packageRequires = [ emacs gnat-compiler wisi ];
         meta = {
@@ -2816,7 +2807,7 @@
         version = "0.1.2.0.20221202.2453";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/graphql-0.1.2.0.20221202.2453.tar";
-          sha256 = "175ss2ln21j0s83fy5yydb05rgsawgc7f8qbahc6ahc1sclppk26";
+          sha256 = "0wh1lnn85nj026iln02b7p5hgrwd3dmqjkv48gc33ypyd4afh31z";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -2831,10 +2822,10 @@
       elpaBuild {
         pname = "greader";
         ename = "greader";
-        version = "0.9.19.0.20240315.175225";
+        version = "0.9.20.0.20240427.100340";
         src = fetchurl {
-          url = "https://elpa.gnu.org/devel/greader-0.9.19.0.20240315.175225.tar";
-          sha256 = "1z58dr4zpb2pk10ppjrqr7bxzbji6bgajhv71s6i6802k8il7r32";
+          url = "https://elpa.gnu.org/devel/greader-0.9.20.0.20240427.100340.tar";
+          sha256 = "0g07dvn21g35vx0g7c5dhhwv1pci3jxlpacd9f0iyj42f52yxxhy";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -2849,7 +2840,7 @@
         version = "1.1.0.20221221.80217";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/greenbar-1.1.0.20221221.80217.tar";
-          sha256 = "1cm2fj2arhgxc5dl6yw03xjyipgk2skaamyy8gybbb4zdglhpd0m";
+          sha256 = "00kch8c0sz5z3cx0likx0pyqp9jxvjd6lkmdcli4zzpc6j1f1a0k";
         };
         packageRequires = [];
         meta = {
@@ -2857,14 +2848,17 @@
           license = lib.licenses.free;
         };
       }) {};
-    gtags-mode = callPackage ({ elpaBuild, emacs, fetchurl, lib }:
+    gtags-mode = callPackage ({ elpaBuild
+                              , emacs
+                              , fetchurl
+                              , lib }:
       elpaBuild {
         pname = "gtags-mode";
         ename = "gtags-mode";
-        version = "1.1.0.20240313.5421";
+        version = "1.5.0.20240425.21931";
         src = fetchurl {
-          url = "https://elpa.gnu.org/devel/gtags-mode-1.1.0.20240313.5421.tar";
-          sha256 = "134h3w1gcvncm12yq6ls8xp8587r06vl7qr359rnkvc78sh07c9q";
+          url = "https://elpa.gnu.org/devel/gtags-mode-1.5.0.20240425.21931.tar";
+          sha256 = "13gdalm2n75yifpfy2wsbf47l6q4rklvd4akszn423nmcl9bnb8x";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -2884,7 +2878,7 @@
         version = "0.0.1.0.20190417.81229";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/guess-language-0.0.1.0.20190417.81229.tar";
-          sha256 = "0xzaq5wm20jkbimg60na2if7zpxlbddqbr9hadg3qqswkg4zp1v7";
+          sha256 = "167cz86pfxxszr57v312m9gb0l9318mvgg2lld6m5ppgzfmxlmnm";
         };
         packageRequires = [ cl-lib emacs nadvice ];
         meta = {
@@ -2899,7 +2893,7 @@
         version = "1.0.0.0.20221012.11633";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/hcel-1.0.0.0.20221012.11633.tar";
-          sha256 = "0hmrb914pilsqvqlw28iy93mkw0h3isyxd0dmw5k3sf9x8zlifh9";
+          sha256 = "03k08w10bvl6fz7nkmv2d7kksphxigw6cwfhfq0kkgxn4l8h37an";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -2914,7 +2908,7 @@
         version = "0.5.0.20201214.121301";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/heap-0.5.0.20201214.121301.tar";
-          sha256 = "0i16nc0rc5q2hrqamdqfrf8rzw9msi1a9sad2jq68dlbyv113l6n";
+          sha256 = "0917bfrdiwwmdqmnpy2cg1dn7v5gyl7damwp6ld7sky6v3d113ya";
         };
         packageRequires = [];
         meta = {
@@ -2932,7 +2926,7 @@
         version = "1.2.0.20231107.184113";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/hiddenquote-1.2.0.20231107.184113.tar";
-          sha256 = "0zgnxfcfd78c755rykmbnkvxx5lfpk7z3n8qky0lf3kj2hwas27v";
+          sha256 = "0iy7mxqhph4kmp4a96r141f4dpk5vwiydx9i9gx5c13zzwvy2y7r";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -2949,7 +2943,7 @@
         version = "0.4.0.20201214.173014";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/highlight-escape-sequences-0.4.0.20201214.173014.tar";
-          sha256 = "1av3fzavy83xjbd52dnql6i95993gyxfhkd1san6c3hi0lcnh3vw";
+          sha256 = "13x8750r3zn9sqbsxliiipk6kfnpg7clmd49niyrh80x9nj4pf72";
         };
         packageRequires = [];
         meta = {
@@ -2967,7 +2961,7 @@
         version = "1.1.1.0.20201201.93957";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/hook-helpers-1.1.1.0.20201201.93957.tar";
-          sha256 = "01iimwwy274kpc0vpy9barfq1rakfrj0d4v3akrzwscnfkxzm1ms";
+          sha256 = "0x3358k5lglnb4yf27c2ybzlsw9jp4n4jh5sizczl9n8g1vxbgkb";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -2984,7 +2978,7 @@
         version = "0.1.0.20221221.80245";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/html5-schema-0.1.0.20221221.80245.tar";
-          sha256 = "1k3a653n3whprkhc1pc7q1dsc00g2w6923p74ap64ymdv6sx6pw2";
+          sha256 = "15f1nhsgpp0mv8mdrvv0jnscq0j23ggriw2d2dw26sr6lv93w2r4";
         };
         packageRequires = [];
         meta = {
@@ -2999,7 +2993,7 @@
         version = "0.15.0.0.20221030.224757";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/hydra-0.15.0.0.20221030.224757.tar";
-          sha256 = "1ici53s3h7syvzrvz4l5q8790fgfl9wfhdrx2mc0wdhc9jwgxif0";
+          sha256 = "1d8xdxv9j3vb0jkq6bx3f6kbjc990lbmdr78yqchai861hhllmdn";
         };
         packageRequires = [ emacs lv ];
         meta = {
@@ -3014,10 +3008,10 @@
       elpaBuild {
         pname = "hyperbole";
         ename = "hyperbole";
-        version = "9.0.2pre0.20240322.162839";
+        version = "9.0.2pre0.20240420.120926";
         src = fetchurl {
-          url = "https://elpa.gnu.org/devel/hyperbole-9.0.2pre0.20240322.162839.tar";
-          sha256 = "14m1gnkbr9sg8i5bxwar71qs23i3wnqlfwf8cac76ihpminfzz1f";
+          url = "https://elpa.gnu.org/devel/hyperbole-9.0.2pre0.20240420.120926.tar";
+          sha256 = "1mr05p3lhz1xnivl8mqhzdw9qrh0klasjisl75gn14n7l233nir7";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -3032,7 +3026,7 @@
         version = "0.3.0.20240219.40214";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/ilist-0.3.0.20240219.40214.tar";
-          sha256 = "0y8qziqq70qwxffx7fy8b6grbsxh22dmbrgxpx9a8q4zq9257j90";
+          sha256 = "0nxwvnpnyccx384f8ik0z8a74fksvwrmpdzk4wia1x6wdwwvblvs";
         };
         packageRequires = [];
         meta = {
@@ -3050,7 +3044,7 @@
         version = "0.36.0.20230925.194622";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/inspector-0.36.0.20230925.194622.tar";
-          sha256 = "1pn6p9hiar9fsjxxs7wmz2kcfaf31pyhar2wmb3bkm1md98zhirx";
+          sha256 = "1g989zgbhila0f4yca70iwgnqr0zcainji9mps0ywrmlmn270gdv";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -3065,7 +3059,7 @@
         version = "2.6.0.20211231.163129";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/ioccur-2.6.0.20211231.163129.tar";
-          sha256 = "0vgb0p6gb2djrqviq2ifvkkd7zyp094z2jsly52i14j153cvi9pd";
+          sha256 = "0v048d1p95km3jwgs6x805fjg6qfv5pjwdwia1wzl9liqai21v1c";
         };
         packageRequires = [ cl-lib emacs ];
         meta = {
@@ -3083,7 +3077,7 @@
         version = "0.8.0.20240310.84654";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/isearch-mb-0.8.0.20240310.84654.tar";
-          sha256 = "1n1lb1gcifd1m2pk4zgij3gd8500m4jhd6kgzrjy15cci34xlhsf";
+          sha256 = "1rb97ir8nbv7ici8isjcm4bfaxakd6a05yxv9as2wv9xl8fzfhwq";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -3101,7 +3095,7 @@
         version = "0.1.1.0.20221221.80300";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/iterators-0.1.1.0.20221221.80300.tar";
-          sha256 = "14psdlyar90zhq091w39z2zkfi99x4dq2zrnhnbzwll0sr5q7j7z";
+          sha256 = "10cx933rk7f92jk8q87b69ls3w823fwxnr7i6j0bxpzjx66q15yk";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -3113,10 +3107,10 @@
       elpaBuild {
         pname = "ivy";
         ename = "ivy";
-        version = "0.14.2.0.20240214.214034";
+        version = "0.14.2.0.20240405.203954";
         src = fetchurl {
-          url = "https://elpa.gnu.org/devel/ivy-0.14.2.0.20240214.214034.tar";
-          sha256 = "0y7fakcrzwghgg1pvlgbsp1ziidh7vyy22nm0ph4bsq4il16fm9m";
+          url = "https://elpa.gnu.org/devel/ivy-0.14.2.0.20240405.203954.tar";
+          sha256 = "02mkfciafhdc9b41s0kv07l9z77zyq7a2j1ljdiwbmcbkdis028p";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -3136,7 +3130,7 @@
         version = "0.14.2.0.20240214.214218";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/ivy-avy-0.14.2.0.20240214.214218.tar";
-          sha256 = "0qrrvkb6kl83lxikr3ags4mbxi015qy9l34dnjb5580zgcsjvqc8";
+          sha256 = "1i3hrc5pb30qkzzpiza0mff97132b04sglg39mg0ad05hl3sq5dc";
         };
         packageRequires = [ avy emacs ivy ];
         meta = {
@@ -3155,7 +3149,7 @@
         version = "0.3.2.0.20190909.192125";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/ivy-explorer-0.3.2.0.20190909.192125.tar";
-          sha256 = "1h4yp4xp5kqirlxhbg425v7fh9zphwkqflvf4qf0xf275w4i8g88";
+          sha256 = "1jvahaswknvaia62cq8bz5lx55fb1c07zr63n7awcp0sajk3ph3z";
         };
         packageRequires = [ emacs ivy ];
         meta = {
@@ -3175,7 +3169,7 @@
         version = "0.14.2.0.20240214.214337";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/ivy-hydra-0.14.2.0.20240214.214337.tar";
-          sha256 = "1k719hy80hs0019qza0vcpvgxpfsmkkz6j8hs3bfbpmzg0pj54ph";
+          sha256 = "1paqprwizhavr1kfijfbr0my3ncmw94821d3c9qj1fnjkp3nfj4x";
         };
         packageRequires = [ emacs hydra ivy ];
         meta = {
@@ -3195,7 +3189,7 @@
         version = "0.6.3.0.20211217.23411";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/ivy-posframe-0.6.3.0.20211217.23411.tar";
-          sha256 = "1d1yhydqcbdsya7rnkxd2c05p7vd6iixkx814cl9j1k14amvl46w";
+          sha256 = "03v4k7hx2bdxhjghanpmy9r50q9ksmz2xcwypxxhyywlglfk0d69";
         };
         packageRequires = [ emacs ivy posframe ];
         meta = {
@@ -3213,7 +3207,7 @@
         version = "0.0.4.0.20240204.184721";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/jami-bot-0.0.4.0.20240204.184721.tar";
-          sha256 = "0klkzj83cqc1pp2q46067wq3gpxkmgcsb24s9mcccrwsrvqbgm9s";
+          sha256 = "04zdnrah3jypkyx8dl0ns7cjcws5yv4d56ixaa94vjjjvyw9d8mv";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -3231,7 +3225,7 @@
         version = "0.11.0.0.20231010.221311";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/jarchive-0.11.0.0.20231010.221311.tar";
-          sha256 = "0px6ki34v029i9wif1pzs500gqj1ppaj0zdn96535zk22b137dfn";
+          sha256 = "122qffkbl5in1y1zpphn38kmg49xpvddxzf8im9hcvigf7dik6f5";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -3246,7 +3240,7 @@
         version = "0.9.1.0.20221221.80314";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/javaimp-0.9.1.0.20221221.80314.tar";
-          sha256 = "07qmxqsp9gbdr7pxv4f8826l50gbwcxs2f5zw3v88h64rgrkll5c";
+          sha256 = "0dj7mzdfj1gvd18mdnf19pv5zljhhada6a5s3bm5drpw12vx5334";
         };
         packageRequires = [];
         meta = {
@@ -3264,7 +3258,7 @@
         version = "1.1.0.20221221.80333";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/jgraph-mode-1.1.0.20221221.80333.tar";
-          sha256 = "1dljzr1f0vdhsrw8wksz4gq1q0vwl0136diwzrxh4hwya97mvsrn";
+          sha256 = "1ddmyxanfnqfmwx3ld25awm4qhwbzavla8xan261nyh4wwnm8hfq";
         };
         packageRequires = [ cl-lib ];
         meta = {
@@ -3276,10 +3270,10 @@
       elpaBuild {
         pname = "jinx";
         ename = "jinx";
-        version = "1.4.0.20240311.82108";
+        version = "1.6.0.20240415.42305";
         src = fetchurl {
-          url = "https://elpa.gnu.org/devel/jinx-1.4.0.20240311.82108.tar";
-          sha256 = "086231zh82hb2lz66m16hcvc7ncirn4zjx5hc5kmgzdp9aci8k8w";
+          url = "https://elpa.gnu.org/devel/jinx-1.6.0.20240415.42305.tar";
+          sha256 = "12jvkb9nis5kin7ii7aan7b2d8cd5q1f9qpp6g506m18gdi12f48";
         };
         packageRequires = [ compat emacs ];
         meta = {
@@ -3294,7 +3288,7 @@
         version = "0.4.0.20240323.72834";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/jit-spell-0.4.0.20240323.72834.tar";
-          sha256 = "14lqji9qyki7yq1kr1hc1ikcphvk18js3mp1rwx239mh3v079f0n";
+          sha256 = "1as5s3y1hgjzaz2325rayg0xm80wq2frswcxcarywn85gyfbpskn";
         };
         packageRequires = [ compat emacs ];
         meta = {
@@ -3310,10 +3304,10 @@
       elpaBuild {
         pname = "js2-mode";
         ename = "js2-mode";
-        version = "20231224.0.20240310.175505";
+        version = "20231224.0.20240418.608";
         src = fetchurl {
-          url = "https://elpa.gnu.org/devel/js2-mode-20231224.0.20240310.175505.tar";
-          sha256 = "1q99zwhk0cdlr161zi38sz412y69k7nh8wa6scz5mi4v07vjrr9g";
+          url = "https://elpa.gnu.org/devel/js2-mode-20231224.0.20240418.608.tar";
+          sha256 = "0l0pcq8v2mnig6jb2qamnm3ih37bl0vlknzqkp3vsznlasjm5srj";
         };
         packageRequires = [ cl-lib emacs ];
         meta = {
@@ -3328,7 +3322,7 @@
         version = "0.2.0.20221221.80401";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/json-mode-0.2.0.20221221.80401.tar";
-          sha256 = "10rgam19spjrqfmpvxnhp4akgz1ya6l4kvzdyhavgi03bd8c8gxn";
+          sha256 = "0hr0dqnz3c9bc78k3nnwrhwqhgyjq1qpnjfa7wd9bsla3gfp88hk";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -3343,10 +3337,10 @@
       elpaBuild {
         pname = "jsonrpc";
         ename = "jsonrpc";
-        version = "1.0.25.0.20240312.132224";
+        version = "1.0.25.0.20240427.91928";
         src = fetchurl {
-          url = "https://elpa.gnu.org/devel/jsonrpc-1.0.25.0.20240312.132224.tar";
-          sha256 = "12x9i0m655nck41cv6kap814bzdw867wirnqbqyx8q80vmhxar9p";
+          url = "https://elpa.gnu.org/devel/jsonrpc-1.0.25.0.20240427.91928.tar";
+          sha256 = "18x620ayb9bwp2crxn2mibl7arqc4dzhaykmp5lfqibjkx6qmm9i";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -3361,7 +3355,7 @@
         version = "3.1.0.20231015.14814";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/jumpc-3.1.0.20231015.14814.tar";
-          sha256 = "04qd2n7lsfcxw0j3h27dfp6gkjzlgp6562gwydmqbwfrd87a7qdd";
+          sha256 = "1v8jxyvs0540w6rdsy96a49lb8nhrq4r66mmvc42j8lh7k4nggdw";
         };
         packageRequires = [];
         meta = {
@@ -3380,7 +3374,7 @@
         version = "0.2.2.0.20240321.120430";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/kind-icon-0.2.2.0.20240321.120430.tar";
-          sha256 = "11f82zrdf5fmpbfv076pg55d0pybjv13wyl62pymcgw1i1jjsach";
+          sha256 = "1cwp2cc2qy36s4zz6arfr760a9x77h0cj42q6a0s32l56sddh7ws";
         };
         packageRequires = [ emacs svg-lib ];
         meta = {
@@ -3395,7 +3389,7 @@
         version = "1.1.5.0.20220316.84759";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/kiwix-1.1.5.0.20220316.84759.tar";
-          sha256 = "1w0701chsjxnc19g7qd8aipb9vsncfmccgpkw9w65fcmcr7v0ipf";
+          sha256 = "0pi543y1gzkhi9chzwfmp9is8jnp31wx69m9355afrvxdncq6gna";
         };
         packageRequires = [ emacs request ];
         meta = {
@@ -3410,7 +3404,7 @@
         version = "0.1.0.20221221.80420";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/kmb-0.1.0.20221221.80420.tar";
-          sha256 = "03jgn57h4i3rdfk4qankz3fivrglbxd1y86bm2k7ansdq8a5f7kn";
+          sha256 = "00zqrfh1nqn01azmkd2gy3il48h1sddp6addj9yfq4kwd7ylhym5";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -3425,7 +3419,7 @@
         version = "1.0.0.20221221.80428";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/landmark-1.0.0.20221221.80428.tar";
-          sha256 = "1jab8b832x4zf6kxfk7n80rc6jhzxsdnmck9jx3asxw9013cc6c8";
+          sha256 = "1rwiysmynp2z4bfynhf9k1zd3y5s6dyp2312vq1rhyifgdd8mivq";
         };
         packageRequires = [];
         meta = {
@@ -3445,7 +3439,7 @@
         version = "1.5.4.0.20230903.170436";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/latex-table-wizard-1.5.4.0.20230903.170436.tar";
-          sha256 = "1k6jcmj26p3xg73044yprj554bihr9gk5j6ip3cphdkm1c6b3663";
+          sha256 = "1y1crsd29fvqabzwzki7jqziarycix6bib0cmxlrfsqs95y7dr5w";
         };
         packageRequires = [ auctex emacs transient ];
         meta = {
@@ -3460,7 +3454,7 @@
         version = "4.5.5.0.20230803.74443";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/leaf-4.5.5.0.20230803.74443.tar";
-          sha256 = "1ixyiy2zq3v0vz1jbazba41x3m3azb6zvpjm0721dakkqv8k7idj";
+          sha256 = "1xkqwkkk3k5k3lg10amh2lvric2xcqd35ad30c0jyvzn9fsxkbn0";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -3475,7 +3469,7 @@
         version = "0.12.0.20240303.95600";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/lentic-0.12.0.20240303.95600.tar";
-          sha256 = "08q7rkf2dxmwllpvm01v9bk7n0zynrqjmrsy3mrg4fnmdm9sw257";
+          sha256 = "0w6fl0yzmh0gd3d5d5049zrx341x0jrj48g265jy4jywdvk621kv";
         };
         packageRequires = [ dash emacs m-buffer ];
         meta = {
@@ -3494,7 +3488,7 @@
         version = "0.2.0.20240314.214448";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/lentic-server-0.2.0.20240314.214448.tar";
-          sha256 = "0nv50f4qa98cmj7r8azxbms6wbm1ij3bfld0fk1cqhn5b054ly0b";
+          sha256 = "1mg12bkwsqm4nwwwmpfx3dav583i96dsk5ap5hjiz2ggwwrmrq8h";
         };
         packageRequires = [ lentic web-server ];
         meta = {
@@ -3512,7 +3506,7 @@
         version = "1.0.6.0.20240102.14710";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/let-alist-1.0.6.0.20240102.14710.tar";
-          sha256 = "14iz361gkd307g6zv4syxmy5kfaimrha7a1jhd6cjbf1gzfrnff6";
+          sha256 = "1iyw8kaqgd5kmfzyzcmrnaa40bn6azvhlmsppnvfnwxgslcjgp1p";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -3527,7 +3521,7 @@
         version = "1.2.0.20240216.82808";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/lex-1.2.0.20240216.82808.tar";
-          sha256 = "109sprgslx2gh6frqyhcsczi59bb6298lvrfbn0qjggxsrmc486z";
+          sha256 = "0mh2jk838216mwv6bab28mq9nb5617c5y7s0yqynkz3vkarnnxx1";
         };
         packageRequires = [];
         meta = {
@@ -3542,7 +3536,7 @@
         version = "1.0.0.0.20240117.24849";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/lin-1.0.0.0.20240117.24849.tar";
-          sha256 = "06ibnd4r5f6xw0qk8kk2a67dalb8a6yiy2fkvhi4pb59sw9gwrk0";
+          sha256 = "1yjqq1zzv0a7ydhjjh7ycgwd8fzlkvza3m8dm9wa45lqljf5ysim";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -3561,10 +3555,10 @@
       elpaBuild {
         pname = "listen";
         ename = "listen";
-        version = "0.9pre0.20240322.72611";
+        version = "0.10pre0.20240419.165028";
         src = fetchurl {
-          url = "https://elpa.gnu.org/devel/listen-0.9pre0.20240322.72611.tar";
-          sha256 = "0k50isjazhx0hbmxw3s2p2ny56il5ywbsq1bda6av86ifzr1620c";
+          url = "https://elpa.gnu.org/devel/listen-0.10pre0.20240419.165028.tar";
+          sha256 = "1bmjnigb4ly14i3n7wgd0jx4k0g06cf2n3dapfdwlv80bi57x20a";
         };
         packageRequires = [ emacs persist taxy taxy-magit-section transient ];
         meta = {
@@ -3576,10 +3570,10 @@
       elpaBuild {
         pname = "llm";
         ename = "llm";
-        version = "0.12.1.0.20240323.232518";
+        version = "0.12.3.0.20240331.11827";
         src = fetchurl {
-          url = "https://elpa.gnu.org/devel/llm-0.12.1.0.20240323.232518.tar";
-          sha256 = "16y64vc84f14rcsbgg6cl0c9dc0xi0m2jks30m4l5khya7bkkj0x";
+          url = "https://elpa.gnu.org/devel/llm-0.12.3.0.20240331.11827.tar";
+          sha256 = "0nc9p0cjxzmfrxrir45lj6yyqwpaw30rdgbhw5dl83shnps4fi58";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -3594,7 +3588,7 @@
         version = "1.4.0.20230105.113402";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/lmc-1.4.0.20230105.113402.tar";
-          sha256 = "0pw31akqdf59y9cxk25y8z5643szd4ybhbcmj91i1k9gkhdqhh1x";
+          sha256 = "0ldwr9gw0bkcj43w5x84qwq2gvv2nr53711wlh42zawh0dyhm8h7";
         };
         packageRequires = [ cl-lib emacs ];
         meta = {
@@ -3612,7 +3606,7 @@
         version = "0.0.5.0.20221221.80456";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/load-dir-0.0.5.0.20221221.80456.tar";
-          sha256 = "1hdyy212iz057q2znp8pb6ns8gyi6f5xbr6kvs02rybsd9wjv40s";
+          sha256 = "00ynwml6xf7341z1w0wz1afh9jc4v8ggc8izy8qcvdiawxc418iq";
         };
         packageRequires = [ cl-lib ];
         meta = {
@@ -3629,7 +3623,7 @@
         version = "1.3.2.0.20230214.53224";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/load-relative-1.3.2.0.20230214.53224.tar";
-          sha256 = "027mlcg38x2yb3j9lnjzfg84fj8hah7sd9nnndf6fkpabi7bbysq";
+          sha256 = "19pkb7xqyllll2pgyqs7bv0qfbv6n9i5qlx9rjzm4ws0c9j464zd";
         };
         packageRequires = [];
         meta = {
@@ -3661,7 +3655,7 @@
         version = "1.2.4.0.20201130.183958";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/loccur-1.2.4.0.20201130.183958.tar";
-          sha256 = "1skpv5pmbkhn5vx2c4dqqx4ds3pj4z2lg6ka0pas9xkijdbfy7v0";
+          sha256 = "1ghig684f2r6dl5czym3d5hqhf72y1hilnhbk95lg890cc0yacir";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -3676,7 +3670,7 @@
         version = "1.1.1.0.20240224.55443";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/logos-1.1.1.0.20240224.55443.tar";
-          sha256 = "10z609m2ak37yfbmlgv258j2rsvkq40h5rzmdwk8ibldz3n6ywgd";
+          sha256 = "1zr2g2bj2xkjwj509vijqdqhx1dgmbr73i605677hjw01d2skch3";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -3691,7 +3685,7 @@
         version = "1.0.0.0.20221125.50733";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/luwak-1.0.0.0.20221125.50733.tar";
-          sha256 = "06kl3c6b7z9wzw44c6l49vnj4k25g4az8lps8q7kd7w7f0cjn3yx";
+          sha256 = "0b4kxq5im8gvg1zg12b8ii62w0vsf3gacimwd603srfc5l1rbvcw";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -3706,7 +3700,7 @@
         version = "0.15.0.0.20221030.224757";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/lv-0.15.0.0.20221030.224757.tar";
-          sha256 = "0xjizznzwsydwqs2hvcbi8nqcyzvca0w3m48dpi2xwvnm22a7v48";
+          sha256 = "07m1m2rgwnb7916hzdjccnq4is0z7m5mwmvc0f7mpc4h61sa6cdn";
         };
         packageRequires = [];
         meta = {
@@ -3724,7 +3718,7 @@
         version = "0.16.0.20240302.175529";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/m-buffer-0.16.0.20240302.175529.tar";
-          sha256 = "1scjp8f89a7mn7wlw0sgix8hk4dw6lpz0gakvfr7c5mcmm0bzhlr";
+          sha256 = "18lj0gb56xhwrbihijy4p5lyxqvdfcwyabcd30qy1dn4k715v614";
         };
         packageRequires = [ seq ];
         meta = {
@@ -3739,7 +3733,7 @@
         version = "3.3.1.0.20240221.84915";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/map-3.3.1.0.20240221.84915.tar";
-          sha256 = "04zywlimai9v6131ksh3vkp6zlrnx9wr36hr0cg0yh2vhsj09kkm";
+          sha256 = "0cmxxgxi7nsgbx4a94pxhn4y6qddp14crfl2250nk6a1h17zvsnn";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -3755,10 +3749,10 @@
       elpaBuild {
         pname = "marginalia";
         ename = "marginalia";
-        version = "1.5.0.20240323.201536";
+        version = "1.6.0.20240404.45149";
         src = fetchurl {
-          url = "https://elpa.gnu.org/devel/marginalia-1.5.0.20240323.201536.tar";
-          sha256 = "11sjdmif14bcl3cn2sn9a20lvyw8qrjqjscwcq0aid0lqwswmvi4";
+          url = "https://elpa.gnu.org/devel/marginalia-1.6.0.20240404.45149.tar";
+          sha256 = "1bqynrmb99691k0cmdn30g780356gff30bd7lirlriraabj19y7h";
         };
         packageRequires = [ compat emacs ];
         meta = {
@@ -3775,7 +3769,7 @@
         version = "0.2.2.0.20221221.80510";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/markchars-0.2.2.0.20221221.80510.tar";
-          sha256 = "0snw8hc65mkmmlaj1x87gwkyrz43qdm5ahnnjh09dad5pfd1s0v0";
+          sha256 = "0f1n1jzhksl5cl5c4n2arqhj2zkwzs8i4yzdz39y2b51x2gi2yav";
         };
         packageRequires = [];
         meta = {
@@ -3792,7 +3786,7 @@
         version = "1.3.0.20220828.204754";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/math-symbol-lists-1.3.0.20220828.204754.tar";
-          sha256 = "11n6lmh9q6j0aamd4wbij0ymdfpdmqm0iqysqvk2vnnq6ly4hw3f";
+          sha256 = "0q038qwcq7lg3a7n451gw80xlwv4hczz3432xcx00hxgvlh744yc";
         };
         packageRequires = [];
         meta = {
@@ -3807,7 +3801,7 @@
         version = "1.0.0.0.20240320.41315";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/mct-1.0.0.0.20240320.41315.tar";
-          sha256 = "062mk5kqivhgvfk81rsa21bqkzk2h3wgfq1prjppndfw8y4cajpb";
+          sha256 = "02rifid9g3q6a92xp1xpkmmm00awhxfk573lbapcl473sjy5dwfp";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -3824,7 +3818,7 @@
         version = "0.2.0.20201201.223908";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/memory-usage-0.2.0.20201201.223908.tar";
-          sha256 = "1klpmxgkmc9rb8daldllfwvwagg9sc01kq2jp1vq2wsbrvgpai6d";
+          sha256 = "1jybms0756sswwdq8gqc6kpp5m7y971v4yzcmhraykhf32rwf4rq";
         };
         packageRequires = [];
         meta = {
@@ -3839,7 +3833,7 @@
         version = "0.3.0.20221221.80722";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/metar-0.3.0.20221221.80722.tar";
-          sha256 = "18hzsasajy00m4lvb8pqmpipb3a4m3g9mn151vqndd5hnk08wafn";
+          sha256 = "08xcxx9wbjkqf6s1rbsp54f648r8n122k66nfd8ibv9qbd8qvmxq";
         };
         packageRequires = [ cl-lib ];
         meta = {
@@ -3854,7 +3848,7 @@
         version = "0.2.0.20221221.80736";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/midi-kbd-0.2.0.20221221.80736.tar";
-          sha256 = "1ssr8srsdd3f0ijyrx7mcyshb4jdcdi9klm9akablnwzx9z2scm8";
+          sha256 = "0fz9r0y3qdnaq9wi00151xzqh3ygwcfw6yl32cs1vaaxv2czkjai";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -3869,7 +3863,7 @@
         version = "1.6.0.20201130.184335";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/mines-1.6.0.20201130.184335.tar";
-          sha256 = "0xcb0faxsqzrjqxj5z3r8b3hyd8czb5vadzy6shfzkp5xk6w0bny";
+          sha256 = "0vl93im89fg72wpcqdhg1x2l4iybznh6gjvpkr1i29y05fsx2aad";
         };
         packageRequires = [ cl-lib emacs ];
         meta = {
@@ -3887,7 +3881,7 @@
         version = "0.5.0.20220921.71345";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/minibuffer-header-0.5.0.20220921.71345.tar";
-          sha256 = "0d3mj2j6bkvci78yx9gidgkig6qvg99zhh3g4z5fqsymyndi1l1w";
+          sha256 = "1s77h5s2abpm75k57zcp1s525qs74sdm6vpzlkvqjz8lpn8zkkp0";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -3904,7 +3898,7 @@
         version = "0.1.0.20221221.80745";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/minibuffer-line-0.1.0.20221221.80745.tar";
-          sha256 = "1zq1y69wwci8r840ns3izq59hr95b8ncyha0q06gqrv989jamrjw";
+          sha256 = "10gl1lnihawv9dw2rzaydyh8cdgpqgj7y8jsr6hjgqv82hxqyccn";
         };
         packageRequires = [];
         meta = {
@@ -3919,7 +3913,7 @@
         version = "1.4.0.20201201.162630";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/minimap-1.4.0.20201201.162630.tar";
-          sha256 = "1r062v8a4r4d78biz9d3jk5y8w3ahhamr05cnhfwh2aib4byplf1";
+          sha256 = "0h0ydmfinr82j0ifkgwjhc8blg6z2f5k0711fwrcbx8wrgrvfh5v";
         };
         packageRequires = [];
         meta = {
@@ -3938,7 +3932,7 @@
         version = "0.5.11.0.20240222.42825";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/mmm-mode-0.5.11.0.20240222.42825.tar";
-          sha256 = "1bsccf8i48r4zjzg7pqi47n2r09dj8baylw83ksdrzc57n1s90x7";
+          sha256 = "037g19hdya14q7wivdcw8h7wyx8lb8pw5waya3ak435cyfmpg1a7";
         };
         packageRequires = [ cl-lib emacs ];
         meta = {
@@ -3953,10 +3947,10 @@
       elpaBuild {
         pname = "modus-themes";
         ename = "modus-themes";
-        version = "4.4.0.0.20240322.51913";
+        version = "4.4.0.0.20240427.84336";
         src = fetchurl {
-          url = "https://elpa.gnu.org/devel/modus-themes-4.4.0.0.20240322.51913.tar";
-          sha256 = "1ilblm5hgynihfm60q44fw9njhir1nndz7mhxbbsyhlm42bg30vc";
+          url = "https://elpa.gnu.org/devel/modus-themes-4.4.0.0.20240427.84336.tar";
+          sha256 = "003kzj9s22qyzvavzh9q0x5dh6jg3n8ykvbihkx5hw16ar7cxmgg";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -3968,10 +3962,10 @@
       elpaBuild {
         pname = "mpdired";
         ename = "mpdired";
-        version = "2pre0.20240319.164728";
+        version = "2pre0.20240414.172616";
         src = fetchurl {
-          url = "https://elpa.gnu.org/devel/mpdired-2pre0.20240319.164728.tar";
-          sha256 = "18xhxlxzl5kapjzhaqw0zsi5avp2wb0vrxj9rsigsjcr0p09asrd";
+          url = "https://elpa.gnu.org/devel/mpdired-2pre0.20240414.172616.tar";
+          sha256 = "0c7rjws601wh7bxg549hbbfanh5lxwrhrm03ay2ziriswqdrq5ng";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -3988,7 +3982,7 @@
         version = "1.14.0.20221221.80812";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/multi-mode-1.14.0.20221221.80812.tar";
-          sha256 = "0054sb4jp1xp6bf0zh42k6blhvlpw5yr38fg5pm5gv8a6iw3gc9x";
+          sha256 = "1r41alsvaab8h5cngy0hjs78shv60qp1g68jppl5qlhd6a7h95ih";
         };
         packageRequires = [];
         meta = {
@@ -4006,7 +4000,7 @@
         version = "1.1.10.0.20220605.120254";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/multishell-1.1.10.0.20220605.120254.tar";
-          sha256 = "1vs9w1v8hqwfhypk0nz7l2n7q1rf7nx2nwlljqn8clx817glqlfm";
+          sha256 = "0pl45mwwgdf505sviyzacalq6kisq0pnh99i1cnclrmjkjy6yxz9";
         };
         packageRequires = [ cl-lib ];
         meta = {
@@ -4021,7 +4015,7 @@
         version = "3.20.2.0.20240209.184001";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/muse-3.20.2.0.20240209.184001.tar";
-          sha256 = "0jp0qmak49gnx121nkay70dbld26z6jvgc7d1ycgyfl49flqhjb4";
+          sha256 = "1sn5siingpzg4y5wjc3ff2ln98gb7hhvwmhnvhmmqbnb8r459vs0";
         };
         packageRequires = [];
         meta = {
@@ -4036,7 +4030,7 @@
         version = "0.1.0.20221221.80834";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/myers-0.1.0.20221221.80834.tar";
-          sha256 = "1hk1587bni5sn9q91yv43s1i5dvbirbh2md46cx7c9y69bshyaqh";
+          sha256 = "11nwn1nysr09r1701cd3wvkzn01s19l6lla0f33vqm66ahj9yldh";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -4051,7 +4045,7 @@
         version = "0.4.0.20230111.104526";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/nadvice-0.4.0.20230111.104526.tar";
-          sha256 = "0kcgdrcsjf4rqcb9k95amcvx3qx8qx7msnwjy21a87vc0w8gpv3r";
+          sha256 = "0855x3vgp0i6kmi5kf8365xqnj92k9lwqyfn40i59fp4jj3c00kr";
         };
         packageRequires = [];
         meta = {
@@ -4069,7 +4063,7 @@
         version = "1.0.2.0.20230112.95905";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/nameless-1.0.2.0.20230112.95905.tar";
-          sha256 = "0a8zjsm75k02ixynd5jxxniyj5yn4gbcvidi03jkk9z3vxr19vi7";
+          sha256 = "1b44w8jkqqsi995a2daw05ks64njlgpkab6m3iy3lx3v8fggjahp";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -4089,7 +4083,7 @@
         version = "20151201.0.0.20220425.173515";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/names-20151201.0.0.20220425.173515.tar";
-          sha256 = "1rd7v5yvb2d5zxcqmdjg7hmhgd12lhcrg03wm6sd1lq3jw0hbxhr";
+          sha256 = "1s91v83jkwxjl1iqrmjy60rnnqcgzly0z8chp87f7i22fj5gjz4h";
         };
         packageRequires = [ cl-lib emacs nadvice ];
         meta = {
@@ -4107,7 +4101,7 @@
         version = "0.3.0.20230417.100538";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/nano-agenda-0.3.0.20230417.100538.tar";
-          sha256 = "1v7dx53zl0mw8ap91kvzwqb4kiikg14dsw3r49n0j5766nc320fv";
+          sha256 = "1fhpic6zimk81a7w6m9hl6iw0vniz3pl775sxyg167ysn5sqsl2y";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -4125,7 +4119,7 @@
         version = "1.0.1.0.20240318.92455";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/nano-modeline-1.0.1.0.20240318.92455.tar";
-          sha256 = "1ncbyq2753s46aca2kklf5rrgccc1wddbp0qbhcn6v2j1y37c8k5";
+          sha256 = "14n5gmbpnbcrj2h2c12s35pdb93r1hflklpnv0bh5gpla154f6ln";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -4143,7 +4137,7 @@
         version = "0.3.4.0.20240319.93238";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/nano-theme-0.3.4.0.20240319.93238.tar";
-          sha256 = "0i7zxx2y052bn4ry3pr24zmm846zilcvv2pvkzcd450zp84p39hn";
+          sha256 = "0xh3m9c4wq7zvc634nvfvxyyi0snlb67286znmnfkpgb3j84vshk";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -4161,7 +4155,7 @@
         version = "1.1.0.20221221.80909";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/nftables-mode-1.1.0.20221221.80909.tar";
-          sha256 = "11a38dgnnvzsh6k7l8n1fzkn8ma4mj3sv17r2614g4jjkmwkaz0i";
+          sha256 = "149qz88wlapln0b8d9mcmj630vyh2ha65hqb46yrf08fch992cpx";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -4179,7 +4173,7 @@
         version = "1.5.0.20221215.152407";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/nhexl-mode-1.5.0.20221215.152407.tar";
-          sha256 = "10jxk0n8x8lr7chfnr562gmyfmcsh25xc1vsqw802c0y3l8z3jw1";
+          sha256 = "0bdw6lycm1hclz3qzckcpnssrd4i52051dzbs87f9sv6f6v31373";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -4194,7 +4188,7 @@
         version = "1.9.0.20221221.80940";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/nlinum-1.9.0.20221221.80940.tar";
-          sha256 = "1vifq3rlh9zwrqq0zkhdqv1g2pzgndyxjdr21xis6kxdc50s59l1";
+          sha256 = "15kw7r8lz9nb5s0rzgdlj1s1kl1l6nxzr7kmwv5i7b1xhpnyn7xn";
         };
         packageRequires = [];
         meta = {
@@ -4208,10 +4202,10 @@
       elpaBuild {
         pname = "notes-mode";
         ename = "notes-mode";
-        version = "1.30.0.20201201.121157";
+        version = "1.31.0.20240402.80928";
         src = fetchurl {
-          url = "https://elpa.gnu.org/devel/notes-mode-1.30.0.20201201.121157.tar";
-          sha256 = "0jliwzbmn89qfjfd096sa5gia52mqvivg8kif41mrmczbhzgqp6a";
+          url = "https://elpa.gnu.org/devel/notes-mode-1.31.0.20240402.80928.tar";
+          sha256 = "1kiki1b6bx3nn1xgbnh0xnwnhx5wkn0zzlk6jfsks5npj2a4h88g";
         };
         packageRequires = [];
         meta = {
@@ -4229,7 +4223,7 @@
         version = "1.1.0.0.20240117.25556";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/notmuch-indicator-1.1.0.0.20240117.25556.tar";
-          sha256 = "0vcpak68jggjwlwx9qjfp72hidh95lvrivlws1l5mmdcnynqjxyp";
+          sha256 = "003pq429x6yjqv4hw7ryigqmpzrk5frwmlk1ar35z9n83xsnl128";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -4244,7 +4238,7 @@
         version = "2.1.0.0.20240102.22814";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/ntlm-2.1.0.0.20240102.22814.tar";
-          sha256 = "0fxv4s5adajf9v8jg5i6w47xbm0v2qlvab8fa8jsnyi8ilxh1afc";
+          sha256 = "0wr9bhxxdkpfvwla97xrd77dv3321apq1gmcpqadyjvxl44c0km7";
         };
         packageRequires = [];
         meta = {
@@ -4259,7 +4253,7 @@
         version = "1.5.0.20221221.81242";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/num3-mode-1.5.0.20221221.81242.tar";
-          sha256 = "0pwlklfmz0brsq2l4zkvmg18hryc9cszsbyn0ky9n8nz0m9nfxsw";
+          sha256 = "076m1lh9ma1wzavirmy7dq7nsl410n03yf7vq4ljxvbkw801sig7";
         };
         packageRequires = [];
         meta = {
@@ -4274,7 +4268,7 @@
         version = "0.16.0.20221221.81302";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/oauth2-0.16.0.20221221.81302.tar";
-          sha256 = "1hxmwsb56m73qr4nqfh32bhbd8b0bl5yfccsk754sjywpn1wnlpq";
+          sha256 = "1imdggvj98db8cs0s2qx72ifavi6h3flym70zm2g1w8v2fmcq8dj";
         };
         packageRequires = [ cl-lib nadvice ];
         meta = {
@@ -4291,7 +4285,7 @@
         version = "1.0.0.20230908.121002";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/ob-asymptote-1.0.0.20230908.121002.tar";
-          sha256 = "0gldqmldbwa1rsfyzv9h1sl8za6i0k9j3lkar5capl5qs1c0lib1";
+          sha256 = "1lpv4rf7qf1yvpm4j3wiajdk72lgl4gk8qgwflzyq9yvmksakdvp";
         };
         packageRequires = [];
         meta = {
@@ -4306,7 +4300,7 @@
         version = "1.0.0.20210211.73431";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/ob-haxe-1.0.0.20210211.73431.tar";
-          sha256 = "18i9wmchnaz0hnh1bb3sydawxrcxqy1gfp150i69p0miwsfmz7ip";
+          sha256 = "148bly2nf0r64q2cfm0hd6i26bxaans7aj52nv4gb5qxsiqng0ly";
         };
         packageRequires = [];
         meta = {
@@ -4321,7 +4315,7 @@
         version = "0.8.3.0.20201002.84752";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/objed-0.8.3.0.20201002.84752.tar";
-          sha256 = "1ar3i58cb55958dnj88bxa5wnmlz4dnfh76m7nf0kf5sld71l0vf";
+          sha256 = "1fjcl2gm4675l430rdr2lihsj13n24pi9zwjfqvsm4bnqbx9ywiz";
         };
         packageRequires = [ cl-lib emacs ];
         meta = {
@@ -4333,10 +4327,10 @@
       elpaBuild {
         pname = "omn-mode";
         ename = "omn-mode";
-        version = "1.2.0.20221221.81322";
+        version = "1.3.0.20240326.173146";
         src = fetchurl {
-          url = "https://elpa.gnu.org/devel/omn-mode-1.2.0.20221221.81322.tar";
-          sha256 = "0bpp3aj93srdmqbh33k36q9762dzzagymh1rxca2axdfb7q7xsa2";
+          url = "https://elpa.gnu.org/devel/omn-mode-1.3.0.20240326.173146.tar";
+          sha256 = "1iyh0xqm9aag92vj44l4ymrjc0gnn41gckk1l96605cfkwr5m6qa";
         };
         packageRequires = [];
         meta = {
@@ -4354,7 +4348,7 @@
         version = "1.3.3.0.20201127.191411";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/on-screen-1.3.3.0.20201127.191411.tar";
-          sha256 = "123kq277vcm4backwdpmnmkkqiplnnbpf62ppn5cg8zl09r87cl6";
+          sha256 = "1dak8rb89mkdpv3xc2h0kpn09i4l42iavslvkhy2vxj0qq6c1r9p";
         };
         packageRequires = [ cl-lib ];
         meta = {
@@ -4372,7 +4366,7 @@
         version = "1.0.1.0.20230325.141904";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/openpgp-1.0.1.0.20230325.141904.tar";
-          sha256 = "1zpdxm8s7kd936klrsyf72g7my4ffci74cc9gwasgff4r383f000";
+          sha256 = "012svyzmr4rwi2a1v99klyjnwrrfqz8jd053f9xjfm44payfafkg";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -4380,17 +4374,14 @@
           license = lib.licenses.free;
         };
       }) {};
-    orderless = callPackage ({ elpaBuild
-                             , emacs
-                             , fetchurl
-                             , lib }:
+    orderless = callPackage ({ elpaBuild, emacs, fetchurl, lib }:
       elpaBuild {
         pname = "orderless";
         ename = "orderless";
-        version = "1.1.0.20240320.163827";
+        version = "1.1.0.20240401.95916";
         src = fetchurl {
-          url = "https://elpa.gnu.org/devel/orderless-1.1.0.20240320.163827.tar";
-          sha256 = "1iffr6y533z310c47jig8fbg6vyv9a6vlrwn5v4rg0vb3m0i1ah7";
+          url = "https://elpa.gnu.org/devel/orderless-1.1.0.20240401.95916.tar";
+          sha256 = "0w2n1b65hj642a36i6022kmzwgwlb72aicfc6hj3b7rk5zsjg0hc";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -4402,10 +4393,10 @@
       elpaBuild {
         pname = "org";
         ename = "org";
-        version = "9.7pre0.20240324.161811";
+        version = "9.7pre0.20240426.150943";
         src = fetchurl {
-          url = "https://elpa.gnu.org/devel/org-9.7pre0.20240324.161811.tar";
-          sha256 = "02c2zy96ipzyl6abn375zkvsybfbs3067mnv70xrgjhfrd02yfbr";
+          url = "https://elpa.gnu.org/devel/org-9.7pre0.20240426.150943.tar";
+          sha256 = "0n7d6zrwvrism7blfdri19mvrhcc71cga7qwbvpnq0a9mamv1ypy";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -4421,10 +4412,10 @@
       elpaBuild {
         pname = "org-contacts";
         ename = "org-contacts";
-        version = "1.1.0.20230227.141730";
+        version = "1.1.0.20240410.112834";
         src = fetchurl {
-          url = "https://elpa.gnu.org/devel/org-contacts-1.1.0.20230227.141730.tar";
-          sha256 = "0y78hwcranqdlm9lip623v5qaj15gv335lnxaakxra9dfri703fm";
+          url = "https://elpa.gnu.org/devel/org-contacts-1.1.0.20240410.112834.tar";
+          sha256 = "0mns2fkzn1yc968k2nc4y5gys1m7dbcj67mdb8vfj54iwdkw316z";
         };
         packageRequires = [ emacs org ];
         meta = {
@@ -4444,7 +4435,7 @@
         version = "1.1.2.0.20200902.94459";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/org-edna-1.1.2.0.20200902.94459.tar";
-          sha256 = "0s7485x4dblrz2gnnd9qxaq3jph16z5ylp1na3b0mi60v0ibnwa4";
+          sha256 = "043pb34ai8rj515zgbw5nq5x3mkiyqcnk25787qc3mbddi9n9hwq";
         };
         packageRequires = [ emacs org seq ];
         meta = {
@@ -4463,7 +4454,7 @@
         version = "0.0.5.0.20240204.184749";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/org-jami-bot-0.0.5.0.20240204.184749.tar";
-          sha256 = "0gs0f9xdgfylgrdgcxm13m4dw526ps47kqwggdz8y2x94p54p1ny";
+          sha256 = "1zl9xblhppqwddizf7s7l9d4qzcr8d6vgvjwmiw4wvb4lpyba9r4";
         };
         packageRequires = [ emacs jami-bot ];
         meta = {
@@ -4479,10 +4470,10 @@
       elpaBuild {
         pname = "org-modern";
         ename = "org-modern";
-        version = "1.2.0.20240316.110902";
+        version = "1.2.0.20240327.153104";
         src = fetchurl {
-          url = "https://elpa.gnu.org/devel/org-modern-1.2.0.20240316.110902.tar";
-          sha256 = "1jxq281qpr8if9np3qsg8gccg08yzi7szq0vz5v8yy7q4lc27wz2";
+          url = "https://elpa.gnu.org/devel/org-modern-1.2.0.20240327.153104.tar";
+          sha256 = "0gkkcvjbjyr5h8idafc0lppjwdr84y860800ns7z894i89iy01li";
         };
         packageRequires = [ compat emacs ];
         meta = {
@@ -4500,7 +4491,7 @@
         version = "0.1.1.0.20231016.93952";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/org-notify-0.1.1.0.20231016.93952.tar";
-          sha256 = "1bf7q55c63rxwsbbiyqb1z33jbhx04qi6qxx6jnfva6fz0v63ag2";
+          sha256 = "0pxm5pbmsf965daf3y7v5x6ca8ddi2a9d4lm04ky3113zz5ay95d";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -4517,10 +4508,10 @@
       elpaBuild {
         pname = "org-real";
         ename = "org-real";
-        version = "1.0.7.0.20231024.111108";
+        version = "1.0.8.0.20240328.105118";
         src = fetchurl {
-          url = "https://elpa.gnu.org/devel/org-real-1.0.7.0.20231024.111108.tar";
-          sha256 = "199900lvg5jxfspp1papx0aj88vm6addlyv7zhp8bc2f5a9igg21";
+          url = "https://elpa.gnu.org/devel/org-real-1.0.8.0.20240328.105118.tar";
+          sha256 = "018bhg886mhv5wzvahvi36bpmh6lpgfahs2dxcrhlb5jqaf8kj50";
         };
         packageRequires = [ boxy emacs org ];
         meta = {
@@ -4536,10 +4527,10 @@
       elpaBuild {
         pname = "org-remark";
         ename = "org-remark";
-        version = "1.2.1.0.20240323.220226";
+        version = "1.2.2.0.20240325.201734";
         src = fetchurl {
-          url = "https://elpa.gnu.org/devel/org-remark-1.2.1.0.20240323.220226.tar";
-          sha256 = "0vw0arm7jhzrxwfjyqj65xicbr6020k106vb7zaw1iyvwq64fid7";
+          url = "https://elpa.gnu.org/devel/org-remark-1.2.2.0.20240325.201734.tar";
+          sha256 = "1m5fwry6854w1iv6pahvqgyakws31d82l8f14k585rdxx2n8fwzb";
         };
         packageRequires = [ emacs org ];
         meta = {
@@ -4555,10 +4546,10 @@
       elpaBuild {
         pname = "org-transclusion";
         ename = "org-transclusion";
-        version = "1.3.2.0.20240222.204851";
+        version = "1.3.2.0.20240420.151651";
         src = fetchurl {
-          url = "https://elpa.gnu.org/devel/org-transclusion-1.3.2.0.20240222.204851.tar";
-          sha256 = "0gbdhgz0bg6a4zy60wn39f2x4xyag32yxrkcaixsgpcrc3358c0y";
+          url = "https://elpa.gnu.org/devel/org-transclusion-1.3.2.0.20240420.151651.tar";
+          sha256 = "0izvaxis7yc2zfxff3dzsc27r8s4kl65x97rjxhz0cp3iqfsb91x";
         };
         packageRequires = [ emacs org ];
         meta = {
@@ -4577,7 +4568,7 @@
         version = "0.1.4.0.20220312.90634";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/org-translate-0.1.4.0.20220312.90634.tar";
-          sha256 = "1lgnr4swyh1irq7q8x6di1kmglr1h4ph864mz3491pxks9y0hxjx";
+          sha256 = "1fq0h0q5nh92dc9vgp7nmqyz2nl0byd2v6vl5k2lk3rlmbx7jnkz";
         };
         packageRequires = [ emacs org ];
         meta = {
@@ -4595,7 +4586,7 @@
         version = "1.14.0.20240111.181530";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/orgalist-1.14.0.20240111.181530.tar";
-          sha256 = "10cn1p5cwgkivbydpgfrnna5f2qy8vs7j1wl0hky3iyfya1wi24g";
+          sha256 = "05nbkphk3ii3ibfap9y9ss3w0g3qzl6qiynflib1dhbk2v222z3x";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -4610,7 +4601,7 @@
         version = "0.4.0.20221221.81343";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/osc-0.4.0.20221221.81343.tar";
-          sha256 = "1q4sd2pf492gyqhdrkj7qn4zh1x3jhwb1mxgs811k28fl16hanqh";
+          sha256 = "0mlyszhc2nbf5p4jnc6wlq8iipzmy9ymvbszq13myza410nd9xqh";
         };
         packageRequires = [];
         meta = {
@@ -4625,7 +4616,7 @@
         version = "1.3.0.20240122.225511";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/osm-1.3.0.20240122.225511.tar";
-          sha256 = "0b0sdf7n9i4a7jl9xy51g50s04rvjqwvl02adc0cfalang9mk2la";
+          sha256 = "0xddnwrnypqz5l4swwbi5k9qdlv260fyq766vpg31r86z92q7r24";
         };
         packageRequires = [ compat emacs ];
         meta = {
@@ -4643,7 +4634,7 @@
         version = "1.0.6.0.20221221.81352";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/other-frame-window-1.0.6.0.20221221.81352.tar";
-          sha256 = "1w0lqbrgjkf5l7n1zrqlbldznhzb1xshhdg68mxydq97rhbl1msg";
+          sha256 = "11fdg3nl1w4vm46477kwk6d6vz769q726iz5cwknbvjzj8an994s";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -4658,7 +4649,7 @@
         version = "4.3.0.0.20240216.43949";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/pabbrev-4.3.0.0.20240216.43949.tar";
-          sha256 = "08sbsr0dgw1yrfbsfcj9zslwiwvzafmdpflmj5g2bcmlx2jvck9h";
+          sha256 = "0lkqg6qv06ayianrxs9mivy8pny7hzr0743mlaa20adgk681v1s4";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -4673,7 +4664,7 @@
         version = "1.1.3.0.20190227.204125";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/paced-1.1.3.0.20190227.204125.tar";
-          sha256 = "09ain2dq42j6bvvchddr077z9dbsmx09qg88yklqi3pc4rc7f3rv";
+          sha256 = "1ykjmv45kkfa569m8hpvya8a7wvkqrg9nbz28sbxmx79abm1bmmi";
         };
         packageRequires = [ async emacs ];
         meta = {
@@ -4688,7 +4679,7 @@
         version = "0.1.3.0.20180729.171626";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/parsec-0.1.3.0.20180729.171626.tar";
-          sha256 = "1icrhga35n6nvwa8dy939cc2cc1phvqh27xr1blqdxgcyyzm9ava";
+          sha256 = "0lhcj6cjgkq9ha85n0hqcm0ik7avfzw9f8zcklyivwn2bx80r7r7";
         };
         packageRequires = [ cl-lib emacs ];
         meta = {
@@ -4706,7 +4697,7 @@
         version = "0.2.1.0.20240220.204114";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/parser-generator-0.2.1.0.20240220.204114.tar";
-          sha256 = "08apzsgqxld3z2cpxhhygh2wj3mvs4pqxib6gfw4jliipkkrk1k6";
+          sha256 = "1yb3wv183xii4rvj7asccg9cgkv061vprakcpdq99fgc9zdx0maq";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -4724,7 +4715,7 @@
         version = "1.0.0.20221221.81414";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/path-iterator-1.0.0.20221221.81414.tar";
-          sha256 = "12ap8ij593dkba4kahqwzvpd9d62894z4hlplwz0c59qpy90lyxb";
+          sha256 = "1ln9l9x6bj1sp7shc2iafn11yji6lsgm4fm1ji1kfp3my1zhqc40";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -4739,7 +4730,7 @@
         version = "1.0.1.0.20221221.81502";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/peg-1.0.1.0.20221221.81502.tar";
-          sha256 = "1m5wl30zdq6fxllxkqblil6r1dqqsprdnqvlxivka6f0khbc6wdk";
+          sha256 = "0gc41pf2gy01bmjgx09c1kifi6pkhcm8jrbdx1ncblhix76ia4q4";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -4757,7 +4748,7 @@
         version = "0.81.0.20230805.210315";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/perl-doc-0.81.0.20230805.210315.tar";
-          sha256 = "0p4vryw3by2g9kqmmdn6vi01cqgj5pwgfjcimivcxvq7vzvdafz0";
+          sha256 = "0n129rcmn827payv0aqg8iz7dc7wg4rm27hvvw1wwj2k5x5vnd6r";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -4772,7 +4763,7 @@
         version = "0.6.0.20240114.52348";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/persist-0.6.0.20240114.52348.tar";
-          sha256 = "0jml2w7l44l9dkr0bxvfw90a57p3iyya24n0ic6083c10mgnjs89";
+          sha256 = "1k4m2zmcb4l3q39qnx3kfl2wsm4380ih3mf0lc54g9l77fw4rfxr";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -4787,7 +4778,7 @@
         version = "0.0.20240322.152749";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/phpinspect-0.0.20240322.152749.tar";
-          sha256 = "1cm8m3zvqd000zv88md4qnrjlq29x8kl1zsivb1k4q6b0rxpva4g";
+          sha256 = "0060s1p60cqq0llx5m41iwqj1bxl98c444kyhfvdvx3c7z5dapmp";
         };
         packageRequires = [ compat ];
         meta = {
@@ -4802,10 +4793,10 @@
       elpaBuild {
         pname = "phps-mode";
         ename = "phps-mode";
-        version = "0.4.48.0.20240215.72135";
+        version = "0.4.49.0.20240424.65247";
         src = fetchurl {
-          url = "https://elpa.gnu.org/devel/phps-mode-0.4.48.0.20240215.72135.tar";
-          sha256 = "1rizb13l60d6mjg5fdpqgks2q2lihxhbhbhlcdvnc3l6gdgvzq0r";
+          url = "https://elpa.gnu.org/devel/phps-mode-0.4.49.0.20240424.65247.tar";
+          sha256 = "03xz1ig3zsbwixa4hkh7g9ihjxlw2jmzydqldkvjsyv1yhyyf2j4";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -4820,7 +4811,7 @@
         version = "0.1.0.20231126.141402";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/pinentry-0.1.0.20231126.141402.tar";
-          sha256 = "1dc6sd80jrwv2sl679fycd4b3ss7n5c252vy61mv8alpn4vr4jdd";
+          sha256 = "056h9zfbk4mfpvfpli2kr48i5cdcrf73v15id0dk762iy7iz38af";
         };
         packageRequires = [];
         meta = {
@@ -4832,10 +4823,10 @@
       elpaBuild {
         pname = "plz";
         ename = "plz";
-        version = "0.8pre0.20240114.34705";
+        version = "0.8.0.20240425.201348";
         src = fetchurl {
-          url = "https://elpa.gnu.org/devel/plz-0.8pre0.20240114.34705.tar";
-          sha256 = "06wb543xci5h26cpazdwxgb6haf03yrmx7iwb5d2ja4rv50cirl3";
+          url = "https://elpa.gnu.org/devel/plz-0.8.0.20240425.201348.tar";
+          sha256 = "00kprdnnz584fa2r8mkn4wzyk4fyxgn5d22z6s5c6lag0il1bjvc";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -4850,7 +4841,7 @@
         version = "0.1.0.20231101.73512";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/plz-see-0.1.0.20231101.73512.tar";
-          sha256 = "1nqlv1ww8ba2a40bg3riv5w1sgj8cmhx6bldyzcgs88cpjjkia79";
+          sha256 = "09ibjvd9wvndrygnfq0jic7m9bk6v490rk1k3b4qjvv5xfvsvvhq";
         };
         packageRequires = [ emacs plz ];
         meta = {
@@ -4865,7 +4856,7 @@
         version = "3.2.0.20230517.100500";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/poke-3.2.0.20230517.100500.tar";
-          sha256 = "0y5qrnqlhvvynvd1fknl0xp9d8bq55bnn2ms6lpbr0sd7ixh24qq";
+          sha256 = "0p12szh563vynl7h9j55v7373g43fhmsy03iibvnywaira4arw5l";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -4882,7 +4873,7 @@
         version = "3.1.0.20231014.222558";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/poke-mode-3.1.0.20231014.222558.tar";
-          sha256 = "0n73viyn9wia6qpbjilipf69lrmv11avznpbl6cmry3rryzdyn38";
+          sha256 = "1aqw9rn17n7ywnys6dlwykrf63l4kgapqsk1fay5qjj0y1nkq167";
         };
         packageRequires = [];
         meta = {
@@ -4897,7 +4888,7 @@
         version = "0.2.0.20221221.81510";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/poker-0.2.0.20221221.81510.tar";
-          sha256 = "048i3l2z7pkxaphmb731cks0bw3w07arnpls2smm4dv51js14g5j";
+          sha256 = "14xc4jpkpy88drijp19znfhlyv61p2fx2l3zqsqbl3br2xwxy219";
         };
         packageRequires = [];
         meta = {
@@ -4915,7 +4906,7 @@
         version = "0.2.2.0.20230317.121821";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/polymode-0.2.2.0.20230317.121821.tar";
-          sha256 = "129k592y80jixsff2h0bjvn1z1mcl9lwl4gc2sk1fg3vdq6984ng";
+          sha256 = "17dl20fzn15km0d2ypsrzij247yjr3nx5lk1sn5hwr3dvsapvagz";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -4930,7 +4921,7 @@
         version = "0.4.6.0.20240323.172152";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/popper-0.4.6.0.20240323.172152.tar";
-          sha256 = "14k8shc3w1kc8yz3i1rm02qdyjkxbyyypl2phm9650dvwhwxibxg";
+          sha256 = "1avpaza4w7hav5x7wz6jvk0gacxas11cdlpggx9chjlp0klns0v2";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -4945,10 +4936,10 @@
       elpaBuild {
         pname = "posframe";
         ename = "posframe";
-        version = "1.4.2.0.20230714.22752";
+        version = "1.4.3.0.20240426.60433";
         src = fetchurl {
-          url = "https://elpa.gnu.org/devel/posframe-1.4.2.0.20230714.22752.tar";
-          sha256 = "0v3g4z36gm87z4ar7r4q86alscl6r64wd7y3wf55ngbhb84fh02r";
+          url = "https://elpa.gnu.org/devel/posframe-1.4.3.0.20240426.60433.tar";
+          sha256 = "1j5l16z765wz5qs1x49vpkmj1cbxbsa69wlrf19r4qc7b6gijzm5";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -4963,7 +4954,7 @@
         version = "0.2.0.20240317.135839";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/pq-0.2.0.20240317.135839.tar";
-          sha256 = "0hfngsg0hqqrkm55q0ds09bprbpf7km7ry0s4y2lmvyybfaszkla";
+          sha256 = "0hva6d8iqqdvnllm7cssxrmn21alcb2aa4d6874bqdfqjij2hw1z";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -4980,7 +4971,7 @@
         version = "0.0.20221212.225529";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/prefixed-core-0.0.20221212.225529.tar";
-          sha256 = "10a58xidv1b9yz8bps4ihhx5fl4w337695jmm66dpmphjvmr0hi4";
+          sha256 = "1b9bikccig8l96fal97lv6gajjip6qmbkx21y0pndfbw2kaamic4";
         };
         packageRequires = [];
         meta = {
@@ -4996,10 +4987,10 @@
       elpaBuild {
         pname = "project";
         ename = "project";
-        version = "0.10.0.0.20240315.22845";
+        version = "0.10.0.0.20240415.22959";
         src = fetchurl {
-          url = "https://elpa.gnu.org/devel/project-0.10.0.0.20240315.22845.tar";
-          sha256 = "0l0aqa5xyj1wj3wxvbvyjx32cjq405dkp10fmy9ydb80a44l8jyw";
+          url = "https://elpa.gnu.org/devel/project-0.10.0.0.20240415.22959.tar";
+          sha256 = "0clz75455r6pzjcj9jbpqgi201plmm4094nz7s19xmq1ifll9pzy";
         };
         packageRequires = [ emacs xref ];
         meta = {
@@ -5014,7 +5005,7 @@
         version = "1.3.5.0.20221229.184738";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/psgml-1.3.5.0.20221229.184738.tar";
-          sha256 = "055dpaylampjl53vby2b2lvmyfgjqjy64mpda6inmbc93jd3rq90";
+          sha256 = "1zdfdzbadrbj6g4k2q7w5yvxvblpwn4mkihmnmag7jym66r4wmnb";
         };
         packageRequires = [];
         meta = {
@@ -5029,7 +5020,7 @@
         version = "1.1.0.20221221.81719";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/pspp-mode-1.1.0.20221221.81719.tar";
-          sha256 = "0awha64p3dyqpahsyr7dbhkprq3mizv239g6q4jiws6laqk54gqz";
+          sha256 = "010qckmc85wc4i7k1rmhffcdbpxpvs6p5qxdvr6g3ws00c1a3j4l";
         };
         packageRequires = [];
         meta = {
@@ -5044,7 +5035,7 @@
         version = "1.0.1.0.20240117.25720";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/pulsar-1.0.1.0.20240117.25720.tar";
-          sha256 = "1cqm3ap285gfpbvlk6lckc09ypw2vzv0z1r157pqbaffqqca9vi5";
+          sha256 = "09qq4cribybn86s6dz77rbmazzl3c88305brkiza2pn2cg10g8xw";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -5056,10 +5047,10 @@
       elpaBuild {
         pname = "pyim";
         ename = "pyim";
-        version = "5.3.3.0.20230908.3908";
+        version = "5.3.3.0.20240407.80210";
         src = fetchurl {
-          url = "https://elpa.gnu.org/devel/pyim-5.3.3.0.20230908.3908.tar";
-          sha256 = "1x9bm67h6314zwd25kjrh5c59icf6v6y7vr0n5k05zvcr7mhw98z";
+          url = "https://elpa.gnu.org/devel/pyim-5.3.3.0.20240407.80210.tar";
+          sha256 = "1vk0q0wczr9yiwm89kljdlsil7plr2z0cr5sw48fxy4dzgjdjkfb";
         };
         packageRequires = [ async emacs xr ];
         meta = {
@@ -5076,7 +5067,7 @@
         version = "0.5.4.0.20220614.110824";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/pyim-basedict-0.5.4.0.20220614.110824.tar";
-          sha256 = "0bf6fwjid16xhdyxaj229xra94qv5zaqwajqccd0y32bpw3ldf9f";
+          sha256 = "0md12ysqcmz737vcs8wh561zl8s98w04cgzs69pbdnzzxas7iy2j";
         };
         packageRequires = [];
         meta = {
@@ -5088,10 +5079,10 @@
       elpaBuild {
         pname = "python";
         ename = "python";
-        version = "0.28.0.20240314.140956";
+        version = "0.28.0.20240427.62346";
         src = fetchurl {
-          url = "https://elpa.gnu.org/devel/python-0.28.0.20240314.140956.tar";
-          sha256 = "1ikh9qj1dd7002wxfgppngja32yw81i799ymsxwgrypy3xidxxpa";
+          url = "https://elpa.gnu.org/devel/python-0.28.0.20240427.62346.tar";
+          sha256 = "1knzsgi2g40b9ba5s81653h913mlsh71y83b8qc71v9l16lgy1fg";
         };
         packageRequires = [ compat emacs seq ];
         meta = {
@@ -5108,7 +5099,7 @@
         version = "0.1.0.20221221.81727";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/quarter-plane-0.1.0.20221221.81727.tar";
-          sha256 = "17ahmyi0jih6jxplw5lpw50yq2rji8y7irgpxsd65xxj3fzydjrr";
+          sha256 = "1s0fl9sxjhv0sl5ikvkhdnddjg1n2hzw0a64xcvm8859dk77fmy8";
         };
         packageRequires = [];
         meta = {
@@ -5123,7 +5114,7 @@
         version = "0.2.0.20210306.173709";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/queue-0.2.0.20210306.173709.tar";
-          sha256 = "0sp42hjqdhyc3jayjrn2zrcz4rqn3ww9yqhq9nl8rwxh9b9xk4x4";
+          sha256 = "09iicl5fdpli6jnvdj0h8cwj7wqqmxnfzdd57vfjdq09v3sjkljs";
         };
         packageRequires = [ cl-lib ];
         meta = {
@@ -5140,7 +5131,7 @@
         version = "1.0.6.0.20231215.171141";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/rainbow-mode-1.0.6.0.20231215.171141.tar";
-          sha256 = "0j74lyl90wddqn2hg2pgji48gvgh1kg56jksrhfr29ykdp6rfzf0";
+          sha256 = "0qr0yl8fszrrdnl8x3d8lnndr5s9g3bf708qilb3f6i5ahkqhq7l";
         };
         packageRequires = [];
         meta = {
@@ -5155,7 +5146,7 @@
         version = "0.1.0.20201128.182847";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/rbit-0.1.0.20201128.182847.tar";
-          sha256 = "0n16yy2qbgiv1ykzhga62j8w8dwawb1b8z7qq7mkpxwbyd44c1i3";
+          sha256 = "1ajjfkih0dji2mdsvcpdzmb32nv20niryl8x17ki1016302qfvdj";
         };
         packageRequires = [];
         meta = {
@@ -5173,7 +5164,7 @@
         version = "0.4.5.0.20230414.195045";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/rcirc-color-0.4.5.0.20230414.195045.tar";
-          sha256 = "0d0q5nvndpzxl0f8q6ahbia2j4mk4k9h1krw09n44i7jg45277v4";
+          sha256 = "1amlzg7njbmk1kbb569ygx2az7vd7py89z9aq9cmf5rm15hjsm59";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -5190,7 +5181,7 @@
         version = "1.1.0.20221221.81818";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/rcirc-menu-1.1.0.20221221.81818.tar";
-          sha256 = "08cqb3p76qanii46vvpn31ngz4zjqwfplnrfwdlg12pnhz75fx0m";
+          sha256 = "0gd19rzqgqb9w5cfpr1rz719k5z1rfkn8480b0h1zkvgpgmdrzbx";
         };
         packageRequires = [];
         meta = {
@@ -5205,10 +5196,10 @@
       elpaBuild {
         pname = "rcirc-sqlite";
         ename = "rcirc-sqlite";
-        version = "0.1.4.0.20240226.165830";
+        version = "1.0.1.0.20240422.191938";
         src = fetchurl {
-          url = "https://elpa.gnu.org/devel/rcirc-sqlite-0.1.4.0.20240226.165830.tar";
-          sha256 = "1j16p0i9yyv229f4jcq10vwld01yda6gdv7n5a0ap0xk5qhaj67k";
+          url = "https://elpa.gnu.org/devel/rcirc-sqlite-1.0.1.0.20240422.191938.tar";
+          sha256 = "1nspv7qgwzjpy9jsgh3m75iimy8piicimv9r82ahm5vrpaxkwg3p";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -5229,7 +5220,7 @@
         version = "1.5.1.0.20231113.141045";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/realgud-1.5.1.0.20231113.141045.tar";
-          sha256 = "1lidmlrsg0jax0mmsxgpjk70x4i4vhiv5ira744rj7m3w0mwgmrw";
+          sha256 = "1nvmpbnx31fdi2ps243xx6cnvhmyv9n1kvb98ydnxydmalxs4iva";
         };
         packageRequires = [ emacs load-relative loc-changes test-simple ];
         meta = {
@@ -5249,7 +5240,7 @@
         version = "1.0.0.0.20231216.160636";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/realgud-ipdb-1.0.0.0.20231216.160636.tar";
-          sha256 = "1ih8dg1fm9bwg33zg353zzsnb84qc5p16flnj1rx9wyvblzx0v0q";
+          sha256 = "1s08gngzq18bgxdc6qpsg7j9wjqq842wj5bki2l8jgyqpin6g3h5";
         };
         packageRequires = [ emacs load-relative realgud ];
         meta = {
@@ -5269,7 +5260,7 @@
         version = "1.0.0.0.20200722.72030";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/realgud-jdb-1.0.0.0.20200722.72030.tar";
-          sha256 = "1dmgw2bdwh20wr4yi66aamj48pkzmaz3ilhdx68qsirw5n48qg83";
+          sha256 = "1vh4x50gcy5i9v9pisn0swmv0ighksn8ni68pdwxkns5ka99qqi6";
         };
         packageRequires = [ emacs load-relative realgud ];
         meta = {
@@ -5289,7 +5280,7 @@
         version = "1.0.2.0.20230319.171320";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/realgud-lldb-1.0.2.0.20230319.171320.tar";
-          sha256 = "15azvxwq861i6j61sj0240mxdq725wbln1wpim5pn45wzqh56zmv";
+          sha256 = "0isnyflg507qngv8xjw8zwzwh4qy0d3c123d5rirwbissjcfxmrs";
         };
         packageRequires = [ emacs load-relative realgud ];
         meta = {
@@ -5310,7 +5301,7 @@
         version = "1.0.0.0.20190525.123417";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/realgud-node-debug-1.0.0.0.20190525.123417.tar";
-          sha256 = "1w4n28pv65yzkz8lzn3sicz4il7gx4gxwgzwc6sp21yhb05kfz09";
+          sha256 = "1s5zav3d0xdj0jggw3znfzb43d9jrnzaafk51wiachh7j673gjjv";
         };
         packageRequires = [ cl-lib emacs load-relative realgud ];
         meta = {
@@ -5331,7 +5322,7 @@
         version = "1.0.0.0.20190526.154549";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/realgud-node-inspect-1.0.0.0.20190526.154549.tar";
-          sha256 = "1ds40vq756b8vkc7yqacrgm72jj09kq92dprqlmr215r7s8fdglk";
+          sha256 = "0hss16d3avyisdxp1xhzjqn2kd9xc3vkqg4ynsgvxampzli78fw9";
         };
         packageRequires = [ cl-lib emacs load-relative realgud ];
         meta = {
@@ -5351,7 +5342,7 @@
         version = "1.0.1.0.20210513.183733";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/realgud-trepan-ni-1.0.1.0.20210513.183733.tar";
-          sha256 = "1gly5hvndc0hg1dfn9b12hbxa0wnlbz8zw9jzjzz5kj2d0fzjswx";
+          sha256 = "0p7sc7g1nwg1hyvgx5mzs2qpjnrayp7brw720kzxfxnxdfj7p0gj";
         };
         packageRequires = [ emacs load-relative realgud ];
         meta = {
@@ -5371,7 +5362,7 @@
         version = "1.0.1.0.20230322.184556";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/realgud-trepan-xpy-1.0.1.0.20230322.184556.tar";
-          sha256 = "01h2v8jy0dl1xf7k938iinwkfb4zxrfr73z9s6jc59rrbybsqvha";
+          sha256 = "0m9pwqbkhwkm9fys7rs2lapydkinh4v7q3q3j8b0qb0nl8qcni7i";
         };
         packageRequires = [ emacs load-relative realgud ];
         meta = {
@@ -5389,7 +5380,7 @@
         version = "1.9.3.0.20231120.221944";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/rec-mode-1.9.3.0.20231120.221944.tar";
-          sha256 = "1k5ncn93vffa4yf84c1ri57lb1sfc9b5czvwvsiijlgci2795j91";
+          sha256 = "1vi5fkxfjfq7z0dc3vhdknzw8id5a1fm0zaxr3y09np7z6n3iv7z";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -5406,7 +5397,7 @@
         version = "0.1.0.20221212.230034";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/register-list-0.1.0.20221212.230034.tar";
-          sha256 = "1b0099yhvjd69xvcdvn65nx49xay06n2qzafw6fnn7qi22nbvah7";
+          sha256 = "02qc5ll26br1smx5d0ci3wm0s4hdj8sw72xdapn5bql5509n75dx";
         };
         packageRequires = [];
         meta = {
@@ -5418,10 +5409,10 @@
       elpaBuild {
         pname = "relint";
         ename = "relint";
-        version = "1.24.0.20240123.121000";
+        version = "1.24.0.20240401.74454";
         src = fetchurl {
-          url = "https://elpa.gnu.org/devel/relint-1.24.0.20240123.121000.tar";
-          sha256 = "11482r6h8b0n2ga74mi57nhf9zym2ignii6gfdivrlw8bgmnl1jx";
+          url = "https://elpa.gnu.org/devel/relint-1.24.0.20240401.74454.tar";
+          sha256 = "07q0571ks81al09xl1ms52rznp6y7scvlnh2ax1nj67f3jmikzcd";
         };
         packageRequires = [ emacs xr ];
         meta = {
@@ -5439,7 +5430,7 @@
         version = "1.2.4.0.20240108.130348";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/repology-1.2.4.0.20240108.130348.tar";
-          sha256 = "1w1aisspx5zvj1a2hmnnd93wra1kjizid7sr8kqkwsyva5c03wvd";
+          sha256 = "1ybr0zn647sb6gfqrm6ahdkx3q30j2b0gaab335nkc7jqx1ba565";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -5457,7 +5448,7 @@
         version = "1.0.3.0.20190419.83620";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/rich-minority-1.0.3.0.20190419.83620.tar";
-          sha256 = "08xdd9gmay0xi2dzk08n30asfzqkhxqfrlvs099pxdd0klgsz60m";
+          sha256 = "0kx516s0kv8ni3w408hb9bpnig83bv4m1l7b5lhdigmp8zvqm8jm";
         };
         packageRequires = [ cl-lib ];
         meta = {
@@ -5472,7 +5463,7 @@
         version = "0.3.0.20221221.81910";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/rnc-mode-0.3.0.20221221.81910.tar";
-          sha256 = "1jyi7z0y31c994x9l6pv2j4bkc7m1lrhzk92xdvar003zvll32q9";
+          sha256 = "1rdz1g440sjzxcqc4p2s0vv525ala4k470ddn4h9ghljnncqbady";
         };
         packageRequires = [];
         meta = {
@@ -5489,7 +5480,7 @@
         version = "7.0.20240306.83828";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/rt-liberation-7.0.20240306.83828.tar";
-          sha256 = "1bykgygci149vn2s722xg5bn0kp6srjb8mf5rygvy5h32lfdc4r9";
+          sha256 = "1gz0hiwl8qqf1adxwgr8ly98pymqjrl3jjfly5r182l3rwp82gsh";
         };
         packageRequires = [];
         meta = {
@@ -5506,7 +5497,7 @@
         version = "0.4.3.0.20230205.12506";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/ruby-end-0.4.3.0.20230205.12506.tar";
-          sha256 = "0l2dbpmhimqb8q5zjjmrf0lriwff4vwwrsba61fiyd3lzk0v0hl2";
+          sha256 = "0cr18s311c986gwx12f6fmnqwyqb4fh7j6h8m2cgp767vn4aqwxl";
         };
         packageRequires = [];
         meta = {
@@ -5527,7 +5518,7 @@
         version = "0.3.2.0.20221212.230154";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/rudel-0.3.2.0.20221212.230154.tar";
-          sha256 = "1q3a4j14ww5wjyxr8b7ksqcckvm8cx44jy9sl117s7g9if48yn03";
+          sha256 = "0lcdc0gdqkl4disr9rwn1dmziwaiwnsyhfwvf02vrgpabd7dq95w";
         };
         packageRequires = [ cl-generic cl-lib cl-print emacs ];
         meta = {
@@ -5542,7 +5533,7 @@
         version = "0.2.0.20220223.202624";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/satchel-0.2.0.20220223.202624.tar";
-          sha256 = "0akcfjfw69r504qkcwr81vrxjhvkpmf19vy9d0dzlgc9v5m3p1h1";
+          sha256 = "1x558csdfahlp459m4bb827yayrzgisaijzbpxbl1pjhq595585d";
         };
         packageRequires = [ emacs project ];
         meta = {
@@ -5557,7 +5548,7 @@
         version = "0.2.0.20210104.105054";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/scanner-0.2.0.20210104.105054.tar";
-          sha256 = "1az7rg4n744ya0ba9fcggqhm3mjhpzwzhygyracsx7n5gry5slgv";
+          sha256 = "1ah74y9ragw3kycqwgxkmnxrzl7s2n43cjpw6r25hmbyzjnhdppm";
         };
         packageRequires = [ dash emacs ];
         meta = {
@@ -5574,7 +5565,7 @@
         version = "1.0.0.20221221.81959";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/scroll-restore-1.0.0.20221221.81959.tar";
-          sha256 = "08x45fk4m4pg33rdy911hhmnp5kvx2l1dq94s108nk5wznbzx578";
+          sha256 = "04xhshjm5fr5q85srmjhvm20l0zljgbdsy1f3g3lczgzqrwvyg9f";
         };
         packageRequires = [];
         meta = {
@@ -5589,7 +5580,7 @@
         version = "1.1.0.20230721.154631";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/sed-mode-1.1.0.20230721.154631.tar";
-          sha256 = "1mp4xyca7g29vn5c7dl3dw3ng9n5kiryvdgrmqrha13ppyqqzd5x";
+          sha256 = "1gb7m8w5v0ay8mcm7alyixsnmndivd24467v58rkj0bpf7bmfa5v";
         };
         packageRequires = [];
         meta = {
@@ -5604,7 +5595,7 @@
         version = "2.24.0.20240201.135317";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/seq-2.24.0.20240201.135317.tar";
-          sha256 = "15lmvz72pq94bf10rk7m327lrvk9680wjfx07289w7qcqq98k1y9";
+          sha256 = "0plr9pbvzd5cfivj90n0jm920hp2x1giy9889pr8x5bqqnba6j66";
         };
         packageRequires = [];
         meta = {
@@ -5616,10 +5607,10 @@
       elpaBuild {
         pname = "setup";
         ename = "setup";
-        version = "1.3.2.0.20240201.73543";
+        version = "1.4.0.0.20240413.75454";
         src = fetchurl {
-          url = "https://elpa.gnu.org/devel/setup-1.3.2.0.20240201.73543.tar";
-          sha256 = "1rrms6x9jrd4zbm2km7db86j0ak1cmdblrja1dcc089p9pff7l90";
+          url = "https://elpa.gnu.org/devel/setup-1.4.0.0.20240413.75454.tar";
+          sha256 = "1ryxa0991mzvx2ai4bkmjxnikpnalmr4gdggakfg8i8ag65149rn";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -5636,7 +5627,7 @@
         version = "1.0.0.0.20221212.230255";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/shelisp-1.0.0.0.20221212.230255.tar";
-          sha256 = "0n673afq17fp3h3chs0acszv72dkqj9yd5x2ll6jgkyk74dka0fm";
+          sha256 = "0kk24mkmm4imf7gsr7xihj3xf2y9mgy61gpyql0wms1vlmkl0mwk";
         };
         packageRequires = [];
         meta = {
@@ -5654,7 +5645,7 @@
         version = "2.4.2.0.20240313.182825";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/shell-command+-2.4.2.0.20240313.182825.tar";
-          sha256 = "06yffzhfjgbqr4nsk1f098qmr72818n8466i2g75j03vmzacbzgd";
+          sha256 = "17rqdk23w41dl44imrk6b7p3r4g0ldppj84hp7s6w7amx6fia7ah";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -5671,7 +5662,7 @@
         version = "0.0.20221221.82030";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/shell-quasiquote-0.0.20221221.82030.tar";
-          sha256 = "1mvz4y9jkkp96cf0ppmpzdzh86q1xrhx6yb9l93941qm33j0z4p8";
+          sha256 = "0g2yq64yyim35lvxify65kq3y49qrvgri7jyl9rgz8999gb3h8dj";
         };
         packageRequires = [];
         meta = {
@@ -5686,7 +5677,7 @@
         version = "0.1.0.20221221.82050";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/shen-mode-0.1.0.20221221.82050.tar";
-          sha256 = "1r0kgk46hk2dk0923az6g44bmikrb2dxn9p5v4a9r1680yfgf0bn";
+          sha256 = "17ygb1c0x52n3cnmvaacrcf7m6qdjxdqaw1pn7lg3899kl45dh3r";
         };
         packageRequires = [];
         meta = {
@@ -5703,7 +5694,7 @@
         version = "7.1.8.0.20221221.82114";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/sisu-mode-7.1.8.0.20221221.82114.tar";
-          sha256 = "18l11bvwp57gjh4v5w6pdslqbdc250hidrj5nlm4p5rfll5647ri";
+          sha256 = "1cyynn3sk8wxfhiz5q0lqwq07kqy67s2rvjql62880in5m5r2jpa";
         };
         packageRequires = [];
         meta = {
@@ -5721,7 +5712,7 @@
         version = "0.1.2.0.20240308.82403";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/site-lisp-0.1.2.0.20240308.82403.tar";
-          sha256 = "0hc811pinqr9swg9764aibyfar33n8nk733pzfgn70rdyxszl9h5";
+          sha256 = "0c9r5pp2lr4wmpcfa8qz0xvq1vhzyhvnn14kawjarhx9p5mvgdq1";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -5738,7 +5729,7 @@
         version = "1.0.4.0.20230420.122954";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/sketch-mode-1.0.4.0.20230420.122954.tar";
-          sha256 = "1vyzwrph9ifqbwlqprglk1fnlx9hnxm0caq9bxk9az8h021zzzha";
+          sha256 = "0ssh1v49h94gvchpynvjcsw80swpcdw541zxxhxm5zi6gsnyhnjd";
         };
         packageRequires = [];
         meta = {
@@ -5756,7 +5747,7 @@
         version = "1.2.0.0.20221221.82156";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/slime-volleyball-1.2.0.0.20221221.82156.tar";
-          sha256 = "0ys6r0vg43x0hdfc9kl2s8djk8zd4253x93prhbcakpsa7p4jb5v";
+          sha256 = "015qpac86km7czpqr2f7xpjlkwbq9s4z9jl0dnr8b2bzh0iwqiik";
         };
         packageRequires = [ cl-lib ];
         meta = {
@@ -5764,16 +5755,14 @@
           license = lib.licenses.free;
         };
       }) {};
-    sm-c-mode = callPackage ({ elpaBuild
-                             , fetchurl
-                             , lib }:
+    sm-c-mode = callPackage ({ elpaBuild, fetchurl, lib }:
       elpaBuild {
         pname = "sm-c-mode";
         ename = "sm-c-mode";
-        version = "1.1.0.20240101.165603";
+        version = "1.2.0.20240404.93144";
         src = fetchurl {
-          url = "https://elpa.gnu.org/devel/sm-c-mode-1.1.0.20240101.165603.tar";
-          sha256 = "00nh3fr57la0zj36c47rwjdkc7a3imvpc5jqh4pg98zn12mi1jdz";
+          url = "https://elpa.gnu.org/devel/sm-c-mode-1.2.0.20240404.93144.tar";
+          sha256 = "1xbkdvhxaffk6csav2ivbrqv85rkb4arnsslp2ji13alkm5hx1zx";
         };
         packageRequires = [];
         meta = {
@@ -5790,7 +5779,7 @@
         version = "4.0.0.20221221.82225";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/smalltalk-mode-4.0.0.20221221.82225.tar";
-          sha256 = "0na04h27bxy6mqdx7mp5ys4bjvpmxfp19nh40jh6j584dchb8y3k";
+          sha256 = "1qk0z1gddw7fidvj429ivjwnxb4f5g074r531nmpvmy2l7srchd9";
         };
         packageRequires = [];
         meta = {
@@ -5808,7 +5797,7 @@
         version = "0.1.1.0.20221221.82231";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/smart-yank-0.1.1.0.20221221.82231.tar";
-          sha256 = "1dhnzvw3igrzp12lcbqp9dpmzidawhyc9a5ryyp29qxqh539c2qm";
+          sha256 = "17w9ybfvdsnsy1vf1mg7a4428rna49i2yfifrp20srj8c0dapwzd";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -5823,7 +5812,7 @@
         version = "6.12.0.20230411.5343";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/sml-mode-6.12.0.20230411.5343.tar";
-          sha256 = "0qq1naxx7hhfi5q78vnw0s9vw6aign8kb08vlcj45xz4sp2w4nlj";
+          sha256 = "1a7n0lvrjq4xnn0cr6qwgh7l54m95mf2nxwv1rplair4r8si8y0d";
         };
         packageRequires = [ cl-lib emacs ];
         meta = {
@@ -5838,7 +5827,7 @@
         version = "1.1.2.0.20240102.22814";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/so-long-1.1.2.0.20240102.22814.tar";
-          sha256 = "0865xyx76pq2i0fgqm31vh79alrqqbp6pqzcmadlaxd8jhfck6yq";
+          sha256 = "0fq1c34jlp9jc3zz4rrf9zz6mww0ydm3lh0zrfy3qgssj248ghmy";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -5857,7 +5846,7 @@
         version = "3.2.3.0.20240102.22814";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/soap-client-3.2.3.0.20240102.22814.tar";
-          sha256 = "1mjrb4nsphab8mf5cjjph4dy12v1mzr0x6kxkddp5dwdlpyprn7s";
+          sha256 = "084svzsb2rrqxvb76qxnwdj64kn364dqgbgdpymqngihngyr88fb";
         };
         packageRequires = [ cl-lib emacs ];
         meta = {
@@ -5876,7 +5865,7 @@
         version = "1.4.9.0.20220928.185052";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/sokoban-1.4.9.0.20220928.185052.tar";
-          sha256 = "19df4wdhrpn1rb927jg131hjwackaldra1rvxaq31zfd3rlj4dp8";
+          sha256 = "1d3s1v81mvfjcq5bbf0338ldxgl2rymqb3vqqw7drbics4jq5fc0";
         };
         packageRequires = [ cl-lib emacs ];
         meta = {
@@ -5891,7 +5880,7 @@
         version = "1.6.2.0.20220909.50328";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/sotlisp-1.6.2.0.20220909.50328.tar";
-          sha256 = "14jlvdhncm7fp5ajnzp931gbpnqg97ysiis0ajwkmwan3mmxlv89";
+          sha256 = "1g48ahiwdipk4ckynqipsfradd1qafg59s10jkbpkp3wvfmxi5sf";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -5909,7 +5898,7 @@
         version = "0.4.1.0.20240311.74539";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/spacious-padding-0.4.1.0.20240311.74539.tar";
-          sha256 = "1alvy1am8fjlj0wlmzbpvjjgjcln25v0dc19rbwfgwm8pzbq2apn";
+          sha256 = "1xgnplcvp73fpyi9rx5wbn0hjbcv65vlrb7dqkgjc0chaivp4dgm";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -5924,7 +5913,7 @@
         version = "1.7.4.0.20220915.94959";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/spinner-1.7.4.0.20220915.94959.tar";
-          sha256 = "0n5xmq7iay11pxlj5av4wnx477jz48ac87838pppks9mmsaj24a7";
+          sha256 = "1110bxj7vgai0wgsqbd9917k72xmalyfy0rlwqp46azg02ljam6j";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -5941,7 +5930,7 @@
         version = "0.2.0.20221221.82329";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/sql-beeline-0.2.0.20221221.82329.tar";
-          sha256 = "0lfn5nvv2xns1l71as5vvsiyspn1d50rh9ki2sihhjs6rx8mprnw";
+          sha256 = "0qfw9q5isyjywlm2fyaazci24jza6h4s50i0zmjk35j6spyxwffs";
         };
         packageRequires = [];
         meta = {
@@ -5959,7 +5948,7 @@
         version = "0.2.2.0.20221221.82336";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/sql-cassandra-0.2.2.0.20221221.82336.tar";
-          sha256 = "1daljwlbs6ng64rcmpgzf5ac8diaapraqwc7j2f3v6z6rw261f97";
+          sha256 = "1rl2bdjyglzssm00zdfqidd9j7jzizxaq60bclqa5dsz80zsd6aq";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -5977,7 +5966,7 @@
         version = "1.7.0.20240323.40057";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/sql-indent-1.7.0.20240323.40057.tar";
-          sha256 = "1gvb4inym802zjx721l7qwwmvahaqaw0v1qkm3kl36nqcx7ykp52";
+          sha256 = "0zrsglgw2zjxn9810r022kanvfj0zrhvr696yxlnvd05f9hv9bpp";
         };
         packageRequires = [ cl-lib ];
         meta = {
@@ -5992,7 +5981,7 @@
         version = "0.0.20221221.82351";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/sql-smie-0.0.20221221.82351.tar";
-          sha256 = "0pl47qr62gxjnwhf5ryc9xkbf75pr8fvqzi050c1g17jxjmbjfqa";
+          sha256 = "05jv2k9gswwwyi19da8d5f176lb81qmnf94dvghyzh272v9iwvkr";
         };
         packageRequires = [];
         meta = {
@@ -6007,7 +5996,7 @@
         version = "0.4.0.20231117.115741";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/srht-0.4.0.20231117.115741.tar";
-          sha256 = "0az2gkxqhg8dlvjmcqjgz3p82mzc2j881j72pwzc79dyv3akd2aq";
+          sha256 = "03wyfx0zhgfpbhwyxrbd6mj0465m82910l77r12gsg1vbk78l4l0";
         };
         packageRequires = [ emacs plz transient ];
         meta = {
@@ -6025,7 +6014,7 @@
         version = "3.1.16.0.20230702.92809";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/ssh-deploy-3.1.16.0.20230702.92809.tar";
-          sha256 = "1kbwvfkz74q8qfk6735hhi1mwdijvgrhqvwjfnfv8x8sr73yldkp";
+          sha256 = "0zjkc1gb3hpknx8012crcbdy3w1w597qk8qajhpaijhjhispm507";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -6040,10 +6029,10 @@
       elpaBuild {
         pname = "standard-themes";
         ename = "standard-themes";
-        version = "2.0.1.0.20240226.81513";
+        version = "2.0.1.0.20240427.84421";
         src = fetchurl {
-          url = "https://elpa.gnu.org/devel/standard-themes-2.0.1.0.20240226.81513.tar";
-          sha256 = "1c4rqg59823syxd9izz8spi54yf0p2984vnpkk7r1kklzfszglmf";
+          url = "https://elpa.gnu.org/devel/standard-themes-2.0.1.0.20240427.84421.tar";
+          sha256 = "09vmyjm148r1ajxlsrdqrgi988a2px5dn5z9k0l3lg88a38rxgz6";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -6058,7 +6047,7 @@
         version = "2.3.0.0.20230908.74447";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/stream-2.3.0.0.20230908.74447.tar";
-          sha256 = "1qpnns7miz4yj2qhjifm6xpbxwd4v0p360jdqdrvvbxl08cs49va";
+          sha256 = "1zfw7plnlsijs8aw5726adjwd65g1x3xs4vcs3rcc2ybv8cz886s";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -6076,7 +6065,7 @@
         version = "0.2.1.0.20240117.30048";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/substitute-0.2.1.0.20240117.30048.tar";
-          sha256 = "1sprpnbbar0nwx3nx5rh7pfaxs7x105370zwbiz1xp7gm8w11lwy";
+          sha256 = "1vkjg3w12r7j3dl5jx5wha412lknns37535vjd4x6xgk2rs3yvh0";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -6091,7 +6080,7 @@
         version = "1.1.0.20240102.22814";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/svg-1.1.0.20240102.22814.tar";
-          sha256 = "0yrh958hw3g0yc5gbqpnzqa37wkv0z6s824vg4mmbq5qqmzj4sqq";
+          sha256 = "1ddz3zadwmm4am2ywwmrqj2a56kr73i45q7svjmgnljgvvs267b3";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -6106,7 +6095,7 @@
         version = "1.2.0.20221221.82408";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/svg-clock-1.2.0.20221221.82408.tar";
-          sha256 = "1ymg49fkacpay624dr0b5ggha68j83qlcca7jnidmm1v6cxq753j";
+          sha256 = "15fshgjqv3995f2339rwvjw9vyiqz2lfs9h80gkmssha7fdfw3qx";
         };
         packageRequires = [ emacs svg ];
         meta = {
@@ -6121,7 +6110,7 @@
         version = "0.3.0.20240219.161327";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/svg-lib-0.3.0.20240219.161327.tar";
-          sha256 = "1nc5ld90pklqwai4waimv41466ph2n5pr2myx1s2s5afq3m2fc0y";
+          sha256 = "1qycnhjinmn1smajsniz34kv7jkl4gycjhsl6mxxjhq0432cw2fc";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -6140,7 +6129,7 @@
         version = "0.3.2.0.20240122.120925";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/svg-tag-mode-0.3.2.0.20240122.120925.tar";
-          sha256 = "0p4vfrq3p32j4w4qksqll9wmcc4mgi42qdxwg9gny7jjbvpnvk62";
+          sha256 = "17qixxhy889l2v17pw3b2qrk2g6x4a7yfh0bzxfhlizq10sy24hz";
         };
         packageRequires = [ emacs svg-lib ];
         meta = {
@@ -6156,10 +6145,10 @@
       elpaBuild {
         pname = "swiper";
         ename = "swiper";
-        version = "0.14.2.0.20240214.214428";
+        version = "0.14.2.0.20240405.204232";
         src = fetchurl {
-          url = "https://elpa.gnu.org/devel/swiper-0.14.2.0.20240214.214428.tar";
-          sha256 = "15hncb6g90k3zc2scvammfc8hnw2p38xcn6c0d3vzfiqg12jlp6x";
+          url = "https://elpa.gnu.org/devel/swiper-0.14.2.0.20240405.204232.tar";
+          sha256 = "1b5dn8v6rm6m7b2agdxf50jkmrfx6ac8fnwyqabr3zzcshpl6ixm";
         };
         packageRequires = [ emacs ivy ];
         meta = {
@@ -6178,7 +6167,7 @@
         version = "1.3.0.20230411.180529";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/switchy-window-1.3.0.20230411.180529.tar";
-          sha256 = "1x2y6rgbkj11c53kxybz3xslbaszm3pr6xzsx4s17sq1w4vv6dc4";
+          sha256 = "1h3jib0qr8wj3xk3qha5yrw2vqhidnqhj4jhw2smrfk61vyfs83b";
         };
         packageRequires = [ compat emacs ];
         meta = {
@@ -6196,7 +6185,7 @@
         version = "1.0.0.0.20240117.30132";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/sxhkdrc-mode-1.0.0.0.20240117.30132.tar";
-          sha256 = "0ys8nchp6ic6wivsgkd97z6v17mdszpldbz4n2bzl3aphhvfy5nf";
+          sha256 = "0sbp6n6j7m0q4gj2x02q2f7ncwsji5jgy6d113n6qfain5ffj0fs";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -6214,7 +6203,7 @@
         version = "1.0.13.0.20230908.453";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/system-packages-1.0.13.0.20230908.453.tar";
-          sha256 = "1b7k3z9pnjzfzm903w4llyjda1j74fg5r10xh2n02hjfnlv0yh64";
+          sha256 = "0qh4z6sik94hkms5nfharx2y8np2a1a2r9yrf8lw6xihdnd7bfcv";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -6229,7 +6218,7 @@
         version = "0.0.20221221.82418";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/systemd-0.0.20221221.82418.tar";
-          sha256 = "0df7y6ymx7gwlksa79h36ds6ap0c6mdnvw4nlj5qr54r2ri2rv1z";
+          sha256 = "1ir3y4w2x1cl24zy66yym5rlpffgrcs10x4sxhb2sgg5k4d88scn";
         };
         packageRequires = [ cl-lib ];
         meta = {
@@ -6237,16 +6226,16 @@
           license = lib.licenses.free;
         };
       }) {};
-    tNFA = callPackage ({ elpaBuild, fetchurl, lib, queue }:
+    tNFA = callPackage ({ cl-lib ? null, elpaBuild, fetchurl, lib, queue }:
       elpaBuild {
         pname = "tNFA";
         ename = "tNFA";
-        version = "0.1.1.0.20170804.211606";
+        version = "0.1.1.0.20240405.140856";
         src = fetchurl {
-          url = "https://elpa.gnu.org/devel/tNFA-0.1.1.0.20170804.211606.tar";
-          sha256 = "0h282s6lkpsxvjgajfraj9dbj3ac1amg3s0q3d6knr1xfwhi29zz";
+          url = "https://elpa.gnu.org/devel/tNFA-0.1.1.0.20240405.140856.tar";
+          sha256 = "0m2lh50bz56j5gdpjvan0sksgnlb3cszb28q69xni88hajacn4aw";
         };
-        packageRequires = [ queue ];
+        packageRequires = [ cl-lib queue ];
         meta = {
           homepage = "https://elpa.gnu.org/packages/tNFA.html";
           license = lib.licenses.free;
@@ -6259,7 +6248,7 @@
         version = "0.1.0.20230920.103516";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/tam-0.1.0.20230920.103516.tar";
-          sha256 = "1asfy9kflslpmci639pjcb8pr9ndb4as1075lvy9xfk74lif4zx6";
+          sha256 = "01w1vwb1ajmbk90c79wc0dc367sy5b5qdf471zr0xinajfv47709";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -6274,7 +6263,7 @@
         version = "0.10.1.0.20220919.160646";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/taxy-0.10.1.0.20220919.160646.tar";
-          sha256 = "03f3rwj01jqfz9pyr2wnd1qkg8165276l1pqlcdyaw7idvd4fc2i";
+          sha256 = "0bld0sjni4ipbllrjnlwk5419454ac5s3mf6imw91z4ddk46vp18";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -6294,7 +6283,7 @@
         version = "0.13.0.20240124.3519";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/taxy-magit-section-0.13.0.20240124.3519.tar";
-          sha256 = "1zr1rbmfmhqq94rahas4gqk31ma0ym9p5p8f3i0h7z6ghby8y6xp";
+          sha256 = "1z1cypw7g5vs8vrm1mjvfzxaasr8nz89w1br9dhk8wshyy4kmgf3";
         };
         packageRequires = [ emacs magit-section taxy ];
         meta = {
@@ -6312,7 +6301,7 @@
         version = "1.5.0.20160804.124501";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/temp-buffer-browse-1.5.0.20160804.124501.tar";
-          sha256 = "060pbrrb33n5ghmyhblkl0paqj4m3g4028nwz65zxbd7irrj0fxz";
+          sha256 = "0jw3fjbnbbrsz54hmg4rhcwrl0ag7h6873n2kdph3gjds29d8jxp";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -6327,7 +6316,7 @@
         version = "1.1.0.20240216.154335";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/tempel-1.1.0.20240216.154335.tar";
-          sha256 = "1zr32jc41shq73n9sl7hx8z3z49pwhvhwmnp6x4rjchvdn7xanyl";
+          sha256 = "14zraddmfxnz7bzr9m2qk38hqy3bmd8ypq5x7ni8xapc6lyqd0pm";
         };
         packageRequires = [ compat emacs ];
         meta = {
@@ -6345,7 +6334,7 @@
         version = "1.3.0.0.20230916.123447";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/test-simple-1.3.0.0.20230916.123447.tar";
-          sha256 = "0wd0br7bc2lis9iy3ilnwjiav971rp0n8iad60b2n2jdhcdwbk6s";
+          sha256 = "1xbf63qg17va0qwq2mkg12jg1fk6wwrs43jjzxxccx28h6d205il";
         };
         packageRequires = [ cl-lib ];
         meta = {
@@ -6363,7 +6352,7 @@
         version = "0.1.2.0.20240105.165329";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/theme-buffet-0.1.2.0.20240105.165329.tar";
-          sha256 = "1wd5nxypm2fy10lm8xy2ch9rmsrfmn1ang0br7yj5rjws2q833r6";
+          sha256 = "1p1vmyl2cdm6vk45884jhrxjgd53mdch4wfkd1hx269v76zl58pa";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -6382,7 +6371,7 @@
         version = "1.4.2.0.20221221.82440";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/timerfunctions-1.4.2.0.20221221.82440.tar";
-          sha256 = "1bsqyf7v7ngk1pwxk4cgf35r019bnbvx6wrs3l1fvgmw1zgkqkqv";
+          sha256 = "08spli0dfi882wrjcxjgk3zl4g4b5rlrvpyjmkgkzq6ix5z7w80j";
         };
         packageRequires = [ cl-lib emacs ];
         meta = {
@@ -6397,7 +6386,7 @@
         version = "0.2.1.0.20220910.192941";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/tiny-0.2.1.0.20220910.192941.tar";
-          sha256 = "17wp68apkd57g4sm7lvr6iv527rkb8x3smz2lqns6yggrg64c1j2";
+          sha256 = "04ybgq2ppzjpindwgypsp4sb0hmzq5k7sg9niyp18dxkj0nv1l7n";
         };
         packageRequires = [];
         meta = {
@@ -6412,7 +6401,7 @@
         version = "0.4.0.0.20240117.30342";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/tmr-0.4.0.0.20240117.30342.tar";
-          sha256 = "11n8xqah46j83b1bdghns6dm1wr9bfgi4hqab6as54rf6xiqlaiq";
+          sha256 = "0sxxc9q97b64rl4kcp0zimlvsvxmdr447vmf8a9f74pddg1djvbw";
         };
         packageRequires = [ compat emacs ];
         meta = {
@@ -6427,7 +6416,7 @@
         version = "0.4.3.0.20220511.213722";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/tomelr-0.4.3.0.20220511.213722.tar";
-          sha256 = "15rx89phls3hk0f2rfwpzb7igzyjvaiqasn9yvhwrmpq92dpd6hn";
+          sha256 = "0vjhbz8lfhk84kgm8vd9lfn9qx60g40j7n3kx7iadk0p4842fpaa";
         };
         packageRequires = [ emacs map seq ];
         meta = {
@@ -6445,7 +6434,7 @@
         version = "0.3.1.0.20230106.94110";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/topspace-0.3.1.0.20230106.94110.tar";
-          sha256 = "188q0jw3frbk6y37qxrq17dx3lfrwcac501z90cq8px6d0j3aq4k";
+          sha256 = "179k6d4v4lw66gpb2lmf1zcz6ww1fr3ys0x992wd1r7mvlc070s8";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -6453,17 +6442,32 @@
           license = lib.licenses.free;
         };
       }) {};
-    tramp = callPackage ({ elpaBuild
-                         , emacs
-                         , fetchurl
-                         , lib }:
+    track-changes = callPackage ({ elpaBuild
+                                 , emacs
+                                 , fetchurl
+                                 , lib }:
+      elpaBuild {
+        pname = "track-changes";
+        ename = "track-changes";
+        version = "1.1.0.20240419.221900";
+        src = fetchurl {
+          url = "https://elpa.gnu.org/devel/track-changes-1.1.0.20240419.221900.tar";
+          sha256 = "16xvkp3fq89jbf87phk6yl9cbfmmgb8r376hh08kwrsmbpaz6bd2";
+        };
+        packageRequires = [ emacs ];
+        meta = {
+          homepage = "https://elpa.gnu.org/packages/track-changes.html";
+          license = lib.licenses.free;
+        };
+      }) {};
+    tramp = callPackage ({ elpaBuild, emacs, fetchurl, lib }:
       elpaBuild {
         pname = "tramp";
         ename = "tramp";
-        version = "2.6.2.2.0.20240228.151226";
+        version = "2.6.3.0.20240331.120258";
         src = fetchurl {
-          url = "https://elpa.gnu.org/devel/tramp-2.6.2.2.0.20240228.151226.tar";
-          sha256 = "0cv1mwksfcggsyv38kmldcxb702mv7kl4f5l20ilkypsl8ryjfyy";
+          url = "https://elpa.gnu.org/devel/tramp-2.6.3.0.20240331.120258.tar";
+          sha256 = "07358iw3skm59qjry7qggj2rggbdbghmw0yrbdpyabrqmdfv3li8";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -6481,7 +6485,7 @@
         version = "1.0.1.0.20220923.120957";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/tramp-nspawn-1.0.1.0.20220923.120957.tar";
-          sha256 = "11pjgxxyx5gx8xqj8nd8blg0998m57n3s7ydg17z4flfpizbycck";
+          sha256 = "0mpr7d5vgfwsafbmj8lqc1k563b7qnjz1zq73rl8rb2km5jxczhn";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -6499,7 +6503,7 @@
         version = "0.2.0.20221221.82451";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/tramp-theme-0.2.0.20221221.82451.tar";
-          sha256 = "1bjfxs20gicn71q8lznmxj4665hv8vc5spj19jkvvhm16r7nh7mp";
+          sha256 = "0x7wa17f2pnhd6nv7p2m5pafqqgpfp9n773qcmyxkawi4l5bp5d3";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -6516,7 +6520,7 @@
         version = "1.5.2.0.20221221.82457";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/transcribe-1.5.2.0.20221221.82457.tar";
-          sha256 = "0a5ld8ylsp4ahw4blxchbsynhr8ph651a1lhs0nrx6j2fh85jxqh";
+          sha256 = "12xw9vxzqfr3pis49apdzc5bg0n30wfx0xa9kycdbcpda88f3z6h";
         };
         packageRequires = [];
         meta = {
@@ -6533,10 +6537,10 @@
       elpaBuild {
         pname = "transient";
         ename = "transient";
-        version = "0.6.0.0.20240321.220938";
+        version = "0.6.0.0.20240414.135949";
         src = fetchurl {
-          url = "https://elpa.gnu.org/devel/transient-0.6.0.0.20240321.220938.tar";
-          sha256 = "0ircfdybzzjxalcfcmd889b41c647fqdwybylri52hz3wh13iix4";
+          url = "https://elpa.gnu.org/devel/transient-0.6.0.0.20240414.135949.tar";
+          sha256 = "1rf1zszrfd02n4ky8n72sqzwb3zk16j92plflfc2wdrzaw9k2mmr";
         };
         packageRequires = [ compat emacs seq ];
         meta = {
@@ -6554,7 +6558,7 @@
         version = "1.0.0.20220410.130412";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/transient-cycles-1.0.0.20220410.130412.tar";
-          sha256 = "19pxd5s4ms9izj22v5abar7g12pn72vh870pmgh80d6kd8l9ifam";
+          sha256 = "1rmgmlbjig866gr5jr89mv8ikvpf0p0pcgpa236nmiw3j6jsywa8";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -6573,7 +6577,7 @@
         version = "0.4.0.20240322.113138";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/tree-inspector-0.4.0.20240322.113138.tar";
-          sha256 = "0ic17jzzj5mqzdpg6hvwyas9s70jpqgfc96azmmb3mhpvs6xwak2";
+          sha256 = "15k30zdbr8cr88z00dn2jfnybrhkmp769pc361v9n4mdgapwmiap";
         };
         packageRequires = [ emacs treeview ];
         meta = {
@@ -6588,7 +6592,7 @@
         version = "0.6.0.20231015.13107";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/trie-0.6.0.20231015.13107.tar";
-          sha256 = "00qghzzm9584vigfijkgghbnn9yqnlqddqv8khbn5k13zbrslbcv";
+          sha256 = "0kwz7b7y90yq676r09h4w0wbrm61030sw6mqhrcq9130s107lbkx";
         };
         packageRequires = [ heap tNFA ];
         meta = {
@@ -6607,7 +6611,7 @@
         version = "0.3.5.0.20240201.233852";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/triples-0.3.5.0.20240201.233852.tar";
-          sha256 = "0fbm6f5xxixmmi1fywada5k1kgbh8ab0vsick8l0d1g5pm33c4x7";
+          sha256 = "1hw0pgd87cack1ya76bckwjbxxyr4fd8gkp5ngkvjl8l8yhvvrpi";
         };
         packageRequires = [ emacs seq ];
         meta = {
@@ -6622,7 +6626,7 @@
         version = "1.0.1.0.20230730.150555";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/typo-1.0.1.0.20230730.150555.tar";
-          sha256 = "1fsv4jka06bgp6b39g9y28npbrb1i1rxvyamy95qw10nlsnw1130";
+          sha256 = "0cjn2lh0949kc6c9fxknzg2fyb4p3iwic2a9md5yxpdl42j24fvw";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -6640,7 +6644,7 @@
         version = "1.0.3.0.20230604.111559";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/ulisp-repl-1.0.3.0.20230604.111559.tar";
-          sha256 = "1lay2sqi2ncwvrzs39wjd9fl66vsnxis9q6g7cyjqi4y667jg62s";
+          sha256 = "0b6yvlwikgkkfqklrhbcs0p6y349b6700x78n77xf0kkgv7mca1i";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -6659,7 +6663,7 @@
         version = "0.8.2.0.20220312.180415";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/undo-tree-0.8.2.0.20220312.180415.tar";
-          sha256 = "0ldvyaim7n8gs8775fv9a0q6lp67ynkapj82pnqywniqy2p2vr1m";
+          sha256 = "1gm5108p4qv7v4dqpxkd3zb2h5w8nsz0xjbxzxpkvykqp982g030";
         };
         packageRequires = [ emacs queue ];
         meta = {
@@ -6676,7 +6680,7 @@
         version = "0.3.0.20221212.230830";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/uni-confusables-0.3.0.20221212.230830.tar";
-          sha256 = "0xa7byw8b371wm35g0250mz7xvcgbdms1x32grwqp4zhm9dh7jg8";
+          sha256 = "15kc12zih2d6lazcqgiaq9jc5zgznnhaywh7ibflwc6siqvwxzvg";
         };
         packageRequires = [];
         meta = {
@@ -6694,7 +6698,7 @@
         version = "1.0.4.0.20221221.82507";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/uniquify-files-1.0.4.0.20221221.82507.tar";
-          sha256 = "1hhf0zb85y1p1a54y8jq6jzlmdgd23rja2pp461lwf0i1wkfjibq";
+          sha256 = "0zn7z3y7f7hw4144ssa398455091qrg238wp9fr53l2rxpdkdkwf";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -6714,7 +6718,7 @@
         version = "0.4.2snapshot0.20240310.204507";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/urgrep-0.4.2snapshot0.20240310.204507.tar";
-          sha256 = "0pzicsyp8p2cbyy77l0fj7kzi7amc5xqyj6a6in1jvgc52wzg532";
+          sha256 = "173ql2ng8blfw4y7nbfgjmzpgvw0xabb1sk2c1mis6k36ali851w";
         };
         packageRequires = [ compat emacs project ];
         meta = {
@@ -6734,7 +6738,7 @@
         version = "2.0.5.0.20231024.31412";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/url-http-ntlm-2.0.5.0.20231024.31412.tar";
-          sha256 = "0vr04yr4ywxvh7c6s447bsa5v148ny3lvx54bpd60qf5cp92z1zw";
+          sha256 = "1crjiq72fcpzw4nlrm8nh3q2llvxc7bgjqq6vr6ma055d0m6xrsd";
         };
         packageRequires = [ cl-lib nadvice ntlm ];
         meta = {
@@ -6751,7 +6755,7 @@
         version = "0.8.3.0.20230510.175959";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/url-http-oauth-0.8.3.0.20230510.175959.tar";
-          sha256 = "02ml5wsqzzwxaf779hkgbbdjp7hvf6x43cr1j2aciw2hn29ikbcg";
+          sha256 = "00shj8zvjvdy7gh29sx08m3cn9lyivjlzmzll0i2zy9389i1l360";
         };
         packageRequires = [];
         meta = {
@@ -6766,7 +6770,7 @@
         version = "0.9.0.20231222.161107";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/url-scgi-0.9.0.20231222.161107.tar";
-          sha256 = "101z2rmfbl5g88lwbf3p3r5wrnfxl6vqw836rjnybfxpl0m89862";
+          sha256 = "1dgi0r0igwsk3mx6b7mvd6xz7dmb545g2394s0wh9kkjhlkyd5b3";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -6782,10 +6786,10 @@
       elpaBuild {
         pname = "use-package";
         ename = "use-package";
-        version = "2.4.5.0.20240113.53615";
+        version = "2.4.5.0.20240330.124921";
         src = fetchurl {
-          url = "https://elpa.gnu.org/devel/use-package-2.4.5.0.20240113.53615.tar";
-          sha256 = "17c7q2y8lf37gvzxzqhbpr2szkkfnam5yagsqmrv8h0b5cnmnrlq";
+          url = "https://elpa.gnu.org/devel/use-package-2.4.5.0.20240330.124921.tar";
+          sha256 = "0jc1389g63bsy2w2fkw332vpwqrm5xci8skqf7mkg39y8nj2j0fw";
         };
         packageRequires = [ bind-key emacs ];
         meta = {
@@ -6805,7 +6809,7 @@
         version = "1.0.4.0.20180215.204244";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/validate-1.0.4.0.20180215.204244.tar";
-          sha256 = "0mmfwv5g4661r300d8lj907ynkdhjddvm5nca3s5zq7zv4ii0sd0";
+          sha256 = "1hayzx6x2xqfzg84ik5n5x84ixmwc0kc8h7f0796d4rfiljl4y3c";
         };
         packageRequires = [ cl-lib emacs seq ];
         meta = {
@@ -6820,7 +6824,7 @@
         version = "3.1.1.0.20210501.211155";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/valign-3.1.1.0.20210501.211155.tar";
-          sha256 = "1k9kqfbcc3glwn3n9l4hfflzqwl144r4zrxgprha3ya04y9ka91x";
+          sha256 = "1w5by0y4552c2qlm708b3523fp9sgizd0zxrwk2k1v6qwh04pa67";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -6839,7 +6843,7 @@
         version = "1.1.0.0.20220825.144758";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/vc-backup-1.1.0.0.20220825.144758.tar";
-          sha256 = "1mrk1f9ajdpdkqmwwha4qw4d8dxxbx3k7la31z118j04g8x5lqh4";
+          sha256 = "1jd3mv5467vy3ddrrhsv6nwsmyksqls5zhnb8hjb6imrhsylprbv";
         };
         packageRequires = [ compat emacs ];
         meta = {
@@ -6854,7 +6858,7 @@
         version = "1.2.0.20230129.104658";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/vc-got-1.2.0.20230129.104658.tar";
-          sha256 = "0r3jny1yhl9swrpbif46mjx6c2c84pwnh4byffasmgdamic9w5w8";
+          sha256 = "0dwigmr1rm8a80ngx25jrqlgnbdj51db6avmyg3v7avhkyg5x455";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -6872,7 +6876,7 @@
         version = "1.14.1.0.20230605.161947";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/vc-hgcmd-1.14.1.0.20230605.161947.tar";
-          sha256 = "0mv2n5xhilq5vc0k4iahk3fs0skdcshvmdyynqyy6ii764zmmg87";
+          sha256 = "1qrrbr7qgbsc00mrbslaa0k6n3dnighw5dq3mx1hlgz0flm623gi";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -6887,7 +6891,7 @@
         version = "0.2.2.0.20230718.145809";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/vcard-0.2.2.0.20230718.145809.tar";
-          sha256 = "0b3pxl03kjdyi70hnnf5sb2jvrkhnk0srsn2gr555y9kfbgzwwj1";
+          sha256 = "14rc6glk0wyfjymiv2h5db0cxpl7j8i7h3xlm5bhvgiab00vhk6x";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -6902,7 +6906,7 @@
         version = "1.1.0.20201127.191542";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/vcl-mode-1.1.0.20201127.191542.tar";
-          sha256 = "0ps87hxxm99wilc3ylv9i4b0035lg5i5df0i491m10z3x02i503p";
+          sha256 = "1fjf37s5yfivjbagw7m83y7z5i3dfzqnhcaga7r092v9jvkabw51";
         };
         packageRequires = [];
         meta = {
@@ -6917,7 +6921,7 @@
         version = "0.2.4.0.20230620.220116";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/vdiff-0.2.4.0.20230620.220116.tar";
-          sha256 = "17767yyim333xwgzn3kb2l58z1w4wh55s45a5y1jv12ilfi08cnq";
+          sha256 = "1974s441i7hvz6jly2xzndrfpp94nidhkb6gjgfk9f5lml1z17n1";
         };
         packageRequires = [ emacs hydra ];
         meta = {
@@ -6934,7 +6938,7 @@
         version = "2024.3.1.121933719.0.20240314.104026";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/verilog-mode-2024.3.1.121933719.0.20240314.104026.tar";
-          sha256 = "14v14yn6lcpjxldmzl9wymikxzli4mpvy9xsa0pvq0dlj0d30xgw";
+          sha256 = "1fk5jl9897jbzg4dqf1mhdk7dmjmcqxpb1v2sv9ni06bh25rn6z8";
         };
         packageRequires = [];
         meta = {
@@ -6946,10 +6950,10 @@
       elpaBuild {
         pname = "vertico";
         ename = "vertico";
-        version = "1.7.0.20240322.111445";
+        version = "1.8.0.20240424.195903";
         src = fetchurl {
-          url = "https://elpa.gnu.org/devel/vertico-1.7.0.20240322.111445.tar";
-          sha256 = "1v4c3h9qv1mr4dwirzh5r6vvkbxhxqw4cq245vla0ljgl9bhsm86";
+          url = "https://elpa.gnu.org/devel/vertico-1.8.0.20240424.195903.tar";
+          sha256 = "0yhk9cp3qlan2vci31an1d3c4mqz2ckbs7xhs12qk6vich66yshk";
         };
         packageRequires = [ compat emacs ];
         meta = {
@@ -6969,7 +6973,7 @@
         version = "0.7.7.0.20240202.84736";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/vertico-posframe-0.7.7.0.20240202.84736.tar";
-          sha256 = "0nx5lqkss2ya06c95apbmdii2rnidbhnywzyqs2mr2fyvlv1azwp";
+          sha256 = "02kwhyhvcjpnq5wskhydjf0v2qbk4dfp8x4nvsxfh31jfvxqvn8k";
         };
         packageRequires = [ emacs posframe vertico ];
         meta = {
@@ -6984,7 +6988,7 @@
         version = "1.0.0.20221221.82600";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/vigenere-1.0.0.20221221.82600.tar";
-          sha256 = "1snis37kp1zabydrwsvb7fh15ps4cs2vhn80xhxj4dcyp597q44v";
+          sha256 = "03zkmvx6cs5s0plbafb40pxs0rqx1vz12ql03zlx21h0zwgynqwf";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -7002,7 +7006,7 @@
         version = "1.2.0.20221221.82606";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/visual-filename-abbrev-1.2.0.20221221.82606.tar";
-          sha256 = "1jq6c1fzm6r73j6g2m7in6cly3pm9zyqldc67paqldalhg9kfda5";
+          sha256 = "1lb02jpljj2l1qkmn2pmbvw910nrpg9bsz6yfqfccyppvnmrv788";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -7016,10 +7020,10 @@
       elpaBuild {
         pname = "visual-fill";
         ename = "visual-fill";
-        version = "0.1.0.20201201.173845";
+        version = "0.2.0.20240424.95324";
         src = fetchurl {
-          url = "https://elpa.gnu.org/devel/visual-fill-0.1.0.20201201.173845.tar";
-          sha256 = "10wf6w2mjmhj7blxh76j0k0czjv4ww307pa99vp9xgcg63pcbbp6";
+          url = "https://elpa.gnu.org/devel/visual-fill-0.2.0.20240424.95324.tar";
+          sha256 = "1vgfa29gl4rh6gx08r1imlabznrlmx21p41ns62w9lxi6y8hzf8y";
         };
         packageRequires = [];
         meta = {
@@ -7034,7 +7038,7 @@
         version = "1.7.2.0.20231016.224412";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/vlf-1.7.2.0.20231016.224412.tar";
-          sha256 = "01r9li0pqypm37j0qh0aj29xvljvbcngsws0cc8bi1f8s9zlrnmw";
+          sha256 = "1smcw9x38cl7pnxdzy8ycx6g80yb5k0qd7x1520wzbp1g31dsar1";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -7046,10 +7050,10 @@
       elpaBuild {
         pname = "vundo";
         ename = "vundo";
-        version = "2.2.0.0.20240219.110913";
+        version = "2.3.0.0.20240425.211317";
         src = fetchurl {
-          url = "https://elpa.gnu.org/devel/vundo-2.2.0.0.20240219.110913.tar";
-          sha256 = "0y9b8029f9apx0nii968smr4dsiqr3ms3vs929par7h0ab6fcbb8";
+          url = "https://elpa.gnu.org/devel/vundo-2.3.0.0.20240425.211317.tar";
+          sha256 = "0dif9f3s3igpfi0r4dgzy14g8m6xf1g6lqyc0gfzf40n301iw4kz";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -7066,7 +7070,7 @@
         version = "2021.0.20220101.81620";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/wcheck-mode-2021.0.20220101.81620.tar";
-          sha256 = "0bk9w274k0rfmlxv5m9mxqy7ab8zdzk0sw4baqh73hvn8z3li8sp";
+          sha256 = "15785pi3fgfdi3adsa4lhsbdqw6bnfcm44apxpfixqfx56d3xh8m";
         };
         packageRequires = [];
         meta = {
@@ -7081,7 +7085,7 @@
         version = "0.2.1.0.20201202.220257";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/wconf-0.2.1.0.20201202.220257.tar";
-          sha256 = "06ghn72l2fwn0ys2iakgw1xqalip31yi0449c26rad8gaz6y7vxl";
+          sha256 = "0nnf2jak4hjzj2m2v44ymnyvsgiyzz49nnz48j3cpiw7vpb79ibh";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -7100,7 +7104,7 @@
         version = "0.1.2.0.20210811.22503";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/web-server-0.1.2.0.20210811.22503.tar";
-          sha256 = "0pvmlv74hy7ybnl0014ml7c314an2vc2z6fkizw06zr27x22jpvl";
+          sha256 = "1d2ij23gswvg41xgdg51m2prqn1f9lcwb2rb9rh3s9p6skj14y9b";
         };
         packageRequires = [ cl-lib emacs ];
         meta = {
@@ -7118,7 +7122,7 @@
         version = "1.1.2.0.20210605.74155";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/webfeeder-1.1.2.0.20210605.74155.tar";
-          sha256 = "0716x9a83wv41p3hz4qllrrv2w5jrw4xvb2fhi8kxaxrjhq989d9";
+          sha256 = "1xcaycimshijmyq071i5qch3idjfl3g4sws9ig97a9hx3m5wfi53";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -7136,7 +7140,7 @@
         version = "1.15.0.20230808.230535";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/websocket-1.15.0.20230808.230535.tar";
-          sha256 = "1li62x00jirf3z0llx262j6galpsvbcrq4daybnfkskmj4br5lhp";
+          sha256 = "15xry8bv9vcc470j3an5ks9z2hg7ia4nl7x4xvqb77rpbkq53rb9";
         };
         packageRequires = [ cl-lib ];
         meta = {
@@ -7151,10 +7155,10 @@
       elpaBuild {
         pname = "which-key";
         ename = "which-key";
-        version = "3.6.0.0.20240312.163350";
+        version = "3.6.0.0.20240423.92028";
         src = fetchurl {
-          url = "https://elpa.gnu.org/devel/which-key-3.6.0.0.20240312.163350.tar";
-          sha256 = "09mjn8ms7yhy93b3klqhvwvk2ipk4fx6l9s7446m7fxjdylgbj6a";
+          url = "https://elpa.gnu.org/devel/which-key-3.6.0.0.20240423.92028.tar";
+          sha256 = "0bx47186nrsfbjcfci7qfx3s874q4wvys6imkr4k0i9mmfnchvaa";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -7172,7 +7176,7 @@
         version = "3.0.2.0.20240314.125442";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/window-commander-3.0.2.0.20240314.125442.tar";
-          sha256 = "1bjamqhn8nkqxmak1xfxriwqjhb0bdj7ldcg6r24rral0f0crwhm";
+          sha256 = "082fwi8basfddwvi5yjgvdbf0f7xh58kmbvshnpim143pyxzgi9q";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -7190,7 +7194,7 @@
         version = "0.0.1.0.20200212.91532";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/windower-0.0.1.0.20200212.91532.tar";
-          sha256 = "0005r5xgi7h7i0lbdxbsfs7hvdx4isan6df283xflxs0qv3hwpql";
+          sha256 = "1s9kq9256x8chayqfcczxfcdb67pk6752xg7v6ixb9f3ad590ls2";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -7207,7 +7211,7 @@
         version = "0.1.0.20221221.82616";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/windresize-0.1.0.20221221.82616.tar";
-          sha256 = "16s4vxzjcjl5ahpfwzrr4z59mq0w0vb56ip3r5ky13xs3p5q2xl8";
+          sha256 = "0hgfyhz3jx4yhxspvh8zb4s852j8iwijrg7d4madr1p9rm2g3pjq";
         };
         packageRequires = [];
         meta = {
@@ -7222,7 +7226,7 @@
         version = "4.3.2.0.20240313.173240";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/wisi-4.3.2.0.20240313.173240.tar";
-          sha256 = "0cd7y0wg52yz8bp74m9p9wnw4zhsgks61znxxm8y0mjxxac4g188";
+          sha256 = "01i5r77ndxy76gby6v4j25w4pf6kmqaxagya29b9gnrnw07m8n5b";
         };
         packageRequires = [ emacs seq ];
         meta = {
@@ -7242,7 +7246,7 @@
         version = "1.3.0.0.20231023.83923";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/wisitoken-grammar-mode-1.3.0.0.20231023.83923.tar";
-          sha256 = "17kgrwm1jr1dxaprgay60jmgg5bfhmyrngzy0qfia6zs7w43bscx";
+          sha256 = "0ai5s1sgy0wk8hc84w7da65p30ldk514n2h6hqa71f9ia5jbd0j8";
         };
         packageRequires = [ emacs mmm-mode wisi ];
         meta = {
@@ -7257,7 +7261,7 @@
         version = "1.1.0.20221221.82918";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/wpuzzle-1.1.0.20221221.82918.tar";
-          sha256 = "16mdd7cyzbhipr934cps8qjpgsr9wwnrd81yaca356wq0cwafhvb";
+          sha256 = "0ky8n0xjxsw4a684g3l8imbrfsvbc9nq1i8gi1y384qjvvjqxaxv";
         };
         packageRequires = [];
         meta = {
@@ -7271,10 +7275,10 @@
       elpaBuild {
         pname = "wrap-search";
         ename = "wrap-search";
-        version = "4.12.10.0.20231002.184917";
+        version = "4.14.11.0.20240427.191832";
         src = fetchurl {
-          url = "https://elpa.gnu.org/devel/wrap-search-4.12.10.0.20231002.184917.tar";
-          sha256 = "0svxaqjalqny3q3xbkn60zni30m2r9wyfqhjlxx9zxyf05d1dypg";
+          url = "https://elpa.gnu.org/devel/wrap-search-4.14.11.0.20240427.191832.tar";
+          sha256 = "0286jkxhzn6x2jbvwlrknni3fdf9h2a2mi96kkasy91bph3snx2a";
         };
         packageRequires = [];
         meta = {
@@ -7289,7 +7293,7 @@
         version = "1.11.0.20221221.82941";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/xclip-1.11.0.20221221.82941.tar";
-          sha256 = "09dkxgd3bcn8pfw441jq73k49l6m467w89l2xwzb2zb24qpd78ic";
+          sha256 = "18l69h1vg98fd35hsbbzdlhgmilyj192g9vr34kkwzj0r6bak4l2";
         };
         packageRequires = [];
         meta = {
@@ -7304,7 +7308,7 @@
         version = "3.3.0.20230913.220528";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/xeft-3.3.0.20230913.220528.tar";
-          sha256 = "14kc375vxz6hi6i6fyamkhhjggzsx8bh57cpsqanihg45x3vcwdk";
+          sha256 = "1zpm678nmnfs7vwirjil35nfwjkhr83f6pmn43lcdzrcz6y7nxn1";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -7316,10 +7320,10 @@
       elpaBuild {
         pname = "xelb";
         ename = "xelb";
-        version = "0.18.0.20240212.225455";
+        version = "0.18.0.20240415.160551";
         src = fetchurl {
-          url = "https://elpa.gnu.org/devel/xelb-0.18.0.20240212.225455.tar";
-          sha256 = "0mr6rrg7jbxrb60qzmngvs5nkx7kxk8cpw0sm9i4yrwypfihffgz";
+          url = "https://elpa.gnu.org/devel/xelb-0.18.0.20240415.160551.tar";
+          sha256 = "13bvf0k39bdwh8xr2m096idx371xqdxh2x0g9kh6y65hc80l1k1x";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -7334,7 +7338,7 @@
         version = "1.0.5.0.20230911.4618";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/xpm-1.0.5.0.20230911.4618.tar";
-          sha256 = "0895r691nffqf728s4f124yjl97wwrfi9n7wlpxv9yrmry5c7256";
+          sha256 = "0ymby7wqz6bmn4kcl0if0ybhafba139pgmzifvk00bh7r0s5gsz9";
         };
         packageRequires = [ cl-lib queue ];
         meta = {
@@ -7346,10 +7350,10 @@
       elpaBuild {
         pname = "xr";
         ename = "xr";
-        version = "1.25.0.20240123.121048";
+        version = "1.25.0.20240401.74532";
         src = fetchurl {
-          url = "https://elpa.gnu.org/devel/xr-1.25.0.20240123.121048.tar";
-          sha256 = "0ishimhmmkkdzrx9pqq9y9j9n1h1vms49kfksg42mq6fahbc1hyn";
+          url = "https://elpa.gnu.org/devel/xr-1.25.0.20240401.74532.tar";
+          sha256 = "0q9s706dz52mfnjhc9b5km7756zsx9ws4nlc607i1v71hhz2k3lg";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -7361,10 +7365,10 @@
       elpaBuild {
         pname = "xref";
         ename = "xref";
-        version = "1.6.3.0.20240102.22814";
+        version = "1.6.3.0.20240328.32323";
         src = fetchurl {
-          url = "https://elpa.gnu.org/devel/xref-1.6.3.0.20240102.22814.tar";
-          sha256 = "1rnns4xhkcim2xa8fchf3bzydj7b4pksglivwikhmdwxkrsx0acx";
+          url = "https://elpa.gnu.org/devel/xref-1.6.3.0.20240328.32323.tar";
+          sha256 = "04rxbfzvz4z3q04r3817vrkx7w6kspdmpyl30h9v37vmwyxw722j";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -7382,7 +7386,7 @@
         version = "0.2.0.0.20231225.162837";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/xref-union-0.2.0.0.20231225.162837.tar";
-          sha256 = "1gfvd23d0ysrvricvcpqgbji705ibwpz3jcnk8lxiz890y4rs2vw";
+          sha256 = "0is4r12r30drq1msa5143bgnwam1kgbf2iia30fbqv0l0rhvqd9x";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -7398,10 +7402,10 @@
       elpaBuild {
         pname = "yasnippet";
         ename = "yasnippet";
-        version = "0.14.1.0.20240308.31533";
+        version = "0.14.1.0.20240406.91451";
         src = fetchurl {
-          url = "https://elpa.gnu.org/devel/yasnippet-0.14.1.0.20240308.31533.tar";
-          sha256 = "0n67qgrnjxv5vb1brc545b4jyan7adx4r8478mw3686ia014l1kh";
+          url = "https://elpa.gnu.org/devel/yasnippet-0.14.1.0.20240406.91451.tar";
+          sha256 = "02nkjbn2kgq2x1kbbmqygwqzrdy48nhizsy734n3gm8fnp4p5kxp";
         };
         packageRequires = [ cl-lib emacs ];
         meta = {
@@ -7419,7 +7423,7 @@
         version = "1.0.2.0.20221221.83103";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/yasnippet-classic-snippets-1.0.2.0.20221221.83103.tar";
-          sha256 = "1gy67f796pvaqckhbb9p05pn7f7d70ps7z0f1bg35156m3dfj7ff";
+          sha256 = "01066fmg42031naaqpy1ls8xw8k2hq02sib43smx20wdbqak6gx7";
         };
         packageRequires = [ yasnippet ];
         meta = {
@@ -7436,7 +7440,7 @@
         version = "2023.6.11.0.20231018.110342";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/zones-2023.6.11.0.20231018.110342.tar";
-          sha256 = "1hd4jlmy50050d1pr1r7civwv908ildpywr2525znhhh9nd29b9p";
+          sha256 = "0gyla7n7znzhxfdwb9jmxkijvidpxvqs9p68dbaiyk86daq2pxzm";
         };
         packageRequires = [];
         meta = {
@@ -7451,7 +7455,7 @@
         version = "1.0.6.0.20230617.194317";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/ztree-1.0.6.0.20230617.194317.tar";
-          sha256 = "1sgii6lf06dqhld67vhac1319nbjrrd9npm2z8aysxg6hs26hfab";
+          sha256 = "1zh6qdzalvikb48dc0pk3rnk7jvknx07dkrggc259q61jdp3pj1m";
         };
         packageRequires = [ cl-lib ];
         meta = {
@@ -7466,7 +7470,7 @@
         version = "0.4.0.0.20230524.131806";
         src = fetchurl {
           url = "https://elpa.gnu.org/devel/zuul-0.4.0.0.20230524.131806.tar";
-          sha256 = "0yand8b9givmwr8b3y8da4qwxq2j0kjyfzigwydf0lmc96nix777";
+          sha256 = "1pvfi8dp5i6h7z35h91408pz8bsval35sd7dk02v0hr6znln0pvb";
         };
         packageRequires = [ emacs project ];
         meta = {
diff --git a/pkgs/applications/editors/emacs/elisp-packages/elpa-generated.nix b/pkgs/applications/editors/emacs/elisp-packages/elpa-generated.nix
index ec8e192397a2..88d511c6a384 100644
--- a/pkgs/applications/editors/emacs/elisp-packages/elpa-generated.nix
+++ b/pkgs/applications/editors/emacs/elisp-packages/elpa-generated.nix
@@ -7,7 +7,7 @@
         version = "0.10.0";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/ace-window-0.10.0.tar";
-          sha256 = "1kfyf7za4zc41gf0k3rq8byvwkw7q5pxnyynh5i0gv686zrzak1i";
+          sha256 = "1sdzk1hgi3axqqbxf6aq1v5j3d8bybkz40dk8zqn49xxxfmzbdv4";
         };
         packageRequires = [ avy ];
         meta = {
@@ -22,7 +22,7 @@
         version = "1.11";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/ack-1.11.tar";
-          sha256 = "0fsi3lgfkyv9gxwcs0q5c9fawksz6x0pqarjagcndnd7jlbxjw7z";
+          sha256 = "1ji02v3qis5sx7hpaaxksgh2jqxzzilagz6z33kjb1lds1sq4z2c";
         };
         packageRequires = [];
         meta = {
@@ -37,7 +37,7 @@
         version = "0.7";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/activities-0.7.tar";
-          sha256 = "17vwbblcwayf1lqfvc64s606cyv1pyh094i3d8fz0k5ivgfp6ybi";
+          sha256 = "1775cdk9hv257m6l7icg247fc36g7lwgjg8iivj52m6qg7p7cz9g";
         };
         packageRequires = [ emacs persist ];
         meta = {
@@ -58,7 +58,7 @@
         version = "8.1.0";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/ada-mode-8.1.0.tar";
-          sha256 = "1nfqm173gbk6483xgdkmxp5nb8biihq1623058gbl0dfwn0p9njh";
+          sha256 = "10k514al716qjx3qg1m4k1rnf70fa73vrmmx3pp75zrw1d0db9y6";
         };
         packageRequires = [ emacs gnat-compiler uniquify-files wisi ];
         meta = {
@@ -73,7 +73,7 @@
         version = "2020.1";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/ada-ref-man-2020.1.tar";
-          sha256 = "1g4brb9g2spd55issyqldfc4azwilbrz8kh8sl0lka2kn42l3qqc";
+          sha256 = "0ijgl9lnmn8n3pllgh3apl2shbl38f3fxn8z5yy4q6pqqx0vr3fn";
         };
         packageRequires = [];
         meta = {
@@ -88,7 +88,7 @@
         version = "0.8";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/adaptive-wrap-0.8.tar";
-          sha256 = "1gs1pqzywvvw4prj63vpj8abh8h14pjky11xfl23pgpk9l3ldrb0";
+          sha256 = "1dz5mi21v2wqh969m3xggxbzq3qf78hps418rzl73bb57l837qp8";
         };
         packageRequires = [];
         meta = {
@@ -103,7 +103,7 @@
         version = "3.2";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/adjust-parens-3.2.tar";
-          sha256 = "01l8bgfqgbkh5p9r8mc5pqizg0sgr7bl6x7x657gm0qjnwmfwai5";
+          sha256 = "1gdlykg7ix3833s40152p1ji4r1ycp18niqjr1f994y4ydqxq8yl";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -117,8 +117,8 @@
         ename = "advice-patch";
         version = "0.1";
         src = fetchurl {
-          url = "https://elpa.gnu.org/packages/advice-patch-0.1.el";
-          sha256 = "0mb7linzsnf72vzkn9h6w2i2b0h92h6qzkapyrv61vh5a67k1m0s";
+          url = "https://elpa.gnu.org/packages/advice-patch-0.1.tar";
+          sha256 = "0km891648k257k4d6hbrv6jyz9663kww8gfarvzf9lv8i4qa5scp";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -133,7 +133,7 @@
         version = "1.7";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/aggressive-completion-1.7.tar";
-          sha256 = "1rpy53kh19ljjr2xgna716jynajjpgkkjgcl3gzryxsmky8mwbfl";
+          sha256 = "0d388w0yjpjzhqlar9fjrxsjxma09j8as6758sswv01r084gpdbk";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -148,7 +148,7 @@
         version = "1.10.0";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/aggressive-indent-1.10.0.tar";
-          sha256 = "166jk1z0vw481lfi3gbg7f9vsgwfv8fiyxpkfphgvgcmf5phv4q1";
+          sha256 = "1c27g9qhqc4bh96bkxdcjbrhiwi7kzki1l4yhxvyvwwarisl6c7b";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -163,7 +163,7 @@
         version = "1.10.0";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/ahungry-theme-1.10.0.tar";
-          sha256 = "14q5yw56n82qph09bk7wmj5b1snhh9w0nk5s1l7yn9ldg71xq6pm";
+          sha256 = "16k6wm1qss5bk45askhq5vswrqsjic5dijpkgnmwgvm8xsdlvni6";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -178,7 +178,7 @@
         version = "0.0.6";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/aircon-theme-0.0.6.tar";
-          sha256 = "09yjjx9gy1x2i8xk7jlblzk6gkx7cgglb0pwxbl8n6aj19ba40nd";
+          sha256 = "0dcnlk3q95bcghlwj8ii40xxhspnfbqcr9mvj1v3adl1s623fyp0";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -186,16 +186,16 @@
           license = lib.licenses.free;
         };
       }) {};
-    all = callPackage ({ elpaBuild, fetchurl, lib }:
+    all = callPackage ({ elpaBuild, emacs, fetchurl, lib }:
       elpaBuild {
         pname = "all";
         ename = "all";
-        version = "1.0";
+        version = "1.1";
         src = fetchurl {
-          url = "https://elpa.gnu.org/packages/all-1.0.el";
-          sha256 = "17h4cp0xnh08szh3snbmn1mqq2smgqkn45bq7v0cpsxq1i301hi3";
+          url = "https://elpa.gnu.org/packages/all-1.1.tar";
+          sha256 = "067c5ynklw1inbjwd1l6dkbpx3vw487qv39y7mdl55a6nqx7hgk4";
         };
-        packageRequires = [];
+        packageRequires = [ emacs ];
         meta = {
           homepage = "https://elpa.gnu.org/packages/all.html";
           license = lib.licenses.free;
@@ -208,7 +208,7 @@
         version = "1.2.0";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/altcaps-1.2.0.tar";
-          sha256 = "0pfd3j8x2ayqnvg418qcm4rkxjvm5qm2ks9xsw4irv04452zhahc";
+          sha256 = "1smqvq21jparnph03kyyzm47rv5kia6bna1m1pf8ibpkph64rykw";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -222,8 +222,8 @@
         ename = "ampc";
         version = "0.2";
         src = fetchurl {
-          url = "https://elpa.gnu.org/packages/ampc-0.2.el";
-          sha256 = "1pdy5mvi6h8m7qjnxiy217fgcp9w91375hq29bacfgh7bix56jlr";
+          url = "https://elpa.gnu.org/packages/ampc-0.2.tar";
+          sha256 = "17l2c5hr7cq0vf4qc8s2adwlhqp74glc4v909h0jcavrnbn8yn80";
         };
         packageRequires = [];
         meta = {
@@ -237,8 +237,8 @@
         ename = "arbitools";
         version = "0.977";
         src = fetchurl {
-          url = "https://elpa.gnu.org/packages/arbitools-0.977.el";
-          sha256 = "0nvdy14lqvy2ca4vw2qlr2kg2vv4y4sr8sa7kqrpf8cg7k9q3mbv";
+          url = "https://elpa.gnu.org/packages/arbitools-0.977.tar";
+          sha256 = "0s5dpprx24fxm0qk8nzm39c16ydiq97wzz3l7zi69r3l9wf31rb3";
         };
         packageRequires = [ cl-lib ];
         meta = {
@@ -252,8 +252,8 @@
         ename = "ascii-art-to-unicode";
         version = "1.13";
         src = fetchurl {
-          url = "https://elpa.gnu.org/packages/ascii-art-to-unicode-1.13.el";
-          sha256 = "1c0jva3amhl9c5xc5yzdpi58c8m1djym4ccj31z6wmakq7npy07p";
+          url = "https://elpa.gnu.org/packages/ascii-art-to-unicode-1.13.tar";
+          sha256 = "0qlh8zi691gz7s1ayp1x5ga3sj3rfy79y21r6hqf696mrkgpz1d8";
         };
         packageRequires = [];
         meta = {
@@ -268,7 +268,7 @@
         version = "0.7";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/assess-0.7.tar";
-          sha256 = "0ixs6ab5j12q69bn9h423a6c7mpc7r5spf6m039x3rl14yc04cy4";
+          sha256 = "1wka2idr63bn8fgh0cz4lf21jvlhkr895y0xnh3syp9vrss5hzsp";
         };
         packageRequires = [ emacs m-buffer ];
         meta = {
@@ -283,7 +283,7 @@
         version = "1.9.8";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/async-1.9.8.tar";
-          sha256 = "00x22dh96vhyvgailxm3mv2jqhwlb6lisrjv10m8vpkmlk5mhnwb";
+          sha256 = "0m9w7f8rgpcljsv2p6a9gwqx12whf66mbjranwwzacn98rwchh4v";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -298,7 +298,7 @@
         version = "14.0.4";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/auctex-14.0.4.tar";
-          sha256 = "03w6qs4f0ksb8f54zsx189775w3wdyfaqg3dwn20a77y5cvisk52";
+          sha256 = "14rfv7xlwdqp42dilmpg11d58q8pzw15fv01hq80iv9kyzsfvxd7";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -312,8 +312,8 @@
         ename = "aumix-mode";
         version = "7";
         src = fetchurl {
-          url = "https://elpa.gnu.org/packages/aumix-mode-7.el";
-          sha256 = "0qyjw2g3pzcxqdg1cpp889nmb524jxqq32dz7b7cg2m903lv5gmv";
+          url = "https://elpa.gnu.org/packages/aumix-mode-7.tar";
+          sha256 = "08baz31hm0nhikqg5h294kg5m4qkiayjhirhb57v57g5722jfk3m";
         };
         packageRequires = [];
         meta = {
@@ -327,8 +327,8 @@
         ename = "auto-correct";
         version = "1.1.4";
         src = fetchurl {
-          url = "https://elpa.gnu.org/packages/auto-correct-1.1.4.el";
-          sha256 = "1ml35l6lk4sf51sh6cal1ylsn61iddz0s01wwly199i3nim0qnw8";
+          url = "https://elpa.gnu.org/packages/auto-correct-1.1.4.tar";
+          sha256 = "05ky3qxbvxrkywpqj6syl7ll6za74fhjzrcia6wdmxsnjya5qbf1";
         };
         packageRequires = [];
         meta = {
@@ -343,7 +343,7 @@
         version = "0.1.2";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/auto-header-0.1.2.tar";
-          sha256 = "0rk7xq7bzgaxdyw7j3vjnishf2pyzs84xamq4blgbb93n0f4nlfj";
+          sha256 = "0p22bpdy29i7ff8rzjh1qzvj4d8igl36gs1981kmds4qz23qn447";
         };
         packageRequires = [];
         meta = {
@@ -358,7 +358,7 @@
         version = "0.10.10";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/auto-overlays-0.10.10.tar";
-          sha256 = "0wln6b4j3pd3mhx6sx0bnz74c4n6fidmkg77cqfpxs4j5l1zjp2z";
+          sha256 = "0jn7lk8vzdrf0flxwwx295z0mrghd3lyspfadwz35c6kygvy8078";
         };
         packageRequires = [ cl-lib ];
         meta = {
@@ -370,10 +370,10 @@
       elpaBuild {
         pname = "autocrypt";
         ename = "autocrypt";
-        version = "0.4.1";
+        version = "0.4.2";
         src = fetchurl {
-          url = "https://elpa.gnu.org/packages/autocrypt-0.4.1.tar";
-          sha256 = "1r2b1nyw2ai58br3kh4r5rpy450njz7rcccbmcwxsyfgiz4wbqy8";
+          url = "https://elpa.gnu.org/packages/autocrypt-0.4.2.tar";
+          sha256 = "0mc4vb6x7qzn29dg9m05zgli6mwh9cj4vc5n6hvarzkn9lxl6mr3";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -403,7 +403,7 @@
         version = "3.2.2.4";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/bbdb-3.2.2.4.tar";
-          sha256 = "13i8ggknc29sny16rq126q0ssz26m3fam0zpdhlsm05pa8dydd7p";
+          sha256 = "1ymjydf54z3rbkxk4irvan5s8lc8wdhk01691741vfznx0nsc4a2";
         };
         packageRequires = [ cl-lib emacs ];
         meta = {
@@ -418,7 +418,7 @@
         version = "1.3.4";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/beacon-1.3.4.tar";
-          sha256 = "1fy76c2x0xpnx7wfpsxfawdlrspan4dbj2157k9sa62i6a1c8f21";
+          sha256 = "1hxb6vyvpppj7yzphknmh8m4a1h89lg6jr98g4d62k0laxazvdza";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -433,7 +433,7 @@
         version = "1.0.1";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/beframe-1.0.1.tar";
-          sha256 = "0j4ks5i67ck1cid6whvwq564s94xb0q5fchb006wzbniy1inwcna";
+          sha256 = "1p8zglpdcss0p307i4h2zpqbsiipmgmk0a2fx6j9w3lx0zgaf2xj";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -448,7 +448,7 @@
         version = "0.1.3";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/bicep-ts-mode-0.1.3.tar";
-          sha256 = "1di4pkk682kl46acdq44d1xykzqnvayhd84rwf71rj3q252di5a6";
+          sha256 = "02377gsdnfvvydjw014p2y6y74nd5zfh1ghq5l9ayq0ilvv8fmx7";
         };
         packageRequires = [];
         meta = {
@@ -478,7 +478,7 @@
         version = "0.3";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/blist-0.3.tar";
-          sha256 = "1cqvj6jjkch4xivdn2vyxz38amm6w403hnrfx0hhknbwxq5k8swp";
+          sha256 = "1p10d9q14px19m3vajqmm71lmnbxxsc7qczgq11vhg485c20y3va";
         };
         packageRequires = [ emacs ilist ];
         meta = {
@@ -493,7 +493,7 @@
         version = "0.3.1";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/bluetooth-0.3.1.tar";
-          sha256 = "1p10kcim5wqnbj2kiqv6hgjkzznaa48qysnnf8ym90mylsczr70z";
+          sha256 = "1yjqjm6cis6bq18li63hbhc4qzki3486xvdjkzs2gj4chc1yw1x4";
         };
         packageRequires = [ dash emacs ];
         meta = {
@@ -508,7 +508,7 @@
         version = "0.4.5";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/bnf-mode-0.4.5.tar";
-          sha256 = "0bj5ffqi54cdrraj5bp4v2cpbxjzly1p467dx1hzrlwv2b1svy2y";
+          sha256 = "1x6km8rhhb5bkas3yfmjfpyxlhyxkqnzviw1pqlq88c95j88h3d4";
         };
         packageRequires = [ cl-lib emacs ];
         meta = {
@@ -520,10 +520,10 @@
       elpaBuild {
         pname = "boxy";
         ename = "boxy";
-        version = "1.1.3";
+        version = "1.1.4";
         src = fetchurl {
-          url = "https://elpa.gnu.org/packages/boxy-1.1.3.tar";
-          sha256 = "1z153lccj6rgix9kj5xk8xzdc44ixq8flia7ppjxpj7c0slr3sm2";
+          url = "https://elpa.gnu.org/packages/boxy-1.1.4.tar";
+          sha256 = "0mwj1qc626f1iaq5iaqm1f4iwyz91hzqhzfk5f53gsqka7yz2fnf";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -535,10 +535,10 @@
       elpaBuild {
         pname = "boxy-headings";
         ename = "boxy-headings";
-        version = "2.1.4";
+        version = "2.1.5";
         src = fetchurl {
-          url = "https://elpa.gnu.org/packages/boxy-headings-2.1.4.tar";
-          sha256 = "101kiw10p0sd8j8px16zsw57my7h2f1anhnwj678z22hxhs8vla7";
+          url = "https://elpa.gnu.org/packages/boxy-headings-2.1.5.tar";
+          sha256 = "0w3cy2r8iqsb79r33lllj08v719hq0xniq5pbr9sl8kn2raxcjhr";
         };
         packageRequires = [ boxy emacs org ];
         meta = {
@@ -553,7 +553,7 @@
         version = "1.0.1";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/breadcrumb-1.0.1.tar";
-          sha256 = "0yqsyk8j0r1na2gybil64fb928dq7liwnk5xj18j9z8vgkdm0z0y";
+          sha256 = "1s69a2z183mla4d4b5pcsswbwa3hjvsg1xj7r3hdw6j841b0l9dw";
         };
         packageRequires = [ emacs project ];
         meta = {
@@ -565,10 +565,10 @@
       elpaBuild {
         pname = "brief";
         ename = "brief";
-        version = "5.90";
+        version = "5.91";
         src = fetchurl {
-          url = "https://elpa.gnu.org/packages/brief-5.90.tar";
-          sha256 = "18v0qf3aj14sh6njrrjdahzaghsqy50hdjrwl3k1m7x2jqvzxd1z";
+          url = "https://elpa.gnu.org/packages/brief-5.91.tar";
+          sha256 = "106xm23045l3ds5q04s7c6wa00ffv7rw495cjqp99nzqvvbmivcb";
         };
         packageRequires = [ cl-lib nadvice ];
         meta = {
@@ -583,7 +583,7 @@
         version = "0.6";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/buffer-env-0.6.tar";
-          sha256 = "08li070s2s64lifgzns0z6xjk1qyaik56d6sbdp3gsyghc1sx7rn";
+          sha256 = "08qaw4y1sszhh97ih13vfrm0r1nn1k410f2wwvffvncxhqgxz5lv";
         };
         packageRequires = [ compat emacs ];
         meta = {
@@ -601,8 +601,8 @@
         ename = "buffer-expose";
         version = "0.4.3";
         src = fetchurl {
-          url = "https://elpa.gnu.org/packages/buffer-expose-0.4.3.el";
-          sha256 = "1blpvan31mvqhzal16sdn564jnfnn7xsfn8zb65ijndh23drljwd";
+          url = "https://elpa.gnu.org/packages/buffer-expose-0.4.3.tar";
+          sha256 = "1ymjjjrbknp3hdfwd8zyzfrsn5n267245ffmplm7yk2s34kgxr0n";
         };
         packageRequires = [ cl-lib emacs ];
         meta = {
@@ -617,7 +617,7 @@
         version = "0.6";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/bufferlo-0.6.tar";
-          sha256 = "0q942zsxv27gvkx3b391yzshh58l2xd75y04rqyqk269q0cdhqff";
+          sha256 = "0gvg1mag8ngjmjl4d6zr99k7mq368l1m6dxy9mk6icgxm3sqr1yk";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -647,7 +647,7 @@
         version = "0.0.1";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/buildbot-0.0.1.tar";
-          sha256 = "0glvybvjgwbx3dnr09w9y65v2ic080a4zhs88893amvfw29ig4lx";
+          sha256 = "056jakpyslizsp8sik5f7m90dpcga8y38hb5rh1yfa7k1xwcrrk2";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -662,7 +662,7 @@
         version = "1.4.1";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/calibre-1.4.1.tar";
-          sha256 = "1wjz4d2hrhwcd9ljngygacxm28ddgwndp9krz5cxhjz2dkhs1pgb";
+          sha256 = "1ak05y3cmmwpg8bijkwl97kvfxhxh9xxc74askyafc50n0jvaq87";
         };
         packageRequires = [ compat emacs ];
         meta = {
@@ -674,10 +674,10 @@
       elpaBuild {
         pname = "cape";
         ename = "cape";
-        version = "1.4";
+        version = "1.5";
         src = fetchurl {
-          url = "https://elpa.gnu.org/packages/cape-1.4.tar";
-          sha256 = "1y0b0lx6qb27x3d0yn3gxykfir07cw4w5jkkw3ff8x1ak6wrf4zv";
+          url = "https://elpa.gnu.org/packages/cape-1.5.tar";
+          sha256 = "1kg5a2x23gmdcv8kwzmz8qjfr05r9rfzwb7cj38ambpqpppxl7ij";
         };
         packageRequires = [ compat emacs ];
         meta = {
@@ -692,7 +692,7 @@
         version = "0.3";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/capf-autosuggest-0.3.tar";
-          sha256 = "05abnvg84248pbqr2hdkyxr1q1qlgsf4nji23nw41bfly795ikpm";
+          sha256 = "18cwiv227m8y1xqvsnjrzgd6f6kvvih742h8y38pphljssl109fk";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -706,8 +706,8 @@
         ename = "caps-lock";
         version = "1.0";
         src = fetchurl {
-          url = "https://elpa.gnu.org/packages/caps-lock-1.0.el";
-          sha256 = "1i4hwam81p4dr0bk8257fkiz4xmv6knkjxj7a00fa35kgx5blpva";
+          url = "https://elpa.gnu.org/packages/caps-lock-1.0.tar";
+          sha256 = "1yy4kjc1zlpzkam0jj8h3v5h23wyv1yfvwj2drknn59d8amc1h4y";
         };
         packageRequires = [];
         meta = {
@@ -721,8 +721,8 @@
         ename = "captain";
         version = "1.0.3";
         src = fetchurl {
-          url = "https://elpa.gnu.org/packages/captain-1.0.3.el";
-          sha256 = "02b4s4pfnwfwc3xgh4g96wrqll37m35dc2x09pjwkdjxglki7045";
+          url = "https://elpa.gnu.org/packages/captain-1.0.3.tar";
+          sha256 = "0l8z8bqk705jdl7gvd2x7nhs0z6gn3swk5yzp3mnhjcfda6whz8l";
         };
         packageRequires = [];
         meta = {
@@ -737,7 +737,7 @@
         version = "2.0.5";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/chess-2.0.5.tar";
-          sha256 = "1a4iwjdh6k348df6qywjws9z9f862d62m0b2sz57z4xhywiyxpr7";
+          sha256 = "0dgmp7ymjyb5pa93n05s0d4ql7wk98r9s4f9w35yahgqk9xvqclj";
         };
         packageRequires = [ cl-lib ];
         meta = {
@@ -751,8 +751,8 @@
         ename = "cl-generic";
         version = "0.3";
         src = fetchurl {
-          url = "https://elpa.gnu.org/packages/cl-generic-0.3.el";
-          sha256 = "0vb338bhjpsnrf60qgxny4z5rjrnifahnrv9axd4shay89d894zq";
+          url = "https://elpa.gnu.org/packages/cl-generic-0.3.tar";
+          sha256 = "0dqn484xb25ifiqd9hqdrs954c74akrf95llx23b2kzf051pqh1k";
         };
         packageRequires = [];
         meta = {
@@ -767,7 +767,7 @@
         version = "0.7.1";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/cl-lib-0.7.1.tar";
-          sha256 = "1pnsm335wi1lkg7vi0lnqxajm12rvyakzd5iccxhipbk3gz3r6my";
+          sha256 = "1wpdg2zwhzxv4bkx9ldiwd16l6244wakv8yphrws4mnymkxvf2q1";
         };
         packageRequires = [];
         meta = {
@@ -782,7 +782,7 @@
         version = "0.3";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/clipboard-collector-0.3.tar";
-          sha256 = "09zxbivmc1zhcj8ksac2a0qpqh74rrx2slnj6cwz1n1nixn19743";
+          sha256 = "0v70f9pljq3jar3d1vpaj48nhrg90jzsvqcbzgv54989w8rvvcd6";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -797,7 +797,7 @@
         version = "1.1";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/cobol-mode-1.1.tar";
-          sha256 = "1ivp0pghrkflhr2md34a6a86gwns867bnl30nqzwq8m4qc5xqjra";
+          sha256 = "0aicx6vvhgn0fvikbq74vnvvwh228pxdqf52sbiffhzgb7pkbvcj";
         };
         packageRequires = [ cl-lib ];
         meta = {
@@ -812,7 +812,7 @@
         version = "0.4";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/code-cells-0.4.tar";
-          sha256 = "0a7m6d5slz2zarbk54900cihs5071i63qdz4yj8n7j3zfz28x5kg";
+          sha256 = "0kxpnydxlj8pqh54c4c80jlyc6jcplf89bkh3jmm509fmyr7sf20";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -827,7 +827,7 @@
         version = "0.4";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/comint-mime-0.4.tar";
-          sha256 = "1wgr1dq3qdnsvziylcqaiwhjafdqph4jrnq4cp0lcr1j796vp1dz";
+          sha256 = "13vi973p0ahpvssv5m1pb63f2wkca0lz0nw3nsj6p4s3jzp46npa";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -841,8 +841,8 @@
         ename = "compact-docstrings";
         version = "0.2";
         src = fetchurl {
-          url = "https://elpa.gnu.org/packages/compact-docstrings-0.2.el";
-          sha256 = "0qcxvcwpl263fs1zd6gmbqliwlpkw012p5ba6y05fpm9p10v600h";
+          url = "https://elpa.gnu.org/packages/compact-docstrings-0.2.tar";
+          sha256 = "00fjhfysjyqigkg0icxlqw6imzhjk5xhlxmxxs1jiafhn55dbcpj";
         };
         packageRequires = [];
         meta = {
@@ -857,7 +857,7 @@
         version = "0.10.2";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/company-0.10.2.tar";
-          sha256 = "0j2qrnx2w2al4f2n37b89q0pkabh5ccv00gsknvgaylhy0za5gq9";
+          sha256 = "1708cqrcw26y8z7inm4nzbn2y8gkan5nv5bjzc4ry8zhqz94sxkz";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -871,8 +871,8 @@
         ename = "company-ebdb";
         version = "1.1";
         src = fetchurl {
-          url = "https://elpa.gnu.org/packages/company-ebdb-1.1.el";
-          sha256 = "146qpiigz12zp1823ggxfrx090g0mxs7gz1ba7sa0iq6ibgzwwm9";
+          url = "https://elpa.gnu.org/packages/company-ebdb-1.1.tar";
+          sha256 = "1ym0r7y90n4d6grd4l02rxk096gsjmw9j81slig0pq1ky33rb6ks";
         };
         packageRequires = [ company ebdb ];
         meta = {
@@ -891,7 +891,7 @@
         version = "1.5.1";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/company-math-1.5.1.tar";
-          sha256 = "1inib2ywb4ycr9hxgrzyffqi0jnrpjsn52bkwlsqyzgfxr5n4qsw";
+          sha256 = "16ya3yscxxmz9agi0nc5pi43wkfv45lh1zd89yqfc7zcw02nsnld";
         };
         packageRequires = [ company math-symbol-lists ];
         meta = {
@@ -910,7 +910,7 @@
         version = "0.2.3";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/company-statistics-0.2.3.tar";
-          sha256 = "0780xp09f739jys469x4fqpgj1lysi8gnhiaz0735jib07lmh4ww";
+          sha256 = "1gfwhgv7q9d3xjgaim25diyd6jfl9w3j07qrssphcrdxv0q24d14";
         };
         packageRequires = [ company emacs ];
         meta = {
@@ -925,7 +925,7 @@
         version = "29.1.4.5";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/compat-29.1.4.5.tar";
-          sha256 = "191cjzrw9xm5bvcf8s1yr9hdcn9i02789xfd8pz33lk65s0rq413";
+          sha256 = "0i57hs3ak5y0fsfdwg87ib64ny0ar1nk67f5dy2qrm8x3i0h086s";
         };
         packageRequires = [ emacs seq ];
         meta = {
@@ -937,10 +937,10 @@
       elpaBuild {
         pname = "consult";
         ename = "consult";
-        version = "1.4";
+        version = "1.5";
         src = fetchurl {
-          url = "https://elpa.gnu.org/packages/consult-1.4.tar";
-          sha256 = "1vxc9i4jwnq4q8svgqjzn6nqqjzh3b6gp81iyfcr5n2122y0aq1y";
+          url = "https://elpa.gnu.org/packages/consult-1.5.tar";
+          sha256 = "1gx4cjrcaq5dn3rrd2dm30jz07zrnddf0y33qi0dmiqlsyg7l9qw";
         };
         packageRequires = [ compat emacs ];
         meta = {
@@ -956,10 +956,10 @@
       elpaBuild {
         pname = "consult-hoogle";
         ename = "consult-hoogle";
-        version = "0.2.0";
+        version = "0.2.1";
         src = fetchurl {
-          url = "https://elpa.gnu.org/packages/consult-hoogle-0.2.0.tar";
-          sha256 = "1wzd7i7sfd1l8fkfgfaj5vyc9nx9aycfr4yp5yxg1mr6fz8m2rmz";
+          url = "https://elpa.gnu.org/packages/consult-hoogle-0.2.1.tar";
+          sha256 = "15am29sn0qx6yn8xcmdafzh1ijph10yd65cphcax02yx782hv6pr";
         };
         packageRequires = [ emacs haskell-mode ];
         meta = {
@@ -974,7 +974,7 @@
         version = "0.8.1";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/consult-recoll-0.8.1.tar";
-          sha256 = "0z2vlnv0q6hzvj6hk2a5flhp1gmm71c65j8nrpk4a18aq5gir213";
+          sha256 = "1zdmkq9cjb6kb0hf3ngm07r3mhrjal27x34i1bm7ri3089wbsp8v";
         };
         packageRequires = [ consult emacs ];
         meta = {
@@ -989,7 +989,7 @@
         version = "8.1.0";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/context-coloring-8.1.0.tar";
-          sha256 = "01wm36qgxsg7lgdxkn7avzfmxcpilsmvfwz3s7y04i0sdrsjvzp4";
+          sha256 = "0mqdl34g493pps85ckin5i3iz8kwlqkcwjvsf2sj4nldjvvfk1ng";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -1001,10 +1001,10 @@
       elpaBuild {
         pname = "corfu";
         ename = "corfu";
-        version = "1.2";
+        version = "1.3";
         src = fetchurl {
-          url = "https://elpa.gnu.org/packages/corfu-1.2.tar";
-          sha256 = "1yy4lqbkj8hkvbzaw5wrjqxwp2afhgwjyvmqncils37hvyih4rwl";
+          url = "https://elpa.gnu.org/packages/corfu-1.3.tar";
+          sha256 = "13y0dws1k4682v039ab6b0xxqlg7anknscqs20bmj8lfm2z48znx";
         };
         packageRequires = [ compat emacs ];
         meta = {
@@ -1019,7 +1019,7 @@
         version = "1.6";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/coterm-1.6.tar";
-          sha256 = "0ikfm1acdsckflv1hcy9lmssyac2099x2yybhvb6vkghcgy99p00";
+          sha256 = "0kgsg99dggirz6asyppwx1ydc0jh62xd1bfhnm2hyby5qkqz1yvk";
         };
         packageRequires = [ compat emacs ];
         meta = {
@@ -1034,7 +1034,7 @@
         version = "0.14.2";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/counsel-0.14.2.tar";
-          sha256 = "13119alyzr2xipk3jra3iawplqkqgvv0gdcm4yd527z592b0s7f0";
+          sha256 = "10jajfl2vhqj2awy991kqrf1hcsj8nkvn760cbxjsm2lhzvqqhj3";
         };
         packageRequires = [ emacs ivy swiper ];
         meta = {
@@ -1042,16 +1042,16 @@
           license = lib.licenses.free;
         };
       }) {};
-    cpio-mode = callPackage ({ elpaBuild, emacs, fetchurl, lib }:
+    cpio-mode = callPackage ({ elpaBuild, fetchurl, lib }:
       elpaBuild {
         pname = "cpio-mode";
         ename = "cpio-mode";
         version = "0.17";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/cpio-mode-0.17.tar";
-          sha256 = "144ajbxmz6amb2234a278c9sl4zg69ndswb8vk0mcq8y9s2abm1x";
+          sha256 = "13jay5c36svq2r78gwp7d1slpkkzrx749q28554mxd855fr6pvaj";
         };
-        packageRequires = [ emacs ];
+        packageRequires = [];
         meta = {
           homepage = "https://elpa.gnu.org/packages/cpio-mode.html";
           license = lib.licenses.free;
@@ -1064,7 +1064,7 @@
         version = "1.0.5";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/cpupower-1.0.5.tar";
-          sha256 = "1hg5jwdkxl6mx145wwdmnhc8k3z3srvpm757kppj1ybmvjbpxx0y";
+          sha256 = "155fhf38p95a5ws6jzpczw0z03zwbsqzdwj50v3grjivyp74pddz";
         };
         packageRequires = [];
         meta = {
@@ -1079,7 +1079,7 @@
         version = "0.3.5";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/crdt-0.3.5.tar";
-          sha256 = "0pir9ap8lryrw12slgg4v30bzjphc37r6p0fw36larlh9wp8jj5z";
+          sha256 = "038qivbw02h1i98ym0fwx72x05gm0j4h93a54v1l7g25drm5zm83";
         };
         packageRequires = [];
         meta = {
@@ -1093,8 +1093,8 @@
         ename = "crisp";
         version = "1.3.6";
         src = fetchurl {
-          url = "https://elpa.gnu.org/packages/crisp-1.3.6.el";
-          sha256 = "0jf4668h0mzh8han2vbvpzz8m02b8rsbdrj0ddar30w5i6v2f8kz";
+          url = "https://elpa.gnu.org/packages/crisp-1.3.6.tar";
+          sha256 = "0am7gwadjp0nwlvf7y4sp9brbm0234k55bnxfv44lkwdf502mq8y";
         };
         packageRequires = [];
         meta = {
@@ -1109,7 +1109,7 @@
         version = "2.0.0";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/csharp-mode-2.0.0.tar";
-          sha256 = "16b9zp6psf32ds9kk7vwf57xppz2jvbk4wpr7mqbn75bx3qvl44m";
+          sha256 = "1jjxq5vkqq2v8rkcm2ygggpg355aqmrl2hdhh1xma3jlnj5carnf";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -1124,7 +1124,7 @@
         version = "1.23";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/csv-mode-1.23.tar";
-          sha256 = "0bdx56bn5aw0xjqgqhx2ccrrns3si04zy9ya755jz7n1djqn3mcz";
+          sha256 = "0b5qcxdp7y78mfgcvh9plfc0l5qbwsvrj1bswyimrzg210zhk4zm";
         };
         packageRequires = [ cl-lib emacs ];
         meta = {
@@ -1139,7 +1139,7 @@
         version = "1.0.1";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/cursory-1.0.1.tar";
-          sha256 = "0m6q7x5144l2q582gdaqgirvgy30ljd1qyjf82l3v1jkc5qf9wfr";
+          sha256 = "09ddn7rlmznq833nsm6s6zhzrq94lrbmm1vln43hax9yf784pqbr";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -1154,7 +1154,7 @@
         version = "0.1";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/cycle-quotes-0.1.tar";
-          sha256 = "0aa6ykblgb6anqmi4qxakbvyrq9v02skgayhfb2qddffiww404ka";
+          sha256 = "1glf8sd3gqp9qbd238vxd3aprdz93f887893xji3ybqli36i2xs1";
         };
         packageRequires = [];
         meta = {
@@ -1166,10 +1166,10 @@
       elpaBuild {
         pname = "dape";
         ename = "dape";
-        version = "0.9.0";
+        version = "0.10.0";
         src = fetchurl {
-          url = "https://elpa.gnu.org/packages/dape-0.9.0.tar";
-          sha256 = "13xvl24l8lr64ndc8rk1dxdgsbvwxhn90844xkdzl7qs8i3hyw1l";
+          url = "https://elpa.gnu.org/packages/dape-0.10.0.tar";
+          sha256 = "1x6mbis4vmghp3vf4pxyzdp68nnrraw9ayx3gzbp1bvcmr62qdig";
         };
         packageRequires = [ emacs jsonrpc ];
         meta = {
@@ -1183,8 +1183,8 @@
         ename = "darkroom";
         version = "0.3";
         src = fetchurl {
-          url = "https://elpa.gnu.org/packages/darkroom-0.3.el";
-          sha256 = "0l1xg5kqmjw22k78qnsln0ifx2dx74xxqj0qp8xxcpqvzzx0xh86";
+          url = "https://elpa.gnu.org/packages/darkroom-0.3.tar";
+          sha256 = "0gxixkai8awc77vzckwljmyapdnxw5j9ajxmlr8rq42994gjr4fm";
         };
         packageRequires = [ cl-lib ];
         meta = {
@@ -1199,7 +1199,7 @@
         version = "2.19.1";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/dash-2.19.1.tar";
-          sha256 = "0c11lm7wpgmqk8zbdcpmyas12ylml5yhp99mj9h1wqqw0p33xaiw";
+          sha256 = "1c7yibfikkwlip8zh4kiamh3kljil3hyl250g8fkxpdyhljjdk6m";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -1213,8 +1213,8 @@
         ename = "dbus-codegen";
         version = "0.1";
         src = fetchurl {
-          url = "https://elpa.gnu.org/packages/dbus-codegen-0.1.el";
-          sha256 = "1gi7jc6rn6hlgh01zfwb7cczb5hi3c05wlnzw6akj1h9kai1lmzw";
+          url = "https://elpa.gnu.org/packages/dbus-codegen-0.1.tar";
+          sha256 = "0d3sbqs5r8578629inx8nhqvx0kshf41d00c8dpc75v4b2vx0h6w";
         };
         packageRequires = [ cl-lib ];
         meta = {
@@ -1229,7 +1229,7 @@
         version = "0.40";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/debbugs-0.40.tar";
-          sha256 = "0yfl9gd23xnfk3iwiq26brd7fg9ikhd201lw4awng0rdh0fddxwd";
+          sha256 = "1agms2il38lgz02g4fswil9x5j1xwpl8kvhbd48jcx57nq18a7bl";
         };
         packageRequires = [ emacs soap-client ];
         meta = {
@@ -1243,8 +1243,8 @@
         ename = "delight";
         version = "1.7";
         src = fetchurl {
-          url = "https://elpa.gnu.org/packages/delight-1.7.el";
-          sha256 = "0pihsghrf9xnd1kqlq48qmjcmp5ra95wwwgrb3l8m1wagmmc0bi1";
+          url = "https://elpa.gnu.org/packages/delight-1.7.tar";
+          sha256 = "1j7srr0i7s9hcny45m8zmj33nl9g6zi55cbkdzzlbx6si2rqwwlj";
         };
         packageRequires = [ cl-lib nadvice ];
         meta = {
@@ -1256,10 +1256,10 @@
       elpaBuild {
         pname = "denote";
         ename = "denote";
-        version = "2.3.0";
+        version = "2.3.5";
         src = fetchurl {
-          url = "https://elpa.gnu.org/packages/denote-2.3.0.tar";
-          sha256 = "0h6pdn9w1ggyrmfniqvy307wnlf49n05asa2z5wqxvj6mnvjza1y";
+          url = "https://elpa.gnu.org/packages/denote-2.3.5.tar";
+          sha256 = "1l8nlr8q7c51j2f528a0568pa3ywfv8pr47fzpd6pk2scc0y372b";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -1274,7 +1274,7 @@
         version = "1.2.0";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/denote-menu-1.2.0.tar";
-          sha256 = "1zm68bz6hya360g5zvs4r5naznykamgzqxhvfhpfyxb70hsnmx5w";
+          sha256 = "042avabc97wgkz85x40dq7rmv4h9n5kmq935lrg9s20klbs9axs1";
         };
         packageRequires = [ denote emacs ];
         meta = {
@@ -1289,7 +1289,7 @@
         version = "0.10.1";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/detached-0.10.1.tar";
-          sha256 = "1qfcxhzd3gc66kq58k77cvxy18cr371c40z3n4w4m4ngxmpk96hi";
+          sha256 = "0w6xgidi0g1pc13xfm8hcgmc7i2h5brj443cykwgvr5wkqnpmp9m";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -1301,10 +1301,10 @@
       elpaBuild {
         pname = "devdocs";
         ename = "devdocs";
-        version = "0.6";
+        version = "0.6.1";
         src = fetchurl {
-          url = "https://elpa.gnu.org/packages/devdocs-0.6.tar";
-          sha256 = "17av2l61mr4y8la4cqiq1dnaznni4xirr5k3wdix1jzl3q1apypy";
+          url = "https://elpa.gnu.org/packages/devdocs-0.6.1.tar";
+          sha256 = "04m3jd3wymrsdlb1i7z6dz9pf1q8q38ihkbn3jisdca6xkk9jd6p";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -1319,7 +1319,7 @@
         version = "0.3";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/devicetree-ts-mode-0.3.tar";
-          sha256 = "1vhk9b0aa9w6yalv0d712dc9d7pmcgbg5b4baggc7dyaa5n6ilkn";
+          sha256 = "06j385pvlhd7hp9isqp5gcf378m8p6578q6nz81r8dx93ymaak79";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -1340,7 +1340,7 @@
         version = "0.17";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/dict-tree-0.17.tar";
-          sha256 = "0f9vj6kr8q9mfd522svwy3wmzsl5lc4y2p8ggwmckn88dpz79w02";
+          sha256 = "0p4j0m3b9i38l4rcgzdps95wqk27zz156d4q73vq054kpcphrfpp";
         };
         packageRequires = [ emacs heap tNFA trie ];
         meta = {
@@ -1355,7 +1355,7 @@
         version = "1.9.2";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/diff-hl-1.9.2.tar";
-          sha256 = "1avpqwrxhbx8zxwghc8714rcdfhc15b5chq2ixb366ml8xdmvhck";
+          sha256 = "0skla012qw55qhzykgrk3zk5x76dfsj11kq8q2msyrq3jxcbyq6p";
         };
         packageRequires = [ cl-lib emacs ];
         meta = {
@@ -1385,7 +1385,7 @@
         version = "0.46";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/diminish-0.46.tar";
-          sha256 = "17lsm5khp7cqrva13kn252ab57lw28sibf14615wdjvfqwlwwha4";
+          sha256 = "1xqd6ldxl93l281ncddik1lfxjngi2drq61mv7v18r756c7bqr5r";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -1400,7 +1400,7 @@
         version = "0.5.2";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/dired-du-0.5.2.tar";
-          sha256 = "0vhph7vcicsiq28b10h3b4dvnhckcy4gccpdgsad5j7pwa5k26m1";
+          sha256 = "066yjy9vdbf20adcqdcknk5b0ml18fy2bm9gkgcp0qfg37yy1yjg";
         };
         packageRequires = [ cl-lib emacs ];
         meta = {
@@ -1412,10 +1412,10 @@
       elpaBuild {
         pname = "dired-duplicates";
         ename = "dired-duplicates";
-        version = "0.3";
+        version = "0.4";
         src = fetchurl {
-          url = "https://elpa.gnu.org/packages/dired-duplicates-0.3.tar";
-          sha256 = "1b9drjkbs9anqil274jrn031agpkir9mhs96l2ylm13n8imx9msl";
+          url = "https://elpa.gnu.org/packages/dired-duplicates-0.4.tar";
+          sha256 = "1srih47bq7szg6n3qlz4yzzcijg79p8xpwmi5c4v9xscl94nnc4z";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -1429,8 +1429,8 @@
         ename = "dired-git-info";
         version = "0.3.1";
         src = fetchurl {
-          url = "https://elpa.gnu.org/packages/dired-git-info-0.3.1.el";
-          sha256 = "1kd0rpw7l32wvwi7q8s0inx4bc66xrl7hkllnlicyczsnzw2z52z";
+          url = "https://elpa.gnu.org/packages/dired-git-info-0.3.1.tar";
+          sha256 = "0rryvlbqx1j48wafja15yc39jd0fzgz9i6bzmq9jpql3w9445772";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -1445,7 +1445,7 @@
         version = "0.1.1";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/dired-preview-0.1.1.tar";
-          sha256 = "1qmrh0sd9s908xkxz5vfhq956ynrx6k2bx8lddmdp8ci8xkw6wmh";
+          sha256 = "08c9bvsdb7w9ggav9yrpz12nf9zlq4h1zq8ssdf9pwrx2nzy06p7";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -1459,8 +1459,8 @@
         ename = "disk-usage";
         version = "1.3.3";
         src = fetchurl {
-          url = "https://elpa.gnu.org/packages/disk-usage-1.3.3.el";
-          sha256 = "0h1jwznd41gi0vg830ilfgm01q05zknikzahwasm9cizwm2wyizj";
+          url = "https://elpa.gnu.org/packages/disk-usage-1.3.3.tar";
+          sha256 = "02i7i7mrn6ky3lzhcadvq7wlznd0b2ay107h2b3yh4wwwxjxymyg";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -1468,16 +1468,16 @@
           license = lib.licenses.free;
         };
       }) {};
-    dismal = callPackage ({ cl-lib ? null, elpaBuild, emacs, fetchurl, lib }:
+    dismal = callPackage ({ cl-lib ? null, elpaBuild, fetchurl, lib }:
       elpaBuild {
         pname = "dismal";
         ename = "dismal";
         version = "1.5.2";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/dismal-1.5.2.tar";
-          sha256 = "0pl5cnziilm4ps1xzh1fa8irazn7vcp9nsxnxcvjqbkflpcpq5c7";
+          sha256 = "1706m5ya6q0jf8mzfkqn47aqd7ygm88fm7pvzbd4cry30mjs5vki";
         };
-        packageRequires = [ cl-lib emacs ];
+        packageRequires = [ cl-lib ];
         meta = {
           homepage = "https://elpa.gnu.org/packages/dismal.html";
           license = lib.licenses.free;
@@ -1490,7 +1490,7 @@
         version = "1.1.2";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/djvu-1.1.2.tar";
-          sha256 = "0i7xwgg2fxndy81lnng6fh9iknals8xvx4f1nmxq7c099bzwb57c";
+          sha256 = "0z74aicvy680m1d6v5zk5pcpkd310jqqdxadpjcbnjcybzp1zisq";
         };
         packageRequires = [];
         meta = {
@@ -1505,7 +1505,7 @@
         version = "0.1.1";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/do-at-point-0.1.1.tar";
-          sha256 = "0y58a0x0pfk52h1cz930sbwr9y6nzy9g8f3935pk34dj2jf92rsj";
+          sha256 = "1lqnarb9jiig85j3dv37jsqkmmfbcwb52i2akimzf9r57pypiylk";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -1520,7 +1520,7 @@
         version = "1.2";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/doc-toc-1.2.tar";
-          sha256 = "0vz2jyqgx0sf3mhxnnm0fl395a9mcd9fg661pp3mz0pywpl3ymax";
+          sha256 = "09xwa0xgnzlaff0j5zy3kam6spcnw0npppc3gf6ka5bizbk4dq99";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -1534,8 +1534,8 @@
         ename = "docbook";
         version = "0.1";
         src = fetchurl {
-          url = "https://elpa.gnu.org/packages/docbook-0.1.el";
-          sha256 = "01x0g8dhw65mzp9mk6qhx9p2bsvkw96hz1awrrf2ji17sp8hd1v6";
+          url = "https://elpa.gnu.org/packages/docbook-0.1.tar";
+          sha256 = "1kn71kpyb1maww414zgpc1ccgb02mmaiaix06jyqhf75hfxms2lv";
         };
         packageRequires = [];
         meta = {
@@ -1547,10 +1547,10 @@
       elpaBuild {
         pname = "drepl";
         ename = "drepl";
-        version = "0.1";
+        version = "0.2";
         src = fetchurl {
-          url = "https://elpa.gnu.org/packages/drepl-0.1.tar";
-          sha256 = "0lx94kcxgp8s13w7hz9857r9baqfswvj7vc9frjq4crc4ps7fi7r";
+          url = "https://elpa.gnu.org/packages/drepl-0.2.tar";
+          sha256 = "1vf61d6iihpnr3h4cyxksd64qj8rw2a9ihjm3krvjmigxr2r6awx";
         };
         packageRequires = [ comint-mime emacs ];
         meta = {
@@ -1565,7 +1565,7 @@
         version = "1.0";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/dts-mode-1.0.tar";
-          sha256 = "0ihwqkv1ddysjgxh01vpayv3ia0vx55ny8ym0mi5b4iz95idj60s";
+          sha256 = "16ads9xjbqgmgwzj63anhc6yb1j79qpcnxjafqrzdih1p5j7hrr9";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -1580,7 +1580,7 @@
         version = "0.2.1";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/easy-escape-0.2.1.tar";
-          sha256 = "19blpwka440y6r08hzzaz61gb24jr6a046pai2j1a3jg6x9fr3j5";
+          sha256 = "0mwam1a7sl90aqgz6mj3zm0w1dq15b5jpxmwxv21xs1imyv696ci";
         };
         packageRequires = [];
         meta = {
@@ -1595,7 +1595,7 @@
         version = "0.9.5";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/easy-kill-0.9.5.tar";
-          sha256 = "0h8rzd23sgkj3vxnyhis9iyq8n3xqp9x1mvxlm61s6wwj9j398j6";
+          sha256 = "1nwhqidy5zq6j867b21zng5ppb7n56drnhn3wjs7hjmkf23r63qy";
         };
         packageRequires = [ cl-lib emacs ];
         meta = {
@@ -1610,7 +1610,7 @@
         version = "0.8.22";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/ebdb-0.8.22.tar";
-          sha256 = "12sydb2lm571096gpb8r0jpg19wiqpl52rcnrhkvzlhzxgg18pg5";
+          sha256 = "0nmrhjk2ddml115ibsy8j4crw5hzq9fa94v8y41iyj9h3gf8irzc";
         };
         packageRequires = [ emacs seq ];
         meta = {
@@ -1624,8 +1624,8 @@
         ename = "ebdb-gnorb";
         version = "1.0.2";
         src = fetchurl {
-          url = "https://elpa.gnu.org/packages/ebdb-gnorb-1.0.2.el";
-          sha256 = "0bma7mqilp3lfgv0z2mk6nnqzh1nn1prkz2aiwrs4hxwydmda13i";
+          url = "https://elpa.gnu.org/packages/ebdb-gnorb-1.0.2.tar";
+          sha256 = "1kwcrg268vmskls9p4ccs6ybdip30cb4fw3xzq11gqjch1nssh18";
         };
         packageRequires = [ ebdb gnorb ];
         meta = {
@@ -1640,7 +1640,7 @@
         version = "1.3.2";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/ebdb-i18n-chn-1.3.2.tar";
-          sha256 = "06ii9xi2y157vfbhx75mn80ash22d1xgcyp9kzz1s0lkxwlv74zj";
+          sha256 = "1qyia40z6ssvnlpra116avakyf81vqn42860ny21g0zsl99a58j2";
         };
         packageRequires = [ ebdb pyim ];
         meta = {
@@ -1655,7 +1655,7 @@
         version = "2.2";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/ediprolog-2.2.tar";
-          sha256 = "021jm5zdxrjg7xcja18vgc2v52rk17xi1k7xxw8q802nmixhy0js";
+          sha256 = "13g8y51lvdphi1v6rdca36c0r9v35lldx5979yrccsf07h0hw5gm";
         };
         packageRequires = [];
         meta = {
@@ -1670,7 +1670,7 @@
         version = "20240309";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/eev-20240309.tar";
-          sha256 = "0j9hz5raxrk3d2ashbsp9yvi04d5ap0chb4lpljr4pbh2lnyjr4h";
+          sha256 = "0nn6jdc37n2nx3i97ljl5a37dwxv5qx12ar15yr702hbsgaxyfa5";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -1685,7 +1685,7 @@
         version = "1.6.1";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/ef-themes-1.6.1.tar";
-          sha256 = "1ms0rqivxdsbx7jv6d5h1khvm4ghml152ab831chg4z77apmq1ga";
+          sha256 = "0wkiqjnqnxwzskpxam44qxxz13fbpgnf17c1qrin8ad8i9b49bvq";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -1710,7 +1710,7 @@
         version = "1.17";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/eglot-1.17.tar";
-          sha256 = "1can988d7qdn0dj4wg8adjz1s9j5yin8bcp7ylhq1pr327d5flky";
+          sha256 = "1cnx522wb49f1dkm80sigz3kvzrblmq5b1lnfyq9wdnh6zdm4l00";
         };
         packageRequires = [
           eldoc
@@ -1739,7 +1739,7 @@
         version = "1.12.6.1";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/el-search-1.12.6.1.tar";
-          sha256 = "150f4rirg107hmzpv8ifa32k2mgf07smbf9z44ln5rh8n17xwqah";
+          sha256 = "1vq8cp2icpl8vkc9r8brzbn0mpaj03mnvdz1bdqn8nqrzc3w0h24";
         };
         packageRequires = [ cl-print emacs stream ];
         meta = {
@@ -1754,7 +1754,7 @@
         version = "1.15.0";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/eldoc-1.15.0.tar";
-          sha256 = "1wn7q2f19lfdc3b639ffhbmsglnm3zc6rvgyc6amqwnpc2n2gkdl";
+          sha256 = "05fgk3y2rp0xrm3x0xmf9fm72l442y7ydxxg3xk006d9cq06h8kz";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -1768,8 +1768,8 @@
         ename = "electric-spacing";
         version = "5.0";
         src = fetchurl {
-          url = "https://elpa.gnu.org/packages/electric-spacing-5.0.el";
-          sha256 = "1jk6v84z0n8jljzsz4wk7rgzh7drpfvxf4bp6xis8gapnd3ycfyv";
+          url = "https://elpa.gnu.org/packages/electric-spacing-5.0.tar";
+          sha256 = "1gr35nri25ycxr0wwkypky8zv43nnfrilx4jaj66mb9jsyix6smi";
         };
         packageRequires = [];
         meta = {
@@ -1784,7 +1784,7 @@
         version = "1.14";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/elisp-benchmarks-1.14.tar";
-          sha256 = "1n9p4kl4d5rcbjgl8yifv0nqnrzxsx937fm0d2j589gg28rzlqpb";
+          sha256 = "050wja4axngnxggfxhg4b4lcbf1q674zr933r9qkc3ww731f42qa";
         };
         packageRequires = [];
         meta = {
@@ -1796,10 +1796,10 @@
       elpaBuild {
         pname = "ellama";
         ename = "ellama";
-        version = "0.8.13";
+        version = "0.9.1";
         src = fetchurl {
-          url = "https://elpa.gnu.org/packages/ellama-0.8.13.tar";
-          sha256 = "012j3rnvwj8ajyjdlgdx6nrs773i71dyl5brs0jgx010jibzmafi";
+          url = "https://elpa.gnu.org/packages/ellama-0.9.1.tar";
+          sha256 = "1kyylhavqa2wsgjgqybg25aiz0fyw4njpady2k2xhry5jw9i78vs";
         };
         packageRequires = [ emacs llm spinner ];
         meta = {
@@ -1814,7 +1814,7 @@
         version = "1.4.2";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/emacs-gc-stats-1.4.2.tar";
-          sha256 = "19wb4s7bm9fhkbjw28fi5pkxzqnkc7wrx338vgrrzyaficblkcps";
+          sha256 = "055ma32r92ksjnqy8xbzv0a79r7aap12h61dj860781fapfnifa3";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -1826,10 +1826,10 @@
       elpaBuild {
         pname = "embark";
         ename = "embark";
-        version = "1.0";
+        version = "1.1";
         src = fetchurl {
-          url = "https://elpa.gnu.org/packages/embark-1.0.tar";
-          sha256 = "01kgln4hvy0hfga7syjvrdvwwalx93pq0s2na0qyvy44rsszlwwh";
+          url = "https://elpa.gnu.org/packages/embark-1.1.tar";
+          sha256 = "074ggh7dkr5jdkwcndl6znhkq48jmc62rp7mc6vjidr6yxf8d1rn";
         };
         packageRequires = [ compat emacs ];
         meta = {
@@ -1847,10 +1847,10 @@
       elpaBuild {
         pname = "embark-consult";
         ename = "embark-consult";
-        version = "1.0";
+        version = "1.1";
         src = fetchurl {
-          url = "https://elpa.gnu.org/packages/embark-consult-1.0.tar";
-          sha256 = "18zbaanza8vvrmk3gbj0glijyxgb4qd7yzc46lv9fr7xr4l58jqc";
+          url = "https://elpa.gnu.org/packages/embark-consult-1.1.tar";
+          sha256 = "06yh6w4zgvvkfllmcr0szsgjrfhh9rpjwgmcrf6h2gai2ps9xdqr";
         };
         packageRequires = [ compat consult emacs embark ];
         meta = {
@@ -1872,10 +1872,10 @@
       elpaBuild {
         pname = "ement";
         ename = "ement";
-        version = "0.14";
+        version = "0.15";
         src = fetchurl {
-          url = "https://elpa.gnu.org/packages/ement-0.14.tar";
-          sha256 = "02ay594byrlwkcl85drxn82fgvlzf11l9rl4hbk9phz9axy2mgyw";
+          url = "https://elpa.gnu.org/packages/ement-0.15.tar";
+          sha256 = "0mphkvmsmrfyr3prr5a2x6ijr27z96ixpaxs9871kn7f1x0brn5r";
         };
         packageRequires = [
           emacs
@@ -1904,7 +1904,7 @@
         version = "19";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/emms-19.tar";
-          sha256 = "13c884s92ddn52psgkaz3zvb94g23gq41dbidpx7x4gzdhd9qqxm";
+          sha256 = "1k0hybw826f2hlw8m0aihkydlkdzjsgvrfibpsqrxxcn9d7zxwjd";
         };
         packageRequires = [ cl-lib nadvice seq ];
         meta = {
@@ -1919,7 +1919,7 @@
         version = "0.3.1";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/engrave-faces-0.3.1.tar";
-          sha256 = "1q4sjl2rvcfwcirm32nmi53258ln71yhh1dgszlxwknm38a14v3i";
+          sha256 = "0nl5wx61192dqd0191dvaszgjc7b2adrxsyc75f529fcyrfwgqfa";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -1934,7 +1934,7 @@
         version = "2.0";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/enwc-2.0.tar";
-          sha256 = "17w35b06am5n19nlq00ni5w3jvys9i7swyw4glb7081d2jbij2mn";
+          sha256 = "0y8154ykrashgg0bina5ambdrxw2qpimycvjldrk9d67hrccfh3m";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -1984,7 +1984,7 @@
         version = "5.16.10.12";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/ergoemacs-mode-5.16.10.12.tar";
-          sha256 = "1zfzjmi30lllrbyzicmp11c9lpa82g57wi134q9bajvzn9ryx4jr";
+          sha256 = "0s4lwb76c67npbcnvbxdawnj02zkc85sbm392lym1qccjmj9d02f";
         };
         packageRequires = [ cl-lib emacs undo-tree ];
         meta = {
@@ -1999,7 +1999,7 @@
         version = "24.1.1";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/ess-24.1.1.tar";
-          sha256 = "1gy1yp6svr8agv38rikmfcji570n80c8jqssrcrrgrq3a2k9j34h";
+          sha256 = "11hn571q8vpjy1kx8d1hn8mm2sna0ar1q2z4vmb6rwqi9wsda6a0";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -2023,7 +2023,7 @@
         version = "1.1.2";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/excorporate-1.1.2.tar";
-          sha256 = "11w53idm7m20jhmwnj9wiqiv6fzydjrgy2s3mp36barlj3xq0l0z";
+          sha256 = "111wvkn0ks7syfgf1cydq5s0kymha0j280xvnp09zcfbj706yhbw";
         };
         packageRequires = [
           cl-lib
@@ -2046,7 +2046,7 @@
         version = "1.0.0";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/expand-region-1.0.0.tar";
-          sha256 = "04xwdcxahymppcyvkfh2bn2f4fs4f8z27kycva67i6qldhashq7y";
+          sha256 = "1rjx7w4gss8sbsjaljraa6cjpb57kdpx9zxmr30kbifb5lp511rd";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -2061,7 +2061,7 @@
         version = "1.3.1";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/expreg-1.3.1.tar";
-          sha256 = "13s3hq6nfnv4md2z704ad1axqnir0drz9vvhvisrlp2lis16xzik";
+          sha256 = "12msng4ypmw6s3pja66kkjxkbadla0fxmak1r3drxiihpwmh5zm6";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -2076,7 +2076,7 @@
         version = "0.1";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/external-completion-0.1.tar";
-          sha256 = "12pddwp5jby2icshj77w4kwxv75zi00jdxw18f721d7zx3l7q668";
+          sha256 = "1bw2kvz7zf1s60d37j31krakryc1kpyial2idjy6ac6w7n1h0jzc";
         };
         packageRequires = [];
         meta = {
@@ -2091,7 +2091,7 @@
         version = "0.28";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/exwm-0.28.tar";
-          sha256 = "00h5awqazk807zxvb02a9dp8gd5ifi3y1kcwmr1czk6kdmkjx32l";
+          sha256 = "11j1ciyrnzkbcb7ffgs670mxqd1xbxf41c6jwnwwqjfzmqhsm0m4";
         };
         packageRequires = [ xelb ];
         meta = {
@@ -2121,7 +2121,7 @@
         version = "0.2.1";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/face-shift-0.2.1.tar";
-          sha256 = "115959sgy7jivb5534rkm5mbqpjayfci9wpzx75p7cjsn02hfi0p";
+          sha256 = "14sbafkxr7kmv6sd5rw7d7hcsh0hhx92wkh6arfbchxad8jzimr6";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -2136,7 +2136,7 @@
         version = "0.2.0";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/filechooser-0.2.0.tar";
-          sha256 = "1pl6n6d6gymdm0gx0nz96hwps8v1s2zpqph41d0h5hdvsvxacx6w";
+          sha256 = "1fjf8bmdrrrgbv4sgx4nry5pl8plg9kyzyfd038985v3dsqasi9q";
         };
         packageRequires = [ compat emacs ];
         meta = {
@@ -2150,8 +2150,8 @@
         ename = "filladapt";
         version = "2.12.2";
         src = fetchurl {
-          url = "https://elpa.gnu.org/packages/filladapt-2.12.2.el";
-          sha256 = "1cxyxfdjg1dsmn1jrl6b7xy03xr42fb6vyggh27s4dk417ils6yg";
+          url = "https://elpa.gnu.org/packages/filladapt-2.12.2.tar";
+          sha256 = "0nmgw6v2krxn5palddqj1jzqxrajhpyq9v2x9lw12cdcldm9ab4k";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -2169,7 +2169,7 @@
         version = "0.9.5";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/firefox-javascript-repl-0.9.5.tar";
-          sha256 = "0ml59kiigqnss84az1c8hp87bmcs9dngz01ly63x47wfym2af8mi";
+          sha256 = "07qmp6hfzgljrl9gkwy673xk67b3bgxq4kkw2kzr8ma4a7lx7a8l";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -2177,16 +2177,16 @@
           license = lib.licenses.free;
         };
       }) {};
-    flylisp = callPackage ({ cl-lib ? null, elpaBuild, emacs, fetchurl, lib }:
+    flylisp = callPackage ({ elpaBuild, fetchurl, lib }:
       elpaBuild {
         pname = "flylisp";
         ename = "flylisp";
         version = "0.2";
         src = fetchurl {
-          url = "https://elpa.gnu.org/packages/flylisp-0.2.el";
-          sha256 = "0hh09qy1xwlv52lsh49nr11h4lk8qlmk06b669q494d79hxyv4v6";
+          url = "https://elpa.gnu.org/packages/flylisp-0.2.tar";
+          sha256 = "1agny4hc75xc8a9f339bynsazmxw8ccvyb03qx1d6nvwh9d7v1b9";
         };
-        packageRequires = [ cl-lib emacs ];
+        packageRequires = [];
         meta = {
           homepage = "https://elpa.gnu.org/packages/flylisp.html";
           license = lib.licenses.free;
@@ -2199,7 +2199,7 @@
         version = "1.3.7";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/flymake-1.3.7.tar";
-          sha256 = "07n72y77q1vqvz1rv36jq1cxdp1brp572plvsi2g6mizif5y531z";
+          sha256 = "15ikzdqyh77cgx94jaigfrrzfvwvpca8s2120gi82i9aaiypr7jl";
         };
         packageRequires = [ eldoc emacs project ];
         meta = {
@@ -2218,7 +2218,7 @@
         version = "0.1";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/flymake-codespell-0.1.tar";
-          sha256 = "0r1g0imh9azy1yf0naxif80vmzrjvn5dx3lcrlpj70xb86wzliym";
+          sha256 = "1x1bmdjmdaciknd702z54002bi1a5n51vvn9g7j6rnzjc1dxw97f";
         };
         packageRequires = [ compat emacs ];
         meta = {
@@ -2233,7 +2233,7 @@
         version = "0.3.0";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/flymake-proselint-0.3.0.tar";
-          sha256 = "1x1hp06hggywmpbimyw4cg0cyg7g9v39r552ypivq9pvz94kmkp0";
+          sha256 = "0bq7nc1qiqwxi848xy7wg1ig8k38nmq1w13xws10scjvndlbcjpl";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -2245,10 +2245,10 @@
       elpaBuild {
         pname = "fontaine";
         ename = "fontaine";
-        version = "1.0.0";
+        version = "2.0.0";
         src = fetchurl {
-          url = "https://elpa.gnu.org/packages/fontaine-1.0.0.tar";
-          sha256 = "1p34d84z87s2zsfxdc18bjpif21fdixfzv2k4b9g4i0pcr94nc4v";
+          url = "https://elpa.gnu.org/packages/fontaine-2.0.0.tar";
+          sha256 = "1h3hsqfx16ff0s776xvnafrlmj0m0r66hjra1mq2j55ahvh0aavk";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -2262,8 +2262,8 @@
         ename = "frame-tabs";
         version = "1.1";
         src = fetchurl {
-          url = "https://elpa.gnu.org/packages/frame-tabs-1.1.el";
-          sha256 = "0fx9zc7mvyl703k7sjjcvffm2qw42ncr7r3d4fm0h45p9pi83svz";
+          url = "https://elpa.gnu.org/packages/frame-tabs-1.1.tar";
+          sha256 = "1a7hklir19inai68azgyfiw1bzq5z57kkp33lj6qbxxvfcqvw62w";
         };
         packageRequires = [];
         meta = {
@@ -2277,8 +2277,8 @@
         ename = "frog-menu";
         version = "0.2.11";
         src = fetchurl {
-          url = "https://elpa.gnu.org/packages/frog-menu-0.2.11.el";
-          sha256 = "06iw11z61fd0g4w3562k3smcmzaq3nivvvc6gzm8y8k5pcrqzdff";
+          url = "https://elpa.gnu.org/packages/frog-menu-0.2.11.tar";
+          sha256 = "1iwyg9z8i03p9kkz6vhv00bzsqrsgl4xqqh08icial29c80q939l";
         };
         packageRequires = [ avy emacs posframe ];
         meta = {
@@ -2292,8 +2292,8 @@
         ename = "fsm";
         version = "0.2.1";
         src = fetchurl {
-          url = "https://elpa.gnu.org/packages/fsm-0.2.1.el";
-          sha256 = "1jyxyqdbfl8nv7c50q0sg3w5p7whp1sqgi7w921k5hfar4d11qqp";
+          url = "https://elpa.gnu.org/packages/fsm-0.2.1.tar";
+          sha256 = "0kvm16077bn6bpbyw3k5935fhiq86ry2j1zcx9sj7dvb9w737qz4";
         };
         packageRequires = [ cl-lib emacs ];
         meta = {
@@ -2308,7 +2308,7 @@
         version = "1.1";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/ftable-1.1.tar";
-          sha256 = "0ww2kl5gb2dkkz0dxinjjnd3qafr31qjcqp1x10r3vcfbp9cfy4b";
+          sha256 = "052vqw8892wv8lh5slm90gcvfk7ws5sgl1mzbdi4d3sy4kc4q48h";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -2322,8 +2322,8 @@
         ename = "gcmh";
         version = "0.2.1";
         src = fetchurl {
-          url = "https://elpa.gnu.org/packages/gcmh-0.2.1.el";
-          sha256 = "0a51bkkfdj3x26yalvk7v35rxbl3m1wk6n0f33zhrhl6i5fsrfin";
+          url = "https://elpa.gnu.org/packages/gcmh-0.2.1.tar";
+          sha256 = "030w493ilmc7w13jizwqsc33a424qjgicy1yxvlmy08yipnw3587";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -2338,7 +2338,7 @@
         version = "0.9.0";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/ggtags-0.9.0.tar";
-          sha256 = "0p79x9g94jynl83ndvqp9349vhgkzxzhnc517r8hn44iqxqf6ghg";
+          sha256 = "02gj8ghkk35clyscbvp1p1nlhmgm5h9g2cy4mavnfmx7jikmr4m3";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -2353,7 +2353,7 @@
         version = "0.6.0";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/gited-0.6.0.tar";
-          sha256 = "187asqrxfpxv53hhnrcid1sy46vcy07qx5yqgnrczi54jpcc57j5";
+          sha256 = "1s2h6y1adh28pvm3h5bivfja2nqnzm8w9sfza894pxf96kwk3pg2";
         };
         packageRequires = [ cl-lib emacs ];
         meta = {
@@ -2367,8 +2367,8 @@
         ename = "gle-mode";
         version = "1.1";
         src = fetchurl {
-          url = "https://elpa.gnu.org/packages/gle-mode-1.1.el";
-          sha256 = "0p9glalhkf8i4486pjwvrb9z4lqxl6jcqfk6jrjl6b1xi72xmdi0";
+          url = "https://elpa.gnu.org/packages/gle-mode-1.1.tar";
+          sha256 = "12vbif4b4j87z7fg18dlcmzmbs2fp1g8bgsk5rch9h6dblg72prq";
         };
         packageRequires = [ cl-lib ];
         meta = {
@@ -2383,7 +2383,7 @@
         version = "1.0.3";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/gnat-compiler-1.0.3.tar";
-          sha256 = "1l5j3br5yrhp3ic0va666ar636hywfd8vssxma3gc858zb9qbzw2";
+          sha256 = "1chydgswab2m81m3kbd31b1akyw4v1c9468wlfxpg2yydy8fc7vs";
         };
         packageRequires = [ emacs wisi ];
         meta = {
@@ -2413,7 +2413,7 @@
         version = "1.6.11";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/gnorb-1.6.11.tar";
-          sha256 = "0724i8p1hywgbfk0czxvrcwlwigj8r7x6ww0ap3k2sg90531ymws";
+          sha256 = "1y0xpbifb8dm8hd5i9g8jph4jm76wviphszl5x3zi6w053jpss9b";
         };
         packageRequires = [ cl-lib ];
         meta = {
@@ -2428,7 +2428,7 @@
         version = "1.1";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/gnu-elpa-1.1.tar";
-          sha256 = "0b0law1xwwqa42wb09b3w73psq2kx16lkiwxjxl0sshjcmarhv8r";
+          sha256 = "01cw1r5y86q1aardpvcwvwq161invrzxd0kv4qqi5agaff2nbp26";
         };
         packageRequires = [];
         meta = {
@@ -2445,7 +2445,7 @@
         version = "2022.12";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/gnu-elpa-keyring-update-2022.12.tar";
-          sha256 = "1kij50xw5km14x44zjsfc1cdkz4xq79nv7hgfjsz3pgypq672z5z";
+          sha256 = "0pabqsfw0d9knfigpcsrwfw7qrf2vlg9h0i582212gsqd7snlnxb";
         };
         packageRequires = [];
         meta = {
@@ -2465,7 +2465,7 @@
         version = "3.1.2";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/gnugo-3.1.2.tar";
-          sha256 = "138gzdyi8scqimvs49da66j8f5a43bhgpasn1bxzdj2zffwlwp6g";
+          sha256 = "0wingn5v4wa1xgsgmqqls28cifnff8mvm098kn8clw42mxr40257";
         };
         packageRequires = [ ascii-art-to-unicode cl-lib xpm ];
         meta = {
@@ -2480,7 +2480,7 @@
         version = "0.5";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/gnus-mock-0.5.tar";
-          sha256 = "1lyh1brb68zaasnw2brymsspcyl3jxmnvbvpvrqfxhhl3fq9nbv1";
+          sha256 = "1yl624wzs4kw45zpnxh04dxn1kkpb6c2jl3i0sm1bijyhm303l4h";
         };
         packageRequires = [];
         meta = {
@@ -2494,8 +2494,8 @@
         ename = "gpastel";
         version = "0.5.0";
         src = fetchurl {
-          url = "https://elpa.gnu.org/packages/gpastel-0.5.0.el";
-          sha256 = "1wky6047071vgyyw2m929nbwg4d9qqp1mjqwk7a5rs8hfr4xqxfw";
+          url = "https://elpa.gnu.org/packages/gpastel-0.5.0.tar";
+          sha256 = "12y1ysgnqjvsdp5gal90mp2wplif7rq1cj61393l6gf3pgv6jkzc";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -2515,7 +2515,7 @@
         version = "1.0.5";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/gpr-mode-1.0.5.tar";
-          sha256 = "1ksafa4nfd4n1kdxpjk6i59l5rxfdmcqjkkpmmc8w402xka0vwn4";
+          sha256 = "1qdk2pkdxggfhj8gm39jb2b29g0gbw50vgil6rv3z0q7nlhpm2fp";
         };
         packageRequires = [ emacs gnat-compiler wisi ];
         meta = {
@@ -2535,7 +2535,7 @@
         version = "1.0.4";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/gpr-query-1.0.4.tar";
-          sha256 = "0a6wrkjqszqq4d0a1amrp7yx4w2hwjbyy7qxd40k9n1vdp7jbzri";
+          sha256 = "1y283x549w544x37lmh25n19agyah2iz0b052hx8br4rnjdd9ii3";
         };
         packageRequires = [ emacs gnat-compiler wisi ];
         meta = {
@@ -2550,7 +2550,7 @@
         version = "0.1.2";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/graphql-0.1.2.tar";
-          sha256 = "1mzgz4piszm0v18gdn63xb46zqd1r17fkh24rw863i0p1achl21m";
+          sha256 = "1blpsj6sav3z9gj733cccdhpdnyvnvxp48z1hnjh0f0fl5avvkix";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -2562,10 +2562,10 @@
       elpaBuild {
         pname = "greader";
         ename = "greader";
-        version = "0.9.19";
+        version = "0.9.20";
         src = fetchurl {
-          url = "https://elpa.gnu.org/packages/greader-0.9.19.tar";
-          sha256 = "1d04d1shzb505qs2mf7387dvl56pwlwh4b349s5fq2prwqrq71l7";
+          url = "https://elpa.gnu.org/packages/greader-0.9.20.tar";
+          sha256 = "11n88xmr2qa5as5kpy4yy616nlh08nw5rkcbgmf9skgka3g1hmip";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -2579,8 +2579,8 @@
         ename = "greenbar";
         version = "1.1";
         src = fetchurl {
-          url = "https://elpa.gnu.org/packages/greenbar-1.1.el";
-          sha256 = "01ixv3489zdx2b67zqad6h7g8cpnzpzrvvkqyx7csqyrfx0qy27n";
+          url = "https://elpa.gnu.org/packages/greenbar-1.1.tar";
+          sha256 = "14azd170xq602fy4mcc770x5063rvpms8ilbzzn8kwyfvmijlbbx";
         };
         packageRequires = [];
         meta = {
@@ -2592,10 +2592,10 @@
       elpaBuild {
         pname = "gtags-mode";
         ename = "gtags-mode";
-        version = "1.1";
+        version = "1.5";
         src = fetchurl {
-          url = "https://elpa.gnu.org/packages/gtags-mode-1.1.tar";
-          sha256 = "0fgs6iqrivmyxfkjl6hxxs3zfjkkdas61z34q08qfjgw0ixz188h";
+          url = "https://elpa.gnu.org/packages/gtags-mode-1.5.tar";
+          sha256 = "15jmynzm2xrvb410vka3jzzdcxbsm3vkihz27yzym708jb0bd8ji";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -2630,7 +2630,7 @@
         version = "1.0.0";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/hcel-1.0.0.tar";
-          sha256 = "1j6snbyi710qnxr68mbmj1v2i6gqf6znd872fkjkyj85pg3iibia";
+          sha256 = "1pm3d0nz2mpf667jkjlmlidh203i4d4gk0n8xd3r66bzwc4l042b";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -2644,8 +2644,8 @@
         ename = "heap";
         version = "0.5";
         src = fetchurl {
-          url = "https://elpa.gnu.org/packages/heap-0.5.el";
-          sha256 = "13qv0w3fi87c85jcy7lv359r6rpsgnp5zzs2f2zq4dl3540wzrxg";
+          url = "https://elpa.gnu.org/packages/heap-0.5.tar";
+          sha256 = "1q42v9mzmlhl4pr3wr94nsis7a9977f35w0qsyx2r982kwgmbndw";
         };
         packageRequires = [];
         meta = {
@@ -2660,7 +2660,7 @@
         version = "1.2";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/hiddenquote-1.2.tar";
-          sha256 = "1ssfy1ha5a1pakihmkifry200k7z1mxcgl4w9pwvp7wmzbkv2zql";
+          sha256 = "051aqiq77n487lnsxxwa8q0vyzk6m2fwi3l7xwvrl49p5xpia6zr";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -2676,8 +2676,8 @@
         ename = "highlight-escape-sequences";
         version = "0.4";
         src = fetchurl {
-          url = "https://elpa.gnu.org/packages/highlight-escape-sequences-0.4.el";
-          sha256 = "1z8r9rnppn7iy7xv4kprfsqxday16h7c471i7rkyi3rv3l0pfxd0";
+          url = "https://elpa.gnu.org/packages/highlight-escape-sequences-0.4.tar";
+          sha256 = "1gs662vvvzrqdlb1z73jf6wykjzs1jskcdksk8akqmply4sjvbpr";
         };
         packageRequires = [];
         meta = {
@@ -2707,7 +2707,7 @@
         version = "0.1";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/html5-schema-0.1.tar";
-          sha256 = "19k1jal6j64zq78w8h0lw7cljivmp2jzs5sa1ppc0mqkpn2hyq1i";
+          sha256 = "018zvdjhdrkcy8yrsqqqikhl6drmqm1fs0y50m8q8vx42p0cyi1p";
         };
         packageRequires = [];
         meta = {
@@ -2722,7 +2722,7 @@
         version = "0.15.0";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/hydra-0.15.0.tar";
-          sha256 = "1mppx20920kfq97wd7mkrn4bcmm46k5m8wqm49asd54w701iq3n1";
+          sha256 = "082wdr2nsfz8jhh7ic4nq4labz0pq8lcdwnxdmw79ppm20p2jipk";
         };
         packageRequires = [ cl-lib lv ];
         meta = {
@@ -2737,7 +2737,7 @@
         version = "9.0.1";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/hyperbole-9.0.1.tar";
-          sha256 = "0a7py2dvszh0rf2smbmm8msjrc8vbbvlqnsqw0m2l12v8vllmxnb";
+          sha256 = "0gjscqa0zagbymm6wfilvc8g68f8myv90ryd8kqfcpy81fh4dhiz";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -2752,7 +2752,7 @@
         version = "0.3";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/ilist-0.3.tar";
-          sha256 = "1gg77fnk2ky5z5153axszs43a9npb1xg56ik23rz45xl9hg7v8as";
+          sha256 = "01a522sqx7j5m6b1k8xn71963igm93cd7ms1aawh1v2wmb09vbhm";
         };
         packageRequires = [];
         meta = {
@@ -2767,7 +2767,7 @@
         version = "0.36";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/inspector-0.36.tar";
-          sha256 = "139w0qc99grd6yzxkpfblgddnbza02mh4hhcpbjgsm4bwdxq8az0";
+          sha256 = "0hbh4a71w4yxicn7v7v492i7iv0ncv5sxwwsbwknbl9ixm482h2z";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -2782,7 +2782,7 @@
         version = "2.6";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/ioccur-2.6.tar";
-          sha256 = "0k7nr73gmd0z5zqkwdacvfsmyflri3f15a15zpr7va28pnxqzsdk";
+          sha256 = "0xyx5xd46n5x078k7pv022h84xmxv7fkh31ddib872bmnirhk6ln";
         };
         packageRequires = [ cl-lib emacs ];
         meta = {
@@ -2797,7 +2797,7 @@
         version = "0.8";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/isearch-mb-0.8.tar";
-          sha256 = "06241rwz01z4ysgmizczq12zl0cc6xvfyds48glzk1jp82zp4adp";
+          sha256 = "1b4929vr5gib406p51zcvq1ysmzvnz6bs1lqwjp517kzp6r4gc5y";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -2811,8 +2811,8 @@
         ename = "iterators";
         version = "0.1.1";
         src = fetchurl {
-          url = "https://elpa.gnu.org/packages/iterators-0.1.1.el";
-          sha256 = "1r2cz2n6cr6wal5pqiqi5pn28pams639czgrvd60xcqmlr3li3g5";
+          url = "https://elpa.gnu.org/packages/iterators-0.1.1.tar";
+          sha256 = "1xcqvj9dail1irvj2nbfx9x106mcav104pp89jz2diamrky6ja49";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -2827,7 +2827,7 @@
         version = "0.14.2";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/ivy-0.14.2.tar";
-          sha256 = "1zjksh0jvxyqhzgwmh9i26gaip6c04q400xckh730r2gjs287pjj";
+          sha256 = "1h9gfkkcw9nfw85m0mh08qfmi2y0jkvdk54qx0iy5p04ysmhs6k1";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -2842,7 +2842,7 @@
         version = "0.14.2";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/ivy-avy-0.14.2.tar";
-          sha256 = "0vdrfn2i078567lklhxfhzq2cjplfpawyq2rzpdpww0fzz6fi426";
+          sha256 = "12s5z3h8bpa6vdk7f54i2dy18hd3p782pq3x6mkclkvlxijv7d11";
         };
         packageRequires = [ avy emacs ivy ];
         meta = {
@@ -2856,8 +2856,8 @@
         ename = "ivy-explorer";
         version = "0.3.2";
         src = fetchurl {
-          url = "https://elpa.gnu.org/packages/ivy-explorer-0.3.2.el";
-          sha256 = "0q9gy9w22hnq30bfmnpqknk0qc1rcbjcybpjgb8hnlldvcci95l7";
+          url = "https://elpa.gnu.org/packages/ivy-explorer-0.3.2.tar";
+          sha256 = "0wv7gp2kznc6f6g9ky1gvq72i78ihp582kyks82h13w25rvh6f0a";
         };
         packageRequires = [ emacs ivy ];
         meta = {
@@ -2872,7 +2872,7 @@
         version = "0.14.2";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/ivy-hydra-0.14.2.tar";
-          sha256 = "10qav0rvgc5bnlazjiwnv9dlk6hivl4acif0zq2f0qqgld9nh528";
+          sha256 = "1p08rpj3ac2rwjcqbzkq9r5pmc1d9ci7s9bl0qv5cj5r8wpl69mx";
         };
         packageRequires = [ emacs hydra ivy ];
         meta = {
@@ -2892,7 +2892,7 @@
         version = "0.6.3";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/ivy-posframe-0.6.3.tar";
-          sha256 = "0b498qzaydjrhplx4d7zcrs883dlrhfiz812sv4m3pmhfwifcchh";
+          sha256 = "027lbddg4rc44jpvxsqyw9n9pi1bnsssfislg2il3hbr86v88va9";
         };
         packageRequires = [ emacs ivy posframe ];
         meta = {
@@ -2907,7 +2907,7 @@
         version = "0.0.4";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/jami-bot-0.0.4.tar";
-          sha256 = "1gspzqxznqskc008bcix2fyg1brr3xzxzbqx18q4cy4mz0vm8h1b";
+          sha256 = "1dp4k5y7qy793m3fyxvkk57bfy42kac2w5wvy7zqzd4lckm0a93z";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -2922,7 +2922,7 @@
         version = "0.11.0";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/jarchive-0.11.0.tar";
-          sha256 = "1hn0lyszm667a54j95v2ppddz4g89cp8byj9pd3k1gha2rplm9d8";
+          sha256 = "17klpdrv74hgpwnhknbihg90j6sbikf4j62lq0vbfv3s7r0a0gb8";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -2937,7 +2937,7 @@
         version = "0.9.1";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/javaimp-0.9.1.tar";
-          sha256 = "106wn53z39fcna3sv4p0idmjg9lg5lijm5hyb4lbibp4s5yh2y3b";
+          sha256 = "1gy7qys9mzpgbqm5798fncmblmi32b350q51ccsyydq67yh69s3z";
         };
         packageRequires = [];
         meta = {
@@ -2951,8 +2951,8 @@
         ename = "jgraph-mode";
         version = "1.1";
         src = fetchurl {
-          url = "https://elpa.gnu.org/packages/jgraph-mode-1.1.el";
-          sha256 = "0479irjz5r79x6ngl3lfkl1gqsmvcw8kn6285sm6nkn66m1dfs8l";
+          url = "https://elpa.gnu.org/packages/jgraph-mode-1.1.tar";
+          sha256 = "1ryxbszp15dy2chch2irqy7rmcspfjw717w4rd0vxjpwvgkjgiql";
         };
         packageRequires = [ cl-lib ];
         meta = {
@@ -2964,10 +2964,10 @@
       elpaBuild {
         pname = "jinx";
         ename = "jinx";
-        version = "1.4";
+        version = "1.6";
         src = fetchurl {
-          url = "https://elpa.gnu.org/packages/jinx-1.4.tar";
-          sha256 = "1vv85pbhcpwjvd3iwnr8ksjpbydrsk7m3zm34hcbybg703yk2nl7";
+          url = "https://elpa.gnu.org/packages/jinx-1.6.tar";
+          sha256 = "0jy2g587930d4jqi4asrci3411bby9j6wrxczyskacvjs41vqyip";
         };
         packageRequires = [ compat emacs ];
         meta = {
@@ -2982,7 +2982,7 @@
         version = "0.4";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/jit-spell-0.4.tar";
-          sha256 = "1p83spcq52l7k63p56y3w5r3kl49wbrs4abynwn25ikhkd4wl8x3";
+          sha256 = "0p9nf2n0x6c6xl32aczghzipx8n5aq7a1x6r2s78xvpwr299k998";
         };
         packageRequires = [ compat emacs ];
         meta = {
@@ -2997,7 +2997,7 @@
         version = "20231224";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/js2-mode-20231224.tar";
-          sha256 = "1yc7rs748dwpbxy2bqxfspinfiay28qh8l0fly1k76fhk159rwj4";
+          sha256 = "023z76zxh5q6g26x7qlgf9476lj95sj84d5s3aqhy6xyskkyyg6c";
         };
         packageRequires = [ cl-lib emacs ];
         meta = {
@@ -3011,8 +3011,8 @@
         ename = "json-mode";
         version = "0.2";
         src = fetchurl {
-          url = "https://elpa.gnu.org/packages/json-mode-0.2.el";
-          sha256 = "16ph6v9snvlmclg9shnyck86dqvlj4lf8205dhqx4l8vmhfy3d14";
+          url = "https://elpa.gnu.org/packages/json-mode-0.2.tar";
+          sha256 = "1ix8nq9rjfgbq8vzzjp179j2wa11il0ys8fjjy9gnlqwk6lnk86h";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -3027,7 +3027,7 @@
         version = "1.0.25";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/jsonrpc-1.0.25.tar";
-          sha256 = "0hlc70xlm3a53il7k24s6s25dhnd09l2454r5qkpfnjdz9p5ih6f";
+          sha256 = "18f0g8j1rd2fpa707w6fll6ryj7mg6hbcy2pc3xff2a4ps8zv12b";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -3042,7 +3042,7 @@
         version = "3.1";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/jumpc-3.1.tar";
-          sha256 = "04wqajw4i7sslsw8cwqbw30kbwwf9qlqxjm17v0bsxh5sp27y1jc";
+          sha256 = "1c6wzwrr1ydpn5ah5xnk159xcn4v1gv5rjm4iyfj83dss2ygirzp";
         };
         packageRequires = [];
         meta = {
@@ -3057,7 +3057,7 @@
         version = "0.2.2";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/kind-icon-0.2.2.tar";
-          sha256 = "1jpc4izbi5ajqqrvvfp5yqfmljaw2mq06ym36d4p2cxkz95vcmi7";
+          sha256 = "1zafx7rvfyahb7zzl2n9gpb2lc8x3k0bkcap2fl0n54aw4j98i69";
         };
         packageRequires = [ emacs svg-lib ];
         meta = {
@@ -3072,7 +3072,7 @@
         version = "1.1.5";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/kiwix-1.1.5.tar";
-          sha256 = "17k4aa8s9m24c572qvl5a481iw9ny6wmd5yrg47iv4d2lb2i13h2";
+          sha256 = "1krmlyfjs8b7ibixbmv41vhg1gm7prck6lpp61v17fgig92a9k2s";
         };
         packageRequires = [ emacs request ];
         meta = {
@@ -3086,8 +3086,8 @@
         ename = "kmb";
         version = "0.1";
         src = fetchurl {
-          url = "https://elpa.gnu.org/packages/kmb-0.1.el";
-          sha256 = "1wjfk28illfd5bkka3rlhhq59r0pad9zik1njlxym0ha8kbhzsj8";
+          url = "https://elpa.gnu.org/packages/kmb-0.1.tar";
+          sha256 = "12klfmdjjlyjvrzz3rx8dmamnag1fwljhs05jqwd0dv4a2q11gg5";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -3101,8 +3101,8 @@
         ename = "landmark";
         version = "1.0";
         src = fetchurl {
-          url = "https://elpa.gnu.org/packages/landmark-1.0.el";
-          sha256 = "0mz1l9zc1nvggjhg4jcly8ncw38xkprlrha8l8vfl9k9rg7s1dv4";
+          url = "https://elpa.gnu.org/packages/landmark-1.0.tar";
+          sha256 = "1nnmnvyfjmkk5ddw4q24py1bqzykr29klip61n16bqpr39v56gpg";
         };
         packageRequires = [];
         meta = {
@@ -3122,7 +3122,7 @@
         version = "1.5.4";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/latex-table-wizard-1.5.4.tar";
-          sha256 = "1vmwx7g79chcr6hrzdjh1ndpnqy8qn52n03789dhmxxr1ji7nk0i";
+          sha256 = "1999kh5yi0cg1k0al3np3zi2qhrmcpzxqsfvwg0mgrg3mww4gqlw";
         };
         packageRequires = [ auctex emacs transient ];
         meta = {
@@ -3137,7 +3137,7 @@
         version = "4.5.5";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/leaf-4.5.5.tar";
-          sha256 = "1rdbrf84ijapiqhq72gy8r5xgk54sf0jy31pgd3w4rl1wywh5cas";
+          sha256 = "1nvpl9ffma0ybbr7vlpcj7q33ja17zrswvl91bqljlmb4lb5121m";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -3152,7 +3152,7 @@
         version = "0.12";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/lentic-0.12.tar";
-          sha256 = "15sb126sq5aw3n09vqydmsl1l5svfar70iz42hnqi783cpw1lh0m";
+          sha256 = "0pszjhgy9dlk3h5gc8wnlklgl30ha3ig9bpmw2j1ps713vklfms7";
         };
         packageRequires = [ dash emacs m-buffer ];
         meta = {
@@ -3171,7 +3171,7 @@
         version = "0.2";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/lentic-server-0.2.tar";
-          sha256 = "1vifs91r4rm57rka8by50f8zg5pr2hjqwbdz28mbbxhkj3war6s5";
+          sha256 = "1r0jcfylvhlihwm6pm4f8pzvsmnlspfkph1hgi5qjkv311045244";
         };
         packageRequires = [ lentic web-server ];
         meta = {
@@ -3185,8 +3185,8 @@
         ename = "let-alist";
         version = "1.0.6";
         src = fetchurl {
-          url = "https://elpa.gnu.org/packages/let-alist-1.0.6.el";
-          sha256 = "0szj7vnjzz4zci5fvz7xqgcpi4pzdyyf4qi2s8xar2hi7v3yaawr";
+          url = "https://elpa.gnu.org/packages/let-alist-1.0.6.tar";
+          sha256 = "1fk1yl2cg4gxcn02n2gki289dgi3lv56n0akkm2h7dhhbgfr6gqm";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -3201,7 +3201,7 @@
         version = "1.2";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/lex-1.2.tar";
-          sha256 = "03g5lm6gyh4k8l4iccdl9z0qinr46fkpqlwdw0gdfj9d0b782mbs";
+          sha256 = "1pqjrlw558l4z4k40jmli8lmcqlzddhkr0mfm38rbycp7ghdr4zx";
         };
         packageRequires = [];
         meta = {
@@ -3216,7 +3216,7 @@
         version = "1.0.0";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/lin-1.0.0.tar";
-          sha256 = "0b090g2l8mvm3b6k7s31v9lw48qjcvcif2p201wlqgipddm6s180";
+          sha256 = "1yxvpgh3sbw0d0zkjfgbhjc2bziqvkyj7fgwcl3814q7hh8m4146";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -3235,10 +3235,10 @@
       elpaBuild {
         pname = "listen";
         ename = "listen";
-        version = "0.8";
+        version = "0.9";
         src = fetchurl {
-          url = "https://elpa.gnu.org/packages/listen-0.8.tar";
-          sha256 = "1vj9fsyp5v1qh87asj23k625080x6c8mgkas4933lrz7l2g7h1y2";
+          url = "https://elpa.gnu.org/packages/listen-0.9.tar";
+          sha256 = "1g1sv8fs8vl93fah7liaqzgwvc4b1chasx5151ayizz4q2qgwwbp";
         };
         packageRequires = [ emacs persist taxy taxy-magit-section transient ];
         meta = {
@@ -3250,10 +3250,10 @@
       elpaBuild {
         pname = "llm";
         ename = "llm";
-        version = "0.12.1";
+        version = "0.12.3";
         src = fetchurl {
-          url = "https://elpa.gnu.org/packages/llm-0.12.1.tar";
-          sha256 = "11z56fqp0y13jmvm2611xyqsz41k01rsqdjvrzvbf33n56vsw713";
+          url = "https://elpa.gnu.org/packages/llm-0.12.3.tar";
+          sha256 = "19c3i8jfhvc0zqha2mlynk16ws4wgc1hdjrp7gp290bacvr560vg";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -3261,31 +3261,31 @@
           license = lib.licenses.free;
         };
       }) {};
-    lmc = callPackage ({ cl-lib ? null, elpaBuild, emacs, fetchurl, lib }:
+    lmc = callPackage ({ elpaBuild, fetchurl, lib }:
       elpaBuild {
         pname = "lmc";
         ename = "lmc";
         version = "1.4";
         src = fetchurl {
-          url = "https://elpa.gnu.org/packages/lmc-1.4.el";
-          sha256 = "0fm4sclx9gg0d0615smz105x320sk45y4ivpjk3nbc67c5l0sh2h";
+          url = "https://elpa.gnu.org/packages/lmc-1.4.tar";
+          sha256 = "0c8sd741a7imn1im4j17m99bs6zmppndsxpn23k33lmcqj1rfhsk";
         };
-        packageRequires = [ cl-lib emacs ];
+        packageRequires = [];
         meta = {
           homepage = "https://elpa.gnu.org/packages/lmc.html";
           license = lib.licenses.free;
         };
       }) {};
-    load-dir = callPackage ({ cl-lib ? null, elpaBuild, fetchurl, lib }:
+    load-dir = callPackage ({ elpaBuild, fetchurl, lib }:
       elpaBuild {
         pname = "load-dir";
         ename = "load-dir";
         version = "0.0.5";
         src = fetchurl {
-          url = "https://elpa.gnu.org/packages/load-dir-0.0.5.el";
-          sha256 = "1575ipn155nzzb5yghblxc7v1vpq4i16w1ff7y56qw2498ligpc5";
+          url = "https://elpa.gnu.org/packages/load-dir-0.0.5.tar";
+          sha256 = "1yxnckd7s4alkaddfs672g0jnsxir7c70crnm6rsc5vhmw6310nx";
         };
-        packageRequires = [ cl-lib ];
+        packageRequires = [];
         meta = {
           homepage = "https://elpa.gnu.org/packages/load-dir.html";
           license = lib.licenses.free;
@@ -3298,7 +3298,7 @@
         version = "1.3.2";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/load-relative-1.3.2.tar";
-          sha256 = "1fwa51jp0sq5l69y98l2zyj0iq9s6rj1rnqrmvncif61smma8fd7";
+          sha256 = "04ppqfzlqz7156aqm56yccizv0n71qir7yyp7xfiqq6vgj322rqv";
         };
         packageRequires = [];
         meta = {
@@ -3327,8 +3327,8 @@
         ename = "loccur";
         version = "1.2.4";
         src = fetchurl {
-          url = "https://elpa.gnu.org/packages/loccur-1.2.4.el";
-          sha256 = "00f1ifa4z5ay90bd2002fmj83d7xqzrcr9018q8crlypmpxkyh7j";
+          url = "https://elpa.gnu.org/packages/loccur-1.2.4.tar";
+          sha256 = "1b8rmbl03k8fdy217ngbxsc0a3jxxmqnwshf72f4iay8ln4hasgk";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -3343,7 +3343,7 @@
         version = "1.1.1";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/logos-1.1.1.tar";
-          sha256 = "1lg4disxfzw9nf438j32q1cna447mlxy3sg523cqzhimh1mk5s9f";
+          sha256 = "0dyy1y6225kbmsl5zy4hp0bdnnp06l05m8zqxc22alsivy2qvkjb";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -3358,7 +3358,7 @@
         version = "1.0.0";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/luwak-1.0.0.tar";
-          sha256 = "10jcblm0q5948l3ar911dfj6y9p5bggwz9nmq9d3prlgz5zczv34";
+          sha256 = "0z6h1cg7nshv87zl4fia6l5gwf9ax6f4wgxijf2smi8cpwmv6j79";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -3373,7 +3373,7 @@
         version = "0.15.0";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/lv-0.15.0.tar";
-          sha256 = "1xnyk8bvr0bdz68qc1sga3w9lwdga5qpp3m7290z1vyv0mznh4gm";
+          sha256 = "1wb8whyj8zpsd7nm7r0yjvkfkr2ml80di7alcafpadzli808j2l4";
         };
         packageRequires = [];
         meta = {
@@ -3388,7 +3388,7 @@
         version = "0.16";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/m-buffer-0.16.tar";
-          sha256 = "1mb03hrszxxsk61yvh70rnkn7iiwx1vx6n1br02clkpn2q2c0mq5";
+          sha256 = "16drbgamp7yd1ndw2qrycrgmnknv5k7h4d7svcdhv9az6fg1vzn4";
         };
         packageRequires = [ seq ];
         meta = {
@@ -3403,7 +3403,7 @@
         version = "3.3.1";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/map-3.3.1.tar";
-          sha256 = "1gvywhdfg27nx6pyq7yfwq9x6j96jama59i5s9rp41pvg2dlmvm0";
+          sha256 = "1za8wjdvyxsxvmzla823f7z0s4wbl22l8k08v8b4h4m6i7w356lp";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -3415,10 +3415,10 @@
       elpaBuild {
         pname = "marginalia";
         ename = "marginalia";
-        version = "1.5";
+        version = "1.6";
         src = fetchurl {
-          url = "https://elpa.gnu.org/packages/marginalia-1.5.tar";
-          sha256 = "1hc4jjvrwfkqmhb1kvmjzzkmnqfx188ywy1cmxpns1wivnjic79h";
+          url = "https://elpa.gnu.org/packages/marginalia-1.6.tar";
+          sha256 = "0an3ayka1f7n511bjfwz42h9g5b1vhb6x47jy0k9psscr7pbhszg";
         };
         packageRequires = [ compat emacs ];
         meta = {
@@ -3432,8 +3432,8 @@
         ename = "markchars";
         version = "0.2.2";
         src = fetchurl {
-          url = "https://elpa.gnu.org/packages/markchars-0.2.2.el";
-          sha256 = "09a471c2mcjm6ia37xqz0573sy8f68d5ljgnmhrj0v455g1g44lj";
+          url = "https://elpa.gnu.org/packages/markchars-0.2.2.tar";
+          sha256 = "0jagp5s2kk8ijwxbg5ccq31bjlcxkqpqhsg7a1hbyp3p5z3j73m0";
         };
         packageRequires = [];
         meta = {
@@ -3448,7 +3448,7 @@
         version = "1.3";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/math-symbol-lists-1.3.tar";
-          sha256 = "0h330j7vxmb56z66xgynqlxkr5bnp5id25j0w4ikyms407sdyrbs";
+          sha256 = "1r2acaf79kwwvndqn9xbvq9dc12vr3lryc25yp0w0gksp86p8cfa";
         };
         packageRequires = [];
         meta = {
@@ -3463,7 +3463,7 @@
         version = "1.0.0";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/mct-1.0.0.tar";
-          sha256 = "1gzk0bjvry8wzi35yvghz003rbkz7ky4zd9vafg328b809n9ggff";
+          sha256 = "0f8znz4basrdh56pcldsazxv3mwqir807lsaza2g5bfqws0c7h8k";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -3477,8 +3477,8 @@
         ename = "memory-usage";
         version = "0.2";
         src = fetchurl {
-          url = "https://elpa.gnu.org/packages/memory-usage-0.2.el";
-          sha256 = "03qwb7sprdh1avxv3g7hhnhl41pwvnpxcpnqrikl7picy78h1gwj";
+          url = "https://elpa.gnu.org/packages/memory-usage-0.2.tar";
+          sha256 = "04bylvy86x8w96g7zil3jzyac0fijvb5lz4830ja5yabpvsnk3vq";
         };
         packageRequires = [];
         meta = {
@@ -3492,8 +3492,8 @@
         ename = "metar";
         version = "0.3";
         src = fetchurl {
-          url = "https://elpa.gnu.org/packages/metar-0.3.el";
-          sha256 = "07gv0v0xwb5yzynwagmvf0n5c9wljy1jg4ympnxpa2d9r1zqc02g";
+          url = "https://elpa.gnu.org/packages/metar-0.3.tar";
+          sha256 = "07nf14zm5y6ma6wqnyw5bf7cvk3ybw7hvlrwcnri10s8vh3rqd0r";
         };
         packageRequires = [ cl-lib ];
         meta = {
@@ -3507,8 +3507,8 @@
         ename = "midi-kbd";
         version = "0.2";
         src = fetchurl {
-          url = "https://elpa.gnu.org/packages/midi-kbd-0.2.el";
-          sha256 = "1783k07gyiaq784wqv8qqc89cw5d6q1bdqz68b7n1lx4vmvfrhmh";
+          url = "https://elpa.gnu.org/packages/midi-kbd-0.2.tar";
+          sha256 = "0jd92rainjd1nx72z7mrvsxs3az6axxiw1v9sbpsj03x8qq0129q";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -3523,7 +3523,7 @@
         version = "1.6";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/mines-1.6.tar";
-          sha256 = "1199s1v4my0qpvc5aaxzbqayjn59vilxbqnywvyhvm7hz088aps2";
+          sha256 = "0j52n43mv963hpgdh5kk1k9wi821r6w3diwdp47rfwsijdd0wnhs";
         };
         packageRequires = [ cl-lib emacs ];
         meta = {
@@ -3538,7 +3538,7 @@
         version = "0.5";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/minibuffer-header-0.5.tar";
-          sha256 = "1nw53h34izm0z8njsf6jacc40fhg4x5l8r403ysmw2ps89i80p36";
+          sha256 = "1qic33wsdba5xw3qxigq18nibwhj45ggk0ragy4zj9cfy1l2ni44";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -3552,8 +3552,8 @@
         ename = "minibuffer-line";
         version = "0.1";
         src = fetchurl {
-          url = "https://elpa.gnu.org/packages/minibuffer-line-0.1.el";
-          sha256 = "1ny4iirp26na5118wfgxlv6fxlrdclzdbd9m0lkrv51w0qw7spil";
+          url = "https://elpa.gnu.org/packages/minibuffer-line-0.1.tar";
+          sha256 = "0sg9vhv7bi82a90ziiwsabnfvw8zp544v0l93hbl42cj432bpwfx";
         };
         packageRequires = [];
         meta = {
@@ -3567,8 +3567,8 @@
         ename = "minimap";
         version = "1.4";
         src = fetchurl {
-          url = "https://elpa.gnu.org/packages/minimap-1.4.el";
-          sha256 = "09fm0ziy8cdzzw08l7l6p63dxz2a27p3laia2v51mvbva8177ls1";
+          url = "https://elpa.gnu.org/packages/minimap-1.4.tar";
+          sha256 = "0n27wp65x5n21qy6x5dhzms8inf0248kzninp56kfx1bbf9w4x66";
         };
         packageRequires = [];
         meta = {
@@ -3583,7 +3583,7 @@
         version = "0.5.11";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/mmm-mode-0.5.11.tar";
-          sha256 = "07pda4bvvcmdwkwh8dnfqgvhkdni2wjgps1094kn1j5c9j254741";
+          sha256 = "0dh76lk0am07j2zi7hhbmr6cnnss7l0b9rhi9is0w0n5i7j4i0p2";
         };
         packageRequires = [ cl-lib emacs ];
         meta = {
@@ -3598,7 +3598,7 @@
         version = "4.4.0";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/modus-themes-4.4.0.tar";
-          sha256 = "1n6fmgj2kpdy2mmwg5hh6dic30zy0gd3ap6hlipl9qn08lawbbgq";
+          sha256 = "1bqvyf8xq55dligwqhw4d6z9bv529rhnijxv5y5gdlzap973bf71";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -3613,7 +3613,7 @@
         version = "1";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/mpdired-1.tar";
-          sha256 = "1b7xsdgsrwy7qkshkk83bizz9r78g4pdfnavwl6riyb947gk6zkx";
+          sha256 = "08lc0j25kxisykd2l9v4iamalmm5hzsnsm026v808krny28wwbp3";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -3628,7 +3628,7 @@
         version = "1.14";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/multi-mode-1.14.tar";
-          sha256 = "0aslndqr0277ai0iwywbmj07vmz88vpmc0mgydcy4li8fkn8h066";
+          sha256 = "0i2l50lcsj3mm9k38kfmh2hnb437pjbk2yxv26p6na1g1n44lkil";
         };
         packageRequires = [];
         meta = {
@@ -3643,7 +3643,7 @@
         version = "1.1.10";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/multishell-1.1.10.tar";
-          sha256 = "1ipn9rlh9jg55i04adjy32n8dkjhhw1bcd72w97mlsdk66g8j6l3";
+          sha256 = "1khqc7a04ynl63lpv898361sv37jgpd1fzvl0ryphprv9shnhw10";
         };
         packageRequires = [ cl-lib ];
         meta = {
@@ -3672,8 +3672,8 @@
         ename = "myers";
         version = "0.1";
         src = fetchurl {
-          url = "https://elpa.gnu.org/packages/myers-0.1.el";
-          sha256 = "0yrxklkksj16cfbvwmdxjj43vngjd6q0fivib1xim3c9g3c9b670";
+          url = "https://elpa.gnu.org/packages/myers-0.1.tar";
+          sha256 = "0a053w7nj0qfryvsh1ss854wxwbk5mhkl8a5nprcfgsh4qh2m487";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -3688,7 +3688,7 @@
         version = "0.4";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/nadvice-0.4.tar";
-          sha256 = "0ac7zxi04gzcd5hz81lib1db3c6a7xmwkb381ljxvaha1mlzp1k0";
+          sha256 = "19dx07v4z2lyyp18v45c5hgp65akw58bdqg5lcrzyb9mrlji8js6";
         };
         packageRequires = [];
         meta = {
@@ -3702,8 +3702,8 @@
         ename = "nameless";
         version = "1.0.2";
         src = fetchurl {
-          url = "https://elpa.gnu.org/packages/nameless-1.0.2.el";
-          sha256 = "13c1payc46ry5bf8ia8cwqpshm2ya74fi5r4sxq5n410z5f0pgqx";
+          url = "https://elpa.gnu.org/packages/nameless-1.0.2.tar";
+          sha256 = "0m3z701j2i13zmr4g0wjd3ms6ajr6w371n5kx95n9ssxyjwjppcm";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -3711,21 +3711,16 @@
           license = lib.licenses.free;
         };
       }) {};
-    names = callPackage ({ cl-lib ? null
-                         , elpaBuild
-                         , emacs
-                         , fetchurl
-                         , lib
-                         , nadvice }:
+    names = callPackage ({ cl-lib ? null, elpaBuild, emacs, fetchurl, lib }:
       elpaBuild {
         pname = "names";
         ename = "names";
         version = "20151201.0";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/names-20151201.0.tar";
-          sha256 = "13smsf039x4yd7pzvllgn1vz8lhkwghnhip9y2bka38vk37w912d";
+          sha256 = "0nf6n8hk58a7r56d899s5dsva3jjvh3qx9g2d1hra403fwlds74k";
         };
-        packageRequires = [ cl-lib emacs nadvice ];
+        packageRequires = [ cl-lib emacs ];
         meta = {
           homepage = "https://elpa.gnu.org/packages/names.html";
           license = lib.licenses.free;
@@ -3738,7 +3733,7 @@
         version = "0.3";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/nano-agenda-0.3.tar";
-          sha256 = "1ip21vjapcrla6j0qbjkcrdhs6xq773cswmwbhnsxb3xpzsa1z7x";
+          sha256 = "12sh6wqqd13sv966wj4k4djidn238fdb6l4wg3z9ib0dx36nygcr";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -3753,7 +3748,7 @@
         version = "1.0.1";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/nano-modeline-1.0.1.tar";
-          sha256 = "1bjxsqbi540cx2zxzrps2bdwj3hkaxw1s9wha1lrldhvckq7dm91";
+          sha256 = "0frvg9zy9i8qqb6il0csxmgxsd373n696kwz1xqq28jikvhzkwyy";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -3768,7 +3763,7 @@
         version = "0.3.4";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/nano-theme-0.3.4.tar";
-          sha256 = "1hfw6zxnzm4x55iqk1pg6nlp79c86np856bbdac4nv65ff4dkiqq";
+          sha256 = "0x49lk0kx8mz72a81li6gwg3kivn7bn4ld0mml28smzqqfr3873a";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -3783,7 +3778,7 @@
         version = "1.1";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/nftables-mode-1.1.tar";
-          sha256 = "0wcd31frnvxzkns4jdfxraai0bfi1184wcn64r8lg73h933p47iz";
+          sha256 = "1wjw6n60kj84j8gj62mr6s97xd0aqvr4v7npyxwmhckw9z13xcqv";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -3801,8 +3796,8 @@
         ename = "nhexl-mode";
         version = "1.5";
         src = fetchurl {
-          url = "https://elpa.gnu.org/packages/nhexl-mode-1.5.el";
-          sha256 = "0qvxfg7sv4iqyjxzaim6b4v9k5hav36qd4vkf9jwzw6p5fri8w8d";
+          url = "https://elpa.gnu.org/packages/nhexl-mode-1.5.tar";
+          sha256 = "1i1by5bp5dby2r2jhzr0jvnchrybgnzmc5ln84w66180shk2s3yk";
         };
         packageRequires = [ cl-lib emacs ];
         meta = {
@@ -3816,8 +3811,8 @@
         ename = "nlinum";
         version = "1.9";
         src = fetchurl {
-          url = "https://elpa.gnu.org/packages/nlinum-1.9.el";
-          sha256 = "03zqlz58fvh4cpfl43h7py2fpnc7m37f1ys8zhrc511ccq9cwkdn";
+          url = "https://elpa.gnu.org/packages/nlinum-1.9.tar";
+          sha256 = "1cpyg6cxaaaaq6hc066l759dlas5mhn1fi398myfglnwrglia3lm";
         };
         packageRequires = [];
         meta = {
@@ -3829,10 +3824,10 @@
       elpaBuild {
         pname = "notes-mode";
         ename = "notes-mode";
-        version = "1.30";
+        version = "1.31";
         src = fetchurl {
-          url = "https://elpa.gnu.org/packages/notes-mode-1.30.tar";
-          sha256 = "1aqivlfa0nk0y27gdv68k5rg3m5wschh8cw196a13qb7kaghk9r6";
+          url = "https://elpa.gnu.org/packages/notes-mode-1.31.tar";
+          sha256 = "0lwja53cknd1w432mcbfrcshmxmk23dqrbr9k2101pqfzbw8nri2";
         };
         packageRequires = [];
         meta = {
@@ -3847,7 +3842,7 @@
         version = "1.1.0";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/notmuch-indicator-1.1.0.tar";
-          sha256 = "0k5csfrs8y1r6g7hs2y0961jpx0ih090kb6rkijljny2qhfj0573";
+          sha256 = "1g30hzb238w9cnxqw8w7gw5l8sl4rx122napmm9rx974hdk3zk9k";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -3861,8 +3856,8 @@
         ename = "ntlm";
         version = "2.1.0";
         src = fetchurl {
-          url = "https://elpa.gnu.org/packages/ntlm-2.1.0.el";
-          sha256 = "01d0bcmh8a36qf871w6bc05kjk9bmnh843m9869xw06zyvqwg9mv";
+          url = "https://elpa.gnu.org/packages/ntlm-2.1.0.tar";
+          sha256 = "0kivmb6b57qjrwd41zwlfdq7l9nisbh4mgd96rplrkxpzw6dq0j7";
         };
         packageRequires = [];
         meta = {
@@ -3877,7 +3872,7 @@
         version = "1.5";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/num3-mode-1.5.tar";
-          sha256 = "0i01v0sl0wi98xvc3wkk2lwc3nxmnhhpyrhr9gn88x5ygc0p4rdw";
+          sha256 = "1a7w2qd210zp199c1js639xbv2kmqmgvcqi5dn1vsazasp2dwlj2";
         };
         packageRequires = [];
         meta = {
@@ -3892,7 +3887,7 @@
         version = "0.16";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/oauth2-0.16.tar";
-          sha256 = "1rzly2nwjywrfgcmp8zidbmjl2ahyd8l8507lb1mxm4xqryvf316";
+          sha256 = "0bz4gqg5bhv6zk875q7sb0y56yvylnv0chj77ivjjpkha6rdp311";
         };
         packageRequires = [ cl-lib nadvice ];
         meta = {
@@ -3907,7 +3902,7 @@
         version = "1.0";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/ob-asymptote-1.0.tar";
-          sha256 = "0m9i21zailg7drglm19v9ysyigzvz3p2r3q069a3n04di56d4629";
+          sha256 = "1hmqbkrqg18w454xg37rg5cg0q3vd0b0fm14n5chihqrwwnwrf4l";
         };
         packageRequires = [];
         meta = {
@@ -3922,7 +3917,7 @@
         version = "1.0";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/ob-haxe-1.0.tar";
-          sha256 = "1x19b3aappv4d3mvpf01r505l1sfndbzbpr5sbid411g9g9k3rwr";
+          sha256 = "095qcvxpanw6fh96dfkdydn10xikbrjwih7i05iiyvazpk4x6nbz";
         };
         packageRequires = [];
         meta = {
@@ -3937,7 +3932,7 @@
         version = "0.8.3";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/objed-0.8.3.tar";
-          sha256 = "1s38d6bvggdk5p45ww1jb4gxifzgjwgw1m6ar920nlg0j4fgbcvr";
+          sha256 = "1shgpha6f1pql95v86whsw6w6j7v35cas98fyygwrpkcrxx9a56r";
         };
         packageRequires = [ cl-lib emacs ];
         meta = {
@@ -3949,10 +3944,10 @@
       elpaBuild {
         pname = "omn-mode";
         ename = "omn-mode";
-        version = "1.2";
+        version = "1.3";
         src = fetchurl {
-          url = "https://elpa.gnu.org/packages/omn-mode-1.2.el";
-          sha256 = "0p7lmqabdcn625q9z7libn7q1b6mjc74bkic2kjhhckzvlfjk742";
+          url = "https://elpa.gnu.org/packages/omn-mode-1.3.tar";
+          sha256 = "01yg4ifbz7jfhvq6r6naf50vx00wpjsr44mmlj580bylfrmdc839";
         };
         packageRequires = [];
         meta = {
@@ -3966,8 +3961,8 @@
         ename = "on-screen";
         version = "1.3.3";
         src = fetchurl {
-          url = "https://elpa.gnu.org/packages/on-screen-1.3.3.el";
-          sha256 = "0ga4hw23ki583li2z2hr7l6hk1nc2kdg4afndg06cm9jn158wza7";
+          url = "https://elpa.gnu.org/packages/on-screen-1.3.3.tar";
+          sha256 = "0w5cv3bhb6cyjhvglp5y6cy51ppsh2xd1x53i4w0gm44g5n8l6bd";
         };
         packageRequires = [ cl-lib ];
         meta = {
@@ -3982,7 +3977,7 @@
         version = "1.0.1";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/openpgp-1.0.1.tar";
-          sha256 = "1cm6c8394869dw2a5ykb92crz7c4pdav82a8nslbi533knxn7wn6";
+          sha256 = "052wh38q6r09avxa0bgc5gn4769763zmgijza76mb0b3lzj66syv";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -3997,7 +3992,7 @@
         version = "1.1";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/orderless-1.1.tar";
-          sha256 = "19iy0ps8h1qjh16mdybayd9i25bn27sa2slqsa6nslh251pxc0rk";
+          sha256 = "1qjxln21ydc86kabk5kwa6ky40qjqcrk5nmc92w42x3ypxs711f3";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -4009,10 +4004,10 @@
       elpaBuild {
         pname = "org";
         ename = "org";
-        version = "9.6.23";
+        version = "9.6.28";
         src = fetchurl {
-          url = "https://elpa.gnu.org/packages/org-9.6.23.tar";
-          sha256 = "0yqn3kag4anzm8ahfgjxrxjndzq6rbs6kayfq93gx4rn0qxa334q";
+          url = "https://elpa.gnu.org/packages/org-9.6.28.tar";
+          sha256 = "1slh28vjwhb65q0630p1syv6ampdsqgrdmisyj4f328g3j2brpkw";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -4027,7 +4022,7 @@
         version = "1.1";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/org-contacts-1.1.tar";
-          sha256 = "1kzdw9kbnpryxdb9ywh2va4nnjcxw6asszf5n7a95rw2gl6m3l10";
+          sha256 = "0gqanhnrxajx5cf7g9waks23sclbmvmwjqrs0q4frcih3gs2nhix";
         };
         packageRequires = [ emacs org ];
         meta = {
@@ -4042,7 +4037,7 @@
         version = "1.1.2";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/org-edna-1.1.2.tar";
-          sha256 = "1a022ssqpxbkp03n2bij78srwjx7kacpsgj9a6wbm0yn946hgjpz";
+          sha256 = "1pifs5mbcjab21ylclck4kjdcds1xkvym27ncn9wwr8fl3fff2yl";
         };
         packageRequires = [ emacs org seq ];
         meta = {
@@ -4057,7 +4052,7 @@
         version = "0.0.5";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/org-jami-bot-0.0.5.tar";
-          sha256 = "0nh0sp1l8hn568n6j11nkl42rm6b3gbjwi3lsf6vanr0lzvrl58r";
+          sha256 = "1fiv0a7k6alvfvb7c6av0kbkwbw58plw05hhcf1vnkr9gda3s13y";
         };
         packageRequires = [ emacs jami-bot ];
         meta = {
@@ -4072,7 +4067,7 @@
         version = "1.2";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/org-modern-1.2.tar";
-          sha256 = "1kgvrsmbgadbr7wk48sgx1prlgpbp31nih9bl9div35d496njcnw";
+          sha256 = "1bm8kkcrn0glsb69sapj1zmb2ygd4sxksb3gag4hw1v5w3g51jjh";
         };
         packageRequires = [ compat emacs ];
         meta = {
@@ -4087,7 +4082,7 @@
         version = "0.1.1";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/org-notify-0.1.1.tar";
-          sha256 = "0y0zj7sri7m0q3nibwv0m1snkwhma403hbxpcd346xk3s3ljiz2k";
+          sha256 = "1vg0h32x5lc3p5n71m23q8mfdd1fq9ffmy9rsm5rcdphfk8s9x5l";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -4099,10 +4094,10 @@
       elpaBuild {
         pname = "org-real";
         ename = "org-real";
-        version = "1.0.7";
+        version = "1.0.8";
         src = fetchurl {
-          url = "https://elpa.gnu.org/packages/org-real-1.0.7.tar";
-          sha256 = "16isfsaxmgxiqfqx4lcsqlxazxjgxakr0k9pgpam13bqqqkq3cmp";
+          url = "https://elpa.gnu.org/packages/org-real-1.0.8.tar";
+          sha256 = "03g12czy833yzj7idkharsbl2zd1ajnsf7ay8qxqljwqrz8m91gw";
         };
         packageRequires = [ boxy emacs org ];
         meta = {
@@ -4114,10 +4109,10 @@
       elpaBuild {
         pname = "org-remark";
         ename = "org-remark";
-        version = "1.2.1";
+        version = "1.2.2";
         src = fetchurl {
-          url = "https://elpa.gnu.org/packages/org-remark-1.2.1.tar";
-          sha256 = "0xf10kgb0g4y9i4s1d3a1i5a119a1pijzhp5xxj2b2wyvjs2g3yk";
+          url = "https://elpa.gnu.org/packages/org-remark-1.2.2.tar";
+          sha256 = "01iprzgbyvbfpxp6fls4lfx2lxx7xkff80m35s9kc0ih5jlxc5qs";
         };
         packageRequires = [ emacs org ];
         meta = {
@@ -4132,7 +4127,7 @@
         version = "1.3.2";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/org-transclusion-1.3.2.tar";
-          sha256 = "02r48jzr5zivk11c3c3a9vj1cixfgf1wlmv1kjr5bxldayhg7aqb";
+          sha256 = "14w9n10s6nh3nylkx3xzbqjb9pp4dja85agh0h2bzlbkaq4j7vij";
         };
         packageRequires = [ emacs org ];
         meta = {
@@ -4147,7 +4142,7 @@
         version = "0.1.4";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/org-translate-0.1.4.tar";
-          sha256 = "0dvg3h8mmzlqfg60rwxjgy17sqv84p6nj2ngjdafkp9a4halv0g7";
+          sha256 = "0s0vqpncb6rvhpxdir5ghanjyhpw7bplqfh3bpgri5ay2b46kj4f";
         };
         packageRequires = [ emacs org ];
         meta = {
@@ -4162,7 +4157,7 @@
         version = "1.14";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/orgalist-1.14.tar";
-          sha256 = "08gx8aqi7ph75vhhss2xl1lfypzy8a3zmj7w8flcrvz1nk0z738s";
+          sha256 = "02diwanqldzr42aaa5kqcj1xgxmf1k6rqhk9zv40psqpzgd1yms5";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -4177,7 +4172,7 @@
         version = "0.4";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/osc-0.4.tar";
-          sha256 = "0zfrzxalvvf9wwwhwsqgl3v2ca6m2rfl5hd7sz662s6gmbwawqqa";
+          sha256 = "1ls6v0mkh7z90amrlczrvv6mgpv6hzzjw0zlxjlzsj2vr1gz3vca";
         };
         packageRequires = [];
         meta = {
@@ -4192,7 +4187,7 @@
         version = "1.3";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/osm-1.3.tar";
-          sha256 = "09c6wgq470hi2kgk7s8pbcqaggw13hg3f2zz5qwi68hfh7nq7z7k";
+          sha256 = "0s5k6akdvbm9gsgzjlz795vgfy3pkl4qdk45p16p40f59dr49g4r";
         };
         packageRequires = [ compat emacs ];
         meta = {
@@ -4206,8 +4201,8 @@
         ename = "other-frame-window";
         version = "1.0.6";
         src = fetchurl {
-          url = "https://elpa.gnu.org/packages/other-frame-window-1.0.6.el";
-          sha256 = "04h0jr73xv8inm52h8b8zbc9lsnlzkn40qy99x4x0lkkdqqxw1ny";
+          url = "https://elpa.gnu.org/packages/other-frame-window-1.0.6.tar";
+          sha256 = "1x8i6hbl48vmp5h43drr35lwaiwhcyr3vnk7rcyim5jl2ijw8yc0";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -4222,7 +4217,7 @@
         version = "4.3.0";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/pabbrev-4.3.0.tar";
-          sha256 = "0a54ld80s0r9zrc2kd861p4ii3jzqhxykzcnvi64fhxxg3x2aggx";
+          sha256 = "1fplbmzqz066gsmvmf2indg4n348vdgs2m34dm32gnrjghfrxxhs";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -4237,7 +4232,7 @@
         version = "1.1.3";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/paced-1.1.3.tar";
-          sha256 = "1gaszf68h0nnv6p6yzv48m24csw6v479nsq0f02y6slixxaflnwl";
+          sha256 = "0j2362zq22j6qma6bb6jh6qpd12zrc161pgl9cfhnq5m3s9i1sz4";
         };
         packageRequires = [ async emacs ];
         meta = {
@@ -4267,7 +4262,7 @@
         version = "0.2.1";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/parser-generator-0.2.1.tar";
-          sha256 = "17kqkqz3d29pmn8ydw5kxs2fdgwqh0q31f13hdf1bnw009j24rl9";
+          sha256 = "1vrgkvcj16550frq2jivw31cmq6rhwrifmdk4rf0266br3jdarpf";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -4282,7 +4277,7 @@
         version = "1.0";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/path-iterator-1.0.tar";
-          sha256 = "0kgl7rhv9x23jyr6ahfy6ql447zpz9fnmfwldkpn69g7jdx6a3cc";
+          sha256 = "0v9gasc0wlqd7pks6k3695md7mdfnaknh6xinmp4pkvvalfh7shv";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -4297,7 +4292,7 @@
         version = "1.0.1";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/peg-1.0.1.tar";
-          sha256 = "0yxfwwwc6fck1p9smcm1dwnva42868xvavhy7j749vlxrgb3v94x";
+          sha256 = "14ll56fn9n11nydydslp7xyn79122dprm89i181ks170v0qcsps3";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -4312,7 +4307,7 @@
         version = "0.81";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/perl-doc-0.81.tar";
-          sha256 = "1hbf36zrpjx0xx257370axxfs1yb3iz6g9kc4wg83gcag09j3lci";
+          sha256 = "1828jfl5dwk1751jsrpr2gr8hs1x315xlb9vhiis8frzvqmsribw";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -4327,7 +4322,7 @@
         version = "0.6";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/persist-0.6.tar";
-          sha256 = "0n68dshbbyrs713989bllmm1vypch8766hc8b4y989nmyclixjwp";
+          sha256 = "1p6h211xk0lrk4zqlm51rsms5lza9ymx6ayh9ij0afqrjqgffw77";
         };
         packageRequires = [];
         meta = {
@@ -4339,10 +4334,10 @@
       elpaBuild {
         pname = "phps-mode";
         ename = "phps-mode";
-        version = "0.4.48";
+        version = "0.4.49";
         src = fetchurl {
-          url = "https://elpa.gnu.org/packages/phps-mode-0.4.48.tar";
-          sha256 = "1nm1j0f77afmwhb5cavk60nn4ifnx5qaycdy0c7qj8w3vdhyn3da";
+          url = "https://elpa.gnu.org/packages/phps-mode-0.4.49.tar";
+          sha256 = "1zxzv6h2075s0ldwr9izfy3sxrrg3x5y5vilnlgnwd7prcq8qa8y";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -4356,8 +4351,8 @@
         ename = "pinentry";
         version = "0.1";
         src = fetchurl {
-          url = "https://elpa.gnu.org/packages/pinentry-0.1.el";
-          sha256 = "0iiw11prk4w32czk69mvc3x6ja9xbhbvpg9b0nidrsg5njjjh76d";
+          url = "https://elpa.gnu.org/packages/pinentry-0.1.tar";
+          sha256 = "0i5g4yj2qva3rp8ay2fl9gcmp7q42caqryjyni8r5h4f3misviwq";
         };
         packageRequires = [];
         meta = {
@@ -4369,10 +4364,10 @@
       elpaBuild {
         pname = "plz";
         ename = "plz";
-        version = "0.7.2";
+        version = "0.8";
         src = fetchurl {
-          url = "https://elpa.gnu.org/packages/plz-0.7.2.tar";
-          sha256 = "1qpr4j5rqpvr17arxrrix1z9fzbqy1mddakyylqbvm9lg5yg2wnk";
+          url = "https://elpa.gnu.org/packages/plz-0.8.tar";
+          sha256 = "0kg275kq5hi83ry0n83w8pi0qn2lmlv9gnxcbwf1dcqk7n9i2v64";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -4387,7 +4382,7 @@
         version = "0.1";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/plz-see-0.1.tar";
-          sha256 = "0dmckrny21rlm5spiwx7j6q0xikzwlsrhg8yz890w47zpdxpl3bb";
+          sha256 = "1mi35d9b26d425v1kkmmbh477klcxf76fnyg154ddjm0nkgqq90d";
         };
         packageRequires = [ emacs plz ];
         meta = {
@@ -4402,7 +4397,7 @@
         version = "3.2";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/poke-3.2.tar";
-          sha256 = "0rhcz7kg20j72hf9rhq5zacdak8ayhn4cnwhgq9qwr18z00bxxm7";
+          sha256 = "15j4g5y427d9mja2irv3ak6x60ik4kpnscnwl9pqym7qly7sa3v9";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -4417,7 +4412,7 @@
         version = "3.1";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/poke-mode-3.1.tar";
-          sha256 = "1lirhws5d8l16qs5ddrvvz0f9xfl004q9yp333pdgsmcpk3ww7sr";
+          sha256 = "0g4vd26ahkmjxlcvqwd0mbk60qaf6c9zba9x7bb9pqabka9438y1";
         };
         packageRequires = [];
         meta = {
@@ -4431,8 +4426,8 @@
         ename = "poker";
         version = "0.2";
         src = fetchurl {
-          url = "https://elpa.gnu.org/packages/poker-0.2.el";
-          sha256 = "0sikspimvnzvwhyivi1gvr0630zz2pr3q2fwagl57iv06jas9f00";
+          url = "https://elpa.gnu.org/packages/poker-0.2.tar";
+          sha256 = "10lfc6i4f08ydxanidwiq9404h4nxfa0vh4av5rrj6snqzqvd1bw";
         };
         packageRequires = [];
         meta = {
@@ -4447,7 +4442,7 @@
         version = "0.4.6";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/popper-0.4.6.tar";
-          sha256 = "0zkrhpplgs6h4xz0ma5nc4pvlkdgdzqwlqlw57xspqbc2f1bds5s";
+          sha256 = "0xwy4p9g0lfd4ybamsl5gsppmx79yv16s4lh095x5y5qfmgcvq2c";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -4459,10 +4454,10 @@
       elpaBuild {
         pname = "posframe";
         ename = "posframe";
-        version = "1.4.2";
+        version = "1.4.3";
         src = fetchurl {
-          url = "https://elpa.gnu.org/packages/posframe-1.4.2.tar";
-          sha256 = "0ca43wgbr0n5ri7cyxjmn7blq59xq43rx9z9q02a2j4yn05w8nss";
+          url = "https://elpa.gnu.org/packages/posframe-1.4.3.tar";
+          sha256 = "1kw37dhyd6qxj0h2qpzi539jrgc0pj90psf2k58z4jc9199bgsax";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -4477,7 +4472,7 @@
         version = "0.2";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/pq-0.2.tar";
-          sha256 = "0gy3i2l1fxwpav6l57yf3mml15lhwh9xp8sm40hlpgyn15nyz4c6";
+          sha256 = "0d8ylsbmypaj29w674a4k445zr6hnggic8rsv7wx7jml6p2zph2n";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -4492,7 +4487,7 @@
         version = "0.10.0";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/project-0.10.0.tar";
-          sha256 = "060iw06c60vjy1bp771zz0n24x4s7kpyvdjs51147v2kz35n08pb";
+          sha256 = "07lv41asdah2v3k6nrc73z3pjhsm7viygr12ly9p96g2yw11irg6";
         };
         packageRequires = [ emacs xref ];
         meta = {
@@ -4507,7 +4502,7 @@
         version = "1.3.5";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/psgml-1.3.5.tar";
-          sha256 = "12ndv9xj4zg0k2vas4bmpf2iwy71hy203zxfd7sfwskdd96kzjjv";
+          sha256 = "1lfk95kr43az6ykfyhj7ygccw3ms2ifyyp43w9lwm5fcawgc8952";
         };
         packageRequires = [];
         meta = {
@@ -4537,7 +4532,7 @@
         version = "1.0.1";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/pulsar-1.0.1.tar";
-          sha256 = "0qknyd6ihqg4n940yll5v2hz3w07fsp4mbdfh7drbws13c1ivnly";
+          sha256 = "0xljxkls6lckfg5whx2kb44dp67q2jfs7cbk6ih5b3zm6h599d4k";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -4552,7 +4547,7 @@
         version = "5.3.3";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/pyim-5.3.3.tar";
-          sha256 = "04dz3gdqq6pcxycpzkzzmhbg6lk629v41y64jlh6si21jwfr6wnx";
+          sha256 = "03khpd3skv7ijmnn721dvila8x6pvg9pl4p7djyz8m59xgvv55dp";
         };
         packageRequires = [ async emacs xr ];
         meta = {
@@ -4567,7 +4562,7 @@
         version = "0.5.4";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/pyim-basedict-0.5.4.tar";
-          sha256 = "1zppp12217aakawgndy6daxpw1098lh7lsjar2wwd4qv4xs0d4p6";
+          sha256 = "0i42i9jr0p940w17fjjrzd258winjl7sv4g423ihd6057xmdpyd8";
         };
         packageRequires = [];
         meta = {
@@ -4582,7 +4577,7 @@
         version = "0.28";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/python-0.28.tar";
-          sha256 = "1kc596b8bbcp8y87kqyxsv3bblz8l0vyc0d645ayb1cmwwvk35d5";
+          sha256 = "042jhg87bnc750wwjwvp32ici3pyswx1pza2qz014ykdqqnsx0aq";
         };
         packageRequires = [ cl-lib emacs ];
         meta = {
@@ -4596,8 +4591,8 @@
         ename = "quarter-plane";
         version = "0.1";
         src = fetchurl {
-          url = "https://elpa.gnu.org/packages/quarter-plane-0.1.el";
-          sha256 = "0hj3asdzf05h8j1fsxx9y71arnprg2xwk2dcb81zj04hzggzpwmm";
+          url = "https://elpa.gnu.org/packages/quarter-plane-0.1.tar";
+          sha256 = "06syayqdmh4nb7ys52g1mw01wnz5hjv710dari106fk8fm9cy18c";
         };
         packageRequires = [];
         meta = {
@@ -4611,8 +4606,8 @@
         ename = "queue";
         version = "0.2";
         src = fetchurl {
-          url = "https://elpa.gnu.org/packages/queue-0.2.el";
-          sha256 = "0cx2848sqnnkkr4zisvqadzxngjyhmb36mh0q3if7q19yjjhmrkb";
+          url = "https://elpa.gnu.org/packages/queue-0.2.tar";
+          sha256 = "117g6sl5dh7ssp6m18npvrqik5rs2mnr16129cfpnbi3crsw23c8";
         };
         packageRequires = [];
         meta = {
@@ -4627,7 +4622,7 @@
         version = "1.0.6";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/rainbow-mode-1.0.6.tar";
-          sha256 = "04v73cm1cap19vwc8lqsw0rmfr9v7r3swc4wgxnk9dnzxi9j2527";
+          sha256 = "0xv39jix1gbwq6f8laj93sqkf2j5hwda3l7mjqc7vsqjw1lkhmjv";
         };
         packageRequires = [];
         meta = {
@@ -4641,8 +4636,8 @@
         ename = "rbit";
         version = "0.1";
         src = fetchurl {
-          url = "https://elpa.gnu.org/packages/rbit-0.1.el";
-          sha256 = "0h0f9jx4xmkbyxk39wibrvnj65b1ylkz4sk4np7qcavfjs6dz3lm";
+          url = "https://elpa.gnu.org/packages/rbit-0.1.tar";
+          sha256 = "1xfl3m53bdi25h8mp7s0zp1yy7436cfydxrgkfc31fsxkh009l9h";
         };
         packageRequires = [];
         meta = {
@@ -4657,7 +4652,7 @@
         version = "0.4.5";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/rcirc-color-0.4.5.tar";
-          sha256 = "0j2bcx2dplcy5zgh9zdhla8i12rq916ilbnw4ns83xdg7k0dwncf";
+          sha256 = "0sfwmi0sspj7sx1psij4fzq1knwva8706w0204mbjxsq2nh5s9f3";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -4684,10 +4679,10 @@
       elpaBuild {
         pname = "rcirc-sqlite";
         ename = "rcirc-sqlite";
-        version = "0.1.4";
+        version = "1.0.1";
         src = fetchurl {
-          url = "https://elpa.gnu.org/packages/rcirc-sqlite-0.1.4.tar";
-          sha256 = "0hz0nm35jq6fg9pr4j725r2awxbf1q23bzn85nhcbpafzb8mmajl";
+          url = "https://elpa.gnu.org/packages/rcirc-sqlite-1.0.1.tar";
+          sha256 = "0n0492s500gplmv7l8n8l7s3rpm1nli3n706n9f91qc15z6p6mcv";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -4708,7 +4703,7 @@
         version = "1.5.1";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/realgud-1.5.1.tar";
-          sha256 = "01155sydricdvxy3djk64w2zc6x0q4j669bvz8m8rd766wsmida8";
+          sha256 = "1iisvzxvdsifxkz7b2wacw85dkjagrmbcdhcfsnswnfbp3r3kg35";
         };
         packageRequires = [ emacs load-relative loc-changes test-simple ];
         meta = {
@@ -4716,21 +4711,16 @@
           license = lib.licenses.free;
         };
       }) {};
-    realgud-ipdb = callPackage ({ elpaBuild
-                                , emacs
-                                , fetchurl
-                                , lib
-                                , load-relative
-                                , realgud }:
+    realgud-ipdb = callPackage ({ elpaBuild, emacs, fetchurl, lib, realgud }:
       elpaBuild {
         pname = "realgud-ipdb";
         ename = "realgud-ipdb";
         version = "1.0.0";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/realgud-ipdb-1.0.0.tar";
-          sha256 = "1ljh2igm6na92jdvnn4f51019v3klc6k03nayxf6qxzaxwq2w254";
+          sha256 = "0zmgsrb15rmgszidx4arjazb6fz523q5w516z5k5cn92wfzfyncr";
         };
-        packageRequires = [ emacs load-relative realgud ];
+        packageRequires = [ emacs realgud ];
         meta = {
           homepage = "https://elpa.gnu.org/packages/realgud-ipdb.html";
           license = lib.licenses.free;
@@ -4769,7 +4759,7 @@
         version = "1.0.2";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/realgud-lldb-1.0.2.tar";
-          sha256 = "0nqbvknhvw5lwf4i44q8wvh4y4s9mvs5kn7lskg3xicl464ag1d0";
+          sha256 = "1g4spjrldyi9rrh5dwrcqpz5qm37fq2qpvmirxvdqgfbwl6gapzj";
         };
         packageRequires = [ emacs load-relative realgud ];
         meta = {
@@ -4832,7 +4822,7 @@
         version = "1.0.1";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/realgud-trepan-ni-1.0.1.tar";
-          sha256 = "0vakfzlk4pgqi66mdvwqhzgdsnks6clgnj7cjjbi80v3ipkfdnak";
+          sha256 = "09vllklpfc0q28ankp2s1v10kwnxab4g6hb9zn63d1rfa92qy44k";
         };
         packageRequires = [ cl-lib emacs load-relative realgud ];
         meta = {
@@ -4852,7 +4842,7 @@
         version = "1.0.1";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/realgud-trepan-xpy-1.0.1.tar";
-          sha256 = "0qd9hcq7a9vn453rs4pf3p8wwh7fynxhim9j6sf97lm8pilif9yd";
+          sha256 = "13fll0c6p2idg56q0czgv6s00vvb585b40dn3b14hdpy0givrc0x";
         };
         packageRequires = [ emacs load-relative realgud ];
         meta = {
@@ -4867,7 +4857,7 @@
         version = "1.9.3";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/rec-mode-1.9.3.tar";
-          sha256 = "15m0h84fcrcxpx67mc9any4ap2dcqysfjm1d2a7sx4clx8h3mgk0";
+          sha256 = "00hps4pi7r20qqqlfl8g5dqwipgyqqrhxc4hi5igl0rg563jc1wx";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -4881,8 +4871,8 @@
         ename = "register-list";
         version = "0.1";
         src = fetchurl {
-          url = "https://elpa.gnu.org/packages/register-list-0.1.el";
-          sha256 = "1azgfm4yvhp2bqqplmfbz1fij8gda527lks82bslnpnabd8m6sjh";
+          url = "https://elpa.gnu.org/packages/register-list-0.1.tar";
+          sha256 = "01w2yyvbmnkjrmx5f0dk0327c0k7fvmgi928j6hbvlrp5wk6s394";
         };
         packageRequires = [];
         meta = {
@@ -4897,7 +4887,7 @@
         version = "1.24";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/relint-1.24.tar";
-          sha256 = "0wc7jzapzc4s7v7yqwp315ymbs6xighy2clx1ylvf60zs49y2bwm";
+          sha256 = "0pnv2pkx5jq30049zplrmspkm1cc7p6vy9xfv215d27v8nas0374";
         };
         packageRequires = [ emacs xr ];
         meta = {
@@ -4912,7 +4902,7 @@
         version = "1.2.4";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/repology-1.2.4.tar";
-          sha256 = "0l53wl0bk8rnqwsjdh1hwvkvbay080l10bslcj3scn42bgbi59j1";
+          sha256 = "0nj4dih9mv8crqq8rd4k8dzgq7l0195syfxsf2gyikmqz9sjbr85";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -4927,7 +4917,7 @@
         version = "1.0.3";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/rich-minority-1.0.3.tar";
-          sha256 = "1w61qvx2rw6a6gmrm61080zghil95nzdv4w06c0pvyb62m4rwab0";
+          sha256 = "0npk6gnr2m4mfv40y2m265lxk1dyn8fd6d90vs3j2xrhpybgbln2";
         };
         packageRequires = [ cl-lib ];
         meta = {
@@ -4942,7 +4932,7 @@
         version = "0.3";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/rnc-mode-0.3.tar";
-          sha256 = "1bd4pxaijcs0w8v9r7x9aiqyqf1rl46153dxl0ilhm3fc90iyf2r";
+          sha256 = "1p03g451888v86k9z6g8gj375p1pcdvikgk1phxkhipwi5hbf5g8";
         };
         packageRequires = [];
         meta = {
@@ -4957,7 +4947,7 @@
         version = "7";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/rt-liberation-7.tar";
-          sha256 = "0gb1an3a68ib27jrc8x8grq5z3xya4b1gl8ii82a1clzf87n7k63";
+          sha256 = "0bi1qyc4n4ar0rblnddmlrlrkdvdrvv54wg4ii39hhxij4p6niif";
         };
         packageRequires = [];
         meta = {
@@ -4972,7 +4962,7 @@
         version = "0.4.3";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/ruby-end-0.4.3.tar";
-          sha256 = "0b6hh31vpyv6j86v97migw4if2i9m95075p0bf5ai61cqb42crg4";
+          sha256 = "07175v9fy96lmkfa0007lhx7v3fkk77iwca3rjl94dgdp4b8lbk5";
         };
         packageRequires = [];
         meta = {
@@ -4993,7 +4983,7 @@
         version = "0.3.2";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/rudel-0.3.2.tar";
-          sha256 = "03hcvpp6ykavidwn5x48gs986w1i5icvh7ks6p74pdaagpgw4jmk";
+          sha256 = "00rs2fy64ybam26szpc93miwajq42acyh0dkg0ixr95mg49sc46j";
         };
         packageRequires = [ cl-generic cl-lib cl-print emacs ];
         meta = {
@@ -5008,7 +4998,7 @@
         version = "0.2";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/satchel-0.2.tar";
-          sha256 = "1ajsfrr988nglw2l4kqjbbdq9x8gidv0ymsrg3jm2b9nisfhnixv";
+          sha256 = "115rkq2ygawsg8ph44zfqwsd9ykm4370v0whgjwhc1wx2iyn5ir9";
         };
         packageRequires = [ emacs project ];
         meta = {
@@ -5023,7 +5013,7 @@
         version = "0.2";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/scanner-0.2.tar";
-          sha256 = "1nbfpgndjkv7mr81bxy58k4y13lc4cidyz9mbwh7433r8rfhymb5";
+          sha256 = "1c42mg7m6fa7xw3svv741sgrc9zjl1zcq0vg45k61iqmnx8d44vp";
         };
         packageRequires = [ dash emacs ];
         meta = {
@@ -5037,8 +5027,8 @@
         ename = "scroll-restore";
         version = "1.0";
         src = fetchurl {
-          url = "https://elpa.gnu.org/packages/scroll-restore-1.0.el";
-          sha256 = "0h55szlmkmzmcvd6gvv8l74n7y64i0l78nwwmq7xsbzprlmj6khn";
+          url = "https://elpa.gnu.org/packages/scroll-restore-1.0.tar";
+          sha256 = "1i9ld1l5h2cpzf8bzk7nlk2bcln48gya8zrq79v6rawbrwdlz2z4";
         };
         packageRequires = [];
         meta = {
@@ -5053,7 +5043,7 @@
         version = "1.1";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/sed-mode-1.1.tar";
-          sha256 = "1vpfzr95xfvjiq7x1pkhjm96936yzsy9bzm1v8p3hyr486bar0mp";
+          sha256 = "0zhga0xsffdcinh10di046n6wbx35gi1zknnqzgm9wvnm2iqxlyn";
         };
         packageRequires = [];
         meta = {
@@ -5068,7 +5058,7 @@
         version = "2.24";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/seq-2.24.tar";
-          sha256 = "1w2cysad3qwnzdabhq9xipbslsjm528fcxkwnslhlkh8v07karml";
+          sha256 = "13x8l1m5if6jpc8sbrbx9r64fyhh450ml6vfm92p6i5wv6gl74w6";
         };
         packageRequires = [];
         meta = {
@@ -5080,10 +5070,10 @@
       elpaBuild {
         pname = "setup";
         ename = "setup";
-        version = "1.3.2";
+        version = "1.4.0";
         src = fetchurl {
-          url = "https://elpa.gnu.org/packages/setup-1.3.2.tar";
-          sha256 = "1sr514w4mn0fbdawjb5p0fd6i6q2zi9737rbwcgakb1l9cqvb5qy";
+          url = "https://elpa.gnu.org/packages/setup-1.4.0.tar";
+          sha256 = "0id7j8xvbkbpfiv7m55dl64y27dpiczljagldf4p9q6qwlhf42f7";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -5098,7 +5088,7 @@
         version = "1.0.0";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/shelisp-1.0.0.tar";
-          sha256 = "05r26gy1ajl47ir0yz5gn62xw2f31vdq04n3r8ywlzxbqyvzlc0d";
+          sha256 = "0zhkk04nj25lmpdlqblfhx3rb415w2f58f7wb19k1s2ry4k7m15g";
         };
         packageRequires = [];
         meta = {
@@ -5113,7 +5103,7 @@
         version = "2.4.2";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/shell-command+-2.4.2.tar";
-          sha256 = "1ldvil6hjs8c7wpdwx0jwaar867dil5qh6vy2k27i1alffr9nnqm";
+          sha256 = "1kjj8n3nws7dl7k3ksnfx0s0kwvqb9wzy9k42xs5s51k7xrp1l18";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -5128,7 +5118,7 @@
         version = "0.1";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/shen-mode-0.1.tar";
-          sha256 = "1dr24kkah4hr6vrfxwhl9vzjnwn4n773bw23c3j9bkmlgnbvn0kz";
+          sha256 = "0xskyd0d3krwgrpca10m7l7c0l60qq7jjn2q207n61yw5yx71pqn";
         };
         packageRequires = [];
         meta = {
@@ -5142,8 +5132,8 @@
         ename = "sisu-mode";
         version = "7.1.8";
         src = fetchurl {
-          url = "https://elpa.gnu.org/packages/sisu-mode-7.1.8.el";
-          sha256 = "12zs6y4rzng1d7djl9wh3wc0f9fj0bqb7h754rvixvndlr5c10nj";
+          url = "https://elpa.gnu.org/packages/sisu-mode-7.1.8.tar";
+          sha256 = "02cfyrjynwvf2rlnkfy8285ga9kzbg1b614sch0xnxqw81mp7drp";
         };
         packageRequires = [];
         meta = {
@@ -5158,7 +5148,7 @@
         version = "0.1.2";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/site-lisp-0.1.2.tar";
-          sha256 = "07704nz5rrzixmvw65h79rf4fpnf58jrrgbp1brvknidp6j95r0n";
+          sha256 = "1w27nd061y7a5qhdmij2056751wx9nwv89qx3hxcl473iz03b09l";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -5173,7 +5163,7 @@
         version = "1.0.4";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/sketch-mode-1.0.4.tar";
-          sha256 = "1gv03ykr40laf52hm8p0glfsy895jghkp5a8q599zwg5wpz3zdc9";
+          sha256 = "1vrbmyhf9bffy2fkz91apzxla6v8nbv2wb25vxcr9x3smbag9kal";
         };
         packageRequires = [];
         meta = {
@@ -5188,7 +5178,7 @@
         version = "1.2.0";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/slime-volleyball-1.2.0.tar";
-          sha256 = "07xavg6xq5ckrfy5sk5k5ldb46m5w8nw1r1k006ck8f23ajaw5z2";
+          sha256 = "1qlmsxnhja8p873rvb1qj4xsf938bs3hl8qqqsmrm0csvlb9737p";
         };
         packageRequires = [ cl-lib ];
         meta = {
@@ -5200,10 +5190,10 @@
       elpaBuild {
         pname = "sm-c-mode";
         ename = "sm-c-mode";
-        version = "1.1";
+        version = "1.2";
         src = fetchurl {
-          url = "https://elpa.gnu.org/packages/sm-c-mode-1.1.el";
-          sha256 = "1k46628dkmg4bvd5f68lv5kjcjbgm2pd8jc0zhq9n70jwf5z2ip8";
+          url = "https://elpa.gnu.org/packages/sm-c-mode-1.2.tar";
+          sha256 = "0xykl8wkbw5y7ah79zlfzz1k0di9ghfsv2xjxwx7rrb37wny5184";
         };
         packageRequires = [];
         meta = {
@@ -5218,7 +5208,7 @@
         version = "4.0";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/smalltalk-mode-4.0.tar";
-          sha256 = "1i1w2fk241z10mph92lry8ly55rxr24n1v4840cddpiw81nrqpcn";
+          sha256 = "0ly2qmsbmzd5nd7iaighws10y0yj7p2356fw32pkp0cmzzvc3d54";
         };
         packageRequires = [];
         meta = {
@@ -5232,8 +5222,8 @@
         ename = "smart-yank";
         version = "0.1.1";
         src = fetchurl {
-          url = "https://elpa.gnu.org/packages/smart-yank-0.1.1.el";
-          sha256 = "1v7hbn8pl4bzal31m132dn04rgsgjjcc7k2knd1jqzk1wq6azpdn";
+          url = "https://elpa.gnu.org/packages/smart-yank-0.1.1.tar";
+          sha256 = "08dc4c60jcjyiixyzckxk5qk6s2pl1jmrp4h1bj53ssd1kn4208m";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -5248,7 +5238,7 @@
         version = "6.12";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/sml-mode-6.12.tar";
-          sha256 = "19wyxsnw60lmjbb7ijislpv9vzk9996rh1b0iw7wyrqszfxy2p20";
+          sha256 = "10zp0gi5rbjjxjzn9k6klvdms9k3yxx0qry0wa75a68sj5x2rdzh";
         };
         packageRequires = [ cl-lib emacs ];
         meta = {
@@ -5263,7 +5253,7 @@
         version = "1.1.2";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/so-long-1.1.2.tar";
-          sha256 = "0gb5ypl9phhv8sx7akw9xn7njfq86yqngixhxf8qj1fxp57gfpdb";
+          sha256 = "01qdxlsllpj5ajixkqf7v9p95zn9qnvjdnp30v54ymj2pd0d9a32";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -5282,7 +5272,7 @@
         version = "3.2.3";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/soap-client-3.2.3.tar";
-          sha256 = "0z6af253iwimam03jnpai2h989i6vyv05wdz7dadna6amdryfznc";
+          sha256 = "1yhs661g0vqxpxqcxgsxvljmrpcqzl0y52lz6jvfilmshw7r6k2s";
         };
         packageRequires = [ cl-lib emacs ];
         meta = {
@@ -5297,7 +5287,7 @@
         version = "1.4.9";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/sokoban-1.4.9.tar";
-          sha256 = "1zri4czw2d5impkgn8d4hliyw31vndadg7wj31gairk8kyakjpgm";
+          sha256 = "1l3d4al96252kdhyn4dr88ir67kay57n985w0qy8p930ncrs846v";
         };
         packageRequires = [ cl-lib emacs ];
         meta = {
@@ -5311,8 +5301,8 @@
         ename = "sotlisp";
         version = "1.6.2";
         src = fetchurl {
-          url = "https://elpa.gnu.org/packages/sotlisp-1.6.2.el";
-          sha256 = "05cr4dmhg4wbmw7jbcfh0yrnbq6dhzp2wrbzvhwrfznz51j03nhi";
+          url = "https://elpa.gnu.org/packages/sotlisp-1.6.2.tar";
+          sha256 = "0q65iwr89cwwqnc1kndf2agq5wp48a7k02qsksgaj0n6zv7i4dfn";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -5327,7 +5317,7 @@
         version = "0.4.1";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/spacious-padding-0.4.1.tar";
-          sha256 = "02bc0r20b4mgnlzryq26q0jq45wfgpvv7y3zhvnaaqj11rw7779f";
+          sha256 = "0w9f19sxpbaagwxfnsg3qmk95v8vnkfcyd3l6i9ns9ww26sb2fgl";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -5342,7 +5332,7 @@
         version = "1.7.4";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/spinner-1.7.4.tar";
-          sha256 = "140kss25ijbwf8hzflbjz67ry76w2cyrh02axk95n6qcxv7jr7pv";
+          sha256 = "0lq8q62q5an8199p8pyafg5l6hdnnqi6i6sybnk60sdcqy62pa6r";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -5357,7 +5347,7 @@
         version = "0.2";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/sql-beeline-0.2.tar";
-          sha256 = "1bqzs53x506bzgchvjfr1ljqxbb9y041n7aj9n7ajb2634i7lllr";
+          sha256 = "0ngvvfhs1fj3ca5g563bssaz9ac5fiqkqzv09s4ramalp2q6axq9";
         };
         packageRequires = [];
         meta = {
@@ -5372,7 +5362,7 @@
         version = "0.2.2";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/sql-cassandra-0.2.2.tar";
-          sha256 = "06h301fpqax24x295x06bz08ipjjnxs9smisyz82z08kgszq92c6";
+          sha256 = "154rymq0k6869cw7sc7nhx3di5qv1ffgf8shkxc22gvkrj2s7p9b";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -5387,7 +5377,7 @@
         version = "1.7";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/sql-indent-1.7.tar";
-          sha256 = "043qcy97a5hx68w0ac7xsk380l2i7bphgrdz6aby2zfpp90vrjpn";
+          sha256 = "1yfb01wh5drgvrwbn0hgzyi0rc4zlr1w23d065x4qrld31jbka8i";
         };
         packageRequires = [ cl-lib ];
         meta = {
@@ -5402,7 +5392,7 @@
         version = "0.4";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/srht-0.4.tar";
-          sha256 = "1g3znmpi0lbl0f4rp1v8v5jl7gngclwmcngkzwdk2w4prsh6skb1";
+          sha256 = "0ps49syzlaf4lxvji61y6y7r383r65v96d57hj75xkn6hvyrz74n";
         };
         packageRequires = [ emacs plz transient ];
         meta = {
@@ -5417,7 +5407,7 @@
         version = "3.1.16";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/ssh-deploy-3.1.16.tar";
-          sha256 = "0ajmsg4r9yba2m9wn08dsdzl8pr3pjixyqqp263mpwsh02h8im2g";
+          sha256 = "0fb88l3270d7l808q8x16zcvjgsjbyhgifgv17syfsj0ja63x28p";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -5432,7 +5422,7 @@
         version = "2.0.1";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/standard-themes-2.0.1.tar";
-          sha256 = "0vdl90xjqq20mw6cgmn6zd42ppr5y471g03a9ljzcpwmbd1wnr60";
+          sha256 = "0cyr3n9w359sa8ylcgzsvhxrk9f1rl1scb5339ci2la7zpg5vxwr";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -5447,7 +5437,7 @@
         version = "2.3.0";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/stream-2.3.0.tar";
-          sha256 = "1jvk5j0wn2f4dxnyqji85f8cgbpyrxk02mz5dzyw4xlqr0d9zc9n";
+          sha256 = "0224hjcxvy3cxv1c3pz9j2laxld2cxqbs5sigr02fcdcb9qn7hay";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -5462,7 +5452,7 @@
         version = "0.2.1";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/substitute-0.2.1.tar";
-          sha256 = "1p9lhgi4y224aghwnnjxm14da461pj0ym4a7asla02hf33y61i5j";
+          sha256 = "09cqxfp9az6cckh0bq1155g6xh9rjn0ppjyc6879ihx6ba61li53";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -5476,8 +5466,8 @@
         ename = "svg";
         version = "1.1";
         src = fetchurl {
-          url = "https://elpa.gnu.org/packages/svg-1.1.el";
-          sha256 = "0j69xsaj0d1pnxjfb5m0yf2vxbrcmr8i3g75km4dzbha46v4xxvg";
+          url = "https://elpa.gnu.org/packages/svg-1.1.tar";
+          sha256 = "10x2rry349ibzd9awy4rg18cd376yvkzqsyq0fm4i05kq4dzqp4a";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -5491,8 +5481,8 @@
         ename = "svg-clock";
         version = "1.2";
         src = fetchurl {
-          url = "https://elpa.gnu.org/packages/svg-clock-1.2.el";
-          sha256 = "15pmj07wnlcpv78av9qpnbfwdjlkf237vib8smpa7nvyikdfszfr";
+          url = "https://elpa.gnu.org/packages/svg-clock-1.2.tar";
+          sha256 = "0r0wayb1q0dd2yi1nqa0m4jfy36lydxxa6xvvd6amgh9sy499qs8";
         };
         packageRequires = [ emacs svg ];
         meta = {
@@ -5507,7 +5497,7 @@
         version = "0.3";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/svg-lib-0.3.tar";
-          sha256 = "0d0xkfmk351h8lx28dxgync47r780nyk4fk12sb4j0byfr0lsh8d";
+          sha256 = "1s7n3j1yzprs9frb554c66pcrv3zss1y26y6qgndii4bbzpa7jh8";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -5522,7 +5512,7 @@
         version = "0.3.2";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/svg-tag-mode-0.3.2.tar";
-          sha256 = "1sg05dg0d9ai21l8rgpqywmwgw29sl21x2zkvlv04rl3hdvdq75y";
+          sha256 = "0wzcq00kbjpbwz7acn4d7jd98v5kicq3iwgf6dnmz2kflvkfwkvr";
         };
         packageRequires = [ emacs svg-lib ];
         meta = {
@@ -5537,7 +5527,7 @@
         version = "0.14.2";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/swiper-0.14.2.tar";
-          sha256 = "1x6jnc0nrk68kww12gq6w8nss6ny76xz0fgxf57550bbipx9pa8m";
+          sha256 = "1rzp78ix19ddm7fx7p4i5iybd5lw244kqvf3nrafz3r7q6hi8yds";
         };
         packageRequires = [ emacs ivy ];
         meta = {
@@ -5552,7 +5542,7 @@
         version = "1.3";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/switchy-window-1.3.tar";
-          sha256 = "1ax63fksjmjsgai7xxzm1mj5bhbc7dzk7c389abd280g637z2cy7";
+          sha256 = "0ym5cy6czsrd15f8rgh3dad8fwn8pb2xrvhlmdikc59cc29zamrv";
         };
         packageRequires = [ compat emacs ];
         meta = {
@@ -5567,7 +5557,7 @@
         version = "1.0.0";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/sxhkdrc-mode-1.0.0.tar";
-          sha256 = "1vzb7ijx61rq31xj0d13yidlirp038841fwdvlqlv88hi6hb2faq";
+          sha256 = "0gfv5l71md2ica9jfa8ynwfag3zvayc435pl91lzcz92qy5n0hlj";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -5582,7 +5572,7 @@
         version = "1.0.13";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/system-packages-1.0.13.tar";
-          sha256 = "0m34ifs7c27g7avc173z501rs2g6ag7f4bc3rgfp9zdaix53c0i9";
+          sha256 = "0xlbq44c7f2assp36g5z9hn5gldq76wzpcinp782whqzpgz2k4sy";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -5612,7 +5602,7 @@
         version = "0.1";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/tam-0.1.tar";
-          sha256 = "1f66la9mmw1frpy2k9vr9k1q2x3b1y9018z43rdhrp50zx1b2vsg";
+          sha256 = "16ms55cwm2cwixl03a3bbsqs159c3r3dv5kaazvsghby6c511bx8";
         };
         packageRequires = [ emacs queue ];
         meta = {
@@ -5627,7 +5617,7 @@
         version = "0.10.1";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/taxy-0.10.1.tar";
-          sha256 = "05czw8fkifb25rwl99dmncr1g0rjfx1bqijl7igqs9j6h9ia2xvg";
+          sha256 = "0r4kv0lqjk720p8kfah256370miqg68598jp5466sc6v9qax4wd9";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -5647,7 +5637,7 @@
         version = "0.13";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/taxy-magit-section-0.13.tar";
-          sha256 = "1712hbcna0ph9chaq28a6fanv4sccdiphd5z0hg34ig3g6pslgn9";
+          sha256 = "06sivl4rc06qr67qw2gqpw7lsaqf3j78llkrljwby7a77yzlhbrj";
         };
         packageRequires = [ emacs magit-section taxy ];
         meta = {
@@ -5661,8 +5651,8 @@
         ename = "temp-buffer-browse";
         version = "1.5";
         src = fetchurl {
-          url = "https://elpa.gnu.org/packages/temp-buffer-browse-1.5.el";
-          sha256 = "1drfvqxc6g4vfijmx787b1ygq7x2s5wq26l45qnz4wdrqqmcqx3c";
+          url = "https://elpa.gnu.org/packages/temp-buffer-browse-1.5.tar";
+          sha256 = "00hbh25fj5fm9dsp8fpdk8lap3gi5jlva6f0m6kvjqnmvc06q36r";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -5677,7 +5667,7 @@
         version = "1.1";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/tempel-1.1.tar";
-          sha256 = "1780dgyfj569vxzzg8gqky9953fzw8x5kzy2l05vl7my06nyk46i";
+          sha256 = "01zrp3wi4nvp67wda1b5fyjfxd0akhk7aqc2nqh1sk4mjp5zpnsq";
         };
         packageRequires = [ compat emacs ];
         meta = {
@@ -5691,8 +5681,8 @@
         ename = "test-simple";
         version = "1.3.0";
         src = fetchurl {
-          url = "https://elpa.gnu.org/packages/test-simple-1.3.0.el";
-          sha256 = "1yd61jc9ds95a5n09052kwc5gasy57g4lxr0jsff040brlyi9czz";
+          url = "https://elpa.gnu.org/packages/test-simple-1.3.0.tar";
+          sha256 = "065jfps5ixpy5d4l2xgwhkpafdwiziqh4msbjcascwpac3j5c5yp";
         };
         packageRequires = [ cl-lib ];
         meta = {
@@ -5707,7 +5697,7 @@
         version = "0.1.2";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/theme-buffet-0.1.2.tar";
-          sha256 = "1cb9kn07naz2dkl4cznnwi2hy5ccq9igl5jnm7qhaliaszpg2rf9";
+          sha256 = "1cfrrl41rlxdbybvxs8glkgmgkznwgpq70h58rkvwm6b5jfs8wv0";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -5756,7 +5746,7 @@
         version = "0.4.0";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/tmr-0.4.0.tar";
-          sha256 = "1s4q7gbqjhqsvwzcfqr9ykm2pdrjybsi2fanxm01vvmzwg2bi6d8";
+          sha256 = "0vvsanjs6b9m3gxm84qr0ywwdj0378y5jkv1nzqdn980rfgfimsv";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -5771,7 +5761,7 @@
         version = "0.4.3";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/tomelr-0.4.3.tar";
-          sha256 = "03dj7mhqyfdpxr32nyvfgkqr6wr55cd7yk9a0izjs4468zx8vl0d";
+          sha256 = "0r2f4dl10fl75ygvbmb4vkqixy24k0z2wpr431ljzp5m29bn74kh";
         };
         packageRequires = [ emacs map seq ];
         meta = {
@@ -5786,7 +5776,7 @@
         version = "0.3.1";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/topspace-0.3.1.tar";
-          sha256 = "1c2raqmbyv5bd48gimh6dazfb6dmipjmf1j0w53vyrs48dx6kskq";
+          sha256 = "0m8z2q1gdi0zfh1df5xb2v0sg1v5fysrl00fv2qqgnd61c2n0hhz";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -5794,14 +5784,29 @@
           license = lib.licenses.free;
         };
       }) {};
+    track-changes = callPackage ({ elpaBuild, emacs, fetchurl, lib }:
+      elpaBuild {
+        pname = "track-changes";
+        ename = "track-changes";
+        version = "1.1";
+        src = fetchurl {
+          url = "https://elpa.gnu.org/packages/track-changes-1.1.tar";
+          sha256 = "04srqkpyc6l3s95jyf2p5pqqf1z67i7k89334r6ybqj1l91h2prn";
+        };
+        packageRequires = [ emacs ];
+        meta = {
+          homepage = "https://elpa.gnu.org/packages/track-changes.html";
+          license = lib.licenses.free;
+        };
+      }) {};
     tramp = callPackage ({ elpaBuild, emacs, fetchurl, lib }:
       elpaBuild {
         pname = "tramp";
         ename = "tramp";
-        version = "2.6.2.2";
+        version = "2.6.3";
         src = fetchurl {
-          url = "https://elpa.gnu.org/packages/tramp-2.6.2.2.tar";
-          sha256 = "0bbsff2qr71f70nxhdi19b3jzpv6bgfb7x7qkrccsygvsvgyrb2h";
+          url = "https://elpa.gnu.org/packages/tramp-2.6.3.tar";
+          sha256 = "0z44mfpvn4qy2xc2fsiahw3xir140ljna8aq45dcb7qnmr044xjb";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -5816,7 +5821,7 @@
         version = "1.0.1";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/tramp-nspawn-1.0.1.tar";
-          sha256 = "1w8h563pcdksqqy5v5vi7vrx76r6pi4bzhqywk1v67rhnr33qsvq";
+          sha256 = "0cy8l389s6pi135gxcygv1vna6k3gizqd33avf3wsdbnqdf2pjnc";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -5830,8 +5835,8 @@
         ename = "tramp-theme";
         version = "0.2";
         src = fetchurl {
-          url = "https://elpa.gnu.org/packages/tramp-theme-0.2.el";
-          sha256 = "1q1j0vcdyv5gnfbnfl08rnwd5j4ayc1gi1vpinr99ny70wsv7gbf";
+          url = "https://elpa.gnu.org/packages/tramp-theme-0.2.tar";
+          sha256 = "0dz8ndnmwc38g1gy30f3jcjqg5nzdi6721x921r4s5a8i1mx2kpm";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -5845,8 +5850,8 @@
         ename = "transcribe";
         version = "1.5.2";
         src = fetchurl {
-          url = "https://elpa.gnu.org/packages/transcribe-1.5.2.el";
-          sha256 = "08m1n6adab46bfywm47gygswf10vnxcfh16yjxglvcsg4prkn2vh";
+          url = "https://elpa.gnu.org/packages/transcribe-1.5.2.tar";
+          sha256 = "1v1bvcv3zqrj073l3vw7gz20rpa9p86rf1yv219n47kmh27c80hq";
         };
         packageRequires = [];
         meta = {
@@ -5861,7 +5866,7 @@
         version = "0.6.0";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/transient-0.6.0.tar";
-          sha256 = "1lsh8cvg1kspa8gl9fml0x7r61fbhjajmjqjf4r2s7qz102z66xb";
+          sha256 = "0rk4gafx3yylzawiny86ml4jzrs8x6cf2bvmnv36p8l13wgp0w9p";
         };
         packageRequires = [ compat emacs seq ];
         meta = {
@@ -5876,7 +5881,7 @@
         version = "1.0";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/transient-cycles-1.0.tar";
-          sha256 = "1gad71kqdw6rm9dy5rxm85l4a5qibs20ijl8bpaxbbq37j44lvjb";
+          sha256 = "0s6cxagqxj4i3qf4kx8mdrihciz3v6ga7zw19jcv896rdhx75bx5";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -5891,7 +5896,7 @@
         version = "0.4";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/tree-inspector-0.4.tar";
-          sha256 = "0jsd32qk9rap8mhmm6qkyafvb6c2gyaa0adzdsh3bh03byi3sj6c";
+          sha256 = "0v59kp1didml9k245m1v0s0ahh2r79cc0hp5ika93iamrdxkxaiz";
         };
         packageRequires = [ emacs treeview ];
         meta = {
@@ -5906,7 +5911,7 @@
         version = "0.6";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/trie-0.6.tar";
-          sha256 = "0vh0cizpbdiaq0y018rkrzjyv6lq0jwv9pwlvggbjfsz34kd10a4";
+          sha256 = "1jvhvvxkxbbpy93x9kpznvp2hqkkbdbbjaj27fd0wkbijg0k03ln";
         };
         packageRequires = [ heap tNFA ];
         meta = {
@@ -5921,7 +5926,7 @@
         version = "0.3.5";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/triples-0.3.5.tar";
-          sha256 = "086w3izri2fvg2w9lq4srjcq9gc6amz5vj2iihhysd10ypj3zxwy";
+          sha256 = "1wvmfw8yc7nh42f1skmpxqz5f57vkhg7x2cdngpq11lqbgvypj7m";
         };
         packageRequires = [ emacs seq ];
         meta = {
@@ -5936,7 +5941,7 @@
         version = "1.0.1";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/typo-1.0.1.tar";
-          sha256 = "11k1dca7kw1yviiw310slfj02a7x1w6m3qg7v71d2gcmdbp112ib";
+          sha256 = "1w4m2admlgmx7d661l70rryyxbaahfvrvhxc1b9sq41nx88bmgn1";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -5951,7 +5956,7 @@
         version = "1.0.3";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/ulisp-repl-1.0.3.tar";
-          sha256 = "09n0wp0dfg9xyxw0hwwb5p6namninvsw1fs710hmnh224q6wffgy";
+          sha256 = "1c23d66vydfp29px2dlvgl5xg91a0rh4w4b79q8ach533nfag3ia";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -5959,16 +5964,16 @@
           license = lib.licenses.free;
         };
       }) {};
-    undo-tree = callPackage ({ elpaBuild, emacs, fetchurl, lib, queue }:
+    undo-tree = callPackage ({ elpaBuild, fetchurl, lib, queue }:
       elpaBuild {
         pname = "undo-tree";
         ename = "undo-tree";
         version = "0.8.2";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/undo-tree-0.8.2.tar";
-          sha256 = "0fgir9pls9439zwyl3j2yvrwx9wigisj1jil4ijma27dfrpgm288";
+          sha256 = "0ad1zhkjdf73j3b2i8nd7f10jlqqvcaa852yycms4jr636xw6ms6";
         };
-        packageRequires = [ emacs queue ];
+        packageRequires = [ queue ];
         meta = {
           homepage = "https://elpa.gnu.org/packages/undo-tree.html";
           license = lib.licenses.free;
@@ -5981,7 +5986,7 @@
         version = "0.3";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/uni-confusables-0.3.tar";
-          sha256 = "1grmppbyzvjjz0yiv5vvgpykhalisj9jnh6p9ip9vbnnll63iz4w";
+          sha256 = "08150kgqsbcpykvf8m2b25y386h2b4pj08vffm6wh4f000wr72k3";
         };
         packageRequires = [];
         meta = {
@@ -5996,7 +6001,7 @@
         version = "1.0.4";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/uniquify-files-1.0.4.tar";
-          sha256 = "0ry52l9p2sz8nsfh15ffa25s46vqhna466ahmjmnmlihgjhdm85q";
+          sha256 = "0xw2l49xhdy5qgwja8bkiq2ibdppl45xzqlr17z92l1vfq4akpzp";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -6011,7 +6016,7 @@
         version = "0.4.1";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/urgrep-0.4.1.tar";
-          sha256 = "1kwcb7xxk9lcby5s8gpd5dchya7qq063j217rxsjyn8vv9z91lfc";
+          sha256 = "046096vk8d5xy33icv4s0s101lrx3xan9ppvh77rqxd95gglhgap";
         };
         packageRequires = [ compat emacs project ];
         meta = {
@@ -6031,7 +6036,7 @@
         version = "2.0.5";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/url-http-ntlm-2.0.5.tar";
-          sha256 = "0bpjif0c4yzz75v59wsv7hilkpj2gv4kyc0rdk8h3d9hvmlq7791";
+          sha256 = "02b65z70kw37mzj2hh8q6z0zhhacf9sc4hlczpfxdfsy05b8yri9";
         };
         packageRequires = [ cl-lib nadvice ntlm ];
         meta = {
@@ -6046,7 +6051,7 @@
         version = "0.8.3";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/url-http-oauth-0.8.3.tar";
-          sha256 = "1vcbx8rpzvx4v4g7iyja6kpsqidaiy2xzj7glrwwzhppkbp0xkvy";
+          sha256 = "06lpzh8kpxn8cr92blxrjw44h2cfc6fw0pr024sign4acczx10ws";
         };
         packageRequires = [];
         meta = {
@@ -6061,7 +6066,7 @@
         version = "0.9";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/url-scgi-0.9.tar";
-          sha256 = "0mfbqr03302gk38aamlg1lgdznd6y3blcc3zizfb72ppb87j78mc";
+          sha256 = "19lvr4d2y9rd5gibaavp7ghkxmdh5zad9ynarbi2w4rjgmz5y981";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -6076,7 +6081,7 @@
         version = "2.4.5";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/use-package-2.4.5.tar";
-          sha256 = "09aimbmkcpyffrq1qnavzx6c4ccfawz7ndz2ac8md7qxilxx58yc";
+          sha256 = "060bbrbmx3psv4jkn95zjyhbyfidip86sfi8975fhqcc0aagnwhp";
         };
         packageRequires = [ bind-key emacs ];
         meta = {
@@ -6095,8 +6100,8 @@
         ename = "validate";
         version = "1.0.4";
         src = fetchurl {
-          url = "https://elpa.gnu.org/packages/validate-1.0.4.el";
-          sha256 = "0vksssk98hcnz804g62k8kika13argf6p7bx8rf9hwidvzdsv6mi";
+          url = "https://elpa.gnu.org/packages/validate-1.0.4.tar";
+          sha256 = "1bn25l62zcabg2ppxwr4049m1qd0yj095cflqrak0n50acgjs6w5";
         };
         packageRequires = [ cl-lib emacs seq ];
         meta = {
@@ -6111,7 +6116,7 @@
         version = "3.1.1";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/valign-3.1.1.tar";
-          sha256 = "1nla0zfj0rxwhdjgnsy2c34wzrxfxiwl89cjb6aicyvfxninz7j0";
+          sha256 = "16v2mmrih0ykk4z6qmy29gajjb3v83q978gzn3y6pg8y48b2wxpb";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -6126,7 +6131,7 @@
         version = "1.1.0";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/vc-backup-1.1.0.tar";
-          sha256 = "1ipkymndxymbayrgr3jz27p64bkjf1nq9h4w3afpzkpqzw237ak5";
+          sha256 = "0a45bbrvk4s9cj3ih3hb6vqjv4hkwnz7m9a4mr45m6cb0sl9b8a3";
         };
         packageRequires = [];
         meta = {
@@ -6141,7 +6146,7 @@
         version = "1.2";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/vc-got-1.2.tar";
-          sha256 = "074di4bchhnpfixkjdis8dwxx6r32j1qypxk647q1z7lvd92j39s";
+          sha256 = "04m1frrnla4zc8db728280r9fbk50bgjkk4k7dizb0hawghk4r3p";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -6156,7 +6161,7 @@
         version = "1.14.1";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/vc-hgcmd-1.14.1.tar";
-          sha256 = "12izw5ln22xdgwh6mqm6axzdfpcnqq7qcj72nmykrbsgpagp5fy6";
+          sha256 = "0a8a4d9difrp2r6ac8micxn8ij96inba390324w087yxwqzkgk1g";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -6171,7 +6176,7 @@
         version = "0.2.2";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/vcard-0.2.2.tar";
-          sha256 = "0f06qzmj91kdpdlhlykh7v7jx0xvwxg8072ys145g1mvh5l23yig";
+          sha256 = "0r56y3q2gigm8rxifly50m5h1k948y987541cqd8w207wf1b56bh";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -6185,8 +6190,8 @@
         ename = "vcl-mode";
         version = "1.1";
         src = fetchurl {
-          url = "https://elpa.gnu.org/packages/vcl-mode-1.1.el";
-          sha256 = "1r70pmvr95k5f2xphvhliqvyh7al0qabm7wvkamximcssvs38q1h";
+          url = "https://elpa.gnu.org/packages/vcl-mode-1.1.tar";
+          sha256 = "0zz664c263x24xzs7hk2mqchzplmx2dlba98d5fpy8ybdnziqfkj";
         };
         packageRequires = [];
         meta = {
@@ -6201,7 +6206,7 @@
         version = "0.2.4";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/vdiff-0.2.4.tar";
-          sha256 = "1mgzfrzp6nbb4xv2zjqk4za2dv3r5645jasiwf45wzqq5wbrgq2c";
+          sha256 = "0crgb32dk0yzcgvjai0b67wcbcfppc3h0ppfqgdrim1nincbwc1m";
         };
         packageRequires = [ emacs hydra ];
         meta = {
@@ -6218,7 +6223,7 @@
         version = "2024.3.1.121933719";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/verilog-mode-2024.3.1.121933719.tar";
-          sha256 = "047kna2j1mbsibw1psxdp8qmg91dnjrdrskdzhys9pmaqggfl5ry";
+          sha256 = "1z0mbd5sbbq2prhc0vfpqd4h4a6jwl5fqyrnl39yp05zm66va34w";
         };
         packageRequires = [];
         meta = {
@@ -6230,10 +6235,10 @@
       elpaBuild {
         pname = "vertico";
         ename = "vertico";
-        version = "1.7";
+        version = "1.8";
         src = fetchurl {
-          url = "https://elpa.gnu.org/packages/vertico-1.7.tar";
-          sha256 = "1dglwscp29c5281spmrxv5k1pbvswcz5rcap6w5s97fqk5ziinsm";
+          url = "https://elpa.gnu.org/packages/vertico-1.8.tar";
+          sha256 = "0k6sfla0183vyjf2yd9sycck9nxz0x659kygxgiaip3zq7f9zkg8";
         };
         packageRequires = [ compat emacs ];
         meta = {
@@ -6253,7 +6258,7 @@
         version = "0.7.7";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/vertico-posframe-0.7.7.tar";
-          sha256 = "0xqbbqkzd2v7kqgmiwlx9pmpck2mpfwxmvy66i7dpzysvargi70q";
+          sha256 = "0ahn0b5v9xw6f1zvgv27c82kxdh4rx7n9dbp17rkkkg3dvvkdzxy";
         };
         packageRequires = [ emacs posframe vertico ];
         meta = {
@@ -6267,8 +6272,8 @@
         ename = "vigenere";
         version = "1.0";
         src = fetchurl {
-          url = "https://elpa.gnu.org/packages/vigenere-1.0.el";
-          sha256 = "1i5s6h1nngcp74gf53dw9pvj5y0ywk9j8pyvkfr7gqq49bz22hmm";
+          url = "https://elpa.gnu.org/packages/vigenere-1.0.tar";
+          sha256 = "1zlni6amznzi9w96kj7lnhfrr049crva2l8kwl5jsvyaj5fc6nq5";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -6286,7 +6291,7 @@
         version = "1.2";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/visual-filename-abbrev-1.2.tar";
-          sha256 = "0sipyqrgf723ii2zd6r8hvihn5kax5qd0dwwrrxqy6f58wnhyq1r";
+          sha256 = "0vy4ar10wbdykzl47xnrfcwszjxyq2f1vhdbynfcmkcyrr40v4wm";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -6298,10 +6303,10 @@
       elpaBuild {
         pname = "visual-fill";
         ename = "visual-fill";
-        version = "0.1";
+        version = "0.2";
         src = fetchurl {
-          url = "https://elpa.gnu.org/packages/visual-fill-0.1.el";
-          sha256 = "1y4xqcr1am74y9jy7kdkjigvx7h3208si5lm4p6a0kzxa3xizhvx";
+          url = "https://elpa.gnu.org/packages/visual-fill-0.2.tar";
+          sha256 = "00r3cclhrdx5y0h1p1rrx5psvc8d95dayzpjdsy9xj44i8pcnvja";
         };
         packageRequires = [];
         meta = {
@@ -6316,7 +6321,7 @@
         version = "1.7.2";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/vlf-1.7.2.tar";
-          sha256 = "0hpri19z6b7dqmrj5ckp8sf0m0l72lkgahqzvfmwhgpgv2p81bny";
+          sha256 = "1napxdavsrwb5dq2i4ka06rhmmfk6qixc8mm2a6ab68iavprrqkv";
         };
         packageRequires = [];
         meta = {
@@ -6328,10 +6333,10 @@
       elpaBuild {
         pname = "vundo";
         ename = "vundo";
-        version = "2.2.0";
+        version = "2.3.0";
         src = fetchurl {
-          url = "https://elpa.gnu.org/packages/vundo-2.2.0.tar";
-          sha256 = "1vb5mq51krpcaw741dai3b9s12yicn73l1bqql41gylpanca83py";
+          url = "https://elpa.gnu.org/packages/vundo-2.3.0.tar";
+          sha256 = "165y277fi0vp9301hy3pqgfnf160k29n8vri0zyq8a3vz3f8lqrl";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -6346,7 +6351,7 @@
         version = "2021";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/wcheck-mode-2021.tar";
-          sha256 = "0qcj0af0570cssy9b7f74v9pv0pssm6ysnl1lyh8wwvl4yf0zx61";
+          sha256 = "0igsdsfw80nnrbw1ba3rgwp16ncy195kwv78ll9zbbf3y23n7kr0";
         };
         packageRequires = [];
         meta = {
@@ -6360,8 +6365,8 @@
         ename = "wconf";
         version = "0.2.1";
         src = fetchurl {
-          url = "https://elpa.gnu.org/packages/wconf-0.2.1.el";
-          sha256 = "13p1xycp3mcrg8jv65mcyqvln4h7awhjz35dzr5bi86zb824ryxf";
+          url = "https://elpa.gnu.org/packages/wconf-0.2.1.tar";
+          sha256 = "1ci5ysn2w9hjzcsv698b6mh14qbrmvlzn4spaq4wzwl9p8672n08";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -6376,7 +6381,7 @@
         version = "0.1.2";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/web-server-0.1.2.tar";
-          sha256 = "10lcsl4dg2yr9zjd99gq9jz150wvvh6r5y9pd88l8y9vz16f2lim";
+          sha256 = "0wikajm4pbffcy8clwwb5bnz67isqmcsbf9kca8rzx4svzi5j2gc";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -6391,7 +6396,7 @@
         version = "1.1.2";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/webfeeder-1.1.2.tar";
-          sha256 = "1l128q424qsq9jv2wk8cv4zli71rk34q5kgwa9axdz0d27p9l6v4";
+          sha256 = "0418fpw2ra12n77560gh9j9ymv28d895bdhpr7x9xakvijjh705m";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -6406,7 +6411,7 @@
         version = "1.15";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/websocket-1.15.tar";
-          sha256 = "0mvvq9gsx856ip2gkrvjw4k8a85vrrkp27dcpkvamxq93lfd7hin";
+          sha256 = "0cm3x6qzr4zqj46w0qfpn7n9g5z80figcv824869snvc74465h1g";
         };
         packageRequires = [ cl-lib ];
         meta = {
@@ -6421,7 +6426,7 @@
         version = "3.6.0";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/which-key-3.6.0.tar";
-          sha256 = "05wy147734mlpzwwxdhidnsplrz2vzs1whczzs4jw1i7kp7jvy3v";
+          sha256 = "1lf8q6sq0hnrspj6qy49i48az3js24ab4y0gksw4giiifiqlc5ba";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -6436,7 +6441,7 @@
         version = "3.0.2";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/window-commander-3.0.2.tar";
-          sha256 = "1v85g89rz8r2ypw6651lrb9mvrimdwhxan7kxzhpgam2i2g7kcr7";
+          sha256 = "15345sgdmgz0vv9bk2cmffjp66i0msqj0xn2cxl7wny3bkfx8amv";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -6465,8 +6470,8 @@
         ename = "windresize";
         version = "0.1";
         src = fetchurl {
-          url = "https://elpa.gnu.org/packages/windresize-0.1.el";
-          sha256 = "0b5bfs686nkp7s05zgfqvr1mpagmkd74j1grq8kp2w9arj0qfi3x";
+          url = "https://elpa.gnu.org/packages/windresize-0.1.tar";
+          sha256 = "1wjqrwrfql5c67yv59hc95ga0mkvrqz74gy46aawhn8r3xr65qai";
         };
         packageRequires = [];
         meta = {
@@ -6481,7 +6486,7 @@
         version = "4.3.2";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/wisi-4.3.2.tar";
-          sha256 = "0y3wh0wvxqw7ig2bfrha4zs03993aqcpdp9pald20nady6sqri37";
+          sha256 = "0qa6nig33igv4sqk3fxzrmx889pswq10smj9c9l3phz2acqx8q92";
         };
         packageRequires = [ emacs seq ];
         meta = {
@@ -6501,7 +6506,7 @@
         version = "1.3.0";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/wisitoken-grammar-mode-1.3.0.tar";
-          sha256 = "05g2zn3p9r7rha20wv8jy1dwvllfyjjpzr6agkcm523rj639jh2b";
+          sha256 = "0i0vy751ycbfp8l8ynzj6iqgvc3scllwysdchpjv4lyj0m7m3s20";
         };
         packageRequires = [ emacs mmm-mode wisi ];
         meta = {
@@ -6515,8 +6520,8 @@
         ename = "wpuzzle";
         version = "1.1";
         src = fetchurl {
-          url = "https://elpa.gnu.org/packages/wpuzzle-1.1.el";
-          sha256 = "1wjg411dc0fvj2n8ak73igfrzc31nizzvvr2qa87fhq99bgh62kj";
+          url = "https://elpa.gnu.org/packages/wpuzzle-1.1.tar";
+          sha256 = "05dgvr1miqp870nl7c8dw7j1kv4mgwm8scynjfwbs9wjz4xmzc6c";
         };
         packageRequires = [];
         meta = {
@@ -6528,10 +6533,10 @@
       elpaBuild {
         pname = "wrap-search";
         ename = "wrap-search";
-        version = "4.12.10";
+        version = "4.14.11";
         src = fetchurl {
-          url = "https://elpa.gnu.org/packages/wrap-search-4.12.10.tar";
-          sha256 = "0r1ggggpm7x201r5yp0nhnc9146nrqzb5df1bjg7z2am2150r1i9";
+          url = "https://elpa.gnu.org/packages/wrap-search-4.14.11.tar";
+          sha256 = "07x6fcig69d3hmcmvpj75h605j8sfjwmd4z1yd4rb6np60dh42ff";
         };
         packageRequires = [];
         meta = {
@@ -6546,7 +6551,7 @@
         version = "1.11";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/xclip-1.11.tar";
-          sha256 = "0hgblj8ng7vfsdb7g1mm9m2qhzfprycdd77836l59prpak5kp55q";
+          sha256 = "081k9azz9jnmjmqlcc1yw9s4nziac772lw75xcm78fgsfrx42hmr";
         };
         packageRequires = [];
         meta = {
@@ -6561,7 +6566,7 @@
         version = "3.3";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/xeft-3.3.tar";
-          sha256 = "1jzas6qy0s686s0ghdrgcz2bfyp32s70qvkqw00sm3mm3jypiplm";
+          sha256 = "00zkhqajkkf979ccbnz076dpav2v52q44li2m4m4c6p3z0c3y255";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -6576,7 +6581,7 @@
         version = "0.18";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/xelb-0.18.tar";
-          sha256 = "1fp5mzl63sh0h3ws4l5p4qgvi7ny8a3fj6k4dhqa98xgw2bx03v7";
+          sha256 = "1qixb236z01azjbc1xycji99rjkq747hip4gcf0gli1is8ink0bs";
         };
         packageRequires = [ cl-generic emacs ];
         meta = {
@@ -6591,7 +6596,7 @@
         version = "1.0.5";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/xpm-1.0.5.tar";
-          sha256 = "13p6s6b2v7h4bnwdkkrd1qz84jd7g2s18w0czhpxv6hvj9sqf5hx";
+          sha256 = "12a12rmbc1c0j60nv1s8fgg3r2lcjw8hs7qpyscm7ggwanylxn6q";
         };
         packageRequires = [ cl-lib queue ];
         meta = {
@@ -6606,7 +6611,7 @@
         version = "1.25";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/xr-1.25.tar";
-          sha256 = "0w4gaxypl76d1jw9vcq0zhj7ksj44wyfb148l1fb0vl7h6wpv0pg";
+          sha256 = "0jmhcrz6mj3fwm9acwv1jj6nlnqikprjgvglr3cgxysinqh6y3xi";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -6621,7 +6626,7 @@
         version = "1.6.3";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/xref-1.6.3.tar";
-          sha256 = "0ccfp47y769zrb5sza8skzy4nj4793lzd0jn5c83s3g916gp304l";
+          sha256 = "0mir1nhic0rnz12d8i1n6m2ihfynhkkg8yccy4v9j4kd31w6f1gs";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -6636,7 +6641,7 @@
         version = "0.2.0";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/xref-union-0.2.0.tar";
-          sha256 = "0kcmg9fm9gcpdxfwx7c6zz29krf69j5nh6knv2x3df65sbzwdj0b";
+          sha256 = "0ghhasqs0xq2i576fp97qx6x3h940kgyp76a49gj5cdmig8kyfi8";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -6651,7 +6656,7 @@
         version = "0.14.1";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/yasnippet-0.14.1.tar";
-          sha256 = "05nc76wzc9b1a34998xx6l1wc5ss682afllf6dnl6rdj8hza65wy";
+          sha256 = "0xsq0i9xv9hib5a52rv5vywq1v6gr44gjsyfmqxwffmw1a25x25g";
         };
         packageRequires = [ cl-lib emacs ];
         meta = {
@@ -6669,7 +6674,7 @@
         version = "1.0.2";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/yasnippet-classic-snippets-1.0.2.tar";
-          sha256 = "1kk1sf9kgj6qp3z2d9nbswigl444sqq11pdrhx0gny2jsgi3283l";
+          sha256 = "1qiw5592mj8gmq1lhdcpxfza7iqn4cmhn36vdskfa7zpd1lq26y1";
         };
         packageRequires = [ yasnippet ];
         meta = {
@@ -6684,7 +6689,7 @@
         version = "2023.6.11";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/zones-2023.6.11.tar";
-          sha256 = "1znz720s9pchc7r9g1mpz9jcnz122bppimmh09g1rn94fh3m6vm3";
+          sha256 = "1z3kq0lfc4fbr9dnk9kj2hqcv60bnjp0x4kbxaxy77vv02a62rzc";
         };
         packageRequires = [];
         meta = {
@@ -6699,7 +6704,7 @@
         version = "1.0.6";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/ztree-1.0.6.tar";
-          sha256 = "1cyd31az566dmh3lyp7czw7kkkih7drr4c88b7da1xzbfkvibm2j";
+          sha256 = "1yyh09jff31j5w6mqsnibig3wizv7acsw39pjjfv1rmngni2b8zi";
         };
         packageRequires = [ cl-lib ];
         meta = {
@@ -6714,7 +6719,7 @@
         version = "0.4.0";
         src = fetchurl {
           url = "https://elpa.gnu.org/packages/zuul-0.4.0.tar";
-          sha256 = "1bm91g001q3n5m9ihxc719siiiy23pkpfkhplwi9p1i4i9zrpx5g";
+          sha256 = "1mj54hm4cqidrmbxyqdjfsc3qcmjhbl0wii79bydx637dvpfvqgf";
         };
         packageRequires = [ emacs project ];
         meta = {
diff --git a/pkgs/applications/editors/emacs/elisp-packages/manual-packages/lsp-bridge/default.nix b/pkgs/applications/editors/emacs/elisp-packages/manual-packages/lsp-bridge/default.nix
index d7cab2f707a2..695ddd430843 100644
--- a/pkgs/applications/editors/emacs/elisp-packages/manual-packages/lsp-bridge/default.nix
+++ b/pkgs/applications/editors/emacs/elisp-packages/manual-packages/lsp-bridge/default.nix
@@ -16,7 +16,7 @@
 }:
 
 let
-  rev = "977d344e2e930f3680990014f84ca94877d6eebf";
+  rev = "87ecb45eebf345a2f60bdca47e9073ec833f7737";
   python = python3.withPackages (ps: with ps; [
     epc
     orjson
@@ -28,13 +28,13 @@ let
 in
 melpaBuild {
   pname = "lsp-bridge";
-  version = "20240424.1125";
+  version = "20240516.145";
 
   src = fetchFromGitHub {
     owner = "manateelazycat";
     repo = "lsp-bridge";
     inherit rev;
-    hash = "sha256-moG0BaHHN3ySON4aMza43Ub4GKuGV9mGSzC48xoiPl8=";
+    hash = "sha256-s0Tvvo4NO2GJrKSfE7XNuI1OBkf2bLRvaJilVWjyyE0=";
   };
 
   commit = rev;
diff --git a/pkgs/applications/editors/emacs/elisp-packages/nongnu-generated.nix b/pkgs/applications/editors/emacs/elisp-packages/nongnu-generated.nix
index c9a699f5a06b..d9cb7b0aa5ce 100644
--- a/pkgs/applications/editors/emacs/elisp-packages/nongnu-generated.nix
+++ b/pkgs/applications/editors/emacs/elisp-packages/nongnu-generated.nix
@@ -7,7 +7,7 @@
         version = "0.7.0";
         src = fetchurl {
           url = "https://elpa.nongnu.org/nongnu/adoc-mode-0.7.0.tar";
-          sha256 = "055wljs3y8z9m9rvnqv8w0mvcpz5qd3v9sjhr5v0fv72p1vvf9rc";
+          sha256 = "1gdjgybpbw3qj9mfmq9ljx4xaam1f6rwyrav2y2f5fpv6z7w0i61";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -22,7 +22,7 @@
         version = "0.1";
         src = fetchurl {
           url = "https://elpa.nongnu.org/nongnu/afternoon-theme-0.1.tar";
-          sha256 = "0aalwn1hf0p756qmiybmxphh4dx8gd5r4jhbl43l6y68fdijr6qg";
+          sha256 = "0xxvr3njpbdlm8iyyklwijjaysyknwpw51hq2443wq37bsxciils";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -37,7 +37,7 @@
         version = "0.10";
         src = fetchurl {
           url = "https://elpa.nongnu.org/nongnu/alect-themes-0.10.tar";
-          sha256 = "0j5zwmxq1f9hlarr1f0j010kd3n2k8hbhr8pw789j3zlc2kmx5bb";
+          sha256 = "0pagkf0bb85sr3mvg8z6h6akb9hjmvfqmpiaiz121ys0r92m6nb7";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -52,7 +52,7 @@
         version = "0.3.0";
         src = fetchurl {
           url = "https://elpa.nongnu.org/nongnu/ample-theme-0.3.0.tar";
-          sha256 = "0b5a9pqvmfc3h1l0rsmw57vj5j740ysnlpiig6jx9rkgn7awm5p1";
+          sha256 = "12z8z6da1xfc642w2wc82sjlfj3ymlz3jwrg3ydc2fapis2d3ibi";
         };
         packageRequires = [];
         meta = {
@@ -64,10 +64,10 @@
       elpaBuild {
         pname = "annotate";
         ename = "annotate";
-        version = "2.2.0";
+        version = "2.2.1";
         src = fetchurl {
-          url = "https://elpa.nongnu.org/nongnu/annotate-2.2.0.tar";
-          sha256 = "1h1whavdrwfsc79kcvh2vbvjzqd7n01xzjb1acgyiy9wkyl79p7b";
+          url = "https://elpa.nongnu.org/nongnu/annotate-2.2.1.tar";
+          sha256 = "04k42bc3jbna3jipcpsj31lhcj1cqabak4pmllz9c0jf1z74hx94";
         };
         packageRequires = [];
         meta = {
@@ -82,7 +82,7 @@
         version = "2.5.1";
         src = fetchurl {
           url = "https://elpa.nongnu.org/nongnu/anti-zenburn-theme-2.5.1.tar";
-          sha256 = "06d7nm4l6llv7wjbwnhfaamrcihichljkpwnllny960pi56a8gmr";
+          sha256 = "121038d6mjdfis1c5v9277bd6kz656n0c25daxq85mfswvjlar0i";
         };
         packageRequires = [];
         meta = {
@@ -97,7 +97,7 @@
         version = "0.64";
         src = fetchurl {
           url = "https://elpa.nongnu.org/nongnu/anzu-0.64.tar";
-          sha256 = "1znw7wlpjb3d8wsijqziiq21j966x95q9g5j16wx48xyrrzr1mcs";
+          sha256 = "0mv4xiy3481d5r4rypmw7nn1hjmsvlfz5dhgmpn6cqbpzkgb6zjb";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -112,7 +112,7 @@
         version = "2.2.0";
         src = fetchurl {
           url = "https://elpa.nongnu.org/nongnu/apache-mode-2.2.0.tar";
-          sha256 = "022s7rw7ary1cx3riszzvb7wi0y078vixkcyggjdg5j2ckjpc8gb";
+          sha256 = "10fgbgww7j60dik7b7mvnm1zwgv9y8p5wzggkrdk50dv3gjfxg8f";
         };
         packageRequires = [];
         meta = {
@@ -127,7 +127,7 @@
         version = "0.2.0";
         src = fetchurl {
           url = "https://elpa.nongnu.org/nongnu/apropospriate-theme-0.2.0.tar";
-          sha256 = "1s4cvh24zj3wpdqc3lklvi1dkba3jf87nxrzq0s3l1rzhg21pfpj";
+          sha256 = "1hsv26iqr0g6c3gy1df2qkd3ilwq6xaa89ch7pqh64737qrlw9db";
         };
         packageRequires = [];
         meta = {
@@ -142,7 +142,7 @@
         version = "1.3.0";
         src = fetchurl {
           url = "https://elpa.nongnu.org/nongnu/arduino-mode-1.3.0.tar";
-          sha256 = "1270mbjgj0kmmjqqblwaipmd2667yp31mgspib3c5d7d6acs1bfx";
+          sha256 = "167b35s34x51qnlx59sawaz4wzlnk2kf9130ylz2b1bj7jy5n27a";
         };
         packageRequires = [ emacs spinner ];
         meta = {
@@ -159,7 +159,7 @@
         version = "2.1.1";
         src = fetchurl {
           url = "https://elpa.nongnu.org/nongnu/auto-dim-other-buffers-2.1.1.tar";
-          sha256 = "0a7xdp25bny5ykf7808jwmziad8myf8yp01p07f20bsrl4m0bzz6";
+          sha256 = "0rgf0q66kdw9ind5bi01ydk84rclcd3kmlfzm9rfb429xnhqfzw8";
         };
         packageRequires = [];
         meta = {
@@ -174,7 +174,7 @@
         version = "0.2.18";
         src = fetchurl {
           url = "https://elpa.nongnu.org/nongnu/autothemer-0.2.18.tar";
-          sha256 = "1gn7n8xd07sks49xirwah1y039s2hn02p0y1j4lmqh7m47l0fvl2";
+          sha256 = "1v6si9fh3rbka72r5jfd35bbvfbfaxr2kfi7jmsgj07fhx4bgl2d";
         };
         packageRequires = [ dash emacs ];
         meta = {
@@ -189,7 +189,7 @@
         version = "1.0";
         src = fetchurl {
           url = "https://elpa.nongnu.org/nongnu/base32-1.0.tar";
-          sha256 = "02n227xwg621zh4na5lx8xh5q6zldq0hwwfzc4wkgfg2jb83n4g8";
+          sha256 = "1k1n0zlks9dammpmr0875xh5vw5prmc7rr5kwd262xidscj19k6w";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -204,7 +204,7 @@
         version = "3.1.1";
         src = fetchurl {
           url = "https://elpa.nongnu.org/nongnu/bash-completion-3.1.1.tar";
-          sha256 = "19vs0rflqm1z4r17pv1qx6v60g03x4n2b7503rjr2d0ljrwkbpcp";
+          sha256 = "1yc1a5cvmnp8dranrglpd7qjg35r6x4ndniinbmzinqr7dmydh62";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -219,7 +219,7 @@
         version = "1.0.1";
         src = fetchurl {
           url = "https://elpa.nongnu.org/nongnu/better-jumper-1.0.1.tar";
-          sha256 = "0jykcz4g0q29k7rawsp2n5zmx88kdh3kbh0497vvpks74vvk2c9f";
+          sha256 = "1jdmbp1jjip8vmmc66z2wgx95lzp1b92m66p160mdm4g3skl64c2";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -234,7 +234,7 @@
         version = "1.1.2";
         src = fetchurl {
           url = "https://elpa.nongnu.org/nongnu/bind-map-1.1.2.tar";
-          sha256 = "1x98pgalnpl45h63yw6zz6q16x00phijyx2pf4jrf93s18lx33z5";
+          sha256 = "037xk912hx00ia62h6kdfa56g44dhd0628va22znxg251izvnqxq";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -249,7 +249,7 @@
         version = "0.4";
         src = fetchurl {
           url = "https://elpa.nongnu.org/nongnu/bison-mode-0.4.tar";
-          sha256 = "19n9kz1ycjpxngd3clzr8lzrnnw19l8sfvlx1yqn35hk7017z7ab";
+          sha256 = "0k0h96bpcndi3m9fdk74j0ynm50n6by508mv3ds9ala26dpdr7qa";
         };
         packageRequires = [];
         meta = {
@@ -264,7 +264,7 @@
         version = "1.0";
         src = fetchurl {
           url = "https://elpa.nongnu.org/nongnu/blow-1.0.tar";
-          sha256 = "0z2y3vq8m4x9ihn84x7p2vgkxprrrvhavcgwll897gsc9khp1xda";
+          sha256 = "009x0y86692ccj2v0cizr40ly6xdp72bnwj5pjayg3y0ph4iz0cj";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -279,7 +279,7 @@
         version = "0.0.3";
         src = fetchurl {
           url = "https://elpa.nongnu.org/nongnu/blueprint-ts-mode-0.0.3.tar";
-          sha256 = "1ii46kmiaxywymhjlj85c3ypdnkkhgyaqgzhnkzzfz6946dchj3v";
+          sha256 = "0v1sk80dka2gdkwcbria12ih3jrna3866ngdswcskyqcnkxm7b7n";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -294,7 +294,7 @@
         version = "2.3";
         src = fetchurl {
           url = "https://elpa.nongnu.org/nongnu/boxquote-2.3.tar";
-          sha256 = "1d072qls4ywl71wi29khlq4w6yw9idp55vf811nvbmiihn6lwmiv";
+          sha256 = "0fsvfy5b4k0h6fxmvvdngxap5pfypm8iik0m1jq70za7n7g8qvmy";
         };
         packageRequires = [ cl-lib ];
         meta = {
@@ -306,10 +306,10 @@
       elpaBuild {
         pname = "buttercup";
         ename = "buttercup";
-        version = "1.34";
+        version = "1.35";
         src = fetchurl {
-          url = "https://elpa.nongnu.org/nongnu/buttercup-1.34.tar";
-          sha256 = "0bdlky9d5fzc9x9wpjxyvrclz1rmzsnvc89lf0m5fhyp4r8jvxy4";
+          url = "https://elpa.nongnu.org/nongnu/buttercup-1.35.tar";
+          sha256 = "0b9dxbn7pni2203xdg289ymkmhf458898i2lh7aplppmh68bms2c";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -324,7 +324,7 @@
         version = "0.3";
         src = fetchurl {
           url = "https://elpa.nongnu.org/nongnu/camera-0.3.tar";
-          sha256 = "0faqdsgi3kwkk0yqp1676d8x4mi11yj856fj7spf3j02y83r1lmj";
+          sha256 = "0r9b20li82qcc141p4blyaj0xng5f4xrghhl09wc15ffi0cmbq7d";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -339,7 +339,7 @@
         version = "4.9";
         src = fetchurl {
           url = "https://elpa.nongnu.org/nongnu/caml-4.9.tar";
-          sha256 = "00ldvz6r10vwwmk6f3az534p0340ywn7knsg2bmvbvh3q51vyl9i";
+          sha256 = "1xzk83bds4d23rk170n975mijlmin5dh7crfc5swwvzh8w88qxmk";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -354,7 +354,7 @@
         version = "4.18.4";
         src = fetchurl {
           url = "https://elpa.nongnu.org/nongnu/cdlatex-4.18.4.tar";
-          sha256 = "0qa4wp76jykykh244an84kmlvwnsqjnc8ii38mdnd5jjnhacg11v";
+          sha256 = "174i72z3pyxsbagqk7g8d84282fh3y3ipv0bcghrgqjznxdjx427";
         };
         packageRequires = [];
         meta = {
@@ -379,7 +379,7 @@
         version = "1.13.1";
         src = fetchurl {
           url = "https://elpa.nongnu.org/nongnu/cider-1.13.1.tar";
-          sha256 = "0ipmhm8ggh437m72b0vf9vfmwkcfwj3yy37wldz0yyiv59y2g50p";
+          sha256 = "0df5z57schfszlp1vkb6fiiadx12qlpk5qzfw61g664a2i654fsg";
         };
         packageRequires = [
           clojure-mode
@@ -403,7 +403,7 @@
         version = "5.18.1";
         src = fetchurl {
           url = "https://elpa.nongnu.org/nongnu/clojure-mode-5.18.1.tar";
-          sha256 = "1wnl10r79cc1p9a1zwyzhj9ddvc166xkmc7f04pibwxw9j4l3ppg";
+          sha256 = "1p9nh4p3skjxbsnyj2in3m8jdyrrj8iw0malfcz0ppc4d7zm6klx";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -418,7 +418,7 @@
         version = "0.2.2";
         src = fetchurl {
           url = "https://elpa.nongnu.org/nongnu/clojure-ts-mode-0.2.2.tar";
-          sha256 = "19dskc53dx183kcb7p5qx41qsjsy1mqi46zrdfc1znl7rdknhvl7";
+          sha256 = "14s3gawx2lazzd5ziz2plhl6k1qik8gfjka7fijgxb55ls9bvgrp";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -426,16 +426,20 @@
           license = lib.licenses.free;
         };
       }) {};
-    coffee-mode = callPackage ({ elpaBuild, emacs, fetchurl, lib }:
+    coffee-mode = callPackage ({ cl-lib ? null
+                               , elpaBuild
+                               , emacs
+                               , fetchurl
+                               , lib }:
       elpaBuild {
         pname = "coffee-mode";
         ename = "coffee-mode";
         version = "0.6.3";
         src = fetchurl {
           url = "https://elpa.nongnu.org/nongnu/coffee-mode-0.6.3.tar";
-          sha256 = "1yv1b5rzlj7cpz7gsv2j07mr8z6lkwxp1cldkrc6xlhcbqh8795a";
+          sha256 = "1anywqp2b99dmilfnajxgf4msc0viw6ndl0lxpgaa7d2b3mzx9nq";
         };
-        packageRequires = [ emacs ];
+        packageRequires = [ cl-lib emacs ];
         meta = {
           homepage = "https://elpa.gnu.org/packages/coffee-mode.html";
           license = lib.licenses.free;
@@ -471,7 +475,7 @@
         version = "1.0";
         src = fetchurl {
           url = "https://elpa.nongnu.org/nongnu/consult-flycheck-1.0.tar";
-          sha256 = "0901wliqdzj5dmam1kkbq0nxhywqf11182q7yxjxh98czy5w3xh8";
+          sha256 = "17kc7v50zq69l4803nh8sjnqwi59p09wjzqkwka6g4dapya3h2xy";
         };
         packageRequires = [ consult emacs flycheck ];
         meta = {
@@ -491,7 +495,7 @@
         version = "0.7";
         src = fetchurl {
           url = "https://elpa.nongnu.org/nongnu/corfu-terminal-0.7.tar";
-          sha256 = "1vva3wwmczdph8dlhvwy1vlan8nmzlz6370zia6hz3adwc496a4s";
+          sha256 = "0a41hfma4iiinq2cgvwqqwxhrwjn5c7igl5sgvgx0mbjki2n6sll";
         };
         packageRequires = [ corfu emacs popon ];
         meta = {
@@ -506,7 +510,7 @@
         version = "0.5.0";
         src = fetchurl {
           url = "https://elpa.nongnu.org/nongnu/crux-0.5.0.tar";
-          sha256 = "0zdzfglzvhkzyvnkk2d217c6f8gnbcxlp8adimwrxgqh7c6gwihp";
+          sha256 = "0cykjwwhl6r02fsyam4vnmlxiyq8b8qsgncb1hjnz4gj7mxc9gg4";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -521,7 +525,7 @@
         version = "1.22";
         src = fetchurl {
           url = "https://elpa.nongnu.org/nongnu/cyberpunk-theme-1.22.tar";
-          sha256 = "1kva129l8vwfvafw329znrsqhm1j645xsyz55il1jhc28fbijp51";
+          sha256 = "1kgkgpb07d4kh2rf88pfgyji42qv80443i67nzha2fx01zbd5swb";
         };
         packageRequires = [];
         meta = {
@@ -537,10 +541,10 @@
       elpaBuild {
         pname = "cycle-at-point";
         ename = "cycle-at-point";
-        version = "0.1";
+        version = "0.2";
         src = fetchurl {
-          url = "https://elpa.nongnu.org/nongnu/cycle-at-point-0.1.tar";
-          sha256 = "0097w7nw8d1q7ad4b4qjk0svwxqg80jr2p27540vkir7289w59j3";
+          url = "https://elpa.nongnu.org/nongnu/cycle-at-point-0.2.tar";
+          sha256 = "1q3gylksr754s0pl8x1hdk0q4p0vz6lnasswgsqpx44nmnbsrw6z";
         };
         packageRequires = [ emacs recomplete ];
         meta = {
@@ -555,7 +559,7 @@
         version = "202003130913";
         src = fetchurl {
           url = "https://elpa.nongnu.org/nongnu/d-mode-202003130913.tar";
-          sha256 = "1pad0ib8l1zkjmh97n1pkwph1xdbcqidnicm3nwmcbmbi61lddsx";
+          sha256 = "0sdyk8q1pfk5gbj5hdyc1djmyb02vvhs4s2fbbxk52nlkx95p46s";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -570,7 +574,7 @@
         version = "1.0.7";
         src = fetchurl {
           url = "https://elpa.nongnu.org/nongnu/dart-mode-1.0.7.tar";
-          sha256 = "13n0fmnxgnq8vjw0n5vwgdgfm5lznvrm3xkak4snkdw7w3rd3a20";
+          sha256 = "1k9pn7nqskz39m3zwi9jhd1a2q440jgrla1a37qip73mwrdril1i";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -585,7 +589,7 @@
         version = "0.1.2";
         src = fetchurl {
           url = "https://elpa.nongnu.org/nongnu/denote-refs-0.1.2.tar";
-          sha256 = "1s2q9j2xg2g293ip7w2bq2kjk6pasaf6cmvzcbh0k00yx8aa2alp";
+          sha256 = "0jq14adxpx9bxddkj3a4bahyr3yarjn85iplhhy9yk7k9wy7wis0";
         };
         packageRequires = [ denote emacs ];
         meta = {
@@ -600,7 +604,7 @@
         version = "1.0";
         src = fetchurl {
           url = "https://elpa.nongnu.org/nongnu/devhelp-1.0.tar";
-          sha256 = "16zx748n24diqqk3jhgyz74s71kqzl7h7l6j9nkz40cpcn18ddiz";
+          sha256 = "14x1990yr3qqzv9dqn7xg69hqgpmgjsi68f2fg07v670lk7hs8xb";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -630,7 +634,7 @@
         version = "0.2";
         src = fetchurl {
           url = "https://elpa.nongnu.org/nongnu/diff-ansi-0.2.tar";
-          sha256 = "1fcy89m6wkhc5hy4lqcd60ckrf9qwimilydjx083nackppdz1xlw";
+          sha256 = "0i1216mw0zgy3jdhhxsn5wpjqgxv5als1lljb1ddqjl21y6z74nw";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -645,7 +649,7 @@
         version = "0.1";
         src = fetchurl {
           url = "https://elpa.nongnu.org/nongnu/doc-show-inline-0.1.tar";
-          sha256 = "11khy906vmhz445ryrdb63v0hjq0x59dn152j96vv9jlg5gqdi3b";
+          sha256 = "13y7k4zp8x8fcyidw0jy6zf92af660zwb7qpps91l2dh7zwjsl2v";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -660,7 +664,7 @@
         version = "1.7";
         src = fetchurl {
           url = "https://elpa.nongnu.org/nongnu/dockerfile-mode-1.7.tar";
-          sha256 = "1kb768kv48ypw7fm5xcvkw4pq9mfkvv0bg1inlhfifkb4i9kmz3l";
+          sha256 = "1rpgjhbb2vzz6fqcqksvx27a1mj8p3bgmjh00433qd8g7hghc9v7";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -675,7 +679,7 @@
         version = "1.8.2";
         src = fetchurl {
           url = "https://elpa.nongnu.org/nongnu/dracula-theme-1.8.2.tar";
-          sha256 = "17szqyl63nn66sxdz403kcd2diif5afvgv6abgqkw6x01bsr11i0";
+          sha256 = "04r7cn4n8n4fiwblmfsa23d1qh11mqfz0cghq6ss72flp5awj46g";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -690,7 +694,7 @@
         version = "0.7.4";
         src = fetchurl {
           url = "https://elpa.nongnu.org/nongnu/drupal-mode-0.7.4.tar";
-          sha256 = "1cglipmwx5v8vaqkkc7f5ka3dpxlrmmqrqhi885mm625kh2r27j1";
+          sha256 = "1wr05pi5sm994cdzj329gr1lwxvq4w9wmc806izxq3fjifx0m609";
         };
         packageRequires = [ php-mode ];
         meta = {
@@ -705,7 +709,7 @@
         version = "0.9.4";
         src = fetchurl {
           url = "https://elpa.nongnu.org/nongnu/eat-0.9.4.tar";
-          sha256 = "0683rni1vgq1jmmp1kjvi0fx9m5k7hh5r9b432whwnkp9gcfrb80";
+          sha256 = "0jn5rzyg1abjsb18brr1ha4vmhvxpkp8pxvaxfa0g0phcb2iz5ql";
         };
         packageRequires = [ compat emacs ];
         meta = {
@@ -720,7 +724,7 @@
         version = "0.1.13";
         src = fetchurl {
           url = "https://elpa.nongnu.org/nongnu/edit-indirect-0.1.13.tar";
-          sha256 = "06x51lajykz6ny8q1762vhjxzvlqm2il47099hbb9wpj4vjx14q6";
+          sha256 = "10zshywbp0f00k2d4f5bc44ynvw3f0626vl35lbah1kwmgzrrjdd";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -735,7 +739,7 @@
         version = "0.10.1";
         src = fetchurl {
           url = "https://elpa.nongnu.org/nongnu/editorconfig-0.10.1.tar";
-          sha256 = "0x6qij98rwq2yra7c0qa01rjb10pg23nwnnsb2fb76d5yhk1dcqw";
+          sha256 = "1xv2yfs8v2bcf9nvbchdw8lxryfnhy3zh0n6vnxyxnbx2590qa9s";
         };
         packageRequires = [ emacs nadvice ];
         meta = {
@@ -750,7 +754,7 @@
         version = "2.5.0";
         src = fetchurl {
           url = "https://elpa.nongnu.org/nongnu/elixir-mode-2.5.0.tar";
-          sha256 = "0j4rkwmzb3grs7c56m1f6h3mcxvf4cskxf2qw9jw4fc88j5135ym";
+          sha256 = "1x6aral441mv9443h21lnaymbpazwii22wcqvk2jfqjmyl1xj1yz";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -765,7 +769,7 @@
         version = "3.6.0";
         src = fetchurl {
           url = "https://elpa.nongnu.org/nongnu/elpher-3.6.0.tar";
-          sha256 = "0pa8y3zc768wdgp43546qvwr6ly2q9gznfrl6qmm90gkv5wrc5ln";
+          sha256 = "1xf3kl09inswx4w03fxj35n1ypvlin39z493fw4ksnpf79ccfk4x";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -780,7 +784,7 @@
         version = "2.2.4";
         src = fetchurl {
           url = "https://elpa.nongnu.org/nongnu/engine-mode-2.2.4.tar";
-          sha256 = "0azc1l9dbalbsd5mcfg1adbkyyy1n4195grzr96w9d7cs7ds23ya";
+          sha256 = "0gp1mnf0yaq4w91pj989dzlxpbpcqqj0yls23wf2ly53kbaarzv9";
         };
         packageRequires = [ cl-lib ];
         meta = {
@@ -795,7 +799,7 @@
         version = "1.15.0";
         src = fetchurl {
           url = "https://elpa.nongnu.org/nongnu/evil-1.15.0.tar";
-          sha256 = "0xp31w5mr6sprimd2rwy7mpa3kca5ivwf57jmaqyzpd96gh66pg1";
+          sha256 = "0ciglddlq0z91jyggp86d9g3gwfzjp55xhldqpxpq39a2xkwqh0q";
         };
         packageRequires = [];
         meta = {
@@ -810,7 +814,7 @@
         version = "0.2";
         src = fetchurl {
           url = "https://elpa.nongnu.org/nongnu/evil-anzu-0.2.tar";
-          sha256 = "0fv7kan67g24imhbgggrg8r4pjhpmicpq3g8g1wnq8p9zkwxbm7s";
+          sha256 = "1vn61aj0bnvkj2l3cd8m8q3n7kn09hdp6d13wc58w9pw8nrg0vq5";
         };
         packageRequires = [ anzu evil ];
         meta = {
@@ -825,7 +829,7 @@
         version = "1.1";
         src = fetchurl {
           url = "https://elpa.nongnu.org/nongnu/evil-args-1.1.tar";
-          sha256 = "0lgwrhjsy098h2lhsiasm39kzkdfqcjnapc2q6f2gyf7zll37761";
+          sha256 = "0fv30wny2f4mg8l9jrjgxisz6nbmn84980yszbrcbkqi81dzzlyi";
         };
         packageRequires = [ evil ];
         meta = {
@@ -845,7 +849,7 @@
         version = "3.16";
         src = fetchurl {
           url = "https://elpa.nongnu.org/nongnu/evil-escape-3.16.tar";
-          sha256 = "14289axdn3splza66wdyyvfj1hqslmqxfr63zk480cqvrn0dkpvz";
+          sha256 = "0vv6k3zaaw4ckk6qjiw1n41815w1g4qgy2hfgsj1vm7xc9i9zjzp";
         };
         packageRequires = [ cl-lib emacs evil ];
         meta = {
@@ -864,7 +868,7 @@
         version = "0.41";
         src = fetchurl {
           url = "https://elpa.nongnu.org/nongnu/evil-exchange-0.41.tar";
-          sha256 = "1i07c0zc75mbgb6hzj6py248gxzy0mk3xyaskvwlc371fyyn6v6c";
+          sha256 = "1yk7zdxl7c8c2ic37l0rsaynnpcrhdbblk2frl5m8phf54g82d8i";
         };
         packageRequires = [ cl-lib evil ];
         meta = {
@@ -879,7 +883,7 @@
         version = "0.0.2";
         src = fetchurl {
           url = "https://elpa.nongnu.org/nongnu/evil-goggles-0.0.2.tar";
-          sha256 = "0cpxbl2vls52dydaa1x4jkizhnd3vmvs30ivihdl964vmpb1s7yl";
+          sha256 = "0nipk8r7l5c50n9zry5264cfilx730l68ssldw3hyj14ybdf6dch";
         };
         packageRequires = [ emacs evil ];
         meta = {
@@ -894,7 +898,7 @@
         version = "1.3";
         src = fetchurl {
           url = "https://elpa.nongnu.org/nongnu/evil-iedit-state-1.3.tar";
-          sha256 = "1dsdlhi58xsdsgkdhpnlkx1gkwc4m5sks99ph8lbj179vd1gszn6";
+          sha256 = "1955bci018rpbdvixlw0gxay10g0vgg2xwsfmfyxcblk5glrv5cp";
         };
         packageRequires = [ evil iedit ];
         meta = {
@@ -913,7 +917,7 @@
         version = "1.0.1";
         src = fetchurl {
           url = "https://elpa.nongnu.org/nongnu/evil-indent-plus-1.0.1.tar";
-          sha256 = "0wnn5xjdbc70cxwllz1gf6xf91ijlfhlps7gkb9c3v1kwpsfp3s3";
+          sha256 = "1kzlvi8xgfxy26w1m31nyh6vrq787vchkmk4r1xaphk9wn9bw1pq";
         };
         packageRequires = [ cl-lib evil ];
         meta = {
@@ -933,7 +937,7 @@
         version = "8.2";
         src = fetchurl {
           url = "https://elpa.nongnu.org/nongnu/evil-lisp-state-8.2.tar";
-          sha256 = "0hwv39rkwadm3jri84nf9mw48ybd5a0y02yzjp5cayy7alpf6zcn";
+          sha256 = "14v1nv797b4rxxxnvzwy6pp10g3mmvifb919iv7nx96sbn919w0p";
         };
         packageRequires = [ bind-map evil smartparens ];
         meta = {
@@ -948,7 +952,7 @@
         version = "3.0.4";
         src = fetchurl {
           url = "https://elpa.nongnu.org/nongnu/evil-matchit-3.0.4.tar";
-          sha256 = "1bc14r8cl0sd4ygj5didhzh74alzafc6rjk9fm4zgylkbcxal8nl";
+          sha256 = "1ib2xlz7ciaszw2j5184mf6560jmap93vh515sk8dmkkahdwsjgz";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -963,7 +967,7 @@
         version = "3.6.1";
         src = fetchurl {
           url = "https://elpa.nongnu.org/nongnu/evil-nerd-commenter-3.6.1.tar";
-          sha256 = "0ixyn669fk7gcnl3nhjma67zvnavikn75yzsa4sx850s5i4i1b2a";
+          sha256 = "1nzqwqp2gq3wka2x782yqz5d8bw3wglra42907kylkqwqbxryh0w";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -978,7 +982,7 @@
         version = "0.7";
         src = fetchurl {
           url = "https://elpa.nongnu.org/nongnu/evil-numbers-0.7.tar";
-          sha256 = "1kd60kc8762i9vyig179dnbmrjyw30bm06g26abndw2kjxaqjhr8";
+          sha256 = "1k5vrh8bj9kldqq8kxn1qi3k82i7k4v4h6nkk9hng8p90zhac02i";
         };
         packageRequires = [ emacs evil ];
         meta = {
@@ -993,7 +997,7 @@
         version = "1.0.4";
         src = fetchurl {
           url = "https://elpa.nongnu.org/nongnu/evil-surround-1.0.4.tar";
-          sha256 = "1cc6n05j7a3q3n8hzxrhgjwk2a79h0llidh0sqhq5bc9d8ygrl2s";
+          sha256 = "1fzhqg2zrfl1yvhf96s5m0b9793cysciqbxiihxzrnnf2rnrlls2";
         };
         packageRequires = [ evil ];
         meta = {
@@ -1012,7 +1016,7 @@
         version = "0.0.5";
         src = fetchurl {
           url = "https://elpa.nongnu.org/nongnu/evil-visual-mark-mode-0.0.5.tar";
-          sha256 = "1k7slwf6m1brwy40j7j4j6qw4jna4sh0llbywsimdj63zral3fki";
+          sha256 = "0hjg9jmyhhc6a6zzjicwy62m9bh7wlw6hc4cf2g6g416c0ri2d18";
         };
         packageRequires = [ dash evil ];
         meta = {
@@ -1027,7 +1031,7 @@
         version = "0.2.0";
         src = fetchurl {
           url = "https://elpa.nongnu.org/nongnu/evil-visualstar-0.2.0.tar";
-          sha256 = "0vjhwdp2ms7k008mm68vzlkxrq0zyrsf4r10w57w77qg5a96151c";
+          sha256 = "03liavxxpawvlgwdsihzz3z08yv227zjjqyll1cbmbk0678kbl7m";
         };
         packageRequires = [ evil ];
         meta = {
@@ -1035,20 +1039,16 @@
           license = lib.licenses.free;
         };
       }) {};
-    exec-path-from-shell = callPackage ({ cl-lib ? null
-                                        , elpaBuild
-                                        , emacs
-                                        , fetchurl
-                                        , lib }:
+    exec-path-from-shell = callPackage ({ elpaBuild, emacs, fetchurl, lib }:
       elpaBuild {
         pname = "exec-path-from-shell";
         ename = "exec-path-from-shell";
-        version = "2.1";
+        version = "2.2";
         src = fetchurl {
-          url = "https://elpa.nongnu.org/nongnu/exec-path-from-shell-2.1.tar";
-          sha256 = "0vqjd44fiaqc2ppmb2yk7m75dndndrlrml4lfmar5213vlmds1cl";
+          url = "https://elpa.nongnu.org/nongnu/exec-path-from-shell-2.2.tar";
+          sha256 = "14nzk04aypqminpqs181nh3di23nnw64z0ir940ajs9bx5pv9s1w";
         };
-        packageRequires = [ cl-lib emacs ];
+        packageRequires = [ emacs ];
         meta = {
           homepage = "https://elpa.gnu.org/packages/exec-path-from-shell.html";
           license = lib.licenses.free;
@@ -1061,7 +1061,7 @@
         version = "0.6.2";
         src = fetchurl {
           url = "https://elpa.nongnu.org/nongnu/flx-0.6.2.tar";
-          sha256 = "0xmxin1k758nskrxhmvi4m5vbcfi2ncfp5n9q18mlc1j45vwawpx";
+          sha256 = "00d3q238grxcvnx6pshb7ajbz559gfp00pqaq56r2n5xqrvrxfnc";
         };
         packageRequires = [ cl-lib ];
         meta = {
@@ -1076,7 +1076,7 @@
         version = "0.6.2";
         src = fetchurl {
           url = "https://elpa.nongnu.org/nongnu/flx-ido-0.6.2.tar";
-          sha256 = "1jdk87v605m4brvf0pxfd6bz0j2r217cw9pmrpl38nrszbngh67l";
+          sha256 = "1933d3dcwynzs5qnv3pl4xdybj5gg0sa8zb58j0ld9hyiacm6zn5";
         };
         packageRequires = [ cl-lib flx ];
         meta = {
@@ -1091,7 +1091,7 @@
         version = "34.1";
         src = fetchurl {
           url = "https://elpa.nongnu.org/nongnu/flycheck-34.1.tar";
-          sha256 = "1yyvlhv45gvjmv1rja16j12gv2afiaf4r852mcw3l97h6f40h4x9";
+          sha256 = "1jj1c4gq39ik8fihsz13wp4c26fm2m6kyr7ir22ql0d007zm3173";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -1110,7 +1110,7 @@
         version = "0.5";
         src = fetchurl {
           url = "https://elpa.nongnu.org/nongnu/flymake-guile-0.5.tar";
-          sha256 = "1na5jxjwl2jy857ipvgy01m1wlsy0s7ingaxdzsldppjfvgwb7yd";
+          sha256 = "0gfblb49l52j7iq3y6fxx1jpr72z61pwxsxfknvfi4y05znxnf0k";
         };
         packageRequires = [ emacs flymake ];
         meta = {
@@ -1125,7 +1125,7 @@
         version = "0.1.3";
         src = fetchurl {
           url = "https://elpa.nongnu.org/nongnu/flymake-kondor-0.1.3.tar";
-          sha256 = "07k8b3wayp1h4hir98zs5srjjsnh6w0h9pzn4vnq9s2jr355509n";
+          sha256 = "0y5qnlk3q0fjch12d4vwni7v6rk0h5056s5lzjgns71x36xd1i21";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -1146,7 +1146,7 @@
         version = "0.5.1";
         src = fetchurl {
           url = "https://elpa.nongnu.org/nongnu/flymake-popon-0.5.1.tar";
-          sha256 = "0vk20affwb7qcg7nm6n2ssrrgljisqn45a8jagrf947l2kgaccvd";
+          sha256 = "0a9p0mnp1n4znb9xgi5ldjv8x1khhdr5idb8vcd444nd03q0lj6s";
         };
         packageRequires = [ emacs flymake popon posframe ];
         meta = {
@@ -1161,7 +1161,7 @@
         version = "1.0.1";
         src = fetchurl {
           url = "https://elpa.nongnu.org/nongnu/focus-1.0.1.tar";
-          sha256 = "1kiyvbdbjhjfkl5cq6q78lfgbir7iayswwm2qnj4df95nbm8shsz";
+          sha256 = "164xlxc5x2i955rfjdhlxp5ch55bh79gr7mzfychkjx0x088hcaa";
         };
         packageRequires = [ cl-lib emacs ];
         meta = {
@@ -1176,7 +1176,7 @@
         version = "0.2";
         src = fetchurl {
           url = "https://elpa.nongnu.org/nongnu/forth-mode-0.2.tar";
-          sha256 = "0qk6kg8d38fcvbxa4gfsdyllzrrp9712w74sj29b90fppa11b530";
+          sha256 = "04xcvjzvl4pgx48l2pzil7s2iqqbf86z57wv76ahp4sd1xigpfqc";
         };
         packageRequires = [];
         meta = {
@@ -1191,7 +1191,7 @@
         version = "1.0";
         src = fetchurl {
           url = "https://elpa.nongnu.org/nongnu/free-keys-1.0.tar";
-          sha256 = "1w0dslygz098bddap1shwa8pn55ggavz2jn131rmdnbfjy6plglv";
+          sha256 = "04x4hmia5rx6bd8pkp5b9g4mn081r14vyk1jbdygdzr5w5rhifx3";
         };
         packageRequires = [ cl-lib ];
         meta = {
@@ -1206,7 +1206,7 @@
         version = "1.0";
         src = fetchurl {
           url = "https://elpa.nongnu.org/nongnu/gc-buffers-1.0.tar";
-          sha256 = "15zpg4j25bk7y2wgqsd57c4c6h3xvigf39hjnzh3g1hlrqk2lv0g";
+          sha256 = "00204vanfabyf6cgbn64xgqhqz8mlppizsgi31xg6id1qgrj37p3";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -1221,7 +1221,7 @@
         version = "0.30";
         src = fetchurl {
           url = "https://elpa.nongnu.org/nongnu/geiser-0.30.tar";
-          sha256 = "0bxrxgz49xqxzbipkpnilz9lxm1wmjzhf6imkz3hq49wfp3zdaw6";
+          sha256 = "0h63skslmc23rjlsrqmcnqf2s431ml0wmkbza38j44kzxnsz0x5g";
         };
         packageRequires = [ emacs project ];
         meta = {
@@ -1236,7 +1236,7 @@
         version = "0.18";
         src = fetchurl {
           url = "https://elpa.nongnu.org/nongnu/geiser-chez-0.18.tar";
-          sha256 = "01pkcf0lpzmazah3ddd16yf2la4zd5x4mmi5lwpbsyvyfqhxhsca";
+          sha256 = "14l2a7njx3bzxj1qpc1m5mx4prm3ixgsiii3k484brbn4vim4j58";
         };
         packageRequires = [ emacs geiser ];
         meta = {
@@ -1251,7 +1251,7 @@
         version = "0.17";
         src = fetchurl {
           url = "https://elpa.nongnu.org/nongnu/geiser-chibi-0.17.tar";
-          sha256 = "1mpbkv48y1ij762f61hp1zjg3lx8k5b9bbsm5lfb7xzvmk5k3zf0";
+          sha256 = "17kkgs0z2xwbbwn7s49lnha6pmri1h7jnnhh5qvxif5xyvyy8bih";
         };
         packageRequires = [ emacs geiser ];
         meta = {
@@ -1266,7 +1266,7 @@
         version = "0.17";
         src = fetchurl {
           url = "https://elpa.nongnu.org/nongnu/geiser-chicken-0.17.tar";
-          sha256 = "13jhh0083fjx4xq0k31vw5v3ffbmn3jkb2608bimm9xlw6acgn4s";
+          sha256 = "1l0x0b5gcmc6v2gd2jhrz4zz2630rggq8w7ffzhsf8b8hr4d1ixy";
         };
         packageRequires = [ emacs geiser ];
         meta = {
@@ -1281,7 +1281,7 @@
         version = "0.18.1";
         src = fetchurl {
           url = "https://elpa.nongnu.org/nongnu/geiser-gambit-0.18.1.tar";
-          sha256 = "03cv51war65yrg5qswwlx755byn2nlm1qvbzqqminnidz64kfd3v";
+          sha256 = "1pqify8vqxzpm202zz9q92hp65yhs624z6qc2hgp9c1zms56jkqs";
         };
         packageRequires = [ emacs geiser ];
         meta = {
@@ -1296,7 +1296,7 @@
         version = "0.0.2";
         src = fetchurl {
           url = "https://elpa.nongnu.org/nongnu/geiser-gauche-0.0.2.tar";
-          sha256 = "0wd0yddasryy36ms5ghf0gs8wf80sgdxci2hd8k0fvnyi7c3wnj5";
+          sha256 = "189addy5xvx62j91ihi23i8dh5msm0wlwxyi8n07f4m2garrn14l";
         };
         packageRequires = [ emacs geiser ];
         meta = {
@@ -1316,7 +1316,7 @@
         version = "0.28.1";
         src = fetchurl {
           url = "https://elpa.nongnu.org/nongnu/geiser-guile-0.28.1.tar";
-          sha256 = "0imh2vdc757vimwxi7pjdv09f83js76nbk7dg861qg0bcqf21g3i";
+          sha256 = "148bvwcppv0qk7yh38c0m36hldw58cqhbyniyzwffagmlg0yqzsb";
         };
         packageRequires = [ emacs geiser transient ];
         meta = {
@@ -1346,7 +1346,7 @@
         version = "0.15";
         src = fetchurl {
           url = "https://elpa.nongnu.org/nongnu/geiser-mit-0.15.tar";
-          sha256 = "11agp5k79g0w5596x98kbwijvqnb1hwrbqx680mh1svd1l8374q0";
+          sha256 = "12wimv5x2k64ww9x147dlx2gfygmgz96hqcdhkbidi1smhfz11gk";
         };
         packageRequires = [ emacs geiser ];
         meta = {
@@ -1361,7 +1361,7 @@
         version = "0.16";
         src = fetchurl {
           url = "https://elpa.nongnu.org/nongnu/geiser-racket-0.16.tar";
-          sha256 = "0lf2lbgpl8pvx7yhiydb7j5hk3kdx34zvhva4zqnzya6zf30w257";
+          sha256 = "08sn32ams88ism6k24kq7s54vrdblkn15x9lldyqg4zapbllr1ny";
         };
         packageRequires = [ emacs geiser ];
         meta = {
@@ -1376,7 +1376,7 @@
         version = "1.8";
         src = fetchurl {
           url = "https://elpa.nongnu.org/nongnu/geiser-stklos-1.8.tar";
-          sha256 = "1bz7ggq5pl08pr68nmn82sdpb2vqi7zvsjnai8zvr93dai7p3isa";
+          sha256 = "1525n49igcnwr2wsjv4a74yk1gbjvv1l9rmkcpafyxyykvi94j6s";
         };
         packageRequires = [ emacs geiser ];
         meta = {
@@ -1412,7 +1412,7 @@
         version = "1.4.2";
         src = fetchurl {
           url = "https://elpa.nongnu.org/nongnu/git-modes-1.4.2.tar";
-          sha256 = "15lvya85710wyyynmgq7a92lc5mrrv2nfh19nxh92mkdd3r0c3fg";
+          sha256 = "0hdy4wpnyrn3a8i9yxk5gvsggnpgpg6r0wip0zmhcl9nxi4h6kb3";
         };
         packageRequires = [ compat emacs ];
         meta = {
@@ -1427,7 +1427,7 @@
         version = "1.5.1";
         src = fetchurl {
           url = "https://elpa.nongnu.org/nongnu/gnu-apl-mode-1.5.1.tar";
-          sha256 = "0almjbh35d0myyjaavmqi7yzk3jpqdcqrhsb2x6vcp6pb199g7z8";
+          sha256 = "0hzdmrhrcnq49cklpmbx1sq7d9qd2q6pprgshhhjx45mnn1q24v0";
         };
         packageRequires = [];
         meta = {
@@ -1442,7 +1442,7 @@
         version = "1.0";
         src = fetchurl {
           url = "https://elpa.nongnu.org/nongnu/gnu-indent-1.0.tar";
-          sha256 = "0h2kj19k3b9sw1bp0fk37kmc4xwvd3ajlgfa8s13jnvggx77nn8a";
+          sha256 = "1aj8si93ig1qbdqgq3f4jwnsws63drkfwfzxlq0i3qqfhsni0a15";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -1457,7 +1457,7 @@
         version = "0.8.1";
         src = fetchurl {
           url = "https://elpa.nongnu.org/nongnu/gnuplot-0.8.1.tar";
-          sha256 = "015b8ly4wmz03bcysbwy4d63r42sicwqa0j2j4aiis1kpy4lj3xw";
+          sha256 = "1y364j5gr8cnkndxd088kaxd2ah0nd7176gfjligm3ngpgg6ndyx";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -1472,7 +1472,7 @@
         version = "1.6.0";
         src = fetchurl {
           url = "https://elpa.nongnu.org/nongnu/go-mode-1.6.0.tar";
-          sha256 = "1j83i56ldkf79l7dyjbv9rvy3ki2xlvgj2y7jnap92hbd2q50jsy";
+          sha256 = "0ilvkl7iv47v0xyha07gfyv1a4c50ifw57bp7rx8ai77v30f3a2a";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -1487,7 +1487,7 @@
         version = "1.0.1";
         src = fetchurl {
           url = "https://elpa.nongnu.org/nongnu/golden-ratio-1.0.1.tar";
-          sha256 = "03vjn4b9s4xhcc009mcxc2w6ymnhss3hci7drkkdd2nlv58lcvs0";
+          sha256 = "169jl82906k03vifks0zs4sk5gcxax5jii6nysh6y6ns2h656cqx";
         };
         packageRequires = [];
         meta = {
@@ -1502,7 +1502,7 @@
         version = "1.1.9";
         src = fetchurl {
           url = "https://elpa.nongnu.org/nongnu/gotham-theme-1.1.9.tar";
-          sha256 = "0ikczh9crs02hlvnpdknxfbpqmpiicdbshjhi5pz3v7ynizj64vm";
+          sha256 = "195r8idq2ak6wpmgifpgvx52hljb8i7p9wx6ii1kh0baaqk31qq2";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -1517,7 +1517,7 @@
         version = "1.7.5";
         src = fetchurl {
           url = "https://elpa.nongnu.org/nongnu/goto-chg-1.7.5.tar";
-          sha256 = "08wdrwmgy5hanir6py6wiq0pq4lbv9jiyz1m3h947kb35kxalmks";
+          sha256 = "1j5vk8vc1v865fc8gdy0p5lpp2kkl0yn9f75npiva3ay6mwvnvay";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -1532,7 +1532,7 @@
         version = "1.0.0";
         src = fetchurl {
           url = "https://elpa.nongnu.org/nongnu/graphql-mode-1.0.0.tar";
-          sha256 = "11vn02vwiqbkzl9gxsm3gvybkbac13xnzzv2y227j3y8aq5kbwss";
+          sha256 = "0pfyznfndc8g2g3a3pxzcjsh3cah3amhz5124flrja5fqdgdmpjz";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -1547,7 +1547,7 @@
         version = "0.7";
         src = fetchurl {
           url = "https://elpa.nongnu.org/nongnu/gruber-darker-theme-0.7.tar";
-          sha256 = "0k2njsg7bwy4i7ll5d9dpqawylgkfvp74bany8g487xvspjscrji";
+          sha256 = "1ib9ad120g39fbkj41am6khglv1p6g3a9hk2jj2kl0c6czr1il2r";
         };
         packageRequires = [];
         meta = {
@@ -1562,7 +1562,7 @@
         version = "1.30.1";
         src = fetchurl {
           url = "https://elpa.nongnu.org/nongnu/gruvbox-theme-1.30.1.tar";
-          sha256 = "19r3ffkyq779jjz0jvyxdf2zhm1yd1lax9sh0qsj1r5xrcmb15l7";
+          sha256 = "1y30aahdxzdfmj021vbrz4zmdq6lr9k08hna9i1a8g4cywgbz8ri";
         };
         packageRequires = [ autothemer ];
         meta = {
@@ -1577,7 +1577,7 @@
         version = "1.0";
         src = fetchurl {
           url = "https://elpa.nongnu.org/nongnu/guru-mode-1.0.tar";
-          sha256 = "18vz80yc7nv6dgyyxmlxslwim7qpb1dx2y5382c2wbdqp0icg41g";
+          sha256 = "0kmbllzvp8qzj8ck2azq2wfw66ywc80zicncja62bi6zsh2l622z";
         };
         packageRequires = [];
         meta = {
@@ -1592,7 +1592,7 @@
         version = "3.2.1";
         src = fetchurl {
           url = "https://elpa.nongnu.org/nongnu/haml-mode-3.2.1.tar";
-          sha256 = "10pnpx4x5wjk4yq4kgynkhfv4xg8nzwmfwf1bappivrdii47hbiq";
+          sha256 = "0hhra7bryk3n649s3byzq6vv5ywd4bqkfppya7bswqkj3bakiyil";
         };
         packageRequires = [ cl-lib emacs ];
         meta = {
@@ -1607,7 +1607,7 @@
         version = "17.5";
         src = fetchurl {
           url = "https://elpa.nongnu.org/nongnu/haskell-mode-17.5.tar";
-          sha256 = "0ld9wjak3fzwi9w2552fzq1562h7g19q69pigp16rj30smp5gkj7";
+          sha256 = "1yjy0cvgs5cnq5d9sv24p1p66z83r9rhbgn0nsccc12rn2gm3hyn";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -1615,16 +1615,16 @@
           license = lib.licenses.free;
         };
       }) {};
-    haskell-tng-mode = callPackage ({ elpaBuild, emacs, fetchurl, lib, popup }:
+    haskell-tng-mode = callPackage ({ elpaBuild, emacs, fetchurl, lib }:
       elpaBuild {
         pname = "haskell-tng-mode";
         ename = "haskell-tng-mode";
         version = "0.0.1";
         src = fetchurl {
           url = "https://elpa.nongnu.org/nongnu/haskell-tng-mode-0.0.1.tar";
-          sha256 = "1dndnxb9bdjnixyl09025065wdrk0h8q721rbwvransq308fijwy";
+          sha256 = "0l6rs93322la2fn8wyvxshl6f967ngamw2m1hnm2j6hvmqph5cpj";
         };
-        packageRequires = [ emacs popup ];
+        packageRequires = [ emacs ];
         meta = {
           homepage = "https://elpa.gnu.org/packages/haskell-tng-mode.html";
           license = lib.licenses.free;
@@ -1634,10 +1634,10 @@
       elpaBuild {
         pname = "helm";
         ename = "helm";
-        version = "3.9.7";
+        version = "3.9.8";
         src = fetchurl {
-          url = "https://elpa.nongnu.org/nongnu/helm-3.9.7.tar";
-          sha256 = "1xlaxxwv34a8lxijni4yi60g5g7mlpjq4d71p9hdcpqja7xq4igz";
+          url = "https://elpa.nongnu.org/nongnu/helm-3.9.8.tar";
+          sha256 = "1vcz3vj6drp5v66s3nsrai39rcwp1q3l2qdd1qxw7n58m4fgrkm6";
         };
         packageRequires = [ helm-core popup wfnames ];
         meta = {
@@ -1649,10 +1649,10 @@
       elpaBuild {
         pname = "helm-core";
         ename = "helm-core";
-        version = "3.9.7";
+        version = "3.9.8";
         src = fetchurl {
-          url = "https://elpa.nongnu.org/nongnu/helm-core-3.9.7.tar";
-          sha256 = "125fqnj2g61lsagiwwd8fpnrp2s7mxsdppj8cfp3m6c3984fmsx0";
+          url = "https://elpa.nongnu.org/nongnu/helm-core-3.9.8.tar";
+          sha256 = "03l5sva3qhfmjdpys1k2pbcja58fsdxljvmffjx70j7wyclb3v03";
         };
         packageRequires = [ async emacs ];
         meta = {
@@ -1667,10 +1667,10 @@
       elpaBuild {
         pname = "highlight-parentheses";
         ename = "highlight-parentheses";
-        version = "2.1.1";
+        version = "2.2.2";
         src = fetchurl {
-          url = "https://elpa.nongnu.org/nongnu/highlight-parentheses-2.1.1.tar";
-          sha256 = "1r0sk4da3apgbik8d84vknwna45k1ks3n0s1fspj5c88b4r7xnsx";
+          url = "https://elpa.nongnu.org/nongnu/highlight-parentheses-2.2.2.tar";
+          sha256 = "13686dkgpn30di3kkc60l3dhrrjdknqkmvgjnl97mrbikxfma7w2";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -1685,7 +1685,7 @@
         version = "0.2";
         src = fetchurl {
           url = "https://elpa.nongnu.org/nongnu/hl-block-mode-0.2.tar";
-          sha256 = "1qrq238arblk8v8nf98kcdckfhwzi27w5zbl31yvf36xz69l9y8n";
+          sha256 = "0anv7bvrwylp504l3g42jcbcfmibv9jzs2kbkny46xd9vfb3kyrl";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -1700,7 +1700,7 @@
         version = "1.0";
         src = fetchurl {
           url = "https://elpa.nongnu.org/nongnu/hl-column-1.0.tar";
-          sha256 = "00y4g912s341p30xnb0qgj0gmzsqm696v06kjgy9yva5qgw51f03";
+          sha256 = "11d7xplpjx0b6ppcjv4giazrla1qcaaf2i6s5g0j5zxb1m60kkfz";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -1715,7 +1715,7 @@
         version = "1.56";
         src = fetchurl {
           url = "https://elpa.nongnu.org/nongnu/htmlize-1.56.tar";
-          sha256 = "1xdy6lbqm75qlywbr08sbjfa20mphylswbjihk1iiblyj8gbp0p6";
+          sha256 = "0s4k5q8b4grx3zyrryxcqahixkpzcni2qqnmm07axfxpgcqcnk9c";
         };
         packageRequires = [];
         meta = {
@@ -1739,7 +1739,7 @@
         version = "0.3";
         src = fetchurl {
           url = "https://elpa.nongnu.org/nongnu/hyperdrive-0.3.tar";
-          sha256 = "1q23xrq80wmh4l87rpzfp6gc671gkalvhidfichlapk507sll1y6";
+          sha256 = "03r5qx3a0w1ll4ql7nrjgp19cnk7rrf7ibvj8gd57gqqihkdmqqw";
         };
         packageRequires = [
           compat
@@ -1762,7 +1762,7 @@
         version = "1.1.4";
         src = fetchurl {
           url = "https://elpa.nongnu.org/nongnu/idle-highlight-mode-1.1.4.tar";
-          sha256 = "1j7y03b90gf3pl0xbfirm973k31l7nx90is69m3jrfai2f9qnflr";
+          sha256 = "0vp45ww8bxacrwzv0jqzs782symxysmpvawd29pa1yci1qp2pvm5";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -1782,7 +1782,7 @@
         version = "1.1.0";
         src = fetchurl {
           url = "https://elpa.nongnu.org/nongnu/idris-mode-1.1.0.tar";
-          sha256 = "00xbb63kidkygs2zp334nw38gn5mrbky3ii0g8c9k9si4k1dn5gq";
+          sha256 = "1vlm7gshrkwp9lfm5jcp1rnsjxwzqknrjhl3q5ifwmicyvqkqwsv";
         };
         packageRequires = [ cl-lib emacs prop-menu ];
         meta = {
@@ -1797,7 +1797,7 @@
         version = "0.9.9.9.9";
         src = fetchurl {
           url = "https://elpa.nongnu.org/nongnu/iedit-0.9.9.9.9.tar";
-          sha256 = "1ic780gd7n2qrpbqr0vy62p7wsrskyvyr571m8m3j25fii8v8cxg";
+          sha256 = "12s71yj8ycrls2fl97qs3igk5y06ksbmfq2idz0a2zrdggndg0b6";
         };
         packageRequires = [];
         meta = {
@@ -1816,7 +1816,7 @@
         version = "3.2.1";
         src = fetchurl {
           url = "https://elpa.nongnu.org/nongnu/inf-clojure-3.2.1.tar";
-          sha256 = "0p1q51wn67abwhn6qa01f190czaq33nmy4ir1jrcxsny4vnbxvx4";
+          sha256 = "1pvngj87hqr0qzc62cgq294rllxbmn7803pnqqr8ah1qxy65a1wb";
         };
         packageRequires = [ clojure-mode emacs ];
         meta = {
@@ -1831,7 +1831,7 @@
         version = "2.8.1";
         src = fetchurl {
           url = "https://elpa.nongnu.org/nongnu/inf-ruby-2.8.1.tar";
-          sha256 = "0ghf6gaxyslkxfy8cyyglf8ldzyv9jqsyl6nz7iahfk930aiynpj";
+          sha256 = "1iisxgrw7lkrcl86mj3s3578qxnx1cn615swsmnch2ilwjqdrdza";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -1861,7 +1861,7 @@
         version = "1.1";
         src = fetchurl {
           url = "https://elpa.nongnu.org/nongnu/iwindow-1.1.tar";
-          sha256 = "1sx0dqm7wwq05qaxqyrsg8v57i5ghzaq2hcdrywjq5x3cl5rmw17";
+          sha256 = "04d5dxqazxfx8ap9vmhj643x7lmpa0wmzcm9w9mlvsk2kaz0j19i";
         };
         packageRequires = [ compat emacs seq ];
         meta = {
@@ -1876,7 +1876,7 @@
         version = "1.1.1";
         src = fetchurl {
           url = "https://elpa.nongnu.org/nongnu/j-mode-1.1.1.tar";
-          sha256 = "0l0l71z5i725dnw4l9w2cfjhrijwx9z8mgyf2dfcbly1cl2nvnx2";
+          sha256 = "056af7l7rn116nygln41rsq2val5s3y0pz1pj2736mqsx3lcyiy2";
         };
         packageRequires = [];
         meta = {
@@ -1891,7 +1891,7 @@
         version = "1.0.1";
         src = fetchurl {
           url = "https://elpa.nongnu.org/nongnu/jade-mode-1.0.1.tar";
-          sha256 = "1kkf5ayqzs1rs7b3jqwb21r2mikds3lillfrs3pkcca7lj76313n";
+          sha256 = "0pv0n9vharda92avggd91q8i98yjim9ccnz5m5c5xw12hxcsfj17";
         };
         packageRequires = [];
         meta = {
@@ -1906,7 +1906,7 @@
         version = "0.3";
         src = fetchurl {
           url = "https://elpa.nongnu.org/nongnu/jinja2-mode-0.3.tar";
-          sha256 = "1zkyac4akwnz8a136xyn6915j6jgpf0xilbf4krw7q6k8nkks2m4";
+          sha256 = "0dg1zn7mghclnxsmcl5nq5jqibm18sja23058q9lk6nph4fvz5dq";
         };
         packageRequires = [];
         meta = {
@@ -1914,16 +1914,16 @@
           license = lib.licenses.free;
         };
       }) {};
-    julia-mode = callPackage ({ elpaBuild, emacs, fetchurl, lib }:
+    julia-mode = callPackage ({ elpaBuild, fetchurl, lib }:
       elpaBuild {
         pname = "julia-mode";
         ename = "julia-mode";
         version = "0.4";
         src = fetchurl {
           url = "https://elpa.nongnu.org/nongnu/julia-mode-0.4.tar";
-          sha256 = "1qi6z6007q2jgcb96iy34m87jsg9ss3jhzlnl2cl8dn26yqmdky4";
+          sha256 = "15x63nwq6rh1yxwwd8hf0a8nznws8gzxqiw45n6pv8vp8h2v3fsi";
         };
-        packageRequires = [ emacs ];
+        packageRequires = [];
         meta = {
           homepage = "https://elpa.gnu.org/packages/julia-mode.html";
           license = lib.licenses.free;
@@ -1936,7 +1936,7 @@
         version = "1.3.3";
         src = fetchurl {
           url = "https://elpa.nongnu.org/nongnu/keycast-1.3.3.tar";
-          sha256 = "0cvya8vbbmzly1hjf5jm3n9phml4wmwy2hn4igxp8f2pg1x46049";
+          sha256 = "048j5q4hpr8y89lrcqwbcqjazj52rak8jv8nl6fs4sqjik10zcji";
         };
         packageRequires = [ compat emacs ];
         meta = {
@@ -1951,7 +1951,7 @@
         version = "2.0.0";
         src = fetchurl {
           url = "https://elpa.nongnu.org/nongnu/kotlin-mode-2.0.0.tar";
-          sha256 = "0q1pfjcsk6c17hs5xg7wb6f4i29hn3zxgznjcr3v11dm4xmrj9iv";
+          sha256 = "0d247kxbrhkbmgldmalywmx6fqiz35ifvjbv20lyrmnbyhx1zr97";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -1966,7 +1966,7 @@
         version = "0.4";
         src = fetchurl {
           url = "https://elpa.nongnu.org/nongnu/lorem-ipsum-0.4.tar";
-          sha256 = "05zk11g0w3bnabxf5937hrkc3k58vlrh1bk61dar9gfbfdq3ijyg";
+          sha256 = "0d1c6zalnqhyn88dbbi8wqzvp0ppswhqv656hbj129jwp4iida4x";
         };
         packageRequires = [];
         meta = {
@@ -1981,7 +1981,7 @@
         version = "20221027";
         src = fetchurl {
           url = "https://elpa.nongnu.org/nongnu/lua-mode-20221027.tar";
-          sha256 = "1irdlw77ny0a28msrbn4lm66ixrlf2grsj4izhpdm1n0yv66xvfc";
+          sha256 = "0mg4fjprrcwqfrzxh6wpl92r3ywpj3586444c6yvq1rs56z5wvj5";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -1996,7 +1996,7 @@
         version = "0.9.2";
         src = fetchurl {
           url = "https://elpa.nongnu.org/nongnu/macrostep-0.9.2.tar";
-          sha256 = "1257vz50k69wka756c9sjq86apvw876myl3wml55x5m8q328wbcf";
+          sha256 = "0ij216575987fi4l4305h5xnvic21lizybkyq5mx67zvhcq75yfs";
         };
         packageRequires = [ cl-lib ];
         meta = {
@@ -2056,7 +2056,7 @@
         version = "2.6";
         src = fetchurl {
           url = "https://elpa.nongnu.org/nongnu/markdown-mode-2.6.tar";
-          sha256 = "1z1rzx1sc8hzvyqgnfdj64syr4pabv9grl57n4jis9arcqmx41zr";
+          sha256 = "15s8snzfvzzfk7wfizz5r8aksywq7s9h6xbb2y5dqjkpqg951va2";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -2076,7 +2076,7 @@
         version = "1.0.12";
         src = fetchurl {
           url = "https://elpa.nongnu.org/nongnu/mastodon-1.0.12.tar";
-          sha256 = "1raq11350y5cpfzq7c8xmrsnl728fw0796bn1prbrrlly20rqxc2";
+          sha256 = "1kmzlz9sb7vkyw84kmpg39zj2hhyrvpb0g6h54ikrxccbn8g22s2";
         };
         packageRequires = [ emacs persist request ];
         meta = {
@@ -2091,7 +2091,7 @@
         version = "2015";
         src = fetchurl {
           url = "https://elpa.nongnu.org/nongnu/material-theme-2015.tar";
-          sha256 = "027plf401y3lb5y9hzj8gpy9sm0p1k8hv94pywnagq4kr9hivnb9";
+          sha256 = "117ismd3p577cr59b6995byyq90zn4nd81dlf4pm8p0iiziryyji";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -2113,7 +2113,7 @@
         version = "0.5";
         src = fetchurl {
           url = "https://elpa.nongnu.org/nongnu/mentor-0.5.tar";
-          sha256 = "1kkzm881fxhc5hb83x0j12lv22b72nzw45qrypbl1jf2siispz9l";
+          sha256 = "1sqdwdbanrdvrr8qqn23ylcyc98jcjc7yq1g1d963v8d9wfbailv";
         };
         packageRequires = [ async emacs seq url-scgi xml-rpc ];
         meta = {
@@ -2128,7 +2128,7 @@
         version = "1.4.5";
         src = fetchurl {
           url = "https://elpa.nongnu.org/nongnu/meow-1.4.5.tar";
-          sha256 = "0r1rmhmwgxl7q2rvjf8byc0ass00k3m87sn6sw9chip5cgd5g6gm";
+          sha256 = "1d63mw88vq97rq3a7qhkxid2xaag5dp21ijisw9s3fk972kcks3s";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -2143,7 +2143,7 @@
         version = "0.3";
         src = fetchurl {
           url = "https://elpa.nongnu.org/nongnu/minibar-0.3.tar";
-          sha256 = "1mgkkjaav9hkg1c0lvn887armxv18hn99zd3dy1dx2lnjv2kfdcp";
+          sha256 = "0vxjw485bja8h3gmqmvg9541f21ricwcw6ydlhv9174as5cmwx5j";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -2158,7 +2158,7 @@
         version = "1.0.2";
         src = fetchurl {
           url = "https://elpa.nongnu.org/nongnu/moe-theme-1.0.2.tar";
-          sha256 = "1hdbm6hw94yyw5cdgfmc5fgnfc2glf0ba8a9ch2y33nzjawklb8x";
+          sha256 = "13c4rj0c9fi4nipzsrmvgb8ddvk3dckijga07yxp71x5ba6mrp2n";
         };
         packageRequires = [];
         meta = {
@@ -2173,7 +2173,7 @@
         version = "3.5.3";
         src = fetchurl {
           url = "https://elpa.nongnu.org/nongnu/monokai-theme-3.5.3.tar";
-          sha256 = "15b5ijkb0wrixlw13rj02x7m0r3ldqfs3bb6g48hhbqfapd6rcx0";
+          sha256 = "14ylizbhfj2hlc52gi2fs70avz39s46wnr96dbbq4l8vmhxs7il5";
         };
         packageRequires = [];
         meta = {
@@ -2194,7 +2194,7 @@
         version = "0.2.0";
         src = fetchurl {
           url = "https://elpa.nongnu.org/nongnu/mpv-0.2.0.tar";
-          sha256 = "14d5376y9b3jxxhzjcscx03ss61yd129dkb0ki9gmp2sk7cns3n5";
+          sha256 = "183alhd5fvmlhhfm0wl7b50axs01pgiwv735c43bfzdi2ny4szcm";
         };
         packageRequires = [ cl-lib emacs json org ];
         meta = {
@@ -2209,7 +2209,7 @@
         version = "1.4.0";
         src = fetchurl {
           url = "https://elpa.nongnu.org/nongnu/multiple-cursors-1.4.0.tar";
-          sha256 = "0f7rk8vw42bgdf5yb4qpnrc3bxvbaafmdqd7kiiqnj5m029yr14f";
+          sha256 = "0452wrbwg8hyvsri99h71g04dll5w65na265pp9whphq6l06ikrx";
         };
         packageRequires = [];
         meta = {
@@ -2224,7 +2224,7 @@
         version = "1.1.1";
         src = fetchurl {
           url = "https://elpa.nongnu.org/nongnu/nasm-mode-1.1.1.tar";
-          sha256 = "1smndl3mbiaaphy173zc405zg4wv0mv041vzy11fr74r5w4p232j";
+          sha256 = "19k0gwwx2fz779yli6pcl0a7grhsbhwyisq76lmnnclw0gkf686l";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -2236,10 +2236,10 @@
       elpaBuild {
         pname = "nginx-mode";
         ename = "nginx-mode";
-        version = "1.1.9";
+        version = "1.1.10";
         src = fetchurl {
-          url = "https://elpa.nongnu.org/nongnu/nginx-mode-1.1.9.tar";
-          sha256 = "04jy0zx058hj37ab2n6wwbbwyycsbsb2fj8s4a5f1is2in35nqy0";
+          url = "https://elpa.nongnu.org/nongnu/nginx-mode-1.1.10.tar";
+          sha256 = "0c6biqxbwpkrbqi639ifgv8jkfadssyznjkq6hxvqgjh3nnyrlx3";
         };
         packageRequires = [];
         meta = {
@@ -2259,7 +2259,7 @@
         version = "1.5.0";
         src = fetchurl {
           url = "https://elpa.nongnu.org/nongnu/nix-mode-1.5.0.tar";
-          sha256 = "0zi7xmh777pqzgcv18jqwywvidpa984p0m705p6a9fns7dvv53j7";
+          sha256 = "0hansrsyzx8j31rk45y8zs9hbfjgbv9sf3r37s2a2adz48n9k86g";
         };
         packageRequires = [ emacs magit-section transient ];
         meta = {
@@ -2274,7 +2274,7 @@
         version = "0.1";
         src = fetchurl {
           url = "https://elpa.nongnu.org/nongnu/oblivion-theme-0.1.tar";
-          sha256 = "0095sc82nl5qxz5nlf2bxbynkxa3plcqr8dq187r70p0775jw46m";
+          sha256 = "0njm7znh84drqwkp4jjsr8by6q9xd65r8l7xaqahzhk78167q6s4";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -2289,7 +2289,7 @@
         version = "1.7";
         src = fetchurl {
           url = "https://elpa.nongnu.org/nongnu/opam-switch-mode-1.7.tar";
-          sha256 = "19mg0k6ish0grhh4d9d9m634jkgbx80bgfwf4xh0q42piypyrmrj";
+          sha256 = "1gpc1syb51am2gkb3cgfb28rhh6ik41c1gx9gjf1h8m6zxb75433";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -2304,7 +2304,7 @@
         version = "0.6.0";
         src = fetchurl {
           url = "https://elpa.nongnu.org/nongnu/org-auto-tangle-0.6.0.tar";
-          sha256 = "07g1cwsr8j1sd8whshi9y2b69qx10g9vd77pmwki9ba4sy0m7b0p";
+          sha256 = "1vh3k283h90v3qilyx1n30k4ny5rkry6x9s6778s0sm6f6hwdggd";
         };
         packageRequires = [ async emacs ];
         meta = {
@@ -2319,7 +2319,7 @@
         version = "0.4.2";
         src = fetchurl {
           url = "https://elpa.nongnu.org/nongnu/org-contrib-0.4.2.tar";
-          sha256 = "058400h1c6ybkxjyxfkb43zwn90449zfhvbfvw70isf1l28l1rdz";
+          sha256 = "1v1g359dqyq8h4y5rjhllc93dq1vysnfk23lqn3smdvdi3ba9zlr";
         };
         packageRequires = [ emacs org ];
         meta = {
@@ -2340,7 +2340,7 @@
         version = "2.7.0";
         src = fetchurl {
           url = "https://elpa.nongnu.org/nongnu/org-drill-2.7.0.tar";
-          sha256 = "0f61cfw7qy8w5835hh0rh33ai5i50dzliymdpkvmvffgkx7mikx5";
+          sha256 = "0118vdd0gv2ipgfljkda4388gdly45c5vg0yfn3z4p0p8mjd15lg";
         };
         packageRequires = [ emacs org persist seq ];
         meta = {
@@ -2355,7 +2355,7 @@
         version = "2.2.0";
         src = fetchurl {
           url = "https://elpa.nongnu.org/nongnu/org-journal-2.2.0.tar";
-          sha256 = "1pikz9aqdch11zsya8j3gx44wfl2y5r0kym093pl7w6bjx9bgija";
+          sha256 = "12mvi8x8rsm93s55z8ns1an00l2p545swc0gzmx38ff57m7jb1mj";
         };
         packageRequires = [ emacs org ];
         meta = {
@@ -2370,7 +2370,7 @@
         version = "0.3.2";
         src = fetchurl {
           url = "https://elpa.nongnu.org/nongnu/org-mime-0.3.2.tar";
-          sha256 = "12crmbrjxac1ml2x1jh3wbpgh0fddhnl3gdmb5r9dlpkay1c5dxs";
+          sha256 = "1r24inqadhlsqc896vlm10bhr76aj6hnm6q5snhzpz4kk9j0gybd";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -2385,7 +2385,7 @@
         version = "0.1";
         src = fetchurl {
           url = "https://elpa.nongnu.org/nongnu/org-present-0.1.tar";
-          sha256 = "1b32faz4nv5s4fv0rxkr70dkjlmpiwzds513wpkwr6fvqmcz4kdy";
+          sha256 = "18zrvrd9aih57gj14qmxv9rf5j859vkvxcni3fkdbj84y5pq2fpy";
         };
         packageRequires = [ org ];
         meta = {
@@ -2400,7 +2400,7 @@
         version = "1.5.1";
         src = fetchurl {
           url = "https://elpa.nongnu.org/nongnu/org-superstar-1.5.1.tar";
-          sha256 = "0qwnjd6i3mzkvwdwpm3hn8hp3jwza43x1xq1hfi8d6fa9mwzw9nl";
+          sha256 = "1v6v7a0frgxlywfq6g4mdl6sz448k2ql7j4j4f1wrll33mr7gx8g";
         };
         packageRequires = [ emacs org ];
         meta = {
@@ -2415,7 +2415,7 @@
         version = "2.8.22";
         src = fetchurl {
           url = "https://elpa.nongnu.org/nongnu/org-tree-slide-2.8.22.tar";
-          sha256 = "19y9lznk69k8s195z4s2h6s6y8vr7lzmr7x9pi5n67a7bapshs02";
+          sha256 = "1wqc5d2nxs4s6p2ap6sdalxnyigpxini8ck6jikaarmfqcghnx2m";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -2436,7 +2436,7 @@
         version = "1.9.0";
         src = fetchurl {
           url = "https://elpa.nongnu.org/nongnu/orgit-1.9.0.tar";
-          sha256 = "1lwvmd0mri1vxqp5d8fqam1qhznfjq0bn5i5jjv15nqzcklsw7bm";
+          sha256 = "0g0nr284lgmd6jmk0w412gcildl6fzxv9kskgzr7ksk09qk9qfll";
         };
         packageRequires = [ compat emacs magit org ];
         meta = {
@@ -2451,7 +2451,7 @@
         version = "0.3";
         src = fetchurl {
           url = "https://elpa.nongnu.org/nongnu/p4-16-mode-0.3.tar";
-          sha256 = "1jl8mcwpzry7lmfm486wjvvx76053pjp68p1abcrjvg4ppsmbj93";
+          sha256 = "1kwfqs7ikfjkkpv3m440ak40mjyf493gqygmc4hac8phlf9ns6dv";
         };
         packageRequires = [];
         meta = {
@@ -2459,22 +2459,16 @@
           license = lib.licenses.free;
         };
       }) {};
-    package-lint = callPackage ({ cl-lib ? null
-                                , compat
-                                , elpaBuild
-                                , emacs
-                                , fetchurl
-                                , let-alist
-                                , lib }:
+    package-lint = callPackage ({ elpaBuild, emacs, fetchurl, let-alist, lib }:
       elpaBuild {
         pname = "package-lint";
         ename = "package-lint";
-        version = "0.21";
+        version = "0.23";
         src = fetchurl {
-          url = "https://elpa.nongnu.org/nongnu/package-lint-0.21.tar";
-          sha256 = "01yli62vcnh763pf1bp0f649hhrbl8y7ad89q7b98xgcciqgzm93";
+          url = "https://elpa.nongnu.org/nongnu/package-lint-0.23.tar";
+          sha256 = "116kc7j0g2r8fzyb07b7xb767wzjqnigi504r0rb7cc93b44c4gg";
         };
-        packageRequires = [ cl-lib compat emacs let-alist ];
+        packageRequires = [ emacs let-alist ];
         meta = {
           homepage = "https://elpa.gnu.org/packages/package-lint.html";
           license = lib.licenses.free;
@@ -2487,7 +2481,7 @@
         version = "0.1.1";
         src = fetchurl {
           url = "https://elpa.nongnu.org/nongnu/pacmacs-0.1.1.tar";
-          sha256 = "0ni4jmvkdqiiw2xync6raxvq4gr2hc7b65cbil66z7g7vlw5y56y";
+          sha256 = "02ahl0608xmmlkb014gqvv6f45l5lrkm3s4l6m5p5r98rwmlj3q9";
         };
         packageRequires = [ dash emacs ];
         meta = {
@@ -2502,7 +2496,7 @@
         version = "0.15";
         src = fetchurl {
           url = "https://elpa.nongnu.org/nongnu/page-break-lines-0.15.tar";
-          sha256 = "1i66254x49fwbzqrxmvp3v30aqas129kmy817rxbnqid7m5n1n7z";
+          sha256 = "018mn6h6nmkkgv1hsk0k8fjyg38wpg2f0cvqlv9p392sapca59ay";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -2517,7 +2511,7 @@
         version = "26";
         src = fetchurl {
           url = "https://elpa.nongnu.org/nongnu/paredit-26.tar";
-          sha256 = "08f8nm3qyk0b4x7mkgra0zjpn9mmfnpr5g7yrvdzvms38y919qlh";
+          sha256 = "1sk8nhsysa3y8fvds67cbwwzivzxlyw8d81y7f7pqc5lflidjrpc";
         };
         packageRequires = [];
         meta = {
@@ -2532,7 +2526,7 @@
         version = "1.1.1";
         src = fetchurl {
           url = "https://elpa.nongnu.org/nongnu/parseclj-1.1.1.tar";
-          sha256 = "14xczcd7vknsqkfwlk430kd6jz8fi51jwbjpzjqkymnixma32qd6";
+          sha256 = "0kkg5fdjbf2dm8jmirm86sjbqnzyhy72iml4qwwnshxjfhz1f0yi";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -2547,7 +2541,7 @@
         version = "1.2.1";
         src = fetchurl {
           url = "https://elpa.nongnu.org/nongnu/parseedn-1.2.1.tar";
-          sha256 = "039mmsmqbvvzqafhjx1grbg2620mjf6jvrj6g6mwxhy2ckll6bfg";
+          sha256 = "0q6wkcjxwqf81pvrcjbga91lr4ml6adbhmc7j71f53awrpc980ak";
         };
         packageRequires = [ emacs map parseclj ];
         meta = {
@@ -2562,7 +2556,7 @@
         version = "0.1.3";
         src = fetchurl {
           url = "https://elpa.nongnu.org/nongnu/pcmpl-args-0.1.3.tar";
-          sha256 = "1p9y80k2rb9vlkqbmwdmzw279wlk8yk8ii5kqgkyr1yg224qpaw7";
+          sha256 = "1lycckmwhp9l0pcrzx6c11iqwaw94h00334pzagkcfay7lz3hcgd";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -2577,7 +2571,7 @@
         version = "1.12";
         src = fetchurl {
           url = "https://elpa.nongnu.org/nongnu/pcre2el-1.12.tar";
-          sha256 = "0w2c9y4qrx8lm14jdjnax6wpwi5sw284brm4k1dwkrx8244krv8x";
+          sha256 = "1p0fgqm5342698gadnvziwbvv2kxj953975sp92cx7ddcyv2xr3c";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -2597,7 +2591,7 @@
         version = "1.1.0";
         src = fetchurl {
           url = "https://elpa.nongnu.org/nongnu/pdf-tools-1.1.0.tar";
-          sha256 = "0gb8c7y55mmz69agg0rkdjrxg0abznl2mj2x8vw12x4x1ggmykkf";
+          sha256 = "0shlpdy07pk9qj5a7d7yivpvgp5bh65psm0g9wkrvyhpkc93aylc";
         };
         packageRequires = [ emacs let-alist tablist ];
         meta = {
@@ -2612,7 +2606,7 @@
         version = "1.25.1";
         src = fetchurl {
           url = "https://elpa.nongnu.org/nongnu/php-mode-1.25.1.tar";
-          sha256 = "0b8svrjzc7lrbmwib1y1nbmn6pw3w289zqbfinjak9kvma2k7njv";
+          sha256 = "1cfk7nq5x2p4adcf6q9igsh2jm0sdmsaf5l2sqx4idda28vp3gwc";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -2627,7 +2621,7 @@
         version = "0.13";
         src = fetchurl {
           url = "https://elpa.nongnu.org/nongnu/popon-0.13.tar";
-          sha256 = "1ifwkiq8viic4ymph0xrpyrmr946brp2cx48yqf4jrhknafqv5qf";
+          sha256 = "0z0m7j30pdfw58cxxkmw5pkfpy8y1ax00wm4820rkqxz1f5sbkdb";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -2642,7 +2636,7 @@
         version = "0.5.9";
         src = fetchurl {
           url = "https://elpa.nongnu.org/nongnu/popup-0.5.9.tar";
-          sha256 = "0zyn6q3fwj20y7zdk49jbid2h3yf8l5x8y1kv9mj717kjbxiw063";
+          sha256 = "06q31bv6nsdkdgyg6x0zzjnlq007zhqw2ssjmj44izl6h6fkr26m";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -2657,7 +2651,7 @@
         version = "2.8.0";
         src = fetchurl {
           url = "https://elpa.nongnu.org/nongnu/projectile-2.8.0.tar";
-          sha256 = "0j3zd1i6c0vinizg6ini0wqgkczqm48g7m5ihp1njq34c6pgpx7y";
+          sha256 = "05llvm3xw3dbjdnfhy2kk6z3pysrsc9f6i7dm4glw5j1k7vig306";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -2672,7 +2666,7 @@
         version = "4.5";
         src = fetchurl {
           url = "https://elpa.nongnu.org/nongnu/proof-general-4.5.tar";
-          sha256 = "13zy339yz6ijgkcnqxzcyg909z77w3capb3gim1riy3sqikvv04x";
+          sha256 = "0mlmh7z93f7ypjlh6mxrxgcn47ysvi8qg8869qfxjgmskbfdvx2w";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -2687,7 +2681,7 @@
         version = "0.1.2";
         src = fetchurl {
           url = "https://elpa.nongnu.org/nongnu/prop-menu-0.1.2.tar";
-          sha256 = "1csx5aycl478v4hia6lyrdb32hs1haf9n39ngfrbx9ysp7gkj0va";
+          sha256 = "1cbps617k2nfi5jcv7y1zip4v64mi17r3rhw9w3n4r5hbl4sjwmw";
         };
         packageRequires = [ cl-lib emacs ];
         meta = {
@@ -2702,10 +2696,10 @@
       elpaBuild {
         pname = "racket-mode";
         ename = "racket-mode";
-        version = "1.0.20240319.160226";
+        version = "1.0.20240419.71343";
         src = fetchurl {
-          url = "https://elpa.nongnu.org/nongnu/racket-mode-1.0.20240319.160226.tar";
-          sha256 = "1alqiagpkbxqi8nyrn1qzfx23fagpn1ml9hqpyj897jwf5f03zsh";
+          url = "https://elpa.nongnu.org/nongnu/racket-mode-1.0.20240419.71343.tar";
+          sha256 = "152cm66y4pk5ggr7rbj9pzf2w0c6adkh1dd3cjwmq96mpxydx2na";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -2720,7 +2714,7 @@
         version = "2.1.5";
         src = fetchurl {
           url = "https://elpa.nongnu.org/nongnu/rainbow-delimiters-2.1.5.tar";
-          sha256 = "0bb7sqjgpm3041srr44l23p3mcjhvnpxl594ma25pbs11qqipz5w";
+          sha256 = "0f4zhz92z5qk3p9ips2d76qi64xv6y8jrxh5nvbq46ivj5c0hnw2";
         };
         packageRequires = [];
         meta = {
@@ -2735,7 +2729,7 @@
         version = "0.2.1";
         src = fetchurl {
           url = "https://elpa.nongnu.org/nongnu/raku-mode-0.2.1.tar";
-          sha256 = "01ygn20pbq18rciczbb0mkszr33pifs6i74rajxz03bcgx2j3q6f";
+          sha256 = "00iwkp4hwjdiymzbwm41m27avrn3n63hnwd9amyx0nsa0kdhrfyx";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -2750,7 +2744,7 @@
         version = "0.2";
         src = fetchurl {
           url = "https://elpa.nongnu.org/nongnu/recomplete-0.2.tar";
-          sha256 = "09n21mx90wr53xlhy5mlca675ah9ynnnc2afzjjml98ll81f4k23";
+          sha256 = "1jhyqgww8wawrxxd2zjb7scpamkbcp98hak9qmbn6ckgzdadks64";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -2765,7 +2759,7 @@
         version = "0.8";
         src = fetchurl {
           url = "https://elpa.nongnu.org/nongnu/reformatter-0.8.tar";
-          sha256 = "0yr0h8f53gaxnfz0dvvs9b4jqwp6p0j8xvv01g76j0map0fxkcam";
+          sha256 = "0bv0fbw3ach6jgnv67xjzxdzaghqa1rhgkmfsmkkbyz8ncbybj87";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -2780,7 +2774,7 @@
         version = "0.3.3";
         src = fetchurl {
           url = "https://elpa.nongnu.org/nongnu/request-0.3.3.tar";
-          sha256 = "168yy902bcjfdaahsbzhzb4wgqbw1mq1lfwdjh66fpzqs75c5q00";
+          sha256 = "02j24v8jdjsvi3v3asydb1zfiarzaxrpsshvgf62nhgk6x08845z";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -2795,7 +2789,7 @@
         version = "1.4.2";
         src = fetchurl {
           url = "https://elpa.nongnu.org/nongnu/rfc-mode-1.4.2.tar";
-          sha256 = "1b2n52qn7s0zc2xxi45xp9zvlws963l3b45v9q0r1yr8mpbvcb9l";
+          sha256 = "0lhs8wa4sr387xyibqqskkqgyhhhy48qp5wbjs8r5p68j1s1q86m";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -2810,7 +2804,7 @@
         version = "0.6.0";
         src = fetchurl {
           url = "https://elpa.nongnu.org/nongnu/rubocop-0.6.0.tar";
-          sha256 = "1gw30ya6xyi359k9fihjx75h7ahs067i9bvkyla0rbhmc5xdz6ww";
+          sha256 = "026cna402hg9lsrf88kmb2as667fgaianj2qd3ik9y89ps4xyzxf";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -2825,7 +2819,7 @@
         version = "1.0.5";
         src = fetchurl {
           url = "https://elpa.nongnu.org/nongnu/rust-mode-1.0.5.tar";
-          sha256 = "16dw4mfgfazslsf8n9fir2xc3v3jpw9i7bbgcfbhgclm0g2w9j83";
+          sha256 = "1cilbf4yw4723bn1vh9ww79875fxh0r1j2c7wxjqfjk5xnx4s6q4";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -2833,20 +2827,16 @@
           license = lib.licenses.free;
         };
       }) {};
-    sass-mode = callPackage ({ cl-lib ? null
-                             , elpaBuild
-                             , fetchurl
-                             , haml-mode
-                             , lib }:
+    sass-mode = callPackage ({ elpaBuild, fetchurl, haml-mode, lib }:
       elpaBuild {
         pname = "sass-mode";
         ename = "sass-mode";
         version = "3.0.16";
         src = fetchurl {
           url = "https://elpa.nongnu.org/nongnu/sass-mode-3.0.16.tar";
-          sha256 = "1nkp7cvsc2dbxkfv346hwsly34nhv1hhc8lgcs470xzdxi908p61";
+          sha256 = "0ag7qi9dq4j23ywbwni7pblp6l1ik95vjhclxm82s1911a8m7pj2";
         };
-        packageRequires = [ cl-lib haml-mode ];
+        packageRequires = [ haml-mode ];
         meta = {
           homepage = "https://elpa.gnu.org/packages/sass-mode.html";
           license = lib.licenses.free;
@@ -2859,7 +2849,7 @@
         version = "93.3";
         src = fetchurl {
           url = "https://elpa.nongnu.org/nongnu/scad-mode-93.3.tar";
-          sha256 = "0gh2s0hv8i100xsq656vfxy3586162dv1bz9gcj4aha3kk4ar3vk";
+          sha256 = "1d3mv50n3d0qg1sxvp11a4i15vc75j9gpzlqcxnc0l1lqhn64rwh";
         };
         packageRequires = [ compat emacs ];
         meta = {
@@ -2874,7 +2864,7 @@
         version = "0.23";
         src = fetchurl {
           url = "https://elpa.nongnu.org/nongnu/scala-mode-0.23.tar";
-          sha256 = "0dmyh5x519f5b9h034a1yjgmr1ai8pd22a032x31zgdkwl2xyrfd";
+          sha256 = "1zwd9cajw90v25rwdlylhdrc1xwvnf74c2rckz3cs096xsxc1qx2";
         };
         packageRequires = [];
         meta = {
@@ -2889,7 +2879,7 @@
         version = "0.1";
         src = fetchurl {
           url = "https://elpa.nongnu.org/nongnu/scroll-on-drag-0.1.tar";
-          sha256 = "06bpxfhdhsf6awhjcj21x8kb3g9n6j14s43cd03fp5gb0m5bs478";
+          sha256 = "0ga8w9px2x9a2ams0lm7ganbixylgpx8g2m3jrwfih0ib3z26kqc";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -2904,7 +2894,7 @@
         version = "0.2";
         src = fetchurl {
           url = "https://elpa.nongnu.org/nongnu/scroll-on-jump-0.2.tar";
-          sha256 = "09yndis96ps18i252h66ins1hi3zn27410s5hahkj2989q4cqi1s";
+          sha256 = "1gg5lpr21v9bjzjy33j8ziyhh5a1sad509c7rjkdlqda2z3xfrhr";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -2919,7 +2909,7 @@
         version = "0.3.2";
         src = fetchurl {
           url = "https://elpa.nongnu.org/nongnu/sesman-0.3.2.tar";
-          sha256 = "1nv0xh6dklpw1jq8b9biv70gzqa7par5jbqacx2lx0xhkyf0c7c1";
+          sha256 = "1mrv32cp87dhzpcv55v4zv4nq37lrsprsdhhjb2q0msqab3b0r31";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -2934,7 +2924,7 @@
         version = "0.1.0";
         src = fetchurl {
           url = "https://elpa.nongnu.org/nongnu/shellcop-0.1.0.tar";
-          sha256 = "0z0aml86y1m11lz8a8wdjfad5dzynjsqw69qin0a4vv2b8gy8mhr";
+          sha256 = "1gj178fm0jj8dbfy0crwcjidih4r6g9dl9lprzpxzgswvma32g0w";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -2946,10 +2936,10 @@
       elpaBuild {
         pname = "slime";
         ename = "slime";
-        version = "2.29.1";
+        version = "2.30";
         src = fetchurl {
-          url = "https://elpa.nongnu.org/nongnu/slime-2.29.1.tar";
-          sha256 = "1ad9m0a9rbn0gmpwdvnr1l7km833hqy43wp6q3cwv7azmj2sc1r2";
+          url = "https://elpa.nongnu.org/nongnu/slime-2.30.tar";
+          sha256 = "0gzgwrx6llj35kga21m3m4vp0g7f7dypim7pdnhy9sxrvl0k8v5f";
         };
         packageRequires = [ emacs macrostep ];
         meta = {
@@ -2964,7 +2954,7 @@
         version = "1.0.43";
         src = fetchurl {
           url = "https://elpa.nongnu.org/nongnu/sly-1.0.43.tar";
-          sha256 = "0qgji539qwk7lv9g1k11w0i2nn7n7nk456gwa0bh556mcqz2ndr8";
+          sha256 = "1c7kzbpcrij4z09bxfa1rq5w23jw9h8v4s6fa6ihr13x67gsif84";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -2979,7 +2969,7 @@
         version = "1.11.0";
         src = fetchurl {
           url = "https://elpa.nongnu.org/nongnu/smartparens-1.11.0.tar";
-          sha256 = "1179wicy5nrjk2iq73rxkx6c44k9ybs1vz6llw0qbwc5l10diyvr";
+          sha256 = "0kvlyx2bhw4q6k79wf5cm4srlmfncsbii4spdgafwmv8j7vw6ya3";
         };
         packageRequires = [];
         meta = {
@@ -2994,7 +2984,7 @@
         version = "2.0.1";
         src = fetchurl {
           url = "https://elpa.nongnu.org/nongnu/solarized-theme-2.0.1.tar";
-          sha256 = "1kz34a7133l2dl09mvb8v79k693ypxk01bmqwm8cfa7icqq2ka98";
+          sha256 = "1lk1g8v2chjrbbxplw3pd7yn3syjgywxkbdc7dbd76x168qz54qx";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -3024,7 +3014,7 @@
         version = "0.3";
         src = fetchurl {
           url = "https://elpa.nongnu.org/nongnu/spell-fu-0.3.tar";
-          sha256 = "0yr7m0i89ymp93p4qx8a0y1ghg7ydg1479xgvsz71n35x4sbiwba";
+          sha256 = "11a5361xjap02s0mm2sylhxqqrv64v72d70cg1vzch7iwfi18l9c";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -3039,7 +3029,7 @@
         version = "0.17";
         src = fetchurl {
           url = "https://elpa.nongnu.org/nongnu/sqlite3-0.17.tar";
-          sha256 = "04m53vn5cvcycv580q6zn5vw54ml7xmhs7bc88cwqj1z5vi3a85x";
+          sha256 = "17fx2bnzajqjzd9jgwvn6pjwshgirign975rrsc1m47cwniz0bnq";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -3069,7 +3059,7 @@
         version = "1.8.2";
         src = fetchurl {
           url = "https://elpa.nongnu.org/nongnu/subatomic-theme-1.8.2.tar";
-          sha256 = "0h2ln37ir6w4q44vznlkw4kzaisfpvkgs02dnb2x9b1wdg5qfqw4";
+          sha256 = "0vpaswm5mdyb8cir160mb8ffgzaz7kbq3gvc2zrnh531zb994mqg";
         };
         packageRequires = [];
         meta = {
@@ -3084,7 +3074,7 @@
         version = "1.2.11";
         src = fetchurl {
           url = "https://elpa.nongnu.org/nongnu/subed-1.2.11.tar";
-          sha256 = "1dlh7vd8kc16wr9sqd3v7kkxfvqadi56pa52h35b86krndh4vazp";
+          sha256 = "0grzlxibv57qds3dml6yjpw9hag86hbkrb1f66k7qn5hxaadmvpw";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -3096,10 +3086,10 @@
       elpaBuild {
         pname = "sweeprolog";
         ename = "sweeprolog";
-        version = "0.27.4";
+        version = "0.27.5";
         src = fetchurl {
-          url = "https://elpa.nongnu.org/nongnu/sweeprolog-0.27.4.tar";
-          sha256 = "05hky1103xays0jflyls4zxj3mbmq7ipkdhaasd868gjbky4kryf";
+          url = "https://elpa.nongnu.org/nongnu/sweeprolog-0.27.5.tar";
+          sha256 = "0mw8fddzcbn9h5l55v12n4nmickqdxc3y7y0xfzm6m42cvqkzdzf";
         };
         packageRequires = [ compat emacs ];
         meta = {
@@ -3114,7 +3104,7 @@
         version = "9.1.0";
         src = fetchurl {
           url = "https://elpa.nongnu.org/nongnu/swift-mode-9.1.0.tar";
-          sha256 = "1zx25g2jdkc78pjhl36gwrc3kj5wxayfl8vgkl3k5gqsa7bjjbjm";
+          sha256 = "1h7fbrgp2jsn0nk6c84vzvipm86macxf2975l0av8gxv0kpzcaiv";
         };
         packageRequires = [ emacs seq ];
         meta = {
@@ -3137,16 +3127,16 @@
           license = lib.licenses.free;
         };
       }) {};
-    symbol-overlay = callPackage ({ elpaBuild, emacs, fetchurl, lib, seq }:
+    symbol-overlay = callPackage ({ elpaBuild, emacs, fetchurl, lib }:
       elpaBuild {
         pname = "symbol-overlay";
         ename = "symbol-overlay";
         version = "4.1";
         src = fetchurl {
           url = "https://elpa.nongnu.org/nongnu/symbol-overlay-4.1.tar";
-          sha256 = "07gcg45y712dblidak2kxp7w0h0gf39hwzwbkpna66k4c4xjpig8";
+          sha256 = "0l877zm8fbf6qqcg7zx26w32x885axcj01l4y1m98jzryjhszfgn";
         };
-        packageRequires = [ emacs seq ];
+        packageRequires = [ emacs ];
         meta = {
           homepage = "https://elpa.gnu.org/packages/symbol-overlay.html";
           license = lib.licenses.free;
@@ -3159,7 +3149,7 @@
         version = "1.6.1";
         src = fetchurl {
           url = "https://elpa.nongnu.org/nongnu/systemd-1.6.1.tar";
-          sha256 = "0h6iwdi3j2ypgcwnyjs8rdlz5f8j25cya6z4v3n2phnkqbncmgx6";
+          sha256 = "0b0l70271kalicaix4p1ipr5vrj401cj8zvsi3243q1hp04k1m2g";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -3174,7 +3164,7 @@
         version = "1.0";
         src = fetchurl {
           url = "https://elpa.nongnu.org/nongnu/tablist-1.0.tar";
-          sha256 = "1r37vk31ddiahhd11ric00py9ay9flgmsv368j47pl9653g9i6d9";
+          sha256 = "0z05va5fq054xysvhnpblxk5x0v6k4ian0hby6vryfxg9828gy57";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -3189,7 +3179,7 @@
         version = "0.0.7";
         src = fetchurl {
           url = "https://elpa.nongnu.org/nongnu/tangotango-theme-0.0.7.tar";
-          sha256 = "0xl90c7hzzd2wanz41mb5ikjgrfga28qb893yvdcy0pa6mgdmpmx";
+          sha256 = "1w287p8lpmkm80qy1di2xmd71k051qmg89cn7s21kgi4br3hbbph";
         };
         packageRequires = [];
         meta = {
@@ -3210,7 +3200,7 @@
         version = "0.5";
         src = fetchurl {
           url = "https://elpa.nongnu.org/nongnu/telephone-line-0.5.tar";
-          sha256 = "09glq2ljd10mqx54i3vflk7yjb1abhykzm9kng4wrw5156ssn6zs";
+          sha256 = "0pmn1r2g639c8g3rw5q2d5cgdz79d4ipr3r4dzwx2mgff3ri1ylm";
         };
         packageRequires = [ cl-generic cl-lib emacs seq ];
         meta = {
@@ -3225,7 +3215,7 @@
         version = "0.3";
         src = fetchurl {
           url = "https://elpa.nongnu.org/nongnu/testcover-mark-line-0.3.tar";
-          sha256 = "18nlkm7p6fmaziqqbb4jmhpypn0b6233qd0c19xp16kjbxpg7ifh";
+          sha256 = "1p1dmxqdyk82qbcmggmzn15nz4jm98j5bjivy56vimgncqfbaf4h";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -3240,7 +3230,7 @@
         version = "1.0.0";
         src = fetchurl {
           url = "https://elpa.nongnu.org/nongnu/textile-mode-1.0.0.tar";
-          sha256 = "14ssqiw8x1pvjlw76h12vrk2w5qmhvp11v4h3cddqi96fddr95sq";
+          sha256 = "02nc3wijsb626631m09f2ygpmimkbl46x5hi8yk0wl18y66yq972";
         };
         packageRequires = [];
         meta = {
@@ -3255,7 +3245,7 @@
         version = "1.1";
         src = fetchurl {
           url = "https://elpa.nongnu.org/nongnu/toc-org-1.1.tar";
-          sha256 = "1wy48z4x756r7k6v9znn3f6bfxh867vy58wal7wmhxxig6sn9bk3";
+          sha256 = "0qhkn1a4j1q5gflqlyha2534sms8xsx03i7dizrckhl368yznwan";
         };
         packageRequires = [];
         meta = {
@@ -3270,7 +3260,7 @@
         version = "1.0";
         src = fetchurl {
           url = "https://elpa.nongnu.org/nongnu/totp-auth-1.0.tar";
-          sha256 = "0j5rr026n57crizrw4q4yi7q6psdw5qzfcby4slkrlz4yg58mpk3";
+          sha256 = "0hzj0p1r18q8vkhkbxbfakvmgld9y8n5hzza5zir0cpalv5590r5";
         };
         packageRequires = [ base32 emacs ];
         meta = {
@@ -3285,7 +3275,7 @@
         version = "1.2.0";
         src = fetchurl {
           url = "https://elpa.nongnu.org/nongnu/treeview-1.2.0.tar";
-          sha256 = "1vwkqnjj380w13xxj670da4kyqsxmjcsivaqd8k6w7bs59yrljkr";
+          sha256 = "1dmix7hn5yl69r987f0g2m00p866ln8412dm7fj399pmn1kdfsvy";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -3300,7 +3290,7 @@
         version = "3.0.1";
         src = fetchurl {
           url = "https://elpa.nongnu.org/nongnu/tuareg-3.0.1.tar";
-          sha256 = "0y98gwnbrcj3csd9yilk1izgzmp1ds5dh3y1bxgb2fzrjir3i13f";
+          sha256 = "04lb71cafg4bqicx3q3rb9jpxbq6hmdrzw88f52sjqxq5c4cqdkj";
         };
         packageRequires = [ caml emacs ];
         meta = {
@@ -3315,7 +3305,7 @@
         version = "0.4";
         src = fetchurl {
           url = "https://elpa.nongnu.org/nongnu/typescript-mode-0.4.tar";
-          sha256 = "1102c35w2b66q5acvhsk6yigzhp6n3rl0s28xnvb74ansk4rz35k";
+          sha256 = "1fs369h8ysrx1d8qzvz75izmlx4gzl619g7yjp9ck2wjv50wx95q";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -3330,7 +3320,7 @@
         version = "1.2.9";
         src = fetchurl {
           url = "https://elpa.nongnu.org/nongnu/ujelly-theme-1.2.9.tar";
-          sha256 = "04h86s0a44cmxizqi4p5h9gl1aiqwrvkh3xmawvn7z836i3hvxn9";
+          sha256 = "1yyjsdcwprynwk86phpqfifv6xkmn49yrj6fkh5s57w5sbby4fp0";
         };
         packageRequires = [];
         meta = {
@@ -3345,7 +3335,7 @@
         version = "0.5";
         src = fetchurl {
           url = "https://elpa.nongnu.org/nongnu/undo-fu-0.5.tar";
-          sha256 = "0akn8gw3wavsfhxa9m426jkjacsw3k8vaxymhqrzy18lpvg5hysw";
+          sha256 = "00pgvmks1nvdimsac534qny5vpq8sgcfgybiz3ck3mgfklj4kshj";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -3360,7 +3350,7 @@
         version = "0.6";
         src = fetchurl {
           url = "https://elpa.nongnu.org/nongnu/undo-fu-session-0.6.tar";
-          sha256 = "0l54zqr481xlldfjllhsq4z6ccyzx0k3h7gm59pz32m7bd7zxggl";
+          sha256 = "057izvr86har50z1sfk4s6r88w2ga57afwm2w9p5v14lq31vj7cp";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -3375,7 +3365,7 @@
         version = "20230504";
         src = fetchurl {
           url = "https://elpa.nongnu.org/nongnu/vc-fossil-20230504.tar";
-          sha256 = "0s7mxi9qq5axv1prqgfi1d7yyrn0abal8y25d4l7n38qszixjlcd";
+          sha256 = "1q78xcfzpvvrlr9b9yh57asrlks2n0nhxhxl8dyfwad6gm0yr948";
         };
         packageRequires = [];
         meta = {
@@ -3390,7 +3380,7 @@
         version = "2.0";
         src = fetchurl {
           url = "https://elpa.nongnu.org/nongnu/vcomplete-2.0.tar";
-          sha256 = "0fh5rfvhjmpfdhp4k4b1y57zlsixiabhzca9329id48p8jm4rqyp";
+          sha256 = "03f60ncrf994pc4q15m0p2admmy4gpg5c51nbr3xycqp16pq8dz1";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -3402,10 +3392,10 @@
       elpaBuild {
         pname = "visual-fill-column";
         ename = "visual-fill-column";
-        version = "2.6.2";
+        version = "2.6.3";
         src = fetchurl {
-          url = "https://elpa.nongnu.org/nongnu/visual-fill-column-2.6.2.tar";
-          sha256 = "13z87xyzldllvga8iygb33qaqvrrc2qnc315zalvbmydw174cq1i";
+          url = "https://elpa.nongnu.org/nongnu/visual-fill-column-2.6.3.tar";
+          sha256 = "0agxixxlv3lnsng8jk7y6x1kzzvx3sw5m3mhl8gr4i1didgxc37n";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -3420,7 +3410,7 @@
         version = "17.3.19";
         src = fetchurl {
           url = "https://elpa.nongnu.org/nongnu/web-mode-17.3.19.tar";
-          sha256 = "1z33y7p1dilwpwydb9q14n55q48n80mynm7fjr7ih91wvk8zz5di";
+          sha256 = "0gmi0p118kd2xvlbp6y5mz2f0sgdm8qwna76lrmbnsxw4c9g5c6p";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -3440,7 +3430,7 @@
         version = "3.2.2";
         src = fetchurl {
           url = "https://elpa.nongnu.org/nongnu/webpaste-3.2.2.tar";
-          sha256 = "0vviv062v46mlssz8627623g1b2nq4n4x3yiv8c882gvgvfvi2bi";
+          sha256 = "04156iwgbc49l3b6s5vzbffw1xrkansvczi6q29d5waxwi6a2nfc";
         };
         packageRequires = [ cl-lib emacs request ];
         meta = {
@@ -3452,10 +3442,10 @@
       elpaBuild {
         pname = "wfnames";
         ename = "wfnames";
-        version = "1.1";
+        version = "1.2";
         src = fetchurl {
-          url = "https://elpa.nongnu.org/nongnu/wfnames-1.1.tar";
-          sha256 = "04plvqn4srv1v7d7zx6qb0xm62c1hwkiqpq34w17daw9si2pvpan";
+          url = "https://elpa.nongnu.org/nongnu/wfnames-1.2.tar";
+          sha256 = "1yy034fx86wn6yv4671fybc4zn5g619zcnnfvryq6zpwibj6fikz";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -3470,7 +3460,7 @@
         version = "3.0.0";
         src = fetchurl {
           url = "https://elpa.nongnu.org/nongnu/wgrep-3.0.0.tar";
-          sha256 = "0vg23ydwkqrmhlll45gf2fjdxj9chx9bl9m0pgwrlkjw0ncxj3qp";
+          sha256 = "18j94y6xrjdmy5sk83mh5zaz4vqpi97pcjila387c0d84j1v2wzz";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -3485,7 +3475,7 @@
         version = "2.0.4";
         src = fetchurl {
           url = "https://elpa.nongnu.org/nongnu/why-this-2.0.4.tar";
-          sha256 = "0hqvqix9hqaki23vw3xilkcr84ak2vz4lwczr54s87x13idrg4px";
+          sha256 = "1swidi6z6rhhy2zvas84vmkj41zaqpdxfssg6x6lvzzq34cgq0ph";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -3500,7 +3490,7 @@
         version = "3.3.2";
         src = fetchurl {
           url = "https://elpa.nongnu.org/nongnu/with-editor-3.3.2.tar";
-          sha256 = "1jxkl9y6k81hyswd7yqrigwqsrgi3d0k5iaab1pjqyaixm5hk0d2";
+          sha256 = "1yjx1w54qdjpmq5f7l3y19d4bayyk01rgd82c56swsaxsf4j5fpv";
         };
         packageRequires = [ compat emacs ];
         meta = {
@@ -3515,7 +3505,7 @@
         version = "3.0";
         src = fetchurl {
           url = "https://elpa.nongnu.org/nongnu/with-simulated-input-3.0.tar";
-          sha256 = "0ws8z82kb0bh6z4yvw2kz3ib0j7v47c5l5dxlrn3kr1qk99z65l6";
+          sha256 = "0a2kqrv3q399n1y21v7m4c9ivm56j28kasb466rq704jccvzblfr";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -3535,7 +3525,7 @@
         version = "2.3.1";
         src = fetchurl {
           url = "https://elpa.nongnu.org/nongnu/workroom-2.3.1.tar";
-          sha256 = "1rwixacz8dwws54dvm9dbrwnjh8xpqp1j594hwd4xfq9z1kfzz4f";
+          sha256 = "0k0npmcs3cdkfds0r8p0gm8xa42bzdjiciilh65jka15fqknx486";
         };
         packageRequires = [ compat emacs project ];
         meta = {
@@ -3550,7 +3540,7 @@
         version = "2.2.0";
         src = fetchurl {
           url = "https://elpa.nongnu.org/nongnu/writegood-mode-2.2.0.tar";
-          sha256 = "08b1650v6qsb3x1s5k4n5m2aqx1n26gc4wj822fm9s49k8vcpzl8";
+          sha256 = "00phrzbd03gzc5y2ybizyp9smd6ybmmx2j7jf6hg5cmfyjmq8ahw";
         };
         packageRequires = [];
         meta = {
@@ -3565,7 +3555,7 @@
         version = "0.6";
         src = fetchurl {
           url = "https://elpa.nongnu.org/nongnu/ws-butler-0.6.tar";
-          sha256 = "1mm1c2awq2vs5fz773f1pa6ham29ws1agispxfjvj5nx15a0kqzl";
+          sha256 = "1jzlwj2pqan3bj0mipvh8vzvmgynrxf1dqphix7g86ppjv1ivmfy";
         };
         packageRequires = [];
         meta = {
@@ -3580,10 +3570,10 @@
       elpaBuild {
         pname = "xah-fly-keys";
         ename = "xah-fly-keys";
-        version = "24.24.20240324101507";
+        version = "25.1.20240423172921";
         src = fetchurl {
-          url = "https://elpa.nongnu.org/nongnu/xah-fly-keys-24.24.20240324101507.tar";
-          sha256 = "1lqrrs5j523q33vvs85j3dlnd56bmnzglfkc8jilv6yq44dmv7v7";
+          url = "https://elpa.nongnu.org/nongnu/xah-fly-keys-25.1.20240423172921.tar";
+          sha256 = "00h6bmfl4mpx44j1phvijffzlqm1xs2gfprmpwbghc29p5lbd2pj";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -3598,7 +3588,7 @@
         version = "1.1";
         src = fetchurl {
           url = "https://elpa.nongnu.org/nongnu/xkcd-1.1.tar";
-          sha256 = "1yszrba4cvisiy7m16rzpj7plbnafj4c7bdgxvqwxwhsasfmh6ag";
+          sha256 = "1qs4jv6h2i8g7s214xr4s6jgykdbac4lfc5hd0gmylkwlvs3pzcp";
         };
         packageRequires = [ json ];
         meta = {
@@ -3613,7 +3603,7 @@
         version = "1.6.17";
         src = fetchurl {
           url = "https://elpa.nongnu.org/nongnu/xml-rpc-1.6.17.tar";
-          sha256 = "0k029lsyz1gpx88pprx5nj2qzkgk6dfc9kvna6a94r6m14brrgyc";
+          sha256 = "1r8j87xddv80dx6lxzr2kq6czwk2l22bfxmplnma9fc2bsf1k2wy";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -3628,7 +3618,7 @@
         version = "0.0.16";
         src = fetchurl {
           url = "https://elpa.nongnu.org/nongnu/yaml-mode-0.0.16.tar";
-          sha256 = "19j90sss45gvs76nl1fxi0xahbygy2v639ziwcj93d9vs2p9axs0";
+          sha256 = "0bhflv50z379p6ysdq89bdszkxp8zdmlb8plj1bm2nqsgc39hdm7";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -3643,7 +3633,7 @@
         version = "1.0";
         src = fetchurl {
           url = "https://elpa.nongnu.org/nongnu/yasnippet-snippets-1.0.tar";
-          sha256 = "0p2a10wfh1dvmxbjlbj6p241xaldjim2h8vrv9aghvm3ryfixcpb";
+          sha256 = "0si61d0niabh18vbgdz6w5zirpxpp7c4mrcn5x1n3r5vnhv3n7m2";
         };
         packageRequires = [ yasnippet ];
         meta = {
@@ -3658,7 +3648,7 @@
         version = "2.8.0";
         src = fetchurl {
           url = "https://elpa.nongnu.org/nongnu/zenburn-theme-2.8.0.tar";
-          sha256 = "1jbkh09r6sxb0iv9cdxi6k33kz3hldc6hcvyqljf733rdxykpskv";
+          sha256 = "0z733svsjsads655jgmc0b33icmygwaahxa27qi32s1pq84zqb4z";
         };
         packageRequires = [];
         meta = {
@@ -3666,16 +3656,16 @@
           license = lib.licenses.free;
         };
       }) {};
-    zig-mode = callPackage ({ elpaBuild, emacs, fetchurl, lib }:
+    zig-mode = callPackage ({ elpaBuild, emacs, fetchurl, lib, reformatter }:
       elpaBuild {
         pname = "zig-mode";
         ename = "zig-mode";
         version = "0.0.8";
         src = fetchurl {
           url = "https://elpa.nongnu.org/nongnu/zig-mode-0.0.8.tar";
-          sha256 = "1v9qpc86n9zg765cy93365hj942z0gndkz6grjl2pk31087n3axy";
+          sha256 = "1085lxm6k7b91c0q8jmmir59hzaqi8jgspbs89bvia2vq5x9xd87";
         };
-        packageRequires = [ emacs ];
+        packageRequires = [ emacs reformatter ];
         meta = {
           homepage = "https://elpa.gnu.org/packages/zig-mode.html";
           license = lib.licenses.free;
diff --git a/pkgs/applications/editors/emacs/elisp-packages/recipes-archive-melpa.json b/pkgs/applications/editors/emacs/elisp-packages/recipes-archive-melpa.json
index 659d82c088df..b21538281143 100644
--- a/pkgs/applications/editors/emacs/elisp-packages/recipes-archive-melpa.json
+++ b/pkgs/applications/editors/emacs/elisp-packages/recipes-archive-melpa.json
@@ -260,7 +260,7 @@
     "s"
    ],
    "commit": "966bfcfdd3b2e288576ffe363d676ad282902090",
-   "sha256": "0apcbfaa70kgrpjjsfbr0lg9lcfiijpx5bms4sbzc606vlnxxn0d"
+   "sha256": "0zmzn8rdn1q0dfql3awivhrxd1nrvqr6mb8gv2ynaldyidgsb487"
   }
  },
  {
@@ -271,11 +271,20 @@
   "repo": "afroisalreadyinu/abl-mode",
   "unstable": {
    "version": [
-    20210923,
-    950
+    20240423,
+    1214
+   ],
+   "commit": "e918290b279112c367787ac704398d66759e5298",
+   "sha256": "0xb3jl03i462k9n87yzik816p94p13w08g1vpq80v9hb40sr9vml"
+  },
+  "stable": {
+   "version": [
+    0,
+    9,
+    4
    ],
-   "commit": "7f692cf9bb263b26fda51bb56a58f6ac61febe3b",
-   "sha256": "0al120nvyk0wgnb0isxqshcvg2vki3babsb2sgjkhb7617608akp"
+   "commit": "e918290b279112c367787ac704398d66759e5298",
+   "sha256": "0xb3jl03i462k9n87yzik816p94p13w08g1vpq80v9hb40sr9vml"
   }
  },
  {
@@ -1030,21 +1039,21 @@
   "repo": "xcwen/ac-php",
   "unstable": {
    "version": [
-    20240222,
-    320
+    20240328,
+    1036
    ],
    "deps": [
     "ac-php-core",
     "auto-complete",
     "yasnippet"
    ],
-   "commit": "d4378a857aa1c60b34d86557aa10238785d1ac66",
-   "sha256": "1xz86cjsjm72b0rm50fr2z82rcllhczsd4jr5rnp2clbind5w697"
+   "commit": "a69ae4a12e40900619b4e5a1613fd449aef649c3",
+   "sha256": "1yn5cc6cmj3hwqgmjj44dz847xn5k99kirj36qwc04q7vhl8z8k7"
   },
   "stable": {
    "version": [
     2,
-    6,
+    7,
     0
    ],
    "deps": [
@@ -1052,8 +1061,8 @@
     "auto-complete",
     "yasnippet"
    ],
-   "commit": "d4378a857aa1c60b34d86557aa10238785d1ac66",
-   "sha256": "1xz86cjsjm72b0rm50fr2z82rcllhczsd4jr5rnp2clbind5w697"
+   "commit": "a69ae4a12e40900619b4e5a1613fd449aef649c3",
+   "sha256": "1yn5cc6cmj3hwqgmjj44dz847xn5k99kirj36qwc04q7vhl8z8k7"
   }
  },
  {
@@ -1064,8 +1073,8 @@
   "repo": "xcwen/ac-php",
   "unstable": {
    "version": [
-    20240325,
-    700
+    20240426,
+    653
    ],
    "deps": [
     "dash",
@@ -1075,13 +1084,13 @@
     "s",
     "xcscope"
    ],
-   "commit": "f9a6ad0f3715d7f491bbe2ae7e762a02ed12a2e0",
-   "sha256": "0qhzh2giaqdz6rqvhzgdv85x6ivcxwzhkx0lw5rfx0glvp48svcx"
+   "commit": "810ea813840b980b4f9b43c954e998032fe23f8a",
+   "sha256": "02dv077kn41kd5nr8v1g5cwar8q43s005q5x338ahknbgscys718"
   },
   "stable": {
    "version": [
     2,
-    6,
+    7,
     0
    ],
    "deps": [
@@ -1092,8 +1101,8 @@
     "s",
     "xcscope"
    ],
-   "commit": "d4378a857aa1c60b34d86557aa10238785d1ac66",
-   "sha256": "1xz86cjsjm72b0rm50fr2z82rcllhczsd4jr5rnp2clbind5w697"
+   "commit": "a69ae4a12e40900619b4e5a1613fd449aef649c3",
+   "sha256": "1yn5cc6cmj3hwqgmjj44dz847xn5k99kirj36qwc04q7vhl8z8k7"
   }
  },
  {
@@ -1601,7 +1610,7 @@
     "keyfreq"
    ],
    "commit": "5c3c430b21bcf685c412cf5ceb3769f630082e4f",
-   "sha256": "14p9lmnrpsnx94ycvsqmfxnk5kws0cman4a6fbnikl35ma8zc01x"
+   "sha256": "0zjncby2884cv8nz2ss7i0p17l15lsk88zwvb7b0gr3apbfpcpa3"
   }
  },
  {
@@ -1712,11 +1721,11 @@
   "repo": "brownts/ada-ts-mode",
   "unstable": {
    "version": [
-    20240324,
-    2139
+    20240426,
+    256
    ],
-   "commit": "fe84f62ea68c919bf321ba7b57b059d8d4b2bcd3",
-   "sha256": "12ckhv25an2f5k8w1fsfad7vqlwfi9mzdg30s48dwz4bdll5d065"
+   "commit": "a0c001fd768b062089127b09c838ca51b8214360",
+   "sha256": "1j2hid05fnzd3q5z89xib70n4w530ifpqqlhv0jhg70npwj7pny7"
   }
  },
  {
@@ -1811,11 +1820,11 @@
   "repo": "thierryvolpiatto/addressbook-bookmark",
   "unstable": {
    "version": [
-    20240304,
-    602
+    20240422,
+    1801
    ],
-   "commit": "2e76708a3dc73953c1e0f66e26918690b79424d0",
-   "sha256": "14lvbhaqzg7jhranrpin3xzsxs1w4i6bv2bmkf9pmwyfsw5187lw"
+   "commit": "a990a6d45a11c0e0dee57410d103fe20a4b00a6e",
+   "sha256": "1cjxpx15xgf68n9gb8j2w036nbb41g4k50ib31frgc7drlb89aw3"
   },
   "stable": {
    "version": [
@@ -1886,7 +1895,7 @@
     1033
    ],
    "commit": "04fed0ef795bfe2482998c5b6f87c37c13fe8c50",
-   "sha256": "0klzdgicxfsfwg66a5lnlsfv4mpli6fikplk3qldpwz21652xsz9"
+   "sha256": "0kk571d7ww6j8y6krfsr9v5yvssz8gvfjq4xc3vsgvpzl6bdh8rl"
   },
   "stable": {
    "version": [
@@ -1895,7 +1904,7 @@
     0
    ],
    "commit": "0907961986a582ded514d54a8bfdf691f7bfaf86",
-   "sha256": "0klzdgicxfsfwg66a5lnlsfv4mpli6fikplk3qldpwz21652xsz9"
+   "sha256": "10hm8anw78n37pl9rz3dnjphrnsxf3fy00d008gayn70jfjl1433"
   }
  },
  {
@@ -2050,20 +2059,20 @@
   "repo": "anticomputer/age.el",
   "unstable": {
    "version": [
-    20230115,
-    1155
+    20240410,
+    433
    ],
-   "commit": "9e82487234c53e0fab2314aeab6479e62c68f0c7",
-   "sha256": "1x1f224xbwaan4rc1589gipl5a7llr3rxxf85i4y8zz2vfl478dp"
+   "commit": "890c467ebc27538507c54a03afd2f7260630d7f5",
+   "sha256": "0777nvrvswv81g0rkclm7r2ai1xfjf380lhg8lidd060dkp71ic1"
   },
   "stable": {
    "version": [
     0,
     1,
-    4
+    5
    ],
-   "commit": "0c94618fc10105da751007f90b44075f6e5d61ba",
-   "sha256": "1dvpa4p1rbpnxh4bcg2zz5y3df40k7r16m9lj4grv926cf1i4hl9"
+   "commit": "890c467ebc27538507c54a03afd2f7260630d7f5",
+   "sha256": "0777nvrvswv81g0rkclm7r2ai1xfjf380lhg8lidd060dkp71ic1"
   }
  },
  {
@@ -2433,7 +2442,7 @@
     0
    ],
    "commit": "97c20b1fd9ad3f138e1100e3a837d05108c4c564",
-   "sha256": "1x4apig2hrvvy6pjciklmz5afpq5l4rmfjahc2wvyzs79abh0icx"
+   "sha256": "1wsvs756cbwbxlaxij352kman7196m39684m6sqnfb685cfrwzdj"
   }
  },
  {
@@ -2972,11 +2981,11 @@
   "repo": "jordonbiondo/ample-theme",
   "unstable": {
    "version": [
-    20180207,
-    1745
+    20240426,
+    1545
    ],
-   "commit": "366698400c555211c2082962a5d74f3dd79a78c8",
-   "sha256": "1kzb15aqy7n2wxibmnihya7n6ajs34jxp9iin96n758nza92m59c"
+   "commit": "39ac29cf9a1229bb076964335fbd71cfb52e498b",
+   "sha256": "1s2k1r3wwvwa3rkfsyg5y9386fl0v4qzlqriwldblpq5glyg40qq"
   }
  },
  {
@@ -3309,7 +3318,7 @@
     806
    ],
    "commit": "6ad8c6be4f44de0c33eab012e507320b732d4800",
-   "sha256": "0cq960q11lpic6zcw71z2ap80jzrzgcwwy2vwhgc1zwi8k8l9i4q"
+   "sha256": "1pg0xqzixw3nq68hsy263q7j76fggy6wqgmcl5yd0wfhbzd23qqz"
   }
  },
  {
@@ -3405,11 +3414,11 @@
   "repo": "bastibe/annotate.el",
   "unstable": {
    "version": [
-    20240320,
-    1350
+    20240326,
+    1828
    ],
-   "commit": "9d88cc7ffed6f79f81a83a914554e264e35a575c",
-   "sha256": "116gcg09nrxpbvgv3h1hmgy2y12xl57rgy6ki0ayw6li7zn7df4j"
+   "commit": "3a27be3aa024d314da84c89cb86af58dbf3a2cb9",
+   "sha256": "02rv530xhcxlgqlj0cywcg3r2yhgv055fr9d3fa82g6nq364qf03"
   },
   "stable": {
    "version": [
@@ -3619,7 +3628,7 @@
     0
    ],
    "commit": "785f0bad0c73069e6c41ca543c29675785b614a8",
-   "sha256": "05q548dyb620kg12mgkmw6jpwbr2y2aqs5p7314y2c37khvw5irg"
+   "sha256": "1ja0q2z9kqkz3ycclgaw1ib83cjh6kym9lrikni0if3spbb0df3w"
   }
  },
  {
@@ -3824,11 +3833,11 @@
   "repo": "radian-software/apheleia",
   "unstable": {
    "version": [
-    20240323,
-    216
+    20240413,
+    2257
    ],
-   "commit": "3e89e62922d610a3429707710d6636244a3c3f76",
-   "sha256": "1g711i4xims1mdh59cr0plfif17c9j9crgd7vv777xh19qff5imd"
+   "commit": "66bf5195b4e922f23a9d573f2823daeb63e7ed5b",
+   "sha256": "0yqks35q9vv7qymwx96b9smmg7dpb12lacclq63ypfhkwakd2wgg"
   },
   "stable": {
    "version": [
@@ -3899,11 +3908,11 @@
   "repo": "Greybeard-Entertainment/app-monochrome",
   "unstable": {
    "version": [
-    20240303,
-    1628
+    20240406,
+    36
    ],
-   "commit": "84de8c0424cd51feaf758cc636d9864e7311864c",
-   "sha256": "0m7ka3zwfka5d484j5v6f96jr5n8rs4qbb8vvw5r2nhky9ji4cna"
+   "commit": "9324ec430a5154853c1da711e1c9738d61f1135a",
+   "sha256": "09jxb4b4lb19z2dfvpa0rjba89gcsphkx5d45p56rbb1b0i3h5iz"
   }
  },
  {
@@ -4598,11 +4607,11 @@
   "repo": "meedstrom/asyncloop",
   "unstable": {
    "version": [
-    20240324,
-    2057
+    20240407,
+    1153
    ],
-   "commit": "22d299cd0ba0c8d407acba6cb22ed8f7be4161a6",
-   "sha256": "15nil21m02h864vqpmnwpdd2p5zsihx86lrkvqil1zvziwykxx2x"
+   "commit": "46e38388870b238221a4d96017874309aada7660",
+   "sha256": "188633b7fxy94xpdafksxxh3hd9cahcrg1f62d6p2j0qvw9a9ly7"
   },
   "stable": {
    "version": [
@@ -5126,11 +5135,11 @@
   "repo": "emacscollective/auto-compile",
   "unstable": {
    "version": [
-    20240321,
-    2014
+    20240415,
+    1533
    ],
-   "commit": "4ba644f3e3e33afb2b263e9d184b6e2b70d5fadd",
-   "sha256": "1h0rq69flrjj65wa1x7x0ispm041qr2xrzs5qxciabhav2hs3hqh"
+   "commit": "01844064e3f2bb9f109a8a064998baf89a864fbc",
+   "sha256": "1syrwi1rb9w4y4fi8kckvd27i879w35y0sbmlhqpp2li0yx51wwa"
   },
   "stable": {
    "version": [
@@ -6355,26 +6364,26 @@
   "repo": "licht1stein/babashka.el",
   "unstable": {
    "version": [
-    20230808,
-    2140
+    20240417,
+    1347
    ],
    "deps": [
     "parseedn"
    ],
-   "commit": "1721f68ea8e34e8a6ab2759a04c1a01cedfdd319",
-   "sha256": "0yjqwshwhcfylajfsks1xvkgqarcnlhwfdy3i587jdw799434vb0"
+   "commit": "117138c0b7361e70282ee53825e2f4de1a782609",
+   "sha256": "1k3zy6y682g3sab0by6lp9bbx8w4m9npjpjkxhhxgcqhglhpqcm4"
   },
   "stable": {
    "version": [
     1,
     0,
-    6
+    7
    ],
    "deps": [
     "parseedn"
    ],
-   "commit": "1721f68ea8e34e8a6ab2759a04c1a01cedfdd319",
-   "sha256": "0yjqwshwhcfylajfsks1xvkgqarcnlhwfdy3i587jdw799434vb0"
+   "commit": "117138c0b7361e70282ee53825e2f4de1a782609",
+   "sha256": "1k3zy6y682g3sab0by6lp9bbx8w4m9npjpjkxhhxgcqhglhpqcm4"
   }
  },
  {
@@ -6476,15 +6485,15 @@
   "repo": "tarsius/backline",
   "unstable": {
    "version": [
-    20240306,
-    1822
+    20240415,
+    1533
    ],
    "deps": [
     "compat",
     "outline-minor-faces"
    ],
-   "commit": "1bbfc53a92fbae5a2b4afa34584a008dc9337c3e",
-   "sha256": "0hlkj2478s2j49bkmr4fg8za6frchqw8f3f5496gsy4kzdv3n9qk"
+   "commit": "f070ebb33eb44087e07ff647d8d87d1b27ce40d4",
+   "sha256": "0d0dh67acqzqsys5rn0lfd8xwg4mhcyk32093s0qwybvsx42x7ng"
   },
   "stable": {
    "version": [
@@ -6710,11 +6719,11 @@
   "repo": "tinted-theming/base16-emacs",
   "unstable": {
    "version": [
-    20240218,
-    58
+    20240421,
+    101
    ],
-   "commit": "c24d84b6c4794d1fc92429b6c70009434a137fe4",
-   "sha256": "17am6rx8xmkkfx6dlbchym3xaj341z1aaam6zk3nkjxyz8srbm1c"
+   "commit": "c7ea8116d331fd9ce913267489e7846c34795b38",
+   "sha256": "07vziyp5nn1rxgx0z467yjahvm90w5f62h5ysggrp924ywwzblp5"
   },
   "stable": {
    "version": [
@@ -6737,7 +6746,7 @@
     1821
    ],
    "commit": "927257e97a602b6979a75028e8417bf1499582d4",
-   "sha256": "1vw1vpnxa4qxbdsmis8d0df3qhwr1c5h0q04rvwmyviixd729mlr"
+   "sha256": "1jbpf28918pjiqhw8rackv9r8iq9ydd3jw1zwwifznglmpyca7jk"
   },
   "stable": {
    "version": [
@@ -6745,7 +6754,7 @@
     1
    ],
    "commit": "927257e97a602b6979a75028e8417bf1499582d4",
-   "sha256": "1vw1vpnxa4qxbdsmis8d0df3qhwr1c5h0q04rvwmyviixd729mlr"
+   "sha256": "1jbpf28918pjiqhw8rackv9r8iq9ydd3jw1zwwifznglmpyca7jk"
   }
  },
  {
@@ -6826,7 +6835,7 @@
     "flycheck"
    ],
    "commit": "5bfd5f91b9f91e46158e0419c6bb5c350e7684a1",
-   "sha256": "0mb85g7bydd0nv3hjzvqb3d01cs4hg5846ibcznaqhsqk93pgm2h"
+   "sha256": "0nb6dbk8aclkq7jki52y4lwgbxg61xh1598l08yfv2l1ykhgg0n0"
   }
  },
  {
@@ -7808,14 +7817,14 @@
   "repo": "tarsius/bicycle",
   "unstable": {
    "version": [
-    20240101,
-    2211
+    20240415,
+    1533
    ],
    "deps": [
     "compat"
    ],
-   "commit": "998e39095481ced3844efaa8f8f0c5343641df9e",
-   "sha256": "0rh8rhmhc373h1zggs9xlfa4yidqq8b3ms45xfi4zax0dk38003j"
+   "commit": "0ac08d9946f0da7066a6c2242025b42983c0c2e8",
+   "sha256": "1pp8m5ai7353jzm54laxg3l1c3xfsk32dlrg8wnpz6cgqkd47ajs"
   },
   "stable": {
    "version": [
@@ -8049,11 +8058,11 @@
   "repo": "liuyinz/binky.el",
   "unstable": {
    "version": [
-    20240107,
-    2156
+    20240428,
+    352
    ],
-   "commit": "9c0d99b345dc310a31a187c52d092965a26de70a",
-   "sha256": "0dagrwmh364yaxbm4sxhscych77j8dksqw5034d27vc0q23nwh5w"
+   "commit": "d5717053910f1d66f16c22a3d8834b43a507575e",
+   "sha256": "1z8yv4xvg2rvc9djkcp72r8b8x0bd26sp2zrfd780wcw4rar6ada"
   },
   "stable": {
    "version": [
@@ -8073,8 +8082,8 @@
   "repo": "SqrtMinusOne/biome",
   "unstable": {
    "version": [
-    20240311,
-    2154
+    20240426,
+    1407
    ],
    "deps": [
     "compat",
@@ -8082,8 +8091,32 @@
     "request",
     "transient"
    ],
-   "commit": "d393ddbb70f1f27632c7ec63fe96e0179b708714",
-   "sha256": "10r85yjiqd656alhi41n7ykyswj51g2sanacnkfsmdaj97rv9zy4"
+   "commit": "804a0576f5c87c167c61f00d037581688ab806be",
+   "sha256": "0izip46biwsmyc862jz4k9dlc27ilmcxdw7nb3wjsc98hsd72512"
+  }
+ },
+ {
+  "ename": "biomejs-format",
+  "commit": "ecb7ca09d7ecd60c665ac4b5fceefd1a005274fa",
+  "sha256": "0zvhv27pglmnjqnnk4sgm02dzcgkz00lya187xpcxl1gkczr6igl",
+  "fetcher": "github",
+  "repo": "yadex205/emacs-biomejs-format",
+  "unstable": {
+   "version": [
+    20240401,
+    458
+   ],
+   "commit": "cbfb8aac8bfab6fd893f1ccb4eb9efa29b1b3214",
+   "sha256": "04v4qms7yz85hicpxp3a99kv6mx8dnds0f6l0fddvm1l0bmylib8"
+  },
+  "stable": {
+   "version": [
+    0,
+    1,
+    1
+   ],
+   "commit": "cbfb8aac8bfab6fd893f1ccb4eb9efa29b1b3214",
+   "sha256": "04v4qms7yz85hicpxp3a99kv6mx8dnds0f6l0fddvm1l0bmylib8"
   }
  },
  {
@@ -8813,11 +8846,11 @@
   "repo": "ideasman42/emacs-bookmark-in-project",
   "unstable": {
    "version": [
-    20230604,
-    757
+    20240421,
+    322
    ],
-   "commit": "b3255afd8bddd0e6705fa2556205bf1c1192fc37",
-   "sha256": "1c5pnvv1mh2xkzxps5x9d12javzxb8rzmix1x9hm12q7y9anl9jp"
+   "commit": "369161f257921747c3b540eac7bc8eb4aa8186b9",
+   "sha256": "0346ljcb6b31y4wh5gikb7lpjpn4sqisk7frbdxqcp5yy15i1pmf"
   }
  },
  {
@@ -8908,15 +8941,15 @@
   "repo": "emacscollective/borg",
   "unstable": {
    "version": [
-    20240320,
-    2244
+    20240415,
+    1553
    ],
    "deps": [
     "epkg",
     "magit"
    ],
-   "commit": "96ea859c8da74f415b76ccc8dd63b27ce0b6b267",
-   "sha256": "0gpjc7cz6hrpnq4va3klgy313s26hhibl7rfpwy4iscmslzhgdw1"
+   "commit": "dfc5d58b439042a6e323cb342ab7531692d118a0",
+   "sha256": "02rq0ps327v8xlhs69r0cxicg4kljcza8ha7gks7z728hprwvhdl"
   },
   "stable": {
    "version": [
@@ -9042,15 +9075,15 @@
     2201
    ],
    "commit": "587b39ea7a1d786df5c04796d51bf2a5a4eda0d7",
-   "sha256": "14nxqlrza35l955zgc4yi9yaymd9slyyyjmbnbd831v8jlddngm9"
+   "sha256": "0bvg2vpak2bv3s7wc0zzrqb3pys5s7vi6rs7k7l4fmaj5amaq9vb"
   }
  },
  {
   "ename": "bpr",
-  "commit": "05eed39bae37cc8359d2cc678052cbbcc946e379",
-  "sha256": "0rjxn40n4s4xdq51bq0w3455g9pli2pvcf1gnbr96zawbngrw6x2",
+  "commit": "422e51d5467b6a417147e07865392f17dcc6de21",
+  "sha256": "1jpwx0z5wb20jv1mnl0d8azzpak39swbsjvym7aqvhjiy4zagcfq",
   "fetcher": "github",
-  "repo": "ilya-babanov/emacs-bpr",
+  "repo": "iliabv/emacs-bpr",
   "unstable": {
    "version": [
     20180220,
@@ -9140,11 +9173,11 @@
   "repo": "Michael-Allan/Breccia.Emacs",
   "unstable": {
    "version": [
-    20240324,
-    900
+    20240425,
+    2224
    ],
-   "commit": "1cc2ed75572d0dad693914e33ec5c440f7bff536",
-   "sha256": "0jfhnib7yziy1qqiyyjd17vcp8rbf5ha21wvcqayknhkrhxc4b97"
+   "commit": "fd8c536bb24cc58447213f8cada94f96ccf036dc",
+   "sha256": "0rlgxkv8grsyxl9k8jmlnmaakzzw4jnmm48y29sg50mjaj219gf7"
   }
  },
  {
@@ -9319,6 +9352,21 @@
   }
  },
  {
+  "ename": "browser-hist",
+  "commit": "bc155dcf3df95ab12a305d0f2cf67a04bf4bc82a",
+  "sha256": "0x6582c5sdqy63i0yn9p3d2v0n42l3a4gpr2bbs31vxl7hw4dasl",
+  "fetcher": "github",
+  "repo": "agzam/browser-hist.el",
+  "unstable": {
+   "version": [
+    20240402,
+    2345
+   ],
+   "commit": "0b7e93274173e82c05e5d9c9d3055e4b9017612a",
+   "sha256": "0jsq1sk4vbs3r7lhz28a550w88qq0mj6y2ra5ry351dnxsypsmsn"
+  }
+ },
+ {
   "ename": "brutalist-theme",
   "commit": "ec889956a5685c3a60003ad2bfa04b03b57aa8e8",
   "sha256": "0dg0432r3cpjgdlpz583vky4hj5vld9d25dvaj6nxlir2ph9g9hn",
@@ -9575,11 +9623,11 @@
   "repo": "ideasman42/emacs-buffer-name-relative",
   "unstable": {
    "version": [
-    20240204,
-    1219
+    20240421,
+    324
    ],
-   "commit": "b1e878e97df0cd02348e1aed95738c0c3a32f148",
-   "sha256": "002xrfx0rkq3lwribpxgimxw813nwflvwl7g7ywc5xi9v41jv56j"
+   "commit": "2e681c7277f599a319d99182284eebe13cd654e3",
+   "sha256": "1flkps9v7dgggbd7pbz0pgj8p3gwyjlzzpbgv9xbpdmyfqxbb1m3"
   }
  },
  {
@@ -10126,19 +10174,19 @@
   "repo": "jorgenschaefer/emacs-buttercup",
   "unstable": {
    "version": [
-    20240320,
-    2109
+    20240328,
+    2016
    ],
-   "commit": "be25a149fcec1a33d1dfbdf42b265a9f0a958ef5",
-   "sha256": "160ijybvs2msilbh2yfm13hm3gxzkr9if9h7qqw62jsnk2nfb7h2"
+   "commit": "a1a86b027ffe030e1c78a9f43c50cd20a6fed19a",
+   "sha256": "0s5c7ia7b873dr6rqljkb1z4bf84zb3p3wjvcvpjhdcnf67m5x10"
   },
   "stable": {
    "version": [
     1,
-    34
+    35
    ],
-   "commit": "c0764a764cf088dcb5132c44d5864b22d7723765",
-   "sha256": "07bsbzqxsb6sbayriymy54bqcy7is7c61fpnm83mg9527w0w4g19"
+   "commit": "a1a86b027ffe030e1c78a9f43c50cd20a6fed19a",
+   "sha256": "0s5c7ia7b873dr6rqljkb1z4bf84zb3p3wjvcvpjhdcnf67m5x10"
   }
  },
  {
@@ -10149,26 +10197,26 @@
   "url": "https://bitbucket.org/olanilsson/buttercup-junit",
   "unstable": {
    "version": [
-    20190802,
-    2258
+    20240423,
+    2158
    ],
    "deps": [
     "buttercup"
    ],
-   "commit": "6bc28b6b0f36fb71b0915c9e45963c840c64a8df",
-   "sha256": "1rayxq1va7jpikfr37p8nq2pv339mhq7zqy082kzwvj5q6qfw88s"
+   "commit": "877daa33fc3fc23f2a3d633e28650c04534458b5",
+   "sha256": "058spm1bm3gyzfm3vvpp8m96xsyaj3wh5nynbjv23kbkrdyr7s6v"
   },
   "stable": {
    "version": [
     1,
     1,
-    1
+    2
    ],
    "deps": [
     "buttercup"
    ],
-   "commit": "6bc28b6b0f36fb71b0915c9e45963c840c64a8df",
-   "sha256": "1rayxq1va7jpikfr37p8nq2pv339mhq7zqy082kzwvj5q6qfw88s"
+   "commit": "877daa33fc3fc23f2a3d633e28650c04534458b5",
+   "sha256": "058spm1bm3gyzfm3vvpp8m96xsyaj3wh5nynbjv23kbkrdyr7s6v"
   }
  },
  {
@@ -10656,8 +10704,8 @@
   "repo": "chenyanming/calibredb.el",
   "unstable": {
    "version": [
-    20231107,
-    302
+    20240331,
+    409
    ],
    "deps": [
     "dash",
@@ -10667,8 +10715,8 @@
     "s",
     "transient"
    ],
-   "commit": "124c916f203511c64d03fac28d303dfb102a6ead",
-   "sha256": "0qmqk7a9ci3zwq6sv642898axnq9bw9nrb920s2yza43nj1pc860"
+   "commit": "b526095e4b1c7866958fe53518eb897a8c87a19b",
+   "sha256": "0092v35yv63ijqaqwjp368kw295f07p1vc2hlqx4fgarsz6kc71n"
   },
   "stable": {
    "version": [
@@ -10835,25 +10883,25 @@
   "repo": "minad/cape",
   "unstable": {
    "version": [
-    20240315,
-    542
+    20240411,
+    2207
    ],
    "deps": [
     "compat"
    ],
-   "commit": "a397a0c92de38277b7f835fa999fac400a764908",
-   "sha256": "1mixvpmb2njxziv8mbg6hrczzlvdzrn9zz01cswjywb8bl35l87h"
+   "commit": "bf22aa6ce0ffca1a1a77b693dddcd05eddc386f0",
+   "sha256": "1ah0nwib2k46467j0fhq9kckx7cqnjgwpdb7zk9jw8rbrjlndcpw"
   },
   "stable": {
    "version": [
     1,
-    4
+    5
    ],
    "deps": [
     "compat"
    ],
-   "commit": "af61a4e670818f100beb6ef582449931b3965b10",
-   "sha256": "1ml3w9xvcxbcbsi01rdsclsxra5h7jrm9lsrkbj1hin2wl5gr9np"
+   "commit": "bf22aa6ce0ffca1a1a77b693dddcd05eddc386f0",
+   "sha256": "1ah0nwib2k46467j0fhq9kckx7cqnjgwpdb7zk9jw8rbrjlndcpw"
   }
  },
  {
@@ -11197,26 +11245,26 @@
  },
  {
   "ename": "casual",
-  "commit": "dcc5db335679fde21244f2c4f102acdc425e6258",
-  "sha256": "0q7s11ynk6bxzj5lljrc5z3v4jf7n10fi5b1jx7bc3qdg7173z3p",
+  "commit": "8eeb0f07cd1b2fff661cf6523390e81adfc060ba",
+  "sha256": "0d33xs732pnc4z29w13amslpx9qqbaxms7apqdwxcsyr8jsvybw0",
   "fetcher": "github",
-  "repo": "kickingvegas/casual",
+  "repo": "kickingvegas/Casual",
   "unstable": {
    "version": [
-    20240317,
-    2027
+    20240416,
+    2237
    ],
-   "commit": "643af803258fd9524582fc1d56472ea44c70100f",
-   "sha256": "1jw82q82qzr41v7clwjcfvlhvyd02pacikga1sjfiq9bw9dj3alg"
+   "commit": "a22cf128c3baa3e11f6aaff7dc44ef91cf0fe9ce",
+   "sha256": "0sx3hqpp8ikp3avzcj4d601zh80rs7qi2azl0vmgc4ymrd7g1af8"
   },
   "stable": {
    "version": [
     1,
-    2,
-    1
+    5,
+    0
    ],
-   "commit": "643af803258fd9524582fc1d56472ea44c70100f",
-   "sha256": "1jw82q82qzr41v7clwjcfvlhvyd02pacikga1sjfiq9bw9dj3alg"
+   "commit": "a22cf128c3baa3e11f6aaff7dc44ef91cf0fe9ce",
+   "sha256": "0sx3hqpp8ikp3avzcj4d601zh80rs7qi2azl0vmgc4ymrd7g1af8"
   }
  },
  {
@@ -11251,11 +11299,11 @@
   "repo": "catppuccin/emacs",
   "unstable": {
    "version": [
-    20231213,
-    1318
+    20240326,
+    900
    ],
-   "commit": "1e9bdb0c19bf13c27a32b1adeabcace45fcbfd15",
-   "sha256": "1cv46rqdd159plnqdkl74zwcgmbndq81d02g41a327hdwbpahp6v"
+   "commit": "3d93abaa33e95f19b4a8b0e1e9bef1e3e68dd994",
+   "sha256": "1j6nsy9is067288x2riabb7kc3grghb2g7bkvwndn2jyglbbxgi0"
   },
   "stable": {
    "version": [
@@ -11349,20 +11397,20 @@
   "repo": "kickingvegas/cc-isearch-menu",
   "unstable": {
    "version": [
-    20240320,
-    532
+    20240401,
+    48
    ],
-   "commit": "4ffb8c42b84a2b3c1773d285980b46110920928e",
-   "sha256": "0v1pxs3cfb9n5gmcrhni425wxwian4vwzhzpnq6bvks8h03ch18r"
+   "commit": "6eecc77a89ea63cab69fc8eb6dd1c32ad582b05b",
+   "sha256": "057bsx330da9vpn0292gxzn9gary5piqinmrw8hk072iwgk6kdwi"
   },
   "stable": {
    "version": [
     1,
-    3,
+    4,
     1
    ],
-   "commit": "4ffb8c42b84a2b3c1773d285980b46110920928e",
-   "sha256": "0v1pxs3cfb9n5gmcrhni425wxwian4vwzhzpnq6bvks8h03ch18r"
+   "commit": "6eecc77a89ea63cab69fc8eb6dd1c32ad582b05b",
+   "sha256": "057bsx330da9vpn0292gxzn9gary5piqinmrw8hk072iwgk6kdwi"
   }
  },
  {
@@ -11388,15 +11436,15 @@
   "repo": "emacs-lsp/emacs-ccls",
   "unstable": {
    "version": [
-    20240124,
-    1050
+    20240331,
+    2132
    ],
    "deps": [
     "dash",
     "lsp-mode"
    ],
-   "commit": "9b4a47e0418de8cc2fc93317e27cbdde75286df1",
-   "sha256": "0kj0naml21l5y5pyy1z9x1yqj76wm13ck1kkki9vp4g60w0ac0v7"
+   "commit": "9c91aad768d5c401295c79f341c5296b69b29490",
+   "sha256": "0m4q3zs6sr12avh9wr800wxr8lps7k0nzbgf4nckmzsavqb6csrh"
   }
  },
  {
@@ -11560,15 +11608,15 @@
   "repo": "ema2159/centaur-tabs",
   "unstable": {
    "version": [
-    20230607,
-    1501
+    20240411,
+    2153
    ],
    "deps": [
     "cl-lib",
     "powerline"
    ],
-   "commit": "0bb1aa18d475319df85f192dce3327802866c3c3",
-   "sha256": "1115a5gp73brpam69wryxzci5rl844r2hxw91n4fa15sma9hz5dx"
+   "commit": "24d90efc72754cd1197a0c2f14d18e7c90dd2b4f",
+   "sha256": "03j73jhda6pbw203w21zk7w97fv5isr6fdbip40h9id7f112vhaw"
   },
   "stable": {
    "version": [
@@ -11693,20 +11741,20 @@
   "repo": "jaypmorgan/cern-root-mode",
   "unstable": {
    "version": [
-    20220905,
-    2016
+    20240411,
+    1355
    ],
-   "commit": "a54241681012b00b514fd20ff894e3c4c83b45c7",
-   "sha256": "0kxwpzkxbwc02d70aykqs2y35rl923iy8h5l8vm8jy60s6ns8qb5"
+   "commit": "d769530ddfbe57cc3c319b430c8a37c72c8ce52c",
+   "sha256": "0amrxs05s1wiwjpw7hkrgai3p41rvgnar3myyg52rq8l6p9kych5"
   },
   "stable": {
    "version": [
     0,
     1,
-    4
+    5
    ],
-   "commit": "2df8781df1d807bf522eb19ac7b03b4bfaeb89c0",
-   "sha256": "159q50m8sr4adw7czkq0mq6hq43svkk2psx0wnmmb1aa8ivhwyip"
+   "commit": "2c9c6ea100d9be31733f2f2c4ea8bcda85600254",
+   "sha256": "17yk9d14kca8j92pi85w5cvdzw1dvw7w5gh9n7a3z79rgg4i4497"
   }
  },
  {
@@ -11788,16 +11836,16 @@
   "repo": "worr/cfn-mode",
   "unstable": {
    "version": [
-    20240324,
-    904
+    20240421,
+    805
    ],
    "deps": [
     "f",
     "s",
     "yaml-mode"
    ],
-   "commit": "9431e2261b74a5e5a4bc3d243b0e3433aec45e74",
-   "sha256": "0ziwx73zwshazkp63lzyhfsdfdsavmzas4ngsrd4rv4mpj41w68c"
+   "commit": "3aa78685b9158022f49da43821c0888f377fa213",
+   "sha256": "0jarry76dzhn9zh41bfzyinibifzcxbzs8vmkdlpd0d97npcdxjh"
   },
   "stable": {
    "version": [
@@ -11887,11 +11935,11 @@
   "repo": "GrammarSoft/cg3",
   "unstable": {
    "version": [
-    20230920,
-    1245
+    20240419,
+    1148
    ],
-   "commit": "14367436c123220a0bb84987db51b6c774ac813a",
-   "sha256": "0k8v4zxr0ijpzz7g0la18mb6imjlz3957incm01xzbivn5dkzlr5"
+   "commit": "913974345a9fce9e6ac76934ed535df7e44d47d6",
+   "sha256": "183agf7njdg1zcrclfpa84izwwy230730anz3cz1rr0r77cqvmgv"
   },
   "stable": {
    "version": [
@@ -12058,14 +12106,14 @@
   "repo": "xenodium/chatgpt-shell",
   "unstable": {
    "version": [
-    20240306,
-    857
+    20240402,
+    2216
    ],
    "deps": [
     "shell-maker"
    ],
-   "commit": "bf2d12ed2ed60c498d95215fa1cf81c2b23191a7",
-   "sha256": "0jv0zxmfv59h2cljk55syvl7rgpfy6zfydzm9bms2wyj68rv24pr"
+   "commit": "42cf53ba7d43e0622e8c4c57ef8f635e1248182b",
+   "sha256": "1lg3ymw6vsxkk8vpkbyia5l3xl2bgsk2xsw5n5nrhax9qs3axh1b"
   }
  },
  {
@@ -12076,15 +12124,15 @@
   "repo": "kimim/chatu",
   "unstable": {
    "version": [
-    20240308,
-    1129
+    20240425,
+    1349
    ],
    "deps": [
     "org",
     "plantuml-mode"
    ],
-   "commit": "63a42219b28b2011e86ae5e8abb1366b65a25347",
-   "sha256": "0r0r3899yqy946sa2d3xfi565jh85yh9wcz9wylvrkar4rb70b6b"
+   "commit": "3175ac95de1a1dc75ff5be1bf3a2e80e0abd5229",
+   "sha256": "0wf63z7ang91gzqqh0d2a5h41zdvm9xkblkkz0ldp4ppk8wpggkg"
   }
  },
  {
@@ -12716,8 +12764,8 @@
   "repo": "clojure-emacs/cider",
   "unstable": {
    "version": [
-    20240310,
-    1926
+    20240424,
+    1919
    ],
    "deps": [
     "clojure-mode",
@@ -12728,8 +12776,8 @@
     "spinner",
     "transient"
    ],
-   "commit": "c4fa1a84a3b3d03ef5f61cc5d33ff4e91b9a1dce",
-   "sha256": "1mm4i7fjpdhqpjknziccpwm0kndb9c4dkmj52ff69dffm4zqps17"
+   "commit": "1cd6ab7b7cb4a7e079a273600c4d28307c3aba40",
+   "sha256": "1hcj1fwp2433j3vfmzyv8sh4icg6rsk70av6prrg4adqwzgvhh7m"
   },
   "stable": {
    "version": [
@@ -12926,20 +12974,20 @@
   "repo": "guidoschmidt/circadian.el",
   "unstable": {
    "version": [
-    20231027,
-    744
+    20221223,
+    1419
    ],
-   "commit": "b3bb94040080ac18aab04b010752d4984feee37b",
-   "sha256": "062mci931fwaf12cyw0kidavasdkfcd415iiwizdvlb2dmr3qmsk"
+   "commit": "f20cdbf164be10ef0c55d26eba4d270c7c826f42",
+   "sha256": "03wh3zb1pwvjn990bvd461397v8fh5y6asy0g5wb7x86sg6za1hg"
   },
   "stable": {
    "version": [
     0,
-    3,
-    3
+    4,
+    0
    ],
-   "commit": "9959e4b9d2ed9920b668fc229aab1f5fa5bd8584",
-   "sha256": "1hydxhmcchaprfmp08xr6nlksz6y97jbf4mswj69bgdfjfbf22km"
+   "commit": "323039363588028c629604fae17b73a3d3c821cc",
+   "sha256": "108qsmzdbk4jw445chl6zhbd0mb95w3lc30c6jaijn4y7ys3dmls"
   }
  },
  {
@@ -12950,14 +12998,14 @@
   "repo": "emacs-circe/circe",
   "unstable": {
    "version": [
-    20240227,
-    2116
+    20240407,
+    1101
    ],
    "deps": [
     "cl-lib"
    ],
-   "commit": "7044e07ab235ae09498c430558449750ec1e6a9f",
-   "sha256": "103ljkymlkr50w937mc2yjj0xdq8i2p7xl25xv4r74fignd29m55"
+   "commit": "9d703f481a2c65f2b17edcc2b05412f9865d24af",
+   "sha256": "1k8hydd45zqhbfd4lmcdr46wxj9m788wwjmr9ss0vyrqc0w6z6zw"
   },
   "stable": {
    "version": [
@@ -13028,16 +13076,16 @@
   "repo": "emacs-citar/citar",
   "unstable": {
    "version": [
-    20231226,
-    1453
+    20240419,
+    2232
    ],
    "deps": [
     "citeproc",
     "org",
     "parsebib"
    ],
-   "commit": "885b86f6733fd70f42c32dd7791d3447f93db990",
-   "sha256": "1kzwllhcn77z6gsdxl6r1csv9nj64qbgznpy8r8kvnri3fl55w4h"
+   "commit": "07d2a63c99fe35cbd468f8e6a322de05f1a29469",
+   "sha256": "0806av5mbxnhgmdam47lz6bswi8fr9xq4hff8had7l7g27adldgy"
   },
   "stable": {
    "version": [
@@ -13062,16 +13110,16 @@
   "repo": "pprevos/citar-denote",
   "unstable": {
    "version": [
-    20240228,
-    807
+    20240424,
+    2023
    ],
    "deps": [
     "citar",
     "dash",
     "denote"
    ],
-   "commit": "43ecacd818f0b569b949d160bd86bff5bbe4b0f7",
-   "sha256": "143inb9i1xccnzj83qg2rczfizhqwshkhsa0rh3wi99hvxjigkif"
+   "commit": "6e236e9100d1401cd7c628c5f799badded77967d",
+   "sha256": "0yqjigf4qj296q15dkq0qpwab9a80fn5rafb192ykh5qg8sbhc2v"
   },
   "stable": {
    "version": [
@@ -13241,20 +13289,19 @@
   "repo": "universal-ctags/citre",
   "unstable": {
    "version": [
-    20240203,
-    457
+    20240425,
+    1635
    ],
-   "commit": "155251127bbb51588445ed8fa49368cff1fff2c2",
-   "sha256": "1r12haizv0bl69dl0myfng9sivblsq4njz1wc9r0i6nsfknravxr"
+   "commit": "a78cf13d5c3c1c0275b332da5888cd0973de70fe",
+   "sha256": "0fjv9s8x533dmy4vnz2k56ydwydjiak8hp4mk9yvcnam5j1vi51v"
   },
   "stable": {
    "version": [
     0,
-    3,
-    1
+    4
    ],
-   "commit": "050bb7cafc2a89379406f363f7120ac56177ede7",
-   "sha256": "168z6yidh2nxkmdlx9cqdzzb7achxdipnbk5pj9787m9bp1sdpkd"
+   "commit": "ac01a5c5852fa3a170e5f00dafeb633012e25fd8",
+   "sha256": "0fq1f03v706gj6p2fjz51kvmj1pwc9p64chqap2ajr0a9cxpwln6"
   }
  },
  {
@@ -13365,6 +13412,24 @@
   }
  },
  {
+  "ename": "claude-shell",
+  "commit": "a40f86ecc9a185f065a720318ff69afc10d92535",
+  "sha256": "0lqw9qra8zdafwnyfm164h2nzh6ys5ndbf75s4dnwjpg5lxv135y",
+  "fetcher": "github",
+  "repo": "arminfriedl/claude-shell",
+  "unstable": {
+   "version": [
+    20240420,
+    1917
+   ],
+   "deps": [
+    "shell-maker"
+   ],
+   "commit": "2574f5d1fe58c44dc0e16d3a7be36a9e4e0927ca",
+   "sha256": "1my1n0bsx7xghaxa3qyrsqkdn3nxxym00acncp24b1hsm63k12yx"
+  }
+ },
+ {
   "ename": "clause",
   "commit": "668db1dd1695ce8a864a4fc5f5e9daca2770da0f",
   "sha256": "0ag09asq10ln2m0qznn5vnx5y7nv48lh7bwgwd30yjwp8ldw7v84",
@@ -13390,14 +13455,14 @@
   "repo": "scicloj/clay.el",
   "unstable": {
    "version": [
-    20240115,
-    2125
+    20240409,
+    1321
    ],
    "deps": [
     "cider"
    ],
-   "commit": "26b65a107cf55e4955401d3dbc63d58479f29773",
-   "sha256": "0i3zf2q0jf0f18kqg287xmiywf44cgg90ym8y8c67fmvpz5c13sv"
+   "commit": "5d5512e67e7dd4b7b7ffae070517948cb1ad82e4",
+   "sha256": "0a1yi14wfalmqi6mpbc1cnipjlcmqdzkk8h9czggyav3m7dh9cmj"
   }
  },
  {
@@ -14193,15 +14258,15 @@
   "repo": "magit/closql",
   "unstable": {
    "version": [
-    20240216,
-    1729
+    20240415,
+    1534
    ],
    "deps": [
     "compat",
     "emacsql"
    ],
-   "commit": "81f04f60aab27c0d9161746384d4eeb0633202e2",
-   "sha256": "0a658y097jwk7cn2ra840qspkj7r71jq7yl75vycf93gx5763ywi"
+   "commit": "2bff36edd28c9a0d0c25b545b3837fa874376cc5",
+   "sha256": "1951r5p5p6jr9xahjw7sr0s01d6mhcp721b35gxa9d9kw3p52xx6"
   },
   "stable": {
    "version": [
@@ -14293,25 +14358,25 @@
   "repo": "joostkremers/criticmarkup-emacs",
   "unstable": {
    "version": [
-    20170203,
-    2107
+    20240422,
+    725
    ],
    "deps": [
     "cl-lib"
    ],
-   "commit": "276d49c859822265070ae5dfbb403fd7d8d06436",
-   "sha256": "0mqbjw9wiaq735v307hd7g0g6i3a4k7h71bi4g9rr2jbgiljmql4"
+   "commit": "a9381f57f3005a9b26f81085ecb2accf680c6f6b",
+   "sha256": "0c3hry0rvjrqi67caxqjdmsx2pzd3ybgsyzi6jfnlwzsw5iwyjqi"
   },
   "stable": {
    "version": [
     1,
-    6
+    9
    ],
    "deps": [
     "cl-lib"
    ],
-   "commit": "276d49c859822265070ae5dfbb403fd7d8d06436",
-   "sha256": "0mqbjw9wiaq735v307hd7g0g6i3a4k7h71bi4g9rr2jbgiljmql4"
+   "commit": "5c2decacdd1a48c9e4ed2ce2289622aa5915ea24",
+   "sha256": "1lblkdp0xim22xc71xxgiwlvqrs500rirqz1in546d10ij445ygq"
   }
  },
  {
@@ -14386,20 +14451,20 @@
   "url": "https://gitlab.kitware.com/cmake/cmake.git",
   "unstable": {
    "version": [
-    20240321,
-    1332
+    20240412,
+    1329
    ],
-   "commit": "25d2850c190ba915a7527a29dda6efe61be901f0",
-   "sha256": "0q49x6z053gw257lamimm9nr1xpajwwqdfjxzrs596kmysrkjrcz"
+   "commit": "3bb04b05a527b2443298cb7bc9520f58e56c4e9e",
+   "sha256": "0cn206miz1z0b92rg95z7qr240awh92vfby62gjh9pv0mazhac3q"
   },
   "stable": {
    "version": [
     3,
     29,
-    0
+    2
    ],
-   "commit": "25d2850c190ba915a7527a29dda6efe61be901f0",
-   "sha256": "0q49x6z053gw257lamimm9nr1xpajwwqdfjxzrs596kmysrkjrcz"
+   "commit": "d3190d6a730207a56ef2144566468975167a811e",
+   "sha256": "0yjk4kqrln8smz457dxansfl69zyikr5015xm23xa4g7x1rihkgg"
   }
  },
  {
@@ -14467,11 +14532,11 @@
   "repo": "tumashu/cnfonts",
   "unstable": {
    "version": [
-    20240320,
-    254
+    20240426,
+    601
    ],
-   "commit": "323bfd2f66ac0d9cc831cc1ff785c1ed603f5ef2",
-   "sha256": "0g73an139fvv4nqgky56d211781dj5hfilgmd3zvm97gnw7xv0nd"
+   "commit": "d81b1d5932fbbed509f4b011eb14d2e0e1e73971",
+   "sha256": "0whkwxi6720rgv22w2xnb4ji092x4hrh4fabbnlm6dvf85g16mqn"
   },
   "stable": {
    "version": [
@@ -15011,11 +15076,11 @@
   "repo": "purcell/color-theme-sanityinc-tomorrow",
   "unstable": {
    "version": [
-    20240226,
-    1133
+    20240406,
+    1456
    ],
-   "commit": "e74bb5bbf714c8ec9649d161a90708f0b9b093d6",
-   "sha256": "04k6sm533db7av83j08a6kz1q1i8shhxza29fz7aql4rkazyd2kb"
+   "commit": "42b24a3fa3fbdcb36cd2936a38abe142cda65294",
+   "sha256": "103l62ma6vgq5p15jn125fz4f42s3aghg3l48vh5ngcb9y6w5ip0"
   },
   "stable": {
    "version": [
@@ -15840,15 +15905,15 @@
   "repo": "emacs-eask/company-eask",
   "unstable": {
    "version": [
-    20240101,
-    819
+    20240329,
+    1742
    ],
    "deps": [
     "company",
     "eask"
    ],
-   "commit": "c1dd9411bed01cc79f8b34d900396e53198b918e",
-   "sha256": "0bm85524kb0dkjprs4y1lnxcpbslwrc2xq3fvajnl0rmy4d8iv5h"
+   "commit": "3d8973a70f01121cad052b352ec0a3d76d8110d2",
+   "sha256": "0vl5isff47c4z0za49zhy7qzskysxcbyhlgvkk35nbiyrcdfazdw"
   },
   "stable": {
    "version": [
@@ -15899,34 +15964,34 @@
  },
  {
   "ename": "company-emoji",
-  "commit": "5733dccdffe97911a30352fbcda2900c33d79810",
-  "sha256": "1mflqqw9gnfcqjb6g8ivdfl7s4mdyjg7j0457hamgyvgvpxsh8x3",
-  "fetcher": "github",
-  "repo": "dunn/company-emoji",
+  "commit": "57d010adb43ea1a6adc89bff9741dab6830f199b",
+  "sha256": "0lyp65z19h9ccihrnav6k8iq04rhhy4jd96yk09i43i7fp8nfrwm",
+  "fetcher": "codeberg",
+  "repo": "egirl/company-emoji",
   "unstable": {
    "version": [
-    20230903,
-    1854
+    20240331,
+    2127
    ],
    "deps": [
     "cl-lib",
     "company"
    ],
-   "commit": "9c372be9406fba61d71aa0ed2d41adafae5a866e",
-   "sha256": "0j35z7hjcg3dkwgd7mdx1yaxcmxkn00h91y9kl8qdci7m4lja460"
+   "commit": "0b4371d8668712e71236e0f174bdd6d03c04aede",
+   "sha256": "1afy2f1ymzr518npbhy5296kaqshax5hs2ij7wgl28h0hsa2mnk1"
   },
   "stable": {
    "version": [
-    2,
-    8,
+    3,
+    0,
     0
    ],
    "deps": [
     "cl-lib",
     "company"
    ],
-   "commit": "9c372be9406fba61d71aa0ed2d41adafae5a866e",
-   "sha256": "0j35z7hjcg3dkwgd7mdx1yaxcmxkn00h91y9kl8qdci7m4lja460"
+   "commit": "0b4371d8668712e71236e0f174bdd6d03c04aede",
+   "sha256": "1afy2f1ymzr518npbhy5296kaqshax5hs2ij7wgl28h0hsa2mnk1"
   }
  },
  {
@@ -16404,7 +16469,7 @@
     "seq"
    ],
    "commit": "b2bcf2e6997a5ab3502baba9143af44ac2cc2eb3",
-   "sha256": "1gjdmdg496lkgm7xkgvfl4b4xir91kzn7sizyrgwdj845i9lfjmp"
+   "sha256": "0mfs261nzi5svxliy2yaxwhzgfb8my5f4580jizll1vkxi33c358"
   },
   "stable": {
    "version": [
@@ -16418,7 +16483,7 @@
     "seq"
    ],
    "commit": "1334f44725bd80a265de858d652f3fde4ae401fa",
-   "sha256": "1milqql0p9gp4dn9phn4fw1izf37wizpirvmzh5s71rwzrr6a9ix"
+   "sha256": "1h1lqrl3p9qgkicds8v44vdry19g53rya56hdj3cz5q8xj1nisn1"
   }
  },
  {
@@ -16572,21 +16637,21 @@
   "repo": "xcwen/ac-php",
   "unstable": {
    "version": [
-    20240222,
-    320
+    20240328,
+    1036
    ],
    "deps": [
     "ac-php-core",
     "cl-lib",
     "company"
    ],
-   "commit": "d4378a857aa1c60b34d86557aa10238785d1ac66",
-   "sha256": "1xz86cjsjm72b0rm50fr2z82rcllhczsd4jr5rnp2clbind5w697"
+   "commit": "a69ae4a12e40900619b4e5a1613fd449aef649c3",
+   "sha256": "1yn5cc6cmj3hwqgmjj44dz847xn5k99kirj36qwc04q7vhl8z8k7"
   },
   "stable": {
    "version": [
     2,
-    6,
+    7,
     0
    ],
    "deps": [
@@ -16594,8 +16659,8 @@
     "cl-lib",
     "company"
    ],
-   "commit": "d4378a857aa1c60b34d86557aa10238785d1ac66",
-   "sha256": "1xz86cjsjm72b0rm50fr2z82rcllhczsd4jr5rnp2clbind5w697"
+   "commit": "a69ae4a12e40900619b4e5a1613fd449aef649c3",
+   "sha256": "1yn5cc6cmj3hwqgmjj44dz847xn5k99kirj36qwc04q7vhl8z8k7"
   }
  },
  {
@@ -16606,15 +16671,15 @@
   "repo": "emacs-php/phpactor.el",
   "unstable": {
    "version": [
-    20221023,
-    608
+    20240407,
+    1015
    ],
    "deps": [
     "company",
     "phpactor"
    ],
-   "commit": "c652439afd052910d322a8fb9249e09d278a3f37",
-   "sha256": "06wl6g2nv4k6x912wjbnph2f5c5b1qbn1hjaylqzqj5rjd857cm3"
+   "commit": "e488ed4c46489861c15d83a43e70eb7c352adc09",
+   "sha256": "0k1fvwq4kn25yvvmkrag7wp7qjz13d63q9s9l9k4d5n9zw08khw3"
   },
   "stable": {
    "version": [
@@ -16648,7 +16713,7 @@
     "s"
    ],
    "commit": "0e6941e1832faafb2176238339667edd482acd95",
-   "sha256": "0xw475spfwq32nn5qz3gk22cggj1f5y245da9030vzi2jfb9vvid"
+   "sha256": "1ri022shrwiw10gdydm66c2xya1qxl449r5f8qadals7m4crczp2"
   },
   "stable": {
    "version": [
@@ -16663,7 +16728,7 @@
     "s"
    ],
    "commit": "0e6941e1832faafb2176238339667edd482acd95",
-   "sha256": "0xw475spfwq32nn5qz3gk22cggj1f5y245da9030vzi2jfb9vvid"
+   "sha256": "1ri022shrwiw10gdydm66c2xya1qxl449r5f8qadals7m4crczp2"
   }
  },
  {
@@ -17407,11 +17472,11 @@
   "repo": "mohkale/compile-multi",
   "unstable": {
    "version": [
-    20240315,
-    2126
+    20240421,
+    1100
    ],
-   "commit": "7124939e77da2bf3847aeeba2ba0387e47e11ce7",
-   "sha256": "1b1dygxgd1snm6faf61vpa6kdq67ag5xc805bn8ksbvljn0d4x0i"
+   "commit": "fab41595a704260a295544aecbecb16896824e88",
+   "sha256": "14zswpaymzsrc1xcd4xamnydy4hi7fk0inryh6gyqwkgzkzkshf2"
   },
   "stable": {
    "version": [
@@ -17430,14 +17495,14 @@
   "repo": "mohkale/compile-multi",
   "unstable": {
    "version": [
-    20231226,
-    2123
+    20240421,
+    1100
    ],
    "deps": [
     "all-the-icons-completion"
    ],
-   "commit": "3d5b72478fc5fe0c0fd7431daec516a8ccf3ec76",
-   "sha256": "1hmby8a5sy3d2xvwh5mz65iykbnb2fci6dnwp8rangn8zh517yff"
+   "commit": "fab41595a704260a295544aecbecb16896824e88",
+   "sha256": "14zswpaymzsrc1xcd4xamnydy4hi7fk0inryh6gyqwkgzkzkshf2"
   },
   "stable": {
    "version": [
@@ -17490,26 +17555,30 @@
   "repo": "mkcms/compiler-explorer.el",
   "unstable": {
    "version": [
-    20230922,
-    753
+    20240425,
+    2138
    ],
    "deps": [
-    "request"
+    "eldoc",
+    "map",
+    "request",
+    "seq"
    ],
-   "commit": "73a353c229aea84e6f24412b82f6f842fe01c55f",
-   "sha256": "08p55xyavvkjj816djxghwyzz0bwny6agcakg2brhic058dny909"
+   "commit": "fcf17db156877e35be589dbc82dd6d5736038961",
+   "sha256": "1bqcxr33jrd5jk2z77asn64sscb034pki2vs9c57vlqas4dwyb8r"
   },
   "stable": {
    "version": [
     0,
-    2,
+    4,
     0
    ],
    "deps": [
+    "eldoc",
     "request"
    ],
-   "commit": "36a2cbf0863d4563096546c38ff26db3d7a3e18c",
-   "sha256": "0529mwqp5p0lca010dxvjs1ka9fjbywpl0yii71wqc6rbc1kblvi"
+   "commit": "4980ed8f91a94b7a1cace9d199f1a0b35bed3a07",
+   "sha256": "1d181wm69r00j3wrvcb7i44v9c85ahk7b3hcqb91wlky25lsbjrz"
   }
  },
  {
@@ -17809,25 +17878,25 @@
   "repo": "minad/consult",
   "unstable": {
    "version": [
-    20240323,
-    2016
+    20240420,
+    929
    ],
    "deps": [
     "compat"
    ],
-   "commit": "ec232fa60497e7a3abcf6e385181afcc0cf6017f",
-   "sha256": "0z33j3jg4kspyqcm95yrvdw9y90a8ikjz8n5ycfyrjydpa838c3r"
+   "commit": "8989c7a5c5035f9e3429f85f1006d0c6cb5d5e8d",
+   "sha256": "0zrxs4134csg7ygrlq800mpa7xs3z6z547l28jv3c5v2s2ls1k97"
   },
   "stable": {
    "version": [
     1,
-    4
+    5
    ],
    "deps": [
     "compat"
    ],
-   "commit": "0eab65fe3273c97a422c99ee426eef7f2d2dffa4",
-   "sha256": "0kp1xrivs111d8ksjyf3m1ldzb8qknwrh2k2lzbrq6yiwc4bigy7"
+   "commit": "d8888bb67f881a3c4855c9ce7224de18a7dc3901",
+   "sha256": "0wgc30vinc62vppakwyxzfqpxqm0nl3srz4d42xs873i5bsczkab"
   }
  },
  {
@@ -18398,26 +18467,26 @@
   "repo": "titus.pinta/consult-tex",
   "unstable": {
    "version": [
-    20240307,
-    1019
+    20240417,
+    1149
    ],
    "deps": [
     "consult"
    ],
-   "commit": "29ab438792cb0a258dc7158526919ffcf0b5f134",
-   "sha256": "0pi200gphywgqyn9acn5a4hda9dq4gkdqhzb6m9z0xwxwj7jsd3p"
+   "commit": "675755e106f9e64e2c1fd3cf05a43275c09497da",
+   "sha256": "18kz99lmfqr7hm3n3xkp51hi6fibyj2ry6abpl897rl4ky9rabr9"
   },
   "stable": {
    "version": [
     0,
-    2,
+    3,
     0
    ],
    "deps": [
     "consult"
    ],
-   "commit": "29ab438792cb0a258dc7158526919ffcf0b5f134",
-   "sha256": "0pi200gphywgqyn9acn5a4hda9dq4gkdqhzb6m9z0xwxwj7jsd3p"
+   "commit": "675755e106f9e64e2c1fd3cf05a43275c09497da",
+   "sha256": "18kz99lmfqr7hm3n3xkp51hi6fibyj2ry6abpl897rl4ky9rabr9"
   }
  },
  {
@@ -18755,25 +18824,25 @@
   "repo": "minad/corfu",
   "unstable": {
    "version": [
-    20240122,
-    2327
+    20240413,
+    927
    ],
    "deps": [
     "compat"
    ],
-   "commit": "b48d3017a47706198e04440cc1b3483bdf646771",
-   "sha256": "0l6hpsw2srmad0mhp6x46d5dsg678lvgz5l3glp1845hkg8a0pgi"
+   "commit": "b779552341354d59365a981fd208ae07b7a2950a",
+   "sha256": "0yhdp1bf96m0llfc8v19swnrd4zl2dn5gxyppvjyidjvic3n0djv"
   },
   "stable": {
    "version": [
     1,
-    2
+    3
    ],
    "deps": [
     "compat"
    ],
-   "commit": "b48d3017a47706198e04440cc1b3483bdf646771",
-   "sha256": "0l6hpsw2srmad0mhp6x46d5dsg678lvgz5l3glp1845hkg8a0pgi"
+   "commit": "6088f0550dc8f10f5bcf6f24d35ce24159b01b43",
+   "sha256": "1nrwh00dy2ffzd3np8yk4n0vn0r5iqqhgcr40wbnv5qzgbdw9kas"
   }
  },
  {
@@ -18913,15 +18982,15 @@
   "repo": "abo-abo/swiper",
   "unstable": {
    "version": [
-    20240229,
-    1509
+    20240413,
+    1905
    ],
    "deps": [
     "ivy",
     "swiper"
    ],
-   "commit": "14c696aa2d6cd905795ba543374457a04a13ccae",
-   "sha256": "1j2x1jqyhkldkm1fcm6ycad92dc3jkxbr44hqw3kiq6ghbz746da"
+   "commit": "28ac6c7e32ec0b90803fd35f8d1f04ed0fe2e6a5",
+   "sha256": "1zyxm69ld137k9qnjmn87a2qh9qls1phycfcr3h5p3a0d0ackgd6"
   },
   "stable": {
    "version": [
@@ -18964,14 +19033,14 @@
   "repo": "ideasman42/emacs-counsel-at-point",
   "unstable": {
    "version": [
-    20230808,
-    1344
+    20240422,
+    116
    ],
    "deps": [
     "counsel"
    ],
-   "commit": "08f45559597ffbff2e9ecda35bacaaa4dae26fc2",
-   "sha256": "1dhq1c4m3zz2wl6wkvdc0acv9b5j1iasm2kjb3s66ci7sqlif06g"
+   "commit": "5aa7a483c5188d71c04c3302cfd900e7be91ffd6",
+   "sha256": "147v6nz5vhai38wxmfzsziwn50110viq575j33k0cm2iimv4gkpb"
   }
  },
  {
@@ -20034,11 +20103,11 @@
   "repo": "bbatsov/crux",
   "unstable": {
    "version": [
-    20240229,
-    957
+    20240401,
+    1136
    ],
-   "commit": "7980df10e47eef41d4d1c57cfb690ec406381ed3",
-   "sha256": "00n4k09x3slchs81xw1q0rcb78ncb5k2lvsigb9j7s3kxbj6bvvy"
+   "commit": "6ed75a69f542fb7feab6b8f182caf0924b3fb510",
+   "sha256": "09lybi0bld14bdfvbji5cxrwrwflcvfnkdk618yybv1zphxmj2nx"
   },
   "stable": {
    "version": [
@@ -20844,14 +20913,14 @@
   "repo": "ideasman42/emacs-cycle-at-point",
   "unstable": {
    "version": [
-    20230805,
-    925
+    20240422,
+    300
    ],
    "deps": [
     "recomplete"
    ],
-   "commit": "cbbd8721af0cbc84ba737d42bdf702d9a80fa3fb",
-   "sha256": "14iqia8802wjkvs9rx7jmchzzf4i63r31aanyzyzx8r7dv9nd6x1"
+   "commit": "317dd682924f1ddcb61cbcd0008072abe3c5264b",
+   "sha256": "1m29a15ilhf33as76pmpm28qnymsj28syv5qgjqrih9ncd5khwjr"
   }
  },
  {
@@ -21222,8 +21291,8 @@
   "repo": "emacs-lsp/dap-mode",
   "unstable": {
    "version": [
-    20240113,
-    926
+    20240424,
+    1359
    ],
    "deps": [
     "bui",
@@ -21236,26 +21305,27 @@
     "posframe",
     "s"
    ],
-   "commit": "03bcfe90b6acb6811bfa877882ba72949503234d",
-   "sha256": "0yahj7i1h1j824d2ginzvdik4llckjvnhlxfj24dgsh6rl7qnr7g"
+   "commit": "22af181d627577968f03213ba59d02458d3e734a",
+   "sha256": "1q360xhnmfnjgrkmzq69p2wc0rphz7fsbjzgn3hjw0a8kv3jsq0y"
   },
   "stable": {
    "version": [
     0,
-    7
+    8
    ],
    "deps": [
     "bui",
     "dash",
     "f",
     "ht",
+    "lsp-docker",
     "lsp-mode",
     "lsp-treemacs",
     "posframe",
     "s"
    ],
-   "commit": "3c4bb901bbcd4f8f58178075dc2422550a7f2834",
-   "sha256": "1zczmcv8562lachkvcwy6njn7zkgny08iznpmrx821wr8mh52wnn"
+   "commit": "71c2e5a3734debe265c0de11531bf1d1351f7483",
+   "sha256": "177ira42l1p7zjb24c0vp4biip9sczlvbgzfahp4mhgfd9h8a6bx"
   }
  },
  {
@@ -21293,7 +21363,7 @@
     0
    ],
    "commit": "2ecd466ffa7a3157b9ddcd7545b6fb8ad308c976",
-   "sha256": "1y8rsc63nl4n43pvn283f1vcpqyjnv6xl60fwyscwrqaz19bsnl1"
+   "sha256": "1h5lssnc1am54hkprnp61bsj5fnm8j556q2gbhljfjgrdwnqv8ky"
   }
  },
  {
@@ -21493,11 +21563,11 @@
   "repo": "magnars/dash.el",
   "unstable": {
    "version": [
-    20240103,
-    1301
+    20240405,
+    946
    ],
-   "commit": "e32a70ca636bad42232b6c79f1491dc86802a721",
-   "sha256": "0jkwjkm64ciz60b4bhm50f4c6vc51wi2a12kdd1ijvdnxscnlxx7"
+   "commit": "885332bbc4582b08d4f24526250876f3a7569067",
+   "sha256": "1v700mlwwas57kqnp1hqv0ln0cqv44nlcp7lv9c4rha7q5gzmikz"
   },
   "stable": {
    "version": [
@@ -21596,11 +21666,11 @@
   "repo": "emacs-dashboard/emacs-dashboard",
   "unstable": {
    "version": [
-    20240322,
-    340
+    20240407,
+    12
    ],
-   "commit": "05b4b1a7bc5ec5d0fca5ee6cd6a2099107c47b15",
-   "sha256": "0hscfmm0rz6rz3npb0kgdwv836s9xlp0j61nahjqgwq9lqkmjl0a"
+   "commit": "89b42bff4d60fb00ef3d679e2d2289541e5009f6",
+   "sha256": "1cl9p8a9dxjbl8kn7fqkx1abr90frk4g7n09lqriyf8hn5bizy5c"
   },
   "stable": {
    "version": [
@@ -21773,26 +21843,26 @@
   "repo": "doublep/datetime",
   "unstable": {
    "version": [
-    20231025,
-    1805
+    20240418,
+    1601
    ],
    "deps": [
     "extmap"
    ],
-   "commit": "0ec8ecf25e857638ead944eeb3e7d68c6f16f2de",
-   "sha256": "1n10qyhhyxh4g5pizrj2hlffqd0zx5ym8wsbvwk3z3s6949rjniy"
+   "commit": "38f0e180ae36257d77ce9612dfca8404f39ddcfc",
+   "sha256": "114x0ldzczafil5f33g8m1clibakmy2kwmmwbs49ryn35hh60fg7"
   },
   "stable": {
    "version": [
     0,
-    9,
+    10,
     1
    ],
    "deps": [
     "extmap"
    ],
-   "commit": "9d512244d32870c113785278d8db3c51206c98af",
-   "sha256": "0d918312gpdiyx7zq8kdy19bdww6jqg94hs4j5l0n63bwrxsqdx2"
+   "commit": "41d0221ee2fc7b9f9c57cf930f0011edf977a2a8",
+   "sha256": "13fvpp9aashmlv9pc12fvf540f9s36wrcfskcx2hcm6r3kv91d54"
   }
  },
  {
@@ -21915,7 +21985,7 @@
     "ht"
    ],
    "commit": "5123477396a562fae350a89fbed79464cc498bc9",
-   "sha256": "1bkiwg1wp3l904159gycdr83xkb3i0h2k0da7akzkwc957abvp8w"
+   "sha256": "0xd94cpqpv0yw70ajrvs69ygds62m40fk0m4s59zvdn5qs7ivj4k"
   }
  },
  {
@@ -21991,16 +22061,16 @@
   "repo": "Wilfred/deadgrep",
   "unstable": {
    "version": [
-    20231130,
-    1628
+    20240408,
+    1537
    ],
    "deps": [
     "dash",
     "s",
     "spinner"
    ],
-   "commit": "38abe362997d2f18633a75d04c09da751bf8085e",
-   "sha256": "14brz73fz9zfd95libxajxwc3b4vvljj76fp3xdskxi34z4bs1f3"
+   "commit": "eafc642c551e6d5df7eb1fee9aa7596e59811178",
+   "sha256": "029szbwssvdxrsrzv0ppgik30hl9apr0dp5hcp666zgpm415frc4"
   },
   "stable": {
    "version": [
@@ -22024,11 +22094,11 @@
   "url": "https://salsa.debian.org/emacsen-team/debian-el.git",
   "unstable": {
    "version": [
-    20231207,
-    2347
+    20240404,
+    541
    ],
-   "commit": "67dbe593b650b7748e8cbe93fdb8f0cf883563ad",
-   "sha256": "130k9fv057dlb5gkhr6ws0k8fdf6jnd5gxaxq0p2h9h6p9l6djzm"
+   "commit": "7bbbf575f0ce11cb4b6acd89e56000ae388b1413",
+   "sha256": "1s2jqqmmnwcf8bx6vn1754ji5kgdwzcm5hi5j0s4rj1yl9s9jnd4"
   },
   "stable": {
    "version": [
@@ -22222,11 +22292,11 @@
   "repo": "ideasman42/emacs-default-font-presets",
   "unstable": {
    "version": [
-    20230708,
-    1012
+    20240421,
+    637
    ],
-   "commit": "21b0ab8e5363ad5b83df1458cca2380a8ebe318d",
-   "sha256": "1alfcx6dbbmshrm24yr17knr2gv0ais0f9qwkm02ja9rzcjkgrkl"
+   "commit": "0087cbcbf78f107c0f908e4930f886a2d920eb90",
+   "sha256": "0vwj4b8ycb0im93k8nkbfwqi63wp0mywn5bigxhnd15d1339l04m"
   }
  },
  {
@@ -22416,11 +22486,11 @@
   "repo": "jrblevin/deft",
   "unstable": {
    "version": [
-    20240309,
-    2117
+    20240407,
+    149
    ],
-   "commit": "bb1a16b87c3e0fe70fade6227e47dd7712b89bf6",
-   "sha256": "0mmhqk7bh34l1zb4hskd914qs28vi688jvhlcdrgdl62s3184m8l"
+   "commit": "7f352747a2c4dfe40ba060ab42f47ae8a9ddab41",
+   "sha256": "048kzgqxild8ywclp659wyvpjiqi16kpbc91zh1r459gzmawcll3"
   },
   "stable": {
    "version": [
@@ -22570,15 +22640,15 @@
   "repo": "pprevos/denote-explore",
   "unstable": {
    "version": [
-    20240317,
-    919
+    20240426,
+    450
    ],
    "deps": [
     "dash",
     "denote"
    ],
-   "commit": "53dcead5eea35ec0545aa85e8f0c8384b6f4eb57",
-   "sha256": "1wdsfyc2qzvhaj3dyfxg045sr9naqrg3yip4fwj71rfzzkpva3j0"
+   "commit": "9e1a5162dbec751fe62ce4b99bcb0e5024f39f94",
+   "sha256": "06yhh543piflgx8ql70wmsz56g8a7nja66n7s48rwq7d7pxb6znq"
   }
  },
  {
@@ -22799,11 +22869,11 @@
   "repo": "astoff/devdocs.el",
   "unstable": {
    "version": [
-    20240323,
-    823
+    20240428,
+    711
    ],
-   "commit": "01ce2c06e997cb821be6123395fb6d224bf958ab",
-   "sha256": "14rp8f182bfip3p00khinp9rnr7nr2l86r6ppqyd37idk1mf158w"
+   "commit": "c14d1306648d3ae09ee3a3b3f45592334943cfeb",
+   "sha256": "0d9v5596k2cwb7zcc29v4gli1yydw3jcqcsz8d2dc18wl5dfks9z"
   }
  },
  {
@@ -22814,11 +22884,11 @@
   "repo": "blahgeek/emacs-devdocs-browser",
   "unstable": {
    "version": [
-    20231231,
-    1455
+    20240414,
+    1251
    ],
-   "commit": "afc460e687bec4eb947ab85d207778fc3b9b3bbc",
-   "sha256": "1qghhswalj7x09hmcxhf9i27apyni2j8jy2pq6aj0499ib3fq89q"
+   "commit": "d4ebae6b12ba13393270278a75b053d53af3ac54",
+   "sha256": "08rrhi7d29h8mzvi7wd4ikj5k7g1kscys709l8aaiq1mxf0nhxj8"
   }
  },
  {
@@ -23028,7 +23098,7 @@
     0
    ],
    "commit": "6d0c4203eb192d73d89261b3a9bad52951e394af",
-   "sha256": "0a89bp9vz8lzg5klhmzpfmc0mhqmx667ivr86ckkjhiwr2mmzq0s"
+   "sha256": "1rdmhsrlqn19a140i3099fp7f9wnlglp760rnrjp5p840wzfm74q"
   }
  },
  {
@@ -23039,11 +23109,11 @@
   "repo": "ideasman42/emacs-diff-ansi",
   "unstable": {
    "version": [
-    20231221,
-    57
+    20240421,
+    810
    ],
-   "commit": "cdae72a4713704692aa4edf3433d6b6df1d84746",
-   "sha256": "1fkdc0ilvpgp2p5c654123r7rvjkg8v2a5q182npjw6rry1x652f"
+   "commit": "9e5b61a82e04ffd0e81f88fcf159575618886d72",
+   "sha256": "1jwgw5ypl9iw6hy1yk4y34l8n5mxaw3zhk4bly7wxpyq4di0n9ik"
   }
  },
  {
@@ -23054,11 +23124,11 @@
   "repo": "ideasman42/emacs-diff-at-point",
   "unstable": {
    "version": [
-    20230320,
-    2355
+    20240421,
+    858
    ],
-   "commit": "0a4815a364b636eadf2f9ca6f468fb5996ff8d6f",
-   "sha256": "0f6wf405x9s9vr1ddwz00sp5y52hpjjk7c1rbqm2h94nvgwcwbmr"
+   "commit": "bdd507b940e57a110e0e7d31834987924abc05b2",
+   "sha256": "0iilqa0638h2dawq95wxmmrn738c0h6swv84k8z7nbywgi5jdi81"
   }
  },
  {
@@ -23069,14 +23139,14 @@
   "repo": "dgutov/diff-hl",
   "unstable": {
    "version": [
-    20240225,
-    116
+    20240401,
+    2357
    ],
    "deps": [
     "cl-lib"
    ],
-   "commit": "96620839430c1205cbb8c92dd54973397f70f9d2",
-   "sha256": "09i735cd8pyfdk5llk47liywc0l3irh4ipwqky9vpp3mh3xg1f4x"
+   "commit": "09a0f8fcc7e6ce3f49dca64cdfab898d6762f2a4",
+   "sha256": "1kszgnp6nrsx8sphk5lnnkvymb5p17djvgpc3433dwjic6rz97ml"
   },
   "stable": {
    "version": [
@@ -23192,15 +23262,15 @@
   "repo": "pkryger/difftastic.el",
   "unstable": {
    "version": [
-    20240308,
-    1548
+    20240423,
+    1553
    ],
    "deps": [
     "compat",
     "magit"
    ],
-   "commit": "763e5f25925a8a625a943953a5f13d21b9a3bc51",
-   "sha256": "0v9w6iswshr8mj1g5bp9i13ck0wd1jcy4czancgwhc8hn2k5dnnl"
+   "commit": "56ec9ba861b132a96220837d711f6e79c26c268d",
+   "sha256": "1qdiph2wkx7anrpfilxpk9cdzjx6ig0pwzswh9prppdk3flyw5qb"
   }
  },
  {
@@ -23367,14 +23437,14 @@
   "repo": "tarsius/dim-autoload",
   "unstable": {
    "version": [
-    20240101,
-    2213
+    20240415,
+    1534
    ],
    "deps": [
     "compat"
    ],
-   "commit": "ace955cd85b3775a028cfda71f2665f33d85bf5d",
-   "sha256": "06wpvr763rsjfgi403n83jsbj7z2jfl1r0l7bb0rdfambhnn9wdh"
+   "commit": "54bd356cdac7bdae2bdff994b048f847374cec6c",
+   "sha256": "0hjs9nxw6hy7kvaw389n1k1rwqq22pvc3q5cbndnybpkbfpmrhjq"
   },
   "stable": {
    "version": [
@@ -23450,11 +23520,11 @@
   "repo": "jcs-elpa/diminish-buffer",
   "unstable": {
    "version": [
-    20240101,
-    934
+    20240327,
+    210
    ],
-   "commit": "e26c299e1f538573d3badae701947005b4a01df7",
-   "sha256": "0y0japf94dw6qwgxlxnjv5vwi472f8gc3lvwfm1h4h0d40dhkd1s"
+   "commit": "c577a8ed289d1a2cf56845fb6b8c7b9c638d4bc8",
+   "sha256": "11858nlkvpwyzkn7za8c45amv185pklg3x9z0s4a25zkxjrswi7m"
   },
   "stable": {
    "version": [
@@ -23665,16 +23735,16 @@
   "repo": "Fuco1/dired-hacks",
   "unstable": {
    "version": [
-    20240322,
-    2135
+    20240328,
+    1154
    ],
    "deps": [
     "dash",
     "dired-hacks-utils",
     "f"
    ],
-   "commit": "c3bf65aeacfc5ae04508ebcff7b0c9fb37ca4beb",
-   "sha256": "0slv5v4d5iqx02ilcrp30i6jhismvw5n123m7p0fbmqpb7pv2070"
+   "commit": "e596b0bac3de8e7730dfb43ca10b0331b6f94469",
+   "sha256": "0sny6wqvckwp7h9dwsdvn55irnw94axqfa7jcbbwyxqs9ird8pg2"
   }
  },
  {
@@ -23685,11 +23755,11 @@
   "repo": "hjudt/dired-duplicates",
   "unstable": {
    "version": [
-    20231114,
-    2150
+    20240328,
+    2016
    ],
-   "commit": "e07552323b26ce68956f8b03aa66af145bae4d86",
-   "sha256": "1psa217zsl91qkvlrkysw7ycv9rc6vk8462rf6lfjmvb9bf5hpqm"
+   "commit": "5c5f24bea92159987f65f01ef32b261e905997bd",
+   "sha256": "0cfbllnr8l67g61d6mbb0c8hq3c0jn2qx3k1i91dk0ns5s6208v7"
   }
  },
  {
@@ -23914,19 +23984,19 @@
   "repo": "Anoncheg1/dired-hist",
   "unstable": {
    "version": [
-    20240324,
-    509
+    20240405,
+    2347
    ],
-   "commit": "1755b7bbb81e83563feac8e395e0d9fd85217ad6",
-   "sha256": "1h60m4w0dyhacymx2m9yrci742wk28wkb36pmq5sxvpck8jbd110"
+   "commit": "bcbfa60e2de0d86a38740d72bea7e4f25ccc35c8",
+   "sha256": "06vjlijvicgszpfb09gpwhb2cczajn5hjp9a5vzf5yn9h76rhjkk"
   },
   "stable": {
    "version": [
     0,
-    13
+    14
    ],
-   "commit": "1178b678c249cafd9b320d8305798c30ff367939",
-   "sha256": "1xpw3h6iwy3wd34hafpzhq37bmphi0qrmcwsa9p6y7s64q3fpb1i"
+   "commit": "bcbfa60e2de0d86a38740d72bea7e4f25ccc35c8",
+   "sha256": "06vjlijvicgszpfb09gpwhb2cczajn5hjp9a5vzf5yn9h76rhjkk"
   }
  },
  {
@@ -23949,7 +24019,7 @@
     5
    ],
    "commit": "dbace8d2250f84487d31b39050fcdc260fcde804",
-   "sha256": "0r9qmr2l5kjwh1frp0k87nyaf13f7f9fjjf9yf9z92djqapfm9dd"
+   "sha256": "1d9105ibaw858gqp19rx2m6xm3hl57vzsmdqir883cy46qpvwhki"
   }
  },
  {
@@ -24007,11 +24077,11 @@
   "repo": "thomp/dired-launch",
   "unstable": {
    "version": [
-    20240317,
-    2344
+    20240417,
+    1903
    ],
-   "commit": "0a7dbe002306cbeeedcf5b9fbbc72adc83f0d331",
-   "sha256": "06p19kwh6xr5krs4j54qx342ncnlhiszkml13b51k0h2kqvchlkm"
+   "commit": "933aa6b921010c9d33ddf18f48c8ce780443f963",
+   "sha256": "0al5pglxj12l13j849m4khgyq43nzrnsahn5n7d9a3pkrqhjwqkq"
   }
  },
  {
@@ -24084,15 +24154,15 @@
   "repo": "Fuco1/dired-hacks",
   "unstable": {
    "version": [
-    20230512,
-    1107
+    20240330,
+    1831
    ],
    "deps": [
     "dash",
     "dired-hacks-utils"
    ],
-   "commit": "523f51b4152a3bf4e60fe57f512732c698b5c96f",
-   "sha256": "09z238y41rgy0jrn2hq5k6kj1k2skkgpf4kbfzyjzi6kcw8586bf"
+   "commit": "a01c126c3b1068655509487c76971895f5459d09",
+   "sha256": "128wy7i7qrs7yzw82hzsr7lxiifdgbvmxb1w18kspd82ijlj4j5q"
   }
  },
  {
@@ -24133,14 +24203,14 @@
   "repo": "xuhdev/dired-quick-sort",
   "unstable": {
    "version": [
-    20201221,
-    403
+    20240411,
+    229
    ],
    "deps": [
     "hydra"
    ],
-   "commit": "69b06f306a5fc2b38e707bae3ff1e35db2b39b6b",
-   "sha256": "01zdha3p7wsf98yayvwgpd4arcs7yhz62yk1nyq9n13hvmqg7dvk"
+   "commit": "d50b910baa716dfcf4830f1c08226c92bcaee7f6",
+   "sha256": "143rgmf4bn4mcfx3g4pa5qcd6ij4zqrn86qnhm0bffmd2x6pljsb"
   },
   "stable": {
    "version": [
@@ -24151,7 +24221,7 @@
     "hydra"
    ],
    "commit": "79e422be55c72bfe36d2ec8a838f19d1cc8d101a",
-   "sha256": "01zdha3p7wsf98yayvwgpd4arcs7yhz62yk1nyq9n13hvmqg7dvk"
+   "sha256": "14hb3d76y4n8qvfl74v9hzgl6774bqdcmsa0npv3gs144fbx9prk"
   }
  },
  {
@@ -24434,15 +24504,15 @@
   "repo": "ShuguangSun/dired-view-data",
   "unstable": {
    "version": [
-    20220129,
-    339
+    20240328,
+    328
    ],
    "deps": [
     "ess",
     "ess-view-data"
    ],
-   "commit": "96d4cb6569fd2be90a516dedd98263374bbc6ead",
-   "sha256": "1i1prpzp10irshv42lwv08lzwvm0r9amapbbki07qhmqd5q0av06"
+   "commit": "2dadb995c3f32c572f5483adab21bdff3ac64186",
+   "sha256": "0yvg0i2cc6y1nk4mzmn9imnhh3y9yzvb5c3z80jnm76mz4xmnm4h"
   },
   "stable": {
    "version": [
@@ -24465,25 +24535,25 @@
   "repo": "Boruch-Baum/emacs-diredc",
   "unstable": {
    "version": [
-    20240314,
-    753
+    20240421,
+    428
    ],
    "deps": [
     "key-assist"
    ],
-   "commit": "b638face71558cc1444c352fe6bab2d9b28bf281",
-   "sha256": "0askrlywbkj1x92l8hqdwb6xbcyj16gymmcima8spvjxjdbhm3y2"
+   "commit": "dadcb326be31fd03c1891473b1bcd1983b155c28",
+   "sha256": "01fnv2j3hsal4waapkf6s1s57sda1hvx7jsrpfk2js1a21dmmwa4"
   },
   "stable": {
    "version": [
     1,
-    2
+    4
    ],
    "deps": [
     "key-assist"
    ],
-   "commit": "a56e26a288f977a46c567c3cfb8c2d2461727c08",
-   "sha256": "1qs3j2mnnd8qnphxdd2ljgc0i05hlycqwp5wwv7pk0px07pxdvfm"
+   "commit": "0ff2424aa226228c72e47a635f3b5379c424c891",
+   "sha256": "01pxm6n7pcp11zbqrhv8hcr44wb1s08zw1gwpfqd3grdkmyqql8j"
   }
  },
  {
@@ -25353,11 +25423,11 @@
   "repo": "ideasman42/emacs-doc-show-inline",
   "unstable": {
    "version": [
-    20230808,
-    1344
+    20240421,
+    943
    ],
-   "commit": "dc914d79b99fc76694d356ea786eb39aab74649a",
-   "sha256": "028z0qlnbysi3zyfh7mwgy23dzgfpl1anh8pni8zmwy7ld78idgb"
+   "commit": "d2bfa37f2f027c5da0abca319882daa3740ca57b",
+   "sha256": "0j70sg2gnf2qi367pskwbm24qvy8bl2qims04rjaw7knd9yiyh43"
   }
  },
  {
@@ -25673,11 +25743,11 @@
   "repo": "ag91/doctest",
   "unstable": {
    "version": [
-    20240321,
-    2345
+    20240421,
+    1517
    ],
-   "commit": "a1fc9f2fcb45ea980ca25c524d54a7b0bd40e3c9",
-   "sha256": "0im29nv6gz3gpkh9c3m03pkmj034rxsarw0qw0b1gfpl5c91nsxx"
+   "commit": "0620ab6283a4e4302761ac415354b0b2b889dcda",
+   "sha256": "1g759f1ypw00vqbbcxa8yxf51bdmlrfdxybgjf4fmzzhvfbcpc4d"
   }
  },
  {
@@ -25688,14 +25758,14 @@
   "repo": "alphapapa/dogears.el",
   "unstable": {
    "version": [
-    20231016,
-    2356
+    20240412,
+    850
    ],
    "deps": [
     "map"
    ],
-   "commit": "1136f28ceaed522351369fb97cc098763293a7a6",
-   "sha256": "0sp513bigq0ckkq9hb8fd4znmv8k99awryaa72zddwibi2adb42f"
+   "commit": "162671e66cac601f1cfd5d22f7da2671af2e9866",
+   "sha256": "1n0yhs4vcl9h10slqck1zd5h2p34lim3xrra9zcj1pa6qp5a2i56"
   },
   "stable": {
    "version": [
@@ -25806,16 +25876,16 @@
   "repo": "seagle0128/doom-modeline",
   "unstable": {
    "version": [
-    20240324,
-    1457
+    20240425,
+    609
    ],
    "deps": [
     "compat",
     "nerd-icons",
     "shrink-path"
    ],
-   "commit": "2e420e64ffadc7489e281ea69e572cd0e415fbcb",
-   "sha256": "00jgs4d2si2c6m7bghzlczl8vj48snyr7z68igh0lgq5afg0s81y"
+   "commit": "150b5bf8da8050e5db1193f827c33b16a5d8dd3f",
+   "sha256": "13zfwww73x5ax7vql7fhgyzwwx0xhkh1fs9b6x746nbyl3p5vnnl"
   },
   "stable": {
    "version": [
@@ -25859,14 +25929,14 @@
   "repo": "doomemacs/themes",
   "unstable": {
    "version": [
-    20240320,
-    121
+    20240404,
+    2042
    ],
    "deps": [
     "cl-lib"
    ],
-   "commit": "37d2182f5078d29fb22bbace346e523bb84b2c4e",
-   "sha256": "0zhncai46b3rv205v8cmdvlg746gy2q4c6mq3vn3p5a3mqv7jn1r"
+   "commit": "3b2422b208d28e8734b300cd3cc6a7f4af5eba55",
+   "sha256": "1ksv964vlzszbd2372kl80l60mmmiqxgyxypysrylrw831kkxfi9"
   },
   "stable": {
    "version": [
@@ -26086,11 +26156,11 @@
   "url": "https://salsa.debian.org/emacsen-team/dpkg-dev-el.git",
   "unstable": {
    "version": [
-    20240303,
-    1522
+    20240421,
+    628
    ],
-   "commit": "69b294694c57d8e7571fada6a6651c40d266285e",
-   "sha256": "05zyjc0wcx70b1fzxhh8pwnhvmza03afqxvvbmip7hcxnyf2wajy"
+   "commit": "acfc3bd42271286d22d7cbadd48a5b9d5675f85c",
+   "sha256": "1mhh6kmlkbzaliyx8fwdnbmkhaaing4jkjc9ai76l5nyisjimqrc"
   },
   "stable": {
    "version": [
@@ -26560,20 +26630,20 @@
   "repo": "ocaml/dune",
   "unstable": {
    "version": [
-    20230402,
-    1815
+    20240427,
+    1346
    ],
-   "commit": "e53368337be3c353fd654bdbead322605fc875c5",
-   "sha256": "1x3z9wr1zfncd39ya3bqlfbq54hsv6a1kik8x1snsr6qbsy1an79"
+   "commit": "5554158af27ead066fbb3c009e780c930958613c",
+   "sha256": "1wilcgji9nw2lwvb4zkhikb0wkpyzj3070czhvvlclxx5ispxh9g"
   },
   "stable": {
    "version": [
     3,
-    14,
+    15,
     2
    ],
-   "commit": "b19f6df8954995899e30275055d9582b6c83687c",
-   "sha256": "17h91vvqdmwkl7l4b7z6mzxsq9g2czzi9h3d68csz3h0jhwwn130"
+   "commit": "c28817c416ac0b381f6a6938236419ab5d86d6e1",
+   "sha256": "0rgrfpw588mgw78p87xlrlidc9xhkppf6b7dqa3vqlhjxs5q6kqg"
   }
  },
  {
@@ -26706,11 +26776,11 @@
   "repo": "xenodium/dwim-shell-command",
   "unstable": {
    "version": [
-    20240324,
-    1906
+    20240414,
+    1607
    ],
-   "commit": "5049375dcba5b58c35b558c9a5975c3424855ee6",
-   "sha256": "01m3w9cv4ckj78x111rfxcj44by3kngvlisz9gzsabi3hz2rn42d"
+   "commit": "3dc879fa4c473d1f7c0929ebb0cebcbe729553cc",
+   "sha256": "0axj93kfimhn7kywpnv7394gaw9rz402lixmwqyka85f1rcw3dzc"
   }
  },
  {
@@ -27174,11 +27244,11 @@
   "repo": "emacs-eask/eask",
   "unstable": {
    "version": [
-    20240323,
-    2214
+    20240420,
+    44
    ],
-   "commit": "9a98b6c21c289dec110b434899fd050778eedab9",
-   "sha256": "070fc2p3wcb63x3364k815yxm1f7ks5vdjdaw5p7grzn9664crn5"
+   "commit": "ecee5a60b9e13796400e9dec84ce55f89767b6fa",
+   "sha256": "09g53ijbxlk48i1s7fj7iyhh4j230xpv673lia19k3364pzy361g"
   },
   "stable": {
    "version": [
@@ -27225,8 +27295,8 @@
   "repo": "emacs-eask/easky",
   "unstable": {
    "version": [
-    20240316,
-    327
+    20240420,
+    113
    ],
    "deps": [
     "ansi",
@@ -27235,8 +27305,8 @@
     "lv",
     "marquee-header"
    ],
-   "commit": "85fcdf4db86f8d6773ce7d309cf752c9f972e564",
-   "sha256": "0pczdrjlf0w7f3zdcd45cgirk6hbzm14hx0gjip7l0ypwgfmhixv"
+   "commit": "bde4a0af084f356b993b5fd5b727c05c54e1d132",
+   "sha256": "17cg70n50h1jpi2j705wpy4g3xgca8hqhraqinbk1lac9z2s3sil"
   },
   "stable": {
    "version": [
@@ -27505,28 +27575,28 @@
   "repo": "joostkremers/ebib",
   "unstable": {
    "version": [
-    20240305,
-    752
+    20240426,
+    642
    ],
    "deps": [
     "compat",
     "parsebib"
    ],
-   "commit": "3d7b09606a04cd4c8236e290e709b56872148bc8",
-   "sha256": "1ga8zzzqs6vrjzm6jily37jyzpq4vsgh49vxy8a68399bdl90s77"
+   "commit": "4055e30872e642f746633bab96c3383836d61e68",
+   "sha256": "072dbc7wm9mwcbfw0a9957izamk2amcqag53p4n32r3cdn9v94zk"
   },
   "stable": {
    "version": [
     2,
-    40,
-    5
+    41,
+    1
    ],
    "deps": [
     "compat",
     "parsebib"
    ],
-   "commit": "3d7b09606a04cd4c8236e290e709b56872148bc8",
-   "sha256": "1ga8zzzqs6vrjzm6jily37jyzpq4vsgh49vxy8a68399bdl90s77"
+   "commit": "3458aa7777e0acf883b17008da78788c62d9a337",
+   "sha256": "1ylq4l044rals7xbf8rcx97gz84kypksl2fs5xwin2rc6rvpli8d"
   }
  },
  {
@@ -28588,6 +28658,30 @@
   }
  },
  {
+  "ename": "eglot-luau",
+  "commit": "8d881d261d9cff964116ec91aacfd6878a6d2778",
+  "sha256": "046jfj4p4ff7vhs9zhaz6lva0xq4lzz8861z2zdi1dacpva5vdql",
+  "fetcher": "github",
+  "repo": "kennethloeffler/eglot-luau",
+  "unstable": {
+   "version": [
+    20240401,
+    2209
+   ],
+   "commit": "3926860036402cce4a55faec534b88c0bf6006fd",
+   "sha256": "03zva7sykc1ja5kz8x21z5r10d49iwa67i4wafi8vnymmw3rfcai"
+  },
+  "stable": {
+   "version": [
+    0,
+    1,
+    2
+   ],
+   "commit": "3926860036402cce4a55faec534b88c0bf6006fd",
+   "sha256": "03zva7sykc1ja5kz8x21z5r10d49iwa67i4wafi8vnymmw3rfcai"
+  }
+ },
+ {
   "ename": "eglot-signature-eldoc-talkative",
   "commit": "1639318f0f1730ab5b0e575256d93882d2fd063f",
   "sha256": "03nz0xnzwf1db0b3whz7s8bykp2m9jnlssa9g4mpslaq1bwvfkry",
@@ -28595,30 +28689,30 @@
   "repo": "mekeor/emacs-eglot-signature-eldoc-talkative",
   "unstable": {
    "version": [
-    20240209,
-    2034
+    20240424,
+    801
    ],
    "deps": [
     "eglot",
     "eldoc",
     "jsonrpc"
    ],
-   "commit": "b6604648a2ea5d260fa315ffbaebebbf3872343a",
-   "sha256": "1fs868ddrb0fbgrk4wqk9jc1fyg3jcr6mfzrp65ypi5vdcx9y0kl"
+   "commit": "859aa6f2c0acf060a8e7549b79daf46c8d63ea8d",
+   "sha256": "1s44kz9b2b61f5gy922rvzv1kpmx62chvdsnb1g785skdhfdzb6v"
   },
   "stable": {
    "version": [
     0,
     0,
-    6
+    7
    ],
    "deps": [
     "eglot",
     "eldoc",
     "jsonrpc"
    ],
-   "commit": "b6604648a2ea5d260fa315ffbaebebbf3872343a",
-   "sha256": "1fs868ddrb0fbgrk4wqk9jc1fyg3jcr6mfzrp65ypi5vdcx9y0kl"
+   "commit": "859aa6f2c0acf060a8e7549b79daf46c8d63ea8d",
+   "sha256": "1s44kz9b2b61f5gy922rvzv1kpmx62chvdsnb1g785skdhfdzb6v"
   }
  },
  {
@@ -28766,7 +28860,7 @@
     "spinner"
    ],
    "commit": "b80b773238719fa7160e598219f300dfbc4db06d",
-   "sha256": "1w2xh207rm4a242iykhzsp3r3s8gv1cw8qr3cvwfbkxqrzmki7z4"
+   "sha256": "1whgbwdv3zrhxq2casxj784bx95j0vzlpnvi51i4xdxpdf77g521"
   },
   "stable": {
    "version": [
@@ -28901,11 +28995,11 @@
   "repo": "dimitri/el-get",
   "unstable": {
    "version": [
-    20230618,
-    1453
+    20240408,
+    837
    ],
-   "commit": "cd998078949db70b736c0c3ac77ec23d97686f9a",
-   "sha256": "0d4kd1hpb4pqz6hxw6kc02gxv3cqpbnn0afqf5ajik4hlspwzd2y"
+   "commit": "1c5b0eb7fa162523183a96e409e4e3ae6b5cc3a0",
+   "sha256": "1dw13jpls9rm4xli52ry3g966hji92s8kysyn7p1rcxbygvqwyw2"
   },
   "stable": {
    "version": [
@@ -29349,11 +29443,11 @@
   "repo": "emacs-eldev/eldev",
   "unstable": {
    "version": [
-    20240317,
-    1521
+    20240427,
+    1730
    ],
-   "commit": "76b08f798c94e2c6f107cd1fec9fb8aa02b5aa5b",
-   "sha256": "0gdgf2pkys4jxy7zknpixvygyhjv1xk9949frks3xlpiknvmkxdq"
+   "commit": "089fc7f172bea0d1aae63f5595ced02c6486b2dd",
+   "sha256": "0n9l74vcwydwpc7ignqppskppnnhlgqf2cfcsr3a1bsw6x0rcw26"
   },
   "stable": {
    "version": [
@@ -29373,11 +29467,11 @@
   "repo": "casouri/eldoc-box",
   "unstable": {
    "version": [
-    20231115,
-    519
+    20240426,
+    408
    ],
-   "commit": "c36f31074b09930e8425963f39d5508da6d2c32d",
-   "sha256": "0vglh3sp9x6z537jngh5jh9j3szbfadryzlwhmrlq7asiinnjq01"
+   "commit": "4392128d4caaa21f7810ba0955514c395e9f3cae",
+   "sha256": "0nf28jh02al8vqyj0awij2hbqa03jkggdysc0v8kjlsrd673scgp"
   },
   "stable": {
    "version": [
@@ -29724,11 +29818,11 @@
   "repo": "skeeto/elfeed",
   "unstable": {
    "version": [
-    20221108,
-    755
+    20240331,
+    1348
    ],
-   "commit": "55fb162fa27e71b88effa59a83c57842e262b00f",
-   "sha256": "02cqgrhfaxc73j250jz70q83l50ynhfxszg6kyb4g7fv9kjdagh7"
+   "commit": "5c05a1eab37bc113ecb158a4d57fe05352fa2c6a",
+   "sha256": "1ir9vp2629dg3gxhlrf043gwbbf093p08q4igvx2r9hh6kraca5c"
   },
   "stable": {
    "version": [
@@ -30142,30 +30236,30 @@
   "repo": "s-kostyaev/elisa",
   "unstable": {
    "version": [
-    20240322,
-    1808
+    20240401,
+    1528
    ],
    "deps": [
     "async",
     "ellama",
     "llm"
    ],
-   "commit": "8794e14d75998fd20ab6d9c52ff4c44251428559",
-   "sha256": "14syfx8pibvw37zbi3gip5anhwby5l2sn5fjc9fhwp668g6b56yj"
+   "commit": "c03baded1e6b1bb6b37f8df83a0d1af4cdbaf860",
+   "sha256": "0xl6yz6536mbnba2g1ghv3c8zqqbag3kr8nqa87p0hpcqa6daz0m"
   },
   "stable": {
    "version": [
     0,
     1,
-    3
+    4
    ],
    "deps": [
     "async",
     "ellama",
     "llm"
    ],
-   "commit": "8794e14d75998fd20ab6d9c52ff4c44251428559",
-   "sha256": "14syfx8pibvw37zbi3gip5anhwby5l2sn5fjc9fhwp668g6b56yj"
+   "commit": "c03baded1e6b1bb6b37f8df83a0d1af4cdbaf860",
+   "sha256": "0xl6yz6536mbnba2g1ghv3c8zqqbag3kr8nqa87p0hpcqa6daz0m"
   }
  },
  {
@@ -30176,11 +30270,11 @@
   "repo": "ideasman42/emacs-elisp-autofmt",
   "unstable": {
    "version": [
-    20231207,
-    1018
+    20240421,
+    854
    ],
-   "commit": "6b280c854f964c303de2f9316f8f955e52893b8d",
-   "sha256": "0dnvyhfw906x234nzdprxlg9jx1wpj4wbfd65ack10zcvl6lwjxq"
+   "commit": "0560fe21d1173b2221fd8c600fab818f7eecbad4",
+   "sha256": "00vsgjqb3qfm2lr2vqf10yr84b07l63pgkqvi0s1a0js7mvv6s65"
   }
  },
  {
@@ -30490,28 +30584,28 @@
   "repo": "s-kostyaev/ellama",
   "unstable": {
    "version": [
-    20240316,
-    1610
+    20240415,
+    730
    ],
    "deps": [
     "llm",
     "spinner"
    ],
-   "commit": "b94d5952d4e36e1caeef5ac0b3ecd6d89009082b",
-   "sha256": "0pwhr9xqakhhlvv7aab33lba3dpx4byh1clg6wfiyyl6xr2a48js"
+   "commit": "6e6ec8e28b8ce32ff207b1b026aaaeddc1bd8239",
+   "sha256": "1nwwqvl91c65r45yxa2dcl4a41r3ahw6294h79riya48nrp8kn54"
   },
   "stable": {
    "version": [
     0,
-    8,
-    13
+    9,
+    1
    ],
    "deps": [
     "llm",
     "spinner"
    ],
-   "commit": "b94d5952d4e36e1caeef5ac0b3ecd6d89009082b",
-   "sha256": "0pwhr9xqakhhlvv7aab33lba3dpx4byh1clg6wfiyyl6xr2a48js"
+   "commit": "6e6ec8e28b8ce32ff207b1b026aaaeddc1bd8239",
+   "sha256": "1nwwqvl91c65r45yxa2dcl4a41r3ahw6294h79riya48nrp8kn54"
   }
  },
  {
@@ -30847,20 +30941,20 @@
   "repo": "redguardtoo/elpa-mirror",
   "unstable": {
    "version": [
-    20230208,
-    1148
+    20240413,
+    1426
    ],
-   "commit": "9d7cfbf72ef8c7cd014c91e5bb3d8fbebda56140",
-   "sha256": "0lw018bn5a6z8pxzqscs196l8k18m1m9p0p6amr3n27qmf6fp3vw"
+   "commit": "d51a5b81af909727fac45f3c9d3653b1170e01f0",
+   "sha256": "0n5yfyzzj044q2q1iar17wm4y4ix2jzx1arphsiy1yxx94n1g1z2"
   },
   "stable": {
    "version": [
     2,
-    2,
-    2
+    3,
+    0
    ],
-   "commit": "9d7cfbf72ef8c7cd014c91e5bb3d8fbebda56140",
-   "sha256": "0lw018bn5a6z8pxzqscs196l8k18m1m9p0p6amr3n27qmf6fp3vw"
+   "commit": "d51a5b81af909727fac45f3c9d3653b1170e01f0",
+   "sha256": "0n5yfyzzj044q2q1iar17wm4y4ix2jzx1arphsiy1yxx94n1g1z2"
   }
  },
  {
@@ -31253,15 +31347,15 @@
   "repo": "emacscollective/elx",
   "unstable": {
    "version": [
-    20240101,
-    2213
+    20240415,
+    1535
    ],
    "deps": [
     "compat",
     "llama"
    ],
-   "commit": "2936dee72b2ef085c1c0a40817e67e868d44612c",
-   "sha256": "1md0kn4cwclv0i6fkrrinf2wjmr08cagxgv1sh6yja0hcvm37ygh"
+   "commit": "4b3b0af5b8d1e530a1a8fc44af650886b23918b1",
+   "sha256": "17c4lq6flzx0nsjcmdpaq8isdz73d337d9nv8fqb1719shniq2cm"
   },
   "stable": {
    "version": [
@@ -31285,11 +31379,11 @@
   "repo": "tecosaur/emacs-everywhere",
   "unstable": {
    "version": [
-    20240128,
-    921
+    20240416,
+    749
    ],
-   "commit": "fbeff19825336777dccaefedf3f376dd622cd294",
-   "sha256": "1lf1nzjr2vpnpb0aix4dq0wn1ixxwill8ii3p7i2aa14mh1p8bw1"
+   "commit": "8868b9e371d3d09add67022e46b3e4db0a0c22a0",
+   "sha256": "0viss80p4sls6qqi9hcdzzx5gibf4s27rqv1nfcdxibw2j1ici95"
   }
  },
  {
@@ -31339,11 +31433,11 @@
   "repo": "magit/emacsql",
   "unstable": {
    "version": [
-    20240124,
-    1601
+    20240415,
+    1535
    ],
-   "commit": "5aba772e562f0b22e36e34c9b4c256ffe439654c",
-   "sha256": "124x32dlpxfg1qb9ssvlnakakkzaz4wx9k5cv65fnhr9spl8d7j3"
+   "commit": "5108c16c5e1d5bfdd41fcc0807241e28886ab763",
+   "sha256": "0sww0d4kbrsvf3123m0ddqxi59p4myajz1y2v25yx3ixrpy6xpmv"
   },
   "stable": {
    "version": [
@@ -31363,14 +31457,14 @@
   "repo": "magit/emacsql",
   "unstable": {
    "version": [
-    20240119,
-    2314
+    20240415,
+    1535
    ],
    "deps": [
     "emacsql"
    ],
-   "commit": "1b8297b671a6e9df9554df5f62d7e0748a2200dd",
-   "sha256": "13mp0iqbr0sn8z119jmlhdgwl19s9rp0xlgsmdjfq3ssz04g8kyg"
+   "commit": "5108c16c5e1d5bfdd41fcc0807241e28886ab763",
+   "sha256": "0sww0d4kbrsvf3123m0ddqxi59p4myajz1y2v25yx3ixrpy6xpmv"
   },
   "stable": {
    "version": [
@@ -31393,15 +31487,15 @@
   "repo": "magit/emacsql",
   "unstable": {
    "version": [
-    20230224,
-    1201
+    20240415,
+    1535
    ],
    "deps": [
     "emacsql",
     "pg"
    ],
-   "commit": "7c533fb6c27c3a10b6ab05bddf663e37c109e459",
-   "sha256": "1jmcxj8hx7900pfg7hlpdfln3higvfl7as931ry5zb2wla5wc76l"
+   "commit": "5108c16c5e1d5bfdd41fcc0807241e28886ab763",
+   "sha256": "0sww0d4kbrsvf3123m0ddqxi59p4myajz1y2v25yx3ixrpy6xpmv"
   },
   "stable": {
    "version": [
@@ -31425,14 +31519,14 @@
   "repo": "magit/emacsql",
   "unstable": {
    "version": [
-    20240119,
-    2314
+    20240415,
+    1535
    ],
    "deps": [
     "emacsql"
    ],
-   "commit": "ffd501a588e4ca884f949119e7c79d214dfd2ffa",
-   "sha256": "090ark8r2z5iw3gdk8xjh83nq4vwkbfyjm267l4q05ywlfb92dbl"
+   "commit": "5108c16c5e1d5bfdd41fcc0807241e28886ab763",
+   "sha256": "0sww0d4kbrsvf3123m0ddqxi59p4myajz1y2v25yx3ixrpy6xpmv"
   },
   "stable": {
    "version": [
@@ -31455,14 +31549,14 @@
   "repo": "magit/emacsql",
   "unstable": {
    "version": [
-    20240119,
-    2314
+    20240415,
+    1535
    ],
    "deps": [
     "emacsql"
    ],
-   "commit": "777abb9e9ed47245636cdc7ea814ce12ad11e2ac",
-   "sha256": "0x1cv4m36nsgyks3r5lyap521cayv302d568myw3s6h0licbdr6f"
+   "commit": "5108c16c5e1d5bfdd41fcc0807241e28886ab763",
+   "sha256": "0sww0d4kbrsvf3123m0ddqxi59p4myajz1y2v25yx3ixrpy6xpmv"
   },
   "stable": {
    "version": [
@@ -31485,14 +31579,14 @@
   "repo": "magit/emacsql",
   "unstable": {
    "version": [
-    20240119,
-    2314
+    20240415,
+    1535
    ],
    "deps": [
     "emacsql"
    ],
-   "commit": "777abb9e9ed47245636cdc7ea814ce12ad11e2ac",
-   "sha256": "0x1cv4m36nsgyks3r5lyap521cayv302d568myw3s6h0licbdr6f"
+   "commit": "5108c16c5e1d5bfdd41fcc0807241e28886ab763",
+   "sha256": "0sww0d4kbrsvf3123m0ddqxi59p4myajz1y2v25yx3ixrpy6xpmv"
   }
  },
  {
@@ -31503,15 +31597,15 @@
   "repo": "magit/emacsql",
   "unstable": {
    "version": [
-    20240119,
-    2314
+    20240415,
+    1535
    ],
    "deps": [
     "emacsql",
     "sqlite3"
    ],
-   "commit": "777abb9e9ed47245636cdc7ea814ce12ad11e2ac",
-   "sha256": "0x1cv4m36nsgyks3r5lyap521cayv302d568myw3s6h0licbdr6f"
+   "commit": "5108c16c5e1d5bfdd41fcc0807241e28886ab763",
+   "sha256": "0sww0d4kbrsvf3123m0ddqxi59p4myajz1y2v25yx3ixrpy6xpmv"
   }
  },
  {
@@ -31535,7 +31629,7 @@
     0
    ],
    "commit": "f0add6820d250875f7d7c21aa5d813dc73dbcf96",
-   "sha256": "0zg52b3hl0rp9hjz04546kngssxs0l64dm01bwp9hapy7pichbci"
+   "sha256": "18bnw6yb41ki1xvkhi07v7fqx3var928majgd6613ra9nirnyqnj"
   }
  },
  {
@@ -31618,14 +31712,14 @@
   "repo": "oantolin/embark",
   "unstable": {
    "version": [
-    20240323,
-    2205
+    20240419,
+    452
    ],
    "deps": [
     "compat"
    ],
-   "commit": "15c95aee0ec6f42ee3b7a0bc6cf1e2c1ad91dfcd",
-   "sha256": "1lv8r1xpilcpx061s16m9s44i79lqcw6cxggx39phj8855zp3cag"
+   "commit": "195add1f1ccd1059472c9df7334c97c4d155425e",
+   "sha256": "1361jvwr3wjbpmq6dfkrhhhv9vrmqpkp1j18syp311g6h8hzi3hg"
   },
   "stable": {
    "version": [
@@ -31647,16 +31741,16 @@
   "repo": "oantolin/embark",
   "unstable": {
    "version": [
-    20240205,
-    2122
+    20240419,
+    452
    ],
    "deps": [
     "compat",
     "consult",
     "embark"
    ],
-   "commit": "60139db8794f7e4a08076d9f7597d08f6c8083d1",
-   "sha256": "0ndf59zxi002jqlzfx64in5179xhygd86fhwrhygn8b2mdx7nq2d"
+   "commit": "195add1f1ccd1059472c9df7334c97c4d155425e",
+   "sha256": "1361jvwr3wjbpmq6dfkrhhhv9vrmqpkp1j18syp311g6h8hzi3hg"
   },
   "stable": {
    "version": [
@@ -31856,16 +31950,16 @@
   "url": "https://git.savannah.gnu.org/git/emms.git",
   "unstable": {
    "version": [
-    20240318,
-    2011
+    20240414,
+    1933
    ],
    "deps": [
     "cl-lib",
     "nadvice",
     "seq"
    ],
-   "commit": "38417250833e14914d3cff65ebf8b51a1b9c1da5",
-   "sha256": "1qwpjrn8jm35ylbh7n2f3xk7z30czzx5w2nzi3qwmwrlb4wvp0df"
+   "commit": "01110352afecd160165041bee55a63e959f66835",
+   "sha256": "0hz0yf49l6lq897lvfrv8pzkm7k6frnkqxr28800yhb7d6hcd3ix"
   },
   "stable": {
    "version": [
@@ -32267,27 +32361,28 @@
   "repo": "isamert/empv.el",
   "unstable": {
    "version": [
-    20240310,
-    28
+    20240423,
+    2355
    ],
    "deps": [
     "compat",
     "s"
    ],
-   "commit": "cb284929a6a1364d1200677de38a75d90edc6fb2",
-   "sha256": "0yc147iln4hpfv74jzaq6z53m52cannllwn5ffafya6qih5rl4hm"
+   "commit": "d9ab5d355c2e92c2c4e709d6945e6fab25069ccb",
+   "sha256": "0khj0xz3g5f0xa6qac7xyi2rjbm48l3wlk01q3x6fznccn5ch6wx"
   },
   "stable": {
    "version": [
     4,
-    0,
+    1,
     0
    ],
    "deps": [
+    "compat",
     "s"
    ],
-   "commit": "449b6e3e00b2a2e28580bb7608817f203380b53a",
-   "sha256": "02vrvwgd1fba8986qc9idi6b6iinn44aid8jawvrz21visfzfmmg"
+   "commit": "c48cd223b145806a6a36167c299e9a0384a5f2e6",
+   "sha256": "0p62wfsxk0sh8lpjm52md8kaixkfagfsl9gpmps76448iznn04m7"
   }
  },
  {
@@ -32570,27 +32665,25 @@
   "repo": "purcell/envrc",
   "unstable": {
    "version": [
-    20240324,
-    2246
+    20240415,
+    1016
    ],
    "deps": [
-    "inheritenv",
-    "seq"
+    "inheritenv"
    ],
-   "commit": "94785b4bd385432ccd1bbabc73842cadb3357ca6",
-   "sha256": "02pfqsl9m1spwqzrb5x5f4rpys4laa0mjny5252qm2vc0rlp26xk"
+   "commit": "8571bf94b6a63ffd9a84100106602f88ba186854",
+   "sha256": "03mjws4fp00g5smivs1iz0r78mmd5sgj1g4xyi8aq21mpv5rd2m0"
   },
   "stable": {
    "version": [
     0,
-    6
+    11
    ],
    "deps": [
-    "inheritenv",
-    "seq"
+    "inheritenv"
    ],
-   "commit": "d8fe5d293253a0d431034cd7294e6fb561c4950f",
-   "sha256": "1a4ixhvs53ymcm0fjlvnh47rd0sp23w4ngns4m0ydcs5vq8hwq5m"
+   "commit": "8571bf94b6a63ffd9a84100106602f88ba186854",
+   "sha256": "03mjws4fp00g5smivs1iz0r78mmd5sgj1g4xyi8aq21mpv5rd2m0"
   }
  },
  {
@@ -32715,8 +32808,8 @@
   "repo": "emacscollective/epkg",
   "unstable": {
    "version": [
-    20240212,
-    1731
+    20240415,
+    1554
    ],
    "deps": [
     "closql",
@@ -32724,8 +32817,8 @@
     "emacsql",
     "llama"
    ],
-   "commit": "4a245349047f48507fc28f7077061bca3dfcedea",
-   "sha256": "1sk0vnb1prlqb6qpg8w59liqnj9hn2mpcw1mb58jvfc5xb2f19vw"
+   "commit": "91c3e441eaa9f85b13d5957ee82f7c440addd147",
+   "sha256": "0n6psk9k2aglfsbxpnqfsmah4c9060sgf13wix0mmakba2iq11wc"
   },
   "stable": {
    "version": [
@@ -32748,8 +32841,8 @@
   "repo": "emacscollective/epkg-marginalia",
   "unstable": {
    "version": [
-    20240101,
-    2215
+    20240415,
+    1536
    ],
    "deps": [
     "compat",
@@ -32757,8 +32850,8 @@
     "llama",
     "marginalia"
    ],
-   "commit": "b8c9fb165ec832b2e930092ce8abe039d415a117",
-   "sha256": "12bf6ly08lhjssl8p257v9dz5w9inv8wq1fb4phprnpcggswxlhc"
+   "commit": "41bb627934e0a389e24573d2c9d088f6f6afdbcc",
+   "sha256": "1m0g1h81if11v0mw8l3kd6i2mxs1r1s1dh9c84niig0gw0dgligw"
   },
   "stable": {
    "version": [
@@ -32886,7 +32979,7 @@
     "dash"
    ],
    "commit": "7aa2e1715e6ea286b08bb446d2d9915afa0fdf03",
-   "sha256": "0b2a9qvqxhm2z4zb4qg6d5h0pp82hdmjl8qnk03zr1awi5angiyv"
+   "sha256": "11wag6sgfr62yj4zjr9n71kxd3kfa105l0rpbag47qmac2wsg7h5"
   }
  },
  {
@@ -33032,7 +33125,7 @@
     "switch-buffer-functions"
    ],
    "commit": "feb0fbf1fd4bdf220ae2d31ea7c066d8e62089f9",
-   "sha256": "0pfnp7gw75hfhsy7jizp622s6yv61h3k2s0l2g33i801ar6abwm5"
+   "sha256": "1wb3xm45g77daw2ncs8a8w0m8d2hi591jmzwy5xli1zgrr5mm8h3"
   },
   "stable": {
    "version": [
@@ -33044,7 +33137,7 @@
     "switch-buffer-functions"
    ],
    "commit": "7539654e4a72edcc5bba07a101961e5bf0a9d449",
-   "sha256": "0pfnp7gw75hfhsy7jizp622s6yv61h3k2s0l2g33i801ar6abwm5"
+   "sha256": "11zpqwh1mlfifbgnvhc63bvnhg340jgxssm3m43hr1sxsyb52lh6"
   }
  },
  {
@@ -33431,21 +33524,21 @@
   "repo": "erlang/otp",
   "unstable": {
    "version": [
-    20240321,
-    722
+    20240418,
+    631
    ],
-   "commit": "e651174c569694c92b1794ddd0a1a4a199610091",
-   "sha256": "1g9icvg07x78kkp1w9ljgbm6zyyzwz4p17mq844vr1vbr50amsx3"
+   "commit": "5df3992d695da4d7e8777cf7605279ce9d131f1c",
+   "sha256": "1zn34znba898b4kyrr2v88rbxlh709biff7z99llrvaxl0id6q3k"
   },
   "stable": {
    "version": [
     27,
     0,
     -1,
-    2
+    3
    ],
-   "commit": "e651174c569694c92b1794ddd0a1a4a199610091",
-   "sha256": "1g9icvg07x78kkp1w9ljgbm6zyyzwz4p17mq844vr1vbr50amsx3"
+   "commit": "5df3992d695da4d7e8777cf7605279ce9d131f1c",
+   "sha256": "1zn34znba898b4kyrr2v88rbxlh709biff7z99llrvaxl0id6q3k"
   }
  },
  {
@@ -33584,8 +33677,8 @@
  },
  {
   "ename": "ert-results",
-  "commit": "f9efdf1e970398a0a686a587e4678a650534b171",
-  "sha256": "1wm43jyxxyjq83cicidf4xs5rgxsp3954hjsm6q6vx4wbn2x40qv",
+  "commit": "2d8716906a0c9e18d6c979d8450bf1d15dd785eb",
+  "sha256": "18v8c7f63m5mzl13v89fz75vcwym5hhigbifqmyi2r8mddfql5rh",
   "fetcher": "github",
   "repo": "rswgnu/ert-results",
   "unstable": {
@@ -33846,6 +33939,24 @@
   }
  },
  {
+  "ename": "eshell-atuin",
+  "commit": "636d43dad51e4d57beacefeeaff4b5ca1c8b83e7",
+  "sha256": "0ic7k4a76fsjwz1irdljg46bms88hycayjyjrirm7sys9i01qc0c",
+  "fetcher": "github",
+  "repo": "SqrtMinusOne/eshell-atuin",
+  "unstable": {
+   "version": [
+    20240409,
+    932
+   ],
+   "deps": [
+    "compat"
+   ],
+   "commit": "1b71d4c18039bc3b46095adb557f6987caab4a43",
+   "sha256": "0mkv3460prgjx8pcfvfnavcd6h93f4cd4lqv0k7mynjiq57qy8np"
+  }
+ },
+ {
   "ename": "eshell-autojump",
   "commit": "68bd1a8ec9d17eff2d23e15b3686f7c0b8723126",
   "sha256": "09l2680hknmdbwr4cncv1v4b0adik0c3sm5i9m3qbwyyxm8m41i5",
@@ -34071,11 +34182,11 @@
   "repo": "akreisher/eshell-syntax-highlighting",
   "unstable": {
    "version": [
-    20240325,
-    146
+    20240416,
+    102
    ],
-   "commit": "1d25386bf7d1a97e083d33750a98fbd1c6598138",
-   "sha256": "1mvhp5arzhmkgpyq6kg0vlvaan8h67z3jjszazmjvgi5gma6jz1n"
+   "commit": "070b33c20a907d973f41c0be1dcfd1335b8aa1e0",
+   "sha256": "0r4n6v9rlfmibrld1axbvxdll2j4c8vrp4glfpziglak1j764ifc"
   },
   "stable": {
    "version": [
@@ -34094,14 +34205,14 @@
   "repo": "4DA/eshell-toggle",
   "unstable": {
    "version": [
-    20220718,
-    729
+    20240417,
+    1536
    ],
    "deps": [
     "dash"
    ],
-   "commit": "d4e884624f02e68b267b0044322ad17baa6780f8",
-   "sha256": "13bb0dyhncph6rxihlf4fy7p92nyxz0ylld8vx1sj4551sv5ifn9"
+   "commit": "222e05870c0b3f4a4d96f9bdb7065c53eb43a917",
+   "sha256": "13j2jgpiqa0y24hv4dw26m6dmfy0apyjbizxrgm63qy4b24lj1i3"
   }
  },
  {
@@ -34429,11 +34540,11 @@
   "repo": "emacs-ess/ESS",
   "unstable": {
    "version": [
-    20240229,
-    2054
+    20240410,
+    1836
    ],
-   "commit": "cf237253049583a547bafc16edb9eb9a52e1ebf6",
-   "sha256": "02zps4a404ijmngy2yx6sxj0c9hgs9383cm4byds2nw1jzhjc7wf"
+   "commit": "8030e29de88c1f234184278e9839d7a78d3ddc6c",
+   "sha256": "1xx4srd4qmc0plh3lr1ar0qpamwh41wabrxrjg2205d1dxrqv0wp"
   },
   "stable": {
    "version": [
@@ -34618,6 +34729,25 @@
   }
  },
  {
+  "ename": "essgd",
+  "commit": "e054a2fdc34f358e82aeeae6fc1f79f364189561",
+  "sha256": "1dfss8h67whiya9155hns780bqvchqaackqb8al0cnjd634xm5w1",
+  "fetcher": "github",
+  "repo": "sje30/essgd",
+  "unstable": {
+   "version": [
+    20240418,
+    752
+   ],
+   "deps": [
+    "ess",
+    "websocket"
+   ],
+   "commit": "2a88e9cc0e47b2bb3ec39db0399b279e2276280e",
+   "sha256": "1c1pwn4c25kqaq3vnn16jzhsjkb8ingxb8q9k086w7a5q26h2jpn"
+  }
+ },
+ {
   "ename": "esup",
   "commit": "b9d2948a42da5d4864404d2d11a924a4f235fc3b",
   "sha256": "0cv3zc2zzm38ki3kxq58g9sp4gsk3dffa398wky6z83a3zc02zs0",
@@ -34700,25 +34830,6 @@
   }
  },
  {
-  "ename": "etable",
-  "commit": "afee0fed80f4fa444116b12653c034d760f5f1fb",
-  "sha256": "0m4h24mmhp680wfhb90im228mrcyxapzyi4kla8xdmss83gc0c32",
-  "fetcher": "github",
-  "repo": "Fuco1/ETable",
-  "unstable": {
-   "version": [
-    20161028,
-    2009
-   ],
-   "deps": [
-    "dash",
-    "interval-list"
-   ],
-   "commit": "d502141f0c69bf95256ba5cb9cd15350c7e942d2",
-   "sha256": "0k0g58qzkkzall715k0864v3b7p5jnfwxqgmkj087x34frcf388k"
-  }
- },
- {
   "ename": "etc-sudoers-mode",
   "commit": "e665f3b7fd75544c174ac3da9e0a498ceb694f5a",
   "sha256": "01sn1pd6s4blf6dk3vvi70sr1mgcfsigb1qvxk3dsggf1ng2rhsk",
@@ -34726,28 +34837,28 @@
   "repo": "mavit/etc-sudoers-mode",
   "unstable": {
    "version": [
-    20201102,
-    1707
+    20240417,
+    2126
    ],
    "deps": [
     "sudo-edit",
     "with-editor"
    ],
-   "commit": "74c66c58c9578a0d841206d5dec04d81e7b3d741",
-   "sha256": "0f4glimf9xf87nv23vq5cjhr92f0avzvimnr9v829d69fjmjghni"
+   "commit": "133f342e7a249ed4b3e3983e6d8bf541bae05c4b",
+   "sha256": "0lgw6x7p9rq334g97npbdq5zf7ws8a0gxx608dhai3g7lw47w84w"
   },
   "stable": {
    "version": [
     1,
     1,
-    0
+    1
    ],
    "deps": [
     "sudo-edit",
     "with-editor"
    ],
-   "commit": "74c66c58c9578a0d841206d5dec04d81e7b3d741",
-   "sha256": "0f4glimf9xf87nv23vq5cjhr92f0avzvimnr9v829d69fjmjghni"
+   "commit": "133f342e7a249ed4b3e3983e6d8bf541bae05c4b",
+   "sha256": "0lgw6x7p9rq334g97npbdq5zf7ws8a0gxx608dhai3g7lw47w84w"
   }
  },
  {
@@ -35068,15 +35179,15 @@
   "repo": "emacs-evil/evil",
   "unstable": {
    "version": [
-    20240324,
-    1731
+    20240421,
+    1915
    ],
    "deps": [
     "cl-lib",
     "goto-chg"
    ],
-   "commit": "64a07c7aca2933ed1feec80704db49dc2c3476b3",
-   "sha256": "0m77bqnaqmqbd2w6710hplisbc9wwqhiymx63m7g2ddldzcmxyd0"
+   "commit": "fe44a565e6806dba4c298a76eb8800063016ec2d",
+   "sha256": "0xx73x82q26zgj33agmdzf4z4wk2m88f91wry071k8ja0qd9n5hc"
   },
   "stable": {
    "version": [
@@ -35269,15 +35380,15 @@
   "repo": "emacs-evil/evil-collection",
   "unstable": {
    "version": [
-    20240321,
-    13
+    20240417,
+    1647
    ],
    "deps": [
     "annalist",
     "evil"
    ],
-   "commit": "89aea406334bc251adb70b1d6070b24fa94552ba",
-   "sha256": "1w47hr75a1r0zdzp6f14ac33sk2kqvmrlh52nd1pxll0wkaxd2xf"
+   "commit": "5886bab852dc9e31959e70384d535473e44504ad",
+   "sha256": "0dz9dkmxm4j2r2nilgxwgvsgbm531rrsiszzx480zrmqybdsziq6"
   },
   "stable": {
    "version": [
@@ -35817,11 +35928,11 @@
   "repo": "redguardtoo/evil-matchit",
   "unstable": {
    "version": [
-    20240216,
-    1304
+    20240418,
+    731
    ],
-   "commit": "1c4fefa9bb11cc4b1d7f10614d2021c12ed12e89",
-   "sha256": "1m5y5n38w0ijzx2kl9d0nnw70ykx2prmnvv4ip9siad71k7wpwjg"
+   "commit": "c75b2c6c3123824ff7ae35deef22a3a5d9b619b2",
+   "sha256": "050r48nv2w13jj1d4n4y442p4vmwwqnnqb691nvlz48vfymdx6mm"
   },
   "stable": {
    "version": [
@@ -35985,14 +36096,14 @@
   "repo": "juliapath/evil-numbers",
   "unstable": {
    "version": [
-    20230117,
-    53
+    20240416,
+    140
    ],
    "deps": [
     "evil"
    ],
-   "commit": "8724645c84dc310f6155eec452913bb79c0c44b3",
-   "sha256": "0dxw2d85zxnh7rgfq1vn9b71nrn48j5c7fwbzb02m74qddcjnjg0"
+   "commit": "c7899894515d6be40dfcd589fb27c1801c5b199c",
+   "sha256": "0nr07k1c99xdiiz5bpn0rlr2f8qvca21smpcyyxk70cxfpwksd0s"
   },
   "stable": {
    "version": [
@@ -36289,14 +36400,14 @@
   "repo": "porras/evil-ruby-text-objects",
   "unstable": {
    "version": [
-    20221130,
-    1832
+    20240411,
+    1139
    ],
    "deps": [
     "evil"
    ],
-   "commit": "41c8b3eddb610206626a8a03e69857f903209e86",
-   "sha256": "1gakixp64ds35vfykp0niy9gdxymr1rlx2hphlbic1952dinvx9c"
+   "commit": "de138b3279817484d1d34ca5b293af09e00a4e1a",
+   "sha256": "1a2r9rha9lscx6g43xy2liwk88j2fak0c3sdwpgyyn3hz3f4g0zc"
   },
   "stable": {
    "version": [
@@ -36474,14 +36585,14 @@
   "repo": "emacs-evil/evil-surround",
   "unstable": {
    "version": [
-    20230917,
-    1541
+    20240325,
+    852
    ],
    "deps": [
     "evil"
    ],
-   "commit": "bd98f7f5492446885dc4c6b0a7579c75c22ac829",
-   "sha256": "1lj97qnzzi2dwgcak8vaaq5vhrkh84cxzzcsxs6jl93ghjyfmykr"
+   "commit": "14dc693ed971053feb9596d4bc1b1de0b0006584",
+   "sha256": "0v1jmzjlk1219s9c1x5vfrz97xip6ll64fw7n0hz3by6w0k7y1yk"
   },
   "stable": {
    "version": [
@@ -36873,15 +36984,15 @@
   "repo": "clsty/evil-tutor-sc",
   "unstable": {
    "version": [
-    20240319,
-    233
+    20240326,
+    1239
    ],
    "deps": [
     "evil",
     "evil-tutor"
    ],
-   "commit": "fcf8a588068c8fe591320d9e7161bf2d09b2e337",
-   "sha256": "1wf7bhhayj6x5657zy9ap014jlkkkvbkrg2v27h4y12cz5mc9i1z"
+   "commit": "9520aae3e10480a942c35ae83f7215086fee9412",
+   "sha256": "1v4gbyzz8bbii8vsbxrcwaxq32v1bjsgfspsgq15xkab4pziim4c"
   },
   "stable": {
    "version": [
@@ -37257,25 +37368,19 @@
   "repo": "purcell/exec-path-from-shell",
   "unstable": {
    "version": [
-    20240216,
-    1606
-   ],
-   "deps": [
-    "cl-lib"
+    20240411,
+    859
    ],
-   "commit": "d95677ad608c214647b87bc20df1642763e3b400",
-   "sha256": "1r32id7fkqhvr6whfx71v4svf70bav5k8b6dlp77gv6p1zyckm22"
+   "commit": "72ede29a0e0467b3b433e8edbee3c79bab005884",
+   "sha256": "15cjwvfv5xdhbym4ms71zdkng4381d3hsdk3kvvx2kycxff52rih"
   },
   "stable": {
    "version": [
     2,
-    1
-   ],
-   "deps": [
-    "cl-lib"
+    2
    ],
-   "commit": "03fc0a38af9e396c98f5a30c392cf757b3a34feb",
-   "sha256": "1wmr1z603wmcv8hxzxn84qxzdwmzmdm8x6f3n0x7klviq4jw6v2x"
+   "commit": "72ede29a0e0467b3b433e8edbee3c79bab005884",
+   "sha256": "15cjwvfv5xdhbym4ms71zdkng4381d3hsdk3kvvx2kycxff52rih"
   }
  },
  {
@@ -37586,16 +37691,16 @@
   "repo": "ananthakumaran/exunit.el",
   "unstable": {
    "version": [
-    20240303,
-    1106
+    20240401,
+    1344
    ],
    "deps": [
     "f",
     "s",
     "transient"
    ],
-   "commit": "5e8f6b681d4745ef23bd8f7ddafba80d6285f26e",
-   "sha256": "0jdkf8jfrw10rbd08k9lmknxpypkywnlm2mn2maz0bfb0cpi6lm3"
+   "commit": "3b63d8835398ccadbcec080c8c1e00cd638b62b0",
+   "sha256": "0ci0x6jzw2ah3hm362r73wj3vipv1f01pybag29znmdvqfg95flb"
   }
  },
  {
@@ -37606,11 +37711,11 @@
   "repo": "agzam/exwm-edit",
   "unstable": {
    "version": [
-    20240221,
-    124
+    20240418,
+    2142
    ],
-   "commit": "19ce910a9183aac78365d674cbeb630464ff1836",
-   "sha256": "06p17hbbv3dk0rsd3yw9f7bqnsar4qphppc9vm870qzmy51np47p"
+   "commit": "046b8c11f71bfd6c798df770c6b7708af2c187a2",
+   "sha256": "1byc21dvsd8hn6fg9l966zc2iqa4a24la05didswyrcs5ya13nbj"
   }
  },
  {
@@ -37668,7 +37773,7 @@
     "xelb"
    ],
    "commit": "047c83aa6b54bfb6ca8cac4d3ea18542611cef77",
-   "sha256": "1bwnw6qacdrm54lx4hc36f9lnidfw1wl399n7wasa24n9wrbr8z0"
+   "sha256": "08g7ly2syvmjgnj8qjgw5cva3wk08jmqnd85h49f76y0clcx6dsx"
   }
  },
  {
@@ -37785,14 +37890,14 @@
   "url": "https://depp.brause.cc/eyebrowse.git",
   "unstable": {
    "version": [
-    20201107,
-    955
+    20240407,
+    1342
    ],
    "deps": [
     "dash"
    ],
-   "commit": "bdc626f88ab8e3d88bf5bf2e929707606675ef92",
-   "sha256": "0fi0j5razgkchkmg4rf36a8d28602f0x2idjga24p93mmfziwb32"
+   "commit": "473381f4f9e847eb50a40ef2306c027432789754",
+   "sha256": "0dfyrln0xwdhy2br3f5vi7c23zidbcg8c640a50fblrcj7p2mm8l"
   }
  },
  {
@@ -38040,19 +38145,19 @@
   "repo": "WJCFerguson/emacs-faff-theme",
   "unstable": {
    "version": [
-    20230531,
-    1920
+    20240416,
+    2057
    ],
-   "commit": "cba6906f6f4f33cbf229a300d83f0e0d925e8f42",
-   "sha256": "1xwcgnkxmkrlj28jh0p3c0x8s84clr8dplhh8f8azx1myql62lp8"
+   "commit": "9b8ff139442b29a16a437c367f201f263bbb884c",
+   "sha256": "103npmlln3c394fkacapx17zjyw4niwqqn8c768gij0ny4k0qfg4"
   },
   "stable": {
    "version": [
     3,
-    3
+    4
    ],
-   "commit": "cb0ce3ef4430eda81aa6225f7083beb8ae03a425",
-   "sha256": "0zq8k1ggv40fdz6a5ri5nxg7yznvlwx7j3cpl7gig1v1p97h0b8k"
+   "commit": "9b8ff139442b29a16a437c367f201f263bbb884c",
+   "sha256": "103npmlln3c394fkacapx17zjyw4niwqqn8c768gij0ny4k0qfg4"
   }
  },
  {
@@ -38106,11 +38211,11 @@
   "repo": "ideasman42/emacs-fancy-compilation",
   "unstable": {
    "version": [
-    20231228,
-    2247
+    20240422,
+    111
    ],
-   "commit": "74833d618024cee47c24aabdc6e9daa4009d0690",
-   "sha256": "1c8rfhab3bi8aw0kyrcb7dz6zcknv3r5dcnrq4z784pqs1gjdq2l"
+   "commit": "347db70ec7252245ab745c1087e8806c684e2a04",
+   "sha256": "191q1gr1nm7q1vh3sp4xx7gwzfpy5c2r7qrqa7dbnd640s8bpq5y"
   }
  },
  {
@@ -38480,11 +38585,11 @@
   "repo": "michaelklishin/cucumber.el",
   "unstable": {
    "version": [
-    20220418,
-    848
+    20240401,
+    242
    ],
-   "commit": "e204d9e204b767cf95d6a051ff283f05dc51e9d3",
-   "sha256": "0zg4nkwfwmil2a3n2gnrwsj14dkwb1hm1mbcgcrg2dgvh45idns6"
+   "commit": "afd49b8a8504e5874027fc0a46283adb1fea26c0",
+   "sha256": "1jlzmd8b03fg0d5hgfvx1czkh5wlw136g34z89cnnmbhi4p4cv3x"
   },
   "stable": {
    "version": [
@@ -38577,11 +38682,11 @@
   "url": "https://opensource.chee.party/chee/feline-mode",
   "unstable": {
    "version": [
-    20230315,
-    1821
+    20230301,
+    1350
    ],
-   "commit": "3f9247f48058285d3e03957680e011ecf58d6feb",
-   "sha256": "10512svsgag8shgwhxgkdncyxdmvc67aj42jmd5yzvzhizd25nsv"
+   "commit": "8c46b1be9e45a38281aa9ddae79fda3c8e4cb5c5",
+   "sha256": "0i8m08xqj24wyij2b3ib8dl3gk6sra9jp73wz2wcknwb58hwnjl9"
   },
   "stable": {
    "version": [
@@ -38600,11 +38705,20 @@
   "repo": "technomancy/fennel-mode",
   "unstable": {
    "version": [
-    20240313,
-    32
+    20240425,
+    129
+   ],
+   "commit": "dd7a320b1582b726d011f4fca24d36614b5ffba8",
+   "sha256": "0f19c55slndp0vdhbwx7s2cz54a26vvyy7knxd2nrhl6wnrazhma"
+  },
+  "stable": {
+   "version": [
+    0,
+    9,
+    1
    ],
-   "commit": "4cdf20b673ed1eb14342d7a470ef75cbe165b0c4",
-   "sha256": "1hvmcnagrz4zwzadsx406hw0gsn66h5rd5y4891pkc260bi8mcyc"
+   "commit": "1ce807cc664cb209afa0e0331d4d2f0cdbc09f78",
+   "sha256": "0dh50nkfxfiqyf19lfqnbfdpd8xf23q38axfli60d0vcix9nhxpv"
   }
  },
  {
@@ -38859,11 +38973,11 @@
   "repo": "jcs-elpa/fill-page",
   "unstable": {
    "version": [
-    20240101,
-    930
+    20240423,
+    924
    ],
-   "commit": "c2bf4d4661c7f618e3c3334dbfd9a142371806d6",
-   "sha256": "1rgb4jj0fz37h09f9zyn8915mfc8x6dhhqbizq6vsq66cdcb1gac"
+   "commit": "c04d29a83d50c9f1dfc039c05c6508f8370514fd",
+   "sha256": "1z0ni6llpvdh9jwmnzvpxnyy4x605qyh07pwaqck7bxl12xc3wh3"
   },
   "stable": {
    "version": [
@@ -39288,20 +39402,20 @@
   "repo": "Anoncheg1/firstly-search",
   "unstable": {
    "version": [
-    20240324,
-    1536
+    20240408,
+    556
    ],
-   "commit": "5a5a60ba276c4362c371e44ff1cfa242b94eef62",
-   "sha256": "1bb4p9jaj7mn451zsx5wzsc9wrkzskg16g4cmxbvsfrlfxzfvicz"
+   "commit": "2045d990509074a8151c8a27db50e477d254aa31",
+   "sha256": "1xaddr6zgnif4gng8sdqfsxckh2k35yblpn3mirz6zw7iyd46zs3"
   },
   "stable": {
    "version": [
     0,
     1,
-    1
+    2
    ],
-   "commit": "93d8b048187ae1e1bac4949c070ed4a8125e74bd",
-   "sha256": "1qp48fnf4ji8w4xn8sngknk79hwfwlk4cyz0717f0fmvk0wp7ias"
+   "commit": "2045d990509074a8151c8a27db50e477d254aa31",
+   "sha256": "1xaddr6zgnif4gng8sdqfsxckh2k35yblpn3mirz6zw7iyd46zs3"
   }
  },
  {
@@ -39312,11 +39426,11 @@
   "repo": "LemonBreezes/emacs-fish-completion",
   "unstable": {
    "version": [
-    20240310,
-    1442
+    20240405,
+    2052
    ],
-   "commit": "5e081b3c061cfd91a98aceb035bdc80240e6ff92",
-   "sha256": "16a9fdjwsh89ar3paprmks89z0ydijn3lqv0r8khmhpa9ljrkrg5"
+   "commit": "807628cc4b0f7a07b6e512f7c7825a78ee5c73fc",
+   "sha256": "12rs6l3w08smp37p18365bj4as1i3jrwl54zbrxw2navjyqmp11m"
   },
   "stable": {
    "version": [
@@ -39372,7 +39486,7 @@
     4
    ],
    "commit": "ba63f0591c3be1644ee7ee972430c74b5d346579",
-   "sha256": "1yjfvb2vn5pmrq5fw4sfx1lfkbnkwlc160izpvkrf9ww9xsas6al"
+   "sha256": "014vbzxz1jmm83a5mg4zsyxm8nw96n8s2l7h3myhrn880d9xnqgg"
   }
  },
  {
@@ -39464,7 +39578,7 @@
     929
    ],
    "commit": "608dd1120d35b02a02570f024c585f7569508586",
-   "sha256": "08yq6hncy8vqa2plpxa4gkq244wig2pd05w4ws0j8nmpwcwl6zki"
+   "sha256": "1gcqllsdlkkmgrwxwczxsj4zllwpprw7df479j6sj563j6qds53r"
   }
  },
  {
@@ -40074,11 +40188,11 @@
   "repo": "flycheck/flycheck",
   "unstable": {
    "version": [
-    20240317,
-    606
+    20240411,
+    449
    ],
-   "commit": "0c8de6de03bb1639552007f70a9c66ebdd382496",
-   "sha256": "0nc5fpggqckpnlxaaf0w517zr6xzamg25yj2hgrp19naqicl7133"
+   "commit": "900b8e79754d21853a6e5b5a2802f317a7112a1e",
+   "sha256": "0k9gf7aim1ns09rmicaqy93lp1915c8llr9i837gw8a86c8fjfrr"
   },
   "stable": {
    "version": [
@@ -40298,7 +40412,7 @@
     "flycheck"
    ],
    "commit": "0eb3dd630391e4d8a26e09c9032cfb9f4bd71e08",
-   "sha256": "1zk3rjabmpfl37zrnnim4h6cbnwp9vg8yjwirw8hjsayfh1pp0kk"
+   "sha256": "1nrhybhpkv3rvks1vqzahfjg0vva76kakd99wpdqsa60ylb5i4jw"
   },
   "stable": {
    "version": [
@@ -41095,14 +41209,14 @@
   "repo": "weijiangan/flycheck-golangci-lint",
   "unstable": {
    "version": [
-    20230523,
-    1855
+    20240329,
+    1647
    ],
    "deps": [
     "flycheck"
    ],
-   "commit": "9def093e416e9a6ddd3cae8590dbb7ff6314925a",
-   "sha256": "1j28zwglv0qygzzsd7rp71gswgidcq7mkaph7z915xci92r2r3ap"
+   "commit": "91c59b128aa6f719069cfb3e5df77588691a3e14",
+   "sha256": "1qw3g0vaj0nf6kf0ga0hayyv099g27s7pa472760fwx2v857vns6"
   }
  },
  {
@@ -41370,14 +41484,14 @@
   "repo": "DamienCassou/flycheck-hledger",
   "unstable": {
    "version": [
-    20230710,
-    1920
+    20240423,
+    1307
    ],
    "deps": [
     "flycheck"
    ],
-   "commit": "9b7ccd3d49765dd68885d1fa0fb48823ea11fb2e",
-   "sha256": "0clgbliwiwllnsxf5j7p3smlf487lrgy2a1rdgmjij3qa55wbl99"
+   "commit": "77369d78c8a00cd55a3ff8b12dc99db136748a4e",
+   "sha256": "0kzfil5nyk9y1nmvz3hn5vgaycid2r34p9vx4m1j02r3y5z0amhm"
   },
   "stable": {
    "version": [
@@ -41469,7 +41583,7 @@
     "flycheck"
    ],
    "commit": "54744a78d06373404933fedc3ca836916e83de51",
-   "sha256": "1vvsswadiks9mpb49vz2q8z69wq0jalsvgalhn10k3pyz7p0abnd"
+   "sha256": "1zdvan6l2s97s7swnccq21z1ja8vl64l757j3hg50ipq8j5yy9dl"
   },
   "stable": {
    "version": [
@@ -41480,7 +41594,7 @@
     "flycheck"
    ],
    "commit": "54744a78d06373404933fedc3ca836916e83de51",
-   "sha256": "1vvsswadiks9mpb49vz2q8z69wq0jalsvgalhn10k3pyz7p0abnd"
+   "sha256": "1zdvan6l2s97s7swnccq21z1ja8vl64l757j3hg50ipq8j5yy9dl"
   }
  },
  {
@@ -42972,15 +43086,15 @@
   "repo": "mohkale/flymake-collection",
   "unstable": {
    "version": [
-    20240316,
-    2135
+    20240331,
+    1808
    ],
    "deps": [
     "flymake",
     "let-alist"
    ],
-   "commit": "f1d889f166934a4d8ec0f0e159e179314c2e8791",
-   "sha256": "0ry8lmbsllsbk5gaywwym5fi1f001g3qzjzwzcz5xq1vim9jzlvj"
+   "commit": "46b65939c8363ec7efd594390a3c5d0becc7b8ab",
+   "sha256": "199rpiwwf5fji6skv2bjdbwid83lpjsqdsa2pykrb3ci2lial53w"
   },
   "stable": {
    "version": [
@@ -43161,25 +43275,25 @@
   "repo": "emacs-eldev/flymake-eldev",
   "unstable": {
    "version": [
-    20240115,
-    1927
+    20240419,
+    2023
    ],
    "deps": [
     "dash"
    ],
-   "commit": "901b2837c7d575f929f87aa83b8e725841927584",
-   "sha256": "0m0zkg85f65dbhrfsvfb2fircgm3wfxg8x4l9iahagamxmxxwhq8"
+   "commit": "d8f4d9da115002afd3785b777cd59a49d170e04a",
+   "sha256": "16jf51kzllrsk8576ydwys683wkdq0akckkpfbhnx3nq4nnf5c3i"
   },
   "stable": {
    "version": [
-    0,
-    9
+    1,
+    0
    ],
    "deps": [
     "dash"
    ],
-   "commit": "64fc128293040753eb874b8ade59803cf1c23a46",
-   "sha256": "00giw9fc86facrhdas5ylz7hmblaaj10i3qzxjcfnwal5c5byfwj"
+   "commit": "947d3f43d19ddf67dffcaa3ba66c51ce1077dda7",
+   "sha256": "0wyfk5vd7rfqlkpbc8hmcv8rdgf27ms0dapiy6wzdc3313kpdgjq"
   }
  },
  {
@@ -43739,6 +43853,21 @@
   }
  },
  {
+  "ename": "flymake-margin",
+  "commit": "a0dc116fbfa4e1196cfc0453d9623426960cbc82",
+  "sha256": "1mqlps7niya36nj7yxc3bpy5j592p5na7w1hbgwd36kaj1wsa4d7",
+  "fetcher": "github",
+  "repo": "LionyxML/flymake-margin",
+  "unstable": {
+   "version": [
+    20240401,
+    2342
+   ],
+   "commit": "fe4da9f947c7a11aba331dd77637d471cedbd061",
+   "sha256": "1p3q7s5n1szggj8w8fmpz8l7g27srmsrgla5wag2320dnd6djrir"
+  }
+ },
+ {
   "ename": "flymake-markdownlint",
   "commit": "0cdb9c33a827d870da79a63d3c0b923fb5b02073",
   "sha256": "1myfk8pk02svr6506ccgs4qhcgq89jhyf91hpwvf1jfc1icr1ph6",
@@ -44101,14 +44230,14 @@
   "repo": "erickgnavar/flymake-ruff",
   "unstable": {
    "version": [
-    20240113,
-    1518
+    20240419,
+    232
    ],
    "deps": [
     "project"
    ],
-   "commit": "165ee1fe7b9d154a316c332bf73f341177126d8c",
-   "sha256": "016322zv6bp97jama1lsh9rrrgv0h30h8rrslq9lmf5y85bqikh4"
+   "commit": "15bf4d3a4ebe899991e385b64901b5cde0daa177",
+   "sha256": "0g9czaf6his577g1fcgi5xiy3fhfjkf8ihilgnxjydiwgr4fg4f1"
   }
  },
  {
@@ -45034,8 +45163,8 @@
   "repo": "magit/forge",
   "unstable": {
    "version": [
-    20240324,
-    2106
+    20240423,
+    2033
    ],
    "deps": [
     "closql",
@@ -45050,8 +45179,8 @@
     "transient",
     "yaml"
    ],
-   "commit": "2a3b41eb6235b3f39c017c1f86b3928a45c5a64d",
-   "sha256": "09nxkknp4f66v4s2hyfxyhg2qgzzcpzw7xsb8v16p9k5khnkrh8m"
+   "commit": "b54c8610a48c092aec8adde289cb9ba52ff7e23c",
+   "sha256": "1akx3qf3kfyc21bhg1pdlp92ncnx95wdhsqaj45haqjalad9a0zp"
   },
   "stable": {
    "version": [
@@ -45269,26 +45398,26 @@
   "repo": "rnkn/fountain-mode",
   "unstable": {
    "version": [
-    20240226,
-    245
+    20240329,
+    229
    ],
    "deps": [
     "seq"
    ],
-   "commit": "20e2fc4aa62d27a48c092761e77d65b64d55a3c5",
-   "sha256": "11c09a470v61cwi0662615q8l58sxd2mk6zqbvrp5g14w8470hgs"
+   "commit": "b25315fed996cf1d41cc2d612dacc62b3e95f928",
+   "sha256": "15r0pzdmimm72jx26zgdxf7fwwcppl45vvh33xx5wnhqzd140hwn"
   },
   "stable": {
    "version": [
     3,
     7,
-    2
+    3
    ],
    "deps": [
     "seq"
    ],
-   "commit": "561982bde5fc4f53f72cebe53e0eea53051ef0e7",
-   "sha256": "0xy45inihqwaix49vxr5yiqyps4r2djkzdd4g7kkc0fv7kzrm1m4"
+   "commit": "b25315fed996cf1d41cc2d612dacc62b3e95f928",
+   "sha256": "15r0pzdmimm72jx26zgdxf7fwwcppl45vvh33xx5wnhqzd140hwn"
   }
  },
  {
@@ -45299,11 +45428,11 @@
   "repo": "gmlarumbe/fpga",
   "unstable": {
    "version": [
-    20240211,
-    213
+    20240329,
+    1759
    ],
-   "commit": "bbd663f29e796ab010a5569f1cdbd706ff0f564a",
-   "sha256": "10mxqmaq1n2691qyydyblwdzyyv5dghm9rc62awfgcjkqd02hmr8"
+   "commit": "34e521962ba3842321d456bd587aa93e4b627969",
+   "sha256": "07v8ybmljx9894q5q8qpvqdia892907ikl9q7vixhxkx5g4adjb6"
   },
   "stable": {
    "version": [
@@ -45453,14 +45582,14 @@
   "repo": "tarsius/frameshot",
   "unstable": {
    "version": [
-    20240101,
-    2216
+    20240415,
+    1537
    ],
    "deps": [
     "compat"
    ],
-   "commit": "77e4f3ad1fd495d983e62a201f6c1f708b616648",
-   "sha256": "08f2l190f37qfidlismy3jylwlk4r2bpgr40cglw5wbid1ln54sy"
+   "commit": "8bceac0988ea2e84452f87b96e0a9f669d717843",
+   "sha256": "1xw8cd8gaawggywpqkalzcjsvn6ns52v7bsp0jmbz113y6l8q689"
   },
   "stable": {
    "version": [
@@ -46146,14 +46275,14 @@
   "repo": "diku-dk/futhark-mode",
   "unstable": {
    "version": [
-    20230511,
-    1235
+    20240403,
+    1143
    ],
    "deps": [
     "cl-lib"
    ],
-   "commit": "8e830a65983c5175b0116360eddefa3ae4fea897",
-   "sha256": "13skbn103411s06fz3vppcnlq56vp35m7slnxw3azf8zq4bb7m4k"
+   "commit": "98f9e7e890e082d45034f935d311a399326010ef",
+   "sha256": "1cbm1navpw8kh6dj5hqk3d0a1fap7bsgfw414scdmjrq3rp672sp"
   }
  },
  {
@@ -46259,14 +46388,14 @@
   "repo": "tarsius/fwb-cmds",
   "unstable": {
    "version": [
-    20240101,
-    2216
+    20240415,
+    1537
    ],
    "deps": [
     "compat"
    ],
-   "commit": "88e823809067983acfaeafa57d0bb6e889429ad2",
-   "sha256": "1bipyxd5zfrhddspkaybfd9gsdlih17il84gkzaqk624k0k07a7p"
+   "commit": "2214ad1094b0b4d466825521eefe39bba65634d0",
+   "sha256": "0cqxin5mnmkjzswh6vk46dhxyh6parxd74w4i2cd44ijrh6rx9yn"
   },
   "stable": {
    "version": [
@@ -46497,11 +46626,11 @@
   "repo": "godotengine/emacs-gdscript-mode",
   "unstable": {
    "version": [
-    20231024,
-    1150
+    20240424,
+    2157
    ],
-   "commit": "8a28276daaa23f10e986367b80dc751c5d26829e",
-   "sha256": "1hwagkbfrrd5bgwykl6hq56jmg0264hd6iz1nljl3n06k1gm3p90"
+   "commit": "2737f1c68cbeba38d34e5728c9fc2cd69e9a8f88",
+   "sha256": "0q8diqv5qcn7xxb42wl5mva8a51l0rhxsbm248walqdrrb0l9jk3"
   },
   "stable": {
    "version": [
@@ -46759,7 +46888,7 @@
     14
    ],
    "commit": "362f1d1189c090ece8b94f6a51680f74b1ff40f9",
-   "sha256": "1gsvl0r6r385lkv0z4gkxirz9as6k0ghmk402zsyz8gvdpl0f3jw"
+   "sha256": "15bmrhpg4kh6dv6bwzxs15wf4rm7a3g09z6ram762hf2kinfiihy"
   }
  },
  {
@@ -46820,7 +46949,7 @@
     "geiser"
    ],
    "commit": "f76b53dbc1465dbd799e29bdcd2be34cc1603f50",
-   "sha256": "1i4ywb4ggq884p2lbpmp6y53l8ys5ajma7sk21zxi1jx28nb01nm"
+   "sha256": "097gyi299fyjy4v22l2l95mzs319ljr9jas4n6893vghac3rf1r6"
   }
  },
  {
@@ -46878,7 +47007,7 @@
     "geiser"
    ],
    "commit": "42376b74ae0ad84d02c26560dfd9181493dcccd7",
-   "sha256": "1aqsvmk1hi7kc3j4h8xlza7c6rwm71v98fv5wpw8kmyj9vsp49wx"
+   "sha256": "04gwd9qa0785zfr6m9a5443ilgvyz05l06cb1waicf83sgp8xl32"
   }
  },
  {
@@ -46967,14 +47096,14 @@
   "repo": "noctuid/general.el",
   "unstable": {
    "version": [
-    20240218,
-    1029
+    20240410,
+    1650
    ],
    "deps": [
     "cl-lib"
    ],
-   "commit": "ced143c30de8e20f5a3761a465e684a1dc48471e",
-   "sha256": "0c13kax2h14b06zjs8wj950y7ykzmabfwdmb8imwmpgfcaasycf2"
+   "commit": "826bf2b97a0fb4a34c5eb96ec2b172d682fd548f",
+   "sha256": "1jillsr80l4wfbcqsxh3zbgbvmbfih2wcz518mgw9p9pwg4xwvy7"
   }
  },
  {
@@ -47101,10 +47230,10 @@
  },
  {
   "ename": "gerrit",
-  "commit": "3b966a2476cf10234686e49d808bcbabe0686891",
-  "sha256": "1ikkd2xjr1n8p43pwycfrsfy9fkib83mf8l0p4bjrjszfcb9ln4v",
+  "commit": "794fa2db8adf93b71a823fe73cfec1342f24d64c",
+  "sha256": "1b2hrb6gg11mcgzfafk2clz4yn8sfqgikv2kaxna0r525g0p6dw3",
   "fetcher": "github",
-  "repo": "thisch/gerrit.el",
+  "repo": "twmr/gerrit.el",
   "unstable": {
    "version": [
     20240306,
@@ -47276,19 +47405,19 @@
   "repo": "anticomputer/gh-notify",
   "unstable": {
    "version": [
-    20230117,
-    317
+    20240411,
+    2031
    ],
    "deps": [
     "forge",
     "magit"
    ],
-   "commit": "e1afdd49deb8ddf1a988e8d3fa699b06dfa92f5f",
-   "sha256": "0vx77b54hyx1f6qq1n57x7sn2080fdb67678jiw3c152jai99kx3"
+   "commit": "bcd30f1804d6e1bf0201a16486d094a3817636b6",
+   "sha256": "0spwcby1ag91wf9k3waydfav5wf37na80vayxf3kgcss2dpixz7n"
   },
   "stable": {
    "version": [
-    0,
+    2,
     1,
     0
    ],
@@ -47296,8 +47425,8 @@
     "forge",
     "magit"
    ],
-   "commit": "8937f64092ea3b7e2cea2d61c12fde8e0f5e7917",
-   "sha256": "1amqyv0xdvl1ghy2pv2kvp2lc2q250p71mq3qdf50v87png57d9p"
+   "commit": "364cc30f619321b98dc6772ca50c87fa14350a50",
+   "sha256": "1bi1jqw3fxzc4q2vxf1pjph0f2ahdzlpfpan83hn404h6hl46ldn"
   }
  },
  {
@@ -47415,16 +47544,16 @@
   "repo": "magit/ghub",
   "unstable": {
    "version": [
-    20240311,
-    1716
+    20240415,
+    1555
    ],
    "deps": [
     "compat",
     "let-alist",
     "treepy"
    ],
-   "commit": "132631529c2e3e75e15608658aed5adfbb6b7409",
-   "sha256": "11cih7igq5amv7w5k5fql0c0plfmgqnkv5p36a2dl3mzk96d8mkn"
+   "commit": "e0a65456098c5e0f2cf2724d071e9033f7b0bf3a",
+   "sha256": "0kxvd5bfwddcikm4xd82n24pm2mx7i4hqi5ikaypdav2hlp9s0x5"
   },
   "stable": {
    "version": [
@@ -47492,7 +47621,7 @@
     2
    ],
    "commit": "fa81e915c256271fa10b807a2935d5eaa4700dff",
-   "sha256": "1jiglrlhrph57p5kkm1qlqihwl6z7h9qh16qmmd5783ynksnbxp3"
+   "sha256": "1yf6yipvhhna29mzaan5vb3d5qvbrkp2awr5diyf381mvxgk8akh"
   }
  },
  {
@@ -47750,26 +47879,26 @@
   "repo": "liuyinz/git-cliff.el",
   "unstable": {
    "version": [
-    20240304,
-    2323
+    20240407,
+    940
    ],
    "deps": [
     "transient"
    ],
-   "commit": "be4b22a2c0d638cf1e5d52acc96933a443d0ca23",
-   "sha256": "0v8jibs3drq2rlmnpjw7ar4zc8fglka53rcqdcmshbq2jh96z0fi"
+   "commit": "b217b0576798767cc0a96343ba43adca3c04f760",
+   "sha256": "03bbm924i10h0chly5za991qplkp15dphgksnhni4i30k5s8znkb"
   },
   "stable": {
    "version": [
     0,
-    5,
+    6,
     0
    ],
    "deps": [
     "transient"
    ],
-   "commit": "0bc7b66d78058f5d41e9adb891d6fb29085153ee",
-   "sha256": "1szbfxy3lc1y8ax3gbxs5spkdjshrpq537yaxd85n9mrv19s3xv0"
+   "commit": "6715b76f0734aa730958e87555b63b59c80585ff",
+   "sha256": "1795zwcic7imh7ybzjvbybyqrnnfh887y1bvn95wyywqrjrkk22m"
   }
  },
  {
@@ -47813,16 +47942,16 @@
   "repo": "magit/magit",
   "unstable": {
    "version": [
-    20240320,
-    2311
+    20240415,
+    1544
    ],
    "deps": [
     "compat",
     "transient",
     "with-editor"
    ],
-   "commit": "4d378d91d245f68a972626c4076a6558d1c19dce",
-   "sha256": "0vix49448b79sxvwzxnij2q7nsv525y5qx814k3q0s80zwd4ny2v"
+   "commit": "68075aff58e7ae5c852b9eabb69df454267deeaf",
+   "sha256": "16l6gm5kh739d3pclyqgfkc0kqf97zl03hzgx5iqadbx8gpcvzxg"
   },
   "stable": {
    "version": [
@@ -47872,7 +48001,7 @@
     "s"
    ],
    "commit": "8a403005ea7f7611bb1bfd829eeefe5a4f10bb40",
-   "sha256": "02hag6jd55mqf0n90p0hvihmqjvd0cdlpm5knsxk3cll7fp0kkkr"
+   "sha256": "0w5xl9r7sbhlwxzg391x50pnsjmjjakn761v3qg0lj6xhv23sdl5"
   }
  },
  {
@@ -47916,11 +48045,11 @@
   "repo": "emacsorphanage/git-gutter",
   "unstable": {
    "version": [
-    20220922,
-    256
+    20240425,
+    647
    ],
-   "commit": "ec28e85d237065cb3c28db4b66d129da6d309f9c",
-   "sha256": "1fx3jp65ibcsv8akd8g4k701cs8yq0sg1bd2qszzfh6lvc4pblmi"
+   "commit": "9afe45b41a82a332606d3e70ef85d323d27b9e4f",
+   "sha256": "04y6aj588068hr6xnyb15g38q9n3w01zh2r525ljmzvrry2lai7y"
   },
   "stable": {
    "version": [
@@ -48095,7 +48224,7 @@
     0
    ],
    "commit": "ea49e2e005af977a08331f8caa8f64d102b3b932",
-   "sha256": "05bkpg7xz8644np9imsj5ms821sbsb784ap5fjdnnn69kllz0d33"
+   "sha256": "0prx0xbnhhp46c09nnzpz07jgr3s5ngrw8zjksf48abr8acwywfv"
   }
  },
  {
@@ -48106,11 +48235,11 @@
   "repo": "sshaw/git-link",
   "unstable": {
    "version": [
-    20240303,
-    1546
+    20240413,
+    1547
    ],
-   "commit": "14156291e0eb7156bd779a80c17e1935a7f8f5e5",
-   "sha256": "1dxmzk4qrz69h097lwshfg4qavdp92an5212ndhjkpmkgvk1v0xl"
+   "commit": "f16ced38f954f1159fda2f0ba7b60842f8d7e9f9",
+   "sha256": "08miy2jdn5bbmwpz5p3a196p60j8ldgb4sk77rf1cz24dp490h1i"
   },
   "stable": {
    "version": [
@@ -48159,14 +48288,14 @@
   "repo": "magit/git-modes",
   "unstable": {
    "version": [
-    20240101,
-    2217
+    20240415,
+    1538
    ],
    "deps": [
     "compat"
    ],
-   "commit": "4a61a9b86df9c824a99c522f42d55e68faf85f91",
-   "sha256": "0k92ivrknyn0h6vv3mq7y9g6hsymbwk45fdcy7dx8da2qsqaxiif"
+   "commit": "52ea2a1281ea9df9b8732fe2add0e6a0c9c2cd11",
+   "sha256": "1nf9ij8qab4lfcgj6h63mxlqph04z4icq5fxs5hsdxzcxrz3y6g1"
   },
   "stable": {
    "version": [
@@ -48247,14 +48376,14 @@
   "repo": "pidu/git-timemachine",
   "unstable": {
    "version": [
-    20240309,
-    1109
+    20240427,
+    924
    ],
    "deps": [
     "transient"
    ],
-   "commit": "5ed73c3831cf6da10ba941e6abba708a86853e8f",
-   "sha256": "1cx2rqv1c162bpf6dn01arjbyqlaxjgr1a674bsvwjin3rwcx22j"
+   "commit": "3780835fcd67c3703ffa768206121851e6895ece",
+   "sha256": "1r2cjz0x30myy9hzbv5iwmq0j9n490rnv6pxfvb00g2kcbvknyna"
   },
   "stable": {
    "version": [
@@ -48785,7 +48914,7 @@
     "yaml-mode"
    ],
    "commit": "2651e831aed84ee2512245952fac94901b086549",
-   "sha256": "0yd6s5vy5afkigm87xyh1nnwljplx1wdn5h02224ica0py48fzhd"
+   "sha256": "16fb4r3vq8xkzl911v7gaky95w1agfxjlpaxpjmidwx48rbcar59"
   }
  },
  {
@@ -48816,7 +48945,7 @@
     "gitlab-ci-mode"
    ],
    "commit": "30ea0eab74b24818f187242b079845785035e967",
-   "sha256": "1w1simnlffg56j79gal1qf1nlav9f8fmr2zfswfrmcv6cac6fhj9"
+   "sha256": "0awv24znkxs0h8pkj4b5jwjajxkf1agam09m5glr8zn5g3xbj798"
   }
  },
  {
@@ -48865,7 +48994,7 @@
     "helm"
    ],
    "commit": "5fe0a66642da6f4e7ba9e1e3a96572c7f1876e37",
-   "sha256": "1mxkcnjgazc1pyjbqqfnhc9phpyrgah960avm2fmi7m9n5v8cf0w"
+   "sha256": "1c5js19zyb1z61hapvbfcl5jhrjqij46cxldgqij6al0scw44dga"
   },
   "stable": {
    "version": [
@@ -48878,7 +49007,7 @@
     "helm"
    ],
    "commit": "5fe0a66642da6f4e7ba9e1e3a96572c7f1876e37",
-   "sha256": "1mxkcnjgazc1pyjbqqfnhc9phpyrgah960avm2fmi7m9n5v8cf0w"
+   "sha256": "1c5js19zyb1z61hapvbfcl5jhrjqij46cxldgqij6al0scw44dga"
   }
  },
  {
@@ -49274,15 +49403,15 @@
   "url": "https://git.thanosapollo.org/gnosis",
   "unstable": {
    "version": [
-    20240314,
-    612
+    20240417,
+    1322
    ],
    "deps": [
     "compat",
     "emacsql"
    ],
-   "commit": "78e066b94809fb7746086a1ca6b7d7c39d353343",
-   "sha256": "11kj6w1daqhblrmvc2zhzd17j5kq1nzrmn3379f80y9gjp4y1blk"
+   "commit": "ad7b3563cb0b63afdb3ee14ada8e282c3a65b72e",
+   "sha256": "1mvf9wq8mwxl5vvnhgsgi6ahw45cg1sihgknb59pp38mg33yarxv"
   },
   "stable": {
    "version": [
@@ -49419,7 +49548,7 @@
     "gnus"
    ],
    "commit": "44ebe0241a19f4052cd427dff408206542aa3c8f",
-   "sha256": "0h7w5wrkrd0jw8nmgbkzq8wam7ynvy7flhjg4frphzmimlhysli2"
+   "sha256": "1fqkclbddwfqywvkrb7l2cpibapxrk82ikdpbxapj09iwyn3ijlz"
   },
   "stable": {
    "version": [
@@ -49430,7 +49559,7 @@
     "gnus"
    ],
    "commit": "210c70f0021ee78e724f1d8e00ca96e1e99928ca",
-   "sha256": "0h7w5wrkrd0jw8nmgbkzq8wam7ynvy7flhjg4frphzmimlhysli2"
+   "sha256": "08j8x0iaz5s9q0b68d8h3153w0z6vak5l8qgw3dd1drz5p9xnvyw"
   }
  },
  {
@@ -50726,11 +50855,11 @@
   "repo": "emacs-evil/goto-chg",
   "unstable": {
    "version": [
-    20220107,
-    1733
+    20240407,
+    1110
    ],
-   "commit": "278cd3e6d5107693aa2bb33189ca503f22f227d0",
-   "sha256": "0rgdzhan4n5bd78wvivacqkp0g7jvnwzgh0571p2m4yra09a36mv"
+   "commit": "72f556524b88e9d30dc7fc5b0dc32078c166fda7",
+   "sha256": "0dv92vhski35g7wdnr4nvjm51bsa7pn8xbq9svp30y28mq8v9gni"
   },
   "stable": {
    "version": [
@@ -50828,7 +50957,7 @@
   "stable": {
    "version": [
     0,
-    36,
+    37,
     1
    ],
    "deps": [
@@ -50837,8 +50966,8 @@
     "magit-popup",
     "s"
    ],
-   "commit": "cc533e4b14c522d0cc44ee646b0a36c408c10425",
-   "sha256": "12vd1xzmj9140a4hfkjmxg5mdj9m03nk31yx9yq1mrgjd89xxp6k"
+   "commit": "bf28314d9e3287ad1674f80d8a80d2245c0159ae",
+   "sha256": "1v02h68s1fir6s7y3zjq0s8gmg5qkac637yf3mv68lglb9cwqjll"
   }
  },
  {
@@ -50888,11 +51017,11 @@
   "repo": "brownts/gpr-ts-mode",
   "unstable": {
    "version": [
-    20230813,
-    1727
+    20240404,
+    1258
    ],
-   "commit": "2e4f89743b115b3e09f0574d0a6e67a7422c554c",
-   "sha256": "0g5pxggra2ijlfyw25bp4j8i741pmn0mxy0srqdwvhjlmpy57nhr"
+   "commit": "a92ab100759cddb51d042adf109f1831a57dbff8",
+   "sha256": "0ijyn9x6i47h9rxnfj51mhkd8qh5mippnnbbh8h388wsbgkj470s"
   }
  },
  {
@@ -50992,28 +51121,28 @@
   "repo": "karthink/gptel",
   "unstable": {
    "version": [
-    20240321,
-    1740
+    20240428,
+    314
    ],
    "deps": [
     "compat",
     "transient"
    ],
-   "commit": "12e00cbd092de95ae7f11aa207cd41dd9fabf883",
-   "sha256": "0ri0saa5750nay1ck46lxa6h21nxh9sgs0n1khr92wda1rinh85g"
+   "commit": "306fe3bd8c2933b48a871976161a7030c7e5b9f8",
+   "sha256": "0zdjzjv6znfzdrjdpkvnhbrb2dkqf9kgg4z2hgl2wmx4lkwnvcdx"
   },
   "stable": {
    "version": [
     0,
     8,
-    0
+    5
    ],
    "deps": [
     "compat",
     "transient"
    ],
-   "commit": "5dcbf40066f5b6fba27af7bf610348dbd781751e",
-   "sha256": "1n3kdylv50filla692j2vcjalw6yza80xlg90cw54m9jp9br8sch"
+   "commit": "45aae4f721e37139a57420273b6e4252229141d0",
+   "sha256": "1w9sji73dixch1b5i420j44qb3jd0zknpypz46g33pbyhg9xwqln"
   }
  },
  {
@@ -51070,10 +51199,10 @@
  },
  {
   "ename": "gradle-mode",
-  "commit": "771cc597daebf9b4aa308f8b350af91a515b44c9",
-  "sha256": "0lx9qi93wmiy9pxjxqp68scbcb4bx88b6jiqk3y8jg5cajizh24g",
+  "commit": "3539c3c724c52be88bb26fdc92a5d09a24c9cd86",
+  "sha256": "0lj3lf0i2491rqfxplcgf8nx9xpazygb2q0hynpq6rq5dkqdd63x",
   "fetcher": "github",
-  "repo": "jacobono/emacs-gradle-mode",
+  "repo": "scubacabra/emacs-gradle-mode",
   "unstable": {
    "version": [
     20150313,
@@ -52309,11 +52438,11 @@
   "repo": "clarete/hackernews.el",
   "unstable": {
    "version": [
-    20240214,
-    1452
+    20240405,
+    807
    ],
-   "commit": "34423948fd37e9f6904e4e3f6d103e311017ed09",
-   "sha256": "1b1s5bkrcsr7kzzm2ck5gwr21gn7r78grhis3zdrjnnxcny7pr5z"
+   "commit": "7c1e9de10fd6b299d45b383302d223d7e3285da9",
+   "sha256": "1006qy4hccjyr056rywnvmc65hypz1fi7j48vlzj2r7c2mqkcns5"
   },
   "stable": {
    "version": [
@@ -52333,11 +52462,11 @@
   "repo": "idlip/haki",
   "unstable": {
    "version": [
-    20240227,
-    1029
+    20240412,
+    1016
    ],
-   "commit": "0854346035d9070d347e4de710af41b293b85fb2",
-   "sha256": "0xb4bgb6cd92h7s0w440b25jli5ss7j910njrfmp5ifwraxjl0jm"
+   "commit": "a564a4feab9e1bd7f022128934ed55c83d120b69",
+   "sha256": "0f3mhvfmvjmkr0lncykkv95n8v5c8nygq209c4b76kwbap06lhcb"
   }
  },
  {
@@ -52514,15 +52643,15 @@
   "repo": "alphapapa/hammy.el",
   "unstable": {
    "version": [
-    20240306,
-    3
+    20240423,
+    407
    ],
    "deps": [
     "svg-lib",
     "ts"
    ],
-   "commit": "d06064633cb142cd52bfa65400fd243eb656ada8",
-   "sha256": "1gk7plcykxzi148cm2z0j731ag01fn54sj1k58nqy541n21qgk9f"
+   "commit": "e3b2e365140abd87537edc09cd87fb04268bc439",
+   "sha256": "166wjgkdrp2gdw10a8bkpqbiaqhhxlwmk80ia9djnz6js50hx8xq"
   },
   "stable": {
    "version": [
@@ -53150,30 +53279,30 @@
   "repo": "emacs-helm/helm",
   "unstable": {
    "version": [
-    20240320,
-    1528
+    20240425,
+    825
    ],
    "deps": [
     "helm-core",
     "popup",
     "wfnames"
    ],
-   "commit": "eae4f5a24a2a5d9fac0ec1a9200362bf9efa911b",
-   "sha256": "1szf9whxq9xd3nn45wg0y6z2xc3g8rcahh3v28aw1v7p7pj5f1y4"
+   "commit": "753563ee010e865f3f0fd9d491c2052eb1347fd8",
+   "sha256": "103pnnki9338ahgz1z2jfl5fyix19mvlsq0cvgn1pnd7h75v14r9"
   },
   "stable": {
    "version": [
     3,
     9,
-    7
+    8
    ],
    "deps": [
     "helm-core",
     "popup",
     "wfnames"
    ],
-   "commit": "b04272a53e5b2db1fc7724d4ba84e51fd20e9c4f",
-   "sha256": "0f7vwrvxg83gril2y5qm4469nzhy51dg49zn643pni6cmhz7r9mx"
+   "commit": "6ae44dba0cb72a3a6950cbe36d104db9c69dfb49",
+   "sha256": "01lqwqjgg1m7ixm160z88cv6mbacs1vxbkvzcgns0lspxckvl1b1"
   }
  },
  {
@@ -54043,26 +54172,26 @@
   "repo": "emacs-helm/helm",
   "unstable": {
    "version": [
-    20240324,
-    1909
+    20240411,
+    1719
    ],
    "deps": [
     "async"
    ],
-   "commit": "8068f5301cd1a8495dee6882de99ffec6f89f55f",
-   "sha256": "0h8g1hjkslhbm371kpsh1gqipl4zlva2fnvgqyspqmgmdpb8g49i"
+   "commit": "6ae44dba0cb72a3a6950cbe36d104db9c69dfb49",
+   "sha256": "01lqwqjgg1m7ixm160z88cv6mbacs1vxbkvzcgns0lspxckvl1b1"
   },
   "stable": {
    "version": [
     3,
     9,
-    7
+    8
    ],
    "deps": [
     "async"
    ],
-   "commit": "b04272a53e5b2db1fc7724d4ba84e51fd20e9c4f",
-   "sha256": "0f7vwrvxg83gril2y5qm4469nzhy51dg49zn643pni6cmhz7r9mx"
+   "commit": "6ae44dba0cb72a3a6950cbe36d104db9c69dfb49",
+   "sha256": "01lqwqjgg1m7ixm160z88cv6mbacs1vxbkvzcgns0lspxckvl1b1"
   }
  },
  {
@@ -54267,37 +54396,6 @@
   }
  },
  {
-  "ename": "helm-dired-history",
-  "commit": "855ea20024b606314f8590129259747cac0bcc97",
-  "sha256": "0qciafa42rbw0dxgkp5mbbwbrcziswmwdj2lszm0px1bip4x7yb8",
-  "fetcher": "github",
-  "repo": "jixiuf/helm-dired-history",
-  "unstable": {
-   "version": [
-    20170524,
-    1046
-   ],
-   "deps": [
-    "cl-lib",
-    "helm"
-   ],
-   "commit": "281523f9fc46cf00fafd670ba5cd16552a607212",
-   "sha256": "1bqavj5ljr350dckyf39i9plkb0rbhyd17ka94n2g6daapgpq0x6"
-  },
-  "stable": {
-   "version": [
-    1,
-    3
-   ],
-   "deps": [
-    "cl-lib",
-    "helm"
-   ],
-   "commit": "281523f9fc46cf00fafd670ba5cd16552a607212",
-   "sha256": "1bqavj5ljr350dckyf39i9plkb0rbhyd17ka94n2g6daapgpq0x6"
-  }
- },
- {
   "ename": "helm-dired-recent-dirs",
   "commit": "b46e83f2ea2c4df1ef343c79c7e249605c9639b3",
   "sha256": "05z2rybisp4nmc3w9p293qli50gmsyb6kfhxy9srxrsjfpxc5l14",
@@ -54431,35 +54529,6 @@
   }
  },
  {
-  "ename": "helm-etags-plus",
-  "commit": "e5d0c347ff8cf6e0ade80853775fd6b84f387fa5",
-  "sha256": "0lw21yp1q6iggzlb1dks3p6qdfppnqf50f3rijjs18lisp4izp99",
-  "fetcher": "github",
-  "repo": "jixiuf/helm-etags-plus",
-  "unstable": {
-   "version": [
-    20201003,
-    1424
-   ],
-   "deps": [
-    "helm"
-   ],
-   "commit": "52598fe69636add4b62cd9873041de5c6db9b7ac",
-   "sha256": "1mpwka62lk040693hllb5hrsf4n5vwkx6khi9i9dbyyc5xgppjm0"
-  },
-  "stable": {
-   "version": [
-    1,
-    1
-   ],
-   "deps": [
-    "helm"
-   ],
-   "commit": "99512856918e485862ceb21460476adb0349f525",
-   "sha256": "08ddxp1hm0ckx6gq9yl6dhh0jrfb6f747snchykl3z5p0ayknvlm"
-  }
- },
- {
   "ename": "helm-evil-markers",
   "commit": "71e3618dc6a9f614397d251398c6304345949d9b",
   "sha256": "12r5adwl9qanfvf3558niqdql67csg2lvyb6b6z3khdr34ac0sr6",
@@ -55929,14 +55998,14 @@
   "repo": "emacs-helm/helm-mu",
   "unstable": {
    "version": [
-    20230408,
-    2126
+    20240421,
+    1656
    ],
    "deps": [
     "helm"
    ],
-   "commit": "d3c23b63281ae7d1be7bd6ac0ea66dd0739deed3",
-   "sha256": "08d5i50nm651ak0kng420s8abl7gx7l0dgzr2a3hakyds06c5vgv"
+   "commit": "36bb948e239f21478939a6848c2b0a3985b27680",
+   "sha256": "18vr00vvra4sb91948h761k30bi9gm2vadyvsyk7r3jxmcyy1ixb"
   }
  },
  {
@@ -56128,8 +56197,8 @@
   "repo": "alphapapa/org-ql",
   "unstable": {
    "version": [
-    20240221,
-    1146
+    20240403,
+    2026
    ],
    "deps": [
     "dash",
@@ -56137,14 +56206,14 @@
     "org-ql",
     "s"
    ],
-   "commit": "bfff0b5517d55d01bf12de27e10a73c9a077767b",
-   "sha256": "1wnvrjx9r9f1ykfdafj9pz1b0n669bqmixb5q35kmahyjis8rswq"
+   "commit": "1f264bf4649dc2ad90f16a763794561ee6164d84",
+   "sha256": "0425r0qjl83d1zq2z9myish3iqa6pc9ml2jlwmffjnj5gm3vgfsj"
   },
   "stable": {
    "version": [
     0,
     8,
-    5
+    6
    ],
    "deps": [
     "dash",
@@ -56152,8 +56221,8 @@
     "org-ql",
     "s"
    ],
-   "commit": "bfff0b5517d55d01bf12de27e10a73c9a077767b",
-   "sha256": "1wnvrjx9r9f1ykfdafj9pz1b0n669bqmixb5q35kmahyjis8rswq"
+   "commit": "1f264bf4649dc2ad90f16a763794561ee6164d84",
+   "sha256": "0425r0qjl83d1zq2z9myish3iqa6pc9ml2jlwmffjnj5gm3vgfsj"
   }
  },
  {
@@ -58505,20 +58574,20 @@
   "repo": "tsdh/highlight-parentheses.el",
   "unstable": {
    "version": [
-    20220408,
-    845
+    20240408,
+    1126
    ],
-   "commit": "438a1cb2563e2a2496be4678cc0df8d5b22caf5d",
-   "sha256": "0ixjai9w9x4sm1lx9yljl58r7ydbbjlkb0a2pbv316l8qph8w44r"
+   "commit": "965b18dd69eff4457e17c9e84b3cbfdbfca2ddfb",
+   "sha256": "0wvhr5gzaxhn9lk36mrw9h4qpdax5kpbhqj44745nvd75g9awpld"
   },
   "stable": {
    "version": [
     2,
-    1,
-    1
+    2,
+    2
    ],
-   "commit": "438a1cb2563e2a2496be4678cc0df8d5b22caf5d",
-   "sha256": "0ixjai9w9x4sm1lx9yljl58r7ydbbjlkb0a2pbv316l8qph8w44r"
+   "commit": "965b18dd69eff4457e17c9e84b3cbfdbfca2ddfb",
+   "sha256": "0wvhr5gzaxhn9lk36mrw9h4qpdax5kpbhqj44745nvd75g9awpld"
   }
  },
  {
@@ -58921,11 +58990,11 @@
   "repo": "ideasman42/emacs-hl-block-mode",
   "unstable": {
    "version": [
-    20230521,
-    2306
+    20240422,
+    126
    ],
-   "commit": "768d92aa93c1894afb6f79feb5eb6b070ab24e4f",
-   "sha256": "1s0xiib43fp53srz57xcxkn91qxq8xcigbx0cwlcxnmjm772nfvl"
+   "commit": "c182a54a5ad0c7757be7fd5f18223528614a119d",
+   "sha256": "0rmdq00cgjfvi6pfcsmm0fk5wwplhirl5gmw76v0b983irmrg96c"
   }
  },
  {
@@ -58954,11 +59023,11 @@
   "repo": "ideasman42/emacs-hl-indent-scope",
   "unstable": {
    "version": [
-    20230801,
-    344
+    20240422,
+    204
    ],
-   "commit": "7734b40be12ab2ca34038896ec6223ecc82d89b4",
-   "sha256": "1psg26i8nxb4755dhjvp48j2wh5gm6rj0h1kqs8m6ivm18ns8mm2"
+   "commit": "b7816f73c1000975835ac28f54f8ecfc6648c0dc",
+   "sha256": "1jl1ica2idnrzcz7m1llvg6rak8kgdvjg7m3ymhlfbai2jycnw9f"
   }
  },
  {
@@ -58969,11 +59038,11 @@
   "repo": "ideasman42/emacs-hl-prog-extra",
   "unstable": {
    "version": [
-    20240209,
-    218
+    20240422,
+    211
    ],
-   "commit": "f658eff775fea05fa6deabf59a5fecf99660fa26",
-   "sha256": "07fm45vjm0aqa67gk4acip6k3p1n5wcjvv60s0m830awipkw4w6v"
+   "commit": "f32c04519f544634bd8dedf55d8bc458d9f64766",
+   "sha256": "1s5qvh12fnm1ryqvdf12p2czn796yxlgjcmxqhgxx8j3qplc47y9"
   }
  },
  {
@@ -59006,14 +59075,14 @@
   "repo": "tarsius/hl-todo",
   "unstable": {
    "version": [
-    20240101,
-    2217
+    20240415,
+    1538
    ],
    "deps": [
     "compat"
    ],
-   "commit": "7146bbcab5248f3fb9d09acb981b8e63f0c73413",
-   "sha256": "07q4piqxbwig12w4sm332v5apw2ph2frvm25jyxpfqsi59ri5vcz"
+   "commit": "36b66cde5777943ca0f190ad7a33fae3b2f6a404",
+   "sha256": "0v9mrkqxbvjpx1ynx8pja5djghwnix80vkbazrfv39j7shmx2dkh"
   },
   "stable": {
    "version": [
@@ -59036,16 +59105,16 @@
   "repo": "narendraj9/hledger-mode",
   "unstable": {
    "version": [
-    20231001,
-    834
+    20240415,
+    1812
    ],
    "deps": [
     "async",
     "htmlize",
     "popup"
    ],
-   "commit": "1b9c65298c34933d6667773d7fa1e89c9841038d",
-   "sha256": "1a0mdclam4s7f8cbikzcb17613x42bq0dyzbsxy1fqgil5n3qhv2"
+   "commit": "5492509a23047f0a1f05a112b47fa34eba7c5e1d",
+   "sha256": "1kwg5bi4290ak6zvnv85rhqim0jiyx49x0nzjhj09863p7fn4l1h"
   }
  },
  {
@@ -59204,38 +59273,6 @@
   }
  },
  {
-  "ename": "homebrew-mode",
-  "commit": "1e4007f6d15574098722fb427b6a9903f77afb21",
-  "sha256": "088wc5fq4r5yj1nbh7mriyqf0xwqmbxvblj9d2wwrkkdm5flc8mj",
-  "fetcher": "github",
-  "repo": "dunn/homebrew-mode",
-  "unstable": {
-   "version": [
-    20220907,
-    1656
-   ],
-   "deps": [
-    "dash",
-    "inf-ruby"
-   ],
-   "commit": "e32da1397ce176766e39c286861ef4c40d64bbf5",
-   "sha256": "1nslh3k6nvx5cgk2zjrfh9lhwkrs089p0hf93p0k8all3pvb7jbz"
-  },
-  "stable": {
-   "version": [
-    2,
-    0,
-    0
-   ],
-   "deps": [
-    "dash",
-    "inf-ruby"
-   ],
-   "commit": "8c04b040656dc99719efd7663c10f26f74df4a47",
-   "sha256": "0hqpj9fqq0b4nj7ya93jgkagafixqkinyr7qj8dsy2j1q458ynzf"
-  }
- },
- {
   "ename": "honcho",
   "commit": "76487b6776d148325c0200d2f788815f115feac9",
   "sha256": "1ywx67dmvackfx19p4fvrb8mm27a7pri3m3bwr2acwd29lrrid2x",
@@ -59320,11 +59357,11 @@
   "repo": "axelf4/hotfuzz",
   "unstable": {
    "version": [
-    20240114,
-    1729
+    20240414,
+    842
    ],
-   "commit": "0d89041ca494432d79e85b0454f21a75c6e21925",
-   "sha256": "1dax67xvi5pd1m5xp8f77ay3rnr28dyn1is8fj5dsn9cqxbqyzpx"
+   "commit": "864d07cadb0ecbbf6c296db6ecfbb38358436e21",
+   "sha256": "0r3slrzhbzgp7a48g2mg7q5yf3cx3xiz0vwjm50yq93xw4mxig8g"
   }
  },
  {
@@ -59608,11 +59645,11 @@
   "repo": "hniksic/emacs-htmlize",
   "unstable": {
    "version": [
-    20240212,
-    1001
+    20240422,
+    1351
    ],
-   "commit": "09d43dfa44899f194095bb3500a45ec5b34d59c6",
-   "sha256": "062ipq90mmjflp7syx5fpy0zykmdv1cjsd2baidbrydv9jzp2qzl"
+   "commit": "54ac89c5edc7a83344cf51d8be08e1e701f88863",
+   "sha256": "0sw9jc860fhlljq9s61qz6cgg2cf43zi2l0ff6mp4np5rdiyrwjd"
   },
   "stable": {
    "version": [
@@ -60053,17 +60090,17 @@
  },
  {
   "ename": "hyperbole",
-  "commit": "eeb6ed97ff5b0e63f5f10a4339d8f790806a6efa",
-  "sha256": "0v48smnd7bm65mjz2waahyi2favbsmynigya5s6xyhx0h6y3apxv",
+  "commit": "cc0dbece50cc4f6eb35f6f6a80af8ca2774410b5",
+  "sha256": "17q2rbk8k9hxawlwb8xz9l2jyjqsggl13izp3dnpm5xschbsm781",
   "fetcher": "git",
   "url": "https://git.savannah.gnu.org/git/hyperbole.git",
   "unstable": {
    "version": [
-    20240322,
-    1628
+    20240420,
+    1609
    ],
-   "commit": "2a10d5edf945a2faa89e59744a3b37ede7496010",
-   "sha256": "0nqih5cqbcs5l2s2kz57682gmkcajd3h7vlvs7nhkril99s85c9g"
+   "commit": "31c60562fc3b2c23719b2c617be8a65bc5d128ff",
+   "sha256": "18k4n5z33275p4idh3r5i1ym148lvnv4r88pqbwh2zb9wg4z1y1c"
   }
  },
  {
@@ -60074,8 +60111,8 @@
   "repo": "ushin/hyperdrive.el",
   "unstable": {
    "version": [
-    20240226,
-    743
+    20240424,
+    1953
    ],
    "deps": [
     "compat",
@@ -60085,8 +60122,8 @@
     "taxy-magit-section",
     "transient"
    ],
-   "commit": "9895acdd1bc14e9a63e3b6ef050510a67ae59e7d",
-   "sha256": "04x951f267gca33vjlzq4fh1xk1py9m9v8qkbsygv19rhqicad4z"
+   "commit": "3d509c7a5998511c2951eedcd236e5939c8c0fc5",
+   "sha256": "0z3ybggny7b7n3fnl4kpg4fgzqh4pdn0v55lsbrbfibvszhbfwxs"
   },
   "stable": {
    "version": [
@@ -60267,11 +60304,11 @@
   "repo": "mkcms/interactive-align",
   "unstable": {
    "version": [
-    20220629,
-    1241
+    20240326,
+    1233
    ],
-   "commit": "bc4d30d79f2f4b413288195ef19894ac0fd258b7",
-   "sha256": "18hldv1id2s3rhh6bsxnv6g0lvw912vlgidwz8540nl6j9vr64dv"
+   "commit": "764aea597b8c9292da2d91294bb6a70e7ad7d6d7",
+   "sha256": "1hdkkrcs86xmw6j5z7bqqvk4kdsf4a8ksr9bfzwkfs8sc68314zv"
   },
   "stable": {
    "version": [
@@ -60662,11 +60699,11 @@
   "repo": "ideasman42/emacs-idle-highlight-mode",
   "unstable": {
    "version": [
-    20240222,
-    2257
+    20240421,
+    647
    ],
-   "commit": "cfb4efba3bbe1f697f6545bee98c479c3f1081b0",
-   "sha256": "1z14xbvmc87dxs9l8igsrd8y70rhmgw4cljmw6q8znhl2733mbj1"
+   "commit": "531be0c2d6dc13c525138c1c9a0f59ac42268f58",
+   "sha256": "1vklsfac0m6wm9mlb7pdrwr0b559qgyvndbkl6221b3dvz0jnb96"
   }
  },
  {
@@ -61080,15 +61117,15 @@
   "repo": "idris-hackers/idris-mode",
   "unstable": {
    "version": [
-    20230802,
-    854
+    20240423,
+    1320
    ],
    "deps": [
     "cl-lib",
     "prop-menu"
    ],
-   "commit": "37c6b819903191acd85c56ef6f7ccf579b57eea4",
-   "sha256": "1m01n454rsj32w4pvg5y2c9jh88agf81w4x3fmvknjqncx9f1mv8"
+   "commit": "aa580b61eb3d409ae9ceb141547937ad27fae24c",
+   "sha256": "0ylb8my9qs9agqv6i7xj4lgca2pg0cdlqagn345pydjhgd8n5cbx"
   },
   "stable": {
    "version": [
@@ -61366,14 +61403,14 @@
   "repo": "tarsius/imake",
   "unstable": {
    "version": [
-    20240101,
-    2217
+    20240415,
+    1539
    ],
    "deps": [
     "compat"
    ],
-   "commit": "769e13579ed19fba1fcb6de7036f5cc9357eb1a7",
-   "sha256": "0pfmrfndx1mwk21grb3kn50yxszm0yifyg3284xy4b60nk4gma6b"
+   "commit": "55c86a15fb253c7e351d55e762ece0a15dc816b9",
+   "sha256": "1svvjgp7ndn4i9rrg5idrqinhpfnmw0m5s5f4nr3c0zp44l2xn4i"
   },
   "stable": {
    "version": [
@@ -62156,7 +62193,7 @@
     "islisp-mode"
    ],
    "commit": "423b84fe4cc6944e36971225b3e19c888e7e4690",
-   "sha256": "174zjlgcikaydgx5npsbwqblzc61pxnnpw50nia8jhh8175j2sbl"
+   "sha256": "0m3vxm4q5kbdn3q524z50zvwdk63gixaqxw9qxa6d175iv0xfwv8"
   },
   "stable": {
    "version": [
@@ -62168,7 +62205,7 @@
     "islisp-mode"
    ],
    "commit": "18258f7134cfd8e0bd12538351b3cd23ae44cec1",
-   "sha256": "174zjlgcikaydgx5npsbwqblzc61pxnnpw50nia8jhh8175j2sbl"
+   "sha256": "1s6alrv1hfi1plj5lh826j0h71xvm2v092kglj3yvy34g73dgrna"
   }
  },
  {
@@ -62434,22 +62471,25 @@
   "repo": "chaosemer/init-dir",
   "unstable": {
    "version": [
-    20240320,
-    2117
+    20240326,
+    2204
    ],
    "deps": [
     "benchmark-init"
    ],
-   "commit": "90abd62ab6d2db311c92671c73228d6d80849930",
-   "sha256": "1jd0wm6lf6jrrm5c3yd96rwmmxnnzqk89n8c1l6gsnyxb01cnnc0"
+   "commit": "5f351041b0f81bfbf81437ce1d39bbd37de9319d",
+   "sha256": "0nb8y9jyrig1217pfddbcfsdfbvqchs8fvyi0hic283c2lygycsy"
   },
   "stable": {
    "version": [
     0,
-    1
+    2
+   ],
+   "deps": [
+    "benchmark-init"
    ],
-   "commit": "93e8ae3a83d4b90b84076a26ad7d34de4595b686",
-   "sha256": "06yydk6w8sg0hbwi4l6h5hvq39vb44ya4kx820cgp5y9zk6khsa3"
+   "commit": "5f351041b0f81bfbf81437ce1d39bbd37de9319d",
+   "sha256": "0nb8y9jyrig1217pfddbcfsdfbvqchs8fvyi0hic283c2lygycsy"
   }
  },
  {
@@ -62460,14 +62500,14 @@
   "repo": "emacs-jp/init-loader",
   "unstable": {
    "version": [
-    20210703,
-    902
+    20240401,
+    103
    ],
    "deps": [
     "cl-lib"
    ],
-   "commit": "ecab5a66b40227c4173992adfa5cfeae09f1657e",
-   "sha256": "0fkxv7i7jdlj0z5n4hfm8897pfy6jxmk8znpfr9564ay90cp445h"
+   "commit": "4ed535f887eb7ac72aedf282b7e4f5a2f7cb7582",
+   "sha256": "1q3fkds0cl9q7z3w2jqqisyblq09whcf2087h0wzl64zwg8ikz07"
   },
   "stable": {
    "version": [
@@ -62660,7 +62700,7 @@
     2108
    ],
    "commit": "8f13262ebcb3f271f1d188584d04ca6d87214111",
-   "sha256": "0cqc23y9n63a7kl2p1zrfcsxnclfxcszfmbh2hmbrs6q05ys0kzg"
+   "sha256": "1aa6c9rswwgxyh8js0bnjrzcmyqc1az7vr5m68lbbmsbjb495awq"
   }
  },
  {
@@ -63007,6 +63047,21 @@
   }
  },
  {
+  "ename": "ipe",
+  "commit": "335a26c767f410d28cab56ec8212fca423a39fec",
+  "sha256": "08dv1kxsmfs123glg0nbcqmadj2x221l4lszb2mza8wxwm9ylz00",
+  "fetcher": "github",
+  "repo": "BriansEmacs/insert-pair-edit.el",
+  "unstable": {
+   "version": [
+    20240428,
+    218
+   ],
+   "commit": "f1a7c5d464a937ec87c23a4a0bb41207eab07adf",
+   "sha256": "0ia0d3qw34l04phl75injihgi3i6m0299d1kj0wvdvm6b8ah5cnz"
+  }
+ },
+ {
   "ename": "iplayer",
   "commit": "6e9a97667365f1c30f53a6aeeb7b909a78888eb1",
   "sha256": "0wnxvdlnvlmspqsaqx0ldw8j03qjckkqzvx3cbpc2yfs55pm3p7r",
@@ -63339,7 +63394,7 @@
     1
    ],
    "commit": "18258f7134cfd8e0bd12538351b3cd23ae44cec1",
-   "sha256": "174zjlgcikaydgx5npsbwqblzc61pxnnpw50nia8jhh8175j2sbl"
+   "sha256": "1s6alrv1hfi1plj5lh826j0h71xvm2v092kglj3yvy34g73dgrna"
   }
  },
  {
@@ -63536,11 +63591,11 @@
   "repo": "abo-abo/swiper",
   "unstable": {
    "version": [
-    20240214,
-    2118
+    20240405,
+    2019
    ],
-   "commit": "749ac1235a7948011cb0caddd4c31037e3314614",
-   "sha256": "0d598jxdrxjlszaikh27v7j2zdndisfqzb384d94siw4rwzfj4zr"
+   "commit": "a38bc60eb78e38304d1183d98d4fc76671263ee1",
+   "sha256": "0vi26fpm6pyhi7475pgs73prrb0yw4k6nss02b7536p2pjnaxckq"
   },
   "stable": {
    "version": [
@@ -63663,39 +63718,6 @@
   }
  },
  {
-  "ename": "ivy-dired-history",
-  "commit": "ad37f6b04ff45fbffeadefc94db16baa27bcc2ac",
-  "sha256": "1vj073k5m0l8rx9iiisikzl053ad9mlhvbk30f5zmw9sw7b9blyl",
-  "fetcher": "github",
-  "repo": "jixiuf/ivy-dired-history",
-  "unstable": {
-   "version": [
-    20210715,
-    48
-   ],
-   "deps": [
-    "cl-lib",
-    "counsel",
-    "ivy"
-   ],
-   "commit": "dba848929cb063a5536cb442c70be1099e2f5baa",
-   "sha256": "1fkw82am49j49s0s3ql22hl9i2imypb0xkrmsgc7sr2hfsim56sd"
-  },
-  "stable": {
-   "version": [
-    1,
-    0
-   ],
-   "deps": [
-    "cl-lib",
-    "counsel",
-    "ivy"
-   ],
-   "commit": "3604840f85e4ff2d7ecab6233e820cb2ec5c8733",
-   "sha256": "0slisbnfcdx8jv0p67ag6s4l0m0jmrwcpm5a2jm6sai9x67ayn4l"
-  }
- },
- {
   "ename": "ivy-emms",
   "commit": "12b434e4c78b3428ee144559cb57ea41df8fb4c5",
   "sha256": "1kqjdw94f2mg5m0zcnah1xk59dp152dm4si2rd9c66jn79s2ai4a",
@@ -64609,7 +64631,7 @@
     1017
    ],
    "commit": "c2ad37e2ada14b5551a83211cc4692b39be4e5fb",
-   "sha256": "18ibnf995yymgxv7xz7xql6lnix3sxn6pn659b1vp00g5d5yl2jf"
+   "sha256": "05izmyp875pfbpygy54ybwkxnjv3fmam024pkjd70i5m6xmg4wi6"
   },
   "stable": {
    "version": [
@@ -65306,25 +65328,25 @@
   "repo": "minad/jinx",
   "unstable": {
    "version": [
-    20240311,
-    821
+    20240415,
+    423
    ],
    "deps": [
     "compat"
    ],
-   "commit": "b09efcb85b1a8db8054a3d5a298e8d9516836f16",
-   "sha256": "0dyfj85h54v3q8fb5sni3xvan78np1xrx4w2mnbsf95z4kac91mh"
+   "commit": "77cac7f240f45d6c4836e844bd68151c7f863298",
+   "sha256": "0paid82g8q7spbi4qb10vbg8izjw7347psybfpww4q0fsjjn6hhj"
   },
   "stable": {
    "version": [
     1,
-    4
+    6
    ],
    "deps": [
     "compat"
    ],
-   "commit": "b2ef3af2857896e20cff0488c46a4bfcfee39ecc",
-   "sha256": "14zamk2s20f6dnv23v9snya0mi1bs2nq6xpp5bj06kiymzwhcqjw"
+   "commit": "f4abad42cd0bdcff62ac325a644cb8faad186a4b",
+   "sha256": "0kl9jpd6a68q1s3lc74jkx0nsk66lpwg7zx61a5h0w0m410l1g1q"
   }
  },
  {
@@ -65415,11 +65437,11 @@
   "repo": "ideasman42/emacs-jit-lock-stealth-progress",
   "unstable": {
    "version": [
-    20230808,
-    1342
+    20240422,
+    105
    ],
-   "commit": "46d7a8a02a01c81125e35c81fdec5295bb4cbcd2",
-   "sha256": "0gzp5ml553kz5abh6fby11h4f3fqrbl8p5vr21c9yifc7wwjhc37"
+   "commit": "8f517230266faf1decb8e948110baef7539c9df3",
+   "sha256": "0n78ijl1z1rlyx8y83c71rhwf63lzicc39d05myj25r31may5k2l"
   }
  },
  {
@@ -65460,11 +65482,11 @@
   "repo": "Michael-Allan/Java_Mode_Tamed",
   "unstable": {
    "version": [
-    20240213,
-    1405
+    20240425,
+    1650
    ],
-   "commit": "a307c5c1ddc2f32199b52f8183b72a0648d4a4e1",
-   "sha256": "15x9brm62zg9k1y69xp3hana27xrzrw099rnfzkvi2palgi7s6w5"
+   "commit": "7c88ff37c2a957a5d07be7a1c878b3325b55f719",
+   "sha256": "1fkf605g0g2vp9ls3g7n4fkwy9p24iyr4k02rfwfqj2m04gzzhws"
   }
  },
  {
@@ -65845,14 +65867,14 @@
   "repo": "mooz/js2-mode",
   "unstable": {
    "version": [
-    20240310,
-    1755
+    20240418,
+    6
    ],
    "deps": [
     "cl-lib"
    ],
-   "commit": "e92829da3d6387252a0a5737c0c5344cb3de1578",
-   "sha256": "163s57j12fcigr096m3rgw07nnhs099dij6x4k9vs3005jy43a8p"
+   "commit": "9b90d31ed968e5c51bd3e279d4003248ea896807",
+   "sha256": "0rn4kwisv6mxhia8a2w2z9iqkp5h64i83sqvmlpnayswh7s88pcy"
   },
   "stable": {
    "version": [
@@ -66026,26 +66048,26 @@
   "repo": "json-emacs/json-mode",
   "unstable": {
    "version": [
-    20240228,
-    1443
+    20240427,
+    1245
    ],
    "deps": [
     "json-snatcher"
    ],
-   "commit": "72f340d3fb4b796589e75cb5985797a7f177f34a",
-   "sha256": "1yy440aaf17y6nrlcq0phz0x5j3wcymcrdm8pm0rmwdxfmar0csx"
+   "commit": "77125b01c0ddce537085201098bea9b4b8ba6be3",
+   "sha256": "16jf8nrbxgwr7a5sgx088j9ymyvh4r6hnc65nqr0vgdjb6w1h598"
   },
   "stable": {
    "version": [
     1,
     9,
-    1
+    2
    ],
    "deps": [
     "json-snatcher"
    ],
-   "commit": "72f340d3fb4b796589e75cb5985797a7f177f34a",
-   "sha256": "1yy440aaf17y6nrlcq0phz0x5j3wcymcrdm8pm0rmwdxfmar0csx"
+   "commit": "77125b01c0ddce537085201098bea9b4b8ba6be3",
+   "sha256": "16jf8nrbxgwr7a5sgx088j9ymyvh4r6hnc65nqr0vgdjb6w1h598"
   }
  },
  {
@@ -66366,20 +66388,20 @@
   "repo": "llemaitre19/jtsx",
   "unstable": {
    "version": [
-    20240315,
-    1515
+    20240418,
+    2018
    ],
-   "commit": "e2fb775b30c2eadd33413d6b1dbdc41ba155c1fe",
-   "sha256": "1215g39mryl36ag5l1pbza7ll1wxd5q37kf8m90dddv9kkzag1a2"
+   "commit": "32dec6d5d5725a7fe2d50537e46c224349008896",
+   "sha256": "1g82cfkkv7vjsk29bfjjwjhwark1h371pzrfqnrm5sfpyn1h3nxv"
   },
   "stable": {
    "version": [
     0,
     4,
-    1
+    2
    ],
-   "commit": "cd84f2d021d8fd1b06dc594bea2f7d8ce753ad2d",
-   "sha256": "1k3rqi3kg84b420m91ycw7r2j42r17jks9a6v0b57lcdcvjbyccz"
+   "commit": "32dec6d5d5725a7fe2d50537e46c224349008896",
+   "sha256": "1g82cfkkv7vjsk29bfjjwjhwark1h371pzrfqnrm5sfpyn1h3nxv"
   }
  },
  {
@@ -66408,11 +66430,11 @@
   "repo": "JuliaEditorSupport/julia-emacs",
   "unstable": {
    "version": [
-    20240315,
-    1726
+    20240409,
+    1316
    ],
-   "commit": "2dfc869ff6b3878407fe7226669dfaae8d38d541",
-   "sha256": "0hqriyh857rvsdhp3pvv3diikaccf7lrjszpmkaaxjyr0d93p2z7"
+   "commit": "60f23fea669add4a1624573eb6383f4180f5a6c9",
+   "sha256": "0lsypckp0ghdbqbrw4m9dgq3w8bmyn15mv6iiya9f84bm6r60dn2"
   },
   "stable": {
    "version": [
@@ -66431,14 +66453,14 @@
   "repo": "tpapp/julia-repl",
   "unstable": {
    "version": [
-    20231026,
-    1005
+    20240408,
+    850
    ],
    "deps": [
     "s"
    ],
-   "commit": "4947319bc948b3f80d61b0d65a719737275949b8",
-   "sha256": "0vfpc4glkbl4ccz34i6fx9ny6zl9h69lw0sbv2rr526y7rr1cr7a"
+   "commit": "801d0fc3d8f6f08f66a11515e6517739a0b312a1",
+   "sha256": "074m8hzg66j9xk44l5qh3fdzwbs5sn97nlwnr5b097431hxwk119"
   },
   "stable": {
    "version": [
@@ -66479,8 +66501,8 @@
   "repo": "gcv/julia-snail",
   "unstable": {
    "version": [
-    20240310,
-    1510
+    20240428,
+    522
    ],
    "deps": [
     "dash",
@@ -66489,8 +66511,8 @@
     "s",
     "spinner"
    ],
-   "commit": "a25ce847480a0c2bed24fad3f1ee62904c9c93a5",
-   "sha256": "07pcdfccsjf51389nivrxiqldvrb2gywqin7s7qy8ci684c6cpzi"
+   "commit": "a63ee2a61efd6af2d6a597bfa40cc98630406a8e",
+   "sha256": "15qqhpbak60bskws5hc6k02089vyzrhivj91jykzi38jzz3vy808"
   },
   "stable": {
    "version": [
@@ -66511,10 +66533,10 @@
  },
  {
   "ename": "julia-ts-mode",
-  "commit": "fd6521584f31c6d349aead6647b58fddbc1529c9",
-  "sha256": "1m6hm69pc1m47bk09cwlv544bkqy552nqg95w3shch18kslgli8n",
+  "commit": "eb0042c1f424c8fd6c051a4e6d537eed839742f1",
+  "sha256": "0ga7mwsf1qmwzkrjcj5fc7xa5qyzbh2xr8lphk3i7j6jazp1ff9c",
   "fetcher": "github",
-  "repo": "ronisbr/julia-ts-mode",
+  "repo": "JuliaEditorSupport/julia-ts-mode",
   "unstable": {
    "version": [
     20230921,
@@ -66700,8 +66722,8 @@
   "repo": "emacs-jupyter/jupyter",
   "unstable": {
    "version": [
-    20231204,
-    529
+    20240418,
+    1642
    ],
    "deps": [
     "cl-lib",
@@ -66710,23 +66732,23 @@
     "websocket",
     "zmq"
    ],
-   "commit": "da306a6dbda6f1e285281765a311938a1d9db022",
-   "sha256": "10inpbqnaqv1f8w2k9cv9dnczb547p3yw9dlndx3d8fwrryql40q"
+   "commit": "f1394d303be76a1fa44d4135b4f3ceab9387a16b",
+   "sha256": "0346ws7ym873dc3xbmpzlg371v0rgclz93hbfzcld7gv4g1dncfb"
   },
   "stable": {
    "version": [
-    0,
-    8,
-    3
+    1,
+    0
    ],
    "deps": [
     "cl-lib",
+    "org",
     "simple-httpd",
     "websocket",
     "zmq"
    ],
-   "commit": "455166712e606c9c6a8de763ea0a77548cadcef2",
-   "sha256": "0acn964xlpn265vry35lrkkpf9z5y4ml96xg8ifadkxwxymm1sh2"
+   "commit": "2059d79b2fecf6d25a6c796b69ab954645ec37d1",
+   "sha256": "0rf8d83bzc05v0w7zpqwcd89cdvrxwzpyf55vmmzj5j755bgxvhs"
   }
  },
  {
@@ -66737,10 +66759,10 @@
   "repo": "leon-barrett/just-mode.el",
   "unstable": {
    "version": [
-    20240312,
-    1626
+    20240424,
+    1809
    ],
-   "commit": "57d854c26033c2f629b63fa4be90236fd3015278",
+   "commit": "4c0df4cc4b8798f1a7e99fb78b79c4bf7eec12c1",
    "sha256": "0lxx22hp1j7q6cjr5ryiymkf7d70pcn5blihrd45h0h5swjx85fl"
   },
   "stable": {
@@ -66970,25 +66992,25 @@
   "repo": "bram85/kagi.el",
   "unstable": {
    "version": [
-    20240323,
-    905
+    20240424,
+    2021
    ],
    "deps": [
     "shell-maker"
    ],
-   "commit": "407781fe4e24e7c57a4751c43b16ae6a69d297f8",
-   "sha256": "0nfsnx4ll3m8h4pj69kgcc8jn3sbldq3xgj0wkrr4x672fg6nyil"
+   "commit": "b3d45264fb25aa95130352c65bc87ec4659e6e71",
+   "sha256": "0jm4h2sbj7wn6s520zi62l9iqggp2q5whpncc1mb3ckfvwn0vhfk"
   },
   "stable": {
    "version": [
     0,
-    4
+    5
    ],
    "deps": [
     "shell-maker"
    ],
-   "commit": "0570505cff30bf03afc44c4095791c99add9d11c",
-   "sha256": "013w68r9205m8q5vhzihawqvaliilspkzcs1n7ky9kpfvysqfnbw"
+   "commit": "a0e06cb928c2def572b4be0a19686e6997c83d92",
+   "sha256": "1x5nrdb2qvy66cbdvk0fc9bq8if3jqzlfnnqfc9y2ifgvh8hg1z5"
   }
  },
  {
@@ -67104,11 +67126,11 @@
   "repo": "meritamen/emacs-kanagawa-theme",
   "unstable": {
    "version": [
-    20240325,
-    305
+    20240424,
+    308
    ],
-   "commit": "fcc2960a911c74e041bc04a4c4b7fecf97f3d176",
-   "sha256": "0npqpbpqy5x4f6zj4gjlg6pv8ip935hv2wffid13rgb6pnd5w27s"
+   "commit": "dca0ee1e2978eb82b37c777d894dc447faa70619",
+   "sha256": "0ac5as108lsc89pggda52jskf110jx1mvdir5rmdpzrl9fdkacix"
   }
  },
  {
@@ -67149,16 +67171,16 @@
   "repo": "magnars/kaocha-runner.el",
   "unstable": {
    "version": [
-    20230511,
-    934
+    20240410,
+    1348
    ],
    "deps": [
     "cider",
     "parseedn",
     "s"
    ],
-   "commit": "9ba7b47d3a3834964f7fcad389081b3b282f692c",
-   "sha256": "0slspzc3zppavmdnw8xpih1iiqyqbyx4mm286lz0naw7g4yrpb12"
+   "commit": "ab5b4f32c733e238bdf08e10cab9a0606675faa4",
+   "sha256": "0qjbaahx04nrasz75ni3s3snhpbrcrv0a6g3gqqjs6f7kw327laj"
   },
   "stable": {
    "version": [
@@ -67382,26 +67404,27 @@
   "repo": "jinnovation/kele.el",
   "unstable": {
    "version": [
-    20230326,
-    33
+    20240415,
+    2325
    ],
    "deps": [
     "async",
     "dash",
     "f",
     "ht",
+    "memoize",
     "plz",
     "s",
     "yaml"
    ],
-   "commit": "15e841fb7bbc08545534e466ce831d6e80fd8901",
-   "sha256": "1pb552y0fp8fhipsjc1k5h3mm76j2dn6q7pznbv9wb48hw4x7z3n"
+   "commit": "8f3c4515ae55376f49d2be338d876686a34d121d",
+   "sha256": "16c7787aspgki933h6393142hxlxz97wcnvg8l4w9c763i5fkqxr"
   },
   "stable": {
    "version": [
     0,
-    4,
-    1
+    5,
+    0
    ],
    "deps": [
     "async",
@@ -67412,8 +67435,8 @@
     "s",
     "yaml"
    ],
-   "commit": "4cf5a16980c81d0d0fab044b72ac6ecb0d9a7814",
-   "sha256": "1wb58g56p99yzdhxcm1iflfvh51al95kpq923qq0pqlz1vqc7b6d"
+   "commit": "642c415a833a7a2aa1fb577261b1e2ae0c4bbb72",
+   "sha256": "07yb4sdgzqwr7snpvmc72zvpc5aq37gmwbjq4b05rwcrhcv88kc6"
   }
  },
  {
@@ -67583,14 +67606,14 @@
   "repo": "tarsius/keycast",
   "unstable": {
    "version": [
-    20240304,
-    1916
+    20240415,
+    1539
    ],
    "deps": [
     "compat"
    ],
-   "commit": "ec90b16baa0e9e7eb43d8c38e6cf6dccf75a95de",
-   "sha256": "19sjfydyagcr3vh989c8v0payd36qj3al4j00jwaj49qb3ck8g25"
+   "commit": "04fa2c65f0ae901ed3015f691ea70f7658ea24b8",
+   "sha256": "088grlq97g5csb1w84mjj7ffc3hjg55aa2i2km63xqx112l7h3m1"
   },
   "stable": {
    "version": [
@@ -67686,14 +67709,14 @@
   "repo": "tarsius/keymap-utils",
   "unstable": {
    "version": [
-    20240101,
-    2218
+    20240415,
+    1539
    ],
    "deps": [
     "compat"
    ],
-   "commit": "868c2b37abebc78c7dff72e1cb2ca85b93d07537",
-   "sha256": "0xrfmi4fcliag59cbrsxwdy9fblswn9iyjdfrp973jbkb5dkzwr6"
+   "commit": "06572084a7965b86262d7f1b52c32ed2dde86a9e",
+   "sha256": "1mlf3g1ywbh4xk5fv0nq9fw6c39xh9r87csr8c09dkrjlgp0fagn"
   },
   "stable": {
    "version": [
@@ -67878,20 +67901,20 @@
   "repo": "hperrey/khalel",
   "unstable": {
    "version": [
-    20230606,
-    1909
+    20240314,
+    1347
    ],
-   "commit": "85df973fe2785caee08d4ef5b23bdaae424a8d98",
-   "sha256": "1k88v8cg1b2dkb9v1jxmbl2sx22gz7xqqppbrnmlafyf3m3bg2hv"
+   "commit": "9dea9e45ebb2364f9fe873ca773b9324b34b720f",
+   "sha256": "0gqwqhbg4hjlgln5gvkppq3rx2iwrqpdp9ivwspnpfqxrn1b8ihd"
   },
   "stable": {
    "version": [
     0,
     1,
-    10
+    11
    ],
-   "commit": "85df973fe2785caee08d4ef5b23bdaae424a8d98",
-   "sha256": "1k88v8cg1b2dkb9v1jxmbl2sx22gz7xqqppbrnmlafyf3m3bg2hv"
+   "commit": "9dea9e45ebb2364f9fe873ca773b9324b34b720f",
+   "sha256": "0gqwqhbg4hjlgln5gvkppq3rx2iwrqpdp9ivwspnpfqxrn1b8ihd"
   }
  },
  {
@@ -67932,28 +67955,28 @@
   "repo": "khoj-ai/khoj",
   "unstable": {
    "version": [
-    20240314,
-    1838
+    20240427,
+    1312
    ],
    "deps": [
     "dash",
     "transient"
    ],
-   "commit": "fba0338787b3197e22d6b4ea7dc94be153be7396",
-   "sha256": "1h686dk9ghkx99bcbs1zf4z0pw69h85lr9a85pdm3am8k3rbxg4i"
+   "commit": "12258f02d7c526bc1c91afddbce165f78c3e8a7a",
+   "sha256": "1g863m2h3xss2aq3xqvh271rjrgzdld7p3qhglc6xz1qn6pvv41g"
   },
   "stable": {
    "version": [
     1,
-    7,
-    0
+    11,
+    1
    ],
    "deps": [
     "dash",
     "transient"
    ],
-   "commit": "fba0338787b3197e22d6b4ea7dc94be153be7396",
-   "sha256": "1h686dk9ghkx99bcbs1zf4z0pw69h85lr9a85pdm3am8k3rbxg4i"
+   "commit": "12258f02d7c526bc1c91afddbce165f78c3e8a7a",
+   "sha256": "1g863m2h3xss2aq3xqvh271rjrgzdld7p3qhglc6xz1qn6pvv41g"
   }
  },
  {
@@ -68389,11 +68412,11 @@
   "repo": "bricka/emacs-kotlin-ts-mode",
   "unstable": {
    "version": [
-    20240318,
-    1601
+    20240417,
+    838
    ],
-   "commit": "5cf2ab3a50ccae4eb23482f5d0a615fa2d22504b",
-   "sha256": "17qdsfb5vbfk1dfj5314xq3i0k5gk1l9893pqbp8ijad0hs5lvl5"
+   "commit": "a8747af6465b384941ce8f199bdfecb3d0c09812",
+   "sha256": "044i01kvpilvj6f8h4xn9a0kkpbmq724adphj51pvibv736w4k4s"
   }
  },
  {
@@ -68526,8 +68549,8 @@
   "repo": "abrochard/kubel",
   "unstable": {
    "version": [
-    20240201,
-    2021
+    20240419,
+    1521
    ],
    "deps": [
     "dash",
@@ -68535,8 +68558,8 @@
     "transient",
     "yaml-mode"
    ],
-   "commit": "7affc4269e2a2925f68f073863af0929854002f2",
-   "sha256": "1956rr9wpdq9zfqks76r21j6hpq5fyvnxia1dqi4hfngyqkfkn2p"
+   "commit": "eb41a6420d20142e5cd33cd34e17654294c99c86",
+   "sha256": "1zqm65vng1fiwfra21hz0xqnbiqh97av8jr981rczxin0byic66a"
   },
   "stable": {
    "version": [
@@ -68817,8 +68840,8 @@
   "repo": "isamert/lab.el",
   "unstable": {
    "version": [
-    20240317,
-    1949
+    20240404,
+    736
    ],
    "deps": [
     "async-await",
@@ -68829,8 +68852,8 @@
     "request",
     "s"
    ],
-   "commit": "bd88c08c02203a66048412672b894c0d7dab3da3",
-   "sha256": "0zxxa99n3wh77fm03mpnz2kxhgs6x2gqhznxh2gy5lx1yd8kg7jp"
+   "commit": "ca6a02c567adb562305d0887140d631e2d6f01f6",
+   "sha256": "02q2w84rpq0cl7crl6k875wj5g1gq5w1kqlr2whq3jwv1ajfcyg1"
   },
   "stable": {
    "version": [
@@ -68937,16 +68960,16 @@
   "repo": "Deducteam/lambdapi",
   "unstable": {
    "version": [
-    20240130,
-    1533
+    20240425,
+    941
    ],
    "deps": [
     "eglot",
     "highlight",
     "math-symbol-lists"
    ],
-   "commit": "bc447c9ab7f9a6ff6b30cabab467f445e30ae86c",
-   "sha256": "13qnkhb68v62q6v4ydzn15qrdkz7whxpa7birnh0rqha39shxb6d"
+   "commit": "a4bc3a492ff542be2989b545362cd98ed38412e1",
+   "sha256": "1968s3bmwhjrvp2lrwbjkjij0xl3s6isxy1fhdkhrpin0iyfizy9"
   },
   "stable": {
    "version": [
@@ -69110,11 +69133,11 @@
   "repo": "lassik/emacs-language-id",
   "unstable": {
    "version": [
-    20240205,
-    2150
+    20240325,
+    1223
    ],
-   "commit": "1ad782d7e448c1e8d8652861f01f4a58315826c3",
-   "sha256": "153810jq4rbgpzvbhz2i1dyrj8bmdf4zxsrhfg0b70iq4bh78bz6"
+   "commit": "c05a566ab5c938b31873b24d698c3d9ff0948ea9",
+   "sha256": "01rhxsbsn4ilkc9z2556lmpzvnx2d2a2xzmxq3932sd55al98whg"
   },
   "stable": {
    "version": [
@@ -69446,6 +69469,15 @@
    ],
    "commit": "e7c3b573fc05fe4d3d322389079909311542e799",
    "sha256": "0ciycsqzyj6ld60c7sfqjq59ln3jvk3w9vy606kqzpcvj01ihmv1"
+  },
+  "stable": {
+   "version": [
+    1,
+    1,
+    0
+   ],
+   "commit": "e7c3b573fc05fe4d3d322389079909311542e799",
+   "sha256": "0ciycsqzyj6ld60c7sfqjq59ln3jvk3w9vy606kqzpcvj01ihmv1"
   }
  },
  {
@@ -69523,6 +69555,36 @@
   }
  },
  {
+  "ename": "lazy-ruff",
+  "commit": "fa727e3b6572b6c5c6469e06b4b6083b87047823",
+  "sha256": "07bp5ris4wr8dhbn55nj6zynd7dw5476dnjj1slz9z3yq15frmkh",
+  "fetcher": "github",
+  "repo": "christophermadsen/emacs-lazy-ruff",
+  "unstable": {
+   "version": [
+    20240402,
+    2200
+   ],
+   "deps": [
+    "org"
+   ],
+   "commit": "c180bb6b0a1d9a65f8963d1b67f09086412bd95f",
+   "sha256": "1g22lqhp1zvikw5i9r3njsfyy4mn0n9xhiq514k9hgvn6y4rglvz"
+  },
+  "stable": {
+   "version": [
+    0,
+    2,
+    4
+   ],
+   "deps": [
+    "org"
+   ],
+   "commit": "114fb5a892a89b5736df5bbf59eede0bede0f800",
+   "sha256": "1a2sn0jjcdya9d2z2r4banybkynwcrg96khnlqixkm0q7zbdasw2"
+  }
+ },
+ {
   "ename": "lcb-mode",
   "commit": "fd1380a9ba363f62f297e3ab2995341258b51fd1",
   "sha256": "184vd5ll0ms2lspzv8zz2zbairsr8i9p3gs28hrnnwm6mrpx4n18",
@@ -69873,11 +69935,11 @@
   "repo": "ledger/ledger-mode",
   "unstable": {
    "version": [
-    20240324,
-    1619
+    20240423,
+    445
    ],
-   "commit": "34a74306ec9e0f542fd421fd4b7edd2e99d8e94d",
-   "sha256": "1fpgzkjszyd4nrxp0qxn8r7475rzplvz7clm4j4agv7nzjkp8m0m"
+   "commit": "c66e3e9adfb5d91f83a401387fad345f12004c8a",
+   "sha256": "1i0rar36xzv2gqkn8cn29m5xz0pwmd5y5in8iac2h2fcxvd48vc5"
   },
   "stable": {
    "version": [
@@ -70723,14 +70785,14 @@
   "repo": "noctuid/link-hint.el",
   "unstable": {
    "version": [
-    20231225,
-    1354
+    20240409,
+    1250
    ],
    "deps": [
     "avy"
    ],
-   "commit": "9153eafc776549376bb85d9ff555fef83aca8285",
-   "sha256": "0bdmd8df8qhk48imk22sgwccyiw1xg9x6hmiwh4d8xiazj0fhaym"
+   "commit": "9ead085e9e6798ec4ea4791d9906d6655ea2b402",
+   "sha256": "055p9p6qnzhnlm97gnbjwk1dls796zsbsvcphlivkx4zlval099w"
   }
  },
  {
@@ -70849,6 +70911,21 @@
   }
  },
  {
+  "ename": "lirve",
+  "commit": "67708cb34ff0000d571b732792e7d7d82bd4084a",
+  "sha256": "160k3kpc0ldxzbqhnvd71jmslwjnbh8cmy474d07ccqjcsn8mkb0",
+  "fetcher": "github",
+  "repo": "tanrax/lirve.el",
+  "unstable": {
+   "version": [
+    20240419,
+    1918
+   ],
+   "commit": "ff3031fa82d854411da40a32c6191d201b4abf09",
+   "sha256": "1m4bg931w83vyhrpgsmdyl6hkknnd99mmvj34g0drhb9170sx0kb"
+  }
+ },
+ {
   "ename": "liso-theme",
   "commit": "27b849f3a41a5ae3d497cef02a95c92fd479b93b",
   "sha256": "014a71dnhnr0dr36sl2h8ffp6il9nasij31ahqz0bjgn4r16s5gy",
@@ -70875,7 +70952,7 @@
     2206
    ],
    "commit": "2b719baf0ccba79e28fcb3c2633c4849d976ac23",
-   "sha256": "1hlqairbjlrcbzb4r5fjm80znr9hdgny3vgm27dwwxxa340m0r6i"
+   "sha256": "0rxqam6cgi404m8n45mw73j3jdd2gb3iwpmyyixbv3cxfb7y1b0l"
   },
   "stable": {
    "version": [
@@ -70884,7 +70961,7 @@
     4
    ],
    "commit": "2b719baf0ccba79e28fcb3c2633c4849d976ac23",
-   "sha256": "1hlqairbjlrcbzb4r5fjm80znr9hdgny3vgm27dwwxxa340m0r6i"
+   "sha256": "0rxqam6cgi404m8n45mw73j3jdd2gb3iwpmyyixbv3cxfb7y1b0l"
   }
  },
  {
@@ -71270,15 +71347,15 @@
   "repo": "sulami/literate-calc-mode.el",
   "unstable": {
    "version": [
-    20231125,
-    29
+    20240402,
+    808
    ],
    "deps": [
     "dash",
     "s"
    ],
-   "commit": "a1a78f26dea70aac1c4df7f5767c8f5c1643d7d1",
-   "sha256": "1asy8g4jsivgqjjlbp8h3q0ksjjwdfvd0sp09ha8cm0n9f991201"
+   "commit": "ceddadc4f130626d3430fc8c5cfff71628221a60",
+   "sha256": "1chs7kpfwjl65p0m4zlgx3lhsixlis9bg3lilmlhw65436y7nl8s"
   }
  },
  {
@@ -71430,20 +71507,20 @@
   "repo": "donkirkby/live-py-plugin",
   "unstable": {
    "version": [
-    20240304,
-    1642
+    20240419,
+    404
    ],
-   "commit": "eafd9848fe6eeea14373c6969c3bd9e5e0838fe2",
-   "sha256": "0qzrv3m7drigvfzg7f5w26aksqy5nk47s8mzhrs3dlg9597xdkn0"
+   "commit": "bea9903bca0ece7546df9a00883f17e4eb49b4c7",
+   "sha256": "0mv9fsmjvixdk3db8j1cw7i2bgi2phwbdwwr0fq96azxzzgqh5jx"
   },
   "stable": {
    "version": [
     4,
     11,
-    2
+    4
    ],
-   "commit": "ae29b9dfca83a83037d780424a85d617cddd2e47",
-   "sha256": "0pj4hxi3cl1nhvbmqsh2vh654b20zvqychxr2i70nwhjax8yq6kd"
+   "commit": "bea9903bca0ece7546df9a00883f17e4eb49b4c7",
+   "sha256": "0mv9fsmjvixdk3db8j1cw7i2bgi2phwbdwwr0fq96azxzzgqh5jx"
   }
  },
  {
@@ -71544,11 +71621,11 @@
   "repo": "tarsius/llama",
   "unstable": {
    "version": [
-    20240312,
-    1636
+    20240415,
+    1539
    ],
-   "commit": "e73736d3bd3a8284a2d48266a0cfdb0c9b9217e4",
-   "sha256": "0f3ysf9rpy1pkg9czl8lblp97l1prv7qb6jsgs206mwbyg1lar15"
+   "commit": "40d671b35e51afbc0d690f33c965d322375c4b27",
+   "sha256": "1khnl8z1hf7qrwmxikkdmxhb9fp1ngbr6x3lh2n4nrr5kinmqf3c"
   },
   "stable": {
    "version": [
@@ -71964,28 +72041,28 @@
   "repo": "doublep/logview",
   "unstable": {
    "version": [
-    20231014,
-    1840
+    20240421,
+    705
    ],
    "deps": [
     "datetime",
     "extmap"
    ],
-   "commit": "9140067afdc2f0d1eb493dc4dfdb53645289dd2b",
-   "sha256": "1sjyxm1a1h971ak5l1js4inx921pf3wx15h220j2pvj4d7arj6f8"
+   "commit": "090fd9a5817ccce733d5aa496b6ebb462560a717",
+   "sha256": "00kwka83kr4826393wjl0skhnzay8b4bfnn7dafv6zzqc84s3bi9"
   },
   "stable": {
    "version": [
     0,
     17,
-    1
+    4
    ],
    "deps": [
     "datetime",
     "extmap"
    ],
-   "commit": "daaa89e969c6a6bb6d93526449a697b4e64bccf2",
-   "sha256": "12vahr4nln20yflxbav9q7y0clhni28h2cajji8q11jyrd4w84jx"
+   "commit": "56591f85ea145a46fa532f4a6ec5b724922d32db",
+   "sha256": "1jd2179wm44f1gxh8qsrnv6nldaz4xzgp4kpamjd53n928s16q10"
   }
  },
  {
@@ -72262,8 +72339,8 @@
   "repo": "emacs-lsp/lsp-dart",
   "unstable": {
    "version": [
-    20240215,
-    14
+    20240401,
+    1646
    ],
    "deps": [
     "dap-mode",
@@ -72275,8 +72352,8 @@
     "lsp-mode",
     "lsp-treemacs"
    ],
-   "commit": "f51c80f5458d8ba4db9dd3781d190c6c32213250",
-   "sha256": "0spc9wmqllb4kcn4cvyj2f7k6lzaz2gd86msf49raqddf023665f"
+   "commit": "ee476aa9bb891873943bb4f9dc4b729921c2de37",
+   "sha256": "1k5h8x4fk6n71hhi8sc5wqasfkf0887hh787n8xdfmkhxc9gids3"
   },
   "stable": {
    "version": [
@@ -72306,8 +72383,8 @@
   "repo": "emacs-lsp/lsp-docker",
   "unstable": {
    "version": [
-    20240318,
-    2039
+    20240419,
+    1428
    ],
    "deps": [
     "dash",
@@ -72317,8 +72394,8 @@
     "s",
     "yaml"
    ],
-   "commit": "5554349883af05fd25d6bbd56d7116d7f965d493",
-   "sha256": "1ybcnha6kbqcx7jrm666jbrnw5hkbws7n541zl2d4jl1gpv09g5y"
+   "commit": "16a0cfbe06813a1191b19e412445f9d34cd7493f",
+   "sha256": "1ry8yxrb0172n1lnqi4av4wmqvhaqyh55ih2xs0hnd8b6ziywafq"
   }
  },
  {
@@ -72626,14 +72703,14 @@
   "repo": "emacs-languagetool/lsp-ltex",
   "unstable": {
    "version": [
-    20240318,
-    224
+    20240425,
+    2049
    ],
    "deps": [
     "lsp-mode"
    ],
-   "commit": "c4bc1515be815b58d76bed2dbc5e7c400c37d6be",
-   "sha256": "0n2vgwag68wsszmjid0zz0jip7nb03chs3v1vh0zm15y0ri0rjl3"
+   "commit": "c473ed37aa0f2769bb0b4c344cc28f95975dbc17",
+   "sha256": "1bqvrhmvp0bxk10fqmra38aczgs6r6gwac2ppmn0fxz85g7ryvfp"
   },
   "stable": {
    "version": [
@@ -72658,8 +72735,8 @@
   "repo": "emacs-lsp/lsp-metals",
   "unstable": {
    "version": [
-    20231017,
-    911
+    20240413,
+    851
    ],
    "deps": [
     "dap-mode",
@@ -72672,8 +72749,8 @@
     "scala-mode",
     "treemacs"
    ],
-   "commit": "da7e54ed65f4e153c94b9c54689908dce142ef37",
-   "sha256": "17zs7s6dmaprdc000b9779flk4iw61gi1xgn2wxwq9bxn1l2p9ny"
+   "commit": "01060e9df33bb077ba6bb56ccfebc140aef8f8f3",
+   "sha256": "0whjz5vh9xf35nvr5an52d7qsf2ayr2pfwvr37qhz1rjg0rv2kzd"
   },
   "stable": {
    "version": [
@@ -72703,8 +72780,8 @@
   "repo": "emacs-lsp/lsp-mode",
   "unstable": {
    "version": [
-    20240324,
-    1820
+    20240427,
+    2141
    ],
    "deps": [
     "dash",
@@ -72715,25 +72792,26 @@
     "markdown-mode",
     "spinner"
    ],
-   "commit": "17e583c253e0cba71ee8a0c25743933c478d5c62",
-   "sha256": "168dpcmjvv590awqzlv5hfc2lpwx1nwn830cqy55nnds4gvmp23s"
+   "commit": "32bf5aa458f2bafb318a34bed64cb3f681aa0b51",
+   "sha256": "1a1g0b4yrwqqj8kpvmpqsjdrshk1kyhy54d9yhpfj4f4gghmay2f"
   },
   "stable": {
    "version": [
-    8,
+    9,
     0,
     0
    ],
    "deps": [
     "dash",
+    "eldoc",
     "f",
     "ht",
     "lv",
     "markdown-mode",
     "spinner"
    ],
-   "commit": "5e0524cc9a4e21c4fe5b35153ad33e7b8a4f9117",
-   "sha256": "1a6jc9sxf9b8fj9h8xlv5k546bkzsy8j5nj19cfama389z0bzcsl"
+   "commit": "a478e03cd1a5dc84ad496234fd57241ff9dca57a",
+   "sha256": "1p4979qbmllmmszmnyml0msxkza4pm14rdacmqczbfs3cs9n6bd3"
   }
  },
  {
@@ -72863,16 +72941,16 @@
   "repo": "emacs-lsp/lsp-pyright",
   "unstable": {
    "version": [
-    20231006,
-    1212
+    20240416,
+    610
    ],
    "deps": [
     "dash",
     "ht",
     "lsp-mode"
    ],
-   "commit": "2f2631ae242d5770dbe6cb924e44c1ee5671789d",
-   "sha256": "1gk23a56jf1v4f4ag07hzji5pw3mq1rq622ggbvqcbc2i2bnvdn1"
+   "commit": "b891a5071fcb4371d7d817069cbb04f5bd160468",
+   "sha256": "1qiqbjvp315m7mjsyj1ab53fpk6m6qn6pjzkxls1m0rmmjmszzg4"
   },
   "stable": {
    "version": [
@@ -73060,15 +73138,15 @@
   "repo": "merrickluo/lsp-tailwindcss",
   "unstable": {
    "version": [
-    20230407,
-    951
+    20240420,
+    1411
    ],
    "deps": [
     "f",
     "lsp-mode"
    ],
-   "commit": "6ade9cacd1db89da0e9c0941a86408a42091d479",
-   "sha256": "0mlr3f3j5vhzmaqd4g3nxvh9slh78bcgml8372cszn0h4f9xvm4v"
+   "commit": "3e3cc80a448e9dd24663eaa41742cda686dac5ab",
+   "sha256": "1llnign4yb4v6c8r7q25b4s63swxlgfxr5acf51s8h4x8rrb11w2"
   },
   "stable": {
    "version": [
@@ -73090,8 +73168,8 @@
   "repo": "emacs-lsp/lsp-treemacs",
   "unstable": {
    "version": [
-    20230811,
-    611
+    20240406,
+    2141
    ],
    "deps": [
     "dash",
@@ -73100,13 +73178,13 @@
     "lsp-mode",
     "treemacs"
    ],
-   "commit": "e66ae2196503d4e84334519e56b4388feffa5060",
-   "sha256": "1x3qylhhk862l88s80r6paagyjh8bw8kamx4hpwh429r88mb9l6v"
+   "commit": "e223fbb6c09ebcd1366d631c191fab485f0678b8",
+   "sha256": "181rlny54gn2621jrihgq6dwdmpdhmb63awlw6jdzvv4v62fs2r1"
   },
   "stable": {
    "version": [
     0,
-    4
+    5
    ],
    "deps": [
     "dash",
@@ -73115,8 +73193,8 @@
     "lsp-mode",
     "treemacs"
    ],
-   "commit": "d82df44d632f331a46eaf1f7a37eb6b1ada0c69b",
-   "sha256": "05ivqa5900139jzjhwc3nggwznhm8564dz4ydcxym2ddd63571k0"
+   "commit": "b90c95e3d1e709ab1e1f8332977ba49384571566",
+   "sha256": "0clifff6xhi1irmx08wjdl13vlh05a7c108hmzzqmmklg76zyr04"
   }
  },
  {
@@ -73127,30 +73205,30 @@
   "repo": "emacs-lsp/lsp-ui",
   "unstable": {
    "version": [
-    20230811,
-    552
+    20240424,
+    412
    ],
    "deps": [
     "dash",
     "lsp-mode",
     "markdown-mode"
    ],
-   "commit": "0dd39900c8ed8145d207985cb2f65cedd1ffb410",
-   "sha256": "1p6lrxvbrq3lv7a1xmbbrsjmgw75p2ay7bpbgdvimrv56fcdys96"
+   "commit": "a59fb5d02eaa97908a06cfc07156de73458c8ae8",
+   "sha256": "1fy172s224ddpdilqflbd3dhs3s6xb2gash6a5svw3lp92mwdnl9"
   },
   "stable": {
    "version": [
-    8,
+    9,
     0,
-    1
+    0
    ],
    "deps": [
     "dash",
     "lsp-mode",
     "markdown-mode"
    ],
-   "commit": "9a8983d95d823ae62e5f842a4bd433c860131398",
-   "sha256": "1pd5lvjlmd6zq64py21yi5zxhcza9g5q48ngfivv7fi7pf3vsv00"
+   "commit": "8aa8b175fc4cdf2d16f6f3fdb2904e8874610c8a",
+   "sha256": "162bxyhiqz4saxvh6n3sdb9hx7px5wpy45wbfg5aiqzlqwgqyg42"
   }
  },
  {
@@ -73527,14 +73605,14 @@
   "repo": "emacsorphanage/macrostep",
   "unstable": {
    "version": [
-    20240320,
-    2226
+    20240328,
+    2134
    ],
    "deps": [
     "cl-lib"
    ],
-   "commit": "b56965e66c82b529ac752fa2abe6ffa3a1dbef58",
-   "sha256": "1d3xnbmg6vz42y9327kapd14f4khnm1ii4bbskcwpimirnr9bnk0"
+   "commit": "e28d0a028f702d2dbf9a33ab691c3459268ed35e",
+   "sha256": "0gw2429mgivvjjpx149m26i6yiayhs9s9g8lx5r64kccdci1xrl1"
   },
   "stable": {
    "version": [
@@ -73657,14 +73735,14 @@
   "repo": "roadrunner1776/magik",
   "unstable": {
    "version": [
-    20240216,
-    921
+    20240409,
+    1410
    ],
    "deps": [
     "compat"
    ],
-   "commit": "6ac83927a6c294619bb99cb1ceb2ecf352498599",
-   "sha256": "0x70dd12w0p44c7b5273fwi51sr2giqcl230170v8vk9rn73p12i"
+   "commit": "7540f14d3d62856313b5cbebefcfd813784ee77b",
+   "sha256": "1rbidw6scix7wcx09wfjhnln1ar5b9f1bdj9k7mfjcvb46mmaczq"
   },
   "stable": {
    "version": [
@@ -73687,8 +73765,8 @@
   "repo": "magit/magit",
   "unstable": {
    "version": [
-    20240320,
-    2336
+    20240426,
+    2118
    ],
    "deps": [
     "compat",
@@ -73699,8 +73777,8 @@
     "transient",
     "with-editor"
    ],
-   "commit": "0e8f25a8d8011328f2bf082232c720b24c2a12c2",
-   "sha256": "0x8qqfpxl1mr8s3q8z38bfng4raxkhnr7djymyagisbblnbxr9zj"
+   "commit": "49ba535f526266b69fcaf7442acfa59ad8473caf",
+   "sha256": "0mcy3sndpajhg95ivr8cl5jsk7pnfc4zhjwyjxsj6yqqc77rw92h"
   },
   "stable": {
    "version": [
@@ -73759,14 +73837,14 @@
   "repo": "ideasman42/emacs-magit-commit-mark",
   "unstable": {
    "version": [
-    20240220,
-    2101
+    20240421,
+    931
    ],
    "deps": [
     "magit"
    ],
-   "commit": "e5aa6a69af963fd25779f5211a7c3d91a65c6b0f",
-   "sha256": "01drp4rlmafzmcqw67nca845ya6532arzddngf6fa4i4q04n8142"
+   "commit": "d09d0df6f8a697446e9fac77428b32997b94c59e",
+   "sha256": "1cd1z9vrmavxdwzxnwbimzcq51c3g8rzd7va01z5k8alh6n98gim"
   }
  },
  {
@@ -73976,16 +74054,16 @@
   "repo": "douo/magit-gptcommit",
   "unstable": {
    "version": [
-    20240303,
-    1649
+    20240406,
+    807
    ],
    "deps": [
     "dash",
     "gptel",
     "magit"
    ],
-   "commit": "28485542a14966141208daf6baedb3833ad2357d",
-   "sha256": "0wl1hccwalrm585kv5jin8975jmymff9xl8jw6rnw1bdrn59a4wl"
+   "commit": "3584b1036574c704e5bae04274b8849590a097b0",
+   "sha256": "1rfiaqdpkf9xh57gf4vsz65f2mnhzxyadddwxyk1yfzan1il7j01"
   }
  },
  {
@@ -74210,15 +74288,15 @@
   "repo": "magit/magit",
   "unstable": {
    "version": [
-    20240311,
-    1407
+    20240426,
+    1325
    ],
    "deps": [
     "compat",
     "dash"
    ],
-   "commit": "8a3c1ccdda8185255ce76adc2ba41b9a43f18b8c",
-   "sha256": "11srw91xq20cv0zd41cvb4pi5x4hdxphsq5y7p8cpxfkvxzvh0nq"
+   "commit": "fef45b274ecb4dc0448bd34dac26f7eaff621e59",
+   "sha256": "1mh6lj5w52id5v7bl0j5789cbg5kirz1r76g5xrby6grk3zln942"
   },
   "stable": {
    "version": [
@@ -74350,8 +74428,8 @@
   "repo": "alphapapa/magit-todos",
   "unstable": {
    "version": [
-    20240321,
-    759
+    20240421,
+    1131
    ],
    "deps": [
     "async",
@@ -74363,8 +74441,8 @@
     "s",
     "transient"
    ],
-   "commit": "332ce763f7336ea356964b92723678aa1ed4640f",
-   "sha256": "0npqns8fy0brxp8mcxbzf7n0ssrz0gb0h8ggqdfc0csal1bjs283"
+   "commit": "f73921e484dbae056e84080c743dffd241cb6bf3",
+   "sha256": "0axy2pnvs7n091cfvsr54a4px5vxj5pbi0lzqak3n4zpzw0vdf0r"
   },
   "stable": {
    "version": [
@@ -75038,25 +75116,25 @@
   "repo": "minad/marginalia",
   "unstable": {
    "version": [
-    20240323,
-    2015
+    20240404,
+    451
    ],
    "deps": [
     "compat"
    ],
-   "commit": "3275d1f85cb020280979a050054b843f7563aea2",
-   "sha256": "0lljik22flx6khc26xyk8qr91p883mgh29fl8rnyyvdlljlsj33a"
+   "commit": "58eb5fd6e5cc21b12c5455ae69e7ae93579647bc",
+   "sha256": "196gjpmzra9azhrnvlhx50dlc59390hq4wxn0f9m4n86ig4i5dr0"
   },
   "stable": {
    "version": [
     1,
-    5
+    6
    ],
    "deps": [
     "compat"
    ],
-   "commit": "98f6e58c12d57283bd7c1cb241664c966dc38ac3",
-   "sha256": "12ncif2lv6d7r2g87lyjr7idbqa283ijb3qgd5a61i3760czs7d6"
+   "commit": "58eb5fd6e5cc21b12c5455ae69e7ae93579647bc",
+   "sha256": "196gjpmzra9azhrnvlhx50dlc59390hq4wxn0f9m4n86ig4i5dr0"
   }
  },
  {
@@ -75315,6 +75393,21 @@
   }
  },
  {
+  "ename": "markdown-ts-mode",
+  "commit": "71f9f3d92d8c442092953b1ca16ec1f6ffa4aa57",
+  "sha256": "02kd9cn962aln4k4bxm7gasiy92qal05rdkyl5b6jq9zkl7qjr6m",
+  "fetcher": "github",
+  "repo": "LionyxML/markdown-ts-mode",
+  "unstable": {
+   "version": [
+    20240422,
+    2329
+   ],
+   "commit": "2f1ee8b94cdf53cebc31ae08ecfbba846193d5e1",
+   "sha256": "1fhvsfa4q46xa092dkpgki8qhfs71x414yrqlxnf2vfs9bd6w7pn"
+  }
+ },
+ {
   "ename": "markdownfmt",
   "commit": "16cee5fe003e3afc7daf6858ed83843b52e44901",
   "sha256": "1wzsw90z988bm94cw4jw5gzjcicgiz4qgn1nsdm8nim9rp43bj17",
@@ -75510,28 +75603,28 @@
   "repo": "martianh/mastodon.el",
   "unstable": {
    "version": [
-    20240309,
-    1753
+    20240327,
+    1353
    ],
    "deps": [
     "persist",
     "request"
    ],
-   "commit": "90aeac60805ed49da29781b979b6ab3edab671aa",
-   "sha256": "1l4arid01m5475wq4sy8j598ww13847sbpg9grl71r72rs83071w"
+   "commit": "d54aa9aa3e4276b9519ff9123e9dc0c123d9dd3b",
+   "sha256": "096zsjlqx2cv4zq607f9n7mr60d5avhfczf3nxsa8wkjsj97qrlh"
   },
   "stable": {
    "version": [
     1,
     0,
-    18
+    19
    ],
    "deps": [
     "persist",
     "request"
    ],
-   "commit": "90aeac60805ed49da29781b979b6ab3edab671aa",
-   "sha256": "1l4arid01m5475wq4sy8j598ww13847sbpg9grl71r72rs83071w"
+   "commit": "d54aa9aa3e4276b9519ff9123e9dc0c123d9dd3b",
+   "sha256": "096zsjlqx2cv4zq607f9n7mr60d5avhfczf3nxsa8wkjsj97qrlh"
   }
  },
  {
@@ -75669,11 +75762,11 @@
   "url": "https://git.code.sf.net/p/matlab-emacs/src",
   "unstable": {
    "version": [
-    20230712,
-    1655
+    20240418,
+    1949
    ],
-   "commit": "9c03ebf876eb8af911d7ce6edda581efa1346f41",
-   "sha256": "095krmn2h6ckfmhwi14nywn278k2ivay50kjssn7sn267i0gbkyp"
+   "commit": "005954382db3df9c41585701467cedffe48b2ff4",
+   "sha256": "018m24csl0d3p8987m7dhb2d3wjkb4r9agxfww31gaszc4bdaar5"
   }
  },
  {
@@ -75773,7 +75866,7 @@
     "test-simple"
    ],
    "commit": "1334f44725bd80a265de858d652f3fde4ae401fa",
-   "sha256": "1milqql0p9gp4dn9phn4fw1izf37wizpirvmzh5s71rwzrr6a9ix"
+   "sha256": "1h1lqrl3p9qgkicds8v44vdry19g53rya56hdj3cz5q8xj1nisn1"
   }
  },
  {
@@ -76094,11 +76187,11 @@
   "repo": "baaash/melancholy-theme",
   "unstable": {
    "version": [
-    20230330,
-    835
+    20240417,
+    136
    ],
-   "commit": "a5c4360f57793401b63b0df382e845b4845c8f97",
-   "sha256": "0351m7py16kxfri5z2d4k89ld1x9kvgj82xd0dv9pyp7pkxrfxwz"
+   "commit": "7ba2bb3f062e798236bfb589381691c5bd9a22be",
+   "sha256": "071a2d9yvfz1cv4fnd1djdbcnqc73v6vb6jgg0nlp1f5dvy9r89x"
   }
  },
  {
@@ -76154,11 +76247,20 @@
   "repo": "gvol/emacs-memento-mori",
   "unstable": {
    "version": [
-    20231220,
-    155
+    20240407,
+    1417
+   ],
+   "commit": "7cc2e89511c1c131789737b4c9daeee0147916f0",
+   "sha256": "1chf40k3gf1gzqlcivl8ry6nwaps7b9cbkmy10pviaslwijifyzh"
+  },
+  "stable": {
+   "version": [
+    0,
+    3,
+    1
    ],
-   "commit": "880df15f3b8ab49deb77586549a2afdec95778b5",
-   "sha256": "153iyz0pxsah1sn2c3x01m2ssclz9jzp2q9ynybr9ly0xl11qnzf"
+   "commit": "5dce0fcd3a2c2becf72e8691d0f66e851b8597a1",
+   "sha256": "1zhwvx9ljsvjr1dv46m98d11645w2sid69jcqp674aif2gm84fw0"
   }
  },
  {
@@ -76246,11 +76348,11 @@
   "repo": "meow-edit/meow",
   "unstable": {
    "version": [
-    20240321,
-    931
+    20240407,
+    1642
    ],
-   "commit": "59c058c3ccf55badda65d55a56aa30cd025441c7",
-   "sha256": "1wx6p4a7p8rl8hp3ylcw7z9cjrvyxi66lkn4wb4khvlz45c75f0n"
+   "commit": "99e08c92bb5d8a695062ce53e2cffeffd3a058a6",
+   "sha256": "12fp6bj38a4rcxrra4w50wb4qrl5jbw1wyp5hhx26ayh99ajaigi"
   },
   "stable": {
    "version": [
@@ -76463,11 +76565,11 @@
   "repo": "wentasah/meson-mode",
   "unstable": {
    "version": [
-    20240211,
-    823
+    20240218,
+    1834
    ],
-   "commit": "ed7d3071059429d816a878f879cb5cfabfa34485",
-   "sha256": "1lx52n6i057s6nin7bmv0sg0craiw2rjmb464cp893hdhb3a576c"
+   "commit": "c8f4fbf075bb5db2bc0872afe02af2edac075e4e",
+   "sha256": "135glcrnbr7wmrygrngsxpma8bxajpxlanbkvk08v92p7ar6a21j"
   },
   "stable": {
    "version": [
@@ -76728,11 +76830,11 @@
   "repo": "kazu-yamamoto/Mew",
   "unstable": {
    "version": [
-    20240305,
-    27
+    20240427,
+    946
    ],
-   "commit": "d41dc93785d231f1e391ba61893aacd1331d5726",
-   "sha256": "1amz0d27xik7zx3mkfr08v5izjvqiabw08x6yzlw60hjx9pafzzl"
+   "commit": "82c531e328ca1073e4d4115ca844ba9f0859c4a1",
+   "sha256": "0xbbdz6yac4qkz1w0ljip9g7knlpp8mhsi6y9pczww1hg05kqlcb"
   },
   "stable": {
    "version": [
@@ -76798,20 +76900,20 @@
   "repo": "purpleidea/mgmt",
   "unstable": {
    "version": [
-    20240305,
-    605
+    20240330,
+    2205
    ],
-   "commit": "90f6d4e5630ab69d737fdf7f17c81843a9c6a081",
-   "sha256": "0a9w5mg5jfbjvkljmqrn1jicfffc888g1ngdipqqvq85hfpcdz44"
+   "commit": "1b00af6926d8699d9d04062f28fddd43c6340bac",
+   "sha256": "0mwbym8j4d4jhba0a1kqmgmdjw7rix91cly45pwjd0g47szm96pl"
   },
   "stable": {
    "version": [
     0,
     0,
-    24
+    26
    ],
-   "commit": "53f9f352335857736f625a019fe14c6750f78434",
-   "sha256": "13jx2ndbjqa5rgslaplx551nnm240pdzcw7bx63wihk85c617lyg"
+   "commit": "1b00af6926d8699d9d04062f28fddd43c6340bac",
+   "sha256": "0mwbym8j4d4jhba0a1kqmgmdjw7rix91cly45pwjd0g47szm96pl"
   }
  },
  {
@@ -76822,26 +76924,26 @@
   "repo": "yoshinari-nomura/mhc",
   "unstable": {
    "version": [
-    20240311,
-    1117
+    20240419,
+    10
    ],
    "deps": [
     "calfw"
    ],
-   "commit": "79ab5687cd4e979d2613f5515c8016058ca9b3c2",
-   "sha256": "16b4a82j8qbcmqx4a21fhj47q7p2cq1vjqmbsw6wxg1bxlcc6z2g"
+   "commit": "b527a88748651d06222ad24f7417941088515275",
+   "sha256": "00wgf4jia9cxjpykzndsgn1jbnm6yqc7l3svfk2hj5j2ga1fax7g"
   },
   "stable": {
    "version": [
     1,
     2,
-    6
+    7
    ],
    "deps": [
     "calfw"
    ],
-   "commit": "79ab5687cd4e979d2613f5515c8016058ca9b3c2",
-   "sha256": "16b4a82j8qbcmqx4a21fhj47q7p2cq1vjqmbsw6wxg1bxlcc6z2g"
+   "commit": "b527a88748651d06222ad24f7417941088515275",
+   "sha256": "00wgf4jia9cxjpykzndsgn1jbnm6yqc7l3svfk2hj5j2ga1fax7g"
   }
  },
  {
@@ -77043,14 +77145,14 @@
   "repo": "liuyinz/mini-echo.el",
   "unstable": {
    "version": [
-    20240311,
-    2001
+    20240418,
+    1047
    ],
    "deps": [
     "hide-mode-line"
    ],
-   "commit": "9b3fd955e04ec168fa769a79cb9f480e84f90ffd",
-   "sha256": "1dw1l3w9y9p0128ywazlglbbxmsmzhngj1q1x640k174vlwx48hg"
+   "commit": "adeb402f5e508424960b6165d596b25fd6a6d756",
+   "sha256": "0jcac2p3ml17q6fsf8jaxc0nx17jjj3z1zvcsqv0k2r53ya8k41x"
   },
   "stable": {
    "version": [
@@ -77272,14 +77374,14 @@
   "repo": "tarsius/minions",
   "unstable": {
    "version": [
-    20240101,
-    2220
+    20240415,
+    1544
    ],
    "deps": [
     "compat"
    ],
-   "commit": "07caa8c30b12c35f3fe563a036f9823c4a6a5f01",
-   "sha256": "07419zfsi871i6lg5g0f99d8ai2znifcfidywly3mb1hrizzylb1"
+   "commit": "ef234da0625397b994c0a17d1038037732c3c457",
+   "sha256": "1zd1gjg16yggmccpvv7fv32pfmh2a6227p21q2vdh8f1p0bwm10p"
   },
   "stable": {
    "version": [
@@ -77491,7 +77593,7 @@
     1
    ],
    "commit": "beb22e85f6073a930f7338a78bd186e3090abdd7",
-   "sha256": "1yf21gm4ziplmgx8yn7jqq45mwfiindbrman7fc5b9ifq78x9ryn"
+   "sha256": "1dhljrh44dsnixd8hbb11k6dgap8r8n7jknhfy2afdzq889fih74"
   }
  },
  {
@@ -77520,20 +77622,20 @@
   "repo": "jdtsmith/mlscroll",
   "unstable": {
    "version": [
-    20240119,
-    2149
+    20240420,
+    1515
    ],
-   "commit": "47182e0afb966994e4ea26842652fb4da9735103",
-   "sha256": "0h52m1gc0ynajfkxl1xhi4p7hz0kfs1fp6i1wy0qpp7x53w4aig8"
+   "commit": "cb9d7a256b8998565795d4be469d5a8dea96eb16",
+   "sha256": "1mvgb8fi7w0rpksfz4aalmn7f5a67zbq6a64cx9cmmqnn6r3llss"
   },
   "stable": {
    "version": [
     0,
     1,
-    8
+    10
    ],
-   "commit": "d4661c2bfd20da79185b904d8a28357e3c4d9c7d",
-   "sha256": "160lwh0sqragpm10i6yp1pvqjz0y16zqfg0fgkwzks10s8lcq6aq"
+   "commit": "cb9d7a256b8998565795d4be469d5a8dea96eb16",
+   "sha256": "1mvgb8fi7w0rpksfz4aalmn7f5a67zbq6a64cx9cmmqnn6r3llss"
   }
  },
  {
@@ -77762,20 +77864,20 @@
   "repo": "DCsunset/modaled",
   "unstable": {
    "version": [
-    20240302,
-    12
+    20240330,
+    1956
    ],
-   "commit": "0d8f8941f3e31a19641db4b21dd7d963c514ec92",
-   "sha256": "0vylps3x6jqfy8la1hq3969qms2pcmrcg8dnsbbydinngvh46szn"
+   "commit": "01ef8befac15f77f1b9129bade37e78b6bf7d612",
+   "sha256": "1nza8pff0adj6sp20wr3yb8a7jdlklwk49qwamb09pal3lidq7pf"
   },
   "stable": {
    "version": [
     0,
     8,
-    2
+    3
    ],
-   "commit": "f372a5759e40b79bb4868d12209a5eb7dc661a54",
-   "sha256": "0kiksf8kax0l33aqag9igmwkm0yccmijzji4ff2bcil2dmxcj47r"
+   "commit": "01ef8befac15f77f1b9129bade37e78b6bf7d612",
+   "sha256": "1nza8pff0adj6sp20wr3yb8a7jdlklwk49qwamb09pal3lidq7pf"
   }
  },
  {
@@ -77863,14 +77965,14 @@
   "repo": "tarsius/mode-line-debug",
   "unstable": {
    "version": [
-    20240101,
-    2221
+    20240415,
+    1545
    ],
    "deps": [
     "compat"
    ],
-   "commit": "b5fbea38d6d92b50be14be99065b44b0ef832983",
-   "sha256": "02d9q9bfak5dpv2v4q2qicrwf82gn8fj0srhalcnlzkrgfv9z0jz"
+   "commit": "0ff591110c9db0bbc1372234902e28486c168a86",
+   "sha256": "0whjiadyygq8i3mf325zha8jl6hxm1q44rwvmlzvxzmjm42ag2gg"
   },
   "stable": {
    "version": [
@@ -77893,11 +77995,11 @@
   "repo": "ideasman42/emacs-mode-line-idle",
   "unstable": {
    "version": [
-    20230704,
-    12
+    20240421,
+    623
    ],
-   "commit": "1dc0115bd4864b8b8cc9cbaac75c03d764070873",
-   "sha256": "006ynxzakfc11lz9s915agdiiisnbfxiv9a7mj9g0890qh7isjvy"
+   "commit": "3bc67905ea3349ec20d4c537a0c5f2e833b9e905",
+   "sha256": "03z1940h3p5hlmgl0n82im4hn04rcmw4xwq3ygmqg999l10dcr2c"
   }
  },
  {
@@ -78037,11 +78139,11 @@
   "repo": "protesilaos/modus-themes",
   "unstable": {
    "version": [
-    20240322,
-    519
+    20240427,
+    843
    ],
-   "commit": "bea2f68833e1f46ef60eba25f67a8ab162e7bccb",
-   "sha256": "1h4wzarzgk06v14xxsya0fym4bd17vgmkw3skd8sc81bak2fb74d"
+   "commit": "56bd9c8f32b4179e4207f553f8656934c0076a85",
+   "sha256": "0id7b9gl1cl2w2q921fx1gvmh9dsvll9r93k0yszn6v3hf98sjpm"
   },
   "stable": {
    "version": [
@@ -78061,11 +78163,11 @@
   "repo": "kuanyui/moe-theme.el",
   "unstable": {
    "version": [
-    20240308,
-    921
+    20240417,
+    1111
    ],
-   "commit": "56286c6b869520807596e3e8af1b37c50e5a1349",
-   "sha256": "122zn5hvpc56cg6c8h6j9v2cqimzrqlrr49glqfw9wix648xapzm"
+   "commit": "0fb1274cb29863597e627757230feedf7d90482c",
+   "sha256": "015wi8nx18705yqrkgrvk52rsb2nyv91c04wyx6imwfvfp2vh52d"
   },
   "stable": {
    "version": [
@@ -78228,11 +78330,11 @@
   "repo": "ideasman42/emacs-mono-complete",
   "unstable": {
    "version": [
-    20230808,
-    1345
+    20240421,
+    1234
    ],
-   "commit": "d22df33d3523f1c0adf62bc0546da22792a2852d",
-   "sha256": "0g0xlxn33yi8v0smncwjz46mxnc742zryssmf1w4k00856ydd6bm"
+   "commit": "3cb92a75cf20e1a5394e77e0e44a6b1c14cf315b",
+   "sha256": "1jzjy4pwwlyphj0warfywfqm2025wfkb8hvnn0478j26hs7141xs"
   }
  },
  {
@@ -78355,7 +78457,7 @@
     1309
    ],
    "commit": "d1c024fdf9543fbc0101cd2c6e8b248378f591cd",
-   "sha256": "1xvx26xbd0ylih6xyvwylzjl7z5dbw9sv828p5zykr6fg2kz9nb3"
+   "sha256": "11r54zj0q14f88wl6bp46gz4j2wv6cb37d42b2hfvhkgh88a71c5"
   },
   "stable": {
    "version": [
@@ -78364,7 +78466,7 @@
     1
    ],
    "commit": "d5b6b5b3552a5b84f4f887e2f805d9e72747fab2",
-   "sha256": "1xvx26xbd0ylih6xyvwylzjl7z5dbw9sv828p5zykr6fg2kz9nb3"
+   "sha256": "19yh93kkyailczv1yyg7jhmzwl768sg0rk4as5kgqays87h9bnfn"
   }
  },
  {
@@ -78399,14 +78501,14 @@
   "repo": "tarsius/moody",
   "unstable": {
    "version": [
-    20240311,
-    1617
+    20240415,
+    1545
    ],
    "deps": [
     "compat"
    ],
-   "commit": "65116ee9a8d8ca5a9e1e579b5957e0e7673c1dfe",
-   "sha256": "196r6nwfjj0gj1b356gb0snqq4iqkv0k35nd17mmg48qdl517n4v"
+   "commit": "28abaf874b87b6d6c09ef1ab63856de4ed743974",
+   "sha256": "033wg9qfw2rklinvii6dqpqcdg0agxsn2njq3ywq0xwwldhmms6p"
   },
   "stable": {
    "version": [
@@ -78526,14 +78628,14 @@
   "repo": "tarsius/morlock",
   "unstable": {
    "version": [
-    20240125,
-    1741
+    20240415,
+    1545
    ],
    "deps": [
     "compat"
    ],
-   "commit": "2a62e20a7648747e74313ebcf3932fa8a858739b",
-   "sha256": "0pg5pz6k51kvipdyq80w4sishfns53kfqjqz4qhnbiwjb6h1c3pb"
+   "commit": "ea728ba7dbae47d8516a6026038c305092d38078",
+   "sha256": "0qa4i6hx9xljrmhds7xfnyq391p7hkzdmkfa16yhfs75479dw805"
   },
   "stable": {
    "version": [
@@ -78699,20 +78801,20 @@
   "repo": "amnn/move-mode",
   "unstable": {
    "version": [
-    20240309,
-    2223
+    20240409,
+    2159
    ],
-   "commit": "b07983c8df12fa428117cea8e09067ae952871d9",
-   "sha256": "09dnxmx0rc3v26fhi5s9f7ri05fx9p02m284qhkgr82ipdn0whnb"
+   "commit": "f974cc69f279c45026f7386e0194be74779334a8",
+   "sha256": "1wz3dw39bv351gxqwis7lbsynr04fniprymjdb0xdcfhdfxnpy3x"
   },
   "stable": {
    "version": [
     1,
-    0,
-    1
+    1,
+    0
    ],
-   "commit": "b07983c8df12fa428117cea8e09067ae952871d9",
-   "sha256": "09dnxmx0rc3v26fhi5s9f7ri05fx9p02m284qhkgr82ipdn0whnb"
+   "commit": "f974cc69f279c45026f7386e0194be74779334a8",
+   "sha256": "1wz3dw39bv351gxqwis7lbsynr04fniprymjdb0xdcfhdfxnpy3x"
   }
  },
  {
@@ -79284,22 +79386,7 @@
     812
    ],
    "commit": "98110bb9c300fc9866dee8e0023355f9f79c9b96",
-   "sha256": "1ysj9x9m1lxg1gy0z7y07qsi3g26qfqdwwa8kjkf40pchb2wxg0s"
-  }
- },
- {
-  "ename": "mu4e-crypto",
-  "commit": "64a39c1ab11c4bfee737bda22b39eea47e07ed74",
-  "sha256": "0zcyrm9027h7vm6fnldb331yvxwnjsm5bw3a21ynxvirh7dw9lf5",
-  "fetcher": "github",
-  "repo": "meritamen/mu4e-crypto",
-  "unstable": {
-   "version": [
-    20240120,
-    646
-   ],
-   "commit": "8eb4ce811044aa93f3527adf35984aa502ac0d4b",
-   "sha256": "0231q37vj960f6czr2l5fqsgsdiyndlls35dvqzlmzrqpzjcj81m"
+   "sha256": "080s96jkcw2p288sp1vgds91rgl693iz6hi2dv56p2ih0nnivwlg"
   }
  },
  {
@@ -79346,20 +79433,20 @@
   "repo": "mkcms/mu4e-overview",
   "unstable": {
    "version": [
-    20240219,
-    2302
+    20240330,
+    1441
    ],
-   "commit": "7843cb64c861729bfd57ec3e8ad7faf6edb2e543",
-   "sha256": "1sq5lfhs00dr3mc25wjm2y18ac78rh7dkj4f67kndhrrr99z6zcg"
+   "commit": "758ea4b3945fa377ae33e45f8213280d38e0551d",
+   "sha256": "0qdxsfsambbrb3dbch4pyjm9k59cbjlzkx9075aipdi8nl0nvygf"
   },
   "stable": {
    "version": [
     0,
-    3,
+    4,
     0
    ],
-   "commit": "0e711f47f9bab8bea9fe4f8e857920b879e70dcd",
-   "sha256": "0zh4pi4d74cs9p8ll7fzq8chxk84safvb7svxcss692jjsqvj89y"
+   "commit": "758ea4b3945fa377ae33e45f8213280d38e0551d",
+   "sha256": "0qdxsfsambbrb3dbch4pyjm9k59cbjlzkx9075aipdi8nl0nvygf"
   }
  },
  {
@@ -79370,11 +79457,11 @@
   "repo": "wavexx/mu4e-query-fragments.el",
   "unstable": {
    "version": [
-    20211030,
-    2307
+    20240415,
+    1421
    ],
-   "commit": "8d93ede3772353e2dbc307de03e06e37ea6a0b6c",
-   "sha256": "0pl9hiwl5snpw9cfga0v9ypw83mz4nw6754whd4f37fs9xc6df31"
+   "commit": "14b38e4a7b7aae47f3c1bdccb6680f8c38c645bf",
+   "sha256": "037lg0h9mgp0393gxqdxqkgl0kb77rh72bf8frswjjg0df5pdwbn"
   }
  },
  {
@@ -79385,28 +79472,29 @@
   "repo": "lordpretzel/mu4e-views",
   "unstable": {
    "version": [
-    20230105,
-    1443
+    20240401,
+    1150
    ],
    "deps": [
     "esxml",
     "ht",
     "xwidgets-reuse"
    ],
-   "commit": "ba223d69fa9edf7b039bd728f4630c64b08c39ff",
-   "sha256": "0ss7ipp80wflrhxa1x974bb9gvc8fnrrcdzf8gzxzlabgw1qsjwl"
+   "commit": "e0f60e314d034e02fbc3696c3cb9e3598eed9070",
+   "sha256": "0n6s4qab595rda1xfyad9qvry1ipfih4jzkaxabhw3a60jk3h3vy"
   },
   "stable": {
    "version": [
     0,
-    5
+    7
    ],
    "deps": [
+    "esxml",
     "ht",
     "xwidgets-reuse"
    ],
-   "commit": "33fa9f584034978006108a4498566e933493f852",
-   "sha256": "01636rhmgnjz9z81xppqlrlwwg0jcy48k9p3hh865wncp1q2jsb5"
+   "commit": "e0f60e314d034e02fbc3696c3cb9e3598eed9070",
+   "sha256": "0n6s4qab595rda1xfyad9qvry1ipfih4jzkaxabhw3a60jk3h3vy"
   }
  },
  {
@@ -80247,11 +80335,11 @@
   "repo": "kenranunderscore/emacs-naga-theme",
   "unstable": {
    "version": [
-    20240324,
-    1932
+    20240327,
+    819
    ],
-   "commit": "7cef2b6097bb73a6a293a81a0f1fca1e9893321c",
-   "sha256": "13xrpd13rxv5zp4w1hgyayyjxa0ap7g505yrhdq8sfirlsfic57g"
+   "commit": "a044e5eb5bf9bbefe34982ae9cc80ac9739a3e58",
+   "sha256": "13m17vwwrcs44xhzkh80nssgsn9p84f5vl50zk4y1712d087pc0d"
   }
  },
  {
@@ -80848,20 +80936,20 @@
   "repo": "babashka/neil",
   "unstable": {
    "version": [
-    20231214,
-    736
+    20240402,
+    1032
    ],
-   "commit": "abfe86474986a36c6c0daa56f8c4b6e1fb883743",
-   "sha256": "06bh762as20mlbydixbnfmn4i03gh4sz3iwv38chb5ma26w59m13"
+   "commit": "9a795828e4c201a47c5851157868c06f2ca37448",
+   "sha256": "0fxla1s6sn9gzqrkmlm00klhbfa7h0ki80j8jp68zlqc984ah5a2"
   },
   "stable": {
    "version": [
     0,
-    2,
-    63
+    3,
+    65
    ],
-   "commit": "076fb8339e4ea935c1a530a740b6eb6257c55962",
-   "sha256": "1vz50fkf1nw1md8p239pisvpba9q1y3ygvs6yfb37jvrxh6a1k4r"
+   "commit": "9a795828e4c201a47c5851157868c06f2ca37448",
+   "sha256": "0fxla1s6sn9gzqrkmlm00klhbfa7h0ki80j8jp68zlqc984ah5a2"
   }
  },
  {
@@ -80949,11 +81037,11 @@
   "repo": "rainstormstudio/nerd-icons.el",
   "unstable": {
    "version": [
-    20240319,
-    833
+    20240412,
+    1831
    ],
-   "commit": "8095215a503d8048739de8b4ea4066598edb8cbb",
-   "sha256": "1zwhslj2r63dmwgbv031b63rhhghf2nv8wb9zx31rdqh96g53s28"
+   "commit": "fb395120e9de33b276d16caaccaefd98d4340b92",
+   "sha256": "0iyjd18b3v730ixz5ayr72m4z8p6vv5m0nplpndl0s7a7ypdm9l9"
   },
   "stable": {
    "version": [
@@ -81249,6 +81337,21 @@
   }
  },
  {
+  "ename": "neut-mode",
+  "commit": "aeb247528ba4d426ae558152318649bc164e8ea0",
+  "sha256": "112z4wyl9n8g8nqwwdf94cfjd3fg79klagzjw0cwp20iv59ljijs",
+  "fetcher": "github",
+  "repo": "vekatze/neut-mode",
+  "unstable": {
+   "version": [
+    20240414,
+    2254
+   ],
+   "commit": "e75f5f6bbcab4c042f331fcb2d0a628516cfec5f",
+   "sha256": "16iv3vn3inwjh29zk00w1l1cm8jqp96n2hrkgpmhcj0kbliy298h"
+  }
+ },
+ {
   "ename": "never-comment",
   "commit": "ef3f8e712c10d63fea009951d7916fe376267cbe",
   "sha256": "0sn8y57895bfpgiynnj4m9b3x3dbb9v5fwkcwmf9jr39dbf98v6s",
@@ -81361,20 +81464,20 @@
   "repo": "ajc/nginx-mode",
   "unstable": {
    "version": [
-    20170612,
-    437
+    20240412,
+    402
    ],
-   "commit": "a2bab83c2eb233d57d76b236e7c141c2ccc97005",
-   "sha256": "17dh5pr3gh6adrbqx588gimxbb2fr7iv2qrxv6r48w2727l344xs"
+   "commit": "c4ac5de975d65c84893a130a470af32a48b0b66c",
+   "sha256": "1zal05l3lnb41pvfxwkzrcf39g7amqbaaffxn3wz7qa45gvvc6fw"
   },
   "stable": {
    "version": [
     1,
     1,
-    9
+    10
    ],
-   "commit": "a2bab83c2eb233d57d76b236e7c141c2ccc97005",
-   "sha256": "17dh5pr3gh6adrbqx588gimxbb2fr7iv2qrxv6r48w2727l344xs"
+   "commit": "c4ac5de975d65c84893a130a470af32a48b0b66c",
+   "sha256": "1zal05l3lnb41pvfxwkzrcf39g7amqbaaffxn3wz7qa45gvvc6fw"
   }
  },
  {
@@ -81578,11 +81681,11 @@
   "stable": {
    "version": [
     1,
-    11,
-    1
+    12,
+    0
    ],
-   "commit": "a524bf3f6bacd1b4ad85d719eed2737d8562f27a",
-   "sha256": "14kshkxdn833nkz2qkzb3w531dcqj6haad90gxj70ic05lb7zx9f"
+   "commit": "65d0dfcbbea6b8ca7d8a3a0f673ecb522379e43c",
+   "sha256": "0jlqqbhmzhlwfhf1axdi3qm6gd1l66s66dw9cn83h9akgvpjf0vv"
   }
  },
  {
@@ -81731,10 +81834,10 @@
  },
  {
   "ename": "nix-ts-mode",
-  "commit": "568c5226265ec062c71818f74197b5620589b46a",
-  "sha256": "1aa4grbk9rqfw37zivakv5a4fs8rrlrfdqg4ajnbafd320d0jfm2",
+  "commit": "5722db7ce30ad773fceaafeece7e9b7d56dcdf71",
+  "sha256": "19sps8vaq49cx3lykqnfkc9xki5czawd69d6sbg0lsd15hpjnqqk",
   "fetcher": "github",
-  "repo": "remi-gelinas/nix-ts-mode",
+  "repo": "nix-community/nix-ts-mode",
   "unstable": {
    "version": [
     20231107,
@@ -82014,14 +82117,14 @@
   "repo": "emacscollective/no-littering",
   "unstable": {
    "version": [
-    20240321,
-    710
+    20240415,
+    1545
    ],
    "deps": [
     "compat"
    ],
-   "commit": "dcc7af41cc6b48d446c0a76bae029898f82cc2e3",
-   "sha256": "103cmw2cxbq9n4csh0n3rrq57caa1fdby7ry0izcdnaaph7rwhqc"
+   "commit": "554d890c5d5b59ebcf83c67256d0012e23cd07f0",
+   "sha256": "0x0dk7yvrzcw1pjn86gqck5ksg48dnipvwir6va20i7cgi060qfy"
   },
   "stable": {
    "version": [
@@ -82226,7 +82329,7 @@
     0
    ],
    "commit": "7825f88cb881a84eaa5cd1689772819a18eb2943",
-   "sha256": "0f8s7mhcs1ym4an8d4dabfvhin30xs2d0c5gv875hsgz8p3asgxs"
+   "sha256": "009did3i3i8yi0virq606l02w1mw0gdyiqablqg7m368gx0gfvh5"
   }
  },
  {
@@ -82267,11 +82370,11 @@
   "repo": "hhamud/noir-ts-mode",
   "unstable": {
    "version": [
-    20230827,
-    2052
+    20240331,
+    137
    ],
-   "commit": "bb47c9b770b7401c0ecdac0bb54466df6ca62d29",
-   "sha256": "1bbxj2nglnbyj7v4n50mj3icwhdbp37jj0p4wkwizgqvgxy6cgjl"
+   "commit": "eb399cc69a3229f4141e193f98efead51d9b3cc8",
+   "sha256": "1nv2ccbsww7vkpxx0i5ds655ihkqxa1mvc6wq2lnla845j3mrpd8"
   },
   "stable": {
    "version": [
@@ -82304,7 +82407,7 @@
     0
    ],
    "commit": "dfe065acdd06be176fce3ab150fae699b2ad1a13",
-   "sha256": "1nqxw9s41ln91gjrglrbyhqasakgk0542ymhbwivw9l19yyizmaz"
+   "sha256": "0m5rfwp2y8iz7lrshdy09nk6dhrd7bgwb0761cmz1ky8w6f3di7v"
   }
  },
  {
@@ -82460,11 +82563,11 @@
   "url": "https://git.notmuchmail.org/git/notmuch",
   "unstable": {
    "version": [
-    20231006,
-    2337
+    20240406,
+    1803
    ],
-   "commit": "e4ead7656c72092bf30c43283057c2d4c4107962",
-   "sha256": "0wab9n0rn9k76js1sl4wwiivvifqnjf58n8iwyscqsmkrkhcdc47"
+   "commit": "cd89065dc36e36b22a2a53832d2cac9b06fba41c",
+   "sha256": "179x3kz1504zlilh5y5h50sk5d0d9rhl6r6ccfgp4am2nn0d1qp7"
   },
   "stable": {
    "version": [
@@ -82484,15 +82587,15 @@
   "repo": "tarsius/notmuch-addr",
   "unstable": {
    "version": [
-    20240101,
-    2221
+    20240422,
+    15
    ],
    "deps": [
     "compat",
     "notmuch"
    ],
-   "commit": "1253c6ff1359acef42f04c021c6204b8e726b071",
-   "sha256": "1wvap0vg0b1daccw1523f5baf9sp7qivrrpk2bg0sdaq37pzkbm7"
+   "commit": "e5755c5a752d2026b1c847bc5944bdd5f015c1a6",
+   "sha256": "0ysb99rda0ix6lcb8z8p72wb6z35agyn9jd1z0jxhqpp5xyajjsl"
   },
   "stable": {
    "version": [
@@ -82576,15 +82679,15 @@
   "repo": "tarsius/notmuch-maildir",
   "unstable": {
    "version": [
-    20240101,
-    2221
+    20240415,
+    1545
    ],
    "deps": [
     "compat",
     "notmuch"
    ],
-   "commit": "2b6a49c8b1f35338bb231f39155b6da0a0b639d5",
-   "sha256": "0r3fjq0b1zssjbhq9075cihqn0a255lrqkl9vcb3ypy0gwr7hy9r"
+   "commit": "3a7240e6728731b427a763228c60104602f0fe4b",
+   "sha256": "13cajk4pb0x5r9azxilibc4v9xg3pxqiy0cx14b6kh6l9b0f26pq"
   },
   "stable": {
    "version": [
@@ -82608,16 +82711,16 @@
   "repo": "tarsius/notmuch-transient",
   "unstable": {
    "version": [
-    20240302,
-    2332
+    20240421,
+    2351
    ],
    "deps": [
     "compat",
     "notmuch",
     "transient"
    ],
-   "commit": "f08ef922b88d90a7cad348743c8470f443b1fa8e",
-   "sha256": "1v20cz1kkd0p82hrdkq7wy30wgi37idrzcxk3n23ypmhmylig82a"
+   "commit": "ef7a977a16e2c6a0ed3e139bdd6cc00a42b8c758",
+   "sha256": "1njy6cq7b9n2shvcgzrl8b3iclcyhx24bq1li1p292ipj3x3rkg4"
   },
   "stable": {
    "version": [
@@ -82642,14 +82745,14 @@
   "url": "https://depp.brause.cc/nov.el.git",
   "unstable": {
    "version": [
-    20230715,
-    1434
+    20240407,
+    1219
    ],
    "deps": [
     "esxml"
    ],
-   "commit": "cc31ce0356226c3a2128119b08de6107e38fdd17",
-   "sha256": "0k09dd0j8m8607dv61qm4q1jk9hvn39sxzk5ckcalafjanp7l0r6"
+   "commit": "9b7bef950d68c2518710c480729d6bb6026e9489",
+   "sha256": "10lxy18zs8bkld0ql75kdxdmbmr8h68lsk8a960iy3j1jg1rz1sn"
   },
   "stable": {
    "version": [
@@ -83065,7 +83168,7 @@
     1249
    ],
    "commit": "44d506105989873dc1725e0cfc675925b35c9c98",
-   "sha256": "1g030806d2l238sr173ypdkkq0g8kf8qdp7a1ls5d3rw0bng4ds1"
+   "sha256": "0lgz0sknnrxmc7iy4lniday1nwpz4q841c3w2hm72aiwn5z21h22"
   }
  },
  {
@@ -83173,6 +83276,26 @@
   }
  },
  {
+  "ename": "oauth2-auto",
+  "commit": "06aefc0887f50215e69260a6e4f883a3d34e83e5",
+  "sha256": "165f6rpgi3fwx4qby1wq5h19362xn2shwkymibv64yscx9r0mpiq",
+  "fetcher": "github",
+  "repo": "telotortium/emacs-oauth2-auto",
+  "unstable": {
+   "version": [
+    20240326,
+    2225
+   ],
+   "deps": [
+    "aio",
+    "alert",
+    "dash"
+   ],
+   "commit": "ff9a45e27621aad5b1a2e12a09b01f3e4eaecf96",
+   "sha256": "00vwxdxgcnx86i56093vp5j75zgg7iilpzxrhl4s9ccg00vp220n"
+  }
+ },
+ {
   "ename": "oauth2-request",
   "commit": "d8fd29717d69408c845d44077b5223902051dbd9",
   "sha256": "1yb9wgc1p6rbsarb7yhwwrpsjz2adnf9k590c9sif9vx3llras2g",
@@ -83470,18 +83593,18 @@
   "unstable": {
    "version": [
     20240324,
-    315
+    320
    ],
-   "commit": "2b614d108445b8462b491af09092b0f65c237e42",
-   "sha256": "1246ji8kx5hznwbb55fvi446gsjbd0znwd2zjv6ygxsp4lcbrsib"
+   "commit": "d9c3e446467badad571eef8832232ae5a6f9f05b",
+   "sha256": "1l3hifa88jvzr75rz4cc5q0w8y60qnw7jin6x3fcam8915a1nd2f"
   },
   "stable": {
    "version": [
     0,
-    3
+    4
    ],
-   "commit": "ee94c0d432b98d4b003b179e2109c3114ea54d9b",
-   "sha256": "06zkjnv324bwj1bd2kdvxar0is992qngl5n94d4z2cpx3zcn2c5q"
+   "commit": "d9c3e446467badad571eef8832232ae5a6f9f05b",
+   "sha256": "1l3hifa88jvzr75rz4cc5q0w8y60qnw7jin6x3fcam8915a1nd2f"
   }
  },
  {
@@ -84142,20 +84265,19 @@
   "repo": "pinetr2e/ob-napkin",
   "unstable": {
    "version": [
-    20200817,
-    1259
+    20240405,
+    1223
    ],
-   "commit": "7af5e8af08da8455c489909afbd9528a61f570e7",
-   "sha256": "1rmfxbnl2y6yx1869sm5203k7hch481wh5dq6lik5bj00cf3knc6"
+   "commit": "497bde38772e6fd2a393dd292435ae3787580db4",
+   "sha256": "16qpmabp57231mpjvx7wbcxxbhp3i7ir1yhp792yxfibjz1gi299"
   },
   "stable": {
    "version": [
     0,
-    9,
-    1
+    10
    ],
-   "commit": "7af5e8af08da8455c489909afbd9528a61f570e7",
-   "sha256": "1rmfxbnl2y6yx1869sm5203k7hch481wh5dq6lik5bj00cf3knc6"
+   "commit": "497bde38772e6fd2a393dd292435ae3787580db4",
+   "sha256": "16qpmabp57231mpjvx7wbcxxbhp3i7ir1yhp792yxfibjz1gi299"
   }
  },
  {
@@ -84846,19 +84968,19 @@
   "unstable": {
    "version": [
     20230915,
-    941
+    934
    ],
-   "commit": "6734dfc1992eb782f0a936ce3cd7c78b7c1d39d3",
-   "sha256": "0ry8lvp0cfw304y79gq28b2vx5a75lkybrkddm3qldgqxwgakdsw"
+   "commit": "d57fd7cfa878a6862f4dbcf80f98a30d63872ab3",
+   "sha256": "04hfcyi9nl5ghchv1r3bshq968xxhlkvv1jd6j35mk2jca1wdkmz"
   },
   "stable": {
    "version": [
     0,
     26,
-    1
+    2
    ],
-   "commit": "6734dfc1992eb782f0a936ce3cd7c78b7c1d39d3",
-   "sha256": "0ry8lvp0cfw304y79gq28b2vx5a75lkybrkddm3qldgqxwgakdsw"
+   "commit": "f5727b32127730a2722f86c7119eb6d8f884e26d",
+   "sha256": "0qkralffnq141ksl5y6564lmryqhks72kvf3rblg8pnzjbcsad5v"
   }
  },
  {
@@ -85060,26 +85182,26 @@
   "repo": "oer/oer-reveal",
   "unstable": {
    "version": [
-    20240319,
-    1005
+    20240414,
+    1312
    ],
    "deps": [
     "org-re-reveal"
    ],
-   "commit": "0a44a385a565b8e39908c36dd32d5b231ffee9bd",
-   "sha256": "1gjmnxplpm7p4ylsypds809jqxw942anddq09v8frnrrbhi5q0sh"
+   "commit": "4a8000a196e663be9fec61d0e6fed27814945086",
+   "sha256": "1rcydba1si626bqdh6j8537lnivyvr201dw7dmrxvkqpk9q6v1xy"
   },
   "stable": {
    "version": [
     4,
-    22,
-    0
+    24,
+    3
    ],
    "deps": [
     "org-re-reveal"
    ],
-   "commit": "0a44a385a565b8e39908c36dd32d5b231ffee9bd",
-   "sha256": "1gjmnxplpm7p4ylsypds809jqxw942anddq09v8frnrrbhi5q0sh"
+   "commit": "4a8000a196e663be9fec61d0e6fed27814945086",
+   "sha256": "1rcydba1si626bqdh6j8537lnivyvr201dw7dmrxvkqpk9q6v1xy"
   }
  },
  {
@@ -85130,16 +85252,16 @@
   "repo": "tarsius/ol-notmuch",
   "unstable": {
    "version": [
-    20240101,
-    2222
+    20240415,
+    1546
    ],
    "deps": [
     "compat",
     "notmuch",
     "org"
    ],
-   "commit": "881991d94a1ad750633fcf1f2d8a9e0616979be3",
-   "sha256": "1hc4bkkg42pj1i3vy6jm0rqvviiizn61nph74nvms5v08fb0yn09"
+   "commit": "05f3fc9ea77d32892726c94cd7a876733890da91",
+   "sha256": "1jbwi4vpvcl7zzbx5rjmpmxp1mh1lxbprgxryqmj5mync0gx3a0k"
   },
   "stable": {
    "version": [
@@ -85848,20 +85970,20 @@
   "repo": "danielfleischer/opensub",
   "unstable": {
    "version": [
-    20230716,
-    1018
+    20240405,
+    750
    ],
-   "commit": "216f60baf8cfd527fd84676b7389f463a04ae80c",
-   "sha256": "1hgkpkcgy342wyzdvnb0lb9vpr6fsym42ahgmmnq63ijw5r5kiq5"
+   "commit": "2e3d55fd1ebc909caa81b06f3323d123ec557d03",
+   "sha256": "1bw3sp5i9zanrkgkwd69rc11ay3pmk5x42ifgyvg08ql7zlghxx2"
   },
   "stable": {
    "version": [
     0,
-    1,
+    2,
     0
    ],
-   "commit": "216f60baf8cfd527fd84676b7389f463a04ae80c",
-   "sha256": "1hgkpkcgy342wyzdvnb0lb9vpr6fsym42ahgmmnq63ijw5r5kiq5"
+   "commit": "2e3d55fd1ebc909caa81b06f3323d123ec557d03",
+   "sha256": "1bw3sp5i9zanrkgkwd69rc11ay3pmk5x42ifgyvg08ql7zlghxx2"
   }
  },
  {
@@ -85959,11 +86081,11 @@
   "repo": "oantolin/orderless",
   "unstable": {
    "version": [
-    20240320,
-    1638
+    20240401,
+    959
    ],
-   "commit": "3847f311077efa17951a786d2759f2639c5f43c8",
-   "sha256": "1gc3ysa1yhi6pz8bafbdpj0avdhms0rfd1r3k5mrhnm8mgh6zq8q"
+   "commit": "ac4aeb66f331f4c4a430d5556071e33177304c37",
+   "sha256": "1nphxjsxd6bi7lbhx5r1nzay6gkkwhm1q995k90gg9zcnyxz9k0c"
   },
   "stable": {
    "version": [
@@ -86201,30 +86323,30 @@
   "repo": "eyeinsky/org-anki",
   "unstable": {
    "version": [
-    20240311,
-    2016
+    20240427,
+    1628
    ],
    "deps": [
     "dash",
     "promise",
     "request"
    ],
-   "commit": "f4737a04a82f8592ef623da40e65881ee5aed718",
-   "sha256": "1rqzjppaf2h7y5lvqzjll9dg71gwkm81wgczqswxgd880r3v29a4"
+   "commit": "75c2cd6ababf3e2808107af32efc754bfd06a88b",
+   "sha256": "1plh177491bbfaybpaphd407iaadlm9imsdpkd8nws0qa9sflaw5"
   },
   "stable": {
    "version": [
     3,
-    2,
-    5
+    3,
+    0
    ],
    "deps": [
     "dash",
     "promise",
     "request"
    ],
-   "commit": "f4737a04a82f8592ef623da40e65881ee5aed718",
-   "sha256": "1rqzjppaf2h7y5lvqzjll9dg71gwkm81wgczqswxgd880r3v29a4"
+   "commit": "75c2cd6ababf3e2808107af32efc754bfd06a88b",
+   "sha256": "1plh177491bbfaybpaphd407iaadlm9imsdpkd8nws0qa9sflaw5"
   }
  },
  {
@@ -86634,14 +86756,14 @@
   "repo": "dengste/org-caldav",
   "unstable": {
    "version": [
-    20240302,
-    2226
+    20240415,
+    1535
    ],
    "deps": [
     "org"
    ],
-   "commit": "21da50c95b279b5fa528b353181275f935de1e1d",
-   "sha256": "1rmd2d0w6f28cgdp4vibs4h2nz69i25s0s4x7vwhfjx8393bmyc0"
+   "commit": "086a8f385138ef71f7e29f78f19fb3a65f8ee27c",
+   "sha256": "09j9sbjpj9bgxx2rrrmsyz9vk0xmhsljy6qrdjjzm230k80817xw"
   },
   "stable": {
    "version": [
@@ -86813,14 +86935,14 @@
   "repo": "ArneBab/emacs-org-clock-daytime",
   "unstable": {
    "version": [
-    20240303,
-    846
+    20240403,
+    1115
    ],
    "deps": [
     "org"
    ],
-   "commit": "82e2cd5a523f5fda75176a08eb120a0872700add",
-   "sha256": "1xbhigbb7r1cfp0f63bg3k6x9kqbxffjvykfvj84llgjzqjns6rg"
+   "commit": "f10c7b92a5b2a25f2300b885c2c70526ada50d9c",
+   "sha256": "1a1scmv3m8r4mm2nr4iw7nihv5ms8h16r2pvmghkb7w5lqd0p8cv"
   }
  },
  {
@@ -86957,14 +87079,14 @@
   "url": "https://repo.or.cz/org-contacts.git",
   "unstable": {
    "version": [
-    20240311,
-    850
+    20240410,
+    1128
    ],
    "deps": [
     "org"
    ],
-   "commit": "6660db078f7687af3bc31f702e3e957d4d7654bd",
-   "sha256": "0i0jkdn2wd7q9nzacaldhwx0i027951j0dp24pgkq34radqldjmb"
+   "commit": "0ff9a6dae6c1b67f0da0c63bc75b8c1063eac85d",
+   "sha256": "00ds6zyraf2nzj73mr3ncq2p9dn1b39cddqwj0fsglk3hlwg7d87"
   }
  },
  {
@@ -87005,14 +87127,14 @@
   "repo": "gsingh93/org-custom-cookies",
   "unstable": {
    "version": [
-    20220928,
-    114
+    20240414,
+    44
    ],
    "deps": [
     "org"
    ],
-   "commit": "e57e0de5b8200224bf5d44b62481c542986f2f13",
-   "sha256": "1r3m7nvx10yzxsasld3h59psml4r7kmz2wn79n5xkppkpb0dbymn"
+   "commit": "5650c73d20e53310dab62f6a65754a55aea9b40b",
+   "sha256": "0sjjjmcalkvxw1v09av20bmsf4av60x2nkq0y792pwm80mgxcc0m"
   }
  },
  {
@@ -87193,7 +87315,7 @@
     "seq"
    ],
    "commit": "e55415221eedba2f2bd37a30cb71c842e344b5ee",
-   "sha256": "079x6rcz50rpw0vdq5q2kjpixz95k9f3j9dwk91r5111vvr428w3"
+   "sha256": "0gjkl8j8jrimg45z9bsfkkbvmxsplh3nyqgr8g8d5mqm0w9b4pn3"
   },
   "stable": {
    "version": [
@@ -87207,7 +87329,7 @@
     "seq"
    ],
    "commit": "4c114489e682e514e79701045d541ab6f3dc3fb4",
-   "sha256": "079x6rcz50rpw0vdq5q2kjpixz95k9f3j9dwk91r5111vvr428w3"
+   "sha256": "13y302lyscdqrba1sfx60yf5ji2xi7fbsvjsjbw7hiz63kg6rccy"
   }
  },
  {
@@ -87526,8 +87648,8 @@
   "repo": "kidd/org-gcal.el",
   "unstable": {
    "version": [
-    20221212,
-    1817
+    20240426,
+    2253
    ],
    "deps": [
     "aio",
@@ -87538,8 +87660,8 @@
     "request",
     "request-deferred"
    ],
-   "commit": "9bb3720525ad1c45823abab8ce910dd1225e7dcd",
-   "sha256": "0b7i1xc21vsjcvbkakkgzhidnypc5anmb9mdkh9mab09d7kxkbc7"
+   "commit": "9f9d93e4f0d5863b1318e9e702e1ee6e841c2649",
+   "sha256": "1v0mq8fh3d0az6w9bgn599l8rmns741j92iw0fskarfyfyn63z57"
   },
   "stable": {
    "version": [
@@ -87969,7 +88091,7 @@
     "jami-bot"
    ],
    "commit": "020b03f299dad438f65d7bcbf93553b273fd7c33",
-   "sha256": "0fj166qawhnjbc14237fj8ph4f4xdjka7p8r2gxkfq6h0z101nr2"
+   "sha256": "18nhkmmrzs6i6px23c88wlml0gn43b38zfvpwq8bnabq3ak6q7j2"
   },
   "stable": {
    "version": [
@@ -88172,6 +88294,25 @@
   }
  },
  {
+  "ename": "org-linenote",
+  "commit": "8c973d58fba117d4c09fd09849251891a0904c7e",
+  "sha256": "11kv2xy8lzzs21mn5xp0cg1r3npajbwakrhi5j05z0x3p9i2v4am",
+  "fetcher": "github",
+  "repo": "seokbeomKim/org-linenote",
+  "unstable": {
+   "version": [
+    20240325,
+    320
+   ],
+   "deps": [
+    "projectile",
+    "vertico"
+   ],
+   "commit": "4c081f4bbe13c48df7cb17f2f006465b8b95196b",
+   "sha256": "0a8pcds5vv5px47gzvmv94ymvhki7kjqah8i4w43f0lpx9dhwqzx"
+  }
+ },
+ {
   "ename": "org-link-beautify",
   "commit": "2cbc9e1af903ffc900be7ec0ed1050ae9ad81011",
   "sha256": "1h4ppxc9giii3rg5hvpf2dm4c9w0wwd56ivmqyx0q4b9fi69lswa",
@@ -88303,7 +88444,7 @@
     9
    ],
    "commit": "edf9f6f7254f72be939daf92942f76f44b72d32d",
-   "sha256": "0ijlmfq6dbdmk3jpl87g4knk4l76yxf63nmk3n2nll3v3swbk22g"
+   "sha256": "0jmavx9cd49y7lqb0zjpfyslqfd21a1anhpb6n6ksrxn65q6pf9q"
   }
  },
  {
@@ -88443,14 +88584,14 @@
   "repo": "minad/org-modern",
   "unstable": {
    "version": [
-    20240316,
-    1109
+    20240428,
+    741
    ],
    "deps": [
     "compat"
    ],
-   "commit": "a2ff4c8e9cac412e8cb9c7faf618ac18146107ea",
-   "sha256": "19mn29f294wng6pgm1vwncx50963wnh7zj33ipynx8qxndbi6hsm"
+   "commit": "a06443c1d0251decada41a3bdca30f712cf9a96e",
+   "sha256": "18q7xab693ql68vlpxbn066pn7yshrmmqi6m0r2v4193mhlffflr"
   },
   "stable": {
    "version": [
@@ -88806,7 +88947,7 @@
     "ov"
    ],
    "commit": "b95b6a7ed9289637cb512232470633b330ca9713",
-   "sha256": "0gjvd7xd9kl06cgdyya2qbl7r4a9y4zfq1ci0109w5axs3zjin1m"
+   "sha256": "03x3n2ywgk2x7slpzy26bw3l9l000pd964z0yifvf9fqhpbk5d0r"
   }
  },
  {
@@ -89038,7 +89179,7 @@
     2
    ],
    "commit": "549fa6969660dcf0cf9bca5b7341d0cb48ec3b77",
-   "sha256": "0ksj6hssyr44qnvb32qj9lrq825ivvndhck9gzx4h7gbxmvq12a4"
+   "sha256": "12s74if74vw8q5awgrk0d1244ysfgb9kw3dxhypsccsbf413jmii"
   }
  },
  {
@@ -89195,8 +89336,8 @@
   "repo": "alphapapa/org-ql",
   "unstable": {
    "version": [
-    20240222,
-    200
+    20240403,
+    2027
    ],
    "deps": [
     "compat",
@@ -89211,14 +89352,14 @@
     "transient",
     "ts"
    ],
-   "commit": "e41fe9018a4699532ec875bedddc9746f8e362aa",
-   "sha256": "1rvnxlnpb6yk06frdfs1szz98823hqjmi646kwb00b39qhyynzfg"
+   "commit": "c9370982bfd4df04b590762bd795a7da3012c4dd",
+   "sha256": "1df7qd9f74gvpixpqchn1j47g4iwq6r9cvpc2g9cnb9mb16r2mjk"
   },
   "stable": {
    "version": [
     0,
     8,
-    5
+    6
    ],
    "deps": [
     "compat",
@@ -89233,8 +89374,8 @@
     "transient",
     "ts"
    ],
-   "commit": "bfff0b5517d55d01bf12de27e10a73c9a077767b",
-   "sha256": "1wnvrjx9r9f1ykfdafj9pz1b0n669bqmixb5q35kmahyjis8rswq"
+   "commit": "1f264bf4649dc2ad90f16a763794561ee6164d84",
+   "sha256": "0425r0qjl83d1zq2z9myish3iqa6pc9ml2jlwmffjnj5gm3vgfsj"
   }
  },
  {
@@ -89328,28 +89469,28 @@
   "repo": "oer/org-re-reveal",
   "unstable": {
    "version": [
-    20240318,
-    645
+    20240421,
+    716
    ],
    "deps": [
     "htmlize",
     "org"
    ],
-   "commit": "827961d69d56a2c9a777dc6280d8cd832ede125b",
-   "sha256": "11if1c1a0i6i2wagjwqmvp2hfkv3slpq7r6dfbpkhlmils2hxr9p"
+   "commit": "81cf9dfd3be4480bbaa6d0b6452ea38e8d4e45c0",
+   "sha256": "1qbp198xg8pkd9zdvapq8bdsxilgqqync8m3r1csg8nz8lbpkk1b"
   },
   "stable": {
    "version": [
     3,
-    26,
-    0
+    28,
+    2
    ],
    "deps": [
     "htmlize",
     "org"
    ],
-   "commit": "827961d69d56a2c9a777dc6280d8cd832ede125b",
-   "sha256": "11if1c1a0i6i2wagjwqmvp2hfkv3slpq7r6dfbpkhlmils2hxr9p"
+   "commit": "81cf9dfd3be4480bbaa6d0b6452ea38e8d4e45c0",
+   "sha256": "1qbp198xg8pkd9zdvapq8bdsxilgqqync8m3r1csg8nz8lbpkk1b"
   }
  },
  {
@@ -89415,7 +89556,7 @@
     "org-ref"
    ],
    "commit": "abcd622e4edaa5e4480bcd1e7e4953f67c90e036",
-   "sha256": "1467vskijg2n8k7fa2jj2hz8xr2s04r8a89521wmz54cza21g5j4"
+   "sha256": "08ia6gn0x0yydl28dhghifyxz0mrn0asllqg4s449gaz729cxqkd"
   }
  },
  {
@@ -89507,8 +89648,8 @@
   "repo": "jkitchin/org-ref",
   "unstable": {
    "version": [
-    20240307,
-    1757
+    20240426,
+    1644
    ],
    "deps": [
     "avy",
@@ -89524,8 +89665,8 @@
     "request",
     "s"
    ],
-   "commit": "190248311f90cfc4f0cceef20c7bd52a5d5aa66f",
-   "sha256": "079lmfl2zm8pb0xlkansw9rbxrpn3dnmzwjajp2gma03b4gnw4v8"
+   "commit": "feaf7ea25cefaa347e6d593bf3a56064b92f16d6",
+   "sha256": "0ksyrc3wcbw965mpg6avd2qawksbz745lyqh15hlsmx70q0rvs02"
   },
   "stable": {
    "version": [
@@ -90024,14 +90165,14 @@
   "repo": "jcfk/org-sliced-images",
   "unstable": {
    "version": [
-    20240324,
-    2009
+    20240325,
+    710
    ],
    "deps": [
     "org"
    ],
-   "commit": "3a3d1704f82e909056294b3ac1da350dfea1ce30",
-   "sha256": "084anl78vq77i3j5jw0rq0cj383si0yp87d8z2amck6dg11gmn33"
+   "commit": "f3964d4ba421953fe9f109a99811b6d884ca56ab",
+   "sha256": "0lf275dqvgjfsh6kfmrb05gxcv78ng6pdijj2b1c2arw4pwsjb0r"
   }
  },
  {
@@ -90443,14 +90584,14 @@
   "url": "https://repo.or.cz/org-tag-beautify.git",
   "unstable": {
    "version": [
-    20240216,
-    939
+    20240422,
+    607
    ],
    "deps": [
     "nerd-icons"
    ],
-   "commit": "6ec9f65e98df1e7f8a55c98bd2a3c0433fbfc5db",
-   "sha256": "15glg771jh3xp1fyyyvrqbxfv7vxy91vg54cg204h04gl3z1bwdd"
+   "commit": "2f8b66e7aa2227411665f36d96bfc8a1b184bfbb",
+   "sha256": "0qz3f8phczmpyj8n6m9851cscwb7z0nkn4b5w79k21pgfhcmp6zf"
   }
  },
  {
@@ -90535,36 +90676,6 @@
   }
  },
  {
-  "ename": "org-themis",
-  "commit": "60e0efe4f201ed96e90c437e3e7205e0344d4676",
-  "sha256": "08rajz5y7h88fh94s2ad0f66va4vi31k9hwdv8p212bs276rp7ln",
-  "fetcher": "github",
-  "repo": "zellio/org-themis",
-  "unstable": {
-   "version": [
-    20160122,
-    404
-   ],
-   "deps": [
-    "cl-lib"
-   ],
-   "commit": "78aadbbe22b1993be5c4accd0d3f91a4e85c9a3c",
-   "sha256": "1apd5yyr12skagma7xpzrh22rhplmhhv0pma4zf5b0i6nkxy06j2"
-  },
-  "stable": {
-   "version": [
-    0,
-    4,
-    1
-   ],
-   "deps": [
-    "cl-lib"
-   ],
-   "commit": "4b4bf1fa1e853664bf006dda8afe2db00e522aaa",
-   "sha256": "12fksqi9flf84h1lbmbcjnqxa7dairp50wvlwfhbp1hbb8l9z63a"
-  }
- },
- {
   "ename": "org-tidy",
   "commit": "47c3731d47cd408457a677230d525e7ba6baf7c0",
   "sha256": "0k8hm6vlmwzvqjfs0yh8jxgizlmfrd7crc4p29lizp4dfp17b1fj",
@@ -90838,7 +90949,7 @@
     "org-ql"
    ],
    "commit": "a7c386ff134c71fd4f1f042e320751f077d57ddb",
-   "sha256": "11xbm6161rd5kv2bffqw678a7bymclvhpmm1qjxsvmi8bhfk1ls0"
+   "sha256": "1xc9g82pmd6fl48bbibwp5rb044cj2j0gw9d6qvn73pqdg8mj9jy"
   }
  },
  {
@@ -91101,16 +91212,16 @@
   "repo": "akhramov/org-wild-notifier.el",
   "unstable": {
    "version": [
-    20240223,
-    1211
+    20240325,
+    744
    ],
    "deps": [
     "alert",
     "async",
     "dash"
    ],
-   "commit": "1b04c4104ad72bbb3ced161ba99e1055ff766138",
-   "sha256": "0d3rmli39sxdjp2rv0xlwjilgf9xsys20j66cb44a58mb5x61y2w"
+   "commit": "4c1679c12ebe0e4a97494d0673a5484f9e4d0ba6",
+   "sha256": "0d7zrawh4im8iyp2z32p4g8fbyznfq4liaxhavq89z8pliiv9zny"
   },
   "stable": {
    "version": [
@@ -91487,16 +91598,16 @@
   "repo": "magit/orgit",
   "unstable": {
    "version": [
-    20240101,
-    2222
+    20240415,
+    1546
    ],
    "deps": [
     "compat",
     "magit",
     "org"
    ],
-   "commit": "84bcb5c318f01b9ffc8d5aa18a7c393fe9c714b2",
-   "sha256": "0apwwjdndhkghax5dnp4v9xh4018i4gngz5bannzvkhp26izaf3y"
+   "commit": "ca3bf7aa20074e25fee37b71cfef127b93a3dde7",
+   "sha256": "1ml64ddahk6szbynzrjm4zglkxhv9lgmaipm6fysalx48nxqvshh"
   },
   "stable": {
    "version": [
@@ -91521,8 +91632,8 @@
   "repo": "magit/orgit-forge",
   "unstable": {
    "version": [
-    20240101,
-    2222
+    20240415,
+    1546
    ],
    "deps": [
     "compat",
@@ -91531,8 +91642,8 @@
     "org",
     "orgit"
    ],
-   "commit": "f2ff9e5ad68b3e860379a1d368ad6d8a9696b719",
-   "sha256": "1pm03d65jw6jvfypl6syl5z2jl1vn0gp67xwjx7934q1fq4gm0nx"
+   "commit": "7b010465ab96bea6d380ae1cfbd7999d528f1de9",
+   "sha256": "0xqwzb7jmh7mlq4b6wk7kkhgwjwb399bv215bx2n3iq9bi2x6mv8"
   },
   "stable": {
    "version": [
@@ -91559,16 +91670,16 @@
   "repo": "tarsius/orglink",
   "unstable": {
    "version": [
-    20240101,
-    2222
+    20240415,
+    1547
    ],
    "deps": [
     "compat",
     "org",
     "seq"
    ],
-   "commit": "f62d2804026c10a1da0b7c4a4cb0d647bb2e4829",
-   "sha256": "0id5ms2zjjanih2isdq0043ry1ygj22cci3cpjc6h3si6m4jrj89"
+   "commit": "e513f25024b2db082dbdbd8bd713d57a2b7456eb",
+   "sha256": "0dmh9j9dz3j7h881126zj9bpbzh5sr444qw5029wfmsq4x5ls0yg"
   },
   "stable": {
    "version": [
@@ -91992,14 +92103,14 @@
   "repo": "xuchunyang/osx-dictionary.el",
   "unstable": {
    "version": [
-    20240226,
-    511
+    20240330,
+    942
    ],
    "deps": [
     "cl-lib"
    ],
-   "commit": "8f16ffb465b64c9dd566c8b7316b34896ce4c52b",
-   "sha256": "047y7zrih5d5x7m9i116yq951iyscb7ika1z4y864mqhd0ljhwvb"
+   "commit": "6abfd6908b0dc773020466225c908000870b383b",
+   "sha256": "16mvkrs82g6zhaa10r28v8br0cshv1bsbywyb1qkc8hdkj1hh37j"
   },
   "stable": {
    "version": [
@@ -92213,14 +92324,14 @@
   "repo": "tarsius/outline-minor-faces",
   "unstable": {
    "version": [
-    20240101,
-    2223
+    20240415,
+    1547
    ],
    "deps": [
     "compat"
    ],
-   "commit": "77dd2a24f3db3641980cca515fbc4cfafdf03630",
-   "sha256": "1w4n9zwd2ipc8pw6vvxx0xah9zxv0avv075j77k0is5j51iwn635"
+   "commit": "9f5c75e996388ead3472cd0dce8e9fc00407e210",
+   "sha256": "11jn4y2pa5v6bkijaf0d6ahg9zbz4mn11v9g1j46ldjwg3c7mbsf"
   },
   "stable": {
    "version": [
@@ -92910,7 +93021,7 @@
     "s"
    ],
    "commit": "e8cd440632fd46812d7311360f565828a12380b7",
-   "sha256": "0v2lrmak1lhaccwm2a68z4w554ng38wpk0sbw2qaj8qn03gv9dn4"
+   "sha256": "118km0hgxf1nss765cnykqyymjhg30pim9qjyxl31v07khr1d373"
   }
  },
  {
@@ -92921,11 +93032,11 @@
   "repo": "DamienCassou/ox-linuxmag-fr",
   "unstable": {
    "version": [
-    20240319,
-    2034
+    20240326,
+    722
    ],
-   "commit": "eab473296b8319a052ca30d27e07508e876ca8d9",
-   "sha256": "007f3r38xnsg1b0srzx2qvcjbkdnkfh0mkhpa8fcph9wdnc4aj6z"
+   "commit": "893a401db7d3b93e977b3c2608169dbb6e3fbdce",
+   "sha256": "1fh36w8iyrh5pqrfrcrh0f6clrmin5vg7r7hcg70z8s6w08ylzfy"
   },
   "stable": {
    "version": [
@@ -93630,14 +93741,14 @@
   "repo": "melpa/package-build",
   "unstable": {
    "version": [
-    20240306,
-    2234
+    20240415,
+    1547
    ],
    "deps": [
     "compat"
    ],
-   "commit": "236ef4e4d615699d4ba8b7ad28bd40b87d269411",
-   "sha256": "1s5ik92l3nz4k19l4a73p8y2pp4zx22w4iinj892kx5xakdh1s10"
+   "commit": "d9ce37b82529827ce720ad3ccf4af887d19fcfb0",
+   "sha256": "1hnv0yjc0yyjcp369z9nlvyxiqmzs0zqz5g6ly9cc3g43bjfavbj"
   },
   "stable": {
    "version": [
@@ -93672,25 +93783,25 @@
   "repo": "purcell/package-lint",
   "unstable": {
    "version": [
-    20240311,
-    1058
+    20240330,
+    1458
    ],
    "deps": [
     "let-alist"
    ],
-   "commit": "fce93b7edf4e971b2cbe3425c1d773ffe0aa8a62",
-   "sha256": "1myhdhb3kwq03f3p7qgb9bk8srs1wlag4ch4kl26yb9213mzx8gv"
+   "commit": "17e4ab20dd3e36fa540007b4f4047170c23bdb10",
+   "sha256": "1xr7sq7pvvdw9prf2vds048s5s7fq1s0cxs21sxdc54sszy17nsg"
   },
   "stable": {
    "version": [
     0,
-    22
+    23
    ],
    "deps": [
     "let-alist"
    ],
-   "commit": "fce93b7edf4e971b2cbe3425c1d773ffe0aa8a62",
-   "sha256": "1myhdhb3kwq03f3p7qgb9bk8srs1wlag4ch4kl26yb9213mzx8gv"
+   "commit": "17e4ab20dd3e36fa540007b4f4047170c23bdb10",
+   "sha256": "1xr7sq7pvvdw9prf2vds048s5s7fq1s0cxs21sxdc54sszy17nsg"
   }
  },
  {
@@ -93701,25 +93812,25 @@
   "repo": "purcell/package-lint",
   "unstable": {
    "version": [
-    20240311,
-    1058
+    20240330,
+    1458
    ],
    "deps": [
     "package-lint"
    ],
-   "commit": "fce93b7edf4e971b2cbe3425c1d773ffe0aa8a62",
-   "sha256": "1myhdhb3kwq03f3p7qgb9bk8srs1wlag4ch4kl26yb9213mzx8gv"
+   "commit": "17e4ab20dd3e36fa540007b4f4047170c23bdb10",
+   "sha256": "1xr7sq7pvvdw9prf2vds048s5s7fq1s0cxs21sxdc54sszy17nsg"
   },
   "stable": {
    "version": [
     0,
-    22
+    23
    ],
    "deps": [
     "package-lint"
    ],
-   "commit": "fce93b7edf4e971b2cbe3425c1d773ffe0aa8a62",
-   "sha256": "1myhdhb3kwq03f3p7qgb9bk8srs1wlag4ch4kl26yb9213mzx8gv"
+   "commit": "17e4ab20dd3e36fa540007b4f4047170c23bdb10",
+   "sha256": "1xr7sq7pvvdw9prf2vds048s5s7fq1s0cxs21sxdc54sszy17nsg"
   }
  },
  {
@@ -94330,14 +94441,14 @@
   "repo": "tarsius/paren-face",
   "unstable": {
    "version": [
-    20240101,
-    2224
+    20240415,
+    1547
    ],
    "deps": [
     "compat"
    ],
-   "commit": "d36fab3529aa3e046493ec373f2c080874cc184f",
-   "sha256": "1kliaybdcgfs6wadxggb8r82vdnhfa39aar3f8i9vq6w21ljdr4r"
+   "commit": "0cad6a4657ebfcdd2902746b99f01fea7cc05bd7",
+   "sha256": "17r70dwlg23kpv2dx4j7bs3pshisgz1j8k70vv3izyq0qg0n6vlp"
   },
   "stable": {
    "version": [
@@ -94384,20 +94495,20 @@
   "repo": "justinbarclay/parinfer-rust-mode",
   "unstable": {
    "version": [
-    20240319,
-    1546
+    20240419,
+    415
    ],
-   "commit": "3e95b19cd1e0ec5a8f92ea0a4a1f74ce6a8997ba",
-   "sha256": "0rkrn8imvi9vk6vi3wgv0a6zgxvw5jjvj58h5n79maw13rzdnwzf"
+   "commit": "823188f3d8d1f00693c3d1d754e58ad95ad0a8dd",
+   "sha256": "0cfn4na6xrapc096yyqs0kw8ni7ls49fds9k92ahlr67919m437v"
   },
   "stable": {
    "version": [
     0,
     8,
-    5
+    6
    ],
-   "commit": "3e95b19cd1e0ec5a8f92ea0a4a1f74ce6a8997ba",
-   "sha256": "0rkrn8imvi9vk6vi3wgv0a6zgxvw5jjvj58h5n79maw13rzdnwzf"
+   "commit": "39f588e3f58ef1a8a301c031f831b8f74fbb3ec1",
+   "sha256": "1pr4dqzawgqid2aws31zxnlf3363bgnj7djav324b5q2xic5qfy7"
   }
  },
  {
@@ -94672,6 +94783,30 @@
   }
  },
  {
+  "ename": "password-menu",
+  "commit": "4881eb8662e068c32776e63306c26c982c170e0e",
+  "sha256": "0qk6c1j5sj4b5xkpl4xx5g3g4l7cavbjfc177mc5s5b31lmr3kwj",
+  "fetcher": "github",
+  "repo": "rnadler/password-menu",
+  "unstable": {
+   "version": [
+    20240407,
+    2241
+   ],
+   "commit": "46fb7241f7ee8ff646b9a3ea1b3138031de1c0d6",
+   "sha256": "07ksbdzb17pmdgyrk77wf3nr5pn9y95jf8c1hmdi4bifvhqyr4c6"
+  },
+  "stable": {
+   "version": [
+    0,
+    1,
+    0
+   ],
+   "commit": "46fb7241f7ee8ff646b9a3ea1b3138031de1c0d6",
+   "sha256": "07ksbdzb17pmdgyrk77wf3nr5pn9y95jf8c1hmdi4bifvhqyr4c6"
+  }
+ },
+ {
   "ename": "password-mode",
   "commit": "28dafa392a378e7de2c6992fe17b33f6379dc6b8",
   "sha256": "1rxh6jg99qxagc6i2xgvswvw93h4ma7j8lhjr4ln44vbgyhzph11",
@@ -95260,15 +95395,15 @@
   "repo": "vedang/pdf-tools",
   "unstable": {
    "version": [
-    20240317,
-    848
+    20240411,
+    1703
    ],
    "deps": [
     "let-alist",
     "tablist"
    ],
-   "commit": "93e74924517d39483b432d6c3c9b8f8b8f0eb50c",
-   "sha256": "1js123pg2qbq5ql1hc7lwzrs4wqcdghsypvvwsm1qm9mi017g1h6"
+   "commit": "94e9f20a78f64a83daf641891923681a52d03919",
+   "sha256": "0gz20v97aaf7mny029xwypnagy6cm20hh4slcsfhcd0s9dvdqfsl"
   },
   "stable": {
    "version": [
@@ -95759,14 +95894,14 @@
   "repo": "nex3/perspective-el",
   "unstable": {
    "version": [
-    20240218,
-    437
+    20240414,
+    359
    ],
    "deps": [
     "cl-lib"
    ],
-   "commit": "460311b6e76f33de947908da74b6cbf66118d487",
-   "sha256": "13h83c4xn1xq29w24bgpkycacxswn34mdyx2lav5czwkmyi16ri8"
+   "commit": "ec48cb3bdda8c5ea12da89a12aa925ed1905a0b7",
+   "sha256": "1hg059nnyarnkx0wh1vl7qkdaqb2p7ifk9ciz35s6ffnc242jas5"
   },
   "stable": {
    "version": [
@@ -95948,19 +96083,19 @@
   "repo": "emarsden/pg-el",
   "unstable": {
    "version": [
-    20240314,
-    1247
+    20240414,
+    1912
    ],
-   "commit": "686dbe8cc7a94c65faf933695093645e53aa3318",
-   "sha256": "18v03ix5vg8a8w2ic5gik052p15d2mgnb112dvnxba69dyz6vsm3"
+   "commit": "4b71a337fedf16678e546fa8d1df0ea496762f40",
+   "sha256": "0m1pcabz5mxxxsk0ixw8388q9fkbydkj64mnzn371a9jxdl16b0v"
   },
   "stable": {
    "version": [
     0,
-    30
+    32
    ],
-   "commit": "bca35bd60fde1f561e21080768017f6727469d88",
-   "sha256": "1g04izsnvxinbwvzx0sj643ix5jlwdd7dkl61nvaqkkkm3g35jp6"
+   "commit": "4b71a337fedf16678e546fa8d1df0ea496762f40",
+   "sha256": "0m1pcabz5mxxxsk0ixw8388q9fkbydkj64mnzn371a9jxdl16b0v"
   }
  },
  {
@@ -96426,8 +96561,8 @@
   "repo": "emacs-php/phpactor.el",
   "unstable": {
    "version": [
-    20221023,
-    608
+    20240407,
+    1500
    ],
    "deps": [
     "async",
@@ -96435,8 +96570,8 @@
     "f",
     "php-runtime"
    ],
-   "commit": "dde09addf36017527441a855054406f8ffc4e534",
-   "sha256": "11jah2d520qqyfil2qbhblph233a9wjwzbhpc7yzhbqdm29pr9vr"
+   "commit": "1916e35e08d746a6ff8a2cd88ae43bdb6842feab",
+   "sha256": "0c9diqgy8v0bcx5011z2sd0q7s2xn2f4y7mpgv0x5fi0qh2a1mw1"
   },
   "stable": {
    "version": [
@@ -97619,17 +97754,17 @@
   "repo": "alphapapa/pocket-lib.el",
   "unstable": {
    "version": [
-    20190720,
-    1957
+    20240407,
+    2247
    ],
    "deps": [
     "dash",
     "kv",
-    "request",
+    "plz",
     "s"
    ],
-   "commit": "f794e3e619e1f6cad25bbfd5fe019a7e62820bf4",
-   "sha256": "0iv03wjwmz0di8n5bndmq5r18r1pq999v1scyay0jm1cxlksqafg"
+   "commit": "b13c899223a15481738c3105f07ee2205dcc937c",
+   "sha256": "0b5451fwsjqb603mmgw6kpd8w4gvndg3fxbdb44ib2245ynr5mms"
   },
   "stable": {
    "version": [
@@ -97672,8 +97807,8 @@
   "repo": "alphapapa/pocket-reader.el",
   "unstable": {
    "version": [
-    20230904,
-    539
+    20240407,
+    2303
    ],
    "deps": [
     "dash",
@@ -97683,11 +97818,10 @@
     "ov",
     "peg",
     "pocket-lib",
-    "rainbow-identifiers",
     "s"
    ],
-   "commit": "ef6b6892ef13eff3479d79c7f6bc918dd0444e88",
-   "sha256": "10zlalqmdrdp46i2hxk1gf0wdqv74x99qq91a8acqjx30jnld9j6"
+   "commit": "cb9f6b108ebd3a67f77fb75d85351ffb3b0bb3d4",
+   "sha256": "0d0mfagx43sqrfyshnwm4acvh6h06jl6l11nvppqhb2hdrrdx0ia"
   },
   "stable": {
    "version": [
@@ -97774,29 +97908,28 @@
   "repo": "cybniv/poetry.el",
   "unstable": {
    "version": [
-    20240103,
-    947
+    20240329,
+    1103
    ],
    "deps": [
     "pyvenv",
     "transient"
    ],
-   "commit": "ca2cffb0b174e9d814ad95178af84b525dd2b64d",
-   "sha256": "18vl4fzgf97grz8r6sj1m3brr2cd6jcf5y60v4jhnllwkjfnx52i"
+   "commit": "1dff0d4a51ea8aff5f6ce97b154ea799902639ad",
+   "sha256": "0n5v6c75pal2xd8p453jrd046zkv0y1pzgn5w2n2ws1009pw6crs"
   },
   "stable": {
    "version": [
     0,
-    1,
+    2,
     0
    ],
    "deps": [
-    "cl",
-    "transient",
-    "xterm-color"
+    "pyvenv",
+    "transient"
    ],
-   "commit": "6fb34742a66421c6104e02d65e8d391fc4494ab5",
-   "sha256": "0hdicdskf928s7qdlzxq25ibfmwi8llmyhy1bj2py56wr2qv3cfy"
+   "commit": "2cbc690c8c1153e578ecb376367d355a7669f9ec",
+   "sha256": "1b473vpj5ac9pgkcgqgjqska5g6gr81djvixphb9r58334wyr9d2"
   }
  },
  {
@@ -97912,34 +98045,32 @@
   "repo": "mavit/poly-ansible",
   "unstable": {
    "version": [
-    20220113,
-    1656
+    20240418,
+    1123
    ],
    "deps": [
     "ansible",
     "ansible-doc",
     "jinja2-mode",
-    "polymode",
-    "yaml-mode"
+    "polymode"
    ],
-   "commit": "6d74fe80b7e61a35aa0fa36a520eaf5c9c027c51",
-   "sha256": "0idzq8fyspzfq3nwcn58k01rlqrqyywx2732ld994slmiwgyggas"
+   "commit": "5c4423671c051db26a48de72773abdf2395bb6aa",
+   "sha256": "0fmbxhn8cbfdad37m1jssm1jblia0b4fzdv89lrz0k5wqyzlkz4g"
   },
   "stable": {
    "version": [
     0,
-    3,
+    4,
     0
    ],
    "deps": [
     "ansible",
     "ansible-doc",
     "jinja2-mode",
-    "polymode",
-    "yaml-mode"
+    "polymode"
    ],
-   "commit": "d76f6ec2374ec46ad78f2d0c3e1d1d91ee44c2bf",
-   "sha256": "0f0yq6gmkp194nxk90ipprglf1xkmxrgz1rkgrhfslvxq4q2l81h"
+   "commit": "5c4423671c051db26a48de72773abdf2395bb6aa",
+   "sha256": "0fmbxhn8cbfdad37m1jssm1jblia0b4fzdv89lrz0k5wqyzlkz4g"
   }
  },
  {
@@ -98695,11 +98826,11 @@
   "repo": "tumashu/posframe",
   "unstable": {
    "version": [
-    20230714,
-    227
+    20240426,
+    604
    ],
-   "commit": "017deece88360c7297265680d78a0bb316470716",
-   "sha256": "1gv46z6dyy04ivd2sbsifmr140gxv16dbwfzmxj1q9gvhlxxnxc8"
+   "commit": "468ac1ab50d7e0feae2c06f12596bbc169f2abe4",
+   "sha256": "10q76iggl3hpdhwzm48kadn129i2567fjnpxid8kxmqffk712k8y"
   },
   "stable": {
    "version": [
@@ -98962,8 +99093,8 @@
   "repo": "blahgeek/emacs-pr-review",
   "unstable": {
    "version": [
-    20240206,
-    414
+    20240426,
+    1202
    ],
    "deps": [
     "ghub",
@@ -98971,8 +99102,8 @@
     "magit-section",
     "markdown-mode"
    ],
-   "commit": "5294434883aa61f24ca6d2768a83ca924645a186",
-   "sha256": "1jbq0z5vz8isc41144iy7i72hk6njnxz068cmpb7gxcs9jdxvg6n"
+   "commit": "0a15e3616de643abd18c51da601f72ea4d88256b",
+   "sha256": "0dljczzvhirmwbnrpza982anfb5bsxw2g1jwi1pgxmjawvn8z7n7"
   }
  },
  {
@@ -99847,14 +99978,14 @@
   "repo": "TxGVNN/project-tasks",
   "unstable": {
    "version": [
-    20240321,
-    340
+    20240408,
+    611
    ],
    "deps": [
     "project"
    ],
-   "commit": "2db15b1dd88a92d51890ed1b6ab1007ec09c30a4",
-   "sha256": "1zapqprbfw99jv0kii1ajwlz9ix9d7w66lf8l67h7nzqls5pqi3j"
+   "commit": "87852d5290154e21cbb07b2685fa46edc4963977",
+   "sha256": "0f50panks1j9yzfwwizk85al00lp46lpc1r0s18j3gx7bda588xg"
   },
   "stable": {
    "version": [
@@ -100160,8 +100291,8 @@
   "repo": "mohkale/projection",
   "unstable": {
    "version": [
-    20240317,
-    1257
+    20240421,
+    1410
    ],
    "deps": [
     "compat",
@@ -100169,8 +100300,27 @@
     "project",
     "s"
    ],
-   "commit": "20548689eead0a86fcc921491047f392fd6b120f",
-   "sha256": "02ncfcbkwj933crrhca5wmfv55qpsc7szjvbdapkazzg5j4gqmlr"
+   "commit": "d0aa74fbe08d7e28b95a0d2006399565f51655ef",
+   "sha256": "1j02vy7s10c8ddhfclj66xfnk34rb5paf2hzjm9lnpn4krif64wm"
+  }
+ },
+ {
+  "ename": "projection-dape",
+  "commit": "9b114dafe3799c768dbae169df34397c88fee651",
+  "sha256": "0ggq1jr46am1qlf934vc431bjwpyvw8pasg6n9p9b16hc77r1i1x",
+  "fetcher": "github",
+  "repo": "mohkale/projection",
+  "unstable": {
+   "version": [
+    20240325,
+    1931
+   ],
+   "deps": [
+    "dape",
+    "projection"
+   ],
+   "commit": "68abb9dfab5e85daa31961be10362ca02effeeeb",
+   "sha256": "1zksskn924v4la718326gyafwgmlbrrj6k78wrv422a1n9wrq0s2"
   }
  },
  {
@@ -100375,11 +100525,11 @@
   "repo": "ProofGeneral/PG",
   "unstable": {
    "version": [
-    20240306,
-    2002
+    20240425,
+    939
    ],
-   "commit": "a6f8243ed2860cc7c9cb051496f1543d981e9f7e",
-   "sha256": "0fdzak693zb5lndxkdgb8af5hpichgkhhpxnl6pcnd1r6v01ahnr"
+   "commit": "6cace58d0d632c4eafa18959319a484fb5c07238",
+   "sha256": "128ixkmfjs4g83r00fvj7wp0azgmmabkhhhv8mqqm7zbj9rii611"
   },
   "stable": {
    "version": [
@@ -100488,10 +100638,10 @@
   "stable": {
    "version": [
     26,
-    0
+    1
    ],
-   "commit": "d6511091a0cab1ad13f676a02676ad2a0e5eb9ae",
-   "sha256": "0qi72mfwck0a3iwzvacl497bmz872pyzrdgya0w47r29y65z0m3g"
+   "commit": "2434ef2adf0c74149b9d547ac5fb545a1ff8b6b5",
+   "sha256": "1n7w40wypayplykxhknm6sljzbfbm64mg1zysrjidac3hwqkxh7n"
   }
  },
  {
@@ -100929,7 +101079,7 @@
     2031
    ],
    "commit": "d76c5d5589a4f8a94cc5537686d9a3b46ea7cc59",
-   "sha256": "1bkkgs2agy00wivilljkj3a9fsb2ba935icjmhbk46zjc6yf3y6q"
+   "sha256": "03872n1v5qqqblviq9sf2ml6ibs50mcjrh0i35sb0m7l202nh52b"
   },
   "stable": {
    "version": [
@@ -100937,7 +101087,7 @@
     8
    ],
    "commit": "708cae8e67dbae293c7c4be0ca5e49d76fac6714",
-   "sha256": "1bkkgs2agy00wivilljkj3a9fsb2ba935icjmhbk46zjc6yf3y6q"
+   "sha256": "1v48i37iqrrwbyy3bscicfq66vbbml4sg0f0n950bnk0qagjx8py"
   }
  },
  {
@@ -101172,11 +101322,11 @@
   "repo": "ideasman42/emacs-py-autopep8",
   "unstable": {
    "version": [
-    20231025,
-    2256
+    20240421,
+    840
    ],
-   "commit": "3e3f6c182455bf85284cda7f4ffe639444b84940",
-   "sha256": "05xqdja61p3c3sx836z3c1jjbm0ih2mrw13qnkp2hhh3ahyz2qql"
+   "commit": "3b103f2a99a71c4b4733689d074f895b2606fbe4",
+   "sha256": "0zmpbg1zi66mx9r1nbzkx0nkimzhfzvhfcl8cjfffbpqpikpw50w"
   },
   "stable": {
    "version": [
@@ -101841,10 +101991,10 @@
  },
  {
   "ename": "python-cell",
-  "commit": "0549866c5e96f673ec9dec298e7ff9d5779d443b",
-  "sha256": "07i3vyci52jvslq28djwkgx1r157wvxd99rvqlxnmmsl5yj4k1jf",
+  "commit": "3c7664b33aad6a03e3482bbed57bf5b9878361a8",
+  "sha256": "13sm5nq14ds1cbv144vrbrj2crghkrsy6vywxg8m3av833n4ijmv",
   "fetcher": "github",
-  "repo": "thisch/python-cell.el",
+  "repo": "twmr/python-cell.el",
   "unstable": {
    "version": [
     20240126,
@@ -102038,7 +102188,7 @@
     0
    ],
    "commit": "906b0a107f7bcfe6e32bcfedb977e6f0f99fda59",
-   "sha256": "17clkgs94dgq5nsjlwkr52m5s446ibfss3qc8a8m0zaz6j4f8l1m"
+   "sha256": "0d7hc2llr9dkjyfgyyjb2k72rny0j395a29pqgqgqyrwcn8b1py1"
   }
  },
  {
@@ -102049,8 +102199,8 @@
   "repo": "wbolster/emacs-python-pytest",
   "unstable": {
    "version": [
-    20240314,
-    1038
+    20240416,
+    1128
    ],
    "deps": [
     "dash",
@@ -102058,8 +102208,8 @@
     "s",
     "transient"
    ],
-   "commit": "46fd006462258a3366723fafacdf2db6a6ae689d",
-   "sha256": "1ahpzay6gbxrcin4ldcp1sm17fcvg94n729haj3zgcalsmhjlx90"
+   "commit": "9f850e22df93812a5b109968c549f9b3dd828ed1",
+   "sha256": "1f5b7ffcpmry2xiphclc4vv1zqva9rrhn08fgjq8qhdq3x0i5jah"
   },
   "stable": {
    "version": [
@@ -102155,7 +102305,7 @@
     "python"
    ],
    "commit": "e606469aafec2e6beda8c589540b88a5a6f6f33f",
-   "sha256": "0vyipfsppissa87pdnbksamdby0yl2q8nzawqivv6smn33jp6vsn"
+   "sha256": "00i7cc4r7275l22k3708xi4hqw2j44yivdb1madzrpf314v3kabr"
   }
  },
  {
@@ -102752,11 +102902,11 @@
   "repo": "greghendershott/racket-mode",
   "unstable": {
    "version": [
-    20240319,
-    2002
+    20240418,
+    1446
    ],
-   "commit": "fd3e3ddf12aef6d7661b5a2c0f70afc7107b7fd9",
-   "sha256": "15ciqhns9q6gqv8wxjd71mijacpsi3lg4f1hqy8z58r7gzjr8av7"
+   "commit": "d5f4007fd2c2604673125035f4852dce1b639b33",
+   "sha256": "0di1xb89i6r9lxc86ny53f7w7pqqd0r21qrf663jkjxlakhbwjzk"
   }
  },
  {
@@ -103365,19 +103515,19 @@
   "repo": "simenheg/rdf-prefix",
   "unstable": {
    "version": [
-    20230321,
-    1949
+    20240403,
+    1710
    ],
-   "commit": "70d1ef453fc55f0bfbb4bd3127112332e5b0f623",
-   "sha256": "1jbbaq9h9k2gacrd0kwsav0s5w682wdxgs6pkj9d3c0zg5c3m8mk"
+   "commit": "c591608d12278b293a14c27ab2df72a269eb535d",
+   "sha256": "144syl2rcvnnys6agzac962skiwl1xkm1xfkqsgb01ivflb2bx3c"
   },
   "stable": {
    "version": [
     1,
-    13
+    14
    ],
-   "commit": "70d1ef453fc55f0bfbb4bd3127112332e5b0f623",
-   "sha256": "1jbbaq9h9k2gacrd0kwsav0s5w682wdxgs6pkj9d3c0zg5c3m8mk"
+   "commit": "c591608d12278b293a14c27ab2df72a269eb535d",
+   "sha256": "144syl2rcvnnys6agzac962skiwl1xkm1xfkqsgb01ivflb2bx3c"
   }
  },
  {
@@ -103976,11 +104126,11 @@
   "repo": "ideasman42/emacs-recomplete",
   "unstable": {
    "version": [
-    20230910,
-    1154
+    20240422,
+    15
    ],
-   "commit": "4c9002938fa0480c68e22b86c20d20cea6396ce6",
-   "sha256": "09ipia5rp787xxmz5chv9d86g2jjbkz92v1aqz3nkf2avrl8f8il"
+   "commit": "9b4ab842e37eed9b8314ba81b4eac49beeea8c1c",
+   "sha256": "1m9cz4g672wzsf2np7lzksgxl75bc790nq51gy97qrsjbwn6gj99"
   }
  },
  {
@@ -104428,11 +104578,11 @@
   "repo": "alvarogonzalezsotillo/region-occurrences-highlighter",
   "unstable": {
    "version": [
-    20231122,
-    1110
+    20240417,
+    2146
    ],
-   "commit": "f9ad995553be1e6dd70540d7ab1ca0be3077438e",
-   "sha256": "0nqg4mr9218avv6yfpgzcr8ah2y9sq9bfpkdavsiaj3ispa0fhhd"
+   "commit": "a1ade7985656faf00f8a6afda885e8bdf959d133",
+   "sha256": "01j8i1z6mf7c2g59yzx6hrd799pxk6rdq2dvsl1r0bppgi5kv8dy"
   }
  },
  {
@@ -104825,26 +104975,26 @@
  },
  {
   "ename": "repo",
-  "commit": "1729d4ea9498549fff3594b971fcde5f81592f84",
-  "sha256": "0z4lcswh0c6xnsxlv33bsxh0nh26ydzfl8sv8xabdp5a2gk6bhpb",
+  "commit": "8438830e9048bc93cb30e1bc01368f44e978714e",
+  "sha256": "003brbwi5l9wsap74f75v2x0ngdkpks43xq5lhvix0795kcsf83s",
   "fetcher": "github",
-  "repo": "canatella/repo-el",
+  "repo": "snogge/repo-el",
   "unstable": {
    "version": [
-    20240119,
-    859
+    20240425,
+    1307
    ],
-   "commit": "a257b3f8f47fbb4fc7d5dea967dc543e01c58fee",
-   "sha256": "084d968fgf79vas4jjmm0rmvaf2d4zqxd6c63s2xzcxql1byybzn"
+   "commit": "1572f3ee82eaadc06e741f03e1889281308c79fa",
+   "sha256": "0y8j3hf5r69fxj2vsbaxwr9qdchddn53w25xzmxv1kfh6hbagzv3"
   },
   "stable": {
    "version": [
     0,
-    2,
+    3,
     0
    ],
-   "commit": "7b3ce731f1209d74113cb65a2d6aa6f54ce8ed27",
-   "sha256": "0jgiawdnzjlrpx2j1y6djwbqncdpmyfd31q1qf1890049y8ppxnb"
+   "commit": "1572f3ee82eaadc06e741f03e1889281308c79fa",
+   "sha256": "0y8j3hf5r69fxj2vsbaxwr9qdchddn53w25xzmxv1kfh6hbagzv3"
   }
  },
  {
@@ -105140,6 +105290,68 @@
   }
  },
  {
+  "ename": "retraction-viewer",
+  "commit": "5d4b3aba837a2d8470f0ffbb7289b06519329d8d",
+  "sha256": "1xvhqapkykka6x697zzjb2x9664fa70f3g6imd5aqmliwb2j956x",
+  "fetcher": "sourcehut",
+  "repo": "swflint/retraction-viewer",
+  "unstable": {
+   "version": [
+    20240419,
+    1316
+   ],
+   "deps": [
+    "plz"
+   ],
+   "commit": "280fbb60c44a184e0060640966ad9ddc80602e21",
+   "sha256": "0a9zrlhb943ni4bqc9ma8f2wx0y7vp51jmmf8b0kgy82yx8m6blq"
+  },
+  "stable": {
+   "version": [
+    1,
+    0,
+    4
+   ],
+   "deps": [
+    "plz"
+   ],
+   "commit": "87efb813a0dd3b320299d771779e68efe4344cf0",
+   "sha256": "0kmhmak47c9ffi0wc21k1qrq8gxgdzv064s38vzfw67781d6mi8a"
+  }
+ },
+ {
+  "ename": "retraction-viewer-section",
+  "commit": "5d4b3aba837a2d8470f0ffbb7289b06519329d8d",
+  "sha256": "114ngh654q0mdxavmpqrkmwr98ivw0cxdn07a1mgvfb0mcfrr2za",
+  "fetcher": "sourcehut",
+  "repo": "swflint/retraction-viewer",
+  "unstable": {
+   "version": [
+    20240419,
+    837
+   ],
+   "deps": [
+    "retraction-viewer",
+    "universal-sidecar"
+   ],
+   "commit": "87efb813a0dd3b320299d771779e68efe4344cf0",
+   "sha256": "0kmhmak47c9ffi0wc21k1qrq8gxgdzv064s38vzfw67781d6mi8a"
+  },
+  "stable": {
+   "version": [
+    1,
+    0,
+    4
+   ],
+   "deps": [
+    "retraction-viewer",
+    "universal-sidecar"
+   ],
+   "commit": "87efb813a0dd3b320299d771779e68efe4344cf0",
+   "sha256": "0kmhmak47c9ffi0wc21k1qrq8gxgdzv064s38vzfw67781d6mi8a"
+  }
+ },
+ {
   "ename": "retrie",
   "commit": "12ed1c6d8e2aa4f73b793f9e16e8e13985fae944",
   "sha256": "1y0zknhc2wkq6kpmz2bylwqla1xd7n7l3650zj2bi8g84ly777af",
@@ -105313,11 +105525,11 @@
   "repo": "ideasman42/emacs-revert-buffer-all",
   "unstable": {
    "version": [
-    20230109,
-    536
+    20240421,
+    836
    ],
-   "commit": "08e90d2d75f5d5900ca2a0d2670592bcf2b2d68f",
-   "sha256": "0yiki0vlxa7xkw19c4gwf5cxl32bhd2nm6ibpfamsh145gq4i8g7"
+   "commit": "d49462047ebb442d7872f12007380797ee49473c",
+   "sha256": "0qhkvrbhsvw3vwawj47xb23i11i1pkcypcmn4r4fy65qcpzjm12g"
   }
  },
  {
@@ -105433,7 +105645,7 @@
     1940
    ],
    "commit": "4aab5a5be16b69b47ef5e67d02782df5e41dbd7b",
-   "sha256": "1zq4nnp3yqv46129kazm76bvdqvjjhlrfg95bkdxvkd7qrdjc9a3"
+   "sha256": "1pancvhm4g4010814jy1cdhdrjh5hlig2j31fcsa5jn331d7rj6g"
   },
   "stable": {
    "version": [
@@ -105442,7 +105654,7 @@
     0
    ],
    "commit": "4aab5a5be16b69b47ef5e67d02782df5e41dbd7b",
-   "sha256": "1zq4nnp3yqv46129kazm76bvdqvjjhlrfg95bkdxvkd7qrdjc9a3"
+   "sha256": "1pancvhm4g4010814jy1cdhdrjh5hlig2j31fcsa5jn331d7rj6g"
   }
  },
  {
@@ -105590,7 +105802,7 @@
     0
    ],
    "commit": "c7c6b726806df7e8cb25a41b213a207850c91cb7",
-   "sha256": "18rba101m9vmjl4mf3x0k7wvbgn6qmay9la745vzpr3lx1f4nn98"
+   "sha256": "0p044wg9d4i6f5x7bdshmisgwvw424y16lixac93q6v5bh3xmab5"
   }
  },
  {
@@ -105787,7 +105999,7 @@
     "web-mode"
    ],
    "commit": "6cf58cf04fee933113857af07414b3f27c24b505",
-   "sha256": "0b3gqs1lsk80shirsc41zajzjbg1sgzksmnfazffx88h612p7ygd"
+   "sha256": "0s3hs0w6hz8vx4172mfraiqfjhd1a9h1w61ra6fklc5fjf3y8pn8"
   },
   "stable": {
    "version": [
@@ -105799,7 +106011,7 @@
     "web-mode"
    ],
    "commit": "6cf58cf04fee933113857af07414b3f27c24b505",
-   "sha256": "0b3gqs1lsk80shirsc41zajzjbg1sgzksmnfazffx88h612p7ygd"
+   "sha256": "0s3hs0w6hz8vx4172mfraiqfjhd1a9h1w61ra6fklc5fjf3y8pn8"
   }
  },
  {
@@ -105855,26 +106067,26 @@
   "repo": "dgutov/robe",
   "unstable": {
    "version": [
-    20240319,
-    254
+    20240327,
+    308
    ],
    "deps": [
     "inf-ruby"
    ],
-   "commit": "863dcfc41e15200e476995586c2aa7bc9cabc5c8",
-   "sha256": "02s2kp7nh924i2iwys1q3yx4zgwj9hxnfl0x3ny5lzz8j2ijb3vn"
+   "commit": "e8c86ee553589ff03418102426420b5049d4a044",
+   "sha256": "070r79mdydhv6l7mia7xshzmp0jgvkfjvnpgg361m5xs92mprxfr"
   },
   "stable": {
    "version": [
     0,
     8,
-    4
+    6
    ],
    "deps": [
     "inf-ruby"
    ],
-   "commit": "34ce25eb9b1956389276adeca93b679bf0a84451",
-   "sha256": "0kvyfyr4b0z0l964a8z9shy8nlnxzxc2ljcc02gj2pn1rn1wz0gq"
+   "commit": "43a85c2eb6e52f4e684919210dd84d67289938c1",
+   "sha256": "14apmvbs89si3v5hsiz11dckp8fdfidm14lc090lswq7mgk7h79s"
   }
  },
  {
@@ -106057,7 +106269,7 @@
     4
    ],
    "commit": "71e475ab35555e0a1eca26d73acf1ced911e422e",
-   "sha256": "0y18i4ly61jyvxymvgjr99arhxfn5y5s659jnqf4gvyp3d671dkf"
+   "sha256": "0x3mmf4gq4d0cqfqbkrrpwhayvmplacck0zc9nlzcn35y17jzpcz"
   }
  },
  {
@@ -106086,8 +106298,8 @@
   "repo": "mbeutelspacher/ros.el",
   "unstable": {
    "version": [
-    20231212,
-    729
+    20240328,
+    855
    ],
    "deps": [
     "cl-lib",
@@ -106100,8 +106312,8 @@
     "transient",
     "with-shell-interpreter"
    ],
-   "commit": "66e0cc154dc7d8ae105f2c95ed9f6a16445945d0",
-   "sha256": "1c5c8678vclr7z9jgfyr67cz77ny810vybimx3bgxflanh9w102a"
+   "commit": "7ddba9077b3bc48074c8fac72159368bb612c42b",
+   "sha256": "0hbqnn5hwq6ssn57c248bkv1mxpx6lchfv5r4hk2xdl9v7d2aav0"
   }
  },
  {
@@ -106728,11 +106940,11 @@
   "repo": "ideasman42/emacs-run-stuff",
   "unstable": {
    "version": [
-    20230601,
-    19
+    20240421,
+    807
    ],
-   "commit": "65afd896896a68e6262187745f5e3ac5145ba1ed",
-   "sha256": "0dk24izzkg01rm2cyrq1iwmrdcsfpzzyrplz1njhmwhpq9ys65iz"
+   "commit": "518ffa247bc71e31514d9e90257107da32f94939",
+   "sha256": "0rcdsia5kvmw1fxrydg18yg976axm1ki7vsg80binafb1p47s6rm"
   }
  },
  {
@@ -106843,11 +107055,11 @@
   "repo": "rust-lang/rust-mode",
   "unstable": {
    "version": [
-    20240313,
-    157
+    20240415,
+    936
    ],
-   "commit": "87bf4ea711456c858445ec4c22b3552fd796708d",
-   "sha256": "16sc646nc54fnr52y5zrgpcr4rb7isbmc9gf8fd164k2x64h8gv0"
+   "commit": "e54bbae8c4c2af580b5721ad5ac151f2ad19293e",
+   "sha256": "1vzgyizvn3p7f1p8awnlm4n2fh7b6j3cs636zyqpqck32x4pdqda"
   },
   "stable": {
    "version": [
@@ -107448,11 +107660,11 @@
   "repo": "hvesalai/emacs-sbt-mode",
   "unstable": {
    "version": [
-    20240208,
-    626
+    20240404,
+    1105
    ],
-   "commit": "bcf8d6040021013430b39d6f6766ce1aab0b691a",
-   "sha256": "0mfa8qlv4hgqsfxci7ikmfjy9kns67v21k9laa9kbphzxm82qp21"
+   "commit": "cc68728a6ef0600aad369157b3a2d0ce56afba9b",
+   "sha256": "0378c40mx6yfv9cz14sbhck8c1xm4wbj2l7jr0xbq1zj7sp1frc8"
   },
   "stable": {
    "version": [
@@ -107543,11 +107755,11 @@
   "repo": "KaranAhlawat/scala-ts-mode",
   "unstable": {
    "version": [
-    20240309,
-    1136
+    20240420,
+    1150
    ],
-   "commit": "0a34b23b3b71be1e0ce307df873434c08408fc57",
-   "sha256": "0dzzygq4cfckmwr7a5lhr140kyy45z15q02r4c9kaxz9cjg4zdvf"
+   "commit": "d9424fa74acf930664c43d4c9f9625d8bfdd4d21",
+   "sha256": "0sc2sx3pgifcnd2zw7nvk3f8z3v1zh2q94d9rnlayvwr6y4cnlq4"
   }
  },
  {
@@ -107890,11 +108102,11 @@
   "repo": "ideasman42/emacs-scroll-on-drag",
   "unstable": {
    "version": [
-    20230313,
-    546
+    20240421,
+    803
    ],
-   "commit": "179c2acecc48d3ceca4b449b2a225d684002bb32",
-   "sha256": "0v7d4mrsvckbb66kvskfb9rfrhg8p0zbkr6jqdspfl1p3x8zs2nk"
+   "commit": "f1a39a34f6ba350bcb6fe5927584d6e1cbaf72e5",
+   "sha256": "1igr324vhzl19z7crw5v8g0zc5wznqjdnx1fq3jxqjmq3185a9d6"
   }
  },
  {
@@ -107905,11 +108117,11 @@
   "repo": "ideasman42/emacs-scroll-on-jump",
   "unstable": {
    "version": [
-    20240204,
-    1217
+    20240421,
+    905
    ],
-   "commit": "c079d9321646bf4fd65b684fcd130cc4833c2e43",
-   "sha256": "0isisg0pkl8hl0xd310jbmflyga1sy1a5sdd673py9jmz5nbiz00"
+   "commit": "b89127aa03a1add43017493c51f1f09b775bc92c",
+   "sha256": "1i3hq9lhb0rsq3ccwkaw151bk4gb68d0vwzwklxwaz4yx2np9rn8"
   }
  },
  {
@@ -108006,20 +108218,20 @@
   "repo": "precompute/sculpture-themes",
   "unstable": {
    "version": [
-    20230905,
-    439
+    20240424,
+    1715
    ],
-   "commit": "7165c7655873ca3c3dc9ff878ddf8a9bdabcf4d4",
-   "sha256": "0w1jx2033nrki4r9yw2hwg4rvsqq3jj1als0im6ia1rk1x8fxqq8"
+   "commit": "723a3b348e9970e3f85910bdf319925c4f241a7d",
+   "sha256": "1nr1zd651mjgqaqfbmmn8l06iylszcn5qcrfswq9l5p3znm0d1x9"
   },
   "stable": {
    "version": [
     1,
-    4,
-    3
+    5,
+    1
    ],
-   "commit": "a21871b75cc7cb575ceb43640d039307fbb412e1",
-   "sha256": "0ki45bvc93p76mxpsm5pyknqgf67xz6c122yssps1hcxhdazij5v"
+   "commit": "723a3b348e9970e3f85910bdf319925c4f241a7d",
+   "sha256": "1nr1zd651mjgqaqfbmmn8l06iylszcn5qcrfswq9l5p3znm0d1x9"
   }
  },
  {
@@ -108160,7 +108372,7 @@
     "s"
    ],
    "commit": "91c56311b48a26aa6ef5a113b0a828e174059b0a",
-   "sha256": "10ikd6ksz5adpldyx9h8s3qnwc488rqixzwnd0rjjwqigmllj9lb"
+   "sha256": "1iyq8m75gzyx2ww919i4zl63gajsaczgwax214a1jgf8x91j590k"
   }
  },
  {
@@ -108318,14 +108530,14 @@
   "repo": "captainflasmr/selected-window-accent-mode",
   "unstable": {
    "version": [
-    20240209,
-    1230
+    20240427,
+    833
    ],
    "deps": [
     "visual-fill-column"
    ],
-   "commit": "e83efa67c4a9d1935c657a15b4487102cb6655de",
-   "sha256": "14i8h50n49mw9960vlsahzf1rbn1mj9400gapil9id9q2xysdpmd"
+   "commit": "79397e634a89c5e16de1d317f735aafe75c78aea",
+   "sha256": "0dwb4j62n13dg8kl2maci1668v0nsnc55xfjfva3wm5singb72zl"
   },
   "stable": {
    "version": [
@@ -108426,14 +108638,14 @@
   "repo": "jerryxgh/semantic-thrift",
   "unstable": {
    "version": [
-    20230711,
-    958
+    20240415,
+    1206
    ],
    "deps": [
     "thrift"
    ],
-   "commit": "87029282bd59cbba6ae815c0b1a207f02813f5dc",
-   "sha256": "0bvwj401ixc9zclsm0xzkrw62jrsa24dsrgpb6fyra91rvnmwm27"
+   "commit": "a2ff23acc72f7955a485e08e2819d4892d5e6dca",
+   "sha256": "0d5qb2s6hcsn6937p3fj4kayyyfn5i9fms117gh5x1iirkis9cg8"
   }
  },
  {
@@ -108851,11 +109063,11 @@
   "repo": "vspinu/sesman",
   "unstable": {
    "version": [
-    20240115,
-    2143
+    20240417,
+    1723
    ],
-   "commit": "ec7390c0d0fb8b278aa06848634f922bc893de31",
-   "sha256": "1is8ny27xzlx2shhps75xi0hdipkj7jphbsl1bgzwvmln9jqfd9v"
+   "commit": "7bca68dbbab0af26a6a23be1ff5fa97f9a18e022",
+   "sha256": "1gl2dv7smyxkga4b5dflahqhasw9k15ppc4s0py29454p5k861yi"
   },
   "stable": {
    "version": [
@@ -109000,14 +109212,14 @@
   "url": "https://depp.brause.cc/shackle.git",
   "unstable": {
    "version": [
-    20211118,
-    1129
+    20240402,
+    1315
    ],
    "deps": [
     "cl-lib"
    ],
-   "commit": "f1467db75a8fa5d51c676181fb308ccbf7b05e6f",
-   "sha256": "00dsk1v7rqj6rbm3lbvgv7dib8wqding5122ln1rrgddqyrrb2fs"
+   "commit": "ae25e7e0e593520c8590440fe5e3c0ea8053dc26",
+   "sha256": "0qh7fwcs1ach4y1vd7nfa8m3afv64vm95ix3q9dzi6k6wa86i12f"
   },
   "stable": {
    "version": [
@@ -109582,11 +109794,11 @@
   "repo": "emacs-w3m/emacs-w3m",
   "unstable": {
    "version": [
-    20240208,
-    217
+    20240423,
+    31
    ],
-   "commit": "dc5136d20a546cbf741e0e5835a441859fdab384",
-   "sha256": "1iwzdgkx2711kcbzrkizifff071wnqgpm22s6pq8l1i0p8dn3rbz"
+   "commit": "1da8d4f11cc5f79bce124d0a32be59be18359373",
+   "sha256": "063klgl664n8qw82g7c31vsbw1npw7l2jc5n2g9bndhhq8hg5g2g"
   }
  },
  {
@@ -109772,27 +109984,28 @@
   "repo": "chenyanming/shrface",
   "unstable": {
    "version": [
-    20230805,
-    500
+    20240401,
+    957
    ],
    "deps": [
     "language-detection",
     "org"
    ],
-   "commit": "946154a05b14a270f80351d5b2a98b19aa6c5745",
-   "sha256": "0qqvw7az7cr20kss7szvwqmbznqb160jg13akdxkiiksgzng0f90"
+   "commit": "b82a174ee33f19ed96c7e8c85ec362eab147d4aa",
+   "sha256": "0qspg55r397p6p16c4cps547x2w7gdplshy3scr810iwphrzsvfy"
   },
   "stable": {
    "version": [
     2,
     6,
-    3
+    4
    ],
    "deps": [
+    "language-detection",
     "org"
    ],
-   "commit": "3dc6b980a4235b084abeae500a377e60026c28ef",
-   "sha256": "1gg0z15a4rygi0dxabnlpjh56sa7kwxw3fji6ibk70l1jwgd7ydc"
+   "commit": "41e7cfcb42f97d652835e0b702f29aae5955f1f4",
+   "sha256": "144w7fvfrk3659d5ig8rbl3qwmcb5ssgnqgs798vfwanni7r1ggg"
   }
  },
  {
@@ -109826,7 +110039,7 @@
     "s"
    ],
    "commit": "9b8cfb59a2dcee8b39b680ab9adad5ecb1f53c0b",
-   "sha256": "1xnby24gpxij1z03wvx89s459jw0f8bwhgi80xvdq8gxhbbz2w7a"
+   "sha256": "0kx0c4syd7k6ff9j463bib32pz4wq0rzjlg6b0yqnymlzfr1mbki"
   }
  },
  {
@@ -110035,11 +110248,11 @@
   "repo": "ideasman42/emacs-sidecar-locals",
   "unstable": {
    "version": [
-    20240227,
-    151
+    20240421,
+    655
    ],
-   "commit": "2b2b765387f2cbae9935c3ee6e2a32aa8d68f1b8",
-   "sha256": "1nbdip04zdk583s0glbfa5g657vvhsia3h19nr6gwakvlkgv33wb"
+   "commit": "3daf8c07fac7c4ada7a02a1edad2f64894463614",
+   "sha256": "1jzsc1vxkxyvh66s6xz064s252jh2s6jrh157gi3rzkfkc7gcdwz"
   }
  },
  {
@@ -110050,14 +110263,14 @@
   "repo": "emacs-sideline/sideline",
   "unstable": {
    "version": [
-    20240319,
-    315
+    20240404,
+    900
    ],
    "deps": [
     "ht"
    ],
-   "commit": "04a525f624e1a42c47a2755fbc63be32104f44cb",
-   "sha256": "1imbb2026vrlrqwjay05442q42w8a1vhb5chl6rdhs504vxaxdp3"
+   "commit": "c1729b2b9d2ca6b37bf605ca2271e570f30316f0",
+   "sha256": "0ck92g14fhhi1xg76na8ck8ivv5wx5igh898wzr5p6qx92mv5hf7"
   },
   "stable": {
    "version": [
@@ -110109,16 +110322,16 @@
   "repo": "emacs-sideline/sideline-flycheck",
   "unstable": {
    "version": [
-    20240313,
-    2304
+    20240402,
+    2255
    ],
    "deps": [
     "flycheck",
     "ht",
     "sideline"
    ],
-   "commit": "1b3fc4d41b93ab3fa3754d188545d9e8cc0150f1",
-   "sha256": "0qh2v4jx0bvpcgac3h7kbd87bvgqdrvr7fw2m2syjspfbk7jqb65"
+   "commit": "212b8193becc012d39ccb1e68abf0e19f68764f4",
+   "sha256": "0g6i9ql35w9p3k941g2n9rj0md7j1snr6dpm9y4sid8fbyxvs1f2"
   },
   "stable": {
    "version": [
@@ -110172,8 +110385,8 @@
   "repo": "emacs-sideline/sideline-lsp",
   "unstable": {
    "version": [
-    20240101,
-    918
+    20240403,
+    2210
    ],
    "deps": [
     "dash",
@@ -110182,8 +110395,8 @@
     "s",
     "sideline"
    ],
-   "commit": "0a085a29b943eede42824981b5d0cd9fb951e9d8",
-   "sha256": "0xpqxdfqy8wv2wcqwzwhhmvlg15d120sicp2965qsp762slafqhc"
+   "commit": "69aca6403509abb4f5c5ba8499e98f80f81ebc88",
+   "sha256": "0jh81bc7dl309v6bxfh2d39f9lbp61bsdanflym33lsvdyl59zrk"
   },
   "stable": {
    "version": [
@@ -110453,7 +110666,7 @@
     "rtm"
    ],
    "commit": "37c5feffea7c9b571279b6f549d06cf9c0720273",
-   "sha256": "1kkhnsxr8zrb21k4ckyg69nsndwy4zdkvfw2drk4v1vnbgx8144f"
+   "sha256": "0rwvlhwg66ny0rm972wjfz41ck9kqmbax49wkagrkimm1cdrjfia"
   }
  },
  {
@@ -110641,8 +110854,8 @@
   "repo": "magit/sisyphus",
   "unstable": {
    "version": [
-    20240106,
-    1315
+    20240415,
+    1548
    ],
    "deps": [
     "compat",
@@ -110650,8 +110863,8 @@
     "llama",
     "magit"
    ],
-   "commit": "85f73d86b9a058461e77ed4db372aafcf6666a13",
-   "sha256": "0z4ipba6zjck49wlm47b5f0c1mwi8dqylh2aq6xxlrcw4f3nn1lr"
+   "commit": "38285f880302b9a2363085d816d6cd660ff7d17d",
+   "sha256": "0vkyfc9rbc22x7a7qy8i3w97a8p65qvjz5jxiqbh2vldp57hx5f7"
   },
   "stable": {
    "version": [
@@ -110965,27 +111178,25 @@
   "repo": "slime/slime",
   "unstable": {
    "version": [
-    20240324,
-    2347
+    20240427,
+    406
    ],
    "deps": [
     "macrostep"
    ],
-   "commit": "7e8e754f0eec45beeb7294b1c2d28257fa24ad29",
-   "sha256": "0q51rghv7baz2ni983cvzhmnxhskshwzcc6ab6x75rmayfwpipir"
+   "commit": "c2e45e7004743fdd8620e2fea67f30a17b6a558a",
+   "sha256": "1f8i31b2b21v5r0awahhjqn499agalqnzy8lyp3wj91r0pbsqn1f"
   },
   "stable": {
    "version": [
     2,
-    29,
-    1
+    30
    ],
    "deps": [
-    "cl-lib",
     "macrostep"
    ],
-   "commit": "d85dd9899f7524513c8ad1bd47b0dd248b1915cb",
-   "sha256": "10as5qz1f838rqf0jkd28zlz0sahls5rzpbx3mw48k2vgkjl24z6"
+   "commit": "ef2af895a9e79306f0789e72b101aa39e960c900",
+   "sha256": "0qb7m65gq0mbxfrdppkh3k4jn13i14i07ziga4r8b3rmrxhrmlv0"
   }
  },
  {
@@ -111222,11 +111433,11 @@
   "repo": "joaotavora/sly",
   "unstable": {
    "version": [
-    20231213,
-    1030
+    20240413,
+    2145
    ],
-   "commit": "ed17d2c2bd7aead0fbb09c3d22861c80a522a097",
-   "sha256": "1hgxv0mj89n3ll4cisxmkqb9xfqrxwahyzr0a4jijh4z94j71l8w"
+   "commit": "0ebe705c08af7126e0b2ce66a33fc7d23864b193",
+   "sha256": "1a7xi627dqm9zvhj5ky50h7z4nkcr54xal05mgq8hf9r0c8xba9g"
   },
   "stable": {
    "version": [
@@ -111764,15 +111975,15 @@
   "repo": "Fuco1/smartparens",
   "unstable": {
    "version": [
-    20240324,
-    946
+    20240416,
+    2253
    ],
    "deps": [
     "cl-lib",
     "dash"
    ],
-   "commit": "ddc6233ea6fc2da7a3a8e44face465c15631b02b",
-   "sha256": "1hv4v9451qjbakpw1ivz4yas8f9xbmxj48f1jn37y31x6j2d1bnn"
+   "commit": "d3b616843167f04b8a9f53dd25e84818c9f6fbce",
+   "sha256": "04vv9swkn3l2lcdb4ncmc6vr3967mglfgiabn1978gyhv4xp9nwm"
   },
   "stable": {
    "version": [
@@ -111796,11 +112007,11 @@
   "repo": "myuhe/smartrep.el",
   "unstable": {
    "version": [
-    20150509,
-    230
+    20240416,
+    2148
    ],
-   "commit": "f0ff5a6d7b8603603598ae3045c98b011e58d86e",
-   "sha256": "1sjwqi8w83qxihqmcm7z0vwmrz1az0y266qgj2nwfv39bri6y4i6"
+   "commit": "fdf135e3781b286174b5de4d613f12c318d2023c",
+   "sha256": "11r3j2p420y5y3r0ffz91498cda2l4b2kkyhngri5i4dcncmngwy"
   },
   "stable": {
    "version": [
@@ -112197,16 +112408,16 @@
   "repo": "danielfm/smudge",
   "unstable": {
    "version": [
-    20231217,
-    1531
+    20240413,
+    2104
    ],
    "deps": [
     "oauth2",
     "request",
     "simple-httpd"
    ],
-   "commit": "a847e344887863e9c8aa37c909c64350defd1b73",
-   "sha256": "112844fr8pw6g6b95iiyhmbhmy0hqml0lgc59d16llgd463dbc32"
+   "commit": "4a9c5b34e9bc0a694d0faf8c2f83dc244b8b6a2f",
+   "sha256": "1xiqxw87sdk9mgy7fdbmzqaf58dc1grhkigirg1bd0b2q5kbnbwx"
   }
  },
  {
@@ -112352,15 +112563,15 @@
   "repo": "SpringHan/sniem",
   "unstable": {
    "version": [
-    20240228,
-    1320
+    20240423,
+    858
    ],
    "deps": [
     "dash",
     "s"
    ],
-   "commit": "50ead3321c448261d974ca05cd811fcd2232aeda",
-   "sha256": "1lx3mqmr8b3hccn6m6gzl12y3z8h6va7479daib1qy489inlk6wz"
+   "commit": "1791011310fe8d48fc8c5b79b32cb5cf586fb081",
+   "sha256": "0jdsyfj83y1i9dfc7d8d840brgz5q02cyxp4iqkq3a065gsajrwr"
   }
  },
  {
@@ -112566,26 +112777,26 @@
   "repo": "hlissner/emacs-solaire-mode",
   "unstable": {
    "version": [
-    20211213,
-    102
+    20240407,
+    1751
    ],
    "deps": [
     "cl-lib"
    ],
-   "commit": "8af65fbdc50b25ed3214da949b8a484527c7cc14",
-   "sha256": "1lkm09wznal0grpz61ikc77mjrri1x1bi79qwyf1cah9s0wv3isq"
+   "commit": "8ccdceeb9298b3c4e35f630914f467bf164f39ad",
+   "sha256": "164qqzmj1321rkvpiwpr5xnm1nbniibjkymfw5az32m2acdwk52j"
   },
   "stable": {
    "version": [
     2,
     0,
-    4
+    5
    ],
    "deps": [
     "cl-lib"
    ],
-   "commit": "8af65fbdc50b25ed3214da949b8a484527c7cc14",
-   "sha256": "1lkm09wznal0grpz61ikc77mjrri1x1bi79qwyf1cah9s0wv3isq"
+   "commit": "8ccdceeb9298b3c4e35f630914f467bf164f39ad",
+   "sha256": "164qqzmj1321rkvpiwpr5xnm1nbniibjkymfw5az32m2acdwk52j"
   }
  },
  {
@@ -112766,14 +112977,14 @@
   "repo": "emacsfodder/emacs-soothe-theme",
   "unstable": {
    "version": [
-    20220922,
-    349
+    20240415,
+    837
    ],
    "deps": [
     "autothemer"
    ],
-   "commit": "d8aee0fca549d535ebb7b5fd1a8017f12925d16b",
-   "sha256": "1bcwm07j0w8876vlzfpyh789n00w5dafx42zdbl612dpf6awika4"
+   "commit": "a8d3d964cfe9fc2157f45d2d26647a450ed9161a",
+   "sha256": "1c58b6rq890mklm5cv3hnnhwvjn4vb0ipvka0vdzmhpbbr4hkhf1"
   },
   "stable": {
    "version": [
@@ -113373,11 +113584,11 @@
   "repo": "ideasman42/emacs-spatial-navigate",
   "unstable": {
    "version": [
-    20230115,
-    633
+    20240421,
+    908
    ],
-   "commit": "11f281ae16b541ede9b4fadf96200e1728eb6ed0",
-   "sha256": "1wl8fvm9v3gsbdn0y9xzwnfh4ak5cdn0xdp0g816q5y3r5dyiywp"
+   "commit": "4f85fe3ae4d240a35d3d7edd8b865612024f9dda",
+   "sha256": "0vdqjw2ih7fngqy34wmxszq9bil49l3gnhh2ig6x3ah2wf47g401"
   }
  },
  {
@@ -113388,11 +113599,11 @@
   "repo": "condy0919/spdx.el",
   "unstable": {
    "version": [
-    20240316,
-    58
+    20240425,
+    103
    ],
-   "commit": "d1b325c8e7e2ac079de1314f91b980b354117248",
-   "sha256": "0870vlygdkyd8b6z9kykiqw48b64s0rrr68ir3ig30wmzs2r2441"
+   "commit": "28801aa911d43bb0b2545f83781a3c629266fd72",
+   "sha256": "15a26n645snjr92vp46pyv1pbkskb8arvvfb6hi8sy8m4vxc1bm3"
   }
  },
  {
@@ -113430,11 +113641,11 @@
   "repo": "brailcom/speechd-el",
   "unstable": {
    "version": [
-    20220608,
-    1422
+    20240427,
+    2112
    ],
-   "commit": "7e30c439729d5635ddd341ad5ab16f832a4619ea",
-   "sha256": "18xgqp8r1bgj63g2n08jbx4jwdcjn3p2lpdndyvfm394y2nzkcxr"
+   "commit": "64218c59f1636af6a0cb3690bf0bedae1dd17442",
+   "sha256": "1m7bfbk1iwdqa9dnf1b0isbl7pj3msxx4j6grr4d4pzb4hqphbfl"
   }
  },
  {
@@ -113516,11 +113727,11 @@
   "repo": "ideasman42/emacs-spell-fu",
   "unstable": {
    "version": [
-    20230808,
-    1342
+    20240421,
+    2351
    ],
-   "commit": "540141a5764ceb403e78e22f6714e2dab3597bc7",
-   "sha256": "0m4ml9x4mc3h3ychjgnqcg4nwdxxr5qq6hrlwam7yb3ggndh19vq"
+   "commit": "7f9332a299b41e1fa4da9a82669f5981f6ffd3cc",
+   "sha256": "19155y36mxdqrrnqw62hmysprvw1dajap1y4rcx1nr7j9xkwjs6h"
   }
  },
  {
@@ -113964,14 +114175,14 @@
   "repo": "purcell/sqlformat",
   "unstable": {
    "version": [
-    20230808,
-    543
+    20240325,
+    1006
    ],
    "deps": [
     "reformatter"
    ],
-   "commit": "c28c5f85828b25f7f36320b585056ea4b7181a9f",
-   "sha256": "0shspminb6j5fjp34qqvglcn2i22fhs8if3f36sws3rzwhfml7jc"
+   "commit": "f1c8f864f11f4af65551de445dcf65543be0583b",
+   "sha256": "0amkd2ic80y9dvmgbiv5a2agrs56ajmz3x3ibg1vi5crn8gxad8h"
   },
   "stable": {
    "version": [
@@ -114154,11 +114365,11 @@
   "repo": "srfi-explorations/emacs-srfi",
   "unstable": {
    "version": [
-    20240113,
-    2244
+    20240425,
+    1823
    ],
-   "commit": "78a31cc9714c80d41f19e33ce5b4cf09a14bfca9",
-   "sha256": "1xml90yrbswcq22lazrl5nwqamfflwry607zj88xk60xnxk2r55l"
+   "commit": "75b5b3e9b49bb450c1245ba7d7627ecb27baa53d",
+   "sha256": "0xaa2wa8p3606gclw2myj57sglii150dq9w26qisvhxym3i97r4k"
   },
   "stable": {
    "version": [
@@ -114626,20 +114837,20 @@
   "repo": "stacked-git/stgit",
   "unstable": {
    "version": [
-    20240218,
-    2150
+    20240407,
+    2229
    ],
-   "commit": "38ff3c3b2adc6d2c0f2e8fe5cb59f67d701741b3",
-   "sha256": "1g526gpcfjfkkh55by798hlgqph15vl0a1iw9332825wkqjawi6c"
+   "commit": "9afe502c74f51ed7d4e794da11c01e25718b0f64",
+   "sha256": "1sa9pndfjsja0gk7jc8vlfpzmahpvbqpb8b1dx6cl0568w13s1b5"
   },
   "stable": {
    "version": [
     2,
     4,
-    5
+    6
    ],
-   "commit": "38ff3c3b2adc6d2c0f2e8fe5cb59f67d701741b3",
-   "sha256": "1g526gpcfjfkkh55by798hlgqph15vl0a1iw9332825wkqjawi6c"
+   "commit": "9afe502c74f51ed7d4e794da11c01e25718b0f64",
+   "sha256": "1sa9pndfjsja0gk7jc8vlfpzmahpvbqpb8b1dx6cl0568w13s1b5"
   }
  },
  {
@@ -115615,8 +115826,8 @@
   "repo": "isamert/swagg.el",
   "unstable": {
    "version": [
-    20240324,
-    2014
+    20240326,
+    737
    ],
    "deps": [
     "compat",
@@ -115625,8 +115836,8 @@
     "s",
     "yaml"
    ],
-   "commit": "747102ae3448e8dcd5209308447375fd0fee4f89",
-   "sha256": "1azagz784g73zrcd092qmc5abk2rc9zq225chp2db2mm0v1bf1c0"
+   "commit": "27d5e7d06c2296cd356ac4a5b97ec84f2dabbb53",
+   "sha256": "0c7j62rd9yd9ckk28gxbh0lffamm479v1zcl7rsdircfnkixkks3"
   },
   "stable": {
    "version": [
@@ -115876,6 +116087,21 @@
   }
  },
  {
+  "ename": "swift-ts-mode",
+  "commit": "8d5397099835d6aa85e99cf5a54e240e7515e405",
+  "sha256": "00vz0j00hfhzs6j9rqgah2h8zxnsnrl1v2dymjvyrgi3i7wdfny5",
+  "fetcher": "github",
+  "repo": "rechsteiner/swift-ts-mode",
+  "unstable": {
+   "version": [
+    20240414,
+    949
+   ],
+   "commit": "a62f4d84b836fe208d912c26fb561c93a0c8e296",
+   "sha256": "0zzx8fg17vzh0r8ln884zg2kd7qj1bn9mnnvcr4fiv0x4dc16sgg"
+  }
+ },
+ {
   "ename": "swift3-mode",
   "commit": "0ca9071199230d3c4c1b2e3a501736df87095fd3",
   "sha256": "14vm05p8ix09v73dkmf03i56yib8yk6h2r1zc9m4ym80fki4f520",
@@ -115907,14 +116133,14 @@
   "repo": "abo-abo/swiper",
   "unstable": {
    "version": [
-    20240214,
-    2118
+    20240405,
+    1642
    ],
    "deps": [
     "ivy"
    ],
-   "commit": "749ac1235a7948011cb0caddd4c31037e3314614",
-   "sha256": "0d598jxdrxjlszaikh27v7j2zdndisfqzb384d94siw4rwzfj4zr"
+   "commit": "e0b1a6c224afb652d11b315913b8ad0c3ca8ecbc",
+   "sha256": "06370wzd058lx1k9dl76zzs0r9nycnlggfxxdw2691q8ypjqbd7q"
   },
   "stable": {
    "version": [
@@ -116259,8 +116485,8 @@
   "repo": "drym-org/symex.el",
   "unstable": {
    "version": [
-    20230322,
-    2003
+    20240418,
+    806
    ],
    "deps": [
     "evil",
@@ -116273,8 +116499,8 @@
     "tree-sitter",
     "tsc"
    ],
-   "commit": "0b65804d08c9ff61ec6785b48ce9b3c3d4779cfe",
-   "sha256": "1cg5w8k99sd94wyjpbg73azghh59hbalp7vs8z62is4bfzm514hb"
+   "commit": "db8ac5b3039b91e28d4c403c98fcb799ec94369e",
+   "sha256": "065njm2610vhvsg1f0pm7ri51fp93f8234in1p791iqmmykdk7jx"
   },
   "stable": {
    "version": [
@@ -116451,14 +116677,14 @@
   "repo": "emacs-berlin/syntactic-close",
   "unstable": {
    "version": [
-    20240322,
-    857
+    20240328,
+    1753
    ],
    "deps": [
     "cl-lib"
    ],
-   "commit": "6cf74c73c9ef946819e3cb6faa8e482fb11ccd53",
-   "sha256": "0q959gaighs7qcyjyf0a1jqhc39b5zbivk5gvx4n54x65vy0lc2r"
+   "commit": "271c3aeaa9523c8fec41d9127513c09262bad990",
+   "sha256": "0b47xsdh4wcdrcp6yrif5bqwhsp6bsgmjnp7wdghzqsimmqck5jr"
   }
  },
  {
@@ -116932,19 +117158,18 @@
   "repo": "shuxiao9058/tabnine",
   "unstable": {
    "version": [
-    20240227,
-    1429
+    20240426,
+    516
    ],
    "deps": [
     "dash",
     "editorconfig",
     "language-id",
     "s",
-    "transient",
-    "vterm"
+    "transient"
    ],
-   "commit": "a46629994b485472a442517e4c287e7a493deb9e",
-   "sha256": "162bid314jsgjf98i2xpxklwdhmnq0115ha6xr5qd8j6sch0f7xv"
+   "commit": "06804c5fea50d79de458a99699a16adaf3c52498",
+   "sha256": "1k9qv7w9065j4k601yy5jk0ypx5vk4ji6viv61ss9z1b1fq37yiq"
   }
  },
  {
@@ -116955,14 +117180,14 @@
   "repo": "mclear-tools/tabspaces",
   "unstable": {
    "version": [
-    20240306,
-    1454
+    20240415,
+    1838
    ],
    "deps": [
     "project"
    ],
-   "commit": "73d9cecaeb671e14409c80b10a17be64acebc43c",
-   "sha256": "09h5lndv8sxv9v3s5jlg3yj949vfq3jf78h1zj59vpzgvgi5cf62"
+   "commit": "c21f28b96b63926a530babe50d2c4de81ebaaa18",
+   "sha256": "0pxmhh0pga7cq8pkbyj0hjmpbabhb3322gy33z9nahy3m616m6hy"
   }
  },
  {
@@ -117122,11 +117347,11 @@
   "repo": "11111000000/tao-theme-emacs",
   "unstable": {
    "version": [
-    20231117,
-    1840
+    20240426,
+    439
    ],
-   "commit": "593494030bc7651efff0c79c62d5e21d3fd54f4f",
-   "sha256": "0741y62m8acpqk87s2bf2iw14m1nppgisdvarvrgz55x6zvn1mk9"
+   "commit": "af5926c53aebc591f1c77eb8ca8ff1ea9a73eaa5",
+   "sha256": "1jb2klplyngmv6pl6v39y0072hqgpgs22i7yk3097kbxv8llmk5c"
   },
   "stable": {
    "version": [
@@ -117352,16 +117577,16 @@
   "repo": "zevlg/telega.el",
   "unstable": {
    "version": [
-    20240322,
-    901
+    20240410,
+    928
    ],
    "deps": [
     "rainbow-identifiers",
     "transient",
     "visual-fill-column"
    ],
-   "commit": "7df0fead1683154dee24b3b61b4b575a89fab039",
-   "sha256": "09ppf5pgnan285hyfipa930wyi5qc8wf7b70wb9yh8xam7j1insf"
+   "commit": "d73e02dfe41580ff2d93a6c6feb2af254087bbf6",
+   "sha256": "1jg9l1dkiji5mqhbbfmgi0p4gdzw0m8hf7k4imnn61046llar8q0"
   },
   "stable": {
    "version": [
@@ -117521,14 +117746,14 @@
   "repo": "Crandel/tempel-collection",
   "unstable": {
    "version": [
-    20240216,
-    1105
+    20240404,
+    1026
    ],
    "deps": [
     "tempel"
    ],
-   "commit": "6248e22b52fd7fb98bba977221eb8440c82e6c00",
-   "sha256": "1z1vawc62c2a72mkkyz8apczv6g2xbc3zj5zmj7jscc3p5b0h3lf"
+   "commit": "e87b1fee9554f9bc7415df053c8d8c9f03c13955",
+   "sha256": "1j762811nlnimzvsmv6h1l3mpsd8wxa2ay48n73wxj3cv8qxz82r"
   }
  },
  {
@@ -118067,11 +118292,16 @@
   "repo": "TxGVNN/terraform-doc",
   "unstable": {
    "version": [
-    20240119,
-    1413
+    20240328,
+    802
+   ],
+   "deps": [
+    "org",
+    "promise",
+    "request"
    ],
-   "commit": "1e6963662d50196efb78f906a4d3d8669454dbbb",
-   "sha256": "1w892ak6bl8armlqbhc6d690y8dm1fnf9sz7sz5zh6y3i92dnj6v"
+   "commit": "32e65a46d1c31d1524002cc50b33082a84045173",
+   "sha256": "0bvd1drvgfkz8as134f0xdwvsa56l0hl59i66d77yryix3mmlg1f"
   },
   "stable": {
    "version": [
@@ -118269,14 +118499,14 @@
   "repo": "TobiasZawada/texfrag",
   "unstable": {
    "version": [
-    20230117,
-    1746
+    20240415,
+    1043
    ],
    "deps": [
     "auctex"
    ],
-   "commit": "6df9044c3d6bbb2a104f2c9b78ad10aa3cdf9506",
-   "sha256": "1qwp9nb0dswjr7alsrcwbjym0k56ncd0k5plhcsz8liz5886qfdy"
+   "commit": "d4d78e9ba4ae14cc554c31bb641dea38ab38babb",
+   "sha256": "1hkg2lrf6zf9cj95iys41xh0cwy0callpljyj6jj14qmq2s5kl5l"
   },
   "stable": {
    "version": [
@@ -118454,11 +118684,11 @@
   "repo": "monkeyjunglejuice/matrix-emacs-theme",
   "unstable": {
    "version": [
-    20240214,
-    747
+    20240422,
+    919
    ],
-   "commit": "1cfaa2b20d1dd9253b0654284eaff41e5a73d444",
-   "sha256": "1vslqg58yr7qa2431yl7z8zlziy71fl653js4xcljx8xfwqlynqh"
+   "commit": "2e373d5de799ef2546d6905949aa9ef21da5eea4",
+   "sha256": "15bf21y0sfsy1wpyazfcwr9cqs2vvmhwr2j2p37a2fiadrv27da4"
   }
  },
  {
@@ -118678,21 +118908,21 @@
   "repo": "facebook/fbthrift",
   "unstable": {
    "version": [
-    20240318,
-    1244
+    20240421,
+    1632
    ],
-   "commit": "9a64b4682510c27eab73440c56fca1eda9e05abd",
-   "sha256": "0m5nb9mq434wcfggdrpxyznbbp9psdkqqqdkps9jfs305qcld5zd"
+   "commit": "a1067af97a4a6070f4247657faf66ff25c1caffd",
+   "sha256": "0kjxyhr0kbw8dzd79gdj32srn5avnp4650ws1iy8q9rrppya9rr5"
   },
   "stable": {
    "version": [
     2024,
-    3,
-    18,
+    4,
+    22,
     0
    ],
-   "commit": "9a64b4682510c27eab73440c56fca1eda9e05abd",
-   "sha256": "0m5nb9mq434wcfggdrpxyznbbp9psdkqqqdkps9jfs305qcld5zd"
+   "commit": "a1067af97a4a6070f4247657faf66ff25c1caffd",
+   "sha256": "0kjxyhr0kbw8dzd79gdj32srn5avnp4650ws1iy8q9rrppya9rr5"
   }
  },
  {
@@ -118742,26 +118972,26 @@
   "repo": "tidalcycles/Tidal",
   "unstable": {
    "version": [
-    20230312,
-    1245
+    20240407,
+    1952
    ],
    "deps": [
     "haskell-mode"
    ],
-   "commit": "3ac320020d809ea626fc283839fecb10c9da4ce2",
-   "sha256": "1imqmg4naffiplpc3m74jvf26xwpy6026s61sg4si290qz3cvfq4"
+   "commit": "88f09edf6bef2228d5f530dea872b08a9d803066",
+   "sha256": "1r1d5hl49vdbwg5fcbfd0r0kwnc36knbfbr8fii4j73icm1g3frd"
   },
   "stable": {
    "version": [
     1,
     9,
-    4
+    5
    ],
    "deps": [
     "haskell-mode"
    ],
-   "commit": "3ac320020d809ea626fc283839fecb10c9da4ce2",
-   "sha256": "1imqmg4naffiplpc3m74jvf26xwpy6026s61sg4si290qz3cvfq4"
+   "commit": "88f09edf6bef2228d5f530dea872b08a9d803066",
+   "sha256": "1r1d5hl49vdbwg5fcbfd0r0kwnc36knbfbr8fii4j73icm1g3frd"
   }
  },
  {
@@ -119090,25 +119320,19 @@
   "repo": "aimebertrand/timu-line",
   "unstable": {
    "version": [
-    20231002,
-    1016
-   ],
-   "deps": [
-    "f"
+    20240405,
+    2022
    ],
-   "commit": "836cb92063076981f93e44f72dccd46a37e96785",
-   "sha256": "0ndhqsv11ai16y2pqcglqyhpzids4b7bzksmx5fs762vmmvm3r5z"
+   "commit": "3957234a4a7618376dc9ef40272f6aeabdf48843",
+   "sha256": "0msa4c6h6y1kl1q5rqjbf7i1hkpgp7k9qif7ssjq7dj6dlhakmb1"
   },
   "stable": {
    "version": [
     0,
-    8
-   ],
-   "deps": [
-    "f"
+    9
    ],
-   "commit": "676389f0f1609833e72701edc0a5fc80912167db",
-   "sha256": "0jxj3dyjppk8xiqjbq62z60hqrbzsa14x3yx5bjgzsghn27sq80f"
+   "commit": "3957234a4a7618376dc9ef40272f6aeabdf48843",
+   "sha256": "0msa4c6h6y1kl1q5rqjbf7i1hkpgp7k9qif7ssjq7dj6dlhakmb1"
   }
  },
  {
@@ -119119,19 +119343,19 @@
   "repo": "aimebertrand/timu-macos-theme",
   "unstable": {
    "version": [
-    20240317,
-    2007
+    20240401,
+    1346
    ],
-   "commit": "6079fa1bf9859955d30d6c51e7d8105588a9b588",
-   "sha256": "0f8jawiszqw2xwac2c3ipr8jdx7vfi5wr6xyd491m3faif4rmzz6"
+   "commit": "7734bd7287fa18cad8c146beabd52b52444e9da3",
+   "sha256": "0zm7wyjjwz9hlx23v1nvxnxgizb8q31bcg1fqh5gsgijka9fdzqx"
   },
   "stable": {
    "version": [
     1,
-    3
+    4
    ],
-   "commit": "43c2ebc4364c227e9e8943478c21250c594b3c50",
-   "sha256": "0lb7nlvmjmhq5dpqd2mdhn1h4hyy09bkpqmvz9dh8jwmgp8gfr04"
+   "commit": "7734bd7287fa18cad8c146beabd52b52444e9da3",
+   "sha256": "0zm7wyjjwz9hlx23v1nvxnxgizb8q31bcg1fqh5gsgijka9fdzqx"
   }
  },
  {
@@ -119177,7 +119401,7 @@
     9
    ],
    "commit": "0505a7c0d306632972f29e584e83e0cd58eba2ce",
-   "sha256": "04b6lyrn9hj754ykb07ks60c602h5gla11scyisnzga662li16ib"
+   "sha256": "0k4jpfc9m6834gng6w4zab8jh0d4i3dh5yvn89mlznsb9r9d6148"
   }
  },
  {
@@ -119338,11 +119562,11 @@
   "repo": "vifon/tmsu.el",
   "unstable": {
    "version": [
-    20240117,
-    1813
+    20240421,
+    1056
    ],
-   "commit": "c7dc44c97bf420ff0da5d552abfc9782bed70602",
-   "sha256": "1qn9y3nyx7796yx7qs8j368dskdfnpxhw1vvhlm9xd4dv8sxqjka"
+   "commit": "46e0c960629c82c090f42c196876aaf4d6edff1a",
+   "sha256": "0bmshvrw66rhszqqgfvnpvgvjzqvwi5mlylzz4v3dhvpr32bpb3b"
   }
  },
  {
@@ -119788,7 +120012,7 @@
     "s"
    ],
    "commit": "a715f7f2df416b8a6c827a9493ce7004180a3a4f",
-   "sha256": "188cdgic25wrb4jdgdcj070a0pxsh3m0rd9d2r6i1s1n1nalrs6g"
+   "sha256": "08awv1vbqg0x0h7f036sh07vypm8lq6b5g36gq9dmyfaqci9ccw6"
   }
  },
  {
@@ -119832,7 +120056,7 @@
     "base32"
    ],
    "commit": "927257e97a602b6979a75028e8417bf1499582d4",
-   "sha256": "1vw1vpnxa4qxbdsmis8d0df3qhwr1c5h0q04rvwmyviixd729mlr"
+   "sha256": "1jbpf28918pjiqhw8rackv9r8iq9ydd3jw1zwwifznglmpyca7jk"
   }
  },
  {
@@ -120109,15 +120333,15 @@
   "repo": "magit/transient",
   "unstable": {
    "version": [
-    20240321,
-    2209
+    20240421,
+    1737
    ],
    "deps": [
     "compat",
     "seq"
    ],
-   "commit": "55d5d41b48d7f7bc1ecf1f90c012d7821dff5724",
-   "sha256": "1mdcph2g0nbava3npa7bz463jqrz8rp9zmjgx8rqk7bdz2gd2yai"
+   "commit": "2dd0102ec3df901d421fc338e5c768467cc54ecf",
+   "sha256": "02qhhm37pmqpm51hn7sz7wn34x1vwixxka2fvlllq1vbmvzxinp6"
   },
   "stable": {
    "version": [
@@ -120406,15 +120630,15 @@
   "repo": "tarsius/tray",
   "unstable": {
    "version": [
-    20240101,
-    2226
+    20240415,
+    1549
    ],
    "deps": [
     "compat",
     "transient"
    ],
-   "commit": "15c08ec2b57ce0535f54242088d6051d2cf9a049",
-   "sha256": "0p9hg76a3ah8910r11da0c8ig4c6jpyinqnkgn15y0w3kb1zsh23"
+   "commit": "1ce8c7c74dec199e1045fec3c79cb9ff433b1735",
+   "sha256": "1b1i5hb9r8z6r1npbip8swgfizdkhwl1x5b6b9k9552i6gxm1qbz"
   },
   "stable": {
    "version": [
@@ -120585,26 +120809,26 @@
   "repo": "emacs-tree-sitter/tree-sitter-langs",
   "unstable": {
    "version": [
-    20240324,
-    1936
+    20240425,
+    231
    ],
    "deps": [
     "tree-sitter"
    ],
-   "commit": "c56cb511045d50e30f78508c54494e025d6af2cb",
-   "sha256": "0xxksxa8i37d33izkkfjmq0igyir98szxywkjg9rs28hj55m7zfj"
+   "commit": "ace4624f78ddb6c29e4efa904c6dd8636fad53fe",
+   "sha256": "1kaklazmr26gh6ff8p7r2xs1pc40ajwlhhinsbnl52prz3bc7702"
   },
   "stable": {
    "version": [
     0,
     12,
-    163
+    182
    ],
    "deps": [
     "tree-sitter"
    ],
-   "commit": "c56cb511045d50e30f78508c54494e025d6af2cb",
-   "sha256": "0xxksxa8i37d33izkkfjmq0igyir98szxywkjg9rs28hj55m7zfj"
+   "commit": "f75e8c1b4aa6c13d4b9a48545993d66a1d7e2eb1",
+   "sha256": "0zvz1kmx145g73wh2zjvrswcl9iiqlq59dlwf88p93n7wzk2ivbg"
   }
  },
  {
@@ -121019,20 +121243,20 @@
   "repo": "renzmann/treesit-auto",
   "unstable": {
    "version": [
-    20240223,
-    1450
+    20240420,
+    1457
    ],
-   "commit": "299dd88c9e5f1ff91a8f1989ad1e97e86c220020",
-   "sha256": "0c29ldai6fq413y14b4n3sh3s46vffdpg9xgspjklkq9ja1l0lw7"
+   "commit": "ecd898c4879614bf36d84a77c08a10aca25c3841",
+   "sha256": "190sv2ig3lisp2yiwy38ng8k9ckhpgjga5njnf88qnyp3r44bvcc"
   },
   "stable": {
    "version": [
     1,
     0,
-    4
+    5
    ],
-   "commit": "299dd88c9e5f1ff91a8f1989ad1e97e86c220020",
-   "sha256": "0c29ldai6fq413y14b4n3sh3s46vffdpg9xgspjklkq9ja1l0lw7"
+   "commit": "09d1c8c4b5bd981c6d613c95cf0ad859ad1fbc53",
+   "sha256": "1a2d49chymhfbd9w0msksyyqgsywn17mkzqglaw0k794sb1gzx2q"
   }
  },
  {
@@ -121274,14 +121498,14 @@
   "repo": "echawk/tsort.el",
   "unstable": {
    "version": [
-    20231027,
-    334
+    20240417,
+    120
    ],
    "deps": [
     "compat"
    ],
-   "commit": "3f9cffdbd4ac83a6a69dd4ccbb135e95950494ad",
-   "sha256": "0zssgrkzsn3q2g8ayhs31c408yhsggmyrzfscklvvdhmgg5qcabj"
+   "commit": "32e4f5b7b6de6f012a51f3d7ec151579d7b3e4a7",
+   "sha256": "0ib900rldqni4aiwd19a8r9v3wwnfkki4p45mrxj9rv152fwiywx"
   }
  },
  {
@@ -121808,20 +122032,20 @@
   "repo": "md-arif-shaikh/tzc",
   "unstable": {
    "version": [
-    20230504,
-    445
+    20240403,
+    332
    ],
-   "commit": "e815b43790d9a517f89a2bb592c665bd911a4477",
-   "sha256": "03bl4mfvmf5zkybl38j73zmq523ykafj81md83fimjnd57zlbml3"
+   "commit": "8f425cd6f020b5082445be9547e9308be73c6adf",
+   "sha256": "0wbgw4hvjqdflwjkyk9iscjh7243m9blbh9rzwinggkilgw44j2i"
   },
   "stable": {
    "version": [
     0,
-    2,
+    3,
     0
    ],
-   "commit": "6b11c8b2b6f207750d77542ff8e6ea1665be81c4",
-   "sha256": "0hb0m3f2na8xg3hnxwqk99hh04vgjkncssg07chx9bkrl20bvvv0"
+   "commit": "8f425cd6f020b5082445be9547e9308be73c6adf",
+   "sha256": "0wbgw4hvjqdflwjkyk9iscjh7243m9blbh9rzwinggkilgw44j2i"
   }
  },
  {
@@ -122118,7 +122342,7 @@
     0
    ],
    "commit": "c2f4870aff70efe70a8d1b089e56d3a2d6d048b9",
-   "sha256": "14ybav1f82m2gsxkciwlc0pm01ihqqaqq6arnjqvgxdnw0z6qniq"
+   "sha256": "0i6jfr4l7mr8gpavmfblr5d41ck8aqzaf4iv1qk5fyzsb6yi0nla"
   }
  },
  {
@@ -122176,11 +122400,11 @@
   "repo": "ideasman42/emacs-undo-fu",
   "unstable": {
    "version": [
-    20230808,
-    1340
+    20240422,
+    6
    ],
-   "commit": "0e74116fd5c7797811a91ba4eadef50d67523eb6",
-   "sha256": "0m5kj393jvg7r7mxjkg1riahxk20fc323agwdb86026z2cv2xl2x"
+   "commit": "d935af2c57ecfa14248a70b3fe8a84fb78fef209",
+   "sha256": "1zy4sxllmh0qa876qnc4h89f5fda3vcrgs4xpy7y1bgbfcpwks0q"
   }
  },
  {
@@ -122191,11 +122415,11 @@
   "repo": "ideasman42/emacs-undo-fu-session",
   "unstable": {
    "version": [
-    20240204,
-    1215
+    20240421,
+    834
    ],
-   "commit": "2b355c9d39b2688f859a762f2289f23fd16fadc4",
-   "sha256": "1r81m5zpckqkqxb4mfz9k2m17n8n790l69zhcx9i0711wxhcszqk"
+   "commit": "75d78310c86901f01b35d47f3ac1a5c8368abba4",
+   "sha256": "0ywyjg8zpa8dzz6sw5zvzfck44iapr0iymmpbxh4ymli663fmw9p"
   }
  },
  {
@@ -123281,11 +123505,11 @@
   "repo": "jcs-elpa/use-ttf",
   "unstable": {
    "version": [
-    20240101,
-    928
+    20240401,
+    611
    ],
-   "commit": "e0f61ad6c0b6ecf89ff0b43c430b15c94ec8c8b3",
-   "sha256": "11mp10s7pdkr5zrx793767n4y5afm8n9c8gxhs1scvqz3hpw46b5"
+   "commit": "694282b9ba7669fcbceb7088808147f68e3ac066",
+   "sha256": "1760x85gisl5s2wh7b4y7h334b2vv7cz2a158w0w2kjgshbjdwdi"
   },
   "stable": {
    "version": [
@@ -123324,11 +123548,11 @@
   "repo": "ideasman42/emacs-utimeclock",
   "unstable": {
    "version": [
-    20230601,
-    25
+    20240421,
+    702
    ],
-   "commit": "484d426a2ecc1ac7b922fd93c7d03da23510fb63",
-   "sha256": "00r4mbn5wc5h1c1xrmx1dhic4zvjmgihrnm863nn2823f33n2hdr"
+   "commit": "c4df85ac38b270628c4dacd9f6fb1da197f5aedd",
+   "sha256": "0fjws4y6njbcbz36kv5d85fn71026vw7ywd5vv1b4s39qzlyjqzi"
   }
  },
  {
@@ -123422,19 +123646,19 @@
   "repo": "non/uxntal-mode",
   "unstable": {
    "version": [
-    20231010,
-    438
+    20240327,
+    153
    ],
-   "commit": "9cc325992309e7b6f6ea75d64e12fde2a85320ed",
-   "sha256": "024nwljjl9bkdl815j1l4qp1zkd2nmv6xl94aym393k6dnlvplwi"
+   "commit": "1b114d97069a8c004f0ca58e0c69d61d897cef75",
+   "sha256": "1nbfqhb00cly3z897gc06j8kg8apya209wprjya7ak8iiq7cr012"
   },
   "stable": {
    "version": [
     0,
-    2
+    3
    ],
-   "commit": "a6e15c3ff1cfb05598db20ab494f783ba96f52ab",
-   "sha256": "0jxsn07w5iplc4xcdlljq8cpr0vf68p7wdqi9msv5hbcjrwk6as3"
+   "commit": "1b114d97069a8c004f0ca58e0c69d61d897cef75",
+   "sha256": "1nbfqhb00cly3z897gc06j8kg8apya209wprjya7ak8iiq7cr012"
   }
  },
  {
@@ -124111,11 +124335,11 @@
   "repo": "federicotdn/verb",
   "unstable": {
    "version": [
-    20240317,
-    1608
+    20240426,
+    2014
    ],
-   "commit": "a430847beb925ae82007d70f32f3bab38f0054e9",
-   "sha256": "0amcnyslr4inpms48ricln6nm1yp1rkbrpv1qgabml3f70x1faz9"
+   "commit": "24784e7a81a937b4b294a2a57238999c53d6e5d1",
+   "sha256": "1z47qjhb427hrdmpxmjq4h5q20lzppy35im46dl5m3yzvx3k5aha"
   },
   "stable": {
    "version": [
@@ -124166,14 +124390,14 @@
  },
  {
   "ename": "verilog-ext",
-  "commit": "f7452f1040c770f9eee8d9bb490d249561449057",
-  "sha256": "0hxvfw36ywn1sv1hfrshzwhb1fv8d28q8pk7vlwdsp4266n42i9r",
+  "commit": "a9f8ea0aa05b70aaf8aca910dda0d43a67b17a8f",
+  "sha256": "00wm1j0lhnp0fm18ibm04r7hzyvbzi79zbamp4dy36njv1ibh9dl",
   "fetcher": "github",
   "repo": "gmlarumbe/verilog-ext",
   "unstable": {
    "version": [
-    20240212,
-    57
+    20240407,
+    1352
    ],
    "deps": [
     "ag",
@@ -124188,14 +124412,14 @@
     "verilog-ts-mode",
     "yasnippet"
    ],
-   "commit": "9da79ac0c79e8819381002c205ae6817bbc9b642",
-   "sha256": "1jnnppvmp090c8mbkkq7daf2f497c3kzriph1d8pm4ph067d5ymz"
+   "commit": "1454457a85c9fb10145f45f80e1d3baa065017e5",
+   "sha256": "1rngn0w88a18hy1cba8qlc71zh3k5611rx4zgvnx8n0b8n6j1758"
   },
   "stable": {
    "version": [
     0,
-    4,
-    1
+    5,
+    0
    ],
    "deps": [
     "ag",
@@ -124210,8 +124434,8 @@
     "verilog-ts-mode",
     "yasnippet"
    ],
-   "commit": "0976770f9fc2722357672e532e7a86bc304de171",
-   "sha256": "196d531zd48sjdmjaqa828z5m3izc4x4wdk2rxx56nn2dahl7fz8"
+   "commit": "2488a25267d1e3b612f1da617d5a9506d6db8275",
+   "sha256": "02qgvb6rxg114picmr9v82rhk4nx848xgxddlq3hlcdvmr15szq2"
   }
  },
  {
@@ -124222,20 +124446,20 @@
   "repo": "gmlarumbe/verilog-ts-mode",
   "unstable": {
    "version": [
-    20240211,
-    210
+    20240406,
+    2147
    ],
-   "commit": "b055f7b4a7abdc1e1eb9eb5a99ddc288369982d0",
-   "sha256": "0khjhikw3ksk6lb2f7nwppp9l9vrfgq5jlwyfyrx0s9w6jyf64yc"
+   "commit": "f2dda1b25a06661569e393b04902be6a8e992b90",
+   "sha256": "18bmp1al4wsz7pcal39qbgb0q2zmib1xvjxz78ylwimpd8x81i7l"
   },
   "stable": {
    "version": [
     0,
     1,
-    2
+    3
    ],
-   "commit": "572508e9dc562a1718ddc857682c4f37dfbf5654",
-   "sha256": "06f989qkms4gnj0jrr1a2rkjwsgn0g8fqaz8sky4nwvvs3wmmm99"
+   "commit": "f2dda1b25a06661569e393b04902be6a8e992b90",
+   "sha256": "18bmp1al4wsz7pcal39qbgb0q2zmib1xvjxz78ylwimpd8x81i7l"
   }
  },
  {
@@ -124306,14 +124530,14 @@
   "repo": "baron42bba/vertica-snippets",
   "unstable": {
    "version": [
-    20240221,
-    1629
+    20240327,
+    1013
    ],
    "deps": [
     "yasnippet"
    ],
-   "commit": "efaf893698358a305b1c52fd22a6842b59940855",
-   "sha256": "13ikkmarxcv19938p3za3crpbh8003xmlg8afyfyrm4z7pann1qj"
+   "commit": "11dd101eb431b7fc7695e5ad3b2a6444ac49e7a4",
+   "sha256": "03zba07d7d1c96ygkw1779v9ybnaap2668ss5w92zfzc8b45yvdr"
   }
  },
  {
@@ -124324,25 +124548,25 @@
   "repo": "minad/vertico",
   "unstable": {
    "version": [
-    20240128,
-    1526
+    20240424,
+    1959
    ],
    "deps": [
     "compat"
    ],
-   "commit": "4a7da56b02c6aefff8f6b4574a530a7cb54bc21a",
-   "sha256": "0p84pnp14jcmxlmxpl6wpq2f3rfy4lr92gial1a35aigcins4657"
+   "commit": "1def56a1e678ff9a8eeafafda9c474a5fbb097c4",
+   "sha256": "0cxaqlg0mllrnf7zx7j6rdmx3x42s9b2marisi7zwfiymsnbgarr"
   },
   "stable": {
    "version": [
     1,
-    7
+    8
    ],
    "deps": [
     "compat"
    ],
-   "commit": "cf8b2abf5207696c054c33214c86e3969d415054",
-   "sha256": "03m5v4r6n10ydmr1lks0d91dlirxlsh82l0qlac8qqfz09g0p76a"
+   "commit": "1def56a1e678ff9a8eeafafda9c474a5fbb097c4",
+   "sha256": "0cxaqlg0mllrnf7zx7j6rdmx3x42s9b2marisi7zwfiymsnbgarr"
   }
  },
  {
@@ -124424,14 +124648,14 @@
  },
  {
   "ename": "vhdl-ext",
-  "commit": "de655c347e9c4c91ac415cf8b77c2bcd10ff98fe",
-  "sha256": "0wyh2dy8dv23ll5g9yjaw1azl8gnxwxbysb4ynyfzf1r13f2y74i",
+  "commit": "6ce292a56ee703a58d88306bc12a4cd20a8483af",
+  "sha256": "1gk71s61gwha230r0ddvmzyw1qx68vz1nqnj61fkm5nclf72cf0s",
   "fetcher": "github",
   "repo": "gmlarumbe/vhdl-ext",
   "unstable": {
    "version": [
-    20240212,
-    153
+    20240407,
+    1353
    ],
    "deps": [
     "ag",
@@ -124443,14 +124667,14 @@
     "ripgrep",
     "vhdl-ts-mode"
    ],
-   "commit": "64111386bd793ceb6a8f78ab5f5caf5655fb3aa0",
-   "sha256": "08pal1ba55bdbnjb7lqrl7v2z3rys2a8ng8gsxidfx1400lmxg1c"
+   "commit": "bd5f97d811f4444ab523a5faace8e599a90d972d",
+   "sha256": "1x72kmwzyhwkxrqx4ijajz8wsxm389mj48ba2y9z1vpsiijvp7i6"
   },
   "stable": {
    "version": [
     0,
-    4,
-    1
+    5,
+    0
    ],
    "deps": [
     "ag",
@@ -124462,8 +124686,8 @@
     "ripgrep",
     "vhdl-ts-mode"
    ],
-   "commit": "978224be71c1b5ee237cb6d7f729599cfba99ce3",
-   "sha256": "1g1sw3w9ns9wvn22nbdc8pxmm55y565r6hfbid1vibv5mgwqi5xy"
+   "commit": "08fc11c16c1e4425fe1dcc352e005c193112c1d7",
+   "sha256": "1q474h728zf6fv7zkh6fhfb81icqmyn48g6df79106z28vvfqdz7"
   }
  },
  {
@@ -124483,7 +124707,7 @@
     "outshine"
    ],
    "commit": "9cb2354874608d971be407ad9299ed918a6c061a",
-   "sha256": "1qfjwsxi3w2gdl258jbk5d3z645gs6zccxx2iah54zbgql17pgj9"
+   "sha256": "0gak3gvqw1pvall2rx82npil283z83aq79w5pw2a5rhi8a3imha4"
   },
   "stable": {
    "version": [
@@ -124496,7 +124720,7 @@
     "outshine"
    ],
    "commit": "5202db4c6a511a90a950a723293d11d55ec05264",
-   "sha256": "1qfjwsxi3w2gdl258jbk5d3z645gs6zccxx2iah54zbgql17pgj9"
+   "sha256": "1ygx8g9cxyyhhpcqan1ca4g741s3dd141bcmp6jjqbjfn2gqraz6"
   }
  },
  {
@@ -124507,20 +124731,20 @@
   "repo": "gmlarumbe/vhdl-ts-mode",
   "unstable": {
    "version": [
-    20240211,
-    213
+    20240406,
+    2155
    ],
-   "commit": "1d17c43993bf9eab97b0658a46fa17e64fc8eb4b",
-   "sha256": "1q2q538f6l9kvnlnnf1i39p21wblcy77lr24fcg1xl5ykrj3pjdc"
+   "commit": "eaeefce408085159cacf1ee9424fee20f20b6c39",
+   "sha256": "0p7qw4b8p1rgxd6zh9gpgxvhx7cr0xb9sjykmz74mscl4nfg7wck"
   },
   "stable": {
    "version": [
     0,
     1,
-    1
+    2
    ],
-   "commit": "768fc7afed0e3928bf74fca93ec68329ded89003",
-   "sha256": "0h33fbdji2ghqb0ppsna0x1h5qc6fcj0qyky1igxgdl3xxq38crp"
+   "commit": "eaeefce408085159cacf1ee9424fee20f20b6c39",
+   "sha256": "0p7qw4b8p1rgxd6zh9gpgxvhx7cr0xb9sjykmz74mscl4nfg7wck"
   }
  },
  {
@@ -124692,11 +124916,11 @@
   "repo": "nverno/vimscript-ts-mode",
   "unstable": {
    "version": [
-    20231022,
-    1758
+    20240426,
+    818
    ],
-   "commit": "20aea980ef94d643100638f2528aafc4b136e20c",
-   "sha256": "141mhzqv0fchcp6r6r3w8nismxa6a455d4z0ap6hcla2mxvszrwh"
+   "commit": "e806f59f870e268bfe879bdc7b5134e641c42c0f",
+   "sha256": "0n5k0rl7panzbzjfaj6y3qcirr9c809fh0p9156v33ah3jl71a2l"
   }
  },
  {
@@ -124818,20 +125042,20 @@
   "repo": "joostkremers/visual-fill-column",
   "unstable": {
    "version": [
-    20240223,
-    2340
+    20240411,
+    656
    ],
-   "commit": "5b9f9309bdf040b72bb2c3d99d1d8a0f0d98c308",
-   "sha256": "1imliz6fb5bxwcflkiqgk82xa34qkxaxzmy3rmj1cy2va148afx9"
+   "commit": "e04d3521b6dc2435de4c4a4b9cac5feb194f0d5b",
+   "sha256": "1bsymwzpvp4rqljidrixp3kc7kxjwsy5mkap6jw9rvpm6apy3b0n"
   },
   "stable": {
    "version": [
     2,
     6,
-    2
+    3
    ],
-   "commit": "5b9f9309bdf040b72bb2c3d99d1d8a0f0d98c308",
-   "sha256": "1imliz6fb5bxwcflkiqgk82xa34qkxaxzmy3rmj1cy2va148afx9"
+   "commit": "e04d3521b6dc2435de4c4a4b9cac5feb194f0d5b",
+   "sha256": "1bsymwzpvp4rqljidrixp3kc7kxjwsy5mkap6jw9rvpm6apy3b0n"
   }
  },
  {
@@ -125047,11 +125271,11 @@
   "repo": "emacs-vs/vs-dark-theme",
   "unstable": {
    "version": [
-    20240223,
-    1002
+    20240410,
+    216
    ],
-   "commit": "52006b40c7293f524ecb99d3899db7d95c77b317",
-   "sha256": "1njcy6hpvg7505agv619r924gs8ymjfyizxm8s70h3skwpg79yfm"
+   "commit": "26fb8e1dee98fd8d423abc35655859e1098325ee",
+   "sha256": "0ixa8kk4m0bg03qcahli8pp6srcavggkrfncyqg5igf8wg7d1wy5"
   },
   "stable": {
    "version": [
@@ -125070,11 +125294,11 @@
   "repo": "emacs-vs/vs-light-theme",
   "unstable": {
    "version": [
-    20240223,
-    1002
+    20240410,
+    216
    ],
-   "commit": "36f583c6b36cab827394548a8c9647c3fd066bb1",
-   "sha256": "0wd80m6796y0j0pzbw3qk4v8973x3cjimj7rh9ss7y22sqky5mmc"
+   "commit": "0ede987bac1c8dbeb07990a75e70b63cf9baf7e2",
+   "sha256": "0y5p2jbcjby0hrnhh2z99j27wsvkk8lrwdq2krd5188ssj66ca17"
   },
   "stable": {
    "version": [
@@ -125147,11 +125371,11 @@
   "repo": "akermu/emacs-libvterm",
   "unstable": {
    "version": [
-    20240318,
-    1617
+    20240325,
+    1551
    ],
-   "commit": "303decd923ef83a184b861d34081fd8635484a03",
-   "sha256": "15srbva8s19valai3ji794k0fha2xz3jhw81rg75mpnwcd5cxynb"
+   "commit": "ae4ae1aef2fcae98a37aad83f2a6aeeaeacedd4f",
+   "sha256": "180fa3ihcgp9f6gnp9z34cpc1k8ai75kmdagb4rc9qqb4z8lp9i2"
   }
  },
  {
@@ -125671,16 +125895,16 @@
   "repo": "wanderlust/wanderlust",
   "unstable": {
    "version": [
-    20240229,
-    1209
+    20240426,
+    1520
    ],
    "deps": [
     "apel",
     "flim",
     "semi"
    ],
-   "commit": "e525f27d29e122bb8baefa1837816f9001fa5085",
-   "sha256": "0gphh1qh55jkg2a8gvwjf5f60jhjk3c3y40iikgvgw6hnx3aw8ga"
+   "commit": "8a0ea2146ee919a5344bb25f198d45016bc716d9",
+   "sha256": "1w57d6zcqxm6q7rsc6kz84idcpz15rr67jzmfbc2mfiprfvrip1j"
   }
  },
  {
@@ -125751,11 +125975,11 @@
   "repo": "gmlarumbe/wavedrom-mode",
   "unstable": {
    "version": [
-    20230913,
-    2246
+    20240329,
+    1800
    ],
-   "commit": "b360aa39c87e033b65676d3ac542bc26fd5abd34",
-   "sha256": "1fml8yv4l8f83vrqj725vx60ld81hcgjdhg2v7d0gip30w0b1v3h"
+   "commit": "758a29e975e76ad616bbe18b657a5ce78fd32d32",
+   "sha256": "091aagn1mi1in4kn94b2cvcw0hfm7zfypgsc7gg5bq8hklg000vq"
   },
   "stable": {
    "version": [
@@ -125971,11 +126195,11 @@
   "repo": "fxbois/web-mode",
   "unstable": {
    "version": [
-    20240315,
-    1838
+    20240413,
+    1455
    ],
-   "commit": "a9d21841224da3295f2dd0a90022f5e435e48046",
-   "sha256": "19v4mwa1arnxrznqq8x7zsqlgvgznmw4yn8yd77jyr5lcvw43nax"
+   "commit": "005aa62d6f41fbf9bc045cac3b3b772716ee8ba7",
+   "sha256": "15bd89dwpvsfgc2m0jnnmmwqfqzrd2z9nv2qjdac339ddivm2lp8"
   },
   "stable": {
    "version": [
@@ -126390,11 +126614,19 @@
   "repo": "thierryvolpiatto/wfnames",
   "unstable": {
    "version": [
-    20230924,
-    1538
+    20240418,
+    1005
+   ],
+   "commit": "2f014c48fde0979da4ce3c0dbda81389c61a26bc",
+   "sha256": "15ly5cnq8bkh035mf9mvrbddqc2ajgv3fn7k3gdkivd68nk0wjb8"
+  },
+  "stable": {
+   "version": [
+    1,
+    2
    ],
-   "commit": "19b452fb698a5ba3b0f1d6e7d69a5e19af2c83e7",
-   "sha256": "0iihs4iam27m2ggmhy9x0np0awirxhzy78q677ng734zdig6bccz"
+   "commit": "2f014c48fde0979da4ce3c0dbda81389c61a26bc",
+   "sha256": "15ly5cnq8bkh035mf9mvrbddqc2ajgv3fn7k3gdkivd68nk0wjb8"
   }
  },
  {
@@ -126609,11 +126841,11 @@
   "repo": "justbur/emacs-which-key",
   "unstable": {
    "version": [
-    20240312,
-    2033
+    20240423,
+    1320
    ],
-   "commit": "96911a1d3faf8426a33241f4821319e98421f380",
-   "sha256": "0icplq3rnvaixx83phmwzspcw4wy1wzfcxhkf16fna2ik2i35829"
+   "commit": "ba323d6712d54806aa82847d017e94eafcf99d6f",
+   "sha256": "1ainrah6qnn9qvjcfgx133v4rvvyq15iy7kvi2rmbxxlfj5x6y1i"
   },
   "stable": {
    "version": [
@@ -127436,14 +127668,14 @@
   "repo": "magit/with-editor",
   "unstable": {
    "version": [
-    20240101,
-    2226
+    20240415,
+    1558
    ],
    "deps": [
     "compat"
    ],
-   "commit": "d43db3c58c34d4dbc3ce6f68ec24fecf3452b20e",
-   "sha256": "00rykgc0ffs6qih60w1qlh73jlm5dlrshvbinl1fglm4agm7h5yf"
+   "commit": "1b4526453ef6bdee30635f469aa26085c02b1ac1",
+   "sha256": "1qv84lg4g4kihv53vrklm0rmh9hqiwk23bynldiwvmiq39fqasyw"
   },
   "stable": {
    "version": [
@@ -127686,6 +127918,25 @@
   }
  },
  {
+  "ename": "wordcount-section",
+  "commit": "6f3b48f594a00659debafc09bdc129d40feb89b4",
+  "sha256": "1likzbgvazlkjb9vq873lr4j60ldqkfiq8z29x4rvcybzaabf89f",
+  "fetcher": "sourcehut",
+  "repo": "swflint/emacs-universal-sidecar",
+  "unstable": {
+   "version": [
+    20240323,
+    1901
+   ],
+   "deps": [
+    "compat",
+    "universal-sidecar"
+   ],
+   "commit": "b67153c880284db0ed9864370b16287fd855fb54",
+   "sha256": "0irbpsfndggi1fmwsnqdr6nky4b9xbiila5rxkbrr28y2r6bxsck"
+  }
+ },
+ {
   "ename": "wordel",
   "commit": "a0186cd951d0d4a6eb5b1f872d7114e24ce479a2",
   "sha256": "0xdj3fqkq1cixmr7nnzl0ch4zl9mpd0x1y8svdcqz0a1ncg6pg9g",
@@ -128080,32 +128331,32 @@
  },
  {
   "ename": "wttrin",
-  "commit": "1b2b6876562f1fadd4af1ea9b279ac4dc1b21660",
-  "sha256": "0msp8lja9nz6khz3dkasv8hnhkaayqxd7m58kma03hpkcjxnaxil",
+  "commit": "510ba3b42e9e1330fd26940d9c2f427112180485",
+  "sha256": "1b1xqqqif379sgna193qpl9i1s7ihm5mml8w4s8c39bnn56fpaxg",
   "fetcher": "github",
-  "repo": "bcbcarl/emacs-wttrin",
+  "repo": "cjennings/emacs-wttrin",
   "unstable": {
    "version": [
-    20170614,
-    1206
+    20240422,
+    1633
    ],
    "deps": [
     "xterm-color"
    ],
-   "commit": "df5427ce2a5ad4dab652dbb1c4a1834d7ddc2abc",
-   "sha256": "1ai655f10iayb4vw0ass2j3x83f4vsv90326mnywkzfl3sxd432z"
+   "commit": "9b98fedc44b1ddcebaa48df2975493b37797c2fb",
+   "sha256": "180amp1n0qdn6m6vlzg0ddfxfqf37fjaswfxdxn03298j0jgzw14"
   },
   "stable": {
    "version": [
     0,
-    1,
-    0
+    2,
+    4
    ],
    "deps": [
     "xterm-color"
    ],
-   "commit": "d595240d92788791da2218d12efd6a77eee06217",
-   "sha256": "0mbc3ndggv2rbmfcfhw8bsx3qw6jy684hxz5dqa88lfb6vs5knzc"
+   "commit": "9b98fedc44b1ddcebaa48df2975493b37797c2fb",
+   "sha256": "180amp1n0qdn6m6vlzg0ddfxfqf37fjaswfxdxn03298j0jgzw14"
   }
  },
  {
@@ -128631,14 +128882,14 @@
   "repo": "js-emacs/xref-js2",
   "unstable": {
    "version": [
-    20210310,
-    1238
+    20240417,
+    1454
    ],
    "deps": [
     "js2-mode"
    ],
-   "commit": "fd6b723e7f1f9793d189a815e1904364dc026b03",
-   "sha256": "0iny4qswyicrax36d4sgyfrw3giwjd1440bmlksd36y8zjkqqym0"
+   "commit": "db816e926302293c134d1260322b0553953a43e2",
+   "sha256": "0wsi4ix44h0vzjbw25iga4ghk5l06398l7fpv75iayyspmnl6gxq"
   },
   "stable": {
    "version": [
@@ -128660,11 +128911,11 @@
   "repo": "ideasman42/emacs-xref-rst",
   "unstable": {
    "version": [
-    20230601,
-    21
+    20240421,
+    814
    ],
-   "commit": "0811365a6ac240463aac9ddfcefb9ed8630e3da8",
-   "sha256": "1lgjp63ma3rb6rikn0bsyn4q1a1xf6gbnynpy6blsn0442ik2blk"
+   "commit": "c6dd6cc6df1d9dd311cb0f421b86beadfa3156ce",
+   "sha256": "0cb7ijk4x65r9wxwgrvwjqh1s8mg9vj3d41208rgn9q3849krg48"
   }
  },
  {
@@ -128786,19 +129037,19 @@
   "repo": "lordpretzel/xwidgets-reuse",
   "unstable": {
    "version": [
-    20231205,
-    1315
+    20240331,
+    1644
    ],
-   "commit": "4d5cfd24bc470def508e1301951d4057831d852f",
-   "sha256": "1p0zgd3x83la4w7bhy1f1daamnyfv7sk93bba25w39jgyjw3bd75"
+   "commit": "5653c8a3ac13615d171599b3ada87512bd1a6fb9",
+   "sha256": "0pbk5dqhj9ccxvpfzpbfg6c709j209r1idkljb32ssfcdfyld49h"
   },
   "stable": {
    "version": [
     0,
-    2
+    3
    ],
-   "commit": "3f95d81bfce1b3c52f9dcf2890cd2559a5287a33",
-   "sha256": "1i6g4n2pnp3r0pyn4p6xryh0x44lyvazy8kc1bfrzwzf6py9wmq0"
+   "commit": "5653c8a3ac13615d171599b3ada87512bd1a6fb9",
+   "sha256": "0pbk5dqhj9ccxvpfzpbfg6c709j209r1idkljb32ssfcdfyld49h"
   }
  },
  {
@@ -129295,14 +129546,14 @@
   "repo": "joaotavora/yasnippet",
   "unstable": {
    "version": [
-    20240308,
-    815
+    20240406,
+    1314
    ],
    "deps": [
     "cl-lib"
    ],
-   "commit": "33587a8551b8f6991b607d3532062a384c010ce1",
-   "sha256": "1412iz2k8fvkgb0kdnmv7g3mw8fqa8smbxzs2w8c2ahbm4bprrfq"
+   "commit": "eb5ba2664c3a68ae4a53bb38b85418dd131b208f",
+   "sha256": "1n4vrl504hiiiz44h30zr5azkzm160zrxbcxim5f6nc55lgpkvqk"
   },
   "stable": {
    "version": [
@@ -129325,14 +129576,14 @@
   "repo": "elken/yasnippet-capf",
   "unstable": {
    "version": [
-    20240309,
-    1316
+    20240420,
+    1531
    ],
    "deps": [
     "yasnippet"
    ],
-   "commit": "9043f8275176a8f198ce8e81fadab1870fa165bb",
-   "sha256": "19czzfjcd9m34ga51m5s10rlxp3v4q7fbq0cb5mc99ahbl763z9n"
+   "commit": "ea2bbf4f1c5c133ca7105a5cda2bc01c8e378ef5",
+   "sha256": "07aqjni44hick55mphz4xq6rap7m3p5nbbc7x63984r0aa25ckac"
   }
  },
  {
@@ -129554,14 +129805,14 @@
   "url": "https://git.thanosapollo.org/yeetube",
   "unstable": {
    "version": [
-    20240320,
-    1033
+    20240411,
+    1328
    ],
    "deps": [
     "compat"
    ],
-   "commit": "f9c28a527a60811c4b60bdd3730ca25c9522739a",
-   "sha256": "0idnvy7jgry8q3vf3532xdfxz62hc9qdn5ssb6mp32kmya9c3v3j"
+   "commit": "dfcbb8498b30b83d6f97d5777603d5f2dce39298",
+   "sha256": "013j8nm736lpkp2ygmgwdfbrylmwvlsgbf6qmscpfvn01n6w9s37"
   },
   "stable": {
    "version": [
@@ -129829,10 +130080,10 @@
  },
  {
   "ename": "ytel",
-  "commit": "447dac94507a1fd6791d08e0f8225c261d1fae2b",
-  "sha256": "0adxiw83rah9hln3k8gm6s7ks3xpqfknypjb9j51lxcabc7c1677",
+  "commit": "f01e793028a76e9033dd2e1e55e1ad475685fb69",
+  "sha256": "0sg5bjv6zknwvdbklmai9ilisja97lv30dq8n9h3fp47kw19fhyf",
   "fetcher": "github",
-  "repo": "grastello/ytel",
+  "repo": "manabiseijin/ytel",
   "unstable": {
    "version": [
     20200725,
@@ -129952,11 +130203,11 @@
   "repo": "bbatsov/zenburn-emacs",
   "unstable": {
    "version": [
-    20231120,
-    2002
+    20240331,
+    1350
    ],
-   "commit": "373a07f99ee595dee83b6cee8b6841b5d1c01e38",
-   "sha256": "03n87wcjbbpfgbx487676fzbrzzqj0cmiwcpikbws74fnr9ayplg"
+   "commit": "14dda0596a7cd0750fc6566eacc203a126f136c2",
+   "sha256": "1cyspxwjjhflafkyb2mkcfc1227i8kzmxgz3yvrj3ykdsim9pjwy"
   },
   "stable": {
    "version": [
@@ -130386,14 +130637,14 @@
   "repo": "ziglang/zig-mode",
   "unstable": {
    "version": [
-    20240301,
-    1618
+    20240416,
+    1636
    ],
    "deps": [
     "reformatter"
    ],
-   "commit": "b6f5375efeb97026410190f352f1044214fa0289",
-   "sha256": "0nll0ib9yvmjvysvvvmfdq5gl2zrwymzrifmmvifns8ddc2iv9ql"
+   "commit": "b4170b747ae4c45d145ff8bcb7fafe095e17b4c6",
+   "sha256": "1zzi7xlhhrzaxrwy20ida561n3rdjn25k3pkjvvjl073cr35hmyw"
   }
  },
  {
@@ -130929,7 +131180,7 @@
     "request"
    ],
    "commit": "98323098c37a444de49cfef44f1506e9386e8c5f",
-   "sha256": "18hi6m2ngl9yz599q5bhifafi4vz1adc06bjl0bhb3rs62vbkwk2"
+   "sha256": "1zr67h0w49rsi84mgf6jdili28h8782q6vjl8za0iq1hcx9zqxyf"
   }
  },
  {
diff --git a/pkgs/applications/editors/emacs/make-emacs.nix b/pkgs/applications/editors/emacs/make-emacs.nix
index a52533564616..59cced7ec49a 100644
--- a/pkgs/applications/editors/emacs/make-emacs.nix
+++ b/pkgs/applications/editors/emacs/make-emacs.nix
@@ -45,6 +45,7 @@
 , libxml2
 , llvmPackages_14
 , m17n_lib
+, mailutils
 , makeWrapper
 , motif
 , ncurses
@@ -58,7 +59,7 @@
 , tree-sitter
 , texinfo
 , webkitgtk
-, wrapGAppsHook
+, wrapGAppsHook3
 
 # Boolean flags
 , withNativeCompilation ? stdenv.buildPlatform.canExecute stdenv.hostPlatform
@@ -75,6 +76,7 @@
 , withGlibNetworking ? withPgtk || withGTK3 || (withX && withXwidgets)
 , withGpm ? stdenv.isLinux
 , withImageMagick ? lib.versionOlder version "27" && (withX || withNS)
+, withMailutils ? true
 , withMotif ? false
 , withNS ? stdenv.isDarwin && !(variant == "macport" || noGui)
 , withPgtk ? false
@@ -212,7 +214,7 @@ mkDerivation (finalAttrs: {
   ] ++ lib.optionals srcRepo [
     autoreconfHook
     texinfo
-  ] ++ lib.optional (withPgtk || withX && (withGTK3 || withXwidgets)) wrapGAppsHook;
+  ] ++ lib.optional (withPgtk || withX && (withGTK3 || withXwidgets)) wrapGAppsHook3;
 
   buildInputs = [
     gettext
@@ -304,39 +306,47 @@ mkDerivation (finalAttrs: {
     ImageIO
   ];
 
+  # Emacs needs to find movemail at run time, see info (emacs) Movemail
+  propagatedUserEnvPkgs = lib.optionals withMailutils [
+    mailutils
+  ];
+
   hardeningDisable = [ "format" ];
 
   configureFlags = [
-    "--disable-build-details" # for a (more) reproducible build
-    "--with-modules"
+    (lib.enableFeature false "build-details") # for a (more) reproducible build
+    (lib.withFeature true "modules")
   ] ++ (if withNS then [
-    "--disable-ns-self-contained"
+    (lib.enableFeature false "ns-self-contained")
   ] else if withX then [
-    "--with-x-toolkit=${toolkit}"
-    "--with-xft"
-    "--with-cairo"
+    (lib.withFeatureAs true "x-toolkit" toolkit)
+    (lib.withFeature true "cairo")
+    (lib.withFeature true "xft")
   ] else if withPgtk then [
-    "--with-pgtk"
+    (lib.withFeature true "pgtk")
   ] else [
-    "--with-gif=no"
-    "--with-jpeg=no"
-    "--with-png=no"
-    "--with-tiff=no"
-    "--with-x=no"
-    "--with-xpm=no"
+    (lib.withFeature false "gif")
+    (lib.withFeature false "jpeg")
+    (lib.withFeature false "png")
+    (lib.withFeature false "tiff")
+    (lib.withFeature false "x")
+    (lib.withFeature false "xpm")
   ])
   ++ lib.optionals (variant == "macport") [
-    "--enable-mac-app=$$out/Applications"
-    "--with-gnutls=yes"
-    "--with-mac"
-    "--with-xml2=yes"
+    (lib.enableFeatureAs true "mac-app" "$$out/Applications")
+    (lib.withFeature true "gnutls")
+    (lib.withFeature true "mac")
+    (lib.withFeature true "xml2")
+  ]
+  ++ lib.optionals stdenv.isDarwin [
+    (lib.withFeature withNS "ns")
   ]
-  ++ (lib.optional stdenv.isDarwin (lib.withFeature withNS "ns"))
   ++ [
     (lib.withFeature withCompressInstall "compress-install")
     (lib.withFeature withToolkitScrollBars "toolkit-scroll-bars")
     (lib.withFeature withNativeCompilation "native-compilation")
     (lib.withFeature withImageMagick "imagemagick")
+    (lib.withFeature withMailutils "mailutils")
     (lib.withFeature withSmallJaDic "small-ja-dic")
     (lib.withFeature withTreeSitter "tree-sitter")
     (lib.withFeature withXinput2 "xinput2")
diff --git a/pkgs/applications/editors/focuswriter/default.nix b/pkgs/applications/editors/focuswriter/default.nix
index 179cbb0fdbf6..618ea2f471a2 100644
--- a/pkgs/applications/editors/focuswriter/default.nix
+++ b/pkgs/applications/editors/focuswriter/default.nix
@@ -14,13 +14,13 @@
 
 stdenv.mkDerivation rec {
   pname = "focuswriter";
-  version = "1.8.6";
+  version = "1.8.7";
 
   src = fetchFromGitHub {
     owner = "gottcode";
     repo = "focuswriter";
     rev = "v${version}";
-    hash = "sha256-z3DQaMgaTjzj2Oh1QI7A5v9G7GxjlGj/7jInxH/tDaY=";
+    hash = "sha256-op76oHVo6yCpXzRFYAYXMCEslCgDA6jXPcgWdTeGJ+E=";
   };
 
   nativeBuildInputs = [ pkg-config cmake qttools wrapQtAppsHook ];
diff --git a/pkgs/applications/editors/formiko/default.nix b/pkgs/applications/editors/formiko/default.nix
index 53fee165f5e5..40c7fba0be82 100644
--- a/pkgs/applications/editors/formiko/default.nix
+++ b/pkgs/applications/editors/formiko/default.nix
@@ -1,7 +1,7 @@
 { lib
 , buildPythonApplication
 , fetchFromGitHub
-, wrapGAppsHook
+, wrapGAppsHook3
 , gobject-introspection
 , gtk3
 , docutils
@@ -24,7 +24,7 @@ buildPythonApplication rec {
   };
 
   nativeBuildInputs = [
-    wrapGAppsHook
+    wrapGAppsHook3
     gobject-introspection
     gtk3
   ];
diff --git a/pkgs/applications/editors/fte/default.nix b/pkgs/applications/editors/fte/default.nix
deleted file mode 100644
index 1c5d1f15ecb8..000000000000
--- a/pkgs/applications/editors/fte/default.nix
+++ /dev/null
@@ -1,33 +0,0 @@
-{ lib, stdenv, fetchurl, unzip, perl, libX11, libXpm, gpm, ncurses, slang }:
-
-stdenv.mkDerivation rec {
-  pname = "fte";
-  version = "0.50.02";
-
-  nativeBuildInputs = [ unzip ];
-  buildInputs = [ perl libX11 libXpm gpm ncurses slang ];
-
-  ftesrc = fetchurl {
-    url = "mirror://sourceforge/fte/fte-20110708-src.zip";
-    sha256 = "17j9akr19w19myglw5mljjw2g3i2cwxiqrjaln82h3rz5ma1qcfn";
-  };
-  ftecommon = fetchurl {
-    url = "mirror://sourceforge/fte/fte-20110708-common.zip";
-    sha256 = "1xva4kh0674sj2b9rhf2amlr37yxmsvjkgyj89gpcn0rndw1ahaq";
-  };
-  src = [ ftesrc ftecommon ];
-
-  env.NIX_CFLAGS_COMPILE = "-DHAVE_STRLCAT -DHAVE_STRLCPY";
-
-  buildFlags = [ "PREFIX=$(out)" ];
-
-  installFlags = [ "PREFIX=$(out)" "INSTALL_NONROOT=1" ];
-
-  meta = with lib; {
-    description = "A free text editor for developers";
-    homepage = "https://fte.sourceforge.net/";
-    license = licenses.gpl2;
-    maintainers = [ ];
-    platforms = platforms.all;
-  };
-}
diff --git a/pkgs/applications/editors/geany/default.nix b/pkgs/applications/editors/geany/default.nix
index 517b2ca4fe79..f6755905c739 100644
--- a/pkgs/applications/editors/geany/default.nix
+++ b/pkgs/applications/editors/geany/default.nix
@@ -8,7 +8,7 @@
 , libintl
 , hicolor-icon-theme
 , python3
-, wrapGAppsHook
+, wrapGAppsHook3
 }:
 
 stdenv.mkDerivation (finalAttrs: {
@@ -36,7 +36,7 @@ stdenv.mkDerivation (finalAttrs: {
     file
     hicolor-icon-theme
     python3
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
diff --git a/pkgs/applications/editors/gedit/default.nix b/pkgs/applications/editors/gedit/default.nix
index 9ec2d3329c1d..c3fc6fae2dcf 100644
--- a/pkgs/applications/editors/gedit/default.nix
+++ b/pkgs/applications/editors/gedit/default.nix
@@ -15,7 +15,7 @@
 , libpeas
 , libxml2
 , gsettings-desktop-schemas
-, wrapGAppsHook
+, wrapGAppsHook3
 , gtk-doc
 , gobject-introspection
 , docbook-xsl-nons
@@ -56,7 +56,7 @@ stdenv.mkDerivation rec {
     python3
     python3Packages.wrapPython
     vala
-    wrapGAppsHook
+    wrapGAppsHook3
     gtk-doc
     gobject-introspection
     docbook-xsl-nons
diff --git a/pkgs/applications/editors/gnome-builder/default.nix b/pkgs/applications/editors/gnome-builder/default.nix
index e689f9ee7d06..f0e7b272f8a7 100644
--- a/pkgs/applications/editors/gnome-builder/default.nix
+++ b/pkgs/applications/editors/gnome-builder/default.nix
@@ -5,7 +5,6 @@
 , desktop-file-utils
 , editorconfig-core-c
 , fetchurl
-, fetchpatch
 , flatpak
 , gnome
 , libgit2-glib
@@ -43,13 +42,13 @@
 
 stdenv.mkDerivation rec {
   pname = "gnome-builder";
-  version = "45.0";
+  version = "46.1";
 
   outputs = [ "out" "devdoc" ];
 
   src = fetchurl {
     url = "mirror://gnome/sources/${pname}/${lib.versions.major version}/${pname}-${version}.tar.xz";
-    sha256 = "JC2gJZMpPUVuokEIpFk0cwoeMW2NxbGNnfDoZNt7pZY=";
+    hash = "sha256-lhaWbVIqLIUCizPAm605cudp6fkK91VNXnGDfb3HiHE=";
   };
 
   patches = [
@@ -64,12 +63,6 @@ stdenv.mkDerivation rec {
     #
     #     Typelib file for namespace 'Pango', version '1.0' not found (g-irepository-error-quark, 0)
     ./fix-finding-test-typelibs.patch
-
-    (fetchpatch {
-      name = "redefinition-of-glib_autoptr_clear_GtkStackPage.patch";
-      url = "https://gitlab.gnome.org/GNOME/gnome-builder/-/commit/7aaaecefc2ea8a37eaeae8b4d726d119d4eb8fa3.patch";
-      hash = "sha256-sYLqhwCd9GOkUMUZAO2trAGKC3013jgivHrNC4atdn0=";
-    })
   ];
 
   nativeBuildInputs = [
diff --git a/pkgs/applications/editors/gnome-inform7/default.nix b/pkgs/applications/editors/gnome-inform7/default.nix
index cab490cd76e4..df1baa997a21 100644
--- a/pkgs/applications/editors/gnome-inform7/default.nix
+++ b/pkgs/applications/editors/gnome-inform7/default.nix
@@ -1,5 +1,5 @@
 { lib, stdenv, fetchFromGitHub, meson, ninja, pkg-config, python3, perl, bison
-, texinfo, desktop-file-utils, wrapGAppsHook, docbook2x, docbook-xsl-nons
+, texinfo, desktop-file-utils, wrapGAppsHook3, docbook2x, docbook-xsl-nons
 , inform7, gettext, libossp_uuid, gtk3, gobject-introspection, vala, gtk-doc
 , webkitgtk, gtksourceview3, gspell, libxml2, goocanvas2, libplist, glib
 , gst_all_1 }:
@@ -22,7 +22,7 @@ let
       pkg-config
       docbook2x
       docbook-xsl-nons
-      wrapGAppsHook
+      wrapGAppsHook3
       gobject-introspection
     ];
     buildInputs = [
@@ -49,7 +49,7 @@ let
       texinfo
       python3
       glib
-      wrapGAppsHook
+      wrapGAppsHook3
       gobject-introspection
     ];
     buildInputs = [
@@ -84,7 +84,7 @@ in stdenv.mkDerivation {
     inform7
     python3
     desktop-file-utils
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
   buildInputs = [
     gettext
diff --git a/pkgs/applications/editors/gnome-latex/default.nix b/pkgs/applications/editors/gnome-latex/default.nix
index f78407731d26..505bddde4f5e 100644
--- a/pkgs/applications/editors/gnome-latex/default.nix
+++ b/pkgs/applications/editors/gnome-latex/default.nix
@@ -6,7 +6,7 @@
 , gtk-doc
 , vala
 , gobject-introspection
-, wrapGAppsHook
+, wrapGAppsHook3
 , gsettings-desktop-schemas
 , gspell
 , libgedit-gtksourceview
@@ -43,7 +43,7 @@ stdenv.mkDerivation rec {
     gtk-doc
     vala
     gobject-introspection
-    wrapGAppsHook
+    wrapGAppsHook3
     itstool
     gettext
   ];
diff --git a/pkgs/applications/editors/gobby/default.nix b/pkgs/applications/editors/gobby/default.nix
index d36f89e3c1c7..8801afa34e6c 100644
--- a/pkgs/applications/editors/gobby/default.nix
+++ b/pkgs/applications/editors/gobby/default.nix
@@ -1,5 +1,5 @@
 { avahiSupport ? false # build support for Avahi in libinfinity
-, lib, stdenv, fetchFromGitHub, autoconf, automake, pkg-config, wrapGAppsHook, yelp-tools
+, lib, stdenv, fetchFromGitHub, autoconf, automake, pkg-config, wrapGAppsHook3, yelp-tools
 , gtkmm3, gsasl, gtksourceview3, libxmlxx, libinfinity, intltool, itstool }:
 
 let
@@ -15,7 +15,7 @@ in stdenv.mkDerivation rec {
     sha256 = "06cbc2y4xkw89jaa0ayhgh7fxr5p2nv3jjs8h2xcbbbgwaw08lk0";
   };
 
-  nativeBuildInputs = [ autoconf automake pkg-config intltool itstool yelp-tools wrapGAppsHook ];
+  nativeBuildInputs = [ autoconf automake pkg-config intltool itstool yelp-tools wrapGAppsHook3 ];
   buildInputs = [ gtkmm3 gsasl gtksourceview3 libxmlxx libinf ];
 
   preConfigure = "./autogen.sh";
diff --git a/pkgs/applications/editors/greenfoot/default.nix b/pkgs/applications/editors/greenfoot/default.nix
index 4a3ae555f21e..e4734355fd55 100644
--- a/pkgs/applications/editors/greenfoot/default.nix
+++ b/pkgs/applications/editors/greenfoot/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetchurl, openjdk, glib, dpkg, wrapGAppsHook }:
+{ lib, stdenv, fetchurl, openjdk, glib, dpkg, wrapGAppsHook3 }:
 
 stdenv.mkDerivation rec {
   pname = "greenfoot";
@@ -12,7 +12,7 @@ stdenv.mkDerivation rec {
     hash = "sha256-wpmgWtx2jTDjt+7p6HcjU/uy1PRmnAHpJ1rOYb+hV+U=";
   };
 
-  nativeBuildInputs = [ dpkg wrapGAppsHook ];
+  nativeBuildInputs = [ dpkg wrapGAppsHook3 ];
   buildInputs = [ glib ];
 
   dontWrapGApps = true;
diff --git a/pkgs/applications/editors/heh/default.nix b/pkgs/applications/editors/heh/default.nix
index a3ad923ef561..0b31e30e67f5 100644
--- a/pkgs/applications/editors/heh/default.nix
+++ b/pkgs/applications/editors/heh/default.nix
@@ -6,16 +6,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "heh";
-  version = "0.4.1";
+  version = "0.5.0";
 
   src = fetchFromGitHub {
     owner = "ndd7xv";
     repo = pname;
     rev = "v${version}";
-    hash = "sha256-IIF/bkTLwR8pCs/hJ625T3NsiKf/6Zf1cW2i4lsiK4U=";
+    hash = "sha256-zkb+HogwioqxZ+BTl7bcDQx9i9uWhT2QdAIXpHqvDl0=";
   };
 
-  cargoHash = "sha256-tDvqaNVuzv1BlS/oNI1D/WV1b5uHreT3Ak/6ruqKXQc=";
+  cargoHash = "sha256-YcTaLq04NhmnJ1pdbiKMRIBSFvHNWNgoAS8Uz8uGGAw=";
 
   meta = with lib; {
     description = "A cross-platform terminal UI used for modifying file data in hex or ASCII.";
diff --git a/pkgs/applications/editors/hexedit/default.nix b/pkgs/applications/editors/hexedit/default.nix
deleted file mode 100644
index efdfac33f09b..000000000000
--- a/pkgs/applications/editors/hexedit/default.nix
+++ /dev/null
@@ -1,25 +0,0 @@
-{ lib, stdenv, fetchFromGitHub, autoreconfHook, ncurses }:
-
-stdenv.mkDerivation rec {
-  pname = "hexedit";
-  version = "1.6";
-
-  src = fetchFromGitHub {
-    owner = "pixel";
-    repo = "hexedit";
-    rev = version;
-    sha256 = "sha256-fIgPbr7qmxyEga2YaAD0+NBM8LeDm/tVAq99ub7aiAI=";
-  };
-
-  nativeBuildInputs = [ autoreconfHook ];
-  buildInputs = [ ncurses ];
-
-  meta = with lib; {
-    description = "View and edit files in hexadecimal or in ASCII";
-    homepage = "http://rigaux.org/hexedit.html";
-    license = licenses.gpl2Plus;
-    platforms = platforms.unix;
-    maintainers = with maintainers; [ ];
-    mainProgram = "hexedit";
-  };
-}
diff --git a/pkgs/applications/editors/jetbrains/bin/versions.json b/pkgs/applications/editors/jetbrains/bin/versions.json
index 880858ef56b5..8fc5468aa588 100644
--- a/pkgs/applications/editors/jetbrains/bin/versions.json
+++ b/pkgs/applications/editors/jetbrains/bin/versions.json
@@ -28,33 +28,33 @@
       "update-channel": "Gateway RELEASE",
       "url-template": "https://download.jetbrains.com/idea/gateway/JetBrainsGateway-{version}.tar.gz",
       "version": "2024.1.1",
-      "sha256": "2fd861d6fc91815466fc1f3b2bbd2177e55f1ea2c086fa10cf979de773d9cc06",
+      "sha256": "d83df71dacb8d71cd7af6ca06267b7006b9172d121b316a8a3ad41db7c870193",
       "url": "https://download.jetbrains.com/idea/gateway/JetBrainsGateway-2024.1.1.tar.gz",
-      "build_number": "241.15989.74"
+      "build_number": "241.15989.158"
     },
     "goland": {
       "update-channel": "GoLand RELEASE",
       "url-template": "https://download.jetbrains.com/go/goland-{version}.tar.gz",
-      "version": "2024.1",
-      "sha256": "783539f254e4d62f4fae153a9e737f1d69db1e44676c4d1513775571a68950e4",
-      "url": "https://download.jetbrains.com/go/goland-2024.1.tar.gz",
-      "build_number": "241.14494.238"
+      "version": "2024.1.1",
+      "sha256": "d952641bb05a38c771ae64b381f7d3735e20695df89180cc7f5ba9b31c0e437d",
+      "url": "https://download.jetbrains.com/go/goland-2024.1.1.tar.gz",
+      "build_number": "241.15989.157"
     },
     "idea-community": {
       "update-channel": "IntelliJ IDEA RELEASE",
       "url-template": "https://download.jetbrains.com/idea/ideaIC-{version}.tar.gz",
-      "version": "2024.1",
-      "sha256": "01d1b224c5e88592f954b17796a76fa8391cdcafef27264e703c7ffe47bb4065",
-      "url": "https://download.jetbrains.com/idea/ideaIC-2024.1.tar.gz",
-      "build_number": "241.14494.240"
+      "version": "2024.1.1",
+      "sha256": "4d4221630c4d1dcb9f198370f82d9364014a4a624684ad8b3958be9f01eb656a",
+      "url": "https://download.jetbrains.com/idea/ideaIC-2024.1.1.tar.gz",
+      "build_number": "241.15989.150"
     },
     "idea-ultimate": {
       "update-channel": "IntelliJ IDEA RELEASE",
       "url-template": "https://download.jetbrains.com/idea/ideaIU-{version}.tar.gz",
-      "version": "2024.1",
-      "sha256": "b9083da939eacbcdf24b84cb9c45a1291bb33715f05fc7e10f2cff065d7c3fea",
-      "url": "https://download.jetbrains.com/idea/ideaIU-2024.1.tar.gz",
-      "build_number": "241.14494.240"
+      "version": "2024.1.1",
+      "sha256": "d78b5ad0cf8325ca0659aae36b9979a581dab6cf8c7cd127cfb7f86440f282c9",
+      "url": "https://download.jetbrains.com/idea/ideaIU-2024.1.1.tar.gz",
+      "build_number": "241.15989.150"
     },
     "mps": {
       "update-channel": "MPS RELEASE",
@@ -76,18 +76,18 @@
     "pycharm-community": {
       "update-channel": "PyCharm RELEASE",
       "url-template": "https://download.jetbrains.com/python/pycharm-community-{version}.tar.gz",
-      "version": "2024.1",
-      "sha256": "96048ea55ef45f1af0ebe12ad0e38e2763c9e5d654b9e174b33aaa12665d836b",
-      "url": "https://download.jetbrains.com/python/pycharm-community-2024.1.tar.gz",
-      "build_number": "241.14494.241"
+      "version": "2024.1.1",
+      "sha256": "715f30966c5597adc6ef544051a796de8a6cc5a5182938b8e14a1e6ad5e5edfd",
+      "url": "https://download.jetbrains.com/python/pycharm-community-2024.1.1.tar.gz",
+      "build_number": "241.15989.155"
     },
     "pycharm-professional": {
       "update-channel": "PyCharm RELEASE",
       "url-template": "https://download.jetbrains.com/python/pycharm-professional-{version}.tar.gz",
-      "version": "2024.1",
-      "sha256": "2451d3ef7642151306354418c5237b326271e2653a09b869e5883a262a2916ad",
-      "url": "https://download.jetbrains.com/python/pycharm-professional-2024.1.tar.gz",
-      "build_number": "241.14494.241"
+      "version": "2024.1.1",
+      "sha256": "b7e12b8d16164137f4cb0677fcac18af78aa117d33c511cce3fcf3972b4e3b17",
+      "url": "https://download.jetbrains.com/python/pycharm-professional-2024.1.1.tar.gz",
+      "build_number": "241.15989.155"
     },
     "rider": {
       "update-channel": "Rider RELEASE",
@@ -159,33 +159,33 @@
       "update-channel": "Gateway RELEASE",
       "url-template": "https://download.jetbrains.com/idea/gateway/JetBrainsGateway-{version}-aarch64.tar.gz",
       "version": "2024.1.1",
-      "sha256": "f500422ce9f2c7edb6515b3e7c6336df94000f0c2c454fe207a295489dcf3a0d",
+      "sha256": "6ea42d3605f5dc25b67b5254947bb3cd1a3cce7e81520ae5f486224bbbbc5de3",
       "url": "https://download.jetbrains.com/idea/gateway/JetBrainsGateway-2024.1.1-aarch64.tar.gz",
-      "build_number": "241.15989.74"
+      "build_number": "241.15989.158"
     },
     "goland": {
       "update-channel": "GoLand RELEASE",
       "url-template": "https://download.jetbrains.com/go/goland-{version}-aarch64.tar.gz",
-      "version": "2024.1",
-      "sha256": "f3cae5c83ca99d3b0e0ef20282f2434879ef89a59ca2c770c31b855e45b8f6f3",
-      "url": "https://download.jetbrains.com/go/goland-2024.1-aarch64.tar.gz",
-      "build_number": "241.14494.238"
+      "version": "2024.1.1",
+      "sha256": "d5577561744d4cedf7c092acde9faafbcd57527678693a964517383cdf831eeb",
+      "url": "https://download.jetbrains.com/go/goland-2024.1.1-aarch64.tar.gz",
+      "build_number": "241.15989.157"
     },
     "idea-community": {
       "update-channel": "IntelliJ IDEA RELEASE",
       "url-template": "https://download.jetbrains.com/idea/ideaIC-{version}-aarch64.tar.gz",
-      "version": "2024.1",
-      "sha256": "a13e7a53b5c8a512fbcb72957f24e5515618a5533f17d72914da5445b736dac1",
-      "url": "https://download.jetbrains.com/idea/ideaIC-2024.1-aarch64.tar.gz",
-      "build_number": "241.14494.240"
+      "version": "2024.1.1",
+      "sha256": "ae95111e01ce8f2f6dc0083306f121d8eb229dc001f1a5f0d69e4d20b2bc1d3c",
+      "url": "https://download.jetbrains.com/idea/ideaIC-2024.1.1-aarch64.tar.gz",
+      "build_number": "241.15989.150"
     },
     "idea-ultimate": {
       "update-channel": "IntelliJ IDEA RELEASE",
       "url-template": "https://download.jetbrains.com/idea/ideaIU-{version}-aarch64.tar.gz",
-      "version": "2024.1",
-      "sha256": "e73756a96a2e958441facb2b9be7ba30b463a63235f37a757866800162f293bd",
-      "url": "https://download.jetbrains.com/idea/ideaIU-2024.1-aarch64.tar.gz",
-      "build_number": "241.14494.240"
+      "version": "2024.1.1",
+      "sha256": "4cec9ac0fbc1468708a9ae226a94d0ad1ef73829d49537d4363abd2ecda4bc62",
+      "url": "https://download.jetbrains.com/idea/ideaIU-2024.1.1-aarch64.tar.gz",
+      "build_number": "241.15989.150"
     },
     "mps": {
       "update-channel": "MPS RELEASE",
@@ -207,18 +207,18 @@
     "pycharm-community": {
       "update-channel": "PyCharm RELEASE",
       "url-template": "https://download.jetbrains.com/python/pycharm-community-{version}-aarch64.tar.gz",
-      "version": "2024.1",
-      "sha256": "de8259a4cea264a2263bf771d74949ca25a2b9a8ffc5bbbc7c42d2faace6bd09",
-      "url": "https://download.jetbrains.com/python/pycharm-community-2024.1-aarch64.tar.gz",
-      "build_number": "241.14494.241"
+      "version": "2024.1.1",
+      "sha256": "525c18749d9e2abd3ae2abea68c6be202348a9a026077f5782042baf12acf100",
+      "url": "https://download.jetbrains.com/python/pycharm-community-2024.1.1-aarch64.tar.gz",
+      "build_number": "241.15989.155"
     },
     "pycharm-professional": {
       "update-channel": "PyCharm RELEASE",
       "url-template": "https://download.jetbrains.com/python/pycharm-professional-{version}-aarch64.tar.gz",
-      "version": "2024.1",
-      "sha256": "a1f43b2392b7fc6b0c062524593c19fb0721b4ec1a1a59a06e39a61da2dce258",
-      "url": "https://download.jetbrains.com/python/pycharm-professional-2024.1-aarch64.tar.gz",
-      "build_number": "241.14494.241"
+      "version": "2024.1.1",
+      "sha256": "141fbfb473e78270ec161f938963c77cdaad16cfc32985b9ec7a70fdb5e3e0bc",
+      "url": "https://download.jetbrains.com/python/pycharm-professional-2024.1.1-aarch64.tar.gz",
+      "build_number": "241.15989.155"
     },
     "rider": {
       "update-channel": "Rider RELEASE",
@@ -290,33 +290,33 @@
       "update-channel": "Gateway RELEASE",
       "url-template": "https://download.jetbrains.com/idea/gateway/JetBrainsGateway-{version}.dmg",
       "version": "2024.1.1",
-      "sha256": "4513e26abf40f69a6eecd7f52d20a0f20e82a87722d4e8a4bd71718a4cba51b0",
+      "sha256": "0e230192d3532e4740a354bf7f58ae2efd4036607cb9ef4eaf4cca1ca0354df0",
       "url": "https://download.jetbrains.com/idea/gateway/JetBrainsGateway-2024.1.1.dmg",
-      "build_number": "241.15989.74"
+      "build_number": "241.15989.158"
     },
     "goland": {
       "update-channel": "GoLand RELEASE",
       "url-template": "https://download.jetbrains.com/go/goland-{version}.dmg",
-      "version": "2024.1",
-      "sha256": "4684665fa5d33e3b97a445ffdb29238b995408537be0f706ce05ef1505ffb632",
-      "url": "https://download.jetbrains.com/go/goland-2024.1.dmg",
-      "build_number": "241.14494.238"
+      "version": "2024.1.1",
+      "sha256": "189d8582a0474e1f6eac858f3528af85d6ca36918d659f66edf2fd26d70b07af",
+      "url": "https://download.jetbrains.com/go/goland-2024.1.1.dmg",
+      "build_number": "241.15989.157"
     },
     "idea-community": {
       "update-channel": "IntelliJ IDEA RELEASE",
       "url-template": "https://download.jetbrains.com/idea/ideaIC-{version}.dmg",
-      "version": "2024.1",
-      "sha256": "a0ed1fbb4f7c69a046869b3e1cd61faee193518374ac5d4dde4256f846c3b4e2",
-      "url": "https://download.jetbrains.com/idea/ideaIC-2024.1.dmg",
-      "build_number": "241.14494.240"
+      "version": "2024.1.1",
+      "sha256": "b38881e1db85082fe167b24e7022aef958a9129bf07b56aff47ec43ac894c427",
+      "url": "https://download.jetbrains.com/idea/ideaIC-2024.1.1.dmg",
+      "build_number": "241.15989.150"
     },
     "idea-ultimate": {
       "update-channel": "IntelliJ IDEA RELEASE",
       "url-template": "https://download.jetbrains.com/idea/ideaIU-{version}.dmg",
-      "version": "2024.1",
-      "sha256": "aaecd61f3258d555cb5b2993d04a56955f6dd4cb7a393b58928e4548817750e1",
-      "url": "https://download.jetbrains.com/idea/ideaIU-2024.1.dmg",
-      "build_number": "241.14494.240"
+      "version": "2024.1.1",
+      "sha256": "2a32561669c4f21ed134006d4fe9c948881dc3b8e12c00f11c1616952f6975cc",
+      "url": "https://download.jetbrains.com/idea/ideaIU-2024.1.1.dmg",
+      "build_number": "241.15989.150"
     },
     "mps": {
       "update-channel": "MPS RELEASE",
@@ -338,18 +338,18 @@
     "pycharm-community": {
       "update-channel": "PyCharm RELEASE",
       "url-template": "https://download.jetbrains.com/python/pycharm-community-{version}.dmg",
-      "version": "2024.1",
-      "sha256": "86162e01cba91d7fac7f06442ba4f2b969191cef3bba7c11fced30ac4aa87b34",
-      "url": "https://download.jetbrains.com/python/pycharm-community-2024.1.dmg",
-      "build_number": "241.14494.241"
+      "version": "2024.1.1",
+      "sha256": "73485ede957df2dc5c4a2936aa6d380fefccf1f5523407a1ad22ef6d757901d5",
+      "url": "https://download.jetbrains.com/python/pycharm-community-2024.1.1.dmg",
+      "build_number": "241.15989.155"
     },
     "pycharm-professional": {
       "update-channel": "PyCharm RELEASE",
       "url-template": "https://download.jetbrains.com/python/pycharm-professional-{version}.dmg",
-      "version": "2024.1",
-      "sha256": "32882869eb3dbe44ed74ff5c916222cf7f60af23775c58430e2967b0cbe90846",
-      "url": "https://download.jetbrains.com/python/pycharm-professional-2024.1.dmg",
-      "build_number": "241.14494.241"
+      "version": "2024.1.1",
+      "sha256": "3acd4e5f9d78229cc70664f25068732f7e0b7afa7f8895280e9698870e5cdccb",
+      "url": "https://download.jetbrains.com/python/pycharm-professional-2024.1.1.dmg",
+      "build_number": "241.15989.155"
     },
     "rider": {
       "update-channel": "Rider RELEASE",
@@ -421,33 +421,33 @@
       "update-channel": "Gateway RELEASE",
       "url-template": "https://download.jetbrains.com/idea/gateway/JetBrainsGateway-{version}-aarch64.dmg",
       "version": "2024.1.1",
-      "sha256": "840eb4ae9d2de9bbe353007798a6337f307f177e907754382ce7bef8be060e01",
+      "sha256": "c82e70fd6688c218da7a541ac0a0d06652389112f73a667964ee7a8e0a5bfc44",
       "url": "https://download.jetbrains.com/idea/gateway/JetBrainsGateway-2024.1.1-aarch64.dmg",
-      "build_number": "241.15989.74"
+      "build_number": "241.15989.158"
     },
     "goland": {
       "update-channel": "GoLand RELEASE",
       "url-template": "https://download.jetbrains.com/go/goland-{version}-aarch64.dmg",
-      "version": "2024.1",
-      "sha256": "92b8567751ceb8aaa95535cbe76d495035be9602fa84cccb18e6e25bbd2bcff5",
-      "url": "https://download.jetbrains.com/go/goland-2024.1-aarch64.dmg",
-      "build_number": "241.14494.238"
+      "version": "2024.1.1",
+      "sha256": "c04972578b92b2e8a9c0dfa52c01f09d9ed8640f12cf17e454d37ae6bea24a4a",
+      "url": "https://download.jetbrains.com/go/goland-2024.1.1-aarch64.dmg",
+      "build_number": "241.15989.157"
     },
     "idea-community": {
       "update-channel": "IntelliJ IDEA RELEASE",
       "url-template": "https://download.jetbrains.com/idea/ideaIC-{version}-aarch64.dmg",
-      "version": "2024.1",
-      "sha256": "e49f9a3dc01bd28aa4065642352f358d8b17680ff7207145c918d1f52b046447",
-      "url": "https://download.jetbrains.com/idea/ideaIC-2024.1-aarch64.dmg",
-      "build_number": "241.14494.240"
+      "version": "2024.1.1",
+      "sha256": "fc5bdc7c325708d0754d9bd4868db02c1c3b9a14e910dd641b76478e5b805441",
+      "url": "https://download.jetbrains.com/idea/ideaIC-2024.1.1-aarch64.dmg",
+      "build_number": "241.15989.150"
     },
     "idea-ultimate": {
       "update-channel": "IntelliJ IDEA RELEASE",
       "url-template": "https://download.jetbrains.com/idea/ideaIU-{version}-aarch64.dmg",
-      "version": "2024.1",
-      "sha256": "fd09f791834713e02c7cd28e4bf35b89e6f55e09970db3a720a4c59044874973",
-      "url": "https://download.jetbrains.com/idea/ideaIU-2024.1-aarch64.dmg",
-      "build_number": "241.14494.240"
+      "version": "2024.1.1",
+      "sha256": "bc1d350f18c493cd24c479f6c4f5b167b2cc62b8ff6e43e831b8ab90d4e079d2",
+      "url": "https://download.jetbrains.com/idea/ideaIU-2024.1.1-aarch64.dmg",
+      "build_number": "241.15989.150"
     },
     "mps": {
       "update-channel": "MPS RELEASE",
@@ -469,18 +469,18 @@
     "pycharm-community": {
       "update-channel": "PyCharm RELEASE",
       "url-template": "https://download.jetbrains.com/python/pycharm-community-{version}-aarch64.dmg",
-      "version": "2024.1",
-      "sha256": "0cd62c5640d455e576a502fb23d5e6f3b71a2507e838bdec1a1be6a3fd6804e8",
-      "url": "https://download.jetbrains.com/python/pycharm-community-2024.1-aarch64.dmg",
-      "build_number": "241.14494.241"
+      "version": "2024.1.1",
+      "sha256": "68e55873a82457fcb8eb1033dbb4e0be817f5b5423b067d8b632fbe5f1d6a4bb",
+      "url": "https://download.jetbrains.com/python/pycharm-community-2024.1.1-aarch64.dmg",
+      "build_number": "241.15989.155"
     },
     "pycharm-professional": {
       "update-channel": "PyCharm RELEASE",
       "url-template": "https://download.jetbrains.com/python/pycharm-professional-{version}-aarch64.dmg",
-      "version": "2024.1",
-      "sha256": "9c1d71668eb5de90f1f498477630a5d474a10ec90ee6ca61a8039f42505f5ca7",
-      "url": "https://download.jetbrains.com/python/pycharm-professional-2024.1-aarch64.dmg",
-      "build_number": "241.14494.241"
+      "version": "2024.1.1",
+      "sha256": "091a2531325c1df23619ee50998d5d7d7348dc9d25fd7416ccb07aa7d6100c39",
+      "url": "https://download.jetbrains.com/python/pycharm-professional-2024.1.1-aarch64.dmg",
+      "build_number": "241.15989.155"
     },
     "rider": {
       "update-channel": "Rider RELEASE",
diff --git a/pkgs/applications/editors/jetbrains/plugins/plugins.json b/pkgs/applications/editors/jetbrains/plugins/plugins.json
index 2f2effa5918b..cbc1207aabed 100644
--- a/pkgs/applications/editors/jetbrains/plugins/plugins.json
+++ b/pkgs/applications/editors/jetbrains/plugins/plugins.json
@@ -18,15 +18,15 @@
       ],
       "builds": {
         "233.13135.979": "https://plugins.jetbrains.com/files/164/515255/IdeaVim-2.10.2-signed.zip",
-        "241.14494.238": "https://plugins.jetbrains.com/files/164/515255/IdeaVim-2.10.2-signed.zip",
-        "241.14494.240": "https://plugins.jetbrains.com/files/164/515255/IdeaVim-2.10.2-signed.zip",
-        "241.14494.241": "https://plugins.jetbrains.com/files/164/515255/IdeaVim-2.10.2-signed.zip",
         "241.14494.325": "https://plugins.jetbrains.com/files/164/515255/IdeaVim-2.10.2-signed.zip",
         "241.15989.101": "https://plugins.jetbrains.com/files/164/515255/IdeaVim-2.10.2-signed.zip",
         "241.15989.102": "https://plugins.jetbrains.com/files/164/515255/IdeaVim-2.10.2-signed.zip",
         "241.15989.105": "https://plugins.jetbrains.com/files/164/515255/IdeaVim-2.10.2-signed.zip",
         "241.15989.113": "https://plugins.jetbrains.com/files/164/515255/IdeaVim-2.10.2-signed.zip",
         "241.15989.121": "https://plugins.jetbrains.com/files/164/515255/IdeaVim-2.10.2-signed.zip",
+        "241.15989.150": "https://plugins.jetbrains.com/files/164/515255/IdeaVim-2.10.2-signed.zip",
+        "241.15989.155": "https://plugins.jetbrains.com/files/164/515255/IdeaVim-2.10.2-signed.zip",
+        "241.15989.157": "https://plugins.jetbrains.com/files/164/515255/IdeaVim-2.10.2-signed.zip",
         "241.15989.49": "https://plugins.jetbrains.com/files/164/515255/IdeaVim-2.10.2-signed.zip"
       },
       "name": "ideavim"
@@ -36,7 +36,7 @@
         "idea-ultimate"
       ],
       "builds": {
-        "241.14494.240": "https://plugins.jetbrains.com/files/631/521307/python-241.14494.314.zip"
+        "241.15989.150": "https://plugins.jetbrains.com/files/631/530669/python-241.15989.166.zip"
       },
       "name": "python"
     },
@@ -58,15 +58,15 @@
       ],
       "builds": {
         "233.13135.979": null,
-        "241.14494.238": null,
-        "241.14494.240": null,
-        "241.14494.241": null,
         "241.14494.325": null,
         "241.15989.101": null,
         "241.15989.102": null,
         "241.15989.105": null,
         "241.15989.113": null,
         "241.15989.121": null,
+        "241.15989.150": null,
+        "241.15989.155": null,
+        "241.15989.157": null,
         "241.15989.49": null
       },
       "name": "kotlin"
@@ -89,15 +89,15 @@
       ],
       "builds": {
         "233.13135.979": null,
-        "241.14494.238": "https://plugins.jetbrains.com/files/6981/513562/ini-241.14494.240.zip",
-        "241.14494.240": "https://plugins.jetbrains.com/files/6981/513562/ini-241.14494.240.zip",
-        "241.14494.241": "https://plugins.jetbrains.com/files/6981/513562/ini-241.14494.240.zip",
         "241.14494.325": "https://plugins.jetbrains.com/files/6981/513562/ini-241.14494.240.zip",
         "241.15989.101": "https://plugins.jetbrains.com/files/6981/527916/ini-241.15989.113.zip",
         "241.15989.102": "https://plugins.jetbrains.com/files/6981/527916/ini-241.15989.113.zip",
         "241.15989.105": "https://plugins.jetbrains.com/files/6981/527916/ini-241.15989.113.zip",
         "241.15989.113": "https://plugins.jetbrains.com/files/6981/527916/ini-241.15989.113.zip",
         "241.15989.121": "https://plugins.jetbrains.com/files/6981/527916/ini-241.15989.113.zip",
+        "241.15989.150": "https://plugins.jetbrains.com/files/6981/527916/ini-241.15989.113.zip",
+        "241.15989.155": "https://plugins.jetbrains.com/files/6981/527916/ini-241.15989.113.zip",
+        "241.15989.157": "https://plugins.jetbrains.com/files/6981/527916/ini-241.15989.113.zip",
         "241.15989.49": "https://plugins.jetbrains.com/files/6981/527916/ini-241.15989.113.zip"
       },
       "name": "ini"
@@ -108,8 +108,8 @@
         "phpstorm"
       ],
       "builds": {
-        "241.14494.240": "https://plugins.jetbrains.com/files/7219/525744/Symfony_Plugin-2023.1.270.zip",
-        "241.15989.102": "https://plugins.jetbrains.com/files/7219/525744/Symfony_Plugin-2023.1.270.zip"
+        "241.15989.102": "https://plugins.jetbrains.com/files/7219/529388/Symfony_Plugin-2023.1.271.zip",
+        "241.15989.150": "https://plugins.jetbrains.com/files/7219/529388/Symfony_Plugin-2023.1.271.zip"
       },
       "name": "symfony-support"
     },
@@ -119,8 +119,8 @@
         "phpstorm"
       ],
       "builds": {
-        "241.14494.240": "https://plugins.jetbrains.com/files/7320/507957/PHP_Annotations-10.0.0.zip",
-        "241.15989.102": "https://plugins.jetbrains.com/files/7320/507957/PHP_Annotations-10.0.0.zip"
+        "241.15989.102": "https://plugins.jetbrains.com/files/7320/507957/PHP_Annotations-10.0.0.zip",
+        "241.15989.150": "https://plugins.jetbrains.com/files/7320/507957/PHP_Annotations-10.0.0.zip"
       },
       "name": "php-annotations"
     },
@@ -133,11 +133,11 @@
         "rust-rover"
       ],
       "builds": {
-        "241.14494.238": "https://plugins.jetbrains.com/files/7322/513587/python-ce-241.14494.240.zip",
-        "241.14494.240": "https://plugins.jetbrains.com/files/7322/513587/python-ce-241.14494.240.zip",
         "241.14494.325": "https://plugins.jetbrains.com/files/7322/513587/python-ce-241.14494.240.zip",
-        "241.15989.101": "https://plugins.jetbrains.com/files/7322/524818/python-ce-241.15989.69.zip",
-        "241.15989.49": "https://plugins.jetbrains.com/files/7322/524818/python-ce-241.15989.69.zip"
+        "241.15989.101": "https://plugins.jetbrains.com/files/7322/530366/python-ce-241.15989.150.zip",
+        "241.15989.150": "https://plugins.jetbrains.com/files/7322/530366/python-ce-241.15989.150.zip",
+        "241.15989.157": "https://plugins.jetbrains.com/files/7322/530366/python-ce-241.15989.150.zip",
+        "241.15989.49": "https://plugins.jetbrains.com/files/7322/530366/python-ce-241.15989.150.zip"
       },
       "name": "python-community-edition"
     },
@@ -158,14 +158,14 @@
       ],
       "builds": {
         "233.13135.979": "https://plugins.jetbrains.com/files/8182/466854/intellij-rust-233.15445.zip",
-        "241.14494.238": null,
-        "241.14494.240": null,
-        "241.14494.241": null,
         "241.14494.325": null,
         "241.15989.102": null,
         "241.15989.105": null,
         "241.15989.113": null,
         "241.15989.121": null,
+        "241.15989.150": null,
+        "241.15989.155": null,
+        "241.15989.157": null,
         "241.15989.49": null
       },
       "name": "-deprecated-rust"
@@ -187,14 +187,14 @@
       ],
       "builds": {
         "233.13135.979": null,
-        "241.14494.238": null,
-        "241.14494.240": null,
-        "241.14494.241": null,
         "241.14494.325": null,
         "241.15989.102": null,
         "241.15989.105": null,
         "241.15989.113": null,
         "241.15989.121": null,
+        "241.15989.150": null,
+        "241.15989.155": null,
+        "241.15989.157": null,
         "241.15989.49": null
       },
       "name": "-deprecated-rust-beta"
@@ -209,10 +209,10 @@
         "ruby-mine"
       ],
       "builds": {
-        "241.14494.238": "https://plugins.jetbrains.com/files/8554/508289/featuresTrainer-241.14494.150.zip",
-        "241.14494.240": "https://plugins.jetbrains.com/files/8554/508289/featuresTrainer-241.14494.150.zip",
-        "241.14494.241": "https://plugins.jetbrains.com/files/8554/508289/featuresTrainer-241.14494.150.zip",
-        "241.15989.113": "https://plugins.jetbrains.com/files/8554/508289/featuresTrainer-241.14494.150.zip"
+        "241.15989.113": "https://plugins.jetbrains.com/files/8554/508289/featuresTrainer-241.14494.150.zip",
+        "241.15989.150": "https://plugins.jetbrains.com/files/8554/508289/featuresTrainer-241.14494.150.zip",
+        "241.15989.155": "https://plugins.jetbrains.com/files/8554/508289/featuresTrainer-241.14494.150.zip",
+        "241.15989.157": "https://plugins.jetbrains.com/files/8554/508289/featuresTrainer-241.14494.150.zip"
       },
       "name": "ide-features-trainer"
     },
@@ -233,17 +233,17 @@
         "webstorm"
       ],
       "builds": {
-        "233.13135.979": "https://plugins.jetbrains.com/files/8607/519418/NixIDEA-0.4.0.12.zip",
-        "241.14494.238": "https://plugins.jetbrains.com/files/8607/519418/NixIDEA-0.4.0.12.zip",
-        "241.14494.240": "https://plugins.jetbrains.com/files/8607/519418/NixIDEA-0.4.0.12.zip",
-        "241.14494.241": "https://plugins.jetbrains.com/files/8607/519418/NixIDEA-0.4.0.12.zip",
-        "241.14494.325": "https://plugins.jetbrains.com/files/8607/519418/NixIDEA-0.4.0.12.zip",
-        "241.15989.101": "https://plugins.jetbrains.com/files/8607/519418/NixIDEA-0.4.0.12.zip",
-        "241.15989.102": "https://plugins.jetbrains.com/files/8607/519418/NixIDEA-0.4.0.12.zip",
-        "241.15989.105": "https://plugins.jetbrains.com/files/8607/519418/NixIDEA-0.4.0.12.zip",
-        "241.15989.113": "https://plugins.jetbrains.com/files/8607/519418/NixIDEA-0.4.0.12.zip",
-        "241.15989.121": "https://plugins.jetbrains.com/files/8607/519418/NixIDEA-0.4.0.12.zip",
-        "241.15989.49": "https://plugins.jetbrains.com/files/8607/519418/NixIDEA-0.4.0.12.zip"
+        "233.13135.979": "https://plugins.jetbrains.com/files/8607/530004/NixIDEA-0.4.0.13.zip",
+        "241.14494.325": "https://plugins.jetbrains.com/files/8607/530004/NixIDEA-0.4.0.13.zip",
+        "241.15989.101": "https://plugins.jetbrains.com/files/8607/530004/NixIDEA-0.4.0.13.zip",
+        "241.15989.102": "https://plugins.jetbrains.com/files/8607/530004/NixIDEA-0.4.0.13.zip",
+        "241.15989.105": "https://plugins.jetbrains.com/files/8607/530004/NixIDEA-0.4.0.13.zip",
+        "241.15989.113": "https://plugins.jetbrains.com/files/8607/530004/NixIDEA-0.4.0.13.zip",
+        "241.15989.121": "https://plugins.jetbrains.com/files/8607/530004/NixIDEA-0.4.0.13.zip",
+        "241.15989.150": "https://plugins.jetbrains.com/files/8607/530004/NixIDEA-0.4.0.13.zip",
+        "241.15989.155": "https://plugins.jetbrains.com/files/8607/530004/NixIDEA-0.4.0.13.zip",
+        "241.15989.157": "https://plugins.jetbrains.com/files/8607/530004/NixIDEA-0.4.0.13.zip",
+        "241.15989.49": "https://plugins.jetbrains.com/files/8607/530004/NixIDEA-0.4.0.13.zip"
       },
       "name": "nixidea"
     },
@@ -253,8 +253,8 @@
         "idea-ultimate"
       ],
       "builds": {
-        "241.14494.238": "https://plugins.jetbrains.com/files/9568/513582/go-plugin-241.14494.240.zip",
-        "241.14494.240": "https://plugins.jetbrains.com/files/9568/513582/go-plugin-241.14494.240.zip"
+        "241.15989.150": "https://plugins.jetbrains.com/files/9568/521002/go-plugin-241.15989.21.zip",
+        "241.15989.157": "https://plugins.jetbrains.com/files/9568/521002/go-plugin-241.15989.21.zip"
       },
       "name": "go"
     },
@@ -276,15 +276,15 @@
       ],
       "builds": {
         "233.13135.979": "https://plugins.jetbrains.com/files/10037/493012/CSVEditor-3.3.0-233.zip",
-        "241.14494.238": "https://plugins.jetbrains.com/files/10037/493010/CSVEditor-3.3.0-241.zip",
-        "241.14494.240": "https://plugins.jetbrains.com/files/10037/493010/CSVEditor-3.3.0-241.zip",
-        "241.14494.241": "https://plugins.jetbrains.com/files/10037/493010/CSVEditor-3.3.0-241.zip",
         "241.14494.325": "https://plugins.jetbrains.com/files/10037/493010/CSVEditor-3.3.0-241.zip",
         "241.15989.101": "https://plugins.jetbrains.com/files/10037/493010/CSVEditor-3.3.0-241.zip",
         "241.15989.102": "https://plugins.jetbrains.com/files/10037/493010/CSVEditor-3.3.0-241.zip",
         "241.15989.105": "https://plugins.jetbrains.com/files/10037/493010/CSVEditor-3.3.0-241.zip",
         "241.15989.113": "https://plugins.jetbrains.com/files/10037/493010/CSVEditor-3.3.0-241.zip",
         "241.15989.121": "https://plugins.jetbrains.com/files/10037/493010/CSVEditor-3.3.0-241.zip",
+        "241.15989.150": "https://plugins.jetbrains.com/files/10037/493010/CSVEditor-3.3.0-241.zip",
+        "241.15989.155": "https://plugins.jetbrains.com/files/10037/493010/CSVEditor-3.3.0-241.zip",
+        "241.15989.157": "https://plugins.jetbrains.com/files/10037/493010/CSVEditor-3.3.0-241.zip",
         "241.15989.49": "https://plugins.jetbrains.com/files/10037/493010/CSVEditor-3.3.0-241.zip"
       },
       "name": "csv-editor"
@@ -307,15 +307,15 @@
       ],
       "builds": {
         "233.13135.979": "https://plugins.jetbrains.com/files/12062/445740/keymap-vscode-233.11799.188.zip",
-        "241.14494.238": "https://plugins.jetbrains.com/files/12062/508223/keymap-vscode-241.14494.150.zip",
-        "241.14494.240": "https://plugins.jetbrains.com/files/12062/508223/keymap-vscode-241.14494.150.zip",
-        "241.14494.241": "https://plugins.jetbrains.com/files/12062/508223/keymap-vscode-241.14494.150.zip",
         "241.14494.325": "https://plugins.jetbrains.com/files/12062/508223/keymap-vscode-241.14494.150.zip",
         "241.15989.101": "https://plugins.jetbrains.com/files/12062/508223/keymap-vscode-241.14494.150.zip",
         "241.15989.102": "https://plugins.jetbrains.com/files/12062/508223/keymap-vscode-241.14494.150.zip",
         "241.15989.105": "https://plugins.jetbrains.com/files/12062/508223/keymap-vscode-241.14494.150.zip",
         "241.15989.113": "https://plugins.jetbrains.com/files/12062/508223/keymap-vscode-241.14494.150.zip",
         "241.15989.121": "https://plugins.jetbrains.com/files/12062/508223/keymap-vscode-241.14494.150.zip",
+        "241.15989.150": "https://plugins.jetbrains.com/files/12062/508223/keymap-vscode-241.14494.150.zip",
+        "241.15989.155": "https://plugins.jetbrains.com/files/12062/508223/keymap-vscode-241.14494.150.zip",
+        "241.15989.157": "https://plugins.jetbrains.com/files/12062/508223/keymap-vscode-241.14494.150.zip",
         "241.15989.49": "https://plugins.jetbrains.com/files/12062/508223/keymap-vscode-241.14494.150.zip"
       },
       "name": "vscode-keymap"
@@ -338,15 +338,15 @@
       ],
       "builds": {
         "233.13135.979": "https://plugins.jetbrains.com/files/12559/445772/keymap-eclipse-233.11799.165.zip",
-        "241.14494.238": "https://plugins.jetbrains.com/files/12559/508216/keymap-eclipse-241.14494.150.zip",
-        "241.14494.240": "https://plugins.jetbrains.com/files/12559/508216/keymap-eclipse-241.14494.150.zip",
-        "241.14494.241": "https://plugins.jetbrains.com/files/12559/508216/keymap-eclipse-241.14494.150.zip",
         "241.14494.325": "https://plugins.jetbrains.com/files/12559/508216/keymap-eclipse-241.14494.150.zip",
         "241.15989.101": "https://plugins.jetbrains.com/files/12559/508216/keymap-eclipse-241.14494.150.zip",
         "241.15989.102": "https://plugins.jetbrains.com/files/12559/508216/keymap-eclipse-241.14494.150.zip",
         "241.15989.105": "https://plugins.jetbrains.com/files/12559/508216/keymap-eclipse-241.14494.150.zip",
         "241.15989.113": "https://plugins.jetbrains.com/files/12559/508216/keymap-eclipse-241.14494.150.zip",
         "241.15989.121": "https://plugins.jetbrains.com/files/12559/508216/keymap-eclipse-241.14494.150.zip",
+        "241.15989.150": "https://plugins.jetbrains.com/files/12559/508216/keymap-eclipse-241.14494.150.zip",
+        "241.15989.155": "https://plugins.jetbrains.com/files/12559/508216/keymap-eclipse-241.14494.150.zip",
+        "241.15989.157": "https://plugins.jetbrains.com/files/12559/508216/keymap-eclipse-241.14494.150.zip",
         "241.15989.49": "https://plugins.jetbrains.com/files/12559/508216/keymap-eclipse-241.14494.150.zip"
       },
       "name": "eclipse-keymap"
@@ -369,15 +369,15 @@
       ],
       "builds": {
         "233.13135.979": "https://plugins.jetbrains.com/files/13017/445774/keymap-visualStudio-233.11799.165.zip",
-        "241.14494.238": "https://plugins.jetbrains.com/files/13017/508253/keymap-visualStudio-241.14494.150.zip",
-        "241.14494.240": "https://plugins.jetbrains.com/files/13017/508253/keymap-visualStudio-241.14494.150.zip",
-        "241.14494.241": "https://plugins.jetbrains.com/files/13017/508253/keymap-visualStudio-241.14494.150.zip",
         "241.14494.325": "https://plugins.jetbrains.com/files/13017/508253/keymap-visualStudio-241.14494.150.zip",
         "241.15989.101": "https://plugins.jetbrains.com/files/13017/508253/keymap-visualStudio-241.14494.150.zip",
         "241.15989.102": "https://plugins.jetbrains.com/files/13017/508253/keymap-visualStudio-241.14494.150.zip",
         "241.15989.105": "https://plugins.jetbrains.com/files/13017/508253/keymap-visualStudio-241.14494.150.zip",
         "241.15989.113": "https://plugins.jetbrains.com/files/13017/508253/keymap-visualStudio-241.14494.150.zip",
         "241.15989.121": "https://plugins.jetbrains.com/files/13017/508253/keymap-visualStudio-241.14494.150.zip",
+        "241.15989.150": "https://plugins.jetbrains.com/files/13017/508253/keymap-visualStudio-241.14494.150.zip",
+        "241.15989.155": "https://plugins.jetbrains.com/files/13017/508253/keymap-visualStudio-241.14494.150.zip",
+        "241.15989.157": "https://plugins.jetbrains.com/files/13017/508253/keymap-visualStudio-241.14494.150.zip",
         "241.15989.49": "https://plugins.jetbrains.com/files/13017/508253/keymap-visualStudio-241.14494.150.zip"
       },
       "name": "visual-studio-keymap"
@@ -400,15 +400,15 @@
       ],
       "builds": {
         "233.13135.979": "https://plugins.jetbrains.com/files/14059/82616/darcula-pitch-black.jar",
-        "241.14494.238": "https://plugins.jetbrains.com/files/14059/82616/darcula-pitch-black.jar",
-        "241.14494.240": "https://plugins.jetbrains.com/files/14059/82616/darcula-pitch-black.jar",
-        "241.14494.241": "https://plugins.jetbrains.com/files/14059/82616/darcula-pitch-black.jar",
         "241.14494.325": "https://plugins.jetbrains.com/files/14059/82616/darcula-pitch-black.jar",
         "241.15989.101": "https://plugins.jetbrains.com/files/14059/82616/darcula-pitch-black.jar",
         "241.15989.102": "https://plugins.jetbrains.com/files/14059/82616/darcula-pitch-black.jar",
         "241.15989.105": "https://plugins.jetbrains.com/files/14059/82616/darcula-pitch-black.jar",
         "241.15989.113": "https://plugins.jetbrains.com/files/14059/82616/darcula-pitch-black.jar",
         "241.15989.121": "https://plugins.jetbrains.com/files/14059/82616/darcula-pitch-black.jar",
+        "241.15989.150": "https://plugins.jetbrains.com/files/14059/82616/darcula-pitch-black.jar",
+        "241.15989.155": "https://plugins.jetbrains.com/files/14059/82616/darcula-pitch-black.jar",
+        "241.15989.157": "https://plugins.jetbrains.com/files/14059/82616/darcula-pitch-black.jar",
         "241.15989.49": "https://plugins.jetbrains.com/files/14059/82616/darcula-pitch-black.jar"
       },
       "name": "darcula-pitch-black"
@@ -431,15 +431,15 @@
       ],
       "builds": {
         "233.13135.979": "https://plugins.jetbrains.com/files/17718/517133/github-copilot-intellij-1.5.2.5345.zip",
-        "241.14494.238": "https://plugins.jetbrains.com/files/17718/517133/github-copilot-intellij-1.5.2.5345.zip",
-        "241.14494.240": "https://plugins.jetbrains.com/files/17718/517133/github-copilot-intellij-1.5.2.5345.zip",
-        "241.14494.241": "https://plugins.jetbrains.com/files/17718/517133/github-copilot-intellij-1.5.2.5345.zip",
         "241.14494.325": "https://plugins.jetbrains.com/files/17718/517133/github-copilot-intellij-1.5.2.5345.zip",
         "241.15989.101": "https://plugins.jetbrains.com/files/17718/517133/github-copilot-intellij-1.5.2.5345.zip",
         "241.15989.102": "https://plugins.jetbrains.com/files/17718/517133/github-copilot-intellij-1.5.2.5345.zip",
         "241.15989.105": "https://plugins.jetbrains.com/files/17718/517133/github-copilot-intellij-1.5.2.5345.zip",
         "241.15989.113": "https://plugins.jetbrains.com/files/17718/517133/github-copilot-intellij-1.5.2.5345.zip",
         "241.15989.121": "https://plugins.jetbrains.com/files/17718/517133/github-copilot-intellij-1.5.2.5345.zip",
+        "241.15989.150": "https://plugins.jetbrains.com/files/17718/517133/github-copilot-intellij-1.5.2.5345.zip",
+        "241.15989.155": "https://plugins.jetbrains.com/files/17718/517133/github-copilot-intellij-1.5.2.5345.zip",
+        "241.15989.157": "https://plugins.jetbrains.com/files/17718/517133/github-copilot-intellij-1.5.2.5345.zip",
         "241.15989.49": "https://plugins.jetbrains.com/files/17718/517133/github-copilot-intellij-1.5.2.5345.zip"
       },
       "name": "github-copilot"
@@ -462,15 +462,15 @@
       ],
       "builds": {
         "233.13135.979": "https://plugins.jetbrains.com/files/18444/165585/NetBeans6.5Keymap.zip",
-        "241.14494.238": "https://plugins.jetbrains.com/files/18444/165585/NetBeans6.5Keymap.zip",
-        "241.14494.240": "https://plugins.jetbrains.com/files/18444/165585/NetBeans6.5Keymap.zip",
-        "241.14494.241": "https://plugins.jetbrains.com/files/18444/165585/NetBeans6.5Keymap.zip",
         "241.14494.325": "https://plugins.jetbrains.com/files/18444/165585/NetBeans6.5Keymap.zip",
         "241.15989.101": "https://plugins.jetbrains.com/files/18444/165585/NetBeans6.5Keymap.zip",
         "241.15989.102": "https://plugins.jetbrains.com/files/18444/165585/NetBeans6.5Keymap.zip",
         "241.15989.105": "https://plugins.jetbrains.com/files/18444/165585/NetBeans6.5Keymap.zip",
         "241.15989.113": "https://plugins.jetbrains.com/files/18444/165585/NetBeans6.5Keymap.zip",
         "241.15989.121": "https://plugins.jetbrains.com/files/18444/165585/NetBeans6.5Keymap.zip",
+        "241.15989.150": "https://plugins.jetbrains.com/files/18444/165585/NetBeans6.5Keymap.zip",
+        "241.15989.155": "https://plugins.jetbrains.com/files/18444/165585/NetBeans6.5Keymap.zip",
+        "241.15989.157": "https://plugins.jetbrains.com/files/18444/165585/NetBeans6.5Keymap.zip",
         "241.15989.49": "https://plugins.jetbrains.com/files/18444/165585/NetBeans6.5Keymap.zip"
       },
       "name": "netbeans-6-5-keymap"
@@ -482,9 +482,9 @@
         "rust-rover"
       ],
       "builds": {
-        "241.14494.240": "https://plugins.jetbrains.com/files/22407/526873/intellij-rust-241.25989.101.zip",
         "241.15989.101": "https://plugins.jetbrains.com/files/22407/526873/intellij-rust-241.25989.101.zip",
-        "241.15989.121": "https://plugins.jetbrains.com/files/22407/526873/intellij-rust-241.25989.101.zip"
+        "241.15989.121": "https://plugins.jetbrains.com/files/22407/526873/intellij-rust-241.25989.101.zip",
+        "241.15989.150": "https://plugins.jetbrains.com/files/22407/526873/intellij-rust-241.25989.101.zip"
       },
       "name": "rust"
     }
@@ -503,16 +503,16 @@
     "https://plugins.jetbrains.com/files/17718/517133/github-copilot-intellij-1.5.2.5345.zip": "sha256-BaBYXN8eulaJtJSKrz9bZ2Yn8029goSAUvjYU+BaiIU=",
     "https://plugins.jetbrains.com/files/18444/165585/NetBeans6.5Keymap.zip": "sha256-KrzZTKZMQqoEMw+vDUv2jjs0EX0leaPBkU8H/ecq/oI=",
     "https://plugins.jetbrains.com/files/22407/526873/intellij-rust-241.25989.101.zip": "sha256-v1r14zx591Vr8JmQxfysQ/aO8HDYCorwnnOEKDIfx+Y=",
-    "https://plugins.jetbrains.com/files/631/521307/python-241.14494.314.zip": "sha256-LFPN3bURT4gauDdoOgs+Rnq90RZ68/mrpw7/hfsq7VI=",
+    "https://plugins.jetbrains.com/files/631/530669/python-241.15989.166.zip": "sha256-1mdv8xJfaa8Ln4/jsnyQyd6C19C8++XYpOBDU67SDGc=",
     "https://plugins.jetbrains.com/files/6981/513562/ini-241.14494.240.zip": "sha256-QC42nC7mEE3X1cmKj8jkwzpDJzX7ZoOPEd9y6i8IuvM=",
     "https://plugins.jetbrains.com/files/6981/527916/ini-241.15989.113.zip": "sha256-JgFoDqeMxdg3E9ZWHVsJGSygKAifFCEa9S+RdLFkLBI=",
-    "https://plugins.jetbrains.com/files/7219/525744/Symfony_Plugin-2023.1.270.zip": "sha256-JSMTavSX9dzcOjbeuI7HBThtztwkyUqGOtCXNbCsfio=",
+    "https://plugins.jetbrains.com/files/7219/529388/Symfony_Plugin-2023.1.271.zip": "sha256-vboCsF7e4Kx56hkKEXkFO9A/ElxNAITi4cIFwLcXxCU=",
     "https://plugins.jetbrains.com/files/7320/507957/PHP_Annotations-10.0.0.zip": "sha256-JIZ6Iq3sOcAm8fBXnjRrG9dqCZuD/WajyVmn1JjYMBA=",
     "https://plugins.jetbrains.com/files/7322/513587/python-ce-241.14494.240.zip": "sha256-6YC/aoiTRLAh87C2v3k24BLBH/tsdTWuDK/CBv8y1QI=",
-    "https://plugins.jetbrains.com/files/7322/524818/python-ce-241.15989.69.zip": "sha256-RG4pXcX8KpN1es6qvuU/YL+2LUuOCyzkxy09tJ/XAIE=",
+    "https://plugins.jetbrains.com/files/7322/530366/python-ce-241.15989.150.zip": "sha256-VJWFzUk/lloFCfHbXX7lQRV6bGseCqEPA8XOLlkqNho=",
     "https://plugins.jetbrains.com/files/8182/466854/intellij-rust-233.15445.zip": "sha256-+Lc/avYBLpyIV63DlbhAJtieHDv4HdggqdGFDw9iqN0=",
     "https://plugins.jetbrains.com/files/8554/508289/featuresTrainer-241.14494.150.zip": "sha256-D2gF9bLAEFd1+6vZskiM2Eyl5e8hmyh/VHrmW2NociE=",
-    "https://plugins.jetbrains.com/files/8607/519418/NixIDEA-0.4.0.12.zip": "sha256-D2HFG2tQy719+baHjUyizoq67tv6lDZrX3s6HDlBRA0=",
-    "https://plugins.jetbrains.com/files/9568/513582/go-plugin-241.14494.240.zip": "sha256-66Gx4XFn5DEZ/wCkN7IFQKtp+P0R9PoEAXmwOB97Q3A="
+    "https://plugins.jetbrains.com/files/8607/530004/NixIDEA-0.4.0.13.zip": "sha256-6MI3mRCzSWmdMfjlkE4SMZmKnvWLjMGmYvcPw0PoBNY=",
+    "https://plugins.jetbrains.com/files/9568/521002/go-plugin-241.15989.21.zip": "sha256-4wM2FFZMTJlWEmxoSrZgkJXdSxUUtDoGZGrobnrMH78="
   }
 }
diff --git a/pkgs/applications/editors/kakoune/default.nix b/pkgs/applications/editors/kakoune/default.nix
index fa0e485d7128..9a3522c5a531 100644
--- a/pkgs/applications/editors/kakoune/default.nix
+++ b/pkgs/applications/editors/kakoune/default.nix
@@ -1,30 +1,18 @@
-{ lib, stdenv, fetchFromGitHub, fetchpatch }:
+{ lib, stdenv, fetchFromGitHub }:
 
-stdenv.mkDerivation rec {
+stdenv.mkDerivation (finalAttrs: {
   pname = "kakoune-unwrapped";
-  version = "2023.08.05";
+  version = "2024.05.09";
   src = fetchFromGitHub {
     repo = "kakoune";
     owner = "mawww";
-    rev = "v${version}";
-    sha256 = "sha256-RR3kw39vEjsg+6cIY6cK2i3ecGHlr1yzuBKaDtGlOGo=";
+    rev = "v${finalAttrs.version}";
+    hash = "sha256-Dfp33zk9ZUMrCZRfPNfoSX6rgQKItvOQx+CuRNQgtTA=";
   };
-  patches = [
-    # Use explicit target types for gather calls to bypass clang regression
-    #
-    # Since clang-16 there has been a regression in the P0522R0 support.
-    # (Bug report at https://github.com/llvm/llvm-project/issue/63281)
-    #
-    # Closes mawww/kakoune#4892
-    (fetchpatch {
-      url = "https://github.com/mawww/kakoune/commit/7577fa1b668ea81eb9b7b9af690a4161187129dd.patch";
-      hash = "sha256-M0jKaEDhkpvX+n7k8Jf2lWaRNy8bqZ1kRHR4eG4npss=";
-    })
-  ];
   makeFlags = [ "debug=no" "PREFIX=${placeholder "out"}" ];
 
-  preConfigure = ''
-    export version="v${version}"
+  postPatch = ''
+    echo "v${finalAttrs.version}" >.version
   '';
 
   enableParallelBuilding = true;
@@ -51,4 +39,4 @@ stdenv.mkDerivation rec {
     maintainers = with maintainers; [ vrthra ];
     platforms = platforms.unix;
   };
-}
+})
diff --git a/pkgs/applications/editors/l3afpad/default.nix b/pkgs/applications/editors/l3afpad/default.nix
index 2caf4ee781e2..f9632def1771 100644
--- a/pkgs/applications/editors/l3afpad/default.nix
+++ b/pkgs/applications/editors/l3afpad/default.nix
@@ -1,5 +1,5 @@
 { lib, stdenv, fetchurl, intltool, pkg-config, gtk3, fetchFromGitHub
-, autoreconfHook, wrapGAppsHook }:
+, autoreconfHook, wrapGAppsHook3 }:
 
 stdenv.mkDerivation rec {
   version = "unstable-2022-02-14";
@@ -12,7 +12,7 @@ stdenv.mkDerivation rec {
     sha256 = "sha256-ly2w9jmRlprm/PnyC0LYjrxBVK+J0DLiSpzuTUMZpWA=";
   };
 
-  nativeBuildInputs = [ pkg-config autoreconfHook wrapGAppsHook intltool ];
+  nativeBuildInputs = [ pkg-config autoreconfHook wrapGAppsHook3 intltool ];
   buildInputs = [ gtk3 ];
 
   meta = with lib; {
diff --git a/pkgs/applications/editors/lapce/default.nix b/pkgs/applications/editors/lapce/default.nix
index 73cff823859a..ad29e72fad15 100644
--- a/pkgs/applications/editors/lapce/default.nix
+++ b/pkgs/applications/editors/lapce/default.nix
@@ -19,7 +19,7 @@
 , ApplicationServices
 , Carbon
 , AppKit
-, wrapGAppsHook
+, wrapGAppsHook3
 , wayland
 , gobject-introspection
 , xorg
@@ -82,7 +82,7 @@ rustPlatform.buildRustPackage rec {
     pkg-config
     perl
     python3
-    wrapGAppsHook # FIX: No GSettings schemas are installed on the system
+    wrapGAppsHook3 # FIX: No GSettings schemas are installed on the system
     gobject-introspection
   ];
 
diff --git a/pkgs/applications/editors/lifeograph/default.nix b/pkgs/applications/editors/lifeograph/default.nix
index 2a9557dce62e..52e12beb317a 100644
--- a/pkgs/applications/editors/lifeograph/default.nix
+++ b/pkgs/applications/editors/lifeograph/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, lib, fetchgit, pkg-config, meson, ninja, wrapGAppsHook
+{ stdenv, lib, fetchgit, pkg-config, meson, ninja, wrapGAppsHook3
 , enchant, gtkmm3, libchamplain, libgcrypt, shared-mime-info }:
 
 stdenv.mkDerivation rec {
@@ -16,7 +16,7 @@ stdenv.mkDerivation rec {
     ninja
     pkg-config
     shared-mime-info # for update-mime-database
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
diff --git a/pkgs/applications/editors/marker/default.nix b/pkgs/applications/editors/marker/default.nix
index f24f83c70f27..7e1d61a3b172 100644
--- a/pkgs/applications/editors/marker/default.nix
+++ b/pkgs/applications/editors/marker/default.nix
@@ -5,7 +5,7 @@
 , meson
 , ninja
 , pkg-config
-, wrapGAppsHook
+, wrapGAppsHook3
 , gtk3
 , gtksourceview
 , gtkspell3
@@ -30,7 +30,7 @@ stdenv.mkDerivation rec {
     meson
     ninja
     pkg-config
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
diff --git a/pkgs/applications/editors/mindforger/default.nix b/pkgs/applications/editors/mindforger/default.nix
index de304cd6208a..bd8a4b0c648e 100644
--- a/pkgs/applications/editors/mindforger/default.nix
+++ b/pkgs/applications/editors/mindforger/default.nix
@@ -6,7 +6,7 @@
 , qmake
 , qtbase
 , qtwebengine
-, wrapGAppsHook
+, wrapGAppsHook3
 , wrapQtAppsHook
 }:
 
@@ -19,7 +19,7 @@ stdenv.mkDerivation rec {
     sha256 = "1pghsw8kwvjhg3jpmjs0n892h2l0pm0cs6ymi8b23fwk0kfj67rd";
   };
 
-  nativeBuildInputs = [ qmake wrapGAppsHook wrapQtAppsHook ];
+  nativeBuildInputs = [ qmake wrapGAppsHook3 wrapQtAppsHook ];
   buildInputs = [ qtbase qtwebengine cmark-gfm ];
 
   doCheck = true;
diff --git a/pkgs/applications/editors/nano/default.nix b/pkgs/applications/editors/nano/default.nix
index 7221e0a6c517..ff68ffb60034 100644
--- a/pkgs/applications/editors/nano/default.nix
+++ b/pkgs/applications/editors/nano/default.nix
@@ -1,6 +1,7 @@
 { lib, stdenv, fetchurl, fetchFromGitHub, ncurses, texinfo, writeScript
-, common-updater-scripts, git, nix, nixfmt-classic, coreutils, gnused, callPackage
-, file ? null, gettext ? null, enableNls ? true, enableTiny ? false }:
+, common-updater-scripts, git, nix, nixfmt-classic, coreutils, gnused
+, callPackage, file ? null, gettext ? null, enableNls ? true, enableTiny ? false
+}:
 
 assert enableNls -> (gettext != null);
 
@@ -14,11 +15,11 @@ let
 
 in stdenv.mkDerivation rec {
   pname = "nano";
-  version = "7.2";
+  version = "8.0";
 
   src = fetchurl {
     url = "mirror://gnu/nano/${pname}-${version}.tar.xz";
-    sha256 = "hvNEJ2i9KHPOxpP4PN+AtLRErTzBR2C3Q2FHT8h6RSY=";
+    sha256 = "wX9D/A43M2sz7lCiCccB1b64CK3C2fCJyoMbQFOcmsQ=";
   };
 
   nativeBuildInputs = [ texinfo ] ++ lib.optional enableNls gettext;
@@ -32,7 +33,9 @@ in stdenv.mkDerivation rec {
     (lib.enableFeature enableTiny "tiny")
   ];
 
-  postInstall = if enableTiny then null else ''
+  postInstall = if enableTiny then
+    null
+  else ''
     cp ${nixSyntaxHighlight}/nix.nanorc $out/share/nano/
   '';
 
diff --git a/pkgs/applications/editors/neovim/treesitter-parsers.nix b/pkgs/applications/editors/neovim/treesitter-parsers.nix
deleted file mode 100644
index d36f8bda8542..000000000000
--- a/pkgs/applications/editors/neovim/treesitter-parsers.nix
+++ /dev/null
@@ -1,24 +0,0 @@
-{ fetchurl }:
-
-{
-  c = fetchurl {
-    url = "https://github.com/tree-sitter/tree-sitter-c/archive/v0.20.2.tar.gz";
-    hash = "sha256:af66fde03feb0df4faf03750102a0d265b007e5d957057b6b293c13116a70af2";
-  };
-  lua = fetchurl {
-    url = "https://github.com/MunifTanjim/tree-sitter-lua/archive/v0.0.14.tar.gz";
-    hash = "sha256:930d0370dc15b66389869355c8e14305b9ba7aafd36edbfdb468c8023395016d";
-  };
-  vim = fetchurl {
-    url = "https://github.com/neovim/tree-sitter-vim/archive/v0.3.0.tar.gz";
-    hash = "sha256:403acec3efb7cdb18ff3d68640fc823502a4ffcdfbb71cec3f98aa786c21cbe2";
-  };
-  vimdoc = fetchurl {
-    url = "https://github.com/neovim/tree-sitter-vimdoc/archive/v2.0.0.tar.gz";
-    hash = "sha256:1ff8f4afd3a9599dd4c3ce87c155660b078c1229704d1a254433e33794b8f274";
-  };
-  query = fetchurl {
-    url = "https://github.com/nvim-treesitter/tree-sitter-query/archive/v0.1.0.tar.gz";
-    hash = "sha256:e2b806f80e8bf1c4f4e5a96248393fe6622fc1fc6189d6896d269658f67f914c";
-  };
-}
diff --git a/pkgs/applications/editors/neovim/utils.nix b/pkgs/applications/editors/neovim/utils.nix
index 865c52193281..8f9a5b880032 100644
--- a/pkgs/applications/editors/neovim/utils.nix
+++ b/pkgs/applications/editors/neovim/utils.nix
@@ -218,7 +218,7 @@ let
       ];
     in
 
-    toVimPlugin (runCommand "vimplugin-treesitter-grammar-${name}"
+    toVimPlugin (runCommand "treesitter-grammar-${name}"
       {
         meta = {
           platforms = lib.platforms.all;
diff --git a/pkgs/applications/editors/pinegrow/default.nix b/pkgs/applications/editors/pinegrow/default.nix
index cf5d35c1c296..2e3de9ae8aa3 100644
--- a/pkgs/applications/editors/pinegrow/default.nix
+++ b/pkgs/applications/editors/pinegrow/default.nix
@@ -8,7 +8,7 @@
 , autoPatchelfHook
 , gsettings-desktop-schemas
 , gtk3
-, wrapGAppsHook
+, wrapGAppsHook3
 , makeWrapper
 , pinegrowVersion ? "7"
 }:
@@ -45,7 +45,7 @@ stdenv.mkDerivation rec {
     unzip
     autoPatchelfHook
     makeWrapper
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
diff --git a/pkgs/applications/editors/pulsar/default.nix b/pkgs/applications/editors/pulsar/default.nix
index a2b572ae516b..6cd8e423ad52 100644
--- a/pkgs/applications/editors/pulsar/default.nix
+++ b/pkgs/applications/editors/pulsar/default.nix
@@ -3,7 +3,7 @@
 , git
 , git-lfs
 , fetchurl
-, wrapGAppsHook
+, wrapGAppsHook3
 , alsa-lib
 , at-spi2-atk
 , cairo
@@ -91,7 +91,7 @@ stdenv.mkDerivation rec {
   ];
 
   nativeBuildInputs = [
-    wrapGAppsHook
+    wrapGAppsHook3
     copyDesktopItems
     asar
   ];
diff --git a/pkgs/applications/editors/quartus-prime/default.nix b/pkgs/applications/editors/quartus-prime/default.nix
index 2b3ee4095175..dfe977876231 100644
--- a/pkgs/applications/editors/quartus-prime/default.nix
+++ b/pkgs/applications/editors/quartus-prime/default.nix
@@ -17,7 +17,8 @@ let
   };
 # I think questa_fse/linux/vlm checksums itself, so use FHSUserEnv instead of `patchelf`
 in buildFHSEnv rec {
-  name = "quartus-prime-lite"; # wrapped
+  pname = "quartus-prime-lite"; # wrapped
+  inherit (unwrapped) version;
 
   targetPkgs = pkgs: with pkgs; [
     (runCommand "ld-lsb-compat" {} (''
@@ -80,7 +81,7 @@ in buildFHSEnv rec {
       "${unwrapped}"/questa_fse/linux_x86_64/lmutil
     )
 
-    wrapper=$out/bin/${name}
+    wrapper=$out/bin/${pname}
     progs_wrapped=()
     for prog in ''${progs_to_wrap[@]}; do
         relname="''${prog#"${unwrapped}/"}"
@@ -93,7 +94,7 @@ in buildFHSEnv rec {
                 echo "export NIXPKGS_IS_QUESTA_WRAPPER=1" >> "$wrapped"
                 ;;
         esac
-        echo "$wrapper $prog \"\$@\"" >> "$wrapped"
+        echo "exec $wrapper $prog \"\$@\"" >> "$wrapped"
     done
 
     cd $out
@@ -160,4 +161,6 @@ in buildFHSEnv rec {
       '';
     };
   };
+
+  inherit (unwrapped) meta;
 }
diff --git a/pkgs/applications/editors/sublime/3/common.nix b/pkgs/applications/editors/sublime/3/common.nix
index bbb7e6f1e918..65bbd6516328 100644
--- a/pkgs/applications/editors/sublime/3/common.nix
+++ b/pkgs/applications/editors/sublime/3/common.nix
@@ -1,6 +1,6 @@
 { buildVersion, x32sha256, x64sha256, dev ? false }:
 
-{ fetchurl, lib, stdenv, xorg, glib, glibcLocales, gtk3, cairo, pango, libredirect, makeWrapper, wrapGAppsHook
+{ fetchurl, lib, stdenv, xorg, glib, glibcLocales, gtk3, cairo, pango, libredirect, makeWrapper, wrapGAppsHook3
 , pkexecPath ? "/run/wrappers/bin/pkexec"
 , openssl, bzip2, bash, unzip, zip
 }:
@@ -40,7 +40,7 @@ in let
     dontStrip = true;
     dontPatchELF = true;
     buildInputs = [ glib gtk3 ]; # for GSETTINGS_SCHEMAS_PATH
-    nativeBuildInputs = [ zip unzip makeWrapper wrapGAppsHook ];
+    nativeBuildInputs = [ zip unzip makeWrapper wrapGAppsHook3 ];
 
     # make exec.py in Default.sublime-package use own bash with an LD_PRELOAD instead of "/bin/bash"
     patchPhase = ''
diff --git a/pkgs/applications/editors/sublime/4/common.nix b/pkgs/applications/editors/sublime/4/common.nix
index a7425863d898..f8083902fdde 100644
--- a/pkgs/applications/editors/sublime/4/common.nix
+++ b/pkgs/applications/editors/sublime/4/common.nix
@@ -17,7 +17,7 @@
   cairo,
   pango,
   makeWrapper,
-  wrapGAppsHook,
+  wrapGAppsHook3,
   writeShellScript,
   common-updater-scripts,
   curl,
@@ -80,7 +80,7 @@ let
 
     nativeBuildInputs = [
       makeWrapper
-      wrapGAppsHook
+      wrapGAppsHook3
     ];
 
     buildPhase = ''
diff --git a/pkgs/applications/editors/texmaker/default.nix b/pkgs/applications/editors/texmaker/default.nix
index 4684831416b0..427948822fbc 100644
--- a/pkgs/applications/editors/texmaker/default.nix
+++ b/pkgs/applications/editors/texmaker/default.nix
@@ -1,4 +1,4 @@
-{ lib, mkDerivation, fetchurl, qtbase, qtscript, qtwebengine, qmake, zlib, pkg-config, poppler, wrapGAppsHook }:
+{ lib, mkDerivation, fetchurl, qtbase, qtscript, qtwebengine, qmake, zlib, pkg-config, poppler, wrapGAppsHook3 }:
 
 mkDerivation rec {
   pname = "texmaker";
@@ -10,7 +10,7 @@ mkDerivation rec {
   };
 
   buildInputs = [ qtbase qtscript poppler zlib qtwebengine ];
-  nativeBuildInputs = [ pkg-config poppler qmake wrapGAppsHook ];
+  nativeBuildInputs = [ pkg-config poppler qmake wrapGAppsHook3 ];
   env.NIX_CFLAGS_COMPILE = "-I${poppler.dev}/include/poppler";
 
   qmakeFlags = [
diff --git a/pkgs/applications/editors/textadept/default.nix b/pkgs/applications/editors/textadept/default.nix
index 536f2cd11009..075c3ecd5bf6 100644
--- a/pkgs/applications/editors/textadept/default.nix
+++ b/pkgs/applications/editors/textadept/default.nix
@@ -3,7 +3,7 @@
 , withCurses ? false, ncurses
 }:
 stdenv.mkDerivation rec {
-  version = "12.1";
+  version = "12.4";
   pname = "textadept";
 
   src = fetchFromGitHub {
@@ -11,7 +11,7 @@ stdenv.mkDerivation rec {
     owner = "orbitalquark";
     repo = "textadept";
     rev = "textadept_${version}";
-    sha256 = "sha256-ce7U/GR/4zkjnRN3fx3FLecc9vuvFqCONy275SWnpNc=";
+    sha256 = "sha256-nPgpQeBq5Stv2o0Ke4W2Ltnx6qLe5TIC5a8HSYVkmfI=";
   };
 
   nativeBuildInputs = [ cmake ]
diff --git a/pkgs/applications/editors/textadept/deps.nix b/pkgs/applications/editors/textadept/deps.nix
index 4f352bf19b76..f2322fd8a013 100644
--- a/pkgs/applications/editors/textadept/deps.nix
+++ b/pkgs/applications/editors/textadept/deps.nix
@@ -1,8 +1,8 @@
 {
   # scintilla
-  "scintilla536.tgz" = {
-    url = "https://www.scintilla.org/scintilla536.tgz";
-    sha256 = "sha256-ib6CeKg+eBOSWq/il32quH0r1r69F7AXn+cq/dVIyyQ=";
+  "scintilla550.tgz" = {
+    url = "https://www.scintilla.org/scintilla550.tgz";
+    sha256 = "sha256-5VPpVQnwH5KqFX+gLQanEmQuE9aaEewaAqfd8ixAYjE=";
   };
   # lexilla
   "lexilla510.tgz" = {
@@ -15,9 +15,9 @@
     sha256 = "sha256-l1qeLMCrhyoZA/GfmXFR20rY5EsUoO5e+1vZJtYdb24=";
   };
   # scintillua
-  "e88bbcfecae46b48b79d8156ea7129411b5c847d.zip" = {
-    url = "https://github.com/orbitalquark/scintillua/archive/e88bbcfecae46b48b79d8156ea7129411b5c847d.zip";
-    sha256 = "sha256-sWqpVtcAwysGn86XFwaEkKSPemk2247SydOQi6klFrQ=";
+  "scintillua_6.3.zip" = {
+    url = "https://github.com/orbitalquark/scintillua/archive/scintillua_6.3.zip";
+    sha256 = "sha256-SAFmu3q8T1UtVjdUcFy9NPu0DOLqewvU/Vb9b7XjgQM=";
   };
   # lua
   "lua-5.4.6.tar.gz" = {
@@ -49,6 +49,11 @@
     url = "https://github.com/orbitalquark/lua-std-regex/archive/1.0.zip";
     sha256 = "sha256-W2hKHOfqYyo3qk+YvPJlzZfZ1wxZmMVphSlcaql+dOE=";
   };
+  # singleapp
+  "v3.4.0.zip" = {
+    url = "https://github.com/itay-grudev/SingleApplication/archive/refs/tags/v3.4.0.zip";
+    sha256 = "sha256-FwyzM+R9ALpGH9u2RXab4Sqi4Q+p3Qs+8EdfhjPGcXY=";
+  };
 }
 
 
diff --git a/pkgs/applications/editors/thiefmd/default.nix b/pkgs/applications/editors/thiefmd/default.nix
index 1b7b4a668b25..d60398130234 100644
--- a/pkgs/applications/editors/thiefmd/default.nix
+++ b/pkgs/applications/editors/thiefmd/default.nix
@@ -5,7 +5,7 @@
 , ninja
 , vala
 , pkg-config
-, wrapGAppsHook
+, wrapGAppsHook3
 , desktop-file-utils
 , discount
 , glib
@@ -39,7 +39,7 @@ stdenv.mkDerivation rec {
     ninja
     vala
     pkg-config
-    wrapGAppsHook
+    wrapGAppsHook3
     desktop-file-utils
   ];
 
diff --git a/pkgs/applications/editors/tijolo/default.nix b/pkgs/applications/editors/tijolo/default.nix
index c3605691ad86..2b76d492924b 100644
--- a/pkgs/applications/editors/tijolo/default.nix
+++ b/pkgs/applications/editors/tijolo/default.nix
@@ -6,7 +6,7 @@
 , libgit2
 , editorconfig-core-c
 , gtksourceview4
-, wrapGAppsHook
+, wrapGAppsHook3
 , desktopToDarwinBundle
 }:
 crystal.buildCrystalPackage rec {
@@ -20,7 +20,7 @@ crystal.buildCrystalPackage rec {
     hash = "sha256-3TfXvRVP3lu43qF3RWCHnZ3czTaSl5EzrhuTlpnMfKo=";
   };
 
-  nativeBuildInputs = [ wrapGAppsHook ]
+  nativeBuildInputs = [ wrapGAppsHook3 ]
     ++ lib.optionals stdenv.isDarwin [ desktopToDarwinBundle ];
   buildInputs = [ vte libgit2 gtksourceview4 editorconfig-core-c ];
 
diff --git a/pkgs/applications/editors/vim/common.nix b/pkgs/applications/editors/vim/common.nix
index 74afc2182dd5..8b38e1c6e6e4 100644
--- a/pkgs/applications/editors/vim/common.nix
+++ b/pkgs/applications/editors/vim/common.nix
@@ -1,6 +1,6 @@
 { lib, fetchFromGitHub }:
 rec {
-  version = "9.1.0200";
+  version = "9.1.0377";
 
   outputs = [ "out" "xxd" ];
 
@@ -8,7 +8,7 @@ rec {
     owner = "vim";
     repo = "vim";
     rev = "v${version}";
-    hash = "sha256-MAMd+k4GpFUwEZzQTWtzSpYY6AEez+FMiqexozYK3Y4=";
+    hash = "sha256-cfN/QbnpWIQmLtpXWPc1JnaaX+J10ietObN/B9lE1F0=";
   };
 
   enableParallelBuilding = true;
diff --git a/pkgs/applications/editors/vim/full.nix b/pkgs/applications/editors/vim/full.nix
index 263f8d2984d0..0f3652a8a7de 100644
--- a/pkgs/applications/editors/vim/full.nix
+++ b/pkgs/applications/editors/vim/full.nix
@@ -4,7 +4,7 @@
 , libICE
 , vimPlugins
 , makeWrapper
-, wrapGAppsHook
+, wrapGAppsHook3
 , runtimeShell
 
 # apple frameworks
@@ -135,7 +135,7 @@ in stdenv.mkDerivation {
   ++ lib.optional wrapPythonDrv makeWrapper
   ++ lib.optional nlsSupport gettext
   ++ lib.optional perlSupport perl
-  ++ lib.optional (guiSupport == "gtk3") wrapGAppsHook
+  ++ lib.optional (guiSupport == "gtk3") wrapGAppsHook3
   ;
 
   buildInputs = [
diff --git a/pkgs/applications/editors/vim/macvim.nix b/pkgs/applications/editors/vim/macvim.nix
index ce83128e98b1..64aa5b639a9b 100644
--- a/pkgs/applications/editors/vim/macvim.nix
+++ b/pkgs/applications/editors/vim/macvim.nix
@@ -11,6 +11,7 @@
 , perl
 , luajit
 , darwin
+, libiconv
 , python3
 }:
 
@@ -127,7 +128,7 @@ stdenv.mkDerivation {
       --replace " -L${stdenv.cc.libc}/lib" "" \
       --replace " -L${darwin.libobjc}/lib" "" \
       --replace " -L${darwin.libunwind}/lib" "" \
-      --replace " -L${darwin.libiconv}/lib" ""
+      --replace " -L${libiconv}/lib" ""
 
     # All the libraries we stripped have -osx- in their name as of this time.
     # Assert now that this pattern no longer appears in config.mk.
diff --git a/pkgs/applications/editors/vim/plugins/aliases.nix b/pkgs/applications/editors/vim/plugins/aliases.nix
index 174d7416a736..ff504416489e 100644
--- a/pkgs/applications/editors/vim/plugins/aliases.nix
+++ b/pkgs/applications/editors/vim/plugins/aliases.nix
@@ -116,6 +116,7 @@ mapAliases (with prev; {
   solidity            = vim-solidity;
   stylish-haskell     = vim-stylish-haskell;
   stylishHaskell      = vim-stylish-haskell; # backwards compat, added 2014-10-18
+  suda-vim            = vim-suda; # backwards compat, added 2024-05-16
   Supertab            = supertab;
   Syntastic           = syntastic;
   SyntaxRange         = vim-SyntaxRange;
diff --git a/pkgs/applications/editors/vim/plugins/build-vim-plugin.nix b/pkgs/applications/editors/vim/plugins/build-vim-plugin.nix
index 1611adc97ee3..db712305c932 100644
--- a/pkgs/applications/editors/vim/plugins/build-vim-plugin.nix
+++ b/pkgs/applications/editors/vim/plugins/build-vim-plugin.nix
@@ -13,7 +13,6 @@ rec {
 
   buildVimPlugin =
     { name ? "${attrs.pname}-${attrs.version}"
-    , namePrefix ? "vimplugin-"
     , src
     , unpackPhase ? ""
     , configurePhase ? ":"
@@ -27,7 +26,7 @@ rec {
     }@attrs:
     let
       drv = stdenv.mkDerivation (attrs // {
-        name = namePrefix + name;
+        name = lib.warnIf (attrs ? vimprefix) "The 'vimprefix' is now hardcoded in toVimPlugin" name;
 
         inherit unpackPhase configurePhase buildPhase addonInfo preInstall postInstall;
 
diff --git a/pkgs/applications/editors/vim/plugins/deprecated.json b/pkgs/applications/editors/vim/plugins/deprecated.json
index e73899e66fea..2158caac1bb0 100644
--- a/pkgs/applications/editors/vim/plugins/deprecated.json
+++ b/pkgs/applications/editors/vim/plugins/deprecated.json
@@ -7,6 +7,14 @@
         "date": "2021-12-21",
         "new": "cmp-tmux"
     },
+    "fern-vim": {
+        "date": "2024-05-17",
+        "new": "vim-fern"
+    },
+    "gina-vim": {
+        "date": "2024-05-17",
+        "new": "vim-gina"
+    },
     "gist-vim": {
         "date": "2020-03-27",
         "new": "vim-gist"
@@ -47,8 +55,12 @@
         "date": "2021-09-03",
         "new": "sqlite-lua"
     },
+    "suda-vim": {
+        "date": "2024-05-12",
+        "new": "vim-suda"
+    },
     "vim-fsharp": {
-        "date": "2024-04-21",
+        "date": "2024-05-17",
         "new": "zarchive-vim-fsharp"
     },
     "vim-jade": {
diff --git a/pkgs/applications/editors/vim/plugins/generated.nix b/pkgs/applications/editors/vim/plugins/generated.nix
index e477fa1f520e..b992d1b54041 100644
--- a/pkgs/applications/editors/vim/plugins/generated.nix
+++ b/pkgs/applications/editors/vim/plugins/generated.nix
@@ -63,14 +63,26 @@ final: prev:
     meta.homepage = "https://github.com/vim-scripts/Colour-Sampler-Pack/";
   };
 
+  CopilotChat-nvim = buildVimPlugin {
+    pname = "CopilotChat.nvim";
+    version = "2024-05-08";
+    src = fetchFromGitHub {
+      owner = "CopilotC-Nvim";
+      repo = "CopilotChat.nvim";
+      rev = "af18fa2fbc765ddf9bacd22e15c974642f20d19b";
+      sha256 = "16s0sj1qydz56xc1ydgnm9q6qndrj535c86113ji8nsgxs29gk1k";
+    };
+    meta.homepage = "https://github.com/CopilotC-Nvim/CopilotChat.nvim/";
+  };
+
   Coqtail = buildVimPlugin {
     pname = "Coqtail";
-    version = "2024-04-19";
+    version = "2024-05-06";
     src = fetchFromGitHub {
       owner = "whonore";
       repo = "Coqtail";
-      rev = "c74271e68dfc9e125e6ae197879eb50c7b34512d";
-      sha256 = "1x2yhdmmm5sbfpqbkrivwa05hx8vk5xa3468db3554clawkp2mnj";
+      rev = "60d5fef9e8f272ca9dd40d68dd692fb448a5f606";
+      sha256 = "0acwav5f9hrjcwg3lw2l8dhh9y5yqcd0af8wkimzryfa1k7vqxiq";
     };
     meta.homepage = "https://github.com/whonore/Coqtail/";
   };
@@ -173,24 +185,24 @@ final: prev:
 
   LazyVim = buildVimPlugin {
     pname = "LazyVim";
-    version = "2024-04-11";
+    version = "2024-05-16";
     src = fetchFromGitHub {
       owner = "LazyVim";
       repo = "LazyVim";
-      rev = "bb36f71b77d8e15788a5b62c82a1c9ec7b209e49";
-      sha256 = "1vjckraf062d7dybf1iphp7i7lwphzgc1bns0jzfardbd1q9gw3f";
+      rev = "07923f3701af23504bb09bf6cc11c4fb0a1894e7";
+      sha256 = "1ggnx9gw4x6cis570djvpmk21cnfixay2b1k2c3gs7vxmfivh0lj";
     };
     meta.homepage = "https://github.com/LazyVim/LazyVim/";
   };
 
   LeaderF = buildVimPlugin {
     pname = "LeaderF";
-    version = "2024-04-20";
+    version = "2024-05-13";
     src = fetchFromGitHub {
       owner = "Yggdroot";
       repo = "LeaderF";
-      rev = "d4eded0ab36ba60aa7e13893a2064a74d2cdb6bd";
-      sha256 = "0xzdm4ggh5bggnxjgcaxkzdiwfxs11yblgmpwvzqjhpzv8qnzkx1";
+      rev = "25218c5ff71e2569155a23a757fbc0d79b3a5608";
+      sha256 = "1kja577s73qkpx2i5qaqwv37mhn3i24zm436j4apcy03048hmlmx";
     };
     meta.homepage = "https://github.com/Yggdroot/LeaderF/";
   };
@@ -257,12 +269,12 @@ final: prev:
 
   QFEnter = buildVimPlugin {
     pname = "QFEnter";
-    version = "2023-10-20";
+    version = "2024-05-05";
     src = fetchFromGitHub {
       owner = "yssl";
       repo = "QFEnter";
-      rev = "426c04312ae67ac28dce38ccc5fafdd1ed4a3d9f";
-      sha256 = "02s3mq0hxszi7fbm256xgh4nz5mc5frg8rz6dnll7sk26as8fgrd";
+      rev = "1e4bf00b264e0f1541401c28c4b63ace5bb3d2be";
+      sha256 = "1aksyxm89jmrrdw77979jdxp83z0lj1n1qhyipjmjz0vdljr6w50";
     };
     meta.homepage = "https://github.com/yssl/QFEnter/";
   };
@@ -305,12 +317,12 @@ final: prev:
 
   SchemaStore-nvim = buildVimPlugin {
     pname = "SchemaStore.nvim";
-    version = "2024-04-18";
+    version = "2024-05-14";
     src = fetchFromGitHub {
       owner = "b0o";
       repo = "SchemaStore.nvim";
-      rev = "f7cae6f1b38cb296f48ce1a9c5ed1a419d912a42";
-      sha256 = "0mdriqqna37a9fjbilaq2qkkn4ik4jn2dz1x6ra51pgh42r86qhl";
+      rev = "3c32d6a7bc56d56d4e3cc16fb21b59465a527aeb";
+      sha256 = "0z4s60ahpm7scqqajli95jcjafcza37wwjh8lzhlydc2zy7xg4z0";
     };
     meta.homepage = "https://github.com/b0o/SchemaStore.nvim/";
   };
@@ -498,36 +510,36 @@ final: prev:
 
   actions-preview-nvim = buildVimPlugin {
     pname = "actions-preview.nvim";
-    version = "2024-03-09";
+    version = "2024-05-07";
     src = fetchFromGitHub {
       owner = "aznhe21";
       repo = "actions-preview.nvim";
-      rev = "5072b1b1065a6b22bdd46b5c21780a91d6a08071";
-      sha256 = "195ns7dw3g4sq3pmh3h3xas4kfmwwhidlg4q7nnffkd6x9cdg31w";
+      rev = "e8d41b608e24319548637685c7cfa66fadaff2b2";
+      sha256 = "1nvly9hhf02dfcqp0saf7inh502mdyivha2ksqyq0f07bp1qkzcd";
     };
     meta.homepage = "https://github.com/aznhe21/actions-preview.nvim/";
   };
 
   adwaita-nvim = buildVimPlugin {
     pname = "adwaita.nvim";
-    version = "2023-12-15";
+    version = "2024-04-28";
     src = fetchFromGitHub {
       owner = "Mofiqul";
       repo = "adwaita.nvim";
-      rev = "981bce791959d79cd1316e59e23906e3c05efb44";
-      sha256 = "1lrxns172mad4936x1njagn5j30nyxwrw82dmhzf4yfkz8pra251";
+      rev = "c9379097755701ab597140bafd097fbaff3dd517";
+      sha256 = "18qswcjppgcxcf5p8vlr0nwb6p6s3j68a7ng05bpx49i5nwrd0vy";
     };
     meta.homepage = "https://github.com/Mofiqul/adwaita.nvim/";
   };
 
   aerial-nvim = buildVimPlugin {
     pname = "aerial.nvim";
-    version = "2024-04-19";
+    version = "2024-05-16";
     src = fetchFromGitHub {
       owner = "stevearc";
       repo = "aerial.nvim";
-      rev = "7045e7cb0017d222122a1f6e5795e69754d8b9db";
-      sha256 = "04mclw1drrkr4x4gnb26p6szg6glbkkff7cbrxy4g7fyx6lhl9fy";
+      rev = "97a838ccc03ba010a667cba49d9820f6823f4d51";
+      sha256 = "0pkbyiskvqpnl5d6lr60agdqn52skx87x5jdzflni087wxffr0ag";
       fetchSubmodules = true;
     };
     meta.homepage = "https://github.com/stevearc/aerial.nvim/";
@@ -583,12 +595,12 @@ final: prev:
 
   ale = buildVimPlugin {
     pname = "ale";
-    version = "2024-04-20";
+    version = "2024-05-09";
     src = fetchFromGitHub {
       owner = "dense-analysis";
       repo = "ale";
-      rev = "adee52fba040428264aee956d99033572fc405a3";
-      sha256 = "125hcnl146bh8bpsp3v62dbdqpzwma5n69f8y6gpk5anh4yc1sai";
+      rev = "c88bddfa83dbb96c2f57426794ed98a0e181ea7e";
+      sha256 = "06mbkp68wwl1pnpzl1plfv3g7089ljlkp3bw5rgj0xjq5yd4bkfi";
     };
     meta.homepage = "https://github.com/dense-analysis/ale/";
   };
@@ -691,24 +703,24 @@ final: prev:
 
   arrow-nvim = buildVimPlugin {
     pname = "arrow.nvim";
-    version = "2024-04-19";
+    version = "2024-05-07";
     src = fetchFromGitHub {
       owner = "otavioschwanck";
       repo = "arrow.nvim";
-      rev = "37f32c94cf6e01826af5d96337c70d2f9be0a280";
-      sha256 = "0v23gw86rmciaqbi27ifd3f5mw0vknm2482yznb30dpq3pk53327";
+      rev = "33f3ce4c710c1717c491119016808c8d529d76a2";
+      sha256 = "0qagjxl3c8gp19q6ghj9cv5yv7naqm2d6p83bfrbkw92ba2i8nli";
     };
     meta.homepage = "https://github.com/otavioschwanck/arrow.nvim/";
   };
 
   astrotheme = buildVimPlugin {
     pname = "astrotheme";
-    version = "2024-04-10";
+    version = "2024-05-08";
     src = fetchFromGitHub {
       owner = "AstroNvim";
       repo = "astrotheme";
-      rev = "8b316aa3ecd8c4206430379c0b1da0b4e7969ab9";
-      sha256 = "120fz8z6bmsp7dqjhg8dygbgv1q4bzwk0k8ji55xa2w6bc8ji3ii";
+      rev = "7e47b7900229365bc0dca2a2eee2acc62dfc9dc3";
+      sha256 = "14gjl0w921c3bgl4hcvv1px42j1z7i2bsqh91lps33r18sj3x833";
     };
     meta.homepage = "https://github.com/AstroNvim/astrotheme/";
   };
@@ -811,12 +823,12 @@ final: prev:
 
   asyncrun-vim = buildVimPlugin {
     pname = "asyncrun.vim";
-    version = "2024-03-22";
+    version = "2024-05-13";
     src = fetchFromGitHub {
       owner = "skywind3000";
       repo = "asyncrun.vim";
-      rev = "014e2e2fe51ad4b1a774cffa0f12887767d952eb";
-      sha256 = "01aldaizx2madn3a8nis7bnp7r75lvxyvmqcxgy0s7sx8ywkndr1";
+      rev = "4261fa97f4a5429ec4bf5cfeaba74159c7e74f12";
+      sha256 = "18ib7d5bk2hgb7jyyw1ypskp6hrgawwbsnq7zlm811sxz5jiv045";
     };
     meta.homepage = "https://github.com/skywind3000/asyncrun.vim/";
   };
@@ -895,14 +907,14 @@ final: prev:
 
   auto-save-nvim = buildVimPlugin {
     pname = "auto-save.nvim";
-    version = "2022-11-01";
+    version = "2024-04-25";
     src = fetchFromGitHub {
-      owner = "pocco81";
+      owner = "okuuva";
       repo = "auto-save.nvim";
-      rev = "979b6c82f60cfa80f4cf437d77446d0ded0addf0";
-      sha256 = "13kv2p0gj20fg79ch27a9vp10ki11vjj4fx626cj526qpnbs4qbd";
+      rev = "5fe9ab0c42f0457f2a973e814a6352b8eeb04730";
+      sha256 = "1c4xmp1cy3h7z68yh09bcazdqj8kimyrddgl0wc068sb6pmnpbbi";
     };
-    meta.homepage = "https://github.com/pocco81/auto-save.nvim/";
+    meta.homepage = "https://github.com/okuuva/auto-save.nvim/";
   };
 
   auto-session = buildVimPlugin {
@@ -1027,24 +1039,24 @@ final: prev:
 
   bamboo-nvim = buildVimPlugin {
     pname = "bamboo.nvim";
-    version = "2024-04-18";
+    version = "2024-05-15";
     src = fetchFromGitHub {
       owner = "ribru17";
       repo = "bamboo.nvim";
-      rev = "aaeda8100e3a7ebcc65b5897c9027eca2bd9cbf2";
-      sha256 = "1734skv1z9qd8p6dspda1hhq79rd4y4bkyggf0iphz8qw7g0qm8m";
+      rev = "2ca4ac5ddf80c0171469ec8d74fce036c98be458";
+      sha256 = "1jcfwds6395i89scxkzd75cmgz99kcqrk73ic3z5k27vn6n59n8m";
     };
     meta.homepage = "https://github.com/ribru17/bamboo.nvim/";
   };
 
   barbar-nvim = buildVimPlugin {
     pname = "barbar.nvim";
-    version = "2024-04-12";
+    version = "2024-05-15";
     src = fetchFromGitHub {
       owner = "romgrk";
       repo = "barbar.nvim";
-      rev = "88fe247ba6453b6ac422f26eb047acaac1a6000a";
-      sha256 = "0amim3cminq310rzqyylkf7afkyjpmxcvp1y42ml00vdl7av2484";
+      rev = "5880baa3bf6b262ee3c465519fce3e71a6045dec";
+      sha256 = "0rk6l5vhxnryiy42rdykpqs5i9jh2g1bk19s674br5rsiwzmrml5";
     };
     meta.homepage = "https://github.com/romgrk/barbar.nvim/";
   };
@@ -1087,12 +1099,12 @@ final: prev:
 
   base46 = buildVimPlugin {
     pname = "base46";
-    version = "2024-03-25";
+    version = "2024-05-14";
     src = fetchFromGitHub {
       owner = "nvchad";
       repo = "base46";
-      rev = "adb64a6ae70f8c61c5ab8892f07d29dafd4d47ad";
-      sha256 = "12c3xiv3dxjng86dahz0aw93v62ygqy7pkb3485yjs7a2v6jg5d9";
+      rev = "a2bd5e8896fc7b6110e62dc4efdb3bf0f077baed";
+      sha256 = "1h30781h2iykwiknchil0zp0p2lyzdi5vkz363l74q1hq7gb38pc";
     };
     meta.homepage = "https://github.com/nvchad/base46/";
   };
@@ -1291,36 +1303,36 @@ final: prev:
 
   bufferline-nvim = buildVimPlugin {
     pname = "bufferline.nvim";
-    version = "2024-04-19";
+    version = "2024-04-22";
     src = fetchFromGitHub {
       owner = "akinsho";
       repo = "bufferline.nvim";
-      rev = "f6f00d9ac1a51483ac78418f9e63126119a70709";
-      sha256 = "1681xqpvxb7zhfig69d0qf287qzxfwcwb6vipnhykiisd8vn9inv";
+      rev = "73540cb95f8d95aa1af3ed57713c6720c78af915";
+      sha256 = "0z3fg5zff1gng6wzsbj56sbbvmq9f30y6bzzkd9kjrfzsml6cybc";
     };
     meta.homepage = "https://github.com/akinsho/bufferline.nvim/";
   };
 
   bufjump-nvim = buildVimPlugin {
     pname = "bufjump.nvim";
-    version = "2021-12-05";
+    version = "2024-05-04";
     src = fetchFromGitHub {
       owner = "kwkarlwang";
       repo = "bufjump.nvim";
-      rev = "a020f81bb82f758da51594a07bfcb9635a6b0f73";
-      sha256 = "1a8n466drd9rz2q0h0cpc6xs1djgwshyh8gndx9kqw1n56vsa777";
+      rev = "ae2728a77defbd27e9e5ef64c854fb0813ffba01";
+      sha256 = "0d8rhgx9vyw58f5ryjwz5ibiwpvjdhrmd27nw4sh7z4bq1n9gxib";
     };
     meta.homepage = "https://github.com/kwkarlwang/bufjump.nvim/";
   };
 
   bullets-vim = buildVimPlugin {
     pname = "bullets.vim";
-    version = "2024-04-18";
+    version = "2024-04-21";
     src = fetchFromGitHub {
       owner = "bullets-vim";
       repo = "bullets.vim";
-      rev = "4ed0785a5a812d9dc96164f2ceab10f5dce68270";
-      sha256 = "0dpbh9l4a3009k0qi016zm03wjc12jbf31lhj78mmqnpazfn7gfh";
+      rev = "448ad2a159c5f2540f6c9738f3bb9e6f15a41734";
+      sha256 = "19anlq6kjlbmhzr2sqqykxfksflkfij10kj82cxlj47r7nqzjgpf";
     };
     meta.homepage = "https://github.com/bullets-vim/bullets.vim/";
   };
@@ -1363,24 +1375,24 @@ final: prev:
 
   ccc-nvim = buildVimPlugin {
     pname = "ccc.nvim";
-    version = "2024-04-08";
+    version = "2024-04-28";
     src = fetchFromGitHub {
       owner = "uga-rosa";
       repo = "ccc.nvim";
-      rev = "1283eef5494c092a047baa34ed3e667f3cb2715e";
-      sha256 = "1wipfpypa2zjdc2n4cjkiaxcfh0mraiwiripg3vmd4mf37wbxphv";
+      rev = "f388f1981d222967c741fe9927edf9ba5fa3bcbe";
+      sha256 = "1d0v96vxghm5dzjm03hhrds0qafvhbjnq1il9z7bkg3r062vs6j1";
     };
     meta.homepage = "https://github.com/uga-rosa/ccc.nvim/";
   };
 
   chadtree = buildVimPlugin {
     pname = "chadtree";
-    version = "2024-04-18";
+    version = "2024-05-10";
     src = fetchFromGitHub {
       owner = "ms-jpq";
       repo = "chadtree";
-      rev = "a8271021ec4f5cae4b9a276ab8662e9a7d6074f9";
-      sha256 = "0cpzpz17smp3dc4lwid3gkkjwangndy1d6fbijrl1l2jpa8dzrgq";
+      rev = "28ec469ed46c6366dbda7f3a4f57b204d7bf8e49";
+      sha256 = "1f9bmaj0lhiwzig0g36gbsy3mkq2lmcqx762h4z3kn1acci3dlk1";
     };
     meta.homepage = "https://github.com/ms-jpq/chadtree/";
   };
@@ -1435,12 +1447,12 @@ final: prev:
 
   citruszest-nvim = buildVimPlugin {
     pname = "citruszest.nvim";
-    version = "2024-04-20";
+    version = "2024-04-29";
     src = fetchFromGitHub {
       owner = "zootedb0t";
       repo = "citruszest.nvim";
-      rev = "ea9cb04feadc1f7fbd2902fc65f0308354583f5d";
-      sha256 = "0mqnh1155pg0dw07hzn7jd5x42gwvffkpn7w1pk4jnmaas3yxpkh";
+      rev = "44c7ef5568f5377f3d9b5a8b7b267c015ea3205c";
+      sha256 = "10d5ia00q5wfycnvyxfn5hffy2n5jk4igjm5859i56i11pl0qmsa";
     };
     meta.homepage = "https://github.com/zootedb0t/citruszest.nvim/";
   };
@@ -1459,12 +1471,12 @@ final: prev:
 
   clangd_extensions-nvim = buildVimPlugin {
     pname = "clangd_extensions.nvim";
-    version = "2024-03-25";
+    version = "2024-05-04";
     src = fetchFromGitHub {
       owner = "p00f";
       repo = "clangd_extensions.nvim";
-      rev = "2992ba8c13c2de41f91a7c7488bf1c48bcec31fe";
-      sha256 = "1qms0pkm1a7mri3bhn3aqy5lis6b1a9x6hwa383z2dp8iqqkcran";
+      rev = "430a8f56605cb1d0ed9876301d6e9bf675195e16";
+      sha256 = "1gqbl3s963dmz0bldxl99sg7zvqgmcfz3x1g8i5whaqqx3ig82m3";
     };
     meta.homepage = "https://github.com/p00f/clangd_extensions.nvim/";
   };
@@ -1531,12 +1543,12 @@ final: prev:
 
   cmake-tools-nvim = buildVimPlugin {
     pname = "cmake-tools.nvim";
-    version = "2024-04-14";
+    version = "2024-05-12";
     src = fetchFromGitHub {
       owner = "Civitasv";
       repo = "cmake-tools.nvim";
-      rev = "8506c426d5b361dbaa7c61c0490a2589a9c555ce";
-      sha256 = "1kmrfbxwzi60mf88qfcwjcwn0js9wci0yz89d99zgrm0vxl5jpkh";
+      rev = "b221c5973ca520b0f079e16cd9919a8d944f7890";
+      sha256 = "0whqznv233hn8241h0nv5r30qcnlzf6ziqxpjcdsxp97s1vcg1pi";
     };
     meta.homepage = "https://github.com/Civitasv/cmake-tools.nvim/";
   };
@@ -1975,12 +1987,12 @@ final: prev:
 
   cmp-spell = buildVimPlugin {
     pname = "cmp-spell";
-    version = "2023-09-20";
+    version = "2024-05-07";
     src = fetchFromGitHub {
       owner = "f3fora";
       repo = "cmp-spell";
-      rev = "32a0867efa59b43edbb2db67b0871cfad90c9b66";
-      sha256 = "1yr2cq1b6di4k93pjlshkkf4phhd3lzmkm0s679j35crzgwhxnbd";
+      rev = "694a4e50809d6d645c1ea29015dad0c293f019d6";
+      sha256 = "0qh86jbm1a843lc9p5z4gqarzpwq4vbb8cjlg7jn87ighx5cgzhr";
     };
     meta.homepage = "https://github.com/f3fora/cmp-spell/";
   };
@@ -2023,12 +2035,12 @@ final: prev:
 
   cmp-treesitter = buildVimPlugin {
     pname = "cmp-treesitter";
-    version = "2023-12-09";
+    version = "2024-05-13";
     src = fetchFromGitHub {
       owner = "ray-x";
       repo = "cmp-treesitter";
-      rev = "13e4ef8f4dd5639fca2eb9150e68f47639a9b37d";
-      sha256 = "10375kviak1wxklha79g8gbk8pph8finsb3wga6p7mw1m657vc9b";
+      rev = "958fcfa0d8ce46d215e19cc3992c542f576c4123";
+      sha256 = "05as01c2f7i20zkzpqbq9n8ji9bcwd678ixmxnrz9vmz5zsj8q7i";
     };
     meta.homepage = "https://github.com/ray-x/cmp-treesitter/";
   };
@@ -2155,12 +2167,12 @@ final: prev:
 
   coc-fzf = buildVimPlugin {
     pname = "coc-fzf";
-    version = "2024-01-04";
+    version = "2024-04-24";
     src = fetchFromGitHub {
       owner = "antoinemadec";
       repo = "coc-fzf";
-      rev = "96490e570daf1c10679ac0b183ebf2ca1024b079";
-      sha256 = "0iyjrax9sqimx7vrkk98qy3zag4vbw3g3kw4p6mmyjryi20kw66m";
+      rev = "6f19832e9e80ceacb98faac2688364b4f7a5b8e4";
+      sha256 = "1hjp5f1mrsrch83yi0f74a2pxsp7qmmrgp7ibd1v2wqvb4cnwsfp";
     };
     meta.homepage = "https://github.com/antoinemadec/coc-fzf/";
   };
@@ -2215,12 +2227,12 @@ final: prev:
 
   coc-nvim = buildVimPlugin {
     pname = "coc.nvim";
-    version = "2024-04-19";
+    version = "2024-05-06";
     src = fetchFromGitHub {
       owner = "neoclide";
       repo = "coc.nvim";
-      rev = "a8823eed914f89cdd3940ed9f5f62786e6d585c1";
-      sha256 = "1s3hcbhx5kn3b6m1793m02kl94g8hb53jc5lhjhgkg4qhx27hsq9";
+      rev = "ad6b31032f4eb4c407dfc30c3de94e67571ecc07";
+      sha256 = "0jyymnlj3qs4f6ilmq2wxj3ghxq0iand4am0d70i81s7izw26wcg";
     };
     meta.homepage = "https://github.com/neoclide/coc.nvim/";
   };
@@ -2239,24 +2251,24 @@ final: prev:
 
   codeium-nvim = buildVimPlugin {
     pname = "codeium.nvim";
-    version = "2024-04-16";
+    version = "2024-05-03";
     src = fetchFromGitHub {
       owner = "Exafunction";
       repo = "codeium.nvim";
-      rev = "dfcac077fa023b7194c6403ac9a8f931b9c24f28";
-      sha256 = "03lykrm0d5xm8i5f002xfy7l8wmzji5bqy4ygl3vals12ni5ymph";
+      rev = "d3b88eb3aa1de6da33d325c196b8a41da2bcc825";
+      sha256 = "0zssbn655hqxihmswbhih5w9k75gkhyqn9bm8n9vdqihygh5g9js";
     };
     meta.homepage = "https://github.com/Exafunction/codeium.nvim/";
   };
 
   codeium-vim = buildVimPlugin {
     pname = "codeium.vim";
-    version = "2024-04-02";
+    version = "2024-05-03";
     src = fetchFromGitHub {
       owner = "Exafunction";
       repo = "codeium.vim";
-      rev = "31dd2962c81759be007895db6ce089feec397c86";
-      sha256 = "07ihw108z3lz86f29jqkm9skc4rywqw84mv8gwviaplndpd2z893";
+      rev = "9406f13cf3eaa08318b76746bd105a04506cab27";
+      sha256 = "083qfmiskr0xahi5c8h46qkrsy4bahcy63rf74g315wwfcv491vz";
     };
     meta.homepage = "https://github.com/Exafunction/codeium.vim/";
   };
@@ -2287,12 +2299,12 @@ final: prev:
 
   colorbuddy-nvim = buildVimPlugin {
     pname = "colorbuddy.nvim";
-    version = "2024-03-20";
+    version = "2024-05-08";
     src = fetchFromGitHub {
       owner = "tjdevries";
       repo = "colorbuddy.nvim";
-      rev = "9e96ccd88f4510d0a54ce1d5c11119eac9fb217e";
-      sha256 = "1xakrmhsjr5xy82g9vfjmsz2wy93gchsqg7lndvjjm175hsqd27a";
+      rev = "8b968581e5c19d22a861d5f3fe5dbd83394fa681";
+      sha256 = "184hvgv6cb25hfgkh07yx0mddygcj0qk19slwpj6z5i3xvywxab1";
     };
     meta.homepage = "https://github.com/tjdevries/colorbuddy.nvim/";
   };
@@ -2503,12 +2515,12 @@ final: prev:
 
   conform-nvim = buildVimPlugin {
     pname = "conform.nvim";
-    version = "2024-04-17";
+    version = "2024-05-16";
     src = fetchFromGitHub {
       owner = "stevearc";
       repo = "conform.nvim";
-      rev = "a6965ac128eba75537ec2bc5ddd5d5e357062bdc";
-      sha256 = "00knvdl5msvn178skxqxb0ip722cnqrpp8xr1id4z6j5vbysmhiy";
+      rev = "00f9d91391b04b1935e2f15948bd96cc111e7d3a";
+      sha256 = "0ydckbdj7zps3i04hb5cx5ddzxy5g1pc022i6zfrpfs0yqv9jjiv";
       fetchSubmodules = true;
     };
     meta.homepage = "https://github.com/stevearc/conform.nvim/";
@@ -2576,12 +2588,12 @@ final: prev:
 
   copilot-vim = buildVimPlugin {
     pname = "copilot.vim";
-    version = "2024-04-13";
+    version = "2024-05-10";
     src = fetchFromGitHub {
       owner = "github";
       repo = "copilot.vim";
-      rev = "1e135c5303bc60598f6314a2276f31dc91aa34dd";
-      sha256 = "06b5c0xgs3xiajdw7ag3qbv4i0qwn4s084r4pj5v8d9iyc834kiz";
+      rev = "dfa657c80c915a6a3eb6d9010046a0576ad25a37";
+      sha256 = "0jf0hljpg5yl26qazz3xpg7hcdv3ywjw81s4g2b42wsrwsmafzsf";
     };
     meta.homepage = "https://github.com/github/copilot.vim/";
   };
@@ -2624,12 +2636,12 @@ final: prev:
 
   coq_nvim = buildVimPlugin {
     pname = "coq_nvim";
-    version = "2024-04-18";
+    version = "2024-04-26";
     src = fetchFromGitHub {
       owner = "ms-jpq";
       repo = "coq_nvim";
-      rev = "98e389717df1a29f557f7a5d8f1d8a7e5c0560dd";
-      sha256 = "16ngidw3lg1virbd731pp9z1s20j8mva6569blkj7cnk08kprh7l";
+      rev = "23ab6c20039a43bb21ce1c586ef0eece026c68bd";
+      sha256 = "0ng4z0600fsbg7ln72305vyvhn7fd4rj0xzi1n7f57avhqvc4lpr";
     };
     meta.homepage = "https://github.com/ms-jpq/coq_nvim/";
   };
@@ -2660,12 +2672,12 @@ final: prev:
 
   crates-nvim = buildVimPlugin {
     pname = "crates.nvim";
-    version = "2024-04-13";
+    version = "2024-05-14";
     src = fetchFromGitHub {
       owner = "saecki";
       repo = "crates.nvim";
-      rev = "786d12a70c9b91fa2d0d102bb07df02be0db31a1";
-      sha256 = "1krd7srvzjrikpirfypw09cv2flcy22jv8amrbxfxykrgg2vn6dd";
+      rev = "d556c00d60c9421c913ee54ff690df2a34f6264e";
+      sha256 = "0hm9nj5hakjhp6rx0hl4x70dsv03gxbcm8c9fw2xgqm9hwwbap27";
     };
     meta.homepage = "https://github.com/saecki/crates.nvim/";
   };
@@ -2756,12 +2768,12 @@ final: prev:
 
   cyberdream-nvim = buildVimPlugin {
     pname = "cyberdream.nvim";
-    version = "2024-04-19";
+    version = "2024-05-15";
     src = fetchFromGitHub {
       owner = "scottmckendry";
       repo = "cyberdream.nvim";
-      rev = "9a7f07ad318a96f19845683014d27be00495ea98";
-      sha256 = "1w8ic8ngfk1x99yl7bx7kfqmwi0py6xj198yczvxwzmgfxby5sjc";
+      rev = "c7aa987f31abf4fc58fa1eafd917a337759e5d69";
+      sha256 = "1f227s9sp4lx5vgfr568p5vnchrgr9vbsgsxl94rvjpc10vkbjyz";
     };
     meta.homepage = "https://github.com/scottmckendry/cyberdream.nvim/";
   };
@@ -2792,24 +2804,24 @@ final: prev:
 
   dashboard-nvim = buildVimPlugin {
     pname = "dashboard-nvim";
-    version = "2024-04-18";
+    version = "2024-05-05";
     src = fetchFromGitHub {
       owner = "nvimdev";
       repo = "dashboard-nvim";
-      rev = "6d06924b562de6f0bb136edf1bf549afbf6b7d00";
-      sha256 = "1c5xhwsj84rs00zds9279wfvxc2xjmdfix36mvxdklrq6f083ifd";
+      rev = "a0a78099658c7d4be3714f657b18ca8285d5d106";
+      sha256 = "1vfzh9dsfggchxsyypkl8njdapmy5vhd0kwihvv32997x2sh1qks";
     };
     meta.homepage = "https://github.com/nvimdev/dashboard-nvim/";
   };
 
   debugprint-nvim = buildVimPlugin {
     pname = "debugprint.nvim";
-    version = "2024-04-17";
+    version = "2024-05-16";
     src = fetchFromGitHub {
       owner = "andrewferrier";
       repo = "debugprint.nvim";
-      rev = "4ac809ff035eb246392ce4593c49705e894dbbea";
-      sha256 = "1zjycn3qj6mpa7c5aknka2dfq8d05ac8rc6sfh81sal2hwdnq1d1";
+      rev = "1a77a32dda9ba25000118c82aa9146b780dfb540";
+      sha256 = "048bvdz06f1hxmix3nhjj5dwynhaazg6895mnd1lj3m8z3rfs9gh";
     };
     meta.homepage = "https://github.com/andrewferrier/debugprint.nvim/";
   };
@@ -2912,12 +2924,12 @@ final: prev:
 
   denops-vim = buildVimPlugin {
     pname = "denops.vim";
-    version = "2024-04-17";
+    version = "2024-05-16";
     src = fetchFromGitHub {
       owner = "vim-denops";
       repo = "denops.vim";
-      rev = "c727a3f05a804d1f04b11735f8241518465de9a7";
-      sha256 = "1h08jrxa07b59ipxqlk2ni78bn1h2w4qdg0m46bwgn7pb24479f6";
+      rev = "9dd9ae9da9b8d65916dd44e0e4d881665397de63";
+      sha256 = "1cvicx69741jna07vm4rchclnspcbpdj8yyik0bsicf95w5w6blp";
     };
     meta.homepage = "https://github.com/vim-denops/denops.vim/";
   };
@@ -3166,12 +3178,12 @@ final: prev:
 
   dhall-vim = buildVimPlugin {
     pname = "dhall-vim";
-    version = "2021-06-05";
+    version = "2024-05-08";
     src = fetchFromGitHub {
       owner = "vmchale";
       repo = "dhall-vim";
-      rev = "68500ef46ff3706f46c99db3be7a0c8abcf6a3ae";
-      sha256 = "0lwna4kcq7davfvh3535n8wl9jxkjm7cg6jgpisd17kvagihh8qw";
+      rev = "c1790ded928a57abba9ebc8f46cf57a52733af04";
+      sha256 = "05jd65bxclgmb97hyg9akcz4zw7n81wh53a1dp7rxvannbxzd6db";
     };
     meta.homepage = "https://github.com/vmchale/dhall-vim/";
   };
@@ -3250,12 +3262,12 @@ final: prev:
 
   distant-nvim = buildVimPlugin {
     pname = "distant.nvim";
-    version = "2024-01-10";
+    version = "2024-05-16";
     src = fetchFromGitHub {
       owner = "chipsenkbeil";
       repo = "distant.nvim";
-      rev = "de7288b1af6fdb2d2e7a8aa00f07a236261c2491";
-      sha256 = "1dvd12cmarb5ki214xy0d4ibkcym3gla3pk9anfgjjm1qqlwm9va";
+      rev = "823267cf3b77cf9a7ae28454926eabc18fec1ba0";
+      sha256 = "19bv0hfvc73c7cvw8yqvsp991i9h757bcxy2ff95sbnwk3f39h6b";
     };
     meta.homepage = "https://github.com/chipsenkbeil/distant.nvim/";
   };
@@ -3298,24 +3310,24 @@ final: prev:
 
   dressing-nvim = buildVimPlugin {
     pname = "dressing.nvim";
-    version = "2024-03-13";
+    version = "2024-05-16";
     src = fetchFromGitHub {
       owner = "stevearc";
       repo = "dressing.nvim";
-      rev = "18e5beb3845f085b6a33c24112b37988f3f93c06";
-      sha256 = "0pvkm9s0lg0vlk7qbn1sjf6sis3i3xba1824xml631bg6hahw37l";
+      rev = "572314728cb1ce012e825fd66331f52c94acac12";
+      sha256 = "1i65g5qlk2i16d74frpwra8m8cvvcwj6d1hncd2gdk1h4pssxgyc";
     };
     meta.homepage = "https://github.com/stevearc/dressing.nvim/";
   };
 
   dropbar-nvim = buildVimPlugin {
     pname = "dropbar.nvim";
-    version = "2024-04-20";
+    version = "2024-05-16";
     src = fetchFromGitHub {
       owner = "Bekaboo";
       repo = "dropbar.nvim";
-      rev = "e3c7de9f733587373959b220d5a1970c476a3d9f";
-      sha256 = "02ipdrrian2s0ddbjaga681sgflcw6nqcq707g7v1f094fc2rvj5";
+      rev = "9fc10fa1a34ec3e55b470962e4e94644611bd209";
+      sha256 = "135qc6ix0kav0knq4y5843525z5kh1rs2d56k71rk9986kb4vlk1";
     };
     meta.homepage = "https://github.com/Bekaboo/dropbar.nvim/";
   };
@@ -3334,12 +3346,12 @@ final: prev:
 
   edge = buildVimPlugin {
     pname = "edge";
-    version = "2024-03-27";
+    version = "2024-05-15";
     src = fetchFromGitHub {
       owner = "sainnhe";
       repo = "edge";
-      rev = "4e2eee9fbbad1c8fdcad8acda979d3828aee538d";
-      sha256 = "14a67viw948pln2avpkcanq3b8pb324f69h2np5yclb7fpijy0qr";
+      rev = "896dbba0bf99b0cc2764c55a170958c9b0e78595";
+      sha256 = "11i9xgg3yl1ccra8bdqjdrkha2gjk2hmxqdb98gzkg20yhqb12q4";
     };
     meta.homepage = "https://github.com/sainnhe/edge/";
   };
@@ -3395,24 +3407,24 @@ final: prev:
 
   efmls-configs-nvim = buildVimPlugin {
     pname = "efmls-configs-nvim";
-    version = "2024-04-19";
+    version = "2024-05-07";
     src = fetchFromGitHub {
       owner = "creativenull";
       repo = "efmls-configs-nvim";
-      rev = "2bd059ef683c232f9d6fa898bfe93173f0d4253e";
-      sha256 = "1phyrapplsn5iivl1vfnvg4nfilxdp8digcfy6d9khsbpggjhcmq";
+      rev = "f477186ecc12ac025a9948d17edc69242e1ee96b";
+      sha256 = "0mgljq23h4phk5r6dnkyijyv54j71h2cgvxjg4c8lgnqvas0cksl";
     };
     meta.homepage = "https://github.com/creativenull/efmls-configs-nvim/";
   };
 
   elixir-tools-nvim = buildVimPlugin {
     pname = "elixir-tools.nvim";
-    version = "2024-04-20";
+    version = "2024-05-02";
     src = fetchFromGitHub {
       owner = "elixir-tools";
       repo = "elixir-tools.nvim";
-      rev = "3c4f8344a341818417b3d75c04eb96d894cb4640";
-      sha256 = "1jwqflzdr9qk27gqsd0h4nfi2scq274l2rgbmyccybj5kmdjv654";
+      rev = "51eddb03a7a8c9f00d6415b356a4d3b75d8e75b6";
+      sha256 = "1fckakkqgagn7n6wr92333acxy7wi3c7ny6y1pxr88nigzb5p9sk";
     };
     meta.homepage = "https://github.com/elixir-tools/elixir-tools.nvim/";
   };
@@ -3492,24 +3504,24 @@ final: prev:
 
   everforest = buildVimPlugin {
     pname = "everforest";
-    version = "2024-03-27";
+    version = "2024-05-15";
     src = fetchFromGitHub {
       owner = "sainnhe";
       repo = "everforest";
-      rev = "4d67edd8d4701b00cee37073d53053a650264541";
-      sha256 = "1jlr4wjbmzjgr823csai7ii3yq2gppl8kchhqngp76gpf4i81795";
+      rev = "090cc3aa2e9ed0533625821191404bb7802da19e";
+      sha256 = "0wbifby4k2wkh5glsnxx4da4rx3mv3lfv8ff3nnchnxjfnbk9gnl";
     };
     meta.homepage = "https://github.com/sainnhe/everforest/";
   };
 
   executor-nvim = buildVimPlugin {
     pname = "executor.nvim";
-    version = "2024-03-12";
+    version = "2024-04-29";
     src = fetchFromGitHub {
       owner = "google";
       repo = "executor.nvim";
-      rev = "f6c3109f714d89641fb939b42044b2136f8520b7";
-      sha256 = "17j4x4wx50mhhafmp1c5rn644vsnx2473g9i32gg9hmzf27phcdn";
+      rev = "cb60faf7486cd6edae884a58fb9c2793bc4e75ea";
+      sha256 = "0ifzy31m11spjkdi3xc42r1zp9si38zgmp43a0bdxznbm6ka5hm5";
     };
     meta.homepage = "https://github.com/google/executor.nvim/";
   };
@@ -3540,12 +3552,12 @@ final: prev:
 
   far-vim = buildVimPlugin {
     pname = "far.vim";
-    version = "2024-01-15";
+    version = "2024-05-14";
     src = fetchFromGitHub {
       owner = "brooth";
       repo = "far.vim";
-      rev = "56e5d8a71fc12d5c78a4eed908fd9a7cabc405e2";
-      sha256 = "1gfgyrw0kmls6fgd1hzg3a7yf00jcxyj0qrc0jf3yab5vb02484n";
+      rev = "796d60857ae4dcdae78c64bae69902503cca31f4";
+      sha256 = "0vr4ybv4mhh01i820q1x1wnjyd6zn8dmchf8qyscjvpskhyzzpdx";
     };
     meta.homepage = "https://github.com/brooth/far.vim/";
   };
@@ -3564,24 +3576,24 @@ final: prev:
 
   fcitx-vim = buildVimPlugin {
     pname = "fcitx.vim";
-    version = "2023-08-03";
+    version = "2024-04-21";
     src = fetchFromGitHub {
       owner = "lilydjwg";
       repo = "fcitx.vim";
-      rev = "451d277bbd003d57da939fa129541dba5c63c154";
-      sha256 = "0hpx6n0fwi27xgd2qc7a73v897n7al6psza8m1pnacf9wb6lxsdw";
+      rev = "28d5bcc86d01a75911cf9c165d16840b7f0d4f98";
+      sha256 = "0f5k4v063ik43vzxgbzs38nzbyhjqfs2014v0b6xvdwkmp0cm3x6";
     };
     meta.homepage = "https://github.com/lilydjwg/fcitx.vim/";
   };
 
   feline-nvim = buildVimPlugin {
     pname = "feline.nvim";
-    version = "2024-04-19";
+    version = "2024-04-29";
     src = fetchFromGitHub {
       owner = "freddiehaddad";
       repo = "feline.nvim";
-      rev = "2aa8b757313cc01f7779865bef7c7cc391753bd8";
-      sha256 = "1xbaa553l7hc2jfgdj9q44xxgv8bkia51w54297p548w90by3kfl";
+      rev = "b43be71ebc3ff0e451a627b47751fd7747dc15fb";
+      sha256 = "0j5a6nsjv4nsrhvwlbnrm7cys94k62kx4450famb07b8q7miwi72";
     };
     meta.homepage = "https://github.com/freddiehaddad/feline.nvim/";
   };
@@ -3600,14 +3612,14 @@ final: prev:
 
   fern-vim = buildVimPlugin {
     pname = "fern.vim";
-    version = "2024-03-21";
+    version = "2024-05-08";
     src = fetchFromGitHub {
       owner = "lambdalisue";
-      repo = "fern.vim";
-      rev = "928d355e4c06e08eb3c9062485a661f1d37b01d1";
-      sha256 = "1siyqx08cb36dh61gy7hgmv0csdjbxnyam07is52w1x2pik0167h";
+      repo = "vim-fern";
+      rev = "a675dff495a0a0fd15663ebbae585c19825a64c5";
+      sha256 = "1bxd4x5iac6c1ca5vxw2y1bxxlzjhn6gkxfnw91q68cj7lik5575";
     };
-    meta.homepage = "https://github.com/lambdalisue/fern.vim/";
+    meta.homepage = "https://github.com/lambdalisue/vim-fern/";
   };
 
   ferret = buildVimPlugin {
@@ -3660,12 +3672,12 @@ final: prev:
 
   firenvim = buildVimPlugin {
     pname = "firenvim";
-    version = "2024-03-05";
+    version = "2024-05-12";
     src = fetchFromGitHub {
       owner = "glacambre";
       repo = "firenvim";
-      rev = "3363c140dca2ef0b89e2be0317917f077d752cd7";
-      sha256 = "1c9k848y320fkn4mbsxb3x7i5dfwms1waq12yig1fn9mspw83vqy";
+      rev = "fc72687977e1c34259c42f0e408655cf2638760d";
+      sha256 = "18q5lby9hlhbd1z2bpnm9s2vrfz88g19rq78hx10d1vp3f576jla";
     };
     meta.homepage = "https://github.com/glacambre/firenvim/";
   };
@@ -3685,12 +3697,12 @@ final: prev:
 
   flash-nvim = buildVimPlugin {
     pname = "flash.nvim";
-    version = "2023-10-17";
+    version = "2024-05-14";
     src = fetchFromGitHub {
       owner = "folke";
       repo = "flash.nvim";
-      rev = "48817af25f51c0590653bbc290866e4890fe1cbe";
-      sha256 = "0cf1ll91mhqw73p3y366fxylrq0y222jl2kb8sxf2s4gisxpppcg";
+      rev = "11a2e667d19d8f48c93c6ed2e2e525ac6b1b79be";
+      sha256 = "1z1hx7862zkslqm4znhl722rh5b6ajyl3051vic8bhwinmm0dhqp";
     };
     meta.homepage = "https://github.com/folke/flash.nvim/";
   };
@@ -3829,12 +3841,12 @@ final: prev:
 
   friendly-snippets = buildVimPlugin {
     pname = "friendly-snippets";
-    version = "2024-03-31";
+    version = "2024-05-16";
     src = fetchFromGitHub {
       owner = "rafamadriz";
       repo = "friendly-snippets";
-      rev = "ea068f1becd91bcd4591fceb6420d4335e2e14d3";
-      sha256 = "172lhjssr4yh14vjxbkwx02hsnyykhqmvzzr1bx4aaawd22x0bz6";
+      rev = "dd2fd1281d4b22e7b4a5bfafa3e142d958e251f2";
+      sha256 = "06w5m39zbkbqr85cj32dn44n11z4yji4k9iij722fci9cp66g2wl";
     };
     meta.homepage = "https://github.com/rafamadriz/friendly-snippets/";
   };
@@ -3877,12 +3889,12 @@ final: prev:
 
   fuzzy-nvim = buildVimPlugin {
     pname = "fuzzy.nvim";
-    version = "2023-05-15";
+    version = "2024-05-16";
     src = fetchFromGitHub {
       owner = "tzachar";
       repo = "fuzzy.nvim";
-      rev = "67a42ad2fa6d5ff41f0ef3cf69bb247410da5d7a";
-      sha256 = "1hkyvx98irnwqlsrpxsnfy3d289pvxpmgarkarakfkfhjw9nq2cq";
+      rev = "e29d96b5fab9bb9f613c86bd54ea9b7ef2de61bb";
+      sha256 = "1z7ksmhyg6dch7hf4257fvvyqfwzw4q6na1gy01irf379f89xlm2";
     };
     meta.homepage = "https://github.com/tzachar/fuzzy.nvim/";
   };
@@ -3935,26 +3947,26 @@ final: prev:
     meta.homepage = "https://github.com/gfanto/fzf-lsp.nvim/";
   };
 
-  fzf-lua = buildVimPlugin {
+  fzf-lua = buildNeovimPlugin {
     pname = "fzf-lua";
-    version = "2024-04-01";
+    version = "2024-05-14";
     src = fetchFromGitHub {
       owner = "ibhagwan";
       repo = "fzf-lua";
-      rev = "5a44f0ace88de57743af661c9507ef5075aa6e2e";
-      sha256 = "1r9bi2a56gg827s9a0yk6skm85jl0x4ky1qk2ram4aaxpjfc2c6y";
+      rev = "e412b1b0db62ccfccee41d994da87923eb2d8abd";
+      sha256 = "0vsq389n73inzlc4gy98025jbpjhwkzc2gwj3y15x03sqpvj2mvn";
     };
     meta.homepage = "https://github.com/ibhagwan/fzf-lua/";
   };
 
   fzf-vim = buildVimPlugin {
     pname = "fzf.vim";
-    version = "2024-03-22";
+    version = "2024-05-14";
     src = fetchFromGitHub {
       owner = "junegunn";
       repo = "fzf.vim";
-      rev = "45d96c9cb1213204479593236dfabf911ff15443";
-      sha256 = "12jr0svh80q6wchg59c4gwqgrbf1w9p1v3xdx4djs5vbshcdpxyc";
+      rev = "3656cbb9ef2e3955d1e60bb63be5e2413c0950d7";
+      sha256 = "0m2frn1ybslphwysmkmp8qx69panpmxjsss4jn1gf2knw1cmdkp0";
     };
     meta.homepage = "https://github.com/junegunn/fzf.vim/";
   };
@@ -4024,21 +4036,21 @@ final: prev:
     version = "2022-03-30";
     src = fetchFromGitHub {
       owner = "lambdalisue";
-      repo = "gina.vim";
+      repo = "vim-gina";
       rev = "ff6c2ddeca98f886b57fb42283c12e167d6ab575";
       sha256 = "09jlnpix2dy6kggiz96mrm5l1f9x1gl5afpdmfrxgkighn2rwpzq";
     };
-    meta.homepage = "https://github.com/lambdalisue/gina.vim/";
+    meta.homepage = "https://github.com/lambdalisue/vim-gina/";
   };
 
   git-blame-nvim = buildVimPlugin {
     pname = "git-blame.nvim";
-    version = "2024-04-13";
+    version = "2024-05-10";
     src = fetchFromGitHub {
       owner = "f-person";
       repo = "git-blame.nvim";
-      rev = "ad1d1365c9189d89797fe8d559677d5f55dc2830";
-      sha256 = "1saw496nx8pimq1sn0ws2k10cvwg4r5q5dizfclm1rpxfp13485j";
+      rev = "fb84fad97cd4b51caee3c865e8a33a0d413b77a8";
+      sha256 = "0yn410ld7xrclpd24smf088xaig9zhv01612yv2qjbz9w16q689d";
     };
     meta.homepage = "https://github.com/f-person/git-blame.nvim/";
   };
@@ -4117,12 +4129,12 @@ final: prev:
 
   gitsigns-nvim = buildNeovimPlugin {
     pname = "gitsigns.nvim";
-    version = "2024-04-20";
+    version = "2024-05-06";
     src = fetchFromGitHub {
       owner = "lewis6991";
       repo = "gitsigns.nvim";
-      rev = "035da036e68e509ed158414416c827d022d914bd";
-      sha256 = "1k5qd4k7izirgvc8yvg1hjgfx00f9fml7k0ayzk45lnhzb5c7bah";
+      rev = "805610a9393fa231f2c2b49cb521bfa413fadb3d";
+      sha256 = "0cxcq40i84l1jblvvn913hiz9qik62g0iij097prxgz2jx66lvdz";
     };
     meta.homepage = "https://github.com/lewis6991/gitsigns.nvim/";
   };
@@ -4177,12 +4189,12 @@ final: prev:
 
   go-nvim = buildVimPlugin {
     pname = "go.nvim";
-    version = "2024-04-19";
+    version = "2024-05-13";
     src = fetchFromGitHub {
       owner = "ray-x";
       repo = "go.nvim";
-      rev = "cbc6aca611cdc664f9bfc3c0a9aa9f9912fa9720";
-      sha256 = "1a1a7ddg70l74ngwwrygg5r39h1yzwws0myzy5jk837lmr909sb1";
+      rev = "db45cc91cf1bedb5fe5640cf71c452d43a87595a";
+      sha256 = "1g22fg37clakkg4013s48223k1rf9knicmld0adbsi7hx6cizbz4";
     };
     meta.homepage = "https://github.com/ray-x/go.nvim/";
   };
@@ -4273,12 +4285,12 @@ final: prev:
 
   grapple-nvim = buildVimPlugin {
     pname = "grapple.nvim";
-    version = "2024-04-11";
+    version = "2024-04-28";
     src = fetchFromGitHub {
       owner = "cbochs";
       repo = "grapple.nvim";
-      rev = "12172536620464f8cc124e07c6e3ccd306ea3c5c";
-      sha256 = "0rpiq47zb0ms6bbbd3c1ywmq5vc88132xcqwfnbfn3d2hrvbz8d1";
+      rev = "493f174a1ace3f2d55ba2191129e43b3875b9124";
+      sha256 = "0b55kkvjsw176510gic7jm2ym6nvllaz4wi91fihmmhdp7k9s988";
     };
     meta.homepage = "https://github.com/cbochs/grapple.nvim/";
   };
@@ -4333,48 +4345,48 @@ final: prev:
 
   gruvbox-material = buildVimPlugin {
     pname = "gruvbox-material";
-    version = "2024-03-27";
+    version = "2024-05-15";
     src = fetchFromGitHub {
       owner = "sainnhe";
       repo = "gruvbox-material";
-      rev = "80331fbbec9ba18590a17bc6b7d277d96c05c2b6";
-      sha256 = "14m7qwckgb6gc60gk0gr5pax3agxbs7c516pv6352nkrc2cdpakb";
+      rev = "8f504421acd991b786ae6796176a1c5878221052";
+      sha256 = "0nx7z1as9fcr8bq6q2n9wx7cw78acsvi0qc3sdcklfw5scrmpn3l";
     };
     meta.homepage = "https://github.com/sainnhe/gruvbox-material/";
   };
 
   gruvbox-material-nvim = buildVimPlugin {
     pname = "gruvbox-material.nvim";
-    version = "2024-04-19";
+    version = "2024-05-11";
     src = fetchFromGitHub {
       owner = "f4z3r";
       repo = "gruvbox-material.nvim";
-      rev = "9143e172617e708d6588f424772ef20340877dd9";
-      sha256 = "0ad1s2l7vd9h2ycva5wwxisadsiqlr55pfjas23cra8gw5ngn9cj";
+      rev = "186bfd9fc87ada2e408158bc0f72799b46370add";
+      sha256 = "0a19dsjhx50fpl2apwwllpvc9bznigc4f41lhyb0ydldi6x0rg13";
     };
     meta.homepage = "https://github.com/f4z3r/gruvbox-material.nvim/";
   };
 
   gruvbox-nvim = buildVimPlugin {
     pname = "gruvbox.nvim";
-    version = "2024-01-29";
+    version = "2024-05-07";
     src = fetchFromGitHub {
       owner = "ellisonleao";
       repo = "gruvbox.nvim";
-      rev = "6e4027ae957cddf7b193adfaec4a8f9e03b4555f";
-      sha256 = "1kk38xpwqlzvm3rgdii25nyxd8bcsgjjzin3a7sb0kyg5x3ynscd";
+      rev = "c442515506caa166118e157980f62a9ac24fa8c3";
+      sha256 = "07yp690ybjknlczbdglhrb9mdalf13s9pf190kv20a2yx8ipj1yq";
     };
     meta.homepage = "https://github.com/ellisonleao/gruvbox.nvim/";
   };
 
   guard-collection = buildVimPlugin {
     pname = "guard-collection";
-    version = "2023-11-13";
+    version = "2024-05-10";
     src = fetchFromGitHub {
       owner = "nvimdev";
       repo = "guard-collection";
-      rev = "13e00d19f418d68977c6bc803f0d23d09dce580d";
-      sha256 = "1zhq99hf722m5m842ghadj9akmb0y1sqkpmbhhk15jynnvv16ab6";
+      rev = "78df199510b9c8e2a1da0cdf71a01c4f6009a47d";
+      sha256 = "01y36ra8xrlr2s7lbxz5zw923rdhrnqwg0aa2hbpza7adwx8q0s0";
     };
     meta.homepage = "https://github.com/nvimdev/guard-collection/";
   };
@@ -4429,12 +4441,12 @@ final: prev:
 
   hardhat-nvim = buildVimPlugin {
     pname = "hardhat.nvim";
-    version = "2024-04-03";
+    version = "2024-05-12";
     src = fetchFromGitHub {
       owner = "TheSnakeWitcher";
       repo = "hardhat.nvim";
-      rev = "ad39b73b07aab7d1f48a624ba6f3ae35ad0a2e56";
-      sha256 = "0fpn0sif0y7xrp8f01fkz0qq0c29l6r5shc6q9bvl32dzp7n2ryp";
+      rev = "65657641b66d58ec5f3d165d6d76ac06e373e189";
+      sha256 = "0kxbdic7ssdan57ni3bs008jv01mb531i3xbdpcnbzk7i83mhh6r";
     };
     meta.homepage = "https://github.com/TheSnakeWitcher/hardhat.nvim/";
   };
@@ -4453,11 +4465,11 @@ final: prev:
 
   hare-vim = buildVimPlugin {
     pname = "hare.vim";
-    version = "2024-04-21";
+    version = "2024-05-12";
     src = fetchgit {
       url = "https://git.sr.ht/~sircmpwn/hare.vim";
-      rev = "960c7a342609f373414c1e7fe4be0dcc369716ff";
-      sha256 = "1dzpp050gl1a39vdmn57941qzxmyws0x1fqykq82babppn23hzpb";
+      rev = "188309129ac77590113f13d6f0da28c3f6f4d494";
+      sha256 = "0rz1hx3zljs3g5namlyzafvl12vi164vq3mqj02zd04hmm1rsr0b";
     };
     meta.homepage = "https://git.sr.ht/~sircmpwn/hare.vim";
   };
@@ -4488,24 +4500,24 @@ final: prev:
 
   haskell-snippets-nvim = buildVimPlugin {
     pname = "haskell-snippets.nvim";
-    version = "2024-03-25";
+    version = "2024-05-13";
     src = fetchFromGitHub {
       owner = "mrcjkb";
       repo = "haskell-snippets.nvim";
-      rev = "89a4f683b83a656e6ccb4ad0db97ad8863037f5d";
-      sha256 = "125drbzxbqv6hlpbplhzh5caim612mz6pmgw05bja2vr1cjpwsg7";
+      rev = "b00139b127f775f481f434bf9c60957185c74e4c";
+      sha256 = "03y9d1nk9v8q1hwcrjg4h47c5vglj6rzv4mjawbgid6mxh8gmsy8";
     };
     meta.homepage = "https://github.com/mrcjkb/haskell-snippets.nvim/";
   };
 
   haskell-tools-nvim = buildNeovimPlugin {
     pname = "haskell-tools.nvim";
-    version = "2024-04-21";
+    version = "2024-05-13";
     src = fetchFromGitHub {
       owner = "MrcJkb";
       repo = "haskell-tools.nvim";
-      rev = "4fdb49333093c0a8aae35cfac68e71cf595666ef";
-      sha256 = "0qgrkxmqzlp1z5zxkdzy37lwfc7y3bpqgiy17hxszdrjy6n44vih";
+      rev = "81115b0c1007e7cc2986b72c6efaa726d6deab06";
+      sha256 = "0sg3ckr3xamapz9wq4wdvrdngvgj25plcdja4bg8ik1l6rpwjigm";
     };
     meta.homepage = "https://github.com/MrcJkb/haskell-tools.nvim/";
   };
@@ -4560,12 +4572,12 @@ final: prev:
 
   heirline-nvim = buildVimPlugin {
     pname = "heirline.nvim";
-    version = "2024-02-14";
+    version = "2024-05-12";
     src = fetchFromGitHub {
       owner = "rebelot";
       repo = "heirline.nvim";
-      rev = "03cff30d7e7d3ba6fdc00925f015822f79cef908";
-      sha256 = "1bw4077h3cv01wnz0gv5qkdyxi8naszkgl11zi9mqb54asl69c41";
+      rev = "c52391dc4428d503f65e6bcb1533e6334f22a136";
+      sha256 = "0hplfmqy9gx21ifqyj23ydq7zsm9v0kfhhqb4s9bjb1djx9209j4";
     };
     meta.homepage = "https://github.com/rebelot/heirline.nvim/";
   };
@@ -4596,23 +4608,23 @@ final: prev:
 
   highlight-undo-nvim = buildVimPlugin {
     pname = "highlight-undo.nvim";
-    version = "2023-09-20";
+    version = "2024-05-06";
     src = fetchFromGitHub {
       owner = "tzachar";
       repo = "highlight-undo.nvim";
-      rev = "50a6884a8476be04ecce8f1c4ed692c5000ef0a1";
-      sha256 = "09fmds9ibl6n4fgxmmypifnxpyc0slpinc2h5cvx0959i9ak0l13";
+      rev = "1ea1c79372d7d93c88fd97543880927b7635e3d2";
+      sha256 = "1lzml5yj3ak0rc4r2fmb1zpb9a01i5j6yk58m0qn960l2x5kav68";
     };
     meta.homepage = "https://github.com/tzachar/highlight-undo.nvim/";
   };
 
   himalaya-vim = buildVimPlugin {
     pname = "himalaya-vim";
-    version = "2024-01-01";
+    version = "2024-05-15";
     src = fetchgit {
       url = "https://git.sr.ht/~soywod/himalaya-vim";
-      rev = "d33295fe9b9ad2247b9e88eda2842eb2c0d9f078";
-      sha256 = "077jb1mlbwwrnhm295s5lzqjpzhrrd55zpvcgdqlsf5vizjr5xrb";
+      rev = "7d839d4ddb24b76fff748ebabf8a538c8cf79953";
+      sha256 = "1yrnyrc03csm1dx6cjsj8k5q3jyhk2cjfpc2rsh8l11gpin37s5h";
     };
     meta.homepage = "https://git.sr.ht/~soywod/himalaya-vim";
   };
@@ -4631,12 +4643,12 @@ final: prev:
 
   hmts-nvim = buildVimPlugin {
     pname = "hmts.nvim";
-    version = "2024-03-14";
+    version = "2024-05-07";
     src = fetchFromGitHub {
       owner = "calops";
       repo = "hmts.nvim";
-      rev = "473d74cf54da8f51aaa9993ec3e6bfae278eb47b";
-      sha256 = "14a6k53b002zvz336s6q5yznvyjfdn9y2qdnickhz2cwkrgr1hvf";
+      rev = "19a91816c123173a4551a6a04f2882338f20db1d";
+      sha256 = "1qw3b7zsp467bg8npingba5jsiiywyr0mgjhk8khvjnb1hjyld5w";
     };
     meta.homepage = "https://github.com/calops/hmts.nvim/";
   };
@@ -4667,12 +4679,12 @@ final: prev:
 
   hop-nvim = buildVimPlugin {
     pname = "hop.nvim";
-    version = "2024-04-21";
+    version = "2024-04-25";
     src = fetchFromGitHub {
       owner = "smoka7";
       repo = "hop.nvim";
-      rev = "059e88e9dcaad3280ea1fd5c757f6904f274aed5";
-      sha256 = "1m5li7gy18d4z2fzzm6ipghn67m2i9a5fq7v1l6qy3vxgh9vzrq7";
+      rev = "6ff23501a1fd1c75c91dfd99ff5befcfdb02c11d";
+      sha256 = "0a621aljh16apa8vc6nf4l4h2h7amxdwx5hqw3fmiipxc9g9cczr";
     };
     meta.homepage = "https://github.com/smoka7/hop.nvim/";
   };
@@ -4691,12 +4703,12 @@ final: prev:
 
   hover-nvim = buildVimPlugin {
     pname = "hover.nvim";
-    version = "2024-03-07";
+    version = "2024-05-05";
     src = fetchFromGitHub {
       owner = "lewis6991";
       repo = "hover.nvim";
-      rev = "1084aa544477cf878d466cacaec0d8d4692c7360";
-      sha256 = "0f80nhm6lfa6nph6a4w7748ggvmwg2wh29nwv1sniakjvnk0vr6b";
+      rev = "82684ebd5f2a812d6d05a629b14109618b54cbfc";
+      sha256 = "1d7f9sfl6455799ra9fvyvmwcrs8803xgmsp0qb9rgw2n37ky22i";
     };
     meta.homepage = "https://github.com/lewis6991/hover.nvim/";
   };
@@ -4715,7 +4727,7 @@ final: prev:
 
   hydra-nvim = buildVimPlugin {
     pname = "hydra.nvim";
-    version = "2024-03-15";
+    version = "2024-03-14";
     src = fetchFromGitHub {
       owner = "nvimtools";
       repo = "hydra.nvim";
@@ -4787,12 +4799,12 @@ final: prev:
 
   image-nvim = buildNeovimPlugin {
     pname = "image.nvim";
-    version = "2024-04-18";
+    version = "2024-05-14";
     src = fetchFromGitHub {
       owner = "3rd";
       repo = "image.nvim";
-      rev = "301de7919b2c0378cb7a782663f67abbcb198b17";
-      sha256 = "0cxqffdync3hfg7xfahwnsd5rwz1gd2mqcgsgm615qbx364as8d9";
+      rev = "b979fa1194443c97dd8cb6053a4cec163c9048f5";
+      sha256 = "0x1v1flsghf3v78mfsnkcp03d45i10c668imkxqs9zylsxmpnrpf";
     };
     meta.homepage = "https://github.com/3rd/image.nvim/";
   };
@@ -4823,12 +4835,12 @@ final: prev:
 
   inc-rename-nvim = buildVimPlugin {
     pname = "inc-rename.nvim";
-    version = "2024-04-02";
+    version = "2024-05-13";
     src = fetchFromGitHub {
       owner = "smjonas";
       repo = "inc-rename.nvim";
-      rev = "5e03e986625961d1fac296d1bf332a6510c3add6";
-      sha256 = "0zcii0ypqv66xmy4w964kry4zij87fx9mckxifck0xy1y79ncp7r";
+      rev = "7c6125b1ee476b56708a6518a37b2a3357f57bfc";
+      sha256 = "0h7mngb02gdcp091nx4bjwpqh1a12qx7cbp2m6qdp4n3dfk6lxqr";
     };
     meta.homepage = "https://github.com/smjonas/inc-rename.nvim/";
   };
@@ -4991,12 +5003,12 @@ final: prev:
 
   iron-nvim = buildVimPlugin {
     pname = "iron.nvim";
-    version = "2024-04-02";
+    version = "2024-05-16";
     src = fetchFromGitHub {
       owner = "Vigemus";
       repo = "iron.nvim";
-      rev = "f6f199e3d353fc5761e2feda63b569a98897c66b";
-      sha256 = "1bwqval3lr12cqivfmmvxdi6da07000xbsn2ygiz4ym1a0a9jg5v";
+      rev = "0525058037bb0a600cb0850cb5f5b440f631b826";
+      sha256 = "0ylada692n1q2djscir70qqyxqpw3g6m5al4d3pmhnhabara5262";
     };
     meta.homepage = "https://github.com/Vigemus/iron.nvim/";
   };
@@ -5076,12 +5088,12 @@ final: prev:
 
   jq-vim = buildVimPlugin {
     pname = "jq.vim";
-    version = "2023-10-17";
+    version = "2024-04-29";
     src = fetchFromGitHub {
       owner = "vito-c";
       repo = "jq.vim";
-      rev = "6f10c6977d46cbb3b3d0f2170e726f36af588bc2";
-      sha256 = "0fzzqixnzhv2k8dhznn9yzx6h4ivc960dbj7qlbp3czs9fvs8x76";
+      rev = "39df435b321e8e741ed150fbab4a27e63e0604d1";
+      sha256 = "0f0xb2pgk7sd7kn0c4az8zwxmb8m61nrnb17wjf557yixavc6nh6";
     };
     meta.homepage = "https://github.com/vito-c/jq.vim/";
   };
@@ -5100,24 +5112,25 @@ final: prev:
 
   jsonfly-nvim = buildVimPlugin {
     pname = "jsonfly.nvim";
-    version = "2024-04-19";
+    version = "2024-05-12";
     src = fetchFromGitHub {
       owner = "Myzel394";
       repo = "jsonfly.nvim";
-      rev = "e47fd7713b083120af6cdb1548de8af513a0ec6f";
-      sha256 = "0wnjzqx68kqwza2pnaazmp1l986pys86ncj8hrdfcp4nvmz2i3xv";
+      rev = "5a2a67bff2f8e3347dea82bd74d25bfe248bf637";
+      sha256 = "18lmrccnhl2czbffnjk2z5n7pprjlk11vjvjw1jry8lgicfhvxv8";
+      fetchSubmodules = true;
     };
     meta.homepage = "https://github.com/Myzel394/jsonfly.nvim/";
   };
 
   julia-vim = buildVimPlugin {
     pname = "julia-vim";
-    version = "2023-12-15";
+    version = "2024-04-23";
     src = fetchFromGitHub {
       owner = "JuliaEditorSupport";
       repo = "julia-vim";
-      rev = "20542b50610e075e5f4199187800ede2425f6cb8";
-      sha256 = "02yy03w15s4f779qphg2smcsa6dka8vspsyixqajc4w9g7y1si7k";
+      rev = "16b0cc336eb1b74205396a7677940d88976e2365";
+      sha256 = "0r34z1c760h86axrihxg5fhz945710p29j8xc0xdr2lyv2d17kdn";
     };
     meta.homepage = "https://github.com/JuliaEditorSupport/julia-vim/";
   };
@@ -5136,12 +5149,12 @@ final: prev:
 
   kanagawa-nvim = buildVimPlugin {
     pname = "kanagawa.nvim";
-    version = "2024-02-28";
+    version = "2024-04-29";
     src = fetchFromGitHub {
       owner = "rebelot";
       repo = "kanagawa.nvim";
-      rev = "bfa818c7bf6259152f1d89cf9fbfba3554c93695";
-      sha256 = "0kjrk5j2jy19q9q684spc0xfgjs8xavjr9zd98idz13yz21yfakr";
+      rev = "860e4f80df71221d18bf2cd9ef1deb4d364274d2";
+      sha256 = "1cmlv5r9ckihk0y496lr5zy2baks2qxkvfnd0l49bv3rp9zfbym1";
     };
     meta.homepage = "https://github.com/rebelot/kanagawa.nvim/";
   };
@@ -5244,36 +5257,36 @@ final: prev:
 
   lazy-lsp-nvim = buildVimPlugin {
     pname = "lazy-lsp.nvim";
-    version = "2024-04-16";
+    version = "2024-05-01";
     src = fetchFromGitHub {
       owner = "dundalek";
       repo = "lazy-lsp.nvim";
-      rev = "19d2a4de3a57deed4aab304704c1f5e77454f4f3";
-      sha256 = "089drz8djyhsksi19ixcpfnci7ag121gsj17cq2a91l8m430j0y4";
+      rev = "17deb64279389056b6edd4b0619d8dc391798b6a";
+      sha256 = "0lzihyajpjmj8g0jqbm5mgdkafbpc061bwjrsryswvgan1j5y5bv";
     };
     meta.homepage = "https://github.com/dundalek/lazy-lsp.nvim/";
   };
 
   lazy-nvim = buildVimPlugin {
     pname = "lazy.nvim";
-    version = "2024-03-29";
+    version = "2024-05-16";
     src = fetchFromGitHub {
       owner = "folke";
       repo = "lazy.nvim";
-      rev = "31ddbea7c10b6920c9077b66c97951ca8682d5c8";
-      sha256 = "0yb46njab5jid29fx6cl6and583pmnhysz637b18xcil5x0my8ik";
+      rev = "05240b41548c4245a04d34ee54f789e824129991";
+      sha256 = "1if5nq5z329l815nzrqs383ycck9s3hm5mhvz2ar001alszg4azc";
     };
     meta.homepage = "https://github.com/folke/lazy.nvim/";
   };
 
   lazygit-nvim = buildVimPlugin {
     pname = "lazygit.nvim";
-    version = "2024-03-24";
+    version = "2024-05-13";
     src = fetchFromGitHub {
       owner = "kdheepak";
       repo = "lazygit.nvim";
-      rev = "0ada6c6e7e138df92f5009b6952f4ac41248305a";
-      sha256 = "1jc8s1gwa1xzlvk5ysarhbm8ywz1hc5kfbdfxvqbl8bcrfi761ph";
+      rev = "ad3e1ea592f9d13e86e0d4e850224d9d78069508";
+      sha256 = "19prmdslqjbk40wd60is27zwsspsvxi5lsk5wp9yry5s7wzjrw7x";
     };
     meta.homepage = "https://github.com/kdheepak/lazygit.nvim/";
   };
@@ -5316,24 +5329,24 @@ final: prev:
 
   leap-nvim = buildVimPlugin {
     pname = "leap.nvim";
-    version = "2024-04-12";
+    version = "2024-05-14";
     src = fetchFromGitHub {
       owner = "ggandor";
       repo = "leap.nvim";
-      rev = "626be4c4ec040aeaf6466c9aae17ee0ab09f1a5b";
-      sha256 = "1glf2xf4frr1in0yyar3aybmhrymrn5lzc261jdflpi749yfhadi";
+      rev = "b1ecfb63c0b8babfd0dcd6b5ca6de37bbf3526cd";
+      sha256 = "0sp3zbxl3lq80aw7k64cnkbr1m6liq41spgykjx07js32pwzw4mx";
     };
     meta.homepage = "https://github.com/ggandor/leap.nvim/";
   };
 
   legendary-nvim = buildVimPlugin {
     pname = "legendary.nvim";
-    version = "2024-04-19";
+    version = "2024-05-10";
     src = fetchFromGitHub {
       owner = "mrjones2014";
       repo = "legendary.nvim";
-      rev = "02a7799750a56865c58e3ea58e13b19ae1d2dc31";
-      sha256 = "1y7v6xa9n620vlzcvvcf7xc1pfbzidz7ybr7yf1k30gyv3sxpp4j";
+      rev = "33108b19edadee8c2758f6bc574cc8335fdf89fb";
+      sha256 = "1w9zchqpbf3nvdxdx7xv5wy4my8xknnxwgcf3hvlycvxsg001xxd";
     };
     meta.homepage = "https://github.com/mrjones2014/legendary.nvim/";
   };
@@ -5484,12 +5497,12 @@ final: prev:
 
   limelight-vim = buildVimPlugin {
     pname = "limelight.vim";
-    version = "2022-08-03";
+    version = "2024-04-30";
     src = fetchFromGitHub {
       owner = "junegunn";
       repo = "limelight.vim";
-      rev = "86aaec1700b27618d33d6182f44691d84d2cb6e5";
-      sha256 = "1a07gsrzbwsdbwm56rmh7k83kxp16awclgf51i0a15zpgwl2kv01";
+      rev = "785c1e17fe90c587ebca88920baa3146cd6e30fa";
+      sha256 = "0r97jh94r09a1c2vap7ybdn5kqpm24xwfsl9fxhvfhj6mlf1n2hm";
     };
     meta.homepage = "https://github.com/junegunn/limelight.vim/";
   };
@@ -5676,12 +5689,12 @@ final: prev:
 
   lsp-zero-nvim = buildVimPlugin {
     pname = "lsp-zero.nvim";
-    version = "2024-04-19";
+    version = "2024-05-08";
     src = fetchFromGitHub {
       owner = "VonHeikemen";
       repo = "lsp-zero.nvim";
-      rev = "b93f040edd57888cd6a1e7d9dee47dddc4463f8f";
-      sha256 = "02nhnm7lfdrx6yfwm754khndkq4732qnv99j91d46q68xi305p0n";
+      rev = "f12d50716e8e59ea9f5cf484eac6968c33a95917";
+      sha256 = "07dsgbgqmdlv2lv498lwzb8vq7fl4hdlr4psym6ilssmqjc6xkx2";
     };
     meta.homepage = "https://github.com/VonHeikemen/lsp-zero.nvim/";
   };
@@ -5711,12 +5724,12 @@ final: prev:
 
   lsp_signature-nvim = buildVimPlugin {
     pname = "lsp_signature.nvim";
-    version = "2024-03-17";
+    version = "2024-05-10";
     src = fetchFromGitHub {
       owner = "ray-x";
       repo = "lsp_signature.nvim";
-      rev = "c6aeb2f1d2538bbdfdaab1664d9d4c3c75aa9db8";
-      sha256 = "11njh62m56az4mmvzsqh2pm852bv1c1zp1m92ma4q5xgq2jvpg1v";
+      rev = "aed5d1162b0f07bb3af34bedcc5f70a2b6466ed8";
+      sha256 = "11x1mv3bzg7d9k2s69766p7abrzbdnv4knj6yx06b6vngdk2x03z";
     };
     meta.homepage = "https://github.com/ray-x/lsp_signature.nvim/";
   };
@@ -5747,12 +5760,12 @@ final: prev:
 
   lspsaga-nvim = buildVimPlugin {
     pname = "lspsaga.nvim";
-    version = "2024-03-31";
+    version = "2024-05-16";
     src = fetchFromGitHub {
       owner = "nvimdev";
       repo = "lspsaga.nvim";
-      rev = "a4d442896a9ff1f83ee3db965d81b659ebc977d5";
-      sha256 = "0567ckm6aq985md5mccy1zz6q409fk6r682h7vpfslz3iic6q6l6";
+      rev = "9b33a6c2a2cc53f3b3897623b5a650916c8c2345";
+      sha256 = "0wql9wv51aqwazkl6i7373hdddzjr5zpdw2injjvdg9fhxb0g738";
     };
     meta.homepage = "https://github.com/nvimdev/lspsaga.nvim/";
   };
@@ -5795,12 +5808,12 @@ final: prev:
 
   luasnip = buildNeovimPlugin {
     pname = "luasnip";
-    version = "2024-04-16";
+    version = "2024-05-16";
     src = fetchFromGitHub {
       owner = "l3mon4d3";
       repo = "luasnip";
-      rev = "03c8e67eb7293c404845b3982db895d59c0d1538";
-      sha256 = "1abfssd3352kp7r54rnbl85cjz1cbxl4w48vr437k1dr6b3zcgcq";
+      rev = "78296bfabf756dbb6c7134aa219e75564dddf40f";
+      sha256 = "14z095b95qaxvpaz22pfls4by59fdxqjbkkv7ggjhhhhf0y3by94";
       fetchSubmodules = true;
     };
     meta.homepage = "https://github.com/l3mon4d3/luasnip/";
@@ -5904,36 +5917,36 @@ final: prev:
 
   mason-lspconfig-nvim = buildVimPlugin {
     pname = "mason-lspconfig.nvim";
-    version = "2024-04-06";
+    version = "2024-05-11";
     src = fetchFromGitHub {
       owner = "williamboman";
       repo = "mason-lspconfig.nvim";
-      rev = "44509689b9bf3984d729cc264aacb31cb7f41668";
-      sha256 = "1z65m3hfx1avi4wfzsf8ypin5d37j3mcipay9rnriwhc8q8vwbb1";
+      rev = "9ae570e206360e47d30b4c35a4550c165f4ea7b7";
+      sha256 = "147dhkrqz8fiwpafayk0ww685ncijjzxxd21nf93lagra9rx2l75";
     };
     meta.homepage = "https://github.com/williamboman/mason-lspconfig.nvim/";
   };
 
   mason-tool-installer-nvim = buildVimPlugin {
     pname = "mason-tool-installer.nvim";
-    version = "2024-04-11";
+    version = "2024-05-11";
     src = fetchFromGitHub {
       owner = "WhoIsSethDaniel";
       repo = "mason-tool-installer.nvim";
-      rev = "b129892f783740e6cf741f2ea09fa5dd512aa584";
-      sha256 = "08152z7smaxv82v7ivp92n58lvr3ys7976795k0pxi8a99qj9kw7";
+      rev = "c1fbdcb0d8d1295314f1612c4a247253e70299d9";
+      sha256 = "1pxfnflbklpi7y71h7yq4ac20nimxc1fqh4kpxl8hifqnqgbllrs";
     };
     meta.homepage = "https://github.com/WhoIsSethDaniel/mason-tool-installer.nvim/";
   };
 
   mason-nvim = buildVimPlugin {
     pname = "mason.nvim";
-    version = "2024-03-21";
+    version = "2024-05-14";
     src = fetchFromGitHub {
       owner = "williamboman";
       repo = "mason.nvim";
-      rev = "751b1fcbf3d3b783fcf8d48865264a9bcd8f9b10";
-      sha256 = "1aaf19a4iqh8ayh4fghgs7inyg01fd7pdk3qr2pgz12mbawm62d9";
+      rev = "49ff59aded1047a773670651cfa40e76e63c6377";
+      sha256 = "1w9hzrnm0iiaha0c6qwbdjj94c5yq9837rjy7hzx2aaww37frbkm";
     };
     meta.homepage = "https://github.com/williamboman/mason.nvim/";
   };
@@ -6048,12 +6061,12 @@ final: prev:
 
   mini-nvim = buildVimPlugin {
     pname = "mini.nvim";
-    version = "2024-04-18";
+    version = "2024-05-12";
     src = fetchFromGitHub {
       owner = "echasnovski";
       repo = "mini.nvim";
-      rev = "e623d29561746637b49d30d6434338f88f44e856";
-      sha256 = "1if6r4w7qpi3d0z1zdwfwz211n5rfiizxvjjsywdb4659ap5b0mw";
+      rev = "c333187fcc76d7e772dac32c2a440a949fe34be4";
+      sha256 = "1mdqavyq7aar03c1za5z4ca7zgpb2knyy8zz0xlcxjz67q093zcr";
     };
     meta.homepage = "https://github.com/echasnovski/mini.nvim/";
   };
@@ -6084,12 +6097,12 @@ final: prev:
 
   mkdnflow-nvim = buildVimPlugin {
     pname = "mkdnflow.nvim";
-    version = "2024-04-18";
+    version = "2024-04-25";
     src = fetchFromGitHub {
       owner = "jakewvincent";
       repo = "mkdnflow.nvim";
-      rev = "3486f98dfed4cfbfa83922f73c7189cc88e9e2f2";
-      sha256 = "055kcpcjbr011rmccns63k21sg8x24yn9f2r45n30pl92irpvmqa";
+      rev = "4c8890890426d57f20fc6d459c7631e0bbb50975";
+      sha256 = "1vwqg20d83gcfjwmay6yz96n4qnjlampkw58i9r03s0k3kwyik28";
     };
     meta.homepage = "https://github.com/jakewvincent/mkdnflow.nvim/";
   };
@@ -6120,12 +6133,12 @@ final: prev:
 
   modus-themes-nvim = buildVimPlugin {
     pname = "modus-themes.nvim";
-    version = "2024-04-16";
+    version = "2024-05-14";
     src = fetchFromGitHub {
       owner = "miikanissi";
       repo = "modus-themes.nvim";
-      rev = "08b7268c59f6d4b4030107d9b9fa934f4063d9e7";
-      sha256 = "10f9m8jji4yq7pxbrk46wi2s4awvshm8hi6wq50ckwsabfn1wjb5";
+      rev = "bed70e9562d83852f40e4b5b0bd92b4fd9d4323c";
+      sha256 = "1jbwl34x6hn7y7smz4kww6y4as7qykcfd99y8jhp8af1b8c7rjzs";
     };
     meta.homepage = "https://github.com/miikanissi/modus-themes.nvim/";
   };
@@ -6144,12 +6157,12 @@ final: prev:
 
   molten-nvim = buildVimPlugin {
     pname = "molten-nvim";
-    version = "2024-04-19";
+    version = "2024-05-10";
     src = fetchFromGitHub {
       owner = "benlubas";
       repo = "molten-nvim";
-      rev = "f3a40c744d177862682f0787eef7e5ab0f4e0118";
-      sha256 = "1p9x9zqb3lsi6gzp9n0yh62w69im265yg2xp1dfhvzg3nn2s7pkw";
+      rev = "ab9351baff839c2ea4b0c1b5d1ad8d4968c7f1c1";
+      sha256 = "16764rcq4y520i6y002vk3gq2vlrr62mbw0wvpr0nnv7z6gqrbis";
     };
     meta.homepage = "https://github.com/benlubas/molten-nvim/";
   };
@@ -6456,12 +6469,12 @@ final: prev:
 
   neo-tree-nvim = buildVimPlugin {
     pname = "neo-tree.nvim";
-    version = "2024-04-16";
+    version = "2024-05-15";
     src = fetchFromGitHub {
       owner = "nvim-neo-tree";
       repo = "neo-tree.nvim";
-      rev = "25bfdbe802eb913276bb83874b043be57bd70347";
-      sha256 = "12z784x1ij1j3dnh71dcx2a0vcz5pnlls00j01gadybxbz4r6y39";
+      rev = "6e20108c4a8128782f534f5fe90c757b44212ef6";
+      sha256 = "0awbglyhf9jqn7zpxbbmpb7ch85jc5l1lj6axi3amrz9866wdcfs";
     };
     meta.homepage = "https://github.com/nvim-neo-tree/neo-tree.nvim/";
   };
@@ -6480,24 +6493,24 @@ final: prev:
 
   neoconf-nvim = buildVimPlugin {
     pname = "neoconf.nvim";
-    version = "2024-04-20";
+    version = "2024-05-16";
     src = fetchFromGitHub {
       owner = "folke";
       repo = "neoconf.nvim";
-      rev = "19cd99ec623de29a9d0e649b606a13d1775058af";
-      sha256 = "16dj2b3vw9zv7p01qiyf6wnnn3lwrh271kx3b4gismg1zbbrhzwi";
+      rev = "f5717f0ff26189e6a7bc9c3ae705d9e6cff20a99";
+      sha256 = "099rhngmw5vqnh0jkgkbrnc5apvh06jqg3khrsap3m1s2snw5799";
     };
     meta.homepage = "https://github.com/folke/neoconf.nvim/";
   };
 
   neocord = buildVimPlugin {
     pname = "neocord";
-    version = "2024-04-20";
+    version = "2024-04-24";
     src = fetchFromGitHub {
       owner = "IogaMaster";
       repo = "neocord";
-      rev = "014e78cff9f1fc7b3b46ec67fdca68a91a9b7c65";
-      sha256 = "1dyw315fhh6fll1gxq764yqlrd7xb153y4g7dvc7rih9rnqi3h4m";
+      rev = "aa7a58023166533da83ca7b11c0d2569e45d7381";
+      sha256 = "1x4mddm4ax3chmk996w5dw8rzxa7yap356rc68rq6p3016frsmd1";
     };
     meta.homepage = "https://github.com/IogaMaster/neocord/";
   };
@@ -6528,36 +6541,36 @@ final: prev:
 
   neoformat = buildVimPlugin {
     pname = "neoformat";
-    version = "2024-04-07";
+    version = "2024-05-15";
     src = fetchFromGitHub {
       owner = "sbdchd";
       repo = "neoformat";
-      rev = "4372abb846f43ec121df40e620682c985ebc8286";
-      sha256 = "1wk6vzigd6kbjfqfbayv5jbrr9lvmkxqc9b4fj5r90qqcqmfp399";
+      rev = "34d4d89fea22645b16f69f818dcb7b6b682b0c1a";
+      sha256 = "0881raz42f4wsb1c10kwjx56biv4k9r6dxlnpiarwmpj6mag952l";
     };
     meta.homepage = "https://github.com/sbdchd/neoformat/";
   };
 
   neogen = buildVimPlugin {
     pname = "neogen";
-    version = "2024-03-23";
+    version = "2024-05-13";
     src = fetchFromGitHub {
       owner = "danymat";
       repo = "neogen";
-      rev = "0daffcec249bf42275e322361fe55b89a05ff278";
-      sha256 = "1y5jxdkv5ap5f2rgb47xdz28gk376k5m3aql37wlzz51qpayb3aa";
+      rev = "6de0add4805165317ab7d3d36b5cef48b1b865f3";
+      sha256 = "080pwb0bwnd12ypwaa5hsy7sf8ha791gic5wnq8nm8pzyxz2nbiv";
     };
     meta.homepage = "https://github.com/danymat/neogen/";
   };
 
   neogit = buildVimPlugin {
     pname = "neogit";
-    version = "2024-04-16";
+    version = "2024-05-16";
     src = fetchFromGitHub {
       owner = "NeogitOrg";
       repo = "neogit";
-      rev = "0cae7abc30cb91d661f28257c331fcb5b5198e31";
-      sha256 = "0alyscd5qhh30p6bsd3qr2h7qsc57yb4g8c0g7abc5z0jsw58cg9";
+      rev = "9040f6face04f93e6903f25f038d67550fc9027b";
+      sha256 = "1sdkn3aapqd5kgbgm1gyam7fc46xzvq4f2ivayrdx9jln61pp8y5";
     };
     meta.homepage = "https://github.com/NeogitOrg/neogit/";
   };
@@ -6612,24 +6625,24 @@ final: prev:
 
   neorepl-nvim = buildVimPlugin {
     pname = "neorepl.nvim";
-    version = "2024-01-03";
+    version = "2024-04-21";
     src = fetchFromGitHub {
       owner = "ii14";
       repo = "neorepl.nvim";
-      rev = "e60b114217248907a3a1d27bab9988a092865ee0";
-      sha256 = "11h6r6929g15mg1sdclim1fmnw68sv90z3qjpxl46s0yvffhl3zd";
+      rev = "b927ffdbe67fb25ef9e8fd9324234e3d54cfb7f7";
+      sha256 = "1yd3kh5ddhldk8y4fc8gn55wh4a53g8c9x7x8313d98162383b2n";
     };
     meta.homepage = "https://github.com/ii14/neorepl.nvim/";
   };
 
   neorg = buildVimPlugin {
     pname = "neorg";
-    version = "2024-04-20";
+    version = "2024-05-13";
     src = fetchFromGitHub {
       owner = "nvim-neorg";
       repo = "neorg";
-      rev = "e03e82bdf6a2c3173f6e417a63087c7255533b81";
-      sha256 = "1n83wjzxd7y8cmbxgmszxlh3anb32cbrzk9zrlfdpawyn2dyby48";
+      rev = "1dbaa207d4fe077bd0a11870990c24f2fff0be5d";
+      sha256 = "1dffb9kb3jr5ffjfx351d2lymr8dywm3vm3z74542p5swmi5nbcx";
     };
     meta.homepage = "https://github.com/nvim-neorg/neorg/";
   };
@@ -6648,12 +6661,12 @@ final: prev:
 
   neoscroll-nvim = buildVimPlugin {
     pname = "neoscroll.nvim";
-    version = "2024-04-19";
+    version = "2024-04-30";
     src = fetchFromGitHub {
       owner = "karb94";
       repo = "neoscroll.nvim";
-      rev = "c513218d864d4ccfdaaea991c6de67bdb84bc116";
-      sha256 = "0i6xy9xqplv9aii148g1nnwv3shnjqiq9m0gab6gav9l6144mzz9";
+      rev = "e78657719485c5663b88e5d96ffcfb6a2fe3eec0";
+      sha256 = "19f7q9d0gx1g08c4cyd66c4ldznzgrzi632kv7z0cbk58hisac3d";
     };
     meta.homepage = "https://github.com/karb94/neoscroll.nvim/";
   };
@@ -6696,24 +6709,24 @@ final: prev:
 
   neotest = buildNeovimPlugin {
     pname = "neotest";
-    version = "2024-04-08";
+    version = "2024-04-28";
     src = fetchFromGitHub {
       owner = "nvim-neotest";
       repo = "neotest";
-      rev = "f03a78cef74db5638e4312e18b767294a90de8da";
-      sha256 = "1lvwmgicnqm5r7wg0325ijjfkyl5wyawx7hbzmlmr87g3z1cp62j";
+      rev = "5caac5cc235d495a2382bc2980630ef36ac87032";
+      sha256 = "1i1d6m17wf3p76nm75jk4ayd4zyhslmqi2pc7j8qx87391mnz2c4";
     };
     meta.homepage = "https://github.com/nvim-neotest/neotest/";
   };
 
   neotest-bash = buildVimPlugin {
     pname = "neotest-bash";
-    version = "2024-04-15";
+    version = "2024-05-06";
     src = fetchFromGitHub {
       owner = "rcasia";
       repo = "neotest-bash";
-      rev = "a3480f53300842922ecb79693e64bf51d4f22337";
-      sha256 = "1dbjv5zyw5nqqwgqagq0q2255byzgc9ckrzsbm2dc7svqp04hki9";
+      rev = "57eab5b80a5296dc3fc5b22112b3ed78da3a5732";
+      sha256 = "0sax4fbqykf2rbvhgmnhkz37ma7ck20dnpc78gns2hilg9ng5hrf";
       fetchSubmodules = true;
     };
     meta.homepage = "https://github.com/rcasia/neotest-bash/";
@@ -6782,12 +6795,12 @@ final: prev:
 
   neotest-go = buildVimPlugin {
     pname = "neotest-go";
-    version = "2024-02-24";
+    version = "2024-05-07";
     src = fetchFromGitHub {
       owner = "nvim-neotest";
       repo = "neotest-go";
-      rev = "6a2f996d89fe4631942e035b1c114544ee045043";
-      sha256 = "1jnsgkmsm2jmjd5zhkf3dhrbc04ysz3n0n28frsbvh839n3cdm7f";
+      rev = "27c80deab9cf5cb30b20ee407b3a6c7285518128";
+      sha256 = "11d8x7kqb4bxjwc4wdhxv5672i6svyj3k52p44711vlbcfal44j5";
     };
     meta.homepage = "https://github.com/nvim-neotest/neotest-go/";
   };
@@ -6806,12 +6819,12 @@ final: prev:
 
   neotest-gtest = buildVimPlugin {
     pname = "neotest-gtest";
-    version = "2023-12-10";
+    version = "2024-05-13";
     src = fetchFromGitHub {
       owner = "alfaix";
       repo = "neotest-gtest";
-      rev = "6e794ac91f4c347e2ea5ddeb23d594f8fc64f2a8";
-      sha256 = "0syyi8y064pm06nj0fczqqy5dnmmps3ykc4k06jl05pk3jfilhaa";
+      rev = "20c24948d52b63aee948bf8db2c82da90f580330";
+      sha256 = "1zrj3lcx8wai3nihrw59b8b03x9nw7725nafz3ls0923j6d6j6ys";
       fetchSubmodules = true;
     };
     meta.homepage = "https://github.com/alfaix/neotest-gtest/";
@@ -6819,24 +6832,24 @@ final: prev:
 
   neotest-haskell = buildVimPlugin {
     pname = "neotest-haskell";
-    version = "2024-04-21";
+    version = "2024-05-13";
     src = fetchFromGitHub {
       owner = "MrcJkb";
       repo = "neotest-haskell";
-      rev = "0367f44e49aa64d8b66fc9f736a61e9a60ce9526";
-      sha256 = "1yb9l9gac08sqx6maxhfhb1dj796l48gflx1l59l4fxm9sw7djkj";
+      rev = "febce450a3faf6f0fa012a43afe8b3086bd2eee6";
+      sha256 = "0dbz3wn7qdnpjlshkwq4x6wyzpj6p764hhjrrg0hamanhq1lqn8g";
     };
     meta.homepage = "https://github.com/MrcJkb/neotest-haskell/";
   };
 
   neotest-java = buildVimPlugin {
     pname = "neotest-java";
-    version = "2024-04-20";
+    version = "2024-05-08";
     src = fetchFromGitHub {
       owner = "rcasia";
       repo = "neotest-java";
-      rev = "68dd64e296c6da73aacd7ad795ac789e15087ee6";
-      sha256 = "03iap2dsawqj1c8jac6lm1knc16ikiwzgp7hnpv2k43vny52l492";
+      rev = "d0058e2f389cdcd7b0682aea76300a2fc1b9f0b7";
+      sha256 = "05q5flyls4pgk8rzvjdqw0igw45wz23ny61kyjh0ag2b3zky1y34";
     };
     meta.homepage = "https://github.com/rcasia/neotest-java/";
   };
@@ -6855,12 +6868,12 @@ final: prev:
 
   neotest-minitest = buildVimPlugin {
     pname = "neotest-minitest";
-    version = "2024-04-19";
+    version = "2024-04-29";
     src = fetchFromGitHub {
       owner = "zidhuss";
       repo = "neotest-minitest";
-      rev = "f56e5a84fc89aafb6e0be368a58ad1a6f8723444";
-      sha256 = "18xi436a164ly3d1wb0a8pzsa1fb8rshqm4r9rp0da85ms2nl14c";
+      rev = "0543bf4e997b2c970707cb297e2f74c438eb0653";
+      sha256 = "053j4xm84i5z2a2qpka7vgq462928mg81gwkwvr2jbxjm4h4sk2r";
     };
     meta.homepage = "https://github.com/zidhuss/neotest-minitest/";
   };
@@ -6879,12 +6892,12 @@ final: prev:
 
   neotest-phpunit = buildVimPlugin {
     pname = "neotest-phpunit";
-    version = "2024-03-21";
+    version = "2024-05-05";
     src = fetchFromGitHub {
       owner = "olimorris";
       repo = "neotest-phpunit";
-      rev = "5799a4ea84450af14461d24edbde43913f9b3008";
-      sha256 = "00dwkqikfsnbvnmjpv8n7m45g1pcvg20mhj04nfj2lv9pyylmwqh";
+      rev = "baae8dfa0a3aaacd9f0bb6845d6348f5bcdc48bb";
+      sha256 = "1szdxgydihik1pm0p7p9qa4mib5hv8gmk566fx6xmvzihyi72p3v";
     };
     meta.homepage = "https://github.com/olimorris/neotest-phpunit/";
   };
@@ -6927,12 +6940,12 @@ final: prev:
 
   neotest-rspec = buildVimPlugin {
     pname = "neotest-rspec";
-    version = "2024-04-05";
+    version = "2024-05-15";
     src = fetchFromGitHub {
       owner = "olimorris";
       repo = "neotest-rspec";
-      rev = "c1c3f36e1b1a23698534e6326e90876f87b773a4";
-      sha256 = "0yfd23mkvpzddgxxsfnzcix0qr4l1cjfk0i8crw8kzb01n6dh5v3";
+      rev = "48573d5882cbe8d8bcd3b735d9ee7705168b1b87";
+      sha256 = "00l3v77d3zgq47gbsgjl916yp735kyr9s0jizi1sr5yg7wypx2cx";
     };
     meta.homepage = "https://github.com/olimorris/neotest-rspec/";
   };
@@ -6987,12 +7000,12 @@ final: prev:
 
   neotest-zig = buildVimPlugin {
     pname = "neotest-zig";
-    version = "2023-12-10";
+    version = "2024-05-06";
     src = fetchFromGitHub {
       owner = "lawrence-laz";
       repo = "neotest-zig";
-      rev = "742f97f971a39d44b4832b432083608834a0e59c";
-      sha256 = "06sxdbxqfv2wzrw1v0hzsvy4cnynrym3irzi0c43gqiq7k1fksq4";
+      rev = "3b94c749e26e2c02e5f07aaea6149a7e417db1e7";
+      sha256 = "0irklycyjqjwns5w9jb92x3r012gkhrsjinggxvbwhlj2bkhq6b0";
     };
     meta.homepage = "https://github.com/lawrence-laz/neotest-zig/";
   };
@@ -7047,24 +7060,24 @@ final: prev:
 
   nerdcommenter = buildVimPlugin {
     pname = "nerdcommenter";
-    version = "2023-12-18";
+    version = "2024-05-13";
     src = fetchFromGitHub {
       owner = "preservim";
       repo = "nerdcommenter";
-      rev = "e361a44230860d616f799a337bc58f5218ab6e9c";
-      sha256 = "0cpmg8wa67kd3qhrqd4hbq2symcvkyfn4fwbs2l7mx5hvmabj36d";
+      rev = "7bb1f72e802a80e37bdda5f6906c69b5a93de1eb";
+      sha256 = "0rjgriqfkikcbsns1ridd5kx3msaak2632zng8jajxlslbcga1r3";
     };
     meta.homepage = "https://github.com/preservim/nerdcommenter/";
   };
 
   nerdtree = buildVimPlugin {
     pname = "nerdtree";
-    version = "2024-02-27";
+    version = "2024-05-14";
     src = fetchFromGitHub {
       owner = "preservim";
       repo = "nerdtree";
-      rev = "f3a4d8eaa8ac10305e3d53851c976756ea9dc8e8";
-      sha256 = "1rywf8z44z9vzg8x33qjvccjrn3avbcyqpkc6ba3ymb9hwhfhiig";
+      rev = "fbb71fcd90602e3ec77f40b864b5f9b437c496c5";
+      sha256 = "1x6gixsq9yn3afsj05wacxgh6ih00mdimjhlx8jn9cwjaxmg70v5";
     };
     meta.homepage = "https://github.com/preservim/nerdtree/";
   };
@@ -7083,12 +7096,12 @@ final: prev:
 
   netman-nvim = buildVimPlugin {
     pname = "netman.nvim";
-    version = "2024-02-19";
+    version = "2024-04-21";
     src = fetchFromGitHub {
       owner = "miversen33";
       repo = "netman.nvim";
-      rev = "d0ec9d4ca195b2c87bf46ab050130a2c806310c4";
-      sha256 = "0043r66vr10qwdd305q4ckizk8lkm0xy4wazm0yfhq37jwrbhh7d";
+      rev = "68eecb29d913d4f35efa9bd0e8636046f70f998f";
+      sha256 = "1102gyjcj2hb7lfsqgpp2aflhf61qk61l45zka8zcyg7xwlbbhav";
     };
     meta.homepage = "https://github.com/miversen33/netman.nvim/";
   };
@@ -7143,24 +7156,24 @@ final: prev:
 
   night-owl-nvim = buildVimPlugin {
     pname = "night-owl.nvim";
-    version = "2024-04-19";
+    version = "2024-05-02";
     src = fetchFromGitHub {
       owner = "oxfist";
       repo = "night-owl.nvim";
-      rev = "94aead739b6223feb19650077c9694e6c1c63fbf";
-      sha256 = "0baw75s3r09pf747rm3mni07pszkba5ykk1vky2lqq2ga7xplalf";
+      rev = "42b85926978c8cba6ed4a57c84a530449e59904b";
+      sha256 = "03fzkrs4qigrbc0rmj6zgfniyng6779hr0811x7i3r747b8p7ksz";
     };
     meta.homepage = "https://github.com/oxfist/night-owl.nvim/";
   };
 
   nightfox-nvim = buildVimPlugin {
     pname = "nightfox.nvim";
-    version = "2024-04-12";
+    version = "2024-04-28";
     src = fetchFromGitHub {
       owner = "EdenEast";
       repo = "nightfox.nvim";
-      rev = "ce0cdf8538c8c0b9c8fb2884d3d1090c8faf515d";
-      sha256 = "09hij99myk1ry8sik71sd2cdicaqrhidpkay6yzs0j67wr0705yv";
+      rev = "df75a6a94910ae47854341d6b5a6fd483192c0eb";
+      sha256 = "0x58pn7lg2l1nm24ry3a42l6vpi6inf1srbanwya01x0yrm74bwp";
     };
     meta.homepage = "https://github.com/EdenEast/nightfox.nvim/";
   };
@@ -7203,12 +7216,12 @@ final: prev:
 
   nlsp-settings-nvim = buildVimPlugin {
     pname = "nlsp-settings.nvim";
-    version = "2024-04-19";
+    version = "2024-05-16";
     src = fetchFromGitHub {
       owner = "tamago324";
       repo = "nlsp-settings.nvim";
-      rev = "78064fe0dbb67d2f449854bd2fe7fc2b1af0a8c0";
-      sha256 = "0yh9xalsj4y2yh7avabvnw2jj7b1nl1amsxmcxm9jiz0xw50nkbf";
+      rev = "103e764d3e733b89375cb7f877a5b70b0e0e125f";
+      sha256 = "10pw7c8fhqljdi65xpn19iwxfsbd4gfd0nxzyqjxa4xl3w9dyywk";
     };
     meta.homepage = "https://github.com/tamago324/nlsp-settings.nvim/";
   };
@@ -7239,12 +7252,12 @@ final: prev:
 
   no-neck-pain-nvim = buildVimPlugin {
     pname = "no-neck-pain.nvim";
-    version = "2024-03-29";
+    version = "2024-05-15";
     src = fetchFromGitHub {
       owner = "shortcuts";
       repo = "no-neck-pain.nvim";
-      rev = "34625be12649666b7ccb08761087cc97bb788552";
-      sha256 = "0g3vbsvxaf5ywaifffkhp0q0kmbw83xbmi7h7q1afdf10gi1xj24";
+      rev = "7c38c67fec5a29d9f4e9a59546a67dd2a26b5ff1";
+      sha256 = "0w365j4a480w0sw22h8aa5i6lisnmj2q33q0gdfbg3hx9swskmrr";
     };
     meta.homepage = "https://github.com/shortcuts/no-neck-pain.nvim/";
   };
@@ -7263,24 +7276,24 @@ final: prev:
 
   noice-nvim = buildVimPlugin {
     pname = "noice.nvim";
-    version = "2024-03-26";
+    version = "2024-05-16";
     src = fetchFromGitHub {
       owner = "folke";
       repo = "noice.nvim";
-      rev = "0cbe3f88d038320bdbda3c4c5c95f43a13c3aa12";
-      sha256 = "1plky0f7nmh6g62sgil366m54di9jd86xk7y0nq8pc4m8lv0ga6b";
+      rev = "2c49d4a7fdeaca930bb08a8239bdf5bccc26507b";
+      sha256 = "0slxiq7s1b0iars3p59bp2krk2zf2wr95qz9paa1jdkc6i7azzmf";
     };
     meta.homepage = "https://github.com/folke/noice.nvim/";
   };
 
   none-ls-nvim = buildVimPlugin {
     pname = "none-ls.nvim";
-    version = "2024-04-20";
+    version = "2024-05-14";
     src = fetchFromGitHub {
       owner = "nvimtools";
       repo = "none-ls.nvim";
-      rev = "88821b67e6007041f43b802f58e3d9fa9bfce684";
-      sha256 = "09mv5ndk0xnij3nv2p1qcm6k59xh0j2nl949960d24aln4h354dl";
+      rev = "10c976d633862b9fe16171f5f5f17732bc54e19f";
+      sha256 = "1xvvfqbxl1v4yls156wwx36qzjdipxs0whqzgsps27984fpvwpci";
     };
     meta.homepage = "https://github.com/nvimtools/none-ls.nvim/";
   };
@@ -7335,12 +7348,12 @@ final: prev:
 
   nui-nvim = buildNeovimPlugin {
     pname = "nui.nvim";
-    version = "2024-03-18";
+    version = "2024-05-06";
     src = fetchFromGitHub {
       owner = "MunifTanjim";
       repo = "nui.nvim";
-      rev = "cbd2668414331c10039278f558630ed19b93e69b";
-      sha256 = "1429x2c6j6nap3nzsmsnxflgbs7wbj0g3mi5d2kww8413qvl5gk6";
+      rev = "a3597dc88b53489d3fddbddbbd13787355253bb0";
+      sha256 = "1sg0b1vq6cggxw9vif7slp2362rw5xz2a0snhhmzz1frd2ckr72v";
     };
     meta.homepage = "https://github.com/MunifTanjim/nui.nvim/";
   };
@@ -7371,12 +7384,12 @@ final: prev:
 
   nvchad = buildVimPlugin {
     pname = "nvchad";
-    version = "2024-04-19";
+    version = "2024-05-03";
     src = fetchFromGitHub {
       owner = "nvchad";
       repo = "nvchad";
-      rev = "f8e6c59985f1d5f820f051395e88064a8d16ef2a";
-      sha256 = "1ss67kpn8lkgcdj90yjg69dfdy3w2v32znqc2nbl6hblgmxfakd4";
+      rev = "156eeef8ecae812acd79d5eb58070d734a6202c6";
+      sha256 = "1jpsiqkgml1x81vc0x2d94k3a3xwbmp7s5wnh9rfdnrrwc6zv5pq";
     };
     meta.homepage = "https://github.com/nvchad/nvchad/";
   };
@@ -7419,24 +7432,24 @@ final: prev:
 
   nvim-autopairs = buildVimPlugin {
     pname = "nvim-autopairs";
-    version = "2024-04-06";
+    version = "2024-05-16";
     src = fetchFromGitHub {
       owner = "windwp";
       repo = "nvim-autopairs";
-      rev = "4f41e5940bc0443fdbe5f995e2a596847215cd2a";
-      sha256 = "0cfi0wmqy8vrrf17s71jyg6c5s8ghb7xjapzhj9l9l6g1s7v9bxm";
+      rev = "b0b79e42a28f09719a7da9534c3731fa37319d9b";
+      sha256 = "0xaaazahwc4f5d1vb8g0y4gz70wqc65gihf7512r8llw3c5diix9";
     };
     meta.homepage = "https://github.com/windwp/nvim-autopairs/";
   };
 
   nvim-bacon = buildVimPlugin {
     pname = "nvim-bacon";
-    version = "2024-04-10";
+    version = "2024-05-09";
     src = fetchFromGitHub {
       owner = "Canop";
       repo = "nvim-bacon";
-      rev = "94f684baacf22c65e5ef889cfa943cfc90ee1cf4";
-      sha256 = "0b4xpmk6cv6k9h2vqk9773hszwy90d7y3fpjz1yqg9nxfvbdjp2b";
+      rev = "ad7b522ae85b7aab4981bcd34e9b513ce5849eda";
+      sha256 = "1baki6dfiahilkcgfdspbfj2mv3pf06nj7yamvranzpj04jadlx3";
     };
     meta.homepage = "https://github.com/Canop/nvim-bacon/";
   };
@@ -7455,12 +7468,12 @@ final: prev:
 
   nvim-bqf = buildVimPlugin {
     pname = "nvim-bqf";
-    version = "2024-03-29";
+    version = "2024-05-07";
     src = fetchFromGitHub {
       owner = "kevinhwang91";
       repo = "nvim-bqf";
-      rev = "52703d7adc3be3f7c09eea9a80c5b8caa615fb25";
-      sha256 = "030mqvi66rr05icqy2lix1v8sf3745a5v06288h6pq4vz4xj5a13";
+      rev = "7751b6ef9fbc3907478eaf23e866c4316a2ed1b4";
+      sha256 = "088s8n9xwkpcc5jyqa8hmrghbazzcqq44hxrlxp9zclqxpp29z16";
     };
     meta.homepage = "https://github.com/kevinhwang91/nvim-bqf/";
   };
@@ -7491,12 +7504,12 @@ final: prev:
 
   nvim-cmp = buildNeovimPlugin {
     pname = "nvim-cmp";
-    version = "2024-04-02";
+    version = "2024-05-12";
     src = fetchFromGitHub {
       owner = "hrsh7th";
       repo = "nvim-cmp";
-      rev = "ce16de5665c766f39c271705b17fff06f7bcb84f";
-      sha256 = "10i720fidv41421as9i2xp4d4kr69zfyvkxjhgv6h41fdi75070c";
+      rev = "24122371810089d390847d8ba66325c1f1aa64c0";
+      sha256 = "0s4va3b06agy070fkqghx460q20jddvni14gbvjdvgkaf56xn8f3";
     };
     meta.homepage = "https://github.com/hrsh7th/nvim-cmp/";
   };
@@ -7611,24 +7624,24 @@ final: prev:
 
   nvim-dap = buildVimPlugin {
     pname = "nvim-dap";
-    version = "2024-04-18";
+    version = "2024-05-16";
     src = fetchFromGitHub {
       owner = "mfussenegger";
       repo = "nvim-dap";
-      rev = "6ae8a14828b0f3bff1721a35a1dfd604b6a933bb";
-      sha256 = "0a75lxhzbwm66c1fa5b7zpsz3i7raljsbq4d3n5h8cfdv8hgcjch";
+      rev = "5a2f7121869394502521c52b2bc581ab22c69447";
+      sha256 = "17z6p952a5f027cpvrc0yi65784nc832hjdyv25igf3x1l6bd6ai";
     };
     meta.homepage = "https://github.com/mfussenegger/nvim-dap/";
   };
 
   nvim-dap-go = buildVimPlugin {
     pname = "nvim-dap-go";
-    version = "2024-03-25";
+    version = "2024-05-02";
     src = fetchFromGitHub {
       owner = "leoluz";
       repo = "nvim-dap-go";
-      rev = "36abe1d320cb61bfdf094d4e0fe815ef58f2302a";
-      sha256 = "1xvf1rag0jnhdr7bd29sdj49f7bbshn5gl10rg8axsb71kqir0a1";
+      rev = "5faf165f5062187320eaf9d177c3c1f647adc22e";
+      sha256 = "1ml1ln2psdb14bgrpa2zpalgqhimj0qzd28cnkzhhsdg49a19hyk";
     };
     meta.homepage = "https://github.com/leoluz/nvim-dap-go/";
   };
@@ -7647,12 +7660,12 @@ final: prev:
 
   nvim-dap-ui = buildVimPlugin {
     pname = "nvim-dap-ui";
-    version = "2024-03-19";
+    version = "2024-04-28";
     src = fetchFromGitHub {
       owner = "rcarriga";
       repo = "nvim-dap-ui";
-      rev = "edfa93f60b189e5952c016eee262d0685d838450";
-      sha256 = "00q07mb401gn1gw666xsc1sp1gvmxj9ilgblrlgjv51pq6vh4318";
+      rev = "5934302d63d1ede12c0b22b6f23518bb183fc972";
+      sha256 = "0qzbny9dlra0dyfhg4ljywrsnrq373xa9mzawj8nck3kbiv3ia6v";
     };
     meta.homepage = "https://github.com/rcarriga/nvim-dap-ui/";
   };
@@ -7671,12 +7684,12 @@ final: prev:
 
   nvim-dbee = buildVimPlugin {
     pname = "nvim-dbee";
-    version = "2024-01-13";
+    version = "2024-04-24";
     src = fetchFromGitHub {
       owner = "kndndrj";
       repo = "nvim-dbee";
-      rev = "513708655383f9253cb6d46523a2152a8d13e775";
-      hash = "sha256-HiceS+e8aQhrCUBqtLKwOZ2IRA7l0yHlHsF95rmMjhE=";
+      rev = "85622c8d95b53f62329627fd461c52fca7cb612b";
+      sha256 = "1nhbs8lniblx4cn9x232qlg6gj0vgmyzqqw49d0994ap9fx90dc2";
     };
     meta.homepage = "https://github.com/kndndrj/nvim-dbee/";
   };
@@ -7707,12 +7720,12 @@ final: prev:
 
   nvim-fzf = buildVimPlugin {
     pname = "nvim-fzf";
-    version = "2023-09-05";
+    version = "2024-04-28";
     src = fetchFromGitHub {
       owner = "vijaymarupudi";
       repo = "nvim-fzf";
-      rev = "bd095495146a2a827774ad3ad1ef0cc843b5e257";
-      sha256 = "0z7da3sfv5dng5aw259aj2r9ghi9hg8h58n9vrmw3jvf683jgzka";
+      rev = "c89b15aee136eeb4649901552da37a404415c356";
+      sha256 = "1w20gavhjj62alh51ssix8a88crr9xq63zhw5w5j32plpd0gnczp";
     };
     meta.homepage = "https://github.com/vijaymarupudi/nvim-fzf/";
   };
@@ -7731,12 +7744,12 @@ final: prev:
 
   nvim-gdb = buildVimPlugin {
     pname = "nvim-gdb";
-    version = "2023-10-14";
+    version = "2024-04-23";
     src = fetchFromGitHub {
       owner = "sakhnik";
       repo = "nvim-gdb";
-      rev = "c0328e23b815bbe55935945332c5e5dc88092792";
-      sha256 = "154vry38gq0kv2ya23pgnbby9hizivyamnv0vcag3g27nj7xk2a4";
+      rev = "9b149e6d215870e31a3712de93152c5b4febe23f";
+      sha256 = "0rnihq0dz8n60cii5hpd00xam51k5m5jj7lx5s6y4sa7v7dl7amc";
     };
     meta.homepage = "https://github.com/sakhnik/nvim-gdb/";
   };
@@ -7767,12 +7780,12 @@ final: prev:
 
   nvim-highlite = buildVimPlugin {
     pname = "nvim-highlite";
-    version = "2024-04-13";
+    version = "2024-04-30";
     src = fetchFromGitHub {
       owner = "Iron-E";
       repo = "nvim-highlite";
-      rev = "e1f68ff238802fdee67c3f8ac547c1832ae2b8ee";
-      sha256 = "1n1iqhn67q3fzff4kvqz2ikp5scjbb2wls267aamdqg8apq5dpq1";
+      rev = "2d35a04be004e11a1e90a9de98fd2e51847f8f53";
+      sha256 = "0szzbmwvhxzy818mv1cnw0ivaalshkifp40yzxgmlr0jkfby3g42";
     };
     meta.homepage = "https://github.com/Iron-E/nvim-highlite/";
   };
@@ -7803,12 +7816,12 @@ final: prev:
 
   nvim-jdtls = buildVimPlugin {
     pname = "nvim-jdtls";
-    version = "2024-03-07";
+    version = "2024-05-16";
     src = fetchFromGitHub {
       owner = "mfussenegger";
       repo = "nvim-jdtls";
-      rev = "8eb5f0dbe6e126b392ddcaf45893358619893e45";
-      sha256 = "04v31198sqrw18ycrxhz94zq4q9bn879cdlyc06f8fc2hwqnz1ya";
+      rev = "29255ea26dfb51ef0213f7572bff410f1afb002d";
+      sha256 = "1h3hdl99mb5r8mslcp7s78abyrrjjhmkndbif8c5iah7wmfnyq2c";
     };
     meta.homepage = "https://github.com/mfussenegger/nvim-jdtls/";
   };
@@ -7886,12 +7899,12 @@ final: prev:
 
   nvim-lint = buildVimPlugin {
     pname = "nvim-lint";
-    version = "2024-04-16";
+    version = "2024-05-16";
     src = fetchFromGitHub {
       owner = "mfussenegger";
       repo = "nvim-lint";
-      rev = "f098232d70cebe90e27404928c9bc19ca7a5a7b5";
-      sha256 = "1xnirwlnby8fr99qkcicwd1npmkx7i557jzvgxfv4m8f4b2vw923";
+      rev = "1f98d6c863f91706369d74aeb2eb3f02b2e96861";
+      sha256 = "1g5zryga6pjg5hm5475qszl3rd8s5iahds8qc2rjvqjkrh20h05h";
     };
     meta.homepage = "https://github.com/mfussenegger/nvim-lint/";
   };
@@ -7922,12 +7935,12 @@ final: prev:
 
   nvim-lspconfig = buildVimPlugin {
     pname = "nvim-lspconfig";
-    version = "2024-04-19";
+    version = "2024-05-16";
     src = fetchFromGitHub {
       owner = "neovim";
       repo = "nvim-lspconfig";
-      rev = "ed8b8a15acc441aec669f97d75f2c1f2ac8c8aa5";
-      sha256 = "0rqjcksb0dcvvxnc0r4n499xlkviwp2sbn29r8b1bnf68d7qnapx";
+      rev = "cee94b22adc96582d9136f85fb3b076feda8825c";
+      sha256 = "1gz5vwb0hdqaxi2xh9dl87rf1yc10xinh3w83vd02cr9h88n5qv0";
     };
     meta.homepage = "https://github.com/neovim/nvim-lspconfig/";
   };
@@ -7982,12 +7995,12 @@ final: prev:
 
   nvim-metals = buildVimPlugin {
     pname = "nvim-metals";
-    version = "2024-03-02";
+    version = "2024-05-02";
     src = fetchFromGitHub {
       owner = "scalameta";
       repo = "nvim-metals";
-      rev = "4f9bf0c821092f20dd34c1a4ea5b07b0500ff089";
-      sha256 = "05d2v6yfs60n4xli5c682nlczqnib9pg6hxp79fiidhdidrf9zfj";
+      rev = "c6268555d0b471262af78818f11a086ddf30688b";
+      sha256 = "1bzq2ybqhpsi0f7z14d2kvgn84xfj7zv7n2jpgk1ki0jsdw396xg";
     };
     meta.homepage = "https://github.com/scalameta/nvim-metals/";
   };
@@ -8042,12 +8055,12 @@ final: prev:
 
   nvim-nio = buildNeovimPlugin {
     pname = "nvim-nio";
-    version = "2024-04-04";
+    version = "2024-05-02";
     src = fetchFromGitHub {
       owner = "nvim-neotest";
       repo = "nvim-nio";
-      rev = "5800f585def265d52f1d8848133217c800bcb25d";
-      sha256 = "0y3afl42z41ymksk29al5knasmm9wmqzby860x8zj0i0mfb1q5k5";
+      rev = "8765cbc4d0c629c8158a5341e1b4305fd93c3a90";
+      sha256 = "0drzp2fyancyz57k8nkwc1bd7bksy1f8bpy92njiccpdflwhkyjm";
     };
     meta.homepage = "https://github.com/nvim-neotest/nvim-nio/";
   };
@@ -8078,24 +8091,24 @@ final: prev:
 
   nvim-nu = buildVimPlugin {
     pname = "nvim-nu";
-    version = "2023-03-07";
+    version = "2024-04-21";
     src = fetchFromGitHub {
       owner = "LhKipp";
       repo = "nvim-nu";
-      rev = "f45f36a97fb0ea6e39f08cc2fac7a2fb3dc3999b";
-      sha256 = "0sck8ac7f2b46yqv0v114jakf934z4z2x6pix0fiipgyfza2vfax";
+      rev = "64e1677db3319ec5900afa666a2c85c31adc0705";
+      sha256 = "0cgdky2zai7mfshac2szfq346i0ql9c4miax10hz76kb2nq8v7wx";
     };
     meta.homepage = "https://github.com/LhKipp/nvim-nu/";
   };
 
   nvim-osc52 = buildVimPlugin {
     pname = "nvim-osc52";
-    version = "2023-11-12";
+    version = "2024-05-13";
     src = fetchFromGitHub {
       owner = "ojroques";
       repo = "nvim-osc52";
-      rev = "5e0210990b3c809ec58bbf830e0dabd4bda3a949";
-      sha256 = "0alsh1r6c5b8zf3jcymmrp921mmmhvws38ih9hbw5yffcy0lqhl2";
+      rev = "42361eee0d4f23937d9abb9864eaedeeaaed5bf7";
+      sha256 = "01ibiyrsc7d58vf6w2cdhcf3vfkfyqcws3w6sdqy9rwlmvamb14k";
     };
     meta.homepage = "https://github.com/ojroques/nvim-osc52/";
   };
@@ -8114,12 +8127,12 @@ final: prev:
 
   nvim-pqf = buildVimPlugin {
     pname = "nvim-pqf";
-    version = "2023-11-19";
+    version = "2024-05-13";
     src = fetchFromGitHub {
       owner = "yorickpeterse";
       repo = "nvim-pqf";
-      rev = "ba0e291cb5c0249838132e197dac082777bdc7d6";
-      sha256 = "079w1n62dr8fyn3c6594dgvm5546c2lmaka4bqb1dxkmw9pfqfa1";
+      rev = "8de182d1b2b677ad6ba264e15b6230f74881e96d";
+      sha256 = "0ifpvr6jrzk2yhi80x2fsrlr1ha86n6wrwb3p813fif9pmxnbq8v";
     };
     meta.homepage = "https://github.com/yorickpeterse/nvim-pqf/";
   };
@@ -8186,12 +8199,12 @@ final: prev:
 
   nvim-snippy = buildVimPlugin {
     pname = "nvim-snippy";
-    version = "2024-02-24";
+    version = "2024-05-01";
     src = fetchFromGitHub {
       owner = "dcampos";
       repo = "nvim-snippy";
-      rev = "6295b6cb30725c343a8986096c9f04b0e7646c52";
-      sha256 = "1rplgghm6xr803xhgshrnbs4qvda4331znywsfwycxqyl7zvynsf";
+      rev = "1184a8734e998649f3bb9a5db9efd4543282050b";
+      sha256 = "0lgqiwnsm4ahgkv7qnxyi48m2i7wybxkxv29869v71bidnbkm6yb";
     };
     meta.homepage = "https://github.com/dcampos/nvim-snippy/";
   };
@@ -8222,36 +8235,36 @@ final: prev:
 
   nvim-spectre = buildVimPlugin {
     pname = "nvim-spectre";
-    version = "2024-04-17";
+    version = "2024-04-29";
     src = fetchFromGitHub {
       owner = "nvim-pack";
       repo = "nvim-spectre";
-      rev = "9653847cf2f225648967f6e9363643e327387579";
-      sha256 = "15866wdyck6snm0iz9iqd036wqkbfwnliwd5f220r9g5v3cwg5lg";
+      rev = "4651801ba37a9407b7257287aec45b6653ffc5e9";
+      sha256 = "0xna3g63ypagl4jxv9m0kfjzlqnhnlhzjm1gapgmmrzbcb9m3ml3";
     };
     meta.homepage = "https://github.com/nvim-pack/nvim-spectre/";
   };
 
   nvim-spider = buildVimPlugin {
     pname = "nvim-spider";
-    version = "2024-03-31";
+    version = "2024-04-27";
     src = fetchFromGitHub {
       owner = "chrisgrieser";
       repo = "nvim-spider";
-      rev = "828444de406bc7df3b30c8e000ce6f54f0754499";
-      sha256 = "0jar0wqkq4hc9vpw0z1jk69a1jk22bbqn01g1pg7pf7n9m5363zb";
+      rev = "76819082ef964db1f67f92454e18ad28ae34b37b";
+      sha256 = "1g0c3lids9kww2awsz0ykgvwm7945a9nvxg96iads735hfwc7p49";
     };
     meta.homepage = "https://github.com/chrisgrieser/nvim-spider/";
   };
 
   nvim-surround = buildVimPlugin {
     pname = "nvim-surround";
-    version = "2024-04-11";
+    version = "2024-05-16";
     src = fetchFromGitHub {
       owner = "kylechui";
       repo = "nvim-surround";
-      rev = "a4e30d33add8a9743b4f518b3a788b3c8e5def71";
-      sha256 = "09m95jd84y3b2wrair263f0csqqdx8h45fjq9jrr4f3108494xc1";
+      rev = "79aaa42da1f698ed31bcbe7f83081f69dca7ba17";
+      sha256 = "040mfsmxr7yfpmfi797vzaxcfp98l897nrz2pd5a6ghpvj3b83ij";
     };
     meta.homepage = "https://github.com/kylechui/nvim-surround/";
   };
@@ -8294,48 +8307,48 @@ final: prev:
 
   nvim-tree-lua = buildVimPlugin {
     pname = "nvim-tree.lua";
-    version = "2024-04-21";
+    version = "2024-05-14";
     src = fetchFromGitHub {
       owner = "nvim-tree";
       repo = "nvim-tree.lua";
-      rev = "ae8e46e8fabb32fa3ae5319383ea2c8763f14caa";
-      sha256 = "0cb4p6bndid12h2bjdj5ybksqjmwv1876jx5a2wlj6h0q50wfjs0";
+      rev = "2bc725a3ebc23f0172fb0ab4d1134b81bcc13812";
+      sha256 = "11snxarz0af9fa8n387l9lzwhfbnp5q0va21kc203ski7c9w18b2";
     };
     meta.homepage = "https://github.com/nvim-tree/nvim-tree.lua/";
   };
 
   nvim-treesitter = buildVimPlugin {
     pname = "nvim-treesitter";
-    version = "2024-04-20";
+    version = "2024-05-16";
     src = fetchFromGitHub {
       owner = "nvim-treesitter";
       repo = "nvim-treesitter";
-      rev = "ea4f6d5175812a3f48302d638a766bc18fcbb04a";
-      sha256 = "0smghl0nv4w1rpn7gqsq6lbarh5nzbhvi8pfysh5f7am0p42y86m";
+      rev = "8012b55eee65eba1d1ee4df0a186d30e72dcbe65";
+      sha256 = "1lwr83l5xn2mfka3pajfsh1cmxzdpysspmv2cab6ams9bn8w4jwf";
     };
     meta.homepage = "https://github.com/nvim-treesitter/nvim-treesitter/";
   };
 
   nvim-treesitter-context = buildVimPlugin {
     pname = "nvim-treesitter-context";
-    version = "2024-04-19";
+    version = "2024-05-16";
     src = fetchFromGitHub {
       owner = "nvim-treesitter";
       repo = "nvim-treesitter-context";
-      rev = "ba4289ad345ececd335a9cdd7b9616fd0bb6be92";
-      sha256 = "0cfklfz2anc8021qi0q8dbrdmnndnd073azgsiwaagbh75s3sgh1";
+      rev = "6d076414ffedd80411cb0260da8da2788e816e33";
+      sha256 = "0a5dgb81iy8jikcvd8ixvicp84wifzkwp47dpm1vpjyvwamj2jvv";
     };
     meta.homepage = "https://github.com/nvim-treesitter/nvim-treesitter-context/";
   };
 
   nvim-treesitter-endwise = buildVimPlugin {
     pname = "nvim-treesitter-endwise";
-    version = "2024-02-15";
+    version = "2024-04-30";
     src = fetchFromGitHub {
       owner = "RRethy";
       repo = "nvim-treesitter-endwise";
-      rev = "60e8c288e011403f248b5f6478dde12bed8a6c55";
-      sha256 = "0dly21jk1wm80s7ypwpwfm4mx1srbmaww0441854dwvh2s7j634v";
+      rev = "8b34305ffc28bd75a22f5a0a9928ee726a85c9a6";
+      sha256 = "0rx5dyhli5hwzh94lwjj71gs0k7vk28zlq01pvk9y3b1n50r6qkf";
     };
     meta.homepage = "https://github.com/RRethy/nvim-treesitter-endwise/";
   };
@@ -8366,24 +8379,24 @@ final: prev:
 
   nvim-treesitter-textobjects = buildVimPlugin {
     pname = "nvim-treesitter-textobjects";
-    version = "2024-04-15";
+    version = "2024-05-15";
     src = fetchFromGitHub {
       owner = "nvim-treesitter";
       repo = "nvim-treesitter-textobjects";
-      rev = "23b820146956b3b681c19e10d3a8bc0cbd9a1d4c";
-      sha256 = "1jvx9nbz5sh09jnlcqm5qfyjvryibc3fpnfxim7adk5gb4160xws";
+      rev = "84cc9ed772f1fee2f47c1e076f518829583d8347";
+      sha256 = "0z08c1yz3sn4cdijj9k61zjrny8wp7q1gq1jz9knwg327slm0syd";
     };
     meta.homepage = "https://github.com/nvim-treesitter/nvim-treesitter-textobjects/";
   };
 
   nvim-treesitter-textsubjects = buildVimPlugin {
     pname = "nvim-treesitter-textsubjects";
-    version = "2024-03-24";
+    version = "2024-05-12";
     src = fetchFromGitHub {
       owner = "RRethy";
       repo = "nvim-treesitter-textsubjects";
-      rev = "9f9a6b307fb122f13708f78483222abd43b7bb3a";
-      sha256 = "1y978c3jgxh3a1wck4xw1c04pyqzl9ayhizp9dz7l9jiallcngs7";
+      rev = "1428108f18ce9d8cc4481dcedebeeb490eabf395";
+      sha256 = "1m73vkz8cg8qqzh9aavprhg9vpzl1sw88aq6h8sb853lgw5aa5wn";
     };
     meta.homepage = "https://github.com/RRethy/nvim-treesitter-textsubjects/";
   };
@@ -8402,12 +8415,12 @@ final: prev:
 
   nvim-ts-context-commentstring = buildVimPlugin {
     pname = "nvim-ts-context-commentstring";
-    version = "2024-04-17";
+    version = "2024-05-07";
     src = fetchFromGitHub {
       owner = "joosepalviste";
       repo = "nvim-ts-context-commentstring";
-      rev = "a6382f744f584bbf71d0a563af789af7190aabda";
-      sha256 = "12b12ndva3ck5y18mkmhzkbmaz65kjkqsjxvq5gfniz1br7n2y9j";
+      rev = "0bdccb9c67a42a5e2d99384dc9bfa29b1451528f";
+      sha256 = "0b4cx7k53w3cjfnp6nyvvpi1dnnpdp4j67sszsra61fk8pyqp4w2";
     };
     meta.homepage = "https://github.com/joosepalviste/nvim-ts-context-commentstring/";
   };
@@ -8438,12 +8451,12 @@ final: prev:
 
   nvim-web-devicons = buildVimPlugin {
     pname = "nvim-web-devicons";
-    version = "2024-04-21";
+    version = "2024-05-13";
     src = fetchFromGitHub {
       owner = "nvim-tree";
       repo = "nvim-web-devicons";
-      rev = "beb6367ab8496c9e43f22e0252735fdadae1872d";
-      sha256 = "1qqwfzfk5w2sfaavfa2nn01caj753j272hpnhmvgwknfgvl9cv81";
+      rev = "e37bb1feee9e7320c76050a55443fa843b4b6f83";
+      sha256 = "0kxj9xj94zln8ah2i0r09p0c8prn0rs1vwgf5dvmjn3j8m4x3nnn";
     };
     meta.homepage = "https://github.com/nvim-tree/nvim-web-devicons/";
   };
@@ -8522,12 +8535,12 @@ final: prev:
 
   obsidian-nvim = buildVimPlugin {
     pname = "obsidian.nvim";
-    version = "2024-04-19";
+    version = "2024-05-08";
     src = fetchFromGitHub {
       owner = "epwalsh";
       repo = "obsidian.nvim";
-      rev = "ec0f44e1921d2701bd99a542031d280f1e3930b5";
-      sha256 = "1b9b72yrp1xfkag41hxjk903payfrcnjdi7lr5880183mm0im04w";
+      rev = "2e1f03416583232899dc1b6e27673da5e705abef";
+      sha256 = "1c3zxz60g7jgm3cd9xhzp73qa218b1z6rfiaf9n4wcbzb88c8scl";
     };
     meta.homepage = "https://github.com/epwalsh/obsidian.nvim/";
   };
@@ -8570,12 +8583,12 @@ final: prev:
 
   oil-nvim = buildVimPlugin {
     pname = "oil.nvim";
-    version = "2024-04-19";
+    version = "2024-05-16";
     src = fetchFromGitHub {
       owner = "stevearc";
       repo = "oil.nvim";
-      rev = "1f05774e1c2dbc1940104b5c950d5c7b65ec6e0b";
-      sha256 = "0l6y9xnz8l7flq0jlh9xxnsp9inny9mbbqg2j2sg0rivq630bbnh";
+      rev = "9e3a02252dc5686f374f79f50a13cfe7547c05af";
+      sha256 = "04wqq3s4mwz1f5v85iyh6wx43q4sfj5iqhg82krs7n4rq9nh3r4s";
       fetchSubmodules = true;
     };
     meta.homepage = "https://github.com/stevearc/oil.nvim/";
@@ -8631,12 +8644,12 @@ final: prev:
 
   onedark-nvim = buildVimPlugin {
     pname = "onedark.nvim";
-    version = "2024-01-29";
+    version = "2024-05-11";
     src = fetchFromGitHub {
       owner = "navarasu";
       repo = "onedark.nvim";
-      rev = "1230aaf2a427b2c5b73aba6e4a9a5881d3e69429";
-      sha256 = "1npc9x2r0aass9swxmhryia90ar7f4nx8j456jzlf66lzbr8xrnp";
+      rev = "8e4b79b0e6495ddf29552178eceba1e147e6cecf";
+      sha256 = "1xxa0q9val9hl5jby2zqn7wlh0vkibj3s8mbmj8vfba4afqlqi0q";
     };
     meta.homepage = "https://github.com/navarasu/onedark.nvim/";
   };
@@ -8667,12 +8680,12 @@ final: prev:
 
   onedarkpro-nvim = buildVimPlugin {
     pname = "onedarkpro.nvim";
-    version = "2024-03-24";
+    version = "2024-05-13";
     src = fetchFromGitHub {
       owner = "olimorris";
       repo = "onedarkpro.nvim";
-      rev = "9cb77d936fd42c2c98becceb0f132df170d4eba0";
-      sha256 = "1vj7fhm6z4q9ykl20rgjrxc396l47bfskg306h66hj2wb775clm5";
+      rev = "5cf25dd6db58c6eb1cec47ad333e2b76051f8562";
+      sha256 = "1yrns9y6dmfbg4hdv2v78izbwdnxxy9i6pnympkvihlpbqdshqar";
     };
     meta.homepage = "https://github.com/olimorris/onedarkpro.nvim/";
   };
@@ -8691,12 +8704,12 @@ final: prev:
 
   onenord-nvim = buildVimPlugin {
     pname = "onenord.nvim";
-    version = "2024-03-08";
+    version = "2024-05-09";
     src = fetchFromGitHub {
       owner = "rmehri01";
       repo = "onenord.nvim";
-      rev = "ce4aacbaa50b6b44a3e69eee6a3f380e96ccdbd0";
-      sha256 = "1i1n746bf0gfmq22ajj2p4f7819sql4f051gwjmcypd1hrn651lh";
+      rev = "f1e25fd839442d4b3c6bd36cfc7fa56edc629671";
+      sha256 = "0a24km5pd7r2zj0bwzi6wmnkf0lxr9gd82k6x4ybm5777z4bp66r";
     };
     meta.homepage = "https://github.com/rmehri01/onenord.nvim/";
   };
@@ -8751,12 +8764,12 @@ final: prev:
 
   orgmode = buildVimPlugin {
     pname = "orgmode";
-    version = "2024-04-19";
+    version = "2024-05-14";
     src = fetchFromGitHub {
       owner = "nvim-orgmode";
       repo = "orgmode";
-      rev = "389e91f6f935aa845bc0cd13dd80f75431c34751";
-      sha256 = "1fzckfi00bb4mi5l9wadhgv98z7fmlgryx24zipcr7k98pdaw36h";
+      rev = "8ec0bcc6f6476d246159f738081256c97a7a9b2c";
+      sha256 = "17glhwnkb7k96ihh3p3w8pjnprc2lrhlhrrb6v9m5azbhsjy7ysg";
     };
     meta.homepage = "https://github.com/nvim-orgmode/orgmode/";
   };
@@ -8775,36 +8788,36 @@ final: prev:
 
   otter-nvim = buildVimPlugin {
     pname = "otter.nvim";
-    version = "2024-04-09";
+    version = "2024-05-11";
     src = fetchFromGitHub {
       owner = "jmbuhr";
       repo = "otter.nvim";
-      rev = "e67aa5082c65eeffd8a57b672e1353e8cf2ca7a9";
-      sha256 = "0223cmm4hg9c9ywifr0c7zk091ny5sndarkq7sa9vk5vmar5sz15";
+      rev = "5cd161f28835fada50d99c89dc05041565a27bdb";
+      sha256 = "18vl93j93s9i22ybw3vl129kvhz8382yg8b1r1m0xnfyiklpkzg5";
     };
     meta.homepage = "https://github.com/jmbuhr/otter.nvim/";
   };
 
   outline-nvim = buildVimPlugin {
     pname = "outline.nvim";
-    version = "2024-03-16";
+    version = "2024-05-02";
     src = fetchFromGitHub {
       owner = "hedyhli";
       repo = "outline.nvim";
-      rev = "bdfd2da90e9a7686d00e55afa9f772c4b6809413";
-      sha256 = "0dc3yndh7fy8fvhh0pr97850bq0563jlqrxi9bb9sm6hzdkvnp92";
+      rev = "dbd836893fb99cfc33119d7c4abbdb700210f54b";
+      sha256 = "1sy82vh9629wwyvc1j3q0vqfj7vichw90kl4vsa087v8sfn8r35z";
     };
     meta.homepage = "https://github.com/hedyhli/outline.nvim/";
   };
 
   overseer-nvim = buildVimPlugin {
     pname = "overseer.nvim";
-    version = "2024-04-13";
+    version = "2024-05-16";
     src = fetchFromGitHub {
       owner = "stevearc";
       repo = "overseer.nvim";
-      rev = "dd701ed0639ef1e10d0ca8dec039719e916c4a7b";
-      sha256 = "1xr0xzf5h1r8ax6djvq1vq936yqmvwa4l0hbjqq090mgnj60arh5";
+      rev = "7a9b654df4b3b246d05fff857f32e9fb8ddfb013";
+      sha256 = "1qp5vkswgl3cz7qcnsl8dywwwcg8561dqhyp08zd2ifj933r1b5j";
       fetchSubmodules = true;
     };
     meta.homepage = "https://github.com/stevearc/overseer.nvim/";
@@ -8920,24 +8933,24 @@ final: prev:
 
   persisted-nvim = buildVimPlugin {
     pname = "persisted.nvim";
-    version = "2024-04-04";
+    version = "2024-05-07";
     src = fetchFromGitHub {
       owner = "olimorris";
       repo = "persisted.nvim";
-      rev = "ca9900c31ee6e254a0ba7011ba49f48ebf4c8db2";
-      sha256 = "0s9g1jmq1qzkxi1gcvmyf0nmwgqrh11r0swy9pl32916k37zvqzl";
+      rev = "1e9fd63e25bdbb5dbb6b8b10f817b2446977146c";
+      sha256 = "1y61izajz6p2b1vfa20f3j5rl1fjbfmbzny3ywkfai4dsnrks8yi";
     };
     meta.homepage = "https://github.com/olimorris/persisted.nvim/";
   };
 
   persistence-nvim = buildVimPlugin {
     pname = "persistence.nvim";
-    version = "2024-01-19";
+    version = "2024-05-16";
     src = fetchFromGitHub {
       owner = "folke";
       repo = "persistence.nvim";
-      rev = "4982499c1636eac254b72923ab826ee7827b3084";
-      sha256 = "0d71vmhgiakf4fpxnx56ymgmad7zww5nl1q2dhxg8pqkq7jdnh5n";
+      rev = "5fe077056c821aab41f87650bd6e1c48cd7dd047";
+      sha256 = "1saanhqa9ldm1xlq5w28w72yxkwh60cay3cazi62zwmph0mgygp9";
     };
     meta.homepage = "https://github.com/folke/persistence.nvim/";
   };
@@ -8956,12 +8969,12 @@ final: prev:
 
   pest-vim = buildVimPlugin {
     pname = "pest.vim";
-    version = "2023-06-16";
+    version = "2024-04-25";
     src = fetchFromGitHub {
       owner = "pest-parser";
       repo = "pest.vim";
-      rev = "78a65344a89804ec86a0d025a3799f47c2331389";
-      sha256 = "01bc7c3hddz6lnmpzrlah8i0llr976a1lyazslw194r5ig1hb0id";
+      rev = "7cfcb43f824e74d13dfe631359fff2ec23836a77";
+      sha256 = "1vpfh4nyxwbndqv4hmymrqskjc5l2dyiwfp4s7mhpdcnq950q1qi";
     };
     meta.homepage = "https://github.com/pest-parser/pest.vim/";
   };
@@ -9004,12 +9017,12 @@ final: prev:
 
   plantuml-syntax = buildVimPlugin {
     pname = "plantuml-syntax";
-    version = "2024-02-22";
+    version = "2024-05-10";
     src = fetchFromGitHub {
       owner = "aklt";
       repo = "plantuml-syntax";
-      rev = "309c15c77794433f276fb09eb4e3b8f381003cfd";
-      sha256 = "0g7yprik607gy01lamql1kpk25sdl54ckfrc9p11rrimal7rms38";
+      rev = "44054d6d2cbcf01a064858faa3364cd30d38057d";
+      sha256 = "0kwk96y6cn7l7w151438sdjflfc6c6irysg00b1q4h1f4x3fcfvq";
     };
     meta.homepage = "https://github.com/aklt/plantuml-syntax/";
   };
@@ -9028,12 +9041,12 @@ final: prev:
 
   plenary-nvim = buildNeovimPlugin {
     pname = "plenary.nvim";
-    version = "2024-03-25";
+    version = "2024-04-25";
     src = fetchFromGitHub {
       owner = "nvim-lua";
       repo = "plenary.nvim";
-      rev = "8aad4396840be7fc42896e3011751b7609ca4119";
-      sha256 = "06ahw1mxjp5g1kbsdza29hyawr4blqzw3vb9d4rg2d5qmnwcbky0";
+      rev = "08e301982b9a057110ede7a735dd1b5285eb341f";
+      sha256 = "03x9mxxqscahs3plml9pw0q6yacyiz6nvw4pcbpqlcqj99f0qbdz";
     };
     meta.homepage = "https://github.com/nvim-lua/plenary.nvim/";
   };
@@ -9318,11 +9331,11 @@ final: prev:
 
   rainbow-delimiters-nvim = buildVimPlugin {
     pname = "rainbow-delimiters.nvim";
-    version = "2024-04-18";
+    version = "2024-05-11";
     src = fetchgit {
       url = "https://gitlab.com/HiPhish/rainbow-delimiters.nvim";
-      rev = "7ef0766b5cd2f5cdf4fcb08886f0a2ebf65981fa";
-      sha256 = "0pw3dk0rnaa2llvgkqar1j5wqrh3lah2ygvxaqiy7760pyanh38c";
+      rev = "dd1156723eb8483e4403eb8765bbdff456b6981d";
+      sha256 = "1cj3hylb73wqgllr5wnqjlzlwqr9s4f5yb4g4s2lra4g7a08grxj";
     };
     meta.homepage = "https://gitlab.com/HiPhish/rainbow-delimiters.nvim";
   };
@@ -9461,12 +9474,12 @@ final: prev:
 
   rest-nvim = buildNeovimPlugin {
     pname = "rest.nvim";
-    version = "2024-04-17";
+    version = "2024-05-04";
     src = fetchFromGitHub {
       owner = "rest-nvim";
       repo = "rest.nvim";
-      rev = "20c5b5259afa7f4867474cc463211d64c93ba371";
-      sha256 = "0ysmzf2lfry8abaajjanp3b3358nbgd2d2zs9qfjyrbk0fmqw0gc";
+      rev = "f96edb54a2940322bc7ed81a1031be04db7d3a99";
+      sha256 = "0yfmpkwx38ynwyn9prkkqqaqgi55dam9zswjj3nls30rxahqvg1p";
     };
     meta.homepage = "https://github.com/rest-nvim/rest.nvim/";
   };
@@ -9581,12 +9594,12 @@ final: prev:
 
   rustaceanvim = buildNeovimPlugin {
     pname = "rustaceanvim";
-    version = "2024-04-21";
+    version = "2024-05-16";
     src = fetchFromGitHub {
       owner = "mrcjkb";
       repo = "rustaceanvim";
-      rev = "dd4d5d8d1313f0bb343af90e2432ad2f2a9fedaf";
-      sha256 = "1zph7b9vdd96xai19g6di48r5p5px0pz8kkq5hfkriq2apygpb99";
+      rev = "50c09f3afa35d3b32e09ac1b155e95c53a98b8e8";
+      sha256 = "0ws8c2bpnhkvgslpa95llydn60kyh7qg66y6a7h9g89mwxda0m6v";
     };
     meta.homepage = "https://github.com/mrcjkb/rustaceanvim/";
   };
@@ -9629,12 +9642,12 @@ final: prev:
 
   scnvim = buildVimPlugin {
     pname = "scnvim";
-    version = "2024-04-19";
+    version = "2024-05-15";
     src = fetchFromGitHub {
       owner = "davidgranstrom";
       repo = "scnvim";
-      rev = "94e49fa6c596813247549cd594f5ab6246c79973";
-      sha256 = "1axbrakr3xpmvbdslh803xam72fg6ar428bgz04h0j2ygg75bqmy";
+      rev = "de0fbc35ddbe023622371211f5cf599a4a960087";
+      sha256 = "04gr03bpg6ja3hwfb68lhn3a7m6p2022k3138vcdazzy1gbw6r23";
     };
     meta.homepage = "https://github.com/davidgranstrom/scnvim/";
   };
@@ -9677,12 +9690,12 @@ final: prev:
 
   searchbox-nvim = buildVimPlugin {
     pname = "searchbox.nvim";
-    version = "2022-10-31";
+    version = "2024-04-26";
     src = fetchFromGitHub {
       owner = "VonHeikemen";
       repo = "searchbox.nvim";
-      rev = "110949af8963185b4e732b45ae57beb731bfcede";
-      sha256 = "1dahiggnc8hqfgd9akxlsyck7gxz05w0phrvahc5g1kskyr0q7h7";
+      rev = "6cf79dc53794b06a95791a034341f1332e04dd58";
+      sha256 = "138wazdwncgknh4jmaa22i7q8fa8qgc18085xykfvbcf9ljvi0ya";
     };
     meta.homepage = "https://github.com/VonHeikemen/searchbox.nvim/";
   };
@@ -9822,12 +9835,12 @@ final: prev:
 
   smart-splits-nvim = buildVimPlugin {
     pname = "smart-splits.nvim";
-    version = "2024-04-19";
+    version = "2024-05-14";
     src = fetchFromGitHub {
       owner = "mrjones2014";
       repo = "smart-splits.nvim";
-      rev = "95d11bfc83263236431ead7dc017f5ab0ff992ca";
-      sha256 = "0x9s5801si869gh7jazlfd9asiwk5fkr1gv67qf7bs55pc0z9rbf";
+      rev = "2846aee230e2dd0a3b8912d8eba86dae7d1d16b2";
+      sha256 = "0xaqvin1gcr4a4nmssaazaqnvp7mmhnrl4kz1raw1nn8krww9rj2";
     };
     meta.homepage = "https://github.com/mrjones2014/smart-splits.nvim/";
   };
@@ -9906,12 +9919,12 @@ final: prev:
 
   sonokai = buildVimPlugin {
     pname = "sonokai";
-    version = "2024-03-27";
+    version = "2024-05-15";
     src = fetchFromGitHub {
       owner = "sainnhe";
       repo = "sonokai";
-      rev = "da162343354fbd9bf9cd49293a856f0e3761e8ac";
-      sha256 = "0mvb9rxsqapp8kz8vh4lvn9vym8lhmqydkh145yxyqvpjkycwbb7";
+      rev = "d638deba408349ccb60bf5278ff7f23ff52b164a";
+      sha256 = "141mcy6l56am1hzawdbpjmvj82mp8zbpgkdwmq9wfclawmhfdqqh";
     };
     meta.homepage = "https://github.com/sainnhe/sonokai/";
   };
@@ -10111,12 +10124,12 @@ final: prev:
 
   staline-nvim = buildVimPlugin {
     pname = "staline.nvim";
-    version = "2024-03-08";
+    version = "2024-05-16";
     src = fetchFromGitHub {
       owner = "tamton-aquib";
       repo = "staline.nvim";
-      rev = "c49f2deaba3d3c669e7243b57619e0078e7a351b";
-      sha256 = "1d3mp5ymzi5pb8y246h38bydd2cw4iacakaj9a7r7hf87i6kfz6k";
+      rev = "2bda31da08c620adce08df8359bd402044399340";
+      sha256 = "17wkf3j7nyjk4ch88hkgb68lyr34z0kk9qhmk7n4h673jhn2lh34";
     };
     meta.homepage = "https://github.com/tamton-aquib/staline.nvim/";
   };
@@ -10229,18 +10242,6 @@ final: prev:
     meta.homepage = "https://github.com/kvrohit/substrata.nvim/";
   };
 
-  suda-vim = buildVimPlugin {
-    pname = "suda.vim";
-    version = "2024-04-18";
-    src = fetchFromGitHub {
-      owner = "lambdalisue";
-      repo = "suda.vim";
-      rev = "04469d855e36fffcda6be036eb7ff005f64fa0d6";
-      sha256 = "18igbn0ldh3mwf8qlnfbbidk88l1wfjx1v95dmdwd1xif642bppn";
-    };
-    meta.homepage = "https://github.com/lambdalisue/suda.vim/";
-  };
-
   supertab = buildVimPlugin {
     pname = "supertab";
     version = "2021-04-30";
@@ -10401,12 +10402,12 @@ final: prev:
 
   tabout-nvim = buildVimPlugin {
     pname = "tabout.nvim";
-    version = "2024-04-20";
+    version = "2024-04-27";
     src = fetchFromGitHub {
       owner = "abecodes";
       repo = "tabout.nvim";
-      rev = "c442ae7788c30dbd41d259c51df4046cb8269a96";
-      sha256 = "0rd451fz9i6wbyzjrdkjz4phwlq8fz1lcgmbdjrjxvax3hkpbbqx";
+      rev = "26cf934f872e2fbfab55d572c5eb7dad0e82238e";
+      sha256 = "157zglv8l9qdkralyddnfi6zavr3km6wcxk2x4hs5vg1pi60v8qa";
     };
     meta.homepage = "https://github.com/abecodes/tabout.nvim/";
   };
@@ -10521,15 +10522,15 @@ final: prev:
 
   telekasten-nvim = buildVimPlugin {
     pname = "telekasten.nvim";
-    version = "2024-04-17";
+    version = "2024-04-22";
     src = fetchFromGitHub {
-      owner = "renerocksai";
+      owner = "nvim-telekasten";
       repo = "telekasten.nvim";
-      rev = "24fd8c1e7eb989dba9efa5d174e42870f08da8fb";
-      sha256 = "1ky0035jar8i06k8w4mkizbcyiib393zk3cwr14fnsvq94jp23bs";
+      rev = "319276a7853ff996b7bb1ed4250d8047c84ad29d";
+      sha256 = "05b8a9h8ni5pmj0x9r3pc8j4h77nbj2s6wmlx20w4h2vmwwp7k26";
       fetchSubmodules = true;
     };
-    meta.homepage = "https://github.com/renerocksai/telekasten.nvim/";
+    meta.homepage = "https://github.com/nvim-telekasten/telekasten.nvim/";
   };
 
   telescope-asynctasks-nvim = buildVimPlugin {
@@ -10582,24 +10583,24 @@ final: prev:
 
   telescope-file-browser-nvim = buildVimPlugin {
     pname = "telescope-file-browser.nvim";
-    version = "2024-03-24";
+    version = "2024-04-23";
     src = fetchFromGitHub {
       owner = "nvim-telescope";
       repo = "telescope-file-browser.nvim";
-      rev = "5ee5002373655fd684a4ad0d47a3de876ceacf9a";
-      sha256 = "1ar218ymgx6432183xvd0rinnv0gwiqic9czv4z9hiwxgw9cwcfd";
+      rev = "4d5fd21bae12ee6e9a79232e1c377f43c419d0c5";
+      sha256 = "01dpbmcjnd2iwwiw0zawhh7d1vh4x3wvqf55w7kh4b111bl9399z";
     };
     meta.homepage = "https://github.com/nvim-telescope/telescope-file-browser.nvim/";
   };
 
   telescope-frecency-nvim = buildVimPlugin {
     pname = "telescope-frecency.nvim";
-    version = "2024-04-06";
+    version = "2024-05-01";
     src = fetchFromGitHub {
       owner = "nvim-telescope";
       repo = "telescope-frecency.nvim";
-      rev = "94a532cb9c4713db83acf5432f5aadfd096e2af9";
-      sha256 = "17243ls89kdalb0vlx84blwxan9g8xdin9fvzyk5xkb8b1wbpz5p";
+      rev = "6b6565e6584c86ca501bdac485cbdc2ca64556e4";
+      sha256 = "0rmj6sk7yz5qmn6mdpcww2lgsq9q4x7r166a8lhwlm8ch3lddcf6";
     };
     meta.homepage = "https://github.com/nvim-telescope/telescope-frecency.nvim/";
   };
@@ -10679,12 +10680,12 @@ final: prev:
 
   telescope-manix = buildNeovimPlugin {
     pname = "telescope-manix";
-    version = "2024-04-21";
+    version = "2024-05-12";
     src = fetchFromGitHub {
       owner = "MrcJkb";
       repo = "telescope-manix";
-      rev = "bd6b110a08cc5b7c098020325ff55218a5b249da";
-      sha256 = "1dj6bdx98596l2lnjcdd2c5zm5j00cid0kdb0zd6vhv1jfw8zqsx";
+      rev = "bfffb3a8cf1c0a4e615622c400fe13de973fe96b";
+      sha256 = "0ghrnb76ls1wnmjw525n9d203fc4y17azs8d6mcms4wf7kx7k4ag";
     };
     meta.homepage = "https://github.com/MrcJkb/telescope-manix/";
   };
@@ -10715,12 +10716,12 @@ final: prev:
 
   telescope-sg = buildVimPlugin {
     pname = "telescope-sg";
-    version = "2023-12-16";
+    version = "2024-04-22";
     src = fetchFromGitHub {
       owner = "Marskey";
       repo = "telescope-sg";
-      rev = "68289496f5612a756953756f8d1e8cc0ecee9e5d";
-      sha256 = "07fnrqrf59krvql35zayggl42icgjv23k5sqwyv5vz1wmsp4j1pg";
+      rev = "caceaa670f26a581fb20ce99576ed8155c3ae96d";
+      sha256 = "0aii4vy97zyh2fpdkawwdanwd7sd0751ih5yznjcwn8cvrv74wl5";
     };
     meta.homepage = "https://github.com/Marskey/telescope-sg/";
   };
@@ -10763,12 +10764,12 @@ final: prev:
 
   telescope-undo-nvim = buildVimPlugin {
     pname = "telescope-undo.nvim";
-    version = "2024-03-26";
+    version = "2024-05-01";
     src = fetchFromGitHub {
       owner = "debugloop";
       repo = "telescope-undo.nvim";
-      rev = "d19e2edc8b18d03283bd91f67310ac300ad003ce";
-      sha256 = "0pp98xgdgcpykbsm56bj6w9j178xricds7hsqzwgcckf4zwknn01";
+      rev = "95b61c01ea3a4c9e8747731148e905bbcf0ccaee";
+      sha256 = "17imd6f1qykxv4wk67ihj7ir07yvcmrr0cqvidv1as3k77riclxb";
     };
     meta.homepage = "https://github.com/debugloop/telescope-undo.nvim/";
   };
@@ -10799,12 +10800,12 @@ final: prev:
 
   telescope-zf-native-nvim = buildVimPlugin {
     pname = "telescope-zf-native.nvim";
-    version = "2024-02-11";
+    version = "2024-05-08";
     src = fetchFromGitHub {
       owner = "natecraddock";
       repo = "telescope-zf-native.nvim";
-      rev = "c8ac635fb51065bb3a77f51bcec585a8dddf8652";
-      sha256 = "19a3p666wdjbnar1ifk73yf02i6gr24818svawsh8h1hsva0zyn8";
+      rev = "242ee15047e3400351982ef162301a898ec5cdda";
+      sha256 = "1kdjqi046nr052q9m50814k2df0nnmylgk8lcragc2z8sdnj5f73";
       fetchSubmodules = true;
     };
     meta.homepage = "https://github.com/natecraddock/telescope-zf-native.nvim/";
@@ -10824,12 +10825,12 @@ final: prev:
 
   telescope-nvim = buildNeovimPlugin {
     pname = "telescope.nvim";
-    version = "2024-04-21";
+    version = "2024-05-16";
     src = fetchFromGitHub {
       owner = "nvim-telescope";
       repo = "telescope.nvim";
-      rev = "7d1698f3d88b448e0639974248cc17f49b7b8acf";
-      sha256 = "1k3fhgpakr1b8x9fk7sq699h3479k8x9yc3jbq7xq2jk7p0n4m62";
+      rev = "52f500110bcf9190b44b4d8640162adc86772ec4";
+      sha256 = "0l3vd9xabwx40rqmmwzj1sgnn62z0gg174yl2gl7k2w935nj707z";
     };
     meta.homepage = "https://github.com/nvim-telescope/telescope.nvim/";
   };
@@ -10860,12 +10861,12 @@ final: prev:
 
   tender-vim = buildVimPlugin {
     pname = "tender.vim";
-    version = "2024-03-21";
+    version = "2024-04-21";
     src = fetchFromGitHub {
       owner = "jacoborus";
       repo = "tender.vim";
-      rev = "1cc8cef28ef10575bf72806959e72d35fec5dc5a";
-      sha256 = "0i1ffzz88w2n3ja2kip5fhy7s8klb0r7av62fn5pmhiy0pkn09vp";
+      rev = "f361e9d907d2e5df703ee995f9032021ef674f2f";
+      sha256 = "0fx7cc3xh5bpd1c6jlgp4qxlh6bfzgja7mf9mp84lhd6gj9mfqy6";
     };
     meta.homepage = "https://github.com/jacoborus/tender.vim/";
   };
@@ -10932,12 +10933,12 @@ final: prev:
 
   texpresso-vim = buildVimPlugin {
     pname = "texpresso.vim";
-    version = "2024-04-18";
+    version = "2024-04-30";
     src = fetchFromGitHub {
       owner = "let-def";
       repo = "texpresso.vim";
-      rev = "30f9b8277b18326e0aa6882fb96d51bc1b40a222";
-      sha256 = "1iagc7kld327mkkravk30dz2a0dq4i8718w0k1jrlj0z54981gbn";
+      rev = "1cc949fde8ed3220968039b6b1b6ccdd9f475087";
+      sha256 = "15il903x1li60ys6ni77qs4xfsqkwrkwkxijda5j166xb2gq89wr";
     };
     meta.homepage = "https://github.com/let-def/texpresso.vim/";
   };
@@ -10992,12 +10993,12 @@ final: prev:
 
   tint-nvim = buildVimPlugin {
     pname = "tint.nvim";
-    version = "2023-08-28";
+    version = "2024-05-01";
     src = fetchFromGitHub {
       owner = "levouh";
       repo = "tint.nvim";
-      rev = "862835626941d263466754b9c8e2ce2cb004f5ac";
-      sha256 = "0m00zy9ihmwh1f28sk92rbrfd3h4azc41zzpy4jbh82gbnq8k4ks";
+      rev = "02bd0527a315a80e4e25bb2dd7b6994fb0daae01";
+      sha256 = "08bhm1p78xh692vjvg870k73kiaz523gffcs8dpzr2zqqa086jkg";
     };
     meta.homepage = "https://github.com/levouh/tint.nvim/";
   };
@@ -11028,12 +11029,12 @@ final: prev:
 
   tmux-nvim = buildVimPlugin {
     pname = "tmux.nvim";
-    version = "2024-03-05";
+    version = "2024-04-25";
     src = fetchFromGitHub {
       owner = "aserowy";
       repo = "tmux.nvim";
-      rev = "63e9c5e054099dd30af306bd8ceaa2f1086e1b07";
-      sha256 = "0ynzljwq6hv7415p7pr0aqx8kycp84p3p3dy4jcx61dxfgdpgc4c";
+      rev = "53ea7eab504730e7e8397fd2ae0133053d56afc8";
+      sha256 = "13cbfjiq3d6vvzbbp31ssy6x0lbd6d1y67b8x3jq6cf5jfi0as1z";
     };
     meta.homepage = "https://github.com/aserowy/tmux.nvim/";
   };
@@ -11077,24 +11078,24 @@ final: prev:
 
   toggleterm-nvim = buildVimPlugin {
     pname = "toggleterm.nvim";
-    version = "2024-04-19";
+    version = "2024-04-22";
     src = fetchFromGitHub {
       owner = "akinsho";
       repo = "toggleterm.nvim";
-      rev = "dca1c80fb8ec41c97e7c3ef308719d8143fbbb05";
-      sha256 = "11rmk7hpmf75n0lgchj7hvsw9915m493hlgqsmjkkyhs9w0bwb4n";
+      rev = "066cccf48a43553a80a210eb3be89a15d789d6e6";
+      sha256 = "1z058jxwcynwyw6fnkjsqdpnmbl9pa956fnm1x4w96hy00d5pklq";
     };
     meta.homepage = "https://github.com/akinsho/toggleterm.nvim/";
   };
 
   tokyonight-nvim = buildVimPlugin {
     pname = "tokyonight.nvim";
-    version = "2024-03-28";
+    version = "2024-05-16";
     src = fetchFromGitHub {
       owner = "folke";
       repo = "tokyonight.nvim";
-      rev = "9bf9ec53d5e87b025e2404069b71e7ebdc3a13e5";
-      sha256 = "10fngz9assyp6rby36v0qdg5brsrxs921pp984ifyk8c8d4sdl12";
+      rev = "634015fff1457ed66cf5364213a2bbbc51a82d6c";
+      sha256 = "0fk0afw5d8nwpz1244c0d6sk8hjk63swapwrxcxk0c1f12qc364l";
     };
     meta.homepage = "https://github.com/folke/tokyonight.nvim/";
   };
@@ -11137,12 +11138,12 @@ final: prev:
 
   treesj = buildVimPlugin {
     pname = "treesj";
-    version = "2024-02-09";
+    version = "2024-04-22";
     src = fetchFromGitHub {
       owner = "Wansmer";
       repo = "treesj";
-      rev = "60e27280030f9cd8dfb6ceb335922c6ff76682cc";
-      sha256 = "1rrcnldpl9d4fifk48w6sgrar0zhi6pbd6iqildzp3bmhf83smd1";
+      rev = "e1e82ab4237619d342c7102c9f13d4b9833bfd39";
+      sha256 = "1sfrcafs9i69rsy1m3ng2qfibs5bncsfbggz3apsdyv6vxnzw28m";
     };
     meta.homepage = "https://github.com/Wansmer/treesj/";
   };
@@ -11171,6 +11172,19 @@ final: prev:
     meta.homepage = "https://github.com/cappyzawa/trim.nvim/";
   };
 
+  triptych-nvim = buildVimPlugin {
+    pname = "triptych.nvim";
+    version = "2024-05-06";
+    src = fetchFromGitHub {
+      owner = "simonmclean";
+      repo = "triptych.nvim";
+      rev = "41dada0eb0f7c2b9d504df952be8535afab33115";
+      sha256 = "1h4hg5fxhvswcldh6lfn5sx8xbqn6kfzwk206c7xdqid1c4rcvw8";
+      fetchSubmodules = true;
+    };
+    meta.homepage = "https://github.com/simonmclean/triptych.nvim/";
+  };
+
   trouble-nvim = buildVimPlugin {
     pname = "trouble.nvim";
     version = "2024-03-29";
@@ -11257,12 +11271,12 @@ final: prev:
 
   typescript-vim = buildVimPlugin {
     pname = "typescript-vim";
-    version = "2024-02-04";
+    version = "2024-04-30";
     src = fetchFromGitHub {
       owner = "leafgarland";
       repo = "typescript-vim";
-      rev = "e83ccab88c7a045ce795583adb66956afd464a31";
-      sha256 = "0zjdwjvp9wk7gb1h569c2h5fsmr41p51wz7k0kiig4xfz1i9s7yg";
+      rev = "eb4d90d3e449b4a3c1a17f56e4429ff4e0a6b3a6";
+      sha256 = "0nczd6x91i1p56ndkw3m5lhcq3madqcyffzb3avr9zqwlmw36aas";
     };
     meta.homepage = "https://github.com/leafgarland/typescript-vim/";
   };
@@ -11293,12 +11307,12 @@ final: prev:
 
   ultimate-autopair-nvim = buildVimPlugin {
     pname = "ultimate-autopair.nvim";
-    version = "2024-02-22";
+    version = "2024-05-06";
     src = fetchFromGitHub {
       owner = "altermo";
       repo = "ultimate-autopair.nvim";
-      rev = "6ecf7461d44513af89f8257f057fcc99e9297612";
-      sha256 = "01dj9fdzaliwpxh358dql0ndvnykqn8v9w20b7pkn09p1airq937";
+      rev = "042587c63b2b2776a83337748d53dba8b67ec545";
+      sha256 = "1636jwzim6v3sf2jfrbvc1p5x38ddhjfsssq2v31a3rzkyv74qg3";
     };
     meta.homepage = "https://github.com/altermo/ultimate-autopair.nvim/";
   };
@@ -11341,12 +11355,12 @@ final: prev:
 
   unison = buildVimPlugin {
     pname = "unison";
-    version = "2024-04-17";
+    version = "2024-05-16";
     src = fetchFromGitHub {
       owner = "unisonweb";
       repo = "unison";
-      rev = "ac4d817f5e18a0b462b23dcd124f849633d650fe";
-      sha256 = "00dsvdqp02bf8zvnk8ljn0f38wb38h8iabsrarycl2a3v6jr8lgr";
+      rev = "faa7b92c6f1d05d20b3ba7249e5c2dd3a76c19c1";
+      sha256 = "05nimvwjyg2sphgfv2xq6wggl54frh7lrgsxv7jg1c9w1lmg6z77";
     };
     meta.homepage = "https://github.com/unisonweb/unison/";
   };
@@ -11401,24 +11415,24 @@ final: prev:
 
   vader-vim = buildVimPlugin {
     pname = "vader.vim";
-    version = "2020-02-13";
+    version = "2024-04-30";
     src = fetchFromGitHub {
       owner = "junegunn";
       repo = "vader.vim";
-      rev = "6fff477431ac3191c69a3a5e5f187925466e275a";
-      sha256 = "153cr1mrf5w5lyr8374brwx1z5yl9h0cnijxnd3xikh3yi3pbmwk";
+      rev = "429b669e6158be3a9fc110799607c232e6ed8e29";
+      sha256 = "14j4a55hhi7jbk9aafzl67w2w0dn0jyspddal430cm7rhvvv7k5d";
     };
     meta.homepage = "https://github.com/junegunn/vader.vim/";
   };
 
   venn-nvim = buildVimPlugin {
     pname = "venn.nvim";
-    version = "2024-04-18";
+    version = "2024-05-03";
     src = fetchFromGitHub {
       owner = "jbyuki";
       repo = "venn.nvim";
-      rev = "a5430d75875acbe93e9685cdeb78c6eb2a329ed5";
-      sha256 = "1dwl75chqbp888yp2ykyqszz0glli2vx2cbw3lsgnrzlhql53alm";
+      rev = "b09c2f36ddf70b498281845109bedcf08a7e0de0";
+      sha256 = "0mhkmccr3l9ggqlr0gzc5fcdmx7ap66gqbihdnkc4mbn9jipcp0h";
     };
     meta.homepage = "https://github.com/jbyuki/venn.nvim/";
   };
@@ -11437,24 +11451,24 @@ final: prev:
 
   vifm-vim = buildVimPlugin {
     pname = "vifm.vim";
-    version = "2024-03-30";
+    version = "2024-05-04";
     src = fetchFromGitHub {
       owner = "vifm";
       repo = "vifm.vim";
-      rev = "9cd59bb0cabd34fc093f561f97041be71fdade33";
-      sha256 = "1aa2rr4z2f5nps2g3nzjs1kshszk8vbx4pwsr4x1a1llyi9i8gqr";
+      rev = "41b6887ff6589228c7d4f213259d8e274b0f9ced";
+      sha256 = "01whpq420w2ki00wpiz1dwbddxwzyq485rrw8mxbbsxsgq8plzfw";
     };
     meta.homepage = "https://github.com/vifm/vifm.vim/";
   };
 
   vim-CtrlXA = buildVimPlugin {
     pname = "vim-CtrlXA";
-    version = "2024-04-07";
+    version = "2024-05-10";
     src = fetchFromGitHub {
       owner = "Konfekt";
       repo = "vim-CtrlXA";
-      rev = "cb520cd3f9248b9ede236ff3da8ca3e0b68b6459";
-      sha256 = "1csbmjrdrlqsagz5b6hryrcglfdplwc7d26q4r20w37zx3f9qzw3";
+      rev = "d5c463d7a9b1249b3ecc03f796639fadf391c05f";
+      sha256 = "18jj5vqwz3xa3c9hyc1l0dcjnnxyb9a1wj4r5zg01ida5gsv3dkf";
     };
     meta.homepage = "https://github.com/Konfekt/vim-CtrlXA/";
   };
@@ -11785,12 +11799,12 @@ final: prev:
 
   vim-airline = buildVimPlugin {
     pname = "vim-airline";
-    version = "2024-02-17";
+    version = "2024-04-24";
     src = fetchFromGitHub {
       owner = "vim-airline";
       repo = "vim-airline";
-      rev = "d9f42cb46710e31962a9609939ddfeb0685dd779";
-      sha256 = "1a4pcyzvqsmsvz7fxf2h5b4v3xlsqv15qyr35xniji44196aaajc";
+      rev = "ff0f9a45a5d81d2c8aa67601c264b18c4fe26b15";
+      sha256 = "1bw6xfc4l41g3rmvyvyxvvq3iyjb0adn5yfamaxi3jkamgc09ik3";
     };
     meta.homepage = "https://github.com/vim-airline/vim-airline/";
   };
@@ -12449,8 +12463,8 @@ final: prev:
     src = fetchFromGitHub {
       owner = "ap";
       repo = "vim-css-color";
-      rev = "faa65935660a4596414fe21d57e2110faeb9e869";
-      sha256 = "0q6nzkvlv7igkg7k3p52rsqnxcd7l70lnlmlh9mjqhfaphpw2j8w";
+      rev = "950e80352b325ff26d3b0faf95b29e301c200f7d";
+      sha256 = "1f0q7ziqjsgbki0r3hyb0wd2cqmbap4dv7dbx0ydf7fxf6881bwx";
     };
     meta.homepage = "https://github.com/ap/vim-css-color/";
   };
@@ -12493,36 +12507,36 @@ final: prev:
 
   vim-dadbod = buildVimPlugin {
     pname = "vim-dadbod";
-    version = "2024-03-07";
+    version = "2024-05-01";
     src = fetchFromGitHub {
       owner = "tpope";
       repo = "vim-dadbod";
-      rev = "960bbb7de11b7282a68d579a64e838b487934493";
-      sha256 = "0x7ax3d6srqa8b7hhnyxh8rp2f9aiv5z5vlv5n6mjgjgcpbqydg6";
+      rev = "37523ffe0849b51db07fa7f48430c2aca5420a0e";
+      sha256 = "0lcdpmppy4h0q700z9jkn3k5w0kpfv4kg87mvr4wmzh4pcxac5gh";
     };
     meta.homepage = "https://github.com/tpope/vim-dadbod/";
   };
 
   vim-dadbod-completion = buildVimPlugin {
     pname = "vim-dadbod-completion";
-    version = "2023-11-17";
+    version = "2024-05-15";
     src = fetchFromGitHub {
       owner = "kristijanhusak";
       repo = "vim-dadbod-completion";
-      rev = "c920cb0ba3dff4b1b0ed373e1c0b3007dec696c2";
-      sha256 = "07shhzgg5f4zci1md5gmns0h4xq3hxvak4c78glm807kcw22rj70";
+      rev = "5d5ad196fcde223509d7dabbade0148f7884c5e3";
+      sha256 = "146zgn6cgzk1m9r09v3sdk3vzaan80jwq1zf0fskxk1c33jg1zpm";
     };
     meta.homepage = "https://github.com/kristijanhusak/vim-dadbod-completion/";
   };
 
   vim-dadbod-ui = buildVimPlugin {
     pname = "vim-dadbod-ui";
-    version = "2024-03-27";
+    version = "2024-05-15";
     src = fetchFromGitHub {
       owner = "kristijanhusak";
       repo = "vim-dadbod-ui";
-      rev = "066922699bdf1c6e14d517b844454b12b93ce25a";
-      sha256 = "0zqzn7lqgaf9iw49iik0g115nx7ny9z43db9cmxkk8lp5p660v6b";
+      rev = "ac28346e964c1b814b19942903c379d57aea82f3";
+      sha256 = "125kbkk5ib3nc1a2nki6mkf2zwh9i179n59ri1dzpx0whs1q4m9w";
     };
     meta.homepage = "https://github.com/kristijanhusak/vim-dadbod-ui/";
   };
@@ -13057,12 +13071,12 @@ final: prev:
 
   vim-fugitive = buildVimPlugin {
     pname = "vim-fugitive";
-    version = "2024-04-08";
+    version = "2024-05-15";
     src = fetchFromGitHub {
       owner = "tpope";
       repo = "vim-fugitive";
-      rev = "dac8e5c2d85926df92672bf2afb4fc48656d96c7";
-      sha256 = "1m33vpkfw1dx3kxxgw8r278a5rch4sd3ngc9mbnap97f0q8karm6";
+      rev = "19ca61c78c86a2ce6a425aee9b1c6664e5149ea6";
+      sha256 = "0k9q0ms0vm58dyrbgm21bp9ryx3jf1ns53jznd1yq8kh7mrcmppi";
     };
     meta.homepage = "https://github.com/tpope/vim-fugitive/";
   };
@@ -13165,12 +13179,12 @@ final: prev:
 
   vim-gitgutter = buildVimPlugin {
     pname = "vim-gitgutter";
-    version = "2024-01-05";
+    version = "2024-04-29";
     src = fetchFromGitHub {
       owner = "airblade";
       repo = "vim-gitgutter";
-      rev = "67ef116100b40f9ca128196504a2e0bc0a2753b0";
-      sha256 = "1haxh6m22f03lz30q8389hnfn78v4zpx3r6bibvb96v7swpbxqdi";
+      rev = "e801371917e52805a4ceb1e93f55ed1fba712f82";
+      sha256 = "0aa3fphgl0c0y3lmivvfmvrqrs5iqn5dkvdv2jhl1q73y6pnhxiz";
     };
     meta.homepage = "https://github.com/airblade/vim-gitgutter/";
   };
@@ -13815,12 +13829,12 @@ final: prev:
 
   vim-just = buildVimPlugin {
     pname = "vim-just";
-    version = "2024-04-09";
+    version = "2024-05-01";
     src = fetchFromGitHub {
       owner = "NoahTheDuke";
       repo = "vim-just";
-      rev = "a2777b4b113dafc639f541ad4f0f7da0adc640f4";
-      sha256 = "07dwja75dlwjmn687jbk56yz3srijjagppqn7xyl4bzd0svi4s97";
+      rev = "a621ede3bcf551144358c112ba1f4e6c2e84e092";
+      sha256 = "1ih2jd14faq80jdxrz42pdmcnz3k5pl4h5hn90x03w1m14bkpmxz";
     };
     meta.homepage = "https://github.com/NoahTheDuke/vim-just/";
   };
@@ -13851,12 +13865,12 @@ final: prev:
 
   vim-lastplace = buildVimPlugin {
     pname = "vim-lastplace";
-    version = "2024-01-05";
+    version = "2024-04-23";
     src = fetchFromGitHub {
       owner = "farmergreg";
       repo = "vim-lastplace";
-      rev = "a715d602745cdb1c35cfe73c50d3dd266eb5a349";
-      sha256 = "08rqvaqxvm7h6xh5fqbqf8s32nrs2h817j2aw2mj40jiwgsvmkfc";
+      rev = "cf0abc5f89c88f0c5219abe89334a8a3ef91fefd";
+      sha256 = "1c8wgq1w8dg32l8hga695wdisb7m42nl3nzpwx5ywfr1vjwl6ah3";
     };
     meta.homepage = "https://github.com/farmergreg/vim-lastplace/";
   };
@@ -13911,12 +13925,12 @@ final: prev:
 
   vim-ledger = buildVimPlugin {
     pname = "vim-ledger";
-    version = "2023-11-06";
+    version = "2024-05-07";
     src = fetchFromGitHub {
       owner = "ledger";
       repo = "vim-ledger";
-      rev = "281346a221434574dd7f8767a352b2bf0b218b74";
-      sha256 = "0fa5b41qlall8z2pziwgc43sj24kpavrhdz9amwwsiv2g9wl5cli";
+      rev = "7b97c8765bf920e92fd950a7a5bc37cb2b13a494";
+      sha256 = "0g66k9rrvdw0pkh7sqsdcms9viybqsibp1wpscync29ign7y12fa";
     };
     meta.homepage = "https://github.com/ledger/vim-ledger/";
   };
@@ -13995,12 +14009,12 @@ final: prev:
 
   vim-localvimrc = buildVimPlugin {
     pname = "vim-localvimrc";
-    version = "2024-03-18";
+    version = "2024-05-07";
     src = fetchFromGitHub {
       owner = "embear";
       repo = "vim-localvimrc";
-      rev = "841a0645272a485564b8739df91c81bcc03da899";
-      sha256 = "0v5yqw5qv3xjl6rhzj18mmdgj8wh12gqvql4yyz1fddf39nkdg69";
+      rev = "ee9df429b91d3e6ea33e173ef864b02c377036d0";
+      sha256 = "1f5ld9fm4fysgz9xixqkv3a87gvisc0w9q31alb6ypk3ib697c57";
     };
     meta.homepage = "https://github.com/embear/vim-localvimrc/";
   };
@@ -14079,12 +14093,12 @@ final: prev:
 
   vim-lsp-settings = buildVimPlugin {
     pname = "vim-lsp-settings";
-    version = "2024-04-20";
+    version = "2024-05-01";
     src = fetchFromGitHub {
       owner = "mattn";
       repo = "vim-lsp-settings";
-      rev = "4b3732c31b408953a1bb0fca6f003400abb5bfaa";
-      sha256 = "1p02j2k68csvcp5wshhzk29byavsc76gpj7a935smirj9d8nhcmr";
+      rev = "54ade15279bc11eea0780bf06d191e6e97c3ea5d";
+      sha256 = "0hcfr8bvxp442sls8iyw43gc9k7kwh3y47v777smz3als89pi76f";
     };
     meta.homepage = "https://github.com/mattn/vim-lsp-settings/";
   };
@@ -14151,12 +14165,12 @@ final: prev:
 
   vim-markbar = buildVimPlugin {
     pname = "vim-markbar";
-    version = "2024-04-01";
+    version = "2024-05-10";
     src = fetchFromGitHub {
       owner = "Yilin-Yang";
       repo = "vim-markbar";
-      rev = "94ac768d97b447c6c2a57fac3e555d4348a2919d";
-      sha256 = "1287mslww730536xa5fl9czi70hs42zdfaq84jd0azjf7vw6q04i";
+      rev = "9f5a948d44652074bf2b90d3da6a400d8a369ba5";
+      sha256 = "1r341ick9zdkmk7s0b7v6jqc4bzi7p9grh6bg08b7q72yv90wqvl";
     };
     meta.homepage = "https://github.com/Yilin-Yang/vim-markbar/";
   };
@@ -14836,12 +14850,12 @@ final: prev:
 
   vim-plug = buildVimPlugin {
     pname = "vim-plug";
-    version = "2024-03-30";
+    version = "2024-05-14";
     src = fetchFromGitHub {
       owner = "junegunn";
       repo = "vim-plug";
-      rev = "d977fa37866a48f1001b5adaadbbdbf88baf35e8";
-      sha256 = "02dn70qd8w0vw7qn404lvdp4gp8a4rwv5ylffgpf84dr3lnc1bm0";
+      rev = "3f1daea5bd4f7a9d1211996ea706daf3b639bf05";
+      sha256 = "1nw4dfvqws9k8fd3gkfm1vk59a3bhi80518h8n7dfifgpnqvddy1";
     };
     meta.homepage = "https://github.com/junegunn/vim-plug/";
   };
@@ -15160,12 +15174,12 @@ final: prev:
 
   vim-rooter = buildVimPlugin {
     pname = "vim-rooter";
-    version = "2023-09-14";
+    version = "2024-04-23";
     src = fetchFromGitHub {
       owner = "airblade";
       repo = "vim-rooter";
-      rev = "1353fa47ee3a81083c284e28ff4f7d92655d7c9e";
-      sha256 = "1ybhld3nmdr08icj8fkmi3pn3wz38afp5974cx5hkkshydz2cx1s";
+      rev = "45e53f01e4e1c4a3ee20814de232162713aff578";
+      sha256 = "12dqwhks52ng0hh98a1sbn5qjmwn77ch25h6n7kp1ffql6gjsadi";
     };
     meta.homepage = "https://github.com/airblade/vim-rooter/";
   };
@@ -15362,6 +15376,18 @@ final: prev:
     meta.homepage = "https://github.com/mhinz/vim-signify/";
   };
 
+  vim-sile = buildVimPlugin {
+    pname = "vim-sile";
+    version = "2022-09-03";
+    src = fetchFromGitHub {
+      owner = "sile-typesetter";
+      repo = "vim-sile";
+      rev = "7856f66d5e552eb18596f0162b81d8d14a4cbc16";
+      sha256 = "0xik91854jqmv3sa8af988w8xirm1vqql1ifjqxi61v00z0z00j7";
+    };
+    meta.homepage = "https://github.com/sile-typesetter/vim-sile/";
+  };
+
   vim-simpledb = buildVimPlugin {
     pname = "vim-simpledb";
     version = "2020-10-02";
@@ -15400,12 +15426,12 @@ final: prev:
 
   vim-slime = buildVimPlugin {
     pname = "vim-slime";
-    version = "2024-03-21";
+    version = "2024-05-15";
     src = fetchFromGitHub {
       owner = "jpalardy";
       repo = "vim-slime";
-      rev = "87988b173b7642e6a5124f9e5559148c4159d076";
-      sha256 = "0922p2nbaj8vf2wl697v8yjmfccyvn793mn7n0axlw3xr162qdkv";
+      rev = "0e1d0a43ddf4b9f06c1bc1da149f9408fedcc2e0";
+      sha256 = "16asnwpza7jrhh2sgcsnv6l4brbccfxf6ka44fsm1lgrp0m5gncx";
     };
     meta.homepage = "https://github.com/jpalardy/vim-slime/";
   };
@@ -15568,12 +15594,12 @@ final: prev:
 
   vim-spirv = buildVimPlugin {
     pname = "vim-spirv";
-    version = "2023-09-16";
+    version = "2024-05-16";
     src = fetchFromGitHub {
       owner = "kbenzie";
       repo = "vim-spirv";
-      rev = "3645b5ceb1898fe5a5cf968a5f078479cb8068f0";
-      sha256 = "1z31942gbwywayl8gq0ky9f73q6zpg6c7r828h753xly5dq7s7b8";
+      rev = "0111c3f1738d210c25b6c1bbe7a60c0fb487895a";
+      sha256 = "1hviir5g12yhr9vvyb2nff35hymp1nqnywqq72cb6ys1qg6vsnsw";
     };
     meta.homepage = "https://github.com/kbenzie/vim-spirv/";
   };
@@ -15662,6 +15688,18 @@ final: prev:
     meta.homepage = "https://github.com/svermeulen/vim-subversive/";
   };
 
+  vim-suda = buildVimPlugin {
+    pname = "vim-suda";
+    version = "2024-04-25";
+    src = fetchFromGitHub {
+      owner = "lambdalisue";
+      repo = "vim-suda";
+      rev = "b97fab52f9cdeabe2bbb5eb98d82356899f30829";
+      sha256 = "12chb6hv6ynl54dzwb7qz6rf9vwjglxfnzcmmhc2q2wm0y264gbi";
+    };
+    meta.homepage = "https://github.com/lambdalisue/vim-suda/";
+  };
+
   vim-surround = buildVimPlugin {
     pname = "vim-surround";
     version = "2022-10-25";
@@ -15772,12 +15810,12 @@ final: prev:
 
   vim-terraform = buildVimPlugin {
     pname = "vim-terraform";
-    version = "2024-02-13";
+    version = "2024-05-07";
     src = fetchFromGitHub {
       owner = "hashivim";
       repo = "vim-terraform";
-      rev = "21f756b933cd11ac5990a6046fdc7c4e2a6c0aee";
-      sha256 = "1bp6nqsdn9h3ihy5y2na7n40nmjr1vqsjj845ks4kfrzfcsvmxms";
+      rev = "24de93afb05078bac6a2e966402cc1f672277708";
+      sha256 = "1d8r0qd3ncnh3rbax9vjd3rckjwikxydgy9zjklmgnhn51ynggzi";
     };
     meta.homepage = "https://github.com/hashivim/vim-terraform/";
   };
@@ -16121,12 +16159,12 @@ final: prev:
 
   vim-visual-multi = buildVimPlugin {
     pname = "vim-visual-multi";
-    version = "2024-04-03";
+    version = "2024-04-26";
     src = fetchFromGitHub {
       owner = "mg979";
       repo = "vim-visual-multi";
-      rev = "e2ff111f123da6cf97f95b96b10eb95854f953c9";
-      sha256 = "0kg3wwgxv1gclyvdws52chyz1jfgmi4hc2pdg9fmkqpkk0g17r68";
+      rev = "b84a6d42c1c10678928b0bf8327f378c8bc8af5a";
+      sha256 = "1sj8nfn2yd1bsfqqf9kqpivxhfjcq1zq111ls9m6xh98ccxwcj7d";
     };
     meta.homepage = "https://github.com/mg979/vim-visual-multi/";
   };
@@ -16217,12 +16255,12 @@ final: prev:
 
   vim-wakatime = buildVimPlugin {
     pname = "vim-wakatime";
-    version = "2024-04-11";
+    version = "2024-04-29";
     src = fetchFromGitHub {
       owner = "wakatime";
       repo = "vim-wakatime";
-      rev = "5d11a253dd1ecabd4612a885175216032d814300";
-      sha256 = "1kx5xid8sybwc7fmmcn6j36r8n0m3g0529q5p0mywfn337m8q3np";
+      rev = "3cb40867cb5a3120f9bef76eff88edc7f1dc1a23";
+      sha256 = "0cikyb55z31jnh3zvm3xf8skfqdvdg3ihhb1z8xc1cxhx9gyc4hz";
     };
     meta.homepage = "https://github.com/wakatime/vim-wakatime/";
   };
@@ -16361,12 +16399,12 @@ final: prev:
 
   vim-zettel = buildVimPlugin {
     pname = "vim-zettel";
-    version = "2024-01-31";
+    version = "2024-05-03";
     src = fetchFromGitHub {
       owner = "michal-h21";
       repo = "vim-zettel";
-      rev = "c0230fb9f3d0f4aa10c6598549a733e20eeaa92f";
-      sha256 = "0pdl26s4n3wnjh2mf0vwwxwvjc8hg4i5cfsj8fip7k8zsgwg14vx";
+      rev = "96d3400598a95957062e42820cdeaa6ab22cba72";
+      sha256 = "1q6wy7mzi4lqjy37l4rbnjbvy7a0cmm2cccd07ywfd2cx31m26w0";
     };
     meta.homepage = "https://github.com/michal-h21/vim-zettel/";
   };
@@ -16529,12 +16567,12 @@ final: prev:
 
   vimspector = buildVimPlugin {
     pname = "vimspector";
-    version = "2024-02-17";
+    version = "2024-05-16";
     src = fetchFromGitHub {
       owner = "puremourning";
       repo = "vimspector";
-      rev = "def092693ea33eb2055fb2cfbcabb8e56ea77963";
-      sha256 = "0b4md13a4mdf2knmb0p3c83k3v04hl5y4z2sa2kci3shq41v694x";
+      rev = "c37d50fc463013bdad2ba044615b0bc2ce163681";
+      sha256 = "1iqx1x5mig0zd9vrc81fqavz4i59065a6yavqicws2d8la8rppv2";
       fetchSubmodules = true;
     };
     meta.homepage = "https://github.com/puremourning/vimspector/";
@@ -16542,12 +16580,12 @@ final: prev:
 
   vimtex = buildVimPlugin {
     pname = "vimtex";
-    version = "2024-04-20";
+    version = "2024-05-13";
     src = fetchFromGitHub {
       owner = "lervag";
       repo = "vimtex";
-      rev = "268dd8d311adebb121fa0a4b31cdabcb98072403";
-      sha256 = "1nd6yafqvdx0h7mad3pwfp3fxs8kssjyd758q3f99612fhl63c61";
+      rev = "9665df7f51ee24aa81dbd81782e0a22480209753";
+      sha256 = "0y93msqsiww0nvlfgbi9z6lgpis8fbfmhqgky3944r4hmprv0jdw";
     };
     meta.homepage = "https://github.com/lervag/vimtex/";
   };
@@ -16638,12 +16676,12 @@ final: prev:
 
   vscode-nvim = buildVimPlugin {
     pname = "vscode.nvim";
-    version = "2024-04-20";
+    version = "2024-05-09";
     src = fetchFromGitHub {
       owner = "Mofiqul";
       repo = "vscode.nvim";
-      rev = "d47aab1fbe423bf14275745684205dca08366277";
-      sha256 = "0g4dh47rasd5973mjv8cpsd1c6bf5c1bv7pc05sbjkb8vck2lsl5";
+      rev = "1a2cb491a962acf3bbf53c6d0a61b4ec76012570";
+      sha256 = "1mjsy9g2hkrzhy6bhrphpiz3nr8wr4l7jxacbz224jm7x1i2zn1l";
     };
     meta.homepage = "https://github.com/Mofiqul/vscode.nvim/";
   };
@@ -16710,24 +16748,24 @@ final: prev:
 
   wiki-ft-vim = buildVimPlugin {
     pname = "wiki-ft.vim";
-    version = "2023-05-14";
+    version = "2024-05-08";
     src = fetchFromGitHub {
       owner = "lervag";
       repo = "wiki-ft.vim";
-      rev = "d547e58dc7e6cf144e1d490a243b0788dd37104f";
-      sha256 = "1v6ra526m720njw1qbvmmw63mv58mjr0fkzq5gdiivrhk8kfg4zw";
+      rev = "10e3aa7ee58ae5351fc9ba0d692877a34cc99f08";
+      sha256 = "1cnqczi4pkfvd3q85qjmg6jd0kjn6l5lna2mlwfj15h528mkxjaw";
     };
     meta.homepage = "https://github.com/lervag/wiki-ft.vim/";
   };
 
   wiki-vim = buildVimPlugin {
     pname = "wiki.vim";
-    version = "2024-04-18";
+    version = "2024-05-16";
     src = fetchFromGitHub {
       owner = "lervag";
       repo = "wiki.vim";
-      rev = "0035cd000cb2a5c60ea67c176ce795852ea04448";
-      sha256 = "0xzxscvaflappikhi7l0v6i92cls6jp1y8fq2pfai9rnsyizvh7p";
+      rev = "2cdd5e5a73dd2fe54935b929aa802c39264b552e";
+      sha256 = "1qqkyy6s1367xss7rj7rssz0m7h2bh76nml0i7nv7f88rclgrsh8";
     };
     meta.homepage = "https://github.com/lervag/wiki.vim/";
   };
@@ -16890,12 +16928,12 @@ final: prev:
 
   yanky-nvim = buildVimPlugin {
     pname = "yanky.nvim";
-    version = "2024-02-02";
+    version = "2024-05-15";
     src = fetchFromGitHub {
       owner = "gbprod";
       repo = "yanky.nvim";
-      rev = "7c5cbf0122ff2dfbb6a92f14885894f65949cc8b";
-      sha256 = "177xjvghk3i889hlmzmyc8xsryrj6f69v6dk0zs3wf10m20ixr78";
+      rev = "ec4353355d4eabef451d16d46a3e0535176b81aa";
+      sha256 = "04wgkw03xxlwy1cvjrvdssfw7v5q1alb2wbk0nawhca5rv27r2p4";
     };
     meta.homepage = "https://github.com/gbprod/yanky.nvim/";
   };
@@ -16951,12 +16989,12 @@ final: prev:
 
   zellij-nvim = buildVimPlugin {
     pname = "zellij.nvim";
-    version = "2023-12-03";
+    version = "2024-05-03";
     src = fetchFromGitHub {
       owner = "Lilja";
       repo = "zellij.nvim";
-      rev = "483c855ab7a3aba60e522971991481807ea3a47b";
-      sha256 = "17lapf7lznlw557k00dpvx04j5pkgdqk95aw5js3aamydnhi976g";
+      rev = "99659823e2ee81e4ba5a2579093776ee39a93b15";
+      sha256 = "18i6gbzi3ijhix09wjv5z297hwpnfifb3x6vn37l8352icfx3wyq";
     };
     meta.homepage = "https://github.com/Lilja/zellij.nvim/";
   };
@@ -17059,12 +17097,12 @@ final: prev:
 
   catppuccin-nvim = buildVimPlugin {
     pname = "catppuccin-nvim";
-    version = "2024-04-14";
+    version = "2024-05-08";
     src = fetchFromGitHub {
       owner = "catppuccin";
       repo = "nvim";
-      rev = "a1439ad7c584efb3d0ce14ccb835967f030450fe";
-      sha256 = "1ngjll0khnx1nighazw64kvfdl139z8xhv0hh2r4bb40ynxnhdf9";
+      rev = "d97387aea8264f484bb5d5e74f2182a06c83e0d8";
+      sha256 = "1wybci6cjadjd5z0wkx2jmwb9ir72s4g4qrd9qsjl2qjfiaf26k9";
     };
     meta.homepage = "https://github.com/catppuccin/nvim/";
   };
@@ -17179,12 +17217,12 @@ final: prev:
 
   nvchad-ui = buildVimPlugin {
     pname = "nvchad-ui";
-    version = "2024-04-19";
+    version = "2024-05-08";
     src = fetchFromGitHub {
       owner = "nvchad";
       repo = "ui";
-      rev = "6512f7d1faa4fd86c53e9c5c8492b4bdda692613";
-      sha256 = "165yndfj0m3wib17wa15fswsfwixm1bxalprpbdwvyzd2f9p1fd0";
+      rev = "4f507775f3935a39d994e7a1d3688e30f7fb8713";
+      sha256 = "0lrxhbcdmy2xpwwdxg9dyh954y7xxb8zc75b2lxf5z8lmpxi3ccp";
     };
     meta.homepage = "https://github.com/nvchad/ui/";
   };
@@ -17227,11 +17265,11 @@ final: prev:
 
   rose-pine = buildVimPlugin {
     pname = "rose-pine";
-    version = "2024-04-18";
+    version = "2024-05-14";
     src = fetchFromGitHub {
       owner = "rose-pine";
       repo = "neovim";
-      rev = "17b466e79479758b332a3cac12544a3ad2be6241";
+      rev = "b6fe88c3282cf9f117a3e836d761c2d78d02f417";
       sha256 = "1fwwp7szzz2yp4z5hngqn8ll8765xv0nlhgcb75yj257kz7x5lq1";
     };
     meta.homepage = "https://github.com/rose-pine/neovim/";
diff --git a/pkgs/applications/editors/vim/plugins/nvim-treesitter/generated.nix b/pkgs/applications/editors/vim/plugins/nvim-treesitter/generated.nix
index 42c846ee5ebc..06bf0213761b 100644
--- a/pkgs/applications/editors/vim/plugins/nvim-treesitter/generated.nix
+++ b/pkgs/applications/editors/vim/plugins/nvim-treesitter/generated.nix
@@ -27,57 +27,57 @@
   };
   angular = buildGrammar {
     language = "angular";
-    version = "0.0.0+rev=b7a7167";
+    version = "0.0.0+rev=10f21f3";
     src = fetchFromGitHub {
       owner = "dlvandenberg";
       repo = "tree-sitter-angular";
-      rev = "b7a7167762e3863b3d6247c708b7f9bca1ca7bea";
-      hash = "sha256-GXjjRcB0ml9MMYuJUWAlORWrOUsRxrwZ6kmg0fp3kNQ=";
+      rev = "10f21f3f1b10584e62ecc113ab3cda1196d0ceb8";
+      hash = "sha256-hBvDFLIN4n0dbpH8FKe0sY8t4Jwa0GtrLt2GG04Qgn8=";
     };
     meta.homepage = "https://github.com/dlvandenberg/tree-sitter-angular";
   };
   apex = buildGrammar {
     language = "apex";
-    version = "0.0.0+rev=857077f";
+    version = "0.0.0+rev=c99ad4b";
     src = fetchFromGitHub {
       owner = "aheber";
       repo = "tree-sitter-sfapex";
-      rev = "857077f9e6bb04df0f769c18d32bfe036911adc8";
-      hash = "sha256-b7rw0AWqqvFisS0qlDppJFxSnjNZaTTeph6gKfQwFNA=";
+      rev = "c99ad4b16d112fea91745e3f1b769754239fdaba";
+      hash = "sha256-tl/MajAsdu7YxQcdFZmupZldhCl6QB//4FwiBR44nm4=";
     };
     location = "apex";
     meta.homepage = "https://github.com/aheber/tree-sitter-sfapex";
   };
   arduino = buildGrammar {
     language = "arduino";
-    version = "0.0.0+rev=4ddf79e";
+    version = "0.0.0+rev=babb6d4";
     src = fetchFromGitHub {
       owner = "ObserverOfTime";
       repo = "tree-sitter-arduino";
-      rev = "4ddf79edaa87170ec12bd6a8d03a8ac528fe0ae7";
-      hash = "sha256-DbxzbbmKq0GxbKIKtoygEhbdYeEwp23Nkk15WI2AQW4=";
+      rev = "babb6d4da69b359bbb80adbf1fe39c0da9175210";
+      hash = "sha256-nA/4SRlXfm8hMZw/GOQFAxzoPNAzVP0cCnHLc1ZawXU=";
     };
     meta.homepage = "https://github.com/ObserverOfTime/tree-sitter-arduino";
   };
   asm = buildGrammar {
     language = "asm";
-    version = "0.0.0+rev=afdc3d5";
+    version = "0.0.0+rev=b0306e9";
     src = fetchFromGitHub {
       owner = "RubixDev";
       repo = "tree-sitter-asm";
-      rev = "afdc3d5da18d42cbb471c0f40527dbed9cace7ad";
-      hash = "sha256-YYzJMGmizeqZxBF2YXYPLjAo54Y60z7RFhLcmOJbeGY=";
+      rev = "b0306e9bb2ebe01c6562f1aef265cc42ccc53070";
+      hash = "sha256-xmuusYIDpttr97ZJrouW0VB02pZG8usQ9kMsARRHeJI=";
     };
     meta.homepage = "https://github.com/RubixDev/tree-sitter-asm";
   };
   astro = buildGrammar {
     language = "astro";
-    version = "0.0.0+rev=b422ccd";
+    version = "0.0.0+rev=4be1807";
     src = fetchFromGitHub {
       owner = "virchau13";
       repo = "tree-sitter-astro";
-      rev = "b422ccd41f0b433260a3d28df7e39fa2ff63ef9c";
-      hash = "sha256-FrXd4dR28GP1CAP+SaGSRO8TImok9MjVw2vWyZgUijQ=";
+      rev = "4be180759ec13651f72bacee65fa477c64222a1a";
+      hash = "sha256-qc9InFEQgeFfFReJuQd8WjTNK4fFMEaWcqQUcGxxuBI=";
     };
     meta.homepage = "https://github.com/virchau13/tree-sitter-astro";
   };
@@ -105,23 +105,23 @@
   };
   bash = buildGrammar {
     language = "bash";
-    version = "0.0.0+rev=f8fb327";
+    version = "0.0.0+rev=2fbd860";
     src = fetchFromGitHub {
       owner = "tree-sitter";
       repo = "tree-sitter-bash";
-      rev = "f8fb3274f72a30896075585b32b0c54cad65c086";
-      hash = "sha256-sj1qYb42k0hXXcNCKg1hINYD11wDcVpnoPhZNtlYT6k=";
+      rev = "2fbd860f802802ca76a6661ce025b3a3bca2d3ed";
+      hash = "sha256-rCuQbnQAOnQWKYreNH80nlL+0A1qbWbjMvtczcoWPrY=";
     };
     meta.homepage = "https://github.com/tree-sitter/tree-sitter-bash";
   };
   bass = buildGrammar {
     language = "bass";
-    version = "0.0.0+rev=c9ba456";
+    version = "0.0.0+rev=28dc705";
     src = fetchFromGitHub {
       owner = "vito";
       repo = "tree-sitter-bass";
-      rev = "c9ba4568af24cd3403029730687c0a43d1350a43";
-      hash = "sha256-F131TkIt2mW2n8Da3zI1/B0yoT9Ezo2hWoptpsdMrb4=";
+      rev = "28dc7059722be090d04cd751aed915b2fee2f89a";
+      hash = "sha256-NKu60BbTKLsYQRtfEoqGQUKERJFnmZNVJE6HBz/BRIM=";
     };
     meta.homepage = "https://github.com/vito/tree-sitter-bass";
   };
@@ -160,56 +160,56 @@
   };
   bitbake = buildGrammar {
     language = "bitbake";
-    version = "0.0.0+rev=7e0e2ac";
+    version = "0.0.0+rev=a5d04fd";
     src = fetchFromGitHub {
       owner = "amaanq";
       repo = "tree-sitter-bitbake";
-      rev = "7e0e2ac6f1d0da1a91ab84f35edddfdfece54f1a";
-      hash = "sha256-7He69Nk1b0gUCnLcfALQk46E2JPDhVpIIqS6qtJIx4k=";
+      rev = "a5d04fdb5a69a02b8fa8eb5525a60dfb5309b73b";
+      hash = "sha256-SzHFNIeR6ukWXKkLd2Trg9zuKLMwNAolXGPIDBDaFRg=";
     };
     meta.homepage = "https://github.com/amaanq/tree-sitter-bitbake";
   };
   blueprint = buildGrammar {
     language = "blueprint";
-    version = "0.0.0+rev=863cea9";
+    version = "0.0.0+rev=60ba737";
     src = fetchFromGitLab {
       owner = "gabmus";
       repo = "tree-sitter-blueprint";
-      rev = "863cea9f83ad5637300478e0559262f1e791684b";
-      hash = "sha256-QbkwdqH4Q+bqsp7XawUNXR45ROxfpMf+goCBFTw07I4=";
+      rev = "60ba73739c6083c693d86a1a7cf039c07eb4ed59";
+      hash = "sha256-ojm6OKgriKUqUcRBf8WgHv+BvPjUuYOaabC8VXE+Kwk=";
     };
     meta.homepage = "https://gitlab.com/gabmus/tree-sitter-blueprint.git";
   };
   c = buildGrammar {
     language = "c";
-    version = "0.0.0+rev=1aafaff";
+    version = "0.0.0+rev=82fb86a";
     src = fetchFromGitHub {
       owner = "tree-sitter";
       repo = "tree-sitter-c";
-      rev = "1aafaff4d26dac5a36dd3495be33e1c20161d761";
-      hash = "sha256-eix/BqsZzrJc+h1sHiG/IDtdyZvIsEdox71sPMNXs58=";
+      rev = "82fb86aa544843bd17a9f0f3dc16edf645a34349";
+      hash = "sha256-wiCgRSrJodNq7WVQTIDsQ6K/ZrgnSFdGG9kDegu6zGs=";
     };
     meta.homepage = "https://github.com/tree-sitter/tree-sitter-c";
   };
   c_sharp = buildGrammar {
     language = "c_sharp";
-    version = "0.0.0+rev=9de5652";
+    version = "0.0.0+rev=82fa8f0";
     src = fetchFromGitHub {
       owner = "tree-sitter";
       repo = "tree-sitter-c-sharp";
-      rev = "9de565257ada70ac441c640e3b5d6850e2df5ab8";
-      hash = "sha256-QNI2V1CG1DdkMIzR+NUcM/IjtQHnJcYn9Nk3sUmkINE=";
+      rev = "82fa8f05f41a33e9bc830f85d74a9548f0291738";
+      hash = "sha256-5GkU3/yVMCnNvNssad3vEIN8PlbLeQsRBlwgH2KUrBo=";
     };
     meta.homepage = "https://github.com/tree-sitter/tree-sitter-c-sharp";
   };
   cairo = buildGrammar {
     language = "cairo";
-    version = "0.0.0+rev=6216c6e";
+    version = "0.0.0+rev=6238f60";
     src = fetchFromGitHub {
       owner = "amaanq";
       repo = "tree-sitter-cairo";
-      rev = "6216c6ee5e9fc0649c4bd7b1aedd884a55bdd9ef";
-      hash = "sha256-D8yAkxaokkdNFLnBDWTa6Xu21ibpVw1A4sd/llh8BKs=";
+      rev = "6238f609bea233040fe927858156dee5515a0745";
+      hash = "sha256-QjCt3sRINrNbaxtNwj43+g7D3xYmuh0BIAo6wWQ/54g=";
     };
     meta.homepage = "https://github.com/amaanq/tree-sitter-cairo";
   };
@@ -226,23 +226,23 @@
   };
   chatito = buildGrammar {
     language = "chatito";
-    version = "0.0.0+rev=fe7a2a7";
+    version = "0.0.0+rev=a461f20";
     src = fetchFromGitHub {
       owner = "ObserverOfTime";
       repo = "tree-sitter-chatito";
-      rev = "fe7a2a75d3d74c1215141b7a7ebebb57ae17a370";
-      hash = "sha256-4ianrWSctAIufc/8I1pxWvoij1nG7mcRemQs0fj1Qt8=";
+      rev = "a461f20dedb43905febb12c1635bc7d2e43e96f0";
+      hash = "sha256-nAdyG068usqGr9OI/bZXiNfSkIg/+L6KTcylZVNNc+o=";
     };
     meta.homepage = "https://github.com/ObserverOfTime/tree-sitter-chatito";
   };
   clojure = buildGrammar {
     language = "clojure";
-    version = "0.0.0+rev=6e41628";
+    version = "0.0.0+rev=3a1ace9";
     src = fetchFromGitHub {
       owner = "sogaiu";
       repo = "tree-sitter-clojure";
-      rev = "6e41628e9d18b19caea1cb1d72aae4ccff5bdfe9";
-      hash = "sha256-ssJIftjadMmoESm882mQ3fUjIoTDWtBrOolgYLcmlEE=";
+      rev = "3a1ace906c151dd631cf6f149b5083f2b60e6a9e";
+      hash = "sha256-pLOCUReklkRt9t5kalDrOAlE9U7a2O8sXaZFjYhagcg=";
     };
     meta.homepage = "https://github.com/sogaiu/tree-sitter-clojure";
   };
@@ -259,34 +259,34 @@
   };
   comment = buildGrammar {
     language = "comment";
-    version = "0.0.0+rev=aefcc28";
+    version = "0.0.0+rev=5d8b29f";
     src = fetchFromGitHub {
       owner = "stsewd";
       repo = "tree-sitter-comment";
-      rev = "aefcc2813392eb6ffe509aa0fc8b4e9b57413ee1";
-      hash = "sha256-ihkBqdYVulTlysb9J8yg4c5XVktJw8jIwzhqybBw8Ug=";
+      rev = "5d8b29f6ef3bf64d59430dcfe76b31cc44b5abfd";
+      hash = "sha256-19jxH6YK3Rn0fOGSiWen5/eNKPKUSXVsIYB/QAPEA1I=";
     };
     meta.homepage = "https://github.com/stsewd/tree-sitter-comment";
   };
   commonlisp = buildGrammar {
     language = "commonlisp";
-    version = "0.0.0+rev=83ae738";
+    version = "0.0.0+rev=bf2a65b";
     src = fetchFromGitHub {
       owner = "theHamsta";
       repo = "tree-sitter-commonlisp";
-      rev = "83ae738bed7e914cee9090c3fe4c80a32ab45905";
-      hash = "sha256-0qWcrn65vtOYz54NVi/sj+GqnGMztEpZJsl9sjbF5sw=";
+      rev = "bf2a65b1c119898a1a17389e07f2a399c05cdc0c";
+      hash = "sha256-dCrHrNfJoHfOt3sS2fUqbrw4snHMu+MoPumLYTGfoho=";
     };
     meta.homepage = "https://github.com/theHamsta/tree-sitter-commonlisp";
   };
   cooklang = buildGrammar {
     language = "cooklang";
-    version = "0.0.0+rev=81c2a86";
+    version = "0.0.0+rev=4ebe237";
     src = fetchFromGitHub {
       owner = "addcninblue";
       repo = "tree-sitter-cooklang";
-      rev = "81c2a8667846b1e60db68b5601d864fe00fd1d3a";
-      hash = "sha256-zlffOW/ZJxpn3T2CMkrznkLLtuqxp7gIxVHEItvMepY=";
+      rev = "4ebe237c1cf64cf3826fc249e9ec0988fe07e58e";
+      hash = "sha256-VB3BxSrhIbD8TytfOJx7IhTwl/aWasB8t3xnrO34rQE=";
     };
     meta.homepage = "https://github.com/addcninblue/tree-sitter-cooklang";
   };
@@ -314,46 +314,46 @@
   };
   cpp = buildGrammar {
     language = "cpp";
-    version = "0.0.0+rev=72fd001";
+    version = "0.0.0+rev=2369fa9";
     src = fetchFromGitHub {
       owner = "tree-sitter";
       repo = "tree-sitter-cpp";
-      rev = "72fd00128f1c38319670cbf4bcedbba0dc849d96";
-      hash = "sha256-COlDbMi3kKb1YAjJthBO5TmLOWs1dH4VAGNYgh8iSmE=";
+      rev = "2369fa991eba294e9238e28280ffcd58132f94bc";
+      hash = "sha256-reDeaGf7jDaNzPW7ivvq3n9Tl/SuZYs/O/d93whHa7U=";
     };
     meta.homepage = "https://github.com/tree-sitter/tree-sitter-cpp";
   };
   css = buildGrammar {
     language = "css";
-    version = "0.0.0+rev=02b4ee7";
+    version = "0.0.0+rev=f6be52c";
     src = fetchFromGitHub {
       owner = "tree-sitter";
       repo = "tree-sitter-css";
-      rev = "02b4ee757654b7d54fe35352fd8e53a8a4385d42";
-      hash = "sha256-IniaiBBx2pDD5nwJKfr5i9qvfvG+z8H21v14qk14M0g=";
+      rev = "f6be52c3d1cdb1c5e4dd7d8bce0a57497f55d6af";
+      hash = "sha256-V1KrNM5C03RcRYcRIPxxfyWlnQkbyAevTHuZINn3Bdc=";
     };
     meta.homepage = "https://github.com/tree-sitter/tree-sitter-css";
   };
   csv = buildGrammar {
     language = "csv";
-    version = "0.0.0+rev=cda48a5";
+    version = "0.0.0+rev=7eb7297";
     src = fetchFromGitHub {
       owner = "amaanq";
       repo = "tree-sitter-csv";
-      rev = "cda48a5e890b30619da5bc3ff55be1b1d3d08c8d";
-      hash = "sha256-K4tOYdI68fXnWbvSat50FL/jDSb8f6gtZOhE6qKPLyg=";
+      rev = "7eb7297823605392d2bbcc4c09b1cd18d6fa9529";
+      hash = "sha256-5VL7uREH0lloAWo9rdJXsjDsWxgL6fngWJSmi4fM7UQ=";
     };
     location = "csv";
     meta.homepage = "https://github.com/amaanq/tree-sitter-csv";
   };
   cuda = buildGrammar {
     language = "cuda";
-    version = "0.0.0+rev=50a28f4";
+    version = "0.0.0+rev=e7878a9";
     src = fetchFromGitHub {
       owner = "theHamsta";
       repo = "tree-sitter-cuda";
-      rev = "50a28f4600c559e3d19a1825e854dfe6dcac1d49";
-      hash = "sha256-xVf9sD5CbXDn1Kw9vkgKd+hWmerQgHf7ntUtynRXpBo=";
+      rev = "e7878a9cf4157e9d6c8013ff5605c9f26d62894d";
+      hash = "sha256-1UCYWY6DvanLdFeS0ALHG3eJT/Rk/muZTkFm3YwF5II=";
     };
     meta.homepage = "https://github.com/theHamsta/tree-sitter-cuda";
   };
@@ -381,12 +381,12 @@
   };
   dart = buildGrammar {
     language = "dart";
-    version = "0.0.0+rev=6da4647";
+    version = "0.0.0+rev=ac0bb84";
     src = fetchFromGitHub {
       owner = "UserNobody14";
       repo = "tree-sitter-dart";
-      rev = "6da46473ab8accb13da48113f4634e729a71d335";
-      hash = "sha256-AT7DuOq4mZZxizB2a5UsPGSIP11Jn88O7bJeJIEmv8s=";
+      rev = "ac0bb849ccd1a923963af47573b5e396736ff582";
+      hash = "sha256-yEI0a+YlEdjlmSTWZFdVUr7lwuK4wNsE9WycOkXzoG4=";
     };
     meta.homepage = "https://github.com/UserNobody14/tree-sitter-dart";
   };
@@ -414,12 +414,12 @@
   };
   diff = buildGrammar {
     language = "diff";
-    version = "0.0.0+rev=710e881";
+    version = "0.0.0+rev=629676f";
     src = fetchFromGitHub {
       owner = "the-mikedavis";
       repo = "tree-sitter-diff";
-      rev = "710e881127512bda8157096e26c1f3e91702823a";
-      hash = "sha256-BdRWI/7LiUS8z5LehaQgPVcdOPcEOJSmNHowtukHAQw=";
+      rev = "629676fc3919606964231b2c7b9677d6998a2cb4";
+      hash = "sha256-E2l971rSVAuSiLDVMto6hjViaxDLjA7LFQM+/evMXhk=";
     };
     meta.homepage = "https://github.com/the-mikedavis/tree-sitter-diff";
   };
@@ -436,23 +436,23 @@
   };
   djot = buildGrammar {
     language = "djot";
-    version = "0.0.0+rev=63f176e";
+    version = "0.0.0+rev=0e9a836";
     src = fetchFromGitHub {
       owner = "treeman";
       repo = "tree-sitter-djot";
-      rev = "63f176e7db5fca073b55b98b7e5e95afd1587fcb";
-      hash = "sha256-8ksZvW0Gb3fZXUDA/uv3AzxDaD3s9B2ZyAIIp261jQg=";
+      rev = "0e9a836ec47612ade15645fb1680adb549894a6c";
+      hash = "sha256-PdToOLDgEYKVCYT7jmCBNWtuQ0XLgOYF1/PycSxP3XU=";
     };
     meta.homepage = "https://github.com/treeman/tree-sitter-djot";
   };
   dockerfile = buildGrammar {
     language = "dockerfile";
-    version = "0.0.0+rev=439c3e7";
+    version = "0.0.0+rev=087daa2";
     src = fetchFromGitHub {
       owner = "camdencheek";
       repo = "tree-sitter-dockerfile";
-      rev = "439c3e7b8a9bfdbf1f7d7c2beaae4173dc484cbf";
-      hash = "sha256-sW3fCCAXNak4JszEPgspZFfOHtUlqnW3eRxzHNfzInk=";
+      rev = "087daa20438a6cc01fa5e6fe6906d77c869d19fe";
+      hash = "sha256-uDRDq6MYYV8nh6FDsQN3tdyZywEg8A224bfWrgFGvFs=";
     };
     meta.homepage = "https://github.com/camdencheek/tree-sitter-dockerfile";
   };
@@ -469,35 +469,35 @@
   };
   doxygen = buildGrammar {
     language = "doxygen";
-    version = "0.0.0+rev=a750758";
+    version = "0.0.0+rev=4a30eba";
     src = fetchFromGitHub {
       owner = "amaanq";
       repo = "tree-sitter-doxygen";
-      rev = "a750758da90955c86fcc22fcbb6fa44a7d009865";
-      hash = "sha256-/4yBu5S9bQhxGO9JcNZukn+xpfzfaQQRLqVuDHgMYd0=";
+      rev = "4a30eba5d047d6a8c5b005202b4848c0b33d76ca";
+      hash = "sha256-yR2JtWYdy84z38Idx84qIuUPoBMiSj/7TVw0J1+g/U8=";
     };
     meta.homepage = "https://github.com/amaanq/tree-sitter-doxygen";
   };
   dtd = buildGrammar {
     language = "dtd";
-    version = "0.0.0+rev=96beba9";
+    version = "0.0.0+rev=648183d";
     src = fetchFromGitHub {
       owner = "tree-sitter-grammars";
       repo = "tree-sitter-xml";
-      rev = "96beba9f3e4156aaae64bb86997503b1ceb1283d";
-      hash = "sha256-XmSU9Om1bj/PtBxr22Sf81Mx68QINtK8Gls1fRldt6Q=";
+      rev = "648183d86f6f8ffb240ea11b4c6873f6f45d8b67";
+      hash = "sha256-O40z5VYmFeE8pkJ85Vu5DWV31YslIrwD80+4qnpoRNY=";
     };
     location = "dtd";
     meta.homepage = "https://github.com/tree-sitter-grammars/tree-sitter-xml";
   };
   earthfile = buildGrammar {
     language = "earthfile";
-    version = "0.0.0+rev=7d5cc9e";
+    version = "0.0.0+rev=cc99a3f";
     src = fetchFromGitHub {
       owner = "glehmann";
       repo = "tree-sitter-earthfile";
-      rev = "7d5cc9e27e3e340c8b521d11c8da84047494fe30";
-      hash = "sha256-0rjD8SJGot/KAsLVW98e7X2tbNPntScRk/oEsS1wmAg=";
+      rev = "cc99a3f5e4281b63fdd63dca4750e808fd52628f";
+      hash = "sha256-wOKNkNoNw2Stv+8zhVAX2No8Y060Kri/j5iytJvviUc=";
     };
     meta.homepage = "https://github.com/glehmann/tree-sitter-earthfile";
   };
@@ -581,23 +581,23 @@
   };
   embedded_template = buildGrammar {
     language = "embedded_template";
-    version = "0.0.0+rev=6d791b8";
+    version = "0.0.0+rev=38d5004";
     src = fetchFromGitHub {
       owner = "tree-sitter";
       repo = "tree-sitter-embedded-template";
-      rev = "6d791b897ecda59baa0689a85a9906348a2a6414";
-      hash = "sha256-I4L3mxkAnmKs+BiNRDAs58QFD2r8jN1B2yv0dZdgkzQ=";
+      rev = "38d5004a797298dc42c85e7706c5ceac46a3f29f";
+      hash = "sha256-IPPCexaq42Em5A+kmrj5e/SFrXoKdWCTYAL/TWvbDJ0=";
     };
     meta.homepage = "https://github.com/tree-sitter/tree-sitter-embedded-template";
   };
   erlang = buildGrammar {
     language = "erlang";
-    version = "0.0.0+rev=20ce5a9";
+    version = "0.0.0+rev=868306b";
     src = fetchFromGitHub {
       owner = "WhatsApp";
       repo = "tree-sitter-erlang";
-      rev = "20ce5a9234c7248b3f91c5b0b028f1760b954dde";
-      hash = "sha256-5m4zWP1LPbcab73RIIXD8wG8y68s/rwFypOX7OEWgoQ=";
+      rev = "868306b033f5163658e8777940da68d61afad5cb";
+      hash = "sha256-9QRYYKSy7riZfUVSnYzTIGH0tznU90Q1nYwe7DDr284=";
     };
     meta.homepage = "https://github.com/WhatsApp/tree-sitter-erlang";
   };
@@ -625,12 +625,12 @@
   };
   fennel = buildGrammar {
     language = "fennel";
-    version = "0.0.0+rev=215e391";
+    version = "0.0.0+rev=8ad1770";
     src = fetchFromGitHub {
       owner = "alexmozaidze";
       repo = "tree-sitter-fennel";
-      rev = "215e3913524abc119daa9db7cf6ad2f2f5620189";
-      hash = "sha256-myh0+ZNDzdUZFAdsw8uVGyo0VYh0wKNZ11vlJKTSZnA=";
+      rev = "8ad17704b3c2469155947d4e8fcb618cf1328459";
+      hash = "sha256-7a2spHMApW+yc/wrpVwWl9ykPAdC4QTOeMIs1jxajsU=";
     };
     meta.homepage = "https://github.com/alexmozaidze/tree-sitter-fennel";
   };
@@ -702,23 +702,23 @@
   };
   fsh = buildGrammar {
     language = "fsh";
-    version = "0.0.0+rev=fa33477";
+    version = "0.0.0+rev=fad2e17";
     src = fetchFromGitHub {
       owner = "mgramigna";
       repo = "tree-sitter-fsh";
-      rev = "fa3347712f7a59ed02ccf508284554689c6cde28";
-      hash = "sha256-6TLG2edQeo+jRVAnO6mq3pC8RYNFi2UVVT3mQGZqk5U=";
+      rev = "fad2e175099a45efbc98f000cc196d3674cc45e0";
+      hash = "sha256-91r1FCQTocDkhS5Tx0vnFliitMStVzNTpf6BwPyaqVM=";
     };
     meta.homepage = "https://github.com/mgramigna/tree-sitter-fsh";
   };
   func = buildGrammar {
     language = "func";
-    version = "0.0.0+rev=0834e35";
+    version = "0.0.0+rev=f780ca5";
     src = fetchFromGitHub {
       owner = "amaanq";
       repo = "tree-sitter-func";
-      rev = "0834e35ecf8b23fbf9ad15b088af6a897e19d4a8";
-      hash = "sha256-2+YOp7MnwZR2qg95h/ywjJwDSLUnodtkwwpv9zuy8p8=";
+      rev = "f780ca55e65e7d7360d0229331763e16c452fc98";
+      hash = "sha256-jM0VJZlfhenAZbhabpgsoRIGny3WSDoimZtwogcvaSI=";
     };
     meta.homepage = "https://github.com/amaanq/tree-sitter-func";
   };
@@ -812,12 +812,12 @@
   };
   gleam = buildGrammar {
     language = "gleam";
-    version = "0.0.0+rev=bcf9c45";
+    version = "0.0.0+rev=8432ffe";
     src = fetchFromGitHub {
       owner = "gleam-lang";
       repo = "tree-sitter-gleam";
-      rev = "bcf9c45b56cbe46e9dac5eee0aee75df270000ac";
-      hash = "sha256-XdgPPX5gKvr4yIpMy6M7AKxaMrilt5Pzp6gUa8o+EwE=";
+      rev = "8432ffe32ccd360534837256747beb5b1c82fca1";
+      hash = "sha256-PO01z8vyzDT4ZGPxgZl9PPsp/gktT2TaCwutMy87i8E=";
     };
     meta.homepage = "https://github.com/gleam-lang/tree-sitter-gleam";
   };
@@ -834,12 +834,12 @@
   };
   glsl = buildGrammar {
     language = "glsl";
-    version = "0.0.0+rev=e7817c9";
+    version = "0.0.0+rev=8c9fb41";
     src = fetchFromGitHub {
       owner = "theHamsta";
       repo = "tree-sitter-glsl";
-      rev = "e7817c982e0e921c5ee89a1e0283121bb5cc5e01";
-      hash = "sha256-pkbvD+VQUtR6GiY4RP6J6tB2Cl2UyqjB7t/HE0dLr78=";
+      rev = "8c9fb41836dc202bbbcf0e2369f256055786dedb";
+      hash = "sha256-aUM0gisdoV3A9lWSjn21wXIBI8ZrKI/5IffAaf917e4=";
     };
     meta.homepage = "https://github.com/theHamsta/tree-sitter-glsl";
   };
@@ -867,12 +867,12 @@
   };
   go = buildGrammar {
     language = "go";
-    version = "0.0.0+rev=eb68645";
+    version = "0.0.0+rev=7ee8d92";
     src = fetchFromGitHub {
       owner = "tree-sitter";
       repo = "tree-sitter-go";
-      rev = "eb68645662a3f7bf7fdd4bcb9531585f54c8570e";
-      hash = "sha256-RZx8M3QGX/+kfjbEB0+f2jeDZhGF+XGXwtb5oltxHrI=";
+      rev = "7ee8d928db5202f6831a78f8112fd693bf69f98b";
+      hash = "sha256-ARfpfMSXy+DpvUMJvUgjgReoyvGbrVwYutZD91JA4qc=";
     };
     meta.homepage = "https://github.com/tree-sitter/tree-sitter-go";
   };
@@ -999,12 +999,12 @@
   };
   haskell = buildGrammar {
     language = "haskell";
-    version = "0.0.0+rev=95a4f00";
+    version = "0.0.0+rev=a50070d";
     src = fetchFromGitHub {
       owner = "tree-sitter";
       repo = "tree-sitter-haskell";
-      rev = "95a4f0023741b3bee0cc500f3dab9c5bab2dc2be";
-      hash = "sha256-bqcBjH4ar5OcxkhtFcYmBxDwHK0TYxkXEcg4NLudi08=";
+      rev = "a50070d5bb5bd5c1281740a6102ecf1f4b0c4f19";
+      hash = "sha256-huO0Ly9JYQbT64o/AjdZrE9vghQ5vT+/iQl50o4TJ0I=";
     };
     meta.homepage = "https://github.com/tree-sitter/tree-sitter-haskell";
   };
@@ -1066,23 +1066,23 @@
   };
   hlsl = buildGrammar {
     language = "hlsl";
-    version = "0.0.0+rev=d200375";
+    version = "0.0.0+rev=feea0ff";
     src = fetchFromGitHub {
       owner = "theHamsta";
       repo = "tree-sitter-hlsl";
-      rev = "d200375a29b24764b78d7051df0024ed7c2f1ab0";
-      hash = "sha256-HCbH8Lyi2ziaUTxhgVPQ4hyOZhRxNFW66gAkoFT/Ubg=";
+      rev = "feea0ff6eccda8be958c133985dca8977db3d887";
+      hash = "sha256-VIrNt9pjNtwVbQKZGPota5blxbPGGEhdiRYtPNU/XtA=";
     };
     meta.homepage = "https://github.com/theHamsta/tree-sitter-hlsl";
   };
   hlsplaylist = buildGrammar {
     language = "hlsplaylist";
-    version = "0.0.0+rev=3e65f65";
+    version = "0.0.0+rev=64f1902";
     src = fetchFromGitHub {
       owner = "Freed-Wu";
       repo = "tree-sitter-hlsplaylist";
-      rev = "3e65f652b9dea8d38f9a44b5b0898a51c9247eb8";
-      hash = "sha256-IGfKnEG1b9TSPBjxb+NjgweyKp7HUyZCe2gR/xnV5CY=";
+      rev = "64f19029339e75d6762feae39e7878595860c980";
+      hash = "sha256-rJZo17tAbDbnnx6PTOlzgJYClnGrRNfQ6fLJqIVMMCw=";
     };
     meta.homepage = "https://github.com/Freed-Wu/tree-sitter-hlsplaylist";
   };
@@ -1110,12 +1110,12 @@
   };
   html = buildGrammar {
     language = "html";
-    version = "0.0.0+rev=bfa075d";
+    version = "0.0.0+rev=e4d834e";
     src = fetchFromGitHub {
       owner = "tree-sitter";
       repo = "tree-sitter-html";
-      rev = "bfa075d83c6b97cd48440b3829ab8d24a2319809";
-      hash = "sha256-zUbcez+kWKJb7ZV8rC17NJ61P85hgA3HXtQCFevFwvs=";
+      rev = "e4d834eb4918df01dcad5c27d1b15d56e3bd94cd";
+      hash = "sha256-sHy3fVWemJod18HCQ8zBC/LpeCCPH0nzhI1wrkCg8nw=";
     };
     meta.homepage = "https://github.com/tree-sitter/tree-sitter-html";
   };
@@ -1163,6 +1163,17 @@
     };
     meta.homepage = "https://github.com/luckasRanarison/tree-sitter-hyprlang";
   };
+  idl = buildGrammar {
+    language = "idl";
+    version = "0.0.0+rev=006a526";
+    src = fetchFromGitHub {
+      owner = "cathaysia";
+      repo = "tree-sitter-idl";
+      rev = "006a5266d771cab57da58a6ade483ebd3075638d";
+      hash = "sha256-NV7VojLenoq7RDyN1HMuyZFjcQhZeC6OtRz/y4bAe58=";
+    };
+    meta.homepage = "https://github.com/cathaysia/tree-sitter-idl";
+  };
   ini = buildGrammar {
     language = "ini";
     version = "0.0.0+rev=bcb84a2";
@@ -1174,6 +1185,17 @@
     };
     meta.homepage = "https://github.com/justinmk/tree-sitter-ini";
   };
+  inko = buildGrammar {
+    language = "inko";
+    version = "0.0.0+rev=4cef9aa";
+    src = fetchFromGitHub {
+      owner = "inko-lang";
+      repo = "tree-sitter-inko";
+      rev = "4cef9aa4980606311b906b2f2b8c6cf791c60396";
+      hash = "sha256-NnZ5sSNwVVsx1I8eacvTl+1Vn/PL3NsrlFNPHQMUP6I=";
+    };
+    meta.homepage = "https://github.com/inko-lang/tree-sitter-inko";
+  };
   ispc = buildGrammar {
     language = "ispc";
     version = "0.0.0+rev=9b2f9ae";
@@ -1209,12 +1231,12 @@
   };
   javascript = buildGrammar {
     language = "javascript";
-    version = "0.0.0+rev=fff4560";
+    version = "0.0.0+rev=e88537c";
     src = fetchFromGitHub {
       owner = "tree-sitter";
       repo = "tree-sitter-javascript";
-      rev = "fff4560044bdc51d9f6995f1edc797b7cd72b9dc";
-      hash = "sha256-erxZ5nYvUwrzdRnkni8WEsxB04ghI7H3DLASfCoHXYs=";
+      rev = "e88537c2703546f3f0887dd3f16898e1749cdba5";
+      hash = "sha256-/poR9qMfjWKJW6aw0s6VjNh7fkf/HvUJNZIeZ1YEwVM=";
     };
     meta.homepage = "https://github.com/tree-sitter/tree-sitter-javascript";
   };
@@ -1231,34 +1253,34 @@
   };
   jsdoc = buildGrammar {
     language = "jsdoc";
-    version = "0.0.0+rev=6a6cf9e";
+    version = "0.0.0+rev=49fde20";
     src = fetchFromGitHub {
       owner = "tree-sitter";
       repo = "tree-sitter-jsdoc";
-      rev = "6a6cf9e7341af32d8e2b2e24a37fbfebefc3dc55";
-      hash = "sha256-fKscFhgZ/BQnYnE5EwurFZgiE//O0WagRIHVtDyes/Y=";
+      rev = "49fde205b59a1d9792efc21ee0b6d50bbd35ff14";
+      hash = "sha256-Mfau8071UiotdSS+/W9kQWhKF7BCRI8WtRxss/U0GQw=";
     };
     meta.homepage = "https://github.com/tree-sitter/tree-sitter-jsdoc";
   };
   json = buildGrammar {
     language = "json";
-    version = "0.0.0+rev=80e623c";
+    version = "0.0.0+rev=94f5c52";
     src = fetchFromGitHub {
       owner = "tree-sitter";
       repo = "tree-sitter-json";
-      rev = "80e623c2165887f9829357acfa9c0a0bab34a3cd";
-      hash = "sha256-waejAbS7MjrE7w03MPqvBRpEpqTcKc6RgKCVSYaDV1Y=";
+      rev = "94f5c527b2965465956c2000ed6134dd24daf2a7";
+      hash = "sha256-16/ZRjRolUC/iN7ASrNnXNSkfohBlSqyyYAz4nka6pM=";
     };
     meta.homepage = "https://github.com/tree-sitter/tree-sitter-json";
   };
   json5 = buildGrammar {
     language = "json5";
-    version = "0.0.0+rev=c23f7a9";
+    version = "0.0.0+rev=ab0ba82";
     src = fetchFromGitHub {
       owner = "Joakker";
       repo = "tree-sitter-json5";
-      rev = "c23f7a9b1ee7d45f516496b1e0e4be067264fa0d";
-      hash = "sha256-16gDgbPUyhSo3PJD9+zz6QLVd6G/W1afjyuCJbDUSIY=";
+      rev = "ab0ba8229d639ec4f3fa5f674c9133477f4b77bd";
+      hash = "sha256-LaCCjvYnmofOVQ2Nqlzfh3KP3fNG0HBxkOng0gjYY1g=";
     };
     meta.homepage = "https://github.com/Joakker/tree-sitter-json5";
   };
@@ -1297,12 +1319,12 @@
   };
   just = buildGrammar {
     language = "just";
-    version = "0.0.0+rev=6c2f018";
+    version = "0.0.0+rev=fd814fc";
     src = fetchFromGitHub {
       owner = "IndianBoy42";
       repo = "tree-sitter-just";
-      rev = "6c2f018ab1d90946c0ce029bb2f7d57f56895dff";
-      hash = "sha256-EnU0IpBr9i3+RFLzg7g6XuDSiuMBLGQ0eCJNPKeDohw=";
+      rev = "fd814fc6c579f68c2a642f5e0268cf69daae92d7";
+      hash = "sha256-yuTcgNfF4oRNZkwwFpt5WLpWtTvgJJRDYo3CWnCNyiU=";
     };
     meta.homepage = "https://github.com/IndianBoy42/tree-sitter-just";
   };
@@ -1330,15 +1352,26 @@
   };
   kotlin = buildGrammar {
     language = "kotlin";
-    version = "0.0.0+rev=260afd9";
+    version = "0.0.0+rev=c9cb850";
     src = fetchFromGitHub {
       owner = "fwcd";
       repo = "tree-sitter-kotlin";
-      rev = "260afd9a92bac51b3a4546303103c3d40a430639";
-      hash = "sha256-cmtUGmytAgiqBi31CNxEX+vE3YXmH1hphsIHvGRd7SY=";
+      rev = "c9cb8504b81684375e7beb8907517dbd6947a1be";
+      hash = "sha256-fuEKCtCzaWOp0gKrsPMOW9oGOXnM2Qb652Nhn1lc1eA=";
     };
     meta.homepage = "https://github.com/fwcd/tree-sitter-kotlin";
   };
+  koto = buildGrammar {
+    language = "koto";
+    version = "0.0.0+rev=919440e";
+    src = fetchFromGitHub {
+      owner = "koto-lang";
+      repo = "tree-sitter-koto";
+      rev = "919440e1376109bab4edac52594c17c02ae0be5a";
+      hash = "sha256-R3p0X741yOBAC6NTB46PTkh41NLmaVUvQPLBG1+PG+Y=";
+    };
+    meta.homepage = "https://github.com/koto-lang/tree-sitter-koto";
+  };
   kusto = buildGrammar {
     language = "kusto";
     version = "0.0.0+rev=8353a12";
@@ -1352,23 +1385,23 @@
   };
   lalrpop = buildGrammar {
     language = "lalrpop";
-    version = "0.0.0+rev=123d8b4";
+    version = "0.0.0+rev=854a40e";
     src = fetchFromGitHub {
       owner = "traxys";
       repo = "tree-sitter-lalrpop";
-      rev = "123d8b472e949b59f348c32e245107a34a3d8945";
-      hash = "sha256-+06eppRj7TynVYOMs30/7kUM69RqdmryIoBuiZJ7DvY=";
+      rev = "854a40e99f7c70258e522bdb8ab584ede6196e2e";
+      hash = "sha256-rVWmYF26DbPHoNRBv9FKEeacSbgw93PHy/wrQDGzlWk=";
     };
     meta.homepage = "https://github.com/traxys/tree-sitter-lalrpop";
   };
   latex = buildGrammar {
     language = "latex";
-    version = "0.0.0+rev=ae2134a";
+    version = "0.0.0+rev=cd82eb4";
     src = fetchFromGitHub {
       owner = "latex-lsp";
       repo = "tree-sitter-latex";
-      rev = "ae2134af67f6c5e45587ace9ec748dd6e7b356a2";
-      hash = "sha256-hQaQBQYK0o5qRH5Mjv3pIAUHJe6BWHGzg2I4KCVG2KE=";
+      rev = "cd82eb40d31bdfe65f846f4e06292d6c804b5e0e";
+      hash = "sha256-ptUIi8cMQ4CrnqZgnzJ0rnByd78y8l607+CSPKNrLEk=";
     };
     generate = true;
     meta.homepage = "https://github.com/latex-lsp/tree-sitter-latex";
@@ -1419,12 +1452,12 @@
   };
   liquidsoap = buildGrammar {
     language = "liquidsoap";
-    version = "0.0.0+rev=09a9e31";
+    version = "0.0.0+rev=a9b8012";
     src = fetchFromGitHub {
       owner = "savonet";
       repo = "tree-sitter-liquidsoap";
-      rev = "09a9e31e2af734a8974dad6ed349648f601eee8c";
-      hash = "sha256-GQIi1PFYFlOBkUOGYWQG6M0A+ve3IBl/G0rCcAVyRKM=";
+      rev = "a9b8012366eab7d0c28bbda5f75a847be931008f";
+      hash = "sha256-n8kT4bxRSp3EOJwsm0S4kKYq6Iln1vvvho/di4N0lRs=";
     };
     meta.homepage = "https://github.com/savonet/tree-sitter-liquidsoap";
   };
@@ -1553,12 +1586,12 @@
   };
   mermaid = buildGrammar {
     language = "mermaid";
-    version = "0.0.0+rev=49442bd";
+    version = "0.0.0+rev=90ae195";
     src = fetchFromGitHub {
       owner = "monaqa";
       repo = "tree-sitter-mermaid";
-      rev = "49442bd087901c60f019b4e34dcb6ecdc8849067";
-      hash = "sha256-KoAoEuADv6Xj/bpZV5XGW7nXugSCfk6St2xzx7x2oPA=";
+      rev = "90ae195b31933ceb9d079abfa8a3ad0a36fee4cc";
+      hash = "sha256-Tt1bPqpL59FQzuI8CPljBmQoAfJPUkVC9Xe1GcfXzfE=";
     };
     meta.homepage = "https://github.com/monaqa/tree-sitter-mermaid";
   };
@@ -1575,35 +1608,35 @@
   };
   mlir = buildGrammar {
     language = "mlir";
-    version = "0.0.0+rev=c2845c1";
+    version = "0.0.0+rev=a708e9b";
     src = fetchFromGitHub {
       owner = "artagnon";
       repo = "tree-sitter-mlir";
-      rev = "c2845c1c0b23e2faf6febfa72a042e5346374ebf";
-      hash = "sha256-SQR/1lAWdvNDwa40wNI3uGSF9OBgtyjxVM5lsP4CgIU=";
+      rev = "a708e9b3f3d7f2fc85ac3fd1d4317c51b101eab0";
+      hash = "sha256-ITimvcYGqPUrqg3Z9EyfhEznzME2TKBOJpr0Fbc3OoE=";
     };
     generate = true;
     meta.homepage = "https://github.com/artagnon/tree-sitter-mlir";
   };
   muttrc = buildGrammar {
     language = "muttrc";
-    version = "0.0.0+rev=1a3d3c9";
+    version = "0.0.0+rev=90ef608";
     src = fetchFromGitHub {
       owner = "neomutt";
       repo = "tree-sitter-muttrc";
-      rev = "1a3d3c98de86689f2bb1e59c8db8067c6784aaed";
-      hash = "sha256-9RFz8qaAapJSNxy8YH/6FZG2j1tcrhNWRhxx+fNo7z8=";
+      rev = "90ef60852c410bd964cd3b954366e4c403c17314";
+      hash = "sha256-GiM9jXtaL/GEUmBuiMB7pZP0VnHVzRETwwCHQsHyaTM=";
     };
     meta.homepage = "https://github.com/neomutt/tree-sitter-muttrc";
   };
   nasm = buildGrammar {
     language = "nasm";
-    version = "0.0.0+rev=3bc691d";
+    version = "0.0.0+rev=570f3d7";
     src = fetchFromGitHub {
       owner = "naclsn";
       repo = "tree-sitter-nasm";
-      rev = "3bc691d2cfba44bea339a775ad496c8bc552c60d";
-      hash = "sha256-o4aXvPhXSYMc1oaagIbnFhpqcbWdN8dhMa3QRE/iRMM=";
+      rev = "570f3d7be01fffc751237f4cfcf52d04e20532d1";
+      hash = "sha256-205joaeq4ZSyfgxagPQTsx0zpZwSEpq1VCQoHJ77OL8=";
     };
     meta.homepage = "https://github.com/naclsn/tree-sitter-nasm";
   };
@@ -1744,12 +1777,12 @@
   };
   odin = buildGrammar {
     language = "odin";
-    version = "0.0.0+rev=b5f668e";
+    version = "0.0.0+rev=f25b8c5";
     src = fetchFromGitHub {
       owner = "amaanq";
       repo = "tree-sitter-odin";
-      rev = "b5f668ef8918aab13812ce73acd89fe191fb8c5e";
-      hash = "sha256-D/+ls8a5efAy3sBaH1eGEifEwBRmz+6bYIMGNji949Q=";
+      rev = "f25b8c5201c1480dc0c8c4155a059a79a5a40719";
+      hash = "sha256-720CY0OKlq1P+9g0VHQ6l0lTBjGy/tYiolL8e2ahd8o=";
     };
     meta.homepage = "https://github.com/amaanq/tree-sitter-odin";
   };
@@ -1799,47 +1832,47 @@
   };
   perl = buildGrammar {
     language = "perl";
-    version = "0.0.0+rev=96a17c4";
+    version = "0.0.0+rev=d4ebabd";
     src = fetchFromGitHub {
       owner = "tree-sitter-perl";
       repo = "tree-sitter-perl";
-      rev = "96a17c4c2dd345dc61f330d040684538d634bbc2";
-      hash = "sha256-I/76AfSPU5WOwch8inBWojIraJGVffnGvOpQepq6qYU=";
+      rev = "d4ebabd45bcb053fcc7f6688b5c8ed80c7ae7a32";
+      hash = "sha256-0WnI0L6Tuy3FD4XxCZR1HcQyo5uv0VXhK8eqopCAS+A=";
     };
     meta.homepage = "https://github.com/tree-sitter-perl/tree-sitter-perl";
   };
   php = buildGrammar {
     language = "php";
-    version = "0.0.0+rev=29838ad";
+    version = "0.0.0+rev=27afeb0";
     src = fetchFromGitHub {
       owner = "tree-sitter";
       repo = "tree-sitter-php";
-      rev = "29838ad107f50b1f5f51a0beefa9c9d834fce2b3";
-      hash = "sha256-5bFM2Hr6vgpLyv3phgBWFl5wk+mlCPJTqrkXJvjSvvM=";
+      rev = "27afeb02e49ff30acd17b67897b1c0114561a38c";
+      hash = "sha256-PnxjmaC9FPhHlhbhDR+VIbzf5K7Pon7V0pLMymvqoKo=";
     };
     location = "php";
     meta.homepage = "https://github.com/tree-sitter/tree-sitter-php";
   };
   php_only = buildGrammar {
     language = "php_only";
-    version = "0.0.0+rev=29838ad";
+    version = "0.0.0+rev=27afeb0";
     src = fetchFromGitHub {
       owner = "tree-sitter";
       repo = "tree-sitter-php";
-      rev = "29838ad107f50b1f5f51a0beefa9c9d834fce2b3";
-      hash = "sha256-5bFM2Hr6vgpLyv3phgBWFl5wk+mlCPJTqrkXJvjSvvM=";
+      rev = "27afeb02e49ff30acd17b67897b1c0114561a38c";
+      hash = "sha256-PnxjmaC9FPhHlhbhDR+VIbzf5K7Pon7V0pLMymvqoKo=";
     };
     location = "php_only";
     meta.homepage = "https://github.com/tree-sitter/tree-sitter-php";
   };
   phpdoc = buildGrammar {
     language = "phpdoc";
-    version = "0.0.0+rev=f285e33";
+    version = "0.0.0+rev=1d0e255";
     src = fetchFromGitHub {
       owner = "claytonrcarter";
       repo = "tree-sitter-phpdoc";
-      rev = "f285e338d328a03920a9bfd8dda78585c7ddcca3";
-      hash = "sha256-kvAZ1+tbw6bAtLhPeNGi1rmnyNhBSL/nynQADX+4tMw=";
+      rev = "1d0e255b37477d0ca46f1c9e9268c8fa76c0b3fc";
+      hash = "sha256-EWj/Av8+Ri7KiC9LzH73ytufjkp3MxBPwfm6mF3IGD8=";
     };
     meta.homepage = "https://github.com/claytonrcarter/tree-sitter-phpdoc";
   };
@@ -1966,12 +1999,12 @@
   };
   psv = buildGrammar {
     language = "psv";
-    version = "0.0.0+rev=cda48a5";
+    version = "0.0.0+rev=7eb7297";
     src = fetchFromGitHub {
       owner = "amaanq";
       repo = "tree-sitter-csv";
-      rev = "cda48a5e890b30619da5bc3ff55be1b1d3d08c8d";
-      hash = "sha256-K4tOYdI68fXnWbvSat50FL/jDSb8f6gtZOhE6qKPLyg=";
+      rev = "7eb7297823605392d2bbcc4c09b1cd18d6fa9529";
+      hash = "sha256-5VL7uREH0lloAWo9rdJXsjDsWxgL6fngWJSmi4fM7UQ=";
     };
     location = "psv";
     meta.homepage = "https://github.com/amaanq/tree-sitter-csv";
@@ -2022,23 +2055,23 @@
   };
   python = buildGrammar {
     language = "python";
-    version = "0.0.0+rev=a227610";
+    version = "0.0.0+rev=71778c2";
     src = fetchFromGitHub {
       owner = "tree-sitter";
       repo = "tree-sitter-python";
-      rev = "a22761025cdac6c314b7e3aa48fb44fa9e594d6a";
-      hash = "sha256-L6iEej6bPqfaZdH5GNoJyNxZWdnIyn7+Cut+zYnMI88=";
+      rev = "71778c2a472ed00a64abf4219544edbf8e4b86d7";
+      hash = "sha256-hHQ5gK4dTRSdp0fLKarytU9vFhsBeQp7Ka61vFoIr7Y=";
     };
     meta.homepage = "https://github.com/tree-sitter/tree-sitter-python";
   };
   ql = buildGrammar {
     language = "ql";
-    version = "0.0.0+rev=ff04ba6";
+    version = "0.0.0+rev=42becd6";
     src = fetchFromGitHub {
       owner = "tree-sitter";
       repo = "tree-sitter-ql";
-      rev = "ff04ba61857ba05b80221e71b423b2728dbebe1e";
-      hash = "sha256-/ayyqSF/SBVvqMYm27NOlCYR3JN0xR3oy0OggwTysvE=";
+      rev = "42becd6f8f7bae82c818fa3abb1b6ff34b552310";
+      hash = "sha256-OFqBI9u5Ik6AoG88v7qTVnol5H9O/n1vaZhoxQ7Sj70=";
     };
     meta.homepage = "https://github.com/tree-sitter/tree-sitter-ql";
   };
@@ -2055,34 +2088,34 @@
   };
   qmljs = buildGrammar {
     language = "qmljs";
-    version = "0.0.0+rev=9fa49ff";
+    version = "0.0.0+rev=2c57cac";
     src = fetchFromGitHub {
       owner = "yuja";
       repo = "tree-sitter-qmljs";
-      rev = "9fa49ff3315987f715ce5666ff979a7742fa8a98";
-      hash = "sha256-q20gLVLs0LpqRpgo/qNRDfExbWXhICWZjM1ux4+AT6M=";
+      rev = "2c57cac27e207425f8df15327884434cb12365a3";
+      hash = "sha256-LFOujMN9HMtDqjq2ZOP0oxydQHFS0wvL6ORBqruGXeM=";
     };
     meta.homepage = "https://github.com/yuja/tree-sitter-qmljs";
   };
   query = buildGrammar {
     language = "query";
-    version = "0.0.0+rev=2e31ca2";
+    version = "0.0.0+rev=d25e8d1";
     src = fetchFromGitHub {
       owner = "nvim-treesitter";
       repo = "tree-sitter-query";
-      rev = "2e31ca2771f6042b0e4e0c41a6290014a9e1face";
-      hash = "sha256-kQChOmQCWGtNOqEQjkZ6iShZ+t3tsBwYlrdFFj0ZAj0=";
+      rev = "d25e8d183f319497b8b22a2a1585975b020da722";
+      hash = "sha256-c4ttg5UXtRlUdtljQwczoBSR/oX+rnj5gUqR8EIYMKQ=";
     };
     meta.homepage = "https://github.com/nvim-treesitter/tree-sitter-query";
   };
   r = buildGrammar {
     language = "r";
-    version = "0.0.0+rev=c55f8b4";
+    version = "0.0.0+rev=3914005";
     src = fetchFromGitHub {
       owner = "r-lib";
       repo = "tree-sitter-r";
-      rev = "c55f8b4dfaa32c80ddef6c0ac0e79b05cb0cbf57";
-      hash = "sha256-NWnEk0FixC7pBdNLwJUGvKifwZj8nzX7VWv8AhgaI2o=";
+      rev = "391400572538ff9854341a175ed8ab4b1e45f44b";
+      hash = "sha256-KM80Kud7fJzc0qIhd1y3sbdN0mH6b7L16VqOtbGxQBc=";
     };
     meta.homepage = "https://github.com/r-lib/tree-sitter-r";
   };
@@ -2110,12 +2143,12 @@
   };
   rbs = buildGrammar {
     language = "rbs";
-    version = "0.0.0+rev=519a611";
+    version = "0.0.0+rev=e5e807a";
     src = fetchFromGitHub {
       owner = "joker1007";
       repo = "tree-sitter-rbs";
-      rev = "519a61132a51222e3ce73d3b7ef07465f587f346";
-      hash = "sha256-MLsbOdH4R3nZxqTFtPstTsbr+yjAz7UvKB/lsD8aWxM=";
+      rev = "e5e807a50fcd104a2d740d354632fc671700a0bf";
+      hash = "sha256-xEh1oHrLPjLT5LSJfOBFgi0nholVr8EFVGlEMPNIxSI=";
     };
     meta.homepage = "https://github.com/joker1007/tree-sitter-rbs";
   };
@@ -2132,23 +2165,23 @@
   };
   readline = buildGrammar {
     language = "readline";
-    version = "0.0.0+rev=e436eae";
+    version = "0.0.0+rev=3d4768b";
     src = fetchFromGitHub {
       owner = "ribru17";
       repo = "tree-sitter-readline";
-      rev = "e436eaef452266a3d00c195f0eb757d6502c767a";
-      hash = "sha256-y38TDQ+7wBzEKol/UQ5Xk6f15wUW7hJxByDuhx9d0hQ=";
+      rev = "3d4768b04d7cfaf40533e12b28672603428b8f31";
+      hash = "sha256-kky3u5+NGOlxx8RxeMNszG+XJ6D36+z2us9c0nK/Jds=";
     };
     meta.homepage = "https://github.com/ribru17/tree-sitter-readline";
   };
   regex = buildGrammar {
     language = "regex";
-    version = "0.0.0+rev=ba22e4e";
+    version = "0.0.0+rev=47007f1";
     src = fetchFromGitHub {
       owner = "tree-sitter";
       repo = "tree-sitter-regex";
-      rev = "ba22e4e0cb42b2ef066948d0ea030ac509cef733";
-      hash = "sha256-mb8y3lsbN5zEpVCeBQxGXSRqC3FKsvNg1Rb1XTSh3Qo=";
+      rev = "47007f195752d8e57bda80b0b6cdb2d173a9f7d7";
+      hash = "sha256-X1CEk4nLxXY1a3PHG+4uSDKAXmsJIhd0nVYieTaHOkk=";
     };
     meta.homepage = "https://github.com/tree-sitter/tree-sitter-regex";
   };
@@ -2209,12 +2242,12 @@
   };
   ron = buildGrammar {
     language = "ron";
-    version = "0.0.0+rev=f0ddc95";
+    version = "0.0.0+rev=7893855";
     src = fetchFromGitHub {
       owner = "amaanq";
       repo = "tree-sitter-ron";
-      rev = "f0ddc95a4b7bb21a7308642255a80f5496e69c5b";
-      hash = "sha256-Wi81LYFfQXjZzj2OuxB64sNDEim/eZKViMeQ0h/w88k=";
+      rev = "78938553b93075e638035f624973083451b29055";
+      hash = "sha256-Sp0g6AWKHNjyUmL5k3RIU+5KtfICfg3o/DH77XRRyI0=";
     };
     meta.homepage = "https://github.com/amaanq/tree-sitter-ron";
   };
@@ -2231,23 +2264,23 @@
   };
   ruby = buildGrammar {
     language = "ruby";
-    version = "0.0.0+rev=9d86f37";
+    version = "0.0.0+rev=788a63c";
     src = fetchFromGitHub {
       owner = "tree-sitter";
       repo = "tree-sitter-ruby";
-      rev = "9d86f3761bb30e8dcc81e754b81d3ce91848477e";
-      hash = "sha256-Ibfu+5NWCkw7jriy1tiMLplpXNZfZf8WP30lDU1//GM=";
+      rev = "788a63ca1b7619288980aaafd37d890ee2469421";
+      hash = "sha256-FvLSj0lTNNabneXrDH7/HQq4mcTLvBwhkPW/Pf48JWc=";
     };
     meta.homepage = "https://github.com/tree-sitter/tree-sitter-ruby";
   };
   rust = buildGrammar {
     language = "rust";
-    version = "0.0.0+rev=b77c0d8";
+    version = "0.0.0+rev=9c84af0";
     src = fetchFromGitHub {
       owner = "tree-sitter";
       repo = "tree-sitter-rust";
-      rev = "b77c0d8ac28a7c143224e6ed9b4f9e4bd044ff5b";
-      hash = "sha256-7SQ/gOKVIE5bmj3vscY363LTwkYX+VHn7JflSU+zKsQ=";
+      rev = "9c84af007b0f144954adb26b3f336495cbb320a7";
+      hash = "sha256-mwnikq3s7Ien68DYT3p9oVGy7xjBgtiJMHAwMj5HXHI=";
     };
     meta.homepage = "https://github.com/tree-sitter/tree-sitter-rust";
   };
@@ -2298,45 +2331,45 @@
   };
   slang = buildGrammar {
     language = "slang";
-    version = "0.0.0+rev=b950ddf";
+    version = "0.0.0+rev=6858753";
     src = fetchFromGitHub {
       owner = "theHamsta";
       repo = "tree-sitter-slang";
-      rev = "b950ddf54c564fec0efead602268b6e0d3e5f26e";
-      hash = "sha256-AYZ7MlAh9AEvyHsGw6stiJFSEb4/FDLfuqFPhpAorAA=";
+      rev = "68587530d86aaeb1f1cb17fdada795281cdd0556";
+      hash = "sha256-hWMfiwQEd39WKifIM6NhbXnoKI5zPIGxU2GBvfdjQ9s=";
     };
     meta.homepage = "https://github.com/theHamsta/tree-sitter-slang";
   };
   slint = buildGrammar {
     language = "slint";
-    version = "0.0.0+rev=d5fbeaf";
+    version = "0.0.0+rev=0701312";
     src = fetchFromGitHub {
       owner = "slint-ui";
       repo = "tree-sitter-slint";
-      rev = "d5fbeaf0c26683f1417d00b6a5ab1cca445031f2";
-      hash = "sha256-ECzYJue7tKx9Eg043fl5x18ySvPlkWPU21Ga2Zqunv0=";
+      rev = "0701312b74b87fe20e61aa662ba41c5815b5d428";
+      hash = "sha256-GwJptJ3AP3i4rVdXi2JmhngbSHCz3fqy+ymwSlx6h94=";
     };
     meta.homepage = "https://github.com/slint-ui/tree-sitter-slint";
   };
   smali = buildGrammar {
     language = "smali";
-    version = "0.0.0+rev=3f65178";
+    version = "0.0.0+rev=fdfa6a1";
     src = fetchFromGitHub {
       owner = "tree-sitter-grammars";
       repo = "tree-sitter-smali";
-      rev = "3f6517855898ef23023e5d64a8b175d4ee8d646e";
-      hash = "sha256-K1cRK4D0BE9FNq1tpa0L3Crc+8woXIwhRPg86+73snk=";
+      rev = "fdfa6a1febc43c7467aa7e937b87b607956f2346";
+      hash = "sha256-S0U6Xuntz16DrpYwSqMQu8Cu7UuD/JufHUxIHv826yw=";
     };
     meta.homepage = "https://github.com/tree-sitter-grammars/tree-sitter-smali";
   };
   smithy = buildGrammar {
     language = "smithy";
-    version = "0.0.0+rev=8327eb8";
+    version = "0.0.0+rev=fa898ac";
     src = fetchFromGitHub {
       owner = "indoorvivants";
       repo = "tree-sitter-smithy";
-      rev = "8327eb84d55639ffbe08c9dc82da7fff72a1ad07";
-      hash = "sha256-6z2Psw+cjC11CXoGOJ/lkBPJXKqECCSrhchOiAPmd14=";
+      rev = "fa898ac0885d1da9a253695c3e0e91f5efc587cd";
+      hash = "sha256-tB+q4RNru4Zi3jU9fBLKdzsXT0uP1PECLfeCCNTyaIo=";
     };
     meta.homepage = "https://github.com/indoorvivants/tree-sitter-smithy";
   };
@@ -2353,47 +2386,47 @@
   };
   solidity = buildGrammar {
     language = "solidity";
-    version = "0.0.0+rev=1653da0";
+    version = "0.0.0+rev=b5a23ea";
     src = fetchFromGitHub {
       owner = "JoranHonig";
       repo = "tree-sitter-solidity";
-      rev = "1653da09ccd183f4312fba819056a13af22a65f6";
-      hash = "sha256-1IW04F6CxTIdGHxRocM1QmfgXHHf5Jn/eaZ6M8o2EU8=";
+      rev = "b5a23ead0f69d38b5c9a630f52f5c129132c16ed";
+      hash = "sha256-xOW5C/Bcx2xg/6MPYulQkolWGwyQ+htRKvTnkFnqzOE=";
     };
     meta.homepage = "https://github.com/JoranHonig/tree-sitter-solidity";
   };
   soql = buildGrammar {
     language = "soql";
-    version = "0.0.0+rev=857077f";
+    version = "0.0.0+rev=c99ad4b";
     src = fetchFromGitHub {
       owner = "aheber";
       repo = "tree-sitter-sfapex";
-      rev = "857077f9e6bb04df0f769c18d32bfe036911adc8";
-      hash = "sha256-b7rw0AWqqvFisS0qlDppJFxSnjNZaTTeph6gKfQwFNA=";
+      rev = "c99ad4b16d112fea91745e3f1b769754239fdaba";
+      hash = "sha256-tl/MajAsdu7YxQcdFZmupZldhCl6QB//4FwiBR44nm4=";
     };
     location = "soql";
     meta.homepage = "https://github.com/aheber/tree-sitter-sfapex";
   };
   sosl = buildGrammar {
     language = "sosl";
-    version = "0.0.0+rev=857077f";
+    version = "0.0.0+rev=c99ad4b";
     src = fetchFromGitHub {
       owner = "aheber";
       repo = "tree-sitter-sfapex";
-      rev = "857077f9e6bb04df0f769c18d32bfe036911adc8";
-      hash = "sha256-b7rw0AWqqvFisS0qlDppJFxSnjNZaTTeph6gKfQwFNA=";
+      rev = "c99ad4b16d112fea91745e3f1b769754239fdaba";
+      hash = "sha256-tl/MajAsdu7YxQcdFZmupZldhCl6QB//4FwiBR44nm4=";
     };
     location = "sosl";
     meta.homepage = "https://github.com/aheber/tree-sitter-sfapex";
   };
   sourcepawn = buildGrammar {
     language = "sourcepawn";
-    version = "0.0.0+rev=3ca89fd";
+    version = "0.0.0+rev=4c62065";
     src = fetchFromGitHub {
       owner = "nilshelmig";
       repo = "tree-sitter-sourcepawn";
-      rev = "3ca89fdf998340a7973e276b39516d8902950f86";
-      hash = "sha256-AF7PiM0Tt6wqGdNsfMGSkgWXgZRDZGdKc7DQpUHuGUA=";
+      rev = "4c62065c4136873ef42a9efe128380cbe7ae4f64";
+      hash = "sha256-cJDEBX821nJnGQLfZ/Me/PDdX5cQuJYzhrJZOLfl+sk=";
     };
     meta.homepage = "https://github.com/nilshelmig/tree-sitter-sourcepawn";
   };
@@ -2421,12 +2454,12 @@
   };
   squirrel = buildGrammar {
     language = "squirrel";
-    version = "0.0.0+rev=f93fd28";
+    version = "0.0.0+rev=0a50d31";
     src = fetchFromGitHub {
       owner = "amaanq";
       repo = "tree-sitter-squirrel";
-      rev = "f93fd2864dd05cc39b0490145fd86a1a93bfa3a3";
-      hash = "sha256-06cmaCyBkdwSmIHSEE0xr9V4M6pp+ApIZNopbnW3pok=";
+      rev = "0a50d31098e83c668d34d1160a0f6c7d23b571cc";
+      hash = "sha256-cLMAeDfZiHInA9+Td8FedRVSNv1vFE/bpCftRqV72d0=";
     };
     meta.homepage = "https://github.com/amaanq/tree-sitter-squirrel";
   };
@@ -2476,12 +2509,12 @@
   };
   supercollider = buildGrammar {
     language = "supercollider";
-    version = "0.0.0+rev=3b35bd0";
+    version = "0.0.0+rev=affa438";
     src = fetchFromGitHub {
       owner = "madskjeldgaard";
       repo = "tree-sitter-supercollider";
-      rev = "3b35bd0fded4423c8fb30e9585c7bacbcd0e8095";
-      hash = "sha256-mWTOZ3u9VGjEhjDeYJGd8aVxjVG9kJgKX/wHMZSsaEU=";
+      rev = "affa4389186b6939d89673e1e9d2b28364f5ca6f";
+      hash = "sha256-j4CTKkSdKnSGdgC3zGglmZ6uQvbC2ObQ+WWlY0afSwo=";
     };
     meta.homepage = "https://github.com/madskjeldgaard/tree-sitter-supercollider";
   };
@@ -2509,12 +2542,12 @@
   };
   swift = buildGrammar {
     language = "swift";
-    version = "0.0.0+rev=e2f0b7c";
+    version = "0.0.0+rev=c9c669b";
     src = fetchFromGitHub {
       owner = "alex-pinkus";
       repo = "tree-sitter-swift";
-      rev = "e2f0b7cf8136b801e4743790b7a956ab29a4d6b0";
-      hash = "sha256-DFoNyZmpzSDI37Gto2DxeoRZuDgLtx9NJxyYGIG6lrY=";
+      rev = "c9c669b4513479e07a0ff44cf14f72351959ac21";
+      hash = "sha256-OyT7jkGTuNG7eQrQvZRI49ipu+MMXTOz/1O7r42MaOk=";
     };
     generate = true;
     meta.homepage = "https://github.com/alex-pinkus/tree-sitter-swift";
@@ -2554,15 +2587,26 @@
   };
   tablegen = buildGrammar {
     language = "tablegen";
-    version = "0.0.0+rev=6b7eb09";
+    version = "0.0.0+rev=b117088";
     src = fetchFromGitHub {
       owner = "amaanq";
       repo = "tree-sitter-tablegen";
-      rev = "6b7eb096621443627cc5e29c8c34ff1fde482cf3";
-      hash = "sha256-kdOqHAyKAI4IgI2/GbEx13DWLB8JklURd3ndaicxUno=";
+      rev = "b1170880c61355aaf38fc06f4af7d3c55abdabc4";
+      hash = "sha256-uJCn2RdTnOf/guBUhfodgQ8pMshNh+xUJZunoLwNgrM=";
     };
     meta.homepage = "https://github.com/amaanq/tree-sitter-tablegen";
   };
+  tact = buildGrammar {
+    language = "tact";
+    version = "0.0.0+rev=034df21";
+    src = fetchFromGitHub {
+      owner = "tact-lang";
+      repo = "tree-sitter-tact";
+      rev = "034df2162ed7b654efd999942e266be713c7cde0";
+      hash = "sha256-2+MVrDPuhrM0HE9uRG5LpmyXYy73Pv3MY20UXwBXalM=";
+    };
+    meta.homepage = "https://github.com/tact-lang/tree-sitter-tact";
+  };
   tcl = buildGrammar {
     language = "tcl";
     version = "0.0.0+rev=8784024";
@@ -2588,12 +2632,12 @@
   };
   templ = buildGrammar {
     language = "templ";
-    version = "0.0.0+rev=e2218a2";
+    version = "0.0.0+rev=d631f60";
     src = fetchFromGitHub {
       owner = "vrischmann";
       repo = "tree-sitter-templ";
-      rev = "e2218a2376e3ff18c9963b21aa567770baab0462";
-      hash = "sha256-lyxXb71FVfpWw4IbU5P6uDVETNSDO+r7+YgZDvaIEbc=";
+      rev = "d631f60287c0904770bc41aa865e249594b52422";
+      hash = "sha256-rANNbNlybga+IGNfclMGX0On48sQ3WTWvw3bnhxKsZk=";
     };
     meta.homepage = "https://github.com/vrischmann/tree-sitter-templ";
   };
@@ -2644,23 +2688,23 @@
   };
   tlaplus = buildGrammar {
     language = "tlaplus";
-    version = "0.0.0+rev=410122a";
+    version = "0.0.0+rev=ef18145";
     src = fetchFromGitHub {
       owner = "tlaplus-community";
       repo = "tree-sitter-tlaplus";
-      rev = "410122a012abb06fbacc8c0b8f288b684f8113e1";
-      hash = "sha256-vWxMaka5h8L+tJctiflEWT1/nofPYHIgpf1/3jfsgVU=";
+      rev = "ef18145e7f985f592ad41b04004b24a590f58b71";
+      hash = "sha256-y/AtFMj4aKwjiahYWk63U9BEMpnq7LUQDnPrXsun3kI=";
     };
     meta.homepage = "https://github.com/tlaplus-community/tree-sitter-tlaplus";
   };
   tmux = buildGrammar {
     language = "tmux";
-    version = "0.0.0+rev=1415bd8";
+    version = "0.0.0+rev=9138ea5";
     src = fetchFromGitHub {
       owner = "Freed-Wu";
       repo = "tree-sitter-tmux";
-      rev = "1415bd8b5bb69c230947663deceb62c2a0ae4155";
-      hash = "sha256-3kF6H3tP20FUfNoIRxQCnVzvyd4MFLd9oN6rhB/ePvo=";
+      rev = "9138ea508410e0f34da2666609f600f65e944f22";
+      hash = "sha256-aoKrrDvOM4yOgE7rulGBoN1GeBBHN+dPfyNytC4oMC4=";
     };
     meta.homepage = "https://github.com/Freed-Wu/tree-sitter-tmux";
   };
@@ -2677,35 +2721,35 @@
   };
   toml = buildGrammar {
     language = "toml";
-    version = "0.0.0+rev=8bd2056";
+    version = "0.0.0+rev=16a30c8";
     src = fetchFromGitHub {
-      owner = "ikatyang";
+      owner = "tree-sitter-grammars";
       repo = "tree-sitter-toml";
-      rev = "8bd2056818b21860e3d756b5a58c4f6e05fb744e";
-      hash = "sha256-z9MWNOBxLHBd/pVs5/QiSSGtaW+DUd7y3wZXcl3hWnk=";
+      rev = "16a30c83ce427385b8d14939c45c137fcfca6c42";
+      hash = "sha256-VYsPM0NVxegfanVaaKkSkEzJ502xkKSjZWrsJpDmack=";
     };
-    meta.homepage = "https://github.com/ikatyang/tree-sitter-toml";
+    meta.homepage = "https://github.com/tree-sitter-grammars/tree-sitter-toml";
   };
   tsv = buildGrammar {
     language = "tsv";
-    version = "0.0.0+rev=cda48a5";
+    version = "0.0.0+rev=7eb7297";
     src = fetchFromGitHub {
       owner = "amaanq";
       repo = "tree-sitter-csv";
-      rev = "cda48a5e890b30619da5bc3ff55be1b1d3d08c8d";
-      hash = "sha256-K4tOYdI68fXnWbvSat50FL/jDSb8f6gtZOhE6qKPLyg=";
+      rev = "7eb7297823605392d2bbcc4c09b1cd18d6fa9529";
+      hash = "sha256-5VL7uREH0lloAWo9rdJXsjDsWxgL6fngWJSmi4fM7UQ=";
     };
     location = "tsv";
     meta.homepage = "https://github.com/amaanq/tree-sitter-csv";
   };
   tsx = buildGrammar {
     language = "tsx";
-    version = "0.0.0+rev=b00b8eb";
+    version = "0.0.0+rev=4ad3010";
     src = fetchFromGitHub {
       owner = "tree-sitter";
       repo = "tree-sitter-typescript";
-      rev = "b00b8eb44f0b9f02556da0b1a4e2f71faed7e61b";
-      hash = "sha256-uGuwE1eTVEkuosMfTeY2akHB+bJ5npWEwUv+23nhY9M=";
+      rev = "4ad3010c91d700026d036b5230e2d99ba94ae8a4";
+      hash = "sha256-9GCo/xjP6J/tEimx4ce2Qd7XhhbSuWZoTVrysac7BOw=";
     };
     location = "tsx";
     meta.homepage = "https://github.com/tree-sitter/tree-sitter-typescript";
@@ -2734,16 +2778,27 @@
   };
   typescript = buildGrammar {
     language = "typescript";
-    version = "0.0.0+rev=b00b8eb";
+    version = "0.0.0+rev=4ad3010";
     src = fetchFromGitHub {
       owner = "tree-sitter";
       repo = "tree-sitter-typescript";
-      rev = "b00b8eb44f0b9f02556da0b1a4e2f71faed7e61b";
-      hash = "sha256-uGuwE1eTVEkuosMfTeY2akHB+bJ5npWEwUv+23nhY9M=";
+      rev = "4ad3010c91d700026d036b5230e2d99ba94ae8a4";
+      hash = "sha256-9GCo/xjP6J/tEimx4ce2Qd7XhhbSuWZoTVrysac7BOw=";
     };
     location = "typescript";
     meta.homepage = "https://github.com/tree-sitter/tree-sitter-typescript";
   };
+  typespec = buildGrammar {
+    language = "typespec";
+    version = "0.0.0+rev=fd9a83c";
+    src = fetchFromGitHub {
+      owner = "happenslol";
+      repo = "tree-sitter-typespec";
+      rev = "fd9a83c6c0aaaff4b1354454b5b9f130f59dd553";
+      hash = "sha256-IFXjqsdgnJotOlb9v4XbcA2+U0txXUsv0RQA+RCilVU=";
+    };
+    meta.homepage = "https://github.com/happenslol/tree-sitter-typespec";
+  };
   typoscript = buildGrammar {
     language = "typoscript";
     version = "0.0.0+rev=43b221c";
@@ -2757,12 +2812,12 @@
   };
   typst = buildGrammar {
     language = "typst";
-    version = "0.0.0+rev=13863dd";
+    version = "0.0.0+rev=3924cb9";
     src = fetchFromGitHub {
       owner = "uben0";
       repo = "tree-sitter-typst";
-      rev = "13863ddcbaa7b68ee6221cea2e3143415e64aea4";
-      hash = "sha256-n6RTRMJS3h+g+Wawjb7I9NJbz+w/SGi+DQVj1jiyGaU=";
+      rev = "3924cb9ed9e0e62ce7df9c4fe0faa4c234795999";
+      hash = "sha256-W8mNIASM85btE3XychvagVJofIb+CkNT4XeIhdQt8FU=";
     };
     meta.homepage = "https://github.com/uben0/tree-sitter-typst";
   };
@@ -2790,35 +2845,35 @@
   };
   unison = buildGrammar {
     language = "unison";
-    version = "0.0.0+rev=a1eba0f";
+    version = "0.0.0+rev=59d36a0";
     src = fetchFromGitHub {
       owner = "kylegoetz";
       repo = "tree-sitter-unison";
-      rev = "a1eba0fef887800de97126e2c9ae4109c1c6a2ea";
-      hash = "sha256-p0LArEOspQvpgNponLpMakEHrwHM+UzA9SU5PdwQCTU=";
+      rev = "59d36a09282be7e4d3374854126590f3dcebee6e";
+      hash = "sha256-89vFguMlPfKzQ4nmMNdTNFcEiCYH0eSws87Llm88e+I=";
     };
     generate = true;
     meta.homepage = "https://github.com/kylegoetz/tree-sitter-unison";
   };
   usd = buildGrammar {
     language = "usd";
-    version = "0.0.0+rev=ab8c30b";
+    version = "0.0.0+rev=4e0875f";
     src = fetchFromGitHub {
       owner = "ColinKennedy";
       repo = "tree-sitter-usd";
-      rev = "ab8c30bde2df0e58c4b3f01f220fb0125ecb57a7";
-      hash = "sha256-Y7AYRpiblBd8xun73UohIf8FFkbNIqSXv44bM3L5uDc=";
+      rev = "4e0875f724d94d0c2ff36f9b8cb0b12f8b20d216";
+      hash = "sha256-r6Sm8FiTgxdYc5cAG5JXVtA5/2jID5H/xmKbjSYn/zI=";
     };
     meta.homepage = "https://github.com/ColinKennedy/tree-sitter-usd";
   };
   uxntal = buildGrammar {
     language = "uxntal";
-    version = "0.0.0+rev=4c5ecd6";
+    version = "0.0.0+rev=ad9b638";
     src = fetchFromGitHub {
       owner = "amaanq";
       repo = "tree-sitter-uxntal";
-      rev = "4c5ecd6326ebd61f6f9a22a370cbd100e0d601da";
-      hash = "sha256-vgeTsRJ3mlR02jXuucmXpszVOmusZwuV0xj/7sSs+WQ=";
+      rev = "ad9b638b914095320de85d59c49ab271603af048";
+      hash = "sha256-hR0EaYv1++MJ0pdBl3ZtyEljitnp5hgFWQa9F6b1KE4=";
     };
     meta.homepage = "https://github.com/amaanq/tree-sitter-uxntal";
   };
@@ -2858,45 +2913,45 @@
   };
   verilog = buildGrammar {
     language = "verilog";
-    version = "0.0.0+rev=2dfddfc";
+    version = "0.0.0+rev=075ebfc";
     src = fetchFromGitHub {
       owner = "tree-sitter";
       repo = "tree-sitter-verilog";
-      rev = "2dfddfcb891f74a1cdb9d8ce480a997d11846e17";
-      hash = "sha256-ekR9rDaGbDmtzZr0zXubq0brZI4hDsJUzZJTbgxIE2M=";
+      rev = "075ebfc84543675f12e79a955f79d717772dcef3";
+      hash = "sha256-k0Q+MOcZWtXZ99+I+ZyFJ0PZQp2oat2O/7u2UjHzsUg=";
     };
     meta.homepage = "https://github.com/tree-sitter/tree-sitter-verilog";
   };
   vhs = buildGrammar {
     language = "vhs";
-    version = "0.0.0+rev=9534865";
+    version = "0.0.0+rev=90028bb";
     src = fetchFromGitHub {
       owner = "charmbracelet";
       repo = "tree-sitter-vhs";
-      rev = "9534865e614c95eb9418e5e73f061c32fa4d9540";
-      hash = "sha256-Qf4Y1I/X5xGVZ4u2ud+XdC2dL+0sjR+0pJRJ8SUraiQ=";
+      rev = "90028bbadb267ead5b87830380f6a825147f0c0f";
+      hash = "sha256-yxUVca44z4wtYsxQKaJQjMm0fFeKAOWFnIX+5k6+SJk=";
     };
     meta.homepage = "https://github.com/charmbracelet/tree-sitter-vhs";
   };
   vim = buildGrammar {
     language = "vim";
-    version = "0.0.0+rev=052279c";
+    version = "0.0.0+rev=b448ca6";
     src = fetchFromGitHub {
       owner = "neovim";
       repo = "tree-sitter-vim";
-      rev = "052279cd5e1d73b075640c64cef97e7bdcd32611";
-      hash = "sha256-EoiMqMcBl5bC1Irs2flA2F5nHN6VTZdv6hdCrqoTAcY=";
+      rev = "b448ca63f972ade12c373c808acdd2bf972937db";
+      hash = "sha256-wQQSeDzcSY9qNVgeDhrELS1x1UoilRa7iHML9qSgchY=";
     };
     meta.homepage = "https://github.com/neovim/tree-sitter-vim";
   };
   vimdoc = buildGrammar {
     language = "vimdoc";
-    version = "0.0.0+rev=0b36856";
+    version = "0.0.0+rev=b711df7";
     src = fetchFromGitHub {
       owner = "neovim";
       repo = "tree-sitter-vimdoc";
-      rev = "0b36856db88680f662cc67545c82af4ce83bf158";
-      hash = "sha256-8kq1Y+WXL6qu8CyS5zmE7pe/a0K5rmiGgZMxj5O/VHY=";
+      rev = "b711df784dd43d0a8ed8ddbfca0ddcc3239d94b4";
+      hash = "sha256-+QbLL5EC3oNiwd7h7MW/mutHhGPUHhbYTQcu6x6atcI=";
     };
     meta.homepage = "https://github.com/neovim/tree-sitter-vimdoc";
   };
@@ -2924,12 +2979,12 @@
   };
   wgsl_bevy = buildGrammar {
     language = "wgsl_bevy";
-    version = "0.0.0+rev=f5980f5";
+    version = "0.0.0+rev=59d5fbd";
     src = fetchFromGitHub {
       owner = "theHamsta";
       repo = "tree-sitter-wgsl-bevy";
-      rev = "f5980f534ee64256b1e64b0a42e2864d91154a5d";
-      hash = "sha256-LbysBXujWWDVtgyHte9RLOPu/LMk1TN/9DC0t0WWdcQ=";
+      rev = "59d5fbd562c0e17c45312f49485098cce467f5ac";
+      hash = "sha256-4Df7UEHjoIQv4pSdxLlw9c1k0BwnVNRbZ8x/Ky0Q4DE=";
     };
     meta.homepage = "https://github.com/theHamsta/tree-sitter-wgsl-bevy";
   };
@@ -2946,12 +3001,12 @@
   };
   wit = buildGrammar {
     language = "wit";
-    version = "0.0.0+rev=6f511f9";
+    version = "0.0.0+rev=cab9479";
     src = fetchFromGitHub {
       owner = "liamwh";
       repo = "tree-sitter-wit";
-      rev = "6f511f9c6676e597c2f0930e4d2629595319882d";
-      hash = "sha256-xvMIcbeYdr/KIz0fqnARAwEKWmm4dlWhFAS/NZFU16s=";
+      rev = "cab94791450524a542324d8cbe8017d69c516d8e";
+      hash = "sha256-R8b+UQmj+JtiIGDsvR5KBTGoX99m0k/HJx2bTGNxRH0=";
     };
     meta.homepage = "https://github.com/liamwh/tree-sitter-wit";
   };
@@ -2968,24 +3023,24 @@
   };
   xml = buildGrammar {
     language = "xml";
-    version = "0.0.0+rev=96beba9";
+    version = "0.0.0+rev=648183d";
     src = fetchFromGitHub {
       owner = "tree-sitter-grammars";
       repo = "tree-sitter-xml";
-      rev = "96beba9f3e4156aaae64bb86997503b1ceb1283d";
-      hash = "sha256-XmSU9Om1bj/PtBxr22Sf81Mx68QINtK8Gls1fRldt6Q=";
+      rev = "648183d86f6f8ffb240ea11b4c6873f6f45d8b67";
+      hash = "sha256-O40z5VYmFeE8pkJ85Vu5DWV31YslIrwD80+4qnpoRNY=";
     };
     location = "xml";
     meta.homepage = "https://github.com/tree-sitter-grammars/tree-sitter-xml";
   };
   yaml = buildGrammar {
     language = "yaml";
-    version = "0.0.0+rev=ee09311";
+    version = "0.0.0+rev=7b03fee";
     src = fetchFromGitHub {
       owner = "tree-sitter-grammars";
       repo = "tree-sitter-yaml";
-      rev = "ee093118211be521742b9866a8ed8ce6d87c7a94";
-      hash = "sha256-tE39KP86JYYmj8WW1l3HAIiBZr/E4IyOgdsUm6d6pQ8=";
+      rev = "7b03feefd36b5f155465ca736c6304aca983b267";
+      hash = "sha256-hjZQv8kMpjJ29Rl6CEBwb090rFNWP1HPkSECbmTr0zQ=";
     };
     meta.homepage = "https://github.com/tree-sitter-grammars/tree-sitter-yaml";
   };
@@ -3002,23 +3057,23 @@
   };
   yuck = buildGrammar {
     language = "yuck";
-    version = "0.0.0+rev=a513732";
+    version = "0.0.0+rev=e877f6a";
     src = fetchFromGitHub {
       owner = "Philipp-M";
       repo = "tree-sitter-yuck";
-      rev = "a513732feb813426b51d1ead8397a9c285c411be";
-      hash = "sha256-XfenP9bXkskCfiq2sE8qLog0NmSecP50Ur+8HDtU4pQ=";
+      rev = "e877f6ade4b77d5ef8787075141053631ba12318";
+      hash = "sha256-l8c1/7q8S78jGyl+VAVVgs8wq58PrrjycyJfWXsCgAI=";
     };
     meta.homepage = "https://github.com/Philipp-M/tree-sitter-yuck";
   };
   zathurarc = buildGrammar {
     language = "zathurarc";
-    version = "0.0.0+rev=09b837d";
+    version = "0.0.0+rev=e9e8de0";
     src = fetchFromGitHub {
       owner = "Freed-Wu";
       repo = "tree-sitter-zathurarc";
-      rev = "09b837dc8f7445fd86e1245c23b1a7804229edd4";
-      hash = "sha256-t7eBWDfn0nq1nGqSyCZmoSGVGgeTcGFfPrZl62OkD1I=";
+      rev = "e9e8de071ab79ed1f6e3365f05fcf890b6d85a2f";
+      hash = "sha256-yQyoqRGLVSs3bcfUrQNJllWcufROgo1M+jS/ba7OIgo=";
     };
     meta.homepage = "https://github.com/Freed-Wu/tree-sitter-zathurarc";
   };
diff --git a/pkgs/applications/editors/vim/plugins/overrides.nix b/pkgs/applications/editors/vim/plugins/overrides.nix
index 24435666c076..a60354b84a0b 100644
--- a/pkgs/applications/editors/vim/plugins/overrides.nix
+++ b/pkgs/applications/editors/vim/plugins/overrides.nix
@@ -78,7 +78,7 @@
 , # sved dependencies
   glib
 , gobject-introspection
-, wrapGAppsHook
+, wrapGAppsHook3
 , # sniprun dependencies
   bashInteractive
 , coreutils
@@ -442,6 +442,10 @@
     dependencies = with self; [ completion-nvim nvim-treesitter ];
   };
 
+  CopilotChat-nvim = super.CopilotChat-nvim.overrideAttrs {
+    dependencies = with self; [ copilot-lua plenary-nvim ];
+  };
+
   copilot-vim = super.copilot-vim.overrideAttrs {
     postInstall = ''
       substituteInPlace $out/autoload/copilot/agent.vim \
@@ -839,6 +843,10 @@
     dependencies = with self; [ plenary-nvim ];
   };
 
+  luasnip = super.luasnip.overrideAttrs {
+    dependencies = with self; [ luaPackages.jsregexp ];
+  };
+
   magma-nvim-goose = buildVimPlugin {
     pname = "magma-nvim-goose";
     version = "2023-03-13";
@@ -1048,6 +1056,8 @@
       mkdir $target/bin
       ln -s ${dbee-go}/bin/dbee $target/bin/dbee
       '';
+
+    meta.platforms = lib.platforms.linux;
   });
 
   nvim-navic = super.nvim-navic.overrideAttrs {
@@ -1061,7 +1071,7 @@
         inherit (old) version src;
         sourceRoot = "${old.src.name}/spectre_oxi";
 
-        cargoHash = "sha256-UxOAIyVlJWlp5RUFVU3Ib539D5pm6Z+3edjHLerkIRU=";
+        cargoHash = "sha256-seBq1zJNzNVfCQckIHq7rHI/Y8MyxP88cee3NO7NYgo=";
 
 
         preCheck = ''
@@ -1240,12 +1250,12 @@
 
   sniprun =
     let
-      version = "1.3.12";
+      version = "1.3.13";
       src = fetchFromGitHub {
         owner = "michaelb";
         repo = "sniprun";
         rev = "refs/tags/v${version}";
-        hash = "sha256-siM0MBugee2OVaD1alr2hKn9ngoaV3Iy9No/F3wryJs=";
+        hash = "sha256-PQ3nAZ+bMbHHJWD7cV6h1b3g3TzrakA/N8vVumIooMg=";
       };
       sniprun-bin = rustPlatform.buildRustPackage {
         pname = "sniprun-bin";
@@ -1255,7 +1265,7 @@
           darwin.apple_sdk.frameworks.Security
         ];
 
-        cargoHash = "sha256-Gnpv0vAU3kTtCKsV2XGlSbzYuHEqR7iDFeKj9Vhq1UQ=";
+        cargoHash = "sha256-I8R2V9zoLqiM4lu0D7URoVof68wtKHI+8T8fVrUg7i4=";
 
         nativeBuildInputs = [ makeWrapper ];
 
@@ -1335,11 +1345,11 @@
 
   sved =
     let
-      # we put the script in its own derivation to benefit the magic of wrapGAppsHook
+      # we put the script in its own derivation to benefit the magic of wrapGAppsHook3
       svedbackend = stdenv.mkDerivation {
         name = "svedbackend-${super.sved.name}";
         inherit (super.sved) src;
-        nativeBuildInputs = [ wrapGAppsHook gobject-introspection ];
+        nativeBuildInputs = [ wrapGAppsHook3 gobject-introspection ];
         buildInputs = [
           glib
           (python3.withPackages (ps: with ps; [ pygobject3 pynvim dbus-python ]))
diff --git a/pkgs/applications/editors/vim/plugins/vim-clap/Cargo.lock b/pkgs/applications/editors/vim/plugins/vim-clap/Cargo.lock
index 0340204a82cc..a03a20d49554 100644
--- a/pkgs/applications/editors/vim/plugins/vim-clap/Cargo.lock
+++ b/pkgs/applications/editors/vim/plugins/vim-clap/Cargo.lock
@@ -49,9 +49,9 @@ checksum = "4b46cbb362ab8752921c97e041f5e366ee6297bd428a31275b9fcf1e380f7299"
 
 [[package]]
 name = "anstream"
-version = "0.6.4"
+version = "0.6.13"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2ab91ebe16eb252986481c5b62f6098f3b698a45e34b5b98200cf20dd2484a44"
+checksum = "d96bd03f33fe50a863e394ee9718a706f988b9079b20c3784fb726e7678b62fb"
 dependencies = [
  "anstyle",
  "anstyle-parse",
@@ -63,53 +63,53 @@ dependencies = [
 
 [[package]]
 name = "anstyle"
-version = "1.0.4"
+version = "1.0.6"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7079075b41f533b8c61d2a4d073c4676e1f8b249ff94a393b0595db304e0dd87"
+checksum = "8901269c6307e8d93993578286ac0edf7f195079ffff5ebdeea6a59ffb7e36bc"
 
 [[package]]
 name = "anstyle-parse"
-version = "0.2.2"
+version = "0.2.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "317b9a89c1868f5ea6ff1d9539a69f45dffc21ce321ac1fd1160dfa48c8e2140"
+checksum = "c75ac65da39e5fe5ab759307499ddad880d724eed2f6ce5b5e8a26f4f387928c"
 dependencies = [
  "utf8parse",
 ]
 
 [[package]]
 name = "anstyle-query"
-version = "1.0.0"
+version = "1.0.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5ca11d4be1bab0c8bc8734a9aa7bf4ee8316d462a08c6ac5052f888fef5b494b"
+checksum = "e28923312444cdd728e4738b3f9c9cac739500909bb3d3c94b43551b16517648"
 dependencies = [
- "windows-sys 0.48.0",
+ "windows-sys 0.52.0",
 ]
 
 [[package]]
 name = "anstyle-wincon"
-version = "3.0.1"
+version = "3.0.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f0699d10d2f4d628a98ee7b57b289abbc98ff3bad977cb3152709d4bf2330628"
+checksum = "1cd54b81ec8d6180e24654d0b371ad22fc3dd083b6ff8ba325b72e00c87660a7"
 dependencies = [
  "anstyle",
- "windows-sys 0.48.0",
+ "windows-sys 0.52.0",
 ]
 
 [[package]]
 name = "anyhow"
-version = "1.0.75"
+version = "1.0.81"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a4668cab20f66d8d020e1fbc0ebe47217433c1b6c8f2040faf858554e394ace6"
+checksum = "0952808a6c2afd1aa8947271f3a60f1a6763c7b912d210184c5149b5cf147247"
 
 [[package]]
 name = "async-trait"
-version = "0.1.74"
+version = "0.1.77"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a66537f1bb974b254c98ed142ff995236e81b9d0fe4db0575f46612cb15eb0f9"
+checksum = "c980ee35e870bd1a4d2c8294d4c04d0499e67bca1e4b5cefcc693c2fa00caea9"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.38",
+ "syn 2.0.52",
 ]
 
 [[package]]
@@ -119,6 +119,87 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "d468802bab17cbc0cc575e9b053f41e72aa36bfa6b7f55e3529ffa43161b97fa"
 
 [[package]]
+name = "axum"
+version = "0.7.5"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "3a6c9af12842a67734c9a2e355436e5d03b22383ed60cf13cd0c18fbfe3dcbcf"
+dependencies = [
+ "async-trait",
+ "axum-core",
+ "base64 0.21.7",
+ "bytes",
+ "futures-util",
+ "http 1.1.0",
+ "http-body 1.0.0",
+ "http-body-util",
+ "hyper 1.2.0",
+ "hyper-util",
+ "itoa",
+ "matchit",
+ "memchr",
+ "mime",
+ "percent-encoding",
+ "pin-project-lite",
+ "rustversion",
+ "serde",
+ "serde_json",
+ "serde_path_to_error",
+ "serde_urlencoded",
+ "sha1",
+ "sync_wrapper 1.0.0",
+ "tokio",
+ "tokio-tungstenite",
+ "tower",
+ "tower-layer",
+ "tower-service",
+ "tracing",
+]
+
+[[package]]
+name = "axum-core"
+version = "0.4.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "a15c63fd72d41492dc4f497196f5da1fb04fb7529e631d73630d1b491e47a2e3"
+dependencies = [
+ "async-trait",
+ "bytes",
+ "futures-util",
+ "http 1.1.0",
+ "http-body 1.0.0",
+ "http-body-util",
+ "mime",
+ "pin-project-lite",
+ "rustversion",
+ "sync_wrapper 0.1.2",
+ "tower-layer",
+ "tower-service",
+ "tracing",
+]
+
+[[package]]
+name = "axum-extra"
+version = "0.9.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "0be6ea09c9b96cb5076af0de2e383bd2bc0c18f827cf1967bdd353e0b910d733"
+dependencies = [
+ "axum",
+ "axum-core",
+ "bytes",
+ "futures-util",
+ "headers",
+ "http 1.1.0",
+ "http-body 1.0.0",
+ "http-body-util",
+ "mime",
+ "pin-project-lite",
+ "serde",
+ "tower",
+ "tower-layer",
+ "tower-service",
+ "tracing",
+]
+
+[[package]]
 name = "backtrace"
 version = "0.3.69"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -141,9 +222,9 @@ checksum = "9e1b586273c5702936fe7b7d6896644d8be71e6314cfe09d3167c95f712589e8"
 
 [[package]]
 name = "base64"
-version = "0.21.5"
+version = "0.21.7"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "35636a1494ede3b646cc98f74f8e62c773a38a659ebc777a2cf26b9b74171df9"
+checksum = "9d297deb1925b89f2ccc13d7635fa0714f12c87adce1c75356b39ca9b7178567"
 
 [[package]]
 name = "bincode"
@@ -162,9 +243,9 @@ checksum = "bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a"
 
 [[package]]
 name = "bitflags"
-version = "2.4.1"
+version = "2.4.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "327762f6e5a765692301e5bb513e0d9fef63be86bbc14528052b1cd3e6f03e07"
+checksum = "ed570934406eb16438a4e976b1b4500774099c13b8cb96eec99f620f05090ddf"
 
 [[package]]
 name = "block"
@@ -173,13 +254,22 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "0d8c1fef690941d3e7788d328517591fecc684c084084702d6ff1641e993699a"
 
 [[package]]
+name = "block-buffer"
+version = "0.10.4"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "3078c7629b62d3f0439517fa394996acacc5cbc91c5a20d8c658e77abd503a71"
+dependencies = [
+ "generic-array",
+]
+
+[[package]]
 name = "bstr"
-version = "1.7.0"
+version = "1.9.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c79ad7fb2dd38f3dabd76b09c6a5a20c038fc0213ef1e9afd30eb777f120f019"
+checksum = "05efc5cfd9110c8416e471df0e96702d58690178e206e61b7173706673c93706"
 dependencies = [
  "memchr",
- "regex-automata 0.4.3",
+ "regex-automata 0.4.6",
  "serde",
 ]
 
@@ -195,9 +285,9 @@ dependencies = [
 
 [[package]]
 name = "bumpalo"
-version = "3.14.0"
+version = "3.15.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7f30e7476521f6f8af1a1c4c0b8cc94f0bee37d91763d0ca2665f299b6cd8aec"
+checksum = "7ff69b9dd49fd426c69a0db9fc04dd934cdb6645ff000864d98f7e2af8830eaa"
 
 [[package]]
 name = "bytecount"
@@ -206,6 +296,12 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "e1e5f035d16fc623ae5f74981db80a439803888314e3a555fd6f04acd51a3205"
 
 [[package]]
+name = "byteorder"
+version = "1.5.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "1fd0f2584146f6f2ef48085050886acf353beff7305ebd1ae69500e27c67f64b"
+
+[[package]]
 name = "bytes"
 version = "1.5.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -234,9 +330,9 @@ dependencies = [
 
 [[package]]
 name = "cargo-platform"
-version = "0.1.4"
+version = "0.1.7"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "12024c4645c97566567129c204f65d5815a8c9aecf30fcbe682b2fe034996d36"
+checksum = "694c8807f2ae16faecc43dc17d74b3eb042482789fd0eb64b39a2e04e087053f"
 dependencies = [
  "serde",
 ]
@@ -263,9 +359,9 @@ checksum = "37b2a672a2cb129a2e41c10b1224bb368f9f37a2b16b612598138befd7b37eb5"
 
 [[package]]
 name = "cc"
-version = "1.0.83"
+version = "1.0.90"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f1174fb0b6ec23863f8b971027804a42614e347eafb0a95bf0b12cdae21fc4d0"
+checksum = "8cd6604a82acf3039f1144f54b8eb34e91ffba622051189e71b781822d5ee1f5"
 dependencies = [
  "jobserver",
  "libc",
@@ -285,9 +381,9 @@ checksum = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd"
 
 [[package]]
 name = "chrono"
-version = "0.4.31"
+version = "0.4.35"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7f2c685bad3eb3d45a01354cedb7d5faa66194d1d58ba6e267a8de788f79db38"
+checksum = "8eaf5903dcbc0a39312feb77df2ff4c76387d591b9fc7b04a238dcf8bb62639a"
 dependencies = [
  "android-tzdata",
  "iana-time-zone",
@@ -295,7 +391,7 @@ dependencies = [
  "num-traits",
  "serde",
  "wasm-bindgen",
- "windows-targets 0.48.5",
+ "windows-targets 0.52.4",
 ]
 
 [[package]]
@@ -336,9 +432,9 @@ dependencies = [
 
 [[package]]
 name = "clap"
-version = "4.4.7"
+version = "4.5.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ac495e00dcec98c83465d5ad66c5c4fabd652fd6686e7c6269b117e729a6f17b"
+checksum = "b230ab84b0ffdf890d5a10abdbc8b83ae1c4918275daea1ab8801f71536b2651"
 dependencies = [
  "clap_builder",
  "clap_derive",
@@ -346,37 +442,37 @@ dependencies = [
 
 [[package]]
 name = "clap_builder"
-version = "4.4.7"
+version = "4.5.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c77ed9a32a62e6ca27175d00d29d05ca32e396ea1eb5fb01d8256b669cec7663"
+checksum = "ae129e2e766ae0ec03484e609954119f123cc1fe650337e155d03b022f24f7b4"
 dependencies = [
  "anstream",
  "anstyle",
  "clap_lex",
- "strsim",
+ "strsim 0.11.0",
 ]
 
 [[package]]
 name = "clap_derive"
-version = "4.4.7"
+version = "4.5.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "cf9804afaaf59a91e75b022a30fb7229a7901f60c755489cc61c9b423b836442"
+checksum = "307bc0538d5f0f83b8248db3087aa92fe504e4691294d0c96c0eabc33f47ba47"
 dependencies = [
  "heck",
  "proc-macro2",
  "quote",
- "syn 2.0.38",
+ "syn 2.0.52",
 ]
 
 [[package]]
 name = "clap_lex"
-version = "0.6.0"
+version = "0.7.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "702fc72eb24e5a1e48ce58027a675bc24edd52096d5397d4aea7c6dd9eca0bd1"
+checksum = "98cc8fbded0c607b7ba9dd60cd98df59af97e84d24e49c8557331cfc26d301ce"
 
 [[package]]
 name = "cli"
-version = "0.1.52"
+version = "0.1.53"
 dependencies = [
  "anyhow",
  "clap",
@@ -413,7 +509,7 @@ dependencies = [
 
 [[package]]
 name = "code_tools"
-version = "0.1.52"
+version = "0.1.53"
 dependencies = [
  "cargo_metadata",
  "maple_config",
@@ -453,21 +549,21 @@ dependencies = [
 
 [[package]]
 name = "console"
-version = "0.15.7"
+version = "0.15.8"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c926e00cc70edefdc64d3a5ff31cc65bb97a3460097762bd23afb4d8145fccf8"
+checksum = "0e1f83fc076bd6dd27517eacdf25fef6c4dfe5f1d7448bafaaf3a26f13b5e4eb"
 dependencies = [
  "encode_unicode",
  "lazy_static",
  "libc",
- "windows-sys 0.45.0",
+ "windows-sys 0.52.0",
 ]
 
 [[package]]
 name = "copypasta"
-version = "0.10.0"
+version = "0.10.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6d35364349bf9e9e1c3a035ddcb00d188d23a3c40c50244c03c27a99fc6a65ae"
+checksum = "deb85422867ca93da58b7f95fb5c0c10f6183ed6e1ef8841568968a896d3a858"
 dependencies = [
  "clipboard-win",
  "objc",
@@ -478,9 +574,9 @@ dependencies = [
 
 [[package]]
 name = "core-foundation"
-version = "0.9.3"
+version = "0.9.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "194a7a9e6de53fa55116934067c844d9d749312f75c6f6d0980e8c252f8c2146"
+checksum = "91e195e091a93c46f7102ec7818a2aa394e1e1771c3ab4825963fa03e45afb8f"
 dependencies = [
  "core-foundation-sys",
  "libc",
@@ -488,15 +584,24 @@ dependencies = [
 
 [[package]]
 name = "core-foundation-sys"
-version = "0.8.4"
+version = "0.8.6"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "06ea2b9bc92be3c2baa9334a323ebca2d6f074ff852cd1d7b11064035cd3868f"
+
+[[package]]
+name = "cpufeatures"
+version = "0.2.12"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e496a50fda8aacccc86d7529e2c1e0892dbd0f898a6b5645b5561b89c3210efa"
+checksum = "53fe5e26ff1b7aef8bca9c6080520cfb8d9333c7568e1829cef191a9723e5504"
+dependencies = [
+ "libc",
+]
 
 [[package]]
 name = "crc32fast"
-version = "1.3.2"
+version = "1.4.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b540bd8bc810d3885c6ea91e2018302f68baba2129ab3e88f32389ee9370880d"
+checksum = "b3855a8a784b474f333699ef2bbca9db2c4a1f6d9088a90a2d25b1eb53111eaa"
 dependencies = [
  "cfg-if",
 ]
@@ -539,46 +644,37 @@ dependencies = [
 
 [[package]]
 name = "crossbeam-channel"
-version = "0.5.8"
+version = "0.5.12"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a33c2bf77f2df06183c3aa30d1e96c0695a313d4f9c453cc3762a6db39f99200"
+checksum = "ab3db02a9c5b5121e1e42fbdb1aeb65f5e02624cc58c43f2884c6ccac0b82f95"
 dependencies = [
- "cfg-if",
  "crossbeam-utils",
 ]
 
 [[package]]
 name = "crossbeam-deque"
-version = "0.8.3"
+version = "0.8.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ce6fd6f855243022dcecf8702fef0c297d4338e226845fe067f6341ad9fa0cef"
+checksum = "613f8cc01fe9cf1a3eb3d7f488fd2fa8388403e97039e2f73692932e291a770d"
 dependencies = [
- "cfg-if",
  "crossbeam-epoch",
  "crossbeam-utils",
 ]
 
 [[package]]
 name = "crossbeam-epoch"
-version = "0.9.15"
+version = "0.9.18"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ae211234986c545741a7dc064309f67ee1e5ad243d0e48335adc0484d960bcc7"
+checksum = "5b82ac4a3c2ca9c3460964f020e1402edd5753411d7737aa39c3714ad1b5420e"
 dependencies = [
- "autocfg",
- "cfg-if",
  "crossbeam-utils",
- "memoffset 0.9.0",
- "scopeguard",
 ]
 
 [[package]]
 name = "crossbeam-utils"
-version = "0.8.16"
+version = "0.8.19"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5a22b2d63d4d1dc0b7f1b6b2747dd0088008a9be28b6ddf0b1e7d335e3037294"
-dependencies = [
- "cfg-if",
-]
+checksum = "248e3bacc7dc6baa3b21e405ee045c3047101a49145e7e9eca583ab4c2ca5345"
 
 [[package]]
 name = "crunchy"
@@ -587,10 +683,20 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "7a81dae078cea95a014a339291cec439d2f232ebe854a9d672b796c6afafa9b7"
 
 [[package]]
+name = "crypto-common"
+version = "0.1.6"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "1bfb12502f3fc46cca1bb51ac28df9d618d813cdc3d2f25b9fe775a34af26bb3"
+dependencies = [
+ "generic-array",
+ "typenum",
+]
+
+[[package]]
 name = "darling"
-version = "0.20.3"
+version = "0.20.8"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0209d94da627ab5605dcccf08bb18afa5009cfbef48d8a8b7d7bdbc79be25c5e"
+checksum = "54e36fcd13ed84ffdfda6f5be89b31287cbb80c439841fe69e04841435464391"
 dependencies = [
  "darling_core",
  "darling_macro",
@@ -598,39 +704,55 @@ dependencies = [
 
 [[package]]
 name = "darling_core"
-version = "0.20.3"
+version = "0.20.8"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "177e3443818124b357d8e76f53be906d60937f0d3a90773a664fa63fa253e621"
+checksum = "9c2cf1c23a687a1feeb728783b993c4e1ad83d99f351801977dd809b48d0a70f"
 dependencies = [
  "fnv",
  "ident_case",
  "proc-macro2",
  "quote",
- "strsim",
- "syn 2.0.38",
+ "strsim 0.10.0",
+ "syn 2.0.52",
 ]
 
 [[package]]
 name = "darling_macro"
-version = "0.20.3"
+version = "0.20.8"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "836a9bbc7ad63342d6d6e7b815ccab164bc77a2d95d84bc3117a8c0d5c98e2d5"
+checksum = "a668eda54683121533a393014d8692171709ff57a7d61f187b6e782719f8933f"
 dependencies = [
  "darling_core",
  "quote",
- "syn 2.0.38",
+ "syn 2.0.52",
 ]
 
 [[package]]
+name = "data-encoding"
+version = "2.5.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "7e962a19be5cfc3f3bf6dd8f61eb50107f356ad6270fbb3ed41476571db78be5"
+
+[[package]]
 name = "deranged"
-version = "0.3.9"
+version = "0.3.11"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0f32d04922c60427da6f9fef14d042d9edddef64cb9d4ce0d64d0685fbeb1fd3"
+checksum = "b42b6fa04a440b495c8b04d0e71b707c585f83cb9cb28cf8cd0d976c315e31b4"
 dependencies = [
  "powerfmt",
 ]
 
 [[package]]
+name = "digest"
+version = "0.10.7"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "9ed9a281f7bc9b7576e61468ba615a66a5c8cfdff42420a70aa82701a3b1e292"
+dependencies = [
+ "block-buffer",
+ "crypto-common",
+]
+
+[[package]]
 name = "directories"
 version = "4.0.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -641,7 +763,7 @@ dependencies = [
 
 [[package]]
 name = "dirs"
-version = "0.1.52"
+version = "0.1.53"
 dependencies = [
  "directories",
 ]
@@ -699,9 +821,9 @@ checksum = "56ce8c6da7551ec6c462cbaf3bfbc75131ebbfa1c944aeaa9dab51ca1c5f0c3b"
 
 [[package]]
 name = "either"
-version = "1.9.0"
+version = "1.10.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a26ae43d7bcc3b814de94796a5e736d4029efb0ee900c12e2d54c993ad1a1e07"
+checksum = "11157ac094ffbdde99aa67b23417ebdd801842852b500e395a45a9c0aac03e4a"
 
 [[package]]
 name = "encode_unicode"
@@ -745,11 +867,11 @@ dependencies = [
 
 [[package]]
 name = "extracted_fzy"
-version = "0.1.52"
+version = "0.1.53"
 
 [[package]]
 name = "filter"
-version = "0.1.52"
+version = "0.1.53"
 dependencies = [
  "icon",
  "matcher",
@@ -781,18 +903,18 @@ checksum = "3f9eec918d3f24069decb9af1554cad7c880e2da24a9afd88aca000531ab82c1"
 
 [[package]]
 name = "form_urlencoded"
-version = "1.2.0"
+version = "1.2.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a62bc1cf6f830c2ec14a513a9fb124d0a213a629668a4186f329db21fe045652"
+checksum = "e13624c2627564efccf4934284bdd98cbaa14e79b0b5a141218e507b3a823456"
 dependencies = [
  "percent-encoding",
 ]
 
 [[package]]
 name = "futures"
-version = "0.3.29"
+version = "0.3.30"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "da0290714b38af9b4a7b094b8a37086d1b4e61f2df9122c3cad2577669145335"
+checksum = "645c6916888f6cb6350d2550b80fb63e734897a8498abe35cfb732b6487804b0"
 dependencies = [
  "futures-channel",
  "futures-core",
@@ -805,9 +927,9 @@ dependencies = [
 
 [[package]]
 name = "futures-channel"
-version = "0.3.29"
+version = "0.3.30"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ff4dd66668b557604244583e3e1e1eada8c5c2e96a6d0d6653ede395b78bbacb"
+checksum = "eac8f7d7865dcb88bd4373ab671c8cf4508703796caa2b1985a9ca867b3fcb78"
 dependencies = [
  "futures-core",
  "futures-sink",
@@ -815,15 +937,15 @@ dependencies = [
 
 [[package]]
 name = "futures-core"
-version = "0.3.29"
+version = "0.3.30"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "eb1d22c66e66d9d72e1758f0bd7d4fd0bee04cad842ee34587d68c07e45d088c"
+checksum = "dfc6580bb841c5a68e9ef15c77ccc837b40a7504914d52e47b8b0e9bbda25a1d"
 
 [[package]]
 name = "futures-executor"
-version = "0.3.29"
+version = "0.3.30"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0f4fb8693db0cf099eadcca0efe2a5a22e4550f98ed16aba6c48700da29597bc"
+checksum = "a576fc72ae164fca6b9db127eaa9a9dda0d61316034f33a0a0d4eda41f02b01d"
 dependencies = [
  "futures-core",
  "futures-task",
@@ -832,38 +954,38 @@ dependencies = [
 
 [[package]]
 name = "futures-io"
-version = "0.3.29"
+version = "0.3.30"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8bf34a163b5c4c52d0478a4d757da8fb65cabef42ba90515efee0f6f9fa45aaa"
+checksum = "a44623e20b9681a318efdd71c299b6b222ed6f231972bfe2f224ebad6311f0c1"
 
 [[package]]
 name = "futures-macro"
-version = "0.3.29"
+version = "0.3.30"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "53b153fd91e4b0147f4aced87be237c98248656bb01050b96bf3ee89220a8ddb"
+checksum = "87750cf4b7a4c0625b1529e4c543c2182106e4dedc60a2a6455e00d212c489ac"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.38",
+ "syn 2.0.52",
 ]
 
 [[package]]
 name = "futures-sink"
-version = "0.3.29"
+version = "0.3.30"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e36d3378ee38c2a36ad710c5d30c2911d752cb941c00c72dbabfb786a7970817"
+checksum = "9fb8e00e87438d937621c1c6269e53f536c14d3fbd6a042bb24879e57d474fb5"
 
 [[package]]
 name = "futures-task"
-version = "0.3.29"
+version = "0.3.30"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "efd193069b0ddadc69c46389b740bbccdd97203899b48d09c5f7969591d6bae2"
+checksum = "38d84fa142264698cdce1a9f9172cf383a0c82de1bddcf3092901442c4097004"
 
 [[package]]
 name = "futures-util"
-version = "0.3.29"
+version = "0.3.30"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a19526d624e703a3179b3d322efec918b6246ea0fa51d41124525f00f1cc8104"
+checksum = "3d6401deb83407ab3da39eba7e33987a73c3df0c82b4bb5813ee871c19c41d48"
 dependencies = [
  "futures-channel",
  "futures-core",
@@ -887,20 +1009,39 @@ dependencies = [
 ]
 
 [[package]]
+name = "generic-array"
+version = "0.14.7"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "85649ca51fd72272d7821adaf274ad91c288277713d9c18820d8499a7ff69e9a"
+dependencies = [
+ "typenum",
+ "version_check",
+]
+
+[[package]]
 name = "gethostname"
-version = "0.3.0"
+version = "0.4.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "bb65d4ba3173c56a500b555b532f72c42e8d1fe64962b518897f8959fae2c177"
+checksum = "0176e0459c2e4a1fe232f984bca6890e681076abb9934f6cea7c326f3fc47818"
 dependencies = [
  "libc",
- "winapi",
+ "windows-targets 0.48.5",
+]
+
+[[package]]
+name = "getopts"
+version = "0.2.21"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "14dbbfd5c71d70241ecf9e6f13737f7b5ce823821063188d7e46c41d371eebd5"
+dependencies = [
+ "unicode-width",
 ]
 
 [[package]]
 name = "getrandom"
-version = "0.2.10"
+version = "0.2.12"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "be4136b2a15dd319360be1c07d9933517ccf0be8f16bf62a3bee4f0d618df427"
+checksum = "190092ea657667030ac6a35e305e62fc4dd69fd98ac98631e5d3a2b1575a12b5"
 dependencies = [
  "cfg-if",
  "libc",
@@ -909,9 +1050,9 @@ dependencies = [
 
 [[package]]
 name = "gimli"
-version = "0.28.0"
+version = "0.28.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6fb8d784f27acf97159b40fc4db5ecd8aa23b9ad5ef69cdd136d3bc80665f0c0"
+checksum = "4271d37baee1b8c7e4b708028c57d816cf9d2434acb33a549475f78c181f6253"
 
 [[package]]
 name = "git2"
@@ -943,15 +1084,15 @@ dependencies = [
 
 [[package]]
 name = "globset"
-version = "0.4.13"
+version = "0.4.14"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "759c97c1e17c55525b57192c06a267cda0ac5210b222d6b82189a2338fa1c13d"
+checksum = "57da3b9b5b85bd66f31093f8c408b90a74431672542466497dcbdfdc02034be1"
 dependencies = [
  "aho-corasick",
  "bstr",
- "fnv",
  "log",
- "regex",
+ "regex-automata 0.4.6",
+ "regex-syntax 0.8.2",
 ]
 
 [[package]]
@@ -972,7 +1113,7 @@ dependencies = [
  "bstr",
  "grep-matcher",
  "log",
- "regex-automata 0.4.3",
+ "regex-automata 0.4.6",
  "regex-syntax 0.8.2",
 ]
 
@@ -993,17 +1134,17 @@ dependencies = [
 
 [[package]]
 name = "h2"
-version = "0.3.21"
+version = "0.3.24"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "91fc23aa11be92976ef4729127f1a74adf36d8436f7816b185d18df956790833"
+checksum = "bb2c4422095b67ee78da96fbb51a4cc413b3b25883c7717ff7ca1ab31022c9c9"
 dependencies = [
  "bytes",
  "fnv",
  "futures-core",
  "futures-sink",
  "futures-util",
- "http",
- "indexmap 1.9.3",
+ "http 0.2.12",
+ "indexmap",
  "slab",
  "tokio",
  "tokio-util",
@@ -1012,9 +1153,9 @@ dependencies = [
 
 [[package]]
 name = "half"
-version = "2.3.1"
+version = "2.4.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "bc52e53916c08643f1b56ec082790d1e86a32e58dc5268f897f313fbae7b4872"
+checksum = "b5eceaaeec696539ddaf7b333340f1af35a5aa87ae3e4f3ead0532f72affab2e"
 dependencies = [
  "cfg-if",
  "crunchy",
@@ -1022,15 +1163,33 @@ dependencies = [
 
 [[package]]
 name = "hashbrown"
-version = "0.12.3"
+version = "0.14.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8a9ee70c43aaf417c914396645a0fa852624801b24ebb7ae78fe8272889ac888"
+checksum = "290f1a1d9242c78d09ce40a5e87e7554ee637af1351968159f4952f028f75604"
 
 [[package]]
-name = "hashbrown"
-version = "0.14.2"
+name = "headers"
+version = "0.4.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "322106e6bd0cba2d5ead589ddb8150a13d7c4217cf80d7c4f682ca994ccc6aa9"
+dependencies = [
+ "base64 0.21.7",
+ "bytes",
+ "headers-core",
+ "http 1.1.0",
+ "httpdate",
+ "mime",
+ "sha1",
+]
+
+[[package]]
+name = "headers-core"
+version = "0.3.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f93e7192158dbcda357bdec5fb5788eebf8bbac027f3f33e719d29135ae84156"
+checksum = "54b4a22553d4242c49fddb9ba998a99962b5cc6f22cb5a3482bec22522403ce4"
+dependencies = [
+ "http 1.1.0",
+]
 
 [[package]]
 name = "heck"
@@ -1040,24 +1199,35 @@ checksum = "95505c38b4572b2d910cecb0281560f54b440a19336cbbcb27bf6ce6adc6f5a8"
 
 [[package]]
 name = "hermit-abi"
-version = "0.3.3"
+version = "0.3.9"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d77f7ec81a6d05a3abb01ab6eb7590f6083d08449fe5a1c8b1e620283546ccb7"
+checksum = "d231dfb89cfffdbc30e7fc41579ed6066ad03abda9e567ccafae602b97ec5024"
 
 [[package]]
 name = "home"
-version = "0.5.5"
+version = "0.5.9"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5444c27eef6923071f7ebcc33e3444508466a76f7a2b93da00ed6e19f30c1ddb"
+checksum = "e3d1354bf6b7235cb4a0576c2619fd4ed18183f689b12b006a0ee7329eeff9a5"
 dependencies = [
- "windows-sys 0.48.0",
+ "windows-sys 0.52.0",
+]
+
+[[package]]
+name = "http"
+version = "0.2.12"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "601cbb57e577e2f5ef5be8e7b83f0f63994f25aa94d673e54a92d5c516d101f1"
+dependencies = [
+ "bytes",
+ "fnv",
+ "itoa",
 ]
 
 [[package]]
 name = "http"
-version = "0.2.9"
+version = "1.1.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "bd6effc99afb63425aff9b05836f029929e345a6148a14b7ecd5ab67af944482"
+checksum = "21b9ddb458710bc376481b842f5da65cdf31522de232c1ca8146abce2a358258"
 dependencies = [
  "bytes",
  "fnv",
@@ -1066,12 +1236,35 @@ dependencies = [
 
 [[package]]
 name = "http-body"
-version = "0.4.5"
+version = "0.4.6"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d5f38f16d184e36f2408a55281cd658ecbd3ca05cce6d6510a176eca393e26d1"
+checksum = "7ceab25649e9960c0311ea418d17bee82c0dcec1bd053b5f9a66e265a693bed2"
 dependencies = [
  "bytes",
- "http",
+ "http 0.2.12",
+ "pin-project-lite",
+]
+
+[[package]]
+name = "http-body"
+version = "1.0.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "1cac85db508abc24a2e48553ba12a996e87244a0395ce011e62b37158745d643"
+dependencies = [
+ "bytes",
+ "http 1.1.0",
+]
+
+[[package]]
+name = "http-body-util"
+version = "0.1.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "0475f8b2ac86659c21b64320d5d653f9efe42acd2a4e560073ec61a155a34f1d"
+dependencies = [
+ "bytes",
+ "futures-core",
+ "http 1.1.0",
+ "http-body 1.0.0",
  "pin-project-lite",
 ]
 
@@ -1089,22 +1282,22 @@ checksum = "df3b46402a9d5adb4c86a0cf463f42e19994e3ee891101b1841f30a545cb49a9"
 
 [[package]]
 name = "hyper"
-version = "0.14.27"
+version = "0.14.28"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ffb1cfd654a8219eaef89881fdb3bb3b1cdc5fa75ded05d6933b2b382e395468"
+checksum = "bf96e135eb83a2a8ddf766e426a841d8ddd7449d5f00d34ea02b41d2f19eef80"
 dependencies = [
  "bytes",
  "futures-channel",
  "futures-core",
  "futures-util",
  "h2",
- "http",
- "http-body",
+ "http 0.2.12",
+ "http-body 0.4.6",
  "httparse",
  "httpdate",
  "itoa",
  "pin-project-lite",
- "socket2 0.4.10",
+ "socket2",
  "tokio",
  "tower-service",
  "tracing",
@@ -1112,24 +1305,59 @@ dependencies = [
 ]
 
 [[package]]
+name = "hyper"
+version = "1.2.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "186548d73ac615b32a73aafe38fb4f56c0d340e110e5a200bcadbaf2e199263a"
+dependencies = [
+ "bytes",
+ "futures-channel",
+ "futures-util",
+ "http 1.1.0",
+ "http-body 1.0.0",
+ "httparse",
+ "httpdate",
+ "itoa",
+ "pin-project-lite",
+ "smallvec",
+ "tokio",
+]
+
+[[package]]
 name = "hyper-rustls"
 version = "0.24.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "ec3efd23720e2049821a693cbc7e65ea87c72f1c58ff2f9522ff332b1491e590"
 dependencies = [
  "futures-util",
- "http",
- "hyper",
+ "http 0.2.12",
+ "hyper 0.14.28",
  "rustls",
  "tokio",
  "tokio-rustls",
 ]
 
 [[package]]
+name = "hyper-util"
+version = "0.1.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "ca38ef113da30126bbff9cd1705f9273e15d45498615d138b0c20279ac7a76aa"
+dependencies = [
+ "bytes",
+ "futures-util",
+ "http 1.1.0",
+ "http-body 1.0.0",
+ "hyper 1.2.0",
+ "pin-project-lite",
+ "socket2",
+ "tokio",
+]
+
+[[package]]
 name = "iana-time-zone"
-version = "0.1.58"
+version = "0.1.60"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8326b86b6cff230b97d0d312a6c40a60726df3332e721f72a1b035f451663b20"
+checksum = "e7ffbb5a1b541ea2561f8c41c087286cc091e21e556a4f09a8f6cbf17b69b141"
 dependencies = [
  "android_system_properties",
  "core-foundation-sys",
@@ -1150,7 +1378,7 @@ dependencies = [
 
 [[package]]
 name = "icon"
-version = "0.1.52"
+version = "0.1.53"
 dependencies = [
  "itertools 0.10.5",
  "pattern",
@@ -1165,9 +1393,9 @@ checksum = "b9e0384b61958566e926dc50660321d12159025e767c18e043daf26b70104c39"
 
 [[package]]
 name = "idna"
-version = "0.4.0"
+version = "0.5.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7d20d6b07bfbc108882d88ed8e37d39636dcc260e15e30c45e6ba089610b917c"
+checksum = "634d9b1461af396cad843f47fdba5597a4f9e6ddd4bfb6ff5d85028c25cb12f6"
 dependencies = [
  "unicode-bidi",
  "unicode-normalization",
@@ -1175,39 +1403,28 @@ dependencies = [
 
 [[package]]
 name = "ignore"
-version = "0.4.20"
+version = "0.4.22"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "dbe7873dab538a9a44ad79ede1faf5f30d49f9a5c883ddbab48bce81b64b7492"
+checksum = "b46810df39e66e925525d6e38ce1e7f6e1d208f72dc39757880fcb66e2c58af1"
 dependencies = [
+ "crossbeam-deque",
  "globset",
- "lazy_static",
  "log",
  "memchr",
- "regex",
+ "regex-automata 0.4.6",
  "same-file",
- "thread_local",
  "walkdir",
  "winapi-util",
 ]
 
 [[package]]
 name = "indexmap"
-version = "1.9.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "bd070e393353796e801d209ad339e89596eb4c8d430d18ede6a1cced8fafbd99"
-dependencies = [
- "autocfg",
- "hashbrown 0.12.3",
-]
-
-[[package]]
-name = "indexmap"
-version = "2.1.0"
+version = "2.2.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d530e1a18b1cb4c484e6e34556a0d948706958449fca0cab753d649f2bce3d1f"
+checksum = "7b0b929d511467233429c45a44ac1dcaa21ba0f5ba11e4879e6ed28ddb4f9df4"
 dependencies = [
  "equivalent",
- "hashbrown 0.14.2",
+ "hashbrown",
 ]
 
 [[package]]
@@ -1265,9 +1482,9 @@ dependencies = [
 
 [[package]]
 name = "itoa"
-version = "1.0.9"
+version = "1.0.10"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "af150ab688ff2122fcef229be89cb50dd66af9e01a4ff320cc137eecc9bacc38"
+checksum = "b1a46d1a171d865aa5f83f92695765caa047a9b4cbae2cbf37dbd613a793fd4c"
 
 [[package]]
 name = "jni"
@@ -1293,18 +1510,18 @@ checksum = "8eaf4bc02d17cbdd7ff4c7438cafcdf7fb9a4613313ad11b4f8fefe7d3fa0130"
 
 [[package]]
 name = "jobserver"
-version = "0.1.27"
+version = "0.1.28"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8c37f63953c4c63420ed5fd3d6d398c719489b9f872b9fa683262f8edd363c7d"
+checksum = "ab46a6e9526ddef3ae7f787c06f0f2600639ba80ea3eade3d8e670a2230f51d6"
 dependencies = [
  "libc",
 ]
 
 [[package]]
 name = "js-sys"
-version = "0.3.65"
+version = "0.3.69"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "54c0c35952f67de54bb584e9fd912b3023117cbafc0a77d8f3dee1fb5f572fe8"
+checksum = "29c15563dc2726973df627357ce0c9ddddbea194836909d655df6a75d2cf296d"
 dependencies = [
  "wasm-bindgen",
 ]
@@ -1323,9 +1540,9 @@ checksum = "e2abad23fbc42b3700f2f279844dc832adb2b2eb069b2df918f455c4e18cc646"
 
 [[package]]
 name = "libc"
-version = "0.2.149"
+version = "0.2.153"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a08173bc88b7955d1b3145aa561539096c421ac8debde8cbc3612ec635fee29b"
+checksum = "9c198f91728a82281a64e1f4f9eeb25d82cb32a5de251c6bd1b5154d63a8e7bd"
 
 [[package]]
 name = "libgit2-sys"
@@ -1342,6 +1559,17 @@ dependencies = [
 ]
 
 [[package]]
+name = "libredox"
+version = "0.0.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "85c833ca1e66078851dba29046874e38f08b2c883700aa29a03ddd3b23814ee8"
+dependencies = [
+ "bitflags 2.4.2",
+ "libc",
+ "redox_syscall 0.4.1",
+]
+
+[[package]]
 name = "libssh2-sys"
 version = "0.2.23"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -1357,9 +1585,9 @@ dependencies = [
 
 [[package]]
 name = "libz-sys"
-version = "1.1.12"
+version = "1.1.15"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d97137b25e321a73eef1418d1d5d2eda4d77e12813f8e6dead84bc52c5870a7b"
+checksum = "037731f5d3aaa87a5675e895b63ddff1a87624bc29f77004ea829809654e48f6"
 dependencies = [
  "cc",
  "libc",
@@ -1384,9 +1612,9 @@ checksum = "0717cef1bc8b636c6e1c1bbdefc09e6322da8a9321966e8928ef80d20f7f770f"
 
 [[package]]
 name = "linux-raw-sys"
-version = "0.4.12"
+version = "0.4.13"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c4cd1a83af159aa67994778be9070f0ae1bd732942279cabb14f86f986a21456"
+checksum = "01cda141df6706de531b6c46c3a33ecca755538219bd484262fa09410c13539c"
 
 [[package]]
 name = "lock_api"
@@ -1400,9 +1628,9 @@ dependencies = [
 
 [[package]]
 name = "log"
-version = "0.4.20"
+version = "0.4.21"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b5e6163cb8c49088c2c36f57875e58ccd8c87c7427f7fbd50ea6710b2f3f2e8f"
+checksum = "90ed8c1e510134f979dbc4f070f87d4313098b704861a105fe34231c70a3901c"
 
 [[package]]
 name = "lsp-types"
@@ -1434,15 +1662,16 @@ dependencies = [
  "chrono",
  "clap",
  "cli",
+ "tikv-jemallocator",
  "tokio",
  "upgrade",
 ]
 
 [[package]]
 name = "maple_config"
-version = "0.1.52"
+version = "0.1.53"
 dependencies = [
- "dirs 0.1.52",
+ "dirs 0.1.53",
  "once_cell",
  "paths",
  "serde",
@@ -1453,7 +1682,7 @@ dependencies = [
 
 [[package]]
 name = "maple_core"
-version = "0.1.52"
+version = "0.1.53"
 dependencies = [
  "async-trait",
  "base64 0.13.1",
@@ -1463,7 +1692,7 @@ dependencies = [
  "code_tools",
  "colors-transform",
  "copypasta",
- "dirs 0.1.52",
+ "dirs 0.1.53",
  "filter",
  "futures",
  "git2 0.15.0",
@@ -1475,12 +1704,12 @@ dependencies = [
  "maple_config",
  "maple_derive",
  "maple_lsp",
+ "maple_markdown",
  "matcher",
  "once_cell",
  "parking_lot",
  "paths",
  "pattern",
- "percent-encoding",
  "printer",
  "rayon",
  "regex",
@@ -1488,7 +1717,7 @@ dependencies = [
  "rpc",
  "serde",
  "serde_json",
- "strsim",
+ "strsim 0.10.0",
  "sublime_syntax",
  "subprocess",
  "thiserror",
@@ -1503,7 +1732,7 @@ dependencies = [
 
 [[package]]
 name = "maple_derive"
-version = "0.1.52"
+version = "0.1.53"
 dependencies = [
  "async-trait",
  "darling",
@@ -1511,14 +1740,15 @@ dependencies = [
  "once_cell",
  "proc-macro2",
  "quote",
- "syn 2.0.38",
+ "syn 2.0.52",
  "types",
 ]
 
 [[package]]
 name = "maple_lsp"
-version = "0.1.52"
+version = "0.1.53"
 dependencies = [
+ "dirs 0.1.53",
  "futures-util",
  "lsp-types",
  "parking_lot",
@@ -1534,14 +1764,33 @@ dependencies = [
 ]
 
 [[package]]
+name = "maple_markdown"
+version = "0.1.53"
+dependencies = [
+ "axum",
+ "axum-extra",
+ "once_cell",
+ "percent-encoding",
+ "pulldown-cmark",
+ "regex",
+ "serde_json",
+ "tokio",
+ "tracing",
+ "utils",
+ "webbrowser",
+]
+
+[[package]]
 name = "matcher"
-version = "0.1.52"
+version = "0.1.53"
 dependencies = [
  "code_tools",
  "extracted_fzy",
  "fuzzy-matcher",
  "grep-matcher",
  "grep-regex",
+ "norm",
+ "nucleo-matcher",
  "pattern",
  "types",
 ]
@@ -1556,36 +1805,24 @@ dependencies = [
 ]
 
 [[package]]
-name = "memchr"
-version = "2.6.4"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f665ee40bc4a3c5590afb1e9677db74a508659dfd71e126420da8274909a0167"
-
-[[package]]
-name = "memmap2"
-version = "0.9.0"
+name = "matchit"
+version = "0.7.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "deaba38d7abf1d4cca21cc89e932e542ba2b9258664d2a9ef0e61512039c9375"
-dependencies = [
- "libc",
-]
+checksum = "0e7465ac9959cc2b1404e8e2367b43684a6d13790fe23056cc8c6c5a6b7bcb94"
 
 [[package]]
-name = "memoffset"
-version = "0.7.1"
+name = "memchr"
+version = "2.7.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5de893c32cde5f383baa4c04c5d6dbdd735cfd4a794b0debdb2bb1b421da5ff4"
-dependencies = [
- "autocfg",
-]
+checksum = "523dc4f511e55ab87b694dc30d0f820d60906ef06413f93d4d7a1385599cc149"
 
 [[package]]
-name = "memoffset"
-version = "0.9.0"
+name = "memmap2"
+version = "0.9.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5a634b1c61a95585bd15607c6ab0c4e5b226e695ff2800ba0cdccddf208c406c"
+checksum = "fe751422e4a8caa417e13c3ea66452215d7d63e19e604f4980461212f3ae1322"
 dependencies = [
- "autocfg",
+ "libc",
 ]
 
 [[package]]
@@ -1596,18 +1833,18 @@ checksum = "6877bb514081ee2a7ff5ef9de3281f14a4dd4bceac4c09388074a6b5df8a139a"
 
 [[package]]
 name = "miniz_oxide"
-version = "0.7.1"
+version = "0.7.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e7810e0be55b428ada41041c41f32c9f1a42817901b4ccf45fa3d4b6561e74c7"
+checksum = "9d811f3e15f28568be3407c8e7fdb6514c1cda3cb30683f15b6a1a1dc4ea14a7"
 dependencies = [
  "adler",
 ]
 
 [[package]]
 name = "mio"
-version = "0.8.9"
+version = "0.8.11"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3dce281c5e46beae905d4de1870d8b1509a9142b62eedf18b443b011ca8343d0"
+checksum = "a4a650543ca06a924e8b371db273b2756685faae30f8487da1b56505a8f78b0c"
 dependencies = [
  "libc",
  "wasi",
@@ -1621,15 +1858,12 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "27b02d87554356db9e9a873add8782d4ea6e3e58ea071a9adb9a2e8ddb884a8b"
 
 [[package]]
-name = "nix"
-version = "0.26.4"
+name = "norm"
+version = "0.1.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "598beaf3cc6fdd9a5dfb1630c2800c7acd31df7aaf0f565796fba2b53ca1af1b"
+checksum = "ed5725a3379c44dc0adf3437af87cf21c10df473ed858d654b12603dea102508"
 dependencies = [
- "bitflags 1.3.2",
- "cfg-if",
- "libc",
- "memoffset 0.7.1",
+ "memchr",
 ]
 
 [[package]]
@@ -1643,10 +1877,26 @@ dependencies = [
 ]
 
 [[package]]
+name = "nucleo-matcher"
+version = "0.3.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "bf33f538733d1a5a3494b836ba913207f14d9d4a1d3cd67030c5061bdd2cac85"
+dependencies = [
+ "memchr",
+ "unicode-segmentation",
+]
+
+[[package]]
+name = "num-conv"
+version = "0.1.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "51d515d32fb182ee37cda2ccdcb92950d6a3c2893aa280e540671c2cd0f3b1d9"
+
+[[package]]
 name = "num-traits"
-version = "0.2.17"
+version = "0.2.18"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "39e3200413f237f41ab11ad6d161bc7239c84dcb631773ccd7de3dfe4b5c267c"
+checksum = "da0df0e5185db44f69b44f26786fe401b6c293d1907744beaa7fa62b2e5a517a"
 dependencies = [
  "autocfg",
 ]
@@ -1704,18 +1954,18 @@ dependencies = [
 
 [[package]]
 name = "object"
-version = "0.32.1"
+version = "0.32.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9cf5f9dd3933bd50a9e1f149ec995f39ae2c496d31fd772c1fd45ebc27e902b0"
+checksum = "a6a622008b6e321afc04970976f62ee297fdbaa6f95318ca343e3eebb9648441"
 dependencies = [
  "memchr",
 ]
 
 [[package]]
 name = "once_cell"
-version = "1.18.0"
+version = "1.19.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "dd8b5dd2ae5ed71462c540258bedcb51965123ad7e7ccf4b9a8cafaa4a63576d"
+checksum = "3fdb12b2476b595f9358c5161aa467c2438859caa136dec86c26fdd2efe17b92"
 
 [[package]]
 name = "onig"
@@ -1753,9 +2003,9 @@ checksum = "ff011a302c396a5197692431fc1948019154afc178baf7d8e37367442a4601cf"
 
 [[package]]
 name = "openssl-sys"
-version = "0.9.100"
+version = "0.9.101"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ae94056a791d0e1217d18b6cbdccb02c61e3054fc69893607f4067e3bb0b1fd1"
+checksum = "dda2b0f344e78efc2facf7d195d098df0dd72151b26ab98da807afc26c198dff"
 dependencies = [
  "cc",
  "libc",
@@ -1800,9 +2050,9 @@ dependencies = [
 
 [[package]]
 name = "paths"
-version = "0.1.52"
+version = "0.1.53"
 dependencies = [
- "dirs 0.1.52",
+ "dirs 0.1.53",
  "dunce",
  "itertools 0.10.5",
  "serde",
@@ -1811,7 +2061,7 @@ dependencies = [
 
 [[package]]
 name = "pattern"
-version = "0.1.52"
+version = "0.1.53"
 dependencies = [
  "once_cell",
  "regex",
@@ -1819,9 +2069,29 @@ dependencies = [
 
 [[package]]
 name = "percent-encoding"
-version = "2.3.0"
+version = "2.3.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "e3148f5046208a5d56bcfc03053e3ca6334e51da8dfb19b6cdc8b306fae3283e"
+
+[[package]]
+name = "pin-project"
+version = "1.1.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9b2a4787296e9989611394c33f193f676704af1686e70b8f8033ab5ba9a35a94"
+checksum = "b6bf43b791c5b9e34c3d182969b4abb522f9343702850a2e57f460d00d09b4b3"
+dependencies = [
+ "pin-project-internal",
+]
+
+[[package]]
+name = "pin-project-internal"
+version = "1.1.5"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "2f38a4412a78282e09a2cf38d195ea5420d15ba0602cb375210efbc877243965"
+dependencies = [
+ "proc-macro2",
+ "quote",
+ "syn 2.0.52",
+]
 
 [[package]]
 name = "pin-project-lite"
@@ -1837,18 +2107,18 @@ checksum = "8b870d8c151b6f2fb93e84a13146138f05d02ed11c7e7c54f8826aaaf7c9f184"
 
 [[package]]
 name = "pkg-config"
-version = "0.3.27"
+version = "0.3.30"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "26072860ba924cbfa98ea39c8c19b4dd6a4a25423dbdf219c1eca91aa0cf6964"
+checksum = "d231b230927b5e4ad203db57bbcbee2802f6bce620b1e4a9024a07d94e2907ec"
 
 [[package]]
 name = "plist"
-version = "1.5.1"
+version = "1.6.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9a4a0cfc5fb21a09dc6af4bf834cf10d4a32fccd9e2ea468c4b1751a097487aa"
+checksum = "e5699cc8a63d1aa2b1ee8e12b9ad70ac790d65788cd36101fa37f87ea46c4cef"
 dependencies = [
- "base64 0.21.5",
- "indexmap 1.9.3",
+ "base64 0.21.7",
+ "indexmap",
  "line-wrap",
  "quick-xml",
  "serde",
@@ -1897,7 +2167,7 @@ checksum = "5b40af805b3121feab8a3c29f04d8ad262fa8e0561883e7653e024ae4479e6de"
 
 [[package]]
 name = "printer"
-version = "0.1.52"
+version = "0.1.53"
 dependencies = [
  "filter",
  "icon",
@@ -1913,27 +2183,46 @@ dependencies = [
 
 [[package]]
 name = "proc-macro2"
-version = "1.0.69"
+version = "1.0.79"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "134c189feb4956b20f6f547d2cf727d4c0fe06722b20a0eec87ed445a97f92da"
+checksum = "e835ff2298f5721608eb1a980ecaee1aef2c132bf95ecc026a11b7bf3c01c02e"
 dependencies = [
  "unicode-ident",
 ]
 
 [[package]]
+name = "pulldown-cmark"
+version = "0.10.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "5f0530d13d87d1f549b66a3e8d0c688952abe5994e204ed62615baaf25dc029c"
+dependencies = [
+ "bitflags 2.4.2",
+ "getopts",
+ "memchr",
+ "pulldown-cmark-escape",
+ "unicase",
+]
+
+[[package]]
+name = "pulldown-cmark-escape"
+version = "0.10.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "d5d8f9aa0e3cbcfaf8bf00300004ee3b72f74770f9cbac93f6928771f613276b"
+
+[[package]]
 name = "quick-xml"
-version = "0.30.0"
+version = "0.31.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "eff6510e86862b57b210fd8cbe8ed3f0d7d600b9c2863cd4549a2e033c66e956"
+checksum = "1004a344b30a54e2ee58d66a71b32d2db2feb0a31f9a2d302bf0536f15de2a33"
 dependencies = [
  "memchr",
 ]
 
 [[package]]
 name = "quote"
-version = "1.0.33"
+version = "1.0.35"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5267fca4496028628a95160fc423a33e8b2e6af8a5302579e322e4b520293cae"
+checksum = "291ec9ab5efd934aaf503a6466c5d5251535d108ee747472c3977cc5acc868ef"
 dependencies = [
  "proc-macro2",
 ]
@@ -1976,9 +2265,9 @@ checksum = "f2ff9a1f06a88b01621b7ae906ef0211290d1c8a168a15542486a8f61c0833b9"
 
 [[package]]
 name = "rayon"
-version = "1.8.0"
+version = "1.9.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9c27db03db7734835b3f53954b534c91069375ce6ccaa2e065441e07d9b6cdb1"
+checksum = "e4963ed1bc86e4f3ee217022bd855b297cef07fb9eac5dfa1f788b220b49b3bd"
 dependencies = [
  "either",
  "rayon-core",
@@ -1986,9 +2275,9 @@ dependencies = [
 
 [[package]]
 name = "rayon-core"
-version = "1.12.0"
+version = "1.12.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5ce3fb6ad83f861aac485e76e1985cd109d9a3713802152be56c3b1f0e0658ed"
+checksum = "1465873a3dfdaa8ae7cb14b4383657caab0b3e8a0aa9ae8e04b044854c8dfce2"
 dependencies = [
  "crossbeam-deque",
  "crossbeam-utils",
@@ -2020,24 +2309,24 @@ checksum = "20145670ba436b55d91fc92d25e71160fbfbdd57831631c8d7d36377a476f1cb"
 
 [[package]]
 name = "redox_users"
-version = "0.4.3"
+version = "0.4.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b033d837a7cf162d7993aded9304e30a83213c648b6e389db233191f891e5c2b"
+checksum = "a18479200779601e498ada4e8c1e1f50e3ee19deb0259c25825a98b5603b2cb4"
 dependencies = [
  "getrandom",
- "redox_syscall 0.2.16",
+ "libredox",
  "thiserror",
 ]
 
 [[package]]
 name = "regex"
-version = "1.10.2"
+version = "1.10.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "380b951a9c5e80ddfd6136919eef32310721aa4aacd4889a8d39124b026ab343"
+checksum = "b62dbe01f0b06f9d8dc7d49e05a0785f153b00b2c227856282f671e0318c9b15"
 dependencies = [
  "aho-corasick",
  "memchr",
- "regex-automata 0.4.3",
+ "regex-automata 0.4.6",
  "regex-syntax 0.8.2",
 ]
 
@@ -2052,9 +2341,9 @@ dependencies = [
 
 [[package]]
 name = "regex-automata"
-version = "0.4.3"
+version = "0.4.6"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5f804c7828047e88b2d32e2d7fe5a105da8ee3264f01902f796c8e067dc2483f"
+checksum = "86b83b8b9847f9bf95ef68afb0b8e6cdb80f498442f5179a29fad448fcc1eaea"
 dependencies = [
  "aho-corasick",
  "memchr",
@@ -2069,31 +2358,25 @@ checksum = "f162c6dd7b008981e4d40210aca20b4bd0f9b60ca9271061b07f78537722f2e1"
 
 [[package]]
 name = "regex-syntax"
-version = "0.7.5"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "dbb5fb1acd8a1a18b3dd5be62d25485eb770e05afb408a9627d14d451bae12da"
-
-[[package]]
-name = "regex-syntax"
 version = "0.8.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "c08c74e62047bb2de4ff487b251e4a92e24f48745648451635cec7d591162d9f"
 
 [[package]]
 name = "reqwest"
-version = "0.11.22"
+version = "0.11.26"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "046cd98826c46c2ac8ddecae268eb5c2e58628688a5fc7a2643704a73faba95b"
+checksum = "78bf93c4af7a8bb7d879d51cebe797356ff10ae8516ace542b5182d9dcac10b2"
 dependencies = [
- "base64 0.21.5",
+ "base64 0.21.7",
  "bytes",
  "encoding_rs",
  "futures-core",
  "futures-util",
  "h2",
- "http",
- "http-body",
- "hyper",
+ "http 0.2.12",
+ "http-body 0.4.6",
+ "hyper 0.14.28",
  "hyper-rustls",
  "ipnet",
  "js-sys",
@@ -2107,6 +2390,7 @@ dependencies = [
  "serde",
  "serde_json",
  "serde_urlencoded",
+ "sync_wrapper 0.1.2",
  "system-configuration",
  "tokio",
  "tokio-rustls",
@@ -2127,21 +2411,22 @@ checksum = "1ebca96b1c05912d531790498048bab5b7b97a756a7bb9df71fa4ef7ef9814e1"
 
 [[package]]
 name = "ring"
-version = "0.17.5"
+version = "0.17.8"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "fb0205304757e5d899b9c2e448b867ffd03ae7f988002e47cd24954391394d0b"
+checksum = "c17fa4cb658e3583423e915b9f3acc01cceaee1860e33d59ebae66adc3a2dc0d"
 dependencies = [
  "cc",
+ "cfg-if",
  "getrandom",
  "libc",
  "spin",
  "untrusted",
- "windows-sys 0.48.0",
+ "windows-sys 0.52.0",
 ]
 
 [[package]]
 name = "rpc"
-version = "0.1.52"
+version = "0.1.53"
 dependencies = [
  "serde",
  "serde_json",
@@ -2158,22 +2443,22 @@ checksum = "d626bb9dae77e28219937af045c257c28bfd3f69333c512553507f5f9798cb76"
 
 [[package]]
 name = "rustix"
-version = "0.38.21"
+version = "0.38.31"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2b426b0506e5d50a7d8dafcf2e81471400deb602392c7dd110815afb4eaf02a3"
+checksum = "6ea3e1a662af26cd7a3ba09c0297a31af215563ecf42817c98df621387f4e949"
 dependencies = [
- "bitflags 2.4.1",
+ "bitflags 2.4.2",
  "errno",
  "libc",
  "linux-raw-sys",
- "windows-sys 0.48.0",
+ "windows-sys 0.52.0",
 ]
 
 [[package]]
 name = "rustls"
-version = "0.21.8"
+version = "0.21.10"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "446e14c5cda4f3f30fe71863c34ec70f5ac79d6087097ad0bb433e1be5edf04c"
+checksum = "f9d5a6813c0759e4609cd494e8e725babae6a2ca7b62a5536a13daaec6fcb7ba"
 dependencies = [
  "log",
  "ring",
@@ -2183,11 +2468,11 @@ dependencies = [
 
 [[package]]
 name = "rustls-pemfile"
-version = "1.0.3"
+version = "1.0.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2d3987094b1d07b653b7dfdc3f70ce9a1da9c51ac18c1b06b662e4f9a0e9f4b2"
+checksum = "1c74cae0a4cf6ccbbf5f359f08efdf8ee7e1dc532573bf0db71968cb56b1448c"
 dependencies = [
- "base64 0.21.5",
+ "base64 0.21.7",
 ]
 
 [[package]]
@@ -2201,10 +2486,16 @@ dependencies = [
 ]
 
 [[package]]
+name = "rustversion"
+version = "1.0.14"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "7ffc183a10b4478d04cbbbfc96d0873219d962dd5accaff2ffbd4ceb7df837f4"
+
+[[package]]
 name = "ryu"
-version = "1.0.15"
+version = "1.0.17"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1ad4cc8da4ef723ed60bced201181d83791ad433213d8c24efffda1eec85d741"
+checksum = "e86697c916019a8588c99b5fac3cead74ec0b4b819707a682fd4d23fa0ce1ba1"
 
 [[package]]
 name = "safemem"
@@ -2239,38 +2530,38 @@ dependencies = [
 
 [[package]]
 name = "semver"
-version = "1.0.20"
+version = "1.0.22"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "836fa6a3e1e547f9a2c4040802ec865b5d85f4014efe00555d7090a3dcaa1090"
+checksum = "92d43fe69e652f3df9bdc2b85b2854a0825b86e4fb76bc44d945137d053639ca"
 dependencies = [
  "serde",
 ]
 
 [[package]]
 name = "serde"
-version = "1.0.190"
+version = "1.0.197"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "91d3c334ca1ee894a2c6f6ad698fe8c435b76d504b13d436f0685d648d6d96f7"
+checksum = "3fb1c873e1b9b056a4dc4c0c198b24c3ffa059243875552b2bd0933b1aee4ce2"
 dependencies = [
  "serde_derive",
 ]
 
 [[package]]
 name = "serde_derive"
-version = "1.0.190"
+version = "1.0.197"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "67c5609f394e5c2bd7fc51efda478004ea80ef42fee983d5c67a65e34f32c0e3"
+checksum = "7eb0b34b42edc17f6b7cac84a52a1c5f0e1bb2227e997ca9011ea3dd34e8610b"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.38",
+ "syn 2.0.52",
 ]
 
 [[package]]
 name = "serde_json"
-version = "1.0.108"
+version = "1.0.114"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3d1c7e3eac408d115102c4c24ad393e0821bb3a5df4d506a80f85f7a742a526b"
+checksum = "c5f09b1bd632ef549eaa9f60a1f8de742bdbc698e6cee2095fc84dde5f549ae0"
 dependencies = [
  "itoa",
  "ryu",
@@ -2278,14 +2569,24 @@ dependencies = [
 ]
 
 [[package]]
+name = "serde_path_to_error"
+version = "0.1.16"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "af99884400da37c88f5e9146b7f1fd0fbcae8f6eec4e9da38b67d05486f814a6"
+dependencies = [
+ "itoa",
+ "serde",
+]
+
+[[package]]
 name = "serde_repr"
-version = "0.1.17"
+version = "0.1.18"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3081f5ffbb02284dda55132aa26daecedd7372a42417bbbab6f14ab7d6bb9145"
+checksum = "0b2e6b945e9d3df726b65d6ee24060aff8e3533d431f677a9695db04eff9dfdb"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.38",
+ "syn 2.0.52",
 ]
 
 [[package]]
@@ -2301,6 +2602,17 @@ dependencies = [
 ]
 
 [[package]]
+name = "sha1"
+version = "0.10.6"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "e3bf829a2d51ab4a5ddf1352d8470c140cadc8301b2ae1789db023f01cedd6ba"
+dependencies = [
+ "cfg-if",
+ "cpufeatures",
+ "digest",
+]
+
+[[package]]
 name = "sharded-slab"
 version = "0.1.7"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -2344,28 +2656,18 @@ dependencies = [
 
 [[package]]
 name = "smallvec"
-version = "1.11.1"
+version = "1.13.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "942b4a808e05215192e39f4ab80813e599068285906cc91aa64f923db842bd5a"
+checksum = "e6ecd384b10a64542d77071bd64bd7b231f4ed5940fba55e98c3de13824cf3d7"
 
 [[package]]
 name = "socket2"
-version = "0.4.10"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9f7916fc008ca5542385b89a3d3ce689953c143e9304a9bf8beec1de48994c0d"
-dependencies = [
- "libc",
- "winapi",
-]
-
-[[package]]
-name = "socket2"
-version = "0.5.5"
+version = "0.5.6"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7b5fac59a5cb5dd637972e5fca70daf0523c9067fcdc4842f053dae04a18f8e9"
+checksum = "05ffd9c0a93b7543e062e759284fcf5f5e3b098501104bfbdde4d404db792871"
 dependencies = [
  "libc",
- "windows-sys 0.48.0",
+ "windows-sys 0.52.0",
 ]
 
 [[package]]
@@ -2381,8 +2683,14 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "73473c0e59e6d5812c5dfe2a064a6444949f089e20eec9a2e5506596494e4623"
 
 [[package]]
+name = "strsim"
+version = "0.11.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "5ee073c9e4cd00e28217186dbe12796d692868f432bf2e97ee73bed0c56dfa01"
+
+[[package]]
 name = "sublime_syntax"
-version = "0.1.52"
+version = "0.1.53"
 dependencies = [
  "colors-transform",
  "rgb2ansi256",
@@ -2413,9 +2721,9 @@ dependencies = [
 
 [[package]]
 name = "syn"
-version = "2.0.38"
+version = "2.0.52"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e96b79aaa137db8f61e26363a0c9b47d8b4ec75da28b7d1d614c2303e232408b"
+checksum = "b699d15b36d1f02c3e7c69f8ffef53de37aefae075d8488d4ba1a7788d574a07"
 dependencies = [
  "proc-macro2",
  "quote",
@@ -2423,10 +2731,22 @@ dependencies = [
 ]
 
 [[package]]
+name = "sync_wrapper"
+version = "0.1.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "2047c6ded9c721764247e62cd3b03c09ffc529b2ba5b10ec482ae507a4a70160"
+
+[[package]]
+name = "sync_wrapper"
+version = "1.0.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "384595c11a4e2969895cad5a8c4029115f5ab956a9e5ef4de79d11a426e5f20c"
+
+[[package]]
 name = "syntect"
-version = "5.1.0"
+version = "5.2.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e02b4b303bf8d08bfeb0445cba5068a3d306b6baece1d5582171a9bf49188f91"
+checksum = "874dcfa363995604333cf947ae9f751ca3af4522c60886774c4963943b4746b1"
 dependencies = [
  "bincode",
  "bitflags 1.3.2",
@@ -2435,8 +2755,9 @@ dependencies = [
  "once_cell",
  "onig",
  "plist",
- "regex-syntax 0.7.5",
+ "regex-syntax 0.8.2",
  "serde",
+ "serde_derive",
  "serde_json",
  "thiserror",
  "walkdir",
@@ -2478,42 +2799,63 @@ dependencies = [
 
 [[package]]
 name = "thiserror"
-version = "1.0.50"
+version = "1.0.58"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f9a7210f5c9a7156bb50aa36aed4c95afb51df0df00713949448cf9e97d382d2"
+checksum = "03468839009160513471e86a034bb2c5c0e4baae3b43f79ffc55c4a5427b3297"
 dependencies = [
  "thiserror-impl",
 ]
 
 [[package]]
 name = "thiserror-impl"
-version = "1.0.50"
+version = "1.0.58"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "266b2e40bc00e5a6c09c3584011e08b06f123c00362c92b975ba9843aaaa14b8"
+checksum = "c61f3ba182994efc43764a46c018c347bc492c79f024e705f46567b418f6d4f7"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.38",
+ "syn 2.0.52",
 ]
 
 [[package]]
 name = "thread_local"
-version = "1.1.7"
+version = "1.1.8"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3fdd6f064ccff2d6567adcb3873ca630700f00b5ad3f060c25b5dcfd9a4ce152"
+checksum = "8b9ef9bad013ada3808854ceac7b46812a6465ba368859a37e2100283d2d719c"
 dependencies = [
  "cfg-if",
  "once_cell",
 ]
 
 [[package]]
+name = "tikv-jemalloc-sys"
+version = "0.5.4+5.3.0-patched"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "9402443cb8fd499b6f327e40565234ff34dbda27460c5b47db0db77443dd85d1"
+dependencies = [
+ "cc",
+ "libc",
+]
+
+[[package]]
+name = "tikv-jemallocator"
+version = "0.5.4"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "965fe0c26be5c56c94e38ba547249074803efd52adfb66de62107d95aab3eaca"
+dependencies = [
+ "libc",
+ "tikv-jemalloc-sys",
+]
+
+[[package]]
 name = "time"
-version = "0.3.30"
+version = "0.3.34"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c4a34ab300f2dee6e562c10a046fc05e358b29f9bf92277f30c3c8d82275f6f5"
+checksum = "c8248b6521bb14bc45b4067159b9b6ad792e2d6d754d6c41fb50e29fefe38749"
 dependencies = [
  "deranged",
  "itoa",
+ "num-conv",
  "powerfmt",
  "serde",
  "time-core",
@@ -2528,10 +2870,11 @@ checksum = "ef927ca75afb808a4d64dd374f00a2adf8d0fcff8e7b184af886c3c87ec4a3f3"
 
 [[package]]
 name = "time-macros"
-version = "0.2.15"
+version = "0.2.17"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4ad70d68dba9e1f8aceda7aa6711965dfec1cac869f311a51bd08b3a2ccbce20"
+checksum = "7ba3a3ef41e6672a2f0f001392bb5dcd3ff0a9992d618ca761a11c3121547774"
 dependencies = [
+ "num-conv",
  "time-core",
 ]
 
@@ -2571,9 +2914,10 @@ dependencies = [
  "libc",
  "mio",
  "num_cpus",
+ "parking_lot",
  "pin-project-lite",
  "signal-hook-registry",
- "socket2 0.5.5",
+ "socket2",
  "tokio-macros",
  "windows-sys 0.48.0",
 ]
@@ -2586,7 +2930,7 @@ checksum = "5b8a1e28f2deaa14e508979454cb3a223b10b938b45af148bc0986de36f1923b"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.38",
+ "syn 2.0.52",
 ]
 
 [[package]]
@@ -2600,6 +2944,18 @@ dependencies = [
 ]
 
 [[package]]
+name = "tokio-tungstenite"
+version = "0.21.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "c83b561d025642014097b66e6c1bb422783339e0909e4429cde4749d1990bc38"
+dependencies = [
+ "futures-util",
+ "log",
+ "tokio",
+ "tungstenite",
+]
+
+[[package]]
 name = "tokio-util"
 version = "0.7.10"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -2634,12 +2990,34 @@ version = "0.21.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "6a8534fd7f78b5405e860340ad6575217ce99f38d4d5c8f2442cb5ecb50090e1"
 dependencies = [
- "indexmap 2.1.0",
+ "indexmap",
  "toml_datetime",
  "winnow",
 ]
 
 [[package]]
+name = "tower"
+version = "0.4.13"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "b8fa9be0de6cf49e536ce1851f987bd21a43b771b09473c3549a6c853db37c1c"
+dependencies = [
+ "futures-core",
+ "futures-util",
+ "pin-project",
+ "pin-project-lite",
+ "tokio",
+ "tower-layer",
+ "tower-service",
+ "tracing",
+]
+
+[[package]]
+name = "tower-layer"
+version = "0.3.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "c20c8dbed6283a09604c3e69b4b7eeb54e298b8a600d4d5ecb5ad39de609f1d0"
+
+[[package]]
 name = "tower-service"
 version = "0.3.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -2651,6 +3029,7 @@ version = "0.1.40"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "c3523ab5a71916ccf420eebdf5521fcef02141234bbc0b8a49f2fdc4544364ef"
 dependencies = [
+ "log",
  "pin-project-lite",
  "tracing-attributes",
  "tracing-core",
@@ -2658,11 +3037,12 @@ dependencies = [
 
 [[package]]
 name = "tracing-appender"
-version = "0.2.2"
+version = "0.2.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "09d48f71a791638519505cefafe162606f706c25592e4bde4d97600c0195312e"
+checksum = "3566e8ce28cc0a3fe42519fc80e6b4c943cc4c8cef275620eb8dac2d3d4e06cf"
 dependencies = [
  "crossbeam-channel",
+ "thiserror",
  "time",
  "tracing-subscriber",
 ]
@@ -2675,7 +3055,7 @@ checksum = "34704c8d6ebcbc939824180af020566b01a7c01f80641264eba0999f6c2b6be7"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.38",
+ "syn 2.0.52",
 ]
 
 [[package]]
@@ -2690,9 +3070,9 @@ dependencies = [
 
 [[package]]
 name = "tracing-log"
-version = "0.1.4"
+version = "0.2.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f751112709b4e791d8ce53e32c4ed2d353565a795ce84da2285393f41557bdf2"
+checksum = "ee855f1f400bd0e5c02d150ae5de3840039a3f54b025156404e34c23c03f47c3"
 dependencies = [
  "log",
  "once_cell",
@@ -2701,9 +3081,9 @@ dependencies = [
 
 [[package]]
 name = "tracing-subscriber"
-version = "0.3.17"
+version = "0.3.18"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "30a651bc37f915e81f087d86e62a18eec5f79550c7faff886f7090b4ea757c77"
+checksum = "ad0f048c97dbd9faa9b7df56362b8ebcaa52adb06b498c050d2f4e32f90a7a8b"
 dependencies = [
  "matchers",
  "nu-ansi-term",
@@ -2729,9 +3109,9 @@ dependencies = [
 
 [[package]]
 name = "tree-sitter-bash"
-version = "0.20.3"
+version = "0.20.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "096f57b3b44c04bfc7b21a4da44bfa16adf1f88aba18993b8478a091076d0968"
+checksum = "57da2032c37eb2ce29fd18df7d3b94355fec8d6d854d8f80934955df542b5906"
 dependencies = [
  "cc",
  "tree-sitter",
@@ -2739,9 +3119,9 @@ dependencies = [
 
 [[package]]
 name = "tree-sitter-c"
-version = "0.20.6"
+version = "0.20.8"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "30b03bdf218020057abee831581a74bff8c298323d6c6cd1a70556430ded9f4b"
+checksum = "4bbd5f3d8658c08581f8f2adac6c391c2e9fa00fe9246bf6c5f52213b9cc6b72"
 dependencies = [
  "cc",
  "tree-sitter",
@@ -2749,9 +3129,9 @@ dependencies = [
 
 [[package]]
 name = "tree-sitter-cpp"
-version = "0.20.3"
+version = "0.20.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "23b4b625f46a7370544b9cf0545532c26712ae49bfc02eb09825db358b9f79e1"
+checksum = "46b04a5ada71059afb9895966a6cc1094acc8d2ea1971006db26573e7dfebb74"
 dependencies = [
  "cc",
  "tree-sitter",
@@ -2789,9 +3169,9 @@ dependencies = [
 
 [[package]]
 name = "tree-sitter-javascript"
-version = "0.20.1"
+version = "0.20.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "edbc663376bdd294bd1f0a6daf859aedb9aa5bdb72217d7ad8ba2d5314102cf7"
+checksum = "d015c02ea98b62c806f7329ff71c383286dfc3a7a7da0cc484f6e42922f73c2c"
 dependencies = [
  "cc",
  "tree-sitter",
@@ -2799,9 +3179,9 @@ dependencies = [
 
 [[package]]
 name = "tree-sitter-json"
-version = "0.20.1"
+version = "0.20.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "50d82d2e33ee675dc71289e2ace4f8f9cf96d36d81400e9dae5ea61edaf5dea6"
+checksum = "5a9a38a9c679b55cc8d17350381ec08d69fa1a17a53fcf197f344516e485ed4d"
 dependencies = [
  "cc",
  "tree-sitter",
@@ -2870,7 +3250,7 @@ dependencies = [
 
 [[package]]
 name = "tree_sitter"
-version = "0.1.52"
+version = "0.1.53"
 dependencies = [
  "cc",
  "criterion",
@@ -2898,23 +3278,57 @@ dependencies = [
 
 [[package]]
 name = "try-lock"
-version = "0.2.4"
+version = "0.2.5"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "e421abadd41a4225275504ea4d6566923418b7f05506fbc9c0fe86ba7396114b"
+
+[[package]]
+name = "tungstenite"
+version = "0.21.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "9ef1a641ea34f399a848dea702823bbecfb4c486f911735368f1f137cb8257e1"
+dependencies = [
+ "byteorder",
+ "bytes",
+ "data-encoding",
+ "http 1.1.0",
+ "httparse",
+ "log",
+ "rand",
+ "sha1",
+ "thiserror",
+ "url",
+ "utf-8",
+]
+
+[[package]]
+name = "typenum"
+version = "1.17.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3528ecfd12c466c6f163363caf2d02a71161dd5e1cc6ae7b34207ea2d42d81ed"
+checksum = "42ff0bf0c66b8238c6f3b578df37d0b7848e55df8577b3f74f92a69acceeb825"
 
 [[package]]
 name = "types"
-version = "0.1.52"
+version = "0.1.53"
 dependencies = [
  "icon",
  "pattern",
 ]
 
 [[package]]
+name = "unicase"
+version = "2.7.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "f7d2d4dafb69621809a81864c9c1b864479e1235c0dd4e199924b9742439ed89"
+dependencies = [
+ "version_check",
+]
+
+[[package]]
 name = "unicode-bidi"
-version = "0.3.13"
+version = "0.3.15"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "92888ba5573ff080736b3648696b70cafad7d250551175acbaa4e0385b3e1460"
+checksum = "08f95100a766bf4f8f28f90d77e0a5461bbdb219042e7679bebe79004fed8d75"
 
 [[package]]
 name = "unicode-ident"
@@ -2924,14 +3338,20 @@ checksum = "3354b9ac3fae1ff6755cb6db53683adb661634f67557942dea4facebec0fee4b"
 
 [[package]]
 name = "unicode-normalization"
-version = "0.1.22"
+version = "0.1.23"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5c5713f0fc4b5db668a2ac63cdb7bb4469d8c9fed047b1d0292cc7b0ce2ba921"
+checksum = "a56d1686db2308d901306f92a263857ef59ea39678a5458e7cb17f01415101f5"
 dependencies = [
  "tinyvec",
 ]
 
 [[package]]
+name = "unicode-segmentation"
+version = "1.11.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "d4c87d22b6e3f4a18d4d40ef354e97c90fcb14dd91d7dc0aa9d8a1172ebf7202"
+
+[[package]]
 name = "unicode-width"
 version = "0.1.11"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -2945,7 +3365,7 @@ checksum = "8ecb6da28b8a351d773b68d5825ac39017e680750f980f3a1a85cd8dd28a47c1"
 
 [[package]]
 name = "upgrade"
-version = "0.1.52"
+version = "0.1.53"
 dependencies = [
  "indicatif",
  "reqwest",
@@ -2955,9 +3375,9 @@ dependencies = [
 
 [[package]]
 name = "url"
-version = "2.4.1"
+version = "2.5.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "143b538f18257fac9cad154828a57c6bf5157e1aa604d4816b5995bf6de87ae5"
+checksum = "31e6302e3bb753d46e83516cae55ae196fc0c309407cf11ab35cc51a4c2a4633"
 dependencies = [
  "form_urlencoded",
  "idna",
@@ -2966,6 +3386,12 @@ dependencies = [
 ]
 
 [[package]]
+name = "utf-8"
+version = "0.7.6"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "09cc8ee72d2a9becf2f2febe0205bbed8fc6615b7cb429ad062dc7b7ddd036a9"
+
+[[package]]
 name = "utf8parse"
 version = "0.2.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -2973,7 +3399,7 @@ checksum = "711b9620af191e0cdc7468a8d14e709c3dcdb115b36f838e601583af800a370a"
 
 [[package]]
 name = "utils"
-version = "0.1.52"
+version = "0.1.53"
 dependencies = [
  "bytecount",
  "memchr",
@@ -2993,10 +3419,16 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "accd4ea62f7bb7a82fe23066fb0957d48ef677f6eeb8215f372f52e48bb32426"
 
 [[package]]
+name = "version_check"
+version = "0.9.4"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "49874b5167b65d7193b8aba1567f5c7d93d001cafc34600cee003eda787e483f"
+
+[[package]]
 name = "walkdir"
-version = "2.4.0"
+version = "2.5.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d71d857dc86794ca4c280d616f7da00d2dbfd8cd788846559a6813e6aa4b54ee"
+checksum = "29790946404f91d9c5d06f9874efddea1dc06c5efe94541a7d6863108e3a5e4b"
 dependencies = [
  "same-file",
  "winapi-util",
@@ -3019,9 +3451,9 @@ checksum = "9c8d87e72b64a3b4db28d11ce29237c246188f4f51057d65a7eab63b7987e423"
 
 [[package]]
 name = "wasm-bindgen"
-version = "0.2.88"
+version = "0.2.92"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7daec296f25a1bae309c0cd5c29c4b260e510e6d813c286b19eaadf409d40fce"
+checksum = "4be2531df63900aeb2bca0daaaddec08491ee64ceecbee5076636a3b026795a8"
 dependencies = [
  "cfg-if",
  "wasm-bindgen-macro",
@@ -3029,24 +3461,24 @@ dependencies = [
 
 [[package]]
 name = "wasm-bindgen-backend"
-version = "0.2.88"
+version = "0.2.92"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e397f4664c0e4e428e8313a469aaa58310d302159845980fd23b0f22a847f217"
+checksum = "614d787b966d3989fa7bb98a654e369c762374fd3213d212cfc0251257e747da"
 dependencies = [
  "bumpalo",
  "log",
  "once_cell",
  "proc-macro2",
  "quote",
- "syn 2.0.38",
+ "syn 2.0.52",
  "wasm-bindgen-shared",
 ]
 
 [[package]]
 name = "wasm-bindgen-futures"
-version = "0.4.38"
+version = "0.4.42"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9afec9963e3d0994cac82455b2b3502b81a7f40f9a0d32181f7528d9f4b43e02"
+checksum = "76bc14366121efc8dbb487ab05bcc9d346b3b5ec0eaa76e46594cabbe51762c0"
 dependencies = [
  "cfg-if",
  "js-sys",
@@ -3056,9 +3488,9 @@ dependencies = [
 
 [[package]]
 name = "wasm-bindgen-macro"
-version = "0.2.88"
+version = "0.2.92"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5961017b3b08ad5f3fe39f1e79877f8ee7c23c5e5fd5eb80de95abc41f1f16b2"
+checksum = "a1f8823de937b71b9460c0c34e25f3da88250760bec0ebac694b49997550d726"
 dependencies = [
  "quote",
  "wasm-bindgen-macro-support",
@@ -3066,28 +3498,28 @@ dependencies = [
 
 [[package]]
 name = "wasm-bindgen-macro-support"
-version = "0.2.88"
+version = "0.2.92"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c5353b8dab669f5e10f5bd76df26a9360c748f054f862ff5f3f8aae0c7fb3907"
+checksum = "e94f17b526d0a461a191c78ea52bbce64071ed5c04c9ffe424dcb38f74171bb7"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.38",
+ "syn 2.0.52",
  "wasm-bindgen-backend",
  "wasm-bindgen-shared",
 ]
 
 [[package]]
 name = "wasm-bindgen-shared"
-version = "0.2.88"
+version = "0.2.92"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0d046c5d029ba91a1ed14da14dca44b68bf2f124cfbaf741c54151fdb3e0750b"
+checksum = "af190c94f2773fdb3729c55b007a722abb5384da03bc0986df4c289bf5567e96"
 
 [[package]]
 name = "web-sys"
-version = "0.3.65"
+version = "0.3.69"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5db499c5f66323272151db0e666cd34f78617522fb0c1604d31a27c50c206a85"
+checksum = "77afa9a11836342370f4817622a2f0f418b134426d91a82dfb48f532d2ec13ef"
 dependencies = [
  "js-sys",
  "wasm-bindgen",
@@ -3095,9 +3527,9 @@ dependencies = [
 
 [[package]]
 name = "webbrowser"
-version = "0.8.12"
+version = "0.8.13"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "82b2391658b02c27719fc5a0a73d6e696285138e8b12fba9d4baa70451023c71"
+checksum = "d1b04c569c83a9bb971dd47ec6fd48753315f4bf989b9b04a2e7ca4d7f0dc950"
 dependencies = [
  "core-foundation",
  "home",
@@ -3112,9 +3544,9 @@ dependencies = [
 
 [[package]]
 name = "webpki-roots"
-version = "0.25.2"
+version = "0.25.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "14247bb57be4f377dfb94c72830b8ce8fc6beac03cf4bf7b9732eadd414123fc"
+checksum = "5f20c57d8d7db6d3b86154206ae5d8fba62dd39573114de97c2cb0578251f8e1"
 
 [[package]]
 name = "which"
@@ -3155,15 +3587,6 @@ dependencies = [
 ]
 
 [[package]]
-name = "winapi-wsapoll"
-version = "0.1.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "44c17110f57155602a80dca10be03852116403c9ff3cd25b079d666f2aa3df6e"
-dependencies = [
- "winapi",
-]
-
-[[package]]
 name = "winapi-x86_64-pc-windows-gnu"
 version = "0.4.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -3171,11 +3594,11 @@ checksum = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f"
 
 [[package]]
 name = "windows-core"
-version = "0.51.1"
+version = "0.52.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f1f8cf84f35d2db49a46868f947758c7a1138116f7fac3bc844f43ade1292e64"
+checksum = "33ab640c8d7e35bf8ba19b884ba838ceb4fba93a4e8c65a9059d08afcfc683d9"
 dependencies = [
- "windows-targets 0.48.5",
+ "windows-targets 0.52.4",
 ]
 
 [[package]]
@@ -3202,7 +3625,7 @@ version = "0.52.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "282be5f36a8ce781fad8c8ae18fa3f9beff57ec1b52cb3de0789201425d9a33d"
 dependencies = [
- "windows-targets 0.52.0",
+ "windows-targets 0.52.4",
 ]
 
 [[package]]
@@ -3237,17 +3660,17 @@ dependencies = [
 
 [[package]]
 name = "windows-targets"
-version = "0.52.0"
+version = "0.52.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8a18201040b24831fbb9e4eb208f8892e1f50a37feb53cc7ff887feb8f50e7cd"
+checksum = "7dd37b7e5ab9018759f893a1952c9420d060016fc19a472b4bb20d1bdd694d1b"
 dependencies = [
- "windows_aarch64_gnullvm 0.52.0",
- "windows_aarch64_msvc 0.52.0",
- "windows_i686_gnu 0.52.0",
- "windows_i686_msvc 0.52.0",
- "windows_x86_64_gnu 0.52.0",
- "windows_x86_64_gnullvm 0.52.0",
- "windows_x86_64_msvc 0.52.0",
+ "windows_aarch64_gnullvm 0.52.4",
+ "windows_aarch64_msvc 0.52.4",
+ "windows_i686_gnu 0.52.4",
+ "windows_i686_msvc 0.52.4",
+ "windows_x86_64_gnu 0.52.4",
+ "windows_x86_64_gnullvm 0.52.4",
+ "windows_x86_64_msvc 0.52.4",
 ]
 
 [[package]]
@@ -3264,9 +3687,9 @@ checksum = "2b38e32f0abccf9987a4e3079dfb67dcd799fb61361e53e2882c3cbaf0d905d8"
 
 [[package]]
 name = "windows_aarch64_gnullvm"
-version = "0.52.0"
+version = "0.52.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "cb7764e35d4db8a7921e09562a0304bf2f93e0a51bfccee0bd0bb0b666b015ea"
+checksum = "bcf46cf4c365c6f2d1cc93ce535f2c8b244591df96ceee75d8e83deb70a9cac9"
 
 [[package]]
 name = "windows_aarch64_msvc"
@@ -3282,9 +3705,9 @@ checksum = "dc35310971f3b2dbbf3f0690a219f40e2d9afcf64f9ab7cc1be722937c26b4bc"
 
 [[package]]
 name = "windows_aarch64_msvc"
-version = "0.52.0"
+version = "0.52.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "bbaa0368d4f1d2aaefc55b6fcfee13f41544ddf36801e793edbbfd7d7df075ef"
+checksum = "da9f259dd3bcf6990b55bffd094c4f7235817ba4ceebde8e6d11cd0c5633b675"
 
 [[package]]
 name = "windows_i686_gnu"
@@ -3300,9 +3723,9 @@ checksum = "a75915e7def60c94dcef72200b9a8e58e5091744960da64ec734a6c6e9b3743e"
 
 [[package]]
 name = "windows_i686_gnu"
-version = "0.52.0"
+version = "0.52.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a28637cb1fa3560a16915793afb20081aba2c92ee8af57b4d5f28e4b3e7df313"
+checksum = "b474d8268f99e0995f25b9f095bc7434632601028cf86590aea5c8a5cb7801d3"
 
 [[package]]
 name = "windows_i686_msvc"
@@ -3318,9 +3741,9 @@ checksum = "8f55c233f70c4b27f66c523580f78f1004e8b5a8b659e05a4eb49d4166cca406"
 
 [[package]]
 name = "windows_i686_msvc"
-version = "0.52.0"
+version = "0.52.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ffe5e8e31046ce6230cc7215707b816e339ff4d4d67c65dffa206fd0f7aa7b9a"
+checksum = "1515e9a29e5bed743cb4415a9ecf5dfca648ce85ee42e15873c3cd8610ff8e02"
 
 [[package]]
 name = "windows_x86_64_gnu"
@@ -3336,9 +3759,9 @@ checksum = "53d40abd2583d23e4718fddf1ebec84dbff8381c07cae67ff7768bbf19c6718e"
 
 [[package]]
 name = "windows_x86_64_gnu"
-version = "0.52.0"
+version = "0.52.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3d6fa32db2bc4a2f5abeacf2b69f7992cd09dca97498da74a151a3132c26befd"
+checksum = "5eee091590e89cc02ad514ffe3ead9eb6b660aedca2183455434b93546371a03"
 
 [[package]]
 name = "windows_x86_64_gnullvm"
@@ -3354,9 +3777,9 @@ checksum = "0b7b52767868a23d5bab768e390dc5f5c55825b6d30b86c844ff2dc7414044cc"
 
 [[package]]
 name = "windows_x86_64_gnullvm"
-version = "0.52.0"
+version = "0.52.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1a657e1e9d3f514745a572a6846d3c7aa7dbe1658c056ed9c3344c4109a6949e"
+checksum = "77ca79f2451b49fa9e2af39f0747fe999fcda4f5e241b2898624dca97a1f2177"
 
 [[package]]
 name = "windows_x86_64_msvc"
@@ -3372,15 +3795,15 @@ checksum = "ed94fce61571a4006852b7389a063ab983c02eb1bb37b47f8272ce92d06d9538"
 
 [[package]]
 name = "windows_x86_64_msvc"
-version = "0.52.0"
+version = "0.52.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "dff9641d1cd4be8d1a070daf9e3773c5f67e78b4d9d42263020c057706765c04"
+checksum = "32b752e52a2da0ddfbdbcc6fceadfeede4c939ed16d13e648833a61dfb611ed8"
 
 [[package]]
 name = "winnow"
-version = "0.5.18"
+version = "0.5.40"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "176b6138793677221d420fd2f0aeeced263f197688b36484660da767bca2fa32"
+checksum = "f593a95398737aeed53e489c785df13f3618e41dbcd6718c6addbf1395aa6876"
 dependencies = [
  "memchr",
 ]
@@ -3403,34 +3826,30 @@ checksum = "23f6174b2566cc4a74f95e1367ec343e7fa80c93cc8087f5c4a3d6a1088b2118"
 
 [[package]]
 name = "x11-clipboard"
-version = "0.8.1"
+version = "0.9.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b41aca1115b1f195f21c541c5efb423470848d48143127d0f07f8b90c27440df"
+checksum = "b98785a09322d7446e28a13203d2cae1059a0dd3dfb32cb06d0a225f023d8286"
 dependencies = [
+ "libc",
  "x11rb",
 ]
 
 [[package]]
 name = "x11rb"
-version = "0.12.0"
+version = "0.13.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b1641b26d4dec61337c35a1b1aaf9e3cba8f46f0b43636c609ab0291a648040a"
+checksum = "f8f25ead8c7e4cba123243a6367da5d3990e0d3affa708ea19dce96356bd9f1a"
 dependencies = [
  "gethostname",
- "nix",
- "winapi",
- "winapi-wsapoll",
+ "rustix",
  "x11rb-protocol",
 ]
 
 [[package]]
 name = "x11rb-protocol"
-version = "0.12.0"
+version = "0.13.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "82d6c3f9a0fb6701fab8f6cea9b0c0bd5d6876f1f89f7fada07e558077c344bc"
-dependencies = [
- "nix",
-]
+checksum = "e63e71c4b8bd9ffec2c963173a4dc4cbde9ee96961d4fcb4429db9929b606c34"
 
 [[package]]
 name = "xshell"
@@ -3449,7 +3868,7 @@ checksum = "7e2c411759b501fb9501aac2b1b2d287a6e93e5bdcf13c25306b23e1b716dd0e"
 
 [[package]]
 name = "xtask"
-version = "0.1.52"
+version = "0.1.53"
 dependencies = [
  "anyhow",
  "chrono",
diff --git a/pkgs/applications/editors/vim/plugins/vim-clap/default.nix b/pkgs/applications/editors/vim/plugins/vim-clap/default.nix
index dade53492fd2..ba2388643701 100644
--- a/pkgs/applications/editors/vim/plugins/vim-clap/default.nix
+++ b/pkgs/applications/editors/vim/plugins/vim-clap/default.nix
@@ -11,13 +11,13 @@
 }:
 
 let
-  version = "0.52";
+  version = "0.53";
 
   src = fetchFromGitHub {
     owner = "liuchengxu";
     repo = "vim-clap";
     rev = "v${version}";
-    hash = "sha256-byG4DHa0rTzvlLW+d3eF8xCX8uft4b7HYJDqbVmTdNI=";
+    hash = "sha256-0D9HMFh0G9Dq78v/Aau7VXN9jBad6ZevqTCjx7FT9Yw=";
   };
 
   meta = with lib; {
diff --git a/pkgs/applications/editors/vim/plugins/vim-plugin-names b/pkgs/applications/editors/vim/plugins/vim-plugin-names
index faf446c70f41..68817a49aa6a 100644
--- a/pkgs/applications/editors/vim/plugins/vim-plugin-names
+++ b/pkgs/applications/editors/vim/plugins/vim-plugin-names
@@ -4,6 +4,7 @@ https://github.com/vim-scripts/BufOnly.vim/,,
 https://github.com/jackMort/ChatGPT.nvim/,HEAD,
 https://github.com/chrisbra/CheckAttach/,,
 https://github.com/vim-scripts/Colour-Sampler-Pack/,,
+https://github.com/CopilotC-Nvim/CopilotChat.nvim/,HEAD,
 https://github.com/whonore/Coqtail/,,
 https://github.com/vim-scripts/DoxygenToolkit.vim/,,
 https://github.com/numToStr/FTerm.nvim/,,
@@ -73,7 +74,7 @@ https://github.com/ray-x/aurora/,,
 https://github.com/hotwatermorning/auto-git-diff/,,
 https://github.com/asiryk/auto-hlsearch.nvim/,HEAD,
 https://github.com/jiangmiao/auto-pairs/,,
-https://github.com/pocco81/auto-save.nvim/,HEAD,
+https://github.com/okuuva/auto-save.nvim/,HEAD,
 https://github.com/rmagatti/auto-session/,,
 https://github.com/m4xshen/autoclose.nvim/,HEAD,
 https://github.com/gaoDean/autolist.nvim/,,
@@ -859,7 +860,6 @@ https://github.com/folke/styler.nvim/,,
 https://github.com/teto/stylish.nvim/,HEAD,
 https://github.com/gbprod/substitute.nvim/,HEAD,
 https://github.com/kvrohit/substrata.nvim/,HEAD,
-https://github.com/lambdalisue/suda.vim/,,
 https://github.com/ervandew/supertab/,,
 https://github.com/ur4ltz/surround.nvim/,,
 https://github.com/peterbjorgensen/sved/,,
@@ -938,7 +938,7 @@ https://github.com/xiyaowong/transparent.nvim/,HEAD,
 https://github.com/Wansmer/treesj/,main,
 https://github.com/tremor-rs/tremor-vim/,,
 https://github.com/cappyzawa/trim.nvim/,,
-https://github.com/simonclean/triptych.nvim/,HEAD,
+https://github.com/simonmclean/triptych.nvim/,HEAD,
 https://github.com/folke/trouble.nvim/,,
 https://github.com/Pocco81/true-zen.nvim/,,
 https://github.com/tesaguri/trust.vim/,HEAD,
@@ -1295,6 +1295,7 @@ https://github.com/tpope/vim-sexp-mappings-for-regular-people/,,
 https://github.com/itspriddle/vim-shellcheck/,,
 https://github.com/kshenoy/vim-signature/,,
 https://github.com/mhinz/vim-signify/,,
+https://github.com/sile-typesetter/vim-sile/,HEAD,
 https://github.com/ivalkeen/vim-simpledb/,,
 https://github.com/junegunn/vim-slash/,,
 https://github.com/tpope/vim-sleuth/,,
@@ -1321,6 +1322,7 @@ https://github.com/nbouscal/vim-stylish-haskell/,,
 https://github.com/alx741/vim-stylishask/,,
 https://github.com/arzg/vim-substrata/,HEAD,
 https://github.com/svermeulen/vim-subversive/,,
+https://github.com/lambdalisue/vim-suda/,,
 https://github.com/tpope/vim-surround/,,
 https://github.com/evanleck/vim-svelte/,,
 https://github.com/machakann/vim-swap/,,
diff --git a/pkgs/applications/editors/vim/plugins/vim-utils.nix b/pkgs/applications/editors/vim/plugins/vim-utils.nix
index 7b023118f057..d5536ee3b63a 100644
--- a/pkgs/applications/editors/vim/plugins/vim-utils.nix
+++ b/pkgs/applications/editors/vim/plugins/vim-utils.nix
@@ -415,6 +415,7 @@ rec {
 
   toVimPlugin = drv:
     drv.overrideAttrs(oldAttrs: {
+      name = "vimplugin-${oldAttrs.name}";
       # dont move the "doc" folder since vim expects it
       forceShare = [ "man" "info" ];
 
diff --git a/pkgs/applications/editors/vscode/extensions/default.nix b/pkgs/applications/editors/vscode/extensions/default.nix
index 260711bd4880..bf3b79b4bc64 100644
--- a/pkgs/applications/editors/vscode/extensions/default.nix
+++ b/pkgs/applications/editors/vscode/extensions/default.nix
@@ -90,8 +90,8 @@ let
         mktplcRef = {
           publisher = "42Crunch";
           name = "vscode-openapi";
-          version = "4.25.1";
-          sha256 = "+hKQUJp9c0oyhePFmQEXAqtqKL3fkQ1nhopUPnhRZc4=";
+          version = "4.25.3";
+          hash = "sha256-1kz/M2od2gLSFgqW6LsPHgtm+BwXA+0+7z3HyqNmsOg=";
         };
         meta = {
           changelog = "https://marketplace.visualstudio.com/items/42Crunch.vscode-openapi/changelog";
@@ -406,8 +406,8 @@ let
         mktplcRef = {
           name = "vscode-neovim";
           publisher = "asvetliakov";
-          version = "1.8.1";
-          sha256 = "0kqzry0cbvvy1pkbx5rhnk5ry7j91cbf11vz1s1jrqc7j0hq0yx8";
+          version = "1.11.4";
+          hash = "sha256-dAovrYfA5muPNhFIHycxuO0CIWPT4T9hsEzri1JDOUI=";
         };
         meta = {
           changelog = "https://marketplace.visualstudio.com/items/asvetliakov.vscode-neovim/changelog";
@@ -1477,8 +1477,8 @@ let
         mktplcRef = {
           name = "elixir-ls";
           publisher = "JakeBecker";
-          version = "0.20.0";
-          hash = "sha256-p+YNBRzzA/EezBMxI5Rmdb8SdJgFV7QwuLVi1mcJV+E=";
+          version = "0.21.1";
+          hash = "sha256-z/GhynjkoEcaRp59tYr1lnM5vfV0OaDCcCpC02OdVLE=";
         };
         meta = {
           changelog = "https://marketplace.visualstudio.com/items/JakeBecker.elixir-ls/changelog";
@@ -2205,8 +2205,8 @@ let
         mktplcRef = {
           name = "Ionide-fsharp";
           publisher = "Ionide";
-          version = "7.18.2";
-          hash = "sha256-CEeTLiZktp5YzCRxDXa+s8W9N971iQla/FyCr8Co0SQ=";
+          version = "7.19.1";
+          hash = "sha256-QyGt3q00IEXw6YNvx7pFhLS1s44aeiB/U0m3Ow1UdlM=";
         };
         meta = {
           changelog = "https://marketplace.visualstudio.com/items/Ionide.Ionide-fsharp/changelog";
@@ -2234,6 +2234,27 @@ let
         };
       };
 
+      jackmacwindows.vscode-computercraft = buildVscodeMarketplaceExtension {
+        mktplcRef = {
+          name = "vscode-computercraft";
+          publisher = "jackmacwindows";
+          version = "1.1.1";
+          hash = "sha256-ec1I3oQ06iMdSUcqf8yA3GjE7Aqa0PiLzRQLwFcL0KU=";
+        };
+        postInstall = ''
+          # Remove superflouous images to reduce closure size
+          rm $out/$installPrefix/images/*.gif
+        '';
+        meta = {
+          changelog = "https://marketplace.visualstudio.com/items/jackmacwindows.vscode-computercraft/changelog";
+          description = "A Visual Studio Code extension for ComputerCraft and CC: Tweaked auto-completion";
+          downloadPage = "https://marketplace.visualstudio.com/items?itemName=jackmacwindows.vscode-computercraft";
+          homepage = "https://github.com/MCJack123/vscode-computercraft";
+          license = lib.licenses.mit;
+          maintainers = with lib.maintainers; [ tomodachi94 ];
+        };
+      };
+
       jackmacwindows.craftos-pc = callPackage ./jackmacwindows.craftos-pc { };
 
       james-yu.latex-workshop = buildVscodeMarketplaceExtension {
@@ -4094,6 +4115,8 @@ let
         };
       };
 
+      tekumara.typos-vscode = callPackage ./tekumara.typos-vscode { };
+
       theangryepicbanana.language-pascal = buildVscodeMarketplaceExtension {
         mktplcRef = {
           name = "language-pascal";
diff --git a/pkgs/applications/editors/vscode/extensions/jackmacwindows.craftos-pc/default.nix b/pkgs/applications/editors/vscode/extensions/jackmacwindows.craftos-pc/default.nix
index 005f78f4f4ae..27f091d5110f 100644
--- a/pkgs/applications/editors/vscode/extensions/jackmacwindows.craftos-pc/default.nix
+++ b/pkgs/applications/editors/vscode/extensions/jackmacwindows.craftos-pc/default.nix
@@ -10,8 +10,8 @@ vscode-utils.buildVscodeMarketplaceExtension {
   mktplcRef = {
     name = "craftos-pc";
     publisher = "jackmacwindows";
-    version = "1.2.2";
-    hash = "sha256-A+MNroXv0t9Mw/gr0Fyov3cXyF/GGzwRLKrIxQ2tKCE=";
+    version = "1.2.3";
+    hash = "sha256-QoLMefSmownw9AEem0jx1+BF1bcolHYpiqyPKQNkdiQ=";
   };
   nativeBuildInputs = [
     jq
diff --git a/pkgs/applications/editors/vscode/extensions/ms-python.python/default.nix b/pkgs/applications/editors/vscode/extensions/ms-python.python/default.nix
index 67a96652b6ed..35bc6cdcef23 100644
--- a/pkgs/applications/editors/vscode/extensions/ms-python.python/default.nix
+++ b/pkgs/applications/editors/vscode/extensions/ms-python.python/default.nix
@@ -21,8 +21,8 @@ vscode-utils.buildVscodeMarketplaceExtension rec {
   mktplcRef = {
     name = "python";
     publisher = "ms-python";
-    version = "2023.1.10091012";
-    hash = "sha256-JosFv6ngJmw1XRILwTZMVxlGIdWFLFQjj4olfnVwAIM=";
+    version = "2024.5.11021008";
+    hash = "sha256-UnI0leRKqCtFLBdGS/UvLuCcxQhibyY0ChmzQ9uytoY=";
   };
 
   buildInputs = [ icu ];
@@ -37,11 +37,11 @@ vscode-utils.buildVscodeMarketplaceExtension rec {
   postPatch =
     ''
       # remove bundled python deps and use libs from nixpkgs
-      rm -r pythonFiles/lib
-      mkdir -p pythonFiles/lib/python/
-      ln -s ${python3.pkgs.debugpy}/lib/*/site-packages/debugpy pythonFiles/lib/python/
+      rm -r python_files/lib
+      mkdir -p python_files/lib/python/
+      ln -s ${python3.pkgs.debugpy}/lib/*/site-packages/debugpy python_files/lib/python/
       buildPythonPath "$propagatedBuildInputs"
-      for i in pythonFiles/*.py; do
+      for i in python_files/*.py; do
         patchPythonScript "$i"
       done
     ''
diff --git a/pkgs/applications/editors/vscode/extensions/ms-python.vscode-pylance/default.nix b/pkgs/applications/editors/vscode/extensions/ms-python.vscode-pylance/default.nix
index 9b7f63edc74a..ad8c6a9eac46 100644
--- a/pkgs/applications/editors/vscode/extensions/ms-python.vscode-pylance/default.nix
+++ b/pkgs/applications/editors/vscode/extensions/ms-python.vscode-pylance/default.nix
@@ -8,8 +8,8 @@ vscode-utils.buildVscodeMarketplaceExtension {
   mktplcRef = {
     name = "vscode-pylance";
     publisher = "MS-python";
-    version = "2024.4.1";
-    hash = "sha256-huKu6yefGXOay5Az4vksopRt8heoLxvKUrg/J1NlQFo=";
+    version = "2024.5.1";
+    hash = "sha256-w+T4dySTt2RpdBYd1Nnxh8RR9wqEu9pkS4R1Ay7Fn+8=";
   };
 
   buildInputs = [ pyright ];
diff --git a/pkgs/applications/editors/vscode/extensions/ms-vscode.cpptools/default.nix b/pkgs/applications/editors/vscode/extensions/ms-vscode.cpptools/default.nix
index 731bddc3553c..20c38168178b 100644
--- a/pkgs/applications/editors/vscode/extensions/ms-vscode.cpptools/default.nix
+++ b/pkgs/applications/editors/vscode/extensions/ms-vscode.cpptools/default.nix
@@ -43,11 +43,11 @@ let
   gdbDefaultsTo = if gdbUseFixed then "${gdb}/bin/gdb" else "gdb";
   supported = {
     x86_64-linux = {
-      hash = "sha256-p8WFmkQKdzXF0FTWHabyeFMkwXa2RkDRM9SvvkBIOLY=";
+      hash = "sha256-arTBt3UWA5zoo0dL044Sx/NT1LUS76XfGIS96NOMvJk=";
       arch = "linux-x64";
     };
     aarch64-linux = {
-      hash = "sha256-HISE8/M9IpeI8iX0mmw9owExnpgiwpesE7YG/+QFYgc=";
+      hash = "sha256-oVuDxx117bVd/jDqn9KivTwR5T2X5UZMHk/nZ/e/IOg=";
       arch = "linux-arm64";
     };
   };
@@ -58,7 +58,7 @@ vscode-utils.buildVscodeMarketplaceExtension {
   mktplcRef = base // {
     name = "cpptools";
     publisher = "ms-vscode";
-    version = "1.20.2";
+    version = "1.20.5";
   };
 
   nativeBuildInputs = [
@@ -105,9 +105,9 @@ vscode-utils.buildVscodeMarketplaceExtension {
     description = "The C/C++ extension adds language support for C/C++ to Visual Studio Code, including features such as IntelliSense and debugging.";
     homepage = "https://marketplace.visualstudio.com/items?itemName=ms-vscode.cpptools";
     license = lib.licenses.unfree;
-    maintainers = [
-      lib.maintainers.jraygauthier
-      lib.maintainers.stargate01
+    maintainers = with lib.maintainers; [
+      jraygauthier
+      stargate01
     ];
     platforms = [
       "x86_64-linux"
diff --git a/pkgs/applications/editors/vscode/extensions/myriad-dreamin.tinymist/default.nix b/pkgs/applications/editors/vscode/extensions/myriad-dreamin.tinymist/default.nix
index 3a6d84b24b8a..b8281e83c564 100644
--- a/pkgs/applications/editors/vscode/extensions/myriad-dreamin.tinymist/default.nix
+++ b/pkgs/applications/editors/vscode/extensions/myriad-dreamin.tinymist/default.nix
@@ -12,8 +12,8 @@ vscode-utils.buildVscodeMarketplaceExtension {
     publisher = "myriad-dreamin";
     # Please update the corresponding binary (tinymist) when updating
     # this extension.
-    version = "0.11.6";
-    hash = "sha256-qS+QY9RmJYXWRcohMcorF3SxoniBPE8SFcg0Ka1vvOE=";
+    version = "0.11.8";
+    hash = "sha256-ELqk94xhPJwHlxQ0ie9DMBNOiqszpi3mYF+wHxoY2xw=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/applications/editors/vscode/extensions/reditorsupport.r/default.nix b/pkgs/applications/editors/vscode/extensions/reditorsupport.r/default.nix
index de1759d7b0e4..cc7a8d9ab4ef 100644
--- a/pkgs/applications/editors/vscode/extensions/reditorsupport.r/default.nix
+++ b/pkgs/applications/editors/vscode/extensions/reditorsupport.r/default.nix
@@ -12,8 +12,8 @@ vscode-utils.buildVscodeMarketplaceExtension {
   mktplcRef = {
     name = "r";
     publisher = "reditorsupport";
-    version = "2.8.2";
-    hash = "sha256-FPL/JjW452KRchcQ0iHXRJarZXvS3B8PvZhXjf3rMhQ=";
+    version = "2.8.3";
+    hash = "sha256-3HVBBXMdRhnKLnhrbEQFIlIbB/rbj+AAb4/z3/Ch7eg=";
   };
   nativeBuildInputs = [
     jq
diff --git a/pkgs/applications/editors/vscode/extensions/tekumara.typos-vscode/default.nix b/pkgs/applications/editors/vscode/extensions/tekumara.typos-vscode/default.nix
new file mode 100644
index 000000000000..140a371efd45
--- /dev/null
+++ b/pkgs/applications/editors/vscode/extensions/tekumara.typos-vscode/default.nix
@@ -0,0 +1,64 @@
+{
+  stdenv,
+  jq,
+  lib,
+  moreutils,
+  typos-lsp,
+  vscode-utils,
+}:
+let
+  inherit (stdenv.hostPlatform) system;
+
+  extInfo =
+    {
+      x86_64-linux = {
+        arch = "linux-x64";
+        hash = "sha256-CPUlJ1QzGiZKd4r46Iioc5svw0oLsMsYnc0KxT1p0zM=";
+      };
+      aarch64-linux = {
+        arch = "linux-arm64";
+        hash = "sha256-qSTCZHL7nfB300qwuqgl/4u+SYNMA2BFCrD+yQEgN/c=";
+      };
+      x86_64-darwin = {
+        arch = "darwin-x64";
+        hash = "sha256-FcZH2bB5B3wnu6F76kGp9FBdD3yZtr57TQ5xaUfRcmY=";
+      };
+      aarch64-darwin = {
+        arch = "darwin-arm64";
+        hash = "sha256-3HdK4x2WNdb9Zxqjtn9lmbgrMOzz14rH0ZF0x9B0BHY=";
+      };
+    }
+    .${system} or (throw "Unsupported system: ${system}");
+in
+vscode-utils.buildVscodeMarketplaceExtension {
+  mktplcRef = {
+    name = "typos-vscode";
+    publisher = "tekumara";
+    # Please update the corresponding binary (typos-lsp)
+    # when updating this extension.
+    # See pkgs/by-name/ty/typos-lsp/package.nix
+    version = "0.1.18";
+    inherit (extInfo) hash arch;
+  };
+
+  nativeBuildInputs = [
+    jq
+    moreutils
+  ];
+
+  buildInputs = [ typos-lsp ];
+
+  postInstall = ''
+    cd "$out/$installPrefix"
+    jq '.contributes.configuration.properties."typos.path".default = "${lib.getExe typos-lsp}"' package.json | sponge package.json
+  '';
+
+  meta = {
+    changelog = "https://marketplace.visualstudio.com/items/tekumara.typos-vscode/changelog";
+    description = "A VSCode extension for providing a low false-positive source code spell checker";
+    downloadPage = "https://marketplace.visualstudio.com/items?itemName=tekumara.typos-vscode";
+    homepage = "https://github.com/tekumara/typos-lsp";
+    license = lib.licenses.mit;
+    maintainers = [ lib.maintainers.drupol ];
+  };
+}
diff --git a/pkgs/applications/editors/vscode/extensions/vadimcn.vscode-lldb/default.nix b/pkgs/applications/editors/vscode/extensions/vadimcn.vscode-lldb/default.nix
index 70f4cbd833de..8ed7c0b946b4 100644
--- a/pkgs/applications/editors/vscode/extensions/vadimcn.vscode-lldb/default.nix
+++ b/pkgs/applications/editors/vscode/extensions/vadimcn.vscode-lldb/default.nix
@@ -67,7 +67,7 @@ let
       cp $out/lib/* $out/share/adapter
       cp -r adapter/scripts $out/share/adapter
       cp -t $out/share/formatters formatters/*.py
-      ln -s ${lldb.lib} $out/share/lldb
+      ln -s ${lib.getLib lldb} $out/share/lldb
       makeWrapper $out/share/adapter/codelldb $out/bin/codelldb \
         --set-default LLDB_DEBUGSERVER_PATH "${lldb.out}/bin/lldb-server"
     '';
diff --git a/pkgs/applications/editors/vscode/generic.nix b/pkgs/applications/editors/vscode/generic.nix
index b7fe7d2712a6..5ed75a0ce32e 100644
--- a/pkgs/applications/editors/vscode/generic.nix
+++ b/pkgs/applications/editors/vscode/generic.nix
@@ -165,7 +165,7 @@ in
     autoPatchelfHook
     asar
     # override doesn't preserve splicing https://github.com/NixOS/nixpkgs/issues/132651
-    (buildPackages.wrapGAppsHook.override { inherit (buildPackages) makeWrapper; })
+    (buildPackages.wrapGAppsHook3.override { inherit (buildPackages) makeWrapper; })
   ];
 
   dontBuild = true;
diff --git a/pkgs/applications/editors/vscode/vscode.nix b/pkgs/applications/editors/vscode/vscode.nix
index 3cd3faa79014..e8ff066642b2 100644
--- a/pkgs/applications/editors/vscode/vscode.nix
+++ b/pkgs/applications/editors/vscode/vscode.nix
@@ -30,21 +30,21 @@ let
   archive_fmt = if stdenv.isDarwin then "zip" else "tar.gz";
 
   sha256 = {
-    x86_64-linux = "14m9w7wkg1704apd4d46yi6zwdlbrx2rp3fry9ffk2nn6kkahwk2";
-    x86_64-darwin = "1cp74wdkva1zib04wxjby0h8r1c56g893kq5ksdj38404i2c5hdk";
-    aarch64-linux = "00yrdmi4c5m8r11gm7vw18qb5ddcwwg5mdk8s9ykzhmxhdrkcarm";
-    aarch64-darwin = "1jjhw60jcvj5brayarg8k6avxwaa00mwdn4lrkcdzbzzh1q4knvv";
-    armv7l-linux = "1jddc3fsv65mp95ybpprx8sz3mpnp6j2ghp4nflky8iawmzz183v";
+    x86_64-linux = "1zfh48g6prjhjcyrz5impsnm6khw7s75k8k54bp0cszl81ddsysx";
+    x86_64-darwin = "1w5fzq8dmzrs2ggxvcbcs03psxxi1dbzx5l0jn52szi1g5y3daxi";
+    aarch64-linux = "0rs4zzddfpwbf86cjl4r65cxccs4ypz1s7lw98vq0j8pfx8vkgqi";
+    aarch64-darwin = "0gha1b6q3k57yrbp7qrrknlbbbbhcjd6slbyrzlwjcz1ddvs7c8s";
+    armv7l-linux = "01s1vxbmg3zp47kwlsjr781v6c51l5bcpf9pc91id0qcrhax703k";
   }.${system} or throwSystem;
 in
   callPackage ./generic.nix rec {
     # Please backport all compatible updates to the stable release.
     # This is important for the extension ecosystem.
-    version = "1.88.1";
+    version = "1.89.1";
     pname = "vscode" + lib.optionalString isInsiders "-insiders";
 
     # This is used for VS Code - Remote SSH test
-    rev = "e170252f762678dec6ca2cc69aba1570769a5d39";
+    rev = "dc96b837cf6bb4af9cd736aa3af08cf8279f7685";
 
     executableName = "code" + lib.optionalString isInsiders "-insiders";
     longName = "Visual Studio Code" + lib.optionalString isInsiders " - Insiders";
@@ -68,7 +68,7 @@ in
       src = fetchurl {
         name = "vscode-server-${rev}.tar.gz";
         url = "https://update.code.visualstudio.com/commit:${rev}/server-linux-x64/stable";
-        sha256 = "100nhm231gzav24lz84vxwxnqkn777kfn0fkkjmdcd30kc7g7ig9";
+        sha256 = "05gvq96vw69lb8ip8pfd9g43j8kvfwlrdmm11b41fpdafhi45f89";
       };
     };
 
diff --git a/pkgs/applications/editors/xed-editor/default.nix b/pkgs/applications/editors/xed-editor/default.nix
index 8ce15bdce09e..cb147cf099eb 100644
--- a/pkgs/applications/editors/xed-editor/default.nix
+++ b/pkgs/applications/editors/xed-editor/default.nix
@@ -12,7 +12,7 @@
 , python3
 , meson
 , ninja
-, wrapGAppsHook
+, wrapGAppsHook3
 , intltool
 , itstool
 }:
@@ -41,7 +41,7 @@ stdenv.mkDerivation rec {
     itstool
     ninja
     python3
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
diff --git a/pkgs/applications/emulators/bsnes/ares/default.nix b/pkgs/applications/emulators/bsnes/ares/default.nix
index 0a5993557a08..ade90d388567 100644
--- a/pkgs/applications/emulators/bsnes/ares/default.nix
+++ b/pkgs/applications/emulators/bsnes/ares/default.nix
@@ -16,7 +16,7 @@
 , pkg-config
 , udev
 , which
-, wrapGAppsHook
+, wrapGAppsHook3
 , darwin
 }:
 
@@ -40,7 +40,7 @@ stdenv.mkDerivation (finalAttrs: {
   nativeBuildInputs = [
     pkg-config
     which
-    wrapGAppsHook
+    wrapGAppsHook3
   ] ++ lib.optionals stdenv.isDarwin [
     libicns
   ];
diff --git a/pkgs/applications/emulators/bsnes/bsnes-hd/default.nix b/pkgs/applications/emulators/bsnes/bsnes-hd/default.nix
index 5ac210042538..4b8e94dac1d1 100644
--- a/pkgs/applications/emulators/bsnes/bsnes-hd/default.nix
+++ b/pkgs/applications/emulators/bsnes/bsnes-hd/default.nix
@@ -1,6 +1,6 @@
 { lib, stdenv, fetchFromGitHub, fetchpatch
 , pkg-config
-, wrapGAppsHook
+, wrapGAppsHook3
 , libX11, libXv
 , udev
 , SDL2
@@ -47,7 +47,7 @@ stdenv.mkDerivation {
   ];
 
   nativeBuildInputs = [ pkg-config ]
-    ++ lib.optionals stdenv.isLinux [ wrapGAppsHook ]
+    ++ lib.optionals stdenv.isLinux [ wrapGAppsHook3 ]
     ++ lib.optionals stdenv.isDarwin [ libicns makeWrapper ];
 
   buildInputs = [ SDL2 libao ]
diff --git a/pkgs/applications/emulators/cdemu/analyzer.nix b/pkgs/applications/emulators/cdemu/analyzer.nix
index 5b111b80285a..244abc4f96c7 100644
--- a/pkgs/applications/emulators/cdemu/analyzer.nix
+++ b/pkgs/applications/emulators/cdemu/analyzer.nix
@@ -1,20 +1,21 @@
-{ callPackage, makeWrapper, gobject-introspection, cmake
-, python3Packages, gtk3, glib, libxml2, gnuplot, gnome, gdk-pixbuf, librsvg, intltool, libmirage }:
-let pkg = import ./base.nix {
-  version = "3.2.5";
-  pname = "image-analyzer";
-  pkgSha256 = "00906lky0z1m0bdqnjmzxgcb19dzvljhddhh42lixyr53sjp94cc";
-};
-in callPackage pkg {
-  buildInputs = [ glib gtk3 libxml2 gnuplot libmirage gnome.adwaita-icon-theme gdk-pixbuf librsvg
-                  python3Packages.python python3Packages.pygobject3 python3Packages.matplotlib ];
-  drvParams = {
-    nativeBuildInputs = [ gobject-introspection cmake makeWrapper intltool ];
-    postFixup = ''
-      wrapProgram $out/bin/image-analyzer \
-        --set PYTHONPATH "$PYTHONPATH" \
-        --set GI_TYPELIB_PATH "$GI_TYPELIB_PATH" \
-        --prefix XDG_DATA_DIRS : "$out/share:$XDG_ICON_DIRS:$GSETTINGS_SCHEMAS_PATH"
-    '';
-  };
+{ cmake, pkg-config, callPackage, gobject-introspection, wrapGAppsHook3
+, python3Packages, libxml2, gnuplot, gnome, gdk-pixbuf, intltool, libmirage }:
+python3Packages.buildPythonApplication {
+
+  inherit (callPackage ./common-drv-attrs.nix {
+    version = "3.2.6";
+    pname = "image-analyzer";
+    hash = "sha256-7I8RUgd+k3cEzskJGbziv1f0/eo5QQXn62wGh/Y5ozc=";
+  }) pname version src meta;
+
+  buildInputs = [ libxml2 gnuplot libmirage gnome.adwaita-icon-theme gdk-pixbuf ];
+  propagatedBuildInputs = with python3Packages; [ pygobject3 matplotlib ];
+  nativeBuildInputs = [ cmake pkg-config wrapGAppsHook3 intltool gobject-introspection ];
+
+  pyproject = false;
+  dontWrapGApps = true;
+  preFixup = ''
+    makeWrapperArgs+=("''${gappsWrapperArgs[@]}")
+  '';
+
 }
diff --git a/pkgs/applications/emulators/cdemu/client.nix b/pkgs/applications/emulators/cdemu/client.nix
index 2e301a115c9a..0a9c71cf6e14 100644
--- a/pkgs/applications/emulators/cdemu/client.nix
+++ b/pkgs/applications/emulators/cdemu/client.nix
@@ -1,16 +1,19 @@
-{ callPackage, python3Packages, intltool, makeWrapper }:
-let pkg = import ./base.nix {
-  version = "3.2.5";
-  pname = "cdemu-client";
-  pkgSha256 = "1prrdhv0ia0axc6b73crszqzh802wlkihz6d100yvg7wbgmqabd7";
-};
-in callPackage pkg {
-  nativeBuildInputs = [ makeWrapper intltool ];
-  buildInputs = [ python3Packages.python python3Packages.dbus-python python3Packages.pygobject3 ];
-  drvParams = {
-    postFixup = ''
-      wrapProgram $out/bin/cdemu \
-        --set PYTHONPATH "$PYTHONPATH"
-    '';
-  };
+{ callPackage, python3Packages, cmake, pkg-config, intltool, wrapGAppsNoGuiHook, gobject-introspection }:
+python3Packages.buildPythonApplication {
+
+  inherit (callPackage ./common-drv-attrs.nix {
+    version = "3.2.5";
+    pname = "cdemu-client";
+    hash = "sha256-py2F61v8vO0BCM18GCflAiD48deZjbMM6wqoCDZsOd8=";
+  }) pname version src meta;
+
+  nativeBuildInputs = [ cmake pkg-config intltool wrapGAppsNoGuiHook gobject-introspection ];
+  propagatedBuildInputs = with python3Packages; [ dbus-python pygobject3 ];
+
+  pyproject = false;
+  dontWrapGApps = true;
+  preFixup = ''
+    makeWrapperArgs+=("''${gappsWrapperArgs[@]}")
+  '';
+
 }
diff --git a/pkgs/applications/emulators/cdemu/base.nix b/pkgs/applications/emulators/cdemu/common-drv-attrs.nix
index 994a0f0e03da..9c43e358981e 100644
--- a/pkgs/applications/emulators/cdemu/base.nix
+++ b/pkgs/applications/emulators/cdemu/common-drv-attrs.nix
@@ -1,20 +1,13 @@
-{ pname, version, pkgSha256 }:
-attrs@{ lib, stdenv, fetchurl, cmake, pkg-config, buildInputs, drvParams ? {}, ... }:
-stdenv.mkDerivation ( rec {
-  inherit pname version buildInputs;
+{ lib, fetchurl
+, pname, version, hash
+}:
+
+{
+  inherit pname version;
   src = fetchurl {
     url = "mirror://sourceforge/cdemu/${pname}-${version}.tar.xz";
-    sha256 = pkgSha256;
+    inherit hash;
   };
-  nativeBuildInputs = (attrs.nativeBuildInputs or [ ]) ++ [ pkg-config cmake ];
-  setSourceRoot = ''
-    mkdir build
-    cd build
-    sourceRoot="`pwd`"
-  '';
-  configurePhase = ''
-    cmake ../${pname}-${version} -DCMAKE_INSTALL_PREFIX=$out -DCMAKE_BUILD_TYPE=Release -DCMAKE_SKIP_RPATH=ON
-  '';
   meta = with lib; {
     description = "A suite of tools for emulating optical drives and discs";
     longDescription = ''
@@ -33,4 +26,4 @@ stdenv.mkDerivation ( rec {
     platforms = platforms.linux;
     maintainers = with lib.maintainers; [ bendlas ];
   };
-} // drvParams)
+}
diff --git a/pkgs/applications/emulators/cdemu/daemon.nix b/pkgs/applications/emulators/cdemu/daemon.nix
index 359b2f26a573..5382efbff237 100644
--- a/pkgs/applications/emulators/cdemu/daemon.nix
+++ b/pkgs/applications/emulators/cdemu/daemon.nix
@@ -1,15 +1,17 @@
-{ callPackage, glib, libao, intltool, libmirage, coreutils }:
-let pkg = import ./base.nix {
-  version = "3.2.5";
-  pname = "cdemu-daemon";
-  pkgSha256 = "16g6fv1lxkdmbsy6zh5sj54dvgwvm900fd18aq609yg8jnqm644d";
-};
-in callPackage pkg {
-  nativeBuildInputs = [ intltool ];
+{ stdenv, callPackage, cmake, pkg-config, glib, libao, intltool, libmirage, coreutils }:
+stdenv.mkDerivation {
+
+  inherit (callPackage ./common-drv-attrs.nix {
+    version = "3.2.6";
+    pname = "cdemu-daemon";
+    hash = "sha256-puQE4+91xhRuNjVPZYgN/WO0uO8fVAOdxQWOGQ+FfY8=";
+  }) pname version src meta;
+
+  nativeBuildInputs = [ cmake pkg-config intltool ];
   buildInputs = [ glib libao libmirage ];
-  drvParams.postInstall = ''
+  postInstall = ''
     mkdir -p $out/share/dbus-1/services
-    cp -R ../$pname-$version/service-example $out/share/cdemu
+    cp -R ../service-example $out/share/cdemu
     substitute \
       $out/share/cdemu/net.sf.cdemu.CDEmuDaemon.service \
       $out/share/dbus-1/services/net.sf.cdemu.CDEmuDaemon.service \
diff --git a/pkgs/applications/emulators/cdemu/gui.nix b/pkgs/applications/emulators/cdemu/gui.nix
index 3083e1960b5d..ff2ebd68ca4d 100644
--- a/pkgs/applications/emulators/cdemu/gui.nix
+++ b/pkgs/applications/emulators/cdemu/gui.nix
@@ -1,22 +1,21 @@
-{ callPackage, makeWrapper, gobject-introspection, cmake
-, python3Packages, gtk3, glib, libnotify, intltool, gnome, gdk-pixbuf, librsvg }:
-let
-  pkg = import ./base.nix {
-    version = "3.2.5";
+{ callPackage, cmake, pkg-config, wrapGAppsHook3, gobject-introspection
+, python3Packages, libnotify, intltool, gnome, gdk-pixbuf }:
+python3Packages.buildPythonApplication {
+
+  inherit (callPackage ./common-drv-attrs.nix {
+    version = "3.2.6";
     pname = "gcdemu";
-    pkgSha256 = "1nvpbq4mz8caw91q5ny9gf206g9bypavxws9nxyfcanfkc4zfkl4";
-  };
-  inherit (python3Packages) python pygobject3;
-in callPackage pkg {
-  buildInputs = [ python pygobject3 gtk3 glib libnotify gnome.adwaita-icon-theme gdk-pixbuf librsvg ];
-  drvParams = {
-    nativeBuildInputs = [ gobject-introspection cmake makeWrapper intltool ];
-    postFixup = ''
-      wrapProgram $out/bin/gcdemu \
-        --set PYTHONPATH "$PYTHONPATH" \
-        --set GI_TYPELIB_PATH "$GI_TYPELIB_PATH" \
-        --prefix XDG_DATA_DIRS : "$out/share:$XDG_ICON_DIRS:$GSETTINGS_SCHEMAS_PATH"
-    '';
-    # TODO AppIndicator
-  };
+    hash = "sha256-w4vzKoSotL5Cjfr4Cu4YhNSWXJqS+n/vySrwvbhR1zA=";
+  }) pname version src meta;
+
+  nativeBuildInputs = [ cmake pkg-config wrapGAppsHook3 intltool gobject-introspection ];
+  buildInputs = [ libnotify gnome.adwaita-icon-theme gdk-pixbuf ];
+  propagatedBuildInputs = with python3Packages; [ pygobject3 ];
+
+  pyproject = false;
+  dontWrapGApps = true;
+  preFixup = ''
+    makeWrapperArgs+=("''${gappsWrapperArgs[@]}")
+  '';
+
 }
diff --git a/pkgs/applications/emulators/cdemu/libmirage.nix b/pkgs/applications/emulators/cdemu/libmirage.nix
index b631d3669dc9..bbc013be18a0 100644
--- a/pkgs/applications/emulators/cdemu/libmirage.nix
+++ b/pkgs/applications/emulators/cdemu/libmirage.nix
@@ -1,18 +1,19 @@
-{ callPackage, gobject-introspection, cmake, pkg-config
+{ stdenv, callPackage, cmake, pkg-config, gobject-introspection
 , glib, libsndfile, zlib, bzip2, xz, libsamplerate, intltool
 , pcre, util-linux, libselinux, libsepol }:
 
-let pkg = import ./base.nix {
-  version = "3.2.5";
-  pname = "libmirage";
-  pkgSha256 = "0f8i2ha44rykkk3ac2q8zsw3y1zckw6qnf6zvkyrj3qqbzhrf3fm";
-};
-in callPackage pkg {
+stdenv.mkDerivation {
+
+  inherit (callPackage ./common-drv-attrs.nix {
+    version = "3.2.7";
+    pname = "libmirage";
+    hash = "sha256-+okkgNeVS8yoKSrQDy4It7PiPlTSiOsUoFxQ1FS9s9M=";
+  }) pname version src meta;
+
+  PKG_CONFIG_GOBJECT_INTROSPECTION_1_0_GIRDIR = "${placeholder "out"}/share/gir-1.0";
+  PKG_CONFIG_GOBJECT_INTROSPECTION_1_0_TYPELIBDIR = "${placeholder "out"}/lib/girepository-1.0";
   buildInputs = [ glib libsndfile zlib bzip2 xz libsamplerate ];
-  drvParams = {
-    PKG_CONFIG_GOBJECT_INTROSPECTION_1_0_GIRDIR = "${placeholder "out"}/share/gir-1.0";
-    PKG_CONFIG_GOBJECT_INTROSPECTION_1_0_TYPELIBDIR = "${placeholder "out"}/lib/girepository-1.0";
-    nativeBuildInputs = [ cmake gobject-introspection pkg-config intltool ];
-    propagatedBuildInputs = [ pcre util-linux libselinux libsepol ];
-  };
+  nativeBuildInputs = [ cmake pkg-config intltool gobject-introspection ];
+  propagatedBuildInputs = [ pcre util-linux libselinux libsepol ];
+
 }
diff --git a/pkgs/applications/emulators/cdemu/vhba.nix b/pkgs/applications/emulators/cdemu/vhba.nix
index 103e4b4b5b89..15b69500f3d2 100644
--- a/pkgs/applications/emulators/cdemu/vhba.nix
+++ b/pkgs/applications/emulators/cdemu/vhba.nix
@@ -6,7 +6,7 @@ stdenv.mkDerivation rec {
 
   src  = fetchurl {
     url = "mirror://sourceforge/cdemu/vhba-module-${version}.tar.xz";
-    sha256 = "sha256-v1hQ1Lj1AiHKh9c0OpKe2oexkfb1roxhQXRUO1ut3oM=";
+    hash = "sha256-v1hQ1Lj1AiHKh9c0OpKe2oexkfb1roxhQXRUO1ut3oM=";
   };
 
   makeFlags = kernel.makeFlags ++ [ "KDIR=${kernel.dev}/lib/modules/${kernel.modDirVersion}/build" "INSTALL_MOD_PATH=$(out)" ];
diff --git a/pkgs/applications/emulators/cemu/default.nix b/pkgs/applications/emulators/cemu/default.nix
index a51982a19cd4..483bd8d4d509 100644
--- a/pkgs/applications/emulators/cemu/default.nix
+++ b/pkgs/applications/emulators/cemu/default.nix
@@ -1,6 +1,6 @@
 { lib, stdenv, fetchFromGitHub
 , addOpenGLRunpath
-, wrapGAppsHook
+, wrapGAppsHook3
 , cmake
 , glslang
 , nasm
@@ -46,13 +46,13 @@ let
 
 in stdenv.mkDerivation rec {
   pname = "cemu";
-  version = "2.0-79";
+  version = "2.0-82";
 
   src = fetchFromGitHub {
     owner = "cemu-project";
     repo = "Cemu";
     rev = "v${version}";
-    hash = "sha256-vSZLiRzOOJJMgycjI5xpgJcUAj5WCz241mAABgNuECw=";
+    hash = "sha256-rmlkit7ZNUM0ErqoclivfBHolV0tRWyToLmsvoTslbI=";
   };
 
   patches = [
@@ -64,7 +64,7 @@ in stdenv.mkDerivation rec {
 
   nativeBuildInputs = [
     addOpenGLRunpath
-    wrapGAppsHook
+    wrapGAppsHook3
     cmake
     glslang
     nasm
diff --git a/pkgs/applications/emulators/craftos-pc/default.nix b/pkgs/applications/emulators/craftos-pc/default.nix
index 9ad54f00d4e8..0d077d7669f2 100644
--- a/pkgs/applications/emulators/craftos-pc/default.nix
+++ b/pkgs/applications/emulators/craftos-pc/default.nix
@@ -3,6 +3,7 @@
 , fetchFromGitHub
 , callPackage
 , patchelf
+, unzip
 , poco
 , openssl
 , SDL2
@@ -40,7 +41,9 @@ stdenv.mkDerivation rec {
     hash = "sha256-ozebHgUgwdqYtWAyL+EdwpjEvZC+PkWcLYCPWz2FjSw=";
   };
 
-  buildInputs = [ patchelf poco openssl SDL2 SDL2_mixer ncurses libpng pngpp libwebp ];
+  nativeBuildInputs = [ patchelf unzip ];
+  buildInputs = [ poco openssl SDL2 SDL2_mixer ncurses libpng pngpp libwebp ];
+  strictDeps = true;
 
   preBuild = ''
     cp -R ${craftos2-lua}/* ./craftos2-lua/
@@ -63,6 +66,17 @@ stdenv.mkDerivation rec {
     patchelf --replace-needed craftos2-lua/src/liblua.so liblua.so $out/bin/craftos
     cp -R api $out/include/CraftOS-PC
     cp -R ${craftos2-rom}/* $out/share/craftos
+
+    mkdir -p resources/linux-icons
+    unzip resources/linux-icons.zip -d resources/linux-icons
+    for dim in 16 24 32 48 64 96 128 256 1024; do
+      dir="$out/share/icons/hicolor/$dimx$dim/apps"
+      mkdir -p "$dir"
+      cp "resources/linux-icons/$dim.png" "$dir/craftos.png"
+    done
+
+    mkdir -p $out/share/applications
+    cp resources/linux-icons/CraftOS-PC.desktop $out/share/applications/CraftOS-PC.desktop
   '';
 
   passthru.tests = {
diff --git a/pkgs/applications/emulators/desmume/default.nix b/pkgs/applications/emulators/desmume/default.nix
index 63ebe0720287..89078bc6411a 100644
--- a/pkgs/applications/emulators/desmume/default.nix
+++ b/pkgs/applications/emulators/desmume/default.nix
@@ -6,7 +6,7 @@
 , agg
 , alsa-lib
 , desktop-file-utils
-, wrapGAppsHook
+, wrapGAppsHook3
 , gtk3
 , intltool
 , libGLU
@@ -43,7 +43,7 @@ stdenv.mkDerivation (finalAttrs: {
   ];
 
   nativeBuildInputs = [
-    wrapGAppsHook
+    wrapGAppsHook3
     desktop-file-utils
     intltool
     libtool
diff --git a/pkgs/applications/emulators/flycast/default.nix b/pkgs/applications/emulators/flycast/default.nix
index efe091087927..6c598c5f5128 100644
--- a/pkgs/applications/emulators/flycast/default.nix
+++ b/pkgs/applications/emulators/flycast/default.nix
@@ -17,13 +17,13 @@
 
 stdenv.mkDerivation rec {
   pname = "flycast";
-  version = "2.3";
+  version = "2.3.2";
 
   src = fetchFromGitHub {
     owner = "flyinghead";
     repo = "flycast";
     rev = "v${version}";
-    sha256 = "sha256-o1Xnyts2+A3ZkzVN0o8E5nGPo2c2vYltMlHF4LZMppU=";
+    sha256 = "sha256-YFLSUaEikwLPglHh3t8sHiKHRn5cchKzzkJlZDdgVsU=";
     fetchSubmodules = true;
   };
 
diff --git a/pkgs/applications/emulators/fuse-emulator/default.nix b/pkgs/applications/emulators/fuse-emulator/default.nix
index 378437ca30c8..3ed4ffc9c073 100644
--- a/pkgs/applications/emulators/fuse-emulator/default.nix
+++ b/pkgs/applications/emulators/fuse-emulator/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetchurl, perl, pkg-config, wrapGAppsHook
+{ lib, stdenv, fetchurl, perl, pkg-config, wrapGAppsHook3
 , SDL, bzip2, glib, gtk3, libgcrypt, libpng, libspectrum, libxml2, zlib
 }:
 
@@ -11,7 +11,7 @@ stdenv.mkDerivation rec {
     sha256 = "sha256-Oo/t8v/pR8VxVhusVaWa2tTFkzj3TkSbfnpn2coEcJY=";
   };
 
-  nativeBuildInputs = [ perl pkg-config wrapGAppsHook ];
+  nativeBuildInputs = [ perl pkg-config wrapGAppsHook3 ];
 
   buildInputs = [ SDL bzip2 glib gtk3 libgcrypt libpng libspectrum libxml2 zlib ];
 
diff --git a/pkgs/applications/emulators/pcem/default.nix b/pkgs/applications/emulators/pcem/default.nix
index e680dd450d30..9ffa24a66e30 100644
--- a/pkgs/applications/emulators/pcem/default.nix
+++ b/pkgs/applications/emulators/pcem/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, lib, fetchzip, wxGTK32, coreutils, SDL2, openal, alsa-lib, pkg-config, gtk3, wrapGAppsHook
+{ stdenv, lib, fetchzip, wxGTK32, coreutils, SDL2, openal, alsa-lib, pkg-config, gtk3, wrapGAppsHook3
 , autoreconfHook, withNetworking ? true, withALSA ? true }:
 
 stdenv.mkDerivation rec {
@@ -11,7 +11,7 @@ stdenv.mkDerivation rec {
     sha256 = "067pbnc15h6a4pnnym82klr1w8qwfm6p0pkx93gx06wvwqsxvbdv";
   };
 
-  nativeBuildInputs = [ autoreconfHook pkg-config wrapGAppsHook ];
+  nativeBuildInputs = [ autoreconfHook pkg-config wrapGAppsHook3 ];
   buildInputs = [ wxGTK32 coreutils SDL2 openal gtk3 ]
     ++ lib.optional withALSA alsa-lib;
 
diff --git a/pkgs/applications/emulators/pcsxr/default.nix b/pkgs/applications/emulators/pcsxr/default.nix
index b80c32bd9eda..06559af0e732 100644
--- a/pkgs/applications/emulators/pcsxr/default.nix
+++ b/pkgs/applications/emulators/pcsxr/default.nix
@@ -1,5 +1,5 @@
 { lib, stdenv, fetchurl, autoreconfHook, intltool, pkg-config, gtk3, SDL2, xorg
-, wrapGAppsHook, libcdio, nasm, ffmpeg_4, file
+, wrapGAppsHook3, libcdio, nasm, ffmpeg_4, file
 , fetchpatch }:
 
 stdenv.mkDerivation rec {
@@ -50,7 +50,7 @@ stdenv.mkDerivation rec {
     ./0001-libpcsxcore-fix-build-with-ffmpeg-4.patch
   ];
 
-  nativeBuildInputs = [ autoreconfHook intltool pkg-config wrapGAppsHook ];
+  nativeBuildInputs = [ autoreconfHook intltool pkg-config wrapGAppsHook3 ];
   buildInputs = [
     gtk3 SDL2 xorg.libXv xorg.libXtst libcdio nasm ffmpeg_4 file
     xorg.libXxf86vm
diff --git a/pkgs/applications/emulators/retroarch/cores.nix b/pkgs/applications/emulators/retroarch/cores.nix
index b42966f5a10c..d4fb8a4c3afb 100644
--- a/pkgs/applications/emulators/retroarch/cores.nix
+++ b/pkgs/applications/emulators/retroarch/cores.nix
@@ -9,7 +9,6 @@
 , fetchFromGitHub
 , fetchpatch
 , ffmpeg
-, ffmpeg_4
 , fluidsynth
 , fmt
 , freetype
@@ -890,11 +889,13 @@ in
   ppsspp = mkLibretroCore {
     core = "ppsspp";
     extraNativeBuildInputs = [ cmake pkg-config python3 ];
-    extraBuildInputs = [ libGLU libGL libzip ffmpeg_4 snappy xorg.libX11 ];
+    extraBuildInputs = [ libGLU libGL libzip snappy xorg.libX11 ];
     makefile = "Makefile";
     cmakeFlags = [
       "-DLIBRETRO=ON"
-      "-DUSE_SYSTEM_FFMPEG=ON"
+      # USE_SYSTEM_FFMPEG=ON causes several glitches during video playback
+      # See: https://github.com/NixOS/nixpkgs/issues/304616
+      "-DUSE_SYSTEM_FFMPEG=OFF"
       "-DUSE_SYSTEM_SNAPPY=ON"
       "-DUSE_SYSTEM_LIBZIP=ON"
       "-DOpenGL_GL_PREFERENCE=GLVND"
diff --git a/pkgs/applications/emulators/retroarch/hashes.json b/pkgs/applications/emulators/retroarch/hashes.json
index d0fbc4f33836..d1ea92493c1c 100644
--- a/pkgs/applications/emulators/retroarch/hashes.json
+++ b/pkgs/applications/emulators/retroarch/hashes.json
@@ -55,20 +55,20 @@
         "src": {
             "owner": "libretro",
             "repo": "beetle-pce-libretro",
-            "rev": "ebd9f3f003f1268142785e41943e51616c3802b0",
-            "hash": "sha256-ccPMRfCzbFF509Q683rTo23tazk1jdeEbZVWMPpC55U="
+            "rev": "b5dd6466f18714ab4c9702e5bdb51cc9dfea061b",
+            "hash": "sha256-PBirwijCwaOcjRdyIyx/UsnYMQuojQuogK7X7Hte7r8="
         },
-        "version": "unstable-2024-04-26"
+        "version": "unstable-2024-05-03"
     },
     "beetle-pce-fast": {
         "fetcher": "fetchFromGitHub",
         "src": {
             "owner": "libretro",
             "repo": "beetle-pce-fast-libretro",
-            "rev": "be9db7587571893377974575b7c9768e00833bc2",
-            "hash": "sha256-vmqJvfYJDriWf8UL79DgX6EG3YFGQMvo7xosK/1FdrA="
+            "rev": "e2c0259a6941285f853bdc81dfd33756e107c2c2",
+            "hash": "sha256-S5p38rC5JqLL7ydeEtYR29rWFx1Pok3s7SNPr9zKwb8="
         },
-        "version": "unstable-2024-04-26"
+        "version": "unstable-2024-05-03"
     },
     "beetle-pcfx": {
         "fetcher": "fetchFromGitHub",
@@ -85,10 +85,10 @@
         "src": {
             "owner": "libretro",
             "repo": "beetle-psx-libretro",
-            "rev": "866df6445c9863ba03395211cd814224a59f7511",
-            "hash": "sha256-D0Qv6EOAOfmoScv8EzqWbr8SLRl8lH5Rqj/BksQe70k="
+            "rev": "0c8abf7f9dda23874b5b9cecfcec519a9dfb032b",
+            "hash": "sha256-psGXpYzKI1QicoHxGhHwR92kymZ+9EaJUpGMcM2OMUY="
         },
-        "version": "unstable-2024-04-26"
+        "version": "unstable-2024-05-10"
     },
     "beetle-saturn": {
         "fetcher": "fetchFromGitHub",
@@ -115,10 +115,10 @@
         "src": {
             "owner": "libretro",
             "repo": "beetle-supergrafx-libretro",
-            "rev": "e41f864c0abb36aef20f8e37cd9d9a92c00a9221",
-            "hash": "sha256-LkkW5mQmwv89ZECssVh43ezwe4xMagUOiSz82OupISQ="
+            "rev": "77a965d3433b1585638b54aa6a15d0c33a64ea0c",
+            "hash": "sha256-KuXvzse/EnzCcRoWVtZP1f/SKOp6qGrLbzbQEuFQGqA="
         },
-        "version": "unstable-2024-03-22"
+        "version": "unstable-2024-05-03"
     },
     "beetle-vb": {
         "fetcher": "fetchFromGitHub",
@@ -165,10 +165,10 @@
         "src": {
             "owner": "libretro",
             "repo": "bsnes-libretro",
-            "rev": "8767988ec91357f4e66143525b74b5ddbdedda8d",
-            "hash": "sha256-psSCB0A0nB/Rs4V4Yo/cY/BWpXyiCRH3pd6+JKvu6UU="
+            "rev": "b2f3ca10ee48546ad267719fb21bcf6b503d91e6",
+            "hash": "sha256-qClpkmkERAxdVL3DZvkUsmmGmFj6TArEBdS0AcIyXuA="
         },
-        "version": "unstable-2024-04-26"
+        "version": "unstable-2024-05-03"
     },
     "bsnes-hd": {
         "fetcher": "fetchFromGitHub",
@@ -287,10 +287,10 @@
         "src": {
             "owner": "libretro",
             "repo": "fbneo",
-            "rev": "c821b1008e31d40b6d0464f67a3bc0b1a3da4cce",
-            "hash": "sha256-yZimJ1eH5Oi+6+4eMtXppj75awCrPXMiWhalsR+Bfik="
+            "rev": "573c9b99e3cc0b11a652b2f21a22dcb15a2c4dda",
+            "hash": "sha256-MTRv/F68GiEwt5iN4xilTWGgTw2mf2aAvqDExgeN/g0="
         },
-        "version": "unstable-2024-04-20"
+        "version": "unstable-2024-05-07"
     },
     "fceumm": {
         "fetcher": "fetchFromGitHub",
@@ -307,11 +307,11 @@
         "src": {
             "owner": "flyinghead",
             "repo": "flycast",
-            "rev": "8e96590065fd23cd37a0d426d30f4aef6587d860",
-            "hash": "sha256-NUwqrQqrKthxrToGx70uWtSoU0dp2/KlCiinW/fDwnE=",
+            "rev": "f13d7ad2dcf141f59a999090dbc0f78be196e665",
+            "hash": "sha256-YFLSUaEikwLPglHh3t8sHiKHRn5cchKzzkJlZDdgVsU=",
             "fetchSubmodules": true
         },
-        "version": "unstable-2024-04-26"
+        "version": "unstable-2024-05-11"
     },
     "fmsx": {
         "fetcher": "fetchFromGitHub",
@@ -348,20 +348,20 @@
         "src": {
             "owner": "libretro",
             "repo": "gambatte-libretro",
-            "rev": "cbda5ea9fd81d1be0220dfc690d05240655602e4",
-            "hash": "sha256-uLUIFDiPJ5ZSJPezZ24bDfd10AKDCHz4ATm2BBBGs9I="
+            "rev": "a7e645196f5e54904a056e390ac7ceb033037de0",
+            "hash": "sha256-pz/IQpjySByHnRu64Ysd1LJPrcImMQ0CfTRV4ONUsA0="
         },
-        "version": "unstable-2024-03-22"
+        "version": "unstable-2024-05-10"
     },
     "genesis-plus-gx": {
         "fetcher": "fetchFromGitHub",
         "src": {
             "owner": "libretro",
             "repo": "Genesis-Plus-GX",
-            "rev": "4e359c1f9c9a77db726c702c073d82905c24da7f",
-            "hash": "sha256-0DpIk+aV0NCkF5XDhO3FwMnV3J/ZERjCcSL7o1CvBuc="
+            "rev": "ba9fc37cfa4930311a9c77b1d8a23df0cae95e9a",
+            "hash": "sha256-Smw0MoUfewlz0zYQmtFLB0n8l0KyyoInohXZ7d9Xrwk="
         },
-        "version": "unstable-2024-04-26"
+        "version": "unstable-2024-05-10"
     },
     "gpsp": {
         "fetcher": "fetchFromGitHub",
@@ -408,20 +408,21 @@
         "src": {
             "owner": "libretro",
             "repo": "mame",
-            "rev": "90714f5cdefb2024dc34fdf3a62bd0d3815460ce",
-            "hash": "sha256-5Fd57fLIEKxr5KaHywGyHgA29midWpWEFotvudQKtjs="
+            "rev": "1c6d288bf15705ab93c66a11af40eaf9d2a515a2",
+            "hash": "sha256-h5hMfCwoECTyH/VU7IheQg5Jx9skpYrZlA9Xh+4lotQ=",
+            "fetchSubmodules": true
         },
-        "version": "unstable-2024-04-26"
+        "version": "unstable-2024-05-09"
     },
     "mame2000": {
         "fetcher": "fetchFromGitHub",
         "src": {
             "owner": "libretro",
             "repo": "mame2000-libretro",
-            "rev": "1472da3a39ab14fff8325b1f51a1dfdb8eabb5c8",
-            "hash": "sha256-Nd5OqkoMJZ8TzEZGqDT0YX6lHK/H3I5EqJ841PteLi8="
+            "rev": "905808fbcc3adf8c610c1c60f0e41ce4b35db1c5",
+            "hash": "sha256-2J3QGlSb4YhDZND4T0wmt9zzDjOuNiscsMxn9zA1TtI="
         },
-        "version": "unstable-2023-10-31"
+        "version": "unstable-2024-05-07"
     },
     "mame2003": {
         "fetcher": "fetchFromGitHub",
@@ -438,10 +439,10 @@
         "src": {
             "owner": "libretro",
             "repo": "mame2003-plus-libretro",
-            "rev": "d6732ad36aa3adf3198c565d89d763caa308e2e0",
-            "hash": "sha256-r95vwYMXzJec2GsienkPMbY4g305iEaST6kkzS7/hj0="
+            "rev": "11fad92faea0acfd3eb4fd15beced9088caab1fc",
+            "hash": "sha256-ck+zdwiuVw4bhPSdQxEz8a0nj8J6GP7ccvYRZ1WJy8s="
         },
-        "version": "unstable-2024-04-27"
+        "version": "unstable-2024-05-03"
     },
     "mame2010": {
         "fetcher": "fetchFromGitHub",
@@ -600,10 +601,10 @@
         "src": {
             "owner": "libretro",
             "repo": "opera-libretro",
-            "rev": "cacba231c3bd71833f06943e230fe03d8ebec0ab",
-            "hash": "sha256-pWLcolQw5ctWrL7YQUaUK04QPS4ReUeJhdig3O5T8BM="
+            "rev": "5121aa6d36eff884bd56ccbadb6c112f1e951fee",
+            "hash": "sha256-mD/BEUwbWmRtB9llsqhz+/DhrzH9HiuXyJkX0pBks5M="
         },
-        "version": "unstable-2024-04-24"
+        "version": "unstable-2024-05-06"
     },
     "parallel-n64": {
         "fetcher": "fetchFromGitHub",
@@ -651,32 +652,32 @@
         "src": {
             "owner": "jpd002",
             "repo": "Play-",
-            "rev": "07c1898303a9af41f5e91172b6b73ddf2f97b984",
-            "hash": "sha256-lOeoIHSahWoLxmLje1XwFc9wOVbDDUwIuE7BuSU5QSU=",
+            "rev": "700a44a1548d099705c901203414724518c90d43",
+            "hash": "sha256-OZO8vVA2B/SdckC2Rm/v35cdJDzkpdU9lJhFYEyyl1U=",
             "fetchSubmodules": true
         },
-        "version": "unstable-2024-04-17"
+        "version": "unstable-2024-05-05"
     },
     "ppsspp": {
         "fetcher": "fetchFromGitHub",
         "src": {
             "owner": "hrydgard",
             "repo": "ppsspp",
-            "rev": "1786a4ddb097f7df1c75b55b4c4b163032614371",
-            "hash": "sha256-nAyGfgSfcJ4dF5oF3FHy+aqzabf9wUOiP0w+GIY1svg=",
+            "rev": "60ffd07116d0a2e07db141db8414524138b6f035",
+            "hash": "sha256-tkIbsYjQRoV9A8NIDMJCRnHd+NCPycqrPu6JRjF6dHs=",
             "fetchSubmodules": true
         },
-        "version": "unstable-2024-04-20"
+        "version": "unstable-2024-05-03"
     },
     "prboom": {
         "fetcher": "fetchFromGitHub",
         "src": {
             "owner": "libretro",
             "repo": "libretro-prboom",
-            "rev": "6ec854969fd9dec33bb2cab350f05675d1158969",
-            "hash": "sha256-y0qZwYNwcO4ofWDZ7UXN9ZVMPFxjCnLDDZKBMdZLxEY="
+            "rev": "ab05295d81fed2bb9db9f68a7ceeec7a544191d8",
+            "hash": "sha256-ekVVxYg+Uet3pfir6P7PwI87p5XF2ATbFbux1t38ETs="
         },
-        "version": "unstable-2023-05-28"
+        "version": "unstable-2024-05-07"
     },
     "prosystem": {
         "fetcher": "fetchFromGitHub",
@@ -693,10 +694,10 @@
         "src": {
             "owner": "libretro",
             "repo": "libretro-uae",
-            "rev": "4806716da70cf1f030788b43190d71aae61e2041",
-            "hash": "sha256-MNqk8ItSC//82HsRfXVYCH+Xd2GV8OA/2heZprx89PY="
+            "rev": "106b98d50dab4b5648067096f0ba54acbf713fd3",
+            "hash": "sha256-UtZETlFrK59P6IK2i9Kt8qxRV8aEDMqxH7Oigm5sc1g="
         },
-        "version": "unstable-2024-04-19"
+        "version": "unstable-2024-05-04"
     },
     "quicknes": {
         "fetcher": "fetchFromGitHub",
@@ -753,10 +754,10 @@
         "src": {
             "owner": "snes9xgit",
             "repo": "snes9x",
-            "rev": "af4ec50b16f267245350ab099dde62a38aec66bd",
-            "hash": "sha256-B9F1mn2Hd23OO3bK21Fj5hQXX+fnnoeVJAkE0mO+9jI="
+            "rev": "771b0ffc3792ffeca10baa88d6a62e3889060236",
+            "hash": "sha256-U8O4u6gD8jopqzwcnWy9xLSuuBjMSq5nhncSQmrIePs="
         },
-        "version": "unstable-2024-04-25"
+        "version": "unstable-2024-05-01"
     },
     "snes9x2002": {
         "fetcher": "fetchFromGitHub",
@@ -793,10 +794,10 @@
         "src": {
             "owner": "stella-emu",
             "repo": "stella",
-            "rev": "09be43c5060b7f23eeb413aa3d7a7021e9a6566c",
-            "hash": "sha256-jxvX9YAgUVe/92AbwXwgOqJmfoH7t8QxnrrGoXzjFZs="
+            "rev": "68e671169f11373e00c88b24d7b319a42b69a715",
+            "hash": "sha256-WpkUbnYaohP6rDKYi3pPdDxGfW9f7d1QjhJVSBzqLjc="
         },
-        "version": "unstable-2024-04-04"
+        "version": "unstable-2024-05-03"
     },
     "stella2014": {
         "fetcher": "fetchFromGitHub",
@@ -813,10 +814,10 @@
         "src": {
             "owner": "libretro",
             "repo": "swanstation",
-            "rev": "6ed491d6ba46ac8ba64a580b3004a163c0725bd2",
-            "hash": "sha256-JRo1+zFBBtO0Ws7x32bltcm5WoDSIZBgLdPl75lpKAo="
+            "rev": "929958a1acaa075e32e108118b550e0449540cb6",
+            "hash": "sha256-UofVxdi+e1Y9d0ML/8lGahJCx5xnW5j9oDssRKrxYLU="
         },
-        "version": "unstable-2024-04-26"
+        "version": "unstable-2024-05-06"
     },
     "tgbdual": {
         "fetcher": "fetchFromGitHub",
diff --git a/pkgs/applications/emulators/retroarch/update_cores.py b/pkgs/applications/emulators/retroarch/update_cores.py
index 3b4ee5f77692..4e15315ce726 100755
--- a/pkgs/applications/emulators/retroarch/update_cores.py
+++ b/pkgs/applications/emulators/retroarch/update_cores.py
@@ -1,5 +1,5 @@
 #!/usr/bin/env nix-shell
-#!nix-shell -I nixpkgs=./ -i python3 -p "python3.withPackages (ps: with ps; [ ])" -p git -p nix-prefetch-github -p nix-prefetch-scripts
+#!nix-shell -I nixpkgs=./ -i python3 -p "python3.withPackages (ps: with ps; [ ])" -p git -p nix-prefetch-github -p nix-prefetch-git -p nix-prefetch-scripts
 
 import json
 import os
@@ -69,7 +69,11 @@ CORES = {
     "gw": {"repo": "gw-libretro"},
     "handy": {"repo": "libretro-handy"},
     "hatari": {"repo": "hatari"},
-    "mame": {"repo": "mame"},
+    # Setting fetch_submodules=True since libretro/mame constantly gives
+    # different hashes for its tarballs, see:
+    # - https://github.com/NixOS/nixpkgs/issues/259488#issuecomment-1751768379
+    # - https://github.com/NixOS/nixpkgs/pull/303494
+    "mame": {"repo": "mame", "fetch_submodules": True},
     "mame2000": {"repo": "mame2000-libretro"},
     "mame2003": {"repo": "mame2003-libretro"},
     "mame2003-plus": {"repo": "mame2003-plus-libretro"},
diff --git a/pkgs/applications/emulators/ruffle/default.nix b/pkgs/applications/emulators/ruffle/default.nix
index 0f5501508afb..d0ba464858b3 100644
--- a/pkgs/applications/emulators/ruffle/default.nix
+++ b/pkgs/applications/emulators/ruffle/default.nix
@@ -13,7 +13,7 @@
 , jre_minimal
 , cairo
 , gtk3
-, wrapGAppsHook
+, wrapGAppsHook3
 , gsettings-desktop-schemas
 , glib
 , libxkbcommon
@@ -37,7 +37,7 @@ rustPlatform.buildRustPackage rec {
     makeWrapper
     pkg-config
     python3
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
diff --git a/pkgs/applications/emulators/sameboy/default.nix b/pkgs/applications/emulators/sameboy/default.nix
index 09d0136c6d88..643092b0a06b 100644
--- a/pkgs/applications/emulators/sameboy/default.nix
+++ b/pkgs/applications/emulators/sameboy/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetchFromGitHub, gtk3, rgbds, SDL2, wrapGAppsHook, glib }:
+{ lib, stdenv, fetchFromGitHub, gtk3, rgbds, SDL2, wrapGAppsHook3, glib }:
 
 stdenv.mkDerivation rec {
   pname = "sameboy";
@@ -12,8 +12,8 @@ stdenv.mkDerivation rec {
   };
 
   enableParallelBuilding = true;
-  # glib and wrapGAppsHook are needed to make the Open ROM menu work.
-  nativeBuildInputs = [ rgbds glib wrapGAppsHook ];
+  # glib and wrapGAppsHook3 are needed to make the Open ROM menu work.
+  nativeBuildInputs = [ rgbds glib wrapGAppsHook3 ];
   buildInputs = [ SDL2 ];
 
   makeFlags = [
diff --git a/pkgs/applications/emulators/vbam/default.nix b/pkgs/applications/emulators/vbam/default.nix
index 80fd7636aacb..3e7a7e2f47cd 100644
--- a/pkgs/applications/emulators/vbam/default.nix
+++ b/pkgs/applications/emulators/vbam/default.nix
@@ -14,6 +14,8 @@
 , sfml
 , zip
 , zlib
+, wrapGAppsHook3
+, gsettings-desktop-schemas
 }:
 
 stdenv.mkDerivation rec {
@@ -26,7 +28,7 @@ stdenv.mkDerivation rec {
     sha256 = "sha256-t5/CM5KXDG0OCByu7mUyuC5NkYmB3BFmEHHgnMY05nE=";
   };
 
-  nativeBuildInputs = [ cmake pkg-config ];
+  nativeBuildInputs = [ cmake pkg-config wrapGAppsHook3 ];
 
   buildInputs = [
     cairo
@@ -41,6 +43,7 @@ stdenv.mkDerivation rec {
     zlib
     wxGTK32
     gtk3
+    gsettings-desktop-schemas
   ];
 
   cmakeFlags = [
@@ -56,5 +59,6 @@ stdenv.mkDerivation rec {
     maintainers = with maintainers; [ lassulus netali ];
     homepage = "https://vba-m.com/";
     platforms = lib.platforms.linux;
+    mainProgram = "visualboyadvance-m";
   };
 }
diff --git a/pkgs/applications/emulators/vice/default.nix b/pkgs/applications/emulators/vice/default.nix
index 7b3a12a4131d..cea0f48d0166 100644
--- a/pkgs/applications/emulators/vice/default.nix
+++ b/pkgs/applications/emulators/vice/default.nix
@@ -20,7 +20,7 @@
 , runtimeShell
 , xa
 , file
-, wrapGAppsHook
+, wrapGAppsHook3
 , xdg-utils
 }:
 
@@ -39,7 +39,7 @@ stdenv.mkDerivation rec {
     file
     flex
     pkg-config
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
diff --git a/pkgs/applications/emulators/wine/base.nix b/pkgs/applications/emulators/wine/base.nix
index b290a324f970..1c62a9aad97d 100644
--- a/pkgs/applications/emulators/wine/base.nix
+++ b/pkgs/applications/emulators/wine/base.nix
@@ -12,10 +12,9 @@
 with import ./util.nix { inherit lib; };
 
 let
-  patches' = patches;
   prevName = pname;
-  prevPlatforms = platforms;
   prevConfigFlags = configureFlags;
+
   setupHookDarwin = makeSetupHook {
     name = "darwin-mingw-hook";
     substitutions = {
@@ -23,30 +22,37 @@ let
       mingwGccsSuffixSalts = map (gcc: gcc.suffixSalt) mingwGccs;
     };
   } ./setup-hook-darwin.sh;
-  darwinUnsupportedFlags = [ "alsaSupport" "cairoSupport" "dbusSupport" "fontconfigSupport" "gtkSupport" "netapiSupport" "pulseaudioSupport" "udevSupport" "v4lSupport" "vaSupport" "waylandSupport" "x11Support" "xineramaSupport" ];
-  darwinUnsupported = builtins.any (name: builtins.getAttr name supportFlags) darwinUnsupportedFlags;
+
+  darwinFrameworks = lib.optionals stdenv.isDarwin (
+    toBuildInputs pkgArches (pkgs: with pkgs.buildPackages.darwin.apple_sdk.frameworks; [
+      CoreServices Foundation ForceFeedback AppKit OpenGL IOKit DiskArbitration PCSC Security
+      ApplicationServices AudioToolbox CoreAudio AudioUnit CoreMIDI OpenCL Cocoa Carbon
+    ])
+  );
+  # Building Wine with these flags isn’t supported on Darwin. Using any of them will result in an evaluation failures
+  # because they will put Darwin in `meta.badPlatforms`.
+  darwinUnsupportedFlags = [
+    "alsaSupport" "cairoSupport" "dbusSupport" "fontconfigSupport" "gtkSupport" "netapiSupport" "pulseaudioSupport"
+    "udevSupport" "v4lSupport" "vaSupport" "waylandSupport" "x11Support" "xineramaSupport"
+  ];
+
+  badPlatforms = lib.optional (!supportFlags.mingwSupport || lib.any (flag: supportFlags.${flag}) darwinUnsupportedFlags) "x86_64-darwin";
 in
-stdenv.mkDerivation ((lib.optionalAttrs (buildScript != null) {
-  builder = buildScript;
-}) // (lib.optionalAttrs stdenv.isDarwin {
-  postConfigure = ''
-    # dynamic fallback, so this shouldn’t cause problems for older versions of macOS and will
-    # provide additional functionality on newer ones. This can be removed once the x86_64-darwin
-    # SDK is updated.
-    sed 's|/\* #undef HAVE_MTLDEVICE_REGISTRYID \*/|#define HAVE_MTLDEVICE_REGISTRYID 1|' \
-      -i include/config.h
-  '';
-  postBuild = ''
-    # The Wine preloader must _not_ be linked to any system libraries, but `NIX_LDFLAGS` will link
-    # to libintl, libiconv, and CoreFoundation no matter what. Delete the one that was built and
-    # rebuild it with empty NIX_LDFLAGS.
-    for preloader in wine-preloader wine64-preloader; do
-      rm loader/$preloader &> /dev/null \
-      && ( echo "Relinking loader/$preloader"; make loader/$preloader NIX_LDFLAGS="" NIX_LDFLAGS_${stdenv.cc.suffixSalt}="" ) \
-      || echo "loader/$preloader not built, skipping relink."
-    done
-  '';
-}) // rec {
+stdenv.mkDerivation (finalAttrs:
+lib.optionalAttrs (buildScript != null) { builder = buildScript; }
+// lib.optionalAttrs stdenv.isDarwin {
+    postBuild = ''
+      # The Wine preloader must _not_ be linked to any system libraries, but `NIX_LDFLAGS` will link
+      # to libintl, libiconv, and CoreFoundation no matter what. Delete the one that was built and
+      # rebuild it with empty NIX_LDFLAGS.
+      for preloader in wine-preloader wine64-preloader; do
+        rm loader/$preloader &> /dev/null \
+        && ( echo "Relinking loader/$preloader"; make loader/$preloader NIX_LDFLAGS="" NIX_LDFLAGS_${stdenv.cc.suffixSalt}="" ) \
+        || echo "loader/$preloader not built, skipping relink."
+      done
+    '';
+}
+// {
   inherit version src;
 
   pname = prevName + lib.optionalString (wineRelease != "stable" && wineRelease != "unstable") "-${wineRelease}";
@@ -95,10 +101,7 @@ stdenv.mkDerivation ((lib.optionalAttrs (buildScript != null) {
   ++ lib.optionals openclSupport [ pkgs.opencl-headers pkgs.ocl-icd ]
   ++ lib.optionals tlsSupport    [ pkgs.openssl pkgs.gnutls ]
   ++ lib.optionals (openglSupport && !stdenv.isDarwin) [ pkgs.libGLU pkgs.libGL pkgs.mesa.osmesa pkgs.libdrm ]
-  ++ lib.optionals stdenv.isDarwin (with pkgs.buildPackages.darwin.apple_sdk.frameworks; [
-     CoreServices Foundation ForceFeedback AppKit OpenGL IOKit DiskArbitration PCSC Security
-     ApplicationServices AudioToolbox CoreAudio AudioUnit CoreMIDI OpenCL Cocoa Carbon
-  ])
+  ++ lib.optionals stdenv.isDarwin darwinFrameworks
   ++ lib.optionals (x11Support) (with pkgs.xorg; [
     libX11 libXcomposite libXcursor libXext libXfixes libXi libXrandr libXrender libXxf86vm
   ])
@@ -107,29 +110,7 @@ stdenv.mkDerivation ((lib.optionalAttrs (buildScript != null) {
      mesa # for libgbm
   ])));
 
-  patches = [ ]
-    ++ lib.optionals stdenv.isDarwin [
-      # Wine uses `MTLDevice.registryID` in `winemac.drv`, but that property is not available in
-      # the 10.12 SDK (current SDK on x86_64-darwin). That can be worked around by using selector
-      # syntax. As of Wine 8.12, the logic has changed and uses selector syntax, but it still
-      # uses property syntax in one place. The first patch is necessary only with older
-      # versions of Wine. The second is needed on all versions of Wine.
-      (lib.optional (lib.versionOlder version "8.12") ./darwin-metal-compat-pre8.12.patch)
-      (lib.optional (lib.versionOlder version "8.18") ./darwin-metal-compat-pre8.18.patch)
-      (lib.optional (lib.versionAtLeast version "8.18") ./darwin-metal-compat.patch)
-      # Wine requires `qos.h`, which is not included by default on the 10.12 SDK in nixpkgs.
-      ./darwin-qos.patch
-    ]
-    ++ patches';
-
-  # Because the 10.12 SDK doesn’t define `registryID`, clang assumes the undefined selector returns
-  # `id`, which is a pointer. This causes implicit pointer to integer errors in clang 15+.
-  # The following post-processing step adds a cast to `uint64_t` before the selector invocation to
-  # silence these errors.
-  postPatch = lib.optionalString stdenv.isDarwin ''
-    sed -e 's|\(\[[A-Za-z_][][A-Za-z_0-9]* registryID\]\)|(uint64_t)\1|' \
-      -i dlls/winemac.drv/cocoa_display.m
-  '';
+  inherit patches;
 
   configureFlags = prevConfigFlags
     ++ lib.optionals supportFlags.waylandSupport [ "--with-wayland" ]
@@ -140,7 +121,9 @@ stdenv.mkDerivation ((lib.optionalAttrs (buildScript != null) {
   # them to the RPATH so that the user doesn't have to set them in
   # LD_LIBRARY_PATH.
   NIX_LDFLAGS = toString (map (path: "-rpath " + path) (
-      map (x: "${lib.getLib x}/lib") ([ stdenv.cc.cc ] ++ buildInputs)
+      map (x: "${lib.getLib x}/lib") ([ stdenv.cc.cc ]
+        # Avoid adding rpath references to non-existent framework `lib` paths.
+        ++ lib.subtractLists darwinFrameworks finalAttrs.buildInputs)
       # libpulsecommon.so is linked but not found otherwise
       ++ lib.optionals supportFlags.pulseaudioSupport (map (x: "${lib.getLib x}/lib/pulseaudio")
           (toBuildInputs pkgArches (pkgs: [ pkgs.libpulseaudio ])))
@@ -210,9 +193,8 @@ stdenv.mkDerivation ((lib.optionalAttrs (buildScript != null) {
       fromSource
       binaryNativeCode  # mono, gecko
     ];
-    broken = stdenv.isDarwin && !supportFlags.mingwSupport;
     description = "An Open Source implementation of the Windows API on top of X, OpenGL, and Unix";
-    platforms = if darwinUnsupported then (lib.remove "x86_64-darwin" prevPlatforms) else prevPlatforms;
+    inherit badPlatforms platforms;
     maintainers = with lib.maintainers; [ avnik raskin bendlas jmc-figueira reckenrode ];
     inherit mainProgram;
   };
diff --git a/pkgs/applications/emulators/wine/darwin-metal-compat-pre8.12.patch b/pkgs/applications/emulators/wine/darwin-metal-compat-pre8.12.patch
deleted file mode 100644
index aaf8a1b89bfd..000000000000
--- a/pkgs/applications/emulators/wine/darwin-metal-compat-pre8.12.patch
+++ /dev/null
@@ -1,22 +0,0 @@
-diff --git a/dlls/winemac.drv/cocoa_display.m b/dlls/winemac.drv/cocoa_display.m
---- a/dlls/winemac.drv/cocoa_display.m
-+++ b/dlls/winemac.drv/cocoa_display.m
-@@ -289,7 +289,7 @@ static int macdrv_get_gpus_from_metal(struct macdrv_gpu** new_gpus, int* count)
-      * the primary GPU because we need to hide the integrated GPU for an automatic graphic switching pair to avoid apps
-      * using the integrated GPU. This is the behavior of Windows on a Mac. */
-     primary_device = [MTLCreateSystemDefaultDevice() autorelease];
--    if (macdrv_get_gpu_info_from_registry_id(&primary_gpu, primary_device.registryID))
-+    if (macdrv_get_gpu_info_from_registry_id(&primary_gpu, [primary_device registryID]))
-         goto done;
-
-     /* Hide the integrated GPU if the system default device is a dedicated GPU */
-@@ -301,7 +301,7 @@ static int macdrv_get_gpus_from_metal(struct macdrv_gpu** new_gpus, int* count)
-
-     for (i = 0; i < devices.count; i++)
-     {
--        if (macdrv_get_gpu_info_from_registry_id(&gpus[gpu_count], devices[i].registryID))
-+        if (macdrv_get_gpu_info_from_registry_id(&gpus[gpu_count], [devices[i] registryID]))
-             goto done;
-
-         if (hide_integrated && devices[i].isLowPower)
-
diff --git a/pkgs/applications/emulators/wine/darwin-metal-compat-pre8.18.patch b/pkgs/applications/emulators/wine/darwin-metal-compat-pre8.18.patch
deleted file mode 100644
index 181b2a0d1a47..000000000000
--- a/pkgs/applications/emulators/wine/darwin-metal-compat-pre8.18.patch
+++ /dev/null
@@ -1,12 +0,0 @@
-diff --git a/dlls/winemac.drv/cocoa_display.m b/dlls/winemac.drv/cocoa_display.m
---- a/dlls/winemac.drv/cocoa_display.m
-+++ b/dlls/winemac.drv/cocoa_display.m
-@@ -354,7 +354,7 @@ static int macdrv_get_gpu_info_from_display_id_using_metal(struct macdrv_gpu* gp
- 
-     device = [CGDirectDisplayCopyCurrentMetalDevice(display_id) autorelease];
-     if (device && [device respondsToSelector:@selector(registryID)])
--        ret = macdrv_get_gpu_info_from_registry_id(gpu, device.registryID);
-+        ret = macdrv_get_gpu_info_from_registry_id(gpu, [device registryID]);
- 
- done:
-     [pool release];
diff --git a/pkgs/applications/emulators/wine/darwin-metal-compat.patch b/pkgs/applications/emulators/wine/darwin-metal-compat.patch
deleted file mode 100644
index 8176be8ef383..000000000000
--- a/pkgs/applications/emulators/wine/darwin-metal-compat.patch
+++ /dev/null
@@ -1,13 +0,0 @@
-diff --git a/dlls/winemac.drv/cocoa_display.m b/dlls/winemac.drv/cocoa_display.m
-index fbbe16efcbf..2db375ff3d5 100644
---- a/dlls/winemac.drv/cocoa_display.m
-+++ b/dlls/winemac.drv/cocoa_display.m
-@@ -387,7 +387,7 @@ static int macdrv_get_gpu_info_from_display_id_using_metal(struct macdrv_gpu* gp
- 
-     device = [CGDirectDisplayCopyCurrentMetalDevice(display_id) autorelease];
-     if (device && [device respondsToSelector:@selector(registryID)])
--        return macdrv_get_gpu_info_from_registry_id(gpu, device.registryID);
-+        return macdrv_get_gpu_info_from_registry_id(gpu, [device registryID]);
-     else
-         return -1;
- }
diff --git a/pkgs/applications/emulators/wine/darwin-qos.patch b/pkgs/applications/emulators/wine/darwin-qos.patch
deleted file mode 100644
index e9bd813feaab..000000000000
--- a/pkgs/applications/emulators/wine/darwin-qos.patch
+++ /dev/null
@@ -1,12 +0,0 @@
-diff --git a/dlls/ntdll/unix/loader.c b/dlls/ntdll/unix/loader.c
-index cde37c48b0d..be237bc0ad3 100644
---- a/dlls/ntdll/unix/loader.c
-+++ b/dlls/ntdll/unix/loader.c
-@@ -65,6 +65,7 @@
- # undef LoadResource
- # undef GetCurrentThread
- # include <pthread.h>
-+# include <pthread/qos.h>
- # include <mach/mach.h>
- # include <mach/mach_error.h>
- # include <mach-o/getsect.h>
diff --git a/pkgs/applications/emulators/wine/sources.nix b/pkgs/applications/emulators/wine/sources.nix
index 9ee1f53601a3..62fc12dd4eaf 100644
--- a/pkgs/applications/emulators/wine/sources.nix
+++ b/pkgs/applications/emulators/wine/sources.nix
@@ -69,9 +69,9 @@ in rec {
 
   unstable = fetchurl rec {
     # NOTE: Don't forget to change the hash for staging as well.
-    version = "9.7";
+    version = "9.8";
     url = "https://dl.winehq.org/wine/source/9.x/wine-${version}.tar.xz";
-    hash = "sha256-2fPDM2VuiL1M71Mx80sci2nJZKUnWe73RdjdrlGhU1M=";
+    hash = "sha256-hpQ8g47aj62aeUDUCZcDOUvx0b6aEBQ0L+2HnH3DuZM=";
     inherit (stable) patches;
 
     ## see http://wiki.winehq.org/Gecko
@@ -117,7 +117,7 @@ in rec {
   staging = fetchFromGitLab rec {
     # https://gitlab.winehq.org/wine/wine-staging
     inherit (unstable) version;
-    hash = "sha256-KU6i1P81Fr+4aZH/SJ+YibaIfX88SZMPdPcGS2mT2CE=";
+    hash = "sha256-c69E+jr5DKdD8JJxQhM3ILJgvmGvOe54FqMghcVPkpg=";
     domain = "gitlab.winehq.org";
     owner = "wine";
     repo = "wine-staging";
diff --git a/pkgs/applications/emulators/wine/staging.nix b/pkgs/applications/emulators/wine/staging.nix
index 0a99e6d42a87..56525d4fa067 100644
--- a/pkgs/applications/emulators/wine/staging.nix
+++ b/pkgs/applications/emulators/wine/staging.nix
@@ -1,4 +1,4 @@
-{ lib, callPackage, autoconf, hexdump, perl, python3, wineUnstable }:
+{ lib, stdenv, callPackage, autoconf, hexdump, perl, python3, wineUnstable }:
 
 with callPackage ./util.nix {};
 
@@ -7,8 +7,8 @@ let patch = (callPackage ./sources.nix {}).staging;
       (mkBuildInputs wineUnstable.pkgArches pkgNames) ++ extra;
 in assert lib.versions.majorMinor wineUnstable.version == lib.versions.majorMinor patch.version;
 
-(lib.overrideDerivation (wineUnstable.override { wineRelease = "staging"; }) (self: {
-  buildInputs = build-inputs [ "perl" "util-linux" "autoconf" "gitMinimal" ] self.buildInputs;
+(wineUnstable.override { wineRelease = "staging"; }).overrideAttrs (self: {
+  buildInputs = build-inputs ([ "perl" "autoconf" "gitMinimal" ] ++ lib.optional stdenv.isLinux "util-linux") self.buildInputs;
   nativeBuildInputs = [ autoconf hexdump perl python3 ] ++ self.nativeBuildInputs;
 
   prePatch = self.prePatch or "" + ''
@@ -18,7 +18,7 @@ in assert lib.versions.majorMinor wineUnstable.version == lib.versions.majorMino
     patchShebangs ./patches/gitapply.sh
     python3 ./staging/patchinstall.py DESTDIR="$PWD" --all ${lib.concatMapStringsSep " " (ps: "-W ${ps}") patch.disabledPatchsets}
   '';
-})) // {
+}) // {
   meta = wineUnstable.meta // {
     description = wineUnstable.meta.description + " (with staging patches)";
   };
diff --git a/pkgs/applications/file-managers/krusader/default.nix b/pkgs/applications/file-managers/krusader/default.nix
index fe0d596f4122..0df5ed386c43 100644
--- a/pkgs/applications/file-managers/krusader/default.nix
+++ b/pkgs/applications/file-managers/krusader/default.nix
@@ -3,7 +3,7 @@
 , fetchurl
 , extra-cmake-modules
 , kdoctools
-, wrapGAppsHook
+, wrapGAppsHook3
 , karchive
 , kconfig
 , kcrash
@@ -30,7 +30,7 @@ mkDerivation rec {
   nativeBuildInputs = [
     extra-cmake-modules
     kdoctools
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   propagatedBuildInputs = [
diff --git a/pkgs/applications/file-managers/pcmanfm/default.nix b/pkgs/applications/file-managers/pcmanfm/default.nix
index bfbe68d885e6..5c614fdede9f 100644
--- a/pkgs/applications/file-managers/pcmanfm/default.nix
+++ b/pkgs/applications/file-managers/pcmanfm/default.nix
@@ -7,7 +7,7 @@
 , libX11
 , pango
 , pkg-config
-, wrapGAppsHook
+, wrapGAppsHook3
 , gnome
 , withGtk3 ? true
 , gtk2
@@ -29,7 +29,7 @@ stdenv.mkDerivation rec {
   };
 
   buildInputs = [ glib gtk libfm' libX11 pango gnome.adwaita-icon-theme ];
-  nativeBuildInputs = [ pkg-config wrapGAppsHook intltool ];
+  nativeBuildInputs = [ pkg-config wrapGAppsHook3 intltool ];
 
   configureFlags = optional withGtk3 "--with-gtk=3";
 
diff --git a/pkgs/applications/file-managers/spacefm/default.nix b/pkgs/applications/file-managers/spacefm/default.nix
index 1cab33edb944..4de3580c1df3 100644
--- a/pkgs/applications/file-managers/spacefm/default.nix
+++ b/pkgs/applications/file-managers/spacefm/default.nix
@@ -1,5 +1,5 @@
 { pkgs, fetchFromGitHub, lib, stdenv, gtk3, udev, desktop-file-utils
-, shared-mime-info, intltool, pkg-config, wrapGAppsHook, ffmpegthumbnailer
+, shared-mime-info, intltool, pkg-config, wrapGAppsHook3, ffmpegthumbnailer
 , jmtpfs, ifuseSupport ? false, ifuse ? null, lsof, udisks2 }:
 
 stdenv.mkDerivation rec {
@@ -48,7 +48,7 @@ stdenv.mkDerivation rec {
   nativeBuildInputs = [ pkg-config intltool ];
   buildInputs = [
     gtk3 udev desktop-file-utils shared-mime-info
-    wrapGAppsHook ffmpegthumbnailer jmtpfs lsof udisks2
+    wrapGAppsHook3 ffmpegthumbnailer jmtpfs lsof udisks2
   ] ++ (lib.optionals ifuseSupport [ ifuse ]);
   # Introduced because ifuse doesn't build due to CVEs in libplist
   # Revert when libplist builds again…
diff --git a/pkgs/applications/finance/irpf/default.nix b/pkgs/applications/finance/irpf/default.nix
index b693aee613f7..9bf9c1f2d0cc 100644
--- a/pkgs/applications/finance/irpf/default.nix
+++ b/pkgs/applications/finance/irpf/default.nix
@@ -11,7 +11,7 @@
 
 stdenvNoCC.mkDerivation rec {
   pname = "irpf";
-  version = "2024-1.0";
+  version = "2024-1.1";
 
   # https://www.gov.br/receitafederal/pt-br/centrais-de-conteudo/download/pgd/dirpf
   # Para outros sistemas operacionais -> Multi
@@ -19,7 +19,7 @@ stdenvNoCC.mkDerivation rec {
     year = lib.head (lib.splitVersion version);
   in fetchzip {
     url = "https://downloadirpf.receita.fazenda.gov.br/irpf/${year}/irpf/arquivos/IRPF${version}.zip";
-    hash = "sha256-x47Ud/aSfPuZYMZSGhJLnNFtNE62I+WjaFFatJPMPYg=";
+    hash = "sha256-7Eh5XhZKs2DAQC33ICUG+mgjEU7H3jdYZSeiHNJ6I6Q=";
   };
 
   nativeBuildInputs = [ unzip makeWrapper copyDesktopItems ];
@@ -71,7 +71,7 @@ stdenvNoCC.mkDerivation rec {
     license = licenses.unfree;
     platforms = platforms.all;
     sourceProvenance = with sourceTypes; [ binaryBytecode ];
-    maintainers = with maintainers; [ atila ];
+    maintainers = with maintainers; [ atila bryanasdev000 ];
     mainProgram = "irpf";
   };
 }
diff --git a/pkgs/applications/gis/grass/default.nix b/pkgs/applications/gis/grass/default.nix
index 9dc83fdf2397..4eb10a34d2e2 100644
--- a/pkgs/applications/gis/grass/default.nix
+++ b/pkgs/applications/gis/grass/default.nix
@@ -3,7 +3,7 @@
 , callPackage
 , fetchFromGitHub
 , makeWrapper
-, wrapGAppsHook
+, wrapGAppsHook3
 
 , bison
 , blas
@@ -44,7 +44,7 @@ stdenv.mkDerivation (finalAttrs: {
 
   nativeBuildInputs = [
     makeWrapper
-    wrapGAppsHook
+    wrapGAppsHook3
 
     bison
     flex
diff --git a/pkgs/applications/gis/qgis/unwrapped-ltr.nix b/pkgs/applications/gis/qgis/unwrapped-ltr.nix
index 3476816b1c23..bc0033746b19 100644
--- a/pkgs/applications/gis/qgis/unwrapped-ltr.nix
+++ b/pkgs/applications/gis/qgis/unwrapped-ltr.nix
@@ -3,7 +3,7 @@
 , makeWrapper
 , mkDerivation
 , substituteAll
-, wrapGAppsHook
+, wrapGAppsHook3
 , wrapQtAppsHook
 
 , withGrass ? true
@@ -94,7 +94,7 @@ in mkDerivation rec {
 
   nativeBuildInputs = [
     makeWrapper
-    wrapGAppsHook
+    wrapGAppsHook3
     wrapQtAppsHook
 
     bison
diff --git a/pkgs/applications/gis/qgis/unwrapped.nix b/pkgs/applications/gis/qgis/unwrapped.nix
index d112ed50a0d5..0cea5f998009 100644
--- a/pkgs/applications/gis/qgis/unwrapped.nix
+++ b/pkgs/applications/gis/qgis/unwrapped.nix
@@ -3,7 +3,7 @@
 , makeWrapper
 , mkDerivation
 , substituteAll
-, wrapGAppsHook
+, wrapGAppsHook3
 , wrapQtAppsHook
 
 , withGrass ? true
@@ -95,7 +95,7 @@ in mkDerivation rec {
 
   nativeBuildInputs = [
     makeWrapper
-    wrapGAppsHook
+    wrapGAppsHook3
     wrapQtAppsHook
 
     bison
diff --git a/pkgs/applications/gis/zombietrackergps/default.nix b/pkgs/applications/gis/zombietrackergps/default.nix
index 47a4329ae19d..4acedbac2a2f 100644
--- a/pkgs/applications/gis/zombietrackergps/default.nix
+++ b/pkgs/applications/gis/zombietrackergps/default.nix
@@ -1,67 +1,61 @@
-{ mkDerivation
-, lib
-, fetchFromGitLab
-, qmake
-, qtcharts
-, qtsvg
-, marble
-, qtwebengine
-, ldutils
+{
+  mkDerivation,
+  lib,
+  fetchFromGitLab,
+  gitUpdater,
+  wrapQtAppsHook,
+  cmake,
+  marble,
+  libsForQt5,
 }:
-
 mkDerivation rec {
   pname = "zombietrackergps";
-  version = "1.10";
+  version = "1.15";
 
   src = fetchFromGitLab {
     owner = "ldutils-projects";
     repo = pname;
-    rev = "v_${version}";
-    sha256 = "sha256-qRhCAOVWyDLD3WDptPRQVq+VwyFu83XQNaL5TMsGs4Y=";
+    # latest revision is not tagged upstream, use commit sha in the meantime
+    #rev = "v_${version}";
+    rev = "cc75d5744965cc6973323f5bb77f00b0b0153dce";
+    sha256 = "sha256-z/LFNRFdQQFxEWyAjcuGezRbTsv8z6Q6fK8NLjP4HNM=";
   };
 
-  buildInputs = [
-    ldutils
-    qtcharts
-    qtsvg
-    marble.dev
-    qtwebengine
-  ];
+  buildInputs =
+    [
+      marble.dev
+    ]
+    ++ (with libsForQt5; [
+      qtbase
+      qtcharts
+      qtsvg
+      qtwebengine
+      ldutils
+    ]);
 
   nativeBuildInputs = [
-    qmake
+    cmake
+    wrapQtAppsHook
   ];
 
-  prePatch = ''
-    substituteInPlace ztgps.pro --replace "../libldutils" "libldutils"
-    substituteInPlace tests.pro --replace "../libldutils" "libldutils"
-
-    ln -s ${ldutils} libldutils
-  '';
-
   preConfigure = ''
     export LANG=en_US.UTF-8
-    export INSTALL_ROOT=$out
   '';
 
-  preInstall = ''
-    substituteInPlace Makefile.ztgps --replace '$(INSTALL_ROOT)' ""
-    substituteInPlace Makefile.art --replace '$(INSTALL_ROOT)' ""
-  '';
-
-  postInstall = ''
-    install -Dm644 build/rcc/*.rcc -t $out/share/zombietrackergps
-  '';
+  cmakeFlags = [
+    "-DLDUTILS_ROOT=${libsForQt5.ldutils}"
+  ];
 
-  qmakeFlags = [ "ZombieTrackerGPS.pro" ];
+  passthru.updateScript = gitUpdater {
+    rev-prefix = "v_";
+  };
 
   meta = with lib; {
     description = "GPS track manager for Qt using KDE Marble maps";
     homepage = "https://www.zombietrackergps.net/ztgps/";
     changelog = "https://www.zombietrackergps.net/ztgps/history.html";
     license = licenses.gpl3Plus;
-    maintainers = with maintainers; [ sohalt ];
+    maintainers = with maintainers; [sohalt];
     platforms = platforms.linux;
-    broken = true;  # doesn't build with latest Marble
   };
 }
diff --git a/pkgs/applications/graphics/ImageMagick/default.nix b/pkgs/applications/graphics/ImageMagick/default.nix
index 568a8a0ac02e..c15af9d94fb2 100644
--- a/pkgs/applications/graphics/ImageMagick/default.nix
+++ b/pkgs/applications/graphics/ImageMagick/default.nix
@@ -50,13 +50,13 @@ in
 
 stdenv.mkDerivation (finalAttrs: {
   pname = "imagemagick";
-  version = "7.1.1-29";
+  version = "7.1.1-32";
 
   src = fetchFromGitHub {
     owner = "ImageMagick";
     repo = "ImageMagick";
     rev = finalAttrs.version;
-    hash = "sha256-W9WbHzmTa0dA9+mOxXu88qmN1mO9ORaH0Nj6r2s1Q+E=";
+    hash = "sha256-9pDxnUNMmrwnP4rrR41OSZOJZjQnlVvedpLvMZJJnJo=";
   };
 
   outputs = [ "out" "dev" "doc" ]; # bin/ isn't really big
diff --git a/pkgs/applications/graphics/akira/default.nix b/pkgs/applications/graphics/akira/default.nix
index 3903a3acd8ea..03278888c8ba 100644
--- a/pkgs/applications/graphics/akira/default.nix
+++ b/pkgs/applications/graphics/akira/default.nix
@@ -9,7 +9,7 @@
 , pkg-config
 , python3
 , vala
-, wrapGAppsHook
+, wrapGAppsHook3
 , cairo
 , glib
 , goocanvas3
@@ -40,7 +40,7 @@ stdenv.mkDerivation rec {
     pkg-config
     python3
     vala
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
diff --git a/pkgs/applications/graphics/avocode/default.nix b/pkgs/applications/graphics/avocode/default.nix
index a6a3563743b3..c10f85a99dce 100644
--- a/pkgs/applications/graphics/avocode/default.nix
+++ b/pkgs/applications/graphics/avocode/default.nix
@@ -1,6 +1,6 @@
 { lib, stdenv, makeDesktopItem, fetchurl, unzip
 , gdk-pixbuf, glib, gtk3, atk, at-spi2-atk, pango, cairo, freetype, fontconfig, dbus, nss, nspr, alsa-lib, cups, expat, udev, gnome
-, xorg, mozjpeg, makeWrapper, wrapGAppsHook, libuuid, at-spi2-core, libdrm, mesa, libxkbcommon
+, xorg, mozjpeg, makeWrapper, wrapGAppsHook3, libuuid, at-spi2-core, libdrm, mesa, libxkbcommon
 }:
 
 stdenv.mkDerivation rec {
@@ -60,7 +60,7 @@ stdenv.mkDerivation rec {
     comment = "The bridge between designers and developers";
   };
 
-  nativeBuildInputs = [makeWrapper wrapGAppsHook unzip];
+  nativeBuildInputs = [makeWrapper wrapGAppsHook3 unzip];
   buildInputs = [ gtk3 gnome.adwaita-icon-theme ];
 
   # src is producing multiple folder on unzip so we must
diff --git a/pkgs/applications/graphics/ciano/default.nix b/pkgs/applications/graphics/ciano/default.nix
index 7b96dc1f793d..454a1d28c477 100644
--- a/pkgs/applications/graphics/ciano/default.nix
+++ b/pkgs/applications/graphics/ciano/default.nix
@@ -11,7 +11,7 @@
 , pkg-config
 , python
 , vala
-, wrapGAppsHook
+, wrapGAppsHook3
 }:
 
 stdenv.mkDerivation rec {
@@ -32,7 +32,7 @@ stdenv.mkDerivation rec {
     pkg-config
     python
     vala
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
diff --git a/pkgs/applications/graphics/cloudcompare/default.nix b/pkgs/applications/graphics/cloudcompare/default.nix
index e78b95c363b6..f66189e0c75c 100644
--- a/pkgs/applications/graphics/cloudcompare/default.nix
+++ b/pkgs/applications/graphics/cloudcompare/default.nix
@@ -20,7 +20,7 @@
 , qttools
 , tbb
 , xercesc
-, wrapGAppsHook
+, wrapGAppsHook3
 }:
 
 mkDerivation rec {
@@ -38,7 +38,7 @@ mkDerivation rec {
   nativeBuildInputs = [
     cmake
     eigen # header-only
-    wrapGAppsHook
+    wrapGAppsHook3
     copyDesktopItems
   ];
 
diff --git a/pkgs/applications/graphics/cq-editor/default.nix b/pkgs/applications/graphics/cq-editor/default.nix
deleted file mode 100644
index 13a8ef1a02bd..000000000000
--- a/pkgs/applications/graphics/cq-editor/default.nix
+++ /dev/null
@@ -1,63 +0,0 @@
-{ lib
-, mkDerivationWith
-, python3Packages
-, fetchFromGitHub
-, wrapQtAppsHook
-}:
-
-mkDerivationWith python3Packages.buildPythonApplication rec {
-  pname = "cq-editor";
-  version = "0.1.1";
-
-  src = fetchFromGitHub {
-    owner = "CadQuery";
-    repo = "CQ-editor";
-    rev = version;
-    sha256 = "1970izjaa60r5cg9i35rzz9lk5c5d8q1vw1rh2skvfbf63z1hnzv";
-  };
-
-  patches = [
-    ./spyder4.patch
-  ];
-
-  propagatedBuildInputs = with python3Packages; [
-    cadquery
-    logbook
-    pyqt5
-    pyparsing
-    pyqtgraph
-    spyder
-    path
-    qtconsole
-    requests
-  ];
-
-  nativeBuildInputs = [ wrapQtAppsHook ];
-  preFixup = ''
-    makeWrapperArgs+=("''${qtWrapperArgs[@]}")
-  '';
-
-  nativeCheckInputs = with python3Packages; [
-    pytest
-    pytest-xvfb
-    pytest-mock
-    pytest-cov
-    pytest-repeat
-    pytest-qt
-  ];
-
-  checkPhase = ''
-    pytest --no-xvfb
-  '';
-
-  # requires X server
-  doCheck = false;
-
-  meta = with lib; {
-    description = "CadQuery GUI editor based on PyQT";
-    homepage = "https://github.com/CadQuery/CQ-editor";
-    license = licenses.asl20;
-    maintainers = with maintainers; [ costrouc marcus7070 ];
-  };
-
-}
diff --git a/pkgs/applications/graphics/darktable/default.nix b/pkgs/applications/graphics/darktable/default.nix
index 324ba3cf8a9c..c2b8ade1f295 100644
--- a/pkgs/applications/graphics/darktable/default.nix
+++ b/pkgs/applications/graphics/darktable/default.nix
@@ -4,7 +4,7 @@
 , libsoup
 , graphicsmagick
 , json-glib
-, wrapGAppsHook
+, wrapGAppsHook3
 , cairo
 , cmake
 , ninja
@@ -69,7 +69,7 @@ stdenv.mkDerivation rec {
   ];
 
 
-  nativeBuildInputs = [ cmake ninja llvmPackages.llvm pkg-config intltool perl desktop-file-utils wrapGAppsHook ];
+  nativeBuildInputs = [ cmake ninja llvmPackages.llvm pkg-config intltool perl desktop-file-utils wrapGAppsHook3 ];
 
   buildInputs = [
     cairo
diff --git a/pkgs/applications/graphics/dia/default.nix b/pkgs/applications/graphics/dia/default.nix
index c79f50e86d79..534d1f5884b9 100644
--- a/pkgs/applications/graphics/dia/default.nix
+++ b/pkgs/applications/graphics/dia/default.nix
@@ -15,7 +15,7 @@
 , pkg-config
 , poppler
 , python3
-, wrapGAppsHook
+, wrapGAppsHook3
   # Building with docs are still failing in unstable-2023-09-28
 , withDocs ? false
 }:
@@ -60,7 +60,7 @@ stdenv.mkDerivation {
     meson
     ninja
     pkg-config
-    wrapGAppsHook
+    wrapGAppsHook3
   ] ++
   lib.optionals withDocs [
     dblatex
diff --git a/pkgs/applications/graphics/dosage/default.nix b/pkgs/applications/graphics/dosage/default.nix
index 1aaa53948619..d04820afad96 100644
--- a/pkgs/applications/graphics/dosage/default.nix
+++ b/pkgs/applications/graphics/dosage/default.nix
@@ -19,8 +19,6 @@ python3Packages.buildPythonApplication rec {
     colorama imagesize lxml requests setuptools six
   ];
 
-  disabled = python3Packages.pythonOlder "3.3";
-
   meta = {
     description = "A comic strip downloader and archiver";
     mainProgram = "dosage";
diff --git a/pkgs/applications/graphics/drawing/default.nix b/pkgs/applications/graphics/drawing/default.nix
index 90caf78d6313..cf4b65021919 100644
--- a/pkgs/applications/graphics/drawing/default.nix
+++ b/pkgs/applications/graphics/drawing/default.nix
@@ -8,7 +8,7 @@
 , appstream-glib
 , desktop-file-utils
 , gobject-introspection
-, wrapGAppsHook
+, wrapGAppsHook3
 , glib
 , gdk-pixbuf
 , pango
@@ -36,7 +36,7 @@ python3.pkgs.buildPythonApplication rec {
     meson
     ninja
     pkg-config
-    wrapGAppsHook
+    wrapGAppsHook3
     glib
     gettext
     itstool
diff --git a/pkgs/applications/graphics/emulsion/default.nix b/pkgs/applications/graphics/emulsion/default.nix
index 323920ff4deb..67342c57c846 100644
--- a/pkgs/applications/graphics/emulsion/default.nix
+++ b/pkgs/applications/graphics/emulsion/default.nix
@@ -37,16 +37,16 @@ let
 in
 rustPlatform.buildRustPackage rec {
   pname = "emulsion";
-  version = "10.5";
+  version = "11.0";
 
   src = fetchFromGitHub {
     owner = "ArturKovacs";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-Wrb5jHr2rXDpXF/uHpNLKSc//Xdj0/VsXQcytit0hKY=";
+    sha256 = "sha256-0t+MUZu1cvkJSL9Ly9kblH8fMr05KuRpOo+JDn/VUc8=";
   };
 
-  cargoHash = "sha256-zfR4sp/AmK3+UcFdqMMZE9O9+oGathqmuqFw11SmUWI=";
+  cargoHash = "sha256-detJZRnxT3FubaF/A4w2pFdhW03BH0gsaeuNFYu+cBw=";
 
   nativeBuildInputs = [
     installShellFiles
diff --git a/pkgs/applications/graphics/figma-linux/default.nix b/pkgs/applications/graphics/figma-linux/default.nix
index fd136a5b4026..6c794c9706bb 100644
--- a/pkgs/applications/graphics/figma-linux/default.nix
+++ b/pkgs/applications/graphics/figma-linux/default.nix
@@ -4,7 +4,7 @@
 , fetchurl
 , autoPatchelfHook
 , dpkg
-, wrapGAppsHook
+, wrapGAppsHook3
 , ...
 }:
 with lib;
@@ -17,7 +17,7 @@ stdenv.mkDerivation (finalAttrs: {
     hash = "sha256-9UfyCqgsg9XAFyZ7V7TogkQou4x+ixFUfjXZ1/qlDmA=";
   };
 
-  nativeBuildInputs = [ autoPatchelfHook dpkg wrapGAppsHook ];
+  nativeBuildInputs = [ autoPatchelfHook dpkg wrapGAppsHook3 ];
 
   buildInputs = with pkgs;[
     alsa-lib
diff --git a/pkgs/applications/graphics/fondo/default.nix b/pkgs/applications/graphics/fondo/default.nix
index f3854b4c6989..46c2c72d91ad 100644
--- a/pkgs/applications/graphics/fondo/default.nix
+++ b/pkgs/applications/graphics/fondo/default.nix
@@ -17,7 +17,7 @@
 , json-glib
 , glib-networking
 , desktop-file-utils
-, wrapGAppsHook
+, wrapGAppsHook3
 }:
 
 stdenv.mkDerivation rec {
@@ -38,7 +38,7 @@ stdenv.mkDerivation rec {
     pkg-config
     python3
     vala
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
diff --git a/pkgs/applications/graphics/gcolor3/default.nix b/pkgs/applications/graphics/gcolor3/default.nix
index ae36266f29c8..a5b89a605d55 100644
--- a/pkgs/applications/graphics/gcolor3/default.nix
+++ b/pkgs/applications/graphics/gcolor3/default.nix
@@ -7,7 +7,7 @@
 , libxml2
 , gtk3
 , libportal-gtk3
-, wrapGAppsHook
+, wrapGAppsHook3
 }:
 
 stdenv.mkDerivation rec {
@@ -28,7 +28,7 @@ stdenv.mkDerivation rec {
     gettext
     pkg-config
     libxml2 # xml-stripblanks preprocessing of GResource
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
diff --git a/pkgs/applications/graphics/geeqie/default.nix b/pkgs/applications/graphics/geeqie/default.nix
index c88e068615be..4eeb330f6d27 100644
--- a/pkgs/applications/graphics/geeqie/default.nix
+++ b/pkgs/applications/graphics/geeqie/default.nix
@@ -3,7 +3,7 @@
 , libarchive, djvulibre, libheif, openjpeg, libjxl, libraw, lua5_3, poppler
 , gspell, libtiff, libwebp
 , gphoto2, imagemagick, yad, exiftool, gnome, libnotify
-, wrapGAppsHook, fetchpatch, doxygen
+, wrapGAppsHook3, fetchpatch, doxygen
 , nix-update-script
 }:
 
@@ -32,7 +32,7 @@ stdenv.mkDerivation rec {
 
   nativeBuildInputs =
     [ pkg-config gettext intltool
-      wrapGAppsHook doxygen
+      wrapGAppsHook3 doxygen
       meson ninja xxd
     ];
 
diff --git a/pkgs/applications/graphics/gimp/default.nix b/pkgs/applications/graphics/gimp/default.nix
index f3587cf2ea5d..33ddbd9159fe 100644
--- a/pkgs/applications/graphics/gimp/default.nix
+++ b/pkgs/applications/graphics/gimp/default.nix
@@ -56,13 +56,13 @@ let
   python = python2.withPackages (pp: [ pp.pygtk ]);
 in stdenv.mkDerivation (finalAttrs: {
   pname = "gimp";
-  version = "2.10.36";
+  version = "2.10.38";
 
   outputs = [ "out" "dev" ];
 
   src = fetchurl {
     url = "http://download.gimp.org/pub/gimp/v${lib.versions.majorMinor finalAttrs.version}/gimp-${finalAttrs.version}.tar.bz2";
-    sha256 = "sha256-PTvDxppL2zrqm6LVOF7ZjqA5U/OFeq/R1pdgEe1827I=";
+    sha256 = "sha256-UKhF7sEciDH+hmFweVD1uERuNfMO37ms+Y+FwRM/hW4=";
   };
 
   patches = [
diff --git a/pkgs/applications/graphics/gnome-photos/default.nix b/pkgs/applications/graphics/gnome-photos/default.nix
index fe100492a95c..045a42d0e29d 100644
--- a/pkgs/applications/graphics/gnome-photos/default.nix
+++ b/pkgs/applications/graphics/gnome-photos/default.nix
@@ -30,7 +30,7 @@
 , python3
 , tracker
 , tracker-miners
-, wrapGAppsHook
+, wrapGAppsHook3
 }:
 
 stdenv.mkDerivation rec {
@@ -63,7 +63,7 @@ stdenv.mkDerivation rec {
       pygobject3
       pyatspi
     ]))
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
diff --git a/pkgs/applications/graphics/goxel/default.nix b/pkgs/applications/graphics/goxel/default.nix
index 000fd3719263..2ffa57280eaa 100644
--- a/pkgs/applications/graphics/goxel/default.nix
+++ b/pkgs/applications/graphics/goxel/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetchFromGitHub, scons, pkg-config, wrapGAppsHook
+{ lib, stdenv, fetchFromGitHub, scons, pkg-config, wrapGAppsHook3
 , glfw3, gtk3, libpng }:
 
 stdenv.mkDerivation (finalAttrs: {
@@ -12,7 +12,7 @@ stdenv.mkDerivation (finalAttrs: {
     hash = "sha256-ueA0YW2n/DXd9AytDzfPtvtXbvuUm4VDwcdvHWObKxc=";
   };
 
-  nativeBuildInputs = [ scons pkg-config wrapGAppsHook ];
+  nativeBuildInputs = [ scons pkg-config wrapGAppsHook3 ];
   buildInputs = [ glfw3 gtk3 libpng ];
 
   buildPhase = ''
diff --git a/pkgs/applications/graphics/gscan2pdf/default.nix b/pkgs/applications/graphics/gscan2pdf/default.nix
index d7ebb0a747ea..0989c07d8a6f 100644
--- a/pkgs/applications/graphics/gscan2pdf/default.nix
+++ b/pkgs/applications/graphics/gscan2pdf/default.nix
@@ -1,4 +1,4 @@
-{ lib, fetchurl, perlPackages, wrapGAppsHook, fetchpatch,
+{ lib, fetchurl, perlPackages, wrapGAppsHook3, fetchpatch,
   # libs
   librsvg, sane-backends, sane-frontends,
   # runtime dependencies
@@ -28,7 +28,7 @@ perlPackages.buildPerlPackage rec {
     ./image-utf8-fix.patch
   ];
 
-  nativeBuildInputs = [ wrapGAppsHook ];
+  nativeBuildInputs = [ wrapGAppsHook3 ];
 
   buildInputs =
     [ librsvg sane-backends sane-frontends ] ++
diff --git a/pkgs/applications/graphics/gscreenshot/default.nix b/pkgs/applications/graphics/gscreenshot/default.nix
index b3b9deedffa2..a09b39bdadb4 100644
--- a/pkgs/applications/graphics/gscreenshot/default.nix
+++ b/pkgs/applications/graphics/gscreenshot/default.nix
@@ -4,7 +4,7 @@
 , gettext
 , gobject-introspection
 , gtk3
-, wrapGAppsHook
+, wrapGAppsHook3
 , xdg-utils
 , scrot
 , slop
@@ -27,12 +27,12 @@ python3Packages.buildPythonApplication rec {
     sha256 = "sha256-BA118PwMslqvnlRES2fEgTjzfNvKNVae7GzWSyuaqYM=";
   };
 
-  # needed for wrapGAppsHook to function
+  # needed for wrapGAppsHook3 to function
   strictDeps = false;
   # tests require a display and fail
   doCheck = false;
 
-  nativeBuildInputs = [ wrapGAppsHook ];
+  nativeBuildInputs = [ wrapGAppsHook3 ];
   propagatedBuildInputs = [
     gettext
     gobject-introspection
diff --git a/pkgs/applications/graphics/gthumb/default.nix b/pkgs/applications/graphics/gthumb/default.nix
index ca9406044fc9..fc5913969451 100644
--- a/pkgs/applications/graphics/gthumb/default.nix
+++ b/pkgs/applications/graphics/gthumb/default.nix
@@ -26,7 +26,7 @@
 , bison
 , flex
 , clutter-gtk
-, wrapGAppsHook
+, wrapGAppsHook3
 , shared-mime-info
 , python3
 , desktop-file-utils
@@ -51,7 +51,7 @@ stdenv.mkDerivation rec {
     ninja
     pkg-config
     python3
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
diff --git a/pkgs/applications/graphics/halftone/default.nix b/pkgs/applications/graphics/halftone/default.nix
index 81e70e401fc8..c29bcb8ccd1d 100644
--- a/pkgs/applications/graphics/halftone/default.nix
+++ b/pkgs/applications/graphics/halftone/default.nix
@@ -15,13 +15,13 @@
 
 python3Packages.buildPythonApplication rec {
   pname = "halftone";
-  version = "0.6.0";
+  version = "0.6.1";
 
   src = fetchFromGitHub {
     owner = "tfuxu";
     repo = pname;
-    rev = version;
-    hash = "sha256-7fa6afrGt8SXli2KHzzRIqTBBaN3Hk0coYwxe66jLsg=";
+    rev = "refs/tags/${version}";
+    hash = "sha256-o55eimlDy86mbwveARxVXauMQEneAchVi2RNaj6FYxs=";
   };
 
   format = "other";
diff --git a/pkgs/applications/graphics/hugin/default.nix b/pkgs/applications/graphics/hugin/default.nix
index 6a0408f98f13..e7c3d7f8972d 100644
--- a/pkgs/applications/graphics/hugin/default.nix
+++ b/pkgs/applications/graphics/hugin/default.nix
@@ -30,7 +30,7 @@
 , perlPackages
 , sqlite
 , vigra
-, wrapGAppsHook
+, wrapGAppsHook3
 , wxGTK
 , zlib
 }:
@@ -71,7 +71,7 @@ stdenv.mkDerivation rec {
     zlib
   ];
 
-  nativeBuildInputs = [ cmake makeWrapper pkg-config wrapGAppsHook ];
+  nativeBuildInputs = [ cmake makeWrapper pkg-config wrapGAppsHook3 ];
 
   # disable installation of the python scripting interface
   cmakeFlags = [ "-DBUILD_HSI:BOOl=OFF" ];
diff --git a/pkgs/applications/graphics/icon-library/default.nix b/pkgs/applications/graphics/icon-library/default.nix
index 25cc1ebebfbc..3dae4b0e1b68 100644
--- a/pkgs/applications/graphics/icon-library/default.nix
+++ b/pkgs/applications/graphics/icon-library/default.nix
@@ -19,11 +19,11 @@
 
 stdenv.mkDerivation rec {
   pname = "icon-library";
-  version = "0.0.18";
+  version = "0.0.19";
 
   src = fetchurl {
-    url = "https://gitlab.gnome.org/World/design/icon-library/uploads/874b27fcf34662d9686f670d406142c2/icon-library-${version}.tar.xz";
-    hash = "sha256-qCGwTePA817mulFjyRZKw+Fw1S77+QTtA7WH+KocL48=";
+    url = "https://gitlab.gnome.org/World/design/icon-library/uploads/7725604ce39be278abe7c47288085919/icon-library-${version}.tar.xz";
+    hash = "sha256-nWGTYoSa0/fxnD0Mb2132LkeB1oa/gj/oIXBbI+FDw8=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/applications/graphics/ideogram/default.nix b/pkgs/applications/graphics/ideogram/default.nix
index 12706d6d36f6..721bc1c7f9ad 100644
--- a/pkgs/applications/graphics/ideogram/default.nix
+++ b/pkgs/applications/graphics/ideogram/default.nix
@@ -12,7 +12,7 @@
 , pantheon
 , desktop-file-utils
 , xorg
-, wrapGAppsHook
+, wrapGAppsHook3
 }:
 
 stdenv.mkDerivation rec {
@@ -33,7 +33,7 @@ stdenv.mkDerivation rec {
     vala
     pkg-config
     python3
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
diff --git a/pkgs/applications/graphics/imagej/default.nix b/pkgs/applications/graphics/imagej/default.nix
index b6396c231b19..2398a61f2134 100644
--- a/pkgs/applications/graphics/imagej/default.nix
+++ b/pkgs/applications/graphics/imagej/default.nix
@@ -7,7 +7,7 @@
 , makeWrapper
 , makeDesktopItem
 , copyDesktopItems
-, wrapGAppsHook
+, wrapGAppsHook3
 }:
 
 let
@@ -23,7 +23,7 @@ in stdenv.mkDerivation rec {
     url = "https://wsr.imagej.net/distros/cross-platform/ij${version}.zip";
     sha256 = "sha256-MGuUdUDuW3s/yGC68rHr6xxzmYScUjdXRawDpc1UQqw=";
   };
-  nativeBuildInputs = [ copyDesktopItems makeWrapper unzip wrapGAppsHook ];
+  nativeBuildInputs = [ copyDesktopItems makeWrapper unzip wrapGAppsHook3 ];
   buildInputs = [ glib ];
   dontWrapGApps = true;
 
diff --git a/pkgs/applications/graphics/inkscape/default.nix b/pkgs/applications/graphics/inkscape/default.nix
index 35000a06de02..358931534ad9 100644
--- a/pkgs/applications/graphics/inkscape/default.nix
+++ b/pkgs/applications/graphics/inkscape/default.nix
@@ -40,7 +40,7 @@
 , potrace
 , python3
 , substituteAll
-, wrapGAppsHook
+, wrapGAppsHook3
 , libepoxy
 , zlib
 }:
@@ -119,7 +119,7 @@ stdenv.mkDerivation rec {
     python3Env
     glib # for setup hook
     gdk-pixbuf # for setup hook
-    wrapGAppsHook
+    wrapGAppsHook3
     gobject-introspection
   ] ++ (with perlPackages; [
     perl
diff --git a/pkgs/applications/graphics/inkscape/extensions/textext/default.nix b/pkgs/applications/graphics/inkscape/extensions/textext/default.nix
index c3ad003cc1b2..cb4be37759bc 100644
--- a/pkgs/applications/graphics/inkscape/extensions/textext/default.nix
+++ b/pkgs/applications/graphics/inkscape/extensions/textext/default.nix
@@ -6,7 +6,7 @@
 , pdflatex
 , lualatex
 , python3
-, wrapGAppsHook
+, wrapGAppsHook3
 , gobject-introspection
 , gtk3
 , gtksourceview3
@@ -43,7 +43,7 @@ python3.pkgs.buildPythonApplication rec {
   ];
 
   nativeBuildInputs = [
-    wrapGAppsHook
+    wrapGAppsHook3
     gobject-introspection
   ];
 
diff --git a/pkgs/applications/graphics/kgraphviewer/default.nix b/pkgs/applications/graphics/kgraphviewer/default.nix
index 65ec4eb71d42..20098eabeff4 100644
--- a/pkgs/applications/graphics/kgraphviewer/default.nix
+++ b/pkgs/applications/graphics/kgraphviewer/default.nix
@@ -1,4 +1,4 @@
-{ lib, mkDerivation, fetchurl, cmake, extra-cmake-modules, pkg-config, wrapGAppsHook
+{ lib, mkDerivation, fetchurl, cmake, extra-cmake-modules, pkg-config, wrapGAppsHook3
 , kconfig, kinit, kdoctools, kio, kparts, kwidgetsaddons
 , qtbase, qtsvg
 , boost, graphviz
@@ -19,7 +19,7 @@ mkDerivation rec {
   ];
 
   nativeBuildInputs = [
-    cmake extra-cmake-modules pkg-config wrapGAppsHook
+    cmake extra-cmake-modules pkg-config wrapGAppsHook3
     kdoctools
   ];
 
diff --git a/pkgs/applications/graphics/komikku/default.nix b/pkgs/applications/graphics/komikku/default.nix
index 22bce94e11ab..bdc81a532fdc 100644
--- a/pkgs/applications/graphics/komikku/default.nix
+++ b/pkgs/applications/graphics/komikku/default.nix
@@ -19,7 +19,7 @@
 
 python3.pkgs.buildPythonApplication rec {
   pname = "komikku";
-  version = "1.39.0";
+  version = "1.46.0";
 
   format = "other";
 
@@ -28,7 +28,7 @@ python3.pkgs.buildPythonApplication rec {
     owner = "valos";
     repo = "Komikku";
     rev = "v${version}";
-    hash = "sha256-bAk+F81q0sPSgU8LkpniVJyKaQt6cxUaUzNSZ3f5v0Q=";
+    hash = "sha256-0yobGclfZzv0S0HtqeTr4vzK5d6PTQNWMszP0B4k770=";
   };
 
   nativeBuildInputs = [
@@ -62,7 +62,7 @@ python3.pkgs.buildPythonApplication rec {
     natsort
     piexif
     pillow
-    pure-protobuf
+    curl-cffi
     pygobject3
     python-magic
     rarfile
diff --git a/pkgs/applications/graphics/komorebi/default.nix b/pkgs/applications/graphics/komorebi/default.nix
index 2d099b5eb7c9..261f451d07c2 100644
--- a/pkgs/applications/graphics/komorebi/default.nix
+++ b/pkgs/applications/graphics/komorebi/default.nix
@@ -11,7 +11,7 @@
 , clutter-gtk
 , clutter-gst
 , ninja
-, wrapGAppsHook
+, wrapGAppsHook3
 , testers
 , komorebi
 }:
@@ -32,7 +32,7 @@ stdenv.mkDerivation rec {
     vala
     pkg-config
     ninja
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
diff --git a/pkgs/applications/graphics/kphotoalbum/default.nix b/pkgs/applications/graphics/kphotoalbum/default.nix
index 6ff2f4339958..aa4bd7fd7e7e 100644
--- a/pkgs/applications/graphics/kphotoalbum/default.nix
+++ b/pkgs/applications/graphics/kphotoalbum/default.nix
@@ -4,7 +4,7 @@
 , lib
 , extra-cmake-modules
 , kdoctools
-, wrapGAppsHook
+, wrapGAppsHook3
 , exiv2
 , ffmpeg
 , libkdcraw
@@ -38,7 +38,7 @@ mkDerivation rec {
   # be on the system anyway, so there is no real harm including it
   buildInputs = [ exiv2 phonon libvlc ];
 
-  nativeBuildInputs = [ extra-cmake-modules kdoctools wrapGAppsHook ];
+  nativeBuildInputs = [ extra-cmake-modules kdoctools wrapGAppsHook3 ];
 
   propagatedBuildInputs = [ kconfig kiconthemes kio kinit kpurpose libkdcraw ];
 
diff --git a/pkgs/applications/graphics/lightburn/default.nix b/pkgs/applications/graphics/lightburn/default.nix
index e9ca6b52a041..19455d89c930 100644
--- a/pkgs/applications/graphics/lightburn/default.nix
+++ b/pkgs/applications/graphics/lightburn/default.nix
@@ -6,7 +6,7 @@
 
 stdenv.mkDerivation rec {
   pname = "lightburn";
-  version = "1.5.06";
+  version = "1.6.00";
 
   nativeBuildInputs = [
     p7zip
@@ -15,7 +15,7 @@ stdenv.mkDerivation rec {
 
   src = fetchurl {
     url = "https://github.com/LightBurnSoftware/deployment/releases/download/${version}/LightBurn-Linux64-v${version}.7z";
-    sha256 = "sha256-VJMfvZHqdgUQXLyBBZLEV3nyP0qzibuXLnZyBhBBg9E=";
+    sha256 = "sha256-R9DBlmqvV23QXzC45Z4GN0t+ysv4WM63POJGU5N7jbw=";
   };
 
   buildInputs = [
diff --git a/pkgs/applications/graphics/mypaint/default.nix b/pkgs/applications/graphics/mypaint/default.nix
index 80067fa7c6c3..0d261b5e6034 100644
--- a/pkgs/applications/graphics/mypaint/default.nix
+++ b/pkgs/applications/graphics/mypaint/default.nix
@@ -15,7 +15,7 @@
 , pkg-config
 , python3
 , swig
-, wrapGAppsHook
+, wrapGAppsHook3
 }:
 
 let
@@ -75,7 +75,7 @@ in buildPythonApplication rec {
     gettext
     pkg-config
     swig
-    wrapGAppsHook
+    wrapGAppsHook3
     gobject-introspection # for setup hook
     hicolor-icon-theme # fór setup hook
     python3.pkgs.setuptools
diff --git a/pkgs/applications/graphics/ocrfeeder/default.nix b/pkgs/applications/graphics/ocrfeeder/default.nix
index d6243bdbffac..7c30e81ab3e2 100644
--- a/pkgs/applications/graphics/ocrfeeder/default.nix
+++ b/pkgs/applications/graphics/ocrfeeder/default.nix
@@ -1,7 +1,7 @@
 { lib, stdenv
 , fetchurl
 , pkg-config
-, wrapGAppsHook
+, wrapGAppsHook3
 , intltool
 , itstool
 , libxml2
@@ -27,7 +27,7 @@ stdenv.mkDerivation (finalAttrs: {
 
   nativeBuildInputs = [
     pkg-config
-    wrapGAppsHook
+    wrapGAppsHook3
     intltool
     itstool
     libxml2
diff --git a/pkgs/applications/graphics/oculante/default.nix b/pkgs/applications/graphics/oculante/default.nix
index 3c571a2adf76..c2f2840a5dee 100644
--- a/pkgs/applications/graphics/oculante/default.nix
+++ b/pkgs/applications/graphics/oculante/default.nix
@@ -17,28 +17,28 @@
 , gtk3
 , darwin
 , perl
-, wrapGAppsHook
+, wrapGAppsHook3
 }:
 
 rustPlatform.buildRustPackage rec {
   pname = "oculante";
-  version = "0.8.19";
+  version = "0.8.21";
 
   src = fetchFromGitHub {
     owner = "woelper";
     repo = "oculante";
     rev = version;
-    hash = "sha256-oCgnz1WMg7YypIT8Tjk2m+f/43Aj88rDVCxQ92aL3RY=";
+    hash = "sha256-2QX7cD9SjhLb82O8T90BTQGsy3/gDaNwoX4Mbe2H6s4=";
   };
 
-  cargoHash = "sha256-vlU7egAht+kgA5Vx0HAwQOIax9qD4FLRo1ZUNx4RieY=";
+  cargoHash = "sha256-VAWLs15xsjoT0VSJjS/j0wd5P7OjQGrvyUSHp4B8hHI=";
 
   nativeBuildInputs = [
     cmake
     pkg-config
     nasm
     perl
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   checkFlagsArray = [ "--skip=tests::net" ]; # requires network access
diff --git a/pkgs/applications/graphics/openscad/default.nix b/pkgs/applications/graphics/openscad/default.nix
index e0ea00e5c298..d72994e008b0 100644
--- a/pkgs/applications/graphics/openscad/default.nix
+++ b/pkgs/applications/graphics/openscad/default.nix
@@ -29,7 +29,7 @@
 , spacenavSupport ? stdenv.isLinux, libspnav
 , wayland
 , wayland-protocols
-, wrapGAppsHook
+, wrapGAppsHook3
 , qtwayland
 , cairo
 }:
@@ -58,7 +58,7 @@ mkDerivation rec {
     })
   ];
 
-  nativeBuildInputs = [ bison flex pkg-config gettext qmake wrapGAppsHook];
+  nativeBuildInputs = [ bison flex pkg-config gettext qmake wrapGAppsHook3];
 
   buildInputs = [
     eigen boost glew opencsg cgal_4 mpfr gmp glib
diff --git a/pkgs/applications/graphics/pencil/default.nix b/pkgs/applications/graphics/pencil/default.nix
index 9924e0b58c14..4b7b6f9b6a47 100644
--- a/pkgs/applications/graphics/pencil/default.nix
+++ b/pkgs/applications/graphics/pencil/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchurl, lib, makeWrapper, wrapGAppsHook,
+{ stdenv, fetchurl, lib, makeWrapper, wrapGAppsHook3,
   # build dependencies
   alsa-lib, atk, at-spi2-atk, at-spi2-core, cairo, cups, dbus, expat, fontconfig,
   freetype, gdk-pixbuf, glib, glibc, gtk3, libuuid, nspr, nss, pango,
@@ -58,7 +58,7 @@ in stdenv.mkDerivation rec {
 
   dontBuild = true;
 
-  nativeBuildInputs = [ makeWrapper wrapGAppsHook ];
+  nativeBuildInputs = [ makeWrapper wrapGAppsHook3 ];
 
   buildInputs = deps;
 
diff --git a/pkgs/applications/graphics/photoqt/default.nix b/pkgs/applications/graphics/photoqt/default.nix
index 5be47fb1b85a..e3c8ce53bbd2 100644
--- a/pkgs/applications/graphics/photoqt/default.nix
+++ b/pkgs/applications/graphics/photoqt/default.nix
@@ -26,11 +26,11 @@
 
 stdenv.mkDerivation rec {
   pname = "photoqt";
-  version = "4.4";
+  version = "4.5";
 
   src = fetchurl {
     url = "https://photoqt.org/pkgs/photoqt-${version}.tar.gz";
-    hash = "sha256-dCaNF5UoH6SkKBrZGtwg2qZcDtlptdBxEGZL2oKyjhI=";
+    hash = "sha256-QFziMNRhiM4LaNJ8RkJ0iCq/8J82wn0F594qJeSN3Lw=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/applications/graphics/pick-colour-picker/default.nix b/pkgs/applications/graphics/pick-colour-picker/default.nix
index bd9ab649d633..fd736c3ec7ab 100644
--- a/pkgs/applications/graphics/pick-colour-picker/default.nix
+++ b/pkgs/applications/graphics/pick-colour-picker/default.nix
@@ -6,7 +6,7 @@
 , glib
 , gtk3
 , gobject-introspection
-, wrapGAppsHook
+, wrapGAppsHook3
 , python
 }:
 
@@ -29,7 +29,7 @@ buildPythonPackage rec {
 
   nativeBuildInputs = [
     gobject-introspection
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   pythonPath = [
diff --git a/pkgs/applications/graphics/pinta/default.nix b/pkgs/applications/graphics/pinta/default.nix
index 2f523813a24b..7f9c815eff1f 100644
--- a/pkgs/applications/graphics/pinta/default.nix
+++ b/pkgs/applications/graphics/pinta/default.nix
@@ -5,7 +5,7 @@
 , glibcLocales
 , gtk3
 , intltool
-, wrapGAppsHook
+, wrapGAppsHook3
 }:
 
 buildDotnetModule rec {
@@ -14,7 +14,7 @@ buildDotnetModule rec {
 
   nativeBuildInputs = [
     intltool
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   dotnet-sdk = dotnetCorePackages.sdk_7_0;
diff --git a/pkgs/applications/graphics/pizarra/default.nix b/pkgs/applications/graphics/pizarra/default.nix
index b53368439d75..6fd94f57e1e7 100644
--- a/pkgs/applications/graphics/pizarra/default.nix
+++ b/pkgs/applications/graphics/pizarra/default.nix
@@ -9,7 +9,7 @@
 , glib
 , librsvg
 , gdk-pixbuf
-, wrapGAppsHook
+, wrapGAppsHook3
 }:
 
 rustPlatform.buildRustPackage rec {
@@ -26,7 +26,7 @@ rustPlatform.buildRustPackage rec {
 
   cargoHash = "sha256-btvMUKADGHlXLmeKF1K9Js44SljZ0MejGId8aDwPhVU=";
 
-  nativeBuildInputs = [ wrapGAppsHook pkg-config gdk-pixbuf ];
+  nativeBuildInputs = [ wrapGAppsHook3 pkg-config gdk-pixbuf ];
 
   buildInputs = [ gtk3-x11 atk glib librsvg ];
 
diff --git a/pkgs/applications/graphics/processing/default.nix b/pkgs/applications/graphics/processing/default.nix
index 5fa438ef975d..d71ded259e83 100644
--- a/pkgs/applications/graphics/processing/default.nix
+++ b/pkgs/applications/graphics/processing/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetchFromGitHub, fetchurl, ant, unzip, makeWrapper, jdk, jogl, rsync, ffmpeg, batik, stripJavaArchivesHook, wrapGAppsHook, libGL }:
+{ lib, stdenv, fetchFromGitHub, fetchurl, ant, unzip, makeWrapper, jdk, jogl, rsync, ffmpeg, batik, stripJavaArchivesHook, wrapGAppsHook3, libGL }:
 let
   buildNumber = "1293";
   vaqua = fetchurl {
@@ -52,7 +52,7 @@ stdenv.mkDerivation rec {
     sha256 = "sha256-SzQemZ6iZ9o89/doV8YMv7DmyPSDyckJl3oyxJyfrm0=";
   };
 
-  nativeBuildInputs = [ ant unzip makeWrapper stripJavaArchivesHook wrapGAppsHook ];
+  nativeBuildInputs = [ ant unzip makeWrapper stripJavaArchivesHook wrapGAppsHook3 ];
   buildInputs = [ jdk jogl ant rsync ffmpeg batik ];
 
   dontWrapGApps = true;
diff --git a/pkgs/applications/graphics/rawtherapee/default.nix b/pkgs/applications/graphics/rawtherapee/default.nix
index 2038b09dd822..bf84ac1df11b 100644
--- a/pkgs/applications/graphics/rawtherapee/default.nix
+++ b/pkgs/applications/graphics/rawtherapee/default.nix
@@ -3,7 +3,7 @@
 , fetchFromGitHub
 , cmake
 , pkg-config
-, wrapGAppsHook
+, wrapGAppsHook3
 , makeWrapper
 , pixman
 , libpthreadstubs
@@ -46,7 +46,7 @@ stdenv.mkDerivation rec {
   nativeBuildInputs = [
     cmake
     pkg-config
-    wrapGAppsHook
+    wrapGAppsHook3
   ] ++ lib.optionals stdenv.isDarwin [
     makeWrapper
   ];
diff --git a/pkgs/applications/graphics/shotwell/default.nix b/pkgs/applications/graphics/shotwell/default.nix
index df056d92fbe4..844878a34959 100644
--- a/pkgs/applications/graphics/shotwell/default.nix
+++ b/pkgs/applications/graphics/shotwell/default.nix
@@ -27,7 +27,7 @@
 , desktop-file-utils
 , gdk-pixbuf
 , librsvg
-, wrapGAppsHook
+, wrapGAppsHook3
 , gobject-introspection
 , itstool
 , libsecret
@@ -52,7 +52,7 @@ stdenv.mkDerivation (finalAttrs: {
     itstool
     gettext
     desktop-file-utils
-    wrapGAppsHook
+    wrapGAppsHook3
     gobject-introspection
   ];
 
diff --git a/pkgs/applications/graphics/shutter/default.nix b/pkgs/applications/graphics/shutter/default.nix
index d10e8487796f..9f18033fca48 100644
--- a/pkgs/applications/graphics/shutter/default.nix
+++ b/pkgs/applications/graphics/shutter/default.nix
@@ -2,7 +2,7 @@
 , stdenv
 , fetchFromGitHub
 , perlPackages
-, wrapGAppsHook
+, wrapGAppsHook3
 , imagemagick
 , gdk-pixbuf
 , librsvg
@@ -74,7 +74,7 @@ stdenv.mkDerivation rec {
     sha256 = "sha256-o95skSr6rszh0wsHQTpu1GjqCDmde7aygIP+i4XQW9A=";
   };
 
-  nativeBuildInputs = [ wrapGAppsHook ];
+  nativeBuildInputs = [ wrapGAppsHook3 ];
   buildInputs = [
     perlPackages.perl
     procps
diff --git a/pkgs/applications/graphics/snapshot/default.nix b/pkgs/applications/graphics/snapshot/default.nix
index 88fc83f93c8b..d05bfe3e349b 100644
--- a/pkgs/applications/graphics/snapshot/default.nix
+++ b/pkgs/applications/graphics/snapshot/default.nix
@@ -18,11 +18,11 @@
 
 stdenv.mkDerivation (finalAttrs: {
   pname = "snapshot";
-  version = "45.2";
+  version = "46.3";
 
   src = fetchurl {
     url = "mirror://gnome/sources/snapshot/${lib.versions.major finalAttrs.version}/snapshot-${finalAttrs.version}.tar.xz";
-    hash = "sha256-iQd4F/xzXMjonbUWKPUuqKxmwZTfxqekLgA8TCnE3T4=";
+    hash = "sha256-RZV6BBX0VNY1MUkaoEeVzuDO1O3d1dj6DQAPXvBzW2c=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/applications/graphics/solvespace/default.nix b/pkgs/applications/graphics/solvespace/default.nix
index e0605ad81e43..610ef336a9e3 100644
--- a/pkgs/applications/graphics/solvespace/default.nix
+++ b/pkgs/applications/graphics/solvespace/default.nix
@@ -3,7 +3,7 @@
 , fetchFromGitHub
 , cmake
 , pkg-config
-, wrapGAppsHook
+, wrapGAppsHook3
 , at-spi2-core
 , cairo
 , dbus
@@ -44,7 +44,7 @@ stdenv.mkDerivation rec {
   nativeBuildInputs = [
     cmake
     pkg-config
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
diff --git a/pkgs/applications/graphics/symbolic-preview/default.nix b/pkgs/applications/graphics/symbolic-preview/default.nix
index 6f3103ecb8a6..5d8ef439f013 100644
--- a/pkgs/applications/graphics/symbolic-preview/default.nix
+++ b/pkgs/applications/graphics/symbolic-preview/default.nix
@@ -5,11 +5,11 @@
 
 stdenv.mkDerivation rec {
   pname = "symbolic-preview";
-  version = "0.0.3";
+  version = "0.0.9";
 
   src = fetchurl {
-    url = "https://gitlab.gnome.org/World/design/symbolic-preview/uploads/df71a2eee9ea0c90b3d146e7286fec42/symbolic-preview-${version}.tar.xz";
-    sha256 = "08g2sbdb1x5z26mi68nmciq6xwv0chvxw6anj1qdfh7npsg0dm4c";
+    url = "https://gitlab.gnome.org/World/design/symbolic-preview/uploads/e2fed158fc0d267f2051302bcf14848b/symbolic-preview-${version}.tar.xz";
+    hash = "sha256-kx+70LCQzzWAw2Xd3fKGq941540IM3Y1+r4Em4MNWbw=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/applications/graphics/synfigstudio/default.nix b/pkgs/applications/graphics/synfigstudio/default.nix
index 34f9baad6804..858fef718aaa 100644
--- a/pkgs/applications/graphics/synfigstudio/default.nix
+++ b/pkgs/applications/graphics/synfigstudio/default.nix
@@ -4,7 +4,7 @@
 , fetchpatch
 , pkg-config
 , autoreconfHook
-, wrapGAppsHook
+, wrapGAppsHook3
 
 , boost
 , cairo
@@ -116,7 +116,7 @@ stdenv.mkDerivation {
     autoreconfHook
     gettext
     intltool
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
   buildInputs = [
     ETL
diff --git a/pkgs/applications/graphics/tev/default.nix b/pkgs/applications/graphics/tev/default.nix
index c1932c3e11c3..7447e549465a 100644
--- a/pkgs/applications/graphics/tev/default.nix
+++ b/pkgs/applications/graphics/tev/default.nix
@@ -1,5 +1,5 @@
 { lib, stdenv, fetchFromGitHub
-, cmake, wrapGAppsHook
+, cmake, wrapGAppsHook3
 , libX11, libzip, glfw, libpng, xorg, gnome
 }:
 
@@ -15,7 +15,7 @@ stdenv.mkDerivation rec {
     sha256 = "sha256-+qCRHP0AbYOQBAE4zK2cmWPHZGWjjxC3DZPNm8sgBzs=";
   };
 
-  nativeBuildInputs = [ cmake wrapGAppsHook ];
+  nativeBuildInputs = [ cmake wrapGAppsHook3 ];
   buildInputs = [ libX11 libzip glfw libpng ]
     ++ (with xorg; [ libXrandr libXinerama libXcursor libXi libXxf86vm libXext ]);
 
diff --git a/pkgs/applications/graphics/texturepacker/default.nix b/pkgs/applications/graphics/texturepacker/default.nix
index fdf1d2b9fa6c..37f07e9657a2 100644
--- a/pkgs/applications/graphics/texturepacker/default.nix
+++ b/pkgs/applications/graphics/texturepacker/default.nix
@@ -11,11 +11,11 @@
 
 stdenv.mkDerivation (finalAttrs: {
   pname = "texturepacker";
-  version = "7.3.0";
+  version = "7.4.0";
 
   src = fetchurl {
     url = "https://www.codeandweb.com/download/texturepacker/${finalAttrs.version}/TexturePacker-${finalAttrs.version}.deb";
-    hash = "sha256-0i6LDrLBvTFKC5kW2PXP3Be6boUIJZ0fd1JG6FoS1kQ=";
+    hash = "sha256-v+azjIIscmp72WB3gki0CKb+z+FYsuJxIx9jvdfs+qM=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/applications/graphics/upscayl/default.nix b/pkgs/applications/graphics/upscayl/default.nix
index f7e1d41b5135..12518b6f40a2 100644
--- a/pkgs/applications/graphics/upscayl/default.nix
+++ b/pkgs/applications/graphics/upscayl/default.nix
@@ -18,7 +18,7 @@ in
   appimageTools.wrapType2 {
     inherit pname version src;
 
-    extraPkgs = pkgs: with pkgs; [vulkan-headers vulkan-loader];
+    extraPkgs = pkgs: [ pkgs.vulkan-headers pkgs.vulkan-loader ];
 
     extraInstallCommands = ''
       mkdir -p $out/share/{applications,pixmaps}
diff --git a/pkgs/applications/graphics/vengi-tools/default.nix b/pkgs/applications/graphics/vengi-tools/default.nix
index 5e584696d4f3..402d820843dd 100644
--- a/pkgs/applications/graphics/vengi-tools/default.nix
+++ b/pkgs/applications/graphics/vengi-tools/default.nix
@@ -29,13 +29,13 @@
 
 stdenv.mkDerivation (finalAttrs: {
   pname = "vengi-tools";
-  version = "0.0.30";
+  version = "0.0.31";
 
   src = fetchFromGitHub {
     owner = "mgerhardy";
     repo = "vengi";
     rev = "v${finalAttrs.version}";
-    hash = "sha256-Qdjwop92udrPiczMInhvRUMn9uZu6iBMAWzqDWySy94=";
+    hash = "sha256-0ta7rBWc4qUqsKDU/KSzx2x+fF2GVw77lQvRgt4bkpI=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/applications/graphics/xournalpp/default.nix b/pkgs/applications/graphics/xournalpp/default.nix
index 54f7287513b1..2c61584dae5a 100644
--- a/pkgs/applications/graphics/xournalpp/default.nix
+++ b/pkgs/applications/graphics/xournalpp/default.nix
@@ -3,7 +3,7 @@
 
 , cmake
 , gettext
-, wrapGAppsHook
+, wrapGAppsHook3
 , pkg-config
 
 , alsa-lib
@@ -40,7 +40,7 @@ stdenv.mkDerivation rec {
       --replace-fail "addr2line" "${binutils}/bin/addr2line"
   '';
 
-  nativeBuildInputs = [ cmake gettext pkg-config wrapGAppsHook ];
+  nativeBuildInputs = [ cmake gettext pkg-config wrapGAppsHook3 ];
 
   buildInputs =
     lib.optionals stdenv.isLinux [
diff --git a/pkgs/applications/graphics/xpano/default.nix b/pkgs/applications/graphics/xpano/default.nix
index 9842aca43dd8..c4b43c5963fe 100644
--- a/pkgs/applications/graphics/xpano/default.nix
+++ b/pkgs/applications/graphics/xpano/default.nix
@@ -10,7 +10,7 @@
 , catch2_3
 , spdlog
 , exiv2
-, wrapGAppsHook
+, wrapGAppsHook3
 }:
 
 stdenv.mkDerivation rec {
@@ -29,7 +29,7 @@ stdenv.mkDerivation rec {
     cmake
     ninja
     pkg-config
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
diff --git a/pkgs/applications/graphics/yed/default.nix b/pkgs/applications/graphics/yed/default.nix
index 4e70c9d37aba..7c6029312c8c 100644
--- a/pkgs/applications/graphics/yed/default.nix
+++ b/pkgs/applications/graphics/yed/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetchzip, makeWrapper, unzip, jre, wrapGAppsHook }:
+{ lib, stdenv, fetchzip, makeWrapper, unzip, jre, wrapGAppsHook3 }:
 
 stdenv.mkDerivation rec {
   pname = "yEd";
@@ -9,8 +9,8 @@ stdenv.mkDerivation rec {
     sha256 = "sha256-u83OmIzq9VygKbfa886mj6BIa/9ET1btry2nR/wxeyI=";
   };
 
-  nativeBuildInputs = [ makeWrapper unzip wrapGAppsHook ];
-  # For wrapGAppsHook setup hook
+  nativeBuildInputs = [ makeWrapper unzip wrapGAppsHook3 ];
+  # For wrapGAppsHook3 setup hook
   buildInputs = [ (jre.gtk3 or null) ];
 
   dontConfigure = true;
diff --git a/pkgs/applications/kde/audiotube.nix b/pkgs/applications/kde/audiotube.nix
index bf1ec3099029..c5a5da855008 100644
--- a/pkgs/applications/kde/audiotube.nix
+++ b/pkgs/applications/kde/audiotube.nix
@@ -2,7 +2,7 @@
 , mkDerivation
 
 , extra-cmake-modules
-, wrapGAppsHook
+, wrapGAppsHook3
 
 , futuresql
 , gst_all_1
@@ -24,7 +24,7 @@ mkDerivation rec {
 
   nativeBuildInputs = [
     extra-cmake-modules
-    wrapGAppsHook
+    wrapGAppsHook3
     python3Packages.wrapPython
     python3Packages.pybind11
   ];
diff --git a/pkgs/applications/kde/kasts.nix b/pkgs/applications/kde/kasts.nix
index e0f00a1db204..65e4d09409c7 100644
--- a/pkgs/applications/kde/kasts.nix
+++ b/pkgs/applications/kde/kasts.nix
@@ -3,7 +3,7 @@
 
 , cmake
 , extra-cmake-modules
-, wrapGAppsHook
+, wrapGAppsHook3
 
 , gst_all_1
 , kconfig
@@ -29,7 +29,7 @@ mkDerivation rec {
   nativeBuildInputs = [
     cmake
     extra-cmake-modules
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
diff --git a/pkgs/applications/kde/kdenlive/default.nix b/pkgs/applications/kde/kdenlive/default.nix
index 00330b76b3a0..85ccfb0f7408 100644
--- a/pkgs/applications/kde/kdenlive/default.nix
+++ b/pkgs/applications/kde/kdenlive/default.nix
@@ -33,7 +33,7 @@
 , rttr
 , kpurpose
 , kdeclarative
-, wrapGAppsHook
+, wrapGAppsHook3
 }:
 
 let
@@ -79,7 +79,7 @@ mkDerivation {
     rttr
     kpurpose
     kdeclarative
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
   # Both MLT and FFMpeg paths must be set or Kdenlive will complain that it
   # doesn't find them. See:
diff --git a/pkgs/applications/kde/partitionmanager/default.nix b/pkgs/applications/kde/partitionmanager/default.nix
index 90adde782c7f..f65eb6d02b0b 100644
--- a/pkgs/applications/kde/partitionmanager/default.nix
+++ b/pkgs/applications/kde/partitionmanager/default.nix
@@ -2,7 +2,7 @@
 , lib
 , extra-cmake-modules
 , kdoctools
-, wrapGAppsHook
+, wrapGAppsHook3
 , kconfig
 , kcrash
 , kinit
@@ -67,7 +67,7 @@ in
 mkDerivation {
   pname = "partitionmanager";
 
-  nativeBuildInputs = [ extra-cmake-modules kdoctools wrapGAppsHook ];
+  nativeBuildInputs = [ extra-cmake-modules kdoctools wrapGAppsHook3 ];
 
   propagatedBuildInputs = [ kconfig kcrash kinit kpmcore polkit-qt ];
 
diff --git a/pkgs/applications/kde/plasmatube/default.nix b/pkgs/applications/kde/plasmatube/default.nix
index cc83254cb2ac..fbb577e6c80b 100644
--- a/pkgs/applications/kde/plasmatube/default.nix
+++ b/pkgs/applications/kde/plasmatube/default.nix
@@ -1,7 +1,7 @@
 { lib
 , mkDerivation
 , extra-cmake-modules
-, wrapGAppsHook
+, wrapGAppsHook3
 , gst_all_1
 , kcoreaddons
 , kdeclarative
@@ -18,7 +18,7 @@ mkDerivation {
 
   nativeBuildInputs = [
     extra-cmake-modules
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
diff --git a/pkgs/applications/kde/skanlite.nix b/pkgs/applications/kde/skanlite.nix
index 2d2ca212d00c..0c518cc8ca22 100644
--- a/pkgs/applications/kde/skanlite.nix
+++ b/pkgs/applications/kde/skanlite.nix
@@ -1,6 +1,6 @@
 {
   mkDerivation, lib,
-  wrapGAppsHook,
+  wrapGAppsHook3,
   extra-cmake-modules, kdoctools,
   kio, libksane
 }:
@@ -15,6 +15,6 @@ mkDerivation {
     maintainers = with maintainers; [ polendri ];
   };
 
-  nativeBuildInputs = [ wrapGAppsHook extra-cmake-modules kdoctools ];
+  nativeBuildInputs = [ wrapGAppsHook3 extra-cmake-modules kdoctools ];
   buildInputs = [ kio libksane ];
 }
diff --git a/pkgs/applications/kde/spectacle.nix b/pkgs/applications/kde/spectacle.nix
index f5471e2d1086..e628a49b81c5 100644
--- a/pkgs/applications/kde/spectacle.nix
+++ b/pkgs/applications/kde/spectacle.nix
@@ -5,13 +5,13 @@
 , knotifications, kscreen, kwidgetsaddons, kwindowsystem, kxmlgui, libkipi
 , qtx11extras, knewstuff, kwayland, qttools, kcolorpicker, kimageannotator
 , qcoro, qtquickcontrols2, wayland, plasma-wayland-protocols, kpurpose, kpipewire
-, wrapGAppsHook
+, wrapGAppsHook3
 }:
 
 mkDerivation {
   pname = "spectacle";
 
-  nativeBuildInputs = [ extra-cmake-modules kdoctools wrapGAppsHook ];
+  nativeBuildInputs = [ extra-cmake-modules kdoctools wrapGAppsHook3 ];
   buildInputs = [
     kconfig kcoreaddons kdbusaddons kdeclarative ki18n kio knotifications
     kscreen kwidgetsaddons kwindowsystem kxmlgui libkipi qtx11extras xcb-util-cursor
diff --git a/pkgs/applications/misc/1password-gui/linux.nix b/pkgs/applications/misc/1password-gui/linux.nix
index 140adde918fc..bfd9df01dbfa 100644
--- a/pkgs/applications/misc/1password-gui/linux.nix
+++ b/pkgs/applications/misc/1password-gui/linux.nix
@@ -5,7 +5,7 @@
 , src
 , meta
 , makeShellWrapper
-, wrapGAppsHook
+, wrapGAppsHook3
 , alsa-lib
 , at-spi2-atk
 , at-spi2-core
@@ -49,7 +49,7 @@ let
 in stdenv.mkDerivation {
   inherit pname version src meta;
 
-  nativeBuildInputs = [ makeShellWrapper wrapGAppsHook ];
+  nativeBuildInputs = [ makeShellWrapper wrapGAppsHook3 ];
   buildInputs = [ glib ];
 
   dontConfigure = true;
diff --git a/pkgs/applications/misc/1password/default.nix b/pkgs/applications/misc/1password/default.nix
index 09bae86572cf..71f93ae40e7a 100644
--- a/pkgs/applications/misc/1password/default.nix
+++ b/pkgs/applications/misc/1password/default.nix
@@ -12,12 +12,12 @@ let
     if extension == "zip" then fetchzip args else fetchurl args;
 
   pname = "1password-cli";
-  version = "2.27.0";
+  version = "2.28.0";
   sources = rec {
-    aarch64-linux = fetch "linux_arm64" "sha256-yutS8xSTRABt12+mEyU99R4eCHvuAwWdO40SZlUrtdc=" "zip";
-    i686-linux = fetch "linux_386" "sha256-juP//g9quhd7GRq5TNm3qAq+rOegGJ9u9F+fmGbfmbw=" "zip";
-    x86_64-linux = fetch "linux_amd64" "sha256-cFQ3lsHBV9fDoNK5ujTummIXA4591meP43KbiyWcbQk=" "zip";
-    aarch64-darwin = fetch "apple_universal" "sha256-fUwiEJxn4JdsViBQU2Odrw+Focp0ngH/RmfmW2Uu0Bo=" "pkg";
+    aarch64-linux = fetch "linux_arm64" "sha256-rF0HWKLdLDmT5nXqZyn+nwd3DZxkP76Jm+xofvA1dpU=" "zip";
+    i686-linux = fetch "linux_386" "sha256-b9OPsZJTGoAeedj/dv88lkX2Q4p9HG585mWyl7ZfDz4=" "zip";
+    x86_64-linux = fetch "linux_amd64" "sha256-5ZiMQaQLYUR9BZroyG0o+M79cR4GQb6rDyVmIcTZh3o=" "zip";
+    aarch64-darwin = fetch "apple_universal" "sha256-5VmogWqCYMdrg9dyRt4lurPmSRdUUHt4LT3lkOEKdEI=" "pkg";
     x86_64-darwin = aarch64-darwin;
   };
   platforms = builtins.attrNames sources;
diff --git a/pkgs/applications/misc/HentaiAtHome/default.nix b/pkgs/applications/misc/HentaiAtHome/default.nix
index e34c2434a4f5..bca7697f758a 100644
--- a/pkgs/applications/misc/HentaiAtHome/default.nix
+++ b/pkgs/applications/misc/HentaiAtHome/default.nix
@@ -10,11 +10,11 @@
 }:
 stdenvNoCC.mkDerivation rec {
   pname = "HentaiAtHome";
-  version = "1.6.2";
+  version = "1.6.3";
 
   src = fetchzip {
     url = "https://repo.e-hentai.org/hath/HentaiAtHome_${version}_src.zip";
-    hash = "sha256-ioL/GcnbYjt1IETH8521d1TcLGtENdFzceJui1ywXTY=";
+    hash = "sha512-kBB5mn9MwpkZ0z+Fl5ABs4YWBkXkMRcADYSAPkeifyhbYQQPOnijXKYZCkzE4UB3uQ1j6Kj6WnpO/4jquYEiOQ==";
     stripRoot = false;
   };
 
diff --git a/pkgs/applications/misc/almanah/default.nix b/pkgs/applications/misc/almanah/default.nix
index 48e663fe796c..f98a569fe603 100644
--- a/pkgs/applications/misc/almanah/default.nix
+++ b/pkgs/applications/misc/almanah/default.nix
@@ -22,7 +22,7 @@
 , pkg-config
 , python3
 , sqlite
-, wrapGAppsHook
+, wrapGAppsHook3
 }:
 
 stdenv.mkDerivation rec {
@@ -66,7 +66,7 @@ stdenv.mkDerivation rec {
     ninja
     pkg-config
     python3
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
diff --git a/pkgs/applications/misc/appeditor/default.nix b/pkgs/applications/misc/appeditor/default.nix
index 508c59bab7c2..46adf420932d 100644
--- a/pkgs/applications/misc/appeditor/default.nix
+++ b/pkgs/applications/misc/appeditor/default.nix
@@ -11,7 +11,7 @@
 , glib
 , gtk3
 , libgee
-, wrapGAppsHook
+, wrapGAppsHook3
 }:
 
 stdenv.mkDerivation rec {
@@ -32,7 +32,7 @@ stdenv.mkDerivation rec {
     vala
     pkg-config
     python3
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
diff --git a/pkgs/applications/misc/audio/sox/default.nix b/pkgs/applications/misc/audio/sox/default.nix
index bb751ae01c9d..44e1f0992ad7 100644
--- a/pkgs/applications/misc/audio/sox/default.nix
+++ b/pkgs/applications/misc/audio/sox/default.nix
@@ -31,7 +31,7 @@
 , enableAMR ? false
 , amrnb
 , amrwb
-, enableLibpulseaudio ? stdenv.isLinux
+, enableLibpulseaudio ? stdenv.isLinux && lib.meta.availableOn stdenv.hostPlatform libpulseaudio
 , libpulseaudio
 }:
 
diff --git a/pkgs/applications/misc/auto-multiple-choice/default.nix b/pkgs/applications/misc/auto-multiple-choice/default.nix
index bdd1e6fbb854..c39430091e0d 100644
--- a/pkgs/applications/misc/auto-multiple-choice/default.nix
+++ b/pkgs/applications/misc/auto-multiple-choice/default.nix
@@ -3,7 +3,7 @@
 , fetchurl
 , perlPackages
 , makeWrapper
-, wrapGAppsHook
+, wrapGAppsHook3
 , cairo
 , dblatex
 , gnumake
@@ -99,7 +99,7 @@ stdenv.mkDerivation (finalAttrs: rec {
   nativeBuildInputs = [
     pkg-config
     makeWrapper
-    wrapGAppsHook
+    wrapGAppsHook3
     gobject-introspection
   ];
 
diff --git a/pkgs/applications/misc/avizo/default.nix b/pkgs/applications/misc/avizo/default.nix
index 59021e92b0d8..77d942797abc 100644
--- a/pkgs/applications/misc/avizo/default.nix
+++ b/pkgs/applications/misc/avizo/default.nix
@@ -13,7 +13,7 @@
 , librsvg
 , gobject-introspection
 , gdk-pixbuf
-, wrapGAppsHook
+, wrapGAppsHook3
 , pamixer
 , brightnessctl
 }:
@@ -29,7 +29,7 @@ stdenv.mkDerivation rec {
     sha256 = "sha256-Vj8OrNlAstl0AXTeVAPdEf5JgnAmJwl9s3Jdc0ZiYQc=";
   };
 
-  nativeBuildInputs = [ meson ninja pkg-config vala gobject-introspection wrapGAppsHook ];
+  nativeBuildInputs = [ meson ninja pkg-config vala gobject-introspection wrapGAppsHook3 ];
 
   buildInputs = [ dbus dbus-glib gdk-pixbuf glib gtk-layer-shell gtk3 librsvg ];
 
diff --git a/pkgs/applications/misc/bambu-studio/default.nix b/pkgs/applications/misc/bambu-studio/default.nix
index 43b6cb8769ef..184ad1d8163e 100644
--- a/pkgs/applications/misc/bambu-studio/default.nix
+++ b/pkgs/applications/misc/bambu-studio/default.nix
@@ -8,7 +8,7 @@
   fetchFromGitHub,
   cmake,
   pkg-config,
-  wrapGAppsHook,
+  wrapGAppsHook3,
   boost179,
   cereal,
   cgal_5,
@@ -34,7 +34,7 @@
   mesa,
   mpfr,
   nlopt,
-  opencascade-occt,
+  opencascade-occt_7_6,
   openvdb,
   pcre,
   qhull,
@@ -47,6 +47,7 @@
   withSystemd ? stdenv.isLinux,
 }:
 let
+  opencascade-occt = opencascade-occt_7_6;
   wxGTK31' = wxGTK31.overrideAttrs (old: {
     configureFlags = old.configureFlags ++ [
       # Disable noisy debug dialogs
@@ -78,7 +79,7 @@ stdenv.mkDerivation rec {
   nativeBuildInputs = [
     cmake
     pkg-config
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
diff --git a/pkgs/applications/misc/barrier/default.nix b/pkgs/applications/misc/barrier/default.nix
index d02712848b72..ee988b79f821 100644
--- a/pkgs/applications/misc/barrier/default.nix
+++ b/pkgs/applications/misc/barrier/default.nix
@@ -1,5 +1,5 @@
 { lib, fetchFromGitHub, cmake, curl, xorg, avahi, qtbase, mkDerivation,
-  openssl, wrapGAppsHook,
+  openssl, wrapGAppsHook3,
   avahiWithLibdnssdCompat ? avahi.override { withLibdnssdCompat = true; },
   fetchpatch
 }:
@@ -32,7 +32,7 @@ mkDerivation rec {
   ];
 
   buildInputs = [ curl xorg.libX11 xorg.libXext xorg.libXtst avahiWithLibdnssdCompat qtbase ];
-  nativeBuildInputs = [ cmake wrapGAppsHook ];
+  nativeBuildInputs = [ cmake wrapGAppsHook3 ];
 
   postFixup = ''
     substituteInPlace "$out/share/applications/barrier.desktop" --replace "Exec=barrier" "Exec=$out/bin/barrier"
diff --git a/pkgs/applications/misc/bazecor/default.nix b/pkgs/applications/misc/bazecor/default.nix
index 7387bc212c64..ed1900836fcc 100644
--- a/pkgs/applications/misc/bazecor/default.nix
+++ b/pkgs/applications/misc/bazecor/default.nix
@@ -28,9 +28,7 @@ appimageTools.wrapAppImage rec {
   # taken from
   # https://github.com/Dygmalab/Bazecor/blob/v1.3.11/src/main/utils/udev.ts#L6
 
-  extraPkgs = p: (appimageTools.defaultFhsEnvArgs.multiPkgs p) ++ [
-    p.glib
-  ];
+  extraPkgs = pkgs: [ pkgs.glib ];
 
   # Also expose the udev rules here, so it can be used as:
   #   services.udev.packages = [ pkgs.bazecor ];
diff --git a/pkgs/applications/misc/bleachbit/default.nix b/pkgs/applications/misc/bleachbit/default.nix
index c6e4adf8a560..bb0e777186a2 100644
--- a/pkgs/applications/misc/bleachbit/default.nix
+++ b/pkgs/applications/misc/bleachbit/default.nix
@@ -3,7 +3,7 @@
 , fetchurl
 , gettext
 , gobject-introspection
-, wrapGAppsHook
+, wrapGAppsHook3
 , glib
 , gtk3
 , libnotify
@@ -23,7 +23,7 @@ python3Packages.buildPythonApplication rec {
   nativeBuildInputs = [
     gettext
     gobject-introspection
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
diff --git a/pkgs/applications/misc/blender/darwin.patch b/pkgs/applications/misc/blender/darwin.patch
index c86aa2444602..192516758c94 100644
--- a/pkgs/applications/misc/blender/darwin.patch
+++ b/pkgs/applications/misc/blender/darwin.patch
@@ -1,27 +1,25 @@
-diff --git a/CMakeLists.txt b/CMakeLists.txt
---- a/CMakeLists.txt
-+++ b/CMakeLists.txt
-@@ -1894,7 +1894,7 @@ if(WITH_COMPILER_SHORT_FILE_MACRO)
-   ADD_CHECK_CXX_COMPILER_FLAG(CXX_PREFIX_MAP_FLAGS CXX_MACRO_PREFIX_MAP -fmacro-prefix-map=foo=bar)
+--- a/CMakeLists.txt	2024-03-01 08:08:05
++++ b/CMakeLists.txt	2024-04-24 15:45:30
+@@ -2134,7 +2134,7 @@
+   )
    if(C_MACRO_PREFIX_MAP AND CXX_MACRO_PREFIX_MAP)
      if(APPLE)
 -      if(XCODE AND ${XCODE_VERSION} VERSION_LESS 12.0)
 +      if(FALSE)
        # Developers may have say LLVM Clang-10.0.1 toolchain (which supports the flag)
        # with Xcode-11 (the Clang of which doesn't support the flag).
-         message(WARNING
-diff --git a/build_files/cmake/platform/platform_apple.cmake b/build_files/cmake/platform/platform_apple.cmake
---- a/build_files/cmake/platform/platform_apple.cmake
-+++ b/build_files/cmake/platform/platform_apple.cmake
-@@ -60,7 +60,6 @@ else()
-   message(STATUS "Using pre-compiled LIBDIR: ${LIBDIR}")
+         message(
+--- a/build_files/cmake/platform/platform_apple.cmake	2024-02-22 15:31:36
++++ b/build_files/cmake/platform/platform_apple.cmake	2024-04-24 16:06:13
+@@ -55,7 +55,6 @@
+   endif()
  endif()
- if(NOT EXISTS "${LIBDIR}/")
+ if(NOT EXISTS "${LIBDIR}/.git")
 -  message(FATAL_ERROR "Mac OSX requires pre-compiled libs at: '${LIBDIR}'")
  endif()
- 
- # Prefer lib directory paths
-@@ -98,10 +97,6 @@ if(WITH_CODEC_SNDFILE)
+ if(FIRST_RUN)
+   message(STATUS "Using pre-compiled LIBDIR: ${LIBDIR}")
+@@ -115,10 +114,6 @@
    find_library(_sndfile_VORBIS_LIBRARY NAMES vorbis HINTS ${LIBDIR}/ffmpeg/lib)
    find_library(_sndfile_VORBISENC_LIBRARY NAMES vorbisenc HINTS ${LIBDIR}/ffmpeg/lib)
    list(APPEND LIBSNDFILE_LIBRARIES
@@ -32,44 +30,26 @@ diff --git a/build_files/cmake/platform/platform_apple.cmake b/build_files/cmake
    )
  
    print_found_status("SndFile libraries" "${LIBSNDFILE_LIBRARIES}")
-@@ -118,7 +113,7 @@ if(WITH_PYTHON)
-     # Normally cached but not since we include them with blender.
-     set(PYTHON_INCLUDE_DIR "${LIBDIR}/python/include/python${PYTHON_VERSION}")
-     set(PYTHON_EXECUTABLE "${LIBDIR}/python/bin/python${PYTHON_VERSION}")
--    set(PYTHON_LIBRARY ${LIBDIR}/python/lib/libpython${PYTHON_VERSION}.a)
-+    set(PYTHON_LIBRARY ${LIBDIR}/python/lib/libpython${PYTHON_VERSION}.dylib)
-     set(PYTHON_LIBPATH "${LIBDIR}/python/lib/python${PYTHON_VERSION}")
-   else()
-     # Module must be compiled against Python framework.
-@@ -147,7 +142,7 @@ endif()
- 
- # FreeType compiled with Brotli compression for woff2.
- find_package(Freetype REQUIRED)
--list(APPEND FREETYPE_LIBRARIES
-+message(TRACE APPEND FREETYPE_LIBRARIES
-   ${LIBDIR}/brotli/lib/libbrotlicommon-static.a
-   ${LIBDIR}/brotli/lib/libbrotlidec-static.a)
- 
-@@ -159,9 +154,7 @@ if(WITH_CODEC_FFMPEG)
+@@ -162,9 +157,7 @@
    set(FFMPEG_ROOT_DIR ${LIBDIR}/ffmpeg)
    set(FFMPEG_FIND_COMPONENTS
      avcodec avdevice avformat avutil
 -    mp3lame ogg opus swresample swscale
 -    theora theoradec theoraenc vorbis vorbisenc
--    vorbisfile vpx x264 xvidcore)
-+    swresample swscale)
+-    vorbisfile vpx x264)
++   swresample swscale)
    if(EXISTS ${LIBDIR}/ffmpeg/lib/libaom.a)
      list(APPEND FFMPEG_FIND_COMPONENTS aom)
    endif()
-@@ -273,7 +266,6 @@ if(WITH_BOOST)
- endif()
+@@ -275,7 +268,6 @@
+ add_bundled_libraries(boost/lib)
  
  if(WITH_INTERNATIONAL OR WITH_CODEC_FFMPEG)
 -  string(APPEND PLATFORM_LINKFLAGS " -liconv") # boost_locale and ffmpeg needs it !
  endif()
  
  if(WITH_PUGIXML)
-@@ -402,7 +394,7 @@ endif()
+@@ -350,7 +342,7 @@
  
  # CMake FindOpenMP doesn't know about AppleClang before 3.12, so provide custom flags.
  if(WITH_OPENMP)
@@ -78,3 +58,12 @@ diff --git a/build_files/cmake/platform/platform_apple.cmake b/build_files/cmake
      # Use OpenMP from our precompiled libraries.
      message(STATUS "Using ${LIBDIR}/openmp for OpenMP")
      set(OPENMP_CUSTOM ON)
+@@ -427,7 +419,7 @@
+   " -Wl,-unexported_symbols_list,'${PLATFORM_SYMBOLS_MAP}'"
+ )
+ 
+-if(${XCODE_VERSION} VERSION_GREATER_EQUAL 15.0)
++if(FALSE)
+   if("${CMAKE_OSX_ARCHITECTURES}" STREQUAL "x86_64")
+     # Silence "no platform load command found in <static library>, assuming: macOS".
+     string(APPEND PLATFORM_LINKFLAGS " -Wl,-ld_classic")
diff --git a/pkgs/applications/misc/blender/default.nix b/pkgs/applications/misc/blender/default.nix
index 8cc7d4dd01f6..e54cae9e56a2 100644
--- a/pkgs/applications/misc/blender/default.nix
+++ b/pkgs/applications/misc/blender/default.nix
@@ -8,12 +8,14 @@
   addOpenGLRunpath,
   alembic,
   boost,
+  brotli,
   callPackage,
   cmake,
   colladaSupport ? true,
   config,
   cudaPackages,
   cudaSupport ? config.cudaSupport,
+  darwin,
   dbus,
   embree,
   fetchurl,
@@ -51,6 +53,7 @@
   libxkbcommon,
   llvmPackages,
   makeWrapper,
+  materialx,
   mesa,
   ocl-icd,
   openal,
@@ -71,6 +74,7 @@
   rocmPackages, # comes with a significantly larger closure size
   runCommand,
   spaceNavSupport ? stdenv.isLinux,
+  sse2neon,
   stdenv,
   tbb,
   wayland,
@@ -114,15 +118,14 @@ stdenv.mkDerivation (finalAttrs: {
         ''
           : > build_files/cmake/platform/platform_apple_xcode.cmake
           substituteInPlace source/creator/CMakeLists.txt \
-            --replace '${"$"}{LIBDIR}/python' \
-                      '${python3}'
-          substituteInPlace build_files/cmake/platform/platform_apple.cmake \
-            --replace '${"$"}{LIBDIR}/python' \
+            --replace-fail '${"$"}{LIBDIR}/python' \
                       '${python3}' \
-            --replace '${"$"}{LIBDIR}/opencollada' \
-                      '${opencollada}' \
-            --replace '${"$"}{PYTHON_LIBPATH}/site-packages/numpy' \
-                      '${python3Packages.numpy}/${python3.sitePackages}/numpy'
+            --replace-fail '${"$"}{LIBDIR}/materialx/' '${materialx}/'
+          substituteInPlace build_files/cmake/platform/platform_apple.cmake \
+            --replace-fail '${"$"}{LIBDIR}/brotli/lib/libbrotlicommon-static.a' \
+                      '${lib.getLib brotli}/lib/libbrotlicommon.dylib' \
+            --replace-fail '${"$"}{LIBDIR}/brotli/lib/libbrotlidec-static.a' \
+                      '${lib.getLib brotli}/lib/libbrotlidec.dylib'
         ''
       else
         ''
@@ -150,6 +153,7 @@ stdenv.mkDerivation (finalAttrs: {
       "-DWITH_FFTW3=ON"
       "-DWITH_IMAGE_OPENJPEG=ON"
       "-DWITH_INSTALL_PORTABLE=OFF"
+      "-DMaterialX_DIR=${materialx}/lib/cmake/MaterialX"
       "-DWITH_MOD_OCEANSIM=ON"
       "-DWITH_OPENCOLLADA=${if colladaSupport then "ON" else "OFF"}"
       "-DWITH_OPENCOLORIO=ON"
@@ -164,7 +168,7 @@ stdenv.mkDerivation (finalAttrs: {
 
       # Blender supplies its own FindAlembic.cmake (incompatible with the Alembic-supplied config file)
       "-DALEMBIC_INCLUDE_DIR=${lib.getDev alembic}/include"
-      "-DALEMBIC_LIBRARY=${lib.getLib alembic}/lib/libAlembic.so"
+      "-DALEMBIC_LIBRARY=${lib.getLib alembic}/lib/libAlembic${stdenv.hostPlatform.extensions.sharedLibrary}"
     ]
     ++ lib.optionals waylandSupport [
       "-DWITH_GHOST_WAYLAND=ON"
@@ -172,11 +176,12 @@ stdenv.mkDerivation (finalAttrs: {
       "-DWITH_GHOST_WAYLAND_DYNLOAD=OFF"
       "-DWITH_GHOST_WAYLAND_LIBDECOR=ON"
     ]
-    ++ lib.optionals stdenv.hostPlatform.isAarch64 [ "-DWITH_CYCLES_EMBREE=OFF" ]
+    ++ lib.optionals (stdenv.hostPlatform.isAarch64 && stdenv.hostPlatform.isLinux) [ "-DWITH_CYCLES_EMBREE=OFF" ]
     ++ lib.optionals stdenv.isDarwin [
       "-DLIBDIR=/does-not-exist"
-      "-DWITH_CYCLES_OSL=OFF" # requires LLVM
-      "-DWITH_OPENVDB=OFF" # OpenVDB currently doesn't build on darwin
+      "-DWITH_CYCLES_OSL=OFF" # causes segfault on aarch64-darwin
+      "-DSSE2NEON_INCLUDE_DIR=${sse2neon}/lib"
+      "-DWITH_USD=OFF" # currently fails on darwin
     ]
     ++ lib.optional stdenv.cc.isClang "-DPYTHON_LINKFLAGS=" # Clang doesn't support "-export-dynamic"
     ++ lib.optional jackaudioSupport "-DWITH_JACK=ON"
@@ -219,21 +224,22 @@ stdenv.mkDerivation (finalAttrs: {
       libsndfile
       libtiff
       libwebp
+      materialx
       opencolorio
       openexr
       openimageio
       openjpeg
       openpgl
       (opensubdiv.override { inherit cudaSupport; })
+      openvdb
       potrace
       pugixml
-      pyPkgsOpenusd
       python3
       tbb
       zlib
       zstd
     ]
-    ++ lib.optionals (!stdenv.isAarch64) [
+    ++ lib.optionals (!stdenv.isAarch64 && stdenv.isLinux) [
       embree
       (openimagedenoise.override { inherit cudaSupport; })
     ]
@@ -248,8 +254,8 @@ stdenv.mkDerivation (finalAttrs: {
           libXrender
           libXxf86vm
           openal
-          openvdb # OpenVDB currently doesn't build on darwin
           openxr-loader
+          pyPkgsOpenusd
         ]
       else
         [
@@ -259,7 +265,11 @@ stdenv.mkDerivation (finalAttrs: {
           OpenAL
           OpenGL
           SDL
+          brotli
+          embree
           llvmPackages.openmp
+          (openimagedenoise.override { inherit cudaSupport; })
+          sse2neon
         ]
     )
     ++ lib.optionals cudaSupport [ cudaPackages.cuda_cudart ]
@@ -280,11 +290,12 @@ stdenv.mkDerivation (finalAttrs: {
       ps = python3Packages;
     in
     [
+      materialx
       ps.numpy
       ps.requests
       ps.zstandard
-      pyPkgsOpenusd
-    ];
+    ]
+    ++ lib.optionals (!stdenv.isDarwin) [ pyPkgsOpenusd ];
 
   blenderExecutable =
     placeholder "out"
@@ -295,8 +306,10 @@ stdenv.mkDerivation (finalAttrs: {
       mkdir $out/Applications
       mv $out/Blender.app $out/Applications
     ''
-    + ''
+    + lib.optionalString stdenv.isLinux ''
       mv $out/share/blender/${lib.versions.majorMinor finalAttrs.version}/python{,-ext}
+    ''
+    + ''
       buildPythonPath "$pythonPath"
       wrapProgram $blenderExecutable \
         --prefix PATH : $program_PATH \
@@ -311,6 +324,9 @@ stdenv.mkDerivation (finalAttrs: {
       isELF "$program" || continue
       addOpenGLRunpath "$program"
     done
+  ''
+  + lib.optionalString stdenv.isDarwin ''
+    makeWrapper $out/Applications/Blender.app/Contents/MacOS/Blender $out/bin/blender
   '';
 
   passthru = {
@@ -327,15 +343,13 @@ stdenv.mkDerivation (finalAttrs: {
     tests = {
       render = runCommand "${finalAttrs.pname}-test" { } ''
         set -euo pipefail
-
         export LIBGL_DRIVERS_PATH=${mesa.drivers}/lib/dri
         export __EGL_VENDOR_LIBRARY_FILENAMES=${mesa.drivers}/share/glvnd/egl_vendor.d/50_mesa.json
-
         cat <<'PYTHON' > scene-config.py
         import bpy
         bpy.context.scene.eevee.taa_render_samples = 32
         bpy.context.scene.cycles.samples = 32
-        if ${if stdenv.isAarch64 then "True" else "False"}:
+        if ${if (stdenv.isAarch64 && stdenv.isLinux) then "True" else "False"}:
             bpy.context.scene.cycles.use_denoising = False
         bpy.context.scene.render.resolution_x = 100
         bpy.context.scene.render.resolution_y = 100
@@ -347,7 +361,7 @@ stdenv.mkDerivation (finalAttrs: {
         for engine in BLENDER_EEVEE CYCLES; do
           echo "Rendering with $engine..."
           # Beware that argument order matters
-          ${finalAttrs.finalPackage}/bin/blender \
+          ${lib.getExe finalAttrs.finalPackage} \
             --background \
             -noaudio \
             --factory-startup \
@@ -372,8 +386,10 @@ stdenv.mkDerivation (finalAttrs: {
       "aarch64-linux"
       "x86_64-darwin"
       "x86_64-linux"
+      "aarch64-darwin"
     ];
-    broken = stdenv.isDarwin;
+    # the current apple sdk is too old (currently 11_0) and fails to build "metal" on x86_64-darwin
+    broken = stdenv.hostPlatform.system == "x86_64-darwin";
     maintainers = with lib.maintainers; [
       goibhniu
       veprbl
diff --git a/pkgs/applications/misc/break-time/default.nix b/pkgs/applications/misc/break-time/default.nix
index a4bbf4d4c104..2b6263e3223e 100644
--- a/pkgs/applications/misc/break-time/default.nix
+++ b/pkgs/applications/misc/break-time/default.nix
@@ -6,7 +6,7 @@
 , python3
 , rustPlatform
 , lib
-, wrapGAppsHook
+, wrapGAppsHook3
 }:
 
 rustPlatform.buildRustPackage rec {
@@ -27,7 +27,7 @@ rustPlatform.buildRustPackage rec {
   nativeBuildInputs = [
     pkg-config
     python3 # needed for Rust xcb package
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
diff --git a/pkgs/applications/misc/caerbannog/default.nix b/pkgs/applications/misc/caerbannog/default.nix
index 0d21c7e16570..0ca33877d124 100644
--- a/pkgs/applications/misc/caerbannog/default.nix
+++ b/pkgs/applications/misc/caerbannog/default.nix
@@ -6,7 +6,7 @@
 , meson
 , ninja
 , pkg-config
-, wrapGAppsHook
+, wrapGAppsHook3
 , gtk3
 , atk
 , libhandy
@@ -32,7 +32,7 @@ python3.pkgs.buildPythonApplication rec {
     meson
     ninja
     pkg-config
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
diff --git a/pkgs/applications/misc/calibre/default.nix b/pkgs/applications/misc/calibre/default.nix
index ce72458f3a0f..013f41d35258 100644
--- a/pkgs/applications/misc/calibre/default.nix
+++ b/pkgs/applications/misc/calibre/default.nix
@@ -26,17 +26,17 @@
 , sqlite
 , wrapQtAppsHook
 , xdg-utils
-, wrapGAppsHook
+, wrapGAppsHook3
 , unrarSupport ? false
 }:
 
 stdenv.mkDerivation (finalAttrs: {
   pname = "calibre";
-  version = "7.9.0";
+  version = "7.10.0";
 
   src = fetchurl {
     url = "https://download.calibre-ebook.com/${finalAttrs.version}/calibre-${finalAttrs.version}.tar.xz";
-    hash = "sha256-Ilzv4HXW6ZmEVNUWQm04cHZ71FEgjfWVX9IvrfYCHIk=";
+    hash = "sha256-GvvvoqLBzapveKFSqlED471pUyRjLoYqU5YjN/L/nEs=";
   };
 
   patches = [
@@ -70,7 +70,7 @@ stdenv.mkDerivation (finalAttrs: {
     pkg-config
     qmake
     removeReferencesTo
-    wrapGAppsHook
+    wrapGAppsHook3
     wrapQtAppsHook
   ];
 
diff --git a/pkgs/applications/misc/cartridges/default.nix b/pkgs/applications/misc/cartridges/default.nix
index 008004aa3c8e..6481805cc996 100644
--- a/pkgs/applications/misc/cartridges/default.nix
+++ b/pkgs/applications/misc/cartridges/default.nix
@@ -13,13 +13,13 @@
 }:
 stdenv.mkDerivation (finalAttrs: {
   pname = "cartridges";
-  version = "2.7.4";
+  version = "2.8.4";
 
   src = fetchFromGitHub {
     owner = "kra-mo";
     repo = "cartridges";
     rev = "v${finalAttrs.version}";
-    hash = "sha256-AfO+vLJSWdaMqqbzRZWrY94nu/9BM7mqdad9rkiq1pg=";
+    hash = "sha256-x6utIvU4LxM/CJogy5JrFrDTLFmXbgItgqtT+lM7FGA=";
   };
 
   pythonPath = with python3Packages; [
@@ -67,7 +67,7 @@ stdenv.mkDerivation (finalAttrs: {
       and more with no login necessary.
       You can sort and hide games or download cover art from SteamGridDB.
     '';
-    homepage = "https://apps.gnome.org/app/hu.kramo.Cartridges/";
+    homepage = "https://apps.gnome.org/Cartridges/";
     license = licenses.gpl3Plus;
     maintainers = [ maintainers.getchoo ];
     platforms = platforms.linux;
diff --git a/pkgs/applications/misc/cbatticon/default.nix b/pkgs/applications/misc/cbatticon/default.nix
index 665957ca0ea1..122170300632 100644
--- a/pkgs/applications/misc/cbatticon/default.nix
+++ b/pkgs/applications/misc/cbatticon/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetchFromGitHub, pkg-config, gettext, glib, gtk3, libnotify, wrapGAppsHook }:
+{ lib, stdenv, fetchFromGitHub, pkg-config, gettext, glib, gtk3, libnotify, wrapGAppsHook3 }:
 
 stdenv.mkDerivation rec {
   pname = "cbatticon";
@@ -11,7 +11,7 @@ stdenv.mkDerivation rec {
     sha256 = "sha256-VQjJujF9lnVvQxV+0YqodLgnI9F90JKDAGBu5nM/Q/c=";
   };
 
-  nativeBuildInputs = [ pkg-config gettext wrapGAppsHook ];
+  nativeBuildInputs = [ pkg-config gettext wrapGAppsHook3 ];
 
   buildInputs =  [ glib gtk3 libnotify ];
 
diff --git a/pkgs/applications/misc/cherrytree/default.nix b/pkgs/applications/misc/cherrytree/default.nix
index ffa44c63f96c..48d382e284ff 100644
--- a/pkgs/applications/misc/cherrytree/default.nix
+++ b/pkgs/applications/misc/cherrytree/default.nix
@@ -4,7 +4,7 @@
 , cmake
 , pkg-config
 , python3
-, wrapGAppsHook
+, wrapGAppsHook3
 , gtkmm3
 , gtksourceview
 , gtksourceviewmm
@@ -33,7 +33,7 @@ stdenv.mkDerivation rec {
     cmake
     pkg-config
     python3
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
diff --git a/pkgs/applications/misc/cipher/default.nix b/pkgs/applications/misc/cipher/default.nix
index 8486db6f7fc0..a51279c73a26 100644
--- a/pkgs/applications/misc/cipher/default.nix
+++ b/pkgs/applications/misc/cipher/default.nix
@@ -11,7 +11,7 @@
 , glib
 , gtk3
 , libgee
-, wrapGAppsHook }:
+, wrapGAppsHook3 }:
 
 stdenv.mkDerivation rec {
   pname = "cipher";
@@ -31,7 +31,7 @@ stdenv.mkDerivation rec {
     vala
     pkg-config
     python3
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
diff --git a/pkgs/applications/misc/clight/clight-gui.nix b/pkgs/applications/misc/clight/clight-gui.nix
new file mode 100644
index 000000000000..da7dd77deeaa
--- /dev/null
+++ b/pkgs/applications/misc/clight/clight-gui.nix
@@ -0,0 +1,34 @@
+{ lib
+, stdenv
+, fetchFromGitHub
+, cmake
+, qtbase
+, qtcharts
+, wrapQtAppsHook
+}:
+
+stdenv.mkDerivation rec {
+  pname = "clight-gui";
+  version = "unstable-2023-02-21";
+
+  src = fetchFromGitHub {
+    owner = "nullobsi";
+    repo = "clight-gui";
+    rev = "29e7216bfcc68135350a695ce446134bcb0463a6";
+    hash = "sha256-U4vaMwnVDZnYLc+K3/yD81Q1vyBL8uSrrhOHbjbox5U=";
+  };
+
+  buildInputs = [ qtbase qtcharts ];
+  nativeBuildInputs = [ cmake wrapQtAppsHook ];
+
+  sourceRoot = "${src.name}/src";
+
+  meta = with lib; {
+    description = "Qt GUI for clight";
+    homepage = "https://github.com/nullobsi/clight-gui";
+    license = licenses.gpl3Only;
+    maintainers = with maintainers; [ nickhu ];
+    mainProgram = "clight-gui";
+    platforms = platforms.linux;
+  };
+}
diff --git a/pkgs/applications/misc/clipit/default.nix b/pkgs/applications/misc/clipit/default.nix
index b40bc4fec930..0bd48d2adf63 100644
--- a/pkgs/applications/misc/clipit/default.nix
+++ b/pkgs/applications/misc/clipit/default.nix
@@ -1,6 +1,6 @@
 { fetchFromGitHub, lib, stdenv
 , autoreconfHook, intltool, pkg-config
-, gtk3, libayatana-appindicator, xdotool, which, wrapGAppsHook }:
+, gtk3, libayatana-appindicator, xdotool, which, wrapGAppsHook3 }:
 
 stdenv.mkDerivation rec {
   pname = "clipit";
@@ -17,7 +17,7 @@ stdenv.mkDerivation rec {
     intltoolize --copy --force --automake
   '';
 
-  nativeBuildInputs = [ pkg-config wrapGAppsHook autoreconfHook intltool ];
+  nativeBuildInputs = [ pkg-config wrapGAppsHook3 autoreconfHook intltool ];
   configureFlags = [ "--with-gtk3" "--enable-appindicator=yes" ];
   buildInputs = [ gtk3 libayatana-appindicator ];
 
diff --git a/pkgs/applications/misc/cobang/default.nix b/pkgs/applications/misc/cobang/default.nix
index 336b4d7c1a50..999bc4e0cc89 100644
--- a/pkgs/applications/misc/cobang/default.nix
+++ b/pkgs/applications/misc/cobang/default.nix
@@ -19,19 +19,19 @@
 , setuptools
 , python
 , pytestCheckHook
-, wrapGAppsHook
+, wrapGAppsHook3
 }:
 
 buildPythonApplication rec {
   pname = "cobang";
-  version = "0.10.9";
+  version = "0.12.0";
   pyproject = true;
 
   src = fetchFromGitHub {
     owner = "hongquan";
     repo = "CoBang";
     rev = "refs/tags/v${version}";
-    hash = "sha256-xOP2XkmHOGMe50dn4StX/9veTdloLHq76ENWEUK4Keo=";
+    hash = "sha256-4INScFnYSwVnGjaohgDL3Sv/NeIwiiyLux8c9/Y/Wq4=";
   };
 
   postPatch = ''
@@ -43,7 +43,7 @@ buildPythonApplication rec {
   nativeBuildInputs = [
     # Needed to recognize gobject namespaces
     gobject-introspection
-    wrapGAppsHook
+    wrapGAppsHook3
     setuptools
   ];
 
diff --git a/pkgs/applications/misc/cotp/default.nix b/pkgs/applications/misc/cotp/default.nix
index 10ec80724739..827a76fdd451 100644
--- a/pkgs/applications/misc/cotp/default.nix
+++ b/pkgs/applications/misc/cotp/default.nix
@@ -8,16 +8,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "cotp";
-  version = "1.5.0";
+  version = "1.7.0";
 
   src = fetchFromGitHub {
     owner = "replydev";
     repo = "cotp";
     rev = "v${version}";
-    hash = "sha256-Zs/RUpyu8GG4koprC+8aSzpPUSLc19p/XinY5fR5Z4A=";
+    hash = "sha256-Qr4pHtTQfJjRiFI4vZAynRWyJWYqWHYhZH4Mgd6OgR8=";
   };
 
-  cargoHash = "sha256-jYKu1sAzPUfv8gQj3V4zxarRj3XUhyD/5n1WqMuLF/g=";
+  cargoHash = "sha256-U/kVN8oaNuZ9CdLkAQWK3H5kZv5qZgzWQwi8pHMVPcM=";
 
   buildInputs = lib.optionals stdenv.isLinux [ libxcb ]
     ++ lib.optionals stdenv.isDarwin [ AppKit ];
diff --git a/pkgs/applications/misc/dialect/default.nix b/pkgs/applications/misc/dialect/default.nix
index 61414a9b307b..9eb7db6212cc 100644
--- a/pkgs/applications/misc/dialect/default.nix
+++ b/pkgs/applications/misc/dialect/default.nix
@@ -20,7 +20,7 @@
 
 python3.pkgs.buildPythonApplication rec {
   pname = "dialect";
-  version = "2.2.0";
+  version = "2.3.0";
 
   format = "other";
 
@@ -29,19 +29,10 @@ python3.pkgs.buildPythonApplication rec {
     repo = "dialect";
     rev = version;
     fetchSubmodules = true;
-    hash = "sha256-+0qA+jFYrK3K3mJNvxTvnT/3q4c51H0KgEMjzvV34Zs=";
+    hash = "sha256-A6jZHcSzHSmHLvyegyzxjQ6+jL6rLb7oefhryXoSrH4=";
   };
 
-  # FIXME: remove in next release
-  postPatch = ''
-    substituteInPlace dialect/providers/lingva.py \
-      --replace-fail 'lingva.ml' 'lingva.dialectapp.org'
-    substituteInPlace dialect/providers/libretrans.py \
-      --replace-fail 'libretranslate.de' 'lt.dialectapp.org'
-  '';
-
   nativeBuildInputs = [
-    appstream-glib
     blueprint-compiler
     desktop-file-utils
     gobject-introspection
diff --git a/pkgs/applications/misc/diebahn/default.nix b/pkgs/applications/misc/diebahn/default.nix
index 52a004a83017..eb45e2c4eba0 100644
--- a/pkgs/applications/misc/diebahn/default.nix
+++ b/pkgs/applications/misc/diebahn/default.nix
@@ -21,19 +21,19 @@
 
 stdenv.mkDerivation rec {
   pname = "diebahn";
-  version = "2.4.0";
+  version = "2.5.0";
 
   src = fetchFromGitLab {
     owner = "schmiddi-on-mobile";
     repo = "railway";
     rev = version;
-    hash = "sha256-2iLxErEP0OG+BcG7fvJBzNjh95EkNoC3NC7rKxPLhYk=";
+    hash = "sha256-Oj+y3BFAVzWUt+S0iOtKzFBiJGOGHuTj41FHHuOrWh8=";
   };
 
   cargoDeps = rustPlatform.fetchCargoTarball {
     name = "${pname}-${src}";
     inherit src;
-    hash = "sha256-TyafdFWCaZgLEW2yVfm9+9kXRKoiyCAbRndcb7XCVdI=";
+    hash = "sha256-//tr1CLn5Qoc+XMFzwNIvmsQD4SrjNRTX3hUPqlhwNs=";
   };
 
   nativeBuildInputs = [
@@ -70,7 +70,7 @@ stdenv.mkDerivation rec {
 
   meta = {
     changelog = "https://gitlab.com/schmiddi-on-mobile/railway/-/blob/${src.rev}/CHANGELOG.md";
-    description = "Travel with all your train information in one place";
+    description = "Travel with all your train information in one place. Also known as Railway.";
     homepage = "https://gitlab.com/schmiddi-on-mobile/railway";
     license = lib.licenses.gpl3Plus;
     mainProgram = "diebahn";
diff --git a/pkgs/applications/misc/diffuse/default.nix b/pkgs/applications/misc/diffuse/default.nix
index 0f5cf3c0adc1..a4a9e73db86e 100644
--- a/pkgs/applications/misc/diffuse/default.nix
+++ b/pkgs/applications/misc/diffuse/default.nix
@@ -3,7 +3,7 @@
 , meson
 , ninja
 , gettext
-, wrapGAppsHook
+, wrapGAppsHook3
 , gobject-introspection
 , pango
 , gdk-pixbuf
@@ -27,7 +27,7 @@ python3.pkgs.buildPythonApplication rec {
   format = "other";
 
   nativeBuildInputs = [
-    wrapGAppsHook
+    wrapGAppsHook3
     meson
     ninja
     gettext
diff --git a/pkgs/applications/misc/dockbarx/default.nix b/pkgs/applications/misc/dockbarx/default.nix
index 3b147bdcc360..815a482a216f 100644
--- a/pkgs/applications/misc/dockbarx/default.nix
+++ b/pkgs/applications/misc/dockbarx/default.nix
@@ -6,7 +6,7 @@
 , keybinder3
 , libwnck
 , python3Packages
-, wrapGAppsHook
+, wrapGAppsHook3
 }:
 
 python3Packages.buildPythonApplication rec {
@@ -24,7 +24,7 @@ python3Packages.buildPythonApplication rec {
     glib.dev
     gobject-introspection
     python3Packages.polib
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
diff --git a/pkgs/applications/misc/electrum/default.nix b/pkgs/applications/misc/electrum/default.nix
index eb24885ca142..8250ebfe289b 100644
--- a/pkgs/applications/misc/electrum/default.nix
+++ b/pkgs/applications/misc/electrum/default.nix
@@ -2,6 +2,7 @@
 , stdenv
 , fetchurl
 , fetchFromGitHub
+, fetchpatch
 , wrapQtAppsHook
 , python3
 , zbar
@@ -109,7 +110,30 @@ python.pkgs.buildPythonApplication {
     pyqt6
   ];
 
+  patches = [
+    # aiorpcx 0.23.1 compatibility
+    # Note: this patches `/run_electrum`.
+    # In the source repo, `/electrum/electrum`
+    # is a symlink to `../run_electrum`,
+    # so that path would also be affected by the patch.
+    # However, in the distribution tarball used here,
+    # `/electrum/electrum` is simply an exact copy of
+    # `/run_electrum` and is thereby *not* affected.
+    # So we have to manually copy the patched `/run_electrum`
+    # over `/electrum/electrum` after the patching (see below).
+    # XXX remove the copy command in `postPatch`
+    # as soon as the patch itself is removed!
+    (fetchpatch {
+      url = "https://github.com/spesmilo/electrum/commit/5f95d919dfa9868eaf82889903b94faa8c6443e0.patch";
+      hash = "sha256-cEkduLsL6A8qPhXS2KPQWzVtkQPYQhHSbuwQ2SnanHw=";
+    })
+  ];
+
   postPatch = ''
+    # copy the patched `/run_electrum` over `/electrum/electrum`
+    # so the aiorpcx compatibility patch is used
+    cp run_electrum electrum/electrum
+
     # make compatible with protobuf4 by easing dependencies ...
     substituteInPlace ./contrib/requirements/requirements.txt \
       --replace "protobuf>=3.20,<4" "protobuf>=3.20"
diff --git a/pkgs/applications/misc/electrum/ltc-aiorpcX-version-bump.patch b/pkgs/applications/misc/electrum/ltc-aiorpcX-version-bump.patch
new file mode 100644
index 000000000000..8c7af75a5406
--- /dev/null
+++ b/pkgs/applications/misc/electrum/ltc-aiorpcX-version-bump.patch
@@ -0,0 +1,44 @@
+diff --git a/contrib/deterministic-build/requirements.txt b/contrib/deterministic-build/requirements.txt
+index 7441e3389..2a4718f96 100644
+--- a/contrib/deterministic-build/requirements.txt
++++ b/contrib/deterministic-build/requirements.txt
+@@ -74,9 +74,8 @@ aiohttp==3.8.1 \
+ aiohttp-socks==0.7.1 \
+     --hash=sha256:2215cac4891ef3fa14b7d600ed343ed0f0a670c23b10e4142aa862b3db20341a \
+     --hash=sha256:94bcff5ef73611c6c6231c2ffc1be4af1599abec90dbd2fdbbd63233ec2fb0ff
+-aiorpcX==0.22.1 \
+-    --hash=sha256:6026f7bed3432e206589c94dcf599be8cd85b5736b118c7275845c1bd922a553 \
+-    --hash=sha256:e74f9fbed3fd21598e71fe05066618fc2c06feec504fe29490ddda05fdbdde62
++aiorpcX==0.23.1 \
++    --hash=sha256:5b23002f1a4d5d3085e31555a07519c5ef8d4c40071eb499556ffda8114860a2
+ aiosignal==1.2.0 \
+     --hash=sha256:26e62109036cd181df6e6ad646f91f0dcfd05fe16d0cb924138ff2ab75d64e3a \
+     --hash=sha256:78ed67db6c7b7ced4f98e495e572106d5c432a93e1ddd1bf475e1dc05f5b7df2
+diff --git a/contrib/requirements/requirements.txt b/contrib/requirements/requirements.txt
+index 04b0a77f3..2330ea921 100644
+--- a/contrib/requirements/requirements.txt
++++ b/contrib/requirements/requirements.txt
+@@ -1,7 +1,7 @@
+ qrcode
+ protobuf>=3.12
+ qdarkstyle>=2.7
+-aiorpcx>=0.22.0,<0.23
++aiorpcx>=0.22.0,<0.24
+ aiohttp>=3.3.0,<4.0.0
+ aiohttp_socks>=0.3
+ certifi
+diff --git a/run_electrum b/run_electrum
+index a1b30f29e..cb22f8724 100755
+--- a/run_electrum
++++ b/run_electrum
+@@ -67,8 +67,8 @@ def check_imports():
+         import aiorpcx
+     except ImportError as e:
+         sys.exit(f"Error: {str(e)}. Try 'sudo python3 -m pip install <module-name>'")
+-    if not ((0, 22, 0) <= aiorpcx._version < (0, 23)):
+-        raise RuntimeError(f'aiorpcX version {aiorpcx._version} does not match required: 0.22.0<=ver<0.23')
++    if not ((0, 22, 0) <= aiorpcx._version < (0, 24)):
++        raise RuntimeError(f'aiorpcX version {aiorpcx._version} does not match required: 0.22.0<=ver<0.24')
+     # the following imports are for pyinstaller
+     from google.protobuf import descriptor
+     from google.protobuf import message
diff --git a/pkgs/applications/misc/electrum/ltc.nix b/pkgs/applications/misc/electrum/ltc.nix
index a85252027e96..ef52f6211fda 100644
--- a/pkgs/applications/misc/electrum/ltc.nix
+++ b/pkgs/applications/misc/electrum/ltc.nix
@@ -82,6 +82,26 @@ python3.pkgs.buildPythonApplication {
     qdarkstyle
   ];
 
+  patches = [
+    # electrum-ltc attempts to pin to aiorpcX < 0.23, but nixpkgs
+    # has moved to newer versions.
+    #
+    # electrum-ltc hasn't been updated in some time, so we replicate
+    # the patch from electrum (BTC) and alter it to be usable with
+    # electrum-ltc.
+    #
+    # Similar to the BTC patch, we need to overwrite the symlink
+    # at electrum_ltc/electrum-ltc with the patched run_electrum
+    # in postPatch.
+    ./ltc-aiorpcX-version-bump.patch
+  ];
+
+  postPatch = ''
+    # copy the patched `/run_electrum` over `/electrum/electrum`
+    # so the aiorpcx compatibility patch is used
+    cp run_electrum electrum_ltc/electrum-ltc
+  '';
+
   preBuild = ''
     sed -i 's,usr_share = .*,usr_share = "'$out'/share",g' setup.py
     substituteInPlace ./electrum_ltc/ecc_fast.py \
diff --git a/pkgs/applications/misc/elogind/default.nix b/pkgs/applications/misc/elogind/default.nix
index 56f8be698f32..a8b71f34ede5 100644
--- a/pkgs/applications/misc/elogind/default.nix
+++ b/pkgs/applications/misc/elogind/default.nix
@@ -12,7 +12,7 @@
 , udev
 , eudev
 , libxslt
-, python3
+, python3Packages
 , docbook5
 , docbook_xsl
 , docbook_xsl_ns
@@ -47,11 +47,13 @@ stdenv.mkDerivation rec {
     gettext
     libxslt.bin # xsltproc
     docbook5 docbook_xsl docbook_xsl_ns docbook_xml_dtd_42 docbook_xml_dtd_45 # needed for docbook without Internet
-    (python3.withPackages (p: with p; [ lxml ]))  # fixes: man/meson.build:111:0: ERROR: Could not execute command "/build/source/tools/xml_helper.py".
+
+    # fixes: man/meson.build:111:0: ERROR: Could not execute command "/build/source/tools/xml_helper.py".
+    python3Packages.python
+    python3Packages.lxml
   ];
 
-  buildInputs =
-    if enableSystemd then [ udev ] else [ eudev ];
+  buildInputs = [ libcap ] ++ (if enableSystemd then [ udev ] else [ eudev ]);
 
   # Inspired by the systemd `preConfigure`.
   # Conceptually we should patch all files required during the build, but not scripts
diff --git a/pkgs/applications/misc/exercism/default.nix b/pkgs/applications/misc/exercism/default.nix
index d91f35980404..b3ea4b96b915 100644
--- a/pkgs/applications/misc/exercism/default.nix
+++ b/pkgs/applications/misc/exercism/default.nix
@@ -2,16 +2,16 @@
 
 buildGoModule rec {
   pname = "exercism";
-  version = "3.3.0";
+  version = "3.4.0";
 
   src = fetchFromGitHub {
     owner = "exercism";
     repo  = "cli";
     rev   = "refs/tags/v${version}";
-    hash  = "sha256-Mtb5c1/k8kp7bETOSE0X969BV176jpoprr1/mQ3E4Vg=";
+    hash  = "sha256-+Tg9b7JZtriF5b+mnLgOeTTLiswH/dSGg3Mj1TBt4Wk=";
   };
 
-  vendorHash = "sha256-fnsSvbuVGRAndU88su2Ck7mV8QBDhxozdmwI3XGtxcA=";
+  vendorHash = "sha256-xY3C3emqtPIKyxIN9aEkrLXhTxWNmo0EJXNZVtbtIvs=";
 
   doCheck = false;
 
diff --git a/pkgs/applications/misc/fbmenugen/default.nix b/pkgs/applications/misc/fbmenugen/default.nix
index 90d3f3b01424..56a3ce5f28dd 100644
--- a/pkgs/applications/misc/fbmenugen/default.nix
+++ b/pkgs/applications/misc/fbmenugen/default.nix
@@ -6,7 +6,7 @@
 , perlPackages
 , substituteAll
 , xorg
-, wrapGAppsHook
+, wrapGAppsHook3
 , gitUpdater
 }:
 
@@ -33,7 +33,7 @@ perlPackages.buildPerlPackage rec {
 
   nativeBuildInputs = [
     makeWrapper
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
diff --git a/pkgs/applications/misc/feedbackd/default.nix b/pkgs/applications/misc/feedbackd/default.nix
index 45da9c1afaa8..f0d90a495c77 100644
--- a/pkgs/applications/misc/feedbackd/default.nix
+++ b/pkgs/applications/misc/feedbackd/default.nix
@@ -12,7 +12,7 @@
 , ninja
 , pkg-config
 , vala
-, wrapGAppsHook
+, wrapGAppsHook3
 , glib
 , gsound
 , json-glib
@@ -59,7 +59,7 @@ stdenv.mkDerivation rec {
     ninja
     pkg-config
     vala
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
diff --git a/pkgs/applications/misc/findex/default.nix b/pkgs/applications/misc/findex/default.nix
index 29ddc3d461a4..8af4fc35d7de 100644
--- a/pkgs/applications/misc/findex/default.nix
+++ b/pkgs/applications/misc/findex/default.nix
@@ -2,7 +2,7 @@
 , rustPlatform
 , fetchFromGitHub
 , pkg-config
-, wrapGAppsHook
+, wrapGAppsHook3
 , keybinder3
 }:
 
@@ -26,7 +26,7 @@ rustPlatform.buildRustPackage rec {
       --replace-fail '/opt/findex/style.css' "$out/share/findex/style.css"
   '';
 
-  nativeBuildInputs = [ pkg-config wrapGAppsHook ];
+  nativeBuildInputs = [ pkg-config wrapGAppsHook3 ];
 
   buildInputs = [ keybinder3 ];
 
diff --git a/pkgs/applications/misc/firefly-desktop/default.nix b/pkgs/applications/misc/firefly-desktop/default.nix
index 41cd6c42a5b3..0db1a801c5da 100644
--- a/pkgs/applications/misc/firefly-desktop/default.nix
+++ b/pkgs/applications/misc/firefly-desktop/default.nix
@@ -12,7 +12,7 @@ let
 in appimageTools.wrapType2 {
   inherit pname version src;
 
-  extraPkgs = pkgs: (appimageTools.defaultFhsEnvArgs.multiPkgs pkgs) ++ [ pkgs.libsecret ];
+  extraPkgs = pkgs: [ pkgs.libsecret ];
 
   extraInstallCommands = ''
     mkdir -p $out/share/applications $out/share/pixmaps
diff --git a/pkgs/applications/misc/fluidd/default.nix b/pkgs/applications/misc/fluidd/default.nix
index 150bbd570037..3694f8e23220 100644
--- a/pkgs/applications/misc/fluidd/default.nix
+++ b/pkgs/applications/misc/fluidd/default.nix
@@ -2,12 +2,12 @@
 
 stdenvNoCC.mkDerivation rec {
   pname = "fluidd";
-  version = "1.29.1";
+  version = "1.30.0";
 
   src = fetchurl {
     name = "fluidd-v${version}.zip";
     url = "https://github.com/cadriel/fluidd/releases/download/v${version}/fluidd.zip";
-    sha256 = "sha256-Zh/H1XAUcFl20yPLt9uIqBLDvUH8ATL9g6oFwvyhkzw=";
+    sha256 = "sha256-+nPVnKuZtYGFtqC48XNISSjay3lDAYR3l50kq026H3Q=";
   };
 
   nativeBuildInputs = [ unzip ];
diff --git a/pkgs/applications/misc/fluxboxlauncher/default.nix b/pkgs/applications/misc/fluxboxlauncher/default.nix
index 19e70ad7c54c..7172ce535071 100644
--- a/pkgs/applications/misc/fluxboxlauncher/default.nix
+++ b/pkgs/applications/misc/fluxboxlauncher/default.nix
@@ -2,7 +2,7 @@
 , fetchFromGitHub
 , python3
 , gtk3
-, wrapGAppsHook
+, wrapGAppsHook3
 , glibcLocales
 , gobject-introspection
 , gettext
@@ -24,7 +24,7 @@ python3.pkgs.buildPythonApplication rec {
   };
 
   nativeBuildInputs = [
-    wrapGAppsHook
+    wrapGAppsHook3
     gobject-introspection
     pango
     gdk-pixbuf
diff --git a/pkgs/applications/misc/font-manager/default.nix b/pkgs/applications/misc/font-manager/default.nix
index 309d8fa2faf5..95594cb030d0 100644
--- a/pkgs/applications/misc/font-manager/default.nix
+++ b/pkgs/applications/misc/font-manager/default.nix
@@ -16,7 +16,8 @@
 , gtk3
 , gnome
 , desktop-file-utils
-, wrapGAppsHook
+, fetchpatch2
+, wrapGAppsHook3
 , gobject-introspection
 # withWebkit enables the "webkit" feature, also known as Google Fonts
 , withWebkit ? true, glib-networking, libsoup, webkitgtk
@@ -33,6 +34,16 @@ stdenv.mkDerivation rec {
     hash = "sha256-M13Q9d2cKhc0tudkvw0zgqPAFTlmXwK+LltXeuDPWxo=";
   };
 
+  patches = [
+    # see https://github.com/FontManager/font-manager/issues/355
+    # should be removed on next release
+    (fetchpatch2 {
+      name = "fix-build-with-newer-vala.patch";
+      url = "https://github.com/FontManager/font-manager/commit/600f498946c3904064b4e4fdf96e5841f6a827e4.patch";
+      hash = "sha256-DC9+pvG88t+PPdGQ2oemeEYK9PaD0C2yWBYYCh4Wn9g=";
+    })
+  ];
+
   nativeBuildInputs = [
     pkg-config
     meson
@@ -43,7 +54,7 @@ stdenv.mkDerivation rec {
     desktop-file-utils
     vala
     yelp-tools
-    wrapGAppsHook
+    wrapGAppsHook3
     # For https://github.com/FontManager/master/blob/master/lib/unicode/meson.build
     gobject-introspection
   ];
diff --git a/pkgs/applications/misc/fontfinder/default.nix b/pkgs/applications/misc/fontfinder/default.nix
index f0fc3dfd3a7d..db55b0206526 100644
--- a/pkgs/applications/misc/fontfinder/default.nix
+++ b/pkgs/applications/misc/fontfinder/default.nix
@@ -5,7 +5,7 @@
 , pkg-config
 , rustPlatform
 , rustc
-, wrapGAppsHook
+, wrapGAppsHook3
 , gdk-pixbuf
 , gtk3
 , libsoup_3
@@ -34,7 +34,7 @@ stdenv.mkDerivation rec {
     pkg-config
     rustPlatform.cargoSetupHook
     rustc
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
diff --git a/pkgs/applications/misc/formatter/default.nix b/pkgs/applications/misc/formatter/default.nix
index f53ea0f030ca..8f5c4c9c6b32 100644
--- a/pkgs/applications/misc/formatter/default.nix
+++ b/pkgs/applications/misc/formatter/default.nix
@@ -16,7 +16,7 @@
 , hfsprogs
 , ntfs3g
 , libgee
-, wrapGAppsHook
+, wrapGAppsHook3
 }:
 
 stdenv.mkDerivation rec {
@@ -47,7 +47,7 @@ stdenv.mkDerivation rec {
     vala
     pkg-config
     python3
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
diff --git a/pkgs/applications/misc/foxtrotgps/default.nix b/pkgs/applications/misc/foxtrotgps/default.nix
index 745a2357e236..bb9049dde791 100644
--- a/pkgs/applications/misc/foxtrotgps/default.nix
+++ b/pkgs/applications/misc/foxtrotgps/default.nix
@@ -1,5 +1,5 @@
 { lib, stdenv, fetchbzr, autoreconfHook, texinfo, help2man, imagemagick, pkg-config
-, curl, gnome2, gpsd, gtk2, wrapGAppsHook
+, curl, gnome2, gpsd, gtk2, wrapGAppsHook3
 , intltool, libexif, python3Packages, sqlite }:
 
 let
@@ -24,7 +24,7 @@ in stdenv.mkDerivation rec {
 
   nativeBuildInputs = [
     pkg-config autoreconfHook texinfo help2man
-    imagemagick wrapGAppsHook intltool
+    imagemagick wrapGAppsHook3 intltool
   ];
 
   buildInputs = [
diff --git a/pkgs/applications/misc/gImageReader/default.nix b/pkgs/applications/misc/gImageReader/default.nix
index bc293b455b2a..8aa564fc780b 100644
--- a/pkgs/applications/misc/gImageReader/default.nix
+++ b/pkgs/applications/misc/gImageReader/default.nix
@@ -6,7 +6,7 @@
 
 # Gtk deps
 # upstream gImagereader supports Qt too
-, gobject-introspection, wrapGAppsHook
+, gobject-introspection, wrapGAppsHook3
 , gtkmm3, gtksourceview3, gtksourceviewmm, gtkspell3, gtkspellmm, cairomm
 }:
 
@@ -32,7 +32,7 @@ stdenv.mkDerivation rec {
     pythonEnv
 
     # Gtk specific
-    wrapGAppsHook
+    wrapGAppsHook3
     gobject-introspection
   ];
 
diff --git a/pkgs/applications/misc/gcstar/default.nix b/pkgs/applications/misc/gcstar/default.nix
index 0f6478f50fcd..02662f11f96b 100644
--- a/pkgs/applications/misc/gcstar/default.nix
+++ b/pkgs/applications/misc/gcstar/default.nix
@@ -1,7 +1,7 @@
 { lib, stdenv
 , fetchFromGitLab
 , perlPackages
-, wrapGAppsHook
+, wrapGAppsHook3
 }:
 
 stdenv.mkDerivation rec {
@@ -15,7 +15,7 @@ stdenv.mkDerivation rec {
     sha256 = "sha256-37yjKI4l/nUzDnra1AGxDQxNafMsLi1bSifG6pz33zg=";
   };
 
-  nativeBuildInputs = [ wrapGAppsHook ];
+  nativeBuildInputs = [ wrapGAppsHook3 ];
 
   buildInputs = with perlPackages; [
     perl
diff --git a/pkgs/applications/misc/genxword/default.nix b/pkgs/applications/misc/genxword/default.nix
index 5ba67ecddcdb..199a63f96719 100644
--- a/pkgs/applications/misc/genxword/default.nix
+++ b/pkgs/applications/misc/genxword/default.nix
@@ -3,7 +3,7 @@
 , fetchFromGitHub
 , gettext
 , gobject-introspection
-, wrapGAppsHook
+, wrapGAppsHook3
 , pango
 , gtksourceview3
 }:
@@ -22,7 +22,7 @@ python3.pkgs.buildPythonApplication rec {
   nativeBuildInputs = [
     gettext
     gobject-introspection
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
diff --git a/pkgs/applications/misc/gkrellm/default.nix b/pkgs/applications/misc/gkrellm/default.nix
index 523ba837f3a1..218110f6d17d 100644
--- a/pkgs/applications/misc/gkrellm/default.nix
+++ b/pkgs/applications/misc/gkrellm/default.nix
@@ -12,7 +12,7 @@
 , IOKit
 , copyDesktopItems
 , makeDesktopItem
-, wrapGAppsHook
+, wrapGAppsHook3
 }:
 
 stdenv.mkDerivation rec {
@@ -24,7 +24,7 @@ stdenv.mkDerivation rec {
     sha256 = "01lccz4fga40isv09j8rjgr0qy10rff9vj042n6gi6gdv4z69q0y";
   };
 
-  nativeBuildInputs = [ copyDesktopItems pkg-config which wrapGAppsHook ];
+  nativeBuildInputs = [ copyDesktopItems pkg-config which wrapGAppsHook3 ];
   buildInputs = [ gettext glib gtk2 libX11 libSM libICE ]
     ++ lib.optionals stdenv.isDarwin [ IOKit ];
 
diff --git a/pkgs/applications/misc/glom/default.nix b/pkgs/applications/misc/glom/default.nix
index 5c8eb94712a6..67618ed083f5 100644
--- a/pkgs/applications/misc/glom/default.nix
+++ b/pkgs/applications/misc/glom/default.nix
@@ -31,7 +31,7 @@
 , postgresql_15
 , gobject-introspection
 , yelp-tools
-, wrapGAppsHook
+, wrapGAppsHook3
 }:
 
 let
@@ -70,7 +70,7 @@ in stdenv.mkDerivation rec {
     doxygen
     graphviz
     sphinx-build
-    wrapGAppsHook
+    wrapGAppsHook3
     gobject-introspection # for setup hook
   ];
 
diff --git a/pkgs/applications/misc/gmtp/default.nix b/pkgs/applications/misc/gmtp/default.nix
index 31c62f53423c..dc5111c2a722 100644
--- a/pkgs/applications/misc/gmtp/default.nix
+++ b/pkgs/applications/misc/gmtp/default.nix
@@ -1,5 +1,5 @@
 { lib, stdenv, fetchurl, pkg-config, libmtp, libid3tag, flac, libvorbis, gtk3
-, gsettings-desktop-schemas, wrapGAppsHook
+, gsettings-desktop-schemas, wrapGAppsHook3
 }:
 
 let version = "1.3.11"; in
@@ -13,7 +13,7 @@ stdenv.mkDerivation {
     sha256 = "04q6byyq002fhzkc2rkkahwh5b6272xakaj4m3vwm8la8jf0r0ss";
   };
 
-  nativeBuildInputs = [ pkg-config wrapGAppsHook ];
+  nativeBuildInputs = [ pkg-config wrapGAppsHook3 ];
   buildInputs = [ libmtp libid3tag flac libvorbis gtk3 gsettings-desktop-schemas ];
 
   enableParallelBuilding = true;
diff --git a/pkgs/applications/misc/gnome-multi-writer/default.nix b/pkgs/applications/misc/gnome-multi-writer/default.nix
index 0a37cadb8e2c..f73016681c0e 100644
--- a/pkgs/applications/misc/gnome-multi-writer/default.nix
+++ b/pkgs/applications/misc/gnome-multi-writer/default.nix
@@ -12,7 +12,7 @@
 , meson
 , ninja
 , pkg-config
-, wrapGAppsHook
+, wrapGAppsHook3
 , polkit
 , udisks
 }:
@@ -33,7 +33,7 @@ stdenv.mkDerivation rec {
     meson
     ninja
     pkg-config
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
diff --git a/pkgs/applications/misc/gnome-recipes/default.nix b/pkgs/applications/misc/gnome-recipes/default.nix
index d1680cdbaee2..ecc6413fe0f1 100644
--- a/pkgs/applications/misc/gnome-recipes/default.nix
+++ b/pkgs/applications/misc/gnome-recipes/default.nix
@@ -8,7 +8,7 @@
 , gettext
 , itstool
 , python3
-, wrapGAppsHook
+, wrapGAppsHook3
 , gtk3
 , glib
 , libsoup
@@ -42,7 +42,7 @@ stdenv.mkDerivation rec {
     gettext
     itstool
     python3
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
diff --git a/pkgs/applications/misc/gnome-tecla/default.nix b/pkgs/applications/misc/gnome-tecla/default.nix
index 43f77763f129..c1a3183086be 100644
--- a/pkgs/applications/misc/gnome-tecla/default.nix
+++ b/pkgs/applications/misc/gnome-tecla/default.nix
@@ -15,11 +15,11 @@
 
 stdenv.mkDerivation (finalAttrs: {
   pname = "tecla";
-  version = "45.0";
+  version = "46.0";
 
   src = fetchurl {
     url = "mirror://gnome/sources/tecla/${lib.versions.major finalAttrs.version}/tecla-${finalAttrs.version}.tar.xz";
-    hash = "sha256-XAK7QBmxz/tWY9phB1A+/4U4Nqh4PdRwXdBKSfetwls=";
+    hash = "sha256-Sggeq4Z6WosJdYmRytdkWSDzI6q8qVRAgpD7b0RZGw8=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/applications/misc/gnome-usage/default.nix b/pkgs/applications/misc/gnome-usage/default.nix
index c969c92ffdd2..85d7f36d2014 100644
--- a/pkgs/applications/misc/gnome-usage/default.nix
+++ b/pkgs/applications/misc/gnome-usage/default.nix
@@ -20,11 +20,11 @@
 
 stdenv.mkDerivation rec {
   pname = "gnome-usage";
-  version = "45.0";
+  version = "46.0";
 
   src = fetchurl {
     url = "mirror://gnome/sources/${pname}/${lib.versions.major version}/${pname}-${version}.tar.xz";
-    sha256 = "5nfE/iwBSXqE/x4RV+kTHp+ZmfGnjTUjSvHXfYJ18pQ=";
+    hash = "sha256-GGrajgAYjIn4yrVPNZmO2XpG6rb9shiRAoNhvzhqybI=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/applications/misc/golden-cheetah-bin/default.nix b/pkgs/applications/misc/golden-cheetah-bin/default.nix
index 308f43b7d463..3fcd77f8f4b7 100644
--- a/pkgs/applications/misc/golden-cheetah-bin/default.nix
+++ b/pkgs/applications/misc/golden-cheetah-bin/default.nix
@@ -14,7 +14,7 @@ in
 appimageTools.wrapType2 {
   inherit pname src version;
 
-  extraPkgs = pkgs: with pkgs; [ R zlib libusb-compat-0_1 ];
+  extraPkgs = pkgs: [ pkgs.R pkgs.zlib pkgs.libusb-compat-0_1 ];
 
   extraInstallCommands = ''
     mv $out/bin/${pname} $out/bin/GoldenCheetah
diff --git a/pkgs/applications/misc/goldendict-ng/default.nix b/pkgs/applications/misc/goldendict-ng/default.nix
index 5d86aece035d..9f8de3ad6e16 100644
--- a/pkgs/applications/misc/goldendict-ng/default.nix
+++ b/pkgs/applications/misc/goldendict-ng/default.nix
@@ -26,21 +26,21 @@
 , qtmultimedia
 , qtspeech
 , wrapQtAppsHook
-, wrapGAppsHook
+, wrapGAppsHook3
 }:
 
 stdenv.mkDerivation (finalAttrs: {
   pname = "goldendict-ng";
-  version = "24.01.22";
+  version = "24.05.05";
 
   src = fetchFromGitHub {
     owner = "xiaoyifang";
     repo = "goldendict-ng";
-    rev = "v${finalAttrs.version}-LoongYear.3dddb3be";
-    hash = "sha256-+OiZEkhNV06fZXPXv9zDzgJS5M3isHlcOXee3p/ejpw=";
+    rev = "v${finalAttrs.version}-LiXia.ecd1138c";
+    hash = "sha256-C/0FUFLE3R+tZyCL88BiSFOHPTanILD/fIIQ/OQBSfk=";
   };
 
-  nativeBuildInputs = [ pkg-config cmake wrapQtAppsHook wrapGAppsHook ];
+  nativeBuildInputs = [ pkg-config cmake wrapQtAppsHook wrapGAppsHook3 ];
   buildInputs = [
     qtbase
     qtsvg
diff --git a/pkgs/applications/misc/goldendict/default.nix b/pkgs/applications/misc/goldendict/default.nix
index a339e399e33d..4f5df502fdfc 100644
--- a/pkgs/applications/misc/goldendict/default.nix
+++ b/pkgs/applications/misc/goldendict/default.nix
@@ -2,7 +2,7 @@
 , libXtst, libvorbis, hunspell, lzo, xz, bzip2, libiconv
 , qtbase, qtsvg, qtwebkit, qtx11extras, qttools, qmake
 , wrapQtAppsHook
-, wrapGAppsHook
+, wrapGAppsHook3
 , withCC ? true, opencc
 , withEpwing ? true, libeb
 , withExtraTiff ? true, libtiff
@@ -32,7 +32,7 @@ stdenv.mkDerivation rec {
       --replace "opencc.2" "opencc"
   '';
 
-  nativeBuildInputs = [ pkg-config qmake wrapQtAppsHook wrapGAppsHook ];
+  nativeBuildInputs = [ pkg-config qmake wrapQtAppsHook wrapGAppsHook3 ];
   buildInputs = [
     qtbase qtsvg qtwebkit qttools
     libvorbis hunspell xz lzo
diff --git a/pkgs/applications/misc/gollum/Gemfile.lock b/pkgs/applications/misc/gollum/Gemfile.lock
index 007084e44aa0..7619d5f84ec8 100644
--- a/pkgs/applications/misc/gollum/Gemfile.lock
+++ b/pkgs/applications/misc/gollum/Gemfile.lock
@@ -14,7 +14,7 @@ GEM
     gemojione (4.3.3)
       json
     github-markup (4.0.2)
-    gollum (5.3.2)
+    gollum (5.3.3)
       gemojione (~> 4.1)
       gollum-lib (>= 5.2.3, < 6.0)
       i18n (~> 1.8)
@@ -48,7 +48,7 @@ GEM
     htmlentities (4.3.4)
     i18n (1.14.4)
       concurrent-ruby (~> 1.0)
-    json (2.7.1)
+    json (2.7.2)
     kramdown (2.4.0)
       rexml
     kramdown-parser-gfm (1.1.0)
@@ -59,14 +59,14 @@ GEM
     mime-types (3.5.2)
       mime-types-data (~> 3.2015)
     mime-types-data (3.2024.0305)
-    mini_portile2 (2.8.5)
+    mini_portile2 (2.8.6)
     multi_json (1.15.0)
     mustache (1.1.1)
     mustache-sinatra (2.0.0)
       mustache (~> 1.0)
     mustermann (2.0.2)
       ruby2_keywords (~> 0.0.1)
-    nokogiri (1.16.3)
+    nokogiri (1.16.4)
       mini_portile2 (~> 2.8.2)
       racc (~> 1.4)
     octicons (12.1.0)
@@ -146,4 +146,4 @@ DEPENDENCIES
   wikicloth
 
 BUNDLED WITH
-   2.5.6
+   2.5.7
diff --git a/pkgs/applications/misc/gollum/gemset.nix b/pkgs/applications/misc/gollum/gemset.nix
index 95533bffd107..9a613ab689de 100644
--- a/pkgs/applications/misc/gollum/gemset.nix
+++ b/pkgs/applications/misc/gollum/gemset.nix
@@ -116,10 +116,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "07lv4idxxghmq18k2r42l7kxz204l2fgri5xjapl79yy9dk53s5x";
+      sha256 = "0k94yba33ccvx3h7vl3d4jkx8j8y45a7qy3angf8094b0hy2p1fi";
       type = "gem";
     };
-    version = "5.3.2";
+    version = "5.3.3";
   };
   gollum-lib = {
     dependencies = ["gemojione" "github-markup" "gollum-rugged_adapter" "loofah" "nokogiri" "octicons" "rouge" "twitter-text"];
@@ -169,10 +169,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0r9jmjhg2ly3l736flk7r2al47b5c8cayh0gqkq0yhjqzc9a6zhq";
+      sha256 = "0b4qsi8gay7ncmigr0pnbxyb17y3h8kavdyhsh7nrlqwr35vb60q";
       type = "gem";
     };
-    version = "2.7.1";
+    version = "2.7.2";
   };
   kramdown = {
     dependencies = ["rexml"];
@@ -233,10 +233,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1kl9c3kdchjabrihdqfmcplk3lq4cw1rr9f378y6q22qwy5dndvs";
+      sha256 = "149r94xi6b3jbp6bv72f8383b95ndn0p5sxnq11gs1j9jadv0ajf";
       type = "gem";
     };
-    version = "2.8.5";
+    version = "2.8.6";
   };
   multi_json = {
     groups = ["default"];
@@ -286,10 +286,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0j72sg8n8834vbw2x8glcp46y5r2dls2pj64ll7rmf6mri9s52j9";
+      sha256 = "0i8g0i370jhn2sclml0bg9qlrgf4csi6sy7czbhx8kjbl71idhb2";
       type = "gem";
     };
-    version = "1.16.3";
+    version = "1.16.4";
   };
   octicons = {
     dependencies = ["nokogiri"];
diff --git a/pkgs/applications/misc/gpu-viewer/default.nix b/pkgs/applications/misc/gpu-viewer/default.nix
index 18a8f5396689..329babc36c68 100644
--- a/pkgs/applications/misc/gpu-viewer/default.nix
+++ b/pkgs/applications/misc/gpu-viewer/default.nix
@@ -19,7 +19,7 @@
 
 python3.pkgs.buildPythonApplication rec {
   pname = "gpu-viewer";
-  version = "3.02";
+  version = "3.04";
 
   format = "other";
 
@@ -27,7 +27,7 @@ python3.pkgs.buildPythonApplication rec {
     owner = "arunsivaramanneo";
     repo = pname;
     rev = "refs/tags/v${version}";
-    hash = "sha256-/m8kXCICvWDqKIC6DbhUAXsjT+RNLMTsvlVTx85AJhE=";
+    hash = "sha256-+FDBHSVBTUHnhu2n7i9W1zIZe2wjY+OuFwQOJZojuzs=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/applications/misc/gpx-viewer/default.nix b/pkgs/applications/misc/gpx-viewer/default.nix
index 9a18c9d5c9d9..daaf92fc72de 100644
--- a/pkgs/applications/misc/gpx-viewer/default.nix
+++ b/pkgs/applications/misc/gpx-viewer/default.nix
@@ -10,7 +10,7 @@
 , gnome
 , libchamplain
 , gdl
-, wrapGAppsHook
+, wrapGAppsHook3
 }:
 
 stdenv.mkDerivation rec {
@@ -37,7 +37,7 @@ stdenv.mkDerivation rec {
     ninja
     pkg-config
     vala
-    wrapGAppsHook # Fix error: GLib-GIO-ERROR **: No GSettings schemas are installed on the system
+    wrapGAppsHook3 # Fix error: GLib-GIO-ERROR **: No GSettings schemas are installed on the system
   ];
 
   buildInputs = [
diff --git a/pkgs/applications/misc/gradience/default.nix b/pkgs/applications/misc/gradience/default.nix
index fcb7d10c0162..3ddbe86cd78b 100644
--- a/pkgs/applications/misc/gradience/default.nix
+++ b/pkgs/applications/misc/gradience/default.nix
@@ -67,6 +67,7 @@ python3Packages.buildPythonApplication rec {
     pygobject3
     svglib
     yapsy
+    packaging
   ];
 
   preFixup = ''
diff --git a/pkgs/applications/misc/gramps/default.nix b/pkgs/applications/misc/gramps/default.nix
index fdfcfe4ce316..7feab95b003a 100644
--- a/pkgs/applications/misc/gramps/default.nix
+++ b/pkgs/applications/misc/gramps/default.nix
@@ -7,7 +7,7 @@
 , gexiv2
 , pango
 , gobject-introspection
-, wrapGAppsHook
+, wrapGAppsHook3
 , gettext
   # Optional packages:
 , enableOSM ? true
@@ -44,7 +44,7 @@ buildPythonApplication rec {
   ];
 
   nativeBuildInputs = [
-    wrapGAppsHook
+    wrapGAppsHook3
     intltool
     gettext
     gobject-introspection
diff --git a/pkgs/applications/misc/grsync/default.nix b/pkgs/applications/misc/grsync/default.nix
index da41a71d95ea..0e0a6cb87eeb 100644
--- a/pkgs/applications/misc/grsync/default.nix
+++ b/pkgs/applications/misc/grsync/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetchurl, dee, gtk3, intltool, libdbusmenu-gtk3, libunity, pkg-config, rsync, wrapGAppsHook }:
+{ lib, stdenv, fetchurl, dee, gtk3, intltool, libdbusmenu-gtk3, libunity, pkg-config, rsync, wrapGAppsHook3 }:
 
 stdenv.mkDerivation rec {
   version = "1.3.1";
@@ -12,7 +12,7 @@ stdenv.mkDerivation rec {
   nativeBuildInputs = [
     intltool
     pkg-config
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
diff --git a/pkgs/applications/misc/gummi/default.nix b/pkgs/applications/misc/gummi/default.nix
index 7131c5cd1227..857db4fd95bf 100644
--- a/pkgs/applications/misc/gummi/default.nix
+++ b/pkgs/applications/misc/gummi/default.nix
@@ -1,6 +1,6 @@
 { lib, stdenv, pkgs
 , glib, gtk3, gtksourceview3, gtkspell3, poppler, texlive
-, pkg-config, intltool, autoreconfHook, wrapGAppsHook
+, pkg-config, intltool, autoreconfHook, wrapGAppsHook3
 }:
 
 stdenv.mkDerivation rec {
@@ -15,7 +15,7 @@ stdenv.mkDerivation rec {
   };
 
   nativeBuildInputs = [
-    pkg-config intltool autoreconfHook wrapGAppsHook
+    pkg-config intltool autoreconfHook wrapGAppsHook3
   ];
   buildInputs = [
     glib gtksourceview3 gtk3 gtkspell3 poppler
diff --git a/pkgs/applications/misc/gxkb/default.nix b/pkgs/applications/misc/gxkb/default.nix
index 201cbdb0a11a..f64982ed717f 100644
--- a/pkgs/applications/misc/gxkb/default.nix
+++ b/pkgs/applications/misc/gxkb/default.nix
@@ -1,16 +1,16 @@
-{ lib, stdenv, fetchFromGitHub, autoreconfHook, pkg-config, gtk3, libwnck, libxklavier
+{ lib, stdenv, fetchFromGitHub, fetchurl, git, autoreconfHook, pkg-config, gtk3, libwnck, libxklavier
 , appindicatorSupport ? true, libayatana-appindicator
 }:
 
 stdenv.mkDerivation rec {
   pname = "gxkb";
-  version = "0.9.3";
+  version = "0.9.5";
 
   src = fetchFromGitHub {
     owner = "zen-tools";
     repo = "gxkb";
     rev = "v${version}";
-    sha256 = "sha256-9r1eZl7PgIt2ZpK+QQHaa460imIHT3Lh5mpzcFglyWc=";
+    sha256 = "sha256-oBIBIkj4p6HlF0PRQtI/K5dhLs7pbPxN7Cgr/YZaI1s=";
   };
 
   nativeBuildInputs = [ pkg-config autoreconfHook ];
@@ -19,6 +19,18 @@ stdenv.mkDerivation rec {
   configureFlags = lib.optional appindicatorSupport "--enable-appindicator=yes";
   outputs = [ "out" "man" ];
 
+  # This patch restore data which was wiped by upstream without any technical reasons
+  # https://github.com/omgbebebe/gxkb/commit/727ec8b595a91dbb540e6087750f43b85d0dfbc0
+  # NOTE: the `patch` hook cannot be used here due to lack of support for git binary patches
+  p1 = fetchurl {
+       url = "https://github.com/omgbebebe/gxkb/commit/727ec8b595a91dbb540e6087750f43b85d0dfbc0.patch";
+       hash = "sha256-x7x3MHHrOnPivvlzOFqgFAA5BDB2LOXMlalPYbwM/1Q=";
+  };
+
+  postPatch = ''
+    ${git}/bin/git apply ${p1}
+  '';
+
   meta = with lib; {
     description = "X11 keyboard indicator and switcher";
     homepage = "https://zen-tools.github.io/gxkb/";
diff --git a/pkgs/applications/misc/hamster/default.nix b/pkgs/applications/misc/hamster/default.nix
index c425014e24ed..bdab5d71e9ef 100644
--- a/pkgs/applications/misc/hamster/default.nix
+++ b/pkgs/applications/misc/hamster/default.nix
@@ -1,5 +1,5 @@
 { lib, fetchFromGitHub, python3Packages, intltool, glib, itstool, gtk3
-, wrapGAppsHook, gobject-introspection, pango, gdk-pixbuf, atk, wafHook }:
+, wrapGAppsHook3, gobject-introspection, pango, gdk-pixbuf, atk, wafHook }:
 
 python3Packages.buildPythonApplication rec {
   pname = "hamster";
@@ -16,7 +16,7 @@ python3Packages.buildPythonApplication rec {
 
   nativeBuildInputs = [
     python3Packages.setuptools
-    wrapGAppsHook
+    wrapGAppsHook3
     intltool
     itstool
     wafHook
diff --git a/pkgs/applications/misc/hcl2json/default.nix b/pkgs/applications/misc/hcl2json/default.nix
index 40bfede8551f..39073ee81b0f 100644
--- a/pkgs/applications/misc/hcl2json/default.nix
+++ b/pkgs/applications/misc/hcl2json/default.nix
@@ -5,16 +5,16 @@
 
 buildGoModule rec {
   pname = "hcl2json";
-  version = "0.6.2";
+  version = "0.6.3";
 
   src = fetchFromGitHub {
     owner = "tmccombs";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-lnmWIyS1byXvShR1/ej8PAuo+WJBEBykQwJ79439Fus=";
+    sha256 = "sha256-RBzx6TxkR6GwMGHIpkJeswZ3zV4hRf38rTGUO6u2OI4=";
   };
 
-  vendorHash = "sha256-HbdectUQgyQZ9qcfBarwRTF3VjzSqaM2vhVekThv2+k=";
+  vendorHash = "sha256-G/2bSFCXbph0bVjmWmcFgv4i/pCOQHhYxsVRVkpHPo4=";
 
   subPackages = [ "." ];
 
diff --git a/pkgs/applications/misc/hmm/default.nix b/pkgs/applications/misc/hmm/default.nix
index a78b953875c2..4f45c09ef63b 100644
--- a/pkgs/applications/misc/hmm/default.nix
+++ b/pkgs/applications/misc/hmm/default.nix
@@ -14,11 +14,14 @@ rustPlatform.buildRustPackage rec {
     hash = "sha256-WPePzqZ2iGeJ7kzTj8eg7q1JEjw91WY7gViJJ46SLRY=";
   };
 
-  cargoHash = "sha256-9Z49aPfcIdMfYCFAXsxFxcfhaLjtPod+nMFHDmvgDY0=";
+  cargoHash = "sha256-CQnM7pFnk4LcstKllhbeohbrggKV6MBQy03oq7DEkP4=";
 
   nativeCheckInputs = [
     perl
   ];
+  # FIXME: remove patch when upstream version of rustc-serialize is updated
+  # https://github.com/NixOS/nixpkgs/pull/310673
+  cargoPatches = [ ./rustc-serialize-fix.patch ];
 
   preCheck = ''
     export HOME=$(mktemp -d)
diff --git a/pkgs/applications/misc/hmm/rustc-serialize-fix.patch b/pkgs/applications/misc/hmm/rustc-serialize-fix.patch
new file mode 100644
index 000000000000..8d0327e8a457
--- /dev/null
+++ b/pkgs/applications/misc/hmm/rustc-serialize-fix.patch
@@ -0,0 +1,16 @@
+diff --git a/Cargo.lock b/Cargo.lock
+index b1cc23695b30..ffdeb1c90618 100644
+--- a/Cargo.lock
++++ b/Cargo.lock
+@@ -996,9 +996,9 @@ dependencies = [
+ 
+ [[package]]
+ name = "rustc-serialize"
+-version = "0.3.24"
++version = "0.3.25"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "dcf128d1287d2ea9d80910b5f1120d0b8eede3fbf1abe91c40d39ea7d51e6fda"
++checksum = "fe834bc780604f4674073badbad26d7219cadfb4a2275802db12cbae17498401"
+ 
+ [[package]]
+ name = "rustix"
diff --git a/pkgs/applications/misc/holochain-launcher/default.nix b/pkgs/applications/misc/holochain-launcher/default.nix
index 111a36e3ee02..3d7c6b6c205b 100644
--- a/pkgs/applications/misc/holochain-launcher/default.nix
+++ b/pkgs/applications/misc/holochain-launcher/default.nix
@@ -7,7 +7,7 @@
 , openssl
 , webkitgtk
 , libappindicator
-, wrapGAppsHook
+, wrapGAppsHook3
 , shared-mime-info
 , glib-networking
 }:
@@ -25,7 +25,7 @@ stdenv.mkDerivation rec {
   nativeBuildInputs = [
     autoPatchelfHook
     dpkg
-    wrapGAppsHook # required for FileChooser
+    wrapGAppsHook3 # required for FileChooser
   ];
 
   buildInputs = [
diff --git a/pkgs/applications/misc/hyprland-autoname-workspaces/default.nix b/pkgs/applications/misc/hyprland-autoname-workspaces/default.nix
index 7e3db80aadc8..1bec06a38c99 100644
--- a/pkgs/applications/misc/hyprland-autoname-workspaces/default.nix
+++ b/pkgs/applications/misc/hyprland-autoname-workspaces/default.nix
@@ -5,16 +5,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "hyprland-autoname-workspaces";
-  version = "1.1.13";
+  version = "1.1.14";
 
   src = fetchFromGitHub {
     owner = "hyprland-community";
     repo = "hyprland-autoname-workspaces";
     rev = version;
-    hash = "sha256-JEzsbJcDX/qx1CMy+3UwcHOwFLPqyAG58MpGMtdSyYY=";
+    hash = "sha256-RTx4fmamjydrQzC1CpgbuvV6kg0S6Jyj/0Q9FrfrMlU=";
   };
 
-  cargoHash = "sha256-Rpivw4VCVHjZywDwr4pajfGv/mkOdVrXVT/9Oe2Hw44=";
+  cargoHash = "sha256-Te3nBgr3uq8km8lX3AkCAS28leolZLXEF68phIEpg5k=";
 
   meta = with lib; {
     description = "Automatically rename workspaces with icons of started applications";
diff --git a/pkgs/applications/misc/input-leap/default.nix b/pkgs/applications/misc/input-leap/default.nix
index 567bb08fb911..9f40735771fc 100644
--- a/pkgs/applications/misc/input-leap/default.nix
+++ b/pkgs/applications/misc/input-leap/default.nix
@@ -21,7 +21,7 @@
 , pkg-config
 , qtbase
 , qttools
-, wrapGAppsHook
+, wrapGAppsHook3
 }:
 
 mkDerivation rec {
@@ -36,7 +36,7 @@ mkDerivation rec {
     fetchSubmodules = true;
   };
 
-  nativeBuildInputs = [ pkg-config cmake wrapGAppsHook qttools ];
+  nativeBuildInputs = [ pkg-config cmake wrapGAppsHook3 qttools ];
   buildInputs = [
     curl qtbase avahi
     libX11 libXext libXtst libXinerama libXrandr libXdmcp libICE libSM
diff --git a/pkgs/applications/misc/joplin-desktop/default.nix b/pkgs/applications/misc/joplin-desktop/default.nix
index 55acb6ef0db2..7127d83c6584 100644
--- a/pkgs/applications/misc/joplin-desktop/default.nix
+++ b/pkgs/applications/misc/joplin-desktop/default.nix
@@ -49,8 +49,6 @@ let
       export LC_ALL=C.UTF-8
     '';
 
-    multiArch = false; # no 32bit needed
-    extraPkgs = appimageTools.defaultFhsEnvArgs.multiPkgs;
     extraInstallCommands = ''
       source "${makeWrapper}/nix-support/setup-hook"
       wrapProgram $out/bin/${pname} \
diff --git a/pkgs/applications/misc/josm/default.nix b/pkgs/applications/misc/josm/default.nix
index 4283d9d92abe..92fe2ea2ac3c 100644
--- a/pkgs/applications/misc/josm/default.nix
+++ b/pkgs/applications/misc/josm/default.nix
@@ -3,15 +3,15 @@
 }:
 let
   pname = "josm";
-  version = "19039";
+  version = "19067";
   srcs = {
     jar = fetchurl {
       url = "https://josm.openstreetmap.de/download/josm-snapshot-${version}.jar";
-      hash = "sha256-iH6g18lJrvfAvtkAaVPSK7vhgdU6oI7X10GkFcwpsBs=";
+      hash = "sha256-+mHX80ltIFkVWIeex519b84BYzhp+h459/C2wlDR7jQ=";
     };
     macosx = fetchurl {
       url = "https://josm.openstreetmap.de/download/macosx/josm-macos-${version}-java21.zip";
-      hash = "sha256-yA+Qf76MbouiLdH9o1Ri8ptbG70YZoI13pBA9Ki61/0=";
+      hash = "sha256-lMESSSXl6hBC2MpLYnYOThy463ft2bONNppBv3OEvAQ=";
     };
     pkg = fetchsvn {
       url = "https://josm.openstreetmap.de/svn/trunk/native/linux/tested";
diff --git a/pkgs/applications/misc/jrnl/default.nix b/pkgs/applications/misc/jrnl/default.nix
index 1e8113765f12..787a8c46374a 100644
--- a/pkgs/applications/misc/jrnl/default.nix
+++ b/pkgs/applications/misc/jrnl/default.nix
@@ -44,7 +44,7 @@ python3.pkgs.buildPythonApplication rec {
   nativeCheckInputs = with python3.pkgs; [
     pytest-bdd
     pytest-xdist
-    pytestCheckHook
+    (pytestCheckHook.override { pytest = pytest_7; })
     toml
   ];
 
diff --git a/pkgs/applications/misc/k40-whisperer/default.nix b/pkgs/applications/misc/k40-whisperer/default.nix
index a6059ae44f88..5893ceb920f5 100644
--- a/pkgs/applications/misc/k40-whisperer/default.nix
+++ b/pkgs/applications/misc/k40-whisperer/default.nix
@@ -23,12 +23,12 @@ let
 
 in stdenv.mkDerivation rec {
   pname = "k40-whisperer";
-  version = "0.67";
+  version = "0.68";
 
   src = fetchzip {
     url = "https://www.scorchworks.com/K40whisperer/K40_Whisperer-${version}_src.zip";
     stripRoot = true;
-    sha256 = "sha256-jyny5uNZ5eL4AV47uAgOhBe4Zqg8GK3e86Z9gZbC68s=";
+    sha256 = "sha256-Pc6iqBQUoI0dsrf+2dA1ZbxX+4Eks/lVgMGC4SR+oFI=";
   };
 
   nativeBuildInputs = [ makeWrapper ];
diff --git a/pkgs/applications/misc/kdbplus/default.nix b/pkgs/applications/misc/kdbplus/default.nix
deleted file mode 100644
index 05d1c98e56ac..000000000000
--- a/pkgs/applications/misc/kdbplus/default.nix
+++ /dev/null
@@ -1,76 +0,0 @@
-{ lib, stdenv, requireFile, unzip, rlwrap, bash, zlib }:
-
-assert (stdenv.hostPlatform.system == "i686-linux");
-
-let
-  libPath = lib.makeLibraryPath
-    [ stdenv.cc.libc stdenv.cc.cc zlib ];
-in
-stdenv.mkDerivation rec {
-  pname = "kdbplus";
-  version = "3.6";
-
-  src = requireFile rec {
-    message = ''
-      Nix can't download kdb+ for you automatically. Go to
-      http://kx.com and download the free, 32-bit version for
-      Linux. Then run "nix-prefetch-url file://\$PWD/${name}" in
-      the directory where you saved it. Note you need version ${version}.
-    '';
-    name   = "linuxx86.zip";
-    sha256 = "0w6znd9warcqx28vf648n0vgmxyyy9kvsfpsfw37d1kp5finap4p";
-  };
-
-  dontStrip = true;
-  nativeBuildInputs = [ unzip ];
-
-  phases = "unpackPhase installPhase";
-  unpackPhase = "mkdir ${pname}-${version} && cd ${pname}-${version} && unzip -qq ${src}";
-  installPhase = ''
-    mkdir -p $out/bin $out/libexec
-
-    patchelf \
-      --interpreter "$(cat $NIX_CC/nix-support/dynamic-linker)" \
-      --set-rpath ${libPath} \
-      ./q/l32/q
-    mv ./q/l32/q $out/libexec/q
-
-    # Shell script wrappers to make things more convenient...
-
-    cat > $out/bin/q-install <<- EOF
-    #!${bash}/bin/bash
-    if [ -f \$HOME/q/q.k ]; then
-      echo "kdb has already been unpacked in \$HOME. Skipping..."
-      exit 0
-    fi
-    echo -n "Unzipping ${src} into \$HOME... "
-    cd \$HOME && ${unzip}/bin/unzip -qq ${src}
-    echo "Done"
-    EOF
-
-    cat > $out/bin/q <<- EOF
-    #!${bash}/bin/bash
-    if [ ! -f \$HOME/q/q.k ]; then
-      echo "ERROR: You need to unzip the Q sources into \$HOME before running q."
-      echo
-      echo "Try:"
-      echo "  cd \$HOME && unzip ${src}"
-      echo "(or run q-install)"
-      exit 1
-    fi
-
-    exec ${rlwrap}/bin/rlwrap $out/libexec/q \$@
-    EOF
-
-    chmod +x $out/bin/q $out/bin/q-install
-  '';
-
-  meta = {
-    description = "Analytics and time-series database";
-    homepage    = "http://www.kx.com/";
-    sourceProvenance = with lib.sourceTypes; [ binaryNativeCode ];
-    license     = lib.licenses.unfree;
-    platforms   = [ "i686-linux" ];
-    maintainers = [ lib.maintainers.thoughtpolice ];
-  };
-}
diff --git a/pkgs/applications/misc/keepassxc/default.nix b/pkgs/applications/misc/keepassxc/default.nix
index e74a45c02f31..e8804f600946 100644
--- a/pkgs/applications/misc/keepassxc/default.nix
+++ b/pkgs/applications/misc/keepassxc/default.nix
@@ -20,7 +20,7 @@
 , qtsvg
 , qtx11extras
 , readline
-, wrapGAppsHook
+, wrapGAppsHook3
 , wrapQtAppsHook
 , zlib
 
@@ -97,7 +97,7 @@ stdenv.mkDerivation rec {
     qttools
     pkg-config
   ]
-  ++ lib.optional (!stdenv.isDarwin) wrapGAppsHook;
+  ++ lib.optional (!stdenv.isDarwin) wrapGAppsHook3;
 
   dontWrapGApps = true;
   preFixup = ''
diff --git a/pkgs/applications/misc/keeweb/default.nix b/pkgs/applications/misc/keeweb/default.nix
index 22f3ad668ccb..a7260dc509b7 100644
--- a/pkgs/applications/misc/keeweb/default.nix
+++ b/pkgs/applications/misc/keeweb/default.nix
@@ -4,7 +4,7 @@
 , undmg
 , dpkg
 , autoPatchelfHook
-, wrapGAppsHook
+, wrapGAppsHook3
 , makeWrapper
 , alsa-lib
 , at-spi2-atk
@@ -92,7 +92,7 @@ else stdenv.mkDerivation {
 
   nativeBuildInputs = [
     autoPatchelfHook
-    wrapGAppsHook
+    wrapGAppsHook3
     makeWrapper
   ];
 
diff --git a/pkgs/applications/misc/keymapp/default.nix b/pkgs/applications/misc/keymapp/default.nix
index 55cc3f3f9810..59dae9589fa7 100644
--- a/pkgs/applications/misc/keymapp/default.nix
+++ b/pkgs/applications/misc/keymapp/default.nix
@@ -2,7 +2,7 @@
 , lib
 , fetchurl
 , autoPatchelfHook
-, wrapGAppsHook
+, wrapGAppsHook3
 , libusb1
 , webkitgtk
 , gtk3
@@ -32,7 +32,7 @@ stdenv.mkDerivation rec {
   nativeBuildInputs = [
     copyDesktopItems
     autoPatchelfHook
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
diff --git a/pkgs/applications/misc/keystore-explorer/default.nix b/pkgs/applications/misc/keystore-explorer/default.nix
index fb5990f5dca0..d5576ccb725e 100644
--- a/pkgs/applications/misc/keystore-explorer/default.nix
+++ b/pkgs/applications/misc/keystore-explorer/default.nix
@@ -1,4 +1,4 @@
-{ fetchzip, lib, stdenv, jdk, runtimeShell, glib, wrapGAppsHook }:
+{ fetchzip, lib, stdenv, jdk, runtimeShell, glib, wrapGAppsHook3 }:
 
 stdenv.mkDerivation rec {
   version = "5.5.3";
@@ -10,7 +10,7 @@ stdenv.mkDerivation rec {
 
   # glib is necessary so file dialogs don't hang.
   buildInputs = [ glib ];
-  nativeBuildInputs = [ wrapGAppsHook ];
+  nativeBuildInputs = [ wrapGAppsHook3 ];
 
   installPhase = ''
     runHook preInstall
diff --git a/pkgs/applications/misc/klipper-estimator/default.nix b/pkgs/applications/misc/klipper-estimator/default.nix
index 243a485c4a52..136ad6115d78 100644
--- a/pkgs/applications/misc/klipper-estimator/default.nix
+++ b/pkgs/applications/misc/klipper-estimator/default.nix
@@ -11,16 +11,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "klipper-estimator";
-  version = "3.7.2";
+  version = "3.7.3";
 
   src = fetchFromGitHub {
     owner = "Annex-Engineering";
     repo = "klipper_estimator";
     rev = "v${version}";
-    hash = "sha256-OvDdANowsz3qU2KV4WbUWyDrh3sG02+lBKNtcq6ecZ8=";
+    hash = "sha256-EjfW2qeq0ehGhjE2Psz5g/suYMZPvtQi2gaYb+NCa2U=";
   };
 
-  cargoHash = "sha256-1O3kXeGPALSa/kNWRArk6ULG0+3UgTxVBzrsqDHHpDU=";
+  cargoHash = "sha256-bboXG2nBrK2hVzB43um6EUgLPlSa8huyPH7VOJ48Nkk=";
 
   buildInputs =
     [ openssl ]
diff --git a/pkgs/applications/misc/klipperscreen/default.nix b/pkgs/applications/misc/klipperscreen/default.nix
index 789ab7c68828..5364d090f75d 100644
--- a/pkgs/applications/misc/klipperscreen/default.nix
+++ b/pkgs/applications/misc/klipperscreen/default.nix
@@ -1,7 +1,7 @@
 { lib
 , python3
 , fetchFromGitHub
-, wrapGAppsHook
+, wrapGAppsHook3
 , gobject-introspection
 , gitUpdater
 }: python3.pkgs.buildPythonApplication rec {
@@ -18,7 +18,7 @@
 
   nativeBuildInputs = [
     gobject-introspection
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   pythonPath = with python3.pkgs; [
diff --git a/pkgs/applications/misc/kratos/default.nix b/pkgs/applications/misc/kratos/default.nix
index d5d12eb44676..6bf06be9be7e 100644
--- a/pkgs/applications/misc/kratos/default.nix
+++ b/pkgs/applications/misc/kratos/default.nix
@@ -1,8 +1,15 @@
-{ fetchFromGitHub, buildGoModule, lib, stdenv }:
-
-buildGoModule rec {
+{
+  fetchFromGitHub,
+  buildGoModule,
+  lib,
+  stdenv
+}:
+let
   pname = "kratos";
   version = "1.1.0";
+in
+buildGoModule {
+  inherit pname version;
 
   src = fetchFromGitHub {
     owner = "ory";
@@ -17,6 +24,11 @@ buildGoModule rec {
 
   tags = [ "sqlite" ];
 
+  # Pass versioning information via ldflags
+  ldflags = [
+    "-X github.com/ory/kratos/driver/config.Version=${version}"
+  ];
+
   doCheck = false;
 
   preBuild = ''
@@ -30,14 +42,14 @@ buildGoModule rec {
     patchShebangs "''${files[@]}"
 
     # patchShebangs doesn't work for this Makefile, do it manually
-    substituteInPlace Makefile --replace '/bin/bash' '${stdenv.shell}'
+    substituteInPlace Makefile --replace-fail '/usr/bin/env bash' '${stdenv.shell}'
   '';
 
-  meta = with lib; {
-    maintainers = with maintainers; [ mrmebelman ];
-    homepage = "https://www.ory.sh/kratos/";
-    license = licenses.asl20;
-    description = "An API-first Identity and User Management system that is built according to cloud architecture best practices";
+  meta = {
     mainProgram = "kratos";
+    description = "An API-first Identity and User Management system that is built according to cloud architecture best practices";
+    homepage = "https://www.ory.sh/kratos/";
+    license = lib.licenses.asl20;
+    maintainers = with lib.maintainers; [ mrmebelman ];
   };
 }
diff --git a/pkgs/applications/misc/krename/default.nix b/pkgs/applications/misc/krename/default.nix
index 98ba8836efca..6cc5df92ae72 100644
--- a/pkgs/applications/misc/krename/default.nix
+++ b/pkgs/applications/misc/krename/default.nix
@@ -1,6 +1,6 @@
 {
   mkDerivation, fetchurl, fetchpatch, lib,
-  extra-cmake-modules, kdoctools, wrapGAppsHook,
+  extra-cmake-modules, kdoctools, wrapGAppsHook3,
   kconfig, kinit, kjsembed, taglib, exiv2, podofo,
   kcrash
 }:
@@ -27,7 +27,7 @@ in mkDerivation rec {
 
   buildInputs = [ taglib exiv2 podofo ];
 
-  nativeBuildInputs = [ extra-cmake-modules kdoctools wrapGAppsHook ];
+  nativeBuildInputs = [ extra-cmake-modules kdoctools wrapGAppsHook3 ];
 
   propagatedBuildInputs = [ kconfig kcrash kinit kjsembed ];
 
diff --git a/pkgs/applications/misc/kupfer/default.nix b/pkgs/applications/misc/kupfer/default.nix
index fbb33c7e096f..8c22612ad452 100644
--- a/pkgs/applications/misc/kupfer/default.nix
+++ b/pkgs/applications/misc/kupfer/default.nix
@@ -9,7 +9,7 @@
 , keybinder3
 , desktop-file-utils
 , shared-mime-info
-, wrapGAppsHook
+, wrapGAppsHook3
 , wafHook
 , bash
 , dbus
@@ -29,7 +29,7 @@ buildPythonApplication rec {
   };
 
   nativeBuildInputs = [
-    wrapGAppsHook intltool
+    wrapGAppsHook3 intltool
     # For setup hook
     gobject-introspection wafHook
     itstool            # for help pages
diff --git a/pkgs/applications/misc/lunatask/default.nix b/pkgs/applications/misc/lunatask/default.nix
index 4bdb6cca92ca..84ad583c63b5 100644
--- a/pkgs/applications/misc/lunatask/default.nix
+++ b/pkgs/applications/misc/lunatask/default.nix
@@ -1,12 +1,12 @@
 { lib, appimageTools, fetchurl }:
 
 let
-  version = "1.7.8";
+  version = "2.0.0";
   pname = "lunatask";
 
   src = fetchurl {
     url = "https://lunatask.app/download/Lunatask-${version}.AppImage";
-    sha256 = "sha256-DhTWD9uL7zKWiRfeLYKxPtmAy1yR20wjlVA+N33YgpQ=";
+    sha256 = "sha256-rRE7VE6Fugqbbv/fTIZGuWDQmTP1tRDiKrb6VcpsBjk=";
   };
 
   appimageContents = appimageTools.extractType2 {
diff --git a/pkgs/applications/misc/lutris/default.nix b/pkgs/applications/misc/lutris/default.nix
index 3ee6148ef16b..b16acc4787b7 100644
--- a/pkgs/applications/misc/lutris/default.nix
+++ b/pkgs/applications/misc/lutris/default.nix
@@ -15,7 +15,7 @@
 , libnotify
 , pango
 , webkitgtk
-, wrapGAppsHook
+, wrapGAppsHook3
 
   # check inputs
 , xvfb-run
@@ -85,7 +85,7 @@ buildPythonApplication rec {
     hash = "sha256-Ed1bhugBe97XmY050A5jCPcnLj0Fd7qPX2p/Ab+YbOE=";
   };
 
-  nativeBuildInputs = [ wrapGAppsHook gobject-introspection ];
+  nativeBuildInputs = [ wrapGAppsHook3 gobject-introspection ];
   buildInputs = [
     atk
     gdk-pixbuf
diff --git a/pkgs/applications/misc/mainsail/default.nix b/pkgs/applications/misc/mainsail/default.nix
index 4f4c91505027..1f85cd9e7231 100644
--- a/pkgs/applications/misc/mainsail/default.nix
+++ b/pkgs/applications/misc/mainsail/default.nix
@@ -5,11 +5,11 @@
 
 stdenvNoCC.mkDerivation rec {
   pname = "mainsail";
-  version = "2.10.0";
+  version = "2.11.2";
 
   src = fetchzip {
     url = "https://github.com/mainsail-crew/mainsail/releases/download/v${version}/mainsail.zip";
-    hash = "sha256-5bRmM/BXI0Afe7UK6avh5aWFXkYF4MsUG71uYUc5JlA=";
+    hash = "sha256-RdBgGE/EUzb1/6PjQ34UjXjxt686s9May7npFtRocXE=";
     stripRoot = false;
   };
 
diff --git a/pkgs/applications/misc/maliit-keyboard/default.nix b/pkgs/applications/misc/maliit-keyboard/default.nix
index 3669dfe5a5b7..c67ac7a402fc 100644
--- a/pkgs/applications/misc/maliit-keyboard/default.nix
+++ b/pkgs/applications/misc/maliit-keyboard/default.nix
@@ -17,7 +17,7 @@
 
 , cmake
 , pkg-config
-, wrapGAppsHook
+, wrapGAppsHook3
 }:
 
 mkDerivation rec {
@@ -58,7 +58,7 @@ mkDerivation rec {
   nativeBuildInputs = [
     cmake
     pkg-config
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   postInstall = ''
diff --git a/pkgs/applications/misc/markets/default.nix b/pkgs/applications/misc/markets/default.nix
index 436891482f19..e24e902abc03 100644
--- a/pkgs/applications/misc/markets/default.nix
+++ b/pkgs/applications/misc/markets/default.nix
@@ -1,6 +1,6 @@
 { lib, stdenv, fetchFromGitHub
 , desktop-file-utils, glib, gtk3, meson, ninja, pkg-config, python3, vala
-, wrapGAppsHook
+, wrapGAppsHook3
 , glib-networking, gobject-introspection, json-glib, libgee, libhandy, libsoup
 }:
 
@@ -17,7 +17,7 @@ stdenv.mkDerivation rec {
 
   nativeBuildInputs = [
     desktop-file-utils glib gtk3 meson ninja pkg-config python3 vala
-    wrapGAppsHook gobject-introspection
+    wrapGAppsHook3 gobject-introspection
   ];
   buildInputs = [
     glib glib-networking gtk3 json-glib libgee libhandy
diff --git a/pkgs/applications/misc/marktext/default.nix b/pkgs/applications/misc/marktext/default.nix
index 647e833e6960..573d4a9d5a73 100644
--- a/pkgs/applications/misc/marktext/default.nix
+++ b/pkgs/applications/misc/marktext/default.nix
@@ -20,11 +20,7 @@ appimageTools.wrapType2 rec {
     export LC_ALL=C.UTF-8
   '';
 
-  multiArch = false; # no 32bit needed
-  extraPkgs = p: (appimageTools.defaultFhsEnvArgs.multiPkgs p) ++ [
-    p.libsecret
-    p.xorg.libxkbfile
-  ];
+  extraPkgs = pkgs: [ pkgs.libsecret pkgs.xorg.libxkbfile  ];
 
   extraInstallCommands = ''
     install -m 444 -D ${appimageContents}/marktext.desktop $out/share/applications/marktext.desktop
@@ -36,7 +32,7 @@ appimageTools.wrapType2 rec {
 
   meta = with lib; {
     description = "A simple and elegant markdown editor, available for Linux, macOS and Windows";
-    homepage = "https://marktext.app";
+    homepage = "https://www.marktext.cc";
     license = licenses.mit;
     maintainers = with maintainers; [ nh2 eduarrrd ];
     platforms = [ "x86_64-linux" ];
diff --git a/pkgs/applications/misc/meerk40t/default.nix b/pkgs/applications/misc/meerk40t/default.nix
index c1a0b41a58ac..e0a3921824de 100644
--- a/pkgs/applications/misc/meerk40t/default.nix
+++ b/pkgs/applications/misc/meerk40t/default.nix
@@ -3,7 +3,7 @@
 , meerk40t-camera
 , python3Packages
 , gtk3
-, wrapGAppsHook
+, wrapGAppsHook3
 }:
 
 python3Packages.buildPythonApplication rec {
@@ -19,7 +19,7 @@ python3Packages.buildPythonApplication rec {
   };
 
   nativeBuildInputs = [
-    wrapGAppsHook
+    wrapGAppsHook3
   ] ++ (with python3Packages; [
     setuptools
   ]);
diff --git a/pkgs/applications/misc/minder/default.nix b/pkgs/applications/misc/minder/default.nix
index a02647f4a9fb..e4e58d9bf6c3 100644
--- a/pkgs/applications/misc/minder/default.nix
+++ b/pkgs/applications/misc/minder/default.nix
@@ -8,7 +8,7 @@
 , python3
 , shared-mime-info
 , vala
-, wrapGAppsHook
+, wrapGAppsHook3
 , cairo
 , discount
 , glib
@@ -42,7 +42,7 @@ stdenv.mkDerivation rec {
     python3
     shared-mime-info
     vala
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
diff --git a/pkgs/applications/misc/minigalaxy/default.nix b/pkgs/applications/misc/minigalaxy/default.nix
index ad694c01cdcb..aa31ffa5cc2b 100644
--- a/pkgs/applications/misc/minigalaxy/default.nix
+++ b/pkgs/applications/misc/minigalaxy/default.nix
@@ -11,7 +11,7 @@
 , steam-run
 , unzip
 , webkitgtk
-, wrapGAppsHook
+, wrapGAppsHook3
 }:
 
 python3Packages.buildPythonApplication rec {
@@ -33,7 +33,7 @@ python3Packages.buildPythonApplication rec {
 
   nativeBuildInputs = [
     gettext
-    wrapGAppsHook
+    wrapGAppsHook3
     gobject-introspection
   ];
 
diff --git a/pkgs/applications/misc/mission-center/Cargo.lock b/pkgs/applications/misc/mission-center/Cargo.lock
index f7517597b0c9..922916ab1307 100644
--- a/pkgs/applications/misc/mission-center/Cargo.lock
+++ b/pkgs/applications/misc/mission-center/Cargo.lock
@@ -3,24 +3,12 @@
 version = 3
 
 [[package]]
-name = "adler32"
-version = "1.2.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "aae1277d39aeec15cb388266ecc24b11c80469deae6067e17a1a7aa9e5c1f234"
-
-[[package]]
-name = "ahash"
-version = "0.3.8"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e8fd72866655d1904d6b0997d0b07ba561047d070fbe29de039031c641b61217"
-
-[[package]]
 name = "ahash"
-version = "0.8.6"
+version = "0.8.11"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "91429305e9f0a25f6205c5b8e0d2db09e0708a7a6df0f42212bb56c32c8ac97a"
+checksum = "e89da841a80418a9b391ebaea17f5c112ffaaa96f621d2c285b5174da76b9011"
 dependencies = [
- "cfg-if 1.0.0",
+ "cfg-if",
  "once_cell",
  "version_check",
  "zerocopy",
@@ -43,53 +31,9 @@ checksum = "0942ffc6dcaadf03badf6e6a2d0228460359d5e34b57ccdc720b7382dfbd5ec5"
 
 [[package]]
 name = "anyhow"
-version = "1.0.75"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a4668cab20f66d8d020e1fbc0ebe47217433c1b6c8f2040faf858554e394ace6"
-
-[[package]]
-name = "arrayvec"
-version = "0.5.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "23b62fc65de8e4e7f52534fb52b0f3ed04746ae267519eef2a83941e8085068b"
-
-[[package]]
-name = "arrayvec"
-version = "0.7.4"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "96d30a06541fbafbc7f82ed10c06164cfbd2c401138f6addd8404629c4b16711"
-
-[[package]]
-name = "async-channel"
-version = "1.9.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "81953c529336010edd6d8e358f886d9581267795c61b19475b71314bffa46d35"
-dependencies = [
- "concurrent-queue",
- "event-listener",
- "futures-core",
-]
-
-[[package]]
-name = "async-lock"
-version = "2.8.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "287272293e9d8c41773cec55e365490fe034813a2f172f502d6ddcf75b2f582b"
-dependencies = [
- "event-listener",
-]
-
-[[package]]
-name = "async-task"
-version = "4.5.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b4eb2cdb97421e01129ccb49169d8279ed21e829929144f4a22a6e54ac549ca1"
-
-[[package]]
-name = "atomic-waker"
-version = "1.1.2"
+version = "1.0.80"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1505bd5d3d116872e7271a6d4e16d81d0c8570876c8de68093a09ac269d8aac0"
+checksum = "5ad32ce52e4161730f7098c077cd2ed6229b5804ccf99e5366be1ab72a98b4e1"
 
 [[package]]
 name = "autocfg"
@@ -99,15 +43,9 @@ checksum = "d468802bab17cbc0cc575e9b053f41e72aa36bfa6b7f55e3529ffa43161b97fa"
 
 [[package]]
 name = "bitflags"
-version = "1.3.2"
+version = "2.4.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a"
-
-[[package]]
-name = "bitflags"
-version = "2.4.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "327762f6e5a765692301e5bb513e0d9fef63be86bbc14528052b1cd3e6f03e07"
+checksum = "ed570934406eb16438a4e976b1b4500774099c13b8cb96eec99f620f05090ddf"
 
 [[package]]
 name = "block"
@@ -116,73 +54,23 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "0d8c1fef690941d3e7788d328517591fecc684c084084702d6ff1641e993699a"
 
 [[package]]
-name = "block-buffer"
-version = "0.10.4"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3078c7629b62d3f0439517fa394996acacc5cbc91c5a20d8c658e77abd503a71"
-dependencies = [
- "generic-array",
-]
-
-[[package]]
-name = "blocking"
-version = "1.4.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8c36a4d0d48574b3dd360b4b7d95cc651d2b6557b6402848a27d4b228a473e2a"
-dependencies = [
- "async-channel",
- "async-lock",
- "async-task",
- "fastrand",
- "futures-io",
- "futures-lite",
- "piper",
- "tracing",
-]
-
-[[package]]
-name = "bumpalo"
-version = "3.14.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7f30e7476521f6f8af1a1c4c0b8cc94f0bee37d91763d0ca2665f299b6cd8aec"
-
-[[package]]
-name = "byte-slice-cast"
-version = "0.3.5"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b0a5e3906bcbf133e33c1d4d95afc664ad37fbdb9f6568d8043e7ea8c27d93d3"
-
-[[package]]
-name = "bytemuck"
-version = "1.14.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "374d28ec25809ee0e23827c2ab573d729e293f281dfe393500e7ad618baa61c6"
-
-[[package]]
-name = "byteorder"
-version = "1.5.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1fd0f2584146f6f2ef48085050886acf353beff7305ebd1ae69500e27c67f64b"
-
-[[package]]
 name = "cairo-rs"
-version = "0.18.3"
+version = "0.19.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f33613627f0dea6a731b0605101fad59ba4f193a52c96c4687728d822605a8a1"
+checksum = "2650f66005301bd33cc486dec076e1293c4cecf768bc7ba9bf5d2b1be339b99c"
 dependencies = [
- "bitflags 2.4.1",
+ "bitflags",
  "cairo-sys-rs",
  "glib",
  "libc",
- "once_cell",
  "thiserror",
 ]
 
 [[package]]
 name = "cairo-sys-rs"
-version = "0.18.2"
+version = "0.19.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "685c9fa8e590b8b3d678873528d83411db17242a73fccaed827770ea0fedda51"
+checksum = "fd3bb3119664efbd78b5e6c93957447944f16bdbced84c17a9f41c7829b81e64"
 dependencies = [
  "glib-sys",
  "libc",
@@ -191,18 +79,15 @@ dependencies = [
 
 [[package]]
 name = "cc"
-version = "1.0.83"
+version = "1.0.90"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f1174fb0b6ec23863f8b971027804a42614e347eafb0a95bf0b12cdae21fc4d0"
-dependencies = [
- "libc",
-]
+checksum = "8cd6604a82acf3039f1144f54b8eb34e91ffba622051189e71b781822d5ee1f5"
 
 [[package]]
 name = "cfg-expr"
-version = "0.15.5"
+version = "0.15.7"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "03915af431787e6ffdcc74c645077518c6b6e01f80b761e0fbbfa288536311b3"
+checksum = "fa50868b64a9a6fda9d593ce778849ea8715cd2a3d2cc17ffdb4a2f2f2f1961d"
 dependencies = [
  "smallvec",
  "target-lexicon",
@@ -210,36 +95,15 @@ dependencies = [
 
 [[package]]
 name = "cfg-if"
-version = "0.1.10"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4785bdd1c96b2a846b2bd7cc02e86b6b3dbf14e7e53446c4f54c92a361040822"
-
-[[package]]
-name = "cfg-if"
 version = "1.0.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd"
 
 [[package]]
-name = "color_quant"
-version = "1.1.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3d7b894f5411737b7867f4827955924d7c254fc9f4d91a6aad6b097804b1018b"
-
-[[package]]
-name = "concurrent-queue"
-version = "2.3.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f057a694a54f12365049b0958a1685bb52d567f5593b355fbf685838e873d400"
-dependencies = [
- "crossbeam-utils 0.8.16",
-]
-
-[[package]]
 name = "const-random"
-version = "0.1.17"
+version = "0.1.18"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5aaf16c9c2c612020bcfd042e170f6e32de9b9d75adb5277cdbbd2e2c8c8299a"
+checksum = "87e00182fe74b066627d63b85fd550ac2998d4b0bd86bfed477a0ae4c7c71359"
 dependencies = [
  "const-random-macro",
 ]
@@ -256,100 +120,12 @@ dependencies = [
 ]
 
 [[package]]
-name = "core-foundation-sys"
-version = "0.8.4"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e496a50fda8aacccc86d7529e2c1e0892dbd0f898a6b5645b5561b89c3210efa"
-
-[[package]]
-name = "cpufeatures"
-version = "0.2.11"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ce420fe07aecd3e67c5f910618fe65e94158f6dcc0adf44e00d69ce2bdfe0fd0"
-dependencies = [
- "libc",
-]
-
-[[package]]
-name = "crc32fast"
-version = "1.3.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b540bd8bc810d3885c6ea91e2018302f68baba2129ab3e88f32389ee9370880d"
-dependencies = [
- "cfg-if 1.0.0",
-]
-
-[[package]]
-name = "crossbeam-channel"
-version = "0.4.4"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b153fe7cbef478c567df0f972e02e6d736db11affe43dfc9c56a9374d1adfb87"
-dependencies = [
- "crossbeam-utils 0.7.2",
- "maybe-uninit",
-]
-
-[[package]]
-name = "crossbeam-deque"
-version = "0.8.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ce6fd6f855243022dcecf8702fef0c297d4338e226845fe067f6341ad9fa0cef"
-dependencies = [
- "cfg-if 1.0.0",
- "crossbeam-epoch",
- "crossbeam-utils 0.8.16",
-]
-
-[[package]]
-name = "crossbeam-epoch"
-version = "0.9.15"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ae211234986c545741a7dc064309f67ee1e5ad243d0e48335adc0484d960bcc7"
-dependencies = [
- "autocfg",
- "cfg-if 1.0.0",
- "crossbeam-utils 0.8.16",
- "memoffset",
- "scopeguard",
-]
-
-[[package]]
-name = "crossbeam-utils"
-version = "0.7.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c3c7c73a2d1e9fc0886a08b93e98eb643461230d5f1925e4036204d5f2e261a8"
-dependencies = [
- "autocfg",
- "cfg-if 0.1.10",
- "lazy_static",
-]
-
-[[package]]
-name = "crossbeam-utils"
-version = "0.8.16"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5a22b2d63d4d1dc0b7f1b6b2747dd0088008a9be28b6ddf0b1e7d335e3037294"
-dependencies = [
- "cfg-if 1.0.0",
-]
-
-[[package]]
 name = "crunchy"
 version = "0.2.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "7a81dae078cea95a014a339291cec439d2f232ebe854a9d672b796c6afafa9b7"
 
 [[package]]
-name = "crypto-common"
-version = "0.1.6"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1bfb12502f3fc46cca1bb51ac28df9d618d813cdc3d2f25b9fe775a34af26bb3"
-dependencies = [
- "generic-array",
- "typenum",
-]
-
-[[package]]
 name = "dbus"
 version = "0.9.7"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -361,26 +137,6 @@ dependencies = [
 ]
 
 [[package]]
-name = "deflate"
-version = "0.8.6"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "73770f8e1fe7d64df17ca66ad28994a0a623ea497fa69486e14984e715c5d174"
-dependencies = [
- "adler32",
- "byteorder",
-]
-
-[[package]]
-name = "digest"
-version = "0.10.7"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9ed9a281f7bc9b7576e61468ba615a66a5c8cfdff42420a70aa82701a3b1e292"
-dependencies = [
- "block-buffer",
- "crypto-common",
-]
-
-[[package]]
 name = "dlv-list"
 version = "0.5.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -390,12 +146,6 @@ dependencies = [
 ]
 
 [[package]]
-name = "either"
-version = "1.9.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a26ae43d7bcc3b814de94796a5e736d4029efb0ee900c12e2d54c993ad1a1e07"
-
-[[package]]
 name = "equivalent"
 version = "1.0.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -412,12 +162,6 @@ dependencies = [
 ]
 
 [[package]]
-name = "event-listener"
-version = "2.5.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0206175f82b8d6bf6652ff7d71a1e27fd2e4efde587fd368662814d6ec1d9ce0"
-
-[[package]]
 name = "fallible-iterator"
 version = "0.3.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -430,12 +174,6 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "7360491ce676a36bf9bb3c56c1aa791658183a54d2744120f27285738d90465a"
 
 [[package]]
-name = "fastrand"
-version = "2.0.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "25cbce373ec4653f1a01a31e8a5e5ec0c622dc27ff9c4e6606eefef5cbbed4a5"
-
-[[package]]
 name = "field-offset"
 version = "0.3.6"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -447,24 +185,24 @@ dependencies = [
 
 [[package]]
 name = "futures-channel"
-version = "0.3.29"
+version = "0.3.30"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ff4dd66668b557604244583e3e1e1eada8c5c2e96a6d0d6653ede395b78bbacb"
+checksum = "eac8f7d7865dcb88bd4373ab671c8cf4508703796caa2b1985a9ca867b3fcb78"
 dependencies = [
  "futures-core",
 ]
 
 [[package]]
 name = "futures-core"
-version = "0.3.29"
+version = "0.3.30"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "eb1d22c66e66d9d72e1758f0bd7d4fd0bee04cad842ee34587d68c07e45d088c"
+checksum = "dfc6580bb841c5a68e9ef15c77ccc837b40a7504914d52e47b8b0e9bbda25a1d"
 
 [[package]]
 name = "futures-executor"
-version = "0.3.29"
+version = "0.3.30"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0f4fb8693db0cf099eadcca0efe2a5a22e4550f98ed16aba6c48700da29597bc"
+checksum = "a576fc72ae164fca6b9db127eaa9a9dda0d61316034f33a0a0d4eda41f02b01d"
 dependencies = [
  "futures-core",
  "futures-task",
@@ -473,42 +211,32 @@ dependencies = [
 
 [[package]]
 name = "futures-io"
-version = "0.3.29"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8bf34a163b5c4c52d0478a4d757da8fb65cabef42ba90515efee0f6f9fa45aaa"
-
-[[package]]
-name = "futures-lite"
-version = "1.13.0"
+version = "0.3.30"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "49a9d51ce47660b1e808d3c990b4709f2f415d928835a17dfd16991515c46bce"
-dependencies = [
- "futures-core",
- "pin-project-lite",
-]
+checksum = "a44623e20b9681a318efdd71c299b6b222ed6f231972bfe2f224ebad6311f0c1"
 
 [[package]]
 name = "futures-macro"
-version = "0.3.29"
+version = "0.3.30"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "53b153fd91e4b0147f4aced87be237c98248656bb01050b96bf3ee89220a8ddb"
+checksum = "87750cf4b7a4c0625b1529e4c543c2182106e4dedc60a2a6455e00d212c489ac"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.39",
+ "syn 2.0.52",
 ]
 
 [[package]]
 name = "futures-task"
-version = "0.3.29"
+version = "0.3.30"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "efd193069b0ddadc69c46389b740bbccdd97203899b48d09c5f7969591d6bae2"
+checksum = "38d84fa142264698cdce1a9f9172cf383a0c82de1bddcf3092901442c4097004"
 
 [[package]]
 name = "futures-util"
-version = "0.3.29"
+version = "0.3.30"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a19526d624e703a3179b3d322efec918b6246ea0fa51d41124525f00f1cc8104"
+checksum = "3d6401deb83407ab3da39eba7e33987a73c3df0c82b4bb5813ee871c19c41d48"
 dependencies = [
  "futures-core",
  "futures-macro",
@@ -519,32 +247,22 @@ dependencies = [
 ]
 
 [[package]]
-name = "fxhash"
-version = "0.2.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c31b6d751ae2c7f11320402d34e41349dd1016f8d5d45e48c4312bc8625af50c"
-dependencies = [
- "byteorder",
-]
-
-[[package]]
 name = "gdk-pixbuf"
-version = "0.18.3"
+version = "0.19.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "446f32b74d22c33b7b258d4af4ffde53c2bf96ca2e29abdf1a785fe59bd6c82c"
+checksum = "f6a23f8a0b5090494fd04924662d463f8386cc678dd3915015a838c1a3679b92"
 dependencies = [
  "gdk-pixbuf-sys",
  "gio",
  "glib",
  "libc",
- "once_cell",
 ]
 
 [[package]]
 name = "gdk-pixbuf-sys"
-version = "0.18.0"
+version = "0.19.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3f9839ea644ed9c97a34d129ad56d38a25e6756f99f3a88e15cd39c20629caf7"
+checksum = "3dcbd04c1b2c4834cc008b4828bc917d062483b88d26effde6342e5622028f96"
 dependencies = [
  "gio-sys",
  "glib-sys",
@@ -555,9 +273,9 @@ dependencies = [
 
 [[package]]
 name = "gdk4"
-version = "0.7.3"
+version = "0.8.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7edb019ad581f8ecf8ea8e4baa6df7c483a95b5a59be3140be6a9c3b0c632af6"
+checksum = "9100b25604183f2fd97f55ef087fae96ab4934d7215118a35303e422688e6e4b"
 dependencies = [
  "cairo-rs",
  "gdk-pixbuf",
@@ -570,9 +288,9 @@ dependencies = [
 
 [[package]]
 name = "gdk4-sys"
-version = "0.7.2"
+version = "0.8.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "dbab43f332a3cf1df9974da690b5bb0e26720ed09a228178ce52175372dcfef0"
+checksum = "d0b76874c40bb8d1c7d03a7231e23ac75fa577a456cd53af32ec17ec8f121626"
 dependencies = [
  "cairo-sys-rs",
  "gdk-pixbuf-sys",
@@ -586,22 +304,12 @@ dependencies = [
 ]
 
 [[package]]
-name = "generic-array"
-version = "0.14.7"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "85649ca51fd72272d7821adaf274ad91c288277713d9c18820d8499a7ff69e9a"
-dependencies = [
- "typenum",
- "version_check",
-]
-
-[[package]]
 name = "getrandom"
-version = "0.2.11"
+version = "0.2.12"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "fe9006bed769170c11f845cf00c7c1e9092aeb3f268e007c3e760ac68008070f"
+checksum = "190092ea657667030ac6a35e305e62fc4dd69fd98ac98631e5d3a2b1575a12b5"
 dependencies = [
- "cfg-if 1.0.0",
+ "cfg-if",
  "libc",
  "wasi",
 ]
@@ -628,9 +336,9 @@ dependencies = [
 
 [[package]]
 name = "gio"
-version = "0.18.3"
+version = "0.19.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "47d809baf02bdf1b5ef4ad3bf60dd9d4977149db4612b7bbb58e56aef168193b"
+checksum = "2eae10b27b6dd27e22ed0d812c6387deba295e6fc004a8b379e459b663b05a02"
 dependencies = [
  "futures-channel",
  "futures-core",
@@ -639,7 +347,6 @@ dependencies = [
  "gio-sys",
  "glib",
  "libc",
- "once_cell",
  "pin-project-lite",
  "smallvec",
  "thiserror",
@@ -647,54 +354,24 @@ dependencies = [
 
 [[package]]
 name = "gio-sys"
-version = "0.18.1"
+version = "0.19.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "37566df850baf5e4cb0dfb78af2e4b9898d817ed9263d1090a2df958c64737d2"
+checksum = "bcf8e1d9219bb294636753d307b030c1e8a032062cba74f493c431a5c8b81ce4"
 dependencies = [
  "glib-sys",
  "gobject-sys",
  "libc",
  "system-deps",
- "winapi",
-]
-
-[[package]]
-name = "gl"
-version = "0.14.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a94edab108827d67608095e269cf862e60d920f144a5026d3dbcfd8b877fb404"
-dependencies = [
- "gl_generator",
-]
-
-[[package]]
-name = "gl_generator"
-version = "0.14.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1a95dfc23a2b4a9a2f5ab41d194f8bfda3cabec42af4e39f08c339eb2a0c124d"
-dependencies = [
- "khronos_api",
- "log",
- "xml-rs",
-]
-
-[[package]]
-name = "gl_loader"
-version = "0.1.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e32d96dd5f881490e537041d5532320812ba096097f07fccb4626578da0b99d3"
-dependencies = [
- "cc",
- "libc",
+ "windows-sys",
 ]
 
 [[package]]
 name = "glib"
-version = "0.18.3"
+version = "0.19.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "58cf801b6f7829fa76db37449ab67c9c98a2b1bf21076d9113225621e61a0fa6"
+checksum = "ab9e86540b5d8402e905ad4ce7d6aa544092131ab564f3102175af176b90a053"
 dependencies = [
- "bitflags 2.4.1",
+ "bitflags",
  "futures-channel",
  "futures-core",
  "futures-executor",
@@ -706,30 +383,28 @@ dependencies = [
  "gobject-sys",
  "libc",
  "memchr",
- "once_cell",
  "smallvec",
  "thiserror",
 ]
 
 [[package]]
 name = "glib-macros"
-version = "0.18.3"
+version = "0.19.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "72793962ceece3863c2965d7f10c8786323b17c7adea75a515809fa20ab799a5"
+checksum = "0f5897ca27a83e4cdc7b4666850bade0a2e73e17689aabafcc9acddad9d823b8"
 dependencies = [
  "heck",
- "proc-macro-crate 2.0.0",
- "proc-macro-error",
+ "proc-macro-crate",
  "proc-macro2",
  "quote",
- "syn 2.0.39",
+ "syn 2.0.52",
 ]
 
 [[package]]
 name = "glib-sys"
-version = "0.18.1"
+version = "0.19.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "063ce2eb6a8d0ea93d2bf8ba1957e78dbab6be1c2220dd3daca57d5a9d869898"
+checksum = "630f097773d7c7a0bb3258df4e8157b47dc98bbfa0e60ad9ab56174813feced4"
 dependencies = [
  "libc",
  "system-deps",
@@ -737,9 +412,9 @@ dependencies = [
 
 [[package]]
 name = "gobject-sys"
-version = "0.18.0"
+version = "0.19.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0850127b514d1c4a4654ead6dedadb18198999985908e6ffe4436f53c785ce44"
+checksum = "c85e2b1080b9418dd0c58b498da3a5c826030343e0ef07bde6a955d28de54979"
 dependencies = [
  "glib-sys",
  "libc",
@@ -748,9 +423,9 @@ dependencies = [
 
 [[package]]
 name = "graphene-rs"
-version = "0.18.1"
+version = "0.19.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3b2228cda1505613a7a956cca69076892cfbda84fc2b7a62b94a41a272c0c401"
+checksum = "99e4d388e96c5f29e2b2f67045d229ddf826d0a8d6d282f94ed3b34452222c91"
 dependencies = [
  "glib",
  "graphene-sys",
@@ -759,9 +434,9 @@ dependencies = [
 
 [[package]]
 name = "graphene-sys"
-version = "0.18.1"
+version = "0.19.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "cc4144cee8fc8788f2a9b73dc5f1d4e1189d1f95305c4cb7bd9c1af1cfa31f59"
+checksum = "236ed66cc9b18d8adf233716f75de803d0bf6fc806f60d14d948974a12e240d0"
 dependencies = [
  "glib-sys",
  "libc",
@@ -771,9 +446,9 @@ dependencies = [
 
 [[package]]
 name = "gsk4"
-version = "0.7.3"
+version = "0.8.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0d958e351d2f210309b32d081c832d7de0aca0b077aa10d88336c6379bd01f7e"
+checksum = "c65036fc8f99579e8cb37b12487969b707ab23ec8ab953682ff347cbd15d396e"
 dependencies = [
  "cairo-rs",
  "gdk4",
@@ -786,9 +461,9 @@ dependencies = [
 
 [[package]]
 name = "gsk4-sys"
-version = "0.7.3"
+version = "0.8.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "12bd9e3effea989f020e8f1ff3fa3b8c63ba93d43b899c11a118868853a56d55"
+checksum = "bd24c814379f9c3199dc53e52253ee8d0f657eae389ab282c330505289d24738"
 dependencies = [
  "cairo-sys-rs",
  "gdk4-sys",
@@ -802,9 +477,9 @@ dependencies = [
 
 [[package]]
 name = "gtk4"
-version = "0.7.3"
+version = "0.8.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5aeb51aa3e9728575a053e1f43543cd9992ac2477e1b186ad824fd4adfb70842"
+checksum = "aa82753b8c26277e4af1446c70e35b19aad4fb794a7b143859e7eeb9a4025d83"
 dependencies = [
  "cairo-rs",
  "field-offset",
@@ -823,12 +498,12 @@ dependencies = [
 
 [[package]]
 name = "gtk4-macros"
-version = "0.7.2"
+version = "0.8.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d57ec49cf9b657f69a05bca8027cff0a8dfd0c49e812be026fc7311f2163832f"
+checksum = "40300bf071d2fcd4c94eacc09e84ec6fe73129d2ceb635cf7e55b026b5443567"
 dependencies = [
  "anyhow",
- "proc-macro-crate 1.3.1",
+ "proc-macro-crate",
  "proc-macro-error",
  "proc-macro2",
  "quote",
@@ -837,9 +512,9 @@ dependencies = [
 
 [[package]]
 name = "gtk4-sys"
-version = "0.7.3"
+version = "0.8.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "54d8c4aa23638ce9faa2caf7e2a27d4a1295af2155c8e8d28c4d4eeca7a65eb8"
+checksum = "0db1b104138f087ccdc81d2c332de5dd049b89de3d384437cc1093b17cd2da18"
 dependencies = [
  "cairo-sys-rs",
  "gdk-pixbuf-sys",
@@ -855,39 +530,22 @@ dependencies = [
 ]
 
 [[package]]
-name = "half"
-version = "1.8.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "eabb4a44450da02c90444cf74558da904edde8fb4e9035a9a6a4e15445af0bd7"
-
-[[package]]
 name = "hashbrown"
-version = "0.7.2"
+version = "0.14.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "96282e96bfcd3da0d3aa9938bedf1e50df3269b6db08b4876d2da0bb1a0841cf"
+checksum = "290f1a1d9242c78d09ce40a5e87e7554ee637af1351968159f4952f028f75604"
 dependencies = [
- "ahash 0.3.8",
- "autocfg",
- "serde",
-]
-
-[[package]]
-name = "hashbrown"
-version = "0.14.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f93e7192158dbcda357bdec5fb5788eebf8bbac027f3f33e719d29135ae84156"
-dependencies = [
- "ahash 0.8.6",
+ "ahash",
  "allocator-api2",
 ]
 
 [[package]]
 name = "hashlink"
-version = "0.8.4"
+version = "0.9.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e8094feaf31ff591f651a2664fb9cfd92bba7a60ce3197265e9482ebe753c8f7"
+checksum = "692eaaf7f7607518dd3cef090f1474b61edc5301d8012f09579920df68b725ee"
 dependencies = [
- "hashbrown 0.14.2",
+ "hashbrown",
 ]
 
 [[package]]
@@ -897,88 +555,20 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "95505c38b4572b2d910cecb0281560f54b440a19336cbbcb27bf6ce6adc6f5a8"
 
 [[package]]
-name = "image"
-version = "0.23.14"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "24ffcb7e7244a9bf19d35bf2883b9c080c4ced3c07a9895572178cdb8f13f6a1"
-dependencies = [
- "bytemuck",
- "byteorder",
- "color_quant",
- "num-iter",
- "num-rational",
- "num-traits",
- "png",
-]
-
-[[package]]
 name = "indexmap"
-version = "2.1.0"
+version = "2.2.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d530e1a18b1cb4c484e6e34556a0d948706958449fca0cab753d649f2bce3d1f"
+checksum = "7b0b929d511467233429c45a44ac1dcaa21ba0f5ba11e4879e6ed28ddb4f9df4"
 dependencies = [
  "equivalent",
- "hashbrown 0.14.2",
+ "hashbrown",
 ]
 
 [[package]]
-name = "instant"
-version = "0.1.12"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7a5bbe824c507c5da5956355e86a746d82e0e1464f65d862cc5e71da70e94b2c"
-dependencies = [
- "cfg-if 1.0.0",
- "js-sys",
- "wasm-bindgen",
- "web-sys",
-]
-
-[[package]]
-name = "interprocess"
-version = "1.2.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "81f2533f3be42fffe3b5e63b71aeca416c1c3bc33e4e27be018521e76b1f38fb"
-dependencies = [
- "blocking",
- "cfg-if 1.0.0",
- "futures-core",
- "futures-io",
- "intmap",
- "libc",
- "once_cell",
- "rustc_version",
- "spinning",
- "thiserror",
- "to_method",
- "winapi",
-]
-
-[[package]]
-name = "intmap"
-version = "0.7.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ae52f28f45ac2bc96edb7714de995cffc174a395fb0abf5bff453587c980d7b9"
-
-[[package]]
 name = "itoa"
-version = "1.0.9"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "af150ab688ff2122fcef229be89cb50dd66af9e01a4ff320cc137eecc9bacc38"
-
-[[package]]
-name = "js-sys"
-version = "0.3.65"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "54c0c35952f67de54bb584e9fd912b3023117cbafc0a77d8f3dee1fb5f572fe8"
-dependencies = [
- "wasm-bindgen",
-]
-
-[[package]]
-name = "khronos_api"
-version = "3.1.0"
+version = "1.0.10"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e2db585e1d738fc771bf08a151420d3ed193d9d895a36df7f6f8a9456b911ddc"
+checksum = "b1a46d1a171d865aa5f83f92695765caa047a9b4cbae2cbf37dbd613a793fd4c"
 
 [[package]]
 name = "lazy_static"
@@ -988,9 +578,9 @@ checksum = "e2abad23fbc42b3700f2f279844dc832adb2b2eb069b2df918f455c4e18cc646"
 
 [[package]]
 name = "libadwaita"
-version = "0.5.3"
+version = "0.6.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2fe7e70c06507ed10a16cda707f358fbe60fe0dc237498f78c686ade92fd979c"
+checksum = "91b4990248b9e1ec5e72094a2ccaea70ec3809f88f6fd52192f2af306b87c5d9"
 dependencies = [
  "gdk-pixbuf",
  "gdk4",
@@ -1004,9 +594,9 @@ dependencies = [
 
 [[package]]
 name = "libadwaita-sys"
-version = "0.5.3"
+version = "0.6.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5e10aaa38de1d53374f90deeb4535209adc40cc5dba37f9704724169bceec69a"
+checksum = "23a748e4e92be1265cd9e93d569c0b5dfc7814107985aa6743d670ab281ea1a8"
 dependencies = [
  "gdk4-sys",
  "gio-sys",
@@ -1020,9 +610,9 @@ dependencies = [
 
 [[package]]
 name = "libc"
-version = "0.2.150"
+version = "0.2.153"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "89d92a4743f9a61002fae18374ed11e7973f530cb3a3255fb354818118b2203c"
+checksum = "9c198f91728a82281a64e1f4f9eeb25d82cb32a5de251c6bd1b5154d63a8e7bd"
 
 [[package]]
 name = "libdbus-sys"
@@ -1035,9 +625,9 @@ dependencies = [
 
 [[package]]
 name = "libsqlite3-sys"
-version = "0.27.0"
+version = "0.28.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "cf4e226dcd58b4be396f7bd3c20da8fdee2911400705297ba7d2d7cc2c30f716"
+checksum = "0c10584274047cb335c23d3e61bcef8e323adae7c5c8c760540f73610177fc3f"
 dependencies = [
  "cc",
  "pkg-config",
@@ -1068,22 +658,6 @@ dependencies = [
 ]
 
 [[package]]
-name = "lock_api"
-version = "0.4.11"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3c168f8615b12bc01f9c17e2eb0cc07dcae1940121185446edc3744920e8ef45"
-dependencies = [
- "autocfg",
- "scopeguard",
-]
-
-[[package]]
-name = "log"
-version = "0.4.20"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b5e6163cb8c49088c2c36f57875e58ccd8c87c7427f7fbd50ea6710b2f3f2e8f"
-
-[[package]]
 name = "malloc_buf"
 version = "0.0.6"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -1093,16 +667,10 @@ dependencies = [
 ]
 
 [[package]]
-name = "maybe-uninit"
-version = "2.0.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "60302e4db3a61da70c0cb7991976248362f30319e88850c487b9b95bbf059e00"
-
-[[package]]
 name = "memchr"
-version = "2.6.4"
+version = "2.7.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f665ee40bc4a3c5590afb1e9677db74a508659dfd71e126420da8274909a0167"
+checksum = "523dc4f511e55ab87b694dc30d0f820d60906ef06413f93d4d7a1385599cc149"
 
 [[package]]
 name = "memoffset"
@@ -1114,110 +682,23 @@ dependencies = [
 ]
 
 [[package]]
-name = "miniz_oxide"
-version = "0.3.7"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "791daaae1ed6889560f8c4359194f56648355540573244a5448a83ba1ecc7435"
-dependencies = [
- "adler32",
-]
-
-[[package]]
 name = "missioncenter"
-version = "0.4.4"
+version = "0.4.5"
 dependencies = [
- "arrayvec 0.7.4",
  "dbus",
  "errno-sys",
  "gettext-rs",
- "gl",
- "gl_loader",
  "gtk4",
- "interprocess",
  "lazy_static",
  "libadwaita",
  "libc",
  "libudev-sys",
- "pathfinder_canvas",
- "pathfinder_color",
- "pathfinder_content",
- "pathfinder_geometry",
- "pathfinder_gl",
- "pathfinder_gpu",
- "pathfinder_renderer",
- "pathfinder_resources",
- "raw-cpuid",
  "regex",
  "rusqlite",
  "rust-ini",
  "serde",
  "serde_json",
- "sha2",
- "shared_memory_extended",
- "sysinfo",
  "textdistance",
- "thiserror",
-]
-
-[[package]]
-name = "nix"
-version = "0.26.4"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "598beaf3cc6fdd9a5dfb1630c2800c7acd31df7aaf0f565796fba2b53ca1af1b"
-dependencies = [
- "bitflags 1.3.2",
- "cfg-if 1.0.0",
- "libc",
-]
-
-[[package]]
-name = "ntapi"
-version = "0.4.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e8a3895c6391c39d7fe7ebc444a87eb2991b2a0bc718fdabd071eec617fc68e4"
-dependencies = [
- "winapi",
-]
-
-[[package]]
-name = "num-integer"
-version = "0.1.45"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "225d3389fb3509a24c93f5c29eb6bde2586b98d9f016636dff58d7c6f7569cd9"
-dependencies = [
- "autocfg",
- "num-traits",
-]
-
-[[package]]
-name = "num-iter"
-version = "0.1.43"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7d03e6c028c5dc5cac6e2dec0efda81fc887605bb3d884578bb6d6bf7514e252"
-dependencies = [
- "autocfg",
- "num-integer",
- "num-traits",
-]
-
-[[package]]
-name = "num-rational"
-version = "0.3.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "12ac428b1cb17fce6f731001d307d351ec70a6d202fc2e60f7d4c5e42d8f4f07"
-dependencies = [
- "autocfg",
- "num-integer",
- "num-traits",
-]
-
-[[package]]
-name = "num-traits"
-version = "0.2.17"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "39e3200413f237f41ab11ad6d161bc7239c84dcb631773ccd7de3dfe4b5c267c"
-dependencies = [
- "autocfg",
 ]
 
 [[package]]
@@ -1251,9 +732,9 @@ dependencies = [
 
 [[package]]
 name = "once_cell"
-version = "1.18.0"
+version = "1.19.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "dd8b5dd2ae5ed71462c540258bedcb51965123ad7e7ccf4b9a8cafaa4a63576d"
+checksum = "3fdb12b2476b595f9358c5161aa467c2438859caa136dec86c26fdd2efe17b92"
 
 [[package]]
 name = "ordered-multimap"
@@ -1262,27 +743,26 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "a4d6a8c22fc714f0c2373e6091bf6f5e9b37b1bc0b1184874b7e0a4e303d318f"
 dependencies = [
  "dlv-list",
- "hashbrown 0.14.2",
+ "hashbrown",
 ]
 
 [[package]]
 name = "pango"
-version = "0.18.3"
+version = "0.19.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7ca27ec1eb0457ab26f3036ea52229edbdb74dee1edd29063f5b9b010e7ebee4"
+checksum = "7809e8af4df8d024a066106b72ca6bc7253a484ae3867041a96103ef8a13188d"
 dependencies = [
  "gio",
  "glib",
  "libc",
- "once_cell",
  "pango-sys",
 ]
 
 [[package]]
 name = "pango-sys"
-version = "0.18.0"
+version = "0.19.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "436737e391a843e5933d6d9aa102cb126d501e815b83601365a948a518555dc5"
+checksum = "f52ef6a881c19fbfe3b1484df5cad411acaaba29dbec843941c3110d19f340ea"
 dependencies = [
  "glib-sys",
  "gobject-sys",
@@ -1291,137 +771,6 @@ dependencies = [
 ]
 
 [[package]]
-name = "pathfinder_canvas"
-version = "0.5.0"
-source = "git+https://github.com/kicsyromy/pathfinder?rev=ec56924f660e6faa83c81c6b62b3c69b9a9fa00e#ec56924f660e6faa83c81c6b62b3c69b9a9fa00e"
-dependencies = [
- "pathfinder_color",
- "pathfinder_content",
- "pathfinder_geometry",
- "pathfinder_renderer",
-]
-
-[[package]]
-name = "pathfinder_color"
-version = "0.5.0"
-source = "git+https://github.com/kicsyromy/pathfinder?rev=ec56924f660e6faa83c81c6b62b3c69b9a9fa00e#ec56924f660e6faa83c81c6b62b3c69b9a9fa00e"
-dependencies = [
- "pathfinder_simd",
-]
-
-[[package]]
-name = "pathfinder_content"
-version = "0.5.0"
-source = "git+https://github.com/kicsyromy/pathfinder?rev=ec56924f660e6faa83c81c6b62b3c69b9a9fa00e#ec56924f660e6faa83c81c6b62b3c69b9a9fa00e"
-dependencies = [
- "arrayvec 0.5.2",
- "bitflags 1.3.2",
- "image",
- "log",
- "pathfinder_color",
- "pathfinder_geometry",
- "pathfinder_simd",
- "smallvec",
-]
-
-[[package]]
-name = "pathfinder_geometry"
-version = "0.5.1"
-source = "git+https://github.com/kicsyromy/pathfinder?rev=ec56924f660e6faa83c81c6b62b3c69b9a9fa00e#ec56924f660e6faa83c81c6b62b3c69b9a9fa00e"
-dependencies = [
- "log",
- "pathfinder_simd",
-]
-
-[[package]]
-name = "pathfinder_gl"
-version = "0.5.0"
-source = "git+https://github.com/kicsyromy/pathfinder?rev=ec56924f660e6faa83c81c6b62b3c69b9a9fa00e#ec56924f660e6faa83c81c6b62b3c69b9a9fa00e"
-dependencies = [
- "gl",
- "half",
- "log",
- "pathfinder_geometry",
- "pathfinder_gpu",
- "pathfinder_resources",
- "pathfinder_simd",
-]
-
-[[package]]
-name = "pathfinder_gpu"
-version = "0.5.0"
-source = "git+https://github.com/kicsyromy/pathfinder?rev=ec56924f660e6faa83c81c6b62b3c69b9a9fa00e#ec56924f660e6faa83c81c6b62b3c69b9a9fa00e"
-dependencies = [
- "bitflags 1.3.2",
- "fxhash",
- "half",
- "image",
- "instant",
- "log",
- "pathfinder_color",
- "pathfinder_geometry",
- "pathfinder_resources",
- "pathfinder_simd",
-]
-
-[[package]]
-name = "pathfinder_renderer"
-version = "0.5.0"
-source = "git+https://github.com/kicsyromy/pathfinder?rev=ec56924f660e6faa83c81c6b62b3c69b9a9fa00e#ec56924f660e6faa83c81c6b62b3c69b9a9fa00e"
-dependencies = [
- "bitflags 1.3.2",
- "byte-slice-cast",
- "byteorder",
- "crossbeam-channel",
- "fxhash",
- "half",
- "hashbrown 0.7.2",
- "instant",
- "log",
- "pathfinder_color",
- "pathfinder_content",
- "pathfinder_geometry",
- "pathfinder_gpu",
- "pathfinder_resources",
- "pathfinder_simd",
- "pathfinder_ui",
- "rayon",
- "serde",
- "serde_json",
- "smallvec",
- "vec_map",
-]
-
-[[package]]
-name = "pathfinder_resources"
-version = "0.5.0"
-source = "git+https://github.com/kicsyromy/pathfinder?rev=ec56924f660e6faa83c81c6b62b3c69b9a9fa00e#ec56924f660e6faa83c81c6b62b3c69b9a9fa00e"
-
-[[package]]
-name = "pathfinder_simd"
-version = "0.5.2"
-source = "git+https://github.com/kicsyromy/pathfinder?rev=ec56924f660e6faa83c81c6b62b3c69b9a9fa00e#ec56924f660e6faa83c81c6b62b3c69b9a9fa00e"
-dependencies = [
- "rustc_version",
-]
-
-[[package]]
-name = "pathfinder_ui"
-version = "0.5.0"
-source = "git+https://github.com/kicsyromy/pathfinder?rev=ec56924f660e6faa83c81c6b62b3c69b9a9fa00e#ec56924f660e6faa83c81c6b62b3c69b9a9fa00e"
-dependencies = [
- "hashbrown 0.7.2",
- "pathfinder_color",
- "pathfinder_geometry",
- "pathfinder_gpu",
- "pathfinder_resources",
- "pathfinder_simd",
- "serde",
- "serde_derive",
- "serde_json",
-]
-
-[[package]]
 name = "pin-project-lite"
 version = "0.2.13"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -1434,57 +783,18 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "8b870d8c151b6f2fb93e84a13146138f05d02ed11c7e7c54f8826aaaf7c9f184"
 
 [[package]]
-name = "piper"
-version = "0.2.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "668d31b1c4eba19242f2088b2bf3316b82ca31082a8335764db4e083db7485d4"
-dependencies = [
- "atomic-waker",
- "fastrand",
- "futures-io",
-]
-
-[[package]]
 name = "pkg-config"
-version = "0.3.27"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "26072860ba924cbfa98ea39c8c19b4dd6a4a25423dbdf219c1eca91aa0cf6964"
-
-[[package]]
-name = "png"
-version = "0.16.8"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3c3287920cb847dee3de33d301c463fba14dda99db24214ddf93f83d3021f4c6"
-dependencies = [
- "bitflags 1.3.2",
- "crc32fast",
- "deflate",
- "miniz_oxide",
-]
-
-[[package]]
-name = "ppv-lite86"
-version = "0.2.17"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5b40af805b3121feab8a3c29f04d8ad262fa8e0561883e7653e024ae4479e6de"
-
-[[package]]
-name = "proc-macro-crate"
-version = "1.3.1"
+version = "0.3.30"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7f4c021e1093a56626774e81216a4ce732a735e5bad4868a03f3ed65ca0c3919"
-dependencies = [
- "once_cell",
- "toml_edit 0.19.15",
-]
+checksum = "d231b230927b5e4ad203db57bbcbee2802f6bce620b1e4a9024a07d94e2907ec"
 
 [[package]]
 name = "proc-macro-crate"
-version = "2.0.0"
+version = "3.1.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7e8366a6159044a37876a2b9817124296703c586a5c92e2c53751fa06d8d43e8"
+checksum = "6d37c51ca738a55da99dc0c4a34860fd675453b8b36209178c2249bb13651284"
 dependencies = [
- "toml_edit 0.20.7",
+ "toml_edit 0.21.1",
 ]
 
 [[package]]
@@ -1513,86 +823,27 @@ dependencies = [
 
 [[package]]
 name = "proc-macro2"
-version = "1.0.69"
+version = "1.0.78"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "134c189feb4956b20f6f547d2cf727d4c0fe06722b20a0eec87ed445a97f92da"
+checksum = "e2422ad645d89c99f8f3e6b88a9fdeca7fabeac836b1002371c4367c8f984aae"
 dependencies = [
  "unicode-ident",
 ]
 
 [[package]]
 name = "quote"
-version = "1.0.33"
+version = "1.0.35"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5267fca4496028628a95160fc423a33e8b2e6af8a5302579e322e4b520293cae"
+checksum = "291ec9ab5efd934aaf503a6466c5d5251535d108ee747472c3977cc5acc868ef"
 dependencies = [
  "proc-macro2",
 ]
 
 [[package]]
-name = "rand"
-version = "0.8.5"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "34af8d1a0e25924bc5b7c43c079c942339d8f0a8b57c39049bef581b46327404"
-dependencies = [
- "libc",
- "rand_chacha",
- "rand_core",
-]
-
-[[package]]
-name = "rand_chacha"
-version = "0.3.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e6c10a63a0fa32252be49d21e7709d4d4baf8d231c2dbce1eaa8141b9b127d88"
-dependencies = [
- "ppv-lite86",
- "rand_core",
-]
-
-[[package]]
-name = "rand_core"
-version = "0.6.4"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ec0be4795e2f6a28069bec0b5ff3e2ac9bafc99e6a9a7dc3547996c5c816922c"
-dependencies = [
- "getrandom",
-]
-
-[[package]]
-name = "raw-cpuid"
-version = "11.0.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9d86a7c4638d42c44551f4791a20e687dbb4c3de1f33c43dd71e355cd429def1"
-dependencies = [
- "bitflags 2.4.1",
-]
-
-[[package]]
-name = "rayon"
-version = "1.8.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9c27db03db7734835b3f53954b534c91069375ce6ccaa2e065441e07d9b6cdb1"
-dependencies = [
- "either",
- "rayon-core",
-]
-
-[[package]]
-name = "rayon-core"
-version = "1.12.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5ce3fb6ad83f861aac485e76e1985cd109d9a3713802152be56c3b1f0e0658ed"
-dependencies = [
- "crossbeam-deque",
- "crossbeam-utils 0.8.16",
-]
-
-[[package]]
 name = "regex"
-version = "1.10.2"
+version = "1.10.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "380b951a9c5e80ddfd6136919eef32310721aa4aacd4889a8d39124b026ab343"
+checksum = "b62dbe01f0b06f9d8dc7d49e05a0785f153b00b2c227856282f671e0318c9b15"
 dependencies = [
  "aho-corasick",
  "memchr",
@@ -1602,9 +853,9 @@ dependencies = [
 
 [[package]]
 name = "regex-automata"
-version = "0.4.3"
+version = "0.4.6"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5f804c7828047e88b2d32e2d7fe5a105da8ee3264f01902f796c8e067dc2483f"
+checksum = "86b83b8b9847f9bf95ef68afb0b8e6cdb80f498442f5179a29fad448fcc1eaea"
 dependencies = [
  "aho-corasick",
  "memchr",
@@ -1619,11 +870,11 @@ checksum = "c08c74e62047bb2de4ff487b251e4a92e24f48745648451635cec7d591162d9f"
 
 [[package]]
 name = "rusqlite"
-version = "0.30.0"
+version = "0.31.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a78046161564f5e7cd9008aff3b2990b3850dc8e0349119b98e8f251e099f24d"
+checksum = "b838eba278d213a8beaf485bd313fd580ca4505a00d5871caeb1457c55322cae"
 dependencies = [
- "bitflags 2.4.1",
+ "bitflags",
  "fallible-iterator",
  "fallible-streaming-iterator",
  "hashlink",
@@ -1633,12 +884,13 @@ dependencies = [
 
 [[package]]
 name = "rust-ini"
-version = "0.20.0"
+version = "0.21.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3e0698206bcb8882bf2a9ecb4c1e7785db57ff052297085a6efd4fe42302068a"
+checksum = "0d625ed57d8f49af6cfa514c42e1a71fadcff60eb0b1c517ff82fe41aa025b41"
 dependencies = [
- "cfg-if 1.0.0",
+ "cfg-if",
  "ordered-multimap",
+ "trim-in-place",
 ]
 
 [[package]]
@@ -1652,47 +904,41 @@ dependencies = [
 
 [[package]]
 name = "ryu"
-version = "1.0.15"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1ad4cc8da4ef723ed60bced201181d83791ad433213d8c24efffda1eec85d741"
-
-[[package]]
-name = "scopeguard"
-version = "1.2.0"
+version = "1.0.17"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "94143f37725109f92c262ed2cf5e59bce7498c01bcc1502d7b9afe439a4e9f49"
+checksum = "e86697c916019a8588c99b5fac3cead74ec0b4b819707a682fd4d23fa0ce1ba1"
 
 [[package]]
 name = "semver"
-version = "1.0.20"
+version = "1.0.22"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "836fa6a3e1e547f9a2c4040802ec865b5d85f4014efe00555d7090a3dcaa1090"
+checksum = "92d43fe69e652f3df9bdc2b85b2854a0825b86e4fb76bc44d945137d053639ca"
 
 [[package]]
 name = "serde"
-version = "1.0.192"
+version = "1.0.197"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "bca2a08484b285dcb282d0f67b26cadc0df8b19f8c12502c13d966bf9482f001"
+checksum = "3fb1c873e1b9b056a4dc4c0c198b24c3ffa059243875552b2bd0933b1aee4ce2"
 dependencies = [
  "serde_derive",
 ]
 
 [[package]]
 name = "serde_derive"
-version = "1.0.192"
+version = "1.0.197"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d6c7207fbec9faa48073f3e3074cbe553af6ea512d7c21ba46e434e70ea9fbc1"
+checksum = "7eb0b34b42edc17f6b7cac84a52a1c5f0e1bb2227e997ca9011ea3dd34e8610b"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.39",
+ "syn 2.0.52",
 ]
 
 [[package]]
 name = "serde_json"
-version = "1.0.108"
+version = "1.0.114"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3d1c7e3eac408d115102c4c24ad393e0821bb3a5df4d506a80f85f7a742a526b"
+checksum = "c5f09b1bd632ef549eaa9f60a1f8de742bdbc698e6cee2095fc84dde5f549ae0"
 dependencies = [
  "itoa",
  "ryu",
@@ -1701,38 +947,14 @@ dependencies = [
 
 [[package]]
 name = "serde_spanned"
-version = "0.6.4"
+version = "0.6.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "12022b835073e5b11e90a14f86838ceb1c8fb0325b72416845c487ac0fa95e80"
+checksum = "eb3622f419d1296904700073ea6cc23ad690adbd66f13ea683df73298736f0c1"
 dependencies = [
  "serde",
 ]
 
 [[package]]
-name = "sha2"
-version = "0.10.8"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "793db75ad2bcafc3ffa7c68b215fee268f537982cd901d132f89c6343f3a3dc8"
-dependencies = [
- "cfg-if 1.0.0",
- "cpufeatures",
- "digest",
-]
-
-[[package]]
-name = "shared_memory_extended"
-version = "0.13.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "004d7ece9a3be64f85471d50967710b0a146144225bed5f0abd0514a3bed086f"
-dependencies = [
- "cfg-if 1.0.0",
- "libc",
- "nix",
- "rand",
- "win-sys",
-]
-
-[[package]]
 name = "slab"
 version = "0.4.9"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -1743,18 +965,9 @@ dependencies = [
 
 [[package]]
 name = "smallvec"
-version = "1.11.2"
+version = "1.13.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4dccd0940a2dcdf68d092b8cbab7dc0ad8fa938bf95787e1b916b0e3d0e8e970"
-
-[[package]]
-name = "spinning"
-version = "0.1.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2d4f0e86297cad2658d92a707320d87bf4e6ae1050287f51d19b67ef3f153a7b"
-dependencies = [
- "lock_api",
-]
+checksum = "e6ecd384b10a64542d77071bd64bd7b231f4ed5940fba55e98c3de13824cf3d7"
 
 [[package]]
 name = "syn"
@@ -1769,9 +982,9 @@ dependencies = [
 
 [[package]]
 name = "syn"
-version = "2.0.39"
+version = "2.0.52"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "23e78b90f2fcf45d3e842032ce32e3f2d1545ba6636271dcbf24fa306d87be7a"
+checksum = "b699d15b36d1f02c3e7c69f8ffef53de37aefae075d8488d4ba1a7788d574a07"
 dependencies = [
  "proc-macro2",
  "quote",
@@ -1779,20 +992,6 @@ dependencies = [
 ]
 
 [[package]]
-name = "sysinfo"
-version = "0.29.10"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0a18d114d420ada3a891e6bc8e96a2023402203296a47cdd65083377dad18ba5"
-dependencies = [
- "cfg-if 1.0.0",
- "core-foundation-sys",
- "libc",
- "ntapi",
- "once_cell",
- "winapi",
-]
-
-[[package]]
 name = "system-deps"
 version = "6.2.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -1807,15 +1006,15 @@ dependencies = [
 
 [[package]]
 name = "target-lexicon"
-version = "0.12.12"
+version = "0.12.14"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "14c39fd04924ca3a864207c66fc2cd7d22d7c016007f9ce846cbb9326331930a"
+checksum = "e1fc403891a21bcfb7c37834ba66a547a8f402146eba7265b5a6d88059c9ff2f"
 
 [[package]]
 name = "temp-dir"
-version = "0.1.11"
+version = "0.1.12"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "af547b166dd1ea4b472165569fc456cfb6818116f854690b0ff205e636523dab"
+checksum = "dd16aa9ffe15fe021c6ee3766772132c6e98dfa395a167e16864f61a9cfb71d6"
 
 [[package]]
 name = "textdistance"
@@ -1825,22 +1024,22 @@ checksum = "d321c8576c2b47e43953e9cce236550d4cd6af0a6ce518fe084340082ca6037b"
 
 [[package]]
 name = "thiserror"
-version = "1.0.50"
+version = "1.0.57"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f9a7210f5c9a7156bb50aa36aed4c95afb51df0df00713949448cf9e97d382d2"
+checksum = "1e45bcbe8ed29775f228095caf2cd67af7a4ccf756ebff23a306bf3e8b47b24b"
 dependencies = [
  "thiserror-impl",
 ]
 
 [[package]]
 name = "thiserror-impl"
-version = "1.0.50"
+version = "1.0.57"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "266b2e40bc00e5a6c09c3584011e08b06f123c00362c92b975ba9843aaaa14b8"
+checksum = "a953cb265bef375dae3de6663da4d3804eee9682ea80d8e2542529b73c531c81"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.39",
+ "syn 2.0.52",
 ]
 
 [[package]]
@@ -1853,21 +1052,15 @@ dependencies = [
 ]
 
 [[package]]
-name = "to_method"
-version = "1.1.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c7c4ceeeca15c8384bbc3e011dbd8fccb7f068a440b752b7d9b32ceb0ca0e2e8"
-
-[[package]]
 name = "toml"
-version = "0.8.8"
+version = "0.8.10"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a1a195ec8c9da26928f773888e0742ca3ca1040c6cd859c919c9f59c1954ab35"
+checksum = "9a9aad4a3066010876e8dcf5a8a06e70a558751117a145c6ce2b82c2e2054290"
 dependencies = [
  "serde",
  "serde_spanned",
  "toml_datetime",
- "toml_edit 0.21.0",
+ "toml_edit 0.22.6",
 ]
 
 [[package]]
@@ -1881,60 +1074,33 @@ dependencies = [
 
 [[package]]
 name = "toml_edit"
-version = "0.19.15"
+version = "0.21.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1b5bb770da30e5cbfde35a2d7b9b8a2c4b8ef89548a7a6aeab5c9a576e3e7421"
+checksum = "6a8534fd7f78b5405e860340ad6575217ce99f38d4d5c8f2442cb5ecb50090e1"
 dependencies = [
  "indexmap",
  "toml_datetime",
- "winnow",
+ "winnow 0.5.40",
 ]
 
 [[package]]
 name = "toml_edit"
-version = "0.20.7"
+version = "0.22.6"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "70f427fce4d84c72b5b732388bf4a9f4531b53f74e2887e3ecb2481f68f66d81"
-dependencies = [
- "indexmap",
- "toml_datetime",
- "winnow",
-]
-
-[[package]]
-name = "toml_edit"
-version = "0.21.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d34d383cd00a163b4a5b85053df514d45bc330f6de7737edfe0a93311d1eaa03"
+checksum = "2c1b5fd4128cc8d3e0cb74d4ed9a9cc7c7284becd4df68f5f940e1ad123606f6"
 dependencies = [
  "indexmap",
  "serde",
  "serde_spanned",
  "toml_datetime",
- "winnow",
-]
-
-[[package]]
-name = "tracing"
-version = "0.1.40"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c3523ab5a71916ccf420eebdf5521fcef02141234bbc0b8a49f2fdc4544364ef"
-dependencies = [
- "pin-project-lite",
- "tracing-core",
+ "winnow 0.6.5",
 ]
 
 [[package]]
-name = "tracing-core"
-version = "0.1.32"
+name = "trim-in-place"
+version = "0.1.7"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c06d3da6113f116aaee68e4d601191614c9053067f9ab7f6edbcb161237daa54"
-
-[[package]]
-name = "typenum"
-version = "1.17.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "42ff0bf0c66b8238c6f3b578df37d0b7848e55df8577b3f74f92a69acceeb825"
+checksum = "343e926fc669bc8cde4fa3129ab681c63671bae288b1f1081ceee6d9d37904fc"
 
 [[package]]
 name = "unicode-ident"
@@ -1949,12 +1115,6 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "accd4ea62f7bb7a82fe23066fb0957d48ef677f6eeb8215f372f52e48bb32426"
 
 [[package]]
-name = "vec_map"
-version = "0.8.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f1bddf1187be692e79c5ffeab891132dfb0f236ed36a43c7ed39f1165ee20191"
-
-[[package]]
 name = "version-compare"
 version = "0.1.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -1973,79 +1133,6 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "9c8d87e72b64a3b4db28d11ce29237c246188f4f51057d65a7eab63b7987e423"
 
 [[package]]
-name = "wasm-bindgen"
-version = "0.2.88"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7daec296f25a1bae309c0cd5c29c4b260e510e6d813c286b19eaadf409d40fce"
-dependencies = [
- "cfg-if 1.0.0",
- "wasm-bindgen-macro",
-]
-
-[[package]]
-name = "wasm-bindgen-backend"
-version = "0.2.88"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e397f4664c0e4e428e8313a469aaa58310d302159845980fd23b0f22a847f217"
-dependencies = [
- "bumpalo",
- "log",
- "once_cell",
- "proc-macro2",
- "quote",
- "syn 2.0.39",
- "wasm-bindgen-shared",
-]
-
-[[package]]
-name = "wasm-bindgen-macro"
-version = "0.2.88"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5961017b3b08ad5f3fe39f1e79877f8ee7c23c5e5fd5eb80de95abc41f1f16b2"
-dependencies = [
- "quote",
- "wasm-bindgen-macro-support",
-]
-
-[[package]]
-name = "wasm-bindgen-macro-support"
-version = "0.2.88"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c5353b8dab669f5e10f5bd76df26a9360c748f054f862ff5f3f8aae0c7fb3907"
-dependencies = [
- "proc-macro2",
- "quote",
- "syn 2.0.39",
- "wasm-bindgen-backend",
- "wasm-bindgen-shared",
-]
-
-[[package]]
-name = "wasm-bindgen-shared"
-version = "0.2.88"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0d046c5d029ba91a1ed14da14dca44b68bf2f124cfbaf741c54151fdb3e0750b"
-
-[[package]]
-name = "web-sys"
-version = "0.3.65"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5db499c5f66323272151db0e666cd34f78617522fb0c1604d31a27c50c206a85"
-dependencies = [
- "js-sys",
- "wasm-bindgen",
-]
-
-[[package]]
-name = "win-sys"
-version = "0.3.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5b7b128a98c1cfa201b09eb49ba285887deb3cbe7466a98850eb1adabb452be5"
-dependencies = [
- "windows",
-]
-
-[[package]]
 name = "winapi"
 version = "0.3.9"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -2068,79 +1155,105 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f"
 
 [[package]]
-name = "windows"
-version = "0.34.0"
+name = "windows-sys"
+version = "0.52.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "45296b64204227616fdbf2614cefa4c236b98ee64dfaaaa435207ed99fe7829f"
+checksum = "282be5f36a8ce781fad8c8ae18fa3f9beff57ec1b52cb3de0789201425d9a33d"
 dependencies = [
+ "windows-targets",
+]
+
+[[package]]
+name = "windows-targets"
+version = "0.52.4"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "7dd37b7e5ab9018759f893a1952c9420d060016fc19a472b4bb20d1bdd694d1b"
+dependencies = [
+ "windows_aarch64_gnullvm",
  "windows_aarch64_msvc",
  "windows_i686_gnu",
  "windows_i686_msvc",
  "windows_x86_64_gnu",
+ "windows_x86_64_gnullvm",
  "windows_x86_64_msvc",
 ]
 
 [[package]]
+name = "windows_aarch64_gnullvm"
+version = "0.52.4"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "bcf46cf4c365c6f2d1cc93ce535f2c8b244591df96ceee75d8e83deb70a9cac9"
+
+[[package]]
 name = "windows_aarch64_msvc"
-version = "0.34.0"
+version = "0.52.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "17cffbe740121affb56fad0fc0e421804adf0ae00891205213b5cecd30db881d"
+checksum = "da9f259dd3bcf6990b55bffd094c4f7235817ba4ceebde8e6d11cd0c5633b675"
 
 [[package]]
 name = "windows_i686_gnu"
-version = "0.34.0"
+version = "0.52.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2564fde759adb79129d9b4f54be42b32c89970c18ebf93124ca8870a498688ed"
+checksum = "b474d8268f99e0995f25b9f095bc7434632601028cf86590aea5c8a5cb7801d3"
 
 [[package]]
 name = "windows_i686_msvc"
-version = "0.34.0"
+version = "0.52.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9cd9d32ba70453522332c14d38814bceeb747d80b3958676007acadd7e166956"
+checksum = "1515e9a29e5bed743cb4415a9ecf5dfca648ce85ee42e15873c3cd8610ff8e02"
 
 [[package]]
 name = "windows_x86_64_gnu"
-version = "0.34.0"
+version = "0.52.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "cfce6deae227ee8d356d19effc141a509cc503dfd1f850622ec4b0f84428e1f4"
+checksum = "5eee091590e89cc02ad514ffe3ead9eb6b660aedca2183455434b93546371a03"
+
+[[package]]
+name = "windows_x86_64_gnullvm"
+version = "0.52.4"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "77ca79f2451b49fa9e2af39f0747fe999fcda4f5e241b2898624dca97a1f2177"
 
 [[package]]
 name = "windows_x86_64_msvc"
-version = "0.34.0"
+version = "0.52.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d19538ccc21819d01deaf88d6a17eae6596a12e9aafdbb97916fb49896d89de9"
+checksum = "32b752e52a2da0ddfbdbcc6fceadfeede4c939ed16d13e648833a61dfb611ed8"
 
 [[package]]
 name = "winnow"
-version = "0.5.19"
+version = "0.5.40"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "829846f3e3db426d4cee4510841b71a8e58aa2a76b1132579487ae430ccd9c7b"
+checksum = "f593a95398737aeed53e489c785df13f3618e41dbcd6718c6addbf1395aa6876"
 dependencies = [
  "memchr",
 ]
 
 [[package]]
-name = "xml-rs"
-version = "0.8.19"
+name = "winnow"
+version = "0.6.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0fcb9cbac069e033553e8bb871be2fbdffcab578eb25bd0f7c508cedc6dcd75a"
+checksum = "dffa400e67ed5a4dd237983829e66475f0a4a26938c4b04c21baede6262215b8"
+dependencies = [
+ "memchr",
+]
 
 [[package]]
 name = "zerocopy"
-version = "0.7.25"
+version = "0.7.32"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8cd369a67c0edfef15010f980c3cbe45d7f651deac2cd67ce097cd801de16557"
+checksum = "74d4d3961e53fa4c9a25a8637fc2bfaf2595b3d3ae34875568a5cf64787716be"
 dependencies = [
  "zerocopy-derive",
 ]
 
 [[package]]
 name = "zerocopy-derive"
-version = "0.7.25"
+version = "0.7.32"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c2f140bda219a26ccc0cdb03dba58af72590c53b22642577d88a927bc5c87d6b"
+checksum = "9ce1b18ccd8e73a9321186f97e46f9f04b778851177567b1975109d26a08d2a6"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.39",
+ "syn 2.0.52",
 ]
diff --git a/pkgs/applications/misc/mission-center/default.nix b/pkgs/applications/misc/mission-center/default.nix
index 8bfbb4298a1b..6f8fb90bc26b 100644
--- a/pkgs/applications/misc/mission-center/default.nix
+++ b/pkgs/applications/misc/mission-center/default.nix
@@ -45,13 +45,13 @@ let
 in
 stdenv.mkDerivation rec {
   pname = "mission-center";
-  version = "0.4.4";
+  version = "0.4.5";
 
   src = fetchFromGitLab {
     owner = "mission-center-devs";
     repo = "mission-center";
     rev = "v${version}";
-    hash = "sha256-J0wSu/jWpUJ7Ga6RecY4yLT7i5Ry1HiI+t30SAHOkMw=";
+    hash = "sha256-e5+uB2vzwRqjUiR+gxpSARHPqG+1iX3yifsfwv5LnZI=";
   };
 
   cargoDeps = symlinkJoin {
@@ -59,9 +59,6 @@ stdenv.mkDerivation rec {
     paths = [
       (rustPlatform.importCargoLock {
         lockFile = ./Cargo.lock;
-        outputHashes = {
-          "pathfinder_canvas-0.5.0" = "sha256-qEp16TVggPtvFvDuUyWsS6rH6MeO6FW0K6BnACghaCg=";
-        };
       })
       (rustPlatform.importCargoLock {
         lockFile = ./gatherer-Cargo.lock;
diff --git a/pkgs/applications/misc/mission-center/gatherer-Cargo.lock b/pkgs/applications/misc/mission-center/gatherer-Cargo.lock
index c3487fe479b8..792a68f66f97 100644
--- a/pkgs/applications/misc/mission-center/gatherer-Cargo.lock
+++ b/pkgs/applications/misc/mission-center/gatherer-Cargo.lock
@@ -9,10 +9,19 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "f26201604c87b1e01bd3d98f8d5d9a8fcbb815e8cedb41ffccbeb4bf593a35fe"
 
 [[package]]
+name = "aho-corasick"
+version = "1.1.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "b2969dcb958b36655471fc61f7e416fa76033bdd4bfed0678d8fee1e2d07a1f0"
+dependencies = [
+ "memchr",
+]
+
+[[package]]
 name = "anyhow"
-version = "1.0.75"
+version = "1.0.80"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a4668cab20f66d8d020e1fbc0ebe47217433c1b6c8f2040faf858554e394ace6"
+checksum = "5ad32ce52e4161730f7098c077cd2ed6229b5804ccf99e5366be1ab72a98b4e1"
 
 [[package]]
 name = "arrayvec"
@@ -31,9 +40,9 @@ dependencies = [
 
 [[package]]
 name = "base64"
-version = "0.21.5"
+version = "0.21.7"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "35636a1494ede3b646cc98f74f8e62c773a38a659ebc777a2cf26b9b74171df9"
+checksum = "9d297deb1925b89f2ccc13d7635fa0714f12c87adce1c75356b39ca9b7178567"
 
 [[package]]
 name = "bincode"
@@ -52,9 +61,9 @@ checksum = "bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a"
 
 [[package]]
 name = "bitflags"
-version = "2.4.1"
+version = "2.4.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "327762f6e5a765692301e5bb513e0d9fef63be86bbc14528052b1cd3e6f03e07"
+checksum = "ed570934406eb16438a4e976b1b4500774099c13b8cb96eec99f620f05090ddf"
 
 [[package]]
 name = "block-buffer"
@@ -66,10 +75,20 @@ dependencies = [
 ]
 
 [[package]]
+name = "bstr"
+version = "1.9.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "05efc5cfd9110c8416e471df0e96702d58690178e206e61b7173706673c93706"
+dependencies = [
+ "memchr",
+ "serde",
+]
+
+[[package]]
 name = "bytemuck"
-version = "1.14.0"
+version = "1.14.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "374d28ec25809ee0e23827c2ab573d729e293f281dfe393500e7ad618baa61c6"
+checksum = "a2ef034f05691a48569bd920a96c81b9d91bbad1ab5ac7c4616c1f6ef36cb79f"
 dependencies = [
  "bytemuck_derive",
 ]
@@ -87,16 +106,17 @@ dependencies = [
 
 [[package]]
 name = "cargo-util"
-version = "0.2.6"
+version = "0.2.9"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "77042b5b585f701f1cfb4b6b12ebc02b9b0cefbc8dcce235906b6bf376d4245d"
+checksum = "74862c3c6e53a1c1f8f0178f9d38ab41e49746cd3a7cafc239b3d0248fd4e342"
 dependencies = [
  "anyhow",
  "core-foundation",
  "filetime",
  "hex",
+ "ignore",
  "jobserver",
- "libc 0.2.150",
+ "libc 0.2.153",
  "miow",
  "same-file",
  "sha2",
@@ -104,17 +124,14 @@ dependencies = [
  "tempfile",
  "tracing",
  "walkdir",
- "windows-sys",
+ "windows-sys 0.52.0",
 ]
 
 [[package]]
 name = "cc"
-version = "1.0.83"
+version = "1.0.90"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f1174fb0b6ec23863f8b971027804a42614e347eafb0a95bf0b12cdae21fc4d0"
-dependencies = [
- "libc 0.2.150",
-]
+checksum = "8cd6604a82acf3039f1144f54b8eb34e91ffba622051189e71b781822d5ee1f5"
 
 [[package]]
 name = "cfg-if"
@@ -123,10 +140,16 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd"
 
 [[package]]
+name = "cfg_aliases"
+version = "0.1.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "fd16c4719339c4530435d38e511904438d07cce7950afa3718a84ac36c10e89e"
+
+[[package]]
 name = "const-random"
-version = "0.1.17"
+version = "0.1.18"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5aaf16c9c2c612020bcfd042e170f6e32de9b9d75adb5277cdbbd2e2c8c8299a"
+checksum = "87e00182fe74b066627d63b85fd550ac2998d4b0bd86bfed477a0ae4c7c71359"
 dependencies = [
  "const-random-macro",
 ]
@@ -144,39 +167,64 @@ dependencies = [
 
 [[package]]
 name = "core-foundation"
-version = "0.9.3"
+version = "0.9.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "194a7a9e6de53fa55116934067c844d9d749312f75c6f6d0980e8c252f8c2146"
+checksum = "91e195e091a93c46f7102ec7818a2aa394e1e1771c3ab4825963fa03e45afb8f"
 dependencies = [
  "core-foundation-sys",
- "libc 0.2.150",
+ "libc 0.2.153",
 ]
 
 [[package]]
 name = "core-foundation-sys"
-version = "0.8.4"
+version = "0.8.6"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e496a50fda8aacccc86d7529e2c1e0892dbd0f898a6b5645b5561b89c3210efa"
+checksum = "06ea2b9bc92be3c2baa9334a323ebca2d6f074ff852cd1d7b11064035cd3868f"
 
 [[package]]
 name = "cpufeatures"
-version = "0.2.11"
+version = "0.2.12"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ce420fe07aecd3e67c5f910618fe65e94158f6dcc0adf44e00d69ce2bdfe0fd0"
+checksum = "53fe5e26ff1b7aef8bca9c6080520cfb8d9333c7568e1829cef191a9723e5504"
 dependencies = [
- "libc 0.2.150",
+ "libc 0.2.153",
 ]
 
 [[package]]
 name = "crc32fast"
-version = "1.3.2"
+version = "1.4.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b540bd8bc810d3885c6ea91e2018302f68baba2129ab3e88f32389ee9370880d"
+checksum = "b3855a8a784b474f333699ef2bbca9db2c4a1f6d9088a90a2d25b1eb53111eaa"
 dependencies = [
  "cfg-if",
 ]
 
 [[package]]
+name = "crossbeam-deque"
+version = "0.8.5"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "613f8cc01fe9cf1a3eb3d7f488fd2fa8388403e97039e2f73692932e291a770d"
+dependencies = [
+ "crossbeam-epoch",
+ "crossbeam-utils",
+]
+
+[[package]]
+name = "crossbeam-epoch"
+version = "0.9.18"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "5b82ac4a3c2ca9c3460964f020e1402edd5753411d7737aa39c3714ad1b5420e"
+dependencies = [
+ "crossbeam-utils",
+]
+
+[[package]]
+name = "crossbeam-utils"
+version = "0.8.19"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "248e3bacc7dc6baa3b21e405ee045c3047101a49145e7e9eca583ab4c2ca5345"
+
+[[package]]
 name = "crunchy"
 version = "0.2.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -198,7 +246,7 @@ version = "0.9.7"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "1bb21987b9fb1613058ba3843121dd18b163b254d8a6e797e144cbac14d96d1b"
 dependencies = [
- "libc 0.2.150",
+ "libc 0.2.153",
  "libdbus-sys",
  "winapi",
 ]
@@ -233,11 +281,11 @@ dependencies = [
 
 [[package]]
 name = "drm"
-version = "0.11.0"
+version = "0.11.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e58eefd79f5173683872c0c82d0f05c2dc3c583d631259f60bb7a323756b7ff2"
+checksum = "a0f8a69e60d75ae7dab4ef26a59ca99f2a89d4c142089b537775ae0c198bdcde"
 dependencies = [
- "bitflags 2.4.1",
+ "bitflags 2.4.2",
  "bytemuck",
  "drm-ffi",
  "drm-fourcc",
@@ -246,9 +294,9 @@ dependencies = [
 
 [[package]]
 name = "drm-ffi"
-version = "0.7.0"
+version = "0.7.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "220dd8c12ebf2b0cbaffa19e00de02f5f090d363fb900f16ea012c077eea1174"
+checksum = "41334f8405792483e32ad05fbb9c5680ff4e84491883d2947a4757dc54cb2ac6"
 dependencies = [
  "drm-sys",
  "rustix",
@@ -262,12 +310,12 @@ checksum = "0aafbcdb8afc29c1a7ee5fbe53b5d62f4565b35a042a662ca9fecd0b54dae6f4"
 
 [[package]]
 name = "drm-sys"
-version = "0.6.0"
+version = "0.6.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5115283ec60c99da8a9e5dc3c55f27680211e974c948cb6f3b51f0373190503b"
+checksum = "2d09ff881f92f118b11105ba5e34ff8f4adf27b30dae8f12e28c193af1c83176"
 dependencies = [
- "libc 0.2.150",
- "linux-raw-sys 0.6.1",
+ "libc 0.2.153",
+ "linux-raw-sys 0.6.4",
 ]
 
 [[package]]
@@ -277,17 +325,17 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "a373bc9844200b1ff15bd1b245931d1c20d09d06e4ec09f361171f29a4b0752d"
 dependencies = [
  "khronos",
- "libc 0.2.150",
+ "libc 0.2.153",
 ]
 
 [[package]]
 name = "errno"
-version = "0.3.6"
+version = "0.3.8"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7c18ee0ed65a5f1f81cac6b1d213b69c35fa47d4252ad41f1486dbd8226fe36e"
+checksum = "a258e46cdc063eb8519c00b9fc845fc47bcfca4130e2f08e88665ceda8474245"
 dependencies = [
- "libc 0.2.150",
- "windows-sys",
+ "libc 0.2.153",
+ "windows-sys 0.52.0",
 ]
 
 [[package]]
@@ -298,14 +346,14 @@ checksum = "25cbce373ec4653f1a01a31e8a5e5ec0c622dc27ff9c4e6606eefef5cbbed4a5"
 
 [[package]]
 name = "filetime"
-version = "0.2.22"
+version = "0.2.23"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d4029edd3e734da6fe05b6cd7bd2960760a616bd2ddd0d59a0124746d6272af0"
+checksum = "1ee447700ac8aa0b2f2bd7bc4462ad686ba06baa6727ac149a2d6277f0d240fd"
 dependencies = [
  "cfg-if",
- "libc 0.2.150",
- "redox_syscall 0.3.5",
- "windows-sys",
+ "libc 0.2.153",
+ "redox_syscall",
+ "windows-sys 0.52.0",
 ]
 
 [[package]]
@@ -320,16 +368,16 @@ dependencies = [
 
 [[package]]
 name = "form_urlencoded"
-version = "1.2.0"
+version = "1.2.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a62bc1cf6f830c2ec14a513a9fb124d0a213a629668a4186f329db21fe045652"
+checksum = "e13624c2627564efccf4934284bdd98cbaa14e79b0b5a141218e507b3a823456"
 dependencies = [
  "percent-encoding",
 ]
 
 [[package]]
 name = "gatherer"
-version = "0.4.4"
+version = "0.4.5"
 dependencies = [
  "anyhow",
  "arrayvec",
@@ -344,7 +392,7 @@ dependencies = [
  "flate2",
  "gbm",
  "lazy_static",
- "libc 0.2.150",
+ "libc 0.2.153",
  "nix",
  "pkg-config",
  "rust-ini",
@@ -357,15 +405,15 @@ dependencies = [
 
 [[package]]
 name = "gbm"
-version = "0.14.0"
+version = "0.14.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "65dffaf38d96aa22cb748ccd9b1ffe624931e899f54c0225815ef7ac757a409f"
+checksum = "313702b30cdeb83ddc72bc14dcee67803cd0ae2d12282ea06e368c25a900c844"
 dependencies = [
  "bitflags 1.3.2",
  "drm",
  "drm-fourcc",
  "gbm-sys",
- "libc 0.2.150",
+ "libc 0.2.153",
 ]
 
 [[package]]
@@ -374,7 +422,7 @@ version = "0.3.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "6fd2d6bf7c0143b38beece05f9a5c4c851a49a8434f62bf58ff28da92b0ddc58"
 dependencies = [
- "libc 0.2.150",
+ "libc 0.2.153",
 ]
 
 [[package]]
@@ -389,16 +437,29 @@ dependencies = [
 
 [[package]]
 name = "getrandom"
-version = "0.2.11"
+version = "0.2.12"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "fe9006bed769170c11f845cf00c7c1e9092aeb3f268e007c3e760ac68008070f"
+checksum = "190092ea657667030ac6a35e305e62fc4dd69fd98ac98631e5d3a2b1575a12b5"
 dependencies = [
  "cfg-if",
- "libc 0.2.150",
+ "libc 0.2.153",
  "wasi",
 ]
 
 [[package]]
+name = "globset"
+version = "0.4.14"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "57da3b9b5b85bd66f31093f8c408b90a74431672542466497dcbdfdc02034be1"
+dependencies = [
+ "aho-corasick",
+ "bstr",
+ "log",
+ "regex-automata",
+ "regex-syntax",
+]
+
+[[package]]
 name = "hashbrown"
 version = "0.14.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -412,27 +473,43 @@ checksum = "7f24254aa9a54b5c858eaee2f5bccdb46aaf0e486a595ed5fd8f86ba55232a70"
 
 [[package]]
 name = "idna"
-version = "0.4.0"
+version = "0.5.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7d20d6b07bfbc108882d88ed8e37d39636dcc260e15e30c45e6ba089610b917c"
+checksum = "634d9b1461af396cad843f47fdba5597a4f9e6ddd4bfb6ff5d85028c25cb12f6"
 dependencies = [
  "unicode-bidi",
  "unicode-normalization",
 ]
 
 [[package]]
+name = "ignore"
+version = "0.4.22"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "b46810df39e66e925525d6e38ce1e7f6e1d208f72dc39757880fcb66e2c58af1"
+dependencies = [
+ "crossbeam-deque",
+ "globset",
+ "log",
+ "memchr",
+ "regex-automata",
+ "same-file",
+ "walkdir",
+ "winapi-util",
+]
+
+[[package]]
 name = "itoa"
-version = "1.0.9"
+version = "1.0.10"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "af150ab688ff2122fcef229be89cb50dd66af9e01a4ff320cc137eecc9bacc38"
+checksum = "b1a46d1a171d865aa5f83f92695765caa047a9b4cbae2cbf37dbd613a793fd4c"
 
 [[package]]
 name = "jobserver"
-version = "0.1.27"
+version = "0.1.28"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8c37f63953c4c63420ed5fd3d6d398c719489b9f872b9fa683262f8edd363c7d"
+checksum = "ab46a6e9526ddef3ae7f787c06f0f2600639ba80ea3eade3d8e670a2230f51d6"
 dependencies = [
- "libc 0.2.150",
+ "libc 0.2.153",
 ]
 
 [[package]]
@@ -458,9 +535,9 @@ checksum = "e32a70cf75e5846d53a673923498228bbec6a8624708a9ea5645f075d6276122"
 
 [[package]]
 name = "libc"
-version = "0.2.150"
+version = "0.2.153"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "89d92a4743f9a61002fae18374ed11e7973f530cb3a3255fb354818118b2203c"
+checksum = "9c198f91728a82281a64e1f4f9eeb25d82cb32a5de251c6bd1b5154d63a8e7bd"
 
 [[package]]
 name = "libdbus-sys"
@@ -483,27 +560,33 @@ dependencies = [
 
 [[package]]
 name = "linux-raw-sys"
-version = "0.4.11"
+version = "0.4.13"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "969488b55f8ac402214f3f5fd243ebb7206cf82de60d3172994707a4bcc2b829"
+checksum = "01cda141df6706de531b6c46c3a33ecca755538219bd484262fa09410c13539c"
 
 [[package]]
 name = "linux-raw-sys"
-version = "0.6.1"
+version = "0.6.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "da4a7ec558fa3b65e4c69b6af8df01fb9ad51ac69262335e1505276bc091935d"
+checksum = "f0b5399f6804fbab912acbd8878ed3532d506b7c951b8f9f164ef90fef39e3f4"
 
 [[package]]
 name = "log"
-version = "0.4.20"
+version = "0.4.21"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b5e6163cb8c49088c2c36f57875e58ccd8c87c7427f7fbd50ea6710b2f3f2e8f"
+checksum = "90ed8c1e510134f979dbc4f070f87d4313098b704861a105fe34231c70a3901c"
+
+[[package]]
+name = "memchr"
+version = "2.7.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "523dc4f511e55ab87b694dc30d0f820d60906ef06413f93d4d7a1385599cc149"
 
 [[package]]
 name = "miniz_oxide"
-version = "0.7.1"
+version = "0.7.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e7810e0be55b428ada41041c41f32c9f1a42817901b4ccf45fa3d4b6561e74c7"
+checksum = "9d811f3e15f28568be3407c8e7fdb6514c1cda3cb30683f15b6a1a1dc4ea14a7"
 dependencies = [
  "adler",
 ]
@@ -514,25 +597,26 @@ version = "0.6.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "359f76430b20a79f9e20e115b3428614e654f04fab314482fc0fda0ebd3c6044"
 dependencies = [
- "windows-sys",
+ "windows-sys 0.48.0",
 ]
 
 [[package]]
 name = "nix"
-version = "0.27.1"
+version = "0.28.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2eb04e9c688eff1c89d72b407f168cf79bb9e867a9d3323ed6c01519eb9cc053"
+checksum = "ab2156c4fce2f8df6c499cc1c763e4394b7482525bf2a9701c9d79d215f519e4"
 dependencies = [
- "bitflags 2.4.1",
+ "bitflags 2.4.2",
  "cfg-if",
- "libc 0.2.150",
+ "cfg_aliases",
+ "libc 0.2.153",
 ]
 
 [[package]]
 name = "once_cell"
-version = "1.18.0"
+version = "1.19.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "dd8b5dd2ae5ed71462c540258bedcb51965123ad7e7ccf4b9a8cafaa4a63576d"
+checksum = "3fdb12b2476b595f9358c5161aa467c2438859caa136dec86c26fdd2efe17b92"
 
 [[package]]
 name = "ordered-multimap"
@@ -546,9 +630,9 @@ dependencies = [
 
 [[package]]
 name = "percent-encoding"
-version = "2.3.0"
+version = "2.3.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9b2a4787296e9989611394c33f193f676704af1686e70b8f8033ab5ba9a35a94"
+checksum = "e3148f5046208a5d56bcfc03053e3ca6334e51da8dfb19b6cdc8b306fae3283e"
 
 [[package]]
 name = "pin-project-lite"
@@ -558,110 +642,129 @@ checksum = "8afb450f006bf6385ca15ef45d71d2288452bc3683ce2e2cacc0d18e4be60b58"
 
 [[package]]
 name = "pkg-config"
-version = "0.3.27"
+version = "0.3.30"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "26072860ba924cbfa98ea39c8c19b4dd6a4a25423dbdf219c1eca91aa0cf6964"
+checksum = "d231b230927b5e4ad203db57bbcbee2802f6bce620b1e4a9024a07d94e2907ec"
 
 [[package]]
 name = "proc-macro2"
-version = "1.0.69"
+version = "1.0.78"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "134c189feb4956b20f6f547d2cf727d4c0fe06722b20a0eec87ed445a97f92da"
+checksum = "e2422ad645d89c99f8f3e6b88a9fdeca7fabeac836b1002371c4367c8f984aae"
 dependencies = [
  "unicode-ident",
 ]
 
 [[package]]
 name = "quote"
-version = "1.0.33"
+version = "1.0.35"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5267fca4496028628a95160fc423a33e8b2e6af8a5302579e322e4b520293cae"
+checksum = "291ec9ab5efd934aaf503a6466c5d5251535d108ee747472c3977cc5acc868ef"
 dependencies = [
  "proc-macro2",
 ]
 
 [[package]]
 name = "redox_syscall"
-version = "0.3.5"
+version = "0.4.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "567664f262709473930a4bf9e51bf2ebf3348f2e748ccc50dea20646858f8f29"
+checksum = "4722d768eff46b75989dd134e5c353f0d6296e5aaa3132e776cbdb56be7731aa"
 dependencies = [
  "bitflags 1.3.2",
 ]
 
 [[package]]
-name = "redox_syscall"
-version = "0.4.1"
+name = "regex-automata"
+version = "0.4.6"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4722d768eff46b75989dd134e5c353f0d6296e5aaa3132e776cbdb56be7731aa"
+checksum = "86b83b8b9847f9bf95ef68afb0b8e6cdb80f498442f5179a29fad448fcc1eaea"
 dependencies = [
- "bitflags 1.3.2",
+ "aho-corasick",
+ "memchr",
+ "regex-syntax",
 ]
 
 [[package]]
+name = "regex-syntax"
+version = "0.8.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "c08c74e62047bb2de4ff487b251e4a92e24f48745648451635cec7d591162d9f"
+
+[[package]]
 name = "ring"
-version = "0.17.5"
+version = "0.17.8"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "fb0205304757e5d899b9c2e448b867ffd03ae7f988002e47cd24954391394d0b"
+checksum = "c17fa4cb658e3583423e915b9f3acc01cceaee1860e33d59ebae66adc3a2dc0d"
 dependencies = [
  "cc",
+ "cfg-if",
  "getrandom",
- "libc 0.2.150",
+ "libc 0.2.153",
  "spin",
  "untrusted",
- "windows-sys",
+ "windows-sys 0.52.0",
 ]
 
 [[package]]
 name = "rust-ini"
-version = "0.20.0"
+version = "0.21.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3e0698206bcb8882bf2a9ecb4c1e7785db57ff052297085a6efd4fe42302068a"
+checksum = "0d625ed57d8f49af6cfa514c42e1a71fadcff60eb0b1c517ff82fe41aa025b41"
 dependencies = [
  "cfg-if",
  "ordered-multimap",
+ "trim-in-place",
 ]
 
 [[package]]
 name = "rustix"
-version = "0.38.25"
+version = "0.38.31"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "dc99bc2d4f1fed22595588a013687477aedf3cdcfb26558c559edb67b4d9b22e"
+checksum = "6ea3e1a662af26cd7a3ba09c0297a31af215563ecf42817c98df621387f4e949"
 dependencies = [
- "bitflags 2.4.1",
+ "bitflags 2.4.2",
  "errno",
- "libc 0.2.150",
- "linux-raw-sys 0.4.11",
- "windows-sys",
+ "libc 0.2.153",
+ "linux-raw-sys 0.4.13",
+ "windows-sys 0.52.0",
 ]
 
 [[package]]
 name = "rustls"
-version = "0.21.8"
+version = "0.22.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "446e14c5cda4f3f30fe71863c34ec70f5ac79d6087097ad0bb433e1be5edf04c"
+checksum = "e87c9956bd9807afa1f77e0f7594af32566e830e088a5576d27c5b6f30f49d41"
 dependencies = [
  "log",
  "ring",
+ "rustls-pki-types",
  "rustls-webpki",
- "sct",
+ "subtle",
+ "zeroize",
 ]
 
 [[package]]
+name = "rustls-pki-types"
+version = "1.3.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "5ede67b28608b4c60685c7d54122d4400d90f62b40caee7700e700380a390fa8"
+
+[[package]]
 name = "rustls-webpki"
-version = "0.101.7"
+version = "0.102.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8b6275d1ee7a1cd780b64aca7726599a1dbc893b1e64144529e55c3c2f745765"
+checksum = "faaa0a62740bedb9b2ef5afa303da42764c012f743917351dc9a237ea1663610"
 dependencies = [
  "ring",
+ "rustls-pki-types",
  "untrusted",
 ]
 
 [[package]]
 name = "ryu"
-version = "1.0.15"
+version = "1.0.17"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1ad4cc8da4ef723ed60bced201181d83791ad433213d8c24efffda1eec85d741"
+checksum = "e86697c916019a8588c99b5fac3cead74ec0b4b819707a682fd4d23fa0ce1ba1"
 
 [[package]]
 name = "same-file"
@@ -673,29 +776,19 @@ dependencies = [
 ]
 
 [[package]]
-name = "sct"
-version = "0.7.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "da046153aa2352493d6cb7da4b6e5c0c057d8a1d0a9aa8560baffdd945acd414"
-dependencies = [
- "ring",
- "untrusted",
-]
-
-[[package]]
 name = "serde"
-version = "1.0.192"
+version = "1.0.197"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "bca2a08484b285dcb282d0f67b26cadc0df8b19f8c12502c13d966bf9482f001"
+checksum = "3fb1c873e1b9b056a4dc4c0c198b24c3ffa059243875552b2bd0933b1aee4ce2"
 dependencies = [
  "serde_derive",
 ]
 
 [[package]]
 name = "serde_derive"
-version = "1.0.192"
+version = "1.0.197"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d6c7207fbec9faa48073f3e3074cbe553af6ea512d7c21ba46e434e70ea9fbc1"
+checksum = "7eb0b34b42edc17f6b7cac84a52a1c5f0e1bb2227e997ca9011ea3dd34e8610b"
 dependencies = [
  "proc-macro2",
  "quote",
@@ -704,9 +797,9 @@ dependencies = [
 
 [[package]]
 name = "serde_json"
-version = "1.0.108"
+version = "1.0.114"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3d1c7e3eac408d115102c4c24ad393e0821bb3a5df4d506a80f85f7a742a526b"
+checksum = "c5f09b1bd632ef549eaa9f60a1f8de742bdbc698e6cee2095fc84dde5f549ae0"
 dependencies = [
  "itoa",
  "ryu",
@@ -737,10 +830,16 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "6980e8d7511241f8acf4aebddbb1ff938df5eebe98691418c4468d0b72a96a67"
 
 [[package]]
+name = "subtle"
+version = "2.5.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "81cdd64d312baedb58e21336b31bc043b77e01cc99033ce76ef539f78e965ebc"
+
+[[package]]
 name = "syn"
-version = "2.0.39"
+version = "2.0.52"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "23e78b90f2fcf45d3e842032ce32e3f2d1545ba6636271dcbf24fa306d87be7a"
+checksum = "b699d15b36d1f02c3e7c69f8ffef53de37aefae075d8488d4ba1a7788d574a07"
 dependencies = [
  "proc-macro2",
  "quote",
@@ -754,21 +853,20 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "b16afcea1f22891c49a00c751c7b63b2233284064f11a200fc624137c51e2ddb"
 dependencies = [
  "filetime",
- "libc 0.2.150",
+ "libc 0.2.153",
  "xattr",
 ]
 
 [[package]]
 name = "tempfile"
-version = "3.8.1"
+version = "3.10.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7ef1adac450ad7f4b3c28589471ade84f25f731a7a0fe30d71dfa9f60fd808e5"
+checksum = "85b77fafb263dd9d05cbeac119526425676db3784113aa9295c88498cbf8bff1"
 dependencies = [
  "cfg-if",
  "fastrand",
- "redox_syscall 0.4.1",
  "rustix",
- "windows-sys",
+ "windows-sys 0.52.0",
 ]
 
 [[package]]
@@ -827,6 +925,12 @@ dependencies = [
 ]
 
 [[package]]
+name = "trim-in-place"
+version = "0.1.7"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "343e926fc669bc8cde4fa3129ab681c63671bae288b1f1081ceee6d9d37904fc"
+
+[[package]]
 name = "typenum"
 version = "1.17.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -834,9 +938,9 @@ checksum = "42ff0bf0c66b8238c6f3b578df37d0b7848e55df8577b3f74f92a69acceeb825"
 
 [[package]]
 name = "unicode-bidi"
-version = "0.3.13"
+version = "0.3.15"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "92888ba5573ff080736b3648696b70cafad7d250551175acbaa4e0385b3e1460"
+checksum = "08f95100a766bf4f8f28f90d77e0a5461bbdb219042e7679bebe79004fed8d75"
 
 [[package]]
 name = "unicode-ident"
@@ -846,9 +950,9 @@ checksum = "3354b9ac3fae1ff6755cb6db53683adb661634f67557942dea4facebec0fee4b"
 
 [[package]]
 name = "unicode-normalization"
-version = "0.1.22"
+version = "0.1.23"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5c5713f0fc4b5db668a2ac63cdb7bb4469d8c9fed047b1d0292cc7b0ce2ba921"
+checksum = "a56d1686db2308d901306f92a263857ef59ea39678a5458e7cb17f01415101f5"
 dependencies = [
  "tinyvec",
 ]
@@ -861,15 +965,16 @@ checksum = "8ecb6da28b8a351d773b68d5825ac39017e680750f980f3a1a85cd8dd28a47c1"
 
 [[package]]
 name = "ureq"
-version = "2.8.0"
+version = "2.9.6"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f5ccd538d4a604753ebc2f17cd9946e89b77bf87f6a8e2309667c6f2e87855e3"
+checksum = "11f214ce18d8b2cbe84ed3aa6486ed3f5b285cf8d8fbdbce9f3f767a724adc35"
 dependencies = [
  "base64",
  "flate2",
  "log",
  "once_cell",
  "rustls",
+ "rustls-pki-types",
  "rustls-webpki",
  "url",
  "webpki-roots",
@@ -877,9 +982,9 @@ dependencies = [
 
 [[package]]
 name = "url"
-version = "2.4.1"
+version = "2.5.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "143b538f18257fac9cad154828a57c6bf5157e1aa604d4816b5995bf6de87ae5"
+checksum = "31e6302e3bb753d46e83516cae55ae196fc0c309407cf11ab35cc51a4c2a4633"
 dependencies = [
  "form_urlencoded",
  "idna",
@@ -894,9 +999,9 @@ checksum = "49874b5167b65d7193b8aba1567f5c7d93d001cafc34600cee003eda787e483f"
 
 [[package]]
 name = "walkdir"
-version = "2.4.0"
+version = "2.5.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d71d857dc86794ca4c280d616f7da00d2dbfd8cd788846559a6813e6aa4b54ee"
+checksum = "29790946404f91d9c5d06f9874efddea1dc06c5efe94541a7d6863108e3a5e4b"
 dependencies = [
  "same-file",
  "winapi-util",
@@ -910,9 +1015,12 @@ checksum = "9c8d87e72b64a3b4db28d11ce29237c246188f4f51057d65a7eab63b7987e423"
 
 [[package]]
 name = "webpki-roots"
-version = "0.25.2"
+version = "0.26.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "14247bb57be4f377dfb94c72830b8ce8fc6beac03cf4bf7b9732eadd414123fc"
+checksum = "b3de34ae270483955a94f4b21bdaaeb83d508bb84a01435f393818edb0012009"
+dependencies = [
+ "rustls-pki-types",
+]
 
 [[package]]
 name = "winapi"
@@ -951,7 +1059,16 @@ version = "0.48.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "677d2418bec65e3338edb076e806bc1ec15693c5d0104683f2efe857f61056a9"
 dependencies = [
- "windows-targets",
+ "windows-targets 0.48.5",
+]
+
+[[package]]
+name = "windows-sys"
+version = "0.52.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "282be5f36a8ce781fad8c8ae18fa3f9beff57ec1b52cb3de0789201425d9a33d"
+dependencies = [
+ "windows-targets 0.52.4",
 ]
 
 [[package]]
@@ -960,13 +1077,28 @@ version = "0.48.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "9a2fa6e2155d7247be68c096456083145c183cbbbc2764150dda45a87197940c"
 dependencies = [
- "windows_aarch64_gnullvm",
- "windows_aarch64_msvc",
- "windows_i686_gnu",
- "windows_i686_msvc",
- "windows_x86_64_gnu",
- "windows_x86_64_gnullvm",
- "windows_x86_64_msvc",
+ "windows_aarch64_gnullvm 0.48.5",
+ "windows_aarch64_msvc 0.48.5",
+ "windows_i686_gnu 0.48.5",
+ "windows_i686_msvc 0.48.5",
+ "windows_x86_64_gnu 0.48.5",
+ "windows_x86_64_gnullvm 0.48.5",
+ "windows_x86_64_msvc 0.48.5",
+]
+
+[[package]]
+name = "windows-targets"
+version = "0.52.4"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "7dd37b7e5ab9018759f893a1952c9420d060016fc19a472b4bb20d1bdd694d1b"
+dependencies = [
+ "windows_aarch64_gnullvm 0.52.4",
+ "windows_aarch64_msvc 0.52.4",
+ "windows_i686_gnu 0.52.4",
+ "windows_i686_msvc 0.52.4",
+ "windows_x86_64_gnu 0.52.4",
+ "windows_x86_64_gnullvm 0.52.4",
+ "windows_x86_64_msvc 0.52.4",
 ]
 
 [[package]]
@@ -976,46 +1108,96 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "2b38e32f0abccf9987a4e3079dfb67dcd799fb61361e53e2882c3cbaf0d905d8"
 
 [[package]]
+name = "windows_aarch64_gnullvm"
+version = "0.52.4"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "bcf46cf4c365c6f2d1cc93ce535f2c8b244591df96ceee75d8e83deb70a9cac9"
+
+[[package]]
 name = "windows_aarch64_msvc"
 version = "0.48.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "dc35310971f3b2dbbf3f0690a219f40e2d9afcf64f9ab7cc1be722937c26b4bc"
 
 [[package]]
+name = "windows_aarch64_msvc"
+version = "0.52.4"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "da9f259dd3bcf6990b55bffd094c4f7235817ba4ceebde8e6d11cd0c5633b675"
+
+[[package]]
 name = "windows_i686_gnu"
 version = "0.48.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "a75915e7def60c94dcef72200b9a8e58e5091744960da64ec734a6c6e9b3743e"
 
 [[package]]
+name = "windows_i686_gnu"
+version = "0.52.4"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "b474d8268f99e0995f25b9f095bc7434632601028cf86590aea5c8a5cb7801d3"
+
+[[package]]
 name = "windows_i686_msvc"
 version = "0.48.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "8f55c233f70c4b27f66c523580f78f1004e8b5a8b659e05a4eb49d4166cca406"
 
 [[package]]
+name = "windows_i686_msvc"
+version = "0.52.4"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "1515e9a29e5bed743cb4415a9ecf5dfca648ce85ee42e15873c3cd8610ff8e02"
+
+[[package]]
 name = "windows_x86_64_gnu"
 version = "0.48.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "53d40abd2583d23e4718fddf1ebec84dbff8381c07cae67ff7768bbf19c6718e"
 
 [[package]]
+name = "windows_x86_64_gnu"
+version = "0.52.4"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "5eee091590e89cc02ad514ffe3ead9eb6b660aedca2183455434b93546371a03"
+
+[[package]]
 name = "windows_x86_64_gnullvm"
 version = "0.48.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "0b7b52767868a23d5bab768e390dc5f5c55825b6d30b86c844ff2dc7414044cc"
 
 [[package]]
+name = "windows_x86_64_gnullvm"
+version = "0.52.4"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "77ca79f2451b49fa9e2af39f0747fe999fcda4f5e241b2898624dca97a1f2177"
+
+[[package]]
 name = "windows_x86_64_msvc"
 version = "0.48.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "ed94fce61571a4006852b7389a063ab983c02eb1bb37b47f8272ce92d06d9538"
 
 [[package]]
+name = "windows_x86_64_msvc"
+version = "0.52.4"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "32b752e52a2da0ddfbdbcc6fceadfeede4c939ed16d13e648833a61dfb611ed8"
+
+[[package]]
 name = "xattr"
-version = "1.0.1"
+version = "1.3.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f4686009f71ff3e5c4dbcf1a282d0a44db3f021ba69350cd42086b3e5f1c6985"
+checksum = "8da84f1a25939b27f6820d92aed108f83ff920fdf11a7b19366c27c4cda81d4f"
 dependencies = [
- "libc 0.2.150",
+ "libc 0.2.153",
+ "linux-raw-sys 0.4.13",
+ "rustix",
 ]
+
+[[package]]
+name = "zeroize"
+version = "1.7.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "525b4ec142c6b68a2d10f01f7bbf6755599ca3f81ea53b8431b7dd348f5fdb2d"
diff --git a/pkgs/applications/misc/mobilecoin-wallet/default.nix b/pkgs/applications/misc/mobilecoin-wallet/default.nix
index 1bde970c1e15..2b891abc6473 100644
--- a/pkgs/applications/misc/mobilecoin-wallet/default.nix
+++ b/pkgs/applications/misc/mobilecoin-wallet/default.nix
@@ -13,7 +13,7 @@ let
 in appimageTools.wrapType2 {
   inherit name src;
 
-  extraPkgs = pkgs: (appimageTools.defaultFhsEnvArgs.multiPkgs pkgs) ++ [ pkgs.libsecret ];
+  extraPkgs = pkgs: [ pkgs.libsecret ];
 
   extraInstallCommands = ''
     mv $out/bin/${name} $out/bin/${pname}
diff --git a/pkgs/applications/misc/mysql-workbench/default.nix b/pkgs/applications/misc/mysql-workbench/default.nix
index 92574896bbd9..caecc46d5432 100644
--- a/pkgs/applications/misc/mysql-workbench/default.nix
+++ b/pkgs/applications/misc/mysql-workbench/default.nix
@@ -35,7 +35,7 @@
 , cairo
 , libxkbcommon
 , libepoxy
-, wrapGAppsHook
+, wrapGAppsHook3
 , at-spi2-core
 , dbus
 , bash
@@ -98,7 +98,7 @@ stdenv.mkDerivation (finalAttrs: {
     pkg-config
     jre
     swig
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
diff --git a/pkgs/applications/misc/neo4j-desktop/default.nix b/pkgs/applications/misc/neo4j-desktop/default.nix
index f01ef56e5d02..6c1ac1ede965 100644
--- a/pkgs/applications/misc/neo4j-desktop/default.nix
+++ b/pkgs/applications/misc/neo4j-desktop/default.nix
@@ -12,7 +12,7 @@ let
 in appimageTools.wrapType2 {
   inherit pname version src;
 
-  extraPkgs = pkgs: with pkgs; [ libsecret ];
+  extraPkgs = pkgs: [ pkgs.libsecret ];
 
   extraInstallCommands = ''
     install -m 444 -D ${appimageContents}/${pname}.desktop -t $out/share/applications
diff --git a/pkgs/applications/misc/notable/default.nix b/pkgs/applications/misc/notable/default.nix
index 45416035f7b3..c8958950db9d 100644
--- a/pkgs/applications/misc/notable/default.nix
+++ b/pkgs/applications/misc/notable/default.nix
@@ -13,8 +13,6 @@ let
   appimageContents = appimageTools.extract {
     inherit pname version src;
   };
-
-  nativeBuildInputs = [ makeWrapper ];
 in
 appimageTools.wrapType2 rec {
 
@@ -24,8 +22,8 @@ appimageTools.wrapType2 rec {
     export LC_ALL=C.UTF-8
   '';
 
-  multiArch = false; # no 32bit needed
-  extraPkgs = p: (appimageTools.defaultFhsEnvArgs.multiPkgs p) ++ [ p.at-spi2-atk p.at-spi2-core ];
+  extraPkgs = pkgs: [ pkgs.at-spi2-atk pkgs.at-spi2-core ];
+
   extraInstallCommands = ''
     install -m 444 -D ${appimageContents}/notable.desktop $out/share/applications/notable.desktop
     install -m 444 -D ${appimageContents}/usr/share/icons/hicolor/1024x1024/apps/notable.png \
diff --git a/pkgs/applications/misc/notesnook/default.nix b/pkgs/applications/misc/notesnook/default.nix
index 48f3e6e9cce8..7742a54c6c0c 100644
--- a/pkgs/applications/misc/notesnook/default.nix
+++ b/pkgs/applications/misc/notesnook/default.nix
@@ -48,8 +48,6 @@ let
       export LC_ALL=C.UTF-8
     '';
 
-    multiPkgs = null; # no 32bit needed
-    extraPkgs = appimageTools.defaultFhsEnvArgs.multiPkgs;
     extraInstallCommands = ''
       install -Dm444 ${appimageContents}/notesnook.desktop -t $out/share/applications
       install -Dm444 ${appimageContents}/notesnook.png -t $out/share/pixmaps
diff --git a/pkgs/applications/misc/notifymuch/default.nix b/pkgs/applications/misc/notifymuch/default.nix
index 6ba819133ecc..72a0485b0a7e 100644
--- a/pkgs/applications/misc/notifymuch/default.nix
+++ b/pkgs/applications/misc/notifymuch/default.nix
@@ -2,7 +2,7 @@
 , fetchFromGitHub
 , gobject-introspection
 , libnotify
-, wrapGAppsHook
+, wrapGAppsHook3
 , gtk3
 , python3
 }:
@@ -30,7 +30,7 @@ python3.pkgs.buildPythonApplication rec {
 
   nativeBuildInputs = [
     gobject-introspection
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   dontWrapGApps = true;
diff --git a/pkgs/applications/misc/ns-usbloader/default.nix b/pkgs/applications/misc/ns-usbloader/default.nix
index 2a08b24435a2..8ab52711a6ce 100644
--- a/pkgs/applications/misc/ns-usbloader/default.nix
+++ b/pkgs/applications/misc/ns-usbloader/default.nix
@@ -4,7 +4,7 @@
 , copyDesktopItems
 , makeDesktopItem
 , makeWrapper
-, wrapGAppsHook
+, wrapGAppsHook3
 , gvfs
 , maven
 , jre
@@ -42,7 +42,7 @@ maven.buildMavenPackage rec {
   nativeBuildInputs = [
     copyDesktopItems
     makeWrapper
-    wrapGAppsHook
+    wrapGAppsHook3
     gvfs
   ];
 
diff --git a/pkgs/applications/misc/numberstation/default.nix b/pkgs/applications/misc/numberstation/default.nix
index 7a1393637dff..651e4420280d 100644
--- a/pkgs/applications/misc/numberstation/default.nix
+++ b/pkgs/applications/misc/numberstation/default.nix
@@ -10,7 +10,7 @@
 , meson
 , ninja
 , pkg-config
-, wrapGAppsHook
+, wrapGAppsHook3
 }:
 
 python3.pkgs.buildPythonApplication rec {
@@ -38,7 +38,7 @@ python3.pkgs.buildPythonApplication rec {
     meson
     ninja
     pkg-config
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
diff --git a/pkgs/applications/misc/nwg-bar/default.nix b/pkgs/applications/misc/nwg-bar/default.nix
index 356b1edb15ae..d80986db6e03 100644
--- a/pkgs/applications/misc/nwg-bar/default.nix
+++ b/pkgs/applications/misc/nwg-bar/default.nix
@@ -5,7 +5,7 @@
 , pkg-config
 , gtk3
 , gtk-layer-shell
-, wrapGAppsHook }:
+, wrapGAppsHook3 }:
 
 buildGoModule rec {
   pname = "nwg-bar";
@@ -26,7 +26,7 @@ buildGoModule rec {
 
   vendorHash = "sha256-/kqhZcIuoN/XA0i1ua3lzVGn4ghkekFYScL1o3kgBX4=";
 
-  nativeBuildInputs = [ pkg-config wrapGAppsHook ];
+  nativeBuildInputs = [ pkg-config wrapGAppsHook3 ];
 
   buildInputs = [ gtk3 gtk-layer-shell librsvg ];
 
diff --git a/pkgs/applications/misc/nwg-displays/default.nix b/pkgs/applications/misc/nwg-displays/default.nix
index 22d4e20d5eef..bedc06bd333c 100644
--- a/pkgs/applications/misc/nwg-displays/default.nix
+++ b/pkgs/applications/misc/nwg-displays/default.nix
@@ -7,25 +7,25 @@
 , gtk3
 , pango
 , python310Packages
-, wrapGAppsHook
+, wrapGAppsHook3
 , hyprlandSupport ? true
 , wlr-randr
 }:
 
 python310Packages.buildPythonApplication rec {
   pname = "nwg-displays";
-  version = "0.3.16";
+  version = "0.3.18";
 
   src = fetchFromGitHub {
     owner = "nwg-piotr";
     repo = "nwg-displays";
     rev = "refs/tags/v${version}";
-    hash = "sha256-rnaBYDGEsc8oGw4yZ60NQFbNf+L0tmHYDYf+UDoDmSI=";
+    hash = "sha256-wf72x3lXNAJ6Y4zJmYgwJrL1gWJBvTYUcXasT5zlXCM=";
   };
 
   nativeBuildInputs = [
     gobject-introspection
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
diff --git a/pkgs/applications/misc/nwg-dock-hyprland/default.nix b/pkgs/applications/misc/nwg-dock-hyprland/default.nix
index 607dd7c22fac..ff0a57b07555 100644
--- a/pkgs/applications/misc/nwg-dock-hyprland/default.nix
+++ b/pkgs/applications/misc/nwg-dock-hyprland/default.nix
@@ -2,26 +2,26 @@
 , buildGoModule
 , fetchFromGitHub
 , pkg-config
-, wrapGAppsHook
+, wrapGAppsHook3
 , gtk-layer-shell
 }:
 
 buildGoModule rec {
   pname = "nwg-dock-hyprland";
-  version = "0.1.7";
+  version = "0.1.8";
 
   src = fetchFromGitHub {
     owner = "nwg-piotr";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-Lekvk3tQfeOR+Ltbc5b7TMiUZpktZ2nvCtUncrFb+Kc=";
+    sha256 = "sha256-cdNxaOnm98RcPG2o0GaBETpd+Zo2nlgrFv+2PiHOwUI=";
   };
 
-  vendorHash = "sha256-5fN/6HASfTMb80YYAIoWRqnRGMvvX4d8C2UvOc0jQU0=";
+  vendorHash = "sha256-JEzc950c4EGOYMLgpL8PXENkGlWSX8Z4A4jCx1B99X8=";
 
   ldflags = [ "-s" "-w" ];
 
-  nativeBuildInputs = [ pkg-config wrapGAppsHook ];
+  nativeBuildInputs = [ pkg-config wrapGAppsHook3 ];
   buildInputs = [ gtk-layer-shell ];
 
   meta = with lib; {
diff --git a/pkgs/applications/misc/nwg-menu/default.nix b/pkgs/applications/misc/nwg-menu/default.nix
index 6733a5dac3f4..27be9aa08fa9 100644
--- a/pkgs/applications/misc/nwg-menu/default.nix
+++ b/pkgs/applications/misc/nwg-menu/default.nix
@@ -1,5 +1,5 @@
 { lib, fetchFromGitHub
-, buildGoModule, pkg-config, wrapGAppsHook, gobject-introspection
+, buildGoModule, pkg-config, wrapGAppsHook3, gobject-introspection
 , gtk-layer-shell, gtk3, pango, gdk-pixbuf, atk
 }:
 
@@ -19,7 +19,7 @@ buildGoModule rec {
   doCheck = false;
 
   buildInputs = [ atk gtk3 gdk-pixbuf gtk-layer-shell pango ];
-  nativeBuildInputs = [ pkg-config wrapGAppsHook gobject-introspection ];
+  nativeBuildInputs = [ pkg-config wrapGAppsHook3 gobject-introspection ];
 
   prePatch = ''
     for file in main.go tools.go; do
diff --git a/pkgs/applications/misc/nwg-panel/default.nix b/pkgs/applications/misc/nwg-panel/default.nix
index 840b048d2d4c..3ee48328717d 100644
--- a/pkgs/applications/misc/nwg-panel/default.nix
+++ b/pkgs/applications/misc/nwg-panel/default.nix
@@ -1,5 +1,5 @@
 { lib, fetchFromGitHub
-, python3Packages, wrapGAppsHook, gobject-introspection
+, python3Packages, wrapGAppsHook3, gobject-introspection
 , gtk-layer-shell, pango, gdk-pixbuf, atk
 # Extra packages called by various internal nwg-panel modules
 , hyprland         # hyprctl
@@ -16,24 +16,24 @@
 
 python3Packages.buildPythonApplication rec {
   pname = "nwg-panel";
-  version = "0.9.27";
+  version = "0.9.31";
 
   src = fetchFromGitHub {
     owner = "nwg-piotr";
     repo = "nwg-panel";
     rev = "refs/tags/v${version}";
-    hash = "sha256-GCaqFqoZ7lfyE3VD3Dgz8jVt9TtUq3XVzVeI6g3SO5E=";
+    hash = "sha256-g3O+jWLwMBNfk0vAi/wq/YnGTAIscDJH2QV7bequyNU=";
   };
 
   # No tests
   doCheck = false;
 
-  # Because of wrapGAppsHook
+  # Because of wrapGAppsHook3
   strictDeps = false;
   dontWrapGApps = true;
 
   buildInputs = [ atk gdk-pixbuf gtk-layer-shell pango playerctl ];
-  nativeBuildInputs = [ wrapGAppsHook gobject-introspection ];
+  nativeBuildInputs = [ wrapGAppsHook3 gobject-introspection ];
   propagatedBuildInputs = (with python3Packages;
     [ i3ipc netifaces psutil pybluez pygobject3 requests dasbus setuptools ])
     # Run-time GTK dependency required by the Tray module
diff --git a/pkgs/applications/misc/nwg-wrapper/default.nix b/pkgs/applications/misc/nwg-wrapper/default.nix
index 5b2862831896..f5b524c89019 100644
--- a/pkgs/applications/misc/nwg-wrapper/default.nix
+++ b/pkgs/applications/misc/nwg-wrapper/default.nix
@@ -1,4 +1,4 @@
-{ lib, python3Packages, fetchFromGitHub, gtk-layer-shell, gtk3, gobject-introspection, wrapGAppsHook, wlr-randr }:
+{ lib, python3Packages, fetchFromGitHub, gtk-layer-shell, gtk3, gobject-introspection, wrapGAppsHook3, wlr-randr }:
 
 python3Packages.buildPythonPackage rec {
   pname = "nwg-wrapper";
@@ -11,7 +11,7 @@ python3Packages.buildPythonPackage rec {
     sha256 = "sha256-GKDAdjO67aedCEFHKDukQ+oPMomTPwFE/CvJu112fus=";
   };
 
-  nativeBuildInputs = [ gobject-introspection wrapGAppsHook ];
+  nativeBuildInputs = [ gobject-introspection wrapGAppsHook3 ];
 
   buildInputs = [ gtk3 gtk-layer-shell ];
 
diff --git a/pkgs/applications/misc/octoprint/default.nix b/pkgs/applications/misc/octoprint/default.nix
index c537afbb98ed..98f210dbe5d3 100644
--- a/pkgs/applications/misc/octoprint/default.nix
+++ b/pkgs/applications/misc/octoprint/default.nix
@@ -28,6 +28,7 @@ let
                 inherit version;
                 hash = "sha256-LhzMlBfU2jWLnebxdOOsCUOR6h1PvvLWZ4ZdgZ39Cv4=";
               };
+              doCheck = false;
             });
             flask = super.flask.overridePythonAttrs (oldAttrs: rec {
               version = "2.2.5";
@@ -115,13 +116,13 @@ let
           self: super: {
             octoprint = self.buildPythonPackage rec {
               pname = "OctoPrint";
-              version = "1.10.0";
+              version = "1.10.1";
 
               src = fetchFromGitHub {
                 owner = "OctoPrint";
                 repo = "OctoPrint";
                 rev = version;
-                hash = "sha256-gM989Wh4HYU5/afCcZ6iRJWb4bkFZfnnxBmyklSZep4=";
+                hash = "sha256-kJTYIsbNr6cLzti8yg+IlXjbKwXuwumE3Wydy+oTeK4=";
               };
 
               propagatedBuildInputs = with self; [
diff --git a/pkgs/applications/misc/onagre/default.nix b/pkgs/applications/misc/onagre/default.nix
deleted file mode 100644
index b6375e6b5955..000000000000
--- a/pkgs/applications/misc/onagre/default.nix
+++ /dev/null
@@ -1,41 +0,0 @@
-{ lib
-, fetchFromGitHub
-, rustPlatform
-, cmake
-, pkgconf
-, freetype
-, expat
-}:
-
-rustPlatform.buildRustPackage rec {
-  pname = "onagre";
-  version = "1.0.0-alpha.0";
-
-  src = fetchFromGitHub {
-    owner = "oknozor";
-    repo = pname;
-    rev = version;
-    hash = "sha256-hP+slfCWgsTgR2ZUjAmqx9f7+DBu3MpSLvaiZhqNK1Q=";
-  };
-
-  cargoLock = {
-    lockFile = ./Cargo.lock;
-    outputHashes = {
-      "pop-launcher-1.2.1" = "sha256-LeKaJIvooD2aUlY113P0mzxOcj63sGkrA0SIccNqCLY=";
-    };
-  };
-
-  cargoSha256 = "sha256-IOhAGrAiT2mnScNP7k7XK9CETUr6BjGdQVdEUvTYQT4=";
-
-  nativeBuildInputs = [ cmake pkgconf ];
-  buildInputs = [ freetype expat ];
-
-  meta = with lib; {
-    description = "A general purpose application launcher for X and wayland inspired by rofi/wofi and alfred";
-    homepage = "https://github.com/oknozor/onagre";
-    license = licenses.mit;
-    maintainers = [ maintainers.jfvillablanca ];
-    platforms = platforms.linux;
-    mainProgram = "onagre";
-  };
-}
diff --git a/pkgs/applications/misc/onboard/default.nix b/pkgs/applications/misc/onboard/default.nix
index cdcdb2b1e514..6f210791ce9a 100644
--- a/pkgs/applications/misc/onboard/default.nix
+++ b/pkgs/applications/misc/onboard/default.nix
@@ -23,7 +23,7 @@
 , pkg-config
 , procps
 , python3
-, wrapGAppsHook
+, wrapGAppsHook3
 , xorg
 , yelp
 }:
@@ -60,7 +60,7 @@ python3.pkgs.buildPythonApplication rec {
     gobject-introspection
     intltool
     pkg-config
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
diff --git a/pkgs/applications/misc/openlp/default.nix b/pkgs/applications/misc/openlp/default.nix
index a075a9bec6f5..c77b494f08ca 100644
--- a/pkgs/applications/misc/openlp/default.nix
+++ b/pkgs/applications/misc/openlp/default.nix
@@ -1,6 +1,6 @@
 # This file contains all runtime glue: Bindings to optional runtime dependencies
 # for pdfSupport, presentationSupport, and media playback.
-{ lib, mkDerivation, wrapGAppsHook, python3Packages
+{ lib, mkDerivation, wrapGAppsHook3, python3Packages
 
 # qt deps
 , qtbase, qtmultimedia
@@ -40,7 +40,7 @@ in mkDerivation {
   pname = baseLib.pname + lib.optionalString (pdfSupport && presentationSupport && vlcSupport && gstreamerSupport) "-full";
   inherit (baseLib) version src;
 
-  nativeBuildInputs = [ python3Packages.wrapPython wrapGAppsHook ];
+  nativeBuildInputs = [ python3Packages.wrapPython wrapGAppsHook3 ];
   buildInputs = [ qtbase ] ++ optionals gstreamerSupport
     ([ qtmultimedia.bin gst_all_1.gstreamer ] ++ gstPlugins gst_all_1);
   propagatedBuildInputs = optional pdfSupport mupdf
diff --git a/pkgs/applications/misc/oranda/default.nix b/pkgs/applications/misc/oranda/default.nix
index 832f6f8048d6..db3103ea4249 100644
--- a/pkgs/applications/misc/oranda/default.nix
+++ b/pkgs/applications/misc/oranda/default.nix
@@ -10,16 +10,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "oranda";
-  version = "0.6.2";
+  version = "0.6.3";
 
   src = fetchFromGitHub {
     owner = "axodotdev";
     repo = "oranda";
     rev = "v${version}";
-    hash = "sha256-BOMAkmJ2i/zqp6v49xeIF+EfZob8yXohPh86ERwp5OU=";
+    hash = "sha256-PECM0HLomMzNWnERgvYSfSh+XQAjGLxybZAJcaAzEBo=";
   };
 
-  cargoHash = "sha256-SjXPfrO/YiOb1gOw75nAstKFipeIvLV6yl/sy+BZqE4=";
+  cargoHash = "sha256-qO48oR3RtyCbhdGn+VZPceZX/RMqS+5LacSASYRboMo=";
 
   nativeBuildInputs = [
     pkg-config
diff --git a/pkgs/applications/misc/orca/fix-paths.patch b/pkgs/applications/misc/orca/fix-paths.patch
deleted file mode 100644
index 45ae4b827ba5..000000000000
--- a/pkgs/applications/misc/orca/fix-paths.patch
+++ /dev/null
@@ -1,88 +0,0 @@
-diff --git a/src/orca/debug.py b/src/orca/debug.py
-index b7e11ea60..9ab996765 100644
---- a/src/orca/debug.py
-+++ b/src/orca/debug.py
-@@ -447,7 +447,7 @@ def traceit(frame, event, arg):
-     return traceit
- 
- def getOpenFDCount(pid):
--    procs = subprocess.check_output([ 'lsof', '-w', '-Ff', '-p', str(pid)])
-+    procs = subprocess.check_output([ '@lsof@', '-w', '-Ff', '-p', str(pid)])
-     procs = procs.decode('UTF-8').split('\n')
-     files = list(filter(lambda s: s and s[0] == 'f' and s[1:].isdigit(), procs))
- 
-@@ -465,7 +465,7 @@ def getCmdline(pid):
-     return cmdline
- 
- def pidOf(procName):
--    openFile = subprocess.Popen(f'pgrep {procName}',
-+    openFile = subprocess.Popen(f'@pgrep@ {procName}',
-                                 shell=True,
-                                 stdout=subprocess.PIPE).stdout
-     pids = openFile.read()
-diff --git a/src/orca/orca.py b/src/orca/orca.py
-index d4e89f918..bb3e6cc1d 100644
---- a/src/orca/orca.py
-+++ b/src/orca/orca.py
-@@ -312,7 +312,7 @@ def updateKeyMap(keyboardEvent):
- 
- def _setXmodmap(xkbmap):
-     """Set the keyboard map using xkbcomp."""
--    p = subprocess.Popen(['xkbcomp', '-w0', '-', os.environ['DISPLAY']],
-+    p = subprocess.Popen(['@xkbcomp@', '-w0', '-', os.environ['DISPLAY']],
-         stdin=subprocess.PIPE, stdout=None, stderr=None)
-     p.communicate(xkbmap)
- 
-@@ -389,7 +389,7 @@ def _storeXmodmap(keyList):
-     """
- 
-     global _originalXmodmap
--    _originalXmodmap = subprocess.check_output(['xkbcomp', os.environ['DISPLAY'], '-'])
-+    _originalXmodmap = subprocess.check_output(['@xkbcomp@', os.environ['DISPLAY'], '-'])
- 
- def _restoreXmodmap(keyList=[]):
-     """Restore the original xmodmap values for the keys in keyList.
-@@ -404,7 +404,7 @@ def _restoreXmodmap(keyList=[]):
- 
-     global _capsLockCleared
-     _capsLockCleared = False
--    p = subprocess.Popen(['xkbcomp', '-w0', '-', os.environ['DISPLAY']],
-+    p = subprocess.Popen(['@xkbcomp@', '-w0', '-', os.environ['DISPLAY']],
-         stdin=subprocess.PIPE, stdout=None, stderr=None)
-     p.communicate(_originalXmodmap)
- 
-diff --git a/src/orca/orca_bin.py.in b/src/orca/orca_bin.py.in
-index 9d64af948..ca9c9e083 100644
---- a/src/orca/orca_bin.py.in
-+++ b/src/orca/orca_bin.py.in
-@@ -65,7 +65,7 @@ class ListApps(argparse.Action):
-                 name = "[DEAD]"
- 
-             try:
--                cmdline = subprocess.getoutput('cat /proc/%s/cmdline' % pid)
-+                cmdline = subprocess.getoutput('@cat@ /proc/%s/cmdline' % pid)
-             except Exception:
-                 cmdline = '(exception encountered)'
-             else:
-@@ -198,7 +198,7 @@ def inGraphicalDesktop():
- def otherOrcas():
-     """Returns the pid of any other instances of Orca owned by this user."""
- 
--    openFile = subprocess.Popen('pgrep -u %s -x orca' % os.getuid(),
-+    openFile = subprocess.Popen('@pgrep@ -u %s -x orca' % os.getuid(),
-                                 shell=True,
-                                 stdout=subprocess.PIPE).stdout
-     pids = openFile.read()
-diff --git a/src/orca/script_utilities.py b/src/orca/script_utilities.py
-index ed8b155e4..0436cca42 100644
---- a/src/orca/script_utilities.py
-+++ b/src/orca/script_utilities.py
-@@ -144,7 +144,7 @@ class Utilities:
-             return ""
- 
-         try:
--            cmdline = subprocess.getoutput(f"cat /proc/{pid}/cmdline")
-+            cmdline = subprocess.getoutput(f"@cat@ /proc/{pid}/cmdline")
-         except Exception:
-             return ""
- 
diff --git a/pkgs/applications/misc/otpclient/default.nix b/pkgs/applications/misc/otpclient/default.nix
index e53cc20874ba..0ab84ea08372 100644
--- a/pkgs/applications/misc/otpclient/default.nix
+++ b/pkgs/applications/misc/otpclient/default.nix
@@ -4,7 +4,7 @@
 , cmake
 , pkg-config
 , gtk3
-, wrapGAppsHook
+, wrapGAppsHook3
 , jansson
 , libgcrypt
 , libzip
@@ -32,7 +32,7 @@ stdenv.mkDerivation rec {
   nativeBuildInputs = [
     cmake
     pkg-config
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
diff --git a/pkgs/applications/misc/oversteer/default.nix b/pkgs/applications/misc/oversteer/default.nix
index eb47b4225d87..6618d154cdda 100644
--- a/pkgs/applications/misc/oversteer/default.nix
+++ b/pkgs/applications/misc/oversteer/default.nix
@@ -1,6 +1,6 @@
 { lib, stdenv, fetchFromGitHub, pkg-config, gettext, python3, python3Packages
 , meson, ninja, udev, appstream, appstream-glib, desktop-file-utils, gtk3
-, wrapGAppsHook, gobject-introspection, bash, }:
+, wrapGAppsHook3, gobject-introspection, bash, }:
 let
   python = python3.withPackages (p:
     with p; [
@@ -33,7 +33,7 @@ in stdenv.mkDerivation {
     pkg-config
     gettext
     python
-    wrapGAppsHook
+    wrapGAppsHook3
     gobject-introspection
     meson
     udev
diff --git a/pkgs/applications/misc/oxker/default.nix b/pkgs/applications/misc/oxker/default.nix
index 6e97bad8f913..9e7c983d4801 100644
--- a/pkgs/applications/misc/oxker/default.nix
+++ b/pkgs/applications/misc/oxker/default.nix
@@ -2,14 +2,14 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "oxker";
-  version = "0.6.2";
+  version = "0.6.3";
 
   src = fetchCrate {
     inherit pname version;
-    sha256 = "sha256-pHyIL5Jmldsa0ZNMiYpBD+9zxPv8Blg23nnWD2YmHMI=";
+    sha256 = "sha256-L03r4PHCu+jsUC5vVSG77SR2ak/AsuVAhTd7P1WibAk=";
   };
 
-  cargoHash = "sha256-N1Cv89njL9QCIs3HclcjsqgSUSMEckis8zyVqepeW70=";
+  cargoHash = "sha256-5UxbZZdVioy1OZCbE6qESGKVnVT6TS4VHzsKlQ8XP2c=";
 
   meta = with lib; {
     description = "A simple tui to view & control docker containers";
diff --git a/pkgs/applications/misc/pattypan/default.nix b/pkgs/applications/misc/pattypan/default.nix
index c1f5aa84b0eb..344540e84863 100644
--- a/pkgs/applications/misc/pattypan/default.nix
+++ b/pkgs/applications/misc/pattypan/default.nix
@@ -4,7 +4,7 @@
 , ant
 , jdk
 , makeWrapper
-, wrapGAppsHook
+, wrapGAppsHook3
 , makeDesktopItem
 , copyDesktopItems
 , stripJavaArchivesHook
@@ -25,7 +25,7 @@ stdenv.mkDerivation (finalAttrs: {
     ant
     jdk
     makeWrapper
-    wrapGAppsHook
+    wrapGAppsHook3
     copyDesktopItems
     stripJavaArchivesHook
   ];
diff --git a/pkgs/applications/misc/pdf-quench/default.nix b/pkgs/applications/misc/pdf-quench/default.nix
index 78151061700a..bfb240e2b9d2 100644
--- a/pkgs/applications/misc/pdf-quench/default.nix
+++ b/pkgs/applications/misc/pdf-quench/default.nix
@@ -1,4 +1,4 @@
-{ lib, fetchFromGitHub, pkgs, python3, wrapGAppsHook, gobject-introspection }:
+{ lib, fetchFromGitHub, pkgs, python3, wrapGAppsHook3, gobject-introspection }:
 
 python3.pkgs.buildPythonApplication {
   pname = "pdf-quench";
@@ -11,7 +11,7 @@ python3.pkgs.buildPythonApplication {
     sha256 = "1rp9rlwr6rarcsxygv5x2c5psgwl6r69k0lsgribgyyla9cf2m7n";
   };
 
-  nativeBuildInputs = [ wrapGAppsHook gobject-introspection ];
+  nativeBuildInputs = [ wrapGAppsHook3 gobject-introspection ];
   buildInputs = with pkgs; [
     gtk3
     goocanvas2
diff --git a/pkgs/applications/misc/pdfarranger/default.nix b/pkgs/applications/misc/pdfarranger/default.nix
index 2973a4b9a36c..7e0dc4c2fdb2 100644
--- a/pkgs/applications/misc/pdfarranger/default.nix
+++ b/pkgs/applications/misc/pdfarranger/default.nix
@@ -1,6 +1,6 @@
 { fetchFromGitHub
 , lib
-, wrapGAppsHook
+, wrapGAppsHook3
 , python3Packages
 , gtk3
 , poppler_gi
@@ -20,7 +20,7 @@ python3Packages.buildPythonApplication rec {
   };
 
   nativeBuildInputs = [
-    wrapGAppsHook
+    wrapGAppsHook3
   ] ++ (with python3Packages; [
     setuptools
   ]);
@@ -39,7 +39,7 @@ python3Packages.buildPythonApplication rec {
     python-dateutil
   ];
 
-  # incompatible with wrapGAppsHook
+  # incompatible with wrapGAppsHook3
   strictDeps = false;
   dontWrapGApps = true;
   preFixup = ''
diff --git a/pkgs/applications/misc/pdfpc/default.nix b/pkgs/applications/misc/pdfpc/default.nix
index 7d46836b796e..5b77a264ed2b 100644
--- a/pkgs/applications/misc/pdfpc/default.nix
+++ b/pkgs/applications/misc/pdfpc/default.nix
@@ -1,5 +1,5 @@
 { lib, stdenv, fetchFromGitHub, cmake, pkg-config, vala, gtk3, libgee
-, poppler, libpthreadstubs, gstreamer, gst-plugins-base, gst-plugins-good, gst-libav, gobject-introspection, wrapGAppsHook
+, poppler, libpthreadstubs, gstreamer, gst-plugins-base, gst-plugins-good, gst-libav, gobject-introspection, wrapGAppsHook3
 , qrencode, webkitgtk, discount, json-glib, fetchpatch }:
 
 stdenv.mkDerivation rec {
@@ -17,7 +17,7 @@ stdenv.mkDerivation rec {
     cmake pkg-config vala
     # For setup hook
     gobject-introspection
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
diff --git a/pkgs/applications/misc/pdfsam-basic/default.nix b/pkgs/applications/misc/pdfsam-basic/default.nix
index c7d88edef867..ce3ce1a74012 100644
--- a/pkgs/applications/misc/pdfsam-basic/default.nix
+++ b/pkgs/applications/misc/pdfsam-basic/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, makeDesktopItem, fetchurl, jdk21, wrapGAppsHook, glib }:
+{ lib, stdenv, makeDesktopItem, fetchurl, jdk21, wrapGAppsHook3, glib }:
 
 stdenv.mkDerivation rec {
   pname = "pdfsam-basic";
@@ -14,7 +14,7 @@ stdenv.mkDerivation rec {
     tar xvf data.tar.gz
   '';
 
-  nativeBuildInputs = [ wrapGAppsHook ];
+  nativeBuildInputs = [ wrapGAppsHook3 ];
   buildInputs = [ glib ];
 
   preFixup = ''
diff --git a/pkgs/applications/misc/pdfslicer/default.nix b/pkgs/applications/misc/pdfslicer/default.nix
index ed20f460a167..d856dfaca8cb 100644
--- a/pkgs/applications/misc/pdfslicer/default.nix
+++ b/pkgs/applications/misc/pdfslicer/default.nix
@@ -5,7 +5,7 @@
 , gettext
 , intltool
 , pkg-config
-, wrapGAppsHook
+, wrapGAppsHook3
 , gtkmm3
 , libuuid
 , poppler
@@ -35,7 +35,7 @@ stdenv.mkDerivation rec {
     gettext
     intltool
     pkg-config
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
diff --git a/pkgs/applications/misc/pgmodeler/default.nix b/pkgs/applications/misc/pgmodeler/default.nix
index 05c641731c13..9293a732323c 100644
--- a/pkgs/applications/misc/pgmodeler/default.nix
+++ b/pkgs/applications/misc/pgmodeler/default.nix
@@ -13,13 +13,13 @@
 
 stdenv.mkDerivation rec {
   pname = "pgmodeler";
-  version = "1.1.2";
+  version = "1.1.3";
 
   src = fetchFromGitHub {
     owner = "pgmodeler";
     repo = "pgmodeler";
     rev = "v${version}";
-    sha256 = "sha256-urKAsuYmK8dsXhP+I7p27PXXYRapPtkI8FqARfLwnEw=";
+    sha256 = "sha256-LDgRv7Todyy2pnE21Z0O5JQ6mE4ZO3THv6rfEWU66Cc=";
   };
 
   nativeBuildInputs = [ pkg-config qmake wrapQtAppsHook ];
diff --git a/pkgs/applications/misc/phoc/default.nix b/pkgs/applications/misc/phoc/default.nix
index deccbabe3fd4..534556e231de 100644
--- a/pkgs/applications/misc/phoc/default.nix
+++ b/pkgs/applications/misc/phoc/default.nix
@@ -6,8 +6,9 @@
 , ninja
 , pkg-config
 , python3
-, wrapGAppsHook
+, wrapGAppsHook3
 , libinput
+, gobject-introspection
 , gnome
 , gnome-desktop
 , glib
@@ -24,20 +25,21 @@
 
 stdenv.mkDerivation (finalAttrs: {
   pname = "phoc";
-  version = "0.37.0";
+  version = "0.38.0";
 
   src = fetchurl {
     # This tarball includes the meson wrapped subproject 'gmobile'.
     url = with finalAttrs; "https://sources.phosh.mobi/releases/${pname}/${pname}-${version}.tar.xz";
-    hash = "sha256-SQLoOjqDBL1G3SDO4mfVRV2U0i+M1EwiqUR52ytFJmM=";
+    hash = "sha256-OcRUnw1Fck9bMSgfMMcWqqR6a6yzyKjY8P3nqcwVULc=";
   };
 
   nativeBuildInputs = [
+    gobject-introspection
     meson
     ninja
     pkg-config
     python3
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
diff --git a/pkgs/applications/misc/plank/default.nix b/pkgs/applications/misc/plank/default.nix
index fb3226e6d803..69be975be0ba 100644
--- a/pkgs/applications/misc/plank/default.nix
+++ b/pkgs/applications/misc/plank/default.nix
@@ -21,7 +21,7 @@
 , file
 , gnome-menus
 , libgee
-, wrapGAppsHook
+, wrapGAppsHook3
 , autoreconfHook
 }:
 
@@ -41,7 +41,7 @@ stdenv.mkDerivation rec {
     libxml2 # xmllint
     pkg-config
     vala
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
diff --git a/pkgs/applications/misc/playonlinux/default.nix b/pkgs/applications/misc/playonlinux/default.nix
index 0b4f445c0066..4f12fb470671 100644
--- a/pkgs/applications/misc/playonlinux/default.nix
+++ b/pkgs/applications/misc/playonlinux/default.nix
@@ -26,7 +26,7 @@
 # needed for avoiding crash on file selector
 , gsettings-desktop-schemas
 , glib
-, wrapGAppsHook
+, wrapGAppsHook3
 , hicolor-icon-theme
 }:
 
@@ -79,7 +79,7 @@ in stdenv.mkDerivation {
     ./0001-fix-locale.patch
   ];
 
-  nativeBuildInputs = [ makeWrapper wrapGAppsHook ];
+  nativeBuildInputs = [ makeWrapper wrapGAppsHook3 ];
 
   preBuild = ''
     makeFlagsArray+=(PYTHON="python -m py_compile")
diff --git a/pkgs/applications/misc/polar-bookshelf/default.nix b/pkgs/applications/misc/polar-bookshelf/default.nix
index 983dc81d1790..1e29c225f92c 100644
--- a/pkgs/applications/misc/polar-bookshelf/default.nix
+++ b/pkgs/applications/misc/polar-bookshelf/default.nix
@@ -3,7 +3,7 @@
 , makeWrapper
 , fetchurl
 , dpkg
-, wrapGAppsHook
+, wrapGAppsHook3
 , autoPatchelfHook
 , gtk3
 , cairo
@@ -85,7 +85,7 @@ stdenv.mkDerivation rec {
   ];
 
   nativeBuildInputs = [
-    wrapGAppsHook
+    wrapGAppsHook3
     autoPatchelfHook
     makeWrapper
     dpkg
diff --git a/pkgs/applications/misc/polar-bookshelf1/default.nix b/pkgs/applications/misc/polar-bookshelf1/default.nix
index a4ff885a71b8..572a981b4ccf 100644
--- a/pkgs/applications/misc/polar-bookshelf1/default.nix
+++ b/pkgs/applications/misc/polar-bookshelf1/default.nix
@@ -36,7 +36,7 @@
 , nss
 , openssl
 , pango
-, wrapGAppsHook
+, wrapGAppsHook3
 }:
 
 stdenv.mkDerivation rec {
@@ -82,7 +82,7 @@ stdenv.mkDerivation rec {
     autoPatchelfHook
     dpkg
     makeWrapper
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   runtimeLibs = lib.makeLibraryPath [ libudev0-shim glibc curl openssl libnghttp2 ];
diff --git a/pkgs/applications/misc/polychromatic/default.nix b/pkgs/applications/misc/polychromatic/default.nix
index f940f5a4af80..9ed291c79c7e 100644
--- a/pkgs/applications/misc/polychromatic/default.nix
+++ b/pkgs/applications/misc/polychromatic/default.nix
@@ -10,7 +10,7 @@
 , sassc
 , python3Packages
 , gobject-introspection
-, wrapGAppsHook
+, wrapGAppsHook3
 , libappindicator-gtk3
 , libxcb
 , qt5
@@ -48,7 +48,7 @@ python3Packages.buildPythonApplication rec {
     meson
     ninja
     sassc
-    wrapGAppsHook
+    wrapGAppsHook3
     qt5.wrapQtAppsHook
   ];
 
diff --git a/pkgs/applications/misc/premid/default.nix b/pkgs/applications/misc/premid/default.nix
index f621d510e411..876c4c33de28 100644
--- a/pkgs/applications/misc/premid/default.nix
+++ b/pkgs/applications/misc/premid/default.nix
@@ -1,4 +1,4 @@
-{ autoPatchelfHook, makeDesktopItem, lib, stdenv, wrapGAppsHook, fetchurl, copyDesktopItems
+{ autoPatchelfHook, makeDesktopItem, lib, stdenv, wrapGAppsHook3, fetchurl, copyDesktopItems
 , alsa-lib, at-spi2-atk, at-spi2-core, atk, cairo, cups, dbus, expat, fontconfig
 , freetype, gdk-pixbuf, glib, gtk3, libcxx, libdrm, libnotify, libpulseaudio, libuuid
 , libX11, libXScrnSaver, libXcomposite, libXcursor, libXdamage, libXext
@@ -17,7 +17,7 @@ stdenv.mkDerivation rec {
 
   nativeBuildInputs = [
     autoPatchelfHook
-    wrapGAppsHook
+    wrapGAppsHook3
     copyDesktopItems
   ];
 
diff --git a/pkgs/applications/misc/printrun/default.nix b/pkgs/applications/misc/printrun/default.nix
index 61acdd32857c..884ce49dd834 100644
--- a/pkgs/applications/misc/printrun/default.nix
+++ b/pkgs/applications/misc/printrun/default.nix
@@ -1,4 +1,4 @@
-{ lib, python3Packages, fetchFromGitHub, glib, wrapGAppsHook }:
+{ lib, python3Packages, fetchFromGitHub, glib, wrapGAppsHook3 }:
 
 python3Packages.buildPythonApplication rec {
   pname = "printrun";
@@ -18,7 +18,7 @@ python3Packages.buildPythonApplication rec {
     sed -i -r "s|/usr(/local)?/share/|$out/share/|g" printrun/utils.py
   '';
 
-  nativeBuildInputs = [ glib wrapGAppsHook ];
+  nativeBuildInputs = [ glib wrapGAppsHook3 ];
 
   propagatedBuildInputs = with python3Packages; [
     appdirs cython dbus-python numpy six wxpython psutil pyglet pyopengl pyserial cffi cairosvg lxml
diff --git a/pkgs/applications/misc/process-compose/default.nix b/pkgs/applications/misc/process-compose/default.nix
index 86258fa9805d..78a122528707 100644
--- a/pkgs/applications/misc/process-compose/default.nix
+++ b/pkgs/applications/misc/process-compose/default.nix
@@ -8,13 +8,13 @@ let config-module = "github.com/f1bonacc1/process-compose/src/config";
 in
 buildGoModule rec {
   pname = "process-compose";
-  version = "1.2.0";
+  version = "1.5.0";
 
   src = fetchFromGitHub {
     owner = "F1bonacc1";
     repo = pname;
     rev = "v${version}";
-    hash = "sha256-juFcVtHhqT6tw9YaKCDTUvX6NqqxEjqVK3Zom673IkQ=";
+    hash = "sha256-OxEo5fkRSdEZLyvK4Pt3EOWLO0ph6RkSD2OOeAWg72M=";
     # populate values that require us to use git. By doing this in postFetch we
     # can delete .git afterwards and maintain better reproducibility of the src.
     leaveDotGit = true;
@@ -43,7 +43,7 @@ buildGoModule rec {
     installShellFiles
   ];
 
-  vendorHash = "sha256-9G8GPTJRuPahNcEhAddZsUKc1fexp6IrCZlCGKW0T64=";
+  vendorHash = "sha256-X4pMes9hLMF8bZ6MX5cZdm4HfjnHYshGlA/lXlHr1Ow=";
 
   doCheck = false;
 
diff --git a/pkgs/applications/misc/prusa-slicer/default.nix b/pkgs/applications/misc/prusa-slicer/default.nix
index 7952eadea68f..96fc551595b5 100644
--- a/pkgs/applications/misc/prusa-slicer/default.nix
+++ b/pkgs/applications/misc/prusa-slicer/default.nix
@@ -4,7 +4,7 @@
 , fetchFromGitHub
 , cmake
 , pkg-config
-, wrapGAppsHook
+, wrapGAppsHook3
 , boost
 , cereal
 , cgal
@@ -23,7 +23,7 @@
 , mpfr
 , nanosvg
 , nlopt
-, opencascade-occt
+, opencascade-occt_7_6
 , openvdb
 , pcre
 , qhull
@@ -37,6 +37,7 @@
 , wxGTK-override ? null
 }:
 let
+  opencascade-occt = opencascade-occt_7_6;
   wxGTK-prusa = wxGTK32.overrideAttrs (old: rec {
     pname = "wxwidgets-prusa3d-patched";
     version = "3.2.0";
@@ -78,7 +79,7 @@ stdenv.mkDerivation (finalAttrs: {
   nativeBuildInputs = [
     cmake
     pkg-config
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
diff --git a/pkgs/applications/misc/pytrainer/default.nix b/pkgs/applications/misc/pytrainer/default.nix
index 6d907fab0db4..49be94cc2bab 100644
--- a/pkgs/applications/misc/pytrainer/default.nix
+++ b/pkgs/applications/misc/pytrainer/default.nix
@@ -13,7 +13,7 @@
 , sqlite
 , tzdata
 , webkitgtk
-, wrapGAppsHook
+, wrapGAppsHook3
 , xvfb-run
 }:
 
@@ -48,7 +48,7 @@ in python.pkgs.buildPythonApplication rec {
 
   nativeBuildInputs = [
     gobject-introspection
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
diff --git a/pkgs/applications/misc/qcad/default.nix b/pkgs/applications/misc/qcad/default.nix
index c36068e65962..5882057988a4 100644
--- a/pkgs/applications/misc/qcad/default.nix
+++ b/pkgs/applications/misc/qcad/default.nix
@@ -18,14 +18,14 @@
 
 mkDerivation rec {
   pname = "qcad";
-  version = "3.29.6.2";
+  version = "3.29.6.5";
 
   src = fetchFromGitHub {
     name = "qcad-${version}-src";
     owner = "qcad";
     repo = "qcad";
     rev = "v${version}";
-    hash = "sha256-NKWuvhVGtlhWOfV0MWyViTgk0luA8mvnwQS0TZj7Ulc=";
+    hash = "sha256-2x3np1cmjJ/IN/vSqKX6mTQbtFROxPzhXPjeJ6mxe9k=";
   };
 
   patches = [
diff --git a/pkgs/applications/misc/qtpass/default.nix b/pkgs/applications/misc/qtpass/default.nix
index ae26de760ee6..d401a57dda78 100644
--- a/pkgs/applications/misc/qtpass/default.nix
+++ b/pkgs/applications/misc/qtpass/default.nix
@@ -23,9 +23,6 @@ stdenv.mkDerivation rec {
 
   nativeBuildInputs = [ qmake qttools wrapQtAppsHook ];
 
-  # HACK `propagatedSandboxProfile` does not appear to actually propagate the sandbox profile from `qt5.qtbase`
-  sandboxProfile = toString qtbase.__propagatedSandboxProfile;
-
   qmakeFlags = [
     # setup hook only sets QMAKE_LRELEASE, set QMAKE_LUPDATE too:
     "QMAKE_LUPDATE=${qttools.dev}/bin/lupdate"
diff --git a/pkgs/applications/misc/raider/default.nix b/pkgs/applications/misc/raider/default.nix
index 2152a7e6f229..6b15176a686e 100644
--- a/pkgs/applications/misc/raider/default.nix
+++ b/pkgs/applications/misc/raider/default.nix
@@ -17,13 +17,13 @@
 
 stdenv.mkDerivation rec {
   pname = "raider";
-  version = "2.1.0";
+  version = "3.0.0";
 
   src = fetchFromGitHub {
     owner = "ADBeveridge";
     repo = "raider";
     rev = "v${version}";
-    hash = "sha256-ZR40sbEKvZxGxRaV5H9D6kBP9ZgUdc425XgIhqidWLI=";
+    hash = "sha256-zqM2B1M7E4CRupd09rvFYG7H7wBd2hTWnjN3xadS36w=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/applications/misc/redshift/default.nix b/pkgs/applications/misc/redshift/default.nix
index ff0ba6c0edb7..f0c46f8c207a 100644
--- a/pkgs/applications/misc/redshift/default.nix
+++ b/pkgs/applications/misc/redshift/default.nix
@@ -1,6 +1,6 @@
 { lib, stdenv, fetchFromGitHub, fetchFromGitLab
 , autoconf, automake, gettext, intltool
-, libtool, pkg-config, wrapGAppsHook, wrapPython, gobject-introspection
+, libtool, pkg-config, wrapGAppsHook3, wrapPython, gobject-introspection
 , gtk3, python, pygobject3, pyxdg
 
 , withQuartz ? stdenv.isDarwin, ApplicationServices
@@ -33,7 +33,7 @@ let
         intltool
         libtool
         pkg-config
-        wrapGAppsHook
+        wrapGAppsHook3
         wrapPython
         gobject-introspection
         python
diff --git a/pkgs/applications/misc/regextester/default.nix b/pkgs/applications/misc/regextester/default.nix
index 05daa180d029..902ae5749201 100644
--- a/pkgs/applications/misc/regextester/default.nix
+++ b/pkgs/applications/misc/regextester/default.nix
@@ -13,7 +13,7 @@
 , gsettings-desktop-schemas
 , desktop-file-utils
 , pantheon
-, wrapGAppsHook }:
+, wrapGAppsHook3 }:
 
 stdenv.mkDerivation rec {
   pname = "regextester";
@@ -34,7 +34,7 @@ stdenv.mkDerivation rec {
     meson
     ninja
     pkg-config
-    wrapGAppsHook
+    wrapGAppsHook3
     desktop-file-utils
   ];
 
diff --git a/pkgs/applications/misc/remarkable/rmview/default.nix b/pkgs/applications/misc/remarkable/rmview/default.nix
index 52ad1dce2688..40ffc4df8b91 100644
--- a/pkgs/applications/misc/remarkable/rmview/default.nix
+++ b/pkgs/applications/misc/remarkable/rmview/default.nix
@@ -3,6 +3,7 @@
 python3Packages.buildPythonApplication rec {
   pname = "rmview";
   version = "3.1.3";
+  pyproject = true;
 
   src = fetchFromGitHub {
     owner = "bordaigorl";
@@ -11,7 +12,7 @@ python3Packages.buildPythonApplication rec {
     sha256 = "sha256-V26zmu8cQkLs0IMR7eFO8x34McnT3xYyzlZfntApYkk=";
   };
 
-  nativeBuildInputs = with python3Packages; [ pyqt5 wrapQtAppsHook ];
+  nativeBuildInputs = with python3Packages; [ pyqt5 setuptools wrapQtAppsHook ];
   propagatedBuildInputs = with python3Packages; [ pyqt5 paramiko twisted pyjwt pyopenssl service-identity sshtunnel ];
 
   preBuild = ''
diff --git a/pkgs/applications/misc/remontoire/default.nix b/pkgs/applications/misc/remontoire/default.nix
index 0aabaababf6a..754d32617e78 100644
--- a/pkgs/applications/misc/remontoire/default.nix
+++ b/pkgs/applications/misc/remontoire/default.nix
@@ -1,7 +1,7 @@
 { lib
 , stdenv
 , fetchFromGitHub
-, wrapGAppsHook
+, wrapGAppsHook3
 , desktop-file-utils
 , glib
 , gtk3
@@ -33,7 +33,7 @@ stdenv.mkDerivation (finalAttrs: {
     pkg-config
     python3
     vala
-    wrapGAppsHook
+    wrapGAppsHook3
     desktop-file-utils
   ];
 
diff --git a/pkgs/applications/misc/resp-app/default.nix b/pkgs/applications/misc/resp-app/default.nix
index 9748ca63c281..efd279189351 100644
--- a/pkgs/applications/misc/resp-app/default.nix
+++ b/pkgs/applications/misc/resp-app/default.nix
@@ -77,6 +77,7 @@ mkDerivation rec {
       --replace '/opt/resp_app' "${placeholder "out"}" \
       --replace 'target.path = $$LINUX_INSTALL_PATH' 'target.path = $$LINUX_INSTALL_PATH/bin' \
       --replace '/usr/' "$out/"
+    rm -r 3rdparty/snappy
   '';
 
   qmakeFlags = [
diff --git a/pkgs/applications/misc/rofi-rbw/default.nix b/pkgs/applications/misc/rofi-rbw/default.nix
index 9e3df3fc3667..f4cbf40e3d07 100644
--- a/pkgs/applications/misc/rofi-rbw/default.nix
+++ b/pkgs/applications/misc/rofi-rbw/default.nix
@@ -17,14 +17,14 @@
 
 buildPythonApplication rec {
   pname = "rofi-rbw";
-  version = "1.4.0";
+  version = "1.4.2";
   format = "pyproject";
 
   src = fetchFromGitHub {
     owner = "fdw";
     repo = "rofi-rbw";
     rev = "refs/tags/${version}";
-    hash = "sha256-1xbdZlZa3YPz+33AMgvhiMO12vc/ej0RybypQUzEn+8=";
+    hash = "sha256-wUb89GkNB2lEfb42hMvcxpbjc1O+wx8AkFjq7aJwAko=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/applications/misc/rofi-top/default.nix b/pkgs/applications/misc/rofi-top/default.nix
index 328eca9da894..877cbd6a284e 100644
--- a/pkgs/applications/misc/rofi-top/default.nix
+++ b/pkgs/applications/misc/rofi-top/default.nix
@@ -8,7 +8,7 @@
 , libgtop
 , pkg-config
 , rofi-unwrapped
-, wrapGAppsHook
+, wrapGAppsHook3
 }:
 
 stdenv.mkDerivation rec {
@@ -31,7 +31,7 @@ stdenv.mkDerivation rec {
     autoreconfHook
     gobject-introspection
     pkg-config
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
diff --git a/pkgs/applications/misc/rofi/wrapper.nix b/pkgs/applications/misc/rofi/wrapper.nix
index 2f98fe164161..f8da5074b52a 100644
--- a/pkgs/applications/misc/rofi/wrapper.nix
+++ b/pkgs/applications/misc/rofi/wrapper.nix
@@ -1,4 +1,4 @@
-{ symlinkJoin, lib, rofi-unwrapped, makeWrapper, wrapGAppsHook, gdk-pixbuf, hicolor-icon-theme, theme ? null, plugins ? [], symlink-dmenu ? false }:
+{ symlinkJoin, lib, rofi-unwrapped, makeWrapper, wrapGAppsHook3, gdk-pixbuf, hicolor-icon-theme, theme ? null, plugins ? [], symlink-dmenu ? false }:
 
 symlinkJoin {
   name = "rofi-${rofi-unwrapped.version}";
@@ -7,7 +7,7 @@ symlinkJoin {
     rofi-unwrapped.out
   ] ++ (lib.forEach plugins (p: p.out));
 
-  nativeBuildInputs = [ makeWrapper wrapGAppsHook ];
+  nativeBuildInputs = [ makeWrapper wrapGAppsHook3 ];
   buildInputs = [ gdk-pixbuf ];
 
   preferLocalBuild = true;
diff --git a/pkgs/applications/misc/rootbar/default.nix b/pkgs/applications/misc/rootbar/default.nix
index 41582e1b413c..2ef92f1c9aa2 100644
--- a/pkgs/applications/misc/rootbar/default.nix
+++ b/pkgs/applications/misc/rootbar/default.nix
@@ -7,7 +7,7 @@
 , json_c
 , libpulseaudio
 , wayland
-, wrapGAppsHook
+, wrapGAppsHook3
 }:
 
 stdenv.mkDerivation rec {
@@ -21,7 +21,7 @@ stdenv.mkDerivation rec {
   };
 
   nativeBuildInputs = [
-    meson ninja pkg-config wrapGAppsHook
+    meson ninja pkg-config wrapGAppsHook3
   ];
 
   buildInputs = [
diff --git a/pkgs/applications/misc/safeeyes/default.nix b/pkgs/applications/misc/safeeyes/default.nix
index 39bb82aaaef6..87925d732e89 100644
--- a/pkgs/applications/misc/safeeyes/default.nix
+++ b/pkgs/applications/misc/safeeyes/default.nix
@@ -11,7 +11,7 @@
 , testers
 , xprintidle
 , xprop
-, wrapGAppsHook
+, wrapGAppsHook3
 }:
 
 with python3.pkgs;
@@ -30,7 +30,7 @@ buildPythonApplication rec {
   '';
 
   nativeBuildInputs = [
-    wrapGAppsHook
+    wrapGAppsHook3
     gobject-introspection
   ];
 
diff --git a/pkgs/applications/misc/sequeler/default.nix b/pkgs/applications/misc/sequeler/default.nix
index 49fa61270b4d..aa76a65a1752 100644
--- a/pkgs/applications/misc/sequeler/default.nix
+++ b/pkgs/applications/misc/sequeler/default.nix
@@ -1,5 +1,5 @@
 { lib, stdenv, fetchFromGitHub, nix-update-script
-, vala, meson, ninja, pkg-config, pantheon, gettext, wrapGAppsHook, python3, desktop-file-utils
+, vala, meson, ninja, pkg-config, pantheon, gettext, wrapGAppsHook3, python3, desktop-file-utils
 , gtk3, glib, libgee, libgda, gtksourceview, libxml2, libsecret, libssh2 }:
 
 
@@ -20,7 +20,7 @@ in stdenv.mkDerivation rec {
     sha256 = "sha256-MsHHTYERe0v+u3KnVtx+jmJTKORJTJ7bNfJMZHV9Ly4=";
   };
 
-  nativeBuildInputs = [ meson ninja pkg-config vala gettext wrapGAppsHook python3 desktop-file-utils ];
+  nativeBuildInputs = [ meson ninja pkg-config vala gettext wrapGAppsHook3 python3 desktop-file-utils ];
 
   buildInputs = [ gtk3 glib pantheon.granite libgee sqlGda gtksourceview libxml2 libsecret libssh2 ];
 
diff --git a/pkgs/applications/misc/shipments/default.nix b/pkgs/applications/misc/shipments/default.nix
index 792f997c5f85..1bcb2e4e104f 100644
--- a/pkgs/applications/misc/shipments/default.nix
+++ b/pkgs/applications/misc/shipments/default.nix
@@ -9,7 +9,7 @@
 , pkg-config
 , python3
 , stdenv
-, wrapGAppsHook
+, wrapGAppsHook3
 }:
 
 stdenv.mkDerivation rec {
@@ -28,7 +28,7 @@ stdenv.mkDerivation rec {
     meson
     ninja
     pkg-config
-    wrapGAppsHook
+    wrapGAppsHook3
     gobject-introspection
   ];
 
diff --git a/pkgs/applications/misc/siglo/default.nix b/pkgs/applications/misc/siglo/default.nix
index 1231d2fd47fd..2aeedcc25b2b 100644
--- a/pkgs/applications/misc/siglo/default.nix
+++ b/pkgs/applications/misc/siglo/default.nix
@@ -4,7 +4,7 @@
 , glib
 , meson
 , ninja
-, wrapGAppsHook
+, wrapGAppsHook3
 , desktop-file-utils
 , gobject-introspection
 , gtk3
@@ -35,7 +35,7 @@ stdenv.mkDerivation rec {
     glib
     meson
     ninja
-    wrapGAppsHook
+    wrapGAppsHook3
     python3.pkgs.wrapPython
     python3
     desktop-file-utils
diff --git a/pkgs/applications/misc/skytemple/default.nix b/pkgs/applications/misc/skytemple/default.nix
index 116c5096cb59..4442e79944ac 100644
--- a/pkgs/applications/misc/skytemple/default.nix
+++ b/pkgs/applications/misc/skytemple/default.nix
@@ -4,7 +4,7 @@
 , gtk3
 , gtksourceview4
 , webkitgtk
-, wrapGAppsHook
+, wrapGAppsHook3
 , python3Packages
 }:
 
@@ -31,7 +31,7 @@ python3Packages.buildPythonApplication rec {
 
   nativeBuildInputs = [
     gobject-introspection
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   propagatedBuildInputs = with python3Packages; [
diff --git a/pkgs/applications/misc/slic3r/default.nix b/pkgs/applications/misc/slic3r/default.nix
index 6695f53e9932..102dc8f4b3c8 100644
--- a/pkgs/applications/misc/slic3r/default.nix
+++ b/pkgs/applications/misc/slic3r/default.nix
@@ -1,5 +1,5 @@
 { lib, stdenv, fetchFromGitHub, fetchpatch, perl, makeWrapper
-, makeDesktopItem, which, perlPackages, boost, wrapGAppsHook
+, makeDesktopItem, which, perlPackages, boost, wrapGAppsHook3
 }:
 
 stdenv.mkDerivation rec {
@@ -13,7 +13,7 @@ stdenv.mkDerivation rec {
     sha256 = "sha256-cf0QTOzhLyTcbJryCQoTVzU8kfrPV6SLpqi4s36X5N0=";
   };
 
-  nativeBuildInputs = [ makeWrapper which wrapGAppsHook ];
+  nativeBuildInputs = [ makeWrapper which wrapGAppsHook3 ];
   buildInputs =
   [boost] ++
   (with perlPackages; [ perl
diff --git a/pkgs/applications/misc/snapmaker-luban/default.nix b/pkgs/applications/misc/snapmaker-luban/default.nix
index 351a17c5fc4d..dc5fe5993f4f 100644
--- a/pkgs/applications/misc/snapmaker-luban/default.nix
+++ b/pkgs/applications/misc/snapmaker-luban/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, autoPatchelfHook, makeDesktopItem, copyDesktopItems, wrapGAppsHook, fetchurl
+{ lib, stdenv, autoPatchelfHook, makeDesktopItem, copyDesktopItems, wrapGAppsHook3, fetchurl
 , alsa-lib, at-spi2-atk, at-spi2-core, atk, cairo, cups
 , gtk3, nss, glib, dbus, nspr, gdk-pixbuf, libdrm, mesa
 , libX11, libXScrnSaver, libXcomposite, libXcursor, libXdamage, libXext
@@ -17,7 +17,7 @@ stdenv.mkDerivation rec {
 
   nativeBuildInputs = [
     autoPatchelfHook
-    wrapGAppsHook
+    wrapGAppsHook3
     copyDesktopItems
   ];
 
diff --git a/pkgs/applications/misc/snapper-gui/default.nix b/pkgs/applications/misc/snapper-gui/default.nix
index c82b0813f78b..8029eee15f89 100644
--- a/pkgs/applications/misc/snapper-gui/default.nix
+++ b/pkgs/applications/misc/snapper-gui/default.nix
@@ -1,5 +1,5 @@
 { lib, fetchFromGitHub, python3, python3Packages
-, gnome, gtk3, wrapGAppsHook, gtksourceview3, snapper
+, gnome, gtk3, wrapGAppsHook3, gtksourceview3, snapper
 , gobject-introspection
 }:
 
@@ -14,7 +14,7 @@ python3Packages.buildPythonApplication rec {
     sha256 = "13j4spbi9pxg69zifzai8ifk4207sn0vwh6vjqryi0snd5sylh7h";
   };
 
-  nativeBuildInputs = [ wrapGAppsHook gobject-introspection ];
+  nativeBuildInputs = [ wrapGAppsHook3 gobject-introspection ];
 
   buildInputs = [
     python3
diff --git a/pkgs/applications/misc/solaar/default.nix b/pkgs/applications/misc/solaar/default.nix
index f3cd458510b3..4c2e59b2ab8d 100644
--- a/pkgs/applications/misc/solaar/default.nix
+++ b/pkgs/applications/misc/solaar/default.nix
@@ -3,7 +3,7 @@
 , gobject-introspection
 , gtk3
 , python3Packages
-, wrapGAppsHook
+, wrapGAppsHook3
 , gdk-pixbuf
 , libappindicator
 , librsvg
@@ -14,13 +14,13 @@
 # instead of adding this to `services.udev.packages` on NixOS,
 python3Packages.buildPythonApplication rec {
   pname = "solaar";
-  version = "1.1.11";
+  version = "1.1.13";
 
   src = fetchFromGitHub {
     owner = "pwr-Solaar";
     repo = "Solaar";
     rev = "refs/tags/${version}";
-    hash = "sha256-fVWfV7rEu/knysWUrPeokBBlSGnvNlpiptAd1M7ZVd8=";
+    hash = "sha256-sYJrVAeZi0a7yD0i/zIIxcu9X/c5HvgoI/n50eXD47s=";
   };
 
   outputs = [ "out" "udev" ];
@@ -28,7 +28,7 @@ python3Packages.buildPythonApplication rec {
   nativeBuildInputs = [
     gdk-pixbuf
     gobject-introspection
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
diff --git a/pkgs/applications/misc/sticky/default.nix b/pkgs/applications/misc/sticky/default.nix
index 9e9df71ddf9a..423944cafb1f 100644
--- a/pkgs/applications/misc/sticky/default.nix
+++ b/pkgs/applications/misc/sticky/default.nix
@@ -5,7 +5,7 @@
 , meson
 , ninja
 , python3
-, wrapGAppsHook
+, wrapGAppsHook3
 , cinnamon
 , glib
 , gspell
@@ -35,7 +35,7 @@ stdenv.mkDerivation rec {
     meson
     ninja
     python3.pkgs.wrapPython
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
diff --git a/pkgs/applications/misc/streamdeck-ui/default.nix b/pkgs/applications/misc/streamdeck-ui/default.nix
index f46be1a24324..f8ecf3694e51 100644
--- a/pkgs/applications/misc/streamdeck-ui/default.nix
+++ b/pkgs/applications/misc/streamdeck-ui/default.nix
@@ -4,7 +4,7 @@
 , copyDesktopItems
 , writeText
 , makeDesktopItem
-, wrapGAppsHook
+, wrapGAppsHook3
 , xvfb-run
 , qt6
 }:
@@ -71,7 +71,7 @@ python3Packages.buildPythonApplication rec {
     python3Packages.poetry-core
     copyDesktopItems
     qt6.wrapQtAppsHook
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   propagatedBuildInputs = with python3Packages; [
diff --git a/pkgs/applications/misc/survex/default.nix b/pkgs/applications/misc/survex/default.nix
index 6f2098ea4778..2bb4184b4353 100644
--- a/pkgs/applications/misc/survex/default.nix
+++ b/pkgs/applications/misc/survex/default.nix
@@ -14,7 +14,7 @@
 , pkg-config
 , proj
 , python3
-, wrapGAppsHook
+, wrapGAppsHook3
 , wxGTK32
 }:
 
@@ -39,7 +39,7 @@ stdenv.mkDerivation rec {
     perl
     pkg-config
     python3
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
diff --git a/pkgs/applications/misc/swappy/default.nix b/pkgs/applications/misc/swappy/default.nix
index b0cfc24aab65..cb56e4281da0 100644
--- a/pkgs/applications/misc/swappy/default.nix
+++ b/pkgs/applications/misc/swappy/default.nix
@@ -11,7 +11,7 @@
 , scdoc
 , libnotify
 , glib
-, wrapGAppsHook
+, wrapGAppsHook3
 , hicolor-icon-theme
 }:
 
@@ -26,7 +26,7 @@ stdenv.mkDerivation rec {
     hash = "sha256-/XPvy98Il4i8cDl9vH6f0/AZmiSqseSXnen7HfMqCDo=";
   };
 
-  nativeBuildInputs = [ glib meson ninja pkg-config scdoc wrapGAppsHook ];
+  nativeBuildInputs = [ glib meson ninja pkg-config scdoc wrapGAppsHook3 ];
 
   buildInputs = [
     cairo pango gtk libnotify wayland glib hicolor-icon-theme
diff --git a/pkgs/applications/misc/swaynotificationcenter/default.nix b/pkgs/applications/misc/swaynotificationcenter/default.nix
index 3f2310a8507f..b2ea718d87e5 100644
--- a/pkgs/applications/misc/swaynotificationcenter/default.nix
+++ b/pkgs/applications/misc/swaynotificationcenter/default.nix
@@ -2,7 +2,7 @@
 , stdenv
 , fetchFromGitHub
 , testers
-, wrapGAppsHook
+, wrapGAppsHook3
 , bash-completion
 , dbus
 , dbus-glib
@@ -57,7 +57,7 @@ stdenv.mkDerivation (finalAttrs: rec {
     sassc
     scdoc
     vala
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
diff --git a/pkgs/applications/misc/swaysettings/default.nix b/pkgs/applications/misc/swaysettings/default.nix
index babd312d3edd..490f0048081e 100644
--- a/pkgs/applications/misc/swaysettings/default.nix
+++ b/pkgs/applications/misc/swaysettings/default.nix
@@ -22,7 +22,7 @@
 , python3
 , stdenv
 , vala
-, wrapGAppsHook
+, wrapGAppsHook3
 }:
 
 stdenv.mkDerivation rec {
@@ -45,7 +45,7 @@ stdenv.mkDerivation rec {
     pkg-config
     python3
     vala
-    wrapGAppsHook
+    wrapGAppsHook3
     gobject-introspection
   ];
 
diff --git a/pkgs/applications/misc/syncthingtray/default.nix b/pkgs/applications/misc/syncthingtray/default.nix
index 414606fa2084..e16625b02e17 100644
--- a/pkgs/applications/misc/syncthingtray/default.nix
+++ b/pkgs/applications/misc/syncthingtray/default.nix
@@ -34,14 +34,14 @@ https://github.com/NixOS/nixpkgs/issues/199596#issuecomment-1310136382 */
 }:
 
 stdenv.mkDerivation (finalAttrs: {
-  version = "1.5.2";
+  version = "1.5.3";
   pname = "syncthingtray";
 
   src = fetchFromGitHub {
     owner = "Martchus";
     repo = "syncthingtray";
     rev = "v${finalAttrs.version}";
-    hash = "sha256-OjrkmpH9sVrO3M25PKj6jhmI2DmbP+/r4mOZ4BqE/1Y=";
+    hash = "sha256-wE6N0GSdcLDQOO+M3Ahlv3Z2S+PqdvZAnueCKB9+R08=";
   };
 
   buildInputs = [
diff --git a/pkgs/applications/misc/system76-keyboard-configurator/default.nix b/pkgs/applications/misc/system76-keyboard-configurator/default.nix
index 94dc95a466cd..096f0589baed 100644
--- a/pkgs/applications/misc/system76-keyboard-configurator/default.nix
+++ b/pkgs/applications/misc/system76-keyboard-configurator/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetchFromGitHub, rustPlatform, gtk3, glib, wrapGAppsHook, libusb1, hidapi, udev, pkg-config }:
+{ lib, stdenv, fetchFromGitHub, rustPlatform, gtk3, glib, wrapGAppsHook3, libusb1, hidapi, udev, pkg-config }:
 
 # system76-keyboard-configurator tries to spawn a daemon as root via pkexec, so
 # your system needs a PolicyKit authentication agent running for the
@@ -18,7 +18,7 @@ rustPlatform.buildRustPackage rec {
   nativeBuildInputs = [
     pkg-config
     glib # for glib-compile-resources
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
diff --git a/pkgs/applications/misc/taskwarrior-tui/default.nix b/pkgs/applications/misc/taskwarrior-tui/default.nix
index 44b6ccf76095..922a7d19d4f9 100644
--- a/pkgs/applications/misc/taskwarrior-tui/default.nix
+++ b/pkgs/applications/misc/taskwarrior-tui/default.nix
@@ -6,16 +6,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "taskwarrior-tui";
-  version = "0.25.4";
+  version = "0.26.0";
 
   src = fetchFromGitHub {
     owner = "kdheepak";
     repo = "taskwarrior-tui";
     rev = "v${version}";
-    sha256 = "sha256-M8tiEUPfP5EWfPp7i6r0lpHC5ZUsEYeEKVz5gUpe4+A=";
+    sha256 = "sha256-/OIBWUDMPMbCFLnoCJORgzlhUAqlFIItXQSzLTWZ7Jo=";
   };
 
-  cargoHash = "sha256-B5peoyT/+miHXyoRGFLUv9qFzZZFsExrI46Zy0K7NL4=";
+  cargoHash = "sha256-JR6KX5x8BLfX8keofoYqS2eftCDoMLg25OMfTf0k53Q=";
 
   nativeBuildInputs = [ installShellFiles ];
 
diff --git a/pkgs/applications/misc/themechanger/default.nix b/pkgs/applications/misc/themechanger/default.nix
index 652fe267852a..e1c26828c97e 100644
--- a/pkgs/applications/misc/themechanger/default.nix
+++ b/pkgs/applications/misc/themechanger/default.nix
@@ -3,7 +3,7 @@
 , meson
 , ninja
 , pkg-config
-, wrapGAppsHook
+, wrapGAppsHook3
 , desktop-file-utils
 , glib
 , gtk3
@@ -30,7 +30,7 @@ python3Packages.buildPythonApplication rec {
     meson
     ninja
     pkg-config
-    wrapGAppsHook
+    wrapGAppsHook3
     desktop-file-utils
     gtk3
   ];
diff --git a/pkgs/applications/misc/tint2/default.nix b/pkgs/applications/misc/tint2/default.nix
index ac50a46fde6d..18aa389ac1e7 100644
--- a/pkgs/applications/misc/tint2/default.nix
+++ b/pkgs/applications/misc/tint2/default.nix
@@ -20,7 +20,7 @@
 , libpthreadstubs
 , libXdmcp
 , libstartup_notification
-, wrapGAppsHook
+, wrapGAppsHook3
 }:
 
 stdenv.mkDerivation rec {
@@ -48,7 +48,7 @@ stdenv.mkDerivation rec {
     pkg-config
     cmake
     gettext
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
diff --git a/pkgs/applications/misc/tipp10/default.nix b/pkgs/applications/misc/tipp10/default.nix
index d61e0deabbd7..dd3c2ab4fe1a 100644
--- a/pkgs/applications/misc/tipp10/default.nix
+++ b/pkgs/applications/misc/tipp10/default.nix
@@ -1,18 +1,18 @@
-{ cmake, lib, mkDerivation, fetchFromGitLab,
-  qtmultimedia, qttools, ... }:
+{ stdenv, cmake, lib, fetchFromGitLab,
+  qtmultimedia, qttools, wrapQtAppsHook, ... }:
 
-mkDerivation rec {
+stdenv.mkDerivation rec {
   pname = "tipp10";
-  version = "3.2.1";
+  version = "3.3.2";
 
   src = fetchFromGitLab {
     owner = "tipp10";
     repo = "tipp10";
     rev = "v${version}";
-    sha256 = "4cxN2AnvYhZAMuA/qfmdLVICJNk6VCpRnfelbxYRvPg=";
+    sha256 = "sha256-e0sWH4pT7ej9XGK/Sg9XMX2bMqcXqtSaYI7KBZTXvp4=";
   };
 
-  nativeBuildInputs = [ cmake qttools ];
+  nativeBuildInputs = [ cmake qttools wrapQtAppsHook ];
   buildInputs = [ qtmultimedia ];
 
   meta = with lib; {
@@ -20,7 +20,7 @@ mkDerivation rec {
     mainProgram = "tipp10";
     homepage = "https://gitlab.com/tipp10/tipp10";
     license = licenses.gpl2Only;
-    maintainers = with maintainers; [ ];
+    maintainers = with maintainers; [ sigmanificient ];
     platforms = platforms.all;
   };
 }
diff --git a/pkgs/applications/misc/todoist-electron/default.nix b/pkgs/applications/misc/todoist-electron/default.nix
index c4fef60cff0c..16e266619ff4 100644
--- a/pkgs/applications/misc/todoist-electron/default.nix
+++ b/pkgs/applications/misc/todoist-electron/default.nix
@@ -22,9 +22,7 @@ in appimageTools.wrapAppImage {
   inherit pname version;
   src = appimageContents;
 
-  extraPkgs = { pkgs, ... }@args: [
-    pkgs.hidapi
-  ] ++ appimageTools.defaultFhsEnvArgs.multiPkgs args;
+  extraPkgs = pkgs: [ pkgs.hidapi ];
 
   extraInstallCommands = ''
     # Add desktop convencience stuff
diff --git a/pkgs/applications/misc/transifex-cli/default.nix b/pkgs/applications/misc/transifex-cli/default.nix
index f03ea6eaed36..50c838ed9b31 100644
--- a/pkgs/applications/misc/transifex-cli/default.nix
+++ b/pkgs/applications/misc/transifex-cli/default.nix
@@ -5,13 +5,13 @@
 
 buildGoModule rec {
   pname = "transifex-cli";
-  version = "1.6.10";
+  version = "1.6.12";
 
   src = fetchFromGitHub {
     owner = "transifex";
     repo = "cli";
     rev = "v${version}";
-    sha256 = "sha256-76nmlZFLon9EquM7tQ/PReM1rxkzh7x1rNdaP3n4KKg=";
+    sha256 = "sha256-k26z/eFXjNijoth/hWXPfCv4/z6row9DRc9SEtnnX1o=";
   };
 
   vendorHash = "sha256-rcimaHr3fFeHSjZXw1w23cKISCT+9t8SgtPnY/uYGAU=";
diff --git a/pkgs/applications/misc/ttdl/default.nix b/pkgs/applications/misc/ttdl/default.nix
index d4a74e6bdbc1..a67742aa6330 100644
--- a/pkgs/applications/misc/ttdl/default.nix
+++ b/pkgs/applications/misc/ttdl/default.nix
@@ -5,16 +5,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "ttdl";
-  version = "4.2.1";
+  version = "4.3.0";
 
   src = fetchFromGitHub {
     owner = "VladimirMarkelov";
     repo = "ttdl";
     rev = "v${version}";
-    sha256 = "sha256-fspqUzF3QqFpd16J1dbcNMdqjcR3PIiRu/s+VB4KgwQ=";
+    sha256 = "sha256-5v3Eu85x3xNvTRgfxhlDz4hiJ4UO010pZPY7UPHk7mQ=";
   };
 
-  cargoHash = "sha256-dvzm9lbVGGM4t6KZcHSlqwo55jssxi8HyFREMaj5I0Q=";
+  cargoHash = "sha256-+jYl/oUeJaABgDX/OBTyeo/B7RYc2MUTreU1ySLG0XQ=";
 
   meta = with lib; {
     description = "A CLI tool to manage todo lists in todo.txt format";
diff --git a/pkgs/applications/misc/tuba/default.nix b/pkgs/applications/misc/tuba/default.nix
index 9c70ab85ae03..b99b76511be4 100644
--- a/pkgs/applications/misc/tuba/default.nix
+++ b/pkgs/applications/misc/tuba/default.nix
@@ -21,18 +21,19 @@
 , libsecret
 , libwebp
 , libspelling
+, icu
 , gst_all_1
 , nix-update-script
 }:
 
 stdenv.mkDerivation rec {
   pname = "tuba";
-  version = "0.6.3";
+  version = "0.7.2";
   src = fetchFromGitHub {
     owner = "GeopJr";
     repo = "Tuba";
     rev = "v${version}";
-    hash = "sha256-AdUXKiTMC/0R4RI9I9Y/x0mNwhtUEIBke4Mm9lu9CX8=";
+    hash = "sha256-PRbepitFSvdw/7y5VlnSdsQwnlTQg4ktM4t1/x6SmAY=";
   };
 
   nativeBuildInputs = [
@@ -59,6 +60,7 @@ stdenv.mkDerivation rec {
     libsecret
     libwebp
     libspelling
+    icu
   ] ++ (with gst_all_1; [
     gstreamer
     gst-libav
diff --git a/pkgs/applications/misc/tuhi/default.nix b/pkgs/applications/misc/tuhi/default.nix
index b3334c59c4a0..759ad401ede6 100644
--- a/pkgs/applications/misc/tuhi/default.nix
+++ b/pkgs/applications/misc/tuhi/default.nix
@@ -8,7 +8,7 @@
 , glib
 , gtk3
 , gobject-introspection
-, wrapGAppsHook
+, wrapGAppsHook3
 , fetchFromGitHub
 }:
 
@@ -33,7 +33,7 @@ python3Packages.buildPythonApplication rec {
   nativeBuildInputs = [
     pkg-config meson ninja
     appstream-glib desktop-file-utils
-    wrapGAppsHook
+    wrapGAppsHook3
     gobject-introspection
   ];
   buildInputs = [
diff --git a/pkgs/applications/misc/tui-journal/default.nix b/pkgs/applications/misc/tui-journal/default.nix
index 555af71d3725..102b9ad354df 100644
--- a/pkgs/applications/misc/tui-journal/default.nix
+++ b/pkgs/applications/misc/tui-journal/default.nix
@@ -11,16 +11,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "tui-journal";
-  version = "0.8.3";
+  version = "0.8.4";
 
   src = fetchFromGitHub {
     owner = "AmmarAbouZor";
     repo = "tui-journal";
     rev = "v${version}";
-    hash = "sha256-G8p1eaHebUH2lFNyC2njUzZacE6rayApCb7PBFcpKLk=";
+    hash = "sha256-SgpIR7gLfmX6mCtuqRonqzX07Eblp9Mq80y71b05FZY=";
   };
 
-  cargoHash = "sha256-iM5PsgCUxBbjeWGEIohZwMiCIdXqj/bhFoL0GtVKKq4=";
+  cargoHash = "sha256-SetNhIengAiLRMHoYBRxHR1LgzYywRC7L6hmRF9COik=";
 
   nativeBuildInputs = [
     pkg-config
diff --git a/pkgs/applications/misc/tzupdate/default.nix b/pkgs/applications/misc/tzupdate/default.nix
index 7ca8c9f97345..1bd2eece184c 100644
--- a/pkgs/applications/misc/tzupdate/default.nix
+++ b/pkgs/applications/misc/tzupdate/default.nix
@@ -18,7 +18,7 @@ buildPythonApplication rec {
     description = "Update timezone information based on geoip";
     mainProgram = "tzupdate";
     homepage = "https://github.com/cdown/tzupdate";
-    maintainers = [ maintainers.michaelpj ];
+    maintainers = [ ];
     license = licenses.unlicense;
   };
 }
diff --git a/pkgs/applications/misc/udiskie/default.nix b/pkgs/applications/misc/udiskie/default.nix
index 94ea64d3792b..7df3f1d23b9c 100644
--- a/pkgs/applications/misc/udiskie/default.nix
+++ b/pkgs/applications/misc/udiskie/default.nix
@@ -9,7 +9,7 @@
 , librsvg
 , python3
 , udisks2
-, wrapGAppsHook
+, wrapGAppsHook3
 , testers
 , udiskie
 }:
@@ -40,7 +40,7 @@ python3.pkgs.buildPythonApplication rec {
     gobject-introspection
     installShellFiles
     python3.pkgs.setuptools
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   dontWrapGApps = true;
diff --git a/pkgs/applications/misc/ulauncher/default.nix b/pkgs/applications/misc/ulauncher/default.nix
index 080e96359e5a..9c455fa6ba72 100644
--- a/pkgs/applications/misc/ulauncher/default.nix
+++ b/pkgs/applications/misc/ulauncher/default.nix
@@ -7,7 +7,7 @@
 , gnome
 , gobject-introspection
 , gtk3
-, wrapGAppsHook
+, wrapGAppsHook3
 , webkitgtk
 , libnotify
 , keybinder3
@@ -32,7 +32,7 @@ python3Packages.buildPythonApplication rec {
     distutils-extra
     gobject-introspection
     intltool
-    wrapGAppsHook
+    wrapGAppsHook3
     gdk-pixbuf
   ];
 
diff --git a/pkgs/applications/misc/unipicker/default.nix b/pkgs/applications/misc/unipicker/default.nix
deleted file mode 100644
index e13d27ce4408..000000000000
--- a/pkgs/applications/misc/unipicker/default.nix
+++ /dev/null
@@ -1,41 +0,0 @@
-{ stdenv, fetchFromGitHub, lib, fzf, xclip }:
-
-stdenv.mkDerivation rec {
-   pname = "unipicker";
-   version = "2.0.1";
-
-   src = fetchFromGitHub {
-      owner = "jeremija";
-      repo = pname;
-      rev = "v${version}";
-      sha256 = "1k4v53pm3xivwg9vq2kndpcmah0yn4679r5jzxvg38bbkfdk86c1";
-   };
-
-   buildInputs = [
-      fzf
-      xclip
-   ];
-
-   preInstall = ''
-      substituteInPlace unipicker \
-        --replace "/etc/unipickerrc" "$out/etc/unipickerrc" \
-        --replace "fzf" "${fzf}/bin/fzf"
-      substituteInPlace unipickerrc \
-        --replace "/usr/local" "$out" \
-        --replace "fzf" "${fzf}/bin/fzf"
-   '';
-
-   makeFlags = [
-      "PREFIX=$(out)"
-      "DESTDIR=$(out)"
-   ];
-
-   meta = with lib; {
-    description = "A CLI utility for searching unicode characters by description and optionally copying them to clipboard";
-    homepage = "https://github.com/jeremija/unipicker";
-    license = licenses.mit;
-    maintainers = with maintainers; [ ];
-    platforms = platforms.unix;
-    mainProgram = "unipicker";
-   };
-}
diff --git a/pkgs/applications/misc/upwork/default.nix b/pkgs/applications/misc/upwork/default.nix
index e1cf49f61aec..6375b2537258 100644
--- a/pkgs/applications/misc/upwork/default.nix
+++ b/pkgs/applications/misc/upwork/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, requireFile, dpkg, wrapGAppsHook, autoPatchelfHook
+{ lib, stdenv, requireFile, dpkg, wrapGAppsHook3, autoPatchelfHook
 , alsa-lib, atk, at-spi2-atk, at-spi2-core, cairo, cups, dbus, expat, fontconfig, freetype
 , gdk-pixbuf, glib, gtk3, libcxx, libdrm, libnotify, libpulseaudio, libuuid, libX11, libxcb
 , libXcomposite, libXcursor, libXdamage, libXext, libXfixes, libXi, libXrandr, libXrender
@@ -16,7 +16,7 @@ stdenv.mkDerivation rec {
 
   nativeBuildInputs = [
     dpkg
-    wrapGAppsHook
+    wrapGAppsHook3
     autoPatchelfHook
   ];
 
diff --git a/pkgs/applications/misc/variety/default.nix b/pkgs/applications/misc/variety/default.nix
index e26496718f39..e90a8e9a1e01 100644
--- a/pkgs/applications/misc/variety/default.nix
+++ b/pkgs/applications/misc/variety/default.nix
@@ -10,7 +10,7 @@
 , librsvg
 , python3
 , runtimeShell
-, wrapGAppsHook
+, wrapGAppsHook3
 , fehSupport ? false
 , feh
 , imagemagickSupport ? true
@@ -32,7 +32,7 @@ python3.pkgs.buildPythonApplication rec {
 
   nativeBuildInputs = [
     intltool
-    wrapGAppsHook
+    wrapGAppsHook3
     gobject-introspection
   ];
 
diff --git a/pkgs/applications/misc/veracrypt/default.nix b/pkgs/applications/misc/veracrypt/default.nix
index 66aca8645adc..a7b0eed9037b 100644
--- a/pkgs/applications/misc/veracrypt/default.nix
+++ b/pkgs/applications/misc/veracrypt/default.nix
@@ -13,7 +13,7 @@
 , ntfs3g
 , btrfs-progs
 , pcsclite
-, wrapGAppsHook
+, wrapGAppsHook3
 }:
 
 stdenv.mkDerivation rec {
@@ -39,7 +39,7 @@ stdenv.mkDerivation rec {
 
   sourceRoot = "src";
 
-  nativeBuildInputs = [ makeself pkg-config yasm wrapGAppsHook ];
+  nativeBuildInputs = [ makeself pkg-config yasm wrapGAppsHook3 ];
   buildInputs = [ fuse lvm2 wxGTK pcsclite ];
 
   enableParallelBuilding = true;
diff --git a/pkgs/applications/misc/viking/default.nix b/pkgs/applications/misc/viking/default.nix
index 8a987ed24672..1335d950405f 100644
--- a/pkgs/applications/misc/viking/default.nix
+++ b/pkgs/applications/misc/viking/default.nix
@@ -1,6 +1,6 @@
 { lib, stdenv, fetchurl, fetchpatch
 , desktopToDarwinBundle
-, docbook_xml_dtd_45, docbook_xsl, intltool, itstool, libxslt, pkg-config, wrapGAppsHook, yelp-tools
+, docbook_xml_dtd_45, docbook_xsl, intltool, itstool, libxslt, pkg-config, wrapGAppsHook3, yelp-tools
 , curl, gdk-pixbuf, gtk3, json-glib, libxml2
 , gpsbabel
 , withGeoClue ? true, geoclue2
@@ -30,7 +30,7 @@ stdenv.mkDerivation rec {
     })
   ];
 
-  nativeBuildInputs = [ docbook_xml_dtd_45 docbook_xsl intltool itstool libxslt pkg-config wrapGAppsHook yelp-tools ]
+  nativeBuildInputs = [ docbook_xml_dtd_45 docbook_xsl intltool itstool libxslt pkg-config wrapGAppsHook3 yelp-tools ]
     ++ lib.optional stdenv.isDarwin desktopToDarwinBundle;
 
   buildInputs = [ curl gdk-pixbuf gtk3 json-glib libxml2 ]
diff --git a/pkgs/applications/misc/volnoti/default.nix b/pkgs/applications/misc/volnoti/default.nix
index bd61cd753f98..f03de6d9e658 100644
--- a/pkgs/applications/misc/volnoti/default.nix
+++ b/pkgs/applications/misc/volnoti/default.nix
@@ -1,6 +1,6 @@
 { lib, stdenv, fetchFromGitHub, fetchpatch
 , pkg-config, dbus, gdk-pixbuf, glib, libX11, gtk2, librsvg
-, dbus-glib, autoreconfHook, wrapGAppsHook }:
+, dbus-glib, autoreconfHook, wrapGAppsHook3 }:
 
 stdenv.mkDerivation {
   pname = "volnoti-unstable";
@@ -22,7 +22,7 @@ stdenv.mkDerivation {
     })
   ];
 
-  nativeBuildInputs = [ pkg-config autoreconfHook wrapGAppsHook ];
+  nativeBuildInputs = [ pkg-config autoreconfHook wrapGAppsHook3 ];
 
   buildInputs = [
     dbus gdk-pixbuf glib libX11 gtk2 dbus-glib librsvg
diff --git a/pkgs/applications/misc/waypaper/default.nix b/pkgs/applications/misc/waypaper/default.nix
index 36f79865d31a..a8dae9664264 100644
--- a/pkgs/applications/misc/waypaper/default.nix
+++ b/pkgs/applications/misc/waypaper/default.nix
@@ -2,24 +2,24 @@
 , python3
 , fetchFromGitHub
 , gobject-introspection
-, wrapGAppsHook
+, wrapGAppsHook3
 , killall
 }:
 
 python3.pkgs.buildPythonApplication rec {
   pname = "waypaper";
-  version = "2.1";
+  version = "2.1.2";
 
   src = fetchFromGitHub {
     owner = "anufrievroman";
     repo = "waypaper";
     rev = "refs/tags/${version}";
-    hash = "sha256-AIOrn5I0WX8S4iaK6mVEbdn1tQiED0JYA0GXDXJ6eNE=";
+    hash = "sha256-GB+H2kZr1+UhhGFpfXc3V4DPXjvHBdg6EKNEFhjKEHk=";
   };
 
   nativeBuildInputs = [
     gobject-introspection
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   propagatedBuildInputs = [
diff --git a/pkgs/applications/misc/wmenu/default.nix b/pkgs/applications/misc/wmenu/default.nix
index 23d9f2404ea2..72d437f74cc4 100644
--- a/pkgs/applications/misc/wmenu/default.nix
+++ b/pkgs/applications/misc/wmenu/default.nix
@@ -16,7 +16,7 @@
 
 stdenv.mkDerivation rec {
   pname = "wmenu";
-  version = "0.1.7";
+  version = "0.1.8";
 
   strictDeps = true;
 
@@ -24,17 +24,9 @@ stdenv.mkDerivation rec {
     owner = "~adnano";
     repo = "wmenu";
     rev = version;
-    hash = "sha256-9do7zL7yaZuqVjastySwjsByo5ja+KUP3590VjIyVnI=";
+    hash = "sha256-gVoqRHQ5bcY58LTgKxpPM1PnZJrLRoSOJUiYYqc/vRI=";
   };
 
-  # Upstream patch needed to fix NULL deref
-  patches = [
-    (fetchpatch {
-      url = "https://git.sr.ht/~adnano/wmenu/commit/2856dddcac861ddf248143e66ba164d7aa05a0bb.patch";
-      hash = "sha256-P7SEjMssA8unNAlrgrTHm0uW5pefjpupPb4s/u2fTAM=";
-    })
-  ];
-
   nativeBuildInputs = [ pkg-config meson ninja wayland-scanner ];
   buildInputs = [ cairo pango wayland libxkbcommon wayland-protocols scdoc ];
 
diff --git a/pkgs/applications/misc/wofi-emoji/default.nix b/pkgs/applications/misc/wofi-emoji/default.nix
index 38f0f8318134..81ba584cc246 100644
--- a/pkgs/applications/misc/wofi-emoji/default.nix
+++ b/pkgs/applications/misc/wofi-emoji/default.nix
@@ -1,22 +1,37 @@
-{ stdenv, lib, fetchurl, fetchFromGitHub, jq, wofi, wtype, wl-clipboard }:
+{
+  stdenv,
+  lib,
+  fetchurl,
+  fetchFromGitHub,
+  jq,
+  wofi,
+  wtype,
+  wl-clipboard,
+}:
 
-let emojiJSON = fetchurl {
-  url = "https://raw.githubusercontent.com/muan/emojilib/v3.0.10/dist/emoji-en-US.json";
-  hash = "sha256-UhAB5hVp5vV2d1FjIb2TBd2FJ6OPBbiP31HGAEDQFnA=";};
+let
+  emojiJSON = fetchurl {
+    url = "https://raw.githubusercontent.com/muan/emojilib/v3.0.11/dist/emoji-en-US.json";
+    hash = "sha256-WHqCSNgDzc6ZASdVrwPvsU4MtBcYLKDp2D2Hykrq1sI=";
+  };
 in
 stdenv.mkDerivation rec {
   pname = "wofi-emoji";
-  version = "unstable-2023-12-22";
+  version = "1.0.0";
 
   src = fetchFromGitHub {
     owner = "Zeioth";
-    repo = pname;
-    rev = "2cc95880848134a3bbe0675bcb62a0dae1d0f572";
-    hash = "sha256-t9M8z8JxuvBDzNs98L7YTNUfTK23W1DYGdHDiXNQOgk=";
+    repo = "wofi-emoji";
+    rev = "v${version}";
+    hash = "sha256-wLZK7RcDxxlYuu27WNj+SoRoBiCqk9whp4Fyg0SOoPA=";
   };
 
   nativeBuildInputs = [ jq ];
-  buildInputs = [ wofi wtype wl-clipboard ];
+  buildInputs = [
+    wofi
+    wtype
+    wl-clipboard
+  ];
 
   postPatch = ''
     substituteInPlace build.sh \
@@ -44,12 +59,12 @@ stdenv.mkDerivation rec {
     runHook postInstall
   '';
 
-  meta = with lib; {
+  meta = {
     description = "Simple emoji selector for Wayland using wofi and wl-clipboard";
     homepage = "https://github.com/Zeioth/wofi-emoji";
-    license = licenses.mit;
-    maintainers = [ maintainers.ymarkus ];
-    platforms = platforms.all;
+    license = lib.licenses.mit;
+    maintainers = with lib.maintainers; [ johnrtitor ymarkus ];
+    platforms = lib.platforms.all;
     mainProgram = "wofi-emoji";
   };
 }
diff --git a/pkgs/applications/misc/wofi/default.nix b/pkgs/applications/misc/wofi/default.nix
index 30e7072644f3..fc124c56eb56 100644
--- a/pkgs/applications/misc/wofi/default.nix
+++ b/pkgs/applications/misc/wofi/default.nix
@@ -6,7 +6,7 @@
 , ninja
 , wayland
 , gtk3
-, wrapGAppsHook
+, wrapGAppsHook3
 , installShellFiles
 }:
 stdenv.mkDerivation rec {
@@ -21,7 +21,7 @@ stdenv.mkDerivation rec {
     vc = "hg";
   };
 
-  nativeBuildInputs = [ pkg-config meson ninja wrapGAppsHook installShellFiles ];
+  nativeBuildInputs = [ pkg-config meson ninja wrapGAppsHook3 installShellFiles ];
   buildInputs = [ wayland gtk3 ];
 
   patches = [
diff --git a/pkgs/applications/misc/workrave/default.nix b/pkgs/applications/misc/workrave/default.nix
index c4a5e692cfca..ebe09f8b861c 100644
--- a/pkgs/applications/misc/workrave/default.nix
+++ b/pkgs/applications/misc/workrave/default.nix
@@ -1,7 +1,7 @@
 { lib
 , stdenv
 , fetchFromGitHub
-, wrapGAppsHook
+, wrapGAppsHook3
 , autoconf
 , autoconf-archive
 , automake
@@ -53,7 +53,7 @@ stdenv.mkDerivation rec {
     intltool
     libtool
     pkg-config
-    wrapGAppsHook
+    wrapGAppsHook3
     jinja2
     gobject-introspection
   ];
diff --git a/pkgs/applications/misc/xautoclick/default.nix b/pkgs/applications/misc/xautoclick/default.nix
index 3429e80f0540..68daf189fc9b 100644
--- a/pkgs/applications/misc/xautoclick/default.nix
+++ b/pkgs/applications/misc/xautoclick/default.nix
@@ -1,6 +1,6 @@
 { lib, stdenv, fetchFromGitHub, xorg, pkg-config
 , cmake, libevdev
-, gtkSupport ? true, gtk3, pcre, glib, wrapGAppsHook
+, gtkSupport ? true, gtk3, pcre, glib, wrapGAppsHook3
 , fltkSupport ? true, fltk
 , qtSupport ? true, qt5
 }:
@@ -18,7 +18,7 @@ stdenv.mkDerivation rec {
 
   nativeBuildInputs = [ cmake pkg-config ];
   buildInputs = [ libevdev xorg.libXtst ]
-    ++ lib.optionals gtkSupport [ gtk3 pcre glib wrapGAppsHook ]
+    ++ lib.optionals gtkSupport [ gtk3 pcre glib wrapGAppsHook3 ]
     ++ lib.optionals fltkSupport [ fltk ]
     ++ lib.optionals qtSupport [ qt5.qtbase qt5.wrapQtAppsHook ];
 
diff --git a/pkgs/applications/misc/xdgmenumaker/default.nix b/pkgs/applications/misc/xdgmenumaker/default.nix
index 130b97189a62..f2953805ff29 100644
--- a/pkgs/applications/misc/xdgmenumaker/default.nix
+++ b/pkgs/applications/misc/xdgmenumaker/default.nix
@@ -6,7 +6,7 @@
 , pango
 , python3Packages
 , txt2tags
-, wrapGAppsHook
+, wrapGAppsHook3
 , gitUpdater
 }:
 
@@ -30,7 +30,7 @@ python3Packages.buildPythonApplication rec {
   nativeBuildInputs = [
     gobject-introspection
     txt2tags
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
diff --git a/pkgs/applications/misc/xiphos/default.nix b/pkgs/applications/misc/xiphos/default.nix
index 994127baca6d..83690f129bff 100644
--- a/pkgs/applications/misc/xiphos/default.nix
+++ b/pkgs/applications/misc/xiphos/default.nix
@@ -23,7 +23,7 @@
 , pkg-config
 , sword
 , webkitgtk
-, wrapGAppsHook
+, wrapGAppsHook3
 , yelp-tools
 , zip
 }:
@@ -64,7 +64,7 @@ stdenv.mkDerivation rec {
     itstool
     libxslt
     pkg-config
-    wrapGAppsHook
+    wrapGAppsHook3
     yelp-tools # for yelp-build
     zip # for building help epubs
   ];
diff --git a/pkgs/applications/misc/xneur/default.nix b/pkgs/applications/misc/xneur/default.nix
index e282d84f9c93..6f99290c517a 100644
--- a/pkgs/applications/misc/xneur/default.nix
+++ b/pkgs/applications/misc/xneur/default.nix
@@ -5,7 +5,7 @@
 , autoreconfHook
 , intltool
 , pkg-config
-, wrapGAppsHook
+, wrapGAppsHook3
 , enchant
 , gdk-pixbuf
 , glib
@@ -29,7 +29,7 @@ stdenv.mkDerivation {
     autoreconfHook
     intltool
     pkg-config
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
diff --git a/pkgs/applications/misc/xpad/default.nix b/pkgs/applications/misc/xpad/default.nix
index 13b29491bf3f..d945ae7ff0ba 100644
--- a/pkgs/applications/misc/xpad/default.nix
+++ b/pkgs/applications/misc/xpad/default.nix
@@ -1,5 +1,5 @@
 { lib, stdenv, fetchurl
-, autoreconfHook, pkg-config, wrapGAppsHook
+, autoreconfHook, pkg-config, wrapGAppsHook3
 , glib, intltool, gtk3, gtksourceview }:
 
 stdenv.mkDerivation rec {
@@ -11,7 +11,7 @@ stdenv.mkDerivation rec {
     sha256 = "1qpmlwn0bcw1q73ag0l0fdnlzmwawfvsy4g9y5b0vyrc58lcp5d3";
   };
 
-  nativeBuildInputs = [ autoreconfHook pkg-config wrapGAppsHook intltool ];
+  nativeBuildInputs = [ autoreconfHook pkg-config wrapGAppsHook3 intltool ];
 
   buildInputs = [ glib gtk3 gtksourceview ];
 
diff --git a/pkgs/applications/misc/yambar/default.nix b/pkgs/applications/misc/yambar/default.nix
index ee679a630b60..378db968c9bb 100644
--- a/pkgs/applications/misc/yambar/default.nix
+++ b/pkgs/applications/misc/yambar/default.nix
@@ -32,14 +32,14 @@
 assert (x11Support || waylandSupport);
 stdenv.mkDerivation (finalAttrs: {
   pname = "yambar";
-  version = "1.10.0";
+  version = "1.11.0";
 
   src = fetchFromGitea {
     domain = "codeberg.org";
     owner = "dnkl";
     repo = "yambar";
     rev = finalAttrs.version;
-    hash = "sha256-+bNTEPGV5xaVXhsejyK+FCcJ9J06KS6x7/qo6P2DnZI=";
+    hash = "sha256-QCwwMpBYuMWYqxE2ugPFpG/QtZDW7VsSBYs5EqKYejA=";
   };
 
   outputs = [ "out" "man" ];
diff --git a/pkgs/applications/misc/zathura/core/default.nix b/pkgs/applications/misc/zathura/core/default.nix
index 3b529c18f52d..8b452c7f1a40 100644
--- a/pkgs/applications/misc/zathura/core/default.nix
+++ b/pkgs/applications/misc/zathura/core/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetchFromGitLab, meson, ninja, wrapGAppsHook, pkg-config, gitUpdater
+{ lib, stdenv, fetchFromGitLab, meson, ninja, wrapGAppsHook3, pkg-config, gitUpdater
 , appstream-glib, json-glib, desktop-file-utils, python3
 , gtk, girara, gettext, libxml2, check
 , sqlite, glib, texlive, libintl, libseccomp
@@ -34,7 +34,7 @@ stdenv.mkDerivation (finalAttrs: {
 
   nativeBuildInputs = [
     meson ninja pkg-config desktop-file-utils python3.pythonOnBuildForHost.pkgs.sphinx
-    gettext wrapGAppsHook libxml2 appstream-glib
+    gettext wrapGAppsHook3 libxml2 appstream-glib
   ];
 
   buildInputs = [
diff --git a/pkgs/applications/misc/zettlr/default.nix b/pkgs/applications/misc/zettlr/default.nix
index 75e310cdffec..593ca13f9fee 100644
--- a/pkgs/applications/misc/zettlr/default.nix
+++ b/pkgs/applications/misc/zettlr/default.nix
@@ -1,6 +1,6 @@
-{ callPackage, texliveMedium }:
+{ callPackage }:
 
-builtins.mapAttrs (pname: attrs: callPackage ./generic.nix (attrs // { inherit pname; inherit texliveMedium; })) {
+builtins.mapAttrs (pname: attrs: callPackage ./generic.nix (attrs // { inherit pname; })) {
   zettlr = {
     version = "3.0.2";
     hash = "sha256-xwBq+kLmTth15uLiYWJOhi/YSPZVJNO6JTrKFojSDXA=";
diff --git a/pkgs/applications/misc/zettlr/generic.nix b/pkgs/applications/misc/zettlr/generic.nix
index da45da749e2c..847d11c4f24c 100644
--- a/pkgs/applications/misc/zettlr/generic.nix
+++ b/pkgs/applications/misc/zettlr/generic.nix
@@ -4,8 +4,6 @@
 , appimageTools
 , lib
 , fetchurl
-, texliveMedium
-, pandoc
 }:
 
 # Based on https://gist.github.com/msteen/96cb7df66a359b827497c5269ccbbf94 and joplin-desktop nixpkgs.
@@ -21,8 +19,8 @@ in
 appimageTools.wrapType2 rec {
   inherit pname version src;
 
-  multiArch = false; # no 32bit needed
-  extraPkgs = pkgs: (appimageTools.defaultFhsEnvArgs.multiPkgs pkgs) ++ [ texliveMedium pandoc ];
+  extraPkgs = pkgs: [ pkgs.texliveMedium pkgs.pandoc ];
+
   extraInstallCommands = ''
     install -m 444 -D ${appimageContents}/Zettlr.desktop $out/share/applications/Zettlr.desktop
     install -m 444 -D ${appimageContents}/Zettlr.png $out/share/icons/hicolor/512x512/apps/Zettlr.png
diff --git a/pkgs/applications/networking/Sylk/default.nix b/pkgs/applications/networking/Sylk/default.nix
index 41ff2de95cee..a83742cf937c 100644
--- a/pkgs/applications/networking/Sylk/default.nix
+++ b/pkgs/applications/networking/Sylk/default.nix
@@ -17,9 +17,6 @@ appimageTools.wrapType2 rec {
     export LC_ALL=C.UTF-8
   '';
 
-  multiArch = false; # no 32bit needed
-  extraPkgs = appimageTools.defaultFhsEnvArgs.multiPkgs;
-
   meta = with lib; {
     description = "Sylk WebRTC client";
     homepage = "https://sylkserver.com/";
diff --git a/pkgs/applications/networking/avalanchego/default.nix b/pkgs/applications/networking/avalanchego/default.nix
index a6e0f5d58860..63d45b86fa7a 100644
--- a/pkgs/applications/networking/avalanchego/default.nix
+++ b/pkgs/applications/networking/avalanchego/default.nix
@@ -8,16 +8,16 @@
 
 buildGoModule rec {
   pname = "avalanchego";
-  version = "1.11.4";
+  version = "1.11.5";
 
   src = fetchFromGitHub {
     owner = "ava-labs";
     repo = pname;
     rev = "v${version}";
-    hash = "sha256-0YS+q1gy7YmTx/DwxaElBG1tzosXReXqPu6RpR3hTjw=";
+    hash = "sha256-IZ4Q67b+VsmBN/NEBPDzN2PYO8cVfLpHBU0tCo+v3Xc=";
   };
 
-  vendorHash = "sha256-et1PVLJQ/vBsg5438s6d9MA2oV40zahp9YKQOE0RX58=";
+  vendorHash = "sha256-z6MF/Kb///BSirdRycNs+7SMThv+yS7WmcrIcgiwBNg=";
   # go mod vendor has a bug, see: https://github.com/golang/go/issues/57529
   proxyVendor = true;
 
diff --git a/pkgs/applications/networking/browsers/badwolf/default.nix b/pkgs/applications/networking/browsers/badwolf/default.nix
index 5772586d8d4e..dabbdf898192 100644
--- a/pkgs/applications/networking/browsers/badwolf/default.nix
+++ b/pkgs/applications/networking/browsers/badwolf/default.nix
@@ -4,7 +4,7 @@
 , ninja
 , pkg-config
 , ed
-, wrapGAppsHook
+, wrapGAppsHook3
 , webkitgtk
 , libxml2
 , glib-networking
@@ -28,7 +28,7 @@ stdenv.mkDerivation rec {
     ninja
     pkg-config
     ed
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
diff --git a/pkgs/applications/networking/browsers/brave/default.nix b/pkgs/applications/networking/browsers/brave/default.nix
index 7971a05b8c55..2f105dbcd70f 100644
--- a/pkgs/applications/networking/browsers/brave/default.nix
+++ b/pkgs/applications/networking/browsers/brave/default.nix
@@ -6,17 +6,17 @@ callPackage ./make-brave.nix (removeAttrs args [ "callPackage" ])
     if stdenv.isAarch64 then
       {
         pname = "brave";
-        version = "1.65.122";
-        url = "https://github.com/brave/brave-browser/releases/download/v1.65.122/brave-browser_1.65.122_arm64.deb";
-        hash = "sha256-9xcXuK9Qdf8MwE3tcJLpTuJYMCjM3h27eFdgsT/yD38=";
+        version = "1.65.126";
+        url = "https://github.com/brave/brave-browser/releases/download/v1.65.126/brave-browser_1.65.126_arm64.deb";
+        hash = "sha256-v2PbixM9g+AhvR6tJ9QDbaXF7ERlBBrNMIsLofFbAfU=";
         platform = "aarch64-linux";
       }
     else if stdenv.isx86_64 then
       {
         pname = "brave";
-        version = "1.65.122";
-        url = "https://github.com/brave/brave-browser/releases/download/v1.65.122/brave-browser_1.65.122_amd64.deb";
-        hash = "sha256-zhRH/EG+8Qx9B2Gm5n9DYVwheyfiqIBwyYygART5b6A=";
+        version = "1.65.126";
+        url = "https://github.com/brave/brave-browser/releases/download/v1.65.126/brave-browser_1.65.126_amd64.deb";
+        hash = "sha256-DbdwCu9LwCeoH46egVY4AsOxcJDWilD2MdpyNdyJizw=";
         platform = "x86_64-linux";
       }
     else
diff --git a/pkgs/applications/networking/browsers/brave/make-brave.nix b/pkgs/applications/networking/browsers/brave/make-brave.nix
index 8fde41e60a16..f0b9fb6cf0c6 100644
--- a/pkgs/applications/networking/browsers/brave/make-brave.nix
+++ b/pkgs/applications/networking/browsers/brave/make-brave.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetchurl, wrapGAppsHook, makeWrapper
+{ lib, stdenv, fetchurl, wrapGAppsHook3, makeWrapper
 , alsa-lib
 , at-spi2-atk
 , at-spi2-core
@@ -112,7 +112,7 @@ stdenv.mkDerivation {
 
   nativeBuildInputs = [
     dpkg
-    (wrapGAppsHook.override { inherit makeWrapper; })
+    (wrapGAppsHook3.override { inherit makeWrapper; })
   ];
 
   buildInputs = [
diff --git a/pkgs/applications/networking/browsers/castor/default.nix b/pkgs/applications/networking/browsers/castor/default.nix
index 6d35a7091e8f..f02ae0f6e05e 100644
--- a/pkgs/applications/networking/browsers/castor/default.nix
+++ b/pkgs/applications/networking/browsers/castor/default.nix
@@ -2,7 +2,7 @@
 , fetchFromSourcehut
 , rustPlatform
 , pkg-config
-, wrapGAppsHook
+, wrapGAppsHook3
 , openssl
 , gtk3
 , gdk-pixbuf
@@ -26,7 +26,7 @@ rustPlatform.buildRustPackage rec {
 
   nativeBuildInputs = [
     pkg-config
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
diff --git a/pkgs/applications/networking/browsers/chromium/common.nix b/pkgs/applications/networking/browsers/chromium/common.nix
index a59efb64d935..259309757b11 100644
--- a/pkgs/applications/networking/browsers/chromium/common.nix
+++ b/pkgs/applications/networking/browsers/chromium/common.nix
@@ -1,6 +1,7 @@
 { stdenv, lib, fetchurl, fetchpatch
 , recompressTarball
 , buildPackages
+, buildPlatform
 , pkgsBuildBuild
 , pkgsBuildTarget
 # Channel data:
@@ -114,9 +115,6 @@ let
     # "opus"
   ];
 
-  opusWithCustomModes = libopus.override {
-    withCustomModes = true;
-  };
 
   # build paths and release info
   packageName = extraAttrs.packageName or extraAttrs.name;
@@ -175,7 +173,6 @@ let
       buildPlatformLlvmStdenv.cc
       pkg-config
       libuuid
-      (libpng.override { apngSupport = false; }) # needed for "host/generate_colors_info"
     ]
     # When cross-compiling, chromium builds a huge proportion of its
     # components for both the `buildPlatform` (which it calls
@@ -183,12 +180,39 @@ let
     # half of the dependencies are needed here.  To avoid having to
     # maintain a separate list of buildPlatform-dependencies, we
     # simply throw in the kitchen sink.
-    ++ buildInputs
-    ;
+    # ** Because of overrides, we have to copy the list as it otherwise mess with splicing **
+    ++ [
+      (buildPackages.libpng.override { apngSupport = false; })  # https://bugs.chromium.org/p/chromium/issues/detail?id=752403
+      (buildPackages.libopus.override { withCustomModes = true; })
+      bzip2 flac speex
+      libevent expat libjpeg snappy
+      libcap
+      minizip libwebp
+      libusb1 re2
+      ffmpeg libxslt libxml2
+      nasm
+      nspr nss
+      util-linux alsa-lib
+      libkrb5
+      glib gtk3 dbus-glib
+      libXScrnSaver libXcursor libXtst libxshmfence libGLU libGL
+      mesa # required for libgbm
+      pciutils protobuf speechd libXdamage at-spi2-core
+      pipewire
+      libva
+      libdrm wayland mesa.drivers libxkbcommon
+      curl
+      libepoxy
+      libffi
+      libevdev
+    ] ++ lib.optional systemdSupport systemd
+      ++ lib.optionals cupsSupport [ libgcrypt cups ]
+      ++ lib.optional pulseSupport libpulseaudio;
 
     buildInputs = [
-      (libpng.override { apngSupport = false; }) # https://bugs.chromium.org/p/chromium/issues/detail?id=752403
-      bzip2 flac speex opusWithCustomModes
+      (libpng.override { apngSupport = false; })  # https://bugs.chromium.org/p/chromium/issues/detail?id=752403
+      (libopus.override { withCustomModes = true; })
+      bzip2 flac speex
       libevent expat libjpeg snappy
       libcap
       minizip libwebp
@@ -217,8 +241,26 @@ let
       ./patches/cross-compile.patch
       # Optional patch to use SOURCE_DATE_EPOCH in compute_build_timestamp.py (should be upstreamed):
       ./patches/no-build-timestamps.patch
-      # For bundling Widevine (DRM), might be replaceable via bundle_widevine_cdm=true in gnFlags:
-      ./patches/widevine-79.patch
+    ] ++ lib.optionals (packageName == "chromium") [
+      # This patch is limited to chromium and ungoogled-chromium because electron-source sets
+      # enable_widevine to false.
+      #
+      # The patch disables the automatic Widevine download (component) that happens at runtime
+      # completely (~/.config/chromium/WidevineCdm/). This would happen if chromium encounters DRM
+      # protected content or when manually opening chrome://components.
+      #
+      # It also prevents previously downloaded Widevine blobs in that location from being loaded and
+      # used at all, while still allowing the use of our -wv wrapper. This is because those old
+      # versions are out of out our control and may be vulnerable, given we literally disable their
+      # auto updater.
+      #
+      # bundle_widevine_cdm is available as gn flag, but we cannot use it, as it expects a bunch of
+      # files Widevine files at configure/compile phase that we don't have. Changing the value of the
+      # BUNDLE_WIDEVINE_CDM build flag does work in the way we want though.
+      # We also need enable_widevine_cdm_component to be false. Unfortunately it isn't exposed as gn
+      # flag (declare_args) so we simply hardcode it to false.
+      ./patches/widevine-disable-auto-download-allow-bundle.patch
+    ] ++ [
       # Required to fix the build with a more recent wayland-protocols version
       # (we currently package 1.26 in Nixpkgs while Chromium bundles 1.21):
       # Source: https://bugs.chromium.org/p/angleproject/issues/detail?id=7582#c1
@@ -248,15 +290,6 @@ let
       # Partial revert of https://github.com/chromium/chromium/commit/3687976b0c6d36cf4157419a24a39f6770098d61
       # allowing us to use our rustc and our clang.
       ./patches/chromium-121-rust.patch
-    ] ++ lib.optionals (chromiumVersionAtLeast "124" && !chromiumVersionAtLeast "124.0.6367.118") [
-      # M124 < 124.0.6367.118 shipped with broken --ozone-platform-hint flag handling, which we rely on
-      # for our NIXOS_OZONE_WL (wayland) environment variable.
-      # See <https://issues.chromium.org/issues/329678163>.
-      # This is the commit for the fix that landed in M125, which applies clean on M124.
-      (githubPatch {
-        commit = "c7f4c58f896a651eba80ad805ebdb49d19ebdbd4";
-        hash = "sha256-6nYWT2zN+j73xAIXLdGYT2eC71vGnGfiLCB0OwT0CAI=";
-      })
     ];
 
     postPatch = ''
@@ -403,10 +436,11 @@ let
       # Feature overrides:
       # Native Client support was deprecated in 2020 and support will end in June 2021:
       enable_nacl = false;
-      # Enabling the Widevine component here doesn't affect whether we can
-      # redistribute the chromium package; the Widevine component is either
-      # added later in the wrapped -wv build or downloaded from Google:
+    } // lib.optionalAttrs (packageName == "chromium") {
+      # Enabling the Widevine here doesn't affect whether we can redistribute the chromium package.
+      # Widevine in this drv is a bit more complex than just that. See Widevine patch somewhere above.
       enable_widevine = true;
+    } // {
       # Provides the enable-webrtc-pipewire-capturer flag to support Wayland screen capture:
       rtc_use_pipewire = true;
       # Disable PGO because the profile data requires a newer compiler version (LLVM 14 isn't sufficient):
diff --git a/pkgs/applications/networking/browsers/chromium/default.nix b/pkgs/applications/networking/browsers/chromium/default.nix
index 9da0f725ed56..afd25b972d78 100644
--- a/pkgs/applications/networking/browsers/chromium/default.nix
+++ b/pkgs/applications/networking/browsers/chromium/default.nix
@@ -5,6 +5,7 @@
 , libva, pipewire, wayland
 , gcc, nspr, nss, runCommand
 , lib, libkrb5
+, widevine-cdm
 , electron-source # for warnObsoleteVersionConditional
 
 # package customization
@@ -74,78 +75,6 @@ let
     ungoogled-chromium = pkgsBuildBuild.callPackage ./ungoogled.nix {};
   };
 
-  pkgSuffix = if channel == "dev" then "unstable" else
-    (if channel == "ungoogled-chromium" then "stable" else channel);
-  pkgName = "google-chrome-${pkgSuffix}";
-  chromeSrc =
-    let
-      # Use the latest stable Chrome version if necessary:
-      version = if chromium.upstream-info.hash_deb_amd64 != null
-        then chromium.upstream-info.version
-        else (import ./upstream-info.nix).stable.version;
-      hash = if chromium.upstream-info.hash_deb_amd64 != null
-        then chromium.upstream-info.hash_deb_amd64
-        else (import ./upstream-info.nix).stable.hash_deb_amd64;
-    in fetchurl {
-      urls = map (repo: "${repo}/${pkgName}/${pkgName}_${version}-1_amd64.deb") [
-        "https://dl.google.com/linux/chrome/deb/pool/main/g"
-        "http://95.31.35.30/chrome/pool/main/g"
-        "http://mirror.pcbeta.com/google/chrome/deb/pool/main/g"
-        "http://repo.fdzh.org/chrome/deb/pool/main/g"
-      ];
-      inherit hash;
-  };
-
-  mkrpath = p: "${lib.makeSearchPathOutput "lib" "lib64" p}:${lib.makeLibraryPath p}";
-  widevineCdm = stdenv.mkDerivation {
-    name = "chrome-widevine-cdm";
-
-    src = chromeSrc;
-
-    unpackCmd = let
-      widevineCdmPath =
-        if (channel == "stable" || channel == "ungoogled-chromium") then
-          "./opt/google/chrome/WidevineCdm"
-        else if channel == "beta" then
-          "./opt/google/chrome-beta/WidevineCdm"
-        else if channel == "dev" then
-          "./opt/google/chrome-unstable/WidevineCdm"
-        else
-          throw "Unknown chromium channel.";
-    in ''
-      # Extract just WidevineCdm from upstream's .deb file
-      ar p "$src" data.tar.xz | tar xJ "${widevineCdmPath}"
-
-      # Move things around so that we don't have to reference a particular
-      # chrome-* directory later.
-      mv "${widevineCdmPath}" ./
-
-      # unpackCmd wants a single output directory; let it take WidevineCdm/
-      rm -rf opt
-    '';
-
-    doCheck = true;
-    checkPhase = ''
-      ! find -iname '*.so' -exec ldd {} + | grep 'not found'
-    '';
-
-    PATCH_RPATH = mkrpath [ gcc.cc glib nspr nss ];
-
-    patchPhase = ''
-      patchelf --set-rpath "$PATCH_RPATH" _platform_specific/linux_x64/libwidevinecdm.so
-    '';
-
-    installPhase = ''
-      mkdir -p $out/WidevineCdm
-      cp -a * $out/WidevineCdm/
-    '';
-
-    meta = {
-      platforms = [ "x86_64-linux" ];
-      license = lib.licenses.unfree;
-    };
-  };
-
   suffix = lib.optionalString (channel != "stable" && channel != "ungoogled-chromium") ("-" + channel);
 
   sandboxExecutableName = chromium.browser.passthru.sandboxExecutableName;
@@ -159,7 +88,7 @@ let
         mkdir -p $out
         cp -a ${browser}/* $out/
         chmod u+w $out/libexec/chromium
-        cp -a ${widevineCdm}/WidevineCdm $out/libexec/chromium/
+        cp -a ${widevine-cdm}/share/google/chrome/WidevineCdm $out/libexec/chromium/
       ''
     else browser;
 
@@ -244,7 +173,7 @@ in stdenv.mkDerivation {
   passthru = {
     inherit (chromium) upstream-info browser;
     mkDerivation = chromium.mkChromiumDerivation;
-    inherit chromeSrc sandboxExecutableName;
+    inherit sandboxExecutableName;
   };
 }
 # the following is a complicated and long-winded variant of
diff --git a/pkgs/applications/networking/browsers/chromium/patches/widevine-79.patch b/pkgs/applications/networking/browsers/chromium/patches/widevine-79.patch
deleted file mode 100644
index 32f0ae2fb5e6..000000000000
--- a/pkgs/applications/networking/browsers/chromium/patches/widevine-79.patch
+++ /dev/null
@@ -1,13 +0,0 @@
-diff --git a/third_party/widevine/cdm/BUILD.gn b/third_party/widevine/cdm/BUILD.gn
-index ed0e2f5208b..5b431a030d5 100644
---- a/third_party/widevine/cdm/BUILD.gn
-+++ b/third_party/widevine/cdm/BUILD.gn
-@@ -14,7 +14,7 @@ buildflag_header("buildflags") {
- 
-   flags = [
-     "ENABLE_WIDEVINE=$enable_widevine",
--    "BUNDLE_WIDEVINE_CDM=$bundle_widevine_cdm",
-+    "BUNDLE_WIDEVINE_CDM=true",
-     "ENABLE_WIDEVINE_CDM_COMPONENT=$enable_widevine_cdm_component",
-   ]
- }
diff --git a/pkgs/applications/networking/browsers/chromium/patches/widevine-disable-auto-download-allow-bundle.patch b/pkgs/applications/networking/browsers/chromium/patches/widevine-disable-auto-download-allow-bundle.patch
new file mode 100644
index 000000000000..4ab2c9a8179b
--- /dev/null
+++ b/pkgs/applications/networking/browsers/chromium/patches/widevine-disable-auto-download-allow-bundle.patch
@@ -0,0 +1,28 @@
+diff --git a/third_party/widevine/cdm/BUILD.gn b/third_party/widevine/cdm/BUILD.gn
+index 525693b6c10ab..245491e137d39 100644
+--- a/third_party/widevine/cdm/BUILD.gn
++++ b/third_party/widevine/cdm/BUILD.gn
+@@ -22,7 +22,7 @@ buildflag_header("buildflags") {
+ 
+   flags = [
+     "ENABLE_WIDEVINE=$enable_widevine",
+-    "BUNDLE_WIDEVINE_CDM=$bundle_widevine_cdm",
++    "BUNDLE_WIDEVINE_CDM=true",
+     "ENABLE_WIDEVINE_CDM_COMPONENT=$enable_widevine_cdm_component",
+     "ENABLE_MEDIA_FOUNDATION_WIDEVINE_CDM=$enable_media_foundation_widevine_cdm",
+   ]
+diff --git a/third_party/widevine/cdm/widevine.gni b/third_party/widevine/cdm/widevine.gni
+index 8b97b7a57419e..69fe548ec2845 100644
+--- a/third_party/widevine/cdm/widevine.gni
++++ b/third_party/widevine/cdm/widevine.gni
+@@ -42,9 +42,7 @@ enable_library_widevine_cdm =
+ # desktop platforms. Not enabled for lacros (as it is changing to use the
+ # ash updated version). The CDM can be bundled regardless whether it's a
+ # component. See below.
+-enable_widevine_cdm_component =
+-    enable_library_widevine_cdm &&
+-    (is_win || is_mac || is_linux || is_chromeos_ash)
++enable_widevine_cdm_component = false
+ 
+ # Enable (Windows) Media Foundation Widevine CDM component.
+ declare_args() {
diff --git a/pkgs/applications/networking/browsers/chromium/update.py b/pkgs/applications/networking/browsers/chromium/update.py
index 29a46cd688c6..d92a9dae8a8c 100755
--- a/pkgs/applications/networking/browsers/chromium/update.py
+++ b/pkgs/applications/networking/browsers/chromium/update.py
@@ -20,7 +20,6 @@ from os.path import abspath, dirname
 from urllib.request import urlopen
 
 RELEASES_URL = 'https://versionhistory.googleapis.com/v1/chrome/platforms/linux/channels/all/versions/all/releases'
-DEB_URL = 'https://dl.google.com/linux/chrome/deb/pool/main/g'
 
 PIN_PATH = dirname(abspath(__file__)) + '/upstream-info.nix'
 UNGOOGLED_FLAGS_PATH = dirname(abspath(__file__)) + '/ungoogled-flags.toml'
@@ -259,10 +258,6 @@ with urlopen(RELEASES_URL) as resp:
                     version
                 )
                 src_hash_cache[version] = channel["hash"]
-
-            channel['hash_deb_amd64'] = nix_prefetch_url(
-                f'{DEB_URL}/google-chrome-{google_chrome_suffix}/' +
-                f'google-chrome-{google_chrome_suffix}_{version}-1_amd64.deb')
         except subprocess.CalledProcessError:
             # This release isn't actually available yet.  Continue to
             # the next one.
diff --git a/pkgs/applications/networking/browsers/chromium/upstream-info.nix b/pkgs/applications/networking/browsers/chromium/upstream-info.nix
index 345370868d71..db658cdda73a 100644
--- a/pkgs/applications/networking/browsers/chromium/upstream-info.nix
+++ b/pkgs/applications/networking/browsers/chromium/upstream-info.nix
@@ -1,39 +1,37 @@
 {
   stable = {
     chromedriver = {
-      hash_darwin = "sha256-RGOChK4JhrFUgVY/5YqgE0KFLRl6a7X2llw1ZfhiPXY=";
+      hash_darwin = "sha256-ahwPSPoB2h6Zq4ePbvSmYs3WNc+MpBXQYyYLf0ZS3ss=";
       hash_darwin_aarch64 =
-        "sha256-K1jFXmWtXrS43UJg2mQ39Kae6tv7E9Fxm6LUWg+uwLo=";
-      hash_linux = "sha256-xwaRNh7sllyNaq8+aLAZDQ3uDg06cu3KYqc02LWPSyw=";
-      version = "124.0.6367.91";
+        "sha256-NVqr/i4S4XP+z0+YT6CuDnmyN4GtS6ttyJDOQ05KB+0=";
+      hash_linux = "sha256-PKuhfBw5FblCUQ60yeQC0McvYu7gPfwwIW1ysN/MwVA=";
+      version = "125.0.6422.60";
     };
     deps = {
       gn = {
-        hash = "sha256-aEL1kIhgPAFqdb174dG093HoLhCJ07O1Kpqfu7r14wQ=";
-        rev = "22581fb46c0c0c9530caa67149ee4dd8811063cf";
+        hash = "sha256-lrVAb6La+cvuUCNI90O6M/sheOEVFTjgpfA3O/6Odp0=";
+        rev = "d823fd85da3fb83146f734377da454473b93a2b2";
         url = "https://gn.googlesource.com/gn";
-        version = "2024-03-14";
+        version = "2024-04-10";
       };
     };
-    hash = "sha256-+r/48dxipSAo74v1deMuKalW+Hj85hCun63ZcgLYDLk=";
-    hash_deb_amd64 = "sha256-H3bv6WiVBl4j38ROZ80+SD9UO9ok+xxcKFxDd9yjWNY=";
-    version = "124.0.6367.118";
+    hash = "sha256-ewX7oRna7IYCXhAe98HS5HbS1psIEAguhZJ1ymK+dPE=";
+    version = "125.0.6422.60";
   };
   ungoogled-chromium = {
     deps = {
       gn = {
-        hash = "sha256-aEL1kIhgPAFqdb174dG093HoLhCJ07O1Kpqfu7r14wQ=";
-        rev = "22581fb46c0c0c9530caa67149ee4dd8811063cf";
+        hash = "sha256-lrVAb6La+cvuUCNI90O6M/sheOEVFTjgpfA3O/6Odp0=";
+        rev = "d823fd85da3fb83146f734377da454473b93a2b2";
         url = "https://gn.googlesource.com/gn";
-        version = "2024-03-14";
+        version = "2024-04-10";
       };
       ungoogled-patches = {
-        hash = "sha256-1/J3BhUlef8CH/jZ5P5fWGXnWxTiuB0Ep+AWrMrv9cE=";
-        rev = "124.0.6367.91-1";
+        hash = "sha256-I3RQBa4LLuOdZQFKHIqePj9Ozw61dsuAOctqN1abij0=";
+        rev = "125.0.6422.60-1";
       };
     };
-    hash = "sha256-tajZtdiXgs5lRLTmDmgNTM2vD+N+LuWpBS0dYzxUsMA=";
-    hash_deb_amd64 = "sha256-CyCbZQ5ce8WLTt2JVSqbDkLDboE4BloiZ8pJff3dmSY=";
-    version = "124.0.6367.91";
+    hash = "sha256-ewX7oRna7IYCXhAe98HS5HbS1psIEAguhZJ1ymK+dPE=";
+    version = "125.0.6422.60";
   };
 }
diff --git a/pkgs/applications/networking/browsers/dillo/default.nix b/pkgs/applications/networking/browsers/dillo/default.nix
deleted file mode 100644
index ab79c1bd8f98..000000000000
--- a/pkgs/applications/networking/browsers/dillo/default.nix
+++ /dev/null
@@ -1,63 +0,0 @@
-{ lib
-, stdenv
-, fetchhg
-, autoreconfHook
-, fltk
-, libXcursor
-, libXi
-, libXinerama
-, libjpeg
-, libpng
-, mbedtls_2
-, openssl
-, perl
-, pkg-config
-, which
-}:
-
-stdenv.mkDerivation {
-  pname = "dillo";
-  version = "unstable-2021-02-09";
-
-  src = fetchhg {
-    url = "https://hg.sr.ht/~seirdy/dillo-mirror";
-    rev = "67b70f024568b505633524be61fcfbde5337849f";
-    sha256 = "sha256-lbn5u9oEL0zt9yBhznBS9Dz9/6kSwRDJeNXKEojty1g=";
-  };
-
-  nativeBuildInputs = [
-    autoreconfHook
-    pkg-config
-    which
-  ];
-
-  buildInputs = [
-    fltk
-    libXcursor
-    libXi
-    libXinerama
-    libjpeg
-    libpng
-    mbedtls_2
-    openssl
-    perl
-  ];
-
-  # Workaround build failure on -fno-common toolchains:
-  #   ld: main.o:/build/dillo-3.0.5/dpid/dpid.h:64: multiple definition of `sock_set';
-  #     dpid.o:/build/dillo-3.0.5/dpid/dpid.h:64: first defined here
-  env.NIX_CFLAGS_COMPILE = "-fcommon";
-
-  configureFlags = [ "--enable-ssl=yes" ];
-
-  meta = with lib; {
-    homepage = "https://hg.sr.ht/~seirdy/dillo-mirror";
-    description = "A fast graphical web browser with a small footprint";
-    longDescription = ''
-      Dillo is a small, fast web browser, tailored for older machines.
-    '';
-    maintainers = [ maintainers.AndersonTorres ];
-    platforms = platforms.linux;
-    license = licenses.gpl3Plus;
-  };
-}
diff --git a/pkgs/applications/networking/browsers/eolie/default.nix b/pkgs/applications/networking/browsers/eolie/default.nix
index 409319493a64..8649969d8c30 100644
--- a/pkgs/applications/networking/browsers/eolie/default.nix
+++ b/pkgs/applications/networking/browsers/eolie/default.nix
@@ -1,7 +1,7 @@
 { lib, fetchgit, meson, ninja, pkg-config, nix-update-script
 , python3, gtk3, libsecret, gst_all_1, webkitgtk, glib
 , glib-networking, gtkspell3, hunspell, desktop-file-utils
-, gobject-introspection, wrapGAppsHook, gnome }:
+, gobject-introspection, wrapGAppsHook3, gnome }:
 
 python3.pkgs.buildPythonApplication rec {
   pname = "eolie";
@@ -23,7 +23,7 @@ python3.pkgs.buildPythonApplication rec {
     meson
     ninja
     pkg-config
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = with gst_all_1; [
diff --git a/pkgs/applications/networking/browsers/ephemeral/default.nix b/pkgs/applications/networking/browsers/ephemeral/default.nix
index 4002d52715b3..41ae308ff031 100644
--- a/pkgs/applications/networking/browsers/ephemeral/default.nix
+++ b/pkgs/applications/networking/browsers/ephemeral/default.nix
@@ -14,7 +14,7 @@
 , pkg-config
 , python3
 , webkitgtk
-, wrapGAppsHook
+, wrapGAppsHook3
 , glib-networking
 }:
 
@@ -37,7 +37,7 @@ stdenv.mkDerivation rec {
     vala
     pkg-config
     python3
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
diff --git a/pkgs/applications/networking/browsers/firefox-bin/beta_sources.nix b/pkgs/applications/networking/browsers/firefox-bin/beta_sources.nix
index b96632f6df6e..438afcb47f3d 100644
--- a/pkgs/applications/networking/browsers/firefox-bin/beta_sources.nix
+++ b/pkgs/applications/networking/browsers/firefox-bin/beta_sources.nix
@@ -1,1025 +1,1025 @@
 {
-  version = "126.0b5";
+  version = "127.0b2";
   sources = [
-    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0b5/linux-x86_64/ach/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/127.0b2/linux-x86_64/ach/firefox-127.0b2.tar.bz2";
       locale = "ach";
       arch = "linux-x86_64";
-      sha256 = "7b882806b6cf50f3d1ca03600d75a99be305a029dbf23c98f4e78a9ae37971d2";
+      sha256 = "c7aae56e1d11690146e31f73c4f45dcc6cc17b70ee253d13dd9ce8f111056cbc";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0b5/linux-x86_64/af/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/127.0b2/linux-x86_64/af/firefox-127.0b2.tar.bz2";
       locale = "af";
       arch = "linux-x86_64";
-      sha256 = "caa21874c4bf34a8130902f9fb3515cdadb5aba45d1de703c243e941759fd791";
+      sha256 = "0ebbde167d241e133bdec7d552e1e788a82162d7c5e132307f638af8e7b42735";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0b5/linux-x86_64/an/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/127.0b2/linux-x86_64/an/firefox-127.0b2.tar.bz2";
       locale = "an";
       arch = "linux-x86_64";
-      sha256 = "627a705df2572943d4a0d79aa8c107a215d9f55c99d76ce395ed4e03d244deba";
+      sha256 = "f5c692093a7a37b197cfed2598dc0c3c9d74251c56a138c50bc1cc0e26aee7ce";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0b5/linux-x86_64/ar/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/127.0b2/linux-x86_64/ar/firefox-127.0b2.tar.bz2";
       locale = "ar";
       arch = "linux-x86_64";
-      sha256 = "f1f62fe5f81cea3aca86b58436ece8f3074fd71a3198686b8449200867511c97";
+      sha256 = "8a92915a3694d414dd784810842d1da28cbc1af13d207c1718fdacfa0bf0c0cf";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0b5/linux-x86_64/ast/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/127.0b2/linux-x86_64/ast/firefox-127.0b2.tar.bz2";
       locale = "ast";
       arch = "linux-x86_64";
-      sha256 = "df6cfc21cc15f619c019c48108d228b37531c6e5eb6e21b2ded2d56fbab277e7";
+      sha256 = "e754614bbbd6868318795e43bd067b0dede402c3c40866c6fed4e4ed177aecb8";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0b5/linux-x86_64/az/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/127.0b2/linux-x86_64/az/firefox-127.0b2.tar.bz2";
       locale = "az";
       arch = "linux-x86_64";
-      sha256 = "1a4addc76c8f5d4df74f4731571d680d3ce024530a94d91d9ce49abd899a7d26";
+      sha256 = "299ff13944cecb650402946cec2dc28a25ecc4d175932a646e5c8d1f985244de";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0b5/linux-x86_64/be/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/127.0b2/linux-x86_64/be/firefox-127.0b2.tar.bz2";
       locale = "be";
       arch = "linux-x86_64";
-      sha256 = "62c41d913c7cb3102baa8ad27df221cb889ea80240e038e0573bbb48ed5d69d5";
+      sha256 = "ecc04baedce51685f8ecad129fb62563eb6ce4c9f2d889b3ef1b9d99d9485114";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0b5/linux-x86_64/bg/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/127.0b2/linux-x86_64/bg/firefox-127.0b2.tar.bz2";
       locale = "bg";
       arch = "linux-x86_64";
-      sha256 = "a45e0c8dc7e3ea1a57a3f7e0dca7c2ab908d75ad81a312434e7b021defa5bd34";
+      sha256 = "be8464fa878ef4feb42fe5df414577474c3a753763d6956413c1896e014b1aca";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0b5/linux-x86_64/bn/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/127.0b2/linux-x86_64/bn/firefox-127.0b2.tar.bz2";
       locale = "bn";
       arch = "linux-x86_64";
-      sha256 = "810908bbcb86f7af0f79ffcde6e8f7026143390c1b73fa8a81a94b3a1478b107";
+      sha256 = "1af698eca255cd94ce65ccac0d0fdf9ebd360706b296b27a7c010f277493efcb";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0b5/linux-x86_64/br/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/127.0b2/linux-x86_64/br/firefox-127.0b2.tar.bz2";
       locale = "br";
       arch = "linux-x86_64";
-      sha256 = "e3031ab47d44f798f64399ad24ba58b49bf5bdc1a6fb6243d7c25f7064a751fe";
+      sha256 = "7ca811f059868cb830c1bf48278583eefb662a4af70d4ad838d695bbc8993cec";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0b5/linux-x86_64/bs/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/127.0b2/linux-x86_64/bs/firefox-127.0b2.tar.bz2";
       locale = "bs";
       arch = "linux-x86_64";
-      sha256 = "af2ad1f920ea9aaf36b6c53a0988bb64d118ee4188e6d4eab19b3c850d469101";
+      sha256 = "955a3e8010619360be944c52003d64ab21f87f2fe502dd9a64da927eab18bb95";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0b5/linux-x86_64/ca-valencia/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/127.0b2/linux-x86_64/ca-valencia/firefox-127.0b2.tar.bz2";
       locale = "ca-valencia";
       arch = "linux-x86_64";
-      sha256 = "1147f887f5a55686120e576178bac7c1d1f942972ca71278b2f7f8f68ec82902";
+      sha256 = "e7d014d5652fdbe7aecf0f03e1bfc7c5faf6162c4db457c173696e085d947fd3";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0b5/linux-x86_64/ca/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/127.0b2/linux-x86_64/ca/firefox-127.0b2.tar.bz2";
       locale = "ca";
       arch = "linux-x86_64";
-      sha256 = "70fbde5bd2c164c8dfc59d60ad2fe1cebd0bc004b77f6907fb85524dd43cc5f4";
+      sha256 = "78b66d258512ed91ec1264e15a8011d2ebbcf54e8c1b6aa7e938708b4b449561";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0b5/linux-x86_64/cak/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/127.0b2/linux-x86_64/cak/firefox-127.0b2.tar.bz2";
       locale = "cak";
       arch = "linux-x86_64";
-      sha256 = "7154ac05107c2a533835c41fdd2caa2725c794a1572269bb191d8c2bc0b70738";
+      sha256 = "254afadecf8023427b35ebb8892bddef4a28c74edb1111fd7463abad3253a2aa";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0b5/linux-x86_64/cs/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/127.0b2/linux-x86_64/cs/firefox-127.0b2.tar.bz2";
       locale = "cs";
       arch = "linux-x86_64";
-      sha256 = "6b78f1f546a2c98523fb0dd7215fad87ccd1a4e9dfa3e5695c46afcb74e003f2";
+      sha256 = "d9f7f85aa9d206585f569dac9e033203120c1828003cea384eaf029b735c72b3";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0b5/linux-x86_64/cy/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/127.0b2/linux-x86_64/cy/firefox-127.0b2.tar.bz2";
       locale = "cy";
       arch = "linux-x86_64";
-      sha256 = "9b08898afb1134a2de2c1236774a02354795cd8bb8f7d41130b137cb4d14b1a1";
+      sha256 = "3a14e4e0f24e9171957f17c1c4796ae011ce13be294c4eb9ccee88051337da05";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0b5/linux-x86_64/da/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/127.0b2/linux-x86_64/da/firefox-127.0b2.tar.bz2";
       locale = "da";
       arch = "linux-x86_64";
-      sha256 = "31571ea197dc8cd61b79c061ca32dfdc60d3b74f2dee43f2641d534ca83dca2f";
+      sha256 = "54ff12ab652e7732b399f9467a83958948762b937714e4a063b25584b3da4bf2";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0b5/linux-x86_64/de/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/127.0b2/linux-x86_64/de/firefox-127.0b2.tar.bz2";
       locale = "de";
       arch = "linux-x86_64";
-      sha256 = "f89bee1b43c832b710776280a25119846bf2a5f7c5cfb179bd6b5008c39bfe20";
+      sha256 = "5f62e89d986ccac338ac3188b50536ca5beccc8917a7fb115e2d375d51ed64d8";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0b5/linux-x86_64/dsb/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/127.0b2/linux-x86_64/dsb/firefox-127.0b2.tar.bz2";
       locale = "dsb";
       arch = "linux-x86_64";
-      sha256 = "881cc3a38e34d8083082de26b53d2e129273841dc6ab07f7cbb9af0222e0ca87";
+      sha256 = "3278591a5399a8f6e586909b5b5849f2f27fc6399c6be6917e53f067958076a3";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0b5/linux-x86_64/el/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/127.0b2/linux-x86_64/el/firefox-127.0b2.tar.bz2";
       locale = "el";
       arch = "linux-x86_64";
-      sha256 = "797b56a42f2034ef81aca234ac19374069dac7ff911e2077f65a9e8c05f17820";
+      sha256 = "5ddbb69bbeccb6457eb4beee49c07d2d5fbb8ec084d1d26ca86bcd2b5d6ac714";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0b5/linux-x86_64/en-CA/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/127.0b2/linux-x86_64/en-CA/firefox-127.0b2.tar.bz2";
       locale = "en-CA";
       arch = "linux-x86_64";
-      sha256 = "592abdec04a68e1d9d33eeeae10b7abddbdd0f7e92bf4bc9db92e8aedbc6dda2";
+      sha256 = "c7ec425ef808857a04eb6bb12edb6efa9aeea69e775aa0cf68c49eabde4f9043";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0b5/linux-x86_64/en-GB/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/127.0b2/linux-x86_64/en-GB/firefox-127.0b2.tar.bz2";
       locale = "en-GB";
       arch = "linux-x86_64";
-      sha256 = "8979a85a9f1b41ab5cb3f1ef3ea8252a4aca21930772f058964ad96ae685f92f";
+      sha256 = "6adabefd8ce08035576c0d27df6fe303265d6e5db3669a50d95588617c2dbd71";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0b5/linux-x86_64/en-US/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/127.0b2/linux-x86_64/en-US/firefox-127.0b2.tar.bz2";
       locale = "en-US";
       arch = "linux-x86_64";
-      sha256 = "8f96bbe7c30b3a8c43d05ec33e20f51353ad5ed207af93aa9eb886119f371b81";
+      sha256 = "91bfda5ff421d6db1577990555c2da4096c18ea7d7e4faa626bef572b75bd463";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0b5/linux-x86_64/eo/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/127.0b2/linux-x86_64/eo/firefox-127.0b2.tar.bz2";
       locale = "eo";
       arch = "linux-x86_64";
-      sha256 = "a42ffd0c0a474f33b3aa5a7619526cbafbd94c5e217dc3472edafee268ea01ec";
+      sha256 = "3cebf9a4fd6beae49e82762ecf4d828d91f4c251d016122e8392a088269ccb06";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0b5/linux-x86_64/es-AR/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/127.0b2/linux-x86_64/es-AR/firefox-127.0b2.tar.bz2";
       locale = "es-AR";
       arch = "linux-x86_64";
-      sha256 = "6939b66072807cad29b5a56ea64c58f1ddc42e1dad730a045b21940f8c896879";
+      sha256 = "197a15d60bdde213e3ced20797c5d3b9266d107c786b3db754045698aaf79e9a";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0b5/linux-x86_64/es-CL/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/127.0b2/linux-x86_64/es-CL/firefox-127.0b2.tar.bz2";
       locale = "es-CL";
       arch = "linux-x86_64";
-      sha256 = "fd6c3249039600fe1a740015adbbd8c84658771291e2d9a4a6b6df1f710c5d5f";
+      sha256 = "38c2a4d4809af60082bb76fe339ed083d77021edf3cb7db67466ef15b45be761";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0b5/linux-x86_64/es-ES/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/127.0b2/linux-x86_64/es-ES/firefox-127.0b2.tar.bz2";
       locale = "es-ES";
       arch = "linux-x86_64";
-      sha256 = "23b69a886876a95eaee696132818e5cc3a7a104412b1ce3b53d844c239856d40";
+      sha256 = "8def6020400ec124ea9aa6c6b790807428651b2a01bd1bb82f59277d4d29b352";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0b5/linux-x86_64/es-MX/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/127.0b2/linux-x86_64/es-MX/firefox-127.0b2.tar.bz2";
       locale = "es-MX";
       arch = "linux-x86_64";
-      sha256 = "accf92b324c8bbc8cd5205a33bd837b3dce351f7fa431ebd434881cb597a665f";
+      sha256 = "0057d55bb5dac0fa89c68cd29f530be63fe5e612a164edaaf0f95fa9e647abf1";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0b5/linux-x86_64/et/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/127.0b2/linux-x86_64/et/firefox-127.0b2.tar.bz2";
       locale = "et";
       arch = "linux-x86_64";
-      sha256 = "0d244490fa6cde3d8299cf42328a062efaebd33aff5f4ab07b3d3e96401f5477";
+      sha256 = "ca1ea211bf93436e7eaaaa271e9fe7d24b594ee02b7213616c5b73e7a04dd18b";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0b5/linux-x86_64/eu/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/127.0b2/linux-x86_64/eu/firefox-127.0b2.tar.bz2";
       locale = "eu";
       arch = "linux-x86_64";
-      sha256 = "48022a4dde833a1ae4572b08e6d863dccd18c8e775c361c71de7a4a4d89688b3";
+      sha256 = "e871a40eee14d812b3d1da6b4f09ecfc3418bdd1510a8b6ee1c64284be191c9f";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0b5/linux-x86_64/fa/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/127.0b2/linux-x86_64/fa/firefox-127.0b2.tar.bz2";
       locale = "fa";
       arch = "linux-x86_64";
-      sha256 = "f0791730cb92dc1945ea45ee5aaae6e736bd5817cb98b66d6fc60ff828ba1e57";
+      sha256 = "e99bbf034d1155a1956b4d9eead8627a0a8a25653f84bcf7c65c5449a36b9c54";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0b5/linux-x86_64/ff/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/127.0b2/linux-x86_64/ff/firefox-127.0b2.tar.bz2";
       locale = "ff";
       arch = "linux-x86_64";
-      sha256 = "4b824de7cb4d997e74a4f51c109d6a68d01478ea68c4b03a58a68d20b9ff97e4";
+      sha256 = "ec6595203a1889062c8fb8fa1b316e5c65277b8a8b5de1af688a7c7f912c5352";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0b5/linux-x86_64/fi/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/127.0b2/linux-x86_64/fi/firefox-127.0b2.tar.bz2";
       locale = "fi";
       arch = "linux-x86_64";
-      sha256 = "fbd79f64bed89e6817dee05a0bb783518389947577f247e83b41021a4cfa4fe0";
+      sha256 = "cd71f03e43427070536fd717058cae2909c7a853ea380e879a28e4d730eb5400";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0b5/linux-x86_64/fr/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/127.0b2/linux-x86_64/fr/firefox-127.0b2.tar.bz2";
       locale = "fr";
       arch = "linux-x86_64";
-      sha256 = "de4d18a481b2d30f204884d3b1cb7d6a427f23cb4b97a8618e0eb77cfb829903";
+      sha256 = "f4327bb8fe27a19d2e075d5ac44d4b1b89d3f2dcec866c336fad6d87d1d32270";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0b5/linux-x86_64/fur/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/127.0b2/linux-x86_64/fur/firefox-127.0b2.tar.bz2";
       locale = "fur";
       arch = "linux-x86_64";
-      sha256 = "4d98682733fb1cd5825a30a6a2cd2808eaa7539612130e83f480bf17a1f862bd";
+      sha256 = "484706c7851e7631a2b4330e2ffa3a753cf9e3a42266019d09dec6d6888bdcd0";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0b5/linux-x86_64/fy-NL/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/127.0b2/linux-x86_64/fy-NL/firefox-127.0b2.tar.bz2";
       locale = "fy-NL";
       arch = "linux-x86_64";
-      sha256 = "67b89c68dbfead6a537e18a61281a2b12c411952279757de375380f3f38fb7c1";
+      sha256 = "8b292615492a6cfb221c42395fca9fdeca0c4f1303c87e7c7cd17e5d820b44b5";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0b5/linux-x86_64/ga-IE/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/127.0b2/linux-x86_64/ga-IE/firefox-127.0b2.tar.bz2";
       locale = "ga-IE";
       arch = "linux-x86_64";
-      sha256 = "909cddd2346ea631708c586f45dd58b60843e1a30511a6882239a88797a5e335";
+      sha256 = "035ed8e107a7a5a2c48c11fee7a7adc3acba6c4fd1cb8b1d0474656f8e4e1e2a";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0b5/linux-x86_64/gd/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/127.0b2/linux-x86_64/gd/firefox-127.0b2.tar.bz2";
       locale = "gd";
       arch = "linux-x86_64";
-      sha256 = "e5ac8f176af8dde4d32d12e09a29676d47715cdf1a75890aeed560f3f6bfc0af";
+      sha256 = "687128878140148cb4f84d0efbc64b7d2152213ffcafcf7858c05b8f4f3d8e30";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0b5/linux-x86_64/gl/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/127.0b2/linux-x86_64/gl/firefox-127.0b2.tar.bz2";
       locale = "gl";
       arch = "linux-x86_64";
-      sha256 = "5767e287441bcf2ae9955c5cacb5ce4ee222c7fece242c192d117c9cb30cbaa1";
+      sha256 = "360399cc36a3c738aa1c93679fdd6b5310ff2076a53532d72dc6c6eae0bd9494";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0b5/linux-x86_64/gn/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/127.0b2/linux-x86_64/gn/firefox-127.0b2.tar.bz2";
       locale = "gn";
       arch = "linux-x86_64";
-      sha256 = "fa3b43ba4186f5707904eddfc968665e1865686a365e56d267271decea5d5bf7";
+      sha256 = "5f350d55055e6f34778ea1339ac597cac41a12951265a18c1717f67e337fedf3";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0b5/linux-x86_64/gu-IN/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/127.0b2/linux-x86_64/gu-IN/firefox-127.0b2.tar.bz2";
       locale = "gu-IN";
       arch = "linux-x86_64";
-      sha256 = "4c4b63c08739d8527346a2ab4b3f8c8fff696b66389bfd7073d093502744e3e2";
+      sha256 = "3ecf863778a252d8753aa2a05cb9e44b28a618e763b654aeda899d48a745553c";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0b5/linux-x86_64/he/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/127.0b2/linux-x86_64/he/firefox-127.0b2.tar.bz2";
       locale = "he";
       arch = "linux-x86_64";
-      sha256 = "97e24f445558ee478b491761b6d374dece22899914e6196eaf24d17d4b06e675";
+      sha256 = "fc0f199d8a594cc8b48aebc24e424dda4baa6c56cea4366caa39cc36f4ab742a";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0b5/linux-x86_64/hi-IN/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/127.0b2/linux-x86_64/hi-IN/firefox-127.0b2.tar.bz2";
       locale = "hi-IN";
       arch = "linux-x86_64";
-      sha256 = "e7bfc3309faa60007a20ca89d737ff6201a2af87f7190cef0de3df75dfe5a356";
+      sha256 = "901d602e9145cc5a639a4968844c25b93bad2781ced750067cca5b5015ea28b2";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0b5/linux-x86_64/hr/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/127.0b2/linux-x86_64/hr/firefox-127.0b2.tar.bz2";
       locale = "hr";
       arch = "linux-x86_64";
-      sha256 = "d196b1f8239b471fbe1e22a9000e90879df086f19efad662df850e933089447e";
+      sha256 = "f52fe3d76b09f7ffa42d77d91fffc7d3de93e7c7a3a653fa14648a0024b59068";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0b5/linux-x86_64/hsb/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/127.0b2/linux-x86_64/hsb/firefox-127.0b2.tar.bz2";
       locale = "hsb";
       arch = "linux-x86_64";
-      sha256 = "0e5f22c52a587add26909e3a98797e05413e7af6c9cc6f55c724e3c7c2b945a8";
+      sha256 = "c6aad5424868d618723f1eb9385d3a520ac320b71e04e3ba8a59fb65fa212d27";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0b5/linux-x86_64/hu/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/127.0b2/linux-x86_64/hu/firefox-127.0b2.tar.bz2";
       locale = "hu";
       arch = "linux-x86_64";
-      sha256 = "b4b8d4e2f5016775a78b4e2607f65f3f44051a79d8a43d9299cb4bcabb5b43b6";
+      sha256 = "66f47258fff3b41f0ac0be736073aa12dccef6d7a8fd33473ac7a795dc75c327";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0b5/linux-x86_64/hy-AM/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/127.0b2/linux-x86_64/hy-AM/firefox-127.0b2.tar.bz2";
       locale = "hy-AM";
       arch = "linux-x86_64";
-      sha256 = "dbd0a975300046bcbcd93349454984c72a99f45e0eb974bd1f82d88216ea6939";
+      sha256 = "afedb515503be143d48f050c0a987369037fb4a0ad53a6220670609faff94a3a";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0b5/linux-x86_64/ia/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/127.0b2/linux-x86_64/ia/firefox-127.0b2.tar.bz2";
       locale = "ia";
       arch = "linux-x86_64";
-      sha256 = "61c295524f18e44e23ef905df305f047fd2b3b31c2c9aa08e69ebb19ea695a96";
+      sha256 = "634717627c38094a95ca772c6865c5400b2ad1222e22e22c8f3f6b8124a41547";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0b5/linux-x86_64/id/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/127.0b2/linux-x86_64/id/firefox-127.0b2.tar.bz2";
       locale = "id";
       arch = "linux-x86_64";
-      sha256 = "9dc418697f4fed0e16a4c2d88b4aaf5e62369a438f104980db44a21598330dda";
+      sha256 = "a4ee1313d38275121361844e5d992ef29d83a98fe4147c3c18caa36c0ed1e9e6";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0b5/linux-x86_64/is/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/127.0b2/linux-x86_64/is/firefox-127.0b2.tar.bz2";
       locale = "is";
       arch = "linux-x86_64";
-      sha256 = "84ce271d9b6a9af3b16e1adb5e71acba1483ec794cb25bf0197f5a521de98a4b";
+      sha256 = "7933781c4914cc2fa783f5223ed84773f6b9eea9c4e574f31e5235c56f642fa9";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0b5/linux-x86_64/it/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/127.0b2/linux-x86_64/it/firefox-127.0b2.tar.bz2";
       locale = "it";
       arch = "linux-x86_64";
-      sha256 = "caacae564d5cf9662a559cc0b11078c33882b70607e4298f41db18d790106863";
+      sha256 = "fd23150d42eab62017c03c60cc14c60bf30a8dd47392f9f3622ae6f316736cbb";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0b5/linux-x86_64/ja/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/127.0b2/linux-x86_64/ja/firefox-127.0b2.tar.bz2";
       locale = "ja";
       arch = "linux-x86_64";
-      sha256 = "873e6213fbdb9e437d5e7abec993c0464db0692797be79f4249aae4a9eae6b93";
+      sha256 = "e883e237c2be0be605d3c84c9360a9f7730f3db72beb2950b783718c72dbd6c9";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0b5/linux-x86_64/ka/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/127.0b2/linux-x86_64/ka/firefox-127.0b2.tar.bz2";
       locale = "ka";
       arch = "linux-x86_64";
-      sha256 = "f515d3859e404430d40728d6af708d95c0f73e4bd2fd23e4da5cc59a4a184f8a";
+      sha256 = "39a9cc928671f26756fe1be706ecc984e0d0e20a2d7801de02d84b183f69929c";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0b5/linux-x86_64/kab/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/127.0b2/linux-x86_64/kab/firefox-127.0b2.tar.bz2";
       locale = "kab";
       arch = "linux-x86_64";
-      sha256 = "de4334799536e6c191dc07f463f96f69773473f8bb1096011d0efce6facf6199";
+      sha256 = "1901f0511457f0554a157042d880eb655a05d21a9334141d749a0e3fb0a11477";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0b5/linux-x86_64/kk/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/127.0b2/linux-x86_64/kk/firefox-127.0b2.tar.bz2";
       locale = "kk";
       arch = "linux-x86_64";
-      sha256 = "0887ed3d14a160fd908762468f485a9ad10d49db871a434d3adc48065d395003";
+      sha256 = "bffba4678647019c5456b126454cbdfa6005132d2e56fd92731db444144a3c2d";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0b5/linux-x86_64/km/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/127.0b2/linux-x86_64/km/firefox-127.0b2.tar.bz2";
       locale = "km";
       arch = "linux-x86_64";
-      sha256 = "789081a881369cb3a775c702e57637ce06a895ef85e191764ce712783f32d4c8";
+      sha256 = "2bab72d223d23e27adbdd738397a65961aba70bb4305013bcaa781c4697c4950";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0b5/linux-x86_64/kn/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/127.0b2/linux-x86_64/kn/firefox-127.0b2.tar.bz2";
       locale = "kn";
       arch = "linux-x86_64";
-      sha256 = "58c6c22c636cc3b6a25ef72d22f5dda2bba19d08c6988b7be671fe502de1ecd3";
+      sha256 = "b8f989ed111930ed357c5522e1b1713d95dd4bf1507262fa4f1386679ac94780";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0b5/linux-x86_64/ko/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/127.0b2/linux-x86_64/ko/firefox-127.0b2.tar.bz2";
       locale = "ko";
       arch = "linux-x86_64";
-      sha256 = "47cf06195afb1010674e4e0cb196ba621d5832c6f24dbb4147a7fd7fe3d7a5c8";
+      sha256 = "af2127940913eace7dfdd52db34c2a5d53123822bf50153f5b58ebbb394a54ea";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0b5/linux-x86_64/lij/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/127.0b2/linux-x86_64/lij/firefox-127.0b2.tar.bz2";
       locale = "lij";
       arch = "linux-x86_64";
-      sha256 = "e3310f86e5bb92de78fda8be73d61eed3e7195fc1f3195a4e0891dfa244ea308";
+      sha256 = "6ce2e398539e3f4c5241a472a5b16e4cd60430e5d66e693cbb94cf8634f4afde";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0b5/linux-x86_64/lt/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/127.0b2/linux-x86_64/lt/firefox-127.0b2.tar.bz2";
       locale = "lt";
       arch = "linux-x86_64";
-      sha256 = "51dae70743bd22abc588fc868307ad80b8b12254a17d42a9a71b6dbd7c87dcaf";
+      sha256 = "538264101be6493fa266df6aa64342f013eac5f9b2e92c6f61f28727898e1447";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0b5/linux-x86_64/lv/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/127.0b2/linux-x86_64/lv/firefox-127.0b2.tar.bz2";
       locale = "lv";
       arch = "linux-x86_64";
-      sha256 = "814d16867bba81fa2a4694ba23e56d2fd7b6e303855b715ef386235b587612d6";
+      sha256 = "10e4d7da5fabe1187f8d205c7be80f61b10d8209c47f03fd5e4b531cdd110833";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0b5/linux-x86_64/mk/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/127.0b2/linux-x86_64/mk/firefox-127.0b2.tar.bz2";
       locale = "mk";
       arch = "linux-x86_64";
-      sha256 = "02971f2e9e48dbdb6f30ce99100d9212bd49caa26d97b02f6cae80c4ab288923";
+      sha256 = "8e20a49fc3a0bb9d005e45b21f7c9d0ddf4b4ff5f0641d0884f59dcb61b543d3";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0b5/linux-x86_64/mr/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/127.0b2/linux-x86_64/mr/firefox-127.0b2.tar.bz2";
       locale = "mr";
       arch = "linux-x86_64";
-      sha256 = "73414133309979d604cd0b05fd21aae2bd4cfbdded58035606901b10e28c7d3f";
+      sha256 = "39d54febce8a2755f01c0fb37b8332080d256d406c9d235207e8956ab4ed9187";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0b5/linux-x86_64/ms/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/127.0b2/linux-x86_64/ms/firefox-127.0b2.tar.bz2";
       locale = "ms";
       arch = "linux-x86_64";
-      sha256 = "bcfe246fd61ba41e23d9860b88abbbd61e4da5ed9755d2d39c1d24785cb6ffc2";
+      sha256 = "bed6d9827609128910ca7d5e8ec754b3a0c80e350ba619e74fdc43f2e59342d4";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0b5/linux-x86_64/my/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/127.0b2/linux-x86_64/my/firefox-127.0b2.tar.bz2";
       locale = "my";
       arch = "linux-x86_64";
-      sha256 = "4170ad2c245f34d0cddd54e7bcaccfe505b417fc1d453b82b79ec052bb887e89";
+      sha256 = "a88a8b48ee0c5384b5e4ba4a934df39881dd382a6657cd5896537e5ffb5ede05";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0b5/linux-x86_64/nb-NO/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/127.0b2/linux-x86_64/nb-NO/firefox-127.0b2.tar.bz2";
       locale = "nb-NO";
       arch = "linux-x86_64";
-      sha256 = "881a2a3f2304618ec949050808290f324860e25d80dd3172b443fc27ba938384";
+      sha256 = "95dfe9aeaad511bccb918fde67cdb816d0fd7be7c7117b085df79feb7d34886d";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0b5/linux-x86_64/ne-NP/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/127.0b2/linux-x86_64/ne-NP/firefox-127.0b2.tar.bz2";
       locale = "ne-NP";
       arch = "linux-x86_64";
-      sha256 = "3c293cafc653bd77971bf8344e7b93c5df2699f02b76e8bd2671eb7853f418a7";
+      sha256 = "d9718cbaf47641167ea6803f878ebe2cee8c328da01d0bb5294f9cb102fcb6d3";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0b5/linux-x86_64/nl/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/127.0b2/linux-x86_64/nl/firefox-127.0b2.tar.bz2";
       locale = "nl";
       arch = "linux-x86_64";
-      sha256 = "409eedae4cf7340a9111213e6c88fd91340ca1d85b5aedd74605f70cf20cad1b";
+      sha256 = "4573531cae8892e5ce64e550774ec04ef20cfc373e95287105828fe36f43435b";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0b5/linux-x86_64/nn-NO/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/127.0b2/linux-x86_64/nn-NO/firefox-127.0b2.tar.bz2";
       locale = "nn-NO";
       arch = "linux-x86_64";
-      sha256 = "d59cd6b50c11672670bccfc315d36c0496967dee986f03214185718c44189729";
+      sha256 = "62fed9500374dc32073b34d7b7e7f9c4a1f025dcd41ccec1bd409a0066bc1184";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0b5/linux-x86_64/oc/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/127.0b2/linux-x86_64/oc/firefox-127.0b2.tar.bz2";
       locale = "oc";
       arch = "linux-x86_64";
-      sha256 = "c4e3d1eb11eac47343c8c9080e1e73b72185bb09bb52b25eed31d69fa21529c6";
+      sha256 = "36b6041ed53861d2fad64c8e31d1009d18b318ae046d5586c7fe0330a9500d89";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0b5/linux-x86_64/pa-IN/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/127.0b2/linux-x86_64/pa-IN/firefox-127.0b2.tar.bz2";
       locale = "pa-IN";
       arch = "linux-x86_64";
-      sha256 = "39fcdf41135ec80db479cb38cb4b825620dde6563463886080a41b606890cec8";
+      sha256 = "cd3178a4d6fa15869c8912dbee3c660650d9392a17064c6639ab295d28ae56df";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0b5/linux-x86_64/pl/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/127.0b2/linux-x86_64/pl/firefox-127.0b2.tar.bz2";
       locale = "pl";
       arch = "linux-x86_64";
-      sha256 = "1bfe057079a573385fe74e2fd28314242568e0701f3380830cc9dd4bfee0d753";
+      sha256 = "fd6e9a84ed6815415a6f9833f17b352d5c580f2dead854b5d050ece4851d19b5";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0b5/linux-x86_64/pt-BR/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/127.0b2/linux-x86_64/pt-BR/firefox-127.0b2.tar.bz2";
       locale = "pt-BR";
       arch = "linux-x86_64";
-      sha256 = "fef1097e86873f5f440cb8c2287ba1fb759a8a6cdfcdcb463a52bd422d683f28";
+      sha256 = "5cb87e09bb6103642172d1f59eca2b7fe7da39131a4df8c5c5e5d556569624e4";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0b5/linux-x86_64/pt-PT/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/127.0b2/linux-x86_64/pt-PT/firefox-127.0b2.tar.bz2";
       locale = "pt-PT";
       arch = "linux-x86_64";
-      sha256 = "2c3d49059792fe94a58d617211bd0425e26ae826cd14acc9337b0bc10142d006";
+      sha256 = "8615acec0e99561e1e894b26aec495fcb20b2a86ecf58132ef8a3bbe1661abcd";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0b5/linux-x86_64/rm/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/127.0b2/linux-x86_64/rm/firefox-127.0b2.tar.bz2";
       locale = "rm";
       arch = "linux-x86_64";
-      sha256 = "2d55c3f9b253d636d971c0ed075b8e05b5afceb419ebd5a04a73f8ff4a70550d";
+      sha256 = "bb3241561ae0127fb8fcb27f6b287089626019e92523fba57111b0d8eb1c5a07";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0b5/linux-x86_64/ro/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/127.0b2/linux-x86_64/ro/firefox-127.0b2.tar.bz2";
       locale = "ro";
       arch = "linux-x86_64";
-      sha256 = "1fd413429bb9643903e01edce0954fb8e58aa381d4d5443c1f625599dc4e9072";
+      sha256 = "2db0820b0e3df8ac8c201cdbe6460de89ba0307762d57b63946b57eb459f2654";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0b5/linux-x86_64/ru/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/127.0b2/linux-x86_64/ru/firefox-127.0b2.tar.bz2";
       locale = "ru";
       arch = "linux-x86_64";
-      sha256 = "6d775551e9afd71352e3b9680d6b73a94763b650ff887577f387c8182d44a982";
+      sha256 = "f81b7e3938bff5a3a299ab8e5461890273c2e3e1a6dba82063db4eef9e7dade3";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0b5/linux-x86_64/sat/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/127.0b2/linux-x86_64/sat/firefox-127.0b2.tar.bz2";
       locale = "sat";
       arch = "linux-x86_64";
-      sha256 = "276e336274bc16684842d0f16960071d9c967372e9b2db6a9d922b93a974877f";
+      sha256 = "1fdc6ee7707f3a3fdbc4bdc63be308f07eb3929aa4b3b10c86cb3c36cf7ebefe";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0b5/linux-x86_64/sc/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/127.0b2/linux-x86_64/sc/firefox-127.0b2.tar.bz2";
       locale = "sc";
       arch = "linux-x86_64";
-      sha256 = "98fd54a97fded3e2529da8f38027579b0138d672f600c172cf480d99ba83a0e6";
+      sha256 = "6ff69281a6f4c6d76522f7c77bed70c094ac440b9e32dec9d428c53c0b4ef2d5";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0b5/linux-x86_64/sco/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/127.0b2/linux-x86_64/sco/firefox-127.0b2.tar.bz2";
       locale = "sco";
       arch = "linux-x86_64";
-      sha256 = "547a86fece1ce1194d4125ed0a692e6b58de3d91f987cdbd986b51545944e4a2";
+      sha256 = "d67d9d93a886d431572d4d5cafd162aae445e51c4b5e2182d04f621f1967ee59";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0b5/linux-x86_64/si/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/127.0b2/linux-x86_64/si/firefox-127.0b2.tar.bz2";
       locale = "si";
       arch = "linux-x86_64";
-      sha256 = "b51da37e167c6c8007364f7dae2dab54b3bb8be7be77172fca509da47a44496a";
+      sha256 = "e86b70eced0f5b03ce1fe607dc2af7157cef886d22fa5b940d293314579bbb7d";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0b5/linux-x86_64/sk/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/127.0b2/linux-x86_64/sk/firefox-127.0b2.tar.bz2";
       locale = "sk";
       arch = "linux-x86_64";
-      sha256 = "d7cb0bb885280bf8d127c353c75eca0ff7d29c664a581777feb7ef8e2cdad224";
+      sha256 = "7e5ed858cbf865bf58c00995c023810e3af765044c7c3d329eecd097923d767f";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0b5/linux-x86_64/sl/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/127.0b2/linux-x86_64/sl/firefox-127.0b2.tar.bz2";
       locale = "sl";
       arch = "linux-x86_64";
-      sha256 = "a3aed1ac28bc1cab53f102d9babf78f9ef911ca4bbc82df112849aef5b44a340";
+      sha256 = "1f478d69f4ade3a000b06c9bbb55df375a1b19ccd8feab80c355141c3745a3d0";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0b5/linux-x86_64/son/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/127.0b2/linux-x86_64/son/firefox-127.0b2.tar.bz2";
       locale = "son";
       arch = "linux-x86_64";
-      sha256 = "76aab06c52a21bcd47e2b011d615c0a24d7948a4bc41795523acdc970f169edd";
+      sha256 = "48ea869f09cafb9cec502f4156a41df9adbd4c129840596029809bcb0f0e2eef";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0b5/linux-x86_64/sq/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/127.0b2/linux-x86_64/sq/firefox-127.0b2.tar.bz2";
       locale = "sq";
       arch = "linux-x86_64";
-      sha256 = "a9e607be04fb14a780ae3f691460e251ef040bc5d63a161c4cb57eaea1d03e06";
+      sha256 = "9015e159779159398ec555278a68d0092064ae1edddc5c3421aaf425ef20a8c7";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0b5/linux-x86_64/sr/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/127.0b2/linux-x86_64/sr/firefox-127.0b2.tar.bz2";
       locale = "sr";
       arch = "linux-x86_64";
-      sha256 = "7577abfc5615d03e905a8b3a6e6907f9ac3fc9f852ac4b74ea420aafa4027974";
+      sha256 = "f28facc0fb7dc5ed720e4b1227cdf7e39023ac8d6e5f72474907e84ef3027bb4";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0b5/linux-x86_64/sv-SE/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/127.0b2/linux-x86_64/sv-SE/firefox-127.0b2.tar.bz2";
       locale = "sv-SE";
       arch = "linux-x86_64";
-      sha256 = "2a290055cb7452176a8cb36879611a8608b08439ea2c56c07d0f38ad7ed1d78d";
+      sha256 = "9e6d42a3f5a101fefa6c1a304ab139273d9a363c1ea967f58f12b61828101943";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0b5/linux-x86_64/szl/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/127.0b2/linux-x86_64/szl/firefox-127.0b2.tar.bz2";
       locale = "szl";
       arch = "linux-x86_64";
-      sha256 = "9c9717adb2694e4c4a2d2e8743709be2fdafe1a39756527bca41e08bcbdae5ae";
+      sha256 = "d20841dba01c4a3c8ecea6eea8dcd215b9f428cd0a8fd163166674c2f09b9afe";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0b5/linux-x86_64/ta/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/127.0b2/linux-x86_64/ta/firefox-127.0b2.tar.bz2";
       locale = "ta";
       arch = "linux-x86_64";
-      sha256 = "e15a375ed866faf40fc3721bfba4a7db657e06cbf4b95b7e98446d47be2944f5";
+      sha256 = "898c22d8d59395eaed7519eae5b9227283a8cec50b9c899a85129f30575c6cec";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0b5/linux-x86_64/te/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/127.0b2/linux-x86_64/te/firefox-127.0b2.tar.bz2";
       locale = "te";
       arch = "linux-x86_64";
-      sha256 = "73744888ccb61dfa0d7e00578a3562b7a52c3cb959c9fd42dc865d94cd2e0853";
+      sha256 = "94bfc953d203b49163756fad31b860313060860b6816c9e940ffa419e8a0f1c6";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0b5/linux-x86_64/tg/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/127.0b2/linux-x86_64/tg/firefox-127.0b2.tar.bz2";
       locale = "tg";
       arch = "linux-x86_64";
-      sha256 = "6bb78afe160c7f2aa81b6fefb8019fe15b43f6b3ae1520dd2f2e3a2cf095f684";
+      sha256 = "15a834f7064747052c700c419e337f7d2e6c0c2945ad62ae6d801d6ecca14208";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0b5/linux-x86_64/th/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/127.0b2/linux-x86_64/th/firefox-127.0b2.tar.bz2";
       locale = "th";
       arch = "linux-x86_64";
-      sha256 = "68594ec62ac6f9e5d625b98808500da43894c6e620ce84294b19d69baf507057";
+      sha256 = "29dc55972c657cd010e993edf30e74b639cce2d18b49dfe24bf7ec9b0f91353e";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0b5/linux-x86_64/tl/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/127.0b2/linux-x86_64/tl/firefox-127.0b2.tar.bz2";
       locale = "tl";
       arch = "linux-x86_64";
-      sha256 = "e84ae356c9c5ade2c74c5efd31f8d0763ce08f2bfab47c9fd78803565ddbb8eb";
+      sha256 = "33cbd2e1126492466f8c7d9759dc632408269ff816450291d2477d26ab087c88";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0b5/linux-x86_64/tr/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/127.0b2/linux-x86_64/tr/firefox-127.0b2.tar.bz2";
       locale = "tr";
       arch = "linux-x86_64";
-      sha256 = "3f69c024458eb206a833063aacecd4a70cf6992226b77a9ab95badab12ec9e2c";
+      sha256 = "90c3f4025a2805d55c236b366d83d415224fecc63f540af94aff09763ca72621";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0b5/linux-x86_64/trs/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/127.0b2/linux-x86_64/trs/firefox-127.0b2.tar.bz2";
       locale = "trs";
       arch = "linux-x86_64";
-      sha256 = "466c44c5db785b3727a3240b955cbc9a70da512c94230663957f7d7207065149";
+      sha256 = "7b741c41db47fad0bf4c63a5f4138cb2835e771cf93cba6a8696d25d9ecace69";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0b5/linux-x86_64/uk/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/127.0b2/linux-x86_64/uk/firefox-127.0b2.tar.bz2";
       locale = "uk";
       arch = "linux-x86_64";
-      sha256 = "142d8c32e7670b0ede164d9b0d90f60990cd98794f94af00d4710f7669371129";
+      sha256 = "a0aa50971cfd3f404b8e5626372b6931c0e317c8f4cebe48f8d2e16a437d95c2";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0b5/linux-x86_64/ur/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/127.0b2/linux-x86_64/ur/firefox-127.0b2.tar.bz2";
       locale = "ur";
       arch = "linux-x86_64";
-      sha256 = "de606cffb9b8d5441bbcea0db6718a3c5ef5352385b966790c01b8e2703141b4";
+      sha256 = "416c7f1595cb6b530f4b368906cc6b1923346e6e4874742a7dffc43eb7488c94";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0b5/linux-x86_64/uz/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/127.0b2/linux-x86_64/uz/firefox-127.0b2.tar.bz2";
       locale = "uz";
       arch = "linux-x86_64";
-      sha256 = "862a18e1be26effe08af12a805f4a9b33a43249c63fa22ecee7d0129d5321a6c";
+      sha256 = "9a8f52384037d26e1e41e80f62fec0b53cf8ae963f162d60176fafd4172a3e8b";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0b5/linux-x86_64/vi/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/127.0b2/linux-x86_64/vi/firefox-127.0b2.tar.bz2";
       locale = "vi";
       arch = "linux-x86_64";
-      sha256 = "90567dd577f106ea84f87211ba0a1657c91f6b09063cad90ec99d26c2ec49f02";
+      sha256 = "27cfd839bd664f24c737da29937cf0eaad742de74983af89dd2816c06e73061a";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0b5/linux-x86_64/xh/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/127.0b2/linux-x86_64/xh/firefox-127.0b2.tar.bz2";
       locale = "xh";
       arch = "linux-x86_64";
-      sha256 = "65d18f15887e7b83e5d1026599bab3eb49b34c79cdc2c59db20d1ac94fa92312";
+      sha256 = "d1d120e6f6dec19695da0c15e317a1c6fe442e4a4a52f4a21d51bf6364769fc1";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0b5/linux-x86_64/zh-CN/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/127.0b2/linux-x86_64/zh-CN/firefox-127.0b2.tar.bz2";
       locale = "zh-CN";
       arch = "linux-x86_64";
-      sha256 = "cbe68dab2ce96b73bc397bb0b925df0e2c10df9b3bafcb4b74c667aeb8950a03";
+      sha256 = "962ff97f66f2c77b4efe5fa292df61629c9e47e19fe4cadebcb54d2f80c15eea";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0b5/linux-x86_64/zh-TW/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/127.0b2/linux-x86_64/zh-TW/firefox-127.0b2.tar.bz2";
       locale = "zh-TW";
       arch = "linux-x86_64";
-      sha256 = "f8e8a1ec3d71f59d5ed74ad43c8988ea8ae535cc8a256c1b4c43470891fd920a";
+      sha256 = "1e5801ddb6ebdf53fd7707c01c73f22c7a27a5b7fc7536a3610fcd067eb9dfe9";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0b5/linux-i686/ach/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/127.0b2/linux-i686/ach/firefox-127.0b2.tar.bz2";
       locale = "ach";
       arch = "linux-i686";
-      sha256 = "ceca411e0d96ff89b59b8073abbd228ac246e7c09c3465825f8ffa22c8534a25";
+      sha256 = "802c6d008d96d11e6c71003d276af7e98361a8edcf523b0cad11784cf03f7507";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0b5/linux-i686/af/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/127.0b2/linux-i686/af/firefox-127.0b2.tar.bz2";
       locale = "af";
       arch = "linux-i686";
-      sha256 = "6a68baed628ddcb9e271745dbcdffacd59ba071e3cd40602bfa17ad37d41e219";
+      sha256 = "530670e03c7d074d9c8d5d0afb326636961616b27eb7699ec6b25df006d2c7de";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0b5/linux-i686/an/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/127.0b2/linux-i686/an/firefox-127.0b2.tar.bz2";
       locale = "an";
       arch = "linux-i686";
-      sha256 = "6d399f5c9b0a5e3d2ba183956625276549c1bdffaca198d17a6b7e41d3504df2";
+      sha256 = "a65ac8a8079190546f9ee7c69b3ee1a02c399a0489b1c45ac8b4edc75e6196a4";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0b5/linux-i686/ar/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/127.0b2/linux-i686/ar/firefox-127.0b2.tar.bz2";
       locale = "ar";
       arch = "linux-i686";
-      sha256 = "36c8d6c2fb1a53effd23093de381b206199c49af71c457b584d77a54875cc85e";
+      sha256 = "321b67c2599e7b6331de8ba121d4bdde3ec769faf28655d862d8ac290a3bd83d";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0b5/linux-i686/ast/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/127.0b2/linux-i686/ast/firefox-127.0b2.tar.bz2";
       locale = "ast";
       arch = "linux-i686";
-      sha256 = "f082b51e0a8f001241b01dd68710185e30dc486bdbe72e88ebd4a5d8f81ad2f1";
+      sha256 = "12d6e84029f88fa28c50c2f412636b6efd78e4394b398c11adfcccc1968ac4de";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0b5/linux-i686/az/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/127.0b2/linux-i686/az/firefox-127.0b2.tar.bz2";
       locale = "az";
       arch = "linux-i686";
-      sha256 = "414f65c8da90cac9dd9263b1676d87b6d45f6d70684b471c48ecc1c77ef3fc94";
+      sha256 = "ff39be5bead1890b2042b438f304f94f7ff034261dc38337638294505952e998";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0b5/linux-i686/be/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/127.0b2/linux-i686/be/firefox-127.0b2.tar.bz2";
       locale = "be";
       arch = "linux-i686";
-      sha256 = "c8422e7b05de0b06bbee7ccb00662950aba2fc39c4de3a3ccaab678b1eab67ff";
+      sha256 = "a27a07598d0c2c8c829eaded33a78c1005c364bb362ab62a986a9b3dbdc8c499";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0b5/linux-i686/bg/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/127.0b2/linux-i686/bg/firefox-127.0b2.tar.bz2";
       locale = "bg";
       arch = "linux-i686";
-      sha256 = "af6eda65e459df5ba22750ed561299a0d3098321969f0d6c838e7c259872457a";
+      sha256 = "57b8d1d00e932c88d0da08e7c8875d5e902face54493adecf78b642a1a674bf3";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0b5/linux-i686/bn/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/127.0b2/linux-i686/bn/firefox-127.0b2.tar.bz2";
       locale = "bn";
       arch = "linux-i686";
-      sha256 = "46724ab53c981519d9992b87ada36b97953785a64ff73867ecb180decaefb0c6";
+      sha256 = "760753808a4316851201c9b03ae4ba48bcf1453ad55b3cd35be7c59216632865";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0b5/linux-i686/br/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/127.0b2/linux-i686/br/firefox-127.0b2.tar.bz2";
       locale = "br";
       arch = "linux-i686";
-      sha256 = "84eca14fec1998e46f13b4005f7342b7e7ef983e74c4f92429a67765d6772873";
+      sha256 = "d85255a1a0ac8768c30c04c63b5720f99da2e9819beaf16c1d919a94517ee779";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0b5/linux-i686/bs/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/127.0b2/linux-i686/bs/firefox-127.0b2.tar.bz2";
       locale = "bs";
       arch = "linux-i686";
-      sha256 = "690b5119417934a49bf7bab42f616f5cd02e066868914eef14dec467c26caf7d";
+      sha256 = "1e7ad576c18ab7ba06f5096b04aee21894d35aef360f33821d72d32d616344aa";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0b5/linux-i686/ca-valencia/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/127.0b2/linux-i686/ca-valencia/firefox-127.0b2.tar.bz2";
       locale = "ca-valencia";
       arch = "linux-i686";
-      sha256 = "0235b4daedb450be2d520cbdc2761668bc534fcef98bcab46cff4b5a1fc5a993";
+      sha256 = "6c9c9d8f5aa45258db2a83097861e4449ec344363dd9bfa188feef0519c1a3c0";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0b5/linux-i686/ca/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/127.0b2/linux-i686/ca/firefox-127.0b2.tar.bz2";
       locale = "ca";
       arch = "linux-i686";
-      sha256 = "7004c1c5e76103084bfc33078cce427eb12e5165cb025c9b98437a2552e97ebd";
+      sha256 = "e8dfe5520631c2c58eba5a091751078c14efb52e0133bc3d22d21a0be5d4705b";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0b5/linux-i686/cak/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/127.0b2/linux-i686/cak/firefox-127.0b2.tar.bz2";
       locale = "cak";
       arch = "linux-i686";
-      sha256 = "12e2a6fc96f7cf7dc02d0d0cc62c07c22afa794b11a0c0a9ff78f7a58dfb82eb";
+      sha256 = "5b390a91a65f791526ad61d7d51283d45ce1f2b53a70a5cffd4e452a8da2bb72";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0b5/linux-i686/cs/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/127.0b2/linux-i686/cs/firefox-127.0b2.tar.bz2";
       locale = "cs";
       arch = "linux-i686";
-      sha256 = "9dc39fef30ce900c2590aa83e4d835497d0c8f0c92b12ced53b7fb69b575ff46";
+      sha256 = "cd87ac0d87aa06361c56569b9a3958c20e39a065cb5e7eacbf25186b9b031470";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0b5/linux-i686/cy/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/127.0b2/linux-i686/cy/firefox-127.0b2.tar.bz2";
       locale = "cy";
       arch = "linux-i686";
-      sha256 = "b2717e2b66f40ab699d6b6ad7bde1dfbb9f05b25a9991338a2ce870309d50d33";
+      sha256 = "4494e4f47da2fcd54309d781e3097467ee38b3a3dc38da11c8aff6b26b33d7ac";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0b5/linux-i686/da/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/127.0b2/linux-i686/da/firefox-127.0b2.tar.bz2";
       locale = "da";
       arch = "linux-i686";
-      sha256 = "5e65737aa2c58e85e2a5da501fb074774edbaf3c90ba35adbda5e228e989367c";
+      sha256 = "e38bc2ac598c2d5102ca10bd98a2ddf936c02e291e8fb886920c0b0ac8597db3";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0b5/linux-i686/de/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/127.0b2/linux-i686/de/firefox-127.0b2.tar.bz2";
       locale = "de";
       arch = "linux-i686";
-      sha256 = "13ec999725bd3e29a75564abd8382b18d7a93fad5190f90f566896de1d4e4391";
+      sha256 = "ef7f7a96869d0e3d020d12b6a6205c9c213028f8cb9275e4ba06db89a0029880";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0b5/linux-i686/dsb/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/127.0b2/linux-i686/dsb/firefox-127.0b2.tar.bz2";
       locale = "dsb";
       arch = "linux-i686";
-      sha256 = "735c6d3989a8477771eb90c0d3e002ecb1fd6ad86df2330c1e6934ee9306ecde";
+      sha256 = "57c0b187aa2addcd44cb9dd7b09f014a3157e645c39ceb2d6f705a9339801c86";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0b5/linux-i686/el/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/127.0b2/linux-i686/el/firefox-127.0b2.tar.bz2";
       locale = "el";
       arch = "linux-i686";
-      sha256 = "340384791251a7b150fa7b0971b8e0be096b810a739374af0e5196b94c486227";
+      sha256 = "0a269fdebb8a6620b21c9b658ef8aeeac2096b354aeecd3d704782fd52cd50b8";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0b5/linux-i686/en-CA/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/127.0b2/linux-i686/en-CA/firefox-127.0b2.tar.bz2";
       locale = "en-CA";
       arch = "linux-i686";
-      sha256 = "c9160a9b6d84a47d772a86839bd571e32e5e709cba968904d529d1e6037424f7";
+      sha256 = "9c7e024a7b57462589ea2acd0899c497ad49af9dc1c4ae87c443535e6cba609f";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0b5/linux-i686/en-GB/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/127.0b2/linux-i686/en-GB/firefox-127.0b2.tar.bz2";
       locale = "en-GB";
       arch = "linux-i686";
-      sha256 = "009bc08956d4e277e7f755dc5d646af918c897bfc1c19e53b3798d5fc6c27552";
+      sha256 = "3bdce7ce9098691eba4772bc666deb1f94bed373896fa15de1f15a8d4e215d09";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0b5/linux-i686/en-US/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/127.0b2/linux-i686/en-US/firefox-127.0b2.tar.bz2";
       locale = "en-US";
       arch = "linux-i686";
-      sha256 = "2ba786e17d399865c2804e2f482486c88b96147fda2940f91ebc5d6fb8c8c7cc";
+      sha256 = "b3158a4159a97b2ff19af94bf5bb7c023f492b5917aa508489be4e5fe5b64e2b";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0b5/linux-i686/eo/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/127.0b2/linux-i686/eo/firefox-127.0b2.tar.bz2";
       locale = "eo";
       arch = "linux-i686";
-      sha256 = "671d2040f839b2b04365cdb39a9843cc5b44d865cabc21c990a3c8bab8352298";
+      sha256 = "2c6bc4bd14e9370b55da8b3e62f875f8702890d346310e4da7c10676b42f4a7b";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0b5/linux-i686/es-AR/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/127.0b2/linux-i686/es-AR/firefox-127.0b2.tar.bz2";
       locale = "es-AR";
       arch = "linux-i686";
-      sha256 = "6794493fba480b3edf6fdbbff5fddbe512df75d67a1e5776e0191adcac31bbf3";
+      sha256 = "c24a364747f3908921b30f9123b2d3c4b0ac5ae7ef699e165829dcbab5e1be9a";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0b5/linux-i686/es-CL/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/127.0b2/linux-i686/es-CL/firefox-127.0b2.tar.bz2";
       locale = "es-CL";
       arch = "linux-i686";
-      sha256 = "5bd489e8169dd4fd8b1e1176ad55eaef9db0f80608ff6b76aa87905f7e31947f";
+      sha256 = "762fab1b8f2a39a21a826ce43bf16e080e1ac7691e4c274fc271e1b3cf034b16";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0b5/linux-i686/es-ES/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/127.0b2/linux-i686/es-ES/firefox-127.0b2.tar.bz2";
       locale = "es-ES";
       arch = "linux-i686";
-      sha256 = "ed36b3d79a6c104c8dc6c28c5f90cd874313facde07b8d8a147207e14d262f4a";
+      sha256 = "e7a5b3f9dc59111f24a0bac107c6a93ff5b57a7943a1d71aaae67aa43f3400bb";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0b5/linux-i686/es-MX/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/127.0b2/linux-i686/es-MX/firefox-127.0b2.tar.bz2";
       locale = "es-MX";
       arch = "linux-i686";
-      sha256 = "c63912d626371e8608a10e2fde4ab08dccd683b843266fe5a9751bd6f181cd18";
+      sha256 = "1ae2aab1022e231969814476eb8fcc59e5c0fbbea425adf792df732f24f8b6b7";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0b5/linux-i686/et/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/127.0b2/linux-i686/et/firefox-127.0b2.tar.bz2";
       locale = "et";
       arch = "linux-i686";
-      sha256 = "aab284558624951a0b456b0aeec3dbe24f7db2b6d9200af844a4feecbcf2e5f5";
+      sha256 = "1051ac29e2bbb640273a0926b18568d71276a3b189f1741ab5e50222e1b47bac";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0b5/linux-i686/eu/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/127.0b2/linux-i686/eu/firefox-127.0b2.tar.bz2";
       locale = "eu";
       arch = "linux-i686";
-      sha256 = "12f2c0ff6b6aa9ee57123658a3c4780eb1715b348340832db593c00597f70ae7";
+      sha256 = "8e2de2befda0278010a8dcbcfd97a5463ae3d911bd2c5576a3c1899b7dd284ee";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0b5/linux-i686/fa/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/127.0b2/linux-i686/fa/firefox-127.0b2.tar.bz2";
       locale = "fa";
       arch = "linux-i686";
-      sha256 = "9152133624785ee9d890885daef561b8d40afe20dbbe8a322a607e68f53fa930";
+      sha256 = "3c731dc5e9fd464d303abe7ee9c6748e6eaac838433abfc6ee49ba8da4de41a6";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0b5/linux-i686/ff/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/127.0b2/linux-i686/ff/firefox-127.0b2.tar.bz2";
       locale = "ff";
       arch = "linux-i686";
-      sha256 = "54d96ce8f7aa91fc003d84aac88e4b64541d8dd637e73b28bcaeeab7174bc5bc";
+      sha256 = "6f5896c468957a97805ca32e6707c0bef05d074e48c0e98c748e437003244591";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0b5/linux-i686/fi/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/127.0b2/linux-i686/fi/firefox-127.0b2.tar.bz2";
       locale = "fi";
       arch = "linux-i686";
-      sha256 = "0027ef0b7bcb74c71207b719fa11d4037f8fa094ec1ada6f2eb4a122546227e3";
+      sha256 = "239998cd45b41d2891164d51617a17cd8216127d3a74f05b5d518e8fb619e95b";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0b5/linux-i686/fr/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/127.0b2/linux-i686/fr/firefox-127.0b2.tar.bz2";
       locale = "fr";
       arch = "linux-i686";
-      sha256 = "19d1b85044fb62490459f73a2950c7f838cafca1ad6faea453b1a0d863f9773a";
+      sha256 = "8b1e30a397131582378a12d1534d0be8cd977e685419e2ffcd8bea2782802bf1";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0b5/linux-i686/fur/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/127.0b2/linux-i686/fur/firefox-127.0b2.tar.bz2";
       locale = "fur";
       arch = "linux-i686";
-      sha256 = "e828482839a6ab4ad5b07129f68aa20df4e87f5ad00549b6a935d78c104be608";
+      sha256 = "f2523e7bb7e36143bdf9232cb6e764eca8c8b35bac2a36220527361b785a14e4";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0b5/linux-i686/fy-NL/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/127.0b2/linux-i686/fy-NL/firefox-127.0b2.tar.bz2";
       locale = "fy-NL";
       arch = "linux-i686";
-      sha256 = "ceed7138a03e781d886c4501237c0debe4ccc1c93bdb13a2a66c123e533ff984";
+      sha256 = "0dca8df8605677b9411860662122413769aaa0df4316a4e25edcb76e24fb56a0";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0b5/linux-i686/ga-IE/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/127.0b2/linux-i686/ga-IE/firefox-127.0b2.tar.bz2";
       locale = "ga-IE";
       arch = "linux-i686";
-      sha256 = "07a926e35884398db3128a54f90699c61abb289f4fb56f5f1c538b27f7c990b1";
+      sha256 = "f78afd9e6b8bcecd193476e54be34b2ed3073af79f61e2027559521495992c34";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0b5/linux-i686/gd/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/127.0b2/linux-i686/gd/firefox-127.0b2.tar.bz2";
       locale = "gd";
       arch = "linux-i686";
-      sha256 = "a69ed32870bf43b616d09007c09697e4e7929cbfaf4c986a9f434c829a46451e";
+      sha256 = "44dbfdcc965165a5e57f80b25d4ae2fb137f9ecd0b581d35a264fe7b750ac308";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0b5/linux-i686/gl/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/127.0b2/linux-i686/gl/firefox-127.0b2.tar.bz2";
       locale = "gl";
       arch = "linux-i686";
-      sha256 = "39eca241d736369e09e327daaae521a01c2ee126baebee0559471e5377e559b7";
+      sha256 = "1b904594ef61448f9c71455b4ebf8ab6bc5441805d06caa5a147f6980a839b90";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0b5/linux-i686/gn/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/127.0b2/linux-i686/gn/firefox-127.0b2.tar.bz2";
       locale = "gn";
       arch = "linux-i686";
-      sha256 = "17810d1a89e594d3513650bafcc631d500fa984e6790cf852e6e9d71365321c5";
+      sha256 = "56b8ca430ef56cda043e5f07bb2b130175f9faea370a0eba9e953783522cd2be";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0b5/linux-i686/gu-IN/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/127.0b2/linux-i686/gu-IN/firefox-127.0b2.tar.bz2";
       locale = "gu-IN";
       arch = "linux-i686";
-      sha256 = "357987ac6755e622fb3c744b5cfe530240f3192075c5f3f826a9daf7da420712";
+      sha256 = "0cb8d510942390b9068aa2ee1118195afbcb05d376802894cbc6497fdc448a16";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0b5/linux-i686/he/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/127.0b2/linux-i686/he/firefox-127.0b2.tar.bz2";
       locale = "he";
       arch = "linux-i686";
-      sha256 = "a14429a035e34d2993dabc4492dc6ee57c5cee6173b453e19a07d268a89f01eb";
+      sha256 = "7c244649f59b76fe9fe4920e6457b730aa5bfb2202997697caeaa1bfa3013842";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0b5/linux-i686/hi-IN/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/127.0b2/linux-i686/hi-IN/firefox-127.0b2.tar.bz2";
       locale = "hi-IN";
       arch = "linux-i686";
-      sha256 = "ac426d39cb3e064127a769c8a2bb45d165c7a72b9ad2cb8ebf05da192f0ce348";
+      sha256 = "3831280bc05f5bc1d23d5718c441662b4bda9440b9d32b6a5b42f42265a80349";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0b5/linux-i686/hr/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/127.0b2/linux-i686/hr/firefox-127.0b2.tar.bz2";
       locale = "hr";
       arch = "linux-i686";
-      sha256 = "ddf235e1f3f9228d7e8c88a8b0cea6c1d63f1cf63e46223e5e73b07b0d593245";
+      sha256 = "ce115265ad6e5345183d1a4e3bf213aa95975a1042f18ae9f85835a231bb4997";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0b5/linux-i686/hsb/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/127.0b2/linux-i686/hsb/firefox-127.0b2.tar.bz2";
       locale = "hsb";
       arch = "linux-i686";
-      sha256 = "2620c4edcc178bd4827e46ee6bee9a51c06d95d0e4412fcd906fcab47a2f481e";
+      sha256 = "ceb3d3c54dd4419c3ae70ad547efa4ed504f30fb881be9be900a8b82babb2ba1";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0b5/linux-i686/hu/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/127.0b2/linux-i686/hu/firefox-127.0b2.tar.bz2";
       locale = "hu";
       arch = "linux-i686";
-      sha256 = "9aded5f3993dc498c37f9f91fcf5b778a02f664f3ee25ec880691d2480fb8f03";
+      sha256 = "aa0e8489b91506c0afb6fb586aacf506f0ec240d8c8a1ac0435a68fc6f6b47a5";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0b5/linux-i686/hy-AM/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/127.0b2/linux-i686/hy-AM/firefox-127.0b2.tar.bz2";
       locale = "hy-AM";
       arch = "linux-i686";
-      sha256 = "fc35e1abdfc19be9424dde459c02114e1e8263d1a7526e1bdadeef3cba571903";
+      sha256 = "93180a0eb04aec1f415470650762110286b02c25f1644da75caa440625a20073";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0b5/linux-i686/ia/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/127.0b2/linux-i686/ia/firefox-127.0b2.tar.bz2";
       locale = "ia";
       arch = "linux-i686";
-      sha256 = "8ec912f951202389d97105df641d4f30fdab1131acb9d426f7038e65fa0d494f";
+      sha256 = "bd6a9752759078725b0d3661267026e2e0510be9d03d189ba63fcce5c256600a";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0b5/linux-i686/id/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/127.0b2/linux-i686/id/firefox-127.0b2.tar.bz2";
       locale = "id";
       arch = "linux-i686";
-      sha256 = "7b64a8997419df4f5474a80538ab970510598bce5a13cd57d45db67b95559609";
+      sha256 = "11ea58a1bc5e85dcd768b09be677f7295fb00be2b6427407cc57f9e140fcb1b0";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0b5/linux-i686/is/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/127.0b2/linux-i686/is/firefox-127.0b2.tar.bz2";
       locale = "is";
       arch = "linux-i686";
-      sha256 = "71613574a4b1e4a33d29b282d4e50b77865733a744eae17e15a62aa747855d66";
+      sha256 = "67a7bb9ae2859d3d851b70ccfdec595ff8c03acb6dbf58f450b1f082ae642f77";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0b5/linux-i686/it/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/127.0b2/linux-i686/it/firefox-127.0b2.tar.bz2";
       locale = "it";
       arch = "linux-i686";
-      sha256 = "939fbabba1f341d1296df1140a94dcbc0180887df70134021a94f8d9b370f42e";
+      sha256 = "3870dc235cd7b3b81d5ac940c31b5a241e8bd09d3c6a318841e7dcef84f7b0ad";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0b5/linux-i686/ja/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/127.0b2/linux-i686/ja/firefox-127.0b2.tar.bz2";
       locale = "ja";
       arch = "linux-i686";
-      sha256 = "62f9ba084329183ed68295bc2f1dfc374ee665fd842ee0bf21b1e25a1b5416bb";
+      sha256 = "81ed603272c859077abb04dcaab22ddf7fd5e7f126b690b746dff4696b3a36fd";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0b5/linux-i686/ka/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/127.0b2/linux-i686/ka/firefox-127.0b2.tar.bz2";
       locale = "ka";
       arch = "linux-i686";
-      sha256 = "d9af3d20399e9aa786cfec4c86a3c833a01bbd3a8987473668937557ee44e186";
+      sha256 = "8f2efc868ae8255c3f7ea58d37a065bb5fe2c54da8f8825e3a79c0aa4452d126";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0b5/linux-i686/kab/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/127.0b2/linux-i686/kab/firefox-127.0b2.tar.bz2";
       locale = "kab";
       arch = "linux-i686";
-      sha256 = "2cd13c1e82bab687d17b1a517cefa10729b951dbbd021e4d98a1c26e791314e8";
+      sha256 = "2e13952743a01d7be50b25860c32e1a8fb0d85dc72927a1b414445aba8506ae7";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0b5/linux-i686/kk/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/127.0b2/linux-i686/kk/firefox-127.0b2.tar.bz2";
       locale = "kk";
       arch = "linux-i686";
-      sha256 = "cb41f01e7d62c82da4c0d73868acf9580f9847e0c8ea9d9d255ba7e517d657a6";
+      sha256 = "3b4a9a9a0d269c5252804627af1962a4a0faa1c34c74649a25ed7de8c2e87237";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0b5/linux-i686/km/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/127.0b2/linux-i686/km/firefox-127.0b2.tar.bz2";
       locale = "km";
       arch = "linux-i686";
-      sha256 = "b6b18a47c9544880f2996092d11aaf61e9db093e55d75f5781bcb1ecb72b1008";
+      sha256 = "2cfa1961ba21b569b005265fb1c94fc3160a7471f8afc97376581e9a8d0d002c";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0b5/linux-i686/kn/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/127.0b2/linux-i686/kn/firefox-127.0b2.tar.bz2";
       locale = "kn";
       arch = "linux-i686";
-      sha256 = "91c94c7b774b01bdbd9bc779beed08a84f63461aa8026da13e77cc5732d04609";
+      sha256 = "5949b0f3787cd02e1d7bd67505d44a539d4b6fd51d0bbe2e8e8c39c6779b7599";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0b5/linux-i686/ko/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/127.0b2/linux-i686/ko/firefox-127.0b2.tar.bz2";
       locale = "ko";
       arch = "linux-i686";
-      sha256 = "ef58ac71e216ae522860a4aece4901120e53592ffa13c6a59cd06f78a8272dba";
+      sha256 = "d20a267c8e3456e48f9e55bdd7ce802fbb1dcf10bbff4d7b0d713c69213839bc";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0b5/linux-i686/lij/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/127.0b2/linux-i686/lij/firefox-127.0b2.tar.bz2";
       locale = "lij";
       arch = "linux-i686";
-      sha256 = "751281d726765270d445575a09bcf021269a0d0205a03b49fafa95b6a109ae85";
+      sha256 = "cf93af57e572d19fbf14bf82962e190851f5289e0e7ec880d8430c56d27a15e0";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0b5/linux-i686/lt/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/127.0b2/linux-i686/lt/firefox-127.0b2.tar.bz2";
       locale = "lt";
       arch = "linux-i686";
-      sha256 = "d70751a805a1b09cb7dd113c64b3ee2ae49c26c5c576e8be05f20a4074cafc1b";
+      sha256 = "8e40a6d950e26ed383db3f185f210856cb6275a443035053745dc26bed5d9eca";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0b5/linux-i686/lv/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/127.0b2/linux-i686/lv/firefox-127.0b2.tar.bz2";
       locale = "lv";
       arch = "linux-i686";
-      sha256 = "d117fcc82eeeeaaa468ef3191a682c0605930c6dc9321ae31546d4a0805f6a1e";
+      sha256 = "1a13b48ce78ee7eeff86810a6b61812e1e0a806f1c8d6e83a9bbd9fa3d437014";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0b5/linux-i686/mk/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/127.0b2/linux-i686/mk/firefox-127.0b2.tar.bz2";
       locale = "mk";
       arch = "linux-i686";
-      sha256 = "ab07439555307e5174608c44ec3083051ebc98e712041cdd6a55c18854a5516f";
+      sha256 = "46058fdd03e603ecd5cc5082b354b8ca6b88f4487fc16363b3266d97716f1692";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0b5/linux-i686/mr/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/127.0b2/linux-i686/mr/firefox-127.0b2.tar.bz2";
       locale = "mr";
       arch = "linux-i686";
-      sha256 = "e9f7cad42a6b23557ce6393228763eacf617d39c22d3a25e672b05303648a149";
+      sha256 = "88fc368db21346eca9f9b9313ddcab255345c965cbfeaa67c0b2bc68b7346a3e";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0b5/linux-i686/ms/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/127.0b2/linux-i686/ms/firefox-127.0b2.tar.bz2";
       locale = "ms";
       arch = "linux-i686";
-      sha256 = "8081bb08a4cd0df2cfb2af38233ce90d5ff279250de8b00fab1c6ea7a1070c74";
+      sha256 = "ed11b3b8bfe7b2fc1795840a5c1143010469539de22afe7fa0888f41e47fd2f3";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0b5/linux-i686/my/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/127.0b2/linux-i686/my/firefox-127.0b2.tar.bz2";
       locale = "my";
       arch = "linux-i686";
-      sha256 = "fdde8f4f13f4ec204d6dd1f0cc538f26c7fc10d4820a3c300a68c89a4708ea43";
+      sha256 = "e071ab2630480076419dbdf9b460d7b61f51f8af738a70129da0bd432e89959f";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0b5/linux-i686/nb-NO/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/127.0b2/linux-i686/nb-NO/firefox-127.0b2.tar.bz2";
       locale = "nb-NO";
       arch = "linux-i686";
-      sha256 = "f03070ab64b573765e8afe8cfa1d1bd361e26ebb61c43665a1fe5ea5423ca6d7";
+      sha256 = "186bc2408a9c0171f2cdcc165c6760b5f16402af6b50c85e07dbce7995c69d1b";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0b5/linux-i686/ne-NP/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/127.0b2/linux-i686/ne-NP/firefox-127.0b2.tar.bz2";
       locale = "ne-NP";
       arch = "linux-i686";
-      sha256 = "841139b185d724fb24163c4e940257d73a1d10255d8cf85c0130320a92486fda";
+      sha256 = "a423eb0406f195122b0907e22bc9061f37c5e0c4ac274e828cce919c2e0bf61a";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0b5/linux-i686/nl/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/127.0b2/linux-i686/nl/firefox-127.0b2.tar.bz2";
       locale = "nl";
       arch = "linux-i686";
-      sha256 = "5d399980953adf1612522ff9e1e24f556b7ae0889b66acd3b2e8a0755308cab6";
+      sha256 = "7ae86d515956d3ea41ed9a4c1b975c954d735d4b91f11d6b0c6e6cda4b98d64c";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0b5/linux-i686/nn-NO/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/127.0b2/linux-i686/nn-NO/firefox-127.0b2.tar.bz2";
       locale = "nn-NO";
       arch = "linux-i686";
-      sha256 = "eb37103d8f4ef619f6809f6dfb1d87b235f9bd357acb93a1c97c929bdf18c6a2";
+      sha256 = "419774970cf5be7976a916cefe01ab19830b3f27ad42c4ce28758a3b65ec87f2";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0b5/linux-i686/oc/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/127.0b2/linux-i686/oc/firefox-127.0b2.tar.bz2";
       locale = "oc";
       arch = "linux-i686";
-      sha256 = "8a10238c0e8cc48234ff6acd073dc0cab6dc494b20b701b8f3b426242d64b08b";
+      sha256 = "b3850404a88ebfdaf98fbe6c88e38c6475c92780ee280f347be2acb4e09aa65b";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0b5/linux-i686/pa-IN/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/127.0b2/linux-i686/pa-IN/firefox-127.0b2.tar.bz2";
       locale = "pa-IN";
       arch = "linux-i686";
-      sha256 = "845ea79e53f8bd03a12d443d51122a769c0d3aa95cfdce9ac82fcff2fecf1882";
+      sha256 = "e0fad8907831ff00a302001717e5930d9a8d7e064671ed4364a55ce5bc752faa";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0b5/linux-i686/pl/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/127.0b2/linux-i686/pl/firefox-127.0b2.tar.bz2";
       locale = "pl";
       arch = "linux-i686";
-      sha256 = "e6787b2d190da966d48ce17189c442bfd7376f55d271b02afbc6555e50052060";
+      sha256 = "b26c59e0257e1c53d2367d9f74f14a51b4e6d95abde0995baa850c5667d36d27";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0b5/linux-i686/pt-BR/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/127.0b2/linux-i686/pt-BR/firefox-127.0b2.tar.bz2";
       locale = "pt-BR";
       arch = "linux-i686";
-      sha256 = "61526013ebbbc38d753423acba412e6df40e8872a1a8890b2bcb010d0749f773";
+      sha256 = "3e95a3bcc4369199292233d50fdd5670fafd2d5380f1ae5c44d956c0c7416468";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0b5/linux-i686/pt-PT/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/127.0b2/linux-i686/pt-PT/firefox-127.0b2.tar.bz2";
       locale = "pt-PT";
       arch = "linux-i686";
-      sha256 = "c6ac02f336e13313693cd50bd744a15ae9948d7f21bb65cd2b71ddf05bd84f68";
+      sha256 = "dfb0fd547f97c851b25247434bc4a8bd9c176340dab050036a87bbd074b72328";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0b5/linux-i686/rm/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/127.0b2/linux-i686/rm/firefox-127.0b2.tar.bz2";
       locale = "rm";
       arch = "linux-i686";
-      sha256 = "6b68fd8bfc7d7c923b9e85a5876789be4d2e293a06e2ce94f63b89314297d723";
+      sha256 = "31f5753dde47f161da02bf347f06161b73805d167a75cb33c5d293b2887c8502";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0b5/linux-i686/ro/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/127.0b2/linux-i686/ro/firefox-127.0b2.tar.bz2";
       locale = "ro";
       arch = "linux-i686";
-      sha256 = "96dcf7577671ab41572b84fa33c91b1f847a819a20f62b23fdf86f9047ed9ff6";
+      sha256 = "465b624d0bfa22361167301d8131133e9976bd837c11228491a64a072ad24e33";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0b5/linux-i686/ru/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/127.0b2/linux-i686/ru/firefox-127.0b2.tar.bz2";
       locale = "ru";
       arch = "linux-i686";
-      sha256 = "13838f4841acd30745acc6d8ac4e4fe9317408ff0334d24b857c44a589960076";
+      sha256 = "a0abae3a6f7ce4957d066a66b0107b2911a0276b232b9edfea27ccbfe49ca8df";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0b5/linux-i686/sat/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/127.0b2/linux-i686/sat/firefox-127.0b2.tar.bz2";
       locale = "sat";
       arch = "linux-i686";
-      sha256 = "4e1aa1e417289c790f67061fdc7ca753ba5f0a6ac0cf2c7b319ff56e96059ea1";
+      sha256 = "8c3ec37d6e31a28a6320f3d19f372915836bfc166a2b0fcf64e535a60a74b2a7";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0b5/linux-i686/sc/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/127.0b2/linux-i686/sc/firefox-127.0b2.tar.bz2";
       locale = "sc";
       arch = "linux-i686";
-      sha256 = "5370018102b2d99eb1095f579a2eb913f814fd6119f981b9091e3d2ab31ae6f5";
+      sha256 = "d00ccd6dc27847a2e97f5685f1b33f5172222b79150abbebd1fdbf49dee6890a";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0b5/linux-i686/sco/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/127.0b2/linux-i686/sco/firefox-127.0b2.tar.bz2";
       locale = "sco";
       arch = "linux-i686";
-      sha256 = "6b630539247d6a3bf04bd49bf88e017d6124cb122236ea78bd1411d4aaabf722";
+      sha256 = "507a36b0eb5d038887562e714d87d833c7cc64c2abb6d0e4e3ea74e0c429ac8b";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0b5/linux-i686/si/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/127.0b2/linux-i686/si/firefox-127.0b2.tar.bz2";
       locale = "si";
       arch = "linux-i686";
-      sha256 = "24b6d7657d85e9fc6c4c2040d9265294e625523e74f41654b3d2cb3ab7f7cdce";
+      sha256 = "d7a7b33b015b37f44bef599957f51231ec08f5a5d3c00a6504d422c8d3ad87f4";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0b5/linux-i686/sk/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/127.0b2/linux-i686/sk/firefox-127.0b2.tar.bz2";
       locale = "sk";
       arch = "linux-i686";
-      sha256 = "454c0fa1d2d0192fc3c292a65f343b626209858874af70b61ef23ab553960fd0";
+      sha256 = "e0ca68f949323840ac6b8ec262a2625f746573edcdbdf4ab22c668b3b4c9efb8";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0b5/linux-i686/sl/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/127.0b2/linux-i686/sl/firefox-127.0b2.tar.bz2";
       locale = "sl";
       arch = "linux-i686";
-      sha256 = "06404ae7588f88cca7298a8be3d642824fa4f36a81fcc2153986b008aa92d55a";
+      sha256 = "beaf16de3b7ad2ef5630d50728bbd737645b590b2f4b871d63145d9e5241575f";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0b5/linux-i686/son/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/127.0b2/linux-i686/son/firefox-127.0b2.tar.bz2";
       locale = "son";
       arch = "linux-i686";
-      sha256 = "b4314086740ecff614b996820b8510f21a945a0d6ffa47d335ed29f2905b0b68";
+      sha256 = "91dca715b0c6d54b07888859233a817e4eece005cac56ca33018dd69610a0647";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0b5/linux-i686/sq/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/127.0b2/linux-i686/sq/firefox-127.0b2.tar.bz2";
       locale = "sq";
       arch = "linux-i686";
-      sha256 = "2d765c05e3760fb409f3b1150485f601a053d86ea04af1a2e50b9561811b22aa";
+      sha256 = "265aa0678fec2f0ae82fad6cc9146108ee27115e48d7a5bfb6ced4318aa41fa2";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0b5/linux-i686/sr/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/127.0b2/linux-i686/sr/firefox-127.0b2.tar.bz2";
       locale = "sr";
       arch = "linux-i686";
-      sha256 = "8ff306adbd480e9cd2d970a53fef27d3c395e34fdec447f7336610647bd699d2";
+      sha256 = "027e4fc73188090fd106f7f087ae8833616267f43d8bcceea7f8e74d91f26c93";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0b5/linux-i686/sv-SE/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/127.0b2/linux-i686/sv-SE/firefox-127.0b2.tar.bz2";
       locale = "sv-SE";
       arch = "linux-i686";
-      sha256 = "ba9c313ba259620e99e9a6081e441a09dc93f79c684986ff8f4d5cbc31d5a8c4";
+      sha256 = "225897596c390dcfe359c88ce0a4c8cc9f963ae669c18f4503980dfcbcdf8429";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0b5/linux-i686/szl/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/127.0b2/linux-i686/szl/firefox-127.0b2.tar.bz2";
       locale = "szl";
       arch = "linux-i686";
-      sha256 = "cddeccf3445bc9f109b828ec6c19ff4afc16977a92e44490db269851e502830c";
+      sha256 = "0426a3cb8f45602c594acd0b31c06916876c9b81f54416aba0664bb5a431759c";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0b5/linux-i686/ta/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/127.0b2/linux-i686/ta/firefox-127.0b2.tar.bz2";
       locale = "ta";
       arch = "linux-i686";
-      sha256 = "a658ad77c57548a19187b504c5684e6e94f41013dd2778579419e909bc709058";
+      sha256 = "a61b2e58319bc006afd286aa7033991afaa951f391ec318f96c5a78fab08d809";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0b5/linux-i686/te/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/127.0b2/linux-i686/te/firefox-127.0b2.tar.bz2";
       locale = "te";
       arch = "linux-i686";
-      sha256 = "1cbb9543785690ff78e2cee8b02305b32ca7b5a5df190cbf9f00237357c05f41";
+      sha256 = "6bf1fe0d350292b0bf8e0062c0d0f7fff686577ae38d7e09f6df623eca2b189d";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0b5/linux-i686/tg/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/127.0b2/linux-i686/tg/firefox-127.0b2.tar.bz2";
       locale = "tg";
       arch = "linux-i686";
-      sha256 = "bb93d2995e8d39bace1a7cc4641b56ac79631669a993a1f296e7fe016617df1f";
+      sha256 = "8334b57d369f887744b9408d49f7be109383451a9d807269b1b2c385d7289563";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0b5/linux-i686/th/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/127.0b2/linux-i686/th/firefox-127.0b2.tar.bz2";
       locale = "th";
       arch = "linux-i686";
-      sha256 = "955e20194a32a7c08ad96fab1ba6afd6850b0cb012c0e4de395c1c5cbfbd8dc4";
+      sha256 = "fa09f96e57eef946aae291bc8345d3eb756fca006918d15305c5cf8f043b6bbe";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0b5/linux-i686/tl/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/127.0b2/linux-i686/tl/firefox-127.0b2.tar.bz2";
       locale = "tl";
       arch = "linux-i686";
-      sha256 = "fa982788ef58d98081b9670932549e9d8220dddcf643069d1ac944253dc0e610";
+      sha256 = "10818379d02c2e03e689df0e78ce12a16940c5f8f551306033fd25f6959006da";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0b5/linux-i686/tr/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/127.0b2/linux-i686/tr/firefox-127.0b2.tar.bz2";
       locale = "tr";
       arch = "linux-i686";
-      sha256 = "3f12c1b742d4945b8fc7019a470b682ad409d89ca679900d6f0185b313640dde";
+      sha256 = "da0245ccbad0ee59b0433430ec593bd16ce9f77acf3bfdb1eea9bb30e38bef94";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0b5/linux-i686/trs/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/127.0b2/linux-i686/trs/firefox-127.0b2.tar.bz2";
       locale = "trs";
       arch = "linux-i686";
-      sha256 = "b059aa4c12343e7940fdf7de08da40fcf9a5f230c5470ccd8ef3bd491c8ce2db";
+      sha256 = "7928d1db0d14626428129905c37a1c4c83bc7e654598c95fdf68636601aedb58";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0b5/linux-i686/uk/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/127.0b2/linux-i686/uk/firefox-127.0b2.tar.bz2";
       locale = "uk";
       arch = "linux-i686";
-      sha256 = "f6349cd8a79e36f81d53b597b1068a5b853f34378dac2aaa59db213081764b76";
+      sha256 = "62008374b1314d49e9ac5a8af9e5189e77e970ede38ce773d0937c8519ade5e4";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0b5/linux-i686/ur/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/127.0b2/linux-i686/ur/firefox-127.0b2.tar.bz2";
       locale = "ur";
       arch = "linux-i686";
-      sha256 = "94ec0fc0bc2d3d53d7acce4300cf09571a0cfbace00ba41a69ef75ef742c709e";
+      sha256 = "b5e55f174f1add6720c1259a7f3f29f801c12d27da5c544694a2afef05cf7a99";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0b5/linux-i686/uz/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/127.0b2/linux-i686/uz/firefox-127.0b2.tar.bz2";
       locale = "uz";
       arch = "linux-i686";
-      sha256 = "e77772aabe8473943b5c062a1d7e6b887cd2e8205d5c0d87ac69819832c493f6";
+      sha256 = "af8394428fe6f17ede74063a4c496dc6cc18dc24f564a8de35b064b438a5c57b";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0b5/linux-i686/vi/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/127.0b2/linux-i686/vi/firefox-127.0b2.tar.bz2";
       locale = "vi";
       arch = "linux-i686";
-      sha256 = "c73802774f2f9dd73a62b9d07fa77d2e8da62f2ab519d4a1454b71d6a67cf9fe";
+      sha256 = "36ed9d2754f411f8c8ded02ba02e22c0f091edc5b40531a4e4efe93b4423fb31";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0b5/linux-i686/xh/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/127.0b2/linux-i686/xh/firefox-127.0b2.tar.bz2";
       locale = "xh";
       arch = "linux-i686";
-      sha256 = "cea6198851ea912ac1d0e2e060fcec056054230dd532ba64996cb1e148fef6cd";
+      sha256 = "ca49e6e55d7fdae7f1355953720e9727e83b5b0ef73d46e40614a0d753106d6d";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0b5/linux-i686/zh-CN/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/127.0b2/linux-i686/zh-CN/firefox-127.0b2.tar.bz2";
       locale = "zh-CN";
       arch = "linux-i686";
-      sha256 = "0ece0aef6ee9112e92e72c570be6eca108b5331694de4247a2aaab2003a95770";
+      sha256 = "7c03fc982bb854769af190288181ea54cc9e2e642b07cd81738c7e783da94f4d";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0b5/linux-i686/zh-TW/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/127.0b2/linux-i686/zh-TW/firefox-127.0b2.tar.bz2";
       locale = "zh-TW";
       arch = "linux-i686";
-      sha256 = "b2cd12df0910ce19de2a1a4f09415ed318b25e9059b526c79cea473e72c60727";
+      sha256 = "c8344aec0ab9d510c36cd134ef46e9bb3bd0f2fdea78453f9eae9bfdc5999825";
     }
     ];
 }
diff --git a/pkgs/applications/networking/browsers/firefox-bin/default.nix b/pkgs/applications/networking/browsers/firefox-bin/default.nix
index 44b63cab7dbb..81abbb268397 100644
--- a/pkgs/applications/networking/browsers/firefox-bin/default.nix
+++ b/pkgs/applications/networking/browsers/firefox-bin/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetchurl, config, wrapGAppsHook, autoPatchelfHook
+{ lib, stdenv, fetchurl, config, wrapGAppsHook3, autoPatchelfHook
 , alsa-lib
 , curl
 , dbus-glib
@@ -64,7 +64,7 @@ stdenv.mkDerivation {
 
   src = fetchurl { inherit (source) url sha256; };
 
-  nativeBuildInputs = [ wrapGAppsHook autoPatchelfHook patchelfUnstable ];
+  nativeBuildInputs = [ wrapGAppsHook3 autoPatchelfHook patchelfUnstable ];
   buildInputs = [
     gtk3
     adwaita-icon-theme
diff --git a/pkgs/applications/networking/browsers/firefox-bin/developer-edition_sources.nix b/pkgs/applications/networking/browsers/firefox-bin/developer-edition_sources.nix
index fe964b95703e..1234ddbeb100 100644
--- a/pkgs/applications/networking/browsers/firefox-bin/developer-edition_sources.nix
+++ b/pkgs/applications/networking/browsers/firefox-bin/developer-edition_sources.nix
@@ -1,1025 +1,1025 @@
 {
-  version = "126.0b5";
+  version = "127.0b2";
   sources = [
-    { url = "https://archive.mozilla.org/pub/devedition/releases/126.0b5/linux-x86_64/ach/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/127.0b2/linux-x86_64/ach/firefox-127.0b2.tar.bz2";
       locale = "ach";
       arch = "linux-x86_64";
-      sha256 = "aadea702b7fd435c9a6a90673c1b055e78e6c31bf5ea8b22b362c394b429cfc0";
+      sha256 = "1c30d80705710a2733b95a46d906bce469a14794cd4b2036fa1e0f9d76b1733a";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/126.0b5/linux-x86_64/af/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/127.0b2/linux-x86_64/af/firefox-127.0b2.tar.bz2";
       locale = "af";
       arch = "linux-x86_64";
-      sha256 = "9d0443133506dfbd6f20038aa8fc5449baffc2ec39290332145c2069f8bc9a14";
+      sha256 = "4837c99b89f061b7799b68427cbc9a3099c6f61d7b191534fb6736f716af0193";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/126.0b5/linux-x86_64/an/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/127.0b2/linux-x86_64/an/firefox-127.0b2.tar.bz2";
       locale = "an";
       arch = "linux-x86_64";
-      sha256 = "687d8a868302fac2a46168d1e0c3b9b6d40eadd906a17cc67732c7c1d9abeaed";
+      sha256 = "9f55436840df59e10483445bef81f2b53380e5a7acbc0c85c5167083fc6c222c";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/126.0b5/linux-x86_64/ar/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/127.0b2/linux-x86_64/ar/firefox-127.0b2.tar.bz2";
       locale = "ar";
       arch = "linux-x86_64";
-      sha256 = "f69161d5163d3d36686a3ccb6a8d60a86846c2858e9c9bd1c471677f3bb9e6e3";
+      sha256 = "243c3f9f4e2f132450446b9452f8ca0f82595c5eab1156ccd79738e3435f2051";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/126.0b5/linux-x86_64/ast/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/127.0b2/linux-x86_64/ast/firefox-127.0b2.tar.bz2";
       locale = "ast";
       arch = "linux-x86_64";
-      sha256 = "652bbb9d51ace74d186ae3de36aeebbd7e71a5e72a354c604106da44e632931e";
+      sha256 = "622f1db93bb1f9cb01d63991f7fbf192e80c12ecfd5617cd0cd7d0ef44657321";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/126.0b5/linux-x86_64/az/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/127.0b2/linux-x86_64/az/firefox-127.0b2.tar.bz2";
       locale = "az";
       arch = "linux-x86_64";
-      sha256 = "30e40363485d7bd0893c08f05dc97741e08cfceb04a7d2eb7d5ccf17c72bf944";
+      sha256 = "aac2aa13f3c22b499a8dd2783f48c5095bed5ee5f7d0704cc7415910ef812252";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/126.0b5/linux-x86_64/be/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/127.0b2/linux-x86_64/be/firefox-127.0b2.tar.bz2";
       locale = "be";
       arch = "linux-x86_64";
-      sha256 = "fac31c7f86d82dd015f1227d4b39924e1e08cbc9d0b6a9dde5207f2e3529c76d";
+      sha256 = "4fbb3ab76de025286c768ad0be9c50b32111caa8e8b18f279eb6c3d9926dfccb";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/126.0b5/linux-x86_64/bg/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/127.0b2/linux-x86_64/bg/firefox-127.0b2.tar.bz2";
       locale = "bg";
       arch = "linux-x86_64";
-      sha256 = "9a6fa24f51767f3b303d61d7dfc760ca55defa1296bfc9d037ecd1ed6afd9c09";
+      sha256 = "66e3ff1dfa7334acd55d33f0c2aed72d06d9a60ab47f2d1ad5f876bde167c31a";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/126.0b5/linux-x86_64/bn/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/127.0b2/linux-x86_64/bn/firefox-127.0b2.tar.bz2";
       locale = "bn";
       arch = "linux-x86_64";
-      sha256 = "65b6bc95679547df0a6986fbd7156be0fb1e6848bcdba02b645c5779e54054a7";
+      sha256 = "56ea0a236ef4d2bfbc0de6ec74544c87d5e89577bbafad5438c4b90b9df533fb";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/126.0b5/linux-x86_64/br/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/127.0b2/linux-x86_64/br/firefox-127.0b2.tar.bz2";
       locale = "br";
       arch = "linux-x86_64";
-      sha256 = "d555b830bbdc48e0b5a59d4a4f2f73a2294c099b5a91bdbbd32531f4a89b84ab";
+      sha256 = "b26d9498d4daabb52791a33313c75e578892393515ff5832554deb7708446808";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/126.0b5/linux-x86_64/bs/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/127.0b2/linux-x86_64/bs/firefox-127.0b2.tar.bz2";
       locale = "bs";
       arch = "linux-x86_64";
-      sha256 = "3cba8d16d5edc777353a8654b91e7cd1176cdc2acb8c7df5d2713951dc21bb2a";
+      sha256 = "de26000f9441c7d7307d525d976d4e6ea1db422d8053b44a716e6fbb5b624f39";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/126.0b5/linux-x86_64/ca-valencia/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/127.0b2/linux-x86_64/ca-valencia/firefox-127.0b2.tar.bz2";
       locale = "ca-valencia";
       arch = "linux-x86_64";
-      sha256 = "040147cd8ecd354485d3df4691ca99036d8ec2ff0f25add7729e4a2751d9d178";
+      sha256 = "52b7eadd956972d150eac74e33b86ebcad1c0091a11510bb3dfe87685088ba5e";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/126.0b5/linux-x86_64/ca/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/127.0b2/linux-x86_64/ca/firefox-127.0b2.tar.bz2";
       locale = "ca";
       arch = "linux-x86_64";
-      sha256 = "0614be9b81fb8ec1156a6b226d82e02346a2c229b148ff170583a0f14a7b66f8";
+      sha256 = "fa759d2458a220c9c03dbc85ebb10ab98956cec9e344cd470c74ac3461ce153a";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/126.0b5/linux-x86_64/cak/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/127.0b2/linux-x86_64/cak/firefox-127.0b2.tar.bz2";
       locale = "cak";
       arch = "linux-x86_64";
-      sha256 = "7ab6099b339aa64775562c0e388b604a571ba610ed2d22835b6ba3fea3f685ce";
+      sha256 = "5f202c4e1fbbba07af31d383860946f94faea1830c8ae39f7cb37b5080d622a5";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/126.0b5/linux-x86_64/cs/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/127.0b2/linux-x86_64/cs/firefox-127.0b2.tar.bz2";
       locale = "cs";
       arch = "linux-x86_64";
-      sha256 = "b367e93b63e0eab7a7e1176b2cc877cc31e1b8bfbe23c64c4db2492f915ebd64";
+      sha256 = "ac939957ff1efe4f6d96ec5ae077ddcba83f1d774c8d4615e4a960cac219d654";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/126.0b5/linux-x86_64/cy/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/127.0b2/linux-x86_64/cy/firefox-127.0b2.tar.bz2";
       locale = "cy";
       arch = "linux-x86_64";
-      sha256 = "fc659db104968d92aebdbf60b0341132891ed6d14c0b444547a10a2a2d4be262";
+      sha256 = "3f95cfa51c6bfed6fdab542f66494dc70972311c4efc21de5437fb759be4da25";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/126.0b5/linux-x86_64/da/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/127.0b2/linux-x86_64/da/firefox-127.0b2.tar.bz2";
       locale = "da";
       arch = "linux-x86_64";
-      sha256 = "4ba74c927d83e8e84f4db5b8e20b9a593c2866640187deb15c9308242cd20994";
+      sha256 = "ea7adbca9138439cdaf44ab49788bd5f3f630603c4fb6c0da9dcf80812f084a3";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/126.0b5/linux-x86_64/de/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/127.0b2/linux-x86_64/de/firefox-127.0b2.tar.bz2";
       locale = "de";
       arch = "linux-x86_64";
-      sha256 = "e7bd1092bc9bef535a642ad0abc90bc855f83350f22bd2345f23f0924917b194";
+      sha256 = "4958ecd34b92a03c0177cd65e658e5f6e1c4dc5731bbd9bab447be6c1d6c99b7";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/126.0b5/linux-x86_64/dsb/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/127.0b2/linux-x86_64/dsb/firefox-127.0b2.tar.bz2";
       locale = "dsb";
       arch = "linux-x86_64";
-      sha256 = "8a27aec7aa633671f6e5ec385f2787216257b3a667f79246db496b239f6216d7";
+      sha256 = "8018f3f9ddf1c089f2faf2d6a195fbe5bf4826857d8673e4e1a6e06d73b40186";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/126.0b5/linux-x86_64/el/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/127.0b2/linux-x86_64/el/firefox-127.0b2.tar.bz2";
       locale = "el";
       arch = "linux-x86_64";
-      sha256 = "4a773f33acfe4f2f6e27d8b59dc5df448262f972985c1cfeeb86debd167eb536";
+      sha256 = "193c8c06baebb8c9b1d892d8f596f31d9d37c5f884a76a98b9d1849a8bedf467";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/126.0b5/linux-x86_64/en-CA/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/127.0b2/linux-x86_64/en-CA/firefox-127.0b2.tar.bz2";
       locale = "en-CA";
       arch = "linux-x86_64";
-      sha256 = "bb878750660b575da5519c88cf06200e5006ba8072b580c4aea1dd9b701ad4ba";
+      sha256 = "888a8a7b8c9375898822ba45eb59f834c06fa9977a6f50826a5206af8e6fce2c";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/126.0b5/linux-x86_64/en-GB/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/127.0b2/linux-x86_64/en-GB/firefox-127.0b2.tar.bz2";
       locale = "en-GB";
       arch = "linux-x86_64";
-      sha256 = "ac6fbb711d9de6c3a307b0bffcfcf7e5a3d50b9b62a280b026bfd7695280c223";
+      sha256 = "ca2ffd9d2464d888f525af46fa0dd1820846bc3fb746e9d7eb4e17207738fb60";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/126.0b5/linux-x86_64/en-US/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/127.0b2/linux-x86_64/en-US/firefox-127.0b2.tar.bz2";
       locale = "en-US";
       arch = "linux-x86_64";
-      sha256 = "8698e5366a2f746208a52ac38ccf4087fb1c1ae4b2cc5596ab6ad289339a88cd";
+      sha256 = "4e292c98e7451c6824c772e66392e15c14fefa495c548cf776f604fcd1032ef3";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/126.0b5/linux-x86_64/eo/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/127.0b2/linux-x86_64/eo/firefox-127.0b2.tar.bz2";
       locale = "eo";
       arch = "linux-x86_64";
-      sha256 = "e7f31b325611365b62223d816ce6f6a0d5b5d1b13d7683d37f6dbf1fe134cccd";
+      sha256 = "7c7742c2ca61abb5fdc1d360827e63422a8209c0543cb9f92d468bd2472f93f8";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/126.0b5/linux-x86_64/es-AR/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/127.0b2/linux-x86_64/es-AR/firefox-127.0b2.tar.bz2";
       locale = "es-AR";
       arch = "linux-x86_64";
-      sha256 = "e2e6cec00240ff005879786c3b2ac9eaa32bf52f1c9bb56119161f16121f7476";
+      sha256 = "20311f7a35249d2748e876e7259c1183fd1b21d5af8ef35dffea87f6abaa5662";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/126.0b5/linux-x86_64/es-CL/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/127.0b2/linux-x86_64/es-CL/firefox-127.0b2.tar.bz2";
       locale = "es-CL";
       arch = "linux-x86_64";
-      sha256 = "d31e59b6ab3bb8ff78c334edf03e4151e56449b5d4de5a1463e3e5e720488cbb";
+      sha256 = "1d99ca8c0cb353d0e70fa7226960e5edbd1e9633704cfdbded14a35c35ecdd52";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/126.0b5/linux-x86_64/es-ES/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/127.0b2/linux-x86_64/es-ES/firefox-127.0b2.tar.bz2";
       locale = "es-ES";
       arch = "linux-x86_64";
-      sha256 = "bac16e3d7bf01339fac50077514f0e8444290a6c0349839bb155a8539324679d";
+      sha256 = "5ebd693e23751eb58e22cbc475d4f2dbb7dd8c1947f6622bea9e62e34cd7d9b5";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/126.0b5/linux-x86_64/es-MX/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/127.0b2/linux-x86_64/es-MX/firefox-127.0b2.tar.bz2";
       locale = "es-MX";
       arch = "linux-x86_64";
-      sha256 = "e41b8afba817a5eb84117a1526cfe26ebf3f8467d6dc5abac057ffe0d2e0ea94";
+      sha256 = "40f1e0b20d278f9b6ecb27eb92b38d70e30302f55dc7760833f301c8784b02c8";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/126.0b5/linux-x86_64/et/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/127.0b2/linux-x86_64/et/firefox-127.0b2.tar.bz2";
       locale = "et";
       arch = "linux-x86_64";
-      sha256 = "20ad510b43d37a58fd80c590340a947c1b6df95590b97bfff7cd4c62d07723b2";
+      sha256 = "1b62463a5fa33ff427499b0be0ca7bce79ba22267b1e34703ead2ce4d23ab040";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/126.0b5/linux-x86_64/eu/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/127.0b2/linux-x86_64/eu/firefox-127.0b2.tar.bz2";
       locale = "eu";
       arch = "linux-x86_64";
-      sha256 = "d1806f999e5b91deb3fa5e4c7858e35c8e141f347efc990fa461069bcc5f8175";
+      sha256 = "fd613163704eb0cb42eaa1127414787e4c48867b83271d515f57ee4b02eb6e87";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/126.0b5/linux-x86_64/fa/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/127.0b2/linux-x86_64/fa/firefox-127.0b2.tar.bz2";
       locale = "fa";
       arch = "linux-x86_64";
-      sha256 = "db81f9f32f2ffa07d99ffec55c19ab610a71ce33acdad63aed6a51482f73b3ad";
+      sha256 = "17b8f8fe61498e95e458b9d2484ae2d576536e8bf2e7c400a7a7ff419a895acb";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/126.0b5/linux-x86_64/ff/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/127.0b2/linux-x86_64/ff/firefox-127.0b2.tar.bz2";
       locale = "ff";
       arch = "linux-x86_64";
-      sha256 = "590d831346b3e052dc07ad2682ede64289c7d34698eaa5e367403553429f6b6f";
+      sha256 = "ffc6f5d23528e9e5066f0c6cf67913ab1ad9b68b900882c184e974c966a0d6c2";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/126.0b5/linux-x86_64/fi/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/127.0b2/linux-x86_64/fi/firefox-127.0b2.tar.bz2";
       locale = "fi";
       arch = "linux-x86_64";
-      sha256 = "a97ad5462016ca9bb909ed62989257a2a84f6474541fd4d110f85d5363e86323";
+      sha256 = "8640338310a43b0aa8c11d9d3bd5004e0dcfa90f079c7a009eb1aeb3d5d02794";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/126.0b5/linux-x86_64/fr/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/127.0b2/linux-x86_64/fr/firefox-127.0b2.tar.bz2";
       locale = "fr";
       arch = "linux-x86_64";
-      sha256 = "f376c6778bc22ccc6fb08164e246d86a1410a767c76530c0e995bba633805c49";
+      sha256 = "c18af63aadf7a6b1ea3b3ea61a584be01a10a18323c6d2ef4d81ad91c80816d1";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/126.0b5/linux-x86_64/fur/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/127.0b2/linux-x86_64/fur/firefox-127.0b2.tar.bz2";
       locale = "fur";
       arch = "linux-x86_64";
-      sha256 = "bc5b436e9b1ef0a835ca79d522a802b105792bac55fc94c21f5e1cc8c2ae650c";
+      sha256 = "3b38905c0e59a97c0ad91b61a7b7de6a277b2a036190b18c242f34b975bdb1bd";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/126.0b5/linux-x86_64/fy-NL/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/127.0b2/linux-x86_64/fy-NL/firefox-127.0b2.tar.bz2";
       locale = "fy-NL";
       arch = "linux-x86_64";
-      sha256 = "e6e84437be056e031149e13ae3ad67327c1aa737cb1c4f4d2aadb20be453c057";
+      sha256 = "cf81df13bf9e76be89582a5b52def414797a9d19d15dc8a30b3e3d101def9376";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/126.0b5/linux-x86_64/ga-IE/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/127.0b2/linux-x86_64/ga-IE/firefox-127.0b2.tar.bz2";
       locale = "ga-IE";
       arch = "linux-x86_64";
-      sha256 = "147bfbeff3cef160c82f978c88f6fc2f2aaf1225213a96704343d5baffde7a24";
+      sha256 = "91ba2719606eb3ff5a9210e36886b809d9892a3d18d664def9cadb5ebf19caa5";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/126.0b5/linux-x86_64/gd/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/127.0b2/linux-x86_64/gd/firefox-127.0b2.tar.bz2";
       locale = "gd";
       arch = "linux-x86_64";
-      sha256 = "e00839b12a3bf928ed25804ed34607bb2d5904a9aa16a1cb701d45105cc36301";
+      sha256 = "8f7aa1cb682e639eee5d7bc13ca9227bb1826cbef605cde516cef4421f8de02a";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/126.0b5/linux-x86_64/gl/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/127.0b2/linux-x86_64/gl/firefox-127.0b2.tar.bz2";
       locale = "gl";
       arch = "linux-x86_64";
-      sha256 = "0689aa03acab6daec08748be34ce4dbb59419706dbb92e1ec5796ea574160d3e";
+      sha256 = "660b9d9d9d26124a03bebdc0a68889617b9e85bbfa1bd8baf6cd8a52fa9a3fd4";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/126.0b5/linux-x86_64/gn/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/127.0b2/linux-x86_64/gn/firefox-127.0b2.tar.bz2";
       locale = "gn";
       arch = "linux-x86_64";
-      sha256 = "4a4177a177e6fd1c9c2d284c968ddd1eabf95cc68a1521f6727787235b0f8cfb";
+      sha256 = "71570c4b2159c4ac5fefbd34f51d4e0378ee10e26918ebc09707c267240ef11d";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/126.0b5/linux-x86_64/gu-IN/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/127.0b2/linux-x86_64/gu-IN/firefox-127.0b2.tar.bz2";
       locale = "gu-IN";
       arch = "linux-x86_64";
-      sha256 = "4df4c1632484eb1de64dff8cc3e564b85a1f0d3f3fd984caaea9cfa7ec330a67";
+      sha256 = "21449a33ddb633af1f117349196fecd68be58014ea7f42ec9da64188ad229f82";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/126.0b5/linux-x86_64/he/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/127.0b2/linux-x86_64/he/firefox-127.0b2.tar.bz2";
       locale = "he";
       arch = "linux-x86_64";
-      sha256 = "50f51a218cb85bfb291b35f19d320886c31c86f3bc62dadb4b8a67e61f09dbe2";
+      sha256 = "8ebcf8985090e91d04994470e977d281a17823da2fa3756afb087d806dc67759";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/126.0b5/linux-x86_64/hi-IN/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/127.0b2/linux-x86_64/hi-IN/firefox-127.0b2.tar.bz2";
       locale = "hi-IN";
       arch = "linux-x86_64";
-      sha256 = "78628f9f924247648ca6bfa5f9879d9d971e5cfd20c38d490d545f37544a5631";
+      sha256 = "fd1bb13d1bec3520f191b3257fc605435815259a8690c84a91c5aa58cb0afcbc";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/126.0b5/linux-x86_64/hr/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/127.0b2/linux-x86_64/hr/firefox-127.0b2.tar.bz2";
       locale = "hr";
       arch = "linux-x86_64";
-      sha256 = "e423d5f514b7a81a6b0587e507ddf3ec34dea9c2355b3637fe928dc19a94680f";
+      sha256 = "74ed4d0986ef34a91503d13c20763485fb8e5fd24576cca048002543036b385d";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/126.0b5/linux-x86_64/hsb/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/127.0b2/linux-x86_64/hsb/firefox-127.0b2.tar.bz2";
       locale = "hsb";
       arch = "linux-x86_64";
-      sha256 = "aa12cd9f3f5e40e4cb34835bde908d19fa49cd56fd5644ea7d10e7b246181e06";
+      sha256 = "551c2b5e65017d6393ba8b846d3da77c9ff6c28f063d2a4cf268d9757030577b";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/126.0b5/linux-x86_64/hu/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/127.0b2/linux-x86_64/hu/firefox-127.0b2.tar.bz2";
       locale = "hu";
       arch = "linux-x86_64";
-      sha256 = "84b3e5042cef460bc83703274f77dd0eeb8b4b0afca499b5ce9521beb994ca9e";
+      sha256 = "cacb6956e8bc6470386f9ea29e18a168efbfb89d5e5e0f2e6695bf1c18f04843";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/126.0b5/linux-x86_64/hy-AM/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/127.0b2/linux-x86_64/hy-AM/firefox-127.0b2.tar.bz2";
       locale = "hy-AM";
       arch = "linux-x86_64";
-      sha256 = "8871dce1aa612830bce519312efcbcfda4f117397cc5e87b2dc0456e6d71fbff";
+      sha256 = "a27bb9215094731fbf00ca8d5b8c6ad20aaf6f190420cfd0a8c8f653e0671b22";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/126.0b5/linux-x86_64/ia/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/127.0b2/linux-x86_64/ia/firefox-127.0b2.tar.bz2";
       locale = "ia";
       arch = "linux-x86_64";
-      sha256 = "6b5464a8913c7a6cca023c5e19466e2ea217a71366d833b50dad61fb27f9a4ed";
+      sha256 = "c569048fd1a2746fce3783131df479d5343666e32de87b76be198b918492ef9d";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/126.0b5/linux-x86_64/id/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/127.0b2/linux-x86_64/id/firefox-127.0b2.tar.bz2";
       locale = "id";
       arch = "linux-x86_64";
-      sha256 = "bebdc7251b629e9aef7456180cc8ec38f624d50239d92ab4290e0ced3013c14b";
+      sha256 = "73060c390dcf4b1eaf748fe4d1515a31c1f09bb9efe070d8437b695e6cdb681f";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/126.0b5/linux-x86_64/is/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/127.0b2/linux-x86_64/is/firefox-127.0b2.tar.bz2";
       locale = "is";
       arch = "linux-x86_64";
-      sha256 = "489c56e584acade82eecc7873c3c4e68c8ba23c6441311cf1c166e633f233618";
+      sha256 = "146b506486380f36d223cc2b4b9f27a69a5a520cedc3bc89b6ad62e1c740558e";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/126.0b5/linux-x86_64/it/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/127.0b2/linux-x86_64/it/firefox-127.0b2.tar.bz2";
       locale = "it";
       arch = "linux-x86_64";
-      sha256 = "7f0724aafaeb78001de81008e165bd8c7e76db4633b8f452d577a5f50a1eaa7d";
+      sha256 = "21c1a11e7e61a3fcb022d2a836c2549a8010d75f9321df321d6814aa8406a87e";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/126.0b5/linux-x86_64/ja/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/127.0b2/linux-x86_64/ja/firefox-127.0b2.tar.bz2";
       locale = "ja";
       arch = "linux-x86_64";
-      sha256 = "d6fbcb972566b90e4858b14ae864eaed088e4ef04e4a642b43656765e15be008";
+      sha256 = "623af7fc6524b2cbd7b6004106d07cc08fa1880656a158a781a2bc58e6c5f2f9";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/126.0b5/linux-x86_64/ka/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/127.0b2/linux-x86_64/ka/firefox-127.0b2.tar.bz2";
       locale = "ka";
       arch = "linux-x86_64";
-      sha256 = "b5454dacd7c3b2af91f880980d6948fb864c99a92f5a6b7d1cf775a70bb1df22";
+      sha256 = "fe4d470dbe0a2f68906fd59d7d8050ff4ed892f32eca6efc9c4e1d8087b92123";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/126.0b5/linux-x86_64/kab/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/127.0b2/linux-x86_64/kab/firefox-127.0b2.tar.bz2";
       locale = "kab";
       arch = "linux-x86_64";
-      sha256 = "326a5e1c452b869ecf119a3874330ccb341baf10f68a17716350e39dcc6621dd";
+      sha256 = "352ad29d40d91e9920f361cfa0cd9e568a866e0839e393dce9e5ebd1c4a8d11d";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/126.0b5/linux-x86_64/kk/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/127.0b2/linux-x86_64/kk/firefox-127.0b2.tar.bz2";
       locale = "kk";
       arch = "linux-x86_64";
-      sha256 = "bdecf37f2f73eba68e3690dbf8c3a8c6174e4e54d6255f1e435bf106212f30ae";
+      sha256 = "edb1a446f157add1c8654379252f8bd75b2c8ebffa8665fbcc51bab8ec39432d";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/126.0b5/linux-x86_64/km/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/127.0b2/linux-x86_64/km/firefox-127.0b2.tar.bz2";
       locale = "km";
       arch = "linux-x86_64";
-      sha256 = "f9f37b2e1b81d104295ae5c926ae201b2bf1e6620eda3c1d0a82e17153c3efb8";
+      sha256 = "0aad12c2aabbc32983f5d3163a2bea6b6c2a896d84c7adc49d711ad4d3d13ce7";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/126.0b5/linux-x86_64/kn/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/127.0b2/linux-x86_64/kn/firefox-127.0b2.tar.bz2";
       locale = "kn";
       arch = "linux-x86_64";
-      sha256 = "9d3cba10d8ddaa85e7e1ade5484f3638f88c4b6d009cef4225ce53f2b5870096";
+      sha256 = "0803c2ed47e49b0647fa3d1923c5d6efc263860e8477eb18d64cb7bba3fdfdf6";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/126.0b5/linux-x86_64/ko/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/127.0b2/linux-x86_64/ko/firefox-127.0b2.tar.bz2";
       locale = "ko";
       arch = "linux-x86_64";
-      sha256 = "10884ab9adc0203b5352ac38e1a496b5accca5dbc364c2b383de351f16d6a420";
+      sha256 = "6cdcd8707ab42730a5f32e5508a8e2dc895e77d1efda48f2eaf3f2f6033b3f66";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/126.0b5/linux-x86_64/lij/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/127.0b2/linux-x86_64/lij/firefox-127.0b2.tar.bz2";
       locale = "lij";
       arch = "linux-x86_64";
-      sha256 = "954f466f7a1803b63aef624e02e3a8bb1bb449e5941695e61596962d56679821";
+      sha256 = "5bdaab3beb4ce4c198a122a770a4571ce4b182c98b6ef728b83a4bc8a8901a53";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/126.0b5/linux-x86_64/lt/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/127.0b2/linux-x86_64/lt/firefox-127.0b2.tar.bz2";
       locale = "lt";
       arch = "linux-x86_64";
-      sha256 = "0995741098c46398493bc153ee797d540d63d77bec642143326d066e9a4349ee";
+      sha256 = "88a6f46a68039f2c546f6c0005e8bb125e94975b500bdd9b46d1cd9641fba2be";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/126.0b5/linux-x86_64/lv/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/127.0b2/linux-x86_64/lv/firefox-127.0b2.tar.bz2";
       locale = "lv";
       arch = "linux-x86_64";
-      sha256 = "20063e09da70ce19d9abb0bc6c6f657c6d5661f4a20c281fa56c06354034dc10";
+      sha256 = "9e93206d7bcffa76b39bb9b05783ab26748de2adb39363d9fec27e6a1538ac57";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/126.0b5/linux-x86_64/mk/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/127.0b2/linux-x86_64/mk/firefox-127.0b2.tar.bz2";
       locale = "mk";
       arch = "linux-x86_64";
-      sha256 = "b27ce3d8dc0fa083afaab8844350cba8d0b356cc0dd8cc591458c993396f637a";
+      sha256 = "b0bdb66867d9f65a577b6dbccc7da07dd937fecd54b81d62d323c6ee430dace6";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/126.0b5/linux-x86_64/mr/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/127.0b2/linux-x86_64/mr/firefox-127.0b2.tar.bz2";
       locale = "mr";
       arch = "linux-x86_64";
-      sha256 = "6fa92ad541934296b50c34105908feaf2124125350cf913bb1656bf7fac5784b";
+      sha256 = "d1cead8f2962c62f8aea10a37fdc1aff01dbda3ff512ec845c64439a73be9fab";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/126.0b5/linux-x86_64/ms/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/127.0b2/linux-x86_64/ms/firefox-127.0b2.tar.bz2";
       locale = "ms";
       arch = "linux-x86_64";
-      sha256 = "d0623362a8a8830f117870464de0c0e648e32cb66b960efdf49c43a3c6dd3530";
+      sha256 = "f0e5662e0f69ed59a6223b7640083ccae6bd7dc074e81d44470e4c900ff2f8c9";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/126.0b5/linux-x86_64/my/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/127.0b2/linux-x86_64/my/firefox-127.0b2.tar.bz2";
       locale = "my";
       arch = "linux-x86_64";
-      sha256 = "4a96f707867cc48b34c558da67b4b3ab2c561d4f9221635bb559a622d5ac5481";
+      sha256 = "62ba69d29bc5ae973bbecaf8bb7b54159504714e054f5f445c6fbc42c003155e";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/126.0b5/linux-x86_64/nb-NO/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/127.0b2/linux-x86_64/nb-NO/firefox-127.0b2.tar.bz2";
       locale = "nb-NO";
       arch = "linux-x86_64";
-      sha256 = "155a097e982c47636f7f9f9816669ad201dd11f2e4d034a4b5f27757234ac73d";
+      sha256 = "babb77e460c5a1929ca7304b593e4ca0ad7c1eef5edad63a5050440f5e89af51";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/126.0b5/linux-x86_64/ne-NP/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/127.0b2/linux-x86_64/ne-NP/firefox-127.0b2.tar.bz2";
       locale = "ne-NP";
       arch = "linux-x86_64";
-      sha256 = "7e9dd8d3cfd969b25c2e01d813f997df86e9c05016e98a8e991dbc72482c545f";
+      sha256 = "8a45664de4538143a91803a4e47347d6300eb57fcf8b15940ffde3102532e4a3";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/126.0b5/linux-x86_64/nl/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/127.0b2/linux-x86_64/nl/firefox-127.0b2.tar.bz2";
       locale = "nl";
       arch = "linux-x86_64";
-      sha256 = "25fc631ec62ba8b488c923c06dc7d1846102069f6b9fec259017809bb964ace0";
+      sha256 = "590ea36cdaeba3a89bee54ee5ca14ec2018923d5671619fef9792ae4eb10b7b7";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/126.0b5/linux-x86_64/nn-NO/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/127.0b2/linux-x86_64/nn-NO/firefox-127.0b2.tar.bz2";
       locale = "nn-NO";
       arch = "linux-x86_64";
-      sha256 = "3d76232fe1126d94f64c7dfec0975acb6b8db9668275cc43fad5a62a2b9f9a04";
+      sha256 = "12aadc65dca6e91f11f48d0178ac05b022c55d607cbb1dd9a579badfb8a3dc1a";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/126.0b5/linux-x86_64/oc/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/127.0b2/linux-x86_64/oc/firefox-127.0b2.tar.bz2";
       locale = "oc";
       arch = "linux-x86_64";
-      sha256 = "0dfda755cc4f2b4db90bb1715fce8ea630f8458cb42aa32a6008ecb8f2d7535c";
+      sha256 = "a1623356d931da57da8a4efdac7ce5fe4c8d970229cb01dda72096e4e44b540d";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/126.0b5/linux-x86_64/pa-IN/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/127.0b2/linux-x86_64/pa-IN/firefox-127.0b2.tar.bz2";
       locale = "pa-IN";
       arch = "linux-x86_64";
-      sha256 = "10b14b2f8d54dda727c1ecd6dba83a5e9cad880f4228cc398e6ca7fc1b43227b";
+      sha256 = "33d0d467e71988396a6f1ba75892da58426db6343ddebec5d4fb9267c8dc26a3";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/126.0b5/linux-x86_64/pl/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/127.0b2/linux-x86_64/pl/firefox-127.0b2.tar.bz2";
       locale = "pl";
       arch = "linux-x86_64";
-      sha256 = "50ee99d11d384f079480bbb9c824519e7b4756b3d4c7fd908353b3d95d538b6c";
+      sha256 = "cfceaef341b7f2b06071ce796191d0750b139c85e53f83e35b997a8bbcc60048";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/126.0b5/linux-x86_64/pt-BR/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/127.0b2/linux-x86_64/pt-BR/firefox-127.0b2.tar.bz2";
       locale = "pt-BR";
       arch = "linux-x86_64";
-      sha256 = "2e09ea51ac746045fd40fa6a7925e0683d7fc13eab785de294d7b1ed540d04b7";
+      sha256 = "fc18b49558806f5bd83dd79cd268660c74c10b68f9d2f306907ff3d70f4eddcc";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/126.0b5/linux-x86_64/pt-PT/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/127.0b2/linux-x86_64/pt-PT/firefox-127.0b2.tar.bz2";
       locale = "pt-PT";
       arch = "linux-x86_64";
-      sha256 = "ab9bd6fa3dac37103ceaeee7665ed803c4934d4d8412b22fc6ce175c1b537b1f";
+      sha256 = "a8b3d56f1deff85a403f52292ef5bb404d9d879b2a5f104a509b0a8b80c104d7";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/126.0b5/linux-x86_64/rm/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/127.0b2/linux-x86_64/rm/firefox-127.0b2.tar.bz2";
       locale = "rm";
       arch = "linux-x86_64";
-      sha256 = "1b86c15f6bc1036dfd583ead5ffb1495850c1d6f513af0cb9ee6c7e0703d51c8";
+      sha256 = "f03d015b74f1c4c59efae1185332fcd375886cfb1879039e952913e0bc01653c";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/126.0b5/linux-x86_64/ro/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/127.0b2/linux-x86_64/ro/firefox-127.0b2.tar.bz2";
       locale = "ro";
       arch = "linux-x86_64";
-      sha256 = "6611b9c1af4dab80244af1d6f90354d5ff55e7fc3a29ca7ac07a408c62aa527f";
+      sha256 = "05b1900bc3371b04f8db1ea040f66b2b9405c3656546c91b50dfb7b409f90576";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/126.0b5/linux-x86_64/ru/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/127.0b2/linux-x86_64/ru/firefox-127.0b2.tar.bz2";
       locale = "ru";
       arch = "linux-x86_64";
-      sha256 = "8991c38c843101718b10b0d1e1380711593284cc270a7e0897201f3d667a39fc";
+      sha256 = "0e1e4a5b38ca98c1fd518cb69c870e2b450ce112e78e8507308c44a8b6dc3375";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/126.0b5/linux-x86_64/sat/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/127.0b2/linux-x86_64/sat/firefox-127.0b2.tar.bz2";
       locale = "sat";
       arch = "linux-x86_64";
-      sha256 = "d61c74fca1b02ce76d2565219fdd29becb88ec31fa1d66395c9d31fad04cdeee";
+      sha256 = "cc41cf5b4b526a9bc895f7554b0b0893839db74b3919fcbe1db4cade1c82ea5b";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/126.0b5/linux-x86_64/sc/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/127.0b2/linux-x86_64/sc/firefox-127.0b2.tar.bz2";
       locale = "sc";
       arch = "linux-x86_64";
-      sha256 = "64c02479980bf2971bdcf570529375e934c809ecd476fc9b51d892b1a50ea662";
+      sha256 = "b344ac9e2da8e6f047c73232965c7c4439266b619f8cea8c19b1ea1ca966a641";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/126.0b5/linux-x86_64/sco/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/127.0b2/linux-x86_64/sco/firefox-127.0b2.tar.bz2";
       locale = "sco";
       arch = "linux-x86_64";
-      sha256 = "665a262095be81ba608fe959c31a1f90a6f46c20dc73b974fa82892a66559304";
+      sha256 = "1a7fece2bcfb3d98b9208208dc9b7a9d510600aeb70ae11e1ddd1b1b12e3601c";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/126.0b5/linux-x86_64/si/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/127.0b2/linux-x86_64/si/firefox-127.0b2.tar.bz2";
       locale = "si";
       arch = "linux-x86_64";
-      sha256 = "6f32d4c36a30e855f467095935fc2b9417046868602506d3b7b575ad8e3f373a";
+      sha256 = "56ee33a89ca89666e1472d53efa2a8acff04ec522a3163222dfa1d6d1cf49a57";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/126.0b5/linux-x86_64/sk/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/127.0b2/linux-x86_64/sk/firefox-127.0b2.tar.bz2";
       locale = "sk";
       arch = "linux-x86_64";
-      sha256 = "d603440e7ee9b65e12327024ffbd240a63493feab83fd09d2b6ff5ee5c6565c8";
+      sha256 = "902a5924145bdaf90115c2c57431bd1991a6cee462f6987da29d1b8e34db71c3";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/126.0b5/linux-x86_64/sl/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/127.0b2/linux-x86_64/sl/firefox-127.0b2.tar.bz2";
       locale = "sl";
       arch = "linux-x86_64";
-      sha256 = "19fe649c94f9f5d6f583c2fc437d63c4998fd8954f14674e691d8c55329a865c";
+      sha256 = "d311ed3866a915878a16bc533f9ae737ddf3d05c49f24a9b13f4b592f3388219";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/126.0b5/linux-x86_64/son/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/127.0b2/linux-x86_64/son/firefox-127.0b2.tar.bz2";
       locale = "son";
       arch = "linux-x86_64";
-      sha256 = "33ffee14974d1723f91fb456d2a2f7a61f4b9d8f8c205744b455b143cb22f32d";
+      sha256 = "7428961daa14b04b2f7edd973c71426b18a48fc4ce50242c93a286133296ed36";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/126.0b5/linux-x86_64/sq/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/127.0b2/linux-x86_64/sq/firefox-127.0b2.tar.bz2";
       locale = "sq";
       arch = "linux-x86_64";
-      sha256 = "b6a69416597c5b62863d5bcc9ee4ac63de03e13808b7875bbf75d531578e1db7";
+      sha256 = "79012e6a60439783acc6c0eb1728ca9941e74caf4de4124ef92e5b298e24edbf";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/126.0b5/linux-x86_64/sr/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/127.0b2/linux-x86_64/sr/firefox-127.0b2.tar.bz2";
       locale = "sr";
       arch = "linux-x86_64";
-      sha256 = "7a354737335048a21a95c581a7db7b4186779f97e4900304a5bb93566af4952f";
+      sha256 = "4bbc651ff8ee786d86abb4bdc80a3ef1854abe0e11cb6edaef278c9af0f45424";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/126.0b5/linux-x86_64/sv-SE/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/127.0b2/linux-x86_64/sv-SE/firefox-127.0b2.tar.bz2";
       locale = "sv-SE";
       arch = "linux-x86_64";
-      sha256 = "58e676c649f9d6135cc347349660a7b364429fdf8f025570f8b0791868f5d0ab";
+      sha256 = "9ab669d6ce2f9759fbaa5fdfc3d8484c6be7325b8fea6c10fbb189c79f7d63fa";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/126.0b5/linux-x86_64/szl/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/127.0b2/linux-x86_64/szl/firefox-127.0b2.tar.bz2";
       locale = "szl";
       arch = "linux-x86_64";
-      sha256 = "4dedbb590cc4ef2330aea3d99a6f782b3c8ac2bb3cdbf21ae4f96527ea75d1bb";
+      sha256 = "637490e3ec6f43435acb7be533b96f578787e3a3aa7ba9d442160fea0464c2af";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/126.0b5/linux-x86_64/ta/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/127.0b2/linux-x86_64/ta/firefox-127.0b2.tar.bz2";
       locale = "ta";
       arch = "linux-x86_64";
-      sha256 = "91d142a2c2a0d85cb468889d84ecd6411309083b7a7802e0ecaf0767a697e574";
+      sha256 = "1829a92df9454ffc74c36b9cc7332fd26719c9d4b92058fc5908d30f68a3f671";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/126.0b5/linux-x86_64/te/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/127.0b2/linux-x86_64/te/firefox-127.0b2.tar.bz2";
       locale = "te";
       arch = "linux-x86_64";
-      sha256 = "a803b84500d8d456f27e48bec8e28b6dfe1b3a2138928edbba8a493f49752e84";
+      sha256 = "72534deb9b488b5603e01a35b30a2b83112f2dd003db42561b7f0399517731a4";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/126.0b5/linux-x86_64/tg/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/127.0b2/linux-x86_64/tg/firefox-127.0b2.tar.bz2";
       locale = "tg";
       arch = "linux-x86_64";
-      sha256 = "3deececb0f338d687eb691efac5a4cb653ebbeff9e5cb8532c7c7f8a7566429b";
+      sha256 = "d24a1ebdcc76cea27f975320edb47e6ce525655b84acae8f280ebbe5631c0219";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/126.0b5/linux-x86_64/th/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/127.0b2/linux-x86_64/th/firefox-127.0b2.tar.bz2";
       locale = "th";
       arch = "linux-x86_64";
-      sha256 = "ef83982d27cff044938d0648bd4eaeae5ffa99e3d64f5abeee0b5008fa2ed93d";
+      sha256 = "719686c8efeacd4b63e7e9aa94209cff67366ccc86c544e4a2bc842567a9e3a9";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/126.0b5/linux-x86_64/tl/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/127.0b2/linux-x86_64/tl/firefox-127.0b2.tar.bz2";
       locale = "tl";
       arch = "linux-x86_64";
-      sha256 = "2b52f3b404d8f7d289300116f7069a19bfdcef4d28cbc31951137ee91b771f01";
+      sha256 = "c78cc08b8c1cfe4ffc80a5e807faf4af7e90a57a5b9739f33639a646e28ebacf";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/126.0b5/linux-x86_64/tr/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/127.0b2/linux-x86_64/tr/firefox-127.0b2.tar.bz2";
       locale = "tr";
       arch = "linux-x86_64";
-      sha256 = "abdd243d3de3fe4410da0d5c332538fd106a3bf7007d7bc410700bc83277b1a2";
+      sha256 = "2a5853136c6f5dd07afdc08aaebbc60aa4dd456b4aba234cc688954a15774391";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/126.0b5/linux-x86_64/trs/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/127.0b2/linux-x86_64/trs/firefox-127.0b2.tar.bz2";
       locale = "trs";
       arch = "linux-x86_64";
-      sha256 = "bbfe1fba6424c743ff7e6e8ba692e7cf9a46491e29af4d9efba330d44d4625e8";
+      sha256 = "6dcf30137ac65487e742da53b78d65c0340499844c2218544b8e7bfb05e97781";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/126.0b5/linux-x86_64/uk/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/127.0b2/linux-x86_64/uk/firefox-127.0b2.tar.bz2";
       locale = "uk";
       arch = "linux-x86_64";
-      sha256 = "85d2599c2161979f181df50a17c1b77cb74e71f1be94d2b753b8987ec9349eb7";
+      sha256 = "a527e757cce638eee372653ee01ec10bbfad73d82790392fa1ee61af0bbf2597";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/126.0b5/linux-x86_64/ur/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/127.0b2/linux-x86_64/ur/firefox-127.0b2.tar.bz2";
       locale = "ur";
       arch = "linux-x86_64";
-      sha256 = "9eba764802ef50860b4a1c85b3202a6464c3e1ef2bb5df70d6d052735cfac21b";
+      sha256 = "85cb53b95c31ac441c8ddc94345e8fa9d850c21026983be4c04f5ea9868f6dce";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/126.0b5/linux-x86_64/uz/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/127.0b2/linux-x86_64/uz/firefox-127.0b2.tar.bz2";
       locale = "uz";
       arch = "linux-x86_64";
-      sha256 = "82f8614c230a75f41e5c5639c60b658d4fac8fa9056615c64cf4a928ae1eb418";
+      sha256 = "2c911bfe03d0a0d3fdb916994175e14c364a537ba4f5bbdf99f6f690c3613eb5";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/126.0b5/linux-x86_64/vi/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/127.0b2/linux-x86_64/vi/firefox-127.0b2.tar.bz2";
       locale = "vi";
       arch = "linux-x86_64";
-      sha256 = "f595caa6bd9f77b151c9a5d74020870df9a8c7827360a491fa6174d85265a026";
+      sha256 = "adb663aed1929e13a453aeecb61c4f4f004ea8371f38c09e92b7d54d748430b4";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/126.0b5/linux-x86_64/xh/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/127.0b2/linux-x86_64/xh/firefox-127.0b2.tar.bz2";
       locale = "xh";
       arch = "linux-x86_64";
-      sha256 = "27ff854d32c01c3a2bb9e7133b7a2ced467e47ef99f5144b8d24a3b7ca313ad6";
+      sha256 = "6bf462938eb5fb8d49c48e184f5369720678fd6b57db637a8caf6e646c902beb";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/126.0b5/linux-x86_64/zh-CN/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/127.0b2/linux-x86_64/zh-CN/firefox-127.0b2.tar.bz2";
       locale = "zh-CN";
       arch = "linux-x86_64";
-      sha256 = "67636bffcfb4e156be1fcb3f4d686ae892a78385f77d8d735f79b2c849740a6e";
+      sha256 = "c739dfc3c269b15f0908a981a4e3378a60d267749c538f1ea8ace08cf0c6b83f";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/126.0b5/linux-x86_64/zh-TW/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/127.0b2/linux-x86_64/zh-TW/firefox-127.0b2.tar.bz2";
       locale = "zh-TW";
       arch = "linux-x86_64";
-      sha256 = "62229e20c259a5d9f070477bce5c5082053b68f10017014eaef714a627056ec1";
+      sha256 = "1c042f3953a99a593fd214fafcfc18cd60106691a220ad763c216c24a24af907";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/126.0b5/linux-i686/ach/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/127.0b2/linux-i686/ach/firefox-127.0b2.tar.bz2";
       locale = "ach";
       arch = "linux-i686";
-      sha256 = "e745ec55aee55bb8f68fbe076d0177eeffd730390633b31817575a0e644dcb03";
+      sha256 = "72d6c4dab751df00c1db3865f2ed9e2eeb74495b8f52f7c3397f00ea3d99b72e";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/126.0b5/linux-i686/af/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/127.0b2/linux-i686/af/firefox-127.0b2.tar.bz2";
       locale = "af";
       arch = "linux-i686";
-      sha256 = "e70f999ee5b532d1602e7cb43db58219ea09ba123ef571ce39374fb6afa15c07";
+      sha256 = "63b500d84f8e4677a0f12e664d4797d5a5144ab5ea8682a33df0d90672d73ff9";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/126.0b5/linux-i686/an/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/127.0b2/linux-i686/an/firefox-127.0b2.tar.bz2";
       locale = "an";
       arch = "linux-i686";
-      sha256 = "4f50f835ceeed6552c71faa076b8d4828ca555224c21d57044fe895ee28175b6";
+      sha256 = "324d1cc5c897a779b9d3b884802f552e3dc35e0ddcb6fbe4e103ca16cefc0e06";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/126.0b5/linux-i686/ar/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/127.0b2/linux-i686/ar/firefox-127.0b2.tar.bz2";
       locale = "ar";
       arch = "linux-i686";
-      sha256 = "ba0d02b76cfdb14da5be452c51c19825ae41a866248e7cb5f2b997f75a25c505";
+      sha256 = "46698609453be896ebbf525441b93a22649f58b48daaa6497b7c82cf0dced27e";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/126.0b5/linux-i686/ast/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/127.0b2/linux-i686/ast/firefox-127.0b2.tar.bz2";
       locale = "ast";
       arch = "linux-i686";
-      sha256 = "83031e923adbcb3e2e97fd2e76e8babac19de9cd74e9645524181dc10a3b3e9f";
+      sha256 = "15334e0e03b14dd1cad216c48ed2647a307d6972c59af2ce8a50c34d8f6536dd";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/126.0b5/linux-i686/az/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/127.0b2/linux-i686/az/firefox-127.0b2.tar.bz2";
       locale = "az";
       arch = "linux-i686";
-      sha256 = "6a508a257fd60549dd860478cbeca325d253339ce6fab4689c06088b13ecb704";
+      sha256 = "25832b0e66044c906d3d18e45cc8056829a48d6a258263d57a318fb80f779f47";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/126.0b5/linux-i686/be/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/127.0b2/linux-i686/be/firefox-127.0b2.tar.bz2";
       locale = "be";
       arch = "linux-i686";
-      sha256 = "21d59f6ad32aa479152d66f8175076635b1c73b4e207f1aa35e07157ea777316";
+      sha256 = "5da75213b69375da57461b62b87c74fe1d9338d1d82db15d7595dd0dd47184be";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/126.0b5/linux-i686/bg/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/127.0b2/linux-i686/bg/firefox-127.0b2.tar.bz2";
       locale = "bg";
       arch = "linux-i686";
-      sha256 = "40024c75ff970c4aeac578bce18132da65f3cfd350ddf3ac40db3d77b89bdb1b";
+      sha256 = "1e46f0babb84f05a850fe210a1758a220b36588dfede7acedbfb175fca02efa8";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/126.0b5/linux-i686/bn/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/127.0b2/linux-i686/bn/firefox-127.0b2.tar.bz2";
       locale = "bn";
       arch = "linux-i686";
-      sha256 = "63fdf24099be89b42f8de2f1cf6be1b88fbab53549db2f2aac32f6f104d2fb21";
+      sha256 = "340e7f95b2634f55828bd9ab7aa71fb66aa9286dc6dfe1556b3424ee3d6211e8";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/126.0b5/linux-i686/br/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/127.0b2/linux-i686/br/firefox-127.0b2.tar.bz2";
       locale = "br";
       arch = "linux-i686";
-      sha256 = "76a417479be76f62776386d9f4d47b1cd82b14ff2822dbf291e157a947323178";
+      sha256 = "78c61645c894beeb1fc0f8ff0cbe2b5965bd8836e69352dd14c7afc9325c3639";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/126.0b5/linux-i686/bs/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/127.0b2/linux-i686/bs/firefox-127.0b2.tar.bz2";
       locale = "bs";
       arch = "linux-i686";
-      sha256 = "fa82ff92eca43fa651f180dfcae0e138398f4960c2802b7b8023b50a17e0cff9";
+      sha256 = "fef646ca2156fd30c13265cfebb1ae8b2412096d8c49195fbe601f24a3f13b8f";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/126.0b5/linux-i686/ca-valencia/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/127.0b2/linux-i686/ca-valencia/firefox-127.0b2.tar.bz2";
       locale = "ca-valencia";
       arch = "linux-i686";
-      sha256 = "73ee09b6b91f8e38387084affb6d3533e7583056e4add60cf2d986223f870932";
+      sha256 = "5db919c4472c9ee6604b5d696307f80803b6c75cb31eae31b5cb0ba0fa6dbce5";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/126.0b5/linux-i686/ca/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/127.0b2/linux-i686/ca/firefox-127.0b2.tar.bz2";
       locale = "ca";
       arch = "linux-i686";
-      sha256 = "3de33a1ff17e433d4670d0f5824634014e3954aa3cf04707d117bb30c14c8325";
+      sha256 = "1556e239f46068cd74d09419216c1d80f924099657c528840f0458207c60667a";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/126.0b5/linux-i686/cak/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/127.0b2/linux-i686/cak/firefox-127.0b2.tar.bz2";
       locale = "cak";
       arch = "linux-i686";
-      sha256 = "3380c26b6a7ef5e172000972b5f0c6552f42777f442893752fbf9eef90934f5b";
+      sha256 = "ed744ad20501944ea277503aeac81e80eede8f6510bb17b14a4a44fdc221e51e";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/126.0b5/linux-i686/cs/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/127.0b2/linux-i686/cs/firefox-127.0b2.tar.bz2";
       locale = "cs";
       arch = "linux-i686";
-      sha256 = "f2b6c9af691b6801ca43658e4a84f29de5564826df6b28c46f16bd98b6cb098a";
+      sha256 = "1bd77cd1fbfa98aac9e671207a792b4608ee89ba0a80e3d4c5379b5f8ca6840e";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/126.0b5/linux-i686/cy/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/127.0b2/linux-i686/cy/firefox-127.0b2.tar.bz2";
       locale = "cy";
       arch = "linux-i686";
-      sha256 = "48352b9c604ab522a5fa0053b2c0bf3a0bff1efb1b084bbfd76fdbf84c08114a";
+      sha256 = "aa33ddad03a86c2e86b19c8fc53ff68e47f7258a36db61bf99c7f09689ebd54b";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/126.0b5/linux-i686/da/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/127.0b2/linux-i686/da/firefox-127.0b2.tar.bz2";
       locale = "da";
       arch = "linux-i686";
-      sha256 = "3eaae894a7aa15604b70fe046209f1b59213c789160e6cab1d647f3541f339b1";
+      sha256 = "24d6b807c6e5af3f4f5eb905165c30e4da754fbaf2a77e01703189281575fd6c";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/126.0b5/linux-i686/de/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/127.0b2/linux-i686/de/firefox-127.0b2.tar.bz2";
       locale = "de";
       arch = "linux-i686";
-      sha256 = "bbbfe83e4dbc5b32d8cc619a662cefb79d41dd918be3def4af8f65f665e63486";
+      sha256 = "2b02c27cbfa8757d52fa83a713e34494a8f6d32ed3c06d5a65e80d6c8f61d0e1";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/126.0b5/linux-i686/dsb/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/127.0b2/linux-i686/dsb/firefox-127.0b2.tar.bz2";
       locale = "dsb";
       arch = "linux-i686";
-      sha256 = "d3cc51b4db1e54768515e40a2389c8103e683538a04bb74141379fa49e171875";
+      sha256 = "0b88fcbc7ae3c1fa90ac95afaefbabecaa27f3cade1b29601dacd830f85ed027";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/126.0b5/linux-i686/el/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/127.0b2/linux-i686/el/firefox-127.0b2.tar.bz2";
       locale = "el";
       arch = "linux-i686";
-      sha256 = "828f22975e4887cc159aeb5a9d3bbc52c9e7c725b67d360726416df200a419f0";
+      sha256 = "1a0fd9122a50bb9be44e708445fce01c13ff647d33dd12ad97ebeddab3b48e0b";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/126.0b5/linux-i686/en-CA/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/127.0b2/linux-i686/en-CA/firefox-127.0b2.tar.bz2";
       locale = "en-CA";
       arch = "linux-i686";
-      sha256 = "3884e77d81703ef9d6acbff25af5927865bdde7d4981e18655abb3166bbddb65";
+      sha256 = "e6a0237854cb5caec800b5891a459ca18d499b6084cbbf2640a058b1de84969a";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/126.0b5/linux-i686/en-GB/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/127.0b2/linux-i686/en-GB/firefox-127.0b2.tar.bz2";
       locale = "en-GB";
       arch = "linux-i686";
-      sha256 = "7b9adb908e1c7d1c179029ff25aaa00a758e04bb8a5a607fb90b1b245b337022";
+      sha256 = "85fd87d1d8c5d36281b9dbd5f6e1b702155bcf01f416840cb855d734499d3e47";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/126.0b5/linux-i686/en-US/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/127.0b2/linux-i686/en-US/firefox-127.0b2.tar.bz2";
       locale = "en-US";
       arch = "linux-i686";
-      sha256 = "9942b9508e98fc122bba6c0e7d38fa8557095e70f42152ea3c4b20b889dd0fd1";
+      sha256 = "5f272b38ea6f9c022fd8de8007e5edd6efd541d4decde664ae8e1384ad08adb3";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/126.0b5/linux-i686/eo/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/127.0b2/linux-i686/eo/firefox-127.0b2.tar.bz2";
       locale = "eo";
       arch = "linux-i686";
-      sha256 = "1cc4a48d5a3ae5297d1ad31ea0ca57d92a3b2921886cfc589da5d09c696e13e5";
+      sha256 = "5d7eae015528d9abd14468be11f2733fec6a414907536a27ab35e55cab85e914";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/126.0b5/linux-i686/es-AR/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/127.0b2/linux-i686/es-AR/firefox-127.0b2.tar.bz2";
       locale = "es-AR";
       arch = "linux-i686";
-      sha256 = "9111c3381205b7172dccc16fe7196dfa355c492d3dd00b3bb15c8e5facb36c3d";
+      sha256 = "8341d9c04aae5b53d50e7bd53c1252cc123ae3e8d727c06ebcdb11a9ed4d4c35";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/126.0b5/linux-i686/es-CL/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/127.0b2/linux-i686/es-CL/firefox-127.0b2.tar.bz2";
       locale = "es-CL";
       arch = "linux-i686";
-      sha256 = "2f77fc72d82b996ea5e0cc6334f1a90bc0c719a5db46cb04f83702725e578ad2";
+      sha256 = "7289ef98833d65d87bfb18be5399a957f51309b16f8159c3f2217a190518a519";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/126.0b5/linux-i686/es-ES/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/127.0b2/linux-i686/es-ES/firefox-127.0b2.tar.bz2";
       locale = "es-ES";
       arch = "linux-i686";
-      sha256 = "b4e354ef02a92683efb1b37641b70289b7f9125fc8bacd2eb56db73cb716411e";
+      sha256 = "8eb1c37ea72e9b0236eee4358f9f26457779f8380b69df6557326429fef503e2";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/126.0b5/linux-i686/es-MX/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/127.0b2/linux-i686/es-MX/firefox-127.0b2.tar.bz2";
       locale = "es-MX";
       arch = "linux-i686";
-      sha256 = "52186331c8196014eb6cff4df3b5f8a05c5128d3adcf3e1753fe98052a5a12e4";
+      sha256 = "b0d10daadc2d08055f662fec68214b237132b573ec47e99d2960919722b95570";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/126.0b5/linux-i686/et/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/127.0b2/linux-i686/et/firefox-127.0b2.tar.bz2";
       locale = "et";
       arch = "linux-i686";
-      sha256 = "6770e974febfa296032c0b0cfa502ed5e49d4f5abd6e5c955faff8521149750e";
+      sha256 = "9a1416673d108f758e9dec558b0172f51c8a5b89dc404a92ea53771b908e4680";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/126.0b5/linux-i686/eu/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/127.0b2/linux-i686/eu/firefox-127.0b2.tar.bz2";
       locale = "eu";
       arch = "linux-i686";
-      sha256 = "b85b03cfaf1e267221870983c0758f0bb55cb56dafc8b2fa5bf2abd5ed21c995";
+      sha256 = "1e53908af6ab2880153e8e064d41e78e1122e7bf947d66dd8af65a34a0721c25";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/126.0b5/linux-i686/fa/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/127.0b2/linux-i686/fa/firefox-127.0b2.tar.bz2";
       locale = "fa";
       arch = "linux-i686";
-      sha256 = "bf5f61add2c256e3bbfa5c88226281a2db10ed03d00b402f86704b4da8b0afa4";
+      sha256 = "e28778489b5441ea01313a7dbdc90d21364ab96749090920f702a444208e55e3";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/126.0b5/linux-i686/ff/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/127.0b2/linux-i686/ff/firefox-127.0b2.tar.bz2";
       locale = "ff";
       arch = "linux-i686";
-      sha256 = "7f84fd845da18d148c5c63466a1750d0f424f644e7732b8d9e13d4deeabc0a2a";
+      sha256 = "e58f6d9b8eddb6d274b4715eb82cbe6899c40e8fa32cbf007f28e4e6650aafe0";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/126.0b5/linux-i686/fi/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/127.0b2/linux-i686/fi/firefox-127.0b2.tar.bz2";
       locale = "fi";
       arch = "linux-i686";
-      sha256 = "7dc05fc7c6c79576ef97efe8b09456686e04a2b5a4d315de26aa4a7de6c445d8";
+      sha256 = "82956e939fe1c1d85c09153365b30edb77eac0e33b330c4d343700b034465076";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/126.0b5/linux-i686/fr/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/127.0b2/linux-i686/fr/firefox-127.0b2.tar.bz2";
       locale = "fr";
       arch = "linux-i686";
-      sha256 = "e25887b699127aa34bd89a1e95a8a66ee3c755fe88425ef14f8b5ec74ca24f74";
+      sha256 = "6a1fbec35e84fca5deb28aeef5c39d5549534b3725071663cb0088390beefaa3";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/126.0b5/linux-i686/fur/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/127.0b2/linux-i686/fur/firefox-127.0b2.tar.bz2";
       locale = "fur";
       arch = "linux-i686";
-      sha256 = "6f42f68553ed54a7933fe22d35e72a0251bc4bf115a05005ad0e5136afacb8f4";
+      sha256 = "9bc2ce0f10dc3b43d799238e09af614925d4a0040b29811f99f46027ea97f910";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/126.0b5/linux-i686/fy-NL/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/127.0b2/linux-i686/fy-NL/firefox-127.0b2.tar.bz2";
       locale = "fy-NL";
       arch = "linux-i686";
-      sha256 = "32552aad5837fd035f1b6c8609327b0fdecd21ed068bf1c087c37d5fa289ff2d";
+      sha256 = "48c235ec4e318d3333701cd9fdbfcf25e27134accaf14aabfb7764463dc813c8";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/126.0b5/linux-i686/ga-IE/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/127.0b2/linux-i686/ga-IE/firefox-127.0b2.tar.bz2";
       locale = "ga-IE";
       arch = "linux-i686";
-      sha256 = "ef3a8cc08ea7efaa89571f101502f41eb420ff93eee126bd135b58a34a2eb507";
+      sha256 = "774edd13527f00028f2e90e5af22f1747bb4a2e1c6b80e7849e9fd4af2031b4f";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/126.0b5/linux-i686/gd/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/127.0b2/linux-i686/gd/firefox-127.0b2.tar.bz2";
       locale = "gd";
       arch = "linux-i686";
-      sha256 = "200ceeb1cc4ce76c7eeb138474d0e92a673dcaa7ce9c422144ffea12192258d7";
+      sha256 = "ee49542e1c43ab6e85f9c6bf43eebdb1f3e8c26da082f5c8e32883f932ddd6bc";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/126.0b5/linux-i686/gl/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/127.0b2/linux-i686/gl/firefox-127.0b2.tar.bz2";
       locale = "gl";
       arch = "linux-i686";
-      sha256 = "23faa528dfa7650fd08eb563d1f35161b64df07f0e6c39fb973e731b259d2f6f";
+      sha256 = "40e25036b2fa4d1c45287272749b83d8b6997c27968f5154f59d5fd1448d1aed";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/126.0b5/linux-i686/gn/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/127.0b2/linux-i686/gn/firefox-127.0b2.tar.bz2";
       locale = "gn";
       arch = "linux-i686";
-      sha256 = "298baa1de50fae2edc5de0f7dbc574a2234ae829875dba8fe23462f1dc34bcd9";
+      sha256 = "8fe7e211c79b3cef4a2e752ed31f028ba29dea103747b2502b002cf22af97b1a";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/126.0b5/linux-i686/gu-IN/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/127.0b2/linux-i686/gu-IN/firefox-127.0b2.tar.bz2";
       locale = "gu-IN";
       arch = "linux-i686";
-      sha256 = "0ef24de04d3e31ce6b6484c83e3daa5ccb2e756039ff5a60cfe27107ad6c5ad9";
+      sha256 = "6174d4d698c06431df17b3f3ca8b40463620f2de8a84c6d60bd7aa37a2202f84";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/126.0b5/linux-i686/he/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/127.0b2/linux-i686/he/firefox-127.0b2.tar.bz2";
       locale = "he";
       arch = "linux-i686";
-      sha256 = "80da93cde19b28f04130f8fb0c2b53ecf13e0894ddd4568a5326e24ae688b30b";
+      sha256 = "aea8d49e71f5567725fd1498d1ada41ee5ddb4a39e984fb82a7a37e6461ddf82";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/126.0b5/linux-i686/hi-IN/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/127.0b2/linux-i686/hi-IN/firefox-127.0b2.tar.bz2";
       locale = "hi-IN";
       arch = "linux-i686";
-      sha256 = "b3cf03edf9b7ce6be6300f7f0d5da539bfaec1ee76258958c4eb2656296950cc";
+      sha256 = "fb0d1b12197bd756b66b318024f3bd8b6d082460447fa8e25858bcd83709c483";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/126.0b5/linux-i686/hr/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/127.0b2/linux-i686/hr/firefox-127.0b2.tar.bz2";
       locale = "hr";
       arch = "linux-i686";
-      sha256 = "3aabe5e9a05e995882ed37093450967f573b752c20fffec199e6fbc26dfbb963";
+      sha256 = "0d122bc0c58f6d19e2508d70cf509c06c7fc6eacdf38e7f96d1006f837b97615";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/126.0b5/linux-i686/hsb/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/127.0b2/linux-i686/hsb/firefox-127.0b2.tar.bz2";
       locale = "hsb";
       arch = "linux-i686";
-      sha256 = "19591b3d2ab98eefa993e71558c00320a5bafde9dfef83ea62aa5d466150ca0e";
+      sha256 = "a248a771f298fc00b1f752a4f48838e356f1a0be8da21b2eced40cf238a5b574";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/126.0b5/linux-i686/hu/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/127.0b2/linux-i686/hu/firefox-127.0b2.tar.bz2";
       locale = "hu";
       arch = "linux-i686";
-      sha256 = "8a54355ee1ec9d0670b0d5a785ed5a19667159928687cac8769926adcf48fb68";
+      sha256 = "6851a94bb5ae5f5b9995bb71f38419faa0a1cd4aeb09f73d839927f440148815";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/126.0b5/linux-i686/hy-AM/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/127.0b2/linux-i686/hy-AM/firefox-127.0b2.tar.bz2";
       locale = "hy-AM";
       arch = "linux-i686";
-      sha256 = "db30cafc71ccc29f1bd338ea78ad0ac046e2a29a7f20a5b58092398f5b0d11be";
+      sha256 = "e495954e290bb7159d9583d7de648aaece79bd729bc88b5f3653ebf8edb2e8bb";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/126.0b5/linux-i686/ia/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/127.0b2/linux-i686/ia/firefox-127.0b2.tar.bz2";
       locale = "ia";
       arch = "linux-i686";
-      sha256 = "49ba196e9942db242d421976456fa5178df9b41d270f5c1961d1b5d69b7515c0";
+      sha256 = "5bd7790ed21c2ef82c75ee31ca352701ebeffb7ecb14a73f5a514504980728e7";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/126.0b5/linux-i686/id/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/127.0b2/linux-i686/id/firefox-127.0b2.tar.bz2";
       locale = "id";
       arch = "linux-i686";
-      sha256 = "bd2c2b87753d57172229943e8129523e37057a7118b7fc7597f9898df7e0b9f1";
+      sha256 = "c720c3ce0be48455be7738af00c65f63717796b3a61418f91e1fac66cac01488";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/126.0b5/linux-i686/is/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/127.0b2/linux-i686/is/firefox-127.0b2.tar.bz2";
       locale = "is";
       arch = "linux-i686";
-      sha256 = "cb185e548abfd9169e8db7367df3079779badb29b842a87492030e8402a690aa";
+      sha256 = "9097e1aba384bf9035ad51b723a61093b2eb97b81c8bddb336c2aacbb35f9470";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/126.0b5/linux-i686/it/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/127.0b2/linux-i686/it/firefox-127.0b2.tar.bz2";
       locale = "it";
       arch = "linux-i686";
-      sha256 = "6c06b0f3ab4ad2e5d81bfd3332f7554f3be85fb5a8ff55649d569d90a8cc89be";
+      sha256 = "cddbf8afd27f4fc901e9d7a171287a4f82c5e6659df7ab9ad59801f9c8f649e4";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/126.0b5/linux-i686/ja/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/127.0b2/linux-i686/ja/firefox-127.0b2.tar.bz2";
       locale = "ja";
       arch = "linux-i686";
-      sha256 = "99549b3ae26f1c816c76a75909e1f80dc86d233a1b7fa508ee85eff681a635f8";
+      sha256 = "5c80ada93f5d568c71e21d9c3bd27995c1669505b981497b1f13bb7b3f02c777";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/126.0b5/linux-i686/ka/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/127.0b2/linux-i686/ka/firefox-127.0b2.tar.bz2";
       locale = "ka";
       arch = "linux-i686";
-      sha256 = "6d897e6c4e1f6c3ba73ecfa74f0892f24f8c75d09ac6ed81466b8a5775c4ea6d";
+      sha256 = "7e68ae94a62328b693d36d657b81fef4211cef4b9e074bd03ee2963bb30f0ab1";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/126.0b5/linux-i686/kab/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/127.0b2/linux-i686/kab/firefox-127.0b2.tar.bz2";
       locale = "kab";
       arch = "linux-i686";
-      sha256 = "6e0b66d33d9d589a1ff7999cf88f261b0a8fc6c1ec59c07df05c2fe102f358ee";
+      sha256 = "884dda123990eaf650eb6838a344f36c7aae7915f3540cb8d252f06a9467e814";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/126.0b5/linux-i686/kk/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/127.0b2/linux-i686/kk/firefox-127.0b2.tar.bz2";
       locale = "kk";
       arch = "linux-i686";
-      sha256 = "45b86094d4491f8c60ccd8a0bf29f89859f6ffa5ed2c083fe73279dc05fecdc1";
+      sha256 = "9a633805b09925b1e5a00dd4291680584507ab7e94dfa8ba553641a196f5adb4";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/126.0b5/linux-i686/km/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/127.0b2/linux-i686/km/firefox-127.0b2.tar.bz2";
       locale = "km";
       arch = "linux-i686";
-      sha256 = "6ba5101ba76f482f98f1eee501e3541ca2aca9becbdb8e1c4643e90006eaa0da";
+      sha256 = "0322b0cbbeb52b2cbd80395ca31d1f08794291f79aedb79e9d9658fad8234e80";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/126.0b5/linux-i686/kn/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/127.0b2/linux-i686/kn/firefox-127.0b2.tar.bz2";
       locale = "kn";
       arch = "linux-i686";
-      sha256 = "c07f3148396eee897f020ce04558fadcea9b3b6f138c6c39ed4b3aa57a79a5ad";
+      sha256 = "51621c8c9f5b88402c493ce6813b84afe00236c5971155e1952c52e075014ead";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/126.0b5/linux-i686/ko/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/127.0b2/linux-i686/ko/firefox-127.0b2.tar.bz2";
       locale = "ko";
       arch = "linux-i686";
-      sha256 = "281f31ac39e10c6be379b6bcd4a857959aee8db44b0511c8ca9325d4fab7539c";
+      sha256 = "7537bb740007e4e7bf8cdadb72c78e6cd9c4cecf4b1672b9092e9a1a0c04557f";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/126.0b5/linux-i686/lij/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/127.0b2/linux-i686/lij/firefox-127.0b2.tar.bz2";
       locale = "lij";
       arch = "linux-i686";
-      sha256 = "3c2af4d878658d1a323bef0abb12ae0a8425cd462198d08262718b20325528cd";
+      sha256 = "77cc77b6d45440c7beff04dc4c5fc3043f5d62a6d8a7fa5cec1d068aeb74d6d2";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/126.0b5/linux-i686/lt/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/127.0b2/linux-i686/lt/firefox-127.0b2.tar.bz2";
       locale = "lt";
       arch = "linux-i686";
-      sha256 = "868423a70743ca1d2631d064a08061178dc3ce6443beb3a3707fb4112e0e43b1";
+      sha256 = "3dd9ed70c21c268ffa9c39632a0fa8b6f48cfabe9834826abeb120d88fb242fc";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/126.0b5/linux-i686/lv/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/127.0b2/linux-i686/lv/firefox-127.0b2.tar.bz2";
       locale = "lv";
       arch = "linux-i686";
-      sha256 = "625022c66c3d7a266b91098da78094c3185fd3b1143ea530df71a1c05e3b842f";
+      sha256 = "d493c414466ed8a117b40ead6d13caebf32c9c59abb1658db5d87933ecc7ba5c";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/126.0b5/linux-i686/mk/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/127.0b2/linux-i686/mk/firefox-127.0b2.tar.bz2";
       locale = "mk";
       arch = "linux-i686";
-      sha256 = "6ec70a56d648fa616a3c6a8a284e9bced88e7ce2f50218718db5f04f58a09ec0";
+      sha256 = "adad74ff34d5aca45ca24c39471249c8aba082a3b2cba081def171e6420a2fc7";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/126.0b5/linux-i686/mr/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/127.0b2/linux-i686/mr/firefox-127.0b2.tar.bz2";
       locale = "mr";
       arch = "linux-i686";
-      sha256 = "ef4651dea53de6e7870289f1003f4d2f719c5fb5b360d6674355e2ce04cf95e6";
+      sha256 = "fc44b325f0556f6284fa09b9989bb4aee9dde7f2b98c274ec1c876cca54a651d";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/126.0b5/linux-i686/ms/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/127.0b2/linux-i686/ms/firefox-127.0b2.tar.bz2";
       locale = "ms";
       arch = "linux-i686";
-      sha256 = "5b24c603ead07e26421844f07d9809f6c19b89582cd09f6473cf6abc5db5aa73";
+      sha256 = "665b68f4eca82def832a30f77e206eb6d3ab25959a97c88e94d219652c73a07f";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/126.0b5/linux-i686/my/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/127.0b2/linux-i686/my/firefox-127.0b2.tar.bz2";
       locale = "my";
       arch = "linux-i686";
-      sha256 = "3439db4e7ebde599e2a6baa262acd29a6c2b2087d9e6e1439d7644c49da645fe";
+      sha256 = "5317071a0c2e88c84685c220a39e67b1ee410966dbc3d7f352bb37f619ab2ca3";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/126.0b5/linux-i686/nb-NO/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/127.0b2/linux-i686/nb-NO/firefox-127.0b2.tar.bz2";
       locale = "nb-NO";
       arch = "linux-i686";
-      sha256 = "4033990ccaaf2937f05280962b7cc72f2b78ee39783bf279affde551a6c998f1";
+      sha256 = "00734efcb8d9aa70720bfed3d49718044aba1088c48beb9d3a618439e806bc17";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/126.0b5/linux-i686/ne-NP/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/127.0b2/linux-i686/ne-NP/firefox-127.0b2.tar.bz2";
       locale = "ne-NP";
       arch = "linux-i686";
-      sha256 = "d4ea47c773d8ac97701f13705c0a1fc13d0f1de8f861584adbabbe00d6480ae3";
+      sha256 = "0aa7eaf8cddd8399be7e4361bd700641b4e23c55c5ba571307a5d68a23825d52";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/126.0b5/linux-i686/nl/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/127.0b2/linux-i686/nl/firefox-127.0b2.tar.bz2";
       locale = "nl";
       arch = "linux-i686";
-      sha256 = "e7b2ba4a793462905777a897fbd16377296151c4a11757abf678ad58632ffde0";
+      sha256 = "c45ce8548a7681039d2f8eea1034e34b669f98e8b1ce195f1e97585a75f7add6";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/126.0b5/linux-i686/nn-NO/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/127.0b2/linux-i686/nn-NO/firefox-127.0b2.tar.bz2";
       locale = "nn-NO";
       arch = "linux-i686";
-      sha256 = "eafec75a25348745aa88acb24d6caaddf5e7bdbcb4f538e1e3e4c1167784768c";
+      sha256 = "d43f42e73f98b724652eb7d771bf3766c53337985df41ad3a93bc9dc6ced1c39";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/126.0b5/linux-i686/oc/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/127.0b2/linux-i686/oc/firefox-127.0b2.tar.bz2";
       locale = "oc";
       arch = "linux-i686";
-      sha256 = "2c0b590f5506a46431a3270e6b12ce4824f7ae9e04e6c145a071ca524b309eec";
+      sha256 = "dfd0c96c49bf69e55f86d9b81f81c9e61af87323a68624c7ae9d1fe337404e02";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/126.0b5/linux-i686/pa-IN/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/127.0b2/linux-i686/pa-IN/firefox-127.0b2.tar.bz2";
       locale = "pa-IN";
       arch = "linux-i686";
-      sha256 = "2af8102efcdd489a5cff669f4b37f1b98156a118260ab60d3d626d7c61ce9b86";
+      sha256 = "704a4534dd144aab5b99a2a1daa42af6ff2fc85ff586d7fefcd90daabd39f691";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/126.0b5/linux-i686/pl/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/127.0b2/linux-i686/pl/firefox-127.0b2.tar.bz2";
       locale = "pl";
       arch = "linux-i686";
-      sha256 = "aa55f3d1d6c1206717f0190607598bd8a878cf439e4cad104751e57cdeb85f90";
+      sha256 = "dccbf1e6b1c463c60cb321be32a2d169e4669ba295a9e46a24c1fdb1a9a3fc60";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/126.0b5/linux-i686/pt-BR/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/127.0b2/linux-i686/pt-BR/firefox-127.0b2.tar.bz2";
       locale = "pt-BR";
       arch = "linux-i686";
-      sha256 = "09284e4c296dad6cef7964d26ee32e8bdcc4fe92060dc555d8a532e491f81cf2";
+      sha256 = "30954bceb1149e8f0fb1f2572b48e6a812f9040e2956a0a00ba9861eed0419a4";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/126.0b5/linux-i686/pt-PT/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/127.0b2/linux-i686/pt-PT/firefox-127.0b2.tar.bz2";
       locale = "pt-PT";
       arch = "linux-i686";
-      sha256 = "df14751d2697dd65d48eb9db603a3571c8b3190b6c55f489cefa6d3a3a8a157a";
+      sha256 = "3adb9cabe5ef28e532c9876459a7c711bff44e829c555db57f228a2034aee55e";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/126.0b5/linux-i686/rm/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/127.0b2/linux-i686/rm/firefox-127.0b2.tar.bz2";
       locale = "rm";
       arch = "linux-i686";
-      sha256 = "d87f9d823aa7d558acf224ac38f593e3e5209e4266ed407ad2264947b7b6dfab";
+      sha256 = "c392f15e019222daff27c5be0d5e695d41840e7df3ddeefc3768936a1899c60f";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/126.0b5/linux-i686/ro/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/127.0b2/linux-i686/ro/firefox-127.0b2.tar.bz2";
       locale = "ro";
       arch = "linux-i686";
-      sha256 = "7d3eb55686c8cd3f80adb635ffb7f8a2056839df92324014bc2efecf05332fc9";
+      sha256 = "57b2b6e3aa50de0cc122c9612a098adc3d406ae6700af3799d900f6b1099fd16";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/126.0b5/linux-i686/ru/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/127.0b2/linux-i686/ru/firefox-127.0b2.tar.bz2";
       locale = "ru";
       arch = "linux-i686";
-      sha256 = "498150f664b618217a6860c44b0ea40a873fb54a99dbb8287e156bb18ad7493c";
+      sha256 = "b0c0f87f4689c29a5ab1dd05bec2fd890764e8610baf480d48f2bc56c45d8c1a";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/126.0b5/linux-i686/sat/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/127.0b2/linux-i686/sat/firefox-127.0b2.tar.bz2";
       locale = "sat";
       arch = "linux-i686";
-      sha256 = "6e2b704f0a6d47bf49ee8bbc4704093792f16dd3e44b78fad658ee92ee680d38";
+      sha256 = "29f12ee83180384d8480a0ff3b7eb8d8380ba6e80aaa79889ecdb507ba5a18cf";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/126.0b5/linux-i686/sc/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/127.0b2/linux-i686/sc/firefox-127.0b2.tar.bz2";
       locale = "sc";
       arch = "linux-i686";
-      sha256 = "2e38cbd7c6304ab68cbf310d6e155a3923b5fdd0eab9e4501e191aaa1c792a75";
+      sha256 = "feb0ff2b4a5ecb51daf6a9a37f835e50894ba73300242d5f1375e210aed9df09";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/126.0b5/linux-i686/sco/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/127.0b2/linux-i686/sco/firefox-127.0b2.tar.bz2";
       locale = "sco";
       arch = "linux-i686";
-      sha256 = "e1f7336f6fcee8d067c9e8ea3310c98e268b0c1325ca9ab3e2e3b985c0f13871";
+      sha256 = "ce078b281d4f8a57b3bff091ac6e7bb04ecf401885150443945390ef0da30d1c";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/126.0b5/linux-i686/si/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/127.0b2/linux-i686/si/firefox-127.0b2.tar.bz2";
       locale = "si";
       arch = "linux-i686";
-      sha256 = "2dbcd443b0a604ad8606910da3f3461e426277cf95889d356c46a3ef91b7c92a";
+      sha256 = "b9dc142b29f4c982e86fb58a7813801fa208386ceadd5f4ce9e46616f524d2d3";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/126.0b5/linux-i686/sk/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/127.0b2/linux-i686/sk/firefox-127.0b2.tar.bz2";
       locale = "sk";
       arch = "linux-i686";
-      sha256 = "a749249d1ffde0dfa6e887dda6dec28cd331e68d1b9c536f8656cf4fc549ad63";
+      sha256 = "9171e3fa56a0611a9e4adc5c2aa4e873b79f0e229ce21f5cd61a855bfe67f228";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/126.0b5/linux-i686/sl/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/127.0b2/linux-i686/sl/firefox-127.0b2.tar.bz2";
       locale = "sl";
       arch = "linux-i686";
-      sha256 = "0fba214a2ec166ed2d198ee67cbb70823fc2ab719501fa8721e347e5890033aa";
+      sha256 = "8d6385d9865439c3184b4c6fabe5a205bca7c96facc510e9d0ad37e338a3685c";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/126.0b5/linux-i686/son/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/127.0b2/linux-i686/son/firefox-127.0b2.tar.bz2";
       locale = "son";
       arch = "linux-i686";
-      sha256 = "b5c1b4da06025a762c3a7e0d825c8d217b99b9997d84cb63fa1b3331d04c3d5c";
+      sha256 = "6041cc7f8929ea4e1109b6bfbd5214415333528a2f371d7226f1d6f9c78b7c0b";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/126.0b5/linux-i686/sq/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/127.0b2/linux-i686/sq/firefox-127.0b2.tar.bz2";
       locale = "sq";
       arch = "linux-i686";
-      sha256 = "2e7cfb921900b72557b620b7cfde39d05a7632726db38c656a1625a589941583";
+      sha256 = "f3d64bf45a205a52f8ce9da83a8929b8946552d8d9b5b2e44d2c4c54b09eb7cc";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/126.0b5/linux-i686/sr/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/127.0b2/linux-i686/sr/firefox-127.0b2.tar.bz2";
       locale = "sr";
       arch = "linux-i686";
-      sha256 = "9e7d7fdddf0c05299448db0e6271ffb8bb297367400cf010af92d38a667c85f7";
+      sha256 = "1189d0fac0bfab52f2536d61ff5b8e9e6bc456cf64d3c9b5c519bb7db86c6cd2";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/126.0b5/linux-i686/sv-SE/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/127.0b2/linux-i686/sv-SE/firefox-127.0b2.tar.bz2";
       locale = "sv-SE";
       arch = "linux-i686";
-      sha256 = "37c2f75952cf9c5c138e890f4b5c4d18c5d6b166b9f361c0532fb2955363f61a";
+      sha256 = "3df8ed2df85ac7cf573518774e6b2d42e4573b9f9396f1cd161072e72135bb0c";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/126.0b5/linux-i686/szl/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/127.0b2/linux-i686/szl/firefox-127.0b2.tar.bz2";
       locale = "szl";
       arch = "linux-i686";
-      sha256 = "b42a7bdd7cdef45d354f43eb3d8640dfd7f4213870d9a5ad5eb62ae497f1ea58";
+      sha256 = "159652951edeefc0a9fdd9c2ef4babb0faf846e14c54a06f00c1e393b2d52ad1";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/126.0b5/linux-i686/ta/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/127.0b2/linux-i686/ta/firefox-127.0b2.tar.bz2";
       locale = "ta";
       arch = "linux-i686";
-      sha256 = "96e64f57a2390f994cc906b4035573b44bddf80578317ea73cf1c9a95c2662ca";
+      sha256 = "b69da473595cb0bf2c540382431f1921d23626902927f6e8433121597954c078";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/126.0b5/linux-i686/te/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/127.0b2/linux-i686/te/firefox-127.0b2.tar.bz2";
       locale = "te";
       arch = "linux-i686";
-      sha256 = "bc8240e066017f3715ca683d77829cc4ed2ab12ea384d79afa759e87fd86aaa2";
+      sha256 = "8a9537e0643c1bd097e343dd270c900be40829ccddab1f2852afc3f7f5291fcb";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/126.0b5/linux-i686/tg/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/127.0b2/linux-i686/tg/firefox-127.0b2.tar.bz2";
       locale = "tg";
       arch = "linux-i686";
-      sha256 = "ab31902edd38fcffb6fa025ee37861ed6b57ca8d08800d6e4f3349bfb7a2a0e7";
+      sha256 = "2b4c01abde3afda35764babfe2314bbc54ff5926d184459fce296de19ae4538c";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/126.0b5/linux-i686/th/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/127.0b2/linux-i686/th/firefox-127.0b2.tar.bz2";
       locale = "th";
       arch = "linux-i686";
-      sha256 = "6bde3a57c5a1f50686d6264327ff3d1b0884f94067b459b4b397e564674e3470";
+      sha256 = "d5b5c5ba8985d964fb618d8a02b00a332d10c88e0c00c0a08392d5152d1a2aee";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/126.0b5/linux-i686/tl/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/127.0b2/linux-i686/tl/firefox-127.0b2.tar.bz2";
       locale = "tl";
       arch = "linux-i686";
-      sha256 = "f89803ec0fc5c5c41c057fb123895a433198abb2c92c3b86ea60edd10d436816";
+      sha256 = "01126fa975a56c35bd39b18bd5fee40a41f937d6de745e19d43adde8313216f6";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/126.0b5/linux-i686/tr/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/127.0b2/linux-i686/tr/firefox-127.0b2.tar.bz2";
       locale = "tr";
       arch = "linux-i686";
-      sha256 = "edd57c9e0a205bcc2696d9fd7dec8ebd06966fa532cfe38dd947045ff14c9c12";
+      sha256 = "9944290424fec68114cc56e7d7f9461d382999ef9f3aa257b796efc4bc45ed1d";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/126.0b5/linux-i686/trs/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/127.0b2/linux-i686/trs/firefox-127.0b2.tar.bz2";
       locale = "trs";
       arch = "linux-i686";
-      sha256 = "0290566d5979ed70e64eb69601bb63404b9f5877f510e86be14dbe7e51d352d0";
+      sha256 = "2bc7e9a06be8d2ea6e9a9db06456ef7762040a9669657f7715e8abd7ed8cb301";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/126.0b5/linux-i686/uk/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/127.0b2/linux-i686/uk/firefox-127.0b2.tar.bz2";
       locale = "uk";
       arch = "linux-i686";
-      sha256 = "d3268a194f9b0bf66afdcb3a412d0eab6cdac32b4dcff6330a701fe92614a2b6";
+      sha256 = "d301919a3f538bd360f471abc2718295a86018fb6c2ef60843373e1eec2b3ac6";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/126.0b5/linux-i686/ur/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/127.0b2/linux-i686/ur/firefox-127.0b2.tar.bz2";
       locale = "ur";
       arch = "linux-i686";
-      sha256 = "4ea0d1695d25ddb08c73ecba4458a7ade7794c0868de1cffc902ea8ed165f5e8";
+      sha256 = "ca49185a9f77b621f7fe3db460181d5dd3f3ffcf5dbfec5e451339efd0ef96d2";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/126.0b5/linux-i686/uz/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/127.0b2/linux-i686/uz/firefox-127.0b2.tar.bz2";
       locale = "uz";
       arch = "linux-i686";
-      sha256 = "d0d1529593d8f7a5b234fa298ec83f04611814aab584da2b390e8e7937fd40e4";
+      sha256 = "0f6c983b18585e1b9b2cdbc47e86a1b56d62126d0b90d770391e9d7502a392aa";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/126.0b5/linux-i686/vi/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/127.0b2/linux-i686/vi/firefox-127.0b2.tar.bz2";
       locale = "vi";
       arch = "linux-i686";
-      sha256 = "afde0e30cf0235c1d104188066b8671b9495441fc03b46d4ca895848b1028e4c";
+      sha256 = "f621f3b433ac410b996f7c7e7e94b680ee7d3425d2e41bdccdfd567ecec094ac";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/126.0b5/linux-i686/xh/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/127.0b2/linux-i686/xh/firefox-127.0b2.tar.bz2";
       locale = "xh";
       arch = "linux-i686";
-      sha256 = "636989a36a31c8a3a81e41bbc03ec7461f05e942eda17d6c65c8876614d5169f";
+      sha256 = "631336f561f9153d0fbd941758aae76bd003ad541a8fb28a650610fba0f84ffd";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/126.0b5/linux-i686/zh-CN/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/127.0b2/linux-i686/zh-CN/firefox-127.0b2.tar.bz2";
       locale = "zh-CN";
       arch = "linux-i686";
-      sha256 = "ae0ee3d69d5c14e36f643c8a7aa50d45e2033d21e657c8c5693acc0a8059c2a1";
+      sha256 = "7332654e1f050b6eabfca74a9fa9ef024f75f77ccc4ec6b8c042a33d1fa09dd0";
     }
-    { url = "https://archive.mozilla.org/pub/devedition/releases/126.0b5/linux-i686/zh-TW/firefox-126.0b5.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/devedition/releases/127.0b2/linux-i686/zh-TW/firefox-127.0b2.tar.bz2";
       locale = "zh-TW";
       arch = "linux-i686";
-      sha256 = "1bdb0ca6b4cc73080c6baa43e8b70668068f722abfeb437a3daee71fe58d6771";
+      sha256 = "77d4db4421b562f34126da6fe7d26221fabc27b1ca7a413c9fc55ed9d89d1f3a";
     }
     ];
 }
diff --git a/pkgs/applications/networking/browsers/firefox-bin/release_sources.nix b/pkgs/applications/networking/browsers/firefox-bin/release_sources.nix
index 3f5392389757..c07a93fb16c6 100644
--- a/pkgs/applications/networking/browsers/firefox-bin/release_sources.nix
+++ b/pkgs/applications/networking/browsers/firefox-bin/release_sources.nix
@@ -1,1025 +1,1025 @@
 {
-  version = "125.0.3";
+  version = "126.0";
   sources = [
-    { url = "https://archive.mozilla.org/pub/firefox/releases/125.0.3/linux-x86_64/ach/firefox-125.0.3.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0/linux-x86_64/ach/firefox-126.0.tar.bz2";
       locale = "ach";
       arch = "linux-x86_64";
-      sha256 = "1811a9f5618f725b80dbda41568985c051b987dca7c2e207a039668a0d48d42d";
+      sha256 = "dda46876fc45b17419fb3c06d09c3b36d0f7fc3ef8cb9dcdff7870ddc72a57e8";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/125.0.3/linux-x86_64/af/firefox-125.0.3.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0/linux-x86_64/af/firefox-126.0.tar.bz2";
       locale = "af";
       arch = "linux-x86_64";
-      sha256 = "5cca7823582d1be336a25278d02bad75d77f37111b43b56e4168b61edab8986a";
+      sha256 = "b1821ce2bb2ce8cde7b688069a174e1fc857e79db03066301d39ee42d6791fe8";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/125.0.3/linux-x86_64/an/firefox-125.0.3.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0/linux-x86_64/an/firefox-126.0.tar.bz2";
       locale = "an";
       arch = "linux-x86_64";
-      sha256 = "d38de568b16d3553402dac58f11c494b0e093523d74c20fcaad172fd87d41ad3";
+      sha256 = "7600270871a1d5bcf5a255998a8c785dad2ca62cfcce2e2c808059b687825b4b";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/125.0.3/linux-x86_64/ar/firefox-125.0.3.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0/linux-x86_64/ar/firefox-126.0.tar.bz2";
       locale = "ar";
       arch = "linux-x86_64";
-      sha256 = "9c643e7791c50c99a8e983e972ff721955af638c2d24a6421e82b0a7dd66f68d";
+      sha256 = "b1d3afe019fbe6a29a199a52cbfd727aa6d89a824a050d268d475e7357da65cb";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/125.0.3/linux-x86_64/ast/firefox-125.0.3.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0/linux-x86_64/ast/firefox-126.0.tar.bz2";
       locale = "ast";
       arch = "linux-x86_64";
-      sha256 = "7cb20ed5898279ef7f96aa33ff931438b553f964d12d94ffaee1925b9523c8cc";
+      sha256 = "78495567e03154559d4d92cd655a5214d84cf5f3621c825fe54d83379d3f68b7";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/125.0.3/linux-x86_64/az/firefox-125.0.3.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0/linux-x86_64/az/firefox-126.0.tar.bz2";
       locale = "az";
       arch = "linux-x86_64";
-      sha256 = "1ae2d85a6bb4dbcefd0cd518af75614cce6af43c641c49dbfe7c4bacef6691d7";
+      sha256 = "085e8f9cad96ffcad9a2c1e25bbbf7f2388ed4a7e0210f3057ea240b99a4d7bd";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/125.0.3/linux-x86_64/be/firefox-125.0.3.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0/linux-x86_64/be/firefox-126.0.tar.bz2";
       locale = "be";
       arch = "linux-x86_64";
-      sha256 = "84d7aed6ac1f46390b378ce432ecc00723a70caf5b34e33adac9449fb704ebf9";
+      sha256 = "e58272a5f5b0afa919780d32061e593e22d7be9c7cf9e42b7361569d1ed60b3c";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/125.0.3/linux-x86_64/bg/firefox-125.0.3.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0/linux-x86_64/bg/firefox-126.0.tar.bz2";
       locale = "bg";
       arch = "linux-x86_64";
-      sha256 = "9071fc64447f3772c88469385eef3fcc1f36188628c18b929ba1320b4bc01d1f";
+      sha256 = "1bec5b56518f07abf5f2b56b50e70bfa210a1a34075d65bfc089e37fd9f0023a";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/125.0.3/linux-x86_64/bn/firefox-125.0.3.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0/linux-x86_64/bn/firefox-126.0.tar.bz2";
       locale = "bn";
       arch = "linux-x86_64";
-      sha256 = "c8ccaf292b17f5d89b9c7af28b79a5a9d5edc53d3a7cff92be8cfb5166481ba4";
+      sha256 = "09533d6cc055b802c3612b3a1c975e5f968f512b3d64e3dd13fbcf4b0ea2e1da";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/125.0.3/linux-x86_64/br/firefox-125.0.3.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0/linux-x86_64/br/firefox-126.0.tar.bz2";
       locale = "br";
       arch = "linux-x86_64";
-      sha256 = "4cae7d705d2161603b35dcdfb2cd92c3a80922bba95bdc3f5945a59a1b19a011";
+      sha256 = "bfbd169cf9bd0f5ae7a070f8341beef5a03216a71e1bd75179057f2090ce1124";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/125.0.3/linux-x86_64/bs/firefox-125.0.3.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0/linux-x86_64/bs/firefox-126.0.tar.bz2";
       locale = "bs";
       arch = "linux-x86_64";
-      sha256 = "cb74e00873abd0466c97f500ff5de4ab914beb7e0714f8f07ad7f72eeb300013";
+      sha256 = "1bab87a8f437cb4e3aafe1b7c6ed9e18d01bedf6f4004faa6c40689c0280fd9c";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/125.0.3/linux-x86_64/ca-valencia/firefox-125.0.3.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0/linux-x86_64/ca-valencia/firefox-126.0.tar.bz2";
       locale = "ca-valencia";
       arch = "linux-x86_64";
-      sha256 = "2995878a5d1b127fa68fdc196f74c4173b14d48e13bfeb28252515ace585ceb4";
+      sha256 = "cfe1a015695e451b423b1d2897a4a31780ae5e8ad9cef8f6f5c1d90fe1094447";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/125.0.3/linux-x86_64/ca/firefox-125.0.3.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0/linux-x86_64/ca/firefox-126.0.tar.bz2";
       locale = "ca";
       arch = "linux-x86_64";
-      sha256 = "47180f3814da29da56848baf7f050184face647f42f2e0b6dac9d9979979028d";
+      sha256 = "b2aa6766fc820cb43e4c885885c4f246aaa40db5b6b290801f318381e1a82f10";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/125.0.3/linux-x86_64/cak/firefox-125.0.3.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0/linux-x86_64/cak/firefox-126.0.tar.bz2";
       locale = "cak";
       arch = "linux-x86_64";
-      sha256 = "ab400636a09114d9b79a42a375aa2eefeef0e191aa69aa0ee12ee2caaf5e72f1";
+      sha256 = "26ab9b3720ad0f84a19619768a17637e9297731f3824a3f5c2662cdf0c8a62ee";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/125.0.3/linux-x86_64/cs/firefox-125.0.3.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0/linux-x86_64/cs/firefox-126.0.tar.bz2";
       locale = "cs";
       arch = "linux-x86_64";
-      sha256 = "5506a162fbde8afa5e255a657b87c840202d5d02784e6a78ac68c02a1affdbfd";
+      sha256 = "bf7d2029945d76e96aa173e2b3768cb7f744e003299858459f95df2b033f780d";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/125.0.3/linux-x86_64/cy/firefox-125.0.3.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0/linux-x86_64/cy/firefox-126.0.tar.bz2";
       locale = "cy";
       arch = "linux-x86_64";
-      sha256 = "5dc8e2177e509c4f5d971b89c6b95b89a2d33d2bfdcc70533bc226d41d2b28cc";
+      sha256 = "b93d29f9bf112d4f9fd5522724aad6b9a2cd30c41da77d4a2eb3a0559f003a34";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/125.0.3/linux-x86_64/da/firefox-125.0.3.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0/linux-x86_64/da/firefox-126.0.tar.bz2";
       locale = "da";
       arch = "linux-x86_64";
-      sha256 = "d8ca13cba46ddb0ba0f10d99ebac9f75da7e9ee5b3858b50315d0f3212d86ef0";
+      sha256 = "9f17d40911a779f6e5285d7afba95fe7072e5372929430e728aaf2714ff7004a";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/125.0.3/linux-x86_64/de/firefox-125.0.3.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0/linux-x86_64/de/firefox-126.0.tar.bz2";
       locale = "de";
       arch = "linux-x86_64";
-      sha256 = "74aec53ca8eccfa25fa1925a1d26323d481c7b0457fbde0be32eb4210e8daea9";
+      sha256 = "b15f91694b64048ee631d95ee90514cee174fb31cd1d3b3ac769294de933c250";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/125.0.3/linux-x86_64/dsb/firefox-125.0.3.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0/linux-x86_64/dsb/firefox-126.0.tar.bz2";
       locale = "dsb";
       arch = "linux-x86_64";
-      sha256 = "f6725093e244d296bcb048998ed9bcb70dd58a9864e45f28bfa5cd833e265c1d";
+      sha256 = "5a1b033bd3166d61433af4026942e435a43c0443abb2b400a0a2f7e1b13063b7";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/125.0.3/linux-x86_64/el/firefox-125.0.3.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0/linux-x86_64/el/firefox-126.0.tar.bz2";
       locale = "el";
       arch = "linux-x86_64";
-      sha256 = "9cadc42340a199d5f5744d55dcd403584cf06e7853be6d6a030767ca5590a872";
+      sha256 = "18b897662c121c14fef38a5922cd8046a07b5755ccd6001d7ebe6c28a4383515";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/125.0.3/linux-x86_64/en-CA/firefox-125.0.3.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0/linux-x86_64/en-CA/firefox-126.0.tar.bz2";
       locale = "en-CA";
       arch = "linux-x86_64";
-      sha256 = "02e518fb52863d60edeb31e5b21e77eb15a153e7058d23757eb4c8902edc10e1";
+      sha256 = "20194008264b80bb71ccb30e983f3fd128a59f7653540414074e79e14e29d72a";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/125.0.3/linux-x86_64/en-GB/firefox-125.0.3.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0/linux-x86_64/en-GB/firefox-126.0.tar.bz2";
       locale = "en-GB";
       arch = "linux-x86_64";
-      sha256 = "ea6539089c86b53df22c02179a8988a0ca66b854ceca5d2aa8ff6885d9bbc7b7";
+      sha256 = "16abfc46286ec9d376dba40551e48816aad8617fd8fd70a618cfe023b23f50fe";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/125.0.3/linux-x86_64/en-US/firefox-125.0.3.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0/linux-x86_64/en-US/firefox-126.0.tar.bz2";
       locale = "en-US";
       arch = "linux-x86_64";
-      sha256 = "2fb91b8dd196a8ee47238d82d6b7afef3dd1bb3212b29122ab1c3897052d8a49";
+      sha256 = "f029b9dd18e1955fa1391cfaac2fdbe338343ddff59eeb1f4b2f509cc01b4584";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/125.0.3/linux-x86_64/eo/firefox-125.0.3.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0/linux-x86_64/eo/firefox-126.0.tar.bz2";
       locale = "eo";
       arch = "linux-x86_64";
-      sha256 = "3ffa103c2a31f729d7e38637762a8e8e9885fadd819afbe2448db795519ae239";
+      sha256 = "3f5f0e4af585b255749f991d6189d8b0f9b8a6c96df914966ed5b0ad9cce499e";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/125.0.3/linux-x86_64/es-AR/firefox-125.0.3.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0/linux-x86_64/es-AR/firefox-126.0.tar.bz2";
       locale = "es-AR";
       arch = "linux-x86_64";
-      sha256 = "6f03108c3500c4328f074477bb6dbf303d9ec4c654afa7acc109407fe1682787";
+      sha256 = "37ce7d900ba92d66f0ea78e4cda3e43c577b6d2269eeaaafc91c458554455be2";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/125.0.3/linux-x86_64/es-CL/firefox-125.0.3.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0/linux-x86_64/es-CL/firefox-126.0.tar.bz2";
       locale = "es-CL";
       arch = "linux-x86_64";
-      sha256 = "630476e38a0f9119f794933dea000c591687f13be94693917e457f8dfa8dca52";
+      sha256 = "8308744a0150013cb040a45b1de18199b9cb03eb3e69c81d85578ecd6a2d61fc";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/125.0.3/linux-x86_64/es-ES/firefox-125.0.3.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0/linux-x86_64/es-ES/firefox-126.0.tar.bz2";
       locale = "es-ES";
       arch = "linux-x86_64";
-      sha256 = "87603bce7aac62d12725b922b74d6376365074c110dfaf01706dc0b31c05a9ff";
+      sha256 = "fc7045b3b5ad6a15164b6e9dba56ec89099d41faab870a9d6d40ccbb08ca1be8";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/125.0.3/linux-x86_64/es-MX/firefox-125.0.3.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0/linux-x86_64/es-MX/firefox-126.0.tar.bz2";
       locale = "es-MX";
       arch = "linux-x86_64";
-      sha256 = "ddfa1aa04be68932659439d93bb61de2ab0542f04677808eaa91f12e6e72714a";
+      sha256 = "ddf2c17e4da881c8ed4e128911f0b02ac5bb95e8cc2d43ec02bb3c3a4451432f";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/125.0.3/linux-x86_64/et/firefox-125.0.3.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0/linux-x86_64/et/firefox-126.0.tar.bz2";
       locale = "et";
       arch = "linux-x86_64";
-      sha256 = "817596c186d4f8aaf51434b7abbe63b06256987b9187fc28cada01977574baa3";
+      sha256 = "92d94afe650e4d39c1a02f51b8bb9b2f0c796ab4bc75af7292f2605fd83f638b";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/125.0.3/linux-x86_64/eu/firefox-125.0.3.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0/linux-x86_64/eu/firefox-126.0.tar.bz2";
       locale = "eu";
       arch = "linux-x86_64";
-      sha256 = "f49aa967f260c08f8af7da05d57580e4c0e0804cc36bf6f702bca849cf8754c2";
+      sha256 = "e7d6fd2e7eddb60691a3bf51986e9349f55d38aecc4470fefa3c9d98daa63c77";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/125.0.3/linux-x86_64/fa/firefox-125.0.3.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0/linux-x86_64/fa/firefox-126.0.tar.bz2";
       locale = "fa";
       arch = "linux-x86_64";
-      sha256 = "d770af123d38d3dec2d5a35537b0f4bed9d980be810f12e5036cf665e93dac56";
+      sha256 = "75a2a7736c10999ef86d7a42281aececd484291914cc7b1d41bdd1715514cc32";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/125.0.3/linux-x86_64/ff/firefox-125.0.3.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0/linux-x86_64/ff/firefox-126.0.tar.bz2";
       locale = "ff";
       arch = "linux-x86_64";
-      sha256 = "70f1e5026f00ecea44209a88239ba3ea68d5f10cccc8ed20cd4de2bd0194c7f2";
+      sha256 = "dbdf9ee4fd80778751bb8218ffcecc02dc2a38d0286e6f48e2435973f06b1bf2";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/125.0.3/linux-x86_64/fi/firefox-125.0.3.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0/linux-x86_64/fi/firefox-126.0.tar.bz2";
       locale = "fi";
       arch = "linux-x86_64";
-      sha256 = "9ecc9c29c701d3b2e298e191cec6f1764168e6831c9fa9472a82d15b2b29a169";
+      sha256 = "538454759802c6ee105235234544b87a6380c846e96069f9d593b9cb8190afed";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/125.0.3/linux-x86_64/fr/firefox-125.0.3.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0/linux-x86_64/fr/firefox-126.0.tar.bz2";
       locale = "fr";
       arch = "linux-x86_64";
-      sha256 = "07d5f4dbba19bc643a995dc6cd06456cab9342ab2563c0274ac742d02c7aa674";
+      sha256 = "64d840787bd70d8bedae1c61a12ea0b577d4ae9f00d2e6e9ae1ee23e23433856";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/125.0.3/linux-x86_64/fur/firefox-125.0.3.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0/linux-x86_64/fur/firefox-126.0.tar.bz2";
       locale = "fur";
       arch = "linux-x86_64";
-      sha256 = "707d814ea0ea3a7c5c5455f678e496e4b0b14fcdd6872e81b5fc82241cb2b12f";
+      sha256 = "624cc6275197390b6d8f8ce95b4db83a7ead03c03e41148492adf83079458af3";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/125.0.3/linux-x86_64/fy-NL/firefox-125.0.3.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0/linux-x86_64/fy-NL/firefox-126.0.tar.bz2";
       locale = "fy-NL";
       arch = "linux-x86_64";
-      sha256 = "3fea1cf498eb47c4038b6a76a61e37d5d354f2457fc5a9198e5943df227aaa09";
+      sha256 = "22d4598ce65a777243cade386ba9507b34968b115cb308635392b08f6ac88330";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/125.0.3/linux-x86_64/ga-IE/firefox-125.0.3.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0/linux-x86_64/ga-IE/firefox-126.0.tar.bz2";
       locale = "ga-IE";
       arch = "linux-x86_64";
-      sha256 = "8790df138ec92eb83891a7f5ae575c63e181041cb06a24789ec347411c948c40";
+      sha256 = "4c97fef0b3d97e663d6c55f81152c781616bf8e5842ae894800f8a1a0aab2147";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/125.0.3/linux-x86_64/gd/firefox-125.0.3.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0/linux-x86_64/gd/firefox-126.0.tar.bz2";
       locale = "gd";
       arch = "linux-x86_64";
-      sha256 = "b2de6dfb77b655befa785938da00cb71da490ca88fe01d568e86bd037faeabef";
+      sha256 = "49635b4d34bbb79980a63a47872006be8bc9d1f7e9b96e2bd8423b9b1e70752c";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/125.0.3/linux-x86_64/gl/firefox-125.0.3.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0/linux-x86_64/gl/firefox-126.0.tar.bz2";
       locale = "gl";
       arch = "linux-x86_64";
-      sha256 = "15ac0bb2b9d61dcbb81243954123d79a0025d480fd66e1703ad1906c3ca09c28";
+      sha256 = "539323f69d7f5a54948553e532a749e4b1d2802dff8dbbc52dfa51d4a314ba27";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/125.0.3/linux-x86_64/gn/firefox-125.0.3.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0/linux-x86_64/gn/firefox-126.0.tar.bz2";
       locale = "gn";
       arch = "linux-x86_64";
-      sha256 = "5c6e43ab908a99692b9702531b8639d8f503d3396c51e4c3f8a12f5e143bed26";
+      sha256 = "123a34d0bc07276b2aabdc5a91dafdd422bfdc3f839a2b5d225e52f484a11193";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/125.0.3/linux-x86_64/gu-IN/firefox-125.0.3.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0/linux-x86_64/gu-IN/firefox-126.0.tar.bz2";
       locale = "gu-IN";
       arch = "linux-x86_64";
-      sha256 = "0a140f0beb0112b88c058bd8d4d4fc8990c6146c60def24f4c15bb85daadd164";
+      sha256 = "50b578df5cc60410f2bda81ac95f67b4f507e03336a4c324e84d63ab68034326";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/125.0.3/linux-x86_64/he/firefox-125.0.3.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0/linux-x86_64/he/firefox-126.0.tar.bz2";
       locale = "he";
       arch = "linux-x86_64";
-      sha256 = "ce9251aee641a5a4c1cd2a55ac8c7f8d33ea444a746ec5eb783b6d7a5ab4735a";
+      sha256 = "5d6e95ba7c93d723c8db7590ee14f8e0f6a97af151ee60264a9358bac980857d";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/125.0.3/linux-x86_64/hi-IN/firefox-125.0.3.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0/linux-x86_64/hi-IN/firefox-126.0.tar.bz2";
       locale = "hi-IN";
       arch = "linux-x86_64";
-      sha256 = "35a9d216fed5fddd71f1801b0a2a1178c8c646a4d879502d0f56daa2675deea4";
+      sha256 = "b8a6c4fe3e2b853cceabaae133194b807a55feb5c8dcb01b54d82691ae4af18e";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/125.0.3/linux-x86_64/hr/firefox-125.0.3.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0/linux-x86_64/hr/firefox-126.0.tar.bz2";
       locale = "hr";
       arch = "linux-x86_64";
-      sha256 = "b7d62b7ba3261f76e1f6a8c9df79dbbb7a2e2c9efb56a4d30f6be1b37a6f1f1f";
+      sha256 = "e98d20183bbd3a361f7b182fdf823b4cd7b87a43ad0c4781aad4dd7bd47dc021";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/125.0.3/linux-x86_64/hsb/firefox-125.0.3.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0/linux-x86_64/hsb/firefox-126.0.tar.bz2";
       locale = "hsb";
       arch = "linux-x86_64";
-      sha256 = "b6e5031ea996de5449c362d476afacbd7a7310f22cfc108dbab0e745897459c8";
+      sha256 = "e0f62a403877da98f6731f19024810285bcd11066f52b38db0d7150b8bd127e5";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/125.0.3/linux-x86_64/hu/firefox-125.0.3.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0/linux-x86_64/hu/firefox-126.0.tar.bz2";
       locale = "hu";
       arch = "linux-x86_64";
-      sha256 = "fbc3cdadb14dd5755ad6e64dda7350df60f43c576dcba09ed082fabda2a5a130";
+      sha256 = "3d3adecc44d456dfee04a5bad74c84493267c91ae7526f8852c80b8db541b249";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/125.0.3/linux-x86_64/hy-AM/firefox-125.0.3.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0/linux-x86_64/hy-AM/firefox-126.0.tar.bz2";
       locale = "hy-AM";
       arch = "linux-x86_64";
-      sha256 = "d37f52f64d3a56cf043ce1f198485228877419c4231a8b1816af7d2efb7c9156";
+      sha256 = "47aace044667c4c5341a871f2729192a0ebc1af50d84395e3363d235c53f0cf0";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/125.0.3/linux-x86_64/ia/firefox-125.0.3.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0/linux-x86_64/ia/firefox-126.0.tar.bz2";
       locale = "ia";
       arch = "linux-x86_64";
-      sha256 = "1abb3b691d218da98df54b08228181d201ebcdd397b23bd438761c26e91d70b0";
+      sha256 = "dfe76f863d8d73eccefb29159796652314a1ede465b56e52f0da2cc5079effe4";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/125.0.3/linux-x86_64/id/firefox-125.0.3.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0/linux-x86_64/id/firefox-126.0.tar.bz2";
       locale = "id";
       arch = "linux-x86_64";
-      sha256 = "e003f96e908abb817efaa518ad4d4da3724077b0e478eec311b065f5a1ef6a26";
+      sha256 = "6b875b88e075db1f354365ff3523db837b0f25bc079bbae6aff4831dd694fd1a";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/125.0.3/linux-x86_64/is/firefox-125.0.3.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0/linux-x86_64/is/firefox-126.0.tar.bz2";
       locale = "is";
       arch = "linux-x86_64";
-      sha256 = "09ea5c1828d9bb6d9eb89cce854892ff5300641e3eec69bec251937d442caea6";
+      sha256 = "05ac5378b326dad5a2e37c52835a08061b83f204e0030e9ed00149d0fbf6b52f";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/125.0.3/linux-x86_64/it/firefox-125.0.3.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0/linux-x86_64/it/firefox-126.0.tar.bz2";
       locale = "it";
       arch = "linux-x86_64";
-      sha256 = "ab3e1df035e7198a70a6ad5dbcbf13915a5a98a554497438980a56adb550b45c";
+      sha256 = "c840cedbbfb49b54aae0e446a723e69a886adc36f6c6c251dc4039ace345af2a";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/125.0.3/linux-x86_64/ja/firefox-125.0.3.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0/linux-x86_64/ja/firefox-126.0.tar.bz2";
       locale = "ja";
       arch = "linux-x86_64";
-      sha256 = "1d9cac5e97b86c76b908fef1c8f981476a054cfd6d365cf7d9d3a7cd2800d56f";
+      sha256 = "b8672862d851e4dac374a89d98a6e259786e4c6e00a292401b94e8d44891f6d1";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/125.0.3/linux-x86_64/ka/firefox-125.0.3.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0/linux-x86_64/ka/firefox-126.0.tar.bz2";
       locale = "ka";
       arch = "linux-x86_64";
-      sha256 = "518b72d8e5188f01e0ea0eb90d4760b98b0dd7f1e74a0cde8e9809e25117d9f9";
+      sha256 = "1898dc72d9361c7d93cc86919d4b3c882853539535523f226d906b4a9268470d";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/125.0.3/linux-x86_64/kab/firefox-125.0.3.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0/linux-x86_64/kab/firefox-126.0.tar.bz2";
       locale = "kab";
       arch = "linux-x86_64";
-      sha256 = "eac92cceaae9348cfae57ad891fae6827f25ec03df649e2d7a3c7186fcbab01d";
+      sha256 = "07a1f0630c4c1ecae65133523157cf1e38f5ea7db2cee73e11c846c21ac907d6";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/125.0.3/linux-x86_64/kk/firefox-125.0.3.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0/linux-x86_64/kk/firefox-126.0.tar.bz2";
       locale = "kk";
       arch = "linux-x86_64";
-      sha256 = "c2dfc1d48cc5386c9925de7a33cf368b2040accea7dfcc67038d2394d828b3e4";
+      sha256 = "94f2b8c0ed553b85625dafd01b65b08eb0f306b7da07951ec008dea623ed55b3";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/125.0.3/linux-x86_64/km/firefox-125.0.3.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0/linux-x86_64/km/firefox-126.0.tar.bz2";
       locale = "km";
       arch = "linux-x86_64";
-      sha256 = "f032f51e6c6b655ac6ab7ed1605f701c99f71bc316d76f06c2fa6fb111c61276";
+      sha256 = "300b63d65dfadb49e4b4e5323a60156ea0da30fd09ad868ed8bab76b7ec66e9a";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/125.0.3/linux-x86_64/kn/firefox-125.0.3.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0/linux-x86_64/kn/firefox-126.0.tar.bz2";
       locale = "kn";
       arch = "linux-x86_64";
-      sha256 = "8d47dd21f7968cd1151d25609fa2276cf3e9b8bc7cbfab307a2efa84f541e5ba";
+      sha256 = "663669b5480878205fbd7770734a25bc8370776238be318043731ee925c55da3";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/125.0.3/linux-x86_64/ko/firefox-125.0.3.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0/linux-x86_64/ko/firefox-126.0.tar.bz2";
       locale = "ko";
       arch = "linux-x86_64";
-      sha256 = "de7b527a436ba0f27175ee7f8e6ed9238bbcb716ebb26f9b0c9cc5b30a3240eb";
+      sha256 = "2d3c1fb5925e719db9879c97017ba950c9d81f3131e2cbed468b092de51d23ba";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/125.0.3/linux-x86_64/lij/firefox-125.0.3.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0/linux-x86_64/lij/firefox-126.0.tar.bz2";
       locale = "lij";
       arch = "linux-x86_64";
-      sha256 = "809675ae60d9885fe20e4053d0d0686cc6d22cb6fc6fbcbb76c76579e47d97f2";
+      sha256 = "0f63a277d9eb4a29113944e63cd666504b03f798b6bf9c41dc93e0a9d7450ec9";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/125.0.3/linux-x86_64/lt/firefox-125.0.3.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0/linux-x86_64/lt/firefox-126.0.tar.bz2";
       locale = "lt";
       arch = "linux-x86_64";
-      sha256 = "cb512ed0fef4a1d544c4a74d81e6872091ccee8a2356c5c5f18d6edd1a601c06";
+      sha256 = "582d209cbc97a77c913dffe48ab927f5a1f743505ca68d0821db70ab64178ac2";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/125.0.3/linux-x86_64/lv/firefox-125.0.3.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0/linux-x86_64/lv/firefox-126.0.tar.bz2";
       locale = "lv";
       arch = "linux-x86_64";
-      sha256 = "5d693ca8c453c37baa6a1c284041a380815e48f6e728b4ead06f6afcb27f0558";
+      sha256 = "94d7da74b9f2c8e236e312e97edc34a86ae77d83aa1f9eae311aba17c7af5156";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/125.0.3/linux-x86_64/mk/firefox-125.0.3.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0/linux-x86_64/mk/firefox-126.0.tar.bz2";
       locale = "mk";
       arch = "linux-x86_64";
-      sha256 = "352daa1a8995c40803bf34f1e00afa6ed95a2b98582992d1a34b0d6331e1c893";
+      sha256 = "ff7ace9f394694e83a76cb722fb75e210249ecdafc2ee237d86ccc7a99331c03";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/125.0.3/linux-x86_64/mr/firefox-125.0.3.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0/linux-x86_64/mr/firefox-126.0.tar.bz2";
       locale = "mr";
       arch = "linux-x86_64";
-      sha256 = "a5bb5ea7fc2a3f5f0f71f14cba8b594bff15da10a3a879fb14311ea25b12ccb3";
+      sha256 = "ff9d005ae4ac745b0affe51cadd040213579a1561970605e14b7e97c713b7a1e";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/125.0.3/linux-x86_64/ms/firefox-125.0.3.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0/linux-x86_64/ms/firefox-126.0.tar.bz2";
       locale = "ms";
       arch = "linux-x86_64";
-      sha256 = "c544e324549f84337d9a7e0e863c1b0be6f3435d9cf890a6a73fff62ce9ab8ae";
+      sha256 = "a64e318bffab978f41d99320184edc406214a64d0ce3e43ab5ca79a9a803b8e2";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/125.0.3/linux-x86_64/my/firefox-125.0.3.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0/linux-x86_64/my/firefox-126.0.tar.bz2";
       locale = "my";
       arch = "linux-x86_64";
-      sha256 = "9de9d7f95e75f733666599de2b57b487ac3ca545487101ab3d097e85dd9f2daf";
+      sha256 = "3be1543f24f4a23a163524ff30b757741a6387bb807955f943d1b8cccddeb6ef";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/125.0.3/linux-x86_64/nb-NO/firefox-125.0.3.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0/linux-x86_64/nb-NO/firefox-126.0.tar.bz2";
       locale = "nb-NO";
       arch = "linux-x86_64";
-      sha256 = "c1a5ce764dbb1f090c01330991af161745d4df945d51346a571f24dae6dc0353";
+      sha256 = "d1af51acaf3c8f0b7328ff3e62c31bbbd0951d1a3a82f74f2f81da4c30cb173f";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/125.0.3/linux-x86_64/ne-NP/firefox-125.0.3.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0/linux-x86_64/ne-NP/firefox-126.0.tar.bz2";
       locale = "ne-NP";
       arch = "linux-x86_64";
-      sha256 = "7c04f1b49e4d301533e1e15c08a88a768c536677a55f1d2cc9f4fa7d3bd1f26a";
+      sha256 = "1f1c957660b705293fbbfa824156710c8f90347ea042885053ec9a2060834f7a";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/125.0.3/linux-x86_64/nl/firefox-125.0.3.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0/linux-x86_64/nl/firefox-126.0.tar.bz2";
       locale = "nl";
       arch = "linux-x86_64";
-      sha256 = "a81916a67375d43a2883111474858ca8aed787a12cee1d503fae5ec2413cc778";
+      sha256 = "2b6f54aeca9a689b7f405f66e267f21bbe195f7ed13185201020d529aae97fcc";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/125.0.3/linux-x86_64/nn-NO/firefox-125.0.3.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0/linux-x86_64/nn-NO/firefox-126.0.tar.bz2";
       locale = "nn-NO";
       arch = "linux-x86_64";
-      sha256 = "282e7e2dcd7d01c1bb8c3861511aaa989a1e23e79c7ad5958956a3725c595650";
+      sha256 = "1a3535a184ddadc86863848f9f603216c0401fafb939921acb865eb00631af19";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/125.0.3/linux-x86_64/oc/firefox-125.0.3.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0/linux-x86_64/oc/firefox-126.0.tar.bz2";
       locale = "oc";
       arch = "linux-x86_64";
-      sha256 = "aad97d4a4bb4229017ef8e84ce79597e5ffe0108c1898c4188ffc1baf2368bf6";
+      sha256 = "5845b3b682a780aeca38b03cad6c02a353de6b032baba5af3da7e514c41cefef";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/125.0.3/linux-x86_64/pa-IN/firefox-125.0.3.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0/linux-x86_64/pa-IN/firefox-126.0.tar.bz2";
       locale = "pa-IN";
       arch = "linux-x86_64";
-      sha256 = "1ae4b77596984e0daf341ee562d78aa653914b8e20627dc568d86ec2bc87a7bb";
+      sha256 = "2568a37dc1cfe1e42d5c9dfae2dbe74cae1185abd35f9ee3977390eb80661bb9";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/125.0.3/linux-x86_64/pl/firefox-125.0.3.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0/linux-x86_64/pl/firefox-126.0.tar.bz2";
       locale = "pl";
       arch = "linux-x86_64";
-      sha256 = "979b3892b3f7056ea173946e5950f71e0ea8a740f4016ae9aeb4a58edb0fb679";
+      sha256 = "c69112cdedc150908a0cac8a7f003bfc44dab14a8d32a31ace22748c391b7a84";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/125.0.3/linux-x86_64/pt-BR/firefox-125.0.3.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0/linux-x86_64/pt-BR/firefox-126.0.tar.bz2";
       locale = "pt-BR";
       arch = "linux-x86_64";
-      sha256 = "7aa3b0e46f6c0c36443c61b43b15db420e509d6793f6ff63759ee0e9eed3d6c2";
+      sha256 = "b7369e99da8a96aed5018f5f4bd1acaa252d50629179b79a2b61929d71c1750d";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/125.0.3/linux-x86_64/pt-PT/firefox-125.0.3.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0/linux-x86_64/pt-PT/firefox-126.0.tar.bz2";
       locale = "pt-PT";
       arch = "linux-x86_64";
-      sha256 = "ecbeb1dc3292eeecdad0cd302b70445e9fa4fa6a6f9c83a698e5193f2f4c543e";
+      sha256 = "a2ddd2dc66e8dd6e8d7a628e090ec987a2060ccfe14015c91be2988244990b6e";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/125.0.3/linux-x86_64/rm/firefox-125.0.3.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0/linux-x86_64/rm/firefox-126.0.tar.bz2";
       locale = "rm";
       arch = "linux-x86_64";
-      sha256 = "17dfd6e52f056481d4c5ef45ffae76a8005034fdcfdca046d12966b316852b91";
+      sha256 = "1edab3ce5b47dc44e2c83a7a2b0b0cee771e36018c98be540e20bd7cd5123b1d";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/125.0.3/linux-x86_64/ro/firefox-125.0.3.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0/linux-x86_64/ro/firefox-126.0.tar.bz2";
       locale = "ro";
       arch = "linux-x86_64";
-      sha256 = "03e3bb8b8d6f6752aee13b445f79cbcb5999224359165deb565c00e79505aee7";
+      sha256 = "36abb93c19c2e629e37b73e807d1b6858a42877a035bb526eb2329bc6784fb39";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/125.0.3/linux-x86_64/ru/firefox-125.0.3.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0/linux-x86_64/ru/firefox-126.0.tar.bz2";
       locale = "ru";
       arch = "linux-x86_64";
-      sha256 = "b3f3bc5db58106f7ce085aa13422974ec2a77fc1289e6ccecce66731194b1885";
+      sha256 = "3aa49a597b80fff5fa963ac16f881aab2290ae938f721412dd42202947ad77f9";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/125.0.3/linux-x86_64/sat/firefox-125.0.3.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0/linux-x86_64/sat/firefox-126.0.tar.bz2";
       locale = "sat";
       arch = "linux-x86_64";
-      sha256 = "de73c27a3eddba12687edcc6cb18cd1e7d055eb0f19e13b019901a8e21ade74c";
+      sha256 = "828efcc83d23bcf9c31225155eaa65a6248448c21e57c9b2a71f54d75fd4a037";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/125.0.3/linux-x86_64/sc/firefox-125.0.3.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0/linux-x86_64/sc/firefox-126.0.tar.bz2";
       locale = "sc";
       arch = "linux-x86_64";
-      sha256 = "a5444d59372a88fc3fa7eef03d8ed5840b07b3cb5845ac96b2cbcab404cff35b";
+      sha256 = "255c7b998f797605daf9fb4bd4f6d29ac64ef40f270c7d615c695452d0d5f20b";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/125.0.3/linux-x86_64/sco/firefox-125.0.3.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0/linux-x86_64/sco/firefox-126.0.tar.bz2";
       locale = "sco";
       arch = "linux-x86_64";
-      sha256 = "a4cab5bb51709ae5f3a6ac1b4c113dd9adcc973aee3bc480b763d89677b4b75c";
+      sha256 = "4892e68434fb5494d8f4e7eaa95f10ffd39f75e05bf4015ffb7c0ed0e895c8b7";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/125.0.3/linux-x86_64/si/firefox-125.0.3.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0/linux-x86_64/si/firefox-126.0.tar.bz2";
       locale = "si";
       arch = "linux-x86_64";
-      sha256 = "8d4b2d9d5de196db515c4852fe6bc0b866c7bdaae7f734053fd6f0fabaab8054";
+      sha256 = "28440c8658377ab98cb93de1db073d264fba046e390c433148abe11459a91652";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/125.0.3/linux-x86_64/sk/firefox-125.0.3.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0/linux-x86_64/sk/firefox-126.0.tar.bz2";
       locale = "sk";
       arch = "linux-x86_64";
-      sha256 = "58b4b780317ad6e88b824fc31fd1777425abc673ce76a578dbfbae3db1247599";
+      sha256 = "9029db81a8258fb7e352a29de9bd20ed793b579a569e8ed5fd06d0f25b122297";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/125.0.3/linux-x86_64/sl/firefox-125.0.3.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0/linux-x86_64/sl/firefox-126.0.tar.bz2";
       locale = "sl";
       arch = "linux-x86_64";
-      sha256 = "c6663467611b7b9bed4d3bb0bf70465ed7812038067a6d034f70ec59af3c937f";
+      sha256 = "9f6f60a27ea5c478ce0c1af7de426d0d55178c506c4abf9301b50534396e453d";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/125.0.3/linux-x86_64/son/firefox-125.0.3.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0/linux-x86_64/son/firefox-126.0.tar.bz2";
       locale = "son";
       arch = "linux-x86_64";
-      sha256 = "066b5c9ffd986a56460bba1021272a42b66e1c93f601664f8f6a0e939314f22f";
+      sha256 = "1e255b7fc86c5ef4d5b7b9871cc70cea6f93fe4ad74575e48786c57256f6dde8";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/125.0.3/linux-x86_64/sq/firefox-125.0.3.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0/linux-x86_64/sq/firefox-126.0.tar.bz2";
       locale = "sq";
       arch = "linux-x86_64";
-      sha256 = "d9d696c0748b1cc3238c39cc3f7b69e6ef2970402d68494084e6897f947d1493";
+      sha256 = "dd918a5d4c1404b159698c8c0128ba6155a26addf52ab72372a523ec05d55354";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/125.0.3/linux-x86_64/sr/firefox-125.0.3.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0/linux-x86_64/sr/firefox-126.0.tar.bz2";
       locale = "sr";
       arch = "linux-x86_64";
-      sha256 = "73411b25f8abebd15a4e716c2ee3a861670df257d7b1497ccfbc92aa055b8af2";
+      sha256 = "fc58ba9e476b69db4a7500e599b4933379f0ae7ef2b494e4b2df8327a6fb39d7";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/125.0.3/linux-x86_64/sv-SE/firefox-125.0.3.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0/linux-x86_64/sv-SE/firefox-126.0.tar.bz2";
       locale = "sv-SE";
       arch = "linux-x86_64";
-      sha256 = "a877cf095668f7492a762d4fcebfe9ce154d0594e3a4a105d5c9046e1f9ee26c";
+      sha256 = "3c6d7d83a3d45eff199221157e0f91c2ad483ea281ce51e738603bea4d050713";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/125.0.3/linux-x86_64/szl/firefox-125.0.3.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0/linux-x86_64/szl/firefox-126.0.tar.bz2";
       locale = "szl";
       arch = "linux-x86_64";
-      sha256 = "45477dba947128e7e4902715ee1ac7898422c34551c308f6f2388df8bc3f8982";
+      sha256 = "42d650ee5043556620c34a4aafabd1075e4ccedcf044e059d382fa4e21708718";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/125.0.3/linux-x86_64/ta/firefox-125.0.3.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0/linux-x86_64/ta/firefox-126.0.tar.bz2";
       locale = "ta";
       arch = "linux-x86_64";
-      sha256 = "acb5eefe0aafcd146946ce390a9df077c477c029f0cfda6da3da00a3a6e844cd";
+      sha256 = "b095636c31b9d760713e04969abc45223ef79b255bbd1a27cdfdd20b5d2fd9ca";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/125.0.3/linux-x86_64/te/firefox-125.0.3.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0/linux-x86_64/te/firefox-126.0.tar.bz2";
       locale = "te";
       arch = "linux-x86_64";
-      sha256 = "98e43739bbe0117a5b875d5e66863e76a45d45f8a9b7b7afdfcd9d858402c075";
+      sha256 = "55b14dcb7db3f3604d197de83cb87895c8a58d12db0f23e2023bae7a9f596a74";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/125.0.3/linux-x86_64/tg/firefox-125.0.3.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0/linux-x86_64/tg/firefox-126.0.tar.bz2";
       locale = "tg";
       arch = "linux-x86_64";
-      sha256 = "8c6f9dce430b7207665cdfd442cbd1bdaa1978651e745eec3b77c8eb52963aa1";
+      sha256 = "b35e457267437963018eae1ed56f4c20af928c0a24053cd7c66e6e155c8f5e2b";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/125.0.3/linux-x86_64/th/firefox-125.0.3.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0/linux-x86_64/th/firefox-126.0.tar.bz2";
       locale = "th";
       arch = "linux-x86_64";
-      sha256 = "2a18d85e28fb7d415ab71f9a966b6799dd6c2fdeeff5f4b0e65dbea449a77fa2";
+      sha256 = "02d72cae8815ea2f9f0a01358ec131e28fb1cfb6568370f2151e64e8d919b4b7";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/125.0.3/linux-x86_64/tl/firefox-125.0.3.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0/linux-x86_64/tl/firefox-126.0.tar.bz2";
       locale = "tl";
       arch = "linux-x86_64";
-      sha256 = "4517393fdbcba061dd7a667b92ba7b44e69ee73036ab36624e5681195a372a6b";
+      sha256 = "2004e3a1b985f73151e00f81d3d2700d7d8f6c6a8a25ef47f842a386309b9c20";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/125.0.3/linux-x86_64/tr/firefox-125.0.3.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0/linux-x86_64/tr/firefox-126.0.tar.bz2";
       locale = "tr";
       arch = "linux-x86_64";
-      sha256 = "5bff1a8d3044d5ce9195d5cd9aba3e02b21d4e23bf84870ac3b288777c5001c4";
+      sha256 = "d2fe1ea72bb321dc3e0bd3d5b6f2a44592f5286cb420d1707293f1210a3bb7c2";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/125.0.3/linux-x86_64/trs/firefox-125.0.3.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0/linux-x86_64/trs/firefox-126.0.tar.bz2";
       locale = "trs";
       arch = "linux-x86_64";
-      sha256 = "8c75284765e4e4778a8dcba326369f7f8d62627bcf95f4384ab68b2339f245b9";
+      sha256 = "37cb52d3abaab1c1e6d285553c4a7dbd0c99c08713f88b6b693c5d0ddd63205a";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/125.0.3/linux-x86_64/uk/firefox-125.0.3.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0/linux-x86_64/uk/firefox-126.0.tar.bz2";
       locale = "uk";
       arch = "linux-x86_64";
-      sha256 = "6ad348a509db7651e96ad6a4015dad3b7e4073d02a6936eac0b15aab9216feef";
+      sha256 = "9ba4b7ca7c3f545abde9ae835def611aaaf644257f7036d97c7945e6d1294bf3";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/125.0.3/linux-x86_64/ur/firefox-125.0.3.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0/linux-x86_64/ur/firefox-126.0.tar.bz2";
       locale = "ur";
       arch = "linux-x86_64";
-      sha256 = "71714780ef8d0d7bd072744dc450f4d3db43e8eaca8df76ebf0471debe8fdbb6";
+      sha256 = "963abf5bc134585d9df57085da5d0b32b5e7e3437ddd31581d5ba86c9ae5d077";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/125.0.3/linux-x86_64/uz/firefox-125.0.3.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0/linux-x86_64/uz/firefox-126.0.tar.bz2";
       locale = "uz";
       arch = "linux-x86_64";
-      sha256 = "c8e095e7259f14c6b98a32fba83154c6f83b2dbe8e19f7876434b22d3529fe4e";
+      sha256 = "b52aac7d993ef57c055a48fb7658e86a120cd2f4edbc734f4c3d89e24a5beb4b";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/125.0.3/linux-x86_64/vi/firefox-125.0.3.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0/linux-x86_64/vi/firefox-126.0.tar.bz2";
       locale = "vi";
       arch = "linux-x86_64";
-      sha256 = "82b8321d1e5d321f65ca1977a24d67b5663866c883fecae1553dc2d6a2b70304";
+      sha256 = "337cecc697dc0fdadede5a41a0c3c0fd259281ffdda6bd1903f1061f96e58a93";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/125.0.3/linux-x86_64/xh/firefox-125.0.3.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0/linux-x86_64/xh/firefox-126.0.tar.bz2";
       locale = "xh";
       arch = "linux-x86_64";
-      sha256 = "06a67bbcedf238921f3211b2d36ebe02ee123cac3cb90820fd06eba7316fdaab";
+      sha256 = "a41f854be36ef9d9cf0d8a229e1b088bf855b3d5ef417cb20cd9801631505403";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/125.0.3/linux-x86_64/zh-CN/firefox-125.0.3.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0/linux-x86_64/zh-CN/firefox-126.0.tar.bz2";
       locale = "zh-CN";
       arch = "linux-x86_64";
-      sha256 = "074fadec864960fafa5aafb41f05e638a97b37c00a26e8f9e838357f484c523b";
+      sha256 = "0e1e754315f0919d78b0ad29e4374287ea3d397dc3ccee6bf835a027776fcdca";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/125.0.3/linux-x86_64/zh-TW/firefox-125.0.3.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0/linux-x86_64/zh-TW/firefox-126.0.tar.bz2";
       locale = "zh-TW";
       arch = "linux-x86_64";
-      sha256 = "01cf02595225f172ab77ad12c3c7d61456703f3e80d88e38e4fbd5d047f2c0f3";
+      sha256 = "90d723ea118e1dbcf2dc6345131843df48059e90ca7e99061b91095a2e21b727";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/125.0.3/linux-i686/ach/firefox-125.0.3.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0/linux-i686/ach/firefox-126.0.tar.bz2";
       locale = "ach";
       arch = "linux-i686";
-      sha256 = "051c3f7ed00fd372275aea30306469f732aa7ec59fc08f98e04606d2cca1ae6d";
+      sha256 = "24da13a3aed6ffc2dc8c75e4e3d349cb419a2dadd6c689349a136d9ebda37a04";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/125.0.3/linux-i686/af/firefox-125.0.3.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0/linux-i686/af/firefox-126.0.tar.bz2";
       locale = "af";
       arch = "linux-i686";
-      sha256 = "6d1ee2379de68187991326d0d89e13edd733424adab5a7d6cf5e9aaf3368feb1";
+      sha256 = "348bf05b0613ee0741318a27b2810c666a6525757846755f5296e1f69dc06131";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/125.0.3/linux-i686/an/firefox-125.0.3.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0/linux-i686/an/firefox-126.0.tar.bz2";
       locale = "an";
       arch = "linux-i686";
-      sha256 = "0ecfa115508f05a7066be1927159faf3e02fe338df61d9c823a1936a56aabe95";
+      sha256 = "64d8665b8b2c2e9d9f475e546520c3a735fd647cdbf69fe605284f77e2e93b9c";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/125.0.3/linux-i686/ar/firefox-125.0.3.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0/linux-i686/ar/firefox-126.0.tar.bz2";
       locale = "ar";
       arch = "linux-i686";
-      sha256 = "af4cb6ee6c7215be5e199d9ca64867484de7e693a013d9a33eb410e8d9feaa0a";
+      sha256 = "0e94cd589ae11ccfd2e575d420bbef5e451959beeee2118c2a205920d74b890a";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/125.0.3/linux-i686/ast/firefox-125.0.3.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0/linux-i686/ast/firefox-126.0.tar.bz2";
       locale = "ast";
       arch = "linux-i686";
-      sha256 = "04647b722d70f11d32f6a49dc4fda2f57560c96c3a098680b8e1964324cd9a18";
+      sha256 = "d325eebe6c40cf958e5a4f40ae55b429536e4ecf4e00e7df2c16674b125067a6";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/125.0.3/linux-i686/az/firefox-125.0.3.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0/linux-i686/az/firefox-126.0.tar.bz2";
       locale = "az";
       arch = "linux-i686";
-      sha256 = "499cd8960c5e21956372fcdcdbba8ce59929fdf3c199c94b604be235834fec9d";
+      sha256 = "b8645cadd3b2b8dd790634ec8f16cc1ac478081dac234fa96eb83a7030ece589";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/125.0.3/linux-i686/be/firefox-125.0.3.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0/linux-i686/be/firefox-126.0.tar.bz2";
       locale = "be";
       arch = "linux-i686";
-      sha256 = "215c1fda1f502d87c8685a8dfeb23d2b34b51c569de96cf52ba6a8179cdca4d5";
+      sha256 = "e36e2243c833441b614ce90fff63762572e98aeedb10b8bfad1dc5268c7c0448";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/125.0.3/linux-i686/bg/firefox-125.0.3.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0/linux-i686/bg/firefox-126.0.tar.bz2";
       locale = "bg";
       arch = "linux-i686";
-      sha256 = "d24acc50c74d070c9c3fcea8030914e08ec98f77a373f0c640f5c5644b52868e";
+      sha256 = "66c0ce40beb176ae4b167411708ed3a381408e04cf34b88010b7bd0b13950e95";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/125.0.3/linux-i686/bn/firefox-125.0.3.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0/linux-i686/bn/firefox-126.0.tar.bz2";
       locale = "bn";
       arch = "linux-i686";
-      sha256 = "c0f5570e5f05996e105485fa73580da3c4d3b7a0eb5db8cd1c6dd316b770d4f7";
+      sha256 = "1f6702ca2d492708a89450404a162a5b8131087552b539ee19e275336a556510";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/125.0.3/linux-i686/br/firefox-125.0.3.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0/linux-i686/br/firefox-126.0.tar.bz2";
       locale = "br";
       arch = "linux-i686";
-      sha256 = "7adc8a1c0397bc7e3390a598bb064d6abb318a2689be7e99a90f31c3346f557e";
+      sha256 = "b0599dae8e8b9fcffea5afc113c954d46a78a81b2f6f9076256922a57b840df1";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/125.0.3/linux-i686/bs/firefox-125.0.3.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0/linux-i686/bs/firefox-126.0.tar.bz2";
       locale = "bs";
       arch = "linux-i686";
-      sha256 = "43d74f20af450faa633216821af7c1d37bb1a1c6a6ceeb75a0474adbf9b015ce";
+      sha256 = "b893fd06193a43799959037b257d0079a58c7d823384d6f73668571655e7c5a5";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/125.0.3/linux-i686/ca-valencia/firefox-125.0.3.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0/linux-i686/ca-valencia/firefox-126.0.tar.bz2";
       locale = "ca-valencia";
       arch = "linux-i686";
-      sha256 = "1416a98df2841c0e9d3a783fd236f8e8c7f3dc4e17fe027e4cf04b8b0bde187b";
+      sha256 = "3f8d3a6566b616ef7766bfe7a342b0a138bb4b5cffedaa65e0da03ae113c1bc7";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/125.0.3/linux-i686/ca/firefox-125.0.3.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0/linux-i686/ca/firefox-126.0.tar.bz2";
       locale = "ca";
       arch = "linux-i686";
-      sha256 = "1c09a6d5ed0dfcae1d25fb9876c08663218f8a83bdc9f15ad52e39cd22428c5b";
+      sha256 = "4e4ab9b73d5f939f8bd824453e197e2e668518c99f41309970c5c7e4f582cb9e";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/125.0.3/linux-i686/cak/firefox-125.0.3.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0/linux-i686/cak/firefox-126.0.tar.bz2";
       locale = "cak";
       arch = "linux-i686";
-      sha256 = "6fbec6115cccaca619389d68cb917c331faeb19ca165f5b9e5425b78ffabf0d9";
+      sha256 = "ef1b8a1f318fe3a49ec99f050d4417c5ecb2018788309d2bafe0582e9f0f67b2";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/125.0.3/linux-i686/cs/firefox-125.0.3.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0/linux-i686/cs/firefox-126.0.tar.bz2";
       locale = "cs";
       arch = "linux-i686";
-      sha256 = "d1da5d44dd511d94341837c578eaa9d5aed5e2d63afc502b2b76b049d6110ece";
+      sha256 = "a87b9f9b3b028c15c1e1b37a15e6909f01e52f53f880c874d98ff762d8ff6dcf";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/125.0.3/linux-i686/cy/firefox-125.0.3.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0/linux-i686/cy/firefox-126.0.tar.bz2";
       locale = "cy";
       arch = "linux-i686";
-      sha256 = "eddafcccca339deee2cd0e67885692217f7c49141ffc64ca1a998bb935d45636";
+      sha256 = "ff30ceff65bbca5abbbba22d7ec9723a368b3db62f7dac08f4ac9dd2c6505ce2";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/125.0.3/linux-i686/da/firefox-125.0.3.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0/linux-i686/da/firefox-126.0.tar.bz2";
       locale = "da";
       arch = "linux-i686";
-      sha256 = "d5a3a9ee1927f26b18ccf696aee7ebde30dd3ba439c9a376b4a6072d04756ca2";
+      sha256 = "426a00ba520924c5ed011b0f046f5e21a9abeb8db1f1015d5efecc47708c39d7";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/125.0.3/linux-i686/de/firefox-125.0.3.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0/linux-i686/de/firefox-126.0.tar.bz2";
       locale = "de";
       arch = "linux-i686";
-      sha256 = "2d61def83c8a52b94828b14c2c8697c1b77106a4c16a7df1e9e258212d23b583";
+      sha256 = "c7db7cad161da5c28ed40f4aeb37f786712516cc2697dd8cb505cb2be14ebbcf";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/125.0.3/linux-i686/dsb/firefox-125.0.3.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0/linux-i686/dsb/firefox-126.0.tar.bz2";
       locale = "dsb";
       arch = "linux-i686";
-      sha256 = "09f25336d1a46ec5cae5301d35e0573b205ccb3e1482c79b2f76db02045a9d18";
+      sha256 = "ab530f570d5cb46ea1cd451365fa60b4a1872e14754363bd22f95daf85a479c2";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/125.0.3/linux-i686/el/firefox-125.0.3.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0/linux-i686/el/firefox-126.0.tar.bz2";
       locale = "el";
       arch = "linux-i686";
-      sha256 = "4e055eda0cbc2d8c71ce472982b26ef0c0ebc20f72dbd0a1d6b4f0d50a4966df";
+      sha256 = "89f0429e7a8985e65ba320094e1b2e9b1ed5cb38df609aa23cca7c900a0b671c";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/125.0.3/linux-i686/en-CA/firefox-125.0.3.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0/linux-i686/en-CA/firefox-126.0.tar.bz2";
       locale = "en-CA";
       arch = "linux-i686";
-      sha256 = "5ab7b3ac4d84e949c47da2d3a77708847fe73214bd641562017359f71e254dc3";
+      sha256 = "d0c8d0cfe91f897bba6502bc7fbe385880db6e0af6fc93db8702aeb0eb09660a";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/125.0.3/linux-i686/en-GB/firefox-125.0.3.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0/linux-i686/en-GB/firefox-126.0.tar.bz2";
       locale = "en-GB";
       arch = "linux-i686";
-      sha256 = "dc793c9a3161974ed1120572d6b65d3ca5a5d8947e53cf1d31da33d4bba6ca82";
+      sha256 = "7a560bc7591e436bac570a287c4a18b8e8978eb48b022c2e21e74957e85ecc6a";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/125.0.3/linux-i686/en-US/firefox-125.0.3.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0/linux-i686/en-US/firefox-126.0.tar.bz2";
       locale = "en-US";
       arch = "linux-i686";
-      sha256 = "1a7a16c2e75bfbd0e318095c259ab63fa0c097005b872d93885539c9f186ef80";
+      sha256 = "3d49a8a3655d8502f7538f67973a6d7099bf4f2579f4519a48177ced50795ccc";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/125.0.3/linux-i686/eo/firefox-125.0.3.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0/linux-i686/eo/firefox-126.0.tar.bz2";
       locale = "eo";
       arch = "linux-i686";
-      sha256 = "bc78e75ccaa66dea4f2b8585dd2ec8217ac065058defcb991dc6628acb16c3cb";
+      sha256 = "67c107f8a0d98a932e25de900f934c2e377dd3edbf1b8cc5554f13271d89a8aa";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/125.0.3/linux-i686/es-AR/firefox-125.0.3.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0/linux-i686/es-AR/firefox-126.0.tar.bz2";
       locale = "es-AR";
       arch = "linux-i686";
-      sha256 = "da954c777d0441c30c6b292ebf8fe316e7b52d75a76602bf6502ba4677c1cb64";
+      sha256 = "6c8e6be51abf98ea214983232077947a7ae80dce47c92aa651664c43fc2b6e71";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/125.0.3/linux-i686/es-CL/firefox-125.0.3.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0/linux-i686/es-CL/firefox-126.0.tar.bz2";
       locale = "es-CL";
       arch = "linux-i686";
-      sha256 = "c4282cba4b588da12708921ed5c3998f24d4d81790a677090c38529c297867bb";
+      sha256 = "2296eb97d6990dbb9ac1a4a2a66e8398ad2f36d54cc7bcb5b686f72cf7ebcf83";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/125.0.3/linux-i686/es-ES/firefox-125.0.3.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0/linux-i686/es-ES/firefox-126.0.tar.bz2";
       locale = "es-ES";
       arch = "linux-i686";
-      sha256 = "15a1fed207e2c14e962c4e2eb8abe3cbc62d0621656b254675befe3d974d3cb5";
+      sha256 = "7122c71207f430b0a4a4f802220ce569f820f0461e2f92dd14b9b868cfa4bf56";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/125.0.3/linux-i686/es-MX/firefox-125.0.3.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0/linux-i686/es-MX/firefox-126.0.tar.bz2";
       locale = "es-MX";
       arch = "linux-i686";
-      sha256 = "a962e53d6902ec7017ca3a8521c6b5730e7a7ae5244356c4d6d9117e50b37ebd";
+      sha256 = "ee3bf12d3230c287f934db6e5368d90651c976a4c8177dc1e8dd134f587e42a4";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/125.0.3/linux-i686/et/firefox-125.0.3.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0/linux-i686/et/firefox-126.0.tar.bz2";
       locale = "et";
       arch = "linux-i686";
-      sha256 = "9e58939f49650dcf0f0267d586919a3144eeec53ae58ef548613311bde905eb5";
+      sha256 = "4297a9954af8145e8f938dd236dd8ebec126edda142a6dd73e94f70a0375de3b";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/125.0.3/linux-i686/eu/firefox-125.0.3.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0/linux-i686/eu/firefox-126.0.tar.bz2";
       locale = "eu";
       arch = "linux-i686";
-      sha256 = "b5427601b225370def60f93e2f8cefe9600898183f0c184487bd95f8f86d2894";
+      sha256 = "41a02f5f530e9e625524a1f370856621c9cc0e04324ef301f889454c251824c2";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/125.0.3/linux-i686/fa/firefox-125.0.3.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0/linux-i686/fa/firefox-126.0.tar.bz2";
       locale = "fa";
       arch = "linux-i686";
-      sha256 = "38fb2703b0e7fa9788aaa42dd1a89eadf616924c116f1b67b07f3d5df0963962";
+      sha256 = "36d5a5d3d616e184b29227403e333d0f3dcf6ff226bdc1c022ccdcb432fcac2a";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/125.0.3/linux-i686/ff/firefox-125.0.3.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0/linux-i686/ff/firefox-126.0.tar.bz2";
       locale = "ff";
       arch = "linux-i686";
-      sha256 = "a7b764758d16c901511062065eaa6e16414d777d8eea315424f19eecf54ef5e0";
+      sha256 = "4dc033065adaa117a44366f9ea31c657d2f236e553fa925e0b4fb9622e092b0a";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/125.0.3/linux-i686/fi/firefox-125.0.3.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0/linux-i686/fi/firefox-126.0.tar.bz2";
       locale = "fi";
       arch = "linux-i686";
-      sha256 = "153ce3d7f4ced7a280bbb5bd539913a55f6c0790fe756e8b5335539ac651f7e0";
+      sha256 = "03adea0ca2fe7e8408d81fa9105226d113bd66bb75be5b18c3eb640f71807c82";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/125.0.3/linux-i686/fr/firefox-125.0.3.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0/linux-i686/fr/firefox-126.0.tar.bz2";
       locale = "fr";
       arch = "linux-i686";
-      sha256 = "b5aa0cff2a5493bbb816ae12f43ff79354a4946c1649173de767b1cf543a427e";
+      sha256 = "bea2e88d69f51ade377594ae02ad9751db7d1d886bce28b218715299e210dc5c";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/125.0.3/linux-i686/fur/firefox-125.0.3.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0/linux-i686/fur/firefox-126.0.tar.bz2";
       locale = "fur";
       arch = "linux-i686";
-      sha256 = "d4884765fa3c28e7236a6624aaff5f874c4a155b26d0b70d481109fea5159c84";
+      sha256 = "7eaff23205978990eea395299d1fc9609b8bd6ac15c87a13df83abd14d76f88a";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/125.0.3/linux-i686/fy-NL/firefox-125.0.3.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0/linux-i686/fy-NL/firefox-126.0.tar.bz2";
       locale = "fy-NL";
       arch = "linux-i686";
-      sha256 = "49ebbe560e1960d34a2ab3258c05913ccc1d5bb60b3644dce6f4370733d7a59b";
+      sha256 = "baf7d3fe44f6d0b3e334365b44327b2c8225d94010f2238477ce2db66a31dceb";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/125.0.3/linux-i686/ga-IE/firefox-125.0.3.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0/linux-i686/ga-IE/firefox-126.0.tar.bz2";
       locale = "ga-IE";
       arch = "linux-i686";
-      sha256 = "13d06ed7c8c73ecdeeb071a02d7aab98796927812127527be5f3b5fbcd9ea487";
+      sha256 = "bdf605c386888ea39e244501e885ac5f51513093e33c3038c5d87ec2f742c49d";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/125.0.3/linux-i686/gd/firefox-125.0.3.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0/linux-i686/gd/firefox-126.0.tar.bz2";
       locale = "gd";
       arch = "linux-i686";
-      sha256 = "2435d0910e347581e1ff60217fd517b78e0464adc0d2b35b803bf8f83bf6d993";
+      sha256 = "662eae8fb0d725472d3de3b00a95b26210a0b66de584184bbf2475f85d54332c";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/125.0.3/linux-i686/gl/firefox-125.0.3.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0/linux-i686/gl/firefox-126.0.tar.bz2";
       locale = "gl";
       arch = "linux-i686";
-      sha256 = "cac5e02326f5ccdfb88e9cc1bdecc1060585b3274028f9050422834ea5559ede";
+      sha256 = "2e33e5f0e6d6e7224b85dfa1d55cb648ee35d85b5a12bb06a8a442a4e71fac8b";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/125.0.3/linux-i686/gn/firefox-125.0.3.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0/linux-i686/gn/firefox-126.0.tar.bz2";
       locale = "gn";
       arch = "linux-i686";
-      sha256 = "addcb8beed0a341c6eafc4894d11a6b3e8ff9c69c60442d674cac5dfa4552eb4";
+      sha256 = "e306c867a303068a203df7f157426f376db22e40bdef19913e460c5ddfb6016a";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/125.0.3/linux-i686/gu-IN/firefox-125.0.3.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0/linux-i686/gu-IN/firefox-126.0.tar.bz2";
       locale = "gu-IN";
       arch = "linux-i686";
-      sha256 = "2342dc7b3996019edf66375533e5dd46e94db1cb7e37635002f3f7826c7b35cf";
+      sha256 = "22fac69fc82f18b5927460c8fd438c9d964329a39538cce9c3cc944022873808";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/125.0.3/linux-i686/he/firefox-125.0.3.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0/linux-i686/he/firefox-126.0.tar.bz2";
       locale = "he";
       arch = "linux-i686";
-      sha256 = "a6026c597c8f917006893da69998586b704b5ea89687a5a4f57f4fd1c6060c22";
+      sha256 = "d448d9d47536b765193aa9e0132a0a2dd6cda3a5812cce11a7538abd4fdfdd07";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/125.0.3/linux-i686/hi-IN/firefox-125.0.3.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0/linux-i686/hi-IN/firefox-126.0.tar.bz2";
       locale = "hi-IN";
       arch = "linux-i686";
-      sha256 = "12d8bc4072ce6118f50aea48f1d0cf19ac2cde7a43b169dce92088058ee135c8";
+      sha256 = "c668f9bf4e3901d7d6eafbb29d6971d8f28dca0b327d7ae6d31eb337446edb15";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/125.0.3/linux-i686/hr/firefox-125.0.3.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0/linux-i686/hr/firefox-126.0.tar.bz2";
       locale = "hr";
       arch = "linux-i686";
-      sha256 = "fa93237908e0a30fd911a2208cb1734d0480e9514877625fc7bb8a0a4f5eda89";
+      sha256 = "d7834cb0075cef6545dc8e4894e734e83e4c258ae34ecdec570959a11d121b95";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/125.0.3/linux-i686/hsb/firefox-125.0.3.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0/linux-i686/hsb/firefox-126.0.tar.bz2";
       locale = "hsb";
       arch = "linux-i686";
-      sha256 = "4936df4e7258830565e0718fe89375c8876d5318d65e92995a104498a0353846";
+      sha256 = "edc6ab5329bf6242ed178d4a8cf908f83c34036b7a44d223a2389ce1b94f75b9";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/125.0.3/linux-i686/hu/firefox-125.0.3.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0/linux-i686/hu/firefox-126.0.tar.bz2";
       locale = "hu";
       arch = "linux-i686";
-      sha256 = "2e87fc4c2965f25a0826348b1bb8296bb037c9213cfa4a7d86e65421b36c4527";
+      sha256 = "3552897a8e67dbca66ad8fab1da93111b74e97d2e073b901f89e040458b6a1e8";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/125.0.3/linux-i686/hy-AM/firefox-125.0.3.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0/linux-i686/hy-AM/firefox-126.0.tar.bz2";
       locale = "hy-AM";
       arch = "linux-i686";
-      sha256 = "8a7660e5a5f5755daab77fe4bea805bef9124b3d7e1ede72f3f2b3ca0094b5db";
+      sha256 = "e9280a2dbafea3ffd999d06640800c8be1d4d49bb417c4c22c98df62efaaaa27";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/125.0.3/linux-i686/ia/firefox-125.0.3.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0/linux-i686/ia/firefox-126.0.tar.bz2";
       locale = "ia";
       arch = "linux-i686";
-      sha256 = "883a6bae7c4e2f72cb4bb1bee676058e9093d7069bccad29fab329d873d68075";
+      sha256 = "ae4f4754f9a839359cd9ddd1103e5f6c13b836b8d605f87c7c9ec50195397958";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/125.0.3/linux-i686/id/firefox-125.0.3.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0/linux-i686/id/firefox-126.0.tar.bz2";
       locale = "id";
       arch = "linux-i686";
-      sha256 = "0a2de5d0a841481f351d2f4e26fb4cf56592d580075b5ff08054b661e17bbacf";
+      sha256 = "6b620340c38277530507c3c163bcd194d3984fc42bce73a20118acf9e1d24104";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/125.0.3/linux-i686/is/firefox-125.0.3.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0/linux-i686/is/firefox-126.0.tar.bz2";
       locale = "is";
       arch = "linux-i686";
-      sha256 = "33376b28936467ff5c3fff5898ae1eeee882dd15d34d8d42b9010981cd27d53b";
+      sha256 = "72e4a73a842f03d8487907a8af71e4f40c6655dd78c38600e80b90857aa1c01c";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/125.0.3/linux-i686/it/firefox-125.0.3.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0/linux-i686/it/firefox-126.0.tar.bz2";
       locale = "it";
       arch = "linux-i686";
-      sha256 = "37cc5b95d46d637633d7c368350683ab2e63871e7b8f574bb50cadec80adc558";
+      sha256 = "316f3475bec0daee2646af4bbc73b7bb1122644a3165b7f0a332af16369b6c6d";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/125.0.3/linux-i686/ja/firefox-125.0.3.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0/linux-i686/ja/firefox-126.0.tar.bz2";
       locale = "ja";
       arch = "linux-i686";
-      sha256 = "4feb22e07f2a536bf18c5cd9dd82a1b60e9d846f81d08326b119b19212088ba9";
+      sha256 = "ce4db4762e09619353bcb80f1281fe75faa216a6995f8d0ecc369c2e988340ec";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/125.0.3/linux-i686/ka/firefox-125.0.3.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0/linux-i686/ka/firefox-126.0.tar.bz2";
       locale = "ka";
       arch = "linux-i686";
-      sha256 = "e786417de882825c05b8385855eee0580cad0f64a14eec53966d90108c42d524";
+      sha256 = "47e20bd8415b81a47788aa224e2eaf7086a96d6d586eef9b21c0c1a8e59dc172";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/125.0.3/linux-i686/kab/firefox-125.0.3.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0/linux-i686/kab/firefox-126.0.tar.bz2";
       locale = "kab";
       arch = "linux-i686";
-      sha256 = "b58f6d29cb6ebac1407cf46bce238f80f56c60e4b400fc6beb9fefdaff19aede";
+      sha256 = "81036648ee991ddc851a70a9242b567159324b13809d04735f11c81e1dc8f3ae";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/125.0.3/linux-i686/kk/firefox-125.0.3.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0/linux-i686/kk/firefox-126.0.tar.bz2";
       locale = "kk";
       arch = "linux-i686";
-      sha256 = "8d868c1553a1c8708f166d6b99cf0fede333366994c46d490014cf15330046e4";
+      sha256 = "86d928d9e42569fbc2862d6e14150da4ef35243016753b3d982fbba5bb6baa2b";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/125.0.3/linux-i686/km/firefox-125.0.3.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0/linux-i686/km/firefox-126.0.tar.bz2";
       locale = "km";
       arch = "linux-i686";
-      sha256 = "deafa1829c27ed270718effd342cd9bc26453e5e6f64cdd7c83f0a86dec3533a";
+      sha256 = "16b24d02899cd2bd1a7958b8b0f56bdd231ceb4c3c0c987e19d219d93af29435";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/125.0.3/linux-i686/kn/firefox-125.0.3.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0/linux-i686/kn/firefox-126.0.tar.bz2";
       locale = "kn";
       arch = "linux-i686";
-      sha256 = "9a19b06844c60e9d4d6348c6b207273378228a59f1a831c9eb99e1073eba2a16";
+      sha256 = "4cc091be288f7704f4c270bf982ac9f2f309979c92c435afe36fac6af1951d03";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/125.0.3/linux-i686/ko/firefox-125.0.3.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0/linux-i686/ko/firefox-126.0.tar.bz2";
       locale = "ko";
       arch = "linux-i686";
-      sha256 = "bf79f74b659344291a745fa62aa726401f8c84369a96c0a13eb66be9bff2368d";
+      sha256 = "bc81fbde00f8f47e58bd1ca871ec9dee8bc6763df67f5f32b70af31007369a79";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/125.0.3/linux-i686/lij/firefox-125.0.3.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0/linux-i686/lij/firefox-126.0.tar.bz2";
       locale = "lij";
       arch = "linux-i686";
-      sha256 = "41c8b57d4426251b33c7d528cb23e635b22d3b81c4188c6844a39e87800fb9bf";
+      sha256 = "9d3aa0c4fc3e14b0fe5180d372b374a83fb375d859ffd55d1be369ed0b5bffdb";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/125.0.3/linux-i686/lt/firefox-125.0.3.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0/linux-i686/lt/firefox-126.0.tar.bz2";
       locale = "lt";
       arch = "linux-i686";
-      sha256 = "34c57fa25ef83b9f6747e61eaeb4a98b312ffda9bcfdfb761392c94565e41348";
+      sha256 = "07318635215f2c399e5cc9178f181b36a0884e6e96e2059e4a5b88bf0b6c2051";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/125.0.3/linux-i686/lv/firefox-125.0.3.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0/linux-i686/lv/firefox-126.0.tar.bz2";
       locale = "lv";
       arch = "linux-i686";
-      sha256 = "173afd7c09962de9af491917b7c14d245e02e6c109f69b9b7330466515dd1549";
+      sha256 = "a2467dce574e6bb646d0531c59fe22f49178994b3b204f11c607c6ce709c6cf4";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/125.0.3/linux-i686/mk/firefox-125.0.3.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0/linux-i686/mk/firefox-126.0.tar.bz2";
       locale = "mk";
       arch = "linux-i686";
-      sha256 = "b2ace494099bffc7d70d074197d1e4b0a9a387e553e4fffb31efce7d5f89053d";
+      sha256 = "3f13386ac308a6f2572931501cf6322592ead6705ee8a420249f0030e284404d";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/125.0.3/linux-i686/mr/firefox-125.0.3.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0/linux-i686/mr/firefox-126.0.tar.bz2";
       locale = "mr";
       arch = "linux-i686";
-      sha256 = "1d4075ee01d742d9d846a9cce63847baf5ad749d260e7d2018391719e3478200";
+      sha256 = "b57bd92eabd3820d5be7d660eb774c210781a89f20d9e48a5739ad16af723cca";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/125.0.3/linux-i686/ms/firefox-125.0.3.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0/linux-i686/ms/firefox-126.0.tar.bz2";
       locale = "ms";
       arch = "linux-i686";
-      sha256 = "aa9012aa1dab8a1da2b4d21743fb01e2cae1322873cd67113f0d3298cc7b62e6";
+      sha256 = "704232123025b3ad2cedb0eadb8edaace22c01d3c62fbd3b27e5c9d2495c9530";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/125.0.3/linux-i686/my/firefox-125.0.3.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0/linux-i686/my/firefox-126.0.tar.bz2";
       locale = "my";
       arch = "linux-i686";
-      sha256 = "a52f0bddf09a9381616ee91246a2bbf02112bbe7d8e651a75bf71bb4ff0a55ff";
+      sha256 = "c07bbe85128366dd95ecae97ab00821b5be4c39442428e483c3cb434e536e790";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/125.0.3/linux-i686/nb-NO/firefox-125.0.3.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0/linux-i686/nb-NO/firefox-126.0.tar.bz2";
       locale = "nb-NO";
       arch = "linux-i686";
-      sha256 = "9c221603c7cbe51e53e03bceb2bfa64b51bda3935f8d59f995270297dfe435b5";
+      sha256 = "c079d995c6bc2e5be20ebb4ed1ca76179bce17c4eaa4e47c39ba67ec50db0268";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/125.0.3/linux-i686/ne-NP/firefox-125.0.3.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0/linux-i686/ne-NP/firefox-126.0.tar.bz2";
       locale = "ne-NP";
       arch = "linux-i686";
-      sha256 = "026fa9b87a1fb8cfc347aee7edd09cf07433d2febb6bc7284c90942aeea886cb";
+      sha256 = "a8f3ae15f481e2a2faa41330571a30464e38e070ef27ee18bffd27628f5c05a3";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/125.0.3/linux-i686/nl/firefox-125.0.3.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0/linux-i686/nl/firefox-126.0.tar.bz2";
       locale = "nl";
       arch = "linux-i686";
-      sha256 = "5454546bf2eea2e8785ec994302e9d8d9f3468a89cc5be1eaf491132f8449deb";
+      sha256 = "d0a70bd54c185f6edc93a6dd1c93b28fceb6c9a1af3e91cb78b131fb69d05023";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/125.0.3/linux-i686/nn-NO/firefox-125.0.3.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0/linux-i686/nn-NO/firefox-126.0.tar.bz2";
       locale = "nn-NO";
       arch = "linux-i686";
-      sha256 = "a71e340f55985cf76a5e768ee63c5d9fe5f5a68334642f34062324211cc48b2d";
+      sha256 = "05eeb23cc7154dc3dfbf99493bab95739f36eb52e2129b70a0cc32b4c2d67f7b";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/125.0.3/linux-i686/oc/firefox-125.0.3.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0/linux-i686/oc/firefox-126.0.tar.bz2";
       locale = "oc";
       arch = "linux-i686";
-      sha256 = "441a44314d02b9e54e86b0fa1b8049ceaad7bab7b66e54c0a841f8d624ce76aa";
+      sha256 = "80e59358349d1aea78f12b67674faf8f5fb6d23bba27cf9eb49ed55bf57e331b";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/125.0.3/linux-i686/pa-IN/firefox-125.0.3.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0/linux-i686/pa-IN/firefox-126.0.tar.bz2";
       locale = "pa-IN";
       arch = "linux-i686";
-      sha256 = "b72d31b37d4f6d7798e96c6685512814c991a987253767aad79cf515012b057f";
+      sha256 = "f3e2b5c2c044f74910b14e2a6594c5c0a91b1b0e19b8d18e557ba9b1643c906b";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/125.0.3/linux-i686/pl/firefox-125.0.3.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0/linux-i686/pl/firefox-126.0.tar.bz2";
       locale = "pl";
       arch = "linux-i686";
-      sha256 = "1ae017de12a7faf49b06c9c4bab7e20e776e5fad1430fb0e7f9af519739659cc";
+      sha256 = "8730e394f6362c9f2118f90c8f32a490e4c2b7fc4da55db0c5901e4e31a17a9c";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/125.0.3/linux-i686/pt-BR/firefox-125.0.3.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0/linux-i686/pt-BR/firefox-126.0.tar.bz2";
       locale = "pt-BR";
       arch = "linux-i686";
-      sha256 = "6a5f5afb1b3e4f71dffa20ed5ebd3037b63bf127cf9daf09291bf62d9e8a093d";
+      sha256 = "82aae4a9eecba2ac0c2860019f80b44a70b53290476113ce66a595f4d58f767c";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/125.0.3/linux-i686/pt-PT/firefox-125.0.3.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0/linux-i686/pt-PT/firefox-126.0.tar.bz2";
       locale = "pt-PT";
       arch = "linux-i686";
-      sha256 = "64763768287dd897705be573e01a61c06c916bd413f8d6a1fd47a64f0d918c09";
+      sha256 = "92eefc83ed6c748bdec86441423bd33061278a98b764d5ef28c4eaf7a9256efb";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/125.0.3/linux-i686/rm/firefox-125.0.3.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0/linux-i686/rm/firefox-126.0.tar.bz2";
       locale = "rm";
       arch = "linux-i686";
-      sha256 = "4ef4a5c3180e3432f7b9380deb84df9f816eaf4ca333c93cfce8e0a52a1cd39b";
+      sha256 = "71cda80240bd2ba45b7d66ac7a31a06e5a2132285cd3148aeaed39953feb2721";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/125.0.3/linux-i686/ro/firefox-125.0.3.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0/linux-i686/ro/firefox-126.0.tar.bz2";
       locale = "ro";
       arch = "linux-i686";
-      sha256 = "a89a97ae37721ea57f0e087c430dea88ffdb43b1a4b823cd9fff6e40faa46d81";
+      sha256 = "8e9268fa43b051519eab3212d90feabe74f50b4f3536fba436f4fc0824df6be5";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/125.0.3/linux-i686/ru/firefox-125.0.3.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0/linux-i686/ru/firefox-126.0.tar.bz2";
       locale = "ru";
       arch = "linux-i686";
-      sha256 = "93dfb081232b4af62d9cd4826501832dcd90f1a91dbafa9efa5be2a094eb2df7";
+      sha256 = "10e846b452a32a9e14568dbd9f0d00471a09045eee5b0fc265752ac52ee52681";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/125.0.3/linux-i686/sat/firefox-125.0.3.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0/linux-i686/sat/firefox-126.0.tar.bz2";
       locale = "sat";
       arch = "linux-i686";
-      sha256 = "33292fec9a1ac64f7e0b18758de38af19a19d9dbc437e8fce7f8fa20bf58da98";
+      sha256 = "fa83bd09a708f8a2aee2e22260fb79606a1d045d8330af3eecc69cb33475f17d";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/125.0.3/linux-i686/sc/firefox-125.0.3.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0/linux-i686/sc/firefox-126.0.tar.bz2";
       locale = "sc";
       arch = "linux-i686";
-      sha256 = "368600cf67e645dc9eed1835ead1eeebda974b1fc2ff5ca8ce3a65047da402f5";
+      sha256 = "59d1738d837c612f9738dae172197052817890d9640dddbcacb732cff837f88c";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/125.0.3/linux-i686/sco/firefox-125.0.3.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0/linux-i686/sco/firefox-126.0.tar.bz2";
       locale = "sco";
       arch = "linux-i686";
-      sha256 = "20db2d38c151893b43727af5016b7f48684aeac4e66386a99cdb7f640678970f";
+      sha256 = "615cb45683769a02a78cc5158b423e5449977aa325ae0553ae3c1b91097643b4";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/125.0.3/linux-i686/si/firefox-125.0.3.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0/linux-i686/si/firefox-126.0.tar.bz2";
       locale = "si";
       arch = "linux-i686";
-      sha256 = "56f3baecb795a6f99f52ac4749d9b7e69222f43a847fa5e26363a656fdfad8e0";
+      sha256 = "978b8a33535d159848db81e8d67ea96bcc804917be437c123cd7d72eef644436";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/125.0.3/linux-i686/sk/firefox-125.0.3.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0/linux-i686/sk/firefox-126.0.tar.bz2";
       locale = "sk";
       arch = "linux-i686";
-      sha256 = "7c7c25a7426b1f3b98d5aa86433237bb4e7d9f4d4c74d3302966783985a6a067";
+      sha256 = "09c76c363fed0b85c603cb6a038863aecc6ec8bd9b6536c5fe46178e94148c82";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/125.0.3/linux-i686/sl/firefox-125.0.3.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0/linux-i686/sl/firefox-126.0.tar.bz2";
       locale = "sl";
       arch = "linux-i686";
-      sha256 = "43d59e1d98e772336eafd0a2d9eeb5ddb17ffe2e21b41ec8501d5f92d01e33bf";
+      sha256 = "9c7e786634ae4de0d1745f302dc8b1bb7f02d25cbdbe0aefd07cd4e387042b03";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/125.0.3/linux-i686/son/firefox-125.0.3.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0/linux-i686/son/firefox-126.0.tar.bz2";
       locale = "son";
       arch = "linux-i686";
-      sha256 = "561fb6ac615a92d24229f33be1bec0c40c593eb46bdd8c5b0f916ce72c7ae0c7";
+      sha256 = "9049588a9910c85767e4c501d0361be434f678b7390395dd7ed89b3d6127da04";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/125.0.3/linux-i686/sq/firefox-125.0.3.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0/linux-i686/sq/firefox-126.0.tar.bz2";
       locale = "sq";
       arch = "linux-i686";
-      sha256 = "b58d25f1a89ffda900b77bda85b8a0b4013009d07756f1e80c2f464b4f00e9dc";
+      sha256 = "73637bf2473d33658fb2650129cfd321e07912ab4396e4fe3b2b96f1c5a2f7d3";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/125.0.3/linux-i686/sr/firefox-125.0.3.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0/linux-i686/sr/firefox-126.0.tar.bz2";
       locale = "sr";
       arch = "linux-i686";
-      sha256 = "6efb25e0762457b7738ce878830a236543d8ac3e27eb26fd92038f83031980ad";
+      sha256 = "6ef94639d56fe3542c0df18b0fcd54284b102aaf769949f252f09471c7c5b9cb";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/125.0.3/linux-i686/sv-SE/firefox-125.0.3.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0/linux-i686/sv-SE/firefox-126.0.tar.bz2";
       locale = "sv-SE";
       arch = "linux-i686";
-      sha256 = "01e408103e812278d0c81b3acef7045636d64999237dfeb74024e63f640084aa";
+      sha256 = "cb6e649a40b53ecaf7460ab1527f37ea69250c7cbae4441aa839b857a858608d";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/125.0.3/linux-i686/szl/firefox-125.0.3.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0/linux-i686/szl/firefox-126.0.tar.bz2";
       locale = "szl";
       arch = "linux-i686";
-      sha256 = "940138fe1ec2f707f153147db6b6e5eca9dce191ae8765a52662cc89d9e18fe1";
+      sha256 = "2fccc546c7fdaa965902618eed57a2a18cea2091130950c483f1b982f972d438";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/125.0.3/linux-i686/ta/firefox-125.0.3.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0/linux-i686/ta/firefox-126.0.tar.bz2";
       locale = "ta";
       arch = "linux-i686";
-      sha256 = "d90039aef7fc7e56e948d4af079f3edef5b65588ad5fd650cb70f59188c758fd";
+      sha256 = "52bc70dd238c6b099549b5e704ef12e7655cee23ac577671d27685c479c4045f";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/125.0.3/linux-i686/te/firefox-125.0.3.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0/linux-i686/te/firefox-126.0.tar.bz2";
       locale = "te";
       arch = "linux-i686";
-      sha256 = "1ad8d8e42c691566cf1d082464f5c32e8ecef628182ff4dbebb4482e2eb33465";
+      sha256 = "f819512f4f0428f732115c1587aa876a7374564b606e9581c3d405c9273a8d16";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/125.0.3/linux-i686/tg/firefox-125.0.3.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0/linux-i686/tg/firefox-126.0.tar.bz2";
       locale = "tg";
       arch = "linux-i686";
-      sha256 = "4c6974fcdc6d55662073b259b4891472eae22f79aa718ba6f13e73e54f97ca42";
+      sha256 = "278142e32bd078092e69dac8ce8b1d5d88d1d7adc13abf681d6d53c5d97a8784";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/125.0.3/linux-i686/th/firefox-125.0.3.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0/linux-i686/th/firefox-126.0.tar.bz2";
       locale = "th";
       arch = "linux-i686";
-      sha256 = "6725c41f5465bf1a1731154654bd6e0a8aa9b5175e1e7f64ae719e8b1fed0057";
+      sha256 = "8443f0793f817568b002aeb436423793108594e2cc43da929ec48079e0fcfd5f";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/125.0.3/linux-i686/tl/firefox-125.0.3.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0/linux-i686/tl/firefox-126.0.tar.bz2";
       locale = "tl";
       arch = "linux-i686";
-      sha256 = "6e7dee9256a30aec0c7fa67cff5d3b295bd45f417a0d02f34cdafd2fabffa6b1";
+      sha256 = "d03a4714b86f5f0dfffb1b4780b09862653266eb3736a7b0630784bd3a6c739f";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/125.0.3/linux-i686/tr/firefox-125.0.3.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0/linux-i686/tr/firefox-126.0.tar.bz2";
       locale = "tr";
       arch = "linux-i686";
-      sha256 = "fc1f91da8f5b30301a0f3238b6dde5e0accd314f6fe43d18715b786a2917d8e6";
+      sha256 = "1f87ae9443c4fa9a8d4616e2de1fb799c0fa1b95b37070e669db475f5de9be28";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/125.0.3/linux-i686/trs/firefox-125.0.3.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0/linux-i686/trs/firefox-126.0.tar.bz2";
       locale = "trs";
       arch = "linux-i686";
-      sha256 = "ab8cf88696df73b802f6dd6f42c33172c35685af462e92e2fd161ed3307c5fae";
+      sha256 = "b9f8c5a2ecd83b4bdd6f5e26037f8aff0d9b2ba7abcae08b7868c15ddcc38def";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/125.0.3/linux-i686/uk/firefox-125.0.3.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0/linux-i686/uk/firefox-126.0.tar.bz2";
       locale = "uk";
       arch = "linux-i686";
-      sha256 = "40fd34bcbef5937190065db1769227ae05fe29d7df65cab96b4b47b68acfd0f2";
+      sha256 = "566d6daca65e49cb8280dd64716e7ba3b9f00baa995ddfe31f847166ef70eb2f";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/125.0.3/linux-i686/ur/firefox-125.0.3.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0/linux-i686/ur/firefox-126.0.tar.bz2";
       locale = "ur";
       arch = "linux-i686";
-      sha256 = "360c8abcfc50fa78f1115973f152785ee52f1ab9a8e512183df7e7f6f9099ae9";
+      sha256 = "530b7cd6338c09f1c92cf7eb8f0e5fa150d4477913f14257a18567e325d8c64e";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/125.0.3/linux-i686/uz/firefox-125.0.3.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0/linux-i686/uz/firefox-126.0.tar.bz2";
       locale = "uz";
       arch = "linux-i686";
-      sha256 = "ac301677aa02e5e8f4ebbf382b511b9a7ee07036e7f74726ec23dfae2b82614f";
+      sha256 = "b525c6a6ec58ded4b637299832b3f1542d1f17958bc2f9074e05d1e96303d4cd";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/125.0.3/linux-i686/vi/firefox-125.0.3.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0/linux-i686/vi/firefox-126.0.tar.bz2";
       locale = "vi";
       arch = "linux-i686";
-      sha256 = "78964ade29f3d8c3d664be9a634ab6f2e7c33100d08936de4b813b7718946d39";
+      sha256 = "dbeebc029258ffc4678ae05aeca5cf43e634413862deb2b10d21fcd96039ca7a";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/125.0.3/linux-i686/xh/firefox-125.0.3.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0/linux-i686/xh/firefox-126.0.tar.bz2";
       locale = "xh";
       arch = "linux-i686";
-      sha256 = "3692b2d980105d1d1640c0dfaec52df29cc5c5b3868250aee6c011d9e3a95963";
+      sha256 = "05029e34aa21b1b1ee1a02ca13afdc2764cb0757fdaa533a8fdbc633d6bd11ba";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/125.0.3/linux-i686/zh-CN/firefox-125.0.3.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0/linux-i686/zh-CN/firefox-126.0.tar.bz2";
       locale = "zh-CN";
       arch = "linux-i686";
-      sha256 = "b9c137726f279abef9f86e8f2889465d1f9f2bfd34cb7008471a5c7e5222fd78";
+      sha256 = "c528f20f5ff5ac5353997f474ff88fb17834e6c913b1e2bf2af9fdaf837bc031";
     }
-    { url = "https://archive.mozilla.org/pub/firefox/releases/125.0.3/linux-i686/zh-TW/firefox-125.0.3.tar.bz2";
+    { url = "https://archive.mozilla.org/pub/firefox/releases/126.0/linux-i686/zh-TW/firefox-126.0.tar.bz2";
       locale = "zh-TW";
       arch = "linux-i686";
-      sha256 = "a7cd7f510e92be7608a405ee7048becf1e2866dc0153434e465fa3f381921ad1";
+      sha256 = "03edbb562a60417320469ae06a632ec6c302d420a6565f2a25acb3e3b4e7e61d";
     }
     ];
 }
diff --git a/pkgs/applications/networking/browsers/firefox/common.nix b/pkgs/applications/networking/browsers/firefox/common.nix
index 4483cd31bd65..56dda27e54c9 100644
--- a/pkgs/applications/networking/browsers/firefox/common.nix
+++ b/pkgs/applications/networking/browsers/firefox/common.nix
@@ -50,7 +50,7 @@ in
 , rustPlatform
 , unzip
 , which
-, wrapGAppsHook
+, wrapGAppsHook3
 
 # runtime
 , bzip2
@@ -289,7 +289,7 @@ buildStdenv.mkDerivation {
     rustc
     unzip
     which
-    wrapGAppsHook
+    wrapGAppsHook3
   ]
   ++ lib.optionals crashreporterSupport [ dump_syms patchelf ]
   ++ lib.optionals pgoSupport [ xvfb-run ]
diff --git a/pkgs/applications/networking/browsers/firefox/packages.nix b/pkgs/applications/networking/browsers/firefox/packages.nix
index 4823ceab0eac..66b0cdf7a985 100644
--- a/pkgs/applications/networking/browsers/firefox/packages.nix
+++ b/pkgs/applications/networking/browsers/firefox/packages.nix
@@ -3,10 +3,10 @@
 {
   firefox = buildMozillaMach rec {
     pname = "firefox";
-    version = "125.0.3";
+    version = "126.0";
     src = fetchurl {
       url = "mirror://mozilla/firefox/releases/${version}/source/firefox-${version}.source.tar.xz";
-      sha512 = "18e705a3093290311ccb5f27f01e43fe243ece94c1769a9ccc4fa53d370e32a1ec6a107cdeb531e9468b9aca1a1fe668161adb7acc1ec65fd383837882c7d484";
+      sha512 = "56025b051d544ca294911a1d6a66f09945f71012131881b64313dafb579730810a4b091950c90a21d4fd3f393ba23670d8409086e1677d80d0bbbe347c303527";
     };
 
     extraPatches = [
@@ -33,11 +33,11 @@
 
   firefox-beta = buildMozillaMach rec {
     pname = "firefox-beta";
-    version = "126.0b5";
+    version = "127.0b2";
     applicationName = "Mozilla Firefox Beta";
     src = fetchurl {
       url = "mirror://mozilla/firefox/releases/${version}/source/firefox-${version}.source.tar.xz";
-      sha512 = "5a079e4f01c95baf5b26a5d61521eea493fa4c3cdf91985fbbee313ddc50af1d941915abd6d0ffa97927d80f2016cbdcd3c80c11cfc3068cf83a62f3b45026ad";
+      sha512 = "ce3bb42674fb5c820ce46a1f86d482d9c7631f1e0f31fe63c0813436cb54b3bbae9b53f397dc6cfc48b28682f720bfd042bb68715a3c653046870f2d50e9ed04";
     };
 
     meta = {
@@ -62,13 +62,13 @@
 
   firefox-devedition = buildMozillaMach rec {
     pname = "firefox-devedition";
-    version = "126.0b5";
+    version = "127.0b2";
     applicationName = "Mozilla Firefox Developer Edition";
     requireSigning = false;
     branding = "browser/branding/aurora";
     src = fetchurl {
       url = "mirror://mozilla/devedition/releases/${version}/source/firefox-${version}.source.tar.xz";
-      sha512 = "cb36cdf70035ed96cb877d41e499d7df03fc6a939f4a5395fef110a44f7d810ad4e8fa393c784f3e7d286ffde0c4f3ad0fd38e81236a301a24d4e74eece702b1";
+      sha512 = "109e834e533db1a815151777170cdc0617a1f725ce8e5af04e63ac9e874edb22a33d51f2d85fcbb0c4132c3884785a54f6ea0ffaf7a0cc764e033fda311c48d6";
     };
 
     meta = {
@@ -94,11 +94,11 @@
 
   firefox-esr-115 = buildMozillaMach rec {
     pname = "firefox-esr-115";
-    version = "115.10.0esr";
+    version = "115.11.0esr";
     applicationName = "Mozilla Firefox ESR";
     src = fetchurl {
       url = "mirror://mozilla/firefox/releases/${version}/source/firefox-${version}.source.tar.xz";
-      sha512 = "0626e2c68ce43f24dfc2b9216e2565537ad8781daf4195d53420e1b78d57d0f6360fbe56b0ddbedae3818546c72472c85c1ff2b208c123d32a0543e666f42b65";
+      sha512 = "0f3a87c99fb008088afd509d9259f893fdd44ea6bf6a5e69806fefb8d355415e81b9e8832a392acb9d0c1c50e4add7f1362a4aaadc35e1d9c2e55baf7136aed8";
     };
 
     meta = {
diff --git a/pkgs/applications/networking/browsers/librewolf/src.json b/pkgs/applications/networking/browsers/librewolf/src.json
index b012094e9113..737f10a4f65b 100644
--- a/pkgs/applications/networking/browsers/librewolf/src.json
+++ b/pkgs/applications/networking/browsers/librewolf/src.json
@@ -1,15 +1,15 @@
 {
-  "packageVersion": "125.0.2-1",
+  "packageVersion": "125.0.3-1",
   "source": {
-    "rev": "125.0.2-1",
-    "sha256": "17i36s2ny1pv3cz44w0gz48fy4vjfw6vp9jk21j62f5d3dl726x8"
+    "rev": "125.0.3-1",
+    "sha256": "0ny4bh1kn9j8wqfbdi78fl2sh0sv14klznhsg47hvckgwf8iii6d"
   },
   "settings": {
     "rev": "6b2b6a89fc15a705388955e4d1375f453d8cdc89",
     "sha256": "0yginhc8pn00k1gh8h7bzvrl4vi2wimbmrrgnmvvblv28bxhwnh0"
   },
   "firefox": {
-    "version": "125.0.2",
-    "sha512": "f6d5fff7c5c532d2e41a246d0403bdd746981cfcb7c43f9d3d8ec85a7acc3310a52043d1e18848475cef1b63c24769e81b2b06d68ae007b68016ee51436032f1"
+    "version": "125.0.3",
+    "sha512": "18e705a3093290311ccb5f27f01e43fe243ece94c1769a9ccc4fa53d370e32a1ec6a107cdeb531e9468b9aca1a1fe668161adb7acc1ec65fd383837882c7d484"
   }
 }
diff --git a/pkgs/applications/networking/browsers/luakit/default.nix b/pkgs/applications/networking/browsers/luakit/default.nix
index a861f2f44bfc..6011755e3892 100644
--- a/pkgs/applications/networking/browsers/luakit/default.nix
+++ b/pkgs/applications/networking/browsers/luakit/default.nix
@@ -2,7 +2,7 @@
 , stdenv
 , fetchFromGitHub
 , pkg-config
-, wrapGAppsHook
+, wrapGAppsHook3
 , help2man
 , glib-networking
 , gst_all_1
@@ -27,7 +27,7 @@ stdenv.mkDerivation rec {
   nativeBuildInputs = [
     pkg-config
     help2man
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
   buildInputs = [
     gtk3
diff --git a/pkgs/applications/networking/browsers/microsoft-edge/default.nix b/pkgs/applications/networking/browsers/microsoft-edge/default.nix
index f07e5e938856..8b9574916ce0 100644
--- a/pkgs/applications/networking/browsers/microsoft-edge/default.nix
+++ b/pkgs/applications/networking/browsers/microsoft-edge/default.nix
@@ -1,20 +1,20 @@
 {
   beta = import ./browser.nix {
     channel = "beta";
-    version = "124.0.2478.67";
+    version = "125.0.2535.37";
     revision = "1";
-    hash = "sha256-EywgM3G0Yph3dofullSVZpXSvT2MHc4uPyGAoaXCgN8=";
+    hash = "sha256-/fZcFIVj4stIxim2UYsxA5rNkyGf/i3eDf25npsdDi4=";
   };
   dev = import ./browser.nix {
     channel = "dev";
-    version = "125.0.2535.6";
+    version = "126.0.2566.1";
     revision = "1";
-    hash = "sha256-iD/e7AuPG0uNZY20wFQRbvAaKmaUw2RKeRJADU1MFRI=";
+    hash = "sha256-PePosWGdkLm5OK82YP9LQbvVz5de8KL06I6rv0TKP3A=";
   };
   stable = import ./browser.nix {
     channel = "stable";
-    version = "124.0.2478.67";
+    version = "124.0.2478.97";
     revision = "1";
-    hash = "sha256-PRL2aiebCoK0eGJWlvI+Gsk14FltV+GaQdojLuDFimU=";
+    hash = "sha256-hdCtHWOEez3VTw8hTRiitURiu0MpFTbnc60biym795k=";
   };
 }
diff --git a/pkgs/applications/networking/browsers/midori/default.nix b/pkgs/applications/networking/browsers/midori/default.nix
index 3bf46be68319..f937f690b582 100644
--- a/pkgs/applications/networking/browsers/midori/default.nix
+++ b/pkgs/applications/networking/browsers/midori/default.nix
@@ -5,7 +5,7 @@
 , pkg-config
 , intltool
 , vala
-, wrapGAppsHook
+, wrapGAppsHook3
 , gcr
 , libpeas
 , gtk3
@@ -33,7 +33,7 @@ stdenv.mkDerivation rec {
     ninja
     pkg-config
     vala
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
diff --git a/pkgs/applications/networking/browsers/mullvad-browser/default.nix b/pkgs/applications/networking/browsers/mullvad-browser/default.nix
index a34b5022a7a3..c641a4cc3795 100644
--- a/pkgs/applications/networking/browsers/mullvad-browser/default.nix
+++ b/pkgs/applications/networking/browsers/mullvad-browser/default.nix
@@ -5,7 +5,7 @@
 , copyDesktopItems
 , makeWrapper
 , writeText
-, wrapGAppsHook
+, wrapGAppsHook3
 , autoPatchelfHook
 , callPackage
 
@@ -90,7 +90,7 @@ let
       ++ lib.optionals mediaSupport [ ffmpeg ]
   );
 
-  version = "13.0.14";
+  version = "13.0.15";
 
   sources = {
     x86_64-linux = fetchurl {
@@ -102,7 +102,7 @@ let
         "https://tor.eff.org/dist/mullvadbrowser/${version}/mullvad-browser-linux-x86_64-${version}.tar.xz"
         "https://tor.calyxinstitute.org/dist/mullvadbrowser/${version}/mullvad-browser-linux-x86_64-${version}.tar.xz"
       ];
-      hash = "sha256-z7fZtq+jnoAi6G8RNahGtP1LXeOXU/2wYz5ha2ddAeM=";
+      hash = "sha256-TypPevAkp1G7GPzBTRUv3N4UJydAqfllNekTsYfiisQ=";
     };
   };
 
@@ -125,7 +125,7 @@ stdenv.mkDerivation rec {
 
   src = sources.${stdenv.hostPlatform.system} or (throw "unsupported system: ${stdenv.hostPlatform.system}");
 
-  nativeBuildInputs = [ copyDesktopItems makeWrapper wrapGAppsHook autoPatchelfHook ];
+  nativeBuildInputs = [ copyDesktopItems makeWrapper wrapGAppsHook3 autoPatchelfHook ];
   buildInputs = [
     gtk3
     alsa-lib
diff --git a/pkgs/applications/networking/browsers/netsurf/browser.nix b/pkgs/applications/networking/browsers/netsurf/browser.nix
index 6feb02faa9d2..36f669439d00 100644
--- a/pkgs/applications/networking/browsers/netsurf/browser.nix
+++ b/pkgs/applications/networking/browsers/netsurf/browser.nix
@@ -20,7 +20,7 @@
 , openssl
 , perlPackages
 , pkg-config
-, wrapGAppsHook
+, wrapGAppsHook3
 , xxd
 
 # Netsurf-specific dependencies
@@ -60,7 +60,7 @@ stdenv.mkDerivation (finalAttrs: {
     pkg-config
     xxd
   ]
-  ++ lib.optional (uilib == "gtk2" || uilib == "gtk3") wrapGAppsHook;
+  ++ lib.optional (uilib == "gtk2" || uilib == "gtk3") wrapGAppsHook3;
 
   buildInputs = [
     check
diff --git a/pkgs/applications/networking/browsers/nyxt/default.nix b/pkgs/applications/networking/browsers/nyxt/default.nix
index 6a990201c75d..d0a040748dc8 100644
--- a/pkgs/applications/networking/browsers/nyxt/default.nix
+++ b/pkgs/applications/networking/browsers/nyxt/default.nix
@@ -1,5 +1,5 @@
 { stdenv, lib, sbclPackages
-, makeWrapper, wrapGAppsHook, gst_all_1
+, makeWrapper, wrapGAppsHook3, gst_all_1
 , glib, gdk-pixbuf, cairo
 , mailcap, pango, gtk3
 , glib-networking, gsettings-desktop-schemas
@@ -12,7 +12,7 @@ stdenv.mkDerivation rec {
 
   src = sbclPackages.nyxt;
 
-  nativeBuildInputs = [ makeWrapper wrapGAppsHook ];
+  nativeBuildInputs = [ makeWrapper wrapGAppsHook3 ];
   gstBuildInputs = with gst_all_1; [
     gstreamer gst-libav
     gst-plugins-base
diff --git a/pkgs/applications/networking/browsers/opera/default.nix b/pkgs/applications/networking/browsers/opera/default.nix
index 94f2a466295f..fc80fd76c102 100644
--- a/pkgs/applications/networking/browsers/opera/default.nix
+++ b/pkgs/applications/networking/browsers/opera/default.nix
@@ -40,7 +40,7 @@
 , at-spi2-atk
 , at-spi2-core
 , autoPatchelfHook
-, wrapGAppsHook
+, wrapGAppsHook3
 , qt6
 , proprietaryCodecs ? false
 , vivaldi-ffmpeg-codecs
@@ -51,11 +51,11 @@ let
 in
 stdenv.mkDerivation rec {
   pname = "opera";
-  version = "109.0.5097.38";
+  version = "109.0.5097.80";
 
   src = fetchurl {
     url = "${mirror}/${version}/linux/${pname}-stable_${version}_amd64.deb";
-    hash = "sha256-eljVXaHN7gPqpoL3z+Fz/BH6b+1qxSHtFln6NCxl9tc=";
+    hash = "sha256-3NSinITYisulR5rNhSnwQC3D9pKWj4SdBtFt/9OgCvo=";
   };
 
   unpackPhase = "dpkg-deb -x $src .";
@@ -63,7 +63,7 @@ stdenv.mkDerivation rec {
   nativeBuildInputs = [
     dpkg
     autoPatchelfHook
-    wrapGAppsHook
+    wrapGAppsHook3
     qt6.wrapQtAppsHook
   ];
 
diff --git a/pkgs/applications/networking/browsers/palemoon/bin.nix b/pkgs/applications/networking/browsers/palemoon/bin.nix
index 9b3ea171b4f5..3a449623a0f6 100644
--- a/pkgs/applications/networking/browsers/palemoon/bin.nix
+++ b/pkgs/applications/networking/browsers/palemoon/bin.nix
@@ -13,7 +13,7 @@
 , libXt
 , libpulseaudio
 , makeDesktopItem
-, wrapGAppsHook
+, wrapGAppsHook3
 , writeScript
 , testers
 }:
@@ -31,7 +31,7 @@ stdenv.mkDerivation (finalAttrs: {
   nativeBuildInputs = [
     autoPatchelfHook
     copyDesktopItems
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
diff --git a/pkgs/applications/networking/browsers/polypane/default.nix b/pkgs/applications/networking/browsers/polypane/default.nix
index ee28dcbabafc..0c078e98d18a 100644
--- a/pkgs/applications/networking/browsers/polypane/default.nix
+++ b/pkgs/applications/networking/browsers/polypane/default.nix
@@ -2,12 +2,12 @@
 
 let
   pname = "polypane";
-  version = "18.0.4";
+  version = "19.0.0";
 
   src = fetchurl {
     url = "https://github.com/firstversionist/${pname}/releases/download/v${version}/${pname}-${version}.AppImage";
     name = "${pname}-${version}.AppImage";
-    sha256 = "sha256-FqaXLoFgkKHzOvy7f9R36uIDnv2c6HrVF6T3VK5Aw3c=";
+    sha256 = "sha256-yRJsyJ4dhPAbqVmUmVnFlGGQ5CUJZ0VG19TMnSW0tJ4=";
   };
 
   appimageContents = appimageTools.extractType2 {
@@ -16,8 +16,7 @@ let
 in appimageTools.wrapType2 {
   inherit pname src version;
 
-  multiArch = false;
-  extraPkgs = pkgs: appimageTools.defaultFhsEnvArgs.multiPkgs pkgs ++ [ pkgs.bash ];
+  extraPkgs = pkgs: [ pkgs.bash ];
 
   extraInstallCommands = ''
     install -m 444 -D ${appimageContents}/${pname}.desktop $out/share/applications/${pname}.desktop
diff --git a/pkgs/applications/networking/browsers/surf/default.nix b/pkgs/applications/networking/browsers/surf/default.nix
index 012a86aadb38..ad1b9a51a443 100644
--- a/pkgs/applications/networking/browsers/surf/default.nix
+++ b/pkgs/applications/networking/browsers/surf/default.nix
@@ -1,5 +1,5 @@
 { lib, stdenv, fetchgit
-, pkg-config, wrapGAppsHook
+, pkg-config, wrapGAppsHook3
 , glib, gcr, glib-networking, gsettings-desktop-schemas, gtk, libsoup, webkitgtk
 , xorg, dmenu, findutils, gnused, coreutils, gst_all_1
 , patches ? null
@@ -16,7 +16,7 @@ stdenv.mkDerivation rec {
     sha256 = "1v926hiayddylq79n8l7dy51bm0dsa9n18nx9bkhg666cx973x4z";
   };
 
-  nativeBuildInputs = [ pkg-config wrapGAppsHook ];
+  nativeBuildInputs = [ pkg-config wrapGAppsHook3 ];
   buildInputs = [
     glib
     gcr
diff --git a/pkgs/applications/networking/browsers/tor-browser/default.nix b/pkgs/applications/networking/browsers/tor-browser/default.nix
index 91456e85e6f7..2aa01bfe1b96 100644
--- a/pkgs/applications/networking/browsers/tor-browser/default.nix
+++ b/pkgs/applications/networking/browsers/tor-browser/default.nix
@@ -6,7 +6,7 @@
 , makeWrapper
 , writeText
 , autoPatchelfHook
-, wrapGAppsHook
+, wrapGAppsHook3
 , callPackage
 
 , atk
@@ -101,7 +101,7 @@ lib.warnIf (useHardenedMalloc != null)
       ++ lib.optionals mediaSupport [ ffmpeg ]
   );
 
-  version = "13.0.14";
+  version = "13.0.15";
 
   sources = {
     x86_64-linux = fetchurl {
@@ -111,7 +111,7 @@ lib.warnIf (useHardenedMalloc != null)
         "https://tor.eff.org/dist/torbrowser/${version}/tor-browser-linux-x86_64-${version}.tar.xz"
         "https://tor.calyxinstitute.org/dist/torbrowser/${version}/tor-browser-linux-x86_64-${version}.tar.xz"
       ];
-      hash = "sha256-UWR2zMVXa6QMz1EIWJf43Vmj14ZIaug105esxeSd0KU=";
+      hash = "sha256-e2YFrPzle9s/j3+uxFjoK538pLV1u1a4kD6V8RaqpOU=";
     };
 
     i686-linux = fetchurl {
@@ -121,7 +121,7 @@ lib.warnIf (useHardenedMalloc != null)
         "https://tor.eff.org/dist/torbrowser/${version}/tor-browser-linux-i686-${version}.tar.xz"
         "https://tor.calyxinstitute.org/dist/torbrowser/${version}/tor-browser-linux-i686-${version}.tar.xz"
       ];
-      hash = "sha256-n+qj3IY4z+erOg4iUkQ4CP3rtJASTeKPg7beZRdesw4=";
+      hash = "sha256-20C4UuSN2PZ2L3AZv7klNClD4RoThpmnKrpoK9An24w=";
     };
   };
 
@@ -144,7 +144,7 @@ stdenv.mkDerivation rec {
 
   src = sources.${stdenv.hostPlatform.system} or (throw "unsupported system: ${stdenv.hostPlatform.system}");
 
-  nativeBuildInputs = [ autoPatchelfHook copyDesktopItems makeWrapper wrapGAppsHook ];
+  nativeBuildInputs = [ autoPatchelfHook copyDesktopItems makeWrapper wrapGAppsHook3 ];
   buildInputs = [
     gtk3
     alsa-lib
diff --git a/pkgs/applications/networking/browsers/vimb/default.nix b/pkgs/applications/networking/browsers/vimb/default.nix
index 8df37ed5e086..a78fcf36f384 100644
--- a/pkgs/applications/networking/browsers/vimb/default.nix
+++ b/pkgs/applications/networking/browsers/vimb/default.nix
@@ -1,5 +1,5 @@
 { lib, stdenv, fetchFromGitHub, pkg-config, libsoup, webkitgtk, gtk3, glib-networking
-, gsettings-desktop-schemas, wrapGAppsHook
+, gsettings-desktop-schemas, wrapGAppsHook3
 }:
 
 stdenv.mkDerivation rec {
@@ -13,7 +13,7 @@ stdenv.mkDerivation rec {
     sha256 = "sha256-Eq4riJSznKpkW9JJDnTCLxZ9oMJTmWkIoGphOiCcSAg=";
   };
 
-  nativeBuildInputs = [ wrapGAppsHook pkg-config ];
+  nativeBuildInputs = [ wrapGAppsHook3 pkg-config ];
   buildInputs = [ gtk3 libsoup webkitgtk glib-networking gsettings-desktop-schemas ];
 
   passthru = {
diff --git a/pkgs/applications/networking/browsers/vivaldi/default.nix b/pkgs/applications/networking/browsers/vivaldi/default.nix
index 442f899920c1..d1ade0a85b12 100644
--- a/pkgs/applications/networking/browsers/vivaldi/default.nix
+++ b/pkgs/applications/networking/browsers/vivaldi/default.nix
@@ -24,7 +24,7 @@ let
   vivaldiName = if isSnapshot then "vivaldi-snapshot" else "vivaldi";
 in stdenv.mkDerivation rec {
   pname = "vivaldi";
-  version = "6.6.3271.61";
+  version = "6.7.3329.27";
 
   suffix = {
     aarch64-linux = "arm64";
@@ -34,8 +34,8 @@ in stdenv.mkDerivation rec {
   src = fetchurl {
     url = "https://downloads.vivaldi.com/${branch}/vivaldi-${branch}_${version}-1_${suffix}.deb";
     hash = {
-      aarch64-linux = "sha256-Rcc/pufINOQJlkQI6KkWVZtnh3KvKLS6jRWQNTxPFmU=";
-      x86_64-linux = "sha256-Xt4pLB23VZ/j9g/QCOQTrrhQduxs1nB4wyYkBefFPIQ=";
+      aarch64-linux = "sha256-o+ociqdALNti/7VgcBOb7cQBlZLWmYnTQ68SW8NMDIs=";
+      x86_64-linux = "sha256-1ppDdLIpQMBX+W2dL6CumqUM6PsEZJpQrA3huj3V+Eg=";
     }.${stdenv.hostPlatform.system} or (throw "Unsupported system: ${stdenv.hostPlatform.system}");
   };
 
diff --git a/pkgs/applications/networking/browsers/yandex-browser/default.nix b/pkgs/applications/networking/browsers/yandex-browser/default.nix
index 9c1e5a0d2245..51b662f0ef36 100644
--- a/pkgs/applications/networking/browsers/yandex-browser/default.nix
+++ b/pkgs/applications/networking/browsers/yandex-browser/default.nix
@@ -2,7 +2,7 @@
 , lib
 , fetchurl
 , autoPatchelfHook
-, wrapGAppsHook
+, wrapGAppsHook3
 , flac
 , gnome2
 , harfbuzzFull
@@ -54,15 +54,15 @@
 
 let
   version = {
-    corporate = "23.11.1.822-1";
-    beta = "24.1.1.939-1";
-    stable = "24.1.1.940-1";
+    corporate = "24.1.3.843-1";
+    beta = "24.4.1.918-1";
+    stable = "24.4.1.915-1";
   }.${edition};
 
   hash = {
-    corporate = "sha256-OOcz2dQeVea0vBjF1FyrCsnRR+WrCzfLTd+YXpLJCsI=";
-    beta = "sha256-Meswp1aeNTBr79l7XGWqJT9qqUdOfSzIpdL1L29UfJw=";
-    stable = "sha256-FZHoCRedpHHVwibSXts2DncUN83PZ9UlVOSXPjgAaNs=";
+    corporate = "sha256-rI19YmsC2p2Dsi6Grd8IyNdpjMHWwET3wcVw5r7545M=";
+    beta = "sha256-EQjjaTMPQKaULITEF+MQuY1lRVXuOjyiGWuGQtIpIz0=";
+    stable = "sha256-2IIIADFG9kCtzB0X4AfrFI+btqoUzKwd6NlZt7qtL/M=";
   }.${edition};
 
   app = {
@@ -83,7 +83,7 @@ in stdenv.mkDerivation rec {
   nativeBuildInputs = [
     autoPatchelfHook
     qt6.wrapQtAppsHook
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
diff --git a/pkgs/applications/networking/calls/default.nix b/pkgs/applications/networking/calls/default.nix
index 77a80df87ed5..92c9978b4a14 100644
--- a/pkgs/applications/networking/calls/default.nix
+++ b/pkgs/applications/networking/calls/default.nix
@@ -21,7 +21,7 @@
 , libgdata
 , dbus
 , vala
-, wrapGAppsHook
+, wrapGAppsHook3
 , xvfb-run
 , gtk-doc
 , docbook-xsl-nons
@@ -54,7 +54,7 @@ stdenv.mkDerivation rec {
     desktop-file-utils
     appstream-glib
     vala
-    wrapGAppsHook
+    wrapGAppsHook3
     gtk-doc
     docbook-xsl-nons
     docbook_xml_dtd_43
diff --git a/pkgs/applications/networking/cloudflared/default.nix b/pkgs/applications/networking/cloudflared/default.nix
index f61bb393bac7..59e0f843648e 100644
--- a/pkgs/applications/networking/cloudflared/default.nix
+++ b/pkgs/applications/networking/cloudflared/default.nix
@@ -7,13 +7,13 @@
 
 buildGoModule rec {
   pname = "cloudflared";
-  version = "2024.4.0";
+  version = "2024.4.1";
 
   src = fetchFromGitHub {
     owner = "cloudflare";
     repo = "cloudflared";
     rev = "refs/tags/${version}";
-    hash = "sha256-1/3uj0h9n53j8PnZSHWEyMARsWYxFIqSkGlxS2JXqsM=";
+    hash = "sha256-rDw25kFiD16xma/LozGjlc/Tm6hoRYzHs8spTk6HU6Y=";
   };
 
   vendorHash = null;
diff --git a/pkgs/applications/networking/cluster/argocd/default.nix b/pkgs/applications/networking/cluster/argocd/default.nix
index 761e7f0d1d7b..64cd0aaa2413 100644
--- a/pkgs/applications/networking/cluster/argocd/default.nix
+++ b/pkgs/applications/networking/cluster/argocd/default.nix
@@ -2,17 +2,17 @@
 
 buildGoModule rec {
   pname = "argocd";
-  version = "2.10.8";
+  version = "2.11.0";
 
   src = fetchFromGitHub {
     owner = "argoproj";
     repo = "argo-cd";
     rev = "v${version}";
-    hash = "sha256-VzEgZshzIHXI0J172W1zI1E8dU8iYJq0lO01LpI8Y+U=";
+    hash = "sha256-HVkR5sG3CfTW56pTB15S+w4kwbv7he9Be6RKmpu+E4E=";
   };
 
   proxyVendor = true; # darwin/linux hash mismatch
-  vendorHash = "sha256-dgj8IXrLNZ6ZEIFAY/gXAklVKfLXosRuR1SyZWkwrwA=";
+  vendorHash = "sha256-c0fTUU5zXI0QDo/bAL4v6zjEp0rNvCpQFAGwpgDWDFY=";
 
   # Set target as ./cmd per cli-local
   # https://github.com/argoproj/argo-cd/blob/master/Makefile#L227
diff --git a/pkgs/applications/networking/cluster/arkade/default.nix b/pkgs/applications/networking/cluster/arkade/default.nix
index 2ad7f717252b..04fdbc871511 100644
--- a/pkgs/applications/networking/cluster/arkade/default.nix
+++ b/pkgs/applications/networking/cluster/arkade/default.nix
@@ -7,13 +7,13 @@
 
 buildGoModule rec {
   pname = "arkade";
-  version = "0.11.10";
+  version = "0.11.12";
 
   src = fetchFromGitHub {
     owner = "alexellis";
     repo = "arkade";
     rev = version;
-    hash = "sha256-Uw+/pVhbGYjFTcrh90Gstu5KddlkXKuzL2lbQ7CFLGs=";
+    hash = "sha256-tioWLZ1Bd+gC2FvbhrxFPIkOJb9ycx9sGVmh+a/4hwo=";
   };
 
   CGO_ENABLED = 0;
diff --git a/pkgs/applications/networking/cluster/atlantis/default.nix b/pkgs/applications/networking/cluster/atlantis/default.nix
index 3eee88fa2ad5..799633712128 100644
--- a/pkgs/applications/networking/cluster/atlantis/default.nix
+++ b/pkgs/applications/networking/cluster/atlantis/default.nix
@@ -2,20 +2,20 @@
 
 buildGoModule rec {
   pname = "atlantis";
-  version = "0.27.2";
+  version = "0.27.3";
 
   src = fetchFromGitHub {
     owner = "runatlantis";
     repo = "atlantis";
     rev = "v${version}";
-    hash = "sha256-OAIxBCfSDNauThC4/W//DmkzwwsNGZxdj3gDjSWmoNU=";
+    hash = "sha256-BC4WSyKnDM9RhM+2iU9dBZLbtxDM/UoMmIDTP6DB3no=";
   };
   ldflags = [
     "-X=main.version=${version}"
     "-X=main.date=1970-01-01T00:00:00Z"
   ];
 
-  vendorHash = "sha256-ppg8AFS16Wg/J9vkqhiokUNOY601kI+oFSDI8IDJTI4=";
+  vendorHash = "sha256-6Di8XLX1rOjVnIA+5kQB59aZ3qRmkjciWD0+GD9Lpzw=";
 
   subPackages = [ "." ];
 
diff --git a/pkgs/applications/networking/cluster/atmos/default.nix b/pkgs/applications/networking/cluster/atmos/default.nix
index 9e4d04befbc8..2163adf6d5b2 100644
--- a/pkgs/applications/networking/cluster/atmos/default.nix
+++ b/pkgs/applications/networking/cluster/atmos/default.nix
@@ -2,16 +2,16 @@
 
 buildGoModule rec {
   pname = "atmos";
-  version = "1.70.0";
+  version = "1.72.0";
 
   src = fetchFromGitHub {
     owner = "cloudposse";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-NmgInrjCcMoSjSCotGU38URP7FNMaFs3N2g49Y/fXSw=";
+    sha256 = "sha256-d4TgVSXTqrzgTdpGl1uXIdEvwb0EIgzqiEjOaWYAZgk=";
   };
 
-  vendorHash = "sha256-dJJPq2HcGZ+MqtJ848gsrvzD1rMVrwJQKwq+UpZsFB0=";
+  vendorHash = "sha256-T3FvJfyGseW5vwN/mMCFEjpcpW90MG8QPkmaXJafD4s=";
 
   ldflags = [ "-s" "-w" "-X github.com/cloudposse/atmos/cmd.Version=v${version}" ];
 
diff --git a/pkgs/applications/networking/cluster/cilium/default.nix b/pkgs/applications/networking/cluster/cilium/default.nix
index 34a83ed1c8b3..5353078e1d15 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.16.5";
+  version = "0.16.7";
 
   src = fetchFromGitHub {
     owner = "cilium";
     repo = pname;
     rev = "v${version}";
-    hash = "sha256-XsdvjdhrTin5RWwDjBBpdBM/+1S/p+MMd/2gigOiz2E=";
+    hash = "sha256-+Uxn9yR3D38CuvFeBA62aWLtY4rPrBJoF3tUmgKvKpw=";
   };
 
   vendorHash = null;
diff --git a/pkgs/applications/networking/cluster/civo/default.nix b/pkgs/applications/networking/cluster/civo/default.nix
index 44f87f0e1c9f..b3443453245d 100644
--- a/pkgs/applications/networking/cluster/civo/default.nix
+++ b/pkgs/applications/networking/cluster/civo/default.nix
@@ -2,16 +2,16 @@
 
 buildGoModule rec {
   pname = "civo";
-  version = "1.0.81";
+  version = "1.0.83";
 
   src = fetchFromGitHub {
     owner  = "civo";
     repo   = "cli";
     rev    = "v${version}";
-    sha256 = "sha256-YdrJbT9Ozp1vlvQBYQNjJX6n3vIXYj3dmKhAsBPrvi8=";
+    sha256 = "sha256-jRs8RMdTq5xylcYBN59+JzXlJlTJRp7bJVMvEmvzSnc=";
   };
 
-  vendorHash = "sha256-YNbxV79XQBmd7oTanwLOMdmt2ds4ttX1ttr8vUycVzg=";
+  vendorHash = "sha256-NYNp4KGcVma4ltkq2SJZJOaeKS0j/X2TlUrOnptxiYE=";
 
   nativeBuildInputs = [ installShellFiles ];
 
diff --git a/pkgs/applications/networking/cluster/clusterctl/default.nix b/pkgs/applications/networking/cluster/clusterctl/default.nix
index 2bfa0662dba8..6026cf02905b 100644
--- a/pkgs/applications/networking/cluster/clusterctl/default.nix
+++ b/pkgs/applications/networking/cluster/clusterctl/default.nix
@@ -2,13 +2,13 @@
 
 buildGoModule rec {
   pname = "clusterctl";
-  version = "1.7.1";
+  version = "1.7.2";
 
   src = fetchFromGitHub {
     owner = "kubernetes-sigs";
     repo = "cluster-api";
     rev = "v${version}";
-    hash = "sha256-e+Ut6xoNUY9cJjjJ43P0siEa+G1igllcb8veirk1UX0=";
+    hash = "sha256-ZZkDc5INjUoNc9zcwbOa9WRIkkLr9bm3mohsSe3tKI4=";
   };
 
   vendorHash = "sha256-ALRnccGjPGuAITtuz79Cao95NhvSczAzspSMXytlw+A=";
diff --git a/pkgs/applications/networking/cluster/fluxcd/default.nix b/pkgs/applications/networking/cluster/fluxcd/default.nix
index 3f3b08f39814..75689b47710f 100644
--- a/pkgs/applications/networking/cluster/fluxcd/default.nix
+++ b/pkgs/applications/networking/cluster/fluxcd/default.nix
@@ -7,9 +7,9 @@
 }:
 
 let
-  version = "2.2.3";
-  sha256 = "sha256-1Z9EXqK+xnFGeWjoac1QZwOoMiYRRU1HEAZRaEpUOYs=";
-  manifestsSha256 = "sha256-HSl15rJknWeKqi3kYTHJvQlw5eD77OkFhIn0K+Ovv8I=";
+  version = "2.3.0";
+  sha256 = "sha256-ZQs1rWI31qDo/BgjrmiNnEdR2OL8bUHVz+j5VceEp2k=";
+  manifestsSha256 = "sha256-PdhR+UDquIJWtpSymtT6V7qO5fVJOkFz6RGzAx7xeb4=";
 
   manifests = fetchzip {
     url =
@@ -29,7 +29,7 @@ in buildGoModule rec {
     inherit sha256;
   };
 
-  vendorHash = "sha256-UPX5V3VwpX/eDy9ktqpvYb0JOzKRHH2nIQZzZ0jrYoQ=";
+  vendorHash = "sha256-0YH3pgFrsnh5jIsZpj/sIgfiOCTtIlPltMS5mdGz1eM=";
 
   postUnpack = ''
     cp -r ${manifests} source/cmd/flux/manifests
diff --git a/pkgs/applications/networking/cluster/fn-cli/default.nix b/pkgs/applications/networking/cluster/fn-cli/default.nix
index 94cdd457aff8..a54c38caa8f4 100644
--- a/pkgs/applications/networking/cluster/fn-cli/default.nix
+++ b/pkgs/applications/networking/cluster/fn-cli/default.nix
@@ -2,13 +2,13 @@
 
 buildGoModule rec {
   pname = "fn";
-  version = "0.6.32";
+  version = "0.6.33";
 
   src = fetchFromGitHub {
     owner = "fnproject";
     repo = "cli";
     rev = version;
-    hash = "sha256-mXHDxmjQdfO6uZ1ROcxwtDaPvbv2kFV+qLbejn3Kycs=";
+    hash = "sha256-f8EYiTXS9ByELWWV2EF4jrDamoKRGejKhYVyNscHZvo=";
   };
 
   vendorHash = null;
diff --git a/pkgs/applications/networking/cluster/gatekeeper/default.nix b/pkgs/applications/networking/cluster/gatekeeper/default.nix
index 5558a48d9f8e..5ddb8409d31f 100644
--- a/pkgs/applications/networking/cluster/gatekeeper/default.nix
+++ b/pkgs/applications/networking/cluster/gatekeeper/default.nix
@@ -6,13 +6,13 @@
 
 buildGoModule rec {
   pname = "gatekeeper";
-  version = "3.15.1";
+  version = "3.16.0";
 
   src = fetchFromGitHub {
     owner = "open-policy-agent";
     repo = "gatekeeper";
     rev = "v${version}";
-    hash = "sha256-KPRcY14IeP4WU/cnUG7JWwJcp/LN6O74u417I+qAqXE=";
+    hash = "sha256-IIqucBPuEHymfg7nLmxXMrq1aaB6SFPrczPj4BH8Zyw=";
   };
 
   vendorHash = null;
diff --git a/pkgs/applications/networking/cluster/glooctl/default.nix b/pkgs/applications/networking/cluster/glooctl/default.nix
index 67a7f12f2d8a..4a62d357736b 100644
--- a/pkgs/applications/networking/cluster/glooctl/default.nix
+++ b/pkgs/applications/networking/cluster/glooctl/default.nix
@@ -6,13 +6,13 @@
 
 buildGoModule rec {
   pname = "glooctl";
-  version = "1.16.10";
+  version = "1.16.11";
 
   src = fetchFromGitHub {
     owner = "solo-io";
     repo = "gloo";
     rev = "v${version}";
-    hash = "sha256-GC0/HGPO/sbkyf2bLY0A+pQrPYqMv6BP0zNUHENpQjg=";
+    hash = "sha256-3GTSIZRELj8Pdm02SUKSCk6/Q7Hkuggvq+XjJAH9qU0=";
   };
 
   vendorHash = "sha256-UyzqKpF2WBj25Bm4MtkF6yjl87A61vGsteBNCjJV178=";
diff --git a/pkgs/applications/networking/cluster/helm/default.nix b/pkgs/applications/networking/cluster/helm/default.nix
index 15599846c719..18e91c340b34 100644
--- a/pkgs/applications/networking/cluster/helm/default.nix
+++ b/pkgs/applications/networking/cluster/helm/default.nix
@@ -2,15 +2,15 @@
 
 buildGoModule rec {
   pname = "kubernetes-helm";
-  version = "3.14.4";
+  version = "3.15.0";
 
   src = fetchFromGitHub {
     owner = "helm";
     repo = "helm";
     rev = "v${version}";
-    sha256 = "sha256-Wt5ovKa2CHrD0VSxvReYAwoC4SsuZHAhi/P6Kn1H7So=";
+    sha256 = "sha256-0YBpxXM/+mU0y1lf/h3xFbF5nfbjk6D9qT10IMR9XUY=";
   };
-  vendorHash = "sha256-b25LUyr4B4fF/WF4Q+zzrDo78kuSTEPBklKkA4o+DBo=";
+  vendorHash = "sha256-VPahAeeRz3fk1475dlCofiLVAKXMhpvspENmQmlPyPM=";
 
   subPackages = [ "cmd/helm" ];
   ldflags = [
diff --git a/pkgs/applications/networking/cluster/helm/plugins/helm-unittest.nix b/pkgs/applications/networking/cluster/helm/plugins/helm-unittest.nix
index f768404e08fa..bd93089ee306 100644
--- a/pkgs/applications/networking/cluster/helm/plugins/helm-unittest.nix
+++ b/pkgs/applications/networking/cluster/helm/plugins/helm-unittest.nix
@@ -2,16 +2,16 @@
 
 buildGoModule rec {
   pname = "helm-unittest";
-  version = "0.5.0";
+  version = "0.5.1";
 
   src = fetchFromGitHub {
     owner = pname;
     repo = pname;
     rev = "v${version}";
-    hash = "sha256-DGmvF4U+yqXWm/L96ph+/OrLZ7q+JG4PQQFxC7pH710=";
+    hash = "sha256-YWzjv1/I+LX3AMeQenI36AsNJkZ6IzbMhM/f5/Kxs2M=";
   };
 
-  vendorHash = "sha256-BRFKrrJ9PhwMrfr3ON4/sm+BQ1ufeyP5PtfJQRksrj0=";
+  vendorHash = "sha256-A2izHBh58yPd2XPm4GKVosPtahUtQ35GbyBdr/L13CQ=";
 
   # NOTE: Remove the install and upgrade hooks.
   postPatch = ''
diff --git a/pkgs/applications/networking/cluster/hubble/default.nix b/pkgs/applications/networking/cluster/hubble/default.nix
index 76b53453dac9..10c10ec12ddb 100644
--- a/pkgs/applications/networking/cluster/hubble/default.nix
+++ b/pkgs/applications/networking/cluster/hubble/default.nix
@@ -2,13 +2,13 @@
 
 buildGoModule rec {
   pname = "hubble";
-  version = "0.13.3";
+  version = "0.13.4";
 
   src = fetchFromGitHub {
     owner = "cilium";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-tHkLUoccOUcUjODecy1QyeuDb/aXv67sK8JHJ1IspC8=";
+    sha256 = "sha256-YordxRIZtlYQprAYnH9Qn5ha6y7D52sjEOaRTcd0Z8g=";
   };
 
   vendorHash = null;
diff --git a/pkgs/applications/networking/cluster/istioctl/default.nix b/pkgs/applications/networking/cluster/istioctl/default.nix
index cd27e74a7ca3..8c80896d6251 100644
--- a/pkgs/applications/networking/cluster/istioctl/default.nix
+++ b/pkgs/applications/networking/cluster/istioctl/default.nix
@@ -2,15 +2,15 @@
 
 buildGoModule rec {
   pname = "istioctl";
-  version = "1.21.2";
+  version = "1.22.0";
 
   src = fetchFromGitHub {
     owner = "istio";
     repo = "istio";
     rev = version;
-    hash = "sha256-U0SCjozy968pcXMGyUgM47VGYYNwPq8wOzTnKp49ZY4=";
+    hash = "sha256-xiIuCwzERvy7HFx9CZHen1tz1nwsTMryq5hB0om2dyo=";
   };
-  vendorHash = "sha256-23t1xJPRip0ojXmUl1qlk6QJsYHT+9EAS080m6c0d6U=";
+  vendorHash = "sha256-de9cPm2MuflsOhFZfZmvZpLYiwt3UBgW+MO1Z2QB4F4=";
 
   nativeBuildInputs = [ installShellFiles ];
 
diff --git a/pkgs/applications/networking/cluster/k0sctl/default.nix b/pkgs/applications/networking/cluster/k0sctl/default.nix
index 674adcf585d6..ff8957db2b2c 100644
--- a/pkgs/applications/networking/cluster/k0sctl/default.nix
+++ b/pkgs/applications/networking/cluster/k0sctl/default.nix
@@ -2,20 +2,22 @@
 , buildGoModule
 , fetchFromGitHub
 , installShellFiles
+, testers
+, k0sctl
 }:
 
 buildGoModule rec {
   pname = "k0sctl";
-  version = "0.17.5";
+  version = "0.17.8";
 
   src = fetchFromGitHub {
     owner = "k0sproject";
     repo = pname;
     rev = "v${version}";
-    hash = "sha256-NHfS1iJtpt0t2iIqXBETiD4rpA2XzA8eOg5mP4N8El4=";
+    hash = "sha256-QHTVNrPglNDT9CUQWwc6oD7ttwEUBq8WIX49DiAXf8s=";
   };
 
-  vendorHash = "sha256-MPTdOcNoveBnHMJ2YHqHuvOHHe6IdisZLc05qViA1YQ=";
+  vendorHash = "sha256-6Kj1kHKXbbPMr9thkDTmGYbZvCSW7CvSzASpk6agEpI=";
 
   ldflags = [
     "-s"
@@ -34,6 +36,13 @@ buildGoModule rec {
     done
   '';
 
+  passthru.tests.version = testers.testVersion {
+    package = k0sctl;
+    command = "k0sctl version";
+    # See https://github.com/carlmjohnson/versioninfo/discussions/12
+    version = "version: (devel)\ncommit: v${version}\n";
+  };
+
   meta = with lib; {
     description = "A bootstrapping and management tool for k0s clusters.";
     homepage = "https://k0sproject.io/";
diff --git a/pkgs/applications/networking/cluster/k3s/1_26/chart-versions.nix b/pkgs/applications/networking/cluster/k3s/1_26/chart-versions.nix
index 1acca4d0e101..a0341b7cbdec 100644
--- a/pkgs/applications/networking/cluster/k3s/1_26/chart-versions.nix
+++ b/pkgs/applications/networking/cluster/k3s/1_26/chart-versions.nix
@@ -1,10 +1,10 @@
 {
-    traefik-crd  = {
-        url = "https://k3s.io/k3s-charts/assets/traefik-crd/traefik-crd-25.0.2+up25.0.0.tgz";
-        sha256 = "0jygzsn5pxzf7423x5iqfffgx5xvm7c7hfck46y7vpv1fdkiipcq";
-    };
-    traefik = {
-        url = "https://k3s.io/k3s-charts/assets/traefik/traefik-25.0.2+up25.0.0.tgz";
-        sha256 = "1g9n19lnqdkmbbr3rnbwc854awha0kqqfwyxanyx1lg5ww8ldp89";
-    };
+  traefik-crd = {
+    url = "https://k3s.io/k3s-charts/assets/traefik-crd/traefik-crd-25.0.2+up25.0.0.tgz";
+    sha256 = "0jygzsn5pxzf7423x5iqfffgx5xvm7c7hfck46y7vpv1fdkiipcq";
+  };
+  traefik = {
+    url = "https://k3s.io/k3s-charts/assets/traefik/traefik-25.0.2+up25.0.0.tgz";
+    sha256 = "1g9n19lnqdkmbbr3rnbwc854awha0kqqfwyxanyx1lg5ww8ldp89";
+  };
 }
diff --git a/pkgs/applications/networking/cluster/k3s/1_27/chart-versions.nix b/pkgs/applications/networking/cluster/k3s/1_27/chart-versions.nix
index 1acca4d0e101..aaaa3d4c2970 100644
--- a/pkgs/applications/networking/cluster/k3s/1_27/chart-versions.nix
+++ b/pkgs/applications/networking/cluster/k3s/1_27/chart-versions.nix
@@ -1,10 +1,10 @@
 {
-    traefik-crd  = {
-        url = "https://k3s.io/k3s-charts/assets/traefik-crd/traefik-crd-25.0.2+up25.0.0.tgz";
-        sha256 = "0jygzsn5pxzf7423x5iqfffgx5xvm7c7hfck46y7vpv1fdkiipcq";
-    };
-    traefik = {
-        url = "https://k3s.io/k3s-charts/assets/traefik/traefik-25.0.2+up25.0.0.tgz";
-        sha256 = "1g9n19lnqdkmbbr3rnbwc854awha0kqqfwyxanyx1lg5ww8ldp89";
-    };
+  traefik-crd = {
+    url = "https://k3s.io/k3s-charts/assets/traefik-crd/traefik-crd-25.0.3+up25.0.0.tgz";
+    sha256 = "1z693i4kd3jyf26ccnb0sxjyxadipl6k13n7jyg5v4y93fv1rpdw";
+  };
+  traefik = {
+    url = "https://k3s.io/k3s-charts/assets/traefik/traefik-25.0.3+up25.0.0.tgz";
+    sha256 = "1a24qlp7c6iri72ka1i37l1lzn13xibrd26dy295z2wzr55gg7if";
+  };
 }
diff --git a/pkgs/applications/networking/cluster/k3s/1_27/versions.nix b/pkgs/applications/networking/cluster/k3s/1_27/versions.nix
index 928337553966..508ef6c4139d 100644
--- a/pkgs/applications/networking/cluster/k3s/1_27/versions.nix
+++ b/pkgs/applications/networking/cluster/k3s/1_27/versions.nix
@@ -1,14 +1,14 @@
 {
-  k3sVersion = "1.27.12+k3s1";
-  k3sCommit = "78ad57567c9eb1fd1831986f5fd7b4024add1767";
-  k3sRepoSha256 = "1j6xb3af4ypqq5m6a8x2yc2515zvlgqzfsfindjm9cbmq5iisphq";
-  k3sVendorHash = "sha256-65cmpRwD9C+fcbBSv1YpeukO7bfGngsLv/rk6sM59gU=";
+  k3sVersion = "1.27.13+k3s1";
+  k3sCommit = "b23f142da8589854cc7ee45da08d96b5ad1ee1ff";
+  k3sRepoSha256 = "052998644il0qra7cdpvmy007gw16k2rvyg418m1j02pm9a3zn10";
+  k3sVendorHash = "sha256-rQZZnleRekkU1+I38LmFnnatZPuS+K1jbBwA+Dmc0jo=";
   chartVersions = import ./chart-versions.nix;
   k3sRootVersion = "0.12.2";
   k3sRootSha256 = "1gjynvr350qni5mskgm7pcc7alss4gms4jmkiv453vs8mmma9c9k";
   k3sCNIVersion = "1.4.0-k3s2";
   k3sCNISha256 = "17dg6jgjx18nrlyfmkv14dhzxsljz4774zgwz5dchxcf38bvarqa";
-  containerdVersion = "1.7.11-k3s2.27";
-  containerdSha256 = "0xjxc5dgh3drk2glvcabd885damjffp9r4cs0cm1zgnrrbhlipra";
+  containerdVersion = "1.7.15-k3s1.27";
+  containerdSha256 = "0bjxw174prhq8izmgrmpyljfxzrj0lh5d0w04g3lyn0rp3kwxqsl";
   criCtlVersion = "1.26.0-rc.0-k3s1";
 }
diff --git a/pkgs/applications/networking/cluster/k3s/1_28/chart-versions.nix b/pkgs/applications/networking/cluster/k3s/1_28/chart-versions.nix
index 1acca4d0e101..aaaa3d4c2970 100644
--- a/pkgs/applications/networking/cluster/k3s/1_28/chart-versions.nix
+++ b/pkgs/applications/networking/cluster/k3s/1_28/chart-versions.nix
@@ -1,10 +1,10 @@
 {
-    traefik-crd  = {
-        url = "https://k3s.io/k3s-charts/assets/traefik-crd/traefik-crd-25.0.2+up25.0.0.tgz";
-        sha256 = "0jygzsn5pxzf7423x5iqfffgx5xvm7c7hfck46y7vpv1fdkiipcq";
-    };
-    traefik = {
-        url = "https://k3s.io/k3s-charts/assets/traefik/traefik-25.0.2+up25.0.0.tgz";
-        sha256 = "1g9n19lnqdkmbbr3rnbwc854awha0kqqfwyxanyx1lg5ww8ldp89";
-    };
+  traefik-crd = {
+    url = "https://k3s.io/k3s-charts/assets/traefik-crd/traefik-crd-25.0.3+up25.0.0.tgz";
+    sha256 = "1z693i4kd3jyf26ccnb0sxjyxadipl6k13n7jyg5v4y93fv1rpdw";
+  };
+  traefik = {
+    url = "https://k3s.io/k3s-charts/assets/traefik/traefik-25.0.3+up25.0.0.tgz";
+    sha256 = "1a24qlp7c6iri72ka1i37l1lzn13xibrd26dy295z2wzr55gg7if";
+  };
 }
diff --git a/pkgs/applications/networking/cluster/k3s/1_28/versions.nix b/pkgs/applications/networking/cluster/k3s/1_28/versions.nix
index b8e68bb87740..67991dfd6fc7 100644
--- a/pkgs/applications/networking/cluster/k3s/1_28/versions.nix
+++ b/pkgs/applications/networking/cluster/k3s/1_28/versions.nix
@@ -1,14 +1,14 @@
 {
-  k3sVersion = "1.28.8+k3s1";
-  k3sCommit = "653dd61aaa2d0ef8bd83ac4dbc6d150dde792efc";
-  k3sRepoSha256 = "0pf8xw1m56m2s8i99vxj4i2l7fz7388kiynwzfrck43jb7v7kbbw";
-  k3sVendorHash = "sha256-wglwRW2RO9QJI6CRLgkVg5Upt6R0M3gX76zy0kT02ec=";
+  k3sVersion = "1.28.9+k3s1";
+  k3sCommit = "289a1a3edbc0f6ee5a7f91bf96aa1ed1b743bd1f";
+  k3sRepoSha256 = "0kms6r10k6v037r5lxxrp90bnynrgyrn61kqnzy2f5avny4blikh";
+  k3sVendorHash = "sha256-iUp2Maua3BnrC4Jq2ij0uOW5gYYZfz6e+TEdDtN0PT8=";
   chartVersions = import ./chart-versions.nix;
   k3sRootVersion = "0.12.2";
   k3sRootSha256 = "1gjynvr350qni5mskgm7pcc7alss4gms4jmkiv453vs8mmma9c9k";
   k3sCNIVersion = "1.4.0-k3s2";
   k3sCNISha256 = "17dg6jgjx18nrlyfmkv14dhzxsljz4774zgwz5dchxcf38bvarqa";
-  containerdVersion = "1.7.11-k3s2";
-  containerdSha256 = "0279sil02wz7310xhrgmdbc0r2qibj9lafy0i9k24jdrh74icmib";
+  containerdVersion = "1.7.15-k3s1";
+  containerdSha256 = "18hlj4ixjk7wvamfd66xyc0cax2hs9s7yjvlx52afxdc73194y0f";
   criCtlVersion = "1.26.0-rc.0-k3s1";
 }
diff --git a/pkgs/applications/networking/cluster/k3s/1_29/chart-versions.nix b/pkgs/applications/networking/cluster/k3s/1_29/chart-versions.nix
index 1acca4d0e101..aaaa3d4c2970 100644
--- a/pkgs/applications/networking/cluster/k3s/1_29/chart-versions.nix
+++ b/pkgs/applications/networking/cluster/k3s/1_29/chart-versions.nix
@@ -1,10 +1,10 @@
 {
-    traefik-crd  = {
-        url = "https://k3s.io/k3s-charts/assets/traefik-crd/traefik-crd-25.0.2+up25.0.0.tgz";
-        sha256 = "0jygzsn5pxzf7423x5iqfffgx5xvm7c7hfck46y7vpv1fdkiipcq";
-    };
-    traefik = {
-        url = "https://k3s.io/k3s-charts/assets/traefik/traefik-25.0.2+up25.0.0.tgz";
-        sha256 = "1g9n19lnqdkmbbr3rnbwc854awha0kqqfwyxanyx1lg5ww8ldp89";
-    };
+  traefik-crd = {
+    url = "https://k3s.io/k3s-charts/assets/traefik-crd/traefik-crd-25.0.3+up25.0.0.tgz";
+    sha256 = "1z693i4kd3jyf26ccnb0sxjyxadipl6k13n7jyg5v4y93fv1rpdw";
+  };
+  traefik = {
+    url = "https://k3s.io/k3s-charts/assets/traefik/traefik-25.0.3+up25.0.0.tgz";
+    sha256 = "1a24qlp7c6iri72ka1i37l1lzn13xibrd26dy295z2wzr55gg7if";
+  };
 }
diff --git a/pkgs/applications/networking/cluster/k3s/1_29/versions.nix b/pkgs/applications/networking/cluster/k3s/1_29/versions.nix
index cf1f57e0fe60..31dd51fa9ca6 100644
--- a/pkgs/applications/networking/cluster/k3s/1_29/versions.nix
+++ b/pkgs/applications/networking/cluster/k3s/1_29/versions.nix
@@ -1,14 +1,14 @@
 {
-  k3sVersion = "1.29.3+k3s1";
-  k3sCommit = "8aecc26b0f167d5e9e4e9fbcfd5a471488bf5957";
-  k3sRepoSha256 = "12285mhwi6cifsw3gjxxmd1g2i5f7vkdgzdc6a78rkvnx7z1j3p3";
-  k3sVendorHash = "sha256-pID2h/rvvKyfHWoglYPbbliAby+9R2zoh7Ajd36qjVQ=";
+  k3sVersion = "1.29.4+k3s1";
+  k3sCommit = "94e29e2ef5d79904f730e2024c8d1682b901b2d5";
+  k3sRepoSha256 = "0kkhd2fnlmjanzvwgdclmbg6azw3r1a2lj5207716pavxmb9ld7y";
+  k3sVendorHash = "sha256-wOX+ktGPFYUKLZBK/bQhWWG+SnRCkNYnk3Tz8wpMo5A=";
   chartVersions = import ./chart-versions.nix;
-  k3sRootVersion = "0.12.2";
-  k3sRootSha256 = "1gjynvr350qni5mskgm7pcc7alss4gms4jmkiv453vs8mmma9c9k";
+  k3sRootVersion = "0.13.0";
+  k3sRootSha256 = "1jq5f0lm08abx5ikarf92z56fvx4kjpy2nmzaazblb34lajw87vj";
   k3sCNIVersion = "1.4.0-k3s2";
   k3sCNISha256 = "17dg6jgjx18nrlyfmkv14dhzxsljz4774zgwz5dchxcf38bvarqa";
-  containerdVersion = "1.7.11-k3s2";
-  containerdSha256 = "0279sil02wz7310xhrgmdbc0r2qibj9lafy0i9k24jdrh74icmib";
+  containerdVersion = "1.7.15-k3s1";
+  containerdSha256 = "18hlj4ixjk7wvamfd66xyc0cax2hs9s7yjvlx52afxdc73194y0f";
   criCtlVersion = "1.29.0-k3s1";
 }
diff --git a/pkgs/applications/networking/cluster/k3s/1_30/chart-versions.nix b/pkgs/applications/networking/cluster/k3s/1_30/chart-versions.nix
new file mode 100644
index 000000000000..aaaa3d4c2970
--- /dev/null
+++ b/pkgs/applications/networking/cluster/k3s/1_30/chart-versions.nix
@@ -0,0 +1,10 @@
+{
+  traefik-crd = {
+    url = "https://k3s.io/k3s-charts/assets/traefik-crd/traefik-crd-25.0.3+up25.0.0.tgz";
+    sha256 = "1z693i4kd3jyf26ccnb0sxjyxadipl6k13n7jyg5v4y93fv1rpdw";
+  };
+  traefik = {
+    url = "https://k3s.io/k3s-charts/assets/traefik/traefik-25.0.3+up25.0.0.tgz";
+    sha256 = "1a24qlp7c6iri72ka1i37l1lzn13xibrd26dy295z2wzr55gg7if";
+  };
+}
diff --git a/pkgs/applications/networking/cluster/k3s/1_30/versions.nix b/pkgs/applications/networking/cluster/k3s/1_30/versions.nix
new file mode 100644
index 000000000000..bc7c2d99c62c
--- /dev/null
+++ b/pkgs/applications/networking/cluster/k3s/1_30/versions.nix
@@ -0,0 +1,14 @@
+{
+  k3sVersion = "1.30.0+k3s1";
+  k3sCommit = "14549535f13c63fc239ba055d36d590e68b01503";
+  k3sRepoSha256 = "1dph6clzzanlx7dbdzpamnw7gpw98j850my28lcb3zdzhvhsc74b";
+  k3sVendorHash = "sha256-YBWiIf8F71ibR7sCiYtmsAcY1MsvkhTD/K45tOHQC5w=";
+  chartVersions = import ./chart-versions.nix;
+  k3sRootVersion = "0.13.0";
+  k3sRootSha256 = "1jq5f0lm08abx5ikarf92z56fvx4kjpy2nmzaazblb34lajw87vj";
+  k3sCNIVersion = "1.4.0-k3s2";
+  k3sCNISha256 = "17dg6jgjx18nrlyfmkv14dhzxsljz4774zgwz5dchxcf38bvarqa";
+  containerdVersion = "1.7.15-k3s1";
+  containerdSha256 = "18hlj4ixjk7wvamfd66xyc0cax2hs9s7yjvlx52afxdc73194y0f";
+  criCtlVersion = "1.29.0-k3s1";
+}
diff --git a/pkgs/applications/networking/cluster/k3s/builder.nix b/pkgs/applications/networking/cluster/k3s/builder.nix
index b5f017b85b05..247ab0f339da 100644
--- a/pkgs/applications/networking/cluster/k3s/builder.nix
+++ b/pkgs/applications/networking/cluster/k3s/builder.nix
@@ -29,33 +29,42 @@ lib:
 # currently.
 # It is likely we will have to split out additional builders for additional
 # versions in the future, or customize this one further.
-{ lib
-, fetchpatch
-, makeWrapper
-, socat
-, iptables
-, iproute2
-, ipset
-, bridge-utils
-, btrfs-progs
-, conntrack-tools
-, buildGoModule
-, runc
-, rsync
-, kmod
-, libseccomp
-, pkg-config
-, ethtool
-, util-linux
-, fetchFromGitHub
-, fetchurl
-, fetchzip
-, fetchgit
-, zstd
-, yq-go
-, sqlite
-, nixosTests
-, pkgsBuildBuild
+{
+  lib,
+  makeWrapper,
+  socat,
+  iptables,
+  iproute2,
+  ipset,
+  bridge-utils,
+  btrfs-progs,
+  conntrack-tools,
+  buildGoModule,
+  runc,
+  rsync,
+  kmod,
+  libseccomp,
+  pkg-config,
+  ethtool,
+  util-linux,
+  fetchFromGitHub,
+  fetchurl,
+  fetchzip,
+  fetchgit,
+  zstd,
+  yq-go,
+  sqlite,
+  nixosTests,
+  pkgsBuildBuild,
+  go,
+  runCommand,
+  bash,
+  procps,
+  coreutils,
+  gnugrep,
+  findutils,
+  gnused,
+  systemd,
 }:
 
 # k3s is a kinda weird derivation. One of the main points of k3s is the
@@ -83,7 +92,13 @@ let
     description = "A lightweight Kubernetes distribution";
     license = licenses.asl20;
     homepage = "https://k3s.io";
-    maintainers = with maintainers; [ euank mic92 superherointj yajo ];
+    maintainers = with maintainers; [
+      euank
+      mic92
+      superherointj
+      wrmilling
+      yajo
+    ];
     platforms = platforms.linux;
 
     # resolves collisions with other installations of kubectl, crictl, ctr
@@ -93,8 +108,9 @@ let
 
   # https://github.com/k3s-io/k3s/blob/5fb370e53e0014dc96183b8ecb2c25a61e891e76/scripts/build#L19-L40
   versionldflags = [
-    "-X github.com/rancher/k3s/pkg/version.Version=v${k3sVersion}"
-    "-X github.com/rancher/k3s/pkg/version.GitCommit=${lib.substring 0 8 k3sCommit}"
+    "-X github.com/k3s-io/k3s/pkg/version.Version=v${k3sVersion}"
+    "-X github.com/k3s-io/k3s/pkg/version.GitCommit=${lib.substring 0 8 k3sCommit}"
+    "-X github.com/k3s-io/k3s/pkg/version.UpstreamGolang=go${go.version}"
     "-X k8s.io/client-go/pkg/version.gitVersion=v${k3sVersion}"
     "-X k8s.io/client-go/pkg/version.gitCommit=${k3sCommit}"
     "-X k8s.io/client-go/pkg/version.gitTreeState=clean"
@@ -156,6 +172,42 @@ let
     rev = "v${k3sVersion}";
     sha256 = k3sRepoSha256;
   };
+
+  # Modify the k3s installer script so that we can let it install only
+  # killall.sh
+  k3sKillallSh = runCommand "k3s-killall.sh" { } ''
+    # Copy the upstream k3s install script except for the last lines that
+    # actually run the install process
+    sed --quiet '/# --- run the install process --/q;p' ${k3sRepo}/install.sh > install.sh
+
+    # Let killall expect "containerd-shim" in the Nix store
+    to_replace="k3s/data/\[\^/\]\*/bin/containerd-shim"
+    replacement="/nix/store/.*k3s-containerd.*/bin/containerd-shim"
+    changes=$(sed -i "s|$to_replace|$replacement| w /dev/stdout" install.sh)
+    if [ -z "$changes" ]; then
+      echo "failed to replace \"$to_replace\" in k3s installer script (install.sh)"
+      exit 1
+    fi
+
+    remove_matching_line() {
+      line_to_delete=$(grep -n "$1" install.sh | cut -d : -f 1 || true)
+      if [ -z $line_to_delete ]; then
+        echo "failed to find expression \"$1\" in k3s installer script (install.sh)"
+        exit 1
+      fi
+      sed -i "''${line_to_delete}d" install.sh
+    }
+
+    # Don't change mode and owner of killall
+    remove_matching_line "chmod.*KILLALL_K3S_SH"
+    remove_matching_line "chown.*KILLALL_K3S_SH"
+
+    # Execute only the "create_killall" function of the installer script
+    sed -i '$acreate_killall' install.sh
+
+    KILLALL_K3S_SH=$out bash install.sh
+  '';
+
   # Stage 1 of the k3s build:
   # Let's talk about how k3s is structured.
   # One of the ideas of k3s is that there's the single "k3s" binary which can
@@ -185,22 +237,20 @@ let
     src = k3sRepo;
     vendorHash = k3sVendorHash;
 
-    patches =
-      # Disable: Add runtime checking of golang version
-      (fetchpatch {
-        # https://github.com/k3s-io/k3s/pull/9054
-        url = "https://github.com/k3s-io/k3s/commit/b297996b9252b02e56e9425f55f6becbf6bb7832.patch";
-        hash = "sha256-xBOY2jnLhT9dtVKtq26V9QUnuX1q6E/9UcO9IaU719U=";
-        revert = true;
-      });
-
     nativeBuildInputs = [ pkg-config ];
-    buildInputs = [ libseccomp sqlite.dev ];
+    buildInputs = [
+      libseccomp
+      sqlite.dev
+    ];
 
     subPackages = [ "cmd/server" ];
     ldflags = versionldflags;
 
-    tags = [ "ctrd" "libsqlite3" "linux" ];
+    tags = [
+      "ctrd"
+      "libsqlite3"
+      "linux"
+    ];
 
     # create the multicall symlinks for k3s
     postInstall = ''
@@ -246,7 +296,11 @@ buildGoModule rec {
   pname = "k3s";
   version = k3sVersion;
 
-  tags = [ "libsqlite3" "linux" "ctrd" ];
+  tags = [
+    "libsqlite3"
+    "linux"
+    "ctrd"
+  ];
   src = k3sRepo;
   vendorHash = k3sVendorHash;
 
@@ -286,6 +340,16 @@ buildGoModule rec {
     runc
   ];
 
+  k3sKillallDeps = [
+    bash
+    systemd
+    procps
+    coreutils
+    gnugrep
+    findutils
+    gnused
+  ];
+
   buildInputs = k3sRuntimeDeps;
 
   nativeBuildInputs = [
@@ -342,6 +406,9 @@ buildGoModule rec {
     ln -s $out/bin/k3s $out/bin/kubectl
     ln -s $out/bin/k3s $out/bin/crictl
     ln -s $out/bin/k3s $out/bin/ctr
+    install -m 0755 ${k3sKillallSh} -D $out/bin/k3s-killall.sh
+    wrapProgram $out/bin/k3s-killall.sh \
+      --prefix PATH : ${lib.makeBinPath (k3sRuntimeDeps ++ k3sKillallDeps)}
   '';
 
   doInstallCheck = true;
@@ -351,15 +418,17 @@ buildGoModule rec {
 
   passthru.updateScript = updateScript;
 
-  passthru.mkTests = version:
-    let k3s_version = "k3s_" + lib.replaceStrings ["."] ["_"] (lib.versions.majorMinor version);
-    in {
+  passthru.mkTests =
+    version:
+    let
+      k3s_version = "k3s_" + lib.replaceStrings [ "." ] [ "_" ] (lib.versions.majorMinor version);
+    in
+    {
       etcd = nixosTests.k3s.etcd.${k3s_version};
       single-node = nixosTests.k3s.single-node.${k3s_version};
       multi-node = nixosTests.k3s.multi-node.${k3s_version};
     };
   passthru.tests = passthru.mkTests k3sVersion;
 
-
   meta = baseMeta;
 }
diff --git a/pkgs/applications/networking/cluster/k3s/default.nix b/pkgs/applications/networking/cluster/k3s/default.nix
index 934f5a3691cd..58984502d98f 100644
--- a/pkgs/applications/networking/cluster/k3s/default.nix
+++ b/pkgs/applications/networking/cluster/k3s/default.nix
@@ -12,22 +12,57 @@ let
   extraArgs = builtins.removeAttrs args [ "callPackage" ];
 in
 {
-  k3s_1_26 = common ((import ./1_26/versions.nix) // {
-    updateScript = [ ./update-script.sh "26" ];
-  }) extraArgs;
+  k3s_1_26 = common (
+    (import ./1_26/versions.nix)
+    // {
+      updateScript = [
+        ./update-script.sh
+        "26"
+      ];
+    }
+  ) extraArgs;
 
   # 1_27 can be built with the same builder as 1_26
-  k3s_1_27 = common ((import ./1_27/versions.nix) // {
-    updateScript = [ ./update-script.sh "27" ];
-  }) extraArgs;
+  k3s_1_27 = common (
+    (import ./1_27/versions.nix)
+    // {
+      updateScript = [
+        ./update-script.sh
+        "27"
+      ];
+    }
+  ) extraArgs;
 
   # 1_28 can be built with the same builder as 1_26
-  k3s_1_28 = common ((import ./1_28/versions.nix) // {
-    updateScript = [ ./update-script.sh "28" ];
-  }) extraArgs;
+  k3s_1_28 = common (
+    (import ./1_28/versions.nix)
+    // {
+      updateScript = [
+        ./update-script.sh
+        "28"
+      ];
+    }
+  ) extraArgs;
 
   # 1_29 can be built with the same builder as 1_26
-  k3s_1_29 = common ((import ./1_29/versions.nix) // {
-    updateScript = [ ./update-script.sh "29" ];
-  }) extraArgs;
+  k3s_1_29 = common (
+    (import ./1_29/versions.nix)
+    // {
+      updateScript = [
+        ./update-script.sh
+        "29"
+      ];
+    }
+  ) extraArgs;
+
+  # 1_30 can be built with the same builder as 1_26
+  k3s_1_30 = common (
+    (import ./1_30/versions.nix)
+    // {
+      updateScript = [
+        ./update-script.sh
+        "30"
+      ];
+    }
+  ) extraArgs;
 }
diff --git a/pkgs/applications/networking/cluster/k3s/update-script.sh b/pkgs/applications/networking/cluster/k3s/update-script.sh
index 9f534f4d179a..ca7d21bff478 100755
--- a/pkgs/applications/networking/cluster/k3s/update-script.sh
+++ b/pkgs/applications/networking/cluster/k3s/update-script.sh
@@ -57,14 +57,14 @@ CHARTS_URL=https://k3s.io/k3s-charts/assets
 rm -f chart-versions.nix.update
 cat > chart-versions.nix.update <<EOF
 {
-    traefik-crd  = {
-        url = "${CHARTS_URL}/traefik-crd/${CHART_FILES[0]}";
-        sha256 = "$(nix-prefetch-url --quiet "${CHARTS_URL}/traefik-crd/${CHART_FILES[0]}")";
-    };
-    traefik = {
-        url = "${CHARTS_URL}/traefik/${CHART_FILES[1]}";
-        sha256 = "$(nix-prefetch-url --quiet "${CHARTS_URL}/traefik/${CHART_FILES[1]}")";
-    };
+  traefik-crd = {
+    url = "${CHARTS_URL}/traefik-crd/${CHART_FILES[0]}";
+    sha256 = "$(nix-prefetch-url --quiet "${CHARTS_URL}/traefik-crd/${CHART_FILES[0]}")";
+  };
+  traefik = {
+    url = "${CHARTS_URL}/traefik/${CHART_FILES[1]}";
+    sha256 = "$(nix-prefetch-url --quiet "${CHARTS_URL}/traefik/${CHART_FILES[1]}")";
+  };
 }
 EOF
 mv chart-versions.nix.update chart-versions.nix
diff --git a/pkgs/applications/networking/cluster/k8sgpt/default.nix b/pkgs/applications/networking/cluster/k8sgpt/default.nix
index 5f358587c4a4..46fe219868ef 100644
--- a/pkgs/applications/networking/cluster/k8sgpt/default.nix
+++ b/pkgs/applications/networking/cluster/k8sgpt/default.nix
@@ -2,16 +2,16 @@
 
 buildGoModule rec {
   pname = "k8sgpt";
-  version = "0.3.29";
+  version = "0.3.30";
 
   src = fetchFromGitHub {
     owner = "k8sgpt-ai";
     repo = "k8sgpt";
     rev = "v${version}";
-    hash = "sha256-SYMgImnNqkP0A8EzR2btpVPb37G4Oxyb+Am//lXxTxU=";
+    hash = "sha256-iseyvGo9fitt8bAlbU3wF7bBLz66fijb8h35aank+0k=";
   };
 
-  vendorHash = "sha256-NOXySV9sQl4Q1eDbcGMk0msMSosjyxYyJfhu7hd/4gw=";
+  vendorHash = "sha256-YpCn7hZkMj3/dIC/ZMslTjXcumCH3LH/A7pjfJ0pUd4=";
 
   CGO_ENABLED = 0;
 
@@ -22,12 +22,12 @@ buildGoModule rec {
     "-X main.date=1970-01-01-00:00:01"
   ];
 
-  meta = with lib; {
+  meta = {
     description = "Giving Kubernetes Superpowers to everyone";
     mainProgram = "k8sgpt";
     homepage = "https://k8sgpt.ai";
     changelog = "https://github.com/k8sgpt-ai/k8sgpt/releases/tag/v${version}";
-    license = licenses.asl20;
-    maintainers = with maintainers; [ developer-guy kranurag7 ];
+    license = lib.licenses.asl20;
+    maintainers = with lib.maintainers; [ developer-guy kranurag7 ];
   };
 }
diff --git a/pkgs/applications/networking/cluster/kaniko/default.nix b/pkgs/applications/networking/cluster/kaniko/default.nix
index 4bf3357f31f8..63fa87034e82 100644
--- a/pkgs/applications/networking/cluster/kaniko/default.nix
+++ b/pkgs/applications/networking/cluster/kaniko/default.nix
@@ -9,13 +9,13 @@
 
 buildGoModule rec {
   pname = "kaniko";
-  version = "1.22.0";
+  version = "1.23.0";
 
   src = fetchFromGitHub {
     owner = "GoogleContainerTools";
     repo = "kaniko";
     rev = "v${version}";
-    hash = "sha256-EL54lr5i6F4F9sdjQJZ3X+mmj4tWXVX2db8CkRe8WzI=";
+    hash = "sha256-HHnPO2ItQKtodTxdZzxVU9GS45cd6fnlY8PLTTfqCVg=";
   };
 
   vendorHash = null;
diff --git a/pkgs/applications/networking/cluster/krane/Gemfile.lock b/pkgs/applications/networking/cluster/krane/Gemfile.lock
index f458355768a0..ef009399785a 100644
--- a/pkgs/applications/networking/cluster/krane/Gemfile.lock
+++ b/pkgs/applications/networking/cluster/krane/Gemfile.lock
@@ -14,7 +14,7 @@ GEM
     addressable (2.8.6)
       public_suffix (>= 2.0.2, < 6.0)
     base64 (0.2.0)
-    bigdecimal (3.1.7)
+    bigdecimal (3.1.8)
     colorize (0.8.1)
     concurrent-ruby (1.2.3)
     connection_pool (2.4.1)
@@ -48,13 +48,13 @@ GEM
     http-cookie (1.0.5)
       domain_name (~> 0.5)
     http-form_data (2.3.0)
-    i18n (1.14.4)
+    i18n (1.14.5)
       concurrent-ruby (~> 1.0)
     jsonpath (1.1.5)
       multi_json
     jwt (2.8.1)
       base64
-    krane (3.5.2)
+    krane (3.5.3)
       activesupport (>= 5.0)
       colorize (~> 0.8)
       concurrent-ruby (~> 1.1)
@@ -75,7 +75,7 @@ GEM
       rake (~> 13.0)
     mime-types (3.5.2)
       mime-types-data (~> 3.2015)
-    mime-types-data (3.2024.0305)
+    mime-types-data (3.2024.0507)
     minitest (5.22.3)
     multi_json (1.15.0)
     mutex_m (0.2.0)
@@ -109,4 +109,4 @@ DEPENDENCIES
   krane
 
 BUNDLED WITH
-   2.5.7
+   2.5.9
diff --git a/pkgs/applications/networking/cluster/krane/gemset.nix b/pkgs/applications/networking/cluster/krane/gemset.nix
index 3fc00e049ce4..5b296b320c4e 100644
--- a/pkgs/applications/networking/cluster/krane/gemset.nix
+++ b/pkgs/applications/networking/cluster/krane/gemset.nix
@@ -36,10 +36,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0cq1c29zbkcxgdihqisirhcw76xc768z2zpd5vbccpq0l1lv76g7";
+      sha256 = "1gi7zqgmqwi5lizggs1jhc3zlwaqayy9rx2ah80sxy24bbnng558";
       type = "gem";
     };
-    version = "3.1.7";
+    version = "3.1.8";
   };
   colorize = {
     groups = ["default"];
@@ -214,10 +214,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0lbm33fpb3w06wd2231sg58dwlwgjsvym93m548ajvl6s3mfvpn7";
+      sha256 = "1ffix518y7976qih9k1lgnc17i3v6yrlh0a3mckpxdb4wc2vrp16";
       type = "gem";
     };
-    version = "1.14.4";
+    version = "1.14.5";
   };
   jsonpath = {
     dependencies = ["multi_json"];
@@ -247,10 +247,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1s2xc5igk3yg3jpl3abakvrsf4xl6hljhgyddjsrp2g05sksa9x6";
+      sha256 = "11jj5fpfsb1sfwgc356xv1vxl8yq65wbbshmawpagk555y0pzbpb";
       type = "gem";
     };
-    version = "3.5.2";
+    version = "3.5.3";
   };
   kubeclient = {
     dependencies = ["http" "jsonpath" "recursive-open-struct" "rest-client"];
@@ -290,10 +290,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "00x7w5xqsj9m33v3vkmy23wipkkysafksib53ypzn27p5g81w455";
+      sha256 = "0kybw1a6f7d1ipyawnpi5cwiy05rkz9qwglgfvhmd1z0l2gcigmm";
       type = "gem";
     };
-    version = "3.2024.0305";
+    version = "3.2024.0507";
   };
   minitest = {
     groups = ["default"];
diff --git a/pkgs/applications/networking/cluster/kube-router/default.nix b/pkgs/applications/networking/cluster/kube-router/default.nix
index 4b75b292fd3f..551240dfcc07 100644
--- a/pkgs/applications/networking/cluster/kube-router/default.nix
+++ b/pkgs/applications/networking/cluster/kube-router/default.nix
@@ -2,16 +2,16 @@
 
 buildGoModule rec {
   pname = "kube-router";
-  version = "2.1.0";
+  version = "2.1.2";
 
   src = fetchFromGitHub {
     owner = "cloudnativelabs";
     repo = pname;
     rev = "v${version}";
-    hash = "sha256-5aOAQ5kRnNsCn5EH9RKoeEfcFB3g59eqYIdSNjQxdjM=";
+    hash = "sha256-BjL91c+yfpscb0q62eWfiqg1aLkXztXowTj4k8jdTQs=";
   };
 
-  vendorHash = "sha256-5aGcDO+dV9XinH0vw6uNB0mnWuFQcyLhRB7zYr+sRfg=";
+  vendorHash = "sha256-BrpjG9DhDQSsbeJ+1MRAwXyKVULK3KHjvLydduTb024=";
 
   CGO_ENABLED = 0;
 
diff --git a/pkgs/applications/networking/cluster/kubebuilder/default.nix b/pkgs/applications/networking/cluster/kubebuilder/default.nix
index b50320d7c1a0..7885df6af03f 100644
--- a/pkgs/applications/networking/cluster/kubebuilder/default.nix
+++ b/pkgs/applications/networking/cluster/kubebuilder/default.nix
@@ -12,16 +12,16 @@
 
 buildGoModule rec {
   pname = "kubebuilder";
-  version = "3.14.1";
+  version = "3.15.0";
 
   src = fetchFromGitHub {
     owner = "kubernetes-sigs";
     repo = "kubebuilder";
     rev = "v${version}";
-    hash = "sha256-TMKixwZonYGPXIqOtgnuilbH7BaIRyqJU6uKtp9ANKM=";
+    hash = "sha256-YaISsW+USP9M4Mblluo+SXSwGspiTiiPFA3VvLmhqaQ=";
   };
 
-  vendorHash = "sha256-Hl01dFSffYv59zensKTjXWLXxwfkQYAO5xadlc5iBJY=";
+  vendorHash = "sha256-g9QjalRLc2NUsyd7Do1PWw9oD9ATuJGMRaqSaC6AcD0=";
 
   subPackages = ["cmd"];
 
@@ -58,12 +58,12 @@ buildGoModule rec {
     version = "v${version}";
   };
 
-  meta = with lib; {
+  meta = {
     description = "SDK for building Kubernetes APIs using CRDs";
     mainProgram = "kubebuilder";
     homepage = "https://github.com/kubernetes-sigs/kubebuilder";
     changelog = "https://github.com/kubernetes-sigs/kubebuilder/releases/tag/v${version}";
-    license = licenses.asl20;
-    maintainers = with maintainers; [ cmars ];
+    license = lib.licenses.asl20;
+    maintainers = with lib.maintainers; [ cmars ];
   };
 }
diff --git a/pkgs/applications/networking/cluster/kubecolor/default.nix b/pkgs/applications/networking/cluster/kubecolor/default.nix
index 1869cc83d916..589b93cd2f72 100644
--- a/pkgs/applications/networking/cluster/kubecolor/default.nix
+++ b/pkgs/applications/networking/cluster/kubecolor/default.nix
@@ -2,13 +2,13 @@
 
 buildGoModule rec {
   pname = "kubecolor";
-  version = "0.3.1";
+  version = "0.3.2";
 
   src = fetchFromGitHub {
     owner = pname;
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-1gEEmF9RRMwFAvmhLwidkVh+lnibs6x5ZHy/nJRum9E=";
+    sha256 = "sha256-9fL1zuhQ1B8QpJXcGVxg8mqIQoM5ZhwuE000rDcrrw0=";
   };
 
   vendorHash = "sha256-Gzz+mCEMQCcLwTiGMB8/nXk7HDAEGkEapC/VOyXrn/Q=";
diff --git a/pkgs/applications/networking/cluster/kubeconform/default.nix b/pkgs/applications/networking/cluster/kubeconform/default.nix
index b129e0c65bd5..d850d0fb89a5 100644
--- a/pkgs/applications/networking/cluster/kubeconform/default.nix
+++ b/pkgs/applications/networking/cluster/kubeconform/default.nix
@@ -2,13 +2,13 @@
 
 buildGoModule rec {
   pname = "kubeconform";
-  version = "0.6.4";
+  version = "0.6.6";
 
   src = fetchFromGitHub {
     owner = "yannh";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-PUZ3zwgOQ362ikoX1D7SLThiaFpXJh9TKOdjZqZDtSg=";
+    sha256 = "sha256-pE5DDtraN5ubEsM+QfY5y/dqM31VsQ3FeM/c56AJ648=";
   };
 
   vendorHash = null;
diff --git a/pkgs/applications/networking/cluster/kubectl-explore/default.nix b/pkgs/applications/networking/cluster/kubectl-explore/default.nix
index 84d1dfdd6dcd..66f45ad898a5 100644
--- a/pkgs/applications/networking/cluster/kubectl-explore/default.nix
+++ b/pkgs/applications/networking/cluster/kubectl-explore/default.nix
@@ -2,16 +2,16 @@
 
 buildGoModule rec {
   pname = "kubectl-explore";
-  version = "0.8.1";
+  version = "0.9.3";
 
   src = fetchFromGitHub {
     owner = "keisku";
     repo = "kubectl-explore";
     rev = "v${version}";
-    hash = "sha256-3Gb8lgfes3QIIAdJnC/NlCC3mfzIInQb1rG+mJNXAUk=";
+    hash = "sha256-jPif9SjHVKB346XkPCiIYpTc/xWRda9jjXefK/Nbyz0=";
   };
 
-  vendorHash = "sha256-xNB+qC36DcD7oUWk242QcIKNfTmjuK5xbyJEztdhcJM=";
+  vendorHash = "sha256-8kq6ODLf/y23zHsemNtjpM+R8OMKE4DDnK2TGHvunUE=";
   doCheck = false;
 
   meta = with lib; {
diff --git a/pkgs/applications/networking/cluster/kubectl-gadget/default.nix b/pkgs/applications/networking/cluster/kubectl-gadget/default.nix
index 98a656f23859..f09ce52939b7 100644
--- a/pkgs/applications/networking/cluster/kubectl-gadget/default.nix
+++ b/pkgs/applications/networking/cluster/kubectl-gadget/default.nix
@@ -2,16 +2,16 @@
 
 buildGoModule rec {
   pname = "kubectl-gadget";
-  version = "0.27.0";
+  version = "0.28.1";
 
   src = fetchFromGitHub {
     owner = "inspektor-gadget";
     repo = "inspektor-gadget";
     rev = "v${version}";
-    hash = "sha256-u5lzCIbSIOrhI2OE2PprvNZv7KetYGntyADVftSJrkY=";
+    hash = "sha256-+eysHATyAdCN6HVPN2bgc/ICo+XXaef0H0UDW2xCcjc=";
   };
 
-  vendorHash = "sha256-ZsSzLIVVoKZZEZOIYJTNl0DGere3sKfXsjXbRVmeYC4=";
+  vendorHash = "sha256-0XByai7fEnkmEEkH1koVM1+z3UNFLbsUCK3sP4KBe+A=";
 
   CGO_ENABLED = 0;
 
diff --git a/pkgs/applications/networking/cluster/kubefirst/default.nix b/pkgs/applications/networking/cluster/kubefirst/default.nix
index 2e654d15d0b0..5e7646452383 100644
--- a/pkgs/applications/networking/cluster/kubefirst/default.nix
+++ b/pkgs/applications/networking/cluster/kubefirst/default.nix
@@ -5,13 +5,13 @@
 
 buildGoModule rec {
   pname = "kubefirst";
-  version = "2.4.6";
+  version = "2.4.8";
 
   src = fetchFromGitHub {
     owner = "kubefirst";
     repo = "kubefirst";
     rev = "refs/tags/v${version}";
-    hash = "sha256-PjqTtu9n9AqHaYnc/2yVQeIWLiQrQcFNdumDSigY7dY=";
+    hash = "sha256-r5y1eWjcw0HP/E9AQodEdCgWgKikGrwV6TvZ2mVcuoE=";
   };
 
   vendorHash = "sha256-ZcZl4knlyKAwTsiyZvlkN5e2ox30B5aNzutI/2UEE9U=";
diff --git a/pkgs/applications/networking/cluster/kubeone/default.nix b/pkgs/applications/networking/cluster/kubeone/default.nix
index 84ff7632cf2b..d1629de368a4 100644
--- a/pkgs/applications/networking/cluster/kubeone/default.nix
+++ b/pkgs/applications/networking/cluster/kubeone/default.nix
@@ -8,16 +8,16 @@
 
 buildGoModule rec {
   pname = "kubeone";
-  version = "1.7.3";
+  version = "1.8.0";
 
   src = fetchFromGitHub {
     owner = "kubermatic";
     repo = "kubeone";
     rev = "v${version}";
-    hash = "sha256-m2RxSKXiKmx1p5g+C8I/l+OtV7wy2KtrFRIK+h9L5lo=";
+    hash = "sha256-BYfnHgTiHMmKdW25XymP2nDYQDOEHSIUOjrtwaoc1JU=";
   };
 
-  vendorHash = "sha256-vUy60CBrdhB9OFMZ4+q05WtrtN4/5ssozYGBV7r4BsM=";
+  vendorHash = "sha256-tAThtZJ5DRzveJRG58VPxJWrZjB+dnXhX/50lZEHUGc=";
 
   ldflags = [
     "-s"
diff --git a/pkgs/applications/networking/cluster/kubernetes/default.nix b/pkgs/applications/networking/cluster/kubernetes/default.nix
index 3faa5ff0ccec..e8af5d6400d9 100644
--- a/pkgs/applications/networking/cluster/kubernetes/default.nix
+++ b/pkgs/applications/networking/cluster/kubernetes/default.nix
@@ -20,13 +20,13 @@
 
 buildGoModule rec {
   pname = "kubernetes";
-  version = "1.30.0";
+  version = "1.30.1";
 
   src = fetchFromGitHub {
     owner = "kubernetes";
     repo = "kubernetes";
     rev = "v${version}";
-    hash = "sha256-7xRRpchjwtV3dGbZ2hN9qj6soAuiF/K7vTY0LzE6Z5w=";
+    hash = "sha256-nTVjgNMnB6775ubzK7ezOxR5Z0z5PBxx88CxtbxGxrY=";
   };
 
   vendorHash = null;
diff --git a/pkgs/applications/networking/cluster/kubeshark/default.nix b/pkgs/applications/networking/cluster/kubeshark/default.nix
index 32714e7d0ba4..a5fd286984c1 100644
--- a/pkgs/applications/networking/cluster/kubeshark/default.nix
+++ b/pkgs/applications/networking/cluster/kubeshark/default.nix
@@ -2,13 +2,13 @@
 
 buildGoModule rec {
   pname = "kubeshark";
-  version = "52.2.39";
+  version = "52.3.0";
 
   src = fetchFromGitHub {
     owner = "kubeshark";
     repo = "kubeshark";
     rev = "v${version}";
-    hash = "sha256-ji/WOCqZOIaUc+mS2zaMNjWxSgv68DGjtWxgtJCH2C4=";
+    hash = "sha256-7tTXhILWnYRFyKBw1Im9Q9/oqlKJAP478qiBEoTUGMc=";
   };
 
   vendorHash = "sha256-SmvO9DYOXxnmN2dmHPPOguVwEbWSH/xNLBB+idpzopo=";
diff --git a/pkgs/applications/networking/cluster/kubevpn/default.nix b/pkgs/applications/networking/cluster/kubevpn/default.nix
index 14df6fa5c47d..c8f755bf3d9c 100644
--- a/pkgs/applications/networking/cluster/kubevpn/default.nix
+++ b/pkgs/applications/networking/cluster/kubevpn/default.nix
@@ -2,13 +2,13 @@
 
 buildGoModule rec {
   pname = "kubevpn";
-  version = "2.2.6";
+  version = "2.2.8";
 
   src = fetchFromGitHub {
     owner  = "KubeNetworks";
     repo   = "kubevpn";
     rev    = "v${version}";
-    hash = "sha256-Z+IXSmN1V0xRnhE/PpWv9dQIwfTztJRYaftY9KCIucc=";
+    hash = "sha256-/5x1ovvO4Pfnux3GpfeOUy9PIrHPmZzYvOCH09EjxKE=";
   };
 
   vendorHash = null;
diff --git a/pkgs/applications/networking/cluster/kyverno/default.nix b/pkgs/applications/networking/cluster/kyverno/default.nix
index 4d9894d47c12..b80e2726bffc 100644
--- a/pkgs/applications/networking/cluster/kyverno/default.nix
+++ b/pkgs/applications/networking/cluster/kyverno/default.nix
@@ -2,13 +2,13 @@
 
 buildGoModule rec {
   pname = "kyverno";
-  version = "1.12.0";
+  version = "1.12.1";
 
   src = fetchFromGitHub {
     owner = "kyverno";
     repo = "kyverno";
     rev = "v${version}";
-    hash = "sha256-hFRqhw1iV9S13NQ7Y9SPeHHWZ/ls9fiiqlP3vuPeRlY=";
+    hash = "sha256-2x5xLh+v1/RXG3h93Ff49pT9NwHWNx4tubnmCf0SAdY=";
   };
 
   ldflags = [
diff --git a/pkgs/applications/networking/cluster/lens/linux.nix b/pkgs/applications/networking/cluster/lens/linux.nix
index b54285fdafcc..c76a1607760d 100644
--- a/pkgs/applications/networking/cluster/lens/linux.nix
+++ b/pkgs/applications/networking/cluster/lens/linux.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, pname, version, src, meta, appimageTools, makeWrapper, nss_latest }:
+{ pname, version, src, meta, appimageTools, makeWrapper }:
 let
 
   name = "${pname}-${version}";
@@ -25,5 +25,5 @@ appimageTools.wrapType2 {
         --replace 'Exec=AppRun' 'Exec=${pname}'
     '';
 
-  extraPkgs = _: [ nss_latest ];
+  extraPkgs = pkgs: [ pkgs.nss_latest ];
 }
diff --git a/pkgs/applications/networking/cluster/linkerd/edge.nix b/pkgs/applications/networking/cluster/linkerd/edge.nix
index 17e252c9c161..a2c84cc4ae11 100644
--- a/pkgs/applications/networking/cluster/linkerd/edge.nix
+++ b/pkgs/applications/networking/cluster/linkerd/edge.nix
@@ -2,7 +2,7 @@
 
 (callPackage ./generic.nix { }) {
   channel = "edge";
-  version = "24.4.5";
-  sha256 = "0cxjilxsvbwahqh3wb3cw4z8fmq6lhxi531abrncs74kgasgcfam";
-  vendorHash = "sha256-YxavLLYppV991AgFb2WaQDbqnsr3UfrvWefvkSf+W1Q=";
+  version = "24.5.1";
+  sha256 = "1l358gmivhpjyibcar8z4c3jlz6rwmlyzki71ar5j2k9irdjzqa3";
+  vendorHash = "sha256-sLLgTZN7Zvxkf9J1omh/YGMBUgAtvQD+nbhSuR7/PZg=";
 }
diff --git a/pkgs/applications/networking/cluster/minikube/default.nix b/pkgs/applications/networking/cluster/minikube/default.nix
index 17ceb2e49288..9f13b3799bc5 100644
--- a/pkgs/applications/networking/cluster/minikube/default.nix
+++ b/pkgs/applications/networking/cluster/minikube/default.nix
@@ -15,9 +15,9 @@
 
 buildGoModule rec {
   pname = "minikube";
-  version = "1.33.0";
+  version = "1.33.1";
 
-  vendorHash = "sha256-eFIo9C9AEZksQolMlWKPJR2WWpU7Yu4eJb1OBwdqGhI=";
+  vendorHash = "sha256-VHl6CKPWqahX70GHbZE6SVa8XPfiC912DvsOteH2B0w=";
 
   doCheck = false;
 
@@ -25,7 +25,7 @@ buildGoModule rec {
     owner = "kubernetes";
     repo = "minikube";
     rev = "v${version}";
-    sha256 = "sha256-4OSChPgUD1oYnChAi7r2jgZpplR9ZaHpHPiTS6jSpME=";
+    sha256 = "sha256-z0wNngEzddxpeeLyQVA2yRC5SfYvU5G66V95sVmW6bA=";
   };
   postPatch =
     (
diff --git a/pkgs/applications/networking/cluster/nerdctl/default.nix b/pkgs/applications/networking/cluster/nerdctl/default.nix
index 8f7a59c70e8a..0ef96ddf69a4 100644
--- a/pkgs/applications/networking/cluster/nerdctl/default.nix
+++ b/pkgs/applications/networking/cluster/nerdctl/default.nix
@@ -10,16 +10,16 @@
 
 buildGoModule rec {
   pname = "nerdctl";
-  version = "1.7.5";
+  version = "1.7.6";
 
   src = fetchFromGitHub {
     owner = "containerd";
     repo = pname;
     rev = "v${version}";
-    hash = "sha256-eGDshnJ26rrRuM9lWwcdRg8udA4uE5ee6c+SYES7qt4=";
+    hash = "sha256-z83c8Ji0zSM1QDwjB4FwhHW6XCqG0Hb5crM3jjK46jk=";
   };
 
-  vendorHash = "sha256-GsI695T7nkwwAt78l7mc5JCD9wXAUcTxwsiLLFcANBI=";
+  vendorHash = "sha256-KqWmwwQRrWoyRehuSJBnlyPQgwk5hUGk2/d0Ue/reVc=";
 
   nativeBuildInputs = [ makeWrapper installShellFiles ];
 
@@ -48,13 +48,13 @@ buildGoModule rec {
     runHook postInstallCheck
   '';
 
-  meta = with lib; {
+  meta = {
     homepage = "https://github.com/containerd/nerdctl/";
     changelog = "https://github.com/containerd/nerdctl/releases/tag/v${version}";
     description = "A Docker-compatible CLI for containerd";
     mainProgram = "nerdctl";
-    license = licenses.asl20;
-    maintainers = with maintainers; [ jk developer-guy ];
-    platforms = platforms.linux;
+    license = lib.licenses.asl20;
+    maintainers = with lib.maintainers; [ developer-guy jk ];
+    platforms = lib.platforms.linux;
   };
 }
diff --git a/pkgs/applications/networking/cluster/nova/default.nix b/pkgs/applications/networking/cluster/nova/default.nix
index 050674907082..1e8ab2402d9b 100644
--- a/pkgs/applications/networking/cluster/nova/default.nix
+++ b/pkgs/applications/networking/cluster/nova/default.nix
@@ -2,16 +2,16 @@
 
 buildGoModule rec {
   pname = "nova";
-  version = "3.8.0";
+  version = "3.9.0";
 
   src = fetchFromGitHub {
     owner = "FairwindsOps";
     repo = pname;
     rev = "v${version}";
-    hash = "sha256-3bSxMb/JFIy3b6N/94cXfGlUbPIm046O9m2KPan8YIs=";
+    hash = "sha256-9ccWH0bh67LCwzKmyaE32j+qeKfNauclSMjpRwdblH8=";
   };
 
-  vendorHash = "sha256-c30B8Wjvwp4NnB1P8h4/raGiGAX/cbTZ/KQqh/qeNhA=";
+  vendorHash = "sha256-Vt2yUYm2i1NHzW7GxDRqBpaFS4dLfODNEMPO+CTwrLY=";
 
   ldflags = [ "-X main.version=${version}" "-s" "-w" ];
 
diff --git a/pkgs/applications/networking/cluster/opentofu/default.nix b/pkgs/applications/networking/cluster/opentofu/default.nix
index 2d9b07a3f88d..1c8521d12734 100644
--- a/pkgs/applications/networking/cluster/opentofu/default.nix
+++ b/pkgs/applications/networking/cluster/opentofu/default.nix
@@ -14,13 +14,13 @@
 let
   package =  buildGoModule rec {
     pname = "opentofu";
-    version = "1.7.0";
+    version = "1.7.1";
 
     src = fetchFromGitHub {
       owner = "opentofu";
       repo = "opentofu";
       rev = "v${version}";
-      hash = "sha256-e0u8aFua3oMsBafwRPYuWQ9M6DtC7f9LlCDGJ5vdAWE=";
+      hash = "sha256-201zceUedEl93nyglWJo0f9SDfFX31toP0MzzHQeJds=";
     };
 
     vendorHash = "sha256-cML742FfWFNIwGyIdRd3JWcfDlOXnJVgUXz4j5fa74Q=";
diff --git a/pkgs/applications/networking/cluster/pachyderm/default.nix b/pkgs/applications/networking/cluster/pachyderm/default.nix
index 451e209a7b36..1694359a02b2 100644
--- a/pkgs/applications/networking/cluster/pachyderm/default.nix
+++ b/pkgs/applications/networking/cluster/pachyderm/default.nix
@@ -2,13 +2,13 @@
 
 buildGoModule rec {
   pname = "pachyderm";
-  version = "2.9.4";
+  version = "2.9.5";
 
   src = fetchFromGitHub {
     owner = "pachyderm";
     repo = "pachyderm";
     rev = "v${version}";
-    hash = "sha256-RF8JEmZpvUf8w89wRa+d3ItMFnInEoxxQzLJvrx1mZE=";
+    hash = "sha256-9ykJMK51fm36sbICyuHJR7dSRnwIHhaQV2foKOuFmz0=";
   };
 
   vendorHash = "sha256-bAB2vMPHIcJaMobPukQyKiCq0Af0n4b5mjImTswGFTo=";
diff --git a/pkgs/applications/networking/cluster/pluto/default.nix b/pkgs/applications/networking/cluster/pluto/default.nix
index 628084f6f31e..9936580f3cc2 100644
--- a/pkgs/applications/networking/cluster/pluto/default.nix
+++ b/pkgs/applications/networking/cluster/pluto/default.nix
@@ -2,16 +2,16 @@
 
 buildGoModule rec {
   pname = "pluto";
-  version = "5.19.1";
+  version = "5.19.4";
 
   src = fetchFromGitHub {
     owner = "FairwindsOps";
     repo = "pluto";
     rev = "v${version}";
-    hash = "sha256-6TOHDjR5sFaIeR6Zuf4azQAIgUyev7vdlAKB7YNk8R0=";
+    hash = "sha256-PhP3ILOYv+7gmxOJLCgIYp+1FIJirZo7TZJoZv8A1WM=";
   };
 
-  vendorHash = "sha256-8ZOYp/vM16PugmE+3QK7ZRDwIwRCMEwD0NRyiOBlh14=";
+  vendorHash = "sha256-EVlYhlEXwgUfRaxAJ3dBTz6MJ2QITZtnHVcQQN1cHbk=";
 
   ldflags = [
     "-w" "-s"
diff --git a/pkgs/applications/networking/cluster/rke/default.nix b/pkgs/applications/networking/cluster/rke/default.nix
index 6c9cd4d9b0aa..ebf37e05e5f2 100644
--- a/pkgs/applications/networking/cluster/rke/default.nix
+++ b/pkgs/applications/networking/cluster/rke/default.nix
@@ -2,16 +2,16 @@
 
 buildGoModule rec {
   pname = "rke";
-  version = "1.5.8";
+  version = "1.5.9";
 
   src = fetchFromGitHub {
     owner = "rancher";
     repo = pname;
     rev = "v${version}";
-    hash = "sha256-f1Ilf2HSsp0Ygp0fItJVd8iJq12Z1jw2WKmLR4NgUKA=";
+    hash = "sha256-JLP2fZALPJmfj8fCsEPT0S2xsZ1HNQlhORNNrGxxgVg=";
   };
 
-  vendorHash = "sha256-/HsZAMPGCaM5Em6doC8qffoSEveX/yDNwAGog3I0+c4=";
+  vendorHash = "sha256-5SxRh9y8I0v3+lU4V9xGtbwWv6JmrvLmPX8TFKjvvD4=";
 
   subPackages = [ "." ];
 
diff --git a/pkgs/applications/networking/cluster/talosctl/default.nix b/pkgs/applications/networking/cluster/talosctl/default.nix
index 5a46b80749b0..25e4c7ab97ed 100644
--- a/pkgs/applications/networking/cluster/talosctl/default.nix
+++ b/pkgs/applications/networking/cluster/talosctl/default.nix
@@ -2,16 +2,16 @@
 
 buildGoModule rec {
   pname = "talosctl";
-  version = "1.7.0";
+  version = "1.7.1";
 
   src = fetchFromGitHub {
     owner = "siderolabs";
     repo = "talos";
     rev = "v${version}";
-    hash = "sha256-E5pu37R2y0hQezM/p6LJXZv2L6QnV89Ir2HoKaqcOqI=";
+    hash = "sha256-1UDPpavDjWoM5kSfyaT4H5y5ax/vVlfqpzN9U2sTVuk=";
   };
 
-  vendorHash = "sha256-5vWAZsLQxPZGpTiT/OowCLNPdE5e+HrAGXpFRw6jgbU=";
+  vendorHash = "sha256-52RaQOJ2KTuc8wdk7vv5XsynKdMOwZ1LaqiPdB+jXPw=";
 
   ldflags = [ "-s" "-w" ];
 
diff --git a/pkgs/applications/networking/cluster/tektoncd-cli/default.nix b/pkgs/applications/networking/cluster/tektoncd-cli/default.nix
index 2bf571920452..e4c85248360a 100644
--- a/pkgs/applications/networking/cluster/tektoncd-cli/default.nix
+++ b/pkgs/applications/networking/cluster/tektoncd-cli/default.nix
@@ -2,13 +2,13 @@
 
 buildGoModule rec {
   pname = "tektoncd-cli";
-  version = "0.36.0";
+  version = "0.37.0";
 
   src = fetchFromGitHub {
     owner = "tektoncd";
     repo = "cli";
     rev = "v${version}";
-    sha256 = "sha256-no/F9PqChokG2so3LeptHYO3BXoqWFyMtY/5nlEMT8Y=";
+    sha256 = "sha256-PoWpNuv3Tw3vjuMRZGcpy6R6OeSYSHy1DMmzE7P2LLY=";
   };
 
   vendorHash = null;
diff --git a/pkgs/applications/networking/cluster/temporal-cli/default.nix b/pkgs/applications/networking/cluster/temporal-cli/default.nix
index 491ceba0963b..2aa978dfb0a9 100644
--- a/pkgs/applications/networking/cluster/temporal-cli/default.nix
+++ b/pkgs/applications/networking/cluster/temporal-cli/default.nix
@@ -17,16 +17,16 @@ let
 
   tctl-next = buildGoModule rec {
     pname = "tctl-next";
-    version = "0.11.0";
+    version = "0.12.0";
 
     src = fetchFromGitHub {
       owner = "temporalio";
       repo = "cli";
       rev = "v${version}";
-      hash = "sha256-sOmXLqc1O96/50A08b9Rlk5xlmqg2S+5nWachC74IV8=";
+      hash = "sha256-rqwDubKNBvtJ4rTQheCoSIcbfQZQN3iD99PcZewmx5c=";
     };
 
-    vendorHash = "sha256-tZvzCQzYIIqoSefm4ty+RI7fFKWWw2OopYGGX8zS6JM=";
+    vendorHash = "sha256-bnmlh11gtNdgcrI20gjNqxWB+OQTv0b9lgETucoBaXc=";
 
     inherit overrideModAttrs;
 
@@ -50,6 +50,7 @@ let
     postInstall = ''
       installShellCompletion --cmd temporal \
         --bash <($out/bin/temporal completion bash) \
+        --fish <($out/bin/temporal completion fish) \
         --zsh <($out/bin/temporal completion zsh)
     '';
 
diff --git a/pkgs/applications/networking/cluster/terraform/default.nix b/pkgs/applications/networking/cluster/terraform/default.nix
index efaef0fa65b1..6abdcb2bb30e 100644
--- a/pkgs/applications/networking/cluster/terraform/default.nix
+++ b/pkgs/applications/networking/cluster/terraform/default.nix
@@ -166,8 +166,8 @@ rec {
   mkTerraform = attrs: pluggable (generic attrs);
 
   terraform_1 = mkTerraform {
-    version = "1.8.2";
-    hash = "sha256-c9RzdmaTXMOi4oP++asoysDpt/BSvBK/GmEDDGViSl0=";
+    version = "1.8.3";
+    hash = "sha256-4W1Cs3PAGn43eGDK15qSvN+gLdkkoFIwhejcJsCqcYA=";
     vendorHash = "sha256-2+ctm1lJjCHITWV7BqoqgBlXKjNT4lueAt4F3UtoL9Q=";
     patches = [ ./provider-path-0_15.patch ];
     passthru = {
diff --git a/pkgs/applications/networking/cluster/tftui/default.nix b/pkgs/applications/networking/cluster/tftui/default.nix
index e36e12a3b4ff..f7faea2dd195 100644
--- a/pkgs/applications/networking/cluster/tftui/default.nix
+++ b/pkgs/applications/networking/cluster/tftui/default.nix
@@ -7,14 +7,14 @@
 
 python3.pkgs.buildPythonApplication rec {
   pname = "tftui";
-  version = "0.13.0";
+  version = "0.13.1";
   pyproject = true;
 
   src = fetchFromGitHub {
     owner = "idoavrah";
     repo = "terraform-tui";
     rev = "refs/tags/v${version}";
-    hash = "sha256-2Kya0MRa1kc3B5nqs2MNprtnjOGyMLQh2OSErdT5W8M=";
+    hash = "sha256-5eMOd+jpJh5jxthzk5JCl3vvri0PtffolSzdHY/3nbg=";
   };
 
   pythonRelaxDeps = [
diff --git a/pkgs/applications/networking/cluster/werf/default.nix b/pkgs/applications/networking/cluster/werf/default.nix
index 5f06e15b1e50..b94e32022dcd 100644
--- a/pkgs/applications/networking/cluster/werf/default.nix
+++ b/pkgs/applications/networking/cluster/werf/default.nix
@@ -10,13 +10,13 @@
 
 buildGoModule rec {
   pname = "werf";
-  version = "2.0.3";
+  version = "2.0.4";
 
   src = fetchFromGitHub {
     owner = "werf";
     repo = "werf";
     rev = "v${version}";
-    hash = "sha256-CUz2LBba5elWWqMab6I/n1eGKRi8q9im/jEwZI3k7WU=";
+    hash = "sha256-htDa+4t6H2FWqHbsjrCkB7xpMCl/2zE1HIEoLONlklc=";
   };
 
   vendorHash = "sha256-WMmL0jjzzaDtNmx+kvHFONqwhz7mjFCM4rT6YoL+XkA=";
diff --git a/pkgs/applications/networking/cluster/yor/default.nix b/pkgs/applications/networking/cluster/yor/default.nix
index 107b69833597..28536a7ed07d 100644
--- a/pkgs/applications/networking/cluster/yor/default.nix
+++ b/pkgs/applications/networking/cluster/yor/default.nix
@@ -5,13 +5,13 @@
 
 buildGoModule rec {
   pname = "yor";
-  version = "0.1.192";
+  version = "0.1.194";
 
   src = fetchFromGitHub {
     owner = "bridgecrewio";
     repo = pname;
     rev = version;
-    hash = "sha256-J3hygbjpJ+etYcOHRKkuPPF2oquLWgWnps8chcU3uUU=";
+    hash = "sha256-8JkxCkDYalu3IMoGbyNOEJ28CgU87gTq0bX+o+5sV2Q=";
   };
 
   vendorHash = "sha256-uT/jGD4hDVes4h+mlSIT2p+C9TjxnUWsmKv9haPjjLc=";
diff --git a/pkgs/applications/networking/cluster/zarf/default.nix b/pkgs/applications/networking/cluster/zarf/default.nix
index 3608bad410bc..4feb61699e56 100644
--- a/pkgs/applications/networking/cluster/zarf/default.nix
+++ b/pkgs/applications/networking/cluster/zarf/default.nix
@@ -5,16 +5,16 @@
 
 buildGoModule rec {
   pname = "zarf";
-  version = "0.33.1";
+  version = "0.33.2";
 
   src = fetchFromGitHub {
     owner = "defenseunicorns";
     repo = "zarf";
     rev = "v${version}";
-    hash = "sha256-JmUJUZn4mnTKdAVzYaCGZXDJmIeGfyn8Z+OfLfXp/S0=";
+    hash = "sha256-BafS+++8iTVT38pneqCfAQFg15PpXOW/Bv8anmdHZTg=";
   };
 
-  vendorHash = "sha256-fpseCFQjLhUbhisjOYmLfznKGea5+E8CzjtbE7CEsk8=";
+  vendorHash = "sha256-4AN/0OgFX+5uymN/QfOr0sZipTmszhieOPmReKciFtg=";
   proxyVendor = true;
 
   preBuild = ''
diff --git a/pkgs/applications/networking/coreth/default.nix b/pkgs/applications/networking/coreth/default.nix
index c1ad822138ab..e5af4fa397ed 100644
--- a/pkgs/applications/networking/coreth/default.nix
+++ b/pkgs/applications/networking/coreth/default.nix
@@ -6,19 +6,19 @@
 
 buildGoModule rec {
   pname = "coreth";
-  version = "0.13.2";
+  version = "0.13.3";
 
   src = fetchFromGitHub {
     owner = "ava-labs";
     repo = pname;
     rev = "v${version}";
-    hash = "sha256-G3Ovu/tF7gCeddmE91nht/yyqJJtgMyIi7YbTtUFyKo=";
+    hash = "sha256-XVACkk/DUI4AIPRSQgu0g9WHmedjqscZbcz84HIi7jY=";
   };
 
   # go mod vendor has a bug, see: golang/go#57529
   proxyVendor = true;
 
-  vendorHash = "sha256-IJFRtoDd0GO8mIx8mmGixaYK5JDQeSpUfk0MPPX6cX8=";
+  vendorHash = "sha256-zqvo0hZIOyF5Bzig1hi4KRUDETNiiy1Ll/FFO9hRmYU=";
 
   ldflags = [
     "-s"
diff --git a/pkgs/applications/networking/cozy-drive/default.nix b/pkgs/applications/networking/cozy-drive/default.nix
index 526b7666db0e..8c658f40eb76 100644
--- a/pkgs/applications/networking/cozy-drive/default.nix
+++ b/pkgs/applications/networking/cozy-drive/default.nix
@@ -5,11 +5,11 @@
 
 let
   pname = "cozydrive";
-  version = "3.38.0";
+  version = "3.39.0";
 
   src = fetchurl {
     url = "https://github.com/cozy-labs/cozy-desktop/releases/download/v${version}/Cozy-Drive-${version}-x86_64.AppImage";
-    sha256 = "3liOzZVOjtV1cGrKlOKiFRRqnt8KHPr5Ye5HU0e/BYo=";
+    sha256 = "sha256-mTRg8KQm7BJil81TClyzCrXSHTbn+G9pRYMIaeXojzc=";
   };
   appimageContents = appimageTools.extract { inherit pname version src; };
 
diff --git a/pkgs/applications/networking/datovka/default.nix b/pkgs/applications/networking/datovka/default.nix
index bfffc97df6e6..3ed7a26138c8 100644
--- a/pkgs/applications/networking/datovka/default.nix
+++ b/pkgs/applications/networking/datovka/default.nix
@@ -12,11 +12,11 @@
 
 mkDerivation rec {
   pname = "datovka";
-  version = "4.23.6";
+  version = "4.23.7";
 
   src = fetchurl {
     url = "https://gitlab.nic.cz/datovka/datovka/-/archive/v${version}/datovka-v${version}.tar.gz";
-    sha256 = "sha256-g6IMUAE8z5uoLSUpoT+GradQRgwyIXNANt7g4JPOCxg=";
+    sha256 = "sha256-mGuTxOqudDhoJKZ9517H+A4PZxBqAOD+PfBHunhPXGw=";
   };
 
   buildInputs = [ libdatovka qmake qtbase qtsvg libxml2 qtwebsockets ];
diff --git a/pkgs/applications/networking/dnscontrol/default.nix b/pkgs/applications/networking/dnscontrol/default.nix
index dd1084b0dd80..58051120cc34 100644
--- a/pkgs/applications/networking/dnscontrol/default.nix
+++ b/pkgs/applications/networking/dnscontrol/default.nix
@@ -2,16 +2,16 @@
 
 buildGoModule rec {
   pname = "dnscontrol";
-  version = "4.9.0";
+  version = "4.11.0";
 
   src = fetchFromGitHub {
     owner = "StackExchange";
     repo = "dnscontrol";
     rev = "v${version}";
-    hash = "sha256-E5/7qAK2pvl1ADioF7Iwe9SgCE6tVaQdtOAwNo3XZx8=";
+    hash = "sha256-TBLxwHiL3knM+GQoTYD2L/deASPpbUsDlGk4VeVmki4=";
   };
 
-  vendorHash = "sha256-5VTC6Y3Bs2ViW5/O8TeD0i6Boeu71b9C+B/3O73bCbk=";
+  vendorHash = "sha256-kmnV1W0HGlxFZYYUeUd9D/zOabUhM5kDoTZTnRYJ2sM=";
 
   subPackages = [ "." ];
 
diff --git a/pkgs/applications/networking/feedreaders/gnome-feeds/default.nix b/pkgs/applications/networking/feedreaders/gnome-feeds/default.nix
index 902b6a7b35cb..edab321b11b0 100644
--- a/pkgs/applications/networking/feedreaders/gnome-feeds/default.nix
+++ b/pkgs/applications/networking/feedreaders/gnome-feeds/default.nix
@@ -8,7 +8,7 @@
 , meson
 , ninja
 , pkg-config
-, wrapGAppsHook
+, wrapGAppsHook3
 
 , glib
 , glib-networking
@@ -40,7 +40,7 @@ python3.pkgs.buildPythonApplication rec {
     meson
     ninja
     pkg-config
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
diff --git a/pkgs/applications/networking/feedreaders/newsflash/Cargo.lock b/pkgs/applications/networking/feedreaders/newsflash/Cargo.lock
index 5ae116115e22..691d71e0decf 100644
--- a/pkgs/applications/networking/feedreaders/newsflash/Cargo.lock
+++ b/pkgs/applications/networking/feedreaders/newsflash/Cargo.lock
@@ -31,14 +31,20 @@ dependencies = [
 
 [[package]]
 name = "aho-corasick"
-version = "1.1.2"
+version = "1.1.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b2969dcb958b36655471fc61f7e416fa76033bdd4bfed0678d8fee1e2d07a1f0"
+checksum = "8e60d3430d3a69478ad0993f19238d2df97c507009a52b3c10addcd7f6bcb916"
 dependencies = [
  "memchr",
 ]
 
 [[package]]
+name = "aligned-vec"
+version = "0.5.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "4aa90d7ce82d4be67b64039a3d588d38dbcc6736577de4a847025ce5b0c468d1"
+
+[[package]]
 name = "alloc-no-stdlib"
 version = "2.0.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -83,22 +89,46 @@ dependencies = [
 
 [[package]]
 name = "anyhow"
-version = "1.0.80"
+version = "1.0.81"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "0952808a6c2afd1aa8947271f3a60f1a6763c7b912d210184c5149b5cf147247"
+
+[[package]]
+name = "arbitrary"
+version = "1.3.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5ad32ce52e4161730f7098c077cd2ed6229b5804ccf99e5366be1ab72a98b4e1"
+checksum = "7d5a26814d8dcb93b0e5a0ff3c6d80a8843bafb21b39e8e18a6f05471870e110"
 
 [[package]]
 name = "arc-swap"
-version = "1.7.0"
+version = "1.7.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7b3d0060af21e8d11a926981cc00c6c1541aa91dd64b9f881985c3da1094425f"
+checksum = "69f7f8c3906b62b754cd5326047894316021dcfe5a194c8ea52bdd94934a3457"
+
+[[package]]
+name = "arg_enum_proc_macro"
+version = "0.3.4"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "0ae92a5119aa49cdbcf6b9f893fe4e1d98b04ccbf82ee0584ad948a44a734dea"
+dependencies = [
+ "proc-macro2",
+ "quote",
+ "syn 2.0.55",
+]
+
+[[package]]
+name = "arrayvec"
+version = "0.7.4"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "96d30a06541fbafbc7f82ed10c06164cfbd2c401138f6addd8404629c4b16711"
 
 [[package]]
 name = "article_scraper"
-version = "2.0.0"
-source = "git+https://gitlab.com/news-flash/article_scraper.git#0dcebe8b49b8d867810d0f7ff155e502f637bb96"
+version = "2.1.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "f2f3fa375ebee9245309680ef4b2178782a9ac5e7b1f7bf869cff93f8f3c55c6"
 dependencies = [
- "base64 0.21.7",
+ "base64 0.22.0",
  "chrono",
  "encoding_rs",
  "escaper",
@@ -117,9 +147,9 @@ dependencies = [
 
 [[package]]
 name = "ashpd"
-version = "0.8.0"
+version = "0.8.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1b22517ee647547c01a687cf9b76074e1c91334032a4324f7243c6ee0f949390"
+checksum = "dd884d7c72877a94102c3715f3b1cd09ff4fac28221add3e57cfbe25c236d093"
 dependencies = [
  "async-fs",
  "async-net",
@@ -199,9 +229,9 @@ dependencies = [
 
 [[package]]
 name = "async-io"
-version = "2.3.1"
+version = "2.3.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8f97ab0c5b00a7cdbe5a371b9a782ee7be1316095885c8a4ea1daf490eb0ef65"
+checksum = "dcccb0f599cfa2f8ace422d3555572f47424da5648a4382a9dd0310ff8210884"
 dependencies = [
  "async-lock 3.3.0",
  "cfg-if",
@@ -267,13 +297,13 @@ dependencies = [
 
 [[package]]
 name = "async-recursion"
-version = "1.0.5"
+version = "1.1.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5fd55a5ba1179988837d24ab4c7cc8ed6efdeff578ede0416b4225a5fca35bd0"
+checksum = "30c5ef0ede93efbf733c1a727f3b6b5a1060bbedd5600183e66f6e4be4af0ec5"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.52",
+ "syn 2.0.55",
 ]
 
 [[package]]
@@ -302,13 +332,13 @@ checksum = "fbb36e985947064623dbd357f727af08ffd077f93d696782f3c56365fa2e2799"
 
 [[package]]
 name = "async-trait"
-version = "0.1.77"
+version = "0.1.79"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c980ee35e870bd1a4d2c8294d4c04d0499e67bca1e4b5cefcc693c2fa00caea9"
+checksum = "a507401cad91ec6a857ed5513a2073c82a9b9048762b885bb98655b306964681"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.52",
+ "syn 2.0.55",
 ]
 
 [[package]]
@@ -324,10 +354,33 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "d468802bab17cbc0cc575e9b053f41e72aa36bfa6b7f55e3529ffa43161b97fa"
 
 [[package]]
+name = "av1-grain"
+version = "0.2.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "6678909d8c5d46a42abcf571271e15fdbc0a225e3646cf23762cd415046c78bf"
+dependencies = [
+ "anyhow",
+ "arrayvec",
+ "log",
+ "nom",
+ "num-rational",
+ "v_frame",
+]
+
+[[package]]
+name = "avif-serialize"
+version = "0.8.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "876c75a42f6364451a033496a14c44bffe41f5f4a8236f697391f11024e596d2"
+dependencies = [
+ "arrayvec",
+]
+
+[[package]]
 name = "backtrace"
-version = "0.3.69"
+version = "0.3.71"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2089b7e3f35b9dd2d0ed921ead4f6d318c27680d4a5bd167b3ee120edb105837"
+checksum = "26b05800d2e817c8b3b4b54abd461726265fa9789ae34330622f2db9ee696f9d"
 dependencies = [
  "addr2line",
  "cc",
@@ -377,9 +430,15 @@ checksum = "bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a"
 
 [[package]]
 name = "bitflags"
-version = "2.4.2"
+version = "2.5.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "cf4b9d6a944f767f8e5e0db018570623c85f3d925ac718db4e06d0187adb21c1"
+
+[[package]]
+name = "bitstream-io"
+version = "2.2.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ed570934406eb16438a4e976b1b4500774099c13b8cb96eec99f620f05090ddf"
+checksum = "06c9989a51171e2e81038ab168b6ae22886fe9ded214430dbb4f41c28cf176da"
 
 [[package]]
 name = "block"
@@ -440,9 +499,9 @@ dependencies = [
 
 [[package]]
 name = "brotli"
-version = "3.4.0"
+version = "3.5.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "516074a47ef4bce09577a3b379392300159ce5b1ba2e501ff1c819950066100f"
+checksum = "d640d25bc63c50fb1f0b545ffd80207d2e10a4c965530809b40ba3386825c391"
 dependencies = [
  "alloc-no-stdlib",
  "alloc-stdlib",
@@ -460,10 +519,16 @@ dependencies = [
 ]
 
 [[package]]
+name = "built"
+version = "0.7.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "38d17f4d6e4dc36d1a02fbedc2753a096848e7c1b0772f7654eab8e2c927dd53"
+
+[[package]]
 name = "bumpalo"
-version = "3.15.3"
+version = "3.15.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8ea184aa71bb362a1157c896979544cc23974e08fd265f29ea96b59f0b4a555b"
+checksum = "7ff69b9dd49fd426c69a0db9fc04dd934cdb6645ff000864d98f7e2af8830eaa"
 
 [[package]]
 name = "bytecount"
@@ -473,9 +538,9 @@ checksum = "e1e5f035d16fc623ae5f74981db80a439803888314e3a555fd6f04acd51a3205"
 
 [[package]]
 name = "bytemuck"
-version = "1.14.3"
+version = "1.15.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a2ef034f05691a48569bd920a96c81b9d91bbad1ab5ac7c4616c1f6ef36cb79f"
+checksum = "5d6d68c57235a3a081186990eca2867354726650f42f7516ca50c28d6281fd15"
 
 [[package]]
 name = "byteorder"
@@ -485,9 +550,9 @@ checksum = "1fd0f2584146f6f2ef48085050886acf353beff7305ebd1ae69500e27c67f64b"
 
 [[package]]
 name = "bytes"
-version = "1.5.0"
+version = "1.6.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a2bd12c1caf447e69cd4528f47f94d203fd2582878ecb9e9465484c4148a8223"
+checksum = "514de17de45fdb8dc022b1a7975556c53c86f9f0aa5f534b98977b171857c2c9"
 
 [[package]]
 name = "bytesize"
@@ -501,7 +566,7 @@ version = "0.19.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "2650f66005301bd33cc486dec076e1293c4cecf768bc7ba9bf5d2b1be339b99c"
 dependencies = [
- "bitflags 2.4.2",
+ "bitflags 2.5.0",
  "cairo-sys-rs",
  "glib",
  "libc",
@@ -530,9 +595,9 @@ dependencies = [
 
 [[package]]
 name = "cargo-platform"
-version = "0.1.7"
+version = "0.1.8"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "694c8807f2ae16faecc43dc17d74b3eb042482789fd0eb64b39a2e04e087053f"
+checksum = "24b1f0365a6c6bb4020cd05806fd0d33c44d38046b8bd7f0e40814b9763cabfc"
 dependencies = [
  "serde",
 ]
@@ -552,9 +617,13 @@ dependencies = [
 
 [[package]]
 name = "cc"
-version = "1.0.89"
+version = "1.0.90"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a0ba8f7aaa012f30d5b2861462f6708eccd49c3c39863fe083a308035f63d723"
+checksum = "8cd6604a82acf3039f1144f54b8eb34e91ffba622051189e71b781822d5ee1f5"
+dependencies = [
+ "jobserver",
+ "libc",
+]
 
 [[package]]
 name = "cfg-expr"
@@ -580,9 +649,9 @@ checksum = "fd16c4719339c4530435d38e511904438d07cce7950afa3718a84ac36c10e89e"
 
 [[package]]
 name = "chrono"
-version = "0.4.34"
+version = "0.4.35"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5bc015644b92d5890fab7489e49d21f879d5c990186827d42ec511919404f38b"
+checksum = "8eaf5903dcbc0a39312feb77df2ff4c76387d591b9fc7b04a238dcf8bb62639a"
 dependencies = [
  "android-tzdata",
  "iana-time-zone",
@@ -619,11 +688,11 @@ checksum = "3d7b894f5411737b7867f4827955924d7c254fc9f4d91a6aad6b097804b1018b"
 
 [[package]]
 name = "commafeed_api"
-version = "0.1.1"
+version = "0.2.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "013b56b25f5e10cae0fac4564fd64aa54766a860b896fc2d582f97616be6e92c"
+checksum = "072ba524ee8f89cf270c0f0fecd79062c094cd1c7f9c657c32810f9448d2b002"
 dependencies = [
- "base64 0.21.7",
+ "base64 0.22.0",
  "chrono",
  "log",
  "reqwest",
@@ -814,9 +883,9 @@ checksum = "3c877555693c14d2f84191cfd3ad8582790fc52b5e2274b40b59cf5f5cea25c7"
 
 [[package]]
 name = "diesel"
-version = "2.1.4"
+version = "2.1.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "62c6fcf842f17f8c78ecf7c81d75c5ce84436b41ee07e03f490fbb5f5a8731d8"
+checksum = "03fc05c17098f21b89bc7d98fe1dd3cce2c11c2ad8e145f2a44fe08ed28eb559"
 dependencies = [
  "bigdecimal",
  "chrono",
@@ -835,14 +904,14 @@ dependencies = [
 
 [[package]]
 name = "diesel_derives"
-version = "2.1.2"
+version = "2.1.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ef8337737574f55a468005a83499da720f20c65586241ffea339db9ecdfd2b44"
+checksum = "5d02eecb814ae714ffe61ddc2db2dd03e6c49a42e269b5001355500d431cce0c"
 dependencies = [
  "diesel_table_macro_syntax",
  "proc-macro2",
  "quote",
- "syn 2.0.52",
+ "syn 2.0.55",
 ]
 
 [[package]]
@@ -862,7 +931,7 @@ version = "0.1.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "fc5557efc453706fed5e4fa85006fe9817c224c3f480a34c7e5959fd700921c5"
 dependencies = [
- "syn 2.0.52",
+ "syn 2.0.55",
 ]
 
 [[package]]
@@ -959,10 +1028,10 @@ version = "0.6.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "5ffccbb6966c05b32ef8fbac435df276c4ae4d3dc55a8cd0eb9745e6c12f546a"
 dependencies = [
- "heck",
+ "heck 0.4.1",
  "proc-macro2",
  "quote",
- "syn 2.0.52",
+ "syn 2.0.55",
 ]
 
 [[package]]
@@ -983,7 +1052,7 @@ checksum = "5c785274071b1b420972453b306eeca06acf4633829db4223b58a2a8c5953bc4"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.52",
+ "syn 2.0.55",
 ]
 
 [[package]]
@@ -1096,9 +1165,9 @@ dependencies = [
 
 [[package]]
 name = "fastrand"
-version = "2.0.1"
+version = "2.0.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "25cbce373ec4653f1a01a31e8a5e5ec0c622dc27ff9c4e6606eefef5cbbed4a5"
+checksum = "658bd65b1cf4c852a3cc96f18a8ce7b5640f6b703f905c7d74532294c2a63984"
 
 [[package]]
 name = "fdeflate"
@@ -1122,16 +1191,16 @@ dependencies = [
  "regex",
  "serde",
  "serde_json",
- "siphasher 1.0.0",
+ "siphasher 1.0.1",
  "url",
  "uuid",
 ]
 
 [[package]]
 name = "feedbin_api"
-version = "0.2.1"
+version = "0.3.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e548b6bc1c89c0c92d269bccd154c9052e423c45fb950770077374be1b6b9749"
+checksum = "3ba7c314a5931e0ed0444098689eec5955f0bce5a18f79a7c1e5f7dff8ef0f19"
 dependencies = [
  "chrono",
  "reqwest",
@@ -1144,9 +1213,9 @@ dependencies = [
 
 [[package]]
 name = "feedly_api"
-version = "0.5.1"
+version = "0.6.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "36971ec64540957e96aaa419c5e6026dd9704f8e587d7e42c25ec35580ac9eb2"
+checksum = "57407ab65755d1bb234713057fb9400ef48a25627299577c527e816343584696"
 dependencies = [
  "chrono",
  "log",
@@ -1162,9 +1231,9 @@ dependencies = [
 
 [[package]]
 name = "fever_api"
-version = "0.4.1"
+version = "0.5.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "144611f6ff1f24937d3591684495c6c929872fe88dd73e2bbf050e415a0ef566"
+checksum = "366649dc49e140910959d127d0db7a552f543138110fb32a246efa0e8d4aa57e"
 dependencies = [
  "log",
  "md5",
@@ -1295,9 +1364,9 @@ checksum = "a44623e20b9681a318efdd71c299b6b222ed6f231972bfe2f224ebad6311f0c1"
 
 [[package]]
 name = "futures-lite"
-version = "2.2.0"
+version = "2.3.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "445ba825b27408685aaecefd65178908c36c6e96aaf6d8599419d46e624192ba"
+checksum = "52527eb5074e35e9339c6b4e8d12600c7128b68fb25dcb9fa9dec18f7c25f3a5"
 dependencies = [
  "fastrand",
  "futures-core",
@@ -1314,7 +1383,7 @@ checksum = "87750cf4b7a4c0625b1529e4c543c2182106e4dedc60a2a6455e00d212c489ac"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.52",
+ "syn 2.0.55",
 ]
 
 [[package]]
@@ -1374,9 +1443,9 @@ dependencies = [
 
 [[package]]
 name = "gdk4"
-version = "0.8.0"
+version = "0.8.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6771942f85a2beaa220c64739395e4401b9fab4a52aba9b503fa1e6ed4d4d806"
+checksum = "9100b25604183f2fd97f55ef087fae96ab4934d7215118a35303e422688e6e4b"
 dependencies = [
  "cairo-rs",
  "gdk-pixbuf",
@@ -1389,9 +1458,9 @@ dependencies = [
 
 [[package]]
 name = "gdk4-sys"
-version = "0.8.0"
+version = "0.8.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1eb95854fab65072023a7814434f003db571d6e45c287c0b0c540c1c78bdf6ae"
+checksum = "d0b76874c40bb8d1c7d03a7231e23ac75fa577a456cd53af32ec17ec8f121626"
 dependencies = [
  "cairo-sys-rs",
  "gdk-pixbuf-sys",
@@ -1463,9 +1532,9 @@ checksum = "4271d37baee1b8c7e4b708028c57d816cf9d2434acb33a549475f78c181f6253"
 
 [[package]]
 name = "gio"
-version = "0.19.2"
+version = "0.19.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2eae10b27b6dd27e22ed0d812c6387deba295e6fc004a8b379e459b663b05a02"
+checksum = "c64947d08d7fbb03bf8ad1f25a8ac6cf4329bc772c9b7e5abe7bf9493c81194f"
 dependencies = [
  "futures-channel",
  "futures-core",
@@ -1494,11 +1563,11 @@ dependencies = [
 
 [[package]]
 name = "glib"
-version = "0.19.2"
+version = "0.19.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ab9e86540b5d8402e905ad4ce7d6aa544092131ab564f3102175af176b90a053"
+checksum = "01e191cc1af1f35b9699213107068cd3fe05d9816275ac118dc785a0dd8faebf"
 dependencies = [
- "bitflags 2.4.2",
+ "bitflags 2.5.0",
  "futures-channel",
  "futures-core",
  "futures-executor",
@@ -1516,15 +1585,15 @@ dependencies = [
 
 [[package]]
 name = "glib-macros"
-version = "0.19.2"
+version = "0.19.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0f5897ca27a83e4cdc7b4666850bade0a2e73e17689aabafcc9acddad9d823b8"
+checksum = "9972bb91643d589c889654693a4f1d07697fdcb5d104b5c44fb68649ba1bf68d"
 dependencies = [
- "heck",
+ "heck 0.5.0",
  "proc-macro-crate",
  "proc-macro2",
  "quote",
- "syn 2.0.52",
+ "syn 2.0.55",
 ]
 
 [[package]]
@@ -1579,9 +1648,9 @@ dependencies = [
 
 [[package]]
 name = "greader_api"
-version = "0.4.3"
+version = "0.5.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "787d011b04b4e309822ce9d02e4a61cd9f8a5b37ea019bb853f37bf1a3f06dde"
+checksum = "18ab2555b8d1c4a12606d1b2caff3f30b77bc5935fe7623f735b704c241632b9"
 dependencies = [
  "chrono",
  "log",
@@ -1595,9 +1664,9 @@ dependencies = [
 
 [[package]]
 name = "gsk4"
-version = "0.8.0"
+version = "0.8.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0e8ce8dee0fd87a11002214b1204ff18c9272fbd530408f0884a0f9b25dc31de"
+checksum = "c65036fc8f99579e8cb37b12487969b707ab23ec8ab953682ff347cbd15d396e"
 dependencies = [
  "cairo-rs",
  "gdk4",
@@ -1610,9 +1679,9 @@ dependencies = [
 
 [[package]]
 name = "gsk4-sys"
-version = "0.8.0"
+version = "0.8.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2660a652da5b662d43924df19ba40d73f015ed427329ef51d2b1360a4e0dc0e4"
+checksum = "bd24c814379f9c3199dc53e52253ee8d0f657eae389ab282c330505289d24738"
 dependencies = [
  "cairo-sys-rs",
  "gdk4-sys",
@@ -1626,9 +1695,9 @@ dependencies = [
 
 [[package]]
 name = "gtk4"
-version = "0.8.0"
+version = "0.8.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7d26ffa3ec6316ccaa1df62d3e7f5bae1637c0acbb43f250fabef38319f73c64"
+checksum = "aa82753b8c26277e4af1446c70e35b19aad4fb794a7b143859e7eeb9a4025d83"
 dependencies = [
  "cairo-rs",
  "field-offset",
@@ -1647,9 +1716,9 @@ dependencies = [
 
 [[package]]
 name = "gtk4-macros"
-version = "0.8.0"
+version = "0.8.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c8b86439e9896f6f3f47c3d8077c5c8205174078760afdabd9098a8e9e937d97"
+checksum = "40300bf071d2fcd4c94eacc09e84ec6fe73129d2ceb635cf7e55b026b5443567"
 dependencies = [
  "anyhow",
  "proc-macro-crate",
@@ -1661,9 +1730,9 @@ dependencies = [
 
 [[package]]
 name = "gtk4-sys"
-version = "0.8.0"
+version = "0.8.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2abc0a6d356d59a3806021829ce6ed3e70bba3509b41a535fedcb09fae13fbc0"
+checksum = "0db1b104138f087ccdc81d2c332de5dd049b89de3d384437cc1093b17cd2da18"
 dependencies = [
  "cairo-sys-rs",
  "gdk-pixbuf-sys",
@@ -1680,9 +1749,9 @@ dependencies = [
 
 [[package]]
 name = "h2"
-version = "0.3.24"
+version = "0.4.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "bb2c4422095b67ee78da96fbb51a4cc413b3b25883c7717ff7ca1ab31022c9c9"
+checksum = "51ee2dd2e4f378392eeff5d51618cd9a63166a2513846bbc55f21cfacd9199d4"
 dependencies = [
  "bytes",
  "fnv",
@@ -1709,9 +1778,9 @@ dependencies = [
 
 [[package]]
 name = "hard-xml"
-version = "1.34.0"
+version = "1.36.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "fafc2bcb74049535eb6fab49eb20164a427867a9e809516ef95a98e961164432"
+checksum = "a344e0cef8802f37dc47f17c01a04354d3e66d9f6c8744108b0912f616efe266"
 dependencies = [
  "hard-xml-derive",
  "jetscii",
@@ -1722,11 +1791,11 @@ dependencies = [
 
 [[package]]
 name = "hard-xml-derive"
-version = "1.34.0"
+version = "1.36.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "57a345b327da51b997c94f841d9db6b2d292c7632713bd8a1b8b191e8b819df7"
+checksum = "1bfae7cdfe23e50ea96929ccf1948d9ae1d8608353556461e5de247463d3a4f6"
 dependencies = [
- "bitflags 1.3.2",
+ "bitflags 2.5.0",
  "proc-macro2",
  "quote",
  "syn 1.0.109",
@@ -1745,6 +1814,12 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "95505c38b4572b2d910cecb0281560f54b440a19336cbbcb27bf6ce6adc6f5a8"
 
 [[package]]
+name = "heck"
+version = "0.5.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "2304e00983f87ffb38b55b444b5e3b60a884b5d30c0fca7d82fe33449bbe55ea"
+
+[[package]]
 name = "hermit-abi"
 version = "0.3.9"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -1757,6 +1832,51 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "7f24254aa9a54b5c858eaee2f5bccdb46aaf0e486a595ed5fd8f86ba55232a70"
 
 [[package]]
+name = "hickory-proto"
+version = "0.24.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "091a6fbccf4860009355e3efc52ff4acf37a63489aad7435372d44ceeb6fbbcf"
+dependencies = [
+ "async-trait",
+ "cfg-if",
+ "data-encoding",
+ "enum-as-inner",
+ "futures-channel",
+ "futures-io",
+ "futures-util",
+ "idna 0.4.0",
+ "ipnet",
+ "once_cell",
+ "rand",
+ "thiserror",
+ "tinyvec",
+ "tokio",
+ "tracing",
+ "url",
+]
+
+[[package]]
+name = "hickory-resolver"
+version = "0.24.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "35b8f021164e6a984c9030023544c57789c51760065cd510572fedcfb04164e8"
+dependencies = [
+ "cfg-if",
+ "futures-util",
+ "hickory-proto",
+ "ipconfig",
+ "lru-cache",
+ "once_cell",
+ "parking_lot",
+ "rand",
+ "resolv-conf",
+ "smallvec",
+ "thiserror",
+ "tokio",
+ "tracing",
+]
+
+[[package]]
 name = "hostname"
 version = "0.3.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -1799,9 +1919,9 @@ dependencies = [
 
 [[package]]
 name = "http"
-version = "0.2.12"
+version = "1.1.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "601cbb57e577e2f5ef5be8e7b83f0f63994f25aa94d673e54a92d5c516d101f1"
+checksum = "21b9ddb458710bc376481b842f5da65cdf31522de232c1ca8146abce2a358258"
 dependencies = [
  "bytes",
  "fnv",
@@ -1810,12 +1930,24 @@ dependencies = [
 
 [[package]]
 name = "http-body"
-version = "0.4.6"
+version = "1.0.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7ceab25649e9960c0311ea418d17bee82c0dcec1bd053b5f9a66e265a693bed2"
+checksum = "1cac85db508abc24a2e48553ba12a996e87244a0395ce011e62b37158745d643"
 dependencies = [
  "bytes",
  "http",
+]
+
+[[package]]
+name = "http-body-util"
+version = "0.1.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "0475f8b2ac86659c21b64320d5d653f9efe42acd2a4e560073ec61a155a34f1d"
+dependencies = [
+ "bytes",
+ "futures-core",
+ "http",
+ "http-body",
  "pin-project-lite",
 ]
 
@@ -1826,12 +1958,6 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "d897f394bad6a705d5f4104762e116a75639e470d80901eed05a860a95cb1904"
 
 [[package]]
-name = "httpdate"
-version = "1.0.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "df3b46402a9d5adb4c86a0cf463f42e19994e3ee891101b1841f30a545cb49a9"
-
-[[package]]
 name = "humantime"
 version = "2.1.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -1839,39 +1965,58 @@ checksum = "9a3a5bfb195931eeb336b2a7b4d761daec841b97f947d34394601737a7bba5e4"
 
 [[package]]
 name = "hyper"
-version = "0.14.28"
+version = "1.2.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "bf96e135eb83a2a8ddf766e426a841d8ddd7449d5f00d34ea02b41d2f19eef80"
+checksum = "186548d73ac615b32a73aafe38fb4f56c0d340e110e5a200bcadbaf2e199263a"
 dependencies = [
  "bytes",
  "futures-channel",
- "futures-core",
  "futures-util",
  "h2",
  "http",
  "http-body",
  "httparse",
- "httpdate",
  "itoa",
  "pin-project-lite",
- "socket2",
+ "smallvec",
  "tokio",
- "tower-service",
- "tracing",
  "want",
 ]
 
 [[package]]
 name = "hyper-tls"
-version = "0.5.0"
+version = "0.6.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d6183ddfa99b85da61a140bea0efc93fdf56ceaa041b37d553518030827f9905"
+checksum = "70206fc6890eaca9fde8a0bf71caa2ddfc9fe045ac9e5c70df101a7dbde866e0"
 dependencies = [
  "bytes",
+ "http-body-util",
  "hyper",
+ "hyper-util",
  "native-tls",
  "tokio",
  "tokio-native-tls",
+ "tower-service",
+]
+
+[[package]]
+name = "hyper-util"
+version = "0.1.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "ca38ef113da30126bbff9cd1705f9273e15d45498615d138b0c20279ac7a76aa"
+dependencies = [
+ "bytes",
+ "futures-channel",
+ "futures-util",
+ "http",
+ "http-body",
+ "hyper",
+ "pin-project-lite",
+ "socket2",
+ "tokio",
+ "tower",
+ "tower-service",
+ "tracing",
 ]
 
 [[package]]
@@ -1929,23 +2074,44 @@ dependencies = [
 
 [[package]]
 name = "image"
-version = "0.24.9"
+version = "0.25.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5690139d2f55868e080017335e4b94cb7414274c74f1669c84fb5feba2c9f69d"
+checksum = "a9b4f005360d32e9325029b38ba47ebd7a56f3316df09249368939562d518645"
 dependencies = [
  "bytemuck",
  "byteorder",
  "color_quant",
  "exr",
  "gif",
- "jpeg-decoder",
+ "image-webp",
  "num-traits",
  "png",
  "qoi",
+ "ravif",
+ "rayon",
+ "rgb",
  "tiff",
+ "zune-core",
+ "zune-jpeg",
+]
+
+[[package]]
+name = "image-webp"
+version = "0.1.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "7a84a25dcae3ac487bc24ef280f9e20c79c9b1a3e5e32cbed3041d1c514aa87c"
+dependencies = [
+ "byteorder",
+ "thiserror",
 ]
 
 [[package]]
+name = "imgref"
+version = "1.10.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "44feda355f4159a7c757171a77de25daf6411e217b4cabd03bd6650690468126"
+
+[[package]]
 name = "indenter"
 version = "0.3.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -1953,15 +2119,26 @@ checksum = "ce23b50ad8242c51a442f3ff322d56b02f08852c77e4c0b4d3fd684abc89c683"
 
 [[package]]
 name = "indexmap"
-version = "2.2.5"
+version = "2.2.6"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7b0b929d511467233429c45a44ac1dcaa21ba0f5ba11e4879e6ed28ddb4f9df4"
+checksum = "168fb715dda47215e360912c096649d23d58bf392ac62f73919e831745e40f26"
 dependencies = [
  "equivalent",
  "hashbrown",
 ]
 
 [[package]]
+name = "interpolate_name"
+version = "0.2.4"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "c34819042dc3d3971c46c2190835914dfbe0c3c13f61449b2997f4e9722dfa60"
+dependencies = [
+ "proc-macro2",
+ "quote",
+ "syn 2.0.55",
+]
+
+[[package]]
 name = "ipconfig"
 version = "0.3.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -2042,13 +2219,19 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "47f142fe24a9c9944451e8349de0a56af5f3e7226dc46f3ed4d4ecc0b85af75e"
 
 [[package]]
+name = "jobserver"
+version = "0.1.28"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "ab46a6e9526ddef3ae7f787c06f0f2600639ba80ea3eade3d8e670a2230f51d6"
+dependencies = [
+ "libc",
+]
+
+[[package]]
 name = "jpeg-decoder"
 version = "0.3.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "f5d4a7da358eff58addd2877a45865158f0d78c911d43a5784ceb7bbf52833b0"
-dependencies = [
- "rayon",
-]
 
 [[package]]
 name = "js-sys"
@@ -2110,6 +2293,17 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "9c198f91728a82281a64e1f4f9eeb25d82cb32a5de251c6bd1b5154d63a8e7bd"
 
 [[package]]
+name = "libfuzzer-sys"
+version = "0.4.7"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "a96cfd5557eb82f2b83fed4955246c988d331975a002961b07c81584d107e7f7"
+dependencies = [
+ "arbitrary",
+ "cc",
+ "once_cell",
+]
+
+[[package]]
 name = "libm"
 version = "0.2.8"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -2121,16 +2315,16 @@ version = "0.0.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "85c833ca1e66078851dba29046874e38f08b2c883700aa29a03ddd3b23814ee8"
 dependencies = [
- "bitflags 2.4.2",
+ "bitflags 2.5.0",
  "libc",
  "redox_syscall",
 ]
 
 [[package]]
 name = "libsqlite3-sys"
-version = "0.27.0"
+version = "0.28.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "cf4e226dcd58b4be396f7bd3c20da8fdee2911400705297ba7d2d7cc2c30f716"
+checksum = "0c10584274047cb335c23d3e61bcef8e323adae7c5c8c760540f73610177fc3f"
 dependencies = [
  "pkg-config",
  "vcpkg",
@@ -2235,6 +2429,15 @@ dependencies = [
 ]
 
 [[package]]
+name = "loop9"
+version = "0.1.5"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "0fae87c125b03c1d2c0150c90365d7d6bcc53fb73a9acaef207d2d065860f062"
+dependencies = [
+ "imgref",
+]
+
+[[package]]
 name = "lru-cache"
 version = "0.1.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -2314,6 +2517,16 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "ffbee8634e0d45d258acb448e7eaab3fce7a0a467395d4d9f228e3c1f01fb2e4"
 
 [[package]]
+name = "maybe-rayon"
+version = "0.1.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "8ea1f30cedd69f0a2954655f7188c6a834246d2bcf1e315e2ac40c4b24dc9519"
+dependencies = [
+ "cfg-if",
+ "rayon",
+]
+
+[[package]]
 name = "md-5"
 version = "0.9.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -2384,11 +2597,11 @@ dependencies = [
 
 [[package]]
 name = "miniflux_api"
-version = "0.6.0"
+version = "0.7.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "babaa4cdaadf81050c03f93f16375cf305a29b2d6f099d66ff40aae93afcfee2"
+checksum = "2e6e3b827f7d7e0b921d129e27e2621d317bb38005e0f2512092aa33435e5dc0"
 dependencies = [
- "base64 0.21.7",
+ "base64 0.22.0",
  "log",
  "reqwest",
  "serde",
@@ -2399,6 +2612,12 @@ dependencies = [
 ]
 
 [[package]]
+name = "minimal-lexical"
+version = "0.2.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "68354c5c6bd36d73ff3feceb05efa59b6acb7626617f4962be322a825e61f79a"
+
+[[package]]
 name = "miniz_oxide"
 version = "0.7.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -2469,19 +2688,19 @@ dependencies = [
 
 [[package]]
 name = "new_debug_unreachable"
-version = "1.0.4"
+version = "1.0.6"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e4a24736216ec316047a1fc4252e27dabb04218aa4a3f37c6e7ddbf1f9782b54"
+checksum = "650eef8c711430f1a879fdd01d4745a7deea475becfb90269c06775983bbf086"
 
 [[package]]
 name = "news-flash"
 version = "2.3.0-alpha.0"
-source = "git+https://gitlab.com/news_flash/news_flash.git#46cf25eff46655e314ae38b28c04f0f943b3910a"
+source = "git+https://gitlab.com/news_flash/news_flash.git#689cf86ca5eaa4f0aad85d99e7fb0184a2794a96"
 dependencies = [
  "article_scraper",
  "async-trait",
- "base64 0.21.7",
- "bitflags 2.4.2",
+ "base64 0.22.0",
+ "bitflags 2.5.0",
  "bytes",
  "chrono",
  "commafeed_api",
@@ -2538,7 +2757,6 @@ dependencies = [
  "feedly_api",
  "futures",
  "futures-util",
- "gdk-pixbuf",
  "gdk4",
  "gettext-rs",
  "gio",
@@ -2570,8 +2788,8 @@ dependencies = [
 
 [[package]]
 name = "newsblur_api"
-version = "0.2.0"
-source = "git+https://gitlab.com/news-flash/newsblur_api.git#5e7d06f357159d3623964b6b56c7672457c14340"
+version = "0.3.0"
+source = "git+https://gitlab.com/news-flash/newsblur_api.git#1e2b41e52a19e28c41a981fca6823f9447d82df4"
 dependencies = [
  "reqwest",
  "serde",
@@ -2582,11 +2800,11 @@ dependencies = [
 
 [[package]]
 name = "nextcloud_news_api"
-version = "0.3.0"
+version = "0.4.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "488e5fb51484deb6bc5bc22f0b0db4902ae7e391d075f8d1a1b9a9674ea326d3"
+checksum = "97ddbef370f5a6964ba87d2c93d40bcf1f017981d18337a5e177a769bd8c38e1"
 dependencies = [
- "base64 0.21.7",
+ "base64 0.22.0",
  "log",
  "reqwest",
  "serde",
@@ -2603,7 +2821,7 @@ version = "0.28.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "ab2156c4fce2f8df6c499cc1c763e4394b7482525bf2a9701c9d79d215f519e4"
 dependencies = [
- "bitflags 2.4.2",
+ "bitflags 2.5.0",
  "cfg-if",
  "cfg_aliases",
  "libc",
@@ -2611,6 +2829,22 @@ dependencies = [
 ]
 
 [[package]]
+name = "nom"
+version = "7.1.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "d273983c5a657a70a3e8f2a01329822f3b8c8172b73826411a55751e404a0a4a"
+dependencies = [
+ "memchr",
+ "minimal-lexical",
+]
+
+[[package]]
+name = "noop_proc_macro"
+version = "0.3.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "0676bb32a98c1a483ce53e500a81ad9c3d5b3f7c920c28c24e9cb0980d0b5bc8"
+
+[[package]]
 name = "num-bigint"
 version = "0.4.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -2628,6 +2862,17 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "51d515d32fb182ee37cda2ccdcb92950d6a3c2893aa280e540671c2cd0f3b1d9"
 
 [[package]]
+name = "num-derive"
+version = "0.4.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "ed3955f1a9c7c0c15e092f9c887db08b1fc683305fdf6eb6684f22555355e202"
+dependencies = [
+ "proc-macro2",
+ "quote",
+ "syn 2.0.55",
+]
+
+[[package]]
 name = "num-integer"
 version = "0.1.46"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -2637,6 +2882,18 @@ dependencies = [
 ]
 
 [[package]]
+name = "num-rational"
+version = "0.4.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "0638a1c9d0a3c0914158145bc76cff373a75a627e6ecbfb71cbe6f453a5a19b0"
+dependencies = [
+ "autocfg",
+ "num-bigint",
+ "num-integer",
+ "num-traits",
+]
+
+[[package]]
 name = "num-traits"
 version = "0.2.18"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -2717,7 +2974,7 @@ version = "0.10.64"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "95a0481286a310808298130d22dd1fef0fa571e05a8f44ec801801e84b216b1f"
 dependencies = [
- "bitflags 2.4.2",
+ "bitflags 2.5.0",
  "cfg-if",
  "foreign-types",
  "libc",
@@ -2734,7 +2991,7 @@ checksum = "a948666b637a0f465e8564c73e89d4dde00d72d4d473cc972f390fc3dcee7d9c"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.52",
+ "syn 2.0.55",
 ]
 
 [[package]]
@@ -2793,9 +3050,9 @@ dependencies = [
 
 [[package]]
 name = "pango"
-version = "0.19.2"
+version = "0.19.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7809e8af4df8d024a066106b72ca6bc7253a484ae3867041a96103ef8a13188d"
+checksum = "b1264d13deb823cc652f26cfe59afb1ec4b9db2a5bd27c41b738c879cc1bfaa1"
 dependencies = [
  "gio",
  "glib",
@@ -2845,6 +3102,12 @@ dependencies = [
 ]
 
 [[package]]
+name = "paste"
+version = "1.0.14"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "de3145af08024dea9fa9914f381a17b8fc6034dfb00f3a84013f7ff43f29ed4c"
+
+[[package]]
 name = "percent-encoding"
 version = "2.3.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -2889,6 +3152,26 @@ dependencies = [
 ]
 
 [[package]]
+name = "pin-project"
+version = "1.1.5"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "b6bf43b791c5b9e34c3d182969b4abb522f9343702850a2e57f460d00d09b4b3"
+dependencies = [
+ "pin-project-internal",
+]
+
+[[package]]
+name = "pin-project-internal"
+version = "1.1.5"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "2f38a4412a78282e09a2cf38d195ea5420d15ba0602cb375210efbc877243965"
+dependencies = [
+ "proc-macro2",
+ "quote",
+ "syn 2.0.55",
+]
+
+[[package]]
 name = "pin-project-lite"
 version = "0.2.13"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -2932,12 +3215,13 @@ dependencies = [
 
 [[package]]
 name = "polling"
-version = "3.5.0"
+version = "3.6.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "24f040dee2588b4963afb4e420540439d126f73fdacf4a9c486a96d840bac3c9"
+checksum = "e0c976a60b2d7e99d6f229e414670a9b85d13ac305cc6d1e9c134de58c5aaaf6"
 dependencies = [
  "cfg-if",
  "concurrent-queue",
+ "hermit-abi",
  "pin-project-lite",
  "rustix",
  "tracing",
@@ -2997,14 +3281,33 @@ dependencies = [
 
 [[package]]
 name = "proc-macro2"
-version = "1.0.78"
+version = "1.0.79"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e2422ad645d89c99f8f3e6b88a9fdeca7fabeac836b1002371c4367c8f984aae"
+checksum = "e835ff2298f5721608eb1a980ecaee1aef2c132bf95ecc026a11b7bf3c01c02e"
 dependencies = [
  "unicode-ident",
 ]
 
 [[package]]
+name = "profiling"
+version = "1.0.15"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "43d84d1d7a6ac92673717f9f6d1518374ef257669c24ebc5ac25d5033828be58"
+dependencies = [
+ "profiling-procmacros",
+]
+
+[[package]]
+name = "profiling-procmacros"
+version = "1.0.15"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "8021cf59c8ec9c432cfc2526ac6b8aa508ecaf29cd415f271b8406c1b851c3fd"
+dependencies = [
+ "quote",
+ "syn 2.0.55",
+]
+
+[[package]]
 name = "psl-types"
 version = "2.0.11"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -3026,7 +3329,7 @@ version = "0.9.6"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "57206b407293d2bcd3af849ce869d52068623f19e1b5ff8e8778e3309439682b"
 dependencies = [
- "bitflags 2.4.2",
+ "bitflags 2.5.0",
  "memchr",
  "unicase",
 ]
@@ -3062,6 +3365,12 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "a1d01941d82fa2ab50be1e79e6714289dd7cde78eba4c074bc5a4374f650dfe0"
 
 [[package]]
+name = "quick-error"
+version = "2.0.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "a993555f31e5a609f617c12db6250dedcac1b0a85076912c436e6fc9b2c8e6a3"
+
+[[package]]
 name = "quick-xml"
 version = "0.31.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -3131,19 +3440,69 @@ dependencies = [
 ]
 
 [[package]]
+name = "rav1e"
+version = "0.7.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "cd87ce80a7665b1cce111f8a16c1f3929f6547ce91ade6addf4ec86a8dda5ce9"
+dependencies = [
+ "arbitrary",
+ "arg_enum_proc_macro",
+ "arrayvec",
+ "av1-grain",
+ "bitstream-io",
+ "built",
+ "cfg-if",
+ "interpolate_name",
+ "itertools 0.12.1",
+ "libc",
+ "libfuzzer-sys",
+ "log",
+ "maybe-rayon",
+ "new_debug_unreachable",
+ "noop_proc_macro",
+ "num-derive",
+ "num-traits",
+ "once_cell",
+ "paste",
+ "profiling",
+ "rand",
+ "rand_chacha",
+ "simd_helpers",
+ "system-deps",
+ "thiserror",
+ "v_frame",
+ "wasm-bindgen",
+]
+
+[[package]]
+name = "ravif"
+version = "0.11.5"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "bc13288f5ab39e6d7c9d501759712e6969fcc9734220846fc9ed26cae2cc4234"
+dependencies = [
+ "avif-serialize",
+ "imgref",
+ "loop9",
+ "quick-error 2.0.1",
+ "rav1e",
+ "rayon",
+ "rgb",
+]
+
+[[package]]
 name = "raw-cpuid"
 version = "11.0.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "9d86a7c4638d42c44551f4791a20e687dbb4c3de1f33c43dd71e355cd429def1"
 dependencies = [
- "bitflags 2.4.2",
+ "bitflags 2.5.0",
 ]
 
 [[package]]
 name = "rayon"
-version = "1.9.0"
+version = "1.10.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e4963ed1bc86e4f3ee217022bd855b297cef07fb9eac5dfa1f788b220b49b3bd"
+checksum = "b418a60154510ca1a002a752ca9714984e21e4241e804d32555251faf8b78ffa"
 dependencies = [
  "either",
  "rayon-core",
@@ -3187,9 +3546,9 @@ dependencies = [
 
 [[package]]
 name = "regex"
-version = "1.10.3"
+version = "1.10.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b62dbe01f0b06f9d8dc7d49e05a0785f153b00b2c227856282f671e0318c9b15"
+checksum = "c117dbdfde9c8308975b6a18d71f3f385c89461f7b3fb054288ecf2a2058ba4c"
 dependencies = [
  "aho-corasick",
  "memchr",
@@ -3216,9 +3575,9 @@ checksum = "c08c74e62047bb2de4ff487b251e4a92e24f48745648451635cec7d591162d9f"
 
 [[package]]
 name = "reqwest"
-version = "0.11.24"
+version = "0.12.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c6920094eb85afde5e4a138be3f2de8bbdf28000f0029e72c45025a56b042251"
+checksum = "e333b1eb9fe677f6893a9efcb0d277a2d3edd83f358a236b657c32301dc6e5f6"
 dependencies = [
  "async-compression",
  "base64 0.21.7",
@@ -3229,10 +3588,13 @@ dependencies = [
  "futures-core",
  "futures-util",
  "h2",
+ "hickory-resolver",
  "http",
  "http-body",
+ "http-body-util",
  "hyper",
  "hyper-tls",
+ "hyper-util",
  "ipnet",
  "js-sys",
  "log",
@@ -3253,7 +3615,6 @@ dependencies = [
  "tokio-socks",
  "tokio-util",
  "tower-service",
- "trust-dns-resolver",
  "url",
  "wasm-bindgen",
  "wasm-bindgen-futures",
@@ -3269,7 +3630,16 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "52e44394d2086d010551b14b53b1f24e31647570cd1deb0379e2c21b329aba00"
 dependencies = [
  "hostname",
- "quick-error",
+ "quick-error 1.2.3",
+]
+
+[[package]]
+name = "rgb"
+version = "0.8.37"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "05aaa8004b64fd573fc9d002f4e632d51ad4f026c2b5ba95fcb6c2f32c2c47d8"
+dependencies = [
+ "bytemuck",
 ]
 
 [[package]]
@@ -3293,7 +3663,7 @@ dependencies = [
  "quote",
  "rust-embed-utils",
  "shellexpand",
- "syn 2.0.52",
+ "syn 2.0.55",
  "walkdir",
 ]
 
@@ -3324,11 +3694,11 @@ dependencies = [
 
 [[package]]
 name = "rustix"
-version = "0.38.31"
+version = "0.38.32"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6ea3e1a662af26cd7a3ba09c0297a31af215563ecf42817c98df621387f4e949"
+checksum = "65e04861e65f21776e67888bfbea442b3642beaa0138fdb1dd7a84a52dffdb89"
 dependencies = [
- "bitflags 2.4.2",
+ "bitflags 2.5.0",
  "errno",
  "libc",
  "linux-raw-sys",
@@ -3452,7 +3822,7 @@ checksum = "7eb0b34b42edc17f6b7cac84a52a1c5f0e1bb2227e997ca9011ea3dd34e8610b"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.52",
+ "syn 2.0.55",
 ]
 
 [[package]]
@@ -3474,7 +3844,7 @@ checksum = "0b2e6b945e9d3df726b65d6ee24060aff8e3533d431f677a9695db04eff9dfdb"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.52",
+ "syn 2.0.55",
 ]
 
 [[package]]
@@ -3500,9 +3870,9 @@ dependencies = [
 
 [[package]]
 name = "serde_yaml"
-version = "0.9.32"
+version = "0.9.33"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8fd075d994154d4a774f95b51fb96bdc2832b0ea48425c92546073816cda1f2f"
+checksum = "a0623d197252096520c6f2a5e1171ee436e5af99a5d7caa2891e55e61950e6d9"
 dependencies = [
  "indexmap",
  "itoa",
@@ -3571,6 +3941,15 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "d66dc143e6b11c1eddc06d5c423cfc97062865baf299914ab64caa38182078fe"
 
 [[package]]
+name = "simd_helpers"
+version = "0.1.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "95890f873bec569a0362c235787f3aca6e1e887302ba4840839bcc6459c42da6"
+dependencies = [
+ "quote",
+]
+
+[[package]]
 name = "siphasher"
 version = "0.3.11"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -3578,9 +3957,9 @@ checksum = "38b58827f4464d87d377d175e90bf58eb00fd8716ff0a62f80356b5e61555d0d"
 
 [[package]]
 name = "siphasher"
-version = "1.0.0"
+version = "1.0.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "54ac45299ccbd390721be55b412d41931911f654fa99e2cb8bfb57184b2061fe"
+checksum = "56199f7ddabf13fe5074ce809e7d3f42b42ae711800501b5b16ea82ad029c39d"
 
 [[package]]
 name = "skeptic"
@@ -3608,9 +3987,9 @@ dependencies = [
 
 [[package]]
 name = "smallvec"
-version = "1.13.1"
+version = "1.13.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e6ecd384b10a64542d77071bd64bd7b231f4ed5940fba55e98c3de13824cf3d7"
+checksum = "3c5e1a9a646d36c3599cd173a41282daf47c44583ad367b8e6837255952e5c67"
 
 [[package]]
 name = "socket2"
@@ -3702,9 +4081,9 @@ dependencies = [
 
 [[package]]
 name = "syn"
-version = "2.0.52"
+version = "2.0.55"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b699d15b36d1f02c3e7c69f8ffef53de37aefae075d8488d4ba1a7788d574a07"
+checksum = "002a1b3dbf967edfafc32655d0f377ab0bb7b994aa1d32c8cc7e9b8bf3ebb8f0"
 dependencies = [
  "proc-macro2",
  "quote",
@@ -3740,14 +4119,14 @@ dependencies = [
 
 [[package]]
 name = "system-deps"
-version = "6.2.0"
+version = "6.2.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2a2d580ff6a20c55dfb86be5f9c238f67835d0e81cbdea8bf5680e0897320331"
+checksum = "a3e535eb8dded36d55ec13eddacd30dec501792ff23a0b1682c38601b8cf2349"
 dependencies = [
  "cfg-expr",
- "heck",
+ "heck 0.5.0",
  "pkg-config",
- "toml 0.8.10",
+ "toml 0.8.12",
  "version-compare",
 ]
 
@@ -3765,9 +4144,9 @@ checksum = "e1fc403891a21bcfb7c37834ba66a547a8f402146eba7265b5a6d88059c9ff2f"
 
 [[package]]
 name = "temp-dir"
-version = "0.1.12"
+version = "0.1.13"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "dd16aa9ffe15fe021c6ee3766772132c6e98dfa395a167e16864f61a9cfb71d6"
+checksum = "1f227968ec00f0e5322f9b8173c7a0cbcff6181a0a5b28e9892491c286277231"
 
 [[package]]
 name = "tempfile"
@@ -3803,22 +4182,22 @@ dependencies = [
 
 [[package]]
 name = "thiserror"
-version = "1.0.57"
+version = "1.0.58"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1e45bcbe8ed29775f228095caf2cd67af7a4ccf756ebff23a306bf3e8b47b24b"
+checksum = "03468839009160513471e86a034bb2c5c0e4baae3b43f79ffc55c4a5427b3297"
 dependencies = [
  "thiserror-impl",
 ]
 
 [[package]]
 name = "thiserror-impl"
-version = "1.0.57"
+version = "1.0.58"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a953cb265bef375dae3de6663da4d3804eee9682ea80d8e2542529b73c531c81"
+checksum = "c61f3ba182994efc43764a46c018c347bc492c79f024e705f46567b418f6d4f7"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.52",
+ "syn 2.0.55",
 ]
 
 [[package]]
@@ -3924,7 +4303,7 @@ checksum = "5b8a1e28f2deaa14e508979454cb3a223b10b938b45af148bc0986de36f1923b"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.52",
+ "syn 2.0.55",
 ]
 
 [[package]]
@@ -3977,14 +4356,14 @@ dependencies = [
 
 [[package]]
 name = "toml"
-version = "0.8.10"
+version = "0.8.12"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9a9aad4a3066010876e8dcf5a8a06e70a558751117a145c6ce2b82c2e2054290"
+checksum = "e9dd1545e8208b4a5af1aa9bbd0b4cf7e9ea08fabc5d0a5c67fcaafa17433aa3"
 dependencies = [
  "serde",
  "serde_spanned",
  "toml_datetime",
- "toml_edit 0.22.6",
+ "toml_edit 0.22.9",
 ]
 
 [[package]]
@@ -4022,9 +4401,9 @@ dependencies = [
 
 [[package]]
 name = "toml_edit"
-version = "0.22.6"
+version = "0.22.9"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2c1b5fd4128cc8d3e0cb74d4ed9a9cc7c7284becd4df68f5f940e1ad123606f6"
+checksum = "8e40bb779c5187258fd7aad0eb68cb8706a0a81fa712fbea808ab43c4b8374c4"
 dependencies = [
  "indexmap",
  "serde",
@@ -4034,6 +4413,28 @@ dependencies = [
 ]
 
 [[package]]
+name = "tower"
+version = "0.4.13"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "b8fa9be0de6cf49e536ce1851f987bd21a43b771b09473c3549a6c853db37c1c"
+dependencies = [
+ "futures-core",
+ "futures-util",
+ "pin-project",
+ "pin-project-lite",
+ "tokio",
+ "tower-layer",
+ "tower-service",
+ "tracing",
+]
+
+[[package]]
+name = "tower-layer"
+version = "0.3.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "c20c8dbed6283a09604c3e69b4b7eeb54e298b8a600d4d5ecb5ad39de609f1d0"
+
+[[package]]
 name = "tower-service"
 version = "0.3.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -4045,6 +4446,7 @@ version = "0.1.40"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "c3523ab5a71916ccf420eebdf5521fcef02141234bbc0b8a49f2fdc4544364ef"
 dependencies = [
+ "log",
  "pin-project-lite",
  "tracing-attributes",
  "tracing-core",
@@ -4058,7 +4460,7 @@ checksum = "34704c8d6ebcbc939824180af020566b01a7c01f80641264eba0999f6c2b6be7"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.52",
+ "syn 2.0.55",
 ]
 
 [[package]]
@@ -4077,52 +4479,6 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "859eb650cfee7434994602c3a68b25d77ad9e68c8a6cd491616ef86661382eb3"
 
 [[package]]
-name = "trust-dns-proto"
-version = "0.23.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3119112651c157f4488931a01e586aa459736e9d6046d3bd9105ffb69352d374"
-dependencies = [
- "async-trait",
- "cfg-if",
- "data-encoding",
- "enum-as-inner",
- "futures-channel",
- "futures-io",
- "futures-util",
- "idna 0.4.0",
- "ipnet",
- "once_cell",
- "rand",
- "smallvec",
- "thiserror",
- "tinyvec",
- "tokio",
- "tracing",
- "url",
-]
-
-[[package]]
-name = "trust-dns-resolver"
-version = "0.23.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "10a3e6c3aff1718b3c73e395d1f35202ba2ffa847c6a62eea0db8fb4cfe30be6"
-dependencies = [
- "cfg-if",
- "futures-util",
- "ipconfig",
- "lru-cache",
- "once_cell",
- "parking_lot",
- "rand",
- "resolv-conf",
- "smallvec",
- "thiserror",
- "tokio",
- "tracing",
- "trust-dns-proto",
-]
-
-[[package]]
 name = "try-lock"
 version = "0.2.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -4195,9 +4551,9 @@ dependencies = [
 
 [[package]]
 name = "unsafe-libyaml"
-version = "0.2.10"
+version = "0.2.11"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ab4c90930b95a82d00dc9e9ac071b4991924390d46cbd0dfe566148667605e4b"
+checksum = "673aac59facbab8a9007c7f6108d11f63b603f7cabff99fabf650fea5c32b861"
 
 [[package]]
 name = "url"
@@ -4219,14 +4575,25 @@ checksum = "09cc8ee72d2a9becf2f2febe0205bbed8fc6615b7cb429ad062dc7b7ddd036a9"
 
 [[package]]
 name = "uuid"
-version = "1.7.0"
+version = "1.8.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f00cc9702ca12d3c81455259621e676d0f7251cec66a21e98fe2e9a37db93b2a"
+checksum = "a183cf7feeba97b4dd1c0d46788634f6221d87fa961b305bed08c851829efcc0"
 dependencies = [
  "getrandom",
 ]
 
 [[package]]
+name = "v_frame"
+version = "0.3.8"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "d6f32aaa24bacd11e488aa9ba66369c7cd514885742c9fe08cfe85884db3e92b"
+dependencies = [
+ "aligned-vec",
+ "num-traits",
+ "wasm-bindgen",
+]
+
+[[package]]
 name = "vcpkg"
 version = "0.2.15"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -4234,9 +4601,9 @@ checksum = "accd4ea62f7bb7a82fe23066fb0957d48ef677f6eeb8215f372f52e48bb32426"
 
 [[package]]
 name = "version-compare"
-version = "0.1.1"
+version = "0.2.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "579a42fc0b8e0c63b76519a339be31bed574929511fa53c1a3acae26eb258f29"
+checksum = "852e951cb7832cb45cb1169900d19760cfa39b82bc0ea9c0e5a14ae88411c98b"
 
 [[package]]
 name = "version_check"
@@ -4290,7 +4657,7 @@ dependencies = [
  "once_cell",
  "proc-macro2",
  "quote",
- "syn 2.0.52",
+ "syn 2.0.55",
  "wasm-bindgen-shared",
 ]
 
@@ -4324,7 +4691,7 @@ checksum = "e94f17b526d0a461a191c78ea52bbce64071ed5c04c9ffe424dcb38f74171bb7"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.52",
+ "syn 2.0.55",
  "wasm-bindgen-backend",
  "wasm-bindgen-shared",
 ]
@@ -4710,6 +5077,12 @@ dependencies = [
 ]
 
 [[package]]
+name = "zune-core"
+version = "0.4.12"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "3f423a2c17029964870cfaabb1f13dfab7d092a62a29a89264f4d36990ca414a"
+
+[[package]]
 name = "zune-inflate"
 version = "0.2.54"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -4719,6 +5092,15 @@ dependencies = [
 ]
 
 [[package]]
+name = "zune-jpeg"
+version = "0.4.11"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "ec866b44a2a1fd6133d363f073ca1b179f438f99e7e5bfb1e33f7181facfe448"
+dependencies = [
+ "zune-core",
+]
+
+[[package]]
 name = "zvariant"
 version = "4.0.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
diff --git a/pkgs/applications/networking/feedreaders/newsflash/default.nix b/pkgs/applications/networking/feedreaders/newsflash/default.nix
index e6bc4c841c17..38ca720498eb 100644
--- a/pkgs/applications/networking/feedreaders/newsflash/default.nix
+++ b/pkgs/applications/networking/feedreaders/newsflash/default.nix
@@ -2,6 +2,7 @@
 , stdenv
 , rustPlatform
 , fetchFromGitLab
+, substituteAll
 , cargo
 , meson
 , ninja
@@ -25,21 +26,20 @@
 
 stdenv.mkDerivation (finalAttrs: {
   pname = "newsflash";
-  version = "3.1.6";
+  version = "3.2.0";
 
   src = fetchFromGitLab {
     owner = "news-flash";
     repo = "news_flash_gtk";
     rev = "refs/tags/v.${finalAttrs.version}";
-    hash = "sha256-zEf61aKtiuTCmhzkfVkTLtIRCb4DVXVtI+9Az9dU9HE=";
+    hash = "sha256-buXFQ/QAFOcdcywlacySuq8arqPEJIti1nK+yl3yWck=";
   };
 
   cargoDeps = rustPlatform.importCargoLock {
     lockFile = ./Cargo.lock;
     outputHashes = {
-      "news-flash-2.3.0-alpha.0" = "sha256-Gr7EyAbIFABZx9GR/WvshF0vfJaul7wz4pro2EbwSM8=";
-      "newsblur_api-0.2.0" = "sha256-eysCB19znQF8mRwQ64nSp6KuvJ1Trot4g4WCdQDedo8=";
-      "article_scraper-2.0.0" = "sha256-URiteEJ1kXoGfRopGoRI/4iPbzd+F9bQaMJKpkrh/sE=";
+      "news-flash-2.3.0-alpha.0" = "sha256-WITvnqeEDp793AlZ3gj8Tg0dfccuOj0Us5H5FaEtkxk=";
+      "newsblur_api-0.3.0" = "sha256-m2178zdJzeskl3BQpZr6tlxTAADehxz8uYcZzi15nhQ=";
     };
   };
 
@@ -50,6 +50,12 @@ stdenv.mkDerivation (finalAttrs: {
     # be included in $out. They will generated by xdg.mime.enable &
     # gtk.iconCache.enable instead.
     ./no-post-install.patch
+
+    # Replace placeholder "0.0.0" project version with nixpkgs version
+    (substituteAll {
+      src = ./hardcode-version.patch;
+      inherit (finalAttrs) version;
+    })
   ];
 
   postPatch = ''
diff --git a/pkgs/applications/networking/feedreaders/newsflash/hardcode-version.patch b/pkgs/applications/networking/feedreaders/newsflash/hardcode-version.patch
new file mode 100644
index 000000000000..972ec7464e08
--- /dev/null
+++ b/pkgs/applications/networking/feedreaders/newsflash/hardcode-version.patch
@@ -0,0 +1,12 @@
+diff --git a/meson.build b/meson.build
+index 55a5048a..1c648189 100644
+--- a/meson.build
++++ b/meson.build
+@@ -1,6 +1,6 @@
+ project(
+   'newsflash', 'rust',
+-  version: '0.0.0',
++  version: '@version@',
+   license: 'GPLv3',
+ )
+ 
diff --git a/pkgs/applications/networking/feedreaders/rssguard/default.nix b/pkgs/applications/networking/feedreaders/rssguard/default.nix
index 499b8a2893d0..1a3124f64ad5 100644
--- a/pkgs/applications/networking/feedreaders/rssguard/default.nix
+++ b/pkgs/applications/networking/feedreaders/rssguard/default.nix
@@ -4,7 +4,7 @@
 , cmake
 , qtwebengine
 , qttools
-, wrapGAppsHook
+, wrapGAppsHook3
 , wrapQtAppsHook
 }:
 
@@ -20,7 +20,7 @@ stdenv.mkDerivation rec {
   };
 
   buildInputs =  [ qtwebengine qttools ];
-  nativeBuildInputs = [ cmake wrapGAppsHook wrapQtAppsHook ];
+  nativeBuildInputs = [ cmake wrapGAppsHook3 wrapQtAppsHook ];
   qmakeFlags = [ "CONFIG+=release" ];
 
   meta = with lib; {
diff --git a/pkgs/applications/networking/feedreaders/russ/default.nix b/pkgs/applications/networking/feedreaders/russ/default.nix
index 6780b58f0d01..fdc0336c316f 100644
--- a/pkgs/applications/networking/feedreaders/russ/default.nix
+++ b/pkgs/applications/networking/feedreaders/russ/default.nix
@@ -3,6 +3,7 @@
 , fetchFromGitHub
 , rustPlatform
 , xorg
+, darwin
 }:
 
 rustPlatform.buildRustPackage {
@@ -21,6 +22,11 @@ rustPlatform.buildRustPackage {
   # tests are network based :(
   doCheck = false;
 
+  buildInputs = lib.optionals stdenv.isDarwin (with darwin.apple_sdk.frameworks; [
+    CoreServices
+    AppKit
+  ]);
+
   meta = with lib; {
     description = "A TUI RSS reader with vim-like controls and a local-first, offline-first focus";
     mainProgram = "russ";
@@ -28,6 +34,5 @@ rustPlatform.buildRustPackage {
     license = with licenses; [ agpl3Only ];
     maintainers = with maintainers; [ blusk ];
     changelog = "https://github.com/ckampfe/russ/blob/master/CHANGELOG.md";
-    broken = stdenv.isDarwin;
   };
 }
diff --git a/pkgs/applications/networking/flexget/default.nix b/pkgs/applications/networking/flexget/default.nix
index 75a64404db93..b2349dff44cf 100644
--- a/pkgs/applications/networking/flexget/default.nix
+++ b/pkgs/applications/networking/flexget/default.nix
@@ -6,7 +6,7 @@
 
 python3.pkgs.buildPythonApplication rec {
   pname = "flexget";
-  version = "3.11.30";
+  version = "3.11.33";
   pyproject = true;
 
   # Fetch from GitHub in order to use `requirements.in`
@@ -14,7 +14,7 @@ python3.pkgs.buildPythonApplication rec {
     owner = "Flexget";
     repo = "Flexget";
     rev = "refs/tags/v${version}";
-    hash = "sha256-msvNZ3kE48dNnhtUWLGxulb2iZ78hhyg7fVL2OSOdyY=";
+    hash = "sha256-kgTlz3cUztIUKKqmUpUpEwu5qyjE0fCarG/EKJ1PoPc=";
   };
 
   postPatch = ''
diff --git a/pkgs/applications/networking/ftp/filezilla/default.nix b/pkgs/applications/networking/ftp/filezilla/default.nix
index 351fafc136ff..10cf454dc659 100644
--- a/pkgs/applications/networking/ftp/filezilla/default.nix
+++ b/pkgs/applications/networking/ftp/filezilla/default.nix
@@ -12,7 +12,7 @@
 , sqlite
 , tinyxml
 , boost
-, wrapGAppsHook
+, wrapGAppsHook3
 , wxGTK32
 , gtk3
 , xdg-utils
@@ -34,7 +34,7 @@ stdenv.mkDerivation rec {
     "--disable-autoupdatecheck"
   ];
 
-  nativeBuildInputs = [ autoreconfHook pkg-config wrapGAppsHook ];
+  nativeBuildInputs = [ autoreconfHook pkg-config wrapGAppsHook3 ];
 
   buildInputs = [
     boost
diff --git a/pkgs/applications/networking/ftp/taxi/default.nix b/pkgs/applications/networking/ftp/taxi/default.nix
index 75e3b43a1a27..b29ee472f146 100644
--- a/pkgs/applications/networking/ftp/taxi/default.nix
+++ b/pkgs/applications/networking/ftp/taxi/default.nix
@@ -14,7 +14,7 @@
 , pkg-config
 , python3
 , vala
-, wrapGAppsHook
+, wrapGAppsHook3
 }:
 
 stdenv.mkDerivation rec {
@@ -35,7 +35,7 @@ stdenv.mkDerivation rec {
     pkg-config
     python3
     vala
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
diff --git a/pkgs/applications/networking/gnmic/default.nix b/pkgs/applications/networking/gnmic/default.nix
index 223c5c4beb02..4ecc4b044055 100644
--- a/pkgs/applications/networking/gnmic/default.nix
+++ b/pkgs/applications/networking/gnmic/default.nix
@@ -8,16 +8,16 @@
 
 buildGoModule rec {
   pname = "gnmic";
-  version = "0.36.2";
+  version = "0.37.0";
 
   src = fetchFromGitHub {
     owner = "openconfig";
     repo = pname;
     rev = "v${version}";
-    hash = "sha256-PUOIKPkzM6riiXR8R1Io0QI/qr6HaexfFgbp2Hx2SOo=";
+    hash = "sha256-PktDdwtdCHLgLVpCRLi+Rna7dO2JeAAT6myFesIhpYc=";
   };
 
-  vendorHash = "sha256-zrG/rNoYtfVNN50g41txLQIcBAKi1yE5p1TODrDiXzU=";
+  vendorHash = "sha256-gxtVvh39VqJgS5VetnLpUyKJE8DcUZgn4MA8zdD/ccU=";
 
   ldflags = [
     "-s" "-w"
diff --git a/pkgs/applications/networking/gnome-network-displays/default.nix b/pkgs/applications/networking/gnome-network-displays/default.nix
index 413b1f3b3daf..0de66fd3ee33 100644
--- a/pkgs/applications/networking/gnome-network-displays/default.nix
+++ b/pkgs/applications/networking/gnome-network-displays/default.nix
@@ -28,11 +28,11 @@
 
 stdenv.mkDerivation (finalAttrs: {
   pname = "gnome-network-displays";
-  version = "0.92.1";
+  version = "0.92.2";
 
   src = fetchurl {
     url = "mirror://gnome/sources/${finalAttrs.pname}/${lib.versions.majorMinor finalAttrs.version}/${finalAttrs.pname}-${finalAttrs.version}.tar.xz";
-    sha256 = "sha256-aoH9SpD7AfM6c6moMCCuQ1igkcrKgqAf1iLlpuXtaic=";
+    sha256 = "sha256-df35UJnRolVSiYcArpnrglxNKbTKA3LAGsNwlDF7cj4=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/applications/networking/gns3/server.nix b/pkgs/applications/networking/gns3/server.nix
index f9939000f744..3e4764a14502 100644
--- a/pkgs/applications/networking/gns3/server.nix
+++ b/pkgs/applications/networking/gns3/server.nix
@@ -4,16 +4,17 @@
 }:
 
 { lib
-, python3
+, python3Packages
 , fetchFromGitHub
 , pkgsStatic
 , stdenv
 , nixosTests
 , testers
+, util-linux
 , gns3-server
 }:
 
-python3.pkgs.buildPythonApplication {
+python3Packages.buildPythonApplication {
   pname = "gns3-server";
   inherit version;
 
@@ -29,7 +30,7 @@ python3.pkgs.buildPythonApplication {
     cp ${pkgsStatic.busybox}/bin/busybox gns3server/compute/docker/resources/bin/busybox
   '';
 
-  propagatedBuildInputs = with python3.pkgs; [
+  propagatedBuildInputs = with python3Packages; [
     aiofiles
     aiohttp
     aiohttp-cors
@@ -55,6 +56,9 @@ python3.pkgs.buildPythonApplication {
     rm $out/bin/gns3loopback
   '';
 
+  # util-linux (script program) is required for Docker support
+  makeWrapperArgs = [ "--suffix PATH : ${lib.makeBinPath [ util-linux ]}" ];
+
   doCheck = true;
 
   # Otherwise tests will fail to create directory
@@ -63,7 +67,7 @@ python3.pkgs.buildPythonApplication {
     export HOME=$(mktemp -d)
   '';
 
-  checkInputs = with python3.pkgs; [
+  checkInputs = with python3Packages; [
     pytest-aiohttp
     pytest-rerunfailures
     (pytestCheckHook.override { pytest = pytest_7; })
diff --git a/pkgs/applications/networking/hpmyroom/default.nix b/pkgs/applications/networking/hpmyroom/default.nix
index a177256432d3..78fdb5077818 100644
--- a/pkgs/applications/networking/hpmyroom/default.nix
+++ b/pkgs/applications/networking/hpmyroom/default.nix
@@ -4,11 +4,11 @@
 }:
 mkDerivation rec {
   pname = "hpmyroom";
-  version = "12.9.0.0601";
+  version = "12.13.0.0749";
 
   src = fetchurl {
     url = "https://www.myroom.hpe.com/downloadfiles/${pname}-${version}.x86_64.rpm";
-    sha256 = "sha256-1BC4EjCCLAuCIOV+jJn3pfKKW7UJI5tfC+wg0FUgB64=";
+    sha256 = "sha256-Ff3j14rC2ZHhNJLPxvKn9Sxyv351HuHbggclwOuFfX4=";
   };
 
   nativeBuildInputs = [
@@ -56,5 +56,6 @@ mkDerivation rec {
     # TODO: A Darwin binary is available upstream
     platforms = [ "x86_64-linux" ];
     mainProgram = "hpmyroom";
+    broken = true; # requires libpng15
   };
 }
diff --git a/pkgs/applications/networking/ids/suricata/default.nix b/pkgs/applications/networking/ids/suricata/default.nix
index 5789e29263fc..823a455fe857 100644
--- a/pkgs/applications/networking/ids/suricata/default.nix
+++ b/pkgs/applications/networking/ids/suricata/default.nix
@@ -33,11 +33,11 @@
 in
 stdenv.mkDerivation rec {
   pname = "suricata";
-  version = "7.0.4";
+  version = "7.0.5";
 
   src = fetchurl {
     url = "https://www.openinfosecfoundation.org/download/${pname}-${version}.tar.gz";
-    hash = "sha256-ZABgEgAkvnDb6B9uxu/HLkYlD8s2IZ3/Z+ZBciD/Ibc=";
+    hash = "sha256-H/tWgVjyZcCFVEZL+4VOZWjvaDvwMxKSO1HyjFB5Ck4=";
   };
 
   nativeBuildInputs = [
@@ -49,6 +49,10 @@ stdenv.mkDerivation rec {
   ++ lib.optionals rustSupport [ rustc cargo ]
   ;
 
+  propagatedBuildInputs = with python.pkgs; [
+    pyyaml
+  ];
+
   buildInputs = [
     elfutils
     jansson
diff --git a/pkgs/applications/networking/ids/zeek/default.nix b/pkgs/applications/networking/ids/zeek/default.nix
index da70f6e6ede4..6beba3f4c6b9 100644
--- a/pkgs/applications/networking/ids/zeek/default.nix
+++ b/pkgs/applications/networking/ids/zeek/default.nix
@@ -26,11 +26,11 @@ let
 in
 stdenv.mkDerivation rec {
   pname = "zeek";
-  version = "6.2.0";
+  version = "6.2.1";
 
   src = fetchurl {
     url = "https://download.zeek.org/zeek-${version}.tar.gz";
-    hash = "sha256-Y1Z+j5+Ffqho5Q2O8uQgNxsxPE7gqHaxe1SZEJDA0oY=";
+    hash = "sha256-ZOOlK9mfZVrfxvgFREgqcRcSs18EMpADD8Y4Ev391Bw=";
   };
 
   strictDeps = true;
diff --git a/pkgs/applications/networking/instant-messengers/alfaview/default.nix b/pkgs/applications/networking/instant-messengers/alfaview/default.nix
index 666140c8dec2..f1c8367b91c3 100644
--- a/pkgs/applications/networking/instant-messengers/alfaview/default.nix
+++ b/pkgs/applications/networking/instant-messengers/alfaview/default.nix
@@ -1,22 +1,22 @@
-{ stdenv, lib, fetchurl, dpkg, autoPatchelfHook, makeWrapper, wrapGAppsHook
+{ stdenv, lib, fetchurl, dpkg, autoPatchelfHook, makeWrapper, wrapGAppsHook3
 , alsa-lib, dbus, fontconfig, freetype, glib, gst_all_1, libGL
 , libinput, libpulseaudio, libsecret, libtiff, libxkbcommon
 , mesa, openssl, systemd, xorg }:
 
 stdenv.mkDerivation rec {
   pname = "alfaview";
-  version = "9.9.1";
+  version = "9.10.1";
 
   src = fetchurl {
     url = "https://assets.alfaview.com/stable/linux/deb/${pname}_${version}.deb";
-    hash = "sha256-GZLIVpXQ22W4JykdLJ7pTogOFhDaiukgsLa2E7giiaU=";
+    hash = "sha256-k58v8l/LE0lWQFbQ6p2XGiRjMMwzArW3KVbIxlKC1SA=";
   };
 
   nativeBuildInputs = [
     dpkg
     makeWrapper
     autoPatchelfHook
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
diff --git a/pkgs/applications/networking/instant-messengers/armcord/default.nix b/pkgs/applications/networking/instant-messengers/armcord/default.nix
index c52ed6fe5cc5..a52b77905a51 100644
--- a/pkgs/applications/networking/instant-messengers/armcord/default.nix
+++ b/pkgs/applications/networking/instant-messengers/armcord/default.nix
@@ -4,7 +4,7 @@
 , autoPatchelfHook
 , dpkg
 , makeBinaryWrapper
-, wrapGAppsHook
+, wrapGAppsHook3
 , alsa-lib
 , at-spi2-atk
 , at-spi2-core
@@ -55,7 +55,7 @@ stdenv.mkDerivation rec {
         };
       }.${stdenv.hostPlatform.system} or (throw "Unsupported system: ${stdenv.hostPlatform.system}");
 
-  nativeBuildInputs = [ autoPatchelfHook dpkg makeBinaryWrapper wrapGAppsHook ];
+  nativeBuildInputs = [ autoPatchelfHook dpkg makeBinaryWrapper wrapGAppsHook3 ];
 
   dontWrapGApps = true;
 
diff --git a/pkgs/applications/networking/instant-messengers/beeper/default.nix b/pkgs/applications/networking/instant-messengers/beeper/default.nix
index 06e2a17d564e..3651408c8b7f 100644
--- a/pkgs/applications/networking/instant-messengers/beeper/default.nix
+++ b/pkgs/applications/networking/instant-messengers/beeper/default.nix
@@ -2,7 +2,6 @@
 , stdenvNoCC
 , fetchurl
 , appimageTools
-, libsecret
 , makeWrapper
 , writeShellApplication
 , curl
@@ -11,15 +10,15 @@
 }:
 let
   pname = "beeper";
-  version = "3.103.36";
+  version = "3.104.7";
   name = "${pname}-${version}";
   src = fetchurl {
-    url = "https://download.todesktop.com/2003241lzgn20jd/beeper-3.103.36-build-240411hw9xbpc7s-x86_64.AppImage";
-    hash = "sha256-qxu/a8eeWeOKCsno51J2IHUXTXH82KXBNajfoEkkid8=";
+    url = "https://download.todesktop.com/2003241lzgn20jd/beeper-3.104.7-build-2405024h1b4qoap-x86_64.AppImage";
+    hash = "sha256-VjN9bKxFokExEjMGz42d/VVwVWJzowI42ONsNyXEbnc=";
   };
   appimage = appimageTools.wrapType2 {
     inherit version pname src;
-    extraPkgs = pkgs: with pkgs; [ libsecret ];
+    extraPkgs = pkgs: [ pkgs.libsecret ];
   };
   appimageContents = appimageTools.extractType2 {
     inherit version pname src;
diff --git a/pkgs/applications/networking/instant-messengers/caprine-bin/build-from-appimage.nix b/pkgs/applications/networking/instant-messengers/caprine-bin/build-from-appimage.nix
index cceea293adbd..ed0e978c1524 100644
--- a/pkgs/applications/networking/instant-messengers/caprine-bin/build-from-appimage.nix
+++ b/pkgs/applications/networking/instant-messengers/caprine-bin/build-from-appimage.nix
@@ -1,5 +1,4 @@
-{ lib
-, fetchurl
+{ fetchurl
 , appimageTools
 , xorg
 , pname
@@ -27,8 +26,6 @@ in
     export LC_ALL=C.UTF-8
   '';
 
-  extraPkgs = pkgs: appimageTools.defaultFhsEnvArgs.multiPkgs pkgs;
-
   extraInstallCommands = ''
     mkdir -p $out/share
     "${xorg.lndir}/bin/lndir" -silent "${extracted}/usr/share" "$out/share"
diff --git a/pkgs/applications/networking/instant-messengers/cinny-desktop/default.nix b/pkgs/applications/networking/instant-messengers/cinny-desktop/default.nix
index 841df5a4cd61..95956b3f2560 100644
--- a/pkgs/applications/networking/instant-messengers/cinny-desktop/default.nix
+++ b/pkgs/applications/networking/instant-messengers/cinny-desktop/default.nix
@@ -7,7 +7,7 @@
 , cargo-tauri
 , cinny
 , copyDesktopItems
-, wrapGAppsHook
+, wrapGAppsHook3
 , pkg-config
 , openssl
 , dbus
@@ -65,7 +65,7 @@ rustPlatform.buildRustPackage rec {
 
   nativeBuildInputs = [
     copyDesktopItems
-    wrapGAppsHook
+    wrapGAppsHook3
     pkg-config
     cargo-tauri
   ];
diff --git a/pkgs/applications/networking/instant-messengers/cinny/default.nix b/pkgs/applications/networking/instant-messengers/cinny/default.nix
index db3b48e4a2a3..87e3d1731401 100644
--- a/pkgs/applications/networking/instant-messengers/cinny/default.nix
+++ b/pkgs/applications/networking/instant-messengers/cinny/default.nix
@@ -29,6 +29,11 @@ buildNpmPackage rec {
 
   npmDepsHash = "sha256-4R+To2LhcnEM9x1noo6MhCckyBKgPWiAi7zgDqAmaN0=";
 
+  # Fix error: no member named 'aligned_alloc' in the global namespace
+  env.NIX_CFLAGS_COMPILE = lib.optionalString (
+    stdenv.isDarwin && lib.versionOlder stdenv.hostPlatform.darwinSdkVersion "11.0"
+  ) "-D_LIBCPP_HAS_NO_LIBRARY_ALIGNED_ALLOCATION=1";
+
   nativeBuildInputs = [
     jq
     python3
diff --git a/pkgs/applications/networking/instant-messengers/coyim/default.nix b/pkgs/applications/networking/instant-messengers/coyim/default.nix
index 8223f9598b61..47fb0f161063 100644
--- a/pkgs/applications/networking/instant-messengers/coyim/default.nix
+++ b/pkgs/applications/networking/instant-messengers/coyim/default.nix
@@ -7,7 +7,7 @@
 , gdk-pixbuf
 , glib
 , gnome
-, wrapGAppsHook
+, wrapGAppsHook3
 , gtk3
 }:
 
@@ -24,7 +24,7 @@ buildGoPackage rec {
     sha256 = "sha256-PmB6POaHKEXzIAaz3lAbUOhtVOzrj5oXRk90giYo6SI=";
   };
 
-  nativeBuildInputs = [ pkg-config wrapGAppsHook ];
+  nativeBuildInputs = [ pkg-config wrapGAppsHook3 ];
 
   buildInputs = [ glib cairo gdk-pixbuf gtk3 gnome.adwaita-icon-theme ];
 
diff --git a/pkgs/applications/networking/instant-messengers/dino/default.nix b/pkgs/applications/networking/instant-messengers/dino/default.nix
index 19e84a5f3079..428715b6f1b7 100644
--- a/pkgs/applications/networking/instant-messengers/dino/default.nix
+++ b/pkgs/applications/networking/instant-messengers/dino/default.nix
@@ -34,6 +34,12 @@ stdenv.mkDerivation rec {
     sha256 = "sha256-smy/t6wTCnG0kuRFKwyeLENKqOQDhL0fZTtj3BHo6kw=";
   };
 
+  patches = [
+    # fixes build failure https://github.com/dino/dino/issues/1576
+    # backport of https://github.com/dino/dino/commit/657502955567dd538e56f300e075c7db52e25d74
+    ./fix-compile-new-vala-c.diff
+  ];
+
   postPatch = ''
     # don't overwrite manually set version information
     substituteInPlace CMakeLists.txt \
diff --git a/pkgs/applications/networking/instant-messengers/dino/fix-compile-new-vala-c.diff b/pkgs/applications/networking/instant-messengers/dino/fix-compile-new-vala-c.diff
new file mode 100644
index 000000000000..b8277f32afc9
--- /dev/null
+++ b/pkgs/applications/networking/instant-messengers/dino/fix-compile-new-vala-c.diff
@@ -0,0 +1,16 @@
+diff --git a/plugins/gpgme-vala/vapi/gpgme_public.vapi b/plugins/gpgme-vala/vapi/gpgme_public.vapi
+index bcf12569..b32efd03 100644
+--- a/plugins/gpgme-vala/vapi/gpgme_public.vapi
++++ b/plugins/gpgme-vala/vapi/gpgme_public.vapi
+@@ -22,9 +22,9 @@ public class Key {
+     public string issuer_name;
+     public string chain_id;
+     public Validity owner_trust;
+-    [CCode(array_null_terminated = true)]
++    [CCode(array_length = false, array_null_terminated = true)]
+     public SubKey[] subkeys;
+-    [CCode(array_null_terminated = true)]
++    [CCode(array_length = false, array_null_terminated = true)]
+     public UserID[] uids;
+     public KeylistMode keylist_mode;
+     // public string fpr; // requires gpgme >= 1.7.0
diff --git a/pkgs/applications/networking/instant-messengers/discord/default.nix b/pkgs/applications/networking/instant-messengers/discord/default.nix
index b4e0aca9cc58..863e27823bf5 100644
--- a/pkgs/applications/networking/instant-messengers/discord/default.nix
+++ b/pkgs/applications/networking/instant-messengers/discord/default.nix
@@ -2,52 +2,52 @@
 let
   versions =
     if stdenv.isLinux then {
-      stable = "0.0.51";
-      ptb = "0.0.81";
-      canary = "0.0.369";
-      development = "0.0.17";
+      stable = "0.0.54";
+      ptb = "0.0.84";
+      canary = "0.0.382";
+      development = "0.0.18";
     } else {
-      stable = "0.0.302";
-      ptb = "0.0.110";
-      canary = "0.0.486";
-      development = "0.0.39";
+      stable = "0.0.303";
+      ptb = "0.0.113";
+      canary = "0.0.492";
+      development = "0.0.40";
     };
   version = versions.${branch};
   srcs = rec {
     x86_64-linux = {
       stable = fetchurl {
         url = "https://dl.discordapp.net/apps/linux/${version}/discord-${version}.tar.gz";
-        hash = "sha256-w8zLeaqJXdbI67X/UDxSLQxZei5eraa/BkMZa+GDpYk=";
+        hash = "sha256-ruaotzJ+dvqNUV/e4xpJ1rorGiC4Im57BSSiddP8ZF8=";
       };
       ptb = fetchurl {
         url = "https://dl-ptb.discordapp.net/apps/linux/${version}/discord-ptb-${version}.tar.gz";
-        hash = "sha256-/kM23y4Hx/0HwIOQvd+4Y429s/6Q+coa27hgI2U3EcU=";
+        hash = "sha256-0bOsmy2ldZT7S4tVOkihE5eLiujXC/ugF8CKXfBXHNU=";
       };
       canary = fetchurl {
         url = "https://dl-canary.discordapp.net/apps/linux/${version}/discord-canary-${version}.tar.gz";
-        hash = "sha256-Ohfp5ypvdmjr5rYR1usdVoEuVwOALRozysIjT/v75Qs=";
+        hash = "sha256-MXMq4V+21KPHoCUs5x1rNRbkfw6+3cF7xSSNguiqOfc=";
       };
       development = fetchurl {
         url = "https://dl-development.discordapp.net/apps/linux/${version}/discord-development-${version}.tar.gz";
-        hash = "sha256-AmbaMVi/or+9QLuQO5u5btgKeKdrfo7bzZgGLILwgqo=";
+        hash = "sha256-SoJ4/jXl0axQyeqv8CPSzM+lBsYq/QelHctRAeoscdA=";
       };
     };
     x86_64-darwin = {
       stable = fetchurl {
         url = "https://dl.discordapp.net/apps/osx/${version}/Discord.dmg";
-        hash = "sha256-Xt0ef+ogGlPA4ebxuAsGQKeMVDoTB58jCRcyM1fHjYE=";
+        hash = "sha256-B4r0W//d3761ufQr4PAt4ZuPMrOC7Zfo8Q3lHqKxkJ0=";
       };
       ptb = fetchurl {
         url = "https://dl-ptb.discordapp.net/apps/osx/${version}/DiscordPTB.dmg";
-        hash = "sha256-hkRO/4YD1j4gsp+r3+md3ND/xtNmdutJiXlY3UIecIY=";
+        hash = "sha256-hdT33jK0nHvY3rIh9i1eDq5j46xS9xInRxzGCUP/hi8=";
       };
       canary = fetchurl {
         url = "https://dl-canary.discordapp.net/apps/osx/${version}/DiscordCanary.dmg";
-        hash = "sha256-c7KNWsV+pultD+HqRNonSOW9PCGx1AajCfnc94Dokwc=";
+        hash = "sha256-74XQu4PGW3eW4wPICGsAVlR4SQkDXJWZ1p/G7Bwq950=";
       };
       development = fetchurl {
         url = "https://dl-development.discordapp.net/apps/osx/${version}/DiscordDevelopment.dmg";
-        hash = "sha256-nZV9LK3eGpXK/2wQKJBn3K2Ud6uBk8aammkeE00rWx0=";
+        hash = "sha256-uPz3uWPAqp3JeL9E+coMrb2Hc+Zn0YGF9Jw3BTKYRlw=";
       };
     };
     aarch64-darwin = x86_64-darwin;
@@ -69,14 +69,12 @@ let
     then ./linux.nix
     else ./darwin.nix;
 
-  openasar = callPackage ./openasar.nix { };
-
   packages = (
     builtins.mapAttrs
       (_: value:
         callPackage package (value
           // {
-          inherit src version openasar branch;
+          inherit src version branch;
           meta = meta // { mainProgram = value.binaryName; };
         }))
       {
diff --git a/pkgs/applications/networking/instant-messengers/discord/linux.nix b/pkgs/applications/networking/instant-messengers/discord/linux.nix
index 1d7a64b892a0..eb3f29cf2a39 100644
--- a/pkgs/applications/networking/instant-messengers/discord/linux.nix
+++ b/pkgs/applications/networking/instant-messengers/discord/linux.nix
@@ -1,5 +1,5 @@
 { pname, version, src, meta, binaryName, desktopName, autoPatchelfHook
-, makeDesktopItem, lib, stdenv, wrapGAppsHook, makeShellWrapper, alsa-lib, at-spi2-atk
+, makeDesktopItem, lib, stdenv, wrapGAppsHook3, makeShellWrapper, alsa-lib, at-spi2-atk
 , at-spi2-core, atk, cairo, cups, dbus, expat, fontconfig, freetype, gdk-pixbuf
 , glib, gtk3, libcxx, libdrm, libglvnd, libnotify, libpulseaudio, libuuid, libX11
 , libXScrnSaver, libXcomposite, libXcursor, libXdamage, libXext, libXfixes
@@ -44,7 +44,7 @@ stdenv.mkDerivation rec {
     libxshmfence
     mesa
     nss
-    wrapGAppsHook
+    wrapGAppsHook3
     makeShellWrapper
   ];
 
diff --git a/pkgs/applications/networking/instant-messengers/element/pin.nix b/pkgs/applications/networking/instant-messengers/element/pin.nix
index 516c1182e22f..6c30f9a19bf6 100644
--- a/pkgs/applications/networking/instant-messengers/element/pin.nix
+++ b/pkgs/applications/networking/instant-messengers/element/pin.nix
@@ -1,9 +1,9 @@
 {
-  "version" = "1.11.65";
+  "version" = "1.11.66";
   "hashes" = {
-    "desktopSrcHash" = "sha256-aRlTM8j+lMB97QsmRlcvSZqLJ/2vmQIz1viTIoycmYA=";
-    "desktopYarnHash" = "08scs091k0i6lwfpw0id4jxmmdix0jxvnm9fyjwzrsrzh6q6899y";
-    "webSrcHash" = "sha256-aE7pmqLOa9aCaSaSOpX2NqcY0OKBjL5mZbKModbKxZg=";
-    "webYarnHash" = "1b9q8v5jz6w2vvfkgq8nzajzs798ja2ff3wjv6d5m7sri8il7f0s";
+    "desktopSrcHash" = "sha256-QrFk6NIHvWgQuJz33CEU6rwmgtGZ9w3L9vqj/rdCkE8=";
+    "desktopYarnHash" = "1kin5z6cjgsljdhh5f4fq2782ld86pza6hz58rq1zwbd187nzbwz";
+    "webSrcHash" = "sha256-xWaK2tHsuZmiwp7HExX83zKL8Z0ScRCEOnfxePWk2KI=";
+    "webYarnHash" = "1ykjpsg4d4kykd6w7c0yjyg8ljpc9czzwjx7ab27i84ys6pknx3q";
   };
 }
diff --git a/pkgs/applications/networking/instant-messengers/feishu/default.nix b/pkgs/applications/networking/instant-messengers/feishu/default.nix
index 8900f26d90a4..6d89bca9e4fa 100644
--- a/pkgs/applications/networking/instant-messengers/feishu/default.nix
+++ b/pkgs/applications/networking/instant-messengers/feishu/default.nix
@@ -55,7 +55,7 @@
 , stdenv
 , systemd
 , wayland
-, wrapGAppsHook
+, wrapGAppsHook3
 , xdg-utils
 
 # for custom command line arguments, e.g. "--use-gl=desktop"
diff --git a/pkgs/applications/networking/instant-messengers/ferdium/default.nix b/pkgs/applications/networking/instant-messengers/ferdium/default.nix
index 294564dc952f..7d1d6b825ea8 100644
--- a/pkgs/applications/networking/instant-messengers/ferdium/default.nix
+++ b/pkgs/applications/networking/instant-messengers/ferdium/default.nix
@@ -6,14 +6,14 @@ let
     aarch64-linux = "arm64";
   }."${stdenv.hostPlatform.system}" or (throw "Unsupported system: ${stdenv.hostPlatform.system}");
   hash = {
-    amd64-linux_hash = "sha256-RH8iHqJ0Nd3wkXmv/ZGX5JeWtxyJtVLVb0tz6tnkjrw=";
-    arm64-linux_hash = "sha256-0gvkabuxRqkMeyZiOSyT6C7v767+uCrsXE8qk0y0mYM=";
+    amd64-linux_hash = "sha256-Q5fUMQQTQKgUkakmsiBFH2UwJdk/XV8wpQi6uRHi90U=";
+    arm64-linux_hash = "sha256-axFIwz1AtzxO1+XkmCflHqi/CdsmeqD6QAxepATMqm4=";
   }."${arch}-linux_hash";
 in
 mkFranzDerivation rec {
   pname = "ferdium";
   name = "Ferdium";
-  version = "6.7.2";
+  version = "6.7.3";
   src = fetchurl {
     url = "https://github.com/ferdium/ferdium-app/releases/download/v${version}/Ferdium-linux-${version}-${arch}.deb";
     inherit hash;
diff --git a/pkgs/applications/networking/instant-messengers/flare-signal/Cargo.lock b/pkgs/applications/networking/instant-messengers/flare-signal/Cargo.lock
index f345596ff115..2c3c6fd52ecb 100644
--- a/pkgs/applications/networking/instant-messengers/flare-signal/Cargo.lock
+++ b/pkgs/applications/networking/instant-messengers/flare-signal/Cargo.lock
@@ -18,12 +18,6 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "f26201604c87b1e01bd3d98f8d5d9a8fcbb815e8cedb41ffccbeb4bf593a35fe"
 
 [[package]]
-name = "adler32"
-version = "1.2.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "aae1277d39aeec15cb388266ecc24b11c80469deae6067e17a1a7aa9e5c1f234"
-
-[[package]]
 name = "aead"
 version = "0.5.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -76,9 +70,9 @@ dependencies = [
 
 [[package]]
 name = "aho-corasick"
-version = "1.1.2"
+version = "1.1.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b2969dcb958b36655471fc61f7e416fa76033bdd4bfed0678d8fee1e2d07a1f0"
+checksum = "8e60d3430d3a69478ad0993f19238d2df97c507009a52b3c10addcd7f6bcb916"
 dependencies = [
  "memchr",
 ]
@@ -100,9 +94,9 @@ dependencies = [
 
 [[package]]
 name = "anstream"
-version = "0.6.12"
+version = "0.6.13"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "96b09b5178381e0874812a9b157f7fe84982617e48f71f4e3235482775e5b540"
+checksum = "d96bd03f33fe50a863e394ee9718a706f988b9079b20c3784fb726e7678b62fb"
 dependencies = [
  "anstyle",
  "anstyle-parse",
@@ -148,9 +142,9 @@ dependencies = [
 
 [[package]]
 name = "anyhow"
-version = "1.0.80"
+version = "1.0.81"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5ad32ce52e4161730f7098c077cd2ed6229b5804ccf99e5366be1ab72a98b4e1"
+checksum = "0952808a6c2afd1aa8947271f3a60f1a6763c7b912d210184c5149b5cf147247"
 
 [[package]]
 name = "arrayref"
@@ -166,17 +160,17 @@ checksum = "96d30a06541fbafbc7f82ed10c06164cfbd2c401138f6addd8404629c4b16711"
 
 [[package]]
 name = "ashpd"
-version = "0.6.8"
+version = "0.8.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4ac22eda5891cc086690cb6fa10121c0390de0e3b04eb269f2d766b00d3f2d81"
+checksum = "dd884d7c72877a94102c3715f3b1cd09ff4fac28221add3e57cfbe25c236d093"
 dependencies = [
  "enumflags2",
  "futures-channel",
  "futures-util",
  "gdk4-wayland",
  "gdk4-x11",
+ "glib",
  "gtk4",
- "once_cell",
  "rand",
  "serde",
  "serde_repr",
@@ -187,12 +181,14 @@ dependencies = [
 
 [[package]]
 name = "async-broadcast"
-version = "0.5.1"
+version = "0.7.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7c48ccdbf6ca6b121e0f586cbc0e73ae440e56c67c30fa0873b4e110d9c26d2b"
+checksum = "258b52a1aa741b9f09783b2d86cf0aeeb617bbf847f6933340a39644227acbdb"
 dependencies = [
- "event-listener 2.5.3",
+ "event-listener 5.2.0",
+ "event-listener-strategy 0.5.1",
  "futures-core",
+ "pin-project-lite",
 ]
 
 [[package]]
@@ -202,46 +198,26 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "f28243a43d821d11341ab73c80bed182dc015c514b951616cf79bd4af39af0c3"
 dependencies = [
  "concurrent-queue",
- "event-listener 5.1.0",
- "event-listener-strategy 0.5.0",
+ "event-listener 5.2.0",
+ "event-listener-strategy 0.5.1",
  "futures-core",
  "pin-project-lite",
 ]
 
 [[package]]
 name = "async-io"
-version = "1.13.0"
+version = "2.3.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0fc5b45d93ef0529756f812ca52e44c221b35341892d3dcc34132ac02f3dd2af"
-dependencies = [
- "async-lock 2.8.0",
- "autocfg",
- "cfg-if",
- "concurrent-queue",
- "futures-lite 1.13.0",
- "log",
- "parking",
- "polling 2.8.0",
- "rustix 0.37.27",
- "slab",
- "socket2 0.4.10",
- "waker-fn",
-]
-
-[[package]]
-name = "async-io"
-version = "2.3.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8f97ab0c5b00a7cdbe5a371b9a782ee7be1316095885c8a4ea1daf490eb0ef65"
+checksum = "dcccb0f599cfa2f8ace422d3555572f47424da5648a4382a9dd0310ff8210884"
 dependencies = [
  "async-lock 3.3.0",
  "cfg-if",
  "concurrent-queue",
  "futures-io",
- "futures-lite 2.2.0",
+ "futures-lite",
  "parking",
- "polling 3.5.0",
- "rustix 0.38.31",
+ "polling",
+ "rustix",
  "slab",
  "tracing",
  "windows-sys 0.52.0",
@@ -269,30 +245,33 @@ dependencies = [
 
 [[package]]
 name = "async-process"
-version = "1.8.1"
+version = "2.2.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ea6438ba0a08d81529c69b36700fa2f95837bfe3e776ab39cde9c14d9149da88"
+checksum = "d999d925640d51b662b7b4e404224dd81de70f4aa4a199383c2c5e5b86885fa3"
 dependencies = [
- "async-io 1.13.0",
- "async-lock 2.8.0",
+ "async-channel",
+ "async-io",
+ "async-lock 3.3.0",
  "async-signal",
+ "async-task",
  "blocking",
  "cfg-if",
- "event-listener 3.1.0",
- "futures-lite 1.13.0",
- "rustix 0.38.31",
- "windows-sys 0.48.0",
+ "event-listener 5.2.0",
+ "futures-lite",
+ "rustix",
+ "tracing",
+ "windows-sys 0.52.0",
 ]
 
 [[package]]
 name = "async-recursion"
-version = "1.0.5"
+version = "1.1.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5fd55a5ba1179988837d24ab4c7cc8ed6efdeff578ede0416b4225a5fca35bd0"
+checksum = "30c5ef0ede93efbf733c1a727f3b6b5a1060bbedd5600183e66f6e4be4af0ec5"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.50",
+ "syn 2.0.57",
 ]
 
 [[package]]
@@ -301,13 +280,13 @@ version = "0.2.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "9e47d90f65a225c4527103a8d747001fc56e375203592b25ad103e1ca13124c5"
 dependencies = [
- "async-io 2.3.1",
+ "async-io",
  "async-lock 2.8.0",
  "atomic-waker",
  "cfg-if",
  "futures-core",
  "futures-io",
- "rustix 0.38.31",
+ "rustix",
  "signal-hook-registry",
  "slab",
  "windows-sys 0.48.0",
@@ -321,13 +300,13 @@ checksum = "fbb36e985947064623dbd357f727af08ffd077f93d696782f3c56365fa2e2799"
 
 [[package]]
 name = "async-trait"
-version = "0.1.77"
+version = "0.1.79"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c980ee35e870bd1a4d2c8294d4c04d0499e67bca1e4b5cefcc693c2fa00caea9"
+checksum = "a507401cad91ec6a857ed5513a2073c82a9b9048762b885bb98655b306964681"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.50",
+ "syn 2.0.57",
 ]
 
 [[package]]
@@ -355,21 +334,21 @@ checksum = "1505bd5d3d116872e7271a6d4e16d81d0c8570876c8de68093a09ac269d8aac0"
 
 [[package]]
 name = "autocfg"
-version = "1.1.0"
+version = "1.2.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d468802bab17cbc0cc575e9b053f41e72aa36bfa6b7f55e3529ffa43161b97fa"
+checksum = "f1fdabc7756949593fe60f30ec81974b613357de856987752631dea1e3394c80"
 
 [[package]]
 name = "backtrace"
-version = "0.3.69"
+version = "0.3.71"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2089b7e3f35b9dd2d0ed921ead4f6d318c27680d4a5bd167b3ee120edb105837"
+checksum = "26b05800d2e817c8b3b4b54abd461726265fa9789ae34330622f2db9ee696f9d"
 dependencies = [
  "addr2line",
  "cc",
  "cfg-if",
  "libc",
- "miniz_oxide 0.7.2",
+ "miniz_oxide",
  "object",
  "rustc-demangle",
 ]
@@ -403,15 +382,15 @@ checksum = "bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a"
 
 [[package]]
 name = "bitflags"
-version = "2.4.2"
+version = "2.5.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ed570934406eb16438a4e976b1b4500774099c13b8cb96eec99f620f05090ddf"
+checksum = "cf4b9d6a944f767f8e5e0db018570623c85f3d925ac718db4e06d0187adb21c1"
 
 [[package]]
 name = "blake3"
-version = "1.5.0"
+version = "1.5.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0231f06152bf547e9c2b5194f247cd97aacf6dcd8b15d8e5ec0663f64580da87"
+checksum = "30cca6d3674597c30ddf2c587bf8d9d65c9a84d2326d941cc79c9842dfe0ef52"
 dependencies = [
  "arrayref",
  "arrayvec",
@@ -453,34 +432,34 @@ dependencies = [
  "async-channel",
  "async-lock 3.3.0",
  "async-task",
- "fastrand 2.0.1",
+ "fastrand",
  "futures-io",
- "futures-lite 2.2.0",
+ "futures-lite",
  "piper",
  "tracing",
 ]
 
 [[package]]
 name = "blurhash"
-version = "0.2.0"
+version = "0.2.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "aa5ddff25bcae3e2ac5a93506cc050c730163fd92d319556861375b225164dde"
+checksum = "565b78e03039f24994c5bc87ff793987be98a9ff59fa4851b72bc2e630001c9d"
 dependencies = [
  "gdk-pixbuf",
- "image 0.23.14",
+ "image",
 ]
 
 [[package]]
 name = "bumpalo"
-version = "3.15.1"
+version = "3.15.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c764d619ca78fccbf3069b37bd7af92577f044bb15236036662d79b6559f25b7"
+checksum = "7ff69b9dd49fd426c69a0db9fc04dd934cdb6645ff000864d98f7e2af8830eaa"
 
 [[package]]
 name = "bytemuck"
-version = "1.14.3"
+version = "1.15.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a2ef034f05691a48569bd920a96c81b9d91bbad1ab5ac7c4616c1f6ef36cb79f"
+checksum = "5d6d68c57235a3a081186990eca2867354726650f42f7516ca50c28d6281fd15"
 
 [[package]]
 name = "byteorder"
@@ -490,29 +469,28 @@ checksum = "1fd0f2584146f6f2ef48085050886acf353beff7305ebd1ae69500e27c67f64b"
 
 [[package]]
 name = "bytes"
-version = "1.5.0"
+version = "1.6.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a2bd12c1caf447e69cd4528f47f94d203fd2582878ecb9e9465484c4148a8223"
+checksum = "514de17de45fdb8dc022b1a7975556c53c86f9f0aa5f534b98977b171857c2c9"
 
 [[package]]
 name = "cairo-rs"
-version = "0.18.5"
+version = "0.19.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8ca26ef0159422fb77631dc9d17b102f253b876fe1586b03b803e63a309b4ee2"
+checksum = "2650f66005301bd33cc486dec076e1293c4cecf768bc7ba9bf5d2b1be339b99c"
 dependencies = [
- "bitflags 2.4.2",
+ "bitflags 2.5.0",
  "cairo-sys-rs",
  "glib",
  "libc",
- "once_cell",
  "thiserror",
 ]
 
 [[package]]
 name = "cairo-sys-rs"
-version = "0.18.2"
+version = "0.19.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "685c9fa8e590b8b3d678873528d83411db17242a73fccaed827770ea0fedda51"
+checksum = "fd3bb3119664efbd78b5e6c93957447944f16bdbced84c17a9f41c7829b81e64"
 dependencies = [
  "glib-sys",
  "libc",
@@ -530,10 +508,11 @@ dependencies = [
 
 [[package]]
 name = "cc"
-version = "1.0.86"
+version = "1.0.90"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7f9fa1897e4325be0d68d48df6aa1a71ac2ed4d27723887e7754192705350730"
+checksum = "8cd6604a82acf3039f1144f54b8eb34e91ffba622051189e71b781822d5ee1f5"
 dependencies = [
+ "jobserver",
  "libc",
 ]
 
@@ -554,6 +533,12 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd"
 
 [[package]]
+name = "cfg_aliases"
+version = "0.1.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "fd16c4719339c4530435d38e511904438d07cce7950afa3718a84ac36c10e89e"
+
+[[package]]
 name = "chacha20"
 version = "0.9.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -579,15 +564,15 @@ dependencies = [
 
 [[package]]
 name = "chrono"
-version = "0.4.34"
+version = "0.4.37"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5bc015644b92d5890fab7489e49d21f879d5c990186827d42ec511919404f38b"
+checksum = "8a0d04d43504c61aa6c7531f1871dd0d418d91130162063b789da00fd7057a5e"
 dependencies = [
  "android-tzdata",
  "iana-time-zone",
  "num-traits",
  "serde",
- "windows-targets 0.52.0",
+ "windows-targets 0.52.4",
 ]
 
 [[package]]
@@ -715,8 +700,8 @@ dependencies = [
 
 [[package]]
 name = "curve25519-dalek"
-version = "4.0.0"
-source = "git+https://github.com/signalapp/curve25519-dalek?tag=signal-curve25519-4.0.0#463e5c7cba32561ffee8a281c4455ff3c25660d4"
+version = "4.1.1"
+source = "git+https://github.com/signalapp/curve25519-dalek?tag=signal-curve25519-4.1.1#a12ab4e58455bb3dc7cd73a0f9f3443507b2854b"
 dependencies = [
  "cfg-if",
  "cpufeatures",
@@ -733,11 +718,11 @@ dependencies = [
 [[package]]
 name = "curve25519-dalek-derive"
 version = "0.1.0"
-source = "git+https://github.com/signalapp/curve25519-dalek?tag=signal-curve25519-4.0.0#463e5c7cba32561ffee8a281c4455ff3c25660d4"
+source = "git+https://github.com/signalapp/curve25519-dalek?tag=signal-curve25519-4.1.1#a12ab4e58455bb3dc7cd73a0f9f3443507b2854b"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.50",
+ "syn 2.0.57",
 ]
 
 [[package]]
@@ -747,24 +732,25 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "7e962a19be5cfc3f3bf6dd8f61eb50107f356ad6270fbb3ed41476571db78be5"
 
 [[package]]
-name = "deflate"
-version = "0.8.6"
+name = "derivative"
+version = "2.2.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "73770f8e1fe7d64df17ca66ad28994a0a623ea497fa69486e14984e715c5d174"
+checksum = "fcc3dd5e9e9c0b295d6e1e4d811fb6f157d5ffd784b8d202fc62eac8035a770b"
 dependencies = [
- "adler32",
- "byteorder",
+ "proc-macro2",
+ "quote",
+ "syn 1.0.109",
 ]
 
 [[package]]
-name = "derivative"
-version = "2.2.0"
+name = "derive-where"
+version = "1.2.7"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "fcc3dd5e9e9c0b295d6e1e4d811fb6f157d5ffd784b8d202fc62eac8035a770b"
+checksum = "62d671cc41a825ebabc75757b62d3d168c577f9149b2d49ece1dad1f72119d25"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 1.0.109",
+ "syn 2.0.57",
 ]
 
 [[package]]
@@ -786,7 +772,7 @@ checksum = "487585f4d0c6655fe74905e2504d8ad6908e4db67f744eb140876906c2f3175d"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.50",
+ "syn 2.0.57",
 ]
 
 [[package]]
@@ -802,6 +788,12 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "11157ac094ffbdde99aa67b23417ebdd801842852b500e395a45a9c0aac03e4a"
 
 [[package]]
+name = "endi"
+version = "1.1.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "a3d8a32ae18130a3c84dd492d4215c3d913c3b07c6b63c2eb3eb7ff1101ab7bf"
+
+[[package]]
 name = "enumflags2"
 version = "0.7.9"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -819,7 +811,7 @@ checksum = "5c785274071b1b420972453b306eeca06acf4633829db4223b58a2a8c5953bc4"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.50",
+ "syn 2.0.57",
 ]
 
 [[package]]
@@ -834,9 +826,9 @@ dependencies = [
 
 [[package]]
 name = "env_logger"
-version = "0.11.2"
+version = "0.11.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6c012a26a7f605efc424dd53697843a72be7dc86ad2d01f7814337794a12231d"
+checksum = "38b35839ba51819680ba087cd351788c9a3c476841207e0b8cee0b04722343b9"
 dependencies = [
  "anstream",
  "anstyle",
@@ -883,17 +875,6 @@ checksum = "0206175f82b8d6bf6652ff7d71a1e27fd2e4efde587fd368662814d6ec1d9ce0"
 
 [[package]]
 name = "event-listener"
-version = "3.1.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d93877bcde0eb80ca09131a08d23f0a5c18a620b01db137dba666d18cd9b30c2"
-dependencies = [
- "concurrent-queue",
- "parking",
- "pin-project-lite",
-]
-
-[[package]]
-name = "event-listener"
 version = "4.0.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "67b215c49b2b248c855fb73579eb1f4f26c38ffdc12973e20e07b91d78d5646e"
@@ -905,9 +886,9 @@ dependencies = [
 
 [[package]]
 name = "event-listener"
-version = "5.1.0"
+version = "5.2.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b7ad6fd685ce13acd6d9541a30f6db6567a7a24c9ffd4ba2955d29e3f22c8b27"
+checksum = "2b5fb89194fa3cad959b833185b3063ba881dbfc7030680b314250779fb4cc91"
 dependencies = [
  "concurrent-queue",
  "parking",
@@ -926,11 +907,11 @@ dependencies = [
 
 [[package]]
 name = "event-listener-strategy"
-version = "0.5.0"
+version = "0.5.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "feedafcaa9b749175d5ac357452a9d41ea2911da598fde46ce1fe02c37751291"
+checksum = "332f51cb23d20b0de8458b86580878211da09bcd4503cb579c225b3d124cabb3"
 dependencies = [
- "event-listener 5.1.0",
+ "event-listener 5.2.0",
  "pin-project-lite",
 ]
 
@@ -944,7 +925,7 @@ dependencies = [
  "flume",
  "half",
  "lebe",
- "miniz_oxide 0.7.2",
+ "miniz_oxide",
  "rayon-core",
  "smallvec",
  "zune-inflate",
@@ -952,18 +933,9 @@ dependencies = [
 
 [[package]]
 name = "fastrand"
-version = "1.9.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e51093e27b0797c359783294ca4f0a911c270184cb10f85783b118614a1501be"
-dependencies = [
- "instant",
-]
-
-[[package]]
-name = "fastrand"
-version = "2.0.1"
+version = "2.0.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "25cbce373ec4653f1a01a31e8a5e5ec0c622dc27ff9c4e6606eefef5cbbed4a5"
+checksum = "658bd65b1cf4c852a3cc96f18a8ce7b5640f6b703f905c7d74532294c2a63984"
 
 [[package]]
 name = "fdeflate"
@@ -976,9 +948,9 @@ dependencies = [
 
 [[package]]
 name = "fiat-crypto"
-version = "0.1.20"
+version = "0.2.7"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e825f6987101665dea6ec934c09ec6d721de7bc1bf92248e1d5810c8cd636b77"
+checksum = "c007b1ae3abe1cb6f85a16305acd418b7ca6343b953633fee2b76d8f108b830f"
 
 [[package]]
 name = "field-offset"
@@ -986,7 +958,7 @@ version = "0.3.6"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "38e2275cc4e4fc009b0669731a1e5ab7ebf11f469eaede2bab9309a5b4d6057f"
 dependencies = [
- "memoffset 0.9.0",
+ "memoffset",
  "rustc_version",
 ]
 
@@ -998,18 +970,16 @@ checksum = "0ce7134b9999ecaf8bcd65542e436736ef32ddca1b3e06094cb6ec5755203b80"
 
 [[package]]
 name = "flare"
-version = "0.13.0"
+version = "0.14.3"
 dependencies = [
  "ashpd",
- "async-trait",
  "blurhash",
  "env_logger",
  "err-derive",
  "futures",
- "gdk4",
  "gettext-rs",
  "gtk4",
- "image 0.24.8",
+ "image",
  "lazy_static",
  "libadwaita",
  "libsignal-service",
@@ -1017,12 +987,12 @@ dependencies = [
  "log",
  "once_cell",
  "oo7",
+ "phonenumber",
  "presage",
  "presage-store-sled",
  "qrcode-generator",
  "rand",
  "regex",
- "sled",
  "sourceview5",
  "tokio",
  "tracing",
@@ -1037,7 +1007,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "46303f565772937ffe1d394a4fac6f411c6013172fadde9dcdb1e147a086940e"
 dependencies = [
  "crc32fast",
- "miniz_oxide 0.7.2",
+ "miniz_oxide",
 ]
 
 [[package]]
@@ -1130,27 +1100,15 @@ checksum = "a44623e20b9681a318efdd71c299b6b222ed6f231972bfe2f224ebad6311f0c1"
 
 [[package]]
 name = "futures-lite"
-version = "1.13.0"
+version = "2.3.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "49a9d51ce47660b1e808d3c990b4709f2f415d928835a17dfd16991515c46bce"
+checksum = "52527eb5074e35e9339c6b4e8d12600c7128b68fb25dcb9fa9dec18f7c25f3a5"
 dependencies = [
- "fastrand 1.9.0",
+ "fastrand",
  "futures-core",
  "futures-io",
- "memchr",
  "parking",
  "pin-project-lite",
- "waker-fn",
-]
-
-[[package]]
-name = "futures-lite"
-version = "2.2.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "445ba825b27408685aaecefd65178908c36c6e96aaf6d8599419d46e624192ba"
-dependencies = [
- "futures-core",
- "pin-project-lite",
 ]
 
 [[package]]
@@ -1161,7 +1119,7 @@ checksum = "87750cf4b7a4c0625b1529e4c543c2182106e4dedc60a2a6455e00d212c489ac"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.50",
+ "syn 2.0.57",
 ]
 
 [[package]]
@@ -1205,22 +1163,21 @@ dependencies = [
 
 [[package]]
 name = "gdk-pixbuf"
-version = "0.18.5"
+version = "0.19.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "50e1f5f1b0bfb830d6ccc8066d18db35c487b1b2b1e8589b5dfe9f07e8defaec"
+checksum = "f6a23f8a0b5090494fd04924662d463f8386cc678dd3915015a838c1a3679b92"
 dependencies = [
  "gdk-pixbuf-sys",
  "gio",
  "glib",
  "libc",
- "once_cell",
 ]
 
 [[package]]
 name = "gdk-pixbuf-sys"
-version = "0.18.0"
+version = "0.19.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3f9839ea644ed9c97a34d129ad56d38a25e6756f99f3a88e15cd39c20629caf7"
+checksum = "3dcbd04c1b2c4834cc008b4828bc917d062483b88d26effde6342e5622028f96"
 dependencies = [
  "gio-sys",
  "glib-sys",
@@ -1231,9 +1188,9 @@ dependencies = [
 
 [[package]]
 name = "gdk4"
-version = "0.7.3"
+version = "0.8.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7edb019ad581f8ecf8ea8e4baa6df7c483a95b5a59be3140be6a9c3b0c632af6"
+checksum = "9100b25604183f2fd97f55ef087fae96ab4934d7215118a35303e422688e6e4b"
 dependencies = [
  "cairo-rs",
  "gdk-pixbuf",
@@ -1246,9 +1203,9 @@ dependencies = [
 
 [[package]]
 name = "gdk4-sys"
-version = "0.7.2"
+version = "0.8.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "dbab43f332a3cf1df9974da690b5bb0e26720ed09a228178ce52175372dcfef0"
+checksum = "d0b76874c40bb8d1c7d03a7231e23ac75fa577a456cd53af32ec17ec8f121626"
 dependencies = [
  "cairo-sys-rs",
  "gdk-pixbuf-sys",
@@ -1263,9 +1220,9 @@ dependencies = [
 
 [[package]]
 name = "gdk4-wayland"
-version = "0.7.2"
+version = "0.8.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0db9102ff11e55bd65e153c1192abc21ddfa45ede90622e423d4e4a0e5d5f313"
+checksum = "13fc91be838be766ff038221e068e05e4083f3b6cf48ef1f5251ba28f98f80bf"
 dependencies = [
  "gdk4",
  "gdk4-wayland-sys",
@@ -1276,9 +1233,9 @@ dependencies = [
 
 [[package]]
 name = "gdk4-wayland-sys"
-version = "0.7.2"
+version = "0.8.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d48159be256ae0212d5a2b9884627197d08082c7168b28775b53a0f9885d5624"
+checksum = "c5cdc6c5cb3f64ba9b810782077939a0fc8d82e809f0147054bbe41910ac2b51"
 dependencies = [
  "glib-sys",
  "libc",
@@ -1287,9 +1244,9 @@ dependencies = [
 
 [[package]]
 name = "gdk4-x11"
-version = "0.7.2"
+version = "0.8.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "28c9bbf8ea1ea8469e74c3fdfafc142c9e14810a27f89ddb01b5e9076a60a450"
+checksum = "bff98d3e61807ecc1ddd15cf746b9de14fb6499fc259ca9e8d87d92e8901c7db"
 dependencies = [
  "gdk4",
  "gdk4-x11-sys",
@@ -1300,9 +1257,9 @@ dependencies = [
 
 [[package]]
 name = "gdk4-x11-sys"
-version = "0.7.2"
+version = "0.8.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a3de1709370758192369f5329aa593847797f1c693c95e8a261e9b2e06a5f125"
+checksum = "30406b31a7c355c73c504c9b31d35806397944165730eca7db46f0409abf8f8f"
 dependencies = [
  "gdk4-sys",
  "glib-sys",
@@ -1353,9 +1310,9 @@ dependencies = [
 
 [[package]]
 name = "ghash"
-version = "0.5.0"
+version = "0.5.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d930750de5717d2dd0b8c0d42c076c0e884c81a73e6cab859bbd2339c71e3e40"
+checksum = "f0d8a4362ccb29cb0b265253fb0a2728f592895ee6854fd9bc13f2ffda266ff1"
 dependencies = [
  "opaque-debug",
  "polyval",
@@ -1364,19 +1321,9 @@ dependencies = [
 
 [[package]]
 name = "gif"
-version = "0.11.4"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3edd93c6756b4dfaf2709eafcc345ba2636565295c198a9cfbf75fa5e3e00b06"
-dependencies = [
- "color_quant",
- "weezl",
-]
-
-[[package]]
-name = "gif"
-version = "0.12.0"
+version = "0.13.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "80792593675e051cf94a4b111980da2ba60d4a83e43e0048c5693baab3977045"
+checksum = "3fb2d69b19215e18bb912fa30f7ce15846e301408695e44e0ef719f1da9e19f2"
 dependencies = [
  "color_quant",
  "weezl",
@@ -1390,9 +1337,9 @@ checksum = "4271d37baee1b8c7e4b708028c57d816cf9d2434acb33a549475f78c181f6253"
 
 [[package]]
 name = "gio"
-version = "0.18.4"
+version = "0.19.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d4fc8f532f87b79cbc51a79748f16a6828fb784be93145a322fa14d06d354c73"
+checksum = "c64947d08d7fbb03bf8ad1f25a8ac6cf4329bc772c9b7e5abe7bf9493c81194f"
 dependencies = [
  "futures-channel",
  "futures-core",
@@ -1401,7 +1348,6 @@ dependencies = [
  "gio-sys",
  "glib",
  "libc",
- "once_cell",
  "pin-project-lite",
  "smallvec",
  "thiserror",
@@ -1409,24 +1355,24 @@ dependencies = [
 
 [[package]]
 name = "gio-sys"
-version = "0.18.1"
+version = "0.19.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "37566df850baf5e4cb0dfb78af2e4b9898d817ed9263d1090a2df958c64737d2"
+checksum = "bcf8e1d9219bb294636753d307b030c1e8a032062cba74f493c431a5c8b81ce4"
 dependencies = [
  "glib-sys",
  "gobject-sys",
  "libc",
  "system-deps",
- "winapi",
+ "windows-sys 0.52.0",
 ]
 
 [[package]]
 name = "glib"
-version = "0.18.5"
+version = "0.19.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "233daaf6e83ae6a12a52055f568f9d7cf4671dabb78ff9560ab6da230ce00ee5"
+checksum = "01e191cc1af1f35b9699213107068cd3fe05d9816275ac118dc785a0dd8faebf"
 dependencies = [
- "bitflags 2.4.2",
+ "bitflags 2.5.0",
  "futures-channel",
  "futures-core",
  "futures-executor",
@@ -1438,30 +1384,28 @@ dependencies = [
  "gobject-sys",
  "libc",
  "memchr",
- "once_cell",
  "smallvec",
  "thiserror",
 ]
 
 [[package]]
 name = "glib-macros"
-version = "0.18.5"
+version = "0.19.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0bb0228f477c0900c880fd78c8759b95c7636dbd7842707f49e132378aa2acdc"
+checksum = "9972bb91643d589c889654693a4f1d07697fdcb5d104b5c44fb68649ba1bf68d"
 dependencies = [
- "heck 0.4.1",
- "proc-macro-crate 2.0.2",
- "proc-macro-error",
+ "heck 0.5.0",
+ "proc-macro-crate 3.1.0",
  "proc-macro2",
  "quote",
- "syn 2.0.50",
+ "syn 2.0.57",
 ]
 
 [[package]]
 name = "glib-sys"
-version = "0.18.1"
+version = "0.19.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "063ce2eb6a8d0ea93d2bf8ba1957e78dbab6be1c2220dd3daca57d5a9d869898"
+checksum = "630f097773d7c7a0bb3258df4e8157b47dc98bbfa0e60ad9ab56174813feced4"
 dependencies = [
  "libc",
  "system-deps",
@@ -1475,9 +1419,9 @@ checksum = "d2fabcfbdc87f4758337ca535fb41a6d701b65693ce38287d856d1674551ec9b"
 
 [[package]]
 name = "gobject-sys"
-version = "0.18.0"
+version = "0.19.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0850127b514d1c4a4654ead6dedadb18198999985908e6ffe4436f53c785ce44"
+checksum = "c85e2b1080b9418dd0c58b498da3a5c826030343e0ef07bde6a955d28de54979"
 dependencies = [
  "glib-sys",
  "libc",
@@ -1486,9 +1430,9 @@ dependencies = [
 
 [[package]]
 name = "graphene-rs"
-version = "0.18.1"
+version = "0.19.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3b2228cda1505613a7a956cca69076892cfbda84fc2b7a62b94a41a272c0c401"
+checksum = "99e4d388e96c5f29e2b2f67045d229ddf826d0a8d6d282f94ed3b34452222c91"
 dependencies = [
  "glib",
  "graphene-sys",
@@ -1497,9 +1441,9 @@ dependencies = [
 
 [[package]]
 name = "graphene-sys"
-version = "0.18.1"
+version = "0.19.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "cc4144cee8fc8788f2a9b73dc5f1d4e1189d1f95305c4cb7bd9c1af1cfa31f59"
+checksum = "236ed66cc9b18d8adf233716f75de803d0bf6fc806f60d14d948974a12e240d0"
 dependencies = [
  "glib-sys",
  "libc",
@@ -1509,9 +1453,9 @@ dependencies = [
 
 [[package]]
 name = "gsk4"
-version = "0.7.3"
+version = "0.8.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0d958e351d2f210309b32d081c832d7de0aca0b077aa10d88336c6379bd01f7e"
+checksum = "c65036fc8f99579e8cb37b12487969b707ab23ec8ab953682ff347cbd15d396e"
 dependencies = [
  "cairo-rs",
  "gdk4",
@@ -1524,9 +1468,9 @@ dependencies = [
 
 [[package]]
 name = "gsk4-sys"
-version = "0.7.3"
+version = "0.8.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "12bd9e3effea989f020e8f1ff3fa3b8c63ba93d43b899c11a118868853a56d55"
+checksum = "bd24c814379f9c3199dc53e52253ee8d0f657eae389ab282c330505289d24738"
 dependencies = [
  "cairo-sys-rs",
  "gdk4-sys",
@@ -1540,9 +1484,9 @@ dependencies = [
 
 [[package]]
 name = "gtk4"
-version = "0.7.3"
+version = "0.8.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5aeb51aa3e9728575a053e1f43543cd9992ac2477e1b186ad824fd4adfb70842"
+checksum = "aa82753b8c26277e4af1446c70e35b19aad4fb794a7b143859e7eeb9a4025d83"
 dependencies = [
  "cairo-rs",
  "field-offset",
@@ -1561,12 +1505,12 @@ dependencies = [
 
 [[package]]
 name = "gtk4-macros"
-version = "0.7.2"
+version = "0.8.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d57ec49cf9b657f69a05bca8027cff0a8dfd0c49e812be026fc7311f2163832f"
+checksum = "40300bf071d2fcd4c94eacc09e84ec6fe73129d2ceb635cf7e55b026b5443567"
 dependencies = [
  "anyhow",
- "proc-macro-crate 1.3.1",
+ "proc-macro-crate 3.1.0",
  "proc-macro-error",
  "proc-macro2",
  "quote",
@@ -1575,9 +1519,9 @@ dependencies = [
 
 [[package]]
 name = "gtk4-sys"
-version = "0.7.3"
+version = "0.8.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "54d8c4aa23638ce9faa2caf7e2a27d4a1295af2155c8e8d28c4d4eeca7a65eb8"
+checksum = "0db1b104138f087ccdc81d2c332de5dd049b89de3d384437cc1093b17cd2da18"
 dependencies = [
  "cairo-sys-rs",
  "gdk-pixbuf-sys",
@@ -1594,16 +1538,16 @@ dependencies = [
 
 [[package]]
 name = "h2"
-version = "0.3.24"
+version = "0.3.26"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "bb2c4422095b67ee78da96fbb51a4cc413b3b25883c7717ff7ca1ab31022c9c9"
+checksum = "81fe527a889e1532da5c525686d96d4c2e74cdd345badf8dfef9f6b39dd5f5e8"
 dependencies = [
  "bytes",
  "fnv",
  "futures-core",
  "futures-sink",
  "futures-util",
- "http 0.2.11",
+ "http 0.2.12",
  "indexmap",
  "slab",
  "tokio",
@@ -1613,9 +1557,9 @@ dependencies = [
 
 [[package]]
 name = "half"
-version = "2.3.1"
+version = "2.4.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "bc52e53916c08643f1b56ec082790d1e86a32e58dc5268f897f313fbae7b4872"
+checksum = "b5eceaaeec696539ddaf7b333340f1af35a5aa87ae3e4f3ead0532f72affab2e"
 dependencies = [
  "cfg-if",
  "crunchy",
@@ -1636,7 +1580,7 @@ dependencies = [
  "base64",
  "bytes",
  "headers-core",
- "http 0.2.11",
+ "http 0.2.12",
  "httpdate",
  "mime",
  "sha1",
@@ -1648,29 +1592,26 @@ version = "0.2.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "e7f66481bfee273957b1f20485a4ff3362987f85b2c236580d81b4eb7a326429"
 dependencies = [
- "http 0.2.11",
+ "http 0.2.12",
 ]
 
 [[package]]
 name = "heck"
-version = "0.3.3"
+version = "0.4.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6d621efb26863f0e9924c6ac577e8275e5e6b77455db64ffa6c65c904e9e132c"
-dependencies = [
- "unicode-segmentation",
-]
+checksum = "95505c38b4572b2d910cecb0281560f54b440a19336cbbcb27bf6ce6adc6f5a8"
 
 [[package]]
 name = "heck"
-version = "0.4.1"
+version = "0.5.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "95505c38b4572b2d910cecb0281560f54b440a19336cbbcb27bf6ce6adc6f5a8"
+checksum = "2304e00983f87ffb38b55b444b5e3b60a884b5d30c0fca7d82fe33449bbe55ea"
 
 [[package]]
 name = "hermit-abi"
-version = "0.3.6"
+version = "0.3.9"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "bd5256b483761cd23699d0da46cc6fd2ee3be420bbe6d020ae4a091e70b7e9fd"
+checksum = "d231dfb89cfffdbc30e7fc41579ed6066ad03abda9e567ccafae602b97ec5024"
 
 [[package]]
 name = "hex"
@@ -1679,6 +1620,12 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "7f24254aa9a54b5c858eaee2f5bccdb46aaf0e486a595ed5fd8f86ba55232a70"
 
 [[package]]
+name = "hex-literal"
+version = "0.4.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "6fe2267d4ed49bc07b63801559be28c718ea06c4738b7a03c94df7386d2cde46"
+
+[[package]]
 name = "hkdf"
 version = "0.12.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -1716,9 +1663,9 @@ dependencies = [
 
 [[package]]
 name = "http"
-version = "0.2.11"
+version = "0.2.12"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8947b1a6fad4393052c7ba1f4cd97bed3e953a95c79c92ad9b051a04611d9fbb"
+checksum = "601cbb57e577e2f5ef5be8e7b83f0f63994f25aa94d673e54a92d5c516d101f1"
 dependencies = [
  "bytes",
  "fnv",
@@ -1727,9 +1674,9 @@ dependencies = [
 
 [[package]]
 name = "http"
-version = "1.0.0"
+version = "1.1.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b32afd38673a8016f7c9ae69e5af41a58f81b1d31689040f2f1959594ce194ea"
+checksum = "21b9ddb458710bc376481b842f5da65cdf31522de232c1ca8146abce2a358258"
 dependencies = [
  "bytes",
  "fnv",
@@ -1743,7 +1690,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "7ceab25649e9960c0311ea418d17bee82c0dcec1bd053b5f9a66e265a693bed2"
 dependencies = [
  "bytes",
- "http 0.2.11",
+ "http 0.2.12",
  "pin-project-lite",
 ]
 
@@ -1776,13 +1723,13 @@ dependencies = [
  "futures-core",
  "futures-util",
  "h2",
- "http 0.2.11",
+ "http 0.2.12",
  "http-body",
  "httparse",
  "httpdate",
  "itoa",
  "pin-project-lite",
- "socket2 0.5.5",
+ "socket2",
  "tokio",
  "tower-service",
  "tracing",
@@ -1796,7 +1743,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "399c78f9338483cb7e630c8474b07268983c6bd5acee012e4211f9f7bb21b070"
 dependencies = [
  "futures-util",
- "http 0.2.11",
+ "http 0.2.12",
  "hyper",
  "log",
  "rustls",
@@ -1853,46 +1800,27 @@ dependencies = [
 
 [[package]]
 name = "image"
-version = "0.23.14"
+version = "0.24.9"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "24ffcb7e7244a9bf19d35bf2883b9c080c4ced3c07a9895572178cdb8f13f6a1"
-dependencies = [
- "bytemuck",
- "byteorder",
- "color_quant",
- "gif 0.11.4",
- "jpeg-decoder 0.1.22",
- "num-iter",
- "num-rational 0.3.2",
- "num-traits",
- "png 0.16.8",
- "scoped_threadpool",
- "tiff 0.6.1",
-]
-
-[[package]]
-name = "image"
-version = "0.24.8"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "034bbe799d1909622a74d1193aa50147769440040ff36cb2baa947609b0a4e23"
+checksum = "5690139d2f55868e080017335e4b94cb7414274c74f1669c84fb5feba2c9f69d"
 dependencies = [
  "bytemuck",
  "byteorder",
  "color_quant",
  "exr",
- "gif 0.12.0",
- "jpeg-decoder 0.3.1",
+ "gif",
+ "jpeg-decoder",
  "num-traits",
- "png 0.17.13",
+ "png",
  "qoi",
- "tiff 0.9.1",
+ "tiff",
 ]
 
 [[package]]
 name = "indexmap"
-version = "2.2.3"
+version = "2.2.6"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "233cf39063f058ea2caae4091bf4a3ef70a653afbc026f5c4a4135d114e3c177"
+checksum = "168fb715dda47215e360912c096649d23d58bf392ac62f73919e831745e40f26"
 dependencies = [
  "equivalent",
  "hashbrown",
@@ -1918,47 +1846,36 @@ dependencies = [
 ]
 
 [[package]]
-name = "io-lifetimes"
-version = "1.0.11"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "eae7b9aee968036d54dce06cebaefd919e4472e753296daccd6d344e3e2df0c2"
-dependencies = [
- "hermit-abi",
- "libc",
- "windows-sys 0.48.0",
-]
-
-[[package]]
 name = "itertools"
-version = "0.10.5"
+version = "0.11.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b0fd2260e829bddf4cb6ea802289de2f86d6a7a690192fbe91b3f46e0f2c8473"
+checksum = "b1c173a5686ce8bfa551b3563d0c2170bf24ca44da99c7ca4bfdab5418c3fe57"
 dependencies = [
  "either",
 ]
 
 [[package]]
 name = "itertools"
-version = "0.11.0"
+version = "0.12.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b1c173a5686ce8bfa551b3563d0c2170bf24ca44da99c7ca4bfdab5418c3fe57"
+checksum = "ba291022dbbd398a455acf126c1e341954079855bc60dfdda641363bd6922569"
 dependencies = [
  "either",
 ]
 
 [[package]]
 name = "itoa"
-version = "1.0.10"
+version = "1.0.11"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b1a46d1a171d865aa5f83f92695765caa047a9b4cbae2cbf37dbd613a793fd4c"
+checksum = "49f1f14873335454500d59611f1cf4a4b0f786f9ac11f4312a78e4cf2566695b"
 
 [[package]]
-name = "jpeg-decoder"
-version = "0.1.22"
+name = "jobserver"
+version = "0.1.28"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "229d53d58899083193af11e15917b5640cd40b29ff475a1fe4ef725deb02d0f2"
+checksum = "ab46a6e9526ddef3ae7f787c06f0f2600639ba80ea3eade3d8e670a2230f51d6"
 dependencies = [
- "rayon",
+ "libc",
 ]
 
 [[package]]
@@ -1972,9 +1889,9 @@ dependencies = [
 
 [[package]]
 name = "js-sys"
-version = "0.3.68"
+version = "0.3.69"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "406cda4b368d531c842222cf9d2600a9a4acce8d29423695379c6868a143a9ee"
+checksum = "29c15563dc2726973df627357ce0c9ddddbea194836909d655df6a75d2cf296d"
 dependencies = [
  "wasm-bindgen",
 ]
@@ -1996,9 +1913,9 @@ checksum = "03087c2bad5e1034e8cace5926dec053fb3790248370865f5117a7d0213354c8"
 
 [[package]]
 name = "libadwaita"
-version = "0.5.3"
+version = "0.6.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2fe7e70c06507ed10a16cda707f358fbe60fe0dc237498f78c686ade92fd979c"
+checksum = "91b4990248b9e1ec5e72094a2ccaea70ec3809f88f6fd52192f2af306b87c5d9"
 dependencies = [
  "gdk-pixbuf",
  "gdk4",
@@ -2012,9 +1929,9 @@ dependencies = [
 
 [[package]]
 name = "libadwaita-sys"
-version = "0.5.3"
+version = "0.6.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5e10aaa38de1d53374f90deeb4535209adc40cc5dba37f9704724169bceec69a"
+checksum = "23a748e4e92be1265cd9e93d569c0b5dfc7814107985aa6743d670ab281ea1a8"
 dependencies = [
  "gdk4-sys",
  "gio-sys",
@@ -2039,9 +1956,18 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "4ec2a862134d2a7d32d7983ddcdd1c4923530833c9f2ea1a44fc5fa473989058"
 
 [[package]]
+name = "libsignal-core"
+version = "0.1.0"
+source = "git+https://github.com/signalapp/libsignal?tag=v0.40.1#f980fccd8ae72fe21dc202d644b358667d60e2b0"
+dependencies = [
+ "num_enum",
+ "uuid",
+]
+
+[[package]]
 name = "libsignal-protocol"
 version = "0.1.0"
-source = "git+https://github.com/signalapp/libsignal?tag=v0.32.0#72f046fe19a5eac22c7abcf9917956f240759364"
+source = "git+https://github.com/signalapp/libsignal?tag=v0.40.1#f980fccd8ae72fe21dc202d644b358667d60e2b0"
 dependencies = [
  "aes",
  "aes-gcm-siv",
@@ -2049,18 +1975,22 @@ dependencies = [
  "async-trait",
  "ctr",
  "curve25519-dalek",
+ "derive-where",
  "displaydoc",
  "hex",
  "hkdf",
  "hmac",
- "itertools 0.10.5",
+ "indexmap",
+ "itertools 0.12.1",
+ "libsignal-core",
  "log",
  "num_enum",
  "pqcrypto-kyber",
  "pqcrypto-traits",
- "prost 0.9.0",
- "prost-build 0.9.0",
+ "prost",
+ "prost-build",
  "rand",
+ "rayon",
  "sha2",
  "signal-crypto",
  "static_assertions",
@@ -2073,7 +2003,7 @@ dependencies = [
 [[package]]
 name = "libsignal-service"
 version = "0.1.0"
-source = "git+https://github.com/whisperfish/libsignal-service-rs?rev=1a8cdf81#1a8cdf81e66477077bd130cdd0313762e3d5e3c8"
+source = "git+https://github.com/whisperfish/libsignal-service-rs?rev=c072491aa3e2b604b45b9f2b764552b7d382898c#c072491aa3e2b604b45b9f2b764552b7d382898c"
 dependencies = [
  "aes",
  "aes-gcm",
@@ -2091,8 +2021,8 @@ dependencies = [
  "hmac",
  "libsignal-protocol",
  "phonenumber",
- "prost 0.12.3",
- "prost-build 0.12.3",
+ "prost",
+ "prost-build",
  "rand",
  "serde",
  "serde_json",
@@ -2108,7 +2038,7 @@ dependencies = [
 [[package]]
 name = "libsignal-service-hyper"
 version = "0.1.0"
-source = "git+https://github.com/whisperfish/libsignal-service-rs?rev=1a8cdf81#1a8cdf81e66477077bd130cdd0313762e3d5e3c8"
+source = "git+https://github.com/whisperfish/libsignal-service-rs?rev=c072491aa3e2b604b45b9f2b764552b7d382898c#c072491aa3e2b604b45b9f2b764552b7d382898c"
 dependencies = [
  "async-trait",
  "async-tungstenite",
@@ -2133,9 +2063,9 @@ dependencies = [
 
 [[package]]
 name = "libspelling"
-version = "0.1.0"
+version = "0.2.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "850363056ea48497686407e7e583c50c793896c151bbe7139ad4ea02fbf15e76"
+checksum = "38d899332fb50d87851a5599a38e244062f92878d51a3f0dd038fd414760b52d"
 dependencies = [
  "gio",
  "glib",
@@ -2147,9 +2077,9 @@ dependencies = [
 
 [[package]]
 name = "libspelling-sys"
-version = "0.1.0"
+version = "0.2.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "377675d9465da676ebc05742743d5e5bc53a49be1138f463583181aea97da3c6"
+checksum = "76d4ed284e63577d6d61ef30a4f26255d9a460d5a493b3425656a84a00521ba4"
 dependencies = [
  "gio-sys",
  "glib-sys",
@@ -2168,12 +2098,6 @@ checksum = "0717cef1bc8b636c6e1c1bbdefc09e6322da8a9321966e8928ef80d20f7f770f"
 
 [[package]]
 name = "linux-raw-sys"
-version = "0.3.8"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ef53942eb7bf7ff43a617b3e2c1c4a5ecf5944a7c1bc12d7ee39bbb15e5c1519"
-
-[[package]]
-name = "linux-raw-sys"
 version = "0.4.13"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "01cda141df6706de531b6c46c3a33ecca755538219bd484262fa09410c13539c"
@@ -2203,9 +2127,9 @@ dependencies = [
 
 [[package]]
 name = "log"
-version = "0.4.20"
+version = "0.4.21"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b5e6163cb8c49088c2c36f57875e58ccd8c87c7427f7fbd50ea6710b2f3f2e8f"
+checksum = "90ed8c1e510134f979dbc4f070f87d4313098b704861a105fe34231c70a3901c"
 
 [[package]]
 name = "lru-cache"
@@ -2227,24 +2151,15 @@ dependencies = [
 
 [[package]]
 name = "memchr"
-version = "2.7.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "523dc4f511e55ab87b694dc30d0f820d60906ef06413f93d4d7a1385599cc149"
-
-[[package]]
-name = "memoffset"
-version = "0.7.1"
+version = "2.7.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5de893c32cde5f383baa4c04c5d6dbdd735cfd4a794b0debdb2bb1b421da5ff4"
-dependencies = [
- "autocfg",
-]
+checksum = "6c8640c5d730cb13ebd907d8d04b52f55ac9a2eec55b440c8892f40d56c76c1d"
 
 [[package]]
 name = "memoffset"
-version = "0.9.0"
+version = "0.9.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5a634b1c61a95585bd15607c6ab0c4e5b226e695ff2800ba0cdccddf208c406c"
+checksum = "488016bfae457b036d996092f6cb448677611ce4449e970ceaf42695203f218a"
 dependencies = [
  "autocfg",
 ]
@@ -2273,25 +2188,6 @@ checksum = "68354c5c6bd36d73ff3feceb05efa59b6acb7626617f4962be322a825e61f79a"
 
 [[package]]
 name = "miniz_oxide"
-version = "0.3.7"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "791daaae1ed6889560f8c4359194f56648355540573244a5448a83ba1ecc7435"
-dependencies = [
- "adler32",
-]
-
-[[package]]
-name = "miniz_oxide"
-version = "0.4.4"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a92518e98c078586bc6c934028adcca4c92a53d6a958196de835170a01d84e4b"
-dependencies = [
- "adler",
- "autocfg",
-]
-
-[[package]]
-name = "miniz_oxide"
 version = "0.7.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "9d811f3e15f28568be3407c8e7fdb6514c1cda3cb30683f15b6a1a1dc4ea14a7"
@@ -2302,9 +2198,9 @@ dependencies = [
 
 [[package]]
 name = "mio"
-version = "0.8.10"
+version = "0.8.11"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8f3d0b296e374a4e6f3c7b0a1f5a51d748a0d34c85e7dc48fc3fa9a87657fe09"
+checksum = "a4a650543ca06a924e8b371db273b2756685faae30f8487da1b56505a8f78b0c"
 dependencies = [
  "libc",
  "wasi",
@@ -2320,7 +2216,7 @@ dependencies = [
  "bytes",
  "futures-core",
  "futures-util",
- "http 0.2.11",
+ "http 0.2.12",
  "httparse",
  "log",
  "memchr",
@@ -2341,14 +2237,15 @@ checksum = "e5ce46fe64a9d73be07dcbe690a38ce1b293be448fd8ce1e6c1b8062c9f72c6a"
 
 [[package]]
 name = "nix"
-version = "0.26.4"
+version = "0.28.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "598beaf3cc6fdd9a5dfb1630c2800c7acd31df7aaf0f565796fba2b53ca1af1b"
+checksum = "ab2156c4fce2f8df6c499cc1c763e4394b7482525bf2a9701c9d79d215f519e4"
 dependencies = [
- "bitflags 1.3.2",
+ "bitflags 2.5.0",
  "cfg-if",
+ "cfg_aliases",
  "libc",
- "memoffset 0.7.1",
+ "memoffset",
 ]
 
 [[package]]
@@ -2371,7 +2268,7 @@ dependencies = [
  "num-complex",
  "num-integer",
  "num-iter",
- "num-rational 0.4.1",
+ "num-rational",
  "num-traits",
 ]
 
@@ -2435,17 +2332,6 @@ dependencies = [
 
 [[package]]
 name = "num-rational"
-version = "0.3.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "12ac428b1cb17fce6f731001d307d351ec70a6d202fc2e60f7d4c5e42d8f4f07"
-dependencies = [
- "autocfg",
- "num-integer",
- "num-traits",
-]
-
-[[package]]
-name = "num-rational"
 version = "0.4.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "0638a1c9d0a3c0914158145bc76cff373a75a627e6ecbfb71cbe6f453a5a19b0"
@@ -2493,7 +2379,7 @@ dependencies = [
  "proc-macro-crate 1.3.1",
  "proc-macro2",
  "quote",
- "syn 2.0.50",
+ "syn 2.0.57",
 ]
 
 [[package]]
@@ -2548,12 +2434,11 @@ checksum = "44d11de466f4a3006fe8a5e7ec84e93b79c70cb992ae0aa0eb631ad2df8abfe2"
 
 [[package]]
 name = "oo7"
-version = "0.2.2"
+version = "0.3.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "aceca83a983f36dd8ee90230636fbf92897cb2dc2701d2ae66f885e20e56978d"
+checksum = "37558cac1af63a81fd2ff7f3469c02a4da06b163c5671791553b8dac10f07c82"
 dependencies = [
  "aes",
- "byteorder",
  "cbc",
  "cipher",
  "digest",
@@ -2562,7 +2447,6 @@ dependencies = [
  "hmac",
  "num",
  "num-bigint-dig",
- "once_cell",
  "pbkdf2",
  "rand",
  "serde",
@@ -2570,13 +2454,14 @@ dependencies = [
  "tokio",
  "zbus",
  "zeroize",
+ "zvariant",
 ]
 
 [[package]]
 name = "opaque-debug"
-version = "0.3.0"
+version = "0.3.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "624a8340c38c1b80fd549087862da4ba43e08858af025b236e509b6649fc13d5"
+checksum = "c08d65885ee38876c4f86fa503fb49d7b507c2b62552df7c70b2fce627e06381"
 
 [[package]]
 name = "openssl-probe"
@@ -2596,22 +2481,21 @@ dependencies = [
 
 [[package]]
 name = "pango"
-version = "0.18.3"
+version = "0.19.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7ca27ec1eb0457ab26f3036ea52229edbdb74dee1edd29063f5b9b010e7ebee4"
+checksum = "b1264d13deb823cc652f26cfe59afb1ec4b9db2a5bd27c41b738c879cc1bfaa1"
 dependencies = [
  "gio",
  "glib",
  "libc",
- "once_cell",
  "pango-sys",
 ]
 
 [[package]]
 name = "pango-sys"
-version = "0.18.0"
+version = "0.19.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "436737e391a843e5933d6d9aa102cb126d501e815b83601365a948a518555dc5"
+checksum = "f52ef6a881c19fbfe3b1484df5cad411acaaba29dbec843941c3110d19f340ea"
 dependencies = [
  "glib-sys",
  "gobject-sys",
@@ -2651,6 +2535,26 @@ dependencies = [
 ]
 
 [[package]]
+name = "partial-default"
+version = "0.1.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "124dc3c21ffb6fb3a0562d129929a8a54998766ef7adc1ba09ddc467d092c14b"
+dependencies = [
+ "partial-default-derive",
+]
+
+[[package]]
+name = "partial-default-derive"
+version = "0.1.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "7459127d7a18cb202d418e4b7df1103ffd6d82a106e9b2091c250624c2ace70d"
+dependencies = [
+ "proc-macro2",
+ "quote",
+ "syn 2.0.57",
+]
+
+[[package]]
 name = "pbkdf2"
 version = "0.12.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -2699,29 +2603,29 @@ dependencies = [
 
 [[package]]
 name = "pin-project"
-version = "1.1.4"
+version = "1.1.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0302c4a0442c456bd56f841aee5c3bfd17967563f6fadc9ceb9f9c23cf3807e0"
+checksum = "b6bf43b791c5b9e34c3d182969b4abb522f9343702850a2e57f460d00d09b4b3"
 dependencies = [
  "pin-project-internal",
 ]
 
 [[package]]
 name = "pin-project-internal"
-version = "1.1.4"
+version = "1.1.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "266c042b60c9c76b8d53061e52b2e0d1116abc57cefc8c5cd671619a56ac3690"
+checksum = "2f38a4412a78282e09a2cf38d195ea5420d15ba0602cb375210efbc877243965"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.50",
+ "syn 2.0.57",
 ]
 
 [[package]]
 name = "pin-project-lite"
-version = "0.2.13"
+version = "0.2.14"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8afb450f006bf6385ca15ef45d71d2288452bc3683ce2e2cacc0d18e4be60b58"
+checksum = "bda66fc9667c18cb2758a2ac84d1167245054bcf85d5d1aaa6923f45801bdd02"
 
 [[package]]
 name = "pin-utils"
@@ -2736,7 +2640,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "668d31b1c4eba19242f2088b2bf3316b82ca31082a8335764db4e083db7485d4"
 dependencies = [
  "atomic-waker",
- "fastrand 2.0.1",
+ "fastrand",
  "futures-io",
 ]
 
@@ -2748,21 +2652,9 @@ checksum = "d231b230927b5e4ad203db57bbcbee2802f6bce620b1e4a9024a07d94e2907ec"
 
 [[package]]
 name = "platforms"
-version = "3.3.0"
+version = "3.4.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "626dec3cac7cc0e1577a2ec3fc496277ec2baa084bebad95bb6fdbfae235f84c"
-
-[[package]]
-name = "png"
-version = "0.16.8"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3c3287920cb847dee3de33d301c463fba14dda99db24214ddf93f83d3021f4c6"
-dependencies = [
- "bitflags 1.3.2",
- "crc32fast",
- "deflate",
- "miniz_oxide 0.3.7",
-]
+checksum = "db23d408679286588f4d4644f965003d056e3dd5abcaaa938116871d7ce2fee7"
 
 [[package]]
 name = "png"
@@ -2774,13 +2666,13 @@ dependencies = [
  "crc32fast",
  "fdeflate",
  "flate2",
- "miniz_oxide 0.7.2",
+ "miniz_oxide",
 ]
 
 [[package]]
 name = "poksho"
 version = "0.7.0"
-source = "git+https://github.com/signalapp/libsignal?tag=v0.32.0#72f046fe19a5eac22c7abcf9917956f240759364"
+source = "git+https://github.com/signalapp/libsignal?tag=v0.40.1#f980fccd8ae72fe21dc202d644b358667d60e2b0"
 dependencies = [
  "curve25519-dalek",
  "hmac",
@@ -2790,30 +2682,15 @@ dependencies = [
 
 [[package]]
 name = "polling"
-version = "2.8.0"
+version = "3.6.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4b2d323e8ca7996b3e23126511a523f7e62924d93ecd5ae73b333815b0eb3dce"
-dependencies = [
- "autocfg",
- "bitflags 1.3.2",
- "cfg-if",
- "concurrent-queue",
- "libc",
- "log",
- "pin-project-lite",
- "windows-sys 0.48.0",
-]
-
-[[package]]
-name = "polling"
-version = "3.5.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "24f040dee2588b4963afb4e420540439d126f73fdacf4a9c486a96d840bac3c9"
+checksum = "e0c976a60b2d7e99d6f229e414670a9b85d13ac305cc6d1e9c134de58c5aaaf6"
 dependencies = [
  "cfg-if",
  "concurrent-queue",
+ "hermit-abi",
  "pin-project-lite",
- "rustix 0.38.31",
+ "rustix",
  "tracing",
  "windows-sys 0.52.0",
 ]
@@ -2831,9 +2708,9 @@ dependencies = [
 
 [[package]]
 name = "polyval"
-version = "0.6.1"
+version = "0.6.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d52cff9d1d4dee5fe6d03729099f4a310a41179e0a10dbf542039873f2e826fb"
+checksum = "9d1fe60d06143b2430aa532c94cfe9e29783047f06c0d7fd359a9a51b729fa25"
 dependencies = [
  "cfg-if",
  "cpufeatures",
@@ -2880,11 +2757,12 @@ checksum = "94e851c7654eed9e68d7d27164c454961a616cf8c203d500607ef22c737b51bb"
 
 [[package]]
 name = "presage"
-version = "0.6.0-dev"
-source = "git+https://github.com/Schmiddiii/presage?rev=03ffb349a125518fdc6087ebfb6a5d82a1600da6#03ffb349a125518fdc6087ebfb6a5d82a1600da6"
+version = "0.6.1"
+source = "git+https://github.com/Schmiddiii/presage?rev=de9c6d0df4fb5908586c9b06f74d5f2ce7078a9e#de9c6d0df4fb5908586c9b06f74d5f2ce7078a9e"
 dependencies = [
  "base64",
  "futures",
+ "hex",
  "libsignal-service",
  "libsignal-service-hyper",
  "log",
@@ -2900,7 +2778,7 @@ dependencies = [
 [[package]]
 name = "presage-store-cipher"
 version = "0.1.0"
-source = "git+https://github.com/Schmiddiii/presage?rev=03ffb349a125518fdc6087ebfb6a5d82a1600da6#03ffb349a125518fdc6087ebfb6a5d82a1600da6"
+source = "git+https://github.com/Schmiddiii/presage?rev=de9c6d0df4fb5908586c9b06f74d5f2ce7078a9e#de9c6d0df4fb5908586c9b06f74d5f2ce7078a9e"
 dependencies = [
  "blake3",
  "chacha20poly1305",
@@ -2917,7 +2795,7 @@ dependencies = [
 [[package]]
 name = "presage-store-sled"
 version = "0.6.0-dev"
-source = "git+https://github.com/Schmiddiii/presage?rev=03ffb349a125518fdc6087ebfb6a5d82a1600da6#03ffb349a125518fdc6087ebfb6a5d82a1600da6"
+source = "git+https://github.com/Schmiddiii/presage?rev=de9c6d0df4fb5908586c9b06f74d5f2ce7078a9e#de9c6d0df4fb5908586c9b06f74d5f2ce7078a9e"
 dependencies = [
  "async-trait",
  "base64",
@@ -2925,8 +2803,8 @@ dependencies = [
  "log",
  "presage",
  "presage-store-cipher",
- "prost 0.12.3",
- "prost-build 0.12.3",
+ "prost",
+ "prost-build",
  "quickcheck_macros",
  "serde",
  "serde_json",
@@ -2937,12 +2815,12 @@ dependencies = [
 
 [[package]]
 name = "prettyplease"
-version = "0.2.16"
+version = "0.2.17"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a41cf62165e97c7f814d2221421dbb9afcbcdb0a88068e5ea206e19951c2cbb5"
+checksum = "8d3928fb5db768cb86f891ff014f0144589297e3c6a1aba6ed7cecfdace270c7"
 dependencies = [
  "proc-macro2",
- "syn 2.0.50",
+ "syn 2.0.57",
 ]
 
 [[package]]
@@ -2957,12 +2835,11 @@ dependencies = [
 
 [[package]]
 name = "proc-macro-crate"
-version = "2.0.2"
+version = "3.1.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b00f26d3400549137f92511a46ac1cd8ce37cb5598a96d382381458b992a5d24"
+checksum = "6d37c51ca738a55da99dc0c4a34860fd675453b8b36209178c2249bb13651284"
 dependencies = [
- "toml_datetime",
- "toml_edit 0.20.2",
+ "toml_edit 0.21.1",
 ]
 
 [[package]]
@@ -2991,51 +2868,21 @@ dependencies = [
 
 [[package]]
 name = "proc-macro2"
-version = "1.0.78"
+version = "1.0.79"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e2422ad645d89c99f8f3e6b88a9fdeca7fabeac836b1002371c4367c8f984aae"
+checksum = "e835ff2298f5721608eb1a980ecaee1aef2c132bf95ecc026a11b7bf3c01c02e"
 dependencies = [
  "unicode-ident",
 ]
 
 [[package]]
 name = "prost"
-version = "0.9.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "444879275cb4fd84958b1a1d5420d15e6fcf7c235fe47f053c9c2a80aceb6001"
-dependencies = [
- "bytes",
- "prost-derive 0.9.0",
-]
-
-[[package]]
-name = "prost"
 version = "0.12.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "146c289cda302b98a28d40c8b3b90498d6e526dd24ac2ecea73e4e491685b94a"
 dependencies = [
  "bytes",
- "prost-derive 0.12.3",
-]
-
-[[package]]
-name = "prost-build"
-version = "0.9.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "62941722fb675d463659e49c4f3fe1fe792ff24fe5bbaa9c08cd3b98a1c354f5"
-dependencies = [
- "bytes",
- "heck 0.3.3",
- "itertools 0.10.5",
- "lazy_static",
- "log",
- "multimap",
- "petgraph",
- "prost 0.9.0",
- "prost-types 0.9.0",
- "regex",
- "tempfile",
- "which",
+ "prost-derive",
 ]
 
 [[package]]
@@ -3052,29 +2899,16 @@ dependencies = [
  "once_cell",
  "petgraph",
  "prettyplease",
- "prost 0.12.3",
- "prost-types 0.12.3",
+ "prost",
+ "prost-types",
  "regex",
- "syn 2.0.50",
+ "syn 2.0.57",
  "tempfile",
  "which",
 ]
 
 [[package]]
 name = "prost-derive"
-version = "0.9.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f9cc1a3263e07e0bf68e96268f37665207b49560d98739662cdfaae215c720fe"
-dependencies = [
- "anyhow",
- "itertools 0.10.5",
- "proc-macro2",
- "quote",
- "syn 1.0.109",
-]
-
-[[package]]
-name = "prost-derive"
 version = "0.12.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "efb6c9a1dd1def8e2124d17e83a20af56f1570d6c2d2bd9e266ccb768df3840e"
@@ -3083,17 +2917,7 @@ dependencies = [
  "itertools 0.11.0",
  "proc-macro2",
  "quote",
- "syn 2.0.50",
-]
-
-[[package]]
-name = "prost-types"
-version = "0.9.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "534b7a0e836e3c482d2693070f982e39e7611da9695d4d1f5a4b186b51faef0a"
-dependencies = [
- "bytes",
- "prost 0.9.0",
+ "syn 2.0.57",
 ]
 
 [[package]]
@@ -3102,7 +2926,7 @@ version = "0.12.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "193898f59edcf43c26227dcd4c8427f00d99d61e95dcde58dabd49fa291d470e"
 dependencies = [
- "prost 0.12.3",
+ "prost",
 ]
 
 [[package]]
@@ -3121,7 +2945,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "1d06cb9646c7a14096231a2474d7f21e5e8c13de090c68d13bde6157cfe7f159"
 dependencies = [
  "html-escape",
- "image 0.24.8",
+ "image",
  "qrcodegen",
 ]
 
@@ -3192,9 +3016,9 @@ dependencies = [
 
 [[package]]
 name = "rayon"
-version = "1.8.1"
+version = "1.10.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "fa7237101a77a10773db45d62004a272517633fbcc3df19d96455ede1122e051"
+checksum = "b418a60154510ca1a002a752ca9714984e21e4241e804d32555251faf8b78ffa"
 dependencies = [
  "either",
  "rayon-core",
@@ -3221,25 +3045,25 @@ dependencies = [
 
 [[package]]
 name = "regex"
-version = "1.10.3"
+version = "1.10.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b62dbe01f0b06f9d8dc7d49e05a0785f153b00b2c227856282f671e0318c9b15"
+checksum = "c117dbdfde9c8308975b6a18d71f3f385c89461f7b3fb054288ecf2a2058ba4c"
 dependencies = [
  "aho-corasick",
  "memchr",
  "regex-automata",
- "regex-syntax 0.8.2",
+ "regex-syntax 0.8.3",
 ]
 
 [[package]]
 name = "regex-automata"
-version = "0.4.5"
+version = "0.4.6"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5bb987efffd3c6d0d8f5f89510bb458559eab11e4f869acb20bf845e016259cd"
+checksum = "86b83b8b9847f9bf95ef68afb0b8e6cdb80f498442f5179a29fad448fcc1eaea"
 dependencies = [
  "aho-corasick",
  "memchr",
- "regex-syntax 0.8.2",
+ "regex-syntax 0.8.3",
 ]
 
 [[package]]
@@ -3262,9 +3086,9 @@ checksum = "f162c6dd7b008981e4d40210aca20b4bd0f9b60ca9271061b07f78537722f2e1"
 
 [[package]]
 name = "regex-syntax"
-version = "0.8.2"
+version = "0.8.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c08c74e62047bb2de4ff487b251e4a92e24f48745648451635cec7d591162d9f"
+checksum = "adad44e29e4c806119491a7f06f03de4d1af22c3a680dd47f1e6e179439d1f56"
 
 [[package]]
 name = "ring"
@@ -3298,36 +3122,22 @@ dependencies = [
 
 [[package]]
 name = "rustix"
-version = "0.37.27"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "fea8ca367a3a01fe35e6943c400addf443c0f57670e6ec51196f71a4b8762dd2"
-dependencies = [
- "bitflags 1.3.2",
- "errno",
- "io-lifetimes",
- "libc",
- "linux-raw-sys 0.3.8",
- "windows-sys 0.48.0",
-]
-
-[[package]]
-name = "rustix"
-version = "0.38.31"
+version = "0.38.32"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6ea3e1a662af26cd7a3ba09c0297a31af215563ecf42817c98df621387f4e949"
+checksum = "65e04861e65f21776e67888bfbea442b3642beaa0138fdb1dd7a84a52dffdb89"
 dependencies = [
- "bitflags 2.4.2",
+ "bitflags 2.5.0",
  "errno",
  "libc",
- "linux-raw-sys 0.4.13",
+ "linux-raw-sys",
  "windows-sys 0.52.0",
 ]
 
 [[package]]
 name = "rustls"
-version = "0.22.2"
+version = "0.22.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e87c9956bd9807afa1f77e0f7594af32566e830e088a5576d27c5b6f30f49d41"
+checksum = "bf4ef73721ac7bcd79b2b315da7779d8fc09718c6b3d2d1b2d94850eb8c18432"
 dependencies = [
  "log",
  "ring",
@@ -3352,9 +3162,9 @@ dependencies = [
 
 [[package]]
 name = "rustls-pemfile"
-version = "2.1.0"
+version = "2.1.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3c333bb734fcdedcea57de1602543590f545f127dc8b533324318fd492c5c70b"
+checksum = "f48172685e6ff52a556baa527774f61fcaa884f59daf3375c62a3f1cd2549dab"
 dependencies = [
  "base64",
  "rustls-pki-types",
@@ -3362,9 +3172,9 @@ dependencies = [
 
 [[package]]
 name = "rustls-pki-types"
-version = "1.3.0"
+version = "1.4.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "048a63e5b3ac996d78d402940b5fa47973d2d080c6c6fffa1d0f19c4445310b7"
+checksum = "ecd36cc4259e3e4514335c4a138c6b43171a8d61d8f5c9348f9fc7529416f247"
 
 [[package]]
 name = "rustls-webpki"
@@ -3399,12 +3209,6 @@ dependencies = [
 ]
 
 [[package]]
-name = "scoped_threadpool"
-version = "0.1.9"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1d51f5df5af43ab3f1360b429fa5e0152ac5ce8c0bd6485cae490332e96846a8"
-
-[[package]]
 name = "scopeguard"
 version = "1.2.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -3412,9 +3216,9 @@ checksum = "94143f37725109f92c262ed2cf5e59bce7498c01bcc1502d7b9afe439a4e9f49"
 
 [[package]]
 name = "security-framework"
-version = "2.9.2"
+version = "2.10.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "05b64fb303737d99b81884b2c63433e9ae28abebe5eb5045dcdd175dc2ecf4de"
+checksum = "770452e37cad93e0a50d5abc3990d2bc351c36d0328f86cefec2f2fb206eaef6"
 dependencies = [
  "bitflags 1.3.2",
  "core-foundation",
@@ -3425,9 +3229,9 @@ dependencies = [
 
 [[package]]
 name = "security-framework-sys"
-version = "2.9.1"
+version = "2.10.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e932934257d3b408ed8f30db49d85ea163bfe74961f017f405b025af298f0c7a"
+checksum = "41f3cc463c0ef97e11c3461a9d3787412d30e8e7eb907c79180c4a57bf7c04ef"
 dependencies = [
  "core-foundation-sys",
  "libc",
@@ -3456,14 +3260,14 @@ checksum = "7eb0b34b42edc17f6b7cac84a52a1c5f0e1bb2227e997ca9011ea3dd34e8610b"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.50",
+ "syn 2.0.57",
 ]
 
 [[package]]
 name = "serde_json"
-version = "1.0.114"
+version = "1.0.115"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c5f09b1bd632ef549eaa9f60a1f8de742bdbc698e6cee2095fc84dde5f549ae0"
+checksum = "12dc5c46daa8e9fdf4f5e71b6cf9a53f2487da0e86e55808e2d35539666497dd"
 dependencies = [
  "itoa",
  "ryu",
@@ -3478,7 +3282,7 @@ checksum = "0b2e6b945e9d3df726b65d6ee24060aff8e3533d431f677a9695db04eff9dfdb"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.50",
+ "syn 2.0.57",
 ]
 
 [[package]]
@@ -3515,7 +3319,7 @@ dependencies = [
 [[package]]
 name = "signal-crypto"
 version = "0.1.0"
-source = "git+https://github.com/signalapp/libsignal?tag=v0.32.0#72f046fe19a5eac22c7abcf9917956f240759364"
+source = "git+https://github.com/signalapp/libsignal?tag=v0.40.1#f980fccd8ae72fe21dc202d644b358667d60e2b0"
 dependencies = [
  "aes",
  "cbc",
@@ -3571,35 +3375,25 @@ dependencies = [
 
 [[package]]
 name = "smallvec"
-version = "1.13.1"
+version = "1.13.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e6ecd384b10a64542d77071bd64bd7b231f4ed5940fba55e98c3de13824cf3d7"
-
-[[package]]
-name = "socket2"
-version = "0.4.10"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9f7916fc008ca5542385b89a3d3ce689953c143e9304a9bf8beec1de48994c0d"
-dependencies = [
- "libc",
- "winapi",
-]
+checksum = "3c5e1a9a646d36c3599cd173a41282daf47c44583ad367b8e6837255952e5c67"
 
 [[package]]
 name = "socket2"
-version = "0.5.5"
+version = "0.5.6"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7b5fac59a5cb5dd637972e5fca70daf0523c9067fcdc4842f053dae04a18f8e9"
+checksum = "05ffd9c0a93b7543e062e759284fcf5f5e3b098501104bfbdde4d404db792871"
 dependencies = [
  "libc",
- "windows-sys 0.48.0",
+ "windows-sys 0.52.0",
 ]
 
 [[package]]
 name = "sourceview5"
-version = "0.7.1"
+version = "0.8.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "88c5f976a113e947bc5ec67758b2960c0db4ca76f80fb410d7cd86cd456d9ee5"
+checksum = "9f0bf70f2f1ac4624af22056f9c4cf58dccff73dafc7207b46fbd3df7b57410f"
 dependencies = [
  "futures-channel",
  "futures-core",
@@ -3615,9 +3409,9 @@ dependencies = [
 
 [[package]]
 name = "sourceview5-sys"
-version = "0.7.1"
+version = "0.8.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "29637cccd56075a37ba72c0cc8b8d599dbc1d857e30dadea97eaacbc29b7fd46"
+checksum = "eac236ad7ce6dad2b819ced8b68b5a1cf4d968aa301cb9a7692470eb21f657be"
 dependencies = [
  "gdk-pixbuf-sys",
  "gdk4-sys",
@@ -3692,9 +3486,9 @@ dependencies = [
 
 [[package]]
 name = "syn"
-version = "2.0.50"
+version = "2.0.57"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "74f1bdc9872430ce9b75da68329d1c1746faf50ffac5f19e02b71e37ff881ffb"
+checksum = "11a6ae1e52eb25aab8f3fb9fca13be982a373b8f1157ca14b897a825ba4a2d35"
 dependencies = [
  "proc-macro2",
  "quote",
@@ -3715,12 +3509,12 @@ dependencies = [
 
 [[package]]
 name = "system-deps"
-version = "6.2.0"
+version = "6.2.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2a2d580ff6a20c55dfb86be5f9c238f67835d0e81cbdea8bf5680e0897320331"
+checksum = "a3e535eb8dded36d55ec13eddacd30dec501792ff23a0b1682c38601b8cf2349"
 dependencies = [
  "cfg-expr",
- "heck 0.4.1",
+ "heck 0.5.0",
  "pkg-config",
  "toml",
  "version-compare",
@@ -3728,57 +3522,46 @@ dependencies = [
 
 [[package]]
 name = "target-lexicon"
-version = "0.12.13"
+version = "0.12.14"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "69758bda2e78f098e4ccb393021a0963bb3442eac05f135c30f61b7370bbafae"
+checksum = "e1fc403891a21bcfb7c37834ba66a547a8f402146eba7265b5a6d88059c9ff2f"
 
 [[package]]
 name = "temp-dir"
-version = "0.1.12"
+version = "0.1.13"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "dd16aa9ffe15fe021c6ee3766772132c6e98dfa395a167e16864f61a9cfb71d6"
+checksum = "1f227968ec00f0e5322f9b8173c7a0cbcff6181a0a5b28e9892491c286277231"
 
 [[package]]
 name = "tempfile"
-version = "3.10.0"
+version = "3.10.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a365e8cd18e44762ef95d87f284f4b5cd04107fec2ff3052bd6a3e6069669e67"
+checksum = "85b77fafb263dd9d05cbeac119526425676db3784113aa9295c88498cbf8bff1"
 dependencies = [
  "cfg-if",
- "fastrand 2.0.1",
- "rustix 0.38.31",
+ "fastrand",
+ "rustix",
  "windows-sys 0.52.0",
 ]
 
 [[package]]
 name = "thiserror"
-version = "1.0.57"
+version = "1.0.58"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1e45bcbe8ed29775f228095caf2cd67af7a4ccf756ebff23a306bf3e8b47b24b"
+checksum = "03468839009160513471e86a034bb2c5c0e4baae3b43f79ffc55c4a5427b3297"
 dependencies = [
  "thiserror-impl",
 ]
 
 [[package]]
 name = "thiserror-impl"
-version = "1.0.57"
+version = "1.0.58"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a953cb265bef375dae3de6663da4d3804eee9682ea80d8e2542529b73c531c81"
+checksum = "c61f3ba182994efc43764a46c018c347bc492c79f024e705f46567b418f6d4f7"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.50",
-]
-
-[[package]]
-name = "tiff"
-version = "0.6.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9a53f4706d65497df0c4349241deddf35f84cee19c87ed86ea8ca590f4464437"
-dependencies = [
- "jpeg-decoder 0.1.22",
- "miniz_oxide 0.4.4",
- "weezl",
+ "syn 2.0.57",
 ]
 
 [[package]]
@@ -3788,7 +3571,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "ba1310fcea54c6a9a4fd1aad794ecc02c31682f6bfbecdf460bf19533eed1e3e"
 dependencies = [
  "flate2",
- "jpeg-decoder 0.3.1",
+ "jpeg-decoder",
  "weezl",
 ]
 
@@ -3809,9 +3592,9 @@ checksum = "1f3ccbac311fea05f86f61904b462b55fb3df8837a366dfc601a0161d0532f20"
 
 [[package]]
 name = "tokio"
-version = "1.36.0"
+version = "1.37.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "61285f6515fa018fb2d1e46eb21223fff441ee8db5d0f1435e8ab4f5cdb80931"
+checksum = "1adbebffeca75fcfd058afa480fb6c0b81e165a0323f9c9d39c9697e37c46787"
 dependencies = [
  "backtrace",
  "bytes",
@@ -3820,7 +3603,7 @@ dependencies = [
  "num_cpus",
  "pin-project-lite",
  "signal-hook-registry",
- "socket2 0.5.5",
+ "socket2",
  "tokio-macros",
  "tracing",
  "windows-sys 0.48.0",
@@ -3844,7 +3627,7 @@ checksum = "5b8a1e28f2deaa14e508979454cb3a223b10b938b45af148bc0986de36f1923b"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.50",
+ "syn 2.0.57",
 ]
 
 [[package]]
@@ -3888,21 +3671,21 @@ dependencies = [
 
 [[package]]
 name = "toml"
-version = "0.8.2"
+version = "0.8.12"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "185d8ab0dfbb35cf1399a6344d8484209c088f75f8f68230da55d48d95d43e3d"
+checksum = "e9dd1545e8208b4a5af1aa9bbd0b4cf7e9ea08fabc5d0a5c67fcaafa17433aa3"
 dependencies = [
  "serde",
  "serde_spanned",
  "toml_datetime",
- "toml_edit 0.20.2",
+ "toml_edit 0.22.9",
 ]
 
 [[package]]
 name = "toml_datetime"
-version = "0.6.3"
+version = "0.6.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7cda73e2f1397b1262d6dfdcef8aafae14d1de7748d66822d3bfeeb6d03e5e4b"
+checksum = "3550f4e9685620ac18a50ed434eb3aec30db8ba93b0287467bca5826ea25baf1"
 dependencies = [
  "serde",
 ]
@@ -3915,20 +3698,31 @@ checksum = "1b5bb770da30e5cbfde35a2d7b9b8a2c4b8ef89548a7a6aeab5c9a576e3e7421"
 dependencies = [
  "indexmap",
  "toml_datetime",
- "winnow",
+ "winnow 0.5.40",
 ]
 
 [[package]]
 name = "toml_edit"
-version = "0.20.2"
+version = "0.21.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "396e4d48bbb2b7554c944bde63101b5ae446cff6ec4a24227428f15eb72ef338"
+checksum = "6a8534fd7f78b5405e860340ad6575217ce99f38d4d5c8f2442cb5ecb50090e1"
+dependencies = [
+ "indexmap",
+ "toml_datetime",
+ "winnow 0.5.40",
+]
+
+[[package]]
+name = "toml_edit"
+version = "0.22.9"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "8e40bb779c5187258fd7aad0eb68cb8706a0a81fa712fbea808ab43c4b8374c4"
 dependencies = [
  "indexmap",
  "serde",
  "serde_spanned",
  "toml_datetime",
- "winnow",
+ "winnow 0.6.5",
 ]
 
 [[package]]
@@ -3957,7 +3751,7 @@ checksum = "34704c8d6ebcbc939824180af020566b01a7c01f80641264eba0999f6c2b6be7"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.50",
+ "syn 2.0.57",
 ]
 
 [[package]]
@@ -3994,7 +3788,7 @@ dependencies = [
  "byteorder",
  "bytes",
  "data-encoding",
- "http 1.0.0",
+ "http 1.1.0",
  "httparse",
  "log",
  "rand",
@@ -4018,7 +3812,7 @@ version = "1.1.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "89daebc3e6fd160ac4aa9fc8b3bf71e1f74fbf92367ae71fb83a037e8bf164b9"
 dependencies = [
- "memoffset 0.9.0",
+ "memoffset",
  "tempfile",
  "winapi",
 ]
@@ -4054,12 +3848,6 @@ dependencies = [
 ]
 
 [[package]]
-name = "unicode-segmentation"
-version = "1.11.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d4c87d22b6e3f4a18d4d40ef354e97c90fcb14dd91d7dc0aa9d8a1172ebf7202"
-
-[[package]]
 name = "unicode-xid"
 version = "0.2.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -4113,18 +3901,18 @@ checksum = "711b9620af191e0cdc7468a8d14e709c3dcdb115b36f838e601583af800a370a"
 
 [[package]]
 name = "uuid"
-version = "1.7.0"
+version = "1.8.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f00cc9702ca12d3c81455259621e676d0f7251cec66a21e98fe2e9a37db93b2a"
+checksum = "a183cf7feeba97b4dd1c0d46788634f6221d87fa961b305bed08c851829efcc0"
 dependencies = [
  "serde",
 ]
 
 [[package]]
 name = "version-compare"
-version = "0.1.1"
+version = "0.2.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "579a42fc0b8e0c63b76519a339be31bed574929511fa53c1a3acae26eb258f29"
+checksum = "852e951cb7832cb45cb1169900d19760cfa39b82bc0ea9c0e5a14ae88411c98b"
 
 [[package]]
 name = "version_check"
@@ -4133,12 +3921,6 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "49874b5167b65d7193b8aba1567f5c7d93d001cafc34600cee003eda787e483f"
 
 [[package]]
-name = "waker-fn"
-version = "1.1.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f3c4517f54858c779bbcbf228f4fca63d121bf85fbecb2dc578cdf4a39395690"
-
-[[package]]
 name = "want"
 version = "0.3.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -4155,9 +3937,9 @@ checksum = "9c8d87e72b64a3b4db28d11ce29237c246188f4f51057d65a7eab63b7987e423"
 
 [[package]]
 name = "wasm-bindgen"
-version = "0.2.91"
+version = "0.2.92"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c1e124130aee3fb58c5bdd6b639a0509486b0338acaaae0c84a5124b0f588b7f"
+checksum = "4be2531df63900aeb2bca0daaaddec08491ee64ceecbee5076636a3b026795a8"
 dependencies = [
  "cfg-if",
  "wasm-bindgen-macro",
@@ -4165,24 +3947,24 @@ dependencies = [
 
 [[package]]
 name = "wasm-bindgen-backend"
-version = "0.2.91"
+version = "0.2.92"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c9e7e1900c352b609c8488ad12639a311045f40a35491fb69ba8c12f758af70b"
+checksum = "614d787b966d3989fa7bb98a654e369c762374fd3213d212cfc0251257e747da"
 dependencies = [
  "bumpalo",
  "log",
  "once_cell",
  "proc-macro2",
  "quote",
- "syn 2.0.50",
+ "syn 2.0.57",
  "wasm-bindgen-shared",
 ]
 
 [[package]]
 name = "wasm-bindgen-macro"
-version = "0.2.91"
+version = "0.2.92"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b30af9e2d358182b5c7449424f017eba305ed32a7010509ede96cdc4696c46ed"
+checksum = "a1f8823de937b71b9460c0c34e25f3da88250760bec0ebac694b49997550d726"
 dependencies = [
  "quote",
  "wasm-bindgen-macro-support",
@@ -4190,22 +3972,22 @@ dependencies = [
 
 [[package]]
 name = "wasm-bindgen-macro-support"
-version = "0.2.91"
+version = "0.2.92"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "642f325be6301eb8107a83d12a8ac6c1e1c54345a7ef1a9261962dfefda09e66"
+checksum = "e94f17b526d0a461a191c78ea52bbce64071ed5c04c9ffe424dcb38f74171bb7"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.50",
+ "syn 2.0.57",
  "wasm-bindgen-backend",
  "wasm-bindgen-shared",
 ]
 
 [[package]]
 name = "wasm-bindgen-shared"
-version = "0.2.91"
+version = "0.2.92"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4f186bd2dcf04330886ce82d6f33dd75a7bfcf69ecf5763b89fcde53b6ac9838"
+checksum = "af190c94f2773fdb3729c55b007a722abb5384da03bc0986df4c289bf5567e96"
 
 [[package]]
 name = "weezl"
@@ -4222,7 +4004,7 @@ dependencies = [
  "either",
  "home",
  "once_cell",
- "rustix 0.38.31",
+ "rustix",
 ]
 
 [[package]]
@@ -4253,7 +4035,7 @@ version = "0.52.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "33ab640c8d7e35bf8ba19b884ba838ceb4fba93a4e8c65a9059d08afcfc683d9"
 dependencies = [
- "windows-targets 0.52.0",
+ "windows-targets 0.52.4",
 ]
 
 [[package]]
@@ -4271,7 +4053,7 @@ version = "0.52.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "282be5f36a8ce781fad8c8ae18fa3f9beff57ec1b52cb3de0789201425d9a33d"
 dependencies = [
- "windows-targets 0.52.0",
+ "windows-targets 0.52.4",
 ]
 
 [[package]]
@@ -4291,17 +4073,17 @@ dependencies = [
 
 [[package]]
 name = "windows-targets"
-version = "0.52.0"
+version = "0.52.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8a18201040b24831fbb9e4eb208f8892e1f50a37feb53cc7ff887feb8f50e7cd"
+checksum = "7dd37b7e5ab9018759f893a1952c9420d060016fc19a472b4bb20d1bdd694d1b"
 dependencies = [
- "windows_aarch64_gnullvm 0.52.0",
- "windows_aarch64_msvc 0.52.0",
- "windows_i686_gnu 0.52.0",
- "windows_i686_msvc 0.52.0",
- "windows_x86_64_gnu 0.52.0",
- "windows_x86_64_gnullvm 0.52.0",
- "windows_x86_64_msvc 0.52.0",
+ "windows_aarch64_gnullvm 0.52.4",
+ "windows_aarch64_msvc 0.52.4",
+ "windows_i686_gnu 0.52.4",
+ "windows_i686_msvc 0.52.4",
+ "windows_x86_64_gnu 0.52.4",
+ "windows_x86_64_gnullvm 0.52.4",
+ "windows_x86_64_msvc 0.52.4",
 ]
 
 [[package]]
@@ -4312,9 +4094,9 @@ checksum = "2b38e32f0abccf9987a4e3079dfb67dcd799fb61361e53e2882c3cbaf0d905d8"
 
 [[package]]
 name = "windows_aarch64_gnullvm"
-version = "0.52.0"
+version = "0.52.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "cb7764e35d4db8a7921e09562a0304bf2f93e0a51bfccee0bd0bb0b666b015ea"
+checksum = "bcf46cf4c365c6f2d1cc93ce535f2c8b244591df96ceee75d8e83deb70a9cac9"
 
 [[package]]
 name = "windows_aarch64_msvc"
@@ -4324,9 +4106,9 @@ checksum = "dc35310971f3b2dbbf3f0690a219f40e2d9afcf64f9ab7cc1be722937c26b4bc"
 
 [[package]]
 name = "windows_aarch64_msvc"
-version = "0.52.0"
+version = "0.52.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "bbaa0368d4f1d2aaefc55b6fcfee13f41544ddf36801e793edbbfd7d7df075ef"
+checksum = "da9f259dd3bcf6990b55bffd094c4f7235817ba4ceebde8e6d11cd0c5633b675"
 
 [[package]]
 name = "windows_i686_gnu"
@@ -4336,9 +4118,9 @@ checksum = "a75915e7def60c94dcef72200b9a8e58e5091744960da64ec734a6c6e9b3743e"
 
 [[package]]
 name = "windows_i686_gnu"
-version = "0.52.0"
+version = "0.52.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a28637cb1fa3560a16915793afb20081aba2c92ee8af57b4d5f28e4b3e7df313"
+checksum = "b474d8268f99e0995f25b9f095bc7434632601028cf86590aea5c8a5cb7801d3"
 
 [[package]]
 name = "windows_i686_msvc"
@@ -4348,9 +4130,9 @@ checksum = "8f55c233f70c4b27f66c523580f78f1004e8b5a8b659e05a4eb49d4166cca406"
 
 [[package]]
 name = "windows_i686_msvc"
-version = "0.52.0"
+version = "0.52.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ffe5e8e31046ce6230cc7215707b816e339ff4d4d67c65dffa206fd0f7aa7b9a"
+checksum = "1515e9a29e5bed743cb4415a9ecf5dfca648ce85ee42e15873c3cd8610ff8e02"
 
 [[package]]
 name = "windows_x86_64_gnu"
@@ -4360,9 +4142,9 @@ checksum = "53d40abd2583d23e4718fddf1ebec84dbff8381c07cae67ff7768bbf19c6718e"
 
 [[package]]
 name = "windows_x86_64_gnu"
-version = "0.52.0"
+version = "0.52.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3d6fa32db2bc4a2f5abeacf2b69f7992cd09dca97498da74a151a3132c26befd"
+checksum = "5eee091590e89cc02ad514ffe3ead9eb6b660aedca2183455434b93546371a03"
 
 [[package]]
 name = "windows_x86_64_gnullvm"
@@ -4372,9 +4154,9 @@ checksum = "0b7b52767868a23d5bab768e390dc5f5c55825b6d30b86c844ff2dc7414044cc"
 
 [[package]]
 name = "windows_x86_64_gnullvm"
-version = "0.52.0"
+version = "0.52.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1a657e1e9d3f514745a572a6846d3c7aa7dbe1658c056ed9c3344c4109a6949e"
+checksum = "77ca79f2451b49fa9e2af39f0747fe999fcda4f5e241b2898624dca97a1f2177"
 
 [[package]]
 name = "windows_x86_64_msvc"
@@ -4384,9 +4166,9 @@ checksum = "ed94fce61571a4006852b7389a063ab983c02eb1bb37b47f8272ce92d06d9538"
 
 [[package]]
 name = "windows_x86_64_msvc"
-version = "0.52.0"
+version = "0.52.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "dff9641d1cd4be8d1a070daf9e3773c5f67e78b4d9d42263020c057706765c04"
+checksum = "32b752e52a2da0ddfbdbcc6fceadfeede4c939ed16d13e648833a61dfb611ed8"
 
 [[package]]
 name = "winnow"
@@ -4398,6 +4180,15 @@ dependencies = [
 ]
 
 [[package]]
+name = "winnow"
+version = "0.6.5"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "dffa400e67ed5a4dd237983829e66475f0a4a26938c4b04c21baede6262215b8"
+dependencies = [
+ "memchr",
+]
+
+[[package]]
 name = "x25519-dalek"
 version = "2.0.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -4421,24 +4212,22 @@ dependencies = [
 
 [[package]]
 name = "zbus"
-version = "3.15.0"
+version = "4.1.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c45d06ae3b0f9ba1fb2671268b975557d8f5a84bb5ec6e43964f87e763d8bca8"
+checksum = "c9ff46f2a25abd690ed072054733e0bc3157e3d4c45f41bd183dce09c2ff8ab9"
 dependencies = [
  "async-broadcast",
  "async-process",
  "async-recursion",
  "async-trait",
- "byteorder",
  "derivative",
  "enumflags2",
- "event-listener 2.5.3",
+ "event-listener 5.2.0",
  "futures-core",
  "futures-sink",
  "futures-util",
  "hex",
  "nix",
- "once_cell",
  "ordered-stream",
  "rand",
  "serde",
@@ -4448,7 +4237,7 @@ dependencies = [
  "tokio",
  "tracing",
  "uds_windows",
- "winapi",
+ "windows-sys 0.52.0",
  "xdg-home",
  "zbus_macros",
  "zbus_names",
@@ -4457,11 +4246,11 @@ dependencies = [
 
 [[package]]
 name = "zbus_macros"
-version = "3.15.0"
+version = "4.1.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b4a1ba45ed0ad344b85a2bb5a1fe9830aed23d67812ea39a586e7d0136439c7d"
+checksum = "4e0e3852c93dcdb49c9462afe67a2a468f7bd464150d866e861eaf06208633e0"
 dependencies = [
- "proc-macro-crate 1.3.1",
+ "proc-macro-crate 3.1.0",
  "proc-macro2",
  "quote",
  "regex",
@@ -4471,9 +4260,9 @@ dependencies = [
 
 [[package]]
 name = "zbus_names"
-version = "2.6.0"
+version = "3.0.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "fb80bb776dbda6e23d705cf0123c3b95df99c4ebeaec6c2599d4a5419902b4a9"
+checksum = "4b9b1fef7d021261cc16cba64c351d291b715febe0fa10dc3a443ac5a5022e6c"
 dependencies = [
  "serde",
  "static_assertions",
@@ -4497,33 +4286,40 @@ checksum = "ce36e65b0d2999d2aafac989fb249189a141aee1f53c612c1f37d72631959f69"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.50",
+ "syn 2.0.57",
 ]
 
 [[package]]
 name = "zkcredential"
 version = "0.1.0"
-source = "git+https://github.com/signalapp/libsignal?tag=v0.32.0#72f046fe19a5eac22c7abcf9917956f240759364"
+source = "git+https://github.com/signalapp/libsignal?tag=v0.40.1#f980fccd8ae72fe21dc202d644b358667d60e2b0"
 dependencies = [
  "curve25519-dalek",
+ "derive-where",
  "displaydoc",
  "lazy_static",
+ "partial-default",
  "poksho",
  "serde",
+ "subtle",
 ]
 
 [[package]]
 name = "zkgroup"
 version = "0.9.0"
-source = "git+https://github.com/signalapp/libsignal?tag=v0.32.0#72f046fe19a5eac22c7abcf9917956f240759364"
+source = "git+https://github.com/signalapp/libsignal?tag=v0.40.1#f980fccd8ae72fe21dc202d644b358667d60e2b0"
 dependencies = [
  "aes-gcm-siv",
  "bincode",
  "curve25519-dalek",
+ "derive-where",
  "displaydoc",
  "hex",
+ "hex-literal",
+ "hkdf",
  "lazy_static",
- "libsignal-protocol",
+ "libsignal-core",
+ "partial-default",
  "poksho",
  "serde",
  "sha2",
@@ -4544,13 +4340,12 @@ dependencies = [
 
 [[package]]
 name = "zvariant"
-version = "3.15.0"
+version = "4.0.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "44b291bee0d960c53170780af148dca5fa260a63cdd24f1962fa82e03e53338c"
+checksum = "2c1b3ca6db667bfada0f1ebfc94b2b1759ba25472ee5373d4551bb892616389a"
 dependencies = [
- "byteorder",
+ "endi",
  "enumflags2",
- "libc",
  "serde",
  "static_assertions",
  "url",
@@ -4559,11 +4354,11 @@ dependencies = [
 
 [[package]]
 name = "zvariant_derive"
-version = "3.15.0"
+version = "4.0.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "934d7a7dfc310d6ee06c87ffe88ef4eca7d3e37bb251dece2ef93da8f17d8ecd"
+checksum = "b7a4b236063316163b69039f77ce3117accb41a09567fd24c168e43491e521bc"
 dependencies = [
- "proc-macro-crate 1.3.1",
+ "proc-macro-crate 3.1.0",
  "proc-macro2",
  "quote",
  "syn 1.0.109",
@@ -4572,9 +4367,9 @@ dependencies = [
 
 [[package]]
 name = "zvariant_utils"
-version = "1.0.1"
+version = "1.1.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7234f0d811589db492d16893e3f21e8e2fd282e6d01b0cddee310322062cc200"
+checksum = "00bedb16a193cc12451873fee2a1bc6550225acece0e36f333e68326c73c8172"
 dependencies = [
  "proc-macro2",
  "quote",
diff --git a/pkgs/applications/networking/instant-messengers/flare-signal/default.nix b/pkgs/applications/networking/instant-messengers/flare-signal/default.nix
index f21241e10b60..ea6fb5d4e3bd 100644
--- a/pkgs/applications/networking/instant-messengers/flare-signal/default.nix
+++ b/pkgs/applications/networking/instant-messengers/flare-signal/default.nix
@@ -21,23 +21,23 @@
 
 stdenv.mkDerivation rec {
   pname = "flare";
-  version = "0.13.0";
+  version = "0.14.3";
 
   src = fetchFromGitLab {
     domain = "gitlab.com";
     owner = "schmiddi-on-mobile";
     repo = "flare";
     rev = version;
-    hash = "sha256-WfW2xUlF1vCaYFVP6ds06+niULKZgMMxgAOm66LK2xQ=";
+    hash = "sha256-e/XkY5xULYnx5zBB3pxjBSocufK85xzb2t+kVXxhFNg=";
   };
 
   cargoDeps = rustPlatform.importCargoLock {
     lockFile = ./Cargo.lock;
     outputHashes = {
-      "curve25519-dalek-4.0.0" = "sha256-KUXvYXeVvJEQ/+dydKzXWCZmA2bFa2IosDzaBL6/Si0=";
-      "libsignal-protocol-0.1.0" = "sha256-FCrJO7porlY5FrwZ2c67UPd4tgN7cH2/3DTwfPjihwM=";
-      "libsignal-service-0.1.0" = "sha256-XkCb83IvlnmvhHD8Vi9D5fNuBOoR9yX0/Vlb+YhrDz8=";
-      "presage-0.6.0-dev" = "sha256-zot92dlGtB7B423BU74oqpPzQKvLm2Dw9P8lCWkbsoE=";
+      "curve25519-dalek-4.1.1" = "sha256-p9Vx0lAaYILypsI4/RVsHZLOqZKaa4Wvf7DanLA38pc=";
+      "libsignal-core-0.1.0" = "sha256-p4YzrtJaQhuMBTtquvS1m9llszfyTeDfl7+IXzRUFSE=";
+      "libsignal-service-0.1.0" = "sha256-rXa/7AmCt03WvMPqrOxPkQlNrMvJQuodEkBuqYo9sFQ=";
+      "presage-0.6.1" = "sha256-4rH/Yt//0EpF8KQQXkurX5m9tMrFRI2MaJ+IzddVUUU=";
     };
   };
 
diff --git a/pkgs/applications/networking/instant-messengers/fractal/Cargo.lock b/pkgs/applications/networking/instant-messengers/fractal/Cargo.lock
index 8d77d6a44c59..336cfeb7c00a 100644
--- a/pkgs/applications/networking/instant-messengers/fractal/Cargo.lock
+++ b/pkgs/applications/networking/instant-messengers/fractal/Cargo.lock
@@ -11,7 +11,7 @@ dependencies = [
  "macroific",
  "proc-macro2",
  "quote",
- "syn 2.0.41",
+ "syn 2.0.58",
 ]
 
 [[package]]
@@ -41,21 +41,20 @@ dependencies = [
 
 [[package]]
 name = "aes"
-version = "0.8.3"
+version = "0.8.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ac1f845298e95f983ff1944b728ae08b8cebab80d684f0a832ed0fc74dfa27e2"
+checksum = "b169f7a6d4742236a0a00c541b845991d0ac43e546831af1249753ab4c3aa3a0"
 dependencies = [
  "cfg-if",
  "cipher",
  "cpufeatures",
- "zeroize",
 ]
 
 [[package]]
 name = "ahash"
-version = "0.8.6"
+version = "0.8.11"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "91429305e9f0a25f6205c5b8e0d2db09e0708a7a6df0f42212bb56c32c8ac97a"
+checksum = "e89da841a80418a9b391ebaea17f5c112ffaaa96f621d2c285b5174da76b9011"
 dependencies = [
  "cfg-if",
  "once_cell",
@@ -65,14 +64,20 @@ dependencies = [
 
 [[package]]
 name = "aho-corasick"
-version = "1.1.2"
+version = "1.1.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b2969dcb958b36655471fc61f7e416fa76033bdd4bfed0678d8fee1e2d07a1f0"
+checksum = "8e60d3430d3a69478ad0993f19238d2df97c507009a52b3c10addcd7f6bcb916"
 dependencies = [
  "memchr",
 ]
 
 [[package]]
+name = "aligned-vec"
+version = "0.5.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "4aa90d7ce82d4be67b64039a3d588d38dbcc6736577de4a847025ce5b0c468d1"
+
+[[package]]
 name = "allocator-api2"
 version = "0.2.16"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -107,10 +112,20 @@ dependencies = [
 ]
 
 [[package]]
+name = "annotate-snippets"
+version = "0.9.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "ccaf7e9dfbb6ab22c82e473cd1a8a7bd313c19a5b7e40970f3d89ef5a5c9e81e"
+dependencies = [
+ "unicode-width",
+ "yansi-term",
+]
+
+[[package]]
 name = "anyhow"
-version = "1.0.75"
+version = "1.0.82"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a4668cab20f66d8d020e1fbc0ebe47217433c1b6c8f2040faf858554e394ace6"
+checksum = "f538837af36e6f6a9be0faa67f9a314f8119e4e4b5867c6ab40ed60360142519"
 
 [[package]]
 name = "anymap2"
@@ -120,16 +135,33 @@ checksum = "d301b3b94cb4b2f23d7917810addbbaff90738e0ca2be692bd027e70d7e0330c"
 
 [[package]]
 name = "aquamarine"
-version = "0.3.3"
+version = "0.5.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d1da02abba9f9063d786eab1509833ebb2fac0f966862ca59439c76b9c566760"
+checksum = "21cc1548309245035eb18aa7f0967da6bc65587005170c56e6ef2788a4cf3f4e"
 dependencies = [
  "include_dir",
  "itertools 0.10.5",
  "proc-macro-error",
  "proc-macro2",
  "quote",
- "syn 1.0.109",
+ "syn 2.0.58",
+]
+
+[[package]]
+name = "arbitrary"
+version = "1.3.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "7d5a26814d8dcb93b0e5a0ff3c6d80a8843bafb21b39e8e18a6f05471870e110"
+
+[[package]]
+name = "arg_enum_proc_macro"
+version = "0.3.4"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "0ae92a5119aa49cdbcf6b9f893fe4e1d98b04ccbf82ee0584ad948a44a734dea"
+dependencies = [
+ "proc-macro2",
+ "quote",
+ "syn 2.0.58",
 ]
 
 [[package]]
@@ -155,15 +187,13 @@ checksum = "f38fa22307249f86fb7fad906fcae77f2564caeb56d7209103c551cd1cf4798f"
 
 [[package]]
 name = "ashpd"
-version = "0.6.7"
+version = "0.8.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2c018490e423efb6f032ef575f873ea57b61d44bec763cfe027b8e8852a027cf"
+checksum = "dd884d7c72877a94102c3715f3b1cd09ff4fac28221add3e57cfbe25c236d093"
 dependencies = [
  "enumflags2",
  "futures-channel",
  "futures-util",
- "libc",
- "once_cell",
  "pipewire",
  "rand",
  "serde",
@@ -182,32 +212,34 @@ checksum = "5f093eed78becd229346bf859eec0aa4dd7ddde0757287b2b4107a1f09c80002"
 
 [[package]]
 name = "async-broadcast"
-version = "0.5.1"
+version = "0.7.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7c48ccdbf6ca6b121e0f586cbc0e73ae440e56c67c30fa0873b4e110d9c26d2b"
+checksum = "258b52a1aa741b9f09783b2d86cf0aeeb617bbf847f6933340a39644227acbdb"
 dependencies = [
- "event-listener 2.5.3",
+ "event-listener 5.3.0",
+ "event-listener-strategy 0.5.1",
  "futures-core",
+ "pin-project-lite",
 ]
 
 [[package]]
 name = "async-channel"
-version = "2.1.1"
+version = "2.2.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1ca33f4bc4ed1babef42cad36cc1f51fa88be00420404e5b1e80ab1b18f7678c"
+checksum = "f28243a43d821d11341ab73c80bed182dc015c514b951616cf79bd4af39af0c3"
 dependencies = [
  "concurrent-queue",
- "event-listener 4.0.0",
- "event-listener-strategy",
+ "event-listener 5.3.0",
+ "event-listener-strategy 0.5.1",
  "futures-core",
  "pin-project-lite",
 ]
 
 [[package]]
 name = "async-compression"
-version = "0.4.5"
+version = "0.4.8"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "bc2d0cfb2a7388d34f590e76686704c494ed7aaceed62ee1ba35cbf363abc2a5"
+checksum = "07dbbf24db18d609b1462965249abdf49129ccad073ec257da372adc83259c60"
 dependencies = [
  "flate2",
  "futures-core",
@@ -218,38 +250,18 @@ dependencies = [
 
 [[package]]
 name = "async-io"
-version = "1.13.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0fc5b45d93ef0529756f812ca52e44c221b35341892d3dcc34132ac02f3dd2af"
-dependencies = [
- "async-lock 2.8.0",
- "autocfg",
- "cfg-if",
- "concurrent-queue",
- "futures-lite 1.13.0",
- "log",
- "parking",
- "polling 2.8.0",
- "rustix 0.37.27",
- "slab",
- "socket2 0.4.10",
- "waker-fn",
-]
-
-[[package]]
-name = "async-io"
-version = "2.2.2"
+version = "2.3.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6afaa937395a620e33dc6a742c593c01aced20aa376ffb0f628121198578ccc7"
+checksum = "dcccb0f599cfa2f8ace422d3555572f47424da5648a4382a9dd0310ff8210884"
 dependencies = [
- "async-lock 3.2.0",
+ "async-lock 3.3.0",
  "cfg-if",
  "concurrent-queue",
  "futures-io",
- "futures-lite 2.1.0",
+ "futures-lite",
  "parking",
- "polling 3.3.1",
- "rustix 0.38.28",
+ "polling",
+ "rustix",
  "slab",
  "tracing",
  "windows-sys 0.52.0",
@@ -266,12 +278,12 @@ dependencies = [
 
 [[package]]
 name = "async-lock"
-version = "3.2.0"
+version = "3.3.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7125e42787d53db9dd54261812ef17e937c95a51e4d291373b670342fa44310c"
+checksum = "d034b430882f8381900d3fe6f0aaa3ad94f2cb4ac519b429692a1bc2dda4ae7b"
 dependencies = [
- "event-listener 4.0.0",
- "event-listener-strategy",
+ "event-listener 4.0.3",
+ "event-listener-strategy 0.4.0",
  "pin-project-lite",
 ]
 
@@ -283,30 +295,33 @@ checksum = "9338790e78aa95a416786ec8389546c4b6a1dfc3dc36071ed9518a9413a542eb"
 
 [[package]]
 name = "async-process"
-version = "1.8.1"
+version = "2.2.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ea6438ba0a08d81529c69b36700fa2f95837bfe3e776ab39cde9c14d9149da88"
+checksum = "d999d925640d51b662b7b4e404224dd81de70f4aa4a199383c2c5e5b86885fa3"
 dependencies = [
- "async-io 1.13.0",
- "async-lock 2.8.0",
+ "async-channel",
+ "async-io",
+ "async-lock 3.3.0",
  "async-signal",
+ "async-task",
  "blocking",
  "cfg-if",
- "event-listener 3.1.0",
- "futures-lite 1.13.0",
- "rustix 0.38.28",
- "windows-sys 0.48.0",
+ "event-listener 5.3.0",
+ "futures-lite",
+ "rustix",
+ "tracing",
+ "windows-sys 0.52.0",
 ]
 
 [[package]]
 name = "async-recursion"
-version = "1.0.5"
+version = "1.1.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5fd55a5ba1179988837d24ab4c7cc8ed6efdeff578ede0416b4225a5fca35bd0"
+checksum = "30c5ef0ede93efbf733c1a727f3b6b5a1060bbedd5600183e66f6e4be4af0ec5"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.41",
+ "syn 2.0.58",
 ]
 
 [[package]]
@@ -325,13 +340,13 @@ version = "0.2.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "9e47d90f65a225c4527103a8d747001fc56e375203592b25ad103e1ca13124c5"
 dependencies = [
- "async-io 2.2.2",
+ "async-io",
  "async-lock 2.8.0",
  "atomic-waker",
  "cfg-if",
  "futures-core",
  "futures-io",
- "rustix 0.38.28",
+ "rustix",
  "signal-hook-registry",
  "slab",
  "windows-sys 0.48.0",
@@ -356,24 +371,24 @@ checksum = "16e62a023e7c117e27523144c5d2459f4397fcc3cab0085af8e2224f643a0193"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.41",
+ "syn 2.0.58",
 ]
 
 [[package]]
 name = "async-task"
-version = "4.5.0"
+version = "4.7.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b4eb2cdb97421e01129ccb49169d8279ed21e829929144f4a22a6e54ac549ca1"
+checksum = "fbb36e985947064623dbd357f727af08ffd077f93d696782f3c56365fa2e2799"
 
 [[package]]
 name = "async-trait"
-version = "0.1.74"
+version = "0.1.79"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a66537f1bb974b254c98ed142ff995236e81b9d0fe4db0575f46612cb15eb0f9"
+checksum = "a507401cad91ec6a857ed5513a2073c82a9b9048762b885bb98655b306964681"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.41",
+ "syn 2.0.58",
 ]
 
 [[package]]
@@ -396,9 +411,32 @@ checksum = "41e67cd8309bbd06cd603a9e693a784ac2e5d1e955f11286e355089fcab3047c"
 
 [[package]]
 name = "autocfg"
-version = "1.1.0"
+version = "1.2.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "f1fdabc7756949593fe60f30ec81974b613357de856987752631dea1e3394c80"
+
+[[package]]
+name = "av1-grain"
+version = "0.2.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "6678909d8c5d46a42abcf571271e15fdbc0a225e3646cf23762cd415046c78bf"
+dependencies = [
+ "anyhow",
+ "arrayvec",
+ "log",
+ "nom",
+ "num-rational",
+ "v_frame",
+]
+
+[[package]]
+name = "avif-serialize"
+version = "0.8.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d468802bab17cbc0cc575e9b053f41e72aa36bfa6b7f55e3529ffa43161b97fa"
+checksum = "876c75a42f6364451a033496a14c44bffe41f5f4a8236f697391f11024e596d2"
+dependencies = [
+ "arrayvec",
+]
 
 [[package]]
 name = "backoff"
@@ -416,9 +454,9 @@ dependencies = [
 
 [[package]]
 name = "backtrace"
-version = "0.3.69"
+version = "0.3.71"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2089b7e3f35b9dd2d0ed921ead4f6d318c27680d4a5bd167b3ee120edb105837"
+checksum = "26b05800d2e817c8b3b4b54abd461726265fa9789ae34330622f2db9ee696f9d"
 dependencies = [
  "addr2line",
  "cc",
@@ -437,9 +475,15 @@ checksum = "4c7f02d4ea65f2c1853089ffd8d2787bdbc63de2f0d29dedbcf8ccdfa0ccd4cf"
 
 [[package]]
 name = "base64"
-version = "0.21.5"
+version = "0.21.7"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "35636a1494ede3b646cc98f74f8e62c773a38a659ebc777a2cf26b9b74171df9"
+checksum = "9d297deb1925b89f2ccc13d7635fa0714f12c87adce1c75356b39ca9b7178567"
+
+[[package]]
+name = "base64"
+version = "0.22.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "9475866fec1451be56a3c2400fd081ff546538961565ccb5b7142cbd22bc7a51"
 
 [[package]]
 name = "base64ct"
@@ -449,22 +493,23 @@ checksum = "8c3c1a368f70d6cf7302d78f8f7093da241fb8e8807c05cc9e51a125895a6d5b"
 
 [[package]]
 name = "bindgen"
-version = "0.66.1"
+version = "0.69.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f2b84e06fc203107bfbad243f4aba2af864eb7db3b1cf46ea0a023b0b433d2a7"
+checksum = "a00dc851838a2120612785d195287475a3ac45514741da670b735818822129a0"
 dependencies = [
- "bitflags 2.4.1",
+ "annotate-snippets",
+ "bitflags 2.5.0",
  "cexpr",
  "clang-sys",
+ "itertools 0.12.1",
  "lazy_static",
  "lazycell",
- "peeking_take_while",
  "proc-macro2",
  "quote",
  "regex",
  "rustc-hash",
  "shlex",
- "syn 2.0.41",
+ "syn 2.0.58",
 ]
 
 [[package]]
@@ -481,21 +526,30 @@ checksum = "bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a"
 
 [[package]]
 name = "bitflags"
-version = "2.4.1"
+version = "2.5.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "327762f6e5a765692301e5bb513e0d9fef63be86bbc14528052b1cd3e6f03e07"
+checksum = "cf4b9d6a944f767f8e5e0db018570623c85f3d925ac718db4e06d0187adb21c1"
+dependencies = [
+ "serde",
+]
 
 [[package]]
 name = "bitmaps"
-version = "3.2.0"
+version = "3.2.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "a1d084b0137aaa901caf9f1e8b21daa6aa24d41cd806e111335541eff9683bd6"
+
+[[package]]
+name = "bitstream-io"
+version = "2.2.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "703642b98a00b3b90513279a8ede3fcfa479c126c5fb46e78f3051522f021403"
+checksum = "06c9989a51171e2e81038ab168b6ae22886fe9ded214430dbb4f41c28cf176da"
 
 [[package]]
 name = "blake3"
-version = "1.5.0"
+version = "1.5.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0231f06152bf547e9c2b5194f247cd97aacf6dcd8b15d8e5ec0663f64580da87"
+checksum = "30cca6d3674597c30ddf2c587bf8d9d65c9a84d2326d941cc79c9842dfe0ef52"
 dependencies = [
  "arrayref",
  "arrayvec",
@@ -535,35 +589,41 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "6a37913e8dc4ddcc604f0c6d3bf2887c995153af3611de9e23c352b44c1b9118"
 dependencies = [
  "async-channel",
- "async-lock 3.2.0",
+ "async-lock 3.3.0",
  "async-task",
- "fastrand 2.0.1",
+ "fastrand",
  "futures-io",
- "futures-lite 2.1.0",
+ "futures-lite",
  "piper",
  "tracing",
 ]
 
 [[package]]
 name = "bs58"
-version = "0.5.0"
+version = "0.5.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f5353f36341f7451062466f0b755b96ac3a9547e4d7f6b70d603fc721a7d7896"
+checksum = "bf88ba1141d185c399bee5288d850d63b8369520c1eafc32a0430b5b6c287bf4"
 dependencies = [
  "tinyvec",
 ]
 
 [[package]]
+name = "built"
+version = "0.7.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "41bfbdb21256b87a8b5e80fab81a8eed158178e812fd7ba451907518b2742f16"
+
+[[package]]
 name = "bumpalo"
-version = "3.14.0"
+version = "3.16.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7f30e7476521f6f8af1a1c4c0b8cc94f0bee37d91763d0ca2665f299b6cd8aec"
+checksum = "79296716171880943b8470b5f8d03aa55eb2e645a4874bdbb28adb49162e012c"
 
 [[package]]
 name = "bytemuck"
-version = "1.14.0"
+version = "1.15.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "374d28ec25809ee0e23827c2ab573d729e293f281dfe393500e7ad618baa61c6"
+checksum = "5d6d68c57235a3a081186990eca2867354726650f42f7516ca50c28d6281fd15"
 
 [[package]]
 name = "byteorder"
@@ -573,9 +633,9 @@ checksum = "1fd0f2584146f6f2ef48085050886acf353beff7305ebd1ae69500e27c67f64b"
 
 [[package]]
 name = "bytes"
-version = "1.5.0"
+version = "1.6.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a2bd12c1caf447e69cd4528f47f94d203fd2582878ecb9e9465484c4148a8223"
+checksum = "514de17de45fdb8dc022b1a7975556c53c86f9f0aa5f534b98977b171857c2c9"
 
 [[package]]
 name = "bytesize"
@@ -585,23 +645,22 @@ checksum = "a3e368af43e418a04d52505cf3dbc23dda4e3407ae2fa99fd0e4f308ce546acc"
 
 [[package]]
 name = "cairo-rs"
-version = "0.18.3"
+version = "0.19.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f33613627f0dea6a731b0605101fad59ba4f193a52c96c4687728d822605a8a1"
+checksum = "b2ac2a4d0e69036cf0062976f6efcba1aaee3e448594e6514bb2ddf87acce562"
 dependencies = [
- "bitflags 2.4.1",
+ "bitflags 2.5.0",
  "cairo-sys-rs",
  "glib",
  "libc",
- "once_cell",
  "thiserror",
 ]
 
 [[package]]
 name = "cairo-sys-rs"
-version = "0.18.2"
+version = "0.19.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "685c9fa8e590b8b3d678873528d83411db17242a73fccaed827770ea0fedda51"
+checksum = "fd3bb3119664efbd78b5e6c93957447944f16bdbced84c17a9f41c7829b81e64"
 dependencies = [
  "glib-sys",
  "libc",
@@ -619,10 +678,11 @@ dependencies = [
 
 [[package]]
 name = "cc"
-version = "1.0.83"
+version = "1.0.92"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f1174fb0b6ec23863f8b971027804a42614e347eafb0a95bf0b12cdae21fc4d0"
+checksum = "2678b2e3449475e95b0aa6f9b506a28e61b3dc8996592b983695e8ebb58a8b41"
 dependencies = [
+ "jobserver",
  "libc",
 ]
 
@@ -637,9 +697,9 @@ dependencies = [
 
 [[package]]
 name = "cfg-expr"
-version = "0.15.5"
+version = "0.15.8"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "03915af431787e6ffdcc74c645077518c6b6e01f80b761e0fbbfa288536311b3"
+checksum = "d067ad48b8650848b989a59a86c6c36a995d02d2bf778d45c3c5d57bc2718f02"
 dependencies = [
  "smallvec",
  "target-lexicon",
@@ -664,6 +724,12 @@ dependencies = [
 ]
 
 [[package]]
+name = "cfg_aliases"
+version = "0.1.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "fd16c4719339c4530435d38e511904438d07cce7950afa3718a84ac36c10e89e"
+
+[[package]]
 name = "chacha20"
 version = "0.9.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -688,16 +754,10 @@ dependencies = [
 ]
 
 [[package]]
-name = "checked_int_cast"
-version = "1.0.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "17cc5e6b5ab06331c33589842070416baa137e8b0eb912b008cfd4a78ada7919"
-
-[[package]]
 name = "chrono"
-version = "0.4.31"
+version = "0.4.37"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7f2c685bad3eb3d45a01354cedb7d5faa66194d1d58ba6e267a8de788f79db38"
+checksum = "8a0d04d43504c61aa6c7531f1871dd0d418d91130162063b789da00fd7057a5e"
 dependencies = [
  "android-tzdata",
  "iana-time-zone",
@@ -705,7 +765,7 @@ dependencies = [
  "num-traits",
  "serde",
  "wasm-bindgen",
- "windows-targets 0.48.5",
+ "windows-targets 0.52.4",
 ]
 
 [[package]]
@@ -721,9 +781,9 @@ dependencies = [
 
 [[package]]
 name = "clang-sys"
-version = "1.6.1"
+version = "1.7.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c688fc74432808e3eb684cae8830a86be1d66a2bd58e1f248ed0960a590baf6f"
+checksum = "67523a3b4be3ce1989d607a828d036249522dd9c1c8de7f4dd2dae43a37369d1"
 dependencies = [
  "glob",
  "libc",
@@ -774,9 +834,12 @@ dependencies = [
 
 [[package]]
 name = "cookie-factory"
-version = "0.3.2"
+version = "0.3.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "396de984970346b0d9e93d1415082923c679e5ae5c3ee3dcbd104f5610af126b"
+checksum = "9885fa71e26b8ab7855e2ec7cae6e9b380edff76cd052e07c683a0319d51b3a2"
+dependencies = [
+ "futures",
+]
 
 [[package]]
 name = "core-foundation"
@@ -796,63 +859,55 @@ checksum = "06ea2b9bc92be3c2baa9334a323ebca2d6f074ff852cd1d7b11064035cd3868f"
 
 [[package]]
 name = "cpufeatures"
-version = "0.2.11"
+version = "0.2.12"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ce420fe07aecd3e67c5f910618fe65e94158f6dcc0adf44e00d69ce2bdfe0fd0"
+checksum = "53fe5e26ff1b7aef8bca9c6080520cfb8d9333c7568e1829cef191a9723e5504"
 dependencies = [
  "libc",
 ]
 
 [[package]]
 name = "crc32fast"
-version = "1.3.2"
+version = "1.4.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b540bd8bc810d3885c6ea91e2018302f68baba2129ab3e88f32389ee9370880d"
+checksum = "b3855a8a784b474f333699ef2bbca9db2c4a1f6d9088a90a2d25b1eb53111eaa"
 dependencies = [
  "cfg-if",
 ]
 
 [[package]]
 name = "crossbeam-channel"
-version = "0.5.9"
+version = "0.5.12"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "14c3242926edf34aec4ac3a77108ad4854bffaa2e4ddc1824124ce59231302d5"
+checksum = "ab3db02a9c5b5121e1e42fbdb1aeb65f5e02624cc58c43f2884c6ccac0b82f95"
 dependencies = [
- "cfg-if",
  "crossbeam-utils",
 ]
 
 [[package]]
 name = "crossbeam-deque"
-version = "0.8.4"
+version = "0.8.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "fca89a0e215bab21874660c67903c5f143333cab1da83d041c7ded6053774751"
+checksum = "613f8cc01fe9cf1a3eb3d7f488fd2fa8388403e97039e2f73692932e291a770d"
 dependencies = [
- "cfg-if",
  "crossbeam-epoch",
  "crossbeam-utils",
 ]
 
 [[package]]
 name = "crossbeam-epoch"
-version = "0.9.16"
+version = "0.9.18"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2d2fe95351b870527a5d09bf563ed3c97c0cffb87cf1c78a591bf48bb218d9aa"
+checksum = "5b82ac4a3c2ca9c3460964f020e1402edd5753411d7737aa39c3714ad1b5420e"
 dependencies = [
- "autocfg",
- "cfg-if",
  "crossbeam-utils",
- "memoffset 0.9.0",
 ]
 
 [[package]]
 name = "crossbeam-utils"
-version = "0.8.17"
+version = "0.8.19"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c06d96137f14f244c37f989d9fff8f95e6c18b918e71f36638f8c49112e4c78f"
-dependencies = [
- "cfg-if",
-]
+checksum = "248e3bacc7dc6baa3b21e405ee045c3047101a49145e7e9eca583ab4c2ca5345"
 
 [[package]]
 name = "crunchy"
@@ -894,9 +949,9 @@ dependencies = [
 
 [[package]]
 name = "curve25519-dalek"
-version = "4.1.1"
+version = "4.1.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e89b8c6a2e4b1f45971ad09761aafb85514a84744b67a95e32c3cc1352d1f65c"
+checksum = "0a677b8922c94e01bdbb12126b0bc852f00447528dee1782229af9c720c3f348"
 dependencies = [
  "cfg-if",
  "cpufeatures",
@@ -918,77 +973,42 @@ checksum = "f46882e17999c6cc590af592290432be3bce0428cb0d5f8b6715e4dc7b383eb3"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.41",
-]
-
-[[package]]
-name = "darling"
-version = "0.14.4"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7b750cb3417fd1b327431a470f388520309479ab0bf5e323505daf0290cd3850"
-dependencies = [
- "darling_core 0.14.4",
- "darling_macro 0.14.4",
+ "syn 2.0.58",
 ]
 
 [[package]]
 name = "darling"
-version = "0.20.3"
+version = "0.20.8"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0209d94da627ab5605dcccf08bb18afa5009cfbef48d8a8b7d7bdbc79be25c5e"
+checksum = "54e36fcd13ed84ffdfda6f5be89b31287cbb80c439841fe69e04841435464391"
 dependencies = [
- "darling_core 0.20.3",
- "darling_macro 0.20.3",
-]
-
-[[package]]
-name = "darling_core"
-version = "0.14.4"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "109c1ca6e6b7f82cc233a97004ea8ed7ca123a9af07a8230878fcfda9b158bf0"
-dependencies = [
- "fnv",
- "ident_case",
- "proc-macro2",
- "quote",
- "strsim",
- "syn 1.0.109",
+ "darling_core",
+ "darling_macro",
 ]
 
 [[package]]
 name = "darling_core"
-version = "0.20.3"
+version = "0.20.8"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "177e3443818124b357d8e76f53be906d60937f0d3a90773a664fa63fa253e621"
+checksum = "9c2cf1c23a687a1feeb728783b993c4e1ad83d99f351801977dd809b48d0a70f"
 dependencies = [
  "fnv",
  "ident_case",
  "proc-macro2",
  "quote",
  "strsim",
- "syn 2.0.41",
+ "syn 2.0.58",
 ]
 
 [[package]]
 name = "darling_macro"
-version = "0.14.4"
+version = "0.20.8"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a4aab4dbc9f7611d8b55048a3a16d2d010c2c8334e46304b40ac1cc14bf3b48e"
+checksum = "a668eda54683121533a393014d8692171709ff57a7d61f187b6e782719f8933f"
 dependencies = [
- "darling_core 0.14.4",
+ "darling_core",
  "quote",
- "syn 1.0.109",
-]
-
-[[package]]
-name = "darling_macro"
-version = "0.20.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "836a9bbc7ad63342d6d6e7b815ccab164bc77a2d95d84bc3117a8c0d5c98e2d5"
-dependencies = [
- "darling_core 0.20.3",
- "quote",
- "syn 2.0.41",
+ "syn 2.0.58",
 ]
 
 [[package]]
@@ -1047,14 +1067,14 @@ dependencies = [
  "macroific",
  "proc-macro2",
  "quote",
- "syn 2.0.41",
+ "syn 2.0.58",
 ]
 
 [[package]]
 name = "der"
-version = "0.7.8"
+version = "0.7.9"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "fffa369a668c8af7dbf8b5e56c9f744fbd399949ed171606040001947de40b1c"
+checksum = "f55bf8e7b65898637379c1b74eb1551107c8294ed26d855ceb9fd1a09cfc9bc0"
 dependencies = [
  "const-oid",
  "der_derive",
@@ -1071,14 +1091,14 @@ checksum = "5fe87ce4529967e0ba1dcf8450bab64d97dfd5010a6256187ffe2e43e6f0e049"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.41",
+ "syn 2.0.58",
 ]
 
 [[package]]
 name = "deranged"
-version = "0.3.10"
+version = "0.3.11"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8eb30d70a07a3b04884d2677f06bec33509dc67ca60d92949e5535352d3191dc"
+checksum = "b42b6fa04a440b495c8b04d0e71b707c585f83cb9cb28cf8cd0d976c315e31b4"
 dependencies = [
  "powerfmt",
  "serde",
@@ -1097,33 +1117,33 @@ dependencies = [
 
 [[package]]
 name = "derive_builder"
-version = "0.12.0"
+version = "0.20.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8d67778784b508018359cbc8696edb3db78160bab2c2a28ba7f56ef6932997f8"
+checksum = "0350b5cb0331628a5916d6c5c0b72e97393b8b6b03b47a9284f4e7f5a405ffd7"
 dependencies = [
  "derive_builder_macro",
 ]
 
 [[package]]
 name = "derive_builder_core"
-version = "0.12.0"
+version = "0.20.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c11bdc11a0c47bc7d37d582b5285da6849c96681023680b906673c5707af7b0f"
+checksum = "d48cda787f839151732d396ac69e3473923d54312c070ee21e9effcaa8ca0b1d"
 dependencies = [
- "darling 0.14.4",
+ "darling",
  "proc-macro2",
  "quote",
- "syn 1.0.109",
+ "syn 2.0.58",
 ]
 
 [[package]]
 name = "derive_builder_macro"
-version = "0.12.0"
+version = "0.20.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ebcda35c7a396850a55ffeac740804b40ffec779b98fffbb1738f4033f0ee79e"
+checksum = "206868b8242f27cecce124c19fd88157fbd0dd334df2587f36417bafbc85097b"
 dependencies = [
  "derive_builder_core",
- "syn 1.0.109",
+ "syn 2.0.58",
 ]
 
 [[package]]
@@ -1146,7 +1166,7 @@ checksum = "487585f4d0c6655fe74905e2504d8ad6908e4db67f744eb140876906c2f3175d"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.41",
+ "syn 2.0.58",
 ]
 
 [[package]]
@@ -1157,9 +1177,9 @@ checksum = "e8cf7d61e627a3b49af8f24f47e57f3788cdd7a0e4f17cd79fda5ada87f08578"
 
 [[package]]
 name = "dyn-clone"
-version = "1.0.16"
+version = "1.0.17"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "545b22097d44f8a9581187cdf93de7a71e4722bf51200cfaba810865b49a495d"
+checksum = "0d6ef0072f8a535281e4876be788938b528e9a1d43900b82c2569af7da799125"
 
 [[package]]
 name = "ecdsa"
@@ -1188,9 +1208,9 @@ dependencies = [
 
 [[package]]
 name = "ed25519-dalek"
-version = "2.1.0"
+version = "2.1.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1f628eaec48bfd21b865dc2950cfa014450c01d2fa2b69a86c2fd5844ec523c0"
+checksum = "4a3daa8e81a3963a60642bcc1f90a670680bd4a77535faa384e9d1c79d620871"
 dependencies = [
  "curve25519-dalek",
  "ed25519",
@@ -1203,9 +1223,9 @@ dependencies = [
 
 [[package]]
 name = "either"
-version = "1.9.0"
+version = "1.10.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a26ae43d7bcc3b814de94796a5e736d4029efb0ee900c12e2d54c993ad1a1e07"
+checksum = "11157ac094ffbdde99aa67b23417ebdd801842852b500e395a45a9c0aac03e4a"
 
 [[package]]
 name = "elliptic-curve"
@@ -1230,18 +1250,24 @@ dependencies = [
 
 [[package]]
 name = "encoding_rs"
-version = "0.8.33"
+version = "0.8.34"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7268b386296a025e474d5140678f75d6de9493ae55a5d709eeb9dd08149945e1"
+checksum = "b45de904aa0b010bce2ab45264d0631681847fa7b6f2eaa7dab7619943bc4f59"
 dependencies = [
  "cfg-if",
 ]
 
 [[package]]
+name = "endi"
+version = "1.1.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "a3d8a32ae18130a3c84dd492d4215c3d913c3b07c6b63c2eb3eb7ff1101ab7bf"
+
+[[package]]
 name = "enumflags2"
-version = "0.7.8"
+version = "0.7.9"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5998b4f30320c9d93aed72f63af821bfdac50465b75428fce77b48ec482c3939"
+checksum = "3278c9d5fb675e0a51dabcf4c0d355f692b064171535ba72361be1528a9d8e8d"
 dependencies = [
  "enumflags2_derive",
  "serde",
@@ -1249,13 +1275,13 @@ dependencies = [
 
 [[package]]
 name = "enumflags2_derive"
-version = "0.7.8"
+version = "0.7.9"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f95e2801cd355d4a1a3e3953ce6ee5ae9603a5c833455343a8bfe3f44d418246"
+checksum = "5c785274071b1b420972453b306eeca06acf4633829db4223b58a2a8c5953bc4"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.41",
+ "syn 2.0.58",
 ]
 
 [[package]]
@@ -1282,9 +1308,9 @@ checksum = "0206175f82b8d6bf6652ff7d71a1e27fd2e4efde587fd368662814d6ec1d9ce0"
 
 [[package]]
 name = "event-listener"
-version = "3.1.0"
+version = "4.0.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d93877bcde0eb80ca09131a08d23f0a5c18a620b01db137dba666d18cd9b30c2"
+checksum = "67b215c49b2b248c855fb73579eb1f4f26c38ffdc12973e20e07b91d78d5646e"
 dependencies = [
  "concurrent-queue",
  "parking",
@@ -1293,9 +1319,9 @@ dependencies = [
 
 [[package]]
 name = "event-listener"
-version = "4.0.0"
+version = "5.3.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "770d968249b5d99410d61f5bf89057f3199a077a04d087092f58e7d10692baae"
+checksum = "6d9944b8ca13534cdfb2800775f8dd4902ff3fc75a50101466decadfdf322a24"
 dependencies = [
  "concurrent-queue",
  "parking",
@@ -1308,15 +1334,25 @@ version = "0.4.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "958e4d70b6d5e81971bebec42271ec641e7ff4e170a6fa605f2b8a8b65cb97d3"
 dependencies = [
- "event-listener 4.0.0",
+ "event-listener 4.0.3",
+ "pin-project-lite",
+]
+
+[[package]]
+name = "event-listener-strategy"
+version = "0.5.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "332f51cb23d20b0de8458b86580878211da09bcd4503cb579c225b3d124cabb3"
+dependencies = [
+ "event-listener 5.3.0",
  "pin-project-lite",
 ]
 
 [[package]]
 name = "exr"
-version = "1.71.0"
+version = "1.72.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "832a761f35ab3e6664babfbdc6cef35a4860e816ec3916dcfd0882954e98a8a8"
+checksum = "887d93f60543e9a9362ef8a21beedd0a833c5d9610e18c67abe15a5963dcb1a4"
 dependencies = [
  "bit_field",
  "flume",
@@ -1354,14 +1390,16 @@ dependencies = [
 
 [[package]]
 name = "eyeball-im-util"
-version = "0.5.1"
+version = "0.5.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "191adac85d269e80f4e44c2b3e8fc2b193b2e3574a997962066b5980cab1fcc1"
+checksum = "c0fea22ab33f31f2fac1a3a81b9024b461e28518f3262fecb6156943221e9960"
 dependencies = [
+ "arrayvec",
  "eyeball-im",
  "futures-core",
  "imbl",
  "pin-project-lite",
+ "smallvec",
 ]
 
 [[package]]
@@ -1385,29 +1423,20 @@ dependencies = [
  "macroific",
  "proc-macro2",
  "quote",
- "syn 2.0.41",
+ "syn 2.0.58",
 ]
 
 [[package]]
 name = "fastrand"
-version = "1.9.0"
+version = "2.0.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e51093e27b0797c359783294ca4f0a911c270184cb10f85783b118614a1501be"
-dependencies = [
- "instant",
-]
-
-[[package]]
-name = "fastrand"
-version = "2.0.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "25cbce373ec4653f1a01a31e8a5e5ec0c622dc27ff9c4e6606eefef5cbbed4a5"
+checksum = "658bd65b1cf4c852a3cc96f18a8ce7b5640f6b703f905c7d74532294c2a63984"
 
 [[package]]
 name = "fdeflate"
-version = "0.3.1"
+version = "0.3.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "64d6dafc854908ff5da46ff3f8f473c6984119a2876a383a860246dd7841a868"
+checksum = "4f9bfee30e4dedf0ab8b422f03af778d9612b63f502710fc500a334ebe2de645"
 dependencies = [
  "simd-adler32",
 ]
@@ -1424,9 +1453,9 @@ dependencies = [
 
 [[package]]
 name = "fiat-crypto"
-version = "0.2.5"
+version = "0.2.7"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "27573eac26f4dd11e2b1916c3fe1baa56407c83c71a773a8ba17ec0bca03b6b7"
+checksum = "c007b1ae3abe1cb6f85a16305acd418b7ca6343b953633fee2b76d8f108b830f"
 
 [[package]]
 name = "field-offset"
@@ -1434,15 +1463,15 @@ version = "0.3.6"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "38e2275cc4e4fc009b0669731a1e5ab7ebf11f469eaede2bab9309a5b4d6057f"
 dependencies = [
- "memoffset 0.9.0",
+ "memoffset",
  "rustc_version",
 ]
 
 [[package]]
 name = "flagset"
-version = "0.4.4"
+version = "0.4.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d52a7e408202050813e6f1d9addadcaafef3dca7530c7ddfb005d4081cce6779"
+checksum = "cdeb3aa5e95cf9aabc17f060cfa0ced7b83f042390760ca53bf09df9968acaa1"
 
 [[package]]
 name = "flate2"
@@ -1495,7 +1524,7 @@ dependencies = [
 
 [[package]]
 name = "fractal"
-version = "6.0.0"
+version = "7.0.0"
 dependencies = [
  "ashpd",
  "djb_hash",
@@ -1514,8 +1543,8 @@ dependencies = [
  "html-escape",
  "html2pango",
  "html5gum",
- "image 0.24.7",
- "indexmap 2.1.0",
+ "image",
+ "indexmap 2.2.6",
  "libadwaita",
  "libshumate",
  "matrix-sdk",
@@ -1524,7 +1553,7 @@ dependencies = [
  "mime_guess",
  "once_cell",
  "oo7",
- "pulldown-cmark",
+ "pulldown-cmark 0.10.2",
  "qrcode",
  "rand",
  "regex",
@@ -1554,25 +1583,41 @@ dependencies = [
 ]
 
 [[package]]
+name = "futures"
+version = "0.3.30"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "645c6916888f6cb6350d2550b80fb63e734897a8498abe35cfb732b6487804b0"
+dependencies = [
+ "futures-channel",
+ "futures-core",
+ "futures-executor",
+ "futures-io",
+ "futures-sink",
+ "futures-task",
+ "futures-util",
+]
+
+[[package]]
 name = "futures-channel"
-version = "0.3.29"
+version = "0.3.30"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ff4dd66668b557604244583e3e1e1eada8c5c2e96a6d0d6653ede395b78bbacb"
+checksum = "eac8f7d7865dcb88bd4373ab671c8cf4508703796caa2b1985a9ca867b3fcb78"
 dependencies = [
  "futures-core",
+ "futures-sink",
 ]
 
 [[package]]
 name = "futures-core"
-version = "0.3.29"
+version = "0.3.30"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "eb1d22c66e66d9d72e1758f0bd7d4fd0bee04cad842ee34587d68c07e45d088c"
+checksum = "dfc6580bb841c5a68e9ef15c77ccc837b40a7504914d52e47b8b0e9bbda25a1d"
 
 [[package]]
 name = "futures-executor"
-version = "0.3.29"
+version = "0.3.30"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0f4fb8693db0cf099eadcca0efe2a5a22e4550f98ed16aba6c48700da29597bc"
+checksum = "a576fc72ae164fca6b9db127eaa9a9dda0d61316034f33a0a0d4eda41f02b01d"
 dependencies = [
  "futures-core",
  "futures-task",
@@ -1581,63 +1626,51 @@ dependencies = [
 
 [[package]]
 name = "futures-io"
-version = "0.3.29"
+version = "0.3.30"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8bf34a163b5c4c52d0478a4d757da8fb65cabef42ba90515efee0f6f9fa45aaa"
+checksum = "a44623e20b9681a318efdd71c299b6b222ed6f231972bfe2f224ebad6311f0c1"
 
 [[package]]
 name = "futures-lite"
-version = "1.13.0"
+version = "2.3.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "49a9d51ce47660b1e808d3c990b4709f2f415d928835a17dfd16991515c46bce"
+checksum = "52527eb5074e35e9339c6b4e8d12600c7128b68fb25dcb9fa9dec18f7c25f3a5"
 dependencies = [
- "fastrand 1.9.0",
+ "fastrand",
  "futures-core",
  "futures-io",
- "memchr",
  "parking",
  "pin-project-lite",
- "waker-fn",
-]
-
-[[package]]
-name = "futures-lite"
-version = "2.1.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "aeee267a1883f7ebef3700f262d2d54de95dfaf38189015a74fdc4e0c7ad8143"
-dependencies = [
- "futures-core",
- "pin-project-lite",
 ]
 
 [[package]]
 name = "futures-macro"
-version = "0.3.29"
+version = "0.3.30"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "53b153fd91e4b0147f4aced87be237c98248656bb01050b96bf3ee89220a8ddb"
+checksum = "87750cf4b7a4c0625b1529e4c543c2182106e4dedc60a2a6455e00d212c489ac"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.41",
+ "syn 2.0.58",
 ]
 
 [[package]]
 name = "futures-sink"
-version = "0.3.29"
+version = "0.3.30"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e36d3378ee38c2a36ad710c5d30c2911d752cb941c00c72dbabfb786a7970817"
+checksum = "9fb8e00e87438d937621c1c6269e53f536c14d3fbd6a042bb24879e57d474fb5"
 
 [[package]]
 name = "futures-task"
-version = "0.3.29"
+version = "0.3.30"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "efd193069b0ddadc69c46389b740bbccdd97203899b48d09c5f7969591d6bae2"
+checksum = "38d84fa142264698cdce1a9f9172cf383a0c82de1bddcf3092901442c4097004"
 
 [[package]]
 name = "futures-util"
-version = "0.3.29"
+version = "0.3.30"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a19526d624e703a3179b3d322efec918b6246ea0fa51d41124525f00f1cc8104"
+checksum = "3d6401deb83407ab3da39eba7e33987a73c3df0c82b4bb5813ee871c19c41d48"
 dependencies = [
  "futures-channel",
  "futures-core",
@@ -1690,22 +1723,21 @@ checksum = "af6a86e750338603ea2c14b1c0bfe58cd61f87ca67a0021d9334996024608e12"
 
 [[package]]
 name = "gdk-pixbuf"
-version = "0.18.3"
+version = "0.19.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "446f32b74d22c33b7b258d4af4ffde53c2bf96ca2e29abdf1a785fe59bd6c82c"
+checksum = "f6a23f8a0b5090494fd04924662d463f8386cc678dd3915015a838c1a3679b92"
 dependencies = [
  "gdk-pixbuf-sys",
  "gio",
  "glib",
  "libc",
- "once_cell",
 ]
 
 [[package]]
 name = "gdk-pixbuf-sys"
-version = "0.18.0"
+version = "0.19.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3f9839ea644ed9c97a34d129ad56d38a25e6756f99f3a88e15cd39c20629caf7"
+checksum = "3dcbd04c1b2c4834cc008b4828bc917d062483b88d26effde6342e5622028f96"
 dependencies = [
  "gio-sys",
  "glib-sys",
@@ -1716,9 +1748,9 @@ dependencies = [
 
 [[package]]
 name = "gdk4"
-version = "0.7.3"
+version = "0.8.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7edb019ad581f8ecf8ea8e4baa6df7c483a95b5a59be3140be6a9c3b0c632af6"
+checksum = "9100b25604183f2fd97f55ef087fae96ab4934d7215118a35303e422688e6e4b"
 dependencies = [
  "cairo-rs",
  "gdk-pixbuf",
@@ -1731,9 +1763,9 @@ dependencies = [
 
 [[package]]
 name = "gdk4-sys"
-version = "0.7.2"
+version = "0.8.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "dbab43f332a3cf1df9974da690b5bb0e26720ed09a228178ce52175372dcfef0"
+checksum = "d0b76874c40bb8d1c7d03a7231e23ac75fa577a456cd53af32ec17ec8f121626"
 dependencies = [
  "cairo-sys-rs",
  "gdk-pixbuf-sys",
@@ -1748,25 +1780,23 @@ dependencies = [
 
 [[package]]
 name = "gdk4-win32"
-version = "0.7.2"
+version = "0.8.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "fe66650c41f64e41ada9f85c4bdb96e5549c669e594892240dfb147a63256057"
+checksum = "ab6181b6e5c91ee292dca0032b00d48dee8e61358253742c9752537a88486b3f"
 dependencies = [
  "gdk4",
  "gdk4-win32-sys",
  "gio",
  "glib",
  "libc",
- "system-deps",
 ]
 
 [[package]]
 name = "gdk4-win32-sys"
-version = "0.7.2"
+version = "0.8.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4b5c187546cd3ad9f1787b46c66272d8fcdf8197bfe4f6e2647fe910c39e396d"
+checksum = "efa8530d6619cf43f007f3efd993a356e1ca4e643c4d0bd2a99832a08af2e402"
 dependencies = [
- "gdk-pixbuf-sys",
  "gdk4-sys",
  "glib-sys",
  "libc",
@@ -1786,9 +1816,9 @@ dependencies = [
 
 [[package]]
 name = "geo-uri"
-version = "0.2.1"
+version = "0.2.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a6b8812a079cb4a3b5b366c2d05db8e231e2f231c443acb3532daad996d89f71"
+checksum = "ba35eb77ce72d7eefe4058c11cc816c6f9eb4f62ecc11c154b1d77d4d75399ce"
 dependencies = [
  "derive_builder",
  "thiserror",
@@ -1805,9 +1835,9 @@ dependencies = [
 
 [[package]]
 name = "getrandom"
-version = "0.2.11"
+version = "0.2.14"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "fe9006bed769170c11f845cf00c7c1e9092aeb3f268e007c3e760ac68008070f"
+checksum = "94b22e06ecb0110981051723910cbf0b5f5e09a2062dd7663334ee79a9d1286c"
 dependencies = [
  "cfg-if",
  "js-sys",
@@ -1838,9 +1868,9 @@ dependencies = [
 
 [[package]]
 name = "gif"
-version = "0.12.0"
+version = "0.13.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "80792593675e051cf94a4b111980da2ba60d4a83e43e0048c5693baab3977045"
+checksum = "3fb2d69b19215e18bb912fa30f7ce15846e301408695e44e0ef719f1da9e19f2"
 dependencies = [
  "color_quant",
  "weezl",
@@ -1854,9 +1884,9 @@ checksum = "4271d37baee1b8c7e4b708028c57d816cf9d2434acb33a549475f78c181f6253"
 
 [[package]]
 name = "gio"
-version = "0.18.4"
+version = "0.19.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d4fc8f532f87b79cbc51a79748f16a6828fb784be93145a322fa14d06d354c73"
+checksum = "3f91a0518c2ec539f099d3f945ab2d6a83ec372a9ef40a21906343b191182845"
 dependencies = [
  "futures-channel",
  "futures-core",
@@ -1865,7 +1895,6 @@ dependencies = [
  "gio-sys",
  "glib",
  "libc",
- "once_cell",
  "pin-project-lite",
  "smallvec",
  "thiserror",
@@ -1873,24 +1902,24 @@ dependencies = [
 
 [[package]]
 name = "gio-sys"
-version = "0.18.1"
+version = "0.19.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "37566df850baf5e4cb0dfb78af2e4b9898d817ed9263d1090a2df958c64737d2"
+checksum = "bcf8e1d9219bb294636753d307b030c1e8a032062cba74f493c431a5c8b81ce4"
 dependencies = [
  "glib-sys",
  "gobject-sys",
  "libc",
  "system-deps",
- "winapi",
+ "windows-sys 0.52.0",
 ]
 
 [[package]]
 name = "glib"
-version = "0.18.4"
+version = "0.19.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "951bbd7fdc5c044ede9f05170f05a3ae9479239c3afdfe2d22d537a3add15c4e"
+checksum = "ae1407b2ce171e654720be10d57d4054d3ff2f10a13d5b37e6819b41439832f7"
 dependencies = [
- "bitflags 2.4.1",
+ "bitflags 2.5.0",
  "futures-channel",
  "futures-core",
  "futures-executor",
@@ -1902,30 +1931,28 @@ dependencies = [
  "gobject-sys",
  "libc",
  "memchr",
- "once_cell",
  "smallvec",
  "thiserror",
 ]
 
 [[package]]
 name = "glib-macros"
-version = "0.18.3"
+version = "0.19.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "72793962ceece3863c2965d7f10c8786323b17c7adea75a515809fa20ab799a5"
+checksum = "d8bba315e8ce8aa59631545358450f4962557e89b5f7db7442e7153b47037f71"
 dependencies = [
- "heck",
- "proc-macro-crate 2.0.1",
- "proc-macro-error",
+ "heck 0.5.0",
+ "proc-macro-crate 3.1.0",
  "proc-macro2",
  "quote",
- "syn 2.0.41",
+ "syn 2.0.58",
 ]
 
 [[package]]
 name = "glib-sys"
-version = "0.18.1"
+version = "0.19.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "063ce2eb6a8d0ea93d2bf8ba1957e78dbab6be1c2220dd3daca57d5a9d869898"
+checksum = "630f097773d7c7a0bb3258df4e8157b47dc98bbfa0e60ad9ab56174813feced4"
 dependencies = [
  "libc",
  "system-deps",
@@ -1964,9 +1991,9 @@ dependencies = [
 
 [[package]]
 name = "gobject-sys"
-version = "0.18.0"
+version = "0.19.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0850127b514d1c4a4654ead6dedadb18198999985908e6ffe4436f53c785ce44"
+checksum = "c85e2b1080b9418dd0c58b498da3a5c826030343e0ef07bde6a955d28de54979"
 dependencies = [
  "glib-sys",
  "libc",
@@ -1975,9 +2002,9 @@ dependencies = [
 
 [[package]]
 name = "graphene-rs"
-version = "0.18.1"
+version = "0.19.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3b2228cda1505613a7a956cca69076892cfbda84fc2b7a62b94a41a272c0c401"
+checksum = "99e4d388e96c5f29e2b2f67045d229ddf826d0a8d6d282f94ed3b34452222c91"
 dependencies = [
  "glib",
  "graphene-sys",
@@ -1986,9 +2013,9 @@ dependencies = [
 
 [[package]]
 name = "graphene-sys"
-version = "0.18.1"
+version = "0.19.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "cc4144cee8fc8788f2a9b73dc5f1d4e1189d1f95305c4cb7bd9c1af1cfa31f59"
+checksum = "236ed66cc9b18d8adf233716f75de803d0bf6fc806f60d14d948974a12e240d0"
 dependencies = [
  "glib-sys",
  "libc",
@@ -2009,9 +2036,9 @@ dependencies = [
 
 [[package]]
 name = "gsk4"
-version = "0.7.3"
+version = "0.8.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0d958e351d2f210309b32d081c832d7de0aca0b077aa10d88336c6379bd01f7e"
+checksum = "c65036fc8f99579e8cb37b12487969b707ab23ec8ab953682ff347cbd15d396e"
 dependencies = [
  "cairo-rs",
  "gdk4",
@@ -2024,9 +2051,9 @@ dependencies = [
 
 [[package]]
 name = "gsk4-sys"
-version = "0.7.3"
+version = "0.8.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "12bd9e3effea989f020e8f1ff3fa3b8c63ba93d43b899c11a118868853a56d55"
+checksum = "bd24c814379f9c3199dc53e52253ee8d0f657eae389ab282c330505289d24738"
 dependencies = [
  "cairo-sys-rs",
  "gdk4-sys",
@@ -2040,10 +2067,11 @@ dependencies = [
 
 [[package]]
 name = "gst-plugin-gtk4"
-version = "0.11.2"
+version = "0.12.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "33970273495544e54d5f486d761b09d402f0cf8760990e1ea508bd5141f8ebeb"
+checksum = "83c12132d3619f85db54f6034b4e3872577886657b07e055c521baeb2d5f6733"
 dependencies = [
+ "async-channel",
  "gdk4-win32",
  "gst-plugin-version-helper",
  "gstreamer",
@@ -2051,24 +2079,25 @@ dependencies = [
  "gstreamer-gl",
  "gstreamer-video",
  "gtk4",
- "windows-sys 0.48.0",
+ "once_cell",
+ "windows-sys 0.52.0",
 ]
 
 [[package]]
 name = "gst-plugin-version-helper"
-version = "0.8.0"
+version = "0.8.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "334c37a15ca23861ad8159c8ff6e20f011aa2000defc5c9159096a28842f811b"
+checksum = "4e5e874f1660252fd2ec81c602066df3633b3a6fcbe2b196f7f93c27cf069b2a"
 dependencies = [
  "chrono",
- "toml_edit 0.20.2",
+ "toml_edit 0.22.9",
 ]
 
 [[package]]
 name = "gstreamer"
-version = "0.21.2"
+version = "0.22.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ed97f98d186e63e49079b26af1a1b73e70ab7a2f450eb46a136f2bffc2bf12d5"
+checksum = "fc6f2d7dcde4b42b5297d25e9f51914cacfa148c99ba6ddabebf006fb2b18c20"
 dependencies = [
  "cfg-if",
  "futures-channel",
@@ -2076,24 +2105,24 @@ dependencies = [
  "futures-util",
  "glib",
  "gstreamer-sys",
- "itertools 0.11.0",
+ "itertools 0.12.1",
  "libc",
  "muldiv",
  "num-integer",
- "num-rational 0.4.1",
+ "num-rational",
+ "once_cell",
  "option-operations",
  "paste",
  "pin-project-lite",
- "pretty-hex",
  "smallvec",
  "thiserror",
 ]
 
 [[package]]
 name = "gstreamer-audio"
-version = "0.21.2"
+version = "0.22.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "36d1678eacb7677c1ffdcf220ada416b5fb68e87c33b77319f14bba169fbe3fc"
+checksum = "73a5de9ced05f9650168a74c7a4afeddbf3e63af595a7d56a700765be3b4869c"
 dependencies = [
  "cfg-if",
  "glib",
@@ -2101,13 +2130,15 @@ dependencies = [
  "gstreamer-audio-sys",
  "gstreamer-base",
  "libc",
+ "once_cell",
+ "smallvec",
 ]
 
 [[package]]
 name = "gstreamer-audio-sys"
-version = "0.21.1"
+version = "0.22.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "78bd94ae8b177377855b38c3d809c686526786cdb771e6d68510509634b955d1"
+checksum = "34d92a1e2a915874f70f0a33c3ea4589bc6b66a138b6ec8bb6acedf49bdec2c3"
 dependencies = [
  "glib-sys",
  "gobject-sys",
@@ -2119,9 +2150,9 @@ dependencies = [
 
 [[package]]
 name = "gstreamer-base"
-version = "0.21.2"
+version = "0.22.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "cb150b6904a49052237fede7cc2e6479df6ced5043d95e6af8134bc141a3167f"
+checksum = "514c71195b53c7eced4842b66ca9149833e41cf6a1d949e45e2ca4a4fa929850"
 dependencies = [
  "atomic_refcell",
  "cfg-if",
@@ -2133,9 +2164,9 @@ dependencies = [
 
 [[package]]
 name = "gstreamer-base-sys"
-version = "0.21.1"
+version = "0.22.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f4ca701f9078fe115b29b24c80910b577f9cb5b039182f050dbadf5933594b64"
+checksum = "286591e0f85bbda1adf9bab6f21d015acd9ca0a4d4acb61da65e3d0487e23c4e"
 dependencies = [
  "glib-sys",
  "gobject-sys",
@@ -2146,9 +2177,9 @@ dependencies = [
 
 [[package]]
 name = "gstreamer-gl"
-version = "0.21.2"
+version = "0.22.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3ecfb91128263c160448a915a15e430cfdc69317b1b087316222e0693bb51b90"
+checksum = "7d21c0c5fbf74018a0254b3ab77bca0a5b2c0f002bcfd910c09113ae90a95d98"
 dependencies = [
  "glib",
  "gstreamer",
@@ -2156,13 +2187,14 @@ dependencies = [
  "gstreamer-gl-sys",
  "gstreamer-video",
  "libc",
+ "once_cell",
 ]
 
 [[package]]
 name = "gstreamer-gl-sys"
-version = "0.21.2"
+version = "0.22.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d580971b3c99a667c9739812d499e6c5cadbb92873f984cd0d1d0b4e7346f1cd"
+checksum = "61d1e3b9b02abc23835e9d770f2bd705b67a50406ea37e963b4526a77c6a7cd8"
 dependencies = [
  "glib-sys",
  "gobject-sys",
@@ -2175,9 +2207,9 @@ dependencies = [
 
 [[package]]
 name = "gstreamer-pbutils"
-version = "0.21.2"
+version = "0.22.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "953055f80677b68b2f46f23859d9241df6b3dcf3ca8240db5f9ab50716255237"
+checksum = "f173b14cdf3d10bc57d136797946fe2091c322015d879919765c317a0ea5edb3"
 dependencies = [
  "glib",
  "gstreamer",
@@ -2190,9 +2222,9 @@ dependencies = [
 
 [[package]]
 name = "gstreamer-pbutils-sys"
-version = "0.21.0"
+version = "0.22.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6faae6e3454bc8ca5986d7ef6477fc44b809bfc952a8680eaedb4f2e001f9d69"
+checksum = "6b3afcb1df3d217b2a6b00aa7a391a779764b5be6ccb7dcf35b5690279c61c5c"
 dependencies = [
  "glib-sys",
  "gobject-sys",
@@ -2205,9 +2237,9 @@ dependencies = [
 
 [[package]]
 name = "gstreamer-play"
-version = "0.21.2"
+version = "0.22.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ad2efa4c3f92fa5d5e51e95c83f3b847c9ad16e3498a65beaf721d324187f04a"
+checksum = "04cd4315d97f8f38a6a6fdaad27d51cc67fd132785816091ad9985e197d2c052"
 dependencies = [
  "glib",
  "gstreamer",
@@ -2218,9 +2250,9 @@ dependencies = [
 
 [[package]]
 name = "gstreamer-play-sys"
-version = "0.21.0"
+version = "0.22.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9cc41f9524b98e49da474696abd8fc026b0accfea7fd754e5be09107cb96038f"
+checksum = "19def7b12d3a53c520ad661b8f4501ae04158627e4a9fc49cc30c4ea04522cbf"
 dependencies = [
  "glib-sys",
  "gobject-sys",
@@ -2232,9 +2264,9 @@ dependencies = [
 
 [[package]]
 name = "gstreamer-sys"
-version = "0.21.2"
+version = "0.22.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "564cda782b3e6eed1b81cb4798a06794db56440fb05b422505be689f34ce3bc4"
+checksum = "d5ddf526b3bf90ea627224c804f00b8bcb0452e3b447978b4d5092f8e8ff5918"
 dependencies = [
  "glib-sys",
  "gobject-sys",
@@ -2244,9 +2276,9 @@ dependencies = [
 
 [[package]]
 name = "gstreamer-video"
-version = "0.21.2"
+version = "0.22.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e85b2a4d1d3b7a98ae03806c3ed5c2db89d6b37a5f138780b48de015d68715e5"
+checksum = "5fc0a96481ecfcdd120d5057bb7ab5a6f6cd392cc34ba1e8b86cac3ba082f788"
 dependencies = [
  "cfg-if",
  "futures-channel",
@@ -2255,14 +2287,15 @@ dependencies = [
  "gstreamer-base",
  "gstreamer-video-sys",
  "libc",
+ "once_cell",
  "thiserror",
 ]
 
 [[package]]
 name = "gstreamer-video-sys"
-version = "0.21.2"
+version = "0.22.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0302318d98e6b054501e485b6bb4ee20225823218f4a8660c182f115a33b16ee"
+checksum = "c1ea7996ba44fbbf563aeeda96e24259efc9f06b407854d837ee58e260d7ba78"
 dependencies = [
  "glib-sys",
  "gobject-sys",
@@ -2274,9 +2307,9 @@ dependencies = [
 
 [[package]]
 name = "gtk4"
-version = "0.7.3"
+version = "0.8.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5aeb51aa3e9728575a053e1f43543cd9992ac2477e1b186ad824fd4adfb70842"
+checksum = "aa82753b8c26277e4af1446c70e35b19aad4fb794a7b143859e7eeb9a4025d83"
 dependencies = [
  "cairo-rs",
  "field-offset",
@@ -2295,12 +2328,12 @@ dependencies = [
 
 [[package]]
 name = "gtk4-macros"
-version = "0.7.2"
+version = "0.8.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d57ec49cf9b657f69a05bca8027cff0a8dfd0c49e812be026fc7311f2163832f"
+checksum = "40300bf071d2fcd4c94eacc09e84ec6fe73129d2ceb635cf7e55b026b5443567"
 dependencies = [
  "anyhow",
- "proc-macro-crate 1.3.1",
+ "proc-macro-crate 3.1.0",
  "proc-macro-error",
  "proc-macro2",
  "quote",
@@ -2309,9 +2342,9 @@ dependencies = [
 
 [[package]]
 name = "gtk4-sys"
-version = "0.7.3"
+version = "0.8.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "54d8c4aa23638ce9faa2caf7e2a27d4a1295af2155c8e8d28c4d4eeca7a65eb8"
+checksum = "0db1b104138f087ccdc81d2c332de5dd049b89de3d384437cc1093b17cd2da18"
 dependencies = [
  "cairo-sys-rs",
  "gdk-pixbuf-sys",
@@ -2328,9 +2361,9 @@ dependencies = [
 
 [[package]]
 name = "h2"
-version = "0.3.22"
+version = "0.3.26"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4d6250322ef6e60f93f9a2162799302cd6f68f79f6e5d85c8c16f14d1d958178"
+checksum = "81fe527a889e1532da5c525686d96d4c2e74cdd345badf8dfef9f6b39dd5f5e8"
 dependencies = [
  "bytes",
  "fnv",
@@ -2338,7 +2371,7 @@ dependencies = [
  "futures-sink",
  "futures-util",
  "http",
- "indexmap 2.1.0",
+ "indexmap 2.2.6",
  "slab",
  "tokio",
  "tokio-util",
@@ -2347,10 +2380,11 @@ dependencies = [
 
 [[package]]
 name = "half"
-version = "2.2.1"
+version = "2.4.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "02b4af3693f1b705df946e9fe5631932443781d0aabb423b62fcd4d73f6d2fd0"
+checksum = "6dd08c532ae367adf81c312a4580bc67f1d0fe8bc9c460520283f4c0ff277888"
 dependencies = [
+ "cfg-if",
  "crunchy",
 ]
 
@@ -2362,15 +2396,6 @@ checksum = "8a9ee70c43aaf417c914396645a0fa852624801b24ebb7ae78fe8272889ac888"
 
 [[package]]
 name = "hashbrown"
-version = "0.13.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "43a3c133739dddd0d2990f9a4bdf8eb4b21ef50e4851ca85ab661199821d510e"
-dependencies = [
- "ahash",
-]
-
-[[package]]
-name = "hashbrown"
 version = "0.14.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "290f1a1d9242c78d09ce40a5e87e7554ee637af1351968159f4952f028f75604"
@@ -2389,22 +2414,12 @@ dependencies = [
 ]
 
 [[package]]
-name = "hdrhistogram"
-version = "7.5.4"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "765c9198f173dd59ce26ff9f95ef0aafd0a0fe01fb9d72841bc5066a4c06511d"
-dependencies = [
- "byteorder",
- "num-traits",
-]
-
-[[package]]
 name = "headers"
 version = "0.3.9"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "06683b93020a07e3dbcf5f8c0f6d40080d725bea7936fc01ad345c01b97dc270"
 dependencies = [
- "base64",
+ "base64 0.21.7",
  "bytes",
  "headers-core",
  "http",
@@ -2429,10 +2444,16 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "95505c38b4572b2d910cecb0281560f54b440a19336cbbcb27bf6ce6adc6f5a8"
 
 [[package]]
+name = "heck"
+version = "0.5.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "2304e00983f87ffb38b55b444b5e3b60a884b5d30c0fca7d82fe33449bbe55ea"
+
+[[package]]
 name = "hermit-abi"
-version = "0.3.3"
+version = "0.3.9"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d77f7ec81a6d05a3abb01ab6eb7590f6083d08449fe5a1c8b1e620283546ccb7"
+checksum = "d231dfb89cfffdbc30e7fc41579ed6066ad03abda9e567ccafae602b97ec5024"
 
 [[package]]
 name = "hex"
@@ -2508,9 +2529,9 @@ dependencies = [
 
 [[package]]
 name = "http"
-version = "0.2.11"
+version = "0.2.12"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8947b1a6fad4393052c7ba1f4cd97bed3e953a95c79c92ad9b051a04611d9fbb"
+checksum = "601cbb57e577e2f5ef5be8e7b83f0f63994f25aa94d673e54a92d5c516d101f1"
 dependencies = [
  "bytes",
  "fnv",
@@ -2548,9 +2569,9 @@ checksum = "df3b46402a9d5adb4c86a0cf463f42e19994e3ee891101b1841f30a545cb49a9"
 
 [[package]]
 name = "hyper"
-version = "0.14.27"
+version = "0.14.28"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ffb1cfd654a8219eaef89881fdb3bb3b1cdc5fa75ded05d6933b2b382e395468"
+checksum = "bf96e135eb83a2a8ddf766e426a841d8ddd7449d5f00d34ea02b41d2f19eef80"
 dependencies = [
  "bytes",
  "futures-channel",
@@ -2563,7 +2584,7 @@ dependencies = [
  "httpdate",
  "itoa",
  "pin-project-lite",
- "socket2 0.4.10",
+ "socket2",
  "tokio",
  "tower-service",
  "tracing",
@@ -2571,21 +2592,6 @@ dependencies = [
 ]
 
 [[package]]
-name = "hyper-rustls"
-version = "0.24.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ec3efd23720e2049821a693cbc7e65ea87c72f1c58ff2f9522ff332b1491e590"
-dependencies = [
- "futures-util",
- "http",
- "hyper",
- "rustls",
- "rustls-native-certs",
- "tokio",
- "tokio-rustls",
-]
-
-[[package]]
 name = "hyper-tls"
 version = "0.5.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -2600,9 +2606,9 @@ dependencies = [
 
 [[package]]
 name = "iana-time-zone"
-version = "0.1.58"
+version = "0.1.60"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8326b86b6cff230b97d0d312a6c40a60726df3332e721f72a1b035f451663b20"
+checksum = "e7ffbb5a1b541ea2561f8c41c087286cc091e21e556a4f09a8f6cbf17b69b141"
 dependencies = [
  "android_system_properties",
  "core-foundation-sys",
@@ -2639,35 +2645,35 @@ dependencies = [
 
 [[package]]
 name = "image"
-version = "0.23.14"
+version = "0.25.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "24ffcb7e7244a9bf19d35bf2883b9c080c4ced3c07a9895572178cdb8f13f6a1"
+checksum = "fd54d660e773627692c524beaad361aca785a4f9f5730ce91f42aabe5bce3d11"
 dependencies = [
  "bytemuck",
  "byteorder",
  "color_quant",
- "num-iter",
- "num-rational 0.3.2",
+ "exr",
+ "gif",
+ "image-webp",
  "num-traits",
+ "png",
+ "qoi",
+ "ravif",
+ "rayon",
+ "rgb",
+ "tiff",
+ "zune-core",
+ "zune-jpeg",
 ]
 
 [[package]]
-name = "image"
-version = "0.24.7"
+name = "image-webp"
+version = "0.1.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6f3dfdbdd72063086ff443e297b61695500514b1e41095b6fb9a5ab48a70a711"
+checksum = "7a84a25dcae3ac487bc24ef280f9e20c79c9b1a3e5e32cbed3041d1c514aa87c"
 dependencies = [
- "bytemuck",
  "byteorder",
- "color_quant",
- "exr",
- "gif",
- "jpeg-decoder",
- "num-rational 0.4.1",
- "num-traits",
- "png",
- "qoi",
- "tiff",
+ "thiserror",
 ]
 
 [[package]]
@@ -2686,14 +2692,20 @@ dependencies = [
 
 [[package]]
 name = "imbl-sized-chunks"
-version = "0.1.1"
+version = "0.1.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e6957ea0b2541c5ca561d3ef4538044af79f8a05a1eb3a3b148936aaceaa1076"
+checksum = "144006fb58ed787dcae3f54575ff4349755b00ccc99f4b4873860b654be1ed63"
 dependencies = [
  "bitmaps",
 ]
 
 [[package]]
+name = "imgref"
+version = "1.10.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "44feda355f4159a7c757171a77de25daf6411e217b4cabd03bd6650690468126"
+
+[[package]]
 name = "include_dir"
 version = "0.7.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -2742,9 +2754,9 @@ dependencies = [
 
 [[package]]
 name = "indexmap"
-version = "2.1.0"
+version = "2.2.6"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d530e1a18b1cb4c484e6e34556a0d948706958449fca0cab753d649f2bce3d1f"
+checksum = "168fb715dda47215e360912c096649d23d58bf392ac62f73919e831745e40f26"
 dependencies = [
  "equivalent",
  "hashbrown 0.14.3",
@@ -2774,14 +2786,14 @@ dependencies = [
 ]
 
 [[package]]
-name = "io-lifetimes"
-version = "1.0.11"
+name = "interpolate_name"
+version = "0.2.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "eae7b9aee968036d54dce06cebaefd919e4472e753296daccd6d344e3e2df0c2"
+checksum = "c34819042dc3d3971c46c2190835914dfbe0c3c13f61449b2997f4e9722dfa60"
 dependencies = [
- "hermit-abi",
- "libc",
- "windows-sys 0.48.0",
+ "proc-macro2",
+ "quote",
+ "syn 2.0.58",
 ]
 
 [[package]]
@@ -2791,16 +2803,6 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "8f518f335dce6725a761382244631d86cf0ccb2863413590b31338feb467f9c3"
 
 [[package]]
-name = "iri-string"
-version = "0.7.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "21859b667d66a4c1dacd9df0863b3efb65785474255face87f5bca39dd8407c0"
-dependencies = [
- "memchr",
- "serde",
-]
-
-[[package]]
 name = "itertools"
 version = "0.10.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -2811,27 +2813,18 @@ dependencies = [
 
 [[package]]
 name = "itertools"
-version = "0.11.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b1c173a5686ce8bfa551b3563d0c2170bf24ca44da99c7ca4bfdab5418c3fe57"
-dependencies = [
- "either",
-]
-
-[[package]]
-name = "itertools"
-version = "0.12.0"
+version = "0.12.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "25db6b064527c5d482d0423354fcd07a89a2dfe07b67892e62411946db7f07b0"
+checksum = "ba291022dbbd398a455acf126c1e341954079855bc60dfdda641363bd6922569"
 dependencies = [
  "either",
 ]
 
 [[package]]
 name = "itoa"
-version = "1.0.10"
+version = "1.0.11"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b1a46d1a171d865aa5f83f92695765caa047a9b4cbae2cbf37dbd613a793fd4c"
+checksum = "49f1f14873335454500d59611f1cf4a4b0f786f9ac11f4312a78e4cf2566695b"
 
 [[package]]
 name = "jetscii"
@@ -2840,19 +2833,25 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "47f142fe24a9c9944451e8349de0a56af5f3e7226dc46f3ed4d4ecc0b85af75e"
 
 [[package]]
-name = "jpeg-decoder"
-version = "0.3.0"
+name = "jobserver"
+version = "0.1.28"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "bc0000e42512c92e31c2252315bda326620a4e034105e900c98ec492fa077b3e"
+checksum = "ab46a6e9526ddef3ae7f787c06f0f2600639ba80ea3eade3d8e670a2230f51d6"
 dependencies = [
- "rayon",
+ "libc",
 ]
 
 [[package]]
+name = "jpeg-decoder"
+version = "0.3.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "f5d4a7da358eff58addd2877a45865158f0d78c911d43a5784ceb7bbf52833b0"
+
+[[package]]
 name = "js-sys"
-version = "0.3.66"
+version = "0.3.69"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "cee9c64da59eae3b50095c18d3e74f8b73c0b86d2792824ff01bbce68ba229ca"
+checksum = "29c15563dc2726973df627357ce0c9ddddbea194836909d655df6a75d2cf296d"
 dependencies = [
  "wasm-bindgen",
 ]
@@ -2877,9 +2876,9 @@ dependencies = [
 
 [[package]]
 name = "k256"
-version = "0.13.2"
+version = "0.13.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3f01b677d82ef7a676aa37e099defd83a28e15687112cafdd112d60236b6115b"
+checksum = "956ff9b67e26e1a6a866cb758f12c6f8746208489e3e4a4b5580802f2f0a587b"
 dependencies = [
  "cfg-if",
  "ecdsa",
@@ -2941,9 +2940,9 @@ checksum = "03087c2bad5e1034e8cace5926dec053fb3790248370865f5117a7d0213354c8"
 
 [[package]]
 name = "libadwaita"
-version = "0.5.3"
+version = "0.6.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2fe7e70c06507ed10a16cda707f358fbe60fe0dc237498f78c686ade92fd979c"
+checksum = "91b4990248b9e1ec5e72094a2ccaea70ec3809f88f6fd52192f2af306b87c5d9"
 dependencies = [
  "gdk-pixbuf",
  "gdk4",
@@ -2957,9 +2956,9 @@ dependencies = [
 
 [[package]]
 name = "libadwaita-sys"
-version = "0.5.3"
+version = "0.6.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5e10aaa38de1d53374f90deeb4535209adc40cc5dba37f9704724169bceec69a"
+checksum = "23a748e4e92be1265cd9e93d569c0b5dfc7814107985aa6743d670ab281ea1a8"
 dependencies = [
  "gdk4-sys",
  "gio-sys",
@@ -2973,18 +2972,29 @@ dependencies = [
 
 [[package]]
 name = "libc"
-version = "0.2.151"
+version = "0.2.153"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "302d7ab3130588088d277783b1e2d2e10c9e9e4a16dd9050e6ec93fb3e7048f4"
+checksum = "9c198f91728a82281a64e1f4f9eeb25d82cb32a5de251c6bd1b5154d63a8e7bd"
+
+[[package]]
+name = "libfuzzer-sys"
+version = "0.4.7"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "a96cfd5557eb82f2b83fed4955246c988d331975a002961b07c81584d107e7f7"
+dependencies = [
+ "arbitrary",
+ "cc",
+ "once_cell",
+]
 
 [[package]]
 name = "libloading"
-version = "0.7.4"
+version = "0.8.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b67380fd3b2fbe7527a606e18729d21c6f3951633d0500574c4dc22d2d638b9f"
+checksum = "0c2a198fb6b0eada2a8df47933734e6d35d350665a33a3593d7164fa52c75c19"
 dependencies = [
  "cfg-if",
- "winapi",
+ "windows-targets 0.52.4",
 ]
 
 [[package]]
@@ -2995,9 +3005,9 @@ checksum = "4ec2a862134d2a7d32d7983ddcdd1c4923530833c9f2ea1a44fc5fa473989058"
 
 [[package]]
 name = "libshumate"
-version = "0.4.1"
+version = "0.5.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b743d27ff75bbd10e97729e771fa706f0e2e80503f8b737c7ebd39abd6ed1b2d"
+checksum = "bd77c1202aaccef5460f4ca95b3b3c117f85986c942127e4e518c47058a6eaf6"
 dependencies = [
  "gdk-pixbuf",
  "gdk4",
@@ -3010,9 +3020,9 @@ dependencies = [
 
 [[package]]
 name = "libshumate-sys"
-version = "0.4.0"
+version = "0.5.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c2d267a8d525823ad53986bde3b56ed6ef8c319227b33fc71028daed41ea5103"
+checksum = "ef5765221e416ebe7b5e9c5bd7e8dd09ca9e920b012474ca8f3da18f8e13c4a5"
 dependencies = [
  "gdk-pixbuf-sys",
  "gdk4-sys",
@@ -3026,26 +3036,26 @@ dependencies = [
 
 [[package]]
 name = "libspa"
-version = "0.7.2"
+version = "0.8.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0434617020ddca18b86067912970c55410ca654cdafd775480322f50b857a8c4"
+checksum = "65f3a4b81b2a2d8c7f300643676202debd1b7c929dbf5c9bb89402ea11d19810"
 dependencies = [
- "bitflags 2.4.1",
+ "bitflags 2.5.0",
  "cc",
  "convert_case",
  "cookie-factory",
  "libc",
  "libspa-sys",
- "nix",
+ "nix 0.27.1",
  "nom",
  "system-deps",
 ]
 
 [[package]]
 name = "libspa-sys"
-version = "0.7.2"
+version = "0.8.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b3e70ca3f3e70f858ef363046d06178c427b4e0b63d210c95fd87d752679d345"
+checksum = "bf0d9716420364790e85cbb9d3ac2c950bde16a7dd36f3209b7dfdfc4a24d01f"
 dependencies = [
  "bindgen",
  "cc",
@@ -3073,15 +3083,9 @@ dependencies = [
 
 [[package]]
 name = "linux-raw-sys"
-version = "0.3.8"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ef53942eb7bf7ff43a617b3e2c1c4a5ecf5944a7c1bc12d7ee39bbb15e5c1519"
-
-[[package]]
-name = "linux-raw-sys"
-version = "0.4.12"
+version = "0.4.13"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c4cd1a83af159aa67994778be9070f0ae1bd732942279cabb14f86f986a21456"
+checksum = "01cda141df6706de531b6c46c3a33ecca755538219bd484262fa09410c13539c"
 
 [[package]]
 name = "locale_config"
@@ -3108,17 +3112,26 @@ dependencies = [
 
 [[package]]
 name = "log"
-version = "0.4.20"
+version = "0.4.21"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "90ed8c1e510134f979dbc4f070f87d4313098b704861a105fe34231c70a3901c"
+
+[[package]]
+name = "loop9"
+version = "0.1.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b5e6163cb8c49088c2c36f57875e58ccd8c87c7427f7fbd50ea6710b2f3f2e8f"
+checksum = "0fae87c125b03c1d2c0150c90365d7d6bcc53fb73a9acaef207d2d065860f062"
+dependencies = [
+ "imgref",
+]
 
 [[package]]
 name = "lru"
-version = "0.9.0"
+version = "0.12.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "71e7d46de488603ffdd5f30afbc64fbba2378214a2c3a2fb83abf3d33126df17"
+checksum = "d3262e75e648fce39813cb56ac41f3c3e3f65217ebf3844d818d1f9398cfb0dc"
 dependencies = [
- "hashbrown 0.13.2",
+ "hashbrown 0.14.3",
 ]
 
 [[package]]
@@ -3147,7 +3160,7 @@ dependencies = [
  "cfg-if",
  "proc-macro2",
  "quote",
- "syn 2.0.41",
+ "syn 2.0.58",
 ]
 
 [[package]]
@@ -3158,7 +3171,7 @@ checksum = "13198c120864097a565ccb3ff947672d969932b7975ebd4085732c9f09435e55"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.41",
+ "syn 2.0.58",
 ]
 
 [[package]]
@@ -3171,7 +3184,7 @@ dependencies = [
  "macroific_core",
  "proc-macro2",
  "quote",
- "syn 2.0.41",
+ "syn 2.0.58",
 ]
 
 [[package]]
@@ -3217,9 +3230,8 @@ dependencies = [
 
 [[package]]
 name = "mas-http"
-version = "0.7.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "da6948721a2bc05e73f8029515e05b0c7deabb6fcec51ee7f033ecbfe60b7818"
+version = "0.8.0"
+source = "git+https://github.com/matrix-org/matrix-authentication-service?rev=099eabd1371d2840a2f025a6372d6428039eb511#099eabd1371d2840a2f025a6372d6428039eb511"
 dependencies = [
  "bytes",
  "futures-util",
@@ -3227,8 +3239,6 @@ dependencies = [
  "http",
  "http-body",
  "hyper",
- "mas-tower",
- "once_cell",
  "opentelemetry",
  "serde",
  "serde_json",
@@ -3242,9 +3252,8 @@ dependencies = [
 
 [[package]]
 name = "mas-iana"
-version = "0.7.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1c48820df73240471efb9fe90f90461b0029e4f0b7915e2df23633523635dfa3"
+version = "0.8.0"
+source = "git+https://github.com/matrix-org/matrix-authentication-service?rev=099eabd1371d2840a2f025a6372d6428039eb511#099eabd1371d2840a2f025a6372d6428039eb511"
 dependencies = [
  "schemars",
  "serde",
@@ -3252,9 +3261,8 @@ dependencies = [
 
 [[package]]
 name = "mas-jose"
-version = "0.7.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b39a251dfb34fb81d7259e91b368ee3551013406149333484ae30bd7da8c2c74"
+version = "0.8.0"
+source = "git+https://github.com/matrix-org/matrix-authentication-service?rev=099eabd1371d2840a2f025a6372d6428039eb511#099eabd1371d2840a2f025a6372d6428039eb511"
 dependencies = [
  "base64ct",
  "chrono",
@@ -3282,39 +3290,9 @@ dependencies = [
 ]
 
 [[package]]
-name = "mas-keystore"
-version = "0.7.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a75c2a138f5805d21cf62c3947e23743349cb1303e8e3374aad14a5d571d7912"
-dependencies = [
- "aead",
- "base64ct",
- "chacha20poly1305",
- "const-oid",
- "der",
- "ecdsa",
- "elliptic-curve",
- "generic-array",
- "k256",
- "mas-iana",
- "mas-jose",
- "p256",
- "p384",
- "pem-rfc7468",
- "pkcs1",
- "pkcs8",
- "rand",
- "rsa",
- "sec1",
- "spki",
- "thiserror",
-]
-
-[[package]]
 name = "mas-oidc-client"
-version = "0.7.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3138f9b4240f515c740ec61e27b436f1fd5a24aabb66b51d93346c7d46e2e571"
+version = "0.8.0"
+source = "git+https://github.com/matrix-org/matrix-authentication-service?rev=099eabd1371d2840a2f025a6372d6428039eb511#099eabd1371d2840a2f025a6372d6428039eb511"
 dependencies = [
  "base64ct",
  "bytes",
@@ -3323,49 +3301,24 @@ dependencies = [
  "futures-util",
  "headers",
  "http",
- "http-body",
- "hyper",
- "hyper-rustls",
  "language-tags",
  "mas-http",
  "mas-iana",
  "mas-jose",
- "mas-keystore",
  "mime",
  "oauth2-types",
- "once_cell",
  "rand",
- "rustls",
  "serde",
  "serde_json",
  "serde_urlencoded",
  "serde_with",
  "thiserror",
- "tokio",
  "tower",
- "tower-http",
  "tracing",
  "url",
 ]
 
 [[package]]
-name = "mas-tower"
-version = "0.7.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f6beeba7843e755539b582e6240293db1e6bd428e22bc1a6ef4220b1fd2fc53d"
-dependencies = [
- "http",
- "opentelemetry",
- "opentelemetry-http",
- "opentelemetry-semantic-conventions",
- "pin-project-lite",
- "tokio",
- "tower",
- "tracing",
- "tracing-opentelemetry",
-]
-
-[[package]]
 name = "matchers"
 version = "0.1.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -3390,17 +3343,17 @@ version = "0.1.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "93779aa78d39c2fe34746287b10a866192cf8af1b81767fff76bd64099acc0f5"
 dependencies = [
- "proc-macro-crate 2.0.1",
+ "proc-macro-crate 2.0.0",
  "proc-macro-error",
  "proc-macro2",
  "quote",
- "syn 2.0.41",
+ "syn 2.0.58",
 ]
 
 [[package]]
 name = "matrix-sdk"
-version = "0.6.2"
-source = "git+https://github.com/matrix-org/matrix-rust-sdk.git?rev=19526cea6bce133fc48904838956846aeb966dc6#19526cea6bce133fc48904838956846aeb966dc6"
+version = "0.7.1"
+source = "git+https://github.com/matrix-org/matrix-rust-sdk.git?rev=88c4dec35f05ae295e0f2bf0362d6f5d72606d92#88c4dec35f05ae295e0f2bf0362d6f5d72606d92"
 dependencies = [
  "anymap2",
  "aquamarine",
@@ -3413,7 +3366,7 @@ dependencies = [
  "bytesize",
  "cfg-vis",
  "chrono",
- "event-listener 4.0.0",
+ "event-listener 4.0.3",
  "eyeball",
  "eyeball-im",
  "eyeball-im-util",
@@ -3422,9 +3375,10 @@ dependencies = [
  "gloo-timers",
  "http",
  "hyper",
- "image 0.24.7",
+ "image",
  "imbl",
- "indexmap 2.1.0",
+ "indexmap 2.2.6",
+ "js_int",
  "language-tags",
  "mas-oidc-client",
  "matrix-sdk-base",
@@ -3454,13 +3408,14 @@ dependencies = [
 
 [[package]]
 name = "matrix-sdk-base"
-version = "0.6.1"
-source = "git+https://github.com/matrix-org/matrix-rust-sdk.git?rev=19526cea6bce133fc48904838956846aeb966dc6#19526cea6bce133fc48904838956846aeb966dc6"
+version = "0.7.0"
+source = "git+https://github.com/matrix-org/matrix-rust-sdk.git?rev=88c4dec35f05ae295e0f2bf0362d6f5d72606d92#88c4dec35f05ae295e0f2bf0362d6f5d72606d92"
 dependencies = [
  "as_variant",
  "async-trait",
- "bitflags 2.4.1",
+ "bitflags 2.5.0",
  "eyeball",
+ "eyeball-im",
  "futures-util",
  "matrix-sdk-common",
  "matrix-sdk-crypto",
@@ -3476,8 +3431,8 @@ dependencies = [
 
 [[package]]
 name = "matrix-sdk-common"
-version = "0.6.0"
-source = "git+https://github.com/matrix-org/matrix-rust-sdk.git?rev=19526cea6bce133fc48904838956846aeb966dc6#19526cea6bce133fc48904838956846aeb966dc6"
+version = "0.7.0"
+source = "git+https://github.com/matrix-org/matrix-rust-sdk.git?rev=88c4dec35f05ae295e0f2bf0362d6f5d72606d92#88c4dec35f05ae295e0f2bf0362d6f5d72606d92"
 dependencies = [
  "async-trait",
  "futures-core",
@@ -3498,8 +3453,8 @@ dependencies = [
 
 [[package]]
 name = "matrix-sdk-crypto"
-version = "0.6.0"
-source = "git+https://github.com/matrix-org/matrix-rust-sdk.git?rev=19526cea6bce133fc48904838956846aeb966dc6#19526cea6bce133fc48904838956846aeb966dc6"
+version = "0.7.0"
+source = "git+https://github.com/matrix-org/matrix-rust-sdk.git?rev=88c4dec35f05ae295e0f2bf0362d6f5d72606d92#88c4dec35f05ae295e0f2bf0362d6f5d72606d92"
 dependencies = [
  "aes",
  "as_variant",
@@ -3514,7 +3469,8 @@ dependencies = [
  "futures-util",
  "hkdf",
  "hmac",
- "itertools 0.12.0",
+ "itertools 0.12.1",
+ "js_option",
  "matrix-sdk-common",
  "matrix-sdk-qrcode",
  "pbkdf2",
@@ -3526,6 +3482,7 @@ dependencies = [
  "sha2",
  "subtle",
  "thiserror",
+ "time",
  "tokio",
  "tokio-stream",
  "tracing",
@@ -3536,17 +3493,16 @@ dependencies = [
 
 [[package]]
 name = "matrix-sdk-indexeddb"
-version = "0.2.0"
-source = "git+https://github.com/matrix-org/matrix-rust-sdk.git?rev=19526cea6bce133fc48904838956846aeb966dc6#19526cea6bce133fc48904838956846aeb966dc6"
+version = "0.7.0"
+source = "git+https://github.com/matrix-org/matrix-rust-sdk.git?rev=88c4dec35f05ae295e0f2bf0362d6f5d72606d92#88c4dec35f05ae295e0f2bf0362d6f5d72606d92"
 dependencies = [
  "anyhow",
  "async-trait",
- "base64",
+ "base64 0.21.7",
  "getrandom",
  "gloo-utils",
  "indexed_db_futures",
  "js-sys",
- "matrix-sdk-base",
  "matrix-sdk-crypto",
  "matrix-sdk-store-encryption",
  "ruma",
@@ -3562,8 +3518,8 @@ dependencies = [
 
 [[package]]
 name = "matrix-sdk-qrcode"
-version = "0.4.0"
-source = "git+https://github.com/matrix-org/matrix-rust-sdk.git?rev=19526cea6bce133fc48904838956846aeb966dc6#19526cea6bce133fc48904838956846aeb966dc6"
+version = "0.7.0"
+source = "git+https://github.com/matrix-org/matrix-rust-sdk.git?rev=88c4dec35f05ae295e0f2bf0362d6f5d72606d92#88c4dec35f05ae295e0f2bf0362d6f5d72606d92"
 dependencies = [
  "byteorder",
  "qrcode",
@@ -3574,12 +3530,12 @@ dependencies = [
 
 [[package]]
 name = "matrix-sdk-sqlite"
-version = "0.1.0"
-source = "git+https://github.com/matrix-org/matrix-rust-sdk.git?rev=19526cea6bce133fc48904838956846aeb966dc6#19526cea6bce133fc48904838956846aeb966dc6"
+version = "0.7.0"
+source = "git+https://github.com/matrix-org/matrix-rust-sdk.git?rev=88c4dec35f05ae295e0f2bf0362d6f5d72606d92#88c4dec35f05ae295e0f2bf0362d6f5d72606d92"
 dependencies = [
  "async-trait",
  "deadpool-sqlite",
- "itertools 0.12.0",
+ "itertools 0.12.1",
  "matrix-sdk-base",
  "matrix-sdk-crypto",
  "matrix-sdk-store-encryption",
@@ -3596,13 +3552,13 @@ dependencies = [
 
 [[package]]
 name = "matrix-sdk-store-encryption"
-version = "0.2.0"
-source = "git+https://github.com/matrix-org/matrix-rust-sdk.git?rev=19526cea6bce133fc48904838956846aeb966dc6#19526cea6bce133fc48904838956846aeb966dc6"
+version = "0.7.0"
+source = "git+https://github.com/matrix-org/matrix-rust-sdk.git?rev=88c4dec35f05ae295e0f2bf0362d6f5d72606d92#88c4dec35f05ae295e0f2bf0362d6f5d72606d92"
 dependencies = [
+ "base64 0.21.7",
  "blake3",
  "chacha20poly1305",
  "displaydoc",
- "getrandom",
  "hmac",
  "pbkdf2",
  "rand",
@@ -3616,8 +3572,8 @@ dependencies = [
 
 [[package]]
 name = "matrix-sdk-ui"
-version = "0.6.0"
-source = "git+https://github.com/matrix-org/matrix-rust-sdk.git?rev=19526cea6bce133fc48904838956846aeb966dc6#19526cea6bce133fc48904838956846aeb966dc6"
+version = "0.7.0"
+source = "git+https://github.com/matrix-org/matrix-rust-sdk.git?rev=88c4dec35f05ae295e0f2bf0362d6f5d72606d92#88c4dec35f05ae295e0f2bf0362d6f5d72606d92"
 dependencies = [
  "as_variant",
  "async-once-cell",
@@ -3633,8 +3589,8 @@ dependencies = [
  "futures-util",
  "fuzzy-matcher",
  "imbl",
- "indexmap 2.1.0",
- "itertools 0.12.0",
+ "indexmap 2.2.6",
+ "itertools 0.12.1",
  "matrix-sdk",
  "matrix-sdk-base",
  "mime",
@@ -3651,25 +3607,26 @@ dependencies = [
 ]
 
 [[package]]
-name = "memchr"
-version = "2.6.4"
+name = "maybe-rayon"
+version = "0.1.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f665ee40bc4a3c5590afb1e9677db74a508659dfd71e126420da8274909a0167"
+checksum = "8ea1f30cedd69f0a2954655f7188c6a834246d2bcf1e315e2ac40c4b24dc9519"
+dependencies = [
+ "cfg-if",
+ "rayon",
+]
 
 [[package]]
-name = "memoffset"
-version = "0.7.1"
+name = "memchr"
+version = "2.7.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5de893c32cde5f383baa4c04c5d6dbdd735cfd4a794b0debdb2bb1b421da5ff4"
-dependencies = [
- "autocfg",
-]
+checksum = "6c8640c5d730cb13ebd907d8d04b52f55ac9a2eec55b440c8892f40d56c76c1d"
 
 [[package]]
 name = "memoffset"
-version = "0.9.0"
+version = "0.9.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5a634b1c61a95585bd15607c6ab0c4e5b226e695ff2800ba0cdccddf208c406c"
+checksum = "488016bfae457b036d996092f6cb448677611ce4449e970ceaf42695203f218a"
 dependencies = [
  "autocfg",
 ]
@@ -3704,9 +3661,9 @@ checksum = "68354c5c6bd36d73ff3feceb05efa59b6acb7626617f4962be322a825e61f79a"
 
 [[package]]
 name = "miniz_oxide"
-version = "0.7.1"
+version = "0.7.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e7810e0be55b428ada41041c41f32c9f1a42817901b4ccf45fa3d4b6561e74c7"
+checksum = "9d811f3e15f28568be3407c8e7fdb6514c1cda3cb30683f15b6a1a1dc4ea14a7"
 dependencies = [
  "adler",
  "simd-adler32",
@@ -3714,9 +3671,9 @@ dependencies = [
 
 [[package]]
 name = "mio"
-version = "0.8.10"
+version = "0.8.11"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8f3d0b296e374a4e6f3c7b0a1f5a51d748a0d34c85e7dc48fc3fa9a87657fe09"
+checksum = "a4a650543ca06a924e8b371db273b2756685faae30f8487da1b56505a8f78b0c"
 dependencies = [
  "libc",
  "wasi",
@@ -3749,21 +3706,32 @@ dependencies = [
 
 [[package]]
 name = "new_debug_unreachable"
-version = "1.0.4"
+version = "1.0.6"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e4a24736216ec316047a1fc4252e27dabb04218aa4a3f37c6e7ddbf1f9782b54"
+checksum = "650eef8c711430f1a879fdd01d4745a7deea475becfb90269c06775983bbf086"
 
 [[package]]
 name = "nix"
-version = "0.26.4"
+version = "0.27.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "598beaf3cc6fdd9a5dfb1630c2800c7acd31df7aaf0f565796fba2b53ca1af1b"
+checksum = "2eb04e9c688eff1c89d72b407f168cf79bb9e867a9d3323ed6c01519eb9cc053"
 dependencies = [
- "bitflags 1.3.2",
+ "bitflags 2.5.0",
  "cfg-if",
  "libc",
- "memoffset 0.7.1",
- "pin-utils",
+]
+
+[[package]]
+name = "nix"
+version = "0.28.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "ab2156c4fce2f8df6c499cc1c763e4394b7482525bf2a9701c9d79d215f519e4"
+dependencies = [
+ "bitflags 2.5.0",
+ "cfg-if",
+ "cfg_aliases",
+ "libc",
+ "memoffset",
 ]
 
 [[package]]
@@ -3777,6 +3745,12 @@ dependencies = [
 ]
 
 [[package]]
+name = "noop_proc_macro"
+version = "0.3.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "0676bb32a98c1a483ce53e500a81ad9c3d5b3f7c920c28c24e9cb0980d0b5bc8"
+
+[[package]]
 name = "nu-ansi-term"
 version = "0.46.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -3796,7 +3770,7 @@ dependencies = [
  "num-complex",
  "num-integer",
  "num-iter",
- "num-rational 0.4.1",
+ "num-rational",
  "num-traits",
 ]
 
@@ -3831,39 +3805,44 @@ dependencies = [
 
 [[package]]
 name = "num-complex"
-version = "0.4.4"
+version = "0.4.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1ba157ca0885411de85d6ca030ba7e2a83a28636056c7c699b07c8b6f7383214"
+checksum = "23c6602fda94a57c990fe0df199a035d83576b496aa29f4e634a8ac6004e68a6"
 dependencies = [
  "num-traits",
 ]
 
 [[package]]
-name = "num-integer"
-version = "0.1.45"
+name = "num-conv"
+version = "0.1.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "51d515d32fb182ee37cda2ccdcb92950d6a3c2893aa280e540671c2cd0f3b1d9"
+
+[[package]]
+name = "num-derive"
+version = "0.4.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "225d3389fb3509a24c93f5c29eb6bde2586b98d9f016636dff58d7c6f7569cd9"
+checksum = "ed3955f1a9c7c0c15e092f9c887db08b1fc683305fdf6eb6684f22555355e202"
 dependencies = [
- "autocfg",
- "num-traits",
+ "proc-macro2",
+ "quote",
+ "syn 2.0.58",
 ]
 
 [[package]]
-name = "num-iter"
-version = "0.1.43"
+name = "num-integer"
+version = "0.1.46"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7d03e6c028c5dc5cac6e2dec0efda81fc887605bb3d884578bb6d6bf7514e252"
+checksum = "7969661fd2958a5cb096e56c8e1ad0444ac2bbcd0061bd28660485a44879858f"
 dependencies = [
- "autocfg",
- "num-integer",
  "num-traits",
 ]
 
 [[package]]
-name = "num-rational"
-version = "0.3.2"
+name = "num-iter"
+version = "0.1.44"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "12ac428b1cb17fce6f731001d307d351ec70a6d202fc2e60f7d4c5e42d8f4f07"
+checksum = "d869c01cc0c455284163fd0092f1f93835385ccab5a98a0dcc497b2f8bf055a9"
 dependencies = [
  "autocfg",
  "num-integer",
@@ -3884,9 +3863,9 @@ dependencies = [
 
 [[package]]
 name = "num-traits"
-version = "0.2.17"
+version = "0.2.18"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "39e3200413f237f41ab11ad6d161bc7239c84dcb631773ccd7de3dfe4b5c267c"
+checksum = "da0df0e5185db44f69b44f26786fe401b6c293d1907744beaa7fa62b2e5a517a"
 dependencies = [
  "autocfg",
  "libm",
@@ -3904,9 +3883,8 @@ dependencies = [
 
 [[package]]
 name = "oauth2-types"
-version = "0.7.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "fd0c3fa3366856696f31b0686570dc4a511b499e648a03e433ad8b940ed2f122"
+version = "0.8.0"
+source = "git+https://github.com/matrix-org/matrix-authentication-service?rev=099eabd1371d2840a2f025a6372d6428039eb511#099eabd1371d2840a2f025a6372d6428039eb511"
 dependencies = [
  "chrono",
  "data-encoding",
@@ -3954,9 +3932,9 @@ dependencies = [
 
 [[package]]
 name = "object"
-version = "0.32.1"
+version = "0.32.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9cf5f9dd3933bd50a9e1f149ec995f39ae2c496d31fd772c1fd45ebc27e902b0"
+checksum = "a6a622008b6e321afc04970976f62ee297fdbaa6f95318ca343e3eebb9648441"
 dependencies = [
  "memchr",
 ]
@@ -3969,44 +3947,36 @@ checksum = "3fdb12b2476b595f9358c5161aa467c2438859caa136dec86c26fdd2efe17b92"
 
 [[package]]
 name = "oo7"
-version = "0.2.1"
+version = "0.3.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "220729ba847d98e1a9902c05e41dae79ce4a0b913dad68bc540dd3120a8c2b6b"
+checksum = "37558cac1af63a81fd2ff7f3469c02a4da06b163c5671791553b8dac10f07c82"
 dependencies = [
- "aes",
- "byteorder",
- "cbc",
- "cipher",
- "digest",
  "futures-util",
- "hkdf",
- "hmac",
  "num",
  "num-bigint-dig",
- "once_cell",
- "pbkdf2",
+ "openssl",
  "rand",
  "serde",
- "sha2",
  "tokio",
  "tracing",
  "zbus",
  "zeroize",
+ "zvariant",
 ]
 
 [[package]]
 name = "opaque-debug"
-version = "0.3.0"
+version = "0.3.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "624a8340c38c1b80fd549087862da4ba43e08858af025b236e509b6649fc13d5"
+checksum = "c08d65885ee38876c4f86fa503fb49d7b507c2b62552df7c70b2fce627e06381"
 
 [[package]]
 name = "openssl"
-version = "0.10.61"
+version = "0.10.64"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6b8419dc8cc6d866deb801274bba2e6f8f6108c1bb7fcc10ee5ab864931dbb45"
+checksum = "95a0481286a310808298130d22dd1fef0fa571e05a8f44ec801801e84b216b1f"
 dependencies = [
- "bitflags 2.4.1",
+ "bitflags 2.5.0",
  "cfg-if",
  "foreign-types",
  "libc",
@@ -4023,7 +3993,7 @@ checksum = "a948666b637a0f465e8564c73e89d4dde00d72d4d473cc972f390fc3dcee7d9c"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.41",
+ "syn 2.0.58",
 ]
 
 [[package]]
@@ -4034,9 +4004,9 @@ checksum = "ff011a302c396a5197692431fc1948019154afc178baf7d8e37367442a4601cf"
 
 [[package]]
 name = "openssl-sys"
-version = "0.9.97"
+version = "0.9.102"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c3eaad34cdd97d81de97964fc7f29e2d104f483840d906ef56daa1912338460b"
+checksum = "c597637d56fbc83893a35eb0dd04b2b8e7a50c91e64e9493e398b5df4fb45fa2"
 dependencies = [
  "cc",
  "libc",
@@ -4046,13 +4016,12 @@ dependencies = [
 
 [[package]]
 name = "opentelemetry"
-version = "0.21.0"
+version = "0.22.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1e32339a5dc40459130b3bd269e9892439f55b33e772d2a9d402a789baaf4e8a"
+checksum = "900d57987be3f2aeb70d385fff9b27fb74c5723cc9a52d904d4f9c807a0667bf"
 dependencies = [
  "futures-core",
  "futures-sink",
- "indexmap 2.1.0",
  "js-sys",
  "once_cell",
  "pin-project-lite",
@@ -4061,31 +4030,10 @@ dependencies = [
 ]
 
 [[package]]
-name = "opentelemetry-http"
-version = "0.10.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7f51189ce8be654f9b5f7e70e49967ed894e84a06fc35c6c042e64ac1fc5399e"
-dependencies = [
- "async-trait",
- "bytes",
- "http",
- "opentelemetry",
-]
-
-[[package]]
-name = "opentelemetry-semantic-conventions"
-version = "0.13.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f5774f1ef1f982ef2a447f6ee04ec383981a3ab99c8e77a1a7b30182e65bbc84"
-dependencies = [
- "opentelemetry",
-]
-
-[[package]]
 name = "opentelemetry_sdk"
-version = "0.21.1"
+version = "0.22.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "968ba3f2ca03e90e5187f5e4f46c791ef7f2c163ae87789c8ce5f5ca3b7b7de5"
+checksum = "9e90c7113be649e31e9a0f8b5ee24ed7a16923b322c3c5ab6367469c049d6b7e"
 dependencies = [
  "async-trait",
  "crossbeam-channel",
@@ -4160,22 +4108,21 @@ dependencies = [
 
 [[package]]
 name = "pango"
-version = "0.18.3"
+version = "0.19.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7ca27ec1eb0457ab26f3036ea52229edbdb74dee1edd29063f5b9b010e7ebee4"
+checksum = "b1264d13deb823cc652f26cfe59afb1ec4b9db2a5bd27c41b738c879cc1bfaa1"
 dependencies = [
  "gio",
  "glib",
  "libc",
- "once_cell",
  "pango-sys",
 ]
 
 [[package]]
 name = "pango-sys"
-version = "0.18.0"
+version = "0.19.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "436737e391a843e5933d6d9aa102cb126d501e815b83601365a948a518555dc5"
+checksum = "f52ef6a881c19fbfe3b1484df5cad411acaaba29dbec843941c3110d19f340ea"
 dependencies = [
  "glib-sys",
  "gobject-sys",
@@ -4214,28 +4161,27 @@ dependencies = [
 
 [[package]]
 name = "parse-display"
-version = "0.8.2"
+version = "0.9.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c6509d08722b53e8dafe97f2027b22ccbe3a5db83cb352931e9716b0aa44bc5c"
+checksum = "06af5f9333eb47bd9ba8462d612e37a8328a5cb80b13f0af4de4c3b89f52dee5"
 dependencies = [
- "once_cell",
  "parse-display-derive",
  "regex",
+ "regex-syntax 0.8.3",
 ]
 
 [[package]]
 name = "parse-display-derive"
-version = "0.8.2"
+version = "0.9.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "68517892c8daf78da08c0db777fcc17e07f2f63ef70041718f8a7630ad84f341"
+checksum = "dc9252f259500ee570c75adcc4e317fa6f57a1e47747d622e0bf838002a7b790"
 dependencies = [
- "once_cell",
  "proc-macro2",
  "quote",
  "regex",
- "regex-syntax 0.7.5",
+ "regex-syntax 0.8.3",
  "structmeta",
- "syn 2.0.41",
+ "syn 2.0.58",
 ]
 
 [[package]]
@@ -4255,12 +4201,6 @@ dependencies = [
 ]
 
 [[package]]
-name = "peeking_take_while"
-version = "0.1.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "19b17cddbe7ec3f8bc800887bab5e717348c95ea2ca0b1bf0837fb964dc67099"
-
-[[package]]
 name = "pem-rfc7468"
 version = "0.7.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -4334,7 +4274,7 @@ dependencies = [
  "phf_shared 0.11.2",
  "proc-macro2",
  "quote",
- "syn 2.0.41",
+ "syn 2.0.58",
 ]
 
 [[package]]
@@ -4357,29 +4297,29 @@ dependencies = [
 
 [[package]]
 name = "pin-project"
-version = "1.1.3"
+version = "1.1.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "fda4ed1c6c173e3fc7a83629421152e01d7b1f9b7f65fb301e490e8cfc656422"
+checksum = "b6bf43b791c5b9e34c3d182969b4abb522f9343702850a2e57f460d00d09b4b3"
 dependencies = [
  "pin-project-internal",
 ]
 
 [[package]]
 name = "pin-project-internal"
-version = "1.1.3"
+version = "1.1.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4359fd9c9171ec6e8c62926d6faaf553a8dc3f64e1507e76da7911b4f6a04405"
+checksum = "2f38a4412a78282e09a2cf38d195ea5420d15ba0602cb375210efbc877243965"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.41",
+ "syn 2.0.58",
 ]
 
 [[package]]
 name = "pin-project-lite"
-version = "0.2.13"
+version = "0.2.14"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8afb450f006bf6385ca15ef45d71d2288452bc3683ce2e2cacc0d18e4be60b58"
+checksum = "bda66fc9667c18cb2758a2ac84d1167245054bcf85d5d1aaa6923f45801bdd02"
 
 [[package]]
 name = "pin-utils"
@@ -4394,22 +4334,22 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "668d31b1c4eba19242f2088b2bf3316b82ca31082a8335764db4e083db7485d4"
 dependencies = [
  "atomic-waker",
- "fastrand 2.0.1",
+ "fastrand",
  "futures-io",
 ]
 
 [[package]]
 name = "pipewire"
-version = "0.7.2"
+version = "0.8.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a2d009c8dd65e890b515a71950f7e4c801523b8894ff33863a40830bf762e9e9"
+checksum = "08e645ba5c45109106d56610b3ee60eb13a6f2beb8b74f8dc8186cf261788dda"
 dependencies = [
  "anyhow",
- "bitflags 2.4.1",
+ "bitflags 2.5.0",
  "libc",
  "libspa",
  "libspa-sys",
- "nix",
+ "nix 0.27.1",
  "once_cell",
  "pipewire-sys",
  "thiserror",
@@ -4417,9 +4357,9 @@ dependencies = [
 
 [[package]]
 name = "pipewire-sys"
-version = "0.7.2"
+version = "0.8.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "890c084e7b737246cb4799c86b71a0e4da536031ff7473dd639eba9f95039f64"
+checksum = "849e188f90b1dda88fe2bfe1ad31fe5f158af2c98f80fb5d13726c44f3f01112"
 dependencies = [
  "bindgen",
  "libspa-sys",
@@ -4438,21 +4378,6 @@ dependencies = [
 ]
 
 [[package]]
-name = "pkcs5"
-version = "0.7.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e847e2c91a18bfa887dd028ec33f2fe6f25db77db3619024764914affe8b69a6"
-dependencies = [
- "aes",
- "cbc",
- "der",
- "pbkdf2",
- "scrypt",
- "sha2",
- "spki",
-]
-
-[[package]]
 name = "pkcs7"
 version = "0.4.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -4470,28 +4395,26 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "f950b2377845cebe5cf8b5165cb3cc1a5e0fa5cfa3e1f7f55707d8fd82e0a7b7"
 dependencies = [
  "der",
- "pkcs5",
- "rand_core",
  "spki",
 ]
 
 [[package]]
 name = "pkg-config"
-version = "0.3.27"
+version = "0.3.30"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "26072860ba924cbfa98ea39c8c19b4dd6a4a25423dbdf219c1eca91aa0cf6964"
+checksum = "d231b230927b5e4ad203db57bbcbee2802f6bce620b1e4a9024a07d94e2907ec"
 
 [[package]]
 name = "platforms"
-version = "3.2.0"
+version = "3.4.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "14e6ab3f592e6fb464fc9712d8d6e6912de6473954635fd76a589d832cffcbb0"
+checksum = "db23d408679286588f4d4644f965003d056e3dd5abcaaa938116871d7ce2fee7"
 
 [[package]]
 name = "png"
-version = "0.17.10"
+version = "0.17.13"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "dd75bf2d8dd3702b9707cdbc56a5b9ef42cec752eb8b3bafc01234558442aa64"
+checksum = "06e4b0d3d1312775e782c86c91a111aa1f910cbb65e1337f9975b5f9a554b5e1"
 dependencies = [
  "bitflags 1.3.2",
  "crc32fast",
@@ -4502,30 +4425,15 @@ dependencies = [
 
 [[package]]
 name = "polling"
-version = "2.8.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4b2d323e8ca7996b3e23126511a523f7e62924d93ecd5ae73b333815b0eb3dce"
-dependencies = [
- "autocfg",
- "bitflags 1.3.2",
- "cfg-if",
- "concurrent-queue",
- "libc",
- "log",
- "pin-project-lite",
- "windows-sys 0.48.0",
-]
-
-[[package]]
-name = "polling"
-version = "3.3.1"
+version = "3.6.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "cf63fa624ab313c11656b4cda960bfc46c410187ad493c41f6ba2d8c1e991c9e"
+checksum = "e0c976a60b2d7e99d6f229e414670a9b85d13ac305cc6d1e9c134de58c5aaaf6"
 dependencies = [
  "cfg-if",
  "concurrent-queue",
+ "hermit-abi",
  "pin-project-lite",
- "rustix 0.38.28",
+ "rustix",
  "tracing",
  "windows-sys 0.52.0",
 ]
@@ -4560,12 +4468,6 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "925383efa346730478fb4838dbe9137d2a47675ad789c546d150a6e1dd4ab31c"
 
 [[package]]
-name = "pretty-hex"
-version = "0.3.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c6fa0831dd7cc608c38a5e323422a0077678fa5744aa2be4ad91c4ece8eec8d5"
-
-[[package]]
 name = "primeorder"
 version = "0.13.6"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -4586,12 +4488,20 @@ dependencies = [
 
 [[package]]
 name = "proc-macro-crate"
-version = "2.0.1"
+version = "2.0.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "97dc5fea232fc28d2f597b37c4876b348a40e33f3b02cc975c8d006d78d94b1a"
+checksum = "7e8366a6159044a37876a2b9817124296703c586a5c92e2c53751fa06d8d43e8"
 dependencies = [
- "toml_datetime",
- "toml_edit 0.20.2",
+ "toml_edit 0.20.7",
+]
+
+[[package]]
+name = "proc-macro-crate"
+version = "3.1.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "6d37c51ca738a55da99dc0c4a34860fd675453b8b36209178c2249bb13651284"
+dependencies = [
+ "toml_edit 0.21.1",
 ]
 
 [[package]]
@@ -4620,18 +4530,37 @@ dependencies = [
 
 [[package]]
 name = "proc-macro2"
-version = "1.0.70"
+version = "1.0.79"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "39278fbbf5fb4f646ce651690877f89d1c5811a3d4acb27700c1cb3cdb78fd3b"
+checksum = "e835ff2298f5721608eb1a980ecaee1aef2c132bf95ecc026a11b7bf3c01c02e"
 dependencies = [
  "unicode-ident",
 ]
 
 [[package]]
+name = "profiling"
+version = "1.0.15"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "43d84d1d7a6ac92673717f9f6d1518374ef257669c24ebc5ac25d5033828be58"
+dependencies = [
+ "profiling-procmacros",
+]
+
+[[package]]
+name = "profiling-procmacros"
+version = "1.0.15"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "8021cf59c8ec9c432cfc2526ac6b8aa508ecaf29cd415f271b8406c1b851c3fd"
+dependencies = [
+ "quote",
+ "syn 2.0.58",
+]
+
+[[package]]
 name = "prost"
-version = "0.12.3"
+version = "0.12.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "146c289cda302b98a28d40c8b3b90498d6e526dd24ac2ecea73e4e491685b94a"
+checksum = "d0f5d036824e4761737860779c906171497f6d55681139d8312388f8fe398922"
 dependencies = [
  "bytes",
  "prost-derive",
@@ -4639,30 +4568,48 @@ dependencies = [
 
 [[package]]
 name = "prost-derive"
-version = "0.12.3"
+version = "0.12.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "efb6c9a1dd1def8e2124d17e83a20af56f1570d6c2d2bd9e266ccb768df3840e"
+checksum = "19de2de2a00075bf566bee3bd4db014b11587e84184d3f7a791bc17f1a8e9e48"
 dependencies = [
  "anyhow",
- "itertools 0.11.0",
+ "itertools 0.12.1",
  "proc-macro2",
  "quote",
- "syn 2.0.41",
+ "syn 2.0.58",
 ]
 
 [[package]]
 name = "pulldown-cmark"
-version = "0.9.3"
+version = "0.9.6"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "77a1a2f1f0a7ecff9c31abbe177637be0e97a0aef46cf8738ece09327985d998"
+checksum = "57206b407293d2bcd3af849ce869d52068623f19e1b5ff8e8778e3309439682b"
 dependencies = [
- "bitflags 1.3.2",
+ "bitflags 2.5.0",
+ "memchr",
+ "unicase",
+]
+
+[[package]]
+name = "pulldown-cmark"
+version = "0.10.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "5f0530d13d87d1f549b66a3e8d0c688952abe5994e204ed62615baaf25dc029c"
+dependencies = [
+ "bitflags 2.5.0",
  "getopts",
  "memchr",
+ "pulldown-cmark-escape",
  "unicase",
 ]
 
 [[package]]
+name = "pulldown-cmark-escape"
+version = "0.10.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "d5d8f9aa0e3cbcfaf8bf00300004ee3b72f74770f9cbac93f6928771f613276b"
+
+[[package]]
 name = "qoi"
 version = "0.4.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -4673,19 +4620,24 @@ dependencies = [
 
 [[package]]
 name = "qrcode"
-version = "0.12.0"
+version = "0.14.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "16d2f1455f3630c6e5107b4f2b94e74d76dea80736de0981fd27644216cff57f"
+checksum = "23e719ca51966ff9f5a8436edb00d6115b3c606a0bb27c8f8ca74a38ff2b036d"
 dependencies = [
- "checked_int_cast",
- "image 0.23.14",
+ "image",
 ]
 
 [[package]]
+name = "quick-error"
+version = "2.0.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "a993555f31e5a609f617c12db6250dedcac1b0a85076912c436e6fc9b2c8e6a3"
+
+[[package]]
 name = "quote"
-version = "1.0.33"
+version = "1.0.36"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5267fca4496028628a95160fc423a33e8b2e6af8a5302579e322e4b520293cae"
+checksum = "0fa76aaf39101c457836aec0ce2316dbdc3ab723cdda1c6bd4e6ad4208acaca7"
 dependencies = [
  "proc-macro2",
 ]
@@ -4730,10 +4682,60 @@ dependencies = [
 ]
 
 [[package]]
+name = "rav1e"
+version = "0.7.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "cd87ce80a7665b1cce111f8a16c1f3929f6547ce91ade6addf4ec86a8dda5ce9"
+dependencies = [
+ "arbitrary",
+ "arg_enum_proc_macro",
+ "arrayvec",
+ "av1-grain",
+ "bitstream-io",
+ "built",
+ "cfg-if",
+ "interpolate_name",
+ "itertools 0.12.1",
+ "libc",
+ "libfuzzer-sys",
+ "log",
+ "maybe-rayon",
+ "new_debug_unreachable",
+ "noop_proc_macro",
+ "num-derive",
+ "num-traits",
+ "once_cell",
+ "paste",
+ "profiling",
+ "rand",
+ "rand_chacha",
+ "simd_helpers",
+ "system-deps",
+ "thiserror",
+ "v_frame",
+ "wasm-bindgen",
+]
+
+[[package]]
+name = "ravif"
+version = "0.11.5"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "bc13288f5ab39e6d7c9d501759712e6969fcc9734220846fc9ed26cae2cc4234"
+dependencies = [
+ "avif-serialize",
+ "imgref",
+ "loop9",
+ "quick-error",
+ "rav1e",
+ "rayon",
+ "rgb",
+]
+
+[[package]]
 name = "rayon"
-version = "1.8.0"
+version = "1.10.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9c27db03db7734835b3f53954b534c91069375ce6ccaa2e065441e07d9b6cdb1"
+checksum = "b418a60154510ca1a002a752ca9714984e21e4241e804d32555251faf8b78ffa"
 dependencies = [
  "either",
  "rayon-core",
@@ -4741,9 +4743,9 @@ dependencies = [
 
 [[package]]
 name = "rayon-core"
-version = "1.12.0"
+version = "1.12.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5ce3fb6ad83f861aac485e76e1985cd109d9a3713802152be56c3b1f0e0658ed"
+checksum = "1465873a3dfdaa8ae7cb14b4383657caab0b3e8a0aa9ae8e04b044854c8dfce2"
 dependencies = [
  "crossbeam-deque",
  "crossbeam-utils",
@@ -4766,14 +4768,14 @@ dependencies = [
 
 [[package]]
 name = "regex"
-version = "1.10.2"
+version = "1.10.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "380b951a9c5e80ddfd6136919eef32310721aa4aacd4889a8d39124b026ab343"
+checksum = "c117dbdfde9c8308975b6a18d71f3f385c89461f7b3fb054288ecf2a2058ba4c"
 dependencies = [
  "aho-corasick",
  "memchr",
- "regex-automata 0.4.3",
- "regex-syntax 0.8.2",
+ "regex-automata 0.4.6",
+ "regex-syntax 0.8.3",
 ]
 
 [[package]]
@@ -4787,13 +4789,13 @@ dependencies = [
 
 [[package]]
 name = "regex-automata"
-version = "0.4.3"
+version = "0.4.6"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5f804c7828047e88b2d32e2d7fe5a105da8ee3264f01902f796c8e067dc2483f"
+checksum = "86b83b8b9847f9bf95ef68afb0b8e6cdb80f498442f5179a29fad448fcc1eaea"
 dependencies = [
  "aho-corasick",
  "memchr",
- "regex-syntax 0.8.2",
+ "regex-syntax 0.8.3",
 ]
 
 [[package]]
@@ -4804,24 +4806,18 @@ checksum = "f162c6dd7b008981e4d40210aca20b4bd0f9b60ca9271061b07f78537722f2e1"
 
 [[package]]
 name = "regex-syntax"
-version = "0.7.5"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "dbb5fb1acd8a1a18b3dd5be62d25485eb770e05afb408a9627d14d451bae12da"
-
-[[package]]
-name = "regex-syntax"
-version = "0.8.2"
+version = "0.8.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c08c74e62047bb2de4ff487b251e4a92e24f48745648451635cec7d591162d9f"
+checksum = "adad44e29e4c806119491a7f06f03de4d1af22c3a680dd47f1e6e179439d1f56"
 
 [[package]]
 name = "reqwest"
-version = "0.11.22"
+version = "0.11.27"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "046cd98826c46c2ac8ddecae268eb5c2e58628688a5fc7a2643704a73faba95b"
+checksum = "dd67538700a17451e7cba03ac727fb961abb7607553461627b97de0b89cf4a62"
 dependencies = [
  "async-compression",
- "base64",
+ "base64 0.21.7",
  "bytes",
  "encoding_rs",
  "futures-core",
@@ -4839,9 +4835,11 @@ dependencies = [
  "once_cell",
  "percent-encoding",
  "pin-project-lite",
+ "rustls-pemfile",
  "serde",
  "serde_json",
  "serde_urlencoded",
+ "sync_wrapper",
  "system-configuration",
  "tokio",
  "tokio-native-tls",
@@ -4867,17 +4865,12 @@ dependencies = [
 ]
 
 [[package]]
-name = "ring"
-version = "0.17.7"
+name = "rgb"
+version = "0.8.37"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "688c63d65483050968b2a8937f7995f443e27041a0f7700aa59b0822aedebb74"
+checksum = "05aaa8004b64fd573fc9d002f4e632d51ad4f026c2b5ba95fcb6c2f32c2c47d8"
 dependencies = [
- "cc",
- "getrandom",
- "libc",
- "spin 0.9.8",
- "untrusted",
- "windows-sys 0.48.0",
+ "bytemuck",
 ]
 
 [[package]]
@@ -4904,12 +4897,12 @@ dependencies = [
 
 [[package]]
 name = "rqrr"
-version = "0.6.0"
+version = "0.7.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4a8b87d1f9f69bb1a6c77e20fd303f9617b2b68dcff87cd9bcbfff2ced4b8a0b"
+checksum = "ad0cd0432e6beb2f86aa4c8af1bb5edcf3c9bcb9d4836facc048664205458575"
 dependencies = [
  "g2p",
- "image 0.24.7",
+ "image",
  "lru",
 ]
 
@@ -4936,8 +4929,7 @@ dependencies = [
 [[package]]
 name = "ruma"
 version = "0.9.4"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2779c38df072964c63476259d9300efb07d0d1a7178c6469893636ce0c547a36"
+source = "git+https://github.com/ruma/ruma.git?rev=4c00bd010dbdca6005bd599b52e90a0b7015d056#4c00bd010dbdca6005bd599b52e90a0b7015d056"
 dependencies = [
  "assign",
  "js_int",
@@ -4953,9 +4945,9 @@ dependencies = [
 [[package]]
 name = "ruma-client-api"
 version = "0.17.4"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "641837258fa214a70823477514954ef0f5d3bc6ae8e1d5d85081856a33103386"
+source = "git+https://github.com/ruma/ruma.git?rev=4c00bd010dbdca6005bd599b52e90a0b7015d056#4c00bd010dbdca6005bd599b52e90a0b7015d056"
 dependencies = [
+ "as_variant",
  "assign",
  "bytes",
  "http",
@@ -4972,16 +4964,15 @@ dependencies = [
 [[package]]
 name = "ruma-common"
 version = "0.12.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3bca4c33c50e47b4cdceeac71bdef0c04153b0e29aa992d9030ec14a62323e85"
+source = "git+https://github.com/ruma/ruma.git?rev=4c00bd010dbdca6005bd599b52e90a0b7015d056#4c00bd010dbdca6005bd599b52e90a0b7015d056"
 dependencies = [
  "as_variant",
- "base64",
+ "base64 0.21.7",
  "bytes",
  "form_urlencoded",
  "getrandom",
  "http",
- "indexmap 2.1.0",
+ "indexmap 2.2.6",
  "js-sys",
  "js_int",
  "konst",
@@ -4994,24 +4985,25 @@ dependencies = [
  "serde_html_form",
  "serde_json",
  "thiserror",
+ "time",
  "tracing",
  "url",
  "uuid",
+ "web-time",
  "wildmatch",
 ]
 
 [[package]]
 name = "ruma-events"
 version = "0.27.11"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d20a52770e5a9fb30b7a1c14ba8b3dcf76dadc01674e58e40094f78e6bd5e3f1"
+source = "git+https://github.com/ruma/ruma.git?rev=4c00bd010dbdca6005bd599b52e90a0b7015d056#4c00bd010dbdca6005bd599b52e90a0b7015d056"
 dependencies = [
  "as_variant",
- "indexmap 2.1.0",
+ "indexmap 2.2.6",
  "js_int",
  "js_option",
  "percent-encoding",
- "pulldown-cmark",
+ "pulldown-cmark 0.9.6",
  "regex",
  "ruma-common",
  "ruma-html",
@@ -5028,8 +5020,7 @@ dependencies = [
 [[package]]
 name = "ruma-federation-api"
 version = "0.8.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e1901c1f27bc327652d58af2a130c73acef3198abeccd24cee97f7267fdf3fe7"
+source = "git+https://github.com/ruma/ruma.git?rev=4c00bd010dbdca6005bd599b52e90a0b7015d056#4c00bd010dbdca6005bd599b52e90a0b7015d056"
 dependencies = [
  "js_int",
  "ruma-common",
@@ -5041,8 +5032,7 @@ dependencies = [
 [[package]]
 name = "ruma-html"
 version = "0.1.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9674a149b1a6965fe2174ba528c89ee201258abd9209bbe74953df7073a83a5b"
+source = "git+https://github.com/ruma/ruma.git?rev=4c00bd010dbdca6005bd599b52e90a0b7015d056#4c00bd010dbdca6005bd599b52e90a0b7015d056"
 dependencies = [
  "as_variant",
  "html5ever",
@@ -5054,8 +5044,7 @@ dependencies = [
 [[package]]
 name = "ruma-identifiers-validation"
 version = "0.9.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "bf8ad1259274f2f57c20901bd1cc5e4a8f23169d1c1d887b6338b02f058e9b41"
+source = "git+https://github.com/ruma/ruma.git?rev=4c00bd010dbdca6005bd599b52e90a0b7015d056#4c00bd010dbdca6005bd599b52e90a0b7015d056"
 dependencies = [
  "js_int",
  "thiserror",
@@ -5064,24 +5053,22 @@ dependencies = [
 [[package]]
 name = "ruma-macros"
 version = "0.12.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0280534a4b3e34416f883285fac4f9c408cd0b737890ae66f3e7a7056d14be80"
+source = "git+https://github.com/ruma/ruma.git?rev=4c00bd010dbdca6005bd599b52e90a0b7015d056#4c00bd010dbdca6005bd599b52e90a0b7015d056"
 dependencies = [
  "once_cell",
- "proc-macro-crate 2.0.1",
+ "proc-macro-crate 2.0.0",
  "proc-macro2",
  "quote",
  "ruma-identifiers-validation",
  "serde",
- "syn 2.0.41",
+ "syn 2.0.58",
  "toml",
 ]
 
 [[package]]
 name = "ruma-push-gateway-api"
 version = "0.8.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f343045c4d4a5943f93b5014160af3c7413e6ee32ea47b147e1e91f2a977486b"
+source = "git+https://github.com/ruma/ruma.git?rev=4c00bd010dbdca6005bd599b52e90a0b7015d056#4c00bd010dbdca6005bd599b52e90a0b7015d056"
 dependencies = [
  "js_int",
  "ruma-common",
@@ -5096,7 +5083,7 @@ version = "0.30.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "a78046161564f5e7cd9008aff3b2990b3850dc8e0349119b98e8f251e099f24d"
 dependencies = [
- "bitflags 2.4.1",
+ "bitflags 2.5.0",
  "fallible-iterator",
  "fallible-streaming-iterator",
  "hashlink",
@@ -5127,102 +5114,45 @@ dependencies = [
 
 [[package]]
 name = "rustix"
-version = "0.37.27"
+version = "0.38.32"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "fea8ca367a3a01fe35e6943c400addf443c0f57670e6ec51196f71a4b8762dd2"
+checksum = "65e04861e65f21776e67888bfbea442b3642beaa0138fdb1dd7a84a52dffdb89"
 dependencies = [
- "bitflags 1.3.2",
+ "bitflags 2.5.0",
  "errno",
- "io-lifetimes",
  "libc",
- "linux-raw-sys 0.3.8",
- "windows-sys 0.48.0",
-]
-
-[[package]]
-name = "rustix"
-version = "0.38.28"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "72e572a5e8ca657d7366229cdde4bd14c4eb5499a9573d4d366fe1b599daa316"
-dependencies = [
- "bitflags 2.4.1",
- "errno",
- "libc",
- "linux-raw-sys 0.4.12",
+ "linux-raw-sys",
  "windows-sys 0.52.0",
 ]
 
 [[package]]
-name = "rustls"
-version = "0.21.10"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f9d5a6813c0759e4609cd494e8e725babae6a2ca7b62a5536a13daaec6fcb7ba"
-dependencies = [
- "log",
- "ring",
- "rustls-webpki",
- "sct",
-]
-
-[[package]]
-name = "rustls-native-certs"
-version = "0.6.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a9aace74cb666635c918e9c12bc0d348266037aa8eb599b5cba565709a8dff00"
-dependencies = [
- "openssl-probe",
- "rustls-pemfile",
- "schannel",
- "security-framework",
-]
-
-[[package]]
 name = "rustls-pemfile"
 version = "1.0.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "1c74cae0a4cf6ccbbf5f359f08efdf8ee7e1dc532573bf0db71968cb56b1448c"
 dependencies = [
- "base64",
-]
-
-[[package]]
-name = "rustls-webpki"
-version = "0.101.7"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8b6275d1ee7a1cd780b64aca7726599a1dbc893b1e64144529e55c3c2f745765"
-dependencies = [
- "ring",
- "untrusted",
+ "base64 0.21.7",
 ]
 
 [[package]]
 name = "rustversion"
-version = "1.0.14"
+version = "1.0.15"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7ffc183a10b4478d04cbbbfc96d0873219d962dd5accaff2ffbd4ceb7df837f4"
+checksum = "80af6f9131f277a45a3fba6ce8e2258037bb0477a67e610d3c1fe046ab31de47"
 
 [[package]]
 name = "ryu"
-version = "1.0.16"
+version = "1.0.17"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f98d2aa92eebf49b69786be48e4477826b256916e84a57ff2a4f21923b48eb4c"
-
-[[package]]
-name = "salsa20"
-version = "0.10.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "97a22f5af31f73a954c10289c93e8a50cc23d971e80ee446f1f6f7137a088213"
-dependencies = [
- "cipher",
-]
+checksum = "e86697c916019a8588c99b5fac3cead74ec0b4b819707a682fd4d23fa0ce1ba1"
 
 [[package]]
 name = "schannel"
-version = "0.1.22"
+version = "0.1.23"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0c3733bf4cf7ea0880754e19cb5a462007c4a8c1914bff372ccc95b464f1df88"
+checksum = "fbc91545643bcf3a0bbb6569265615222618bdf33ce4ffbbd13c4bbd4c093534"
 dependencies = [
- "windows-sys 0.48.0",
+ "windows-sys 0.52.0",
 ]
 
 [[package]]
@@ -5231,10 +5161,13 @@ version = "0.8.16"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "45a28f4c49489add4ce10783f7911893516f15afe45d015608d41faca6bc4d29"
 dependencies = [
+ "chrono",
  "dyn-clone",
+ "indexmap 1.9.3",
  "schemars_derive",
  "serde",
  "serde_json",
+ "url",
 ]
 
 [[package]]
@@ -5256,27 +5189,6 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "94143f37725109f92c262ed2cf5e59bce7498c01bcc1502d7b9afe439a4e9f49"
 
 [[package]]
-name = "scrypt"
-version = "0.11.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0516a385866c09368f0b5bcd1caff3366aace790fcd46e2bb032697bb172fd1f"
-dependencies = [
- "pbkdf2",
- "salsa20",
- "sha2",
-]
-
-[[package]]
-name = "sct"
-version = "0.7.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "da046153aa2352493d6cb7da4b6e5c0c057d8a1d0a9aa8560baffdd945acd414"
-dependencies = [
- "ring",
- "untrusted",
-]
-
-[[package]]
 name = "sec1"
 version = "0.7.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -5301,9 +5213,9 @@ dependencies = [
 
 [[package]]
 name = "security-framework"
-version = "2.9.2"
+version = "2.10.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "05b64fb303737d99b81884b2c63433e9ae28abebe5eb5045dcdd175dc2ecf4de"
+checksum = "770452e37cad93e0a50d5abc3990d2bc351c36d0328f86cefec2f2fb206eaef6"
 dependencies = [
  "bitflags 1.3.2",
  "core-foundation",
@@ -5314,9 +5226,9 @@ dependencies = [
 
 [[package]]
 name = "security-framework-sys"
-version = "2.9.1"
+version = "2.10.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e932934257d3b408ed8f30db49d85ea163bfe74961f017f405b025af298f0c7a"
+checksum = "41f3cc463c0ef97e11c3461a9d3787412d30e8e7eb907c79180c4a57bf7c04ef"
 dependencies = [
  "core-foundation-sys",
  "libc",
@@ -5324,24 +5236,24 @@ dependencies = [
 
 [[package]]
 name = "semver"
-version = "1.0.20"
+version = "1.0.22"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "836fa6a3e1e547f9a2c4040802ec865b5d85f4014efe00555d7090a3dcaa1090"
+checksum = "92d43fe69e652f3df9bdc2b85b2854a0825b86e4fb76bc44d945137d053639ca"
 
 [[package]]
 name = "serde"
-version = "1.0.193"
+version = "1.0.197"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "25dd9975e68d0cb5aa1120c288333fc98731bd1dd12f561e468ea4728c042b89"
+checksum = "3fb1c873e1b9b056a4dc4c0c198b24c3ffa059243875552b2bd0933b1aee4ce2"
 dependencies = [
  "serde_derive",
 ]
 
 [[package]]
 name = "serde-wasm-bindgen"
-version = "0.6.3"
+version = "0.6.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b9b713f70513ae1f8d92665bbbbda5c295c2cf1da5542881ae5eefe20c9af132"
+checksum = "8302e169f0eddcc139c70f139d19d6467353af16f9fce27e8c30158036a1e16b"
 dependencies = [
  "js-sys",
  "serde",
@@ -5350,22 +5262,22 @@ dependencies = [
 
 [[package]]
 name = "serde_bytes"
-version = "0.11.12"
+version = "0.11.14"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ab33ec92f677585af6d88c65593ae2375adde54efdbf16d597f2cbc7a6d368ff"
+checksum = "8b8497c313fd43ab992087548117643f6fcd935cbf36f176ffda0aacf9591734"
 dependencies = [
  "serde",
 ]
 
 [[package]]
 name = "serde_derive"
-version = "1.0.193"
+version = "1.0.197"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "43576ca501357b9b071ac53cdc7da8ef0cbd9493d8df094cd821777ea6e894d3"
+checksum = "7eb0b34b42edc17f6b7cac84a52a1c5f0e1bb2227e997ca9011ea3dd34e8610b"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.41",
+ "syn 2.0.58",
 ]
 
 [[package]]
@@ -5381,12 +5293,12 @@ dependencies = [
 
 [[package]]
 name = "serde_html_form"
-version = "0.2.3"
+version = "0.2.6"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "224e6a14f315852940f3ec103125aa6482f0e224732ed91ed3330ed633077c34"
+checksum = "8de514ef58196f1fc96dcaef80fe6170a1ce6215df9687a93fe8300e773fefc5"
 dependencies = [
  "form_urlencoded",
- "indexmap 2.1.0",
+ "indexmap 2.2.6",
  "itoa",
  "ryu",
  "serde",
@@ -5394,10 +5306,11 @@ dependencies = [
 
 [[package]]
 name = "serde_json"
-version = "1.0.108"
+version = "1.0.115"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3d1c7e3eac408d115102c4c24ad393e0821bb3a5df4d506a80f85f7a742a526b"
+checksum = "12dc5c46daa8e9fdf4f5e71b6cf9a53f2487da0e86e55808e2d35539666497dd"
 dependencies = [
+ "indexmap 2.2.6",
  "itoa",
  "ryu",
  "serde",
@@ -5405,20 +5318,20 @@ dependencies = [
 
 [[package]]
 name = "serde_repr"
-version = "0.1.17"
+version = "0.1.19"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3081f5ffbb02284dda55132aa26daecedd7372a42417bbbab6f14ab7d6bb9145"
+checksum = "6c64451ba24fc7a6a2d60fc75dd9c83c90903b19028d4eff35e88fc1e86564e9"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.41",
+ "syn 2.0.58",
 ]
 
 [[package]]
 name = "serde_spanned"
-version = "0.6.4"
+version = "0.6.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "12022b835073e5b11e90a14f86838ceb1c8fb0325b72416845c487ac0fa95e80"
+checksum = "eb3622f419d1296904700073ea6cc23ad690adbd66f13ea683df73298736f0c1"
 dependencies = [
  "serde",
 ]
@@ -5437,16 +5350,17 @@ dependencies = [
 
 [[package]]
 name = "serde_with"
-version = "3.4.0"
+version = "3.7.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "64cd236ccc1b7a29e7e2739f27c0b2dd199804abc4290e32f59f3b68d6405c23"
+checksum = "ee80b0e361bbf88fd2f6e242ccd19cfda072cb0faa6ae694ecee08199938569a"
 dependencies = [
- "base64",
+ "base64 0.21.7",
  "chrono",
  "hex",
  "indexmap 1.9.3",
- "indexmap 2.1.0",
+ "indexmap 2.2.6",
  "serde",
+ "serde_derive",
  "serde_json",
  "serde_with_macros",
  "time",
@@ -5454,14 +5368,14 @@ dependencies = [
 
 [[package]]
 name = "serde_with_macros"
-version = "3.4.0"
+version = "3.7.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "93634eb5f75a2323b16de4748022ac4297f9e76b6dced2be287a099f41b5e788"
+checksum = "6561dc161a9224638a31d876ccdfefbc1df91d3f3a8342eddb35f055d48c7655"
 dependencies = [
- "darling 0.20.3",
+ "darling",
  "proc-macro2",
  "quote",
- "syn 2.0.41",
+ "syn 2.0.58",
 ]
 
 [[package]]
@@ -5497,9 +5411,9 @@ dependencies = [
 
 [[package]]
 name = "shlex"
-version = "1.2.0"
+version = "1.3.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a7cee0529a6d40f580e7a5e6c495c8fbfe21b7b52795ed4bb5e62cdf92bc6380"
+checksum = "0fda2ff0d084019ba4d7c6f371c95d8fd75ce3524c3cb8fb653a3023f6323e64"
 
 [[package]]
 name = "signal-hook-registry"
@@ -5527,6 +5441,15 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "d66dc143e6b11c1eddc06d5c423cfc97062865baf299914ab64caa38182078fe"
 
 [[package]]
+name = "simd_helpers"
+version = "0.1.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "95890f873bec569a0362c235787f3aca6e1e887302ba4840839bcc6459c42da6"
+dependencies = [
+ "quote",
+]
+
+[[package]]
 name = "siphasher"
 version = "0.3.11"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -5543,35 +5466,25 @@ dependencies = [
 
 [[package]]
 name = "smallvec"
-version = "1.11.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4dccd0940a2dcdf68d092b8cbab7dc0ad8fa938bf95787e1b916b0e3d0e8e970"
-
-[[package]]
-name = "socket2"
-version = "0.4.10"
+version = "1.13.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9f7916fc008ca5542385b89a3d3ce689953c143e9304a9bf8beec1de48994c0d"
-dependencies = [
- "libc",
- "winapi",
-]
+checksum = "3c5e1a9a646d36c3599cd173a41282daf47c44583ad367b8e6837255952e5c67"
 
 [[package]]
 name = "socket2"
-version = "0.5.5"
+version = "0.5.6"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7b5fac59a5cb5dd637972e5fca70daf0523c9067fcdc4842f053dae04a18f8e9"
+checksum = "05ffd9c0a93b7543e062e759284fcf5f5e3b098501104bfbdde4d404db792871"
 dependencies = [
  "libc",
- "windows-sys 0.48.0",
+ "windows-sys 0.52.0",
 ]
 
 [[package]]
 name = "sourceview5"
-version = "0.7.1"
+version = "0.8.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "88c5f976a113e947bc5ec67758b2960c0db4ca76f80fb410d7cd86cd456d9ee5"
+checksum = "9f0bf70f2f1ac4624af22056f9c4cf58dccff73dafc7207b46fbd3df7b57410f"
 dependencies = [
  "futures-channel",
  "futures-core",
@@ -5587,9 +5500,9 @@ dependencies = [
 
 [[package]]
 name = "sourceview5-sys"
-version = "0.7.1"
+version = "0.8.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "29637cccd56075a37ba72c0cc8b8d599dbc1d857e30dadea97eaacbc29b7fd46"
+checksum = "eac236ad7ce6dad2b819ced8b68b5a1cf4d968aa301cb9a7692470eb21f657be"
 dependencies = [
  "gdk-pixbuf-sys",
  "gdk4-sys",
@@ -5667,47 +5580,47 @@ checksum = "73473c0e59e6d5812c5dfe2a064a6444949f089e20eec9a2e5506596494e4623"
 
 [[package]]
 name = "structmeta"
-version = "0.2.0"
+version = "0.3.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "78ad9e09554f0456d67a69c1584c9798ba733a5b50349a6c0d0948710523922d"
+checksum = "2e1575d8d40908d70f6fd05537266b90ae71b15dbbe7a8b7dffa2b759306d329"
 dependencies = [
  "proc-macro2",
  "quote",
  "structmeta-derive",
- "syn 2.0.41",
+ "syn 2.0.58",
 ]
 
 [[package]]
 name = "structmeta-derive"
-version = "0.2.0"
+version = "0.3.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a60bcaff7397072dca0017d1db428e30d5002e00b6847703e2e42005c95fbe00"
+checksum = "152a0b65a590ff6c3da95cabe2353ee04e6167c896b28e3b14478c2636c922fc"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.41",
+ "syn 2.0.58",
 ]
 
 [[package]]
 name = "strum"
-version = "0.25.0"
+version = "0.26.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "290d54ea6f91c969195bdbcd7442c8c2a2ba87da8bf60a7ee86a235d4bc1e125"
+checksum = "5d8cec3501a5194c432b2b7976db6b7d10ec95c253208b45f83f7136aa985e29"
 dependencies = [
  "strum_macros",
 ]
 
 [[package]]
 name = "strum_macros"
-version = "0.25.3"
+version = "0.26.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "23dc1fa9ac9c169a78ba62f0b841814b7abae11bdd047b9c58f893439e309ea0"
+checksum = "c6cf59daf282c0a494ba14fd21610a0325f9f90ec9d1231dea26bcb1d696c946"
 dependencies = [
- "heck",
+ "heck 0.4.1",
  "proc-macro2",
  "quote",
  "rustversion",
- "syn 2.0.41",
+ "syn 2.0.58",
 ]
 
 [[package]]
@@ -5729,9 +5642,9 @@ dependencies = [
 
 [[package]]
 name = "syn"
-version = "2.0.41"
+version = "2.0.58"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "44c8b28c477cc3bf0e7966561e3460130e1255f7a1cf71931075f1c5e7a7e269"
+checksum = "44cfb93f38070beee36b3fef7d4f5a16f27751d94b187b666a5cc5e9b0d30687"
 dependencies = [
  "proc-macro2",
  "quote",
@@ -5739,6 +5652,12 @@ dependencies = [
 ]
 
 [[package]]
+name = "sync_wrapper"
+version = "0.1.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "2047c6ded9c721764247e62cd3b03c09ffc529b2ba5b10ec482ae507a4a70160"
+
+[[package]]
 name = "system-configuration"
 version = "0.5.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -5761,12 +5680,12 @@ dependencies = [
 
 [[package]]
 name = "system-deps"
-version = "6.2.0"
+version = "6.2.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2a2d580ff6a20c55dfb86be5f9c238f67835d0e81cbdea8bf5680e0897320331"
+checksum = "a3e535eb8dded36d55ec13eddacd30dec501792ff23a0b1682c38601b8cf2349"
 dependencies = [
  "cfg-expr",
- "heck",
+ "heck 0.5.0",
  "pkg-config",
  "toml",
  "version-compare",
@@ -5774,27 +5693,26 @@ dependencies = [
 
 [[package]]
 name = "target-lexicon"
-version = "0.12.12"
+version = "0.12.14"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "14c39fd04924ca3a864207c66fc2cd7d22d7c016007f9ce846cbb9326331930a"
+checksum = "e1fc403891a21bcfb7c37834ba66a547a8f402146eba7265b5a6d88059c9ff2f"
 
 [[package]]
 name = "temp-dir"
-version = "0.1.11"
+version = "0.1.13"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "af547b166dd1ea4b472165569fc456cfb6818116f854690b0ff205e636523dab"
+checksum = "1f227968ec00f0e5322f9b8173c7a0cbcff6181a0a5b28e9892491c286277231"
 
 [[package]]
 name = "tempfile"
-version = "3.8.1"
+version = "3.10.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7ef1adac450ad7f4b3c28589471ade84f25f731a7a0fe30d71dfa9f60fd808e5"
+checksum = "85b77fafb263dd9d05cbeac119526425676db3784113aa9295c88498cbf8bff1"
 dependencies = [
  "cfg-if",
- "fastrand 2.0.1",
- "redox_syscall",
- "rustix 0.38.28",
- "windows-sys 0.48.0",
+ "fastrand",
+ "rustix",
+ "windows-sys 0.52.0",
 ]
 
 [[package]]
@@ -5810,29 +5728,29 @@ dependencies = [
 
 [[package]]
 name = "thiserror"
-version = "1.0.51"
+version = "1.0.58"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f11c217e1416d6f036b870f14e0413d480dbf28edbee1f877abaf0206af43bb7"
+checksum = "03468839009160513471e86a034bb2c5c0e4baae3b43f79ffc55c4a5427b3297"
 dependencies = [
  "thiserror-impl",
 ]
 
 [[package]]
 name = "thiserror-impl"
-version = "1.0.51"
+version = "1.0.58"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "01742297787513b79cf8e29d1056ede1313e2420b7b3b15d0a768b4921f549df"
+checksum = "c61f3ba182994efc43764a46c018c347bc492c79f024e705f46567b418f6d4f7"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.41",
+ "syn 2.0.58",
 ]
 
 [[package]]
 name = "thread_local"
-version = "1.1.7"
+version = "1.1.8"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3fdd6f064ccff2d6567adcb3873ca630700f00b5ad3f060c25b5dcfd9a4ce152"
+checksum = "8b9ef9bad013ada3808854ceac7b46812a6465ba368859a37e2100283d2d719c"
 dependencies = [
  "cfg-if",
  "once_cell",
@@ -5840,9 +5758,9 @@ dependencies = [
 
 [[package]]
 name = "tiff"
-version = "0.9.0"
+version = "0.9.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6d172b0f4d3fba17ba89811858b9d3d97f928aece846475bbda076ca46736211"
+checksum = "ba1310fcea54c6a9a4fd1aad794ecc02c31682f6bfbecdf460bf19533eed1e3e"
 dependencies = [
  "flate2",
  "jpeg-decoder",
@@ -5851,12 +5769,13 @@ dependencies = [
 
 [[package]]
 name = "time"
-version = "0.3.30"
+version = "0.3.36"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c4a34ab300f2dee6e562c10a046fc05e358b29f9bf92277f30c3c8d82275f6f5"
+checksum = "5dfd88e563464686c916c7e46e623e520ddc6d79fa6641390f2e3fa86e83e885"
 dependencies = [
  "deranged",
  "itoa",
+ "num-conv",
  "powerfmt",
  "serde",
  "time-core",
@@ -5871,10 +5790,11 @@ checksum = "ef927ca75afb808a4d64dd374f00a2adf8d0fcff8e7b184af886c3c87ec4a3f3"
 
 [[package]]
 name = "time-macros"
-version = "0.2.15"
+version = "0.2.18"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4ad70d68dba9e1f8aceda7aa6711965dfec1cac869f311a51bd08b3a2ccbce20"
+checksum = "3f252a68540fde3a3877aeea552b832b40ab9a69e318efd078774a01ddee1ccf"
 dependencies = [
+ "num-conv",
  "time-core",
 ]
 
@@ -5895,9 +5815,9 @@ checksum = "1f3ccbac311fea05f86f61904b462b55fb3df8837a366dfc601a0161d0532f20"
 
 [[package]]
 name = "tokio"
-version = "1.35.0"
+version = "1.37.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "841d45b238a16291a4e1584e61820b8ae57d696cc5015c459c229ccc6990cc1c"
+checksum = "1adbebffeca75fcfd058afa480fb6c0b81e165a0323f9c9d39c9697e37c46787"
 dependencies = [
  "backtrace",
  "bytes",
@@ -5906,7 +5826,7 @@ dependencies = [
  "num_cpus",
  "pin-project-lite",
  "signal-hook-registry",
- "socket2 0.5.5",
+ "socket2",
  "tokio-macros",
  "tracing",
  "windows-sys 0.48.0",
@@ -5920,7 +5840,7 @@ checksum = "5b8a1e28f2deaa14e508979454cb3a223b10b938b45af148bc0986de36f1923b"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.41",
+ "syn 2.0.58",
 ]
 
 [[package]]
@@ -5934,16 +5854,6 @@ dependencies = [
 ]
 
 [[package]]
-name = "tokio-rustls"
-version = "0.24.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c28327cf380ac148141087fbfb9de9d7bd4e84ab5d2c28fbc911d753de8a7081"
-dependencies = [
- "rustls",
- "tokio",
-]
-
-[[package]]
 name = "tokio-socks"
 version = "0.5.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -5957,9 +5867,9 @@ dependencies = [
 
 [[package]]
 name = "tokio-stream"
-version = "0.1.14"
+version = "0.1.15"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "397c988d37662c7dda6d2208364a706264bf3d6138b11d436cbac0ad38832842"
+checksum = "267ac89e0bec6e691e5813911606935d77c476ff49024f98abcea3e7b15e37af"
 dependencies = [
  "futures-core",
  "pin-project-lite",
@@ -5983,21 +5893,21 @@ dependencies = [
 
 [[package]]
 name = "toml"
-version = "0.8.2"
+version = "0.8.12"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "185d8ab0dfbb35cf1399a6344d8484209c088f75f8f68230da55d48d95d43e3d"
+checksum = "e9dd1545e8208b4a5af1aa9bbd0b4cf7e9ea08fabc5d0a5c67fcaafa17433aa3"
 dependencies = [
  "serde",
  "serde_spanned",
  "toml_datetime",
- "toml_edit 0.20.2",
+ "toml_edit 0.22.9",
 ]
 
 [[package]]
 name = "toml_datetime"
-version = "0.6.3"
+version = "0.6.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7cda73e2f1397b1262d6dfdcef8aafae14d1de7748d66822d3bfeeb6d03e5e4b"
+checksum = "3550f4e9685620ac18a50ed434eb3aec30db8ba93b0287467bca5826ea25baf1"
 dependencies = [
  "serde",
 ]
@@ -6008,22 +5918,44 @@ version = "0.19.15"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "1b5bb770da30e5cbfde35a2d7b9b8a2c4b8ef89548a7a6aeab5c9a576e3e7421"
 dependencies = [
- "indexmap 2.1.0",
+ "indexmap 2.2.6",
+ "toml_datetime",
+ "winnow 0.5.40",
+]
+
+[[package]]
+name = "toml_edit"
+version = "0.20.7"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "70f427fce4d84c72b5b732388bf4a9f4531b53f74e2887e3ecb2481f68f66d81"
+dependencies = [
+ "indexmap 2.2.6",
  "toml_datetime",
- "winnow",
+ "winnow 0.5.40",
 ]
 
 [[package]]
 name = "toml_edit"
-version = "0.20.2"
+version = "0.21.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "396e4d48bbb2b7554c944bde63101b5ae446cff6ec4a24227428f15eb72ef338"
+checksum = "6a8534fd7f78b5405e860340ad6575217ce99f38d4d5c8f2442cb5ecb50090e1"
 dependencies = [
- "indexmap 2.1.0",
+ "indexmap 2.2.6",
+ "toml_datetime",
+ "winnow 0.5.40",
+]
+
+[[package]]
+name = "toml_edit"
+version = "0.22.9"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "8e40bb779c5187258fd7aad0eb68cb8706a0a81fa712fbea808ab43c4b8374c4"
+dependencies = [
+ "indexmap 2.2.6",
  "serde",
  "serde_spanned",
  "toml_datetime",
- "winnow",
+ "winnow 0.6.5",
 ]
 
 [[package]]
@@ -6034,14 +5966,9 @@ checksum = "b8fa9be0de6cf49e536ce1851f987bd21a43b771b09473c3549a6c853db37c1c"
 dependencies = [
  "futures-core",
  "futures-util",
- "hdrhistogram",
- "indexmap 1.9.3",
  "pin-project",
  "pin-project-lite",
- "rand",
- "slab",
  "tokio",
- "tokio-util",
  "tower-layer",
  "tower-service",
  "tracing",
@@ -6053,17 +5980,14 @@ version = "0.4.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "61c5bb1d698276a2443e5ecfabc1008bf15a36c12e6a7176e7bf089ea9131140"
 dependencies = [
- "bitflags 2.4.1",
+ "bitflags 2.5.0",
  "bytes",
  "futures-core",
  "futures-util",
  "http",
  "http-body",
  "http-range-header",
- "iri-string",
  "pin-project-lite",
- "tokio",
- "tower",
  "tower-layer",
  "tower-service",
 ]
@@ -6100,7 +6024,7 @@ checksum = "34704c8d6ebcbc939824180af020566b01a7c01f80641264eba0999f6c2b6be7"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.41",
+ "syn 2.0.58",
 ]
 
 [[package]]
@@ -6126,9 +6050,9 @@ dependencies = [
 
 [[package]]
 name = "tracing-opentelemetry"
-version = "0.22.0"
+version = "0.23.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c67ac25c5407e7b961fafc6f7e9aa5958fd297aada2d20fa2ae1737357e55596"
+checksum = "a9be14ba1bbe4ab79e9229f7f89fab8d120b865859f10527f31c033e599d2284"
 dependencies = [
  "js-sys",
  "once_cell",
@@ -6172,9 +6096,9 @@ checksum = "42ff0bf0c66b8238c6f3b578df37d0b7848e55df8577b3f74f92a69acceeb825"
 
 [[package]]
 name = "typewit"
-version = "1.8.0"
+version = "1.9.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6779a69cc5f9a7388274a0a8a353eb1c9e45195f9ae74a26690b055a7cf9592a"
+checksum = "c6fb9ae6a3cafaf0a5d14c2302ca525f9ae8e07a0f0e6949de88d882c37a6e24"
 dependencies = [
  "typewit_proc_macros",
 ]
@@ -6191,18 +6115,20 @@ version = "1.1.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "89daebc3e6fd160ac4aa9fc8b3bf71e1f74fbf92367ae71fb83a037e8bf164b9"
 dependencies = [
- "memoffset 0.9.0",
+ "memoffset",
  "tempfile",
  "winapi",
 ]
 
 [[package]]
 name = "ulid"
-version = "1.1.0"
+version = "1.1.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7e37c4b6cbcc59a8dcd09a6429fbc7890286bcbb79215cea7b38a3c4c0921d93"
+checksum = "34778c17965aa2a08913b57e1f34db9b4a63f5de31768b55bf20d2795f921259"
 dependencies = [
+ "getrandom",
  "rand",
+ "web-time",
 ]
 
 [[package]]
@@ -6216,9 +6142,9 @@ dependencies = [
 
 [[package]]
 name = "unicode-bidi"
-version = "0.3.14"
+version = "0.3.15"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6f2528f27a9eb2b21e69c95319b30bd0efd85d09c379741b0f78ea1d86be2416"
+checksum = "08f95100a766bf4f8f28f90d77e0a5461bbdb219042e7679bebe79004fed8d75"
 
 [[package]]
 name = "unicode-ident"
@@ -6228,18 +6154,18 @@ checksum = "3354b9ac3fae1ff6755cb6db53683adb661634f67557942dea4facebec0fee4b"
 
 [[package]]
 name = "unicode-normalization"
-version = "0.1.22"
+version = "0.1.23"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5c5713f0fc4b5db668a2ac63cdb7bb4469d8c9fed047b1d0292cc7b0ce2ba921"
+checksum = "a56d1686db2308d901306f92a263857ef59ea39678a5458e7cb17f01415101f5"
 dependencies = [
  "tinyvec",
 ]
 
 [[package]]
 name = "unicode-segmentation"
-version = "1.10.1"
+version = "1.11.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1dd624098567895118886609431a7c3b8f516e41d30e0643f03d94592a147e36"
+checksum = "d4c87d22b6e3f4a18d4d40ef354e97c90fcb14dd91d7dc0aa9d8a1172ebf7202"
 
 [[package]]
 name = "unicode-width"
@@ -6258,12 +6184,6 @@ dependencies = [
 ]
 
 [[package]]
-name = "untrusted"
-version = "0.9.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8ecb6da28b8a351d773b68d5825ac39017e680750f980f3a1a85cd8dd28a47c1"
-
-[[package]]
 name = "url"
 version = "2.5.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -6304,6 +6224,17 @@ dependencies = [
 ]
 
 [[package]]
+name = "v_frame"
+version = "0.3.8"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "d6f32aaa24bacd11e488aa9ba66369c7cd514885742c9fe08cfe85884db3e92b"
+dependencies = [
+ "aligned-vec",
+ "num-traits",
+ "wasm-bindgen",
+]
+
+[[package]]
 name = "valuable"
 version = "0.1.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -6317,9 +6248,9 @@ checksum = "accd4ea62f7bb7a82fe23066fb0957d48ef677f6eeb8215f372f52e48bb32426"
 
 [[package]]
 name = "version-compare"
-version = "0.1.1"
+version = "0.2.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "579a42fc0b8e0c63b76519a339be31bed574929511fa53c1a3acae26eb258f29"
+checksum = "852e951cb7832cb45cb1169900d19760cfa39b82bc0ea9c0e5a14ae88411c98b"
 
 [[package]]
 name = "version_check"
@@ -6329,13 +6260,12 @@ checksum = "49874b5167b65d7193b8aba1567f5c7d93d001cafc34600cee003eda787e483f"
 
 [[package]]
 name = "vodozemac"
-version = "0.5.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6c66c59f2218deeddfe34c0fee8a1908967f8566bafd91c3c6b9600d0b68cde1"
+version = "0.5.1"
+source = "git+https://github.com/matrix-org/vodozemac?rev=0c75746fc8a5eda4a0e490d345d1798b4c6cbd67#0c75746fc8a5eda4a0e490d345d1798b4c6cbd67"
 dependencies = [
  "aes",
  "arrayvec",
- "base64",
+ "base64 0.22.0",
  "cbc",
  "curve25519-dalek",
  "ed25519-dalek",
@@ -6357,12 +6287,6 @@ dependencies = [
 ]
 
 [[package]]
-name = "waker-fn"
-version = "1.1.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f3c4517f54858c779bbcbf228f4fca63d121bf85fbecb2dc578cdf4a39395690"
-
-[[package]]
 name = "want"
 version = "0.3.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -6379,9 +6303,9 @@ checksum = "9c8d87e72b64a3b4db28d11ce29237c246188f4f51057d65a7eab63b7987e423"
 
 [[package]]
 name = "wasm-bindgen"
-version = "0.2.89"
+version = "0.2.92"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0ed0d4f68a3015cc185aff4db9506a015f4b96f95303897bfa23f846db54064e"
+checksum = "4be2531df63900aeb2bca0daaaddec08491ee64ceecbee5076636a3b026795a8"
 dependencies = [
  "cfg-if",
  "wasm-bindgen-macro",
@@ -6389,24 +6313,24 @@ dependencies = [
 
 [[package]]
 name = "wasm-bindgen-backend"
-version = "0.2.89"
+version = "0.2.92"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1b56f625e64f3a1084ded111c4d5f477df9f8c92df113852fa5a374dbda78826"
+checksum = "614d787b966d3989fa7bb98a654e369c762374fd3213d212cfc0251257e747da"
 dependencies = [
  "bumpalo",
  "log",
  "once_cell",
  "proc-macro2",
  "quote",
- "syn 2.0.41",
+ "syn 2.0.58",
  "wasm-bindgen-shared",
 ]
 
 [[package]]
 name = "wasm-bindgen-futures"
-version = "0.4.39"
+version = "0.4.42"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ac36a15a220124ac510204aec1c3e5db8a22ab06fd6706d881dc6149f8ed9a12"
+checksum = "76bc14366121efc8dbb487ab05bcc9d346b3b5ec0eaa76e46594cabbe51762c0"
 dependencies = [
  "cfg-if",
  "js-sys",
@@ -6416,9 +6340,9 @@ dependencies = [
 
 [[package]]
 name = "wasm-bindgen-macro"
-version = "0.2.89"
+version = "0.2.92"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0162dbf37223cd2afce98f3d0785506dcb8d266223983e4b5b525859e6e182b2"
+checksum = "a1f8823de937b71b9460c0c34e25f3da88250760bec0ebac694b49997550d726"
 dependencies = [
  "quote",
  "wasm-bindgen-macro-support",
@@ -6426,28 +6350,28 @@ dependencies = [
 
 [[package]]
 name = "wasm-bindgen-macro-support"
-version = "0.2.89"
+version = "0.2.92"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f0eb82fcb7930ae6219a7ecfd55b217f5f0893484b7a13022ebb2b2bf20b5283"
+checksum = "e94f17b526d0a461a191c78ea52bbce64071ed5c04c9ffe424dcb38f74171bb7"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.41",
+ "syn 2.0.58",
  "wasm-bindgen-backend",
  "wasm-bindgen-shared",
 ]
 
 [[package]]
 name = "wasm-bindgen-shared"
-version = "0.2.89"
+version = "0.2.92"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7ab9b36309365056cd639da3134bf87fa8f3d86008abf99e612384a6eecd459f"
+checksum = "af190c94f2773fdb3729c55b007a722abb5384da03bc0986df4c289bf5567e96"
 
 [[package]]
 name = "wasm-streams"
-version = "0.3.0"
+version = "0.4.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b4609d447824375f43e1ffbc051b50ad8f4b3ae8219680c94452ea05eb240ac7"
+checksum = "b65dc4c90b63b118468cf747d8bf3566c1913ef60be765b5730ead9e0a3ba129"
 dependencies = [
  "futures-util",
  "js-sys",
@@ -6458,9 +6382,9 @@ dependencies = [
 
 [[package]]
 name = "web-sys"
-version = "0.3.66"
+version = "0.3.69"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "50c24a44ec86bb68fbecd1b3efed7e85ea5621b39b35ef2766b66cd984f8010f"
+checksum = "77afa9a11836342370f4817622a2f0f418b134426d91a82dfb48f532d2ec13ef"
 dependencies = [
  "js-sys",
  "wasm-bindgen",
@@ -6468,9 +6392,9 @@ dependencies = [
 
 [[package]]
 name = "web-time"
-version = "0.2.3"
+version = "1.1.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "57099a701fb3a8043f993e8228dc24229c7b942e2b009a1b962e54489ba1d3bf"
+checksum = "5a6580f308b1fad9207618087a65c04e7a10bc77e02c8e84e9b00dd4b12fa0bb"
 dependencies = [
  "js-sys",
  "wasm-bindgen",
@@ -6478,15 +6402,15 @@ dependencies = [
 
 [[package]]
 name = "weezl"
-version = "0.1.7"
+version = "0.1.8"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9193164d4de03a926d909d3bc7c30543cecb35400c02114792c2cae20d5e2dbb"
+checksum = "53a85b86a771b1c87058196170769dd264f66c0782acf1ae6cc51bfd64b39082"
 
 [[package]]
 name = "wildmatch"
-version = "2.1.1"
+version = "2.3.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ee583bdc5ff1cf9db20e9db5bb3ff4c3089a8f6b8b31aff265c9aba85812db86"
+checksum = "939e59c1bc731542357fdaad98b209ef78c8743d652bb61439d16b16a79eb025"
 
 [[package]]
 name = "winapi"
@@ -6512,11 +6436,11 @@ checksum = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f"
 
 [[package]]
 name = "windows-core"
-version = "0.51.1"
+version = "0.52.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f1f8cf84f35d2db49a46868f947758c7a1138116f7fac3bc844f43ade1292e64"
+checksum = "33ab640c8d7e35bf8ba19b884ba838ceb4fba93a4e8c65a9059d08afcfc683d9"
 dependencies = [
- "windows-targets 0.48.5",
+ "windows-targets 0.52.4",
 ]
 
 [[package]]
@@ -6534,7 +6458,7 @@ version = "0.52.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "282be5f36a8ce781fad8c8ae18fa3f9beff57ec1b52cb3de0789201425d9a33d"
 dependencies = [
- "windows-targets 0.52.0",
+ "windows-targets 0.52.4",
 ]
 
 [[package]]
@@ -6554,17 +6478,17 @@ dependencies = [
 
 [[package]]
 name = "windows-targets"
-version = "0.52.0"
+version = "0.52.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8a18201040b24831fbb9e4eb208f8892e1f50a37feb53cc7ff887feb8f50e7cd"
+checksum = "7dd37b7e5ab9018759f893a1952c9420d060016fc19a472b4bb20d1bdd694d1b"
 dependencies = [
- "windows_aarch64_gnullvm 0.52.0",
- "windows_aarch64_msvc 0.52.0",
- "windows_i686_gnu 0.52.0",
- "windows_i686_msvc 0.52.0",
- "windows_x86_64_gnu 0.52.0",
- "windows_x86_64_gnullvm 0.52.0",
- "windows_x86_64_msvc 0.52.0",
+ "windows_aarch64_gnullvm 0.52.4",
+ "windows_aarch64_msvc 0.52.4",
+ "windows_i686_gnu 0.52.4",
+ "windows_i686_msvc 0.52.4",
+ "windows_x86_64_gnu 0.52.4",
+ "windows_x86_64_gnullvm 0.52.4",
+ "windows_x86_64_msvc 0.52.4",
 ]
 
 [[package]]
@@ -6575,9 +6499,9 @@ checksum = "2b38e32f0abccf9987a4e3079dfb67dcd799fb61361e53e2882c3cbaf0d905d8"
 
 [[package]]
 name = "windows_aarch64_gnullvm"
-version = "0.52.0"
+version = "0.52.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "cb7764e35d4db8a7921e09562a0304bf2f93e0a51bfccee0bd0bb0b666b015ea"
+checksum = "bcf46cf4c365c6f2d1cc93ce535f2c8b244591df96ceee75d8e83deb70a9cac9"
 
 [[package]]
 name = "windows_aarch64_msvc"
@@ -6587,9 +6511,9 @@ checksum = "dc35310971f3b2dbbf3f0690a219f40e2d9afcf64f9ab7cc1be722937c26b4bc"
 
 [[package]]
 name = "windows_aarch64_msvc"
-version = "0.52.0"
+version = "0.52.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "bbaa0368d4f1d2aaefc55b6fcfee13f41544ddf36801e793edbbfd7d7df075ef"
+checksum = "da9f259dd3bcf6990b55bffd094c4f7235817ba4ceebde8e6d11cd0c5633b675"
 
 [[package]]
 name = "windows_i686_gnu"
@@ -6599,9 +6523,9 @@ checksum = "a75915e7def60c94dcef72200b9a8e58e5091744960da64ec734a6c6e9b3743e"
 
 [[package]]
 name = "windows_i686_gnu"
-version = "0.52.0"
+version = "0.52.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a28637cb1fa3560a16915793afb20081aba2c92ee8af57b4d5f28e4b3e7df313"
+checksum = "b474d8268f99e0995f25b9f095bc7434632601028cf86590aea5c8a5cb7801d3"
 
 [[package]]
 name = "windows_i686_msvc"
@@ -6611,9 +6535,9 @@ checksum = "8f55c233f70c4b27f66c523580f78f1004e8b5a8b659e05a4eb49d4166cca406"
 
 [[package]]
 name = "windows_i686_msvc"
-version = "0.52.0"
+version = "0.52.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ffe5e8e31046ce6230cc7215707b816e339ff4d4d67c65dffa206fd0f7aa7b9a"
+checksum = "1515e9a29e5bed743cb4415a9ecf5dfca648ce85ee42e15873c3cd8610ff8e02"
 
 [[package]]
 name = "windows_x86_64_gnu"
@@ -6623,9 +6547,9 @@ checksum = "53d40abd2583d23e4718fddf1ebec84dbff8381c07cae67ff7768bbf19c6718e"
 
 [[package]]
 name = "windows_x86_64_gnu"
-version = "0.52.0"
+version = "0.52.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3d6fa32db2bc4a2f5abeacf2b69f7992cd09dca97498da74a151a3132c26befd"
+checksum = "5eee091590e89cc02ad514ffe3ead9eb6b660aedca2183455434b93546371a03"
 
 [[package]]
 name = "windows_x86_64_gnullvm"
@@ -6635,9 +6559,9 @@ checksum = "0b7b52767868a23d5bab768e390dc5f5c55825b6d30b86c844ff2dc7414044cc"
 
 [[package]]
 name = "windows_x86_64_gnullvm"
-version = "0.52.0"
+version = "0.52.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1a657e1e9d3f514745a572a6846d3c7aa7dbe1658c056ed9c3344c4109a6949e"
+checksum = "77ca79f2451b49fa9e2af39f0747fe999fcda4f5e241b2898624dca97a1f2177"
 
 [[package]]
 name = "windows_x86_64_msvc"
@@ -6647,15 +6571,24 @@ checksum = "ed94fce61571a4006852b7389a063ab983c02eb1bb37b47f8272ce92d06d9538"
 
 [[package]]
 name = "windows_x86_64_msvc"
-version = "0.52.0"
+version = "0.52.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "dff9641d1cd4be8d1a070daf9e3773c5f67e78b4d9d42263020c057706765c04"
+checksum = "32b752e52a2da0ddfbdbcc6fceadfeede4c939ed16d13e648833a61dfb611ed8"
 
 [[package]]
 name = "winnow"
-version = "0.5.28"
+version = "0.5.40"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6c830786f7720c2fd27a1a0e27a709dbd3c4d009b56d098fc742d4f4eab91fe2"
+checksum = "f593a95398737aeed53e489c785df13f3618e41dbcd6718c6addbf1395aa6876"
+dependencies = [
+ "memchr",
+]
+
+[[package]]
+name = "winnow"
+version = "0.6.5"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "dffa400e67ed5a4dd237983829e66475f0a4a26938c4b04c21baede6262215b8"
 dependencies = [
  "memchr",
 ]
@@ -6672,9 +6605,9 @@ dependencies = [
 
 [[package]]
 name = "x25519-dalek"
-version = "2.0.0"
+version = "2.0.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "fb66477291e7e8d2b0ff1bcb900bf29489a9692816d79874bea351e7a8b6de96"
+checksum = "c7e468321c81fb07fa7f4c636c3972b9100f0346e5b6a9f2bd0603a52f7ed277"
 dependencies = [
  "curve25519-dalek",
  "rand_core",
@@ -6684,9 +6617,9 @@ dependencies = [
 
 [[package]]
 name = "x509-cert"
-version = "0.2.4"
+version = "0.2.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "25eefca1d99701da3a57feb07e5079fc62abba059fc139e98c13bbb250f3ef29"
+checksum = "1301e935010a701ae5f8655edc0ad17c44bad3ac5ce8c39185f75453b720ae94"
 dependencies = [
  "const-oid",
  "der",
@@ -6695,11 +6628,11 @@ dependencies = [
 
 [[package]]
 name = "xdg-home"
-version = "1.0.0"
+version = "1.1.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2769203cd13a0c6015d515be729c526d041e9cf2c0cc478d57faee85f40c6dcd"
+checksum = "21e5a325c3cb8398ad6cf859c1135b25dd29e186679cf2da7581d9679f63b38e"
 dependencies = [
- "nix",
+ "libc",
  "winapi",
 ]
 
@@ -6715,25 +6648,32 @@ dependencies = [
 ]
 
 [[package]]
+name = "yansi-term"
+version = "0.1.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "fe5c30ade05e61656247b2e334a031dfd0cc466fadef865bdcdea8d537951bf1"
+dependencies = [
+ "winapi",
+]
+
+[[package]]
 name = "zbus"
-version = "3.14.1"
+version = "4.1.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "31de390a2d872e4cd04edd71b425e29853f786dc99317ed72d73d6fcf5ebb948"
+checksum = "c9ff46f2a25abd690ed072054733e0bc3157e3d4c45f41bd183dce09c2ff8ab9"
 dependencies = [
  "async-broadcast",
  "async-process",
  "async-recursion",
  "async-trait",
- "byteorder",
  "derivative",
  "enumflags2",
- "event-listener 2.5.3",
+ "event-listener 5.3.0",
  "futures-core",
  "futures-sink",
  "futures-util",
  "hex",
- "nix",
- "once_cell",
+ "nix 0.28.0",
  "ordered-stream",
  "rand",
  "serde",
@@ -6743,7 +6683,7 @@ dependencies = [
  "tokio",
  "tracing",
  "uds_windows",
- "winapi",
+ "windows-sys 0.52.0",
  "xdg-home",
  "zbus_macros",
  "zbus_names",
@@ -6752,11 +6692,11 @@ dependencies = [
 
 [[package]]
 name = "zbus_macros"
-version = "3.14.1"
+version = "4.1.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "41d1794a946878c0e807f55a397187c11fc7a038ba5d868e7db4f3bd7760bc9d"
+checksum = "4e0e3852c93dcdb49c9462afe67a2a468f7bd464150d866e861eaf06208633e0"
 dependencies = [
- "proc-macro-crate 1.3.1",
+ "proc-macro-crate 3.1.0",
  "proc-macro2",
  "quote",
  "regex",
@@ -6766,9 +6706,9 @@ dependencies = [
 
 [[package]]
 name = "zbus_names"
-version = "2.6.0"
+version = "3.0.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "fb80bb776dbda6e23d705cf0123c3b95df99c4ebeaec6c2599d4a5419902b4a9"
+checksum = "4b9b1fef7d021261cc16cba64c351d291b715febe0fa10dc3a443ac5a5022e6c"
 dependencies = [
  "serde",
  "static_assertions",
@@ -6777,22 +6717,22 @@ dependencies = [
 
 [[package]]
 name = "zerocopy"
-version = "0.7.31"
+version = "0.7.32"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1c4061bedbb353041c12f413700357bec76df2c7e2ca8e4df8bac24c6bf68e3d"
+checksum = "74d4d3961e53fa4c9a25a8637fc2bfaf2595b3d3ae34875568a5cf64787716be"
 dependencies = [
  "zerocopy-derive",
 ]
 
 [[package]]
 name = "zerocopy-derive"
-version = "0.7.31"
+version = "0.7.32"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b3c129550b3e6de3fd0ba67ba5c81818f9805e58b8d7fee80a3a59d2c9fc601a"
+checksum = "9ce1b18ccd8e73a9321186f97e46f9f04b778851177567b1975109d26a08d2a6"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.41",
+ "syn 2.0.58",
 ]
 
 [[package]]
@@ -6812,10 +6752,16 @@ checksum = "ce36e65b0d2999d2aafac989fb249189a141aee1f53c612c1f37d72631959f69"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.41",
+ "syn 2.0.58",
 ]
 
 [[package]]
+name = "zune-core"
+version = "0.4.12"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "3f423a2c17029964870cfaabb1f13dfab7d092a62a29a89264f4d36990ca414a"
+
+[[package]]
 name = "zune-inflate"
 version = "0.2.54"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -6825,14 +6771,22 @@ dependencies = [
 ]
 
 [[package]]
+name = "zune-jpeg"
+version = "0.4.11"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "ec866b44a2a1fd6133d363f073ca1b179f438f99e7e5bfb1e33f7181facfe448"
+dependencies = [
+ "zune-core",
+]
+
+[[package]]
 name = "zvariant"
-version = "3.15.0"
+version = "4.0.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "44b291bee0d960c53170780af148dca5fa260a63cdd24f1962fa82e03e53338c"
+checksum = "2c1b3ca6db667bfada0f1ebfc94b2b1759ba25472ee5373d4551bb892616389a"
 dependencies = [
- "byteorder",
+ "endi",
  "enumflags2",
- "libc",
  "serde",
  "static_assertions",
  "url",
@@ -6841,11 +6795,11 @@ dependencies = [
 
 [[package]]
 name = "zvariant_derive"
-version = "3.15.0"
+version = "4.0.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "934d7a7dfc310d6ee06c87ffe88ef4eca7d3e37bb251dece2ef93da8f17d8ecd"
+checksum = "b7a4b236063316163b69039f77ce3117accb41a09567fd24c168e43491e521bc"
 dependencies = [
- "proc-macro-crate 1.3.1",
+ "proc-macro-crate 3.1.0",
  "proc-macro2",
  "quote",
  "syn 1.0.109",
@@ -6854,9 +6808,9 @@ dependencies = [
 
 [[package]]
 name = "zvariant_utils"
-version = "1.0.1"
+version = "1.1.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7234f0d811589db492d16893e3f21e8e2fd282e6d01b0cddee310322062cc200"
+checksum = "00bedb16a193cc12451873fee2a1bc6550225acece0e36f333e68326c73c8172"
 dependencies = [
  "proc-macro2",
  "quote",
diff --git a/pkgs/applications/networking/instant-messengers/fractal/default.nix b/pkgs/applications/networking/instant-messengers/fractal/default.nix
index 0ff8eadbf548..cdbddfe9959a 100644
--- a/pkgs/applications/networking/instant-messengers/fractal/default.nix
+++ b/pkgs/applications/networking/instant-messengers/fractal/default.nix
@@ -25,20 +25,23 @@
 
 stdenv.mkDerivation rec {
   pname = "fractal";
-  version = "6";
+  version = "7";
 
   src = fetchFromGitLab {
     domain = "gitlab.gnome.org";
-    owner = "GNOME";
+    owner = "World";
     repo = "fractal";
-    rev = version;
-    hash = "sha256-J4Jb7G5Rfou3N7mytetIdLl0dGY5dSvTjnu8aj4kWXQ=";
+    rev = "refs/tags/${version}";
+    hash = "sha256-IfcThpsGATMD3Uj9tvw/aK7IVbiVT8sdZ088gRUqnlg=";
   };
 
   cargoDeps = rustPlatform.importCargoLock {
     lockFile = ./Cargo.lock;
     outputHashes = {
-      "matrix-sdk-0.6.2" = "sha256-CY0Ylrd3NkP1IevyQa351IS/+evG2GgrjPnR/ZDFR9Q=";
+      "mas-http-0.8.0" = "sha256-IiYxF9qT/J/n8t/cVT/DRV3gl2MTA6/YfjshVIic/n4=";
+      "matrix-sdk-0.7.1" = "sha256-quwt9Dx0K6LDMwHBipc52Ek59zz5mlTAdOj+RXZBU3Q=";
+      "ruma-0.9.4" = "sha256-tp0EFS39UTXZJQPUDjeQixb8wzsMCzyFggVj6M8TRYg=";
+      "vodozemac-0.5.1" = "sha256-Hm0C696RmNX6n1Jx+hqkKMjpdbArliuzdiS4wCv3OIM=";
     };
   };
 
diff --git a/pkgs/applications/networking/instant-messengers/franz/default.nix b/pkgs/applications/networking/instant-messengers/franz/default.nix
index a910105fde80..ec9f0d369195 100644
--- a/pkgs/applications/networking/instant-messengers/franz/default.nix
+++ b/pkgs/applications/networking/instant-messengers/franz/default.nix
@@ -3,10 +3,10 @@
 mkFranzDerivation rec {
   pname = "franz";
   name = "Franz";
-  version = "5.9.2";
+  version = "5.10.0";
   src = fetchurl {
     url = "https://github.com/meetfranz/franz/releases/download/v${version}/franz_${version}_amd64.deb";
-    sha256 = "sha256-W/60g5CbSUZcNASjdbiS7DNv9375GiesEG60QLLAh1g=";
+    sha256 = "sha256-zQhZlxr7kyMWx6txDnV+ECBTzVEwnUaBsLWKJy3XYFg=";
   };
   meta = with lib; {
     description = "A free messaging app that combines chat & messaging services into one application";
diff --git a/pkgs/applications/networking/instant-messengers/franz/generic.nix b/pkgs/applications/networking/instant-messengers/franz/generic.nix
index 533c5c7310b3..dcbb29e61afc 100644
--- a/pkgs/applications/networking/instant-messengers/franz/generic.nix
+++ b/pkgs/applications/networking/instant-messengers/franz/generic.nix
@@ -1,7 +1,7 @@
 { stdenv
 , lib
 , makeWrapper
-, wrapGAppsHook
+, wrapGAppsHook3
 , autoPatchelfHook
 , dpkg
 , xorg
@@ -38,7 +38,7 @@ in stdenv.mkDerivation (rec {
   # Don't remove runtime deps.
   dontPatchELF = true;
 
-  nativeBuildInputs = [ autoPatchelfHook makeWrapper wrapGAppsHook dpkg ];
+  nativeBuildInputs = [ autoPatchelfHook makeWrapper wrapGAppsHook3 dpkg ];
   buildInputs = extraBuildInputs ++ (with xorg; [
     libXi
     libXcursor
diff --git a/pkgs/applications/networking/instant-messengers/gajim/default.nix b/pkgs/applications/networking/instant-messengers/gajim/default.nix
index 458577b8d053..765e03425aaf 100644
--- a/pkgs/applications/networking/instant-messengers/gajim/default.nix
+++ b/pkgs/applications/networking/instant-messengers/gajim/default.nix
@@ -1,4 +1,4 @@
-{ lib, fetchurl, fetchFromGitLab, gettext, wrapGAppsHook
+{ lib, fetchurl, fetchFromGitLab, gettext, wrapGAppsHook3
 
 # Native dependencies
 , python3, gtk3, gobject-introspection, gnome
@@ -41,7 +41,7 @@ python3.pkgs.buildPythonApplication rec {
     ++ lib.optional enableAppIndicator libappindicator-gtk3;
 
   nativeBuildInputs = [
-    gettext wrapGAppsHook gobject-introspection
+    gettext wrapGAppsHook3 gobject-introspection
   ];
 
   dontWrapGApps = true;
@@ -77,7 +77,7 @@ python3.pkgs.buildPythonApplication rec {
   # test are broken in 1.7.3, 1.8.0
   doCheck = false;
 
-  # necessary for wrapGAppsHook
+  # necessary for wrapGAppsHook3
   strictDeps = false;
 
   meta = {
diff --git a/pkgs/applications/networking/instant-messengers/jami/config/pjsip_args_common b/pkgs/applications/networking/instant-messengers/jami/config/pjsip_args_common
deleted file mode 100644
index 5c3f607e5c0e..000000000000
--- a/pkgs/applications/networking/instant-messengers/jami/config/pjsip_args_common
+++ /dev/null
@@ -1,19 +0,0 @@
---disable-sound
---enable-video
---enable-ext-sound
---disable-speex-aec
---disable-g711-codec
---disable-l16-codec
---disable-gsm-codec
---disable-g722-codec
---disable-g7221-codec
---disable-speex-codec
---disable-ilbc-codec
---disable-opencore-amr
---disable-silk
---disable-sdl
---disable-ffmpeg
---disable-v4l2
---disable-openh264
---disable-resample
---disable-libwebrtc
diff --git a/pkgs/applications/networking/instant-messengers/jami/config/pjsip_args_linux b/pkgs/applications/networking/instant-messengers/jami/config/pjsip_args_linux
deleted file mode 100644
index d1292afe3a29..000000000000
--- a/pkgs/applications/networking/instant-messengers/jami/config/pjsip_args_linux
+++ /dev/null
@@ -1 +0,0 @@
---enable-epoll
diff --git a/pkgs/applications/networking/instant-messengers/jami/config/pjsip_patches b/pkgs/applications/networking/instant-messengers/jami/config/pjsip_patches
deleted file mode 100644
index 5b9579f8f94e..000000000000
--- a/pkgs/applications/networking/instant-messengers/jami/config/pjsip_patches
+++ /dev/null
@@ -1 +0,0 @@
-0009-add-config-site.patch
diff --git a/pkgs/applications/networking/instant-messengers/jami/default.nix b/pkgs/applications/networking/instant-messengers/jami/default.nix
index 98b4b69e6929..6a6925d66627 100644
--- a/pkgs/applications/networking/instant-messengers/jami/default.nix
+++ b/pkgs/applications/networking/instant-messengers/jami/default.nix
@@ -35,6 +35,7 @@
 
   # for client
 , cmake
+, git
 , networkmanager # for libnm
 , python3
 , qttools # for translations
@@ -50,7 +51,7 @@
 , qtsvg
 , qtwebengine
 , qtwebchannel
-, wrapGAppsHook
+, wrapGAppsHook3
 , withWebengine ? true
 
   # for pjsip
@@ -61,57 +62,80 @@
 , opendht
 }:
 
-let
-  readLinesToList = with builtins; file: filter (s: isString s && stringLength s > 0) (split "\n" (readFile file));
-in
 stdenv.mkDerivation rec {
   pname = "jami";
-  version = "20231201.0";
+  version = "20240430.0";
 
   src = fetchFromGitLab {
     domain = "git.jami.net";
     owner = "savoirfairelinux";
     repo = "jami-client-qt";
     rev = "stable/${version}";
-    hash = "sha256-A38JwjqdQVy03d738p2tpTFA6EWRSPNiesS5wZfti7Y=";
+    hash = "sha256-v7558m2h3RqvLLhf3BdYO9LKCFKuMTtPIXgH6OXiiY4=";
     fetchSubmodules = true;
   };
 
-  pjsip-jami = pjsip.overrideAttrs (old:
-    let
-      patch-src = src + "/daemon/contrib/src/pjproject/";
-    in
-    rec {
-      version = "311bd018fc07aaf62d4c2d2494e08b5ee97e6846";
+  pjsip-jami = pjsip.overrideAttrs (old: rec {
+    version = "797f1a38cc1066acc4adc9561aa1288afabe72d5";
 
-      src = fetchFromGitHub {
-        owner = "savoirfairelinux";
-        repo = "pjproject";
-        rev = version;
-        hash = "sha256-pZiOSOUxAXzMY4c1/AyKcwa7nyIJC/ZVOqDg9/QO/Nk=";
-      };
+    src = fetchFromGitHub {
+      owner = "savoirfairelinux";
+      repo = "pjproject";
+      rev = version;
+      hash = "sha256-lTDbJF09R2G+EIkMj1YyKa4XokH9LlcIG+RhRJhzUes=";
+    };
 
-      patches = (map (x: patch-src + x) (readLinesToList ./config/pjsip_patches));
+    configureFlags = [
+      "--disable-sound"
+      "--enable-video"
+      "--enable-ext-sound"
+      "--disable-speex-aec"
+      "--disable-g711-codec"
+      "--disable-l16-codec"
+      "--disable-gsm-codec"
+      "--disable-g722-codec"
+      "--disable-g7221-codec"
+      "--disable-speex-codec"
+      "--disable-ilbc-codec"
+      "--disable-opencore-amr"
+      "--disable-silk"
+      "--disable-sdl"
+      "--disable-ffmpeg"
+      "--disable-v4l2"
+      "--disable-openh264"
+      "--disable-resample"
+      "--disable-libwebrtc"
+      "--with-gnutls=yes"
+    ]
+    ++ lib.optionals stdenv.isLinux [
+      "--enable-epoll"
+    ];
 
-      configureFlags = (readLinesToList ./config/pjsip_args_common)
-        ++ lib.optionals stdenv.isLinux (readLinesToList ./config/pjsip_args_linux);
-    });
+    buildInputs = old.buildInputs ++ [ gnutls ];
+  });
 
-  opendht-jami = opendht.override {
+  opendht-jami = (opendht.overrideAttrs {
+    src = fetchFromGitHub {
+      owner = "savoirfairelinux";
+      repo = "opendht";
+      rev = "f2cee8e9ce24746caa7dee1847829c526d340284";
+      hash = "sha256-ZnIrlybF3MCiXxxv80tRzCJ5CJ54S42prGUjq1suJNA=";
+    };
+  }).override {
     enableProxyServerAndClient = true;
     enablePushNotifications = true;
   };
 
   dhtnet = stdenv.mkDerivation {
     pname = "dhtnet";
-    version = "unstable-2023-11-23";
+    version = "unstable-2022-04-26";
 
     src = fetchFromGitLab {
       domain = "git.jami.net";
       owner = "savoirfairelinux";
       repo = "dhtnet";
-      rev = "b1bcdecbac2a41de3941ef5a34faa6fbe4472535";
-      hash = "sha256-EucSsUuHXbVqr7drrTLK0f+WZT2k9Tx/LV+IBldTQO8=";
+      rev = "d7976982d24867c6faaf8103504ec8a10d932fa0";
+      hash = "sha256-vazFDMIu/3AWeOz0LZhZD9NFO8cd5AK41zBpqpQrqnc=";
     };
 
     nativeBuildInputs = [
@@ -130,6 +154,7 @@ stdenv.mkDerivation rec {
       opendht-jami
       openssl
       pjsip-jami
+      python3
       restinio
     ];
 
@@ -193,6 +218,20 @@ stdenv.mkDerivation rec {
     enableParallelBuilding = true;
   };
 
+  qwindowkit = fetchFromGitHub {
+    owner = "stdware";
+    repo = "qwindowkit";
+    rev = "79b1f3110754f9c21af2d7dacbd07b1a9dbaf6ef";
+    hash = "sha256-iZfmv3ADVjHf47HPK/FdrfeAzrXbxbjH3H5MFVg/ZWE=";
+    fetchSubmodules = true;
+  };
+
+  postPatch = ''
+    sed -i -e '/GIT_REPOSITORY/,+1c SOURCE_DIR ''${CMAKE_CURRENT_SOURCE_DIR}/qwindowkit' extras/build/cmake/contrib_tools.cmake
+    sed -i -e 's/if(DISTRO_NEEDS_QMSETUP_PATCH)/if(TRUE)/' CMakeLists.txt
+    cp -R --no-preserve=mode,ownership ${qwindowkit} qwindowkit
+  '';
+
   preConfigure = ''
     echo 'const char VERSION_STRING[] = "${version}";' > src/app/version.h
     # Currently the daemon is still built seperately but jami expects it in CMAKE_INSTALL_PREFIX
@@ -204,10 +243,11 @@ stdenv.mkDerivation rec {
   dontWrapGApps = true;
 
   nativeBuildInputs = [
-    wrapGAppsHook
+    wrapGAppsHook3
     wrapQtAppsHook
     pkg-config
     cmake
+    git
     python3
     qttools
   ];
diff --git a/pkgs/applications/networking/instant-messengers/jitsi-meet-electron/default.nix b/pkgs/applications/networking/instant-messengers/jitsi-meet-electron/default.nix
index 83a3b78e1d4b..a0968f83ddee 100644
--- a/pkgs/applications/networking/instant-messengers/jitsi-meet-electron/default.nix
+++ b/pkgs/applications/networking/instant-messengers/jitsi-meet-electron/default.nix
@@ -43,11 +43,6 @@ buildNpmPackage rec {
 
   env.ELECTRON_SKIP_BINARY_DOWNLOAD = 1;
 
-  postPatch = ''
-    substituteInPlace main.js \
-        --replace "require('electron-is-dev')" "false"
-  '';
-
   preBuild = ''
     # remove some prebuilt binaries
     find node_modules -type d -name prebuilds -exec rm -r {} +
@@ -72,6 +67,7 @@ buildNpmPackage rec {
     makeWrapper ${lib.getExe electron} $out/bin/jitsi-meet-electron \
         --add-flags $out/share/jitsi-meet-electron/resources/app.asar \
         --add-flags "\''${NIXOS_OZONE_WL:+\''${WAYLAND_DISPLAY:+--ozone-platform-hint=auto --enable-features=WaylandWindowDecorations}}" \
+        --set-default ELECTRON_IS_DEV 0 \
         --inherit-argv0
 
     install -Dm644 resources/icons/512x512.png $out/share/icons/hicolor/512x512/apps/jitsi-meet-electron.png
diff --git a/pkgs/applications/networking/instant-messengers/mattermost-desktop/default.nix b/pkgs/applications/networking/instant-messengers/mattermost-desktop/default.nix
index ac9d1b136934..20dc2bfafb80 100644
--- a/pkgs/applications/networking/instant-messengers/mattermost-desktop/default.nix
+++ b/pkgs/applications/networking/instant-messengers/mattermost-desktop/default.nix
@@ -53,7 +53,9 @@ stdenv.mkDerivation {
       --replace /share/mattermost-desktop/mattermost-desktop /bin/mattermost-desktop
 
     makeWrapper '${lib.getExe electron_28}' $out/bin/${pname} \
-      --add-flags $out/share/${pname}/app.asar
+      --set-default ELECTRON_IS_DEV 0 \
+      --add-flags $out/share/${pname}/app.asar \
+      --add-flags "\''${NIXOS_OZONE_WL:+\''${WAYLAND_DISPLAY:+--ozone-platform-hint=auto --enable-features=WaylandWindowDecorations}}"
 
     runHook postInstall
   '';
diff --git a/pkgs/applications/networking/instant-messengers/mikutter/default.nix b/pkgs/applications/networking/instant-messengers/mikutter/default.nix
index b34ed84d044d..3938d03447f8 100644
--- a/pkgs/applications/networking/instant-messengers/mikutter/default.nix
+++ b/pkgs/applications/networking/instant-messengers/mikutter/default.nix
@@ -12,7 +12,7 @@
 , libnotify
 , makeDesktopItem
 , which
-, wrapGAppsHook
+, wrapGAppsHook3
 , writeText
 }:
 
@@ -78,7 +78,7 @@ with mikutterPaths; stdenv.mkDerivation rec {
     sha256 = "05253nz4i1lmnq6czj48qdab2ny4vx2mznj6nsn2l1m2z6zqkwk3";
   };
 
-  nativeBuildInputs = [ copyDesktopItems wrapGAppsHook gobject-introspection ]
+  nativeBuildInputs = [ copyDesktopItems wrapGAppsHook3 gobject-introspection ]
     ++ lib.optionals stdenv.isDarwin [ libicns ];
   buildInputs = [
     atk
diff --git a/pkgs/applications/networking/instant-messengers/pidgin/default.nix b/pkgs/applications/networking/instant-messengers/pidgin/default.nix
index 211c5b49bf9a..9300a73b175d 100644
--- a/pkgs/applications/networking/instant-messengers/pidgin/default.nix
+++ b/pkgs/applications/networking/instant-messengers/pidgin/default.nix
@@ -107,7 +107,8 @@ let
     ]
     ++ lib.optionals withCyrus_sasl [ "--enable-cyrus-sasl=yes" ]
     ++ lib.optionals withGnutls [ "--enable-gnutls=yes" "--enable-nss=no" ]
-    ++ lib.optionals stdenv.isDarwin [ "--disable-gtkspell" "--disable-vv" ];
+    ++ lib.optionals stdenv.isDarwin [ "--disable-gtkspell" "--disable-vv" ]
+    ++ lib.optionals stdenv.cc.isClang [ "CFLAGS=-Wno-error=int-conversion" ];
 
     enableParallelBuilding = true;
 
@@ -138,6 +139,7 @@ let
 
     meta = {
       description = "Multi-protocol instant messaging client";
+      mainProgram = "pidgin";
       homepage = "https://pidgin.im/";
       license = lib.licenses.gpl2Plus;
       platforms = lib.platforms.unix;
diff --git a/pkgs/applications/networking/instant-messengers/qq/default.nix b/pkgs/applications/networking/instant-messengers/qq/default.nix
index eea656250b93..af5bdcc15f48 100644
--- a/pkgs/applications/networking/instant-messengers/qq/default.nix
+++ b/pkgs/applications/networking/instant-messengers/qq/default.nix
@@ -20,7 +20,7 @@
 , at-spi2-core
 , autoPatchelfHook
 , makeShellWrapper
-, wrapGAppsHook
+, wrapGAppsHook3
 , commandLineArgs ? ""
 }:
 
@@ -46,7 +46,7 @@ stdenv.mkDerivation {
   nativeBuildInputs = [
     autoPatchelfHook
     makeShellWrapper
-    wrapGAppsHook
+    wrapGAppsHook3
     dpkg
   ];
 
diff --git a/pkgs/applications/networking/instant-messengers/rambox/default.nix b/pkgs/applications/networking/instant-messengers/rambox/default.nix
index af5f6ca321c0..f66da460afdb 100644
--- a/pkgs/applications/networking/instant-messengers/rambox/default.nix
+++ b/pkgs/applications/networking/instant-messengers/rambox/default.nix
@@ -2,11 +2,11 @@
 
 let
   pname = "rambox";
-  version = "2.3.1";
+  version = "2.3.2";
 
   src = fetchurl {
     url = "https://github.com/ramboxapp/download/releases/download/v${version}/Rambox-${version}-linux-x64.AppImage";
-    hash = "sha256-fSj/AX1uCUAC3Vg5+rtGF3IDPFTHRAgJ8CPVL8BYc+E=";
+    hash = "sha256-9AGzhj4UL2rEe67qvkX5VYhQEMETGYSDWv5XOgABSEE=";
   };
 
   desktopItem = (makeDesktopItem {
@@ -30,7 +30,7 @@ appimageTools.wrapType2 {
     install -Dm644 ${desktopItem}/share/applications/* $out/share/applications
   '';
 
-  extraPkgs = pkgs: with pkgs; [ procps ];
+  extraPkgs = pkgs: [ pkgs.procps ];
 
   meta = with lib; {
     description = "Workspace Simplifier - a cross-platform application organizing web services into Workspaces similar to browser profiles";
diff --git a/pkgs/applications/networking/instant-messengers/rocketchat-desktop/default.nix b/pkgs/applications/networking/instant-messengers/rocketchat-desktop/default.nix
index 737e867bf5a6..4d7c987a213b 100644
--- a/pkgs/applications/networking/instant-messengers/rocketchat-desktop/default.nix
+++ b/pkgs/applications/networking/instant-messengers/rocketchat-desktop/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, pkgs, fetchurl, wrapGAppsHook }:
+{ lib, stdenv, pkgs, fetchurl, wrapGAppsHook3 }:
 let
   libPathNative = { packages }: lib.makeLibraryPath packages;
 in
@@ -12,7 +12,7 @@ stdenv.mkDerivation rec {
   };
 
   nativeBuildInputs = [
-    wrapGAppsHook #to fully work with gnome also needs programs.dconf.enable = true in your configuration.nix
+    wrapGAppsHook3 #to fully work with gnome also needs programs.dconf.enable = true in your configuration.nix
   ];
 
   buildInputs = with pkgs; [
diff --git a/pkgs/applications/networking/instant-messengers/signal-desktop/default.nix b/pkgs/applications/networking/instant-messengers/signal-desktop/default.nix
index 364843e7bfa8..57185f5e42e5 100644
--- a/pkgs/applications/networking/instant-messengers/signal-desktop/default.nix
+++ b/pkgs/applications/networking/instant-messengers/signal-desktop/default.nix
@@ -1,6 +1,13 @@
-{ hostPlatform, callPackage }: {
-  signal-desktop = if hostPlatform.system == "aarch64-linux"
-    then callPackage ./signal-desktop-aarch64.nix { }
-    else callPackage ./signal-desktop.nix { };
-  signal-desktop-beta = callPackage ./signal-desktop-beta.nix{ };
+{ hostPlatform, callPackage }:
+{
+  signal-desktop =
+    if hostPlatform.system == "aarch64-linux" then
+      callPackage ./signal-desktop-aarch64.nix { }
+    else
+      callPackage ./signal-desktop.nix { };
+  signal-desktop-beta = (callPackage ./signal-desktop-beta.nix { }).overrideAttrs (old: {
+    meta = old.meta // {
+      platforms = [ "x86_64-linux" ];
+    };
+  });
 }
diff --git a/pkgs/applications/networking/instant-messengers/signal-desktop/generic.nix b/pkgs/applications/networking/instant-messengers/signal-desktop/generic.nix
index e8518c310a7c..2c73686e7683 100644
--- a/pkgs/applications/networking/instant-messengers/signal-desktop/generic.nix
+++ b/pkgs/applications/networking/instant-messengers/signal-desktop/generic.nix
@@ -3,7 +3,7 @@
 , fetchurl
 , autoPatchelfHook
 , dpkg
-, wrapGAppsHook
+, wrapGAppsHook3
 , makeWrapper
 , nixosTests
 , gtk3
@@ -57,7 +57,8 @@
 let
   inherit (stdenv) targetPlatform;
   ARCH = if targetPlatform.isAarch64 then "arm64" else "x64";
-in stdenv.mkDerivation rec {
+in
+stdenv.mkDerivation rec {
   inherit pname version;
 
   # Please backport all updates to the stable channel.
@@ -75,7 +76,7 @@ in stdenv.mkDerivation rec {
   nativeBuildInputs = [
     autoPatchelfHook
     dpkg
-    (wrapGAppsHook.override { inherit makeWrapper; })
+    (wrapGAppsHook3.override { inherit makeWrapper; })
   ];
 
   buildInputs = [
@@ -155,10 +156,10 @@ in stdenv.mkDerivation rec {
       --suffix PATH : ${lib.makeBinPath [ xdg-utils ]}
     )
 
-    # Fix the desktop link and fix showing application icon in tray
+    # Fix the desktop link
     substituteInPlace $out/share/applications/${pname}.desktop \
       --replace "/opt/${dir}/${pname}" $out/bin/${pname} \
-      ${if pname == "signal-desktop" then "--replace \"bin/signal-desktop\" \"bin/signal-desktop --use-tray-icon\"" else ""}
+      --replace-fail "StartupWMClass=Signal" "StartupWMClass=signal"
 
     # Note: The following path contains bundled libraries:
     # $out/lib/${dir}/resources/app.asar.unpacked/node_modules/
diff --git a/pkgs/applications/networking/instant-messengers/signal-desktop/signal-desktop-beta.nix b/pkgs/applications/networking/instant-messengers/signal-desktop/signal-desktop-beta.nix
index a87d49de7621..5cee70d96776 100644
--- a/pkgs/applications/networking/instant-messengers/signal-desktop/signal-desktop-beta.nix
+++ b/pkgs/applications/networking/instant-messengers/signal-desktop/signal-desktop-beta.nix
@@ -2,7 +2,7 @@
 callPackage ./generic.nix { } rec {
   pname = "signal-desktop-beta";
   dir = "Signal Beta";
-  version = "7.7.0-beta.1";
+  version = "7.10.0-beta.1";
   url = "https://updates.signal.org/desktop/apt/pool/s/signal-desktop-beta/signal-desktop-beta_${version}_amd64.deb";
-  hash = "sha256-oswS1aRkpiTNSpQ6CqfJnoM412RRwraeht4iqq8L1Bk=";
+  hash = "sha256-8S7O5v514OjUgXRuYvqOf83377RefZrFrQD2MbLm0QA=";
 }
diff --git a/pkgs/applications/networking/instant-messengers/signal-desktop/signal-desktop.nix b/pkgs/applications/networking/instant-messengers/signal-desktop/signal-desktop.nix
index 0b1f3b034cce..e8d130708705 100644
--- a/pkgs/applications/networking/instant-messengers/signal-desktop/signal-desktop.nix
+++ b/pkgs/applications/networking/instant-messengers/signal-desktop/signal-desktop.nix
@@ -2,7 +2,7 @@
 callPackage ./generic.nix { } rec {
   pname = "signal-desktop";
   dir = "Signal";
-  version = "7.6.0";
+  version = "7.8.0";
   url = "https://updates.signal.org/desktop/apt/pool/s/signal-desktop/signal-desktop_${version}_amd64.deb";
-  hash = "sha256-sGOWsFZTO9VQDkCqhsOkW5aY+sh0fLH7kPPe/bAzGvg=";
+  hash = "sha256-gBcfe3lU2pmRHSXNNXBFU7Qv83Bf6OPv5LM/HxeLkjM=";
 }
diff --git a/pkgs/applications/networking/instant-messengers/signalbackup-tools/default.nix b/pkgs/applications/networking/instant-messengers/signalbackup-tools/default.nix
index d25f4698f864..d2c6e57ed8fb 100644
--- a/pkgs/applications/networking/instant-messengers/signalbackup-tools/default.nix
+++ b/pkgs/applications/networking/instant-messengers/signalbackup-tools/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "signalbackup-tools";
-  version = "20240425-1";
+  version = "20240509-1";
 
   src = fetchFromGitHub {
     owner = "bepaald";
     repo = pname;
     rev = version;
-    hash = "sha256-CulgcWcAX/42jB3kCmxLAFioyNtMJV80dW3ofp7Yw6o=";
+    hash = "sha256-GUh/OTeJNBg3TDij/8jIEXfw9ox1wvq6tRq61JbMiZg=";
   };
 
   postPatch = ''
diff --git a/pkgs/applications/networking/instant-messengers/skypeforlinux/default.nix b/pkgs/applications/networking/instant-messengers/skypeforlinux/default.nix
index 50db157ccac1..99ff0b412e2c 100644
--- a/pkgs/applications/networking/instant-messengers/skypeforlinux/default.nix
+++ b/pkgs/applications/networking/instant-messengers/skypeforlinux/default.nix
@@ -1,6 +1,6 @@
 { lib, stdenv, fetchurl, dpkg
 , alsa-lib, atk, cairo, cups, curl, dbus, expat, fontconfig, freetype, gdk-pixbuf, glib, glibc, gnome
-, gtk3, libappindicator-gtk3, libnotify, libpulseaudio, libsecret, libv4l, nspr, nss, pango, systemd, wrapGAppsHook, xorg
+, gtk3, libappindicator-gtk3, libnotify, libpulseaudio, libsecret, libv4l, nspr, nss, pango, systemd, wrapGAppsHook3, xorg
 , at-spi2-atk, libuuid, at-spi2-core, libdrm, mesa, libxkbcommon, libxshmfence }:
 
 let
@@ -82,7 +82,7 @@ in stdenv.mkDerivation {
   inherit src;
 
   nativeBuildInputs = [
-    wrapGAppsHook
+    wrapGAppsHook3
     glib # For setup hook populating GSETTINGS_SCHEMA_PATH
   ];
 
diff --git a/pkgs/applications/networking/instant-messengers/slack/default.nix b/pkgs/applications/networking/instant-messengers/slack/default.nix
index 82494a442f93..b6374a5706df 100644
--- a/pkgs/applications/networking/instant-messengers/slack/default.nix
+++ b/pkgs/applications/networking/instant-messengers/slack/default.nix
@@ -45,14 +45,14 @@ let
 
   pname = "slack";
 
-  x86_64-darwin-version = "4.37.101";
-  x86_64-darwin-sha256 = "03k4iv6y7y1z9ac7if35r3lk7kp7ic4aa4rdyzbrzihvpfb3nvdh";
+  x86_64-darwin-version = "4.38.121";
+  x86_64-darwin-sha256 = "1w0s6j8z8961sv4y00jxpy5gjlj0dswyxs15c7isb26ii11nn1i2";
 
-  x86_64-linux-version = "4.37.101";
-  x86_64-linux-sha256 = "0vmaam0aiqcqmm8n3zrjmf012d6pdi0g1d08v1zhgx2rhl614ff9";
+  x86_64-linux-version = "4.38.121";
+  x86_64-linux-sha256 = "0qp7wxmdg2lpvbx7gshgbqxf7jjvgnwx20cfjwgw6wwzanb0gi96";
 
-  aarch64-darwin-version = "4.37.101";
-  aarch64-darwin-sha256 = "07qfqrq32sh5cw7vmq2x0s5zvkvcl7j1kkvdncg36fay9276f2pp";
+  aarch64-darwin-version = "4.38.121";
+  aarch64-darwin-sha256 = "161z947p7a2d7584hybl77chab8y027cqpph2hd2s4b5k6bchkj5";
 
   version = {
     x86_64-darwin = x86_64-darwin-version;
diff --git a/pkgs/applications/networking/instant-messengers/telegram/telegram-desktop/default.nix b/pkgs/applications/networking/instant-messengers/telegram/telegram-desktop/default.nix
index 906736be4977..0d46fea51351 100644
--- a/pkgs/applications/networking/instant-messengers/telegram/telegram-desktop/default.nix
+++ b/pkgs/applications/networking/instant-messengers/telegram/telegram-desktop/default.nix
@@ -7,7 +7,7 @@
 , ninja
 , python3
 , gobject-introspection
-, wrapGAppsHook
+, wrapGAppsHook3
 , wrapQtAppsHook
 , extra-cmake-modules
 , qtbase
@@ -63,14 +63,14 @@ let
 in
 stdenv.mkDerivation rec {
   pname = "telegram-desktop";
-  version = "4.16.8";
+  version = "5.0.1";
 
   src = fetchFromGitHub {
     owner = "telegramdesktop";
     repo = "tdesktop";
     rev = "v${version}";
     fetchSubmodules = true;
-    hash = "sha256-M8wFhuTTEJippgvS93LNRqREV2TGF04ccps5oOmSr+0=";
+    hash = "sha256-GKKlcNcFPXslyjE7u5t+VLOiEXY8RYjYvBNL+WjpeeY=";
   };
 
   patches = [
@@ -110,7 +110,7 @@ stdenv.mkDerivation rec {
     wrapQtAppsHook
   ] ++ lib.optionals stdenv.isLinux [
     gobject-introspection
-    wrapGAppsHook
+    wrapGAppsHook3
     extra-cmake-modules
   ] ++ lib.optionals stdenv.isDarwin [
     lld
diff --git a/pkgs/applications/networking/instant-messengers/twitch-tui/default.nix b/pkgs/applications/networking/instant-messengers/twitch-tui/default.nix
index 39589402b533..4092491d047d 100644
--- a/pkgs/applications/networking/instant-messengers/twitch-tui/default.nix
+++ b/pkgs/applications/networking/instant-messengers/twitch-tui/default.nix
@@ -11,16 +11,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "twitch-tui";
-  version = "2.6.7";
+  version = "2.6.8";
 
   src = fetchFromGitHub {
     owner = "Xithrius";
     repo = pname;
     rev = "refs/tags/v${version}";
-    hash = "sha256-sokOdM4Z2U/B23XEGONNHr2g9iuNz+Hm+on+7xMYD0E=";
+    hash = "sha256-tak9CPqDVGTfQAjNLhPPvYgP4lUV5g1vPziWbRtqOA0=";
   };
 
-  cargoHash = "sha256-ngivv/2NDmY8c6eInzfdS4GjZQHWU3iJEFI3S+tf34M=";
+  cargoHash = "sha256-SNSFUhm2zFew/oYCoRQXTGEhwmvgM8GX5afPRoltmV0=";
 
   nativeBuildInputs = [
     pkg-config
diff --git a/pkgs/applications/networking/instant-messengers/vk-messenger/default.nix b/pkgs/applications/networking/instant-messengers/vk-messenger/default.nix
index 0d320485fe74..50be0777ae4e 100644
--- a/pkgs/applications/networking/instant-messengers/vk-messenger/default.nix
+++ b/pkgs/applications/networking/instant-messengers/vk-messenger/default.nix
@@ -1,6 +1,6 @@
 { stdenv, lib, fetchurl, rpmextract, undmg, autoPatchelfHook
 , xorg, gtk3, nss, alsa-lib, udev, libnotify
-, wrapGAppsHook }:
+, wrapGAppsHook3 }:
 
 let
   pname = "vk-messenger";
@@ -33,7 +33,7 @@ let
   linux = stdenv.mkDerivation {
     inherit pname version src meta;
 
-    nativeBuildInputs = [ rpmextract autoPatchelfHook wrapGAppsHook ];
+    nativeBuildInputs = [ rpmextract autoPatchelfHook wrapGAppsHook3 ];
     buildInputs = (with xorg; [
       libXdamage libXtst libXScrnSaver libxkbfile
     ]) ++ [ gtk3 nss alsa-lib ];
diff --git a/pkgs/applications/networking/instant-messengers/whatsapp-for-linux/default.nix b/pkgs/applications/networking/instant-messengers/whatsapp-for-linux/default.nix
index efb0fc95f33c..7022cc282f66 100644
--- a/pkgs/applications/networking/instant-messengers/whatsapp-for-linux/default.nix
+++ b/pkgs/applications/networking/instant-messengers/whatsapp-for-linux/default.nix
@@ -21,7 +21,7 @@
 , pcre2
 , pkg-config
 , webkitgtk
-, wrapGAppsHook
+, wrapGAppsHook3
 , xorg
 }:
 
@@ -39,7 +39,7 @@ stdenv.mkDerivation (finalAttrs: {
   nativeBuildInputs = [
     cmake
     pkg-config
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
diff --git a/pkgs/applications/networking/instant-messengers/wire-desktop/default.nix b/pkgs/applications/networking/instant-messengers/wire-desktop/default.nix
index 4109c5f04cf2..0dcacc526d10 100644
--- a/pkgs/applications/networking/instant-messengers/wire-desktop/default.nix
+++ b/pkgs/applications/networking/instant-messengers/wire-desktop/default.nix
@@ -6,7 +6,7 @@
 , stdenv
 , lib
 , udev
-, wrapGAppsHook
+, wrapGAppsHook3
 , cpio
 , xar
 , libdbusmenu
@@ -98,7 +98,7 @@ let
       autoPatchelfHook
       dpkg
       makeWrapper
-      wrapGAppsHook
+      wrapGAppsHook3
     ];
 
     buildInputs = [
diff --git a/pkgs/applications/networking/ipfs-cluster/default.nix b/pkgs/applications/networking/ipfs-cluster/default.nix
index 19a1b38eed42..4c623c869126 100644
--- a/pkgs/applications/networking/ipfs-cluster/default.nix
+++ b/pkgs/applications/networking/ipfs-cluster/default.nix
@@ -2,15 +2,15 @@
 
 buildGoModule rec {
   pname = "ipfs-cluster";
-  version = "1.0.8";
+  version = "1.1.0";
 
-  vendorHash = "sha256-uwDXUy9mh/DvLuwj8Htm55wla5/JjvZH5ztJbqnox+U=";
+  vendorHash = "sha256-U7zh0MmuDmKQWa4uyoFDctPUfq+52Im6t2TFyWIGXAs=";
 
   src = fetchFromGitHub {
     owner = "ipfs-cluster";
     repo = "ipfs-cluster";
     rev = "v${version}";
-    hash = "sha256-qZUoYJjw3Qac7Kmg5PfNWTDM8Ra3rqrbjScLbK6FRx4=";
+    hash = "sha256-z08LLJ/SI833wMpZJ25WDrc66Y4R5i2uGlE7Nc30Kk0=";
   };
 
   meta = with lib; {
diff --git a/pkgs/applications/networking/irc/catgirl/default.nix b/pkgs/applications/networking/irc/catgirl/default.nix
index c3e4fa1b7a8a..393313da4106 100644
--- a/pkgs/applications/networking/irc/catgirl/default.nix
+++ b/pkgs/applications/networking/irc/catgirl/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   pname = "catgirl";
-  version = "2.2";
+  version = "2.2a";
 
   src = fetchurl {
     url = "https://git.causal.agency/catgirl/snapshot/${pname}-${version}.tar.gz";
-    sha256 = "sha256-+20EoJkwOvBdJ4xwXBVC5+5hZDwDDWoLaN7FNxCAo8c=";
+    hash = "sha256-xtdgqu4TTgUlht73qRA1Q/coH95lMfvLQQhkcHlCl8I=";
   };
 
   # catgirl's configure script uses pkg-config --variable exec_prefix openssl
diff --git a/pkgs/applications/networking/irc/irccloud/default.nix b/pkgs/applications/networking/irc/irccloud/default.nix
index 47cd45bfdd5b..6823eaf01699 100644
--- a/pkgs/applications/networking/irc/irccloud/default.nix
+++ b/pkgs/applications/networking/irc/irccloud/default.nix
@@ -16,7 +16,7 @@ let
 in appimageTools.wrapType2 {
   inherit pname version src;
 
-  extraPkgs = pkgs: with pkgs; [ at-spi2-core ];
+  extraPkgs = pkgs: [ pkgs.at-spi2-core ];
 
   extraInstallCommands = ''
     install -m 444 -D ${appimageContents}/irccloud.desktop $out/share/applications/irccloud.desktop
diff --git a/pkgs/applications/networking/irc/ircdog/default.nix b/pkgs/applications/networking/irc/ircdog/default.nix
index 56c951798fe9..f08d6857799c 100644
--- a/pkgs/applications/networking/irc/ircdog/default.nix
+++ b/pkgs/applications/networking/irc/ircdog/default.nix
@@ -5,13 +5,13 @@
 
 buildGoModule rec {
   pname = "ircdog";
-  version = "0.5.2";
+  version = "0.5.3";
 
   src = fetchFromGitHub {
     owner = "goshuirc";
     repo = "ircdog";
     rev = "refs/tags/v${version}";
-    hash = "sha256-rV9IBa30v1T3Zw/av8nfmX9Bg20FPAGdJkMn17r8rYw=";
+    hash = "sha256-TdMgt1ZgoEaweH8Cbb+wG/H1Bx9DpgHgzGO5dZfxvK8=";
   };
 
   vendorHash = null;
diff --git a/pkgs/applications/networking/irc/srain/default.nix b/pkgs/applications/networking/irc/srain/default.nix
index 42fd7e1fb653..c083c1a8048a 100644
--- a/pkgs/applications/networking/irc/srain/default.nix
+++ b/pkgs/applications/networking/irc/srain/default.nix
@@ -4,7 +4,7 @@
 , pkg-config
 , gtk3
 , libconfig
-, libsoup
+, libsoup_3
 , libsecret
 , libayatana-appindicator
 , openssl
@@ -16,18 +16,18 @@
 , python3Packages
 , meson
 , ninja
-, wrapGAppsHook
+, wrapGAppsHook3
 }:
 
 stdenv.mkDerivation rec {
   pname = "srain";
-  version = "1.6.0";
+  version = "1.7.0";
 
   src = fetchFromGitHub {
     owner = "SrainApp";
     repo = "srain";
     rev = version;
-    hash = "sha256-IGAb24aDeBXyxuyb/EWUetQZJg28GJLT0WK7ZmmHgyg=";
+    hash = "sha256-mhnlHnF23+VZvSPNuTYYUVcA6Md4y2AGqEuJphY1/IY=";
   };
 
   nativeBuildInputs = [
@@ -36,7 +36,7 @@ stdenv.mkDerivation rec {
     pkg-config
     gettext
     appstream-glib
-    wrapGAppsHook
+    wrapGAppsHook3
     python3Packages.sphinx
   ];
 
@@ -46,7 +46,7 @@ stdenv.mkDerivation rec {
     glib-networking
     dbus-glib
     libconfig
-    libsoup
+    libsoup_3
     libsecret
     libayatana-appindicator
     openssl
diff --git a/pkgs/applications/networking/irc/weechat/scripts/autosort/default.nix b/pkgs/applications/networking/irc/weechat/scripts/autosort/default.nix
new file mode 100644
index 000000000000..26b44568ceaf
--- /dev/null
+++ b/pkgs/applications/networking/irc/weechat/scripts/autosort/default.nix
@@ -0,0 +1,29 @@
+{ lib, stdenv, fetchurl, weechat }:
+
+stdenv.mkDerivation {
+  pname = "weechat-autosort";
+  version = "3.10";
+
+  src = fetchurl {
+    url = "https://github.com/weechat/scripts/raw/13aef991ca879fc0ff116874a45b09bc2db10607/python/autosort.py";
+    hash = "sha256-xuZUssjGd0l7lCx96d0V8LL+0O3zIxYlWMoDsdzwMf4=";
+  };
+
+  dontUnpack = true;
+
+  installPhase = ''
+    mkdir -p $out/share
+    cp $src $out/share/autosort.py
+  '';
+
+  passthru = {
+    scripts = [ "autosort.py" ];
+  };
+
+  meta = with lib; {
+    inherit (weechat.meta) platforms;
+    description = "autosort automatically keeps your buffers sorted and grouped by server.";
+    license = licenses.gpl3Plus;
+    maintainers = with maintainers; [ flokli ];
+  };
+}
diff --git a/pkgs/applications/networking/irc/weechat/scripts/default.nix b/pkgs/applications/networking/irc/weechat/scripts/default.nix
index f84e2307acb1..1825ee3f5d7a 100644
--- a/pkgs/applications/networking/irc/weechat/scripts/default.nix
+++ b/pkgs/applications/networking/irc/weechat/scripts/default.nix
@@ -1,6 +1,8 @@
 { callPackage, luaPackages, perlPackages, python3Packages }:
 
 {
+  autosort = callPackage ./autosort { };
+
   colorize_nicks = callPackage ./colorize_nicks { };
 
   edit = callPackage ./edit { };
diff --git a/pkgs/applications/networking/iroh/default.nix b/pkgs/applications/networking/iroh/default.nix
index 934d8f5dcef1..b08291cc1ff3 100644
--- a/pkgs/applications/networking/iroh/default.nix
+++ b/pkgs/applications/networking/iroh/default.nix
@@ -7,16 +7,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "iroh";
-  version = "0.15.0";
+  version = "0.16.2";
 
   src = fetchFromGitHub {
     owner = "n0-computer";
     repo = pname;
     rev = "v${version}";
-    hash = "sha256-ho/wlg6W0/LcJrVHPRVQ6zNjpwqa0+PThUP/RGIXVTA=";
+    hash = "sha256-W3G6jwSaYeCx3KNAAl/z1UEOHFKHhmp+exlNbpHZuNM=";
   };
 
-  cargoHash = "sha256-1S6lFzoLxF6V94wXw/r5XDwbnt4/aaPOYdIIJA68Ya8=";
+  cargoHash = "sha256-AwTQjGRy2lCiJUhCWuyoXddEyLCQ2szbea/MJ/8SJQA=";
 
   buildInputs = lib.optionals stdenv.isDarwin (
     with darwin.apple_sdk.frameworks; [
diff --git a/pkgs/applications/networking/maestral-qt/default.nix b/pkgs/applications/networking/maestral-qt/default.nix
index 1394bff2c1c0..3c30bc4fd3f6 100644
--- a/pkgs/applications/networking/maestral-qt/default.nix
+++ b/pkgs/applications/networking/maestral-qt/default.nix
@@ -11,6 +11,8 @@
 python3.pkgs.buildPythonApplication rec {
   pname = "maestral-qt";
   version = "1.9.3";
+  pyproject = true;
+
   disabled = python3.pythonOlder "3.7";
 
   src = fetchFromGitHub {
@@ -20,9 +22,11 @@ python3.pkgs.buildPythonApplication rec {
     hash = "sha256-7Lt0Neobtofd1JDoz8BhGn+nFKaMLbM/6z0QQmtEKpA=";
   };
 
-  format = "pyproject";
+  build-system = with python3.pkgs; [
+    setuptools
+  ];
 
-  propagatedBuildInputs = with python3.pkgs; [
+  dependencies = with python3.pkgs; [
     click
     markdown2
     maestral
diff --git a/pkgs/applications/networking/mailreaders/astroid/default.nix b/pkgs/applications/networking/mailreaders/astroid/default.nix
index 249d262fe1e9..e56697be4f99 100644
--- a/pkgs/applications/networking/mailreaders/astroid/default.nix
+++ b/pkgs/applications/networking/mailreaders/astroid/default.nix
@@ -1,5 +1,5 @@
 { lib, stdenv, fetchFromGitHub, fetchpatch, cmake, pkg-config, gnome, gmime3, webkitgtk, ronn
-, libsass, notmuch, boost, wrapGAppsHook, glib-networking, protobuf
+, libsass, notmuch, boost, wrapGAppsHook3, glib-networking, protobuf
 , gtkmm3, libpeas, gsettings-desktop-schemas, gobject-introspection, python3
 
 # vim to be used, should support the GUI mode.
@@ -30,7 +30,7 @@ stdenv.mkDerivation rec {
   ];
 
   nativeBuildInputs = [
-    cmake ronn pkg-config wrapGAppsHook gobject-introspection
+    cmake ronn pkg-config wrapGAppsHook3 gobject-introspection
     python3 python3.pkgs.wrapPython
   ];
 
diff --git a/pkgs/applications/networking/mailreaders/ayatana-webmail/default.nix b/pkgs/applications/networking/mailreaders/ayatana-webmail/default.nix
index 14be9ab4f3d6..8adb3acfe407 100644
--- a/pkgs/applications/networking/mailreaders/ayatana-webmail/default.nix
+++ b/pkgs/applications/networking/mailreaders/ayatana-webmail/default.nix
@@ -7,7 +7,7 @@
 , libnotify
 , glib
 , gobject-introspection
-, wrapGAppsHook
+, wrapGAppsHook3
 # BTW libappindicator is also supported, but upstream recommends their
 # implementation, see:
 # https://github.com/AyatanaIndicators/ayatana-webmail/issues/24#issuecomment-1050352862
@@ -47,7 +47,7 @@ python3Packages.buildPythonApplication rec {
 
   nativeBuildInputs = [
     gobject-introspection
-    wrapGAppsHook
+    wrapGAppsHook3
     glib # For compiling gsettings-schemas
   ];
 
diff --git a/pkgs/applications/networking/mailreaders/balsa/default.nix b/pkgs/applications/networking/mailreaders/balsa/default.nix
index 876a690de5a5..3602ef602fe1 100644
--- a/pkgs/applications/networking/mailreaders/balsa/default.nix
+++ b/pkgs/applications/networking/mailreaders/balsa/default.nix
@@ -19,7 +19,7 @@
 , pkg-config
 , sqlite
 , webkitgtk
-, wrapGAppsHook
+, wrapGAppsHook3
 }:
 
 stdenv.mkDerivation rec {
@@ -35,7 +35,7 @@ stdenv.mkDerivation rec {
     pkg-config
     intltool
     gobject-introspection
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
diff --git a/pkgs/applications/networking/mailreaders/bluemail/default.nix b/pkgs/applications/networking/mailreaders/bluemail/default.nix
index d7e1a4026de3..f565a5732f5d 100644
--- a/pkgs/applications/networking/mailreaders/bluemail/default.nix
+++ b/pkgs/applications/networking/mailreaders/bluemail/default.nix
@@ -14,7 +14,7 @@
 , libxshmfence
 , makeDesktopItem
 , makeWrapper
-, wrapGAppsHook
+, wrapGAppsHook3
 , gcc-unwrapped
 , udev
 }:
@@ -49,7 +49,7 @@ stdenv.mkDerivation rec {
     copyDesktopItems
     makeWrapper
     dpkg
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
diff --git a/pkgs/applications/networking/mailreaders/bubblemail/default.nix b/pkgs/applications/networking/mailreaders/bubblemail/default.nix
index bd5783a5c656..3e5a6b1404ec 100644
--- a/pkgs/applications/networking/mailreaders/bubblemail/default.nix
+++ b/pkgs/applications/networking/mailreaders/bubblemail/default.nix
@@ -7,7 +7,7 @@
 , libnotify
 , gst_all_1
 , libsecret
-, wrapGAppsHook
+, wrapGAppsHook3
 , gsettings-desktop-schemas
 , gnome-online-accounts
 , glib
@@ -45,7 +45,7 @@ python3Packages.buildPythonApplication rec {
 
   nativeBuildInputs = [
     gettext
-    wrapGAppsHook
+    wrapGAppsHook3
     python3Packages.pillow
     # For setup-hook
     gobject-introspection
diff --git a/pkgs/applications/networking/mailreaders/claws-mail/default.nix b/pkgs/applications/networking/mailreaders/claws-mail/default.nix
index 16bc93304921..db98db2b3397 100644
--- a/pkgs/applications/networking/mailreaders/claws-mail/default.nix
+++ b/pkgs/applications/networking/mailreaders/claws-mail/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, lib, fetchurl, wrapGAppsHook, autoreconfHook, bison, flex
+{ stdenv, lib, fetchurl, wrapGAppsHook3, autoreconfHook, bison, flex
 , curl, gtk3, pkg-config, python3, shared-mime-info
 , glib-networking, gsettings-desktop-schemas
 
@@ -123,7 +123,7 @@ in stdenv.mkDerivation rec {
         --subst-var-by MIMEROOTDIR ${shared-mime-info}/share
   '';
 
-  nativeBuildInputs = [ autoreconfHook pkg-config bison flex wrapGAppsHook ];
+  nativeBuildInputs = [ autoreconfHook pkg-config bison flex wrapGAppsHook3 ];
   propagatedBuildInputs = pythonPkgs;
 
   buildInputs =
diff --git a/pkgs/applications/networking/mailreaders/electron-mail/default.nix b/pkgs/applications/networking/mailreaders/electron-mail/default.nix
index acb7ebfbe61e..bf40dba20861 100644
--- a/pkgs/applications/networking/mailreaders/electron-mail/default.nix
+++ b/pkgs/applications/networking/mailreaders/electron-mail/default.nix
@@ -1,4 +1,4 @@
-{ appimageTools, lib, fetchurl, libsecret }:
+{ appimageTools, lib, fetchurl }:
 
 let
   pname = "electron-mail";
@@ -20,9 +20,9 @@ in appimageTools.wrapType2 {
     cp -r ${appimageContents}/usr/share/icons $out/share
   '';
 
-  extraPkgs = pkgs: with pkgs; [
-    libsecret
-    libappindicator-gtk3
+  extraPkgs = pkgs: [
+    pkgs.libsecret
+    pkgs.libappindicator-gtk3
   ];
 
   meta = with lib; {
diff --git a/pkgs/applications/networking/mailreaders/evolution/evolution-ews/default.nix b/pkgs/applications/networking/mailreaders/evolution/evolution-ews/default.nix
index a6a6efa77266..368c9f897dc7 100644
--- a/pkgs/applications/networking/mailreaders/evolution/evolution-ews/default.nix
+++ b/pkgs/applications/networking/mailreaders/evolution/evolution-ews/default.nix
@@ -22,11 +22,11 @@
 
 stdenv.mkDerivation rec {
   pname = "evolution-ews";
-  version = "3.50.3";
+  version = "3.52.1";
 
   src = fetchurl {
     url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
-    sha256 = "4vpZQTdq1X4H0mc/hnbDH38rBo1J9o6g+4uv6rtSm+0=";
+    hash = "sha256-TR9OlipFClJnADNQiaOQfZgMB2Z/q9Vmmag06Z2HSrI=";
   };
 
   patches = [
diff --git a/pkgs/applications/networking/mailreaders/evolution/evolution/default.nix b/pkgs/applications/networking/mailreaders/evolution/evolution/default.nix
index a1368c388483..dd7342eadc4f 100644
--- a/pkgs/applications/networking/mailreaders/evolution/evolution/default.nix
+++ b/pkgs/applications/networking/mailreaders/evolution/evolution/default.nix
@@ -17,7 +17,7 @@
 , libgweather
 , glib-networking
 , gsettings-desktop-schemas
-, wrapGAppsHook
+, wrapGAppsHook3
 , itstool
 , shared-mime-info
 , libical
@@ -44,11 +44,11 @@
 
 stdenv.mkDerivation rec {
   pname = "evolution";
-  version = "3.50.4";
+  version = "3.52.1";
 
   src = fetchurl {
     url = "mirror://gnome/sources/evolution/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
-    sha256 = "sha256-4PlVyhTfsbLhaC/PoYFqA8EUuBYZmPls+daBpqOEJpg=";
+    hash = "sha256-aNrtER2t42GMpwjss8q0zZO6UC9a6dXnlwc8OhPinek=";
   };
 
   nativeBuildInputs = [
@@ -58,7 +58,7 @@ stdenv.mkDerivation rec {
     libxml2
     ninja
     pkg-config
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
diff --git a/pkgs/applications/networking/mailreaders/mailnag/default.nix b/pkgs/applications/networking/mailreaders/mailnag/default.nix
index 4f6b3015cf34..6c887ef66ce5 100644
--- a/pkgs/applications/networking/mailreaders/mailnag/default.nix
+++ b/pkgs/applications/networking/mailreaders/mailnag/default.nix
@@ -8,7 +8,7 @@
 , libnotify
 , gst_all_1
 , libsecret
-, wrapGAppsHook
+, wrapGAppsHook3
 , gsettings-desktop-schemas
 , glib
 , gobject-introspection
@@ -46,7 +46,7 @@ python3Packages.buildPythonApplication rec {
 
   nativeBuildInputs = [
     gettext
-    wrapGAppsHook
+    wrapGAppsHook3
     gobject-introspection
     # To later add plugins to
     xorg.lndir
@@ -67,7 +67,7 @@ python3Packages.buildPythonApplication rec {
         # goa plugin requires gio's gnome-online-accounts which requires making sure
         # mailnag runs with GI_TYPELIB_PATH containing the path to Goa-1.0.typelib.
         # This is handled best by adding the plugins' deps to buildInputs and let
-        # wrapGAppsHook handle that.
+        # wrapGAppsHook3 handle that.
         pluginsDeps = lib.flatten (lib.catAttrs "buildInputs" plugs);
         self = mailnag;
       in
diff --git a/pkgs/applications/networking/mailreaders/mailspring/linux.nix b/pkgs/applications/networking/mailreaders/mailspring/linux.nix
index dff8796f6ce2..47fe6697f48e 100644
--- a/pkgs/applications/networking/mailreaders/mailspring/linux.nix
+++ b/pkgs/applications/networking/mailreaders/mailspring/linux.nix
@@ -11,7 +11,7 @@
 , dpkg
 , glib
 , gtk3
-, wrapGAppsHook
+, wrapGAppsHook3
 , libkrb5
 , libsecret
 , nss
@@ -34,7 +34,7 @@ stdenv.mkDerivation (finalAttrs: {
   nativeBuildInputs = [
     autoPatchelfHook
     dpkg
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
diff --git a/pkgs/applications/networking/mailreaders/notmuch/default.nix b/pkgs/applications/networking/mailreaders/notmuch/default.nix
index ba2f75669847..588cd4326a61 100644
--- a/pkgs/applications/networking/mailreaders/notmuch/default.nix
+++ b/pkgs/applications/networking/mailreaders/notmuch/default.nix
@@ -1,4 +1,4 @@
-{ fetchurl, lib, stdenv, makeWrapper
+{ fetchurl, lib, stdenv, makeWrapper, buildEnv
 , pkg-config, gnupg
 , xapian, gmime3, sfsexp, talloc, zlib
 , doxygen, perl, texinfo
@@ -12,14 +12,15 @@
 , withEmacs ? true
 , withRuby ? true
 , withSfsexp ? true # also installs notmuch-git, which requires sexp-support
+, withVim ? true
 }:
 
-stdenv.mkDerivation rec {
+stdenv.mkDerivation (finalAttrs: {
   pname = "notmuch";
   version = "0.38.3";
 
   src = fetchurl {
-    url = "https://notmuchmail.org/releases/notmuch-${version}.tar.xz";
+    url = "https://notmuchmail.org/releases/notmuch-${finalAttrs.version}.tar.xz";
     hash = "sha256-mvRsyA2li0MByiuu/MJaQNES0DFVB+YywPPw8IMo0FQ=";
   };
 
@@ -76,8 +77,7 @@ stdenv.mkDerivation rec {
   '';
 
   outputs = [ "out" "man" "info" "bindingconfig" ]
-    ++ lib.optional withEmacs "emacs"
-    ++ lib.optional withRuby "ruby";
+    ++ lib.optional withEmacs "emacs";
 
   # if notmuch is built with s-expression support, the testsuite (T-850.sh) only
   # passes if notmuch-git can be executed, so we need to patch its shebang.
@@ -123,7 +123,7 @@ stdenv.mkDerivation rec {
     moveToOutput bin/notmuch-emacs-mua $emacs
   '' + lib.optionalString withRuby ''
     make -C bindings/ruby install \
-      vendordir=$ruby/lib/ruby \
+      vendordir=$out/lib/ruby \
       SHELL=$SHELL \
       $makeFlags "''${makeFlagsArray[@]}" \
       $installFlags "''${installFlagsArray[@]}"
@@ -133,12 +133,31 @@ stdenv.mkDerivation rec {
   + lib.optionalString withSfsexp ''
     cp notmuch-git $out/bin/notmuch-git
     wrapProgram $out/bin/notmuch-git --prefix PATH : $out/bin:${lib.getBin git}/bin
+  '' + lib.optionalString withVim ''
+    make -C vim DESTDIR="$out/share/vim-plugins/notmuch" prefix="" install
+    mkdir -p $out/share/nvim
+    ln -s $out/share/vim-plugins/notmuch $out/share/nvim/site
+  '' + lib.optionalString (withVim && withRuby) ''
+    PLUG=$out/share/vim-plugins/notmuch/plugin/notmuch.vim
+    cat >> $PLUG << EOF
+      let \$GEM_PATH=\$GEM_PATH . ":${finalAttrs.passthru.gemEnv}/${ruby.gemPath}"
+      let \$RUBYLIB=\$RUBYLIB . ":$out/${ruby.libPath}/${ruby.system}"
+      if has('nvim')
+    EOF
+    for gem in ${finalAttrs.passthru.gemEnv}/${ruby.gemPath}/gems/*/lib; do
+      echo "ruby \$LOAD_PATH.unshift('$gem')" >> $PLUG
+    done
+    echo 'endif' >> $PLUG
   '';
 
   passthru = {
-    pythonSourceRoot = "notmuch-${version}/bindings/python";
+    pythonSourceRoot = "notmuch-${finalAttrs.version}/bindings/python";
+    gemEnv = buildEnv {
+      name = "notmuch-vim-gems";
+      paths = with ruby.gems; [ mail ];
+      pathsToLink = [ "/lib" "/nix-support" ];
+    };
     tests.version = testers.testVersion { package = notmuch; };
-    inherit version;
 
     updateScript = gitUpdater {
       url = "https://git.notmuchmail.org/git/notmuch";
@@ -155,4 +174,4 @@ stdenv.mkDerivation rec {
     platforms   = platforms.unix;
     mainProgram = "notmuch";
   };
-}
+})
diff --git a/pkgs/applications/networking/mailreaders/thunderbird-bin/default.nix b/pkgs/applications/networking/mailreaders/thunderbird-bin/default.nix
index 984881508929..5026afeaea0b 100644
--- a/pkgs/applications/networking/mailreaders/thunderbird-bin/default.nix
+++ b/pkgs/applications/networking/mailreaders/thunderbird-bin/default.nix
@@ -3,7 +3,7 @@
 # To update `thunderbird-bin`'s `release_sources.nix`, run from the nixpkgs root:
 #
 #     nix-shell maintainers/scripts/update.nix --argstr package pkgs.thunderbird-bin-unwrapped
-{ lib, stdenv, fetchurl, config, wrapGAppsHook
+{ lib, stdenv, fetchurl, config, wrapGAppsHook3
 , alsa-lib
 , atk
 , cairo
@@ -147,7 +147,7 @@ stdenv.mkDerivation {
 
   inherit gtk3;
 
-  nativeBuildInputs = [ wrapGAppsHook ];
+  nativeBuildInputs = [ wrapGAppsHook3 ];
 
   buildInputs = [ gtk3 adwaita-icon-theme ];
 
diff --git a/pkgs/applications/networking/mailreaders/thunderbird/packages.nix b/pkgs/applications/networking/mailreaders/thunderbird/packages.nix
index 5a55476d4b9e..bb987de7326c 100644
--- a/pkgs/applications/networking/mailreaders/thunderbird/packages.nix
+++ b/pkgs/applications/networking/mailreaders/thunderbird/packages.nix
@@ -1,56 +1,17 @@
-{ stdenv, lib, buildMozillaMach, callPackage, fetchurl, fetchpatch, nixosTests, icu, fetchpatch2 }:
+{ stdenv, lib, buildMozillaMach, callPackage, fetchurl, fetchpatch, nixosTests, icu, fetchpatch2, config }:
 
 rec {
   thunderbird = thunderbird-115;
 
-  thunderbird-102 = (buildMozillaMach rec {
-    pname = "thunderbird";
-    version = "102.14.0";
-    application = "comm/mail";
-    applicationName = "Mozilla Thunderbird";
-    binaryName = pname;
-    src = fetchurl {
-      url = "mirror://mozilla/thunderbird/releases/${version}/source/thunderbird-${version}.source.tar.xz";
-      hash = "sha512-SuPyFoM67FVCH4J9VbwbX8LwrU/v7LJ3JKW+MxjDUd8k0wpIl7kk5zPtLjmVvihLbRNQSdRgARQ/sclh/vwYMA==";
-    };
-    extraPatches = [
-      # The file to be patched is different from firefox's `no-buildconfig-ffx90.patch`.
-      ./no-buildconfig.patch
-    ];
-
-    meta = with lib; {
-      changelog = "https://www.thunderbird.net/en-US/thunderbird/${version}/releasenotes/";
-      description = "A full-featured e-mail client";
-      homepage = "https://thunderbird.net/";
-      mainProgram = "thunderbird";
-      maintainers = with maintainers; [ eelco lovesegfault pierron vcunat ];
-      platforms = platforms.unix;
-      badPlatforms = platforms.darwin;
-      broken = stdenv.buildPlatform.is32bit; # since Firefox 60, build on 32-bit platforms fails with "out of memory".
-                                             # not in `badPlatforms` because cross-compilation on 64-bit machine might work.
-      license = licenses.mpl20;
-      knownVulnerabilities = [ "Thunderbird 102 support has ended" ];
-    };
-    updateScript = callPackage ./update.nix {
-      attrPath = "thunderbird-unwrapped";
-      versionPrefix = "102";
-    };
-  }).override {
-    geolocationSupport = false;
-    webrtcSupport = false;
-
-    pgoSupport = false; # console.warn: feeds: "downloadFeed: network connection unavailable"
-  };
-
   thunderbird-115 = (buildMozillaMach rec {
     pname = "thunderbird";
-    version = "115.10.1";
+    version = "115.10.2";
     application = "comm/mail";
     applicationName = "Mozilla Thunderbird";
     binaryName = pname;
     src = fetchurl {
       url = "mirror://mozilla/thunderbird/releases/${version}/source/thunderbird-${version}.source.tar.xz";
-      sha512 = "0324811d3e7e6228bb45cbf01e8a4a08b8386e22d1b52eb79f9a9a3bda940eb9d534ec1230961e9a998a0162c299a1ad49d23c5fbfa8e287896bcc0fd1c398e0";
+      sha512 = "e893cba882fe3fba516758b8822fa16a6c5b1f633cd2877a91357255f956be32b55ee671ab8ebc4372f116848d4fb67a2220a673c8d5f3c95952ba266d99cd67";
     };
     extraPatches = [
       # The file to be patched is different from firefox's `no-buildconfig-ffx90.patch`.
@@ -91,3 +52,7 @@ rec {
     });
   };
 }
+ // lib.optionalAttrs config.allowAliases {
+  thunderbird-102 = throw "Thunderbird 102 support ended in September 2023";
+}
+
diff --git a/pkgs/applications/networking/mailreaders/tutanota-desktop/default.nix b/pkgs/applications/networking/mailreaders/tutanota-desktop/default.nix
index 29a892942018..44597be716a7 100644
--- a/pkgs/applications/networking/mailreaders/tutanota-desktop/default.nix
+++ b/pkgs/applications/networking/mailreaders/tutanota-desktop/default.nix
@@ -5,14 +5,14 @@
 
 appimageTools.wrapType2 rec {
   pname = "tutanota-desktop";
-  version = "220.240321.0";
+  version = "227.240502.0";
 
   src = fetchurl {
     url = "https://github.com/tutao/tutanota/releases/download/tutanota-desktop-release-${version}/tutanota-desktop-linux.AppImage";
-    hash = "sha256-LbvldnhvKHvBEaOwkxA2acuUKMcYi16ceYPuMW73qLs=";
+    hash = "sha256-D7qWwIFuCJmBvfdgf4Dsd2/jvi39tbAttaHOwLND4DY=";
   };
 
-  extraPkgs = pkgs: (appimageTools.defaultFhsEnvArgs.multiPkgs pkgs) ++ [ pkgs.libsecret ];
+  extraPkgs = pkgs: [ pkgs.libsecret ];
 
   extraInstallCommands =
     let appimageContents = appimageTools.extract { inherit pname version src; };
diff --git a/pkgs/applications/networking/netmaker/default.nix b/pkgs/applications/networking/netmaker/default.nix
index 2ec3c24b69fe..58e48e69fc4f 100644
--- a/pkgs/applications/networking/netmaker/default.nix
+++ b/pkgs/applications/networking/netmaker/default.nix
@@ -10,16 +10,16 @@
 
 buildGoModule rec {
   pname = "netmaker";
-  version = "0.24.0";
+  version = "0.24.1";
 
   src = fetchFromGitHub {
     owner = "gravitl";
     repo = pname;
     rev = "v${version}";
-    hash = "sha256-eY0L8dgFTZmkwSXYKCOOnNbFgxTydNoVHEoZBS3oMwM=";
+    hash = "sha256-Me1hux+Y3EiT9vlP4+4019JPcDEW0d5byFO6YIfKbbw=";
   };
 
-  vendorHash = "sha256-RRSkdDo6N8742YjzORGOTCzqH7WcSraJger8XOryqio=";
+  vendorHash = "sha256-BlZYXLvB05BTI2gMke8I2ob4jYSrixfpBUqKzNcHisI=";
 
   inherit subPackages;
 
diff --git a/pkgs/applications/networking/newsreaders/liferea/default.nix b/pkgs/applications/networking/newsreaders/liferea/default.nix
index 06ec0b304576..8b55f12732aa 100644
--- a/pkgs/applications/networking/newsreaders/liferea/default.nix
+++ b/pkgs/applications/networking/newsreaders/liferea/default.nix
@@ -3,7 +3,7 @@
 , pkg-config
 , intltool
 , python3Packages
-, wrapGAppsHook
+, wrapGAppsHook3
 , glib
 , libxml2
 , libxslt
@@ -32,7 +32,7 @@ stdenv.mkDerivation rec {
   };
 
   nativeBuildInputs = [
-    wrapGAppsHook
+    wrapGAppsHook3
     python3Packages.wrapPython
     intltool
     pkg-config
diff --git a/pkgs/applications/networking/newsreaders/pan/default.nix b/pkgs/applications/networking/newsreaders/pan/default.nix
index eb9b5ad3af95..3a8418e48bda 100644
--- a/pkgs/applications/networking/newsreaders/pan/default.nix
+++ b/pkgs/applications/networking/newsreaders/pan/default.nix
@@ -22,14 +22,14 @@
 
 stdenv.mkDerivation rec {
   pname = "pan";
-  version = "0.157";
+  version = "0.158";
 
   src = fetchFromGitLab {
     domain = "gitlab.gnome.org";
     owner = "GNOME";
     repo = pname;
     rev = "v${version}";
-    hash = "sha256-+zzAnppP6ICIhhlqXGVF4h/yIDa6oE1lxenmzcr2BQo=";
+    hash = "sha256-gcs3TsUzZAW8PhNPMzyOfwu+2SNynjRgfxdGIfAHrpA=";
   };
 
   nativeBuildInputs = [ autoreconfHook pkg-config gettext intltool itstool libxml2 makeWrapper ];
diff --git a/pkgs/applications/networking/nextdns/default.nix b/pkgs/applications/networking/nextdns/default.nix
index 7699d5d399c8..0661a3f9db2c 100644
--- a/pkgs/applications/networking/nextdns/default.nix
+++ b/pkgs/applications/networking/nextdns/default.nix
@@ -2,13 +2,13 @@
 
 buildGoModule rec {
   pname = "nextdns";
-  version = "1.43.0";
+  version = "1.43.3";
 
   src = fetchFromGitHub {
     owner = "nextdns";
     repo = "nextdns";
     rev = "v${version}";
-    sha256 = "sha256-5aznAAO53EFeq/fap10ARGerKzQAvLx0zOeG6OWkymw=";
+    sha256 = "sha256-sltTvjEfUZsmXDEyN+Zyck7oqZ+Xu8xScNnitt/0eic=";
   };
 
   vendorHash = "sha256-U5LJF1RX0ZS0PhjQTZKXrJo89WPfSZaVbgskWcYNlJY=";
diff --git a/pkgs/applications/networking/onionshare/default.nix b/pkgs/applications/networking/onionshare/default.nix
index 3d675d04d58f..49ce4fae1217 100644
--- a/pkgs/applications/networking/onionshare/default.nix
+++ b/pkgs/applications/networking/onionshare/default.nix
@@ -1,20 +1,18 @@
 { lib
 , stdenv
 , buildPythonApplication
-, cepa
 , colorama
 , fetchFromGitHub
+, fetchpatch
 , flask
 , flask-compress
-, flask-httpauth
 , flask-socketio
-, gevent-socketio
 , gevent-websocket
 , obfs4
 , psutil
+, packaging
 , pycrypto
 , pynacl
-, pyqt5
 , pyside6
 , pysocks
 , pytestCheckHook
@@ -22,10 +20,12 @@
 , qt5
 , requests
 , snowflake
+, stem
 , substituteAll
 , tor
 , unidecode
 , waitress
+, werkzeug
 }:
 
 let
@@ -79,23 +79,25 @@ rec {
       })
     ];
     propagatedBuildInputs = [
-      cepa
       colorama
       flask
       flask-compress
-      flask-httpauth
       flask-socketio
-      gevent-socketio
       gevent-websocket
+      packaging
       psutil
       pycrypto
       pynacl
       pyside6
+      pysocks
+      qrcode
       qrcode
       requests
+      stem
       unidecode
       waitress
-    ];
+      werkzeug
+    ] ++ requests.optional-dependencies.socks;
 
     buildInputs = [
       obfs4
@@ -138,19 +140,25 @@ rec {
         inherit tor meek obfs4 snowflake;
         inherit (tor) geoip;
       })
+
+      # https://github.com/onionshare/onionshare/pull/1903
+      (fetchpatch {
+        url = "https://github.com/onionshare/onionshare/pull/1903/commits/f20db8fcbd18e51b58814ae8f98f3a7502b4f456.patch";
+        stripLen = 1;
+        hash = "sha256-wfIjdPhdUYAvbK5XyE1o2OtFOlJRj0X5mh7QQRjdyP0=";
+      })
     ];
 
     propagatedBuildInputs = [
       onionshare
-      psutil
-      pyqt5
       pyside6
-      pysocks
       qrcode
     ];
 
     nativeBuildInputs = [ qt5.wrapQtAppsHook ];
 
+    buildInputs = [ qt5.qtwayland ];
+
     postInstall = ''
       mkdir -p $out/share/{appdata,applications,icons}
       cp $src/org.onionshare.OnionShare.desktop $out/share/applications
diff --git a/pkgs/applications/networking/p2p/deluge/default.nix b/pkgs/applications/networking/p2p/deluge/default.nix
index 35db62ef8e4e..8c3d76d755f7 100644
--- a/pkgs/applications/networking/p2p/deluge/default.nix
+++ b/pkgs/applications/networking/p2p/deluge/default.nix
@@ -7,7 +7,7 @@
 , glib
 , gobject-introspection
 , librsvg
-, wrapGAppsHook
+, wrapGAppsHook3
 }:
 
 let
@@ -54,7 +54,7 @@ let
         glib
       ] ++ optionals withGUI [
         gobject-introspection
-        wrapGAppsHook
+        wrapGAppsHook3
       ];
 
       nativeCheckInputs = with pypkgs; [
diff --git a/pkgs/applications/networking/p2p/flood/default.nix b/pkgs/applications/networking/p2p/flood/default.nix
index f31c214b190c..85ef8b2130bb 100644
--- a/pkgs/applications/networking/p2p/flood/default.nix
+++ b/pkgs/applications/networking/p2p/flood/default.nix
@@ -5,16 +5,16 @@
 
 buildNpmPackage rec {
   pname = "flood";
-  version = "4.8.0";
+  version = "4.8.2";
 
   src = fetchFromGitHub {
     owner = "jesec";
     repo = pname;
     rev = "v${version}";
-    hash = "sha256-hth8tk2DHuBGNAXdjknbdQinuwWJ//QF0e23neeTExw=";
+    hash = "sha256-Ejr0pmWIuYByzDS+iFTECO/aymzuJrJjaaW7HikNt2w=";
   };
 
-  npmDepsHash = "sha256-WlQ/u7yIbuFETsmbW7ddAOO7OVrNPOXR3ja3N0aFWRE=";
+  npmDepsHash = "sha256-md76I7W5QQvfbOmk5ODssMtJAVOj8nvaJ2PakEZ8WUA=";
 
   meta = with lib; {
     description = "Modern web UI for various torrent clients with a Node.js backend and React frontend";
diff --git a/pkgs/applications/networking/p2p/gnunet/gtk.nix b/pkgs/applications/networking/p2p/gnunet/gtk.nix
index 640ffeef7588..633a8da08778 100644
--- a/pkgs/applications/networking/p2p/gnunet/gtk.nix
+++ b/pkgs/applications/networking/p2p/gnunet/gtk.nix
@@ -8,7 +8,7 @@
 , libsodium
 , libxml2
 , pkg-config
-, wrapGAppsHook
+, wrapGAppsHook3
 }:
 
 stdenv.mkDerivation rec {
@@ -22,7 +22,7 @@ stdenv.mkDerivation rec {
 
   nativeBuildInputs= [
     pkg-config
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
diff --git a/pkgs/applications/networking/p2p/qbittorrent/default.nix b/pkgs/applications/networking/p2p/qbittorrent/default.nix
index 672a0c79fb04..07c4ca3392f9 100644
--- a/pkgs/applications/networking/p2p/qbittorrent/default.nix
+++ b/pkgs/applications/networking/p2p/qbittorrent/default.nix
@@ -10,7 +10,7 @@
 , qtbase
 , qtsvg
 , qttools
-, wrapGAppsHook
+, wrapGAppsHook3
 , wrapQtAppsHook
 
 , guiSupport ? true
@@ -42,7 +42,7 @@ stdenv.mkDerivation rec {
   nativeBuildInputs = [
     cmake
     ninja
-    wrapGAppsHook
+    wrapGAppsHook3
     wrapQtAppsHook
   ];
 
diff --git a/pkgs/applications/networking/p2p/transmission-remote-gtk/default.nix b/pkgs/applications/networking/p2p/transmission-remote-gtk/default.nix
index 35c368a826f7..059a7371ebbf 100644
--- a/pkgs/applications/networking/p2p/transmission-remote-gtk/default.nix
+++ b/pkgs/applications/networking/p2p/transmission-remote-gtk/default.nix
@@ -17,7 +17,7 @@
 , meson
 , ninja
 , pkg-config
-, wrapGAppsHook
+, wrapGAppsHook3
 }:
 
 stdenv.mkDerivation rec {
@@ -37,7 +37,7 @@ stdenv.mkDerivation rec {
     meson
     ninja
     pkg-config
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
diff --git a/pkgs/applications/networking/p2p/transmission/4.nix b/pkgs/applications/networking/p2p/transmission/4.nix
index 75515ef414b0..ebd8260776b9 100644
--- a/pkgs/applications/networking/p2p/transmission/4.nix
+++ b/pkgs/applications/networking/p2p/transmission/4.nix
@@ -26,7 +26,7 @@
 , enableGTK3 ? false
 , gtkmm3
 , xorg
-, wrapGAppsHook
+, wrapGAppsHook3
 , enableQt5 ? false
 , enableQt6 ? false
 , qt5
@@ -105,7 +105,7 @@ stdenv.mkDerivation (finalAttrs: {
     cmake
     python3
   ]
-  ++ optionals enableGTK3 [ wrapGAppsHook ]
+  ++ optionals enableGTK3 [ wrapGAppsHook3 ]
   ++ optionals enableQt5 [ qt5.wrapQtAppsHook ]
   ++ optionals enableQt6 [ qt6Packages.wrapQtAppsHook ]
   ;
diff --git a/pkgs/applications/networking/p2p/transmission/default.nix b/pkgs/applications/networking/p2p/transmission/default.nix
index 58de6fa9754f..2804f76f8ef9 100644
--- a/pkgs/applications/networking/p2p/transmission/default.nix
+++ b/pkgs/applications/networking/p2p/transmission/default.nix
@@ -21,7 +21,7 @@
 , enableGTK3 ? false
 , gtk3
 , xorg
-, wrapGAppsHook
+, wrapGAppsHook3
 , enableQt ? false
 , qt5
 , nixosTests
@@ -71,7 +71,7 @@ stdenv.mkDerivation (finalAttrs: {
     pkg-config
     cmake
   ]
-  ++ lib.optionals enableGTK3 [ wrapGAppsHook ]
+  ++ lib.optionals enableGTK3 [ wrapGAppsHook3 ]
   ++ lib.optionals enableQt [ qt5.wrapQtAppsHook ]
   ;
 
diff --git a/pkgs/applications/networking/p2p/xd/default.nix b/pkgs/applications/networking/p2p/xd/default.nix
index b6bd6af3e017..b513d35f2ab1 100644
--- a/pkgs/applications/networking/p2p/xd/default.nix
+++ b/pkgs/applications/networking/p2p/xd/default.nix
@@ -2,13 +2,13 @@
 
 buildGoModule rec {
   pname = "XD";
-  version = "0.4.5";
+  version = "0.4.6";
 
   src = fetchFromGitHub {
     owner = "majestrate";
     repo = "XD";
     rev = "v${version}";
-    sha256 = "sha256-u8cUcxNW2jAWxVn1hDHS2cpIpcyv4lwx1zytlzPPdv4=";
+    sha256 = "sha256-k8Mm0tC7wiBmHFdCX38Rz7ccEFkdeArzGJVHTLQ7iWY=";
   };
 
   vendorHash = "sha256-ZD7PZJcY7qWHEQOk5I9IlMup0vbYYaRvVau5Go7ocno=";
diff --git a/pkgs/applications/networking/protonmail-bridge/default.nix b/pkgs/applications/networking/protonmail-bridge/default.nix
index 8b04fc7e3f49..f811ce742bdf 100644
--- a/pkgs/applications/networking/protonmail-bridge/default.nix
+++ b/pkgs/applications/networking/protonmail-bridge/default.nix
@@ -2,16 +2,16 @@
 
 buildGoModule rec {
   pname = "protonmail-bridge";
-  version = "3.10.0";
+  version = "3.11.0";
 
   src = fetchFromGitHub {
     owner = "ProtonMail";
     repo = "proton-bridge";
     rev = "v${version}";
-    hash = "sha256-xjpySIbt7f86PRR/9F1DXMc0G+pBq3/75STW6Zw6IhE=";
+    hash = "sha256-V2PevO9jhtKMrFVlviKPwcApP4ZTRbCLVoPx0gGNosU=";
   };
 
-  vendorHash = "sha256-cgQcI6yrnc5BUuyOkaYu24GzCaGe+BgXOC2zdt1Z1Lg=";
+  vendorHash = "sha256-qi6ME74pJH/wgDh0xp/Rsc9hPd3v3L/M8pBQJzNieK8=";
 
   nativeBuildInputs = [ pkg-config ];
 
diff --git a/pkgs/applications/networking/protonvpn-gui/default.nix b/pkgs/applications/networking/protonvpn-gui/default.nix
index 2930ef450ea2..19081bd13863 100644
--- a/pkgs/applications/networking/protonvpn-gui/default.nix
+++ b/pkgs/applications/networking/protonvpn-gui/default.nix
@@ -3,7 +3,7 @@
 , fetchFromGitHub
 , gobject-introspection
 , setuptools
-, wrapGAppsHook
+, wrapGAppsHook3
 , dbus-python
 , packaging
 , proton-core
@@ -41,7 +41,7 @@ buildPythonApplication rec {
     # Needed for the NM namespace
     gobject-introspection
     setuptools
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = lib.optionals withIndicator [
diff --git a/pkgs/applications/networking/protonvpn-gui/legacy.nix b/pkgs/applications/networking/protonvpn-gui/legacy.nix
index 7464a279cf8a..32828b5590f6 100644
--- a/pkgs/applications/networking/protonvpn-gui/legacy.nix
+++ b/pkgs/applications/networking/protonvpn-gui/legacy.nix
@@ -2,7 +2,7 @@
 , buildPythonApplication
 , fetchFromGitHub
 , setuptools
-, wrapGAppsHook
+, wrapGAppsHook3
 , gdk-pixbuf
 , glib-networking
 , gobject-introspection
@@ -35,7 +35,7 @@ buildPythonApplication rec {
     gobject-introspection
     imagemagick
     setuptools
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   propagatedBuildInputs = [
diff --git a/pkgs/applications/networking/pyload-ng/default.nix b/pkgs/applications/networking/pyload-ng/default.nix
index 09304784d312..61c62fb95e94 100644
--- a/pkgs/applications/networking/pyload-ng/default.nix
+++ b/pkgs/applications/networking/pyload-ng/default.nix
@@ -1,13 +1,15 @@
 { lib, fetchPypi, nixosTests, python3 }:
 
 python3.pkgs.buildPythonApplication rec {
-  version = "0.5.0b3.dev80";
+  version = "0.5.0b3.dev85";
   pname = "pyload-ng";
   pyproject = true;
 
   src = fetchPypi {
-    inherit pname version;
-    hash = "sha256-1vIkEctoj6udowYxFwY42f/zL9Elw2Nl6ZaL2x30k/M=";
+    inherit version;
+    # The uploaded tarball uses an underscore in recent releases
+    pname = "pyload_ng";
+    hash = "sha256-KLpfh53JKqe0kZLcQ1C4fXFFYeO5pPhia9fRxWsbIHY=";
   };
 
   patches = [
diff --git a/pkgs/applications/networking/remote/citrix-workspace/generic.nix b/pkgs/applications/networking/remote/citrix-workspace/generic.nix
index f751f3237e41..96074b3fd7da 100644
--- a/pkgs/applications/networking/remote/citrix-workspace/generic.nix
+++ b/pkgs/applications/networking/remote/citrix-workspace/generic.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, requireFile, makeWrapper, autoPatchelfHook, wrapGAppsHook, which, more
+{ lib, stdenv, requireFile, makeWrapper, autoPatchelfHook, wrapGAppsHook3, which, more
 , file, atk, alsa-lib, cairo, fontconfig, gdk-pixbuf, glib, webkitgtk, gtk2-x11, gtk3
 , heimdal, krb5, libsoup, libvorbis, speex, openssl, zlib, xorg, pango, gtk2
 , gnome2, mesa, nss, nspr, gtk_engines, freetype, dconf, libpng12, libxml2
@@ -72,7 +72,7 @@ stdenv.mkDerivation rec {
     makeWrapper
     more
     which
-    wrapGAppsHook
+    wrapGAppsHook3
     libfaketime
   ];
 
diff --git a/pkgs/applications/networking/remote/freerdp/3.nix b/pkgs/applications/networking/remote/freerdp/3.nix
new file mode 100644
index 000000000000..3181e5d67625
--- /dev/null
+++ b/pkgs/applications/networking/remote/freerdp/3.nix
@@ -0,0 +1,208 @@
+{ stdenv
+, lib
+, fetchFromGitHub
+, cmake
+, docbook-xsl-nons
+, libxslt
+, pkg-config
+, alsa-lib
+, faac
+, faad2
+, ffmpeg
+, fuse3
+, glib
+, openh264
+, openssl
+, pcre2
+, pkcs11helper
+, uriparser
+, zlib
+, libX11
+, libXcursor
+, libXdamage
+, libXdmcp
+, libXext
+, libXi
+, libXinerama
+, libXrandr
+, libXrender
+, libXtst
+, libXv
+, libxkbcommon
+, libxkbfile
+, wayland
+, wayland-scanner
+, icu
+, libunwind
+, orc
+, cairo
+, cjson
+, libusb1
+, libpulseaudio
+, cups
+, pcsclite
+, SDL2
+, SDL2_ttf
+, SDL2_image
+, systemd
+, libjpeg_turbo
+, libkrb5
+, libopus
+, buildServer ? true
+, nocaps ? false
+, AudioToolbox
+, AVFoundation
+, Carbon
+, Cocoa
+, CoreMedia
+, withUnfree ? false
+
+  # tries to compile and run generate_argument_docbook.c
+, withManPages ? stdenv.buildPlatform.canExecute stdenv.hostPlatform
+
+, buildPackages
+}:
+
+let
+  cmFlag = flag: if flag then "ON" else "OFF";
+in
+stdenv.mkDerivation (finalAttrs: {
+  pname = "freerdp";
+  version = "3.5.1";
+
+  src = fetchFromGitHub {
+    owner = "FreeRDP";
+    repo = "FreeRDP";
+    rev = finalAttrs.version;
+    hash = "sha256-8yWMnwJbvyUiEuX+2bEim1IeqPx20u9yvNIVe7MC/ZQ=";
+  };
+
+  postPatch = ''
+    export HOME=$TMP
+
+    # skip NIB file generation on darwin
+    substituteInPlace "client/Mac/CMakeLists.txt" "client/Mac/cli/CMakeLists.txt" \
+      --replace-fail "if (NOT IS_XCODE)" "if (FALSE)"
+
+    substituteInPlace "libfreerdp/freerdp.pc.in" \
+      --replace-fail "Requires:" "Requires: @WINPR_PKG_CONFIG_FILENAME@"
+  '' + lib.optionalString (pcsclite != null) ''
+    substituteInPlace "winpr/libwinpr/smartcard/smartcard_pcsc.c" \
+      --replace-fail "libpcsclite.so" "${lib.getLib pcsclite}/lib/libpcsclite.so"
+  '' + lib.optionalString nocaps ''
+    substituteInPlace "libfreerdp/locale/keyboard_xkbfile.c" \
+      --replace-fail "RDP_SCANCODE_CAPSLOCK" "RDP_SCANCODE_LCONTROL"
+  '';
+
+  nativeBuildInputs = [
+    cmake
+    libxslt
+    docbook-xsl-nons
+    pkg-config
+    wayland-scanner
+  ];
+
+  buildInputs = [
+    cairo
+    cjson
+    cups
+    faad2
+    ffmpeg
+    glib
+    icu
+    libX11
+    libXcursor
+    libXdamage
+    libXdmcp
+    libXext
+    libXi
+    libXinerama
+    libXrandr
+    libXrender
+    libXtst
+    libXv
+    libjpeg_turbo
+    libkrb5
+    libopus
+    libpulseaudio
+    libunwind
+    libusb1
+    libxkbcommon
+    libxkbfile
+    openh264
+    openssl
+    orc
+    pcre2
+    pcsclite
+    pkcs11helper
+    SDL2
+    SDL2_ttf
+    SDL2_image
+    uriparser
+    zlib
+  ] ++ lib.optionals stdenv.isLinux [
+    alsa-lib
+    fuse3
+    systemd
+    wayland
+  ] ++ lib.optionals stdenv.isDarwin [
+    AudioToolbox
+    AVFoundation
+    Carbon
+    Cocoa
+    CoreMedia
+  ] ++ lib.optionals withUnfree [
+    faac
+  ];
+
+  # https://github.com/FreeRDP/FreeRDP/issues/8526#issuecomment-1357134746
+  cmakeFlags = [
+    "-Wno-dev"
+    "-DCMAKE_INSTALL_LIBDIR=lib"
+    "-DDOCBOOKXSL_DIR=${docbook-xsl-nons}/xml/xsl/docbook"
+    "-DWAYLAND_SCANNER=${buildPackages.wayland-scanner}/bin/wayland-scanner"
+  ] ++ lib.mapAttrsToList (k: v: "-D${k}=${cmFlag v}") {
+    BUILD_TESTING = false; # false is recommended by upstream
+    WITH_CAIRO = (cairo != null);
+    WITH_CUPS = (cups != null);
+    WITH_FAAC = (withUnfree && faac != null);
+    WITH_FAAD2 = (faad2 != null);
+    WITH_FUSE = (stdenv.isLinux && fuse3 != null);
+    WITH_JPEG = (libjpeg_turbo != null);
+    WITH_KRB5 = (libkrb5 != null);
+    WITH_OPENH264 = (openh264 != null);
+    WITH_OPUS = (libopus != null);
+    WITH_OSS = false;
+    WITH_MANPAGES = withManPages;
+    WITH_PCSC = (pcsclite != null);
+    WITH_PULSE = (libpulseaudio != null);
+    WITH_SERVER = buildServer;
+    WITH_WEBVIEW = false; # avoid introducing webkit2gtk-4.0
+    WITH_VAAPI = false; # false is recommended by upstream
+    WITH_X11 = true;
+  };
+
+  env.NIX_CFLAGS_COMPILE = toString (lib.optionals stdenv.isDarwin [
+    "-DTARGET_OS_IPHONE=0"
+    "-DTARGET_OS_WATCH=0"
+    "-include AudioToolbox/AudioToolbox.h"
+  ] ++ lib.optionals stdenv.cc.isClang [
+    "-Wno-error=incompatible-function-pointer-types"
+  ]);
+
+  env.NIX_LDFLAGS = toString (lib.optionals stdenv.isDarwin [
+    "-framework AudioToolbox"
+  ]);
+
+  meta = with lib; {
+    description = "A Remote Desktop Protocol Client";
+    longDescription = ''
+      FreeRDP is a client-side implementation of the Remote Desktop Protocol (RDP)
+      following the Microsoft Open Specifications.
+    '';
+    homepage = "https://www.freerdp.com/";
+    license = licenses.asl20;
+    maintainers = with maintainers; [ peterhoeg lheckemann ];
+    platforms = platforms.unix;
+  };
+})
diff --git a/pkgs/applications/networking/remote/freerdp/default.nix b/pkgs/applications/networking/remote/freerdp/default.nix
index c47baaf3602f..0366e9151546 100644
--- a/pkgs/applications/networking/remote/freerdp/default.nix
+++ b/pkgs/applications/networking/remote/freerdp/default.nix
@@ -205,6 +205,7 @@ stdenv.mkDerivation rec {
       following the Microsoft Open Specifications.
     '';
     homepage = "https://www.freerdp.com/";
+    changelog = "https://github.com/FreeRDP/FreeRDP/releases/tag/${src.rev}";
     license = licenses.asl20;
     maintainers = with maintainers; [ peterhoeg lheckemann ];
     platforms = platforms.unix;
diff --git a/pkgs/applications/networking/remote/nice-dcv-client/default.nix b/pkgs/applications/networking/remote/nice-dcv-client/default.nix
index 0722561cb6f3..6898d0f66d47 100644
--- a/pkgs/applications/networking/remote/nice-dcv-client/default.nix
+++ b/pkgs/applications/networking/remote/nice-dcv-client/default.nix
@@ -20,7 +20,7 @@
 , python3Packages
 , cpio
 , autoPatchelfHook
-, wrapGAppsHook
+, wrapGAppsHook3
 }:
 
 stdenv.mkDerivation rec {
@@ -32,7 +32,7 @@ stdenv.mkDerivation rec {
       sha256 = "sha256-iLz25SB5v7ghkAZOMGPmpNaPihd8ikzCQS//r1xBNRU=";
     };
 
-  nativeBuildInputs = [ autoPatchelfHook wrapGAppsHook python3Packages.rpm ];
+  nativeBuildInputs = [ autoPatchelfHook wrapGAppsHook3 python3Packages.rpm ];
   unpackPhase = ''
     rpm2cpio $src | ${cpio}/bin/cpio -idm
   '';
diff --git a/pkgs/applications/networking/remote/remmina/default.nix b/pkgs/applications/networking/remote/remmina/default.nix
index 0fd2de49dac3..d80850edd446 100644
--- a/pkgs/applications/networking/remote/remmina/default.nix
+++ b/pkgs/applications/networking/remote/remmina/default.nix
@@ -1,7 +1,8 @@
-{ lib, stdenv, fetchFromGitLab, cmake, ninja, pkg-config, wrapGAppsHook
+{ lib, stdenv, fetchFromGitLab, cmake, ninja, pkg-config, wrapGAppsHook3
+, curl, fuse3, fetchpatch2
 , desktopToDarwinBundle
 , glib, gtk3, gettext, libxkbfile, libX11, python3
-, freerdp, libssh, libgcrypt, gnutls, vte
+, freerdp3, libssh, libgcrypt, gnutls, vte
 , pcre2, libdbusmenu-gtk3, libappindicator-gtk3
 , libvncserver, libpthreadstubs, libXdmcp, libxkbcommon
 , libsecret, libsoup_3, spice-protocol, spice-gtk, libepoxy, at-spi2-core
@@ -16,22 +17,31 @@
 
 stdenv.mkDerivation (finalAttrs: {
   pname = "remmina";
-  version = "1.4.33";
+  version = "1.4.35";
 
   src = fetchFromGitLab {
-    owner  = "Remmina";
-    repo   = "Remmina";
-    rev    = "v.${finalAttrs.version}";
-    sha256 = "sha256-3HyG2PBnTq/fVsvWA81fQ2gCOoAxINWeUDwzKcOuECk=";
+    owner = "Remmina";
+    repo = "Remmina";
+    rev = "v${finalAttrs.version}";
+    hash = "sha256-0z2fcBnChCBYPxyFm/xpAW0jHaUGA92NQgjt+lWFUnM=";
   };
 
-  nativeBuildInputs = [ cmake ninja pkg-config wrapGAppsHook ]
+  patches = [
+    (fetchpatch2 {
+      name = "add-a-conditional-check-for-darwin-and-NetBSD.patch";
+      url = "https://gitlab.com/Remmina/Remmina/-/commit/3b681398c823e070c7f780166b9d9fc2158e66c1.diff";
+      hash = "sha256-Ovdrsl9bftXiuXV+sqvDP9VGuXQZzC5VKOmkYmBXhNA=";
+    })
+  ];
+
+  nativeBuildInputs = [ cmake ninja pkg-config wrapGAppsHook3 ]
     ++ lib.optionals stdenv.isDarwin [ desktopToDarwinBundle ];
 
   buildInputs = [
+    curl
     gsettings-desktop-schemas
     glib gtk3 gettext libxkbfile libX11
-    freerdp libssh libgcrypt gnutls
+    freerdp3 libssh libgcrypt gnutls
     pcre2
     libvncserver libpthreadstubs libXdmcp libxkbcommon
     libsoup_3 spice-protocol
@@ -40,21 +50,18 @@ stdenv.mkDerivation (finalAttrs: {
     openssl gnome.adwaita-icon-theme json-glib libsodium
     harfbuzz python3
     wayland
-  ] ++ lib.optionals stdenv.isLinux [ libappindicator-gtk3 libdbusmenu-gtk3 webkitgtk_4_1 ]
+  ] ++ lib.optionals stdenv.isLinux [ fuse3 libappindicator-gtk3 libdbusmenu-gtk3 webkitgtk_4_1 ]
     ++ lib.optionals withLibsecret [ libsecret ]
     ++ lib.optionals withKf5Wallet [ libsForQt5.kwallet ]
     ++ lib.optionals withVte [ vte ];
 
   cmakeFlags = [
+    "-DWITH_FREERDP3=ON"
     "-DWITH_VTE=${if withVte then "ON" else "OFF"}"
     "-DWITH_TELEPATHY=OFF"
     "-DWITH_AVAHI=OFF"
     "-DWITH_KF5WALLET=${if withKf5Wallet then "ON" else "OFF"}"
     "-DWITH_LIBSECRET=${if withLibsecret then "ON" else "OFF"}"
-    "-DFREERDP_LIBRARY=${freerdp}/lib/libfreerdp2${stdenv.hostPlatform.extensions.sharedLibrary}"
-    "-DFREERDP_CLIENT_LIBRARY=${freerdp}/lib/libfreerdp-client2${stdenv.hostPlatform.extensions.sharedLibrary}"
-    "-DFREERDP_WINPR_LIBRARY=${freerdp}/lib/libwinpr2${stdenv.hostPlatform.extensions.sharedLibrary}"
-    "-DWINPR_INCLUDE_DIR=${freerdp}/include/winpr2"
   ] ++ lib.optionals stdenv.isDarwin [
     "-DHAVE_LIBAPPINDICATOR=OFF"
     "-DWITH_CUPS=OFF"
@@ -82,6 +89,7 @@ stdenv.mkDerivation (finalAttrs: {
   meta = with lib; {
     license = licenses.gpl2Plus;
     homepage = "https://gitlab.com/Remmina/Remmina";
+    changelog = "https://gitlab.com/Remmina/Remmina/-/blob/master/CHANGELOG.md#${lib.replaceStrings ["."] [""] finalAttrs.src.rev}";
     description = "Remote desktop client written in GTK";
     mainProgram = "remmina";
     maintainers = with maintainers; [ bbigras melsigl ryantm ];
diff --git a/pkgs/applications/networking/remote/rustdesk/default.nix b/pkgs/applications/networking/remote/rustdesk/default.nix
index d220b87f2a22..d1b0facf7f5b 100644
--- a/pkgs/applications/networking/remote/rustdesk/default.nix
+++ b/pkgs/applications/networking/remote/rustdesk/default.nix
@@ -2,7 +2,7 @@
 , rustPlatform
 , fetchFromGitHub
 , pkg-config
-, wrapGAppsHook
+, wrapGAppsHook3
 , atk
 , bzip2
 , cairo
@@ -87,7 +87,7 @@ rustPlatform.buildRustPackage rec {
     copyDesktopItems
     pkg-config
     rustPlatform.bindgenHook
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildFeatures = lib.optionals stdenv.isLinux [ "linux-pkg-config" ];
diff --git a/pkgs/applications/networking/remote/teamviewer/default.nix b/pkgs/applications/networking/remote/teamviewer/default.nix
index 82a98c0579c7..9422223ae03a 100644
--- a/pkgs/applications/networking/remote/teamviewer/default.nix
+++ b/pkgs/applications/networking/remote/teamviewer/default.nix
@@ -10,6 +10,7 @@
 , qtwebengine
 , qtx11extras
 , qtquickcontrols2
+, qtgraphicaleffects
 , getconf
 , glibc
 , libXrandr
@@ -51,7 +52,7 @@ mkDerivation rec {
   '';
 
   nativeBuildInputs = [ autoPatchelfHook makeWrapper wrapQtAppsHook ];
-  buildInputs = [ qtbase qtwebengine qtx11extras qtquickcontrols2 icu63 ];
+  buildInputs = [ qtbase qtwebengine qtx11extras qtquickcontrols2 qtgraphicaleffects icu63 ];
 
   installPhase = ''
     mkdir -p $out/share/teamviewer $out/bin $out/share/applications
diff --git a/pkgs/applications/networking/remote/wayvnc/default.nix b/pkgs/applications/networking/remote/wayvnc/default.nix
index 0712e68e324b..6a08c1a091fe 100644
--- a/pkgs/applications/networking/remote/wayvnc/default.nix
+++ b/pkgs/applications/networking/remote/wayvnc/default.nix
@@ -67,6 +67,7 @@ stdenv.mkDerivation rec {
       headless one, so it is also possible to run wayvnc without a physical
       display attached.
     '';
+    mainProgram = "wayvnc";
     inherit (src.meta) homepage;
     changelog = "https://github.com/any1/wayvnc/releases/tag/v${version}";
     license = licenses.isc;
diff --git a/pkgs/applications/networking/remote/xrdp/default.nix b/pkgs/applications/networking/remote/xrdp/default.nix
index 3d6d1de3d964..5c0dd23a9e13 100644
--- a/pkgs/applications/networking/remote/xrdp/default.nix
+++ b/pkgs/applications/networking/remote/xrdp/default.nix
@@ -19,22 +19,11 @@
 , lame
 , pixman
 , libjpeg_turbo
+, _experimental-update-script-combinators
+, gitUpdater
 }:
 
 let
-  version = "0.9.25.1";
-  patchedXrdpSrc = applyPatches {
-    patches = [ ./dynamic_config.patch ];
-    name = "xrdp-patched-${version}";
-    src = fetchFromGitHub {
-      owner = "neutrinolabs";
-      repo = "xrdp";
-      rev = "v${version}";
-      fetchSubmodules = true;
-      hash = "sha256-oAs0oWkCyj3ObdJuHLfT25ZzkTrxNAXDiFU64OOP4Ow=";
-    };
-  };
-
   xorgxrdp = stdenv.mkDerivation rec {
     pname = "xorgxrdp";
     version = "0.9.20";
@@ -62,16 +51,29 @@ let
 
     preConfigure = "./bootstrap";
 
-    configureFlags = [ "XRDP_CFLAGS=-I${patchedXrdpSrc}/common"  ];
+    configureFlags = [ "XRDP_CFLAGS=-I${xrdp.src}/common"  ];
 
     enableParallelBuilding = true;
+
+    passthru.updateScript = gitUpdater { rev-prefix = "v"; };
   };
 
-  xrdp = stdenv.mkDerivation {
-    inherit version;
+  xrdp = stdenv.mkDerivation rec {
     pname = "xrdp";
-
-    src = patchedXrdpSrc;
+    version = "0.9.25.1";
+
+    src = applyPatches {
+      inherit version;
+      patches = [ ./dynamic_config.patch ];
+      name = "xrdp-patched-${version}";
+      src = fetchFromGitHub {
+        owner = "neutrinolabs";
+        repo = "xrdp";
+        rev = "v${version}";
+        fetchSubmodules = true;
+        hash = "sha256-oAs0oWkCyj3ObdJuHLfT25ZzkTrxNAXDiFU64OOP4Ow=";
+      };
+    };
 
     nativeBuildInputs = [ pkg-config autoconf automake which libtool nasm perl ];
 
@@ -150,6 +152,15 @@ let
 
     enableParallelBuilding = true;
 
+    passthru = {
+      inherit xorgxrdp;
+      updateScript = _experimental-update-script-combinators.sequence (map (item: item.command) [
+        (gitUpdater { rev-prefix = "v"; attrPath = "xrdp.src"; ignoredVersions = [ "beta" ]; })
+        { command = ["rm" "update-git-commits.txt"]; }
+        (gitUpdater { rev-prefix = "v"; attrPath = "xrdp.xorgxrdp"; })
+      ]);
+    };
+
     meta = with lib; {
       description = "An open source RDP server";
       homepage = "https://github.com/neutrinolabs/xrdp";
diff --git a/pkgs/applications/networking/remote/xrdp/pulseaudio-module-xrdp/default.nix b/pkgs/applications/networking/remote/xrdp/pulseaudio-module-xrdp/default.nix
index 86dc913b91e3..c83d08fc828f 100644
--- a/pkgs/applications/networking/remote/xrdp/pulseaudio-module-xrdp/default.nix
+++ b/pkgs/applications/networking/remote/xrdp/pulseaudio-module-xrdp/default.nix
@@ -1,11 +1,11 @@
 { stdenv
 , fetchFromGitHub
 , lib
-, nix-update-script
 , pulseaudio
 , autoreconfHook
 , pkg-config
 , nixosTests
+, gitUpdater
 }:
 
 stdenv.mkDerivation rec {
@@ -47,7 +47,7 @@ stdenv.mkDerivation rec {
   ];
 
   passthru = {
-    updateScript = nix-update-script { };
+    updateScript = gitUpdater { rev-prefix = "v"; };
     tests = {
       inherit (nixosTests) xrdp-with-audio-pulseaudio;
     };
diff --git a/pkgs/applications/networking/seaweedfs/default.nix b/pkgs/applications/networking/seaweedfs/default.nix
index 91461f9abc4a..ba144e83d6fe 100644
--- a/pkgs/applications/networking/seaweedfs/default.nix
+++ b/pkgs/applications/networking/seaweedfs/default.nix
@@ -7,16 +7,16 @@
 
 buildGoModule rec {
   pname = "seaweedfs";
-  version = "3.65";
+  version = "3.66";
 
   src = fetchFromGitHub {
     owner = "seaweedfs";
     repo = "seaweedfs";
     rev = version;
-    hash = "sha256-+HSdOP0ls8OKIFlI6qIsyhDY+4+//cbcEFL9w8rJ5i0=";
+    hash = "sha256-1hK7FEBfLWh1LVtuhELAvZFyMK1bpOSnBg78aIRK8LY=";
   };
 
-  vendorHash = "sha256-53HX4WvAQkrEa2v0PzaRwy6tMVqTB5UEWDHhDwCQk18=";
+  vendorHash = "sha256-ly1opQmYL8zRKtLTMFo5Ek9ofEtn1YwmfhVuWfACKxY=";
 
   subPackages = [ "weed" ];
 
diff --git a/pkgs/applications/networking/shellhub-agent/default.nix b/pkgs/applications/networking/shellhub-agent/default.nix
index 071425dedc00..9a50dcb17f17 100644
--- a/pkgs/applications/networking/shellhub-agent/default.nix
+++ b/pkgs/applications/networking/shellhub-agent/default.nix
@@ -11,18 +11,18 @@
 
 buildGoModule rec {
   pname = "shellhub-agent";
-  version = "0.15.0";
+  version = "0.15.1";
 
   src = fetchFromGitHub {
     owner = "shellhub-io";
     repo = "shellhub";
     rev = "v${version}";
-    hash = "sha256-533GGzSlpF9Rz8SrV0x6Hea/H8WxujuPF3cwmL5vdCw=";
+    hash = "sha256-QwbxGym0eesCzrT//1+Hcr15B4nFck5u1VNRU8xE3Qo=";
   };
 
   modRoot = "./agent";
 
-  vendorHash = "sha256-F3di9oTuE7qWzvAbHMkrSG+hkEs7FpEo4tLX6dCdklY=";
+  vendorHash = "sha256-JlfQRYdmxghGrKGwrn8jK1m32EhskmhMiyxNHZma0N0=";
 
   ldflags = [ "-s" "-w" "-X main.AgentVersion=v${version}" ];
 
diff --git a/pkgs/applications/networking/sniffers/wireshark/default.nix b/pkgs/applications/networking/sniffers/wireshark/default.nix
index d91b2540f764..81dd459f5cb0 100644
--- a/pkgs/applications/networking/sniffers/wireshark/default.nix
+++ b/pkgs/applications/networking/sniffers/wireshark/default.nix
@@ -42,7 +42,7 @@
 , spandsp3
 , speexdsp
 , SystemConfiguration
-, wrapGAppsHook
+, wrapGAppsHook3
 , zlib
 , zstd
 
@@ -54,7 +54,7 @@ assert withQt -> qt6 != null;
 
 stdenv.mkDerivation rec {
   pname = "wireshark-${if withQt then "qt" else "cli"}";
-  version = "4.2.4";
+  version = "4.2.5";
 
   outputs = [ "out" "dev" ];
 
@@ -62,7 +62,7 @@ stdenv.mkDerivation rec {
     repo = "wireshark";
     owner = "wireshark";
     rev = "v${version}";
-    hash = "sha256-yGKqklNy1SkmWOaYI0jsTy2rLq5W/dbh8fIUrBSSdw8=";
+    hash = "sha256-g0b0YGWQzWsALVnNJl/WQGl9J2QjaLnry2VL6qvN1FQ=";
   };
 
   patches = [
@@ -85,7 +85,7 @@ stdenv.mkDerivation rec {
     python3
   ] ++ lib.optionals withQt [
     qt6.wrapQtAppsHook
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
diff --git a/pkgs/applications/networking/station/default.nix b/pkgs/applications/networking/station/default.nix
index 9712de8fbe4a..b3235ba5154f 100644
--- a/pkgs/applications/networking/station/default.nix
+++ b/pkgs/applications/networking/station/default.nix
@@ -19,8 +19,6 @@ in appimageTools.wrapType2 rec {
     export LC_ALL=C.UTF-8
   '';
 
-  multiArch = false;
-  extraPkgs = appimageTools.defaultFhsEnvArgs.multiPkgs;
   extraInstallCommands = ''
     install -m 444 -D ${appimageContents}/browserx.desktop $out/share/applications/browserx.desktop
     install -m 444 -D ${appimageContents}/usr/share/icons/hicolor/512x512/apps/browserx.png \
diff --git a/pkgs/applications/networking/sync/lcsync/default.nix b/pkgs/applications/networking/sync/lcsync/default.nix
index 591a95fd008c..ac4731d8536a 100644
--- a/pkgs/applications/networking/sync/lcsync/default.nix
+++ b/pkgs/applications/networking/sync/lcsync/default.nix
@@ -8,14 +8,14 @@
 }:
 stdenv.mkDerivation (finalAttrs: {
   name = "lcsync";
-  version = "0.2.1";
+  version = "0.3.0";
 
   src = fetchFromGitea {
     domain = "codeberg.org";
     owner = "librecast";
     repo = "lcsync";
     rev = "v${finalAttrs.version}";
-    hash = "sha256-RVfa0EmCPPT7ndy94YwD24S9pj7L11ztISaKHGcbTS8=";
+    hash = "sha256-eiYbS/LYnM2ZjDHO9KhBp1rrovbhm+OVVfmLtjxAE+Y=";
   };
   buildInputs = [ lcrq librecast libsodium ];
   configureFlags = [ "SETCAP_PROGRAM=true" ];
diff --git a/pkgs/applications/networking/sync/rsync/configure.ac-fix-failing-IPv6-check.patch b/pkgs/applications/networking/sync/rsync/configure.ac-fix-failing-IPv6-check.patch
deleted file mode 100644
index 3305653d025f..000000000000
--- a/pkgs/applications/networking/sync/rsync/configure.ac-fix-failing-IPv6-check.patch
+++ /dev/null
@@ -1,12 +0,0 @@
-diff -rup rsync-3.2.7/configure.sh rsync-3.2.7-fixed/configure.sh
---- rsync-3.2.7/configure.sh	2022-10-20 17:57:22
-+++ rsync-3.2.7-fixed/configure.sh	2024-01-01 19:51:58
-@@ -7706,7 +7706,7 @@ else $as_nop
- #include <stdlib.h>
- #include <sys/types.h>
- #include <sys/socket.h>
--main()
-+int main()
- {
-    if (socket(AF_INET6, SOCK_STREAM, 0) < 0)
-      exit(1);
diff --git a/pkgs/applications/networking/sync/rsync/default.nix b/pkgs/applications/networking/sync/rsync/default.nix
index 8fb607979100..8846bea0a49b 100644
--- a/pkgs/applications/networking/sync/rsync/default.nix
+++ b/pkgs/applications/networking/sync/rsync/default.nix
@@ -20,24 +20,16 @@
 
 stdenv.mkDerivation rec {
   pname = "rsync";
-  version = "3.2.7";
+  version = "3.3.0";
 
   src = fetchurl {
     # signed with key 0048 C8B0 26D4 C96F 0E58  9C2F 6C85 9FB1 4B96 A8C5
     url = "mirror://samba/rsync/src/rsync-${version}.tar.gz";
-    sha256 = "sha256-Tn2dP27RCHjFjF+3JKZ9rPS2qsc0CxPkiPstxBNG8rs=";
+    hash = "sha256-c5nppnCMMtZ4pypjIZ6W8jvgviM25Q/RNISY0HBB35A=";
   };
 
   nativeBuildInputs = [ perl ];
 
-  patches = [
-    # https://github.com/WayneD/rsync/issues/511#issuecomment-1774612577
-    # original source: https://build.opensuse.org/package/view_file/network/rsync/rsync-fortified-strlcpy-fix.patch?expand=1&rev=3f8dd2f4a404c96c0f69176e60893714
-    ./rsync-fortified-strlcpy-fix.patch
-    # https://github.com/WayneD/rsync/pull/558
-    ./configure.ac-fix-failing-IPv6-check.patch
-  ];
-
   buildInputs = [ libiconv zlib popt ]
     ++ lib.optional enableACLs acl
     ++ lib.optional enableZstd zstd
diff --git a/pkgs/applications/networking/sync/rsync/rsync-fortified-strlcpy-fix.patch b/pkgs/applications/networking/sync/rsync/rsync-fortified-strlcpy-fix.patch
deleted file mode 100644
index 296445b4bb56..000000000000
--- a/pkgs/applications/networking/sync/rsync/rsync-fortified-strlcpy-fix.patch
+++ /dev/null
@@ -1,49 +0,0 @@
-From 1f83963f59960150e8c46112daa8411324c1f209 Mon Sep 17 00:00:00 2001
-From: Jiri Slaby <jslaby@suse.cz>
-Date: Fri, 18 Aug 2023 08:26:20 +0200
-Subject: [PATCH] exclude: fix crashes with fortified strlcpy()
-
-Fortified (-D_FORTIFY_SOURCE=2 for gcc) builds make strlcpy() crash when
-its third parameter (size) is larger than the buffer:
-  $ rsync -FFXHav '--filter=merge global-rsync-filter' Align-37-43/ xxx
-  sending incremental file list
-  *** buffer overflow detected ***: terminated
-
-It's in the exclude code in setup_merge_file():
-  strlcpy(y, save, MAXPATHLEN);
-
-Note the 'y' pointer was incremented, so it no longer points to memory
-with MAXPATHLEN "owned" bytes.
-
-Fix it by remembering the number of copied bytes into the 'save' buffer
-and use that instead of MAXPATHLEN which is clearly incorrect.
-
-Fixes #511.
----
- exclude.c | 5 +++--
- 1 file changed, 3 insertions(+), 2 deletions(-)
-
-diff --git a/exclude.c b/exclude.c
-index ffe55b167..1a5de3b9e 100644
---- a/exclude.c
-+++ b/exclude.c
-@@ -720,7 +720,8 @@ static BOOL setup_merge_file(int mergelist_num, filter_rule *ex,
- 	parent_dirscan = True;
- 	while (*y) {
- 		char save[MAXPATHLEN];
--		strlcpy(save, y, MAXPATHLEN);
-+		/* copylen is strlen(y) which is < MAXPATHLEN. +1 for \0 */
-+		size_t copylen = strlcpy(save, y, MAXPATHLEN) + 1;
- 		*y = '\0';
- 		dirbuf_len = y - dirbuf;
- 		strlcpy(x, ex->pattern, MAXPATHLEN - (x - buf));
-@@ -734,7 +735,7 @@ static BOOL setup_merge_file(int mergelist_num, filter_rule *ex,
- 			lp->head = NULL;
- 		}
- 		lp->tail = NULL;
--		strlcpy(y, save, MAXPATHLEN);
-+		strlcpy(y, save, copylen);
- 		while ((*x++ = *y++) != '/') {}
- 	}
- 	parent_dirscan = False;
-
diff --git a/pkgs/applications/networking/sync/storj-uplink/default.nix b/pkgs/applications/networking/sync/storj-uplink/default.nix
index 6ac38b50e835..8f10fa112e1f 100644
--- a/pkgs/applications/networking/sync/storj-uplink/default.nix
+++ b/pkgs/applications/networking/sync/storj-uplink/default.nix
@@ -5,18 +5,18 @@
 
 buildGoModule rec {
   pname = "storj-uplink";
-  version = "1.102.4";
+  version = "1.104.5";
 
   src = fetchFromGitHub {
     owner = "storj";
     repo = "storj";
     rev = "v${version}";
-    hash = "sha256-ryOWnVcJOUs9kToXtwjUTk7nwuAW0NCDn5Npn27hKXU=";
+    hash = "sha256-tzAArj813Hn/iH3LEsz1bytoOr2GfI5kyKZdXNgYwSE=";
   };
 
   subPackages = [ "cmd/uplink" ];
 
-  vendorHash = "sha256-atIb/SmOShLIhvEsTcegX7+xoDXN+SI5a7TQrXpqdUg=";
+  vendorHash = "sha256-Eo6JHcTcfC8zmKZh9sXrZ90RhIgdEBgTldIUnvNm8ms=";
 
   ldflags = [ "-s" "-w" ];
 
diff --git a/pkgs/applications/networking/syncplay/default.nix b/pkgs/applications/networking/syncplay/default.nix
index 36b6b5c14339..4321868a0d6d 100644
--- a/pkgs/applications/networking/syncplay/default.nix
+++ b/pkgs/applications/networking/syncplay/default.nix
@@ -2,7 +2,6 @@
 , stdenv
 , fetchFromGitHub
 , buildPythonApplication
-, fetchpatch
 , pem
 , pyside6
 , twisted
@@ -14,7 +13,7 @@
 
 buildPythonApplication rec {
   pname = "syncplay";
-  version = "1.7.0";
+  version = "1.7.2";
 
   format = "other";
 
@@ -22,15 +21,10 @@ buildPythonApplication rec {
     owner = "Syncplay";
     repo = "syncplay";
     rev = "v${version}";
-    sha256 = "sha256-Te81yOv3D6M6aMfC5XrM6/I6BlMdlY1yRk1RRJa9Mxg=";
+    sha256 = "sha256-PERPE6141LXmb8fmW17Vu54Unpf9vEK+ahm6q1byRTU=";
   };
 
   patches = [
-    (fetchpatch {
-      name = "fix-typeerror.patch";
-      url = "https://github.com/Syncplay/syncplay/commit/b62b038cdf58c54205987dfc52ebf228505ad03b.patch";
-      hash = "sha256-pSP33Qn1I+nJBW8T1E1tSJKRh5OnZMRsbU+jr5z4u7c=";
-    })
     ./trusted_certificates.patch
   ];
 
@@ -52,6 +46,6 @@ buildPythonApplication rec {
     description = "Free software that synchronises media players";
     license = licenses.asl20;
     platforms = platforms.linux ++ platforms.darwin;
-    maintainers = with maintainers; [ Enzime ];
+    maintainers = with maintainers; [ assistant Enzime ];
   };
 }
diff --git a/pkgs/applications/networking/syncthing/default.nix b/pkgs/applications/networking/syncthing/default.nix
index 99d2f65bf14c..2535675c6497 100644
--- a/pkgs/applications/networking/syncthing/default.nix
+++ b/pkgs/applications/networking/syncthing/default.nix
@@ -13,13 +13,13 @@ let
   common = { stname, target, postInstall ? "" }:
     buildGoModule rec {
       pname = stname;
-      version = "1.27.6";
+      version = "1.27.7";
 
       src = fetchFromGitHub {
         owner = "syncthing";
         repo = "syncthing";
         rev = "v${version}";
-        hash = "sha256-BZAje6dA3wmJ6feHWIYPPYTA3sp1WGwl4MjUJS7iZCo=";
+        hash = "sha256-Y/gwQfb3ShOsXsNLomtqUlmYaw7FQQ6IUN1fHSYOouQ=";
       };
 
       vendorHash = "sha256-xVSSFFTqU7jww8YTeXKfa3096c2FmEgkcXvuqFHb12E=";
diff --git a/pkgs/applications/networking/termius/default.nix b/pkgs/applications/networking/termius/default.nix
index deaa49e4f66d..0f16865ac8e3 100644
--- a/pkgs/applications/networking/termius/default.nix
+++ b/pkgs/applications/networking/termius/default.nix
@@ -9,7 +9,7 @@
 , libsecret
 , mesa
 , udev
-, wrapGAppsHook
+, wrapGAppsHook3
 }:
 
 stdenv.mkDerivation rec {
@@ -43,7 +43,7 @@ stdenv.mkDerivation rec {
   dontWrapGApps = true;
 
   # TODO: migrate off autoPatchelfHook and use nixpkgs' electron
-  nativeBuildInputs = [ autoPatchelfHook squashfsTools makeWrapper wrapGAppsHook ];
+  nativeBuildInputs = [ autoPatchelfHook squashfsTools makeWrapper wrapGAppsHook3 ];
 
   buildInputs = [
     alsa-lib
diff --git a/pkgs/applications/networking/trayscale/default.nix b/pkgs/applications/networking/trayscale/default.nix
index e5ab2e2a1a85..e6960e298713 100644
--- a/pkgs/applications/networking/trayscale/default.nix
+++ b/pkgs/applications/networking/trayscale/default.nix
@@ -11,16 +11,16 @@
 
 buildGoModule rec {
   pname = "trayscale";
-  version = "0.11.2";
+  version = "0.12.3";
 
   src = fetchFromGitHub {
     owner = "DeedleFake";
     repo = "trayscale";
     rev = "v${version}";
-    hash = "sha256-Og/ilxWNB5TNqnViZ5TeE0P+RxG1JOP2q9jo91SBNZQ=";
+    hash = "sha256-2mGPbH74a9d1uhRGMSEfrzCnwjgdgbopu20K9/g6wg0=";
   };
 
-  vendorHash = "sha256-eIakjEYfVp2wfXu0oqBmd5hJZTp0xgYKNNbtpRBnT2w=";
+  vendorHash = "sha256-Iedd8WsJPAVQexRqDSLAmv7MAWc4IFQXHk6XpnStMps=";
 
   subPackages = [ "cmd/trayscale" ];
 
@@ -50,7 +50,8 @@ buildGoModule rec {
     description = "An unofficial GUI wrapper around the Tailscale CLI client";
     homepage = "https://github.com/DeedleFake/trayscale";
     license = licenses.mit;
-    maintainers = [ ];
+    maintainers = with maintainers; [ patka ];
     mainProgram = "trayscale";
+    platforms = platforms.linux;
   };
 }
diff --git a/pkgs/applications/networking/upnp-router-control/default.nix b/pkgs/applications/networking/upnp-router-control/default.nix
index 761975a277bc..8991e66b7c24 100644
--- a/pkgs/applications/networking/upnp-router-control/default.nix
+++ b/pkgs/applications/networking/upnp-router-control/default.nix
@@ -6,7 +6,7 @@
 , meson
 , ninja
 , pkg-config
-, wrapGAppsHook
+, wrapGAppsHook3
 , gssdp_1_6
 , gtk3
 , gupnp_1_6
@@ -27,7 +27,7 @@ stdenv.mkDerivation (finalAttrs: {
     meson
     ninja
     pkg-config
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
diff --git a/pkgs/applications/networking/warp/default.nix b/pkgs/applications/networking/warp/default.nix
index 52994f63e18c..0861e72906db 100644
--- a/pkgs/applications/networking/warp/default.nix
+++ b/pkgs/applications/networking/warp/default.nix
@@ -15,20 +15,22 @@
 , glib
 , gtk4
 , libadwaita
+, zbar
+, gst_all_1
 , Security
 , Foundation
 }:
 
 stdenv.mkDerivation rec {
   pname = "warp";
-  version = "0.6.2";
+  version = "0.7.0";
 
   src = fetchFromGitLab {
     domain = "gitlab.gnome.org";
     owner = "World";
-    repo = pname;
+    repo = "warp";
     rev = "v${version}";
-    hash = "sha256-pntHIY0cScDKhWR6kXp6YrEbBQiQjUId3MrJzy5l+K8=";
+    hash = "sha256-GRxZ3y1PdJpBDnGCfmOmZgN8n1aaYf9IhyszRwo3MjQ=";
   };
 
   postPatch = ''
@@ -38,7 +40,7 @@ stdenv.mkDerivation rec {
   cargoDeps = rustPlatform.fetchCargoTarball {
     inherit src;
     name = "${pname}-${version}";
-    hash = "sha256-Go/a7aVHF1Yt3yIccKJIVeFy5rckXhSKfd13hdhlLUQ=";
+    hash = "sha256-v/MhVcQmMYD/n/8wmPCYUy4YpXhL0v4fq8h6cllo/pw=";
   };
 
   nativeBuildInputs = [
@@ -59,7 +61,12 @@ stdenv.mkDerivation rec {
     glib
     gtk4
     libadwaita
-  ] ++ lib.optionals stdenv.isDarwin [
+    zbar
+  ] ++ (with gst_all_1; [
+    gstreamer
+    gst-plugins-base
+    gst-plugins-bad
+  ]) ++ lib.optionals stdenv.isDarwin [
     Security
     Foundation
   ];
diff --git a/pkgs/applications/networking/weather/meteo/default.nix b/pkgs/applications/networking/weather/meteo/default.nix
index 9b64e8e6c1cb..9914f664d0b0 100644
--- a/pkgs/applications/networking/weather/meteo/default.nix
+++ b/pkgs/applications/networking/weather/meteo/default.nix
@@ -9,8 +9,9 @@
 , pkg-config
 , python3
 , vala
-, wrapGAppsHook
+, wrapGAppsHook3
 , glib
+, glib-networking
 , gtk3
 , json-glib
 , libappindicator
@@ -37,11 +38,12 @@ stdenv.mkDerivation rec {
     pkg-config
     python3
     vala
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
     glib
+    glib-networking # see #311066
     gtk3
     json-glib
     libappindicator
diff --git a/pkgs/applications/networking/wgnord/default.nix b/pkgs/applications/networking/wgnord/default.nix
index 0e73d07616a7..e7a34522a10d 100644
--- a/pkgs/applications/networking/wgnord/default.nix
+++ b/pkgs/applications/networking/wgnord/default.nix
@@ -62,5 +62,6 @@ resholve.mkDerivation rec {
     maintainers = with lib.maintainers; [ urandom ];
     license = licenses.mit;
     mainProgram = "wgnord";
+    platforms = platforms.linux;
   };
 }
diff --git a/pkgs/applications/networking/xpipe/default.nix b/pkgs/applications/networking/xpipe/default.nix
index c986b4a62455..00329886b299 100644
--- a/pkgs/applications/networking/xpipe/default.nix
+++ b/pkgs/applications/networking/xpipe/default.nix
@@ -33,14 +33,14 @@ let
   }.${system} or throwSystem;
 
   hash = {
-    x86_64-linux = "sha256-3KMmMDoaYYMKuuqLof/LfdCs1d4I70L2TDxmzvx4Vq0=";
+    x86_64-linux = "sha256-yz8D40ckr6oydlY6+kjQqXtWQ6Q+ZmGQccNVBFbW3/k=";
   }.${system} or throwSystem;
 
   displayname = "XPipe";
 
 in stdenvNoCC.mkDerivation rec {
   pname = "xpipe";
-  version = "9.0";
+  version = "9.2";
 
   src = fetchzip {
     url = "https://github.com/xpipe-io/xpipe/releases/download/${version}/xpipe-portable-linux-${arch}.tar.gz";
diff --git a/pkgs/applications/networking/yaup/default.nix b/pkgs/applications/networking/yaup/default.nix
index cc6ba09076cd..f3854cecd6a8 100644
--- a/pkgs/applications/networking/yaup/default.nix
+++ b/pkgs/applications/networking/yaup/default.nix
@@ -3,7 +3,7 @@
 , fetchFromGitHub
 , intltool
 , pkg-config
-, wrapGAppsHook
+, wrapGAppsHook3
 , gtk3
 , miniupnpc
 }:
@@ -22,7 +22,7 @@ stdenv.mkDerivation {
   nativeBuildInputs = [
     intltool
     pkg-config
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
diff --git a/pkgs/applications/office/abiword/default.nix b/pkgs/applications/office/abiword/default.nix
index 0ca18f8e360b..d03b60da6e73 100644
--- a/pkgs/applications/office/abiword/default.nix
+++ b/pkgs/applications/office/abiword/default.nix
@@ -17,7 +17,7 @@
 , boost
 , libxslt
 , goffice
-, wrapGAppsHook
+, wrapGAppsHook3
 }:
 
 stdenv.mkDerivation rec {
@@ -39,7 +39,7 @@ stdenv.mkDerivation rec {
 
   nativeBuildInputs = [
     pkg-config
-    wrapGAppsHook
+    wrapGAppsHook3
     perl
   ];
 
diff --git a/pkgs/applications/office/agenda/default.nix b/pkgs/applications/office/agenda/default.nix
index bcffa8ebf788..8957df0bad19 100644
--- a/pkgs/applications/office/agenda/default.nix
+++ b/pkgs/applications/office/agenda/default.nix
@@ -11,7 +11,7 @@
 , glib
 , gtk3
 , libgee
-, wrapGAppsHook
+, wrapGAppsHook3
 }:
 
 stdenv.mkDerivation rec {
@@ -33,7 +33,7 @@ stdenv.mkDerivation rec {
     pkg-config
     python3
     vala
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
diff --git a/pkgs/applications/office/appflowy/default.nix b/pkgs/applications/office/appflowy/default.nix
index 33783ed01b4b..8db8b3fbb791 100644
--- a/pkgs/applications/office/appflowy/default.nix
+++ b/pkgs/applications/office/appflowy/default.nix
@@ -13,11 +13,11 @@
 
 stdenv.mkDerivation rec {
   pname = "appflowy";
-  version = "0.5.5";
+  version = "0.5.7";
 
   src = fetchzip {
     url = "https://github.com/AppFlowy-IO/appflowy/releases/download/${version}/AppFlowy-${version}-linux-x86_64.tar.gz";
-    hash = "sha256-sDA//ARuzU0q2V3jhFXGhaQaeF0jsDRbtdHCBTgIL8U=";
+    hash = "sha256-SVtAx/yllHugBys506pT/5n6IDEZvPEeCHRjFHLMZ0A=";
     stripRoot = false;
   };
 
diff --git a/pkgs/applications/office/autokey/default.nix b/pkgs/applications/office/autokey/default.nix
index af8ceeb4b7be..d05c83cb1999 100644
--- a/pkgs/applications/office/autokey/default.nix
+++ b/pkgs/applications/office/autokey/default.nix
@@ -1,7 +1,7 @@
 { lib
 , python3Packages
 , fetchFromGitHub
-, wrapGAppsHook
+, wrapGAppsHook3
 , gobject-introspection
 , gtksourceview3
 , libappindicator-gtk3
@@ -24,7 +24,7 @@ python3Packages.buildPythonApplication rec {
   # Tests appear to be broken with import errors within the project structure
   doCheck = false;
 
-  nativeBuildInputs = [ wrapGAppsHook gobject-introspection ];
+  nativeBuildInputs = [ wrapGAppsHook3 gobject-introspection ];
 
   buildInputs = [
     gtksourceview3
diff --git a/pkgs/applications/office/banana-accounting/default.nix b/pkgs/applications/office/banana-accounting/default.nix
index e1c5f7fdeb40..a0213e05f60c 100644
--- a/pkgs/applications/office/banana-accounting/default.nix
+++ b/pkgs/applications/office/banana-accounting/default.nix
@@ -10,7 +10,7 @@
 , lib
 , stdenv
 , libgcrypt
-, wrapGAppsHook
+, wrapGAppsHook3
 }:
 
 stdenv.mkDerivation {
@@ -40,7 +40,7 @@ stdenv.mkDerivation {
 
   nativeBuildInputs = [
     autoPatchelfHook
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   installPhase = ''
diff --git a/pkgs/applications/office/beamerpresenter/default.nix b/pkgs/applications/office/beamerpresenter/default.nix
index c3e080ad3d52..65fe907c2766 100644
--- a/pkgs/applications/office/beamerpresenter/default.nix
+++ b/pkgs/applications/office/beamerpresenter/default.nix
@@ -3,7 +3,7 @@
 , fetchFromGitHub
 , cmake
 , pkg-config
-, wrapGAppsHook
+, wrapGAppsHook3
 , wrapQtAppsHook
 , gst_all_1
 , qtbase
@@ -40,7 +40,7 @@ stdenv.mkDerivation rec {
   nativeBuildInputs = [
     cmake
     pkg-config
-    wrapGAppsHook
+    wrapGAppsHook3
     wrapQtAppsHook
   ];
 
diff --git a/pkgs/applications/office/bookworm/default.nix b/pkgs/applications/office/bookworm/default.nix
index 13d3c46c946d..c64c3389d95d 100644
--- a/pkgs/applications/office/bookworm/default.nix
+++ b/pkgs/applications/office/bookworm/default.nix
@@ -24,7 +24,7 @@
 , unzip
 , vala
 , webkitgtk
-, wrapGAppsHook
+, wrapGAppsHook3
 }:
 
 stdenv.mkDerivation rec {
@@ -43,7 +43,7 @@ stdenv.mkDerivation rec {
     ninja
     pkg-config
     vala
-    wrapGAppsHook
+    wrapGAppsHook3
     gobject-introspection
   ];
 
diff --git a/pkgs/applications/office/clockify/default.nix b/pkgs/applications/office/clockify/default.nix
index 7b2faa6b7d20..6acb243acec7 100644
--- a/pkgs/applications/office/clockify/default.nix
+++ b/pkgs/applications/office/clockify/default.nix
@@ -14,8 +14,6 @@ appimageTools.wrapType2 rec {
   extraInstallCommands =
     let appimageContents = appimageTools.extract { inherit pname version src; };
     in ''
-      mv $out/bin/${pname}-${version} $out/bin/${pname}
-
       install -Dm 444 ${appimageContents}/clockify.desktop -t $out/share/applications
       install -Dm 444 ${appimageContents}/clockify.png -t $out/share/pixmaps
 
diff --git a/pkgs/applications/office/gnote/default.nix b/pkgs/applications/office/gnote/default.nix
index 0d8c1d280396..a4262de9937f 100644
--- a/pkgs/applications/office/gnote/default.nix
+++ b/pkgs/applications/office/gnote/default.nix
@@ -5,6 +5,7 @@
 , gettext
 , gtkmm4
 , itstool
+, libadwaita
 , libsecret
 , libuuid
 , libxml2
@@ -18,15 +19,16 @@
 
 stdenv.mkDerivation rec {
   pname = "gnote";
-  version = "45.1";
+  version = "46.0";
 
   src = fetchurl {
     url = "mirror://gnome/sources/${pname}/${lib.versions.major version}/${pname}-${version}.tar.xz";
-    hash = "sha256-nuwn+MsKENL9uRSkUei4QYwmDni/BzYHgaeKXkGM+UE=";
+    hash = "sha256-ht9YoVlbIVN0aRq0S/wWE7Sf28p3CEI6PVZY3NOgFe0=";
   };
 
   buildInputs = [
     gtkmm4
+    libadwaita
     libsecret
     libuuid
     libxml2
diff --git a/pkgs/applications/office/gnucash/0005-disable-test-lots.patch b/pkgs/applications/office/gnucash/0005-disable-test-lots.patch
new file mode 100644
index 000000000000..c7418b7b88b9
--- /dev/null
+++ b/pkgs/applications/office/gnucash/0005-disable-test-lots.patch
@@ -0,0 +1,11 @@
+--- a/libgnucash/engine/test/CMakeLists.txt	2024-02-23 09:05:19.000000000 +0900
++++ b/libgnucash/engine/test/CMakeLists.txt	2024-05-08 22:08:04.572060359 +0900
+@@ -57,7 +57,6 @@
+ 
+ add_engine_test(test-account-object test-account-object.cpp)
+ add_engine_test(test-group-vs-book test-group-vs-book.cpp)
+-add_engine_test(test-lots test-lots.cpp)
+ add_engine_test(test-querynew test-querynew.c)
+ add_engine_test(test-query test-query.cpp)
+ add_engine_test(test-split-vs-account test-split-vs-account.cpp)
+
diff --git a/pkgs/applications/office/gnucash/default.nix b/pkgs/applications/office/gnucash/default.nix
index da94f9674ca2..8d86d771d0aa 100644
--- a/pkgs/applications/office/gnucash/default.nix
+++ b/pkgs/applications/office/gnucash/default.nix
@@ -23,7 +23,7 @@
 , pkg-config
 , swig
 , webkitgtk
-, wrapGAppsHook
+, wrapGAppsHook3
 }:
 
 stdenv.mkDerivation rec {
@@ -40,7 +40,7 @@ stdenv.mkDerivation rec {
     cmake
     gettext
     makeWrapper
-    wrapGAppsHook
+    wrapGAppsHook3
     pkg-config
   ];
 
@@ -76,6 +76,15 @@ stdenv.mkDerivation rec {
     ./0003-remove-valgrind.patch
     # this patch makes gnucash exec the Finance::Quote wrapper directly
     ./0004-exec-fq-wrapper.patch
+    # this patch disables a flaky test
+    # see https://bugs.gnucash.org/show_bug.cgi?id=799289
+    ./0005-disable-test-lots.patch
+    # Fix importing QIF by backporting a fix. remove on next release
+    # https://bugs.gnucash.org/show_bug.cgi?id=799262
+    (fetchpatch {
+      url = "https://github.com/Gnucash/gnucash/commit/b33b864c2fa0ba72d1940465e7fa962dd36833c9.patch";
+      hash = "sha256-A8pYW6CcNFBGC/MDijnuFJdlNAzSDS6Tcj+haCcEI/M=";
+    })
   ];
 
   # this needs to be an environment variable and not a cmake flag to suppress
@@ -117,11 +126,11 @@ stdenv.mkDerivation rec {
     )
   '';
 
-  # wrapGAppsHook would wrap all binaries including the cli utils which need
+  # wrapGAppsHook3 would wrap all binaries including the cli utils which need
   # Perl wrapping
   dontWrapGApps = true;
 
-  # gnucash is wrapped using the args constructed for wrapGAppsHook.
+  # gnucash is wrapped using the args constructed for wrapGAppsHook3.
   # gnc-fq-* are cli utils written in Perl hence the extra wrapping
   postFixup = ''
     wrapProgram $out/bin/gnucash "''${gappsWrapperArgs[@]}"
diff --git a/pkgs/applications/office/gnumeric/default.nix b/pkgs/applications/office/gnumeric/default.nix
index 7e351afadf53..a3c16d5d86fe 100644
--- a/pkgs/applications/office/gnumeric/default.nix
+++ b/pkgs/applications/office/gnumeric/default.nix
@@ -1,5 +1,5 @@
 { lib, stdenv, fetchurl, pkg-config, intltool, perlPackages
-, goffice, gnome, wrapGAppsHook, gtk3, bison, python3Packages
+, goffice, gnome, wrapGAppsHook3, gtk3, bison, python3Packages
 , itstool
 }:
 
@@ -16,7 +16,7 @@ in stdenv.mkDerivation rec {
 
   configureFlags = [ "--disable-component" ];
 
-  nativeBuildInputs = [ pkg-config intltool bison itstool wrapGAppsHook ];
+  nativeBuildInputs = [ pkg-config intltool bison itstool wrapGAppsHook3 ];
 
   # ToDo: optional libgda, introspection?
   buildInputs = [
diff --git a/pkgs/applications/office/grisbi/default.nix b/pkgs/applications/office/grisbi/default.nix
index b0242fc4ae43..586777ccf41e 100644
--- a/pkgs/applications/office/grisbi/default.nix
+++ b/pkgs/applications/office/grisbi/default.nix
@@ -5,7 +5,7 @@
 , libgsf
 , libofx
 , intltool
-, wrapGAppsHook
+, wrapGAppsHook3
 , libsoup
 , gnome
 }:
@@ -19,7 +19,7 @@ stdenv.mkDerivation rec {
     sha256 = "sha256-vTrbq/xLTfwF7/YtKzZFiiSw8A0HzzWin2ry8gPHej8=";
   };
 
-  nativeBuildInputs = [ pkg-config wrapGAppsHook intltool ];
+  nativeBuildInputs = [ pkg-config wrapGAppsHook3 intltool ];
   buildInputs = [
     gtk
     libgsf
diff --git a/pkgs/applications/office/gtg/default.nix b/pkgs/applications/office/gtg/default.nix
index 18ccdf2db26e..39c4353cb72c 100644
--- a/pkgs/applications/office/gtg/default.nix
+++ b/pkgs/applications/office/gtg/default.nix
@@ -5,7 +5,7 @@
 , python3Packages
 , ninja
 , gtk3
-, wrapGAppsHook
+, wrapGAppsHook3
 , glib
 , gtksourceview4
 , itstool
@@ -33,7 +33,7 @@ python3Packages.buildPythonApplication rec {
     ninja
     itstool
     gettext
-    wrapGAppsHook
+    wrapGAppsHook3
     gobject-introspection
   ];
 
diff --git a/pkgs/applications/office/homebank/default.nix b/pkgs/applications/office/homebank/default.nix
index 023a5729ed80..0e9531b61d28 100644
--- a/pkgs/applications/office/homebank/default.nix
+++ b/pkgs/applications/office/homebank/default.nix
@@ -1,15 +1,15 @@
-{ fetchurl, lib, stdenv, gtk, pkg-config, libofx, intltool, wrapGAppsHook
+{ fetchurl, lib, stdenv, gtk, pkg-config, libofx, intltool, wrapGAppsHook3
 , libsoup_3, gnome }:
 
 stdenv.mkDerivation rec {
   pname = "homebank";
-  version = "5.7.4";
+  version = "5.8";
   src = fetchurl {
     url = "https://www.gethomebank.org/public/sources/homebank-${version}.tar.gz";
-    hash = "sha256-Qs5xRsh16gyjyTORtqm/RxTbRiHGP0oJTcxviYW7VOQ=";
+    hash = "sha256-tgjcz4znnw++5lBoJDWtHKpRFENfM0xBpyhGf8nAACw=";
   };
 
-  nativeBuildInputs = [ pkg-config wrapGAppsHook intltool ];
+  nativeBuildInputs = [ pkg-config wrapGAppsHook3 intltool ];
   buildInputs = [ gtk libofx libsoup_3 gnome.adwaita-icon-theme];
 
   meta = with lib; {
diff --git a/pkgs/applications/office/jabref/default.nix b/pkgs/applications/office/jabref/default.nix
index 282e62584cff..286ab63cbd0a 100644
--- a/pkgs/applications/office/jabref/default.nix
+++ b/pkgs/applications/office/jabref/default.nix
@@ -1,8 +1,7 @@
 { lib
 , stdenv
-, fetchurl
 , fetchFromGitHub
-, wrapGAppsHook
+, wrapGAppsHook3
 , makeDesktopItem
 , copyDesktopItems
 , unzip
@@ -21,20 +20,16 @@ let
       pin = "2.2.1-20230117.075740-16";
     };
   };
-  jackson-datatype-jsr310 = fetchurl {
-    url = "https://repo1.maven.org/maven2/com/fasterxml/jackson/datatype/jackson-datatype-jsr310/2.15.3/jackson-datatype-jsr310-2.15.3.jar";
-    hash = "sha256-vqHXgAnrxOXVSRij967F2p+9CfZiwZGiF//PN+hSfF4=";
-  };
 in
 stdenv.mkDerivation rec {
-  version = "5.12";
+  version = "5.13";
   pname = "jabref";
 
   src = fetchFromGitHub {
     owner = "JabRef";
     repo = "jabref";
     rev = "v${version}";
-    hash = "sha256-+ltd9hItmMkEpKzX6TFfFy5fiOkLBK/tQNsh8OVDeoc=";
+    hash = "sha256-inE2FXAaEEiq7343KwtjEiTEHLtn01AzP0foTpsLoAw=";
     fetchSubmodules = true;
   };
 
@@ -47,7 +42,7 @@ stdenv.mkDerivation rec {
       categories = [ "Office" ];
       icon = "jabref";
       exec = "JabRef %U";
-      startupWMClass = "org.jabref.gui.JabRefMain";
+      startupWMClass = "org.jabref.gui.JabRefGUI";
       mimeTypes = [ "text/x-bibtex" ];
     })
   ];
@@ -69,13 +64,11 @@ stdenv.mkDerivation rec {
         | sh
       mv $out/com/tobiasdiez/easybind/${versionReplace.easybind.pin} \
         $out/com/tobiasdiez/easybind/${versionReplace.easybind.snapshot}
-      # This is used but not cached by Gradle.
-      cp ${jackson-datatype-jsr310} $out/com/fasterxml/jackson/datatype/jackson-datatype-jsr310/2.15.3/jackson-datatype-jsr310-2.15.3.jar
     '';
     # Don't move info to share/
     forceShare = [ "dummy" ];
     outputHashMode = "recursive";
-    outputHash = "sha256-baP/zNgcc6oYwwbWvT7ontULcKKCw0rTQRkdZMgcWfY=";
+    outputHash = "sha256-lpFIhvPgkzIsHR6IVnn+oPhdSjo0yOIw7USo2+SJCVQ=";
   };
 
   postPatch = ''
@@ -93,9 +86,6 @@ stdenv.mkDerivation rec {
     substituteInPlace src/main/java/org/jabref/logic/openoffice/OpenOfficePreferences.java \
       --replace '/usr' '/run/current-system/sw'
 
-    # Don't fetch predatory sources. These source are fetched from online webpages.
-    sed -i -e '/new PJSource/,/);/c);' src/main/java/org/jabref/logic/journals/predatory/PredatoryJournalListCrawler.java
-
     # Add back downloadDependencies task for deps download which is removed upstream in https://github.com/JabRef/jabref/pull/10326
     cat <<EOF >> build.gradle
     task downloadDependencies {
@@ -117,15 +107,14 @@ stdenv.mkDerivation rec {
 
   preBuild = ''
     # Use the local packages from -deps
-    sed -i -e '/repositories {/a maven { url uri("${deps}") }' \
-      build.gradle \
-      settings.gradle
+    sed -i -e '/repositories {/a maven { url uri("${deps}") }' build.gradle
+    sed -i -e '1i pluginManagement { repositories { maven { url uri("${deps}") } } }' settings.gradle
   '';
 
   nativeBuildInputs = [
     jdk
     gradle
-    wrapGAppsHook
+    wrapGAppsHook3
     copyDesktopItems
     unzip
   ];
@@ -170,9 +159,6 @@ stdenv.mkDerivation rec {
 
     tar xf build/distributions/JabRef-${version}.tar -C $out --strip-components=1
 
-    # workaround for https://github.com/NixOS/nixpkgs/issues/162064
-    unzip $out/lib/javafx-web-*-*.jar libjfxwebkit.so -d $out/lib/
-
     DEFAULT_JVM_OPTS=$(sed -n -E "s/^DEFAULT_JVM_OPTS='(.*)'$/\1/p" $out/bin/JabRef | sed -e "s|\$APP_HOME|$out|g" -e 's/"//g')
 
     runHook postInstall
diff --git a/pkgs/applications/office/jameica/default.nix b/pkgs/applications/office/jameica/default.nix
index 66d2a80c5555..f87eaf6d9e4d 100644
--- a/pkgs/applications/office/jameica/default.nix
+++ b/pkgs/applications/office/jameica/default.nix
@@ -3,7 +3,7 @@
 , fetchFromGitHub
 , makeDesktopItem
 , makeWrapper
-, wrapGAppsHook
+, wrapGAppsHook3
 , stripJavaArchivesHook
 , ant
 , jdk
@@ -47,7 +47,7 @@ stdenv.mkDerivation rec {
     hash = "sha256-MSVSd5DyVL+dcfTDv1M99hxickPwT2Pt6QGNsu6DGZI=";
   };
 
-  nativeBuildInputs = [ ant jdk wrapGAppsHook makeWrapper stripJavaArchivesHook ];
+  nativeBuildInputs = [ ant jdk wrapGAppsHook3 makeWrapper stripJavaArchivesHook ];
   buildInputs = lib.optionals stdenv.isLinux [ gtk2 glib libXtst ]
     ++ lib.optional stdenv.isDarwin Cocoa;
 
diff --git a/pkgs/applications/office/libreoffice/wrapper.nix b/pkgs/applications/office/libreoffice/wrapper.nix
index 2f3927146f80..013a2ee5575e 100644
--- a/pkgs/applications/office/libreoffice/wrapper.nix
+++ b/pkgs/applications/office/libreoffice/wrapper.nix
@@ -6,7 +6,7 @@
 , xorg # for lndir
 , runCommand
 , substituteAll
-# For Emulating wrapGAppsHook
+# For Emulating wrapGAppsHook3
 , gsettings-desktop-schemas
 , hicolor-icon-theme
 , dconf
diff --git a/pkgs/applications/office/mendeley/default.nix b/pkgs/applications/office/mendeley/default.nix
index c8ea46d0978e..38c4fdb78cd8 100644
--- a/pkgs/applications/office/mendeley/default.nix
+++ b/pkgs/applications/office/mendeley/default.nix
@@ -7,13 +7,13 @@
 
 let
   pname = "mendeley";
-  version = "2.111.0";
+  version = "2.114.1";
 
   executableName = "${pname}-reference-manager";
 
   src = fetchurl {
     url = "https://static.mendeley.com/bin/desktop/mendeley-reference-manager-${version}-x86_64.AppImage";
-    hash = "sha256-tN76RKHETTMkJ239I6+a36RPTuWqYlCSs+tEP+BcB+M=";
+    hash = "sha256-bvX5onyTPc4G+9PcrSXhsfkNbU6DZ5T3ljf+r77bjKw=";
   };
 
   appimageContents = appimageTools.extractType2 {
diff --git a/pkgs/applications/office/mmex/default.nix b/pkgs/applications/office/mmex/default.nix
index e1f39e8964c5..c4508df84b7b 100644
--- a/pkgs/applications/office/mmex/default.nix
+++ b/pkgs/applications/office/mmex/default.nix
@@ -7,7 +7,7 @@
 , makeWrapper
 , lsb-release
 , pkg-config
-, wrapGAppsHook
+, wrapGAppsHook3
 , curl
 , sqlite
 , wxGTK32
@@ -41,7 +41,7 @@ stdenv.mkDerivation rec {
     git
     makeWrapper
     pkg-config
-    wrapGAppsHook
+    wrapGAppsHook3
   ] ++ lib.optionals stdenv.isLinux [
     lsb-release
   ];
diff --git a/pkgs/applications/office/morgen/default.nix b/pkgs/applications/office/morgen/default.nix
index a77655588464..9b80a93a70cb 100644
--- a/pkgs/applications/office/morgen/default.nix
+++ b/pkgs/applications/office/morgen/default.nix
@@ -3,11 +3,11 @@
 
 stdenv.mkDerivation rec {
   pname = "morgen";
-  version = "3.2.2";
+  version = "3.4.1";
 
   src = fetchurl {
     url = "https://dl.todesktop.com/210203cqcj00tw1/versions/${version}/linux/deb";
-    hash = "sha256-+VvQM851uWoMXV3hwuVSlK9IqiNjh57uq8Wlwl/VvPg=";
+    hash = "sha256-GwvfnFQbeLiJHHiO0QpfPLdflUXe/q/QEsRVaF/3c4c=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/applications/office/notes-up/default.nix b/pkgs/applications/office/notes-up/default.nix
index ca1f1c15952a..4bc6060cfa6b 100644
--- a/pkgs/applications/office/notes-up/default.nix
+++ b/pkgs/applications/office/notes-up/default.nix
@@ -8,7 +8,7 @@
 , pkg-config
 , python3
 , vala
-, wrapGAppsHook
+, wrapGAppsHook3
 , discount
 , glib
 , gtk3
@@ -38,7 +38,7 @@ stdenv.mkDerivation rec {
     pkg-config
     python3
     vala
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
diff --git a/pkgs/applications/office/osmo/default.nix b/pkgs/applications/office/osmo/default.nix
index 8f73d9c6b2e8..7dc7444379cc 100644
--- a/pkgs/applications/office/osmo/default.nix
+++ b/pkgs/applications/office/osmo/default.nix
@@ -1,5 +1,5 @@
 { lib, stdenv, fetchurl, pkg-config, gtk3, libxml2, gettext, libical, libnotify
-, libarchive, gspell, webkitgtk, libgringotts, wrapGAppsHook }:
+, libarchive, gspell, webkitgtk, libgringotts, wrapGAppsHook3 }:
 
 stdenv.mkDerivation rec {
   pname = "osmo";
@@ -10,7 +10,7 @@ stdenv.mkDerivation rec {
     sha256 = "19h3dnjgqbawnvgnycyp4n5b6mjsp5zghn3b69b6f3xa3fyi32qy";
   };
 
-  nativeBuildInputs = [ pkg-config gettext wrapGAppsHook ];
+  nativeBuildInputs = [ pkg-config gettext wrapGAppsHook3 ];
   buildInputs = [ gtk3 libxml2 libical libnotify libarchive
     gspell webkitgtk libgringotts ];
 
diff --git a/pkgs/applications/office/paperless-ngx/default.nix b/pkgs/applications/office/paperless-ngx/default.nix
index 554aeb588ef7..554e86664f1b 100644
--- a/pkgs/applications/office/paperless-ngx/default.nix
+++ b/pkgs/applications/office/paperless-ngx/default.nix
@@ -24,13 +24,13 @@
 }:
 
 let
-  version = "2.7.2";
+  version = "2.8.6";
 
   src = fetchFromGitHub {
     owner = "paperless-ngx";
     repo = "paperless-ngx";
     rev = "refs/tags/v${version}";
-    hash = "sha256-vXW2d45Mth3Y95xPPH8bFjVLWVdUl+WuvSXJyPD3FyU=";
+    hash = "sha256-Jcy/nds/JuivRV8mRtq2FbBB2L/CGqmoHoG1wVCwHFU=";
   };
 
   # subpath installation is broken with uvicorn >= 0.26
@@ -74,7 +74,7 @@ let
       cd src-ui
     '';
 
-    npmDepsHash = "sha256-MJ5pnQChghZBfVN6Lbz6VcMtbe8QadiFLTsMF5TlebQ=";
+    npmDepsHash = "sha256-xRUZnFekzWHPtlUbpt0JZmlNjdjS1bBZDz8MmH8DC2U=";
 
     nativeBuildInputs = [
       pkg-config
@@ -190,6 +190,8 @@ python.pkgs.buildPythonApplication rec {
   installPhase = let
     pythonPath = python.pkgs.makePythonPath propagatedBuildInputs;
   in ''
+    runHook preInstall
+
     mkdir -p $out/lib/paperless-ngx
     cp -r {src,static,LICENSE,gunicorn.conf.py} $out/lib/paperless-ngx
     ln -s ${frontend}/lib/paperless-ui/frontend $out/lib/paperless-ngx/static/
@@ -200,6 +202,8 @@ python.pkgs.buildPythonApplication rec {
     makeWrapper ${python.pkgs.celery}/bin/celery $out/bin/celery \
       --prefix PYTHONPATH : "${pythonPath}:$out/lib/paperless-ngx/src" \
       --prefix PATH : "${path}"
+
+    runHook postInstall
   '';
 
   postFixup = ''
@@ -240,6 +244,7 @@ python.pkgs.buildPythonApplication rec {
   disabledTests = [
     # FileNotFoundError(2, 'No such file or directory'): /build/tmp...
     "test_script_with_output"
+    "test_script_exit_non_zero"
     # AssertionError: 10 != 4 (timezone/time issue)
     # Due to getting local time from modification date in test_consumer.py
     "testNormalOperation"
diff --git a/pkgs/applications/office/paperwork/paperwork-gtk.nix b/pkgs/applications/office/paperwork/paperwork-gtk.nix
index e783e8f4966f..9e6beb5053a4 100644
--- a/pkgs/applications/office/paperwork/paperwork-gtk.nix
+++ b/pkgs/applications/office/paperwork/paperwork-gtk.nix
@@ -7,7 +7,7 @@
 , xvfb-run
 , dbus
 , libnotify
-, wrapGAppsHook
+, wrapGAppsHook3
 , fetchFromGitLab
 , which
 , gettext
@@ -80,7 +80,7 @@ python3Packages.buildPythonApplication rec {
   nativeCheckInputs = [ dbus ];
 
   nativeBuildInputs = [
-    wrapGAppsHook
+    wrapGAppsHook3
     gobject-introspection
     python3Packages.setuptools-scm
     (lib.getBin gettext)
diff --git a/pkgs/applications/office/planify/default.nix b/pkgs/applications/office/planify/default.nix
index 595b12bf9ab2..8d4c079753ca 100644
--- a/pkgs/applications/office/planify/default.nix
+++ b/pkgs/applications/office/planify/default.nix
@@ -10,6 +10,7 @@
 , evolution-data-server
 , glib
 , glib-networking
+, gst_all_1
 , gtk4
 , gtksourceview5
 , gxml
@@ -27,13 +28,13 @@
 
 stdenv.mkDerivation rec {
   pname = "planify";
-  version = "4.7";
+  version = "4.7.2";
 
   src = fetchFromGitHub {
     owner = "alainm23";
     repo = "planify";
     rev = version;
-    hash = "sha256-5hiVTU1w3Rk/BdxYwDB0Y+EZFnSAaEWtx19IB1ak1yY=";
+    hash = "sha256-G0A3U0TUGL4RT1wpIXw/cIwDDlaLCPpo5QG6bJfoIYc=";
   };
 
   nativeBuildInputs = [
@@ -49,6 +50,9 @@ stdenv.mkDerivation rec {
     evolution-data-server
     glib
     glib-networking
+    # Needed for GtkMediaStream creation with success.ogg, see #311295.
+    gst_all_1.gst-plugins-base
+    gst_all_1.gst-plugins-good
     gtk4
     gtksourceview5
     gxml
diff --git a/pkgs/applications/office/portfolio/default.nix b/pkgs/applications/office/portfolio/default.nix
index a7b583518490..c320729ee9ee 100644
--- a/pkgs/applications/office/portfolio/default.nix
+++ b/pkgs/applications/office/portfolio/default.nix
@@ -10,7 +10,7 @@
 , libsecret
 , makeDesktopItem
 , webkitgtk
-, wrapGAppsHook
+, wrapGAppsHook3
 , writeScript
 }:
 let
@@ -36,7 +36,7 @@ stdenv.mkDerivation rec {
 
   nativeBuildInputs = [
     autoPatchelfHook
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
diff --git a/pkgs/applications/office/pympress/default.nix b/pkgs/applications/office/pympress/default.nix
index 353e46e067da..eb28bf2dfd92 100644
--- a/pkgs/applications/office/pympress/default.nix
+++ b/pkgs/applications/office/pympress/default.nix
@@ -2,7 +2,7 @@
 , stdenv
 , python3Packages
 , fetchPypi
-, wrapGAppsHook
+, wrapGAppsHook3
 , gtk3
 , gobject-introspection
 , libcanberra-gtk3
@@ -22,7 +22,7 @@ python3Packages.buildPythonApplication rec {
   };
 
   nativeBuildInputs = [
-    wrapGAppsHook
+    wrapGAppsHook3
     gobject-introspection
   ];
 
diff --git a/pkgs/applications/office/qownnotes/default.nix b/pkgs/applications/office/qownnotes/default.nix
index 0ff43b584bea..ba0b4c31cdd5 100644
--- a/pkgs/applications/office/qownnotes/default.nix
+++ b/pkgs/applications/office/qownnotes/default.nix
@@ -21,14 +21,14 @@
 let
   pname = "qownnotes";
   appname = "QOwnNotes";
-  version = "24.4.4";
+  version = "24.5.2";
 in
 stdenv.mkDerivation {
   inherit pname version;
 
   src = fetchurl {
     url = "https://github.com/pbek/QOwnNotes/releases/download/v${version}/qownnotes-${version}.tar.xz";
-    hash = "sha256-nTRCW76UogaTOyxQ5HfWUln6Lip/LpoyPG+m+mMCb1I=";
+    hash = "sha256-jfkTCLXHLqKub6I+p4WVXiPFojVdZkCOMz02tUQOCos=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/applications/office/spice-up/default.nix b/pkgs/applications/office/spice-up/default.nix
index 93376ed2922b..f8a7f3a7c268 100644
--- a/pkgs/applications/office/spice-up/default.nix
+++ b/pkgs/applications/office/spice-up/default.nix
@@ -7,7 +7,7 @@
 , pkg-config
 , python3
 , vala
-, wrapGAppsHook
+, wrapGAppsHook3
 , glib
 , gtk3
 , json-glib
@@ -35,7 +35,7 @@ stdenv.mkDerivation rec {
     pkg-config
     python3
     vala
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
diff --git a/pkgs/applications/office/ticktick/default.nix b/pkgs/applications/office/ticktick/default.nix
index 3a768c702acd..a7b88321a82d 100644
--- a/pkgs/applications/office/ticktick/default.nix
+++ b/pkgs/applications/office/ticktick/default.nix
@@ -1,7 +1,7 @@
 { lib
 , fetchurl
 , stdenv
-, wrapGAppsHook
+, wrapGAppsHook3
 , dpkg
 , autoPatchelfHook
 , glibc
@@ -23,7 +23,7 @@ stdenv.mkDerivation (finalAttrs: {
   };
 
   nativeBuildInputs = [
-    wrapGAppsHook
+    wrapGAppsHook3
     autoPatchelfHook
     dpkg
   ];
diff --git a/pkgs/applications/office/timeline/default.nix b/pkgs/applications/office/timeline/default.nix
index 9f8bb5b563d5..8aedc4854006 100644
--- a/pkgs/applications/office/timeline/default.nix
+++ b/pkgs/applications/office/timeline/default.nix
@@ -4,7 +4,7 @@
 , gettext
 , makeDesktopItem
 , copyDesktopItems
-, wrapGAppsHook
+, wrapGAppsHook3
 }:
 
 python3.pkgs.buildPythonApplication rec {
@@ -17,7 +17,7 @@ python3.pkgs.buildPythonApplication rec {
     sha256 = "sha256-qwH2mt3Va62QJKJGOpt5WV3QksqQaRGEif4CcPC5F2E=";
   };
 
-  nativeBuildInputs = [ python3.pkgs.wrapPython copyDesktopItems wrapGAppsHook ];
+  nativeBuildInputs = [ python3.pkgs.wrapPython copyDesktopItems wrapGAppsHook3 ];
 
   pythonPath = with python3.pkgs; [
     wxpython
diff --git a/pkgs/applications/office/timeular/default.nix b/pkgs/applications/office/timeular/default.nix
index bf08311bad98..247b9f7caea4 100644
--- a/pkgs/applications/office/timeular/default.nix
+++ b/pkgs/applications/office/timeular/default.nix
@@ -1,16 +1,15 @@
 { lib
 , fetchurl
 , appimageTools
-, libsecret
 }:
 
 let
-  version = "6.7.6";
+  version = "6.7.8";
   pname = "timeular";
 
   src = fetchurl {
     url = "https://s3.amazonaws.com/timeular-desktop-packages/linux/production/Timeular-${version}.AppImage";
-    hash = "sha256-wQUR2jLJi1peXqXJJj/72X9xNaD2DzNiB0mGFiaEWBE=";
+    hash = "sha256-nMvbr2PQBWyrhY3mv/4wsdWPhNx5hLFaAp0Ey3nvp7g=";
   };
 
   appimageContents = appimageTools.extractType2 {
@@ -19,9 +18,7 @@ let
 in appimageTools.wrapType2 rec {
   inherit pname version src;
 
-  extraPkgs = pkgs: with pkgs; [
-    libsecret
-  ];
+  extraPkgs = pkgs: [ pkgs.libsecret ];
 
   extraInstallCommands = ''
     install -m 444 -D ${appimageContents}/timeular.desktop $out/share/applications/timeular.desktop
diff --git a/pkgs/applications/office/treesheets/default.nix b/pkgs/applications/office/treesheets/default.nix
index c67f53949ce7..91852af85528 100644
--- a/pkgs/applications/office/treesheets/default.nix
+++ b/pkgs/applications/office/treesheets/default.nix
@@ -3,7 +3,7 @@
 , fetchFromGitHub
 , cmake
 , ninja
-, wrapGAppsHook
+, wrapGAppsHook3
 , makeWrapper
 , wxGTK
 , Cocoa
@@ -12,19 +12,19 @@
 
 stdenv.mkDerivation rec {
   pname = "treesheets";
-  version = "unstable-2024-04-11";
+  version = "0-unstable-2024-05-04";
 
   src = fetchFromGitHub {
     owner = "aardappel";
     repo = "treesheets";
-    rev = "5e9e95a34221d4bda584d2130586177e29ee8fe7";
-    sha256 = "X0aB0rJZd9G8S+QWviSAdB/YQMT4lVV3yiELzZs+P3g=";
+    rev = "f29512886514410fa68d2debdb9389a8f81f3aaa";
+    hash = "sha256-Uq8G2lSVTj1JmiLnn5FZd/WKS+wjZxoaliOyghVZg34=";
   };
 
   nativeBuildInputs = [
     cmake
     ninja
-    wrapGAppsHook
+    wrapGAppsHook3
     makeWrapper
   ];
 
@@ -45,7 +45,9 @@ stdenv.mkDerivation rec {
   '';
 
   passthru = {
-    updateScript = unstableGitUpdater { };
+    updateScript = unstableGitUpdater {
+      hardcodeZeroVersion = true;
+    };
   };
 
   meta = with lib; {
diff --git a/pkgs/applications/office/trilium/desktop.nix b/pkgs/applications/office/trilium/desktop.nix
index 55b99bf71b79..e2ad6d5d5f82 100644
--- a/pkgs/applications/office/trilium/desktop.nix
+++ b/pkgs/applications/office/trilium/desktop.nix
@@ -1,7 +1,7 @@
 { stdenv, lib, unzip, autoPatchelfHook
 , fetchurl, makeWrapper
 , alsa-lib, mesa, nss, nspr, systemd
-, makeDesktopItem, copyDesktopItems, wrapGAppsHook
+, makeDesktopItem, copyDesktopItems, wrapGAppsHook3
 , metaCommon
 }:
 
@@ -29,7 +29,7 @@ let
     nativeBuildInputs = [
       autoPatchelfHook
       makeWrapper
-      wrapGAppsHook
+      wrapGAppsHook3
       copyDesktopItems
     ];
 
diff --git a/pkgs/applications/office/tryton/default.nix b/pkgs/applications/office/tryton/default.nix
index e1a236e5db8b..ee8f067b339f 100644
--- a/pkgs/applications/office/tryton/default.nix
+++ b/pkgs/applications/office/tryton/default.nix
@@ -14,26 +14,26 @@
 , pango
 , fontconfig
 , freetype
-, wrapGAppsHook
+, wrapGAppsHook3
 }:
 
 with lib;
 
 python3Packages.buildPythonApplication rec {
   pname = "tryton";
-  version = "7.0.8";
+  version = "7.2.1";
 
   disabled = !python3Packages.isPy3k;
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "sha256-e3WNDB6P7kapAfzlvbJ1/6LcyH7Fl6GKCK/hri460pQ=";
+    sha256 = "sha256-CK3XkHX16Ec/j1DhC29uoj/YqcLXs/KsIb7v/cfoiaM=";
   };
 
   nativeBuildInputs = [
     pkg-config
     gobject-introspection
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   propagatedBuildInputs = with python3Packages; [
diff --git a/pkgs/applications/office/tusk/default.nix b/pkgs/applications/office/tusk/default.nix
index 73b896ff0cc5..89a27a770e6f 100644
--- a/pkgs/applications/office/tusk/default.nix
+++ b/pkgs/applications/office/tusk/default.nix
@@ -31,8 +31,6 @@ in appimageTools.wrapType2 rec {
     export LC_ALL=C.UTF-8
   '';
 
-  multiArch = false; # no 32bit needed
-  extraPkgs = appimageTools.defaultFhsEnvArgs.multiPkgs;
   extraInstallCommands = ''
     mkdir "$out/share"
     ln -s "${desktopItem}/share/applications" "$out/share/"
diff --git a/pkgs/applications/office/wpsoffice/default.nix b/pkgs/applications/office/wpsoffice/default.nix
index 78b559b8ff3f..99c58ba5360d 100644
--- a/pkgs/applications/office/wpsoffice/default.nix
+++ b/pkgs/applications/office/wpsoffice/default.nix
@@ -49,6 +49,7 @@ stdenv.mkDerivation rec {
 
       nativeBuildInputs = [ curl coreutils ];
 
+      impureEnvVars = lib.fetchers.proxyImpureEnvVars;
       SSL_CERT_FILE = "${cacert}/etc/ssl/certs/ca-bundle.crt";
     } ''
     timestamp10=$(date '+%s')
diff --git a/pkgs/applications/office/zim/default.nix b/pkgs/applications/office/zim/default.nix
index b21f3edaa532..9680748287b9 100644
--- a/pkgs/applications/office/zim/default.nix
+++ b/pkgs/applications/office/zim/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetchurl, python3Packages, gtk3, gobject-introspection, wrapGAppsHook, gnome }:
+{ lib, stdenv, fetchurl, python3Packages, gtk3, gobject-introspection, wrapGAppsHook3, gnome }:
 
 # TODO: Declare configuration options for the following optional dependencies:
 #  -  File stores: hg, git, bzr
@@ -16,7 +16,7 @@ python3Packages.buildPythonApplication rec {
 
   buildInputs = [ gtk3 gnome.adwaita-icon-theme ];
   propagatedBuildInputs = with python3Packages; [ pyxdg pygobject3 ];
-  nativeBuildInputs = [ gobject-introspection wrapGAppsHook ];
+  nativeBuildInputs = [ gobject-introspection wrapGAppsHook3 ];
 
   dontWrapGApps = true;
 
diff --git a/pkgs/applications/office/zotero/default.nix b/pkgs/applications/office/zotero/default.nix
index e343790da2c7..b31ce7f8c2de 100644
--- a/pkgs/applications/office/zotero/default.nix
+++ b/pkgs/applications/office/zotero/default.nix
@@ -1,7 +1,7 @@
 { lib
 , stdenv
 , fetchurl
-, wrapGAppsHook
+, wrapGAppsHook3
 , makeDesktopItem
 , atk
 , cairo
@@ -49,7 +49,7 @@ stdenv.mkDerivation rec {
     hash = "sha256-HAVLmamEPuFf0548/iEXes+f4XnQ7kU1u9hyOYhVyZ0=";
   };
 
-  nativeBuildInputs = [ wrapGAppsHook ];
+  nativeBuildInputs = [ wrapGAppsHook3 ];
   buildInputs =
     [ gsettings-desktop-schemas glib gtk3 gnome.adwaita-icon-theme dconf ];
 
diff --git a/pkgs/applications/office/zotero/zotero_7.nix b/pkgs/applications/office/zotero/zotero_7.nix
index 4d4ea36c5acf..ae8cc9e9fa6f 100644
--- a/pkgs/applications/office/zotero/zotero_7.nix
+++ b/pkgs/applications/office/zotero/zotero_7.nix
@@ -1,7 +1,7 @@
 { lib
 , stdenv
 , fetchurl
-, wrapGAppsHook
+, wrapGAppsHook3
 , autoPatchelfHook
 , makeDesktopItem
 , atk
@@ -52,7 +52,7 @@ stdenv.mkDerivation rec {
   };
 
   nativeBuildInputs = [
-    wrapGAppsHook
+    wrapGAppsHook3
     autoPatchelfHook
   ];
   buildInputs = [
diff --git a/pkgs/applications/radio/chirp/default.nix b/pkgs/applications/radio/chirp/default.nix
index 0bb054e3d52e..9854fa8076ef 100644
--- a/pkgs/applications/radio/chirp/default.nix
+++ b/pkgs/applications/radio/chirp/default.nix
@@ -5,25 +5,25 @@
 , gsettings-desktop-schemas
 , python3
 , unstableGitUpdater
-, wrapGAppsHook
+, wrapGAppsHook3
 }:
 
 python3.pkgs.buildPythonApplication rec {
   pname = "chirp";
-  version = "0.4.0-unstable-2024-02-08";
+  version = "0.4.0-unstable-2024-05-10";
 
   src = fetchFromGitHub {
     owner = "kk7ds";
     repo = "chirp";
-    rev = "902043a937ee3611744f2a4e35cd902c7b0a8d0b";
-    hash = "sha256-oDUtR1xD73rfBRKkbE1f68siO/4oxoLxw16w1qa9fEo=";
+    rev = "d5dc5c8e053dbcf87c8b0ccf03109c0870c22bfb";
+    hash = "sha256-Tqq1dTjtzHTgaHUAio5B8V4Bo+P8EPa3s/kG181TrCc=";
   };
   buildInputs = [
     glib
     gsettings-desktop-schemas
   ];
   nativeBuildInputs = [
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
   propagatedBuildInputs = with python3.pkgs; [
     future
diff --git a/pkgs/applications/radio/cloudlog/default.nix b/pkgs/applications/radio/cloudlog/default.nix
index 2e9393dfedae..b9d17927776d 100644
--- a/pkgs/applications/radio/cloudlog/default.nix
+++ b/pkgs/applications/radio/cloudlog/default.nix
@@ -8,13 +8,13 @@
 
 stdenvNoCC.mkDerivation rec {
   pname = "cloudlog";
-  version = "2.6.9";
+  version = "2.6.11";
 
   src = fetchFromGitHub {
     owner = "magicbug";
     repo = "Cloudlog";
     rev = version;
-    hash = "sha256-DyBo56NS15s+t9Dl8xCC7MQAqMmZ91FYUYOV4vyJ/Yo=";
+    hash = "sha256-9JGhMCypoKOh1Gy1DdK7nrma+L4sJsYN/iuNhBPmHPA=";
   };
 
   postPatch = ''
diff --git a/pkgs/applications/radio/cqrlog/default.nix b/pkgs/applications/radio/cqrlog/default.nix
index af1e283249d8..7c973e097d53 100644
--- a/pkgs/applications/radio/cqrlog/default.nix
+++ b/pkgs/applications/radio/cqrlog/default.nix
@@ -16,7 +16,7 @@
 , xdg-utils
 , xplanet
 , autoPatchelfHook
-, wrapGAppsHook
+, wrapGAppsHook3
 }:
 
 stdenv.mkDerivation rec {
@@ -62,7 +62,7 @@ stdenv.mkDerivation rec {
     ! grep -C src -RC0 "/usr"
   '';
 
-  nativeBuildInputs = [ lazarus fpc autoPatchelfHook wrapGAppsHook ];
+  nativeBuildInputs = [ lazarus fpc autoPatchelfHook wrapGAppsHook3 ];
   buildInputs = [
     atk
     cairo
diff --git a/pkgs/applications/radio/flamp/default.nix b/pkgs/applications/radio/flamp/default.nix
index 4e7326af1932..fc44826258be 100644
--- a/pkgs/applications/radio/flamp/default.nix
+++ b/pkgs/applications/radio/flamp/default.nix
@@ -10,12 +10,12 @@
 
 stdenv.mkDerivation (finalAttrs: {
   pname = "flamp";
-  version = "2.2.11";
+  version = "2.2.12";
 
   src = fetchgit {
     url = "https://git.code.sf.net/p/fldigi/flamp";
     rev = "v${finalAttrs.version}";
-    hash = "sha256-QYfTkciSbBLy49rF6xABMw8TXZ/0QyQ/yhJ2nuM7f/c=";
+    hash = "sha256-Rw75mz3gPQDBl1iECHZAMBxY8iDr/hqSJscJhdboaRw=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/applications/radio/fldigi/default.nix b/pkgs/applications/radio/fldigi/default.nix
index abdf52051345..2390a4f8c081 100644
--- a/pkgs/applications/radio/fldigi/default.nix
+++ b/pkgs/applications/radio/fldigi/default.nix
@@ -18,11 +18,11 @@
 
 stdenv.mkDerivation rec {
   pname = "fldigi";
-  version = "4.2.04";
+  version = "4.2.05";
 
   src = fetchurl {
     url = "mirror://sourceforge/${pname}/${pname}-${version}.tar.gz";
-    hash = "sha256-crVeX9vtvn1O5ah1dc74425qUKcozKlDMVeIefMpktY=";
+    hash = "sha256-rBGJ+63Szhy37LQw0LpE2/lLyP5lwK7hsz/uq453iHY=";
   };
 
   nativeBuildInputs = [ pkg-config ];
@@ -39,6 +39,8 @@ stdenv.mkDerivation rec {
     libsamplerate
   ] ++ lib.optionals (stdenv.isLinux) [ libpulseaudio alsa-lib udev ];
 
+  env.CXXFLAGS = lib.optionalString stdenv.cc.isClang "-std=c++14";
+
   enableParallelBuilding = true;
 
   meta = with lib; {
@@ -47,8 +49,5 @@ stdenv.mkDerivation rec {
     license = licenses.gpl3Plus;
     maintainers = with maintainers; [ relrod ftrvxmtrx ];
     platforms = platforms.unix;
-    # unable to execute command: posix_spawn failed: Argument list too long
-    # Builds fine on aarch64-darwin
-    broken = stdenv.system == "x86_64-darwin";
   };
 }
diff --git a/pkgs/applications/radio/gnuradio/wrapper.nix b/pkgs/applications/radio/gnuradio/wrapper.nix
index fdaa76f6f7e8..f468aadb27b5 100644
--- a/pkgs/applications/radio/gnuradio/wrapper.nix
+++ b/pkgs/applications/radio/gnuradio/wrapper.nix
@@ -11,7 +11,7 @@
 , xorg
 # To define a the gnuradio.pkgs scope
 , newScope
-# For Emulating wrapGAppsHook
+# For Emulating wrapGAppsHook3
 , gsettings-desktop-schemas
 , glib
 , hicolor-icon-theme
@@ -76,7 +76,7 @@ let
   inherit (unwrapped) version;
   makeWrapperArgs = builtins.concatStringsSep " " ([
   ]
-    # Emulating wrapGAppsHook & wrapQtAppsHook working together
+    # Emulating wrapGAppsHook3 & wrapQtAppsHook working together
     ++ lib.optionals (
       (unwrapped.hasFeature "gnuradio-companion")
       || (unwrapped.hasFeature "gr-qtgui")
@@ -95,6 +95,7 @@ let
       "--prefix" "XDG_DATA_DIRS" ":" "${unwrapped.gtk}/share"
       "--prefix" "XDG_DATA_DIRS" ":" "${unwrapped.gtk}/share/gsettings-schemas/${unwrapped.gtk.name}"
       "--prefix" "GI_TYPELIB_PATH" ":" "${lib.makeSearchPath "lib/girepository-1.0" [
+        (lib.getLib glib)
         unwrapped.gtk
         gsettings-desktop-schemas
         atk
diff --git a/pkgs/applications/radio/gqrx/default.nix b/pkgs/applications/radio/gqrx/default.nix
index a57406604571..14675124b0ed 100644
--- a/pkgs/applications/radio/gqrx/default.nix
+++ b/pkgs/applications/radio/gqrx/default.nix
@@ -11,7 +11,7 @@
 , fftwFloat
 , alsa-lib
 , libjack2
-, wrapGAppsHook
+, wrapGAppsHook3
 , wrapQtAppsHook
 # drivers (optional):
 , rtl-sdr
@@ -40,7 +40,7 @@ gnuradioMinimal.pkgs.mkDerivation rec {
     cmake
     pkg-config
     wrapQtAppsHook
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
   buildInputs = [
     gnuradioMinimal.unwrapped.logLib
diff --git a/pkgs/applications/radio/gridtracker/default.nix b/pkgs/applications/radio/gridtracker/default.nix
index 5769fbbdf1c8..645aed7fffd6 100644
--- a/pkgs/applications/radio/gridtracker/default.nix
+++ b/pkgs/applications/radio/gridtracker/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetchFromGitLab, nix-update-script, nwjs, wrapGAppsHook }:
+{ lib, stdenv, fetchFromGitLab, nix-update-script, nwjs, wrapGAppsHook3 }:
 
 stdenv.mkDerivation rec {
   pname = "gridtracker";
@@ -11,7 +11,7 @@ stdenv.mkDerivation rec {
     sha256 = "sha256-p3PdYOk0yvG3QkM17grzZmf9upK1n0zo4aOrlhGTvTU=";
   };
 
-  nativeBuildInputs = [ wrapGAppsHook ];
+  nativeBuildInputs = [ wrapGAppsHook3 ];
 
   postPatch = ''
     substituteInPlace Makefile \
diff --git a/pkgs/applications/radio/grig/default.nix b/pkgs/applications/radio/grig/default.nix
index b288317c03c7..84664d897203 100644
--- a/pkgs/applications/radio/grig/default.nix
+++ b/pkgs/applications/radio/grig/default.nix
@@ -3,7 +3,7 @@
 , fetchFromGitHub
 , autoreconfHook
 , pkg-config
-, wrapGAppsHook
+, wrapGAppsHook3
 , gtk2
 , hamlib_4 }:
 
@@ -18,7 +18,7 @@ stdenv.mkDerivation rec {
     sha256 = "sha256-OgIgHW9NMW/xSSti3naIR8AQWUtNSv5bYdOcObStBlM=";
   };
 
-  nativeBuildInputs = [ autoreconfHook pkg-config wrapGAppsHook ];
+  nativeBuildInputs = [ autoreconfHook pkg-config wrapGAppsHook3 ];
   buildInputs = [ hamlib_4 gtk2 ];
 
   meta = with lib; {
diff --git a/pkgs/applications/radio/qlog/default.nix b/pkgs/applications/radio/qlog/default.nix
index 48116beb3e3b..e89b1014e528 100644
--- a/pkgs/applications/radio/qlog/default.nix
+++ b/pkgs/applications/radio/qlog/default.nix
@@ -16,13 +16,13 @@
 
 stdenv.mkDerivation rec {
   pname = "qlog";
-  version = "0.34.0";
+  version = "0.35.1";
 
   src = fetchFromGitHub {
     owner = "foldynl";
     repo = "QLog";
     rev = "v${version}";
-    hash = "sha256-zPIGqVfpd7Gkm3Ify+AwiCSWQ67ybv9BmuolSu9WzHM=";
+    hash = "sha256-qmTep8cwNFxgvWO6tOtk+kwjhEltjJTc0Fo4o01GzIo=";
     fetchSubmodules = true;
   };
 
diff --git a/pkgs/applications/radio/quisk/default.nix b/pkgs/applications/radio/quisk/default.nix
index 8fa180e705c6..733f908ffc44 100644
--- a/pkgs/applications/radio/quisk/default.nix
+++ b/pkgs/applications/radio/quisk/default.nix
@@ -8,11 +8,11 @@
 
 python3.pkgs.buildPythonApplication rec {
   pname = "quisk";
-  version = "4.2.32";
+  version = "4.2.33";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "sha256-zzcygf7oVICO2/wfgyej1GD78fQB1xNRGHq19w6K4uY=";
+    sha256 = "sha256-41eyqYxRg0crtN6qp239eHWSFPt7XuJneTAndZuS3EY=";
   };
 
   buildInputs = [
diff --git a/pkgs/applications/radio/tqsl/default.nix b/pkgs/applications/radio/tqsl/default.nix
index 321536f71ab5..01059cc43430 100644
--- a/pkgs/applications/radio/tqsl/default.nix
+++ b/pkgs/applications/radio/tqsl/default.nix
@@ -1,15 +1,15 @@
-{ lib, stdenv, fetchurl, cmake, expat, openssl, zlib, lmdb, curl, sqlite, wxGTK32, wrapGAppsHook }:
+{ lib, stdenv, fetchurl, cmake, expat, openssl, zlib, lmdb, curl, sqlite, wxGTK32, wrapGAppsHook3 }:
 
 stdenv.mkDerivation rec {
   pname = "tqsl";
-  version = "2.7.2";
+  version = "2.7.3";
 
   src = fetchurl {
     url = "https://www.arrl.org/files/file/LoTW%20Instructions/${pname}-${version}.tar.gz";
-    sha256 = "sha256-T4NBCUTYHT6ugSg1gSfjQBOBndqwSwyWLr/qlDPQGKI=";
+    sha256 = "sha256-Ca9PsytjPvrU4u+b/x6pIbQc8CDNWI6hNM6jF60Bds8=";
   };
 
-  nativeBuildInputs = [ cmake wrapGAppsHook ];
+  nativeBuildInputs = [ cmake wrapGAppsHook3 ];
   buildInputs = [
     expat
     openssl
diff --git a/pkgs/applications/science/astronomy/gpredict/default.nix b/pkgs/applications/science/astronomy/gpredict/default.nix
index 56c5a92460dd..467f478da96b 100644
--- a/pkgs/applications/science/astronomy/gpredict/default.nix
+++ b/pkgs/applications/science/astronomy/gpredict/default.nix
@@ -1,6 +1,6 @@
 { lib, stdenv, fetchurl, fetchpatch, pkg-config, intltool
 , gtk3, glib, curl, goocanvas2, gpsd
-, hamlib, wrapGAppsHook
+, hamlib, wrapGAppsHook3
 }:
 
 let
@@ -24,7 +24,7 @@ in stdenv.mkDerivation {
     })
   ];
 
-  nativeBuildInputs = [ pkg-config intltool wrapGAppsHook ];
+  nativeBuildInputs = [ pkg-config intltool wrapGAppsHook3 ];
   buildInputs = [ curl glib gtk3 goocanvas2 gpsd hamlib ];
 
   meta = with lib; {
diff --git a/pkgs/applications/science/astronomy/phd2/default.nix b/pkgs/applications/science/astronomy/phd2/default.nix
index 9c66df83dd4b..b463a2845bdc 100644
--- a/pkgs/applications/science/astronomy/phd2/default.nix
+++ b/pkgs/applications/science/astronomy/phd2/default.nix
@@ -1,5 +1,5 @@
 { lib, stdenv, fetchFromGitHub, pkg-config, cmake, gtk3, wxGTK32
-, curl, gettext, glib, indi-full, libnova, wrapGAppsHook }:
+, curl, gettext, glib, indi-full, libnova, wrapGAppsHook3 }:
 
 stdenv.mkDerivation rec {
   pname = "phd2";
@@ -15,7 +15,7 @@ stdenv.mkDerivation rec {
   nativeBuildInputs = [
     cmake
     pkg-config
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
diff --git a/pkgs/applications/science/astronomy/siril/default.nix b/pkgs/applications/science/astronomy/siril/default.nix
index 255927d893d2..569d53717254 100644
--- a/pkgs/applications/science/astronomy/siril/default.nix
+++ b/pkgs/applications/science/astronomy/siril/default.nix
@@ -1,43 +1,38 @@
-{ lib, stdenv, fetchFromGitLab, fetchpatch, pkg-config, meson, ninja, cmake
+{ lib, stdenv, fetchFromGitLab, pkg-config, meson, ninja, cmake
 , git, criterion, gtk3, libconfig, gnuplot, opencv, json-glib
 , fftwFloat, cfitsio, gsl, exiv2, librtprocess, wcslib, ffmpeg
-, libraw, libtiff, libpng, libjpeg, libheif, ffms, wrapGAppsHook
+, libraw, libtiff, libpng, libjpeg, libheif, ffms, wrapGAppsHook3
+, curl
 }:
 
 stdenv.mkDerivation rec {
   pname = "siril";
-  version = "1.2.0";
+  version = "1.2.1";
 
   src = fetchFromGitLab {
     owner = "free-astro";
     repo = "siril";
     rev = version;
-    hash = "sha256-lCoFQ7z6cZbyNPEm5s40DNdvTwFonHK3KCd8RniqQWs=";
+    hash = "sha256-njvByA8nbG3qHKfv8eX20TrIhngVI0nzIHmhYIN6htE=";
   };
 
-  patches = [
-    (fetchpatch {
-      name = "siril-1.2-exiv2-0.28.patch";
-      url = "https://gitweb.gentoo.org/repo/gentoo.git/plain/sci-astronomy/siril/files/siril-1.2-exiv2-0.28.patch?id=002882203ad6a2b08ce035a18b95844a9f4b85d0";
-      hash = "sha256-R1yslW6hzvJHKo0/IqBxkCuqcX6VrdRSz68gpAExxVE=";
-    })
-  ];
-
   nativeBuildInputs = [
-    meson ninja cmake pkg-config git criterion wrapGAppsHook
+    meson ninja cmake pkg-config git criterion wrapGAppsHook3
   ];
 
   buildInputs = [
     gtk3 cfitsio gsl exiv2 gnuplot opencv fftwFloat librtprocess wcslib
     libconfig libraw libtiff libpng libjpeg libheif ffms ffmpeg json-glib
+    curl
   ];
 
   # Necessary because project uses default build dir for flatpaks/snaps
   dontUseMesonConfigure = true;
   dontUseCmakeConfigure = true;
 
+  # Meson fails to find libcurl unless the option is specifically enabled
   configureScript = ''
-    ${meson}/bin/meson --buildtype release nixbld .
+    ${meson}/bin/meson setup -Denable-libcurl=yes --buildtype release nixbld .
   '';
 
   postConfigure = ''
diff --git a/pkgs/applications/science/astronomy/stellarium/default.nix b/pkgs/applications/science/astronomy/stellarium/default.nix
index 35d6bd8aba92..687c0b3a2dda 100644
--- a/pkgs/applications/science/astronomy/stellarium/default.nix
+++ b/pkgs/applications/science/astronomy/stellarium/default.nix
@@ -4,7 +4,7 @@
 , fetchpatch
 , cmake
 , perl
-, wrapGAppsHook
+, wrapGAppsHook3
 , wrapQtAppsHook
 , qtbase
 , qtcharts
@@ -52,7 +52,7 @@ stdenv.mkDerivation (finalAttrs: {
   nativeBuildInputs = [
     cmake
     perl
-    wrapGAppsHook
+    wrapGAppsHook3
     wrapQtAppsHook
     qttools
   ];
diff --git a/pkgs/applications/science/biology/conglomerate/default.nix b/pkgs/applications/science/biology/conglomerate/default.nix
index d9092b9eeb11..0d140914638e 100644
--- a/pkgs/applications/science/biology/conglomerate/default.nix
+++ b/pkgs/applications/science/biology/conglomerate/default.nix
@@ -1,20 +1,47 @@
-{ lib, stdenv, fetchFromGitHub, cmake, coreutils, perlPackages, bicpl, libminc, zlib, minc_tools,
-  makeWrapper }:
+{
+  lib,
+  stdenv,
+  fetchFromGitHub,
+  cmake,
+  coreutils,
+  perlPackages,
+  bicpl,
+  libminc,
+  zlib,
+  minc_tools,
+  makeWrapper,
+}:
 
 stdenv.mkDerivation rec {
   pname = "conglomerate";
-  version = "unstable-2017-09-10";
+  version = "unstable-2023-01-19";
 
   src = fetchFromGitHub {
-    owner  = "BIC-MNI";
-    repo   = pname;
-    rev    = "7343238bc6215942c7ecc885a224f24433a291b0";
-    sha256 = "1mlqgmy3jc13bv7d01rjwldxq0p4ayqic85xcl222hhifi3w2prr";
+    owner = "BIC-MNI";
+    repo = pname;
+    rev = "6fb26084f2871a85044e2e4afc868982702b40ed";
+    hash = "sha256-Inr4b2bxguzkcRQBURObsQQ0Rb3H/Zz6hEzNRd+IX3w=";
   };
 
-  nativeBuildInputs = [ cmake makeWrapper ];
-  buildInputs = [ libminc zlib bicpl ];
-  propagatedBuildInputs = [ coreutils minc_tools ] ++ (with perlPackages; [ perl GetoptTabular MNI-Perllib ]);
+  nativeBuildInputs = [
+    cmake
+    makeWrapper
+  ];
+  buildInputs = [
+    libminc
+    zlib
+    bicpl
+  ];
+  propagatedBuildInputs =
+    [
+      coreutils
+      minc_tools
+    ]
+    ++ (with perlPackages; [
+      perl
+      GetoptTabular
+      MNI-Perllib
+    ]);
 
   cmakeFlags = [
     "-DLIBMINC_DIR=${libminc}/lib/cmake"
@@ -23,15 +50,20 @@ stdenv.mkDerivation rec {
 
   postFixup = ''
     for p in $out/bin/*; do
-      wrapProgram $p --prefix PERL5LIB : $PERL5LIB --set PATH "${lib.makeBinPath [ coreutils minc_tools ]}";
+      wrapProgram $p --prefix PERL5LIB : $PERL5LIB --set PATH "${
+        lib.makeBinPath [
+          coreutils
+          minc_tools
+        ]
+      }";
     done
   '';
 
-  meta = with lib; {
+  meta = {
     homepage = "https://github.com/BIC-MNI/conglomerate";
     description = "More command-line utilities for working with MINC files";
-    maintainers = with maintainers; [ bcdarwin ];
-    platforms = platforms.unix;
-    license   = licenses.hpndUc;
+    maintainers = with lib.maintainers; [ bcdarwin ];
+    platforms = lib.platforms.unix;
+    license = lib.licenses.hpndUc;
   };
 }
diff --git a/pkgs/applications/science/biology/dssp/default.nix b/pkgs/applications/science/biology/dssp/default.nix
index 6c7157a91764..56eb023805a3 100644
--- a/pkgs/applications/science/biology/dssp/default.nix
+++ b/pkgs/applications/science/biology/dssp/default.nix
@@ -3,39 +3,20 @@
 , cmake
 , eigen
 , fetchFromGitHub
-, fetchpatch
 , libcifpp
 , libmcfp
 , zlib
 }:
-let
-  libcifpp' = libcifpp.overrideAttrs (oldAttrs: {
-    # dssp 4.4.3 requires specific version "5.2.0" of libcifpp
-    version = "5.2.0";
-    src = fetchFromGitHub {
-      inherit (oldAttrs.src) owner repo rev;
-      hash = "sha256-Sj10j6HxUoUvQ66cd2B8CO7CVBRd7w9CTovxkwPDOvs=";
-    };
-    patches = [
-      (fetchpatch {
-        # https://github.com/PDB-REDO/libcifpp/issues/51
-        name = "fix-build-on-darwin.patch";
-        url = "https://github.com/PDB-REDO/libcifpp/commit/641f06a7e7c0dc54af242b373820f2398f59e7ac.patch";
-        hash = "sha256-eWNfp9nA/+2J6xjZR6Tj+5OM3L5MxdfRi0nBzyaqvS0=";
-      })
-    ];
-  });
-in
 
 stdenv.mkDerivation (finalAttrs: {
   pname = "dssp";
-  version = "4.4.5";
+  version = "4.4.7";
 
   src = fetchFromGitHub {
     owner = "PDB-REDO";
     repo = "dssp";
     rev = "refs/tags/v${finalAttrs.version}";
-    hash = "sha256-X0aMWqoMhmQVRHWKVm2S6JAOYiBuBBMzMoivMdpNx0M=";
+    hash = "sha256-qePoZYkzzWuK6j1NM+q6fPuWVRDEe4OkPmXc9Nbqobo=";
   };
 
   nativeBuildInputs = [
@@ -44,7 +25,7 @@ stdenv.mkDerivation (finalAttrs: {
 
   buildInputs = [
     eigen
-    libcifpp'
+    libcifpp
     libmcfp
     zlib
   ];
diff --git a/pkgs/applications/science/biology/igv/default.nix b/pkgs/applications/science/biology/igv/default.nix
index ba0114c7b563..219792326b68 100644
--- a/pkgs/applications/science/biology/igv/default.nix
+++ b/pkgs/applications/science/biology/igv/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetchzip, jdk17, testers, wrapGAppsHook, igv }:
+{ lib, stdenv, fetchzip, jdk17, testers, wrapGAppsHook3, igv }:
 
 stdenv.mkDerivation rec {
   pname = "igv";
@@ -24,7 +24,7 @@ stdenv.mkDerivation rec {
     chmod +x $out/bin/igv
     chmod +x $out/bin/igvtools
   '';
-  nativeBuildInputs = [ wrapGAppsHook ];
+  nativeBuildInputs = [ wrapGAppsHook3 ];
 
   passthru.tests.version = testers.testVersion {
     package = igv;
diff --git a/pkgs/applications/science/biology/iqtree/default.nix b/pkgs/applications/science/biology/iqtree/default.nix
index d8e90789f4d5..4dfbaa25b36a 100644
--- a/pkgs/applications/science/biology/iqtree/default.nix
+++ b/pkgs/applications/science/biology/iqtree/default.nix
@@ -10,13 +10,13 @@
 
 stdenv.mkDerivation rec {
   pname = "iqtree";
-  version = "2.3.2";
+  version = "2.3.4";
 
   src = fetchFromGitHub {
     owner = "iqtree";
     repo = "iqtree2";
     rev = "v${version}";
-    hash = "sha256-hAJs48PhIyZSKSRZjQJKQwoJlt6DPRQwaDsuZ00VZII=";
+    hash = "sha256-dnUFllqcABB3JDYoCwPGtIYD/h5lzX2XKOroDpijPpU=";
     fetchSubmodules = true;
   };
 
diff --git a/pkgs/applications/science/biology/jbrowse/default.nix b/pkgs/applications/science/biology/jbrowse/default.nix
index c4c8966aa50d..b8c5d69482e3 100644
--- a/pkgs/applications/science/biology/jbrowse/default.nix
+++ b/pkgs/applications/science/biology/jbrowse/default.nix
@@ -1,12 +1,12 @@
-{ lib, fetchurl, appimageTools, wrapGAppsHook }:
+{ lib, fetchurl, appimageTools, wrapGAppsHook3 }:
 
 let
   pname = "jbrowse";
-  version = "2.5.0";
+  version = "2.11.0";
 
   src = fetchurl {
     url = "https://github.com/GMOD/jbrowse-components/releases/download/v${version}/jbrowse-desktop-v${version}-linux.AppImage";
-    sha256 = "sha256-YLsyA+RVoFvjE4MfAtglJYdUgic487SxwdUhvolzBPc=";
+    sha256 = "sha256-MtcrkDg7OC3PTc6fdeG3O/CdyP3122+2BSzKE7rrtWI=";
   };
 
   appimageContents = appimageTools.extractType2 {
diff --git a/pkgs/applications/science/biology/messer-slim/default.nix b/pkgs/applications/science/biology/messer-slim/default.nix
index d463b4fe5366..af3856f04167 100644
--- a/pkgs/applications/science/biology/messer-slim/default.nix
+++ b/pkgs/applications/science/biology/messer-slim/default.nix
@@ -1,14 +1,14 @@
 { lib, stdenv, fetchFromGitHub, cmake, gcc, gcc-unwrapped }:
 
 stdenv.mkDerivation rec {
-  version = "4.2.1";
+  version = "4.2.2";
   pname = "messer-slim";
 
   src = fetchFromGitHub {
     owner = "MesserLab";
     repo = "SLiM";
     rev = "v${version}";
-    sha256 = "sha256-ba5I/bsDNAhDb1Kq0lWTC6YgpZ1PpeHPmB/vXx/JRK0=";
+    sha256 = "sha256-TlB7Hj4pVN4p4VanACWjQBeTxP9/DvRvdCdgelrXx60=";
   };
 
   nativeBuildInputs = [ cmake gcc gcc-unwrapped ];
diff --git a/pkgs/applications/science/biology/migrate/default.nix b/pkgs/applications/science/biology/migrate/default.nix
index 31e4eb2fcb42..7820f177bfb7 100644
--- a/pkgs/applications/science/biology/migrate/default.nix
+++ b/pkgs/applications/science/biology/migrate/default.nix
@@ -1,18 +1,31 @@
-{ stdenv, lib, gccStdenv, fetchurl, zlib, mpi }:
+{
+  stdenv,
+  lib,
+  fetchurl,
+  zlib,
+  mpi,
+}:
 
-gccStdenv.mkDerivation rec {
-  version = "3.7.2";
+stdenv.mkDerivation (finalAttrs: {
+  version = "5.0.6";
   pname = "migrate";
 
   src = fetchurl {
-    url = "https://peterbeerli.com/migrate-html5/download_version3/${pname}-${version}.src.tar.gz";
-    sha256 = "1p2364ffjc56i82snzvjpy6pkf6wvqwvlvlqxliscx2c303fxs8v";
+    url = "https://peterbeerli.com/migrate-html5/download_version4/${finalAttrs.pname}-${finalAttrs.version}.src.tar.gz";
+    hash = "sha256-twkoR9L6VPUye12OC0B5w0PxcxyKain6RkhCswLEdwg=";
   };
 
-  buildInputs = [ zlib mpi ];
-  setSourceRoot = "sourceRoot=$(echo */src)";
-  buildFlags = [ "thread" "mpis" ];
-  preInstall = "mkdir -p $out/man/man1";
+  sourceRoot = "migrate-${finalAttrs.version}/src";
+
+  buildInputs = [
+    zlib
+    mpi
+  ];
+
+  buildFlags = [
+    "thread"
+    "mpis"
+  ];
 
   meta = with lib; {
     broken = stdenv.isDarwin;
@@ -21,5 +34,6 @@ gccStdenv.mkDerivation rec {
     license = licenses.mit;
     maintainers = [ maintainers.bzizou ];
     platforms = platforms.unix;
+    mainProgram = "migrate-n";
   };
-}
+})
diff --git a/pkgs/applications/science/chemistry/chemtool/default.nix b/pkgs/applications/science/chemistry/chemtool/default.nix
index fe2d658b5a44..82b183467161 100644
--- a/pkgs/applications/science/chemistry/chemtool/default.nix
+++ b/pkgs/applications/science/chemistry/chemtool/default.nix
@@ -5,7 +5,7 @@
 , libX11
 , gtk2
 , fig2dev
-, wrapGAppsHook
+, wrapGAppsHook3
 }:
 
 stdenv.mkDerivation rec {
@@ -17,7 +17,7 @@ stdenv.mkDerivation rec {
     sha256 = "hhYaBGE4azNKX/sXzfCUpJGUGIRngnL0V0mBNRTdr8s=";
   };
 
-  nativeBuildInputs = [ pkg-config wrapGAppsHook ];
+  nativeBuildInputs = [ pkg-config wrapGAppsHook3 ];
   buildInputs = [
     libX11
     gtk2
diff --git a/pkgs/applications/science/chemistry/cp2k/default.nix b/pkgs/applications/science/chemistry/cp2k/default.nix
index 42bfc6ffe32e..8a831fe23b74 100644
--- a/pkgs/applications/science/chemistry/cp2k/default.nix
+++ b/pkgs/applications/science/chemistry/cp2k/default.nix
@@ -64,6 +64,12 @@ stdenv.mkDerivation rec {
     fetchSubmodules = true;
   };
 
+  patches = [
+    # Remove the build command line from the source.
+    # This avoids dependencies to .dev inputs
+    ./remove-compiler-options.patch
+  ];
+
   nativeBuildInputs = [ python3 which openssh makeWrapper pkg-config ]
     ++ lib.optional (gpuBackend == "cuda") cudaPackages.cuda_nvcc;
 
@@ -75,6 +81,7 @@ stdenv.mkDerivation rec {
     libvori
     libxc
     libxsmm
+    mpi
     spglib
     scalapack
     blas
@@ -101,7 +108,7 @@ stdenv.mkDerivation rec {
   ]
   ;
 
-  propagatedBuildInputs = [ mpi ];
+  propagatedBuildInputs = [ (lib.getBin mpi) ];
   propagatedUserEnvPkgs = [ mpi ];
 
   makeFlags = [
@@ -149,14 +156,16 @@ stdenv.mkDerivation rec {
                  -D__PLUMED2 -D__HDF5 -D__GSL -D__SIRIUS -D__LIBVDWXC -D__SPFFT -D__SPLA \
                  ${lib.strings.optionalString (gpuBackend == "cuda") "-D__OFFLOAD_CUDA -D__ACC -D__DBCSR_ACC -D__NO_OFFLOAD_PW"} \
                  ${lib.strings.optionalString (gpuBackend == "rocm") "-D__OFFLOAD_HIP -D__DBCSR_ACC -D__NO_OFFLOAD_PW"}
-    CFLAGS    = -fopenmp -I${lib.getDev hdf5-fortran}/include -I${lib.getDev gsl}/include
+    CFLAGS    = -fopenmp
     FCFLAGS    = \$(DFLAGS) -O2 -ffree-form -ffree-line-length-none \
                  -ftree-vectorize -funroll-loops -msse2 \
                  -std=f2008 \
                  -fopenmp -ftree-vectorize -funroll-loops \
-                 -I${lib.getDev libint}/include ${lib.optionalString enableElpa "$(pkg-config --variable=fcflags elpa)"} \
+                   ${lib.optionalString enableElpa "$(pkg-config --variable=fcflags elpa)"} \
+                 -I${lib.getDev libint}/include  \
                  -I${lib.getDev sirius}/include/sirius \
-                 -I${lib.getDev libxc}/include -I${lib.getDev libxsmm}/include \
+                 -I${lib.getDev libxc}/include \
+                 -I${lib.getDev libxsmm}/include \
                  -I${lib.getDev hdf5-fortran}/include \
                  -fallow-argument-mismatch
     LIBS       = -lfftw3 -lfftw3_threads \
diff --git a/pkgs/applications/science/chemistry/cp2k/remove-compiler-options.patch b/pkgs/applications/science/chemistry/cp2k/remove-compiler-options.patch
new file mode 100644
index 000000000000..e6cf81494aa3
--- /dev/null
+++ b/pkgs/applications/science/chemistry/cp2k/remove-compiler-options.patch
@@ -0,0 +1,37 @@
+diff --git a/src/start/cp2k.F b/src/start/cp2k.F
+index f69146ea3..a195f0620 100644
+--- a/src/start/cp2k.F
++++ b/src/start/cp2k.F
+@@ -58,8 +58,7 @@ PROGRAM cp2k
+    USE input_cp2k,                      ONLY: create_cp2k_root_section
+    USE input_section_types,             ONLY: section_release,&
+                                               section_type
+-   USE iso_fortran_env,                 ONLY: compiler_options,&
+-                                              compiler_version
++   USE iso_fortran_env,                 ONLY: compiler_version
+    USE kinds,                           ONLY: default_path_length
+    USE machine,                         ONLY: default_output_unit
+ #include "../base/base_uses.f90"
+@@ -70,7 +69,6 @@ PROGRAM cp2k
+                                            arg_att, command
+    CHARACTER(LEN=default_path_length), &
+       DIMENSION(:, :), ALLOCATABLE      :: initial_variables, initial_variables_tmp
+-   CHARACTER(LEN=:), ALLOCATABLE        :: compiler_options_string
+    INTEGER                              :: output_unit, l, i, var_set_sep, inp_var_idx
+    INTEGER                              :: ierr, i_arg
+    LOGICAL                              :: check, usage, echo_input, command_line_error
+@@ -328,14 +326,6 @@ PROGRAM cp2k
+                WRITE (output_unit, "(T2,A)") cp2k_version, &
+                   "Source code revision "//TRIM(compile_revision), &
+                   TRIM(cp2k_flags())
+-               compiler_options_string = compiler_options()
+-               WRITE (output_unit, "(T2,A,A)") "compiler: ", compiler_version()
+-               WRITE (output_unit, "(T2,A)") "compiler options:"
+-               DO i = 0, (LEN(compiler_options_string) - 1)/68
+-                  WRITE (output_unit, "(T4,A)") &
+-                     compiler_options_string(i*68 + 1:MIN(LEN(compiler_options_string), (i + 1)*68))
+-               END DO
+-               DEALLOCATE (compiler_options_string)
+             END IF
+          END IF
+ 
diff --git a/pkgs/applications/science/chemistry/jmol/default.nix b/pkgs/applications/science/chemistry/jmol/default.nix
index ee3ab5f1f3a5..bafbeb3529c6 100644
--- a/pkgs/applications/science/chemistry/jmol/default.nix
+++ b/pkgs/applications/science/chemistry/jmol/default.nix
@@ -25,14 +25,14 @@ let
   };
 in
 stdenv.mkDerivation rec {
-  version = "16.1.63";
+  version = "16.2.15";
   pname = "jmol";
 
   src = let
     baseVersion = "${lib.versions.major version}.${lib.versions.minor version}";
   in fetchurl {
     url = "mirror://sourceforge/jmol/Jmol/Version%20${baseVersion}/Jmol%20${version}/Jmol-${version}-binary.tar.gz";
-    hash = "sha256-zUX3msosz0LNQJuEUbFgT32Hw0Wq4CgW1iHMkvReysU=";
+    hash = "sha256-zPHh5IFdttliPc0SCgkM/3UQmS4eT2rfi5HqpFjY5hA=";
   };
 
   patchPhase = ''
diff --git a/pkgs/applications/science/chemistry/octopus/default.nix b/pkgs/applications/science/chemistry/octopus/default.nix
index a3a385802aaa..2e87cf3db51a 100644
--- a/pkgs/applications/science/chemistry/octopus/default.nix
+++ b/pkgs/applications/science/chemistry/octopus/default.nix
@@ -30,13 +30,13 @@ assert (blas.isILP64 == arpack.isILP64);
 
 stdenv.mkDerivation rec {
   pname = "octopus";
-  version = "14.0";
+  version = "14.1";
 
   src = fetchFromGitLab {
     owner = "octopus-code";
     repo = "octopus";
     rev = version;
-    sha256 = "sha256-wQ2I+10ZHLKamW3j6AUtq2KZVm6d29+JxYgwvBKz9DU=";
+    sha256 = "sha256-8wZR+bYdxJFsUPMWbIGYxRdNzjLgHm+KFLjY7fSN7io=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/applications/science/electronics/gtkwave/default.nix b/pkgs/applications/science/electronics/gtkwave/default.nix
index 584f59ba8b47..3e0f3613ba90 100644
--- a/pkgs/applications/science/electronics/gtkwave/default.nix
+++ b/pkgs/applications/science/electronics/gtkwave/default.nix
@@ -10,7 +10,7 @@
 , stdenv
 , tcl
 , tk
-, wrapGAppsHook
+, wrapGAppsHook3
 , xz
 }:
 
@@ -23,7 +23,7 @@ stdenv.mkDerivation rec {
     sha256 = "sha256-6rPgnnZBEVwHhIv7MPfdDDu+K4y+RQF+leB327pqwDg=";
   };
 
-  nativeBuildInputs = [ pkg-config wrapGAppsHook ];
+  nativeBuildInputs = [ pkg-config wrapGAppsHook3 ];
   buildInputs = [ bzip2 glib gperf gtk3 judy tcl tk xz ]
     ++ lib.optional stdenv.isDarwin gtk-mac-integration;
 
diff --git a/pkgs/applications/science/electronics/horizon-eda/base.nix b/pkgs/applications/science/electronics/horizon-eda/base.nix
index 8ce75a6ce241..2a37c0265dc3 100644
--- a/pkgs/applications/science/electronics/horizon-eda/base.nix
+++ b/pkgs/applications/science/electronics/horizon-eda/base.nix
@@ -9,12 +9,14 @@
 , libgit2
 , librsvg
 , libuuid
-, opencascade-occt
+, opencascade-occt_7_6
 , pkg-config
 , podofo
 , sqlite
 }:
-
+let
+  opencascade-occt = opencascade-occt_7_6;
+in
 # This base is used in horizon-eda and python3Packages.horizon-eda
 rec {
   pname = "horizon-eda";
diff --git a/pkgs/applications/science/electronics/horizon-eda/default.nix b/pkgs/applications/science/electronics/horizon-eda/default.nix
index 1fbc92f06115..40a91937f07f 100644
--- a/pkgs/applications/science/electronics/horizon-eda/default.nix
+++ b/pkgs/applications/science/electronics/horizon-eda/default.nix
@@ -4,7 +4,7 @@
 , coreutils
 , libspnav
 , python3
-, wrapGAppsHook
+, wrapGAppsHook3
 }:
 
 let
@@ -24,7 +24,7 @@ stdenv.mkDerivation rec {
 
   nativeBuildInputs = base.nativeBuildInputs ++ [
     boost.dev
-    wrapGAppsHook
+    wrapGAppsHook3
     python3
   ];
 
diff --git a/pkgs/applications/science/electronics/kicad/base.nix b/pkgs/applications/science/electronics/kicad/base.nix
index 209d47875f8d..b5f721c3d772 100644
--- a/pkgs/applications/science/electronics/kicad/base.nix
+++ b/pkgs/applications/science/electronics/kicad/base.nix
@@ -42,7 +42,7 @@
 , swig4
 , python
 , wxPython
-, opencascade-occt
+, opencascade-occt_7_6
 , libngspice
 , valgrind
 
@@ -65,6 +65,7 @@ assert testing -> !stable
   -> throw "testing implies stable and cannot be used with stable = false";
 
 let
+  opencascade-occt = opencascade-occt_7_6;
   inherit (lib) optional optionals optionalString;
 in
 stdenv.mkDerivation rec {
diff --git a/pkgs/applications/science/electronics/kicad/default.nix b/pkgs/applications/science/electronics/kicad/default.nix
index 99670eee8a46..1cec011fae33 100644
--- a/pkgs/applications/science/electronics/kicad/default.nix
+++ b/pkgs/applications/science/electronics/kicad/default.nix
@@ -193,14 +193,14 @@ stdenv.mkDerivation rec {
       "${symbols}/share/kicad/template"
     ];
   };
-  # We are emulating wrapGAppsHook, along with other variables to the wrapper
+  # We are emulating wrapGAppsHook3, along with other variables to the wrapper
   makeWrapperArgs = with passthru.libraries; [
     "--prefix XDG_DATA_DIRS : ${base}/share"
     "--prefix XDG_DATA_DIRS : ${hicolor-icon-theme}/share"
     "--prefix XDG_DATA_DIRS : ${gnome.adwaita-icon-theme}/share"
     "--prefix XDG_DATA_DIRS : ${gtk3}/share/gsettings-schemas/${gtk3.name}"
     "--prefix XDG_DATA_DIRS : ${gsettings-desktop-schemas}/share/gsettings-schemas/${gsettings-desktop-schemas.name}"
-    # wrapGAppsHook did these two as well, no idea if it matters...
+    # wrapGAppsHook3 did these two as well, no idea if it matters...
     "--prefix XDG_DATA_DIRS : ${cups}/share"
     "--prefix GIO_EXTRA_MODULES : ${dconf}/lib/gio/modules"
     # required to open a bug report link in firefox-wayland
diff --git a/pkgs/applications/science/electronics/nvc/default.nix b/pkgs/applications/science/electronics/nvc/default.nix
index 9bab9991baf8..62b62ff15faa 100644
--- a/pkgs/applications/science/electronics/nvc/default.nix
+++ b/pkgs/applications/science/electronics/nvc/default.nix
@@ -15,13 +15,13 @@
 
 stdenv.mkDerivation rec {
   pname = "nvc";
-  version = "1.12.0";
+  version = "1.12.2";
 
   src = fetchFromGitHub {
     owner = "nickg";
     repo = "nvc";
     rev = "r${version}";
-    hash = "sha256-7g4Ki5lhmX/13XCv0on1PgvEthCTfe9wh8EFjMcP1+c=";
+    hash = "sha256-9nqho+iDqy8oQLSxBppXoafzEuS6AkcUuqEY3xxfFs4=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/applications/science/electronics/openboardview/default.nix b/pkgs/applications/science/electronics/openboardview/default.nix
index 4eaf29133a44..4aa9ab2b66f2 100644
--- a/pkgs/applications/science/electronics/openboardview/default.nix
+++ b/pkgs/applications/science/electronics/openboardview/default.nix
@@ -9,7 +9,7 @@
 , SDL2
 , fontconfig
 , gtk3
-, wrapGAppsHook
+, wrapGAppsHook3
 , darwin
 }:
 
@@ -37,7 +37,7 @@ stdenv.mkDerivation rec {
     })
   ];
 
-  nativeBuildInputs = [ cmake pkg-config python3 wrapGAppsHook ];
+  nativeBuildInputs = [ cmake pkg-config python3 wrapGAppsHook3 ];
   buildInputs = [ SDL2 fontconfig gtk3 ] ++ lib.optionals stdenv.isDarwin [
     Cocoa
   ];
diff --git a/pkgs/applications/science/logic/alt-ergo/default.nix b/pkgs/applications/science/logic/alt-ergo/default.nix
index 9d151b947b40..03787a3a084b 100644
--- a/pkgs/applications/science/logic/alt-ergo/default.nix
+++ b/pkgs/applications/science/logic/alt-ergo/default.nix
@@ -2,11 +2,11 @@
 
 let
   pname = "alt-ergo";
-  version = "2.5.3";
+  version = "2.5.4";
 
   src = fetchurl {
     url = "https://github.com/OCamlPro/alt-ergo/releases/download/v${version}/alt-ergo-${version}.tbz";
-    hash = "sha256-tmWLZBLfdmfYlCQq+zcUneeueDAE6AJeZMy8kfNCC04=";
+    hash = "sha256-AsHok5i62vqJ5hK8XRiD8hM6JQaFv3dMxZAcVYEim6w=";
   };
 in
 
diff --git a/pkgs/applications/science/logic/coq/default.nix b/pkgs/applications/science/logic/coq/default.nix
index 37a8aba7d8c7..68b424b32fb4 100644
--- a/pkgs/applications/science/logic/coq/default.nix
+++ b/pkgs/applications/science/logic/coq/default.nix
@@ -11,7 +11,7 @@
 , ocamlPackages_4_14
 , ncurses
 , buildIde ? null # default is true for Coq < 8.14 and false for Coq >= 8.14
-, glib, gnome, wrapGAppsHook, makeDesktopItem, copyDesktopItems
+, glib, gnome, wrapGAppsHook3, makeDesktopItem, copyDesktopItems
 , csdp ? null
 , version, coq-version ? null
 }@args:
@@ -147,7 +147,7 @@ self = stdenv.mkDerivation {
   nativeBuildInputs = [ pkg-config ]
     ++ ocamlNativeBuildInputs
     ++ optional buildIde copyDesktopItems
-    ++ optional (buildIde && coqAtLeast "8.10") wrapGAppsHook
+    ++ optional (buildIde && coqAtLeast "8.10") wrapGAppsHook3
     ++ optional (!coqAtLeast "8.6") gnumake42;
   buildInputs = [ ncurses ]
     ++ optionals buildIde
diff --git a/pkgs/applications/science/logic/eprover/default.nix b/pkgs/applications/science/logic/eprover/default.nix
index d4a8b7a6b2e8..85833940157f 100644
--- a/pkgs/applications/science/logic/eprover/default.nix
+++ b/pkgs/applications/science/logic/eprover/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   pname = "eprover";
-  version = "3.0.03";
+  version = "3.1";
 
   src = fetchurl {
     url = "https://wwwlehre.dhbw-stuttgart.de/~sschulz/WORK/E_DOWNLOAD/V_${version}/E.tgz";
-    hash = "sha256-cS5zUe2N9Kd9uzbNpeBtvLbgUN0c3N3tGcYczK3KsdQ=";
+    hash = "sha256-+E2z7JAkiNXhZrWRXFbhI5f9NmB0Q4eixab4GlAFqYY=";
   };
 
   buildInputs = [ which ];
diff --git a/pkgs/applications/science/logic/prooftree/default.nix b/pkgs/applications/science/logic/prooftree/default.nix
index adb64f02c14f..d0d95818ff93 100644
--- a/pkgs/applications/science/logic/prooftree/default.nix
+++ b/pkgs/applications/science/logic/prooftree/default.nix
@@ -14,8 +14,7 @@ stdenv.mkDerivation rec {
   nativeBuildInputs = [ pkg-config ] ++ (with ocamlPackages; [ ocaml findlib camlp5 ]);
   buildInputs = [ ncurses ] ++ (with ocamlPackages; [ lablgtk ]);
 
-  dontAddPrefix = true;
-  configureFlags = [ "--prefix" "$(out)" ];
+  prefixKey = "--prefix ";
 
   meta = with lib; {
     description = "A program for proof-tree visualization";
diff --git a/pkgs/applications/science/logic/tlaplus/toolbox.nix b/pkgs/applications/science/logic/tlaplus/toolbox.nix
index 288ddc06806a..1d5cfa5c5d93 100644
--- a/pkgs/applications/science/logic/tlaplus/toolbox.nix
+++ b/pkgs/applications/science/logic/tlaplus/toolbox.nix
@@ -7,7 +7,7 @@
 , libXtst
 , glib
 , zlib
-, wrapGAppsHook
+, wrapGAppsHook3
 }:
 
 let
@@ -36,7 +36,7 @@ stdenv.mkDerivation rec {
 
   nativeBuildInputs = [
     makeShellWrapper
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   dontWrapGApps = true;
diff --git a/pkgs/applications/science/logic/why3/default.nix b/pkgs/applications/science/logic/why3/default.nix
index 74659a58f13e..42256ae70aa6 100644
--- a/pkgs/applications/science/logic/why3/default.nix
+++ b/pkgs/applications/science/logic/why3/default.nix
@@ -2,7 +2,7 @@
 , ocamlPackages, coqPackages, rubber, hevea, emacs
 , version ? "1.7.2"
 , ideSupport ? true
-, wrapGAppsHook
+, wrapGAppsHook3
 }:
 
 stdenv.mkDerivation rec {
@@ -20,7 +20,7 @@ stdenv.mkDerivation rec {
   strictDeps = true;
 
   nativeBuildInputs = lib.optional ideSupport
-    wrapGAppsHook
+    wrapGAppsHook3
   ++ (with ocamlPackages;  [
     ocaml findlib menhir
   ]) ++ [
diff --git a/pkgs/applications/science/math/R/default.nix b/pkgs/applications/science/math/R/default.nix
index acfc38686ea4..5ceb413a2421 100644
--- a/pkgs/applications/science/math/R/default.nix
+++ b/pkgs/applications/science/math/R/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetchurl, bzip2, gfortran, libX11, libXmu, libXt, libjpeg, libpng
+{ lib, stdenv, fetchurl, fetchpatch, bzip2, gfortran, libX11, libXmu, libXt, libjpeg, libpng
 , libtiff, ncurses, pango, pcre2, perl, readline, tcl, texlive, texliveSmall, tk, xz, zlib
 , less, texinfo, graphviz, icu, pkg-config, bison, imake, which, jdk, blas, lapack
 , curl, Cocoa, Foundation, libobjc, libcxx, tzdata
@@ -37,6 +37,12 @@ stdenv.mkDerivation (finalAttrs: {
 
   patches = [
     ./no-usr-local-search-paths.patch
+    (fetchpatch {
+      # https://hiddenlayer.com/research/r-bitrary-code-execution/
+      name = "CVE-2024-27322.patch";
+      url = "https://github.com/r-devel/r-svn/commit/f7c46500f455eb4edfc3656c3fa20af61b16abb7.patch";
+      hash = "sha256-CH2mMmie9E96JeGSC7UGm7/roUNhK5xv6HO53N2ixEI=";
+    })
   ];
 
   # Test of the examples for package 'tcltk' fails in Darwin sandbox. See:
diff --git a/pkgs/applications/science/math/eigenmath/default.nix b/pkgs/applications/science/math/eigenmath/default.nix
index feddf92821c6..2f51a00a9b15 100644
--- a/pkgs/applications/science/math/eigenmath/default.nix
+++ b/pkgs/applications/science/math/eigenmath/default.nix
@@ -7,13 +7,13 @@
 
 stdenv.mkDerivation rec {
   pname = "eigenmath";
-  version = "0-unstable-2024-04-26";
+  version = "0-unstable-2024-05-12";
 
   src = fetchFromGitHub {
     owner = "georgeweigt";
     repo = pname;
-    rev = "14a55ff60d078b752033b4ae29d332b04b6e8912";
-    hash = "sha256-p7wcLmssTqs3LCkZWB9rhCXEc4IVgZJNBvRhS51oH5E=";
+    rev = "978b3bd582a90c8e82079f2e4e4a3a5038cbbe08";
+    hash = "sha256-DoGX8nUcWcioTq8ymB+HLsCnt9V6HTKSX4Zs2CQz78Q=";
   };
 
   checkPhase = let emulator = stdenv.hostPlatform.emulator buildPackages; in ''
diff --git a/pkgs/applications/science/math/getdp/default.nix b/pkgs/applications/science/math/getdp/default.nix
index d28f59e4be2f..5df35cce8e23 100644
--- a/pkgs/applications/science/math/getdp/default.nix
+++ b/pkgs/applications/science/math/getdp/default.nix
@@ -5,7 +5,7 @@ stdenv.mkDerivation rec {
   version = "3.6.0";
   src = fetchurl {
     url = "http://getdp.info/src/getdp-${version}-source.tgz";
-    sha256 = "sha256-N1cb72W77Dr+TzeHpLgv5FuFb+SJqyGcfn+kOfEvZgA=";
+    hash = "sha256-nzefwCV+Z9BHDofuTfhR+vhqm3cCSiUT+7cbtn601N8=";
   };
 
   inherit (petsc) mpiSupport;
diff --git a/pkgs/applications/science/math/gretl/default.nix b/pkgs/applications/science/math/gretl/default.nix
index 2c3963cecec9..552639de6c53 100644
--- a/pkgs/applications/science/math/gretl/default.nix
+++ b/pkgs/applications/science/math/gretl/default.nix
@@ -19,11 +19,11 @@
 
 stdenv.mkDerivation (finalAttrs: {
   pname = "gretl";
-  version = "2023c";
+  version = "2024a";
 
   src = fetchurl {
     url = "mirror://sourceforge/gretl/gretl-${finalAttrs.version}.tar.xz";
-    hash = "sha256-vTxCmHrTpYTo9CIPousUCnpcalS6cN1u8bRaOJyu6MI=";
+    hash = "sha256-6ha0d/n75Xf0hZM0GRHLOnM274P1h2MerB/8SHWTh+o=";
   };
 
   buildInputs = [
diff --git a/pkgs/applications/science/math/gurobi/default.nix b/pkgs/applications/science/math/gurobi/default.nix
index 53091e6a84e5..e8f4794d4179 100644
--- a/pkgs/applications/science/math/gurobi/default.nix
+++ b/pkgs/applications/science/math/gurobi/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   pname = "gurobi";
-  version = "11.0.1";
+  version = "11.0.2";
 
   src = fetchurl {
     url = "https://packages.gurobi.com/${lib.versions.majorMinor version}/gurobi${version}_linux64.tar.gz";
-    hash = "sha256-oZ7Oz22e4k6cVF3TDFxp/pE+RuU+3p/CatTWj1ci5ZY=";
+    hash = "sha256-9DrIo+25h7mgphRSrNnY2+nrNzaMbafONuUkfLKho2g=";
   };
 
   sourceRoot = "gurobi${builtins.replaceStrings ["."] [""] version}/linux64";
diff --git a/pkgs/applications/science/math/lrcalc/default.nix b/pkgs/applications/science/math/lrcalc/default.nix
index 90ee50c68280..0d968e016179 100644
--- a/pkgs/applications/science/math/lrcalc/default.nix
+++ b/pkgs/applications/science/math/lrcalc/default.nix
@@ -1,6 +1,9 @@
 { lib, stdenv
 , fetchFromBitbucket
 , autoreconfHook
+
+# Reverse dependency
+, sage
 }:
 
 stdenv.mkDerivation rec {
@@ -20,6 +23,8 @@ stdenv.mkDerivation rec {
     autoreconfHook
   ];
 
+  passthru.tests = { inherit sage; };
+
   meta = with lib; {
     description = "Littlewood-Richardson calculator";
     homepage = "http://math.rutgers.edu/~asbuch/lrcalc/";
diff --git a/pkgs/applications/science/math/nasc/default.nix b/pkgs/applications/science/math/nasc/default.nix
index d25f0ad34496..b544d5fc6b14 100644
--- a/pkgs/applications/science/math/nasc/default.nix
+++ b/pkgs/applications/science/math/nasc/default.nix
@@ -15,7 +15,7 @@
 , libqalculate
 , intltool
 , gnuplot
-, wrapGAppsHook
+, wrapGAppsHook3
 }:
 
 stdenv.mkDerivation rec {
@@ -39,7 +39,7 @@ stdenv.mkDerivation rec {
     pkg-config
     python3
     vala
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
diff --git a/pkgs/applications/science/math/polymake/default.nix b/pkgs/applications/science/math/polymake/default.nix
index 9c2623651517..576a92625d49 100644
--- a/pkgs/applications/science/math/polymake/default.nix
+++ b/pkgs/applications/science/math/polymake/default.nix
@@ -25,13 +25,13 @@
 
 stdenv.mkDerivation rec {
   pname = "polymake";
-  version = "4.11";
+  version = "4.12";
 
   src = fetchurl {
     # "The minimal version is a packager friendly version which omits
     # the bundled sources of cdd, lrs, libnormaliz, nauty and jReality."
     url = "https://polymake.org/lib/exe/fetch.php/download/polymake-${version}-minimal.tar.bz2";
-    sha256 = "sha256-XfbwrNcAEZvQxLV2Z2KFL/vYV3ZbXcyIgC/10hCK3SM=";
+    sha256 = "sha256-vVpmf/ykv3641RE0Awzj3zsW3Z0OgA+v2xzoNYZ2QNk=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/applications/science/math/pynac/default.nix b/pkgs/applications/science/math/pynac/default.nix
index 88515b92beaf..1389a5a77ece 100644
--- a/pkgs/applications/science/math/pynac/default.nix
+++ b/pkgs/applications/science/math/pynac/default.nix
@@ -10,15 +10,15 @@
 , ncurses
 }:
 
-stdenv.mkDerivation rec {
-  version = "0.7.29";
+stdenv.mkDerivation (finalAttrs: {
   pname = "pynac";
+  version = "0.7.29";
 
   src = fetchFromGitHub {
     owner = "pynac";
     repo = "pynac";
-    rev = "pynac-${version}";
-    sha256 = "sha256-ocR7emXtKs+Xe2f6dh4xEDAacgiolY8mtlLnWnNBS8A=";
+    rev = "pynac-${finalAttrs.version}";
+    hash = "sha256-ocR7emXtKs+Xe2f6dh4xEDAacgiolY8mtlLnWnNBS8A=";
   };
 
   patches = [
@@ -27,10 +27,16 @@ stdenv.mkDerivation rec {
     (fetchpatch {
       name = "realpartloop.patch";
       url = "https://git.sagemath.org/sage.git/plain/build/pkgs/pynac/patches/realpartloop.patch?h=9.4.beta5";
-      sha256 = "sha256-1nj0xtlFN5fZKEiRLD+tiW/ZtxMQre1ziEGA0OVUGE4=";
+      hash = "sha256-1nj0xtlFN5fZKEiRLD+tiW/ZtxMQre1ziEGA0OVUGE4=";
     })
   ];
 
+  # Python 3.11 moved this header file, but is now is imported by default
+  postPatch = ''
+    substituteInPlace ginac/numeric.cpp \
+        --replace-fail "#include <longintrepr.h>" ""
+  '';
+
   buildInputs = [
     flint
     gmp
@@ -57,4 +63,4 @@ stdenv.mkDerivation rec {
     maintainers = teams.sage.members;
     platforms   = platforms.unix;
   };
-}
+})
diff --git a/pkgs/applications/science/math/qalculate-gtk/default.nix b/pkgs/applications/science/math/qalculate-gtk/default.nix
index 2a2b4617d24b..ab11d833f70c 100644
--- a/pkgs/applications/science/math/qalculate-gtk/default.nix
+++ b/pkgs/applications/science/math/qalculate-gtk/default.nix
@@ -1,19 +1,19 @@
-{ lib, stdenv, fetchFromGitHub, intltool, autoreconfHook, pkg-config, libqalculate, gtk3, curl, wrapGAppsHook, desktopToDarwinBundle }:
+{ lib, stdenv, fetchFromGitHub, intltool, autoreconfHook, pkg-config, libqalculate, gtk3, curl, wrapGAppsHook3, desktopToDarwinBundle }:
 
 stdenv.mkDerivation (finalAttrs: {
   pname = "qalculate-gtk";
-  version = "5.0.0";
+  version = "5.1.0";
 
   src = fetchFromGitHub {
     owner = "qalculate";
     repo = "qalculate-gtk";
     rev = "v${finalAttrs.version}";
-    hash = "sha256-hlGNL7aMzxBxtATWJBqJTFEQqMv10oC3sRCdtRLHOww=";
+    hash = "sha256-yI+8TrNZJt4eJnDX5mk6RozBe2ZeP7sTyAjsgiYQPck=";
   };
 
   hardeningDisable = [ "format" ];
 
-  nativeBuildInputs = [ intltool pkg-config autoreconfHook wrapGAppsHook ]
+  nativeBuildInputs = [ intltool pkg-config autoreconfHook wrapGAppsHook3 ]
     ++ lib.optionals stdenv.isDarwin [ desktopToDarwinBundle ];
   buildInputs = [ libqalculate gtk3 curl ];
   enableParallelBuilding = true;
diff --git a/pkgs/applications/science/math/qalculate-qt/default.nix b/pkgs/applications/science/math/qalculate-qt/default.nix
index 296fc5f783f3..a830c7ddd00e 100644
--- a/pkgs/applications/science/math/qalculate-qt/default.nix
+++ b/pkgs/applications/science/math/qalculate-qt/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation (finalAttrs: {
   pname = "qalculate-qt";
-  version = "5.0.0";
+  version = "5.1.0";
 
   src = fetchFromGitHub {
     owner = "qalculate";
     repo = "qalculate-qt";
     rev = "v${finalAttrs.version}";
-    hash = "sha256-X7IY2yXpZiyE+T2dl0G4tWpJ5O6MVCy/sOY3v9inma0=";
+    hash = "sha256-gJfIC5HdA10gb/Dh/yhJbkCZfhUnN0zihqyfDjPv6ow=";
   };
 
   nativeBuildInputs = [ qmake intltool pkg-config qttools wrapQtAppsHook ];
diff --git a/pkgs/applications/science/math/rofi-calc/default.nix b/pkgs/applications/science/math/rofi-calc/default.nix
index be126e5fa397..14f8fe734bd6 100644
--- a/pkgs/applications/science/math/rofi-calc/default.nix
+++ b/pkgs/applications/science/math/rofi-calc/default.nix
@@ -7,7 +7,7 @@
 , glib
 , cairo
 , gobject-introspection
-, wrapGAppsHook
+, wrapGAppsHook3
 }:
 
 stdenv.mkDerivation rec {
@@ -25,7 +25,7 @@ stdenv.mkDerivation rec {
     autoreconfHook
     pkg-config
     gobject-introspection
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
diff --git a/pkgs/applications/science/math/sage/sagelib.nix b/pkgs/applications/science/math/sage/sagelib.nix
index 0a2bd8011b0b..1552de773d01 100644
--- a/pkgs/applications/science/math/sage/sagelib.nix
+++ b/pkgs/applications/science/math/sage/sagelib.nix
@@ -6,6 +6,7 @@
 , perl
 , pkg-config
 , sage-setup
+, pythonRelaxDepsHook
 , gd
 , iml
 , libpng
@@ -102,6 +103,11 @@ buildPythonPackage rec {
     pip # needed to query installed packages
     pkg-config
     sage-setup
+    pythonRelaxDepsHook
+  ];
+
+  pythonRelaxDeps = [
+    "networkx"
   ];
 
   buildInputs = [
diff --git a/pkgs/applications/science/math/wxmaxima/default.nix b/pkgs/applications/science/math/wxmaxima/default.nix
index 4d2815d12997..db2ff0c4a844 100644
--- a/pkgs/applications/science/math/wxmaxima/default.nix
+++ b/pkgs/applications/science/math/wxmaxima/default.nix
@@ -1,7 +1,7 @@
 { lib
 , stdenv
 , fetchFromGitHub
-, wrapGAppsHook
+, wrapGAppsHook3
 , cmake
 , gettext
 , maxima
@@ -12,13 +12,13 @@
 
 stdenv.mkDerivation (finalAttrs:{
   pname = "wxmaxima";
-  version = "24.02.2";
+  version = "24.05.0";
 
   src = fetchFromGitHub {
     owner = "wxMaxima-developers";
     repo = "wxmaxima";
     rev = "Version-${finalAttrs.version}";
-    hash = "sha256-ewyg+ZhbRbPjJkYTZFuhbOWMDNZGW7ejmSv38zxcTsw=";
+    hash = "sha256-pl3sO28HANL9F41aaJznxUsH2Y7W/FO82Rik2/ik2Ag=";
   };
 
   buildInputs = [
@@ -31,7 +31,7 @@ stdenv.mkDerivation (finalAttrs:{
   ];
 
   nativeBuildInputs = [
-    wrapGAppsHook
+    wrapGAppsHook3
     cmake
     gettext
   ];
diff --git a/pkgs/applications/science/medicine/xmedcon/default.nix b/pkgs/applications/science/medicine/xmedcon/default.nix
index b09183f71b96..e5c5bf68d53a 100644
--- a/pkgs/applications/science/medicine/xmedcon/default.nix
+++ b/pkgs/applications/science/medicine/xmedcon/default.nix
@@ -6,7 +6,7 @@
 , pkg-config
 , libpng
 , zlib
-, wrapGAppsHook
+, wrapGAppsHook3
 }:
 
 stdenv.mkDerivation rec {
@@ -25,7 +25,7 @@ stdenv.mkDerivation rec {
     zlib
   ];
 
-  nativeBuildInputs = [ pkg-config wrapGAppsHook ];
+  nativeBuildInputs = [ pkg-config wrapGAppsHook3 ];
 
   meta = with lib; {
     description = "An open source toolkit for medical image conversion ";
diff --git a/pkgs/applications/science/misc/rink/default.nix b/pkgs/applications/science/misc/rink/default.nix
index 1e88047eba72..6b5917e16328 100644
--- a/pkgs/applications/science/misc/rink/default.nix
+++ b/pkgs/applications/science/misc/rink/default.nix
@@ -1,22 +1,22 @@
 { lib, stdenv, fetchFromGitHub, rustPlatform, openssl, pkg-config, ncurses
-, libiconv, Security }:
+, curl, libiconv, Security }:
 
 rustPlatform.buildRustPackage rec {
-  version = "0.7.0";
+  version = "0.8.0";
   pname = "rink";
 
   src = fetchFromGitHub {
     owner = "tiffany352";
     repo = "rink-rs";
     rev = "v${version}";
-    sha256 = "sha256-5UrSJ/y6GxDUNaljal57JJY17NuI+2yLwVTwp+xBNxs=";
+    hash = "sha256-2+ZkyWhEnnO/QgCzWscbMr0u5kwdv2HqPLjtiXDfv/o=";
   };
 
-  cargoHash = "sha256-G30NcP1ej01ygHzaxZ2OdgfksvXe/SCsmZFwamxlDvA=";
+  cargoHash = "sha256-j1pQfMjDNu57otOBTVBQEZIx80p4/beEUQdUkAJhvso=";
 
   nativeBuildInputs = [ pkg-config ];
   buildInputs = [ ncurses ]
-    ++ (if stdenv.isDarwin then [ libiconv Security ] else [ openssl ]);
+    ++ (if stdenv.isDarwin then [ curl libiconv Security ] else [ openssl ]);
 
   # Some tests fail and/or attempt to use internet servers.
   doCheck = false;
diff --git a/pkgs/applications/science/misc/root/default.nix b/pkgs/applications/science/misc/root/default.nix
index 59bb9415b37d..afc048cc41ef 100644
--- a/pkgs/applications/science/misc/root/default.nix
+++ b/pkgs/applications/science/misc/root/default.nix
@@ -1,6 +1,7 @@
 { stdenv
 , lib
 , callPackage
+, fetchgit
 , fetchurl
 , fetchpatch
 , makeWrapper
@@ -68,6 +69,12 @@ stdenv.mkDerivation rec {
     hash = "sha256-MA237RtnjtL7ljXKZ1khoZRcfCED2oQAM7STCR9VcAw=";
   };
 
+  clad_src = fetchgit {
+    url = "https://github.com/vgvassilev/clad";
+    rev = "refs/tags/v1.4"; # Make sure that this is the same tag as in the ROOT build files!
+    hash = "sha256-OI9PaS7kQ/ewD5Soe3gG5FZdlR6qG6Y3mfHwi5dj1sI=";
+  };
+
   nativeBuildInputs = [ makeWrapper cmake pkg-config git ];
   propagatedBuildInputs = [
     nlohmann_json
@@ -131,6 +138,23 @@ stdenv.mkDerivation rec {
     substituteInPlace cmake/modules/SearchInstalledSoftware.cmake \
       --replace 'set(lcgpackages ' '#set(lcgpackages '
 
+    # We have to bypass the connection check, because it would disable clad.
+    # This should probably be fixed upstream with a flag to disable the
+    # connectivity check!
+    substituteInPlace CMakeLists.txt \
+      --replace 'if(NO_CONNECTION)' 'if(FALSE)'
+    substituteInPlace interpreter/cling/tools/plugins/CMakeLists.txt \
+      --replace 'if(NOT DEFINED NO_CONNECTION OR NOT NO_CONNECTION)' 'if(TRUE)'
+    # Make sure that clad is not downloaded when building
+    substituteInPlace interpreter/cling/tools/plugins/clad/CMakeLists.txt \
+      --replace 'UPDATE_COMMAND ""' 'SOURCE_DIR ${clad_src} DOWNLOAD_COMMAND "" UPDATE_COMMAND ""'
+    # Make sure that clad is finding the right llvm version
+    substituteInPlace interpreter/cling/tools/plugins/clad/CMakeLists.txt \
+      --replace '-DLLVM_DIR=''${LLVM_BINARY_DIR}' '-DLLVM_DIR=${llvm_13.dev}/lib/cmake/llvm'
+    # Fix that will also be upstream in ROOT 6.32. TODO: remove it when updating to 6.32
+    substituteInPlace interpreter/cling/tools/plugins/clad/CMakeLists.txt \
+      --replace 'set(_CLAD_LIBRARY_PATH ''${clad_install_dir}/plugins/lib)' 'set(_CLAD_LIBRARY_PATH ''${CMAKE_CURRENT_BINARY_DIR}/clad-prefix/src/clad-build/lib''${LLVM_LIBDIR_SUFFIX})'
+
     substituteInPlace interpreter/llvm-project/clang/tools/driver/CMakeLists.txt \
       --replace 'add_clang_symlink(''${link} clang)' ""
 
@@ -151,40 +175,18 @@ stdenv.mkDerivation rec {
   '';
 
   cmakeFlags = [
-    "-Drpath=ON"
     "-DCMAKE_INSTALL_BINDIR=bin"
     "-DCMAKE_INSTALL_LIBDIR=lib"
     "-DCMAKE_INSTALL_INCLUDEDIR=include"
     "-Dbuiltin_llvm=OFF"
-    "-Dbuiltin_freetype=OFF"
-    "-Dbuiltin_gtest=OFF"
-    "-Dbuiltin_nlohmannjson=OFF"
-    "-Dbuiltin_openui5=ON"
-    "-Dclad=OFF"
-    "-Ddavix=ON"
-    "-Ddcache=OFF"
     "-Dfail-on-missing=ON"
-    "-Dfftw3=OFF"
     "-Dfitsio=OFF"
-    "-Dfortran=OFF"
     "-Dgnuinstall=ON"
-    "-Dimt=ON"
-    "-Dgviz=OFF"
-    "-Dhttp=ON"
     "-Dmysql=OFF"
-    "-Dodbc=OFF"
-    "-Dopengl=ON"
     "-Dpgsql=OFF"
-    "-Dpythia8=OFF"
-    "-Droot7=ON"
     "-Dsqlite=OFF"
-    "-Dssl=ON"
-    "-Dtmva=ON"
     "-Dtmva-pymva=OFF"
     "-Dvdt=OFF"
-    "-Dwebgui=ON"
-    "-Dxml=ON"
-    "-Dxrootd=ON"
   ]
   ++ lib.optional (stdenv.cc.libc != null) "-DC_INCLUDE_DIRS=${lib.getDev stdenv.cc.libc}/include"
   ++ lib.optionals stdenv.isDarwin [
@@ -195,6 +197,9 @@ stdenv.mkDerivation rec {
     "-Druntime_cxxmodules=OFF"
   ];
 
+  # suppress warnings from compilation of the vendored clang to avoid running into log limits on the Hydra
+  NIX_CFLAGS_COMPILE = lib.optionals stdenv.cc.isGNU [ "-Wno-shadow" "-Wno-maybe-uninitialized" ];
+
   postInstall = ''
     for prog in rootbrowse rootcp rooteventselector rootls rootmkdir rootmv rootprint rootrm rootslimtree; do
       wrapProgram "$out/bin/$prog" \
@@ -251,7 +256,7 @@ stdenv.mkDerivation rec {
   setupHook = ./setup-hook.sh;
 
   meta = with lib; {
-    homepage = "https://root.cern.ch/";
+    homepage = "https://root.cern/";
     description = "A data analysis framework";
     platforms = platforms.unix;
     maintainers = [ maintainers.guitargeek maintainers.veprbl ];
diff --git a/pkgs/applications/science/misc/root/setup-hook.sh b/pkgs/applications/science/misc/root/setup-hook.sh
index 34c9bfdcebbd..7affd21012eb 100644
--- a/pkgs/applications/science/misc/root/setup-hook.sh
+++ b/pkgs/applications/science/misc/root/setup-hook.sh
@@ -12,8 +12,8 @@ thisroot () {
 
 postHooks+=(thisroot)
 
-addRootInludePath() {
+addRootIncludePath() {
     addToSearchPath ROOT_INCLUDE_PATH $1/include
 }
 
-addEnvHooks "$targetOffset" addRootInludePath
+addEnvHooks "$targetOffset" addRootIncludePath
diff --git a/pkgs/applications/science/misc/root/sw_vers.patch b/pkgs/applications/science/misc/root/sw_vers.patch
index 54ad1091392e..2a0fcd757719 100644
--- a/pkgs/applications/science/misc/root/sw_vers.patch
+++ b/pkgs/applications/science/misc/root/sw_vers.patch
@@ -48,7 +48,7 @@ diff a/cmake/modules/SetUpMacOS.cmake b/cmake/modules/SetUpMacOS.cmake
    #---Set Linker flags----------------------------------------------------------------------
 -  set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -mmacosx-version-min=${MACOSX_VERSION}")
  else (CMAKE_SYSTEM_NAME MATCHES Darwin)
-   MESSAGE(FATAL_ERROR "There is no setup for this this Apple system up to now. Don't know waht to do. Stop cmake at this point.")
+   MESSAGE(FATAL_ERROR "There is no setup for this this Apple system up to now. Don't know what to do. Stop cmake at this point.")
  endif (CMAKE_SYSTEM_NAME MATCHES Darwin)
 diff a/config/root-config.in b/config/root-config.in
 --- a/config/root-config.in
diff --git a/pkgs/applications/science/misc/snakemake/default.nix b/pkgs/applications/science/misc/snakemake/default.nix
index fa670b85621c..1a171f2c7db5 100644
--- a/pkgs/applications/science/misc/snakemake/default.nix
+++ b/pkgs/applications/science/misc/snakemake/default.nix
@@ -6,14 +6,14 @@
 
 python3.pkgs.buildPythonApplication rec {
   pname = "snakemake";
-  version = "8.11.0";
+  version = "8.11.4";
   format = "setuptools";
 
   src = fetchFromGitHub {
     owner = "snakemake";
     repo = pname;
     rev = "refs/tags/v${version}";
-    hash = "sha256-bAzhQMGI4t/ftcZnz6h/PmlDlGgMU8vFVHb9QXED/Hw=";
+    hash = "sha256-nfPA2sQCeRc12A4rrlo17UPpiB8plKYbiumZjS7Yhz8=";
     # https://github.com/python-versioneer/python-versioneer/issues/217
     postFetch = ''
       sed -i "$out"/snakemake/_version.py -e 's#git_refnames = ".*"#git_refnames = " (tag: v${version})"#'
diff --git a/pkgs/applications/science/physics/crystfel/default.nix b/pkgs/applications/science/physics/crystfel/default.nix
index 33f204360317..e7eb69fb4e1c 100644
--- a/pkgs/applications/science/physics/crystfel/default.nix
+++ b/pkgs/applications/science/physics/crystfel/default.nix
@@ -18,7 +18,7 @@
 , pandoc
 , eigen
 , pkg-config
-, wrapGAppsHook
+, wrapGAppsHook3
 , flex
 , bison
 , doxygen
@@ -193,7 +193,7 @@ stdenv.mkDerivation rec {
     sha256 = "sha256-ogNHWYfbxRmB5TdK8K0JpcCnYOOyXapQGSPh8mfp+Tc=";
   };
   nativeBuildInputs = [ meson pkg-config ninja flex bison doxygen opencl-headers makeWrapper ]
-    ++ lib.optionals withGui [ wrapGAppsHook ];
+    ++ lib.optionals withGui [ wrapGAppsHook3 ];
   buildInputs = [
     hdf5
     gsl
diff --git a/pkgs/applications/science/physics/elmerfem/default.nix b/pkgs/applications/science/physics/elmerfem/default.nix
index e63203a93f28..c3720602d08d 100644
--- a/pkgs/applications/science/physics/elmerfem/default.nix
+++ b/pkgs/applications/science/physics/elmerfem/default.nix
@@ -1,5 +1,23 @@
-{ lib, stdenv, fetchFromGitHub, cmake, git, gfortran, mpi, blas, liblapack, pkg-config, libGL, libGLU, opencascade-occt, libsForQt5, tbb, vtkWithQt5 }:
-
+{ lib
+, stdenv
+, fetchFromGitHub
+, cmake
+, git
+, gfortran
+, mpi
+, blas
+, liblapack
+, pkg-config
+, libGL
+, libGLU
+, opencascade-occt_7_6
+, libsForQt5
+, tbb
+, vtkWithQt5
+}:
+let
+  opencascade-occt = opencascade-occt_7_6;
+in
 stdenv.mkDerivation rec {
   pname = "elmerfem";
   version = "unstable-2023-09-18";
@@ -19,6 +37,7 @@ stdenv.mkDerivation rec {
     pkg-config
     libsForQt5.wrapQtAppsHook
   ];
+
   buildInputs = [
     mpi
     blas
diff --git a/pkgs/applications/science/physics/xnec2c/default.nix b/pkgs/applications/science/physics/xnec2c/default.nix
index 60afa09ecc8c..ffdd4b6d0b07 100644
--- a/pkgs/applications/science/physics/xnec2c/default.nix
+++ b/pkgs/applications/science/physics/xnec2c/default.nix
@@ -2,7 +2,7 @@
 , stdenv
 , fetchurl
 , autoreconfHook
-, wrapGAppsHook
+, wrapGAppsHook3
 , pkg-config
 , which
 , gtk3
@@ -23,7 +23,7 @@ stdenv.mkDerivation rec {
 
   nativeBuildInputs = [
     autoreconfHook
-    wrapGAppsHook
+    wrapGAppsHook3
     pkg-config
     which
   ];
diff --git a/pkgs/applications/science/robotics/betaflight-configurator/default.nix b/pkgs/applications/science/robotics/betaflight-configurator/default.nix
index 0792d3375d0a..84f94102da13 100644
--- a/pkgs/applications/science/robotics/betaflight-configurator/default.nix
+++ b/pkgs/applications/science/robotics/betaflight-configurator/default.nix
@@ -1,4 +1,4 @@
-{lib, stdenv, fetchurl, unzip, makeDesktopItem, nwjs, wrapGAppsHook, gsettings-desktop-schemas, gtk3 }:
+{lib, stdenv, fetchurl, unzip, makeDesktopItem, nwjs, wrapGAppsHook3, gsettings-desktop-schemas, gtk3 }:
 
 let
   pname = "betaflight-configurator";
@@ -24,7 +24,7 @@ stdenv.mkDerivation rec {
     find -name "lib*.so" -delete
   '';
 
-  nativeBuildInputs = [ wrapGAppsHook unzip ];
+  nativeBuildInputs = [ wrapGAppsHook3 unzip ];
 
   buildInputs = [ gsettings-desktop-schemas gtk3 ];
 
diff --git a/pkgs/applications/science/robotics/emuflight-configurator/default.nix b/pkgs/applications/science/robotics/emuflight-configurator/default.nix
index 2c51355eb54f..62592b0cc3fc 100644
--- a/pkgs/applications/science/robotics/emuflight-configurator/default.nix
+++ b/pkgs/applications/science/robotics/emuflight-configurator/default.nix
@@ -1,5 +1,5 @@
 {lib, stdenv, fetchurl, unzip, makeDesktopItem, copyDesktopItems, nwjs
-, wrapGAppsHook, gsettings-desktop-schemas, gtk3 }:
+, wrapGAppsHook3, gsettings-desktop-schemas, gtk3 }:
 
 stdenv.mkDerivation rec {
   pname = "emuflight-configurator";
@@ -10,7 +10,7 @@ stdenv.mkDerivation rec {
     sha256 = "sha256-e4HNg5yr9V5LyT0hYP6gzw0tZm4dLidJg5MQtH3L3JI=";
   };
 
-  nativeBuildInputs = [ wrapGAppsHook unzip copyDesktopItems ];
+  nativeBuildInputs = [ wrapGAppsHook3 unzip copyDesktopItems ];
 
   buildInputs = [ gsettings-desktop-schemas gtk3 ];
 
diff --git a/pkgs/applications/science/robotics/inav-configurator/default.nix b/pkgs/applications/science/robotics/inav-configurator/default.nix
index f5216eaf6c92..1a6f5951ed34 100644
--- a/pkgs/applications/science/robotics/inav-configurator/default.nix
+++ b/pkgs/applications/science/robotics/inav-configurator/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetchurl, makeDesktopItem, copyDesktopItems, nwjs, wrapGAppsHook, gsettings-desktop-schemas, gtk3 }:
+{ lib, stdenv, fetchurl, makeDesktopItem, copyDesktopItems, nwjs, wrapGAppsHook3, gsettings-desktop-schemas, gtk3 }:
 
 stdenv.mkDerivation rec {
   pname = "inav-configurator";
@@ -14,7 +14,7 @@ stdenv.mkDerivation rec {
     sha256 = "1i844dzzc5s5cr4vfpi6k2kdn8jiqq2n6c0fjqvsp4wdidwjahzw";
   };
 
-  nativeBuildInputs = [ copyDesktopItems wrapGAppsHook ];
+  nativeBuildInputs = [ copyDesktopItems wrapGAppsHook3 ];
 
   buildInputs = [ gsettings-desktop-schemas gtk3 ];
 
diff --git a/pkgs/applications/science/robotics/mujoco/default.nix b/pkgs/applications/science/robotics/mujoco/default.nix
index 3013ce74a334..76c18a788c30 100644
--- a/pkgs/applications/science/robotics/mujoco/default.nix
+++ b/pkgs/applications/science/robotics/mujoco/default.nix
@@ -12,12 +12,12 @@
 let
   pin = {
 
-    # See https://github.com/google-deepmind/mujoco/blob/3.0.0/cmake/MujocoDependencies.cmake#L17-L64
+    # See https://github.com/google-deepmind/mujoco/blob/<VERSION>/cmake/MujocoDependencies.cmake#L17-L64
     abseil-cpp = fetchFromGitHub {
       owner = "abseil";
       repo = "abseil-cpp";
-      rev = "2f9e432cce407ce0ae50676696666f33a77d42ac";
-      hash = "sha256-D4E11bICKr3Z5RRah7QkfXVsXtuUg32FMmKpiOGjZDM=";
+      rev = "d7aaad83b488fd62bd51c81ecf16cd938532cc0a";
+      hash = "sha256-eA2/dZpNOlex1O5PNa3XSZhpMB3AmaIoHzVDI9TD/cg=";
     };
     benchmark = fetchFromGitHub {
       owner = "google";
@@ -70,8 +70,8 @@ let
     marchingcubecpp = fetchFromGitHub {
       owner = "aparis69";
       repo = "MarchingCubeCpp";
-      rev = "5b79e5d6bded086a0abe276a4b5a69fc17ae9bf1";
-      hash = "sha256-L0DH1GJZ/3vatQAU/KZj/2xTKE6Fwcw9eQYzLdqX2N4=";
+      rev = "f03a1b3ec29b1d7d865691ca8aea4f1eb2c2873d";
+      hash = "sha256-90ei0lpJA8XuVGI0rGb3md0Qtq8/bdkU7dUCHpp88Bw=";
     };
 
     tmd = stdenv.mkDerivation rec {
@@ -129,7 +129,7 @@ let
 
 in stdenv.mkDerivation rec {
   pname = "mujoco";
-  version = "3.1.4";
+  version = "3.1.5";
 
   # Bumping version? Make sure to look though the MuJoCo's commit
   # history for bumped dependency pins!
@@ -137,7 +137,7 @@ in stdenv.mkDerivation rec {
     owner = "google-deepmind";
     repo = "mujoco";
     rev = "refs/tags/${version}";
-    hash = "sha256-VgD6ditMDpHki7l23Gjip2roA8Oi4MGpxl+4gSLTEFs=";
+    hash = "sha256-XKN489oexHf2/Gv0MVxXUzqyeJJTJXV99+fNi8shdsg=";
   };
 
   patches = [ ./mujoco-system-deps-dont-fetch.patch ];
diff --git a/pkgs/applications/search/recoll/default.nix b/pkgs/applications/search/recoll/default.nix
index 99d4b79d1cc0..707a29307e76 100644
--- a/pkgs/applications/search/recoll/default.nix
+++ b/pkgs/applications/search/recoll/default.nix
@@ -70,11 +70,11 @@ in
 
 mkDerivation rec {
   pname = "recoll";
-  version = "1.37.4";
+  version = "1.37.5";
 
   src = fetchurl {
     url = "https://www.lesbonscomptes.com/${pname}/${pname}-${version}.tar.gz";
-    hash = "sha256-MQnXamW7L4hyMbZDmU7XAcLv5roHcfhFGzni8YbDtq0=";
+    hash = "sha256-vv2AMt6ufrfxRX2yF28X3E500MYP9hnGfDb3I9RdMVU=";
   };
 
   configureFlags = [
@@ -158,6 +158,8 @@ mkDerivation rec {
     done
     wrapProgram $out/share/recoll/filters/rclaudio.py \
       --prefix PYTHONPATH : $PYTHONPATH
+    wrapProgram $out/share/recoll/filters/rcljoplin.py \
+      --prefix PYTHONPATH : $out/${python3Packages.python.sitePackages}
     wrapProgram $out/share/recoll/filters/rclimg \
       --prefix PERL5LIB : "${with perlPackages; makeFullPerlPath [ ImageExifTool ]}"
   '' + lib.optionalString stdenv.isLinux ''
diff --git a/pkgs/applications/system/asusctl/Cargo.lock b/pkgs/applications/system/asusctl/Cargo.lock
index 65c286d0219e..b7658ab895d4 100644
--- a/pkgs/applications/system/asusctl/Cargo.lock
+++ b/pkgs/applications/system/asusctl/Cargo.lock
@@ -4,9 +4,9 @@ version = 3
 
 [[package]]
 name = "ab_glyph"
-version = "0.2.23"
+version = "0.2.25"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "80179d7dd5d7e8c285d67c4a1e652972a92de7475beddfb92028c76463b13225"
+checksum = "6f90148830dac590fac7ccfe78ec4a8ea404c60f75a24e16407a71f0f40de775"
 dependencies = [
  "ab_glyph_rasterizer",
  "owned_ttf_parser",
@@ -19,75 +19,6 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "c71b1793ee61086797f5c80b6efa2b8ffa6d5dd703f118545808a7f2e27f7046"
 
 [[package]]
-name = "accesskit"
-version = "0.10.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "704d532b1cd3d912bb37499c55a81ac748cc1afa737eedd100ba441acdd47d38"
-
-[[package]]
-name = "accesskit_consumer"
-version = "0.14.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "48ba8b23cfca3944012ee2e5c71c02077a400e034c720eed6bd927cb6b4d1fd9"
-dependencies = [
- "accesskit",
-]
-
-[[package]]
-name = "accesskit_macos"
-version = "0.6.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "58d062544d6cc36f4213323b7cb3a0d74ddff4b0d2311ab5e7596f4278bb2cc9"
-dependencies = [
- "accesskit",
- "accesskit_consumer",
- "objc2",
- "once_cell",
-]
-
-[[package]]
-name = "accesskit_unix"
-version = "0.3.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9f8df4021f31969877b295fa80c4b07fcc7eb83f1985b0d3aa4f889c3427c3d5"
-dependencies = [
- "accesskit",
- "accesskit_consumer",
- "async-channel 1.9.0",
- "atspi",
- "futures-lite 1.13.0",
- "serde",
- "zbus",
-]
-
-[[package]]
-name = "accesskit_windows"
-version = "0.13.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "aaf5b3c3828397ee832ba4a72fb1a4ace10f781e31885f774cbd531014059115"
-dependencies = [
- "accesskit",
- "accesskit_consumer",
- "arrayvec",
- "once_cell",
- "paste",
- "windows 0.44.0",
-]
-
-[[package]]
-name = "accesskit_winit"
-version = "0.12.4"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "fbcb615217efc79c4bed3094c4ca76c4bc554751d1da16f3ed4ba0459b1e8f31"
-dependencies = [
- "accesskit",
- "accesskit_macos",
- "accesskit_unix",
- "accesskit_windows",
- "winit",
-]
-
-[[package]]
 name = "addr2line"
 version = "0.21.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -104,11 +35,12 @@ checksum = "f26201604c87b1e01bd3d98f8d5d9a8fcbb815e8cedb41ffccbeb4bf593a35fe"
 
 [[package]]
 name = "ahash"
-version = "0.8.7"
+version = "0.8.11"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "77c3a9648d43b9cd48db467b3f87fdd6e146bcc88ab0180006cef2179fe11d01"
+checksum = "e89da841a80418a9b391ebaea17f5c112ffaaa96f621d2c285b5174da76b9011"
 dependencies = [
  "cfg-if",
+ "getrandom",
  "once_cell",
  "version_check",
  "zerocopy",
@@ -116,29 +48,38 @@ dependencies = [
 
 [[package]]
 name = "aho-corasick"
-version = "1.1.2"
+version = "1.1.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b2969dcb958b36655471fc61f7e416fa76033bdd4bfed0678d8fee1e2d07a1f0"
+checksum = "8e60d3430d3a69478ad0993f19238d2df97c507009a52b3c10addcd7f6bcb916"
 dependencies = [
  "memchr",
 ]
 
 [[package]]
+name = "allocator-api2"
+version = "0.2.18"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "5c6cb57a04249c6480766f7f7cef5467412af1490f8d1e243141daddada3264f"
+
+[[package]]
 name = "android-activity"
-version = "0.4.3"
+version = "0.5.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "64529721f27c2314ced0890ce45e469574a73e5e6fdd6e9da1860eb29285f5e0"
+checksum = "ee91c0c2905bae44f84bfa4e044536541df26b7703fd0888deeb9060fcc44289"
 dependencies = [
  "android-properties",
- "bitflags 1.3.2",
+ "bitflags 2.5.0",
  "cc",
+ "cesu8",
+ "jni",
  "jni-sys",
  "libc",
  "log",
  "ndk",
  "ndk-context",
  "ndk-sys",
- "num_enum 0.6.1",
+ "num_enum",
+ "thiserror",
 ]
 
 [[package]]
@@ -163,29 +104,6 @@ dependencies = [
 ]
 
 [[package]]
-name = "anyhow"
-version = "1.0.79"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "080e9890a082662b09c1ad45f567faeeb47f22b5fb23895fbe1e651e718e25ca"
-
-[[package]]
-name = "arboard"
-version = "3.3.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "aafb29b107435aa276664c1db8954ac27a6e105cdad3c88287a199eb0e313c08"
-dependencies = [
- "clipboard-win",
- "log",
- "objc",
- "objc-foundation",
- "objc_id",
- "parking_lot",
- "thiserror",
- "winapi",
- "x11rb",
-]
-
-[[package]]
 name = "arrayref"
 version = "0.3.7"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -199,27 +117,25 @@ checksum = "96d30a06541fbafbc7f82ed10c06164cfbd2c401138f6addd8404629c4b16711"
 
 [[package]]
 name = "asusctl"
-version = "5.0.10"
+version = "6.0.6"
 dependencies = [
  "asusd",
  "cargo-husky",
  "dmi_id",
- "gif",
- "glam",
  "gumdrop",
  "rog_anime",
  "rog_aura",
  "rog_dbus",
  "rog_platform",
  "rog_profiles",
- "tinybmp",
- "tokio",
- "toml 0.5.11",
+ "rog_slash",
+ "ron",
+ "zbus",
 ]
 
 [[package]]
 name = "asusd"
-version = "5.0.10"
+version = "6.0.6"
 dependencies = [
  "cargo-husky",
  "concat-idents",
@@ -230,46 +146,48 @@ dependencies = [
  "inotify",
  "log",
  "logind-zbus",
+ "mio",
  "rog_anime",
  "rog_aura",
  "rog_platform",
  "rog_profiles",
+ "rog_slash",
  "serde",
  "serde_derive",
- "systemd-zbus",
  "tokio",
- "udev",
+ "udev 0.8.0",
  "zbus",
 ]
 
 [[package]]
 name = "asusd-user"
-version = "5.0.10"
+version = "6.0.6"
 dependencies = [
  "cargo-husky",
  "config-traits",
  "dirs",
  "env_logger",
- "log",
  "rog_anime",
  "rog_aura",
  "rog_dbus",
  "rog_platform",
+ "ron",
  "serde",
  "serde_derive",
- "serde_json",
  "smol",
  "zbus",
 ]
 
 [[package]]
 name = "async-broadcast"
-version = "0.5.1"
+version = "0.7.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7c48ccdbf6ca6b121e0f586cbc0e73ae440e56c67c30fa0873b4e110d9c26d2b"
+checksum = "258b52a1aa741b9f09783b2d86cf0aeeb617bbf847f6933340a39644227acbdb"
 dependencies = [
- "event-listener 2.5.3",
+ "event-listener 5.3.0",
+ "event-listener-strategy 0.5.2",
  "futures-core",
+ "pin-project-lite",
 ]
 
 [[package]]
@@ -285,28 +203,27 @@ dependencies = [
 
 [[package]]
 name = "async-channel"
-version = "2.1.1"
+version = "2.2.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1ca33f4bc4ed1babef42cad36cc1f51fa88be00420404e5b1e80ab1b18f7678c"
+checksum = "136d4d23bcc79e27423727b36823d86233aad06dfea531837b038394d11e9928"
 dependencies = [
  "concurrent-queue",
- "event-listener 4.0.3",
- "event-listener-strategy",
+ "event-listener 5.3.0",
+ "event-listener-strategy 0.5.2",
  "futures-core",
  "pin-project-lite",
 ]
 
 [[package]]
 name = "async-executor"
-version = "1.8.0"
+version = "1.11.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "17ae5ebefcc48e7452b4987947920dac9450be1110cadf34d1b8c116bdbaf97c"
+checksum = "b10202063978b3351199d68f8b22c4e47e4b1b822f8d43fd862d5ea8c006b29a"
 dependencies = [
- "async-lock 3.3.0",
  "async-task",
  "concurrent-queue",
- "fastrand 2.0.1",
- "futures-lite 2.2.0",
+ "fastrand 2.1.0",
+ "futures-lite 2.3.0",
  "slab",
 ]
 
@@ -323,6 +240,17 @@ dependencies = [
 ]
 
 [[package]]
+name = "async-fs"
+version = "2.1.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "ebcd09b382f40fcd159c2d695175b2ae620ffa5f3bd6f664131efff4e8b9e04a"
+dependencies = [
+ "async-lock 3.3.0",
+ "blocking",
+ "futures-lite 2.3.0",
+]
+
+[[package]]
 name = "async-io"
 version = "1.13.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -344,18 +272,18 @@ dependencies = [
 
 [[package]]
 name = "async-io"
-version = "2.3.0"
+version = "2.3.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "fb41eb19024a91746eba0773aa5e16036045bbf45733766661099e182ea6a744"
+checksum = "dcccb0f599cfa2f8ace422d3555572f47424da5648a4382a9dd0310ff8210884"
 dependencies = [
  "async-lock 3.3.0",
  "cfg-if",
  "concurrent-queue",
  "futures-io",
- "futures-lite 2.2.0",
+ "futures-lite 2.3.0",
  "parking",
- "polling 3.3.2",
- "rustix 0.38.30",
+ "polling 3.7.0",
+ "rustix 0.38.34",
  "slab",
  "tracing",
  "windows-sys 0.52.0",
@@ -377,7 +305,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "d034b430882f8381900d3fe6f0aaa3ad94f2cb4ac519b429692a1bc2dda4ae7b"
 dependencies = [
  "event-listener 4.0.3",
- "event-listener-strategy",
+ "event-listener-strategy 0.4.0",
  "pin-project-lite",
 ]
 
@@ -405,78 +333,74 @@ dependencies = [
  "cfg-if",
  "event-listener 3.1.0",
  "futures-lite 1.13.0",
- "rustix 0.38.30",
+ "rustix 0.38.34",
  "windows-sys 0.48.0",
 ]
 
 [[package]]
+name = "async-process"
+version = "2.2.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "a53fc6301894e04a92cb2584fedde80cb25ba8e02d9dc39d4a87d036e22f397d"
+dependencies = [
+ "async-channel 2.2.1",
+ "async-io 2.3.2",
+ "async-lock 3.3.0",
+ "async-signal",
+ "async-task",
+ "blocking",
+ "cfg-if",
+ "event-listener 5.3.0",
+ "futures-lite 2.3.0",
+ "rustix 0.38.34",
+ "tracing",
+ "windows-sys 0.52.0",
+]
+
+[[package]]
 name = "async-recursion"
-version = "1.0.5"
+version = "1.1.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5fd55a5ba1179988837d24ab4c7cc8ed6efdeff578ede0416b4225a5fca35bd0"
+checksum = "3b43422f69d8ff38f95f1b2bb76517c91589a924d1559a0e935d7c8ce0274c11"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.48",
+ "syn 2.0.61",
 ]
 
 [[package]]
 name = "async-signal"
-version = "0.2.5"
+version = "0.2.6"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9e47d90f65a225c4527103a8d747001fc56e375203592b25ad103e1ca13124c5"
+checksum = "afe66191c335039c7bb78f99dc7520b0cbb166b3a1cb33a03f53d8a1c6f2afda"
 dependencies = [
- "async-io 2.3.0",
- "async-lock 2.8.0",
+ "async-io 2.3.2",
+ "async-lock 3.3.0",
  "atomic-waker",
  "cfg-if",
  "futures-core",
  "futures-io",
- "rustix 0.38.30",
+ "rustix 0.38.34",
  "signal-hook-registry",
  "slab",
- "windows-sys 0.48.0",
+ "windows-sys 0.52.0",
 ]
 
 [[package]]
 name = "async-task"
-version = "4.7.0"
+version = "4.7.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "fbb36e985947064623dbd357f727af08ffd077f93d696782f3c56365fa2e2799"
+checksum = "8b75356056920673b02621b35afd0f7dda9306d03c79a30f5c56c44cf256e3de"
 
 [[package]]
 name = "async-trait"
-version = "0.1.77"
+version = "0.1.80"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c980ee35e870bd1a4d2c8294d4c04d0499e67bca1e4b5cefcc693c2fa00caea9"
+checksum = "c6fa2087f2753a7da8cc1c0dbfcf89579dd57458e36769de5ac750b4671737ca"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.48",
-]
-
-[[package]]
-name = "atk"
-version = "0.16.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "39991bc421ddf72f70159011b323ff49b0f783cc676a7287c59453da2e2531cf"
-dependencies = [
- "atk-sys",
- "bitflags 1.3.2",
- "glib",
- "libc",
-]
-
-[[package]]
-name = "atk-sys"
-version = "0.16.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "11ad703eb64dc058024f0e57ccfa069e15a413b98dbd50a1a950e743b7f11148"
-dependencies = [
- "glib-sys",
- "gobject-sys",
- "libc",
- "system-deps",
+ "syn 2.0.61",
 ]
 
 [[package]]
@@ -486,61 +410,34 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "1505bd5d3d116872e7271a6d4e16d81d0c8570876c8de68093a09ac269d8aac0"
 
 [[package]]
-name = "atomic_refcell"
-version = "0.1.13"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "41e67cd8309bbd06cd603a9e693a784ac2e5d1e955f11286e355089fcab3047c"
-
-[[package]]
-name = "atspi"
-version = "0.10.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "674e7a3376837b2e7d12d34d58ac47073c491dc3bf6f71a7adaf687d4d817faa"
-dependencies = [
- "async-recursion",
- "async-trait",
- "atspi-macros",
- "enumflags2",
- "futures-lite 1.13.0",
- "serde",
- "tracing",
- "zbus",
- "zbus_names",
-]
-
-[[package]]
-name = "atspi-macros"
-version = "0.2.0"
+name = "auto_enums"
+version = "0.8.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "97fb4870a32c0eaa17e35bca0e6b16020635157121fb7d45593d242c295bc768"
+checksum = "1899bfcfd9340ceea3533ea157360ba8fa864354eccbceab58e1006ecab35393"
 dependencies = [
+ "derive_utils",
+ "proc-macro2",
  "quote",
- "syn 1.0.109",
+ "syn 2.0.61",
 ]
 
 [[package]]
 name = "autocfg"
-version = "1.1.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d468802bab17cbc0cc575e9b053f41e72aa36bfa6b7f55e3529ffa43161b97fa"
-
-[[package]]
-name = "az"
-version = "1.2.1"
+version = "1.3.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7b7e4c2464d97fe331d41de9d5db0def0a96f4d823b8b32a2efd503578988973"
+checksum = "0c4b4d0bd25bd0b74681c0ad21497610ce1b7c91b1022cd21c80c6fbdd9476b0"
 
 [[package]]
 name = "backtrace"
-version = "0.3.69"
+version = "0.3.71"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2089b7e3f35b9dd2d0ed921ead4f6d318c27680d4a5bd167b3ee120edb105837"
+checksum = "26b05800d2e817c8b3b4b54abd461726265fa9789ae34330622f2db9ee696f9d"
 dependencies = [
  "addr2line",
  "cc",
  "cfg-if",
  "libc",
- "miniz_oxide 0.7.1",
+ "miniz_oxide 0.7.2",
  "object",
  "rustc-demangle",
 ]
@@ -552,26 +449,60 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "9d297deb1925b89f2ccc13d7635fa0714f12c87adce1c75356b39ca9b7178567"
 
 [[package]]
+name = "base64"
+version = "0.22.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "72b3254f16251a8381aa12e40e3c4d2f0199f8c6508fbecb9d91f575e0fbb8c6"
+
+[[package]]
+name = "betrayer"
+version = "0.2.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "88df312fbb13c845a05ede7e91ab7b9fea442d9176d092bbdb954ae6db55ad5d"
+dependencies = [
+ "async-io 2.3.2",
+ "block2 0.4.0",
+ "flume",
+ "icrate 0.1.2",
+ "log",
+ "objc2 0.5.1",
+ "once_cell",
+ "parking_lot",
+ "png",
+ "windows 0.56.0",
+ "zbus",
+]
+
+[[package]]
 name = "bindgen"
-version = "0.69.2"
+version = "0.69.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a4c69fae65a523209d34240b60abe0c42d33d1045d445c0839d8a4894a736e2d"
+checksum = "a00dc851838a2120612785d195287475a3ac45514741da670b735818822129a0"
 dependencies = [
- "bitflags 2.4.2",
+ "bitflags 2.5.0",
  "cexpr",
  "clang-sys",
+ "itertools",
  "lazy_static",
  "lazycell",
- "peeking_take_while",
+ "log",
+ "prettyplease",
  "proc-macro2",
  "quote",
  "regex",
  "rustc-hash",
  "shlex",
- "syn 2.0.48",
+ "syn 2.0.61",
+ "which",
 ]
 
 [[package]]
+name = "bit_field"
+version = "0.10.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "dc827186963e592360843fb5ba4b973e145841266c1357f7180c43526f2e5b61"
+
+[[package]]
 name = "bitflags"
 version = "1.3.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -579,9 +510,9 @@ checksum = "bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a"
 
 [[package]]
 name = "bitflags"
-version = "2.4.2"
+version = "2.5.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ed570934406eb16438a4e976b1b4500774099c13b8cb96eec99f620f05090ddf"
+checksum = "cf4b9d6a944f767f8e5e0db018570623c85f3d925ac718db4e06d0187adb21c1"
 dependencies = [
  "serde",
 ]
@@ -603,63 +534,77 @@ dependencies = [
 
 [[package]]
 name = "block-sys"
-version = "0.1.0-beta.1"
+version = "0.2.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0fa55741ee90902547802152aaf3f8e5248aab7e21468089560d4c8840561146"
+checksum = "ae85a0696e7ea3b835a453750bf002770776609115e6d25c6d2ff28a8200f7e7"
 dependencies = [
  "objc-sys",
 ]
 
 [[package]]
 name = "block2"
-version = "0.2.0-alpha.6"
+version = "0.3.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8dd9e63c1744f755c2f60332b88de39d341e5e86239014ad839bd71c106dec42"
+checksum = "15b55663a85f33501257357e6421bb33e769d5c9ffb5ba0921c975a123e35e68"
 dependencies = [
  "block-sys",
- "objc2-encode",
+ "objc2 0.4.1",
+]
+
+[[package]]
+name = "block2"
+version = "0.4.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "e58aa60e59d8dbfcc36138f5f18be5f24394d33b38b24f7fd0b1caa33095f22f"
+dependencies = [
+ "block-sys",
+ "objc2 0.5.1",
 ]
 
 [[package]]
 name = "blocking"
-version = "1.5.1"
+version = "1.6.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6a37913e8dc4ddcc604f0c6d3bf2887c995153af3611de9e23c352b44c1b9118"
+checksum = "495f7104e962b7356f0aeb34247aca1fe7d2e783b346582db7f2904cb5717e88"
 dependencies = [
- "async-channel 2.1.1",
+ "async-channel 2.2.1",
  "async-lock 3.3.0",
  "async-task",
- "fastrand 2.0.1",
  "futures-io",
- "futures-lite 2.2.0",
+ "futures-lite 2.3.0",
  "piper",
- "tracing",
 ]
 
 [[package]]
 name = "bumpalo"
-version = "3.14.0"
+version = "3.16.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7f30e7476521f6f8af1a1c4c0b8cc94f0bee37d91763d0ca2665f299b6cd8aec"
+checksum = "79296716171880943b8470b5f8d03aa55eb2e645a4874bdbb28adb49162e012c"
+
+[[package]]
+name = "by_address"
+version = "1.2.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "64fa3c856b712db6612c019f14756e64e4bcea13337a6b33b696333a9eaa2d06"
 
 [[package]]
 name = "bytemuck"
-version = "1.14.0"
+version = "1.15.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "374d28ec25809ee0e23827c2ab573d729e293f281dfe393500e7ad618baa61c6"
+checksum = "5d6d68c57235a3a081186990eca2867354726650f42f7516ca50c28d6281fd15"
 dependencies = [
  "bytemuck_derive",
 ]
 
 [[package]]
 name = "bytemuck_derive"
-version = "1.5.0"
+version = "1.6.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "965ab7eb5f8f97d2a083c799f3a1b994fc397b2fe2da5d1da1626ce15a39f2b1"
+checksum = "4da9a32f3fed317401fa3c862968128267c3106685286e15d5aaa3d7389c2f60"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.48",
+ "syn 2.0.61",
 ]
 
 [[package]]
@@ -670,47 +615,34 @@ checksum = "1fd0f2584146f6f2ef48085050886acf353beff7305ebd1ae69500e27c67f64b"
 
 [[package]]
 name = "bytes"
-version = "1.5.0"
+version = "1.6.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a2bd12c1caf447e69cd4528f47f94d203fd2582878ecb9e9465484c4148a8223"
+checksum = "514de17de45fdb8dc022b1a7975556c53c86f9f0aa5f534b98977b171857c2c9"
 
 [[package]]
-name = "cairo-rs"
-version = "0.16.7"
+name = "calloop"
+version = "0.12.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f3125b15ec28b84c238f6f476c6034016a5f6cc0221cb514ca46c532139fc97d"
+checksum = "fba7adb4dd5aa98e5553510223000e7148f621165ec5f9acd7113f6ca4995298"
 dependencies = [
- "bitflags 1.3.2",
- "cairo-sys-rs",
- "glib",
- "libc",
- "once_cell",
+ "bitflags 2.5.0",
+ "log",
+ "polling 3.7.0",
+ "rustix 0.38.34",
+ "slab",
  "thiserror",
 ]
 
 [[package]]
-name = "cairo-sys-rs"
-version = "0.16.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7c48f4af05fabdcfa9658178e1326efa061853f040ce7d72e33af6885196f421"
-dependencies = [
- "glib-sys",
- "libc",
- "system-deps",
-]
-
-[[package]]
-name = "calloop"
-version = "0.10.6"
+name = "calloop-wayland-source"
+version = "0.2.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "52e0d00eb1ea24371a97d2da6201c6747a633dc6dc1988ef503403b4c59504a8"
+checksum = "0f0ea9b9476c7fad82841a8dbb380e2eae480c21910feba80725b46931ed8f02"
 dependencies = [
- "bitflags 1.3.2",
- "log",
- "nix 0.25.1",
- "slotmap",
- "thiserror",
- "vec_map",
+ "calloop",
+ "rustix 0.38.34",
+ "wayland-backend",
+ "wayland-client",
 ]
 
 [[package]]
@@ -721,12 +653,13 @@ checksum = "7b02b629252fe8ef6460461409564e2c21d0c8e77e0944f3d189ff06c4e932ad"
 
 [[package]]
 name = "cc"
-version = "1.0.83"
+version = "1.0.97"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f1174fb0b6ec23863f8b971027804a42614e347eafb0a95bf0b12cdae21fc4d0"
+checksum = "099a5357d84c4c61eb35fc8eafa9a79a902c2f76911e5747ced4e032edd8d9b4"
 dependencies = [
  "jobserver",
  "libc",
+ "once_cell",
 ]
 
 [[package]]
@@ -745,16 +678,6 @@ dependencies = [
 ]
 
 [[package]]
-name = "cfg-expr"
-version = "0.15.6"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6100bc57b6209840798d95cb2775684849d332f7bd788db2a8c8caf7ef82a41a"
-dependencies = [
- "smallvec",
- "target-lexicon",
-]
-
-[[package]]
 name = "cfg-if"
 version = "1.0.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -767,6 +690,12 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "fd16c4719339c4530435d38e511904438d07cce7950afa3718a84ac36c10e89e"
 
 [[package]]
+name = "cfg_aliases"
+version = "0.2.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "77e53693616d3075149f4ead59bdeecd204ac6b8192d8969757601b74bddf00f"
+
+[[package]]
 name = "cgl"
 version = "0.3.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -777,16 +706,16 @@ dependencies = [
 
 [[package]]
 name = "chrono"
-version = "0.4.31"
+version = "0.4.38"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7f2c685bad3eb3d45a01354cedb7d5faa66194d1d58ba6e267a8de788f79db38"
+checksum = "a21f936df1771bf62b77f047b726c4625ff2e8aa607c01ec06e5a05bd8463401"
 dependencies = [
  "android-tzdata",
  "iana-time-zone",
  "js-sys",
  "num-traits",
  "wasm-bindgen",
- "windows-targets 0.48.5",
+ "windows-targets 0.52.5",
 ]
 
 [[package]]
@@ -797,20 +726,72 @@ checksum = "67523a3b4be3ce1989d607a828d036249522dd9c1c8de7f4dd2dae43a37369d1"
 dependencies = [
  "glob",
  "libc",
+ "libloading",
 ]
 
 [[package]]
 name = "clipboard-win"
-version = "4.5.0"
+version = "3.1.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7191c27c2357d9b7ef96baac1773290d4ca63b24205b82a3fd8a0637afcf0362"
+checksum = "9fdf5e01086b6be750428ba4a40619f847eb2e95756eee84b18e06e5f0b50342"
 dependencies = [
- "error-code",
- "str-buf",
+ "lazy-bytes-cast",
  "winapi",
 ]
 
 [[package]]
+name = "clru"
+version = "0.6.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "cbd0f76e066e64fdc5631e3bb46381254deab9ef1158292f27c8c57e3bf3fe59"
+
+[[package]]
+name = "cocoa"
+version = "0.25.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "f6140449f97a6e97f9511815c5632d84c8aacf8ac271ad77c559218161a1373c"
+dependencies = [
+ "bitflags 1.3.2",
+ "block",
+ "cocoa-foundation",
+ "core-foundation",
+ "core-graphics",
+ "foreign-types",
+ "libc",
+ "objc",
+]
+
+[[package]]
+name = "cocoa-foundation"
+version = "0.1.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "8c6234cbb2e4c785b456c0644748b1ac416dd045799740356f8363dfe00c93f7"
+dependencies = [
+ "bitflags 1.3.2",
+ "block",
+ "core-foundation",
+ "core-graphics-types",
+ "libc",
+ "objc",
+]
+
+[[package]]
+name = "codemap"
+version = "0.1.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "b9e769b5c8c8283982a987c6e948e540254f1058d5a74b8794914d4ef5fc2a24"
+
+[[package]]
+name = "codemap-diagnostic"
+version = "0.1.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "cc20770be05b566a963bf91505e60412c4a2d016d1ef95c5512823bb085a8122"
+dependencies = [
+ "codemap",
+ "termcolor",
+]
+
+[[package]]
 name = "color_quant"
 version = "1.1.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -818,9 +799,9 @@ checksum = "3d7b894f5411737b7867f4827955924d7c254fc9f4d91a6aad6b097804b1018b"
 
 [[package]]
 name = "combine"
-version = "4.6.6"
+version = "4.6.7"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "35ed6e9d84f0b51a7f52daf1c7d71dd136fd7a3f41a8462b8cdb8c78d920fad4"
+checksum = "ba5a308b75df32fe02788e748662718f03fde005016435c444eea572398219fd"
 dependencies = [
  "bytes",
  "memchr",
@@ -833,29 +814,64 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "f76990911f2267d837d9d0ad060aa63aaad170af40904b29461734c339030d4d"
 dependencies = [
  "quote",
- "syn 2.0.48",
+ "syn 2.0.61",
 ]
 
 [[package]]
 name = "concurrent-queue"
-version = "2.4.0"
+version = "2.5.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d16048cd947b08fa32c24458a22f5dc5e835264f689f4f5653210c69fd107363"
+checksum = "4ca0197aee26d1ae37445ee532fefce43251d24cc7c166799f4d46817f1d3973"
 dependencies = [
  "crossbeam-utils",
 ]
 
 [[package]]
 name = "config-traits"
-version = "5.0.10"
+version = "6.0.6"
 dependencies = [
  "cargo-husky",
  "log",
  "ron",
  "serde",
- "serde_derive",
- "serde_json",
- "toml 0.5.11",
+]
+
+[[package]]
+name = "const-field-offset"
+version = "0.1.5"
+source = "git+https://github.com/slint-ui/slint.git#65160638a1c36cf8ee19047554f7bb4384c69ddf"
+dependencies = [
+ "const-field-offset-macro",
+ "field-offset",
+]
+
+[[package]]
+name = "const-field-offset-macro"
+version = "0.1.5"
+source = "git+https://github.com/slint-ui/slint.git#65160638a1c36cf8ee19047554f7bb4384c69ddf"
+dependencies = [
+ "proc-macro2",
+ "quote",
+ "syn 2.0.61",
+]
+
+[[package]]
+name = "convert_case"
+version = "0.4.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "6245d59a3e82a7fc217c5828a6692dbc6dfb63a0c8c90495621f7b9d79704a0e"
+
+[[package]]
+name = "copypasta"
+version = "0.10.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "deb85422867ca93da58b7f95fb5c0c10f6183ed6e1ef8841568968a896d3a858"
+dependencies = [
+ "clipboard-win",
+ "objc",
+ "objc-foundation",
+ "objc_id",
+ "smithay-clipboard",
 ]
 
 [[package]]
@@ -876,9 +892,9 @@ checksum = "06ea2b9bc92be3c2baa9334a323ebca2d6f074ff852cd1d7b11064035cd3868f"
 
 [[package]]
 name = "core-graphics"
-version = "0.22.3"
+version = "0.23.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2581bbab3b8ffc6fcbd550bf46c355135d16e9ff2a6ea032ad6b9bf1d7efe4fb"
+checksum = "c07782be35f9e1140080c6b96f0d44b739e2278479f64e02fdab4e32dfd8b081"
 dependencies = [
  "bitflags 1.3.2",
  "core-foundation",
@@ -899,8 +915,26 @@ dependencies = [
 ]
 
 [[package]]
+name = "core-text"
+version = "20.1.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "c9d2790b5c08465d49f8dc05c8bcae9fea467855947db39b0f8145c091aaced5"
+dependencies = [
+ "core-foundation",
+ "core-graphics",
+ "foreign-types",
+ "libc",
+]
+
+[[package]]
+name = "countme"
+version = "3.0.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "7704b5fdd17b18ae31c4c1da5a2e0305a2bf17b5249300a9ee9ed7b72114c636"
+
+[[package]]
 name = "cpuctl"
-version = "5.0.10"
+version = "6.0.6"
 
 [[package]]
 name = "cpufeatures"
@@ -913,20 +947,51 @@ dependencies = [
 
 [[package]]
 name = "crc32fast"
-version = "1.3.2"
+version = "1.4.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b540bd8bc810d3885c6ea91e2018302f68baba2129ab3e88f32389ee9370880d"
+checksum = "b3855a8a784b474f333699ef2bbca9db2c4a1f6d9088a90a2d25b1eb53111eaa"
 dependencies = [
  "cfg-if",
 ]
 
 [[package]]
+name = "critical-section"
+version = "1.1.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "7059fff8937831a9ae6f0fe4d658ffabf58f2ca96aa9dec1c889f936f705f216"
+
+[[package]]
+name = "crossbeam-deque"
+version = "0.8.5"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "613f8cc01fe9cf1a3eb3d7f488fd2fa8388403e97039e2f73692932e291a770d"
+dependencies = [
+ "crossbeam-epoch",
+ "crossbeam-utils",
+]
+
+[[package]]
+name = "crossbeam-epoch"
+version = "0.9.18"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "5b82ac4a3c2ca9c3460964f020e1402edd5753411d7737aa39c3714ad1b5420e"
+dependencies = [
+ "crossbeam-utils",
+]
+
+[[package]]
 name = "crossbeam-utils"
 version = "0.8.19"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "248e3bacc7dc6baa3b21e405ee045c3047101a49145e7e9eca583ab4c2ca5345"
 
 [[package]]
+name = "crunchy"
+version = "0.2.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "7a81dae078cea95a014a339291cec439d2f232ebe854a9d672b796c6afafa9b7"
+
+[[package]]
 name = "crypto-common"
 version = "0.1.6"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -937,6 +1002,27 @@ dependencies = [
 ]
 
 [[package]]
+name = "css-color-parser2"
+version = "1.0.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "cf8ed1639f4b56ec6f31d007ff66ce4a13099dce5a9995d48368a30d62bf04bd"
+dependencies = [
+ "lazy_static",
+]
+
+[[package]]
+name = "cursor-icon"
+version = "1.1.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "96a6ac251f4a2aca6b3f91340350eab87ae57c3f127ffeb585e92bd336717991"
+
+[[package]]
+name = "data-url"
+version = "0.3.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "5c297a1c74b71ae29df00c3e22dd9534821d60eb9af5a0192823fa2acea70c2a"
+
+[[package]]
 name = "deranged"
 version = "0.3.11"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -957,6 +1043,30 @@ dependencies = [
 ]
 
 [[package]]
+name = "derive_more"
+version = "0.99.17"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "4fb810d30a7c1953f91334de7244731fc3f3c10d7fe163338a35b9f640960321"
+dependencies = [
+ "convert_case",
+ "proc-macro2",
+ "quote",
+ "rustc_version",
+ "syn 1.0.109",
+]
+
+[[package]]
+name = "derive_utils"
+version = "0.14.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "61bb5a1014ce6dfc2a378578509abe775a5aa06bff584a547555d9efdb81b926"
+dependencies = [
+ "proc-macro2",
+ "quote",
+ "syn 2.0.61",
+]
+
+[[package]]
 name = "digest"
 version = "0.10.7"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -1024,132 +1134,87 @@ dependencies = [
 
 [[package]]
 name = "dmi_id"
-version = "5.0.10"
+version = "6.0.6"
 dependencies = [
  "log",
- "udev",
+ "udev 0.8.0",
 ]
 
 [[package]]
 name = "downcast-rs"
-version = "1.2.0"
+version = "1.2.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9ea835d29036a4087793836fa931b08837ad5e957da9e23886b29586fb9b6650"
-
-[[package]]
-name = "ecolor"
-version = "0.21.0"
-source = "git+https://github.com/emilk/egui?rev=b8e798777de519de3a1878798097ab2ab0bd4def#b8e798777de519de3a1878798097ab2ab0bd4def"
-dependencies = [
- "bytemuck",
-]
+checksum = "75b325c5dbd37f80359721ad39aca5a29fb04c89279657cffdda8736d0c0b9d2"
 
 [[package]]
-name = "eframe"
-version = "0.21.3"
-source = "git+https://github.com/emilk/egui?rev=b8e798777de519de3a1878798097ab2ab0bd4def#b8e798777de519de3a1878798097ab2ab0bd4def"
+name = "drm"
+version = "0.9.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "edf9159ef4bcecd0c5e4cbeb573b8d0037493403d542780dba5d840bbf9df56f"
 dependencies = [
+ "bitflags 1.3.2",
  "bytemuck",
- "egui",
- "egui-winit",
- "egui_glow",
- "glow",
- "glutin",
- "glutin-winit",
- "js-sys",
- "log",
- "percent-encoding",
- "raw-window-handle",
- "thiserror",
- "wasm-bindgen",
- "wasm-bindgen-futures",
- "web-sys",
- "winit",
+ "drm-ffi",
+ "drm-fourcc",
+ "nix 0.26.4",
 ]
 
 [[package]]
-name = "egui"
-version = "0.21.0"
-source = "git+https://github.com/emilk/egui?rev=b8e798777de519de3a1878798097ab2ab0bd4def#b8e798777de519de3a1878798097ab2ab0bd4def"
+name = "drm-ffi"
+version = "0.5.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "1352481b7b90e27a8a1bf8ef6b33cf18b98dba7c410e75c24bb3eef2f0d8d525"
 dependencies = [
- "accesskit",
- "ahash",
- "epaint",
- "log",
- "nohash-hasher",
+ "drm-sys",
+ "nix 0.26.4",
 ]
 
 [[package]]
-name = "egui-winit"
-version = "0.21.1"
-source = "git+https://github.com/emilk/egui?rev=b8e798777de519de3a1878798097ab2ab0bd4def#b8e798777de519de3a1878798097ab2ab0bd4def"
-dependencies = [
- "accesskit_winit",
- "arboard",
- "egui",
- "instant",
- "log",
- "smithay-clipboard",
- "webbrowser",
- "winit",
-]
+name = "drm-fourcc"
+version = "2.2.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "0aafbcdb8afc29c1a7ee5fbe53b5d62f4565b35a042a662ca9fecd0b54dae6f4"
 
 [[package]]
-name = "egui_glow"
-version = "0.21.0"
-source = "git+https://github.com/emilk/egui?rev=b8e798777de519de3a1878798097ab2ab0bd4def#b8e798777de519de3a1878798097ab2ab0bd4def"
+name = "drm-sys"
+version = "0.4.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "1369f1679d6b706d234c4c1e0613c415c2c74b598a09ad28080ba2474b72e42d"
 dependencies = [
- "bytemuck",
- "egui",
- "glow",
- "log",
- "memoffset 0.6.5",
- "wasm-bindgen",
- "web-sys",
+ "libc",
 ]
 
 [[package]]
-name = "either"
-version = "1.9.0"
+name = "dwrote"
+version = "0.11.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a26ae43d7bcc3b814de94796a5e736d4029efb0ee900c12e2d54c993ad1a1e07"
-
-[[package]]
-name = "emath"
-version = "0.21.0"
-source = "git+https://github.com/emilk/egui?rev=b8e798777de519de3a1878798097ab2ab0bd4def#b8e798777de519de3a1878798097ab2ab0bd4def"
+checksum = "439a1c2ba5611ad3ed731280541d36d2e9c4ac5e7fb818a27b604bdc5a6aa65b"
 dependencies = [
- "bytemuck",
+ "lazy_static",
+ "libc",
+ "serde",
+ "serde_derive",
+ "winapi",
+ "wio",
 ]
 
 [[package]]
-name = "embedded-graphics"
-version = "0.7.1"
+name = "either"
+version = "1.11.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "750082c65094fbcc4baf9ba31583ce9a8bb7f52cadfb96f6164b1bc7f922f32b"
-dependencies = [
- "az",
- "byteorder",
- "embedded-graphics-core",
- "float-cmp",
- "micromath",
-]
+checksum = "a47c1c47d2f5964e29c61246e81db715514cd532db6b5116a25ea3c03d6780a2"
 
 [[package]]
-name = "embedded-graphics-core"
-version = "0.3.3"
+name = "endi"
+version = "1.1.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b8b1239db5f3eeb7e33e35bd10bd014e7b2537b17e071f726a09351431337cfa"
-dependencies = [
- "az",
- "byteorder",
-]
+checksum = "a3d8a32ae18130a3c84dd492d4215c3d913c3b07c6b63c2eb3eb7ff1101ab7bf"
 
 [[package]]
 name = "enumflags2"
-version = "0.7.8"
+version = "0.7.9"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5998b4f30320c9d93aed72f63af821bfdac50465b75428fce77b48ec482c3939"
+checksum = "3278c9d5fb675e0a51dabcf4c0d355f692b064171535ba72361be1528a9d8e8d"
 dependencies = [
  "enumflags2_derive",
  "serde",
@@ -1157,13 +1222,13 @@ dependencies = [
 
 [[package]]
 name = "enumflags2_derive"
-version = "0.7.8"
+version = "0.7.9"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f95e2801cd355d4a1a3e3953ce6ee5ae9603a5c833455343a8bfe3f44d418246"
+checksum = "5c785274071b1b420972453b306eeca06acf4633829db4223b58a2a8c5953bc4"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.48",
+ "syn 2.0.61",
 ]
 
 [[package]]
@@ -1180,22 +1245,6 @@ dependencies = [
 ]
 
 [[package]]
-name = "epaint"
-version = "0.21.0"
-source = "git+https://github.com/emilk/egui?rev=b8e798777de519de3a1878798097ab2ab0bd4def#b8e798777de519de3a1878798097ab2ab0bd4def"
-dependencies = [
- "ab_glyph",
- "ahash",
- "atomic_refcell",
- "bytemuck",
- "ecolor",
- "emath",
- "log",
- "nohash-hasher",
- "parking_lot",
-]
-
-[[package]]
 name = "equivalent"
 version = "1.0.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -1203,22 +1252,21 @@ checksum = "5443807d6dff69373d433ab9ef5378ad8df50ca6298caf15de6e52e24aaf54d5"
 
 [[package]]
 name = "errno"
-version = "0.3.8"
+version = "0.3.9"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a258e46cdc063eb8519c00b9fc845fc47bcfca4130e2f08e88665ceda8474245"
+checksum = "534c5cf6194dfab3db3242765c03bbe257cf92f22b38f6bc0c58d59108a820ba"
 dependencies = [
  "libc",
  "windows-sys 0.52.0",
 ]
 
 [[package]]
-name = "error-code"
-version = "2.3.1"
+name = "euclid"
+version = "0.22.9"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "64f18991e7bf11e7ffee451b5318b5c1a73c52d0d0ada6e5a3017c8c1ced6a21"
+checksum = "87f253bc5c813ca05792837a0ff4b3a580336b224512d48f7eda1d7dd9210787"
 dependencies = [
- "libc",
- "str-buf",
+ "num-traits",
 ]
 
 [[package]]
@@ -1250,6 +1298,17 @@ dependencies = [
 ]
 
 [[package]]
+name = "event-listener"
+version = "5.3.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "6d9944b8ca13534cdfb2800775f8dd4902ff3fc75a50101466decadfdf322a24"
+dependencies = [
+ "concurrent-queue",
+ "parking",
+ "pin-project-lite",
+]
+
+[[package]]
 name = "event-listener-strategy"
 version = "0.4.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -1260,6 +1319,32 @@ dependencies = [
 ]
 
 [[package]]
+name = "event-listener-strategy"
+version = "0.5.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "0f214dc438f977e6d4e3500aaa277f5ad94ca83fbbd9b1a15713ce2344ccc5a1"
+dependencies = [
+ "event-listener 5.3.0",
+ "pin-project-lite",
+]
+
+[[package]]
+name = "exr"
+version = "1.72.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "887d93f60543e9a9362ef8a21beedd0a833c5d9610e18c67abe15a5963dcb1a4"
+dependencies = [
+ "bit_field",
+ "flume",
+ "half",
+ "lebe",
+ "miniz_oxide 0.7.2",
+ "rayon-core",
+ "smallvec",
+ "zune-inflate",
+]
+
+[[package]]
 name = "fastrand"
 version = "1.9.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -1270,9 +1355,9 @@ dependencies = [
 
 [[package]]
 name = "fastrand"
-version = "2.0.1"
+version = "2.1.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "25cbce373ec4653f1a01a31e8a5e5ec0c622dc27ff9c4e6606eefef5cbbed4a5"
+checksum = "9fc0510504f03c51ada170672ac806f1f105a88aa97a5281117e1ddc3368e51a"
 
 [[package]]
 name = "fdeflate"
@@ -1284,48 +1369,142 @@ dependencies = [
 ]
 
 [[package]]
+name = "femtovg"
+version = "0.9.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "a056992c3a862ef9d4452bad8b6b455780382502b38b93540fb17773a54ca092"
+dependencies = [
+ "bitflags 2.5.0",
+ "fnv",
+ "glow",
+ "image",
+ "imgref",
+ "log",
+ "lru",
+ "rgb",
+ "rustybuzz",
+ "slotmap",
+ "unicode-bidi",
+ "unicode-segmentation",
+ "wasm-bindgen",
+ "web-sys",
+]
+
+[[package]]
 name = "field-offset"
 version = "0.3.6"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "38e2275cc4e4fc009b0669731a1e5ab7ebf11f469eaede2bab9309a5b4d6057f"
 dependencies = [
- "memoffset 0.9.0",
+ "memoffset",
  "rustc_version",
 ]
 
 [[package]]
+name = "filetime"
+version = "0.2.23"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "1ee447700ac8aa0b2f2bd7bc4462ad686ba06baa6727ac149a2d6277f0d240fd"
+dependencies = [
+ "cfg-if",
+ "libc",
+ "redox_syscall 0.4.1",
+ "windows-sys 0.52.0",
+]
+
+[[package]]
 name = "flate2"
-version = "1.0.28"
+version = "1.0.30"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "46303f565772937ffe1d394a4fac6f411c6013172fadde9dcdb1e147a086940e"
+checksum = "5f54427cfd1c7829e2a139fcefea601bf088ebca651d2bf53ebc600eac295dae"
 dependencies = [
  "crc32fast",
- "miniz_oxide 0.7.1",
+ "miniz_oxide 0.7.2",
 ]
 
 [[package]]
 name = "float-cmp"
+version = "0.9.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "98de4bbd547a563b716d8dfa9aad1cb19bfab00f4fa09a6a4ed21dbcf44ce9c4"
+
+[[package]]
+name = "flume"
+version = "0.11.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "55ac459de2512911e4b674ce33cf20befaba382d05b62b008afc1c8b57cbf181"
+dependencies = [
+ "futures-core",
+ "futures-sink",
+ "nanorand",
+ "spin",
+]
+
+[[package]]
+name = "fnv"
+version = "1.0.7"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "3f9eec918d3f24069decb9af1554cad7c880e2da24a9afd88aca000531ab82c1"
+
+[[package]]
+name = "fontconfig-parser"
+version = "0.5.6"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "6a595cb550439a117696039dfc69830492058211b771a2a165379f2a1a53d84d"
+dependencies = [
+ "roxmltree",
+]
+
+[[package]]
+name = "fontdb"
+version = "0.16.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "b0299020c3ef3f60f526a4f64ab4a3d4ce116b1acbf24cdd22da0068e5d81dc3"
+dependencies = [
+ "fontconfig-parser",
+ "log",
+ "memmap2 0.9.4",
+ "slotmap",
+ "tinyvec",
+ "ttf-parser",
+]
+
+[[package]]
+name = "fontdue"
 version = "0.8.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e1267f4ac4f343772758f7b1bdcbe767c218bbab93bb432acbf5162bbf85a6c4"
+checksum = "9099a2f86b8e674b75d03ff154b3fe4c5208ed249ced8d69cc313a9fa40bb488"
 dependencies = [
- "num-traits",
+ "hashbrown",
+ "ttf-parser",
 ]
 
 [[package]]
 name = "foreign-types"
-version = "0.3.2"
+version = "0.5.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f6f339eb8adc052cd2ca78910fda869aefa38d22d5cb648e6485e4d3fc06f3b1"
+checksum = "d737d9aa519fb7b749cbc3b962edcf310a8dd1f4b67c91c4f83975dbdd17d965"
 dependencies = [
+ "foreign-types-macros",
  "foreign-types-shared",
 ]
 
 [[package]]
+name = "foreign-types-macros"
+version = "0.2.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "1a5c6c585bc94aaf2c7b51dd4c2ba22680844aba4c687be581871a6f518c5742"
+dependencies = [
+ "proc-macro2",
+ "quote",
+ "syn 2.0.61",
+]
+
+[[package]]
 name = "foreign-types-shared"
-version = "0.1.1"
+version = "0.3.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "00b0228411908ca8685dba7fc2cdd70ec9990a6e753e89b6ac91a84c40fbaf4b"
+checksum = "aa9a19cbb55df58761df49b23516a86d432839add4af60fc256da840f66ed35b"
 
 [[package]]
 name = "form_urlencoded"
@@ -1337,32 +1516,12 @@ dependencies = [
 ]
 
 [[package]]
-name = "futures-channel"
-version = "0.3.30"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "eac8f7d7865dcb88bd4373ab671c8cf4508703796caa2b1985a9ca867b3fcb78"
-dependencies = [
- "futures-core",
-]
-
-[[package]]
 name = "futures-core"
 version = "0.3.30"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "dfc6580bb841c5a68e9ef15c77ccc837b40a7504914d52e47b8b0e9bbda25a1d"
 
 [[package]]
-name = "futures-executor"
-version = "0.3.30"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a576fc72ae164fca6b9db127eaa9a9dda0d61316034f33a0a0d4eda41f02b01d"
-dependencies = [
- "futures-core",
- "futures-task",
- "futures-util",
-]
-
-[[package]]
 name = "futures-io"
 version = "0.3.30"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -1385,11 +1544,11 @@ dependencies = [
 
 [[package]]
 name = "futures-lite"
-version = "2.2.0"
+version = "2.3.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "445ba825b27408685aaecefd65178908c36c6e96aaf6d8599419d46e624192ba"
+checksum = "52527eb5074e35e9339c6b4e8d12600c7128b68fb25dcb9fa9dec18f7c25f3a5"
 dependencies = [
- "fastrand 2.0.1",
+ "fastrand 2.1.0",
  "futures-core",
  "futures-io",
  "parking",
@@ -1397,17 +1556,6 @@ dependencies = [
 ]
 
 [[package]]
-name = "futures-macro"
-version = "0.3.30"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "87750cf4b7a4c0625b1529e4c543c2182106e4dedc60a2a6455e00d212c489ac"
-dependencies = [
- "proc-macro2",
- "quote",
- "syn 2.0.48",
-]
-
-[[package]]
 name = "futures-sink"
 version = "0.3.30"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -1427,7 +1575,6 @@ checksum = "3d6401deb83407ab3da39eba7e33987a73c3df0c82b4bb5813ee871c19c41d48"
 dependencies = [
  "futures-core",
  "futures-io",
- "futures-macro",
  "futures-sink",
  "futures-task",
  "memchr",
@@ -1437,100 +1584,85 @@ dependencies = [
 ]
 
 [[package]]
-name = "gdk"
-version = "0.16.2"
+name = "gbm"
+version = "0.12.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "aa9cb33da481c6c040404a11f8212d193889e9b435db2c14fd86987f630d3ce1"
+checksum = "f2ec389cda876966cf824111bf6e533fb934c711d473498279964a990853b3c6"
 dependencies = [
  "bitflags 1.3.2",
- "cairo-rs",
- "gdk-pixbuf",
- "gdk-sys",
- "gio",
- "glib",
+ "drm",
+ "drm-fourcc",
+ "gbm-sys",
  "libc",
- "pango",
 ]
 
 [[package]]
-name = "gdk-pixbuf"
-version = "0.16.7"
+name = "gbm-sys"
+version = "0.2.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c3578c60dee9d029ad86593ed88cb40f35c1b83360e12498d055022385dd9a05"
+checksum = "b63eba9b9b7a231514482deb08759301c9f9f049ac6869403f381834ebfeaf67"
 dependencies = [
- "bitflags 1.3.2",
- "gdk-pixbuf-sys",
- "gio",
- "glib",
  "libc",
 ]
 
 [[package]]
-name = "gdk-pixbuf-sys"
-version = "0.16.3"
+name = "generic-array"
+version = "0.14.7"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3092cf797a5f1210479ea38070d9ae8a5b8e9f8f1be9f32f4643c529c7d70016"
+checksum = "85649ca51fd72272d7821adaf274ad91c288277713d9c18820d8499a7ff69e9a"
 dependencies = [
- "gio-sys",
- "glib-sys",
- "gobject-sys",
- "libc",
- "system-deps",
+ "typenum",
+ "version_check",
 ]
 
 [[package]]
-name = "gdk-sys"
-version = "0.16.0"
+name = "getrandom"
+version = "0.2.15"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d76354f97a913e55b984759a997b693aa7dc71068c9e98bcce51aa167a0a5c5a"
+checksum = "c4567c8db10ae91089c99af84c68c38da3ec2f087c3f82960bcdbf3656b6f4d7"
 dependencies = [
- "cairo-sys-rs",
- "gdk-pixbuf-sys",
- "gio-sys",
- "glib-sys",
- "gobject-sys",
+ "cfg-if",
+ "js-sys",
  "libc",
- "pango-sys",
- "pkg-config",
- "system-deps",
+ "wasi",
+ "wasm-bindgen",
 ]
 
 [[package]]
-name = "generic-array"
-version = "0.14.7"
+name = "gettext-rs"
+version = "0.7.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "85649ca51fd72272d7821adaf274ad91c288277713d9c18820d8499a7ff69e9a"
+checksum = "e49ea8a8fad198aaa1f9655a2524b64b70eb06b2f3ff37da407566c93054f364"
 dependencies = [
- "typenum",
- "version_check",
+ "gettext-sys",
+ "locale_config",
 ]
 
 [[package]]
-name = "gethostname"
-version = "0.3.0"
+name = "gettext-sys"
+version = "0.21.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "bb65d4ba3173c56a500b555b532f72c42e8d1fe64962b518897f8959fae2c177"
+checksum = "c63ce2e00f56a206778276704bbe38564c8695249fdc8f354b4ef71c57c3839d"
 dependencies = [
- "libc",
- "winapi",
+ "cc",
+ "temp-dir",
 ]
 
 [[package]]
-name = "getrandom"
-version = "0.2.12"
+name = "gif"
+version = "0.12.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "190092ea657667030ac6a35e305e62fc4dd69fd98ac98631e5d3a2b1575a12b5"
+checksum = "80792593675e051cf94a4b111980da2ba60d4a83e43e0048c5693baab3977045"
 dependencies = [
- "cfg-if",
- "libc",
- "wasi",
+ "color_quant",
+ "weezl",
 ]
 
 [[package]]
 name = "gif"
-version = "0.12.0"
+version = "0.13.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "80792593675e051cf94a4b111980da2ba60d4a83e43e0048c5693baab3977045"
+checksum = "3fb2d69b19215e18bb912fa30f7ce15846e301408695e44e0ef719f1da9e19f2"
 dependencies = [
  "color_quant",
  "weezl",
@@ -1543,39 +1675,6 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "4271d37baee1b8c7e4b708028c57d816cf9d2434acb33a549475f78c181f6253"
 
 [[package]]
-name = "gio"
-version = "0.16.7"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2a1c84b4534a290a29160ef5c6eff2a9c95833111472e824fc5cb78b513dd092"
-dependencies = [
- "bitflags 1.3.2",
- "futures-channel",
- "futures-core",
- "futures-io",
- "futures-util",
- "gio-sys",
- "glib",
- "libc",
- "once_cell",
- "pin-project-lite",
- "smallvec",
- "thiserror",
-]
-
-[[package]]
-name = "gio-sys"
-version = "0.16.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e9b693b8e39d042a95547fc258a7b07349b1f0b48f4b2fa3108ba3c51c0b5229"
-dependencies = [
- "glib-sys",
- "gobject-sys",
- "libc",
- "system-deps",
- "winapi",
-]
-
-[[package]]
 name = "gl_generator"
 version = "0.14.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -1596,53 +1695,6 @@ dependencies = [
 ]
 
 [[package]]
-name = "glib"
-version = "0.16.9"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "16aa2475c9debed5a32832cb5ff2af5a3f9e1ab9e69df58eaadc1ab2004d6eba"
-dependencies = [
- "bitflags 1.3.2",
- "futures-channel",
- "futures-core",
- "futures-executor",
- "futures-task",
- "futures-util",
- "gio-sys",
- "glib-macros",
- "glib-sys",
- "gobject-sys",
- "libc",
- "once_cell",
- "smallvec",
- "thiserror",
-]
-
-[[package]]
-name = "glib-macros"
-version = "0.16.8"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "fb1a9325847aa46f1e96ffea37611b9d51fc4827e67f79e7de502a297560a67b"
-dependencies = [
- "anyhow",
- "heck",
- "proc-macro-crate",
- "proc-macro-error",
- "proc-macro2",
- "quote",
- "syn 1.0.109",
-]
-
-[[package]]
-name = "glib-sys"
-version = "0.16.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c61a4f46316d06bfa33a7ac22df6f0524c8be58e3db2d9ca99ccb1f357b62a65"
-dependencies = [
- "libc",
- "system-deps",
-]
-
-[[package]]
 name = "glob"
 version = "0.3.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -1650,9 +1702,9 @@ checksum = "d2fabcfbdc87f4758337ca535fb41a6d701b65693ce38287d856d1674551ec9b"
 
 [[package]]
 name = "glow"
-version = "0.12.3"
+version = "0.13.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ca0fe580e4b60a8ab24a868bc08e2f03cbcb20d3d676601fa909386713333728"
+checksum = "bd348e04c43b32574f2de31c8bb397d96c9fcfa1371bd4ca6d8bdc464ab121b1"
 dependencies = [
  "js-sys",
  "slotmap",
@@ -1662,135 +1714,58 @@ dependencies = [
 
 [[package]]
 name = "glutin"
-version = "0.30.10"
+version = "0.31.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8fc93b03242719b8ad39fb26ed2b01737144ce7bd4bfc7adadcef806596760fe"
+checksum = "18fcd4ae4e86d991ad1300b8f57166e5be0c95ef1f63f3f5b827f8a164548746"
 dependencies = [
- "bitflags 1.3.2",
- "cfg_aliases",
+ "bitflags 2.5.0",
+ "cfg_aliases 0.1.1",
  "cgl",
  "core-foundation",
  "dispatch",
  "glutin_egl_sys",
- "glutin_glx_sys",
  "glutin_wgl_sys",
+ "icrate 0.0.4",
  "libloading",
- "objc2",
+ "objc2 0.4.1",
  "once_cell",
- "raw-window-handle",
- "wayland-sys 0.30.1",
- "windows-sys 0.45.0",
- "x11-dl",
+ "raw-window-handle 0.5.2",
+ "wayland-sys",
+ "windows-sys 0.48.0",
 ]
 
 [[package]]
 name = "glutin-winit"
-version = "0.3.0"
+version = "0.4.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "629a873fc04062830bfe8f97c03773bcd7b371e23bcc465d0a61448cd1588fa4"
+checksum = "1ebcdfba24f73b8412c5181e56f092b5eff16671c514ce896b258a0a64bd7735"
 dependencies = [
- "cfg_aliases",
+ "cfg_aliases 0.1.1",
  "glutin",
- "raw-window-handle",
+ "raw-window-handle 0.5.2",
  "winit",
 ]
 
 [[package]]
 name = "glutin_egl_sys"
-version = "0.5.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "af784eb26c5a68ec85391268e074f0aa618c096eadb5d6330b0911cf34fe57c5"
-dependencies = [
- "gl_generator",
- "windows-sys 0.45.0",
-]
-
-[[package]]
-name = "glutin_glx_sys"
-version = "0.4.0"
+version = "0.6.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1b53cb5fe568964aa066a3ba91eac5ecbac869fb0842cd0dc9e412434f1a1494"
+checksum = "77cc5623f5309ef433c3dd4ca1223195347fe62c413da8e2fdd0eb76db2d9bcd"
 dependencies = [
  "gl_generator",
- "x11-dl",
+ "windows-sys 0.48.0",
 ]
 
 [[package]]
 name = "glutin_wgl_sys"
-version = "0.4.0"
+version = "0.5.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ef89398e90033fc6bc65e9bd42fd29bbbfd483bda5b56dc5562f455550618165"
+checksum = "6c8098adac955faa2d31079b65dc48841251f69efd3ac25477903fc424362ead"
 dependencies = [
  "gl_generator",
 ]
 
 [[package]]
-name = "gobject-sys"
-version = "0.16.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3520bb9c07ae2a12c7f2fbb24d4efc11231c8146a86956413fb1a79bb760a0f1"
-dependencies = [
- "glib-sys",
- "libc",
- "system-deps",
-]
-
-[[package]]
-name = "gtk"
-version = "0.16.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e4d3507d43908c866c805f74c9dd593c0ce7ba5c38e576e41846639cdcd4bee6"
-dependencies = [
- "atk",
- "bitflags 1.3.2",
- "cairo-rs",
- "field-offset",
- "futures-channel",
- "gdk",
- "gdk-pixbuf",
- "gio",
- "glib",
- "gtk-sys",
- "gtk3-macros",
- "libc",
- "once_cell",
- "pango",
- "pkg-config",
-]
-
-[[package]]
-name = "gtk-sys"
-version = "0.16.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "89b5f8946685d5fe44497007786600c2f368ff6b1e61a16251c89f72a97520a3"
-dependencies = [
- "atk-sys",
- "cairo-sys-rs",
- "gdk-pixbuf-sys",
- "gdk-sys",
- "gio-sys",
- "glib-sys",
- "gobject-sys",
- "libc",
- "pango-sys",
- "system-deps",
-]
-
-[[package]]
-name = "gtk3-macros"
-version = "0.16.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "096eb63c6fedf03bafe65e5924595785eaf1bcb7200dac0f2cbe9c9738f05ad8"
-dependencies = [
- "anyhow",
- "proc-macro-crate",
- "proc-macro-error",
- "proc-macro2",
- "quote",
- "syn 1.0.109",
-]
-
-[[package]]
 name = "gumdrop"
 version = "0.8.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -1811,10 +1786,24 @@ dependencies = [
 ]
 
 [[package]]
+name = "half"
+version = "2.4.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "6dd08c532ae367adf81c312a4580bc67f1d0fe8bc9c460520283f4c0ff277888"
+dependencies = [
+ "cfg-if",
+ "crunchy",
+]
+
+[[package]]
 name = "hashbrown"
-version = "0.14.3"
+version = "0.14.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "290f1a1d9242c78d09ce40a5e87e7554ee637af1351968159f4952f028f75604"
+checksum = "e5274423e17b7c9fc20b6e7e208532f9b19825d82dfd615708b70edd83df41f1"
+dependencies = [
+ "ahash",
+ "allocator-api2",
+]
 
 [[package]]
 name = "heck"
@@ -1824,9 +1813,9 @@ checksum = "95505c38b4572b2d910cecb0281560f54b440a19336cbbcb27bf6ce6adc6f5a8"
 
 [[package]]
 name = "hermit-abi"
-version = "0.3.4"
+version = "0.3.9"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5d3d0e0f38255e7fa3cf31335b3a56f05febd18025f4db5ef7a0cfb4f8da651f"
+checksum = "d231dfb89cfffdbc30e7fc41579ed6066ad03abda9e567ccafae602b97ec5024"
 
 [[package]]
 name = "hex"
@@ -1850,10 +1839,228 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "9a3a5bfb195931eeb336b2a7b4d761daec841b97f947d34394601737a7bba5e4"
 
 [[package]]
+name = "i-slint-backend-linuxkms"
+version = "1.6.0"
+source = "git+https://github.com/slint-ui/slint.git#65160638a1c36cf8ee19047554f7bb4384c69ddf"
+dependencies = [
+ "calloop",
+ "drm",
+ "gbm",
+ "gbm-sys",
+ "glutin",
+ "i-slint-common",
+ "i-slint-core",
+ "i-slint-renderer-femtovg",
+ "input",
+ "libseat",
+ "nix 0.27.1",
+ "raw-window-handle 0.5.2",
+ "xkbcommon",
+]
+
+[[package]]
+name = "i-slint-backend-selector"
+version = "1.6.0"
+source = "git+https://github.com/slint-ui/slint.git#65160638a1c36cf8ee19047554f7bb4384c69ddf"
+dependencies = [
+ "cfg-if",
+ "i-slint-backend-linuxkms",
+ "i-slint-backend-winit",
+ "i-slint-common",
+ "i-slint-core",
+]
+
+[[package]]
+name = "i-slint-backend-winit"
+version = "1.6.0"
+source = "git+https://github.com/slint-ui/slint.git#65160638a1c36cf8ee19047554f7bb4384c69ddf"
+dependencies = [
+ "cfg-if",
+ "cfg_aliases 0.2.0",
+ "cocoa",
+ "const-field-offset",
+ "copypasta",
+ "derive_more",
+ "glutin",
+ "glutin-winit",
+ "i-slint-common",
+ "i-slint-core",
+ "i-slint-core-macros",
+ "i-slint-renderer-femtovg",
+ "i-slint-renderer-skia",
+ "lyon_path",
+ "once_cell",
+ "pin-weak",
+ "raw-window-handle 0.5.2",
+ "scoped-tls-hkt",
+ "scopeguard",
+ "softbuffer",
+ "wasm-bindgen",
+ "web-sys",
+ "winit",
+]
+
+[[package]]
+name = "i-slint-common"
+version = "1.6.0"
+source = "git+https://github.com/slint-ui/slint.git#65160638a1c36cf8ee19047554f7bb4384c69ddf"
+dependencies = [
+ "cfg-if",
+ "derive_more",
+ "fontdb",
+ "libloading",
+]
+
+[[package]]
+name = "i-slint-compiler"
+version = "1.6.0"
+source = "git+https://github.com/slint-ui/slint.git#65160638a1c36cf8ee19047554f7bb4384c69ddf"
+dependencies = [
+ "by_address",
+ "codemap",
+ "codemap-diagnostic",
+ "css-color-parser2",
+ "derive_more",
+ "fontdue",
+ "i-slint-common",
+ "image",
+ "itertools",
+ "linked_hash_set",
+ "lyon_extra",
+ "lyon_path",
+ "num_enum",
+ "once_cell",
+ "proc-macro2",
+ "quote",
+ "resvg",
+ "rowan",
+ "smol_str",
+ "strum",
+ "thiserror",
+ "url",
+]
+
+[[package]]
+name = "i-slint-core"
+version = "1.6.0"
+source = "git+https://github.com/slint-ui/slint.git#65160638a1c36cf8ee19047554f7bb4384c69ddf"
+dependencies = [
+ "auto_enums",
+ "bitflags 2.5.0",
+ "cfg-if",
+ "clru",
+ "const-field-offset",
+ "derive_more",
+ "euclid",
+ "gettext-rs",
+ "i-slint-common",
+ "i-slint-core-macros",
+ "image",
+ "integer-sqrt",
+ "lyon_algorithms",
+ "lyon_extra",
+ "lyon_geom",
+ "lyon_path",
+ "num-traits",
+ "once_cell",
+ "pin-project",
+ "pin-weak",
+ "portable-atomic",
+ "raw-window-handle 0.6.1",
+ "resvg",
+ "rgb",
+ "scoped-tls-hkt",
+ "scopeguard",
+ "slab",
+ "static_assertions",
+ "strum",
+ "unicode-linebreak",
+ "unicode-script",
+ "unicode-segmentation",
+ "vtable",
+ "wasm-bindgen",
+ "web-sys",
+ "web-time 1.1.0",
+]
+
+[[package]]
+name = "i-slint-core-macros"
+version = "1.6.0"
+source = "git+https://github.com/slint-ui/slint.git#65160638a1c36cf8ee19047554f7bb4384c69ddf"
+dependencies = [
+ "quote",
+ "syn 2.0.61",
+]
+
+[[package]]
+name = "i-slint-renderer-femtovg"
+version = "1.6.0"
+source = "git+https://github.com/slint-ui/slint.git#65160638a1c36cf8ee19047554f7bb4384c69ddf"
+dependencies = [
+ "cfg-if",
+ "const-field-offset",
+ "core-foundation",
+ "core-text",
+ "derive_more",
+ "dwrote",
+ "femtovg",
+ "glow",
+ "i-slint-common",
+ "i-slint-core",
+ "i-slint-core-macros",
+ "imgref",
+ "lyon_path",
+ "once_cell",
+ "pin-weak",
+ "raw-window-handle 0.5.2",
+ "rgb",
+ "scoped-tls-hkt",
+ "ttf-parser",
+ "unicode-script",
+ "unicode-segmentation",
+ "wasm-bindgen",
+ "web-sys",
+ "winapi",
+]
+
+[[package]]
+name = "i-slint-renderer-skia"
+version = "1.6.0"
+source = "git+https://github.com/slint-ui/slint.git#65160638a1c36cf8ee19047554f7bb4384c69ddf"
+dependencies = [
+ "bytemuck",
+ "cfg-if",
+ "cfg_aliases 0.2.0",
+ "cocoa",
+ "const-field-offset",
+ "core-foundation",
+ "core-graphics-types",
+ "derive_more",
+ "foreign-types",
+ "glow",
+ "glutin",
+ "i-slint-common",
+ "i-slint-core",
+ "i-slint-core-macros",
+ "lyon_path",
+ "metal",
+ "objc",
+ "once_cell",
+ "pin-weak",
+ "raw-window-handle 0.5.2",
+ "scoped-tls-hkt",
+ "skia-safe",
+ "softbuffer",
+ "unicode-segmentation",
+ "vtable",
+ "windows 0.54.0",
+]
+
+[[package]]
 name = "iana-time-zone"
-version = "0.1.59"
+version = "0.1.60"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b6a67363e2aa4443928ce15e57ebae94fd8949958fd1223c4cfc0cd473ad7539"
+checksum = "e7ffbb5a1b541ea2561f8c41c087286cc091e21e556a4f09a8f6cbf17b69b141"
 dependencies = [
  "android_system_properties",
  "core-foundation-sys",
@@ -1873,6 +2080,27 @@ dependencies = [
 ]
 
 [[package]]
+name = "icrate"
+version = "0.0.4"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "99d3aaff8a54577104bafdf686ff18565c3b6903ca5782a2026ef06e2c7aa319"
+dependencies = [
+ "block2 0.3.0",
+ "dispatch",
+ "objc2 0.4.1",
+]
+
+[[package]]
+name = "icrate"
+version = "0.1.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "3fb69199826926eb864697bddd27f73d9fddcffc004f5733131e15b465e30642"
+dependencies = [
+ "block2 0.4.0",
+ "objc2 0.5.1",
+]
+
+[[package]]
 name = "idna"
 version = "0.5.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -1883,10 +2111,40 @@ dependencies = [
 ]
 
 [[package]]
+name = "image"
+version = "0.24.9"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "5690139d2f55868e080017335e4b94cb7414274c74f1669c84fb5feba2c9f69d"
+dependencies = [
+ "bytemuck",
+ "byteorder",
+ "color_quant",
+ "exr",
+ "gif 0.13.1",
+ "jpeg-decoder",
+ "num-traits",
+ "png",
+ "qoi",
+ "tiff",
+]
+
+[[package]]
+name = "imagesize"
+version = "0.12.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "029d73f573d8e8d63e6d5020011d3255b28c3ba85d6cf870a07184ed23de9284"
+
+[[package]]
+name = "imgref"
+version = "1.10.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "44feda355f4159a7c757171a77de25daf6411e217b4cabd03bd6650690468126"
+
+[[package]]
 name = "indexmap"
-version = "2.1.0"
+version = "2.2.6"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d530e1a18b1cb4c484e6e34556a0d948706958449fca0cab753d649f2bce3d1f"
+checksum = "168fb715dda47215e360912c096649d23d58bf392ac62f73919e831745e40f26"
 dependencies = [
  "equivalent",
  "hashbrown",
@@ -1915,15 +2173,41 @@ dependencies = [
 ]
 
 [[package]]
+name = "input"
+version = "0.8.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "e6e74cd82cedcd66db78742a8337bdc48f188c4d2c12742cbc5cd85113f0b059"
+dependencies = [
+ "bitflags 1.3.2",
+ "input-sys",
+ "io-lifetimes",
+ "libc",
+ "log",
+ "udev 0.7.0",
+]
+
+[[package]]
+name = "input-sys"
+version = "1.18.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "bd4f5b4d1c00331c5245163aacfe5f20be75b564c7112d45893d4ae038119eb0"
+
+[[package]]
 name = "instant"
 version = "0.1.12"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "7a5bbe824c507c5da5956355e86a746d82e0e1464f65d862cc5e71da70e94b2c"
 dependencies = [
  "cfg-if",
- "js-sys",
- "wasm-bindgen",
- "web-sys",
+]
+
+[[package]]
+name = "integer-sqrt"
+version = "0.1.5"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "276ec31bcb4a9ee45f58bec6f9ec700ae4cf4f4f8f2fa7e06cb406bd5ffdd770"
+dependencies = [
+ "num-traits",
 ]
 
 [[package]]
@@ -1939,29 +2223,29 @@ dependencies = [
 
 [[package]]
 name = "is-terminal"
-version = "0.4.10"
+version = "0.4.12"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0bad00257d07be169d870ab665980b06cdb366d792ad690bf2e76876dc503455"
+checksum = "f23ff5ef2b80d608d61efee834934d862cd92461afc0560dedf493e4c033738b"
 dependencies = [
  "hermit-abi",
- "rustix 0.38.30",
+ "libc",
  "windows-sys 0.52.0",
 ]
 
 [[package]]
 name = "itertools"
-version = "0.10.5"
+version = "0.12.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b0fd2260e829bddf4cb6ea802289de2f86d6a7a690192fbe91b3f46e0f2c8473"
+checksum = "ba291022dbbd398a455acf126c1e341954079855bc60dfdda641363bd6922569"
 dependencies = [
  "either",
 ]
 
 [[package]]
 name = "itoa"
-version = "1.0.10"
+version = "1.0.11"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b1a46d1a171d865aa5f83f92695765caa047a9b4cbae2cbf37dbd613a793fd4c"
+checksum = "49f1f14873335454500d59611f1cf4a4b0f786f9ac11f4312a78e4cf2566695b"
 
 [[package]]
 name = "jni"
@@ -1987,18 +2271,27 @@ checksum = "8eaf4bc02d17cbdd7ff4c7438cafcdf7fb9a4613313ad11b4f8fefe7d3fa0130"
 
 [[package]]
 name = "jobserver"
-version = "0.1.27"
+version = "0.1.31"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8c37f63953c4c63420ed5fd3d6d398c719489b9f872b9fa683262f8edd363c7d"
+checksum = "d2b099aaa34a9751c5bf0878add70444e1ed2dd73f347be99003d4577277de6e"
 dependencies = [
  "libc",
 ]
 
 [[package]]
+name = "jpeg-decoder"
+version = "0.3.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "f5d4a7da358eff58addd2877a45865158f0d78c911d43a5784ceb7bbf52833b0"
+dependencies = [
+ "rayon",
+]
+
+[[package]]
 name = "js-sys"
-version = "0.3.61"
+version = "0.3.69"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "445dde2150c55e483f3d8416706b97ec8e8237c307e5b7b4b8dd15e6af2a0730"
+checksum = "29c15563dc2726973df627357ce0c9ddddbea194836909d655df6a75d2cf296d"
 dependencies = [
  "wasm-bindgen",
 ]
@@ -2010,6 +2303,22 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "e2db585e1d738fc771bf08a151420d3ed193d9d895a36df7f6f8a9456b911ddc"
 
 [[package]]
+name = "kurbo"
+version = "0.11.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "6e5aa9f0f96a938266bdb12928a67169e8d22c6a786fda8ed984b85e6ba93c3c"
+dependencies = [
+ "arrayvec",
+ "smallvec",
+]
+
+[[package]]
+name = "lazy-bytes-cast"
+version = "5.0.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "10257499f089cd156ad82d0a9cd57d9501fa2c989068992a97eb3c27836f206b"
+
+[[package]]
 name = "lazy_static"
 version = "1.4.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -2022,65 +2331,72 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "830d08ce1d1d941e6b30645f1a0eb5643013d835ce3779a5fc208261dbe10f55"
 
 [[package]]
-name = "libappindicator"
-version = "0.8.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "89e1edfdc9b0853358306c6dfb4b77c79c779174256fe93d80c0b5ebca451a2f"
-dependencies = [
- "glib",
- "gtk",
- "gtk-sys",
- "libappindicator-sys",
- "log",
-]
-
-[[package]]
-name = "libappindicator-sys"
-version = "0.8.0"
+name = "lebe"
+version = "0.5.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "08fcb2bea89cee9613982501ec83eaa2d09256b24540ae463c52a28906163918"
-dependencies = [
- "gtk-sys",
- "libloading",
- "once_cell",
-]
+checksum = "03087c2bad5e1034e8cace5926dec053fb3790248370865f5117a7d0213354c8"
 
 [[package]]
 name = "libc"
-version = "0.2.152"
+version = "0.2.154"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "13e3bf6590cbc649f4d1a3eefc9d5d6eb746f5200ffb04e5e142700b8faa56e7"
+checksum = "ae743338b92ff9146ce83992f766a31066a91a8c84a45e0e9f21e7cf6de6d346"
 
 [[package]]
 name = "libloading"
-version = "0.7.4"
+version = "0.8.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b67380fd3b2fbe7527a606e18729d21c6f3951633d0500574c4dc22d2d638b9f"
+checksum = "0c2a198fb6b0eada2a8df47933734e6d35d350665a33a3593d7164fa52c75c19"
 dependencies = [
  "cfg-if",
- "winapi",
+ "windows-targets 0.52.5",
 ]
 
 [[package]]
+name = "libm"
+version = "0.2.8"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "4ec2a862134d2a7d32d7983ddcdd1c4923530833c9f2ea1a44fc5fa473989058"
+
+[[package]]
 name = "libredox"
-version = "0.0.1"
+version = "0.0.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "85c833ca1e66078851dba29046874e38f08b2c883700aa29a03ddd3b23814ee8"
+checksum = "3af92c55d7d839293953fcd0fda5ecfe93297cfde6ffbdec13b41d99c0ba6607"
 dependencies = [
- "bitflags 2.4.2",
+ "bitflags 2.5.0",
  "libc",
  "redox_syscall 0.4.1",
 ]
 
 [[package]]
 name = "libredox"
-version = "0.0.2"
+version = "0.1.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3af92c55d7d839293953fcd0fda5ecfe93297cfde6ffbdec13b41d99c0ba6607"
+checksum = "c0ff37bd590ca25063e35af745c343cb7a0271906fb7b37e4813e8f79f00268d"
 dependencies = [
- "bitflags 2.4.2",
+ "bitflags 2.5.0",
  "libc",
- "redox_syscall 0.4.1",
+]
+
+[[package]]
+name = "libseat"
+version = "0.2.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "54a0adf8d8607a73a5b74cbe4132f57cb349e4bf860103cd089461bbcbc9907e"
+dependencies = [
+ "errno",
+ "libseat-sys",
+ "log",
+]
+
+[[package]]
+name = "libseat-sys"
+version = "0.1.7"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "3671cb5e03871f1d6bf0b3b5daa9275549e348fa6359e0f9adb910ca163d4c34"
+dependencies = [
+ "pkg-config",
 ]
 
 [[package]]
@@ -2095,9 +2411,9 @@ dependencies = [
 
 [[package]]
 name = "libusb1-sys"
-version = "0.6.4"
+version = "0.7.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f9d0e2afce4245f2c9a418511e5af8718bcaf2fa408aefb259504d1a9cb25f27"
+checksum = "da050ade7ac4ff1ba5379af847a10a10a8e284181e060105bf8d86960ce9ce0f"
 dependencies = [
  "cc",
  "libc",
@@ -2106,6 +2422,21 @@ dependencies = [
 ]
 
 [[package]]
+name = "linked-hash-map"
+version = "0.5.6"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "0717cef1bc8b636c6e1c1bbdefc09e6322da8a9321966e8928ef80d20f7f770f"
+
+[[package]]
+name = "linked_hash_set"
+version = "0.1.4"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "47186c6da4d81ca383c7c47c1bfc80f4b95f4720514d860a5407aaf4233f9588"
+dependencies = [
+ "linked-hash-map",
+]
+
+[[package]]
 name = "linux-raw-sys"
 version = "0.3.8"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -2118,10 +2449,23 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "01cda141df6706de531b6c46c3a33ecca755538219bd484262fa09410c13539c"
 
 [[package]]
+name = "locale_config"
+version = "0.3.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "08d2c35b16f4483f6c26f0e4e9550717a2f6575bcd6f12a53ff0c490a94a6934"
+dependencies = [
+ "lazy_static",
+ "objc",
+ "objc-foundation",
+ "regex",
+ "winapi",
+]
+
+[[package]]
 name = "lock_api"
-version = "0.4.11"
+version = "0.4.12"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3c168f8615b12bc01f9c17e2eb0cc07dcae1940121185446edc3744920e8ef45"
+checksum = "07af8b9cdd281b7915f413fa73f29ebd5d55d0d3f0155584dade1ff18cea1b17"
 dependencies = [
  "autocfg",
  "scopeguard",
@@ -2129,21 +2473,68 @@ dependencies = [
 
 [[package]]
 name = "log"
-version = "0.4.20"
+version = "0.4.21"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b5e6163cb8c49088c2c36f57875e58ccd8c87c7427f7fbd50ea6710b2f3f2e8f"
+checksum = "90ed8c1e510134f979dbc4f070f87d4313098b704861a105fe34231c70a3901c"
 
 [[package]]
 name = "logind-zbus"
-version = "3.1.2"
+version = "4.0.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c07a2542f6e91ea92780158654852190edb2ba0b232d9d00d649d0c691cb7eb3"
+checksum = "15b2375aeabe771d0774a333bf20aa89ea1805f4f9d094fc45e7390bfc7da42a"
 dependencies = [
  "serde",
  "zbus",
 ]
 
 [[package]]
+name = "lru"
+version = "0.12.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "d3262e75e648fce39813cb56ac41f3c3e3f65217ebf3844d818d1f9398cfb0dc"
+
+[[package]]
+name = "lyon_algorithms"
+version = "1.0.4"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "a3bca95f9a4955b3e4a821fbbcd5edfbd9be2a9a50bb5758173e5358bfb4c623"
+dependencies = [
+ "lyon_path",
+ "num-traits",
+]
+
+[[package]]
+name = "lyon_extra"
+version = "1.0.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "8c4a243ce61e7e5f3ae6c72a88d8fb081b6c69f13500c15e99cfd1159a833b20"
+dependencies = [
+ "lyon_path",
+ "thiserror",
+]
+
+[[package]]
+name = "lyon_geom"
+version = "1.0.5"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "edecfb8d234a2b0be031ab02ebcdd9f3b9ee418fb35e265f7a540a48d197bff9"
+dependencies = [
+ "arrayvec",
+ "euclid",
+ "num-traits",
+]
+
+[[package]]
+name = "lyon_path"
+version = "1.0.4"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "ca507745ba7ccbc76e5c44e7b63b1a29d2b0d6126f375806a5bbaf657c7d6c45"
+dependencies = [
+ "lyon_geom",
+ "num-traits",
+]
+
+[[package]]
 name = "mac-notification-sys"
 version = "0.5.9"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -2167,53 +2558,53 @@ dependencies = [
 
 [[package]]
 name = "memchr"
-version = "2.7.1"
+version = "2.7.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "523dc4f511e55ab87b694dc30d0f820d60906ef06413f93d4d7a1385599cc149"
+checksum = "6c8640c5d730cb13ebd907d8d04b52f55ac9a2eec55b440c8892f40d56c76c1d"
 
 [[package]]
 name = "memmap2"
-version = "0.5.10"
+version = "0.8.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "83faa42c0a078c393f6b29d5db232d8be22776a891f8f56e5284faee4a20b327"
+checksum = "43a5a03cefb0d953ec0be133036f14e109412fa594edc2f77227249db66cc3ed"
 dependencies = [
  "libc",
 ]
 
 [[package]]
-name = "memoffset"
-version = "0.6.5"
+name = "memmap2"
+version = "0.9.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5aa361d4faea93603064a027415f07bd8e1d5c88c9fbf68bf56a285428fd79ce"
+checksum = "fe751422e4a8caa417e13c3ea66452215d7d63e19e604f4980461212f3ae1322"
 dependencies = [
- "autocfg",
+ "libc",
 ]
 
 [[package]]
 name = "memoffset"
-version = "0.7.1"
+version = "0.9.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5de893c32cde5f383baa4c04c5d6dbdd735cfd4a794b0debdb2bb1b421da5ff4"
+checksum = "488016bfae457b036d996092f6cb448677611ce4449e970ceaf42695203f218a"
 dependencies = [
  "autocfg",
 ]
 
 [[package]]
-name = "memoffset"
-version = "0.9.0"
+name = "metal"
+version = "0.27.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5a634b1c61a95585bd15607c6ab0c4e5b226e695ff2800ba0cdccddf208c406c"
+checksum = "c43f73953f8cbe511f021b58f18c3ce1c3d1ae13fe953293e13345bf83217f25"
 dependencies = [
- "autocfg",
+ "bitflags 2.5.0",
+ "block",
+ "core-graphics-types",
+ "foreign-types",
+ "log",
+ "objc",
+ "paste",
 ]
 
 [[package]]
-name = "micromath"
-version = "1.1.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "bc4010833aea396656c2f91ee704d51a6f1329ec2ab56ffd00bfd56f7481ea94"
-
-[[package]]
 name = "minimal-lexical"
 version = "0.2.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -2231,9 +2622,9 @@ dependencies = [
 
 [[package]]
 name = "miniz_oxide"
-version = "0.7.1"
+version = "0.7.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e7810e0be55b428ada41041c41f32c9f1a42817901b4ccf45fa3d4b6561e74c7"
+checksum = "9d811f3e15f28568be3407c8e7fdb6514c1cda3cb30683f15b6a1a1dc4ea14a7"
 dependencies = [
  "adler",
  "simd-adler32",
@@ -2241,9 +2632,9 @@ dependencies = [
 
 [[package]]
 name = "mio"
-version = "0.8.10"
+version = "0.8.11"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8f3d0b296e374a4e6f3c7b0a1f5a51d748a0d34c85e7dc48fc3fa9a87657fe09"
+checksum = "a4a650543ca06a924e8b371db273b2756685faae30f8487da1b56505a8f78b0c"
 dependencies = [
  "libc",
  "log",
@@ -2252,16 +2643,26 @@ dependencies = [
 ]
 
 [[package]]
-name = "ndk"
+name = "nanorand"
 version = "0.7.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "451422b7e4718271c8b5b3aadf5adedba43dc76312454b387e98fae0fc951aa0"
+checksum = "6a51313c5820b0b02bd422f4b44776fbf47961755c74ce64afc73bfad10226c3"
 dependencies = [
- "bitflags 1.3.2",
+ "getrandom",
+]
+
+[[package]]
+name = "ndk"
+version = "0.8.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "2076a31b7010b17a38c01907c45b945e8f11495ee4dd588309718901b1f7a5b7"
+dependencies = [
+ "bitflags 2.5.0",
  "jni-sys",
+ "log",
  "ndk-sys",
- "num_enum 0.5.11",
- "raw-window-handle",
+ "num_enum",
+ "raw-window-handle 0.5.2",
  "thiserror",
 ]
 
@@ -2273,58 +2674,49 @@ checksum = "27b02d87554356db9e9a873add8782d4ea6e3e58ea071a9adb9a2e8ddb884a8b"
 
 [[package]]
 name = "ndk-sys"
-version = "0.4.1+23.1.7779620"
+version = "0.5.0+25.2.9519653"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3cf2aae958bd232cac5069850591667ad422d263686d75b52a065f9badeee5a3"
+checksum = "8c196769dd60fd4f363e11d948139556a344e79d451aeb2fa2fd040738ef7691"
 dependencies = [
  "jni-sys",
 ]
 
 [[package]]
 name = "nix"
-version = "0.24.3"
+version = "0.26.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "fa52e972a9a719cecb6864fb88568781eb706bac2cd1d4f04a648542dbf78069"
+checksum = "598beaf3cc6fdd9a5dfb1630c2800c7acd31df7aaf0f565796fba2b53ca1af1b"
 dependencies = [
  "bitflags 1.3.2",
  "cfg-if",
  "libc",
- "memoffset 0.6.5",
 ]
 
 [[package]]
 name = "nix"
-version = "0.25.1"
+version = "0.27.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f346ff70e7dbfd675fe90590b92d59ef2de15a8779ae305ebcbfd3f0caf59be4"
+checksum = "2eb04e9c688eff1c89d72b407f168cf79bb9e867a9d3323ed6c01519eb9cc053"
 dependencies = [
- "autocfg",
- "bitflags 1.3.2",
+ "bitflags 2.5.0",
  "cfg-if",
  "libc",
- "memoffset 0.6.5",
 ]
 
 [[package]]
 name = "nix"
-version = "0.26.4"
+version = "0.28.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "598beaf3cc6fdd9a5dfb1630c2800c7acd31df7aaf0f565796fba2b53ca1af1b"
+checksum = "ab2156c4fce2f8df6c499cc1c763e4394b7482525bf2a9701c9d79d215f519e4"
 dependencies = [
- "bitflags 1.3.2",
+ "bitflags 2.5.0",
  "cfg-if",
+ "cfg_aliases 0.1.1",
  "libc",
- "memoffset 0.7.1",
- "pin-utils",
+ "memoffset",
 ]
 
 [[package]]
-name = "nohash-hasher"
-version = "0.2.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2bf50223579dc7cdcfb3bfcacf7069ff68243f8c363f62ffa99cf000a6b9c451"
-
-[[package]]
 name = "nom"
 version = "7.1.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -2336,8 +2728,8 @@ dependencies = [
 
 [[package]]
 name = "notify-rust"
-version = "4.6.0"
-source = "git+https://github.com/flukejones/notify-rust.git#c83082a2549932bde52a4ec449b9981fc39e9a0d"
+version = "4.7.0"
+source = "git+https://github.com/flukejones/notify-rust.git?rev=54176413b81189a3e4edbdc20a0b4f7e2e35c063#54176413b81189a3e4edbdc20a0b4f7e2e35c063"
 dependencies = [
  "mac-notification-sys",
  "serde",
@@ -2346,12 +2738,19 @@ dependencies = [
 ]
 
 [[package]]
+name = "num-conv"
+version = "0.1.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "51d515d32fb182ee37cda2ccdcb92950d6a3c2893aa280e540671c2cd0f3b1d9"
+
+[[package]]
 name = "num-traits"
-version = "0.2.17"
+version = "0.2.19"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "39e3200413f237f41ab11ad6d161bc7239c84dcb631773ccd7de3dfe4b5c267c"
+checksum = "071dfc062690e90b734c0b2273ce72ad0ffa95f0c74596bc250dcfd960262841"
 dependencies = [
  "autocfg",
+ "libm",
 ]
 
 [[package]]
@@ -2366,44 +2765,23 @@ dependencies = [
 
 [[package]]
 name = "num_enum"
-version = "0.5.11"
+version = "0.7.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1f646caf906c20226733ed5b1374287eb97e3c2a5c227ce668c1f2ce20ae57c9"
+checksum = "02339744ee7253741199f897151b38e72257d13802d4ee837285cc2990a90845"
 dependencies = [
- "num_enum_derive 0.5.11",
-]
-
-[[package]]
-name = "num_enum"
-version = "0.6.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7a015b430d3c108a207fd776d2e2196aaf8b1cf8cf93253e3a097ff3085076a1"
-dependencies = [
- "num_enum_derive 0.6.1",
-]
-
-[[package]]
-name = "num_enum_derive"
-version = "0.5.11"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "dcbff9bc912032c62bf65ef1d5aea88983b420f4f839db1e9b0c281a25c9c799"
-dependencies = [
- "proc-macro-crate",
- "proc-macro2",
- "quote",
- "syn 1.0.109",
+ "num_enum_derive",
 ]
 
 [[package]]
 name = "num_enum_derive"
-version = "0.6.1"
+version = "0.7.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "96667db765a921f7b295ffee8b60472b686a51d4f21c2ee4ffdb94c7013b65a6"
+checksum = "681030a937600a36906c185595136d26abfebb4aa9c65701cefcaf8578bb982b"
 dependencies = [
  "proc-macro-crate",
  "proc-macro2",
  "quote",
- "syn 2.0.48",
+ "syn 2.0.61",
 ]
 
 [[package]]
@@ -2413,6 +2791,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "915b1b472bc21c53464d6c8461c9d3af805ba1ef837e1cac254428f4a77177b1"
 dependencies = [
  "malloc_buf",
+ "objc_exception",
 ]
 
 [[package]]
@@ -2428,28 +2807,49 @@ dependencies = [
 
 [[package]]
 name = "objc-sys"
-version = "0.2.0-beta.2"
+version = "0.3.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "df3b9834c1e95694a05a828b59f55fa2afec6288359cda67146126b3f90a55d7"
+checksum = "da284c198fb9b7b0603f8635185e85fbd5b64ee154b1ed406d489077de2d6d60"
 
 [[package]]
 name = "objc2"
-version = "0.3.0-beta.3.patch-leaks.3"
+version = "0.4.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7e01640f9f2cb1220bbe80325e179e532cb3379ebcd1bf2279d703c19fe3a468"
+checksum = "559c5a40fdd30eb5e344fbceacf7595a81e242529fb4e21cf5f43fb4f11ff98d"
 dependencies = [
- "block2",
  "objc-sys",
- "objc2-encode",
+ "objc2-encode 3.0.0",
 ]
 
 [[package]]
-name = "objc2-encode"
-version = "2.0.0-pre.2"
+name = "objc2"
+version = "0.5.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "abfcac41015b00a120608fdaa6938c44cb983fee294351cc4bac7638b4e50512"
+checksum = "b4b25e1034d0e636cd84707ccdaa9f81243d399196b8a773946dcffec0401659"
 dependencies = [
  "objc-sys",
+ "objc2-encode 4.0.1",
+]
+
+[[package]]
+name = "objc2-encode"
+version = "3.0.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "d079845b37af429bfe5dfa76e6d087d788031045b25cfc6fd898486fd9847666"
+
+[[package]]
+name = "objc2-encode"
+version = "4.0.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "88658da63e4cc2c8adb1262902cd6af51094df0488b760d6fd27194269c0950a"
+
+[[package]]
+name = "objc_exception"
+version = "0.1.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "ad970fb455818ad6cba4c122ad012fae53ae8b4795f86378bce65e4f6bab2ca4"
+dependencies = [
+ "cc",
 ]
 
 [[package]]
@@ -2475,6 +2875,10 @@ name = "once_cell"
 version = "1.19.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "3fdb12b2476b595f9358c5161aa467c2438859caa136dec86c26fdd2efe17b92"
+dependencies = [
+ "critical-section",
+ "portable-atomic",
+]
 
 [[package]]
 name = "orbclient"
@@ -2505,32 +2909,6 @@ dependencies = [
 ]
 
 [[package]]
-name = "pango"
-version = "0.16.5"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "cdff66b271861037b89d028656184059e03b0b6ccb36003820be19f7200b1e94"
-dependencies = [
- "bitflags 1.3.2",
- "gio",
- "glib",
- "libc",
- "once_cell",
- "pango-sys",
-]
-
-[[package]]
-name = "pango-sys"
-version = "0.16.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9e134909a9a293e04d2cc31928aa95679c5e4df954d0b85483159bd20d8f047f"
-dependencies = [
- "glib-sys",
- "gobject-sys",
- "libc",
- "system-deps",
-]
-
-[[package]]
 name = "parking"
 version = "2.2.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -2538,9 +2916,9 @@ checksum = "bb813b8af86854136c6922af0598d719255ecb2179515e6e7730d468f05c9cae"
 
 [[package]]
 name = "parking_lot"
-version = "0.12.1"
+version = "0.12.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3742b2c103b9f06bc9fff0a37ff4912935851bee6d36f3c02bcc755bcfec228f"
+checksum = "7e4af0ca4f6caed20e900d564c242b8e5d4903fdacf31d3daf527b66fe6f42fb"
 dependencies = [
  "lock_api",
  "parking_lot_core",
@@ -2548,28 +2926,22 @@ dependencies = [
 
 [[package]]
 name = "parking_lot_core"
-version = "0.9.9"
+version = "0.9.10"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4c42a9226546d68acdd9c0a280d17ce19bfe27a46bf68784e4066115788d008e"
+checksum = "1e401f977ab385c9e4e3ab30627d6f26d00e2c73eef317493c4ec6d468726cf8"
 dependencies = [
  "cfg-if",
  "libc",
- "redox_syscall 0.4.1",
+ "redox_syscall 0.5.1",
  "smallvec",
- "windows-targets 0.48.5",
+ "windows-targets 0.52.5",
 ]
 
 [[package]]
 name = "paste"
-version = "1.0.14"
+version = "1.0.15"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "de3145af08024dea9fa9914f381a17b8fc6034dfb00f3a84013f7ff43f29ed4c"
-
-[[package]]
-name = "peeking_take_while"
-version = "0.1.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "19b17cddbe7ec3f8bc800887bab5e717348c95ea2ca0b1bf0837fb964dc67099"
+checksum = "57c0d7b74b563b49d38dae00a0c37d4d6de9b432382b2892f0574ddcae73fd0a"
 
 [[package]]
 name = "percent-encoding"
@@ -2578,10 +2950,36 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "e3148f5046208a5d56bcfc03053e3ca6334e51da8dfb19b6cdc8b306fae3283e"
 
 [[package]]
+name = "pico-args"
+version = "0.5.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "5be167a7af36ee22fe3115051bc51f6e6c7054c9348e28deb4f49bd6f705a315"
+
+[[package]]
+name = "pin-project"
+version = "1.1.5"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "b6bf43b791c5b9e34c3d182969b4abb522f9343702850a2e57f460d00d09b4b3"
+dependencies = [
+ "pin-project-internal",
+]
+
+[[package]]
+name = "pin-project-internal"
+version = "1.1.5"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "2f38a4412a78282e09a2cf38d195ea5420d15ba0602cb375210efbc877243965"
+dependencies = [
+ "proc-macro2",
+ "quote",
+ "syn 2.0.61",
+]
+
+[[package]]
 name = "pin-project-lite"
-version = "0.2.13"
+version = "0.2.14"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8afb450f006bf6385ca15ef45d71d2288452bc3683ce2e2cacc0d18e4be60b58"
+checksum = "bda66fc9667c18cb2758a2ac84d1167245054bcf85d5d1aaa6923f45801bdd02"
 
 [[package]]
 name = "pin-utils"
@@ -2590,13 +2988,19 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "8b870d8c151b6f2fb93e84a13146138f05d02ed11c7e7c54f8826aaaf7c9f184"
 
 [[package]]
+name = "pin-weak"
+version = "1.1.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "b330c9d1b92dfe68442ca20b009c717d5f0b1e3cf4965e62f704c3c6e95a1305"
+
+[[package]]
 name = "piper"
 version = "0.2.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "668d31b1c4eba19242f2088b2bf3316b82ca31082a8335764db4e083db7485d4"
 dependencies = [
  "atomic-waker",
- "fastrand 2.0.1",
+ "fastrand 2.1.0",
  "futures-io",
 ]
 
@@ -2608,21 +3012,21 @@ checksum = "5de5067af0cd27add969cdb4ef2eecc955f59235f3b7a75a3c6ac9562cfb6b81"
 
 [[package]]
 name = "pkg-config"
-version = "0.3.29"
+version = "0.3.30"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2900ede94e305130c13ddd391e0ab7cbaeb783945ae07a279c268cb05109c6cb"
+checksum = "d231b230927b5e4ad203db57bbcbee2802f6bce620b1e4a9024a07d94e2907ec"
 
 [[package]]
 name = "png"
-version = "0.17.11"
+version = "0.17.13"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1f6c3c3e617595665b8ea2ff95a86066be38fb121ff920a9c0eb282abcd1da5a"
+checksum = "06e4b0d3d1312775e782c86c91a111aa1f910cbb65e1337f9975b5f9a554b5e1"
 dependencies = [
  "bitflags 1.3.2",
  "crc32fast",
  "fdeflate",
  "flate2",
- "miniz_oxide 0.7.1",
+ "miniz_oxide 0.7.2",
 ]
 
 [[package]]
@@ -2653,19 +3057,29 @@ dependencies = [
 
 [[package]]
 name = "polling"
-version = "3.3.2"
+version = "3.7.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "545c980a3880efd47b2e262f6a4bb6daad6555cf3367aa9c4e52895f69537a41"
+checksum = "645493cf344456ef24219d02a768cf1fb92ddf8c92161679ae3d91b91a637be3"
 dependencies = [
  "cfg-if",
  "concurrent-queue",
+ "hermit-abi",
  "pin-project-lite",
- "rustix 0.38.30",
+ "rustix 0.38.34",
  "tracing",
  "windows-sys 0.52.0",
 ]
 
 [[package]]
+name = "portable-atomic"
+version = "1.6.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "7170ef9988bc169ba16dd36a7fa041e5c4cbeb6a35b76d4c03daded371eae7c0"
+dependencies = [
+ "critical-section",
+]
+
+[[package]]
 name = "powerfmt"
 version = "0.2.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -2678,46 +3092,40 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "5b40af805b3121feab8a3c29f04d8ad262fa8e0561883e7653e024ae4479e6de"
 
 [[package]]
-name = "proc-macro-crate"
-version = "1.3.1"
+name = "prettyplease"
+version = "0.2.20"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7f4c021e1093a56626774e81216a4ce732a735e5bad4868a03f3ed65ca0c3919"
+checksum = "5f12335488a2f3b0a83b14edad48dca9879ce89b2edd10e80237e4e852dd645e"
 dependencies = [
- "once_cell",
- "toml_edit 0.19.15",
+ "proc-macro2",
+ "syn 2.0.61",
 ]
 
 [[package]]
-name = "proc-macro-error"
-version = "1.0.4"
+name = "proc-macro-crate"
+version = "3.1.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "da25490ff9892aab3fcf7c36f08cfb902dd3e71ca0f9f9517bea02a73a5ce38c"
+checksum = "6d37c51ca738a55da99dc0c4a34860fd675453b8b36209178c2249bb13651284"
 dependencies = [
- "proc-macro-error-attr",
- "proc-macro2",
- "quote",
- "syn 1.0.109",
- "version_check",
+ "toml_edit 0.21.1",
 ]
 
 [[package]]
-name = "proc-macro-error-attr"
-version = "1.0.4"
+name = "proc-macro2"
+version = "1.0.82"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a1be40180e52ecc98ad80b184934baf3d0d29f979574e439af5a55274b35f869"
+checksum = "8ad3d49ab951a01fbaafe34f2ec74122942fe18a3f9814c3268f1bb72042131b"
 dependencies = [
- "proc-macro2",
- "quote",
- "version_check",
+ "unicode-ident",
 ]
 
 [[package]]
-name = "proc-macro2"
-version = "1.0.78"
+name = "qoi"
+version = "0.4.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e2422ad645d89c99f8f3e6b88a9fdeca7fabeac836b1002371c4367c8f984aae"
+checksum = "7f6d64c71eb498fe9eae14ce4ec935c555749aef511cca85b5568910d6e48001"
 dependencies = [
- "unicode-ident",
+ "bytemuck",
 ]
 
 [[package]]
@@ -2730,10 +3138,19 @@ dependencies = [
 ]
 
 [[package]]
+name = "quick-xml"
+version = "0.31.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "1004a344b30a54e2ee58d66a71b32d2db2feb0a31f9a2d302bf0536f15de2a33"
+dependencies = [
+ "memchr",
+]
+
+[[package]]
 name = "quote"
-version = "1.0.35"
+version = "1.0.36"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "291ec9ab5efd934aaf503a6466c5d5251535d108ee747472c3977cc5acc868ef"
+checksum = "0fa76aaf39101c457836aec0ce2316dbdc3ab723cdda1c6bd4e6ad4208acaca7"
 dependencies = [
  "proc-macro2",
 ]
@@ -2775,6 +3192,32 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "f2ff9a1f06a88b01621b7ae906ef0211290d1c8a168a15542486a8f61c0833b9"
 
 [[package]]
+name = "raw-window-handle"
+version = "0.6.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "8cc3bcbdb1ddfc11e700e62968e6b4cc9c75bb466464ad28fb61c5b2c964418b"
+
+[[package]]
+name = "rayon"
+version = "1.10.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "b418a60154510ca1a002a752ca9714984e21e4241e804d32555251faf8b78ffa"
+dependencies = [
+ "either",
+ "rayon-core",
+]
+
+[[package]]
+name = "rayon-core"
+version = "1.12.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "1465873a3dfdaa8ae7cb14b4383657caab0b3e8a0aa9ae8e04b044854c8dfce2"
+dependencies = [
+ "crossbeam-deque",
+ "crossbeam-utils",
+]
+
+[[package]]
 name = "redox_syscall"
 version = "0.3.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -2793,21 +3236,30 @@ dependencies = [
 ]
 
 [[package]]
+name = "redox_syscall"
+version = "0.5.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "469052894dcb553421e483e4209ee581a45100d31b4018de03e5a7ad86374a7e"
+dependencies = [
+ "bitflags 2.5.0",
+]
+
+[[package]]
 name = "redox_users"
-version = "0.4.4"
+version = "0.4.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a18479200779601e498ada4e8c1e1f50e3ee19deb0259c25825a98b5603b2cb4"
+checksum = "bd283d9651eeda4b2a83a43c1c91b266c40fd76ecd39a50a8c630ae69dc72891"
 dependencies = [
  "getrandom",
- "libredox 0.0.1",
+ "libredox 0.1.3",
  "thiserror",
 ]
 
 [[package]]
 name = "regex"
-version = "1.10.3"
+version = "1.10.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b62dbe01f0b06f9d8dc7d49e05a0785f153b00b2c227856282f671e0318c9b15"
+checksum = "c117dbdfde9c8308975b6a18d71f3f385c89461f7b3fb054288ecf2a2058ba4c"
 dependencies = [
  "aho-corasick",
  "memchr",
@@ -2817,9 +3269,9 @@ dependencies = [
 
 [[package]]
 name = "regex-automata"
-version = "0.4.4"
+version = "0.4.6"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3b7fa1134405e2ec9353fd416b17f8dacd46c473d7d3fd1cf202706a14eb792a"
+checksum = "86b83b8b9847f9bf95ef68afb0b8e6cdb80f498442f5179a29fad448fcc1eaea"
 dependencies = [
  "aho-corasick",
  "memchr",
@@ -2828,27 +3280,49 @@ dependencies = [
 
 [[package]]
 name = "regex-syntax"
-version = "0.8.2"
+version = "0.8.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c08c74e62047bb2de4ff487b251e4a92e24f48745648451635cec7d591162d9f"
+checksum = "adad44e29e4c806119491a7f06f03de4d1af22c3a680dd47f1e6e179439d1f56"
+
+[[package]]
+name = "resvg"
+version = "0.41.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "c2327ced609dadeed3e9702fec3e6b2ddd208758a9268d13e06566c6101ba533"
+dependencies = [
+ "log",
+ "pico-args",
+ "rgb",
+ "svgtypes",
+ "tiny-skia",
+ "usvg",
+]
+
+[[package]]
+name = "rgb"
+version = "0.8.37"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "05aaa8004b64fd573fc9d002f4e632d51ad4f026c2b5ba95fcb6c2f32c2c47d8"
+dependencies = [
+ "bytemuck",
+]
 
 [[package]]
 name = "rog-control-center"
-version = "5.0.10"
+version = "6.0.6"
 dependencies = [
  "asusd",
+ "betrayer",
  "cargo-husky",
+ "concat-idents",
+ "config-traits",
  "dirs",
- "eframe",
- "egui",
+ "dmi_id",
  "env_logger",
- "gtk",
  "gumdrop",
- "libappindicator",
  "log",
- "nix 0.26.4",
+ "nix 0.28.0",
  "notify-rust",
- "png_pong",
  "rog_anime",
  "rog_aura",
  "rog_dbus",
@@ -2856,22 +3330,22 @@ dependencies = [
  "rog_profiles",
  "serde",
  "serde_derive",
- "serde_json",
+ "slint",
+ "slint-build",
  "supergfxctl",
  "tempfile",
  "tokio",
- "toml 0.5.11",
  "versions",
  "zbus",
 ]
 
 [[package]]
 name = "rog_anime"
-version = "5.0.10"
+version = "6.0.6"
 dependencies = [
  "cargo-husky",
  "dmi_id",
- "gif",
+ "gif 0.12.0",
  "glam",
  "log",
  "pix",
@@ -2884,7 +3358,7 @@ dependencies = [
 
 [[package]]
 name = "rog_aura"
-version = "5.0.10"
+version = "6.0.6"
 dependencies = [
  "cargo-husky",
  "dmi_id",
@@ -2898,7 +3372,7 @@ dependencies = [
 
 [[package]]
 name = "rog_dbus"
-version = "5.0.10"
+version = "6.0.6"
 dependencies = [
  "asusd",
  "cargo-husky",
@@ -2906,29 +3380,28 @@ dependencies = [
  "rog_aura",
  "rog_platform",
  "rog_profiles",
+ "rog_slash",
  "zbus",
 ]
 
 [[package]]
 name = "rog_platform"
-version = "5.0.10"
+version = "6.0.6"
 dependencies = [
  "cargo-husky",
  "concat-idents",
  "inotify",
  "log",
- "rog_aura",
  "rusb",
  "serde",
- "serde_derive",
  "typeshare",
- "udev",
+ "udev 0.8.0",
  "zbus",
 ]
 
 [[package]]
 name = "rog_profiles"
-version = "5.0.10"
+version = "6.0.6"
 dependencies = [
  "cargo-husky",
  "log",
@@ -2936,15 +3409,14 @@ dependencies = [
  "serde",
  "serde_derive",
  "typeshare",
- "udev",
+ "udev 0.8.0",
  "zbus",
 ]
 
 [[package]]
 name = "rog_simulators"
-version = "5.0.10"
+version = "6.0.6"
 dependencies = [
- "glam",
  "log",
  "rog_anime",
  "sdl2",
@@ -2952,22 +3424,53 @@ dependencies = [
 ]
 
 [[package]]
+name = "rog_slash"
+version = "6.0.6"
+dependencies = [
+ "cargo-husky",
+ "dmi_id",
+ "serde",
+ "serde_derive",
+ "typeshare",
+ "zbus",
+]
+
+[[package]]
 name = "ron"
 version = "0.8.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "b91f7eff05f748767f183df4320a63d6936e9c6107d97c9e6bdd9784f4289c94"
 dependencies = [
- "base64",
- "bitflags 2.4.2",
+ "base64 0.21.7",
+ "bitflags 2.5.0",
  "serde",
  "serde_derive",
 ]
 
 [[package]]
+name = "rowan"
+version = "0.15.15"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "32a58fa8a7ccff2aec4f39cc45bf5f985cec7125ab271cf681c279fd00192b49"
+dependencies = [
+ "countme",
+ "hashbrown",
+ "memoffset",
+ "rustc-hash",
+ "text-size",
+]
+
+[[package]]
+name = "roxmltree"
+version = "0.19.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "3cd14fd5e3b777a7422cca79358c57a8f6e3a703d9ac187448d0daf220c2407f"
+
+[[package]]
 name = "rusb"
-version = "0.9.3"
+version = "0.9.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "45fff149b6033f25e825cbb7b2c625a11ee8e6dac09264d49beb125e39aa97bf"
+checksum = "ab9f9ff05b63a786553a4c02943b74b34a988448671001e9a27e2f0565cc05a4"
 dependencies = [
  "libc",
  "libusb1-sys",
@@ -2975,9 +3478,9 @@ dependencies = [
 
 [[package]]
 name = "rustc-demangle"
-version = "0.1.23"
+version = "0.1.24"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d626bb9dae77e28219937af045c257c28bfd3f69333c512553507f5f9798cb76"
+checksum = "719b953e2095829ee67db738b3bfa9fa368c94900df327b3f07fe6e794d2fe1f"
 
 [[package]]
 name = "rustc-hash"
@@ -3010,11 +3513,11 @@ dependencies = [
 
 [[package]]
 name = "rustix"
-version = "0.38.30"
+version = "0.38.34"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "322394588aaf33c24007e8bb3238ee3e4c5c09c084ab32bc73890b99ff326bca"
+checksum = "70dc5ec042f7a43c4a73241207cecc9873a06d45debb38b329f8541d85c2730f"
 dependencies = [
- "bitflags 2.4.2",
+ "bitflags 2.5.0",
  "errno",
  "libc",
  "linux-raw-sys 0.4.13",
@@ -3022,10 +3525,32 @@ dependencies = [
 ]
 
 [[package]]
-name = "ryu"
+name = "rustversion"
 version = "1.0.16"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f98d2aa92eebf49b69786be48e4477826b256916e84a57ff2a4f21923b48eb4c"
+checksum = "092474d1a01ea8278f69e6a358998405fae5b8b963ddaeb2b0b04a128bf1dfb0"
+
+[[package]]
+name = "rustybuzz"
+version = "0.13.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "88117946aa1bfb53c2ae0643ceac6506337f44887f8c9fbfb43587b1cc52ba49"
+dependencies = [
+ "bitflags 2.5.0",
+ "bytemuck",
+ "smallvec",
+ "ttf-parser",
+ "unicode-bidi-mirroring",
+ "unicode-ccc",
+ "unicode-properties",
+ "unicode-script",
+]
+
+[[package]]
+name = "ryu"
+version = "1.0.18"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "f3cb5ba0dc43242ce17de99c180e96db90b235b8a9fdc9543c96d2209116bd9f"
 
 [[package]]
 name = "same-file"
@@ -3043,6 +3568,12 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "e1cf6437eb19a8f4a6cc0f7dca544973b0b78843adbfeb3683d1a94a0024a294"
 
 [[package]]
+name = "scoped-tls-hkt"
+version = "0.1.4"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "3ddc765d3410d9f6c6ca071bf0b67f6b01e3ec4595dc3892f02677e75819dddc"
+
+[[package]]
 name = "scopeguard"
 version = "1.2.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -3050,22 +3581,22 @@ checksum = "94143f37725109f92c262ed2cf5e59bce7498c01bcc1502d7b9afe439a4e9f49"
 
 [[package]]
 name = "sctk-adwaita"
-version = "0.5.4"
+version = "0.8.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "cda4e97be1fd174ccc2aae81c8b694e803fa99b34e8fd0f057a9d70698e3ed09"
+checksum = "82b2eaf3a5b264a521b988b2e73042e742df700c4f962cde845d1541adb46550"
 dependencies = [
  "ab_glyph",
  "log",
- "memmap2",
+ "memmap2 0.9.4",
  "smithay-client-toolkit",
  "tiny-skia",
 ]
 
 [[package]]
 name = "sdl2"
-version = "0.35.2"
+version = "0.36.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f7959277b623f1fb9e04aea73686c3ca52f01b2145f8ea16f4ff30d8b7623b1a"
+checksum = "8356b2697d1ead5a34f40bcc3c5d3620205fe0c7be0a14656223bfeec0258891"
 dependencies = [
  "bitflags 1.3.2",
  "lazy_static",
@@ -3075,9 +3606,9 @@ dependencies = [
 
 [[package]]
 name = "sdl2-sys"
-version = "0.35.2"
+version = "0.36.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e3586be2cf6c0a8099a79a12b4084357aa9b3e0b0d7980e3b67aaf7a9d55f9f0"
+checksum = "26bcacfdd45d539fb5785049feb0038a63931aa896c7763a2a12e125ec58bd29"
 dependencies = [
  "cfg-if",
  "libc",
@@ -3086,35 +3617,35 @@ dependencies = [
 
 [[package]]
 name = "semver"
-version = "1.0.21"
+version = "1.0.23"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b97ed7a9823b74f99c7742f5336af7be5ecd3eeafcb1507d1fa93347b1d589b0"
+checksum = "61697e0a1c7e512e84a621326239844a24d8207b4669b41bc18b32ea5cbf988b"
 
 [[package]]
 name = "serde"
-version = "1.0.195"
+version = "1.0.201"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "63261df402c67811e9ac6def069e4786148c4563f4b50fd4bf30aa370d626b02"
+checksum = "780f1cebed1629e4753a1a38a3c72d30b97ec044f0aef68cb26650a3c5cf363c"
 dependencies = [
  "serde_derive",
 ]
 
 [[package]]
 name = "serde_derive"
-version = "1.0.195"
+version = "1.0.201"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "46fe8f8603d81ba86327b23a2e9cdf49e1255fb94a4c5f297f6ee0547178ea2c"
+checksum = "c5e405930b9796f1c00bee880d03fc7e0bb4b9a11afc776885ffe84320da2865"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.48",
+ "syn 2.0.61",
 ]
 
 [[package]]
 name = "serde_json"
-version = "1.0.111"
+version = "1.0.117"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "176e46fa42316f18edd598015a5166857fc835ec732f5215eac6b7bdbf0a84f4"
+checksum = "455182ea6142b14f93f4bc5320a2b31c1f266b66a4a5c858b013302a5d8cbfc3"
 dependencies = [
  "itoa",
  "ryu",
@@ -3123,13 +3654,13 @@ dependencies = [
 
 [[package]]
 name = "serde_repr"
-version = "0.1.18"
+version = "0.1.19"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0b2e6b945e9d3df726b65d6ee24060aff8e3533d431f677a9695db04eff9dfdb"
+checksum = "6c64451ba24fc7a6a2d60fc75dd9c83c90903b19028d4eff35e88fc1e86564e9"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.48",
+ "syn 2.0.61",
 ]
 
 [[package]]
@@ -3154,15 +3685,15 @@ dependencies = [
 
 [[package]]
 name = "shlex"
-version = "1.2.0"
+version = "1.3.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a7cee0529a6d40f580e7a5e6c495c8fbfe21b7b52795ed4bb5e62cdf92bc6380"
+checksum = "0fda2ff0d084019ba4d7c6f371c95d8fd75ce3524c3cb8fb653a3023f6323e64"
 
 [[package]]
 name = "signal-hook-registry"
-version = "1.4.1"
+version = "1.4.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d8229b473baa5980ac72ef434c4415e70c4b5e71b423043adb4ba059f89c99a1"
+checksum = "a9e9e0b4211b72e7b8b6e85c807d36c212bdb33ea8587f7569562a84df5465b1"
 dependencies = [
  "libc",
 ]
@@ -3174,6 +3705,50 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "d66dc143e6b11c1eddc06d5c423cfc97062865baf299914ab64caa38182078fe"
 
 [[package]]
+name = "simplecss"
+version = "0.2.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "a11be7c62927d9427e9f40f3444d5499d868648e2edbc4e2116de69e7ec0e89d"
+dependencies = [
+ "log",
+]
+
+[[package]]
+name = "siphasher"
+version = "1.0.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "56199f7ddabf13fe5074ce809e7d3f42b42ae711800501b5b16ea82ad029c39d"
+
+[[package]]
+name = "skia-bindings"
+version = "0.72.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "ace7c5359ccb009880e65958eaf1e2fa68ee19ada6931300c2f1942f84abf2c3"
+dependencies = [
+ "bindgen",
+ "cc",
+ "flate2",
+ "heck",
+ "lazy_static",
+ "regex",
+ "serde_json",
+ "tar",
+ "toml",
+]
+
+[[package]]
+name = "skia-safe"
+version = "0.72.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "f0a4a3df502b317456a34df181ac67a7a6443b0f2e4b883ac220dba1dcb3ce38"
+dependencies = [
+ "bitflags 2.5.0",
+ "lazy_static",
+ "skia-bindings",
+ "windows 0.54.0",
+]
+
+[[package]]
 name = "slab"
 version = "0.4.9"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -3183,6 +3758,44 @@ dependencies = [
 ]
 
 [[package]]
+name = "slint"
+version = "1.6.0"
+source = "git+https://github.com/slint-ui/slint.git#65160638a1c36cf8ee19047554f7bb4384c69ddf"
+dependencies = [
+ "const-field-offset",
+ "i-slint-backend-selector",
+ "i-slint-core",
+ "i-slint-renderer-femtovg",
+ "num-traits",
+ "once_cell",
+ "pin-weak",
+ "slint-macros",
+ "vtable",
+]
+
+[[package]]
+name = "slint-build"
+version = "1.6.0"
+source = "git+https://github.com/slint-ui/slint.git#65160638a1c36cf8ee19047554f7bb4384c69ddf"
+dependencies = [
+ "i-slint-compiler",
+ "spin_on",
+ "thiserror",
+ "toml_edit 0.22.12",
+]
+
+[[package]]
+name = "slint-macros"
+version = "1.6.0"
+source = "git+https://github.com/slint-ui/slint.git#65160638a1c36cf8ee19047554f7bb4384c69ddf"
+dependencies = [
+ "i-slint-compiler",
+ "proc-macro2",
+ "quote",
+ "spin_on",
+]
+
+[[package]]
 name = "slotmap"
 version = "1.0.7"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -3193,37 +3806,44 @@ dependencies = [
 
 [[package]]
 name = "smallvec"
-version = "1.13.1"
+version = "1.13.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e6ecd384b10a64542d77071bd64bd7b231f4ed5940fba55e98c3de13824cf3d7"
+checksum = "3c5e1a9a646d36c3599cd173a41282daf47c44583ad367b8e6837255952e5c67"
 
 [[package]]
 name = "smithay-client-toolkit"
-version = "0.16.1"
+version = "0.18.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "870427e30b8f2cbe64bf43ec4b86e88fe39b0a84b3f15efd9c9c2d020bc86eb9"
+checksum = "922fd3eeab3bd820d76537ce8f582b1cf951eceb5475c28500c7457d9d17f53a"
 dependencies = [
- "bitflags 1.3.2",
+ "bitflags 2.5.0",
  "calloop",
- "dlib",
- "lazy_static",
+ "calloop-wayland-source",
+ "cursor-icon",
+ "libc",
  "log",
- "memmap2",
- "nix 0.24.3",
- "pkg-config",
+ "memmap2 0.9.4",
+ "rustix 0.38.34",
+ "thiserror",
+ "wayland-backend",
  "wayland-client",
+ "wayland-csd-frame",
  "wayland-cursor",
  "wayland-protocols",
+ "wayland-protocols-wlr",
+ "wayland-scanner",
+ "xkeysym",
 ]
 
 [[package]]
 name = "smithay-clipboard"
-version = "0.6.6"
+version = "0.7.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0a345c870a1fae0b1b779085e81b51e614767c239e93503588e54c5b17f4b0e8"
+checksum = "c091e7354ea8059d6ad99eace06dd13ddeedbb0ac72d40a9a6e7ff790525882d"
 dependencies = [
+ "libc",
  "smithay-client-toolkit",
- "wayland-client",
+ "wayland-backend",
 ]
 
 [[package]]
@@ -3234,16 +3854,25 @@ checksum = "13f2b548cd8447f8de0fdf1c592929f70f4fc7039a05e47404b0d096ec6987a1"
 dependencies = [
  "async-channel 1.9.0",
  "async-executor",
- "async-fs",
+ "async-fs 1.6.0",
  "async-io 1.13.0",
  "async-lock 2.8.0",
  "async-net",
- "async-process",
+ "async-process 1.8.1",
  "blocking",
  "futures-lite 1.13.0",
 ]
 
 [[package]]
+name = "smol_str"
+version = "0.2.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "e6845563ada680337a52d43bb0b29f396f2d911616f6573012645b9e3d048a49"
+dependencies = [
+ "serde",
+]
+
+[[package]]
 name = "socket2"
 version = "0.4.10"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -3255,36 +3884,106 @@ dependencies = [
 
 [[package]]
 name = "socket2"
-version = "0.5.5"
+version = "0.5.7"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7b5fac59a5cb5dd637972e5fca70daf0523c9067fcdc4842f053dae04a18f8e9"
+checksum = "ce305eb0b4296696835b71df73eb912e0f1ffd2556a501fcede6e0c50349191c"
 dependencies = [
  "libc",
+ "windows-sys 0.52.0",
+]
+
+[[package]]
+name = "softbuffer"
+version = "0.3.4"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "f266ce2aa23eaaaa4e758ed44495d505d00fb79f359d46f6c1900cb053123b62"
+dependencies = [
+ "bytemuck",
+ "cfg_aliases 0.1.1",
+ "cocoa",
+ "core-graphics",
+ "fastrand 2.1.0",
+ "foreign-types",
+ "js-sys",
+ "log",
+ "memmap2 0.9.4",
+ "objc",
+ "raw-window-handle 0.5.2",
+ "redox_syscall 0.4.1",
+ "rustix 0.38.34",
+ "wasm-bindgen",
+ "wayland-backend",
+ "wayland-client",
+ "wayland-sys",
+ "web-sys",
  "windows-sys 0.48.0",
 ]
 
 [[package]]
-name = "static_assertions"
-version = "1.1.0"
+name = "spin"
+version = "0.9.8"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a2eb9349b6444b326872e140eb1cf5e7c522154d69e7a0ffb0fb81c06b37543f"
+checksum = "6980e8d7511241f8acf4aebddbb1ff938df5eebe98691418c4468d0b72a96a67"
+dependencies = [
+ "lock_api",
+]
 
 [[package]]
-name = "str-buf"
-version = "1.0.6"
+name = "spin_on"
+version = "0.1.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9e08d8363704e6c71fc928674353e6b7c23dcea9d82d7012c8faf2a3a025f8d0"
+checksum = "076e103ed41b9864aa838287efe5f4e3a7a0362dd00671ae62a212e5e4612da2"
+dependencies = [
+ "pin-utils",
+]
+
+[[package]]
+name = "stable_deref_trait"
+version = "1.2.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "a8f112729512f8e442d81f95a8a7ddf2b7c6b8a1a6f509a95864142b30cab2d3"
+
+[[package]]
+name = "static_assertions"
+version = "1.1.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "a2eb9349b6444b326872e140eb1cf5e7c522154d69e7a0ffb0fb81c06b37543f"
 
 [[package]]
 name = "strict-num"
 version = "0.1.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "6637bab7722d379c8b41ba849228d680cc12d0a45ba1fa2b48f2a30577a06731"
+dependencies = [
+ "float-cmp",
+]
+
+[[package]]
+name = "strum"
+version = "0.26.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "5d8cec3501a5194c432b2b7976db6b7d10ec95c253208b45f83f7136aa985e29"
+dependencies = [
+ "strum_macros",
+]
+
+[[package]]
+name = "strum_macros"
+version = "0.26.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "c6cf59daf282c0a494ba14fd21610a0325f9f90ec9d1231dea26bcb1d696c946"
+dependencies = [
+ "heck",
+ "proc-macro2",
+ "quote",
+ "rustversion",
+ "syn 2.0.61",
+]
 
 [[package]]
 name = "supergfxctl"
-version = "5.1.2"
-source = "git+https://gitlab.com/asus-linux/supergfxctl.git#a54163c4ced0f58dbbc134392d8a2118ee6c5c64"
+version = "5.2.2"
+source = "git+https://gitlab.com/asus-linux/supergfxctl.git?rev=4eb6e97c22b68ae8d1e80500709b0c0580776ad3#4eb6e97c22b68ae8d1e80500709b0c0580776ad3"
 dependencies = [
  "log",
  "logind-zbus",
@@ -3292,11 +3991,21 @@ dependencies = [
  "serde_derive",
  "serde_json",
  "tokio",
- "udev",
+ "udev 0.8.0",
  "zbus",
 ]
 
 [[package]]
+name = "svgtypes"
+version = "0.15.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "fae3064df9b89391c9a76a0425a69d124aee9c5c28455204709e72c39868a43c"
+dependencies = [
+ "kurbo",
+ "siphasher",
+]
+
+[[package]]
 name = "syn"
 version = "1.0.109"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -3309,9 +4018,9 @@ dependencies = [
 
 [[package]]
 name = "syn"
-version = "2.0.48"
+version = "2.0.61"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0f3531638e407dfc0814761abb7c00a5b54992b849452a0646b7f65c9f770f3f"
+checksum = "c993ed8ccba56ae856363b1845da7266a7cb78e1d146c8a32d54b45a8b831fc9"
 dependencies = [
  "proc-macro2",
  "quote",
@@ -3319,54 +4028,41 @@ dependencies = [
 ]
 
 [[package]]
-name = "system-deps"
-version = "6.2.0"
+name = "tar"
+version = "0.4.40"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2a2d580ff6a20c55dfb86be5f9c238f67835d0e81cbdea8bf5680e0897320331"
+checksum = "b16afcea1f22891c49a00c751c7b63b2233284064f11a200fc624137c51e2ddb"
 dependencies = [
- "cfg-expr",
- "heck",
- "pkg-config",
- "toml 0.8.8",
- "version-compare",
-]
-
-[[package]]
-name = "systemd-zbus"
-version = "0.1.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ffbb1b6ea6d96b14a7e94532711efc4106337fe8b1d6bdf8ba5318012a9fa7e3"
-dependencies = [
- "serde",
- "zbus",
+ "filetime",
+ "libc",
+ "xattr",
 ]
 
 [[package]]
-name = "target-lexicon"
-version = "0.12.13"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "69758bda2e78f098e4ccb393021a0963bb3442eac05f135c30f61b7370bbafae"
-
-[[package]]
 name = "tauri-winrt-notification"
 version = "0.1.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "006851c9ccefa3c38a7646b8cec804bb429def3da10497bfa977179869c3e8e2"
 dependencies = [
- "quick-xml",
+ "quick-xml 0.30.0",
  "windows 0.51.1",
 ]
 
 [[package]]
+name = "temp-dir"
+version = "0.1.13"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "1f227968ec00f0e5322f9b8173c7a0cbcff6181a0a5b28e9892491c286277231"
+
+[[package]]
 name = "tempfile"
-version = "3.9.0"
+version = "3.10.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "01ce4141aa927a6d1bd34a041795abd0db1cccba5d5f24b009f694bdf3a1f3fa"
+checksum = "85b77fafb263dd9d05cbeac119526425676db3784113aa9295c88498cbf8bff1"
 dependencies = [
  "cfg-if",
- "fastrand 2.0.1",
- "redox_syscall 0.4.1",
- "rustix 0.38.30",
+ "fastrand 2.1.0",
+ "rustix 0.38.34",
  "windows-sys 0.52.0",
 ]
 
@@ -3380,32 +4076,50 @@ dependencies = [
 ]
 
 [[package]]
+name = "text-size"
+version = "1.1.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "f18aa187839b2bdb1ad2fa35ead8c4c2976b64e4363c386d45ac0f7ee85c9233"
+
+[[package]]
 name = "thiserror"
-version = "1.0.56"
+version = "1.0.60"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d54378c645627613241d077a3a79db965db602882668f9136ac42af9ecb730ad"
+checksum = "579e9083ca58dd9dcf91a9923bb9054071b9ebbd800b342194c9feb0ee89fc18"
 dependencies = [
  "thiserror-impl",
 ]
 
 [[package]]
 name = "thiserror-impl"
-version = "1.0.56"
+version = "1.0.60"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "fa0faa943b50f3db30a20aa7e265dbc66076993efed8463e8de414e5d06d3471"
+checksum = "e2470041c06ec3ac1ab38d0356a6119054dedaea53e12fbefc0de730a1c08524"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.48",
+ "syn 2.0.61",
+]
+
+[[package]]
+name = "tiff"
+version = "0.9.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "ba1310fcea54c6a9a4fd1aad794ecc02c31682f6bfbecdf460bf19533eed1e3e"
+dependencies = [
+ "flate2",
+ "jpeg-decoder",
+ "weezl",
 ]
 
 [[package]]
 name = "time"
-version = "0.3.31"
+version = "0.3.36"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f657ba42c3f86e7680e53c8cd3af8abbe56b5491790b46e22e19c0d57463583e"
+checksum = "5dfd88e563464686c916c7e46e623e520ddc6d79fa6641390f2e3fa86e83e885"
 dependencies = [
  "deranged",
+ "num-conv",
  "powerfmt",
  "serde",
  "time-core",
@@ -3419,23 +4133,24 @@ checksum = "ef927ca75afb808a4d64dd374f00a2adf8d0fcff8e7b184af886c3c87ec4a3f3"
 
 [[package]]
 name = "tiny-skia"
-version = "0.8.4"
+version = "0.11.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "df8493a203431061e901613751931f047d1971337153f96d0e5e363d6dbf6a67"
+checksum = "83d13394d44dae3207b52a326c0c85a8bf87f1541f23b0d143811088497b09ab"
 dependencies = [
  "arrayref",
  "arrayvec",
  "bytemuck",
  "cfg-if",
+ "log",
  "png",
  "tiny-skia-path",
 ]
 
 [[package]]
 name = "tiny-skia-path"
-version = "0.8.4"
+version = "0.11.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "adbfb5d3f3dd57a0e11d12f4f13d4ebbbc1b5c15b7ab0a156d030b21da5f677c"
+checksum = "9c9e7fc0c2e86a30b117d0462aa261b72b7a99b7ebd7deb3a14ceda95c5bdc93"
 dependencies = [
  "arrayref",
  "bytemuck",
@@ -3443,15 +4158,6 @@ dependencies = [
 ]
 
 [[package]]
-name = "tinybmp"
-version = "0.4.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0e959c507975d768a226a08227d56791f6e60bddcf714ad7ef67ae2d20bae743"
-dependencies = [
- "embedded-graphics",
-]
-
-[[package]]
 name = "tinyvec"
 version = "1.6.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -3468,16 +4174,16 @@ checksum = "1f3ccbac311fea05f86f61904b462b55fb3df8837a366dfc601a0161d0532f20"
 
 [[package]]
 name = "tokio"
-version = "1.35.1"
+version = "1.37.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c89b4efa943be685f629b149f53829423f8f5531ea21249408e8e2f8671ec104"
+checksum = "1adbebffeca75fcfd058afa480fb6c0b81e165a0323f9c9d39c9697e37c46787"
 dependencies = [
  "backtrace",
  "libc",
  "mio",
  "num_cpus",
  "pin-project-lite",
- "socket2 0.5.5",
+ "socket2 0.5.7",
  "tokio-macros",
  "windows-sys 0.48.0",
 ]
@@ -3490,28 +4196,19 @@ checksum = "5b8a1e28f2deaa14e508979454cb3a223b10b938b45af148bc0986de36f1923b"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.48",
+ "syn 2.0.61",
 ]
 
 [[package]]
 name = "toml"
-version = "0.5.11"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f4f7f0dd8d50a853a531c426359045b1998f04219d88799810762cd4ad314234"
-dependencies = [
- "serde",
-]
-
-[[package]]
-name = "toml"
-version = "0.8.8"
+version = "0.8.12"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a1a195ec8c9da26928f773888e0742ca3ca1040c6cd859c919c9f59c1954ab35"
+checksum = "e9dd1545e8208b4a5af1aa9bbd0b4cf7e9ea08fabc5d0a5c67fcaafa17433aa3"
 dependencies = [
  "serde",
  "serde_spanned",
  "toml_datetime",
- "toml_edit 0.21.0",
+ "toml_edit 0.22.12",
 ]
 
 [[package]]
@@ -3525,26 +4222,26 @@ dependencies = [
 
 [[package]]
 name = "toml_edit"
-version = "0.19.15"
+version = "0.21.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1b5bb770da30e5cbfde35a2d7b9b8a2c4b8ef89548a7a6aeab5c9a576e3e7421"
+checksum = "6a8534fd7f78b5405e860340ad6575217ce99f38d4d5c8f2442cb5ecb50090e1"
 dependencies = [
  "indexmap",
  "toml_datetime",
- "winnow",
+ "winnow 0.5.40",
 ]
 
 [[package]]
 name = "toml_edit"
-version = "0.21.0"
+version = "0.22.12"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d34d383cd00a163b4a5b85053df514d45bc330f6de7737edfe0a93311d1eaa03"
+checksum = "d3328d4f68a705b2a4498da1d580585d39a6510f98318a2cec3018a7ec61ddef"
 dependencies = [
  "indexmap",
  "serde",
  "serde_spanned",
  "toml_datetime",
- "winnow",
+ "winnow 0.6.8",
 ]
 
 [[package]]
@@ -3566,7 +4263,7 @@ checksum = "34704c8d6ebcbc939824180af020566b01a7c01f80641264eba0999f6c2b6be7"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.48",
+ "syn 2.0.61",
 ]
 
 [[package]]
@@ -3592,9 +4289,9 @@ checksum = "42ff0bf0c66b8238c6f3b578df37d0b7848e55df8577b3f74f92a69acceeb825"
 
 [[package]]
 name = "typeshare"
-version = "1.0.1"
+version = "1.0.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f44d1a2f454cb35fbe05b218c410792697e76bd868f48d3a418f2cd1a7d527d6"
+checksum = "04f17399b76c2e743d58eac0635d7686e9c00f48cd4776f00695d9882a7d3187"
 dependencies = [
  "chrono",
  "serde",
@@ -3604,12 +4301,12 @@ dependencies = [
 
 [[package]]
 name = "typeshare-annotation"
-version = "1.0.2"
+version = "1.0.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "fc670d0e358428857cc3b4bf504c691e572fccaec9542ff09212d3f13d74b7a9"
+checksum = "a615d6c2764852a2e88a4f16e9ce1ea49bb776b5872956309e170d63a042a34f"
 dependencies = [
  "quote",
- "syn 1.0.109",
+ "syn 2.0.61",
 ]
 
 [[package]]
@@ -3624,21 +4321,34 @@ dependencies = [
 ]
 
 [[package]]
+name = "udev"
+version = "0.8.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "50051c6e22be28ee6f217d50014f3bc29e81c20dc66ff7ca0d5c5226e1dcc5a1"
+dependencies = [
+ "io-lifetimes",
+ "libc",
+ "libudev-sys",
+ "mio",
+ "pkg-config",
+]
+
+[[package]]
 name = "uds_windows"
 version = "1.1.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "89daebc3e6fd160ac4aa9fc8b3bf71e1f74fbf92367ae71fb83a037e8bf164b9"
 dependencies = [
- "memoffset 0.9.0",
+ "memoffset",
  "tempfile",
  "winapi",
 ]
 
 [[package]]
 name = "uhid-virt"
-version = "0.0.6"
+version = "0.0.7"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4f16e165f87ad3df8660688cb786c7ea0af76ff15037f8a0da3756bef8459499"
+checksum = "4f70f1f603b96df07624cdd31be4496a983a3f7f079cf2606aa289719114249f"
 dependencies = [
  "enumflags2",
  "libc",
@@ -3661,21 +4371,63 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "08f95100a766bf4f8f28f90d77e0a5461bbdb219042e7679bebe79004fed8d75"
 
 [[package]]
+name = "unicode-bidi-mirroring"
+version = "0.2.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "23cb788ffebc92c5948d0e997106233eeb1d8b9512f93f41651f52b6c5f5af86"
+
+[[package]]
+name = "unicode-ccc"
+version = "0.2.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "1df77b101bcc4ea3d78dafc5ad7e4f58ceffe0b2b16bf446aeb50b6cb4157656"
+
+[[package]]
 name = "unicode-ident"
 version = "1.0.12"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "3354b9ac3fae1ff6755cb6db53683adb661634f67557942dea4facebec0fee4b"
 
 [[package]]
+name = "unicode-linebreak"
+version = "0.1.5"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "3b09c83c3c29d37506a3e260c08c03743a6bb66a9cd432c6934ab501a190571f"
+
+[[package]]
 name = "unicode-normalization"
-version = "0.1.22"
+version = "0.1.23"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5c5713f0fc4b5db668a2ac63cdb7bb4469d8c9fed047b1d0292cc7b0ce2ba921"
+checksum = "a56d1686db2308d901306f92a263857ef59ea39678a5458e7cb17f01415101f5"
 dependencies = [
  "tinyvec",
 ]
 
 [[package]]
+name = "unicode-properties"
+version = "0.1.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "e4259d9d4425d9f0661581b804cb85fe66a4c631cadd8f490d1c13a35d5d9291"
+
+[[package]]
+name = "unicode-script"
+version = "0.5.6"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "ad8d71f5726e5f285a935e9fe8edfd53f0491eb6e9a5774097fdabee7cd8c9cd"
+
+[[package]]
+name = "unicode-segmentation"
+version = "1.11.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "d4c87d22b6e3f4a18d4d40ef354e97c90fcb14dd91d7dc0aa9d8a1172ebf7202"
+
+[[package]]
+name = "unicode-vo"
+version = "0.1.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "b1d386ff53b415b7fe27b50bb44679e2cc4660272694b7b6f3326d8480823a94"
+
+[[package]]
 name = "url"
 version = "2.5.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -3687,16 +4439,37 @@ dependencies = [
 ]
 
 [[package]]
-name = "vcpkg"
-version = "0.2.15"
+name = "usvg"
+version = "0.41.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "accd4ea62f7bb7a82fe23066fb0957d48ef677f6eeb8215f372f52e48bb32426"
+checksum = "5c704361d822337cfc00387672c7b59eaa72a1f0744f62b2a68aa228a0c6927d"
+dependencies = [
+ "base64 0.22.1",
+ "data-url",
+ "flate2",
+ "fontdb",
+ "imagesize",
+ "kurbo",
+ "log",
+ "pico-args",
+ "roxmltree",
+ "rustybuzz",
+ "simplecss",
+ "siphasher",
+ "strict-num",
+ "svgtypes",
+ "tiny-skia-path",
+ "unicode-bidi",
+ "unicode-script",
+ "unicode-vo",
+ "xmlwriter",
+]
 
 [[package]]
-name = "vec_map"
-version = "0.8.2"
+name = "vcpkg"
+version = "0.2.15"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f1bddf1187be692e79c5ffeab891132dfb0f236ed36a43c7ed39f1165ee20191"
+checksum = "accd4ea62f7bb7a82fe23066fb0957d48ef677f6eeb8215f372f52e48bb32426"
 
 [[package]]
 name = "version-compare"
@@ -3712,15 +4485,36 @@ checksum = "49874b5167b65d7193b8aba1567f5c7d93d001cafc34600cee003eda787e483f"
 
 [[package]]
 name = "versions"
-version = "4.1.0"
+version = "6.2.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ee97e1d97bd593fb513912a07691b742361b3dd64ad56f2c694ea2dbfe0665d3"
+checksum = "38a8931f8d167b6448076020e70b9de46dcf5ea1731212481a092d0071c4ac5b"
 dependencies = [
  "itertools",
  "nom",
 ]
 
 [[package]]
+name = "vtable"
+version = "0.2.0"
+source = "git+https://github.com/slint-ui/slint.git#65160638a1c36cf8ee19047554f7bb4384c69ddf"
+dependencies = [
+ "const-field-offset",
+ "portable-atomic",
+ "stable_deref_trait",
+ "vtable-macro",
+]
+
+[[package]]
+name = "vtable-macro"
+version = "0.2.0"
+source = "git+https://github.com/slint-ui/slint.git#65160638a1c36cf8ee19047554f7bb4384c69ddf"
+dependencies = [
+ "proc-macro2",
+ "quote",
+ "syn 2.0.61",
+]
+
+[[package]]
 name = "waker-fn"
 version = "1.1.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -3728,9 +4522,9 @@ checksum = "f3c4517f54858c779bbcbf228f4fca63d121bf85fbecb2dc578cdf4a39395690"
 
 [[package]]
 name = "walkdir"
-version = "2.4.0"
+version = "2.5.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d71d857dc86794ca4c280d616f7da00d2dbfd8cd788846559a6813e6aa4b54ee"
+checksum = "29790946404f91d9c5d06f9874efddea1dc06c5efe94541a7d6863108e3a5e4b"
 dependencies = [
  "same-file",
  "winapi-util",
@@ -3744,9 +4538,9 @@ checksum = "9c8d87e72b64a3b4db28d11ce29237c246188f4f51057d65a7eab63b7987e423"
 
 [[package]]
 name = "wasm-bindgen"
-version = "0.2.84"
+version = "0.2.92"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "31f8dcbc21f30d9b8f2ea926ecb58f6b91192c17e9d33594b3df58b2007ca53b"
+checksum = "4be2531df63900aeb2bca0daaaddec08491ee64ceecbee5076636a3b026795a8"
 dependencies = [
  "cfg-if",
  "wasm-bindgen-macro",
@@ -3754,24 +4548,24 @@ dependencies = [
 
 [[package]]
 name = "wasm-bindgen-backend"
-version = "0.2.84"
+version = "0.2.92"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "95ce90fd5bcc06af55a641a86428ee4229e44e07033963a2290a8e241607ccb9"
+checksum = "614d787b966d3989fa7bb98a654e369c762374fd3213d212cfc0251257e747da"
 dependencies = [
  "bumpalo",
  "log",
  "once_cell",
  "proc-macro2",
  "quote",
- "syn 1.0.109",
+ "syn 2.0.61",
  "wasm-bindgen-shared",
 ]
 
 [[package]]
 name = "wasm-bindgen-futures"
-version = "0.4.34"
+version = "0.4.42"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f219e0d211ba40266969f6dbdd90636da12f75bee4fc9d6c23d1260dadb51454"
+checksum = "76bc14366121efc8dbb487ab05bcc9d346b3b5ec0eaa76e46594cabbe51762c0"
 dependencies = [
  "cfg-if",
  "js-sys",
@@ -3781,9 +4575,9 @@ dependencies = [
 
 [[package]]
 name = "wasm-bindgen-macro"
-version = "0.2.84"
+version = "0.2.92"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4c21f77c0bedc37fd5dc21f897894a5ca01e7bb159884559461862ae90c0b4c5"
+checksum = "a1f8823de937b71b9460c0c34e25f3da88250760bec0ebac694b49997550d726"
 dependencies = [
  "quote",
  "wasm-bindgen-macro-support",
@@ -3791,140 +4585,179 @@ dependencies = [
 
 [[package]]
 name = "wasm-bindgen-macro-support"
-version = "0.2.84"
+version = "0.2.92"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2aff81306fcac3c7515ad4e177f521b5c9a15f2b08f4e32d823066102f35a5f6"
+checksum = "e94f17b526d0a461a191c78ea52bbce64071ed5c04c9ffe424dcb38f74171bb7"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 1.0.109",
+ "syn 2.0.61",
  "wasm-bindgen-backend",
  "wasm-bindgen-shared",
 ]
 
 [[package]]
 name = "wasm-bindgen-shared"
-version = "0.2.84"
+version = "0.2.92"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0046fef7e28c3804e5e38bfa31ea2a0f73905319b677e57ebe37e49358989b5d"
+checksum = "af190c94f2773fdb3729c55b007a722abb5384da03bc0986df4c289bf5567e96"
 
 [[package]]
-name = "wayland-client"
-version = "0.29.5"
+name = "wayland-backend"
+version = "0.3.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3f3b068c05a039c9f755f881dc50f01732214f5685e379829759088967c46715"
+checksum = "9d50fa61ce90d76474c87f5fc002828d81b32677340112b4ef08079a9d459a40"
 dependencies = [
- "bitflags 1.3.2",
+ "cc",
  "downcast-rs",
- "libc",
- "nix 0.24.3",
+ "rustix 0.38.34",
  "scoped-tls",
- "wayland-commons",
+ "smallvec",
+ "wayland-sys",
+]
+
+[[package]]
+name = "wayland-client"
+version = "0.31.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "82fb96ee935c2cea6668ccb470fb7771f6215d1691746c2d896b447a00ad3f1f"
+dependencies = [
+ "bitflags 2.5.0",
+ "rustix 0.38.34",
+ "wayland-backend",
  "wayland-scanner",
- "wayland-sys 0.29.5",
 ]
 
 [[package]]
-name = "wayland-commons"
-version = "0.29.5"
+name = "wayland-csd-frame"
+version = "0.3.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8691f134d584a33a6606d9d717b95c4fa20065605f798a3f350d78dced02a902"
+checksum = "625c5029dbd43d25e6aa9615e88b829a5cad13b2819c4ae129fdbb7c31ab4c7e"
 dependencies = [
- "nix 0.24.3",
- "once_cell",
- "smallvec",
- "wayland-sys 0.29.5",
+ "bitflags 2.5.0",
+ "cursor-icon",
+ "wayland-backend",
 ]
 
 [[package]]
 name = "wayland-cursor"
-version = "0.29.5"
+version = "0.31.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6865c6b66f13d6257bef1cd40cbfe8ef2f150fb8ebbdb1e8e873455931377661"
+checksum = "71ce5fa868dd13d11a0d04c5e2e65726d0897be8de247c0c5a65886e283231ba"
 dependencies = [
- "nix 0.24.3",
+ "rustix 0.38.34",
  "wayland-client",
  "xcursor",
 ]
 
 [[package]]
 name = "wayland-protocols"
-version = "0.29.5"
+version = "0.31.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b950621f9354b322ee817a23474e479b34be96c2e909c14f7bc0100e9a970bc6"
+checksum = "8f81f365b8b4a97f422ac0e8737c438024b5951734506b0e1d775c73030561f4"
 dependencies = [
- "bitflags 1.3.2",
+ "bitflags 2.5.0",
+ "wayland-backend",
  "wayland-client",
- "wayland-commons",
+ "wayland-scanner",
+]
+
+[[package]]
+name = "wayland-protocols-plasma"
+version = "0.2.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "23803551115ff9ea9bce586860c5c5a971e360825a0309264102a9495a5ff479"
+dependencies = [
+ "bitflags 2.5.0",
+ "wayland-backend",
+ "wayland-client",
+ "wayland-protocols",
+ "wayland-scanner",
+]
+
+[[package]]
+name = "wayland-protocols-wlr"
+version = "0.2.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "ad1f61b76b6c2d8742e10f9ba5c3737f6530b4c243132c2a2ccc8aa96fe25cd6"
+dependencies = [
+ "bitflags 2.5.0",
+ "wayland-backend",
+ "wayland-client",
+ "wayland-protocols",
  "wayland-scanner",
 ]
 
 [[package]]
 name = "wayland-scanner"
-version = "0.29.5"
+version = "0.31.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8f4303d8fa22ab852f789e75a967f0a2cdc430a607751c0499bada3e451cbd53"
+checksum = "63b3a62929287001986fb58c789dce9b67604a397c15c611ad9f747300b6c283"
 dependencies = [
  "proc-macro2",
+ "quick-xml 0.31.0",
  "quote",
- "xml-rs",
 ]
 
 [[package]]
 name = "wayland-sys"
-version = "0.29.5"
+version = "0.31.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "be12ce1a3c39ec7dba25594b97b42cb3195d54953ddb9d3d95a7c3902bc6e9d4"
+checksum = "15a0c8eaff5216d07f226cb7a549159267f3467b289d9a2e52fd3ef5aae2b7af"
 dependencies = [
  "dlib",
- "lazy_static",
+ "log",
+ "once_cell",
  "pkg-config",
 ]
 
 [[package]]
-name = "wayland-sys"
-version = "0.30.1"
+name = "web-sys"
+version = "0.3.69"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "96b2a02ac608e07132978689a6f9bf4214949c85998c247abadd4f4129b1aa06"
+checksum = "77afa9a11836342370f4817622a2f0f418b134426d91a82dfb48f532d2ec13ef"
 dependencies = [
- "dlib",
- "lazy_static",
- "log",
- "pkg-config",
+ "js-sys",
+ "wasm-bindgen",
 ]
 
 [[package]]
-name = "web-sys"
-version = "0.3.61"
+name = "web-time"
+version = "0.2.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e33b99f4b23ba3eec1a53ac264e35a755f00e966e0065077d6027c0f575b0b97"
+checksum = "aa30049b1c872b72c89866d458eae9f20380ab280ffd1b1e18df2d3e2d98cfe0"
 dependencies = [
  "js-sys",
  "wasm-bindgen",
 ]
 
 [[package]]
-name = "webbrowser"
-version = "0.8.12"
+name = "web-time"
+version = "1.1.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "82b2391658b02c27719fc5a0a73d6e696285138e8b12fba9d4baa70451023c71"
+checksum = "5a6580f308b1fad9207618087a65c04e7a10bc77e02c8e84e9b00dd4b12fa0bb"
 dependencies = [
- "core-foundation",
- "home",
- "jni",
- "log",
- "ndk-context",
- "objc",
- "raw-window-handle",
- "url",
- "web-sys",
+ "js-sys",
+ "wasm-bindgen",
 ]
 
 [[package]]
 name = "weezl"
-version = "0.1.7"
+version = "0.1.8"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9193164d4de03a926d909d3bc7c30543cecb35400c02114792c2cae20d5e2dbb"
+checksum = "53a85b86a771b1c87058196170769dd264f66c0782acf1ae6cc51bfd64b39082"
+
+[[package]]
+name = "which"
+version = "4.4.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "87ba24419a2078cd2b0f2ede2691b6c66d8e47836da3b6db8265ebad47afbfc7"
+dependencies = [
+ "either",
+ "home",
+ "once_cell",
+ "rustix 0.38.34",
+]
 
 [[package]]
 name = "winapi"
@@ -3944,20 +4777,11 @@ checksum = "ac3b87c63620426dd9b991e5ce0329eff545bccbbb34f3be09ff6fb6ab51b7b6"
 
 [[package]]
 name = "winapi-util"
-version = "0.1.6"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f29e6f9198ba0d26b4c9f07dbe6f9ed633e1f3d5b8b414090084349e46a52596"
-dependencies = [
- "winapi",
-]
-
-[[package]]
-name = "winapi-wsapoll"
-version = "0.1.1"
+version = "0.1.8"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "44c17110f57155602a80dca10be03852116403c9ff3cd25b079d666f2aa3df6e"
+checksum = "4d4cc384e1e73b93bafa6fb4f1df8c41695c8a91cf9c4c64358067d15a7b6c6b"
 dependencies = [
- "winapi",
+ "windows-sys 0.52.0",
 ]
 
 [[package]]
@@ -3968,23 +4792,32 @@ checksum = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f"
 
 [[package]]
 name = "windows"
-version = "0.44.0"
+version = "0.51.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9e745dab35a0c4c77aa3ce42d595e13d2003d6902d6b08c9ef5fc326d08da12b"
+checksum = "ca229916c5ee38c2f2bc1e9d8f04df975b4bd93f9955dc69fabb5d91270045c9"
 dependencies = [
- "windows-implement",
- "windows-interface",
- "windows-targets 0.42.2",
+ "windows-core 0.51.1",
+ "windows-targets 0.48.5",
 ]
 
 [[package]]
 name = "windows"
-version = "0.51.1"
+version = "0.54.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ca229916c5ee38c2f2bc1e9d8f04df975b4bd93f9955dc69fabb5d91270045c9"
+checksum = "9252e5725dbed82865af151df558e754e4a3c2c30818359eb17465f1346a1b49"
 dependencies = [
- "windows-core 0.51.1",
- "windows-targets 0.48.5",
+ "windows-core 0.54.0",
+ "windows-targets 0.52.5",
+]
+
+[[package]]
+name = "windows"
+version = "0.56.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "1de69df01bdf1ead2f4ac895dc77c9351aefff65b2f3db429a343f9cbf05e132"
+dependencies = [
+ "windows-core 0.56.0",
+ "windows-targets 0.52.5",
 ]
 
 [[package]]
@@ -4002,29 +4835,60 @@ version = "0.52.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "33ab640c8d7e35bf8ba19b884ba838ceb4fba93a4e8c65a9059d08afcfc683d9"
 dependencies = [
- "windows-targets 0.52.0",
+ "windows-targets 0.52.5",
+]
+
+[[package]]
+name = "windows-core"
+version = "0.54.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "12661b9c89351d684a50a8a643ce5f608e20243b9fb84687800163429f161d65"
+dependencies = [
+ "windows-result",
+ "windows-targets 0.52.5",
+]
+
+[[package]]
+name = "windows-core"
+version = "0.56.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "4698e52ed2d08f8658ab0c39512a7c00ee5fe2688c65f8c0a4f06750d729f2a6"
+dependencies = [
+ "windows-implement",
+ "windows-interface",
+ "windows-result",
+ "windows-targets 0.52.5",
 ]
 
 [[package]]
 name = "windows-implement"
-version = "0.44.0"
+version = "0.56.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6ce87ca8e3417b02dc2a8a22769306658670ec92d78f1bd420d6310a67c245c6"
+checksum = "f6fc35f58ecd95a9b71c4f2329b911016e6bec66b3f2e6a4aad86bd2e99e2f9b"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 1.0.109",
+ "syn 2.0.61",
 ]
 
 [[package]]
 name = "windows-interface"
-version = "0.44.0"
+version = "0.56.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "853f69a591ecd4f810d29f17e902d40e349fb05b0b11fff63b08b826bfe39c7f"
+checksum = "08990546bf4edef8f431fa6326e032865f27138718c587dc21bc0265bbcb57cc"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 1.0.109",
+ "syn 2.0.61",
+]
+
+[[package]]
+name = "windows-result"
+version = "0.1.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "749f0da9cc72d82e600d8d2e44cadd0b9eedb9038f71a1c58556ac1c5791813b"
+dependencies = [
+ "windows-targets 0.52.5",
 ]
 
 [[package]]
@@ -4051,7 +4915,7 @@ version = "0.52.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "282be5f36a8ce781fad8c8ae18fa3f9beff57ec1b52cb3de0789201425d9a33d"
 dependencies = [
- "windows-targets 0.52.0",
+ "windows-targets 0.52.5",
 ]
 
 [[package]]
@@ -4086,17 +4950,18 @@ dependencies = [
 
 [[package]]
 name = "windows-targets"
-version = "0.52.0"
+version = "0.52.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8a18201040b24831fbb9e4eb208f8892e1f50a37feb53cc7ff887feb8f50e7cd"
+checksum = "6f0713a46559409d202e70e28227288446bf7841d3211583a4b53e3f6d96e7eb"
 dependencies = [
- "windows_aarch64_gnullvm 0.52.0",
- "windows_aarch64_msvc 0.52.0",
- "windows_i686_gnu 0.52.0",
- "windows_i686_msvc 0.52.0",
- "windows_x86_64_gnu 0.52.0",
- "windows_x86_64_gnullvm 0.52.0",
- "windows_x86_64_msvc 0.52.0",
+ "windows_aarch64_gnullvm 0.52.5",
+ "windows_aarch64_msvc 0.52.5",
+ "windows_i686_gnu 0.52.5",
+ "windows_i686_gnullvm",
+ "windows_i686_msvc 0.52.5",
+ "windows_x86_64_gnu 0.52.5",
+ "windows_x86_64_gnullvm 0.52.5",
+ "windows_x86_64_msvc 0.52.5",
 ]
 
 [[package]]
@@ -4113,9 +4978,9 @@ checksum = "2b38e32f0abccf9987a4e3079dfb67dcd799fb61361e53e2882c3cbaf0d905d8"
 
 [[package]]
 name = "windows_aarch64_gnullvm"
-version = "0.52.0"
+version = "0.52.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "cb7764e35d4db8a7921e09562a0304bf2f93e0a51bfccee0bd0bb0b666b015ea"
+checksum = "7088eed71e8b8dda258ecc8bac5fb1153c5cffaf2578fc8ff5d61e23578d3263"
 
 [[package]]
 name = "windows_aarch64_msvc"
@@ -4131,9 +4996,9 @@ checksum = "dc35310971f3b2dbbf3f0690a219f40e2d9afcf64f9ab7cc1be722937c26b4bc"
 
 [[package]]
 name = "windows_aarch64_msvc"
-version = "0.52.0"
+version = "0.52.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "bbaa0368d4f1d2aaefc55b6fcfee13f41544ddf36801e793edbbfd7d7df075ef"
+checksum = "9985fd1504e250c615ca5f281c3f7a6da76213ebd5ccc9561496568a2752afb6"
 
 [[package]]
 name = "windows_i686_gnu"
@@ -4149,9 +5014,15 @@ checksum = "a75915e7def60c94dcef72200b9a8e58e5091744960da64ec734a6c6e9b3743e"
 
 [[package]]
 name = "windows_i686_gnu"
-version = "0.52.0"
+version = "0.52.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a28637cb1fa3560a16915793afb20081aba2c92ee8af57b4d5f28e4b3e7df313"
+checksum = "88ba073cf16d5372720ec942a8ccbf61626074c6d4dd2e745299726ce8b89670"
+
+[[package]]
+name = "windows_i686_gnullvm"
+version = "0.52.5"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "87f4261229030a858f36b459e748ae97545d6f1ec60e5e0d6a3d32e0dc232ee9"
 
 [[package]]
 name = "windows_i686_msvc"
@@ -4167,9 +5038,9 @@ checksum = "8f55c233f70c4b27f66c523580f78f1004e8b5a8b659e05a4eb49d4166cca406"
 
 [[package]]
 name = "windows_i686_msvc"
-version = "0.52.0"
+version = "0.52.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ffe5e8e31046ce6230cc7215707b816e339ff4d4d67c65dffa206fd0f7aa7b9a"
+checksum = "db3c2bf3d13d5b658be73463284eaf12830ac9a26a90c717b7f771dfe97487bf"
 
 [[package]]
 name = "windows_x86_64_gnu"
@@ -4185,9 +5056,9 @@ checksum = "53d40abd2583d23e4718fddf1ebec84dbff8381c07cae67ff7768bbf19c6718e"
 
 [[package]]
 name = "windows_x86_64_gnu"
-version = "0.52.0"
+version = "0.52.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3d6fa32db2bc4a2f5abeacf2b69f7992cd09dca97498da74a151a3132c26befd"
+checksum = "4e4246f76bdeff09eb48875a0fd3e2af6aada79d409d33011886d3e1581517d9"
 
 [[package]]
 name = "windows_x86_64_gnullvm"
@@ -4203,9 +5074,9 @@ checksum = "0b7b52767868a23d5bab768e390dc5f5c55825b6d30b86c844ff2dc7414044cc"
 
 [[package]]
 name = "windows_x86_64_gnullvm"
-version = "0.52.0"
+version = "0.52.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1a657e1e9d3f514745a572a6846d3c7aa7dbe1658c056ed9c3344c4109a6949e"
+checksum = "852298e482cd67c356ddd9570386e2862b5673c85bd5f88df9ab6802b334c596"
 
 [[package]]
 name = "windows_x86_64_msvc"
@@ -4221,85 +5092,90 @@ checksum = "ed94fce61571a4006852b7389a063ab983c02eb1bb37b47f8272ce92d06d9538"
 
 [[package]]
 name = "windows_x86_64_msvc"
-version = "0.52.0"
+version = "0.52.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "dff9641d1cd4be8d1a070daf9e3773c5f67e78b4d9d42263020c057706765c04"
+checksum = "bec47e5bfd1bff0eeaf6d8b485cc1074891a197ab4225d504cb7a1ab88b02bf0"
 
 [[package]]
 name = "winit"
-version = "0.28.7"
+version = "0.29.15"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9596d90b45384f5281384ab204224876e8e8bf7d58366d9b795ad99aa9894b94"
+checksum = "0d59ad965a635657faf09c8f062badd885748428933dad8e8bdd64064d92e5ca"
 dependencies = [
+ "ahash",
  "android-activity",
- "bitflags 1.3.2",
- "cfg_aliases",
+ "atomic-waker",
+ "bitflags 2.5.0",
+ "calloop",
+ "cfg_aliases 0.1.1",
  "core-foundation",
  "core-graphics",
- "dispatch",
- "instant",
+ "cursor-icon",
+ "icrate 0.0.4",
+ "js-sys",
  "libc",
  "log",
- "mio",
+ "memmap2 0.9.4",
  "ndk",
- "objc2",
+ "ndk-sys",
+ "objc2 0.4.1",
  "once_cell",
  "orbclient",
- "percent-encoding",
- "raw-window-handle",
+ "raw-window-handle 0.5.2",
  "redox_syscall 0.3.5",
+ "rustix 0.38.34",
  "sctk-adwaita",
  "smithay-client-toolkit",
+ "smol_str",
+ "unicode-segmentation",
  "wasm-bindgen",
+ "wasm-bindgen-futures",
+ "wayland-backend",
  "wayland-client",
- "wayland-commons",
  "wayland-protocols",
- "wayland-scanner",
+ "wayland-protocols-plasma",
  "web-sys",
- "windows-sys 0.45.0",
- "x11-dl",
+ "web-time 0.2.4",
+ "windows-sys 0.48.0",
+ "xkbcommon-dl",
 ]
 
 [[package]]
 name = "winnow"
-version = "0.5.34"
+version = "0.5.40"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b7cf47b659b318dccbd69cc4797a39ae128f533dce7902a1096044d1967b9c16"
+checksum = "f593a95398737aeed53e489c785df13f3618e41dbcd6718c6addbf1395aa6876"
 dependencies = [
  "memchr",
 ]
 
 [[package]]
-name = "x11-dl"
-version = "2.21.0"
+name = "winnow"
+version = "0.6.8"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "38735924fedd5314a6e548792904ed8c6de6636285cb9fec04d5b1db85c1516f"
+checksum = "c3c52e9c97a68071b23e836c9380edae937f17b9c4667bd021973efc689f618d"
 dependencies = [
- "libc",
- "once_cell",
- "pkg-config",
+ "memchr",
 ]
 
 [[package]]
-name = "x11rb"
-version = "0.12.0"
+name = "wio"
+version = "0.2.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b1641b26d4dec61337c35a1b1aaf9e3cba8f46f0b43636c609ab0291a648040a"
+checksum = "5d129932f4644ac2396cb456385cbf9e63b5b30c6e8dc4820bdca4eb082037a5"
 dependencies = [
- "gethostname",
- "nix 0.26.4",
  "winapi",
- "winapi-wsapoll",
- "x11rb-protocol",
 ]
 
 [[package]]
-name = "x11rb-protocol"
-version = "0.12.0"
+name = "xattr"
+version = "1.3.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "82d6c3f9a0fb6701fab8f6cea9b0c0bd5d6876f1f89f7fada07e558077c344bc"
+checksum = "8da84f1a25939b27f6820d92aed108f83ff920fdf11a7b19366c27c4cda81d4f"
 dependencies = [
- "nix 0.26.4",
+ "libc",
+ "linux-raw-sys 0.4.13",
+ "rustix 0.38.34",
 ]
 
 [[package]]
@@ -4310,46 +5186,80 @@ checksum = "6a0ccd7b4a5345edfcd0c3535718a4e9ff7798ffc536bb5b5a0e26ff84732911"
 
 [[package]]
 name = "xdg-home"
-version = "1.0.0"
+version = "1.1.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2769203cd13a0c6015d515be729c526d041e9cf2c0cc478d57faee85f40c6dcd"
+checksum = "21e5a325c3cb8398ad6cf859c1135b25dd29e186679cf2da7581d9679f63b38e"
 dependencies = [
- "nix 0.26.4",
+ "libc",
  "winapi",
 ]
 
 [[package]]
+name = "xkbcommon"
+version = "0.7.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "13867d259930edc7091a6c41b4ce6eee464328c6ff9659b7e4c668ca20d4c91e"
+dependencies = [
+ "libc",
+ "memmap2 0.8.0",
+ "xkeysym",
+]
+
+[[package]]
+name = "xkbcommon-dl"
+version = "0.4.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "d039de8032a9a8856a6be89cea3e5d12fdd82306ab7c94d74e6deab2460651c5"
+dependencies = [
+ "bitflags 2.5.0",
+ "dlib",
+ "log",
+ "once_cell",
+ "xkeysym",
+]
+
+[[package]]
+name = "xkeysym"
+version = "0.2.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "054a8e68b76250b253f671d1268cb7f1ae089ec35e195b2efb2a4e9a836d0621"
+
+[[package]]
 name = "xml-rs"
-version = "0.8.19"
+version = "0.8.20"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "791978798f0597cfc70478424c2b4fdc2b7a8024aaff78497ef00f24ef674193"
+
+[[package]]
+name = "xmlwriter"
+version = "0.1.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0fcb9cbac069e033553e8bb871be2fbdffcab578eb25bd0f7c508cedc6dcd75a"
+checksum = "ec7a2a501ed189703dba8b08142f057e887dfc4b2cc4db2d343ac6376ba3e0b9"
 
 [[package]]
 name = "zbus"
-version = "3.14.1"
+version = "4.1.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "31de390a2d872e4cd04edd71b425e29853f786dc99317ed72d73d6fcf5ebb948"
+checksum = "c9ff46f2a25abd690ed072054733e0bc3157e3d4c45f41bd183dce09c2ff8ab9"
 dependencies = [
  "async-broadcast",
  "async-executor",
- "async-fs",
- "async-io 1.13.0",
- "async-lock 2.8.0",
- "async-process",
+ "async-fs 2.1.2",
+ "async-io 2.3.2",
+ "async-lock 3.3.0",
+ "async-process 2.2.2",
  "async-recursion",
  "async-task",
  "async-trait",
  "blocking",
- "byteorder",
  "derivative",
  "enumflags2",
- "event-listener 2.5.3",
+ "event-listener 5.3.0",
  "futures-core",
  "futures-sink",
  "futures-util",
  "hex",
- "nix 0.26.4",
- "once_cell",
+ "nix 0.28.0",
  "ordered-stream",
  "rand",
  "serde",
@@ -4358,7 +5268,7 @@ dependencies = [
  "static_assertions",
  "tracing",
  "uds_windows",
- "winapi",
+ "windows-sys 0.52.0",
  "xdg-home",
  "zbus_macros",
  "zbus_names",
@@ -4367,9 +5277,9 @@ dependencies = [
 
 [[package]]
 name = "zbus_macros"
-version = "3.14.1"
+version = "4.1.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "41d1794a946878c0e807f55a397187c11fc7a038ba5d868e7db4f3bd7760bc9d"
+checksum = "4e0e3852c93dcdb49c9462afe67a2a468f7bd464150d866e861eaf06208633e0"
 dependencies = [
  "proc-macro-crate",
  "proc-macro2",
@@ -4381,9 +5291,9 @@ dependencies = [
 
 [[package]]
 name = "zbus_names"
-version = "2.6.0"
+version = "3.0.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "fb80bb776dbda6e23d705cf0123c3b95df99c4ebeaec6c2599d4a5419902b4a9"
+checksum = "4b9b1fef7d021261cc16cba64c351d291b715febe0fa10dc3a443ac5a5022e6c"
 dependencies = [
  "serde",
  "static_assertions",
@@ -4392,33 +5302,41 @@ dependencies = [
 
 [[package]]
 name = "zerocopy"
-version = "0.7.32"
+version = "0.7.34"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "74d4d3961e53fa4c9a25a8637fc2bfaf2595b3d3ae34875568a5cf64787716be"
+checksum = "ae87e3fcd617500e5d106f0380cf7b77f3c6092aae37191433159dda23cfb087"
 dependencies = [
  "zerocopy-derive",
 ]
 
 [[package]]
 name = "zerocopy-derive"
-version = "0.7.32"
+version = "0.7.34"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9ce1b18ccd8e73a9321186f97e46f9f04b778851177567b1975109d26a08d2a6"
+checksum = "15e934569e47891f7d9411f1a451d947a60e000ab3bd24fbb970f000387d1b3b"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.48",
+ "syn 2.0.61",
+]
+
+[[package]]
+name = "zune-inflate"
+version = "0.2.54"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "73ab332fe2f6680068f3582b16a24f90ad7096d5d39b974d1c0aff0125116f02"
+dependencies = [
+ "simd-adler32",
 ]
 
 [[package]]
 name = "zvariant"
-version = "3.15.0"
+version = "4.0.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "44b291bee0d960c53170780af148dca5fa260a63cdd24f1962fa82e03e53338c"
+checksum = "2c1b3ca6db667bfada0f1ebfc94b2b1759ba25472ee5373d4551bb892616389a"
 dependencies = [
- "byteorder",
+ "endi",
  "enumflags2",
- "libc",
  "serde",
  "static_assertions",
  "zvariant_derive",
@@ -4426,9 +5344,9 @@ dependencies = [
 
 [[package]]
 name = "zvariant_derive"
-version = "3.15.0"
+version = "4.0.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "934d7a7dfc310d6ee06c87ffe88ef4eca7d3e37bb251dece2ef93da8f17d8ecd"
+checksum = "b7a4b236063316163b69039f77ce3117accb41a09567fd24c168e43491e521bc"
 dependencies = [
  "proc-macro-crate",
  "proc-macro2",
@@ -4439,9 +5357,9 @@ dependencies = [
 
 [[package]]
 name = "zvariant_utils"
-version = "1.0.1"
+version = "1.1.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7234f0d811589db492d16893e3f21e8e2fd282e6d01b0cddee310322062cc200"
+checksum = "00bedb16a193cc12451873fee2a1bc6550225acece0e36f333e68326c73c8172"
 dependencies = [
  "proc-macro2",
  "quote",
diff --git a/pkgs/applications/system/asusctl/default.nix b/pkgs/applications/system/asusctl/default.nix
index ba18d2388901..53628433a0f9 100644
--- a/pkgs/applications/system/asusctl/default.nix
+++ b/pkgs/applications/system/asusctl/default.nix
@@ -3,31 +3,34 @@
 , fetchFromGitLab
 , systemd
 , coreutils
+, gnugrep
 , pkg-config
-, cmake
 , fontconfig
-, gtk3
-, libappindicator
 , libGL
+, libinput
+, libxkbcommon
+, mesa
+, seatd
+, wayland
 }:
 
 rustPlatform.buildRustPackage rec {
   pname = "asusctl";
-  version = "5.0.10";
+  version = "6.0.6";
 
   src = fetchFromGitLab {
     owner = "asus-linux";
     repo = "asusctl";
     rev = version;
-    hash = "sha256-H8x3nfOFRv9DkbDkFw+LO1tdHiVyU3SzetqED4twPSk=";
+    hash = "sha256-to2HJAqU3+xl6Wt90GH7RA7079v1QyP+AE0pL/9rd/M=";
   };
 
   cargoLock = {
     lockFile = ./Cargo.lock;
     outputHashes = {
-      "ecolor-0.21.0" = "sha256-m7eHX6flwO21umtx3dnIuVUnNsEs3ZCyOk5Vvp/lVfI=";
-      "notify-rust-4.6.0" = "sha256-jhCgisA9f6AI9e9JQUYRtEt47gQnDv5WsdRKFoKvHJs=";
-      "supergfxctl-5.1.2" = "sha256-WDbUgvWExk5cs2cpjo88CiROdEbc01o2DELhRi9gju4=";
+      "const-field-offset-0.1.5" = "sha256-53pT9ERsmF4lM9tVG09hgbM0zfbTp1qSM+NDyFQxe3c=";
+      "notify-rust-4.7.0" = "sha256-A7edUorty5GpGXCUQPszZuXtLdEmbmrDSU9JcoDaiaI=";
+      "supergfxctl-5.2.2" = "sha256-hg1QJ7DLtn5oH6IqQu7BcWIsZKAsFy6jjsjF/2o1Cos=";
     };
   };
 
@@ -37,7 +40,9 @@ rustPlatform.buildRustPackage rec {
       asusd-user/src/daemon.rs
       asusd/src/ctrl_anime/config.rs
       rog-aura/src/aura_detection.rs
+      rog-control-center/src/lib.rs
       rog-control-center/src/main.rs
+      rog-control-center/src/tray.rs
     "
     for file in $files; do
       substituteInPlace $file --replace /usr/share $out/share
@@ -50,11 +55,32 @@ rustPlatform.buildRustPackage rec {
     substituteInPlace data/asusd-user.service \
       --replace /usr/bin/asusd-user $out/bin/asusd-user \
       --replace /usr/bin/sleep ${coreutils}/bin/sleep
+
+    substituteInPlace Makefile \
+      --replace /usr/bin/grep ${lib.getExe gnugrep}
   '';
 
-  nativeBuildInputs = [ pkg-config cmake rustPlatform.bindgenHook ];
+  nativeBuildInputs = [ pkg-config ];
+
+  buildInputs = [
+    fontconfig
+    libGL
+    libinput
+    libxkbcommon
+    mesa
+    seatd
+    systemd
+    wayland
+  ];
 
-  buildInputs = [ systemd fontconfig gtk3 ];
+  # force linking to all the dlopen()ed dependencies
+  RUSTFLAGS = map (a: "-C link-arg=${a}") [
+    "-Wl,--push-state,--no-as-needed"
+    "-lEGL"
+    "-lfontconfig"
+    "-lwayland-client"
+    "-Wl,--pop-state"
+  ];
 
   # upstream has minimal tests, so don't rebuild twice
   doCheck = false;
@@ -63,10 +89,6 @@ rustPlatform.buildRustPackage rec {
     make prefix=$out install-data
   '';
 
-  postFixup = ''
-    patchelf --add-rpath "${libappindicator}/lib:${libGL}/lib" "$out/bin/rog-control-center"
-  '';
-
   meta = with lib; {
     description = "A control daemon, CLI tools, and a collection of crates for interacting with ASUS ROG laptops";
     homepage = "https://gitlab.com/asus-linux/asusctl";
diff --git a/pkgs/applications/system/monitor/default.nix b/pkgs/applications/system/monitor/default.nix
index 2ad01f2aa26f..fdf353646717 100644
--- a/pkgs/applications/system/monitor/default.nix
+++ b/pkgs/applications/system/monitor/default.nix
@@ -20,7 +20,7 @@
 , libhandy
 , sassc
 , udisks2
-, wrapGAppsHook
+, wrapGAppsHook3
 , libX11
 , libXext
 , libXNVCtrl
@@ -45,7 +45,7 @@ stdenv.mkDerivation rec {
     vala
     pkg-config
     python3
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
diff --git a/pkgs/applications/system/thumbdrives/default.nix b/pkgs/applications/system/thumbdrives/default.nix
index d70ea9580629..89711e996831 100644
--- a/pkgs/applications/system/thumbdrives/default.nix
+++ b/pkgs/applications/system/thumbdrives/default.nix
@@ -10,7 +10,7 @@
 , gettext
 , glib
 , desktop-file-utils
-, wrapGAppsHook
+, wrapGAppsHook3
 }:
 
 python3.pkgs.buildPythonApplication rec {
@@ -38,7 +38,7 @@ python3.pkgs.buildPythonApplication rec {
     glib
     gtk3
     desktop-file-utils
-    wrapGAppsHook
+    wrapGAppsHook3
     gobject-introspection
   ];
 
diff --git a/pkgs/applications/terminal-emulators/blackbox-terminal/default.nix b/pkgs/applications/terminal-emulators/blackbox-terminal/default.nix
index 5b8e0078d75c..f71a9dce894f 100644
--- a/pkgs/applications/terminal-emulators/blackbox-terminal/default.nix
+++ b/pkgs/applications/terminal-emulators/blackbox-terminal/default.nix
@@ -72,6 +72,9 @@ stdenv.mkDerivation rec {
         rev = "3c8f66be867aca6656e4109ce880b6ea7431b895";
         hash = "sha256-vz9ircmPy2Q4fxNnjurkgJtuTSS49rBq/m61p1B43eU=";
       };
+      postPatch = (old.postPatch or "") + ''
+        patchShebangs src/box_drawing_generate.sh
+      '';
     } // lib.optionalAttrs sixelSupport {
       buildInputs = old.buildInputs ++ [ libsixel ];
       mesonFlags = old.mesonFlags ++ [ "-Dsixel=true" ];
diff --git a/pkgs/applications/terminal-emulators/gnome-console/default.nix b/pkgs/applications/terminal-emulators/gnome-console/default.nix
index 2141effcf015..5884f65c61ed 100644
--- a/pkgs/applications/terminal-emulators/gnome-console/default.nix
+++ b/pkgs/applications/terminal-emulators/gnome-console/default.nix
@@ -18,11 +18,11 @@
 
 stdenv.mkDerivation rec {
   pname = "gnome-console";
-  version = "45.0";
+  version = "46.0";
 
   src = fetchurl {
     url = "mirror://gnome/sources/gnome-console/${lib.versions.major version}/${pname}-${version}.tar.xz";
-    sha256 = "50YhKNLfIySh10gGLEBCnNBQSvCeQHBnsz86nQxZyOE=";
+    hash = "sha256-FhnOcBdzssDJA3GPVHaMGS6lB0UU1VoXdKkslyMdbD4=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/applications/terminal-emulators/guake/default.nix b/pkgs/applications/terminal-emulators/guake/default.nix
index 667da3ec229f..239d9a2fe048 100644
--- a/pkgs/applications/terminal-emulators/guake/default.nix
+++ b/pkgs/applications/terminal-emulators/guake/default.nix
@@ -1,34 +1,60 @@
 { lib
 , fetchFromGitHub
+, fetchpatch
 , python3
 , glibcLocales
 , gobject-introspection
-, wrapGAppsHook
+, wrapGAppsHook3
 , gtk3
 , keybinder3
 , libnotify
 , libutempter
 , vte
 , libwnck
+, dconf
 , nixosTests
 }:
 
 python3.pkgs.buildPythonApplication rec {
   pname = "guake";
-  version = "3.9.0";
+  version = "3.10";
 
-  format = "other";
+  pyproject = false;
 
   src = fetchFromGitHub {
     owner = "Guake";
     repo = "guake";
     rev = "refs/tags/${version}";
-    sha256 = "sha256-BW13fBH26UqMPMjV8JC4QkpgzyoPfCpAfSkJD68uOZU=";
+    hash = "sha256-e6Bf4HDftHBxFPcw9z02CqgZhSIvt6wlLF6dnIh9fEc=";
   };
 
+  patches = [
+    # Avoid trying to recompile schema at runtime,
+    # the package should be responsible for ensuring it is up to date.
+    # Without this, the package will try to run glib-compile-schemas
+    # on every update, which is pointless and will crash
+    # unless user has it installed.
+    ./no-compile-schemas.patch
+
+    # Avoid using pip since it fails on not being able to find setuptools.
+    # Note: This is not a long-term solution, setup.py is deprecated.
+    (fetchpatch {
+      url = "https://github.com/Guake/guake/commit/14abaa0c69cfab64fe3467fbbea211d830042de8.patch";
+      hash = "sha256-RjGRFJDTQX2meAaw3UZi/3OxAtIHbRZVpXTbcJk/scY= ";
+      revert = true;
+    })
+
+    # Revert switch to FHS.
+    (fetchpatch {
+      url = "https://github.com/Guake/guake/commit/8c7a23ba62ee262c033dfa5b0b18d3df71361ff4.patch";
+      hash = "sha256-0asXI08XITkFc73EUenV9qxY/Eak+TzygRRK7GvhQUc=";
+      revert = true;
+    })
+  ];
+
   nativeBuildInputs = [
     gobject-introspection
-    wrapGAppsHook
+    wrapGAppsHook3
     python3.pkgs.pip
   ];
 
@@ -57,7 +83,11 @@ python3.pkgs.buildPythonApplication rec {
   ];
 
   preFixup = ''
-    gappsWrapperArgs+=(--prefix LD_LIBRARY_PATH : "${lib.makeLibraryPath [ libutempter ]}")
+    gappsWrapperArgs+=(
+      --prefix LD_LIBRARY_PATH : "${lib.makeLibraryPath [ libutempter ]}"
+      # For settings migration.
+      --prefix PATH : "${lib.makeBinPath [ dconf ]}"
+    )
   '';
 
   passthru.tests.test = nixosTests.terminal-emulators.guake;
@@ -65,7 +95,7 @@ python3.pkgs.buildPythonApplication rec {
   meta = with lib; {
     description = "Drop-down terminal for GNOME";
     homepage = "http://guake-project.org";
-    license = licenses.gpl2;
+    license = licenses.gpl2Plus;
     maintainers = [ maintainers.msteen ];
     platforms = platforms.linux;
   };
diff --git a/pkgs/applications/terminal-emulators/guake/no-compile-schemas.patch b/pkgs/applications/terminal-emulators/guake/no-compile-schemas.patch
new file mode 100644
index 000000000000..e73387e1fc09
--- /dev/null
+++ b/pkgs/applications/terminal-emulators/guake/no-compile-schemas.patch
@@ -0,0 +1,34 @@
+diff --git a/guake/guake_app.py b/guake/guake_app.py
+index 48074db..d7d1371 100644
+--- a/guake/guake_app.py
++++ b/guake/guake_app.py
+@@ -109,12 +109,7 @@ class Guake(SimpleGladeApp):
+                 SCHEMA_DIR, Gio.SettingsSchemaSource.get_default(), False
+             )
+ 
+-        try:
+-            schema_source = load_schema()
+-        except GLib.Error:  # pylint: disable=catching-non-exception
+-            log.exception("Unable to load the GLib schema, try to compile it")
+-            try_to_compile_glib_schemas()
+-            schema_source = load_schema()
++        schema_source = load_schema()
+         self.settings = Settings(schema_source)
+         self.accel_group = None
+ 
+@@ -122,13 +117,8 @@ class Guake(SimpleGladeApp):
+             "schema-version" not in self.settings.general.keys()
+             or self.settings.general.get_string("schema-version") != guake_version()
+         ):
+-            log.exception("Schema from old guake version detected, regenerating schema")
+-            try:
+-                try_to_compile_glib_schemas()
+-            except subprocess.CalledProcessError:
+-                log.exception("Schema in non user-editable location, attempting to continue")
+-            schema_source = load_schema()
+-            self.settings = Settings(schema_source)
++            log.exception("Schema from old guake version detected")
++            # Kept for compatibility with other distros.
+             self.settings.general.set_string("schema-version", guake_version())
+ 
+         log.info("Language previously loaded from: %s", LOCALE_DIR)
diff --git a/pkgs/applications/terminal-emulators/kitty/default.nix b/pkgs/applications/terminal-emulators/kitty/default.nix
index 675e47e5f57a..5e31ac572cab 100644
--- a/pkgs/applications/terminal-emulators/kitty/default.nix
+++ b/pkgs/applications/terminal-emulators/kitty/default.nix
@@ -210,7 +210,10 @@ buildPythonApplication rec {
     cp -r linux-package/{bin,share,lib} "$out"
     cp linux-package/bin/kitten "$kitten/bin/kitten"
     ''}
-    wrapProgram "$out/bin/kitty" --prefix PATH : "$out/bin:${lib.makeBinPath [ imagemagick ncurses.dev ]}"
+
+    # dereference the `kitty` symlink to make sure the actual executable
+    # is wrapped on macOS as well (and not just the symlink)
+    wrapProgram $(realpath "$out/bin/kitty") --prefix PATH : "$out/bin:${lib.makeBinPath [ imagemagick ncurses.dev ]}"
 
     installShellCompletion --cmd kitty \
       --bash <("$out/bin/kitty" +complete setup bash) \
diff --git a/pkgs/applications/terminal-emulators/kitty/themes.nix b/pkgs/applications/terminal-emulators/kitty/themes.nix
index 1459642bc98a..facfa34cf140 100644
--- a/pkgs/applications/terminal-emulators/kitty/themes.nix
+++ b/pkgs/applications/terminal-emulators/kitty/themes.nix
@@ -3,15 +3,15 @@
 , fetchFromGitHub
 }:
 
-stdenvNoCC.mkDerivation rec {
+stdenvNoCC.mkDerivation {
   pname = "kitty-themes";
-  version = "unstable-2023-12-28";
+  version = "unstable-2024-04-23";
 
   src = fetchFromGitHub {
     owner = "kovidgoyal";
     repo = "kitty-themes";
-    rev = "46d9dfe230f315a6a0c62f4687f6b3da20fd05e4";
-    hash = "sha256-jlYim4YXByT6s6ce0TydZuhX0Y1ZDcAq2XKNONisSzE=";
+    rev = "8026ce6ec70a0a67fedd02319e6fa39d36bbc1d1";
+    hash = "sha256-RN4YTcsVRg+3c+SEtKkJC8EvuNiiToduASMy/Rr+ZwA=";
   };
 
   dontConfigure = true;
@@ -30,7 +30,7 @@ stdenvNoCC.mkDerivation rec {
     homepage = "https://github.com/kovidgoyal/kitty-themes";
     description = "Themes for the kitty terminal emulator";
     license = lib.licenses.gpl3Only;
-    maintainers = with lib.maintainers; [ ];
+    maintainers = with lib.maintainers; [ sigmanificient ];
     platforms = lib.platforms.all;
   };
 }
diff --git a/pkgs/applications/terminal-emulators/lxterminal/default.nix b/pkgs/applications/terminal-emulators/lxterminal/default.nix
index 90483efc89a5..76f375e43f62 100644
--- a/pkgs/applications/terminal-emulators/lxterminal/default.nix
+++ b/pkgs/applications/terminal-emulators/lxterminal/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetchFromGitHub, automake, autoconf, intltool, pkg-config, gtk3, vte, wrapGAppsHook
+{ lib, stdenv, fetchFromGitHub, automake, autoconf, intltool, pkg-config, gtk3, vte, wrapGAppsHook3
 , libxslt, docbook_xml_dtd_412, docbook_xsl, libxml2, findXMLCatalogs, nixosTests
 , pcre2
 }:
@@ -20,7 +20,7 @@ stdenv.mkDerivation rec {
   ];
 
   nativeBuildInputs = [
-    automake autoconf intltool pkg-config wrapGAppsHook
+    automake autoconf intltool pkg-config wrapGAppsHook3
     libxslt docbook_xml_dtd_412 docbook_xsl libxml2 findXMLCatalogs
   ];
 
diff --git a/pkgs/applications/terminal-emulators/mlterm/default.nix b/pkgs/applications/terminal-emulators/mlterm/default.nix
index f11c456d4376..28f027401bd7 100644
--- a/pkgs/applications/terminal-emulators/mlterm/default.nix
+++ b/pkgs/applications/terminal-emulators/mlterm/default.nix
@@ -14,7 +14,7 @@
 , fcitx5-gtk
 , ibus
 , uim #IME
-, wrapGAppsHook #color picker in mlconfig
+, wrapGAppsHook3 #color picker in mlconfig
 , gdk-pixbuf
 , gtk3
 , gtk ? gtk3
@@ -111,7 +111,7 @@ in stdenv.mkDerivation (finalAttrs: {
     pkg-config
     autoconf
   ] ++ lib.optionals enableTools.mlconfig [
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
   buildInputs = [
     gtk
diff --git a/pkgs/applications/terminal-emulators/rio/default.nix b/pkgs/applications/terminal-emulators/rio/default.nix
index ee77c4c3d457..a1f89f6a4e0a 100644
--- a/pkgs/applications/terminal-emulators/rio/default.nix
+++ b/pkgs/applications/terminal-emulators/rio/default.nix
@@ -51,16 +51,16 @@ let
 in
 rustPlatform.buildRustPackage rec {
   pname = "rio";
-  version = "0.0.36";
+  version = "0.0.37";
 
   src = fetchFromGitHub {
     owner = "raphamorim";
     repo = "rio";
     rev = "v${version}";
-    hash = "sha256-QCQFFnlKD5olaGjRwDlj5/EBV6Qy/bFAZOQRtCSPamc=";
+    hash = "sha256-rY5nuZcMbK9PYxfGYdVheOOVIC4I/11EOWpNmG6gH9A=";
   };
 
-  cargoHash = "sha256-Ea0scCbM9mfxC1YL3HCoBk93eVW20bj2mJyauyDSzT8=";
+  cargoHash = "sha256-tHcUMxe9HwTzm2oDwaTyuh+UZUwW64xPX/cftxqZoz8=";
 
   nativeBuildInputs = [
     ncurses
diff --git a/pkgs/applications/terminal-emulators/terminator/default.nix b/pkgs/applications/terminal-emulators/terminator/default.nix
index 4dee206be28d..175d3766594b 100644
--- a/pkgs/applications/terminal-emulators/terminator/default.nix
+++ b/pkgs/applications/terminal-emulators/terminator/default.nix
@@ -7,7 +7,8 @@
 , gtk3
 , gobject-introspection
 , libnotify
-, wrapGAppsHook
+, makeBinaryWrapper
+, wrapGAppsHook3
 , vte
 , nixosTests
 }:
@@ -27,7 +28,8 @@ python3.pkgs.buildPythonApplication rec {
     file
     intltool
     gobject-introspection
-    wrapGAppsHook
+    makeBinaryWrapper
+    wrapGAppsHook3
     python3.pkgs.pytest-runner
   ];
 
@@ -55,8 +57,15 @@ python3.pkgs.buildPythonApplication rec {
 
   dontWrapGApps = true;
 
+  # HACK: 'wrapPythonPrograms' will add things to the $PATH in the wrapper. This bleeds into the
+  # terminal session produced by terminator. To avoid this, we force wrapPythonPrograms to only
+  # use gappsWrapperArgs by redefining wrapProgram to ignore its arguments and only apply the
+  # wrapper arguments we want it to use.
+  # TODO: Adjust wrapPythonPrograms to respect an argument that tells it to leave $PATH alone.
   preFixup = ''
-    makeWrapperArgs+=("''${gappsWrapperArgs[@]}")
+    wrapProgram() {
+      wrapProgramBinary "$1" "''${gappsWrapperArgs[@]}"
+    }
   '';
 
   passthru.tests.test = nixosTests.terminal-emulators.terminator;
diff --git a/pkgs/applications/terminal-emulators/termite/default.nix b/pkgs/applications/terminal-emulators/termite/default.nix
index ab854a2f9906..a47423390ba2 100644
--- a/pkgs/applications/terminal-emulators/termite/default.nix
+++ b/pkgs/applications/terminal-emulators/termite/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetchFromGitHub, fetchpatch, pkg-config, vte, gtk3, ncurses, pcre2, wrapGAppsHook, nixosTests }:
+{ lib, stdenv, fetchFromGitHub, fetchpatch, pkg-config, vte, gtk3, ncurses, pcre2, wrapGAppsHook3, nixosTests }:
 
 let
 
@@ -53,7 +53,7 @@ in stdenv.mkDerivation rec {
 
   buildInputs = [ vte-ng gtk3 ncurses pcre2 ];
 
-  nativeBuildInputs = [ wrapGAppsHook pkg-config ];
+  nativeBuildInputs = [ wrapGAppsHook3 pkg-config ];
 
   outputs = [ "out" "terminfo" ];
 
diff --git a/pkgs/applications/terminal-emulators/x3270/default.nix b/pkgs/applications/terminal-emulators/x3270/default.nix
index 010345aa03df..2e901e5af876 100644
--- a/pkgs/applications/terminal-emulators/x3270/default.nix
+++ b/pkgs/applications/terminal-emulators/x3270/default.nix
@@ -18,6 +18,8 @@
 , fontbitstream100dpi
 , tcl
 , ncurses
+, openssl
+, readline
 }:
 let
   majorVersion = "4";
@@ -66,6 +68,8 @@ stdenv.mkDerivation rec {
     tcl
     ncurses
     expat
+    openssl
+    readline
   ] ++ lib.optionals stdenv.isDarwin [ libiconv darwin.apple_sdk.frameworks.Security ];
 
   meta = with lib; {
diff --git a/pkgs/applications/version-management/commitizen/default.nix b/pkgs/applications/version-management/commitizen/default.nix
index ba3c5695fd94..dd5953f103b9 100644
--- a/pkgs/applications/version-management/commitizen/default.nix
+++ b/pkgs/applications/version-management/commitizen/default.nix
@@ -11,7 +11,7 @@
 
 python3.pkgs.buildPythonApplication rec {
   pname = "commitizen";
-  version = "3.24.0";
+  version = "3.25.0";
   format = "pyproject";
 
   disabled = python3.pythonOlder "3.8";
@@ -20,7 +20,7 @@ python3.pkgs.buildPythonApplication rec {
     owner = "commitizen-tools";
     repo = pname;
     rev = "refs/tags/v${version}";
-    hash = "sha256-kGrXy2V5yFv7MQUKjmE89tRnG+3b73GPVHqGZ3XO0nY=";
+    hash = "sha256-9vaQO0KBL4RgWS8mNSZlnpm1qH+l5TjCa5JndQ1Q36Q=";
   };
 
   pythonRelaxDeps = [
diff --git a/pkgs/applications/version-management/deepgit/default.nix b/pkgs/applications/version-management/deepgit/default.nix
index 8a778526b4ad..c5744d073ce0 100644
--- a/pkgs/applications/version-management/deepgit/default.nix
+++ b/pkgs/applications/version-management/deepgit/default.nix
@@ -7,7 +7,7 @@
 , lib
 , makeDesktopItem
 , stdenv
-, wrapGAppsHook
+, wrapGAppsHook3
 }:
 
 stdenv.mkDerivation rec {
@@ -21,7 +21,7 @@ stdenv.mkDerivation rec {
 
   nativeBuildInputs = [
     copyDesktopItems
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
diff --git a/pkgs/applications/version-management/gh/default.nix b/pkgs/applications/version-management/gh/default.nix
index d5633ef5e3d3..721038bef27f 100644
--- a/pkgs/applications/version-management/gh/default.nix
+++ b/pkgs/applications/version-management/gh/default.nix
@@ -2,16 +2,16 @@
 
 buildGoModule rec {
   pname = "gh";
-  version = "2.49.0";
+  version = "2.49.2";
 
   src = fetchFromGitHub {
     owner = "cli";
     repo = "cli";
     rev = "v${version}";
-    hash = "sha256-4aT8ThZt2Dlp2RjaGBiTgw2IPantSnTJPhP5Tel755Q=";
+    hash = "sha256-RevdHBF/7etEstUhsTO9KVK45KTiJnhAhAZAamuEUwk=";
   };
 
-  vendorHash = "sha256-p+1Knx+z1M3m8VjsvBfY6D1Gs5va5Z8QFExv5397wHU=";
+  vendorHash = "sha256-9Rv1zPrtaxd00lbA3WrPIzIZ9IiKqZa/ppn37jqMP4M=";
 
   nativeBuildInputs = [ installShellFiles ];
 
diff --git a/pkgs/applications/version-management/ghorg/default.nix b/pkgs/applications/version-management/ghorg/default.nix
index 0d8b4e27e6a8..a3aa4218042c 100644
--- a/pkgs/applications/version-management/ghorg/default.nix
+++ b/pkgs/applications/version-management/ghorg/default.nix
@@ -2,13 +2,13 @@
 
 buildGoModule rec {
   pname = "ghorg";
-  version = "1.9.11";
+  version = "1.9.12";
 
   src = fetchFromGitHub {
     owner = "gabrie30";
     repo = "ghorg";
     rev = "v${version}";
-    sha256 = "sha256-22/HM/DYkNh8V1v09fca6/3TLwzYudpH/VNbh+3+iyE=";
+    sha256 = "sha256-8M8ovb3T7iSHXepG1eH3ByX+g5iVRl4/pctigQ4I0Pk=";
   };
 
   doCheck = false;
diff --git a/pkgs/applications/version-management/git-cliff/default.nix b/pkgs/applications/version-management/git-cliff/default.nix
index 817394cdc570..b8b5d480e39b 100644
--- a/pkgs/applications/version-management/git-cliff/default.nix
+++ b/pkgs/applications/version-management/git-cliff/default.nix
@@ -8,16 +8,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "git-cliff";
-  version = "2.2.1";
+  version = "2.2.2";
 
   src = fetchFromGitHub {
     owner = "orhun";
     repo = "git-cliff";
     rev = "v${version}";
-    hash = "sha256-FRcreSnSO65m9h9+SUg4qdFELvpVX1+HkWH3dI2RR/M=";
+    hash = "sha256-e7DeGcavBgjnH2QY/nqRThYHKzhmbNxYPoOmMF+0I3s=";
   };
 
-  cargoHash = "sha256-RlcZvyFi7fc8eJYB5X64axAnNp8Z1h0WOV4hM1SLoRk=";
+  cargoHash = "sha256-MaSqQD3SRuqiOj5hTHAMyTDj2xgboA5QIZEH7BAxjF4=";
 
   # attempts to run the program on .git in src which is not deterministic
   doCheck = false;
@@ -32,5 +32,6 @@ rustPlatform.buildRustPackage rec {
     changelog = "https://github.com/orhun/git-cliff/blob/v${version}/CHANGELOG.md";
     license = licenses.gpl3Only;
     maintainers = with maintainers; [ siraben ];
+    mainProgram = "git-cliff";
   };
 }
diff --git a/pkgs/applications/version-management/git-cola/default.nix b/pkgs/applications/version-management/git-cola/default.nix
index f7182140e017..38c094ad0e20 100644
--- a/pkgs/applications/version-management/git-cola/default.nix
+++ b/pkgs/applications/version-management/git-cola/default.nix
@@ -10,14 +10,14 @@
 
 python3Packages.buildPythonApplication rec {
   pname = "git-cola";
-  version = "4.6.1";
+  version = "4.7.1";
   pyproject = true;
 
   src = fetchFromGitHub {
     owner = "git-cola";
     repo = "git-cola";
     rev = "v${version}";
-    hash = "sha256-qAvoBVZt2IwrWFNzGWpCZqj8gbjysGlB/VXaa1CMH4o=";
+    hash = "sha256-93aayGGMgkSghTpx8M5Cfbxf2szAwrSzuoWK6GCTqZ8=";
   };
 
   buildInputs = lib.optionals stdenv.isLinux [
diff --git a/pkgs/applications/version-management/git-credential-oauth/default.nix b/pkgs/applications/version-management/git-credential-oauth/default.nix
index 5672fb95e499..edc517b54d59 100644
--- a/pkgs/applications/version-management/git-credential-oauth/default.nix
+++ b/pkgs/applications/version-management/git-credential-oauth/default.nix
@@ -2,13 +2,13 @@
 
 buildGoModule rec {
   pname = "git-credential-oauth";
-  version = "0.11.2";
+  version = "0.11.3";
 
   src = fetchFromGitHub {
     owner = "hickford";
     repo = pname;
     rev = "v${version}";
-    hash = "sha256-dGn1I47/S6DYXva5zjvcQnB+I4Ex354xMmZ/3OkpjMw=";
+    hash = "sha256-tJJxCtCNuPtoQYABEViS1G6aHrMTLn+r3hlTTkaJvCg=";
   };
 
   nativeBuildInputs = [ installShellFiles ];
diff --git a/pkgs/applications/version-management/git-machete/default.nix b/pkgs/applications/version-management/git-machete/default.nix
index 3c97c1e2024b..a6cf657d61d7 100644
--- a/pkgs/applications/version-management/git-machete/default.nix
+++ b/pkgs/applications/version-management/git-machete/default.nix
@@ -12,13 +12,13 @@
 
 buildPythonApplication rec {
   pname = "git-machete";
-  version = "3.25.0";
+  version = "3.25.2";
 
   src = fetchFromGitHub {
     owner = "virtuslab";
     repo = pname;
     rev = "v${version}";
-    hash = "sha256-tLEuSwM8X0+oQDB9fmj5OQsC7iA906EQZz3yvB6rXfk=";
+    hash = "sha256-uTbDrSR2Aqeq73PI0dghCkOQS7QPFb/I9Yrl3wIH9ZQ=";
   };
 
   nativeBuildInputs = [ installShellFiles ];
diff --git a/pkgs/applications/version-management/git-mit/default.nix b/pkgs/applications/version-management/git-mit/default.nix
index 508f416515ad..34cda787ce3b 100644
--- a/pkgs/applications/version-management/git-mit/default.nix
+++ b/pkgs/applications/version-management/git-mit/default.nix
@@ -10,7 +10,7 @@
 }:
 
 let
-  version = "5.12.198";
+  version = "5.12.200";
 in
 rustPlatform.buildRustPackage {
   pname = "git-mit";
@@ -20,10 +20,10 @@ rustPlatform.buildRustPackage {
     owner = "PurpleBooth";
     repo = "git-mit";
     rev = "v${version}";
-    hash = "sha256-4tWgIwDmGZhMFTVT5VzmGj69zV8FGTV0yBHUy5Iu1Xw=";
+    hash = "sha256-xrmxpbNBe+EjQsnpgQtKZlziK+jOw5johFDH2kfxf44=";
   };
 
-  cargoHash = "sha256-vKiCKcyB1Q2CNA4HpE8dc5gh+nlrz0VERIMaTGlDH5Y=";
+  cargoHash = "sha256-1JN3TaX37DCoYuWJskFoP5vRPqJG8JEMGRAEsU/PI48=";
 
   nativeBuildInputs = [ pkg-config ];
 
diff --git a/pkgs/applications/version-management/git-town/default.nix b/pkgs/applications/version-management/git-town/default.nix
index c47604d711c8..c2d9fd54f003 100644
--- a/pkgs/applications/version-management/git-town/default.nix
+++ b/pkgs/applications/version-management/git-town/default.nix
@@ -19,7 +19,8 @@ buildGoModule rec {
 
   ldflags =
     let
-      modulePath = "github.com/git-town/git-town/v${lib.versions.major version}"; in
+      modulePath = "github.com/git-town/git-town/v${lib.versions.major version}";
+    in
     [
       "-s"
       "-w"
@@ -28,19 +29,22 @@ buildGoModule rec {
     ];
 
   nativeCheckInputs = [ git ];
-  preCheck =
+
+  preCheck = ''
+    HOME=$(mktemp -d)
+  '';
+
+  checkFlags =
     let
+      # Disable tests requiring local operations
       skippedTests = [
         "TestGodog"
-        "TestMockingShell_MockCommand"
-        "TestShellRunner_RunStringWith_Input"
+        "TestMockingRunner/MockCommand"
+        "TestMockingRunner/QueryWith"
+        "TestTestCommands/CreateChildFeatureBranch"
       ];
     in
-    ''
-      HOME=$(mktemp -d)
-      # Disable tests requiring local operations
-      buildFlagsArray+=("-run" "[^(${builtins.concatStringsSep "|" skippedTests})]")
-    '';
+    [ "-skip=^${builtins.concatStringsSep "$|^" skippedTests}$" ];
 
   postInstall = ''
     installShellCompletion --cmd git-town \
diff --git a/pkgs/applications/version-management/gitbatch/default.nix b/pkgs/applications/version-management/gitbatch/default.nix
index c880b9343f1a..7f7c6c64891a 100644
--- a/pkgs/applications/version-management/gitbatch/default.nix
+++ b/pkgs/applications/version-management/gitbatch/default.nix
@@ -15,16 +15,19 @@ buildGoModule rec {
 
   ldflags = [ "-s" "-w" ];
 
-  nativeBuildInputs = [
+  nativeCheckInputs = [
     git # required by unit tests
   ];
 
   preCheck = ''
     HOME=$(mktemp -d)
-    # Disable tests requiring network access to gitlab.com
-    buildFlagsArray+=("-run" "[^(Test(Run|Start|(Fetch|Pull)With(Go|)Git))]")
   '';
 
+  checkFlags = [
+    # Disable tests requiring network access to gitlab.com
+    "-skip=Test(Run|Start|(Fetch|Pull)With(Go|)Git)"
+  ];
+
   meta = with lib; {
     description = "Running git UI commands";
     homepage = "https://github.com/isacikgoz/gitbatch";
diff --git a/pkgs/applications/version-management/gitkraken/default.nix b/pkgs/applications/version-management/gitkraken/default.nix
index a3160f1ce3a5..7a660dedad81 100644
--- a/pkgs/applications/version-management/gitkraken/default.nix
+++ b/pkgs/applications/version-management/gitkraken/default.nix
@@ -2,7 +2,7 @@
 , libXfixes, atk, gtk3, libXrender, pango, gnome, cairo, freetype, fontconfig
 , libX11, libXi, libxcb, libXext, libXcursor, glib, libXScrnSaver, libxkbfile, libXtst
 , nss, nspr, cups, fetchzip, expat, gdk-pixbuf, libXdamage, libXrandr, dbus
-, makeDesktopItem, openssl, wrapGAppsHook, makeShellWrapper, at-spi2-atk, at-spi2-core, libuuid
+, makeDesktopItem, openssl, wrapGAppsHook3, makeShellWrapper, at-spi2-atk, at-spi2-core, libuuid
 , e2fsprogs, krb5, libdrm, mesa, unzip, copyDesktopItems, libxshmfence, libxkbcommon, git
 , libGL, zlib, cacert
 }:
@@ -106,7 +106,7 @@ let
       comment = "Graphical Git client from Axosoft";
     }) ];
 
-    nativeBuildInputs = [ copyDesktopItems (wrapGAppsHook.override { makeWrapper = makeShellWrapper; }) ];
+    nativeBuildInputs = [ copyDesktopItems (wrapGAppsHook3.override { makeWrapper = makeShellWrapper; }) ];
     buildInputs = [ gtk3 gnome.adwaita-icon-theme ];
 
     # avoid double-wrapping
diff --git a/pkgs/applications/version-management/gitlab/data.json b/pkgs/applications/version-management/gitlab/data.json
index ff2bbcf877c0..03ad46e65943 100644
--- a/pkgs/applications/version-management/gitlab/data.json
+++ b/pkgs/applications/version-management/gitlab/data.json
@@ -1,15 +1,15 @@
 {
-  "version": "16.10.4",
-  "repo_hash": "sha256-ieS2MO5jBNBK0hmuWLfaDjRNhn98927hlTFrDbV0zCQ=",
+  "version": "16.10.5",
+  "repo_hash": "sha256-w2cXFIm588Q/SB1kO9dGCmxO3+Xee7BaCCipuVcnfXg=",
   "yarn_hash": "0yzywfg4lqxjwm5cqsm4bn97zcrfvpnrs8rjrv9wv3xqvi9h9skd",
   "owner": "gitlab-org",
   "repo": "gitlab",
-  "rev": "v16.10.4-ee",
+  "rev": "v16.10.5-ee",
   "passthru": {
-    "GITALY_SERVER_VERSION": "16.10.4",
-    "GITLAB_PAGES_VERSION": "16.10.4",
+    "GITALY_SERVER_VERSION": "16.10.5",
+    "GITLAB_PAGES_VERSION": "16.10.5",
     "GITLAB_SHELL_VERSION": "14.34.0",
     "GITLAB_ELASTICSEARCH_INDEXER_VERSION": "4.8.0",
-    "GITLAB_WORKHORSE_VERSION": "16.10.4"
+    "GITLAB_WORKHORSE_VERSION": "16.10.5"
   }
 }
diff --git a/pkgs/applications/version-management/gitlab/gitaly/default.nix b/pkgs/applications/version-management/gitlab/gitaly/default.nix
index ac63b4296b7a..981e5cfcc5ac 100644
--- a/pkgs/applications/version-management/gitlab/gitaly/default.nix
+++ b/pkgs/applications/version-management/gitlab/gitaly/default.nix
@@ -6,7 +6,7 @@
 }:
 
 let
-  version = "16.10.4";
+  version = "16.10.5";
   package_version = "v${lib.versions.major version}";
   gitaly_package = "gitlab.com/gitlab-org/gitaly/${package_version}";
 
@@ -18,10 +18,10 @@ let
       owner = "gitlab-org";
       repo = "gitaly";
       rev = "v${version}";
-      hash = "sha256-dzHGnZwXomCUrlup9VD/0l084Swp9CVi4nJi6MtOwi8=";
+      hash = "sha256-ctJfw4aU5qsv+I3rR9xZPGssYQpTnbn4MdTVOYapHqQ=";
     };
 
-    vendorHash = "sha256-mPoz+y1LWpGr+zYqAhxzznMyKIPehsDW+WFxklYSC10=";
+    vendorHash = "sha256-6gZr0/0ZGcFwwAY4IuW2puL/7akMZvaU0ONJGYyyJas=";
 
     ldflags = [ "-X ${gitaly_package}/internal/version.version=${version}" "-X ${gitaly_package}/internal/version.moduleVersion=${version}" ];
 
diff --git a/pkgs/applications/version-management/gitlab/gitlab-container-registry/Disable-inmemory-storage-driver-test.patch b/pkgs/applications/version-management/gitlab/gitlab-container-registry/Disable-inmemory-storage-driver-test.patch
deleted file mode 100644
index 16f47fb3ae18..000000000000
--- a/pkgs/applications/version-management/gitlab/gitlab-container-registry/Disable-inmemory-storage-driver-test.patch
+++ /dev/null
@@ -1,38 +0,0 @@
-From bc359e8f51a17ba759121339e87e90eed16e98fe Mon Sep 17 00:00:00 2001
-From: Yaya <mak@nyantec.com>
-Date: Tue, 20 Jun 2023 10:01:23 +0000
-Subject: [PATCH] Disable inmemory storage driver test
-
----
- .../storage/driver/inmemory/driver_test.go    | 19 -------------------
- 1 file changed, 19 deletions(-)
- delete mode 100644 registry/storage/driver/inmemory/driver_test.go
-
-diff --git a/registry/storage/driver/inmemory/driver_test.go b/registry/storage/driver/inmemory/driver_test.go
-deleted file mode 100644
-index dbc1916f..00000000
---- a/registry/storage/driver/inmemory/driver_test.go
-+++ /dev/null
-@@ -1,19 +0,0 @@
--package inmemory
--
--import (
--	"testing"
--
--	storagedriver "github.com/docker/distribution/registry/storage/driver"
--	"github.com/docker/distribution/registry/storage/driver/testsuites"
--	"gopkg.in/check.v1"
--)
--
--// Hook up gocheck into the "go test" runner.
--func Test(t *testing.T) { check.TestingT(t) }
--
--func init() {
--	inmemoryDriverConstructor := func() (storagedriver.StorageDriver, error) {
--		return New(), nil
--	}
--	testsuites.RegisterSuite(inmemoryDriverConstructor, testsuites.NeverSkip)
--}
--- 
-2.40.1
-
diff --git a/pkgs/applications/version-management/gitlab/gitlab-container-registry/default.nix b/pkgs/applications/version-management/gitlab/gitlab-container-registry/default.nix
index c92cc3e0ddeb..747e5ba1b811 100644
--- a/pkgs/applications/version-management/gitlab/gitlab-container-registry/default.nix
+++ b/pkgs/applications/version-management/gitlab/gitlab-container-registry/default.nix
@@ -2,7 +2,7 @@
 
 buildGoModule rec {
   pname = "gitlab-container-registry";
-  version = "3.93.0";
+  version = "4.1.0";
   rev = "v${version}-gitlab";
 
   # nixpkgs-update: no auto update
@@ -10,16 +10,15 @@ buildGoModule rec {
     owner = "gitlab-org";
     repo = "container-registry";
     inherit rev;
-    hash = "sha256-4jsnfkHXs9FSnyQ6JP/zmW51x8fHyQ0n+B8EPOoTSAA=";
+    hash = "sha256-t+i9IuBH94PpfriIAaqqWYZHxKJJDOedJ3BQXGEPp0A=";
   };
 
-  vendorHash = "sha256-KZWdM8Q8ipsgm7OoLyOuHo+4Vg2Nve+yZtTSUDgjOW4=";
-
-  patches = [
-    ./Disable-inmemory-storage-driver-test.patch
-  ];
+  vendorHash = "sha256-sybppXCoTrc196xLBW1+sUg9Y5uA0GAptlJ7RjhzuGc=";
 
   postPatch = ''
+    # Disable flaky inmemory storage driver test
+    rm registry/storage/driver/inmemory/driver_test.go
+
     substituteInPlace health/checks/checks_test.go \
       --replace \
         'func TestHTTPChecker(t *testing.T) {' \
diff --git a/pkgs/applications/version-management/gitlab/gitlab-pages/default.nix b/pkgs/applications/version-management/gitlab/gitlab-pages/default.nix
index 5ca4a1e561f1..1520fd383dcb 100644
--- a/pkgs/applications/version-management/gitlab/gitlab-pages/default.nix
+++ b/pkgs/applications/version-management/gitlab/gitlab-pages/default.nix
@@ -2,14 +2,14 @@
 
 buildGoModule rec {
   pname = "gitlab-pages";
-  version = "16.10.4";
+  version = "16.10.5";
 
   # nixpkgs-update: no auto update
   src = fetchFromGitLab {
     owner = "gitlab-org";
     repo = "gitlab-pages";
     rev = "v${version}";
-    hash = "sha256-Jdg1cxHra4lHvf8+cojaE9OXR40w24OiwMhDYvmUBkI=";
+    hash = "sha256-wuEYcwAKYO7YZs88NvE0AI5+aZ9JeLBAeXITc2jLGVo=";
   };
 
   vendorHash = "sha256-WrR4eZRAuYkhr7ZqP7OXqJ6uwvxzn+t+3OdBNcNaq0M=";
diff --git a/pkgs/applications/version-management/gitlab/gitlab-workhorse/default.nix b/pkgs/applications/version-management/gitlab/gitlab-workhorse/default.nix
index 98404f4a4f6d..0d0afde0766f 100644
--- a/pkgs/applications/version-management/gitlab/gitlab-workhorse/default.nix
+++ b/pkgs/applications/version-management/gitlab/gitlab-workhorse/default.nix
@@ -5,7 +5,7 @@ in
 buildGoModule rec {
   pname = "gitlab-workhorse";
 
-  version = "16.10.4";
+  version = "16.10.5";
 
   # nixpkgs-update: no auto update
   src = fetchFromGitLab {
diff --git a/pkgs/applications/version-management/gitnuro/default.nix b/pkgs/applications/version-management/gitnuro/default.nix
index e577cbaa6f61..d59287db4bb9 100644
--- a/pkgs/applications/version-management/gitnuro/default.nix
+++ b/pkgs/applications/version-management/gitnuro/default.nix
@@ -9,11 +9,11 @@
 
 stdenv.mkDerivation rec {
   pname = "gitnuro";
-  version = "1.1.1";
+  version = "1.3.1";
 
   src = fetchurl {
-    url = "https://github.com/JetpackDuba/Gitnuro/releases/download/v${version}/Gitnuro-linux-${version}.jar";
-    hash = "sha256-ugZBk/aQ2pjL9xY66g20MorAQ02GHIdJTv8ejadaBgY=";
+    url = "https://github.com/JetpackDuba/Gitnuro/releases/download/v${version}/Gitnuro-linux-x86_64-${version}.jar";
+    hash = "sha256-7yne9dD/7VT+H4tIBJvpOf8ksECCpoNAa8TSmFmjYMw=";
   };
 
   icon = fetchurl {
@@ -50,7 +50,7 @@ stdenv.mkDerivation rec {
     description = "A FOSS Git multiplatform client based on Compose and JGit";
     homepage = "https://gitnuro.com/";
     license = licenses.gpl3Plus;
-    platforms = platforms.unix;
+    platforms = [ "x86_64-linux" ];
     maintainers = with maintainers; [ zendo ];
     mainProgram = "gitnuro";
   };
diff --git a/pkgs/applications/version-management/gitsign/default.nix b/pkgs/applications/version-management/gitsign/default.nix
index dffb905a6fd5..d2c7b20aef87 100644
--- a/pkgs/applications/version-management/gitsign/default.nix
+++ b/pkgs/applications/version-management/gitsign/default.nix
@@ -2,15 +2,15 @@
 
 buildGoModule rec {
   pname = "gitsign";
-  version = "0.10.1";
+  version = "0.10.2";
 
   src = fetchFromGitHub {
     owner = "sigstore";
     repo = pname;
     rev = "v${version}";
-    hash = "sha256-WaiGkbjqty/MsTWPvx5DmmaNwWTJAEFKwVqArt2oZZc=";
+    hash = "sha256-JNCz5MVqn8PeTfYUVowIVZwtpfD+Gx9yBckter6PfXA=";
   };
-  vendorHash = "sha256-p2E010k7uozpLvl9VpfG5/JyQR4mVUBKv2p78UdFlac=";
+  vendorHash = "sha256-QW+ZWYEXkhSQR4HvmPLENzY/VEfjEX43mBPhmhsEBMI=";
 
   subPackages = [
     "."
diff --git a/pkgs/applications/version-management/hut/default.nix b/pkgs/applications/version-management/hut/default.nix
index 0a22f17fbf13..f1fc58b20da7 100644
--- a/pkgs/applications/version-management/hut/default.nix
+++ b/pkgs/applications/version-management/hut/default.nix
@@ -6,16 +6,16 @@
 
 buildGoModule rec {
   pname = "hut";
-  version = "0.4.0";
+  version = "0.5.0";
 
   src = fetchFromSourcehut {
     owner = "~emersion";
     repo = "hut";
     rev = "v${version}";
-    sha256 = "sha256-9RSJ+SRXYBjdiuHScgFm5i0/Xi81pJfURPKAGCk+l04=";
+    sha256 = "sha256-Gkxe9B48nwHOlqkgjMdFLBy7OiR7cwDDE3qLvWxJK+Y=";
   };
 
-  vendorHash = "sha256-OxnplvBx2sFctdNSVd0S0tgiRt5Yah3ga4mORT2Kz6U=";
+  vendorHash = "sha256-OYXRQEP4ACkypXmrorf2ew18819DB38SsYOM0u0steg=";
 
   nativeBuildInputs = [
     scdoc
diff --git a/pkgs/applications/version-management/jujutsu/default.nix b/pkgs/applications/version-management/jujutsu/default.nix
index 8b5580650b32..54a7617f2b0f 100644
--- a/pkgs/applications/version-management/jujutsu/default.nix
+++ b/pkgs/applications/version-management/jujutsu/default.nix
@@ -19,16 +19,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "jujutsu";
-  version = "0.16.0";
+  version = "0.17.1";
 
   src = fetchFromGitHub {
     owner = "martinvonz";
     repo = "jj";
     rev = "v${version}";
-    hash = "sha256-7bMyboF1JG/roFgo3cusYTi7qd2a6W+u1RJHgoBXNL0=";
+    hash = "sha256-3f/odQ5MgYGdPKUFqF90YGN84fXgG6BRkpN96TxJz1c=";
   };
 
-  cargoHash = "sha256-nPBHIUBm4bQLuj93kE8CUfzA34uUyapVjswz9FFCiTk=";
+  cargoHash = "sha256-N4UUouJfhKhosMBFVM0QEUNgkh7NFryXUoPmGVXcLGQ=";
 
   cargoBuildFlags = [ "--bin" "jj" ]; # don't install the fake editors
   useNextest = false; # nextest is the upstream integration framework, but is problematic for test skipping
diff --git a/pkgs/applications/version-management/meld/default.nix b/pkgs/applications/version-management/meld/default.nix
index 3b2f52f00774..f5e66083553c 100644
--- a/pkgs/applications/version-management/meld/default.nix
+++ b/pkgs/applications/version-management/meld/default.nix
@@ -5,7 +5,7 @@
 , python3
 , meson
 , ninja
-, wrapGAppsHook
+, wrapGAppsHook3
 , libxml2
 , pkg-config
 , desktop-file-utils
@@ -36,7 +36,7 @@ python3.pkgs.buildPythonApplication rec {
     pkg-config
     desktop-file-utils
     gobject-introspection
-    wrapGAppsHook
+    wrapGAppsHook3
     gtk3 # for gtk-update-icon-cache
   ];
 
diff --git a/pkgs/applications/version-management/pass-git-helper/default.nix b/pkgs/applications/version-management/pass-git-helper/default.nix
index 62e9a12a49df..5c7379c51a5d 100644
--- a/pkgs/applications/version-management/pass-git-helper/default.nix
+++ b/pkgs/applications/version-management/pass-git-helper/default.nix
@@ -2,13 +2,13 @@
 
 buildPythonApplication rec {
   pname   = "pass-git-helper";
-  version = "1.4.0";
+  version = "2.0.0";
 
   src = fetchFromGitHub {
     owner  = "languitar";
     repo   = "pass-git-helper";
     rev = "refs/tags/v${version}";
-    sha256 = "sha256-wkayj7SvT3SOM+rol17+8LQJR/YXSC6I+iKbHRUbdZc=";
+    sha256 = "sha256-IpMaCG6kPNrWtcl10Lh7A3PyIF4Mk0t2wLYON+zMLsE=";
   };
 
   propagatedBuildInputs = [ pyxdg ];
diff --git a/pkgs/applications/version-management/radicle-cli/Cargo.lock b/pkgs/applications/version-management/radicle-cli/Cargo.lock
deleted file mode 100644
index be6c304884ed..000000000000
--- a/pkgs/applications/version-management/radicle-cli/Cargo.lock
+++ /dev/null
@@ -1,6892 +0,0 @@
-# This file is automatically @generated by Cargo.
-# It is not intended for manual editing.
-version = 3
-
-[[package]]
-name = "Inflector"
-version = "0.11.4"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "fe438c63458706e03479442743baae6c88256498e6431708f6dfc520a26515d3"
-dependencies = [
- "lazy_static",
- "regex",
-]
-
-[[package]]
-name = "adler"
-version = "1.0.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f26201604c87b1e01bd3d98f8d5d9a8fcbb815e8cedb41ffccbeb4bf593a35fe"
-
-[[package]]
-name = "aead"
-version = "0.4.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0b613b8e1e3cf911a086f53f03bf286f52fd7a7258e4fa606f0ef220d39d8877"
-dependencies = [
- "generic-array 0.14.5",
-]
-
-[[package]]
-name = "aes"
-version = "0.7.5"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9e8b47f52ea9bae42228d07ec09eb676433d7c4ed1ebdf0f1d1c29ed446f1ab8"
-dependencies = [
- "cfg-if 1.0.0",
- "cipher",
- "cpufeatures",
- "opaque-debug 0.3.0",
-]
-
-[[package]]
-name = "ahash"
-version = "0.3.8"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e8fd72866655d1904d6b0997d0b07ba561047d070fbe29de039031c641b61217"
-
-[[package]]
-name = "ahash"
-version = "0.7.6"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "fcb51a0695d8f838b1ee009b3fbf66bda078cd64590202a864a8f3e8c4315c47"
-dependencies = [
- "getrandom 0.2.6",
- "once_cell",
- "serde",
- "version_check",
-]
-
-[[package]]
-name = "aho-corasick"
-version = "0.7.18"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1e37cfd5e7657ada45f742d6e99ca5788580b5c529dc78faf11ece6dc702656f"
-dependencies = [
- "memchr",
-]
-
-[[package]]
-name = "ansi_term"
-version = "0.12.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d52a9bb7ec0cf484c551830a7ce27bd20d67eac647e1befb56b0be4ee39a55d2"
-dependencies = [
- "winapi 0.3.9",
-]
-
-[[package]]
-name = "anyhow"
-version = "1.0.57"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "08f9b8508dccb7687a1d6c4ce66b2b0ecef467c94667de27d8d7fe1f8d2a9cdc"
-
-[[package]]
-name = "arc-swap"
-version = "1.5.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c5d78ce20460b82d3fa150275ed9d55e21064fc7951177baacf86a145c4a4b1f"
-
-[[package]]
-name = "arrayref"
-version = "0.3.6"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a4c527152e37cf757a3f78aae5a06fbeefdb07ccc535c980a3208ee3060dd544"
-
-[[package]]
-name = "arrayvec"
-version = "0.5.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "23b62fc65de8e4e7f52534fb52b0f3ed04746ae267519eef2a83941e8085068b"
-
-[[package]]
-name = "arrayvec"
-version = "0.7.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8da52d66c7071e2e3fa2a1e5c6d088fec47b593032b254f5e980de8ea54454d6"
-
-[[package]]
-name = "assay"
-version = "0.1.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8b6400785ccafeab7f18a4d23d726f9090dd1195386f06026c6e59db36e11938"
-dependencies = [
- "assay-proc-macro",
- "pretty_assertions",
- "rusty-fork",
- "tempfile",
- "tokio",
-]
-
-[[package]]
-name = "assay-proc-macro"
-version = "0.1.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5d94121b572ccf1d1b38a1004155e59c64f4c6ff7793070d84a8807e0550881e"
-dependencies = [
- "quote",
- "syn",
-]
-
-[[package]]
-name = "assert_cmd"
-version = "2.0.4"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "93ae1ddd39efd67689deb1979d80bad3bf7f2b09c6e6117c8d1f2443b5e2f83e"
-dependencies = [
- "bstr",
- "doc-comment",
- "predicates",
- "predicates-core",
- "predicates-tree",
- "wait-timeout",
-]
-
-[[package]]
-name = "async-channel"
-version = "1.6.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2114d64672151c0c5eaa5e131ec84a74f06e1e559830dabba01ca30605d66319"
-dependencies = [
- "concurrent-queue",
- "event-listener",
- "futures-core",
-]
-
-[[package]]
-name = "async-io"
-version = "1.6.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a811e6a479f2439f0c04038796b5cfb3d2ad56c230e0f2d3f7b04d68cfee607b"
-dependencies = [
- "concurrent-queue",
- "futures-lite",
- "libc",
- "log",
- "once_cell",
- "parking",
- "polling",
- "slab",
- "socket2 0.4.4",
- "waker-fn",
- "winapi 0.3.9",
-]
-
-[[package]]
-name = "async-lock"
-version = "2.5.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e97a171d191782fba31bb902b14ad94e24a68145032b7eedf871ab0bc0d077b6"
-dependencies = [
- "event-listener",
-]
-
-[[package]]
-name = "async-process"
-version = "1.4.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "cf2c06e30a24e8c78a3987d07f0930edf76ef35e027e7bdb063fccafdad1f60c"
-dependencies = [
- "async-io",
- "blocking",
- "cfg-if 1.0.0",
- "event-listener",
- "futures-lite",
- "libc",
- "once_cell",
- "signal-hook",
- "winapi 0.3.9",
-]
-
-[[package]]
-name = "async-stream"
-version = "0.3.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "dad5c83079eae9969be7fadefe640a1c566901f05ff91ab221de4b6f68d9507e"
-dependencies = [
- "async-stream-impl",
- "futures-core",
-]
-
-[[package]]
-name = "async-stream-impl"
-version = "0.3.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "10f203db73a71dfa2fb6dd22763990fa26f3d2625a6da2da900d23b87d26be27"
-dependencies = [
- "proc-macro2",
- "quote",
- "syn",
-]
-
-[[package]]
-name = "async-task"
-version = "4.2.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "30696a84d817107fc028e049980e09d5e140e8da8f1caeb17e8e950658a3cea9"
-
-[[package]]
-name = "async-trait"
-version = "0.1.53"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ed6aa3524a2dfcf9fe180c51eae2b58738348d819517ceadf95789c51fff7600"
-dependencies = [
- "proc-macro2",
- "quote",
- "syn",
-]
-
-[[package]]
-name = "async_io_stream"
-version = "0.3.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b6d7b9decdf35d8908a7e3ef02f64c5e9b1695e230154c0e8de3969142d9b94c"
-dependencies = [
- "futures",
- "pharos",
- "rustc_version",
-]
-
-[[package]]
-name = "atomic-waker"
-version = "1.0.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "065374052e7df7ee4047b1160cca5e1467a12351a40b3da123c870ba0b8eda2a"
-
-[[package]]
-name = "atty"
-version = "0.2.14"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d9b39be18770d11421cdb1b9947a45dd3f37e93092cbf377614828a319d5fee8"
-dependencies = [
- "hermit-abi",
- "libc",
- "winapi 0.3.9",
-]
-
-[[package]]
-name = "auto_impl"
-version = "0.5.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7862e21c893d65a1650125d157eaeec691439379a1cee17ee49031b79236ada4"
-dependencies = [
- "proc-macro-error",
- "proc-macro2",
- "quote",
- "syn",
-]
-
-[[package]]
-name = "autocfg"
-version = "1.1.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d468802bab17cbc0cc575e9b053f41e72aa36bfa6b7f55e3529ffa43161b97fa"
-
-[[package]]
-name = "automerge"
-version = "0.0.2"
-source = "git+https://github.com/automerge/automerge-rs.git?rev=e72571962b51c2f0726fb534890ef3b4f7c74dfc#e72571962b51c2f0726fb534890ef3b4f7c74dfc"
-dependencies = [
- "automerge-backend",
- "automerge-frontend",
- "automerge-protocol",
- "serde",
- "serde_json",
- "thiserror",
- "uuid",
-]
-
-[[package]]
-name = "automerge"
-version = "0.1.0"
-source = "git+https://github.com/automerge/automerge-rs?rev=291557a019acac283e54ea31a9fad81ed65736ab#291557a019acac283e54ea31a9fad81ed65736ab"
-dependencies = [
- "flate2",
- "fxhash",
- "hex",
- "itertools 0.10.3",
- "leb128",
- "nonzero_ext 0.2.0",
- "rand 0.8.5",
- "serde",
- "sha2 0.10.2",
- "smol_str",
- "thiserror",
- "tinyvec",
- "tracing",
- "uuid",
-]
-
-[[package]]
-name = "automerge-backend"
-version = "0.0.1"
-source = "git+https://github.com/automerge/automerge-rs.git?rev=e72571962b51c2f0726fb534890ef3b4f7c74dfc#e72571962b51c2f0726fb534890ef3b4f7c74dfc"
-dependencies = [
- "automerge-protocol",
- "flate2",
- "fxhash",
- "hex",
- "itertools 0.9.0",
- "js-sys",
- "leb128",
- "maplit",
- "nonzero_ext 0.2.0",
- "rand 0.8.5",
- "serde",
- "serde_json",
- "sha2 0.9.9",
- "smol_str",
- "thiserror",
- "tracing",
- "wasm-bindgen",
- "web-sys",
-]
-
-[[package]]
-name = "automerge-frontend"
-version = "0.1.0"
-source = "git+https://github.com/automerge/automerge-rs.git?rev=e72571962b51c2f0726fb534890ef3b4f7c74dfc#e72571962b51c2f0726fb534890ef3b4f7c74dfc"
-dependencies = [
- "automerge-protocol",
- "getrandom 0.2.6",
- "maplit",
- "serde",
- "serde_json",
- "smol_str",
- "thiserror",
- "unicode-segmentation",
- "uuid",
-]
-
-[[package]]
-name = "automerge-protocol"
-version = "0.1.0"
-source = "git+https://github.com/automerge/automerge-rs.git?rev=e72571962b51c2f0726fb534890ef3b4f7c74dfc#e72571962b51c2f0726fb534890ef3b4f7c74dfc"
-dependencies = [
- "hex",
- "serde",
- "smol_str",
- "strum",
- "thiserror",
- "tinyvec",
- "uuid",
-]
-
-[[package]]
-name = "backoff"
-version = "0.3.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9fe17f59a06fe8b87a6fc8bf53bb70b3aba76d7685f432487a68cd5552853625"
-dependencies = [
- "getrandom 0.2.6",
- "instant",
- "rand 0.8.5",
-]
-
-[[package]]
-name = "base-x"
-version = "0.2.10"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "dc19a4937b4fbd3fe3379793130e42060d10627a360f2127802b10b87e7baf74"
-
-[[package]]
-name = "base16ct"
-version = "0.1.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "349a06037c7bf932dd7e7d1f653678b2038b9ad46a74102f1fc7bd7872678cce"
-
-[[package]]
-name = "base58"
-version = "0.1.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5024ee8015f02155eee35c711107ddd9a9bf3cb689cf2a9089c97e79b6e1ae83"
-
-[[package]]
-name = "base58check"
-version = "0.1.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2ee2fe4c9a0c84515f136aaae2466744a721af6d63339c18689d9e995d74d99b"
-dependencies = [
- "base58",
- "sha2 0.8.2",
-]
-
-[[package]]
-name = "base64"
-version = "0.12.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3441f0f7b02788e948e47f457ca01f1d7e6d92c693bc132c22b087d3141c03ff"
-
-[[package]]
-name = "base64"
-version = "0.13.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "904dfeac50f3cdaba28fc6f57fdcddb75f49ed61346676a78c4ffe55877802fd"
-
-[[package]]
-name = "base64ct"
-version = "1.5.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "dea908e7347a8c64e378c17e30ef880ad73e3b4498346b055c2c00ea342f3179"
-
-[[package]]
-name = "bech32"
-version = "0.7.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2dabbe35f96fb9507f7330793dc490461b2962659ac5d427181e451a623751d1"
-
-[[package]]
-name = "bincode"
-version = "1.3.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b1f45e9417d87227c7a56d22e471c6206462cba514c7590c09aff4cf6d1ddcad"
-dependencies = [
- "serde",
-]
-
-[[package]]
-name = "bit-set"
-version = "0.5.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6e11e16035ea35e4e5997b393eacbf6f63983188f7a2ad25bfb13465f5ad59de"
-dependencies = [
- "bit-vec",
-]
-
-[[package]]
-name = "bit-vec"
-version = "0.6.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "349f9b6a179ed607305526ca489b34ad0a41aed5f7980fa90eb03160b69598fb"
-
-[[package]]
-name = "bitflags"
-version = "1.3.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a"
-
-[[package]]
-name = "bitmaps"
-version = "2.1.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "031043d04099746d8db04daf1fa424b2bc8bd69d92b25962dcde24da39ab64a2"
-dependencies = [
- "typenum",
-]
-
-[[package]]
-name = "bitvec"
-version = "0.17.4"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "41262f11d771fd4a61aa3ce019fca363b4b6c282fca9da2a31186d3965a47a5c"
-dependencies = [
- "either",
- "radium 0.3.0",
-]
-
-[[package]]
-name = "bitvec"
-version = "0.20.4"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7774144344a4faa177370406a7ff5f1da24303817368584c6206c8303eb07848"
-dependencies = [
- "funty",
- "radium 0.6.2",
- "tap",
- "wyz",
-]
-
-[[package]]
-name = "blake2"
-version = "0.9.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0a4e37d16930f5459780f5621038b6382b9bb37c19016f39fb6b5808d831f174"
-dependencies = [
- "crypto-mac 0.8.0",
- "digest 0.9.0",
- "opaque-debug 0.3.0",
-]
-
-[[package]]
-name = "blake2b_simd"
-version = "0.5.11"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "afa748e348ad3be8263be728124b24a24f268266f6f5d58af9d75f6a40b5c587"
-dependencies = [
- "arrayref",
- "arrayvec 0.5.2",
- "constant_time_eq",
-]
-
-[[package]]
-name = "blake2s_simd"
-version = "0.5.11"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9e461a7034e85b211a4acb57ee2e6730b32912b06c08cc242243c39fc21ae6a2"
-dependencies = [
- "arrayref",
- "arrayvec 0.5.2",
- "constant_time_eq",
-]
-
-[[package]]
-name = "blake3"
-version = "0.3.8"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b64485778c4f16a6a5a9d335e80d449ac6c70cdd6a06d2af18a6f6f775a125b3"
-dependencies = [
- "arrayref",
- "arrayvec 0.5.2",
- "cc",
- "cfg-if 0.1.10",
- "constant_time_eq",
- "crypto-mac 0.8.0",
- "digest 0.9.0",
-]
-
-[[package]]
-name = "block-buffer"
-version = "0.7.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c0940dc441f31689269e10ac70eb1002a3a1d3ad1390e030043662eb7fe4688b"
-dependencies = [
- "block-padding 0.1.5",
- "byte-tools",
- "byteorder",
- "generic-array 0.12.4",
-]
-
-[[package]]
-name = "block-buffer"
-version = "0.9.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4152116fd6e9dadb291ae18fc1ec3575ed6d84c29642d97890f4b4a3417297e4"
-dependencies = [
- "block-padding 0.2.1",
- "generic-array 0.14.5",
-]
-
-[[package]]
-name = "block-buffer"
-version = "0.10.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0bf7fe51849ea569fd452f37822f606a5cabb684dc918707a0193fd4664ff324"
-dependencies = [
- "generic-array 0.14.5",
-]
-
-[[package]]
-name = "block-padding"
-version = "0.1.5"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "fa79dedbb091f449f1f39e53edf88d5dbe95f895dae6135a8d7b881fb5af73f5"
-dependencies = [
- "byte-tools",
-]
-
-[[package]]
-name = "block-padding"
-version = "0.2.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8d696c370c750c948ada61c69a0ee2cbbb9c50b1019ddb86d9317157a99c2cae"
-
-[[package]]
-name = "blocking"
-version = "1.2.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c6ccb65d468978a086b69884437ded69a90faab3bbe6e67f242173ea728acccc"
-dependencies = [
- "async-channel",
- "async-task",
- "atomic-waker",
- "fastrand",
- "futures-lite",
- "once_cell",
-]
-
-[[package]]
-name = "bloom-filters"
-version = "0.1.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4f178e62ed3e8b7338f2cb581fc19bebcbc0814e009f305ab1d6954ff15a4b99"
-dependencies = [
- "rand 0.8.5",
-]
-
-[[package]]
-name = "bs58"
-version = "0.4.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "771fe0050b883fcc3ea2359b1a96bcfbc090b7116eae7c3c512c7a083fdf23d3"
-
-[[package]]
-name = "bstr"
-version = "0.2.17"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ba3569f383e8f1598449f1a423e72e99569137b47740b1da11ef19af3d5c3223"
-dependencies = [
- "lazy_static",
- "memchr",
- "regex-automata",
-]
-
-[[package]]
-name = "btoi"
-version = "0.4.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "97c0869a9faa81f8bbf8102371105d6d0a7b79167a04c340b04ab16892246a11"
-dependencies = [
- "num-traits",
-]
-
-[[package]]
-name = "bumpalo"
-version = "3.9.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a4a45a46ab1f2412e53d3a0ade76ffad2025804294569aae387231a0cd6e0899"
-
-[[package]]
-name = "byte-slice-cast"
-version = "1.2.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "87c5fdd0166095e1d463fc6cc01aa8ce547ad77a4e84d42eb6762b084e28067e"
-
-[[package]]
-name = "byte-tools"
-version = "0.3.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e3b5ca7a04898ad4bcd41c90c5285445ff5b791899bb1b0abdd2a2aa791211d7"
-
-[[package]]
-name = "bytecount"
-version = "0.6.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "72feb31ffc86498dacdbd0fcebb56138e7177a8cc5cea4516031d15ae85a742e"
-
-[[package]]
-name = "bytemuck"
-version = "1.9.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "cdead85bdec19c194affaeeb670c0e41fe23de31459efd1c174d049269cf02cc"
-
-[[package]]
-name = "byteorder"
-version = "1.4.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "14c189c53d098945499cdfa7ecc63567cf3886b3332b312a5b4585d8d3a6a610"
-
-[[package]]
-name = "bytes"
-version = "0.4.12"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "206fdffcfa2df7cbe15601ef46c813fce0965eb3286db6b56c583b814b51c81c"
-dependencies = [
- "byteorder",
- "iovec",
-]
-
-[[package]]
-name = "bytes"
-version = "0.5.6"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0e4cec68f03f32e44924783795810fa50a7035d8c8ebe78580ad7e6c703fba38"
-
-[[package]]
-name = "bytes"
-version = "1.1.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c4872d67bab6358e59559027aa3b9157c53d9358c51423c17554809a8858e0f8"
-dependencies = [
- "serde",
-]
-
-[[package]]
-name = "bytesize"
-version = "1.1.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6c58ec36aac5066d5ca17df51b3e70279f5670a72102f5752cb7e7c856adfc70"
-
-[[package]]
-name = "cache-padded"
-version = "1.2.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c1db59621ec70f09c5e9b597b220c7a2b43611f4710dc03ceb8748637775692c"
-
-[[package]]
-name = "camino"
-version = "1.0.7"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6f3132262930b0522068049f5870a856ab8affc80c70d08b6ecb785771a6fc23"
-dependencies = [
- "serde",
-]
-
-[[package]]
-name = "cargo-platform"
-version = "0.1.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "cbdb825da8a5df079a43676dbe042702f1707b1109f713a01420fbb4cc71fa27"
-dependencies = [
- "serde",
-]
-
-[[package]]
-name = "cargo_metadata"
-version = "0.14.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4acbb09d9ee8e23699b9634375c72795d095bf268439da88562cf9b501f181fa"
-dependencies = [
- "camino",
- "cargo-platform",
- "semver",
- "serde",
- "serde_json",
-]
-
-[[package]]
-name = "cc"
-version = "1.0.73"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2fff2a6927b3bb87f9595d67196a70493f627687a71d87a0d692242c33f58c11"
-dependencies = [
- "jobserver",
-]
-
-[[package]]
-name = "cfg-if"
-version = "0.1.10"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4785bdd1c96b2a846b2bd7cc02e86b6b3dbf14e7e53446c4f54c92a361040822"
-
-[[package]]
-name = "cfg-if"
-version = "1.0.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd"
-
-[[package]]
-name = "chacha20"
-version = "0.8.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "01b72a433d0cf2aef113ba70f62634c56fddb0f244e6377185c56a7cadbd8f91"
-dependencies = [
- "cfg-if 1.0.0",
- "cipher",
- "cpufeatures",
- "zeroize",
-]
-
-[[package]]
-name = "chacha20poly1305"
-version = "0.9.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3b84ed6d1d5f7aa9bdde921a5090e0ca4d934d250ea3b402a5fab3a994e28a2a"
-dependencies = [
- "aead",
- "chacha20",
- "cipher",
- "poly1305",
- "zeroize",
-]
-
-[[package]]
-name = "checked_int_cast"
-version = "1.0.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "17cc5e6b5ab06331c33589842070416baa137e8b0eb912b008cfd4a78ada7919"
-
-[[package]]
-name = "chrono"
-version = "0.4.19"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "670ad68c9088c2a963aaa298cb369688cf3f9465ce5e2d4ca10e6e0098a1ce73"
-dependencies = [
- "libc",
- "num-integer",
- "num-traits",
- "time 0.1.43",
- "winapi 0.3.9",
-]
-
-[[package]]
-name = "chunked_transfer"
-version = "1.4.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "fff857943da45f546682664a79488be82e69e43c1a7a2307679ab9afb3a66d2e"
-
-[[package]]
-name = "cipher"
-version = "0.3.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7ee52072ec15386f770805afd189a01c8841be8696bed250fa2f13c4c0d6dfb7"
-dependencies = [
- "generic-array 0.14.5",
-]
-
-[[package]]
-name = "clap"
-version = "3.1.14"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "535434c063ced786eb04aaf529308092c5ab60889e8fe24275d15de07b01fa97"
-dependencies = [
- "atty",
- "bitflags",
- "clap_derive",
- "clap_lex",
- "indexmap",
- "lazy_static",
- "strsim",
- "termcolor",
- "textwrap",
-]
-
-[[package]]
-name = "clap_derive"
-version = "3.1.7"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a3aab4734e083b809aaf5794e14e756d1c798d2c69c7f7de7a09a2f5214993c1"
-dependencies = [
- "heck 0.4.0",
- "proc-macro-error",
- "proc-macro2",
- "quote",
- "syn",
-]
-
-[[package]]
-name = "clap_lex"
-version = "0.2.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a37c35f1112dad5e6e0b1adaff798507497a18fceeb30cceb3bae7d1427b9213"
-dependencies = [
- "os_str_bytes 6.0.0",
-]
-
-[[package]]
-name = "clru"
-version = "0.5.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "218d6bd3dde8e442a975fa1cd233c0e5fded7596bccfe39f58eca98d22421e0a"
-
-[[package]]
-name = "cmake"
-version = "0.1.48"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e8ad8cef104ac57b68b89df3208164d228503abbdce70f6880ffa3d970e7443a"
-dependencies = [
- "cc",
-]
-
-[[package]]
-name = "cob"
-version = "0.1.0"
-source = "git+https://github.com/radicle-dev/radicle-link?rev=a9485b78b5c78d252c92f61d990cf34622d1c8f1#a9485b78b5c78d252c92f61d990cf34622d1c8f1"
-dependencies = [
- "automerge 0.0.2",
- "either",
- "git-trailers",
- "git2",
- "jsonschema",
- "lazy_static",
- "link-crypto",
- "link-identities",
- "lru",
- "minicbor",
- "multibase",
- "multihash 0.11.4",
- "petgraph",
- "radicle-git-ext",
- "regex",
- "serde",
- "serde_json",
- "tempfile",
- "thiserror",
- "toml",
- "tracing",
-]
-
-[[package]]
-name = "coins-bip32"
-version = "0.3.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "01b669993c632e5fec4a297085ec57381f53e4646c123cb77a7ca754e005c921"
-dependencies = [
- "bincode",
- "bs58",
- "coins-core",
- "digest 0.9.0",
- "hmac",
- "k256 0.9.6",
- "lazy_static",
- "serde",
- "sha2 0.9.9",
- "thiserror",
-]
-
-[[package]]
-name = "coins-bip32"
-version = "0.6.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "471b39eadc9323de375dce5eff149a5a1ebd21c67f1da34a56f87ee62191d4ea"
-dependencies = [
- "bincode",
- "bs58",
- "coins-core",
- "digest 0.9.0",
- "getrandom 0.2.6",
- "hmac",
- "k256 0.10.4",
- "lazy_static",
- "serde",
- "sha2 0.9.9",
- "thiserror",
-]
-
-[[package]]
-name = "coins-bip39"
-version = "0.3.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "38426029442f91bd49973d6f59f28e3dbb14e633e3019ac4ec6bce402c44f81c"
-dependencies = [
- "bitvec 0.17.4",
- "coins-bip32 0.3.0",
- "getrandom 0.2.6",
- "hex",
- "hmac",
- "pbkdf2 0.8.0",
- "rand 0.8.5",
- "sha2 0.9.9",
- "thiserror",
-]
-
-[[package]]
-name = "coins-core"
-version = "0.2.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d257d975731955ee86fa7f348000c3fea09c262e84c70c11e994a85aa4f467a7"
-dependencies = [
- "base58check",
- "base64 0.12.3",
- "bech32",
- "blake2",
- "digest 0.9.0",
- "generic-array 0.14.5",
- "hex",
- "ripemd160",
- "serde",
- "serde_derive",
- "sha2 0.9.9",
- "sha3",
- "thiserror",
-]
-
-[[package]]
-name = "coins-ledger"
-version = "0.4.5"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "33c8e824e53993514a62d2012e6e20cacf7c7761dea19824036f37dc0407b9bb"
-dependencies = [
- "async-trait",
- "blake2b_simd",
- "byteorder",
- "cfg-if 0.1.10",
- "futures",
- "hidapi-rusb",
- "js-sys",
- "lazy_static",
- "libc",
- "log",
- "matches",
- "nix 0.13.1",
- "serde",
- "thiserror",
- "wasm-bindgen",
- "wasm-bindgen-futures",
-]
-
-[[package]]
-name = "color_quant"
-version = "1.1.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3d7b894f5411737b7867f4827955924d7c254fc9f4d91a6aad6b097804b1018b"
-
-[[package]]
-name = "colored"
-version = "1.9.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f4ffc801dacf156c5854b9df4f425a626539c3a6ef7893cc0c5084a23f0b6c59"
-dependencies = [
- "atty",
- "lazy_static",
- "winapi 0.3.9",
-]
-
-[[package]]
-name = "colored"
-version = "2.0.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b3616f750b84d8f0de8a58bda93e08e2a81ad3f523089b05f1dffecab48c6cbd"
-dependencies = [
- "atty",
- "lazy_static",
- "winapi 0.3.9",
-]
-
-[[package]]
-name = "colored_json"
-version = "2.1.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1fd32eb54d016e203b7c2600e3a7802c75843a92e38ccc4869aefeca21771a64"
-dependencies = [
- "ansi_term",
- "atty",
- "libc",
- "serde",
- "serde_json",
-]
-
-[[package]]
-name = "concurrent-queue"
-version = "1.2.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "30ed07550be01594c6026cff2a1d7fe9c8f683caa798e12b68694ac9e88286a3"
-dependencies = [
- "cache-padded",
-]
-
-[[package]]
-name = "console"
-version = "0.15.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a28b32d32ca44b70c3e4acd7db1babf555fa026e385fb95f18028f88848b3c31"
-dependencies = [
- "encode_unicode",
- "libc",
- "once_cell",
- "regex",
- "terminal_size",
- "unicode-width",
- "winapi 0.3.9",
-]
-
-[[package]]
-name = "const-oid"
-version = "0.6.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9d6f2aa4d0537bcc1c74df8755072bd31c1ef1a3a1b85a68e8404a8c353b7b8b"
-
-[[package]]
-name = "const-oid"
-version = "0.7.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e4c78c047431fee22c1a7bb92e00ad095a02a983affe4d8a72e2a2c62c1b94f3"
-
-[[package]]
-name = "constant_time_eq"
-version = "0.1.5"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "245097e9a4535ee1e3e3931fcfcd55a796a44c643e8596ff6566d68f09b87bbc"
-
-[[package]]
-name = "convert_case"
-version = "0.4.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6245d59a3e82a7fc217c5828a6692dbc6dfb63a0c8c90495621f7b9d79704a0e"
-
-[[package]]
-name = "core-foundation"
-version = "0.9.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "194a7a9e6de53fa55116934067c844d9d749312f75c6f6d0980e8c252f8c2146"
-dependencies = [
- "core-foundation-sys",
- "libc",
-]
-
-[[package]]
-name = "core-foundation-sys"
-version = "0.8.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5827cebf4670468b8772dd191856768aedcb1b0278a04f989f7766351917b9dc"
-
-[[package]]
-name = "cpufeatures"
-version = "0.2.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "59a6001667ab124aebae2a495118e11d30984c3a653e99d86d58971708cf5e4b"
-dependencies = [
- "libc",
-]
-
-[[package]]
-name = "crc32fast"
-version = "1.3.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b540bd8bc810d3885c6ea91e2018302f68baba2129ab3e88f32389ee9370880d"
-dependencies = [
- "cfg-if 1.0.0",
-]
-
-[[package]]
-name = "crossbeam"
-version = "0.8.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4ae5588f6b3c3cb05239e90bd110f257254aecd01e4635400391aeae07497845"
-dependencies = [
- "cfg-if 1.0.0",
- "crossbeam-channel",
- "crossbeam-deque",
- "crossbeam-epoch",
- "crossbeam-queue",
- "crossbeam-utils",
-]
-
-[[package]]
-name = "crossbeam-channel"
-version = "0.5.4"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5aaa7bd5fb665c6864b5f963dd9097905c54125909c7aa94c9e18507cdbe6c53"
-dependencies = [
- "cfg-if 1.0.0",
- "crossbeam-utils",
-]
-
-[[package]]
-name = "crossbeam-deque"
-version = "0.8.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6455c0ca19f0d2fbf751b908d5c55c1f5cbc65e03c4225427254b46890bdde1e"
-dependencies = [
- "cfg-if 1.0.0",
- "crossbeam-epoch",
- "crossbeam-utils",
-]
-
-[[package]]
-name = "crossbeam-epoch"
-version = "0.9.8"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1145cf131a2c6ba0615079ab6a638f7e1973ac9c2634fcbeaaad6114246efe8c"
-dependencies = [
- "autocfg",
- "cfg-if 1.0.0",
- "crossbeam-utils",
- "lazy_static",
- "memoffset",
- "scopeguard",
-]
-
-[[package]]
-name = "crossbeam-queue"
-version = "0.3.5"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1f25d8400f4a7a5778f0e4e52384a48cbd9b5c495d110786187fc750075277a2"
-dependencies = [
- "cfg-if 1.0.0",
- "crossbeam-utils",
-]
-
-[[package]]
-name = "crossbeam-utils"
-version = "0.8.8"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0bf124c720b7686e3c2663cf54062ab0f68a88af2fb6a030e87e30bf721fcb38"
-dependencies = [
- "cfg-if 1.0.0",
- "lazy_static",
-]
-
-[[package]]
-name = "crunchy"
-version = "0.2.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7a81dae078cea95a014a339291cec439d2f232ebe854a9d672b796c6afafa9b7"
-
-[[package]]
-name = "crypto-bigint"
-version = "0.2.11"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f83bd3bb4314701c568e340cd8cf78c975aa0ca79e03d3f6d1677d5b0c9c0c03"
-dependencies = [
- "generic-array 0.14.5",
- "rand_core 0.6.3",
- "subtle",
- "zeroize",
-]
-
-[[package]]
-name = "crypto-bigint"
-version = "0.3.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "03c6a1d5fa1de37e071642dfa44ec552ca5b299adb128fab16138e24b548fd21"
-dependencies = [
- "generic-array 0.14.5",
- "rand_core 0.6.3",
- "subtle",
- "zeroize",
-]
-
-[[package]]
-name = "crypto-common"
-version = "0.1.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "57952ca27b5e3606ff4dd79b0020231aaf9d6aa76dc05fd30137538c50bd3ce8"
-dependencies = [
- "generic-array 0.14.5",
- "typenum",
-]
-
-[[package]]
-name = "crypto-mac"
-version = "0.8.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b584a330336237c1eecd3e94266efb216c56ed91225d634cb2991c5f3fd1aeab"
-dependencies = [
- "generic-array 0.14.5",
- "subtle",
-]
-
-[[package]]
-name = "crypto-mac"
-version = "0.11.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b1d1a86f49236c215f271d40892d5fc950490551400b02ef360692c29815c714"
-dependencies = [
- "generic-array 0.14.5",
- "subtle",
-]
-
-[[package]]
-name = "ctor"
-version = "0.1.22"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f877be4f7c9f246b183111634f75baa039715e3f46ce860677d3b19a69fb229c"
-dependencies = [
- "quote",
- "syn",
-]
-
-[[package]]
-name = "ctr"
-version = "0.7.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a232f92a03f37dd7d7dd2adc67166c77e9cd88de5b019b9a9eecfaeaf7bfd481"
-dependencies = [
- "cipher",
-]
-
-[[package]]
-name = "curve25519-dalek"
-version = "3.2.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0b9fdf9972b2bd6af2d913799d9ebc165ea4d2e65878e329d9c6b372c4491b61"
-dependencies = [
- "byteorder",
- "digest 0.9.0",
- "rand_core 0.5.1",
- "subtle",
- "zeroize",
-]
-
-[[package]]
-name = "dashmap"
-version = "4.0.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e77a43b28d0668df09411cb0bc9a8c2adc40f9a048afe863e05fd43251e8e39c"
-dependencies = [
- "cfg-if 1.0.0",
- "num_cpus",
-]
-
-[[package]]
-name = "dashmap"
-version = "5.3.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "94b5a84352d6654d195b2365e38b5a7eacfdca4ad1b375196a1f76c6d7dd01ce"
-dependencies = [
- "cfg-if 1.0.0",
- "hashbrown 0.12.0",
- "lock_api",
-]
-
-[[package]]
-name = "data-encoding"
-version = "2.3.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3ee2393c4a91429dffb4bedf19f4d6abf27d8a732c8ce4980305d782e5426d57"
-
-[[package]]
-name = "data-encoding-macro"
-version = "0.1.12"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "86927b7cd2fe88fa698b87404b287ab98d1a0063a34071d92e575b72d3029aca"
-dependencies = [
- "data-encoding",
- "data-encoding-macro-internal",
-]
-
-[[package]]
-name = "data-encoding-macro-internal"
-version = "0.1.10"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a5bbed42daaa95e780b60a50546aa345b8413a1e46f9a40a12907d3598f038db"
-dependencies = [
- "data-encoding",
- "syn",
-]
-
-[[package]]
-name = "deadpool"
-version = "0.7.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3d126179d86aee4556e54f5f3c6bf6d9884e7cc52cef82f77ee6f90a7747616d"
-dependencies = [
- "async-trait",
- "crossbeam-queue",
- "num_cpus",
- "tokio",
-]
-
-[[package]]
-name = "der"
-version = "0.4.5"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "79b71cca7d95d7681a4b3b9cdf63c8dbc3730d0584c2c74e31416d64a90493f4"
-dependencies = [
- "const-oid 0.6.2",
-]
-
-[[package]]
-name = "der"
-version = "0.5.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6919815d73839e7ad218de758883aae3a257ba6759ce7a9992501efbb53d705c"
-dependencies = [
- "const-oid 0.7.1",
-]
-
-[[package]]
-name = "dialoguer"
-version = "0.10.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d8c8ae48e400addc32a8710c8d62d55cb84249a7d58ac4cd959daecfbaddc545"
-dependencies = [
- "console",
- "tempfile",
- "zeroize",
-]
-
-[[package]]
-name = "diff"
-version = "0.1.12"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0e25ea47919b1560c4e3b7fe0aaab9becf5b84a10325ddf7db0f0ba5e1026499"
-
-[[package]]
-name = "difflib"
-version = "0.4.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6184e33543162437515c2e2b48714794e37845ec9851711914eec9d308f6ebe8"
-
-[[package]]
-name = "digest"
-version = "0.8.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f3d0c8c8752312f9713efd397ff63acb9f85585afbf179282e720e7704954dd5"
-dependencies = [
- "generic-array 0.12.4",
-]
-
-[[package]]
-name = "digest"
-version = "0.9.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d3dd60d1080a57a05ab032377049e0591415d2b31afd7028356dbf3cc6dcb066"
-dependencies = [
- "generic-array 0.14.5",
-]
-
-[[package]]
-name = "digest"
-version = "0.10.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f2fb860ca6fafa5552fb6d0e816a69c8e49f0908bf524e30a90d97c85892d506"
-dependencies = [
- "block-buffer 0.10.2",
- "crypto-common",
-]
-
-[[package]]
-name = "directories"
-version = "3.0.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e69600ff1703123957937708eb27f7a564e48885c537782722ed0ba3189ce1d7"
-dependencies = [
- "dirs-sys",
-]
-
-[[package]]
-name = "dirs"
-version = "2.0.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "13aea89a5c93364a98e9b37b2fa237effbb694d5cfe01c5b70941f7eb087d5e3"
-dependencies = [
- "cfg-if 0.1.10",
- "dirs-sys",
-]
-
-[[package]]
-name = "dirs-sys"
-version = "0.3.7"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1b1d1d91c932ef41c0f2663aa8b0ca0342d444d842c06914aa0a7e352d0bada6"
-dependencies = [
- "libc",
- "redox_users",
- "winapi 0.3.9",
-]
-
-[[package]]
-name = "doc-comment"
-version = "0.3.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "fea41bba32d969b513997752735605054bc0dfa92b4c56bf1189f2e174be7a10"
-
-[[package]]
-name = "dyn-clone"
-version = "1.0.5"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "21e50f3adc76d6a43f5ed73b698a87d0760ca74617f60f7c3b879003536fdd28"
-
-[[package]]
-name = "ecdsa"
-version = "0.12.4"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "43ee23aa5b4f68c7a092b5c3beb25f50c406adc75e2363634f242f28ab255372"
-dependencies = [
- "der 0.4.5",
- "elliptic-curve 0.10.6",
- "hmac",
- "signature",
-]
-
-[[package]]
-name = "ecdsa"
-version = "0.13.4"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d0d69ae62e0ce582d56380743515fefaf1a8c70cec685d9677636d7e30ae9dc9"
-dependencies = [
- "der 0.5.1",
- "elliptic-curve 0.11.12",
- "rfc6979",
- "signature",
-]
-
-[[package]]
-name = "ed25519-zebra"
-version = "3.0.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "403ef3e961ab98f0ba902771d29f842058578bb1ce7e3c59dad5a6a93e784c69"
-dependencies = [
- "curve25519-dalek",
- "hex",
- "rand_core 0.6.3",
- "serde",
- "sha2 0.9.9",
- "thiserror",
- "zeroize",
-]
-
-[[package]]
-name = "either"
-version = "1.6.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e78d4f1cc4ae33bbfc157ed5d5a5ef3bc29227303d595861deb238fcec4e9457"
-dependencies = [
- "serde",
-]
-
-[[package]]
-name = "elliptic-curve"
-version = "0.10.6"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "beca177dcb8eb540133e7680baff45e7cc4d93bf22002676cec549f82343721b"
-dependencies = [
- "crypto-bigint 0.2.11",
- "ff 0.10.1",
- "generic-array 0.14.5",
- "group 0.10.0",
- "pkcs8 0.7.6",
- "rand_core 0.6.3",
- "subtle",
- "zeroize",
-]
-
-[[package]]
-name = "elliptic-curve"
-version = "0.11.12"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "25b477563c2bfed38a3b7a60964c49e058b2510ad3f12ba3483fd8f62c2306d6"
-dependencies = [
- "base16ct",
- "crypto-bigint 0.3.2",
- "der 0.5.1",
- "ff 0.11.0",
- "generic-array 0.14.5",
- "group 0.11.0",
- "rand_core 0.6.3",
- "sec1",
- "subtle",
- "zeroize",
-]
-
-[[package]]
-name = "encode_unicode"
-version = "0.3.6"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a357d28ed41a50f9c765dbfe56cbc04a64e53e5fc58ba79fbc34c10ef3df831f"
-
-[[package]]
-name = "encoding_rs"
-version = "0.8.31"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9852635589dc9f9ea1b6fe9f05b50ef208c85c834a562f0c6abb1c475736ec2b"
-dependencies = [
- "cfg-if 1.0.0",
-]
-
-[[package]]
-name = "env_logger"
-version = "0.8.4"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a19187fea3ac7e84da7dacf48de0c45d63c6a76f9490dae389aead16c243fce3"
-dependencies = [
- "log",
- "regex",
-]
-
-[[package]]
-name = "eth-keystore"
-version = "0.3.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d47d900a7dea08593d398104f8288e37858b0ad714c8d08cd03fdb86563e6402"
-dependencies = [
- "aes",
- "ctr",
- "digest 0.9.0",
- "hex",
- "hmac",
- "pbkdf2 0.8.0",
- "rand 0.8.5",
- "scrypt 0.7.0",
- "serde",
- "serde_json",
- "sha2 0.9.9",
- "sha3",
- "thiserror",
- "uuid",
-]
-
-[[package]]
-name = "ethabi"
-version = "15.0.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f76ef192b63e8a44b3d08832acebbb984c3fba154b5c26f70037c860202a0d4b"
-dependencies = [
- "anyhow",
- "ethereum-types",
- "hex",
- "serde",
- "serde_json",
- "sha3",
- "thiserror",
- "uint",
-]
-
-[[package]]
-name = "ethbloom"
-version = "0.11.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "bfb684ac8fa8f6c5759f788862bb22ec6fe3cb392f6bfd08e3c64b603661e3f8"
-dependencies = [
- "crunchy",
- "fixed-hash",
- "impl-rlp",
- "impl-serde",
- "tiny-keccak",
-]
-
-[[package]]
-name = "ethereum-types"
-version = "0.12.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "05136f7057fe789f06e6d41d07b34e6f70d8c86e5693b60f97aaa6553553bdaf"
-dependencies = [
- "ethbloom",
- "fixed-hash",
- "impl-rlp",
- "impl-serde",
- "primitive-types",
- "uint",
-]
-
-[[package]]
-name = "ethers"
-version = "0.6.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "59989141d334913ea2784f923e014ff9f7da373455aa12f884ab5f71378eb465"
-dependencies = [
- "ethers-contract",
- "ethers-core",
- "ethers-etherscan",
- "ethers-middleware",
- "ethers-providers",
- "ethers-signers",
- "ethers-solc",
-]
-
-[[package]]
-name = "ethers-contract"
-version = "0.6.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a0c49f7c627973e1fcb46404d7846b3bc6c2a7a33616628258f61d26c6e6b89a"
-dependencies = [
- "ethers-contract-abigen",
- "ethers-contract-derive",
- "ethers-core",
- "ethers-providers",
- "futures-util",
- "hex",
- "once_cell",
- "pin-project 1.0.10",
- "serde",
- "serde_json",
- "thiserror",
-]
-
-[[package]]
-name = "ethers-contract-abigen"
-version = "0.6.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "658ab90a1fc5f338e8bf6fa6cd614ef4c8d573da40d0c89f45d21c595bda5f3b"
-dependencies = [
- "Inflector",
- "anyhow",
- "cfg-if 1.0.0",
- "ethers-core",
- "getrandom 0.2.6",
- "hex",
- "once_cell",
- "proc-macro2",
- "quote",
- "reqwest",
- "serde",
- "serde_json",
- "syn",
- "url",
-]
-
-[[package]]
-name = "ethers-contract-derive"
-version = "0.6.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f974650dae34a335f3e2f32166be0739d7f87c3825842ad6f8195164cb5ea433"
-dependencies = [
- "ethers-contract-abigen",
- "ethers-core",
- "hex",
- "proc-macro2",
- "quote",
- "serde_json",
- "syn",
-]
-
-[[package]]
-name = "ethers-core"
-version = "0.6.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f15e1a2a54bc6bc3f8ea94afafbb374264f8322fcacdae06fefda80a206739ac"
-dependencies = [
- "arrayvec 0.7.2",
- "bytes 1.1.0",
- "cargo_metadata",
- "convert_case",
- "ecdsa 0.12.4",
- "elliptic-curve 0.11.12",
- "ethabi",
- "generic-array 0.14.5",
- "hex",
- "k256 0.9.6",
- "once_cell",
- "proc-macro2",
- "quote",
- "rand 0.8.5",
- "rlp",
- "rlp-derive",
- "serde",
- "serde_json",
- "syn",
- "thiserror",
- "tiny-keccak",
-]
-
-[[package]]
-name = "ethers-etherscan"
-version = "0.2.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "fa6bfff9fc96e83d3a25390fe7a505b6c1ae4290314251bf0825cfed90d1b750"
-dependencies = [
- "ethers-core",
- "reqwest",
- "serde",
- "serde-aux",
- "serde_json",
- "thiserror",
-]
-
-[[package]]
-name = "ethers-middleware"
-version = "0.6.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5d3831e5e98736715e848ec966dd76ce216a8e4f531f7d3e09ef43eead1c63df"
-dependencies = [
- "async-trait",
- "ethers-contract",
- "ethers-core",
- "ethers-etherscan",
- "ethers-providers",
- "ethers-signers",
- "futures-util",
- "instant",
- "reqwest",
- "serde",
- "serde_json",
- "thiserror",
- "tokio",
- "tracing",
- "tracing-futures",
- "url",
-]
-
-[[package]]
-name = "ethers-providers"
-version = "0.6.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e68d511a99f39a26c9b32a6f62360789ba0e214d8f4c012bf1fbdc7b00da0e4f"
-dependencies = [
- "async-trait",
- "auto_impl",
- "ethers-core",
- "futures-channel",
- "futures-core",
- "futures-timer",
- "futures-util",
- "hex",
- "parking_lot 0.11.2",
- "pin-project 1.0.10",
- "reqwest",
- "serde",
- "serde_json",
- "thiserror",
- "tracing",
- "tracing-futures",
- "url",
- "wasm-bindgen",
- "wasm-bindgen-futures",
- "wasm-timer",
- "web-sys",
- "ws_stream_wasm",
-]
-
-[[package]]
-name = "ethers-signers"
-version = "0.6.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d9e76778f397d5185bb09d9ea4238f41880394e4fb3b6d5fdc75541c0a70df55"
-dependencies = [
- "async-trait",
- "coins-bip32 0.3.0",
- "coins-bip39",
- "coins-ledger",
- "elliptic-curve 0.11.12",
- "eth-keystore",
- "ethers-core",
- "futures-executor",
- "futures-util",
- "hex",
- "rand 0.8.5",
- "semver",
- "sha2 0.9.9",
- "thiserror",
-]
-
-[[package]]
-name = "ethers-solc"
-version = "0.1.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "16b73d8386c8a965c90a4fd3accea7e409d20051f613950efa9c442560bd4f03"
-dependencies = [
- "colored 2.0.0",
- "ethers-core",
- "getrandom 0.2.6",
- "glob",
- "hex",
- "home",
- "md-5",
- "once_cell",
- "regex",
- "semver",
- "serde",
- "serde_json",
- "sha2 0.9.9",
- "thiserror",
- "tracing",
- "walkdir",
-]
-
-[[package]]
-name = "event-listener"
-version = "2.5.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "77f3309417938f28bf8228fcff79a4a37103981e3e186d2ccd19c74b38f4eb71"
-
-[[package]]
-name = "fake-simd"
-version = "0.1.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e88a8acf291dafb59c2d96e8f59828f3838bb1a70398823ade51a84de6a6deed"
-
-[[package]]
-name = "fancy-regex"
-version = "0.7.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9d6b8560a05112eb52f04b00e5d3790c0dd75d9d980eb8a122fb23b92a623ccf"
-dependencies = [
- "bit-set",
- "regex",
-]
-
-[[package]]
-name = "fastrand"
-version = "1.7.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c3fcf0cee53519c866c09b5de1f6c56ff9d647101f81c1964fa632e148896cdf"
-dependencies = [
- "instant",
-]
-
-[[package]]
-name = "ff"
-version = "0.10.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d0f40b2dcd8bc322217a5f6559ae5f9e9d1de202a2ecee2e9eafcbece7562a4f"
-dependencies = [
- "rand_core 0.6.3",
- "subtle",
-]
-
-[[package]]
-name = "ff"
-version = "0.11.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b2958d04124b9f27f175eaeb9a9f383d026098aa837eadd8ba22c11f13a05b9e"
-dependencies = [
- "rand_core 0.6.3",
- "subtle",
-]
-
-[[package]]
-name = "filebuffer"
-version = "0.4.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1b41bfe1d74263ea9d084be951077614b3b98b4e59a9dafab1467645a9e52305"
-dependencies = [
- "libc",
- "winapi 0.3.9",
-]
-
-[[package]]
-name = "filetime"
-version = "0.2.16"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c0408e2626025178a6a7f7ffc05a25bc47103229f19c113755de7bf63816290c"
-dependencies = [
- "cfg-if 1.0.0",
- "libc",
- "redox_syscall",
- "winapi 0.3.9",
-]
-
-[[package]]
-name = "fixed-hash"
-version = "0.7.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "cfcf0ed7fe52a17a03854ec54a9f76d6d84508d1c0e66bc1793301c73fc8493c"
-dependencies = [
- "byteorder",
- "rand 0.8.5",
- "rustc-hex",
- "static_assertions",
-]
-
-[[package]]
-name = "fixedbitset"
-version = "0.2.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "37ab347416e802de484e4d03c7316c48f1ecb56574dfd4a46a80f173ce1de04d"
-
-[[package]]
-name = "flate2"
-version = "1.0.23"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b39522e96686d38f4bc984b9198e3a0613264abaebaff2c5c918bfa6b6da09af"
-dependencies = [
- "cfg-if 1.0.0",
- "crc32fast",
- "libc",
- "libz-sys",
- "miniz_oxide",
-]
-
-[[package]]
-name = "fnv"
-version = "1.0.7"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3f9eec918d3f24069decb9af1554cad7c880e2da24a9afd88aca000531ab82c1"
-
-[[package]]
-name = "foreign-types"
-version = "0.3.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f6f339eb8adc052cd2ca78910fda869aefa38d22d5cb648e6485e4d3fc06f3b1"
-dependencies = [
- "foreign-types-shared",
-]
-
-[[package]]
-name = "foreign-types-shared"
-version = "0.1.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "00b0228411908ca8685dba7fc2cdd70ec9990a6e753e89b6ac91a84c40fbaf4b"
-
-[[package]]
-name = "form_urlencoded"
-version = "1.0.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5fc25a87fa4fd2094bffb06925852034d90a17f0d1e05197d4956d3555752191"
-dependencies = [
- "matches",
- "percent-encoding",
-]
-
-[[package]]
-name = "fraction"
-version = "0.9.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "aba3510011eee8825018be07f08d9643421de007eaf62a3bde58d89b058abfa7"
-dependencies = [
- "lazy_static",
- "num",
-]
-
-[[package]]
-name = "fsevent"
-version = "0.4.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5ab7d1bd1bd33cc98b0889831b72da23c0aa4df9cec7e0702f46ecea04b35db6"
-dependencies = [
- "bitflags",
- "fsevent-sys",
-]
-
-[[package]]
-name = "fsevent-sys"
-version = "2.0.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f41b048a94555da0f42f1d632e2e19510084fb8e303b0daa2816e733fb3644a0"
-dependencies = [
- "libc",
-]
-
-[[package]]
-name = "fuchsia-zircon"
-version = "0.3.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2e9763c69ebaae630ba35f74888db465e49e259ba1bc0eda7d06f4a067615d82"
-dependencies = [
- "bitflags",
- "fuchsia-zircon-sys",
-]
-
-[[package]]
-name = "fuchsia-zircon-sys"
-version = "0.3.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3dcaa9ae7725d12cdb85b3ad99a434db70b468c09ded17e012d86b5c1010f7a7"
-
-[[package]]
-name = "funty"
-version = "1.1.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "fed34cd105917e91daa4da6b3728c47b068749d6a62c59811f06ed2ac71d9da7"
-
-[[package]]
-name = "futures"
-version = "0.3.21"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f73fe65f54d1e12b726f517d3e2135ca3125a437b6d998caf1962961f7172d9e"
-dependencies = [
- "futures-channel",
- "futures-core",
- "futures-executor",
- "futures-io",
- "futures-sink",
- "futures-task",
- "futures-util",
-]
-
-[[package]]
-name = "futures-channel"
-version = "0.3.21"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c3083ce4b914124575708913bca19bfe887522d6e2e6d0952943f5eac4a74010"
-dependencies = [
- "futures-core",
- "futures-sink",
-]
-
-[[package]]
-name = "futures-core"
-version = "0.3.21"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0c09fd04b7e4073ac7156a9539b57a484a8ea920f79c7c675d05d289ab6110d3"
-
-[[package]]
-name = "futures-executor"
-version = "0.3.21"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9420b90cfa29e327d0429f19be13e7ddb68fa1cccb09d65e5706b8c7a749b8a6"
-dependencies = [
- "futures-core",
- "futures-task",
- "futures-util",
-]
-
-[[package]]
-name = "futures-io"
-version = "0.3.21"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "fc4045962a5a5e935ee2fdedaa4e08284547402885ab326734432bed5d12966b"
-
-[[package]]
-name = "futures-lite"
-version = "1.12.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7694489acd39452c77daa48516b894c153f192c3578d5a839b62c58099fcbf48"
-dependencies = [
- "fastrand",
- "futures-core",
- "futures-io",
- "memchr",
- "parking",
- "pin-project-lite",
- "waker-fn",
-]
-
-[[package]]
-name = "futures-macro"
-version = "0.3.21"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "33c1e13800337f4d4d7a316bf45a567dbcb6ffe087f16424852d97e97a91f512"
-dependencies = [
- "proc-macro2",
- "quote",
- "syn",
-]
-
-[[package]]
-name = "futures-sink"
-version = "0.3.21"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "21163e139fa306126e6eedaf49ecdb4588f939600f0b1e770f4205ee4b7fa868"
-
-[[package]]
-name = "futures-task"
-version = "0.3.21"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "57c66a976bf5909d801bbef33416c41372779507e7a6b3a5e25e4749c58f776a"
-
-[[package]]
-name = "futures-timer"
-version = "3.0.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e64b03909df88034c26dc1547e8970b91f98bdb65165d6a4e9110d94263dbb2c"
-
-[[package]]
-name = "futures-util"
-version = "0.3.21"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d8b7abd5d659d9b90c8cba917f6ec750a74e2dc23902ef9cd4cc8c8b22e6036a"
-dependencies = [
- "futures-channel",
- "futures-core",
- "futures-io",
- "futures-macro",
- "futures-sink",
- "futures-task",
- "memchr",
- "pin-project-lite",
- "pin-utils",
- "slab",
-]
-
-[[package]]
-name = "futures_codec"
-version = "0.4.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ce54d63f8b0c75023ed920d46fd71d0cbbb830b0ee012726b5b4f506fb6dea5b"
-dependencies = [
- "bytes 0.5.6",
- "futures",
- "memchr",
- "pin-project 0.4.29",
-]
-
-[[package]]
-name = "fxhash"
-version = "0.2.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c31b6d751ae2c7f11320402d34e41349dd1016f8d5d45e48c4312bc8625af50c"
-dependencies = [
- "byteorder",
-]
-
-[[package]]
-name = "generic-array"
-version = "0.12.4"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ffdf9f34f1447443d37393cc6c2b8313aebddcd96906caf34e54c68d8e57d7bd"
-dependencies = [
- "typenum",
-]
-
-[[package]]
-name = "generic-array"
-version = "0.14.5"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "fd48d33ec7f05fbfa152300fdad764757cbded343c1aa1cff2fbaf4134851803"
-dependencies = [
- "serde",
- "typenum",
- "version_check",
-]
-
-[[package]]
-name = "getrandom"
-version = "0.1.16"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8fc3cb4d91f53b50155bdcfd23f6a4c39ae1969c2ae85982b135750cccaf5fce"
-dependencies = [
- "cfg-if 1.0.0",
- "libc",
- "wasi 0.9.0+wasi-snapshot-preview1",
-]
-
-[[package]]
-name = "getrandom"
-version = "0.2.6"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9be70c98951c83b8d2f8f60d7065fa6d5146873094452a1008da8c2f1e4205ad"
-dependencies = [
- "cfg-if 1.0.0",
- "js-sys",
- "libc",
- "wasi 0.10.2+wasi-snapshot-preview1",
- "wasm-bindgen",
-]
-
-[[package]]
-name = "git-actor"
-version = "0.6.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "09c4ab49d848cf4221daa5f80bd9969009ce5c1fb090acfec4e1ce3267fb488b"
-dependencies = [
- "bstr",
- "btoi",
- "itoa 0.4.8",
- "nom 7.1.1",
- "quick-error 2.0.1",
-]
-
-[[package]]
-name = "git-diff"
-version = "0.11.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7d4e019a3029f25c7c17aa5fefd113b5852f7d7796403c57a5ea54735700b2e3"
-dependencies = [
- "git-hash",
- "git-object",
- "quick-error 2.0.1",
-]
-
-[[package]]
-name = "git-features"
-version = "0.17.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "39932de8e019bab9a827e408ad7f96cebb65d4cdc25849ebfe4c70545d46f81f"
-dependencies = [
- "crc32fast",
- "crossbeam-channel",
- "crossbeam-utils",
- "flate2",
- "git-hash",
- "jwalk",
- "num_cpus",
- "prodash",
- "quick-error 2.0.1",
- "sha1",
- "walkdir",
-]
-
-[[package]]
-name = "git-hash"
-version = "0.8.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "99707b9c4943f76a8875b6dd8a2e7291228c9e23c68253e403059ebf8117864e"
-dependencies = [
- "hex",
- "quick-error 2.0.1",
-]
-
-[[package]]
-name = "git-lock"
-version = "1.0.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "24c6c0e6c2d893be08d8e10e61d01fbbbcfb8647d0dafc9ebdc6a8ee51bcf0b2"
-dependencies = [
- "fastrand",
- "git-tempfile",
- "quick-error 2.0.1",
-]
-
-[[package]]
-name = "git-object"
-version = "0.15.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "60af270db623e4af0968a07c39300c521a11fdb27d94928afbb91784d52411ec"
-dependencies = [
- "bstr",
- "git-actor",
- "git-hash",
- "git-validate",
- "hex",
- "nom 7.1.1",
- "quick-error 2.0.1",
- "smallvec",
-]
-
-[[package]]
-name = "git-odb"
-version = "0.24.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "452480a78d0a1befe19cd16bf4edf72bce50a3eac7d73dc10a9817b2edc2ac1a"
-dependencies = [
- "btoi",
- "git-features",
- "git-hash",
- "git-object",
- "git-pack",
- "tempfile",
- "thiserror",
-]
-
-[[package]]
-name = "git-pack"
-version = "0.14.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ee1cf8862969ad70a5ffb2b62378bc193067773bd172816071458ffdac6d6487"
-dependencies = [
- "btoi",
- "byteorder",
- "bytesize",
- "clru",
- "dashmap 4.0.2",
- "filebuffer",
- "git-diff",
- "git-features",
- "git-hash",
- "git-object",
- "git-tempfile",
- "git-traverse",
- "itoa 0.4.8",
- "parking_lot 0.11.2",
- "smallvec",
- "thiserror",
- "uluru",
-]
-
-[[package]]
-name = "git-packetline"
-version = "0.12.4"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5dd72d1851a70ec9dbffb5e70bf59848ae0a5d86bfc3f1d764c65bbf958a881d"
-dependencies = [
- "bstr",
- "futures-io",
- "futures-lite",
- "hex",
- "pin-project-lite",
- "quick-error 2.0.1",
-]
-
-[[package]]
-name = "git-protocol"
-version = "0.12.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e48b559bd03df1bee77c16b06cdeb5592b412e4035a3492e646f3c87114c4f4e"
-dependencies = [
- "async-trait",
- "bstr",
- "btoi",
- "futures-io",
- "futures-lite",
- "git-features",
- "git-hash",
- "git-transport",
- "maybe-async",
- "nom 7.1.1",
- "quick-error 2.0.1",
-]
-
-[[package]]
-name = "git-ref"
-version = "0.9.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6f86152528fbcc6f1ce78b7b4fb18dd0258183bd2de690b25ed422b56bd63117"
-dependencies = [
- "filebuffer",
- "git-actor",
- "git-features",
- "git-hash",
- "git-lock",
- "git-object",
- "git-tempfile",
- "git-validate",
- "nom 7.1.1",
- "os_str_bytes 3.1.0",
- "quick-error 2.0.1",
-]
-
-[[package]]
-name = "git-ref-format"
-version = "0.1.0"
-source = "git+https://github.com/radicle-dev/radicle-link?rev=a9485b78b5c78d252c92f61d990cf34622d1c8f1#a9485b78b5c78d252c92f61d990cf34622d1c8f1"
-dependencies = [
- "git-ref-format-core",
- "git-ref-format-macro",
-]
-
-[[package]]
-name = "git-ref-format-core"
-version = "0.1.0"
-source = "git+https://github.com/radicle-dev/radicle-link?rev=a9485b78b5c78d252c92f61d990cf34622d1c8f1#a9485b78b5c78d252c92f61d990cf34622d1c8f1"
-dependencies = [
- "bstr",
- "minicbor",
- "thiserror",
-]
-
-[[package]]
-name = "git-ref-format-macro"
-version = "0.1.0"
-source = "git+https://github.com/radicle-dev/radicle-link?rev=a9485b78b5c78d252c92f61d990cf34622d1c8f1#a9485b78b5c78d252c92f61d990cf34622d1c8f1"
-dependencies = [
- "git-ref-format-core",
- "proc-macro-error",
- "quote",
- "syn",
-]
-
-[[package]]
-name = "git-tempfile"
-version = "1.0.6"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "cf6d78c8a68ab3ba1cd42684dbe0233e81a28301321c4a66417285e47cd79c6b"
-dependencies = [
- "dashmap 5.3.2",
- "libc",
- "once_cell",
- "signal-hook",
- "signal-hook-registry",
- "tempfile",
-]
-
-[[package]]
-name = "git-trailers"
-version = "0.1.0"
-source = "git+https://github.com/radicle-dev/radicle-link?rev=a9485b78b5c78d252c92f61d990cf34622d1c8f1#a9485b78b5c78d252c92f61d990cf34622d1c8f1"
-dependencies = [
- "nom 7.1.1",
- "thiserror",
-]
-
-[[package]]
-name = "git-transport"
-version = "0.13.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6d2c0d09673a172071670aa2db9a04ab459c2dbf9130ba3ad549a92520ef2473"
-dependencies = [
- "async-trait",
- "bstr",
- "futures-io",
- "futures-lite",
- "git-features",
- "git-packetline",
- "git-url",
- "pin-project-lite",
- "quick-error 2.0.1",
- "thiserror",
-]
-
-[[package]]
-name = "git-traverse"
-version = "0.10.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3aa135b6cf4525deeb70dde2420ce886780dc2ef24a871cebe25291b9f26088a"
-dependencies = [
- "git-hash",
- "git-object",
- "quick-error 2.0.1",
-]
-
-[[package]]
-name = "git-url"
-version = "0.3.5"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d9fcc88c679f3dc55e1e4fe0324142abec612cafaafae1bf6a951c324c9d96f8"
-dependencies = [
- "bstr",
- "home",
- "quick-error 2.0.1",
- "url",
-]
-
-[[package]]
-name = "git-validate"
-version = "0.5.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c58bafc6cd6f455a95997c47823182dd62cdb47f03564c44c6b6d910221801dc"
-dependencies = [
- "bstr",
- "quick-error 2.0.1",
-]
-
-[[package]]
-name = "git2"
-version = "0.13.25"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f29229cc1b24c0e6062f6e742aa3e256492a5323365e5ed3413599f8a5eff7d6"
-dependencies = [
- "bitflags",
- "libc",
- "libgit2-sys",
- "log",
- "url",
-]
-
-[[package]]
-name = "glob"
-version = "0.3.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9b919933a397b79c37e33b77bb2aa3dc8eb6e165ad809e58ff75bc7db2e34574"
-
-[[package]]
-name = "globset"
-version = "0.4.8"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "10463d9ff00a2a068db14231982f5132edebad0d7660cd956a1c30292dbcbfbd"
-dependencies = [
- "aho-corasick",
- "bstr",
- "fnv",
- "log",
- "regex",
-]
-
-[[package]]
-name = "governor"
-version = "0.3.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "06c5d2f987ee8f6dff3fa1a352058dc59b990e447e4c7846aa7d804971314f7b"
-dependencies = [
- "dashmap 4.0.2",
- "futures",
- "futures-timer",
- "no-std-compat",
- "nonzero_ext 0.2.0",
- "parking_lot 0.11.2",
- "quanta",
- "rand 0.8.5",
- "smallvec",
-]
-
-[[package]]
-name = "group"
-version = "0.10.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1c363a5301b8f153d80747126a04b3c82073b9fe3130571a9d170cacdeaf7912"
-dependencies = [
- "ff 0.10.1",
- "rand_core 0.6.3",
- "subtle",
-]
-
-[[package]]
-name = "group"
-version = "0.11.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "bc5ac374b108929de78460075f3dc439fa66df9d8fc77e8f12caa5165fcf0c89"
-dependencies = [
- "ff 0.11.0",
- "rand_core 0.6.3",
- "subtle",
-]
-
-[[package]]
-name = "h2"
-version = "0.3.13"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "37a82c6d637fc9515a4694bbf1cb2457b79d81ce52b3108bdeea58b07dd34a57"
-dependencies = [
- "bytes 1.1.0",
- "fnv",
- "futures-core",
- "futures-sink",
- "futures-util",
- "http",
- "indexmap",
- "slab",
- "tokio",
- "tokio-util",
- "tracing",
-]
-
-[[package]]
-name = "half"
-version = "1.8.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "eabb4a44450da02c90444cf74558da904edde8fb4e9035a9a6a4e15445af0bd7"
-
-[[package]]
-name = "hashbrown"
-version = "0.8.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e91b62f79061a0bc2e046024cb7ba44b08419ed238ecbd9adbd787434b9e8c25"
-dependencies = [
- "ahash 0.3.8",
- "autocfg",
-]
-
-[[package]]
-name = "hashbrown"
-version = "0.11.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ab5ef0d4909ef3724cc8cce6ccc8572c5c817592e9285f5464f8e86f8bd3726e"
-dependencies = [
- "ahash 0.7.6",
-]
-
-[[package]]
-name = "hashbrown"
-version = "0.12.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8c21d40587b92fa6a6c6e3c1bdbf87d75511db5672f9c93175574b3a00df1758"
-
-[[package]]
-name = "heck"
-version = "0.3.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6d621efb26863f0e9924c6ac577e8275e5e6b77455db64ffa6c65c904e9e132c"
-dependencies = [
- "unicode-segmentation",
-]
-
-[[package]]
-name = "heck"
-version = "0.4.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2540771e65fc8cb83cd6e8a237f70c319bd5c29f78ed1084ba5d50eeac86f7f9"
-
-[[package]]
-name = "hermit-abi"
-version = "0.1.19"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "62b467343b94ba476dcb2500d242dadbb39557df889310ac77c5d99100aaac33"
-dependencies = [
- "libc",
-]
-
-[[package]]
-name = "hex"
-version = "0.4.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7f24254aa9a54b5c858eaee2f5bccdb46aaf0e486a595ed5fd8f86ba55232a70"
-
-[[package]]
-name = "hidapi-rusb"
-version = "1.3.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6664e89e7c267621ea65a3453f7883a47a9ead4638d4dc44ccc3b695cc45d3c2"
-dependencies = [
- "cc",
- "libc",
- "pkg-config",
- "rusb",
-]
-
-[[package]]
-name = "hmac"
-version = "0.11.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2a2a2320eb7ec0ebe8da8f744d7812d9fc4cb4d09344ac01898dbcb6a20ae69b"
-dependencies = [
- "crypto-mac 0.11.1",
- "digest 0.9.0",
-]
-
-[[package]]
-name = "home"
-version = "0.5.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2456aef2e6b6a9784192ae780c0f15bc57df0e918585282325e8c8ac27737654"
-dependencies = [
- "winapi 0.3.9",
-]
-
-[[package]]
-name = "http"
-version = "0.2.7"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ff8670570af52249509a86f5e3e18a08c60b177071826898fde8997cf5f6bfbb"
-dependencies = [
- "bytes 1.1.0",
- "fnv",
- "itoa 1.0.1",
-]
-
-[[package]]
-name = "http-body"
-version = "0.4.4"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1ff4f84919677303da5f147645dbea6b1881f368d03ac84e1dc09031ebd7b2c6"
-dependencies = [
- "bytes 1.1.0",
- "http",
- "pin-project-lite",
-]
-
-[[package]]
-name = "httparse"
-version = "1.7.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "496ce29bb5a52785b44e0f7ca2847ae0bb839c9bd28f69acac9b99d461c0c04c"
-
-[[package]]
-name = "httpdate"
-version = "1.0.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c4a1e36c821dbe04574f602848a19f742f4fb3c98d40449f11bcad18d6b17421"
-
-[[package]]
-name = "human_format"
-version = "1.0.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "86cce260d758a9aa3d7c4b99d55c815a540f8a37514ba6046ab6be402a157cb0"
-
-[[package]]
-name = "hyper"
-version = "0.14.18"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b26ae0a80afebe130861d90abf98e3814a4f28a4c6ffeb5ab8ebb2be311e0ef2"
-dependencies = [
- "bytes 1.1.0",
- "futures-channel",
- "futures-core",
- "futures-util",
- "h2",
- "http",
- "http-body",
- "httparse",
- "httpdate",
- "itoa 1.0.1",
- "pin-project-lite",
- "socket2 0.4.4",
- "tokio",
- "tower-service",
- "tracing",
- "want",
-]
-
-[[package]]
-name = "hyper-rustls"
-version = "0.23.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d87c48c02e0dc5e3b849a2041db3029fd066650f8f717c07bf8ed78ccb895cac"
-dependencies = [
- "http",
- "hyper",
- "rustls 0.20.4",
- "tokio",
- "tokio-rustls",
-]
-
-[[package]]
-name = "hyper-tls"
-version = "0.5.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d6183ddfa99b85da61a140bea0efc93fdf56ceaa041b37d553518030827f9905"
-dependencies = [
- "bytes 1.1.0",
- "hyper",
- "native-tls",
- "tokio",
- "tokio-native-tls",
-]
-
-[[package]]
-name = "idna"
-version = "0.2.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "418a0a6fab821475f634efe3ccc45c013f742efe03d853e8d3355d5cb850ecf8"
-dependencies = [
- "matches",
- "unicode-bidi",
- "unicode-normalization",
-]
-
-[[package]]
-name = "if-addrs"
-version = "0.6.7"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2273e421f7c4f0fc99e1934fe4776f59d8df2972f4199d703fc0da9f2a9f73de"
-dependencies = [
- "if-addrs-sys",
- "libc",
- "winapi 0.3.9",
-]
-
-[[package]]
-name = "if-addrs-sys"
-version = "0.3.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "de74b9dd780476e837e5eb5ab7c88b49ed304126e412030a0adba99c8efe79ea"
-dependencies = [
- "cc",
- "libc",
-]
-
-[[package]]
-name = "if-watch"
-version = "0.2.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ae8ab7f67bad3240049cb24fb9cb0b4c2c6af4c245840917fbbdededeee91179"
-dependencies = [
- "async-io",
- "futures",
- "futures-lite",
- "if-addrs",
- "ipnet",
- "libc",
- "log",
- "winapi 0.3.9",
-]
-
-[[package]]
-name = "im"
-version = "15.1.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d0acd33ff0285af998aaf9b57342af478078f53492322fafc47450e09397e0e9"
-dependencies = [
- "bitmaps",
- "rand_core 0.6.3",
- "rand_xoshiro",
- "sized-chunks",
- "typenum",
- "version_check",
-]
-
-[[package]]
-name = "image"
-version = "0.23.14"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "24ffcb7e7244a9bf19d35bf2883b9c080c4ced3c07a9895572178cdb8f13f6a1"
-dependencies = [
- "bytemuck",
- "byteorder",
- "color_quant",
- "num-iter",
- "num-rational 0.3.2",
- "num-traits",
-]
-
-[[package]]
-name = "impl-codec"
-version = "0.5.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "161ebdfec3c8e3b52bf61c4f3550a1eea4f9579d10dc1b936f3171ebdcd6c443"
-dependencies = [
- "parity-scale-codec",
-]
-
-[[package]]
-name = "impl-rlp"
-version = "0.3.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f28220f89297a075ddc7245cd538076ee98b01f2a9c23a53a4f1105d5a322808"
-dependencies = [
- "rlp",
-]
-
-[[package]]
-name = "impl-serde"
-version = "0.3.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4551f042f3438e64dbd6226b20527fc84a6e1fe65688b58746a2f53623f25f5c"
-dependencies = [
- "serde",
-]
-
-[[package]]
-name = "impl-trait-for-tuples"
-version = "0.2.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "11d7a9f6330b71fea57921c9b61c47ee6e84f72d394754eff6163ae67e7395eb"
-dependencies = [
- "proc-macro2",
- "quote",
- "syn",
-]
-
-[[package]]
-name = "indexmap"
-version = "1.8.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0f647032dfaa1f8b6dc29bd3edb7bbef4861b8b8007ebb118d6db284fd59f6ee"
-dependencies = [
- "autocfg",
- "hashbrown 0.11.2",
-]
-
-[[package]]
-name = "indicatif"
-version = "0.16.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2d207dc617c7a380ab07ff572a6e52fa202a2a8f355860ac9c38e23f8196be1b"
-dependencies = [
- "console",
- "lazy_static",
- "number_prefix",
- "regex",
-]
-
-[[package]]
-name = "inotify"
-version = "0.7.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4816c66d2c8ae673df83366c18341538f234a26d65a9ecea5c348b453ac1d02f"
-dependencies = [
- "bitflags",
- "inotify-sys",
- "libc",
-]
-
-[[package]]
-name = "inotify-sys"
-version = "0.1.5"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e05c02b5e89bff3b946cedeca278abc628fe811e604f027c45a8aa3cf793d0eb"
-dependencies = [
- "libc",
-]
-
-[[package]]
-name = "instant"
-version = "0.1.12"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7a5bbe824c507c5da5956355e86a746d82e0e1464f65d862cc5e71da70e94b2c"
-dependencies = [
- "cfg-if 1.0.0",
- "js-sys",
- "wasm-bindgen",
- "web-sys",
-]
-
-[[package]]
-name = "iovec"
-version = "0.1.4"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b2b3ea6ff95e175473f8ffe6a7eb7c00d054240321b84c57051175fe3c1e075e"
-dependencies = [
- "libc",
-]
-
-[[package]]
-name = "ipnet"
-version = "2.5.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "879d54834c8c76457ef4293a689b2a8c59b076067ad77b15efafbb05f92a592b"
-
-[[package]]
-name = "iso8601"
-version = "0.4.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0a59a3f2be6271b2a844cd0dd13bf8ccc88a9540482d872c7ce58ab1c4db9fab"
-dependencies = [
- "nom 7.1.1",
-]
-
-[[package]]
-name = "itertools"
-version = "0.9.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "284f18f85651fe11e8a991b2adb42cb078325c996ed026d994719efcfca1d54b"
-dependencies = [
- "either",
-]
-
-[[package]]
-name = "itertools"
-version = "0.10.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a9a9d19fa1e79b6215ff29b9d6880b706147f16e9b1dbb1e4e5947b5b02bc5e3"
-dependencies = [
- "either",
-]
-
-[[package]]
-name = "itoa"
-version = "0.4.8"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b71991ff56294aa922b450139ee08b3bfc70982c6b2c7562771375cf73542dd4"
-
-[[package]]
-name = "itoa"
-version = "1.0.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1aab8fc367588b89dcee83ab0fd66b72b50b72fa1904d7095045ace2b0c81c35"
-
-[[package]]
-name = "jobserver"
-version = "0.1.24"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "af25a77299a7f711a01975c35a6a424eb6862092cc2d6c72c4ed6cbc56dfc1fa"
-dependencies = [
- "libc",
-]
-
-[[package]]
-name = "js-sys"
-version = "0.3.57"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "671a26f820db17c2a2750743f1dd03bafd15b98c9f30c7c2628c024c05d73397"
-dependencies = [
- "wasm-bindgen",
-]
-
-[[package]]
-name = "jsonrpc-core"
-version = "18.0.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "14f7f76aef2d054868398427f6c54943cf3d1caa9a7ec7d0c38d69df97a965eb"
-dependencies = [
- "futures",
- "futures-executor",
- "futures-util",
- "log",
- "serde",
- "serde_derive",
- "serde_json",
-]
-
-[[package]]
-name = "jsonschema"
-version = "0.13.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "877e398ffb23c1c311c417ef5e72e8699c3822dbf835468f009c6ce91b6c206b"
-dependencies = [
- "ahash 0.7.6",
- "base64 0.13.0",
- "bytecount",
- "fancy-regex",
- "fraction",
- "iso8601",
- "itoa 0.4.8",
- "lazy_static",
- "num-cmp",
- "parking_lot 0.12.0",
- "percent-encoding",
- "regex",
- "serde",
- "serde_json",
- "time 0.3.9",
- "url",
- "uuid",
-]
-
-[[package]]
-name = "jwalk"
-version = "0.6.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "172752e853a067cbce46427de8470ddf308af7fd8ceaf9b682ef31a5021b6bb9"
-dependencies = [
- "crossbeam",
- "rayon",
-]
-
-[[package]]
-name = "k256"
-version = "0.9.6"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "903ae2481bcdfdb7b68e0a9baa4b7c9aff600b9ae2e8e5bb5833b8c91ab851ea"
-dependencies = [
- "cfg-if 1.0.0",
- "ecdsa 0.12.4",
- "elliptic-curve 0.10.6",
- "sha2 0.9.9",
- "sha3",
-]
-
-[[package]]
-name = "k256"
-version = "0.10.4"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "19c3a5e0a0b8450278feda242592512e09f61c72e018b8cd5c859482802daf2d"
-dependencies = [
- "cfg-if 1.0.0",
- "ecdsa 0.13.4",
- "elliptic-curve 0.11.12",
- "sec1",
- "sha2 0.9.9",
-]
-
-[[package]]
-name = "keccak"
-version = "0.1.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "67c21572b4949434e4fc1e1978b99c5f77064153c59d998bf13ecd96fb5ecba7"
-
-[[package]]
-name = "kernel32-sys"
-version = "0.2.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7507624b29483431c0ba2d82aece8ca6cdba9382bff4ddd0f7490560c056098d"
-dependencies = [
- "winapi 0.2.8",
- "winapi-build",
-]
-
-[[package]]
-name = "lazy_static"
-version = "1.4.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e2abad23fbc42b3700f2f279844dc832adb2b2eb069b2df918f455c4e18cc646"
-
-[[package]]
-name = "lazycell"
-version = "1.3.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "830d08ce1d1d941e6b30645f1a0eb5643013d835ce3779a5fc208261dbe10f55"
-
-[[package]]
-name = "leb128"
-version = "0.2.5"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "884e2677b40cc8c339eaefcb701c32ef1fd2493d71118dc0ca4b6a736c93bd67"
-
-[[package]]
-name = "lexopt"
-version = "0.2.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "de7513aea7d10dc0694d719ac53de3b74f1600e41b9f81ed9f395d8ec36a2a70"
-
-[[package]]
-name = "libc"
-version = "0.2.125"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5916d2ae698f6de9bfb891ad7a8d65c09d232dc58cc4ac433c7da3b2fd84bc2b"
-
-[[package]]
-name = "libgit2-sys"
-version = "0.12.26+1.3.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "19e1c899248e606fbfe68dcb31d8b0176ebab833b103824af31bddf4b7457494"
-dependencies = [
- "cc",
- "libc",
- "libz-sys",
- "pkg-config",
-]
-
-[[package]]
-name = "librad"
-version = "0.1.0"
-source = "git+https://github.com/radicle-dev/radicle-link?rev=a9485b78b5c78d252c92f61d990cf34622d1c8f1#a9485b78b5c78d252c92f61d990cf34622d1c8f1"
-dependencies = [
- "async-lock",
- "async-stream",
- "async-trait",
- "backoff",
- "blocking",
- "bloom-filters",
- "bstr",
- "bytes 0.5.6",
- "cob",
- "dashmap 4.0.2",
- "deadpool",
- "directories",
- "either",
- "futures",
- "futures_codec",
- "git-ref-format",
- "git-trailers",
- "git2",
- "globset",
- "governor",
- "if-watch",
- "indexmap",
- "itertools 0.10.3",
- "lazy_static",
- "libc",
- "libgit2-sys",
- "link-async",
- "link-canonical",
- "link-crypto",
- "link-git",
- "link-identities",
- "link-replication",
- "link-tracking",
- "minicbor",
- "multibase",
- "multihash 0.11.4",
- "nom 7.1.1",
- "nonempty",
- "nonzero_ext 0.3.0",
- "notify",
- "num_cpus",
- "once_cell",
- "parking_lot 0.12.0",
- "percent-encoding",
- "picky-asn1",
- "picky-asn1-der",
- "picky-asn1-x509",
- "quinn",
- "radicle-data",
- "radicle-git-ext",
- "radicle-macros",
- "radicle-std-ext",
- "rand 0.8.5",
- "rand_pcg 0.3.1",
- "regex",
- "rustc-hash",
- "rustls 0.19.1",
- "serde",
- "serde_bytes",
- "serde_json",
- "sized-vec",
- "socket2 0.4.4",
- "tempfile",
- "thiserror",
- "time 0.3.9",
- "tokio",
- "toml",
- "tracing",
- "tracing-attributes",
- "typenum",
- "url",
- "uuid",
- "webpki 0.21.4",
- "xorf",
-]
-
-[[package]]
-name = "libusb1-sys"
-version = "0.6.2"
-source = "git+https://github.com/a1ien/rusb.git?rev=050f5091c7b0fb69c0fc25edec0910abe8afadf1#050f5091c7b0fb69c0fc25edec0910abe8afadf1"
-dependencies = [
- "cc",
- "libc",
- "pkg-config",
- "vcpkg",
-]
-
-[[package]]
-name = "libz-sys"
-version = "1.1.6"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "92e7e15d7610cce1d9752e137625f14e61a28cd45929b6e12e47b50fe154ee2e"
-dependencies = [
- "cc",
- "cmake",
- "libc",
- "pkg-config",
- "vcpkg",
-]
-
-[[package]]
-name = "link-async"
-version = "0.1.0"
-source = "git+https://github.com/radicle-dev/radicle-link?rev=a9485b78b5c78d252c92f61d990cf34622d1c8f1#a9485b78b5c78d252c92f61d990cf34622d1c8f1"
-dependencies = [
- "blocking",
- "futures",
- "futures-util",
- "radicle-std-ext",
- "rand 0.8.5",
- "thiserror",
- "tokio",
- "tracing",
-]
-
-[[package]]
-name = "link-canonical"
-version = "0.1.0"
-source = "git+https://github.com/radicle-dev/radicle-link?rev=a9485b78b5c78d252c92f61d990cf34622d1c8f1#a9485b78b5c78d252c92f61d990cf34622d1c8f1"
-dependencies = [
- "link-canonical-derive",
- "nom 7.1.1",
- "serde",
- "serde_bytes",
- "serde_json",
- "thiserror",
- "unicode-normalization",
-]
-
-[[package]]
-name = "link-canonical-derive"
-version = "0.1.0"
-source = "git+https://github.com/radicle-dev/radicle-link?rev=a9485b78b5c78d252c92f61d990cf34622d1c8f1#a9485b78b5c78d252c92f61d990cf34622d1c8f1"
-dependencies = [
- "convert_case",
- "proc-macro2",
- "quote",
- "syn",
-]
-
-[[package]]
-name = "link-crypto"
-version = "0.1.0"
-source = "git+https://github.com/radicle-dev/radicle-link?rev=a9485b78b5c78d252c92f61d990cf34622d1c8f1#a9485b78b5c78d252c92f61d990cf34622d1c8f1"
-dependencies = [
- "async-trait",
- "dyn-clone",
- "ed25519-zebra",
- "futures-lite",
- "git-ref-format",
- "minicbor",
- "multibase",
- "radicle-git-ext",
- "radicle-keystore",
- "rand 0.8.5",
- "rustls 0.19.1",
- "serde",
- "thiserror",
- "tracing",
- "webpki 0.21.4",
- "zeroize",
-]
-
-[[package]]
-name = "link-git"
-version = "0.1.0"
-source = "git+https://github.com/radicle-dev/radicle-link?rev=a9485b78b5c78d252c92f61d990cf34622d1c8f1#a9485b78b5c78d252c92f61d990cf34622d1c8f1"
-dependencies = [
- "arc-swap",
- "async-process",
- "async-trait",
- "blocking",
- "bstr",
- "futures-lite",
- "futures-util",
- "git-actor",
- "git-features",
- "git-hash",
- "git-lock",
- "git-object",
- "git-odb",
- "git-pack",
- "git-packetline",
- "git-protocol",
- "git-ref",
- "git-traverse",
- "git2",
- "im",
- "lazy_static",
- "once_cell",
- "parking_lot 0.12.0",
- "pin-project 1.0.10",
- "regex",
- "rustc-hash",
- "tempfile",
- "thiserror",
- "tracing",
- "versions",
-]
-
-[[package]]
-name = "link-identities"
-version = "0.1.0"
-source = "git+https://github.com/radicle-dev/radicle-link?rev=a9485b78b5c78d252c92f61d990cf34622d1c8f1#a9485b78b5c78d252c92f61d990cf34622d1c8f1"
-dependencies = [
- "either",
- "futures-lite",
- "git-ref-format",
- "git-trailers",
- "git2",
- "lazy_static",
- "link-canonical",
- "link-crypto",
- "minicbor",
- "multibase",
- "multihash 0.11.4",
- "percent-encoding",
- "radicle-data",
- "radicle-git-ext",
- "radicle-macros",
- "radicle-std-ext",
- "serde",
- "serde_json",
- "sized-vec",
- "thiserror",
- "tracing",
- "typenum",
- "url",
- "xorf",
-]
-
-[[package]]
-name = "link-replication"
-version = "0.1.0"
-source = "git+https://github.com/radicle-dev/radicle-link?rev=a9485b78b5c78d252c92f61d990cf34622d1c8f1#a9485b78b5c78d252c92f61d990cf34622d1c8f1"
-dependencies = [
- "async-trait",
- "blocking",
- "bstr",
- "either",
- "futures-lite",
- "git-ref-format",
- "itertools 0.10.3",
- "link-crypto",
- "link-git",
- "parking_lot 0.12.0",
- "radicle-data",
- "radicle-std-ext",
- "rand 0.8.5",
- "thiserror",
- "tracing",
-]
-
-[[package]]
-name = "link-tracking"
-version = "0.1.0"
-source = "git+https://github.com/radicle-dev/radicle-link?rev=a9485b78b5c78d252c92f61d990cf34622d1c8f1#a9485b78b5c78d252c92f61d990cf34622d1c8f1"
-dependencies = [
- "cob",
- "either",
- "git-ref-format",
- "link-canonical",
- "link-crypto",
- "link-identities",
- "multihash 0.11.4",
- "radicle-git-ext",
- "thiserror",
- "tracing",
-]
-
-[[package]]
-name = "linked-hash-map"
-version = "0.5.4"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7fb9b38af92608140b86b693604b9ffcc5824240a484d1ecd4795bacb2fe88f3"
-
-[[package]]
-name = "lnk-clib"
-version = "0.1.0"
-source = "git+https://github.com/radicle-dev/radicle-link?rev=a9485b78b5c78d252c92f61d990cf34622d1c8f1#a9485b78b5c78d252c92f61d990cf34622d1c8f1"
-dependencies = [
- "async-trait",
- "futures",
- "itertools 0.10.3",
- "librad",
- "lnk-thrussh-agent",
- "minicbor",
- "nix 0.23.1",
- "once_cell",
- "serde",
- "serde_json",
- "socket2 0.4.4",
- "thiserror",
- "tokio",
- "tracing",
-]
-
-[[package]]
-name = "lnk-cryptovec"
-version = "0.6.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ae312ad9efaa2ad4c57d6f63b4e5d5261486875125b7bd04d4c685dbc687ff5b"
-dependencies = [
- "libc",
- "winapi 0.3.9",
-]
-
-[[package]]
-name = "lnk-identities"
-version = "0.1.0"
-source = "git+https://github.com/radicle-dev/radicle-link?rev=a9485b78b5c78d252c92f61d990cf34622d1c8f1#a9485b78b5c78d252c92f61d990cf34622d1c8f1"
-dependencies = [
- "anyhow",
- "clap",
- "either",
- "git2",
- "lazy_static",
- "libgit2-sys",
- "librad",
- "lnk-clib",
- "lnk-thrussh-agent",
- "nonempty",
- "radicle-git-ext",
- "radicle-std-ext",
- "serde",
- "serde_json",
- "similar",
- "thiserror",
- "tracing",
- "url",
-]
-
-[[package]]
-name = "lnk-profile"
-version = "0.1.0"
-source = "git+https://github.com/radicle-dev/radicle-link?rev=a9485b78b5c78d252c92f61d990cf34622d1c8f1#a9485b78b5c78d252c92f61d990cf34622d1c8f1"
-dependencies = [
- "anyhow",
- "clap",
- "futures-lite",
- "librad",
- "lnk-clib",
- "lnk-thrussh-agent",
- "serde",
- "thiserror",
-]
-
-[[package]]
-name = "lnk-thrussh-agent"
-version = "0.1.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9692c2ff209b052e9e6f658dbb56fe76eaa4761fcbcebc0a36ebd25a968d0f62"
-dependencies = [
- "async-trait",
- "byteorder",
- "data-encoding",
- "futures",
- "lnk-cryptovec",
- "lnk-thrussh-encoding",
- "log",
- "thiserror",
- "tokio",
-]
-
-[[package]]
-name = "lnk-thrussh-encoding"
-version = "0.1.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8b3c40451361c5691987b7eeeb0428f069fb07fa70367e9aa352704982f6f1a6"
-dependencies = [
- "byteorder",
- "lnk-cryptovec",
- "thiserror",
-]
-
-[[package]]
-name = "lock_api"
-version = "0.4.7"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "327fa5b6a6940e4699ec49a9beae1ea4845c6bab9314e4f84ac68742139d8c53"
-dependencies = [
- "autocfg",
- "scopeguard",
-]
-
-[[package]]
-name = "log"
-version = "0.4.16"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6389c490849ff5bc16be905ae24bc913a9c8892e19b2341dbc175e14c341c2b8"
-dependencies = [
- "cfg-if 1.0.0",
-]
-
-[[package]]
-name = "lru"
-version = "0.7.5"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "32613e41de4c47ab04970c348ca7ae7382cf116625755af070b008a15516a889"
-dependencies = [
- "hashbrown 0.11.2",
-]
-
-[[package]]
-name = "maplit"
-version = "1.0.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3e2e65a1a2e43cfcb47a895c4c8b10d1f4a61097f9f254f183aee60cad9c651d"
-
-[[package]]
-name = "matches"
-version = "0.1.9"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a3e378b66a060d48947b590737b30a1be76706c8dd7b8ba0f2fe3989c68a853f"
-
-[[package]]
-name = "maybe-async"
-version = "0.2.6"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6007f9dad048e0a224f27ca599d669fca8cfa0dac804725aab542b2eb032bce6"
-dependencies = [
- "proc-macro2",
- "quote",
- "syn",
-]
-
-[[package]]
-name = "md-5"
-version = "0.9.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7b5a279bb9607f9f53c22d496eade00d138d1bdcccd07d74650387cf94942a15"
-dependencies = [
- "block-buffer 0.9.0",
- "digest 0.9.0",
- "opaque-debug 0.3.0",
-]
-
-[[package]]
-name = "memchr"
-version = "2.5.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2dffe52ecf27772e601905b7522cb4ef790d2cc203488bbd0e2fe85fcb74566d"
-
-[[package]]
-name = "memoffset"
-version = "0.6.5"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5aa361d4faea93603064a027415f07bd8e1d5c88c9fbf68bf56a285428fd79ce"
-dependencies = [
- "autocfg",
-]
-
-[[package]]
-name = "mime"
-version = "0.3.16"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2a60c7ce501c71e03a9c9c0d35b861413ae925bd979cc7a4e30d060069aaac8d"
-
-[[package]]
-name = "minicbor"
-version = "0.13.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "124d887cb82f0b1469bdac3d1b65764a381eed1a54fdab0070e5772b13114521"
-dependencies = [
- "minicbor-derive",
-]
-
-[[package]]
-name = "minicbor-derive"
-version = "0.8.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "58f79d5d3fb4f93c77ef7b97065fb65efe6abe670795ad8bc5be9c0e12005290"
-dependencies = [
- "proc-macro2",
- "quote",
- "syn",
-]
-
-[[package]]
-name = "minimal-lexical"
-version = "0.2.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "68354c5c6bd36d73ff3feceb05efa59b6acb7626617f4962be322a825e61f79a"
-
-[[package]]
-name = "miniz_oxide"
-version = "0.5.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d2b29bd4bc3f33391105ebee3589c19197c4271e3e5a9ec9bfe8127eeff8f082"
-dependencies = [
- "adler",
-]
-
-[[package]]
-name = "mio"
-version = "0.6.23"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4afd66f5b91bf2a3bc13fad0e21caedac168ca4c707504e75585648ae80e4cc4"
-dependencies = [
- "cfg-if 0.1.10",
- "fuchsia-zircon",
- "fuchsia-zircon-sys",
- "iovec",
- "kernel32-sys",
- "libc",
- "log",
- "miow 0.2.2",
- "net2",
- "slab",
- "winapi 0.2.8",
-]
-
-[[package]]
-name = "mio"
-version = "0.7.14"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8067b404fe97c70829f082dec8bcf4f71225d7eaea1d8645349cb76fa06205cc"
-dependencies = [
- "libc",
- "log",
- "miow 0.3.7",
- "ntapi",
- "winapi 0.3.9",
-]
-
-[[package]]
-name = "mio"
-version = "0.8.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "52da4364ffb0e4fe33a9841a98a3f3014fb964045ce4f7a45a398243c8d6b0c9"
-dependencies = [
- "libc",
- "log",
- "miow 0.3.7",
- "ntapi",
- "wasi 0.11.0+wasi-snapshot-preview1",
- "winapi 0.3.9",
-]
-
-[[package]]
-name = "mio-extras"
-version = "2.0.6"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "52403fe290012ce777c4626790c8951324a2b9e3316b3143779c72b029742f19"
-dependencies = [
- "lazycell",
- "log",
- "mio 0.6.23",
- "slab",
-]
-
-[[package]]
-name = "miow"
-version = "0.2.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ebd808424166322d4a38da87083bfddd3ac4c131334ed55856112eb06d46944d"
-dependencies = [
- "kernel32-sys",
- "net2",
- "winapi 0.2.8",
- "ws2_32-sys",
-]
-
-[[package]]
-name = "miow"
-version = "0.3.7"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b9f1c5b025cda876f66ef43a113f91ebc9f4ccef34843000e0adf6ebbab84e21"
-dependencies = [
- "winapi 0.3.9",
-]
-
-[[package]]
-name = "multibase"
-version = "0.9.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9b3539ec3c1f04ac9748a260728e855f261b4977f5c3406612c884564f329404"
-dependencies = [
- "base-x",
- "data-encoding",
- "data-encoding-macro",
-]
-
-[[package]]
-name = "multihash"
-version = "0.11.4"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "567122ab6492f49b59def14ecc36e13e64dca4188196dd0cd41f9f3f979f3df6"
-dependencies = [
- "blake2b_simd",
- "blake2s_simd",
- "digest 0.9.0",
- "sha-1 0.9.8",
- "sha2 0.9.9",
- "sha3",
- "unsigned-varint 0.5.1",
-]
-
-[[package]]
-name = "multihash"
-version = "0.14.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "752a61cd890ff691b4411423d23816d5866dd5621e4d1c5687a53b94b5a979d8"
-dependencies = [
- "blake2b_simd",
- "blake2s_simd",
- "blake3",
- "digest 0.9.0",
- "generic-array 0.14.5",
- "multihash-derive",
- "sha-1 0.9.8",
- "sha2 0.9.9",
- "sha3",
- "unsigned-varint 0.7.1",
-]
-
-[[package]]
-name = "multihash-derive"
-version = "0.7.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "424f6e86263cd5294cbd7f1e95746b95aca0e0d66bff31e5a40d6baa87b4aa99"
-dependencies = [
- "proc-macro-crate",
- "proc-macro-error",
- "proc-macro2",
- "quote",
- "syn",
- "synstructure",
-]
-
-[[package]]
-name = "native-tls"
-version = "0.2.10"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "fd7e2f3618557f980e0b17e8856252eee3c97fa12c54dff0ca290fb6266ca4a9"
-dependencies = [
- "lazy_static",
- "libc",
- "log",
- "openssl",
- "openssl-probe",
- "openssl-sys",
- "schannel",
- "security-framework",
- "security-framework-sys",
- "tempfile",
-]
-
-[[package]]
-name = "net2"
-version = "0.2.37"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "391630d12b68002ae1e25e8f974306474966550ad82dac6886fb8910c19568ae"
-dependencies = [
- "cfg-if 0.1.10",
- "libc",
- "winapi 0.3.9",
-]
-
-[[package]]
-name = "nix"
-version = "0.13.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4dbdc256eaac2e3bd236d93ad999d3479ef775c863dbda3068c4006a92eec51b"
-dependencies = [
- "bitflags",
- "cc",
- "cfg-if 0.1.10",
- "libc",
- "void",
-]
-
-[[package]]
-name = "nix"
-version = "0.23.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9f866317acbd3a240710c63f065ffb1e4fd466259045ccb504130b7f668f35c6"
-dependencies = [
- "bitflags",
- "cc",
- "cfg-if 1.0.0",
- "libc",
- "memoffset",
-]
-
-[[package]]
-name = "no-std-compat"
-version = "0.4.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b93853da6d84c2e3c7d730d6473e8817692dd89be387eb01b94d7f108ecb5b8c"
-dependencies = [
- "hashbrown 0.8.2",
-]
-
-[[package]]
-name = "nom"
-version = "5.1.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ffb4262d26ed83a1c0a33a38fe2bb15797329c85770da05e6b828ddb782627af"
-dependencies = [
- "memchr",
- "version_check",
-]
-
-[[package]]
-name = "nom"
-version = "7.1.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a8903e5a29a317527874d0402f867152a3d21c908bb0b933e416c65e301d4c36"
-dependencies = [
- "memchr",
- "minimal-lexical",
-]
-
-[[package]]
-name = "nonempty"
-version = "0.7.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e9e591e719385e6ebaeb5ce5d3887f7d5676fceca6411d1925ccc95745f3d6f7"
-dependencies = [
- "serde",
-]
-
-[[package]]
-name = "nonzero_ext"
-version = "0.2.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "44a1290799eababa63ea60af0cbc3f03363e328e58f32fb0294798ed3e85f444"
-
-[[package]]
-name = "nonzero_ext"
-version = "0.3.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "38bf9645c8b145698bb0b18a4637dcacbc421ea49bef2317e4fd8065a387cf21"
-
-[[package]]
-name = "notify"
-version = "4.0.17"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ae03c8c853dba7bfd23e571ff0cff7bc9dceb40a4cd684cd1681824183f45257"
-dependencies = [
- "bitflags",
- "filetime",
- "fsevent",
- "fsevent-sys",
- "inotify",
- "libc",
- "mio 0.6.23",
- "mio-extras",
- "walkdir",
- "winapi 0.3.9",
-]
-
-[[package]]
-name = "ntapi"
-version = "0.3.7"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c28774a7fd2fbb4f0babd8237ce554b73af68021b5f695a3cebd6c59bac0980f"
-dependencies = [
- "winapi 0.3.9",
-]
-
-[[package]]
-name = "num"
-version = "0.2.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b8536030f9fea7127f841b45bb6243b27255787fb4eb83958aa1ef9d2fdc0c36"
-dependencies = [
- "num-bigint",
- "num-complex",
- "num-integer",
- "num-iter",
- "num-rational 0.2.4",
- "num-traits",
-]
-
-[[package]]
-name = "num-bigint"
-version = "0.2.6"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "090c7f9998ee0ff65aa5b723e4009f7b217707f1fb5ea551329cc4d6231fb304"
-dependencies = [
- "autocfg",
- "num-integer",
- "num-traits",
-]
-
-[[package]]
-name = "num-cmp"
-version = "0.1.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "63335b2e2c34fae2fb0aa2cecfd9f0832a1e24b3b32ecec612c3426d46dc8aaa"
-
-[[package]]
-name = "num-complex"
-version = "0.2.4"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b6b19411a9719e753aff12e5187b74d60d3dc449ec3f4dc21e3989c3f554bc95"
-dependencies = [
- "autocfg",
- "num-traits",
-]
-
-[[package]]
-name = "num-integer"
-version = "0.1.45"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "225d3389fb3509a24c93f5c29eb6bde2586b98d9f016636dff58d7c6f7569cd9"
-dependencies = [
- "autocfg",
- "num-traits",
-]
-
-[[package]]
-name = "num-iter"
-version = "0.1.43"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7d03e6c028c5dc5cac6e2dec0efda81fc887605bb3d884578bb6d6bf7514e252"
-dependencies = [
- "autocfg",
- "num-integer",
- "num-traits",
-]
-
-[[package]]
-name = "num-rational"
-version = "0.2.4"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5c000134b5dbf44adc5cb772486d335293351644b801551abe8f75c84cfa4aef"
-dependencies = [
- "autocfg",
- "num-bigint",
- "num-integer",
- "num-traits",
-]
-
-[[package]]
-name = "num-rational"
-version = "0.3.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "12ac428b1cb17fce6f731001d307d351ec70a6d202fc2e60f7d4c5e42d8f4f07"
-dependencies = [
- "autocfg",
- "num-integer",
- "num-traits",
-]
-
-[[package]]
-name = "num-traits"
-version = "0.2.14"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9a64b1ec5cda2586e284722486d802acf1f7dbdc623e2bfc57e65ca1cd099290"
-dependencies = [
- "autocfg",
-]
-
-[[package]]
-name = "num_cpus"
-version = "1.13.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "19e64526ebdee182341572e50e9ad03965aa510cd94427a4549448f285e957a1"
-dependencies = [
- "hermit-abi",
- "libc",
-]
-
-[[package]]
-name = "num_threads"
-version = "0.1.5"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "aba1801fb138d8e85e11d0fc70baf4fe1cdfffda7c6cd34a854905df588e5ed0"
-dependencies = [
- "libc",
-]
-
-[[package]]
-name = "number_prefix"
-version = "0.4.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "830b246a0e5f20af87141b25c173cd1b609bd7779a4617d6ec582abaf90870f3"
-
-[[package]]
-name = "oid"
-version = "0.2.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9c19903c598813dba001b53beeae59bb77ad4892c5c1b9b3500ce4293a0d06c2"
-dependencies = [
- "serde",
-]
-
-[[package]]
-name = "once_cell"
-version = "1.10.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "87f3e037eac156d1775da914196f0f37741a274155e34a0b7e427c35d2a2ecb9"
-
-[[package]]
-name = "opaque-debug"
-version = "0.2.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2839e79665f131bdb5782e51f2c6c9599c133c6098982a54c794358bf432529c"
-
-[[package]]
-name = "opaque-debug"
-version = "0.3.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "624a8340c38c1b80fd549087862da4ba43e08858af025b236e509b6649fc13d5"
-
-[[package]]
-name = "openssl"
-version = "0.10.38"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0c7ae222234c30df141154f159066c5093ff73b63204dcda7121eb082fc56a95"
-dependencies = [
- "bitflags",
- "cfg-if 1.0.0",
- "foreign-types",
- "libc",
- "once_cell",
- "openssl-sys",
-]
-
-[[package]]
-name = "openssl-probe"
-version = "0.1.5"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ff011a302c396a5197692431fc1948019154afc178baf7d8e37367442a4601cf"
-
-[[package]]
-name = "openssl-sys"
-version = "0.9.72"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7e46109c383602735fa0a2e48dd2b7c892b048e1bf69e5c3b1d804b7d9c203cb"
-dependencies = [
- "autocfg",
- "cc",
- "libc",
- "pkg-config",
- "vcpkg",
-]
-
-[[package]]
-name = "os_str_bytes"
-version = "3.1.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6acbef58a60fe69ab50510a55bc8cdd4d6cf2283d27ad338f54cb52747a9cf2d"
-
-[[package]]
-name = "os_str_bytes"
-version = "6.0.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8e22443d1643a904602595ba1cd8f7d896afe56d26712531c5ff73a15b2fbf64"
-
-[[package]]
-name = "output_vt100"
-version = "0.1.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "628223faebab4e3e40667ee0b2336d34a5b960ff60ea743ddfdbcf7770bcfb66"
-dependencies = [
- "winapi 0.3.9",
-]
-
-[[package]]
-name = "parity-scale-codec"
-version = "2.3.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "373b1a4c1338d9cd3d1fa53b3a11bdab5ab6bd80a20f7f7becd76953ae2be909"
-dependencies = [
- "arrayvec 0.7.2",
- "bitvec 0.20.4",
- "byte-slice-cast",
- "impl-trait-for-tuples",
- "parity-scale-codec-derive",
- "serde",
-]
-
-[[package]]
-name = "parity-scale-codec-derive"
-version = "2.3.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1557010476e0595c9b568d16dcfb81b93cdeb157612726f5170d31aa707bed27"
-dependencies = [
- "proc-macro-crate",
- "proc-macro2",
- "quote",
- "syn",
-]
-
-[[package]]
-name = "parking"
-version = "2.0.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "427c3892f9e783d91cc128285287e70a59e206ca452770ece88a76f7a3eddd72"
-
-[[package]]
-name = "parking_lot"
-version = "0.11.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7d17b78036a60663b797adeaee46f5c9dfebb86948d1255007a1d6be0271ff99"
-dependencies = [
- "instant",
- "lock_api",
- "parking_lot_core 0.8.5",
-]
-
-[[package]]
-name = "parking_lot"
-version = "0.12.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "87f5ec2493a61ac0506c0f4199f99070cbe83857b0337006a30f3e6719b8ef58"
-dependencies = [
- "lock_api",
- "parking_lot_core 0.9.3",
-]
-
-[[package]]
-name = "parking_lot_core"
-version = "0.8.5"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d76e8e1493bcac0d2766c42737f34458f1c8c50c0d23bcb24ea953affb273216"
-dependencies = [
- "cfg-if 1.0.0",
- "instant",
- "libc",
- "redox_syscall",
- "smallvec",
- "winapi 0.3.9",
-]
-
-[[package]]
-name = "parking_lot_core"
-version = "0.9.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "09a279cbf25cb0757810394fbc1e359949b59e348145c643a939a525692e6929"
-dependencies = [
- "cfg-if 1.0.0",
- "libc",
- "redox_syscall",
- "smallvec",
- "windows-sys",
-]
-
-[[package]]
-name = "password-hash"
-version = "0.2.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "77e0b28ace46c5a396546bcf443bf422b57049617433d8854227352a4a9b24e7"
-dependencies = [
- "base64ct",
- "rand_core 0.6.3",
- "subtle",
-]
-
-[[package]]
-name = "pbkdf2"
-version = "0.8.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d95f5254224e617595d2cc3cc73ff0a5eaf2637519e25f03388154e9378b6ffa"
-dependencies = [
- "base64ct",
- "crypto-mac 0.11.1",
- "hmac",
- "password-hash",
- "sha2 0.9.9",
-]
-
-[[package]]
-name = "pbkdf2"
-version = "0.9.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f05894bce6a1ba4be299d0c5f29563e08af2bc18bb7d48313113bed71e904739"
-dependencies = [
- "crypto-mac 0.11.1",
-]
-
-[[package]]
-name = "percent-encoding"
-version = "2.1.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d4fd5641d01c8f18a23da7b6fe29298ff4b55afcccdf78973b24cf3175fee32e"
-
-[[package]]
-name = "petgraph"
-version = "0.5.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "467d164a6de56270bd7c4d070df81d07beace25012d5103ced4e9ff08d6afdb7"
-dependencies = [
- "fixedbitset",
- "indexmap",
-]
-
-[[package]]
-name = "pharos"
-version = "0.5.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e9567389417feee6ce15dd6527a8a1ecac205ef62c2932bcf3d9f6fc5b78b414"
-dependencies = [
- "futures",
- "rustc_version",
-]
-
-[[package]]
-name = "phf"
-version = "0.8.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3dfb61232e34fcb633f43d12c58f83c1df82962dcdfa565a4e866ffc17dafe12"
-dependencies = [
- "phf_shared",
-]
-
-[[package]]
-name = "phf_codegen"
-version = "0.8.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "cbffee61585b0411840d3ece935cce9cb6321f01c45477d30066498cd5e1a815"
-dependencies = [
- "phf_generator",
- "phf_shared",
-]
-
-[[package]]
-name = "phf_generator"
-version = "0.8.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "17367f0cc86f2d25802b2c26ee58a7b23faeccf78a396094c13dced0d0182526"
-dependencies = [
- "phf_shared",
- "rand 0.7.3",
-]
-
-[[package]]
-name = "phf_shared"
-version = "0.8.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c00cf8b9eafe68dde5e9eaa2cef8ee84a9336a47d566ec55ca16589633b65af7"
-dependencies = [
- "siphasher",
-]
-
-[[package]]
-name = "picky-asn1"
-version = "0.3.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "889bbb26c80acf919e89980dfc8e04eb19df272d8a9893ec9b748d3a1675abde"
-dependencies = [
- "oid",
- "serde",
- "serde_bytes",
-]
-
-[[package]]
-name = "picky-asn1-der"
-version = "0.2.5"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "acbbd5390ab967396cc7473e6e0848684aec7166e657c6088604e07b54a73dbe"
-dependencies = [
- "picky-asn1",
- "serde",
- "serde_bytes",
-]
-
-[[package]]
-name = "picky-asn1-x509"
-version = "0.6.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f3033675030de806aba1d5470949701b7c9f1dbf77e3bb17bd12e5f945e560ba"
-dependencies = [
- "base64 0.13.0",
- "oid",
- "picky-asn1",
- "picky-asn1-der",
- "serde",
-]
-
-[[package]]
-name = "pin-project"
-version = "0.4.29"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9615c18d31137579e9ff063499264ddc1278e7b1982757ebc111028c4d1dc909"
-dependencies = [
- "pin-project-internal 0.4.29",
-]
-
-[[package]]
-name = "pin-project"
-version = "1.0.10"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "58ad3879ad3baf4e44784bc6a718a8698867bb991f8ce24d1bcbe2cfb4c3a75e"
-dependencies = [
- "pin-project-internal 1.0.10",
-]
-
-[[package]]
-name = "pin-project-internal"
-version = "0.4.29"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "044964427019eed9d49d9d5bbce6047ef18f37100ea400912a9fa4a3523ab12a"
-dependencies = [
- "proc-macro2",
- "quote",
- "syn",
-]
-
-[[package]]
-name = "pin-project-internal"
-version = "1.0.10"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "744b6f092ba29c3650faf274db506afd39944f48420f6c86b17cfe0ee1cb36bb"
-dependencies = [
- "proc-macro2",
- "quote",
- "syn",
-]
-
-[[package]]
-name = "pin-project-lite"
-version = "0.2.9"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e0a7ae3ac2f1173085d398531c705756c94a4c56843785df85a60c1a0afac116"
-
-[[package]]
-name = "pin-utils"
-version = "0.1.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8b870d8c151b6f2fb93e84a13146138f05d02ed11c7e7c54f8826aaaf7c9f184"
-
-[[package]]
-name = "pkcs8"
-version = "0.7.6"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ee3ef9b64d26bad0536099c816c6734379e45bbd5f14798def6809e5cc350447"
-dependencies = [
- "der 0.4.5",
- "spki 0.4.1",
-]
-
-[[package]]
-name = "pkcs8"
-version = "0.8.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7cabda3fb821068a9a4fab19a683eac3af12edf0f34b94a8be53c4972b8149d0"
-dependencies = [
- "der 0.5.1",
- "spki 0.5.4",
- "zeroize",
-]
-
-[[package]]
-name = "pkg-config"
-version = "0.3.25"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1df8c4ec4b0627e53bdf214615ad287367e482558cf84b109250b37464dc03ae"
-
-[[package]]
-name = "polling"
-version = "2.2.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "685404d509889fade3e86fe3a5803bca2ec09b0c0778d5ada6ec8bf7a8de5259"
-dependencies = [
- "cfg-if 1.0.0",
- "libc",
- "log",
- "wepoll-ffi",
- "winapi 0.3.9",
-]
-
-[[package]]
-name = "poly1305"
-version = "0.7.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "048aeb476be11a4b6ca432ca569e375810de9294ae78f4774e78ea98a9246ede"
-dependencies = [
- "cpufeatures",
- "opaque-debug 0.3.0",
- "universal-hash",
-]
-
-[[package]]
-name = "ppv-lite86"
-version = "0.2.16"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "eb9f9e6e233e5c4a35559a617bf40a4ec447db2e84c20b55a6f83167b7e57872"
-
-[[package]]
-name = "predicates"
-version = "2.1.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a5aab5be6e4732b473071984b3164dbbfb7a3674d30ea5ff44410b6bcd960c3c"
-dependencies = [
- "difflib",
- "itertools 0.10.3",
- "predicates-core",
-]
-
-[[package]]
-name = "predicates-core"
-version = "1.0.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "da1c2388b1513e1b605fcec39a95e0a9e8ef088f71443ef37099fa9ae6673fcb"
-
-[[package]]
-name = "predicates-tree"
-version = "1.0.5"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4d86de6de25020a36c6d3643a86d9a6a9f552107c0559c60ea03551b5e16c032"
-dependencies = [
- "predicates-core",
- "termtree",
-]
-
-[[package]]
-name = "pretty_assertions"
-version = "1.2.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c89f989ac94207d048d92db058e4f6ec7342b0971fc58d1271ca148b799b3563"
-dependencies = [
- "ansi_term",
- "ctor",
- "diff",
- "output_vt100",
-]
-
-[[package]]
-name = "primitive-types"
-version = "0.10.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "05e4722c697a58a99d5d06a08c30821d7c082a4632198de1eaa5a6c22ef42373"
-dependencies = [
- "fixed-hash",
- "impl-codec",
- "impl-rlp",
- "impl-serde",
- "uint",
-]
-
-[[package]]
-name = "proc-macro-crate"
-version = "1.1.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e17d47ce914bf4de440332250b0edd23ce48c005f59fab39d3335866b114f11a"
-dependencies = [
- "thiserror",
- "toml",
-]
-
-[[package]]
-name = "proc-macro-error"
-version = "1.0.4"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "da25490ff9892aab3fcf7c36f08cfb902dd3e71ca0f9f9517bea02a73a5ce38c"
-dependencies = [
- "proc-macro-error-attr",
- "proc-macro2",
- "quote",
- "syn",
- "version_check",
-]
-
-[[package]]
-name = "proc-macro-error-attr"
-version = "1.0.4"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a1be40180e52ecc98ad80b184934baf3d0d29f979574e439af5a55274b35f869"
-dependencies = [
- "proc-macro2",
- "quote",
- "version_check",
-]
-
-[[package]]
-name = "proc-macro2"
-version = "1.0.37"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ec757218438d5fda206afc041538b2f6d889286160d649a86a24d37e1235afd1"
-dependencies = [
- "unicode-xid",
-]
-
-[[package]]
-name = "prodash"
-version = "16.1.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "79b828b82b039761e012573c3f4b73c16bc549205bd288ae65f1b99f2e394317"
-dependencies = [
- "bytesize",
- "human_format",
-]
-
-[[package]]
-name = "qrcode"
-version = "0.12.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "16d2f1455f3630c6e5107b4f2b94e74d76dea80736de0981fd27644216cff57f"
-dependencies = [
- "checked_int_cast",
- "image",
-]
-
-[[package]]
-name = "quanta"
-version = "0.4.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d98dc777a7a39b76b1a26ae9d3f691f4c1bc0455090aa0b64dfa8cb7fc34c135"
-dependencies = [
- "libc",
- "winapi 0.3.9",
-]
-
-[[package]]
-name = "quick-error"
-version = "1.2.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a1d01941d82fa2ab50be1e79e6714289dd7cde78eba4c074bc5a4374f650dfe0"
-
-[[package]]
-name = "quick-error"
-version = "2.0.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a993555f31e5a609f617c12db6250dedcac1b0a85076912c436e6fc9b2c8e6a3"
-
-[[package]]
-name = "quickcheck"
-version = "1.0.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "588f6378e4dd99458b60ec275b4477add41ce4fa9f64dcba6f15adccb19b50d6"
-dependencies = [
- "env_logger",
- "log",
- "rand 0.8.5",
-]
-
-[[package]]
-name = "quinn"
-version = "0.7.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c82c0a393b300104f989f3db8b8637c0d11f7a32a9c214560b47849ba8f119aa"
-dependencies = [
- "bytes 1.1.0",
- "futures",
- "lazy_static",
- "libc",
- "mio 0.7.14",
- "quinn-proto",
- "rustls 0.19.1",
- "socket2 0.3.19",
- "thiserror",
- "tokio",
- "tracing",
- "webpki 0.21.4",
-]
-
-[[package]]
-name = "quinn-proto"
-version = "0.7.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "047aa96ec7ee6acabad7a1318dff72e9aff8994316bf2166c9b94cbec78ca54c"
-dependencies = [
- "bytes 1.1.0",
- "rand 0.8.5",
- "ring",
- "rustls 0.19.1",
- "slab",
- "thiserror",
- "tinyvec",
- "tracing",
- "webpki 0.21.4",
-]
-
-[[package]]
-name = "quote"
-version = "1.0.18"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a1feb54ed693b93a84e14094943b84b7c4eae204c512b7ccb95ab0c66d278ad1"
-dependencies = [
- "proc-macro2",
-]
-
-[[package]]
-name = "rad"
-version = "0.1.0"
-dependencies = [
- "anyhow",
- "lexopt",
- "librad",
- "rad-help",
- "radicle-common",
- "radicle-terminal",
-]
-
-[[package]]
-name = "rad-account"
-version = "0.1.0"
-dependencies = [
- "anyhow",
- "ethers",
- "lexopt",
- "radicle-common",
- "radicle-terminal",
-]
-
-[[package]]
-name = "rad-anchor"
-version = "0.1.0"
-dependencies = [
- "anyhow",
- "coins-bip32 0.6.0",
- "colored 1.9.3",
- "ethers",
- "lexopt",
- "link-identities",
- "log",
- "multihash 0.14.0",
- "radicle-cli",
- "radicle-common",
- "rpassword 5.0.1",
- "safe-transaction-client",
- "serde_json",
- "thiserror",
-]
-
-[[package]]
-name = "rad-auth"
-version = "0.1.0"
-dependencies = [
- "anyhow",
- "assay",
- "atty",
- "lexopt",
- "librad",
- "lnk-profile",
- "radicle-common",
- "radicle-terminal",
- "zeroize",
-]
-
-[[package]]
-name = "rad-checkout"
-version = "0.1.0"
-dependencies = [
- "anyhow",
- "lexopt",
- "librad",
- "lnk-profile",
- "rad-init",
- "radicle-common",
- "radicle-terminal",
-]
-
-[[package]]
-name = "rad-clone"
-version = "0.1.0"
-dependencies = [
- "anyhow",
- "lexopt",
- "librad",
- "rad-checkout",
- "rad-init",
- "rad-sync",
- "rad-track",
- "radicle-common",
- "radicle-terminal",
- "url",
-]
-
-[[package]]
-name = "rad-edit"
-version = "0.1.0"
-dependencies = [
- "anyhow",
- "lexopt",
- "librad",
- "link-identities",
- "radicle-common",
- "radicle-terminal",
- "serde_json",
-]
-
-[[package]]
-name = "rad-ens"
-version = "0.1.0"
-dependencies = [
- "anyhow",
- "ethers",
- "lexopt",
- "librad",
- "radicle-common",
- "radicle-terminal",
- "serde_json",
- "thiserror",
- "url",
-]
-
-[[package]]
-name = "rad-gov"
-version = "0.1.0"
-dependencies = [
- "anyhow",
- "ethers",
- "lexopt",
- "librad",
- "radicle-common",
- "radicle-terminal",
- "regex",
- "serde_json",
- "thiserror",
-]
-
-[[package]]
-name = "rad-help"
-version = "0.1.0"
-dependencies = [
- "anyhow",
- "lexopt",
- "librad",
- "lnk-clib",
- "lnk-profile",
- "rad-account",
- "rad-auth",
- "rad-checkout",
- "rad-clone",
- "rad-edit",
- "rad-ens",
- "rad-init",
- "rad-inspect",
- "rad-ls",
- "rad-pull",
- "rad-push",
- "rad-remote",
- "rad-rm",
- "rad-self",
- "rad-sync",
- "rad-track",
- "rad-untrack",
- "radicle-common",
- "radicle-terminal",
-]
-
-[[package]]
-name = "rad-init"
-version = "0.1.0"
-dependencies = [
- "anyhow",
- "lexopt",
- "librad",
- "lnk-profile",
- "radicle-common",
- "radicle-terminal",
-]
-
-[[package]]
-name = "rad-inspect"
-version = "0.1.0"
-dependencies = [
- "anyhow",
- "chrono",
- "colored_json",
- "lexopt",
- "librad",
- "link-identities",
- "lnk-profile",
- "radicle-common",
- "radicle-terminal",
- "serde_json",
-]
-
-[[package]]
-name = "rad-issue"
-version = "0.1.0"
-dependencies = [
- "anyhow",
- "automerge 0.1.0",
- "lazy_static",
- "lexopt",
- "librad",
- "radicle-common",
- "radicle-terminal",
- "serde",
- "serde_json",
- "serde_yaml",
-]
-
-[[package]]
-name = "rad-ls"
-version = "0.1.0"
-dependencies = [
- "anyhow",
- "lexopt",
- "librad",
- "radicle-common",
- "radicle-terminal",
-]
-
-[[package]]
-name = "rad-merge"
-version = "0.1.0"
-dependencies = [
- "anyhow",
- "lexopt",
- "librad",
- "lnk-identities",
- "lnk-profile",
- "rad-sync",
- "radicle-common",
- "radicle-terminal",
- "serde",
- "serde_json",
-]
-
-[[package]]
-name = "rad-patch"
-version = "0.1.0"
-dependencies = [
- "anyhow",
- "lexopt",
- "librad",
- "lnk-identities",
- "lnk-profile",
- "rad-sync",
- "radicle-common",
- "radicle-terminal",
- "serde",
- "serde_json",
-]
-
-[[package]]
-name = "rad-path"
-version = "0.1.0"
-dependencies = [
- "anyhow",
- "lexopt",
- "librad",
- "lnk-profile",
- "radicle-common",
- "radicle-terminal",
-]
-
-[[package]]
-name = "rad-pull"
-version = "0.1.0"
-dependencies = [
- "anyhow",
- "lexopt",
- "librad",
- "rad-sync",
- "radicle-common",
- "radicle-terminal",
-]
-
-[[package]]
-name = "rad-push"
-version = "0.1.0"
-dependencies = [
- "anyhow",
- "lexopt",
- "rad-sync",
- "radicle-common",
- "radicle-terminal",
-]
-
-[[package]]
-name = "rad-remote"
-version = "0.1.0"
-dependencies = [
- "anyhow",
- "lexopt",
- "librad",
- "radicle-common",
- "radicle-terminal",
-]
-
-[[package]]
-name = "rad-reward"
-version = "0.1.0"
-dependencies = [
- "anyhow",
- "ethers",
- "lexopt",
- "librad",
- "radicle-common",
- "radicle-terminal",
-]
-
-[[package]]
-name = "rad-rm"
-version = "0.1.0"
-dependencies = [
- "anyhow",
- "lexopt",
- "librad",
- "rad-untrack",
- "radicle-common",
- "radicle-terminal",
-]
-
-[[package]]
-name = "rad-self"
-version = "0.1.0"
-dependencies = [
- "anyhow",
- "lexopt",
- "librad",
- "lnk-profile",
- "radicle-common",
- "radicle-terminal",
-]
-
-[[package]]
-name = "rad-sync"
-version = "0.1.0"
-dependencies = [
- "anyhow",
- "fastrand",
- "lexopt",
- "librad",
- "lnk-clib",
- "lnk-profile",
- "radicle-common",
- "radicle-terminal",
- "url",
-]
-
-[[package]]
-name = "rad-track"
-version = "0.1.0"
-dependencies = [
- "anyhow",
- "lexopt",
- "librad",
- "radicle-common",
- "radicle-terminal",
-]
-
-[[package]]
-name = "rad-untrack"
-version = "0.1.0"
-dependencies = [
- "anyhow",
- "lexopt",
- "librad",
- "rad-track",
- "radicle-common",
- "radicle-terminal",
-]
-
-[[package]]
-name = "radicle-cli"
-version = "0.6.1"
-dependencies = [
- "anyhow",
- "assay",
- "assert_cmd",
- "atty",
- "colored 1.9.3",
- "ethers",
- "futures",
- "futures-lite",
- "lexopt",
- "librad",
- "link-identities",
- "lnk-profile",
- "log",
- "rad",
- "rad-account",
- "rad-auth",
- "rad-checkout",
- "rad-clone",
- "rad-edit",
- "rad-ens",
- "rad-gov",
- "rad-help",
- "rad-init",
- "rad-inspect",
- "rad-issue",
- "rad-ls",
- "rad-merge",
- "rad-patch",
- "rad-path",
- "rad-pull",
- "rad-push",
- "rad-remote",
- "rad-reward",
- "rad-rm",
- "rad-self",
- "rad-sync",
- "rad-track",
- "rad-untrack",
- "radicle-common",
- "radicle-git-helpers",
- "radicle-terminal",
- "url",
-]
-
-[[package]]
-name = "radicle-common"
-version = "0.1.0"
-dependencies = [
- "anyhow",
- "async-trait",
- "automerge 0.1.0",
- "base64 0.13.0",
- "byteorder",
- "chrono",
- "coins-bip32 0.6.0",
- "either",
- "ethers",
- "git-trailers",
- "git2",
- "hex",
- "lazy_static",
- "lexopt",
- "librad",
- "lnk-clib",
- "lnk-identities",
- "lnk-profile",
- "log",
- "nonempty",
- "quickcheck",
- "radicle-git-ext",
- "serde",
- "serde_json",
- "sha2 0.10.2",
- "thiserror",
- "tokio",
- "ureq",
- "url",
- "walletconnect",
- "zeroize",
-]
-
-[[package]]
-name = "radicle-data"
-version = "0.1.0"
-source = "git+https://github.com/radicle-dev/radicle-link?rev=a9485b78b5c78d252c92f61d990cf34622d1c8f1#a9485b78b5c78d252c92f61d990cf34622d1c8f1"
-dependencies = [
- "minicbor",
- "nonempty",
- "serde",
- "thiserror",
- "typenum",
-]
-
-[[package]]
-name = "radicle-git-ext"
-version = "0.1.0"
-source = "git+https://github.com/radicle-dev/radicle-link?rev=a9485b78b5c78d252c92f61d990cf34622d1c8f1#a9485b78b5c78d252c92f61d990cf34622d1c8f1"
-dependencies = [
- "git-ref-format",
- "git2",
- "link-git",
- "minicbor",
- "multihash 0.11.4",
- "percent-encoding",
- "radicle-std-ext",
- "serde",
- "thiserror",
-]
-
-[[package]]
-name = "radicle-git-helpers"
-version = "0.1.0"
-source = "git+https://github.com/radicle-dev/radicle-link?rev=a9485b78b5c78d252c92f61d990cf34622d1c8f1#a9485b78b5c78d252c92f61d990cf34622d1c8f1"
-dependencies = [
- "anyhow",
- "git2",
- "libgit2-sys",
- "librad",
-]
-
-[[package]]
-name = "radicle-keystore"
-version = "0.2.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "128583c70269a44d3e2144585b1f41a7f43ba11a2d8580266977268004a78a7b"
-dependencies = [
- "async-trait",
- "byteorder",
- "chacha20poly1305",
- "ed25519-zebra",
- "futures",
- "generic-array 0.14.5",
- "lazy_static",
- "lnk-cryptovec",
- "lnk-thrussh-agent",
- "lnk-thrussh-encoding",
- "rand 0.8.5",
- "rpassword 4.0.5",
- "scrypt 0.8.0",
- "secstr",
- "serde",
- "serde_cbor",
- "thiserror",
-]
-
-[[package]]
-name = "radicle-macros"
-version = "0.1.0"
-source = "git+https://github.com/radicle-dev/radicle-link?rev=a9485b78b5c78d252c92f61d990cf34622d1c8f1#a9485b78b5c78d252c92f61d990cf34622d1c8f1"
-dependencies = [
- "proc-macro-error",
- "quote",
- "radicle-git-ext",
- "syn",
-]
-
-[[package]]
-name = "radicle-std-ext"
-version = "0.1.0"
-source = "git+https://github.com/radicle-dev/radicle-link?rev=a9485b78b5c78d252c92f61d990cf34622d1c8f1#a9485b78b5c78d252c92f61d990cf34622d1c8f1"
-
-[[package]]
-name = "radicle-terminal"
-version = "0.1.0"
-dependencies = [
- "anyhow",
- "async-trait",
- "console",
- "dialoguer",
- "indicatif",
- "lexopt",
- "librad",
- "lnk-profile",
- "radicle-common",
- "thiserror",
- "zeroize",
-]
-
-[[package]]
-name = "radium"
-version = "0.3.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "def50a86306165861203e7f84ecffbbdfdea79f0e51039b33de1e952358c47ac"
-
-[[package]]
-name = "radium"
-version = "0.6.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "643f8f41a8ebc4c5dc4515c82bb8abd397b527fc20fd681b7c011c2aee5d44fb"
-
-[[package]]
-name = "rand"
-version = "0.7.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6a6b1679d49b24bbfe0c803429aa1874472f50d9b363131f0e89fc356b544d03"
-dependencies = [
- "getrandom 0.1.16",
- "libc",
- "rand_chacha 0.2.2",
- "rand_core 0.5.1",
- "rand_hc",
- "rand_pcg 0.2.1",
-]
-
-[[package]]
-name = "rand"
-version = "0.8.5"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "34af8d1a0e25924bc5b7c43c079c942339d8f0a8b57c39049bef581b46327404"
-dependencies = [
- "libc",
- "rand_chacha 0.3.1",
- "rand_core 0.6.3",
-]
-
-[[package]]
-name = "rand_chacha"
-version = "0.2.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f4c8ed856279c9737206bf725bf36935d8666ead7aa69b52be55af369d193402"
-dependencies = [
- "ppv-lite86",
- "rand_core 0.5.1",
-]
-
-[[package]]
-name = "rand_chacha"
-version = "0.3.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e6c10a63a0fa32252be49d21e7709d4d4baf8d231c2dbce1eaa8141b9b127d88"
-dependencies = [
- "ppv-lite86",
- "rand_core 0.6.3",
-]
-
-[[package]]
-name = "rand_core"
-version = "0.5.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "90bde5296fc891b0cef12a6d03ddccc162ce7b2aff54160af9338f8d40df6d19"
-dependencies = [
- "getrandom 0.1.16",
-]
-
-[[package]]
-name = "rand_core"
-version = "0.6.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d34f1408f55294453790c48b2f1ebbb1c5b4b7563eb1f418bcfcfdbb06ebb4e7"
-dependencies = [
- "getrandom 0.2.6",
-]
-
-[[package]]
-name = "rand_hc"
-version = "0.2.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ca3129af7b92a17112d59ad498c6f81eaf463253766b90396d39ea7a39d6613c"
-dependencies = [
- "rand_core 0.5.1",
-]
-
-[[package]]
-name = "rand_pcg"
-version = "0.2.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "16abd0c1b639e9eb4d7c50c0b8100b0d0f849be2349829c740fe8e6eb4816429"
-dependencies = [
- "rand_core 0.5.1",
-]
-
-[[package]]
-name = "rand_pcg"
-version = "0.3.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "59cad018caf63deb318e5a4586d99a24424a364f40f1e5778c29aca23f4fc73e"
-dependencies = [
- "rand_core 0.6.3",
-]
-
-[[package]]
-name = "rand_xoshiro"
-version = "0.6.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6f97cdb2a36ed4183de61b2f824cc45c9f1037f28afe0a322e9fff4c108b5aaa"
-dependencies = [
- "rand_core 0.6.3",
-]
-
-[[package]]
-name = "rayon"
-version = "1.5.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "fd249e82c21598a9a426a4e00dd7adc1d640b22445ec8545feef801d1a74c221"
-dependencies = [
- "autocfg",
- "crossbeam-deque",
- "either",
- "rayon-core",
-]
-
-[[package]]
-name = "rayon-core"
-version = "1.9.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9f51245e1e62e1f1629cbfec37b5793bbabcaeb90f30e94d2ba03564687353e4"
-dependencies = [
- "crossbeam-channel",
- "crossbeam-deque",
- "crossbeam-utils",
- "num_cpus",
-]
-
-[[package]]
-name = "redox_syscall"
-version = "0.2.13"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "62f25bc4c7e55e0b0b7a1d43fb893f4fa1361d0abe38b9ce4f323c2adfe6ef42"
-dependencies = [
- "bitflags",
-]
-
-[[package]]
-name = "redox_users"
-version = "0.4.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b033d837a7cf162d7993aded9304e30a83213c648b6e389db233191f891e5c2b"
-dependencies = [
- "getrandom 0.2.6",
- "redox_syscall",
- "thiserror",
-]
-
-[[package]]
-name = "regex"
-version = "1.5.5"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1a11647b6b25ff05a515cb92c365cec08801e83423a235b51e231e1808747286"
-dependencies = [
- "aho-corasick",
- "memchr",
- "regex-syntax",
-]
-
-[[package]]
-name = "regex-automata"
-version = "0.1.10"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6c230d73fb8d8c1b9c0b3135c5142a8acee3a0558fb8db5cf1cb65f8d7862132"
-
-[[package]]
-name = "regex-syntax"
-version = "0.6.25"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f497285884f3fcff424ffc933e56d7cbca511def0c9831a7f9b5f6153e3cc89b"
-
-[[package]]
-name = "remove_dir_all"
-version = "0.5.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3acd125665422973a33ac9d3dd2df85edad0f4ae9b00dafb1a05e43a9f5ef8e7"
-dependencies = [
- "winapi 0.3.9",
-]
-
-[[package]]
-name = "reqwest"
-version = "0.11.10"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "46a1f7aa4f35e5e8b4160449f51afc758f0ce6454315a9fa7d0d113e958c41eb"
-dependencies = [
- "base64 0.13.0",
- "bytes 1.1.0",
- "encoding_rs",
- "futures-core",
- "futures-util",
- "h2",
- "http",
- "http-body",
- "hyper",
- "hyper-rustls",
- "hyper-tls",
- "ipnet",
- "js-sys",
- "lazy_static",
- "log",
- "mime",
- "native-tls",
- "percent-encoding",
- "pin-project-lite",
- "rustls 0.20.4",
- "rustls-pemfile",
- "serde",
- "serde_json",
- "serde_urlencoded",
- "tokio",
- "tokio-native-tls",
- "tokio-rustls",
- "url",
- "wasm-bindgen",
- "wasm-bindgen-futures",
- "web-sys",
- "webpki-roots",
- "winreg",
-]
-
-[[package]]
-name = "rfc6979"
-version = "0.1.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "96ef608575f6392792f9ecf7890c00086591d29a83910939d430753f7c050525"
-dependencies = [
- "crypto-bigint 0.3.2",
- "hmac",
- "zeroize",
-]
-
-[[package]]
-name = "ring"
-version = "0.16.20"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3053cf52e236a3ed746dfc745aa9cacf1b791d846bdaf412f60a8d7d6e17c8fc"
-dependencies = [
- "cc",
- "libc",
- "once_cell",
- "spin",
- "untrusted",
- "web-sys",
- "winapi 0.3.9",
-]
-
-[[package]]
-name = "ripemd160"
-version = "0.9.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2eca4ecc81b7f313189bf73ce724400a07da2a6dac19588b03c8bd76a2dcc251"
-dependencies = [
- "block-buffer 0.9.0",
- "digest 0.9.0",
- "opaque-debug 0.3.0",
-]
-
-[[package]]
-name = "rlp"
-version = "0.5.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "999508abb0ae792aabed2460c45b89106d97fe4adac593bdaef433c2605847b5"
-dependencies = [
- "bytes 1.1.0",
- "rustc-hex",
-]
-
-[[package]]
-name = "rlp-derive"
-version = "0.1.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e33d7b2abe0c340d8797fe2907d3f20d3b5ea5908683618bfe80df7f621f672a"
-dependencies = [
- "proc-macro2",
- "quote",
- "syn",
-]
-
-[[package]]
-name = "rpassword"
-version = "4.0.5"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "99371657d3c8e4d816fb6221db98fa408242b0b53bac08f8676a41f8554fe99f"
-dependencies = [
- "libc",
- "winapi 0.3.9",
-]
-
-[[package]]
-name = "rpassword"
-version = "5.0.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ffc936cf8a7ea60c58f030fd36a612a48f440610214dc54bc36431f9ea0c3efb"
-dependencies = [
- "libc",
- "winapi 0.3.9",
-]
-
-[[package]]
-name = "rusb"
-version = "0.9.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "703aa035c21c589b34fb5136b12e68fc8dcf7ea46486861381361dd8ebf5cee0"
-dependencies = [
- "libc",
- "libusb1-sys",
-]
-
-[[package]]
-name = "rustc-hash"
-version = "1.1.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "08d43f7aa6b08d49f382cde6a7982047c3426db949b1424bc4b7ec9ae12c6ce2"
-
-[[package]]
-name = "rustc-hex"
-version = "2.1.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3e75f6a532d0fd9f7f13144f392b6ad56a32696bfcd9c78f797f16bbb6f072d6"
-
-[[package]]
-name = "rustc_version"
-version = "0.4.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "bfa0f585226d2e68097d4f95d113b15b83a82e819ab25717ec0590d9584ef366"
-dependencies = [
- "semver",
-]
-
-[[package]]
-name = "rustls"
-version = "0.19.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "35edb675feee39aec9c99fa5ff985081995a06d594114ae14cbe797ad7b7a6d7"
-dependencies = [
- "base64 0.13.0",
- "log",
- "ring",
- "sct 0.6.1",
- "webpki 0.21.4",
-]
-
-[[package]]
-name = "rustls"
-version = "0.20.4"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4fbfeb8d0ddb84706bc597a5574ab8912817c52a397f819e5b614e2265206921"
-dependencies = [
- "log",
- "ring",
- "sct 0.7.0",
- "webpki 0.22.0",
-]
-
-[[package]]
-name = "rustls-pemfile"
-version = "0.3.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1ee86d63972a7c661d1536fefe8c3c8407321c3df668891286de28abcd087360"
-dependencies = [
- "base64 0.13.0",
-]
-
-[[package]]
-name = "rusty-fork"
-version = "0.3.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "cb3dcc6e454c328bb824492db107ab7c0ae8fcffe4ad210136ef014458c1bc4f"
-dependencies = [
- "fnv",
- "quick-error 1.2.3",
- "tempfile",
- "wait-timeout",
-]
-
-[[package]]
-name = "ryu"
-version = "1.0.9"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "73b4b750c782965c211b42f022f59af1fbceabdd026623714f104152f1ec149f"
-
-[[package]]
-name = "safe-transaction-client"
-version = "0.1.0"
-dependencies = [
- "ethers",
- "futures-executor",
- "hex",
- "rand_chacha 0.3.1",
- "serde",
- "thiserror",
- "tiny-keccak",
- "ureq",
-]
-
-[[package]]
-name = "salsa20"
-version = "0.8.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ecbd2eb639fd7cab5804a0837fe373cc2172d15437e804c054a9fb885cb923b0"
-dependencies = [
- "cipher",
-]
-
-[[package]]
-name = "same-file"
-version = "1.0.6"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "93fc1dc3aaa9bfed95e02e6eadabb4baf7e3078b0bd1b4d7b6b0b68378900502"
-dependencies = [
- "winapi-util",
-]
-
-[[package]]
-name = "schannel"
-version = "0.1.19"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8f05ba609c234e60bee0d547fe94a4c7e9da733d1c962cf6e59efa4cd9c8bc75"
-dependencies = [
- "lazy_static",
- "winapi 0.3.9",
-]
-
-[[package]]
-name = "scopeguard"
-version = "1.1.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d29ab0c6d3fc0ee92fe66e2d99f700eab17a8d57d1c1d3b748380fb20baa78cd"
-
-[[package]]
-name = "scrypt"
-version = "0.7.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "879588d8f90906e73302547e20fffefdd240eb3e0e744e142321f5d49dea0518"
-dependencies = [
- "base64ct",
- "hmac",
- "password-hash",
- "pbkdf2 0.8.0",
- "salsa20",
- "sha2 0.9.9",
-]
-
-[[package]]
-name = "scrypt"
-version = "0.8.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9f2cc535b6997b0c755bf9344e71ca0e1be070d07ff792f1fcd31e7b90e07d5f"
-dependencies = [
- "hmac",
- "pbkdf2 0.9.0",
- "salsa20",
- "sha2 0.9.9",
-]
-
-[[package]]
-name = "sct"
-version = "0.6.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b362b83898e0e69f38515b82ee15aa80636befe47c3b6d3d89a911e78fc228ce"
-dependencies = [
- "ring",
- "untrusted",
-]
-
-[[package]]
-name = "sct"
-version = "0.7.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d53dcdb7c9f8158937a7981b48accfd39a43af418591a5d008c7b22b5e1b7ca4"
-dependencies = [
- "ring",
- "untrusted",
-]
-
-[[package]]
-name = "sec1"
-version = "0.2.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "08da66b8b0965a5555b6bd6639e68ccba85e1e2506f5fbb089e93f8a04e1a2d1"
-dependencies = [
- "der 0.5.1",
- "generic-array 0.14.5",
- "pkcs8 0.8.0",
- "subtle",
- "zeroize",
-]
-
-[[package]]
-name = "secstr"
-version = "0.3.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "fb003d53cef244a97516226b01155057c7fa6eb52914933c32f6c98a84182188"
-dependencies = [
- "libc",
-]
-
-[[package]]
-name = "security-framework"
-version = "2.6.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2dc14f172faf8a0194a3aded622712b0de276821addc574fa54fc0a1167e10dc"
-dependencies = [
- "bitflags",
- "core-foundation",
- "core-foundation-sys",
- "libc",
- "security-framework-sys",
-]
-
-[[package]]
-name = "security-framework-sys"
-version = "2.6.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0160a13a177a45bfb43ce71c01580998474f556ad854dcbca936dd2841a5c556"
-dependencies = [
- "core-foundation-sys",
- "libc",
-]
-
-[[package]]
-name = "semver"
-version = "1.0.9"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8cb243bdfdb5936c8dc3c45762a19d12ab4550cdc753bc247637d4ec35a040fd"
-dependencies = [
- "serde",
-]
-
-[[package]]
-name = "send_wrapper"
-version = "0.5.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "930c0acf610d3fdb5e2ab6213019aaa04e227ebe9547b0649ba599b16d788bd7"
-
-[[package]]
-name = "serde"
-version = "1.0.137"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "61ea8d54c77f8315140a05f4c7237403bf38b72704d031543aa1d16abbf517d1"
-dependencies = [
- "serde_derive",
-]
-
-[[package]]
-name = "serde-aux"
-version = "3.0.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "93abf9799c576f004252b2a05168d58527fb7c54de12e94b4d12fe3475ffad24"
-dependencies = [
- "serde",
- "serde_json",
-]
-
-[[package]]
-name = "serde_bytes"
-version = "0.11.6"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "212e73464ebcde48d723aa02eb270ba62eff38a9b732df31f33f1b4e145f3a54"
-dependencies = [
- "serde",
-]
-
-[[package]]
-name = "serde_cbor"
-version = "0.10.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f7081ed758ec726a6ed8ee7e92f5d3f6e6f8c3901b1f972e3a4a2f2599fad14f"
-dependencies = [
- "byteorder",
- "half",
- "serde",
-]
-
-[[package]]
-name = "serde_derive"
-version = "1.0.137"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1f26faba0c3959972377d3b2d306ee9f71faee9714294e41bb777f83f88578be"
-dependencies = [
- "proc-macro2",
- "quote",
- "syn",
-]
-
-[[package]]
-name = "serde_json"
-version = "1.0.80"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f972498cf015f7c0746cac89ebe1d6ef10c293b94175a243a2d9442c163d9944"
-dependencies = [
- "itoa 1.0.1",
- "ryu",
- "serde",
-]
-
-[[package]]
-name = "serde_urlencoded"
-version = "0.7.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d3491c14715ca2294c4d6a88f15e84739788c1d030eed8c110436aafdaa2f3fd"
-dependencies = [
- "form_urlencoded",
- "itoa 1.0.1",
- "ryu",
- "serde",
-]
-
-[[package]]
-name = "serde_yaml"
-version = "0.8.24"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "707d15895415db6628332b737c838b88c598522e4dc70647e59b72312924aebc"
-dependencies = [
- "indexmap",
- "ryu",
- "serde",
- "yaml-rust",
-]
-
-[[package]]
-name = "sha-1"
-version = "0.8.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f7d94d0bede923b3cea61f3f1ff57ff8cdfd77b400fb8f9998949e0cf04163df"
-dependencies = [
- "block-buffer 0.7.3",
- "digest 0.8.1",
- "fake-simd",
- "opaque-debug 0.2.3",
-]
-
-[[package]]
-name = "sha-1"
-version = "0.9.8"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "99cd6713db3cf16b6c84e06321e049a9b9f699826e16096d23bbcc44d15d51a6"
-dependencies = [
- "block-buffer 0.9.0",
- "cfg-if 1.0.0",
- "cpufeatures",
- "digest 0.9.0",
- "opaque-debug 0.3.0",
-]
-
-[[package]]
-name = "sha1"
-version = "0.6.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c1da05c97445caa12d05e848c4a4fcbbea29e748ac28f7e80e9b010392063770"
-dependencies = [
- "sha1_smol",
-]
-
-[[package]]
-name = "sha1_smol"
-version = "1.0.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ae1a47186c03a32177042e55dbc5fd5aee900b8e0069a8d70fba96a9375cd012"
-
-[[package]]
-name = "sha2"
-version = "0.8.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a256f46ea78a0c0d9ff00077504903ac881a1dafdc20da66545699e7776b3e69"
-dependencies = [
- "block-buffer 0.7.3",
- "digest 0.8.1",
- "fake-simd",
- "opaque-debug 0.2.3",
-]
-
-[[package]]
-name = "sha2"
-version = "0.9.9"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4d58a1e1bf39749807d89cf2d98ac2dfa0ff1cb3faa38fbb64dd88ac8013d800"
-dependencies = [
- "block-buffer 0.9.0",
- "cfg-if 1.0.0",
- "cpufeatures",
- "digest 0.9.0",
- "opaque-debug 0.3.0",
- "sha2-asm",
-]
-
-[[package]]
-name = "sha2"
-version = "0.10.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "55deaec60f81eefe3cce0dc50bda92d6d8e88f2a27df7c5033b42afeb1ed2676"
-dependencies = [
- "cfg-if 1.0.0",
- "cpufeatures",
- "digest 0.10.3",
-]
-
-[[package]]
-name = "sha2-asm"
-version = "0.6.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "bf27176fb5d15398e3a479c652c20459d9dac830dedd1fa55b42a77dbcdbfcea"
-dependencies = [
- "cc",
-]
-
-[[package]]
-name = "sha3"
-version = "0.9.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f81199417d4e5de3f04b1e871023acea7389672c4135918f05aa9cbf2f2fa809"
-dependencies = [
- "block-buffer 0.9.0",
- "digest 0.9.0",
- "keccak",
- "opaque-debug 0.3.0",
-]
-
-[[package]]
-name = "signal-hook"
-version = "0.3.13"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "647c97df271007dcea485bb74ffdb57f2e683f1306c854f468a0c244badabf2d"
-dependencies = [
- "libc",
- "signal-hook-registry",
-]
-
-[[package]]
-name = "signal-hook-registry"
-version = "1.4.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e51e73328dc4ac0c7ccbda3a494dfa03df1de2f46018127f60c693f2648455b0"
-dependencies = [
- "libc",
-]
-
-[[package]]
-name = "signature"
-version = "1.3.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f2807892cfa58e081aa1f1111391c7a0649d4fa127a4ffbe34bcbfb35a1171a4"
-dependencies = [
- "digest 0.9.0",
- "rand_core 0.6.3",
-]
-
-[[package]]
-name = "similar"
-version = "2.1.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2e24979f63a11545f5f2c60141afe249d4f19f84581ea2138065e400941d83d3"
-
-[[package]]
-name = "siphasher"
-version = "0.3.10"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7bd3e3206899af3f8b12af284fafc038cc1dc2b41d1b89dd17297221c5d225de"
-
-[[package]]
-name = "sized-chunks"
-version = "0.6.5"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "16d69225bde7a69b235da73377861095455d298f2b970996eec25ddbb42b3d1e"
-dependencies = [
- "bitmaps",
- "typenum",
-]
-
-[[package]]
-name = "sized-vec"
-version = "0.3.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5985e3944437a472b2059be8671eae6ab8e067324fd3a7161af28c22d1f11367"
-dependencies = [
- "typenum",
-]
-
-[[package]]
-name = "slab"
-version = "0.4.6"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "eb703cfe953bccee95685111adeedb76fabe4e97549a58d16f03ea7b9367bb32"
-
-[[package]]
-name = "smallvec"
-version = "1.8.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f2dd574626839106c320a323308629dcb1acfc96e32a8cba364ddc61ac23ee83"
-
-[[package]]
-name = "smol_str"
-version = "0.1.23"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7475118a28b7e3a2e157ce0131ba8c5526ea96e90ee601d9f6bb2e286a35ab44"
-dependencies = [
- "serde",
-]
-
-[[package]]
-name = "socket2"
-version = "0.3.19"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "122e570113d28d773067fab24266b66753f6ea915758651696b6e35e49f88d6e"
-dependencies = [
- "cfg-if 1.0.0",
- "libc",
- "winapi 0.3.9",
-]
-
-[[package]]
-name = "socket2"
-version = "0.4.4"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "66d72b759436ae32898a2af0a14218dbf55efde3feeb170eb623637db85ee1e0"
-dependencies = [
- "libc",
- "winapi 0.3.9",
-]
-
-[[package]]
-name = "spin"
-version = "0.5.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6e63cff320ae2c57904679ba7cb63280a3dc4613885beafb148ee7bf9aa9042d"
-
-[[package]]
-name = "spki"
-version = "0.4.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5c01a0c15da1b0b0e1494112e7af814a678fec9bd157881b49beac661e9b6f32"
-dependencies = [
- "der 0.4.5",
-]
-
-[[package]]
-name = "spki"
-version = "0.5.4"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "44d01ac02a6ccf3e07db148d2be087da624fea0221a16152ed01f0496a6b0a27"
-dependencies = [
- "base64ct",
- "der 0.5.1",
-]
-
-[[package]]
-name = "static_assertions"
-version = "1.1.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a2eb9349b6444b326872e140eb1cf5e7c522154d69e7a0ffb0fb81c06b37543f"
-
-[[package]]
-name = "strsim"
-version = "0.10.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "73473c0e59e6d5812c5dfe2a064a6444949f089e20eec9a2e5506596494e4623"
-
-[[package]]
-name = "strum"
-version = "0.21.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "aaf86bbcfd1fa9670b7a129f64fc0c9fcbbfe4f1bc4210e9e98fe71ffc12cde2"
-dependencies = [
- "strum_macros",
-]
-
-[[package]]
-name = "strum_macros"
-version = "0.21.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d06aaeeee809dbc59eb4556183dd927df67db1540de5be8d3ec0b6636358a5ec"
-dependencies = [
- "heck 0.3.3",
- "proc-macro2",
- "quote",
- "syn",
-]
-
-[[package]]
-name = "subtle"
-version = "2.4.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6bdef32e8150c2a081110b42772ffe7d7c9032b606bc226c8260fd97e0976601"
-
-[[package]]
-name = "syn"
-version = "1.0.92"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7ff7c592601f11445996a06f8ad0c27f094a58857c2f89e97974ab9235b92c52"
-dependencies = [
- "proc-macro2",
- "quote",
- "unicode-xid",
-]
-
-[[package]]
-name = "synstructure"
-version = "0.12.6"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f36bdaa60a83aca3921b5259d5400cbf5e90fc51931376a9bd4a0eb79aa7210f"
-dependencies = [
- "proc-macro2",
- "quote",
- "syn",
- "unicode-xid",
-]
-
-[[package]]
-name = "tap"
-version = "1.0.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "55937e1799185b12863d447f42597ed69d9928686b8d88a1df17376a097d8369"
-
-[[package]]
-name = "tempfile"
-version = "3.3.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5cdb1ef4eaeeaddc8fbd371e5017057064af0911902ef36b39801f67cc6d79e4"
-dependencies = [
- "cfg-if 1.0.0",
- "fastrand",
- "libc",
- "redox_syscall",
- "remove_dir_all",
- "winapi 0.3.9",
-]
-
-[[package]]
-name = "termcolor"
-version = "1.1.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "bab24d30b911b2376f3a13cc2cd443142f0c81dda04c118693e35b3835757755"
-dependencies = [
- "winapi-util",
-]
-
-[[package]]
-name = "terminal_size"
-version = "0.1.17"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "633c1a546cee861a1a6d0dc69ebeca693bf4296661ba7852b9d21d159e0506df"
-dependencies = [
- "libc",
- "winapi 0.3.9",
-]
-
-[[package]]
-name = "terminfo"
-version = "0.7.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "76971977e6121664ec1b960d1313aacfa75642adc93b9d4d53b247bd4cb1747e"
-dependencies = [
- "dirs",
- "fnv",
- "nom 5.1.2",
- "phf",
- "phf_codegen",
-]
-
-[[package]]
-name = "termtree"
-version = "0.2.4"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "507e9898683b6c43a9aa55b64259b721b52ba226e0f3779137e50ad114a4c90b"
-
-[[package]]
-name = "textwrap"
-version = "0.15.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b1141d4d61095b28419e22cb0bbf02755f5e54e0526f97f1e3d1d160e60885fb"
-
-[[package]]
-name = "thiserror"
-version = "1.0.31"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "bd829fe32373d27f76265620b5309d0340cb8550f523c1dda251d6298069069a"
-dependencies = [
- "thiserror-impl",
-]
-
-[[package]]
-name = "thiserror-impl"
-version = "1.0.31"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0396bc89e626244658bef819e22d0cc459e795a5ebe878e6ec336d1674a8d79a"
-dependencies = [
- "proc-macro2",
- "quote",
- "syn",
-]
-
-[[package]]
-name = "time"
-version = "0.1.43"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ca8a50ef2360fbd1eeb0ecd46795a87a19024eb4b53c5dc916ca1fd95fe62438"
-dependencies = [
- "libc",
- "winapi 0.3.9",
-]
-
-[[package]]
-name = "time"
-version = "0.3.9"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c2702e08a7a860f005826c6815dcac101b19b5eb330c27fe4a5928fec1d20ddd"
-dependencies = [
- "libc",
- "num_threads",
- "time-macros",
-]
-
-[[package]]
-name = "time-macros"
-version = "0.2.4"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "42657b1a6f4d817cda8e7a0ace261fe0cc946cf3a80314390b22cc61ae080792"
-
-[[package]]
-name = "tiny-keccak"
-version = "2.0.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2c9d3793400a45f954c52e73d068316d76b6f4e36977e3fcebb13a2721e80237"
-dependencies = [
- "crunchy",
-]
-
-[[package]]
-name = "tinyvec"
-version = "1.6.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "87cc5ceb3875bb20c2890005a4e226a4651264a5c75edb2421b52861a0a0cb50"
-dependencies = [
- "tinyvec_macros",
-]
-
-[[package]]
-name = "tinyvec_macros"
-version = "0.1.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "cda74da7e1a664f795bb1f8a87ec406fb89a02522cf6e50620d016add6dbbf5c"
-
-[[package]]
-name = "tokio"
-version = "1.18.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0f48b6d60512a392e34dbf7fd456249fd2de3c83669ab642e021903f4015185b"
-dependencies = [
- "bytes 1.1.0",
- "libc",
- "memchr",
- "mio 0.8.2",
- "num_cpus",
- "once_cell",
- "pin-project-lite",
- "signal-hook-registry",
- "socket2 0.4.4",
- "tokio-macros",
- "winapi 0.3.9",
-]
-
-[[package]]
-name = "tokio-macros"
-version = "1.7.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b557f72f448c511a979e2564e55d74e6c4432fc96ff4f6241bc6bded342643b7"
-dependencies = [
- "proc-macro2",
- "quote",
- "syn",
-]
-
-[[package]]
-name = "tokio-native-tls"
-version = "0.3.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f7d995660bd2b7f8c1568414c1126076c13fbb725c40112dc0120b78eb9b717b"
-dependencies = [
- "native-tls",
- "tokio",
-]
-
-[[package]]
-name = "tokio-rustls"
-version = "0.23.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4151fda0cf2798550ad0b34bcfc9b9dcc2a9d2471c895c68f3a8818e54f2389e"
-dependencies = [
- "rustls 0.20.4",
- "tokio",
- "webpki 0.22.0",
-]
-
-[[package]]
-name = "tokio-util"
-version = "0.7.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0edfdeb067411dba2044da6d1cb2df793dd35add7888d73c16e3381ded401764"
-dependencies = [
- "bytes 1.1.0",
- "futures-core",
- "futures-sink",
- "pin-project-lite",
- "tokio",
- "tracing",
-]
-
-[[package]]
-name = "toml"
-version = "0.5.9"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8d82e1a7758622a465f8cee077614c73484dac5b836c02ff6a40d5d1010324d7"
-dependencies = [
- "serde",
-]
-
-[[package]]
-name = "tower-service"
-version = "0.3.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "360dfd1d6d30e05fda32ace2c8c70e9c0a9da713275777f5a4dbb8a1893930c6"
-
-[[package]]
-name = "tracing"
-version = "0.1.34"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5d0ecdcb44a79f0fe9844f0c4f33a342cbcbb5117de8001e6ba0dc2351327d09"
-dependencies = [
- "cfg-if 1.0.0",
- "log",
- "pin-project-lite",
- "tracing-attributes",
- "tracing-core",
-]
-
-[[package]]
-name = "tracing-attributes"
-version = "0.1.21"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "cc6b8ad3567499f98a1db7a752b07a7c8c7c7c34c332ec00effb2b0027974b7c"
-dependencies = [
- "proc-macro2",
- "quote",
- "syn",
-]
-
-[[package]]
-name = "tracing-core"
-version = "0.1.26"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f54c8ca710e81886d498c2fd3331b56c93aa248d49de2222ad2742247c60072f"
-dependencies = [
- "lazy_static",
-]
-
-[[package]]
-name = "tracing-futures"
-version = "0.2.5"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "97d095ae15e245a057c8e8451bab9b3ee1e1f68e9ba2b4fbc18d0ac5237835f2"
-dependencies = [
- "pin-project 1.0.10",
- "tracing",
-]
-
-[[package]]
-name = "try-lock"
-version = "0.2.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "59547bce71d9c38b83d9c0e92b6066c4253371f15005def0c30d9657f50c7642"
-
-[[package]]
-name = "typenum"
-version = "1.15.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "dcf81ac59edc17cc8697ff311e8f5ef2d99fcbd9817b34cec66f90b6c3dfd987"
-
-[[package]]
-name = "uint"
-version = "0.9.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "12f03af7ccf01dd611cc450a0d10dbc9b745770d096473e2faf0ca6e2d66d1e0"
-dependencies = [
- "byteorder",
- "crunchy",
- "hex",
- "static_assertions",
-]
-
-[[package]]
-name = "uluru"
-version = "3.0.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "794a32261a1f5eb6a4462c81b59cec87b5c27d5deea7dd1ac8fc781c41d226db"
-dependencies = [
- "arrayvec 0.7.2",
-]
-
-[[package]]
-name = "unicode-bidi"
-version = "0.3.8"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "099b7128301d285f79ddd55b9a83d5e6b9e97c92e0ea0daebee7263e932de992"
-
-[[package]]
-name = "unicode-normalization"
-version = "0.1.19"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d54590932941a9e9266f0832deed84ebe1bf2e4c9e4a3554d393d18f5e854bf9"
-dependencies = [
- "tinyvec",
-]
-
-[[package]]
-name = "unicode-segmentation"
-version = "1.9.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7e8820f5d777f6224dc4be3632222971ac30164d4a258d595640799554ebfd99"
-
-[[package]]
-name = "unicode-width"
-version = "0.1.9"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3ed742d4ea2bd1176e236172c8429aaf54486e7ac098db29ffe6529e0ce50973"
-
-[[package]]
-name = "unicode-xid"
-version = "0.2.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8ccb82d61f80a663efe1f787a51b16b5a51e3314d6ac365b08639f52387b33f3"
-
-[[package]]
-name = "universal-hash"
-version = "0.4.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9f214e8f697e925001e66ec2c6e37a4ef93f0f78c2eed7814394e10c62025b05"
-dependencies = [
- "generic-array 0.14.5",
- "subtle",
-]
-
-[[package]]
-name = "unsigned-varint"
-version = "0.5.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f7fdeedbf205afadfe39ae559b75c3240f24e257d0ca27e85f85cb82aa19ac35"
-
-[[package]]
-name = "unsigned-varint"
-version = "0.7.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d86a8dc7f45e4c1b0d30e43038c38f274e77af056aa5f74b93c2cf9eb3c1c836"
-
-[[package]]
-name = "untrusted"
-version = "0.7.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a156c684c91ea7d62626509bce3cb4e1d9ed5c4d978f7b4352658f96a4c26b4a"
-
-[[package]]
-name = "ureq"
-version = "2.4.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9399fa2f927a3d327187cbd201480cee55bee6ac5d3c77dd27f0c6814cff16d5"
-dependencies = [
- "base64 0.13.0",
- "chunked_transfer",
- "log",
- "once_cell",
- "rustls 0.20.4",
- "serde",
- "serde_json",
- "url",
- "webpki 0.22.0",
- "webpki-roots",
-]
-
-[[package]]
-name = "url"
-version = "2.2.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a507c383b2d33b5fc35d1861e77e6b383d158b2da5e14fe51b83dfedf6fd578c"
-dependencies = [
- "form_urlencoded",
- "idna",
- "matches",
- "percent-encoding",
- "serde",
-]
-
-[[package]]
-name = "uuid"
-version = "0.8.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "bc5cf98d8186244414c848017f0e2676b3fcb46807f6668a97dfe67359a3c4b7"
-dependencies = [
- "getrandom 0.2.6",
- "serde",
-]
-
-[[package]]
-name = "vcpkg"
-version = "0.2.15"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "accd4ea62f7bb7a82fe23066fb0957d48ef677f6eeb8215f372f52e48bb32426"
-
-[[package]]
-name = "version_check"
-version = "0.9.4"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "49874b5167b65d7193b8aba1567f5c7d93d001cafc34600cee003eda787e483f"
-
-[[package]]
-name = "versions"
-version = "3.0.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5cd9a7a22c45daf5aeb6bea3dff4ecbb8eb43e492582d467b18ce2979b512cbe"
-dependencies = [
- "itertools 0.10.3",
- "nom 7.1.1",
-]
-
-[[package]]
-name = "void"
-version = "1.0.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6a02e4885ed3bc0f2de90ea6dd45ebcbb66dacffe03547fadbb0eeae2770887d"
-
-[[package]]
-name = "wait-timeout"
-version = "0.2.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9f200f5b12eb75f8c1ed65abd4b2db8a6e1b138a20de009dacee265a2498f3f6"
-dependencies = [
- "libc",
-]
-
-[[package]]
-name = "waker-fn"
-version = "1.1.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9d5b2c62b4012a3e1eca5a7e077d13b3bf498c4073e33ccd58626607748ceeca"
-
-[[package]]
-name = "walkdir"
-version = "2.3.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "808cf2735cd4b6866113f648b791c6adc5714537bc222d9347bb203386ffda56"
-dependencies = [
- "same-file",
- "winapi 0.3.9",
- "winapi-util",
-]
-
-[[package]]
-name = "walletconnect"
-version = "0.1.0"
-source = "git+https://github.com/xphoniex/walletconnect-rs?branch=v0.1.0#82ab29227318b03254203d9cae62ea9ab9630d06"
-dependencies = [
- "atty",
- "data-encoding",
- "ethers-core",
- "futures",
- "jsonrpc-core",
- "lazy_static",
- "log",
- "openssl",
- "qrcode",
- "rand 0.8.5",
- "ring",
- "serde",
- "serde_json",
- "termcolor",
- "terminfo",
- "thiserror",
- "url",
- "uuid",
- "ws",
- "zeroize",
-]
-
-[[package]]
-name = "want"
-version = "0.3.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1ce8a968cb1cd110d136ff8b819a556d6fb6d919363c61534f6860c7eb172ba0"
-dependencies = [
- "log",
- "try-lock",
-]
-
-[[package]]
-name = "wasi"
-version = "0.9.0+wasi-snapshot-preview1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "cccddf32554fecc6acb585f82a32a72e28b48f8c4c1883ddfeeeaa96f7d8e519"
-
-[[package]]
-name = "wasi"
-version = "0.10.2+wasi-snapshot-preview1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "fd6fbd9a79829dd1ad0cc20627bf1ed606756a7f77edff7b66b7064f9cb327c6"
-
-[[package]]
-name = "wasi"
-version = "0.11.0+wasi-snapshot-preview1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9c8d87e72b64a3b4db28d11ce29237c246188f4f51057d65a7eab63b7987e423"
-
-[[package]]
-name = "wasm-bindgen"
-version = "0.2.80"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "27370197c907c55e3f1a9fbe26f44e937fe6451368324e009cba39e139dc08ad"
-dependencies = [
- "cfg-if 1.0.0",
- "wasm-bindgen-macro",
-]
-
-[[package]]
-name = "wasm-bindgen-backend"
-version = "0.2.80"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "53e04185bfa3a779273da532f5025e33398409573f348985af9a1cbf3774d3f4"
-dependencies = [
- "bumpalo",
- "lazy_static",
- "log",
- "proc-macro2",
- "quote",
- "syn",
- "wasm-bindgen-shared",
-]
-
-[[package]]
-name = "wasm-bindgen-futures"
-version = "0.4.30"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6f741de44b75e14c35df886aff5f1eb73aa114fa5d4d00dcd37b5e01259bf3b2"
-dependencies = [
- "cfg-if 1.0.0",
- "js-sys",
- "wasm-bindgen",
- "web-sys",
-]
-
-[[package]]
-name = "wasm-bindgen-macro"
-version = "0.2.80"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "17cae7ff784d7e83a2fe7611cfe766ecf034111b49deb850a3dc7699c08251f5"
-dependencies = [
- "quote",
- "wasm-bindgen-macro-support",
-]
-
-[[package]]
-name = "wasm-bindgen-macro-support"
-version = "0.2.80"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "99ec0dc7a4756fffc231aab1b9f2f578d23cd391390ab27f952ae0c9b3ece20b"
-dependencies = [
- "proc-macro2",
- "quote",
- "syn",
- "wasm-bindgen-backend",
- "wasm-bindgen-shared",
-]
-
-[[package]]
-name = "wasm-bindgen-shared"
-version = "0.2.80"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d554b7f530dee5964d9a9468d95c1f8b8acae4f282807e7d27d4b03099a46744"
-
-[[package]]
-name = "wasm-timer"
-version = "0.2.5"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "be0ecb0db480561e9a7642b5d3e4187c128914e58aa84330b9493e3eb68c5e7f"
-dependencies = [
- "futures",
- "js-sys",
- "parking_lot 0.11.2",
- "pin-utils",
- "wasm-bindgen",
- "wasm-bindgen-futures",
- "web-sys",
-]
-
-[[package]]
-name = "web-sys"
-version = "0.3.57"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7b17e741662c70c8bd24ac5c5b18de314a2c26c32bf8346ee1e6f53de919c283"
-dependencies = [
- "js-sys",
- "wasm-bindgen",
-]
-
-[[package]]
-name = "webpki"
-version = "0.21.4"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b8e38c0608262c46d4a56202ebabdeb094cef7e560ca7a226c6bf055188aa4ea"
-dependencies = [
- "ring",
- "untrusted",
-]
-
-[[package]]
-name = "webpki"
-version = "0.22.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f095d78192e208183081cc07bc5515ef55216397af48b873e5edcd72637fa1bd"
-dependencies = [
- "ring",
- "untrusted",
-]
-
-[[package]]
-name = "webpki-roots"
-version = "0.22.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "44d8de8415c823c8abd270ad483c6feeac771fad964890779f9a8cb24fbbc1bf"
-dependencies = [
- "webpki 0.22.0",
-]
-
-[[package]]
-name = "wepoll-ffi"
-version = "0.1.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d743fdedc5c64377b5fc2bc036b01c7fd642205a0d96356034ae3404d49eb7fb"
-dependencies = [
- "cc",
-]
-
-[[package]]
-name = "winapi"
-version = "0.2.8"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "167dc9d6949a9b857f3451275e911c3f44255842c1f7a76f33c55103a909087a"
-
-[[package]]
-name = "winapi"
-version = "0.3.9"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5c839a674fcd7a98952e593242ea400abe93992746761e38641405d28b00f419"
-dependencies = [
- "winapi-i686-pc-windows-gnu",
- "winapi-x86_64-pc-windows-gnu",
-]
-
-[[package]]
-name = "winapi-build"
-version = "0.1.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2d315eee3b34aca4797b2da6b13ed88266e6d612562a0c46390af8299fc699bc"
-
-[[package]]
-name = "winapi-i686-pc-windows-gnu"
-version = "0.4.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ac3b87c63620426dd9b991e5ce0329eff545bccbbb34f3be09ff6fb6ab51b7b6"
-
-[[package]]
-name = "winapi-util"
-version = "0.1.5"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "70ec6ce85bb158151cae5e5c87f95a8e97d2c0c4b001223f33a334e3ce5de178"
-dependencies = [
- "winapi 0.3.9",
-]
-
-[[package]]
-name = "winapi-x86_64-pc-windows-gnu"
-version = "0.4.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f"
-
-[[package]]
-name = "windows-sys"
-version = "0.36.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ea04155a16a59f9eab786fe12a4a450e75cdb175f9e0d80da1e17db09f55b8d2"
-dependencies = [
- "windows_aarch64_msvc",
- "windows_i686_gnu",
- "windows_i686_msvc",
- "windows_x86_64_gnu",
- "windows_x86_64_msvc",
-]
-
-[[package]]
-name = "windows_aarch64_msvc"
-version = "0.36.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9bb8c3fd39ade2d67e9874ac4f3db21f0d710bee00fe7cab16949ec184eeaa47"
-
-[[package]]
-name = "windows_i686_gnu"
-version = "0.36.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "180e6ccf01daf4c426b846dfc66db1fc518f074baa793aa7d9b9aaeffad6a3b6"
-
-[[package]]
-name = "windows_i686_msvc"
-version = "0.36.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e2e7917148b2812d1eeafaeb22a97e4813dfa60a3f8f78ebe204bcc88f12f024"
-
-[[package]]
-name = "windows_x86_64_gnu"
-version = "0.36.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4dcd171b8776c41b97521e5da127a2d86ad280114807d0b2ab1e462bc764d9e1"
-
-[[package]]
-name = "windows_x86_64_msvc"
-version = "0.36.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c811ca4a8c853ef420abd8592ba53ddbbac90410fab6903b3e79972a631f7680"
-
-[[package]]
-name = "winreg"
-version = "0.10.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "80d0f4e272c85def139476380b12f9ac60926689dd2e01d4923222f40580869d"
-dependencies = [
- "winapi 0.3.9",
-]
-
-[[package]]
-name = "ws"
-version = "0.9.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "25fe90c75f236a0a00247d5900226aea4f2d7b05ccc34da9e7a8880ff59b5848"
-dependencies = [
- "byteorder",
- "bytes 0.4.12",
- "httparse",
- "log",
- "mio 0.6.23",
- "mio-extras",
- "openssl",
- "rand 0.7.3",
- "sha-1 0.8.2",
- "slab",
- "url",
-]
-
-[[package]]
-name = "ws2_32-sys"
-version = "0.2.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d59cefebd0c892fa2dd6de581e937301d8552cb44489cdff035c6187cb63fa5e"
-dependencies = [
- "winapi 0.2.8",
- "winapi-build",
-]
-
-[[package]]
-name = "ws_stream_wasm"
-version = "0.7.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "47ca1ab42f5afed7fc332b22b6e932ca5414b209465412c8cdf0ad23bc0de645"
-dependencies = [
- "async_io_stream",
- "futures",
- "js-sys",
- "pharos",
- "rustc_version",
- "send_wrapper",
- "thiserror",
- "wasm-bindgen",
- "wasm-bindgen-futures",
- "web-sys",
-]
-
-[[package]]
-name = "wyz"
-version = "0.2.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "85e60b0d1b5f99db2556934e21937020776a5d31520bf169e851ac44e6420214"
-
-[[package]]
-name = "xorf"
-version = "0.7.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f0b223640dfbc22009679ce79f6777ae1db79add62a07345605777f69274a052"
-dependencies = [
- "rand 0.8.5",
-]
-
-[[package]]
-name = "yaml-rust"
-version = "0.4.5"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "56c1936c4cc7a1c9ab21a1ebb602eb942ba868cbd44a99cb7cdc5892335e1c85"
-dependencies = [
- "linked-hash-map",
-]
-
-[[package]]
-name = "zeroize"
-version = "1.4.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d68d9dcec5f9b43a30d38c49f91dfedfaac384cb8f085faca366c26207dd1619"
-dependencies = [
- "zeroize_derive",
-]
-
-[[package]]
-name = "zeroize_derive"
-version = "1.3.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3f8f187641dad4f680d25c4bfc4225b418165984179f26ca76ec4fb6441d3a17"
-dependencies = [
- "proc-macro2",
- "quote",
- "syn",
- "synstructure",
-]
diff --git a/pkgs/applications/version-management/radicle-cli/default.nix b/pkgs/applications/version-management/radicle-cli/default.nix
deleted file mode 100644
index 3f4073945106..000000000000
--- a/pkgs/applications/version-management/radicle-cli/default.nix
+++ /dev/null
@@ -1,88 +0,0 @@
-{ lib
-, stdenv
-, fetchFromGitHub
-, rustPlatform
-, pkg-config
-, cmake
-, installShellFiles
-, asciidoctor
-, DarwinTools
-, openssl
-, libusb1
-, AppKit
-, git
-, openssh
-, testers
-, radicle-cli
-}:
-
-rustPlatform.buildRustPackage rec {
-  pname = "radicle-cli";
-  version = "0.6.1";
-
-  src = fetchFromGitHub {
-    owner = "radicle-dev";
-    repo = pname;
-    rev = "v${version}";
-    sha256 = "sha256-LS6zYpMg0LanRL2M8ioGG8Ys07TPT/3hP7geEGehwxg=";
-  };
-
-  cargoLock = {
-    lockFile = ./Cargo.lock;
-    outputHashes = {
-      "automerge-0.0.2" = "sha256-MZ1/rca8ZsEUhd3bhd502PHlBbvqAOtnWFEdp7XWmYE=";
-      "automerge-0.1.0" = "sha256-dwbmx3W13oZ1O0Uw3/D5Z0ht1BO1PmVVoWc/tLCm0/4=";
-      "cob-0.1.0" = "sha256-ewPJEx7OSr8X6e5QJ4dh2SbzZ2TDa8G4zBR5euBbABo=";
-      "libusb1-sys-0.6.2" = "sha256-577ld1xqJkHp2bqALNq5IuZivD8y+VO8vNy9Y+hfq6c=";
-      "walletconnect-0.1.0" = "sha256-fdgdhotTYBmWbR4r0OMplOwhYq1C7jkuOdhKASjH+Fs=";
-    };
-  };
-
-  # Otherwise, there are errors due to the `abigen` macro from `ethers`.
-  auditable = false;
-
-  nativeBuildInputs = [
-    pkg-config
-    cmake
-    installShellFiles
-    asciidoctor
-  ] ++ lib.optionals stdenv.hostPlatform.isDarwin [
-    DarwinTools
-  ];
-
-  buildInputs = [
-    openssl
-  ] ++ lib.optionals stdenv.hostPlatform.isDarwin [
-    libusb1
-    AppKit
-  ];
-
-  postInstall = ''
-    for f in $(find . -name '*.adoc'); do
-      mf=''${f%.*}
-      asciidoctor --doctype manpage --backend manpage $f -o $mf
-      installManPage $mf
-    done
-  '';
-
-  nativeCheckInputs = [
-    git
-    openssh
-  ];
-  preCheck = ''
-    eval $(ssh-agent)
-  '';
-
-  passthru.tests = {
-    version = testers.testVersion { package = radicle-cli; };
-  };
-
-  meta = {
-    description = "Command-line tooling for Radicle, a decentralized code collaboration network";
-    homepage = "https://radicle.xyz";
-    license = lib.licenses.gpl3Plus;
-    maintainers = with lib.maintainers; [ amesgen ];
-    platforms = lib.platforms.unix;
-    mainProgram = "rad";
-  };
-}
diff --git a/pkgs/applications/version-management/radicle-upstream/default.nix b/pkgs/applications/version-management/radicle-upstream/default.nix
deleted file mode 100644
index ff12f008f4b2..000000000000
--- a/pkgs/applications/version-management/radicle-upstream/default.nix
+++ /dev/null
@@ -1,82 +0,0 @@
-{ lib, stdenv, appimageTools, autoPatchelfHook, zlib, fetchurl, undmg, libgcc }:
-
-let
-  pname = "radicle-upstream";
-  version = "0.3.0";
-
-  srcs = {
-    x86_64-linux = fetchurl {
-      url = "https://releases.radicle.xyz/radicle-upstream-${version}.AppImage";
-      sha256 = "sha256-Y7V89G+nXRtknOukvBN8Q+sNx91YNPDT0p5hrFYe/Sk=";
-    };
-    x86_64-darwin = fetchurl {
-      url = "https://releases.radicle.xyz/radicle-upstream-${version}.dmg";
-      sha256 = "sha256-EuWGbn6qggi8/9Rci8iaXfuVKE+QXb1BHEYDvotR/q4=";
-    };
-  };
-  src = srcs.${stdenv.hostPlatform.system} or (throw "unsupported system ${stdenv.hostPlatform.system}");
-
-  contents = appimageTools.extract { inherit pname version src; };
-
-  git-remote-rad = stdenv.mkDerivation rec {
-    pname = "git-remote-rad";
-    inherit version;
-    src = contents;
-
-    nativeBuildInputs = [ autoPatchelfHook ];
-    buildInputs = [ libgcc zlib ];
-
-    installPhase = ''
-      mkdir -p $out/bin/
-      install -Dm755 ${contents}/resources/git-remote-rad $out/bin/git-remote-rad
-    '';
-  };
-
-  # FIXME: a dependency of the `proxy` component of radicle-upstream (radicle-macros
-  # v0.1.0) uses unstable rust features, making a from source build impossible at
-  # this time. See this PR for discussion: https://github.com/NixOS/nixpkgs/pull/105674
-  linux = appimageTools.wrapType2 {
-    inherit pname version src meta;
-
-    extraInstallCommands = ''
-      # this automatically adds the git-remote-rad binary to the users `PATH` so
-      # they don't need to mess around with shell profiles...
-      ln -s ${git-remote-rad}/bin/git-remote-rad $out/bin/git-remote-rad
-
-      # desktop item
-      install -m 444 -D ${contents}/${pname}.desktop $out/share/applications/${pname}.desktop
-      substituteInPlace $out/share/applications/${pname}.desktop \
-        --replace 'Exec=AppRun' 'Exec=${pname}'
-
-      # icon
-      install -m 444 -D ${contents}/${pname}.png \
-        $out/share/icons/hicolor/512x512/apps/${pname}.png
-    '';
-  };
-
-  darwin = stdenv.mkDerivation {
-    inherit pname version src meta;
-
-    nativeBuildInputs = [ undmg ];
-
-    sourceRoot = ".";
-
-    installPhase = ''
-      mkdir -p $out/Applications
-      cp -r *.app $out/Applications
-    '';
-  };
-
-  meta = with lib; {
-    description = "A decentralized app for code collaboration";
-    homepage = "https://radicle.xyz/";
-    license = licenses.gpl3Plus;
-    maintainers = with maintainers; [ d-xo ];
-    platforms = [ "x86_64-linux" "x86_64-darwin" ];
-    sourceProvenance = with sourceTypes; [ binaryNativeCode ];
-    broken = stdenv.isLinux; # last successful build 2023-04-11
-  };
-in
-if stdenv.isDarwin
-then darwin
-else linux
diff --git a/pkgs/applications/version-management/sourcehut/default.nix b/pkgs/applications/version-management/sourcehut/default.nix
index 4a1311d578be..c941cc7570da 100644
--- a/pkgs/applications/version-management/sourcehut/default.nix
+++ b/pkgs/applications/version-management/sourcehut/default.nix
@@ -6,6 +6,7 @@
 , nixosTests
 , config
 , fetchPypi
+, fetchpatch
 }:
 
 # To expose the *srht modules, they have to be a python module so we use `buildPythonModule`
@@ -64,6 +65,13 @@ let
           inherit version;
           hash = "sha256-VUslfHS763oNJUFgpPj/4YUkP1KlIDUGC3Ycpi2XfwM=";
         };
+        # Fixes a test failure with Pytest 8
+        patches = (oldAttrs.patches or []) ++ [
+          (fetchpatch {
+            url = "https://github.com/pallets/werkzeug/commit/4e5bdca7f8227d10cae828f8064fb98190ace4aa.patch";
+            hash = "sha256-83doVvfdpymlAB0EbfrHmuoKE5B2LJbFq+AY2xGpnl4=";
+          })
+        ];
       });
 
       # sourcehut is not (yet) compatible with factory-boy 3.x
diff --git a/pkgs/applications/version-management/stgit/default.nix b/pkgs/applications/version-management/stgit/default.nix
index 94583ba93bc8..cece41286a80 100644
--- a/pkgs/applications/version-management/stgit/default.nix
+++ b/pkgs/applications/version-management/stgit/default.nix
@@ -18,15 +18,15 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "stgit";
-  version = "2.4.6";
+  version = "2.4.7";
 
   src = fetchFromGitHub {
     owner = "stacked-git";
     repo = "stgit";
     rev = "v${version}";
-    hash = "sha256-ZQU9AkemAMpMb2GhdfHaF6r6r6MbMXnmA0pq6Zq9Sek=";
+    hash = "sha256-TfCmVN7oHOgMyreJo58r6qaQYAXqmekpZt2WyTMGLvQ=";
   };
-  cargoHash = "sha256-DHTo0jRZlLmw/B042uqzpMLUhBwm+sbFj9pze5l1Kpk=";
+  cargoHash = "sha256-kH7YrjoNkpoUdzcWtVqpWtmw+FIMrJYbo0ye30/VeVk=";
 
   nativeBuildInputs = [
     pkg-config installShellFiles makeWrapper asciidoc xmlto docbook_xsl
diff --git a/pkgs/applications/version-management/sublime-merge/common.nix b/pkgs/applications/version-management/sublime-merge/common.nix
index 39157edf809b..811bed7694c1 100644
--- a/pkgs/applications/version-management/sublime-merge/common.nix
+++ b/pkgs/applications/version-management/sublime-merge/common.nix
@@ -18,7 +18,7 @@
   pango,
   libredirect,
   makeWrapper,
-  wrapGAppsHook,
+  wrapGAppsHook3,
   pkexecPath ? "/run/wrappers/bin/pkexec",
   writeShellScript,
   common-updater-scripts,
@@ -77,7 +77,7 @@ let
     ];
     nativeBuildInputs = [
       makeWrapper
-      wrapGAppsHook
+      wrapGAppsHook3
     ];
 
     buildPhase = ''
diff --git a/pkgs/applications/version-management/tig/default.nix b/pkgs/applications/version-management/tig/default.nix
index d7bd912b44d5..b4a8533d468e 100644
--- a/pkgs/applications/version-management/tig/default.nix
+++ b/pkgs/applications/version-management/tig/default.nix
@@ -4,13 +4,13 @@
 
 stdenv.mkDerivation rec {
   pname = "tig";
-  version = "2.5.9";
+  version = "2.5.10";
 
   src = fetchFromGitHub {
     owner = "jonas";
     repo = pname;
     rev = "${pname}-${version}";
-    sha256 = "sha256-RASZgQUlt/5ivImowM+sNw8Oe8aVkuUNErfgddmFjic=";
+    sha256 = "sha256-WTrw7WaSqC2fp76fPvfogWTibev0Hg0LW2x4umc3+1Q=";
   };
 
   nativeBuildInputs = [ makeWrapper autoreconfHook asciidoc xmlto docbook_xsl docbook_xml_dtd_45 findXMLCatalogs pkg-config ];
diff --git a/pkgs/applications/video/anilibria-winmaclinux/default.nix b/pkgs/applications/video/anilibria-winmaclinux/default.nix
index 818e3a8e1505..b9679d1fd49f 100644
--- a/pkgs/applications/video/anilibria-winmaclinux/default.nix
+++ b/pkgs/applications/video/anilibria-winmaclinux/default.nix
@@ -18,13 +18,13 @@
 
 mkDerivation rec {
   pname = "anilibria-winmaclinux";
-  version = "1.2.16.2";
+  version = "1.2.17";
 
   src = fetchFromGitHub {
     owner = "anilibria";
     repo = "anilibria-winmaclinux";
     rev = version;
-    hash = "sha256-IgNYJSadGemjclh7rtY8dHz7uSfBHoWEyLlRoZ+st6k=";
+    hash = "sha256-Ij4F5UCt1YOB4MLTlUTAiTt2zN4TkJuf5v6sWb9pJ6k=";
   };
 
   sourceRoot = "${src.name}/src";
diff --git a/pkgs/applications/video/bombono/default.nix b/pkgs/applications/video/bombono/default.nix
index 8ad77a668019..87545d5bceec 100644
--- a/pkgs/applications/video/bombono/default.nix
+++ b/pkgs/applications/video/bombono/default.nix
@@ -15,7 +15,7 @@
 , libdvdread
 , libxmlxx
 , mjpegtools
-, wrapGAppsHook
+, wrapGAppsHook3
 }:
 
 let
@@ -59,7 +59,7 @@ stdenv.mkDerivation rec {
       --replace "lib_mbase_env['CPPDEFINES']" "list(lib_mbase_env['CPPDEFINES'])"
   '';
 
-  nativeBuildInputs = [ wrapGAppsHook scons pkg-config gettext ];
+  nativeBuildInputs = [ wrapGAppsHook3 scons pkg-config gettext ];
 
   buildInputs = [
     boost
diff --git a/pkgs/applications/video/byzanz/default.nix b/pkgs/applications/video/byzanz/default.nix
index e3a97197d104..bc88c2481467 100644
--- a/pkgs/applications/video/byzanz/default.nix
+++ b/pkgs/applications/video/byzanz/default.nix
@@ -1,6 +1,6 @@
 { lib, stdenv
 , fetchgit
-, wrapGAppsHook
+, wrapGAppsHook3
 , cairo
 , glib
 , gnome
@@ -51,7 +51,7 @@ stdenv.mkDerivation {
     gst-plugins-good
     gst-plugins-ugly
     gst-libav
-    wrapGAppsHook
+    wrapGAppsHook3
   ]);
 
   meta = with lib; {
diff --git a/pkgs/applications/video/davinci-resolve/default.nix b/pkgs/applications/video/davinci-resolve/default.nix
index bb631909872c..bca8bc1e48ed 100644
--- a/pkgs/applications/video/davinci-resolve/default.nix
+++ b/pkgs/applications/video/davinci-resolve/default.nix
@@ -25,6 +25,9 @@
 , jq
 
 , studioVariant ? false
+
+, common-updater-scripts
+, writeShellApplication
 }:
 
 let
@@ -251,7 +254,28 @@ buildFHSEnv {
     ''
   }";
 
-  passthru = { inherit davinci; };
+  passthru = {
+    inherit davinci;
+    updateScript = lib.getExe (writeShellApplication {
+      name = "update-davinci-resolve";
+      runtimeInputs = [ curl jq common-updater-scripts ];
+      text = ''
+        set -o errexit
+        drv=pkgs/applications/video/davinci-resolve/default.nix
+        currentVersion=${lib.escapeShellArg davinci.version}
+        downloadsJSON="$(curl --fail --silent https://www.blackmagicdesign.com/api/support/us/downloads.json)"
+
+        latestLinuxVersion="$(echo "$downloadsJSON" | jq '[.downloads[] | select(.urls.Linux) | .urls.Linux[] | select(.downloadTitle | test("DaVinci Resolve")) | .downloadTitle]' | grep -oP 'DaVinci Resolve \K\d+\.\d+\.\d+' | sort | tail -n 1)"
+        update-source-version davinci-resolve "$latestLinuxVersion" --source-key=davinci.src
+
+        # Since the standard and studio both use the same version we need to reset it before updating studio
+        sed -i -e "s/""$latestLinuxVersion""/""$currentVersion""/" "$drv"
+
+        latestStudioLinuxVersion="$(echo "$downloadsJSON" | jq '[.downloads[] | select(.urls.Linux) | .urls.Linux[] | select(.downloadTitle | test("DaVinci Resolve")) | .downloadTitle]' | grep -oP 'DaVinci Resolve Studio \K\d+\.\d+\.\d+' | sort | tail -n 1)"
+        update-source-version davinci-resolve-studio "$latestStudioLinuxVersion" --source-key=davinci.src
+      '';
+    });
+  };
 
   meta = with lib; {
     description = "Professional video editing, color, effects and audio post-processing";
diff --git a/pkgs/applications/video/devede/default.nix b/pkgs/applications/video/devede/default.nix
index 22689e27d6e9..f17638d42e3b 100644
--- a/pkgs/applications/video/devede/default.nix
+++ b/pkgs/applications/video/devede/default.nix
@@ -1,5 +1,5 @@
 { lib, fetchFromGitLab, python3Packages, ffmpeg, mplayer, vcdimager, cdrkit, dvdauthor
-, gtk3, gettext, wrapGAppsHook, gdk-pixbuf, gobject-introspection }:
+, gtk3, gettext, wrapGAppsHook3, gdk-pixbuf, gobject-introspection }:
 
 let
   inherit (python3Packages) dbus-python buildPythonApplication pygobject3 urllib3 setuptools;
@@ -16,7 +16,7 @@ in buildPythonApplication rec {
   };
 
   nativeBuildInputs = [
-    gettext wrapGAppsHook
+    gettext wrapGAppsHook3
     gobject-introspection
   ];
 
diff --git a/pkgs/applications/video/dvdstyler/default.nix b/pkgs/applications/video/dvdstyler/default.nix
index 18018f88d025..e25bdf877a84 100644
--- a/pkgs/applications/video/dvdstyler/default.nix
+++ b/pkgs/applications/video/dvdstyler/default.nix
@@ -16,7 +16,7 @@
 , libexif
 , libjpeg
 , pkg-config
-, wrapGAppsHook
+, wrapGAppsHook3
 , wxGTK32
 , wxSVG
 , xine-ui
@@ -53,7 +53,7 @@ in stdenv.mkDerivation rec {
     gettext
     gobject-introspection
     pkg-config
-    wrapGAppsHook
+    wrapGAppsHook3
     xmlto
     zip
   ];
diff --git a/pkgs/applications/video/entangle/default.nix b/pkgs/applications/video/entangle/default.nix
index cfab93dbcd71..c06513a0fc0c 100644
--- a/pkgs/applications/video/entangle/default.nix
+++ b/pkgs/applications/video/entangle/default.nix
@@ -9,7 +9,7 @@
 , perl
 , python3
 , pkgconf
-, wrapGAppsHook
+, wrapGAppsHook3
 , at-spi2-core
 , dbus
 , elfutils
@@ -69,7 +69,7 @@ stdenv.mkDerivation rec {
     perl # for pod2man and build scripts
     python3 # for build scripts
     pkgconf
-    wrapGAppsHook
+    wrapGAppsHook3
     gobject-introspection
   ];
 
diff --git a/pkgs/applications/video/flowblade/default.nix b/pkgs/applications/video/flowblade/default.nix
index 937f5865d404..fff387881cca 100644
--- a/pkgs/applications/video/flowblade/default.nix
+++ b/pkgs/applications/video/flowblade/default.nix
@@ -1,6 +1,6 @@
 { lib, fetchFromGitHub, stdenv
 , ffmpeg, frei0r, sox, gtk3, python3, ladspaPlugins
-, gobject-introspection, makeWrapper, wrapGAppsHook
+, gobject-introspection, makeWrapper, wrapGAppsHook3
 }:
 
 stdenv.mkDerivation rec {
@@ -19,7 +19,7 @@ stdenv.mkDerivation rec {
     (python3.withPackages (ps: with ps; [ mlt pygobject3 dbus-python numpy pillow libusb1 ]))
   ];
 
-  nativeBuildInputs = [ gobject-introspection makeWrapper wrapGAppsHook ];
+  nativeBuildInputs = [ gobject-introspection makeWrapper wrapGAppsHook3 ];
 
   installPhase = ''
     runHook preInstall
diff --git a/pkgs/applications/video/gnome-mplayer/default.nix b/pkgs/applications/video/gnome-mplayer/default.nix
index 09ed7efaf0c0..436f31ac5a01 100644
--- a/pkgs/applications/video/gnome-mplayer/default.nix
+++ b/pkgs/applications/video/gnome-mplayer/default.nix
@@ -1,5 +1,5 @@
 {lib, stdenv, substituteAll, fetchFromGitHub, pkg-config, gettext, glib, gtk3, gmtk, dbus, dbus-glib
-, libnotify, libpulseaudio, mplayer, wrapGAppsHook }:
+, libnotify, libpulseaudio, mplayer, wrapGAppsHook3 }:
 
 stdenv.mkDerivation rec {
   pname = "gnome-mplayer";
@@ -12,7 +12,7 @@ stdenv.mkDerivation rec {
     sha256 = "0qvy9fllvg1mad6y1j79iaqa6khs0q2cb0z62yfg4srbr07fi8xr";
   };
 
-  nativeBuildInputs = [ pkg-config gettext wrapGAppsHook ];
+  nativeBuildInputs = [ pkg-config gettext wrapGAppsHook3 ];
   buildInputs = [ glib gtk3 gmtk dbus dbus-glib libnotify libpulseaudio ];
 
   patches = [
diff --git a/pkgs/applications/video/gnomecast/default.nix b/pkgs/applications/video/gnomecast/default.nix
index 9d0bfa9e966e..cb6e4a80510a 100644
--- a/pkgs/applications/video/gnomecast/default.nix
+++ b/pkgs/applications/video/gnomecast/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, lib, python3Packages, fetchFromGitHub, gtk3, gobject-introspection, ffmpeg, wrapGAppsHook }:
+{ stdenv, lib, python3Packages, fetchFromGitHub, gtk3, gobject-introspection, ffmpeg, wrapGAppsHook3 }:
 
 with python3Packages;
 buildPythonApplication rec {
@@ -12,7 +12,7 @@ buildPythonApplication rec {
     sha256 = "sha256-CJpbBuRzEjWb8hsh3HMW4bZA7nyDAwjrERCS5uGdwn8=";
   };
 
-  nativeBuildInputs = [ wrapGAppsHook ];
+  nativeBuildInputs = [ wrapGAppsHook3 ];
   propagatedBuildInputs = [
     pychromecast
     bottle
diff --git a/pkgs/applications/video/go2tv/default.nix b/pkgs/applications/video/go2tv/default.nix
index d8fc548f10b3..6837572cd9f0 100644
--- a/pkgs/applications/video/go2tv/default.nix
+++ b/pkgs/applications/video/go2tv/default.nix
@@ -14,16 +14,16 @@
 
 buildGoModule rec {
   pname = "go2tv" + lib.optionalString (!withGui) "-lite";
-  version = "1.15.0";
+  version = "1.16.1";
 
   src = fetchFromGitHub {
     owner = "alexballas";
     repo = "go2tv";
-    rev = "v${version}";
-    sha256 = "sha256-5GOhTDlUpzInMm8hVcBjbf1CXRw2GQITRtj6UaxYHtE=";
+    rev = "refs/tags/v${version}";
+    hash = "sha256-7m5GikrdcrJyl+KYuSk1JWLW2SsHOcBJNJuq2BahxHc=";
   };
 
-  vendorHash = null;
+  vendorHash = "sha256-na79rF/9o+s6E4i08Ocs6u98IABc19sTGFvjI6yeJFo=";
 
   nativeBuildInputs = [ pkg-config ];
 
@@ -39,7 +39,8 @@ buildGoModule rec {
   ] ++ lib.optionals stdenv.isDarwin [ Carbon Cocoa Kernel UserNotifications ];
 
   ldflags = [
-    "-s" "-w"
+    "-s"
+    "-w"
     "-linkmode=external"
   ];
 
@@ -51,6 +52,7 @@ buildGoModule rec {
   meta = with lib; {
     description = "Cast media files to UPnP/DLNA Media Renderers and Smart TVs";
     homepage = "https://github.com/alexballas/go2tv";
+    changelog = "https://github.com/alexballas/go2tv/releases/tag/v${version}";
     license = licenses.mit;
     maintainers = with maintainers; [ gdamjan ];
     mainProgram = "go2tv";
diff --git a/pkgs/applications/video/gpu-screen-recorder/gpu-screen-recorder-gtk.nix b/pkgs/applications/video/gpu-screen-recorder/gpu-screen-recorder-gtk.nix
index 86bfebad3860..678881faec44 100644
--- a/pkgs/applications/video/gpu-screen-recorder/gpu-screen-recorder-gtk.nix
+++ b/pkgs/applications/video/gpu-screen-recorder/gpu-screen-recorder-gtk.nix
@@ -8,7 +8,7 @@
 , libdrm
 , gpu-screen-recorder
 , libglvnd
-, wrapGAppsHook
+, wrapGAppsHook3
 }:
 
 stdenv.mkDerivation {
@@ -24,7 +24,7 @@ stdenv.mkDerivation {
   nativeBuildInputs = [
     pkg-config
     makeWrapper
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
diff --git a/pkgs/applications/video/handbrake/default.nix b/pkgs/applications/video/handbrake/default.nix
index da7170ca5f38..f3f6dacd4a54 100644
--- a/pkgs/applications/video/handbrake/default.nix
+++ b/pkgs/applications/video/handbrake/default.nix
@@ -73,7 +73,7 @@
 , desktop-file-utils
 , meson
 , ninja
-, wrapGAppsHook
+, wrapGAppsHook3
 , intltool
 , glib
 , gtk3
@@ -220,7 +220,7 @@ let
       pkg-config
       python3
     ]
-    ++ optionals useGtk [ desktop-file-utils intltool meson ninja wrapGAppsHook ];
+    ++ optionals useGtk [ desktop-file-utils intltool meson ninja wrapGAppsHook3 ];
 
     buildInputs = [
       a52dec
diff --git a/pkgs/applications/video/haruna/default.nix b/pkgs/applications/video/haruna/default.nix
index 273b26808af5..7409bb847074 100644
--- a/pkgs/applications/video/haruna/default.nix
+++ b/pkgs/applications/video/haruna/default.nix
@@ -25,13 +25,13 @@
 
 stdenv.mkDerivation rec {
   pname = "haruna";
-  version = "1.0.2";
+  version = "1.1.0";
 
   src = fetchFromGitLab {
     owner = "multimedia";
     repo = "haruna";
     rev = "v${version}";
-    hash = "sha256-L/mTFPJPHl8A6FqkWUwICh+Yl4uIE5KnTkZVnC4kCZ8=";
+    hash = "sha256-403ZqllSSaOdTS1GSf8EIQk9gHOxMsWogbK9qh+MhpY=";
     domain = "invent.kde.org";
   };
 
diff --git a/pkgs/applications/video/hypnotix/default.nix b/pkgs/applications/video/hypnotix/default.nix
index 5c2e4812501c..a3b1e25de48c 100644
--- a/pkgs/applications/video/hypnotix/default.nix
+++ b/pkgs/applications/video/hypnotix/default.nix
@@ -8,7 +8,7 @@
 , gobject-introspection
 , mpv
 , python3
-, wrapGAppsHook
+, wrapGAppsHook3
 , yt-dlp
 }:
 
@@ -45,7 +45,7 @@ stdenv.mkDerivation rec {
     gettext
     gobject-introspection
     python3.pkgs.wrapPython
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   dontWrapGApps = true;
diff --git a/pkgs/applications/video/imagination/default.nix b/pkgs/applications/video/imagination/default.nix
index 8d1d6ac305f9..6dd9793b8b97 100644
--- a/pkgs/applications/video/imagination/default.nix
+++ b/pkgs/applications/video/imagination/default.nix
@@ -1,5 +1,5 @@
 { lib, stdenv, fetchurl, autoreconfHook, docbook_xsl, ffmpeg-full, glib, gtk3
-, intltool, libxslt, pkg-config, sox, wrapGAppsHook }:
+, intltool, libxslt, pkg-config, sox, wrapGAppsHook3 }:
 
 stdenv.mkDerivation rec {
   pname = "imagination";
@@ -16,7 +16,7 @@ stdenv.mkDerivation rec {
     intltool
     libxslt
     pkg-config
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [ ffmpeg-full glib gtk3 sox ];
diff --git a/pkgs/applications/video/jellyfin-media-player/default.nix b/pkgs/applications/video/jellyfin-media-player/default.nix
index 47afaef81a63..9e48585e563e 100644
--- a/pkgs/applications/video/jellyfin-media-player/default.nix
+++ b/pkgs/applications/video/jellyfin-media-player/default.nix
@@ -1,6 +1,5 @@
 { lib
 , fetchFromGitHub
-, fetchzip
 , mkDerivation
 , stdenv
 , Cocoa
@@ -23,18 +22,18 @@
 , qtwebengine
 , qtx11extras
 , jellyfin-web
-, withDbus ? stdenv.isLinux, dbus
+, withDbus ? stdenv.isLinux
 }:
 
 mkDerivation rec {
   pname = "jellyfin-media-player";
-  version = "1.9.1";
+  version = "1.10.0";
 
   src = fetchFromGitHub {
     owner = "jellyfin";
     repo = "jellyfin-media-player";
     rev = "v${version}";
-    sha256 = "sha256-97/9UYXOsg8v7QoRqo5rh0UGhjjS85K9OvUwtlG249c=";
+    sha256 = "sha256-XeDyNSQpnTgV6u1vT69DEfbFHvBu1LNhvsQmKvUYq2o=";
   };
 
   patches = [
diff --git a/pkgs/applications/video/jellyfin-media-player/disable-update-notifications.patch b/pkgs/applications/video/jellyfin-media-player/disable-update-notifications.patch
index dd56d71f9075..82978b65c677 100644
--- a/pkgs/applications/video/jellyfin-media-player/disable-update-notifications.patch
+++ b/pkgs/applications/video/jellyfin-media-player/disable-update-notifications.patch
@@ -1,11 +1,11 @@
 diff --git a/resources/settings/settings_description.json b/resources/settings/settings_description.json
-index 20fff81..9979de5 100644
+index 3329d0d..ccd5718 100644
 --- a/resources/settings/settings_description.json
 +++ b/resources/settings/settings_description.json
-@@ -118,7 +118,7 @@
-       },
-       {
+@@ -127,7 +127,7 @@
          "value": "checkForUpdates",
+         "display_name": "Check For Updates",
+         "help": "Allows user to disable update check plugin script.",
 -        "default": true
 +        "default": false
        },
diff --git a/pkgs/applications/video/jellyfin-mpv-shim/default.nix b/pkgs/applications/video/jellyfin-mpv-shim/default.nix
index dad9a5240249..70f28ab72077 100644
--- a/pkgs/applications/video/jellyfin-mpv-shim/default.nix
+++ b/pkgs/applications/video/jellyfin-mpv-shim/default.nix
@@ -13,7 +13,7 @@
 , python-mpv-jsonipc
 , pywebview
 , tkinter
-, wrapGAppsHook
+, wrapGAppsHook3
 }:
 
 buildPythonApplication rec {
@@ -27,7 +27,7 @@ buildPythonApplication rec {
 
   nativeBuildInputs = [
     copyDesktopItems
-    wrapGAppsHook
+    wrapGAppsHook3
     gobject-introspection
   ];
 
diff --git a/pkgs/applications/video/kazam/default.nix b/pkgs/applications/video/kazam/default.nix
index 8ca3b813663f..cf392a143d7d 100644
--- a/pkgs/applications/video/kazam/default.nix
+++ b/pkgs/applications/video/kazam/default.nix
@@ -3,7 +3,7 @@
 , substituteAll
 , python3Packages
 , gst_all_1
-, wrapGAppsHook
+, wrapGAppsHook3
 , gobject-introspection
 , gtk3
 , libwnck
@@ -26,7 +26,7 @@ python3Packages.buildPythonApplication rec {
     sha256 = "1jk6khwgdv3nmagdgp5ivz3156pl0ljhf7b6i4b52w1h5ywsg9ah";
   };
 
-  nativeBuildInputs = [ gobject-introspection python3Packages.distutils-extra intltool wrapGAppsHook ];
+  nativeBuildInputs = [ gobject-introspection python3Packages.distutils-extra intltool wrapGAppsHook3 ];
   buildInputs = [
     gst_all_1.gstreamer
     gst_all_1.gst-plugins-base
diff --git a/pkgs/applications/video/kodi/addons/inputstream-adaptive/default.nix b/pkgs/applications/video/kodi/addons/inputstream-adaptive/default.nix
index 677467d34396..1a82cd1c19b9 100644
--- a/pkgs/applications/video/kodi/addons/inputstream-adaptive/default.nix
+++ b/pkgs/applications/video/kodi/addons/inputstream-adaptive/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, lib, rel, addonDir, buildKodiBinaryAddon, fetchFromGitHub, pugixml, glib, nspr, nss, gtest }:
+{ stdenv, lib, rel, addonDir, buildKodiBinaryAddon, fetchFromGitHub, pugixml, glib, nspr, nss, gtest, rapidjson }:
 let
   bento4 = fetchFromGitHub {
     owner = "xbmc";
@@ -10,13 +10,13 @@ in
 buildKodiBinaryAddon rec {
   pname = "inputstream-adaptive";
   namespace = "inputstream.adaptive";
-  version = "21.4.4";
+  version = "21.4.6";
 
   src = fetchFromGitHub {
     owner = "xbmc";
     repo = "inputstream.adaptive";
     rev = "${version}-${rel}";
-    sha256 = "sha256-Nzlm1AW/nW9chQAourKF0o2FSQmsr1MNhJ4gEO0/9sM=";
+    sha256 = "sha256-ub4ep89datfr8aZLZAfoz7zhOizGFpzgp2PVON6Ptj8=";
   };
 
   extraCMakeFlags = [
@@ -26,7 +26,7 @@ buildKodiBinaryAddon rec {
 
   extraNativeBuildInputs = [ gtest ];
 
-  extraBuildInputs = [ pugixml ];
+  extraBuildInputs = [ pugixml rapidjson ];
 
   extraRuntimeDependencies = [ glib nspr nss stdenv.cc.cc.lib ];
 
diff --git a/pkgs/applications/video/kodi/addons/pvr-hdhomerun/default.nix b/pkgs/applications/video/kodi/addons/pvr-hdhomerun/default.nix
index 6308a6470acd..4184126842ba 100644
--- a/pkgs/applications/video/kodi/addons/pvr-hdhomerun/default.nix
+++ b/pkgs/applications/video/kodi/addons/pvr-hdhomerun/default.nix
@@ -2,13 +2,13 @@
 buildKodiBinaryAddon rec {
   pname = "pvr-hdhomerun";
   namespace = "pvr.hdhomerun";
-  version = "20.4.0";
+  version = "21.0.1";
 
   src = fetchFromGitHub {
     owner = "kodi-pvr";
     repo = "pvr.hdhomerun";
     rev = "${version}-${rel}";
-    sha256 = "sha256-FKxoPD8t5JbouhvQtMVMFjk3O5zB9kVgrn0eC2RPDvQ=";
+    sha256 = "sha256-Hb8TcJxRUIKHbevAUgt5q6z26W3uX9NbVwYyvrLnf7U=";
   };
 
   extraBuildInputs = [ jsoncpp libhdhomerun ];
diff --git a/pkgs/applications/video/kodi/addons/pvr-hts/default.nix b/pkgs/applications/video/kodi/addons/pvr-hts/default.nix
index 7747b9e44c0b..9b20235e8ea1 100644
--- a/pkgs/applications/video/kodi/addons/pvr-hts/default.nix
+++ b/pkgs/applications/video/kodi/addons/pvr-hts/default.nix
@@ -2,13 +2,13 @@
 buildKodiBinaryAddon rec {
   pname = "pvr-hts";
   namespace = "pvr.hts";
-  version = "20.7.0";
+  version = "21.2.3";
 
   src = fetchFromGitHub {
     owner = "kodi-pvr";
     repo = "pvr.hts";
     rev = "${version}-${rel}";
-    sha256 = "sha256-Mc540n+TfZiAV2uDSGrItsoPOkEBNyyQlW2DJZLwYA4=";
+    sha256 = "sha256-4jHcUjGarLHsn5CjBLWB1wQNjBBw4ftMuDY5uFAHAzY=";
   };
 
   meta = with lib; {
diff --git a/pkgs/applications/video/kodi/addons/pvr-iptvsimple/default.nix b/pkgs/applications/video/kodi/addons/pvr-iptvsimple/default.nix
index 28dd626502e8..59f39a06fd71 100644
--- a/pkgs/applications/video/kodi/addons/pvr-iptvsimple/default.nix
+++ b/pkgs/applications/video/kodi/addons/pvr-iptvsimple/default.nix
@@ -6,13 +6,13 @@
 buildKodiBinaryAddon rec {
   pname = "pvr-iptvsimple";
   namespace = "pvr.iptvsimple";
-  version = "20.13.0";
+  version = "21.8.4";
 
   src = fetchFromGitHub {
     owner = "kodi-pvr";
     repo = "pvr.iptvsimple";
     rev = "${version}-${rel}";
-    sha256 = "sha256-W/tFM/WpWdSvLEf0iwQoH2JVDjyfr1l8CRQkOG5q4hk=";
+    sha256 = "sha256-uuqk1kJnioCaRWIkC5liPSVRQPpviuaE+wmE4rq6fJw=";
   };
 
   extraBuildInputs = [
diff --git a/pkgs/applications/video/kodi/addons/pvr-vdr-vnsi/default.nix b/pkgs/applications/video/kodi/addons/pvr-vdr-vnsi/default.nix
index 4b5e8c6a7094..9fdbee949d8f 100644
--- a/pkgs/applications/video/kodi/addons/pvr-vdr-vnsi/default.nix
+++ b/pkgs/applications/video/kodi/addons/pvr-vdr-vnsi/default.nix
@@ -2,13 +2,13 @@
 buildKodiBinaryAddon rec {
   pname = "pvr-vdr-vnsi";
   namespace = "pvr.vdr.vnsi";
-  version = "20.4.1";
+  version = "21.1.1";
 
   src = fetchFromGitHub {
     owner = "kodi-pvr";
     repo = "pvr.vdr.vnsi";
     rev = "${version}-${rel}";
-    sha256 = "sha256-QooWK+LwlN5RAISjAQ2YiyDAjQQMzod8fFXpI0ll+hc=";
+    sha256 = "sha256-Bd/21y3oAhQMmvrZzrN5Z6jLHySBd2LXNbLt/Me4jSw=";
   };
 
   extraBuildInputs = [ libGL ];
diff --git a/pkgs/applications/video/kodi/addons/visualization-projectm/default.nix b/pkgs/applications/video/kodi/addons/visualization-projectm/default.nix
index 8eaecd87fc47..38ab9d308762 100644
--- a/pkgs/applications/video/kodi/addons/visualization-projectm/default.nix
+++ b/pkgs/applications/video/kodi/addons/visualization-projectm/default.nix
@@ -3,13 +3,13 @@
 buildKodiBinaryAddon rec {
   pname = "visualization-projectm";
   namespace = "visualization.projectm";
-  version = "20.2.0";
+  version = "21.0.1";
 
   src = fetchFromGitHub {
     owner = "xbmc";
     repo = namespace;
     rev = "${version}-${rel}";
-    hash = "sha256-Kcl1ep+RJlofFmxkrGT3T+XXdwiCofq1hggwU0PAd0E=";
+    hash = "sha256-wjSQmOtQb4KjY3iH3Xh7AdQwE6ked+cpW6/gdNYS+NA=";
   };
 
   extraBuildInputs = [ pkg-config libGL projectm ];
diff --git a/pkgs/applications/video/kodi/addons/youtube/default.nix b/pkgs/applications/video/kodi/addons/youtube/default.nix
index f2f340b257db..23c59d702e4d 100644
--- a/pkgs/applications/video/kodi/addons/youtube/default.nix
+++ b/pkgs/applications/video/kodi/addons/youtube/default.nix
@@ -3,13 +3,13 @@
 buildKodiAddon rec {
   pname = "youtube";
   namespace = "plugin.video.youtube";
-  version = "7.0.6";
+  version = "7.0.6.3";
 
   src = fetchFromGitHub {
     owner = "anxdpanic";
     repo = "plugin.video.youtube";
     rev = "v${version}";
-    hash = "sha256-pxW45D/tppUTTgeR5wVteOP2f4TZ4wl/9A5IBhOZhTM=";
+    hash = "sha256-MhVxaI/kZ/CCAcf6Mo4DXmXpCLpxxpBFGwmTBp3rKkI=";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/applications/video/lbry/default.nix b/pkgs/applications/video/lbry/default.nix
index c3eb942fed92..f978fd622606 100644
--- a/pkgs/applications/video/lbry/default.nix
+++ b/pkgs/applications/video/lbry/default.nix
@@ -15,9 +15,7 @@ appimageTools.wrapAppImage rec {
   };
 
   # At runtime, Lbry likes to have access to Ffmpeg
-  extraPkgs = pkgs: with pkgs; [
-    ffmpeg
-  ];
+  extraPkgs = pkgs: [ pkgs.ffmpeg ];
 
   # General fixup
   extraInstallCommands = ''
diff --git a/pkgs/applications/video/losslesscut-bin/build-from-appimage.nix b/pkgs/applications/video/losslesscut-bin/build-from-appimage.nix
index 1317536f3cf5..14e4cf215e7b 100644
--- a/pkgs/applications/video/losslesscut-bin/build-from-appimage.nix
+++ b/pkgs/applications/video/losslesscut-bin/build-from-appimage.nix
@@ -29,8 +29,6 @@ appimageTools.wrapType2 {
     export LC_ALL=C.UTF-8
   '';
 
-  extraPkgs = ps: appimageTools.defaultFhsEnvArgs.multiPkgs ps;
-
   extraInstallCommands = ''
     (
       mkdir -p $out/share
diff --git a/pkgs/applications/video/media-downloader/default.nix b/pkgs/applications/video/media-downloader/default.nix
index 761243d897ba..e11b1b1b5bb2 100644
--- a/pkgs/applications/video/media-downloader/default.nix
+++ b/pkgs/applications/video/media-downloader/default.nix
@@ -12,13 +12,13 @@
 
 stdenv.mkDerivation (finalAttrs: {
   pname = "media-downloader";
-  version = "4.5.0";
+  version = "4.6.0";
 
   src = fetchFromGitHub {
     owner = "mhogomchungu";
     repo = "media-downloader";
     rev = finalAttrs.version;
-    hash = "sha256-n+eQjjjdZhvXFSw5D/UQhyBMSZstfI/JixiEVhmQwXs=";
+    hash = "sha256-sl82ZnRqFE3z+EGM+m5rAy4MMrbgkY4PZgyc94x7XUI=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/applications/video/mkvtoolnix/default.nix b/pkgs/applications/video/mkvtoolnix/default.nix
index 8fc656981a3a..bba037718596 100644
--- a/pkgs/applications/video/mkvtoolnix/default.nix
+++ b/pkgs/applications/video/mkvtoolnix/default.nix
@@ -8,6 +8,7 @@
 , cmark
 , docbook_xsl
 , expat
+, fetchpatch2
 , file
 , flac
 , fmt
@@ -94,6 +95,11 @@ stdenv.mkDerivation rec {
   ++ optionals stdenv.isLinux [ qtwayland ]
   ++ optionals stdenv.isDarwin [ libiconv ];
 
+  patches = [ (fetchpatch2 {
+    url = "https://gitlab.com/mbunkus/mkvtoolnix/-/commit/7e1bea9527616ab6ab38425e7290579f05dd9bb1.patch";
+    hash = "sha256-9UZrfwrzfKwF8XDzqYnuaDgZws7l1YAb5O1O1+nxo0g=";
+  }) ];
+
   # autoupdate is not needed but it silences a ton of pointless warnings
   postPatch = ''
     patchShebangs . > /dev/null
diff --git a/pkgs/applications/video/mpv/scripts/buildLua.nix b/pkgs/applications/video/mpv/scripts/buildLua.nix
index 8db7d4b1aa3c..2e25ee55b28a 100644
--- a/pkgs/applications/video/mpv/scripts/buildLua.nix
+++ b/pkgs/applications/video/mpv/scripts/buildLua.nix
@@ -1,5 +1,4 @@
-{ lib
-, stdenvNoCC }:
+{ lib, stdenvNoCC }:
 
 let
   # Escape strings for embedding in shell scripts
@@ -10,74 +9,90 @@ let
   scriptsDir = "$out/share/mpv/scripts";
 
   # similar to `lib.extends`, but with inverted precedence and recursive update
-  extendedBy = args: orig: self:
-    let super = args self;
-    in lib.recursiveUpdate (orig super) super
-  ;
+  extendedBy =
+    args: orig: self:
+    let
+      super = args self;
+    in
+    lib.recursiveUpdate (orig super) super;
 in
 
-lib.makeOverridable (args: stdenvNoCC.mkDerivation (extendedBy
-  (if lib.isFunction args then args else (_: args)) (
-  { pname
-  , extraScripts ? []
-  , ... }@args:
-  let
-    strippedName = with builtins;
-      let groups = match "mpv[-_](.*)" pname; in
-      if groups != null
-      then head groups
-      else pname
-    ;
-    # either passthru.scriptName, inferred from scriptPath, or from pname
-    scriptName = (args.passthru or {}).scriptName or (
-      if args ? scriptPath
-      then fileName args.scriptPath
-      else "${strippedName}.lua"
-    );
-    scriptPath = args.scriptPath or "./${scriptName}";
-  in {
-    dontBuild = true;
-    preferLocalBuild = true;
+lib.makeOverridable (
+  args:
+  stdenvNoCC.mkDerivation (
+    extendedBy (if lib.isFunction args then args else (_: args)) (
+      {
+        pname,
+        extraScripts ? [ ],
+        ...
+      }@args:
+      let
+        strippedName =
+          with builtins;
+          let
+            groups = match "mpv[-_](.*)" pname;
+          in
+          if groups != null then head groups else pname;
+        # either passthru.scriptName, inferred from scriptPath, or from pname
+        scriptName =
+          (args.passthru or { }).scriptName
+            or (if args ? scriptPath then fileName args.scriptPath else "${strippedName}.lua");
+        scriptPath = args.scriptPath or "./${scriptName}";
+      in
+      {
+        dontBuild = true;
+        preferLocalBuild = true;
 
-    # Prevent `patch` from emitting `.orig` files (that end up in the output)
-    patchFlags = [ "--no-backup-if-mismatch" "-p1" ];
+        # Prevent `patch` from emitting `.orig` files (that end up in the output)
+        patchFlags = [
+          "--no-backup-if-mismatch"
+          "-p1"
+        ];
 
-    outputHashMode = "recursive";
-    installPhase = ''
-      runHook preInstall
+        outputHashMode = "recursive";
+        installPhase = ''
+          runHook preInstall
 
-      if [ -d "${scriptPath}" ]; then
-        [ -f "${scriptPath}/main.lua" ] || {
-          echo "Script directory '${scriptPath}' does not contain 'main.lua'" >&2
-          exit 1
-        }
-        [ ${with builtins; toString (length extraScripts)} -eq 0 ] || {
-          echo "mpvScripts.buildLua does not support 'extraScripts'" \
-               "when 'scriptPath' is a directory" >&2
-          exit 1
-        }
-        mkdir -p "${scriptsDir}"
-        cp -a "${scriptPath}" "${scriptsDir}/${scriptName}"
-      else
-        install -m644 -Dt "${scriptsDir}" ${escaped scriptPath}
-        ${lib.optionalString (extraScripts != []) ''cp -at "${scriptsDir}/" ${escapedList extraScripts}''}
-      fi
+          if [ -d "${scriptPath}" ]; then
+            [ -f "${scriptPath}/main.lua" ] || {
+              echo "Script directory '${scriptPath}' does not contain 'main.lua'" >&2
+              exit 1
+            }
+            [ ${with builtins; toString (length extraScripts)} -eq 0 ] || {
+              echo "mpvScripts.buildLua does not support 'extraScripts'" \
+                   "when 'scriptPath' is a directory" >&2
+              exit 1
+            }
+            mkdir -p "${scriptsDir}"
+            cp -a "${scriptPath}" "${scriptsDir}/${scriptName}"
+          else
+            install -m644 -Dt "${scriptsDir}" ${escaped scriptPath}
+            ${
+              lib.optionalString (extraScripts != [ ]) ''cp -at "${scriptsDir}/" ${escapedList extraScripts}''
+            }
+          fi
 
-      runHook postInstall
-    '';
+          runHook postInstall
+        '';
 
-    passthru = { inherit scriptName; };
-    meta = {
-      platforms = lib.platforms.all;
-    } // (
-      let pos =
-        if (args.meta or {}) ? description then
-          builtins.unsafeGetAttrPos "description" args.meta
-        else
-          builtins.unsafeGetAttrPos "pname" args;
-      in lib.optionalAttrs
-        (pos != null)
-        { position = "${pos.file}:${toString pos.line}"; }
-    );
-  })
-))
+        passthru = {
+          inherit scriptName;
+        };
+        meta =
+          {
+            platforms = lib.platforms.all;
+          }
+          // (
+            let
+              pos =
+                if (args.meta or { }) ? description then
+                  builtins.unsafeGetAttrPos "description" args.meta
+                else
+                  builtins.unsafeGetAttrPos "pname" args;
+            in
+            lib.optionalAttrs (pos != null) { position = "${pos.file}:${toString pos.line}"; }
+          );
+      }
+    )
+  )
+)
diff --git a/pkgs/applications/video/mpv/scripts/chapterskip.nix b/pkgs/applications/video/mpv/scripts/chapterskip.nix
index 6c6fc4ba51fe..b1b993df3692 100644
--- a/pkgs/applications/video/mpv/scripts/chapterskip.nix
+++ b/pkgs/applications/video/mpv/scripts/chapterskip.nix
@@ -1,7 +1,9 @@
-{ lib
-, fetchFromGitHub
-, unstableGitUpdater
-, buildLua }:
+{
+  lib,
+  fetchFromGitHub,
+  unstableGitUpdater,
+  buildLua,
+}:
 
 buildLua {
   pname = "chapterskip";
@@ -9,20 +11,20 @@ buildLua {
   version = "0-unstable-2022-09-08";
   src = fetchFromGitHub {
     owner = "po5";
-    repo  = "chapterskip";
-    rev   = "b26825316e3329882206ae78dc903ebc4613f039";
-    hash  = "sha256-OTrLQE3rYvPQamEX23D6HttNjx3vafWdTMxTiWpDy90=";
+    repo = "chapterskip";
+    rev = "b26825316e3329882206ae78dc903ebc4613f039";
+    hash = "sha256-OTrLQE3rYvPQamEX23D6HttNjx3vafWdTMxTiWpDy90=";
   };
-  passthru.updateScript = unstableGitUpdater {};
+  passthru.updateScript = unstableGitUpdater { };
 
   meta = {
     description = "Automatically skips chapters based on title";
     longDescription = ''
-    MPV script that skips chapters based on their title, categorized using regexes.
-    The set of skipped categories can be configured globally, or by an auto-profile.
+      MPV script that skips chapters based on their title, categorized using regexes.
+      The set of skipped categories can be configured globally, or by an auto-profile.
     '';
     homepage = "https://github.com/po5/chapterskip";
-    license = lib.licenses.unfree;  # https://github.com/po5/chapterskip/issues/10
+    license = lib.licenses.unfree; # https://github.com/po5/chapterskip/issues/10
     maintainers = with lib.maintainers; [ nicoo ];
   };
 }
diff --git a/pkgs/applications/video/mpv/scripts/convert.nix b/pkgs/applications/video/mpv/scripts/convert.nix
index d1fdc9c801bb..1df83df46d8c 100644
--- a/pkgs/applications/video/mpv/scripts/convert.nix
+++ b/pkgs/applications/video/mpv/scripts/convert.nix
@@ -1,11 +1,12 @@
-{ lib
-, fetchgit
-, unstableGitUpdater
+{
+  lib,
+  fetchgit,
+  unstableGitUpdater,
 
-, buildLua
-, libnotify
-, mkvtoolnix-cli
-, yad
+  buildLua,
+  libnotify,
+  mkvtoolnix-cli,
+  yad,
 }:
 
 buildLua {
@@ -16,20 +17,20 @@ buildLua {
     rev = "f95cee43e390e843a47e8ec9d1711a12a8cd343d";
     sha256 = "13m7l4sy2r8jv2sfrb3vvqvnim4a9ilnv28q5drlg09v298z3mck";
   };
-  passthru.updateScript = unstableGitUpdater {};
+  passthru.updateScript = unstableGitUpdater { };
 
   patches = [ ./convert.patch ];
 
   postPatch = ''
     substituteInPlace convert_script.lua \
-      --replace 'mkvpropedit_exe = "mkvpropedit"' \
-                'mkvpropedit_exe = "${mkvtoolnix-cli}/bin/mkvpropedit"' \
-      --replace 'mkvmerge_exe = "mkvmerge"' \
-                'mkvmerge_exe = "${mkvtoolnix-cli}/bin/mkvmerge"' \
-      --replace 'yad_exe = "yad"' \
-                'yad_exe = "${yad}/bin/yad"' \
-      --replace 'notify_send_exe = "notify-send"' \
-                'notify_send_exe = "${libnotify}/bin/notify-send"' \
+      --replace-fail 'mkvpropedit_exe = "mkvpropedit"' \
+                'mkvpropedit_exe = "${lib.getExe' mkvtoolnix-cli "mkvpropedit"}"' \
+      --replace-fail 'mkvmerge_exe = "mkvmerge"' \
+                'mkvmerge_exe = "${lib.getExe' mkvtoolnix-cli "mkvmerge"}"' \
+      --replace-fail 'yad_exe = "yad"' \
+                'yad_exe = "${lib.getExe yad}"' \
+      --replace-fail 'notify_send_exe = "notify-send"' \
+                'notify_send_exe = "${lib.getExe libnotify}"' \
   '';
 
   scriptPath = "convert_script.lua";
diff --git a/pkgs/applications/video/mpv/scripts/cutter.nix b/pkgs/applications/video/mpv/scripts/cutter.nix
index ac2f518a9b5a..b051c08a8547 100644
--- a/pkgs/applications/video/mpv/scripts/cutter.nix
+++ b/pkgs/applications/video/mpv/scripts/cutter.nix
@@ -1,4 +1,10 @@
-{ lib, buildLua, fetchFromGitHub, makeWrapper, unstableGitUpdater }:
+{
+  lib,
+  buildLua,
+  fetchFromGitHub,
+  makeWrapper,
+  unstableGitUpdater,
+}:
 
 buildLua {
   pname = "video-cutter";
@@ -10,19 +16,19 @@ buildLua {
     rev = "01a0396c075d5f8bbd1de5b571e6231f8899ab65";
     sha256 = "sha256-veoRFzUCRH8TrvR7x+WWoycpDyxqrJZ/bnp61dVc0pE=";
   };
-  passthru.updateScript = unstableGitUpdater {};
+  passthru.updateScript = unstableGitUpdater { };
 
   nativeBuildInputs = [ makeWrapper ];
 
   postPatch = ''
     substituteInPlace cutter.lua \
-      --replace '~/.config/mpv/scripts/c_concat.sh' '${placeholder "out"}/share/mpv/scripts/c_concat.sh'
+      --replace-fail '~/.config/mpv/scripts/c_concat.sh' '${placeholder "out"}/share/mpv/scripts/c_concat.sh'
 
     # needs to be ran separately so that we can replace everything, and not every single mention explicitly
     # original script places them in the scripts folder, just spawning unnecessary errors
     # i know that hardcoding .config and especially the .mpv directory isn't best practice, but I didn't want to deviate too much from upstream
     substituteInPlace cutter.lua \
-      --replace '~/.config/mpv/scripts' "''${XDG_CONFIG_HOME:-~/.config}/mpv/cutter"
+      --replace-fail '~/.config/mpv/scripts' "''${XDG_CONFIG_HOME:-~/.config}/mpv/cutter"
   '';
 
   passthru.scriptName = "cutter.lua";
diff --git a/pkgs/applications/video/mpv/scripts/default.nix b/pkgs/applications/video/mpv/scripts/default.nix
index ce5188c09d29..6d4d4c06ab2a 100644
--- a/pkgs/applications/video/mpv/scripts/default.nix
+++ b/pkgs/applications/video/mpv/scripts/default.nix
@@ -1,111 +1,146 @@
-{ lib
-, config
-, newScope
-, runCommand
+{
+  lib,
+  config,
+  newScope,
+  runCommand,
 }:
 
 let
-  unionOfDisjoints = lib.fold lib.attrsets.unionOfDisjoint {};
+  unionOfDisjoints = lib.fold lib.attrsets.unionOfDisjoint { };
 
-  addTests = name: drv:
-    if ! lib.isDerivation drv then
+  addTests =
+    name: drv:
+    if !lib.isDerivation drv then
       drv
-    else let
-      inherit (drv) scriptName;
-      scriptPath = "share/mpv/scripts/${scriptName}";
-      fullScriptPath = "${drv}/${scriptPath}";
-    in drv.overrideAttrs (old: { passthru = (old.passthru or {}) // { tests = unionOfDisjoints [
-      (old.passthru.tests or {})
+    else
+      let
+        inherit (drv) scriptName;
+        scriptPath = "share/mpv/scripts/${scriptName}";
+        fullScriptPath = "${drv}/${scriptPath}";
+      in
+      drv.overrideAttrs (old: {
+        passthru = (old.passthru or { }) // {
+          tests = unionOfDisjoints [
+            (old.passthru.tests or { })
 
-      {
-        scriptName-is-valid = runCommand "mpvScripts.${name}.passthru.tests.scriptName-is-valid" {
-          meta.maintainers = with lib.maintainers; [ nicoo ];
-          preferLocalBuild = true;
-        } ''
-          if [ -e "${fullScriptPath}" ]; then
-            touch $out
-          else
-            echo "mpvScripts.\"${name}\" does not contain a script named \"${scriptName}\"" >&2
-            exit 1
-          fi
-        '';
-      }
+            {
+              scriptName-is-valid =
+                runCommand "mpvScripts.${name}.passthru.tests.scriptName-is-valid"
+                  {
+                    meta.maintainers = with lib.maintainers; [ nicoo ];
+                    preferLocalBuild = true;
+                  }
+                  ''
+                    if [ -e "${fullScriptPath}" ]; then
+                      touch $out
+                    else
+                      echo "mpvScripts.\"${name}\" does not contain a script named \"${scriptName}\"" >&2
+                      exit 1
+                    fi
+                  '';
+            }
 
-      # can't check whether `fullScriptPath` is a directory, in pure-evaluation mode
-      (with lib; optionalAttrs (! any (s: hasSuffix s drv.passthru.scriptName) [ ".js" ".lua" ".so" ]) {
-        single-main-in-script-dir = runCommand "mpvScripts.${name}.passthru.tests.single-main-in-script-dir" {
-          meta.maintainers = with lib.maintainers; [ nicoo ];
-          preferLocalBuild = true;
-        } ''
-          die() {
-            echo "$@" >&2
-            exit 1
-          }
+            # can't check whether `fullScriptPath` is a directory, in pure-evaluation mode
+            (
+              with lib;
+              optionalAttrs
+                (
+                  !any (s: hasSuffix s drv.passthru.scriptName) [
+                    ".js"
+                    ".lua"
+                    ".so"
+                  ]
+                )
+                {
+                  single-main-in-script-dir =
+                    runCommand "mpvScripts.${name}.passthru.tests.single-main-in-script-dir"
+                      {
+                        meta.maintainers = with lib.maintainers; [ nicoo ];
+                        preferLocalBuild = true;
+                      }
+                      ''
+                        die() {
+                          echo "$@" >&2
+                          exit 1
+                        }
 
-          cd "${drv}/${scriptPath}"  # so the glob expands to filenames only
-          mains=( main.* )
-          if [ "''${#mains[*]}" -eq 1 ]; then
-            touch $out
-          elif [ "''${#mains[*]}" -eq 0 ]; then
-            die "'${scriptPath}' contains no 'main.*' file"
-          else
-            die "'${scriptPath}' contains multiple 'main.*' files:" "''${mains[*]}"
-          fi
-        '';
-      })
-    ]; }; });
+                        cd "${drv}/${scriptPath}"  # so the glob expands to filenames only
+                        mains=( main.* )
+                        if [ "''${#mains[*]}" -eq 1 ]; then
+                          touch $out
+                        elif [ "''${#mains[*]}" -eq 0 ]; then
+                          die "'${scriptPath}' contains no 'main.*' file"
+                        else
+                          die "'${scriptPath}' contains multiple 'main.*' files:" "''${mains[*]}"
+                        fi
+                      '';
+                }
+            )
+          ];
+        };
+      });
 
-  scope = self: let
-    inherit (self) callPackage;
-  in lib.mapAttrs addTests {
-    inherit (callPackage ./mpv.nix { })
-      acompressor autocrop autodeint autoload;
-    inherit (callPackage ./occivink.nix { })
-      blacklistExtensions seekTo;
+  scope =
+    self:
+    let
+      inherit (self) callPackage;
+    in
+    lib.mapAttrs addTests {
+      inherit (callPackage ./mpv.nix { })
+        acompressor
+        autocrop
+        autodeint
+        autoload
+        ;
+      inherit (callPackage ./occivink.nix { }) blacklistExtensions seekTo;
 
-    buildLua = callPackage ./buildLua.nix { };
-    chapterskip = callPackage ./chapterskip.nix { };
-    convert = callPackage ./convert.nix { };
-    cutter = callPackage ./cutter.nix { };
-    dynamic-crop = callPackage ./dynamic-crop.nix { };
-    inhibit-gnome = callPackage ./inhibit-gnome.nix { };
-    memo = callPackage ./memo.nix { };
-    manga-reader = callPackage ./manga-reader.nix { };
-    modernx = callPackage ./modernx.nix { };
-    modernx-zydezu = callPackage ./modernx-zydezu.nix { };
-    mpris = callPackage ./mpris.nix { };
-    mpv-cheatsheet = callPackage ./mpv-cheatsheet.nix { };
-    mpv-notify-send = callPackage ./mpv-notify-send.nix { };
-    mpv-osc-modern = callPackage ./mpv-osc-modern.nix { };
-    mpv-playlistmanager = callPackage ./mpv-playlistmanager.nix { };
-    mpv-slicing = callPackage ./mpv-slicing.nix { };
-    mpv-webm = callPackage ./mpv-webm.nix { };
-    mpvacious = callPackage ./mpvacious.nix { };
-    quack = callPackage ./quack.nix { };
-    quality-menu = callPackage ./quality-menu.nix { };
-    reload = callPackage ./reload.nix { };
-    simple-mpv-webui = callPackage ./simple-mpv-webui.nix { };
-    sponsorblock = callPackage ./sponsorblock.nix { };
-    sponsorblock-minimal = callPackage ./sponsorblock-minimal.nix { };
-    thumbfast = callPackage ./thumbfast.nix { };
-    thumbnail = callPackage ./thumbnail.nix { };
-    uosc = callPackage ./uosc.nix { };
-    videoclip = callPackage ./videoclip.nix { };
-    visualizer = callPackage ./visualizer.nix { };
-    vr-reversal = callPackage ./vr-reversal.nix { };
-    webtorrent-mpv-hook = callPackage ./webtorrent-mpv-hook.nix { };
-    youtube-upnext = callPackage ./youtube-upnext.nix { };
-  };
+      buildLua = callPackage ./buildLua.nix { };
+      chapterskip = callPackage ./chapterskip.nix { };
+      convert = callPackage ./convert.nix { };
+      cutter = callPackage ./cutter.nix { };
+      dynamic-crop = callPackage ./dynamic-crop.nix { };
+      evafast = callPackage ./evafast.nix { };
+      inhibit-gnome = callPackage ./inhibit-gnome.nix { };
+      memo = callPackage ./memo.nix { };
+      manga-reader = callPackage ./manga-reader.nix { };
+      modernx = callPackage ./modernx.nix { };
+      modernx-zydezu = callPackage ./modernx-zydezu.nix { };
+      mpris = callPackage ./mpris.nix { };
+      mpv-cheatsheet = callPackage ./mpv-cheatsheet.nix { };
+      mpv-notify-send = callPackage ./mpv-notify-send.nix { };
+      mpv-osc-modern = callPackage ./mpv-osc-modern.nix { };
+      mpv-playlistmanager = callPackage ./mpv-playlistmanager.nix { };
+      mpv-slicing = callPackage ./mpv-slicing.nix { };
+      mpv-webm = callPackage ./mpv-webm.nix { };
+      mpvacious = callPackage ./mpvacious.nix { };
+      quack = callPackage ./quack.nix { };
+      quality-menu = callPackage ./quality-menu.nix { };
+      reload = callPackage ./reload.nix { };
+      simple-mpv-webui = callPackage ./simple-mpv-webui.nix { };
+      sponsorblock = callPackage ./sponsorblock.nix { };
+      sponsorblock-minimal = callPackage ./sponsorblock-minimal.nix { };
+      thumbfast = callPackage ./thumbfast.nix { };
+      thumbnail = callPackage ./thumbnail.nix { };
+      uosc = callPackage ./uosc.nix { };
+      videoclip = callPackage ./videoclip.nix { };
+      visualizer = callPackage ./visualizer.nix { };
+      vr-reversal = callPackage ./vr-reversal.nix { };
+      webtorrent-mpv-hook = callPackage ./webtorrent-mpv-hook.nix { };
+      youtube-upnext = callPackage ./youtube-upnext.nix { };
+    };
 
   aliases = {
     youtube-quality = throw "'youtube-quality' is no longer maintained, use 'quality-menu' instead"; # added 2023-07-14
   };
 in
 
-with lib; pipe scope [
+with lib;
+pipe scope [
   (makeScope newScope)
-  (self:
-    assert builtins.intersectAttrs self aliases == {};
-    self // optionalAttrs config.allowAliases aliases)
+  (
+    self:
+    assert builtins.intersectAttrs self aliases == { };
+    self // optionalAttrs config.allowAliases aliases
+  )
   recurseIntoAttrs
 ]
diff --git a/pkgs/applications/video/mpv/scripts/dynamic-crop.nix b/pkgs/applications/video/mpv/scripts/dynamic-crop.nix
index f2cd7dc07016..4388e2d137b4 100644
--- a/pkgs/applications/video/mpv/scripts/dynamic-crop.nix
+++ b/pkgs/applications/video/mpv/scripts/dynamic-crop.nix
@@ -1,7 +1,8 @@
-{ lib
-, fetchFromGitHub
-, unstableGitUpdater
-, buildLua
+{
+  lib,
+  fetchFromGitHub,
+  unstableGitUpdater,
+  buildLua,
 }:
 buildLua {
   pname = "dynamic-crop";
diff --git a/pkgs/applications/video/mpv/scripts/evafast.nix b/pkgs/applications/video/mpv/scripts/evafast.nix
new file mode 100644
index 000000000000..5260adb1a8ef
--- /dev/null
+++ b/pkgs/applications/video/mpv/scripts/evafast.nix
@@ -0,0 +1,28 @@
+{
+  fetchFromGitHub,
+  buildLua,
+  lib,
+  unstableGitUpdater,
+}:
+
+buildLua {
+  pname = "evafast";
+  version = "0-unstable-2024-02-09";
+
+  src = fetchFromGitHub {
+    owner = "po5";
+    repo = "evafast";
+    rev = "92af3e2e1c756ce83f9d0129c780caeef1131a0b";
+    hash = "sha256-BGWD2XwVu8zOSiDJ+9oWi8aPN2Wkw0Y0gF58X4f+tdI=";
+  };
+
+  # Drop the `branch` parameter once upstream merges `rewrite` back into `master`
+  passthru.updateScript = unstableGitUpdater { branch = "rewrite"; };
+
+  meta = with lib; {
+    description = "Seeking and hybrid fastforwarding like VHS";
+    homepage = "https://github.com/po5/evafast";
+    license = licenses.unfree; # no license; see https://github.com/po5/evafast/issues/15
+    maintainers = with lib.maintainers; [ purrpurrn ];
+  };
+}
diff --git a/pkgs/applications/video/mpv/scripts/inhibit-gnome.nix b/pkgs/applications/video/mpv/scripts/inhibit-gnome.nix
index 618c74adea93..02a54a2cf475 100644
--- a/pkgs/applications/video/mpv/scripts/inhibit-gnome.nix
+++ b/pkgs/applications/video/mpv/scripts/inhibit-gnome.nix
@@ -1,4 +1,12 @@
-{ lib, stdenv, fetchFromGitHub, gitUpdater, pkg-config, dbus, mpv-unwrapped }:
+{
+  lib,
+  stdenv,
+  fetchFromGitHub,
+  gitUpdater,
+  pkg-config,
+  dbus,
+  mpv-unwrapped,
+}:
 
 stdenv.mkDerivation rec {
   pname = "mpv-inhibit-gnome";
@@ -10,13 +18,14 @@ stdenv.mkDerivation rec {
     rev = "v${version}";
     hash = "sha256-LSGg5gAQE2JpepBqhz6D6d3NlqYaU4bjvYf1F+oLphQ=";
   };
-  passthru.updateScript = gitUpdater {
-    rev-prefix = "v";
-  };
+  passthru.updateScript = gitUpdater { rev-prefix = "v"; };
 
   nativeBuildInputs = [ pkg-config ];
 
-  buildInputs = [ dbus mpv-unwrapped ];
+  buildInputs = [
+    dbus
+    mpv-unwrapped
+  ];
 
   passthru.scriptName = "mpv_inhibit_gnome.so";
 
diff --git a/pkgs/applications/video/mpv/scripts/memo.nix b/pkgs/applications/video/mpv/scripts/memo.nix
index 5361b796268e..dea7adc85e97 100644
--- a/pkgs/applications/video/mpv/scripts/memo.nix
+++ b/pkgs/applications/video/mpv/scripts/memo.nix
@@ -1,7 +1,8 @@
-{ fetchFromGitHub
-, buildLua
-, lib
-, unstableGitUpdater
+{
+  fetchFromGitHub,
+  buildLua,
+  lib,
+  unstableGitUpdater,
 }:
 
 buildLua {
@@ -15,7 +16,7 @@ buildLua {
     hash = "sha256-m8ikXuw7PM4Btg8w7ufLneKA4fnYjMyfVJYueZILMw8=";
   };
 
-  passthru.updateScript = unstableGitUpdater {};
+  passthru.updateScript = unstableGitUpdater { };
 
   meta = with lib; {
     description = "A recent files menu for mpv";
diff --git a/pkgs/applications/video/mpv/scripts/modernx-zydezu.nix b/pkgs/applications/video/mpv/scripts/modernx-zydezu.nix
index 36b20fe11205..d2832e104ada 100644
--- a/pkgs/applications/video/mpv/scripts/modernx-zydezu.nix
+++ b/pkgs/applications/video/mpv/scripts/modernx-zydezu.nix
@@ -1,19 +1,20 @@
-{ lib
-, buildLua
-, fetchFromGitHub
-, makeFontsConf
-, nix-update-script
+{
+  lib,
+  buildLua,
+  fetchFromGitHub,
+  makeFontsConf,
+  nix-update-script,
 }:
 buildLua (finalAttrs: {
   pname = "modernx-zydezu";
-  version = "0.2.9";
+  version = "0.3.4";
 
   scriptPath = "modernx.lua";
   src = fetchFromGitHub {
     owner = "zydezu";
     repo = "ModernX";
     rev = finalAttrs.version;
-    hash = "sha256-Tq/v8EbojvOSSwbu8kdbLVxZWZNi1UH6zAPTcsUcgog";
+    hash = "sha256-XzzdJLN2DImwo8ZmH1+Q5e2YfwCh7pKyUxjtPd2AMGs=";
   };
 
   postInstall = ''
@@ -34,6 +35,9 @@ buildLua (finalAttrs: {
     description = "A modern OSC UI replacement for MPV that retains the functionality of the default OSC";
     homepage = "https://github.com/zydezu/ModernX";
     license = licenses.lgpl21Plus;
-    maintainers = with maintainers; [ Guanran928 ];
+    maintainers = with maintainers; [
+      luftmensch-luftmensch
+      Guanran928
+    ];
   };
 })
diff --git a/pkgs/applications/video/mpv/scripts/modernx.nix b/pkgs/applications/video/mpv/scripts/modernx.nix
index 340b169a0c03..3e106d741548 100644
--- a/pkgs/applications/video/mpv/scripts/modernx.nix
+++ b/pkgs/applications/video/mpv/scripts/modernx.nix
@@ -1,8 +1,9 @@
-{ lib
-, buildLua
-, fetchFromGitHub
-, makeFontsConf
-, nix-update-script
+{
+  lib,
+  buildLua,
+  fetchFromGitHub,
+  makeFontsConf,
+  nix-update-script,
 }:
 buildLua (finalAttrs: {
   pname = "modernx";
diff --git a/pkgs/applications/video/mpv/scripts/mpris.nix b/pkgs/applications/video/mpv/scripts/mpris.nix
index 338f0a8dd482..fbb1a8f68583 100644
--- a/pkgs/applications/video/mpv/scripts/mpris.nix
+++ b/pkgs/applications/video/mpv/scripts/mpris.nix
@@ -1,4 +1,13 @@
-{ lib, stdenv, fetchFromGitHub, gitUpdater, pkg-config, glib, mpv-unwrapped, ffmpeg }:
+{
+  lib,
+  stdenv,
+  fetchFromGitHub,
+  gitUpdater,
+  pkg-config,
+  glib,
+  mpv-unwrapped,
+  ffmpeg,
+}:
 
 stdenv.mkDerivation rec {
   pname = "mpv-mpris";
@@ -10,14 +19,18 @@ stdenv.mkDerivation rec {
     rev = version;
     hash = "sha256-vZIO6ILatIWa9nJYOp4AMKwvaZLahqYWRLMDOizyBI0=";
   };
-  passthru.updateScript = gitUpdater {};
+  passthru.updateScript = gitUpdater { };
 
   nativeBuildInputs = [ pkg-config ];
 
-  buildInputs = [ glib mpv-unwrapped ffmpeg ];
+  buildInputs = [
+    glib
+    mpv-unwrapped
+    ffmpeg
+  ];
 
   postPatch = ''
-    substituteInPlace Makefile --replace 'PKG_CONFIG =' 'PKG_CONFIG ?='
+    substituteInPlace Makefile --replace-fail 'PKG_CONFIG =' 'PKG_CONFIG ?='
   '';
 
   installFlags = [ "SCRIPTS_DIR=${placeholder "out"}/share/mpv/scripts" ];
diff --git a/pkgs/applications/video/mpv/scripts/mpv-cheatsheet.nix b/pkgs/applications/video/mpv/scripts/mpv-cheatsheet.nix
index a15f54d01ef2..c0c62867c1ee 100644
--- a/pkgs/applications/video/mpv/scripts/mpv-cheatsheet.nix
+++ b/pkgs/applications/video/mpv/scripts/mpv-cheatsheet.nix
@@ -1,8 +1,9 @@
-{ lib
-, fetchFromGitHub
-, gitUpdater
-, nodePackages
-, stdenvNoCC
+{
+  lib,
+  fetchFromGitHub,
+  gitUpdater,
+  nodePackages,
+  stdenvNoCC,
 }:
 stdenvNoCC.mkDerivation (finalAttrs: {
   pname = "mpv-cheatsheet";
@@ -16,9 +17,7 @@ stdenvNoCC.mkDerivation (finalAttrs: {
   };
   passthru.updateScript = gitUpdater { rev-prefix = "v"; };
 
-  nativeBuildInputs = [
-    nodePackages.browserify
-  ];
+  nativeBuildInputs = [ nodePackages.browserify ];
 
   buildPhase = ''
     runHook preBuild
@@ -36,7 +35,6 @@ stdenvNoCC.mkDerivation (finalAttrs: {
     runHook postInstall
   '';
 
-
   passthru.scriptName = "cheatsheet.js";
 
   meta = with lib; {
diff --git a/pkgs/applications/video/mpv/scripts/mpv-notify-send.nix b/pkgs/applications/video/mpv/scripts/mpv-notify-send.nix
index 04b03670b79f..3e3a04499d08 100644
--- a/pkgs/applications/video/mpv/scripts/mpv-notify-send.nix
+++ b/pkgs/applications/video/mpv/scripts/mpv-notify-send.nix
@@ -1,9 +1,11 @@
-{ lib
-, buildLua
-, fetchFromGitHub
-, fetchpatch
-, unstableGitUpdater
-, libnotify }:
+{
+  lib,
+  buildLua,
+  fetchFromGitHub,
+  fetchpatch,
+  unstableGitUpdater,
+  libnotify,
+}:
 
 buildLua rec {
   pname = "mpv-notify-send";
@@ -25,7 +27,10 @@ buildLua rec {
   ];
 
   passthru.extraWrapperArgs = [
-    "--prefix" "PATH" ":" (lib.makeBinPath libnotify)
+    "--prefix"
+    "PATH"
+    ":"
+    (lib.makeBinPath libnotify)
   ];
 
   passthru.updateScript = unstableGitUpdater { };
diff --git a/pkgs/applications/video/mpv/scripts/mpv-osc-modern.nix b/pkgs/applications/video/mpv/scripts/mpv-osc-modern.nix
index ce32622d64d8..0d2c292d702a 100644
--- a/pkgs/applications/video/mpv/scripts/mpv-osc-modern.nix
+++ b/pkgs/applications/video/mpv/scripts/mpv-osc-modern.nix
@@ -1,8 +1,9 @@
-{ lib
-, buildLua
-, fetchFromGitHub
-, makeFontsConf
-, nix-update-script
+{
+  lib,
+  buildLua,
+  fetchFromGitHub,
+  makeFontsConf,
+  nix-update-script,
 }:
 buildLua (finalAttrs: {
   pname = "mpv-osc-modern";
diff --git a/pkgs/applications/video/mpv/scripts/mpv-playlistmanager.nix b/pkgs/applications/video/mpv/scripts/mpv-playlistmanager.nix
index 44f09b8f21fe..00e44d1f9447 100644
--- a/pkgs/applications/video/mpv/scripts/mpv-playlistmanager.nix
+++ b/pkgs/applications/video/mpv/scripts/mpv-playlistmanager.nix
@@ -1,4 +1,10 @@
-{ lib, buildLua, fetchFromGitHub, unstableGitUpdater, yt-dlp }:
+{
+  lib,
+  buildLua,
+  fetchFromGitHub,
+  unstableGitUpdater,
+  yt-dlp,
+}:
 
 buildLua rec {
   pname = "mpv-playlistmanager";
@@ -10,12 +16,12 @@ buildLua rec {
     rev = "1911dc053951169c98cfcfd9f44ef87d9122ca80";
     hash = "sha256-pcdOMhkivLF5B86aNuHrqj77DuYLAFGlwFwY7jxkDkE=";
   };
-  passthru.updateScript = unstableGitUpdater {};
+  passthru.updateScript = unstableGitUpdater { };
 
   postPatch = ''
     substituteInPlace playlistmanager.lua \
-      --replace 'youtube_dl_executable = "youtube-dl",' \
-      'youtube_dl_executable = "${lib.getBin yt-dlp}/bin/yt-dlp"',
+      --replace-fail 'youtube_dl_executable = "yt-dlp",' \
+      'youtube_dl_executable = "${lib.getExe yt-dlp}"',
   '';
 
   meta = with lib; {
diff --git a/pkgs/applications/video/mpv/scripts/mpv-webm.nix b/pkgs/applications/video/mpv/scripts/mpv-webm.nix
index efff9fa8ee16..051cc76883c4 100644
--- a/pkgs/applications/video/mpv/scripts/mpv-webm.nix
+++ b/pkgs/applications/video/mpv/scripts/mpv-webm.nix
@@ -1,8 +1,9 @@
-{ lib
-, buildLua
-, fetchFromGitHub
-, luaPackages
-, unstableGitUpdater
+{
+  lib,
+  buildLua,
+  fetchFromGitHub,
+  luaPackages,
+  unstableGitUpdater,
 }:
 
 buildLua {
diff --git a/pkgs/applications/video/mpv/scripts/mpv.nix b/pkgs/applications/video/mpv/scripts/mpv.nix
index 06e9ccb4d74a..ddf22e5dd03c 100644
--- a/pkgs/applications/video/mpv/scripts/mpv.nix
+++ b/pkgs/applications/video/mpv/scripts/mpv.nix
@@ -1,24 +1,31 @@
-{ lib
-, buildLua
-, mpv-unwrapped
+{
+  lib,
+  buildLua,
+  mpv-unwrapped,
 }:
 
-let mkBuiltin = name: args:
-  let srcPath = "TOOLS/lua/${name}.lua";
-  in buildLua (lib.attrsets.recursiveUpdate rec {
-    inherit (mpv-unwrapped) src version;
-    pname = "mpv-${name}";
+let
+  mkBuiltin =
+    name: args:
+    let
+      srcPath = "TOOLS/lua/${name}.lua";
+    in
+    buildLua (
+      lib.attrsets.recursiveUpdate rec {
+        inherit (mpv-unwrapped) src version;
+        pname = "mpv-${name}";
 
-    dontUnpack = true;
-    scriptPath = "${src}/${srcPath}";
+        dontUnpack = true;
+        scriptPath = "${src}/${srcPath}";
 
-    meta = with lib; {
-      inherit (mpv-unwrapped.meta) license;
-      homepage = "https://github.com/mpv-player/mpv/blob/v${version}/${srcPath}";
-    };
-  } args);
-
-in lib.mapAttrs (name: lib.makeOverridable (mkBuiltin name)) {
+        meta = with lib; {
+          inherit (mpv-unwrapped.meta) license;
+          homepage = "https://github.com/mpv-player/mpv/blob/v${version}/${srcPath}";
+        };
+      } args
+    );
+in
+lib.mapAttrs (name: lib.makeOverridable (mkBuiltin name)) {
   acompressor.meta = {
     description = "Script to toggle and control ffmpeg's dynamic range compression filter.";
     maintainers = with lib.maintainers; [ nicoo ];
diff --git a/pkgs/applications/video/mpv/scripts/mpvacious.nix b/pkgs/applications/video/mpv/scripts/mpvacious.nix
index adac4d1d6069..4269131f0904 100644
--- a/pkgs/applications/video/mpv/scripts/mpvacious.nix
+++ b/pkgs/applications/video/mpv/scripts/mpvacious.nix
@@ -1,10 +1,11 @@
-{ lib
-, buildLua
-, fetchFromGitHub
-, gitUpdater
-, curl
-, wl-clipboard
-, xclip
+{
+  lib,
+  buildLua,
+  fetchFromGitHub,
+  gitUpdater,
+  curl,
+  wl-clipboard,
+  xclip,
 }:
 
 buildLua rec {
@@ -17,17 +18,15 @@ buildLua rec {
     rev = "v${version}";
     sha256 = "sha256-VHMXW2AzgX88EDnNshxo9Gh8mpXzRoTAq+58HKasUdo=";
   };
-  passthru.updateScript = gitUpdater {
-    rev-prefix = "v";
-  };
+  passthru.updateScript = gitUpdater { rev-prefix = "v"; };
 
   postPatch = ''
     substituteInPlace utils/forvo.lua \
-      --replace "'curl" "'${curl}/bin/curl"
+      --replace-fail "'curl" "'${lib.getExe curl}"
     substituteInPlace platform/nix.lua \
-      --replace "'curl" "'${curl}/bin/curl" \
-      --replace "'wl-copy" "'${wl-clipboard}/bin/wl-copy" \
-      --replace "'xclip" "'${xclip}/bin/xclip"
+      --replace-fail "'curl" "'${lib.getExe curl}" \
+      --replace-fail "'wl-copy" "'${lib.getExe' wl-clipboard "wl-copy"}" \
+      --replace-fail "'xclip" "'${lib.getExe xclip}"
   '';
 
   installPhase = ''
diff --git a/pkgs/applications/video/mpv/scripts/occivink.nix b/pkgs/applications/video/mpv/scripts/occivink.nix
index be3bdb07db8d..948a90c0d89b 100644
--- a/pkgs/applications/video/mpv/scripts/occivink.nix
+++ b/pkgs/applications/video/mpv/scripts/occivink.nix
@@ -1,45 +1,49 @@
-{ lib
-, fetchFromGitHub
-, unstableGitUpdater
-, buildLua
+{
+  lib,
+  fetchFromGitHub,
+  unstableGitUpdater,
+  buildLua,
 }:
 
 let
-  camelToKebab = let
-    inherit (lib.strings) match stringAsChars toLower;
-    isUpper = match "[A-Z]";
-  in stringAsChars (c: if isUpper c != null then "-${toLower c}" else c);
+  camelToKebab =
+    let
+      inherit (lib.strings) match stringAsChars toLower;
+      isUpper = match "[A-Z]";
+    in
+    stringAsChars (c: if isUpper c != null then "-${toLower c}" else c);
 
-  mkScript = name: args:
-    let self = rec {
-      pname = camelToKebab name;
-      version = "0-unstable-2024-01-11";
-      src = fetchFromGitHub {
-        owner = "occivink";
-        repo = "mpv-scripts";
-        rev = "d0390c8e802c2e888ff4a2e1d5e4fb040f855b89";
-        hash = "sha256-pc2aaO7lZaoYMEXv5M0WI7PtmqgkNbdtNiLZZwVzppM=";
-      };
-      passthru.updateScript = unstableGitUpdater {};
-
-      scriptPath = "scripts/${pname}.lua";
+  mkScript =
+    name: args:
+    let
+      self = rec {
+        pname = camelToKebab name;
+        version = "0-unstable-2024-01-11";
+        src = fetchFromGitHub {
+          owner = "occivink";
+          repo = "mpv-scripts";
+          rev = "d0390c8e802c2e888ff4a2e1d5e4fb040f855b89";
+          hash = "sha256-pc2aaO7lZaoYMEXv5M0WI7PtmqgkNbdtNiLZZwVzppM=";
+        };
+        passthru.updateScript = unstableGitUpdater { };
 
-      meta = with lib; {
-        homepage = "https://github.com/occivink/mpv-scripts";
-        license = licenses.unlicense;
-        maintainers = with maintainers; [ nicoo ];
-      };
+        scriptPath = "scripts/${pname}.lua";
 
-      # Sadly needed to make `common-updaters` work here
-      pos = builtins.unsafeGetAttrPos "version" self;
-    };
-    in buildLua (lib.attrsets.recursiveUpdate self args);
+        meta = with lib; {
+          homepage = "https://github.com/occivink/mpv-scripts";
+          license = licenses.unlicense;
+          maintainers = with maintainers; [ nicoo ];
+        };
 
+        # Sadly needed to make `common-updaters` work here
+        pos = builtins.unsafeGetAttrPos "version" self;
+      };
+    in
+    buildLua (lib.attrsets.recursiveUpdate self args);
 in
 lib.mapAttrs (name: lib.makeOverridable (mkScript name)) {
 
   # Usage: `pkgs.mpv.override { scripts = [ pkgs.mpvScripts.seekTo ]; }`
   seekTo.meta.description = "Mpv script for seeking to a specific position";
-  blacklistExtensions.meta.description =
-    "Automatically remove playlist entries based on their extension.";
+  blacklistExtensions.meta.description = "Automatically remove playlist entries based on their extension.";
 }
diff --git a/pkgs/applications/video/mpv/scripts/quack.nix b/pkgs/applications/video/mpv/scripts/quack.nix
index 646a7a524d18..a1b32f291181 100644
--- a/pkgs/applications/video/mpv/scripts/quack.nix
+++ b/pkgs/applications/video/mpv/scripts/quack.nix
@@ -1,7 +1,9 @@
-{ lib
-, fetchFromGitHub
-, unstableGitUpdater
-, buildLua }:
+{
+  lib,
+  fetchFromGitHub,
+  unstableGitUpdater,
+  buildLua,
+}:
 
 buildLua rec {
   pname = "mpv-quack";
@@ -9,11 +11,11 @@ buildLua rec {
   version = "0-unstable-2020-05-27";
   src = fetchFromGitHub {
     owner = "CounterPillow";
-    repo  = "mpv-quack";
-    rev   = "1c87f36f9726d462dd112188c04be54d85692cf3";
-    hash  = "sha256-dEnJbS8RJoAxpKINdoMHN4l7vpEdf7+C5JVWpK0VXMw=";
+    repo = "mpv-quack";
+    rev = "1c87f36f9726d462dd112188c04be54d85692cf3";
+    hash = "sha256-dEnJbS8RJoAxpKINdoMHN4l7vpEdf7+C5JVWpK0VXMw=";
   };
-  passthru.updateScript = unstableGitUpdater {};
+  passthru.updateScript = unstableGitUpdater { };
 
   meta = {
     description = "Reduce audio volume after seeking";
diff --git a/pkgs/applications/video/mpv/scripts/quality-menu.nix b/pkgs/applications/video/mpv/scripts/quality-menu.nix
index c75e81068713..cbaa6c1c4da1 100644
--- a/pkgs/applications/video/mpv/scripts/quality-menu.nix
+++ b/pkgs/applications/video/mpv/scripts/quality-menu.nix
@@ -1,8 +1,9 @@
-{ lib
-, buildLua
-, fetchFromGitHub
-, gitUpdater
-, oscSupport ? false
+{
+  lib,
+  buildLua,
+  fetchFromGitHub,
+  gitUpdater,
+  oscSupport ? false,
 }:
 
 buildLua rec {
@@ -15,9 +16,7 @@ buildLua rec {
     rev = "v${version}";
     hash = "sha256-yrcTxqpLnOI1Tq3khhflO3wzhyeTPuvKifyH5/P57Ns=";
   };
-  passthru.updateScript = gitUpdater {
-    rev-prefix = "v";
-  };
+  passthru.updateScript = gitUpdater { rev-prefix = "v"; };
 
   extraScripts = lib.optional oscSupport "quality-menu-osc.lua";
 
diff --git a/pkgs/applications/video/mpv/scripts/reload.nix b/pkgs/applications/video/mpv/scripts/reload.nix
index 426aabd7fe49..b9d9b4c43b05 100644
--- a/pkgs/applications/video/mpv/scripts/reload.nix
+++ b/pkgs/applications/video/mpv/scripts/reload.nix
@@ -1,7 +1,9 @@
-{ lib
-, fetchFromGitHub
-, unstableGitUpdater
-, buildLua }:
+{
+  lib,
+  fetchFromGitHub,
+  unstableGitUpdater,
+  buildLua,
+}:
 
 buildLua rec {
   pname = "mpv-reload";
@@ -9,11 +11,11 @@ buildLua rec {
   version = "0-unstable-2024-03-22";
   src = fetchFromGitHub {
     owner = "4e6";
-    repo  = pname;
-    rev   = "1a6a9383ba1774708fddbd976e7a9b72c3eec938";
-    hash  = "sha256-BshxCjec/UNGyiC0/g1Rai2NvG2qOIHXDDEUYwwdij0=";
+    repo = pname;
+    rev = "1a6a9383ba1774708fddbd976e7a9b72c3eec938";
+    hash = "sha256-BshxCjec/UNGyiC0/g1Rai2NvG2qOIHXDDEUYwwdij0=";
   };
-  passthru.updateScript = unstableGitUpdater {};
+  passthru.updateScript = unstableGitUpdater { };
 
   meta = {
     description = "Manual & automatic reloading of videos";
diff --git a/pkgs/applications/video/mpv/scripts/simple-mpv-webui.nix b/pkgs/applications/video/mpv/scripts/simple-mpv-webui.nix
index bf973c9206c7..b71b5d90e3b1 100644
--- a/pkgs/applications/video/mpv/scripts/simple-mpv-webui.nix
+++ b/pkgs/applications/video/mpv/scripts/simple-mpv-webui.nix
@@ -1,6 +1,8 @@
-{ lib, buildLua
-, fetchFromGitHub
-, gitUpdater
+{
+  lib,
+  buildLua,
+  fetchFromGitHub,
+  gitUpdater,
 }:
 buildLua rec {
   pname = "simple-mpv-ui";
@@ -11,11 +13,12 @@ buildLua rec {
     repo = "simple-mpv-webui";
     rev = "v${version}";
     hash = "sha256-I8lwpo3Hfpy3UnPMmHEJCdArVQnNL245NkxsYVmnMF0=";
-    sparseCheckout = [ "main.lua" "webui-page" ];
-  };
-  passthru.updateScript = gitUpdater {
-    rev-prefix = "v";
+    sparseCheckout = [
+      "main.lua"
+      "webui-page"
+    ];
   };
+  passthru.updateScript = gitUpdater { rev-prefix = "v"; };
 
   scriptPath = ".";
   passthru.scriptName = "webui";
@@ -23,7 +26,10 @@ buildLua rec {
   meta = with lib; {
     description = "A web based user interface with controls for the mpv mediaplayer";
     homepage = "https://github.com/open-dynaMIX/simple-mpv-webui";
-    maintainers = with maintainers; [ cript0nauta zopieux ];
+    maintainers = with maintainers; [
+      cript0nauta
+      zopieux
+    ];
     longDescription = ''
       You can access the webui when accessing http://127.0.0.1:8080 or
       http://[::1]:8080 in your webbrowser. By default it listens on
diff --git a/pkgs/applications/video/mpv/scripts/sponsorblock-minimal.nix b/pkgs/applications/video/mpv/scripts/sponsorblock-minimal.nix
index 2557db8313d6..be314ed8ca16 100644
--- a/pkgs/applications/video/mpv/scripts/sponsorblock-minimal.nix
+++ b/pkgs/applications/video/mpv/scripts/sponsorblock-minimal.nix
@@ -1,4 +1,11 @@
-{ lib, buildLua, fetchFromGitea, unstableGitUpdater, curl, coreutils }:
+{
+  lib,
+  buildLua,
+  fetchFromGitea,
+  unstableGitUpdater,
+  curl,
+  coreutils,
+}:
 
 buildLua {
   pname = "mpv_sponsorblock_minimal";
@@ -21,8 +28,7 @@ buildLua {
   '';
 
   meta = with lib; {
-    description =
-      "A minimal script to skip sponsored segments of YouTube videos";
+    description = "A minimal script to skip sponsored segments of YouTube videos";
     homepage = "https://codeberg.org/jouni/mpv_sponsorblock_minimal";
     license = licenses.gpl3Only;
     platforms = platforms.all;
diff --git a/pkgs/applications/video/mpv/scripts/sponsorblock.nix b/pkgs/applications/video/mpv/scripts/sponsorblock.nix
index 56ac2575ecde..16e8841abf5b 100644
--- a/pkgs/applications/video/mpv/scripts/sponsorblock.nix
+++ b/pkgs/applications/video/mpv/scripts/sponsorblock.nix
@@ -1,4 +1,11 @@
-{ lib, buildLua, fetchFromGitHub, fetchpatch, python3, nix-update-script }:
+{
+  lib,
+  buildLua,
+  fetchFromGitHub,
+  fetchpatch,
+  python3,
+  nix-update-script,
+}:
 
 # Usage: `pkgs.mpv.override { scripts = [ pkgs.mpvScripts.sponsorblock ]; }`
 buildLua {
@@ -28,15 +35,13 @@ buildLua {
 
   postPatch = ''
     substituteInPlace sponsorblock.lua \
-      --replace "python3" "${python3}/bin/python3" \
-      --replace 'mp.find_config_file("scripts")' "\"$out/share/mpv/scripts\""
+      --replace-fail "python3" "${lib.getExe python3}" \
+      --replace-fail 'mp.find_config_file("scripts")' "\"$out/share/mpv/scripts\""
   '';
 
   extraScripts = [ "sponsorblock_shared" ];
 
-  passthru.updateScript = nix-update-script {
-    extraArgs = [ "--version=branch" ];
-  };
+  passthru.updateScript = nix-update-script { extraArgs = [ "--version=branch" ]; };
 
   meta = with lib; {
     description = "Script for mpv to skip sponsored segments of YouTube videos";
diff --git a/pkgs/applications/video/mpv/scripts/thumbfast.nix b/pkgs/applications/video/mpv/scripts/thumbfast.nix
index e30c62774b75..158e1f38b32b 100644
--- a/pkgs/applications/video/mpv/scripts/thumbfast.nix
+++ b/pkgs/applications/video/mpv/scripts/thumbfast.nix
@@ -1,4 +1,10 @@
-{ lib, fetchFromGitHub, unstableGitUpdater, buildLua, mpv-unwrapped }:
+{
+  lib,
+  fetchFromGitHub,
+  unstableGitUpdater,
+  buildLua,
+  mpv-unwrapped,
+}:
 
 buildLua {
   pname = "mpv-thumbfast";
@@ -10,10 +16,13 @@ buildLua {
     rev = "03e93feee5a85bf7c65db953ada41b4826e9f905";
     hash = "sha256-5u5WBvWOEydJrnr/vilEgW4+fxkxM6wNjb9Fyyxx/1c=";
   };
-  passthru.updateScript = unstableGitUpdater {};
+  passthru.updateScript = unstableGitUpdater { };
 
   passthru.extraWrapperArgs = [
-    "--prefix" "PATH" ":" "${lib.getBin mpv-unwrapped}/bin"
+    "--prefix"
+    "PATH"
+    ":"
+    (lib.makeBinPath [ mpv-unwrapped ])
   ];
 
   meta = {
diff --git a/pkgs/applications/video/mpv/scripts/thumbnail.nix b/pkgs/applications/video/mpv/scripts/thumbnail.nix
index 40c4fa8776d8..a0fe388a5b5a 100644
--- a/pkgs/applications/video/mpv/scripts/thumbnail.nix
+++ b/pkgs/applications/video/mpv/scripts/thumbnail.nix
@@ -1,4 +1,10 @@
-{ lib, buildLua, fetchFromGitHub, gitUpdater, python3 }:
+{
+  lib,
+  buildLua,
+  fetchFromGitHub,
+  gitUpdater,
+  python3,
+}:
 
 buildLua rec {
   pname = "mpv-thumbnail-script";
@@ -10,7 +16,7 @@ buildLua rec {
     rev = version;
     sha256 = "sha256-J24Rou7BTE7zoiPlBkWuO9dtYJiuzkuwB4FROuzXzag=";
   };
-  passthru.updateScript = gitUpdater {};
+  passthru.updateScript = gitUpdater { };
 
   nativeBuildInputs = [ python3 ];
   postPatch = "patchShebangs concat_files.py";
diff --git a/pkgs/applications/video/mpv/scripts/uosc.nix b/pkgs/applications/video/mpv/scripts/uosc.nix
index 61eb65f9bf9f..f57bb4eb8160 100644
--- a/pkgs/applications/video/mpv/scripts/uosc.nix
+++ b/pkgs/applications/video/mpv/scripts/uosc.nix
@@ -1,10 +1,11 @@
-{ lib
-, fetchFromGitHub
-, fetchpatch
-, gitUpdater
-, makeFontsConf
-, buildLua
-, buildGoModule
+{
+  lib,
+  fetchFromGitHub,
+  fetchpatch,
+  gitUpdater,
+  makeFontsConf,
+  buildLua,
+  buildGoModule,
 }:
 
 buildLua (finalAttrs: {
@@ -18,7 +19,7 @@ buildLua (finalAttrs: {
     rev = finalAttrs.version;
     hash = "sha256-0GPDna9uOuhFDhA9A1fbkoKkgSB76qiDzJVQ9gjGcWo=";
   };
-  passthru.updateScript = gitUpdater {};
+  passthru.updateScript = gitUpdater { };
 
   tools = buildGoModule {
     pname = "uosc-bin";
diff --git a/pkgs/applications/video/mpv/scripts/videoclip.nix b/pkgs/applications/video/mpv/scripts/videoclip.nix
index fff5b788b028..6e22e1ae68d7 100644
--- a/pkgs/applications/video/mpv/scripts/videoclip.nix
+++ b/pkgs/applications/video/mpv/scripts/videoclip.nix
@@ -1,11 +1,12 @@
-{ lib
-, fetchFromGitHub
-, curl
-, xclip
-, wl-clipboard
-, stdenv
-, buildLua
-, unstableGitUpdater
+{
+  lib,
+  fetchFromGitHub,
+  curl,
+  xclip,
+  wl-clipboard,
+  stdenv,
+  buildLua,
+  unstableGitUpdater,
 }:
 buildLua {
   pname = "videoclip";
@@ -18,13 +19,15 @@ buildLua {
     hash = "sha256-Sg6LHU9OVmVx3cTs8Y0WL8wACb5BlVyeBRccoX+7BXY=";
   };
 
-  patchPhase = ''
-    substituteInPlace platform.lua \
-    --replace \'curl\' \'${lib.getExe curl}\' \
-  '' + lib.optionalString stdenv.isLinux ''
-    --replace xclip ${lib.getExe xclip} \
-    --replace wl-copy ${lib.getExe' wl-clipboard "wl-copy"}
-  '';
+  patchPhase =
+    ''
+      substituteInPlace platform.lua \
+      --replace \'curl\' \'${lib.getExe curl}\' \
+    ''
+    + lib.optionalString stdenv.isLinux ''
+      --replace xclip ${lib.getExe xclip} \
+      --replace wl-copy ${lib.getExe' wl-clipboard "wl-copy"}
+    '';
 
   scriptPath = ".";
   passthru.scriptName = "videoclip";
diff --git a/pkgs/applications/video/mpv/scripts/visualizer.nix b/pkgs/applications/video/mpv/scripts/visualizer.nix
index 332604286847..0308e6477d79 100644
--- a/pkgs/applications/video/mpv/scripts/visualizer.nix
+++ b/pkgs/applications/video/mpv/scripts/visualizer.nix
@@ -14,11 +14,11 @@ buildLua {
     rev = "b4246984ba6dc6820adef5c8bbf793af85c9ab8e";
     sha256 = "ZNUzw4OW7z+yGTxim7CCWJdWmihDFOQAQk3bC5Ijcbs=";
   };
-  passthru.updateScript = unstableGitUpdater {};
+  passthru.updateScript = unstableGitUpdater { };
 
   meta = with lib; {
     description = "various audio visualization";
     homepage = "https://github.com/mfcc64/mpv-scripts";
-    maintainers = with maintainers; [kmein];
+    maintainers = with maintainers; [ kmein ];
   };
 }
diff --git a/pkgs/applications/video/mpv/scripts/vr-reversal.nix b/pkgs/applications/video/mpv/scripts/vr-reversal.nix
index 9a7b335a6591..1e9dadcfa073 100644
--- a/pkgs/applications/video/mpv/scripts/vr-reversal.nix
+++ b/pkgs/applications/video/mpv/scripts/vr-reversal.nix
@@ -1,4 +1,10 @@
-{ lib, stdenvNoCC, fetchFromGitHub, gitUpdater, ffmpeg }:
+{
+  lib,
+  stdenvNoCC,
+  fetchFromGitHub,
+  gitUpdater,
+  ffmpeg,
+}:
 
 stdenvNoCC.mkDerivation rec {
   pname = "vr-reversal";
@@ -10,15 +16,13 @@ stdenvNoCC.mkDerivation rec {
     rev = "v${version}";
     sha256 = "1wn2ngcvn7wcsl3kmj782x5q9130qw951lj6ilrkafp6q6zscpqr";
   };
-  passthru.updateScript = gitUpdater {
-    rev-prefix = "v";
-  };
+  passthru.updateScript = gitUpdater { rev-prefix = "v"; };
 
   dontBuild = true;
 
   # reset_rot is only available in ffmpeg 5.0, see 5bcc61ce87922ecccaaa0bd303a7e195929859a8
   postPatch = lib.optionalString (lib.versionOlder ffmpeg.version "5.0") ''
-    substituteInPlace 360plugin.lua --replace ":reset_rot=1:" ":"
+    substituteInPlace 360plugin.lua --replace-fail ":reset_rot=1:" ":"
   '';
 
   installPhase = ''
diff --git a/pkgs/applications/video/mpv/scripts/webtorrent-mpv-hook.nix b/pkgs/applications/video/mpv/scripts/webtorrent-mpv-hook.nix
index 10fe3d0cdce0..b423281a3ba3 100644
--- a/pkgs/applications/video/mpv/scripts/webtorrent-mpv-hook.nix
+++ b/pkgs/applications/video/mpv/scripts/webtorrent-mpv-hook.nix
@@ -1,4 +1,11 @@
-{ lib, buildNpmPackage, fetchFromGitHub, gitUpdater, nodejs, python3 }:
+{
+  lib,
+  buildNpmPackage,
+  fetchFromGitHub,
+  gitUpdater,
+  nodejs,
+  python3,
+}:
 
 buildNpmPackage rec {
   pname = "webtorrent-mpv-hook";
@@ -10,14 +17,12 @@ buildNpmPackage rec {
     rev = "v${version}";
     hash = "sha256-/dMtXcIyfAs++Zgz2CxRW0tkzn5QjS+WVGChlCyrU0U=";
   };
-  passthru.updateScript = gitUpdater {
-    rev-prefix = "v";
-  };
+  passthru.updateScript = gitUpdater { rev-prefix = "v"; };
 
   postPatch = ''
-    substituteInPlace src/webtorrent.ts --replace "node_path: 'node'" "node_path: '${nodejs}/bin/node'"
+    substituteInPlace src/webtorrent.ts --replace-fail "node_path: 'node'" "node_path: '${lib.getExe nodejs}'"
     # This executable is just for telling non-Nix users how to install
-    substituteInPlace package.json --replace '"bin": "build/bin.mjs",' ""
+    substituteInPlace package.json --replace-fail '"bin": "build/bin.mjs",' ""
     rm -rf src/bin.ts
   '';
 
diff --git a/pkgs/applications/video/mpv/scripts/youtube-upnext.nix b/pkgs/applications/video/mpv/scripts/youtube-upnext.nix
index cdd7ea66a176..098dd45a5f3c 100644
--- a/pkgs/applications/video/mpv/scripts/youtube-upnext.nix
+++ b/pkgs/applications/video/mpv/scripts/youtube-upnext.nix
@@ -1,4 +1,10 @@
-{ buildLua, fetchFromGitHub, curl, unstableGitUpdater, lib }:
+{
+  buildLua,
+  fetchFromGitHub,
+  curl,
+  unstableGitUpdater,
+  lib,
+}:
 
 buildLua rec {
   pname = "youtube-upnext";
@@ -13,7 +19,7 @@ buildLua rec {
 
   postPatch = ''
     substituteInPlace youtube-upnext.lua \
-      --replace '"curl"' '"${lib.getExe curl}"'
+      --replace-fail '"curl"' '"${lib.getExe curl}"'
   '';
 
   passthru.updateScript = unstableGitUpdater { };
diff --git a/pkgs/applications/video/obs-studio/default.nix b/pkgs/applications/video/obs-studio/default.nix
index f278d832958e..418d9adf8263 100644
--- a/pkgs/applications/video/obs-studio/default.nix
+++ b/pkgs/applications/video/obs-studio/default.nix
@@ -24,7 +24,7 @@
 , libvlc
 , libGL
 , mbedtls
-, wrapGAppsHook
+, wrapGAppsHook3
 , scriptingSupport ? true
 , luajit
 , swig4
@@ -90,7 +90,7 @@ stdenv.mkDerivation (finalAttrs: {
     addOpenGLRunpath
     cmake
     pkg-config
-    wrapGAppsHook
+    wrapGAppsHook3
     wrapQtAppsHook
   ]
   ++ optional scriptingSupport swig4;
diff --git a/pkgs/applications/video/obs-studio/plugins/advanced-scene-switcher/default.nix b/pkgs/applications/video/obs-studio/plugins/advanced-scene-switcher/default.nix
index ea379e6ffc51..134aabbbf058 100644
--- a/pkgs/applications/video/obs-studio/plugins/advanced-scene-switcher/default.nix
+++ b/pkgs/applications/video/obs-studio/plugins/advanced-scene-switcher/default.nix
@@ -23,13 +23,13 @@
 
 stdenv.mkDerivation rec {
   pname = "advanced-scene-switcher";
-  version = "1.25.5";
+  version = "1.26.1";
 
   src = fetchFromGitHub {
     owner = "WarmUpTill";
     repo = "SceneSwitcher";
     rev = version;
-    hash = "sha256-ROR+R1Zak8XkhFk1+Pyi0lB+JZI4SVtKGin4vem7NEE=";
+    hash = "sha256-nig6MBPorKz/mZ7t4SbcW00ukEV9DWVDLAOgWX53xoo=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/applications/video/obs-studio/plugins/obs-mute-filter.nix b/pkgs/applications/video/obs-studio/plugins/obs-mute-filter.nix
index 0a98afde99f0..fd683f3a4ccf 100644
--- a/pkgs/applications/video/obs-studio/plugins/obs-mute-filter.nix
+++ b/pkgs/applications/video/obs-studio/plugins/obs-mute-filter.nix
@@ -7,13 +7,13 @@
 
 stdenv.mkDerivation rec {
   pname = "obs-mute-filter";
-  version = "0.2.2";
+  version = "0.3.0";
 
   src = fetchFromGitHub {
     owner = "norihiro";
     repo = "obs-mute-filter";
     rev = version;
-    sha256 = "sha256-SiutSmp+DnzMU62kxtBUL0xgMXTe0k+nKwSU3wQe4+g=";
+    sha256 = "sha256-UVYN9R7TnwD3a+KIYTXvxOQWfNUtR8cSWUoKZuNoBJc=";
   };
 
   nativeBuildInputs = [ cmake ];
diff --git a/pkgs/applications/video/obs-studio/plugins/obs-ndi/default.nix b/pkgs/applications/video/obs-studio/plugins/obs-ndi/default.nix
index 037eda100611..f58d81e9b706 100644
--- a/pkgs/applications/video/obs-studio/plugins/obs-ndi/default.nix
+++ b/pkgs/applications/video/obs-studio/plugins/obs-ndi/default.nix
@@ -2,7 +2,7 @@
 
 stdenv.mkDerivation rec {
   pname = "obs-ndi";
-  version = "4.13.0";
+  version = "4.13.2";
 
   nativeBuildInputs = [ cmake qtbase ];
   buildInputs = [ obs-studio qtbase ndi ];
@@ -11,7 +11,7 @@ stdenv.mkDerivation rec {
     owner = "Palakis";
     repo = "obs-ndi";
     rev = version;
-    sha256 = "sha256-ugAMSTXbbIZ61oWvoggVJ5kZEgp/waEcWt89AISrSdE=";
+    sha256 = "sha256-DVUoLV2jCdD8qXSpmGvqjrQh02dCLroKsUAb5+lYTog=";
   };
 
   patches = [
diff --git a/pkgs/applications/video/obs-studio/plugins/obs-webkitgtk.nix b/pkgs/applications/video/obs-studio/plugins/obs-webkitgtk.nix
index fcf426bde635..41b33b528a9f 100644
--- a/pkgs/applications/video/obs-studio/plugins/obs-webkitgtk.nix
+++ b/pkgs/applications/video/obs-studio/plugins/obs-webkitgtk.nix
@@ -8,7 +8,7 @@
 , cmake
 , pkg-config
 , ninja
-, wrapGAppsHook
+, wrapGAppsHook3
 }:
 
 stdenv.mkDerivation rec {
@@ -33,7 +33,7 @@ stdenv.mkDerivation rec {
     cmake
     pkg-config
     ninja
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   postPatch = ''
diff --git a/pkgs/applications/video/open-in-mpv/default.nix b/pkgs/applications/video/open-in-mpv/default.nix
index e6f820528882..1e1e29ba2dc0 100644
--- a/pkgs/applications/video/open-in-mpv/default.nix
+++ b/pkgs/applications/video/open-in-mpv/default.nix
@@ -5,13 +5,13 @@
 
 buildGoModule rec {
   pname = "open-in-mpv";
-  version = "2.2.0";
+  version = "2.2.1";
 
   src = fetchFromGitHub {
     owner = "Baldomo";
     repo = "open-in-mpv";
     rev = "v${version}";
-    hash = "sha256-+sP8/wILBkT3NnhENDYZbOwqOufkFyMJFpQxquuUBEs=";
+    hash = "sha256-Fa6oZMaR0ctZgYWoOXLaobc+pDRDZbDCFvRZUR+Fda4=";
   };
 
   vendorHash = "sha256-G6GZO2+CfEAYcf7zBcqDa808A0eJjM8dq7+4VGZ+P4c=";
diff --git a/pkgs/applications/video/openshot-qt/default.nix b/pkgs/applications/video/openshot-qt/default.nix
index fdd96d1aa3de..4a8208d8bbb6 100644
--- a/pkgs/applications/video/openshot-qt/default.nix
+++ b/pkgs/applications/video/openshot-qt/default.nix
@@ -11,7 +11,7 @@
 , qtwayland
 , wayland
 , waylandSupport ? stdenv.isLinux
-, wrapGAppsHook
+, wrapGAppsHook3
 }:
 
 let
@@ -31,7 +31,7 @@ mkDerivationWith python3.pkgs.buildPythonApplication {
 
   nativeBuildInputs = [
     doxygen
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
diff --git a/pkgs/applications/video/peek/default.nix b/pkgs/applications/video/peek/default.nix
index 105a86fbf4a7..a2817d10edca 100644
--- a/pkgs/applications/video/peek/default.nix
+++ b/pkgs/applications/video/peek/default.nix
@@ -11,7 +11,7 @@
 , pkg-config
 , txt2man
 , vala
-, wrapGAppsHook
+, wrapGAppsHook3
 , gsettings-desktop-schemas
 , gtk3
 , glib
@@ -56,7 +56,7 @@ stdenv.mkDerivation rec {
     txt2man
     python3
     vala
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
diff --git a/pkgs/applications/video/pipe-viewer/default.nix b/pkgs/applications/video/pipe-viewer/default.nix
index 5d3256931f12..854e4c6ba4bc 100644
--- a/pkgs/applications/video/pipe-viewer/default.nix
+++ b/pkgs/applications/video/pipe-viewer/default.nix
@@ -3,7 +3,7 @@
 , perl
 , buildPerlModule
 , makeWrapper
-, wrapGAppsHook
+, wrapGAppsHook3
 , withGtk3 ? false
 , ffmpeg
 , mpv
@@ -38,20 +38,20 @@ let
 in
 buildPerlModule rec {
   pname = "pipe-viewer";
-  version = "0.5.0";
+  version = "0.5.1";
 
   src = fetchFromGitHub {
     owner = "trizen";
     repo = "pipe-viewer";
     rev = version;
-    hash = "sha256-tNIAGvv3dCPd7MA27yd2AHMSgs+1D2uiJJTQgTsEVNU=";
+    hash = "sha256-GTmva1pDG1g2wZoS3ABYxhWdbARdlcS0rxGjkdJL7js=";
   };
 
   nativeBuildInputs = [ makeWrapper ]
-    ++ lib.optionals withGtk3 [ wrapGAppsHook ];
+    ++ lib.optionals withGtk3 [ wrapGAppsHook3 ];
 
   buildInputs = [ perlEnv ]
-    # Can't be in perlEnv for wrapGAppsHook to work correctly
+    # Can't be in perlEnv for wrapGAppsHook3 to work correctly
     ++ lib.optional withGtk3 Gtk3;
 
   # Not supported by buildPerlModule
diff --git a/pkgs/applications/video/pitivi/default.nix b/pkgs/applications/video/pitivi/default.nix
index eb00353b83d1..85ee9c0e7ef8 100644
--- a/pkgs/applications/video/pitivi/default.nix
+++ b/pkgs/applications/video/pitivi/default.nix
@@ -4,7 +4,7 @@
 , gettext
 , itstool
 , python3
-, wrapGAppsHook
+, wrapGAppsHook3
 , gst_all_1
 , gtk3
 , gobject-introspection
@@ -44,7 +44,7 @@ python3.pkgs.buildPythonApplication rec {
     gettext
     itstool
     python3
-    wrapGAppsHook
+    wrapGAppsHook3
     gobject-introspection
   ];
 
diff --git a/pkgs/applications/video/plex-mpv-shim/default.nix b/pkgs/applications/video/plex-mpv-shim/default.nix
index 2e71c4668356..7d862fb216d7 100644
--- a/pkgs/applications/video/plex-mpv-shim/default.nix
+++ b/pkgs/applications/video/plex-mpv-shim/default.nix
@@ -1,5 +1,5 @@
 { lib, buildPythonApplication, fetchFromGitHub, fetchpatch, python, mpv, requests, python-mpv-jsonipc, pystray, tkinter
-, wrapGAppsHook, gobject-introspection, mpv-shim-default-shaders }:
+, wrapGAppsHook3, gobject-introspection, mpv-shim-default-shaders }:
 
 buildPythonApplication rec {
   pname = "plex-mpv-shim";
@@ -21,7 +21,7 @@ buildPythonApplication rec {
   ];
 
   nativeBuildInputs = [
-    wrapGAppsHook
+    wrapGAppsHook3
     gobject-introspection
   ];
 
diff --git a/pkgs/applications/video/recapp/default.nix b/pkgs/applications/video/recapp/default.nix
index c15a0680a933..b6cb8c6377bb 100644
--- a/pkgs/applications/video/recapp/default.nix
+++ b/pkgs/applications/video/recapp/default.nix
@@ -14,7 +14,7 @@
 , ninja
 , pkg-config
 , slop
-, wrapGAppsHook
+, wrapGAppsHook3
 }:
 
 python3.pkgs.buildPythonApplication rec {
@@ -43,7 +43,7 @@ python3.pkgs.buildPythonApplication rec {
     meson
     ninja
     pkg-config
-    wrapGAppsHook
+    wrapGAppsHook3
     gobject-introspection
   ];
 
diff --git a/pkgs/applications/video/rtabmap/default.nix b/pkgs/applications/video/rtabmap/default.nix
index 1147d1ef1d94..6d5270d344ea 100644
--- a/pkgs/applications/video/rtabmap/default.nix
+++ b/pkgs/applications/video/rtabmap/default.nix
@@ -20,23 +20,23 @@
 , libGL
 , libGLU
 , vtkWithQt5
-, wrapGAppsHook
+, wrapGAppsHook3
 , liblapack
 , xorg
 }:
 
 stdenv.mkDerivation rec {
   pname = "rtabmap";
-  version = "0.21.4";
+  version = "0.21.4.1";
 
   src = fetchFromGitHub {
     owner = "introlab";
     repo = "rtabmap";
     rev = "refs/tags/${version}";
-    hash = "sha256-HrIATYRuhFfTlO4oTRZo7CM30LFVyatZJON31Fe4HTQ=";
+    hash = "sha256-y/p1uFSxVQNXO383DLGCg4eWW7iu1esqpWlyPMF3huk=";
   };
 
-  nativeBuildInputs = [ cmake pkg-config wrapQtAppsHook wrapGAppsHook ];
+  nativeBuildInputs = [ cmake pkg-config wrapQtAppsHook wrapGAppsHook3 ];
   buildInputs = [
     ## Required
     opencv
diff --git a/pkgs/applications/video/screenkey/default.nix b/pkgs/applications/video/screenkey/default.nix
index 90cf5e7dcf24..301fc3e30f82 100644
--- a/pkgs/applications/video/screenkey/default.nix
+++ b/pkgs/applications/video/screenkey/default.nix
@@ -1,6 +1,6 @@
 { lib
 , fetchFromGitLab
-, wrapGAppsHook
+, wrapGAppsHook3
 , xorg
 , gobject-introspection
 , gtk3
@@ -21,7 +21,7 @@ python3.pkgs.buildPythonApplication rec {
   };
 
   nativeBuildInputs = [
-    wrapGAppsHook
+    wrapGAppsHook3
     # for setup hook
     gobject-introspection
   ];
@@ -38,7 +38,7 @@ python3.pkgs.buildPythonApplication rec {
     dbus-python
   ];
 
-  # Prevent double wrapping because of wrapGAppsHook
+  # Prevent double wrapping because of wrapGAppsHook3
   dontWrapGApps = true;
 
   preFixup = ''
diff --git a/pkgs/applications/video/streamlink-twitch-gui/bin.nix b/pkgs/applications/video/streamlink-twitch-gui/bin.nix
index 543b2b524708..ac1490345c29 100644
--- a/pkgs/applications/video/streamlink-twitch-gui/bin.nix
+++ b/pkgs/applications/video/streamlink-twitch-gui/bin.nix
@@ -5,7 +5,7 @@
 , makeDesktopItem
 , makeWrapper
 , stdenv
-, wrapGAppsHook
+, wrapGAppsHook3
 , at-spi2-core
 , atk
 , alsa-lib
@@ -79,7 +79,7 @@ stdenv.mkDerivation rec {
     libXScrnSaver
     libXtst
     makeWrapper
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [ streamlink ];
diff --git a/pkgs/applications/video/streamlink/default.nix b/pkgs/applications/video/streamlink/default.nix
index b6522aef2397..e5f0cac20b52 100644
--- a/pkgs/applications/video/streamlink/default.nix
+++ b/pkgs/applications/video/streamlink/default.nix
@@ -7,12 +7,12 @@
 
 python3Packages.buildPythonApplication rec {
   pname = "streamlink";
-  version = "6.7.3";
+  version = "6.7.4";
   pyproject = true;
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-Da+J+NOXW+n55LvaPQw6XiRhJJQ4Pc4Z1p21qMym/Xw=";
+    hash = "sha256-kzdTerEZ/ndSSl1mWq7Ou/sG4suN8o0SYNkodkJXUc4=";
   };
 
   patches = [
@@ -42,6 +42,7 @@ python3Packages.buildPythonApplication rec {
 
   propagatedBuildInputs = with python3Packages; [
     certifi
+    exceptiongroup
     isodate
     lxml
     pycountry
@@ -55,7 +56,7 @@ python3Packages.buildPythonApplication rec {
     websocket-client
   ];
 
-  meta = with lib; {
+  meta = {
     changelog = "https://github.com/streamlink/streamlink/raw/${version}/CHANGELOG.md";
     description = "CLI for extracting streams from various websites to video player of your choosing";
     homepage = "https://streamlink.github.io/";
@@ -66,8 +67,8 @@ python3Packages.buildPythonApplication rec {
 
       Streamlink is a fork of the livestreamer project.
     '';
-    license = licenses.bsd2;
+    license = lib.licenses.bsd2;
     mainProgram = "streamlink";
-    maintainers = with maintainers; [ dezgeg zraexy DeeUnderscore ];
+    maintainers = with lib.maintainers; [ dezgeg zraexy DeeUnderscore ];
   };
 }
diff --git a/pkgs/applications/video/subtitleeditor/default.nix b/pkgs/applications/video/subtitleeditor/default.nix
index fd8e03963dca..b440c187403e 100644
--- a/pkgs/applications/video/subtitleeditor/default.nix
+++ b/pkgs/applications/video/subtitleeditor/default.nix
@@ -1,6 +1,6 @@
 { lib, stdenv, fetchFromGitHub, autoreconfHook, pkg-config, intltool, file,
   desktop-file-utils, enchant, gtk3, gtkmm3, gst_all_1, hicolor-icon-theme,
-  libsigcxx, libxmlxx, xdg-utils, isocodes, wrapGAppsHook
+  libsigcxx, libxmlxx, xdg-utils, isocodes, wrapGAppsHook3
 }:
 
 stdenv.mkDerivation rec {
@@ -19,7 +19,7 @@ stdenv.mkDerivation rec {
     pkg-config
     intltool
     file
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs =  [
diff --git a/pkgs/applications/video/tartube/default.nix b/pkgs/applications/video/tartube/default.nix
index 5b62399a0465..73f6946f6baa 100644
--- a/pkgs/applications/video/tartube/default.nix
+++ b/pkgs/applications/video/tartube/default.nix
@@ -6,7 +6,7 @@
 , libnotify
 , pango
 , python3Packages
-, wrapGAppsHook
+, wrapGAppsHook3
 , youtube-dl
 , glib
 , ffmpeg
@@ -26,7 +26,7 @@ python3Packages.buildPythonApplication rec {
 
   nativeBuildInputs = [
     gobject-introspection
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   strictDeps = false;
diff --git a/pkgs/applications/video/timelens/default.nix b/pkgs/applications/video/timelens/default.nix
index bd38a4c2f76a..c5d2ff7c4c5a 100644
--- a/pkgs/applications/video/timelens/default.nix
+++ b/pkgs/applications/video/timelens/default.nix
@@ -4,7 +4,7 @@
 , pkg-config
 , glib
 , gst_all_1
-, wrapGAppsHook
+, wrapGAppsHook3
 }:
 
 rustPlatform.buildRustPackage rec {
@@ -22,7 +22,7 @@ rustPlatform.buildRustPackage rec {
 
   nativeBuildInputs = [
     pkg-config
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
diff --git a/pkgs/applications/video/vdr/softhddevice/default.nix b/pkgs/applications/video/vdr/softhddevice/default.nix
index caccdc6ed39a..9271a9bf7064 100644
--- a/pkgs/applications/video/vdr/softhddevice/default.nix
+++ b/pkgs/applications/video/vdr/softhddevice/default.nix
@@ -14,12 +14,12 @@
 }:
 stdenv.mkDerivation rec {
   pname = "vdr-softhddevice";
-  version = "2.2.0";
+  version = "2.3.0";
 
   src = fetchFromGitHub {
     owner = "ua0lnj";
     repo = "vdr-plugin-softhddevice";
-    sha256 = "sha256-1yCDNfUdQLgJ0WWyx0q3Hi0yxb6zxaK7wMzLD9jXweI=";
+    sha256 = "sha256-qyl4XDLJ99QXQY0XXYMteja0oWZ+vkFa4RwEo1Hv3bo=";
     rev = "v${version}";
   };
 
diff --git a/pkgs/applications/video/xplayer/default.nix b/pkgs/applications/video/xplayer/default.nix
index baa8fcb95be0..929d9d2952c4 100644
--- a/pkgs/applications/video/xplayer/default.nix
+++ b/pkgs/applications/video/xplayer/default.nix
@@ -21,7 +21,7 @@
 , libxplayer-plparser
 , pkg-config
 , python3
-, wrapGAppsHook
+, wrapGAppsHook3
 , xapp
 , yelp-tools }:
 
@@ -52,7 +52,7 @@ stdenv.mkDerivation rec {
 
   nativeBuildInputs = [
     autoreconfHook
-    wrapGAppsHook
+    wrapGAppsHook3
     autoconf-archive
     gettext
     gtk-doc
diff --git a/pkgs/applications/virtualization/conmon/default.nix b/pkgs/applications/virtualization/conmon/default.nix
index 6b65ab58dc63..aa3675ac2001 100644
--- a/pkgs/applications/virtualization/conmon/default.nix
+++ b/pkgs/applications/virtualization/conmon/default.nix
@@ -12,13 +12,13 @@
 
 stdenv.mkDerivation rec {
   pname = "conmon";
-  version = "2.1.11";
+  version = "2.1.12";
 
   src = fetchFromGitHub {
     owner = "containers";
     repo = pname;
     rev = "v${version}";
-    hash = "sha256-QQgpvvk7S6ARzBct/4AQP66End30EXcUPqv8a4Udoas=";
+    hash = "sha256-iSC1Q7fdf+4YH4vLFPOscRWxNv/xygYx872u8msmMmc=";
   };
 
   nativeBuildInputs = [ pkg-config ];
diff --git a/pkgs/applications/virtualization/cri-o/default.nix b/pkgs/applications/virtualization/cri-o/default.nix
index 959fe755c209..d932daa41f3a 100644
--- a/pkgs/applications/virtualization/cri-o/default.nix
+++ b/pkgs/applications/virtualization/cri-o/default.nix
@@ -15,13 +15,13 @@
 
 buildGoModule rec {
   pname = "cri-o";
-  version = "1.29.4";
+  version = "1.30.0";
 
   src = fetchFromGitHub {
     owner = "cri-o";
     repo = "cri-o";
     rev = "v${version}";
-    hash = "sha256-bF9hvKKwhsmX606Jk34qn32JklUrG939BW2x4tbknjo=";
+    hash = "sha256-gsC6e0wQowgskUazuqQRtO7ra5Wg9RU8+k3LFqIReJk=";
   };
   vendorHash = null;
 
diff --git a/pkgs/applications/virtualization/crosvm/default.nix b/pkgs/applications/virtualization/crosvm/default.nix
index 1dbfaa298e34..50c5a10b5663 100644
--- a/pkgs/applications/virtualization/crosvm/default.nix
+++ b/pkgs/applications/virtualization/crosvm/default.nix
@@ -5,20 +5,18 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "crosvm";
-  version = "123.0";
+  version = "124.0";
 
   src = fetchgit {
     url = "https://chromium.googlesource.com/chromiumos/platform/crosvm";
-    # This is actually one commit before release 123, because the final
-    # commit breaks the build and gets reverted in future releases.
-    rev = "7c75ad6185893b4cc26676b6a0eb9fbdf9ed5b72";
-    hash = "sha256-1Jj8TAgYxIGLJeTtiZBcXw0n/mTbh/uC8EFM0IYD5VY=";
+    rev = "bc2900b9ccbdf37b780a63888ca94437fd7dd6af";
+    hash = "sha256-t/47u5BlSC5vbRc7OQSbGBF+wnhcDFOMjrRQc/p2HcQ=";
     fetchSubmodules = true;
   };
 
   separateDebugInfo = true;
 
-  cargoHash = "sha256-f3w+msG7m6valf/I1puMrpiVgk0J1bdyp+rw3KQ/7ys=";
+  cargoHash = "sha256-7zx0k7HXequpwcURHx+Ml3cDhdvLkXTg+V71F6TO/d0=";
 
   nativeBuildInputs = [
     pkg-config protobuf python3 rustPlatform.bindgenHook wayland-scanner
diff --git a/pkgs/applications/virtualization/crun/default.nix b/pkgs/applications/virtualization/crun/default.nix
index a17a115c2c59..03f76e0421a1 100644
--- a/pkgs/applications/virtualization/crun/default.nix
+++ b/pkgs/applications/virtualization/crun/default.nix
@@ -39,13 +39,13 @@ let
 in
 stdenv.mkDerivation rec {
   pname = "crun";
-  version = "1.14.4";
+  version = "1.15";
 
   src = fetchFromGitHub {
     owner = "containers";
     repo = pname;
     rev = version;
-    hash = "sha256-f+cG9800QKZH4+9ie97TmTbQlpLXe+z+47ptP+HgIgs=";
+    hash = "sha256-ZLkpwNxhTssp5RZ041+/mveq7Sct8fVzsdt8X319V1Q=";
     fetchSubmodules = true;
   };
 
diff --git a/pkgs/applications/virtualization/ddev/default.nix b/pkgs/applications/virtualization/ddev/default.nix
index e733fe42127a..35c1f805c8ba 100644
--- a/pkgs/applications/virtualization/ddev/default.nix
+++ b/pkgs/applications/virtualization/ddev/default.nix
@@ -2,13 +2,13 @@
 
 buildGoModule rec {
   pname = "ddev";
-  version = "1.23.0";
+  version = "1.23.1";
 
   src = fetchFromGitHub {
     owner = "ddev";
     repo = "ddev";
     rev = "v${version}";
-    hash = "sha256-+CyihuSo/ssX8tX2rYi3c41eAwdG58aagAsYiBBjQ48=";
+    hash = "sha256-qGuYH2xYmd3CYoYobjoum+zUImcsiaG5No36FG0H0bA=";
   };
 
   vendorHash = null;
diff --git a/pkgs/applications/virtualization/distrobox/default.nix b/pkgs/applications/virtualization/distrobox/default.nix
index 4d5317201ad0..567a1b4db6eb 100644
--- a/pkgs/applications/virtualization/distrobox/default.nix
+++ b/pkgs/applications/virtualization/distrobox/default.nix
@@ -2,13 +2,13 @@
 
 stdenvNoCC.mkDerivation (finalAttrs: {
   pname = "distrobox";
-  version = "1.7.1";
+  version = "1.7.2.1";
 
   src = fetchFromGitHub {
     owner = "89luca89";
     repo = "distrobox";
     rev = finalAttrs.version;
-    hash = "sha256-mSka8QyoLjnaVEP23TtyzbPTBHDlnrSomVZdfw4PPng=";
+    hash = "sha256-H2jeKs0h4ZAcP33HB5jptlubq62cwnjPK2wSlEIfFWA=";
   };
 
   dontConfigure = true;
@@ -21,7 +21,7 @@ stdenvNoCC.mkDerivation (finalAttrs: {
 
     # https://github.com/89luca89/distrobox/issues/408
     substituteInPlace ./distrobox-generate-entry \
-      --replace 'icon_default="''${HOME}/.local' "icon_default=\"$out"
+      --replace-fail 'icon_default="''${HOME}/.local' "icon_default=\"$out"
     ./install -P $out
 
     runHook postInstall
diff --git a/pkgs/applications/virtualization/docker/compose_1.nix b/pkgs/applications/virtualization/docker/compose_1.nix
index f19d015e9e30..ac5d726439ce 100644
--- a/pkgs/applications/virtualization/docker/compose_1.nix
+++ b/pkgs/applications/virtualization/docker/compose_1.nix
@@ -1,10 +1,10 @@
-{ lib, buildPythonApplication, fetchPypi, pythonOlder
+{ lib, buildPythonApplication, fetchPypi
 , installShellFiles
 , mock, pytest, nose
 , pyyaml, colorama, docopt
 , dockerpty, docker, jsonschema, requests
 , six, texttable, websocket-client, cached-property
-, enum34, functools32, paramiko, distro, python-dotenv
+, paramiko, distro, python-dotenv
 }:
 
 buildPythonApplication rec {
@@ -24,9 +24,7 @@ buildPythonApplication rec {
     pyyaml colorama dockerpty docker
     jsonschema requests six texttable websocket-client
     docopt cached-property paramiko distro python-dotenv
-  ]
-  ++ lib.optional (pythonOlder "3.4") enum34
-  ++ lib.optional (pythonOlder "3.2") functools32;
+  ];
 
   postPatch = ''
     # Remove upper bound on requires, see also
diff --git a/pkgs/applications/virtualization/docker/default.nix b/pkgs/applications/virtualization/docker/default.nix
index e30ad02f5bc8..bb18a42a021a 100644
--- a/pkgs/applications/virtualization/docker/default.nix
+++ b/pkgs/applications/virtualization/docker/default.nix
@@ -280,15 +280,15 @@ rec {
   # Get revisions from
   # https://github.com/moby/moby/tree/${version}/hack/dockerfile/install/*
   docker_24 = callPackage dockerGen rec {
-    version = "24.0.5";
+    version = "24.0.9";
     cliRev = "v${version}";
-    cliHash = "sha256-u1quVGTx/p8BDyRn33vYyyuE5BOhWMnGQ5uVX0PZ5mg=";
+    cliHash = "sha256-nXIZtE0X1OoQT908IGuRhVHb0tiLbqQLP0Md3YWt0/Q=";
     mobyRev = "v${version}";
-    mobyHash = "sha256-JQjRz1fHZlQRkNw/R8WWLV8caN3/U3mrKKQXbZt2crU=";
-    runcRev = "v1.1.8";
-    runcHash = "sha256-rDJYEc64KW4Qa3Eg2oUjJqIKrg6THb5hxQFFbvb9Zp4=";
-    containerdRev = "v1.7.1";
-    containerdHash = "sha256-WwedtcsrDQwMQcKFO5nnPiHyGJpl5hXZlmpbBe1/ftY=";
+    mobyHash = "sha256-KRS99heyMAPBnjjr7If8TOlJf6v6866S7J3YGkOhFiA=";
+    runcRev = "v1.1.12";
+    runcHash = "sha256-N77CU5XiGYIdwQNPFyluXjseTeaYuNJ//OsEUS0g/v0=";
+    containerdRev = "v1.7.13";
+    containerdHash = "sha256-y3CYDZbA2QjIn1vyq/p1F1pAVxQHi/0a6hGWZCRWzyk=";
     tiniRev = "v0.19.0";
     tiniHash = "sha256-ZDKu/8yE5G0RYFJdhgmCdN3obJNyRWv6K/Gd17zc1sI=";
   };
diff --git a/pkgs/applications/virtualization/dumb-init/default.nix b/pkgs/applications/virtualization/dumb-init/default.nix
index 5907aacc99d4..28054be349e1 100644
--- a/pkgs/applications/virtualization/dumb-init/default.nix
+++ b/pkgs/applications/virtualization/dumb-init/default.nix
@@ -30,7 +30,7 @@ stdenv.mkDerivation rec {
     homepage = "https://github.com/Yelp/dumb-init";
     license = licenses.mit;
     maintainers = [ ];
-    platforms = platforms.linux;
+    platforms = platforms.unix;
     mainProgram = "dumb-init";
   };
 }
diff --git a/pkgs/applications/virtualization/ecs-agent/default.nix b/pkgs/applications/virtualization/ecs-agent/default.nix
index c3a28e4be4fe..57dde74ab09f 100644
--- a/pkgs/applications/virtualization/ecs-agent/default.nix
+++ b/pkgs/applications/virtualization/ecs-agent/default.nix
@@ -2,13 +2,13 @@
 
 buildGoModule rec {
   pname = "amazon-ecs-agent";
-  version = "1.82.2";
+  version = "1.82.3";
 
   src = fetchFromGitHub {
     rev = "v${version}";
     owner = "aws";
     repo = pname;
-    hash = "sha256-2a8QBdL28iHVTE+Xo1I+89pFBeWndPqT072SHB498SQ=";
+    hash = "sha256-dn7aAH5Huul02WHoPm9VOjAdhMmtUXwnoGa2nSOa8UI=";
   };
 
   vendorHash = null;
diff --git a/pkgs/applications/virtualization/kraft/default.nix b/pkgs/applications/virtualization/kraft/default.nix
index 43222fa6b19b..76e6614dc33c 100644
--- a/pkgs/applications/virtualization/kraft/default.nix
+++ b/pkgs/applications/virtualization/kraft/default.nix
@@ -7,16 +7,16 @@
 
 buildGoModule rec {
   pname = "kraftkit";
-  version = "0.8.5";
+  version = "0.8.6";
 
   src = fetchFromGitHub {
     owner = "unikraft";
     repo = "kraftkit";
     rev = "v${version}";
-    hash = "sha256-31cgihmtBIB8U60ic5wKNyqB4a5sXZmIXxAjQI/43ro=";
+    hash = "sha256-lBvDKO2+MTSrmQM7szg5yulUi5OZKv7qKNQ75PIZgDo=";
   };
 
-  vendorHash = "sha256-X2E0Sy4rJhrDgPSSOTqUeMEdgq5H3DF5xjh84qlH1Ug=";
+  vendorHash = "sha256-JSE4k/JgWvYCfTUuf2pj4XCcdJ9+j7fY9aAiCipapIk=";
 
   ldflags = [
     "-s"
diff --git a/pkgs/applications/virtualization/podman-tui/default.nix b/pkgs/applications/virtualization/podman-tui/default.nix
index 8e035b87533b..b1ff999cd89c 100644
--- a/pkgs/applications/virtualization/podman-tui/default.nix
+++ b/pkgs/applications/virtualization/podman-tui/default.nix
@@ -2,13 +2,13 @@
 
 buildGoModule rec {
   pname = "podman-tui";
-  version = "1.0.0";
+  version = "1.0.1";
 
   src = fetchFromGitHub {
     owner = "containers";
     repo = "podman-tui";
     rev = "v${version}";
-    hash = "sha256-sJaiZJeT0oUAnSg9Kv8uMp1XoumumC3LB77lelmwSgw=";
+    hash = "sha256-t1vrUXv0ZP+vmOcUIue/yvB34DP+gduopuN0U9oixBQ=";
   };
 
   vendorHash = null;
@@ -20,19 +20,20 @@ buildGoModule rec {
 
   ldflags = [ "-s" "-w" ];
 
-  preCheck =
+  preCheck = ''
+    export USER=$(whoami)
+    export HOME="$(mktemp -d)"
+  '';
+
+  checkFlags =
     let
       skippedTests = [
+        # Disable flaky tests
         "TestDialogs"
         "TestVoldialogs"
       ];
     in
-    ''
-      export HOME="$(mktemp -d)"
-
-      # Disable flaky tests
-      buildFlagsArray+=("-run" "[^(${builtins.concatStringsSep "|" skippedTests})]")
-    '';
+    [ "-skip=^${builtins.concatStringsSep "$|^" skippedTests}$" ];
 
   passthru.tests.version = testers.testVersion {
     package = podman-tui;
diff --git a/pkgs/applications/virtualization/podman/default.nix b/pkgs/applications/virtualization/podman/default.nix
index 0a8bbcc1853c..1d5cb70e5886 100644
--- a/pkgs/applications/virtualization/podman/default.nix
+++ b/pkgs/applications/virtualization/podman/default.nix
@@ -19,11 +19,10 @@
 , symlinkJoin
 , substituteAll
 , extraPackages ? [ ]
-, runc
 , crun
-, gvisor
-, youki
+, runc
 , conmon
+, extraRuntimes ? lib.optionals stdenv.isLinux [ runc ]  # e.g.: runc, gvisor, youki
 , slirp4netns
 , fuse-overlayfs
 , util-linux
@@ -59,28 +58,30 @@ let
       netavark
       slirp4netns
       passt
-    ];
+      conmon
+      crun
+    ] ++ extraRuntimes;
   };
 in
 buildGoModule rec {
   pname = "podman";
-  version = "5.0.2";
+  version = "5.0.3";
 
   src = fetchFromGitHub {
     owner = "containers";
     repo = "podman";
     rev = "v${version}";
-    hash = "sha256-8Swqwyzu/WI9mG21bLF81Kk4kS2Ltg0GV9G3EcG/FnU=";
+    hash = "sha256-PA7mKHPzPDFdwKXAHvHnDvHF+mTmm59jkoeUeiCP6vE=";
   };
 
   patches = [
-    # we intentionally don't build and install the helper so we shouldn't display messages to users about it
-    ./rm-podman-mac-helper-msg.patch
-  ] ++ lib.optionals stdenv.isLinux [
     (substituteAll {
       src = ./hardcode-paths.patch;
-      inherit crun runc gvisor youki conmon;
+      bin_path = helpersBin;
     })
+
+    # we intentionally don't build and install the helper so we shouldn't display messages to users about it
+    ./rm-podman-mac-helper-msg.patch
   ];
 
   vendorHash = null;
diff --git a/pkgs/applications/virtualization/podman/hardcode-paths.patch b/pkgs/applications/virtualization/podman/hardcode-paths.patch
index 05394f62877a..445a615c811b 100644
--- a/pkgs/applications/virtualization/podman/hardcode-paths.patch
+++ b/pkgs/applications/virtualization/podman/hardcode-paths.patch
@@ -1,8 +1,8 @@
 diff --git a/vendor/github.com/containers/common/pkg/config/default.go b/vendor/github.com/containers/common/pkg/config/default.go
-index 19c4bb6bf..2743de4b2 100644
+index 3a6d804ad..5628e2bf6 100644
 --- a/vendor/github.com/containers/common/pkg/config/default.go
 +++ b/vendor/github.com/containers/common/pkg/config/default.go
-@@ -364,75 +364,34 @@ func defaultEngineConfig() (*EngineConfig, error) {
+@@ -366,75 +366,34 @@ func defaultEngineConfig() (*EngineConfig, error) {
  	c.Retry = 3
  	c.OCIRuntimes = map[string][]string{
  		"crun": {
@@ -13,7 +13,7 @@ index 19c4bb6bf..2743de4b2 100644
 -			"/sbin/crun",
 -			"/bin/crun",
 -			"/run/current-system/sw/bin/crun",
-+			"@crun@/bin/crun",
++			"@bin_path@/bin/crun",
  		},
  		"crun-vm": {
 -			"/usr/bin/crun-vm",
@@ -22,7 +22,7 @@ index 19c4bb6bf..2743de4b2 100644
 -			"/sbin/crun-vm",
 -			"/bin/crun-vm",
 -			"/run/current-system/sw/bin/crun-vm",
-+			// TODO: "@crun-vm@/bin/crun-vm",
++			"@bin_path@/bin/crun-vm",
  		},
  		"crun-wasm": {
 -			"/usr/bin/crun-wasm",
@@ -32,7 +32,7 @@ index 19c4bb6bf..2743de4b2 100644
 -			"/sbin/crun-wasm",
 -			"/bin/crun-wasm",
 -			"/run/current-system/sw/bin/crun-wasm",
-+			// TODO: "@crun-wasm@/bin/crun-wasm",
++			"@bin_path@/bin/crun-wasm",
  		},
  		"runc": {
 -			"/usr/bin/runc",
@@ -43,11 +43,11 @@ index 19c4bb6bf..2743de4b2 100644
 -			"/bin/runc",
 -			"/usr/lib/cri-o-runc/sbin/runc",
 -			"/run/current-system/sw/bin/runc",
-+			"@runc@/bin/runc",
++			"@bin_path@/bin/runc",
  		},
  		"runj": {
 -			"/usr/local/bin/runj",
-+			// TODO: "@runj@/bin/runj",
++			"@bin_path@/bin/runj",
  		},
  		"kata": {
 -			"/usr/bin/kata-runtime",
@@ -58,7 +58,7 @@ index 19c4bb6bf..2743de4b2 100644
 -			"/bin/kata-runtime",
 -			"/usr/bin/kata-qemu",
 -			"/usr/bin/kata-fc",
-+			// TODO: "@kata@/bin/kata",
++			"@bin_path@/bin/kata-runtime",
  		},
  		"runsc": {
 -			"/usr/bin/runsc",
@@ -68,27 +68,27 @@ index 19c4bb6bf..2743de4b2 100644
 -			"/bin/runsc",
 -			"/sbin/runsc",
 -			"/run/current-system/sw/bin/runsc",
-+			"@gvisor@/bin/runsc",
++			"@bin_path@/bin/runsc",
  		},
  		"youki": {
 -			"/usr/local/bin/youki",
 -			"/usr/bin/youki",
 -			"/bin/youki",
 -			"/run/current-system/sw/bin/youki",
-+			"@youki@/bin/youki",
++			"@bin_path@/bin/youki",
  		},
  		"krun": {
 -			"/usr/bin/krun",
 -			"/usr/local/bin/krun",
-+			// TODO: "@krun@/bin/krun",
++			"@bin_path@/bin/krun",
  		},
  		"ocijail": {
 -			"/usr/local/bin/ocijail",
-+			// TODO: "@ocijail@/bin/ocijail",
++			"@bin_path@/bin/ocijail",
  		},
  	}
  	c.PlatformToOCIRuntime = map[string]string{
-@@ -443,16 +402,9 @@ func defaultEngineConfig() (*EngineConfig, error) {
+@@ -445,26 +404,12 @@ func defaultEngineConfig() (*EngineConfig, error) {
  	// Needs to be called after populating c.OCIRuntimes.
  	c.OCIRuntime = c.findRuntime()
  
@@ -103,7 +103,18 @@ index 19c4bb6bf..2743de4b2 100644
 -		"/usr/local/bin/conmon",
 -		"/usr/local/sbin/conmon",
 -		"/run/current-system/sw/bin/conmon",
-+		"@conmon@/bin/conmon",
++		"@bin_path@/bin/conmon",
  	})
  	c.ConmonRsPath.Set([]string{
- 		"/usr/libexec/podman/conmonrs",
+-		"/usr/libexec/podman/conmonrs",
+-		"/usr/local/libexec/podman/conmonrs",
+-		"/usr/local/lib/podman/conmonrs",
+-		"/usr/bin/conmonrs",
+-		"/usr/sbin/conmonrs",
+-		"/usr/local/bin/conmonrs",
+-		"/usr/local/sbin/conmonrs",
+-		"/run/current-system/sw/bin/conmonrs",
++		"@bin_path@/bin/conmonrs",
+ 	})
+ 	c.PullPolicy = DefaultPullPolicy
+ 	c.RuntimeSupportsJSON.Set([]string{
diff --git a/pkgs/applications/virtualization/qemu/default.nix b/pkgs/applications/virtualization/qemu/default.nix
index 3b1eb3b9908c..05f93613087b 100644
--- a/pkgs/applications/virtualization/qemu/default.nix
+++ b/pkgs/applications/virtualization/qemu/default.nix
@@ -13,7 +13,7 @@
 , pipewireSupport ? !stdenv.isDarwin && !nixosTestRunner && !toolsOnly, pipewire
 , sdlSupport ? !stdenv.isDarwin && !nixosTestRunner && !toolsOnly, SDL2, SDL2_image
 , jackSupport ? !stdenv.isDarwin && !nixosTestRunner && !toolsOnly, libjack2
-, gtkSupport ? !stdenv.isDarwin && !xenSupport && !nixosTestRunner && !toolsOnly, gtk3, gettext, vte, wrapGAppsHook
+, gtkSupport ? !stdenv.isDarwin && !xenSupport && !nixosTestRunner && !toolsOnly, gtk3, gettext, vte, wrapGAppsHook3
 , vncSupport ? !nixosTestRunner && !toolsOnly, libjpeg, libpng
 , smartcardSupport ? !nixosTestRunner && !toolsOnly, libcacard
 , spiceSupport ? true && !nixosTestRunner && !toolsOnly, spice, spice-protocol
@@ -55,11 +55,11 @@ stdenv.mkDerivation (finalAttrs: {
     + lib.optionalString hostCpuOnly "-host-cpu-only"
     + lib.optionalString nixosTestRunner "-for-vm-tests"
     + lib.optionalString toolsOnly "-utils";
-  version = "8.2.3";
+  version = "8.2.4";
 
   src = fetchurl {
     url = "https://download.qemu.org/qemu-${finalAttrs.version}.tar.xz";
-    hash = "sha256-d1sRjKpjZiCnr0saFWRFoaKA9a1Ss7y7F/jilkhB21g=";
+    hash = "sha256-7PVTf+q5JkG5nXSC9VHyGV06W9NKzvnVK/v/NTpgc5c=";
   };
 
   depsBuildBuild = [ buildPackages.stdenv.cc ]
@@ -72,7 +72,7 @@ stdenv.mkDerivation (finalAttrs: {
     # Don't change this to python3 and python3.pkgs.*, breaks cross-compilation
     python3Packages.python python3Packages.sphinx python3Packages.sphinx-rtd-theme
   ]
-    ++ lib.optionals gtkSupport [ wrapGAppsHook ]
+    ++ lib.optionals gtkSupport [ wrapGAppsHook3 ]
     ++ lib.optionals hexagonSupport [ glib ]
     ++ lib.optionals stdenv.isDarwin [ sigtool ];
 
diff --git a/pkgs/applications/virtualization/quickgui/default.nix b/pkgs/applications/virtualization/quickgui/default.nix
index 572ee4a0c082..f4420c6aeac3 100644
--- a/pkgs/applications/virtualization/quickgui/default.nix
+++ b/pkgs/applications/virtualization/quickgui/default.nix
@@ -3,7 +3,7 @@
 , fetchurl
 , autoPatchelfHook
 , dpkg
-, wrapGAppsHook
+, wrapGAppsHook3
 , quickemu
 , gnome
 }:
@@ -20,7 +20,7 @@ stdenvNoCC.mkDerivation rec {
   nativeBuildInputs = [
     autoPatchelfHook
     dpkg
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
diff --git a/pkgs/applications/virtualization/singularity/packages.nix b/pkgs/applications/virtualization/singularity/packages.nix
index bd7deb298d47..8711ab197fa7 100644
--- a/pkgs/applications/virtualization/singularity/packages.nix
+++ b/pkgs/applications/virtualization/singularity/packages.nix
@@ -41,20 +41,20 @@ let
     callPackage
       (import ./generic.nix rec {
         pname = "singularity-ce";
-        version = "4.1.2";
+        version = "4.1.3";
         projectName = "singularity";
 
         src = fetchFromGitHub {
           owner = "sylabs";
           repo = "singularity";
           rev = "refs/tags/v${version}";
-          hash = "sha256-/KTDdkCMkZ5hO+VYHzw9vB8FDWxg7PS1yb2waRJQngY=";
+          hash = "sha256-pR8zyMr23wcbDCXAysVEgGUDHkrfhLoVF3fjMLgZFYs=";
         };
 
         # Update by running
         # nix-prefetch -E "{ sha256 }: ((import ./. { }).singularity.override { vendorHash = sha256; }).goModules"
         # at the root directory of the Nixpkgs repository
-        vendorHash = "sha256-4Nxj2PzZmFdvouWKyXLFDk8iuRhFuvyPW/+VRTw75Zw=";
+        vendorHash = "sha256-332GFL04aE6B6vxgtJJH4TeI6YJCDBpCClJ3sc5gN3A=";
 
         # Do not build conmon and squashfuse from the Git submodule sources,
         # Use Nixpkgs provided version
diff --git a/pkgs/applications/virtualization/tart/default.nix b/pkgs/applications/virtualization/tart/default.nix
index e8791404fb87..921a8b7e3dbc 100644
--- a/pkgs/applications/virtualization/tart/default.nix
+++ b/pkgs/applications/virtualization/tart/default.nix
@@ -10,11 +10,11 @@
 }:
 stdenvNoCC.mkDerivation (finalAttrs: {
   pname = "tart";
-  version = "2.7.2";
+  version = "2.10.0";
 
   src = fetchurl {
       url = "https://github.com/cirruslabs/tart/releases/download/${finalAttrs.version}/tart-arm64.tar.gz";
-      hash = "sha256-Z/LZ8g1/FYT7Jh943tFxN8L5HeNf0CVz1VEJj+2fCd8=";
+      hash = "sha256-9spBDqNm47nUZEGCCOfISjNpGx/22OtPPheB7iJTq1A=";
   };
   sourceRoot = ".";
 
diff --git a/pkgs/applications/virtualization/virt-manager/default.nix b/pkgs/applications/virtualization/virt-manager/default.nix
index 813e77db435c..3cbc285076fe 100644
--- a/pkgs/applications/virtualization/virt-manager/default.nix
+++ b/pkgs/applications/virtualization/virt-manager/default.nix
@@ -1,4 +1,4 @@
-{ lib, fetchFromGitHub, python3, intltool, file, wrapGAppsHook, gtk-vnc
+{ lib, fetchFromGitHub, python3, intltool, file, wrapGAppsHook3, gtk-vnc
 , vte, avahi, dconf, gobject-introspection, libvirt-glib, system-libvirt
 , gsettings-desktop-schemas, gst_all_1, libosinfo, gnome, gtksourceview4, docutils, cpio
 , e2fsprogs, findutils, gzip, cdrtools, xorriso, fetchpatch
@@ -34,7 +34,7 @@ python3.pkgs.buildPythonApplication rec {
     intltool file
     gobject-introspection # for setup hook populating GI_TYPELIB_PATH
     docutils
-    wrapGAppsHook
+    wrapGAppsHook3
   ] ++ lib.optional stdenv.isDarwin desktopToDarwinBundle;
 
   buildInputs = [
diff --git a/pkgs/applications/virtualization/virt-viewer/default.nix b/pkgs/applications/virtualization/virt-viewer/default.nix
index 1aca58af5c77..b0bf423605f3 100644
--- a/pkgs/applications/virtualization/virt-viewer/default.nix
+++ b/pkgs/applications/virtualization/virt-viewer/default.nix
@@ -30,7 +30,7 @@
 , spice-protocol
 , spiceSupport ? true
 , vte
-, wrapGAppsHook
+, wrapGAppsHook3
 }:
 
 with lib;
@@ -61,7 +61,7 @@ stdenv.mkDerivation rec {
     pkg-config
     python3
     shared-mime-info
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
diff --git a/pkgs/applications/virtualization/virtualbox/default.nix b/pkgs/applications/virtualization/virtualbox/default.nix
index 314d8136b852..3a9179b89d06 100644
--- a/pkgs/applications/virtualization/virtualbox/default.nix
+++ b/pkgs/applications/virtualization/virtualbox/default.nix
@@ -5,6 +5,7 @@
 , alsa-lib, curl, libvpx, nettools, dbus, substituteAll, gsoap, zlib, xz
 , yasm, glslang
 , linuxPackages
+, nixosTests
 # If open-watcom-bin is not passed, VirtualBox will fall back to use
 # the shipped alternative sources (assembly).
 , open-watcom-bin
@@ -24,6 +25,9 @@
 # See https://github.com/cyberus-technology/virtualbox-kvm/issues/12
 assert enableKvm -> !enableHardening;
 
+# The web services use Java infrastructure.
+assert enableWebService -> javaBindings;
+
 with lib;
 
 let
@@ -118,11 +122,11 @@ in stdenv.mkDerivation {
      # we don't take any chances and only apply it if people actually want to use KVM support.
   ++ optional enableKvm (fetchpatch
     (let
-      patchVersion = "20240325";
+      patchVersion = "20240502";
     in {
       name = "virtualbox-${version}-kvm-dev-${patchVersion}.patch";
       url = "https://github.com/cyberus-technology/virtualbox-kvm/releases/download/dev-${patchVersion}/kvm-backend-${version}-dev-${patchVersion}.patch";
-      hash = "sha256-D1ua8X5Iyw/I89PtskiGdnGr4NhdFtI93ThltiOcu8w=";
+      hash = "sha256-KokIrrAoJutHzPg6e5YAJgDGs+nQoVjapmyn9kG5tV0=";
     }))
   ++ [
     ./qt-dependency-paths.patch
@@ -251,7 +255,7 @@ in stdenv.mkDerivation {
 
     mkdir -p "$out/share/virtualbox"
     cp -rv src/VBox/Main/UnattendedTemplates "$out/share/virtualbox"
-    ln -s "${virtualboxGuestAdditionsIso}/VBoxGuestAdditions_${version}.iso" "$out/share/virtualbox/VBoxGuestAdditions.iso"
+    ln -s "${virtualboxGuestAdditionsIso}" "$out/share/virtualbox/VBoxGuestAdditions.iso"
   '';
 
   preFixup = optionalString (!headless) ''
@@ -265,6 +269,7 @@ in stdenv.mkDerivation {
 
   passthru = {
     inherit extensionPack; # for inclusion in profile to prevent gc
+    tests = nixosTests.virtualbox;
     updateScript = ./update.sh;
   };
 
diff --git a/pkgs/applications/virtualization/virtualbox/guest-additions-iso/default.nix b/pkgs/applications/virtualization/virtualbox/guest-additions-iso/default.nix
index d2f9bc62ba18..cd2f58afc92a 100644
--- a/pkgs/applications/virtualization/virtualbox/guest-additions-iso/default.nix
+++ b/pkgs/applications/virtualization/virtualbox/guest-additions-iso/default.nix
@@ -1,22 +1,11 @@
-{ stdenv, fetchurl, lib, virtualbox}:
+{ fetchurl, lib, virtualbox}:
 
 let
   inherit (virtualbox) version;
 in
-stdenv.mkDerivation rec {
-  pname = "VirtualBox-GuestAdditions-iso";
-  inherit version;
-
-  src = fetchurl {
-    url = "http://download.virtualbox.org/virtualbox/${version}/VBoxGuestAdditions_${version}.iso";
-    sha256 = "0efbcb9bf4722cb19292ae00eba29587432e918d3b1f70905deb70f7cf78e8ce";
-  };
-
-  buildCommand = ''
-    mkdir -p $out
-    cp $src $out/
-  '';
-
+fetchurl {
+  url = "http://download.virtualbox.org/virtualbox/${version}/VBoxGuestAdditions_${version}.iso";
+  sha256 = "0efbcb9bf4722cb19292ae00eba29587432e918d3b1f70905deb70f7cf78e8ce";
   meta = {
     description = "Guest additions ISO for VirtualBox";
     longDescription = ''
diff --git a/pkgs/applications/window-managers/dk/default.nix b/pkgs/applications/window-managers/dk/default.nix
index 25fcad2ba0b6..631e7b85d18e 100644
--- a/pkgs/applications/window-managers/dk/default.nix
+++ b/pkgs/applications/window-managers/dk/default.nix
@@ -9,13 +9,13 @@
 
 stdenv.mkDerivation (finalAttrs: {
   pname = "dk";
-  version = "2.1";
+  version = "2.2";
 
   src = fetchFromBitbucket {
     owner = "natemaia";
     repo = "dk";
     rev = "v${finalAttrs.version}";
-    hash = "sha256-bUt4Se4Gu7CZEdv1/VpU92ncq2MBKXG7T4Wpa/2rocI=";
+    hash = "sha256-u1fZTcfGLwKFeRADU55MFYDvtSOaOg5qtWB90xYpVuY=";
   };
 
   buildInputs = [
diff --git a/pkgs/applications/window-managers/hyprwm/hyprland/default.nix b/pkgs/applications/window-managers/hyprwm/hyprland/default.nix
index 4d50b39ebeda..3a2920785fcd 100644
--- a/pkgs/applications/window-managers/hyprwm/hyprland/default.nix
+++ b/pkgs/applications/window-managers/hyprwm/hyprland/default.nix
@@ -4,6 +4,7 @@
 , pkg-config
 , makeWrapper
 , meson
+, cmake
 , ninja
 , binutils
 , cairo
@@ -21,15 +22,19 @@
 , mesa
 , pango
 , pciutils
+, python3
 , systemd
 , tomlplusplus
-, udis86-hyprland
 , wayland
 , wayland-protocols
 , wayland-scanner
-, wlroots-hyprland
 , xcbutilwm
 , xwayland
+, hwdata
+, seatd
+, libdisplay-info
+, libliftoff
+, xorg
 , debug ? false
 , enableXWayland ? true
 , legacyRenderer ? false
@@ -44,24 +49,17 @@ assert lib.assertMsg (!nvidiaPatches) "The option `nvidiaPatches` has been remov
 assert lib.assertMsg (!enableNvidiaPatches) "The option `enableNvidiaPatches` has been removed.";
 assert lib.assertMsg (!hidpiXWayland) "The option `hidpiXWayland` has been removed. Please refer https://wiki.hyprland.org/Configuring/XWayland";
 
-let
-  wlr = wlroots-hyprland.override { inherit enableXWayland; };
-in
 stdenv.mkDerivation (finalAttrs: {
   pname = "hyprland" + lib.optionalString debug "-debug";
   version = "0.39.1";
   src = fetchFromGitHub {
     owner = "hyprwm";
     repo = finalAttrs.pname;
+    fetchSubmodules = true;
     rev = "v${finalAttrs.version}";
-    hash = "sha256-Urb/njWiHYUudXpmK8EKl9Z58esTIG0PxXw5LuM2r5g=";
+    hash = "sha256-7L5rqQRYH2iyyP5g3IdXJSlATfgnKhuYMf65E48MVKw=";
   };
 
-  patches = [
-    # make meson use the provided dependencies instead of the git submodules
-    "${finalAttrs.src}/nix/patches/meson-build.patch"
-  ];
-
   postPatch = ''
     # Fix hardcoded paths to /usr installation
     sed -i "s#/usr#$out#" src/render/OpenGL.cpp
@@ -69,12 +67,12 @@ stdenv.mkDerivation (finalAttrs: {
     # Generate version.h
     cp src/version.h.in src/version.h
     substituteInPlace src/version.h \
-      --replace "@HASH@" '${finalAttrs.src.rev}' \
-      --replace "@BRANCH@" "" \
-      --replace "@MESSAGE@" "" \
-      --replace "@DATE@" "2024-04-16" \
-      --replace "@TAG@" "" \
-      --replace "@DIRTY@" ""
+      --replace-fail "@HASH@" '${finalAttrs.src.rev}' \
+      --replace-fail "@BRANCH@" "" \
+      --replace-fail "@MESSAGE@" "" \
+      --replace-fail "@DATE@" "2024-04-16" \
+      --replace-fail "@TAG@" "" \
+      --replace-fail "@DIRTY@" ""
   '';
 
   depsBuildBuild = [
@@ -83,12 +81,15 @@ stdenv.mkDerivation (finalAttrs: {
   ];
 
   nativeBuildInputs = [
+    hwdata
     jq
     makeWrapper
     meson
     ninja
     pkg-config
     wayland-scanner
+    cmake # for subproject udis86
+    python3
   ];
 
   outputs = [
@@ -97,36 +98,39 @@ stdenv.mkDerivation (finalAttrs: {
     "dev"
   ];
 
-  buildInputs =
-    wlr.buildInputs ++ [
-      cairo
-      git
-      hyprcursor
-      hyprland-protocols
-      hyprlang
-      libGL
-      libdrm
-      libinput
-      libxkbcommon
-      mesa
-      udis86-hyprland
-      wayland
-      wayland-protocols
-      pango
-      pciutils
-      tomlplusplus
-      wlr
-    ]
-    ++ lib.optionals stdenv.hostPlatform.isMusl [ libexecinfo ]
-    ++ lib.optionals enableXWayland [ libxcb xcbutilwm xwayland ]
-    ++ lib.optionals withSystemd [ systemd ];
+  buildInputs = [
+    cairo
+    git
+    hyprcursor
+    hyprland-protocols
+    hyprlang
+    libGL
+    libdrm
+    libinput
+    libxkbcommon
+    mesa
+    wayland
+    wayland-protocols
+    pango
+    pciutils
+    tomlplusplus
+    # for subproject wlroots-hyprland
+    seatd
+    libliftoff
+    libdisplay-info
+    xorg.xcbutilerrors
+    xorg.xcbutilrenderutil
+  ]
+  ++ lib.optionals stdenv.hostPlatform.isMusl [ libexecinfo ]
+  ++ lib.optionals enableXWayland [ libxcb xcbutilwm xwayland ]
+  ++ lib.optionals withSystemd [ systemd ];
 
   mesonBuildType =
     if debug
     then "debug"
     else "release";
 
-  mesonAutoFeatures = "disabled";
+  mesonAutoFeatures = "enabled";
 
   mesonFlags = [
     (lib.mesonEnable "xwayland" enableXWayland)
@@ -135,7 +139,6 @@ stdenv.mkDerivation (finalAttrs: {
   ];
 
   postInstall = ''
-    ln -s ${wlr}/include/wlr $dev/include/hyprland/wlroots
     ${lib.optionalString wrapRuntimeDeps ''
       wrapProgram $out/bin/Hyprland \
         --suffix PATH : ${lib.makeBinPath [binutils pciutils stdenv.cc]}
@@ -150,6 +153,6 @@ stdenv.mkDerivation (finalAttrs: {
     license = licenses.bsd3;
     maintainers = with maintainers; [ wozeparrot fufexan ];
     mainProgram = "Hyprland";
-    platforms = wlr.meta.platforms;
+    platforms = lib.platforms.linux;
   };
 })
diff --git a/pkgs/applications/window-managers/hyprwm/hyprland/udis86.nix b/pkgs/applications/window-managers/hyprwm/hyprland/udis86.nix
deleted file mode 100644
index b72083c4560a..000000000000
--- a/pkgs/applications/window-managers/hyprwm/hyprland/udis86.nix
+++ /dev/null
@@ -1,15 +0,0 @@
-{ udis86
-, fetchFromGitHub
-}:
-udis86.overrideAttrs (old: {
-  version = "unstable-2022-10-13";
-
-  src = fetchFromGitHub {
-    owner = "canihavesomecoffee";
-    repo = "udis86";
-    rev = "5336633af70f3917760a6d441ff02d93477b0c86";
-    hash = "sha256-HifdUQPGsKQKQprByeIznvRLONdOXeolOsU5nkwIv3g=";
-  };
-
-  patches = [ ];
-})
diff --git a/pkgs/applications/window-managers/hyprwm/hyprland/wlroots.nix b/pkgs/applications/window-managers/hyprwm/hyprland/wlroots.nix
deleted file mode 100644
index b2f4a52126dc..000000000000
--- a/pkgs/applications/window-managers/hyprwm/hyprland/wlroots.nix
+++ /dev/null
@@ -1,20 +0,0 @@
-{ fetchFromGitHub
-, wlroots
-, enableXWayland ? true
-}:
-wlroots.overrideAttrs
-  (old: {
-    inherit enableXWayland;
-    version = "0.18.0-dev";
-
-    src = fetchFromGitHub {
-      owner = "hyprwm";
-      repo = "wlroots-hyprland";
-      rev = "611a4f24cd2384378f6e500253983107c6656c64";
-      hash = "sha256-vPeZCY+sdiGsz4fl3AVVujfyZyQBz6+vZdkUE4hQ+HI=";
-    };
-
-    patches = [ ]; # don't inherit old.patches
-
-    pname = "${old.pname}-hyprland";
-  })
diff --git a/pkgs/applications/window-managers/i3/lock-fancy.nix b/pkgs/applications/window-managers/i3/lock-fancy.nix
index f3963b43b54a..a66e52bc40b0 100644
--- a/pkgs/applications/window-managers/i3/lock-fancy.nix
+++ b/pkgs/applications/window-managers/i3/lock-fancy.nix
@@ -1,54 +1,67 @@
-{ lib
-, stdenv
+{ coreutils
 , fetchFromGitHub
-, coreutils
-, scrot
-, imagemagick
+, fontconfig
 , gawk
-, i3lock-color
 , getopt
-, fontconfig
+, i3lock-color
+, imagemagick
+, installShellFiles
+, lib
+, makeWrapper
+, scrot
+, stdenv
+
+, screenshotCommand ? ""
 }:
 
-stdenv.mkDerivation rec {
+stdenv.mkDerivation {
   pname = "i3lock-fancy";
-  version = "unstable-2018-11-25";
+  version = "unstable-2023-04-28";
 
   src = fetchFromGitHub {
     owner = "meskarune";
     repo = "i3lock-fancy";
-    rev = "7accfb2aa2f918d1a3ab975b860df1693d20a81a";
-    sha256 = "00lqsvz1knb8iqy8lnkn3sf4c2c4nzb0smky63qf48m8za5aw9b1";
+    rev = "55f5c30071403faf5ae4363a54b6d1f63876d5ce";
+    hash = "sha256-ISymKlxLE4/ChDiyjnavFx4T5hEVI62cCxYLWrWiHrg=";
   };
 
+  nativeBuildInputs = [
+    makeWrapper
+    installShellFiles
+  ];
+
   postPatch = ''
     sed -i i3lock-fancy \
-      -e "s|mktemp|${coreutils}/bin/mktemp|" \
-      -e "s|'rm -f |'${coreutils}/bin/rm -f |" \
-      -e "s|scrot -z |${scrot}/bin/scrot -z |" \
-      -e "s|convert |${imagemagick.out}/bin/convert |" \
-      -e "s|awk -F|${gawk}/bin/awk -F|" \
-      -e "s| awk | ${gawk}/bin/awk |" \
-      -e "s|i3lock -i |${i3lock-color}/bin/i3lock-color -i |" \
       -e 's|icon="/usr/share/i3lock-fancy/icons/lockdark.png"|icon="'$out'/share/i3lock-fancy/icons/lockdark.png"|' \
-      -e 's|icon="/usr/share/i3lock-fancy/icons/lock.png"|icon="'$out'/share/i3lock-fancy/icons/lock.png"|' \
-      -e "s|getopt |${getopt}/bin/getopt |" \
-      -e "s|fc-match |${fontconfig.bin}/bin/fc-match |" \
-      -e "s|shot=(import -window root)|shot=(${scrot}/bin/scrot -z -o)|"
+      -e 's|icon="/usr/share/i3lock-fancy/icons/lock.png"|icon="'$out'/share/i3lock-fancy/icons/lock.png"|'
     rm Makefile
+  '' + lib.optionalString (screenshotCommand != "") ''
+    sed -i i3lock-fancy \
+      -e "s|shot=(import -silent -window root)|shot=(${screenshotCommand})|";
   '';
 
   installPhase = ''
+    runHook preInstall
+
     mkdir -p $out/bin $out/share/i3lock-fancy/icons
     cp i3lock-fancy $out/bin/i3lock-fancy
     ln -s $out/bin/i3lock-fancy $out/bin/i3lock
     cp icons/lock*.png $out/share/i3lock-fancy/icons
+    installManPage doc/i3lock-fancy.1
+
+    runHook postInstall
+  '';
+
+  postInstall = ''
+    wrapProgram $out/bin/i3lock-fancy \
+      --prefix PATH : ${lib.makeBinPath [ coreutils fontconfig gawk getopt i3lock-color imagemagick scrot ]}
   '';
 
   meta = with lib; {
     description = "i3lock is a bash script that takes a screenshot of the desktop, blurs the background and adds a lock icon and text";
     homepage = "https://github.com/meskarune/i3lock-fancy";
-    maintainers = with maintainers; [ ];
+    maintainers = [ maintainers.reedrw ];
+    mainProgram = "i3lock-fancy";
     license = licenses.mit;
     platforms = platforms.linux;
   };
diff --git a/pkgs/applications/window-managers/jay/default.nix b/pkgs/applications/window-managers/jay/default.nix
index 6b7951c14c37..97be1c5fe293 100644
--- a/pkgs/applications/window-managers/jay/default.nix
+++ b/pkgs/applications/window-managers/jay/default.nix
@@ -15,16 +15,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "jay";
-  version = "1.1.0";
+  version = "1.2.0";
 
   src = fetchFromGitHub {
     owner = "mahkoh";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-9fWwVUqeYADt33HGaJRRFmM20WM7qRWbNGpt3rk9xQM=";
+    sha256 = "sha256-cfX9KcXbBRIaYrR7c+aIQrg+mvLJIM1sEzJ0J7wshMU=";
   };
 
-  cargoSha256 = "sha256-oPGY/rVx94BkWgKkwwyDjfASMyGGU32R5IZuNjOv+EM=";
+  cargoHash = "sha256-htAXhjCBOb8qTAAKdFqTaTSefJJTFlvEBYveOokyWjs=";
 
   SHADERC_LIB_DIR = "${lib.getLib shaderc}/lib";
 
diff --git a/pkgs/applications/window-managers/miriway/default.nix b/pkgs/applications/window-managers/miriway/default.nix
index 8575c10a6ad6..b56127cc2948 100644
--- a/pkgs/applications/window-managers/miriway/default.nix
+++ b/pkgs/applications/window-managers/miriway/default.nix
@@ -11,13 +11,13 @@
 
 stdenv.mkDerivation (finalAttrs: {
   pname = "miriway";
-  version = "0-unstable-2024-04-25";
+  version = "0-unstable-2024-04-30";
 
   src = fetchFromGitHub {
     owner = "Miriway";
     repo = "Miriway";
-    rev = "a3f074be78e77bab378f064452420923b6f9c331";
-    hash = "sha256-D+ClEJL/iCLARaTXe5QpI/uHE61Lajzz5A5EphgHCl8=";
+    rev = "726ef446c89a75510311638a4892e97ad9e0fa4e";
+    hash = "sha256-7OoCoZ4IHXYI73W93P9MzVGYFv/+MDcbbhPdJY9lD2M=";
   };
 
   strictDeps = true;
diff --git a/pkgs/applications/window-managers/sommelier/default.nix b/pkgs/applications/window-managers/sommelier/default.nix
index f0b940776128..6c3a04915fe6 100644
--- a/pkgs/applications/window-managers/sommelier/default.nix
+++ b/pkgs/applications/window-managers/sommelier/default.nix
@@ -5,13 +5,13 @@
 
 stdenv.mkDerivation {
   pname = "sommelier";
-  version = "123.0";
+  version = "124.0";
 
   src = fetchzip rec {
     url = "https://chromium.googlesource.com/chromiumos/platform2/+archive/${passthru.rev}/vm_tools/sommelier.tar.gz";
-    passthru.rev = "1abc91204f35cde76db37853ff3643c5cdb607e6";
+    passthru.rev = "0ced021a6b362f35592cca5a3915d0ed784615f2";
     stripRoot = false;
-    sha256 = "Wa30MU7iK1Y7pKNeC+FPFXDwDxFLWOZPG4jkm8cnWeg=";
+    sha256 = "zSiGhF4FhLUavC7YEOGGq4NE2hxK4YNXF3CpLptoZbM=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/applications/window-managers/wayfire/wcm.nix b/pkgs/applications/window-managers/wayfire/wcm.nix
index fec3b1bfc716..df1b1cfea9b8 100644
--- a/pkgs/applications/window-managers/wayfire/wcm.nix
+++ b/pkgs/applications/window-managers/wayfire/wcm.nix
@@ -4,7 +4,7 @@
 , meson
 , ninja
 , pkg-config
-, wrapGAppsHook
+, wrapGAppsHook3
 , wayfire
 , wf-shell
 , wayland-scanner
@@ -33,7 +33,7 @@ stdenv.mkDerivation (finalAttrs: {
     ninja
     pkg-config
     wayland-scanner
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
diff --git a/pkgs/build-support/appimage/default.nix b/pkgs/build-support/appimage/default.nix
index 95dc7ffd1cd6..0d44a5ab23e9 100644
--- a/pkgs/build-support/appimage/default.nix
+++ b/pkgs/build-support/appimage/default.nix
@@ -40,7 +40,7 @@ rec {
 
   wrapAppImage = args@{
     src,
-    extraPkgs,
+    extraPkgs ? pkgs: [ ],
     meta ? {},
     ...
   }: buildFHSEnv
diff --git a/pkgs/build-support/dlang/builddubpackage/default.nix b/pkgs/build-support/dlang/builddubpackage/default.nix
index 9295445b0f7c..31454d5cd69b 100644
--- a/pkgs/build-support/dlang/builddubpackage/default.nix
+++ b/pkgs/build-support/dlang/builddubpackage/default.nix
@@ -2,6 +2,7 @@
   lib,
   stdenv,
   fetchurl,
+  fetchgit,
   linkFarm,
   dub,
   ldc,
@@ -43,11 +44,27 @@ let
       };
     };
 
+  makeGitDep =
+    {
+      pname,
+      version,
+      repository,
+      sha256,
+    }:
+    {
+      inherit pname version;
+      src = fetchgit {
+        url = repository;
+        rev = version;
+        inherit sha256;
+      };
+    };
+
   lockJson = if lib.isPath dubLock then lib.importJSON dubLock else dubLock;
+  depsRaw = lib.mapAttrsToList (pname: args: { inherit pname; } // args) lockJson.dependencies;
 
-  lockedDeps = lib.mapAttrsToList (
-    pname: { version, sha256 }: makeDubDep { inherit pname version sha256; }
-  ) lockJson.dependencies;
+  dubDeps = map makeDubDep (lib.filter (args: !(args ? repository)) depsRaw);
+  gitDeps = map makeGitDep (lib.filter (args: args ? repository) depsRaw);
 
   # a directory with multiple single element registries
   # one big directory with all .zip files leads to version parsing errors
@@ -56,7 +73,7 @@ let
     map (dep: {
       name = "${dep.pname}/${dep.pname}-${dep.version}.zip";
       path = dep.src;
-    }) lockedDeps
+    }) dubDeps
   );
 
   combinedFlags = "--skip-registry=all --compiler=${lib.getExe compiler} ${toString dubFlags}";
@@ -79,12 +96,18 @@ stdenv.mkDerivation (
         runHook preConfigure
 
         export DUB_HOME="$NIX_BUILD_TOP/.dub"
-        mkdir -p $DUB_HOME
+        mkdir -p "$DUB_HOME"
 
-        # register dependencies
+        # register dub dependencies
         ${lib.concatMapStringsSep "\n" (dep: ''
           dub fetch ${dep.pname}@${dep.version} --cache=user --skip-registry=standard --registry=file://${dubRegistryBase}/${dep.pname}
-        '') lockedDeps}
+        '') dubDeps}
+
+        # register git dependencies
+        ${lib.concatMapStringsSep "\n" (dep: ''
+          mkdir -p "$DUB_HOME/packages/${dep.pname}/${dep.version}"
+          cp -r --no-preserve=all ${dep.src} "$DUB_HOME/packages/${dep.pname}/${dep.version}/${dep.pname}"
+        '') gitDeps}
 
         runHook postConfigure
       '';
diff --git a/pkgs/build-support/dlang/dub-to-nix/default.nix b/pkgs/build-support/dlang/dub-to-nix/default.nix
index 53a2e99c18df..87db7eed0933 100644
--- a/pkgs/build-support/dlang/dub-to-nix/default.nix
+++ b/pkgs/build-support/dlang/dub-to-nix/default.nix
@@ -4,8 +4,15 @@
   makeWrapper,
   python3,
   nix,
+  nix-prefetch-git,
 }:
 
+let
+  binPath = lib.makeBinPath [
+    nix
+    nix-prefetch-git
+  ];
+in
 runCommand "dub-to-nix"
   {
     nativeBuildInputs = [ makeWrapper ];
@@ -15,5 +22,5 @@ runCommand "dub-to-nix"
     install -Dm755 ${./dub-to-nix.py} "$out/bin/dub-to-nix"
     patchShebangs "$out/bin/dub-to-nix"
     wrapProgram "$out/bin/dub-to-nix" \
-        --prefix PATH : ${lib.makeBinPath [ nix ]}
+        --prefix PATH : ${binPath}
   ''
diff --git a/pkgs/build-support/dlang/dub-to-nix/dub-to-nix.py b/pkgs/build-support/dlang/dub-to-nix/dub-to-nix.py
index 48a9f241348a..fbb51960ad7b 100644
--- a/pkgs/build-support/dlang/dub-to-nix/dub-to-nix.py
+++ b/pkgs/build-support/dlang/dub-to-nix/dub-to-nix.py
@@ -4,10 +4,13 @@ import sys
 import json
 import os
 import subprocess
+import string
+
 
 def eprint(text: str):
     print(text, file=sys.stderr)
 
+
 if not os.path.exists("dub.selections.json"):
     eprint("The file `dub.selections.json` does not exist in the current working directory")
     eprint("run `dub upgrade --annotate` to generate it")
@@ -16,24 +19,53 @@ if not os.path.exists("dub.selections.json"):
 with open("dub.selections.json") as f:
     selectionsJson = json.load(f)
 
-versionDict: dict[str, str] = selectionsJson["versions"]
+depsDict: dict = selectionsJson["versions"]
+
+# For each dependency expand non-expanded version into a dict with a "version" key
+depsDict = {pname: (versionOrDepDict if isinstance(versionOrDepDict, dict) else {"version": versionOrDepDict}) for (pname, versionOrDepDict) in depsDict.items()}
+
+# Don't process path-type selections
+depsDict = {pname: depDict for (pname, depDict) in depsDict.items() if "path" not in depDict}
 
-for pname in versionDict:
-    version = versionDict[pname]
+# Pre-validate selections before trying to fetch
+for pname in depsDict:
+    depDict = depsDict[pname]
+    version = depDict["version"]
     if version.startswith("~"):
-        eprint(f'Package "{pname}" has a branch-type version "{version}", which doesn\'t point to a fixed version')
-        eprint("You can resolve it by manually changing the required version to a fixed one inside `dub.selections.json`")
-        eprint("When packaging, you might need to create a patch for `dub.sdl` or `dub.json` to accept the changed version")
+        eprint(f'Expected version of "{pname}" to be non-branch type')
+        eprint(f'Found: "{version}"')
+        eprint("Please specify a non-branch version inside `dub.selections.json`")
+        eprint("When packaging, you might also need to patch the version value in the appropriate places (`dub.selections.json`, dub.sdl`, `dub.json`)")
         sys.exit(1)
+    if "repository" in depDict:
+        repository = depDict["repository"]
+        if not repository.startswith("git+"):
+            eprint(f'Expected repository field of "{pname}" to begin with "git+"')
+            eprint(f'Found: "{repository}"')
+            sys.exit(1)
+        if (len(version) < 7 or len(version) > 40 or not all(c in string.hexdigits for c in version)):
+            eprint(f'Expected version field of "{pname}" to begin be a valid git revision')
+            eprint(f'Found: "{version}"')
+            sys.exit(1)
 
-lockedDependenciesDict: dict[str, dict[str, str]] = {}
+lockedDepsDict: dict[str, dict[str, str]] = {}
 
-for pname in versionDict:
-    version = versionDict[pname]
-    eprint(f"Fetching {pname}@{version}")
-    url = f"https://code.dlang.org/packages/{pname}/{version}.zip"
-    command = ["nix-prefetch-url", "--type", "sha256", url]
-    sha256 = subprocess.run(command, check=True, text=True, stdout=subprocess.PIPE, stderr=subprocess.DEVNULL).stdout.rstrip()
-    lockedDependenciesDict[pname] = {"version": version, "sha256": sha256}
+for pname in depsDict:
+    depDict = depsDict[pname]
+    version = depDict["version"]
+    if "repository" in depDict:
+        repository = depDict["repository"]
+        strippedRepo = repository[4:]
+        eprint(f"Fetching {pname}@{version} ({strippedRepo})")
+        command = ["nix-prefetch-git", strippedRepo, version]
+        rawRes = subprocess.run(command, check=True, text=True, stdout=subprocess.PIPE, stderr=subprocess.DEVNULL).stdout
+        sha256 = json.loads(rawRes)["sha256"]
+        lockedDepsDict[pname] = {"version": version, "repository": repository, "sha256": sha256}
+    else:
+        eprint(f"Fetching {pname}@{version}")
+        url = f"https://code.dlang.org/packages/{pname}/{version}.zip"
+        command = ["nix-prefetch-url", "--type", "sha256", url]
+        sha256 = subprocess.run(command, check=True, text=True, stdout=subprocess.PIPE, stderr=subprocess.DEVNULL).stdout.rstrip()
+        lockedDepsDict[pname] = {"version": version, "sha256": sha256}
 
-print(json.dumps({"dependencies": lockedDependenciesDict}, indent=2))
+print(json.dumps({"dependencies": lockedDepsDict}, indent=2))
diff --git a/pkgs/build-support/dotnet/build-dotnet-module/default.nix b/pkgs/build-support/dotnet/build-dotnet-module/default.nix
index 15a753df0772..4548616c7d80 100644
--- a/pkgs/build-support/dotnet/build-dotnet-module/default.nix
+++ b/pkgs/build-support/dotnet/build-dotnet-module/default.nix
@@ -185,6 +185,10 @@ stdenvNoCC.mkDerivation (args // {
 
   inherit selfContainedBuild useAppHost useDotnetFromEnv;
 
+  # propagate the runtime sandbox profile since the contents apply to published
+  # executables
+  propagatedSandboxProfile = toString dotnet-runtime.__propagatedSandboxProfile;
+
   passthru = {
     inherit nuget-source;
   } // lib.optionalAttrs (!lib.isDerivation nugetDeps) {
@@ -316,8 +320,4 @@ stdenvNoCC.mkDerivation (args // {
   } // args.passthru or { };
 
   meta = (args.meta or { }) // { inherit platforms; };
-}
-  # ICU tries to unconditionally load files from /usr/share/icu on Darwin, which makes builds fail
-  # in the sandbox, so disable ICU on Darwin. This, as far as I know, shouldn't cause any built packages
-  # to behave differently, just the dotnet build tool.
-  // lib.optionalAttrs stdenvNoCC.isDarwin { DOTNET_SYSTEM_GLOBALIZATION_INVARIANT = 1; })
+})
diff --git a/pkgs/build-support/fetchgit/nix-prefetch-git b/pkgs/build-support/fetchgit/nix-prefetch-git
index 7ac3dec91f7f..0f41cbd6a265 100755
--- a/pkgs/build-support/fetchgit/nix-prefetch-git
+++ b/pkgs/build-support/fetchgit/nix-prefetch-git
@@ -166,7 +166,7 @@ checkout_hash(){
     clean_git fetch -t ${builder:+--progress} origin || return 1
 
     local object_type=$(git cat-file -t "$hash")
-    if [[ "$object_type" == "commit" ]]; then
+    if [[ "$object_type" == "commit" || "$object_type" == "tag" ]]; then
         clean_git checkout -b "$branchName" "$hash" || return 1
     elif [[ "$object_type" == "tree" ]]; then
         clean_git config user.email "nix-prefetch-git@localhost"
diff --git a/pkgs/build-support/fetchgit/tests.nix b/pkgs/build-support/fetchgit/tests.nix
index 23e5fa299010..f3fcd9a578de 100644
--- a/pkgs/build-support/fetchgit/tests.nix
+++ b/pkgs/build-support/fetchgit/tests.nix
@@ -72,4 +72,11 @@
     leaveDotGit = true;
     fetchSubmodules = true;
   };
+
+  dumb-http-signed-tag = testers.invalidateFetcherByDrvHash fetchgit {
+    name = "dumb-http-signed-tag-source";
+    url = "https://git.scottworley.com/pub/git/pinch";
+    rev = "v3.0.14";
+    sha256 = "sha256-bd0Lx75Gd1pcBJtwz5WGki7XoYSpqhinCT3a77wpY2c=";
+  };
 }
diff --git a/pkgs/build-support/flutter/default.nix b/pkgs/build-support/flutter/default.nix
index 5d7cd7d984c1..2af03d5f98e3 100644
--- a/pkgs/build-support/flutter/default.nix
+++ b/pkgs/build-support/flutter/default.nix
@@ -2,7 +2,7 @@
 , callPackage
 , runCommand
 , makeWrapper
-, wrapGAppsHook
+, wrapGAppsHook3
 , buildDartApplication
 , cacert
 , glib
@@ -86,7 +86,7 @@ let
       outputs = universal.outputs or [ ] ++ [ "debug" ];
 
       nativeBuildInputs = (universal.nativeBuildInputs or [ ]) ++ [
-        wrapGAppsHook
+        wrapGAppsHook3
 
         # Flutter requires pkg-config for Linux desktop support, and many plugins
         # attempt to use it.
diff --git a/pkgs/build-support/go/module.nix b/pkgs/build-support/go/module.nix
index 6f568c0eb4f9..bc28fbf6fc42 100644
--- a/pkgs/build-support/go/module.nix
+++ b/pkgs/build-support/go/module.nix
@@ -163,8 +163,10 @@ let
     inherit (go) GOOS GOARCH;
 
     GOFLAGS = GOFLAGS
-      ++ lib.optional (!proxyVendor) "-mod=vendor"
-      ++ lib.optional (!allowGoReference) "-trimpath";
+      ++ lib.warnIf (lib.any (lib.hasPrefix "-mod=") GOFLAGS) "use `proxyVendor` to control Go module/vendor behavior instead of setting `-mod=` in GOFLAGS"
+        (lib.optional (!proxyVendor) "-mod=vendor")
+      ++ lib.warnIf (builtins.elem "-trimpath" GOFLAGS) "`-trimpath` is added by default to GOFLAGS by buildGoModule when allowGoReference isn't set to true"
+        (lib.optional (!allowGoReference) "-trimpath");
     inherit CGO_ENABLED enableParallelBuilding GO111MODULE GOTOOLCHAIN;
 
     # If not set to an explicit value, set the buildid empty for reproducibility.
@@ -196,7 +198,12 @@ let
       runHook postConfigure
     '');
 
-    buildPhase = args.buildPhase or (''
+    buildPhase = args.buildPhase or (
+      lib.warnIf (buildFlags != "" || buildFlagsArray != "")
+        "`buildFlags`/`buildFlagsArray` are deprecated and will be removed in the 24.11 release. Use the `ldflags` and/or `tags` attributes instead of `buildFlags`/`buildFlagsArray`"
+      lib.warnIf (builtins.elem "-buildid=" ldflags)
+        "`-buildid=` is set by default as ldflag by buildGoModule"
+    ''
       runHook preBuild
 
       exclude='\(/_\|examples\|Godeps\|testdata'
@@ -313,9 +320,4 @@ let
     } // meta;
   });
 in
-lib.warnIf (buildFlags != "" || buildFlagsArray != "")
-  "Use the `ldflags` and/or `tags` attributes instead of `buildFlags`/`buildFlagsArray`"
-lib.warnIf (builtins.elem "-buildid=" ldflags) "`-buildid=` is set by default as ldflag by buildGoModule"
-lib.warnIf (builtins.elem "-trimpath" GOFLAGS) "`-trimpath` is added by default to GOFLAGS by buildGoModule when allowGoReference isn't set to true"
-lib.warnIf (lib.any (lib.hasPrefix "-mod=") GOFLAGS) "use `proxyVendor` to control Go module/vendor behavior instead of setting `-mod=` in GOFLAGS"
-  package
+package
diff --git a/pkgs/build-support/go/package.nix b/pkgs/build-support/go/package.nix
index 94a459c267f3..58a242a2535c 100644
--- a/pkgs/build-support/go/package.nix
+++ b/pkgs/build-support/go/package.nix
@@ -286,7 +286,7 @@ let
   });
 in
 lib.warnIf (buildFlags != "" || buildFlagsArray != "")
-  "Use the `ldflags` and/or `tags` attributes instead of `buildFlags`/`buildFlagsArray`"
+  "`buildFlags`/`buildFlagsArray` are deprecated and will be removed in the 24.11 release. Use the `ldflags` and/or `tags` attributes instead"
 lib.warnIf (builtins.elem "-buildid=" ldflags) "`-buildid=` is set by default as ldflag by buildGoModule"
 lib.warnIf (builtins.elem "-trimpath" GOFLAGS) "`-trimpath` is added by default to GOFLAGS by buildGoModule when allowGoReference isn't set to true"
   package
diff --git a/pkgs/build-support/kernel/compress-firmware-xz.nix b/pkgs/build-support/kernel/compress-firmware-xz.nix
deleted file mode 100644
index cb9ce7a71338..000000000000
--- a/pkgs/build-support/kernel/compress-firmware-xz.nix
+++ /dev/null
@@ -1,29 +0,0 @@
-{ runCommand, lib }:
-
-firmware:
-
-let
-  args = {
-    allowedRequisites = [];
-  } // lib.optionalAttrs (firmware ? meta) { inherit (firmware) meta; };
-in
-
-runCommand "${firmware.name}-xz" args ''
-  mkdir -p $out/lib
-  (cd ${firmware} && find lib/firmware -type d -print0) |
-      (cd $out && xargs -0 mkdir -v --)
-  (cd ${firmware} && find lib/firmware -type f -print0) |
-      (cd $out && xargs -0rtP "$NIX_BUILD_CORES" -n1 \
-          sh -c 'xz -9c -T1 -C crc32 --lzma2=dict=2MiB "${firmware}/$1" > "$1.xz"' --)
-  (cd ${firmware} && find lib/firmware -type l) | while read link; do
-      target="$(readlink "${firmware}/$link")"
-      if [ -f "${firmware}/$link" ]; then
-        ln -vs -- "''${target/^${firmware}/$out}.xz" "$out/$link.xz"
-      else
-        ln -vs -- "''${target/^${firmware}/$out}" "$out/$link"
-      fi
-  done
-
-  echo "Checking for broken symlinks:"
-  find -L $out -type l -print -execdir false -- '{}' '+'
-''
diff --git a/pkgs/build-support/kernel/compress-firmware.nix b/pkgs/build-support/kernel/compress-firmware.nix
new file mode 100644
index 000000000000..0949036d5127
--- /dev/null
+++ b/pkgs/build-support/kernel/compress-firmware.nix
@@ -0,0 +1,43 @@
+{ runCommand, lib, type ? "zstd", zstd }:
+
+firmware:
+
+let
+  compressor = {
+    xz = {
+      ext = "xz";
+      nativeBuildInputs = [ ];
+      cmd = file: target: ''xz -9c -T1 -C crc32 --lzma2=dict=2MiB "${file}" > "${target}"'';
+    };
+    zstd = {
+      ext = "zst";
+      nativeBuildInputs = [ zstd ];
+      cmd = file: target: ''zstd -T1 -19 --long --check -f "${file}" -o "${target}"'';
+    };
+  }.${type} or (throw "Unsupported compressor type for firmware.");
+
+  args = {
+    allowedRequisites = [];
+    inherit (compressor) nativeBuildInputs;
+  } // lib.optionalAttrs (firmware ? meta) { inherit (firmware) meta; };
+in
+
+runCommand "${firmware.name}-${type}" args ''
+  mkdir -p $out/lib
+  (cd ${firmware} && find lib/firmware -type d -print0) |
+      (cd $out && xargs -0 mkdir -v --)
+  (cd ${firmware} && find lib/firmware -type f -print0) |
+      (cd $out && xargs -0rtP "$NIX_BUILD_CORES" -n1 \
+          sh -c '${compressor.cmd "${firmware}/$1" "$1.${compressor.ext}"}' --)
+  (cd ${firmware} && find lib/firmware -type l) | while read link; do
+      target="$(readlink "${firmware}/$link")"
+      if [ -f "${firmware}/$link" ]; then
+        ln -vs -- "''${target/^${firmware}/$out}.${compressor.ext}" "$out/$link.${compressor.ext}"
+      else
+        ln -vs -- "''${target/^${firmware}/$out}" "$out/$link"
+      fi
+  done
+
+  echo "Checking for broken symlinks:"
+  find -L $out -type l -print -execdir false -- '{}' '+'
+''
diff --git a/pkgs/build-support/kernel/modules-closure.sh b/pkgs/build-support/kernel/modules-closure.sh
index 5f61bac751af..06eb5b0d0de1 100644
--- a/pkgs/build-support/kernel/modules-closure.sh
+++ b/pkgs/build-support/kernel/modules-closure.sh
@@ -80,7 +80,7 @@ for module in $(< ~-/closure); do
     # of its output.
     modinfo -b $kernel --set-version "$version" -F firmware $module | grep -v '^name:' | while read -r i; do
         echo "firmware for $module: $i"
-        for name in "$i" "$i.xz" ""; do
+        for name in "$i" "$i.xz" "$i.zst" ""; do
             [ -z "$name" ] && echo "WARNING: missing firmware $i for module $module"
             if cp -v --parents --no-preserve=mode lib/firmware/$name "$out" 2>/dev/null; then
                 break
diff --git a/pkgs/build-support/lib/meson.nix b/pkgs/build-support/lib/meson.nix
index 456c10fcb8ee..9ffc5b8c1710 100644
--- a/pkgs/build-support/lib/meson.nix
+++ b/pkgs/build-support/lib/meson.nix
@@ -23,6 +23,10 @@ let
     [binaries]
     llvm-config = 'llvm-config-native'
     rust = ['rustc', '--target', '${stdenv.targetPlatform.rust.rustcTargetSpec}']
+    # Meson refuses to consider any CMake binary during cross compilation if it's
+    # not explicitly specified here, in the cross file.
+    # https://github.com/mesonbuild/meson/blob/0ed78cf6fa6d87c0738f67ae43525e661b50a8a2/mesonbuild/cmake/executor.py#L72
+    cmake = 'cmake'
   '';
 
   crossFlags = optionals (stdenv.hostPlatform != stdenv.buildPlatform) [ "--cross-file=${crossFile}" ];
diff --git a/pkgs/build-support/php/build-composer-project.nix b/pkgs/build-support/php/build-composer-project.nix
deleted file mode 100644
index 80c63bcde71b..000000000000
--- a/pkgs/build-support/php/build-composer-project.nix
+++ /dev/null
@@ -1,85 +0,0 @@
-{ callPackage, stdenvNoCC, lib, writeTextDir, php, makeBinaryWrapper, fetchFromGitHub, fetchurl }:
-
-let
-  buildComposerProjectOverride = finalAttrs: previousAttrs:
-
-    let
-      phpDrv = finalAttrs.php or php;
-      composer = finalAttrs.composer or phpDrv.packages.composer;
-      composer-local-repo-plugin = callPackage ./pkgs/composer-local-repo-plugin.nix { };
-    in
-    {
-      composerLock = previousAttrs.composerLock or null;
-      composerNoDev = previousAttrs.composerNoDev or true;
-      composerNoPlugins = previousAttrs.composerNoPlugins or true;
-      composerNoScripts = previousAttrs.composerNoScripts or true;
-      composerStrictValidation = previousAttrs.composerStrictValidation or true;
-
-      nativeBuildInputs = (previousAttrs.nativeBuildInputs or [ ]) ++ [
-        composer
-        composer-local-repo-plugin
-        phpDrv
-        phpDrv.composerHooks.composerInstallHook
-      ];
-
-      buildInputs = (previousAttrs.buildInputs or [ ]) ++ [
-        phpDrv
-      ];
-
-      patches = previousAttrs.patches or [ ];
-      strictDeps = previousAttrs.strictDeps or true;
-
-      # Should we keep these empty phases?
-      configurePhase = previousAttrs.configurePhase or ''
-        runHook preConfigure
-
-        runHook postConfigure
-      '';
-
-      buildPhase = previousAttrs.buildPhase or ''
-        runHook preBuild
-
-        runHook postBuild
-      '';
-
-      doCheck = previousAttrs.doCheck or true;
-      checkPhase = previousAttrs.checkPhase or ''
-        runHook preCheck
-
-        runHook postCheck
-      '';
-
-      installPhase = previousAttrs.installPhase or ''
-        runHook preInstall
-
-        runHook postInstall
-      '';
-
-      doInstallCheck = previousAttrs.doInstallCheck or false;
-      installCheckPhase = previousAttrs.installCheckPhase or ''
-        runHook preInstallCheck
-
-        runHook postInstallCheck
-      '';
-
-      composerRepository = phpDrv.mkComposerRepository {
-        inherit composer composer-local-repo-plugin;
-        inherit (finalAttrs) patches pname src vendorHash version;
-
-        composerLock = previousAttrs.composerLock or null;
-        composerNoDev = previousAttrs.composerNoDev or true;
-        composerNoPlugins = previousAttrs.composerNoPlugins or true;
-        composerNoScripts = previousAttrs.composerNoScripts or true;
-        composerStrictValidation = previousAttrs.composerStrictValidation or true;
-      };
-
-      COMPOSER_CACHE_DIR="/dev/null";
-      COMPOSER_DISABLE_NETWORK="1";
-      COMPOSER_MIRROR_PATH_REPOS="1";
-
-      meta = previousAttrs.meta or { } // {
-        platforms = lib.platforms.all;
-      };
-    };
-in
-args: (stdenvNoCC.mkDerivation args).overrideAttrs buildComposerProjectOverride
diff --git a/pkgs/build-support/php/build-pecl.nix b/pkgs/build-support/php/build-pecl.nix
index 6f38a668f3a3..16913a85c63d 100644
--- a/pkgs/build-support/php/build-pecl.nix
+++ b/pkgs/build-support/php/build-pecl.nix
@@ -1,45 +1,69 @@
-{ stdenv, lib, php, autoreconfHook, fetchurl, re2c, nix-update-script }:
+{
+  stdenv,
+  lib,
+  php,
+  autoreconfHook,
+  fetchurl,
+  re2c,
+  nix-update-script,
+}:
 
-{ pname
-, version
-, internalDeps ? [ ]
-, peclDeps ? [ ]
-, buildInputs ? [ ]
-, nativeBuildInputs ? [ ]
-, postPhpize ? ""
-, makeFlags ? [ ]
-, src ? fetchurl ({
-    url = "https://pecl.php.net/get/${pname}-${version}.tgz";
-  } // lib.filterAttrs (attrName: _: lib.elem attrName [ "sha256" "hash" ]) args)
-, passthru ? { }
-, ...
+{
+  pname,
+  version,
+  internalDeps ? [ ],
+  peclDeps ? [ ],
+  buildInputs ? [ ],
+  nativeBuildInputs ? [ ],
+  postPhpize ? "",
+  makeFlags ? [ ],
+  src ? fetchurl (
+    {
+      url = "https://pecl.php.net/get/${pname}-${version}.tgz";
+    }
+    // lib.filterAttrs (
+      attrName: _:
+      lib.elem attrName [
+        "sha256"
+        "hash"
+      ]
+    ) args
+  ),
+  passthru ? { },
+  ...
 }@args:
 
-stdenv.mkDerivation (args // {
-  name = "php-${pname}-${version}";
-  extensionName = pname;
+stdenv.mkDerivation (
+  args
+  // {
+    name = "php-${pname}-${version}";
+    extensionName = pname;
 
-  inherit src;
+    inherit src;
 
-  nativeBuildInputs = [ autoreconfHook re2c ] ++ nativeBuildInputs;
-  buildInputs = [ php ] ++ peclDeps ++ buildInputs;
+    nativeBuildInputs = [
+      autoreconfHook
+      re2c
+    ] ++ nativeBuildInputs;
+    buildInputs = [ php ] ++ peclDeps ++ buildInputs;
 
-  makeFlags = [ "EXTENSION_DIR=$(out)/lib/php/extensions" ] ++ makeFlags;
+    makeFlags = [ "EXTENSION_DIR=$(out)/lib/php/extensions" ] ++ makeFlags;
 
-  autoreconfPhase = ''
-    phpize
-    ${postPhpize}
-    ${lib.concatMapStringsSep "\n"
-      (dep: "mkdir -p ext; ln -s ${dep.dev}/include ext/${dep.extensionName}")
-      internalDeps}
-  '';
-  checkPhase = "NO_INTERACTON=yes make test";
+    autoreconfPhase = ''
+      phpize
+      ${postPhpize}
+      ${lib.concatMapStringsSep "\n" (
+        dep: "mkdir -p ext; ln -s ${dep.dev}/include ext/${dep.extensionName}"
+      ) internalDeps}
+    '';
+    checkPhase = "NO_INTERACTON=yes make test";
 
-  passthru = passthru // {
-    # Thes flags were introduced for `nix-update` so that it can update
-    # PHP extensions correctly.
-    # See the corresponding PR: https://github.com/Mic92/nix-update/pull/123
-    isPhpExtension = true;
-    updateScript = nix-update-script {};
-  };
-})
+    passthru = passthru // {
+      # Thes flags were introduced for `nix-update` so that it can update
+      # PHP extensions correctly.
+      # See the corresponding PR: https://github.com/Mic92/nix-update/pull/123
+      isPhpExtension = true;
+      updateScript = nix-update-script { };
+    };
+  }
+)
diff --git a/pkgs/build-support/php/builders/default.nix b/pkgs/build-support/php/builders/default.nix
new file mode 100644
index 000000000000..209c834367d1
--- /dev/null
+++ b/pkgs/build-support/php/builders/default.nix
@@ -0,0 +1,8 @@
+{ callPackage, callPackages, ... }:
+{
+  v1 = {
+    buildComposerProject = callPackage ./v1/build-composer-project.nix { };
+    mkComposerRepository = callPackage ./v1/build-composer-repository.nix { };
+    composerHooks = callPackages ./v1/hooks { };
+  };
+}
diff --git a/pkgs/build-support/php/builders/v1/build-composer-project.nix b/pkgs/build-support/php/builders/v1/build-composer-project.nix
new file mode 100644
index 000000000000..7e24812d2e76
--- /dev/null
+++ b/pkgs/build-support/php/builders/v1/build-composer-project.nix
@@ -0,0 +1,111 @@
+{
+  callPackage,
+  nix-update-script,
+  stdenvNoCC,
+  lib,
+  php,
+}:
+
+let
+  buildComposerProjectOverride =
+    finalAttrs: previousAttrs:
+
+    let
+      phpDrv = finalAttrs.php or php;
+      composer = finalAttrs.composer or phpDrv.packages.composer;
+      composer-local-repo-plugin = callPackage ../../pkgs/composer-local-repo-plugin.nix { };
+    in
+    {
+      composerLock = previousAttrs.composerLock or null;
+      composerNoDev = previousAttrs.composerNoDev or true;
+      composerNoPlugins = previousAttrs.composerNoPlugins or true;
+      composerNoScripts = previousAttrs.composerNoScripts or true;
+      composerStrictValidation = previousAttrs.composerStrictValidation or true;
+
+      nativeBuildInputs = (previousAttrs.nativeBuildInputs or [ ]) ++ [
+        composer
+        composer-local-repo-plugin
+        phpDrv
+        phpDrv.composerHooks.composerInstallHook
+      ];
+
+      buildInputs = (previousAttrs.buildInputs or [ ]) ++ [ phpDrv ];
+
+      patches = previousAttrs.patches or [ ];
+      strictDeps = previousAttrs.strictDeps or true;
+
+      # Should we keep these empty phases?
+      configurePhase =
+        previousAttrs.configurePhase or ''
+          runHook preConfigure
+
+          runHook postConfigure
+        '';
+
+      buildPhase =
+        previousAttrs.buildPhase or ''
+          runHook preBuild
+
+          runHook postBuild
+        '';
+
+      doCheck = previousAttrs.doCheck or true;
+      checkPhase =
+        previousAttrs.checkPhase or ''
+          runHook preCheck
+
+          runHook postCheck
+        '';
+
+      installPhase =
+        previousAttrs.installPhase or ''
+          runHook preInstall
+
+          runHook postInstall
+        '';
+
+      doInstallCheck = previousAttrs.doInstallCheck or false;
+      installCheckPhase =
+        previousAttrs.installCheckPhase or ''
+          runHook preInstallCheck
+
+          runHook postInstallCheck
+        '';
+
+      composerRepository =
+        previousAttrs.composerRepository or (phpDrv.mkComposerRepository {
+          inherit composer composer-local-repo-plugin;
+          inherit (finalAttrs)
+            patches
+            pname
+            src
+            vendorHash
+            version
+            ;
+
+          composerLock = previousAttrs.composerLock or null;
+          composerNoDev = previousAttrs.composerNoDev or true;
+          composerNoPlugins = previousAttrs.composerNoPlugins or true;
+          composerNoScripts = previousAttrs.composerNoScripts or true;
+          composerStrictValidation = previousAttrs.composerStrictValidation or true;
+        });
+
+      # Projects providing a lockfile from upstream can be automatically updated.
+      passthru = previousAttrs.passthru or { } // {
+        updateScript =
+          previousAttrs.passthru.updateScript
+            or (if finalAttrs.composerRepository.composerLock == null then nix-update-script { } else null);
+      };
+
+      env = {
+        COMPOSER_CACHE_DIR = "/dev/null";
+        COMPOSER_DISABLE_NETWORK = "1";
+        COMPOSER_MIRROR_PATH_REPOS = "1";
+      };
+
+      meta = previousAttrs.meta or { } // {
+        platforms = lib.platforms.all;
+      };
+    };
+in
+args: (stdenvNoCC.mkDerivation args).overrideAttrs buildComposerProjectOverride
diff --git a/pkgs/build-support/php/build-composer-repository.nix b/pkgs/build-support/php/builders/v1/build-composer-repository.nix
index e359c0829aaf..54944b91d202 100644
--- a/pkgs/build-support/php/build-composer-repository.nix
+++ b/pkgs/build-support/php/builders/v1/build-composer-repository.nix
@@ -1,4 +1,9 @@
-{ callPackage, stdenvNoCC, lib, writeTextDir, fetchFromGitHub, php }:
+{
+  callPackage,
+  stdenvNoCC,
+  lib,
+  php,
+}:
 
 let
   mkComposerRepositoryOverride =
@@ -19,15 +24,27 @@ let
     let
       phpDrv = finalAttrs.php or php;
       composer = finalAttrs.composer or phpDrv.packages.composer;
-      composer-local-repo-plugin = callPackage ./pkgs/composer-local-repo-plugin.nix { };
+      composer-local-repo-plugin = callPackage ../../pkgs/composer-local-repo-plugin.nix { };
     in
     assert (lib.assertMsg (previousAttrs ? src) "mkComposerRepository expects src argument.");
-    assert (lib.assertMsg (previousAttrs ? vendorHash) "mkComposerRepository expects vendorHash argument.");
+    assert (
+      lib.assertMsg (previousAttrs ? vendorHash) "mkComposerRepository expects vendorHash argument."
+    );
     assert (lib.assertMsg (previousAttrs ? version) "mkComposerRepository expects version argument.");
     assert (lib.assertMsg (previousAttrs ? pname) "mkComposerRepository expects pname argument.");
-    assert (lib.assertMsg (previousAttrs ? composerNoDev) "mkComposerRepository expects composerNoDev argument.");
-    assert (lib.assertMsg (previousAttrs ? composerNoPlugins) "mkComposerRepository expects composerNoPlugins argument.");
-    assert (lib.assertMsg (previousAttrs ? composerNoScripts) "mkComposerRepository expects composerNoScripts argument.");
+    assert (
+      lib.assertMsg (previousAttrs ? composerNoDev) "mkComposerRepository expects composerNoDev argument."
+    );
+    assert (
+      lib.assertMsg (
+        previousAttrs ? composerNoPlugins
+      ) "mkComposerRepository expects composerNoPlugins argument."
+    );
+    assert (
+      lib.assertMsg (
+        previousAttrs ? composerNoScripts
+      ) "mkComposerRepository expects composerNoScripts argument."
+    );
     {
       composerNoDev = previousAttrs.composerNoDev or true;
       composerNoPlugins = previousAttrs.composerNoPlugins or true;
@@ -51,45 +68,53 @@ let
       strictDeps = previousAttrs.strictDeps or true;
 
       # Should we keep these empty phases?
-      configurePhase = previousAttrs.configurePhase or ''
-        runHook preConfigure
+      configurePhase =
+        previousAttrs.configurePhase or ''
+          runHook preConfigure
 
-        runHook postConfigure
-      '';
+          runHook postConfigure
+        '';
 
-      buildPhase = previousAttrs.buildPhase or ''
-        runHook preBuild
+      buildPhase =
+        previousAttrs.buildPhase or ''
+          runHook preBuild
 
-        runHook postBuild
-      '';
+          runHook postBuild
+        '';
 
       doCheck = previousAttrs.doCheck or true;
-      checkPhase = previousAttrs.checkPhase or ''
-        runHook preCheck
+      checkPhase =
+        previousAttrs.checkPhase or ''
+          runHook preCheck
 
-        runHook postCheck
-      '';
+          runHook postCheck
+        '';
 
-      installPhase = previousAttrs.installPhase or ''
-        runHook preInstall
+      installPhase =
+        previousAttrs.installPhase or ''
+          runHook preInstall
 
-        runHook postInstall
-      '';
+          runHook postInstall
+        '';
 
       doInstallCheck = previousAttrs.doInstallCheck or false;
-      installCheckPhase = previousAttrs.installCheckPhase or ''
-        runHook preInstallCheck
+      installCheckPhase =
+        previousAttrs.installCheckPhase or ''
+          runHook preInstallCheck
 
-        runHook postInstallCheck
-      '';
+          runHook postInstallCheck
+        '';
 
-      COMPOSER_CACHE_DIR = "/dev/null";
-      COMPOSER_MIRROR_PATH_REPOS = "1";
-      COMPOSER_HTACCESS_PROTECT = "0";
-      COMPOSER_DISABLE_NETWORK = "0";
+      env = {
+        COMPOSER_CACHE_DIR = "/dev/null";
+        COMPOSER_MIRROR_PATH_REPOS = "1";
+        COMPOSER_HTACCESS_PROTECT = "0";
+        COMPOSER_DISABLE_NETWORK = "0";
+      };
 
       outputHashMode = "recursive";
-      outputHashAlgo = if (finalAttrs ? vendorHash && finalAttrs.vendorHash != "") then null else "sha256";
+      outputHashAlgo =
+        if (finalAttrs ? vendorHash && finalAttrs.vendorHash != "") then null else "sha256";
       outputHash = finalAttrs.vendorHash or "";
     };
 in
diff --git a/pkgs/build-support/php/hooks/composer-install-hook.sh b/pkgs/build-support/php/builders/v1/hooks/composer-install-hook.sh
index a91263422bc8..a91263422bc8 100644
--- a/pkgs/build-support/php/hooks/composer-install-hook.sh
+++ b/pkgs/build-support/php/builders/v1/hooks/composer-install-hook.sh
diff --git a/pkgs/build-support/php/hooks/composer-repository-hook.sh b/pkgs/build-support/php/builders/v1/hooks/composer-repository-hook.sh
index c4fa0d52126c..c4fa0d52126c 100644
--- a/pkgs/build-support/php/hooks/composer-repository-hook.sh
+++ b/pkgs/build-support/php/builders/v1/hooks/composer-repository-hook.sh
diff --git a/pkgs/build-support/php/builders/v1/hooks/default.nix b/pkgs/build-support/php/builders/v1/hooks/default.nix
new file mode 100644
index 000000000000..4c0ba1b18801
--- /dev/null
+++ b/pkgs/build-support/php/builders/v1/hooks/default.nix
@@ -0,0 +1,45 @@
+{
+  lib,
+  makeSetupHook,
+  jq,
+  writeShellApplication,
+  moreutils,
+  cacert,
+  buildPackages,
+}:
+
+let
+  php-script-utils = writeShellApplication {
+    name = "php-script-utils";
+    runtimeInputs = [ jq ];
+    text = builtins.readFile ./php-script-utils.bash;
+  };
+in
+{
+  composerRepositoryHook = makeSetupHook {
+    name = "composer-repository-hook.sh";
+    propagatedBuildInputs = [
+      jq
+      moreutils
+      cacert
+    ];
+    substitutions = {
+      phpScriptUtils = lib.getExe php-script-utils;
+    };
+  } ./composer-repository-hook.sh;
+
+  composerInstallHook = makeSetupHook {
+    name = "composer-install-hook.sh";
+    propagatedBuildInputs = [
+      jq
+      moreutils
+      cacert
+    ];
+    substitutions = {
+      # Specify the stdenv's `diff` by abspath to ensure that the user's build
+      # inputs do not cause us to find the wrong `diff`.
+      cmp = "${lib.getBin buildPackages.diffutils}/bin/cmp";
+      phpScriptUtils = lib.getExe php-script-utils;
+    };
+  } ./composer-install-hook.sh;
+}
diff --git a/pkgs/build-support/php/hooks/php-script-utils.bash b/pkgs/build-support/php/builders/v1/hooks/php-script-utils.bash
index bba0242e65d1..bba0242e65d1 100644
--- a/pkgs/build-support/php/hooks/php-script-utils.bash
+++ b/pkgs/build-support/php/builders/v1/hooks/php-script-utils.bash
diff --git a/pkgs/build-support/php/hooks/default.nix b/pkgs/build-support/php/hooks/default.nix
deleted file mode 100644
index ca96b1056db9..000000000000
--- a/pkgs/build-support/php/hooks/default.nix
+++ /dev/null
@@ -1,39 +0,0 @@
-{ lib
-, makeSetupHook
-, diffutils
-, jq
-, writeShellApplication
-, moreutils
-, cacert
-, buildPackages
-}:
-
-let
-  php-script-utils = writeShellApplication {
-    name = "php-script-utils";
-    runtimeInputs = [ jq ];
-    text = builtins.readFile ./php-script-utils.bash;
-  };
-in
-{
-  composerRepositoryHook = makeSetupHook
-    {
-      name = "composer-repository-hook.sh";
-      propagatedBuildInputs = [ jq moreutils cacert ];
-      substitutions = {
-        phpScriptUtils = lib.getExe php-script-utils;
-      };
-    } ./composer-repository-hook.sh;
-
-  composerInstallHook = makeSetupHook
-    {
-      name = "composer-install-hook.sh";
-      propagatedBuildInputs = [ jq moreutils cacert ];
-      substitutions = {
-        # Specify the stdenv's `diff` by abspath to ensure that the user's build
-        # inputs do not cause us to find the wrong `diff`.
-        cmp = "${lib.getBin buildPackages.diffutils}/bin/cmp";
-        phpScriptUtils = lib.getExe php-script-utils;
-      };
-    } ./composer-install-hook.sh;
-}
diff --git a/pkgs/build-support/php/pkgs/composer-local-repo-plugin.nix b/pkgs/build-support/php/pkgs/composer-local-repo-plugin.nix
index bfdc3d4f98d1..601640b6f0bb 100644
--- a/pkgs/build-support/php/pkgs/composer-local-repo-plugin.nix
+++ b/pkgs/build-support/php/pkgs/composer-local-repo-plugin.nix
@@ -1,9 +1,14 @@
-{ php, callPackage, stdenvNoCC, lib, fetchFromGitHub, makeBinaryWrapper }:
+{
+  php,
+  callPackage,
+  stdenvNoCC,
+  lib,
+  fetchFromGitHub,
+  makeBinaryWrapper,
+}:
 
 let
-  composer = callPackage ./composer-phar.nix {
-    inherit (php.packages.composer) version pharHash;
-  };
+  composer = callPackage ./composer-phar.nix { inherit (php.packages.composer) version pharHash; };
 
   composerKeys = stdenvNoCC.mkDerivation (finalComposerKeysAttrs: {
     pname = "composer-keys";
@@ -38,18 +43,16 @@ stdenvNoCC.mkDerivation (finalAttrs: {
     hash = "sha256-edbn07r/Uc1g0qOuVBZBs6N1bMN5kIfA1b4FCufdw5M=";
   };
 
-  COMPOSER_CACHE_DIR = "/dev/null";
-  COMPOSER_MIRROR_PATH_REPOS = "1";
-  COMPOSER_HTACCESS_PROTECT = "0";
-  COMPOSER_DISABLE_NETWORK = "1";
+  env = {
+    COMPOSER_CACHE_DIR = "/dev/null";
+    COMPOSER_MIRROR_PATH_REPOS = "1";
+    COMPOSER_HTACCESS_PROTECT = "0";
+    COMPOSER_DISABLE_NETWORK = "1";
+  };
 
-  nativeBuildInputs = [
-    makeBinaryWrapper
-  ];
+  nativeBuildInputs = [ makeBinaryWrapper ];
 
-  buildInputs = [
-    composer
-  ];
+  buildInputs = [ composer ];
 
   configurePhase = ''
     runHook preConfigure
diff --git a/pkgs/build-support/php/pkgs/composer-phar.nix b/pkgs/build-support/php/pkgs/composer-phar.nix
index f281334ab2d9..d278810091ef 100644
--- a/pkgs/build-support/php/pkgs/composer-phar.nix
+++ b/pkgs/build-support/php/pkgs/composer-phar.nix
@@ -1,17 +1,17 @@
 {
-  _7zz
-  , cacert
-  , curl
-  , fetchurl
-  , git
-  , lib
-  , makeBinaryWrapper
-  , php
-  , stdenvNoCC
-  , unzip
-  , xz
-  , version
-  , pharHash
+  _7zz,
+  cacert,
+  curl,
+  fetchurl,
+  git,
+  lib,
+  makeBinaryWrapper,
+  php,
+  stdenvNoCC,
+  unzip,
+  xz,
+  version,
+  pharHash,
 }:
 
 stdenvNoCC.mkDerivation (finalAttrs: {
@@ -32,9 +32,18 @@ stdenvNoCC.mkDerivation (finalAttrs: {
 
     mkdir -p $out/bin
     install -D $src $out/libexec/composer/composer.phar
-    makeWrapper ${php}/bin/php $out/bin/composer \
+    makeWrapper ${lib.getExe php} $out/bin/composer \
       --add-flags "$out/libexec/composer/composer.phar" \
-      --prefix PATH : ${lib.makeBinPath [ _7zz cacert curl git unzip xz ]}
+      --prefix PATH : ${
+        lib.makeBinPath [
+          _7zz
+          cacert
+          curl
+          git
+          unzip
+          xz
+        ]
+      }
 
     runHook postInstall
   '';
@@ -44,6 +53,7 @@ stdenvNoCC.mkDerivation (finalAttrs: {
     description = "Dependency Manager for PHP, shipped from the PHAR file";
     homepage = "https://getcomposer.org/";
     license = lib.licenses.mit;
+    mainProgram = "composer";
     maintainers = with lib.maintainers; [ drupol ];
     platforms = lib.platforms.all;
   };
diff --git a/pkgs/build-support/rust/build-rust-package/default.nix b/pkgs/build-support/rust/build-rust-package/default.nix
index cd90c68c7930..36e0408cc198 100644
--- a/pkgs/build-support/rust/build-rust-package/default.nix
+++ b/pkgs/build-support/rust/build-rust-package/default.nix
@@ -156,9 +156,9 @@ stdenv.mkDerivation ((removeAttrs args [ "depsExtraArgs" "cargoUpdateHook" "carg
       # Platforms without host tools from
       # https://doc.rust-lang.org/nightly/rustc/platform-support.html
       "armv7a-darwin"
-      "armv5tel-linux" "armv7a-linux" "m68k-linux" "mipsel-linux"
-      "mips64el-linux" "riscv32-linux"
-      "armv6l-netbsd"
+      "armv5tel-linux" "armv7a-linux" "m68k-linux" "mips-linux"
+      "mips64-linux" "mipsel-linux" "mips64el-linux" "riscv32-linux"
+      "armv6l-netbsd" "mipsel-netbsd" "riscv64-netbsd"
       "x86_64-redox"
       "wasm32-wasi"
     ];
diff --git a/pkgs/build-support/rust/hooks/cargo-build-hook.sh b/pkgs/build-support/rust/hooks/cargo-build-hook.sh
index ed982c7ff30a..0ac9bf51a833 100644
--- a/pkgs/build-support/rust/hooks/cargo-build-hook.sh
+++ b/pkgs/build-support/rust/hooks/cargo-build-hook.sh
@@ -25,7 +25,14 @@ cargoBuildHook() {
     fi
 
     if [ -n "${cargoBuildFeatures-}" ]; then
-        cargoBuildFeaturesFlag="--features=${cargoBuildFeatures// /,}"
+        if [ -n "$__structuredAttrs" ]; then
+            OLDIFS="$IFS"
+            IFS=','; cargoBuildFeaturesFlag="--features=${cargoBuildFeatures[*]}"
+            IFS="$OLDIFS"
+            unset OLDIFS
+        else
+            cargoBuildFeaturesFlag="--features=${cargoBuildFeatures// /,}"
+        fi
     fi
 
     (
diff --git a/pkgs/build-support/rust/replace-workspace-values.py b/pkgs/build-support/rust/replace-workspace-values.py
index 2b88f1fa79bb..003023ff2560 100644
--- a/pkgs/build-support/rust/replace-workspace-values.py
+++ b/pkgs/build-support/rust/replace-workspace-values.py
@@ -15,6 +15,9 @@ def load_file(path: str) -> dict[str, Any]:
         return tomli.load(f)
 
 
+# This replicates the dependency merging logic from Cargo.
+# See `inner_dependency_inherit_with`:
+# https://github.com/rust-lang/cargo/blob/4de0094ac78743d2c8ff682489e35c8a7cafe8e4/src/cargo/util/toml/mod.rs#L982
 def replace_key(
     workspace_manifest: dict[str, Any], table: dict[str, Any], section: str, key: str
 ) -> bool:
@@ -25,28 +28,37 @@ def replace_key(
     ):
         print("replacing " + key)
 
-        replaced = table[key]
-        del replaced["workspace"]
+        local_dep = table[key]
+        del local_dep["workspace"]
 
-        workspace_copy = workspace_manifest[section][key]
+        workspace_dep = workspace_manifest[section][key]
 
         if section == "dependencies":
-            crate_features = replaced.get("features")
+            if isinstance(workspace_dep, str):
+                workspace_dep = {"version": workspace_dep}
 
-            if type(workspace_copy) is str:
-                replaced["version"] = workspace_copy
-            else:
-                replaced.update(workspace_copy)
+            final: dict[str, Any] = workspace_dep.copy()
 
-                merged_features = (crate_features or []) + (
-                    workspace_copy.get("features") or []
-                )
+            merged_features = local_dep.pop("features", []) + workspace_dep.get("features", [])
+            if merged_features:
+                final["features"] = merged_features
 
-                if len(merged_features) > 0:
-                    # Dictionaries are guaranteed to be ordered (https://stackoverflow.com/a/7961425)
-                    replaced["features"] = list(dict.fromkeys(merged_features))
+            local_default_features = local_dep.pop("default-features", None)
+            workspace_default_features = workspace_dep.get("default-features")
+
+            if not workspace_default_features and local_default_features:
+                final["default-features"] = True
+
+            optional = local_dep.pop("optional", False)
+            if optional:
+                final["optional"] = True
+
+            if local_dep:
+                raise Exception(f"Unhandled keys in inherited dependency {key}: {local_dep}")
+
+            table[key] = final
         elif section == "package":
-            table[key] = replaced = workspace_copy
+            table[key] = workspace_dep
 
         return True
 
diff --git a/pkgs/build-support/setup-hooks/wrap-gapps-hook/default.nix b/pkgs/build-support/setup-hooks/wrap-gapps-hook/default.nix
index 3c5199be3132..69f9f3b145d7 100644
--- a/pkgs/build-support/setup-hooks/wrap-gapps-hook/default.nix
+++ b/pkgs/build-support/setup-hooks/wrap-gapps-hook/default.nix
@@ -3,12 +3,12 @@
 , makeSetupHook
 , makeWrapper
 , gobject-introspection
-, isGraphical ? true
+, isGraphical ? false
 , gtk3
 , librsvg
 , dconf
 , callPackage
-, wrapGAppsHook
+, wrapGAppsHook3
 , targetPackages
 }:
 
@@ -24,9 +24,9 @@ makeSetupHook {
     librsvg
   ];
 
-  # depsTargetTargetPropagated will essentially be buildInputs when wrapGAppsHook is placed into nativeBuildInputs
+  # depsTargetTargetPropagated will essentially be buildInputs when wrapGAppsHook3 is placed into nativeBuildInputs
   # the librsvg and gtk3 above should be removed but kept to not break anything that implicitly depended on its binaries
-  depsTargetTargetPropagated = assert (lib.assertMsg (!targetPackages ? raw) "wrapGAppsHook must be in nativeBuildInputs"); lib.optionals isGraphical [
+  depsTargetTargetPropagated = assert (lib.assertMsg (!targetPackages ? raw) "wrapGAppsHook3 must be in nativeBuildInputs"); lib.optionals isGraphical [
     # librsvg provides a module for gdk-pixbuf to allow rendering
     # SVG icons. Most icon themes are SVG-based and so are some
     # graphics in GTK (e.g. cross for closing window in window title bar)
@@ -59,7 +59,7 @@ makeSetupHook {
         src = sample-project;
 
         strictDeps = true;
-        nativeBuildInputs = [ wrapGAppsHook ];
+        nativeBuildInputs = [ wrapGAppsHook3 ];
 
         installFlags = [ "bin-foo" "libexec-bar" ];
       };
@@ -103,7 +103,7 @@ makeSetupHook {
         strictDeps = true;
         nativeBuildInputs = [
           gobject-introspection
-          wrapGAppsHook
+          wrapGAppsHook3
         ];
 
         buildInputs = [
@@ -150,7 +150,7 @@ makeSetupHook {
         strictDeps = true;
         nativeBuildInputs = [
           gobject-introspection
-          wrapGAppsHook
+          wrapGAppsHook3
         ];
 
         buildInputs = [
@@ -181,7 +181,7 @@ makeSetupHook {
         strictDeps = true;
         nativeBuildInputs = [
           gobject-introspection
-          wrapGAppsHook
+          wrapGAppsHook3
         ];
 
         installFlags = [ "typelib-Cow" "bin-foo" "libexec-bar" ];
diff --git a/pkgs/build-support/testers/hasPkgConfigModules/tester.nix b/pkgs/build-support/testers/hasPkgConfigModules/tester.nix
index bbcc4f0c0f71..b8ae884ba7b0 100644
--- a/pkgs/build-support/testers/hasPkgConfigModules/tester.nix
+++ b/pkgs/build-support/testers/hasPkgConfigModules/tester.nix
@@ -5,12 +5,14 @@
 { package,
   moduleNames ? package.meta.pkgConfigModules,
   testName ? "check-pkg-config-${lib.concatStringsSep "-" moduleNames}",
+  version ? package.version or null,
+  versionCheck ? false,
 }:
 
 runCommand testName {
     nativeBuildInputs = [ pkg-config ];
     buildInputs = [ package ];
-    inherit moduleNames;
+    inherit moduleNames version versionCheck;
     meta = {
       description = "Test whether ${package.name} exposes pkg-config modules ${lib.concatStringsSep ", " moduleNames}.";
     }
@@ -31,20 +33,38 @@ runCommand testName {
         package.meta;
   } ''
     touch "$out"
+    notFound=0
+    versionMismatch=0
     for moduleName in $moduleNames; do
       echo "checking pkg-config module $moduleName in $buildInputs"
       set +e
-      version="$($PKG_CONFIG --modversion $moduleName)"
+      moduleVersion="$($PKG_CONFIG --modversion $moduleName)"
       r=$?
       set -e
       if [[ $r = 0 ]]; then
-        echo "✅ pkg-config module $moduleName exists and has version $version"
+        if [[ "$moduleVersion" == "$version" ]]; then
+          echo "✅ pkg-config module $moduleName exists and has version $moduleVersion"
+        else
+          echo "❌ pkg-config module $moduleName exists and has version $moduleVersion when $version was expected"
+          ((versionMismatch+=1))
+        fi
         printf '%s\t%s\n' "$moduleName" "$version" >> "$out"
       else
-        echo "These modules were available in the input propagation closure:"
-        $PKG_CONFIG --list-all
         echo "❌ pkg-config module $moduleName was not found"
-        false
+        ((notFound+=1))
       fi
     done
+
+    if [[ $notFound -eq 0 ]] && ([[ $versionMismatch -eq 0 ]] || [[ "$versionCheck" == false ]]); then
+      exit 0
+    fi
+    if [[ $notFound -ne 0 ]]; then
+      echo "$notFound modules not found"
+      echo "These modules were available in the input propagation closure:"
+      $PKG_CONFIG --list-all
+    fi
+    if [[ $versionMismatch -ne 0 ]]; then
+      echo "$versionMismatch version mismatches"
+    fi
+    exit 1
   ''
diff --git a/pkgs/build-support/testers/hasPkgConfigModules/tests.nix b/pkgs/build-support/testers/hasPkgConfigModules/tests.nix
index 96569498fb15..bf992d040b4b 100644
--- a/pkgs/build-support/testers/hasPkgConfigModules/tests.nix
+++ b/pkgs/build-support/testers/hasPkgConfigModules/tests.nix
@@ -1,9 +1,20 @@
 # cd nixpkgs
-# nix-build -A tests.testers.hasPkgConfigModule
-{ lib, testers, zlib, openssl, runCommand }:
+# nix-build -A tests.testers.hasPkgConfigModules
+{ lib, testers, miniz, zlib, openssl, runCommand }:
 
 lib.recurseIntoAttrs {
 
+  miniz-versions-match = testers.hasPkgConfigModules {
+    package = miniz;
+    versionCheck = true;
+  };
+
+  miniz-versions-mismatch = testers.testBuildFailure (testers.hasPkgConfigModules {
+    package = miniz;
+    version = "1.2.3";
+    versionCheck = true;
+  });
+
   zlib-has-zlib = testers.hasPkgConfigModules {
     package = zlib;
     moduleNames = [ "zlib" ];
diff --git a/pkgs/build-support/vm/default.nix b/pkgs/build-support/vm/default.nix
index 56375851783f..871f81bb5d69 100644
--- a/pkgs/build-support/vm/default.nix
+++ b/pkgs/build-support/vm/default.nix
@@ -40,10 +40,14 @@ rec {
         ${pkgs.stdenv.cc.libc}/lib/libc.so.* \
         ${pkgs.stdenv.cc.libc}/lib/libm.so.* \
         ${pkgs.stdenv.cc.libc}/lib/libresolv.so.* \
+        ${pkgs.stdenv.cc.libc}/lib/libpthread.so.* \
+        ${pkgs.zstd.out}/lib/libzstd.so.* \
+        ${pkgs.xz.out}/lib/liblzma.so.* \
         $out/lib
 
       # Copy BusyBox.
       cp -pd ${pkgs.busybox}/bin/* $out/bin
+      cp -pd ${pkgs.kmod}/bin/* $out/bin
 
       # Run patchelf to make the programs refer to the copied libraries.
       for i in $out/bin/* $out/lib/*; do if ! test -L $i; then nuke-refs $i; fi; done
@@ -54,6 +58,11 @@ rec {
               patchelf --set-interpreter $out/lib/ld-*.so.? --set-rpath $out/lib $i || true
           fi
       done
+
+      find $out/lib -type f \! -name 'ld*.so.?' | while read i; do
+        echo "patching $i..."
+        patchelf --set-rpath $out/lib $i
+      done
     ''; # */
 
 
diff --git a/pkgs/by-name/_0/_0xpropo/package.nix b/pkgs/by-name/_0/_0xpropo/package.nix
index 74bf73cf935f..200e9758f778 100644
--- a/pkgs/by-name/_0/_0xpropo/package.nix
+++ b/pkgs/by-name/_0/_0xpropo/package.nix
@@ -5,14 +5,14 @@
 }:
 stdenvNoCC.mkDerivation rec {
   pname = "0xpropo";
-  version = "1.000";
+  version = "1.100";
 
   src = let
     underscoreVersion = builtins.replaceStrings ["."] ["_"] version;
   in
     fetchzip {
       url = "https://github.com/0xType/0xPropo/releases/download/${version}/0xPropo_${underscoreVersion}.zip";
-      hash = "sha256-yIhabwHjBipkcmsSRaokBXCbawQkUNOU8v+fbn2iiY4=";
+      hash = "sha256-ZlZNvn9xiOxS+dfGI1rGbh6XlXo3/puAm2vhKh63sK4=";
     };
 
   installPhase = ''
diff --git a/pkgs/by-name/_6/_64gram/package.nix b/pkgs/by-name/_6/_64gram/package.nix
index 8db36cf9abf5..0cf62f11f3f3 100644
--- a/pkgs/by-name/_6/_64gram/package.nix
+++ b/pkgs/by-name/_6/_64gram/package.nix
@@ -7,7 +7,7 @@
 
 telegram-desktop.overrideAttrs (old: rec {
   pname = "64gram";
-  version = "1.1.19";
+  version = "1.1.22";
 
   src = fetchFromGitHub {
     owner = "TDesktop-x64";
@@ -15,7 +15,7 @@ telegram-desktop.overrideAttrs (old: rec {
     rev = "v${version}";
 
     fetchSubmodules = true;
-    hash = "sha256-9QCh7/eNPWqsOF+cjO61EnqqhAdy6+4UxZhWjfJc5gQ=";
+    hash = "sha256-Fhix+kCqUTr9qGMzDc2undxmhjmM6fPorZebeqXNHHE=";
   };
 
   passthru.updateScript = nix-update-script {};
diff --git a/pkgs/by-name/ad/adafruit-nrfutil/package.nix b/pkgs/by-name/ad/adafruit-nrfutil/package.nix
index dbf90df66026..6b300331f622 100644
--- a/pkgs/by-name/ad/adafruit-nrfutil/package.nix
+++ b/pkgs/by-name/ad/adafruit-nrfutil/package.nix
@@ -19,11 +19,17 @@ python3Packages.buildPythonApplication rec {
   patches = [
     # Pull a patch which fixes the tests, but is not yet released in a new version:
     # https://github.com/adafruit/Adafruit_nRF52_nrfutil/pull/38
+    # https://github.com/adafruit/Adafruit_nRF52_nrfutil/pull/42
     (fetchpatch {
       name = "fix-tests.patch";
       url = "https://github.com/adafruit/Adafruit_nRF52_nrfutil/commit/e5fbcc8ee5958041db38c04139ba686bf7d1b845.patch";
       sha256 = "sha256-0tbJldGtYcDdUzA3wZRv0lenXVn6dqV016U9nMpQ6/w=";
     })
+    (fetchpatch {
+      name = "fix-test-test_get_vk_pem.patch";
+      url = "https://github.com/adafruit/Adafruit_nRF52_nrfutil/commit/f42cee3c2d7c8d0911f27ba24d6a140083cb85cf.patch";
+      sha256 = "sha256-7WoRqPKc8O5EYK7Fj1WrMJREwhueiVpkEizIfVnEPBU=";
+    })
   ];
 
   nativeBuildInputs = with python3Packages; [
diff --git a/pkgs/by-name/ad/adbtuifm/package.nix b/pkgs/by-name/ad/adbtuifm/package.nix
index 8f8c15c283be..546d600451d2 100644
--- a/pkgs/by-name/ad/adbtuifm/package.nix
+++ b/pkgs/by-name/ad/adbtuifm/package.nix
@@ -16,7 +16,7 @@ buildGoModule rec {
   meta = with lib; {
     description = "A TUI-based file manager for the Android Debug Bridge";
     homepage = "https://github.com/darkhz/adbtuifm";
-    changelog = "https:/github.com/darkhz/adbtuifm/releases/tag/v${version}";
+    changelog = "https://github.com/darkhz/adbtuifm/releases/tag/v${version}";
     license = with licenses; [mit];
     maintainers = with maintainers; [daru-san];
     mainProgram = "adbtuifm";
diff --git a/pkgs/by-name/ad/adrs/package.nix b/pkgs/by-name/ad/adrs/package.nix
new file mode 100644
index 000000000000..0b4d49fbea22
--- /dev/null
+++ b/pkgs/by-name/ad/adrs/package.nix
@@ -0,0 +1,26 @@
+{ lib
+, rustPlatform
+, fetchFromGitHub
+}:
+
+rustPlatform.buildRustPackage rec {
+  pname = "adrs";
+  version = "0.2.8";
+
+  src = fetchFromGitHub {
+    owner = "joshrotenberg";
+    repo = "adrs";
+    rev = "v${version}";
+    hash = "sha256-5rvdW2UntseSsKFndrDj9ogH/qYN+KymuOsuqS0/C3M=";
+  };
+
+  cargoHash = "sha256-WqsZ+ICfKrackQ5dMs/WvF3inJX+k9LhxAJkXmaVAtY=";
+
+  meta = {
+    description = "A command-line tool for managing Architectural Decision Records";
+    homepage = "https://github.com/joshrotenberg/adrs";
+    license = with lib.licenses; [ mit asl20 ];
+    maintainers = with lib.maintainers; [ dannixon ];
+    mainProgram = "adrs";
+  };
+}
diff --git a/pkgs/by-name/ad/adwsteamgtk/package.nix b/pkgs/by-name/ad/adwsteamgtk/package.nix
index 419541b28ed7..393962961569 100644
--- a/pkgs/by-name/ad/adwsteamgtk/package.nix
+++ b/pkgs/by-name/ad/adwsteamgtk/package.nix
@@ -12,7 +12,7 @@
 
 python3Packages.buildPythonApplication rec {
   pname = "adwsteamgtk";
-  version = "0.6.10";
+  version = "0.6.11";
   # built with meson, not a python format
   format = "other";
 
@@ -20,7 +20,7 @@ python3Packages.buildPythonApplication rec {
     owner = "Foldex";
     repo = "AdwSteamGtk";
     rev = "refs/tags/v${version}";
-    hash = "sha256-sh4FLXG78i20Bt8pCCbhO6Sx815stjAZRLCD+X5Zk40=";
+    hash = "sha256-f7+2gTpG5Ntgq+U2AkQihzSTrO+oMsLWxgxe4dVyz8A=";
   };
 
   buildInputs = [
diff --git a/pkgs/by-name/ae/aegisub/package.nix b/pkgs/by-name/ae/aegisub/package.nix
index 6c68fff2bb63..cdec1259fd08 100644
--- a/pkgs/by-name/ae/aegisub/package.nix
+++ b/pkgs/by-name/ae/aegisub/package.nix
@@ -33,7 +33,7 @@
   portaudio,
   stdenv,
   which,
-  wrapGAppsHook,
+  wrapGAppsHook3,
   wxGTK,
   zlib,
   # Boolean guard flags
@@ -73,7 +73,7 @@ stdenv.mkDerivation (finalAttrs: {
     ninja
     pkg-config
     which
-    wrapGAppsHook
+    wrapGAppsHook3
     wxGTK
   ];
 
diff --git a/pkgs/by-name/af/affine/package.nix b/pkgs/by-name/af/affine/package.nix
index d484bc94e566..ae55ffad9800 100644
--- a/pkgs/by-name/af/affine/package.nix
+++ b/pkgs/by-name/af/affine/package.nix
@@ -18,10 +18,10 @@ stdenvNoCC.mkDerivation (finalAttrs: let
   };
 in {
   pname = "affine";
-  version = "0.13.3";
+  version = "0.14.3";
   src = fetchurl {
     url = "https://github.com/toeverything/AFFiNE/releases/download/v${finalAttrs.version}/affine-${finalAttrs.version}-stable-linux-x64.zip";
-    hash = "sha256-w/5X7PFLHVILg1XCYkGefBQ4c+Ko+ME0Lu8iAtCaTFg=";
+    hash = "sha256-/dKvRr0cH9mLF1y6FGFRDlsFXaymEmb55AZ37Ti0PU4=";
   };
   nativeBuildInputs = [
     copyDesktopItems
diff --git a/pkgs/by-name/ag/ags/package.nix b/pkgs/by-name/ag/ags/package.nix
index 0076e5b0ba29..85fb28aa12a3 100644
--- a/pkgs/by-name/ag/ags/package.nix
+++ b/pkgs/by-name/ag/ags/package.nix
@@ -1,40 +1,40 @@
-{ lib
-, buildNpmPackage
-, fetchFromGitHub
-, meson
-, ninja
-, pkg-config
-, gobject-introspection
-, gjs
-, glib-networking
-, gnome
-, gtk-layer-shell
-, libpulseaudio
-, libsoup_3
-, networkmanager
-, upower
-, typescript
-, wrapGAppsHook
-, linux-pam
+{
+  lib,
+  buildNpmPackage,
+  fetchFromGitHub,
+  meson,
+  ninja,
+  pkg-config,
+  gobject-introspection,
+  gjs,
+  glib-networking,
+  gnome,
+  gtk-layer-shell,
+  libpulseaudio,
+  libsoup_3,
+  networkmanager,
+  upower,
+  typescript,
+  wrapGAppsHook3,
+  linux-pam,
+  nix-update-script,
 }:
 
 buildNpmPackage rec {
   pname = "ags";
-  version = "1.8.0";
+  version = "1.8.2";
 
   src = fetchFromGitHub {
     owner = "Aylur";
     repo = "ags";
     rev = "v${version}";
-    hash = "sha256-+0us1/lawDXp6RXn4ev95a99VgpsVPi2A4jwNS2O1Uo=";
+    hash = "sha256-ebnkUaee/pnfmw1KmOZj+MP1g5wA+8BT/TPKmn4Dkwc=";
     fetchSubmodules = true;
   };
 
   npmDepsHash = "sha256-ucWdADdMqAdLXQYKGOXHNRNM9bhjKX4vkMcQ8q/GZ20=";
 
-  mesonFlags = [
-    (lib.mesonBool "build_types" true)
-  ];
+  mesonFlags = [ (lib.mesonBool "build_types" true) ];
 
   nativeBuildInputs = [
     meson
@@ -43,7 +43,7 @@ buildNpmPackage rec {
     gjs
     gobject-introspection
     typescript
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   # Most of the build inputs here are basically needed for their typelibs.
@@ -63,12 +63,18 @@ buildNpmPackage rec {
     chmod u+x ./post_install.sh && patchShebangs ./post_install.sh
   '';
 
-  meta = with lib; {
+  passthru.updateScript = nix-update-script {};
+
+  meta = {
     homepage = "https://github.com/Aylur/ags";
     description = "A EWW-inspired widget system as a GJS library";
-    license = licenses.gpl3Plus;
-    maintainers = with maintainers; [ foo-dogsquared ];
+    changelog = "https://github.com/Aylur/ags/releases/tag/v${version}";
+    license = lib.licenses.gpl3Plus;
+    maintainers = with lib.maintainers; [
+      foo-dogsquared
+      johnrtitor
+    ];
     mainProgram = "ags";
-    platforms = platforms.linux;
+    platforms = lib.platforms.linux;
   };
 }
diff --git a/pkgs/by-name/al/alacarte/package.nix b/pkgs/by-name/al/alacarte/package.nix
new file mode 100644
index 000000000000..003558c0e86d
--- /dev/null
+++ b/pkgs/by-name/al/alacarte/package.nix
@@ -0,0 +1,70 @@
+{
+  lib,
+  fetchFromGitLab,
+  python3,
+  autoconf,
+  automake,
+  gettext,
+  pkg-config,
+  libxslt,
+  gobject-introspection,
+  wrapGAppsHook3,
+  gnome-menus,
+  glib,
+  gtk3,
+  docbook_xsl,
+  nix-update-script,
+}:
+python3.pkgs.buildPythonApplication rec {
+  pname = "alacarte";
+  version = "3.52.0";
+
+  src = fetchFromGitLab {
+    domain = "gitlab.gnome.org";
+    owner = "GNOME";
+    repo = "alacarte";
+    rev = version;
+    hash = "sha256-SkolSk6RireH3aKkRTUCib/nflqD02PR9uVtXePRHQY=";
+  };
+
+  format = "other";
+
+  nativeBuildInputs = [
+    autoconf
+    automake
+    gettext
+    pkg-config
+    python3
+    libxslt
+    gobject-introspection
+    wrapGAppsHook3
+  ];
+
+  buildInputs = [
+    gnome-menus
+    glib
+    gtk3
+  ];
+
+  propagatedBuildInputs = with python3.pkgs; [ pygobject3 ];
+
+  configureScript = "./autogen.sh";
+
+  # Builder couldn't fetch the docbook.xsl from the internet directly,
+  # so we substitute it with the docbook.xsl in already in nixpkgs
+  preConfigure = ''
+    substituteInPlace man/Makefile.am \
+      --replace-fail "http://docbook.sourceforge.net/release/xsl/current/manpages/docbook.xsl" "${docbook_xsl}/xml/xsl/docbook/manpages/docbook.xsl"
+  '';
+
+  passthru.updateScript = nix-update-script { };
+
+  meta = {
+    homepage = "https://gitlab.gnome.org/GNOME/alacarte";
+    description = "A menu editor for GNOME using the freedesktop.org menu specification";
+    license = lib.licenses.gpl2Only;
+    platforms = lib.platforms.linux;
+    mainProgram = "alacarte";
+    maintainers = with lib.maintainers; [ pluiedev ];
+  };
+}
diff --git a/pkgs/by-name/al/alephone-durandal/package.nix b/pkgs/by-name/al/alephone-durandal/package.nix
index d8376457f644..b1bd2da8c8a3 100644
--- a/pkgs/by-name/al/alephone-durandal/package.nix
+++ b/pkgs/by-name/al/alephone-durandal/package.nix
@@ -3,13 +3,13 @@
 alephone.makeWrapper rec {
   pname = "durandal";
   desktopName = "Marathon-Durandal";
-  version = "20240119";
+  version = "20240510";
   icon = alephone.icons + "/marathon2.png";
 
   zip = fetchurl {
     url =
       "https://github.com/Aleph-One-Marathon/alephone/releases/download/release-${version}/Marathon2-${version}-Data.zip";
-    sha256 = "sha256-Tp9EWMIY0moK6RLIpxB7rMzLOQ7zPfV58oeAyQsTbnM=";
+    sha256 = "sha256-uoBl1/7XlXmMLqpk3tvme9w18q4Yh0WCrmqSzjGxNz0=";
   };
 
   meta = {
diff --git a/pkgs/by-name/al/alephone-infinity/package.nix b/pkgs/by-name/al/alephone-infinity/package.nix
index 466f3bb7d4b6..d2ba3968f595 100644
--- a/pkgs/by-name/al/alephone-infinity/package.nix
+++ b/pkgs/by-name/al/alephone-infinity/package.nix
@@ -3,13 +3,13 @@
 alephone.makeWrapper rec {
   pname = "marathon-infinity";
   desktopName = "Marathon-Infinity";
-  version = "20240119";
+  version = "20240510";
   icon = alephone.icons + "/marathon-infinity.png";
 
   zip = fetchurl {
     url =
       "https://github.com/Aleph-One-Marathon/alephone/releases/download/release-${version}/MarathonInfinity-${version}-Data.zip";
-    sha256 = "sha256-KfFu+cboaZMfjnu3W84/Qbcrc9kbkIZ2Y0GM1fXeXh8=";
+    sha256 = "sha256-+FPym4Avqzyo4cZtfYPHXCS+q21+g9AIdKOImkd/UjU=";
   };
 
   meta = {
diff --git a/pkgs/by-name/al/alephone-marathon/package.nix b/pkgs/by-name/al/alephone-marathon/package.nix
index 38018ec021b0..4710d47090d5 100644
--- a/pkgs/by-name/al/alephone-marathon/package.nix
+++ b/pkgs/by-name/al/alephone-marathon/package.nix
@@ -3,13 +3,13 @@
 alephone.makeWrapper rec {
   pname = "marathon";
   desktopName = "Marathon";
-  version = "20240119";
+  version = "20240510";
   icon = alephone.icons + "/marathon.png";
 
   zip = fetchurl {
     url =
       "https://github.com/Aleph-One-Marathon/alephone/releases/download/release-${version}/Marathon-${version}-Data.zip";
-    sha256 = "sha256-60+dvXyzHe5PDepyKHcEIdWoRiGMvx5zYehubWKqaB0=";
+    sha256 = "sha256-shZ82e7veaaT/petxDQ8Fd7YtJPmTgxSCStf0kGfrFs=";
   };
 
   meta = {
diff --git a/pkgs/by-name/al/alephone/package.nix b/pkgs/by-name/al/alephone/package.nix
index 0e4979d4393e..d850e77d7b3c 100644
--- a/pkgs/by-name/al/alephone/package.nix
+++ b/pkgs/by-name/al/alephone/package.nix
@@ -1,47 +1,57 @@
-{ lib
-, stdenv
-, fetchurl
-, alsa-lib
-, boost
-, curl
-, ffmpeg_4
-, icoutils
-, libGLU
-, libmad
-, libogg
-, libpng
-, libsndfile
-, libvorbis
-, lua
-, makeDesktopItem
-, makeWrapper
-, miniupnpc
-, openal
-, pkg-config
-, SDL2
-, SDL2_image
-, SDL2_net
-, SDL2_ttf
-, speex
-, unzip
-, zlib
-, zziplib
-, alephone
+{
+  lib,
+  stdenv,
+  fetchurl,
+  alsa-lib,
+  boost,
+  curl,
+  ffmpeg_4,
+  icoutils,
+  libGLU,
+  libmad,
+  libogg,
+  libpng,
+  libsndfile,
+  libvorbis,
+  lua,
+  makeDesktopItem,
+  makeWrapper,
+  miniupnpc,
+  openal,
+  pkg-config,
+  SDL2,
+  SDL2_image,
+  SDL2_net,
+  SDL2_ttf,
+  speex,
+  unzip,
+  zlib,
+  zziplib,
+  alephone,
+  testers,
 }:
 
 stdenv.mkDerivation (finalAttrs: {
-  outputs = [ "out" "icons" ];
+  outputs = [
+    "out"
+    "icons"
+  ];
   pname = "alephone";
-  version = "1.7.1";
+  version = "1.8.1";
 
   src = fetchurl {
     url =
-      let date = "20240119";
-      in "https://github.com/Aleph-One-Marathon/alephone/releases/download/release-${date}/AlephOne-${date}.tar.bz2";
-    sha256 = "sha256-esqjhOSrqtapnS9xF/EThgn2c/vW4hTpMpecXW6BzAQ=";
+      let
+        date = "20240513";
+      in
+      "https://github.com/Aleph-One-Marathon/alephone/releases/download/release-${date}/AlephOne-${date}.tar.bz2";
+    sha256 = "sha256-IUvMfG4jtN/QXq4DQIDuI0+Bl3MSSwDGKOyjfcRWgvE=";
   };
 
-  nativeBuildInputs = [ pkg-config icoutils ];
+  nativeBuildInputs = [
+    pkg-config
+    icoutils
+  ];
 
   buildInputs = [
     alsa-lib
@@ -81,9 +91,12 @@ stdenv.mkDerivation (finalAttrs: {
     popd
   '';
 
+  passthru.tests.version =
+    # test that the version is correct
+    testers.testVersion { package = alephone; };
+
   meta = {
-    description =
-      "Aleph One is the open source continuation of Bungie’s Marathon 2 game engine";
+    description = "Aleph One is the open source continuation of Bungie’s Marathon 2 game engine";
     mainProgram = "alephone";
     homepage = "https://alephone.lhowon.org/";
     license = [ lib.licenses.gpl3 ];
@@ -92,45 +105,56 @@ stdenv.mkDerivation (finalAttrs: {
   };
 
   passthru.makeWrapper =
-    { pname
-    , desktopName
-    , version
-    , zip
-    , meta
-    , icon ? alephone.icons + "/alephone.png"
-    , ...
+    {
+      pname,
+      desktopName,
+      version,
+      zip,
+      meta,
+      icon ? alephone.icons + "/alephone.png",
+      ...
     }@extraArgs:
-    stdenv.mkDerivation ({
-      inherit pname version;
+    stdenv.mkDerivation (
+      {
+        inherit pname version;
 
-      desktopItem = makeDesktopItem {
-        name = desktopName;
-        exec = pname;
-        genericName = pname;
-        categories = [ "Game" ];
-        comment = meta.description;
-        inherit desktopName icon;
-      };
+        desktopItem = makeDesktopItem {
+          name = desktopName;
+          exec = pname;
+          genericName = pname;
+          categories = [ "Game" ];
+          comment = meta.description;
+          inherit desktopName icon;
+        };
 
-      src = zip;
+        src = zip;
 
-      nativeBuildInputs = [ makeWrapper unzip ];
+        nativeBuildInputs = [
+          makeWrapper
+          unzip
+        ];
 
-      dontConfigure = true;
-      dontBuild = true;
+        dontConfigure = true;
+        dontBuild = true;
 
-      installPhase = ''
-        mkdir -p $out/bin $out/data/$pname $out/share/applications
-        cp -a * $out/data/$pname
-        cp $desktopItem/share/applications/* $out/share/applications
-        makeWrapper ${alephone}/bin/alephone $out/bin/$pname \
-          --add-flags $out/data/$pname
-      '';
-    } // extraArgs // {
-      meta = alephone.meta // {
-        license = lib.licenses.free;
-        mainProgram = pname;
-        hydraPlatforms = [ ];
-      } // meta;
-    });
+        installPhase = ''
+          mkdir -p $out/bin $out/data/$pname $out/share/applications
+          cp -a * $out/data/$pname
+          cp $desktopItem/share/applications/* $out/share/applications
+          makeWrapper ${alephone}/bin/alephone $out/bin/$pname \
+            --add-flags $out/data/$pname
+        '';
+      }
+      // extraArgs
+      // {
+        meta =
+          alephone.meta
+          // {
+            license = lib.licenses.free;
+            mainProgram = pname;
+            hydraPlatforms = [ ];
+          }
+          // meta;
+      }
+    );
 })
diff --git a/pkgs/by-name/al/alsa-ucm-conf/package.nix b/pkgs/by-name/al/alsa-ucm-conf/package.nix
index 76e90f672018..b2e2889ee21e 100644
--- a/pkgs/by-name/al/alsa-ucm-conf/package.nix
+++ b/pkgs/by-name/al/alsa-ucm-conf/package.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetchurl }:
+{ lib, stdenv, fetchurl, fetchpatch }:
 
 stdenv.mkDerivation rec {
   pname = "alsa-ucm-conf";
@@ -9,6 +9,21 @@ stdenv.mkDerivation rec {
     hash = "sha256-OHwBzzDioWdte49ysmgc8hmrynDdHsKp4zrdW/P+roE=";
   };
 
+  patches = [
+    (fetchpatch {
+      # TODO: Remove this patch in the next package upgrade
+      name = "rt1318-fix-one.patch";
+      url = "https://github.com/alsa-project/alsa-ucm-conf/commit/7e22b7c214d346bd156131f3e6c6a5900bbf116d.patch";
+      hash = "sha256-5X0ANXTSRnC9jkvMLl7lA5TBV3d1nwWE57DP6TwliII=";
+    })
+    (fetchpatch {
+      # TODO: Remove this patch in the next package upgrade
+      name = "rt1318-fix-two.patch";
+      url = "https://github.com/alsa-project/alsa-ucm-conf/commit/4e0fcc79b7d517a957e12f02ecae5f3c69fa94dc.patch";
+      hash = "sha256-cuZPEEqb8+d1Ak2tA+LVEh6gtGt1X+LiAnfFYMIDCXY=";
+    })
+  ];
+
   dontBuild = true;
 
   installPhase = ''
diff --git a/pkgs/by-name/al/alt-tab-macos/package.nix b/pkgs/by-name/al/alt-tab-macos/package.nix
index 1f2ebc8551ca..e5b22dedcb82 100644
--- a/pkgs/by-name/al/alt-tab-macos/package.nix
+++ b/pkgs/by-name/al/alt-tab-macos/package.nix
@@ -1,16 +1,18 @@
-{ lib
-, stdenvNoCC
-, fetchurl
-, unzip
+{
+  lib,
+  stdenvNoCC,
+  fetchurl,
+  gitUpdater,
+  unzip,
 }:
 
 stdenvNoCC.mkDerivation (finalAttrs: {
   pname = "alt-tab-macos";
-  version = "6.68.0";
+  version = "6.69.0";
 
   src = fetchurl {
     url = "https://github.com/lwouis/alt-tab-macos/releases/download/v${finalAttrs.version}/AltTab-${finalAttrs.version}.zip";
-    hash = "sha256-NjDq5Uq771xRHeTipqwTrlz9vBCSsnV34A0482tcZuE=";
+    hash = "sha256-v0HeucpDGdnK0p9zoYUbEBoHzRMlcJBEIIS1vQZ00A0=";
   };
 
   sourceRoot = ".";
@@ -26,12 +28,21 @@ stdenvNoCC.mkDerivation (finalAttrs: {
     runHook postInstall
   '';
 
-  meta = with lib; {
+  passthru.updateScript = gitUpdater {
+    url = "https://github.com/lwouis/alt-tab-macos";
+    rev-prefix = "v";
+  };
+
+  meta = {
     description = "Windows alt-tab on macOS";
     homepage = "https://alt-tab-macos.netlify.app";
-    license = licenses.gpl3Plus;
+    license = lib.licenses.gpl3Plus;
+    maintainers = with lib.maintainers; [
+      donteatoreo
+      emilytrau
+      Enzime
+    ];
+    platforms = lib.platforms.darwin;
     sourceProvenance = with lib.sourceTypes; [ binaryNativeCode ];
-    maintainers = with maintainers; [ emilytrau Enzime ];
-    platforms = platforms.darwin;
   };
 })
diff --git a/pkgs/by-name/am/am2rlauncher/package.nix b/pkgs/by-name/am/am2rlauncher/package.nix
index d3893eefb395..049725881e3d 100644
--- a/pkgs/by-name/am/am2rlauncher/package.nix
+++ b/pkgs/by-name/am/am2rlauncher/package.nix
@@ -17,7 +17,7 @@
 , fetchFromGitHub
 , buildFHSEnv
 , glib-networking
-, wrapGAppsHook
+, wrapGAppsHook3
 , gsettings-desktop-schemas
 }:
 let
@@ -71,7 +71,7 @@ buildDotnetModule {
     openssl
   ];
 
-  nativeBuildInputs = [ wrapGAppsHook ];
+  nativeBuildInputs = [ wrapGAppsHook3 ];
 
   buildInputs = [ gtk3 gsettings-desktop-schemas glib-networking ];
 
diff --git a/pkgs/misc/ananicy-rules-cachyos/default.nix b/pkgs/by-name/an/ananicy-rules-cachyos/package.nix
index fba65999b0f9..2cca8544c9f6 100644
--- a/pkgs/misc/ananicy-rules-cachyos/default.nix
+++ b/pkgs/by-name/an/ananicy-rules-cachyos/package.nix
@@ -1,14 +1,19 @@
-{ lib, stdenvNoCC, fetchFromGitHub }:
+{
+  lib,
+  stdenvNoCC,
+  fetchFromGitHub,
+  unstableGitUpdater,
+}:
 
 stdenvNoCC.mkDerivation {
   pname = "ananicy-rules-cachyos";
-  version = "unstable-2024-04-22";
+  version = "0-unstable-2024-05-10";
 
   src = fetchFromGitHub {
     owner = "CachyOS";
     repo = "ananicy-rules";
-    rev = "8646faa8c0c8fc16d78ca3a25d65ddbd86b9d468";
-    hash = "sha256-b9M6Uqlb6Ysp8BRe1QV62sjVOU6tgFbrjTxDc3B4xlg=";
+    rev = "1826cf45201770e20fea2e7bebfc2a5001074703";
+    hash = "sha256-9Uth0OvV5NXHZxOCQDMmb0VdXpi8dSMdN9StnJa8n90=";
   };
 
   dontConfigure = true;
@@ -22,11 +27,19 @@ stdenvNoCC.mkDerivation {
     runHook postInstall
   '';
 
+  passthru.updateScript = unstableGitUpdater {
+    hardcodeZeroVersion = true;
+  };
+
   meta = {
     homepage = "https://github.com/CachyOS/ananicy-rules";
     description = "CachyOS' ananicy-rules meant to be used with ananicy-cpp";
     license = lib.licenses.gpl3Only;
     platforms = lib.platforms.linux;
-    maintainers = with lib.maintainers; [ artturin johnrtitor diniamo ];
+    maintainers = with lib.maintainers; [
+      artturin
+      diniamo
+      johnrtitor
+    ];
   };
 }
diff --git a/pkgs/by-name/an/annotator/package.nix b/pkgs/by-name/an/annotator/package.nix
index 3d2498e33500..115d6db2d8cb 100644
--- a/pkgs/by-name/an/annotator/package.nix
+++ b/pkgs/by-name/an/annotator/package.nix
@@ -5,7 +5,7 @@
 , meson
 , ninja
 , vala
-, wrapGAppsHook
+, wrapGAppsHook3
 , desktop-file-utils
 , libgee
 , pantheon
@@ -29,7 +29,7 @@ stdenv.mkDerivation rec {
     meson
     ninja
     vala
-    wrapGAppsHook
+    wrapGAppsHook3
     desktop-file-utils
   ];
 
diff --git a/pkgs/by-name/an/ansel/package.nix b/pkgs/by-name/an/ansel/package.nix
index 82cafc40bd74..54fa01bf0d60 100644
--- a/pkgs/by-name/an/ansel/package.nix
+++ b/pkgs/by-name/an/ansel/package.nix
@@ -54,7 +54,7 @@
 , libgpg-error
 , libxkbcommon
 , osm-gps-map
-, wrapGAppsHook
+, wrapGAppsHook3
 , rav1e
 , dav1d
 , libgcrypt
@@ -77,7 +77,7 @@ let
 in
 stdenv.mkDerivation {
   pname = "ansel";
-  version = "unstable-2024-02-23";
+  version = "0-unstable-2024-02-23";
 
   src = fetchFromGitHub {
     owner = "aurelienpierreeng";
@@ -98,7 +98,7 @@ stdenv.mkDerivation {
     pkg-config
     perlPackages.perl
     python3Packages.jsonschema
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
@@ -160,7 +160,10 @@ stdenv.mkDerivation {
     )
   '';
 
-  passthru.updateScript = unstableGitUpdater { };
+  passthru.updateScript = unstableGitUpdater {
+    # Tags inherited from Darktable, + a "nightly" 0.0.0 tag that new artefacts get attached to
+    hardcodeZeroVersion = true;
+  };
 
   meta = {
     description = "A darktable fork minus the bloat plus some design vision";
diff --git a/pkgs/by-name/an/antares/package.nix b/pkgs/by-name/an/antares/package.nix
index 7e2537d211bb..99725d863dff 100644
--- a/pkgs/by-name/an/antares/package.nix
+++ b/pkgs/by-name/an/antares/package.nix
@@ -7,16 +7,16 @@
 
 buildNpmPackage rec {
   pname = "antares";
-  version = "0.7.23";
+  version = "0.7.24";
 
   src = fetchFromGitHub {
     owner = "antares-sql";
     repo = "antares";
     rev = "v${version}";
-    hash = "sha256-7bj0f7JrUgHr2g489ABjNLfRERQFx0foDP0YqBTNkzI=";
+    hash = "sha256-jMtUDqxWwfXl9x61ycohTaacNAhWawL3Z4+OPW5nbOI=";
   };
 
-  npmDepsHash = "sha256-pRrg7fY5P2awds1ncsnD/lDvKmiOKhzjNcKXKy70bcs=";
+  npmDepsHash = "sha256-GC1hdRO8rrM97AMYCxWeNtJhyVdbKgitKLkWX7kGCwg=";
 
   buildInputs = [ nodejs ];
 
diff --git a/pkgs/by-name/an/anyk/package.nix b/pkgs/by-name/an/anyk/package.nix
index dfd97fd62273..4e9a92081d5d 100644
--- a/pkgs/by-name/an/anyk/package.nix
+++ b/pkgs/by-name/an/anyk/package.nix
@@ -15,13 +15,11 @@
 , python3
 }:
 let
-  # Downloads can be found here: https://nav.gov.hu/nyomtatvanyok/letoltesek/nyomtatvanykitolto_programok/nyomtatvany_apeh/keretprogramok/AbevJava
-  # There are no versioned download URLs but archive.org can be used to preserve them.
-  # The original download URL is: https://nav.gov.hu/pfile/programFile?path=/nyomtatvanyok/letoltesek/nyomtatvanykitolto_programok/nyomtatvany_apeh/keretprogramok/AbevJava
-  # You can put the URL here to create a fresh archive URL: https://web.archive.org/save
-  abevjavaSrc = fetchzip {
-    url = "https://web.archive.org/web/20231106112510if_/https://nav.gov.hu/pfile/programFile?path=/nyomtatvanyok/letoltesek/nyomtatvanykitolto_programok/nyomtatvany_apeh/keretprogramok/AbevJava";
-    sha256 = "sha256-qt0mHv3HI6C8OltFjSR47+RLSnmB2Si5U8rXEvdN4/c=";
+  # Run update.py to update this file.
+  inherit (lib.importJSON ./version.json) version url sha256;
+
+  src = fetchzip {
+    inherit url sha256;
     extension = "zip";
     stripRoot = false;
   };
@@ -49,7 +47,7 @@ let
     (runCommandLocal "anyk-patch" {} ''
       mkdir $out
       cd $out
-      ${unzip}/bin/unzip ${abevjavaSrc}/application/abevjava.jar hu/piller/enykp/niszws/ClientStubBuilder.class
+      ${unzip}/bin/unzip ${src}/application/abevjava.jar hu/piller/enykp/niszws/ClientStubBuilder.class
       ${python3}/bin/python ${./patch_paths.py} hu/piller/enykp/niszws/ClientStubBuilder.class
     '')
   ];
@@ -89,9 +87,7 @@ let
   '';
 in stdenv.mkDerivation {
   pname = "anyk";
-  version = "3.26.0";
-
-  src = abevjavaSrc;
+  inherit version src;
 
   dontConfigure = true;
   dontBuild = true;
diff --git a/pkgs/by-name/an/anyk/update.py b/pkgs/by-name/an/anyk/update.py
new file mode 100755
index 000000000000..0d20a9017870
--- /dev/null
+++ b/pkgs/by-name/an/anyk/update.py
@@ -0,0 +1,29 @@
+#! /usr/bin/env nix-shell
+#! nix-shell -i python3 -p "python3.withPackages (p: [p.waybackpy])"
+import subprocess
+from pathlib import Path
+import re
+import json
+import waybackpy
+
+# NAV doesn't provide stable versioned URLs so we put the download link in Wayback Machine to preserve it.
+
+print("Archiving...")
+save_api = waybackpy.WaybackMachineSaveAPI("https://nav.gov.hu/pfile/programFile?path=/nyomtatvanyok/letoltesek/nyomtatvanykitolto_programok/nyomtatvany_apeh/keretprogramok/AbevJava")
+
+url = save_api.save()
+
+print("Prefetching...")
+sha256, unpack_path = subprocess.check_output(["nix-prefetch-url", "--unpack", "--print-path", url], universal_newlines=True).split("\n")[:2]
+
+print("Extracting version...")
+manifest = (Path(unpack_path) / "META-INF" / "MANIFEST.MF").read_text()
+
+version = re.search("Implementation-Version: (.+)", manifest).group(1)
+
+print("Writing version.json...")
+(Path(__file__).parent / "version.json").write_text(json.dumps({
+  "url": url,
+  "sha256": sha256,
+  "version": version,
+}, indent=2) + "\n")
diff --git a/pkgs/by-name/an/anyk/version.json b/pkgs/by-name/an/anyk/version.json
new file mode 100644
index 000000000000..8a1debce3d2c
--- /dev/null
+++ b/pkgs/by-name/an/anyk/version.json
@@ -0,0 +1,5 @@
+{
+  "url": "https://web.archive.org/web/20240506155046/https://nav.gov.hu/pfile/programFile?path=/nyomtatvanyok/letoltesek/nyomtatvanykitolto_programok/nyomtatvany_apeh/keretprogramok/AbevJava",
+  "sha256": "1bvhk8b5b1f5f940zzmpx7xp858p2a27iwqij43fs4kqagz2v782",
+  "version": "3.33.0"
+}
diff --git a/pkgs/by-name/an/anyrun/package.nix b/pkgs/by-name/an/anyrun/package.nix
index 8d0ee80d7e8a..69362904f412 100644
--- a/pkgs/by-name/an/anyrun/package.nix
+++ b/pkgs/by-name/an/anyrun/package.nix
@@ -2,7 +2,7 @@
 , rustPlatform
 , fetchFromGitHub
 , pkg-config
-, wrapGAppsHook
+, wrapGAppsHook3
 , atk
 , cairo
 , gdk-pixbuf
@@ -35,7 +35,7 @@ rustPlatform.buildRustPackage rec {
 
   nativeBuildInputs = [
     pkg-config
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
diff --git a/pkgs/by-name/an/anytype/package.nix b/pkgs/by-name/an/anytype/package.nix
index 53c2996834f7..2ec353a1784f 100644
--- a/pkgs/by-name/an/anytype/package.nix
+++ b/pkgs/by-name/an/anytype/package.nix
@@ -13,8 +13,7 @@ let
 in appimageTools.wrapType2 {
   inherit name src;
 
-  extraPkgs = pkgs: (appimageTools.defaultFhsEnvArgs.multiPkgs pkgs)
-    ++ [ pkgs.libsecret ];
+  extraPkgs = pkgs: [ pkgs.libsecret ];
 
   extraInstallCommands = ''
     mv $out/bin/${name} $out/bin/${pname}
diff --git a/pkgs/by-name/ap/apostrophe/package.nix b/pkgs/by-name/ap/apostrophe/package.nix
new file mode 100644
index 000000000000..503e4ff2f194
--- /dev/null
+++ b/pkgs/by-name/ap/apostrophe/package.nix
@@ -0,0 +1,118 @@
+{
+  lib,
+  fetchFromGitLab,
+  gtksourceview5,
+  libspelling,
+  fetchFromGitHub,
+  python3Packages,
+  meson,
+  ninja,
+  pkg-config,
+  wrapGAppsHook4,
+  desktop-file-utils,
+  gobject-introspection,
+  libadwaita,
+  webkitgtk_6_0,
+  texliveMedium,
+  shared-mime-info,
+}:
+
+let
+  version = "3.0";
+
+  src = fetchFromGitLab {
+    owner = "World";
+    repo = "apostrophe";
+    domain = "gitlab.gnome.org";
+    rev = "v${version}";
+    sha256 = "sha256-wKxRCU00nSk7F8IZNWoLRtGs3m6ol3UBnArtppUOz/g=";
+  };
+
+  # Patches are required by upstream. Without the patches
+  # typing `- aaa`, newline, `- bbb` the program crashes
+  gtksourceview5-patched = gtksourceview5.overrideAttrs (prev: {
+    patches = (prev.patches or [ ]) ++ [ "${src}/build-aux/flatpak/sourceview_text_commits.patch" ];
+  });
+
+  libspelling-patched =
+    (libspelling.override { gtksourceview5 = gtksourceview5-patched; }).overrideAttrs
+      (prev: {
+        patches = (prev.patches or [ ]) ++ [ "${src}/build-aux/flatpak/libspelling_text_commits.patch" ];
+      });
+
+  reveal-js = fetchFromGitHub {
+    owner = "hakimel";
+    repo = "reveal.js";
+
+    # keep in sync with upstream shipped version
+    # in build-aux/flatpak/org.gnome.gitlab.somas.Apostrophe.json
+    rev = "4.6.0";
+    hash = "sha256-a+J+GasFmRvu5cJ1GLXscoJ+owzFXsLhCbeDbYChkyQ=";
+  };
+in
+python3Packages.buildPythonApplication rec {
+  inherit version src;
+  pname = "apostrophe";
+  pyproject = false;
+
+  postPatch =
+    ''
+      substituteInPlace build-aux/meson_post_install.py \
+        --replace-fail 'gtk-update-icon-cache' 'gtk4-update-icon-cache'
+
+      patchShebangs --build build-aux/meson_post_install.py
+    ''
+    # Should be done in postInstall, but meson checks this eagerly before build
+    + ''
+      install -d $out/share/apostrophe/libs
+      cp -r ${reveal-js} $out/share/apostrophe/libs/reveal.js
+    '';
+
+  nativeBuildInputs = [
+    meson
+    ninja
+    pkg-config
+    wrapGAppsHook4
+    desktop-file-utils
+    gobject-introspection
+  ];
+
+  buildInputs = [
+    libadwaita
+    gtksourceview5-patched
+    libspelling-patched
+    webkitgtk_6_0
+  ];
+
+  propagatedBuildInputs = with python3Packages; [
+    pygobject3
+    pypandoc
+    chardet
+  ];
+
+  dontWrapGApps = true;
+
+  preFixup = ''
+    makeWrapperArgs+=(
+      ''${gappsWrapperArgs[@]}
+      --prefix PATH : "${texliveMedium}/bin"
+      --prefix XDG_DATA_DIRS : "${shared-mime-info}/share"
+    )
+  '';
+
+  passthru = {
+    inherit gtksourceview5-patched libspelling-patched reveal-js;
+  };
+
+  meta = {
+    homepage = "https://gitlab.gnome.org/World/apostrophe";
+    description = "A distraction free Markdown editor for GNU/Linux";
+    license = lib.licenses.gpl3Plus;
+    platforms = lib.platforms.linux;
+    maintainers = with lib.maintainers; [
+      sternenseemann
+      aleksana
+    ];
+    mainProgram = "apostrophe";
+  };
+}
diff --git a/pkgs/by-name/ap/apt/package.nix b/pkgs/by-name/ap/apt/package.nix
index 945be641d855..1a227d7a17d5 100644
--- a/pkgs/by-name/ap/apt/package.nix
+++ b/pkgs/by-name/ap/apt/package.nix
@@ -33,11 +33,11 @@
 
 stdenv.mkDerivation (finalAttrs: {
   pname = "apt";
-  version = "2.9.2";
+  version = "2.9.3";
 
   src = fetchurl {
     url = "mirror://debian/pool/main/a/apt/apt_${finalAttrs.version}.tar.xz";
-    hash = "sha256-gKp0RmsTLlDtjQFZ8Q5kpEi2psZHI9YsQrg6UZnKA6c=";
+    hash = "sha256-7R0BlcpujXjbulOJ7Eb8/gQiut77vce1GkbJCfa6LXE=";
   };
 
   # cycle detection; lib can't be split
diff --git a/pkgs/by-name/ap/apvlv/package.nix b/pkgs/by-name/ap/apvlv/package.nix
index 577176932351..77ad5a034daa 100644
--- a/pkgs/by-name/ap/apvlv/package.nix
+++ b/pkgs/by-name/ap/apvlv/package.nix
@@ -22,7 +22,7 @@
   stdenv,
   testers,
   webkitgtk,
-  wrapGAppsHook,
+  wrapGAppsHook3,
 }:
 
 stdenv.mkDerivation (finalAttrs: {
@@ -47,7 +47,7 @@ stdenv.mkDerivation (finalAttrs: {
     installShellFiles
     man
     pkg-config
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
diff --git a/pkgs/by-name/ar/arc-browser/package.nix b/pkgs/by-name/ar/arc-browser/package.nix
index a54c6b85ecb2..1ee039360430 100644
--- a/pkgs/by-name/ar/arc-browser/package.nix
+++ b/pkgs/by-name/ar/arc-browser/package.nix
@@ -9,11 +9,11 @@
 
 stdenvNoCC.mkDerivation (finalAttrs: {
   pname = "arc-browser";
-  version = "1.40.0-49176";
+  version = "1.43.0-50018";
 
   src = fetchurl {
     url = "https://releases.arc.net/release/Arc-${finalAttrs.version}.dmg";
-    hash = "sha256-SjdlMEhmO00ADWTFR4u9fHKWbbQRAC/UstXIoshgYuA=";
+    hash = "sha256-naYL4AHmo8L1kxlkuCxqEBFWZZ14Nj+wUxzHGB1vNfw=";
   };
 
   nativeBuildInputs = [ undmg ];
diff --git a/pkgs/by-name/ar/arduino-ide/package.nix b/pkgs/by-name/ar/arduino-ide/package.nix
index 68e873fc2865..29268559c0ad 100644
--- a/pkgs/by-name/ar/arduino-ide/package.nix
+++ b/pkgs/by-name/ar/arduino-ide/package.nix
@@ -20,9 +20,10 @@ appimageTools.wrapType2 {
   extraInstallCommands = ''
     install -Dm444 ${appimageContents}/${pname}.desktop -t $out/share/applications/
     install -Dm444 ${appimageContents}/${pname}.png -t $out/share/pixmaps/
+    substituteInPlace $out/share/applications/${pname}.desktop --replace-fail 'Exec=AppRun --no-sandbox %U' 'Exec=${pname} %U'
   '';
 
-  extraPkgs = pkgs: with pkgs; [ libsecret ];
+  extraPkgs = pkgs: [ pkgs.libsecret ];
 
   meta = with lib; {
     description = "Open-source electronics prototyping platform";
diff --git a/pkgs/by-name/ar/argc/package.nix b/pkgs/by-name/ar/argc/package.nix
new file mode 100644
index 000000000000..8c286ebff9e6
--- /dev/null
+++ b/pkgs/by-name/ar/argc/package.nix
@@ -0,0 +1,66 @@
+{
+  lib,
+  buildPackages,
+  pkgsCross,
+  rustPlatform,
+  stdenv,
+  fetchFromGitHub,
+  installShellFiles,
+}:
+
+let
+  canExecuteHost = stdenv.buildPlatform.canExecute stdenv.hostPlatform;
+in
+rustPlatform.buildRustPackage rec {
+  pname = "argc";
+  version = "1.14.0";
+
+  src = fetchFromGitHub {
+    owner = "sigoden";
+    repo = "argc";
+    rev = "v${version}";
+    hash = "sha256-Li/K5/SLG6JuoRJDz2DQoj1Oi9LQgZWHNvtZ1HVbj88=";
+  };
+
+  cargoHash = "sha256-D1T9FWTvwKtAYoqFlR2OmLRLGWhPJ9D8J7lq/QKcBoM=";
+
+  nativeBuildInputs = [ installShellFiles ] ++ lib.optional (!canExecuteHost) buildPackages.argc;
+
+  postInstall = ''
+    ARGC=${if canExecuteHost then ''''${!outputBin}/bin/argc'' else "argc"}
+
+    installShellCompletion --cmd argc \
+      --bash <("$ARGC" --argc-completions bash) \
+      --fish <("$ARGC" --argc-completions fish) \
+      --zsh <("$ARGC" --argc-completions zsh)
+  '';
+
+  disallowedReferences = lib.optional (!canExecuteHost) buildPackages.argc;
+
+  passthru = {
+    tests = {
+      cross =
+        (
+          if stdenv.hostPlatform.isDarwin then
+            if stdenv.hostPlatform.isAarch64 then pkgsCross.x86_64-darwin else pkgsCross.aarch64-darwin
+          else if stdenv.hostPlatform.isAarch64 then
+            pkgsCross.gnu64
+          else
+            pkgsCross.aarch64-multiplatform
+        ).argc;
+    };
+  };
+
+  meta = with lib; {
+    description = "Command-line options, arguments and sub-commands parser for bash";
+    mainProgram = "argc";
+    homepage = "https://github.com/sigoden/argc";
+    changelog = "https://github.com/sigoden/argc/releases/tag/v${version}";
+    license = with licenses; [
+      mit
+      # or
+      asl20
+    ];
+    maintainers = with maintainers; [ figsoda ];
+  };
+}
diff --git a/pkgs/by-name/ar/aribb24/package.nix b/pkgs/by-name/ar/aribb24/package.nix
new file mode 100644
index 000000000000..84e892cc616e
--- /dev/null
+++ b/pkgs/by-name/ar/aribb24/package.nix
@@ -0,0 +1,52 @@
+{
+  lib,
+  stdenv,
+  fetchFromGitLab,
+  testers,
+  gitUpdater,
+  autoconf,
+  automake,
+  libtool,
+  pkg-config,
+  libpng,
+}:
+
+stdenv.mkDerivation (finalAttrs: {
+  pname = "aribb24";
+  version = "1.0.4";
+
+  src = fetchFromGitLab {
+    domain = "code.videolan.org";
+    owner = "jeeb";
+    repo = "aribb24";
+    rev = "v${finalAttrs.version}";
+    hash = "sha256-hq3LnLACZfV+E76ZDEHGlN51fS6AqFnNReE3JlWcv9M=";
+  };
+
+  buildInputs = [
+    libpng
+  ];
+
+  nativeBuildInputs = [
+    autoconf
+    automake
+    libtool
+    pkg-config
+  ];
+
+  preConfigure = "autoreconf --install";
+
+  passthru = {
+    updateScript = gitUpdater { rev-prefix = "v"; };
+    tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
+  };
+
+  meta = with lib; {
+    description = "A library for ARIB STD-B24, decoding JIS 8 bit characters and parsing MPEG-TS stream";
+    homepage = "https://code.videolan.org/jeeb/aribb24/";
+    license = licenses.lgpl3Plus;
+    pkgConfigModules = [ "aribb24" ];
+    platforms = platforms.unix;
+    maintainers = with maintainers; [ jopejoe1 ];
+  };
+})
diff --git a/pkgs/by-name/ar/ark-pixel-font/package.nix b/pkgs/by-name/ar/ark-pixel-font/package.nix
index 15d3b4dd43f6..578552a03f13 100644
--- a/pkgs/by-name/ar/ark-pixel-font/package.nix
+++ b/pkgs/by-name/ar/ark-pixel-font/package.nix
@@ -6,13 +6,13 @@
 
 python312Packages.buildPythonPackage rec {
   pname = "ark-pixel-font";
-  version = "2024.04.05";
+  version = "2024.05.12";
 
   src = fetchFromGitHub {
     owner = "TakWolf";
-    repo = pname;
-    rev = version;
-    hash = "sha256-G34cu/mSt/p8UPJt+Q1T2qy6d9LGgT1Jslt9syRz5eo=";
+    repo = "ark-pixel-font";
+    rev = "refs/tags/${version}";
+    hash = "sha256-PGhhKWHDpvOqa3vaI40wuIsAEdWGb62cN7QJeHQqiss=";
   };
 
   format = "other";
diff --git a/pkgs/by-name/as/ascii-draw/fix_palette_data_dir.patch b/pkgs/by-name/as/ascii-draw/fix_palette_data_dir.patch
deleted file mode 100644
index 64cf5af6d9b3..000000000000
--- a/pkgs/by-name/as/ascii-draw/fix_palette_data_dir.patch
+++ /dev/null
@@ -1,38 +0,0 @@
-diff --git a/src/window.py b/src/window.py
-index adc6d6d..1cb6bec 100644
---- a/src/window.py
-+++ b/src/window.py
-@@ -34,6 +34,15 @@ import unicodedata
- import emoji
- import os
- 
-+def get_data_dir():
-+    xdg_data_home = os.environ.get('XDG_DATA_HOME')
-+    if xdg_data_home and xdg_data_home.strip():
-+        data_dir = os.path.join(xdg_data_home, 'ascii-draw', 'data')
-+    else:
-+        home = os.path.expanduser("~")
-+        data_dir = os.path.join(home, '.local', 'share', 'ascii-draw', 'data')
-+    return data_dir
-+
- @Gtk.Template(resource_path='/io/github/nokse22/asciidraw/ui/window.ui')
- class AsciiDrawWindow(Adw.ApplicationWindow):
-     __gtype_name__ = 'AsciiDrawWindow'
-@@ -266,7 +275,7 @@ class AsciiDrawWindow(Adw.ApplicationWindow):
- 
-         self.palettes = []
- 
--        directory_path = "/var/data/palettes"
-+        directory_path = f"{get_data_dir()}/palettes"
-         os.makedirs(directory_path, exist_ok=True)
- 
-         for filename in os.listdir(directory_path):
-@@ -316,7 +325,7 @@ class AsciiDrawWindow(Adw.ApplicationWindow):
-             self.char_carousel_go_next.set_sensitive(True)
- 
-     def save_new_palette(self, palette):
--        with open(f"/var/data/palettes/{palette.name}.txt", 'w') as file:
-+        with open(f"{get_data_dir()}/palettes/{palette.name}.txt", 'w') as file:
-             file.write(palette.chars)
- 
-     @Gtk.Template.Callback("char_pages_go_back")
diff --git a/pkgs/by-name/as/ascii-draw/package.nix b/pkgs/by-name/as/ascii-draw/package.nix
index 838eb0118371..801ec0da0d56 100644
--- a/pkgs/by-name/as/ascii-draw/package.nix
+++ b/pkgs/by-name/as/ascii-draw/package.nix
@@ -12,20 +12,16 @@
 
 python3Packages.buildPythonApplication rec {
   pname = "ascii-draw";
-  version = "0.3.0";
+  version = "0.3.2";
   pyproject = false;
 
   src = fetchFromGitHub {
     owner = "Nokse22";
     repo = "ascii-draw";
     rev = "v${version}";
-    hash = "sha256-vI+j8OuQ3b6La0+7wWeoUtBal24dazlN/T0Bng5TgMo=";
+    hash = "sha256-opjYgLfHfKSbipB1HRxfBkgp+9c4yqIL1fiUOcFmCMc=";
   };
 
-  # Temporary fix for autosaving to flatpak directory
-  # https://github.com/Nokse22/ascii-draw/issues/31
-  patches = [ ./fix_palette_data_dir.patch ];
-
   nativeBuildInputs = [
     meson
     ninja
diff --git a/pkgs/by-name/as/asm-lsp/package.nix b/pkgs/by-name/as/asm-lsp/package.nix
index b68123dd42b1..9a44f68ca64f 100644
--- a/pkgs/by-name/as/asm-lsp/package.nix
+++ b/pkgs/by-name/as/asm-lsp/package.nix
@@ -6,7 +6,7 @@
 }:
 let
   pname = "asm-lsp";
-  version = "0.4.2";
+  version = "0.6.0";
 in
 rustPlatform.buildRustPackage {
   inherit pname version;
@@ -15,7 +15,7 @@ rustPlatform.buildRustPackage {
     owner = "bergercookie";
     repo = "asm-lsp";
     rev = "v${version}";
-    hash = "sha256-EGgYOU6y23ULjnMGNjYhgF0JMPgvRuQ4UOWqwJxhBpU=";
+    hash = "sha256-vOkuTJFP2zme8S+u5j1TXt6BXnwtASRVH4Dre9g1dtk=";
   };
 
   nativeBuildInputs = [
@@ -26,7 +26,12 @@ rustPlatform.buildRustPackage {
     openssl
   ];
 
-  cargoHash = "sha256-x8Cj39Wki+pdoNIO8QPGK29KFJrHtDMoZJIXFEldno0=";
+  cargoHash = "sha256-lmOnBcLWfTCuQcPiRmPoFD/QvagfkApFP6/h1ot7atU=";
+
+  # tests expect ~/.cache/asm-lsp to be writable
+  preCheck = ''
+    export HOME=$(mktemp -d)
+  '';
 
   meta = {
     description = "Language server for NASM/GAS/GO Assembly";
diff --git a/pkgs/development/compilers/assemblyscript/default.nix b/pkgs/by-name/as/assemblyscript/package.nix
index b0fd15d47941..b0fd15d47941 100644
--- a/pkgs/development/compilers/assemblyscript/default.nix
+++ b/pkgs/by-name/as/assemblyscript/package.nix
diff --git a/pkgs/by-name/as/ast-grep/package.nix b/pkgs/by-name/as/ast-grep/package.nix
index 153c14462963..4e001f3445a6 100644
--- a/pkgs/by-name/as/ast-grep/package.nix
+++ b/pkgs/by-name/as/ast-grep/package.nix
@@ -7,16 +7,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "ast-grep";
-  version = "0.21.1";
+  version = "0.22.3";
 
   src = fetchFromGitHub {
     owner = "ast-grep";
     repo = "ast-grep";
     rev = version;
-    hash = "sha256-hR6DPkApHDlg91O040s+3FL2mEM3FH61pnyCBwwE6tw=";
+    hash = "sha256-Q2xVB9GZBtXx67rKpeTpy1llXCBpgn9vdZmYkQVHtp8=";
   };
 
-  cargoHash = "sha256-Iqq7F8PCrNhFGvrfbYQn3mdOwiokCmTKCaXjOHvD8V0=";
+  cargoHash = "sha256-0N98WvNLlflNCu7I2nHDSgFHDmbMVqwu4YkqA9GNSwM=";
 
   nativeBuildInputs = [ installShellFiles ];
 
diff --git a/pkgs/by-name/as/async-profiler/package.nix b/pkgs/by-name/as/async-profiler/package.nix
new file mode 100644
index 000000000000..4e7f2c1761db
--- /dev/null
+++ b/pkgs/by-name/as/async-profiler/package.nix
@@ -0,0 +1,46 @@
+{
+  lib,
+  stdenv,
+  fetchFromGitHub,
+  jdk,
+  makeWrapper,
+}:
+stdenv.mkDerivation rec {
+  pname = "async-profiler";
+  version = "3.0";
+
+  src = fetchFromGitHub {
+    owner = "jvm-profiling-tools";
+    repo = "async-profiler";
+    rev = "v${version}";
+    hash = "sha256-0CCJoRjRLq4LpiRD0ibzK8So9qSQymePCTYUI60Oy2k=";
+  };
+
+  nativeBuildInputs = [ makeWrapper ];
+
+  buildInputs = [ jdk ];
+
+  installPhase =
+    let
+      ext = stdenv.hostPlatform.extensions.sharedLibrary;
+    in
+    ''
+      runHook preInstall
+      install -D build/bin/asprof "$out/bin/async-profiler"
+      install -D build/lib/libasyncProfiler${ext} "$out/lib/libasyncProfiler${ext}"
+      runHook postInstall
+    '';
+
+  fixupPhase = ''
+    wrapProgram $out/bin/async-profiler --prefix PATH : ${lib.makeBinPath [ jdk ]}
+  '';
+
+  meta = with lib; {
+    description = "A low overhead sampling profiler for Java that does not suffer from Safepoint bias problem";
+    homepage = "https://github.com/jvm-profiling-tools/async-profiler";
+    license = licenses.asl20;
+    maintainers = with maintainers; [ mschuwalow ];
+    platforms = platforms.all;
+    mainProgram = "async-profiler";
+  };
+}
diff --git a/pkgs/by-name/at/atac/package.nix b/pkgs/by-name/at/atac/package.nix
index 69ac822d84ee..abb913352199 100644
--- a/pkgs/by-name/at/atac/package.nix
+++ b/pkgs/by-name/at/atac/package.nix
@@ -9,16 +9,16 @@
 }:
 rustPlatform.buildRustPackage rec {
   pname = "atac";
-  version = "0.14.0";
+  version = "0.15.1";
 
   src = fetchFromGitHub {
     owner = "Julien-cpsn";
     repo = "ATAC";
     rev = "v${version}";
-    hash = "sha256-d5qUleQrwWWTIEDj3VvJKpINHpc0rko18if4pv5GonU=";
+    hash = "sha256-WDO6HDmjlXU4uelAJIWJN2sOJTioR7i2WzQpqg6dtKo=";
   };
 
-  cargoHash = "sha256-vlrllbcf5Y9DFwdekAHE5xtGlloKxTExXkp1LySEUK0=";
+  cargoHash = "sha256-+dBEl1qk1/3WuSypsxV4x7DEmnMxa2z0MC03IZaON3s=";
 
   nativeBuildInputs = [
     pkg-config
@@ -29,6 +29,7 @@ rustPlatform.buildRustPackage rec {
       oniguruma
     ]
     ++ lib.optionals stdenv.isDarwin [
+      darwin.apple_sdk.frameworks.AppKit
       darwin.apple_sdk.frameworks.Security
       darwin.apple_sdk.frameworks.SystemConfiguration
     ];
diff --git a/pkgs/by-name/at/atf/package.nix b/pkgs/by-name/at/atf/package.nix
new file mode 100644
index 000000000000..a9810826dc89
--- /dev/null
+++ b/pkgs/by-name/at/atf/package.nix
@@ -0,0 +1,89 @@
+{
+  lib,
+  stdenv,
+  fetchFromGitHub,
+  fetchpatch,
+  autoreconfHook,
+  kyua,
+  pkg-config,
+  gitUpdater,
+}:
+
+stdenv.mkDerivation (finalAttrs: {
+  pname = "atf";
+  version = "0.21-unstable-2021-09-01"; # Match the commit used in FreeBSD’s port.
+
+  src = fetchFromGitHub {
+    owner = "freebsd";
+    repo = "atf";
+    rev = "55c21b2c5fb189bbdfccb2b297bfa89236502542";
+    hash = "sha256-u0YBPcoIBvqBVaytaO9feBaRnQygtzEPGJV0ItI1Vco=";
+  };
+
+  patches = [
+    # Fixes use after free that causes failures in Kyua’s test suite.
+    # https://github.com/freebsd/atf/pull/57
+    # https://github.com/freebsd/kyua/issues/223
+    (fetchpatch {
+      name = "fix-use-after-free.patch";
+      url = "https://github.com/freebsd/atf/commit/fb22f3837bcfdce5ce8b3c0e18af131bb6902a02.patch";
+      hash = "sha256-p4L3sxSYfMSzwKrUDlEZpoJydbaK3Hcbvn90KlPHkic=";
+    })
+  ];
+
+  postPatch =
+    lib.optionalString finalAttrs.doInstallCheck ''
+      # https://github.com/freebsd/atf/issues/61
+      substituteInPlace atf-c/check_test.c \
+        --replace-fail 'ATF_TP_ADD_TC(tp, build_cpp)' ""
+      substituteInPlace atf-c++/check_test.cpp \
+        --replace-fail 'ATF_ADD_TEST_CASE(tcs, build_cpp);' ""
+      # Can’t find `c_helpers` in the work folder.
+      substituteInPlace test-programs/Kyuafile \
+        --replace-fail 'atf_test_program{name="srcdir_test"}' ""
+    ''
+    # These tests fail on Darwin.
+    + lib.optionalString (finalAttrs.doInstallCheck && stdenv.isDarwin) ''
+      substituteInPlace atf-c/detail/process_test.c \
+        --replace-fail 'ATF_TP_ADD_TC(tp, status_coredump);' ""
+    ''
+    # This test fails on Linux.
+    + lib.optionalString (finalAttrs.doInstallCheck && stdenv.isLinux) ''
+      substituteInPlace atf-c/detail/fs_test.c \
+        --replace-fail 'ATF_TP_ADD_TC(tp, eaccess);' ""
+    '';
+
+  strictDeps = true;
+
+  nativeBuildInputs = [ autoreconfHook ];
+
+  enableParallelBuilding = true;
+
+  makeFlags = [
+    # ATF isn’t compatible with C++17, which is the default on current clang and GCC.
+    "CXXFLAGS=-std=c++11"
+  ];
+
+  doInstallCheck = true;
+
+  nativeInstallCheckInputs = [ kyua ];
+
+  installCheckPhase = ''
+    runHook preInstallCheck
+    HOME=$TMPDIR PATH=$out/bin:$PATH kyua test
+    runHook postInstallCheck
+  '';
+
+  passthru.updateScript = gitUpdater { rev-prefix = "atf-"; };
+
+  __structuredAttrs = true;
+
+  meta = {
+    description = "Libraries to write tests in C, C++, and shell";
+    homepage = "https://github.com/freebsd/atf/";
+    license = lib.licenses.bsd3;
+    mainProgram = "atf-sh";
+    maintainers = with lib.maintainers; [ reckenrode ];
+    platforms = lib.platforms.unix;
+  };
+})
diff --git a/pkgs/by-name/at/atlauncher/package.nix b/pkgs/by-name/at/atlauncher/package.nix
index 60345adee0df..428ffffd8836 100644
--- a/pkgs/by-name/at/atlauncher/package.nix
+++ b/pkgs/by-name/at/atlauncher/package.nix
@@ -1,12 +1,31 @@
-{ copyDesktopItems, fetchurl, jre, lib, makeDesktopItem, makeWrapper, stdenv, udev, xorg }:
+{ copyDesktopItems
+, fetchurl
+, jre
+, lib
+, makeDesktopItem
+, makeWrapper
+, stdenv
+
+, gamemodeSupport ? stdenv.isLinux
+, textToSpeechSupport ? stdenv.isLinux
+, additionalLibs ? [ ]
+
+, # dependencies
+  flite
+, gamemode
+, libglvnd
+, libpulseaudio
+, udev
+, xorg
+}:
 
 stdenv.mkDerivation (finalAttrs: {
   pname = "atlauncher";
-  version = "3.4.36.3";
+  version = "3.4.36.4";
 
   src = fetchurl {
     url = "https://github.com/ATLauncher/ATLauncher/releases/download/v${finalAttrs.version}/ATLauncher-${finalAttrs.version}.jar";
-    hash = "sha256-qeH3W7G6xxlIrLK04A3GTKtZsvmii6acWY4clPIL8Rk=";
+    hash = "sha256-7l4D99rTOP+oyaa+O8GPGugr3Nv8EIt6EqK1L9ttFBA=";
   };
 
   env.ICON = fetchurl {
@@ -18,23 +37,35 @@ stdenv.mkDerivation (finalAttrs: {
 
   nativeBuildInputs = [ copyDesktopItems makeWrapper ];
 
-  installPhase = ''
-    runHook preInstall
+  installPhase =
+    let
+      runtimeLibraries = [
+        libglvnd
+        libpulseaudio
+        udev
+        xorg.libXxf86vm
+      ]
+      ++ lib.optional gamemodeSupport gamemode.lib
+      ++ lib.optional textToSpeechSupport flite
+      ++ additionalLibs;
+    in
+    ''
+      runHook preInstall
 
-    mkdir -p $out/bin $out/share/java
-    cp $src $out/share/java/ATLauncher.jar
+      mkdir -p $out/bin $out/share/java
+      cp $src $out/share/java/ATLauncher.jar
 
-    makeWrapper ${jre}/bin/java $out/bin/atlauncher \
-      --prefix LD_LIBRARY_PATH : "${lib.makeLibraryPath [ xorg.libXxf86vm udev ]}" \
-      --add-flags "-jar $out/share/java/ATLauncher.jar" \
-      --add-flags "--working-dir \"\''${XDG_DATA_HOME:-\$HOME/.local/share}/ATLauncher\"" \
-      --add-flags "--no-launcher-update"
+      makeWrapper ${jre}/bin/java $out/bin/atlauncher \
+        --prefix LD_LIBRARY_PATH : "${lib.makeLibraryPath runtimeLibraries}" \
+        --add-flags "-jar $out/share/java/ATLauncher.jar" \
+        --add-flags "--working-dir \"\''${XDG_DATA_HOME:-\$HOME/.local/share}/ATLauncher\"" \
+        --add-flags "--no-launcher-update"
 
-    mkdir -p $out/share/icons/hicolor/scalable/apps
-    cp $ICON $out/share/icons/hicolor/scalable/apps/atlauncher.svg
+      mkdir -p $out/share/icons/hicolor/scalable/apps
+      cp $ICON $out/share/icons/hicolor/scalable/apps/atlauncher.svg
 
-    runHook postInstall
-  '';
+      runHook postInstall
+    '';
 
   desktopItems = [
     (makeDesktopItem {
diff --git a/pkgs/by-name/au/audio-sharing/package.nix b/pkgs/by-name/au/audio-sharing/package.nix
index d773720efd40..d1a4ec2b0134 100644
--- a/pkgs/by-name/au/audio-sharing/package.nix
+++ b/pkgs/by-name/au/audio-sharing/package.nix
@@ -21,20 +21,20 @@
 }:
 stdenv.mkDerivation (finalAttrs: {
   pname = "audio-sharing";
-  version = "0.2.2";
+  version = "0.2.4";
 
   src = fetchFromGitLab {
     domain = "gitlab.gnome.org";
     owner = "World";
     repo = "AudioSharing";
     rev = finalAttrs.version;
-    hash = "sha256-ejNktgN9tfi4TzWDQJnESGcBkpvLVH34sukTFCBfo3U=";
+    hash = "sha256-yUMiy5DaCPfCmBIGCXpqtvSSmQl5wo6vsLdW7Tt/Wfo=";
   };
 
   cargoDeps = rustPlatform.fetchCargoTarball {
     inherit (finalAttrs) src;
     name = "${finalAttrs.pname}-${finalAttrs.version}";
-    hash = "sha256-c19DxHF4HFN0qTqC2CNzwko79uVeLeyrrXAvuyxeiOQ=";
+    hash = "sha256-FfjSttXf6WF2w59CP6L/+BIuuXp2yKPTku7FMvdIHg0=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/by-name/au/autosuspend/package.nix b/pkgs/by-name/au/autosuspend/package.nix
index a39d3ec782c1..63f4c07c289f 100644
--- a/pkgs/by-name/au/autosuspend/package.nix
+++ b/pkgs/by-name/au/autosuspend/package.nix
@@ -7,15 +7,15 @@
 
 python3.pkgs.buildPythonApplication rec {
   pname = "autosuspend";
-  version = "6.1.1";
+  version = "7.0.0";
 
-  disabled = python3.pythonOlder "3.8";
+  disabled = python3.pythonOlder "3.10";
 
   src = fetchFromGitHub {
     owner = "languitar";
     repo = pname;
     rev = "refs/tags/v${version}";
-    hash = "sha256-LGU/yhwuc6BuctCibm0AaRheQkuSIgEVXzcWQHCJ/8Y=";
+    hash = "sha256-AJ0ZWRxqhBJEics6XnIVWyf7pJI8MphQU4LRqSYYNSQ=";
   };
 
   postPatch = ''
diff --git a/pkgs/by-name/ay/ayatana-indicator-datetime/package.nix b/pkgs/by-name/ay/ayatana-indicator-datetime/package.nix
index 7888fc3b9ffe..06ba4efc1386 100644
--- a/pkgs/by-name/ay/ayatana-indicator-datetime/package.nix
+++ b/pkgs/by-name/ay/ayatana-indicator-datetime/package.nix
@@ -23,7 +23,7 @@
 , python3
 , systemd
 , tzdata
-, wrapGAppsHook
+, wrapGAppsHook3
 }:
 
 let
@@ -58,7 +58,7 @@ stdenv.mkDerivation (finalAttrs: {
     glib # for schema hook
     intltool
     pkg-config
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
diff --git a/pkgs/by-name/ay/ayatana-indicator-messages/package.nix b/pkgs/by-name/ay/ayatana-indicator-messages/package.nix
index c630b1b4e4ad..7973291d3db1 100644
--- a/pkgs/by-name/ay/ayatana-indicator-messages/package.nix
+++ b/pkgs/by-name/ay/ayatana-indicator-messages/package.nix
@@ -20,7 +20,7 @@
 , python3
 , systemd
 , vala
-, wrapGAppsHook
+, wrapGAppsHook3
 }:
 
 stdenv.mkDerivation (finalAttrs: {
@@ -50,6 +50,10 @@ stdenv.mkDerivation (finalAttrs: {
     substituteInPlace libmessaging-menu/messaging-menu.pc.in \
       --replace "\''${exec_prefix}/@CMAKE_INSTALL_LIBDIR@" '@CMAKE_INSTALL_FULL_LIBDIR@' \
       --replace "\''${prefix}/@CMAKE_INSTALL_INCLUDEDIR@" '@CMAKE_INSTALL_FULL_INCLUDEDIR@'
+
+    # Fix tests with gobject-introspection 1.80 not installing GLib introspection data
+    substituteInPlace tests/CMakeLists.txt \
+      --replace-fail 'GI_TYPELIB_PATH=\"' 'GI_TYPELIB_PATH=\"$GI_TYPELIB_PATH$\{GI_TYPELIB_PATH\:+\:\}'
   '' + lib.optionalString (!withDocumentation) ''
     sed -i CMakeLists.txt \
       '/add_subdirectory(doc)/d'
@@ -63,7 +67,7 @@ stdenv.mkDerivation (finalAttrs: {
     intltool
     pkg-config
     vala
-    wrapGAppsHook
+    wrapGAppsHook3
   ] ++ lib.optionals withDocumentation [
     docbook_xsl
     docbook_xml_dtd_45
diff --git a/pkgs/by-name/ay/ayatana-indicator-session/package.nix b/pkgs/by-name/ay/ayatana-indicator-session/package.nix
index 4b3d33ea81be..d2a5860098b4 100644
--- a/pkgs/by-name/ay/ayatana-indicator-session/package.nix
+++ b/pkgs/by-name/ay/ayatana-indicator-session/package.nix
@@ -16,7 +16,7 @@
 , mate
 , pkg-config
 , systemd
-, wrapGAppsHook
+, wrapGAppsHook3
 }:
 
 stdenv.mkDerivation (finalAttrs: {
@@ -43,7 +43,7 @@ stdenv.mkDerivation (finalAttrs: {
     cmake
     intltool
     pkg-config
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
diff --git a/pkgs/by-name/ba/backgroundremover/package.nix b/pkgs/by-name/ba/backgroundremover/package.nix
index e6303bb377b7..67c2f2eaa6a8 100644
--- a/pkgs/by-name/ba/backgroundremover/package.nix
+++ b/pkgs/by-name/ba/backgroundremover/package.nix
@@ -3,20 +3,21 @@
 , runCommand
 , fetchFromGitHub
 , fetchurl
+, gitUpdater
 }:
 
 let
   p = python3.pkgs;
   self = p.buildPythonApplication rec {
     pname = "backgroundremover";
-    version = "0.2.6";
+    version = "0.2.8";
     pyproject = true;
 
     src = fetchFromGitHub {
       owner = "nadermx";
       repo = "backgroundremover";
       rev = "v${version}";
-      hash = "sha256-dDOo7NPwvdfV+ae2oMUytCGC+2HF6xUI7dyKk2we23w=";
+      hash = "sha256-LjVT4j0OzfbVSQgU0z/gzRTLm7N0RQRrfxtTugWwOxs=";
     };
 
     models = runCommand "background-remover-models" {} ''
@@ -31,7 +32,9 @@ let
         --replace 'os.path.expanduser(os.path.join("~", ".u2net", model_name + ".pth"))' "os.path.join(\"$models\", model_name + \".pth\")"
     '';
 
-    nativeBuildInputs = [ p.setuptools p.wheel ];
+    nativeBuildInputs = [ p.setuptools p.wheel p.pythonRelaxDepsHook ];
+
+    pythonRelaxDeps = [ "pillow" "torchvision" ];
 
     propagatedBuildInputs = [
       p.certifi
@@ -76,6 +79,7 @@ let
           backgroundremover -i ${demoImage} -o $out
         '';
       };
+      updateScript = gitUpdater { rev-prefix = "v"; };
     };
 
     doCheck = false; # no tests
diff --git a/pkgs/by-name/ba/badkeys/package.nix b/pkgs/by-name/ba/badkeys/package.nix
new file mode 100644
index 000000000000..11a7aec3b144
--- /dev/null
+++ b/pkgs/by-name/ba/badkeys/package.nix
@@ -0,0 +1,45 @@
+{
+  lib,
+  fetchFromGitHub,
+  python3Packages,
+}:
+python3Packages.buildPythonApplication rec {
+  pname = "badkeys";
+  version = "0.0.10";
+  pyproject = true;
+
+  src = fetchFromGitHub {
+    owner = "badkeys";
+    repo = "badkeys";
+    rev = "v${version}";
+    hash = "sha256-4vIPOKU/R+wASEx4OQHjtP6mJSKJDtPgQB968vuT24Y=";
+  };
+
+  build-system = with python3Packages; [
+    setuptools
+    setuptools-scm
+  ];
+
+  dependencies = with python3Packages; [
+    cryptography
+    gmpy2
+  ];
+
+  optional-dependencies = with python3Packages; [
+    dnspython
+    paramiko
+  ];
+
+  nativeCheckInputs = with python3Packages; [ pytestCheckHook ];
+
+  pythonImportsCheck = [ "badkeys" ];
+
+  meta = {
+    description = "Tool to find common vulnerabilities in cryptographic public keys";
+    homepage = "https://badkeys.info/";
+    changelog = "https://github.com/badkeys/badkeys/releases/tag/${src.rev}";
+    mainProgram = "badkeys";
+    license = lib.licenses.mit;
+    maintainers = with lib.maintainers; [ getchoo ];
+  };
+}
diff --git a/pkgs/os-specific/linux/bcc/absolute-ausyscall.patch b/pkgs/by-name/bc/bcc/absolute-ausyscall.patch
index 7480e9c5d97b..7480e9c5d97b 100644
--- a/pkgs/os-specific/linux/bcc/absolute-ausyscall.patch
+++ b/pkgs/by-name/bc/bcc/absolute-ausyscall.patch
diff --git a/pkgs/os-specific/linux/bcc/fix-deadlock-detector-import.patch b/pkgs/by-name/bc/bcc/fix-deadlock-detector-import.patch
index 1c422635f4fe..1c422635f4fe 100644
--- a/pkgs/os-specific/linux/bcc/fix-deadlock-detector-import.patch
+++ b/pkgs/by-name/bc/bcc/fix-deadlock-detector-import.patch
diff --git a/pkgs/os-specific/linux/bcc/libbcc-path.patch b/pkgs/by-name/bc/bcc/libbcc-path.patch
index 187bb3aadd00..187bb3aadd00 100644
--- a/pkgs/os-specific/linux/bcc/libbcc-path.patch
+++ b/pkgs/by-name/bc/bcc/libbcc-path.patch
diff --git a/pkgs/os-specific/linux/bcc/default.nix b/pkgs/by-name/bc/bcc/package.nix
index 3cf9b26f4fdd..3cf9b26f4fdd 100644
--- a/pkgs/os-specific/linux/bcc/default.nix
+++ b/pkgs/by-name/bc/bcc/package.nix
diff --git a/pkgs/by-name/bd/bdf2ttf/package.nix b/pkgs/by-name/bd/bdf2ttf/package.nix
new file mode 100644
index 000000000000..c12100bb3662
--- /dev/null
+++ b/pkgs/by-name/bd/bdf2ttf/package.nix
@@ -0,0 +1,32 @@
+{ lib, stdenv, fetchFromGitHub }:
+
+stdenv.mkDerivation {
+  pname = "bdf2ttf";
+  version = "2.0-unstable-2016-07-03";
+
+  src = fetchFromGitHub {
+    owner = "koron";
+    repo = "bdf2ttf";
+    rev = "1baae7b70a432153e3d876966e47a78f0e572eac";
+    hash = "sha256-235BTcTaC/30yLlgo0OO2cp3YCHWa87GFJGBx5lmz6o=";
+  };
+
+  dontConfigure = true;
+
+  makeFlags = [ "gcc" ];
+
+  installPhase = ''
+    runHook preInstall
+    install -Dm755 bdf2ttf $out/bin/bdf2ttf
+    runHook postInstall
+  '';
+
+  meta = {
+    description = "Convert BDF font file to TTF (embed bitmap as is, not convert to vector)";
+    homepage = "https://github.com/koron/bdf2ttf";
+    license = lib.licenses.mit;
+    maintainers = with lib.maintainers; [ ners ];
+    platforms = lib.platforms.all;
+    broken = stdenv.isDarwin;
+  };
+}
diff --git a/pkgs/by-name/be/beekeeper-studio/package.nix b/pkgs/by-name/be/beekeeper-studio/package.nix
index f1ce5135c2ae..0a62c91c8e7e 100644
--- a/pkgs/by-name/be/beekeeper-studio/package.nix
+++ b/pkgs/by-name/be/beekeeper-studio/package.nix
@@ -7,7 +7,7 @@
 
 let
   pname = "beekeeper-studio";
-  version = "4.1.13";
+  version = "4.3.1";
 
   plat = {
     aarch64-linux = "-arm64";
@@ -15,8 +15,8 @@ let
   }.${stdenv.hostPlatform.system};
 
   hash = {
-    aarch64-linux = "sha256-8gcxYQ6ZvYC42V/vShFgalJtm8SGZRwtUfwUF9ZirBo=";
-    x86_64-linux = "sha256-Yfpm6//hhYVKX3YipzmFj3NgEsL2h3eW+9yC0yYiDgk=";
+    aarch64-linux = "sha256-7ZjyzWeu19zUX1u8t0hMu8F+1LN5/CtEotLNe/5rwPM=";
+    x86_64-linux = "sha256-vhKvOPPo/a9gwQ8FsC28dStQHI8SYzEbhdEW4elD7bU=";
   }.${stdenv.hostPlatform.system};
 
   src = fetchurl {
diff --git a/pkgs/tools/X11/bevelbar/default.nix b/pkgs/by-name/be/bevelbar/package.nix
index 7eab7a65e80a..60dfb62567bf 100644
--- a/pkgs/tools/X11/bevelbar/default.nix
+++ b/pkgs/by-name/be/bevelbar/package.nix
@@ -1,24 +1,24 @@
-{ lib,
+{
+  lib,
   stdenv,
   fetchurl,
   pkg-config,
   libX11,
   libXft,
   libXrandr,
+  gitUpdater,
 }:
 
 stdenv.mkDerivation (finalAttrs: {
   pname = "bevelbar";
-  version = "22.06";
+  version = "23.08";
 
   src = fetchurl {
     url = "https://www.uninformativ.de/git/bevelbar/archives/bevelbar-v${finalAttrs.version}.tar.gz";
-    hash = "sha256-8ceFwQFHhJ1qEXJtzoDXU0XRgudaAfsoWq7LYgGEqsM=";
+    hash = "sha256-4wMSPi9tu+z1AW2uvPefxkeT/5DYo2oJybhNnpe82QU=";
   };
 
-  nativeBuildInputs = [
-    pkg-config
-  ];
+  nativeBuildInputs = [ pkg-config ];
 
   buildInputs = [
     libX11
@@ -28,11 +28,19 @@ stdenv.mkDerivation (finalAttrs: {
 
   makeFlags = [ "prefix=$(out)" ];
 
-  meta = with lib; {
+  passthru.updateScript = gitUpdater {
+    url = "https://www.uninformativ.de/git/bevelbar.git/";
+    rev-prefix = "v";
+  };
+
+  meta = {
     homepage = "https://www.uninformativ.de/git/bevelbar/file/README.html";
     description = "X11 status bar with beveled borders";
-    license = licenses.mit;
-    maintainers = with maintainers; [ AndersonTorres neeasade ];
-    platforms = platforms.linux;
+    license = lib.licenses.mit;
+    maintainers = with lib.maintainers; [
+      AndersonTorres
+      neeasade
+    ];
+    platforms = lib.platforms.linux;
   };
 })
diff --git a/pkgs/by-name/bi/biglybt/package.nix b/pkgs/by-name/bi/biglybt/package.nix
index a4b2d2f1a346..8e0b98bdc766 100644
--- a/pkgs/by-name/bi/biglybt/package.nix
+++ b/pkgs/by-name/bi/biglybt/package.nix
@@ -3,7 +3,7 @@
   stdenv,
   fetchurl,
   jre,
-  wrapGAppsHook,
+  wrapGAppsHook3,
   nix-update-script,
 }:
 
@@ -16,7 +16,7 @@ stdenv.mkDerivation rec {
     hash = "sha256-a7g9sB3orO2m0X7qNwQ1dDygYPhs/b6kX0RDSG8Wq2U=";
   };
 
-  nativeBuildInputs = [ wrapGAppsHook ];
+  nativeBuildInputs = [ wrapGAppsHook3 ];
 
   configurePhase = ''
     runHook preConfigure
diff --git a/pkgs/by-name/bi/bitmagnet/package.nix b/pkgs/by-name/bi/bitmagnet/package.nix
index 95a7afa1bede..dcdade7632a5 100644
--- a/pkgs/by-name/bi/bitmagnet/package.nix
+++ b/pkgs/by-name/bi/bitmagnet/package.nix
@@ -6,18 +6,18 @@
 
 buildGoModule rec {
   pname = "bitmagnet";
-  version = "0.7.14";
+  version = "0.8.0";
 
   src = fetchFromGitHub {
     owner = "bitmagnet-io";
     repo = "bitmagnet";
     rev = "v${version}";
-    hash = "sha256-TaxoQdjdHw8h6w6wKBHL/CVxWFK/RG2tJ//MtUEOwfU=";
+    hash = "sha256-P5GfPRIrwLLMBRgoN6d092HiThMghEj1zcaf6BU+IWU=";
   };
 
-  vendorHash = "sha256-y9RfaAx9AQS117J3+p/Yy8Mn5In1jmZmW4IxKjeV8T8=";
+  vendorHash = "sha256-exKQTsyP7LL63WHZ8/WchLh4y0Oj9LC4lxiZTOfWARU=";
 
-  ldflags = [ "-s" "-w" ];
+  ldflags = [ "-s" "-w" "-X github.com/bitmagnet-io/bitmagnet/internal/version.GitTag=v${version}" ];
 
   passthru = {
     updateScript = nix-update-script { };
@@ -30,7 +30,7 @@ buildGoModule rec {
     '';
     homepage = "https://bitmagnet.io/";
     license = lib.licenses.mit;
-    maintainers = with lib.maintainers; [ eclairevoyant viraptor ];
+    maintainers = with lib.maintainers; [ viraptor ];
     mainProgram = "bitmagnet";
   };
 }
diff --git a/pkgs/applications/audio/blanket/default.nix b/pkgs/by-name/bl/blanket/package.nix
index 4b08f8cf223a..6171cf0f88c7 100644
--- a/pkgs/applications/audio/blanket/default.nix
+++ b/pkgs/by-name/bl/blanket/package.nix
@@ -1,31 +1,34 @@
-{ lib
-, fetchFromGitHub
-, meson
-, ninja
-, pkg-config
-, wrapGAppsHook4
-, desktop-file-utils
-, appstream-glib
-, python3Packages
-, glib
-, gtk4
-, libadwaita
-, gobject-introspection
-, gst_all_1
+{
+  lib,
+  fetchFromGitHub,
+  meson,
+  ninja,
+  pkg-config,
+  wrapGAppsHook4,
+  blueprint-compiler,
+  desktop-file-utils,
+  appstream-glib,
+  python3Packages,
+  glib,
+  gtk4,
+  libadwaita,
+  gobject-introspection,
+  gst_all_1,
 }:
 
 python3Packages.buildPythonApplication rec {
   pname = "blanket";
-  version = "0.6.0";
+  version = "0.7.0";
 
   src = fetchFromGitHub {
     owner = "rafaelmardojai";
     repo = "blanket";
-    rev = "refs/tags/${version}";
-    sha256 = "sha256-4gthT1x76IfXWkLaLMPtFS4TRlRGk5Enbu/k1jAHzwE=";
+    rev = version;
+    hash = "sha256-mY7c5i0me7mMbD8c6eGJeaZpR8XI5QVL4n3M+j15Z1c=";
   };
 
   nativeBuildInputs = [
+    blueprint-compiler
     meson
     ninja
     pkg-config
@@ -44,9 +47,7 @@ python3Packages.buildPythonApplication rec {
     gst_all_1.gst-plugins-bad
   ];
 
-  propagatedBuildInputs = with python3Packages; [
-    pygobject3
-  ];
+  propagatedBuildInputs = with python3Packages; [ pygobject3 ];
 
   format = "other";
 
@@ -56,12 +57,18 @@ python3Packages.buildPythonApplication rec {
       --replace gtk-update-icon-cache gtk4-update-icon-cache
   '';
 
-  meta = with lib; {
-    homepage = "https://github.com/rafaelmardojai/blanket";
+  dontWrapGApps = true;
+
+  preFixup = ''
+    makeWrapperArgs+=("''${gappsWrapperArgs[@]}")
+  '';
+
+  meta = {
     description = "Listen to different sounds";
+    homepage = "https://github.com/rafaelmardojai/blanket";
+    license = lib.licenses.gpl3Plus;
     mainProgram = "blanket";
-    maintainers = with maintainers; [ onny ];
-    license = licenses.gpl3Plus;
-    platforms = platforms.linux;
+    maintainers = with lib.maintainers; [ onny ];
+    platforms = lib.platforms.linux;
   };
 }
diff --git a/pkgs/by-name/bl/blockbench/package.nix b/pkgs/by-name/bl/blockbench/package.nix
index fb19793583c4..e7f019244e19 100644
--- a/pkgs/by-name/bl/blockbench/package.nix
+++ b/pkgs/by-name/bl/blockbench/package.nix
@@ -14,13 +14,13 @@ let
 in
 buildNpmPackage rec {
   pname = "blockbench";
-  version = "4.9.4";
+  version = "4.10.0";
 
   src = fetchFromGitHub {
     owner = "JannisX11";
     repo = "blockbench";
     rev = "v${version}";
-    hash = "sha256-z4hr1pQh7Jp/DB8+pxwuHvi4gvTHHVn0yrruwnXm2iM=";
+    hash = "sha256-pycRC+ZpN2P5Z66/aGA4gykLF7IwdeToRadaJSA1L9w=";
   };
 
   nativeBuildInputs = [
@@ -29,7 +29,7 @@ buildNpmPackage rec {
     copyDesktopItems
   ];
 
-  npmDepsHash = "sha256-onfz+J77jNIgdc7ALiyoXt1CdTyX/C7+bKwtpJm+H+I=";
+  npmDepsHash = "sha256-CHZdCiewkmToDHhTTvOqQfWrphOw1oGLgwSRRH3YFWE=";
 
   env.ELECTRON_SKIP_BINARY_DOWNLOAD = 1;
 
diff --git a/pkgs/by-name/bl/bluez-tools/package.nix b/pkgs/by-name/bl/bluez-tools/package.nix
index 47d381a321d7..21fb5f2b140f 100644
--- a/pkgs/by-name/bl/bluez-tools/package.nix
+++ b/pkgs/by-name/bl/bluez-tools/package.nix
@@ -10,7 +10,7 @@
 
 stdenv.mkDerivation (finalAttrs: {
   pname = "bluez-tools";
-  version = "unstable-2020-10-25";
+  version = "0-unstable-2020-10-24";
 
   src = fetchFromGitHub {
     owner = "khvzak";
diff --git a/pkgs/by-name/bl/bluez/package.nix b/pkgs/by-name/bl/bluez/package.nix
index f23f333a79da..454d677d907f 100644
--- a/pkgs/by-name/bl/bluez/package.nix
+++ b/pkgs/by-name/bl/bluez/package.nix
@@ -18,11 +18,11 @@
 
 stdenv.mkDerivation (finalAttrs: {
   pname = "bluez";
-  version = "5.72";
+  version = "5.75";
 
   src = fetchurl {
     url = "mirror://kernel/linux/bluetooth/bluez-${finalAttrs.version}.tar.xz";
-    hash = "sha256-SZ1/o0WplsG7ZQ9cZ0nh2SkRH6bs4L4OmGh/7mEkU24=";
+    hash = "sha256-mIyzxFUfbjpmdwilePXKn5P8iWUI+Y8IcJvk+KsDPC8=";
   };
 
   patches =
@@ -50,7 +50,6 @@ stdenv.mkDerivation (finalAttrs: {
   nativeBuildInputs = [
     docutils
     pkg-config
-    python3.pkgs.pygments
     python3.pkgs.wrapPython
   ];
 
@@ -138,7 +137,7 @@ stdenv.mkDerivation (finalAttrs: {
     ln -s ../libexec/bluetooth/obexd $out/sbin/obexd
 
     # Add extra configuration
-    mkdir $out/etc/bluetooth
+    rm $out/etc/bluetooth/{main,input,network}.conf
     ln -s /etc/bluetooth/main.conf $out/etc/bluetooth/main.conf
 
     # https://github.com/NixOS/nixpkgs/issues/204418
diff --git a/pkgs/by-name/bn/bngblaster/package.nix b/pkgs/by-name/bn/bngblaster/package.nix
index ae8b4c19d6df..4b1647f37161 100644
--- a/pkgs/by-name/bn/bngblaster/package.nix
+++ b/pkgs/by-name/bn/bngblaster/package.nix
@@ -13,13 +13,13 @@
 
 stdenv.mkDerivation (finalAttrs: {
   pname = "bngblaster";
-  version = "0.8.49";
+  version = "0.8.51";
 
   src = fetchFromGitHub {
     owner = "rtbrick";
     repo = "bngblaster";
     rev = finalAttrs.version;
-    hash = "sha256-ZxFC8ZGcheYWmbqaZJYkqQkxn8F3RGjCsCNeQWnLKv0=";
+    hash = "sha256-7AwLedYPOZAKQpWWuEasI9ytN66MZYKFO9SgXi7NjIo=";
   };
 
   nativeBuildInputs = [ cmake ];
diff --git a/pkgs/by-name/bo/boehmgc/package.nix b/pkgs/by-name/bo/boehmgc/package.nix
index 4402b3af57bf..213d0ec9e3e3 100644
--- a/pkgs/by-name/bo/boehmgc/package.nix
+++ b/pkgs/by-name/bo/boehmgc/package.nix
@@ -2,7 +2,7 @@
 , stdenv
 , fetchFromGitHub
 , autoreconfHook
-# doc: https://github.com/ivmai/bdwgc/blob/v8.2.4/doc/README.macros (LARGE_CONFIG)
+# doc: https://github.com/ivmai/bdwgc/blob/v8.2.6/doc/README.macros (LARGE_CONFIG)
 , enableLargeConfig ? false
 , enableMmap ? true
 , enableStatic ? false
@@ -11,13 +11,13 @@
 
 stdenv.mkDerivation (finalAttrs: {
   pname = "boehm-gc";
-  version = "8.2.4";
+  version = "8.2.6";
 
   src = fetchFromGitHub {
     owner = "ivmai";
     repo = "bdwgc";
     rev = "v${finalAttrs.version}";
-    hash = "sha256-KHijT4BBKfDvTpHpwognN+3ZXoC6JabBTFSYFyOUT9o=";
+    hash = "sha256-y6hU5qU4qO9VvQvKNH9dvReCrf3+Ih2HHbF6IS1V3WQ=";
   };
 
   outputs = [ "out" "dev" "doc" ];
@@ -42,7 +42,7 @@ stdenv.mkDerivation (finalAttrs: {
   # not fix the problem the test failure will be a reminder to
   # extend the set of versions requiring the workaround).
   makeFlags = lib.optionals (stdenv.hostPlatform.isPower64 &&
-                  finalAttrs.version == "8.2.4")
+                  finalAttrs.version == "8.2.6")
     [
       # do not use /proc primitives to track dirty bits; see:
       # https://github.com/ivmai/bdwgc/issues/479#issuecomment-1279687537
diff --git a/pkgs/by-name/bo/bombsquad/package.nix b/pkgs/by-name/bo/bombsquad/package.nix
new file mode 100644
index 000000000000..5fee9d25a6c8
--- /dev/null
+++ b/pkgs/by-name/bo/bombsquad/package.nix
@@ -0,0 +1,114 @@
+{
+  lib,
+  stdenv,
+  targetPlatform,
+  fetchurl,
+  python312,
+  SDL2,
+  libvorbis,
+  openal,
+  curl,
+  gnugrep,
+  libgcc,
+  makeWrapper,
+  makeDesktopItem,
+  autoPatchelfHook,
+  copyDesktopItems,
+  writeShellApplication,
+  commandLineArgs ? "",
+}:
+let
+  archive =
+    {
+      x86_64-linux = {
+        name = "BombSquad_Linux_x86_64";
+        hash = "sha256-VLNO0TxI/KBj8RkpGjo9Rx40f7fuV3pK2kIoKff9sRU=";
+      };
+      aarch-64-linux = {
+        name = "BombSquad_Linux_Arm64";
+        hash = "sha256-w42qhioZ9JRm004WEKzsJ3G1u09tLuPvTy8qV3DuglI=";
+      };
+    }
+    .${targetPlatform.system} or (throw "${targetPlatform.system} is unsupported.");
+in
+stdenv.mkDerivation (finalAttrs: {
+  name = "bombsquad";
+  version = "1.7.34";
+  sourceRoot = ".";
+  src = fetchurl {
+    url = "https://files.ballistica.net/bombsquad/builds/${archive.name}_${finalAttrs.version}.tar.gz";
+    inherit (archive) hash;
+  };
+
+  bombsquadIcon = fetchurl {
+    url = "https://files.ballistica.net/bombsquad/promo/BombSquadIcon.png";
+    hash = "sha256-MfOvjVmjhLejrJmdLo/goAM9DTGubnYGhlN6uF2GugA=";
+  };
+
+  nativeBuildInputs = [
+    python312
+    SDL2
+    libvorbis
+    openal
+    libgcc
+    makeWrapper
+    autoPatchelfHook
+    copyDesktopItems
+  ];
+
+  desktopItems = [
+    (makeDesktopItem {
+      name = "bombsquad";
+      genericName = "bombsquad";
+      desktopName = "BombSquad";
+      icon = "bombsquad";
+      exec = "bombsquad";
+      comment = "An explosive arcade-style party game.";
+      categories = [ "Game" ];
+    })
+  ];
+
+  installPhase = ''
+    runHook preInstall
+
+    base=${archive.name}_${finalAttrs.version}
+
+    install -m755 -D $base/bombsquad $out/bin/bombsquad
+    install -dm755 $base/ba_data $out/usr/share/bombsquad/ba_data
+    cp -r $base/ba_data $out/usr/share/bombsquad/
+
+    wrapProgram "$out/bin/bombsquad" \
+      --add-flags ${lib.escapeShellArg commandLineArgs} \
+      --add-flags "-d $out/usr/share/bombsquad"
+
+    install -Dm755 ${finalAttrs.bombsquadIcon} $out/usr/share/icons/hicolor/32x32/apps/bombsquad.png
+
+    runHook postInstall
+  '';
+
+  passthru.updateScript = lib.getExe (writeShellApplication {
+    name = "bombsquad-versionLister";
+    runtimeInputs = [
+      curl
+      gnugrep
+    ];
+    text = ''
+      curl -sL "https://files.ballistica.net/bombsquad/builds/CHANGELOG.md" \
+          | grep -oP '^### \K\d+\.\d+\.\d+' \
+          | head -n 1
+    '';
+  });
+
+  meta = {
+    description = "A free, multiplayer, arcade-style game for up to eight players that combines elements of fighting games and first-person shooters (FPS)";
+    homepage = "https://ballistica.net";
+    changelog = "https://ballistica.net/downloads?display=changelog";
+    license = with lib.licenses; [
+      mit
+      unfree
+    ];
+    maintainers = with lib.maintainers; [ syedahkam ];
+    mainProgram = "bombsquad";
+    platforms = lib.platforms.linux;
+  };
+})
diff --git a/pkgs/by-name/bo/boogie/package.nix b/pkgs/by-name/bo/boogie/package.nix
index 784a21cbd82c..2961632b8828 100644
--- a/pkgs/by-name/bo/boogie/package.nix
+++ b/pkgs/by-name/bo/boogie/package.nix
@@ -2,13 +2,13 @@
 
 buildDotnetModule rec {
   pname = "Boogie";
-  version = "3.1.4";
+  version = "3.1.5";
 
   src = fetchFromGitHub {
     owner = "boogie-org";
     repo = "boogie";
     rev = "v${version}";
-    sha256 = "sha256-XKggNmyhY3ZwbmMvi78MPz36iulW1QPJRENW/LGgdts=";
+    sha256 = "sha256-/6x4NzlSJ2uswVlfFpevXaQxUxPnh3KvnbPIb8SFX9E=";
   };
 
   projectFile = [ "Source/Boogie.sln" ];
diff --git a/pkgs/by-name/bo/boxbuddy/package.nix b/pkgs/by-name/bo/boxbuddy/package.nix
index 9503bf85a9c4..9d94d80f7516 100644
--- a/pkgs/by-name/bo/boxbuddy/package.nix
+++ b/pkgs/by-name/bo/boxbuddy/package.nix
@@ -9,16 +9,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "boxbuddy";
-  version = "2.2.2";
+  version = "2.2.3";
 
   src = fetchFromGitHub {
     owner = "Dvlv";
     repo = "BoxBuddyRS";
     rev = version;
-    hash = "sha256-y3QfNOaeeZ4Vvby4SkyVgTCL8qIYvXpcK1c8ofzjrj0=";
+    hash = "sha256-b7b5IWo2REr0HBfsKbnFYcReEQG5SfuGDa9KSKIC3t0=";
   };
 
-  cargoHash = "sha256-53hndNIcGtU8Uxnyh8y5v+0wURflNzlzwuyoh+HUXD4=";
+  cargoHash = "sha256-h+pDjS+VtvfiaWMQjpFHBBJ/8bZ0SRgayRmx4vg96Jw=";
 
   # The software assumes it is installed either in flatpak or in the home directory
   # so the xdg data path needs to be patched here
diff --git a/pkgs/os-specific/linux/bpftrace/default.nix b/pkgs/by-name/bp/bpftrace/package.nix
index 068f4532451b..068f4532451b 100644
--- a/pkgs/os-specific/linux/bpftrace/default.nix
+++ b/pkgs/by-name/bp/bpftrace/package.nix
diff --git a/pkgs/by-name/br/bruno/package.nix b/pkgs/by-name/br/bruno/package.nix
index 9f9d962743d7..3e9cf6b51fdc 100644
--- a/pkgs/by-name/br/bruno/package.nix
+++ b/pkgs/by-name/br/bruno/package.nix
@@ -27,20 +27,20 @@ let
 in
 buildNpmPackage' rec {
   pname = "bruno";
-  version = "1.16.0";
+  version = "1.17.0";
 
   src = fetchFromGitHub {
     owner = "usebruno";
     repo = "bruno";
     rev = "v${version}";
-    hash = "sha256-nhs44W7cOREdULdXFNZpFGeeZeVTGUffKOBhtL4zAaw=";
+    hash = "sha256-z4KL6CX1jtuC4lxqYA6Mg1zPSc9/OpRb530jPIQK3Is=";
 
     postFetch = ''
       ${lib.getExe npm-lockfile-fix} $out/package-lock.json
     '';
   };
 
-  npmDepsHash = "sha256-p4rBEOK9zKGO1q3SCKpfdX3EPMkYHRvn9UnGBhsksSE=";
+  npmDepsHash = "sha256-NIf7aMDAeE39+putw/7GTYODIdVmjJIvIwnL5O+sBmI=";
   npmFlags = [ "--legacy-peer-deps" ];
 
   nativeBuildInputs = [
diff --git a/pkgs/by-name/bt/btrfs-auto-snapshot/package.nix b/pkgs/by-name/bt/btrfs-auto-snapshot/package.nix
new file mode 100644
index 000000000000..7392a0c5809d
--- /dev/null
+++ b/pkgs/by-name/bt/btrfs-auto-snapshot/package.nix
@@ -0,0 +1,75 @@
+{
+  lib,
+  stdenv,
+  fetchFromGitHub,
+  makeWrapper,
+  coreutils,
+  getopt,
+  gnugrep,
+  gnused,
+  gawk,
+  btrfs-progs,
+  syslogSupport ? true,
+  util-linux ? null,
+}:
+assert syslogSupport -> util-linux != null;
+stdenv.mkDerivation rec {
+  version = "2.0.4";
+  pname = "btrfs-auto-snapshot";
+
+  src = fetchFromGitHub {
+    owner = "hunleyd";
+    repo = pname;
+    rev = "v${version}";
+    hash = "sha256-QpuwkGaYAkpu5hYyb360Mr5tHsZc2LzMlKtpS8CyyhI=";
+  };
+
+  dontBuild = true;
+
+  nativeBuildInputs = [ makeWrapper ];
+
+  installPhase = ''
+    install -Dm755 btrfs-auto-snapshot $out/bin/btrfs-auto-snapshot
+  '';
+
+  wrapperPath =
+    with lib;
+    makeBinPath (
+      [
+        coreutils
+        getopt
+        gnugrep
+        gnused
+        gawk
+        btrfs-progs
+      ]
+      ++ optional syslogSupport util-linux
+    );
+
+  postFixup = ''
+    wrapProgram $out/bin/btrfs-auto-snapshot \
+      --prefix PATH : "${wrapperPath}"
+  '';
+
+  meta = with lib; {
+    description = "BTRFS Automatic Snapshot Service for Linux";
+    homepage = "https://github.com/hunleyd/btrfs-auto-snapshot";
+    license = licenses.gpl2;
+    mainProgram = "btrfs-auto-snapshot";
+    maintainers = with maintainers; [ motiejus ];
+    platforms = platforms.linux;
+
+    longDescription = ''
+      btrfs-auto-snapshot is a Bash script designed to bring as much of the
+      functionality of the wonderful ZFS snapshot tool zfs-auto-snapshot to
+      BTRFS as possible. Designed to run from cron (using
+      /etc/cron.{daily,hourly,weekly}) it automatically creates a snapshot of
+      the specified BTRFS filesystem (or, optionally, all of them) and then
+      automatically purges the oldest snapshots of that type (hourly, daily, et
+      al) based on a user-defined retention policy.
+
+      Snapshots are stored in a '.btrfs' directory at the root of the BTRFS
+      filesystem being snapped and are read-only by default.
+    '';
+  };
+}
diff --git a/pkgs/by-name/bu/buckle/package.nix b/pkgs/by-name/bu/buckle/package.nix
index bc34858d5291..85c23496baf3 100644
--- a/pkgs/by-name/bu/buckle/package.nix
+++ b/pkgs/by-name/bu/buckle/package.nix
@@ -1,4 +1,10 @@
-{ lib, fetchFromGitHub, rustPlatform }:
+{
+  lib,
+  stdenv,
+  fetchFromGitHub,
+  rustPlatform,
+  darwin,
+}:
 
 rustPlatform.buildRustPackage rec {
   pname = "buckle";
@@ -12,6 +18,11 @@ rustPlatform.buildRustPackage rec {
     sha256 = "sha256-eWhcDzw+6I5N0dse5avwhcQ/y6YZ6b3QKyBwWBrA/xo=";
   };
 
+  buildInputs = lib.optionals stdenv.isDarwin [
+    darwin.apple_sdk.frameworks.Security
+    darwin.apple_sdk.frameworks.SystemConfiguration
+  ];
+
   checkFlags = [
     # Both tests access the network.
     "--skip=test_buck2_latest"
diff --git a/pkgs/by-name/bu/bugstalker/package.nix b/pkgs/by-name/bu/bugstalker/package.nix
new file mode 100644
index 000000000000..ccbf397e71d9
--- /dev/null
+++ b/pkgs/by-name/bu/bugstalker/package.nix
@@ -0,0 +1,104 @@
+{ lib
+, rustPlatform
+, fetchFromGitHub
+, pkg-config
+, libunwind
+}:
+
+rustPlatform.buildRustPackage rec {
+  pname = "bugstalker";
+  version = "0.1.4";
+
+  src = fetchFromGitHub {
+    owner = "godzie44";
+    repo = "BugStalker";
+    rev = "v${version}";
+    hash = "sha256-16bmvz6/t8H8Sx/32l+fp3QqP5lwi0o1Q9KqDHqF22U=";
+  };
+
+  cargoHash = "sha256-kp0GZ0cM57BMpH/8lhxevnBuJhUSH0rtxP4B/9fXYiU=";
+
+  buildInputs = [ libunwind ];
+
+  nativeBuildInputs = [ pkg-config ];
+
+  # Tests which require access to example source code fail in the sandbox. I
+  # haven't managed to figure out how to fix this.
+  checkFlags = [
+    "--skip=breakpoints::test_breakpoint_at_fn_with_monomorphization"
+    "--skip=breakpoints::test_breakpoint_at_line_with_monomorphization"
+    "--skip=breakpoints::test_brkpt_on_function"
+    "--skip=breakpoints::test_brkpt_on_function_name_collision"
+    "--skip=breakpoints::test_brkpt_on_line"
+    "--skip=breakpoints::test_brkpt_on_line2"
+    "--skip=breakpoints::test_brkpt_on_line_collision"
+    "--skip=breakpoints::test_debugee_run"
+    "--skip=breakpoints::test_deferred_breakpoint"
+    "--skip=breakpoints::test_multiple_brkpt_on_addr"
+    "--skip=breakpoints::test_set_breakpoint_idempotence"
+    "--skip=io::test_backtrace"
+    "--skip=io::test_read_register_write"
+    "--skip=io::test_read_value_u64"
+    "--skip=multithreaded::test_multithreaded_app_running"
+    "--skip=multithreaded::test_multithreaded_backtrace"
+    "--skip=multithreaded::test_multithreaded_breakpoints"
+    "--skip=multithreaded::test_multithreaded_trace"
+    "--skip=signal::test_signal_stop_multi_thread"
+    "--skip=signal::test_signal_stop_multi_thread_multiple_signal"
+    "--skip=signal::test_signal_stop_single_thread"
+    "--skip=signal::test_transparent_signals"
+    "--skip=steps::test_step_into"
+    "--skip=steps::test_step_into_recursion"
+    "--skip=steps::test_step_out"
+    "--skip=steps::test_step_over"
+    "--skip=steps::test_step_over_inline_code"
+    "--skip=steps::test_step_over_on_fn_decl"
+    "--skip=symbol::test_symbol"
+    "--skip=test_debugger_disassembler"
+    "--skip=test_debugger_graceful_shutdown"
+    "--skip=test_debugger_graceful_shutdown_multithread"
+    "--skip=test_frame_cfa"
+    "--skip=test_registers"
+    "--skip=variables::test_arguments"
+    "--skip=variables::test_btree_map"
+    "--skip=variables::test_cast_pointers"
+    "--skip=variables::test_cell"
+    "--skip=variables::test_circular_ref_types"
+    "--skip=variables::test_lexical_blocks"
+    "--skip=variables::test_read_array"
+    "--skip=variables::test_read_atomic"
+    "--skip=variables::test_read_btree_set"
+    "--skip=variables::test_read_closures"
+    "--skip=variables::test_read_enum"
+    "--skip=variables::test_read_hashmap"
+    "--skip=variables::test_read_hashset"
+    "--skip=variables::test_read_only_local_variables"
+    "--skip=variables::test_read_pointers"
+    "--skip=variables::test_read_scalar_variables"
+    "--skip=variables::test_read_scalar_variables_at_place"
+    "--skip=variables::test_read_static_in_fn_variable"
+    "--skip=variables::test_read_static_variables"
+    "--skip=variables::test_read_static_variables_different_modules"
+    "--skip=variables::test_read_strings"
+    "--skip=variables::test_read_struct"
+    "--skip=variables::test_read_tls_variables"
+    "--skip=variables::test_read_type_alias"
+    "--skip=variables::test_read_union"
+    "--skip=variables::test_read_uuid"
+    "--skip=variables::test_read_vec_and_slice"
+    "--skip=variables::test_read_vec_deque"
+    "--skip=variables::test_shared_ptr"
+    "--skip=variables::test_slice_operator"
+    "--skip=variables::test_type_parameters"
+    "--skip=variables::test_zst_types"
+  ];
+
+  meta = {
+    description = "Rust debugger for Linux x86-64";
+    homepage = "https://github.com/godzie44/BugStalker";
+    license = lib.licenses.mit;
+    maintainers = with lib.maintainers; [ jacg ];
+    mainProgram = "bs";
+    platforms = [ "x86_64-linux" ];
+  };
+}
diff --git a/pkgs/by-name/bu/bustle/package.nix b/pkgs/by-name/bu/bustle/package.nix
new file mode 100644
index 000000000000..1e57c9122f8a
--- /dev/null
+++ b/pkgs/by-name/bu/bustle/package.nix
@@ -0,0 +1,61 @@
+{ lib
+, stdenv
+, fetchFromGitLab
+, cargo
+, meson
+, ninja
+, pkg-config
+, desktop-file-utils
+, rustPlatform
+, rustc
+, wrapGAppsHook4
+, glib
+, gtk4
+, libadwaita
+}:
+
+stdenv.mkDerivation (finalAttrs: {
+  pname = "bustle";
+  version = "0.9.2";
+
+  src = fetchFromGitLab {
+    domain = "gitlab.gnome.org";
+    owner = "World";
+    repo = "bustle";
+    rev = finalAttrs.version;
+    hash = "sha256-/B1rY8epcP0OFv+kVgv4Jx6x/oK3XpNnZcpSGvdIPx0=";
+  };
+
+  cargoDeps = rustPlatform.fetchCargoTarball {
+    inherit (finalAttrs) src;
+    name = "bustle-${finalAttrs.version}";
+    hash = "sha256-r29Z+6P+yuCpOBUE3vkESd15lcGXs5+ZTBiQ9nW6DJ4=";
+  };
+
+  nativeBuildInputs = [
+    cargo
+    meson
+    ninja
+    pkg-config
+    desktop-file-utils
+    rustPlatform.cargoSetupHook
+    rustc
+    wrapGAppsHook4
+    glib
+  ];
+
+  buildInputs = [
+    glib
+    gtk4
+    libadwaita
+  ];
+
+  meta = with lib; {
+    description = "Graphical D-Bus message analyser and profiler";
+    homepage = "https://gitlab.gnome.org/World/bustle";
+    license = licenses.lgpl21Plus;
+    maintainers = with maintainers; [ jtojnar ];
+    mainProgram = "bustle";
+    platforms = platforms.all;
+  };
+})
diff --git a/pkgs/by-name/bu/buttermanager/package.nix b/pkgs/by-name/bu/buttermanager/package.nix
index fe738b371219..80c3dd4e3084 100644
--- a/pkgs/by-name/bu/buttermanager/package.nix
+++ b/pkgs/by-name/bu/buttermanager/package.nix
@@ -1,7 +1,7 @@
 { lib
 , fetchFromGitHub
 , python3Packages
-, wrapGAppsHook
+, wrapGAppsHook3
 , qt5
 }:
 
@@ -25,7 +25,7 @@ python3Packages.buildPythonApplication rec {
   ];
 
   nativeBuildInputs = [
-    wrapGAppsHook
+    wrapGAppsHook3
     qt5.wrapQtAppsHook
   ];
 
diff --git a/pkgs/by-name/c2/c2fmzq/package.nix b/pkgs/by-name/c2/c2fmzq/package.nix
index f5249425f805..1ac91956bd26 100644
--- a/pkgs/by-name/c2/c2fmzq/package.nix
+++ b/pkgs/by-name/c2/c2fmzq/package.nix
@@ -6,20 +6,20 @@
 
 buildGoModule rec {
   pname = "c2FmZQ";
-  version = "0.4.19";
+  version = "0.4.20";
 
   src = fetchFromGitHub {
     owner = "c2FmZQ";
     repo = "c2FmZQ";
     rev = "v${version}";
-    hash = "sha256-9kCiV+v7RNFDrAbWRujTW9b9sbYX9fGEE37S9uDp0nY=";
+    hash = "sha256-ur1zZdDAGl97RDhs0ucc9UAvufI/DG49cn8HaXx3gxs=";
   };
 
   ldflags = [ "-s" "-w" ];
 
   sourceRoot = "${src.name}/c2FmZQ";
 
-  vendorHash = "sha256-plORJl7KNsBP3tQSYX8829+sb8l0sO/TS8Bt25JXNgY=";
+  vendorHash = "sha256-wZ8+w1UFx55whodAXKhQ4EbtMXkbztYLjpqEVvdrAF8=";
 
   subPackages = [ "c2FmZQ-client" "c2FmZQ-server" ];
 
diff --git a/pkgs/servers/caddy/default.nix b/pkgs/by-name/ca/caddy/package.nix
index 399ce426d9dc..73ab67366483 100644
--- a/pkgs/servers/caddy/default.nix
+++ b/pkgs/by-name/ca/caddy/package.nix
@@ -5,6 +5,7 @@
 , caddy
 , testers
 , installShellFiles
+, stdenv
 }:
 let
   version = "2.7.6";
@@ -40,8 +41,13 @@ buildGoModule {
   postInstall = ''
     install -Dm644 ${dist}/init/caddy.service ${dist}/init/caddy-api.service -t $out/lib/systemd/system
 
-    substituteInPlace $out/lib/systemd/system/caddy.service --replace "/usr/bin/caddy" "$out/bin/caddy"
-    substituteInPlace $out/lib/systemd/system/caddy-api.service --replace "/usr/bin/caddy" "$out/bin/caddy"
+    substituteInPlace $out/lib/systemd/system/caddy.service \
+      --replace-fail "/usr/bin/caddy" "$out/bin/caddy"
+    substituteInPlace $out/lib/systemd/system/caddy-api.service \
+      --replace-fail "/usr/bin/caddy" "$out/bin/caddy"
+  '' + lib.optionalString (stdenv.buildPlatform.canExecute stdenv.hostPlatform) ''
+    # Generating man pages and completions fail on cross-compilation
+    # https://github.com/NixOS/nixpkgs/issues/308283
 
     $out/bin/caddy manpage --directory manpages
     installManPage manpages/*
diff --git a/pkgs/by-name/ca/caido/package.nix b/pkgs/by-name/ca/caido/package.nix
index 13dacc99a413..44c4571b5606 100644
--- a/pkgs/by-name/ca/caido/package.nix
+++ b/pkgs/by-name/ca/caido/package.nix
@@ -16,7 +16,7 @@ let
 in appimageTools.wrapType2 {
   inherit pname src version;
 
-  extraPkgs = pkgs: (appimageTools.defaultFhsEnvArgs.multiPkgs pkgs) ++ [ pkgs.libthai ];
+  extraPkgs = pkgs: [ pkgs.libthai ];
 
   extraInstallCommands = ''
     install -m 444 -D ${appimageContents}/caido.desktop -t $out/share/applications
diff --git a/pkgs/by-name/ca/caligula/package.nix b/pkgs/by-name/ca/caligula/package.nix
new file mode 100644
index 000000000000..f0f5c14664fc
--- /dev/null
+++ b/pkgs/by-name/ca/caligula/package.nix
@@ -0,0 +1,42 @@
+{ lib
+, rustPlatform
+, fetchFromGitHub
+, stdenv
+, darwin
+}:
+
+rustPlatform.buildRustPackage rec {
+  pname = "caligula";
+  version = "0.4.5";
+
+  src = fetchFromGitHub {
+    owner = "ifd3f";
+    repo = "caligula";
+    rev = "v${version}";
+    hash = "sha256-9+aLpxmMP76CsLFFmr1mhKgbaT7Zz0lx4D2jQCUA9VY=";
+  };
+
+  cargoHash = "sha256-VwtmU5jTQPn3hpNuLckPQl6joEFPfuax1gRVG0/nceg=";
+
+  buildInputs = lib.optionals stdenv.isDarwin (
+    with darwin.apple_sdk.frameworks; [
+      Cocoa
+      IOKit
+      Foundation
+      DiskArbitration
+    ]
+  );
+
+  RUSTFLAGS = "--cfg tracing_unstable";
+
+  meta = with lib; {
+    description = "A user-friendly, lightweight TUI for disk imaging";
+    homepage = "https://github.com/ifd3f/caligula/";
+    license = licenses.gpl3Only;
+    maintainers = with maintainers; [ sodiboo ];
+    platforms = platforms.linux ++ platforms.darwin;
+    # https://github.com/ifd3f/caligula/issues/105
+    broken = stdenv.hostPlatform.isDarwin;
+    mainProgram = "caligula";
+  };
+}
diff --git a/pkgs/by-name/ca/cargo-bloat/package.nix b/pkgs/by-name/ca/cargo-bloat/package.nix
index b0026988c9a1..4c77fbbb384c 100644
--- a/pkgs/by-name/ca/cargo-bloat/package.nix
+++ b/pkgs/by-name/ca/cargo-bloat/package.nix
@@ -2,16 +2,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "cargo-bloat";
-  version = "0.12.0";
+  version = "0.12.1";
 
   src = fetchFromGitHub {
     owner = "RazrFalcon";
     repo = pname;
     rev = "v${version}";
-    hash = "sha256-vPk6ERl0VM1TjK/JRMcXqCvKqSTuw78MsmQ0xImQyd4=";
+    hash = "sha256-B71VX7cJe1giOLmk3cQE8Zxr7fKGyQkoXRuM+NzBcb8=";
   };
 
-  cargoHash = "sha256-6fMFGLH16Z1O+ETlr0685TXHup1vJetfzPdNC2Lw9uM=";
+  cargoHash = "sha256-BBFLyMx1OPT2XAM6pofs2kV/3n3FrNu0Jkyr/Y3smnI=";
 
   meta = with lib; {
     description = "A tool and Cargo subcommand that helps you find out what takes most of the space in your executable";
diff --git a/pkgs/by-name/ca/cargo-expand/package.nix b/pkgs/by-name/ca/cargo-expand/package.nix
index 1ee53112cff1..bd1afa402f71 100644
--- a/pkgs/by-name/ca/cargo-expand/package.nix
+++ b/pkgs/by-name/ca/cargo-expand/package.nix
@@ -5,16 +5,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "cargo-expand";
-  version = "1.0.85";
+  version = "1.0.87";
 
   src = fetchFromGitHub {
     owner = "dtolnay";
     repo = pname;
     rev = version;
-    hash = "sha256-2i9FAWF9b1tNdDbTwCzQY8Mh/h85uigR5IT9kzPft00=";
+    hash = "sha256-sBL1/5was2qN8M2s8u443mb376ySE+T58bmdfO0XqE0=";
   };
 
-  cargoHash = "sha256-Vl0zC9TPhiFv2SiZtzIUV7GftB1y9K1gLy1ajisP8Y0=";
+  cargoHash = "sha256-DhjZMOKfXBGSF8b7OQ7l++/RKjtww+cUJDj91JW9ROY=";
 
   meta = with lib; {
     description = "Cargo subcommand to show result of macro expansion";
diff --git a/pkgs/by-name/ca/cargo-geiger/allow-warnings.patch b/pkgs/by-name/ca/cargo-geiger/allow-warnings.patch
new file mode 100644
index 000000000000..97a9090e904d
--- /dev/null
+++ b/pkgs/by-name/ca/cargo-geiger/allow-warnings.patch
@@ -0,0 +1,12 @@
+diff --git a/cargo-geiger/src/lib.rs b/cargo-geiger/src/lib.rs
+index cc08146..d220ad9 100644
+--- a/cargo-geiger/src/lib.rs
++++ b/cargo-geiger/src/lib.rs
+@@ -5,7 +5,6 @@
+ #![deny(clippy::cargo)]
+ #![deny(clippy::doc_markdown)]
+ #![forbid(unsafe_code)]
+-#![deny(warnings)]
+ 
+ /// Argument parsing
+ pub mod args;
diff --git a/pkgs/development/tools/rust/cargo-geiger/default.nix b/pkgs/by-name/ca/cargo-geiger/package.nix
index 3fbf1af9ad46..ac3338a68a4b 100644
--- a/pkgs/development/tools/rust/cargo-geiger/default.nix
+++ b/pkgs/by-name/ca/cargo-geiger/package.nix
@@ -12,15 +12,19 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "cargo-geiger";
-  version = "0.11.6";
+  version = "0.11.7";
 
   src = fetchFromGitHub {
     owner = "rust-secure-code";
     repo = pname;
-    rev = "${pname}-${version}";
-    sha256 = "sha256-rGZJyCWGk2RUr52ICp4dVER3JMBrnLdOMusRm/GG2PE=";
+    rev = "cargo-geiger@v${version}";
+    hash = "sha256-/5yuayqneZV6aVQ6YFgqNS2XY3W6yETRQ0kE5ovc7p8=";
   };
-  cargoHash = "sha256-B6Ka35y2fJEDVd891P60TNppr5HGFnzVjLhhfoFCYUA=";
+  cargoHash = "sha256-lhojo3dhsM9y1SxpVMH93yv+JeNfTL7VLsbTp9ErgIQ=";
+
+  patches = [
+    ./allow-warnings.patch
+  ];
 
   buildInputs = [ openssl ]
     ++ lib.optionals stdenv.isDarwin (with darwin.apple_sdk.frameworks; [ CoreFoundation Security libiconv curl ]);
@@ -30,12 +34,18 @@ rustPlatform.buildRustPackage rec {
 
   # skip tests with networking or other failures
   checkFlags = [
+    "--skip serialize_test1_quick_report"
     "--skip serialize_test2_quick_report"
     "--skip serialize_test3_quick_report"
+    "--skip serialize_test4_quick_report"
     "--skip serialize_test6_quick_report"
+    "--skip serialize_test7_quick_report"
+    "--skip serialize_test1_report"
     "--skip serialize_test2_report"
     "--skip serialize_test3_report"
+    "--skip serialize_test4_report"
     "--skip serialize_test6_report"
+    "--skip serialize_test7_report"
     # multiple test cases that time-out or cause memory leaks
     "--skip test_package"
     "--skip test_package_update_readme::case_2"
@@ -45,7 +55,7 @@ rustPlatform.buildRustPackage rec {
 
   meta = with lib; {
     homepage = "https://github.com/rust-secure-code/cargo-geiger";
-    changelog = "https://github.com/rust-secure-code/cargo-geiger/blob/${pname}-${version}/CHANGELOG.md";
+    changelog = "https://github.com/rust-secure-code/cargo-geiger/blob/cargo-geiger-${version}/CHANGELOG.md";
     description = "Detects usage of unsafe Rust in a Rust crate and its dependencies";
     mainProgram = "cargo-geiger";
     longDescription = ''
@@ -55,6 +65,6 @@ rustPlatform.buildRustPackage rec {
       code is appropriate.
     '';
     license = with licenses; [ asl20 /* or */ mit ];
-    maintainers = with maintainers; [ evanjs jk matthiasbeyer ];
+    maintainers = with maintainers; [ evanjs gepbird jk matthiasbeyer ];
   };
 }
diff --git a/pkgs/by-name/ca/cargo-information/Cargo.lock b/pkgs/by-name/ca/cargo-information/Cargo.lock
index a292db70a694..edde6f5eaae2 100644
--- a/pkgs/by-name/ca/cargo-information/Cargo.lock
+++ b/pkgs/by-name/ca/cargo-information/Cargo.lock
@@ -36,10 +36,20 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "0942ffc6dcaadf03badf6e6a2d0228460359d5e34b57ccdc720b7382dfbd5ec5"
 
 [[package]]
+name = "annotate-snippets"
+version = "0.10.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "6d9b665789884a7e8fb06c84b295e923b03ca51edbb7d08f91a6a50322ecbfe6"
+dependencies = [
+ "anstyle",
+ "unicode-width",
+]
+
+[[package]]
 name = "anstream"
-version = "0.6.11"
+version = "0.6.13"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6e2e1ebcb11de5c03c67de28a7df593d32191b44939c482e97702baaaa6ab6a5"
+checksum = "d96bd03f33fe50a863e394ee9718a706f988b9079b20c3784fb726e7678b62fb"
 dependencies = [
  "anstyle",
  "anstyle-parse",
@@ -56,6 +66,15 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "8901269c6307e8d93993578286ac0edf7f195079ffff5ebdeea6a59ffb7e36bc"
 
 [[package]]
+name = "anstyle-lossy"
+version = "1.1.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "a9a0444767dbd4aea9355cb47a370eb184dbfe918875e127eff52cb9d1638181"
+dependencies = [
+ "anstyle",
+]
+
+[[package]]
 name = "anstyle-parse"
 version = "0.2.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -74,6 +93,19 @@ dependencies = [
 ]
 
 [[package]]
+name = "anstyle-svg"
+version = "0.1.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "8b6ddad447b448d6d5db36b31cbd3ff27c7af071619501998eeceab01968287a"
+dependencies = [
+ "anstream",
+ "anstyle",
+ "anstyle-lossy",
+ "html-escape",
+ "unicode-width",
+]
+
+[[package]]
 name = "anstyle-wincon"
 version = "3.0.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -85,9 +117,9 @@ dependencies = [
 
 [[package]]
 name = "anyhow"
-version = "1.0.79"
+version = "1.0.82"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "080e9890a082662b09c1ad45f567faeeb47f22b5fb23895fbe1e651e718e25ca"
+checksum = "f538837af36e6f6a9be0faa67f9a314f8119e4e4b5867c6ab40ed60360142519"
 
 [[package]]
 name = "arc-swap"
@@ -189,10 +221,11 @@ checksum = "a3e368af43e418a04d52505cf3dbc23dda4e3407ae2fa99fd0e4f308ce546acc"
 
 [[package]]
 name = "cargo"
-version = "0.77.0"
+version = "0.78.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4a399e5bde59d144aa2c7ba643765e2f8c6c3c601daa2da03202caf66f2552b3"
+checksum = "d6305e39d08315644d79a5ae09a0745dfb3a43b5b5e318e55dbda3f12031c5dc"
 dependencies = [
+ "annotate-snippets",
  "anstream",
  "anstyle",
  "anyhow",
@@ -203,10 +236,11 @@ dependencies = [
  "cargo-credential-macos-keychain",
  "cargo-credential-wincred",
  "cargo-platform",
- "cargo-util 0.2.9",
+ "cargo-util 0.2.10",
+ "cargo-util-schemas",
  "clap",
  "color-print",
- "crates-io 0.39.2",
+ "crates-io 0.40.0",
  "curl",
  "curl-sys",
  "filetime",
@@ -214,7 +248,7 @@ dependencies = [
  "git2",
  "git2-curl",
  "gix",
- "gix-features 0.35.0",
+ "gix-features",
  "glob",
  "hex",
  "hmac",
@@ -235,7 +269,6 @@ dependencies = [
  "os_info",
  "pasetors",
  "pathdiff",
- "pulldown-cmark",
  "rand",
  "regex",
  "rusqlite",
@@ -243,23 +276,20 @@ dependencies = [
  "semver",
  "serde",
  "serde-untagged",
- "serde-value",
  "serde_ignored",
  "serde_json",
  "sha1",
  "shell-escape",
  "supports-hyperlinks",
- "syn 2.0.46",
  "tar",
  "tempfile",
  "time",
  "toml",
- "toml_edit 0.21.0",
+ "toml_edit 0.21.1",
  "tracing",
  "tracing-subscriber",
  "unicase",
  "unicode-width",
- "unicode-xid",
  "url",
  "walkdir",
  "windows-sys 0.52.0",
@@ -267,9 +297,9 @@ dependencies = [
 
 [[package]]
 name = "cargo-credential"
-version = "0.4.2"
+version = "0.4.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ec27ad011c37339b865c765fa28096cd63d5b25fab680c04d9e410cb586c327d"
+checksum = "4e5c02daf38715e60a9f59155bc3154c3e0bf55ee7bf34ddc090e8818c8f75e3"
 dependencies = [
  "anyhow",
  "libc",
@@ -313,7 +343,7 @@ dependencies = [
 
 [[package]]
 name = "cargo-information"
-version = "0.4.2"
+version = "0.6.0"
 dependencies = [
  "anstyle",
  "anyhow",
@@ -321,10 +351,10 @@ dependencies = [
  "cargo-credential",
  "cargo-test-macro",
  "cargo-test-support",
- "cargo-util 0.2.9",
+ "cargo-util 0.2.10",
  "clap",
  "color-print",
- "crates-io 0.39.2",
+ "crates-io 0.40.0",
  "pathdiff",
  "semver",
  "snapbox",
@@ -375,9 +405,9 @@ dependencies = [
 
 [[package]]
 name = "cargo-util"
-version = "0.2.9"
+version = "0.2.10"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "74862c3c6e53a1c1f8f0178f9d38ab41e49746cd3a7cafc239b3d0248fd4e342"
+checksum = "9f2d9a9a8d3e0b61b1110c49ab8f6ed7a76ce4f2b1d53ae48a83152d3d5e8f5b"
 dependencies = [
  "anyhow",
  "core-foundation",
@@ -419,6 +449,22 @@ dependencies = [
 ]
 
 [[package]]
+name = "cargo-util-schemas"
+version = "0.2.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "e63d2780ac94487eb9f1fea7b0d56300abc9eb488800854ca217f102f5caccca"
+dependencies = [
+ "semver",
+ "serde",
+ "serde-untagged",
+ "serde-value",
+ "thiserror",
+ "toml",
+ "unicode-xid",
+ "url",
+]
+
+[[package]]
 name = "cc"
 version = "1.0.83"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -436,18 +482,18 @@ checksum = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd"
 
 [[package]]
 name = "clap"
-version = "4.5.1"
+version = "4.5.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c918d541ef2913577a0f9566e9ce27cb35b6df072075769e0b26cb5a554520da"
+checksum = "90bc066a67923782aa8515dbaea16946c5bcc5addbd668bb80af688e53e548a0"
 dependencies = [
  "clap_builder",
 ]
 
 [[package]]
 name = "clap_builder"
-version = "4.5.1"
+version = "4.5.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9f3e7391dad68afb0c2ede1bf619f579a3dc9c2ec67f089baa397123a2f3d1eb"
+checksum = "ae129e2e766ae0ec03484e609954119f123cc1fe650337e155d03b022f24f7b4"
 dependencies = [
  "anstream",
  "anstyle",
@@ -537,9 +583,9 @@ dependencies = [
 
 [[package]]
 name = "crates-io"
-version = "0.39.2"
+version = "0.40.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6622f902c3c338eced1f000091f034846ae36aadaf35d0acd1ab0469a2d8ef1f"
+checksum = "19958b4dfc8889cf78606e5e2fe64e7e0170a9ab853157192608f3a3253c8ef8"
 dependencies = [
  "curl",
  "percent-encoding",
@@ -811,9 +857,6 @@ name = "faster-hex"
 version = "0.9.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "a2a2b11eda1d40935b26cf18f6833c526845ae8c41e58d09af6adeb6f0269183"
-dependencies = [
- "serde",
-]
 
 [[package]]
 name = "fastrand"
@@ -937,9 +980,9 @@ dependencies = [
 
 [[package]]
 name = "gix"
-version = "0.56.0"
+version = "0.57.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5b0dcdc9c60d66535897fa40a7ea2a635e72f99456b1d9ae86b7e170e80618cb"
+checksum = "6dd025382892c7b500a9ce1582cd803f9c2ebfe44aff52e9c7f86feee7ced75e"
 dependencies = [
  "gix-actor",
  "gix-attributes",
@@ -950,7 +993,7 @@ dependencies = [
  "gix-date",
  "gix-diff",
  "gix-discover",
- "gix-features 0.36.1",
+ "gix-features",
  "gix-filter",
  "gix-fs",
  "gix-glob",
@@ -992,9 +1035,9 @@ dependencies = [
 
 [[package]]
 name = "gix-actor"
-version = "0.28.1"
+version = "0.29.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2eadca029ef716b4378f7afb19f7ee101fde9e58ba1f1445971315ac866db417"
+checksum = "da27b5ab4ab5c75ff891dccd48409f8cc53c28a79480f1efdd33184b2dc1d958"
 dependencies = [
  "bstr",
  "btoi",
@@ -1006,9 +1049,9 @@ dependencies = [
 
 [[package]]
 name = "gix-attributes"
-version = "0.20.1"
+version = "0.21.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0f395469d38c76ec47cd1a6c5a53fbc3f13f737b96eaf7535f4e6b367e643381"
+checksum = "bd6de7603d6bcefcf9a1d87779c4812b14665f71bc870df7ce9ca4c4b309de18"
 dependencies = [
  "bstr",
  "gix-glob",
@@ -1023,18 +1066,18 @@ dependencies = [
 
 [[package]]
 name = "gix-bitmap"
-version = "0.2.8"
+version = "0.2.11"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d49e1a13a30d3f88be4bceae184dd13a2d3fb9ffa7515f7ed7ae771b857f4916"
+checksum = "a371db66cbd4e13f0ed9dc4c0fea712d7276805fccc877f77e96374d317e87ae"
 dependencies = [
  "thiserror",
 ]
 
 [[package]]
 name = "gix-chunk"
-version = "0.4.5"
+version = "0.4.8"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d411ecd9b558b0c20b3252b7e409eec48eabc41d18324954fe526bac6e2db55f"
+checksum = "45c8751169961ba7640b513c3b24af61aa962c967aaf04116734975cd5af0c52"
 dependencies = [
  "thiserror",
 ]
@@ -1053,13 +1096,13 @@ dependencies = [
 
 [[package]]
 name = "gix-commitgraph"
-version = "0.22.1"
+version = "0.23.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "85a7007ba021f059803afaf6f8a48872422abc20550ac12ede6ddea2936cec36"
+checksum = "7e8dcbf434951fa477063e05fea59722615af70dc2567377e58c2f7853b010fc"
 dependencies = [
  "bstr",
  "gix-chunk",
- "gix-features 0.36.1",
+ "gix-features",
  "gix-hash",
  "memmap2",
  "thiserror",
@@ -1067,13 +1110,13 @@ dependencies = [
 
 [[package]]
 name = "gix-config"
-version = "0.32.1"
+version = "0.33.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0341471d55d8676e98b88e121d7065dfa4c9c5acea4b6d6ecdd2846e85cce0c3"
+checksum = "367304855b369cadcac4ee5fb5a3a20da9378dd7905106141070b79f85241079"
 dependencies = [
  "bstr",
  "gix-config-value",
- "gix-features 0.36.1",
+ "gix-features",
  "gix-glob",
  "gix-path",
  "gix-ref",
@@ -1101,9 +1144,9 @@ dependencies = [
 
 [[package]]
 name = "gix-credentials"
-version = "0.22.0"
+version = "0.23.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "513dac42450b27946bd0a0535a3a5a88e473d6522e5e3439a129cab779c88f3d"
+checksum = "380cf3a7c31763743ae6403ec473281d54bfa05628331d09518a350ad5a0971f"
 dependencies = [
  "bstr",
  "gix-command",
@@ -1118,9 +1161,9 @@ dependencies = [
 
 [[package]]
 name = "gix-date"
-version = "0.8.1"
+version = "0.8.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "468dfbe411f335f01525a1352271727f8e7772075a93fa747260f502086b30be"
+checksum = "180b130a4a41870edfbd36ce4169c7090bca70e195da783dea088dd973daa59c"
 dependencies = [
  "bstr",
  "itoa",
@@ -1130,9 +1173,9 @@ dependencies = [
 
 [[package]]
 name = "gix-diff"
-version = "0.38.0"
+version = "0.39.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8119a985887cfe68f4bdf92e51bd64bc758a73882d82fcfc03ebcb164441c85d"
+checksum = "fd6a0454f8c42d686f17e7f084057c717c082b7dbb8209729e4e8f26749eb93a"
 dependencies = [
  "bstr",
  "gix-hash",
@@ -1142,9 +1185,9 @@ dependencies = [
 
 [[package]]
 name = "gix-discover"
-version = "0.27.0"
+version = "0.28.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6fad89416ebe0b3b7df78464124e2a02417b6cd3743d48ad93df86f4d2929c07"
+checksum = "b8d7b2896edc3d899d28a646ccc6df729827a6600e546570b2783466404a42d6"
 dependencies = [
  "bstr",
  "dunce",
@@ -1157,30 +1200,19 @@ dependencies = [
 
 [[package]]
 name = "gix-features"
-version = "0.35.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9b9ff423ae4983f762659040d13dd7a5defbd54b6a04ac3cc7347741cec828cd"
-dependencies = [
- "crossbeam-channel",
- "gix-hash",
- "gix-trace",
- "libc",
- "parking_lot",
-]
-
-[[package]]
-name = "gix-features"
-version = "0.36.1"
+version = "0.37.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4d46a4a5c6bb5bebec9c0d18b65ada20e6517dbd7cf855b87dd4bbdce3a771b2"
+checksum = "d50270e8dcc665f30ba0735b17984b9535bdf1e646c76e638e007846164d57af"
 dependencies = [
  "bytes",
  "crc32fast",
+ "crossbeam-channel",
  "flate2",
  "gix-hash",
  "gix-trace",
  "libc",
  "once_cell",
+ "parking_lot",
  "prodash",
  "sha1_smol",
  "thiserror",
@@ -1189,9 +1221,9 @@ dependencies = [
 
 [[package]]
 name = "gix-filter"
-version = "0.7.0"
+version = "0.8.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6d6a5c9d8e55c364e7c226919c19c9a28be1392d6208b5008059fa94ff7e2bf0"
+checksum = "f598c1d688bf9d57f428ed7ee70c3e786d6f0cc7ed1aeb3c982135af41f6e516"
 dependencies = [
  "bstr",
  "encoding_rs",
@@ -1210,30 +1242,30 @@ dependencies = [
 
 [[package]]
 name = "gix-fs"
-version = "0.8.1"
+version = "0.9.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "20e86eb040f5776a5ade092282e51cdcad398adb77d948b88d17583c2ae4e107"
+checksum = "7555c23a005537434bbfcb8939694e18cad42602961d0de617f8477cc2adecdd"
 dependencies = [
- "gix-features 0.36.1",
+ "gix-features",
 ]
 
 [[package]]
 name = "gix-glob"
-version = "0.14.1"
+version = "0.15.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5db19298c5eeea2961e5b3bf190767a2d1f09b8802aeb5f258e42276350aff19"
+checksum = "ae6232f18b262770e343dcdd461c0011c9b9ae27f0c805e115012aa2b902c1b8"
 dependencies = [
  "bitflags 2.4.1",
  "bstr",
- "gix-features 0.36.1",
+ "gix-features",
  "gix-path",
 ]
 
 [[package]]
 name = "gix-hash"
-version = "0.13.3"
+version = "0.14.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1f8cf8c2266f63e582b7eb206799b63aa5fa68ee510ad349f637dfe2d0653de0"
+checksum = "f93d7df7366121b5018f947a04d37f034717e113dcf9ccd85c34b58e57a74d5e"
 dependencies = [
  "faster-hex",
  "thiserror",
@@ -1241,9 +1273,9 @@ dependencies = [
 
 [[package]]
 name = "gix-hashtable"
-version = "0.4.1"
+version = "0.5.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "feb61880816d7ec4f0b20606b498147d480860ddd9133ba542628df2f548d3ca"
+checksum = "7ddf80e16f3c19ac06ce415a38b8591993d3f73aede049cb561becb5b3a8e242"
 dependencies = [
  "gix-hash",
  "hashbrown",
@@ -1252,9 +1284,9 @@ dependencies = [
 
 [[package]]
 name = "gix-ignore"
-version = "0.9.1"
+version = "0.10.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a215cc8cf21645bca131fcf6329d3ebd46299c47dbbe27df71bb1ca9e328b879"
+checksum = "f356ce440c60aedb7e72f3447f352f9c5e64352135c8cf33e838f49760fd2643"
 dependencies = [
  "bstr",
  "gix-glob",
@@ -1264,16 +1296,16 @@ dependencies = [
 
 [[package]]
 name = "gix-index"
-version = "0.27.1"
+version = "0.28.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f3f308f5cd2992e96a274b0d1931e9a0e44fdcba87695ead3f6df30d8a697e9c"
+checksum = "9e50e63df6c8d4137f7fb882f27643b3a9756c468a1a2cdbe1ce443010ca8778"
 dependencies = [
  "bitflags 2.4.1",
  "bstr",
  "btoi",
  "filetime",
  "gix-bitmap",
- "gix-features 0.36.1",
+ "gix-features",
  "gix-fs",
  "gix-hash",
  "gix-lock",
@@ -1289,9 +1321,9 @@ dependencies = [
 
 [[package]]
 name = "gix-lock"
-version = "11.0.1"
+version = "12.0.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7e5c65e6a29830a435664891ced3f3c1af010f14900226019590ee0971a22f37"
+checksum = "f40a439397f1e230b54cf85d52af87e5ea44cc1e7748379785d3f6d03d802b00"
 dependencies = [
  "gix-tempfile",
  "gix-utils",
@@ -1300,9 +1332,9 @@ dependencies = [
 
 [[package]]
 name = "gix-macros"
-version = "0.1.1"
+version = "0.1.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "02a5bcaf6704d9354a3071cede7e77d366a5980c7352e102e2c2f9b645b1d3ae"
+checksum = "1dff438f14e67e7713ab9332f5fd18c8f20eb7eb249494f6c2bf170522224032"
 dependencies = [
  "proc-macro2",
  "quote",
@@ -1311,9 +1343,9 @@ dependencies = [
 
 [[package]]
 name = "gix-negotiate"
-version = "0.10.0"
+version = "0.11.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "979f6accd9c051b3dd018b50adf29c0a2459edddf6105cc70b767976cd6f8014"
+checksum = "e6820bb5e9e259f6ad052826037452ca023d4f248c5d710dce067d89685dd582"
 dependencies = [
  "bitflags 2.4.1",
  "gix-commitgraph",
@@ -1327,15 +1359,15 @@ dependencies = [
 
 [[package]]
 name = "gix-object"
-version = "0.39.0"
+version = "0.40.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "febf79c5825720c1c63fe974c7bbe695d0cb54aabad73f45671c60ce0e501e33"
+checksum = "0c89402e8faa41b49fde348665a8f38589e461036475af43b6b70615a6a313a2"
 dependencies = [
  "bstr",
  "btoi",
  "gix-actor",
  "gix-date",
- "gix-features 0.36.1",
+ "gix-features",
  "gix-hash",
  "gix-validate",
  "itoa",
@@ -1346,13 +1378,13 @@ dependencies = [
 
 [[package]]
 name = "gix-odb"
-version = "0.55.0"
+version = "0.56.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1fae5f971540c99c6ecc8d4368ecc9d18a9dc8b9391025c68c4399747dc93bac"
+checksum = "46ae6da873de41c6c2b73570e82c571b69df5154dcd8f46dfafc6687767c33b1"
 dependencies = [
  "arc-swap",
  "gix-date",
- "gix-features 0.36.1",
+ "gix-features",
  "gix-hash",
  "gix-object",
  "gix-pack",
@@ -1365,13 +1397,13 @@ dependencies = [
 
 [[package]]
 name = "gix-pack"
-version = "0.45.0"
+version = "0.46.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4569491c92446fddf373456ff360aff9a9effd627b40a70f2d7914dcd75a3205"
+checksum = "782b4d42790a14072d5c400deda9851f5765f50fe72bca6dece0da1cd6f05a9a"
 dependencies = [
  "clru",
  "gix-chunk",
- "gix-features 0.36.1",
+ "gix-features",
  "gix-hash",
  "gix-hashtable",
  "gix-object",
@@ -1409,9 +1441,9 @@ dependencies = [
 
 [[package]]
 name = "gix-path"
-version = "0.10.5"
+version = "0.10.6"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "97e9ad649bf5e109562d6acba657ca428661ec08e77eaf3a755d8fa55485be9c"
+checksum = "69e0b521a5c345b7cd6a81e3e6f634407360a038c8b74ba14c621124304251b8"
 dependencies = [
  "bstr",
  "gix-trace",
@@ -1422,9 +1454,9 @@ dependencies = [
 
 [[package]]
 name = "gix-pathspec"
-version = "0.4.1"
+version = "0.5.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1dbbb92f75a38ef043c8bb830b339b38d0698d7f3746968b5fcbade7a880494d"
+checksum = "0cdb0ee9517c04f89bcaf6366fe893a17154ecb02d88b5c8174f27f1091d1247"
 dependencies = [
  "bitflags 2.4.1",
  "bstr",
@@ -1450,15 +1482,15 @@ dependencies = [
 
 [[package]]
 name = "gix-protocol"
-version = "0.42.0"
+version = "0.43.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "95736ef407db0bd15a5bdea791fbfcf523b9f13b96c852c240cd86a9ee0ef817"
+checksum = "eca52738435991105f3bbd7f3a3a42cdf84c9992a78b9b7b1de528b3c022cfdd"
 dependencies = [
  "bstr",
  "btoi",
  "gix-credentials",
  "gix-date",
- "gix-features 0.36.1",
+ "gix-features",
  "gix-hash",
  "gix-transport",
  "maybe-async",
@@ -1468,24 +1500,24 @@ dependencies = [
 
 [[package]]
 name = "gix-quote"
-version = "0.4.8"
+version = "0.4.12"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4f84845efa535468bc79c5a87b9d29219f1da0313c8ecf0365a5daa7e72786f2"
+checksum = "cbff4f9b9ea3fa7a25a70ee62f545143abef624ac6aa5884344e70c8b0a1d9ff"
 dependencies = [
  "bstr",
- "btoi",
+ "gix-utils",
  "thiserror",
 ]
 
 [[package]]
 name = "gix-ref"
-version = "0.39.1"
+version = "0.40.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3b2069adc212cf7f3317ef55f6444abd06c50f28479dbbac5a86acf3b05cbbfe"
+checksum = "64d9bd1984638d8f3511a2fcbe84fcedb8a5b5d64df677353620572383f42649"
 dependencies = [
  "gix-actor",
  "gix-date",
- "gix-features 0.36.1",
+ "gix-features",
  "gix-fs",
  "gix-hash",
  "gix-lock",
@@ -1500,9 +1532,9 @@ dependencies = [
 
 [[package]]
 name = "gix-refspec"
-version = "0.20.0"
+version = "0.21.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "76d9d3b82e1ee78fc0dc1c37ea5ea76c2dbc73f407db155f0dfcea285e583bee"
+checksum = "be219df5092c1735abb2a53eccdf775e945eea6986ee1b6e7a5896dccc0be704"
 dependencies = [
  "bstr",
  "gix-hash",
@@ -1514,9 +1546,9 @@ dependencies = [
 
 [[package]]
 name = "gix-revision"
-version = "0.24.0"
+version = "0.25.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "fe5dd51710ce5434bc315ea30394fab483c5377276494edd79222b321a5a9544"
+checksum = "aa78e1df3633bc937d4db15f8dca2abdb1300ca971c0fabcf9fa97e38cf4cd9f"
 dependencies = [
  "bstr",
  "gix-date",
@@ -1530,9 +1562,9 @@ dependencies = [
 
 [[package]]
 name = "gix-revwalk"
-version = "0.10.0"
+version = "0.11.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "69d4ed2493ca94a475fdf147138e1ef8bab3b6ebb56abf3d9bda1c05372ec1dd"
+checksum = "702de5fe5c2bbdde80219f3a8b9723eb927466e7ecd187cfd1b45d986408e45f"
 dependencies = [
  "gix-commitgraph",
  "gix-date",
@@ -1545,21 +1577,21 @@ dependencies = [
 
 [[package]]
 name = "gix-sec"
-version = "0.10.1"
+version = "0.10.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a36ea2c5907d64a9b4b5d3cc9f430e6c30f0509646b5e38eb275ca57c5bf29e2"
+checksum = "022592a0334bdf77c18c06e12a7c0eaff28845c37e73c51a3e37d56dd495fb35"
 dependencies = [
  "bitflags 2.4.1",
  "gix-path",
  "libc",
- "windows",
+ "windows-sys 0.52.0",
 ]
 
 [[package]]
 name = "gix-submodule"
-version = "0.6.0"
+version = "0.7.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "02a3d7f60a95bdcaeb8981663c99d1c9f4de42aab1169524c949e948989809f9"
+checksum = "21d438409222de24dffcc9897f04a9f97903a19fe4835b598ab3bb9b6e0f5e35"
 dependencies = [
  "bstr",
  "gix-config",
@@ -1572,9 +1604,9 @@ dependencies = [
 
 [[package]]
 name = "gix-tempfile"
-version = "11.0.1"
+version = "12.0.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "388dd29114a86ec69b28d1e26d6d63a662300ecf61ab3f4cc578f7d7dc9e7e23"
+checksum = "a8ef376d718b1f5f119b458e21b00fbf576bc9d4e26f8f383d29f5ffe3ba3eaa"
 dependencies = [
  "gix-fs",
  "libc",
@@ -1591,16 +1623,16 @@ checksum = "02b202d766a7fefc596e2cc6a89cda8ad8ad733aed82da635ac120691112a9b1"
 
 [[package]]
 name = "gix-transport"
-version = "0.39.0"
+version = "0.40.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f731cfefc4d62468c6dd2053f5c6707828256a6d2f5488c1811e3f42c178b144"
+checksum = "be01a22053e9395a409fcaeed879d94f4fcffeb4f46de7143275fbf5e5b39770"
 dependencies = [
  "base64",
  "bstr",
  "curl",
  "gix-command",
  "gix-credentials",
- "gix-features 0.36.1",
+ "gix-features",
  "gix-packetline",
  "gix-quote",
  "gix-sec",
@@ -1610,9 +1642,9 @@ dependencies = [
 
 [[package]]
 name = "gix-traverse"
-version = "0.35.0"
+version = "0.36.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "df2112088122a0206592c84fbd42020db63b2ccaed66a0293779f2e5fbf80474"
+checksum = "65109e445ba7a409b48f34f570a4d7db72eade1dc1bcff81990a490e86c07161"
 dependencies = [
  "gix-commitgraph",
  "gix-date",
@@ -1626,12 +1658,12 @@ dependencies = [
 
 [[package]]
 name = "gix-url"
-version = "0.25.2"
+version = "0.26.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0c427a1a11ccfa53a4a2da47d9442c2241deee63a154bc15cc14b8312fbc4005"
+checksum = "8f0f17cceb7552a231d1fec690bc2740c346554e3be6f5d2c41dfa809594dc44"
 dependencies = [
  "bstr",
- "gix-features 0.36.1",
+ "gix-features",
  "gix-path",
  "home",
  "thiserror",
@@ -1640,18 +1672,19 @@ dependencies = [
 
 [[package]]
 name = "gix-utils"
-version = "0.1.6"
+version = "0.1.11"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9f82c41937f00e15a1f6cb0b55307f0ca1f77f4407ff2bf440be35aa688c6a3e"
+checksum = "0066432d4c277f9877f091279a597ea5331f68ca410efc874f0bdfb1cd348f92"
 dependencies = [
  "fastrand",
+ "unicode-normalization",
 ]
 
 [[package]]
 name = "gix-validate"
-version = "0.8.1"
+version = "0.8.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "75b7d8e4274be69f284bbc7e6bb2ccf7065dbcdeba22d8c549f2451ae426883f"
+checksum = "e39fc6e06044985eac19dd34d474909e517307582e462b2eb4c8fa51b6241545"
 dependencies = [
  "bstr",
  "thiserror",
@@ -1659,13 +1692,13 @@ dependencies = [
 
 [[package]]
 name = "gix-worktree"
-version = "0.28.0"
+version = "0.29.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7f1d0ae01dee14abe8c8117d78d7518f9a507de2dc4522546fbf4c444e9860b4"
+checksum = "53982f8abff0789a9599e644108a1914da61a4d0dede8e45037e744dcb008d52"
 dependencies = [
  "bstr",
  "gix-attributes",
- "gix-features 0.36.1",
+ "gix-features",
  "gix-fs",
  "gix-glob",
  "gix-hash",
@@ -1764,6 +1797,15 @@ dependencies = [
 ]
 
 [[package]]
+name = "html-escape"
+version = "0.2.13"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "6d1ad449764d627e22bfd7cd5e8868264fc9236e07c752972b4080cd351cb476"
+dependencies = [
+ "utf8-width",
+]
+
+[[package]]
 name = "http-auth"
 version = "0.1.9"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -2363,25 +2405,14 @@ dependencies = [
 
 [[package]]
 name = "prodash"
-version = "26.2.2"
+version = "28.0.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "794b5bf8e2d19b53dcdcec3e4bba628e20f5b6062503ba89281fa7037dd7bbcf"
+checksum = "744a264d26b88a6a7e37cbad97953fa233b94d585236310bcbc88474b4092d79"
 dependencies = [
  "parking_lot",
 ]
 
 [[package]]
-name = "pulldown-cmark"
-version = "0.9.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "77a1a2f1f0a7ecff9c31abbe177637be0e97a0aef46cf8738ece09327985d998"
-dependencies = [
- "bitflags 1.3.2",
- "memchr",
- "unicase",
-]
-
-[[package]]
 name = "quote"
 version = "1.0.35"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -2528,9 +2559,9 @@ dependencies = [
 
 [[package]]
 name = "rustfix"
-version = "0.7.0"
+version = "0.8.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7ec10cbeb92a2e494ef354d66126882da8c0a244ad769e2a7193efc5de625175"
+checksum = "81864b097046da5df3758fdc6e4822bbb70afa06317e8ca45ea1b51cb8c5e5a4"
 dependencies = [
  "serde",
  "serde_json",
@@ -2620,9 +2651,9 @@ dependencies = [
 
 [[package]]
 name = "semver"
-version = "1.0.21"
+version = "1.0.22"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b97ed7a9823b74f99c7742f5336af7be5ecd3eeafcb1507d1fa93347b1d589b0"
+checksum = "92d43fe69e652f3df9bdc2b85b2854a0825b86e4fb76bc44d945137d053639ca"
 dependencies = [
  "serde",
 ]
@@ -2785,18 +2816,20 @@ checksum = "4dccd0940a2dcdf68d092b8cbab7dc0ad8fa938bf95787e1b916b0e3d0e8e970"
 
 [[package]]
 name = "snapbox"
-version = "0.5.1"
+version = "0.5.9"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "47d9a121ed3297bc4575fa774033a9f1084e0a0c8de8dff416df4eae834121b3"
+checksum = "8ac441e1ecf678f68423d47f376d53fabce1afba92c8f68e31508eb27df8562a"
 dependencies = [
  "anstream",
  "anstyle",
+ "anstyle-svg",
  "content_inspector",
  "dunce",
  "filetime",
  "libc",
  "normalize-line-endings",
  "os_pipe",
+ "serde_json",
  "similar",
  "snapbox-macros",
  "tempfile",
@@ -3015,9 +3048,9 @@ dependencies = [
 
 [[package]]
 name = "toml_edit"
-version = "0.21.0"
+version = "0.21.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d34d383cd00a163b4a5b85053df514d45bc330f6de7737edfe0a93311d1eaa03"
+checksum = "6a8534fd7f78b5405e860340ad6575217ce99f38d4d5c8f2442cb5ecb50090e1"
 dependencies = [
  "indexmap",
  "serde",
@@ -3102,9 +3135,9 @@ dependencies = [
 
 [[package]]
 name = "trycmd"
-version = "0.15.0"
+version = "0.15.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "464edb3603a81a50b4c8f47b11dfade69ef48ffdc0af2f8b194ad87cbda75317"
+checksum = "d14c6930faf7c6c4942ce17daa6f38d659d2ebf2b579a56b6926707038eb37b0"
 dependencies = [
  "glob",
  "humantime",
@@ -3182,6 +3215,12 @@ dependencies = [
 ]
 
 [[package]]
+name = "utf8-width"
+version = "0.1.7"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "86bd8d4e895da8537e5315b8254664e6b769c4ff3db18321b297a1e7004392e3"
+
+[[package]]
 name = "utf8parse"
 version = "0.2.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -3316,15 +3355,6 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f"
 
 [[package]]
-name = "windows"
-version = "0.48.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e686886bc078bc1b0b600cac0147aadb815089b6e4da64016cbd754b6342700f"
-dependencies = [
- "windows-targets 0.48.5",
-]
-
-[[package]]
 name = "windows-sys"
 version = "0.48.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
diff --git a/pkgs/by-name/ca/cargo-information/package.nix b/pkgs/by-name/ca/cargo-information/package.nix
index 3801eadc868e..e1ad75f3f2e3 100644
--- a/pkgs/by-name/ca/cargo-information/package.nix
+++ b/pkgs/by-name/ca/cargo-information/package.nix
@@ -11,13 +11,13 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "cargo-information";
-  version = "0.4.2";
+  version = "0.6.0";
 
   src = fetchFromGitHub {
     owner = "hi-rustin";
     repo = "cargo-information";
     rev = "v${version}";
-    hash = "sha256-k481iHQ1tVi9fF5/xYR99/1/oRv1nS3WH7W55aPSyfc=";
+    hash = "sha256-5F8O8M8cz7sdXtqGYuDIeTolovZjx2BLEBCZuBIb9YA=";
   };
 
   cargoLock = {
@@ -33,6 +33,7 @@ rustPlatform.buildRustPackage rec {
     "--skip=cargo_information::within_ws::case"
     "--skip=cargo_information::within_ws_with_alternative_registry::case"
     "--skip=cargo_information::within_ws_without_lockfile::case"
+    "--skip=cargo_information::transitive_dependency_within_ws::case"
   ];
 
   nativeBuildInputs = [
diff --git a/pkgs/by-name/ca/cargo-make/package.nix b/pkgs/by-name/ca/cargo-make/package.nix
index a0c64e2c4f94..7e92ceaa4386 100644
--- a/pkgs/by-name/ca/cargo-make/package.nix
+++ b/pkgs/by-name/ca/cargo-make/package.nix
@@ -10,16 +10,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "cargo-make";
-  version = "0.37.11";
+  version = "0.37.12";
 
   src = fetchFromGitHub {
     owner = "sagiegurari";
     repo = "cargo-make";
     rev = version;
-    hash = "sha256-a8iNMvMB52PEFVQq4Hv3bnIrA8k5p1a5M7JBp67SUDk=";
+    hash = "sha256-hnjhc4ZIabHml0HMuIanwXkx+QGnal7RlvZjcZUx8pQ=";
   };
 
-  cargoHash = "sha256-UrVSGxDRhD3Tm25cUYOkkf/A2mgLZAyBImu1AeNOdX4=";
+  cargoHash = "sha256-5Z8ywbaWVgLx6PH/w9QV0LJpeqY7zpkCqnAb4BAww0o=";
 
   nativeBuildInputs = [ pkg-config ];
 
diff --git a/pkgs/development/tools/rust/cargo-profiler/default.nix b/pkgs/by-name/ca/cargo-profiler/package.nix
index 595bf6d8d032..595bf6d8d032 100644
--- a/pkgs/development/tools/rust/cargo-profiler/default.nix
+++ b/pkgs/by-name/ca/cargo-profiler/package.nix
diff --git a/pkgs/by-name/ca/cargo-raze/package.nix b/pkgs/by-name/ca/cargo-raze/package.nix
new file mode 100644
index 000000000000..a0b4fd0ace7b
--- /dev/null
+++ b/pkgs/by-name/ca/cargo-raze/package.nix
@@ -0,0 +1,55 @@
+{
+  lib,
+  stdenv,
+  fetchFromGitHub,
+  rustPlatform,
+  pkg-config,
+  curl,
+  libgit2,
+  openssl,
+  darwin,
+}:
+let
+  version = "0.16.1";
+  src = fetchFromGitHub {
+    owner = "google";
+    repo = "cargo-raze";
+    rev = "v${version}";
+    hash = "sha256-dn1MrF+FYBG+vD5AfXCwmzskmKK/TXArnMWW2BAfFFQ=";
+  };
+in
+rustPlatform.buildRustPackage {
+  pname = "cargo-raze";
+  inherit src version;
+
+  sourceRoot = "${src.name}/impl";
+
+  # Make it build on Rust >1.76. Since upstream is unmaintained,
+  # there's no counting on them to fix this any time soon...
+  # See #310673 and #310125 for similar fixes
+  cargoPatches = [ ./rustc-serialize-fix.patch ];
+
+  cargoHash = "sha256-V8FkkWcXrYcDmhbdJztpbd4gBVbtbPY0NHS4pb/z8HM=";
+
+  nativeBuildInputs = [ pkg-config ];
+  buildInputs = [
+    libgit2
+    openssl
+    curl
+  ] ++ lib.optional stdenv.isDarwin darwin.apple_sdk.frameworks.Security;
+
+  preCheck = lib.optionalString stdenv.isDarwin ''
+    # Darwin issue: Os { code: 24, kind: Uncategorized, message: "Too many open files" }
+    # https://github.com/google/cargo-raze/issues/544
+    ulimit -n 1024
+  '';
+
+  __darwinAllowLocalNetworking = true;
+
+  meta = {
+    description = "Generate Bazel BUILD files from Cargo dependencies";
+    homepage = "https://github.com/google/cargo-raze";
+    license = lib.licenses.asl20;
+    maintainers = with lib.maintainers; [ elasticdog ];
+  };
+}
diff --git a/pkgs/by-name/ca/cargo-raze/rustc-serialize-fix.patch b/pkgs/by-name/ca/cargo-raze/rustc-serialize-fix.patch
new file mode 100644
index 000000000000..4c34cbeecb94
--- /dev/null
+++ b/pkgs/by-name/ca/cargo-raze/rustc-serialize-fix.patch
@@ -0,0 +1,29 @@
+diff --git a/impl/Cargo.lock b/impl/Cargo.lock
+index 0c963206..7db3432f 100644
+--- a/Cargo.lock
++++ b/Cargo.lock
+@@ -1957,9 +1957,9 @@ dependencies = [
+ 
+ [[package]]
+ name = "rustc-serialize"
+-version = "0.3.24"
++version = "0.3.25"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "dcf128d1287d2ea9d80910b5f1120d0b8eede3fbf1abe91c40d39ea7d51e6fda"
++checksum = "fe834bc780604f4674073badbad26d7219cadfb4a2275802db12cbae17498401"
+ 
+ [[package]]
+ name = "ryu"
+diff --git a/impl/Cargo.toml b/impl/Cargo.toml
+index 9dd6dd99..a559febf 100644
+--- a/Cargo.toml
++++ b/Cargo.toml
+@@ -38,7 +38,7 @@ itertools = "0.10.0"
+ log = "0.4.13"
+ pathdiff = "0.2.0"
+ regex = "1.5.5"
+-rustc-serialize = "0.3.24"
++rustc-serialize = "0.3.25"
+ semver = { version = "1", features = ["serde"] }
+ serde = "1.0.120"
+ serde_derive = "1.0.120"
diff --git a/pkgs/by-name/ca/cargo-shear/package.nix b/pkgs/by-name/ca/cargo-shear/package.nix
index badd2318ff03..d99e1b1f06fd 100644
--- a/pkgs/by-name/ca/cargo-shear/package.nix
+++ b/pkgs/by-name/ca/cargo-shear/package.nix
@@ -1,24 +1,38 @@
-{ fetchFromGitHub, lib, rustPlatform }:
-
-rustPlatform.buildRustPackage rec {
+{
+  fetchFromGitHub,
+  lib,
+  rustPlatform,
+  testers,
+  cargo-shear,
+}:
+let
+  version = "0.0.25";
+in
+rustPlatform.buildRustPackage {
   pname = "cargo-shear";
-  version = "0.0.24";
+  inherit version;
 
   src = fetchFromGitHub {
     owner = "Boshen";
     repo = "cargo-shear";
     rev = "v${version}";
-    sha256 = "sha256-7eBFDmeFOXqZhNE4RDlIq991xEoCGL6XLMmUQuLJvrE=";
+    hash = "sha256-4NnCUe4DrnSeveicxvvDF49hrc4NdRx/N10PH7Q0k8k=";
   };
 
-  cargoSha256 = "sha256-DQjLW6NtUPERT82zIlrGRk3FffU/EfLBMgAeFfFdDxE=";
+  cargoHash = "sha256-gHXJz3Xw9vC04q001kd6AgEKKaRtAK3oGMn7JJh+Neo=";
+
+  # https://github.com/Boshen/cargo-shear/blob/a0535415a3ea94c86642f39f343f91af5cdc3829/src/lib.rs#L20-L23
+  SHEAR_VERSION = version;
+  passthru.tests.version = testers.testVersion {
+    package = cargo-shear;
+  };
 
-  meta = with lib; {
+  meta = {
     description = "Detect and remove unused dependencies from Cargo.toml";
     mainProgram = "cargo-shear";
     homepage = "https://github.com/Boshen/cargo-shear";
-    changelog = "https://github.com/Boshen/cargo-shear/blob/${src.rev}/CHANGELOG.md";
-    license = with licenses; [ mit ];
-    maintainers = with maintainers; [ uncenter ];
+    changelog = "https://github.com/Boshen/cargo-shear/blob/v${version}/CHANGELOG.md";
+    license = [ lib.licenses.mit ];
+    maintainers = with lib.maintainers; [ uncenter ];
   };
 }
diff --git a/pkgs/by-name/ca/cargo-typify/package.nix b/pkgs/by-name/ca/cargo-typify/package.nix
index 6693776c04ed..e8bf2013f935 100644
--- a/pkgs/by-name/ca/cargo-typify/package.nix
+++ b/pkgs/by-name/ca/cargo-typify/package.nix
@@ -1,4 +1,4 @@
-{ lib, rustfmt, rustPlatform, fetchFromGitHub }:
+{ lib, rustfmt, rustPlatform, fetchFromGitHub, gitUpdater }:
 
 rustPlatform.buildRustPackage rec {
   pname = "cargo-typify";
@@ -22,11 +22,14 @@ rustPlatform.buildRustPackage rec {
     export RUSTFMT="${lib.getExe rustfmt}"
   '';
 
+  passthru.updateScript = gitUpdater { rev-prefix = "v"; };
+
   meta = with lib; {
     description = "JSON Schema to Rust type converter";
     mainProgram = "cargo-typify";
     homepage = "https://github.com/oxidecomputer/typify";
     license = with licenses; [ asl20 ];
     maintainers = with maintainers; [ david-r-cox ];
+    broken = true;
   };
 }
diff --git a/pkgs/development/tools/rust/cargo-wasi/default.nix b/pkgs/by-name/ca/cargo-wasi/package.nix
index bead01fed4ed..8e688c28cad0 100644
--- a/pkgs/development/tools/rust/cargo-wasi/default.nix
+++ b/pkgs/by-name/ca/cargo-wasi/package.nix
@@ -4,7 +4,7 @@
 , pkg-config
 , stdenv
 , openssl
-, Security
+, darwin
 }:
 
 rustPlatform.buildRustPackage rec {
@@ -22,7 +22,7 @@ rustPlatform.buildRustPackage rec {
   nativeBuildInputs = [ pkg-config ];
 
   buildInputs = lib.optionals stdenv.isLinux [ openssl ]
-    ++ lib.optionals stdenv.isDarwin [ Security ];
+    ++ lib.optionals stdenv.isDarwin (with darwin.apple_sdk.frameworks; [ Security ]);
 
   # Checks need to be disabled here because the current test suite makes assumptions
   # about the surrounding environment that aren't Nix friendly. See these lines for specifics:
diff --git a/pkgs/development/tools/castxml/default.nix b/pkgs/by-name/ca/castxml/package.nix
index bceafd504dcc..2b0a255bbdc8 100644
--- a/pkgs/development/tools/castxml/default.nix
+++ b/pkgs/by-name/ca/castxml/package.nix
@@ -1,14 +1,16 @@
-{ lib
-, stdenv
-, fetchFromGitHub
-, cmake
-, libffi
-, libxml2
-, zlib
-, withManual ? true
-, withHTML ? true
-, llvmPackages
-, python3
+{
+  cmake,
+  fetchFromGitHub,
+  lib,
+  libffi,
+  libxml2,
+  llvmPackages,
+  python3,
+  stdenv,
+  zlib,
+  # Boolean flags
+  withHTML ? true,
+  withManual ? true,
 }:
 
 let
@@ -17,19 +19,20 @@ let
 in
 stdenv.mkDerivation (finalAttrs: {
   pname = "castxml";
-  version = "0.6.5";
+  version = "0.6.6";
 
   src = fetchFromGitHub {
     owner = "CastXML";
     repo = "CastXML";
     rev = "v${finalAttrs.version}";
-    hash = "sha256-r9Emh2KHjANrg+oWeY8Ags3Gd8k3W68J88bAud+AH6I=";
+    hash = "sha256-icTos9HboZXvojQPX+pRkpBYiZ5SXSMb9XtvRnXNHuo=";
   };
 
   nativeBuildInputs = [
     cmake
-    llvm.dev
-  ] ++ lib.optionals (withManual || withHTML) [
+    (lib.getDev llvm)
+  ]
+  ++ lib.optionals (withManual || withHTML) [
     sphinx
   ];
 
@@ -45,14 +48,17 @@ stdenv.mkDerivation (finalAttrs: {
   ];
 
   cmakeFlags = [
-    "-DCLANG_RESOURCE_DIR=${libclang.dev}/"
-    "-DSPHINX_HTML=${if withHTML then "ON" else "OFF"}"
-    "-DSPHINX_MAN=${if withManual then "ON" else "OFF"}"
+    (lib.cmakeOptionType "path" "CLANG_RESOURCE_DIR" "${lib.getDev libclang}")
+    (lib.cmakeBool "SPHINX_HTML" withHTML)
+    (lib.cmakeBool "SPHINX_MAN" withManual)
   ];
 
   # 97% tests passed, 97 tests failed out of 2881
   # mostly because it checks command line and nix append -isystem and all
   doCheck = false;
+
+  strictDeps = true;
+
   # -E exclude 4 tests based on names
   # see https://github.com/CastXML/CastXML/issues/90
   checkPhase = ''
@@ -61,12 +67,12 @@ stdenv.mkDerivation (finalAttrs: {
     runHook postCheck
   '';
 
-  meta = with lib; {
+  meta = {
     homepage = "https://github.com/CastXML/CastXML";
     description = "C-family Abstract Syntax Tree XML Output";
+    license = lib.licenses.asl20;
     mainProgram = "castxml";
-    license = licenses.asl20;
-    maintainers = with maintainers; [ AndersonTorres ];
-    platforms = platforms.unix;
+    maintainers = with lib.maintainers; [ AndersonTorres ];
+    platforms = lib.platforms.unix;
   };
 })
diff --git a/pkgs/by-name/ca/catppuccin-sddm-corners/package.nix b/pkgs/by-name/ca/catppuccin-sddm-corners/package.nix
index 952399f7bf86..6e4673cdc9d8 100644
--- a/pkgs/by-name/ca/catppuccin-sddm-corners/package.nix
+++ b/pkgs/by-name/ca/catppuccin-sddm-corners/package.nix
@@ -7,13 +7,13 @@
 
 stdenvNoCC.mkDerivation {
   pname = "catppuccin-sddm-corners";
-  version = "unstable-2023-05-30";
+  version = "0-unstable-2024-05-07";
 
   src = fetchFromGitHub {
     owner = "khaneliman";
     repo = "catppuccin-sddm-corners";
-    rev = "ffaad5c8964b52ccd92a80dfd3a7931c8b68c446";
-    hash = "sha256-CaCMrXlwt7JfSycB8WH3XCWUu+i7bPSfFv3duo7ZlZo=";
+    rev = "aca5af5ce0c9dff56e947938697dec40ea101e3e";
+    hash = "sha256-xtcNcjNQSG7SwlNw/EkAU93wFaku+cE1/r6c8c4FrBg=";
   };
 
   dontConfigure = true;
diff --git a/pkgs/by-name/ca/catppuccin-sddm/package.nix b/pkgs/by-name/ca/catppuccin-sddm/package.nix
new file mode 100644
index 000000000000..1daab09ae646
--- /dev/null
+++ b/pkgs/by-name/ca/catppuccin-sddm/package.nix
@@ -0,0 +1,80 @@
+{
+  lib,
+  stdenvNoCC,
+  fetchFromGitHub,
+  just,
+  kdePackages,
+  flavor ? "mocha",
+  font ? "Noto Sans",
+  fontSize ? "9",
+  background ? null,
+  loginBackground ? false,
+}:
+stdenvNoCC.mkDerivation rec {
+  pname = "catppuccin-sddm";
+  version = "1.0.0";
+
+  src = fetchFromGitHub {
+    owner = "catppuccin";
+    repo = "sddm";
+    rev = "v${version}";
+    hash = "sha256-SdpkuonPLgCgajW99AzJaR8uvdCPi4MdIxS5eB+Q9WQ=";
+  };
+
+  dontWrapQtApps = true;
+
+  nativeBuildInputs = [
+    just
+  ];
+
+  propagatedBuildInputs = [
+    kdePackages.qtsvg
+  ];
+
+  buildPhase = ''
+    runHook preBuild
+
+    just build
+
+    runHook postBuild
+  '';
+
+  installPhase = ''
+    runHook preInstall
+
+    mkdir -p "$out/share/sddm/themes/"
+    cp -r dist/catppuccin-${flavor} "$out/share/sddm/themes/catppuccin-${flavor}"
+
+    configFile=$out/share/sddm/themes/catppuccin-${flavor}/theme.conf
+
+    substituteInPlace $configFile \
+      --replace-fail 'Font="Noto Sans"' 'Font="${font}"' \
+      --replace-fail 'FontSize=9' 'FontSize=${fontSize}'
+
+    ${lib.optionalString (background != null) ''
+      substituteInPlace $configFile \
+        --replace-fail 'Background="backgrounds/wall.jpg"' 'Background="${background}"' \
+        --replace-fail 'CustomBackground="false"' 'CustomBackground="true"'
+    ''}
+
+    ${lib.optionalString loginBackground ''
+      substituteInPlace $configFile \
+        --replace-fail 'LoginBackground="false"' 'LoginBackground="true"'
+    ''}
+
+    runHook postInstall
+  '';
+
+  postFixup = ''
+    mkdir -p $out/nix-support
+    echo ${kdePackages.qtsvg} >> $out/nix-support/propagated-user-env-packages
+  '';
+
+  meta = {
+    description = "Soothing pastel theme for SDDM";
+    homepage = "https://github.com/catppuccin/sddm";
+    license = lib.licenses.mit;
+    maintainers = with lib.maintainers; [elysasrc];
+    platforms = lib.platforms.linux;
+  };
+}
diff --git a/pkgs/by-name/ca/catppuccinifier-cli/Cargo.lock b/pkgs/by-name/ca/catppuccinifier-cli/Cargo.lock
new file mode 100644
index 000000000000..2f11115db098
--- /dev/null
+++ b/pkgs/by-name/ca/catppuccinifier-cli/Cargo.lock
@@ -0,0 +1,1596 @@
+# This file is automatically @generated by Cargo.
+# It is not intended for manual editing.
+version = 3
+
+[[package]]
+name = "adler"
+version = "1.0.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "f26201604c87b1e01bd3d98f8d5d9a8fcbb815e8cedb41ffccbeb4bf593a35fe"
+
+[[package]]
+name = "aho-corasick"
+version = "1.0.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "86b8f9420f797f2d9e935edf629310eb938a0d839f984e25327f3c7eed22300c"
+dependencies = [
+ "memchr",
+]
+
+[[package]]
+name = "aligned"
+version = "0.4.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "80a21b9440a626c7fc8573a9e3d3a06b75c7c97754c2949bc7857b90353ca655"
+dependencies = [
+ "as-slice",
+]
+
+[[package]]
+name = "aligned-array"
+version = "1.0.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "e05c92d086290f52938013f6242ac62bf7d401fab8ad36798a609faa65c3fd2c"
+dependencies = [
+ "generic-array",
+]
+
+[[package]]
+name = "anstream"
+version = "0.3.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "0ca84f3628370c59db74ee214b3263d58f9aadd9b4fe7e711fd87dc452b7f163"
+dependencies = [
+ "anstyle",
+ "anstyle-parse",
+ "anstyle-query",
+ "anstyle-wincon",
+ "colorchoice",
+ "is-terminal",
+ "utf8parse",
+]
+
+[[package]]
+name = "anstyle"
+version = "1.0.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "3a30da5c5f2d5e72842e00bcb57657162cdabef0931f40e2deb9b4140440cecd"
+
+[[package]]
+name = "anstyle-parse"
+version = "0.2.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "938874ff5980b03a87c5524b3ae5b59cf99b1d6bc836848df7bc5ada9643c333"
+dependencies = [
+ "utf8parse",
+]
+
+[[package]]
+name = "anstyle-query"
+version = "1.0.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "5ca11d4be1bab0c8bc8734a9aa7bf4ee8316d462a08c6ac5052f888fef5b494b"
+dependencies = [
+ "windows-sys",
+]
+
+[[package]]
+name = "anstyle-wincon"
+version = "1.0.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "180abfa45703aebe0093f79badacc01b8fd4ea2e35118747e5811127f926e188"
+dependencies = [
+ "anstyle",
+ "windows-sys",
+]
+
+[[package]]
+name = "as-slice"
+version = "0.2.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "516b6b4f0e40d50dcda9365d53964ec74560ad4284da2e7fc97122cd83174516"
+dependencies = [
+ "stable_deref_trait",
+]
+
+[[package]]
+name = "atty"
+version = "0.2.14"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "d9b39be18770d11421cdb1b9947a45dd3f37e93092cbf377614828a319d5fee8"
+dependencies = [
+ "hermit-abi 0.1.19",
+ "libc",
+ "winapi",
+]
+
+[[package]]
+name = "autocfg"
+version = "1.1.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "d468802bab17cbc0cc575e9b053f41e72aa36bfa6b7f55e3529ffa43161b97fa"
+
+[[package]]
+name = "az"
+version = "1.2.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "7b7e4c2464d97fe331d41de9d5db0def0a96f4d823b8b32a2efd503578988973"
+
+[[package]]
+name = "bit_field"
+version = "0.10.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "dc827186963e592360843fb5ba4b973e145841266c1357f7180c43526f2e5b61"
+
+[[package]]
+name = "bitflags"
+version = "1.3.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a"
+
+[[package]]
+name = "block-buffer"
+version = "0.10.4"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "3078c7629b62d3f0439517fa394996acacc5cbc91c5a20d8c658e77abd503a71"
+dependencies = [
+ "generic-array",
+]
+
+[[package]]
+name = "bstr"
+version = "1.6.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "6798148dccfbff0fae41c7574d2fa8f1ef3492fba0face179de5d8d447d67b05"
+dependencies = [
+ "memchr",
+ "serde",
+]
+
+[[package]]
+name = "bumpalo"
+version = "3.13.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "a3e2c3daef883ecc1b5d58c15adae93470a91d425f3532ba1695849656af3fc1"
+
+[[package]]
+name = "bytemuck"
+version = "1.13.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "17febce684fd15d89027105661fec94afb475cb995fbc59d2865198446ba2eea"
+
+[[package]]
+name = "byteorder"
+version = "1.4.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "14c189c53d098945499cdfa7ecc63567cf3886b3332b312a5b4585d8d3a6a610"
+
+[[package]]
+name = "catppuccinifier-cli"
+version = "7.1.0"
+dependencies = [
+ "catppuccinifier-rs",
+ "clap",
+ "colored",
+ "dirs",
+ "substring",
+]
+
+[[package]]
+name = "catppuccinifier-rs"
+version = "0.1.0"
+source = "git+https://github.com/lighttigerXIV/catppuccinifier-rs#0e0406963832f2dee77210517104bc40604710d9"
+dependencies = [
+ "image",
+ "lutgen",
+ "lutgen-palettes",
+]
+
+[[package]]
+name = "cc"
+version = "1.0.79"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "50d30906286121d95be3d479533b458f87493b30a4b5f79a607db8f5d11aa91f"
+
+[[package]]
+name = "cfg-if"
+version = "1.0.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd"
+
+[[package]]
+name = "clap"
+version = "4.3.5"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "2686c4115cb0810d9a984776e197823d08ec94f176549a89a9efded477c456dc"
+dependencies = [
+ "clap_builder",
+ "clap_derive",
+ "once_cell",
+]
+
+[[package]]
+name = "clap_builder"
+version = "4.3.5"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "2e53afce1efce6ed1f633cf0e57612fe51db54a1ee4fd8f8503d078fe02d69ae"
+dependencies = [
+ "anstream",
+ "anstyle",
+ "bitflags",
+ "clap_lex",
+ "once_cell",
+ "strsim",
+]
+
+[[package]]
+name = "clap_complete"
+version = "4.3.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "5fc443334c81a804575546c5a8a79b4913b50e28d69232903604cada1de817ce"
+dependencies = [
+ "clap",
+]
+
+[[package]]
+name = "clap_derive"
+version = "4.3.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "b8cd2b2a819ad6eec39e8f1d6b53001af1e5469f8c177579cdaeb313115b825f"
+dependencies = [
+ "heck",
+ "proc-macro2",
+ "quote",
+ "syn 2.0.18",
+]
+
+[[package]]
+name = "clap_lex"
+version = "0.5.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "2da6da31387c7e4ef160ffab6d5e7f00c42626fe39aea70a7b0f1773f7dd6c1b"
+
+[[package]]
+name = "color_quant"
+version = "1.1.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "3d7b894f5411737b7867f4827955924d7c254fc9f4d91a6aad6b097804b1018b"
+
+[[package]]
+name = "colorchoice"
+version = "1.0.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "acbf1af155f9b9ef647e42cdc158db4b64a1b61f743629225fde6f3e0be2a7c7"
+
+[[package]]
+name = "colored"
+version = "2.0.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "b3616f750b84d8f0de8a58bda93e08e2a81ad3f523089b05f1dffecab48c6cbd"
+dependencies = [
+ "atty",
+ "lazy_static",
+ "winapi",
+]
+
+[[package]]
+name = "cpufeatures"
+version = "0.2.9"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "a17b76ff3a4162b0b27f354a0c87015ddad39d35f9c0c36607a3bdd175dde1f1"
+dependencies = [
+ "libc",
+]
+
+[[package]]
+name = "crc32fast"
+version = "1.3.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "b540bd8bc810d3885c6ea91e2018302f68baba2129ab3e88f32389ee9370880d"
+dependencies = [
+ "cfg-if",
+]
+
+[[package]]
+name = "crossbeam-channel"
+version = "0.5.8"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "a33c2bf77f2df06183c3aa30d1e96c0695a313d4f9c453cc3762a6db39f99200"
+dependencies = [
+ "cfg-if",
+ "crossbeam-utils",
+]
+
+[[package]]
+name = "crossbeam-deque"
+version = "0.8.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "ce6fd6f855243022dcecf8702fef0c297d4338e226845fe067f6341ad9fa0cef"
+dependencies = [
+ "cfg-if",
+ "crossbeam-epoch",
+ "crossbeam-utils",
+]
+
+[[package]]
+name = "crossbeam-epoch"
+version = "0.9.15"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "ae211234986c545741a7dc064309f67ee1e5ad243d0e48335adc0484d960bcc7"
+dependencies = [
+ "autocfg",
+ "cfg-if",
+ "crossbeam-utils",
+ "memoffset",
+ "scopeguard",
+]
+
+[[package]]
+name = "crossbeam-utils"
+version = "0.8.16"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "5a22b2d63d4d1dc0b7f1b6b2747dd0088008a9be28b6ddf0b1e7d335e3037294"
+dependencies = [
+ "cfg-if",
+]
+
+[[package]]
+name = "crunchy"
+version = "0.2.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "7a81dae078cea95a014a339291cec439d2f232ebe854a9d672b796c6afafa9b7"
+
+[[package]]
+name = "crypto-common"
+version = "0.1.6"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "1bfb12502f3fc46cca1bb51ac28df9d618d813cdc3d2f25b9fe775a34af26bb3"
+dependencies = [
+ "generic-array",
+ "typenum",
+]
+
+[[package]]
+name = "digest"
+version = "0.10.7"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "9ed9a281f7bc9b7576e61468ba615a66a5c8cfdff42420a70aa82701a3b1e292"
+dependencies = [
+ "block-buffer",
+ "crypto-common",
+]
+
+[[package]]
+name = "dirs"
+version = "5.0.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "44c45a9d03d6676652bcb5e724c7e988de1acad23a711b5217ab9cbecbec2225"
+dependencies = [
+ "dirs-sys",
+]
+
+[[package]]
+name = "dirs-sys"
+version = "0.4.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "520f05a5cbd335fae5a99ff7a6ab8627577660ee5cfd6a94a6a929b52ff0321c"
+dependencies = [
+ "libc",
+ "option-ext",
+ "redox_users",
+ "windows-sys",
+]
+
+[[package]]
+name = "divrem"
+version = "1.0.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "69dde51e8fef5e12c1d65e0929b03d66e4c0c18282bc30ed2ca050ad6f44dd82"
+
+[[package]]
+name = "doc-comment"
+version = "0.3.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "fea41bba32d969b513997752735605054bc0dfa92b4c56bf1189f2e174be7a10"
+
+[[package]]
+name = "either"
+version = "1.9.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "a26ae43d7bcc3b814de94796a5e736d4029efb0ee900c12e2d54c993ad1a1e07"
+
+[[package]]
+name = "elapsed"
+version = "0.1.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "6f4e5af126dafd0741c2ad62d47f68b28602550102e5f0dd45c8a97fc8b49c29"
+
+[[package]]
+name = "errno"
+version = "0.3.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "4bcfec3a70f97c962c307b2d2c56e358cf1d00b558d74262b5f929ee8cc7e73a"
+dependencies = [
+ "errno-dragonfly",
+ "libc",
+ "windows-sys",
+]
+
+[[package]]
+name = "errno-dragonfly"
+version = "0.1.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "aa68f1b12764fab894d2755d2518754e71b4fd80ecfb822714a1206c2aab39bf"
+dependencies = [
+ "cc",
+ "libc",
+]
+
+[[package]]
+name = "exr"
+version = "1.6.4"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "279d3efcc55e19917fff7ab3ddd6c14afb6a90881a0078465196fe2f99d08c56"
+dependencies = [
+ "bit_field",
+ "flume",
+ "half",
+ "lebe",
+ "miniz_oxide",
+ "rayon-core",
+ "smallvec",
+ "zune-inflate",
+]
+
+[[package]]
+name = "fdeflate"
+version = "0.3.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "d329bdeac514ee06249dabc27877490f17f5d371ec693360768b838e19f3ae10"
+dependencies = [
+ "simd-adler32",
+]
+
+[[package]]
+name = "fixed"
+version = "1.23.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "79386fdcec5e0fde91b1a6a5bcd89677d1f9304f7f986b154a1b9109038854d9"
+dependencies = [
+ "az",
+ "bytemuck",
+ "half",
+ "typenum",
+]
+
+[[package]]
+name = "flate2"
+version = "1.0.26"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "3b9429470923de8e8cbd4d2dc513535400b4b3fef0319fb5c4e1f520a7bef743"
+dependencies = [
+ "crc32fast",
+ "miniz_oxide",
+]
+
+[[package]]
+name = "flume"
+version = "0.10.14"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "1657b4441c3403d9f7b3409e47575237dac27b1b5726df654a6ecbf92f0f7577"
+dependencies = [
+ "futures-core",
+ "futures-sink",
+ "nanorand",
+ "pin-project",
+ "spin",
+]
+
+[[package]]
+name = "fnv"
+version = "1.0.7"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "3f9eec918d3f24069decb9af1554cad7c880e2da24a9afd88aca000531ab82c1"
+
+[[package]]
+name = "futures-core"
+version = "0.3.28"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "4bca583b7e26f571124fe5b7561d49cb2868d79116cfa0eefce955557c6fee8c"
+
+[[package]]
+name = "futures-sink"
+version = "0.3.28"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "f43be4fe21a13b9781a69afa4985b0f6ee0e1afab2c6f454a8cf30e2b2237b6e"
+
+[[package]]
+name = "generic-array"
+version = "0.14.7"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "85649ca51fd72272d7821adaf274ad91c288277713d9c18820d8499a7ff69e9a"
+dependencies = [
+ "typenum",
+ "version_check",
+]
+
+[[package]]
+name = "getrandom"
+version = "0.2.10"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "be4136b2a15dd319360be1c07d9933517ccf0be8f16bf62a3bee4f0d618df427"
+dependencies = [
+ "cfg-if",
+ "js-sys",
+ "libc",
+ "wasi",
+ "wasm-bindgen",
+]
+
+[[package]]
+name = "gif"
+version = "0.12.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "80792593675e051cf94a4b111980da2ba60d4a83e43e0048c5693baab3977045"
+dependencies = [
+ "color_quant",
+ "weezl",
+]
+
+[[package]]
+name = "globset"
+version = "0.4.13"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "759c97c1e17c55525b57192c06a267cda0ac5210b222d6b82189a2338fa1c13d"
+dependencies = [
+ "aho-corasick",
+ "bstr",
+ "fnv",
+ "log",
+ "regex",
+]
+
+[[package]]
+name = "globwalk"
+version = "0.8.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "93e3af942408868f6934a7b85134a3230832b9977cf66125df2f9edcfce4ddcc"
+dependencies = [
+ "bitflags",
+ "ignore",
+ "walkdir",
+]
+
+[[package]]
+name = "half"
+version = "2.3.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "bc52e53916c08643f1b56ec082790d1e86a32e58dc5268f897f313fbae7b4872"
+dependencies = [
+ "cfg-if",
+ "crunchy",
+]
+
+[[package]]
+name = "heck"
+version = "0.4.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "95505c38b4572b2d910cecb0281560f54b440a19336cbbcb27bf6ce6adc6f5a8"
+
+[[package]]
+name = "hermit-abi"
+version = "0.1.19"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "62b467343b94ba476dcb2500d242dadbb39557df889310ac77c5d99100aaac33"
+dependencies = [
+ "libc",
+]
+
+[[package]]
+name = "hermit-abi"
+version = "0.3.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "fed44880c466736ef9a5c5b5facefb5ed0785676d0c02d612db14e54f0d84286"
+
+[[package]]
+name = "ignore"
+version = "0.4.20"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "dbe7873dab538a9a44ad79ede1faf5f30d49f9a5c883ddbab48bce81b64b7492"
+dependencies = [
+ "globset",
+ "lazy_static",
+ "log",
+ "memchr",
+ "regex",
+ "same-file",
+ "thread_local",
+ "walkdir",
+ "winapi-util",
+]
+
+[[package]]
+name = "image"
+version = "0.24.7"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "6f3dfdbdd72063086ff443e297b61695500514b1e41095b6fb9a5ab48a70a711"
+dependencies = [
+ "bytemuck",
+ "byteorder",
+ "color_quant",
+ "exr",
+ "gif",
+ "jpeg-decoder",
+ "num-rational",
+ "num-traits",
+ "png",
+ "qoi",
+ "tiff",
+]
+
+[[package]]
+name = "io-lifetimes"
+version = "1.0.11"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "eae7b9aee968036d54dce06cebaefd919e4472e753296daccd6d344e3e2df0c2"
+dependencies = [
+ "hermit-abi 0.3.1",
+ "libc",
+ "windows-sys",
+]
+
+[[package]]
+name = "is-terminal"
+version = "0.4.7"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "adcf93614601c8129ddf72e2d5633df827ba6551541c6d8c59520a371475be1f"
+dependencies = [
+ "hermit-abi 0.3.1",
+ "io-lifetimes",
+ "rustix",
+ "windows-sys",
+]
+
+[[package]]
+name = "itoa"
+version = "1.0.9"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "af150ab688ff2122fcef229be89cb50dd66af9e01a4ff320cc137eecc9bacc38"
+
+[[package]]
+name = "jpeg-decoder"
+version = "0.3.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "bc0000e42512c92e31c2252315bda326620a4e034105e900c98ec492fa077b3e"
+dependencies = [
+ "rayon",
+]
+
+[[package]]
+name = "js-sys"
+version = "0.3.64"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "c5f195fe497f702db0f318b07fdd68edb16955aed830df8363d837542f8f935a"
+dependencies = [
+ "wasm-bindgen",
+]
+
+[[package]]
+name = "kiddo"
+version = "2.1.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "f344856a9f2b7d52dd29f44dc3182da2f0b7ebcad9f7deb0c4c34b0e070d7835"
+dependencies = [
+ "aligned",
+ "aligned-array",
+ "az",
+ "divrem",
+ "doc-comment",
+ "elapsed",
+ "fixed",
+ "log",
+ "min-max-heap",
+ "num-traits",
+ "rand",
+ "rayon",
+]
+
+[[package]]
+name = "lazy_static"
+version = "1.4.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "e2abad23fbc42b3700f2f279844dc832adb2b2eb069b2df918f455c4e18cc646"
+
+[[package]]
+name = "lebe"
+version = "0.5.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "03087c2bad5e1034e8cace5926dec053fb3790248370865f5117a7d0213354c8"
+
+[[package]]
+name = "libc"
+version = "0.2.146"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "f92be4933c13fd498862a9e02a3055f8a8d9c039ce33db97306fd5a6caa7f29b"
+
+[[package]]
+name = "libm"
+version = "0.2.7"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "f7012b1bbb0719e1097c47611d3898568c546d597c2e74d66f6087edd5233ff4"
+
+[[package]]
+name = "linux-raw-sys"
+version = "0.3.8"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "ef53942eb7bf7ff43a617b3e2c1c4a5ecf5944a7c1bc12d7ee39bbb15e5c1519"
+
+[[package]]
+name = "lock_api"
+version = "0.4.10"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "c1cc9717a20b1bb222f333e6a92fd32f7d8a18ddc5a3191a11af45dcbf4dcd16"
+dependencies = [
+ "autocfg",
+ "scopeguard",
+]
+
+[[package]]
+name = "log"
+version = "0.4.20"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "b5e6163cb8c49088c2c36f57875e58ccd8c87c7427f7fbd50ea6710b2f3f2e8f"
+
+[[package]]
+name = "lutgen"
+version = "0.8.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "3d6430f948cc4381457a2493e5b914db5a3d9b6c2c4ff4ef042a8fed6c4d8a92"
+dependencies = [
+ "clap",
+ "clap_complete",
+ "dirs",
+ "image",
+ "kiddo",
+ "lutgen-palettes",
+ "oklab",
+ "rand",
+ "rand_distr",
+ "rayon",
+ "spinners",
+]
+
+[[package]]
+name = "lutgen-palettes"
+version = "0.2.6"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "6ed32104fb8fbcc586ed1e5e3373233930024baa01719e226a332e589208c9bc"
+dependencies = [
+ "clap",
+ "regex",
+ "serde_json",
+ "tera",
+]
+
+[[package]]
+name = "maplit"
+version = "1.0.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "3e2e65a1a2e43cfcb47a895c4c8b10d1f4a61097f9f254f183aee60cad9c651d"
+
+[[package]]
+name = "memchr"
+version = "2.5.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "2dffe52ecf27772e601905b7522cb4ef790d2cc203488bbd0e2fe85fcb74566d"
+
+[[package]]
+name = "memoffset"
+version = "0.9.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "5a634b1c61a95585bd15607c6ab0c4e5b226e695ff2800ba0cdccddf208c406c"
+dependencies = [
+ "autocfg",
+]
+
+[[package]]
+name = "min-max-heap"
+version = "1.3.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "2687e6cf9c00f48e9284cf9fd15f2ef341d03cc7743abf9df4c5f07fdee50b18"
+
+[[package]]
+name = "miniz_oxide"
+version = "0.7.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "e7810e0be55b428ada41041c41f32c9f1a42817901b4ccf45fa3d4b6561e74c7"
+dependencies = [
+ "adler",
+ "simd-adler32",
+]
+
+[[package]]
+name = "nanorand"
+version = "0.7.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "6a51313c5820b0b02bd422f4b44776fbf47961755c74ce64afc73bfad10226c3"
+dependencies = [
+ "getrandom",
+]
+
+[[package]]
+name = "num-integer"
+version = "0.1.45"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "225d3389fb3509a24c93f5c29eb6bde2586b98d9f016636dff58d7c6f7569cd9"
+dependencies = [
+ "autocfg",
+ "num-traits",
+]
+
+[[package]]
+name = "num-rational"
+version = "0.4.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "0638a1c9d0a3c0914158145bc76cff373a75a627e6ecbfb71cbe6f453a5a19b0"
+dependencies = [
+ "autocfg",
+ "num-integer",
+ "num-traits",
+]
+
+[[package]]
+name = "num-traits"
+version = "0.2.16"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "f30b0abd723be7e2ffca1272140fac1a2f084c77ec3e123c192b66af1ee9e6c2"
+dependencies = [
+ "autocfg",
+ "libm",
+]
+
+[[package]]
+name = "num_cpus"
+version = "1.16.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "4161fcb6d602d4d2081af7c3a45852d875a03dd337a6bfdd6e06407b61342a43"
+dependencies = [
+ "hermit-abi 0.3.1",
+ "libc",
+]
+
+[[package]]
+name = "oklab"
+version = "1.0.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "467e40ada50d13bab19019e3707862b5076ca15841f31ee1474c40397c1b9f11"
+dependencies = [
+ "rgb",
+]
+
+[[package]]
+name = "once_cell"
+version = "1.18.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "dd8b5dd2ae5ed71462c540258bedcb51965123ad7e7ccf4b9a8cafaa4a63576d"
+
+[[package]]
+name = "option-ext"
+version = "0.2.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "04744f49eae99ab78e0d5c0b603ab218f515ea8cfe5a456d7629ad883a3b6e7d"
+
+[[package]]
+name = "pest"
+version = "2.7.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "1acb4a4365a13f749a93f1a094a7805e5cfa0955373a9de860d962eaa3a5fe5a"
+dependencies = [
+ "thiserror",
+ "ucd-trie",
+]
+
+[[package]]
+name = "pest_derive"
+version = "2.7.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "666d00490d4ac815001da55838c500eafb0320019bbaa44444137c48b443a853"
+dependencies = [
+ "pest",
+ "pest_generator",
+]
+
+[[package]]
+name = "pest_generator"
+version = "2.7.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "68ca01446f50dbda87c1786af8770d535423fa8a53aec03b8f4e3d7eb10e0929"
+dependencies = [
+ "pest",
+ "pest_meta",
+ "proc-macro2",
+ "quote",
+ "syn 2.0.18",
+]
+
+[[package]]
+name = "pest_meta"
+version = "2.7.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "56af0a30af74d0445c0bf6d9d051c979b516a1a5af790d251daee76005420a48"
+dependencies = [
+ "once_cell",
+ "pest",
+ "sha2",
+]
+
+[[package]]
+name = "pin-project"
+version = "1.1.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "fda4ed1c6c173e3fc7a83629421152e01d7b1f9b7f65fb301e490e8cfc656422"
+dependencies = [
+ "pin-project-internal",
+]
+
+[[package]]
+name = "pin-project-internal"
+version = "1.1.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "4359fd9c9171ec6e8c62926d6faaf553a8dc3f64e1507e76da7911b4f6a04405"
+dependencies = [
+ "proc-macro2",
+ "quote",
+ "syn 2.0.18",
+]
+
+[[package]]
+name = "png"
+version = "0.17.9"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "59871cc5b6cce7eaccca5a802b4173377a1c2ba90654246789a8fa2334426d11"
+dependencies = [
+ "bitflags",
+ "crc32fast",
+ "fdeflate",
+ "flate2",
+ "miniz_oxide",
+]
+
+[[package]]
+name = "ppv-lite86"
+version = "0.2.17"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "5b40af805b3121feab8a3c29f04d8ad262fa8e0561883e7653e024ae4479e6de"
+
+[[package]]
+name = "proc-macro2"
+version = "1.0.60"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "dec2b086b7a862cf4de201096214fa870344cf922b2b30c167badb3af3195406"
+dependencies = [
+ "unicode-ident",
+]
+
+[[package]]
+name = "qoi"
+version = "0.4.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "7f6d64c71eb498fe9eae14ce4ec935c555749aef511cca85b5568910d6e48001"
+dependencies = [
+ "bytemuck",
+]
+
+[[package]]
+name = "quote"
+version = "1.0.28"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "1b9ab9c7eadfd8df19006f1cf1a4aed13540ed5cbc047010ece5826e10825488"
+dependencies = [
+ "proc-macro2",
+]
+
+[[package]]
+name = "rand"
+version = "0.8.5"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "34af8d1a0e25924bc5b7c43c079c942339d8f0a8b57c39049bef581b46327404"
+dependencies = [
+ "libc",
+ "rand_chacha",
+ "rand_core",
+]
+
+[[package]]
+name = "rand_chacha"
+version = "0.3.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "e6c10a63a0fa32252be49d21e7709d4d4baf8d231c2dbce1eaa8141b9b127d88"
+dependencies = [
+ "ppv-lite86",
+ "rand_core",
+]
+
+[[package]]
+name = "rand_core"
+version = "0.6.4"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "ec0be4795e2f6a28069bec0b5ff3e2ac9bafc99e6a9a7dc3547996c5c816922c"
+dependencies = [
+ "getrandom",
+]
+
+[[package]]
+name = "rand_distr"
+version = "0.4.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "32cb0b9bc82b0a0876c2dd994a7e7a2683d3e7390ca40e6886785ef0c7e3ee31"
+dependencies = [
+ "num-traits",
+ "rand",
+]
+
+[[package]]
+name = "rayon"
+version = "1.7.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "1d2df5196e37bcc87abebc0053e20787d73847bb33134a69841207dd0a47f03b"
+dependencies = [
+ "either",
+ "rayon-core",
+]
+
+[[package]]
+name = "rayon-core"
+version = "1.11.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "4b8f95bd6966f5c87776639160a66bd8ab9895d9d4ab01ddba9fc60661aebe8d"
+dependencies = [
+ "crossbeam-channel",
+ "crossbeam-deque",
+ "crossbeam-utils",
+ "num_cpus",
+]
+
+[[package]]
+name = "redox_syscall"
+version = "0.2.16"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "fb5a58c1855b4b6819d59012155603f0b22ad30cad752600aadfcb695265519a"
+dependencies = [
+ "bitflags",
+]
+
+[[package]]
+name = "redox_users"
+version = "0.4.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "b033d837a7cf162d7993aded9304e30a83213c648b6e389db233191f891e5c2b"
+dependencies = [
+ "getrandom",
+ "redox_syscall",
+ "thiserror",
+]
+
+[[package]]
+name = "regex"
+version = "1.9.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "81bc1d4caf89fac26a70747fe603c130093b53c773888797a6329091246d651a"
+dependencies = [
+ "aho-corasick",
+ "memchr",
+ "regex-automata",
+ "regex-syntax",
+]
+
+[[package]]
+name = "regex-automata"
+version = "0.3.6"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "fed1ceff11a1dddaee50c9dc8e4938bd106e9d89ae372f192311e7da498e3b69"
+dependencies = [
+ "aho-corasick",
+ "memchr",
+ "regex-syntax",
+]
+
+[[package]]
+name = "regex-syntax"
+version = "0.7.4"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "e5ea92a5b6195c6ef2a0295ea818b312502c6fc94dde986c5553242e18fd4ce2"
+
+[[package]]
+name = "rgb"
+version = "0.8.36"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "20ec2d3e3fc7a92ced357df9cebd5a10b6fb2aa1ee797bf7e9ce2f17dffc8f59"
+dependencies = [
+ "bytemuck",
+]
+
+[[package]]
+name = "rustix"
+version = "0.37.20"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "b96e891d04aa506a6d1f318d2771bcb1c7dfda84e126660ace067c9b474bb2c0"
+dependencies = [
+ "bitflags",
+ "errno",
+ "io-lifetimes",
+ "libc",
+ "linux-raw-sys",
+ "windows-sys",
+]
+
+[[package]]
+name = "rustversion"
+version = "1.0.14"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "7ffc183a10b4478d04cbbbfc96d0873219d962dd5accaff2ffbd4ceb7df837f4"
+
+[[package]]
+name = "ryu"
+version = "1.0.15"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "1ad4cc8da4ef723ed60bced201181d83791ad433213d8c24efffda1eec85d741"
+
+[[package]]
+name = "same-file"
+version = "1.0.6"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "93fc1dc3aaa9bfed95e02e6eadabb4baf7e3078b0bd1b4d7b6b0b68378900502"
+dependencies = [
+ "winapi-util",
+]
+
+[[package]]
+name = "scopeguard"
+version = "1.2.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "94143f37725109f92c262ed2cf5e59bce7498c01bcc1502d7b9afe439a4e9f49"
+
+[[package]]
+name = "serde"
+version = "1.0.183"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "32ac8da02677876d532745a130fc9d8e6edfa81a269b107c5b00829b91d8eb3c"
+
+[[package]]
+name = "serde_json"
+version = "1.0.104"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "076066c5f1078eac5b722a31827a8832fe108bed65dfa75e233c89f8206e976c"
+dependencies = [
+ "itoa",
+ "ryu",
+ "serde",
+]
+
+[[package]]
+name = "sha2"
+version = "0.10.7"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "479fb9d862239e610720565ca91403019f2f00410f1864c5aa7479b950a76ed8"
+dependencies = [
+ "cfg-if",
+ "cpufeatures",
+ "digest",
+]
+
+[[package]]
+name = "simd-adler32"
+version = "0.3.7"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "d66dc143e6b11c1eddc06d5c423cfc97062865baf299914ab64caa38182078fe"
+
+[[package]]
+name = "smallvec"
+version = "1.11.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "62bb4feee49fdd9f707ef802e22365a35de4b7b299de4763d44bfea899442ff9"
+
+[[package]]
+name = "spin"
+version = "0.9.8"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "6980e8d7511241f8acf4aebddbb1ff938df5eebe98691418c4468d0b72a96a67"
+dependencies = [
+ "lock_api",
+]
+
+[[package]]
+name = "spinners"
+version = "4.1.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "08615eea740067d9899969bc2891c68a19c315cb1f66640af9a9ecb91b13bcab"
+dependencies = [
+ "lazy_static",
+ "maplit",
+ "strum",
+]
+
+[[package]]
+name = "stable_deref_trait"
+version = "1.2.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "a8f112729512f8e442d81f95a8a7ddf2b7c6b8a1a6f509a95864142b30cab2d3"
+
+[[package]]
+name = "strsim"
+version = "0.10.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "73473c0e59e6d5812c5dfe2a064a6444949f089e20eec9a2e5506596494e4623"
+
+[[package]]
+name = "strum"
+version = "0.24.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "063e6045c0e62079840579a7e47a355ae92f60eb74daaf156fb1e84ba164e63f"
+dependencies = [
+ "strum_macros",
+]
+
+[[package]]
+name = "strum_macros"
+version = "0.24.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "1e385be0d24f186b4ce2f9982191e7101bb737312ad61c1f2f984f34bcf85d59"
+dependencies = [
+ "heck",
+ "proc-macro2",
+ "quote",
+ "rustversion",
+ "syn 1.0.109",
+]
+
+[[package]]
+name = "substring"
+version = "1.4.5"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "42ee6433ecef213b2e72f587ef64a2f5943e7cd16fbd82dbe8bc07486c534c86"
+dependencies = [
+ "autocfg",
+]
+
+[[package]]
+name = "syn"
+version = "1.0.109"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "72b64191b275b66ffe2469e8af2c1cfe3bafa67b529ead792a6d0160888b4237"
+dependencies = [
+ "proc-macro2",
+ "quote",
+ "unicode-ident",
+]
+
+[[package]]
+name = "syn"
+version = "2.0.18"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "32d41677bcbe24c20c52e7c70b0d8db04134c5d1066bf98662e2871ad200ea3e"
+dependencies = [
+ "proc-macro2",
+ "quote",
+ "unicode-ident",
+]
+
+[[package]]
+name = "tera"
+version = "1.19.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "a5ab29bb4f3e256ae6ad5c3e2775aa1f8829f2c0c101fc407bfd3a6df15c60c5"
+dependencies = [
+ "globwalk",
+ "lazy_static",
+ "pest",
+ "pest_derive",
+ "regex",
+ "serde",
+ "serde_json",
+ "thread_local",
+ "unic-segment",
+]
+
+[[package]]
+name = "thiserror"
+version = "1.0.40"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "978c9a314bd8dc99be594bc3c175faaa9794be04a5a5e153caba6915336cebac"
+dependencies = [
+ "thiserror-impl",
+]
+
+[[package]]
+name = "thiserror-impl"
+version = "1.0.40"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "f9456a42c5b0d803c8cd86e73dd7cc9edd429499f37a3550d286d5e86720569f"
+dependencies = [
+ "proc-macro2",
+ "quote",
+ "syn 2.0.18",
+]
+
+[[package]]
+name = "thread_local"
+version = "1.1.4"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "5516c27b78311c50bf42c071425c560ac799b11c30b31f87e3081965fe5e0180"
+dependencies = [
+ "once_cell",
+]
+
+[[package]]
+name = "tiff"
+version = "0.9.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "6d172b0f4d3fba17ba89811858b9d3d97f928aece846475bbda076ca46736211"
+dependencies = [
+ "flate2",
+ "jpeg-decoder",
+ "weezl",
+]
+
+[[package]]
+name = "typenum"
+version = "1.16.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "497961ef93d974e23eb6f433eb5fe1b7930b659f06d12dec6fc44a8f554c0bba"
+
+[[package]]
+name = "ucd-trie"
+version = "0.1.6"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "ed646292ffc8188ef8ea4d1e0e0150fb15a5c2e12ad9b8fc191ae7a8a7f3c4b9"
+
+[[package]]
+name = "unic-char-property"
+version = "0.9.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "a8c57a407d9b6fa02b4795eb81c5b6652060a15a7903ea981f3d723e6c0be221"
+dependencies = [
+ "unic-char-range",
+]
+
+[[package]]
+name = "unic-char-range"
+version = "0.9.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "0398022d5f700414f6b899e10b8348231abf9173fa93144cbc1a43b9793c1fbc"
+
+[[package]]
+name = "unic-common"
+version = "0.9.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "80d7ff825a6a654ee85a63e80f92f054f904f21e7d12da4e22f9834a4aaa35bc"
+
+[[package]]
+name = "unic-segment"
+version = "0.9.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "e4ed5d26be57f84f176157270c112ef57b86debac9cd21daaabbe56db0f88f23"
+dependencies = [
+ "unic-ucd-segment",
+]
+
+[[package]]
+name = "unic-ucd-segment"
+version = "0.9.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "2079c122a62205b421f499da10f3ee0f7697f012f55b675e002483c73ea34700"
+dependencies = [
+ "unic-char-property",
+ "unic-char-range",
+ "unic-ucd-version",
+]
+
+[[package]]
+name = "unic-ucd-version"
+version = "0.9.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "96bd2f2237fe450fcd0a1d2f5f4e91711124f7857ba2e964247776ebeeb7b0c4"
+dependencies = [
+ "unic-common",
+]
+
+[[package]]
+name = "unicode-ident"
+version = "1.0.9"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "b15811caf2415fb889178633e7724bad2509101cde276048e013b9def5e51fa0"
+
+[[package]]
+name = "utf8parse"
+version = "0.2.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "711b9620af191e0cdc7468a8d14e709c3dcdb115b36f838e601583af800a370a"
+
+[[package]]
+name = "version_check"
+version = "0.9.4"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "49874b5167b65d7193b8aba1567f5c7d93d001cafc34600cee003eda787e483f"
+
+[[package]]
+name = "walkdir"
+version = "2.3.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "36df944cda56c7d8d8b7496af378e6b16de9284591917d307c9b4d313c44e698"
+dependencies = [
+ "same-file",
+ "winapi-util",
+]
+
+[[package]]
+name = "wasi"
+version = "0.11.0+wasi-snapshot-preview1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "9c8d87e72b64a3b4db28d11ce29237c246188f4f51057d65a7eab63b7987e423"
+
+[[package]]
+name = "wasm-bindgen"
+version = "0.2.87"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "7706a72ab36d8cb1f80ffbf0e071533974a60d0a308d01a5d0375bf60499a342"
+dependencies = [
+ "cfg-if",
+ "wasm-bindgen-macro",
+]
+
+[[package]]
+name = "wasm-bindgen-backend"
+version = "0.2.87"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "5ef2b6d3c510e9625e5fe6f509ab07d66a760f0885d858736483c32ed7809abd"
+dependencies = [
+ "bumpalo",
+ "log",
+ "once_cell",
+ "proc-macro2",
+ "quote",
+ "syn 2.0.18",
+ "wasm-bindgen-shared",
+]
+
+[[package]]
+name = "wasm-bindgen-macro"
+version = "0.2.87"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "dee495e55982a3bd48105a7b947fd2a9b4a8ae3010041b9e0faab3f9cd028f1d"
+dependencies = [
+ "quote",
+ "wasm-bindgen-macro-support",
+]
+
+[[package]]
+name = "wasm-bindgen-macro-support"
+version = "0.2.87"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "54681b18a46765f095758388f2d0cf16eb8d4169b639ab575a8f5693af210c7b"
+dependencies = [
+ "proc-macro2",
+ "quote",
+ "syn 2.0.18",
+ "wasm-bindgen-backend",
+ "wasm-bindgen-shared",
+]
+
+[[package]]
+name = "wasm-bindgen-shared"
+version = "0.2.87"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "ca6ad05a4870b2bf5fe995117d3728437bd27d7cd5f06f13c17443ef369775a1"
+
+[[package]]
+name = "weezl"
+version = "0.1.7"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "9193164d4de03a926d909d3bc7c30543cecb35400c02114792c2cae20d5e2dbb"
+
+[[package]]
+name = "winapi"
+version = "0.3.9"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "5c839a674fcd7a98952e593242ea400abe93992746761e38641405d28b00f419"
+dependencies = [
+ "winapi-i686-pc-windows-gnu",
+ "winapi-x86_64-pc-windows-gnu",
+]
+
+[[package]]
+name = "winapi-i686-pc-windows-gnu"
+version = "0.4.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "ac3b87c63620426dd9b991e5ce0329eff545bccbbb34f3be09ff6fb6ab51b7b6"
+
+[[package]]
+name = "winapi-util"
+version = "0.1.5"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "70ec6ce85bb158151cae5e5c87f95a8e97d2c0c4b001223f33a334e3ce5de178"
+dependencies = [
+ "winapi",
+]
+
+[[package]]
+name = "winapi-x86_64-pc-windows-gnu"
+version = "0.4.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f"
+
+[[package]]
+name = "windows-sys"
+version = "0.48.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "677d2418bec65e3338edb076e806bc1ec15693c5d0104683f2efe857f61056a9"
+dependencies = [
+ "windows-targets",
+]
+
+[[package]]
+name = "windows-targets"
+version = "0.48.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "7b1eb6f0cd7c80c79759c929114ef071b87354ce476d9d94271031c0497adfd5"
+dependencies = [
+ "windows_aarch64_gnullvm",
+ "windows_aarch64_msvc",
+ "windows_i686_gnu",
+ "windows_i686_msvc",
+ "windows_x86_64_gnu",
+ "windows_x86_64_gnullvm",
+ "windows_x86_64_msvc",
+]
+
+[[package]]
+name = "windows_aarch64_gnullvm"
+version = "0.48.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "91ae572e1b79dba883e0d315474df7305d12f569b400fcf90581b06062f7e1bc"
+
+[[package]]
+name = "windows_aarch64_msvc"
+version = "0.48.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "b2ef27e0d7bdfcfc7b868b317c1d32c641a6fe4629c171b8928c7b08d98d7cf3"
+
+[[package]]
+name = "windows_i686_gnu"
+version = "0.48.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "622a1962a7db830d6fd0a69683c80a18fda201879f0f447f065a3b7467daa241"
+
+[[package]]
+name = "windows_i686_msvc"
+version = "0.48.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "4542c6e364ce21bf45d69fdd2a8e455fa38d316158cfd43b3ac1c5b1b19f8e00"
+
+[[package]]
+name = "windows_x86_64_gnu"
+version = "0.48.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "ca2b8a661f7628cbd23440e50b05d705db3686f894fc9580820623656af974b1"
+
+[[package]]
+name = "windows_x86_64_gnullvm"
+version = "0.48.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "7896dbc1f41e08872e9d5e8f8baa8fdd2677f29468c4e156210174edc7f7b953"
+
+[[package]]
+name = "windows_x86_64_msvc"
+version = "0.48.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "1a515f5799fe4961cb532f983ce2b23082366b898e52ffbce459c86f67c8378a"
+
+[[package]]
+name = "zune-inflate"
+version = "0.2.54"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "73ab332fe2f6680068f3582b16a24f90ad7096d5d39b974d1c0aff0125116f02"
+dependencies = [
+ "simd-adler32",
+]
diff --git a/pkgs/by-name/ca/catppuccinifier-cli/package.nix b/pkgs/by-name/ca/catppuccinifier-cli/package.nix
new file mode 100644
index 000000000000..f9a3b4431fc5
--- /dev/null
+++ b/pkgs/by-name/ca/catppuccinifier-cli/package.nix
@@ -0,0 +1,34 @@
+{ lib
+, rustPlatform
+, fetchFromGitHub
+}:
+
+rustPlatform.buildRustPackage rec {
+  pname = "catppuccinifier-cli";
+  version = "8.0.0";
+
+  src = fetchFromGitHub {
+    owner = "lighttigerXIV";
+    repo = "catppuccinifier";
+    rev = version;
+    hash = "sha256-CEjdCr7QgyQw+1VmeEyt95R0HKE0lAKZHrwahaxgJoU=";
+  };
+
+  sourceRoot = "${src.name}/src/catppuccinifier-cli";
+
+  cargoLock = {
+    lockFile = ./Cargo.lock;
+    outputHashes = {
+      "catppuccinifier-rs-0.1.0" = "sha256-/lwc5cqLuCvGwcCiEHlYkbQZlS13z40OFVl26tpjsTQ=";
+    };
+  };
+
+  meta = {
+    description = "Apply catppuccin flavors to your wallpapers";
+    homepage = "https://github.com/lighttigerXIV/catppuccinifier";
+    license = lib.licenses.mit;
+    mainProgram = "catppuccinifier-cli";
+    maintainers = with lib.maintainers; [ aleksana isabelroses ];
+    platforms = with lib.platforms; linux ++ windows;
+  };
+}
diff --git a/pkgs/development/tools/cdecl/cdecl-2.5-lex.patch b/pkgs/by-name/cd/cdecl/cdecl-2.5-lex.patch
index ecdee5d544f6..ecdee5d544f6 100644
--- a/pkgs/development/tools/cdecl/cdecl-2.5-lex.patch
+++ b/pkgs/by-name/cd/cdecl/cdecl-2.5-lex.patch
diff --git a/pkgs/by-name/cd/cdecl/package.nix b/pkgs/by-name/cd/cdecl/package.nix
new file mode 100644
index 000000000000..016a15e9bea0
--- /dev/null
+++ b/pkgs/by-name/cd/cdecl/package.nix
@@ -0,0 +1,82 @@
+{
+  lib,
+  stdenv,
+  fetchFromGitHub,
+  bison,
+  flex,
+  readline,
+  ncurses,
+}:
+
+stdenv.mkDerivation {
+  pname = "cdecl";
+  version = "2.5-unstable-2024-05-07";
+
+  src = fetchFromGitHub {
+    owner = "ridiculousfish";
+    repo = "cdecl-blocks";
+    rev = "1e6e1596771183d9bb90bcf152d6bc2055219a7e";
+    hash = "sha256-5XuiYkFe+QvVBRIXRieKoE0zbISMvU1iLgEfkw6GnlE=";
+  };
+
+  patches = [
+    ./cdecl-2.5-lex.patch
+    # when `USE_READLINE` is enabled, this option will not be present
+    ./test_remove_interactive_line.patch
+  ];
+
+  prePatch = ''
+    substituteInPlace cdecl.c \
+      --replace 'getline' 'cdecl_getline'
+  '';
+
+  strictDeps = true;
+
+  nativeBuildInputs = [
+    bison
+    flex
+  ];
+
+  buildInputs = [
+    readline
+    ncurses
+  ];
+
+  env = {
+    NIX_CFLAGS_COMPILE = toString (
+      [
+        "-DBSD"
+        "-DUSE_READLINE"
+      ]
+      ++ lib.optionals stdenv.cc.isClang [
+        "-Wno-error=int-conversion"
+        "-Wno-error=incompatible-function-pointer-types"
+      ]
+    );
+    NIX_LDFLAGS = "-lreadline";
+  };
+
+  makeFlags = [
+    "CC=${stdenv.cc.targetPrefix}cc"
+    "PREFIX=${placeholder "out"}"
+    "BINDIR=${placeholder "out"}/bin"
+    "MANDIR=${placeholder "out"}/man1"
+    "CATDIR=${placeholder "out"}/cat1"
+  ];
+
+  doCheck = true;
+  checkTarget = "test";
+
+  preInstall = ''
+    mkdir -p $out/bin;
+  '';
+
+  meta = {
+    description = "Translator English -- C/C++ declarations";
+    homepage = "https://cdecl.org";
+    license = lib.licenses.publicDomain;
+    maintainers = with lib.maintainers; [ sigmanificient ];
+    platforms = lib.platforms.unix;
+    mainProgram = "cdecl";
+  };
+}
diff --git a/pkgs/by-name/cd/cdecl/test_remove_interactive_line.patch b/pkgs/by-name/cd/cdecl/test_remove_interactive_line.patch
new file mode 100644
index 000000000000..5a769f2dfec9
--- /dev/null
+++ b/pkgs/by-name/cd/cdecl/test_remove_interactive_line.patch
@@ -0,0 +1,10 @@
+--- a/test_expected_output.txt	2024-05-07 05:47:13.184419240 +0200
++++ b/test_expected_output.txt	2024-05-07 05:48:38.980122345 +0200
+@@ -26,7 +26,6 @@
+ 	options
+ 	create (-c), nocreate
+ 	prompt, noprompt (-q)
+-	interactive (-i), nointeractive
+ 	ritchie (-r), preansi (-p), ansi (-a) or cplusplus (-+)
+ 
+ Current set values are:
diff --git a/pkgs/by-name/ce/cent/package.nix b/pkgs/by-name/ce/cent/package.nix
new file mode 100644
index 000000000000..8cc910d71c79
--- /dev/null
+++ b/pkgs/by-name/ce/cent/package.nix
@@ -0,0 +1,33 @@
+{
+  lib,
+  buildGoModule,
+  fetchFromGitHub,
+}:
+
+buildGoModule rec {
+  pname = "cent";
+  version = "1.3.3";
+
+  src = fetchFromGitHub {
+    owner = "xm1k3";
+    repo = "cent";
+    rev = "refs/tags/v${version}";
+    hash = "sha256-E3gAtrgWVucV3cD31ntgtdTDkhmqJHOiFwaUdVJj0jQ=";
+  };
+
+  vendorHash = "sha256-LvI9FJFXBnEXNsX3qp2Sl58ccIJtYDGSEtNUwNW/Pp0=";
+
+  ldflags = [
+    "-s"
+    "-w"
+  ];
+
+  meta = with lib; {
+    description = "Tool to handle Nuclei community templates";
+    homepage = "https://github.com/xm1k3/cent";
+    changelog = "https://github.com/xm1k3/cent/releases/tag/v${version}";
+    license = licenses.asl20;
+    maintainers = with maintainers; [ ];
+    mainProgram = "cent";
+  };
+}
diff --git a/pkgs/by-name/ce/centrifugo/package.nix b/pkgs/by-name/ce/centrifugo/package.nix
index 6069eeb4b79d..83e0ce5b7f42 100644
--- a/pkgs/by-name/ce/centrifugo/package.nix
+++ b/pkgs/by-name/ce/centrifugo/package.nix
@@ -14,16 +14,16 @@ let
 in
 buildGoModule rec {
   pname = "centrifugo";
-  version = "5.3.1";
+  version = "5.3.2";
 
   src = fetchFromGitHub {
     owner = "centrifugal";
     repo = "centrifugo";
     rev = "v${version}";
-    hash = "sha256-QKHRIH61xNpQaelrupO9fzmN6XESPU1d/aXCbqYgJXs=";
+    hash = "sha256-h1aI+dAVL/ToHeSdI41i74Kq2JnvGgv2fI5ffhBIfRM=";
   };
 
-  vendorHash = "sha256-fceoOYrDk5puImSckTkEo3hPCpbQE5t8b81sXnLid/Q=";
+  vendorHash = "sha256-mtIRbW8aN1PJs/43aaAa141l2VmVdVHY8bnvfV+r0e8=";
 
   ldflags = [
     "-s"
diff --git a/pkgs/by-name/ch/chezmoi/package.nix b/pkgs/by-name/ch/chezmoi/package.nix
index b808e0920643..afb575230e4c 100644
--- a/pkgs/by-name/ch/chezmoi/package.nix
+++ b/pkgs/by-name/ch/chezmoi/package.nix
@@ -8,16 +8,16 @@
 let
   argset = {
     pname = "chezmoi";
-    version = "2.48.0";
+    version = "2.48.1";
 
     src = fetchFromGitHub {
       owner = "twpayne";
       repo = "chezmoi";
       rev = "v${argset.version}";
-      hash = "sha256-TclY4O5mA14cI7+qvGwt5jSHftxhGaa3ICVn8qdrKqs=";
+      hash = "sha256-v24gS80s7dTDlOO9ouf+Am7KyZPTBWzjG+HyBfFZynw=";
     };
 
-    vendorHash = "sha256-qoXfneNEAsvUgaEFHPF1bf/S8feFX+8HtwQy7nzy8Bo=";
+    vendorHash = "sha256-8KcseMkYww+Ccaw+ovwXhakO9ira2TRI4uQ5TbCZcSE=";
 
     nativeBuildInputs = [
       installShellFiles
diff --git a/pkgs/by-name/ch/chrysalis/package.nix b/pkgs/by-name/ch/chrysalis/package.nix
index dcd469b49681..e0b7a9da78ea 100644
--- a/pkgs/by-name/ch/chrysalis/package.nix
+++ b/pkgs/by-name/ch/chrysalis/package.nix
@@ -14,8 +14,7 @@ let
 in appimageTools.wrapType2 rec {
   inherit name pname src;
 
-  multiArch = false;
-  extraPkgs = p: (appimageTools.defaultFhsEnvArgs.multiPkgs p) ++ [ p.glib ];
+  extraPkgs = pkgs: [ pkgs.glib ];
 
   # Also expose the udev rules here, so it can be used as:
   #   services.udev.packages = [ pkgs.chrysalis ];
diff --git a/pkgs/by-name/ci/cimg/package.nix b/pkgs/by-name/ci/cimg/package.nix
index 1f2bb7f10a77..800d0ce51231 100644
--- a/pkgs/by-name/ci/cimg/package.nix
+++ b/pkgs/by-name/ci/cimg/package.nix
@@ -7,13 +7,13 @@
 
 stdenv.mkDerivation (finalAttrs: {
   pname = "cimg";
-  version = "3.3.5";
+  version = "3.3.6";
 
   src = fetchFromGitHub {
     owner = "GreycLab";
     repo = "CImg";
     rev = "v.${finalAttrs.version}";
-    hash = "sha256-QdQhMEY6Zl3qdvRIeDv/12TL4HMrNJSAQ66vQymOrBU=";
+    hash = "sha256-yNIHCEiLvoNNsYisAKo/jj6Q2mLrLMttZyj2XzrWFU4=";
   };
 
   outputs = [ "out" "doc" ];
diff --git a/pkgs/by-name/cl/clairvoyant/package.nix b/pkgs/by-name/cl/clairvoyant/package.nix
index 9889e1e43c3d..21db94bec6a9 100644
--- a/pkgs/by-name/cl/clairvoyant/package.nix
+++ b/pkgs/by-name/cl/clairvoyant/package.nix
@@ -2,25 +2,24 @@
 , fetchFromGitHub
 , gtk4
 , libadwaita
+, libportal
 , meson
 , ninja
 , pkg-config
 , stdenv
 , vala
 , wrapGAppsHook4
-# Clairvoyant shows a non-dismissable banner recommending the use of the Flatpak version
-, hideUnsupportedVersionBanner ? false
 }:
 
 stdenv.mkDerivation (finalAttrs: {
   pname = "clairvoyant";
-  version = "3.1.3";
+  version = "3.1.7";
 
   src = fetchFromGitHub {
     owner = "cassidyjames";
     repo = "clairvoyant";
     rev = finalAttrs.version;
-    hash = "sha256-eAcd8JJmcsz8dm049g5xsF6gPpNQ6ZvGGIhKAoMlPTU=";
+    hash = "sha256-p9Lgs5z5oRuMQYRKzWp+aQDi0FnxvbQGLZpBigolHUw=";
   };
 
   nativeBuildInputs = [
@@ -34,17 +33,12 @@ stdenv.mkDerivation (finalAttrs: {
   buildInputs = [
     gtk4
     libadwaita
+    libportal
   ];
 
-  preFixup = lib.optionalString hideUnsupportedVersionBanner ''
-    gappsWrapperArgs+=(
-      --set container true
-    )
-  '';
-
   meta = with lib; {
     changelog = "https://github.com/cassidyjames/clairvoyant/releases/tag/${finalAttrs.version}";
-    description = "Ask questions and get psychic answers";
+    description = "Ask questions, get psychic answers";
     homepage = "https://github.com/cassidyjames/clairvoyant";
     license = licenses.gpl3Plus;
     mainProgram = "com.github.cassidyjames.clairvoyant";
diff --git a/pkgs/by-name/cl/clamtk/package.nix b/pkgs/by-name/cl/clamtk/package.nix
index b34850c92599..67c82e52a400 100644
--- a/pkgs/by-name/cl/clamtk/package.nix
+++ b/pkgs/by-name/cl/clamtk/package.nix
@@ -1,7 +1,7 @@
 { lib
 , perlPackages
 , fetchFromGitHub
-, wrapGAppsHook
+, wrapGAppsHook3
 , gobject-introspection
 , perl
 , clamav
@@ -18,7 +18,7 @@ perlPackages.buildPerlPackage rec {
     hash = "sha256-ClBsBXbGj67zgrkA9EjgK7s3OmXOJA+xV5xLGOcMsbI=";
   };
 
-  nativeBuildInputs = [ wrapGAppsHook gobject-introspection ];
+  nativeBuildInputs = [ wrapGAppsHook3 gobject-introspection ];
   buildInputs = [ perl clamav ];
   propagatedBuildInputs = with perlPackages; [ Glib LWP LWPProtocolHttps TextCSV JSON LocaleGettext Gtk3 ];
 
diff --git a/pkgs/by-name/cl/clash-verge-rev/package.nix b/pkgs/by-name/cl/clash-verge-rev/package.nix
index b262d0f7547e..8fc885c11ad9 100644
--- a/pkgs/by-name/cl/clash-verge-rev/package.nix
+++ b/pkgs/by-name/cl/clash-verge-rev/package.nix
@@ -5,11 +5,11 @@
 
 clash-verge.overrideAttrs (old: rec {
   pname = "clash-verge-rev";
-  version = "1.6.0";
+  version = "1.6.1";
 
   src = fetchurl {
     url = "https://github.com/clash-verge-rev/clash-verge-rev/releases/download/v${version}/clash-verge_${version}_amd64.deb";
-    hash = "sha256-wSpWTQ+AuDG3zKocDVatRqVW5yhrOtcbNI+jfMOaXvg=";
+    hash = "sha256-V6W7IJFa8UrbPWPS2tReecZ41oYvAqV4q0NBkkhUHbQ=";
   };
 
   meta = old.meta // (with lib; {
diff --git a/pkgs/by-name/cl/clash-verge/package.nix b/pkgs/by-name/cl/clash-verge/package.nix
index 1a8d6a99198e..83318a36f3f6 100644
--- a/pkgs/by-name/cl/clash-verge/package.nix
+++ b/pkgs/by-name/cl/clash-verge/package.nix
@@ -2,7 +2,7 @@
 , stdenv
 , fetchurl
 , dpkg
-, wrapGAppsHook
+, wrapGAppsHook3
 , autoPatchelfHook
 , clash-meta
 , openssl
@@ -23,7 +23,7 @@ stdenv.mkDerivation rec {
 
   nativeBuildInputs = [
     dpkg
-    wrapGAppsHook
+    wrapGAppsHook3
     autoPatchelfHook
   ];
 
diff --git a/pkgs/development/tools/misc/cli11/default.nix b/pkgs/by-name/cl/cli11/package.nix
index 8c4c58c052b0..d88470fa4d51 100644
--- a/pkgs/development/tools/misc/cli11/default.nix
+++ b/pkgs/by-name/cl/cli11/package.nix
@@ -1,29 +1,34 @@
-{ lib
-, stdenv
-, fetchFromGitHub
-, boost
-, catch2
-, cmake
-, gtest
-, python3
+{
+  lib,
+  stdenv,
+  fetchFromGitHub,
+  boost,
+  catch2,
+  cmake,
+  python3,
 }:
 
-stdenv.mkDerivation rec {
+stdenv.mkDerivation (finalAttrs: {
   pname = "cli11";
   version = "2.3.2";
 
   src = fetchFromGitHub {
     owner = "CLIUtils";
     repo = "CLI11";
-    rev = "v${version}";
+    rev = "v${finalAttrs.version}";
     sha256 = "sha256-x3/kBlf5LdzkTO4NYOKanZBfcU4oK+fJw9L7cf88LsY=";
   };
 
+  buildInputs = [ catch2 ];
   nativeBuildInputs = [ cmake ];
 
-  nativeCheckInputs = [ boost python3 catch2 ];
+  nativeCheckInputs = [
+    boost
+    python3
+  ];
 
   doCheck = true;
+  strictDeps = true;
 
   meta = with lib; {
     description = "Command line parser for C++11";
@@ -32,5 +37,4 @@ stdenv.mkDerivation rec {
     maintainers = with maintainers; [ ];
     license = licenses.bsd3;
   };
-
-}
+})
diff --git a/pkgs/by-name/cl/clipse/package.nix b/pkgs/by-name/cl/clipse/package.nix
index af4b96385d16..e1cef9cfae54 100644
--- a/pkgs/by-name/cl/clipse/package.nix
+++ b/pkgs/by-name/cl/clipse/package.nix
@@ -5,13 +5,13 @@
 
 buildGoModule rec {
   pname = "clipse";
-  version = "0.0.6";
+  version = "0.0.71";
 
   src = fetchFromGitHub {
     owner = "savedra1";
     repo = "clipse";
     rev = "v${version}";
-    hash = "sha256-DLvYTPlLkp98zCzmbeL68B7mHl7RY3ee9rL30vYm5Ow=";
+    hash = "sha256-88GuYGJO5AgWae6LyMO/TpGqtk2yS7pDPS0MkgmJUQ4=";
   };
 
   vendorHash = "sha256-GIUEx4h3xvLySjBAQKajby2cdH8ioHkv8aPskHN0V+w=";
diff --git a/pkgs/by-name/cm/cmake/package.nix b/pkgs/by-name/cm/cmake/package.nix
index f47265ca09c9..ce5ec0803a90 100644
--- a/pkgs/by-name/cm/cmake/package.nix
+++ b/pkgs/by-name/cm/cmake/package.nix
@@ -47,11 +47,11 @@ stdenv.mkDerivation (finalAttrs: {
     + lib.optionalString isMinimalBuild "-minimal"
     + lib.optionalString cursesUI "-cursesUI"
     + lib.optionalString qt5UI "-qt5UI";
-  version = "3.29.1";
+  version = "3.29.2";
 
   src = fetchurl {
     url = "https://cmake.org/files/v${lib.versions.majorMinor finalAttrs.version}/cmake-${finalAttrs.version}.tar.gz";
-    hash = "sha256-f7Auj1e2Kzmqa0z3HoIBSLoaI3JIiElHNQIeMqsO78w=";
+    hash = "sha256-NttLaSaqt0G6bksuotmckZMiITIwi03IJNQSPLcwNS4=";
   };
 
   patches = [
diff --git a/pkgs/applications/version-management/codeberg-cli/default.nix b/pkgs/by-name/co/codeberg-cli/package.nix
index ae63280f7ee7..074d7bc2c8eb 100644
--- a/pkgs/applications/version-management/codeberg-cli/default.nix
+++ b/pkgs/by-name/co/codeberg-cli/package.nix
@@ -1,30 +1,42 @@
-{ lib
-, CoreServices
-, Security
-, fetchFromGitea
-, installShellFiles
-, openssl
-, pkg-config
-, rustPlatform
-, stdenv
+{
+  darwin,
+  fetchFromGitea,
+  installShellFiles,
+  lib,
+  openssl,
+  pkg-config,
+  rustPlatform,
+  stdenv,
 }:
 rustPlatform.buildRustPackage rec {
   pname = "codeberg-cli";
-  version = "0.3.5";
+  version = "0.4.0";
 
   src = fetchFromGitea {
     domain = "codeberg.org";
     owner = "RobWalt";
     repo = "codeberg-cli";
     rev = "v${version}";
-    hash = "sha256-KjH78yqfZoN24TBYyFZuxf7z9poRov0uFYQ8+eq9p/o=";
+    hash = "sha256-g5V3Noqh7Y9v/t/dt7n45/NblqNtpZCKELPc9DOkb8A=";
   };
 
-  cargoHash = "sha256-RE4Zwa5vUWPc42w5GaaYkS6fLIbges1fAsOUuwqR2ag=";
-  nativeBuildInputs = [ pkg-config installShellFiles ];
+  cargoHash = "sha256-zTg/3PcFWzBmKZA7lRIpM3P03d1qpNVBczqWFbnxpic=";
+  nativeBuildInputs = [
+    pkg-config
+    installShellFiles
+  ];
 
-  buildInputs = [ openssl ]
-    ++ lib.optionals stdenv.isDarwin [ CoreServices Security ];
+  buildInputs =
+    [ openssl ]
+    ++ lib.optionals stdenv.isDarwin (
+      let
+        d = darwin.apple_sdk.frameworks;
+      in
+      [
+        d.CoreServices
+        d.Security
+      ]
+    );
 
   postInstall = ''
     installShellCompletion --cmd berg \
diff --git a/pkgs/by-name/co/codeium/package.nix b/pkgs/by-name/co/codeium/package.nix
index cc87e9b5a0d5..18cfe7b98b4a 100644
--- a/pkgs/by-name/co/codeium/package.nix
+++ b/pkgs/by-name/co/codeium/package.nix
@@ -13,10 +13,10 @@ let
   }.${system} or throwSystem;
 
   hash = {
-    x86_64-linux = "sha256-cDMdhfN7PxT687DG1djDNzZXb6E3OrWHXbl1XS6pxi4=";
-    aarch64-linux = "sha256-0wc7fuvyDcbx2HXVq5IMe59r3iNbnXe+gDjCXtU3KjQ=";
-    x86_64-darwin = "sha256-ZWsBfA1AsBFWA3f40coqhaAmnQc1U50VJ1RHWiybq+o=";
-    aarch64-darwin = "sha256-EaoEsBBlpewevk9HstJLZGgQGdPuPb5cqXYkcbGX9WU=";
+    x86_64-linux = "sha256-60wg6DspTyYFVuGjNld5Wb9if51EEXNPNR1wHbomKmY=";
+    aarch64-linux = "sha256-F8MQEoRJ3xYq6sEQNWx9DpLbbxT3lBd/PufPt7l5Bi4=";
+    x86_64-darwin = "sha256-Sz4AT5yGPTIQyzNF6+Ku4pSmMkbHMtCRDRHn9Q5EQ28=";
+    aarch64-darwin = "sha256-4Xatp0ZvRfgCxMME9CrhkZiTwrH4OjF8+E7IV95QH70=";
   }.${system} or throwSystem;
 
   bin = "$out/bin/codeium_language_server";
@@ -24,7 +24,7 @@ let
 in
 stdenv.mkDerivation (finalAttrs: {
   pname = "codeium";
-  version = "1.8.27";
+  version = "1.8.32";
   src = fetchurl {
     name = "${finalAttrs.pname}-${finalAttrs.version}.gz";
     url = "https://github.com/Exafunction/codeium/releases/download/language-server-v${finalAttrs.version}/language_server_${plat}.gz";
diff --git a/pkgs/by-name/co/codux/package.nix b/pkgs/by-name/co/codux/package.nix
index e364aa5c7b01..9b38bf0f1235 100644
--- a/pkgs/by-name/co/codux/package.nix
+++ b/pkgs/by-name/co/codux/package.nix
@@ -5,11 +5,11 @@
 
 let
   pname = "codux";
-  version = "15.25.0";
+  version = "15.26.0";
 
   src = fetchurl {
     url = "https://github.com/wixplosives/codux-versions/releases/download/${version}/Codux-${version}.x86_64.AppImage";
-    sha256 = "sha256-9hO0n+ARAqwYWCbDAKpna1zS3pjHykB3+c6wunWrc6o=";
+    sha256 = "sha256-jja9WYfirltjBdJNCQONowVjMTg0aj265Sjq57qSjbc=";
   };
 
   appimageContents = appimageTools.extractType2 { inherit pname version src; };
diff --git a/pkgs/by-name/co/committed/package.nix b/pkgs/by-name/co/committed/package.nix
new file mode 100644
index 000000000000..cd42172fde9f
--- /dev/null
+++ b/pkgs/by-name/co/committed/package.nix
@@ -0,0 +1,43 @@
+{ lib
+, stdenv
+, fetchFromGitHub
+, rustPlatform
+, darwin
+, testers
+, nix-update-script
+, committed
+}:
+let
+  version = "1.0.20";
+in
+rustPlatform.buildRustPackage {
+  pname = "committed";
+  inherit version;
+
+  src = fetchFromGitHub {
+    owner = "crate-ci";
+    repo = "committed";
+    rev = "refs/tags/v${version}";
+    hash = "sha256-HqZYxV2YjnK7Q3A7B6yVFXME0oc3DZ4RfMkDGa2IQxA=";
+  };
+  cargoHash = "sha256-AmAEGVWq6KxLtiHDGIFVcoP1Wck8z+P9mnDy0SSSJNM=";
+
+  buildInputs = lib.optionals stdenv.isDarwin [ darwin.apple_sdk.frameworks.Security ];
+
+  passthru = {
+    tests.version = testers.testVersion { package = committed; };
+    updateScript = nix-update-script { };
+  };
+
+  meta = {
+    homepage = "https://github.com/crate-ci/committed";
+    changelog = "https://github.com/crate-ci/committed/blob/v${version}/CHANGELOG.md";
+    description = "Nitpicking commit history since beabf39";
+    mainProgram = "committed";
+    license = [
+      lib.licenses.asl20 # or
+      lib.licenses.mit
+    ];
+    maintainers = [ lib.maintainers.pigeonf ];
+  };
+}
diff --git a/pkgs/by-name/co/connman-gtk/package.nix b/pkgs/by-name/co/connman-gtk/package.nix
index 46dce2aa2930..181c43bcde20 100644
--- a/pkgs/by-name/co/connman-gtk/package.nix
+++ b/pkgs/by-name/co/connman-gtk/package.nix
@@ -1,5 +1,5 @@
 { lib, stdenv, fetchFromGitHub, autoconf, automake, intltool, pkg-config,
-gtk3, connman, openconnect, wrapGAppsHook }:
+gtk3, connman, openconnect, wrapGAppsHook3 }:
 
 stdenv.mkDerivation rec {
   pname = "connman-gtk";
@@ -17,7 +17,7 @@ stdenv.mkDerivation rec {
     automake
     intltool
     pkg-config
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
diff --git a/pkgs/by-name/co/connman-notify/package.nix b/pkgs/by-name/co/connman-notify/package.nix
index c8df6bc89352..4b9002441a92 100644
--- a/pkgs/by-name/co/connman-notify/package.nix
+++ b/pkgs/by-name/co/connman-notify/package.nix
@@ -1,4 +1,4 @@
-{ lib, fetchFromGitLab, python3Packages, glib, gobject-introspection, wrapGAppsHook }:
+{ lib, fetchFromGitLab, python3Packages, glib, gobject-introspection, wrapGAppsHook3 }:
 
 python3Packages.buildPythonApplication {
   pname = "connman-notify";
@@ -13,7 +13,7 @@ python3Packages.buildPythonApplication {
 
   format = "other";
 
-  nativeBuildInputs = [ gobject-introspection wrapGAppsHook ];
+  nativeBuildInputs = [ gobject-introspection wrapGAppsHook3 ];
 
   buildInputs = [ glib ];
 
diff --git a/pkgs/development/libraries/coost/default.nix b/pkgs/by-name/co/coost/package.nix
index 7a259d44faf0..648d0f9f4db3 100644
--- a/pkgs/development/libraries/coost/default.nix
+++ b/pkgs/by-name/co/coost/package.nix
@@ -10,15 +10,15 @@
   withOpenSSL ? true,
 }:
 
-stdenv.mkDerivation rec {
+stdenv.mkDerivation (finalAttrs: {
   pname = "coost";
-  version = "3.0.0";
+  version = "3.0.2";
 
   src = fetchFromGitHub {
     owner = "idealvin";
-    repo = pname;
-    rev = "v${version}";
-    sha256 = "sha256-qpJh1yl0lYYszNHGo5Jkbzal2hnVzg7UUxiyg/Grva8=";
+    repo = "coost";
+    rev = "v${finalAttrs.version}";
+    hash = "sha256-HbMenAL/UWsqQ1o7cMeWfwXkLh4GxIKV7iuZQD3hDA8=";
   };
 
   postPatch = ''
@@ -34,6 +34,7 @@ stdenv.mkDerivation rec {
     "-DBUILD_SHARED_LIBS=ON"
   ] ++ lib.optional withCurl "-DWITH_LIBCURL=ON" ++ lib.optional withOpenSSL "-DWITH_OPENSSL=ON";
 
+  outputs = [ "out" "dev" ];
   passthru.updateScript = gitUpdater { };
 
   meta = with lib; {
@@ -43,4 +44,4 @@ stdenv.mkDerivation rec {
     maintainers = [ maintainers.sigmanificient ];
     platforms = platforms.unix;
   };
-}
+})
diff --git a/pkgs/by-name/co/coppwr/Cargo.lock b/pkgs/by-name/co/coppwr/Cargo.lock
index b4bcd405212a..c1be56da8ccb 100644
--- a/pkgs/by-name/co/coppwr/Cargo.lock
+++ b/pkgs/by-name/co/coppwr/Cargo.lock
@@ -4,9 +4,9 @@ version = 3
 
 [[package]]
 name = "ab_glyph"
-version = "0.2.23"
+version = "0.2.25"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "80179d7dd5d7e8c285d67c4a1e652972a92de7475beddfb92028c76463b13225"
+checksum = "6f90148830dac590fac7ccfe78ec4a8ea404c60f75a24e16407a71f0f40de775"
 dependencies = [
  "ab_glyph_rasterizer",
  "owned_ttf_parser",
@@ -20,9 +20,9 @@ checksum = "c71b1793ee61086797f5c80b6efa2b8ffa6d5dd703f118545808a7f2e27f7046"
 
 [[package]]
 name = "accesskit"
-version = "0.11.2"
+version = "0.12.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "76eb1adf08c5bcaa8490b9851fd53cca27fa9880076f178ea9d29f05196728a8"
+checksum = "74a4b14f3d99c1255dcba8f45621ab1a2e7540a0009652d33989005a4d0bfc6b"
 dependencies = [
  "enumn",
  "serde",
@@ -30,59 +30,61 @@ dependencies = [
 
 [[package]]
 name = "accesskit_consumer"
-version = "0.15.2"
+version = "0.16.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "04bb4d9e4772fe0d47df57d0d5dbe5d85dd05e2f37ae1ddb6b105e76be58fb00"
+checksum = "8c17cca53c09fbd7288667b22a201274b9becaa27f0b91bf52a526db95de45e6"
 dependencies = [
  "accesskit",
 ]
 
 [[package]]
 name = "accesskit_macos"
-version = "0.9.0"
+version = "0.10.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "134d0acf6acb667c89d3332999b1a5df4edbc8d6113910f392ebb73f2b03bb56"
+checksum = "cd3b6ae1eabbfbced10e840fd3fce8a93ae84f174b3e4ba892ab7bcb42e477a7"
 dependencies = [
  "accesskit",
  "accesskit_consumer",
- "objc2",
+ "objc2 0.3.0-beta.3.patch-leaks.3",
  "once_cell",
 ]
 
 [[package]]
 name = "accesskit_unix"
-version = "0.5.2"
+version = "0.6.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e084cb5168790c0c112626175412dc5ad127083441a8248ae49ddf6725519e83"
+checksum = "09f46c18d99ba61ad7123dd13eeb0c104436ab6af1df6a1cd8c11054ed394a08"
 dependencies = [
  "accesskit",
  "accesskit_consumer",
- "async-channel 1.9.0",
+ "async-channel",
+ "async-once-cell",
  "atspi",
  "futures-lite 1.13.0",
+ "once_cell",
  "serde",
  "zbus",
 ]
 
 [[package]]
 name = "accesskit_windows"
-version = "0.14.3"
+version = "0.15.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9eac0a7f2d7cd7a93b938af401d3d8e8b7094217989a7c25c55a953023436e31"
+checksum = "afcae27ec0974fc7c3b0b318783be89fd1b2e66dd702179fe600166a38ff4a0b"
 dependencies = [
  "accesskit",
  "accesskit_consumer",
- "arrayvec",
  "once_cell",
  "paste",
- "windows",
+ "static_assertions",
+ "windows 0.48.0",
 ]
 
 [[package]]
 name = "accesskit_winit"
-version = "0.14.4"
+version = "0.16.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "825d23acee1bd6d25cbaa3ca6ed6e73faf24122a774ec33d52c5c86c6ab423c0"
+checksum = "5284218aca17d9e150164428a0ebc7b955f70e3a9a78b4c20894513aabf98a67"
 dependencies = [
  "accesskit",
  "accesskit_macos",
@@ -99,11 +101,12 @@ checksum = "f26201604c87b1e01bd3d98f8d5d9a8fcbb815e8cedb41ffccbeb4bf593a35fe"
 
 [[package]]
 name = "ahash"
-version = "0.8.6"
+version = "0.8.11"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "91429305e9f0a25f6205c5b8e0d2db09e0708a7a6df0f42212bb56c32c8ac97a"
+checksum = "e89da841a80418a9b391ebaea17f5c112ffaaa96f621d2c285b5174da76b9011"
 dependencies = [
  "cfg-if",
+ "getrandom",
  "once_cell",
  "serde",
  "version_check",
@@ -112,29 +115,38 @@ dependencies = [
 
 [[package]]
 name = "aho-corasick"
-version = "1.1.2"
+version = "1.1.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b2969dcb958b36655471fc61f7e416fa76033bdd4bfed0678d8fee1e2d07a1f0"
+checksum = "8e60d3430d3a69478ad0993f19238d2df97c507009a52b3c10addcd7f6bcb916"
 dependencies = [
  "memchr",
 ]
 
 [[package]]
+name = "allocator-api2"
+version = "0.2.18"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "5c6cb57a04249c6480766f7f7cef5467412af1490f8d1e243141daddada3264f"
+
+[[package]]
 name = "android-activity"
-version = "0.4.3"
+version = "0.5.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "64529721f27c2314ced0890ce45e469574a73e5e6fdd6e9da1860eb29285f5e0"
+checksum = "ee91c0c2905bae44f84bfa4e044536541df26b7703fd0888deeb9060fcc44289"
 dependencies = [
  "android-properties",
- "bitflags 1.3.2",
+ "bitflags 2.5.0",
  "cc",
+ "cesu8",
+ "jni",
  "jni-sys",
  "libc",
  "log",
  "ndk",
  "ndk-context",
  "ndk-sys",
- "num_enum 0.6.1",
+ "num_enum",
+ "thiserror",
 ]
 
 [[package]]
@@ -144,25 +156,42 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "fc7eb209b1518d6bb87b283c20095f5228ecda460da70b44f0802523dea6da04"
 
 [[package]]
+name = "android_system_properties"
+version = "0.1.5"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "819e7219dbd41043ac279b19830f2efc897156490d7fd6ea916720117ee66311"
+dependencies = [
+ "libc",
+]
+
+[[package]]
+name = "annotate-snippets"
+version = "0.9.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "ccaf7e9dfbb6ab22c82e473cd1a8a7bd313c19a5b7e40970f3d89ef5a5c9e81e"
+dependencies = [
+ "unicode-width",
+ "yansi-term",
+]
+
+[[package]]
 name = "anyhow"
-version = "1.0.75"
+version = "1.0.82"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a4668cab20f66d8d020e1fbc0ebe47217433c1b6c8f2040faf858554e394ace6"
+checksum = "f538837af36e6f6a9be0faa67f9a314f8119e4e4b5867c6ab40ed60360142519"
 
 [[package]]
 name = "arboard"
-version = "3.3.0"
+version = "3.4.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "aafb29b107435aa276664c1db8954ac27a6e105cdad3c88287a199eb0e313c08"
+checksum = "9fb4009533e8ff8f1450a5bcbc30f4242a1d34442221f72314bea1f5dc9c7f89"
 dependencies = [
  "clipboard-win",
  "log",
- "objc",
- "objc-foundation",
- "objc_id",
+ "objc2 0.5.1",
+ "objc2-app-kit",
+ "objc2-foundation",
  "parking_lot",
- "thiserror",
- "winapi",
  "x11rb",
 ]
 
@@ -179,16 +208,31 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "96d30a06541fbafbc7f82ed10c06164cfbd2c401138f6addd8404629c4b16711"
 
 [[package]]
+name = "as-raw-xcb-connection"
+version = "1.0.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "175571dd1d178ced59193a6fc02dde1b972eb0bc56c892cde9beeceac5bf0f6b"
+
+[[package]]
+name = "ash"
+version = "0.37.3+1.3.251"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "39e9c3835d686b0a6084ab4234fcd1b07dbf6e4767dce60874b12356a25ecd4a"
+dependencies = [
+ "libloading 0.7.4",
+]
+
+[[package]]
 name = "ashpd"
-version = "0.6.7"
+version = "0.7.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2c018490e423efb6f032ef575f873ea57b61d44bec763cfe027b8e8852a027cf"
+checksum = "01992ad7774250d5b7fe214e2676cb99bf92564436d8135ab44fe815e71769a9"
 dependencies = [
- "async-std",
+ "async-fs 2.1.2",
+ "async-net",
  "enumflags2",
  "futures-channel",
  "futures-util",
- "once_cell",
  "rand",
  "serde",
  "serde_repr",
@@ -208,39 +252,27 @@ dependencies = [
 
 [[package]]
 name = "async-channel"
-version = "1.9.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "81953c529336010edd6d8e358f886d9581267795c61b19475b71314bffa46d35"
-dependencies = [
- "concurrent-queue",
- "event-listener 2.5.3",
- "futures-core",
-]
-
-[[package]]
-name = "async-channel"
-version = "2.1.1"
+version = "2.2.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1ca33f4bc4ed1babef42cad36cc1f51fa88be00420404e5b1e80ab1b18f7678c"
+checksum = "136d4d23bcc79e27423727b36823d86233aad06dfea531837b038394d11e9928"
 dependencies = [
  "concurrent-queue",
- "event-listener 4.0.0",
- "event-listener-strategy",
+ "event-listener 5.3.0",
+ "event-listener-strategy 0.5.2",
  "futures-core",
  "pin-project-lite",
 ]
 
 [[package]]
 name = "async-executor"
-version = "1.8.0"
+version = "1.11.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "17ae5ebefcc48e7452b4987947920dac9450be1110cadf34d1b8c116bdbaf97c"
+checksum = "b10202063978b3351199d68f8b22c4e47e4b1b822f8d43fd862d5ea8c006b29a"
 dependencies = [
- "async-lock 3.2.0",
  "async-task",
  "concurrent-queue",
- "fastrand 2.0.1",
- "futures-lite 2.1.0",
+ "fastrand 2.1.0",
+ "futures-lite 2.3.0",
  "slab",
 ]
 
@@ -257,18 +289,14 @@ dependencies = [
 ]
 
 [[package]]
-name = "async-global-executor"
-version = "2.4.1"
+name = "async-fs"
+version = "2.1.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "05b1b633a2115cd122d73b955eadd9916c18c8f510ec9cd1686404c60ad1c29c"
+checksum = "ebcd09b382f40fcd159c2d695175b2ae620ffa5f3bd6f664131efff4e8b9e04a"
 dependencies = [
- "async-channel 2.1.1",
- "async-executor",
- "async-io 2.2.2",
- "async-lock 3.2.0",
+ "async-lock 3.3.0",
  "blocking",
- "futures-lite 2.1.0",
- "once_cell",
+ "futures-lite 2.3.0",
 ]
 
 [[package]]
@@ -293,18 +321,18 @@ dependencies = [
 
 [[package]]
 name = "async-io"
-version = "2.2.2"
+version = "2.3.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6afaa937395a620e33dc6a742c593c01aced20aa376ffb0f628121198578ccc7"
+checksum = "dcccb0f599cfa2f8ace422d3555572f47424da5648a4382a9dd0310ff8210884"
 dependencies = [
- "async-lock 3.2.0",
+ "async-lock 3.3.0",
  "cfg-if",
  "concurrent-queue",
  "futures-io",
- "futures-lite 2.1.0",
+ "futures-lite 2.3.0",
  "parking",
- "polling 3.3.1",
- "rustix 0.38.28",
+ "polling 3.7.0",
+ "rustix 0.38.34",
  "slab",
  "tracing",
  "windows-sys 0.52.0",
@@ -321,16 +349,33 @@ dependencies = [
 
 [[package]]
 name = "async-lock"
-version = "3.2.0"
+version = "3.3.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7125e42787d53db9dd54261812ef17e937c95a51e4d291373b670342fa44310c"
+checksum = "d034b430882f8381900d3fe6f0aaa3ad94f2cb4ac519b429692a1bc2dda4ae7b"
 dependencies = [
- "event-listener 4.0.0",
- "event-listener-strategy",
+ "event-listener 4.0.3",
+ "event-listener-strategy 0.4.0",
  "pin-project-lite",
 ]
 
 [[package]]
+name = "async-net"
+version = "2.0.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "b948000fad4873c1c9339d60f2623323a0cfd3816e5181033c6a5cb68b2accf7"
+dependencies = [
+ "async-io 2.3.2",
+ "blocking",
+ "futures-lite 2.3.0",
+]
+
+[[package]]
+name = "async-once-cell"
+version = "0.5.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "9338790e78aa95a416786ec8389546c4b6a1dfc3dc36071ed9518a9413a542eb"
+
+[[package]]
 name = "async-process"
 version = "1.8.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -343,80 +388,54 @@ dependencies = [
  "cfg-if",
  "event-listener 3.1.0",
  "futures-lite 1.13.0",
- "rustix 0.38.28",
+ "rustix 0.38.34",
  "windows-sys 0.48.0",
 ]
 
 [[package]]
 name = "async-recursion"
-version = "1.0.5"
+version = "1.1.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5fd55a5ba1179988837d24ab4c7cc8ed6efdeff578ede0416b4225a5fca35bd0"
+checksum = "3b43422f69d8ff38f95f1b2bb76517c91589a924d1559a0e935d7c8ce0274c11"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.41",
+ "syn 2.0.60",
 ]
 
 [[package]]
 name = "async-signal"
-version = "0.2.5"
+version = "0.2.6"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9e47d90f65a225c4527103a8d747001fc56e375203592b25ad103e1ca13124c5"
+checksum = "afe66191c335039c7bb78f99dc7520b0cbb166b3a1cb33a03f53d8a1c6f2afda"
 dependencies = [
- "async-io 2.2.2",
- "async-lock 2.8.0",
+ "async-io 2.3.2",
+ "async-lock 3.3.0",
  "atomic-waker",
  "cfg-if",
  "futures-core",
  "futures-io",
- "rustix 0.38.28",
+ "rustix 0.38.34",
  "signal-hook-registry",
  "slab",
- "windows-sys 0.48.0",
-]
-
-[[package]]
-name = "async-std"
-version = "1.12.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "62565bb4402e926b29953c785397c6dc0391b7b446e45008b0049eb43cec6f5d"
-dependencies = [
- "async-channel 1.9.0",
- "async-global-executor",
- "async-io 1.13.0",
- "async-lock 2.8.0",
- "crossbeam-utils",
- "futures-channel",
- "futures-core",
- "futures-io",
- "futures-lite 1.13.0",
- "gloo-timers",
- "kv-log-macro",
- "log",
- "memchr",
- "once_cell",
- "pin-project-lite",
- "pin-utils",
- "slab",
- "wasm-bindgen-futures",
+ "windows-sys 0.52.0",
 ]
 
 [[package]]
 name = "async-task"
-version = "4.6.0"
+version = "4.7.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e1d90cd0b264dfdd8eb5bad0a2c217c1f88fa96a8573f40e7b12de23fb468f46"
+checksum = "8b75356056920673b02621b35afd0f7dda9306d03c79a30f5c56c44cf256e3de"
 
 [[package]]
 name = "async-trait"
-version = "0.1.74"
+version = "0.1.80"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a66537f1bb974b254c98ed142ff995236e81b9d0fe4db0575f46612cb15eb0f9"
+checksum = "c6fa2087f2753a7da8cc1c0dbfcf89579dd57458e36769de5ac750b4671737ca"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.41",
+ "syn 2.0.60",
 ]
 
 [[package]]
@@ -427,64 +446,101 @@ checksum = "1505bd5d3d116872e7271a6d4e16d81d0c8570876c8de68093a09ac269d8aac0"
 
 [[package]]
 name = "atspi"
-version = "0.10.1"
+version = "0.19.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "674e7a3376837b2e7d12d34d58ac47073c491dc3bf6f71a7adaf687d4d817faa"
+checksum = "6059f350ab6f593ea00727b334265c4dfc7fd442ee32d264794bd9bdc68e87ca"
+dependencies = [
+ "atspi-common",
+ "atspi-connection",
+ "atspi-proxies",
+]
+
+[[package]]
+name = "atspi-common"
+version = "0.3.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "92af95f966d2431f962bc632c2e68eda7777330158bf640c4af4249349b2cdf5"
 dependencies = [
- "async-recursion",
- "async-trait",
- "atspi-macros",
  "enumflags2",
- "futures-lite 1.13.0",
  "serde",
- "tracing",
+ "static_assertions",
  "zbus",
  "zbus_names",
+ "zvariant",
 ]
 
 [[package]]
-name = "atspi-macros"
-version = "0.2.0"
+name = "atspi-connection"
+version = "0.3.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "97fb4870a32c0eaa17e35bca0e6b16020635157121fb7d45593d242c295bc768"
+checksum = "a0c65e7d70f86d4c0e3b2d585d9bf3f979f0b19d635a336725a88d279f76b939"
 dependencies = [
- "quote",
- "syn 1.0.109",
+ "atspi-common",
+ "atspi-proxies",
+ "futures-lite 1.13.0",
+ "zbus",
+]
+
+[[package]]
+name = "atspi-proxies"
+version = "0.3.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "6495661273703e7a229356dcbe8c8f38223d697aacfaf0e13590a9ac9977bb52"
+dependencies = [
+ "atspi-common",
+ "serde",
+ "zbus",
 ]
 
 [[package]]
 name = "autocfg"
-version = "1.1.0"
+version = "1.2.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d468802bab17cbc0cc575e9b053f41e72aa36bfa6b7f55e3529ffa43161b97fa"
+checksum = "f1fdabc7756949593fe60f30ec81974b613357de856987752631dea1e3394c80"
 
 [[package]]
 name = "base64"
-version = "0.21.5"
+version = "0.21.7"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "35636a1494ede3b646cc98f74f8e62c773a38a659ebc777a2cf26b9b74171df9"
+checksum = "9d297deb1925b89f2ccc13d7635fa0714f12c87adce1c75356b39ca9b7178567"
 
 [[package]]
 name = "bindgen"
-version = "0.66.1"
+version = "0.69.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f2b84e06fc203107bfbad243f4aba2af864eb7db3b1cf46ea0a023b0b433d2a7"
+checksum = "a00dc851838a2120612785d195287475a3ac45514741da670b735818822129a0"
 dependencies = [
- "bitflags 2.4.1",
+ "annotate-snippets",
+ "bitflags 2.5.0",
  "cexpr",
  "clang-sys",
+ "itertools",
  "lazy_static",
  "lazycell",
- "peeking_take_while",
  "proc-macro2",
  "quote",
  "regex",
  "rustc-hash",
  "shlex",
- "syn 2.0.41",
+ "syn 2.0.60",
 ]
 
 [[package]]
+name = "bit-set"
+version = "0.5.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "0700ddab506f33b20a03b13996eccd309a48e5ff77d0d95926aa0210fb4e95f1"
+dependencies = [
+ "bit-vec",
+]
+
+[[package]]
+name = "bit-vec"
+version = "0.6.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "349f9b6a179ed607305526ca489b34ad0a41aed5f7980fa90eb03160b69598fb"
+
+[[package]]
 name = "bitflags"
 version = "1.3.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -492,9 +548,9 @@ checksum = "bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a"
 
 [[package]]
 name = "bitflags"
-version = "2.4.1"
+version = "2.5.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "327762f6e5a765692301e5bb513e0d9fef63be86bbc14528052b1cd3e6f03e07"
+checksum = "cf4b9d6a944f767f8e5e0db018570623c85f3d925ac718db4e06d0187adb21c1"
 dependencies = [
  "serde",
 ]
@@ -520,7 +576,16 @@ version = "0.1.0-beta.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "0fa55741ee90902547802152aaf3f8e5248aab7e21468089560d4c8840561146"
 dependencies = [
- "objc-sys",
+ "objc-sys 0.2.0-beta.2",
+]
+
+[[package]]
+name = "block-sys"
+version = "0.2.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "ae85a0696e7ea3b835a453750bf002770776609115e6d25c6d2ff28a8200f7e7"
+dependencies = [
+ "objc-sys 0.3.3",
 ]
 
 [[package]]
@@ -529,50 +594,67 @@ version = "0.2.0-alpha.6"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "8dd9e63c1744f755c2f60332b88de39d341e5e86239014ad839bd71c106dec42"
 dependencies = [
- "block-sys",
- "objc2-encode",
+ "block-sys 0.1.0-beta.1",
+ "objc2-encode 2.0.0-pre.2",
+]
+
+[[package]]
+name = "block2"
+version = "0.3.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "15b55663a85f33501257357e6421bb33e769d5c9ffb5ba0921c975a123e35e68"
+dependencies = [
+ "block-sys 0.2.1",
+ "objc2 0.4.1",
+]
+
+[[package]]
+name = "block2"
+version = "0.5.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "43ff7d91d3c1d568065b06c899777d1e48dcf76103a672a0adbc238a7f247f1e"
+dependencies = [
+ "objc2 0.5.1",
 ]
 
 [[package]]
 name = "blocking"
-version = "1.5.1"
+version = "1.6.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6a37913e8dc4ddcc604f0c6d3bf2887c995153af3611de9e23c352b44c1b9118"
+checksum = "495f7104e962b7356f0aeb34247aca1fe7d2e783b346582db7f2904cb5717e88"
 dependencies = [
- "async-channel 2.1.1",
- "async-lock 3.2.0",
+ "async-channel",
+ "async-lock 3.3.0",
  "async-task",
- "fastrand 2.0.1",
  "futures-io",
- "futures-lite 2.1.0",
+ "futures-lite 2.3.0",
  "piper",
- "tracing",
 ]
 
 [[package]]
 name = "bumpalo"
-version = "3.14.0"
+version = "3.16.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7f30e7476521f6f8af1a1c4c0b8cc94f0bee37d91763d0ca2665f299b6cd8aec"
+checksum = "79296716171880943b8470b5f8d03aa55eb2e645a4874bdbb28adb49162e012c"
 
 [[package]]
 name = "bytemuck"
-version = "1.14.0"
+version = "1.15.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "374d28ec25809ee0e23827c2ab573d729e293f281dfe393500e7ad618baa61c6"
+checksum = "5d6d68c57235a3a081186990eca2867354726650f42f7516ca50c28d6281fd15"
 dependencies = [
  "bytemuck_derive",
 ]
 
 [[package]]
 name = "bytemuck_derive"
-version = "1.5.0"
+version = "1.6.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "965ab7eb5f8f97d2a083c799f3a1b994fc397b2fe2da5d1da1626ce15a39f2b1"
+checksum = "4da9a32f3fed317401fa3c862968128267c3106685286e15d5aaa3d7389c2f60"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.41",
+ "syn 2.0.60",
 ]
 
 [[package]]
@@ -583,32 +665,45 @@ checksum = "1fd0f2584146f6f2ef48085050886acf353beff7305ebd1ae69500e27c67f64b"
 
 [[package]]
 name = "bytes"
-version = "1.5.0"
+version = "1.6.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a2bd12c1caf447e69cd4528f47f94d203fd2582878ecb9e9465484c4148a8223"
+checksum = "514de17de45fdb8dc022b1a7975556c53c86f9f0aa5f534b98977b171857c2c9"
 
 [[package]]
 name = "calloop"
-version = "0.10.6"
+version = "0.12.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "52e0d00eb1ea24371a97d2da6201c6747a633dc6dc1988ef503403b4c59504a8"
+checksum = "fba7adb4dd5aa98e5553510223000e7148f621165ec5f9acd7113f6ca4995298"
 dependencies = [
- "bitflags 1.3.2",
+ "bitflags 2.5.0",
  "log",
- "nix 0.25.1",
- "slotmap",
+ "polling 3.7.0",
+ "rustix 0.38.34",
+ "slab",
  "thiserror",
- "vec_map",
+]
+
+[[package]]
+name = "calloop-wayland-source"
+version = "0.2.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "0f0ea9b9476c7fad82841a8dbb380e2eae480c21910feba80725b46931ed8f02"
+dependencies = [
+ "calloop",
+ "rustix 0.38.34",
+ "wayland-backend",
+ "wayland-client",
 ]
 
 [[package]]
 name = "cc"
-version = "1.0.83"
+version = "1.0.96"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f1174fb0b6ec23863f8b971027804a42614e347eafb0a95bf0b12cdae21fc4d0"
+checksum = "065a29261d53ba54260972629f9ca6bffa69bac13cd1fed61420f7fa68b9f8bd"
 dependencies = [
  "jobserver",
  "libc",
+ "once_cell",
 ]
 
 [[package]]
@@ -628,9 +723,9 @@ dependencies = [
 
 [[package]]
 name = "cfg-expr"
-version = "0.15.5"
+version = "0.15.8"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "03915af431787e6ffdcc74c645077518c6b6e01f80b761e0fbbfa288536311b3"
+checksum = "d067ad48b8650848b989a59a86c6c36a995d02d2bf778d45c3c5d57bc2718f02"
 dependencies = [
  "smallvec",
  "target-lexicon",
@@ -659,31 +754,29 @@ dependencies = [
 
 [[package]]
 name = "clang-sys"
-version = "1.6.1"
+version = "1.7.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c688fc74432808e3eb684cae8830a86be1d66a2bd58e1f248ed0960a590baf6f"
+checksum = "67523a3b4be3ce1989d607a828d036249522dd9c1c8de7f4dd2dae43a37369d1"
 dependencies = [
  "glob",
  "libc",
- "libloading 0.7.4",
+ "libloading 0.8.3",
 ]
 
 [[package]]
 name = "clipboard-win"
-version = "4.5.0"
+version = "5.3.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7191c27c2357d9b7ef96baac1773290d4ca63b24205b82a3fd8a0637afcf0362"
+checksum = "79f4473f5144e20d9aceaf2972478f06ddf687831eafeeb434fbaf0acc4144ad"
 dependencies = [
  "error-code",
- "str-buf",
- "winapi",
 ]
 
 [[package]]
 name = "cocoa"
-version = "0.24.1"
+version = "0.25.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f425db7937052c684daec3bd6375c8abe2d146dca4b8b143d6db777c39138f3a"
+checksum = "f6140449f97a6e97f9511815c5632d84c8aacf8ac271ad77c559218161a1373c"
 dependencies = [
  "bitflags 1.3.2",
  "block",
@@ -710,16 +803,57 @@ dependencies = [
 ]
 
 [[package]]
+name = "codespan-reporting"
+version = "0.11.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "3538270d33cc669650c4b093848450d380def10c331d38c768e34cac80576e6e"
+dependencies = [
+ "termcolor",
+ "unicode-width",
+]
+
+[[package]]
 name = "color_quant"
 version = "1.1.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "3d7b894f5411737b7867f4827955924d7c254fc9f4d91a6aad6b097804b1018b"
 
 [[package]]
+name = "com"
+version = "0.6.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "7e17887fd17353b65b1b2ef1c526c83e26cd72e74f598a8dc1bee13a48f3d9f6"
+dependencies = [
+ "com_macros",
+]
+
+[[package]]
+name = "com_macros"
+version = "0.6.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "d375883580a668c7481ea6631fc1a8863e33cc335bf56bfad8d7e6d4b04b13a5"
+dependencies = [
+ "com_macros_support",
+ "proc-macro2",
+ "syn 1.0.109",
+]
+
+[[package]]
+name = "com_macros_support"
+version = "0.6.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "ad899a1087a9296d5644792d7cb72b8e34c1bec8e7d4fbc002230169a6e8710c"
+dependencies = [
+ "proc-macro2",
+ "quote",
+ "syn 1.0.109",
+]
+
+[[package]]
 name = "combine"
-version = "4.6.6"
+version = "4.6.7"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "35ed6e9d84f0b51a7f52daf1c7d71dd136fd7a3f41a8462b8cdb8c78d920fad4"
+checksum = "ba5a308b75df32fe02788e748662718f03fde005016435c444eea572398219fd"
 dependencies = [
  "bytes",
  "memchr",
@@ -727,9 +861,9 @@ dependencies = [
 
 [[package]]
 name = "concurrent-queue"
-version = "2.4.0"
+version = "2.5.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d16048cd947b08fa32c24458a22f5dc5e835264f689f4f5653210c69fd107363"
+checksum = "4ca0197aee26d1ae37445ee532fefce43251d24cc7c166799f4d46817f1d3973"
 dependencies = [
  "crossbeam-utils",
 ]
@@ -745,16 +879,20 @@ dependencies = [
 
 [[package]]
 name = "cookie-factory"
-version = "0.3.2"
+version = "0.3.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "396de984970346b0d9e93d1415082923c679e5ae5c3ee3dcbd104f5610af126b"
+checksum = "9885fa71e26b8ab7855e2ec7cae6e9b380edff76cd052e07c683a0319d51b3a2"
+dependencies = [
+ "futures",
+]
 
 [[package]]
 name = "coppwr"
-version = "1.5.1"
+version = "1.6.0"
 dependencies = [
  "ashpd",
  "eframe",
+ "egui",
  "egui_dock",
  "egui_node_graph",
  "egui_plot",
@@ -781,9 +919,9 @@ checksum = "06ea2b9bc92be3c2baa9334a323ebca2d6f074ff852cd1d7b11064035cd3868f"
 
 [[package]]
 name = "core-graphics"
-version = "0.22.3"
+version = "0.23.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2581bbab3b8ffc6fcbd550bf46c355135d16e9ff2a6ea032ad6b9bf1d7efe4fb"
+checksum = "c07782be35f9e1140080c6b96f0d44b739e2278479f64e02fdab4e32dfd8b081"
 dependencies = [
  "bitflags 1.3.2",
  "core-foundation",
@@ -805,32 +943,48 @@ dependencies = [
 
 [[package]]
 name = "cpufeatures"
-version = "0.2.11"
+version = "0.2.12"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ce420fe07aecd3e67c5f910618fe65e94158f6dcc0adf44e00d69ce2bdfe0fd0"
+checksum = "53fe5e26ff1b7aef8bca9c6080520cfb8d9333c7568e1829cef191a9723e5504"
 dependencies = [
  "libc",
 ]
 
 [[package]]
 name = "crc32fast"
-version = "1.3.2"
+version = "1.4.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b540bd8bc810d3885c6ea91e2018302f68baba2129ab3e88f32389ee9370880d"
+checksum = "b3855a8a784b474f333699ef2bbca9db2c4a1f6d9088a90a2d25b1eb53111eaa"
 dependencies = [
  "cfg-if",
 ]
 
 [[package]]
-name = "crossbeam-utils"
-version = "0.8.17"
+name = "crossbeam-deque"
+version = "0.8.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c06d96137f14f244c37f989d9fff8f95e6c18b918e71f36638f8c49112e4c78f"
+checksum = "613f8cc01fe9cf1a3eb3d7f488fd2fa8388403e97039e2f73692932e291a770d"
 dependencies = [
- "cfg-if",
+ "crossbeam-epoch",
+ "crossbeam-utils",
+]
+
+[[package]]
+name = "crossbeam-epoch"
+version = "0.9.18"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "5b82ac4a3c2ca9c3460964f020e1402edd5753411d7737aa39c3714ad1b5420e"
+dependencies = [
+ "crossbeam-utils",
 ]
 
 [[package]]
+name = "crossbeam-utils"
+version = "0.8.19"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "248e3bacc7dc6baa3b21e405ee045c3047101a49145e7e9eca583ab4c2ca5345"
+
+[[package]]
 name = "crypto-common"
 version = "0.1.6"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -841,6 +995,12 @@ dependencies = [
 ]
 
 [[package]]
+name = "cursor-icon"
+version = "1.1.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "96a6ac251f4a2aca6b3f91340350eab87ae57c3f127ffeb585e92bd336717991"
+
+[[package]]
 name = "derivative"
 version = "2.2.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -894,14 +1054,23 @@ version = "0.5.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "330c60081dcc4c72131f8eb70510f1ac07223e5d4163db481a04a0befcffa412"
 dependencies = [
- "libloading 0.8.1",
+ "libloading 0.8.3",
+]
+
+[[package]]
+name = "document-features"
+version = "0.2.8"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "ef5282ad69563b5fc40319526ba27e0e7363d552a896f0297d54f767717f9b95"
+dependencies = [
+ "litrs",
 ]
 
 [[package]]
 name = "downcast-rs"
-version = "1.2.0"
+version = "1.2.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9ea835d29036a4087793836fa931b08837ad5e957da9e23886b29586fb9b6650"
+checksum = "75b325c5dbd37f80359721ad39aca5a29fb04c89279657cffdda8736d0c0b9d2"
 
 [[package]]
 name = "duplicate"
@@ -909,15 +1078,15 @@ version = "1.0.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "de78e66ac9061e030587b2a2e75cc88f22304913c907b11307bca737141230cb"
 dependencies = [
- "heck",
+ "heck 0.4.1",
  "proc-macro-error",
 ]
 
 [[package]]
 name = "ecolor"
-version = "0.23.0"
+version = "0.27.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "cfdf4e52dbbb615cfd30cf5a5265335c217b5fd8d669593cea74a517d9c605af"
+checksum = "20930a432bbd57a6d55e07976089708d4893f3d556cf42a0d79e9e321fa73b10"
 dependencies = [
  "bytemuck",
  "serde",
@@ -925,14 +1094,16 @@ dependencies = [
 
 [[package]]
 name = "eframe"
-version = "0.23.0"
+version = "0.27.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "26d9efede6c8905d3fc51a5ec9a506d4da4011bbcae0253d0304580fe40af3f5"
+checksum = "020e2ccef6bbcec71dbc542f7eed64a5846fc3076727f5746da8fd307c91bab2"
 dependencies = [
  "bytemuck",
  "cocoa",
  "directories-next",
+ "document-features",
  "egui",
+ "egui-wgpu",
  "egui-winit",
  "egui_glow",
  "glow",
@@ -944,7 +1115,8 @@ dependencies = [
  "objc",
  "parking_lot",
  "percent-encoding",
- "raw-window-handle",
+ "raw-window-handle 0.5.2",
+ "raw-window-handle 0.6.1",
  "ron",
  "serde",
  "static_assertions",
@@ -952,15 +1124,16 @@ dependencies = [
  "wasm-bindgen",
  "wasm-bindgen-futures",
  "web-sys",
+ "web-time",
  "winapi",
  "winit",
 ]
 
 [[package]]
 name = "egui"
-version = "0.23.0"
+version = "0.27.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8bd69fed5fcf4fbb8225b24e80ea6193b61e17a625db105ef0c4d71dde6eb8b7"
+checksum = "584c5d1bf9a67b25778a3323af222dbe1a1feb532190e103901187f92c7fe29a"
 dependencies = [
  "accesskit",
  "ahash",
@@ -972,16 +1145,34 @@ dependencies = [
 ]
 
 [[package]]
+name = "egui-wgpu"
+version = "0.27.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "469ff65843f88a702b731a1532b7d03b0e8e96d283e70f3a22b0e06c46cb9b37"
+dependencies = [
+ "bytemuck",
+ "document-features",
+ "egui",
+ "epaint",
+ "log",
+ "thiserror",
+ "type-map",
+ "web-time",
+ "wgpu",
+ "winit",
+]
+
+[[package]]
 name = "egui-winit"
-version = "0.23.0"
+version = "0.27.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c15479a96d9fadccf5dac690bdc6373b97b8e1c0dd28367058f25a5298da0195"
+checksum = "2e3da0cbe020f341450c599b35b92de4af7b00abde85624fd16f09c885573609"
 dependencies = [
  "accesskit_winit",
  "arboard",
  "egui",
  "log",
- "raw-window-handle",
+ "raw-window-handle 0.6.1",
  "serde",
  "smithay-clipboard",
  "web-time",
@@ -991,9 +1182,9 @@ dependencies = [
 
 [[package]]
 name = "egui_dock"
-version = "0.8.2"
+version = "0.12.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a52f67bcab0eb6050cf8051c614966c1c57129fab23dbeae9c157214779053c7"
+checksum = "c3b8d9a54c0ed60f2670ad387c269663b4771431f090fa586906cf5f0bc586f4"
 dependencies = [
  "duplicate",
  "egui",
@@ -1003,23 +1194,24 @@ dependencies = [
 
 [[package]]
 name = "egui_glow"
-version = "0.23.0"
+version = "0.27.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ce6726c08798822280038bbad2e32f4fc3cbed800cd51c6e34e99cd2d60cc1bc"
+checksum = "e0e5d975f3c86edc3d35b1db88bb27c15dde7c55d3b5af164968ab5ede3f44ca"
 dependencies = [
  "bytemuck",
  "egui",
  "glow",
  "log",
- "memoffset 0.6.5",
+ "memoffset 0.9.1",
  "wasm-bindgen",
  "web-sys",
+ "winit",
 ]
 
 [[package]]
 name = "egui_node_graph"
 version = "0.4.0"
-source = "git+https://github.com/dimtpap/egui_node_graph.git?rev=b6f7f02d31fdb74b120691a6c221f10d60864d5c#b6f7f02d31fdb74b120691a6c221f10d60864d5c"
+source = "git+https://github.com/dimtpap/egui_node_graph.git?rev=3e99a2af2025e72365a4ec5048011041a85002e5#3e99a2af2025e72365a4ec5048011041a85002e5"
 dependencies = [
  "egui",
  "slotmap",
@@ -1029,18 +1221,24 @@ dependencies = [
 
 [[package]]
 name = "egui_plot"
-version = "0.23.0"
+version = "0.27.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c7f33a00fe8eb1ba56535b3dbacdecc7a1365a328908a97c5f3c81bb466be72b"
+checksum = "a7854b86dc1c2d352c5270db3d600011daa913d6b554141a03939761323288a1"
 dependencies = [
  "egui",
 ]
 
 [[package]]
+name = "either"
+version = "1.11.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "a47c1c47d2f5964e29c61246e81db715514cd532db6b5116a25ea3c03d6780a2"
+
+[[package]]
 name = "emath"
-version = "0.23.0"
+version = "0.27.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1ef2b29de53074e575c18b694167ccbe6e5191f7b25fe65175a0d905a32eeec0"
+checksum = "e4c3a552cfca14630702449d35f41c84a0d15963273771c6059175a803620f3f"
 dependencies = [
  "bytemuck",
  "serde",
@@ -1048,9 +1246,9 @@ dependencies = [
 
 [[package]]
 name = "enumflags2"
-version = "0.7.8"
+version = "0.7.9"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5998b4f30320c9d93aed72f63af821bfdac50465b75428fce77b48ec482c3939"
+checksum = "3278c9d5fb675e0a51dabcf4c0d355f692b064171535ba72361be1528a9d8e8d"
 dependencies = [
  "enumflags2_derive",
  "serde",
@@ -1058,31 +1256,31 @@ dependencies = [
 
 [[package]]
 name = "enumflags2_derive"
-version = "0.7.8"
+version = "0.7.9"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f95e2801cd355d4a1a3e3953ce6ee5ae9603a5c833455343a8bfe3f44d418246"
+checksum = "5c785274071b1b420972453b306eeca06acf4633829db4223b58a2a8c5953bc4"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.41",
+ "syn 2.0.60",
 ]
 
 [[package]]
 name = "enumn"
-version = "0.1.12"
+version = "0.1.13"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c2ad8cef1d801a4686bfd8919f0b30eac4c8e48968c437a6405ded4fb5272d2b"
+checksum = "6fd000fd6988e73bbe993ea3db9b1aa64906ab88766d654973924340c8cddb42"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.41",
+ "syn 2.0.60",
 ]
 
 [[package]]
 name = "epaint"
-version = "0.23.0"
+version = "0.27.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "58067b840d009143934d91d8dcb8ded054d8301d7c11a517ace0a99bb1e1595e"
+checksum = "b381f8b149657a4acf837095351839f32cd5c4aec1817fc4df84e18d76334176"
 dependencies = [
  "ab_glyph",
  "ahash",
@@ -1092,6 +1290,7 @@ dependencies = [
  "log",
  "nohash-hasher",
  "parking_lot",
+ "rayon",
  "serde",
 ]
 
@@ -1113,13 +1312,9 @@ dependencies = [
 
 [[package]]
 name = "error-code"
-version = "2.3.1"
+version = "3.2.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "64f18991e7bf11e7ffee451b5318b5c1a73c52d0d0ada6e5a3017c8c1ced6a21"
-dependencies = [
- "libc",
- "str-buf",
-]
+checksum = "a0474425d51df81997e2f90a21591180b38eccf27292d755f3e30750225c175b"
 
 [[package]]
 name = "event-listener"
@@ -1140,9 +1335,20 @@ dependencies = [
 
 [[package]]
 name = "event-listener"
-version = "4.0.0"
+version = "4.0.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "67b215c49b2b248c855fb73579eb1f4f26c38ffdc12973e20e07b91d78d5646e"
+dependencies = [
+ "concurrent-queue",
+ "parking",
+ "pin-project-lite",
+]
+
+[[package]]
+name = "event-listener"
+version = "5.3.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "770d968249b5d99410d61f5bf89057f3199a077a04d087092f58e7d10692baae"
+checksum = "6d9944b8ca13534cdfb2800775f8dd4902ff3fc75a50101466decadfdf322a24"
 dependencies = [
  "concurrent-queue",
  "parking",
@@ -1155,7 +1361,17 @@ version = "0.4.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "958e4d70b6d5e81971bebec42271ec641e7ff4e170a6fa605f2b8a8b65cb97d3"
 dependencies = [
- "event-listener 4.0.0",
+ "event-listener 4.0.3",
+ "pin-project-lite",
+]
+
+[[package]]
+name = "event-listener-strategy"
+version = "0.5.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "0f214dc438f977e6d4e3500aaa277f5ad94ca83fbbd9b1a15713ce2344ccc5a1"
+dependencies = [
+ "event-listener 5.3.0",
  "pin-project-lite",
 ]
 
@@ -1170,24 +1386,24 @@ dependencies = [
 
 [[package]]
 name = "fastrand"
-version = "2.0.1"
+version = "2.1.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "25cbce373ec4653f1a01a31e8a5e5ec0c622dc27ff9c4e6606eefef5cbbed4a5"
+checksum = "9fc0510504f03c51ada170672ac806f1f105a88aa97a5281117e1ddc3368e51a"
 
 [[package]]
 name = "fdeflate"
-version = "0.3.1"
+version = "0.3.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "64d6dafc854908ff5da46ff3f8f473c6984119a2876a383a860246dd7841a868"
+checksum = "4f9bfee30e4dedf0ab8b422f03af778d9612b63f502710fc500a334ebe2de645"
 dependencies = [
  "simd-adler32",
 ]
 
 [[package]]
 name = "flate2"
-version = "1.0.28"
+version = "1.0.30"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "46303f565772937ffe1d394a4fac6f411c6013172fadde9dcdb1e147a086940e"
+checksum = "5f54427cfd1c7829e2a139fcefea601bf088ebca651d2bf53ebc600eac295dae"
 dependencies = [
  "crc32fast",
  "miniz_oxide",
@@ -1195,18 +1411,30 @@ dependencies = [
 
 [[package]]
 name = "foreign-types"
-version = "0.3.2"
+version = "0.5.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f6f339eb8adc052cd2ca78910fda869aefa38d22d5cb648e6485e4d3fc06f3b1"
+checksum = "d737d9aa519fb7b749cbc3b962edcf310a8dd1f4b67c91c4f83975dbdd17d965"
 dependencies = [
+ "foreign-types-macros",
  "foreign-types-shared",
 ]
 
 [[package]]
+name = "foreign-types-macros"
+version = "0.2.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "1a5c6c585bc94aaf2c7b51dd4c2ba22680844aba4c687be581871a6f518c5742"
+dependencies = [
+ "proc-macro2",
+ "quote",
+ "syn 2.0.60",
+]
+
+[[package]]
 name = "foreign-types-shared"
-version = "0.1.1"
+version = "0.3.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "00b0228411908ca8685dba7fc2cdd70ec9990a6e753e89b6ac91a84c40fbaf4b"
+checksum = "aa9a19cbb55df58761df49b23516a86d432839add4af60fc256da840f66ed35b"
 
 [[package]]
 name = "form_urlencoded"
@@ -1218,25 +1446,52 @@ dependencies = [
 ]
 
 [[package]]
+name = "futures"
+version = "0.3.30"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "645c6916888f6cb6350d2550b80fb63e734897a8498abe35cfb732b6487804b0"
+dependencies = [
+ "futures-channel",
+ "futures-core",
+ "futures-executor",
+ "futures-io",
+ "futures-sink",
+ "futures-task",
+ "futures-util",
+]
+
+[[package]]
 name = "futures-channel"
-version = "0.3.29"
+version = "0.3.30"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ff4dd66668b557604244583e3e1e1eada8c5c2e96a6d0d6653ede395b78bbacb"
+checksum = "eac8f7d7865dcb88bd4373ab671c8cf4508703796caa2b1985a9ca867b3fcb78"
 dependencies = [
  "futures-core",
+ "futures-sink",
 ]
 
 [[package]]
 name = "futures-core"
-version = "0.3.29"
+version = "0.3.30"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "dfc6580bb841c5a68e9ef15c77ccc837b40a7504914d52e47b8b0e9bbda25a1d"
+
+[[package]]
+name = "futures-executor"
+version = "0.3.30"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "eb1d22c66e66d9d72e1758f0bd7d4fd0bee04cad842ee34587d68c07e45d088c"
+checksum = "a576fc72ae164fca6b9db127eaa9a9dda0d61316034f33a0a0d4eda41f02b01d"
+dependencies = [
+ "futures-core",
+ "futures-task",
+ "futures-util",
+]
 
 [[package]]
 name = "futures-io"
-version = "0.3.29"
+version = "0.3.30"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8bf34a163b5c4c52d0478a4d757da8fb65cabef42ba90515efee0f6f9fa45aaa"
+checksum = "a44623e20b9681a318efdd71c299b6b222ed6f231972bfe2f224ebad6311f0c1"
 
 [[package]]
 name = "futures-lite"
@@ -1255,11 +1510,11 @@ dependencies = [
 
 [[package]]
 name = "futures-lite"
-version = "2.1.0"
+version = "2.3.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "aeee267a1883f7ebef3700f262d2d54de95dfaf38189015a74fdc4e0c7ad8143"
+checksum = "52527eb5074e35e9339c6b4e8d12600c7128b68fb25dcb9fa9dec18f7c25f3a5"
 dependencies = [
- "fastrand 2.0.1",
+ "fastrand 2.1.0",
  "futures-core",
  "futures-io",
  "parking",
@@ -1268,33 +1523,34 @@ dependencies = [
 
 [[package]]
 name = "futures-macro"
-version = "0.3.29"
+version = "0.3.30"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "53b153fd91e4b0147f4aced87be237c98248656bb01050b96bf3ee89220a8ddb"
+checksum = "87750cf4b7a4c0625b1529e4c543c2182106e4dedc60a2a6455e00d212c489ac"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.41",
+ "syn 2.0.60",
 ]
 
 [[package]]
 name = "futures-sink"
-version = "0.3.29"
+version = "0.3.30"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e36d3378ee38c2a36ad710c5d30c2911d752cb941c00c72dbabfb786a7970817"
+checksum = "9fb8e00e87438d937621c1c6269e53f536c14d3fbd6a042bb24879e57d474fb5"
 
 [[package]]
 name = "futures-task"
-version = "0.3.29"
+version = "0.3.30"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "efd193069b0ddadc69c46389b740bbccdd97203899b48d09c5f7969591d6bae2"
+checksum = "38d84fa142264698cdce1a9f9172cf383a0c82de1bddcf3092901442c4097004"
 
 [[package]]
 name = "futures-util"
-version = "0.3.29"
+version = "0.3.30"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a19526d624e703a3179b3d322efec918b6246ea0fa51d41124525f00f1cc8104"
+checksum = "3d6401deb83407ab3da39eba7e33987a73c3df0c82b4bb5813ee871c19c41d48"
 dependencies = [
+ "futures-channel",
  "futures-core",
  "futures-io",
  "futures-macro",
@@ -1318,19 +1574,19 @@ dependencies = [
 
 [[package]]
 name = "gethostname"
-version = "0.3.0"
+version = "0.4.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "bb65d4ba3173c56a500b555b532f72c42e8d1fe64962b518897f8959fae2c177"
+checksum = "0176e0459c2e4a1fe232f984bca6890e681076abb9934f6cea7c326f3fc47818"
 dependencies = [
  "libc",
- "winapi",
+ "windows-targets 0.48.5",
 ]
 
 [[package]]
 name = "getrandom"
-version = "0.2.11"
+version = "0.2.14"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "fe9006bed769170c11f845cf00c7c1e9092aeb3f268e007c3e760ac68008070f"
+checksum = "94b22e06ecb0110981051723910cbf0b5f5e09a2062dd7663334ee79a9d1286c"
 dependencies = [
  "cfg-if",
  "libc",
@@ -1355,22 +1611,10 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "d2fabcfbdc87f4758337ca535fb41a6d701b65693ce38287d856d1674551ec9b"
 
 [[package]]
-name = "gloo-timers"
-version = "0.2.6"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9b995a66bb87bebce9a0f4a95aed01daca4872c050bfcb21653361c03bc35e5c"
-dependencies = [
- "futures-channel",
- "futures-core",
- "js-sys",
- "wasm-bindgen",
-]
-
-[[package]]
 name = "glow"
-version = "0.12.3"
+version = "0.13.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ca0fe580e4b60a8ab24a868bc08e2f03cbcb20d3d676601fa909386713333728"
+checksum = "bd348e04c43b32574f2de31c8bb397d96c9fcfa1371bd4ca6d8bdc464ab121b1"
 dependencies = [
  "js-sys",
  "slotmap",
@@ -1380,11 +1624,11 @@ dependencies = [
 
 [[package]]
 name = "glutin"
-version = "0.30.10"
+version = "0.31.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8fc93b03242719b8ad39fb26ed2b01737144ce7bd4bfc7adadcef806596760fe"
+checksum = "18fcd4ae4e86d991ad1300b8f57166e5be0c95ef1f63f3f5b827f8a164548746"
 dependencies = [
- "bitflags 1.3.2",
+ "bitflags 2.5.0",
  "cfg_aliases",
  "cgl",
  "core-foundation",
@@ -1392,42 +1636,43 @@ dependencies = [
  "glutin_egl_sys",
  "glutin_glx_sys",
  "glutin_wgl_sys",
- "libloading 0.7.4",
- "objc2",
+ "icrate",
+ "libloading 0.8.3",
+ "objc2 0.4.1",
  "once_cell",
- "raw-window-handle",
- "wayland-sys 0.30.1",
- "windows-sys 0.45.0",
+ "raw-window-handle 0.5.2",
+ "wayland-sys",
+ "windows-sys 0.48.0",
  "x11-dl",
 ]
 
 [[package]]
 name = "glutin-winit"
-version = "0.3.0"
+version = "0.4.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "629a873fc04062830bfe8f97c03773bcd7b371e23bcc465d0a61448cd1588fa4"
+checksum = "1ebcdfba24f73b8412c5181e56f092b5eff16671c514ce896b258a0a64bd7735"
 dependencies = [
  "cfg_aliases",
  "glutin",
- "raw-window-handle",
+ "raw-window-handle 0.5.2",
  "winit",
 ]
 
 [[package]]
 name = "glutin_egl_sys"
-version = "0.5.1"
+version = "0.6.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "af784eb26c5a68ec85391268e074f0aa618c096eadb5d6330b0911cf34fe57c5"
+checksum = "77cc5623f5309ef433c3dd4ca1223195347fe62c413da8e2fdd0eb76db2d9bcd"
 dependencies = [
  "gl_generator",
- "windows-sys 0.45.0",
+ "windows-sys 0.48.0",
 ]
 
 [[package]]
 name = "glutin_glx_sys"
-version = "0.4.0"
+version = "0.5.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1b53cb5fe568964aa066a3ba91eac5ecbac869fb0842cd0dc9e412434f1a1494"
+checksum = "a165fd686c10dcc2d45380b35796e577eacfd43d4660ee741ec8ebe2201b3b4f"
 dependencies = [
  "gl_generator",
  "x11-dl",
@@ -1435,18 +1680,89 @@ dependencies = [
 
 [[package]]
 name = "glutin_wgl_sys"
-version = "0.4.0"
+version = "0.5.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ef89398e90033fc6bc65e9bd42fd29bbbfd483bda5b56dc5562f455550618165"
+checksum = "6c8098adac955faa2d31079b65dc48841251f69efd3ac25477903fc424362ead"
 dependencies = [
  "gl_generator",
 ]
 
 [[package]]
+name = "gpu-alloc"
+version = "0.6.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "fbcd2dba93594b227a1f57ee09b8b9da8892c34d55aa332e034a228d0fe6a171"
+dependencies = [
+ "bitflags 2.5.0",
+ "gpu-alloc-types",
+]
+
+[[package]]
+name = "gpu-alloc-types"
+version = "0.3.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "98ff03b468aa837d70984d55f5d3f846f6ec31fe34bbb97c4f85219caeee1ca4"
+dependencies = [
+ "bitflags 2.5.0",
+]
+
+[[package]]
+name = "gpu-allocator"
+version = "0.25.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "6f56f6318968d03c18e1bcf4857ff88c61157e9da8e47c5f29055d60e1228884"
+dependencies = [
+ "log",
+ "presser",
+ "thiserror",
+ "winapi",
+ "windows 0.52.0",
+]
+
+[[package]]
+name = "gpu-descriptor"
+version = "0.2.4"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "cc11df1ace8e7e564511f53af41f3e42ddc95b56fd07b3f4445d2a6048bc682c"
+dependencies = [
+ "bitflags 2.5.0",
+ "gpu-descriptor-types",
+ "hashbrown",
+]
+
+[[package]]
+name = "gpu-descriptor-types"
+version = "0.1.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "6bf0b36e6f090b7e1d8a4b49c0cb81c1f8376f72198c65dd3ad9ff3556b8b78c"
+dependencies = [
+ "bitflags 2.5.0",
+]
+
+[[package]]
 name = "hashbrown"
-version = "0.14.3"
+version = "0.14.5"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "e5274423e17b7c9fc20b6e7e208532f9b19825d82dfd615708b70edd83df41f1"
+dependencies = [
+ "ahash",
+ "allocator-api2",
+]
+
+[[package]]
+name = "hassle-rs"
+version = "0.11.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "290f1a1d9242c78d09ce40a5e87e7554ee637af1351968159f4952f028f75604"
+checksum = "af2a7e73e1f34c48da31fb668a907f250794837e08faa144fd24f0b8b741e890"
+dependencies = [
+ "bitflags 2.5.0",
+ "com",
+ "libc",
+ "libloading 0.8.3",
+ "thiserror",
+ "widestring",
+ "winapi",
+]
 
 [[package]]
 name = "heck"
@@ -1455,10 +1771,16 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "95505c38b4572b2d910cecb0281560f54b440a19336cbbcb27bf6ce6adc6f5a8"
 
 [[package]]
+name = "heck"
+version = "0.5.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "2304e00983f87ffb38b55b444b5e3b60a884b5d30c0fca7d82fe33449bbe55ea"
+
+[[package]]
 name = "hermit-abi"
-version = "0.3.3"
+version = "0.3.9"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d77f7ec81a6d05a3abb01ab6eb7590f6083d08449fe5a1c8b1e620283546ccb7"
+checksum = "d231dfb89cfffdbc30e7fc41579ed6066ad03abda9e567ccafae602b97ec5024"
 
 [[package]]
 name = "hex"
@@ -1467,6 +1789,12 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "7f24254aa9a54b5c858eaee2f5bccdb46aaf0e486a595ed5fd8f86ba55232a70"
 
 [[package]]
+name = "hexf-parse"
+version = "0.2.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "dfa686283ad6dd069f105e5ab091b04c62850d3e4cf5d67debad1933f55023df"
+
+[[package]]
 name = "home"
 version = "0.5.9"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -1476,6 +1804,17 @@ dependencies = [
 ]
 
 [[package]]
+name = "icrate"
+version = "0.0.4"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "99d3aaff8a54577104bafdf686ff18565c3b6903ca5782a2026ef06e2c7aa319"
+dependencies = [
+ "block2 0.3.0",
+ "dispatch",
+ "objc2 0.4.1",
+]
+
+[[package]]
 name = "idna"
 version = "0.5.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -1487,23 +1826,22 @@ dependencies = [
 
 [[package]]
 name = "image"
-version = "0.24.7"
+version = "0.24.9"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6f3dfdbdd72063086ff443e297b61695500514b1e41095b6fb9a5ab48a70a711"
+checksum = "5690139d2f55868e080017335e4b94cb7414274c74f1669c84fb5feba2c9f69d"
 dependencies = [
  "bytemuck",
  "byteorder",
  "color_quant",
- "num-rational",
  "num-traits",
  "png",
 ]
 
 [[package]]
 name = "indexmap"
-version = "2.1.0"
+version = "2.2.6"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d530e1a18b1cb4c484e6e34556a0d948706958449fca0cab753d649f2bce3d1f"
+checksum = "168fb715dda47215e360912c096649d23d58bf392ac62f73919e831745e40f26"
 dependencies = [
  "equivalent",
  "hashbrown",
@@ -1516,9 +1854,6 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "7a5bbe824c507c5da5956355e86a746d82e0e1464f65d862cc5e71da70e94b2c"
 dependencies = [
  "cfg-if",
- "js-sys",
- "wasm-bindgen",
- "web-sys",
 ]
 
 [[package]]
@@ -1533,6 +1868,15 @@ dependencies = [
 ]
 
 [[package]]
+name = "itertools"
+version = "0.12.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "ba291022dbbd398a455acf126c1e341954079855bc60dfdda641363bd6922569"
+dependencies = [
+ "either",
+]
+
+[[package]]
 name = "jni"
 version = "0.21.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -1556,36 +1900,38 @@ checksum = "8eaf4bc02d17cbdd7ff4c7438cafcdf7fb9a4613313ad11b4f8fefe7d3fa0130"
 
 [[package]]
 name = "jobserver"
-version = "0.1.27"
+version = "0.1.31"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8c37f63953c4c63420ed5fd3d6d398c719489b9f872b9fa683262f8edd363c7d"
+checksum = "d2b099aaa34a9751c5bf0878add70444e1ed2dd73f347be99003d4577277de6e"
 dependencies = [
  "libc",
 ]
 
 [[package]]
 name = "js-sys"
-version = "0.3.66"
+version = "0.3.69"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "cee9c64da59eae3b50095c18d3e74f8b73c0b86d2792824ff01bbce68ba229ca"
+checksum = "29c15563dc2726973df627357ce0c9ddddbea194836909d655df6a75d2cf296d"
 dependencies = [
  "wasm-bindgen",
 ]
 
 [[package]]
-name = "khronos_api"
-version = "3.1.0"
+name = "khronos-egl"
+version = "6.0.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e2db585e1d738fc771bf08a151420d3ed193d9d895a36df7f6f8a9456b911ddc"
+checksum = "6aae1df220ece3c0ada96b8153459b67eebe9ae9212258bb0134ae60416fdf76"
+dependencies = [
+ "libc",
+ "libloading 0.8.3",
+ "pkg-config",
+]
 
 [[package]]
-name = "kv-log-macro"
-version = "1.0.7"
+name = "khronos_api"
+version = "3.1.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0de8b303297635ad57c9f5059fd9cee7a47f8e8daa09df0fcd07dd39fb22977f"
-dependencies = [
- "log",
-]
+checksum = "e2db585e1d738fc771bf08a151420d3ed193d9d895a36df7f6f8a9456b911ddc"
 
 [[package]]
 name = "lazy_static"
@@ -1601,9 +1947,9 @@ checksum = "830d08ce1d1d941e6b30645f1a0eb5643013d835ce3779a5fc208261dbe10f55"
 
 [[package]]
 name = "libc"
-version = "0.2.151"
+version = "0.2.154"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "302d7ab3130588088d277783b1e2d2e10c9e9e4a16dd9050e6ec93fb3e7048f4"
+checksum = "ae743338b92ff9146ce83992f766a31066a91a8c84a45e0e9f21e7cf6de6d346"
 
 [[package]]
 name = "libloading"
@@ -1617,56 +1963,55 @@ dependencies = [
 
 [[package]]
 name = "libloading"
-version = "0.8.1"
+version = "0.8.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c571b676ddfc9a8c12f1f3d3085a7b163966a8fd8098a90640953ce5f6170161"
+checksum = "0c2a198fb6b0eada2a8df47933734e6d35d350665a33a3593d7164fa52c75c19"
 dependencies = [
  "cfg-if",
- "windows-sys 0.48.0",
+ "windows-targets 0.52.5",
 ]
 
 [[package]]
 name = "libredox"
-version = "0.0.1"
+version = "0.0.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "85c833ca1e66078851dba29046874e38f08b2c883700aa29a03ddd3b23814ee8"
+checksum = "3af92c55d7d839293953fcd0fda5ecfe93297cfde6ffbdec13b41d99c0ba6607"
 dependencies = [
- "bitflags 2.4.1",
+ "bitflags 2.5.0",
  "libc",
  "redox_syscall 0.4.1",
 ]
 
 [[package]]
 name = "libredox"
-version = "0.0.2"
+version = "0.1.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3af92c55d7d839293953fcd0fda5ecfe93297cfde6ffbdec13b41d99c0ba6607"
+checksum = "c0ff37bd590ca25063e35af745c343cb7a0271906fb7b37e4813e8f79f00268d"
 dependencies = [
- "bitflags 2.4.1",
+ "bitflags 2.5.0",
  "libc",
- "redox_syscall 0.4.1",
 ]
 
 [[package]]
 name = "libspa"
-version = "0.7.2"
-source = "git+https://gitlab.freedesktop.org/dimtpap/pipewire-rs.git?rev=7bd8b2d3c5d91f56b20c345e97244fff9e58ea0f#7bd8b2d3c5d91f56b20c345e97244fff9e58ea0f"
+version = "0.8.0"
+source = "git+https://gitlab.freedesktop.org/dimtpap/pipewire-rs.git?rev=605d15996f3258b3e1cc34e445dfbdf16a366c7e#605d15996f3258b3e1cc34e445dfbdf16a366c7e"
 dependencies = [
- "bitflags 2.4.1",
+ "bitflags 2.5.0",
  "cc",
  "convert_case",
  "cookie-factory",
  "libc",
  "libspa-sys",
- "nix 0.26.4",
+ "nix 0.27.1",
  "nom",
  "system-deps",
 ]
 
 [[package]]
 name = "libspa-sys"
-version = "0.7.2"
-source = "git+https://gitlab.freedesktop.org/dimtpap/pipewire-rs.git?rev=7bd8b2d3c5d91f56b20c345e97244fff9e58ea0f#7bd8b2d3c5d91f56b20c345e97244fff9e58ea0f"
+version = "0.8.0"
+source = "git+https://gitlab.freedesktop.org/dimtpap/pipewire-rs.git?rev=605d15996f3258b3e1cc34e445dfbdf16a366c7e#605d15996f3258b3e1cc34e445dfbdf16a366c7e"
 dependencies = [
  "bindgen",
  "cc",
@@ -1681,15 +2026,21 @@ checksum = "ef53942eb7bf7ff43a617b3e2c1c4a5ecf5944a7c1bc12d7ee39bbb15e5c1519"
 
 [[package]]
 name = "linux-raw-sys"
-version = "0.4.12"
+version = "0.4.13"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "01cda141df6706de531b6c46c3a33ecca755538219bd484262fa09410c13539c"
+
+[[package]]
+name = "litrs"
+version = "0.4.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c4cd1a83af159aa67994778be9070f0ae1bd732942279cabb14f86f986a21456"
+checksum = "b4ce301924b7887e9d637144fdade93f9dfff9b60981d4ac161db09720d39aa5"
 
 [[package]]
 name = "lock_api"
-version = "0.4.11"
+version = "0.4.12"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3c168f8615b12bc01f9c17e2eb0cc07dcae1940121185446edc3744920e8ef45"
+checksum = "07af8b9cdd281b7915f413fa73f29ebd5d55d0d3f0155584dade1ff18cea1b17"
 dependencies = [
  "autocfg",
  "scopeguard",
@@ -1697,12 +2048,9 @@ dependencies = [
 
 [[package]]
 name = "log"
-version = "0.4.20"
+version = "0.4.21"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b5e6163cb8c49088c2c36f57875e58ccd8c87c7427f7fbd50ea6710b2f3f2e8f"
-dependencies = [
- "value-bag",
-]
+checksum = "90ed8c1e510134f979dbc4f070f87d4313098b704861a105fe34231c70a3901c"
 
 [[package]]
 name = "malloc_buf"
@@ -1715,44 +2063,50 @@ dependencies = [
 
 [[package]]
 name = "memchr"
-version = "2.6.4"
+version = "2.7.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f665ee40bc4a3c5590afb1e9677db74a508659dfd71e126420da8274909a0167"
+checksum = "6c8640c5d730cb13ebd907d8d04b52f55ac9a2eec55b440c8892f40d56c76c1d"
 
 [[package]]
 name = "memmap2"
-version = "0.5.10"
+version = "0.9.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "83faa42c0a078c393f6b29d5db232d8be22776a891f8f56e5284faee4a20b327"
+checksum = "fe751422e4a8caa417e13c3ea66452215d7d63e19e604f4980461212f3ae1322"
 dependencies = [
  "libc",
 ]
 
 [[package]]
 name = "memoffset"
-version = "0.6.5"
+version = "0.7.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5aa361d4faea93603064a027415f07bd8e1d5c88c9fbf68bf56a285428fd79ce"
+checksum = "5de893c32cde5f383baa4c04c5d6dbdd735cfd4a794b0debdb2bb1b421da5ff4"
 dependencies = [
  "autocfg",
 ]
 
 [[package]]
 name = "memoffset"
-version = "0.7.1"
+version = "0.9.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5de893c32cde5f383baa4c04c5d6dbdd735cfd4a794b0debdb2bb1b421da5ff4"
+checksum = "488016bfae457b036d996092f6cb448677611ce4449e970ceaf42695203f218a"
 dependencies = [
  "autocfg",
 ]
 
 [[package]]
-name = "memoffset"
-version = "0.9.0"
+name = "metal"
+version = "0.27.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5a634b1c61a95585bd15607c6ab0c4e5b226e695ff2800ba0cdccddf208c406c"
+checksum = "c43f73953f8cbe511f021b58f18c3ce1c3d1ae13fe953293e13345bf83217f25"
 dependencies = [
- "autocfg",
+ "bitflags 2.5.0",
+ "block",
+ "core-graphics-types",
+ "foreign-types",
+ "log",
+ "objc",
+ "paste",
 ]
 
 [[package]]
@@ -1763,37 +2117,47 @@ checksum = "68354c5c6bd36d73ff3feceb05efa59b6acb7626617f4962be322a825e61f79a"
 
 [[package]]
 name = "miniz_oxide"
-version = "0.7.1"
+version = "0.7.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e7810e0be55b428ada41041c41f32c9f1a42817901b4ccf45fa3d4b6561e74c7"
+checksum = "9d811f3e15f28568be3407c8e7fdb6514c1cda3cb30683f15b6a1a1dc4ea14a7"
 dependencies = [
  "adler",
  "simd-adler32",
 ]
 
 [[package]]
-name = "mio"
-version = "0.8.10"
+name = "naga"
+version = "0.19.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8f3d0b296e374a4e6f3c7b0a1f5a51d748a0d34c85e7dc48fc3fa9a87657fe09"
+checksum = "50e3524642f53d9af419ab5e8dd29d3ba155708267667c2f3f06c88c9e130843"
 dependencies = [
- "libc",
+ "bit-set",
+ "bitflags 2.5.0",
+ "codespan-reporting",
+ "hexf-parse",
+ "indexmap",
  "log",
- "wasi",
- "windows-sys 0.48.0",
+ "num-traits",
+ "rustc-hash",
+ "spirv",
+ "termcolor",
+ "thiserror",
+ "unicode-xid",
 ]
 
 [[package]]
 name = "ndk"
-version = "0.7.0"
+version = "0.8.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "451422b7e4718271c8b5b3aadf5adedba43dc76312454b387e98fae0fc951aa0"
+checksum = "2076a31b7010b17a38c01907c45b945e8f11495ee4dd588309718901b1f7a5b7"
 dependencies = [
- "bitflags 1.3.2",
+ "bitflags 2.5.0",
  "jni-sys",
+ "log",
  "ndk-sys",
- "num_enum 0.5.11",
- "raw-window-handle",
+ "num_enum",
+ "raw-window-handle 0.5.2",
+ "raw-window-handle 0.6.1",
  "thiserror",
 ]
 
@@ -1805,49 +2169,34 @@ checksum = "27b02d87554356db9e9a873add8782d4ea6e3e58ea071a9adb9a2e8ddb884a8b"
 
 [[package]]
 name = "ndk-sys"
-version = "0.4.1+23.1.7779620"
+version = "0.5.0+25.2.9519653"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3cf2aae958bd232cac5069850591667ad422d263686d75b52a065f9badeee5a3"
+checksum = "8c196769dd60fd4f363e11d948139556a344e79d451aeb2fa2fd040738ef7691"
 dependencies = [
  "jni-sys",
 ]
 
 [[package]]
 name = "nix"
-version = "0.24.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "fa52e972a9a719cecb6864fb88568781eb706bac2cd1d4f04a648542dbf78069"
-dependencies = [
- "bitflags 1.3.2",
- "cfg-if",
- "libc",
- "memoffset 0.6.5",
-]
-
-[[package]]
-name = "nix"
-version = "0.25.1"
+version = "0.26.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f346ff70e7dbfd675fe90590b92d59ef2de15a8779ae305ebcbfd3f0caf59be4"
+checksum = "598beaf3cc6fdd9a5dfb1630c2800c7acd31df7aaf0f565796fba2b53ca1af1b"
 dependencies = [
- "autocfg",
  "bitflags 1.3.2",
  "cfg-if",
  "libc",
- "memoffset 0.6.5",
+ "memoffset 0.7.1",
 ]
 
 [[package]]
 name = "nix"
-version = "0.26.4"
+version = "0.27.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "598beaf3cc6fdd9a5dfb1630c2800c7acd31df7aaf0f565796fba2b53ca1af1b"
+checksum = "2eb04e9c688eff1c89d72b407f168cf79bb9e867a9d3323ed6c01519eb9cc053"
 dependencies = [
- "bitflags 1.3.2",
+ "bitflags 2.5.0",
  "cfg-if",
  "libc",
- "memoffset 0.7.1",
- "pin-utils",
 ]
 
 [[package]]
@@ -1867,112 +2216,109 @@ dependencies = [
 ]
 
 [[package]]
-name = "num-integer"
-version = "0.1.45"
+name = "num-traits"
+version = "0.2.18"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "225d3389fb3509a24c93f5c29eb6bde2586b98d9f016636dff58d7c6f7569cd9"
+checksum = "da0df0e5185db44f69b44f26786fe401b6c293d1907744beaa7fa62b2e5a517a"
 dependencies = [
  "autocfg",
- "num-traits",
 ]
 
 [[package]]
-name = "num-rational"
-version = "0.4.1"
+name = "num_enum"
+version = "0.7.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0638a1c9d0a3c0914158145bc76cff373a75a627e6ecbfb71cbe6f453a5a19b0"
+checksum = "02339744ee7253741199f897151b38e72257d13802d4ee837285cc2990a90845"
 dependencies = [
- "autocfg",
- "num-integer",
- "num-traits",
+ "num_enum_derive",
 ]
 
 [[package]]
-name = "num-traits"
-version = "0.2.17"
+name = "num_enum_derive"
+version = "0.7.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "39e3200413f237f41ab11ad6d161bc7239c84dcb631773ccd7de3dfe4b5c267c"
+checksum = "681030a937600a36906c185595136d26abfebb4aa9c65701cefcaf8578bb982b"
 dependencies = [
- "autocfg",
+ "proc-macro-crate 3.1.0",
+ "proc-macro2",
+ "quote",
+ "syn 2.0.60",
 ]
 
 [[package]]
-name = "num_enum"
-version = "0.5.11"
+name = "objc"
+version = "0.2.7"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1f646caf906c20226733ed5b1374287eb97e3c2a5c227ce668c1f2ce20ae57c9"
+checksum = "915b1b472bc21c53464d6c8461c9d3af805ba1ef837e1cac254428f4a77177b1"
 dependencies = [
- "num_enum_derive 0.5.11",
+ "malloc_buf",
+ "objc_exception",
 ]
 
 [[package]]
-name = "num_enum"
-version = "0.6.1"
+name = "objc-sys"
+version = "0.2.0-beta.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7a015b430d3c108a207fd776d2e2196aaf8b1cf8cf93253e3a097ff3085076a1"
-dependencies = [
- "num_enum_derive 0.6.1",
-]
+checksum = "df3b9834c1e95694a05a828b59f55fa2afec6288359cda67146126b3f90a55d7"
 
 [[package]]
-name = "num_enum_derive"
-version = "0.5.11"
+name = "objc-sys"
+version = "0.3.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "dcbff9bc912032c62bf65ef1d5aea88983b420f4f839db1e9b0c281a25c9c799"
-dependencies = [
- "proc-macro-crate",
- "proc-macro2",
- "quote",
- "syn 1.0.109",
-]
+checksum = "da284c198fb9b7b0603f8635185e85fbd5b64ee154b1ed406d489077de2d6d60"
 
 [[package]]
-name = "num_enum_derive"
-version = "0.6.1"
+name = "objc2"
+version = "0.3.0-beta.3.patch-leaks.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "96667db765a921f7b295ffee8b60472b686a51d4f21c2ee4ffdb94c7013b65a6"
+checksum = "7e01640f9f2cb1220bbe80325e179e532cb3379ebcd1bf2279d703c19fe3a468"
 dependencies = [
- "proc-macro-crate",
- "proc-macro2",
- "quote",
- "syn 2.0.41",
+ "block2 0.2.0-alpha.6",
+ "objc-sys 0.2.0-beta.2",
+ "objc2-encode 2.0.0-pre.2",
 ]
 
 [[package]]
-name = "objc"
-version = "0.2.7"
+name = "objc2"
+version = "0.4.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "915b1b472bc21c53464d6c8461c9d3af805ba1ef837e1cac254428f4a77177b1"
+checksum = "559c5a40fdd30eb5e344fbceacf7595a81e242529fb4e21cf5f43fb4f11ff98d"
 dependencies = [
- "malloc_buf",
+ "objc-sys 0.3.3",
+ "objc2-encode 3.0.0",
 ]
 
 [[package]]
-name = "objc-foundation"
-version = "0.1.1"
+name = "objc2"
+version = "0.5.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1add1b659e36c9607c7aab864a76c7a4c2760cd0cd2e120f3fb8b952c7e22bf9"
+checksum = "b4b25e1034d0e636cd84707ccdaa9f81243d399196b8a773946dcffec0401659"
 dependencies = [
- "block",
- "objc",
- "objc_id",
+ "objc-sys 0.3.3",
+ "objc2-encode 4.0.1",
 ]
 
 [[package]]
-name = "objc-sys"
-version = "0.2.0-beta.2"
+name = "objc2-app-kit"
+version = "0.2.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "df3b9834c1e95694a05a828b59f55fa2afec6288359cda67146126b3f90a55d7"
+checksum = "fb79768a710a9a1798848179edb186d1af7e8a8679f369e4b8d201dd2a034047"
+dependencies = [
+ "block2 0.5.0",
+ "objc2 0.5.1",
+ "objc2-core-data",
+ "objc2-foundation",
+]
 
 [[package]]
-name = "objc2"
-version = "0.3.0-beta.3.patch-leaks.3"
+name = "objc2-core-data"
+version = "0.2.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7e01640f9f2cb1220bbe80325e179e532cb3379ebcd1bf2279d703c19fe3a468"
+checksum = "6e092bc42eaf30a08844e6a076938c60751225ec81431ab89f5d1ccd9f958d6c"
 dependencies = [
- "block2",
- "objc-sys",
- "objc2-encode",
+ "block2 0.5.0",
+ "objc2 0.5.1",
+ "objc2-foundation",
 ]
 
 [[package]]
@@ -1981,16 +2327,38 @@ version = "2.0.0-pre.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "abfcac41015b00a120608fdaa6938c44cb983fee294351cc4bac7638b4e50512"
 dependencies = [
- "objc-sys",
+ "objc-sys 0.2.0-beta.2",
 ]
 
 [[package]]
-name = "objc_id"
-version = "0.1.1"
+name = "objc2-encode"
+version = "3.0.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "d079845b37af429bfe5dfa76e6d087d788031045b25cfc6fd898486fd9847666"
+
+[[package]]
+name = "objc2-encode"
+version = "4.0.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "88658da63e4cc2c8adb1262902cd6af51094df0488b760d6fd27194269c0950a"
+
+[[package]]
+name = "objc2-foundation"
+version = "0.2.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c92d4ddb4bd7b50d730c215ff871754d0da6b2178849f8a2a2ab69712d0c073b"
+checksum = "cfaefe14254871ea16c7d88968c0ff14ba554712a20d76421eec52f0a7fb8904"
 dependencies = [
- "objc",
+ "block2 0.5.0",
+ "objc2 0.5.1",
+]
+
+[[package]]
+name = "objc_exception"
+version = "0.1.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "ad970fb455818ad6cba4c122ad012fae53ae8b4795f86378bce65e4f6bab2ca4"
+dependencies = [
+ "cc",
 ]
 
 [[package]]
@@ -2035,9 +2403,9 @@ checksum = "bb813b8af86854136c6922af0598d719255ecb2179515e6e7730d468f05c9cae"
 
 [[package]]
 name = "parking_lot"
-version = "0.12.1"
+version = "0.12.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3742b2c103b9f06bc9fff0a37ff4912935851bee6d36f3c02bcc755bcfec228f"
+checksum = "7e4af0ca4f6caed20e900d564c242b8e5d4903fdacf31d3daf527b66fe6f42fb"
 dependencies = [
  "lock_api",
  "parking_lot_core",
@@ -2045,15 +2413,15 @@ dependencies = [
 
 [[package]]
 name = "parking_lot_core"
-version = "0.9.9"
+version = "0.9.10"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4c42a9226546d68acdd9c0a280d17ce19bfe27a46bf68784e4066115788d008e"
+checksum = "1e401f977ab385c9e4e3ab30627d6f26d00e2c73eef317493c4ec6d468726cf8"
 dependencies = [
  "cfg-if",
  "libc",
- "redox_syscall 0.4.1",
+ "redox_syscall 0.5.1",
  "smallvec",
- "windows-targets 0.48.5",
+ "windows-targets 0.52.5",
 ]
 
 [[package]]
@@ -2063,12 +2431,6 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "de3145af08024dea9fa9914f381a17b8fc6034dfb00f3a84013f7ff43f29ed4c"
 
 [[package]]
-name = "peeking_take_while"
-version = "0.1.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "19b17cddbe7ec3f8bc800887bab5e717348c95ea2ca0b1bf0837fb964dc67099"
-
-[[package]]
 name = "percent-encoding"
 version = "2.3.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -2076,9 +2438,9 @@ checksum = "e3148f5046208a5d56bcfc03053e3ca6334e51da8dfb19b6cdc8b306fae3283e"
 
 [[package]]
 name = "pin-project-lite"
-version = "0.2.13"
+version = "0.2.14"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8afb450f006bf6385ca15ef45d71d2288452bc3683ce2e2cacc0d18e4be60b58"
+checksum = "bda66fc9667c18cb2758a2ac84d1167245054bcf85d5d1aaa6923f45801bdd02"
 
 [[package]]
 name = "pin-utils"
@@ -2093,21 +2455,21 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "668d31b1c4eba19242f2088b2bf3316b82ca31082a8335764db4e083db7485d4"
 dependencies = [
  "atomic-waker",
- "fastrand 2.0.1",
+ "fastrand 2.1.0",
  "futures-io",
 ]
 
 [[package]]
 name = "pipewire"
-version = "0.7.2"
-source = "git+https://gitlab.freedesktop.org/dimtpap/pipewire-rs.git?rev=7bd8b2d3c5d91f56b20c345e97244fff9e58ea0f#7bd8b2d3c5d91f56b20c345e97244fff9e58ea0f"
+version = "0.8.0"
+source = "git+https://gitlab.freedesktop.org/dimtpap/pipewire-rs.git?rev=605d15996f3258b3e1cc34e445dfbdf16a366c7e#605d15996f3258b3e1cc34e445dfbdf16a366c7e"
 dependencies = [
  "anyhow",
- "bitflags 2.4.1",
+ "bitflags 2.5.0",
  "libc",
  "libspa",
  "libspa-sys",
- "nix 0.26.4",
+ "nix 0.27.1",
  "once_cell",
  "pipewire-sys",
  "thiserror",
@@ -2115,8 +2477,8 @@ dependencies = [
 
 [[package]]
 name = "pipewire-sys"
-version = "0.7.2"
-source = "git+https://gitlab.freedesktop.org/dimtpap/pipewire-rs.git?rev=7bd8b2d3c5d91f56b20c345e97244fff9e58ea0f#7bd8b2d3c5d91f56b20c345e97244fff9e58ea0f"
+version = "0.8.0"
+source = "git+https://gitlab.freedesktop.org/dimtpap/pipewire-rs.git?rev=605d15996f3258b3e1cc34e445dfbdf16a366c7e#605d15996f3258b3e1cc34e445dfbdf16a366c7e"
 dependencies = [
  "bindgen",
  "libspa-sys",
@@ -2125,15 +2487,15 @@ dependencies = [
 
 [[package]]
 name = "pkg-config"
-version = "0.3.27"
+version = "0.3.30"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "26072860ba924cbfa98ea39c8c19b4dd6a4a25423dbdf219c1eca91aa0cf6964"
+checksum = "d231b230927b5e4ad203db57bbcbee2802f6bce620b1e4a9024a07d94e2907ec"
 
 [[package]]
 name = "png"
-version = "0.17.10"
+version = "0.17.13"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "dd75bf2d8dd3702b9707cdbc56a5b9ef42cec752eb8b3bafc01234558442aa64"
+checksum = "06e4b0d3d1312775e782c86c91a111aa1f910cbb65e1337f9975b5f9a554b5e1"
 dependencies = [
  "bitflags 1.3.2",
  "crc32fast",
@@ -2160,14 +2522,15 @@ dependencies = [
 
 [[package]]
 name = "polling"
-version = "3.3.1"
+version = "3.7.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "cf63fa624ab313c11656b4cda960bfc46c410187ad493c41f6ba2d8c1e991c9e"
+checksum = "645493cf344456ef24219d02a768cf1fb92ddf8c92161679ae3d91b91a637be3"
 dependencies = [
  "cfg-if",
  "concurrent-queue",
+ "hermit-abi",
  "pin-project-lite",
- "rustix 0.38.28",
+ "rustix 0.38.34",
  "tracing",
  "windows-sys 0.52.0",
 ]
@@ -2185,6 +2548,12 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "5b40af805b3121feab8a3c29f04d8ad262fa8e0561883e7653e024ae4479e6de"
 
 [[package]]
+name = "presser"
+version = "0.3.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "e8cf8e6a8aa66ce33f63993ffc4ea4271eb5b0530a9002db8455ea6050c77bfa"
+
+[[package]]
 name = "proc-macro-crate"
 version = "1.3.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -2195,6 +2564,15 @@ dependencies = [
 ]
 
 [[package]]
+name = "proc-macro-crate"
+version = "3.1.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "6d37c51ca738a55da99dc0c4a34860fd675453b8b36209178c2249bb13651284"
+dependencies = [
+ "toml_edit 0.21.1",
+]
+
+[[package]]
 name = "proc-macro-error"
 version = "1.0.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -2220,18 +2598,33 @@ dependencies = [
 
 [[package]]
 name = "proc-macro2"
-version = "1.0.70"
+version = "1.0.81"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "39278fbbf5fb4f646ce651690877f89d1c5811a3d4acb27700c1cb3cdb78fd3b"
+checksum = "3d1597b0c024618f09a9c3b8655b7e430397a36d23fdafec26d6965e9eec3eba"
 dependencies = [
  "unicode-ident",
 ]
 
 [[package]]
+name = "profiling"
+version = "1.0.15"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "43d84d1d7a6ac92673717f9f6d1518374ef257669c24ebc5ac25d5033828be58"
+
+[[package]]
+name = "quick-xml"
+version = "0.31.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "1004a344b30a54e2ee58d66a71b32d2db2feb0a31f9a2d302bf0536f15de2a33"
+dependencies = [
+ "memchr",
+]
+
+[[package]]
 name = "quote"
-version = "1.0.33"
+version = "1.0.36"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5267fca4496028628a95160fc423a33e8b2e6af8a5302579e322e4b520293cae"
+checksum = "0fa76aaf39101c457836aec0ce2316dbdc3ab723cdda1c6bd4e6ad4208acaca7"
 dependencies = [
  "proc-macro2",
 ]
@@ -2273,6 +2666,32 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "f2ff9a1f06a88b01621b7ae906ef0211290d1c8a168a15542486a8f61c0833b9"
 
 [[package]]
+name = "raw-window-handle"
+version = "0.6.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "8cc3bcbdb1ddfc11e700e62968e6b4cc9c75bb466464ad28fb61c5b2c964418b"
+
+[[package]]
+name = "rayon"
+version = "1.10.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "b418a60154510ca1a002a752ca9714984e21e4241e804d32555251faf8b78ffa"
+dependencies = [
+ "either",
+ "rayon-core",
+]
+
+[[package]]
+name = "rayon-core"
+version = "1.12.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "1465873a3dfdaa8ae7cb14b4383657caab0b3e8a0aa9ae8e04b044854c8dfce2"
+dependencies = [
+ "crossbeam-deque",
+ "crossbeam-utils",
+]
+
+[[package]]
 name = "redox_syscall"
 version = "0.3.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -2291,21 +2710,30 @@ dependencies = [
 ]
 
 [[package]]
+name = "redox_syscall"
+version = "0.5.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "469052894dcb553421e483e4209ee581a45100d31b4018de03e5a7ad86374a7e"
+dependencies = [
+ "bitflags 2.5.0",
+]
+
+[[package]]
 name = "redox_users"
-version = "0.4.4"
+version = "0.4.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a18479200779601e498ada4e8c1e1f50e3ee19deb0259c25825a98b5603b2cb4"
+checksum = "bd283d9651eeda4b2a83a43c1c91b266c40fd76ecd39a50a8c630ae69dc72891"
 dependencies = [
  "getrandom",
- "libredox 0.0.1",
+ "libredox 0.1.3",
  "thiserror",
 ]
 
 [[package]]
 name = "regex"
-version = "1.10.2"
+version = "1.10.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "380b951a9c5e80ddfd6136919eef32310721aa4aacd4889a8d39124b026ab343"
+checksum = "c117dbdfde9c8308975b6a18d71f3f385c89461f7b3fb054288ecf2a2058ba4c"
 dependencies = [
  "aho-corasick",
  "memchr",
@@ -2315,9 +2743,9 @@ dependencies = [
 
 [[package]]
 name = "regex-automata"
-version = "0.4.3"
+version = "0.4.6"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5f804c7828047e88b2d32e2d7fe5a105da8ee3264f01902f796c8e067dc2483f"
+checksum = "86b83b8b9847f9bf95ef68afb0b8e6cdb80f498442f5179a29fad448fcc1eaea"
 dependencies = [
  "aho-corasick",
  "memchr",
@@ -2326,9 +2754,15 @@ dependencies = [
 
 [[package]]
 name = "regex-syntax"
-version = "0.8.2"
+version = "0.8.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "adad44e29e4c806119491a7f06f03de4d1af22c3a680dd47f1e6e179439d1f56"
+
+[[package]]
+name = "renderdoc-sys"
+version = "1.1.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c08c74e62047bb2de4ff487b251e4a92e24f48745648451635cec7d591162d9f"
+checksum = "19b30a45b0cd0bcca8037f3d0dc3421eaf95327a17cad11964fb8179b4fc4832"
 
 [[package]]
 name = "ron"
@@ -2337,7 +2771,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "b91f7eff05f748767f183df4320a63d6936e9c6107d97c9e6bdd9784f4289c94"
 dependencies = [
  "base64",
- "bitflags 2.4.1",
+ "bitflags 2.5.0",
  "serde",
  "serde_derive",
 ]
@@ -2364,14 +2798,14 @@ dependencies = [
 
 [[package]]
 name = "rustix"
-version = "0.38.28"
+version = "0.38.34"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "72e572a5e8ca657d7366229cdde4bd14c4eb5499a9573d4d366fe1b599daa316"
+checksum = "70dc5ec042f7a43c4a73241207cecc9873a06d45debb38b329f8541d85c2730f"
 dependencies = [
- "bitflags 2.4.1",
+ "bitflags 2.5.0",
  "errno",
  "libc",
- "linux-raw-sys 0.4.12",
+ "linux-raw-sys 0.4.13",
  "windows-sys 0.52.0",
 ]
 
@@ -2398,9 +2832,9 @@ checksum = "94143f37725109f92c262ed2cf5e59bce7498c01bcc1502d7b9afe439a4e9f49"
 
 [[package]]
 name = "sctk-adwaita"
-version = "0.5.4"
+version = "0.8.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "cda4e97be1fd174ccc2aae81c8b694e803fa99b34e8fd0f057a9d70698e3ed09"
+checksum = "82b2eaf3a5b264a521b988b2e73042e742df700c4f962cde845d1541adb46550"
 dependencies = [
  "ab_glyph",
  "log",
@@ -2411,40 +2845,40 @@ dependencies = [
 
 [[package]]
 name = "serde"
-version = "1.0.193"
+version = "1.0.200"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "25dd9975e68d0cb5aa1120c288333fc98731bd1dd12f561e468ea4728c042b89"
+checksum = "ddc6f9cc94d67c0e21aaf7eda3a010fd3af78ebf6e096aa6e2e13c79749cce4f"
 dependencies = [
  "serde_derive",
 ]
 
 [[package]]
 name = "serde_derive"
-version = "1.0.193"
+version = "1.0.200"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "43576ca501357b9b071ac53cdc7da8ef0cbd9493d8df094cd821777ea6e894d3"
+checksum = "856f046b9400cee3c8c94ed572ecdb752444c24528c035cd35882aad6f492bcb"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.41",
+ "syn 2.0.60",
 ]
 
 [[package]]
 name = "serde_repr"
-version = "0.1.17"
+version = "0.1.19"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3081f5ffbb02284dda55132aa26daecedd7372a42417bbbab6f14ab7d6bb9145"
+checksum = "6c64451ba24fc7a6a2d60fc75dd9c83c90903b19028d4eff35e88fc1e86564e9"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.41",
+ "syn 2.0.60",
 ]
 
 [[package]]
 name = "serde_spanned"
-version = "0.6.4"
+version = "0.6.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "12022b835073e5b11e90a14f86838ceb1c8fb0325b72416845c487ac0fa95e80"
+checksum = "eb3622f419d1296904700073ea6cc23ad690adbd66f13ea683df73298736f0c1"
 dependencies = [
  "serde",
 ]
@@ -2462,15 +2896,15 @@ dependencies = [
 
 [[package]]
 name = "shlex"
-version = "1.2.0"
+version = "1.3.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a7cee0529a6d40f580e7a5e6c495c8fbfe21b7b52795ed4bb5e62cdf92bc6380"
+checksum = "0fda2ff0d084019ba4d7c6f371c95d8fd75ce3524c3cb8fb653a3023f6323e64"
 
 [[package]]
 name = "signal-hook-registry"
-version = "1.4.1"
+version = "1.4.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d8229b473baa5980ac72ef434c4415e70c4b5e71b423043adb4ba059f89c99a1"
+checksum = "a9e9e0b4211b72e7b8b6e85c807d36c212bdb33ea8587f7569562a84df5465b1"
 dependencies = [
  "libc",
 ]
@@ -2501,37 +2935,53 @@ dependencies = [
 
 [[package]]
 name = "smallvec"
-version = "1.11.2"
+version = "1.13.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4dccd0940a2dcdf68d092b8cbab7dc0ad8fa938bf95787e1b916b0e3d0e8e970"
+checksum = "3c5e1a9a646d36c3599cd173a41282daf47c44583ad367b8e6837255952e5c67"
 
 [[package]]
 name = "smithay-client-toolkit"
-version = "0.16.1"
+version = "0.18.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "870427e30b8f2cbe64bf43ec4b86e88fe39b0a84b3f15efd9c9c2d020bc86eb9"
+checksum = "922fd3eeab3bd820d76537ce8f582b1cf951eceb5475c28500c7457d9d17f53a"
 dependencies = [
- "bitflags 1.3.2",
+ "bitflags 2.5.0",
  "calloop",
- "dlib",
- "lazy_static",
+ "calloop-wayland-source",
+ "cursor-icon",
+ "libc",
  "log",
  "memmap2",
- "nix 0.24.3",
- "pkg-config",
+ "rustix 0.38.34",
+ "thiserror",
+ "wayland-backend",
  "wayland-client",
+ "wayland-csd-frame",
  "wayland-cursor",
  "wayland-protocols",
+ "wayland-protocols-wlr",
+ "wayland-scanner",
+ "xkeysym",
 ]
 
 [[package]]
 name = "smithay-clipboard"
-version = "0.6.6"
+version = "0.7.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0a345c870a1fae0b1b779085e81b51e614767c239e93503588e54c5b17f4b0e8"
+checksum = "c091e7354ea8059d6ad99eace06dd13ddeedbb0ac72d40a9a6e7ff790525882d"
 dependencies = [
+ "libc",
  "smithay-client-toolkit",
- "wayland-client",
+ "wayland-backend",
+]
+
+[[package]]
+name = "smol_str"
+version = "0.2.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "e6845563ada680337a52d43bb0b29f396f2d911616f6573012645b9e3d048a49"
+dependencies = [
+ "serde",
 ]
 
 [[package]]
@@ -2545,16 +2995,19 @@ dependencies = [
 ]
 
 [[package]]
-name = "static_assertions"
-version = "1.1.0"
+name = "spirv"
+version = "0.3.0+sdk-1.3.268.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a2eb9349b6444b326872e140eb1cf5e7c522154d69e7a0ffb0fb81c06b37543f"
+checksum = "eda41003dc44290527a59b13432d4a0379379fa074b70174882adfbdfd917844"
+dependencies = [
+ "bitflags 2.5.0",
+]
 
 [[package]]
-name = "str-buf"
-version = "1.0.6"
+name = "static_assertions"
+version = "1.1.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9e08d8363704e6c71fc928674353e6b7c23dcea9d82d7012c8faf2a3a025f8d0"
+checksum = "a2eb9349b6444b326872e140eb1cf5e7c522154d69e7a0ffb0fb81c06b37543f"
 
 [[package]]
 name = "strict-num"
@@ -2575,9 +3028,9 @@ dependencies = [
 
 [[package]]
 name = "syn"
-version = "2.0.41"
+version = "2.0.60"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "44c8b28c477cc3bf0e7966561e3460130e1255f7a1cf71931075f1c5e7a7e269"
+checksum = "909518bc7b1c9b779f1bbf07f2929d35af9f0f37e47c6e9ef7f9dddc1e1821f3"
 dependencies = [
  "proc-macro2",
  "quote",
@@ -2586,12 +3039,12 @@ dependencies = [
 
 [[package]]
 name = "system-deps"
-version = "6.2.0"
+version = "6.2.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2a2d580ff6a20c55dfb86be5f9c238f67835d0e81cbdea8bf5680e0897320331"
+checksum = "a3e535eb8dded36d55ec13eddacd30dec501792ff23a0b1682c38601b8cf2349"
 dependencies = [
  "cfg-expr",
- "heck",
+ "heck 0.5.0",
  "pkg-config",
  "toml",
  "version-compare",
@@ -2599,62 +3052,70 @@ dependencies = [
 
 [[package]]
 name = "target-lexicon"
-version = "0.12.12"
+version = "0.12.14"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "14c39fd04924ca3a864207c66fc2cd7d22d7c016007f9ce846cbb9326331930a"
+checksum = "e1fc403891a21bcfb7c37834ba66a547a8f402146eba7265b5a6d88059c9ff2f"
 
 [[package]]
 name = "tempfile"
-version = "3.8.1"
+version = "3.10.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7ef1adac450ad7f4b3c28589471ade84f25f731a7a0fe30d71dfa9f60fd808e5"
+checksum = "85b77fafb263dd9d05cbeac119526425676db3784113aa9295c88498cbf8bff1"
 dependencies = [
  "cfg-if",
- "fastrand 2.0.1",
- "redox_syscall 0.4.1",
- "rustix 0.38.28",
- "windows-sys 0.48.0",
+ "fastrand 2.1.0",
+ "rustix 0.38.34",
+ "windows-sys 0.52.0",
+]
+
+[[package]]
+name = "termcolor"
+version = "1.4.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "06794f8f6c5c898b3275aebefa6b8a1cb24cd2c6c79397ab15774837a0bc5755"
+dependencies = [
+ "winapi-util",
 ]
 
 [[package]]
 name = "thiserror"
-version = "1.0.51"
+version = "1.0.59"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f11c217e1416d6f036b870f14e0413d480dbf28edbee1f877abaf0206af43bb7"
+checksum = "f0126ad08bff79f29fc3ae6a55cc72352056dfff61e3ff8bb7129476d44b23aa"
 dependencies = [
  "thiserror-impl",
 ]
 
 [[package]]
 name = "thiserror-impl"
-version = "1.0.51"
+version = "1.0.59"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "01742297787513b79cf8e29d1056ede1313e2420b7b3b15d0a768b4921f549df"
+checksum = "d1cd413b5d558b4c5bf3680e324a6fa5014e7b7c067a51e69dbdf47eb7148b66"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.41",
+ "syn 2.0.60",
 ]
 
 [[package]]
 name = "tiny-skia"
-version = "0.8.4"
+version = "0.11.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "df8493a203431061e901613751931f047d1971337153f96d0e5e363d6dbf6a67"
+checksum = "83d13394d44dae3207b52a326c0c85a8bf87f1541f23b0d143811088497b09ab"
 dependencies = [
  "arrayref",
  "arrayvec",
  "bytemuck",
  "cfg-if",
- "png",
+ "log",
  "tiny-skia-path",
 ]
 
 [[package]]
 name = "tiny-skia-path"
-version = "0.8.4"
+version = "0.11.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "adbfb5d3f3dd57a0e11d12f4f13d4ebbbc1b5c15b7ab0a156d030b21da5f677c"
+checksum = "9c9e7fc0c2e86a30b117d0462aa261b72b7a99b7ebd7deb3a14ceda95c5bdc93"
 dependencies = [
  "arrayref",
  "bytemuck",
@@ -2678,14 +3139,14 @@ checksum = "1f3ccbac311fea05f86f61904b462b55fb3df8837a366dfc601a0161d0532f20"
 
 [[package]]
 name = "toml"
-version = "0.8.8"
+version = "0.8.12"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a1a195ec8c9da26928f773888e0742ca3ca1040c6cd859c919c9f59c1954ab35"
+checksum = "e9dd1545e8208b4a5af1aa9bbd0b4cf7e9ea08fabc5d0a5c67fcaafa17433aa3"
 dependencies = [
  "serde",
  "serde_spanned",
  "toml_datetime",
- "toml_edit 0.21.0",
+ "toml_edit 0.22.12",
 ]
 
 [[package]]
@@ -2705,20 +3166,31 @@ checksum = "1b5bb770da30e5cbfde35a2d7b9b8a2c4b8ef89548a7a6aeab5c9a576e3e7421"
 dependencies = [
  "indexmap",
  "toml_datetime",
- "winnow",
+ "winnow 0.5.40",
 ]
 
 [[package]]
 name = "toml_edit"
-version = "0.21.0"
+version = "0.21.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d34d383cd00a163b4a5b85053df514d45bc330f6de7737edfe0a93311d1eaa03"
+checksum = "6a8534fd7f78b5405e860340ad6575217ce99f38d4d5c8f2442cb5ecb50090e1"
+dependencies = [
+ "indexmap",
+ "toml_datetime",
+ "winnow 0.5.40",
+]
+
+[[package]]
+name = "toml_edit"
+version = "0.22.12"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "d3328d4f68a705b2a4498da1d580585d39a6510f98318a2cec3018a7ec61ddef"
 dependencies = [
  "indexmap",
  "serde",
  "serde_spanned",
  "toml_datetime",
- "winnow",
+ "winnow 0.6.7",
 ]
 
 [[package]]
@@ -2740,7 +3212,7 @@ checksum = "34704c8d6ebcbc939824180af020566b01a7c01f80641264eba0999f6c2b6be7"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.41",
+ "syn 2.0.60",
 ]
 
 [[package]]
@@ -2759,6 +3231,15 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "17f77d76d837a7830fe1d4f12b7b4ba4192c1888001c7164257e4bc6d21d96b4"
 
 [[package]]
+name = "type-map"
+version = "0.5.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "deb68604048ff8fa93347f02441e4487594adc20bb8a084f9e564d2b827a0a9f"
+dependencies = [
+ "rustc-hash",
+]
+
+[[package]]
 name = "typenum"
 version = "1.17.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -2770,16 +3251,16 @@ version = "1.1.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "89daebc3e6fd160ac4aa9fc8b3bf71e1f74fbf92367ae71fb83a037e8bf164b9"
 dependencies = [
- "memoffset 0.9.0",
+ "memoffset 0.9.1",
  "tempfile",
  "winapi",
 ]
 
 [[package]]
 name = "unicode-bidi"
-version = "0.3.14"
+version = "0.3.15"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6f2528f27a9eb2b21e69c95319b30bd0efd85d09c379741b0f78ea1d86be2416"
+checksum = "08f95100a766bf4f8f28f90d77e0a5461bbdb219042e7679bebe79004fed8d75"
 
 [[package]]
 name = "unicode-ident"
@@ -2789,18 +3270,30 @@ checksum = "3354b9ac3fae1ff6755cb6db53683adb661634f67557942dea4facebec0fee4b"
 
 [[package]]
 name = "unicode-normalization"
-version = "0.1.22"
+version = "0.1.23"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5c5713f0fc4b5db668a2ac63cdb7bb4469d8c9fed047b1d0292cc7b0ce2ba921"
+checksum = "a56d1686db2308d901306f92a263857ef59ea39678a5458e7cb17f01415101f5"
 dependencies = [
  "tinyvec",
 ]
 
 [[package]]
 name = "unicode-segmentation"
-version = "1.10.1"
+version = "1.11.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1dd624098567895118886609431a7c3b8f516e41d30e0643f03d94592a147e36"
+checksum = "d4c87d22b6e3f4a18d4d40ef354e97c90fcb14dd91d7dc0aa9d8a1172ebf7202"
+
+[[package]]
+name = "unicode-width"
+version = "0.1.12"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "68f5e5f3158ecfd4b8ff6fe086db7c8467a2dfdac97fe420f2b7c4aa97af66d6"
+
+[[package]]
+name = "unicode-xid"
+version = "0.2.4"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "f962df74c8c05a667b5ee8bcf162993134c104e96440b663c8daa176dc772d8c"
 
 [[package]]
 name = "url"
@@ -2815,22 +3308,10 @@ dependencies = [
 ]
 
 [[package]]
-name = "value-bag"
-version = "1.4.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4a72e1902dde2bd6441347de2b70b7f5d59bf157c6c62f0c44572607a1d55bbe"
-
-[[package]]
-name = "vec_map"
-version = "0.8.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f1bddf1187be692e79c5ffeab891132dfb0f236ed36a43c7ed39f1165ee20191"
-
-[[package]]
 name = "version-compare"
-version = "0.1.1"
+version = "0.2.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "579a42fc0b8e0c63b76519a339be31bed574929511fa53c1a3acae26eb258f29"
+checksum = "852e951cb7832cb45cb1169900d19760cfa39b82bc0ea9c0e5a14ae88411c98b"
 
 [[package]]
 name = "version_check"
@@ -2846,9 +3327,9 @@ checksum = "f3c4517f54858c779bbcbf228f4fca63d121bf85fbecb2dc578cdf4a39395690"
 
 [[package]]
 name = "walkdir"
-version = "2.4.0"
+version = "2.5.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d71d857dc86794ca4c280d616f7da00d2dbfd8cd788846559a6813e6aa4b54ee"
+checksum = "29790946404f91d9c5d06f9874efddea1dc06c5efe94541a7d6863108e3a5e4b"
 dependencies = [
  "same-file",
  "winapi-util",
@@ -2862,9 +3343,9 @@ checksum = "9c8d87e72b64a3b4db28d11ce29237c246188f4f51057d65a7eab63b7987e423"
 
 [[package]]
 name = "wasm-bindgen"
-version = "0.2.89"
+version = "0.2.92"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0ed0d4f68a3015cc185aff4db9506a015f4b96f95303897bfa23f846db54064e"
+checksum = "4be2531df63900aeb2bca0daaaddec08491ee64ceecbee5076636a3b026795a8"
 dependencies = [
  "cfg-if",
  "wasm-bindgen-macro",
@@ -2872,24 +3353,24 @@ dependencies = [
 
 [[package]]
 name = "wasm-bindgen-backend"
-version = "0.2.89"
+version = "0.2.92"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1b56f625e64f3a1084ded111c4d5f477df9f8c92df113852fa5a374dbda78826"
+checksum = "614d787b966d3989fa7bb98a654e369c762374fd3213d212cfc0251257e747da"
 dependencies = [
  "bumpalo",
  "log",
  "once_cell",
  "proc-macro2",
  "quote",
- "syn 2.0.41",
+ "syn 2.0.60",
  "wasm-bindgen-shared",
 ]
 
 [[package]]
 name = "wasm-bindgen-futures"
-version = "0.4.39"
+version = "0.4.42"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ac36a15a220124ac510204aec1c3e5db8a22ab06fd6706d881dc6149f8ed9a12"
+checksum = "76bc14366121efc8dbb487ab05bcc9d346b3b5ec0eaa76e46594cabbe51762c0"
 dependencies = [
  "cfg-if",
  "js-sys",
@@ -2899,9 +3380,9 @@ dependencies = [
 
 [[package]]
 name = "wasm-bindgen-macro"
-version = "0.2.89"
+version = "0.2.92"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0162dbf37223cd2afce98f3d0785506dcb8d266223983e4b5b525859e6e182b2"
+checksum = "a1f8823de937b71b9460c0c34e25f3da88250760bec0ebac694b49997550d726"
 dependencies = [
  "quote",
  "wasm-bindgen-macro-support",
@@ -2909,113 +3390,137 @@ dependencies = [
 
 [[package]]
 name = "wasm-bindgen-macro-support"
-version = "0.2.89"
+version = "0.2.92"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f0eb82fcb7930ae6219a7ecfd55b217f5f0893484b7a13022ebb2b2bf20b5283"
+checksum = "e94f17b526d0a461a191c78ea52bbce64071ed5c04c9ffe424dcb38f74171bb7"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.41",
+ "syn 2.0.60",
  "wasm-bindgen-backend",
  "wasm-bindgen-shared",
 ]
 
 [[package]]
 name = "wasm-bindgen-shared"
-version = "0.2.89"
+version = "0.2.92"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7ab9b36309365056cd639da3134bf87fa8f3d86008abf99e612384a6eecd459f"
+checksum = "af190c94f2773fdb3729c55b007a722abb5384da03bc0986df4c289bf5567e96"
 
 [[package]]
-name = "wayland-client"
-version = "0.29.5"
+name = "wayland-backend"
+version = "0.3.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3f3b068c05a039c9f755f881dc50f01732214f5685e379829759088967c46715"
+checksum = "9d50fa61ce90d76474c87f5fc002828d81b32677340112b4ef08079a9d459a40"
 dependencies = [
- "bitflags 1.3.2",
+ "cc",
  "downcast-rs",
- "libc",
- "nix 0.24.3",
+ "rustix 0.38.34",
  "scoped-tls",
- "wayland-commons",
+ "smallvec",
+ "wayland-sys",
+]
+
+[[package]]
+name = "wayland-client"
+version = "0.31.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "82fb96ee935c2cea6668ccb470fb7771f6215d1691746c2d896b447a00ad3f1f"
+dependencies = [
+ "bitflags 2.5.0",
+ "rustix 0.38.34",
+ "wayland-backend",
  "wayland-scanner",
- "wayland-sys 0.29.5",
 ]
 
 [[package]]
-name = "wayland-commons"
-version = "0.29.5"
+name = "wayland-csd-frame"
+version = "0.3.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8691f134d584a33a6606d9d717b95c4fa20065605f798a3f350d78dced02a902"
+checksum = "625c5029dbd43d25e6aa9615e88b829a5cad13b2819c4ae129fdbb7c31ab4c7e"
 dependencies = [
- "nix 0.24.3",
- "once_cell",
- "smallvec",
- "wayland-sys 0.29.5",
+ "bitflags 2.5.0",
+ "cursor-icon",
+ "wayland-backend",
 ]
 
 [[package]]
 name = "wayland-cursor"
-version = "0.29.5"
+version = "0.31.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6865c6b66f13d6257bef1cd40cbfe8ef2f150fb8ebbdb1e8e873455931377661"
+checksum = "71ce5fa868dd13d11a0d04c5e2e65726d0897be8de247c0c5a65886e283231ba"
 dependencies = [
- "nix 0.24.3",
+ "rustix 0.38.34",
  "wayland-client",
  "xcursor",
 ]
 
 [[package]]
 name = "wayland-protocols"
-version = "0.29.5"
+version = "0.31.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b950621f9354b322ee817a23474e479b34be96c2e909c14f7bc0100e9a970bc6"
+checksum = "8f81f365b8b4a97f422ac0e8737c438024b5951734506b0e1d775c73030561f4"
 dependencies = [
- "bitflags 1.3.2",
+ "bitflags 2.5.0",
+ "wayland-backend",
  "wayland-client",
- "wayland-commons",
  "wayland-scanner",
 ]
 
 [[package]]
-name = "wayland-scanner"
-version = "0.29.5"
+name = "wayland-protocols-plasma"
+version = "0.2.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8f4303d8fa22ab852f789e75a967f0a2cdc430a607751c0499bada3e451cbd53"
+checksum = "23803551115ff9ea9bce586860c5c5a971e360825a0309264102a9495a5ff479"
 dependencies = [
- "proc-macro2",
- "quote",
- "xml-rs",
+ "bitflags 2.5.0",
+ "wayland-backend",
+ "wayland-client",
+ "wayland-protocols",
+ "wayland-scanner",
 ]
 
 [[package]]
-name = "wayland-sys"
-version = "0.29.5"
+name = "wayland-protocols-wlr"
+version = "0.2.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "be12ce1a3c39ec7dba25594b97b42cb3195d54953ddb9d3d95a7c3902bc6e9d4"
+checksum = "ad1f61b76b6c2d8742e10f9ba5c3737f6530b4c243132c2a2ccc8aa96fe25cd6"
 dependencies = [
- "dlib",
- "lazy_static",
- "pkg-config",
+ "bitflags 2.5.0",
+ "wayland-backend",
+ "wayland-client",
+ "wayland-protocols",
+ "wayland-scanner",
+]
+
+[[package]]
+name = "wayland-scanner"
+version = "0.31.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "63b3a62929287001986fb58c789dce9b67604a397c15c611ad9f747300b6c283"
+dependencies = [
+ "proc-macro2",
+ "quick-xml",
+ "quote",
 ]
 
 [[package]]
 name = "wayland-sys"
-version = "0.30.1"
+version = "0.31.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "96b2a02ac608e07132978689a6f9bf4214949c85998c247abadd4f4129b1aa06"
+checksum = "15a0c8eaff5216d07f226cb7a549159267f3467b289d9a2e52fd3ef5aae2b7af"
 dependencies = [
  "dlib",
- "lazy_static",
  "log",
+ "once_cell",
  "pkg-config",
 ]
 
 [[package]]
 name = "web-sys"
-version = "0.3.66"
+version = "0.3.69"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "50c24a44ec86bb68fbecd1b3efed7e85ea5621b39b35ef2766b66cd984f8010f"
+checksum = "77afa9a11836342370f4817622a2f0f418b134426d91a82dfb48f532d2ec13ef"
 dependencies = [
  "js-sys",
  "wasm-bindgen",
@@ -3023,9 +3528,9 @@ dependencies = [
 
 [[package]]
 name = "web-time"
-version = "0.2.3"
+version = "0.2.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "57099a701fb3a8043f993e8228dc24229c7b942e2b009a1b962e54489ba1d3bf"
+checksum = "aa30049b1c872b72c89866d458eae9f20380ab280ffd1b1e18df2d3e2d98cfe0"
 dependencies = [
  "js-sys",
  "wasm-bindgen",
@@ -3033,9 +3538,9 @@ dependencies = [
 
 [[package]]
 name = "webbrowser"
-version = "0.8.12"
+version = "0.8.15"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "82b2391658b02c27719fc5a0a73d6e696285138e8b12fba9d4baa70451023c71"
+checksum = "db67ae75a9405634f5882791678772c94ff5f16a66535aae186e26aa0841fc8b"
 dependencies = [
  "core-foundation",
  "home",
@@ -3043,12 +3548,120 @@ dependencies = [
  "log",
  "ndk-context",
  "objc",
- "raw-window-handle",
+ "raw-window-handle 0.5.2",
  "url",
  "web-sys",
 ]
 
 [[package]]
+name = "wgpu"
+version = "0.19.4"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "cbd7311dbd2abcfebaabf1841a2824ed7c8be443a0f29166e5d3c6a53a762c01"
+dependencies = [
+ "arrayvec",
+ "cfg-if",
+ "cfg_aliases",
+ "js-sys",
+ "log",
+ "parking_lot",
+ "profiling",
+ "raw-window-handle 0.6.1",
+ "smallvec",
+ "static_assertions",
+ "wasm-bindgen",
+ "wasm-bindgen-futures",
+ "web-sys",
+ "wgpu-core",
+ "wgpu-hal",
+ "wgpu-types",
+]
+
+[[package]]
+name = "wgpu-core"
+version = "0.19.4"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "28b94525fc99ba9e5c9a9e24764f2bc29bad0911a7446c12f446a8277369bf3a"
+dependencies = [
+ "arrayvec",
+ "bit-vec",
+ "bitflags 2.5.0",
+ "cfg_aliases",
+ "codespan-reporting",
+ "indexmap",
+ "log",
+ "naga",
+ "once_cell",
+ "parking_lot",
+ "profiling",
+ "raw-window-handle 0.6.1",
+ "rustc-hash",
+ "smallvec",
+ "thiserror",
+ "web-sys",
+ "wgpu-hal",
+ "wgpu-types",
+]
+
+[[package]]
+name = "wgpu-hal"
+version = "0.19.4"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "fc1a4924366df7ab41a5d8546d6534f1f33231aa5b3f72b9930e300f254e39c3"
+dependencies = [
+ "android_system_properties",
+ "arrayvec",
+ "ash",
+ "bitflags 2.5.0",
+ "cfg_aliases",
+ "core-graphics-types",
+ "glow",
+ "glutin_wgl_sys",
+ "gpu-alloc",
+ "gpu-allocator",
+ "gpu-descriptor",
+ "hassle-rs",
+ "js-sys",
+ "khronos-egl",
+ "libc",
+ "libloading 0.8.3",
+ "log",
+ "metal",
+ "naga",
+ "ndk-sys",
+ "objc",
+ "once_cell",
+ "parking_lot",
+ "profiling",
+ "raw-window-handle 0.6.1",
+ "renderdoc-sys",
+ "rustc-hash",
+ "smallvec",
+ "thiserror",
+ "wasm-bindgen",
+ "web-sys",
+ "wgpu-types",
+ "winapi",
+]
+
+[[package]]
+name = "wgpu-types"
+version = "0.19.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "b671ff9fb03f78b46ff176494ee1ebe7d603393f42664be55b64dc8d53969805"
+dependencies = [
+ "bitflags 2.5.0",
+ "js-sys",
+ "web-sys",
+]
+
+[[package]]
+name = "widestring"
+version = "1.1.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "7219d36b6eac893fa81e84ebe06485e7dcbb616177469b142df14f1f4deb1311"
+
+[[package]]
 name = "winapi"
 version = "0.3.9"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -3066,20 +3679,11 @@ checksum = "ac3b87c63620426dd9b991e5ce0329eff545bccbbb34f3be09ff6fb6ab51b7b6"
 
 [[package]]
 name = "winapi-util"
-version = "0.1.6"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f29e6f9198ba0d26b4c9f07dbe6f9ed633e1f3d5b8b414090084349e46a52596"
-dependencies = [
- "winapi",
-]
-
-[[package]]
-name = "winapi-wsapoll"
-version = "0.1.1"
+version = "0.1.8"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "44c17110f57155602a80dca10be03852116403c9ff3cd25b079d666f2aa3df6e"
+checksum = "4d4cc384e1e73b93bafa6fb4f1df8c41695c8a91cf9c4c64358067d15a7b6c6b"
 dependencies = [
- "winapi",
+ "windows-sys 0.52.0",
 ]
 
 [[package]]
@@ -3100,6 +3704,25 @@ dependencies = [
 ]
 
 [[package]]
+name = "windows"
+version = "0.52.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "e48a53791691ab099e5e2ad123536d0fff50652600abaf43bbf952894110d0be"
+dependencies = [
+ "windows-core",
+ "windows-targets 0.52.5",
+]
+
+[[package]]
+name = "windows-core"
+version = "0.52.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "33ab640c8d7e35bf8ba19b884ba838ceb4fba93a4e8c65a9059d08afcfc683d9"
+dependencies = [
+ "windows-targets 0.52.5",
+]
+
+[[package]]
 name = "windows-implement"
 version = "0.48.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -3145,7 +3768,7 @@ version = "0.52.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "282be5f36a8ce781fad8c8ae18fa3f9beff57ec1b52cb3de0789201425d9a33d"
 dependencies = [
- "windows-targets 0.52.0",
+ "windows-targets 0.52.5",
 ]
 
 [[package]]
@@ -3180,17 +3803,18 @@ dependencies = [
 
 [[package]]
 name = "windows-targets"
-version = "0.52.0"
+version = "0.52.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8a18201040b24831fbb9e4eb208f8892e1f50a37feb53cc7ff887feb8f50e7cd"
+checksum = "6f0713a46559409d202e70e28227288446bf7841d3211583a4b53e3f6d96e7eb"
 dependencies = [
- "windows_aarch64_gnullvm 0.52.0",
- "windows_aarch64_msvc 0.52.0",
- "windows_i686_gnu 0.52.0",
- "windows_i686_msvc 0.52.0",
- "windows_x86_64_gnu 0.52.0",
- "windows_x86_64_gnullvm 0.52.0",
- "windows_x86_64_msvc 0.52.0",
+ "windows_aarch64_gnullvm 0.52.5",
+ "windows_aarch64_msvc 0.52.5",
+ "windows_i686_gnu 0.52.5",
+ "windows_i686_gnullvm",
+ "windows_i686_msvc 0.52.5",
+ "windows_x86_64_gnu 0.52.5",
+ "windows_x86_64_gnullvm 0.52.5",
+ "windows_x86_64_msvc 0.52.5",
 ]
 
 [[package]]
@@ -3207,9 +3831,9 @@ checksum = "2b38e32f0abccf9987a4e3079dfb67dcd799fb61361e53e2882c3cbaf0d905d8"
 
 [[package]]
 name = "windows_aarch64_gnullvm"
-version = "0.52.0"
+version = "0.52.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "cb7764e35d4db8a7921e09562a0304bf2f93e0a51bfccee0bd0bb0b666b015ea"
+checksum = "7088eed71e8b8dda258ecc8bac5fb1153c5cffaf2578fc8ff5d61e23578d3263"
 
 [[package]]
 name = "windows_aarch64_msvc"
@@ -3225,9 +3849,9 @@ checksum = "dc35310971f3b2dbbf3f0690a219f40e2d9afcf64f9ab7cc1be722937c26b4bc"
 
 [[package]]
 name = "windows_aarch64_msvc"
-version = "0.52.0"
+version = "0.52.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "bbaa0368d4f1d2aaefc55b6fcfee13f41544ddf36801e793edbbfd7d7df075ef"
+checksum = "9985fd1504e250c615ca5f281c3f7a6da76213ebd5ccc9561496568a2752afb6"
 
 [[package]]
 name = "windows_i686_gnu"
@@ -3243,9 +3867,15 @@ checksum = "a75915e7def60c94dcef72200b9a8e58e5091744960da64ec734a6c6e9b3743e"
 
 [[package]]
 name = "windows_i686_gnu"
-version = "0.52.0"
+version = "0.52.5"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "88ba073cf16d5372720ec942a8ccbf61626074c6d4dd2e745299726ce8b89670"
+
+[[package]]
+name = "windows_i686_gnullvm"
+version = "0.52.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a28637cb1fa3560a16915793afb20081aba2c92ee8af57b4d5f28e4b3e7df313"
+checksum = "87f4261229030a858f36b459e748ae97545d6f1ec60e5e0d6a3d32e0dc232ee9"
 
 [[package]]
 name = "windows_i686_msvc"
@@ -3261,9 +3891,9 @@ checksum = "8f55c233f70c4b27f66c523580f78f1004e8b5a8b659e05a4eb49d4166cca406"
 
 [[package]]
 name = "windows_i686_msvc"
-version = "0.52.0"
+version = "0.52.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ffe5e8e31046ce6230cc7215707b816e339ff4d4d67c65dffa206fd0f7aa7b9a"
+checksum = "db3c2bf3d13d5b658be73463284eaf12830ac9a26a90c717b7f771dfe97487bf"
 
 [[package]]
 name = "windows_x86_64_gnu"
@@ -3279,9 +3909,9 @@ checksum = "53d40abd2583d23e4718fddf1ebec84dbff8381c07cae67ff7768bbf19c6718e"
 
 [[package]]
 name = "windows_x86_64_gnu"
-version = "0.52.0"
+version = "0.52.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3d6fa32db2bc4a2f5abeacf2b69f7992cd09dca97498da74a151a3132c26befd"
+checksum = "4e4246f76bdeff09eb48875a0fd3e2af6aada79d409d33011886d3e1581517d9"
 
 [[package]]
 name = "windows_x86_64_gnullvm"
@@ -3297,9 +3927,9 @@ checksum = "0b7b52767868a23d5bab768e390dc5f5c55825b6d30b86c844ff2dc7414044cc"
 
 [[package]]
 name = "windows_x86_64_gnullvm"
-version = "0.52.0"
+version = "0.52.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1a657e1e9d3f514745a572a6846d3c7aa7dbe1658c056ed9c3344c4109a6949e"
+checksum = "852298e482cd67c356ddd9570386e2862b5673c85bd5f88df9ab6802b334c596"
 
 [[package]]
 name = "windows_x86_64_msvc"
@@ -3315,50 +3945,73 @@ checksum = "ed94fce61571a4006852b7389a063ab983c02eb1bb37b47f8272ce92d06d9538"
 
 [[package]]
 name = "windows_x86_64_msvc"
-version = "0.52.0"
+version = "0.52.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "dff9641d1cd4be8d1a070daf9e3773c5f67e78b4d9d42263020c057706765c04"
+checksum = "bec47e5bfd1bff0eeaf6d8b485cc1074891a197ab4225d504cb7a1ab88b02bf0"
 
 [[package]]
 name = "winit"
-version = "0.28.7"
+version = "0.29.15"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9596d90b45384f5281384ab204224876e8e8bf7d58366d9b795ad99aa9894b94"
+checksum = "0d59ad965a635657faf09c8f062badd885748428933dad8e8bdd64064d92e5ca"
 dependencies = [
+ "ahash",
  "android-activity",
- "bitflags 1.3.2",
+ "atomic-waker",
+ "bitflags 2.5.0",
+ "bytemuck",
+ "calloop",
  "cfg_aliases",
  "core-foundation",
  "core-graphics",
- "dispatch",
- "instant",
+ "cursor-icon",
+ "icrate",
+ "js-sys",
  "libc",
  "log",
- "mio",
+ "memmap2",
  "ndk",
- "objc2",
+ "ndk-sys",
+ "objc2 0.4.1",
  "once_cell",
  "orbclient",
  "percent-encoding",
- "raw-window-handle",
+ "raw-window-handle 0.5.2",
+ "raw-window-handle 0.6.1",
  "redox_syscall 0.3.5",
+ "rustix 0.38.34",
  "sctk-adwaita",
  "smithay-client-toolkit",
+ "smol_str",
+ "unicode-segmentation",
  "wasm-bindgen",
+ "wasm-bindgen-futures",
+ "wayland-backend",
  "wayland-client",
- "wayland-commons",
  "wayland-protocols",
- "wayland-scanner",
+ "wayland-protocols-plasma",
  "web-sys",
- "windows-sys 0.45.0",
+ "web-time",
+ "windows-sys 0.48.0",
  "x11-dl",
+ "x11rb",
+ "xkbcommon-dl",
+]
+
+[[package]]
+name = "winnow"
+version = "0.5.40"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "f593a95398737aeed53e489c785df13f3618e41dbcd6718c6addbf1395aa6876"
+dependencies = [
+ "memchr",
 ]
 
 [[package]]
 name = "winnow"
-version = "0.5.28"
+version = "0.6.7"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6c830786f7720c2fd27a1a0e27a709dbd3c4d009b56d098fc742d4f4eab91fe2"
+checksum = "14b9415ee827af173ebb3f15f9083df5a122eb93572ec28741fb153356ea2578"
 dependencies = [
  "memchr",
 ]
@@ -3376,25 +4029,24 @@ dependencies = [
 
 [[package]]
 name = "x11rb"
-version = "0.12.0"
+version = "0.13.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b1641b26d4dec61337c35a1b1aaf9e3cba8f46f0b43636c609ab0291a648040a"
+checksum = "5d91ffca73ee7f68ce055750bf9f6eca0780b8c85eff9bc046a3b0da41755e12"
 dependencies = [
+ "as-raw-xcb-connection",
  "gethostname",
- "nix 0.26.4",
- "winapi",
- "winapi-wsapoll",
+ "libc",
+ "libloading 0.8.3",
+ "once_cell",
+ "rustix 0.38.34",
  "x11rb-protocol",
 ]
 
 [[package]]
 name = "x11rb-protocol"
-version = "0.12.0"
+version = "0.13.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "82d6c3f9a0fb6701fab8f6cea9b0c0bd5d6876f1f89f7fada07e558077c344bc"
-dependencies = [
- "nix 0.26.4",
-]
+checksum = "ec107c4503ea0b4a98ef47356329af139c0a4f7750e621cf2973cd3385ebcb3d"
 
 [[package]]
 name = "xcursor"
@@ -3404,29 +4056,57 @@ checksum = "6a0ccd7b4a5345edfcd0c3535718a4e9ff7798ffc536bb5b5a0e26ff84732911"
 
 [[package]]
 name = "xdg-home"
-version = "1.0.0"
+version = "1.1.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2769203cd13a0c6015d515be729c526d041e9cf2c0cc478d57faee85f40c6dcd"
+checksum = "21e5a325c3cb8398ad6cf859c1135b25dd29e186679cf2da7581d9679f63b38e"
 dependencies = [
- "nix 0.26.4",
+ "libc",
  "winapi",
 ]
 
 [[package]]
+name = "xkbcommon-dl"
+version = "0.4.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "d039de8032a9a8856a6be89cea3e5d12fdd82306ab7c94d74e6deab2460651c5"
+dependencies = [
+ "bitflags 2.5.0",
+ "dlib",
+ "log",
+ "once_cell",
+ "xkeysym",
+]
+
+[[package]]
+name = "xkeysym"
+version = "0.2.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "054a8e68b76250b253f671d1268cb7f1ae089ec35e195b2efb2a4e9a836d0621"
+
+[[package]]
 name = "xml-rs"
-version = "0.8.19"
+version = "0.8.20"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0fcb9cbac069e033553e8bb871be2fbdffcab578eb25bd0f7c508cedc6dcd75a"
+checksum = "791978798f0597cfc70478424c2b4fdc2b7a8024aaff78497ef00f24ef674193"
+
+[[package]]
+name = "yansi-term"
+version = "0.1.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "fe5c30ade05e61656247b2e334a031dfd0cc466fadef865bdcdea8d537951bf1"
+dependencies = [
+ "winapi",
+]
 
 [[package]]
 name = "zbus"
-version = "3.14.1"
+version = "3.15.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "31de390a2d872e4cd04edd71b425e29853f786dc99317ed72d73d6fcf5ebb948"
+checksum = "675d170b632a6ad49804c8cf2105d7c31eddd3312555cffd4b740e08e97c25e6"
 dependencies = [
  "async-broadcast",
  "async-executor",
- "async-fs",
+ "async-fs 1.6.0",
  "async-io 1.13.0",
  "async-lock 2.8.0",
  "async-process",
@@ -3461,11 +4141,11 @@ dependencies = [
 
 [[package]]
 name = "zbus_macros"
-version = "3.14.1"
+version = "3.15.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "41d1794a946878c0e807f55a397187c11fc7a038ba5d868e7db4f3bd7760bc9d"
+checksum = "7131497b0f887e8061b430c530240063d33bf9455fa34438f388a245da69e0a5"
 dependencies = [
- "proc-macro-crate",
+ "proc-macro-crate 1.3.1",
  "proc-macro2",
  "quote",
  "regex",
@@ -3475,9 +4155,9 @@ dependencies = [
 
 [[package]]
 name = "zbus_names"
-version = "2.6.0"
+version = "2.6.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "fb80bb776dbda6e23d705cf0123c3b95df99c4ebeaec6c2599d4a5419902b4a9"
+checksum = "437d738d3750bed6ca9b8d423ccc7a8eb284f6b1d6d4e225a0e4e6258d864c8d"
 dependencies = [
  "serde",
  "static_assertions",
@@ -3486,29 +4166,29 @@ dependencies = [
 
 [[package]]
 name = "zerocopy"
-version = "0.7.31"
+version = "0.7.32"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1c4061bedbb353041c12f413700357bec76df2c7e2ca8e4df8bac24c6bf68e3d"
+checksum = "74d4d3961e53fa4c9a25a8637fc2bfaf2595b3d3ae34875568a5cf64787716be"
 dependencies = [
  "zerocopy-derive",
 ]
 
 [[package]]
 name = "zerocopy-derive"
-version = "0.7.31"
+version = "0.7.32"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b3c129550b3e6de3fd0ba67ba5c81818f9805e58b8d7fee80a3a59d2c9fc601a"
+checksum = "9ce1b18ccd8e73a9321186f97e46f9f04b778851177567b1975109d26a08d2a6"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.41",
+ "syn 2.0.60",
 ]
 
 [[package]]
 name = "zvariant"
-version = "3.15.0"
+version = "3.15.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "44b291bee0d960c53170780af148dca5fa260a63cdd24f1962fa82e03e53338c"
+checksum = "4eef2be88ba09b358d3b58aca6e41cd853631d44787f319a1383ca83424fb2db"
 dependencies = [
  "byteorder",
  "enumflags2",
@@ -3521,11 +4201,11 @@ dependencies = [
 
 [[package]]
 name = "zvariant_derive"
-version = "3.15.0"
+version = "3.15.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "934d7a7dfc310d6ee06c87ffe88ef4eca7d3e37bb251dece2ef93da8f17d8ecd"
+checksum = "37c24dc0bed72f5f90d1f8bb5b07228cbf63b3c6e9f82d82559d4bae666e7ed9"
 dependencies = [
- "proc-macro-crate",
+ "proc-macro-crate 1.3.1",
  "proc-macro2",
  "quote",
  "syn 1.0.109",
diff --git a/pkgs/by-name/co/coppwr/package.nix b/pkgs/by-name/co/coppwr/package.nix
index dc1e92323355..25a0952fc7da 100644
--- a/pkgs/by-name/co/coppwr/package.nix
+++ b/pkgs/by-name/co/coppwr/package.nix
@@ -4,28 +4,28 @@
 , pkg-config
 , libxkbcommon
 , pipewire
-, stdenv
 , libGL
 , wayland
 , xorg
+, vulkan-loader
 }:
 
 rustPlatform.buildRustPackage rec {
   pname = "coppwr";
-  version = "1.5.1";
+  version = "1.6.0";
 
   src = fetchFromGitHub {
     owner = "dimtpap";
     repo = "coppwr";
     rev = version;
-    hash = "sha256-azho/SVGEdHXt/t6VSA0NVVfhxK9bxy4Ud68faFh5zo=";
+    hash = "sha256-7z1b++itHoqVX5KB9gv6dMAzq1j7VDGYzuJArUDPlD4=";
   };
 
   cargoLock = {
     lockFile = ./Cargo.lock;
     outputHashes = {
-      "egui_node_graph-0.4.0" = "sha256-VJvALtPP/vPZQ4KLWu8diFar9vuVkbeD65Em6rod8ww=";
-      "libspa-0.7.2" = "sha256-0TGhxHL1mkktE263ln3jnPZRkXS6+C3aPUBg86J25oM=";
+      "egui_node_graph-0.4.0" = "sha256-VtHgKWh+bHSFltNgYaFmYhZW9tqwiWJjiCCspeKgSXQ=";
+      "libspa-0.8.0" = "sha256-X8mwLtuPuMxZY71GNPAgiJGJ9JNMj7AbCliXiBxJ4vQ=";
     };
   };
 
@@ -43,6 +43,7 @@ rustPlatform.buildRustPackage rec {
     xorg.libXi
     xorg.libXrandr
     xorg.libX11
+    vulkan-loader
   ];
 
   preBuild = ''
diff --git a/pkgs/by-name/co/cosmic-edit/Cargo.lock b/pkgs/by-name/co/cosmic-edit/Cargo.lock
index 5e0658ab3e8a..8700f917aef7 100644
--- a/pkgs/by-name/co/cosmic-edit/Cargo.lock
+++ b/pkgs/by-name/co/cosmic-edit/Cargo.lock
@@ -9,7 +9,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "80179d7dd5d7e8c285d67c4a1e652972a92de7475beddfb92028c76463b13225"
 dependencies = [
  "ab_glyph_rasterizer",
- "owned_ttf_parser 0.20.0",
+ "owned_ttf_parser",
 ]
 
 [[package]]
@@ -84,7 +84,7 @@ dependencies = [
  "accesskit_unix",
  "accesskit_windows",
  "raw-window-handle 0.6.0",
- "winit 0.29.10",
+ "winit",
 ]
 
 [[package]]
@@ -103,18 +103,12 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "f26201604c87b1e01bd3d98f8d5d9a8fcbb815e8cedb41ffccbeb4bf593a35fe"
 
 [[package]]
-name = "adler32"
-version = "1.2.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "aae1277d39aeec15cb388266ecc24b11c80469deae6067e17a1a7aa9e5c1f234"
-
-[[package]]
 name = "ahash"
-version = "0.8.10"
+version = "0.8.11"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8b79b82693f705137f8fb9b37871d99e4f9a7df12b917eed79c3d3954830a60b"
+checksum = "e89da841a80418a9b391ebaea17f5c112ffaaa96f621d2c285b5174da76b9011"
 dependencies = [
- "cfg-if 1.0.0",
+ "cfg-if",
  "getrandom",
  "once_cell",
  "version_check",
@@ -149,19 +143,6 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "3aa2999eb46af81abb65c2d30d446778d7e613b60bbf4e174a027e80f90a3c14"
 
 [[package]]
-name = "andrew"
-version = "0.3.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8c4afb09dd642feec8408e33f92f3ffc4052946f6b20f32fb99c1f58cd4fa7cf"
-dependencies = [
- "bitflags 1.3.2",
- "rusttype",
- "walkdir",
- "xdg",
- "xml-rs",
-]
-
-[[package]]
 name = "android-activity"
 version = "0.5.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -175,10 +156,10 @@ dependencies = [
  "jni-sys",
  "libc",
  "log",
- "ndk 0.8.0",
+ "ndk",
  "ndk-context",
- "ndk-sys 0.5.0+25.2.9519653",
- "num_enum 0.7.2",
+ "ndk-sys",
+ "num_enum",
  "thiserror",
 ]
 
@@ -259,9 +240,9 @@ checksum = "70033777eb8b5124a81a1889416543dddef2de240019b674c81285a2635a7e1e"
 
 [[package]]
 name = "anyhow"
-version = "1.0.80"
+version = "1.0.81"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5ad32ce52e4161730f7098c077cd2ed6229b5804ccf99e5366be1ab72a98b4e1"
+checksum = "0952808a6c2afd1aa8947271f3a60f1a6763c7b912d210184c5149b5cf147247"
 
 [[package]]
 name = "apply"
@@ -280,9 +261,9 @@ dependencies = [
 
 [[package]]
 name = "arc-swap"
-version = "1.6.0"
+version = "1.7.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "bddcadddf5e9015d310179a59bb28c4d4b9920ad0f11e8e14dbadf654890c9a6"
+checksum = "7b3d0060af21e8d11a926981cc00c6c1541aa91dd64b9f881985c3da1094425f"
 
 [[package]]
 name = "arrayref"
@@ -336,6 +317,23 @@ dependencies = [
 ]
 
 [[package]]
+name = "ashpd"
+version = "0.7.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "01992ad7774250d5b7fe214e2676cb99bf92564436d8135ab44fe815e71769a9"
+dependencies = [
+ "enumflags2",
+ "futures-channel",
+ "futures-util",
+ "rand",
+ "serde",
+ "serde_repr",
+ "tokio",
+ "url",
+ "zbus",
+]
+
+[[package]]
 name = "async-broadcast"
 version = "0.5.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -352,7 +350,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "f28243a43d821d11341ab73c80bed182dc015c514b951616cf79bd4af39af0c3"
 dependencies = [
  "concurrent-queue",
- "event-listener 5.1.0",
+ "event-listener 5.2.0",
  "event-listener-strategy 0.5.0",
  "futures-core",
  "pin-project-lite",
@@ -368,7 +366,7 @@ dependencies = [
  "async-task",
  "concurrent-queue",
  "fastrand 2.0.1",
- "futures-lite 2.2.0",
+ "futures-lite 2.3.0",
  "slab",
 ]
 
@@ -392,7 +390,7 @@ checksum = "0fc5b45d93ef0529756f812ca52e44c221b35341892d3dcc34132ac02f3dd2af"
 dependencies = [
  "async-lock 2.8.0",
  "autocfg",
- "cfg-if 1.0.0",
+ "cfg-if",
  "concurrent-queue",
  "futures-lite 1.13.0",
  "log",
@@ -406,15 +404,15 @@ dependencies = [
 
 [[package]]
 name = "async-io"
-version = "2.3.1"
+version = "2.3.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8f97ab0c5b00a7cdbe5a371b9a782ee7be1316095885c8a4ea1daf490eb0ef65"
+checksum = "dcccb0f599cfa2f8ace422d3555572f47424da5648a4382a9dd0310ff8210884"
 dependencies = [
  "async-lock 3.3.0",
- "cfg-if 1.0.0",
+ "cfg-if",
  "concurrent-queue",
  "futures-io",
- "futures-lite 2.2.0",
+ "futures-lite 2.3.0",
  "parking",
  "polling 3.5.0",
  "rustix 0.38.31",
@@ -453,7 +451,7 @@ dependencies = [
  "async-lock 2.8.0",
  "async-signal",
  "blocking",
- "cfg-if 1.0.0",
+ "cfg-if",
  "event-listener 3.1.0",
  "futures-lite 1.13.0",
  "rustix 0.38.31",
@@ -462,13 +460,13 @@ dependencies = [
 
 [[package]]
 name = "async-recursion"
-version = "1.0.5"
+version = "1.1.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5fd55a5ba1179988837d24ab4c7cc8ed6efdeff578ede0416b4225a5fca35bd0"
+checksum = "30c5ef0ede93efbf733c1a727f3b6b5a1060bbedd5600183e66f6e4be4af0ec5"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.51",
+ "syn 2.0.53",
 ]
 
 [[package]]
@@ -477,10 +475,10 @@ version = "0.2.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "9e47d90f65a225c4527103a8d747001fc56e375203592b25ad103e1ca13124c5"
 dependencies = [
- "async-io 2.3.1",
+ "async-io 2.3.2",
  "async-lock 2.8.0",
  "atomic-waker",
- "cfg-if 1.0.0",
+ "cfg-if",
  "futures-core",
  "futures-io",
  "rustix 0.38.31",
@@ -497,13 +495,13 @@ checksum = "fbb36e985947064623dbd357f727af08ffd077f93d696782f3c56365fa2e2799"
 
 [[package]]
 name = "async-trait"
-version = "0.1.77"
+version = "0.1.78"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c980ee35e870bd1a4d2c8294d4c04d0499e67bca1e4b5cefcc693c2fa00caea9"
+checksum = "461abc97219de0eaaf81fe3ef974a540158f3d079c2ab200f891f1a2ef201e85"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.51",
+ "syn 2.0.53",
 ]
 
 [[package]]
@@ -596,9 +594,9 @@ checksum = "2089b7e3f35b9dd2d0ed921ead4f6d318c27680d4a5bd167b3ee120edb105837"
 dependencies = [
  "addr2line",
  "cc",
- "cfg-if 1.0.0",
+ "cfg-if",
  "libc",
- "miniz_oxide 0.7.2",
+ "miniz_oxide",
  "object",
  "rustc-demangle",
 ]
@@ -709,7 +707,7 @@ dependencies = [
  "async-task",
  "fastrand 2.0.1",
  "futures-io",
- "futures-lite 2.2.0",
+ "futures-lite 2.3.0",
  "piper",
  "tracing",
 ]
@@ -727,9 +725,9 @@ dependencies = [
 
 [[package]]
 name = "bumpalo"
-version = "3.15.3"
+version = "3.15.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8ea184aa71bb362a1157c896979544cc23974e08fd265f29ea96b59f0b4a555b"
+checksum = "7ff69b9dd49fd426c69a0db9fc04dd934cdb6645ff000864d98f7e2af8830eaa"
 
 [[package]]
 name = "bytecount"
@@ -739,22 +737,22 @@ checksum = "e1e5f035d16fc623ae5f74981db80a439803888314e3a555fd6f04acd51a3205"
 
 [[package]]
 name = "bytemuck"
-version = "1.14.3"
+version = "1.15.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a2ef034f05691a48569bd920a96c81b9d91bbad1ab5ac7c4616c1f6ef36cb79f"
+checksum = "5d6d68c57235a3a081186990eca2867354726650f42f7516ca50c28d6281fd15"
 dependencies = [
  "bytemuck_derive",
 ]
 
 [[package]]
 name = "bytemuck_derive"
-version = "1.5.0"
+version = "1.6.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "965ab7eb5f8f97d2a083c799f3a1b994fc397b2fe2da5d1da1626ce15a39f2b1"
+checksum = "4da9a32f3fed317401fa3c862968128267c3106685286e15d5aaa3d7389c2f60"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.51",
+ "syn 2.0.53",
 ]
 
 [[package]]
@@ -781,16 +779,6 @@ dependencies = [
 
 [[package]]
 name = "calloop"
-version = "0.6.5"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0b036167e76041694579972c28cf4877b4f92da222560ddb49008937b6a6727c"
-dependencies = [
- "log",
- "nix 0.18.0",
-]
-
-[[package]]
-name = "calloop"
 version = "0.12.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "fba7adb4dd5aa98e5553510223000e7148f621165ec5f9acd7113f6ca4995298"
@@ -809,18 +797,19 @@ version = "0.2.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "0f0ea9b9476c7fad82841a8dbb380e2eae480c21910feba80725b46931ed8f02"
 dependencies = [
- "calloop 0.12.4",
+ "calloop",
  "rustix 0.38.31",
  "wayland-backend",
- "wayland-client 0.31.2",
+ "wayland-client",
 ]
 
 [[package]]
 name = "cc"
-version = "1.0.88"
+version = "1.0.90"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "02f341c093d19155a6e41631ce5971aac4e9a868262212153124c15fa22d1cdc"
+checksum = "8cd6604a82acf3039f1144f54b8eb34e91ffba622051189e71b781822d5ee1f5"
 dependencies = [
+ "jobserver",
  "libc",
 ]
 
@@ -842,12 +831,6 @@ dependencies = [
 
 [[package]]
 name = "cfg-if"
-version = "0.1.10"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4785bdd1c96b2a846b2bd7cc02e86b6b3dbf14e7e53446c4f54c92a361040822"
-
-[[package]]
-name = "cfg-if"
 version = "1.0.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd"
@@ -866,9 +849,9 @@ checksum = "77e53693616d3075149f4ead59bdeecd204ac6b8192d8969757601b74bddf00f"
 
 [[package]]
 name = "chrono"
-version = "0.4.34"
+version = "0.4.35"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5bc015644b92d5890fab7489e49d21f879d5c990186827d42ec511919404f38b"
+checksum = "8eaf5903dcbc0a39312feb77df2ff4c76387d591b9fc7b04a238dcf8bb62639a"
 dependencies = [
  "android-tzdata",
  "iana-time-zone",
@@ -876,14 +859,14 @@ dependencies = [
  "num-traits",
  "pure-rust-locales",
  "wasm-bindgen",
- "windows-targets 0.52.3",
+ "windows-targets 0.52.4",
 ]
 
 [[package]]
 name = "clipboard-win"
-version = "5.2.0"
+version = "5.3.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "12f9a0700e0127ba15d1d52dd742097f821cd9c65939303a44d970465040a297"
+checksum = "d517d4b86184dbb111d3556a10f1c8a04da7428d2987bf1081602bf11c3aa9ee"
 dependencies = [
  "error-code",
 ]
@@ -891,8 +874,7 @@ dependencies = [
 [[package]]
 name = "clipboard_macos"
 version = "0.1.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "145a7f9e9b89453bc0a5e32d166456405d389cea5b578f57f1274b1397588a95"
+source = "git+https://github.com/pop-os/window_clipboard.git?tag=pop-mime-types#f65a6c303bbbd6c7bf88f9bc34421ec06d893bea"
 dependencies = [
  "objc",
  "objc-foundation",
@@ -902,17 +884,16 @@ dependencies = [
 [[package]]
 name = "clipboard_wayland"
 version = "0.2.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "003f886bc4e2987729d10c1db3424e7f80809f3fc22dbc16c685738887cb37b8"
+source = "git+https://github.com/pop-os/window_clipboard.git?tag=pop-mime-types#f65a6c303bbbd6c7bf88f9bc34421ec06d893bea"
 dependencies = [
+ "mime 0.1.0",
  "smithay-clipboard",
 ]
 
 [[package]]
 name = "clipboard_x11"
 version = "0.4.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4274ea815e013e0f9f04a2633423e14194e408a0576c943ce3d14ca56c50031c"
+source = "git+https://github.com/pop-os/window_clipboard.git?tag=pop-mime-types#f65a6c303bbbd6c7bf88f9bc34421ec06d893bea"
 dependencies = [
  "thiserror",
  "x11rb",
@@ -920,22 +901,6 @@ dependencies = [
 
 [[package]]
 name = "cocoa"
-version = "0.24.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f425db7937052c684daec3bd6375c8abe2d146dca4b8b143d6db777c39138f3a"
-dependencies = [
- "bitflags 1.3.2",
- "block",
- "cocoa-foundation",
- "core-foundation 0.9.4",
- "core-graphics 0.22.3",
- "foreign-types 0.3.2",
- "libc",
- "objc",
-]
-
-[[package]]
-name = "cocoa"
 version = "0.25.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "f6140449f97a6e97f9511815c5632d84c8aacf8ac271ad77c559218161a1373c"
@@ -943,9 +908,9 @@ dependencies = [
  "bitflags 1.3.2",
  "block",
  "cocoa-foundation",
- "core-foundation 0.9.4",
- "core-graphics 0.23.1",
- "foreign-types 0.5.0",
+ "core-foundation",
+ "core-graphics",
+ "foreign-types",
  "libc",
  "objc",
 ]
@@ -958,7 +923,7 @@ checksum = "8c6234cbb2e4c785b456c0644748b1ac416dd045799740356f8363dfe00c93f7"
 dependencies = [
  "bitflags 1.3.2",
  "block",
- "core-foundation 0.9.4",
+ "core-foundation",
  "core-graphics-types",
  "libc",
  "objc",
@@ -1038,9 +1003,9 @@ dependencies = [
 
 [[package]]
 name = "const-random"
-version = "0.1.17"
+version = "0.1.18"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5aaf16c9c2c612020bcfd042e170f6e32de9b9d75adb5277cdbbd2e2c8c8299a"
+checksum = "87e00182fe74b066627d63b85fd550ac2998d4b0bd86bfed477a0ae4c7c71359"
 dependencies = [
  "const-random-macro",
 ]
@@ -1058,71 +1023,30 @@ dependencies = [
 
 [[package]]
 name = "core-foundation"
-version = "0.7.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "57d24c7a13c43e870e37c1556b74555437870a04514f7685f5b354e090567171"
-dependencies = [
- "core-foundation-sys 0.7.0",
- "libc",
-]
-
-[[package]]
-name = "core-foundation"
 version = "0.9.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "91e195e091a93c46f7102ec7818a2aa394e1e1771c3ab4825963fa03e45afb8f"
 dependencies = [
- "core-foundation-sys 0.8.6",
+ "core-foundation-sys",
  "libc",
 ]
 
 [[package]]
 name = "core-foundation-sys"
-version = "0.7.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b3a71ab494c0b5b860bdc8407ae08978052417070c2ced38573a9157ad75b8ac"
-
-[[package]]
-name = "core-foundation-sys"
 version = "0.8.6"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "06ea2b9bc92be3c2baa9334a323ebca2d6f074ff852cd1d7b11064035cd3868f"
 
 [[package]]
 name = "core-graphics"
-version = "0.19.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b3889374e6ea6ab25dba90bb5d96202f61108058361f6dc72e8b03e6f8bbe923"
-dependencies = [
- "bitflags 1.3.2",
- "core-foundation 0.7.0",
- "foreign-types 0.3.2",
- "libc",
-]
-
-[[package]]
-name = "core-graphics"
-version = "0.22.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2581bbab3b8ffc6fcbd550bf46c355135d16e9ff2a6ea032ad6b9bf1d7efe4fb"
-dependencies = [
- "bitflags 1.3.2",
- "core-foundation 0.9.4",
- "core-graphics-types",
- "foreign-types 0.3.2",
- "libc",
-]
-
-[[package]]
-name = "core-graphics"
 version = "0.23.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "970a29baf4110c26fedbc7f82107d42c23f7e88e404c4577ed73fe99ff85a212"
 dependencies = [
  "bitflags 1.3.2",
- "core-foundation 0.9.4",
+ "core-foundation",
  "core-graphics-types",
- "foreign-types 0.5.0",
+ "foreign-types",
  "libc",
 ]
 
@@ -1133,27 +1057,14 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "45390e6114f68f718cc7a830514a96f903cccd70d02a8f6d9f643ac4ba45afaf"
 dependencies = [
  "bitflags 1.3.2",
- "core-foundation 0.9.4",
- "libc",
-]
-
-[[package]]
-name = "core-video-sys"
-version = "0.1.4"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "34ecad23610ad9757664d644e369246edde1803fcb43ed72876565098a5d3828"
-dependencies = [
- "cfg-if 0.1.10",
- "core-foundation-sys 0.7.0",
- "core-graphics 0.19.2",
+ "core-foundation",
  "libc",
- "objc",
 ]
 
 [[package]]
 name = "cosmic-config"
 version = "0.1.0"
-source = "git+https://github.com/pop-os/libcosmic.git#a09e76e729895690caac6ac620c212a2e3745d32"
+source = "git+https://github.com/pop-os/libcosmic.git#01d7e46feadccf70825c3a822a566fb266d3add6"
 dependencies = [
  "atomicwrites",
  "cosmic-config-derive",
@@ -1170,7 +1081,7 @@ dependencies = [
 [[package]]
 name = "cosmic-config-derive"
 version = "0.1.0"
-source = "git+https://github.com/pop-os/libcosmic.git#a09e76e729895690caac6ac620c212a2e3745d32"
+source = "git+https://github.com/pop-os/libcosmic.git#01d7e46feadccf70825c3a822a566fb266d3add6"
 dependencies = [
  "quote",
  "syn 1.0.109",
@@ -1196,11 +1107,11 @@ dependencies = [
  "notify",
  "open",
  "patch",
+ "regex",
  "rust-embed",
  "serde",
  "smol_str",
  "syntect",
- "systemicons",
  "tokio",
  "two-face",
  "vergen",
@@ -1209,28 +1120,32 @@ dependencies = [
 [[package]]
 name = "cosmic-files"
 version = "0.1.0"
-source = "git+https://github.com/pop-os/cosmic-files.git#8ab15027a521713850384fa87666bb9974f2666b"
+source = "git+https://github.com/pop-os/cosmic-files.git#2bc93cc3cc1906c7884dd941ab211b6bc8eca8fd"
 dependencies = [
  "chrono",
  "dirs",
- "env_logger 0.11.2",
+ "env_logger 0.11.3",
  "fork",
  "i18n-embed",
  "i18n-embed-fl",
- "image 0.24.9",
+ "image",
  "lexical-sort",
+ "libc",
  "libcosmic",
  "log",
  "mime_guess",
  "notify",
  "once_cell",
+ "open",
  "paste",
  "rust-embed",
  "serde",
+ "shlex",
  "smol_str",
- "systemicons",
  "tokio",
  "trash",
+ "vergen",
+ "xdg-mime",
 ]
 
 [[package]]
@@ -1240,13 +1155,13 @@ source = "git+https://github.com/pop-os/cosmic-syntax-theme.git#b1e1eb0234568911
 dependencies = [
  "handlebars",
  "serde",
- "toml 0.8.10",
+ "toml 0.8.12",
 ]
 
 [[package]]
 name = "cosmic-text"
 version = "0.11.2"
-source = "git+https://github.com/pop-os/cosmic-text.git#2766961af621b9235616e186046f6d14a2f5fbc0"
+source = "git+https://github.com/pop-os/cosmic-text.git#ff5501d9a36e51c50d908413caf7632d8f7533b7"
 dependencies = [
  "bitflags 2.4.2",
  "cosmic_undo_2",
@@ -1261,7 +1176,7 @@ dependencies = [
  "swash",
  "syntect",
  "sys-locale",
- "ttf-parser 0.20.0",
+ "ttf-parser",
  "unicode-bidi",
  "unicode-linebreak",
  "unicode-script",
@@ -1271,15 +1186,17 @@ dependencies = [
 [[package]]
 name = "cosmic-theme"
 version = "0.1.0"
-source = "git+https://github.com/pop-os/libcosmic.git#a09e76e729895690caac6ac620c212a2e3745d32"
+source = "git+https://github.com/pop-os/libcosmic.git#01d7e46feadccf70825c3a822a566fb266d3add6"
 dependencies = [
  "almost",
  "cosmic-config",
  "csscolorparser",
+ "dirs",
  "lazy_static",
  "palette",
  "ron",
  "serde",
+ "thiserror",
 ]
 
 [[package]]
@@ -1308,27 +1225,14 @@ version = "1.4.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "b3855a8a784b474f333699ef2bbca9db2c4a1f6d9088a90a2d25b1eb53111eaa"
 dependencies = [
- "cfg-if 1.0.0",
-]
-
-[[package]]
-name = "crossbeam"
-version = "0.8.4"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1137cd7e7fc0fb5d3c5a8678be38ec56e819125d8d7907411fe24ccb943faca8"
-dependencies = [
- "crossbeam-channel",
- "crossbeam-deque",
- "crossbeam-epoch",
- "crossbeam-queue",
- "crossbeam-utils",
+ "cfg-if",
 ]
 
 [[package]]
 name = "crossbeam-channel"
-version = "0.5.11"
+version = "0.5.12"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "176dc175b78f56c0f321911d9c8eb2b77a78a4860b9c19db83835fea1a46649b"
+checksum = "ab3db02a9c5b5121e1e42fbdb1aeb65f5e02624cc58c43f2884c6ccac0b82f95"
 dependencies = [
  "crossbeam-utils",
 ]
@@ -1353,15 +1257,6 @@ dependencies = [
 ]
 
 [[package]]
-name = "crossbeam-queue"
-version = "0.3.11"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "df0346b5d5e76ac2fe4e327c5fd1118d6be7c51dfb18f9b7922923f287471e35"
-dependencies = [
- "crossbeam-utils",
-]
-
-[[package]]
 name = "crossbeam-utils"
 version = "0.8.19"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -1406,16 +1301,10 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "ad291aa74992b9b7a7e88c38acbbf6ad7e107f1d90ee8775b7bc1fc3394f485c"
 dependencies = [
  "quote",
- "syn 2.0.51",
+ "syn 2.0.53",
 ]
 
 [[package]]
-name = "cty"
-version = "0.2.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b365fabc795046672053e29c954733ec3b05e4be654ab130fe8f1f94d7051f35"
-
-[[package]]
 name = "cursor-icon"
 version = "1.1.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -1427,42 +1316,18 @@ version = "0.19.0"
 source = "git+https://github.com/gfx-rs/wgpu?rev=20fda69#20fda698341efbdc870b8027d6d49f5bf3f36109"
 dependencies = [
  "bitflags 2.4.2",
- "libloading 0.8.1",
+ "libloading 0.8.3",
  "winapi",
 ]
 
 [[package]]
 name = "darling"
-version = "0.10.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0d706e75d87e35569db781a9b5e2416cff1236a47ed380831f959382ccd5f858"
-dependencies = [
- "darling_core 0.10.2",
- "darling_macro 0.10.2",
-]
-
-[[package]]
-name = "darling"
 version = "0.20.8"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "54e36fcd13ed84ffdfda6f5be89b31287cbb80c439841fe69e04841435464391"
 dependencies = [
- "darling_core 0.20.8",
- "darling_macro 0.20.8",
-]
-
-[[package]]
-name = "darling_core"
-version = "0.10.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f0c960ae2da4de88a91b2d920c2a7233b400bc33cb28453a2987822d8392519b"
-dependencies = [
- "fnv",
- "ident_case",
- "proc-macro2",
- "quote",
- "strsim 0.9.3",
- "syn 1.0.109",
+ "darling_core",
+ "darling_macro",
 ]
 
 [[package]]
@@ -1475,19 +1340,8 @@ dependencies = [
  "ident_case",
  "proc-macro2",
  "quote",
- "strsim 0.10.0",
- "syn 2.0.51",
-]
-
-[[package]]
-name = "darling_macro"
-version = "0.10.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d9b5a2f4ac4969822c62224815d069952656cadc7084fdca9751e6d959189b72"
-dependencies = [
- "darling_core 0.10.2",
- "quote",
- "syn 1.0.109",
+ "strsim",
+ "syn 2.0.53",
 ]
 
 [[package]]
@@ -1496,9 +1350,9 @@ version = "0.20.8"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "a668eda54683121533a393014d8692171709ff57a7d61f187b6e782719f8933f"
 dependencies = [
- "darling_core 0.20.8",
+ "darling_core",
  "quote",
- "syn 2.0.51",
+ "syn 2.0.53",
 ]
 
 [[package]]
@@ -1507,7 +1361,7 @@ version = "5.5.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "978747c1d849a7d2ee5e8adc0159961c48fb7e5db2f06af6723b80123bb53856"
 dependencies = [
- "cfg-if 1.0.0",
+ "cfg-if",
  "hashbrown",
  "lock_api",
  "once_cell",
@@ -1521,16 +1375,6 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "5c297a1c74b71ae29df00c3e22dd9534821d60eb9af5a0192823fa2acea70c2a"
 
 [[package]]
-name = "deflate"
-version = "0.8.6"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "73770f8e1fe7d64df17ca66ad28994a0a623ea497fa69486e14984e715c5d174"
-dependencies = [
- "adler32",
- "byteorder",
-]
-
-[[package]]
 name = "deranged"
 version = "0.3.11"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -1556,10 +1400,10 @@ version = "0.1.6"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "4e8ef033054e131169b8f0f9a7af8f5533a9436fadf3c500ed547f730f07090d"
 dependencies = [
- "darling 0.20.8",
+ "darling",
  "proc-macro2",
  "quote",
- "syn 2.0.51",
+ "syn 2.0.53",
 ]
 
 [[package]]
@@ -1587,7 +1431,7 @@ version = "2.0.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "b98cf8ebf19c3d1b223e151f99a4f9f0690dca41414773390fc824184ac833e1"
 dependencies = [
- "cfg-if 1.0.0",
+ "cfg-if",
  "dirs-sys-next",
 ]
 
@@ -1628,16 +1472,7 @@ checksum = "487585f4d0c6655fe74905e2504d8ad6908e4db67f744eb140876906c2f3175d"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.51",
-]
-
-[[package]]
-name = "dlib"
-version = "0.4.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b11f15d1e3268f140f68d390637d5e76d849782d971ae7063e0da69fe9709a76"
-dependencies = [
- "libloading 0.6.7",
+ "syn 2.0.53",
 ]
 
 [[package]]
@@ -1646,7 +1481,7 @@ version = "0.5.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "330c60081dcc4c72131f8eb70510f1ac07223e5d4163db481a04a0befcffa412"
 dependencies = [
- "libloading 0.8.1",
+ "libloading 0.8.3",
 ]
 
 [[package]]
@@ -1715,7 +1550,7 @@ version = "0.8.33"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "7268b386296a025e474d5140678f75d6de9493ae55a5d709eeb9dd08149945e1"
 dependencies = [
- "cfg-if 1.0.0",
+ "cfg-if",
 ]
 
 [[package]]
@@ -1745,7 +1580,7 @@ checksum = "5c785274071b1b420972453b306eeca06acf4633829db4223b58a2a8c5953bc4"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.51",
+ "syn 2.0.53",
 ]
 
 [[package]]
@@ -1773,9 +1608,9 @@ dependencies = [
 
 [[package]]
 name = "env_logger"
-version = "0.11.2"
+version = "0.11.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6c012a26a7f605efc424dd53697843a72be7dc86ad2d01f7814337794a12231d"
+checksum = "38b35839ba51819680ba087cd351788c9a3c476841207e0b8cee0b04722343b9"
 dependencies = [
  "anstream",
  "anstyle",
@@ -1855,9 +1690,9 @@ dependencies = [
 
 [[package]]
 name = "event-listener"
-version = "5.1.0"
+version = "5.2.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b7ad6fd685ce13acd6d9541a30f6db6567a7a24c9ffd4ba2955d29e3f22c8b27"
+checksum = "2b5fb89194fa3cad959b833185b3063ba881dbfc7030680b314250779fb4cc91"
 dependencies = [
  "concurrent-queue",
  "parking",
@@ -1880,7 +1715,7 @@ version = "0.5.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "feedafcaa9b749175d5ac357452a9d41ea2911da598fde46ce1fe02c37751291"
 dependencies = [
- "event-listener 5.1.0",
+ "event-listener 5.2.0",
  "pin-project-lite",
 ]
 
@@ -1894,7 +1729,7 @@ dependencies = [
  "flume",
  "half",
  "lebe",
- "miniz_oxide 0.7.2",
+ "miniz_oxide",
  "rayon-core",
  "smallvec",
  "zune-inflate",
@@ -1936,7 +1771,7 @@ version = "0.2.23"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "1ee447700ac8aa0b2f2bd7bc4462ad686ba06baa6727ac149a2d6277f0d240fd"
 dependencies = [
- "cfg-if 1.0.0",
+ "cfg-if",
  "libc",
  "redox_syscall 0.4.1",
  "windows-sys 0.52.0",
@@ -1958,7 +1793,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "46303f565772937ffe1d394a4fac6f411c6013172fadde9dcdb1e147a086940e"
 dependencies = [
  "crc32fast",
- "miniz_oxide 0.7.2",
+ "miniz_oxide",
 ]
 
 [[package]]
@@ -2034,9 +1869,9 @@ checksum = "3f9eec918d3f24069decb9af1554cad7c880e2da24a9afd88aca000531ab82c1"
 
 [[package]]
 name = "font-types"
-version = "0.4.2"
+version = "0.4.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0bd7f3ea17572640b606b35df42cfb6ecdf003704b062580e59918692190b73d"
+checksum = "5b7f6040d337bd44434ab21fc6509154edf2cece88b23758d9d64654c4e7730b"
 
 [[package]]
 name = "fontconfig-parser"
@@ -2055,19 +1890,10 @@ checksum = "b0299020c3ef3f60f526a4f64ab4a3d4ce116b1acbf24cdd22da0068e5d81dc3"
 dependencies = [
  "fontconfig-parser",
  "log",
- "memmap2 0.9.4",
+ "memmap2",
  "slotmap",
  "tinyvec",
- "ttf-parser 0.20.0",
-]
-
-[[package]]
-name = "foreign-types"
-version = "0.3.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f6f339eb8adc052cd2ca78910fda869aefa38d22d5cb648e6485e4d3fc06f3b1"
-dependencies = [
- "foreign-types-shared 0.1.1",
+ "ttf-parser",
 ]
 
 [[package]]
@@ -2077,7 +1903,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "d737d9aa519fb7b749cbc3b962edcf310a8dd1f4b67c91c4f83975dbdd17d965"
 dependencies = [
  "foreign-types-macros",
- "foreign-types-shared 0.3.1",
+ "foreign-types-shared",
 ]
 
 [[package]]
@@ -2088,17 +1914,11 @@ checksum = "1a5c6c585bc94aaf2c7b51dd4c2ba22680844aba4c687be581871a6f518c5742"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.51",
+ "syn 2.0.53",
 ]
 
 [[package]]
 name = "foreign-types-shared"
-version = "0.1.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "00b0228411908ca8685dba7fc2cdd70ec9990a6e753e89b6ac91a84c40fbaf4b"
-
-[[package]]
-name = "foreign-types-shared"
 version = "0.3.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "aa9a19cbb55df58761df49b23516a86d432839add4af60fc256da840f66ed35b"
@@ -2219,9 +2039,9 @@ dependencies = [
 
 [[package]]
 name = "futures-lite"
-version = "2.2.0"
+version = "2.3.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "445ba825b27408685aaecefd65178908c36c6e96aaf6d8599419d46e624192ba"
+checksum = "52527eb5074e35e9339c6b4e8d12600c7128b68fb25dcb9fa9dec18f7c25f3a5"
 dependencies = [
  "fastrand 2.0.1",
  "futures-core",
@@ -2238,7 +2058,7 @@ checksum = "87750cf4b7a4c0625b1529e4c543c2182106e4dedc60a2a6455e00d212c489ac"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.51",
+ "syn 2.0.53",
 ]
 
 [[package]]
@@ -2327,23 +2147,13 @@ version = "0.2.12"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "190092ea657667030ac6a35e305e62fc4dd69fd98ac98631e5d3a2b1575a12b5"
 dependencies = [
- "cfg-if 1.0.0",
+ "cfg-if",
  "libc",
  "wasi",
 ]
 
 [[package]]
 name = "gif"
-version = "0.11.4"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3edd93c6756b4dfaf2709eafcc345ba2636565295c198a9cfbf75fa5e3e00b06"
-dependencies = [
- "color_quant",
- "weezl",
-]
-
-[[package]]
-name = "gif"
 version = "0.12.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "80792593675e051cf94a4b111980da2ba60d4a83e43e0048c5693baab3977045"
@@ -2598,7 +2408,7 @@ dependencies = [
  "grep-matcher",
  "log",
  "memchr",
- "memmap2 0.9.4",
+ "memmap2",
 ]
 
 [[package]]
@@ -2641,7 +2451,7 @@ version = "2.4.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "b5eceaaeec696539ddaf7b333340f1af35a5aa87ae3e4f3ead0532f72affab2e"
 dependencies = [
- "cfg-if 1.0.0",
+ "cfg-if",
  "crunchy",
 ]
 
@@ -2678,7 +2488,7 @@ dependencies = [
  "bitflags 2.4.2",
  "com",
  "libc",
- "libloading 0.8.1",
+ "libloading 0.8.3",
  "thiserror",
  "widestring",
  "winapi",
@@ -2692,9 +2502,9 @@ checksum = "95505c38b4572b2d910cecb0281560f54b440a19336cbbcb27bf6ce6adc6f5a8"
 
 [[package]]
 name = "hermit-abi"
-version = "0.3.8"
+version = "0.3.9"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "379dada1584ad501b383485dd706b8afb7a70fcbc7f4da7d780638a5a6124a60"
+checksum = "d231dfb89cfffdbc30e7fc41579ed6066ad03abda9e567ccafae602b97ec5024"
 
 [[package]]
 name = "hex"
@@ -2724,7 +2534,7 @@ dependencies = [
  "serde",
  "serde_derive",
  "thiserror",
- "toml 0.8.10",
+ "toml 0.8.12",
  "unic-langid",
 ]
 
@@ -2766,8 +2576,8 @@ dependencies = [
  "proc-macro-error",
  "proc-macro2",
  "quote",
- "strsim 0.10.0",
- "syn 2.0.51",
+ "strsim",
+ "syn 2.0.53",
  "unic-langid",
 ]
 
@@ -2781,7 +2591,7 @@ dependencies = [
  "i18n-config",
  "proc-macro2",
  "quote",
- "syn 2.0.51",
+ "syn 2.0.53",
 ]
 
 [[package]]
@@ -2791,7 +2601,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "e7ffbb5a1b541ea2561f8c41c087286cc091e21e556a4f09a8f6cbf17b69b141"
 dependencies = [
  "android_system_properties",
- "core-foundation-sys 0.8.6",
+ "core-foundation-sys",
  "iana-time-zone-haiku",
  "js-sys",
  "wasm-bindgen",
@@ -2810,7 +2620,7 @@ dependencies = [
 [[package]]
 name = "iced"
 version = "0.12.0"
-source = "git+https://github.com/pop-os/libcosmic.git#a09e76e729895690caac6ac620c212a2e3745d32"
+source = "git+https://github.com/pop-os/libcosmic.git#01d7e46feadccf70825c3a822a566fb266d3add6"
 dependencies = [
  "iced_accessibility",
  "iced_core",
@@ -2818,14 +2628,15 @@ dependencies = [
  "iced_renderer",
  "iced_widget",
  "iced_winit",
- "image 0.24.9",
+ "image",
  "thiserror",
+ "window_clipboard",
 ]
 
 [[package]]
 name = "iced_accessibility"
 version = "0.1.0"
-source = "git+https://github.com/pop-os/libcosmic.git#a09e76e729895690caac6ac620c212a2e3745d32"
+source = "git+https://github.com/pop-os/libcosmic.git#01d7e46feadccf70825c3a822a566fb266d3add6"
 dependencies = [
  "accesskit",
  "accesskit_winit",
@@ -2834,7 +2645,7 @@ dependencies = [
 [[package]]
 name = "iced_core"
 version = "0.12.0"
-source = "git+https://github.com/pop-os/libcosmic.git#a09e76e729895690caac6ac620c212a2e3745d32"
+source = "git+https://github.com/pop-os/libcosmic.git#01d7e46feadccf70825c3a822a566fb266d3add6"
 dependencies = [
  "bitflags 1.3.2",
  "log",
@@ -2845,13 +2656,14 @@ dependencies = [
  "smol_str",
  "thiserror",
  "web-time",
+ "window_clipboard",
  "xxhash-rust",
 ]
 
 [[package]]
 name = "iced_futures"
 version = "0.12.0"
-source = "git+https://github.com/pop-os/libcosmic.git#a09e76e729895690caac6ac620c212a2e3745d32"
+source = "git+https://github.com/pop-os/libcosmic.git#01d7e46feadccf70825c3a822a566fb266d3add6"
 dependencies = [
  "futures",
  "iced_core",
@@ -2864,7 +2676,7 @@ dependencies = [
 [[package]]
 name = "iced_graphics"
 version = "0.12.0"
-source = "git+https://github.com/pop-os/libcosmic.git#a09e76e729895690caac6ac620c212a2e3745d32"
+source = "git+https://github.com/pop-os/libcosmic.git#01d7e46feadccf70825c3a822a566fb266d3add6"
 dependencies = [
  "bitflags 1.3.2",
  "bytemuck",
@@ -2873,7 +2685,7 @@ dependencies = [
  "half",
  "iced_core",
  "iced_futures",
- "image 0.24.9",
+ "image",
  "kamadak-exif",
  "log",
  "lyon_path",
@@ -2888,7 +2700,7 @@ dependencies = [
 [[package]]
 name = "iced_renderer"
 version = "0.12.0"
-source = "git+https://github.com/pop-os/libcosmic.git#a09e76e729895690caac6ac620c212a2e3745d32"
+source = "git+https://github.com/pop-os/libcosmic.git#01d7e46feadccf70825c3a822a566fb266d3add6"
 dependencies = [
  "iced_graphics",
  "iced_tiny_skia",
@@ -2900,17 +2712,18 @@ dependencies = [
 [[package]]
 name = "iced_runtime"
 version = "0.12.0"
-source = "git+https://github.com/pop-os/libcosmic.git#a09e76e729895690caac6ac620c212a2e3745d32"
+source = "git+https://github.com/pop-os/libcosmic.git#01d7e46feadccf70825c3a822a566fb266d3add6"
 dependencies = [
  "iced_core",
  "iced_futures",
  "thiserror",
+ "window_clipboard",
 ]
 
 [[package]]
 name = "iced_style"
 version = "0.12.0"
-source = "git+https://github.com/pop-os/libcosmic.git#a09e76e729895690caac6ac620c212a2e3745d32"
+source = "git+https://github.com/pop-os/libcosmic.git#01d7e46feadccf70825c3a822a566fb266d3add6"
 dependencies = [
  "iced_core",
  "once_cell",
@@ -2920,7 +2733,7 @@ dependencies = [
 [[package]]
 name = "iced_tiny_skia"
 version = "0.12.0"
-source = "git+https://github.com/pop-os/libcosmic.git#a09e76e729895690caac6ac620c212a2e3745d32"
+source = "git+https://github.com/pop-os/libcosmic.git#01d7e46feadccf70825c3a822a566fb266d3add6"
 dependencies = [
  "bytemuck",
  "cosmic-text",
@@ -2937,7 +2750,7 @@ dependencies = [
 [[package]]
 name = "iced_wgpu"
 version = "0.12.0"
-source = "git+https://github.com/pop-os/libcosmic.git#a09e76e729895690caac6ac620c212a2e3745d32"
+source = "git+https://github.com/pop-os/libcosmic.git#01d7e46feadccf70825c3a822a566fb266d3add6"
 dependencies = [
  "bitflags 1.3.2",
  "bytemuck",
@@ -2956,7 +2769,7 @@ dependencies = [
 [[package]]
 name = "iced_widget"
 version = "0.12.0"
-source = "git+https://github.com/pop-os/libcosmic.git#a09e76e729895690caac6ac620c212a2e3745d32"
+source = "git+https://github.com/pop-os/libcosmic.git#01d7e46feadccf70825c3a822a566fb266d3add6"
 dependencies = [
  "iced_renderer",
  "iced_runtime",
@@ -2970,7 +2783,7 @@ dependencies = [
 [[package]]
 name = "iced_winit"
 version = "0.12.0"
-source = "git+https://github.com/pop-os/libcosmic.git#a09e76e729895690caac6ac620c212a2e3745d32"
+source = "git+https://github.com/pop-os/libcosmic.git#01d7e46feadccf70825c3a822a566fb266d3add6"
 dependencies = [
  "iced_graphics",
  "iced_runtime",
@@ -2981,7 +2794,7 @@ dependencies = [
  "web-sys",
  "winapi",
  "window_clipboard",
- "winit 0.29.10",
+ "winit",
 ]
 
 [[package]]
@@ -3039,25 +2852,6 @@ dependencies = [
 
 [[package]]
 name = "image"
-version = "0.23.14"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "24ffcb7e7244a9bf19d35bf2883b9c080c4ced3c07a9895572178cdb8f13f6a1"
-dependencies = [
- "bytemuck",
- "byteorder",
- "color_quant",
- "gif 0.11.4",
- "jpeg-decoder 0.1.22",
- "num-iter",
- "num-rational 0.3.2",
- "num-traits",
- "png 0.16.8",
- "scoped_threadpool",
- "tiff 0.6.1",
-]
-
-[[package]]
-name = "image"
 version = "0.24.9"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "5690139d2f55868e080017335e4b94cb7414274c74f1669c84fb5feba2c9f69d"
@@ -3067,11 +2861,11 @@ dependencies = [
  "color_quant",
  "exr",
  "gif 0.13.1",
- "jpeg-decoder 0.3.1",
+ "jpeg-decoder",
  "num-traits",
- "png 0.17.13",
+ "png",
  "qoi",
- "tiff 0.9.1",
+ "tiff",
 ]
 
 [[package]]
@@ -3082,9 +2876,9 @@ checksum = "029d73f573d8e8d63e6d5020011d3255b28c3ba85d6cf870a07184ed23de9284"
 
 [[package]]
 name = "indexmap"
-version = "2.2.3"
+version = "2.2.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "233cf39063f058ea2caae4091bf4a3ef70a653afbc026f5c4a4135d114e3c177"
+checksum = "7b0b929d511467233429c45a44ac1dcaa21ba0f5ba11e4879e6ed28ddb4f9df4"
 dependencies = [
  "equivalent",
  "hashbrown",
@@ -3116,7 +2910,7 @@ version = "0.1.12"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "7a5bbe824c507c5da5956355e86a746d82e0e1464f65d862cc5e71da70e94b2c"
 dependencies = [
- "cfg-if 1.0.0",
+ "cfg-if",
 ]
 
 [[package]]
@@ -3192,7 +2986,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "1a87aa2bb7d2af34197c04845522473242e1aa17c12f4935d5856491a7fb8c97"
 dependencies = [
  "cesu8",
- "cfg-if 1.0.0",
+ "cfg-if",
  "combine",
  "jni-sys",
  "log",
@@ -3208,12 +3002,12 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "8eaf4bc02d17cbdd7ff4c7438cafcdf7fb9a4613313ad11b4f8fefe7d3fa0130"
 
 [[package]]
-name = "jpeg-decoder"
-version = "0.1.22"
+name = "jobserver"
+version = "0.1.28"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "229d53d58899083193af11e15917b5640cd40b29ff475a1fe4ef725deb02d0f2"
+checksum = "ab46a6e9526ddef3ae7f787c06f0f2600639ba80ea3eade3d8e670a2230f51d6"
 dependencies = [
- "rayon",
+ "libc",
 ]
 
 [[package]]
@@ -3227,9 +3021,9 @@ dependencies = [
 
 [[package]]
 name = "js-sys"
-version = "0.3.68"
+version = "0.3.69"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "406cda4b368d531c842222cf9d2600a9a4acce8d29423695379c6868a143a9ee"
+checksum = "29c15563dc2726973df627357ce0c9ddddbea194836909d655df6a75d2cf296d"
 dependencies = [
  "wasm-bindgen",
 ]
@@ -3250,7 +3044,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "6aae1df220ece3c0ada96b8153459b67eebe9ae9212258bb0134ae60416fdf76"
 dependencies = [
  "libc",
- "libloading 0.8.1",
+ "libloading 0.8.3",
  "pkg-config",
 ]
 
@@ -3318,7 +3112,7 @@ checksum = "6607c62aa161d23d17a9072cc5da0be67cdfc89d3afb1e8d9c842bebc2525ffe"
 dependencies = [
  "arrayvec 0.5.2",
  "bitflags 1.3.2",
- "cfg-if 1.0.0",
+ "cfg-if",
  "ryu",
  "static_assertions",
 ]
@@ -3341,10 +3135,11 @@ checksum = "9c198f91728a82281a64e1f4f9eeb25d82cb32a5de251c6bd1b5154d63a8e7bd"
 [[package]]
 name = "libcosmic"
 version = "0.1.0"
-source = "git+https://github.com/pop-os/libcosmic.git#a09e76e729895690caac6ac620c212a2e3745d32"
+source = "git+https://github.com/pop-os/libcosmic.git#01d7e46feadccf70825c3a822a566fb266d3add6"
 dependencies = [
  "apply",
- "ashpd",
+ "ashpd 0.7.0",
+ "chrono",
  "cosmic-config",
  "cosmic-theme",
  "css-color",
@@ -3376,32 +3171,22 @@ dependencies = [
 
 [[package]]
 name = "libloading"
-version = "0.6.7"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "351a32417a12d5f7e82c368a66781e307834dae04c6ce0cd4456d52989229883"
-dependencies = [
- "cfg-if 1.0.0",
- "winapi",
-]
-
-[[package]]
-name = "libloading"
 version = "0.7.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "b67380fd3b2fbe7527a606e18729d21c6f3951633d0500574c4dc22d2d638b9f"
 dependencies = [
- "cfg-if 1.0.0",
+ "cfg-if",
  "winapi",
 ]
 
 [[package]]
 name = "libloading"
-version = "0.8.1"
+version = "0.8.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c571b676ddfc9a8c12f1f3d3085a7b163966a8fd8098a90640953ce5f6170161"
+checksum = "0c2a198fb6b0eada2a8df47933734e6d35d350665a33a3593d7164fa52c75c19"
 dependencies = [
- "cfg-if 1.0.0",
- "windows-sys 0.48.0",
+ "cfg-if",
+ "windows-targets 0.52.4",
 ]
 
 [[package]]
@@ -3490,9 +3275,9 @@ dependencies = [
 
 [[package]]
 name = "log"
-version = "0.4.20"
+version = "0.4.21"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b5e6163cb8c49088c2c36f57875e58ccd8c87c7427f7fbd50ea6710b2f3f2e8f"
+checksum = "90ed8c1e510134f979dbc4f070f87d4313098b704861a105fe34231c70a3901c"
 
 [[package]]
 name = "lru"
@@ -3572,15 +3357,6 @@ checksum = "523dc4f511e55ab87b694dc30d0f820d60906ef06413f93d4d7a1385599cc149"
 
 [[package]]
 name = "memmap2"
-version = "0.1.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d9b70ca2a6103ac8b665dc150b142ef0e4e89df640c9e6cf295d189c3caebe5a"
-dependencies = [
- "libc",
-]
-
-[[package]]
-name = "memmap2"
 version = "0.9.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "fe751422e4a8caa417e13c3ea66452215d7d63e19e604f4980461212f3ae1322"
@@ -3615,7 +3391,7 @@ dependencies = [
  "bitflags 2.4.2",
  "block",
  "core-graphics-types",
- "foreign-types 0.5.0",
+ "foreign-types",
  "log",
  "objc",
  "paste",
@@ -3623,6 +3399,14 @@ dependencies = [
 
 [[package]]
 name = "mime"
+version = "0.1.0"
+source = "git+https://github.com/pop-os/window_clipboard.git?tag=pop-mime-types#f65a6c303bbbd6c7bf88f9bc34421ec06d893bea"
+dependencies = [
+ "smithay-clipboard",
+]
+
+[[package]]
+name = "mime"
 version = "0.3.17"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "6877bb514081ee2a7ff5ef9de3281f14a4dd4bceac4c09388074a6b5df8a139a"
@@ -3633,7 +3417,7 @@ version = "2.0.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "4192263c238a5f0d0c6bfd21f336a313a4ce1c450542449ca191bb657b4642ef"
 dependencies = [
- "mime",
+ "mime 0.3.17",
  "unicase",
 ]
 
@@ -3645,25 +3429,6 @@ checksum = "68354c5c6bd36d73ff3feceb05efa59b6acb7626617f4962be322a825e61f79a"
 
 [[package]]
 name = "miniz_oxide"
-version = "0.3.7"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "791daaae1ed6889560f8c4359194f56648355540573244a5448a83ba1ecc7435"
-dependencies = [
- "adler32",
-]
-
-[[package]]
-name = "miniz_oxide"
-version = "0.4.4"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a92518e98c078586bc6c934028adcca4c92a53d6a958196de835170a01d84e4b"
-dependencies = [
- "adler",
- "autocfg",
-]
-
-[[package]]
-name = "miniz_oxide"
 version = "0.7.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "9d811f3e15f28568be3407c8e7fdb6514c1cda3cb30683f15b6a1a1dc4ea14a7"
@@ -3674,22 +3439,9 @@ dependencies = [
 
 [[package]]
 name = "mio"
-version = "0.7.14"
+version = "0.8.11"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8067b404fe97c70829f082dec8bcf4f71225d7eaea1d8645349cb76fa06205cc"
-dependencies = [
- "libc",
- "log",
- "miow",
- "ntapi",
- "winapi",
-]
-
-[[package]]
-name = "mio"
-version = "0.8.10"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8f3d0b296e374a4e6f3c7b0a1f5a51d748a0d34c85e7dc48fc3fa9a87657fe09"
+checksum = "a4a650543ca06a924e8b371db273b2756685faae30f8487da1b56505a8f78b0c"
 dependencies = [
  "libc",
  "log",
@@ -3698,27 +3450,6 @@ dependencies = [
 ]
 
 [[package]]
-name = "mio-misc"
-version = "1.2.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b47412f3a52115b936ff2a229b803498c7b4d332adeb87c2f1498c9da54c398c"
-dependencies = [
- "crossbeam",
- "crossbeam-queue",
- "log",
- "mio 0.7.14",
-]
-
-[[package]]
-name = "miow"
-version = "0.3.7"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b9f1c5b025cda876f66ef43a113f91ebc9f4ccef34843000e0adf6ebbab84e21"
-dependencies = [
- "winapi",
-]
-
-[[package]]
 name = "modit"
 version = "0.1.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -3755,18 +3486,6 @@ dependencies = [
 
 [[package]]
 name = "ndk"
-version = "0.3.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8794322172319b972f528bf90c6b467be0079f1fa82780ffb431088e741a73ab"
-dependencies = [
- "jni-sys",
- "ndk-sys 0.2.2",
- "num_enum 0.5.11",
- "thiserror",
-]
-
-[[package]]
-name = "ndk"
 version = "0.8.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "2076a31b7010b17a38c01907c45b945e8f11495ee4dd588309718901b1f7a5b7"
@@ -3774,8 +3493,8 @@ dependencies = [
  "bitflags 2.4.2",
  "jni-sys",
  "log",
- "ndk-sys 0.5.0+25.2.9519653",
- "num_enum 0.7.2",
+ "ndk-sys",
+ "num_enum",
  "raw-window-handle 0.6.0",
  "thiserror",
 ]
@@ -3787,39 +3506,6 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "27b02d87554356db9e9a873add8782d4ea6e3e58ea071a9adb9a2e8ddb884a8b"
 
 [[package]]
-name = "ndk-glue"
-version = "0.3.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c5caf0c24d51ac1c905c27d4eda4fa0635bbe0de596b8f79235e0b17a4d29385"
-dependencies = [
- "lazy_static",
- "libc",
- "log",
- "ndk 0.3.0",
- "ndk-macro",
- "ndk-sys 0.2.2",
-]
-
-[[package]]
-name = "ndk-macro"
-version = "0.2.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "05d1c6307dc424d0f65b9b06e94f88248e6305726b14729fd67a5e47b2dc481d"
-dependencies = [
- "darling 0.10.2",
- "proc-macro-crate 0.1.5",
- "proc-macro2",
- "quote",
- "syn 1.0.109",
-]
-
-[[package]]
-name = "ndk-sys"
-version = "0.2.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e1bcdd74c20ad5d95aacd60ef9ba40fdf77f767051040541df557b7a9b2a2121"
-
-[[package]]
 name = "ndk-sys"
 version = "0.5.0+25.2.9519653"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -3830,36 +3516,12 @@ dependencies = [
 
 [[package]]
 name = "nix"
-version = "0.18.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "83450fe6a6142ddd95fb064b746083fc4ef1705fe81f64a64e1d4b39f54a1055"
-dependencies = [
- "bitflags 1.3.2",
- "cc",
- "cfg-if 0.1.10",
- "libc",
-]
-
-[[package]]
-name = "nix"
-version = "0.20.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "fa9b4819da1bc61c0ea48b63b7bc8604064dd43013e7cc325df098d49cd7c18a"
-dependencies = [
- "bitflags 1.3.2",
- "cc",
- "cfg-if 1.0.0",
- "libc",
-]
-
-[[package]]
-name = "nix"
 version = "0.26.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "598beaf3cc6fdd9a5dfb1630c2800c7acd31df7aaf0f565796fba2b53ca1af1b"
 dependencies = [
  "bitflags 1.3.2",
- "cfg-if 1.0.0",
+ "cfg-if",
  "libc",
  "memoffset 0.7.1",
 ]
@@ -3910,21 +3572,12 @@ dependencies = [
  "kqueue",
  "libc",
  "log",
- "mio 0.8.10",
+ "mio",
  "walkdir",
  "windows-sys 0.48.0",
 ]
 
 [[package]]
-name = "ntapi"
-version = "0.3.7"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c28774a7fd2fbb4f0babd8237ce554b73af68021b5f695a3cebd6c59bac0980f"
-dependencies = [
- "winapi",
-]
-
-[[package]]
 name = "num"
 version = "0.4.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -3934,7 +3587,7 @@ dependencies = [
  "num-complex",
  "num-integer",
  "num-iter",
- "num-rational 0.4.1",
+ "num-rational",
  "num-traits",
 ]
 
@@ -3986,17 +3639,6 @@ dependencies = [
 
 [[package]]
 name = "num-rational"
-version = "0.3.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "12ac428b1cb17fce6f731001d307d351ec70a6d202fc2e60f7d4c5e42d8f4f07"
-dependencies = [
- "autocfg",
- "num-integer",
- "num-traits",
-]
-
-[[package]]
-name = "num-rational"
 version = "0.4.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "0638a1c9d0a3c0914158145bc76cff373a75a627e6ecbfb71cbe6f453a5a19b0"
@@ -4029,32 +3671,11 @@ dependencies = [
 
 [[package]]
 name = "num_enum"
-version = "0.5.11"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1f646caf906c20226733ed5b1374287eb97e3c2a5c227ce668c1f2ce20ae57c9"
-dependencies = [
- "num_enum_derive 0.5.11",
-]
-
-[[package]]
-name = "num_enum"
 version = "0.7.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "02339744ee7253741199f897151b38e72257d13802d4ee837285cc2990a90845"
 dependencies = [
- "num_enum_derive 0.7.2",
-]
-
-[[package]]
-name = "num_enum_derive"
-version = "0.5.11"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "dcbff9bc912032c62bf65ef1d5aea88983b420f4f839db1e9b0c281a25c9c799"
-dependencies = [
- "proc-macro-crate 1.3.1",
- "proc-macro2",
- "quote",
- "syn 1.0.109",
+ "num_enum_derive",
 ]
 
 [[package]]
@@ -4066,7 +3687,7 @@ dependencies = [
  "proc-macro-crate 3.1.0",
  "proc-macro2",
  "quote",
- "syn 2.0.51",
+ "syn 2.0.53",
 ]
 
 [[package]]
@@ -4194,9 +3815,9 @@ dependencies = [
 
 [[package]]
 name = "open"
-version = "5.0.2"
+version = "5.1.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "eedff767bc49d336bff300224f73307ae36963c843e38dc9312a22171b012cbc"
+checksum = "449f0ff855d85ddbf1edd5b646d65249ead3f5e422aaa86b7d2d0b049b103e32"
 dependencies = [
  "is-wsl",
  "libc",
@@ -4259,16 +3880,7 @@ dependencies = [
  "proc-macro-error",
  "proc-macro2",
  "quote",
- "syn 2.0.51",
-]
-
-[[package]]
-name = "owned_ttf_parser"
-version = "0.15.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "05e6affeb1632d6ff6a23d2cd40ffed138e82f1532571a26f527c8a284bb2fbb"
-dependencies = [
- "ttf-parser 0.15.2",
+ "syn 2.0.53",
 ]
 
 [[package]]
@@ -4277,7 +3889,7 @@ version = "0.20.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "d4586edfe4c648c71797a74c84bacb32b52b212eff5dfe2bb9f2c599844023e7"
 dependencies = [
- "ttf-parser 0.20.0",
+ "ttf-parser",
 ]
 
 [[package]]
@@ -4301,7 +3913,7 @@ checksum = "e8890702dbec0bad9116041ae586f84805b13eecd1d8b1df27c29998a9969d6d"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.51",
+ "syn 2.0.53",
 ]
 
 [[package]]
@@ -4349,7 +3961,7 @@ version = "0.8.6"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "60a2cfe6f0ad2bfc16aefa463b497d5c7a5ecd44a23efa72aa342d90177356dc"
 dependencies = [
- "cfg-if 1.0.0",
+ "cfg-if",
  "instant",
  "libc",
  "redox_syscall 0.2.16",
@@ -4363,7 +3975,7 @@ version = "0.9.9"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "4c42a9226546d68acdd9c0a280d17ce19bfe27a46bf68784e4066115788d008e"
 dependencies = [
- "cfg-if 1.0.0",
+ "cfg-if",
  "libc",
  "redox_syscall 0.4.1",
  "smallvec",
@@ -4401,9 +4013,9 @@ checksum = "e3148f5046208a5d56bcfc03053e3ca6334e51da8dfb19b6cdc8b306fae3283e"
 
 [[package]]
 name = "pest"
-version = "2.7.7"
+version = "2.7.8"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "219c0dcc30b6a27553f9cc242972b67f75b60eb0db71f0b5462f38b058c41546"
+checksum = "56f8023d0fb78c8e03784ea1c7f3fa36e68a723138990b8d5a47d916b651e7a8"
 dependencies = [
  "memchr",
  "thiserror",
@@ -4412,9 +4024,9 @@ dependencies = [
 
 [[package]]
 name = "pest_derive"
-version = "2.7.7"
+version = "2.7.8"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "22e1288dbd7786462961e69bfd4df7848c1e37e8b74303dbdab82c3a9cdd2809"
+checksum = "b0d24f72393fd16ab6ac5738bc33cdb6a9aa73f8b902e8fe29cf4e67d7dd1026"
 dependencies = [
  "pest",
  "pest_generator",
@@ -4422,22 +4034,22 @@ dependencies = [
 
 [[package]]
 name = "pest_generator"
-version = "2.7.7"
+version = "2.7.8"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1381c29a877c6d34b8c176e734f35d7f7f5b3adaefe940cb4d1bb7af94678e2e"
+checksum = "fdc17e2a6c7d0a492f0158d7a4bd66cc17280308bbaff78d5bef566dca35ab80"
 dependencies = [
  "pest",
  "pest_meta",
  "proc-macro2",
  "quote",
- "syn 2.0.51",
+ "syn 2.0.53",
 ]
 
 [[package]]
 name = "pest_meta"
-version = "2.7.7"
+version = "2.7.8"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d0934d6907f148c22a3acbda520c7eed243ad7487a30f51f6ce52b58b7077a8a"
+checksum = "934cd7631c050f4674352a6e835d5f6711ffbfb9345c2fc0107155ac495ae293"
 dependencies = [
  "once_cell",
  "pest",
@@ -4474,7 +4086,7 @@ dependencies = [
  "phf_shared",
  "proc-macro2",
  "quote",
- "syn 2.0.51",
+ "syn 2.0.53",
 ]
 
 [[package]]
@@ -4537,18 +4149,6 @@ dependencies = [
 
 [[package]]
 name = "png"
-version = "0.16.8"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3c3287920cb847dee3de33d301c463fba14dda99db24214ddf93f83d3021f4c6"
-dependencies = [
- "bitflags 1.3.2",
- "crc32fast",
- "deflate",
- "miniz_oxide 0.3.7",
-]
-
-[[package]]
-name = "png"
 version = "0.17.13"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "06e4b0d3d1312775e782c86c91a111aa1f910cbb65e1337f9975b5f9a554b5e1"
@@ -4557,7 +4157,7 @@ dependencies = [
  "crc32fast",
  "fdeflate",
  "flate2",
- "miniz_oxide 0.7.2",
+ "miniz_oxide",
 ]
 
 [[package]]
@@ -4568,7 +4168,7 @@ checksum = "4b2d323e8ca7996b3e23126511a523f7e62924d93ecd5ae73b333815b0eb3dce"
 dependencies = [
  "autocfg",
  "bitflags 1.3.2",
- "cfg-if 1.0.0",
+ "cfg-if",
  "concurrent-queue",
  "libc",
  "log",
@@ -4582,7 +4182,7 @@ version = "3.5.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "24f040dee2588b4963afb4e420540439d126f73fdacf4a9c486a96d840bac3c9"
 dependencies = [
- "cfg-if 1.0.0",
+ "cfg-if",
  "concurrent-queue",
  "pin-project-lite",
  "rustix 0.38.31",
@@ -4610,15 +4210,6 @@ checksum = "e8cf8e6a8aa66ce33f63993ffc4ea4271eb5b0530a9002db8455ea6050c77bfa"
 
 [[package]]
 name = "proc-macro-crate"
-version = "0.1.5"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1d6ea3c4595b96363c13943497db34af4460fb474a95c43f4446ad341b8c9785"
-dependencies = [
- "toml 0.5.11",
-]
-
-[[package]]
-name = "proc-macro-crate"
 version = "1.3.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "7f4c021e1093a56626774e81216a4ce732a735e5bad4868a03f3ed65ca0c3919"
@@ -4662,9 +4253,9 @@ dependencies = [
 
 [[package]]
 name = "proc-macro2"
-version = "1.0.78"
+version = "1.0.79"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e2422ad645d89c99f8f3e6b88a9fdeca7fabeac836b1002371c4367c8f984aae"
+checksum = "e835ff2298f5721608eb1a980ecaee1aef2c132bf95ecc026a11b7bf3c01c02e"
 dependencies = [
  "unicode-ident",
 ]
@@ -4752,25 +4343,6 @@ checksum = "f60fcc7d6849342eff22c4350c8b9a989ee8ceabc4b481253e8946b9fe83d684"
 
 [[package]]
 name = "raw-window-handle"
-version = "0.3.4"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e28f55143d0548dad60bb4fbdc835a3d7ac6acc3324506450c5fdd6e42903a76"
-dependencies = [
- "libc",
- "raw-window-handle 0.4.3",
-]
-
-[[package]]
-name = "raw-window-handle"
-version = "0.4.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b800beb9b6e7d2df1fe337c9e3d04e3af22a124460fb4c30fcc22c9117cefb41"
-dependencies = [
- "cty",
-]
-
-[[package]]
-name = "raw-window-handle"
 version = "0.5.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "f2ff9a1f06a88b01621b7ae906ef0211290d1c8a168a15542486a8f61c0833b9"
@@ -4783,9 +4355,9 @@ checksum = "42a9830a0e1b9fb145ebb365b8bc4ccd75f290f98c0247deafbbe2c75cefb544"
 
 [[package]]
 name = "rayon"
-version = "1.8.1"
+version = "1.9.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "fa7237101a77a10773db45d62004a272517633fbcc3df19d96455ede1122e051"
+checksum = "e4963ed1bc86e4f3ee217022bd855b297cef07fb9eac5dfa1f788b220b49b3bd"
 dependencies = [
  "either",
  "rayon-core",
@@ -4809,9 +4381,9 @@ checksum = "3b42e27ef78c35d3998403c1d26f3efd9e135d3e5121b0a4845cc5cc27547f4f"
 
 [[package]]
 name = "read-fonts"
-version = "0.15.6"
+version = "0.16.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "17ea23eedb4d938031b6d4343222444608727a6aa68ec355e13588d9947ffe92"
+checksum = "81c524658d3b77930a391f559756d91dbe829ab6cf4687083f615d395df99722"
 dependencies = [
  "font-types",
 ]
@@ -4868,9 +4440,9 @@ dependencies = [
 
 [[package]]
 name = "regex-automata"
-version = "0.4.5"
+version = "0.4.6"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5bb987efffd3c6d0d8f5f89510bb458559eab11e4f869acb20bf845e016259cd"
+checksum = "86b83b8b9847f9bf95ef68afb0b8e6cdb80f498442f5179a29fad448fcc1eaea"
 dependencies = [
  "aho-corasick",
  "memchr",
@@ -4885,9 +4457,9 @@ checksum = "c08c74e62047bb2de4ff487b251e4a92e24f48745648451635cec7d591162d9f"
 
 [[package]]
 name = "renderdoc-sys"
-version = "1.0.0"
+version = "1.1.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "216080ab382b992234dda86873c18d4c48358f5cfcb70fd693d7f6f2131b628b"
+checksum = "19b30a45b0cd0bcca8037f3d0dc3421eaf95327a17cad11964fb8179b4fc4832"
 
 [[package]]
 name = "resvg"
@@ -4896,10 +4468,10 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "cadccb3d99a9efb8e5e00c16fbb732cbe400db2ec7fc004697ee7d97d86cf1f4"
 dependencies = [
  "gif 0.12.0",
- "jpeg-decoder 0.3.1",
+ "jpeg-decoder",
  "log",
  "pico-args",
- "png 0.17.13",
+ "png",
  "rgb",
  "svgtypes",
  "tiny-skia",
@@ -4912,7 +4484,7 @@ version = "0.13.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "c0d8ab342bcc5436e04d3a4c1e09e17d74958bfaddf8d5fad6f85607df0f994f"
 dependencies = [
- "ashpd",
+ "ashpd 0.6.8",
  "block",
  "dispatch",
  "glib-sys",
@@ -4977,7 +4549,7 @@ dependencies = [
  "proc-macro2",
  "quote",
  "rust-embed-utils",
- "syn 2.0.51",
+ "syn 2.0.53",
  "walkdir",
 ]
 
@@ -4997,7 +4569,7 @@ version = "0.20.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "3e0698206bcb8882bf2a9ecb4c1e7785db57ff052297085a6efd4fe42302068a"
 dependencies = [
- "cfg-if 1.0.0",
+ "cfg-if",
  "ordered-multimap",
 ]
 
@@ -5050,16 +4622,6 @@ dependencies = [
 ]
 
 [[package]]
-name = "rusttype"
-version = "0.9.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3ff8374aa04134254b7995b63ad3dc41c7f7236f69528b28553da7d72efaa967"
-dependencies = [
- "ab_glyph_rasterizer",
- "owned_ttf_parser 0.15.2",
-]
-
-[[package]]
 name = "rustversion"
 version = "1.0.14"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -5075,7 +4637,7 @@ dependencies = [
  "bytemuck",
  "libm",
  "smallvec",
- "ttf-parser 0.20.0",
+ "ttf-parser",
  "unicode-bidi-mirroring",
  "unicode-ccc",
  "unicode-properties",
@@ -5110,12 +4672,6 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "e1cf6437eb19a8f4a6cc0f7dca544973b0b78843adbfeb3683d1a94a0024a294"
 
 [[package]]
-name = "scoped_threadpool"
-version = "0.1.9"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1d51f5df5af43ab3f1360b429fa5e0152ac5ce8c0bd6485cae490332e96846a8"
-
-[[package]]
 name = "scopeguard"
 version = "1.2.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -5129,8 +4685,8 @@ checksum = "82b2eaf3a5b264a521b988b2e73042e742df700c4f962cde845d1541adb46550"
 dependencies = [
  "ab_glyph",
  "log",
- "memmap2 0.9.4",
- "smithay-client-toolkit 0.18.1",
+ "memmap2",
+ "smithay-client-toolkit",
  "tiny-skia",
 ]
 
@@ -5181,7 +4737,7 @@ checksum = "7eb0b34b42edc17f6b7cac84a52a1c5f0e1bb2227e997ca9011ea3dd34e8610b"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.51",
+ "syn 2.0.53",
 ]
 
 [[package]]
@@ -5203,7 +4759,7 @@ checksum = "0b2e6b945e9d3df726b65d6ee24060aff8e3533d431f677a9695db04eff9dfdb"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.51",
+ "syn 2.0.53",
 ]
 
 [[package]]
@@ -5221,7 +4777,7 @@ version = "0.10.6"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "e3bf829a2d51ab4a5ddf1352d8470c140cadc8301b2ae1789db023f01cedd6ba"
 dependencies = [
- "cfg-if 1.0.0",
+ "cfg-if",
  "cpufeatures",
  "digest",
 ]
@@ -5232,12 +4788,18 @@ version = "0.10.8"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "793db75ad2bcafc3ffa7c68b215fee268f537982cd901d132f89c6343f3a3dc8"
 dependencies = [
- "cfg-if 1.0.0",
+ "cfg-if",
  "cpufeatures",
  "digest",
 ]
 
 [[package]]
+name = "shlex"
+version = "1.3.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "0fda2ff0d084019ba4d7c6f371c95d8fd75ce3524c3cb8fb653a3023f6323e64"
+
+[[package]]
 name = "signal-hook-registry"
 version = "1.4.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -5293,56 +4855,36 @@ checksum = "e6ecd384b10a64542d77071bd64bd7b231f4ed5940fba55e98c3de13824cf3d7"
 
 [[package]]
 name = "smithay-client-toolkit"
-version = "0.12.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4750c76fd5d3ac95fa3ed80fe667d6a3d8590a960e5b575b98eea93339a80b80"
-dependencies = [
- "andrew",
- "bitflags 1.3.2",
- "calloop 0.6.5",
- "dlib 0.4.2",
- "lazy_static",
- "log",
- "memmap2 0.1.0",
- "nix 0.18.0",
- "wayland-client 0.28.6",
- "wayland-cursor 0.28.6",
- "wayland-protocols 0.28.6",
-]
-
-[[package]]
-name = "smithay-client-toolkit"
 version = "0.18.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "922fd3eeab3bd820d76537ce8f582b1cf951eceb5475c28500c7457d9d17f53a"
 dependencies = [
  "bitflags 2.4.2",
- "calloop 0.12.4",
+ "calloop",
  "calloop-wayland-source",
  "cursor-icon",
  "libc",
  "log",
- "memmap2 0.9.4",
+ "memmap2",
  "rustix 0.38.31",
  "thiserror",
  "wayland-backend",
- "wayland-client 0.31.2",
+ "wayland-client",
  "wayland-csd-frame",
- "wayland-cursor 0.31.1",
- "wayland-protocols 0.31.2",
+ "wayland-cursor",
+ "wayland-protocols",
  "wayland-protocols-wlr",
- "wayland-scanner 0.31.1",
+ "wayland-scanner",
  "xkeysym",
 ]
 
 [[package]]
 name = "smithay-clipboard"
-version = "0.7.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c091e7354ea8059d6ad99eace06dd13ddeedbb0ac72d40a9a6e7ff790525882d"
+version = "0.8.0"
+source = "git+https://github.com/pop-os/smithay-clipboard?tag=pop-mime-types#cc0101c1f9ccc937a413bd3af3c0f6217f27e935"
 dependencies = [
  "libc",
- "smithay-client-toolkit 0.18.1",
+ "smithay-client-toolkit",
  "wayland-backend",
 ]
 
@@ -5383,14 +4925,14 @@ dependencies = [
  "as-raw-xcb-connection",
  "bytemuck",
  "cfg_aliases 0.2.0",
- "cocoa 0.25.0",
- "core-graphics 0.23.1",
+ "cocoa",
+ "core-graphics",
  "drm",
  "fastrand 2.0.1",
- "foreign-types 0.5.0",
+ "foreign-types",
  "js-sys",
  "log",
- "memmap2 0.9.4",
+ "memmap2",
  "objc",
  "raw-window-handle 0.6.0",
  "redox_syscall 0.4.1",
@@ -5398,8 +4940,8 @@ dependencies = [
  "tiny-xlib",
  "wasm-bindgen",
  "wayland-backend",
- "wayland-client 0.31.2",
- "wayland-sys 0.31.1",
+ "wayland-client",
+ "wayland-sys",
  "web-sys",
  "windows-sys 0.52.0",
  "x11rb",
@@ -5440,21 +4982,15 @@ dependencies = [
 
 [[package]]
 name = "strsim"
-version = "0.9.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6446ced80d6c486436db5c078dde11a9f73d42b57fb273121e160b84f63d894c"
-
-[[package]]
-name = "strsim"
 version = "0.10.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "73473c0e59e6d5812c5dfe2a064a6444949f089e20eec9a2e5506596494e4623"
 
 [[package]]
 name = "svg_fmt"
-version = "0.4.1"
+version = "0.4.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8fb1df15f412ee2e9dfc1c504260fa695c1c3f10fe9f4a6ee2d2184d7d6450e2"
+checksum = "f83ba502a3265efb76efb89b0a2f7782ad6f2675015d4ce37e4b547dda42b499"
 
 [[package]]
 name = "svgtypes"
@@ -5468,9 +5004,9 @@ dependencies = [
 
 [[package]]
 name = "swash"
-version = "0.1.12"
+version = "0.1.13"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d06ff4664af8923625604261c645f5c4cc610cc83c84bec74b50d76237089de7"
+checksum = "9af636fb90d39858650cae1088a37e2862dab4e874a0bb49d6dfb5b2dacf0e24"
 dependencies = [
  "read-fonts",
  "yazi",
@@ -5490,9 +5026,9 @@ dependencies = [
 
 [[package]]
 name = "syn"
-version = "2.0.51"
+version = "2.0.53"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6ab617d94515e94ae53b8406c628598680aa0c9587474ecbe58188f7b345d66c"
+checksum = "7383cd0e49fff4b6b90ca5670bfd3e9d6a733b3f90c686605aa7eec8c4996032"
 dependencies = [
  "proc-macro2",
  "quote",
@@ -5532,33 +5068,18 @@ dependencies = [
 
 [[package]]
 name = "system-deps"
-version = "6.2.0"
+version = "6.2.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2a2d580ff6a20c55dfb86be5f9c238f67835d0e81cbdea8bf5680e0897320331"
+checksum = "e8e9199467bcbc77c6a13cc6e32a6af21721ab8c96aa0261856c4fda5a4433f0"
 dependencies = [
  "cfg-expr",
  "heck",
  "pkg-config",
- "toml 0.8.10",
+ "toml 0.8.12",
  "version-compare",
 ]
 
 [[package]]
-name = "systemicons"
-version = "0.7.0"
-source = "git+https://github.com/jackpot51/systemicons#501887629ebf3f9b9d3384383da62d352af3fbd7"
-dependencies = [
- "cocoa 0.24.1",
- "freedesktop-icons",
- "image 0.23.14",
- "lazy_static",
- "objc",
- "winapi",
- "winit 0.25.0",
- "xdg-mime",
-]
-
-[[package]]
 name = "taffy"
 version = "0.3.11"
 source = "git+https://github.com/DioxusLabs/taffy?rev=7781c70#7781c70241f7f572130c13106f2a869a9cf80885"
@@ -5581,7 +5102,7 @@ version = "3.10.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "85b77fafb263dd9d05cbeac119526425676db3784113aa9295c88498cbf8bff1"
 dependencies = [
- "cfg-if 1.0.0",
+ "cfg-if",
  "fastrand 2.0.1",
  "rustix 0.38.31",
  "windows-sys 0.52.0",
@@ -5598,33 +5119,22 @@ dependencies = [
 
 [[package]]
 name = "thiserror"
-version = "1.0.57"
+version = "1.0.58"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1e45bcbe8ed29775f228095caf2cd67af7a4ccf756ebff23a306bf3e8b47b24b"
+checksum = "03468839009160513471e86a034bb2c5c0e4baae3b43f79ffc55c4a5427b3297"
 dependencies = [
  "thiserror-impl",
 ]
 
 [[package]]
 name = "thiserror-impl"
-version = "1.0.57"
+version = "1.0.58"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a953cb265bef375dae3de6663da4d3804eee9682ea80d8e2542529b73c531c81"
+checksum = "c61f3ba182994efc43764a46c018c347bc492c79f024e705f46567b418f6d4f7"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.51",
-]
-
-[[package]]
-name = "tiff"
-version = "0.6.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9a53f4706d65497df0c4349241deddf35f84cee19c87ed86ea8ca590f4464437"
-dependencies = [
- "jpeg-decoder 0.1.22",
- "miniz_oxide 0.4.4",
- "weezl",
+ "syn 2.0.53",
 ]
 
 [[package]]
@@ -5634,7 +5144,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "ba1310fcea54c6a9a4fd1aad794ecc02c31682f6bfbecdf460bf19533eed1e3e"
 dependencies = [
  "flate2",
- "jpeg-decoder 0.3.1",
+ "jpeg-decoder",
  "weezl",
 ]
 
@@ -5689,9 +5199,9 @@ dependencies = [
  "arrayref",
  "arrayvec 0.7.4",
  "bytemuck",
- "cfg-if 1.0.0",
+ "cfg-if",
  "log",
- "png 0.17.13",
+ "png",
  "tiny-skia-path",
 ]
 
@@ -5714,7 +5224,7 @@ checksum = "d4098d49269baa034a8d1eae9bd63e9fa532148d772121dace3bcd6a6c98eb6d"
 dependencies = [
  "as-raw-xcb-connection",
  "ctor",
- "libloading 0.8.1",
+ "libloading 0.8.3",
  "tracing",
 ]
 
@@ -5751,7 +5261,7 @@ dependencies = [
  "backtrace",
  "bytes",
  "libc",
- "mio 0.8.10",
+ "mio",
  "num_cpus",
  "pin-project-lite",
  "signal-hook-registry",
@@ -5771,14 +5281,14 @@ dependencies = [
 
 [[package]]
 name = "toml"
-version = "0.8.10"
+version = "0.8.12"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9a9aad4a3066010876e8dcf5a8a06e70a558751117a145c6ce2b82c2e2054290"
+checksum = "e9dd1545e8208b4a5af1aa9bbd0b4cf7e9ea08fabc5d0a5c67fcaafa17433aa3"
 dependencies = [
  "serde",
  "serde_spanned",
  "toml_datetime",
- "toml_edit 0.22.6",
+ "toml_edit 0.22.8",
 ]
 
 [[package]]
@@ -5814,15 +5324,15 @@ dependencies = [
 
 [[package]]
 name = "toml_edit"
-version = "0.22.6"
+version = "0.22.8"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2c1b5fd4128cc8d3e0cb74d4ed9a9cc7c7284becd4df68f5f940e1ad123606f6"
+checksum = "c12219811e0c1ba077867254e5ad62ee2c9c190b0d957110750ac0cda1ae96cd"
 dependencies = [
  "indexmap",
  "serde",
  "serde_spanned",
  "toml_datetime",
- "winnow 0.6.2",
+ "winnow 0.6.5",
 ]
 
 [[package]]
@@ -5844,7 +5354,7 @@ checksum = "34704c8d6ebcbc939824180af020566b01a7c01f80641264eba0999f6c2b6be7"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.51",
+ "syn 2.0.53",
 ]
 
 [[package]]
@@ -5874,12 +5384,6 @@ dependencies = [
 
 [[package]]
 name = "ttf-parser"
-version = "0.15.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7b3e06c9b9d80ed6b745c7159c40b311ad2916abb34a49e9be2653b90db0d8dd"
-
-[[package]]
-name = "ttf-parser"
 version = "0.20.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "17f77d76d837a7830fe1d4f12b7b4ba4192c1888001c7164257e4bc6d21d96b4"
@@ -6116,7 +5620,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "e27d6bdd219887a9eadd19e1c34f32e47fa332301184935c6d9bca26f3cca525"
 dependencies = [
  "anyhow",
- "cfg-if 1.0.0",
+ "cfg-if",
  "rustversion",
  "time",
 ]
@@ -6141,9 +5645,9 @@ checksum = "f3c4517f54858c779bbcbf228f4fca63d121bf85fbecb2dc578cdf4a39395690"
 
 [[package]]
 name = "walkdir"
-version = "2.4.0"
+version = "2.5.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d71d857dc86794ca4c280d616f7da00d2dbfd8cd788846559a6813e6aa4b54ee"
+checksum = "29790946404f91d9c5d06f9874efddea1dc06c5efe94541a7d6863108e3a5e4b"
 dependencies = [
  "same-file",
  "winapi-util",
@@ -6157,36 +5661,36 @@ checksum = "9c8d87e72b64a3b4db28d11ce29237c246188f4f51057d65a7eab63b7987e423"
 
 [[package]]
 name = "wasm-bindgen"
-version = "0.2.91"
+version = "0.2.92"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c1e124130aee3fb58c5bdd6b639a0509486b0338acaaae0c84a5124b0f588b7f"
+checksum = "4be2531df63900aeb2bca0daaaddec08491ee64ceecbee5076636a3b026795a8"
 dependencies = [
- "cfg-if 1.0.0",
+ "cfg-if",
  "wasm-bindgen-macro",
 ]
 
 [[package]]
 name = "wasm-bindgen-backend"
-version = "0.2.91"
+version = "0.2.92"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c9e7e1900c352b609c8488ad12639a311045f40a35491fb69ba8c12f758af70b"
+checksum = "614d787b966d3989fa7bb98a654e369c762374fd3213d212cfc0251257e747da"
 dependencies = [
  "bumpalo",
  "log",
  "once_cell",
  "proc-macro2",
  "quote",
- "syn 2.0.51",
+ "syn 2.0.53",
  "wasm-bindgen-shared",
 ]
 
 [[package]]
 name = "wasm-bindgen-futures"
-version = "0.4.41"
+version = "0.4.42"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "877b9c3f61ceea0e56331985743b13f3d25c406a7098d45180fb5f09bc19ed97"
+checksum = "76bc14366121efc8dbb487ab05bcc9d346b3b5ec0eaa76e46594cabbe51762c0"
 dependencies = [
- "cfg-if 1.0.0",
+ "cfg-if",
  "js-sys",
  "wasm-bindgen",
  "web-sys",
@@ -6194,9 +5698,9 @@ dependencies = [
 
 [[package]]
 name = "wasm-bindgen-macro"
-version = "0.2.91"
+version = "0.2.92"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b30af9e2d358182b5c7449424f017eba305ed32a7010509ede96cdc4696c46ed"
+checksum = "a1f8823de937b71b9460c0c34e25f3da88250760bec0ebac694b49997550d726"
 dependencies = [
  "quote",
  "wasm-bindgen-macro-support",
@@ -6204,22 +5708,22 @@ dependencies = [
 
 [[package]]
 name = "wasm-bindgen-macro-support"
-version = "0.2.91"
+version = "0.2.92"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "642f325be6301eb8107a83d12a8ac6c1e1c54345a7ef1a9261962dfefda09e66"
+checksum = "e94f17b526d0a461a191c78ea52bbce64071ed5c04c9ffe424dcb38f74171bb7"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.51",
+ "syn 2.0.53",
  "wasm-bindgen-backend",
  "wasm-bindgen-shared",
 ]
 
 [[package]]
 name = "wasm-bindgen-shared"
-version = "0.2.91"
+version = "0.2.92"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4f186bd2dcf04330886ce82d6f33dd75a7bfcf69ecf5763b89fcde53b6ac9838"
+checksum = "af190c94f2773fdb3729c55b007a722abb5384da03bc0986df4c289bf5567e96"
 
 [[package]]
 name = "wasm-timer"
@@ -6247,23 +5751,7 @@ dependencies = [
  "rustix 0.38.31",
  "scoped-tls",
  "smallvec",
- "wayland-sys 0.31.1",
-]
-
-[[package]]
-name = "wayland-client"
-version = "0.28.6"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e3ab332350e502f159382201394a78e3cc12d0f04db863429260164ea40e0355"
-dependencies = [
- "bitflags 1.3.2",
- "downcast-rs",
- "libc",
- "nix 0.20.0",
- "scoped-tls",
- "wayland-commons",
- "wayland-scanner 0.28.6",
- "wayland-sys 0.28.6",
+ "wayland-sys",
 ]
 
 [[package]]
@@ -6275,19 +5763,7 @@ dependencies = [
  "bitflags 2.4.2",
  "rustix 0.38.31",
  "wayland-backend",
- "wayland-scanner 0.31.1",
-]
-
-[[package]]
-name = "wayland-commons"
-version = "0.28.6"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a21817947c7011bbd0a27e11b17b337bfd022e8544b071a2641232047966fbda"
-dependencies = [
- "nix 0.20.0",
- "once_cell",
- "smallvec",
- "wayland-sys 0.28.6",
+ "wayland-scanner",
 ]
 
 [[package]]
@@ -6303,48 +5779,25 @@ dependencies = [
 
 [[package]]
 name = "wayland-cursor"
-version = "0.28.6"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "be610084edd1586d45e7bdd275fe345c7c1873598caa464c4fb835dee70fa65a"
-dependencies = [
- "nix 0.20.0",
- "wayland-client 0.28.6",
- "xcursor",
-]
-
-[[package]]
-name = "wayland-cursor"
 version = "0.31.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "71ce5fa868dd13d11a0d04c5e2e65726d0897be8de247c0c5a65886e283231ba"
 dependencies = [
  "rustix 0.38.31",
- "wayland-client 0.31.2",
+ "wayland-client",
  "xcursor",
 ]
 
 [[package]]
 name = "wayland-protocols"
-version = "0.28.6"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "286620ea4d803bacf61fa087a4242ee316693099ee5a140796aaba02b29f861f"
-dependencies = [
- "bitflags 1.3.2",
- "wayland-client 0.28.6",
- "wayland-commons",
- "wayland-scanner 0.28.6",
-]
-
-[[package]]
-name = "wayland-protocols"
 version = "0.31.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "8f81f365b8b4a97f422ac0e8737c438024b5951734506b0e1d775c73030561f4"
 dependencies = [
  "bitflags 2.4.2",
  "wayland-backend",
- "wayland-client 0.31.2",
- "wayland-scanner 0.31.1",
+ "wayland-client",
+ "wayland-scanner",
 ]
 
 [[package]]
@@ -6355,9 +5808,9 @@ checksum = "23803551115ff9ea9bce586860c5c5a971e360825a0309264102a9495a5ff479"
 dependencies = [
  "bitflags 2.4.2",
  "wayland-backend",
- "wayland-client 0.31.2",
- "wayland-protocols 0.31.2",
- "wayland-scanner 0.31.1",
+ "wayland-client",
+ "wayland-protocols",
+ "wayland-scanner",
 ]
 
 [[package]]
@@ -6368,20 +5821,9 @@ checksum = "ad1f61b76b6c2d8742e10f9ba5c3737f6530b4c243132c2a2ccc8aa96fe25cd6"
 dependencies = [
  "bitflags 2.4.2",
  "wayland-backend",
- "wayland-client 0.31.2",
- "wayland-protocols 0.31.2",
- "wayland-scanner 0.31.1",
-]
-
-[[package]]
-name = "wayland-scanner"
-version = "0.28.6"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ce923eb2deb61de332d1f356ec7b6bf37094dc5573952e1c8936db03b54c03f1"
-dependencies = [
- "proc-macro2",
- "quote",
- "xml-rs",
+ "wayland-client",
+ "wayland-protocols",
+ "wayland-scanner",
 ]
 
 [[package]]
@@ -6397,22 +5839,11 @@ dependencies = [
 
 [[package]]
 name = "wayland-sys"
-version = "0.28.6"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d841fca9aed7febf9bed2e9796c49bf58d4152ceda8ac949ebe00868d8f0feb8"
-dependencies = [
- "dlib 0.5.2",
- "lazy_static",
- "pkg-config",
-]
-
-[[package]]
-name = "wayland-sys"
 version = "0.31.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "15a0c8eaff5216d07f226cb7a549159267f3467b289d9a2e52fd3ef5aae2b7af"
 dependencies = [
- "dlib 0.5.2",
+ "dlib",
  "log",
  "once_cell",
  "pkg-config",
@@ -6420,9 +5851,9 @@ dependencies = [
 
 [[package]]
 name = "web-sys"
-version = "0.3.68"
+version = "0.3.69"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "96565907687f7aceb35bc5fc03770a8a0471d82e479f25832f54a0e3f4b28446"
+checksum = "77afa9a11836342370f4817622a2f0f418b134426d91a82dfb48f532d2ec13ef"
 dependencies = [
  "js-sys",
  "wasm-bindgen",
@@ -6450,7 +5881,7 @@ version = "0.19.0"
 source = "git+https://github.com/gfx-rs/wgpu?rev=20fda69#20fda698341efbdc870b8027d6d49f5bf3f36109"
 dependencies = [
  "arrayvec 0.7.4",
- "cfg-if 1.0.0",
+ "cfg-if",
  "cfg_aliases 0.1.1",
  "js-sys",
  "log",
@@ -6516,7 +5947,7 @@ dependencies = [
  "js-sys",
  "khronos-egl",
  "libc",
- "libloading 0.8.1",
+ "libloading 0.8.3",
  "log",
  "metal",
  "naga",
@@ -6586,13 +6017,13 @@ checksum = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f"
 [[package]]
 name = "window_clipboard"
 version = "0.4.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f6d692d46038c433f9daee7ad8757e002a4248c20b0a3fbc991d99521d3bcb6d"
+source = "git+https://github.com/pop-os/window_clipboard.git?tag=pop-mime-types#f65a6c303bbbd6c7bf88f9bc34421ec06d893bea"
 dependencies = [
  "clipboard-win",
  "clipboard_macos",
  "clipboard_wayland",
  "clipboard_x11",
+ "mime 0.1.0",
  "raw-window-handle 0.6.0",
  "thiserror",
 ]
@@ -6624,7 +6055,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "e48a53791691ab099e5e2ad123536d0fff50652600abaf43bbf952894110d0be"
 dependencies = [
  "windows-core",
- "windows-targets 0.52.3",
+ "windows-targets 0.52.4",
 ]
 
 [[package]]
@@ -6633,7 +6064,7 @@ version = "0.52.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "33ab640c8d7e35bf8ba19b884ba838ceb4fba93a4e8c65a9059d08afcfc683d9"
 dependencies = [
- "windows-targets 0.52.3",
+ "windows-targets 0.52.4",
 ]
 
 [[package]]
@@ -6682,7 +6113,7 @@ version = "0.52.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "282be5f36a8ce781fad8c8ae18fa3f9beff57ec1b52cb3de0789201425d9a33d"
 dependencies = [
- "windows-targets 0.52.3",
+ "windows-targets 0.52.4",
 ]
 
 [[package]]
@@ -6717,17 +6148,17 @@ dependencies = [
 
 [[package]]
 name = "windows-targets"
-version = "0.52.3"
+version = "0.52.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d380ba1dc7187569a8a9e91ed34b8ccfc33123bbacb8c0aed2d1ad7f3ef2dc5f"
+checksum = "7dd37b7e5ab9018759f893a1952c9420d060016fc19a472b4bb20d1bdd694d1b"
 dependencies = [
- "windows_aarch64_gnullvm 0.52.3",
- "windows_aarch64_msvc 0.52.3",
- "windows_i686_gnu 0.52.3",
- "windows_i686_msvc 0.52.3",
- "windows_x86_64_gnu 0.52.3",
- "windows_x86_64_gnullvm 0.52.3",
- "windows_x86_64_msvc 0.52.3",
+ "windows_aarch64_gnullvm 0.52.4",
+ "windows_aarch64_msvc 0.52.4",
+ "windows_i686_gnu 0.52.4",
+ "windows_i686_msvc 0.52.4",
+ "windows_x86_64_gnu 0.52.4",
+ "windows_x86_64_gnullvm 0.52.4",
+ "windows_x86_64_msvc 0.52.4",
 ]
 
 [[package]]
@@ -6744,9 +6175,9 @@ checksum = "2b38e32f0abccf9987a4e3079dfb67dcd799fb61361e53e2882c3cbaf0d905d8"
 
 [[package]]
 name = "windows_aarch64_gnullvm"
-version = "0.52.3"
+version = "0.52.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "68e5dcfb9413f53afd9c8f86e56a7b4d86d9a2fa26090ea2dc9e40fba56c6ec6"
+checksum = "bcf46cf4c365c6f2d1cc93ce535f2c8b244591df96ceee75d8e83deb70a9cac9"
 
 [[package]]
 name = "windows_aarch64_msvc"
@@ -6762,9 +6193,9 @@ checksum = "dc35310971f3b2dbbf3f0690a219f40e2d9afcf64f9ab7cc1be722937c26b4bc"
 
 [[package]]
 name = "windows_aarch64_msvc"
-version = "0.52.3"
+version = "0.52.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8dab469ebbc45798319e69eebf92308e541ce46760b49b18c6b3fe5e8965b30f"
+checksum = "da9f259dd3bcf6990b55bffd094c4f7235817ba4ceebde8e6d11cd0c5633b675"
 
 [[package]]
 name = "windows_i686_gnu"
@@ -6780,9 +6211,9 @@ checksum = "a75915e7def60c94dcef72200b9a8e58e5091744960da64ec734a6c6e9b3743e"
 
 [[package]]
 name = "windows_i686_gnu"
-version = "0.52.3"
+version = "0.52.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2a4e9b6a7cac734a8b4138a4e1044eac3404d8326b6c0f939276560687a033fb"
+checksum = "b474d8268f99e0995f25b9f095bc7434632601028cf86590aea5c8a5cb7801d3"
 
 [[package]]
 name = "windows_i686_msvc"
@@ -6798,9 +6229,9 @@ checksum = "8f55c233f70c4b27f66c523580f78f1004e8b5a8b659e05a4eb49d4166cca406"
 
 [[package]]
 name = "windows_i686_msvc"
-version = "0.52.3"
+version = "0.52.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "28b0ec9c422ca95ff34a78755cfa6ad4a51371da2a5ace67500cf7ca5f232c58"
+checksum = "1515e9a29e5bed743cb4415a9ecf5dfca648ce85ee42e15873c3cd8610ff8e02"
 
 [[package]]
 name = "windows_x86_64_gnu"
@@ -6816,9 +6247,9 @@ checksum = "53d40abd2583d23e4718fddf1ebec84dbff8381c07cae67ff7768bbf19c6718e"
 
 [[package]]
 name = "windows_x86_64_gnu"
-version = "0.52.3"
+version = "0.52.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "704131571ba93e89d7cd43482277d6632589b18ecf4468f591fbae0a8b101614"
+checksum = "5eee091590e89cc02ad514ffe3ead9eb6b660aedca2183455434b93546371a03"
 
 [[package]]
 name = "windows_x86_64_gnullvm"
@@ -6834,9 +6265,9 @@ checksum = "0b7b52767868a23d5bab768e390dc5f5c55825b6d30b86c844ff2dc7414044cc"
 
 [[package]]
 name = "windows_x86_64_gnullvm"
-version = "0.52.3"
+version = "0.52.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "42079295511643151e98d61c38c0acc444e52dd42ab456f7ccfd5152e8ecf21c"
+checksum = "77ca79f2451b49fa9e2af39f0747fe999fcda4f5e241b2898624dca97a1f2177"
 
 [[package]]
 name = "windows_x86_64_msvc"
@@ -6852,41 +6283,9 @@ checksum = "ed94fce61571a4006852b7389a063ab983c02eb1bb37b47f8272ce92d06d9538"
 
 [[package]]
 name = "windows_x86_64_msvc"
-version = "0.52.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0770833d60a970638e989b3fa9fd2bb1aaadcf88963d1659fd7d9990196ed2d6"
-
-[[package]]
-name = "winit"
-version = "0.25.0"
+version = "0.52.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "79610794594d5e86be473ef7763f604f2159cbac8c94debd00df8fb41e86c2f8"
-dependencies = [
- "bitflags 1.3.2",
- "cocoa 0.24.1",
- "core-foundation 0.9.4",
- "core-graphics 0.22.3",
- "core-video-sys",
- "dispatch",
- "instant",
- "lazy_static",
- "libc",
- "log",
- "mio 0.7.14",
- "mio-misc",
- "ndk 0.3.0",
- "ndk-glue",
- "ndk-sys 0.2.2",
- "objc",
- "parking_lot 0.11.2",
- "percent-encoding",
- "raw-window-handle 0.3.4",
- "scopeguard",
- "smithay-client-toolkit 0.12.3",
- "wayland-client 0.28.6",
- "winapi",
- "x11-dl",
-]
+checksum = "32b752e52a2da0ddfbdbcc6fceadfeede4c939ed16d13e648833a61dfb611ed8"
 
 [[package]]
 name = "winit"
@@ -6898,18 +6297,18 @@ dependencies = [
  "atomic-waker",
  "bitflags 2.4.2",
  "bytemuck",
- "calloop 0.12.4",
+ "calloop",
  "cfg_aliases 0.1.1",
- "core-foundation 0.9.4",
- "core-graphics 0.23.1",
+ "core-foundation",
+ "core-graphics",
  "cursor-icon",
  "icrate 0.0.4",
  "js-sys",
  "libc",
  "log",
- "memmap2 0.9.4",
- "ndk 0.8.0",
- "ndk-sys 0.5.0+25.2.9519653",
+ "memmap2",
+ "ndk",
+ "ndk-sys",
  "objc2 0.4.1",
  "once_cell",
  "orbclient",
@@ -6918,14 +6317,14 @@ dependencies = [
  "redox_syscall 0.3.5",
  "rustix 0.38.31",
  "sctk-adwaita",
- "smithay-client-toolkit 0.18.1",
+ "smithay-client-toolkit",
  "smol_str",
  "unicode-segmentation",
  "wasm-bindgen",
  "wasm-bindgen-futures",
  "wayland-backend",
- "wayland-client 0.31.2",
- "wayland-protocols 0.31.2",
+ "wayland-client",
+ "wayland-protocols",
  "wayland-protocols-plasma",
  "web-sys",
  "web-time",
@@ -6946,9 +6345,9 @@ dependencies = [
 
 [[package]]
 name = "winnow"
-version = "0.6.2"
+version = "0.6.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7a4191c47f15cc3ec71fcb4913cb83d58def65dd3787610213c649283b5ce178"
+checksum = "dffa400e67ed5a4dd237983829e66475f0a4a26938c4b04c21baede6262215b8"
 dependencies = [
  "memchr",
 ]
@@ -6973,7 +6372,7 @@ dependencies = [
  "as-raw-xcb-connection",
  "gethostname",
  "libc",
- "libloading 0.8.1",
+ "libloading 0.8.3",
  "once_cell",
  "rustix 0.38.31",
  "x11rb-protocol",
@@ -7015,7 +6414,7 @@ checksum = "87bf7b69bb50588d70a36e467be29d3df3e8c32580276d62eded9738c1a797aa"
 dependencies = [
  "dirs-next",
  "glob",
- "mime",
+ "mime 0.3.17",
  "nom 5.1.3",
  "unicase",
 ]
@@ -7027,7 +6426,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "d039de8032a9a8856a6be89cea3e5d12fdd82306ab7c94d74e6deab2460651c5"
 dependencies = [
  "bitflags 2.4.2",
- "dlib 0.5.2",
+ "dlib",
  "log",
  "once_cell",
  "xkeysym",
@@ -7096,7 +6495,7 @@ dependencies = [
  "futures-sink",
  "futures-util",
  "hex",
- "nix 0.26.4",
+ "nix",
  "once_cell",
  "ordered-stream",
  "rand",
@@ -7130,9 +6529,9 @@ dependencies = [
 
 [[package]]
 name = "zbus_names"
-version = "2.6.0"
+version = "2.6.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "fb80bb776dbda6e23d705cf0123c3b95df99c4ebeaec6c2599d4a5419902b4a9"
+checksum = "437d738d3750bed6ca9b8d423ccc7a8eb284f6b1d6d4e225a0e4e6258d864c8d"
 dependencies = [
  "serde",
  "static_assertions",
@@ -7162,7 +6561,7 @@ checksum = "9ce1b18ccd8e73a9321186f97e46f9f04b778851177567b1975109d26a08d2a6"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.51",
+ "syn 2.0.53",
 ]
 
 [[package]]
diff --git a/pkgs/by-name/co/cosmic-edit/package.nix b/pkgs/by-name/co/cosmic-edit/package.nix
index 155b812b42d9..8120fcc61e16 100644
--- a/pkgs/by-name/co/cosmic-edit/package.nix
+++ b/pkgs/by-name/co/cosmic-edit/package.nix
@@ -21,13 +21,13 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "cosmic-edit";
-  version = "unstable-2024-02-28";
+  version = "unstable-2024-03-30";
 
   src = fetchFromGitHub {
     owner = "pop-os";
     repo = pname;
-    rev = "536a66eff9c032afd76b60be6a9067a14ed38ab1";
-    hash = "sha256-UsZBxeamw8VuHtHrVtTwHhPPG+SMBrGY5taw+da/Ll0=";
+    rev = "cd1b32218078979aa9a944b3a32f9b96996764a1";
+    hash = "sha256-54DwcI/pwN6nRnHC6GeDYVJXNgS+xBQTnRrKV2YMGUA=";
   };
 
   cargoLock = {
@@ -35,14 +35,15 @@ rustPlatform.buildRustPackage rec {
     outputHashes = {
       "accesskit-0.12.2" = "sha256-ksaYMGT/oug7isQY8/1WD97XDUsX2ShBdabUzxWffYw=";
       "atomicwrites-0.4.2" = "sha256-QZSuGPrJXh+svMeFWqAXoqZQxLq/WfIiamqvjJNVhxA=";
-      "cosmic-config-0.1.0" = "sha256-Zyi95zcBAohM1WBropLzJczSIfNNNBK2odB4AmW4h5I=";
-      "cosmic-files-0.1.0" = "sha256-64An0MPgnFgyVlWmtBGBs+IV2z+4vmEY2uRPetZM4/M=";
+      "clipboard_macos-0.1.0" = "sha256-PEH+aCpjDCEIj8s39nIeWxb7qu3u9IfriGqf0pYObMk=";
+      "cosmic-config-0.1.0" = "sha256-x/xWMR5w2oEbghTSa8iCi24DA2s99+tcnga8K6jS6HQ=";
+      "cosmic-files-0.1.0" = "sha256-4uwqRzkttmPQlqkX6xLjxyXRcqUhchCjAzZH9wmR+Tk=";
       "cosmic-syntax-theme-0.1.0" = "sha256-BNb9wrryD5FJImboD3TTdPRIfiBqPpItqwGdT1ZiNng=";
-      "cosmic-text-0.11.2" = "sha256-Y9i5stMYpx+iqn4y5DJm1O1+3UIGp0/fSsnNq3Zloug=";
+      "cosmic-text-0.11.2" = "sha256-gUIQFHPaFTmtUfgpVvsGTnw2UKIBx9gl0K67KPuynWs=";
       "d3d12-0.19.0" = "sha256-usrxQXWLGJDjmIdw1LBXtBvX+CchZDvE8fHC0LjvhD4=";
       "glyphon-0.5.0" = "sha256-j1HrbEpUBqazWqNfJhpyjWuxYAxkvbXzRKeSouUoPWg=";
+      "smithay-clipboard-0.8.0" = "sha256-OZOGbdzkgRIeDFrAENXE7g62eQTs60Je6lYVr0WudlE=";
       "softbuffer-0.4.1" = "sha256-a0bUFz6O8CWRweNt/OxTvflnPYwO5nm6vsyc/WcXyNg=";
-      "systemicons-0.7.0" = "sha256-zzAI+6mnpQOh+3mX7/sJ+w4a7uX27RduQ99PNxLNF78=";
       "taffy-0.3.11" = "sha256-SCx9GEIJjWdoNVyq+RZAGn0N71qraKZxf9ZWhvyzLaI=";
       "winit-0.29.10" = "sha256-ScTII2AzK3SC8MVeASZ9jhVWsEaGrSQ2BnApTxgfxK4=";
     };
@@ -50,7 +51,7 @@ rustPlatform.buildRustPackage rec {
 
   # COSMIC applications now uses vergen for the About page
   # Update the COMMIT_DATE to match when the commit was made
-  env.VERGEN_GIT_COMMIT_DATE = "2024-02-28";
+  env.VERGEN_GIT_COMMIT_DATE = "2024-03-30";
   env.VERGEN_GIT_SHA = src.rev;
 
   postPatch = ''
diff --git a/pkgs/by-name/co/cosmic-icons/package.nix b/pkgs/by-name/co/cosmic-icons/package.nix
index b14387ee7a86..c201943f9474 100644
--- a/pkgs/by-name/co/cosmic-icons/package.nix
+++ b/pkgs/by-name/co/cosmic-icons/package.nix
@@ -8,13 +8,13 @@
 }:
 stdenvNoCC.mkDerivation rec {
   pname = "cosmic-icons";
-  version = "unstable-2024-02-22";
+  version = "0-unstable-2024-05-02";
 
   src = fetchFromGitHub {
     owner = "pop-os";
     repo = pname;
-    rev = "ee87327736728a9fb5a70c8688e9000f72829343";
-    sha256 = "sha256-W4t5uTkiOVGGHZEqD5tGbEPhHbNZp5qnYYHDG8N70vQ=";
+    rev = "f48101c38db7e725d31591ec49896a2f525886e2";
+    sha256 = "sha256-M9n09uEM4ee8FZYTsaAu+8E0YRxQAGBvylKDHv1dp5M=";
   };
 
   nativeBuildInputs = [ just ];
diff --git a/pkgs/by-name/co/cosmic-store/Cargo.lock b/pkgs/by-name/co/cosmic-store/Cargo.lock
index 7d7e8ef1b9a3..a70925035b6d 100644
--- a/pkgs/by-name/co/cosmic-store/Cargo.lock
+++ b/pkgs/by-name/co/cosmic-store/Cargo.lock
@@ -117,9 +117,9 @@ dependencies = [
 
 [[package]]
 name = "aho-corasick"
-version = "1.1.2"
+version = "1.1.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b2969dcb958b36655471fc61f7e416fa76033bdd4bfed0678d8fee1e2d07a1f0"
+checksum = "8e60d3430d3a69478ad0993f19238d2df97c507009a52b3c10addcd7f6bcb916"
 dependencies = [
  "memchr",
 ]
@@ -149,7 +149,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "ee91c0c2905bae44f84bfa4e044536541df26b7703fd0888deeb9060fcc44289"
 dependencies = [
  "android-properties",
- "bitflags 2.4.2",
+ "bitflags 2.5.0",
  "cc",
  "cesu8",
  "jni",
@@ -321,7 +321,7 @@ dependencies = [
  "async-task",
  "concurrent-queue",
  "fastrand 2.0.1",
- "futures-lite 2.2.0",
+ "futures-lite 2.3.0",
  "slab",
 ]
 
@@ -359,18 +359,18 @@ dependencies = [
 
 [[package]]
 name = "async-io"
-version = "2.3.1"
+version = "2.3.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8f97ab0c5b00a7cdbe5a371b9a782ee7be1316095885c8a4ea1daf490eb0ef65"
+checksum = "dcccb0f599cfa2f8ace422d3555572f47424da5648a4382a9dd0310ff8210884"
 dependencies = [
  "async-lock 3.3.0",
  "cfg-if",
  "concurrent-queue",
  "futures-io",
- "futures-lite 2.2.0",
+ "futures-lite 2.3.0",
  "parking",
  "polling 3.5.0",
- "rustix 0.38.31",
+ "rustix 0.38.32",
  "slab",
  "tracing",
  "windows-sys 0.52.0",
@@ -409,19 +409,19 @@ dependencies = [
  "cfg-if",
  "event-listener 3.1.0",
  "futures-lite 1.13.0",
- "rustix 0.38.31",
+ "rustix 0.38.32",
  "windows-sys 0.48.0",
 ]
 
 [[package]]
 name = "async-recursion"
-version = "1.0.5"
+version = "1.1.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5fd55a5ba1179988837d24ab4c7cc8ed6efdeff578ede0416b4225a5fca35bd0"
+checksum = "30c5ef0ede93efbf733c1a727f3b6b5a1060bbedd5600183e66f6e4be4af0ec5"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.52",
+ "syn 2.0.53",
 ]
 
 [[package]]
@@ -430,13 +430,13 @@ version = "0.2.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "9e47d90f65a225c4527103a8d747001fc56e375203592b25ad103e1ca13124c5"
 dependencies = [
- "async-io 2.3.1",
+ "async-io 2.3.2",
  "async-lock 2.8.0",
  "atomic-waker",
  "cfg-if",
  "futures-core",
  "futures-io",
- "rustix 0.38.31",
+ "rustix 0.38.32",
  "signal-hook-registry",
  "slab",
  "windows-sys 0.48.0",
@@ -450,13 +450,13 @@ checksum = "fbb36e985947064623dbd357f727af08ffd077f93d696782f3c56365fa2e2799"
 
 [[package]]
 name = "async-trait"
-version = "0.1.77"
+version = "0.1.78"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c980ee35e870bd1a4d2c8294d4c04d0499e67bca1e4b5cefcc693c2fa00caea9"
+checksum = "461abc97219de0eaaf81fe3ef974a540158f3d079c2ab200f891f1a2ef201e85"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.52",
+ "syn 2.0.53",
 ]
 
 [[package]]
@@ -482,7 +482,7 @@ name = "atomicwrites"
 version = "0.4.2"
 source = "git+https://github.com/jackpot51/rust-atomicwrites#043ab4859d53ffd3d55334685303d8df39c9f768"
 dependencies = [
- "rustix 0.38.31",
+ "rustix 0.38.32",
  "tempfile",
  "windows-sys 0.48.0",
 ]
@@ -493,7 +493,7 @@ version = "0.4.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "fc7b2dbe9169059af0f821e811180fddc971fc210c776c133c7819ccd6e478db"
 dependencies = [
- "rustix 0.38.31",
+ "rustix 0.38.32",
  "tempfile",
  "windows-sys 0.52.0",
 ]
@@ -554,9 +554,9 @@ checksum = "d468802bab17cbc0cc575e9b053f41e72aa36bfa6b7f55e3529ffa43161b97fa"
 
 [[package]]
 name = "backtrace"
-version = "0.3.69"
+version = "0.3.70"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2089b7e3f35b9dd2d0ed921ead4f6d318c27680d4a5bd167b3ee120edb105837"
+checksum = "95d8e92cac0961e91dbd517496b00f7e9b92363dbe6d42c3198268323798860c"
 dependencies = [
  "addr2line",
  "cc",
@@ -617,7 +617,7 @@ dependencies = [
  "packagemerge",
  "proc-macro2",
  "quote",
- "syn 2.0.52",
+ "syn 2.0.53",
 ]
 
 [[package]]
@@ -628,9 +628,9 @@ checksum = "bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a"
 
 [[package]]
 name = "bitflags"
-version = "2.4.2"
+version = "2.5.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ed570934406eb16438a4e976b1b4500774099c13b8cb96eec99f620f05090ddf"
+checksum = "cf4b9d6a944f767f8e5e0db018570623c85f3d925ac718db4e06d0187adb21c1"
 dependencies = [
  "serde",
 ]
@@ -690,7 +690,7 @@ dependencies = [
  "async-task",
  "fastrand 2.0.1",
  "futures-io",
- "futures-lite 2.2.0",
+ "futures-lite 2.3.0",
  "piper",
  "tracing",
 ]
@@ -703,22 +703,22 @@ checksum = "7ff69b9dd49fd426c69a0db9fc04dd934cdb6645ff000864d98f7e2af8830eaa"
 
 [[package]]
 name = "bytemuck"
-version = "1.14.3"
+version = "1.15.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a2ef034f05691a48569bd920a96c81b9d91bbad1ab5ac7c4616c1f6ef36cb79f"
+checksum = "5d6d68c57235a3a081186990eca2867354726650f42f7516ca50c28d6281fd15"
 dependencies = [
  "bytemuck_derive",
 ]
 
 [[package]]
 name = "bytemuck_derive"
-version = "1.5.0"
+version = "1.6.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "965ab7eb5f8f97d2a083c799f3a1b994fc397b2fe2da5d1da1626ce15a39f2b1"
+checksum = "4da9a32f3fed317401fa3c862968128267c3106685286e15d5aaa3d7389c2f60"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.52",
+ "syn 2.0.53",
 ]
 
 [[package]]
@@ -749,10 +749,10 @@ version = "0.12.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "fba7adb4dd5aa98e5553510223000e7148f621165ec5f9acd7113f6ca4995298"
 dependencies = [
- "bitflags 2.4.2",
+ "bitflags 2.5.0",
  "log",
  "polling 3.5.0",
- "rustix 0.38.31",
+ "rustix 0.38.32",
  "slab",
  "thiserror",
 ]
@@ -764,7 +764,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "0f0ea9b9476c7fad82841a8dbb380e2eae480c21910feba80725b46931ed8f02"
 dependencies = [
  "calloop",
- "rustix 0.38.31",
+ "rustix 0.38.32",
  "wayland-backend",
  "wayland-client",
 ]
@@ -830,9 +830,9 @@ dependencies = [
 
 [[package]]
 name = "clipboard-win"
-version = "5.2.0"
+version = "5.3.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "12f9a0700e0127ba15d1d52dd742097f821cd9c65939303a44d970465040a297"
+checksum = "d517d4b86184dbb111d3556a10f1c8a04da7428d2987bf1081602bf11c3aa9ee"
 dependencies = [
  "error-code",
 ]
@@ -840,8 +840,7 @@ dependencies = [
 [[package]]
 name = "clipboard_macos"
 version = "0.1.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "145a7f9e9b89453bc0a5e32d166456405d389cea5b578f57f1274b1397588a95"
+source = "git+https://github.com/pop-os/window_clipboard.git?tag=pop-mime-types#f65a6c303bbbd6c7bf88f9bc34421ec06d893bea"
 dependencies = [
  "objc",
  "objc-foundation",
@@ -851,17 +850,16 @@ dependencies = [
 [[package]]
 name = "clipboard_wayland"
 version = "0.2.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "003f886bc4e2987729d10c1db3424e7f80809f3fc22dbc16c685738887cb37b8"
+source = "git+https://github.com/pop-os/window_clipboard.git?tag=pop-mime-types#f65a6c303bbbd6c7bf88f9bc34421ec06d893bea"
 dependencies = [
+ "mime 0.1.0",
  "smithay-clipboard",
 ]
 
 [[package]]
 name = "clipboard_x11"
 version = "0.4.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4274ea815e013e0f9f04a2633423e14194e408a0576c943ce3d14ca56c50031c"
+source = "git+https://github.com/pop-os/window_clipboard.git?tag=pop-mime-types#f65a6c303bbbd6c7bf88f9bc34421ec06d893bea"
 dependencies = [
  "thiserror",
  "x11rb",
@@ -1026,7 +1024,7 @@ dependencies = [
 [[package]]
 name = "cosmic-config"
 version = "0.1.0"
-source = "git+https://github.com/pop-os/libcosmic.git#2b23005fbff5a3d7e218a867e1aadb491abeac55"
+source = "git+https://github.com/pop-os/libcosmic.git#1575aa267cc5cd69ac65cfbe09fc7c4212d18e3a"
 dependencies = [
  "atomicwrites 0.4.2",
  "cosmic-config-derive",
@@ -1043,7 +1041,7 @@ dependencies = [
 [[package]]
 name = "cosmic-config-derive"
 version = "0.1.0"
-source = "git+https://github.com/pop-os/libcosmic.git#2b23005fbff5a3d7e218a867e1aadb491abeac55"
+source = "git+https://github.com/pop-os/libcosmic.git#1575aa267cc5cd69ac65cfbe09fc7c4212d18e3a"
 dependencies = [
  "quote",
  "syn 1.0.109",
@@ -1085,9 +1083,9 @@ dependencies = [
 [[package]]
 name = "cosmic-text"
 version = "0.11.2"
-source = "git+https://github.com/pop-os/cosmic-text.git#a53a0b3a8c085143470a9d26ac2c2911cc479033"
+source = "git+https://github.com/pop-os/cosmic-text.git#b08676909f882f553ab574601b35b58276a52458"
 dependencies = [
- "bitflags 2.4.2",
+ "bitflags 2.5.0",
  "fontdb",
  "libm",
  "log",
@@ -1107,15 +1105,17 @@ dependencies = [
 [[package]]
 name = "cosmic-theme"
 version = "0.1.0"
-source = "git+https://github.com/pop-os/libcosmic.git#2b23005fbff5a3d7e218a867e1aadb491abeac55"
+source = "git+https://github.com/pop-os/libcosmic.git#1575aa267cc5cd69ac65cfbe09fc7c4212d18e3a"
 dependencies = [
  "almost",
  "cosmic-config",
  "csscolorparser",
+ "dirs 5.0.1",
  "lazy_static",
  "palette",
  "ron",
  "serde",
+ "thiserror",
 ]
 
 [[package]]
@@ -1209,7 +1209,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "ad291aa74992b9b7a7e88c38acbbf6ad7e107f1d90ee8775b7bc1fc3394f485c"
 dependencies = [
  "quote",
- "syn 2.0.52",
+ "syn 2.0.53",
 ]
 
 [[package]]
@@ -1223,7 +1223,7 @@ name = "d3d12"
 version = "0.19.0"
 source = "git+https://github.com/gfx-rs/wgpu?rev=20fda69#20fda698341efbdc870b8027d6d49f5bf3f36109"
 dependencies = [
- "bitflags 2.4.2",
+ "bitflags 2.5.0",
  "libloading 0.8.3",
  "winapi",
 ]
@@ -1249,7 +1249,7 @@ dependencies = [
  "proc-macro2",
  "quote",
  "strsim",
- "syn 2.0.52",
+ "syn 2.0.53",
 ]
 
 [[package]]
@@ -1260,7 +1260,7 @@ checksum = "a668eda54683121533a393014d8692171709ff57a7d61f187b6e782719f8933f"
 dependencies = [
  "darling_core",
  "quote",
- "syn 2.0.52",
+ "syn 2.0.53",
 ]
 
 [[package]]
@@ -1302,7 +1302,7 @@ dependencies = [
  "darling",
  "proc-macro2",
  "quote",
- "syn 2.0.52",
+ "syn 2.0.53",
 ]
 
 [[package]]
@@ -1370,7 +1370,7 @@ checksum = "487585f4d0c6655fe74905e2504d8ad6908e4db67f744eb140876906c2f3175d"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.52",
+ "syn 2.0.53",
 ]
 
 [[package]]
@@ -1403,11 +1403,11 @@ version = "0.11.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "a0f8a69e60d75ae7dab4ef26a59ca99f2a89d4c142089b537775ae0c198bdcde"
 dependencies = [
- "bitflags 2.4.2",
+ "bitflags 2.5.0",
  "bytemuck",
  "drm-ffi",
  "drm-fourcc",
- "rustix 0.38.31",
+ "rustix 0.38.32",
 ]
 
 [[package]]
@@ -1417,7 +1417,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "41334f8405792483e32ad05fbb9c5680ff4e84491883d2947a4757dc54cb2ac6"
 dependencies = [
  "drm-sys",
- "rustix 0.38.31",
+ "rustix 0.38.32",
 ]
 
 [[package]]
@@ -1469,7 +1469,7 @@ checksum = "5c785274071b1b420972453b306eeca06acf4633829db4223b58a2a8c5953bc4"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.52",
+ "syn 2.0.53",
 ]
 
 [[package]]
@@ -1746,9 +1746,9 @@ checksum = "3f9eec918d3f24069decb9af1554cad7c880e2da24a9afd88aca000531ab82c1"
 
 [[package]]
 name = "font-types"
-version = "0.4.2"
+version = "0.4.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0bd7f3ea17572640b606b35df42cfb6ecdf003704b062580e59918692190b73d"
+checksum = "5b7f6040d337bd44434ab21fc6509154edf2cece88b23758d9d64654c4e7730b"
 
 [[package]]
 name = "fontconfig-parser"
@@ -1800,7 +1800,7 @@ checksum = "1a5c6c585bc94aaf2c7b51dd4c2ba22680844aba4c687be581871a6f518c5742"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.52",
+ "syn 2.0.53",
 ]
 
 [[package]]
@@ -1836,9 +1836,9 @@ dependencies = [
 
 [[package]]
 name = "freedesktop-desktop-entry"
-version = "0.5.0"
+version = "0.5.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "45157175a725e81f3f594382430b6b78af5f8f72db9bd51b94f0785f80fc6d29"
+checksum = "287f89b1a3d88dd04d2b65dfec39f3c381efbcded7b736456039c4ee49d54b17"
 dependencies = [
  "dirs 3.0.2",
  "gettext-rs",
@@ -1951,9 +1951,9 @@ dependencies = [
 
 [[package]]
 name = "futures-lite"
-version = "2.2.0"
+version = "2.3.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "445ba825b27408685aaecefd65178908c36c6e96aaf6d8599419d46e624192ba"
+checksum = "52527eb5074e35e9339c6b4e8d12600c7128b68fb25dcb9fa9dec18f7c25f3a5"
 dependencies = [
  "fastrand 2.0.1",
  "futures-core",
@@ -1970,7 +1970,7 @@ checksum = "87750cf4b7a4c0625b1529e4c543c2182106e4dedc60a2a6455e00d212c489ac"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.52",
+ "syn 2.0.53",
 ]
 
 [[package]]
@@ -2165,7 +2165,7 @@ version = "0.18.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "233daaf6e83ae6a12a52055f568f9d7cf4671dabb78ff9560ab6da230ce00ee5"
 dependencies = [
- "bitflags 2.4.2",
+ "bitflags 2.5.0",
  "futures-channel",
  "futures-core",
  "futures-executor",
@@ -2188,12 +2188,12 @@ version = "0.18.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "0bb0228f477c0900c880fd78c8759b95c7636dbd7842707f49e132378aa2acdc"
 dependencies = [
- "heck",
+ "heck 0.4.1",
  "proc-macro-crate 2.0.2",
  "proc-macro-error",
  "proc-macro2",
  "quote",
- "syn 2.0.52",
+ "syn 2.0.53",
 ]
 
 [[package]]
@@ -2255,7 +2255,7 @@ version = "0.6.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "fbcd2dba93594b227a1f57ee09b8b9da8892c34d55aa332e034a228d0fe6a171"
 dependencies = [
- "bitflags 2.4.2",
+ "bitflags 2.5.0",
  "gpu-alloc-types",
 ]
 
@@ -2265,7 +2265,7 @@ version = "0.3.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "98ff03b468aa837d70984d55f5d3f846f6ec31fe34bbb97c4f85219caeee1ca4"
 dependencies = [
- "bitflags 2.4.2",
+ "bitflags 2.5.0",
 ]
 
 [[package]]
@@ -2287,7 +2287,7 @@ version = "0.2.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "cc11df1ace8e7e564511f53af41f3e42ddc95b56fd07b3f4445d2a6048bc682c"
 dependencies = [
- "bitflags 2.4.2",
+ "bitflags 2.5.0",
  "gpu-descriptor-types",
  "hashbrown",
 ]
@@ -2298,7 +2298,7 @@ version = "0.1.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "6bf0b36e6f090b7e1d8a4b49c0cb81c1f8376f72198c65dd3ad9ff3556b8b78c"
 dependencies = [
- "bitflags 2.4.2",
+ "bitflags 2.5.0",
 ]
 
 [[package]]
@@ -2337,9 +2337,9 @@ dependencies = [
 
 [[package]]
 name = "h2"
-version = "0.3.24"
+version = "0.3.25"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "bb2c4422095b67ee78da96fbb51a4cc413b3b25883c7717ff7ca1ab31022c9c9"
+checksum = "4fbd2820c5e49886948654ab546d0688ff24530286bdcf8fca3cefb16d4618eb"
 dependencies = [
  "bytes",
  "fnv",
@@ -2380,7 +2380,7 @@ version = "0.11.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "af2a7e73e1f34c48da31fb668a907f250794837e08faa144fd24f0b8b741e890"
 dependencies = [
- "bitflags 2.4.2",
+ "bitflags 2.5.0",
  "com",
  "libc",
  "libloading 0.8.3",
@@ -2396,6 +2396,12 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "95505c38b4572b2d910cecb0281560f54b440a19336cbbcb27bf6ce6adc6f5a8"
 
 [[package]]
+name = "heck"
+version = "0.5.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "2304e00983f87ffb38b55b444b5e3b60a884b5d30c0fca7d82fe33449bbe55ea"
+
+[[package]]
 name = "hermit-abi"
 version = "0.3.9"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -2543,7 +2549,7 @@ dependencies = [
  "proc-macro2",
  "quote",
  "strsim",
- "syn 2.0.52",
+ "syn 2.0.53",
  "unic-langid",
 ]
 
@@ -2557,7 +2563,7 @@ dependencies = [
  "i18n-config",
  "proc-macro2",
  "quote",
- "syn 2.0.52",
+ "syn 2.0.53",
 ]
 
 [[package]]
@@ -2586,7 +2592,7 @@ dependencies = [
 [[package]]
 name = "iced"
 version = "0.12.0"
-source = "git+https://github.com/pop-os/libcosmic.git#2b23005fbff5a3d7e218a867e1aadb491abeac55"
+source = "git+https://github.com/pop-os/libcosmic.git#1575aa267cc5cd69ac65cfbe09fc7c4212d18e3a"
 dependencies = [
  "iced_accessibility",
  "iced_core",
@@ -2596,12 +2602,13 @@ dependencies = [
  "iced_winit",
  "image",
  "thiserror",
+ "window_clipboard",
 ]
 
 [[package]]
 name = "iced_accessibility"
 version = "0.1.0"
-source = "git+https://github.com/pop-os/libcosmic.git#2b23005fbff5a3d7e218a867e1aadb491abeac55"
+source = "git+https://github.com/pop-os/libcosmic.git#1575aa267cc5cd69ac65cfbe09fc7c4212d18e3a"
 dependencies = [
  "accesskit",
  "accesskit_winit",
@@ -2610,7 +2617,7 @@ dependencies = [
 [[package]]
 name = "iced_core"
 version = "0.12.0"
-source = "git+https://github.com/pop-os/libcosmic.git#2b23005fbff5a3d7e218a867e1aadb491abeac55"
+source = "git+https://github.com/pop-os/libcosmic.git#1575aa267cc5cd69ac65cfbe09fc7c4212d18e3a"
 dependencies = [
  "bitflags 1.3.2",
  "log",
@@ -2621,13 +2628,14 @@ dependencies = [
  "smol_str",
  "thiserror",
  "web-time",
+ "window_clipboard",
  "xxhash-rust",
 ]
 
 [[package]]
 name = "iced_futures"
 version = "0.12.0"
-source = "git+https://github.com/pop-os/libcosmic.git#2b23005fbff5a3d7e218a867e1aadb491abeac55"
+source = "git+https://github.com/pop-os/libcosmic.git#1575aa267cc5cd69ac65cfbe09fc7c4212d18e3a"
 dependencies = [
  "futures",
  "iced_core",
@@ -2640,7 +2648,7 @@ dependencies = [
 [[package]]
 name = "iced_graphics"
 version = "0.12.0"
-source = "git+https://github.com/pop-os/libcosmic.git#2b23005fbff5a3d7e218a867e1aadb491abeac55"
+source = "git+https://github.com/pop-os/libcosmic.git#1575aa267cc5cd69ac65cfbe09fc7c4212d18e3a"
 dependencies = [
  "bitflags 1.3.2",
  "bytemuck",
@@ -2664,7 +2672,7 @@ dependencies = [
 [[package]]
 name = "iced_renderer"
 version = "0.12.0"
-source = "git+https://github.com/pop-os/libcosmic.git#2b23005fbff5a3d7e218a867e1aadb491abeac55"
+source = "git+https://github.com/pop-os/libcosmic.git#1575aa267cc5cd69ac65cfbe09fc7c4212d18e3a"
 dependencies = [
  "iced_graphics",
  "iced_tiny_skia",
@@ -2676,17 +2684,18 @@ dependencies = [
 [[package]]
 name = "iced_runtime"
 version = "0.12.0"
-source = "git+https://github.com/pop-os/libcosmic.git#2b23005fbff5a3d7e218a867e1aadb491abeac55"
+source = "git+https://github.com/pop-os/libcosmic.git#1575aa267cc5cd69ac65cfbe09fc7c4212d18e3a"
 dependencies = [
  "iced_core",
  "iced_futures",
  "thiserror",
+ "window_clipboard",
 ]
 
 [[package]]
 name = "iced_style"
 version = "0.12.0"
-source = "git+https://github.com/pop-os/libcosmic.git#2b23005fbff5a3d7e218a867e1aadb491abeac55"
+source = "git+https://github.com/pop-os/libcosmic.git#1575aa267cc5cd69ac65cfbe09fc7c4212d18e3a"
 dependencies = [
  "iced_core",
  "once_cell",
@@ -2696,7 +2705,7 @@ dependencies = [
 [[package]]
 name = "iced_tiny_skia"
 version = "0.12.0"
-source = "git+https://github.com/pop-os/libcosmic.git#2b23005fbff5a3d7e218a867e1aadb491abeac55"
+source = "git+https://github.com/pop-os/libcosmic.git#1575aa267cc5cd69ac65cfbe09fc7c4212d18e3a"
 dependencies = [
  "bytemuck",
  "cosmic-text",
@@ -2713,7 +2722,7 @@ dependencies = [
 [[package]]
 name = "iced_wgpu"
 version = "0.12.0"
-source = "git+https://github.com/pop-os/libcosmic.git#2b23005fbff5a3d7e218a867e1aadb491abeac55"
+source = "git+https://github.com/pop-os/libcosmic.git#1575aa267cc5cd69ac65cfbe09fc7c4212d18e3a"
 dependencies = [
  "bitflags 1.3.2",
  "bytemuck",
@@ -2732,7 +2741,7 @@ dependencies = [
 [[package]]
 name = "iced_widget"
 version = "0.12.0"
-source = "git+https://github.com/pop-os/libcosmic.git#2b23005fbff5a3d7e218a867e1aadb491abeac55"
+source = "git+https://github.com/pop-os/libcosmic.git#1575aa267cc5cd69ac65cfbe09fc7c4212d18e3a"
 dependencies = [
  "iced_renderer",
  "iced_runtime",
@@ -2746,7 +2755,7 @@ dependencies = [
 [[package]]
 name = "iced_winit"
 version = "0.12.0"
-source = "git+https://github.com/pop-os/libcosmic.git#2b23005fbff5a3d7e218a867e1aadb491abeac55"
+source = "git+https://github.com/pop-os/libcosmic.git#1575aa267cc5cd69ac65cfbe09fc7c4212d18e3a"
 dependencies = [
  "iced_graphics",
  "iced_runtime",
@@ -3062,10 +3071,11 @@ checksum = "9c198f91728a82281a64e1f4f9eeb25d82cb32a5de251c6bd1b5154d63a8e7bd"
 [[package]]
 name = "libcosmic"
 version = "0.1.0"
-source = "git+https://github.com/pop-os/libcosmic.git#2b23005fbff5a3d7e218a867e1aadb491abeac55"
+source = "git+https://github.com/pop-os/libcosmic.git#1575aa267cc5cd69ac65cfbe09fc7c4212d18e3a"
 dependencies = [
  "apply",
  "ashpd 0.7.0",
+ "chrono",
  "cosmic-config",
  "cosmic-theme",
  "css-color",
@@ -3084,7 +3094,7 @@ dependencies = [
  "iced_widget",
  "iced_winit",
  "lazy_static",
- "mime",
+ "mime 0.3.17",
  "nix 0.27.1",
  "palette",
  "rfd",
@@ -3157,7 +3167,7 @@ version = "0.0.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "85c833ca1e66078851dba29046874e38f08b2c883700aa29a03ddd3b23814ee8"
 dependencies = [
- "bitflags 2.4.2",
+ "bitflags 2.5.0",
  "libc",
  "redox_syscall 0.4.1",
 ]
@@ -3168,7 +3178,7 @@ version = "0.0.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "3af92c55d7d839293953fcd0fda5ecfe93297cfde6ffbdec13b41d99c0ba6607"
 dependencies = [
- "bitflags 2.4.2",
+ "bitflags 2.5.0",
  "libc",
  "redox_syscall 0.4.1",
 ]
@@ -3329,7 +3339,7 @@ version = "0.27.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "c43f73953f8cbe511f021b58f18c3ce1c3d1ae13fe953293e13345bf83217f25"
 dependencies = [
- "bitflags 2.4.2",
+ "bitflags 2.5.0",
  "block",
  "core-graphics-types",
  "foreign-types 0.5.0",
@@ -3340,6 +3350,14 @@ dependencies = [
 
 [[package]]
 name = "mime"
+version = "0.1.0"
+source = "git+https://github.com/pop-os/window_clipboard.git?tag=pop-mime-types#f65a6c303bbbd6c7bf88f9bc34421ec06d893bea"
+dependencies = [
+ "smithay-clipboard",
+]
+
+[[package]]
+name = "mime"
 version = "0.3.17"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "6877bb514081ee2a7ff5ef9de3281f14a4dd4bceac4c09388074a6b5df8a139a"
@@ -3385,7 +3403,7 @@ source = "git+https://github.com/gfx-rs/wgpu?rev=20fda69#20fda698341efbdc870b802
 dependencies = [
  "arrayvec",
  "bit-set",
- "bitflags 2.4.2",
+ "bitflags 2.5.0",
  "codespan-reporting",
  "hexf-parse",
  "indexmap",
@@ -3422,7 +3440,7 @@ version = "0.8.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "2076a31b7010b17a38c01907c45b945e8f11495ee4dd588309718901b1f7a5b7"
 dependencies = [
- "bitflags 2.4.2",
+ "bitflags 2.5.0",
  "jni-sys",
  "log",
  "ndk-sys",
@@ -3464,7 +3482,7 @@ version = "0.27.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "2eb04e9c688eff1c89d72b407f168cf79bb9e867a9d3323ed6c01519eb9cc053"
 dependencies = [
- "bitflags 2.4.2",
+ "bitflags 2.5.0",
  "cfg-if",
  "libc",
 ]
@@ -3485,7 +3503,7 @@ version = "6.1.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "6205bd8bb1e454ad2e27422015fb5e4f2bcc7e08fa8f27058670d208324a4d2d"
 dependencies = [
- "bitflags 2.4.2",
+ "bitflags 2.5.0",
  "crossbeam-channel",
  "filetime",
  "fsevent-sys",
@@ -3602,7 +3620,7 @@ dependencies = [
  "proc-macro-crate 2.0.2",
  "proc-macro2",
  "quote",
- "syn 2.0.52",
+ "syn 2.0.53",
 ]
 
 [[package]]
@@ -3703,7 +3721,7 @@ version = "0.10.64"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "95a0481286a310808298130d22dd1fef0fa571e05a8f44ec801801e84b216b1f"
 dependencies = [
- "bitflags 2.4.2",
+ "bitflags 2.5.0",
  "cfg-if",
  "foreign-types 0.3.2",
  "libc",
@@ -3720,7 +3738,7 @@ checksum = "a948666b637a0f465e8564c73e89d4dde00d72d4d473cc972f390fc3dcee7d9c"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.52",
+ "syn 2.0.53",
 ]
 
 [[package]]
@@ -3793,11 +3811,11 @@ version = "0.17.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "ec4c6225c69b4ca778c0aea097321a64c421cf4577b331c61b229267edabb6f8"
 dependencies = [
- "heck",
+ "heck 0.4.1",
  "proc-macro-error",
  "proc-macro2",
  "quote",
- "syn 2.0.52",
+ "syn 2.0.53",
 ]
 
 [[package]]
@@ -3848,7 +3866,7 @@ checksum = "e8890702dbec0bad9116041ae586f84805b13eecd1d8b1df27c29998a9969d6d"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.52",
+ "syn 2.0.53",
 ]
 
 [[package]]
@@ -3959,7 +3977,7 @@ dependencies = [
  "phf_shared",
  "proc-macro2",
  "quote",
- "syn 2.0.52",
+ "syn 2.0.53",
 ]
 
 [[package]]
@@ -4044,7 +4062,7 @@ dependencies = [
  "cfg-if",
  "concurrent-queue",
  "pin-project-lite",
- "rustix 0.38.31",
+ "rustix 0.38.32",
  "tracing",
  "windows-sys 0.52.0",
 ]
@@ -4107,9 +4125,9 @@ dependencies = [
 
 [[package]]
 name = "proc-macro2"
-version = "1.0.78"
+version = "1.0.79"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e2422ad645d89c99f8f3e6b88a9fdeca7fabeac836b1002371c4367c8f984aae"
+checksum = "e835ff2298f5721608eb1a980ecaee1aef2c132bf95ecc026a11b7bf3c01c02e"
 dependencies = [
  "unicode-ident",
 ]
@@ -4229,9 +4247,9 @@ checksum = "3b42e27ef78c35d3998403c1d26f3efd9e135d3e5121b0a4845cc5cc27547f4f"
 
 [[package]]
 name = "read-fonts"
-version = "0.15.6"
+version = "0.16.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "17ea23eedb4d938031b6d4343222444608727a6aa68ec355e13588d9947ffe92"
+checksum = "81c524658d3b77930a391f559756d91dbe829ab6cf4687083f615d395df99722"
 dependencies = [
  "font-types",
 ]
@@ -4311,9 +4329,9 @@ checksum = "19b30a45b0cd0bcca8037f3d0dc3421eaf95327a17cad11964fb8179b4fc4832"
 
 [[package]]
 name = "reqwest"
-version = "0.11.25"
+version = "0.11.27"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0eea5a9eb898d3783f17c6407670e3592fd174cb81a10e51d4c37f49450b9946"
+checksum = "dd67538700a17451e7cba03ac727fb961abb7607553461627b97de0b89cf4a62"
 dependencies = [
  "base64",
  "bytes",
@@ -4328,7 +4346,7 @@ dependencies = [
  "ipnet",
  "js-sys",
  "log",
- "mime",
+ "mime 0.3.17",
  "native-tls",
  "once_cell",
  "percent-encoding",
@@ -4412,7 +4430,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "b91f7eff05f748767f183df4320a63d6936e9c6107d97c9e6bdd9784f4289c94"
 dependencies = [
  "base64",
- "bitflags 2.4.2",
+ "bitflags 2.5.0",
  "serde",
  "serde_derive",
 ]
@@ -4443,7 +4461,7 @@ dependencies = [
  "proc-macro2",
  "quote",
  "rust-embed-utils",
- "syn 2.0.52",
+ "syn 2.0.53",
  "walkdir",
 ]
 
@@ -4495,11 +4513,11 @@ dependencies = [
 
 [[package]]
 name = "rustix"
-version = "0.38.31"
+version = "0.38.32"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6ea3e1a662af26cd7a3ba09c0297a31af215563ecf42817c98df621387f4e949"
+checksum = "65e04861e65f21776e67888bfbea442b3642beaa0138fdb1dd7a84a52dffdb89"
 dependencies = [
- "bitflags 2.4.2",
+ "bitflags 2.5.0",
  "errno",
  "libc",
  "linux-raw-sys 0.4.13",
@@ -4527,7 +4545,7 @@ version = "0.12.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "f0ae5692c5beaad6a9e22830deeed7874eae8a4e3ba4076fb48e12c56856222c"
 dependencies = [
- "bitflags 2.4.2",
+ "bitflags 2.5.0",
  "bytemuck",
  "libm",
  "smallvec",
@@ -4642,7 +4660,7 @@ checksum = "7eb0b34b42edc17f6b7cac84a52a1c5f0e1bb2227e997ca9011ea3dd34e8610b"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.52",
+ "syn 2.0.53",
 ]
 
 [[package]]
@@ -4664,7 +4682,7 @@ checksum = "0b2e6b945e9d3df726b65d6ee24060aff8e3533d431f677a9695db04eff9dfdb"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.52",
+ "syn 2.0.53",
 ]
 
 [[package]]
@@ -4690,9 +4708,9 @@ dependencies = [
 
 [[package]]
 name = "serde_yaml"
-version = "0.9.32"
+version = "0.9.33"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8fd075d994154d4a774f95b51fb96bdc2832b0ea48425c92546073816cda1f2f"
+checksum = "a0623d197252096520c6f2a5e1171ee436e5af99a5d7caa2891e55e61950e6d9"
 dependencies = [
  "indexmap",
  "itoa",
@@ -4785,9 +4803,9 @@ dependencies = [
 
 [[package]]
 name = "smallvec"
-version = "1.13.1"
+version = "1.13.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e6ecd384b10a64542d77071bd64bd7b231f4ed5940fba55e98c3de13824cf3d7"
+checksum = "3c5e1a9a646d36c3599cd173a41282daf47c44583ad367b8e6837255952e5c67"
 
 [[package]]
 name = "smithay-client-toolkit"
@@ -4795,14 +4813,14 @@ version = "0.18.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "922fd3eeab3bd820d76537ce8f582b1cf951eceb5475c28500c7457d9d17f53a"
 dependencies = [
- "bitflags 2.4.2",
+ "bitflags 2.5.0",
  "calloop",
  "calloop-wayland-source",
  "cursor-icon",
  "libc",
  "log",
  "memmap2",
- "rustix 0.38.31",
+ "rustix 0.38.32",
  "thiserror",
  "wayland-backend",
  "wayland-client",
@@ -4816,9 +4834,8 @@ dependencies = [
 
 [[package]]
 name = "smithay-clipboard"
-version = "0.7.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c091e7354ea8059d6ad99eace06dd13ddeedbb0ac72d40a9a6e7ff790525882d"
+version = "0.8.0"
+source = "git+https://github.com/pop-os/smithay-clipboard?tag=pop-mime-types#cc0101c1f9ccc937a413bd3af3c0f6217f27e935"
 dependencies = [
  "libc",
  "smithay-client-toolkit",
@@ -4873,7 +4890,7 @@ dependencies = [
  "objc",
  "raw-window-handle 0.6.0",
  "redox_syscall 0.4.1",
- "rustix 0.38.31",
+ "rustix 0.38.32",
  "tiny-xlib",
  "wasm-bindgen",
  "wayland-backend",
@@ -4899,7 +4916,7 @@ version = "0.3.0+sdk-1.3.268.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "eda41003dc44290527a59b13432d4a0379379fa074b70174882adfbdfd917844"
 dependencies = [
- "bitflags 2.4.2",
+ "bitflags 2.5.0",
 ]
 
 [[package]]
@@ -4935,7 +4952,7 @@ version = "0.24.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "1e385be0d24f186b4ce2f9982191e7101bb737312ad61c1f2f984f34bcf85d59"
 dependencies = [
- "heck",
+ "heck 0.4.1",
  "proc-macro2",
  "quote",
  "rustversion",
@@ -4960,9 +4977,9 @@ dependencies = [
 
 [[package]]
 name = "swash"
-version = "0.1.12"
+version = "0.1.13"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d06ff4664af8923625604261c645f5c4cc610cc83c84bec74b50d76237089de7"
+checksum = "9af636fb90d39858650cae1088a37e2862dab4e874a0bb49d6dfb5b2dacf0e24"
 dependencies = [
  "read-fonts",
  "yazi",
@@ -4982,9 +4999,9 @@ dependencies = [
 
 [[package]]
 name = "syn"
-version = "2.0.52"
+version = "2.0.53"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b699d15b36d1f02c3e7c69f8ffef53de37aefae075d8488d4ba1a7788d574a07"
+checksum = "7383cd0e49fff4b6b90ca5670bfd3e9d6a733b3f90c686605aa7eec8c4996032"
 dependencies = [
  "proc-macro2",
  "quote",
@@ -5008,20 +5025,20 @@ dependencies = [
 
 [[package]]
 name = "system-configuration"
-version = "0.6.0"
+version = "0.5.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "658bc6ee10a9b4fcf576e9b0819d95ec16f4d2c02d39fd83ac1c8789785c4a42"
+checksum = "ba3a3adc5c275d719af8cb4272ea1c4a6d668a777f37e115f6d11ddbc1c8e0e7"
 dependencies = [
- "bitflags 2.4.2",
+ "bitflags 1.3.2",
  "core-foundation",
  "system-configuration-sys",
 ]
 
 [[package]]
 name = "system-configuration-sys"
-version = "0.6.0"
+version = "0.5.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8e1d1b10ced5ca923a1fcb8d03e96b8d3268065d724548c0211415ff6ac6bac4"
+checksum = "a75fb188eb626b924683e3b95e3a48e63551fcfb51949de2f06a9d91dbee93c9"
 dependencies = [
  "core-foundation-sys",
  "libc",
@@ -5029,12 +5046,12 @@ dependencies = [
 
 [[package]]
 name = "system-deps"
-version = "6.2.0"
+version = "6.2.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2a2d580ff6a20c55dfb86be5f9c238f67835d0e81cbdea8bf5680e0897320331"
+checksum = "a3e535eb8dded36d55ec13eddacd30dec501792ff23a0b1682c38601b8cf2349"
 dependencies = [
  "cfg-expr",
- "heck",
+ "heck 0.5.0",
  "pkg-config",
  "toml 0.8.2",
  "version-compare",
@@ -5059,9 +5076,9 @@ checksum = "e1fc403891a21bcfb7c37834ba66a547a8f402146eba7265b5a6d88059c9ff2f"
 
 [[package]]
 name = "temp-dir"
-version = "0.1.12"
+version = "0.1.13"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "dd16aa9ffe15fe021c6ee3766772132c6e98dfa395a167e16864f61a9cfb71d6"
+checksum = "1f227968ec00f0e5322f9b8173c7a0cbcff6181a0a5b28e9892491c286277231"
 
 [[package]]
 name = "tempfile"
@@ -5071,7 +5088,7 @@ checksum = "85b77fafb263dd9d05cbeac119526425676db3784113aa9295c88498cbf8bff1"
 dependencies = [
  "cfg-if",
  "fastrand 2.0.1",
- "rustix 0.38.31",
+ "rustix 0.38.32",
  "windows-sys 0.52.0",
 ]
 
@@ -5086,22 +5103,22 @@ dependencies = [
 
 [[package]]
 name = "thiserror"
-version = "1.0.57"
+version = "1.0.58"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1e45bcbe8ed29775f228095caf2cd67af7a4ccf756ebff23a306bf3e8b47b24b"
+checksum = "03468839009160513471e86a034bb2c5c0e4baae3b43f79ffc55c4a5427b3297"
 dependencies = [
  "thiserror-impl",
 ]
 
 [[package]]
 name = "thiserror-impl"
-version = "1.0.57"
+version = "1.0.58"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a953cb265bef375dae3de6663da4d3804eee9682ea80d8e2542529b73c531c81"
+checksum = "c61f3ba182994efc43764a46c018c347bc492c79f024e705f46567b418f6d4f7"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.52",
+ "syn 2.0.53",
 ]
 
 [[package]]
@@ -5214,7 +5231,7 @@ checksum = "5b8a1e28f2deaa14e508979454cb3a223b10b938b45af148bc0986de36f1923b"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.52",
+ "syn 2.0.53",
 ]
 
 [[package]]
@@ -5320,7 +5337,7 @@ checksum = "34704c8d6ebcbc939824180af020566b01a7c01f80641264eba0999f6c2b6be7"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.52",
+ "syn 2.0.53",
 ]
 
 [[package]]
@@ -5466,9 +5483,9 @@ checksum = "f962df74c8c05a667b5ee8bcf162993134c104e96440b663c8daa176dc772d8c"
 
 [[package]]
 name = "unsafe-libyaml"
-version = "0.2.10"
+version = "0.2.11"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ab4c90930b95a82d00dc9e9ac071b4991924390d46cbd0dfe566148667605e4b"
+checksum = "673aac59facbab8a9007c7f6108d11f63b603f7cabff99fabf650fea5c32b861"
 
 [[package]]
 name = "url"
@@ -5551,9 +5568,9 @@ checksum = "accd4ea62f7bb7a82fe23066fb0957d48ef677f6eeb8215f372f52e48bb32426"
 
 [[package]]
 name = "version-compare"
-version = "0.1.1"
+version = "0.2.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "579a42fc0b8e0c63b76519a339be31bed574929511fa53c1a3acae26eb258f29"
+checksum = "852e951cb7832cb45cb1169900d19760cfa39b82bc0ea9c0e5a14ae88411c98b"
 
 [[package]]
 name = "version_check"
@@ -5613,7 +5630,7 @@ dependencies = [
  "once_cell",
  "proc-macro2",
  "quote",
- "syn 2.0.52",
+ "syn 2.0.53",
  "wasm-bindgen-shared",
 ]
 
@@ -5647,7 +5664,7 @@ checksum = "e94f17b526d0a461a191c78ea52bbce64071ed5c04c9ffe424dcb38f74171bb7"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.52",
+ "syn 2.0.53",
  "wasm-bindgen-backend",
  "wasm-bindgen-shared",
 ]
@@ -5681,7 +5698,7 @@ checksum = "9d50fa61ce90d76474c87f5fc002828d81b32677340112b4ef08079a9d459a40"
 dependencies = [
  "cc",
  "downcast-rs",
- "rustix 0.38.31",
+ "rustix 0.38.32",
  "scoped-tls",
  "smallvec",
  "wayland-sys",
@@ -5693,8 +5710,8 @@ version = "0.31.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "82fb96ee935c2cea6668ccb470fb7771f6215d1691746c2d896b447a00ad3f1f"
 dependencies = [
- "bitflags 2.4.2",
- "rustix 0.38.31",
+ "bitflags 2.5.0",
+ "rustix 0.38.32",
  "wayland-backend",
  "wayland-scanner",
 ]
@@ -5705,7 +5722,7 @@ version = "0.3.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "625c5029dbd43d25e6aa9615e88b829a5cad13b2819c4ae129fdbb7c31ab4c7e"
 dependencies = [
- "bitflags 2.4.2",
+ "bitflags 2.5.0",
  "cursor-icon",
  "wayland-backend",
 ]
@@ -5716,7 +5733,7 @@ version = "0.31.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "71ce5fa868dd13d11a0d04c5e2e65726d0897be8de247c0c5a65886e283231ba"
 dependencies = [
- "rustix 0.38.31",
+ "rustix 0.38.32",
  "wayland-client",
  "xcursor",
 ]
@@ -5727,7 +5744,7 @@ version = "0.31.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "8f81f365b8b4a97f422ac0e8737c438024b5951734506b0e1d775c73030561f4"
 dependencies = [
- "bitflags 2.4.2",
+ "bitflags 2.5.0",
  "wayland-backend",
  "wayland-client",
  "wayland-scanner",
@@ -5739,7 +5756,7 @@ version = "0.2.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "23803551115ff9ea9bce586860c5c5a971e360825a0309264102a9495a5ff479"
 dependencies = [
- "bitflags 2.4.2",
+ "bitflags 2.5.0",
  "wayland-backend",
  "wayland-client",
  "wayland-protocols",
@@ -5752,7 +5769,7 @@ version = "0.2.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "ad1f61b76b6c2d8742e10f9ba5c3737f6530b4c243132c2a2ccc8aa96fe25cd6"
 dependencies = [
- "bitflags 2.4.2",
+ "bitflags 2.5.0",
  "wayland-backend",
  "wayland-client",
  "wayland-protocols",
@@ -5839,7 +5856,7 @@ source = "git+https://github.com/gfx-rs/wgpu?rev=20fda69#20fda698341efbdc870b802
 dependencies = [
  "arrayvec",
  "bit-vec",
- "bitflags 2.4.2",
+ "bitflags 2.5.0",
  "cfg_aliases 0.1.1",
  "codespan-reporting",
  "indexmap",
@@ -5866,7 +5883,7 @@ dependencies = [
  "arrayvec",
  "ash",
  "bit-set",
- "bitflags 2.4.2",
+ "bitflags 2.5.0",
  "block",
  "cfg_aliases 0.1.1",
  "core-graphics-types",
@@ -5905,7 +5922,7 @@ name = "wgpu-types"
 version = "0.19.0"
 source = "git+https://github.com/gfx-rs/wgpu?rev=20fda69#20fda698341efbdc870b8027d6d49f5bf3f36109"
 dependencies = [
- "bitflags 2.4.2",
+ "bitflags 2.5.0",
  "js-sys",
  "web-sys",
 ]
@@ -5950,13 +5967,13 @@ checksum = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f"
 [[package]]
 name = "window_clipboard"
 version = "0.4.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f6d692d46038c433f9daee7ad8757e002a4248c20b0a3fbc991d99521d3bcb6d"
+source = "git+https://github.com/pop-os/window_clipboard.git?tag=pop-mime-types#f65a6c303bbbd6c7bf88f9bc34421ec06d893bea"
 dependencies = [
  "clipboard-win",
  "clipboard_macos",
  "clipboard_wayland",
  "clipboard_x11",
+ "mime 0.1.0",
  "raw-window-handle 0.6.0",
  "thiserror",
 ]
@@ -6219,7 +6236,7 @@ dependencies = [
  "ahash",
  "android-activity",
  "atomic-waker",
- "bitflags 2.4.2",
+ "bitflags 2.5.0",
  "bytemuck",
  "calloop",
  "cfg_aliases 0.1.1",
@@ -6239,7 +6256,7 @@ dependencies = [
  "percent-encoding",
  "raw-window-handle 0.6.0",
  "redox_syscall 0.3.5",
- "rustix 0.38.31",
+ "rustix 0.38.32",
  "sctk-adwaita",
  "smithay-client-toolkit",
  "smol_str",
@@ -6299,7 +6316,7 @@ dependencies = [
  "libc",
  "libloading 0.8.3",
  "once_cell",
- "rustix 0.38.31",
+ "rustix 0.38.32",
  "x11rb-protocol",
 ]
 
@@ -6337,7 +6354,7 @@ version = "0.4.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "d039de8032a9a8856a6be89cea3e5d12fdd82306ab7c94d74e6deab2460651c5"
 dependencies = [
- "bitflags 2.4.2",
+ "bitflags 2.5.0",
  "dlib",
  "log",
  "once_cell",
@@ -6473,7 +6490,7 @@ checksum = "9ce1b18ccd8e73a9321186f97e46f9f04b778851177567b1975109d26a08d2a6"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.52",
+ "syn 2.0.53",
 ]
 
 [[package]]
diff --git a/pkgs/by-name/co/cosmic-store/package.nix b/pkgs/by-name/co/cosmic-store/package.nix
index 3fcb76c17808..1a89a00a2301 100644
--- a/pkgs/by-name/co/cosmic-store/package.nix
+++ b/pkgs/by-name/co/cosmic-store/package.nix
@@ -5,12 +5,12 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "cosmic-store";
-  version = "unstable-2024-03-13";
+  version = "unstable-2024-04-14";
   src = fetchFromGitHub {
     owner = "pop-os";
     repo = pname;
-    rev = "df014ea82ae0465470f5d237bfe71d2c085d29a0";
-    hash = "sha256-1Sp6/qVONK+O5FLEcsu45eEBNaVbJLptt+ByXOZYwpo=";
+    rev = "b1bbeaa6e6bdc85c84d329ae01b69d72716411fc";
+    hash = "sha256-KHYcQnaRFoYzl/00mFkS6MJS7Th0T0fQhxYUErjzGCo=";
     fetchSubmodules = true;
   };
 
@@ -20,10 +20,12 @@ rustPlatform.buildRustPackage rec {
       "accesskit-0.12.2" = "sha256-ksaYMGT/oug7isQY8/1WD97XDUsX2ShBdabUzxWffYw=";
       "appstream-0.2.2" = "sha256-Qb/zzZJ2sM97nGVtp8amecTlwuaDrx1cacDcZOwhUm8=";
       "atomicwrites-0.4.2" = "sha256-QZSuGPrJXh+svMeFWqAXoqZQxLq/WfIiamqvjJNVhxA=";
-      "cosmic-config-0.1.0" = "sha256-J6c2pRCpyfCFMmzwJ4RdEghSaFDshDtZL6DteAiaq1o=";
-      "cosmic-text-0.11.2" = "sha256-6mvGyMCFC/tSIiDgDX+zuDUi15S9dXI6Dc6pj36hIJM=";
+      "clipboard_macos-0.1.0" = "sha256-PEH+aCpjDCEIj8s39nIeWxb7qu3u9IfriGqf0pYObMk=";
+      "cosmic-config-0.1.0" = "sha256-Ps2QIzlwgW8ENB+uD6cOjCkjlZvmWspazsXNxDFCu7g=";
+      "cosmic-text-0.11.2" = "sha256-K9cZeClr1zz4LanJS0WPEpxAplQrXfCjFKrSn5n4rDA=";
       "d3d12-0.19.0" = "sha256-usrxQXWLGJDjmIdw1LBXtBvX+CchZDvE8fHC0LjvhD4=";
       "glyphon-0.5.0" = "sha256-j1HrbEpUBqazWqNfJhpyjWuxYAxkvbXzRKeSouUoPWg=";
+      "smithay-clipboard-0.8.0" = "sha256-OZOGbdzkgRIeDFrAENXE7g62eQTs60Je6lYVr0WudlE=";
       "softbuffer-0.4.1" = "sha256-a0bUFz6O8CWRweNt/OxTvflnPYwO5nm6vsyc/WcXyNg=";
       "taffy-0.3.11" = "sha256-SCx9GEIJjWdoNVyq+RZAGn0N71qraKZxf9ZWhvyzLaI=";
       "winit-0.29.10" = "sha256-ScTII2AzK3SC8MVeASZ9jhVWsEaGrSQ2BnApTxgfxK4=";
diff --git a/pkgs/by-name/co/cosmic-tasks/package.nix b/pkgs/by-name/co/cosmic-tasks/package.nix
index a6dd72fbea08..6116b37844c1 100644
--- a/pkgs/by-name/co/cosmic-tasks/package.nix
+++ b/pkgs/by-name/co/cosmic-tasks/package.nix
@@ -2,7 +2,7 @@
 , rustPlatform
 , fetchFromGitHub
 , pkg-config
-, wrapGAppsHook
+, wrapGAppsHook3
 , atk
 , cairo
 , gdk-pixbuf
@@ -57,7 +57,7 @@ in rustPlatform.buildRustPackage rec {
 
   nativeBuildInputs = [
     pkg-config
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
diff --git a/pkgs/by-name/cp/cpu-x/package.nix b/pkgs/by-name/cp/cpu-x/package.nix
index d8db8212ba76..bb1b7cf10f03 100644
--- a/pkgs/by-name/cp/cpu-x/package.nix
+++ b/pkgs/by-name/cp/cpu-x/package.nix
@@ -1,5 +1,5 @@
 { lib, stdenv, fetchFromGitHub, cmake, pkg-config, gtk3, ncurses
-, libcpuid, pciutils, procps, wrapGAppsHook, nasm, makeWrapper
+, libcpuid, pciutils, procps, wrapGAppsHook3, nasm, makeWrapper
 , opencl-headers, ocl-icd
 , vulkan-headers, vulkan-loader, glfw
 , libXdmcp, pcre, util-linux
@@ -16,16 +16,16 @@
 
 stdenv.mkDerivation rec {
   pname = "cpu-x";
-  version = "5.0.3";
+  version = "5.0.4";
 
   src = fetchFromGitHub {
     owner = "X0rg";
     repo = "CPU-X";
     rev = "v${version}";
-    sha256 = "sha256-iaqqBeoack41D07Bbr0Fo1JXfF2ksXbqS5V5Ymt6Qvg=";
+    sha256 = "sha256-8jJP0gxH3B6qLrhKNa4P9ZfSjxaXTeBB1+UuadflLQo=";
   };
 
-  nativeBuildInputs = [ cmake pkg-config wrapGAppsHook nasm makeWrapper ];
+  nativeBuildInputs = [ cmake pkg-config wrapGAppsHook3 nasm makeWrapper ];
   buildInputs = [
     gtk3 ncurses libcpuid pciutils procps
     vulkan-headers vulkan-loader glfw
diff --git a/pkgs/by-name/cr/criterion/package.nix b/pkgs/by-name/cr/criterion/package.nix
new file mode 100644
index 000000000000..efa1459dc72d
--- /dev/null
+++ b/pkgs/by-name/cr/criterion/package.nix
@@ -0,0 +1,117 @@
+{
+  lib,
+  stdenv,
+  fetchFromGitHub,
+  boxfort,
+  meson,
+  libcsptr,
+  pkg-config,
+  gettext,
+  cmake,
+  ninja,
+  protobuf,
+  libffi,
+  libgit2,
+  dyncall,
+  nanomsg,
+  nanopbMalloc,
+  python3Packages,
+  testers,
+  criterion,
+  callPackage
+}:
+
+let
+  # follow revisions defined in .wrap files
+  debugbreak = fetchFromGitHub {
+    owner = "MrAnno";
+    repo = "debugbreak";
+    rev = "83bf7e933311b88613cbaadeced9c2e2c811054a";
+    hash = "sha256-OPrPGBUZN73Nl5NMEf/nME843yTolt913yjut3rAos0=";
+  };
+
+  klib = fetchFromGitHub {
+    owner = "attractivechaos";
+    repo = "klib";
+    rev = "cdb7e9236dc47abf8da7ebd702cc6f7f21f0c502";
+    hash = "sha256-+GaI5nXz4jYI0rO17xDhNtFpLlGL2WzeSVLMfB6Cl6E=";
+  };
+in
+stdenv.mkDerivation rec {
+  pname = "criterion";
+  version = "2.4.2";
+
+  src = fetchFromGitHub {
+    owner = "Snaipe";
+    repo = "Criterion";
+    rev = "v${version}";
+    fetchSubmodules = true;
+    hash = "sha256-5GH7AYjrnBnqiSmp28BoaM1Xmy8sPs1atfqJkGy3Yf0=";
+  };
+
+  nativeBuildInputs = [
+    meson
+    ninja
+    cmake
+    pkg-config
+    protobuf
+  ];
+
+  buildInputs = [
+    (lib.getDev boxfort)
+    dyncall
+    gettext
+    libcsptr
+    nanomsg
+    nanopbMalloc
+    libgit2
+    libffi
+  ];
+
+  nativeCheckInputs = with python3Packages; [ cram ];
+
+  doCheck = true;
+
+  prePatch = ''
+    cp -r ${debugbreak} subprojects/debugbreak
+    cp -r ${klib} subprojects/klib
+
+    for dep in "debugbreak" "klib"; do
+      local meson="$dep/meson.build"
+
+      chmod +w subprojects/$dep
+      cp subprojects/packagefiles/$meson subprojects/$meson
+    done
+  '';
+
+  postPatch = ''
+    patchShebangs ci/isdir.py src/protocol/gen-pb.py
+  '';
+
+  outputs = [
+    "out"
+    "dev"
+  ];
+
+  passthru.tests.version =
+    let
+      tester = callPackage ./tests/001-version.nix {};
+    in
+    testers.testVersion {
+      package = criterion;
+      command = "${lib.getExe tester} --version";
+      version = "v${version}";
+    };
+
+  meta = {
+    description = "A cross-platform C and C++ unit testing framework for the 21th century";
+    homepage = "https://github.com/Snaipe/Criterion";
+    license = lib.licenses.mit;
+    maintainers = with lib.maintainers; [
+      thesola10
+      Yumasi
+      sigmanificient
+    ];
+    platforms = lib.platforms.unix;
+  };
+}
diff --git a/pkgs/by-name/cr/criterion/tests/001-version.nix b/pkgs/by-name/cr/criterion/tests/001-version.nix
new file mode 100644
index 000000000000..25a98b5a0c30
--- /dev/null
+++ b/pkgs/by-name/cr/criterion/tests/001-version.nix
@@ -0,0 +1,25 @@
+{
+  stdenv,
+  pkg-config,
+  criterion,
+}:
+stdenv.mkDerivation rec {
+  name = "version-tester";
+  version = "v${criterion.version}";
+  src = ./test_dummy.c;
+
+  dontUnpack = true;
+  buildInputs = [ criterion ];
+  nativeBuildInputs = [ pkg-config ];
+
+  buildPhase = ''
+    cc -o ${name} $src `pkg-config --libs criterion`
+  '';
+
+  installPhase = ''
+    mkdir -p $out/bin
+    cp ${name} $out/bin/${name}
+  '';
+
+  meta.mainProgram = name;
+}
diff --git a/pkgs/by-name/cr/criterion/tests/test_dummy.c b/pkgs/by-name/cr/criterion/tests/test_dummy.c
new file mode 100644
index 000000000000..6ae1ef73ba45
--- /dev/null
+++ b/pkgs/by-name/cr/criterion/tests/test_dummy.c
@@ -0,0 +1,7 @@
+#include <stdbool.h>
+#include <criterion/criterion.h>
+
+Test(test_dummy, always_succeed)
+{
+    cr_assert(true);
+}
diff --git a/pkgs/by-name/cr/crunchy-cli/Cargo.lock b/pkgs/by-name/cr/crunchy-cli/Cargo.lock
index 61832fee845b..44a47cd532de 100644
--- a/pkgs/by-name/cr/crunchy-cli/Cargo.lock
+++ b/pkgs/by-name/cr/crunchy-cli/Cargo.lock
@@ -43,47 +43,48 @@ dependencies = [
 
 [[package]]
 name = "anstream"
-version = "0.6.13"
+version = "0.6.14"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d96bd03f33fe50a863e394ee9718a706f988b9079b20c3784fb726e7678b62fb"
+checksum = "418c75fa768af9c03be99d17643f93f79bbba589895012a80e3452a19ddda15b"
 dependencies = [
  "anstyle",
  "anstyle-parse",
  "anstyle-query",
  "anstyle-wincon",
  "colorchoice",
+ "is_terminal_polyfill",
  "utf8parse",
 ]
 
 [[package]]
 name = "anstyle"
-version = "1.0.6"
+version = "1.0.7"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8901269c6307e8d93993578286ac0edf7f195079ffff5ebdeea6a59ffb7e36bc"
+checksum = "038dfcf04a5feb68e9c60b21c9625a54c2c0616e79b72b0fd87075a056ae1d1b"
 
 [[package]]
 name = "anstyle-parse"
-version = "0.2.3"
+version = "0.2.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c75ac65da39e5fe5ab759307499ddad880d724eed2f6ce5b5e8a26f4f387928c"
+checksum = "c03a11a9034d92058ceb6ee011ce58af4a9bf61491aa7e1e59ecd24bd40d22d4"
 dependencies = [
  "utf8parse",
 ]
 
 [[package]]
 name = "anstyle-query"
-version = "1.0.2"
+version = "1.0.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e28923312444cdd728e4738b3f9c9cac739500909bb3d3c94b43551b16517648"
+checksum = "a64c907d4e79225ac72e2a354c9ce84d50ebb4586dee56c82b3ee73004f537f5"
 dependencies = [
  "windows-sys 0.52.0",
 ]
 
 [[package]]
 name = "anstyle-wincon"
-version = "3.0.2"
+version = "3.0.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1cd54b81ec8d6180e24654d0b371ad22fc3dd083b6ff8ba325b72e00c87660a7"
+checksum = "61a38449feb7068f52bb06c12759005cf459ee52bb4adc1d5a7c4322d716fb19"
 dependencies = [
  "anstyle",
  "windows-sys 0.52.0",
@@ -91,9 +92,9 @@ dependencies = [
 
 [[package]]
 name = "anyhow"
-version = "1.0.82"
+version = "1.0.83"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f538837af36e6f6a9be0faa67f9a314f8119e4e4b5867c6ab40ed60360142519"
+checksum = "25bdb32cbbdce2b519a9cd7df3a678443100e265d5e25ca763b7572a5104f5f3"
 
 [[package]]
 name = "async-speed-limit"
@@ -120,9 +121,9 @@ dependencies = [
 
 [[package]]
 name = "autocfg"
-version = "1.2.0"
+version = "1.3.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f1fdabc7756949593fe60f30ec81974b613357de856987752631dea1e3394c80"
+checksum = "0c4b4d0bd25bd0b74681c0ad21497610ce1b7c91b1022cd21c80c6fbdd9476b0"
 
 [[package]]
 name = "backtrace"
@@ -147,9 +148,9 @@ checksum = "9d297deb1925b89f2ccc13d7635fa0714f12c87adce1c75356b39ca9b7178567"
 
 [[package]]
 name = "base64"
-version = "0.22.0"
+version = "0.22.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9475866fec1451be56a3c2400fd081ff546538961565ccb5b7142cbd22bc7a51"
+checksum = "72b3254f16251a8381aa12e40e3c4d2f0199f8c6508fbecb9d91f575e0fbb8c6"
 
 [[package]]
 name = "base64-serde"
@@ -180,18 +181,6 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "79296716171880943b8470b5f8d03aa55eb2e645a4874bdbb28adb49162e012c"
 
 [[package]]
-name = "bytemuck"
-version = "1.15.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5d6d68c57235a3a081186990eca2867354726650f42f7516ca50c28d6281fd15"
-
-[[package]]
-name = "byteorder"
-version = "1.5.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1fd0f2584146f6f2ef48085050886acf353beff7305ebd1ae69500e27c67f64b"
-
-[[package]]
 name = "bytes"
 version = "1.6.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -199,9 +188,9 @@ checksum = "514de17de45fdb8dc022b1a7975556c53c86f9f0aa5f534b98977b171857c2c9"
 
 [[package]]
 name = "cc"
-version = "1.0.95"
+version = "1.0.97"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d32a725bc159af97c3e629873bb9f88fb8cf8a4867175f76dc987815ea07c83b"
+checksum = "099a5357d84c4c61eb35fc8eafa9a79a902c2f76911e5747ced4e032edd8d9b4"
 
 [[package]]
 name = "cfg-if"
@@ -291,9 +280,9 @@ dependencies = [
 
 [[package]]
 name = "colorchoice"
-version = "1.0.0"
+version = "1.0.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "acbf1af155f9b9ef647e42cdc158db4b64a1b61f743629225fde6f3e0be2a7c7"
+checksum = "0b6a852b24ab71dffc585bcb46eaf7959d175cb865a7152e35b348d1b2960422"
 
 [[package]]
 name = "console"
@@ -354,7 +343,7 @@ checksum = "06ea2b9bc92be3c2baa9334a323ebca2d6f074ff852cd1d7b11064035cd3868f"
 
 [[package]]
 name = "crunchy-cli"
-version = "3.5.2"
+version = "3.6.1"
 dependencies = [
  "chrono",
  "clap",
@@ -367,7 +356,7 @@ dependencies = [
 
 [[package]]
 name = "crunchy-cli-core"
-version = "3.5.2"
+version = "3.6.1"
 dependencies = [
  "anyhow",
  "async-speed-limit",
@@ -381,8 +370,6 @@ dependencies = [
  "fs2",
  "futures-util",
  "http",
- "image",
- "image_hasher",
  "indicatif",
  "lazy_static",
  "log",
@@ -390,7 +377,9 @@ dependencies = [
  "num_cpus",
  "regex",
  "reqwest",
+ "rsubs-lib",
  "rustls-native-certs",
+ "rusty-chromaprint",
  "serde",
  "serde_json",
  "serde_plain",
@@ -404,9 +393,9 @@ dependencies = [
 
 [[package]]
 name = "crunchyroll-rs"
-version = "0.11.0"
+version = "0.11.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e63a541bdcf0170a29eab4015943e8a6a09281334b4beacd70ac5cfc1c19496b"
+checksum = "58580acc9c0abf96a231ec8b1a4597ea55d9426ea17f684ce3582e2b26437bbb"
 dependencies = [
  "async-trait",
  "chrono",
@@ -430,9 +419,9 @@ dependencies = [
 
 [[package]]
 name = "crunchyroll-rs-internal"
-version = "0.11.0"
+version = "0.11.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3a9e0e09162451565645fdd4dadc6b38e09f3aafcfb477153584bedd8d62a358"
+checksum = "ce3c844dec8a3390f8c9853b5cf1d65c3d38fd0657b8b5d0e008db8945dea326"
 dependencies = [
  "darling",
  "quote",
@@ -490,7 +479,7 @@ version = "0.16.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "79b4bdd5f1c0c7493d780c645f0bff5b9361e6408210fa88910adb181efca64c"
 dependencies = [
- "base64 0.22.0",
+ "base64 0.22.1",
  "base64-serde",
  "chrono",
  "fs-err",
@@ -601,9 +590,9 @@ dependencies = [
 
 [[package]]
 name = "fastrand"
-version = "2.0.2"
+version = "2.1.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "658bd65b1cf4c852a3cc96f18a8ce7b5640f6b703f905c7d74532294c2a63984"
+checksum = "9fc0510504f03c51ada170672ac806f1f105a88aa97a5281117e1ddc3368e51a"
 
 [[package]]
 name = "fnv"
@@ -723,9 +712,9 @@ dependencies = [
 
 [[package]]
 name = "getrandom"
-version = "0.2.14"
+version = "0.2.15"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "94b22e06ecb0110981051723910cbf0b5f5e09a2062dd7663334ee79a9d1286c"
+checksum = "c4567c8db10ae91089c99af84c68c38da3ec2f087c3f82960bcdbf3656b6f4d7"
 dependencies = [
  "cfg-if",
  "js-sys",
@@ -767,9 +756,9 @@ checksum = "8a9ee70c43aaf417c914396645a0fa852624801b24ebb7ae78fe8272889ac888"
 
 [[package]]
 name = "hashbrown"
-version = "0.14.3"
+version = "0.14.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "290f1a1d9242c78d09ce40a5e87e7554ee637af1351968159f4952f028f75604"
+checksum = "e5274423e17b7c9fc20b6e7e208532f9b19825d82dfd615708b70edd83df41f1"
 
 [[package]]
 name = "heck"
@@ -952,32 +941,6 @@ dependencies = [
 ]
 
 [[package]]
-name = "image"
-version = "0.25.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "fd54d660e773627692c524beaad361aca785a4f9f5730ce91f42aabe5bce3d11"
-dependencies = [
- "bytemuck",
- "byteorder",
- "num-traits",
- "zune-core",
- "zune-jpeg",
-]
-
-[[package]]
-name = "image_hasher"
-version = "2.0.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9481465fe767d92494987319b0b447a5829edf57f09c52bf8639396abaaeaf78"
-dependencies = [
- "base64 0.22.0",
- "image",
- "rustdct",
- "serde",
- "transpose",
-]
-
-[[package]]
 name = "indexmap"
 version = "1.9.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -995,7 +958,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "168fb715dda47215e360912c096649d23d58bf392ac62f73919e831745e40f26"
 dependencies = [
  "equivalent",
- "hashbrown 0.14.3",
+ "hashbrown 0.14.5",
  "serde",
 ]
 
@@ -1028,6 +991,12 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "8f518f335dce6725a761382244631d86cf0ccb2863413590b31338feb467f9c3"
 
 [[package]]
+name = "is_terminal_polyfill"
+version = "1.70.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "f8478577c03552c21db0e2724ffb8986a5ce7af88107e6be5d2ee6e158c12800"
+
+[[package]]
 name = "iso8601"
 version = "0.6.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -1072,9 +1041,9 @@ checksum = "e2abad23fbc42b3700f2f279844dc832adb2b2eb069b2df918f455c4e18cc646"
 
 [[package]]
 name = "libc"
-version = "0.2.153"
+version = "0.2.154"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9c198f91728a82281a64e1f4f9eeb25d82cb32a5de251c6bd1b5154d63a8e7bd"
+checksum = "ae743338b92ff9146ce83992f766a31066a91a8c84a45e0e9f21e7cf6de6d346"
 
 [[package]]
 name = "libredox"
@@ -1210,9 +1179,9 @@ dependencies = [
 
 [[package]]
 name = "num-traits"
-version = "0.2.18"
+version = "0.2.19"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "da0df0e5185db44f69b44f26786fe401b6c293d1907744beaa7fa62b2e5a517a"
+checksum = "071dfc062690e90b734c0b2273ce72ad0ffa95f0c74596bc250dcfd960262841"
 dependencies = [
  "autocfg",
 ]
@@ -1418,6 +1387,15 @@ dependencies = [
 ]
 
 [[package]]
+name = "realfft"
+version = "3.3.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "953d9f7e5cdd80963547b456251296efc2626ed4e3cbf36c869d9564e0220571"
+dependencies = [
+ "rustfft",
+]
+
+[[package]]
 name = "redox_users"
 version = "0.4.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -1463,7 +1441,7 @@ version = "0.12.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "566cafdd92868e0939d3fb961bd0dc25fcfaaed179291093b3d43e6b3150ea10"
 dependencies = [
- "base64 0.22.0",
+ "base64 0.22.1",
  "bytes",
  "cookie",
  "cookie_store",
@@ -1532,21 +1510,34 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "b833d8d034ea094b1ea68aa6d5c740e0d04bad9d16568d08ba6f76823a114316"
 
 [[package]]
-name = "rustc-demangle"
-version = "0.1.23"
+name = "rsubs-lib"
+version = "0.2.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d626bb9dae77e28219937af045c257c28bfd3f69333c512553507f5f9798cb76"
+checksum = "9dcca2a9560fca05de8f95bc3767e46673d4b4c1f2c7a11092e10efd95bbdf62"
+dependencies = [
+ "regex",
+ "serde",
+]
 
 [[package]]
-name = "rustdct"
-version = "0.7.1"
+name = "rubato"
+version = "0.14.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8b61555105d6a9bf98797c063c362a1d24ed8ab0431655e38f1cf51e52089551"
+checksum = "e6dd52e80cfc21894deadf554a5673002938ae4625f7a283e536f9cf7c17b0d5"
 dependencies = [
- "rustfft",
+ "num-complex",
+ "num-integer",
+ "num-traits",
+ "realfft",
 ]
 
 [[package]]
+name = "rustc-demangle"
+version = "0.1.23"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "d626bb9dae77e28219937af045c257c28bfd3f69333c512553507f5f9798cb76"
+
+[[package]]
 name = "rustfft"
 version = "6.2.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -1607,7 +1598,7 @@ version = "2.1.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "29993a25686778eb88d4189742cd713c9bce943bc54251a33509dc63cbacf73d"
 dependencies = [
- "base64 0.22.0",
+ "base64 0.22.1",
  "rustls-pki-types",
 ]
 
@@ -1629,6 +1620,16 @@ dependencies = [
 ]
 
 [[package]]
+name = "rusty-chromaprint"
+version = "0.2.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "1755646867c36ecb391776deaa0b557a76d3badf20c142de7282630c34b20440"
+dependencies = [
+ "rubato",
+ "rustfft",
+]
+
+[[package]]
 name = "ryu"
 version = "1.0.17"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -1645,11 +1646,11 @@ dependencies = [
 
 [[package]]
 name = "security-framework"
-version = "2.10.0"
+version = "2.11.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "770452e37cad93e0a50d5abc3990d2bc351c36d0328f86cefec2f2fb206eaef6"
+checksum = "c627723fd09706bacdb5cf41499e95098555af3c3c29d014dc3c458ef6be11c0"
 dependencies = [
- "bitflags 1.3.2",
+ "bitflags 2.5.0",
  "core-foundation",
  "core-foundation-sys",
  "libc",
@@ -1658,9 +1659,9 @@ dependencies = [
 
 [[package]]
 name = "security-framework-sys"
-version = "2.10.0"
+version = "2.11.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "41f3cc463c0ef97e11c3461a9d3787412d30e8e7eb907c79180c4a57bf7c04ef"
+checksum = "317936bbbd05227752583946b9e66d7ce3b489f84e11a94a510b4437fef407d7"
 dependencies = [
  "core-foundation-sys",
  "libc",
@@ -1668,18 +1669,18 @@ dependencies = [
 
 [[package]]
 name = "serde"
-version = "1.0.198"
+version = "1.0.200"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9846a40c979031340571da2545a4e5b7c4163bdae79b301d5f86d03979451fcc"
+checksum = "ddc6f9cc94d67c0e21aaf7eda3a010fd3af78ebf6e096aa6e2e13c79749cce4f"
 dependencies = [
  "serde_derive",
 ]
 
 [[package]]
 name = "serde_derive"
-version = "1.0.198"
+version = "1.0.200"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e88edab869b01783ba905e7d0153f9fc1a6505a96e4ad3018011eedb838566d9"
+checksum = "856f046b9400cee3c8c94ed572ecdb752444c24528c035cd35882aad6f492bcb"
 dependencies = [
  "proc-macro2",
  "quote",
@@ -1730,11 +1731,11 @@ dependencies = [
 
 [[package]]
 name = "serde_with"
-version = "3.8.0"
+version = "3.8.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2c85f8e96d1d6857f13768fcbd895fcb06225510022a2774ed8b5150581847b0"
+checksum = "0ad483d2ab0149d5a5ebcd9972a3852711e0153d863bf5a5d0391d28883c4a20"
 dependencies = [
- "base64 0.22.0",
+ "base64 0.22.1",
  "chrono",
  "hex",
  "indexmap 1.9.3",
@@ -1748,9 +1749,9 @@ dependencies = [
 
 [[package]]
 name = "serde_with_macros"
-version = "3.8.0"
+version = "3.8.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c8b3a576c4eb2924262d5951a3b737ccaf16c931e39a2810c36f9a7e25575557"
+checksum = "65569b702f41443e8bc8bbb1c5779bd0450bbe723b56198980e80ec45780bce2"
 dependencies = [
  "darling",
  "proc-macro2",
@@ -1798,9 +1799,9 @@ dependencies = [
 
 [[package]]
 name = "socket2"
-version = "0.5.6"
+version = "0.5.7"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "05ffd9c0a93b7543e062e759284fcf5f5e3b098501104bfbdde4d404db792871"
+checksum = "ce305eb0b4296696835b71df73eb912e0f1ffd2556a501fcede6e0c50349191c"
 dependencies = [
  "libc",
  "windows-sys 0.52.0",
@@ -2024,16 +2025,15 @@ dependencies = [
 
 [[package]]
 name = "tokio-util"
-version = "0.7.10"
+version = "0.7.11"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5419f34732d9eb6ee4c3578b7989078579b7f039cbbb9ca2c4da015749371e15"
+checksum = "9cf6b47b3771c49ac75ad09a6162f53ad4b8088b76ac60e8ec1455b31a189fe1"
 dependencies = [
  "bytes",
  "futures-core",
  "futures-sink",
  "pin-project-lite",
  "tokio",
- "tracing",
 ]
 
 [[package]]
@@ -2144,9 +2144,9 @@ dependencies = [
 
 [[package]]
 name = "unicode-width"
-version = "0.1.11"
+version = "0.1.12"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e51733f11c9c4f72aa0c160008246859e340b00807569a0da0e7a1079b27ba85"
+checksum = "68f5e5f3158ecfd4b8ff6fe086db7c8467a2dfdac97fe420f2b7c4aa97af66d6"
 
 [[package]]
 name = "untrusted"
@@ -2498,21 +2498,6 @@ dependencies = [
 
 [[package]]
 name = "zeroize"
-version = "1.8.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "63381fa6624bf92130a6b87c0d07380116f80b565c42cf0d754136f0238359ef"
-
-[[package]]
-name = "zune-core"
-version = "0.4.12"
+version = "1.7.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3f423a2c17029964870cfaabb1f13dfab7d092a62a29a89264f4d36990ca414a"
-
-[[package]]
-name = "zune-jpeg"
-version = "0.4.11"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ec866b44a2a1fd6133d363f073ca1b179f438f99e7e5bfb1e33f7181facfe448"
-dependencies = [
- "zune-core",
-]
+checksum = "525b4ec142c6b68a2d10f01f7bbf6755599ca3f81ea53b8431b7dd348f5fdb2d"
diff --git a/pkgs/by-name/cr/crunchy-cli/package.nix b/pkgs/by-name/cr/crunchy-cli/package.nix
index 1fc5711ef350..0855864a3fe8 100644
--- a/pkgs/by-name/cr/crunchy-cli/package.nix
+++ b/pkgs/by-name/cr/crunchy-cli/package.nix
@@ -10,13 +10,13 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "crunchy-cli";
-  version = "3.5.2";
+  version = "3.6.1";
 
   src = fetchFromGitHub {
     owner = "crunchy-labs";
     repo = "crunchy-cli";
     rev = "v${version}";
-    hash = "sha256-20jsBIjl6WOs0X4ancWHUuAe2Qiv8s4w+EpEVE5Psvw=";
+    hash = "sha256-SlTdyEeqQ9lCrFFTDtMhP0Kvm+3gxiUS+ZB5LvNWSZU=";
   };
 
   cargoLock = {
diff --git a/pkgs/by-name/cr/cryptor/package.nix b/pkgs/by-name/cr/cryptor/package.nix
index b47edbbab572..edbaa0903b0a 100644
--- a/pkgs/by-name/cr/cryptor/package.nix
+++ b/pkgs/by-name/cr/cryptor/package.nix
@@ -6,7 +6,7 @@
 , ninja
 , pkg-config
 , vala
-, wrapGAppsHook
+, wrapGAppsHook3
 , gocryptfs
 , gtk3
 , json-glib
@@ -30,7 +30,7 @@ stdenv.mkDerivation (finalAttrs: {
     ninja
     pkg-config
     vala
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
diff --git a/pkgs/by-name/cs/csvkit/package.nix b/pkgs/by-name/cs/csvkit/package.nix
index 6c4da10bfd52..3b0a3b563961 100644
--- a/pkgs/by-name/cs/csvkit/package.nix
+++ b/pkgs/by-name/cs/csvkit/package.nix
@@ -5,7 +5,7 @@
 
 let
   pname = "csvkit";
-  version = "1.5.0";
+  version = "2.0.0";
   pythonEnv = python3;
 in
 pythonEnv.pkgs.buildPythonApplication {
@@ -14,7 +14,7 @@ pythonEnv.pkgs.buildPythonApplication {
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-lnqL6PxY7fViEiW1pqaXsOhzC5YupoCFkWqRhgsiIRw=";
+    hash = "sha256-MR8heHYVqRZWiX4hfGKrJshEbWcwm2G9AT40WzWBb98=";
   };
 
   propagatedBuildInputs = with pythonEnv.pkgs; [
diff --git a/pkgs/development/tools/csvq/default.nix b/pkgs/by-name/cs/csvq/package.nix
index 050b25f8da58..050b25f8da58 100644
--- a/pkgs/development/tools/csvq/default.nix
+++ b/pkgs/by-name/cs/csvq/package.nix
diff --git a/pkgs/development/tools/dapr/cli/default.nix b/pkgs/by-name/da/dapr-cli/package.nix
index a672b9637e33..a672b9637e33 100644
--- a/pkgs/development/tools/dapr/cli/default.nix
+++ b/pkgs/by-name/da/dapr-cli/package.nix
diff --git a/pkgs/development/tools/darklua/default.nix b/pkgs/by-name/da/darklua/package.nix
index adcce178dfef..c9969fec4cc8 100644
--- a/pkgs/development/tools/darklua/default.nix
+++ b/pkgs/by-name/da/darklua/package.nix
@@ -1,8 +1,9 @@
-{ lib
-, stdenv
-, darwin
-, rustPlatform
-, fetchFromGitHub
+{
+  lib,
+  stdenv,
+  darwin,
+  rustPlatform,
+  fetchFromGitHub,
 }:
 
 rustPlatform.buildRustPackage rec {
@@ -18,10 +19,7 @@ rustPlatform.buildRustPackage rec {
 
   cargoHash = "sha256-XrWhOosQM+BaqViIju7urCi1B8+6kq8Taxe5T8LFzVE=";
 
-  buildInputs = lib.optionals stdenv.isDarwin [
-    darwin.apple_sdk.frameworks.CoreServices
-  ];
-
+  buildInputs = lib.optionals stdenv.isDarwin [ darwin.apple_sdk.frameworks.CoreServices ];
 
   # error: linker `aarch64-linux-gnu-gcc` not found
   postPatch = ''
diff --git a/pkgs/by-name/db/dbeaver-bin/package.nix b/pkgs/by-name/db/dbeaver-bin/package.nix
new file mode 100644
index 000000000000..04bdf0e82549
--- /dev/null
+++ b/pkgs/by-name/db/dbeaver-bin/package.nix
@@ -0,0 +1,54 @@
+{ lib
+, stdenvNoCC
+, fetchurl
+}:
+
+stdenvNoCC.mkDerivation (finalAttrs: {
+  pname = "dbeaver-bin";
+  version = "24.0.4";
+
+  src =
+    let
+      inherit (stdenvNoCC.hostPlatform) system;
+      selectSystem = attrs: attrs.${system} or (throw "Unsupported system: ${system}");
+      suffix = selectSystem {
+        x86_64-linux = "linux.gtk.x86_64-nojdk.tar.gz";
+        aarch64-linux = "linux.gtk.aarch64-nojdk.tar.gz";
+      };
+      hash = selectSystem {
+        x86_64-linux = "sha256-sRXfEXTZNHJqBIwHGvYJUoa20qH7KLjygGP7uoaxT1M=";
+        aarch64-linux = "sha256-CQg2+p1P+Bg1uFM1PMTWtweS0TNElXTP7tI7D5WxixM=";
+      };
+    in
+    fetchurl {
+      url = "https://github.com/dbeaver/dbeaver/releases/download/${finalAttrs.version}/dbeaver-ce-${finalAttrs.version}-${suffix}";
+      inherit hash;
+    };
+
+  dontConfigure = true;
+  dontBuild = true;
+
+  installPhase = ''
+    runHook preInstall
+    mkdir -p $out/usr/share/dbeaver $out/bin
+    cp -r * $out/usr/share/dbeaver
+    ln -s $out/usr/share/dbeaver/dbeaver $out/bin/dbeaver
+    runHook postInstall
+  '';
+
+  meta = with lib; {
+    homepage = "https://dbeaver.io/";
+    description = "Universal SQL Client for developers, DBA and analysts. Supports MySQL, PostgreSQL, MariaDB, SQLite, and more";
+    longDescription = ''
+      Free multi-platform database tool for developers, SQL programmers, database
+      administrators and analysts. Supports all popular databases: MySQL,
+      PostgreSQL, MariaDB, SQLite, Oracle, DB2, SQL Server, Sybase, MS Access,
+      Teradata, Firebird, Derby, etc.
+    '';
+    sourceProvenance = with sourceTypes; [ binaryNativeCode ];
+    license = licenses.asl20;
+    platforms = platforms.linux;
+    maintainers = with maintainers; [ gepbird mkg20001 ];
+    mainProgram = "dbeaver";
+  };
+})
diff --git a/pkgs/by-name/de/dep-scan/package.nix b/pkgs/by-name/de/dep-scan/package.nix
index a9dc4b718c80..d666f4f0304e 100644
--- a/pkgs/by-name/de/dep-scan/package.nix
+++ b/pkgs/by-name/de/dep-scan/package.nix
@@ -6,14 +6,14 @@
 
 python3.pkgs.buildPythonApplication rec {
   pname = "dep-scan";
-  version = "5.3.3";
+  version = "5.3.4";
   pyproject = true;
 
   src = fetchFromGitHub {
     owner = "owasp-dep-scan";
     repo = "dep-scan";
     rev = "refs/tags/v${version}";
-    hash = "sha256-ehQsRTMoHr6LDXCka3/4YcyEKLN7DQW4mUp4nyid/aE=";
+    hash = "sha256-5iMhl3Wcxwgq4Wr0TUcAuRnb2+y8DHBugnnkpcZfSAM=";
   };
 
   postPatch = ''
diff --git a/pkgs/by-name/de/devcontainer/package.nix b/pkgs/by-name/de/devcontainer/package.nix
index 20eebbc9d5ab..affb09cad6d0 100644
--- a/pkgs/by-name/de/devcontainer/package.nix
+++ b/pkgs/by-name/de/devcontainer/package.nix
@@ -13,18 +13,18 @@
 }:
 stdenv.mkDerivation (finalAttrs: {
   pname = "devcontainer";
-  version = "0.58.0";
+  version = "0.60.0";
 
   src = fetchFromGitHub {
     owner = "devcontainers";
     repo = "cli";
     rev = "v${finalAttrs.version}";
-    hash = "sha256-pnhyyTJMSlTdMsSFzbmZ6SkGdbfr9qCIkrBxxSM42UE=";
+    hash = "sha256-/QznJhw+DYwnj/kdP6f4liJlOFhNQO0y7r4i55bJPug=";
   };
 
   yarnOfflineCache = fetchYarnDeps {
     yarnLock = finalAttrs.src + "/yarn.lock";
-    hash = "sha256-Wy0UP8QaQzZ1par7W5UhnRLc5DF2PAif0JIZJtRokBk=";
+    hash = "sha256-tN7qAvfYmDz5ZtgZL5+ZZtkuxZxvlS9FM3+dGl+daUQ=";
   };
 
   nativeBuildInputs = [ yarn fixup-yarn-lock python3 makeWrapper ];
diff --git a/pkgs/by-name/di/diffedit3/package.nix b/pkgs/by-name/di/diffedit3/package.nix
new file mode 100644
index 000000000000..6e1edaf882fa
--- /dev/null
+++ b/pkgs/by-name/di/diffedit3/package.nix
@@ -0,0 +1,30 @@
+{ lib, rustPlatform, fetchCrate
+, testers, nix-update-script, diffedit3
+}:
+
+rustPlatform.buildRustPackage rec {
+  pname = "diffedit3";
+  version = "0.4.0";
+
+  src = fetchCrate {
+    inherit pname version;
+    hash = "sha256-qw5Wos2u/H6ccJ3qkrVOCisMFDTNwxp/YeOTE1x5lcU=";
+  };
+
+  cargoHash = "sha256-e5bm8GLubA9BzH9oKKSC/Ysh+O+GJA8x6W576vKIIUA=";
+
+  passthru = {
+    updateScript = nix-update-script { };
+    tests = testers.testVersion {
+      package = diffedit3;
+    };
+  };
+
+  meta = with lib; {
+    homepage = "https://github.com/ilyagr/diffedit3";
+    description = "3-pane diff editor";
+    license = with licenses; [ asl20 ];
+    mainProgram = "diffedit3";
+    maintainers = with maintainers; [ thoughtpolice ];
+  };
+}
diff --git a/pkgs/by-name/di/digikam/package.nix b/pkgs/by-name/di/digikam/package.nix
index 8100b835e44a..27e7403c81d0 100644
--- a/pkgs/by-name/di/digikam/package.nix
+++ b/pkgs/by-name/di/digikam/package.nix
@@ -1,4 +1,4 @@
-{ stdenv, config, lib, fetchurl, cmake, doxygen, extra-cmake-modules, wrapGAppsHook
+{ stdenv, config, lib, fetchurl, cmake, doxygen, extra-cmake-modules, wrapGAppsHook3
 
 # For `digitaglinktree`
 , perl, sqlite
@@ -38,11 +38,11 @@
 
 stdenv.mkDerivation rec {
   pname   = "digikam";
-  version = "8.2.0";
+  version = "8.3.0";
 
   src = fetchurl {
-    url = "mirror://kde/stable/${pname}/${version}/digiKam-${version}.tar.xz";
-    hash = "sha256-L3/LVZsSPtnsrlpa729FYO7l9JIG2dF0beyatsj7OL8=";
+    url = "mirror://kde/stable/${pname}/${version}/digiKam-${version}-1.tar.xz";
+    hash = "sha256-BbFF/38vIAX6IbxXnBUqsjyBkbZ4/ylEyPBAbWud5tg=";
   };
 
   strictDeps = true;
@@ -55,7 +55,7 @@ stdenv.mkDerivation rec {
     extra-cmake-modules
     libsForQt5.kdoctools
     libsForQt5.wrapQtAppsHook
-    wrapGAppsHook
+    wrapGAppsHook3
   ] ++ lib.optionals cudaSupport (with cudaPackages; [
     cuda_nvcc
   ]);
diff --git a/pkgs/by-name/di/dillo/package.nix b/pkgs/by-name/di/dillo/package.nix
new file mode 100644
index 000000000000..760a9941b8df
--- /dev/null
+++ b/pkgs/by-name/di/dillo/package.nix
@@ -0,0 +1,87 @@
+{
+  lib,
+  autoreconfHook,
+  fetchFromGitHub,
+  fltk,
+  giflib,
+  libXcursor,
+  libXi,
+  libXinerama,
+  libjpeg,
+  libpng,
+  libressl,
+  mbedtls,
+  openssl,
+  perl,
+  pkg-config,
+  stdenv,
+  which,
+  # Configurable options
+  tlsLibrary? "libressl"
+}:
+
+let
+  ssl = {
+    "libressl" = libressl;
+    "mbedtls" = mbedtls;
+    "openssl" = openssl;
+  }.${tlsLibrary} or (throw "Unrecognized tlsLibrary option: ${tlsLibrary}");
+in
+stdenv.mkDerivation (finalAttrs: {
+  pname = "dillo";
+  version = "3.1.0";
+
+  src = fetchFromGitHub {
+    owner = "dillo-browser";
+    repo = "dillo";
+    rev = "v${finalAttrs.version}";
+    hash = "sha256-AqffkUPLvVSGq9iYksyvHf3HQ3DLWNlB3CYw4GCAAEI=";
+  };
+
+  nativeBuildInputs = [
+    autoreconfHook
+    pkg-config
+    fltk
+    which
+  ];
+
+  buildInputs = [
+    fltk
+    giflib
+    libXcursor
+    libXi
+    libXinerama
+    libjpeg
+    libpng
+    perl
+    ssl
+  ];
+
+  outputs = [ "out" "doc" "man" ];
+
+  strictDeps = true;
+
+  meta = {
+    homepage = "https://dillo-browser.github.io/";
+    description = "A fast graphical web browser with a small footprint";
+    longDescription = ''
+      Dillo is a fast and small graphical web browser with the following
+      features:
+
+      - Multi-platform, running on Linux, BSD, MacOS, Windows (via Cygwin) and
+        even Atari.
+      - Written in C and C++ with few dependencies.
+      - Implements its own real-time rendering engine.
+      - Low memory usage and fast rendering, even with large pages.
+      - Uses the fast and bloat-free FLTK GUI library.
+      - Support for HTTP, HTTPS, FTP and local files.
+      - Extensible with plugins written in any language.
+      - Is free software licensed with the GPLv3.
+      - Helps authors to comply with web standards by using the bug meter.
+    '';
+    mainProgram = "dillo";
+    maintainers = with lib.maintainers; [ AndersonTorres ];
+    license = lib.licenses.gpl3Plus;
+    platforms = lib.platforms.linux;
+  };
+})
diff --git a/pkgs/applications/networking/browsers/dillong/default.nix b/pkgs/by-name/di/dillong/package.nix
index 365b1119f96b..31e76fa89d40 100644
--- a/pkgs/applications/networking/browsers/dillong/default.nix
+++ b/pkgs/by-name/di/dillong/package.nix
@@ -1,16 +1,17 @@
-{ lib
-, stdenv
-, fetchFromGitHub
-, autoreconfHook
-, pkg-config
-, which
-, fltk
-, mbedtls_2
+{
+  lib,
+  autoreconfHook,
+  fetchFromGitHub,
+  fltk,
+  mbedtls_2,
+  pkg-config,
+  stdenv,
+  which,
 }:
 
 stdenv.mkDerivation {
   pname = "dillong";
-  version = "unstable-2021-12-13";
+  version = "0-unstable-2021-12-13";
 
   src = fetchFromGitHub {
     owner = "w00fpack";
@@ -21,6 +22,7 @@ stdenv.mkDerivation {
 
   nativeBuildInputs = [
     autoreconfHook
+    fltk
     pkg-config
     which
   ];
@@ -30,6 +32,19 @@ stdenv.mkDerivation {
     mbedtls_2
   ];
 
+  outputs = [ "out" "doc" "man" ];
+
+  configureFlags = [
+    (lib.enableFeature true "ssl")
+  ];
+
+  strictDeps = true;
+
+  # Workaround build failure on -fno-common toolchains:
+  #   ld: main.o:/build/dillo-3.0.5/dpid/dpid.h:64: multiple definition of `sock_set';
+  #     dpid.o:/build/dillo-3.0.5/dpid/dpid.h:64: first defined here
+  env.NIX_CFLAGS_COMPILE = "-fcommon";
+
   # The start_page and home settings refer to /usr.
   # We can't change /usr to $out because dillorc is copied to the home directory
   # on first launch, so the paths would quickly become outdated.
@@ -40,19 +55,12 @@ stdenv.mkDerivation {
       --replace "home=" "#home="
   '';
 
-  configureFlags = [ "--enable-ssl=yes" ];
-
-  # Workaround build failure on -fno-common toolchains:
-  #   ld: main.o:/build/dillo-3.0.5/dpid/dpid.h:64: multiple definition of `sock_set';
-  #     dpid.o:/build/dillo-3.0.5/dpid/dpid.h:64: first defined here
-  env.NIX_CFLAGS_COMPILE = "-fcommon";
-
-  meta = with lib; {
-    description = "Fork of Dillo, a lightweight web browser";
+  meta = {
     homepage = "https://github.com/w00fpack/dilloNG";
-    license = licenses.gpl3Plus;
-    platforms = platforms.linux;
-    maintainers = with maintainers; [ fgaz ];
+    description = "Fork of Dillo, a lightweight web browser";
+    license = lib.licenses.gpl3Plus;
     mainProgram = "dillo";
+    maintainers = with lib.maintainers; [ fgaz ];
+    platforms = lib.platforms.linux;
   };
 }
diff --git a/pkgs/by-name/di/dim/package.nix b/pkgs/by-name/di/dim/package.nix
index 9b59329e766a..fba2c5e11f0c 100644
--- a/pkgs/by-name/di/dim/package.nix
+++ b/pkgs/by-name/di/dim/package.nix
@@ -4,6 +4,7 @@
   rustPlatform,
   fetchFromGitHub,
   buildNpmPackage,
+  darwin,
   makeWrapper,
   ffmpeg_5,
   git,
@@ -11,6 +12,7 @@
   sqlite,
   libvaSupport ? stdenv.hostPlatform.isLinux,
   libva,
+  fetchpatch,
 }:
 rustPlatform.buildRustPackage rec {
   pname = "dim";
@@ -45,6 +47,14 @@ rustPlatform.buildRustPackage rec {
     # (ffmpeg) binaries in the same directory as the binary. Patch it to use
     # the working dir and PATH instead.
     ./relative-paths.diff
+
+    # Upstream has some unused imports that prevent things from compiling...
+    # Remove for next release.
+    (fetchpatch {
+      name = "remove-unused-imports.patch";
+      url = "https://github.com/Dusk-Labs/dim/commit/f62de1d38e6e52f27b1176f0dabbbc51622274cb.patch";
+      hash = "sha256-Gk+RHWtCKN7McfFB3siIOOhwi3+k17MCQr4Ya4RCKjc=";
+    })
   ];
 
   postConfigure = ''
@@ -57,9 +67,14 @@ rustPlatform.buildRustPackage rec {
     git
   ];
 
-  buildInputs = [
-    sqlite
-  ] ++ lib.optional libvaSupport libva;
+  buildInputs =
+    [ sqlite ]
+    ++ lib.optional stdenv.isDarwin [
+      darwin.apple_sdk.frameworks.Security
+      darwin.apple_sdk.frameworks.CoreServices
+      darwin.apple_sdk.frameworks.SystemConfiguration
+    ]
+    ++ lib.optional libvaSupport libva;
 
   buildFeatures = lib.optional libvaSupport "vaapi";
 
@@ -86,7 +101,7 @@ rustPlatform.buildRustPackage rec {
 
   postInstall = ''
     wrapProgram $out/bin/dim \
-      --prefix PATH : ${lib.makeBinPath [ffmpeg_5]}
+      --prefix PATH : ${lib.makeBinPath [ ffmpeg_5 ]}
   '';
 
   meta = {
diff --git a/pkgs/development/libraries/discord-gamesdk/default.nix b/pkgs/by-name/di/discord-gamesdk/package.nix
index 86e1a70accde..b2f9a08dc772 100644
--- a/pkgs/development/libraries/discord-gamesdk/default.nix
+++ b/pkgs/by-name/di/discord-gamesdk/package.nix
@@ -1,7 +1,8 @@
-{ lib
-, stdenv
-, fetchzip
-, autoPatchelfHook
+{
+  lib,
+  stdenv,
+  fetchzip,
+  autoPatchelfHook,
 }:
 
 stdenv.mkDerivation rec {
@@ -14,7 +15,10 @@ stdenv.mkDerivation rec {
     stripRoot = false;
   };
 
-  outputs = [ "out" "dev" ];
+  outputs = [
+    "out"
+    "dev"
+  ];
 
   buildInputs = [ (stdenv.cc.cc.libgcc or null) ];
 
@@ -41,6 +45,11 @@ stdenv.mkDerivation rec {
     license = licenses.unfree;
     maintainers = with maintainers; [ tomodachi94 ];
     sourceProvenance = with sourceTypes; [ binaryNativeCode ];
-    platforms = [ "x86_64-linux" "x86_64-darwin" "aarch64-darwin" "x86_64-windows" ];
+    platforms = [
+      "x86_64-linux"
+      "x86_64-darwin"
+      "aarch64-darwin"
+      "x86_64-windows"
+    ];
   };
 }
diff --git a/pkgs/by-name/di/discover-overlay/package.nix b/pkgs/by-name/di/discover-overlay/package.nix
index fe52106ea530..7f3c2c5a741f 100644
--- a/pkgs/by-name/di/discover-overlay/package.nix
+++ b/pkgs/by-name/di/discover-overlay/package.nix
@@ -1,22 +1,21 @@
-{ lib, python3, fetchFromGitHub, gtk3, gobject-introspection, gtk-layer-shell
-, wrapGAppsHook }:
+{ lib, python3, fetchFromGitHub, gtk3, gobject-introspection, gtk-layer-shell, wrapGAppsHook3 }:
 python3.pkgs.buildPythonApplication rec {
   pname = "discover-overlay";
-  version = "0.7.3";
+  version = "0.7.4";
   pyproject = true;
 
   src = fetchFromGitHub {
     owner = "trigg";
     repo = "Discover";
     rev = "refs/tags/v${version}";
-    hash = "sha256-a9IPNy5i088rltQ9LYD+DgJ/1/wckQ2E5Bzg62t95yU=";
+    hash = "sha256-qA+gvgKQlTjcm0JPUmJp47Ttvm+69CW4lOngnueLVpo=";
   };
 
   buildInputs = [ gtk3 gtk-layer-shell ];
 
   nativeBuildInputs = [
     gobject-introspection
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   dontWrapGApps = true;
diff --git a/pkgs/by-name/di/disko/package.nix b/pkgs/by-name/di/disko/package.nix
index 8585876ee001..cc493065f3d1 100644
--- a/pkgs/by-name/di/disko/package.nix
+++ b/pkgs/by-name/di/disko/package.nix
@@ -9,12 +9,12 @@
 
 stdenvNoCC.mkDerivation (finalAttrs: {
   name = "disko";
-  version = "1.6.0";
+  version = "1.6.1";
   src = fetchFromGitHub {
     owner = "nix-community";
     repo = "disko";
     rev = "v${finalAttrs.version}";
-    hash = "sha256-h3pOvHCXkSdp1KOZqtkQmHgkR7VaOJXDhqhumk7sZLY=";
+    hash = "sha256-5CNvkH0Nf7yMwgKhjUNg/lUK40C7DXB4zKOuA2jVO90=";
   };
   nativeBuildInputs = [ makeWrapper ];
   buildInputs = [ bash ];
diff --git a/pkgs/by-name/di/displaycal/package.nix b/pkgs/by-name/di/displaycal/package.nix
index a48355fbb825..80e7b256b297 100644
--- a/pkgs/by-name/di/displaycal/package.nix
+++ b/pkgs/by-name/di/displaycal/package.nix
@@ -1,7 +1,7 @@
 { lib
 , python3
 , fetchPypi
-, wrapGAppsHook
+, wrapGAppsHook3
 , gtk3
 , librsvg
 , xorg
@@ -20,7 +20,7 @@ python3.pkgs.buildPythonApplication rec {
   };
 
   nativeBuildInputs = [
-    wrapGAppsHook
+    wrapGAppsHook3
     gtk3
   ];
 
diff --git a/pkgs/by-name/dm/dmarc-report-converter/package.nix b/pkgs/by-name/dm/dmarc-report-converter/package.nix
index 488ce0a92d64..e91c35698cc5 100644
--- a/pkgs/by-name/dm/dmarc-report-converter/package.nix
+++ b/pkgs/by-name/dm/dmarc-report-converter/package.nix
@@ -7,13 +7,13 @@
 
 buildGoModule rec {
   pname = "dmarc-report-converter";
-  version = "0.7.2";
+  version = "0.8.0";
 
   src = fetchFromGitHub {
     owner = "tierpod";
     repo = "dmarc-report-converter";
     rev = "v${version}";
-    hash = "sha256-93sNEBV7MxZr6tqPaFKgY0KA1J3W0HoCiIDZg268Smc=";
+    hash = "sha256-TqvAqMZEXhMO3/0VNY3Mr/E15QQbucuKyG95j2jWU5g=";
   };
 
   vendorHash = null;
diff --git a/pkgs/by-name/do/docfd/package.nix b/pkgs/by-name/do/docfd/package.nix
index ebefb6f1cd70..c8c3e193c360 100644
--- a/pkgs/by-name/do/docfd/package.nix
+++ b/pkgs/by-name/do/docfd/package.nix
@@ -1,15 +1,16 @@
-{ lib
-, ocamlPackages
-, stdenv
-, overrideSDK
-, fetchFromGitHub
-, python3
-, dune_3
-, makeWrapper
-, pandoc
-, poppler_utils
-, testers
-, docfd
+{
+  lib,
+  ocamlPackages,
+  stdenv,
+  overrideSDK,
+  fetchFromGitHub,
+  python3,
+  dune_3,
+  makeWrapper,
+  pandoc,
+  poppler_utils,
+  testers,
+  docfd,
 }:
 
 let
@@ -20,7 +21,7 @@ let
 in
 buildDunePackage' rec {
   pname = "docfd";
-  version = "4.0.0";
+  version = "6.0.1";
 
   minimalOCamlVersion = "5.1";
 
@@ -28,10 +29,15 @@ buildDunePackage' rec {
     owner = "darrenldl";
     repo = "docfd";
     rev = version;
-    hash = "sha256-fgwUXRZ6k5i3XLxXpjbrl0TJZMT+NkGXf7KNwRgi+q8=";
+    hash = "sha256-pNBWSPII+r9MMmyXBzxQ6hMNrN7nwcdhrpufzj00s2E=";
   };
 
-  nativeBuildInputs = [ python3 dune_3 makeWrapper ];
+  nativeBuildInputs = [
+    python3
+    dune_3
+    makeWrapper
+  ];
+
   buildInputs = with ocamlPackages; [
     cmdliner
     containers-data
@@ -43,18 +49,24 @@ buildDunePackage' rec {
     notty
     ocolor
     oseq
+    ppx_deriving
+    ppxlib
+    re
     spelll
     timedesc
     yojson
   ];
 
   postInstall = ''
-    wrapProgram $out/bin/docfd --prefix PATH : "${lib.makeBinPath [ pandoc poppler_utils ]}"
+    wrapProgram $out/bin/docfd --prefix PATH : "${
+      lib.makeBinPath [
+        pandoc
+        poppler_utils
+      ]
+    }"
   '';
 
-  passthru.tests.version = testers.testVersion {
-    package = docfd;
-  };
+  passthru.tests.version = testers.testVersion { package = docfd; };
 
   meta = with lib; {
     description = "TUI multiline fuzzy document finder";
diff --git a/pkgs/by-name/do/door-knocker/package.nix b/pkgs/by-name/do/door-knocker/package.nix
index 98635e0abf96..c75cbd80788f 100644
--- a/pkgs/by-name/do/door-knocker/package.nix
+++ b/pkgs/by-name/do/door-knocker/package.nix
@@ -14,14 +14,14 @@
 
 stdenv.mkDerivation (finalAttrs: {
   pname = "door-knocker";
-  version = "0.4.4";
+  version = "0.5.0";
 
   src = fetchFromGitea {
     domain = "codeberg.org";
     owner = "tytan652";
     repo = "door-knocker";
     rev = finalAttrs.version;
-    hash = "sha256-pC/Fv+GzHw0PTzJoDAUK/EzVVWXha2cflAqiznM9ZYM=";
+    hash = "sha256-932zUfCEN24hZxkCX9uJ2HpvmLNdTtbkXvv50Hu7KxE=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/tools/security/doppler/default.nix b/pkgs/by-name/do/doppler/package.nix
index cdeb12f08de2..cdeb12f08de2 100644
--- a/pkgs/tools/security/doppler/default.nix
+++ b/pkgs/by-name/do/doppler/package.nix
diff --git a/pkgs/by-name/do/dorion/package.nix b/pkgs/by-name/do/dorion/package.nix
index 32529e8fcf2e..b9c63b443dd2 100644
--- a/pkgs/by-name/do/dorion/package.nix
+++ b/pkgs/by-name/do/dorion/package.nix
@@ -8,16 +8,16 @@
 , libappindicator
 , libayatana-appindicator
 , webkitgtk
-, wrapGAppsHook
+, wrapGAppsHook3
 }:
 
 stdenv.mkDerivation (finalAttrs: {
   name = "dorion";
-  version = "4.2.0";
+  version = "4.2.1";
 
   src = fetchurl {
     url = "https://github.com/SpikeHD/Dorion/releases/download/v${finalAttrs.version }/Dorion_${finalAttrs.version}_amd64.deb";
-    hash = "sha256-QqjRxAx2hDd8atpXuof8AVWtK3o8K77Se2b2CyOBMOw=";
+    hash = "sha256-ki1cNrMUSO9JX8HCm4lFKid3Jq6pwKJcb4bVPaha+IA=";
   };
 
   unpackCmd = ''
@@ -33,7 +33,7 @@ stdenv.mkDerivation (finalAttrs: {
   nativeBuildInputs = [
     autoPatchelfHook
     dpkg
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
diff --git a/pkgs/by-name/do/dotnet-outdated/package.nix b/pkgs/by-name/do/dotnet-outdated/package.nix
index 2a46d692c67f..5b51e795dc86 100644
--- a/pkgs/by-name/do/dotnet-outdated/package.nix
+++ b/pkgs/by-name/do/dotnet-outdated/package.nix
@@ -8,13 +8,13 @@ let
 
 in buildDotnetModule rec {
   pname = "dotnet-outdated";
-  version = "4.6.1";
+  version = "4.6.2";
 
   src = fetchFromGitHub {
     owner = "dotnet-outdated";
     repo = pname;
     rev = "v${version}";
-    hash = "sha256-cYEW++XKCBhB4fyGj4bDKOBuQ1CJwm9CfZfiZUiy7Sw=";
+    hash = "sha256-wXPcFYnbQbnF1xg3PA9iQsd0BrMD2P+OzZYLd4XwhbQ=";
   };
 
   inherit dotnet-sdk;
diff --git a/pkgs/by-name/do/doublecmd/package.nix b/pkgs/by-name/do/doublecmd/package.nix
index eb4de12dfd2f..a77be53cd211 100644
--- a/pkgs/by-name/do/doublecmd/package.nix
+++ b/pkgs/by-name/do/doublecmd/package.nix
@@ -13,13 +13,13 @@
 
 stdenv.mkDerivation (finalAttrs: {
   pname = "doublecmd";
-  version = "1.1.13";
+  version = "1.1.14";
 
   src = fetchFromGitHub {
     owner = "doublecmd";
     repo = "doublecmd";
     rev = "v${finalAttrs.version}";
-    hash = "sha256-QJPLDqdXttUSeCm1QpQ7oFgvDmzStz9maW0c5xhOLtg=";
+    hash = "sha256-2ZFLQoz25q3uwjQkogSyuLxSNJQ6Gh553Yj4zl70jno=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/applications/misc/downonspot/Cargo.lock.patch b/pkgs/by-name/do/downonspot/Cargo.lock.patch
index e224603a3070..e224603a3070 100644
--- a/pkgs/applications/misc/downonspot/Cargo.lock.patch
+++ b/pkgs/by-name/do/downonspot/Cargo.lock.patch
diff --git a/pkgs/applications/misc/downonspot/default.nix b/pkgs/by-name/do/downonspot/package.nix
index 5a7c6ce6933b..f6e568d96438 100644
--- a/pkgs/applications/misc/downonspot/default.nix
+++ b/pkgs/by-name/do/downonspot/package.nix
@@ -10,19 +10,19 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "downonspot";
-  version = "unstable-2023-11-26";
+  version = "unstable-2024-04-30";
 
   src = fetchFromGitHub {
     owner = "oSumAtrIX";
     repo = "DownOnSpot";
-    rev = "406fbf137306208bcb9835ad3aa92b0edbc01805";
-    hash = "sha256-gY5pDZ5EwKhBmV8VyuKW/19BgfPSIZSp9rEI/GuonYQ=";
+    rev = "669dbb18e105129fff4886ba3710596d54a5f33a";
+    hash = "sha256-sUptn+tmQoI2i9WBpJU23MkdQ9h+Lmx590+2+0XXC7w=";
   };
 
   # Use official public librespot version
   cargoPatches = [ ./Cargo.lock.patch ];
 
-  cargoHash = "sha256-CG9QY9Nfy/dxzvSPG2NB2/6yjTvdoDI76PRSaM138Wk=";
+  cargoHash = "sha256-GHhijwgTge7jzdkn0qynQIBNYeqtY26C5BaLpQ/UWgQ=";
 
   nativeBuildInputs = [
     pkg-config
diff --git a/pkgs/by-name/dp/dpp/package.nix b/pkgs/by-name/dp/dpp/package.nix
index c76e3e57f403..6079585e5d29 100644
--- a/pkgs/by-name/dp/dpp/package.nix
+++ b/pkgs/by-name/dp/dpp/package.nix
@@ -11,13 +11,13 @@
 }:
 stdenv.mkDerivation (finalAttrs: {
   pname = "dpp";
-  version = "10.0.29";
+  version = "10.0.30";
 
   src = fetchFromGitHub {
     owner = "brainboxdotcc";
     repo = "DPP";
     rev = "v${finalAttrs.version}";
-    hash = "sha256-BJMg3MLSfb9x/2lPHITeI3SWwW1OZVUUMVltTWUcw9I=";
+    hash = "sha256-FW1DKbVwPPlvLtv8XzpqaAZjS1y5hasq3Rhh2u08Sz0=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/tools/games/dualsensectl/default.nix b/pkgs/by-name/du/dualsensectl/package.nix
index 12b3a8492f62..63eefab713dc 100644
--- a/pkgs/tools/games/dualsensectl/default.nix
+++ b/pkgs/by-name/du/dualsensectl/package.nix
@@ -1,20 +1,23 @@
-{ lib
-, stdenv
-, fetchFromGitHub
-, pkg-config
-, dbus
-, hidapi
-, udev
+{
+  lib,
+  stdenv,
+  fetchFromGitHub,
+  pkg-config,
+  dbus,
+  hidapi,
+  udev,
+  testers,
+  nix-update-script,
 }:
 
-stdenv.mkDerivation rec {
+stdenv.mkDerivation (finalAttrs: {
   pname = "dualsensectl";
   version = "0.5";
 
   src = fetchFromGitHub {
     owner = "nowrep";
     repo = "dualsensectl";
-    rev = "v${version}";
+    rev = "v${finalAttrs.version}";
     hash = "sha256-+OSp9M0A0J4nm7ViDXG63yrUZuZxR7gyckwSCdy3qm0=";
   };
 
@@ -22,9 +25,7 @@ stdenv.mkDerivation rec {
     substituteInPlace Makefile --replace "/usr/" "/"
   '';
 
-  nativeBuildInputs = [
-    pkg-config
-  ];
+  nativeBuildInputs = [ pkg-config ];
 
   buildInputs = [
     dbus
@@ -32,11 +33,15 @@ stdenv.mkDerivation rec {
     udev
   ];
 
-  makeFlags = [
-    "DESTDIR=$(out)"
-  ];
+  makeFlags = [ "DESTDIR=$(out)" ];
+
+  passthru = {
+    tests.version = testers.testVersion { package = finalAttrs.finalPackage; };
+    updateScript = nix-update-script { };
+  };
 
   meta = with lib; {
+    changelog = "https://github.com/nowrep/dualsensectl/releases/tag/v${finalAttrs.version}";
     description = "Linux tool for controlling PS5 DualSense controller";
     homepage = "https://github.com/nowrep/dualsensectl";
     license = licenses.gpl2Only;
@@ -44,4 +49,4 @@ stdenv.mkDerivation rec {
     maintainers = with maintainers; [ azuwis ];
     platforms = platforms.linux;
   };
-}
+})
diff --git a/pkgs/by-name/du/dumbpipe/package.nix b/pkgs/by-name/du/dumbpipe/package.nix
index 6f3074266947..1f19ed302610 100644
--- a/pkgs/by-name/du/dumbpipe/package.nix
+++ b/pkgs/by-name/du/dumbpipe/package.nix
@@ -7,16 +7,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "dumbpipe";
-  version = "0.7.0";
+  version = "0.8.0";
 
   src = fetchFromGitHub {
     owner = "n0-computer";
     repo = pname;
     rev = "v${version}";
-    hash = "sha256-pvAB3kvnyNZ6N7bC8NIaSNUxcn9AfpEozYcczA+5zmc=";
+    hash = "sha256-NaN3r4Vk4SCdgfFgtyCgeMOyOCfxj15vLrXRmUKTAWM=";
   };
 
-  cargoHash = "sha256-aHuRG1mLb18bra/iTddU3B4XjS5shheBqW1Hs+QMcJs=";
+  cargoHash = "sha256-Efuif2fIP20tXCq7bpa/n1lthvi0jcyYCpWM//qEHCY=";
 
   buildInputs = lib.optionals stdenv.isDarwin (
     with darwin.apple_sdk.frameworks; [
diff --git a/pkgs/by-name/du/dune3d/package.nix b/pkgs/by-name/du/dune3d/package.nix
index 797819354a1b..f5274a99e38f 100644
--- a/pkgs/by-name/du/dune3d/package.nix
+++ b/pkgs/by-name/du/dune3d/package.nix
@@ -16,18 +16,18 @@
   pkg-config,
   python3,
   stdenv,
-  wrapGAppsHook,
+  wrapGAppsHook3,
 }:
 
 stdenv.mkDerivation rec {
   pname = "dune3d";
-  version = "1.0.0";
+  version = "1.1.0";
 
   src = fetchFromGitHub {
     owner = "dune3d";
     repo = "dune3d";
     rev = "v${version}";
-    hash = "sha256-y7jlqH1p2vCFTM14rFURxTkrWUT5hNkCseC3xB6bFFo=";
+    hash = "sha256-Z/kdOc/MbnnEyRsel3aZGndTAy1eCdAK0Wdta0HxaE4=";
   };
 
   nativeBuildInputs = [
@@ -35,7 +35,7 @@ stdenv.mkDerivation rec {
     meson
     ninja
     pkg-config
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
   buildInputs = [
     cmake
diff --git a/pkgs/by-name/du/dunst/package.nix b/pkgs/by-name/du/dunst/package.nix
index f89bcd196ab3..f01f65c86283 100644
--- a/pkgs/by-name/du/dunst/package.nix
+++ b/pkgs/by-name/du/dunst/package.nix
@@ -1,28 +1,69 @@
-{ stdenv, lib, fetchFromGitHub, makeWrapper
-, pkg-config, which, perl, jq, libXrandr, coreutils
-, cairo, dbus, systemd, gdk-pixbuf, glib, libX11, libXScrnSaver
-, wayland, wayland-protocols
-, libXinerama, libnotify, pango, xorgproto, librsvg
-, testers, dunst
+{ stdenv
+, lib
+, fetchFromGitHub
+, makeWrapper
+, pkg-config
+, which
+, perl
+, jq
+, libXrandr
+, coreutils
+, cairo
+, dbus
+, systemd
+, gdk-pixbuf
+, glib
+, libX11
+, libXScrnSaver
+, wayland
+, wayland-protocols
+, libXinerama
+, libnotify
+, pango
+, xorgproto
+, librsvg
+, testers
+, dunst
+, withX11 ? true
+, withWayland ? true
 }:
 
 stdenv.mkDerivation (finalAttrs: {
   pname = "dunst";
-  version = "1.10.0";
+  version = "1.11.0";
 
   src = fetchFromGitHub {
     owner = "dunst-project";
     repo = "dunst";
     rev = "v${finalAttrs.version}";
-    hash = "sha256-6smFUdWqOuYB0btsDgHtIpDBfHhkpIQfjyZ8wtRg1bQ=";
+    hash = "sha256-eiFvvavXGNcHZnEGwlTLxRqFNdkvEZMwNIkVyDn1V6o=";
   };
 
-  nativeBuildInputs = [ perl pkg-config which systemd makeWrapper ];
+  nativeBuildInputs = [
+    perl
+    pkg-config
+    which
+    systemd
+    makeWrapper
+  ];
 
   buildInputs = [
-    cairo dbus gdk-pixbuf glib libX11 libXScrnSaver
-    libXinerama libnotify pango xorgproto librsvg libXrandr
-    wayland wayland-protocols
+    cairo
+    dbus
+    gdk-pixbuf
+    glib
+    libnotify
+    pango
+    librsvg
+  ] ++ lib.optionals withX11 [
+    libX11
+    libXScrnSaver
+    libXinerama
+    xorgproto
+    libXrandr
+  ] ++ lib.optionals withWayland [
+    wayland
+    wayland-protocols
   ];
 
   outputs = [ "out" "man" ];
@@ -33,7 +74,9 @@ stdenv.mkDerivation (finalAttrs: {
     "SYSCONFDIR=$(out)/etc"
     "SERVICEDIR_DBUS=$(out)/share/dbus-1/services"
     "SERVICEDIR_SYSTEMD=$(out)/lib/systemd/user"
-  ];
+  ]
+  ++ lib.optional (!withX11) "X11=0"
+  ++ lib.optional (!withWayland) "WAYLAND=0";
 
   postInstall = ''
     wrapProgram $out/bin/dunst \
@@ -42,10 +85,8 @@ stdenv.mkDerivation (finalAttrs: {
     wrapProgram $out/bin/dunstctl \
       --prefix PATH : "${lib.makeBinPath [ coreutils dbus ]}"
 
-    install -D contrib/_dunst.zshcomp $out/share/zsh/site-functions/_dunst
-    install -D contrib/_dunstctl.zshcomp $out/share/zsh/site-functions/_dunstctl
-    substituteInPlace $out/share/zsh/site-functions/_dunstctl \
-      --replace "jq -M" "${jq}/bin/jq -M"
+    substituteInPlace $out/share/zsh/site-functions/_dunstctl $out/share/fish/vendor_completions.d/{dunstctl,dunstify} \
+      --replace-fail "jq" "${lib.getExe jq}"
   '';
 
   passthru.tests.version = testers.testVersion { package = dunst; };
@@ -56,7 +97,7 @@ stdenv.mkDerivation (finalAttrs: {
     license = licenses.bsd3;
     # NOTE: 'unix' or even 'all' COULD work too, I'm not sure
     platforms = platforms.linux;
-    maintainers = with maintainers; [ domenkozar ];
+    maintainers = with maintainers; [ domenkozar gepbird ];
     mainProgram = "dunst";
   };
 })
diff --git a/pkgs/by-name/e1/e1s/package.nix b/pkgs/by-name/e1/e1s/package.nix
new file mode 100644
index 000000000000..b13d5ff947e4
--- /dev/null
+++ b/pkgs/by-name/e1/e1s/package.nix
@@ -0,0 +1,26 @@
+{ stdenv, lib, buildGoModule, fetchFromGitHub }:
+let
+  pname = "e1s";
+  version = "1.0.34";
+in
+buildGoModule {
+  inherit pname version;
+
+  src = fetchFromGitHub {
+    owner = "keidarcy";
+    repo = "e1s";
+    rev = "refs/tags/v${version}";
+    hash = "sha256-fxo7TQjFrp2BbXz7bwMC5AuacKpyi5UmAMEVBmR91ko=";
+  };
+
+  vendorHash = "sha256-pM6win2W6HqjIg9QBblDl3ptKEI6sANliXkpwlFnTb0=";
+
+  meta = with lib; {
+    description = "Easily Manage AWS ECS Resources in Terminal 🐱";
+    homepage = "https://github.com/keidarcy/e1s";
+    changelog = "https://github.com/derailed/e1s/releases/tag/v${version}";
+    license = licenses.mit;
+    mainProgram = "e1s";
+    maintainers = with maintainers; [ zelkourban ];
+  };
+}
diff --git a/pkgs/by-name/ea/earlyoom/package.nix b/pkgs/by-name/ea/earlyoom/package.nix
index ba69b72b3bab..4efb5a52e38e 100644
--- a/pkgs/by-name/ea/earlyoom/package.nix
+++ b/pkgs/by-name/ea/earlyoom/package.nix
@@ -11,13 +11,13 @@
 
 stdenv.mkDerivation (finalAttrs: {
   pname = "earlyoom";
-  version = "1.8";
+  version = "1.8.1";
 
   src = fetchFromGitHub {
     owner = "rfjakob";
     repo = "earlyoom";
     rev = "v${finalAttrs.version}";
-    hash = "sha256-jgNoYOGor2i3ngDuU3It238n5ky+AppzlRKdkwXb2AI=";
+    hash = "sha256-7gVwR/D3HEMv2sRXYe/B2aluxncDkMGyiBklwAJkWjk=";
   };
 
   outputs = [ "out" ] ++ lib.optionals withManpage [ "man" ];
diff --git a/pkgs/development/tools/eclint/default.nix b/pkgs/by-name/ec/eclint/package.nix
index 3f449489743a..3f449489743a 100644
--- a/pkgs/development/tools/eclint/default.nix
+++ b/pkgs/by-name/ec/eclint/package.nix
diff --git a/pkgs/by-name/ed/eduvpn-client/package.nix b/pkgs/by-name/ed/eduvpn-client/package.nix
index e3b5b9d8a04c..8a4fd7db89e8 100644
--- a/pkgs/by-name/ed/eduvpn-client/package.nix
+++ b/pkgs/by-name/ed/eduvpn-client/package.nix
@@ -7,7 +7,7 @@
 , libsecret
 , networkmanager
 , python3Packages
-, wrapGAppsHook
+, wrapGAppsHook3
 }:
 
 python3Packages.buildPythonApplication rec {
@@ -22,7 +22,7 @@ python3Packages.buildPythonApplication rec {
   nativeBuildInputs = [
     gdk-pixbuf
     gobject-introspection
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
diff --git a/pkgs/by-name/ee/eepers/package.nix b/pkgs/by-name/ee/eepers/package.nix
new file mode 100644
index 000000000000..d642252774e9
--- /dev/null
+++ b/pkgs/by-name/ee/eepers/package.nix
@@ -0,0 +1,81 @@
+{
+  lib,
+  stdenv,
+  fetchFromGitHub,
+  gnat,
+  raylib,
+  alsa-lib,
+  wayland,
+}:
+
+stdenv.mkDerivation rec {
+  pname = "eepers";
+  version = "1.3";
+
+  src = fetchFromGitHub {
+    owner = "tsoding";
+    repo = "eepers";
+    rev = "refs/tags/v${version}";
+    hash = "sha256-KG7ci327qlTtlN4yV54P8Q34ExFLJfTGMTZxN3RtZbc=";
+  };
+
+  postPatch = ''
+    substituteInPlace eepers.adb \
+      --replace-fail "assets/" "$out/assets/"
+  '';
+
+  buildInputs = [
+    gnat
+    raylib
+  ];
+
+  buildPhase = ''
+    runHook preBuild
+
+    gnatmake -f -O3 \
+      -Wall \
+      -Wextra \
+      -gnat2012 \
+      -o eepers-linux eepers.adb \
+      -bargs \
+      -largs -lraylib -lm \
+      -pthread
+
+    runHook postBuild
+  '';
+
+  postFixup = ''
+    patchelf $out/bin/eepers \
+      --add-needed libwayland-client.so \
+      --add-needed libwayland-cursor.so \
+      --add-needed libwayland-egl.so \
+      --add-needed libasound.so \
+      --add-rpath ${
+        lib.makeLibraryPath [
+          alsa-lib
+          wayland
+        ]
+      }
+  '';
+
+  installPhase = ''
+    runHook preInstall
+
+    mkdir -p $out/bin
+    cp ./eepers-linux $out/bin/eepers
+
+    cp -r ./assets $out/
+
+    runHook postInstall
+  '';
+
+  meta = {
+    description = "Simple Turn-based Game";
+    homepage = "https://github.com/tsoding/eepers";
+    changelog = "https://github.com/tsoding/eepers/blob/${src.rev}/CHANGELOG.txt";
+    license = lib.licenses.mit;
+    maintainers = with lib.maintainers; [ GaetanLepage ];
+    mainProgram = "eepers";
+    platforms = lib.platforms.all;
+  };
+}
diff --git a/pkgs/by-name/ei/eigenlayer/package.nix b/pkgs/by-name/ei/eigenlayer/package.nix
index 484d1007f25a..e7811b782b4e 100644
--- a/pkgs/by-name/ei/eigenlayer/package.nix
+++ b/pkgs/by-name/ei/eigenlayer/package.nix
@@ -6,16 +6,16 @@
 }:
 buildGoModule rec {
   pname = "eigenlayer";
-  version = "0.7.3";
+  version = "0.8.0";
 
   src = fetchFromGitHub {
     owner = "Layr-Labs";
     repo = "eigenlayer-cli";
     rev = "v${version}";
-    hash = "sha256-HsDuDe2ANxL+cTJ3mm1enLoKRewZ9Ey/YajpsLO66JA=";
+    hash = "sha256-bj1+gm11gYwvuut8tUrML7Sg1W5rmGH49tZ4u/76s84=";
   };
 
-  vendorHash = "sha256-aclRbQtGg6yQMJtaO1WjtHLXU7cE1HX1ZDckRIEtw6o=";
+  vendorHash = "sha256-Hws6qlt0O/1xP94ghiIBIF/FwvYGu0fY8LWjVgAp/pQ=";
 
   ldflags = ["-s" "-w"];
   subPackages = ["cmd/eigenlayer"];
diff --git a/pkgs/servers/endlessh-go/default.nix b/pkgs/by-name/en/endlessh-go/package.nix
index 44c574a316f2..988438ac89f7 100644
--- a/pkgs/servers/endlessh-go/default.nix
+++ b/pkgs/by-name/en/endlessh-go/package.nix
@@ -6,20 +6,24 @@
 
 buildGoModule rec {
   pname = "endlessh-go";
-  version = "20230625-3";
+  version = "2024.0119.1";
 
   src = fetchFromGitHub {
     owner = "shizunge";
     repo = "endlessh-go";
     rev = version;
-    sha256 = "sha256-ug01nwlUCKe7DkhSJJ9XUU4QHZeH0A2f/oH6wl2VzIc=";
+    hash = "sha256-CLmlcuRb5dt1oPNdBfx0ql1Zmn/HahcmhVA0k50i6yA=";
   };
 
-  vendorHash = "sha256-n7lzSLtR3bUslT6Q1khsFeofSvwuSaBv3n33+HIdssU=";
+  vendorHash = "sha256-unIyU60IrbiKDIjUf9F2pqqGNIA4gFp5XyQlvx6+xxQ=";
+
+  CGO_ENABLED = 0;
 
   ldflags = [ "-s" "-w" ];
 
-  passthru.tests = nixosTests.endlessh-go;
+  passthru.tests = {
+    inherit (nixosTests) endlessh-go;
+  };
 
   meta = with lib; {
     description = "An implementation of endlessh exporting Prometheus metrics";
diff --git a/pkgs/by-name/en/engage/package.nix b/pkgs/by-name/en/engage/package.nix
index b873b81155ac..4d7cfc5bcdd1 100644
--- a/pkgs/by-name/en/engage/package.nix
+++ b/pkgs/by-name/en/engage/package.nix
@@ -1,7 +1,7 @@
 { lib
 , installShellFiles
 , rustPlatform
-, fetchgit
+, fetchFromGitLab
 }:
 
 let
@@ -11,9 +11,10 @@ in
 rustPlatform.buildRustPackage {
   inherit pname version;
 
-  # fetchFromGitLab doesn't work on GitLab's end for unknown reasons
-  src = fetchgit {
-    url = "https://or.computer.surgery/charles/${pname}";
+  src = fetchFromGitLab {
+    domain = "gitlab.computer.surgery";
+    owner = "charles";
+    repo = pname;
     rev = "v${version}";
     hash = "sha256-niXh63xTpXSp9Wqwfi8hUBKJSClOUSvB+TPCTaqHfZk=";
   };
@@ -39,8 +40,8 @@ rustPlatform.buildRustPackage {
   meta = {
     description = "A task runner with DAG-based parallelism";
     mainProgram = "engage";
-    homepage = "https://or.computer.surgery/charles/engage";
-    changelog = "https://or.computer.surgery/charles/engage/-/blob/v${version}/CHANGELOG.md";
+    homepage = "https://gitlab.computer.surgery/charles/engage";
+    changelog = "https://gitlab.computer.surgery/charles/engage/-/blob/v${version}/CHANGELOG.md";
     license = with lib.licenses; [ asl20 mit ];
     maintainers = with lib.maintainers; [ CobaltCause ];
   };
diff --git a/pkgs/by-name/er/errands/package.nix b/pkgs/by-name/er/errands/package.nix
index afb41ae98e56..f857088e1dd4 100644
--- a/pkgs/by-name/er/errands/package.nix
+++ b/pkgs/by-name/er/errands/package.nix
@@ -1,22 +1,23 @@
-{ lib
-, fetchFromGitHub
-, python3Packages
-, gobject-introspection
-, libadwaita
-, wrapGAppsHook4
-, meson
-, ninja
-, desktop-file-utils
-, pkg-config
-, appstream
-, libsecret
-, gtk4
-, gtksourceview5
+{
+  lib,
+  fetchFromGitHub,
+  python3Packages,
+  gobject-introspection,
+  libadwaita,
+  wrapGAppsHook4,
+  meson,
+  ninja,
+  desktop-file-utils,
+  pkg-config,
+  appstream,
+  libsecret,
+  libportal,
+  gtk4,
+  gtksourceview5,
 }:
-
 python3Packages.buildPythonApplication rec {
   pname = "errands";
-  version = "45.1.9";
+  version = "46.1";
 
   pyproject = false;
 
@@ -24,7 +25,7 @@ python3Packages.buildPythonApplication rec {
     owner = "mrvladus";
     repo = "Errands";
     rev = "refs/tags/${version}";
-    hash = "sha256-q8vmT7XUx3XJjPfbEd/c3HrTENfopl1MqwT0x5OuG0c=";
+    hash = "sha256-v1ifArrfq+vOr7K2L7s/PeXXCH1FLzlvReBKEdXzr3U=";
   };
 
   nativeBuildInputs = [
@@ -40,6 +41,7 @@ python3Packages.buildPythonApplication rec {
 
   buildInputs = [
     libadwaita
+    libportal
     libsecret
     gtksourceview5
   ];
@@ -62,6 +64,9 @@ python3Packages.buildPythonApplication rec {
     homepage = "https://github.com/mrvladus/Errands";
     license = licenses.mit;
     mainProgram = "errands";
-    maintainers = with maintainers; [ sund3RRR ];
+    maintainers = with maintainers; [
+      luftmensch-luftmensch
+      sund3RRR
+    ];
   };
 }
diff --git a/pkgs/by-name/ew/eww/package.nix b/pkgs/by-name/ew/eww/package.nix
index d4dc0eec2f9f..76cd0eb46fab 100644
--- a/pkgs/by-name/ew/eww/package.nix
+++ b/pkgs/by-name/ew/eww/package.nix
@@ -2,7 +2,7 @@
 , rustPlatform
 , fetchFromGitHub
 , pkg-config
-, wrapGAppsHook
+, wrapGAppsHook3
 , gtk3
 , librsvg
 , gtk-layer-shell
@@ -12,18 +12,24 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "eww";
-  version = "0.6.0";
+  version = "0.6.0-unstable-2024-04-26";
 
   src = fetchFromGitHub {
     owner = "elkowar";
     repo = "eww";
-    rev = "refs/tags/v${version}";
-    hash = "sha256-rzDnplFJNiHe+XbxbhZMEhPJMiJsmdVqtZxlxhzzpTk=";
+    # FIXME: change to a release tag once a new release is available
+    # https://github.com/elkowar/eww/pull/1084
+    # using the revision to fix string truncation issue in eww config
+    rev = "2c8811512460ce6cc75e021d8d081813647699dc";
+    hash = "sha256-eDOg5Ink3iWT/B1WpD9po5/UxS4DEaVO4NPIRyjSheM=";
   };
 
-  cargoHash = "sha256-n9nd5E/VO+0BgkhrfQpeihlIkoVQRf6CMiPCK5opvvw=";
+  cargoHash = "sha256-ClnIW7HxbQcC85OyoMhBLFjVtdEUCOARuimfS4uRi+E=";
 
-  nativeBuildInputs = [ pkg-config wrapGAppsHook ];
+  nativeBuildInputs = [
+    pkg-config
+    wrapGAppsHook3
+  ];
 
   buildInputs = [
     gtk3
@@ -32,7 +38,10 @@ rustPlatform.buildRustPackage rec {
     librsvg
   ];
 
-  cargoBuildFlags = [ "--bin" "eww" ];
+  cargoBuildFlags = [
+    "--bin"
+    "eww"
+  ];
 
   cargoTestFlags = cargoBuildFlags;
 
@@ -40,10 +49,23 @@ rustPlatform.buildRustPackage rec {
   RUSTC_BOOTSTRAP = 1;
 
   meta = {
-    description = "ElKowars wacky widgets";
+    description = "A widget system made in Rust to create widgets for any WM";
+    longDescription = ''
+      Eww (ElKowar's Wacky Widgets) is a widget system made in Rust which lets
+      you create your own widgets similarly to how you can in AwesomeWM.
+      The key difference: It is independent of your window manager!
+      It can be configured in yuck and themed using CSS, is very easy
+      to customize and provides all the flexibility you need!
+    '';
     homepage = "https://github.com/elkowar/eww";
     license = lib.licenses.mit;
-    maintainers = with lib.maintainers; [ coffeeispower eclairevoyant figsoda lom w-lfchen ];
+    maintainers = with lib.maintainers; [
+      coffeeispower
+      eclairevoyant
+      figsoda
+      lom
+      w-lfchen
+    ];
     mainProgram = "eww";
     broken = stdenv.isDarwin;
   };
diff --git a/pkgs/by-name/ez/eza/package.nix b/pkgs/by-name/ez/eza/package.nix
index c98ef92ae918..2eb046cf6943 100644
--- a/pkgs/by-name/ez/eza/package.nix
+++ b/pkgs/by-name/ez/eza/package.nix
@@ -17,16 +17,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "eza";
-  version = "0.18.14";
+  version = "0.18.16";
 
   src = fetchFromGitHub {
     owner = "eza-community";
     repo = "eza";
     rev = "v${version}";
-    hash = "sha256-rbaKDOxHttE4SgQdExO8mlgzM0+xpWl/fL39nPinK/o=";
+    hash = "sha256-VaQLPQseLgxzDMnlMsfh5XGhjNYIBrMDBm2JsY2Gou4=";
   };
 
-  cargoHash = "sha256-D0h39p8vV9Vm/UgjtgpRnqaxq4l0OrGxN/1MRpUds2g=";
+  cargoHash = "sha256-zxIGYNdgAJQHng1jfaJPwAlbflJi0W5osAf5F2Is0ws=";
 
   nativeBuildInputs = [ cmake pkg-config installShellFiles pandoc ];
   buildInputs = [ zlib ]
diff --git a/pkgs/by-name/fa/fasole/package.nix b/pkgs/by-name/fa/fasole/package.nix
new file mode 100644
index 000000000000..81df4e88d424
--- /dev/null
+++ b/pkgs/by-name/fa/fasole/package.nix
@@ -0,0 +1,23 @@
+{ lib, buildGoModule, fetchFromGitHub }:
+
+buildGoModule rec {
+  pname = "fasole";
+  version = "1.2.3";
+
+  src = fetchFromGitHub {
+    owner = "ProggerX";
+    repo = "fasole";
+    rev = "v${version}";
+    hash = "sha256-qcCJgz/YXfd8+9ST1U4YFxLLd25D8HrfZzsDGpKgCdM=";
+  };
+
+  vendorHash = "sha256-V5jqsNy4Pu1AKikIZqEXERdggwBe3gXKMJVmgivVT6A=";
+
+  meta = {
+    description = "Minimalist's todo-list";
+    homepage = "https://github.com/ProggerX/fasole";
+    license = lib.licenses.gpl3Only;
+    maintainers = with lib.maintainers; [ proggerx ];
+    mainProgram = "fasole";
+  };
+}
diff --git a/pkgs/by-name/fa/fastahack/package.nix b/pkgs/by-name/fa/fastahack/package.nix
new file mode 100644
index 000000000000..ed8f342007ba
--- /dev/null
+++ b/pkgs/by-name/fa/fastahack/package.nix
@@ -0,0 +1,43 @@
+{
+  lib,
+  stdenv,
+  fetchFromGitHub,
+  runCommand,
+  fastahack,
+}:
+
+stdenv.mkDerivation (finalAttrs: {
+  pname = "fastahack";
+  version = "1.0.0";
+
+  src = fetchFromGitHub {
+    owner = "ekg";
+    repo = "fastahack";
+    rev = "refs/tags/v${finalAttrs.version}";
+    hash = "sha256-SWu2iRwNgdhsn4sH9/3jPNG3+l1xFAHXPq5/ODVd4WY=";
+  };
+
+  installFlags = [ "PREFIX=${placeholder "out"}" ];
+
+  passthru.tests = {
+    simple = runCommand "${finalAttrs.pname}-test" { } ''
+      mkdir $out
+      cp ${fastahack.src}/tests/* $out
+      grep -v ERROR <(${lib.getExe fastahack} $out/correct.fasta 2>&1)
+      grep -v ERROR <(${lib.getExe fastahack} $out/crlf.fasta 2>&1)
+      grep "ERROR: embedded newline " <(${lib.getExe fastahack} $out/embedded_newline.fasta 2>&1)
+      grep "ERROR: mismatched line lengths" <(${lib.getExe fastahack} $out/mismatched_lines.fasta 2>&1)
+      grep -v ERROR <(${lib.getExe fastahack} $out/trailing_newlines.fasta 2>&1)
+    '';
+  };
+
+  meta = {
+    description = "Utilities for indexing and sequence extraction from FASTA files";
+    homepage = "https://github.com/ekg/fastahack";
+    changelog = "https://github.com/ekg/fastahack/releases/tag/v${finalAttrs.version}";
+    license = lib.licenses.mit;
+    maintainers = with lib.maintainers; [ natsukium ];
+    mainProgram = "fastahack";
+    platforms = lib.platforms.unix;
+  };
+})
diff --git a/pkgs/by-name/fa/fastfetch/package.nix b/pkgs/by-name/fa/fastfetch/package.nix
index 9bb0fd4919ea..b4a56bb6cad3 100644
--- a/pkgs/by-name/fa/fastfetch/package.nix
+++ b/pkgs/by-name/fa/fastfetch/package.nix
@@ -11,6 +11,7 @@
 , hwdata
 , imagemagick_light
 , libXrandr
+, libdrm
 , libglvnd
 , libpulseaudio
 , libselinux
@@ -46,13 +47,13 @@ let
 in
 stdenv'.mkDerivation (finalAttrs: {
   pname = "fastfetch";
-  version = "2.10.2";
+  version = "2.12.0";
 
   src = fetchFromGitHub {
     owner = "fastfetch-cli";
     repo = "fastfetch";
     rev = finalAttrs.version;
-    hash = "sha256-1ok2HR9RapS+MF8zuNLhzMZMz0F2AQsKsxNqCT7QF/8=";
+    hash = "sha256-4/9LRXDUVd/8cAxfbyAj9so13bvKe/A9uu0mEYehlj4=";
   };
 
   outputs = [ "out" "man" ];
@@ -77,6 +78,7 @@ stdenv'.mkDerivation (finalAttrs: {
     ddcutil
     glib
     hwdata
+    libdrm
     libpulseaudio
     libselinux
     libsepol
@@ -132,6 +134,9 @@ stdenv'.mkDerivation (finalAttrs: {
     (lib.cmakeBool "ENABLE_XCB_RANDR" x11Support)
     (lib.cmakeBool "ENABLE_XFCONF" (x11Support && (!stdenv.isDarwin)))
     (lib.cmakeBool "ENABLE_XRANDR" x11Support)
+  ] ++ lib.optionals stdenv.isLinux [
+    (lib.cmakeOptionType "filepath" "CUSTOM_PCI_IDS_PATH" "${hwdata}/share/hwdata/pci.ids")
+    (lib.cmakeOptionType "filepath" "CUSTOM_AMDGPU_IDS_PATH" "${libdrm}/share/libdrm/amdgpu.ids")
   ];
 
   postInstall = ''
diff --git a/pkgs/by-name/fe/fennel-ls/package.nix b/pkgs/by-name/fe/fennel-ls/package.nix
index bb23ed3f5a9f..7af59ed320dc 100644
--- a/pkgs/by-name/fe/fennel-ls/package.nix
+++ b/pkgs/by-name/fe/fennel-ls/package.nix
@@ -1,20 +1,24 @@
-{ lib
-, stdenv
-, fetchFromSourcehut
-, lua
-, luaPackages
+{
+  lib,
+  stdenv,
+  fetchFromSourcehut,
+  lua,
+  luaPackages,
 }:
 stdenv.mkDerivation (finalAttrs: {
   pname = "fennel-ls";
-  version = "0.1.0";
+  version = "0.1.2";
 
   src = fetchFromSourcehut {
     owner = "~xerool";
     repo = "fennel-ls";
     rev = finalAttrs.version;
-    hash = "sha256-RW3WFJGwascD4YnnrAm/2LFnVigzgtfzVubLMDW9J5s=";
+    hash = "sha256-8TDJ03x9dkfievbovzMN3JRfIKba3CfzbcRAZOuPbKs=";
   };
-  buildInputs = [ lua luaPackages.fennel ];
+  buildInputs = [
+    lua
+    luaPackages.fennel
+  ];
   makeFlags = [ "PREFIX=$(out)" ];
   installFlags = [ "PREFIX=$(out)" ];
 
@@ -22,8 +26,12 @@ stdenv.mkDerivation (finalAttrs: {
     description = "A language server for intelligent editing of the Fennel Programming Language";
     homepage = "https://git.sr.ht/~xerool/fennel-ls/";
     license = licenses.mit;
-    maintainers = with maintainers; [ yisraeldov ];
-    platforms = lua.meta.platforms;
+    changelog = "https://git.sr.ht/~xerool/fennel-ls/refs/${version}";
+    maintainers = with maintainers; [
+      luftmensch-luftmensch
+      yisraeldov
+    ];
+    inherit (lua.meta) platforms;
     mainProgram = "fennel-ls";
   };
 })
diff --git a/pkgs/by-name/ff/ff2mpv-rust/Cargo.lock b/pkgs/by-name/ff/ff2mpv-rust/Cargo.lock
deleted file mode 100644
index 0142037d2209..000000000000
--- a/pkgs/by-name/ff/ff2mpv-rust/Cargo.lock
+++ /dev/null
@@ -1,112 +0,0 @@
-# This file is automatically @generated by Cargo.
-# It is not intended for manual editing.
-version = 3
-
-[[package]]
-name = "equivalent"
-version = "1.0.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5443807d6dff69373d433ab9ef5378ad8df50ca6298caf15de6e52e24aaf54d5"
-
-[[package]]
-name = "ff2mpv-rust"
-version = "1.1.0"
-dependencies = [
- "serde",
- "serde_json",
-]
-
-[[package]]
-name = "hashbrown"
-version = "0.14.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "290f1a1d9242c78d09ce40a5e87e7554ee637af1351968159f4952f028f75604"
-
-[[package]]
-name = "indexmap"
-version = "2.1.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d530e1a18b1cb4c484e6e34556a0d948706958449fca0cab753d649f2bce3d1f"
-dependencies = [
- "equivalent",
- "hashbrown",
-]
-
-[[package]]
-name = "itoa"
-version = "1.0.10"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b1a46d1a171d865aa5f83f92695765caa047a9b4cbae2cbf37dbd613a793fd4c"
-
-[[package]]
-name = "proc-macro2"
-version = "1.0.76"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "95fc56cda0b5c3325f5fbbd7ff9fda9e02bb00bb3dac51252d2f1bfa1cb8cc8c"
-dependencies = [
- "unicode-ident",
-]
-
-[[package]]
-name = "quote"
-version = "1.0.35"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "291ec9ab5efd934aaf503a6466c5d5251535d108ee747472c3977cc5acc868ef"
-dependencies = [
- "proc-macro2",
-]
-
-[[package]]
-name = "ryu"
-version = "1.0.16"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f98d2aa92eebf49b69786be48e4477826b256916e84a57ff2a4f21923b48eb4c"
-
-[[package]]
-name = "serde"
-version = "1.0.195"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "63261df402c67811e9ac6def069e4786148c4563f4b50fd4bf30aa370d626b02"
-dependencies = [
- "serde_derive",
-]
-
-[[package]]
-name = "serde_derive"
-version = "1.0.195"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "46fe8f8603d81ba86327b23a2e9cdf49e1255fb94a4c5f297f6ee0547178ea2c"
-dependencies = [
- "proc-macro2",
- "quote",
- "syn",
-]
-
-[[package]]
-name = "serde_json"
-version = "1.0.111"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "176e46fa42316f18edd598015a5166857fc835ec732f5215eac6b7bdbf0a84f4"
-dependencies = [
- "indexmap",
- "itoa",
- "ryu",
- "serde",
-]
-
-[[package]]
-name = "syn"
-version = "2.0.48"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0f3531638e407dfc0814761abb7c00a5b54992b849452a0646b7f65c9f770f3f"
-dependencies = [
- "proc-macro2",
- "quote",
- "unicode-ident",
-]
-
-[[package]]
-name = "unicode-ident"
-version = "1.0.12"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3354b9ac3fae1ff6755cb6db53683adb661634f67557942dea4facebec0fee4b"
diff --git a/pkgs/by-name/ff/ff2mpv-rust/package.nix b/pkgs/by-name/ff/ff2mpv-rust/package.nix
index bbc7f303f1d3..8114704b982c 100644
--- a/pkgs/by-name/ff/ff2mpv-rust/package.nix
+++ b/pkgs/by-name/ff/ff2mpv-rust/package.nix
@@ -3,35 +3,59 @@
 , fetchFromGitHub
 }:
 
+let
+  firefoxPaths = [
+    "lib/mozilla/native-messaging-hosts"
+
+    # wrapFirefox only links lib/mozilla path, so this is ineffective
+    # Still the above path works, despite documentation stating otherwise
+    # See: https://librewolf.net/docs/faq/#how-do-i-get-native-messaging-to-work
+    # "lib/librewolf/native-messaging-hosts"
+  ];
+
+  chromiumPaths = [
+    "etc/chromium/native-messaging-hosts"
+    "etc/opt/vivaldi/native-messaging-hosts"
+    "etc/opt/chrome/native-messaging-hosts"
+    "etc/opt/edge/native-messaging-hosts"
+  ];
+in
+
 rustPlatform.buildRustPackage rec {
   pname = "ff2mpv-rust";
-  version = "1.1.1";
+  version = "1.1.3";
 
   src = fetchFromGitHub {
     owner = "ryze312";
     repo = "ff2mpv-rust";
     rev = version;
-    hash = "sha256-sofv5uRLNbMT+w+ZDGjtKqBjYJk+UDzUDQrOiWvl5Hs=";
-  };
-
-  cargoLock = {
-    lockFile = ./Cargo.lock;
+    hash = "sha256-gk3MqoMCau6RTlttTLqFtlXhrYMOf89YFg8aAlh++9s=";
   };
 
-  postPatch = ''
-    ln -s ${./Cargo.lock} Cargo.lock
-  '';
+  cargoHash = "sha256-NjzqzfueqR1MNR23lRYj7IYIa+OHzVhpuAo18avKMUk=";
 
   postInstall = ''
-    mkdir -p $out/lib/mozilla/native-messaging-hosts/
-    $out/bin/ff2mpv-rust manifest > $out/lib/mozilla/native-messaging-hosts/ff2mpv.json
+    $out/bin/ff2mpv-rust manifest > manifest.json
+    $out/bin/ff2mpv-rust manifest_chromium > manifest_chromium.json
+
+    for path in ${toString firefoxPaths}
+    do
+        mkdir -p "$out/$path"
+        cp manifest.json "$out/$path/ff2mpv.json"
+    done
+
+    for path in ${toString chromiumPaths}
+    do
+        mkdir -p "$out/$path"
+        cp manifest_chromium.json "$out/$path/ff2mpv.json"
+    done
   '';
 
   meta = with lib; {
     description = "Native messaging host for ff2mpv written in Rust";
     homepage = "https://github.com/ryze312/ff2mpv-rust";
     license = licenses.gpl3Only;
-    maintainers = with maintainers; [ arthsmn ];
+    maintainers = with maintainers; [ arthsmn ryze ];
     mainProgram = "ff2mpv-rust";
   };
 }
diff --git a/pkgs/by-name/ff/fflogs/package.nix b/pkgs/by-name/ff/fflogs/package.nix
index 964805a549a5..350b62c224fb 100644
--- a/pkgs/by-name/ff/fflogs/package.nix
+++ b/pkgs/by-name/ff/fflogs/package.nix
@@ -5,10 +5,10 @@
 
 let
   pname = "fflogs";
-  version = "8.3.42";
+  version = "8.4.0";
   src = fetchurl {
     url = "https://github.com/RPGLogs/Uploaders-fflogs/releases/download/v${version}/fflogs-v${version}.AppImage";
-    hash = "sha256-Bc4C1cOOHdWkw2mHn3Q/2fcKuyCFDvOq1jLee2WPsyI=";
+    hash = "sha256-dj6WUatWJBQZwNc8uHJYTRTpbhAmJowJmfUzbB2qbnw=";
   };
   extracted = appimageTools.extractType2 { inherit pname version src; };
 in
diff --git a/pkgs/by-name/fi/files-cli/package.nix b/pkgs/by-name/fi/files-cli/package.nix
index cab80e4e3458..886bf6297c85 100644
--- a/pkgs/by-name/fi/files-cli/package.nix
+++ b/pkgs/by-name/fi/files-cli/package.nix
@@ -7,16 +7,16 @@
 
 buildGoModule rec {
   pname = "files-cli";
-  version = "2.13.14";
+  version = "2.13.41";
 
   src = fetchFromGitHub {
     repo = "files-cli";
     owner = "files-com";
     rev = "v${version}";
-    hash = "sha256-fECf3s9XKJq/DOyypfMgFRJjEIMKMUeWgCJca88vqJw=";
+    hash = "sha256-WW6E0K3HOi8gtBwcmN9syV4wM73BPGyXbv3t4ZJjoIc=";
   };
 
-  vendorHash = "sha256-adPPXElmQgnFOSWZCoQ65MheYdT6lyqhIICA2Ci7+b4=";
+  vendorHash = "sha256-LdebAbdbiUX0xw1EJKCzK1jdt5+FgoZQBPI0apZkcsc=";
 
   ldflags = [
     "-s"
diff --git a/pkgs/by-name/fl/flac123/package.nix b/pkgs/by-name/fl/flac123/package.nix
new file mode 100644
index 000000000000..2a042366cc25
--- /dev/null
+++ b/pkgs/by-name/fl/flac123/package.nix
@@ -0,0 +1,39 @@
+{
+  lib,
+  stdenv,
+  fetchFromGitHub,
+  autoreconfHook,
+  flac,
+  libao,
+  libogg,
+  popt,
+}:
+
+stdenv.mkDerivation (finalAttrs: {
+  pname = "flac123";
+  version = "2.1.1";
+
+  src = fetchFromGitHub {
+    owner = "flac123";
+    repo = "flac123";
+    rev = "v${finalAttrs.version}";
+    hash = "sha256-LtL69t2r9TlIkpQWZLge8ib7NZ5rvLW6JllG2UM16Kw=";
+  };
+
+  nativeBuildInputs = [ autoreconfHook ];
+  buildInputs = [
+    flac
+    libao
+    libogg
+    popt
+  ];
+
+  meta = {
+    homepage = "https://github.com/flac123/flac123";
+    description = "A command-line program for playing FLAC audio files";
+    license = lib.licenses.gpl2Plus;
+    maintainers = with lib.maintainers; [ kiike ];
+    mainProgram = "flac123";
+    platforms = lib.platforms.unix;
+  };
+})
diff --git a/pkgs/by-name/fl/flarectl/package.nix b/pkgs/by-name/fl/flarectl/package.nix
index 98f5f4641262..c094fe961af9 100644
--- a/pkgs/by-name/fl/flarectl/package.nix
+++ b/pkgs/by-name/fl/flarectl/package.nix
@@ -5,16 +5,16 @@
 
 buildGoModule rec {
   pname = "flarectl";
-  version = "0.93.0";
+  version = "0.95.0";
 
   src = fetchFromGitHub {
     owner = "cloudflare";
     repo = "cloudflare-go";
     rev = "v${version}";
-    hash = "sha256-XN/GRay5fJ2EjGHguG9i4ENCRBPZQcwQJg/2ka0HyaE=";
+    hash = "sha256-GcmFRtQ8aqicvawCpFDo+oheUSOgKewBETIizPKcyGU=";
   };
 
-  vendorHash = "sha256-/81Onrs+qyKEt79DtfX4EDDVxhzB0uqaHa3X+GbupWQ=";
+  vendorHash = "sha256-Jtap4hGwNr8lpXi6huGikL4iUSP242cIiFyvGveszq8=";
 
   subPackages = [ "cmd/flarectl" ];
 
diff --git a/pkgs/servers/mqtt/flashmq/default.nix b/pkgs/by-name/fl/flashmq/package.nix
index 8a579d948881..1b243197b8b5 100644
--- a/pkgs/servers/mqtt/flashmq/default.nix
+++ b/pkgs/by-name/fl/flashmq/package.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "flashmq";
-  version = "1.9.1";
+  version = "1.13.0";
 
   src = fetchFromGitHub {
     owner = "halfgaar";
     repo = "FlashMQ";
     rev = "v${version}";
-    hash = "sha256-LxmD/NfD4OJR77erwRnHoe6VRiytqzMlWvRtgY8RD94=";
+    hash = "sha256-MoBLV39auDz5oicpX6CVvrHMifGpUozocq4E3J+8xWA=";
   };
 
   nativeBuildInputs = [ cmake installShellFiles ];
diff --git a/pkgs/by-name/fl/flashprog/package.nix b/pkgs/by-name/fl/flashprog/package.nix
index 509c0fb5504a..fe04a6586cd8 100644
--- a/pkgs/by-name/fl/flashprog/package.nix
+++ b/pkgs/by-name/fl/flashprog/package.nix
@@ -12,14 +12,14 @@
 , withGpio ? stdenv.isLinux
 }:
 
-stdenv.mkDerivation {
+stdenv.mkDerivation (finalAttrs: {
   pname = "flashprog";
-  version = "1.0.1";
+  version = "1.1";
 
   src = fetchgit {
     url = "https://review.sourcearcade.org/flashprog";
-    rev = "2ca11f9a4101ea230081d448ab2b570425b7f0bd";
-    hash = "sha256-pm9g9iOJAKnzzY9couzt8RmqZFbIpKcO++zsUJ9o49U=";
+    rev = "v${finalAttrs.version}";
+    hash = "sha256-CLwaGxVOo8FJaWfvrJ2hAm7XonP5nHT6YTsaw7scKCM=";
   };
 
   nativeBuildInputs = [
@@ -60,4 +60,4 @@ stdenv.mkDerivation {
     platforms = platforms.all;
     mainProgram = "flashprog";
   };
-}
+})
diff --git a/pkgs/by-name/fl/flet-client-flutter/package.nix b/pkgs/by-name/fl/flet-client-flutter/package.nix
index 8404c0ff24f5..949e6f929575 100644
--- a/pkgs/by-name/fl/flet-client-flutter/package.nix
+++ b/pkgs/by-name/fl/flet-client-flutter/package.nix
@@ -7,20 +7,24 @@
 , makeWrapper
 , mimalloc
 , orc
-, nix-update-script
+, yq
+, runCommand
+, gitUpdater
 , mpv-unwrapped
 , libplacebo
+, _experimental-update-script-combinators
+, flet-client-flutter
 }:
 
 flutter.buildFlutterApplication rec {
   pname = "flet-client-flutter";
-  version = "0.22.0";
+  version = "0.22.1";
 
   src = fetchFromGitHub {
     owner = "flet-dev";
     repo = "flet";
     rev = "v${version}";
-    hash = "sha256-uN6PxgltbGlSocF561W6Dpo9cPOsvGAsRwZ8nER+5x4=";
+    hash = "sha256-mjqPIm4LspW1LB4H08FVwEN0JOwTPTLaUxOjZ3n6u8A=";
   };
 
   sourceRoot = "${src.name}/client";
@@ -51,7 +55,19 @@ flutter.buildFlutterApplication rec {
     ++ libplacebo.buildInputs
   ;
 
-  passthru.updateScript = nix-update-script { };
+  passthru = {
+    pubspecSource = runCommand "pubspec.lock.json" {
+        buildInputs = [ yq ];
+        inherit (flet-client-flutter) src;
+      } ''
+      cat $src/client/pubspec.lock | yq > $out
+    '';
+
+    updateScript = _experimental-update-script-combinators.sequence [
+      (gitUpdater { rev-prefix = "v"; })
+      (_experimental-update-script-combinators.copyAttrOutputToFile "flet-client-flutter.pubspecSource" ./pubspec.lock.json)
+    ];
+  };
 
   meta = {
     description = "A framework that enables you to easily build realtime web, mobile, and desktop apps in Python. The frontend part";
diff --git a/pkgs/by-name/fl/flet-client-flutter/pubspec.lock.json b/pkgs/by-name/fl/flet-client-flutter/pubspec.lock.json
index bc937946c2b8..9fbdb49633be 100644
--- a/pkgs/by-name/fl/flet-client-flutter/pubspec.lock.json
+++ b/pkgs/by-name/fl/flet-client-flutter/pubspec.lock.json
@@ -170,6 +170,16 @@
       "source": "hosted",
       "version": "3.1.1"
     },
+    "cross_file": {
+      "dependency": "transitive",
+      "description": {
+        "name": "cross_file",
+        "sha256": "55d7b444feb71301ef6b8838dbc1ae02e63dd48c8773f3810ff53bb1e2945b32",
+        "url": "https://pub.dev"
+      },
+      "source": "hosted",
+      "version": "0.3.4+1"
+    },
     "crypto": {
       "dependency": "transitive",
       "description": {
@@ -244,11 +254,11 @@
       "dependency": "transitive",
       "description": {
         "name": "file_picker",
-        "sha256": "4e42aacde3b993c5947467ab640882c56947d9d27342a5b6f2895b23956954a6",
+        "sha256": "29c90806ac5f5fb896547720b73b17ee9aed9bba540dc5d91fe29f8c5745b10a",
         "url": "https://pub.dev"
       },
       "source": "hosted",
-      "version": "6.1.1"
+      "version": "8.0.3"
     },
     "fixnum": {
       "dependency": "transitive",
@@ -277,7 +287,7 @@
         "relative": true
       },
       "source": "path",
-      "version": "0.22.0"
+      "version": "0.22.1"
     },
     "flet_audio": {
       "dependency": "direct main",
@@ -286,7 +296,7 @@
         "relative": true
       },
       "source": "path",
-      "version": "0.22.0"
+      "version": "0.22.1"
     },
     "flet_audio_recorder": {
       "dependency": "direct main",
@@ -295,7 +305,7 @@
         "relative": true
       },
       "source": "path",
-      "version": "0.22.0"
+      "version": "0.22.1"
     },
     "flet_lottie": {
       "dependency": "direct main",
@@ -304,7 +314,7 @@
         "relative": true
       },
       "source": "path",
-      "version": "0.22.0"
+      "version": "0.22.1"
     },
     "flet_rive": {
       "dependency": "direct main",
@@ -313,7 +323,7 @@
         "relative": true
       },
       "source": "path",
-      "version": "0.22.0"
+      "version": "0.22.1"
     },
     "flet_video": {
       "dependency": "direct main",
@@ -322,7 +332,7 @@
         "relative": true
       },
       "source": "path",
-      "version": "0.22.0"
+      "version": "0.22.1"
     },
     "flet_webview": {
       "dependency": "direct main",
@@ -331,7 +341,7 @@
         "relative": true
       },
       "source": "path",
-      "version": "0.22.0"
+      "version": "0.22.1"
     },
     "flutter": {
       "dependency": "direct main",
@@ -1445,11 +1455,11 @@
       "dependency": "transitive",
       "description": {
         "name": "web",
-        "sha256": "1d9158c616048c38f712a6646e317a3426da10e884447626167240d45209cbad",
+        "sha256": "97da13628db363c635202ad97068d47c5b8aa555808e7a9411963c533b449b27",
         "url": "https://pub.dev"
       },
       "source": "hosted",
-      "version": "0.5.0"
+      "version": "0.5.1"
     },
     "web_socket_channel": {
       "dependency": "transitive",
diff --git a/pkgs/applications/misc/flowtime/default.nix b/pkgs/by-name/fl/flowtime/package.nix
index 06962d75452b..d372d1d45379 100644
--- a/pkgs/applications/misc/flowtime/default.nix
+++ b/pkgs/by-name/fl/flowtime/package.nix
@@ -17,13 +17,13 @@
 
 stdenv.mkDerivation rec {
   pname = "flowtime";
-  version = "6.1";
+  version = "6.5";
 
   src = fetchFromGitHub {
     owner = "Diego-Ivan";
     repo = "Flowtime";
     rev = "v${version}";
-    hash = "sha256-wTqHTkt1O3Da2fzxf6DiQjrqOt65ZEhLOkGK5C6HzIk=";
+    hash = "sha256-J0Pscv0ZOpA/LV2mPTLOmDPQpfZhizTghatGnrJHToE=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/by-name/fl/flye/package.nix b/pkgs/by-name/fl/flye/package.nix
index ccbb56eb6795..76ea84a1c9a0 100644
--- a/pkgs/by-name/fl/flye/package.nix
+++ b/pkgs/by-name/fl/flye/package.nix
@@ -10,13 +10,13 @@
 
 python3Packages.buildPythonApplication rec {
   pname = "flye";
-  version = "2.9.3";
+  version = "2.9.4";
 
   src = fetchFromGitHub {
     owner = "fenderglass";
     repo = "flye";
-    rev = version;
-    hash = "sha256-IALqtIPmvDYoH4w/tk2WB/P/pAcKXxgnsu9PFp+wIes=";
+    rev = "refs/tags/${version}";
+    hash = "sha256-lwiY0VTEsLMMXt1VowsS3jj44v30Z766xNRwQtQKr10=";
   };
 
   nativeCheckInputs = [ python3Packages.pytestCheckHook ];
diff --git a/pkgs/tools/misc/fontfor/default.nix b/pkgs/by-name/fo/fontfor/package.nix
index b973317b722e..d2a574780937 100644
--- a/pkgs/tools/misc/fontfor/default.nix
+++ b/pkgs/by-name/fo/fontfor/package.nix
@@ -1,22 +1,24 @@
-{ lib
-, rustPlatform
-, fetchFromGitHub
-, cmake
-, pkg-config
-, expat
-, fontconfig
-, freetype
+{
+  lib,
+  rustPlatform,
+  fetchFromGitHub,
+  cmake,
+  pkg-config,
+  expat,
+  fontconfig,
+  freetype,
+  nix-update-script,
 }:
 
 rustPlatform.buildRustPackage rec {
   pname = "fontfor";
-  version = "0.4.1";
+  version = "0.4.3";
 
   src = fetchFromGitHub {
     owner = "7sDream";
     repo = "fontfor";
     rev = "v${version}";
-    sha256 = "sha256-/UoZ+5X6Csoyqc+RSP0Hree7NtCDs7BjsqcpALxAazc=";
+    hash = "sha256-gJl9SPL/KeYFzKIjwWPVR1iVy6h/W7OP7xE7krhYaY8=";
   };
 
   nativeBuildInputs = [
@@ -29,7 +31,9 @@ rustPlatform.buildRustPackage rec {
     freetype
   ];
 
-  cargoHash = "sha256-j1Qf0IKlAUEyiGAUoF7IlEbPIv2pGkn+YMCoFdF9oUE=";
+  cargoHash = "sha256-9Ac2NuUFfluXN4NOT645gszGApBIsFxQiTZDf8PHbvo=";
+
+  passthru.updateScript = nix-update-script { };
 
   meta = with lib; {
     description = "Find fonts which can show a specified character and preview them in browser";
diff --git a/pkgs/by-name/fo/fooyin/package.nix b/pkgs/by-name/fo/fooyin/package.nix
new file mode 100644
index 000000000000..afa5bf4047c6
--- /dev/null
+++ b/pkgs/by-name/fo/fooyin/package.nix
@@ -0,0 +1,61 @@
+{ stdenv
+, lib
+, fetchFromGitHub
+, cmake
+, pkg-config
+, alsa-lib
+, ffmpeg
+, kdePackages
+, kdsingleapplication
+, openssl
+, pipewire
+, taglib
+, zlib
+}:
+
+stdenv.mkDerivation (finalAttrs: {
+  pname = "fooyin";
+  version = "0.4.2";
+
+  src = fetchFromGitHub {
+    owner = "ludouzi";
+    repo = "fooyin";
+    rev = "v" + finalAttrs.version;
+    hash = "sha256-1U7eqXVcp0lO/X92oNQ3mWdozgJ1eroQPojscSWH6+I=";
+  };
+
+  buildInputs = [
+    alsa-lib
+    ffmpeg
+    kdsingleapplication
+    pipewire
+    kdePackages.qcoro
+    kdePackages.qtbase
+    kdePackages.qtsvg
+    taglib
+  ];
+
+  nativeBuildInputs = [
+    cmake
+    pkg-config
+    kdePackages.qttools
+    kdePackages.wrapQtAppsHook
+  ];
+
+  cmakeFlags = [
+    (lib.cmakeBool "BUILD_TESTING" (finalAttrs.doCheck or false))
+    # we need INSTALL_FHS to be true as the various artifacts are otherwise just dumped in the root
+    # of $out and the fixupPhase cleans things up anyway
+    (lib.cmakeBool "INSTALL_FHS" true)
+  ];
+
+  env.LANG = "C.UTF-8";
+
+  meta = with lib; {
+    description = "A customisable music player";
+    mainProgram = "fooyin";
+    license = licenses.gpl3Only;
+    maintainers = with maintainers; [ peterhoeg ];
+    platforms = platforms.all;
+  };
+})
diff --git a/pkgs/by-name/fo/forbidden/package.nix b/pkgs/by-name/fo/forbidden/package.nix
index adbd83ada4b0..57c1aa9fa7ec 100644
--- a/pkgs/by-name/fo/forbidden/package.nix
+++ b/pkgs/by-name/fo/forbidden/package.nix
@@ -5,23 +5,17 @@
 
 python3.pkgs.buildPythonApplication rec {
   pname = "forbidden";
-  version = "10.8";
+  version = "11.2";
   pyproject = true;
 
   src = fetchFromGitHub {
     owner = "ivan-sincek";
     repo = "forbidden";
     rev = "refs/tags/v${version}";
-    hash = "sha256-jitmgN+We6m5CTgRc1NYwZkg5GYvD6ZlJ8FKtTa+rAY=";
+    hash = "sha256-XRN5zQgyBbMxDKAutW3XNIAbBVdAeXZtxsNbmjLyKRc=";
   };
 
-  pythonRemoveDeps = [
-    # https://github.com/ivan-sincek/forbidden/pull/3
-    "argparse"
-  ];
-
   build-system = with python3.pkgs; [
-    pythonRelaxDepsHook
     setuptools
   ];
 
diff --git a/pkgs/by-name/fo/forge-sparks/package.nix b/pkgs/by-name/fo/forge-sparks/package.nix
index 5a1601004706..f7fb36ad2c60 100644
--- a/pkgs/by-name/fo/forge-sparks/package.nix
+++ b/pkgs/by-name/fo/forge-sparks/package.nix
@@ -17,15 +17,15 @@
 , wrapGAppsHook4
 }:
 
-stdenv.mkDerivation rec {
+stdenv.mkDerivation (finalAttrs: {
   pname = "forge-sparks";
-  version = "0.2.0";
+  version = "0.3.0";
 
   src = fetchFromGitHub {
     owner = "rafaelmardojai";
-    repo = pname;
-    rev = version;
-    hash = "sha256-kUvUAJLCqIQpjm8RzAZaHVkdDCD9uKSQz9cYN60xS+4=";
+    repo = "forge-sparks";
+    rev = finalAttrs.version;
+    hash = "sha256-1Aq9Bv1UEckoA9IkQ9++rM6623GD41hgBJoeXKr2ipM=";
     fetchSubmodules = true;
   };
 
@@ -59,12 +59,12 @@ stdenv.mkDerivation rec {
   ];
 
   meta = with lib; {
+    changelog = "https://github.com/rafaelmardojai/forge-sparks/releases/tag/${finalAttrs.version}";
     description = "Get Git forges notifications";
     homepage = "https://github.com/rafaelmardojai/forge-sparks";
-    changelog = "https://github.com/rafaelmardojai/forge-sparks/releases/tag/${version}";
     license = licenses.mit;
-    maintainers = with maintainers; [ michaelgrahamevans ];
     mainProgram = "forge-sparks";
+    maintainers = with maintainers; [ michaelgrahamevans ];
     platforms = platforms.linux;
   };
-}
+})
diff --git a/pkgs/applications/networking/p2p/fragments/default.nix b/pkgs/by-name/fr/fragments/package.nix
index edb31ba66957..7976a2add11b 100644
--- a/pkgs/applications/networking/p2p/fragments/default.nix
+++ b/pkgs/by-name/fr/fragments/package.nix
@@ -1,7 +1,6 @@
 { lib
 , stdenv
 , fetchFromGitLab
-, fetchpatch
 , appstream-glib
 , cargo
 , dbus
@@ -17,36 +16,26 @@
 , rustPlatform
 , rustc
 , sqlite
-, transmission
+, transmission_4
 , wrapGAppsHook4
 }:
 
-let
-  patchedTransmission = transmission.overrideAttrs (oldAttrs: {
-    patches = (oldAttrs.patches or []) ++ [
-      (fetchpatch {
-        url = "https://raw.githubusercontent.com/flathub/de.haeckerfelix.Fragments/2aee477c8e26a24570f8dbbdbd1c49e017ae32eb/transmission_pdeathsig.patch";
-        sha256 = "sha256-/rCoA566tMmzqcIfffC082Y56TwEyyQJ0knxymtscbA=";
-      })
-    ];
-  });
-in stdenv.mkDerivation rec {
+stdenv.mkDerivation rec {
   pname = "fragments";
-  version = "2.1.1";
+  version = "3.0.0";
 
   src = fetchFromGitLab {
     domain = "gitlab.gnome.org";
     owner = "World";
     repo = "Fragments";
     rev = version;
-    sha256 = "sha256-tZcVw4rxmNPcKKgyRB+alEktktZfKK+7FYUVAAGA9bw=";
+    hash = "sha256-HtulyB1XYBsA595ghJN0EmyJT7DjGUbtJKaMGM3f0I8=";
   };
 
-  patches = [];
   cargoDeps = rustPlatform.fetchCargoTarball {
-    inherit src patches;
+    inherit src;
     name = "${pname}-${version}";
-    hash = "sha256-nqVaYnL3jKGBsAsakIkgwksjH4yuMhwCQe0zq3jgjnA=";
+    hash = "sha256-EUE+Qc+MqsKPqHMYJflZQ6zm3ErW+KLuJq/7HEBf8VM=";
   };
 
   nativeBuildInputs = [
@@ -71,9 +60,9 @@ in stdenv.mkDerivation rec {
     sqlite
   ];
 
-  preFixup =  ''
+  preFixup = ''
     gappsWrapperArgs+=(
-      --prefix PATH : "${lib.makeBinPath [ patchedTransmission ]}"
+      --prefix PATH : "${lib.makeBinPath [ transmission_4 ]}"
     )
   '';
 
diff --git a/pkgs/by-name/fr/frankenphp/package.nix b/pkgs/by-name/fr/frankenphp/package.nix
index e293e5c48fa3..45b0fed97129 100644
--- a/pkgs/by-name/fr/frankenphp/package.nix
+++ b/pkgs/by-name/fr/frankenphp/package.nix
@@ -7,6 +7,7 @@
 , testers
 , frankenphp
 , darwin
+, libiconv
 , pkg-config
 , makeBinaryWrapper
 , runCommand
@@ -26,13 +27,13 @@ let
   pieBuild = stdenv.hostPlatform.isMusl;
 in buildGoModule rec {
   pname = "frankenphp";
-  version = "1.1.4";
+  version = "1.1.5";
 
   src = fetchFromGitHub {
     owner = "dunglas";
     repo = "frankenphp";
     rev = "v${version}";
-    hash = "sha256-I1O5ZujFRIgbe+6k1FmCedywYwN1zA+owU+tLBtN7nU=";
+    hash = "sha256-W+9p/9qT7v1jq6m/gRgfw4AmnPRZVY3UixXaypUVn4E=";
   };
 
   sourceRoot = "${src.name}/caddy";
@@ -40,7 +41,7 @@ in buildGoModule rec {
   # frankenphp requires C code that would be removed with `go mod tidy`
   # https://github.com/golang/go/issues/26366
   proxyVendor = true;
-  vendorHash = "sha256-u+7pUt6SmNI/smE3l3CQl+e/ZsVRSeVJgprR0aslrMI=";
+  vendorHash = "sha256-eNW03oBaON2X5X2ZbM3Ly5T+bJzSDhEYajY5LaZhwdQ=";
 
   buildInputs = [ phpUnwrapped brotli ] ++ phpUnwrapped.buildInputs;
   nativeBuildInputs = [ makeBinaryWrapper ] ++ lib.optionals stdenv.isDarwin [ pkg-config darwin.cctools darwin.autoSignDarwinBinariesHook ];
@@ -64,7 +65,7 @@ in buildGoModule rec {
   '' + lib.optionalString stdenv.isDarwin ''
     # replace hard-code homebrew path
     substituteInPlace ../frankenphp.go \
-      --replace "-L/opt/homebrew/opt/libiconv/lib" "-L${darwin.libiconv}/lib"
+      --replace "-L/opt/homebrew/opt/libiconv/lib" "-L${libiconv}/lib"
   '';
 
   preFixup = ''
diff --git a/pkgs/by-name/fr/free42/package.nix b/pkgs/by-name/fr/free42/package.nix
index 415f6f6f8b9d..679e43fc1d2c 100644
--- a/pkgs/by-name/fr/free42/package.nix
+++ b/pkgs/by-name/fr/free42/package.nix
@@ -10,13 +10,13 @@
 
 stdenv.mkDerivation (finalAttrs: {
   pname = "free42";
-  version = "3.1.5";
+  version = "3.1.8";
 
   src = fetchFromGitHub {
     owner = "thomasokken";
     repo = "free42";
     rev = "v${finalAttrs.version}";
-    hash = "sha256-YFTmEyOd/r8Pbj+PzD+VYkkB0gqDJ4wteLBTdwa1qcE=";
+    hash = "sha256-z1HlI2e3mCRJ/sWMdsLF7IpcvTh+Zlrk77M8gaJXMzQ=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/by-name/fr/freecad/package.nix b/pkgs/by-name/fr/freecad/package.nix
index 436d94bd0f98..0e50640be212 100644
--- a/pkgs/by-name/fr/freecad/package.nix
+++ b/pkgs/by-name/fr/freecad/package.nix
@@ -19,7 +19,7 @@
 , mpi
 , ninja
 , ode
-, opencascade-occt
+, opencascade-occt_7_6
 , pkg-config
 , python3Packages
 , runCommand  # for passthru.tests
@@ -27,12 +27,13 @@
 , stdenv
 , swig
 , vtk
-, wrapGAppsHook
+, wrapGAppsHook3
 , xercesc
 , zlib
 }:
 
 let
+  opencascade-occt = opencascade-occt_7_6;
   boost = python3Packages.boost;
   inherit (libsForQt5)
     qtbase
@@ -73,7 +74,7 @@ stdenv.mkDerivation (finalAttrs: {
     pyside2-tools
     gfortran
     wrapQtAppsHook
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
diff --git a/pkgs/by-name/fr/freefilesync/package.nix b/pkgs/by-name/fr/freefilesync/package.nix
index 529516bb0da9..c19efa63a4af 100644
--- a/pkgs/by-name/fr/freefilesync/package.nix
+++ b/pkgs/by-name/fr/freefilesync/package.nix
@@ -5,7 +5,7 @@
 , fetchDebianPatch
 , copyDesktopItems
 , pkg-config
-, wrapGAppsHook
+, wrapGAppsHook3
 , unzip
 , curl
 , glib
@@ -18,7 +18,7 @@
 
 stdenv.mkDerivation (finalAttrs: {
   pname = "freefilesync";
-  version = "13.5";
+  version = "13.6";
 
   src = fetchurl {
     url = "https://freefilesync.org/download/FreeFileSync_${finalAttrs.version}_Source.zip";
@@ -27,7 +27,7 @@ stdenv.mkDerivation (finalAttrs: {
       rm -f $out
       tryDownload "$url"
     '';
-    hash = "sha256-8At8QobAQR2mQnFjFSPTkEuxmP9M8gINP0qH28J3ynY=";
+    hash = "sha256-lJ4LiisUy8w6OPd44wJufH+ol1YwjOfFQfqzj3HWb2w=";
   };
 
   sourceRoot = ".";
@@ -56,20 +56,12 @@ stdenv.mkDerivation (finalAttrs: {
       patch = "Disable_wxWidgets_uncaught_exception_handling.patch";
       hash = "sha256-Fem7eDDKSqPFU/t12Jco8OmYC8FM9JgB4/QVy/ouvbI=";
     })
-    # Disable update patch
-    (fetchDebianPatch {
-      pname = "freefilesync";
-      version = "13.3";
-      debianRevision = "1";
-      patch = "ffs_no_check_updates.patch";
-      hash = "sha256-lPyHpxhZz8BSnDI8QfAzKpKwVkp2jiF49RWjKNuZGII=";
-    })
   ];
 
   nativeBuildInputs = [
     copyDesktopItems
     pkg-config
-    wrapGAppsHook
+    wrapGAppsHook3
     unzip
   ];
 
diff --git a/pkgs/by-name/fr/fretboard/package.nix b/pkgs/by-name/fr/fretboard/package.nix
index fa772d61867f..a4582832ae2d 100644
--- a/pkgs/by-name/fr/fretboard/package.nix
+++ b/pkgs/by-name/fr/fretboard/package.nix
@@ -16,21 +16,21 @@
 , wrapGAppsHook4
 }:
 
-stdenv.mkDerivation rec {
+stdenv.mkDerivation (finalAttrs: {
   pname = "fretboard";
-  version = "5.4";
+  version = "6.1";
 
   src = fetchFromGitHub {
     owner = "bragefuglseth";
     repo = "fretboard";
-    rev = "v${version}";
-    hash = "sha256-GqnwAB7hmg2QLwSWqrZtTp6+FybK8/v4GZx/lMi0dGY=";
+    rev = "v${finalAttrs.version}";
+    hash = "sha256-Jr7DxoOmggcAxU1y+2jXZvMgAf9SDSA7t5Jr2AYZV7s=";
   };
 
   cargoDeps = rustPlatform.fetchCargoTarball {
-    inherit src;
-    name = "${pname}-${version}";
-    hash = "sha256-sGvb1+HKIqNSgCV9UzkCrkGrpjA34Pe9eq2/w3K/w/E=";
+    src = finalAttrs.src;
+    name = "${finalAttrs.pname}-${finalAttrs.version}";
+    hash = "sha256-P7dafWBaHVrxh30YxKiraKPMjtmGTTNd8qvoJ1M2vKI=";
   };
 
   nativeBuildInputs = [
@@ -58,12 +58,12 @@ stdenv.mkDerivation rec {
   ]);
 
   meta = with lib; {
+    changelog = "https://github.com/bragefuglseth/fretboard/releases/tag/v${finalAttrs.version}";
     description = "Look up guitar chords";
-    homepage = "https://github.com/bragefuglseth/fretboard";
-    changelog = "https://github.com/bragefuglseth/fretboard/releases/tag/v${version}";
+    homepage = "https://apps.gnome.org/Fretboard/";
     license = licenses.gpl3Plus;
-    maintainers = with maintainers; [ michaelgrahamevans ];
     mainProgram = "fretboard";
+    maintainers = with maintainers; [ michaelgrahamevans ];
     platforms = platforms.unix;
   };
-}
+})
diff --git a/pkgs/by-name/ft/fte/package.nix b/pkgs/by-name/ft/fte/package.nix
new file mode 100644
index 000000000000..149bb4adf9b5
--- /dev/null
+++ b/pkgs/by-name/ft/fte/package.nix
@@ -0,0 +1,59 @@
+{
+  lib,
+  stdenv,
+  fetchurl,
+  unzip,
+  perl,
+  libX11,
+  libXpm,
+  gpm,
+  ncurses,
+  slang,
+}:
+
+stdenv.mkDerivation (finalAttrs: {
+  pname = "fte";
+  version = "0.50.02";
+
+  ftesrc = fetchurl {
+    url = "mirror://sourceforge/fte/fte-20110708-src.zip";
+    hash = "sha256-1jEcVC0/DyiQpUpmHDtnIo4nuJS0Fk6frynwFPJUSZ4=";
+  };
+
+  ftecommon = fetchurl {
+    url = "mirror://sourceforge/fte/fte-20110708-common.zip";
+    hash = "sha256-WEEVeLMZWHZfQtK/Kbeu3Z+RaVXCwZyWkJocA+Akavc=";
+  };
+
+  src = [
+    finalAttrs.ftesrc
+    finalAttrs.ftecommon
+  ];
+
+  nativeBuildInputs = [ unzip ];
+  buildInputs = [
+    perl
+    libX11
+    libXpm
+    gpm
+    ncurses
+    slang
+  ];
+
+  hardeningDisable = [ "all" ];
+  enableParallelBuilding = true;
+
+  env.NIX_CFLAGS_COMPILE = "-DHAVE_STRLCAT -DHAVE_STRLCPY";
+  installFlags = [ "INSTALL_NONROOT=1" ];
+
+  # not setting it cause fte to not find xfte
+  makeFlags = [ "PREFIX=${placeholder "out"}" ];
+
+  meta = {
+    description = "A free text editor for developers";
+    homepage = "https://fte.sourceforge.net/";
+    license = lib.licenses.gpl2;
+    maintainers = with lib.maintainers; [ sigmanificient ];
+    platforms = lib.platforms.all;
+  };
+})
diff --git a/pkgs/applications/audio/furnace/default.nix b/pkgs/by-name/fu/furnace/package.nix
index cc52c197974d..10d55b9871ae 100644
--- a/pkgs/applications/audio/furnace/default.nix
+++ b/pkgs/by-name/fu/furnace/package.nix
@@ -8,6 +8,7 @@
 , makeWrapper
 , fftw
 , fmt_8
+, freetype
 , libsndfile
 , libX11
 , rtmidi
@@ -16,7 +17,7 @@
 , withJACK ? stdenv.hostPlatform.isUnix
 , libjack2
 , withGUI ? true
-, Cocoa
+, darwin
 , portaudio
 , alsa-lib
 # Enable GL/GLES rendering
@@ -25,23 +26,23 @@
 , preferGLES ? stdenv.hostPlatform.isAarch
 }:
 
-stdenv.mkDerivation rec {
+stdenv.mkDerivation (finalAttrs: {
   pname = "furnace";
-  version = "0.6.2";
+  version = "0.6.3";
 
   src = fetchFromGitHub {
     owner = "tildearrow";
     repo = "furnace";
-    rev = "v${version}";
+    rev = "v${finalAttrs.version}";
     fetchSubmodules = true;
-    hash = "sha256-Pv9Sx+bdoy8uV5o9i1rUSuokwQVA8EPYFkZXM8Fynmk=";
+    hash = "sha256-z0WvJvkry/9T4Fgp2fX83CxPpDBoOPNVtyX2OUk26FI=";
   };
 
   postPatch = lib.optionalString stdenv.hostPlatform.isLinux ''
     # To offer scaling detection on X11, furnace checks if libX11.so is available via dlopen and uses some of its functions
     # But it's being linked against a versioned libX11.so.VERSION via SDL, so the unversioned one is not on the rpath
     substituteInPlace src/gui/scaling.cpp \
-      --replace 'libX11.so' '${lib.getLib libX11}/lib/libX11.so'
+      --replace-fail 'libX11.so' '${lib.getLib libX11}/lib/libX11.so'
   '';
 
   nativeBuildInputs = [
@@ -54,6 +55,7 @@ stdenv.mkDerivation rec {
   buildInputs = [
     fftw
     fmt_8
+    freetype
     libsndfile
     rtmidi
     SDL2
@@ -64,26 +66,30 @@ stdenv.mkDerivation rec {
   ] ++ lib.optionals stdenv.hostPlatform.isLinux [
     # portaudio pkg-config is pulling this in as a link dependency, not set in propagatedBuildInputs
     alsa-lib
-  ] ++ lib.optionals stdenv.hostPlatform.isDarwin [
+  ] ++ lib.optionals stdenv.hostPlatform.isDarwin (with darwin.apple_sdk.frameworks; [
     Cocoa
-  ];
+  ]);
 
   cmakeFlags = [
-    "-DBUILD_GUI=${if withGUI then "ON" else "OFF"}"
-    "-DSYSTEM_FFTW=ON"
-    "-DSYSTEM_FMT=ON"
-    "-DSYSTEM_LIBSNDFILE=ON"
-    "-DSYSTEM_RTMIDI=ON"
-    "-DSYSTEM_SDL2=ON"
-    "-DSYSTEM_ZLIB=ON"
-    "-DSYSTEM_PORTAUDIO=ON"
-    "-DWITH_JACK=${if withJACK then "ON" else "OFF"}"
-    "-DWITH_PORTAUDIO=ON"
-    "-DWITH_RENDER_SDL=ON"
-    "-DWITH_RENDER_OPENGL=${lib.boolToString withGL}"
-    "-DWARNINGS_ARE_ERRORS=ON"
-  ] ++ lib.optionals withGL [
-    "-DUSE_GLES=${lib.boolToString preferGLES}"
+    (lib.cmakeBool "BUILD_GUI" withGUI)
+    (lib.cmakeBool "SYSTEM_FFTW" true)
+    (lib.cmakeBool "SYSTEM_FMT" true)
+    (lib.cmakeBool "SYSTEM_LIBSNDFILE" true)
+    (lib.cmakeBool "SYSTEM_RTMIDI" true)
+    (lib.cmakeBool "SYSTEM_SDL2" true)
+    (lib.cmakeBool "SYSTEM_ZLIB" true)
+    (lib.cmakeBool "USE_FREETYPE" true)
+    (lib.cmakeBool "SYSTEM_FREETYPE" true)
+    (lib.cmakeBool "WITH_JACK" withJACK)
+    (lib.cmakeBool "WITH_PORTAUDIO" true)
+    (lib.cmakeBool "SYSTEM_PORTAUDIO" true)
+    (lib.cmakeBool "WITH_RENDER_SDL" true)
+    (lib.cmakeBool "WITH_RENDER_OPENGL" withGL)
+    (lib.cmakeBool "USE_GLES" (withGL && preferGLES))
+    (lib.cmakeBool "WITH_RENDER_METAL" false) # fails to build
+    (lib.cmakeBool "WITH_RENDER_OPENGL1" (withGL && !preferGLES))
+    (lib.cmakeBool "WARNINGS_ARE_ERRORS" true)
+    (lib.cmakeBool "FORCE_APPLE_BIN" true)
   ];
 
   postInstall = lib.optionalString stdenv.hostPlatform.isDarwin ''
@@ -109,13 +115,13 @@ stdenv.mkDerivation rec {
     };
   };
 
-  meta = with lib; {
+  meta = {
     description = "Multi-system chiptune tracker compatible with DefleMask modules";
     homepage = "https://github.com/tildearrow/furnace";
-    changelog = "https://github.com/tildearrow/furnace/releases/tag/v${version}";
-    license = with licenses; [ gpl2Plus ];
-    maintainers = with maintainers; [ OPNA2608 ];
-    platforms = platforms.all;
+    changelog = "https://github.com/tildearrow/furnace/releases/tag/v${finalAttrs.version}";
+    license = with lib.licenses; [ gpl2Plus ];
+    maintainers = with lib.maintainers; [ OPNA2608 ];
+    platforms = lib.platforms.all;
     mainProgram = "furnace";
   };
-}
+})
diff --git a/pkgs/applications/audio/furnace/update.sh b/pkgs/by-name/fu/furnace/update.sh
index cc2969f35045..cc2969f35045 100755
--- a/pkgs/applications/audio/furnace/update.sh
+++ b/pkgs/by-name/fu/furnace/update.sh
diff --git a/pkgs/tools/inputmethods/fusuma/Gemfile b/pkgs/by-name/fu/fusuma/Gemfile
index 7cee961df4a0..7cee961df4a0 100644
--- a/pkgs/tools/inputmethods/fusuma/Gemfile
+++ b/pkgs/by-name/fu/fusuma/Gemfile
diff --git a/pkgs/tools/inputmethods/fusuma/Gemfile.lock b/pkgs/by-name/fu/fusuma/Gemfile.lock
index 283d4c3fa5e1..b89e3c94971d 100644
--- a/pkgs/tools/inputmethods/fusuma/Gemfile.lock
+++ b/pkgs/by-name/fu/fusuma/Gemfile.lock
@@ -1,12 +1,12 @@
 GEM
   remote: https://rubygems.org/
   specs:
-    fusuma (3.3.1)
-    fusuma-plugin-appmatcher (0.6.1)
+    fusuma (3.5.0)
+    fusuma-plugin-appmatcher (0.7.1)
       fusuma (>= 3.0)
       rexml
       ruby-dbus
-    fusuma-plugin-keypress (0.9.0)
+    fusuma-plugin-keypress (0.11.0)
       fusuma (>= 3.1)
     fusuma-plugin-sendkey (0.10.1)
       fusuma (>= 3.1)
@@ -14,9 +14,11 @@ GEM
     fusuma-plugin-wmctrl (1.3.1)
       fusuma (>= 3.1)
     revdev (0.2.1)
-    rexml (3.2.6)
+    rexml (3.2.8)
+      strscan (>= 3.0.9)
     ruby-dbus (0.23.1)
       rexml
+    strscan (3.1.0)
 
 PLATFORMS
   ruby
@@ -29,4 +31,4 @@ DEPENDENCIES
   fusuma-plugin-wmctrl
 
 BUNDLED WITH
-   2.4.22
+   2.5.9
diff --git a/pkgs/tools/inputmethods/fusuma/gemset.nix b/pkgs/by-name/fu/fusuma/gemset.nix
index 47d5f6215995..e5f895c4b74c 100644
--- a/pkgs/tools/inputmethods/fusuma/gemset.nix
+++ b/pkgs/by-name/fu/fusuma/gemset.nix
@@ -4,10 +4,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "13pbvmkjriq6myynv4gfismiqa9y7bfbvvrfcv25670l4zyiakhm";
+      sha256 = "0vxlfda4mgff9kindrmr47xvn6b591hzvzzsx2y88zq20sn340vy";
       type = "gem";
     };
-    version = "3.3.1";
+    version = "3.5.0";
   };
   fusuma-plugin-appmatcher = {
     dependencies = ["fusuma" "rexml" "ruby-dbus"];
@@ -15,10 +15,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1qkir4a657znq0fnx91lik7bw5kyq54jwhiy2zrlplln78xs5yai";
+      sha256 = "1cj3d1yz3jdxmapgk8wv5ra57nyb278x2fjxdllc0gqdfih6pxhq";
       type = "gem";
     };
-    version = "0.6.1";
+    version = "0.7.1";
   };
   fusuma-plugin-keypress = {
     dependencies = ["fusuma"];
@@ -26,10 +26,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0as95haqa943i740xs7czcaibb8lvy4gn6kr8nbldq20nly64bih";
+      sha256 = "16csdj695y9b8bvl65cby57fsyfr30pb9qq6h0wyqrxily6cn6il";
       type = "gem";
     };
-    version = "0.9.0";
+    version = "0.11.0";
   };
   fusuma-plugin-sendkey = {
     dependencies = ["fusuma" "revdev"];
@@ -64,14 +64,15 @@
     version = "0.2.1";
   };
   rexml = {
+    dependencies = ["strscan"];
     groups = ["default"];
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "05i8518ay14kjbma550mv0jm8a6di8yp5phzrd8rj44z9qnrlrp0";
+      sha256 = "0d8ivcirrrxpkpjc1c835wknc9s2fl54xpw08s177yfrh5ish209";
       type = "gem";
     };
-    version = "3.2.6";
+    version = "3.2.8";
   };
   ruby-dbus = {
     dependencies = ["rexml"];
@@ -84,4 +85,14 @@
     };
     version = "0.23.1";
   };
+  strscan = {
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0mamrl7pxacbc79ny5hzmakc9grbjysm3yy6119ppgsg44fsif01";
+      type = "gem";
+    };
+    version = "3.1.0";
+  };
 }
diff --git a/pkgs/tools/inputmethods/fusuma/default.nix b/pkgs/by-name/fu/fusuma/package.nix
index 0622ce699f8c..0622ce699f8c 100644
--- a/pkgs/tools/inputmethods/fusuma/default.nix
+++ b/pkgs/by-name/fu/fusuma/package.nix
diff --git a/pkgs/by-name/fw/fwupd/package.nix b/pkgs/by-name/fw/fwupd/package.nix
index b4683af8912e..5e4b1d7ba774 100644
--- a/pkgs/by-name/fw/fwupd/package.nix
+++ b/pkgs/by-name/fw/fwupd/package.nix
@@ -92,7 +92,7 @@ let
 
   test-firmware =
     let
-      version = "unstable-2022-04-02";
+      version = "0-unstable-2022-04-02";
       src = fetchFromGitHub {
         name = "fwupd-test-firmware-${version}";
         owner = "fwupd";
@@ -120,7 +120,7 @@ let
 in
 stdenv.mkDerivation (finalAttrs: {
   pname = "fwupd";
-  version = "1.9.18";
+  version = "1.9.19";
 
   # libfwupd goes to lib
   # daemon, plug-ins and libfwupdplugin go to out
@@ -131,7 +131,7 @@ stdenv.mkDerivation (finalAttrs: {
     owner = "fwupd";
     repo = "fwupd";
     rev = finalAttrs.version;
-    hash = "sha256-w2jqIPNV6OkPaHfy7bEFgr5IgzJYtMTrO5UWmnZ+2JI=";
+    hash = "sha256-PQwUBOsKejXpS3G3VSJgatCltGy+wejPXCdEsDw87jo=";
   };
 
   patches = [
@@ -228,7 +228,7 @@ stdenv.mkDerivation (finalAttrs: {
     "-Dplugin_msr=disabled"
   ];
 
-  # TODO: wrapGAppsHook wraps efi capsule even though it is not ELF
+  # TODO: wrapGAppsHook3 wraps efi capsule even though it is not ELF
   dontWrapGApps = true;
 
   doCheck = true;
diff --git a/pkgs/by-name/fz/fzf-make/package.nix b/pkgs/by-name/fz/fzf-make/package.nix
index e989b2e19126..864bb8f0c925 100644
--- a/pkgs/by-name/fz/fzf-make/package.nix
+++ b/pkgs/by-name/fz/fzf-make/package.nix
@@ -10,16 +10,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "fzf-make";
-  version = "0.28.0";
+  version = "0.30.0";
 
   src = fetchFromGitHub {
     owner = "kyu08";
     repo = "fzf-make";
     rev = "v${version}";
-    hash = "sha256-USBK3In/1Uor33wrab1iTt0akQTcjuHd7I86XfERzzg=";
+    hash = "sha256-C2CDzcS6iE2ojXtFjQfHDJE2C1b5QNG6rda/MiDW8kk=";
   };
 
-  cargoHash = "sha256-zEcll6X0iclDap40bQ1CXuVBQnVin8VwjpErm+/B0ZY=";
+  cargoHash = "sha256-N5hM5xTMNeryFgdICQcKvPt4lHgh02DCaPD3TTGmFBo=";
 
   nativeBuildInputs = [ makeBinaryWrapper ];
 
diff --git a/pkgs/by-name/fz/fzf/package.nix b/pkgs/by-name/fz/fzf/package.nix
index e243d515fa14..68c939d9d958 100644
--- a/pkgs/by-name/fz/fzf/package.nix
+++ b/pkgs/by-name/fz/fzf/package.nix
@@ -11,16 +11,16 @@
 
 buildGoModule rec {
   pname = "fzf";
-  version = "0.51.0";
+  version = "0.52.1";
 
   src = fetchFromGitHub {
     owner = "junegunn";
     repo = "fzf";
     rev = version;
-    hash = "sha256-ybg2Zq2J/3lyIFnQpnPbRe6D8iD+hgiiA02EatOQVkI=";
+    hash = "sha256-cnLPn1AKq1BaWwXsWwQfC/lnejdyd1WdH1qIJRcfdks=";
   };
 
-  vendorHash = "sha256-Ho2jVD/U/2BFt3BF5w+KHp5nSVmukx0o2l3ISDGDSt0=";
+  vendorHash = "sha256-Kc/bYzakx9c/bF42LYyE1t8JCUqBsJQFtczrFocx/Ps=";
 
   CGO_ENABLED = 0;
 
diff --git a/pkgs/by-name/ga/galah/package.nix b/pkgs/by-name/ga/galah/package.nix
new file mode 100644
index 000000000000..d384aa76796f
--- /dev/null
+++ b/pkgs/by-name/ga/galah/package.nix
@@ -0,0 +1,32 @@
+{
+  lib,
+  buildGoModule,
+  fetchFromGitHub,
+}:
+
+buildGoModule rec {
+  pname = "galah";
+  version = "0-unstable-2024-04-28";
+
+  src = fetchFromGitHub {
+    owner = "0x4D31";
+    repo = "galah";
+    rev = "69346522df6e5849ca808546d40f1ee0a70f56d8";
+    hash = "sha256-9Muo08AYtpMmLvpWl2W/WbvyFl8h364BzDbmcJteIAg=";
+  };
+
+  vendorHash = "sha256-+I4K5T6fQcS7KJexFGxpjq5QUX9VnopK8i81veeP6Cw=";
+
+  ldflags = [
+    "-s"
+    "-w"
+  ];
+
+  meta = with lib; {
+    description = "LLM-powered web honeypot using the OpenAI API";
+    homepage = "https://github.com/0x4D31/galah";
+    license = licenses.asl20;
+    maintainers = with maintainers; [ fab ];
+    mainProgram = "galah";
+  };
+}
diff --git a/pkgs/by-name/ga/gamescope/package.nix b/pkgs/by-name/ga/gamescope/package.nix
index fa20ddcf225c..083ae3f6b3c3 100644
--- a/pkgs/by-name/ga/gamescope/package.nix
+++ b/pkgs/by-name/ga/gamescope/package.nix
@@ -44,14 +44,14 @@ let
 in
 stdenv.mkDerivation (finalAttrs: {
   pname = "gamescope";
-  version = "3.14.6";
+  version = "3.14.15";
 
   src = fetchFromGitHub {
     owner = "ValveSoftware";
     repo = "gamescope";
     rev = "refs/tags/${finalAttrs.version}";
     fetchSubmodules = true;
-    hash = "sha256-Nj66d42Ih4pD15cNuMe81sviUepVVzVX8BEP7O2p0o0=";
+    hash = "sha256-K7Sz5HWelHZoc6gPFBDfymjn8P7mWNX6FuyaL4t6qeI=";
   };
 
   patches = [
diff --git a/pkgs/by-name/gb/gbsplay/package.nix b/pkgs/by-name/gb/gbsplay/package.nix
new file mode 100644
index 000000000000..64df774af5c2
--- /dev/null
+++ b/pkgs/by-name/gb/gbsplay/package.nix
@@ -0,0 +1,43 @@
+{
+  lib,
+  stdenv,
+  fetchFromGitHub,
+  installShellFiles,
+  libpulseaudio,
+  nas,
+}:
+
+stdenv.mkDerivation (finalAttrs: {
+  pname = "gbsplay";
+  version = "0.0.97";
+
+  src = fetchFromGitHub {
+    owner = "mmitch";
+    repo = "gbsplay";
+    rev = finalAttrs.version;
+    hash = "sha256-O4t5OzXcrGoxzSXr0nzc01bItjcp1LvFeWnbdSUDwFU=";
+  };
+
+  configureFlags = [
+    "--without-test" # See mmitch/gbsplay#62
+    "--without-contrib"
+  ];
+
+  nativeBuildInputs = [ installShellFiles ];
+  buildInputs = [
+    libpulseaudio
+    nas
+  ];
+
+  postInstall = ''
+    installShellCompletion --bash --name gbsplay contrib/gbsplay.bashcompletion
+  '';
+
+  meta = {
+    description = "Gameboy sound player";
+    license = lib.licenses.gpl1Plus;
+    platforms = lib.platforms.linux;
+    maintainers = with lib.maintainers; [ sigmanificient ];
+    mainProgram = "gbsplay";
+  };
+})
diff --git a/pkgs/by-name/ge/germinal/package.nix b/pkgs/by-name/ge/germinal/package.nix
index 4d7409bf4a43..d38e31aea8f3 100644
--- a/pkgs/by-name/ge/germinal/package.nix
+++ b/pkgs/by-name/ge/germinal/package.nix
@@ -9,7 +9,7 @@
 , pkg-config
 , tmux
 , vte
-, wrapGAppsHook
+, wrapGAppsHook3
 , nixosTests
 }:
 
@@ -27,7 +27,7 @@ stdenv.mkDerivation (finalAttrs: {
   nativeBuildInputs = [
     autoreconfHook
     pkg-config
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
diff --git a/pkgs/by-name/gh/gh-poi/package.nix b/pkgs/by-name/gh/gh-poi/package.nix
index e10a74a1c9c1..fd8a5bddc518 100644
--- a/pkgs/by-name/gh/gh-poi/package.nix
+++ b/pkgs/by-name/gh/gh-poi/package.nix
@@ -5,13 +5,13 @@
 
 buildGoModule rec {
   pname = "gh-poi";
-  version = "0.9.8";
+  version = "0.9.10";
 
   src = fetchFromGitHub {
     owner = "seachicken";
     repo = "gh-poi";
     rev = "v${version}";
-    hash = "sha256-QpUZxho9hzmgbCFgNxwwKi6hhfyqc4b/JYKH3rP4Eb8=";
+    hash = "sha256-0QzCXja1UXPEC8JQIXH9Dl4PPKzqWgIy13FCYxEqggA=";
   };
 
   ldflags = [ "-s" "-w" ];
@@ -19,7 +19,7 @@ buildGoModule rec {
   vendorHash = "sha256-D/YZLwwGJWCekq9mpfCECzJyJ/xSlg7fC6leJh+e8i0=";
 
   # Skip checks because some of test suites require fixture.
-  # See: https://github.com/seachicken/gh-poi/blob/v0.9.8/.github/workflows/contract-test.yml#L28-L29
+  # See: https://github.com/seachicken/gh-poi/blob/v0.9.10/.github/workflows/contract-test.yml#L28-L29
   doCheck = false;
 
   meta = with lib; {
diff --git a/pkgs/by-name/gi/gickup/package.nix b/pkgs/by-name/gi/gickup/package.nix
index 849bfac6e64a..75f132f06f35 100644
--- a/pkgs/by-name/gi/gickup/package.nix
+++ b/pkgs/by-name/gi/gickup/package.nix
@@ -7,13 +7,13 @@
 
 buildGoModule rec {
   pname = "gickup";
-  version = "0.10.29";
+  version = "0.10.30";
 
   src = fetchFromGitHub {
     owner = "cooperspencer";
     repo = "gickup";
     rev = "refs/tags/v${version}";
-    hash = "sha256-Y03SdmO/GJx1gans58IW/Q9N7spRswvjyNbzYLdkD80=";
+    hash = "sha256-knnc4FAzGk1hV/Pzoc+klm4dt1cFrn4BYZx1lY7iLp8=";
   };
 
   vendorHash = "sha256-XxDsEmi945CduurQRsH7rjFAEu/SMX3rSd63Dwq2r8A=";
diff --git a/pkgs/by-name/gi/git-instafix/package.nix b/pkgs/by-name/gi/git-instafix/package.nix
index a0792af8ac70..6dc4a101b2af 100644
--- a/pkgs/by-name/gi/git-instafix/package.nix
+++ b/pkgs/by-name/gi/git-instafix/package.nix
@@ -13,7 +13,7 @@ let
     maintainers
     ;
 
-  version = "0.2.2";
+  version = "0.2.3";
 in
 rustPlatform.buildRustPackage {
   pname = "git-instafix";
@@ -23,10 +23,10 @@ rustPlatform.buildRustPackage {
     owner = "quodlibetor";
     repo = "git-instafix";
     rev = "v${version}";
-    hash = "sha256-cwScEEijhMgBdTeYuOOxW13x4ZpyrUouZvAiD17dOog=";
+    hash = "sha256-gh0/pD07oWODZAOu82KijOFWUHfqSHyGLXg67K/rhqo=";
   };
 
-  cargoHash = "sha256-o4oIDqr+vRvfICtZbIuD2kBEneLJrvyPVr5FPLlYGv8=";
+  cargoHash = "sha256-FncpFgmbB186ZKl8XMjeNAFtAf1qlNW8hbhTOKBlUWc=";
 
   buildInputs = [ libgit2 ];
   nativeCheckInputs = [ git ];
diff --git a/pkgs/applications/version-management/git-standup/default.nix b/pkgs/by-name/gi/git-standup/package.nix
index 2c4cdc02564b..d40d100869ee 100644
--- a/pkgs/applications/version-management/git-standup/default.nix
+++ b/pkgs/by-name/gi/git-standup/package.nix
@@ -1,13 +1,13 @@
 { lib, stdenv, fetchFromGitHub, makeWrapper, git }:
 
-stdenv.mkDerivation rec {
+stdenv.mkDerivation (finalAttrs: {
   pname = "git-standup";
   version = "2.3.2";
 
   src = fetchFromGitHub {
     owner = "kamranahmedse";
-    repo = pname;
-    rev = version;
+    repo = "git-standup";
+    rev = finalAttrs.version;
     sha256 = "1xnn0jjha56v7l2vj45zzxncl6m5x2hq6nkffgc1bcikhp1pidn7";
   };
 
@@ -22,12 +22,12 @@ stdenv.mkDerivation rec {
       --prefix PATH : "${lib.makeBinPath [ git ]}"
   '';
 
-  meta = with lib; {
+  meta = {
     description = "Recall what you did on the last working day";
     homepage = "https://github.com/kamranahmedse/git-standup";
-    license = licenses.mit;
-    maintainers = [ ];
-    platforms = platforms.all;
+    license = lib.licenses.mit;
+    maintainers = with lib.maintainers; [ sigmanificient ];
+    platforms = lib.platforms.all;
     mainProgram = "git-standup";
   };
-}
+})
diff --git a/pkgs/by-name/gi/githooks/package.nix b/pkgs/by-name/gi/githooks/package.nix
new file mode 100644
index 000000000000..f4e4cd02bd86
--- /dev/null
+++ b/pkgs/by-name/gi/githooks/package.nix
@@ -0,0 +1,85 @@
+{
+  lib,
+  buildGoModule,
+  fetchFromGitHub,
+  git,
+  testers,
+  makeWrapper,
+}:
+buildGoModule rec {
+  pname = "githooks";
+  version = "3.0.2";
+
+  src = fetchFromGitHub {
+    owner = "gabyx";
+    repo = "githooks";
+    rev = "v${version}";
+    hash = "sha256-gTvbvW+AFyZUBt7gSKJGc9lrl7CAy+cOElcADlIvuRk=";
+  };
+
+  modRoot = "./githooks";
+  vendorHash = "sha256-ZcDD4Z/thtyCvXg6GzzKC/FSbh700QEaqXU8FaZaZc4=";
+
+  nativeBuildInputs = [ makeWrapper ];
+
+  buildInputs = [ git ];
+
+  strictDeps = true;
+
+  ldflags = [
+    "-s" # Disable symbole table.
+    "-w" # Disable DWARF generation.
+  ];
+
+  # We need to disable updates and other features:
+  # That is done with tag `package_manager_enabled`.
+  tags = [ "package_manager_enabled" ];
+
+  checkFlags =
+    let
+      skippedTests = [
+        "TestGithooksCompliesWithGit" # Needs internet to download all hooks documentation.
+        "TestUpdateImages" # Needs docker/podman.
+      ];
+    in
+    [
+      "-v"
+      "-skip"
+      "(${builtins.concatStringsSep "|" skippedTests})"
+    ];
+
+  doCheck = true;
+
+  # We need to generate some build files before building.
+  postConfigure = ''
+    GH_BUILD_VERSION="${version}" \
+      GH_BUILD_TAG="v${version}" \
+      go generate -mod=vendor ./...
+  '';
+
+  postInstall = ''
+    # Rename executable to proper names.
+    mv $out/bin/cli $out/bin/githooks-cli
+    mv $out/bin/runner $out/bin/githooks-runner
+    mv $out/bin/dialog $out/bin/githooks-dialog
+  '';
+
+  postFixup = ''
+    wrapProgram "$out/bin/githooks-cli" --prefix PATH : ${lib.makeBinPath [ git ]}
+    wrapProgram "$out/bin/githooks-runner" --prefix PATH : ${lib.makeBinPath [ git ]}
+  '';
+
+  passthru.tests.version = testers.testVersion {
+    package = "githooks-cli";
+    command = "githooks-cli --version";
+    inherit version;
+  };
+
+  meta = with lib; {
+    description = "A Git hooks manager with per-repo and shared Git hooks including version control";
+    homepage = "https://github.com/gabyx/Githooks";
+    license = licenses.mpl20;
+    maintainers = with maintainers; [ gabyx ];
+    mainProgram = "githooks-cli";
+  };
+}
diff --git a/pkgs/by-name/gi/github-desktop/package.nix b/pkgs/by-name/gi/github-desktop/package.nix
index 7ada2ddb663b..1ac8deb24861 100644
--- a/pkgs/by-name/gi/github-desktop/package.nix
+++ b/pkgs/by-name/gi/github-desktop/package.nix
@@ -2,7 +2,7 @@
 , lib
 , fetchurl
 , autoPatchelfHook
-, wrapGAppsHook
+, wrapGAppsHook3
 , makeWrapper
 , gnome
 , libsecret
@@ -43,7 +43,7 @@ stdenvNoCC.mkDerivation (finalAttrs: {
 
   nativeBuildInputs = [
     autoPatchelfHook
-    (wrapGAppsHook.override { inherit makeWrapper; })
+    (wrapGAppsHook3.override { inherit makeWrapper; })
   ];
 
   buildInputs = [
diff --git a/pkgs/by-name/gi/gitlab-ci-local/package.nix b/pkgs/by-name/gi/gitlab-ci-local/package.nix
index 2faa7d87d6b5..ae9e10033e92 100644
--- a/pkgs/by-name/gi/gitlab-ci-local/package.nix
+++ b/pkgs/by-name/gi/gitlab-ci-local/package.nix
@@ -6,16 +6,16 @@
 
 buildNpmPackage rec {
   pname = "gitlab-ci-local";
-  version = "4.48.2";
+  version = "4.49.0";
 
   src = fetchFromGitHub {
     owner = "firecow";
     repo = "gitlab-ci-local";
     rev = version;
-    hash = "sha256-QdbVI6aby/UQCR3G25nvmvoXNMDndgLYz/hOTmj5dnc=";
+    hash = "sha256-hhzkC9wnPNwQwky2FegTMRIbcyCMzrZ/hoQlfZwk3sk=";
   };
 
-  npmDepsHash = "sha256-ebrdMbSAsughHCuV86s6WA12a8hqA2yyC/rJUyViOrI=";
+  npmDepsHash = "sha256-mnnP1YvKSm/CgZYQWF8VU+cuQ0SUV5tW1dCRrGRBrmg=";
 
   postPatch = ''
     # remove cleanup which runs git commands
diff --git a/pkgs/applications/version-management/gitprompt-rs/default.nix b/pkgs/by-name/gi/gitprompt-rs/package.nix
index 4df54080513c..b7b1987ae53a 100644
--- a/pkgs/applications/version-management/gitprompt-rs/default.nix
+++ b/pkgs/by-name/gi/gitprompt-rs/package.nix
@@ -4,13 +4,16 @@
   rustPlatform,
   git,
 }:
-rustPlatform.buildRustPackage rec {
-  pname = "gitprompt-rs";
+let
   version = "0.3.0";
+in
+rustPlatform.buildRustPackage {
+  pname = "gitprompt-rs";
+  inherit version;
 
   src = fetchFromGitHub {
     owner = "9ary";
-    repo = pname;
+    repo = "gitprompt-rs";
     rev = version;
     hash = "sha256-BqI3LbG7I/0wjzJaP8bxRwTM56joLqVaQCmAydX5vQM=";
   };
@@ -22,11 +25,14 @@ rustPlatform.buildRustPackage rec {
       --replace 'Command::new("git")' 'Command::new("${git}/bin/git")'
   '';
 
-  meta = with lib; {
+  meta = {
     description = "Simple Git prompt";
     homepage = "https://github.com/9ary/gitprompt-rs";
-    license = with licenses; [ mpl20 ];
-    maintainers = with maintainers; [ isabelroses cafkafk ];
+    license = lib.licenses.mpl20;
+    maintainers = with lib.maintainers; [
+      isabelroses
+      cafkafk
+    ];
     mainProgram = "gitprompt-rs";
   };
 }
diff --git a/pkgs/by-name/gi/gittuf/package.nix b/pkgs/by-name/gi/gittuf/package.nix
index 8b7e9063f7ab..3d33fdbae07a 100644
--- a/pkgs/by-name/gi/gittuf/package.nix
+++ b/pkgs/by-name/gi/gittuf/package.nix
@@ -2,16 +2,16 @@
 
 buildGoModule rec {
   pname = "gittuf";
-  version = "0.3.0";
+  version = "0.4.0";
 
   src = fetchFromGitHub {
     owner = "gittuf";
     repo = pname;
     rev = "v${version}";
-    hash = "sha256-lECvgagcqBS+BVD296e6WjjSCA3vI0nfLzpLTi/7N0I=";
+    hash = "sha256-BXqxVtdxUbcl2cK4kYEBZIbMCKOjPvuoTnDh8L6+mO8=";
   };
 
-  vendorHash = "sha256-UKhXbZXKNtMnQe7sHBOmzzXGBHuDTYeZGKnteZirskA=";
+  vendorHash = "sha256-yRUgtUeoTthxSGZ6VX/MOVeY0NUXq0Nf+XlysHqcpWw=";
 
   ldflags = [ "-X github.com/gittuf/gittuf/internal/version.gitVersion=${version}" ];
 
diff --git a/pkgs/by-name/gi/gitu/package.nix b/pkgs/by-name/gi/gitu/package.nix
index 98f0bb9830eb..40a729927e6f 100644
--- a/pkgs/by-name/gi/gitu/package.nix
+++ b/pkgs/by-name/gi/gitu/package.nix
@@ -12,16 +12,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "gitu";
-  version = "0.19.2";
+  version = "0.20.1";
 
   src = fetchFromGitHub {
     owner = "altsem";
     repo = "gitu";
     rev = "v${version}";
-    hash = "sha256-6gjXsuxKGv8OrbBg8NDOj5ITpLI3S33VsjpCbK5SaIk=";
+    hash = "sha256-H1REl6DkWYwZ1s8FLyHlsFi1DQY0C3Zizz/o9KUO7XQ=";
   };
 
-  cargoHash = "sha256-W73sSZ/OjeRcI2NNTp2gkabtC6krXOnv8nRAbNbXOp4=";
+  cargoHash = "sha256-/u6VmcaQpVagz7W/eAFql9sKF+9dn/o1VGvFGJAJkaA=";
 
   nativeBuildInputs = [
     pkg-config
diff --git a/pkgs/by-name/gi/gitversion/package.nix b/pkgs/by-name/gi/gitversion/package.nix
new file mode 100644
index 000000000000..871ccf82b4d4
--- /dev/null
+++ b/pkgs/by-name/gi/gitversion/package.nix
@@ -0,0 +1,20 @@
+{ lib
+, buildDotnetGlobalTool
+}:
+
+buildDotnetGlobalTool {
+  pname = "dotnet-gitversion";
+  nugetName = "GitVersion.Tool";
+  version = "5.12.0";
+
+  nugetSha256 = "sha256-dclYG2D0uSYqf++y33JCefkYLwbuRCuKd3qLMnx3BDI=";
+
+  meta = with lib; {
+    description = "From git log to SemVer in no time";
+    homepage = "https://gitversion.net/";
+    downloadPage = "https://github.com/GitTools/GitVersion";
+    license = licenses.mit;
+    platforms = platforms.linux;
+    maintainers = with maintainers; [ acesyde ];
+  };
+}
diff --git a/pkgs/by-name/gl/glance/package.nix b/pkgs/by-name/gl/glance/package.nix
new file mode 100644
index 000000000000..1e36360311b0
--- /dev/null
+++ b/pkgs/by-name/gl/glance/package.nix
@@ -0,0 +1,32 @@
+{ lib,
+buildGoModule,
+fetchFromGitHub,
+nix-update-script
+}:
+
+buildGoModule rec {
+  pname = "glance";
+  version = "0.4.0";
+
+  src = fetchFromGitHub {
+    owner = "glanceapp";
+    repo = pname;
+    rev = "v${version}";
+    hash = "sha256-vcK8AW+B/YK4Jor86SRvJ8XFWvzeAUX5mVbXwrgxGlA=";
+  };
+
+  vendorHash = "sha256-Okme73vLc3Pe9+rNlmG8Bj1msKaVb5PaIBsAAeTer6s=";
+
+  excludedPackages = [ "scripts/build-and-ship" ];
+
+  passthru.updateScript = nix-update-script { };
+
+  meta = with lib; {
+    homepage = "https://github.com/glanceapp/glance";
+    changelog = "https://github.com/glanceapp/glance/releases/tag/v${version}";
+    description = "A self-hosted dashboard that puts all your feeds in one place";
+    mainProgram = "glance";
+    license = licenses.agpl3Only;
+    maintainers = with maintainers; [ dvn0 ];
+  };
+}
diff --git a/pkgs/by-name/gl/glasskube/package.nix b/pkgs/by-name/gl/glasskube/package.nix
index b3e6e34939f3..029f86e2300c 100644
--- a/pkgs/by-name/gl/glasskube/package.nix
+++ b/pkgs/by-name/gl/glasskube/package.nix
@@ -7,12 +7,12 @@
 }:
 
 let
-  version = "0.2.0";
+  version = "0.2.1";
   gitSrc = fetchFromGitHub {
     owner = "glasskube";
     repo = "glasskube";
     rev = "refs/tags/v${version}";
-    hash = "sha256-r14gYgrenUk3OFUEab4QlwmwUeEwqocJJ3Vje9wRdBA=";
+    hash = "sha256-yHktQZ/s3RYcRQd0U+0VTnLOMTyRmlny9RtAdfFT6J8=";
   };
   web-bundle = buildNpmPackage rec {
     inherit version;
@@ -40,7 +40,7 @@ in buildGoModule rec {
 
   src = gitSrc;
 
-  vendorHash = "sha256-sj9TEAWhExwaaKlMJ10U7m3/xbUNl0dVZwrCb2TTu4o=";
+  vendorHash = "sha256-ADa3nQZ/5K9m0aB5NwGQpjqhGwAne5pN2Z5RUb3eEcU=";
 
   CGO_ENABLED = 0;
 
diff --git a/pkgs/by-name/gl/glsl_analyzer/package.nix b/pkgs/by-name/gl/glsl_analyzer/package.nix
new file mode 100644
index 000000000000..ed57790a27d6
--- /dev/null
+++ b/pkgs/by-name/gl/glsl_analyzer/package.nix
@@ -0,0 +1,39 @@
+{ lib
+, pkgs
+, fetchFromGitHub
+, zig_0_12
+, darwin
+}:
+
+let stdenv = if pkgs.stdenv.isDarwin then darwin.apple_sdk_11_0.stdenv else pkgs.stdenv; in
+
+stdenv.mkDerivation (finalAttrs: {
+  pname = "glsl_analyzer";
+  version = "1.4.5";
+
+  src = fetchFromGitHub {
+    owner = "nolanderc";
+    repo = "glsl_analyzer";
+    rev = "v${finalAttrs.version}";
+    hash = "sha256-+eYBw/F1RzI5waAkLgbV0J/Td91hbNcAtHcisQaL82k=";
+  };
+
+  nativeBuildInputs = [
+    zig_0_12.hook
+  ];
+
+  postPatch = ''
+    substituteInPlace build.zig \
+      --replace-fail 'b.run(&.{ "git", "describe", "--tags", "--always" })' '"${finalAttrs.src.rev}"'
+  '';
+
+  meta = {
+    description = "Language server for GLSL (OpenGL Shading Language)";
+    changelog = "https://github.com/nolanderc/glsl_analyzer/releases/tag/v${finalAttrs.version}";
+    homepage = "https://github.com/nolanderc/glsl_analyzer";
+    mainProgram = "glsl_analyzer";
+    license = lib.licenses.gpl3Only;
+    maintainers = with lib.maintainers; [ wr7 ];
+    platforms = lib.platforms.unix;
+  };
+})
diff --git a/pkgs/by-name/gl/glycin-loaders/fix-glycin-paths.patch b/pkgs/by-name/gl/glycin-loaders/fix-glycin-paths.patch
index 87a6e4cab176..f05edf96a72a 100644
--- a/pkgs/by-name/gl/glycin-loaders/fix-glycin-paths.patch
+++ b/pkgs/by-name/gl/glycin-loaders/fix-glycin-paths.patch
@@ -1,13 +1,24 @@
-diff --git a/vendor/glycin/src/dbus.rs b/vendor/glycin/src/dbus.rs
-index aa5a876..4f37420 100644
---- a/vendor/glycin/src/dbus.rs
-+++ b/vendor/glycin/src/dbus.rs
-@@ -43,7 +43,7 @@ impl<'a> DecoderProcess<'a> {
+diff --git a/vendor/glycin/src/sandbox.rs b/vendor/glycin/src/sandbox.rs
+index 7d00b36..aa70dc7 100644
+--- a/vendor/glycin/src/sandbox.rs
++++ b/vendor/glycin/src/sandbox.rs
+@@ -165,7 +165,7 @@ impl Sandbox {
  
-         let (bin, args, final_arg) = match sandbox_mechanism {
-             SandboxMechanism::Bwrap => (
--                "bwrap".into(),
-+                "@bwrap@".into(),
-                 vec![
-                     "--unshare-all",
-                     "--die-with-parent",
+                 args.push(self.command);
+ 
+-                ("bwrap".into(), args, Some(seccomp_memfd))
++                ("@bwrap@".into(), args, Some(seccomp_memfd))
+             }
+             SandboxMechanism::FlatpakSpawn => {
+                 let memory_limit = Self::memory_limit();
+@@ -233,8 +233,8 @@ impl Sandbox {
+                 "/",
+                 // Make /usr available as read only
+                 "--ro-bind",
+-                "/usr",
+-                "/usr",
++                "/nix/store",
++                "/nix/store",
+                 // Make tmpfs dev available
+                 "--dev",
+                 "/dev",
diff --git a/pkgs/by-name/gl/glycin-loaders/package.nix b/pkgs/by-name/gl/glycin-loaders/package.nix
index 6509f4c66e2f..7804acd778f7 100644
--- a/pkgs/by-name/gl/glycin-loaders/package.nix
+++ b/pkgs/by-name/gl/glycin-loaders/package.nix
@@ -9,20 +9,23 @@
 , ninja
 , pkg-config
 , rustc
+, rustPlatform
 , gtk4
 , cairo
 , libheif
 , libxml2
+, libseccomp
+, libjxl
 , gnome
 }:
 
 stdenv.mkDerivation (finalAttrs: {
   pname = "glycin-loaders";
-  version = "0.1.2";
+  version = "1.0.1";
 
   src = fetchurl {
     url = "mirror://gnome/sources/glycin-loaders/${lib.versions.majorMinor finalAttrs.version}/glycin-loaders-${finalAttrs.version}.tar.xz";
-    hash = "sha256-x2wBklq9BwF0WJzLkWpEpXOrZbHp1JPxVOQnVkMebdc=";
+    hash = "sha256-0PAiRi/1VYVuheqUBHRHC7NrN8n/y8umOgP+XpVDcM8=";
   };
 
   patches = [
@@ -40,6 +43,7 @@ stdenv.mkDerivation (finalAttrs: {
     ninja
     pkg-config
     rustc
+    rustPlatform.bindgenHook # for libheif-sys
   ];
 
   buildInputs = [
@@ -47,6 +51,8 @@ stdenv.mkDerivation (finalAttrs: {
     cairo
     libheif
     libxml2 # for librsvg crate
+    libseccomp
+    libjxl
   ];
 
   passthru = {
diff --git a/pkgs/by-name/gm/gmetronome/package.nix b/pkgs/by-name/gm/gmetronome/package.nix
index 64d0c19a966c..c3f1629a4c0f 100644
--- a/pkgs/by-name/gm/gmetronome/package.nix
+++ b/pkgs/by-name/gm/gmetronome/package.nix
@@ -3,27 +3,27 @@
 , fetchFromGitLab
 , pkg-config
 , autoreconfHook
-, wrapGAppsHook
+, wrapGAppsHook3
 , gtkmm3
 , libpulseaudio
 }:
 
 stdenv.mkDerivation rec {
   pname = "gmetronome";
-  version = "0.3.3";
+  version = "0.3.4";
 
   src = fetchFromGitLab {
     domain = "gitlab.gnome.org";
     owner = "dqpb";
     repo = "gmetronome";
     rev = version;
-    hash = "sha256-ilFO1HwleWIQ51Bkzck1sm1Yu3ugqkvZrpxPOYzXydM=";
+    hash = "sha256-fjtdM2/LMZx0dFt78Ih4BG5+NZoocPknh5INA+2e5qk=";
   };
 
   nativeBuildInputs = [
     pkg-config
     autoreconfHook
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
diff --git a/pkgs/by-name/gm/gmic-qt/package.nix b/pkgs/by-name/gm/gmic-qt/package.nix
index 48e4d24ef4c3..cae45005c57f 100644
--- a/pkgs/by-name/gm/gmic-qt/package.nix
+++ b/pkgs/by-name/gm/gmic-qt/package.nix
@@ -53,11 +53,11 @@ assert lib.assertMsg
 
 stdenv.mkDerivation (finalAttrs: {
   pname = "gmic-qt${lib.optionalString (variant != "standalone") "-${variant}"}";
-  version = "3.3.5";
+  version = "3.3.6";
 
   src = fetchzip {
     url = "https://gmic.eu/files/source/gmic_${finalAttrs.version}.tar.gz";
-    hash = "sha256-71i8vk9XR6Q8SSEWvGXMcAOIE6DoIVJkylS4SiZLUBY=";
+    hash = "sha256-LZwAMLvQ+X6xkvnL+7LA/UmwDBGgapUtFHNJuV04F+Y=";
   };
 
   sourceRoot = "${finalAttrs.src.name}/gmic-qt";
diff --git a/pkgs/by-name/gn/gnome-online-accounts-gtk/package.nix b/pkgs/by-name/gn/gnome-online-accounts-gtk/package.nix
new file mode 100644
index 000000000000..d8dbbc5806b2
--- /dev/null
+++ b/pkgs/by-name/gn/gnome-online-accounts-gtk/package.nix
@@ -0,0 +1,48 @@
+{ stdenv
+, lib
+, fetchFromGitHub
+, meson
+, ninja
+, pkg-config
+, wrapGAppsHook4
+, glib
+, glib-networking
+, gnome-online-accounts
+, gtk4
+, libadwaita
+}:
+
+stdenv.mkDerivation (finalAttrs: {
+  pname = "gnome-online-accounts-gtk";
+  version = "3.50.2";
+
+  src = fetchFromGitHub {
+    owner = "xapp-project";
+    repo = "gnome-online-accounts-gtk";
+    rev = finalAttrs.version;
+    hash = "sha256-6yGesg/L/9syX990uDuw5Or/uEQ8DGPQYiCRRw4OMzY=";
+  };
+
+  nativeBuildInputs = [
+    meson
+    ninja
+    pkg-config
+    wrapGAppsHook4
+  ];
+
+  buildInputs = [
+    glib
+    glib-networking
+    gnome-online-accounts
+    gtk4
+    libadwaita # for goa-backend
+  ];
+
+  meta = with lib; {
+    description = "Online accounts configuration utility";
+    homepage = "https://github.com/xapp-project/gnome-online-accounts-gtk";
+    license = licenses.gpl3Plus;
+    platforms = platforms.linux;
+    maintainers = teams.cinnamon.members;
+  };
+})
diff --git a/pkgs/by-name/go/go-cover-treemap/package.nix b/pkgs/by-name/go/go-cover-treemap/package.nix
new file mode 100644
index 000000000000..1afb9191607a
--- /dev/null
+++ b/pkgs/by-name/go/go-cover-treemap/package.nix
@@ -0,0 +1,28 @@
+{ lib
+, buildGoModule
+, fetchFromGitHub
+}:
+
+buildGoModule rec {
+  pname = "go-cover-treemap";
+  version = "1.4.2";
+
+  src = fetchFromGitHub {
+    owner = "nikolaydubina";
+    repo = "go-cover-treemap";
+    rev = "v${version}";
+    hash = "sha256-MSkPot8uYcr8pxsIkJh2FThVK9xpzkN9Y69KeiQnQlA=";
+  };
+
+  vendorHash = "sha256-k/k+EGkuBnZFHrcWxnzLG8efWgb2i35Agf/sWbgTc4g=";
+
+  ldflags = [ "-s" "-w" ];
+
+  meta = with lib; {
+    description = "Go code coverage to SVG treemap";
+    homepage = "https://github.com/nikolaydubina/go-cover-treemap";
+    license = licenses.mit;
+    maintainers = with maintainers; [ doronbehar ];
+    mainProgram = "go-cover-treemap";
+  };
+}
diff --git a/pkgs/by-name/go/go-errorlint/package.nix b/pkgs/by-name/go/go-errorlint/package.nix
index 5c67519c4ea5..239c10a47af5 100644
--- a/pkgs/by-name/go/go-errorlint/package.nix
+++ b/pkgs/by-name/go/go-errorlint/package.nix
@@ -5,16 +5,16 @@
 
 buildGoModule rec {
   pname = "go-errorlint";
-  version = "1.4.5";
+  version = "1.5.1";
 
   src = fetchFromGitHub {
     owner = "polyfloyd";
     repo = "go-errorlint";
     rev = "v${version}";
-    hash = "sha256-BU+3sLUGBCFA1JYFxTEyIan+iWB7Y7SaMFVomfNObMg=";
+    hash = "sha256-xO9AC1z3JNTRVEpM/FF8x+AMfmspU64kUywvpMb2yxM=";
   };
 
-  vendorHash = "sha256-xn7Ou4l8vbPD44rsN0mdFjTzOvkfv6QN6i5XR1XPxTE=";
+  vendorHash = "sha256-pSajd2wyefHgxMvhDKs+qwre4BMRBv97v/tZOjiT3LE=";
 
   ldflags = [ "-s" "-w" ];
 
diff --git a/pkgs/by-name/go/go-judge/package.nix b/pkgs/by-name/go/go-judge/package.nix
index f46a0d0a4120..91f2c5c10724 100644
--- a/pkgs/by-name/go/go-judge/package.nix
+++ b/pkgs/by-name/go/go-judge/package.nix
@@ -5,16 +5,16 @@
 
 buildGoModule rec {
   pname = "go-judge";
-  version = "1.8.3";
+  version = "1.8.4";
 
   src = fetchFromGitHub {
     owner = "criyle";
     repo = pname;
     rev = "v${version}";
-    hash = "sha256-i6c7uKnnyO+tyQwrEFvyPaw3N9VfFB+L7xYHsUPy6RM=";
+    hash = "sha256-dViiTTT/OjgAXecViuBdWOycCpn97g+Lr1ZHubfVExw=";
   };
 
-  vendorHash = "sha256-WAO7nMDm7/KuDOIZSopRVKUVWmjDl30d95NWBuebiE4=";
+  vendorHash = "sha256-xnTM7QN+ZJP3iPf+k8HgFYMFv6W6BboM5Yh7938s9lM=";
 
   tags = [ "nomsgpack" ];
 
diff --git a/pkgs/by-name/go/go-landlock/package.nix b/pkgs/by-name/go/go-landlock/package.nix
new file mode 100644
index 000000000000..44b7ba5573ce
--- /dev/null
+++ b/pkgs/by-name/go/go-landlock/package.nix
@@ -0,0 +1,30 @@
+{ lib
+, buildGoModule
+, fetchFromGitHub
+}:
+
+buildGoModule rec {
+  pname = "go-landlock";
+  version = "0-unstable-2024-02-16";
+
+  src = fetchFromGitHub {
+    owner = "landlock-lsm";
+    repo = "go-landlock";
+    rev = "efb66220540a9ef86aa0160d15e55f429d5b94d9";
+    hash = "sha256-U0+364NIw3kVcfS8/RTcpSMrv4v2ATCcC1v+5IsxeXQ=";
+  };
+
+  vendorHash = "sha256-IOaFToz/66Z1DP5O6gLqTyEiiYyrwZ5At93qPLa7hg8=";
+
+  subPackages = [
+    "cmd/landlock-restrict-net"
+    "cmd/landlock-restrict"
+  ];
+
+  meta = {
+    description = "A Go library for the Linux Landlock sandboxing feature";
+    homepage = "https://github.com/landlock-lsm/go-landlock";
+    license = lib.licenses.mit;
+    maintainers = with lib.maintainers; [ tomfitzhenry ];
+  };
+}
diff --git a/pkgs/by-name/go/go-passbolt-cli/package.nix b/pkgs/by-name/go/go-passbolt-cli/package.nix
new file mode 100644
index 000000000000..e774769ae45e
--- /dev/null
+++ b/pkgs/by-name/go/go-passbolt-cli/package.nix
@@ -0,0 +1,52 @@
+{ buildGoModule, fetchFromGitHub, installShellFiles, lib, stdenv }:
+
+buildGoModule rec {
+  pname = "go-passbolt-cli";
+  version = "0.3.1";
+
+  src = fetchFromGitHub {
+    owner = "passbolt";
+    repo = "go-passbolt-cli";
+    rev = "v${version}";
+    hash = "sha256-I+niNUowKTFDMa7yOnRToMFPzO/CbnjXHJr5nAhhHcg=";
+  };
+
+  vendorHash = "sha256-XRHGq3Qeq7VWHzw5WWVv4x5orQu740lttGVreiu7qP4=";
+
+  ldflags = [
+    "-X=main.version=${version}"
+    "-X=main.commit=${src.rev}"
+    "-X=main.date=1970-01-01T00:00:00Z"
+  ];
+
+  subPackages = [ "." ];
+
+  nativeBuildInputs = [
+    installShellFiles
+  ];
+
+  installPhase = ''
+    runHook preInstall
+    install -D $GOPATH/bin/go-passbolt-cli $out/bin/passbolt
+    runHook postInstall
+  '';
+
+  postInstall = lib.optionalString (stdenv.buildPlatform.canExecute stdenv.hostPlatform) ''
+    installShellCompletion --cmd passbolt \
+      --bash <($out/bin/passbolt completion bash) \
+      --fish <($out/bin/passbolt completion fish) \
+      --zsh <($out/bin/passbolt completion zsh)
+
+    export tmpDir=$(mktemp -d)
+    cd $tmpDir && mkdir man && $out/bin/passbolt gendoc --type man && installManPage man/*
+  '';
+
+  meta = with lib; {
+    description = "CLI tool to interact with Passbolt, an open source password manager for teams";
+    homepage = "https://github.com/passbolt/go-passbolt-cli";
+    license = licenses.mit;
+    maintainers = with maintainers; [ pbek ];
+    mainProgram = "passbolt";
+    platforms = platforms.linux ++ platforms.darwin;
+  };
+}
diff --git a/pkgs/by-name/go/godns/package.nix b/pkgs/by-name/go/godns/package.nix
index 0e5e155523d6..e2dd4669a122 100644
--- a/pkgs/by-name/go/godns/package.nix
+++ b/pkgs/by-name/go/godns/package.nix
@@ -9,16 +9,16 @@
 
 buildGoModule rec {
   pname = "godns";
-  version = "3.1.5";
+  version = "3.1.6";
 
   src = fetchFromGitHub {
     owner = "TimothyYe";
     repo = "godns";
     rev = "refs/tags/v${version}";
-    hash = "sha256-kdClyeU0hR0ymVLn9xe/kYVJE/9P/hAz/5UwRAQ2KCU=";
+    hash = "sha256-Kr+zMmjpHR2JtCaDyLMcQwOUXlPJeisu94zHRpEYV/I=";
   };
 
-  vendorHash = "sha256-kSREFNIGH0MXiyKMp1LmrLkhKBhovvNRz46LTXT2XME=";
+  vendorHash = "sha256-E15h5p4ppRb91EUoz5dyWNFl745rt419NMCSurMLxis=";
   npmDeps = fetchNpmDeps {
     src = "${src}/web";
     hash = "sha256-2yeqLly0guU/kpX+yH/QOoDGzyJTxkTaCt8EleJhybU=";
diff --git a/pkgs/tools/networking/goflow2/default.nix b/pkgs/by-name/go/goflow2/package.nix
index 6edd9b87f657..e360c5253ef9 100644
--- a/pkgs/tools/networking/goflow2/default.nix
+++ b/pkgs/by-name/go/goflow2/package.nix
@@ -3,13 +3,16 @@
   buildGoModule,
   fetchFromGitHub,
 }:
-buildGoModule rec {
-  pname = "goflow2";
+let
   version = "2.1.3";
+in
+buildGoModule {
+  pname = "goflow2";
+  inherit version;
 
   src = fetchFromGitHub {
     owner = "netsampler";
-    repo = pname;
+    repo = "goflow2";
     rev = "v${version}";
     hash = "sha256-wtvBkk+Y4koGDGN+N/w4FsdejgpCIio0g2QV35Pr/fo=";
   };
@@ -22,10 +25,10 @@ buildGoModule rec {
 
   vendorHash = "sha256-qcWeIg278V2bgFGpWwUT5JCblxfBv0/gWV1oXul/nCQ=";
 
-  meta = with lib; {
+  meta = {
     description = "High performance sFlow/IPFIX/NetFlow Collector";
     homepage = "https://github.com/netsampler/goflow2";
-    license = licenses.bsd3;
-    maintainers = with maintainers; [ isabelroses ];
+    license = lib.licenses.bsd3;
+    maintainers = with lib.maintainers; [ isabelroses ];
   };
 }
diff --git a/pkgs/by-name/go/goofcord/package.nix b/pkgs/by-name/go/goofcord/package.nix
new file mode 100644
index 000000000000..dda5986272d6
--- /dev/null
+++ b/pkgs/by-name/go/goofcord/package.nix
@@ -0,0 +1,151 @@
+{
+  lib,
+  stdenv,
+  fetchurl,
+  autoPatchelfHook,
+  dpkg,
+  makeBinaryWrapper,
+  wrapGAppsHook3,
+  alsa-lib,
+  at-spi2-atk,
+  at-spi2-core,
+  atk,
+  cairo,
+  cups,
+  dbus,
+  expat,
+  ffmpeg,
+  fontconfig,
+  freetype,
+  gdk-pixbuf,
+  glib,
+  gtk3,
+  libappindicator-gtk3,
+  libdrm,
+  libnotify,
+  libpulseaudio,
+  libsecret,
+  libuuid,
+  libxkbcommon,
+  mesa,
+  nss,
+  pango,
+  systemd,
+  xdg-utils,
+  xorg,
+  wayland,
+  pipewire,
+}:
+
+stdenv.mkDerivation (finalAttrs: {
+  pname = "goofcord";
+  version = "1.4.2";
+
+  src =
+    let
+      base = "https://github.com/Milkshiift/GoofCord/releases/download";
+    in
+    {
+      x86_64-linux = fetchurl {
+        url = "${base}/v${finalAttrs.version}/GoofCord-${finalAttrs.version}-linux-amd64.deb";
+        hash = "sha256-fUP/se3hOhs+aAoew25YhRyxnodYPrgqN68RIg1A1Kw=";
+      };
+      aarch64-linux = fetchurl {
+        url = "${base}/v${finalAttrs.version}/GoofCord-${finalAttrs.version}-linux-arm64.deb";
+        hash = "sha256-hVpXmBSIgoON683f/sRtmpHwqxcO6IrFCCRPZjsUqjw=";
+      };
+    }
+    .${stdenv.hostPlatform.system} or (throw "Unsupported system: ${stdenv.hostPlatform.system}");
+
+  nativeBuildInputs = [
+    autoPatchelfHook
+    dpkg
+    makeBinaryWrapper
+    wrapGAppsHook3
+  ];
+
+  dontWrapGApps = true;
+
+  buildInputs = [
+    alsa-lib
+    at-spi2-atk
+    at-spi2-core
+    atk
+    cairo
+    cups
+    dbus
+    expat
+    ffmpeg
+    fontconfig
+    freetype
+    gdk-pixbuf
+    glib
+    gtk3
+    pango
+    systemd
+    mesa # for libgbm
+    nss
+    libuuid
+    libdrm
+    libnotify
+    libsecret
+    libpulseaudio
+    libxkbcommon
+    libappindicator-gtk3
+    xorg.libX11
+    xorg.libxcb
+    xorg.libXcomposite
+    xorg.libXcursor
+    xorg.libXdamage
+    xorg.libXext
+    xorg.libXfixes
+    xorg.libXi
+    xorg.libXrandr
+    xorg.libXrender
+    xorg.libXScrnSaver
+    xorg.libxshmfence
+    xorg.libXtst
+    wayland
+    pipewire
+  ];
+
+  sourceRoot = ".";
+  unpackCmd = "dpkg-deb -x $src .";
+
+  installPhase = ''
+    runHook preInstall
+
+    mkdir -p "$out/bin"
+    cp -R "opt" "$out"
+    cp -R "usr/share" "$out/share"
+    chmod -R g-w "$out"
+
+    # Wrap the startup command
+    makeBinaryWrapper $out/opt/GoofCord/goofcord $out/bin/goofcord \
+      "''${gappsWrapperArgs[@]}" \
+      --prefix XDG_DATA_DIRS : "${gtk3}/share/gsettings-schemas/${gtk3.name}/" \
+      --add-flags "\''${NIXOS_OZONE_WL:+\''${WAYLAND_DISPLAY:+--ozone-platform-hint=auto --enable-features=UseOzonePlatform,WaylandWindowDecorations,WebRTCPipeWireCapturer}}" \
+      --prefix LD_LIBRARY_PATH : "${lib.makeLibraryPath finalAttrs.buildInputs}" \
+      --suffix PATH : ${lib.makeBinPath [ xdg-utils ]}
+
+    # Fix desktop link
+    substituteInPlace $out/share/applications/goofcord.desktop \
+      --replace /opt/GoofCord/ ""
+
+    runHook postInstall
+  '';
+
+  meta = with lib; {
+    description = "Highly configurable and privacy-focused Discord client";
+    homepage = "https://github.com/Milkshiift/GoofCord";
+    downloadPage = "https://github.com/Milkshiift/GoofCord";
+    sourceProvenance = with sourceTypes; [ binaryNativeCode ];
+    license = licenses.osl3;
+    maintainers = with maintainers; [ nyanbinary ];
+    platforms = [
+      "x86_64-linux"
+      "aarch64-linux"
+    ];
+    mainProgram = "goofcord";
+  };
+})
diff --git a/pkgs/applications/networking/browsers/google-chrome/default.nix b/pkgs/by-name/go/google-chrome/package.nix
index 17b7e288f0a6..bd0a31aadf3b 100644
--- a/pkgs/applications/networking/browsers/google-chrome/default.nix
+++ b/pkgs/by-name/go/google-chrome/package.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, patchelf, makeWrapper
+{ lib, stdenv, patchelf, makeWrapper, fetchurl, writeScript
 
 # Linked dynamic libraries.
 , glib, fontconfig, freetype, pango, cairo, libX11, libXi, atk, nss, nspr
@@ -28,15 +28,9 @@
 ## Gentoo
 , bzip2, libcap
 
-# Which distribution channel to use.
-, channel ? "stable"
-
 # Necessary for USB audio devices.
 , pulseSupport ? true, libpulseaudio
 
-# Only needed for getting information about upstream binaries
-, chromium
-
 , gsettings-desktop-schemas
 , gnome
 
@@ -52,8 +46,6 @@ let
     withCustomModes = true;
   };
 
-  version = chromium.upstream-info.version;
-
   deps = [
     glib fontconfig freetype pango cairo libX11 libXi atk nss nspr
     libXcursor libXext libXfixes libXrender libXScrnSaver libXcomposite libxcb
@@ -70,18 +62,14 @@ let
     ++ lib.optional libvaSupport libva
     ++ [ gtk3 gtk4 ];
 
-  suffix = lib.optionalString (channel != "stable") "-${channel}";
-
-  crashpadHandlerBinary = if lib.versionAtLeast version "94"
-    then "chrome_crashpad_handler"
-    else "crashpad_handler";
-
-in stdenv.mkDerivation {
-  inherit version;
+in stdenv.mkDerivation (finalAttrs: {
+  pname = "google-chrome";
+  version = "125.0.6422.60";
 
-  name = "google-chrome${suffix}-${version}";
-
-  src = chromium.chromeSrc;
+  src = fetchurl {
+    url = "https://dl.google.com/linux/chrome/deb/pool/main/g/google-chrome-stable/google-chrome-stable_${finalAttrs.version}-1_amd64.deb";
+    hash = "sha256-Q0QMPthJLVquJp7fm6QN+lDb0quZsT7hv6KRXfdBMl4=";
+  };
 
   nativeBuildInputs = [ patchelf makeWrapper ];
   buildInputs = [
@@ -103,11 +91,8 @@ in stdenv.mkDerivation {
   installPhase = ''
     runHook preInstall
 
-    case ${channel} in
-      beta) appname=chrome-beta      dist=beta     ;;
-      dev)  appname=chrome-unstable  dist=unstable ;;
-      *)    appname=chrome           dist=stable   ;;
-    esac
+    appname=chrome
+    dist=stable
 
     exe=$out/bin/google-chrome-$dist
 
@@ -149,7 +134,7 @@ in stdenv.mkDerivation {
       --add-flags "\''${NIXOS_OZONE_WL:+\''${WAYLAND_DISPLAY:+--ozone-platform-hint=auto --enable-features=WaylandWindowDecorations}}" \
       --add-flags ${lib.escapeShellArg commandLineArgs}
 
-    for elf in $out/share/google/$appname/{chrome,chrome-sandbox,${crashpadHandlerBinary}}; do
+    for elf in $out/share/google/$appname/{chrome,chrome-sandbox,chrome_crashpad_handler}; do
       patchelf --set-rpath $rpath $elf
       patchelf --set-interpreter "$(cat $NIX_CC/nix-support/dynamic-linker)" $elf
     done
@@ -157,18 +142,25 @@ in stdenv.mkDerivation {
     runHook postInstall
   '';
 
-  meta = with lib; {
+  passthru = {
+    updateScript = writeScript "update-google-chrome.sh" ''
+      #!/usr/bin/env nix-shell
+      #!nix-shell -i bash -p curl jq common-updater-scripts
+      set -euo pipefail
+      url="https://versionhistory.googleapis.com/v1/chrome/platforms/linux/channels/stable/versions/all/releases"
+      response="$(curl --silent --fail $url)"
+      version="$(jq ".releases[0].version" --raw-output <<< $response)"
+      update-source-version ${finalAttrs.pname} $version --ignore-same-hash
+    '';
+  };
+
+  meta = {
     description = "A freeware web browser developed by Google";
     homepage = "https://www.google.com/chrome/browser/";
-    license = licenses.unfree;
-    sourceProvenance = with sourceTypes; [ binaryNativeCode ];
-    maintainers = with maintainers; [ primeos ];
-    # Note from primeos: By updating Chromium I also update Google Chrome and
-    # will try to merge PRs and respond to issues but I'm not actually using
-    # Google Chrome.
+    license = lib.licenses.unfree;
+    sourceProvenance = with lib.sourceTypes; [ binaryNativeCode ];
+    maintainers = with lib.maintainers; [ jnsgruk johnrtitor ];
     platforms = [ "x86_64-linux" ];
-    mainProgram =
-      if (channel == "dev") then "google-chrome-unstable"
-      else "google-chrome-${channel}";
+    mainProgram = "google-chrome-stable";
   };
-}
+})
diff --git a/pkgs/by-name/go/got/package.nix b/pkgs/by-name/go/got/package.nix
index 127ff219ed5e..d6f5629e3cd6 100644
--- a/pkgs/by-name/go/got/package.nix
+++ b/pkgs/by-name/go/got/package.nix
@@ -17,11 +17,11 @@
 
 stdenv.mkDerivation (finalAttrs: {
   pname = "got";
-  version = "0.98.2";
+  version = "0.99";
 
   src = fetchurl {
     url = "https://gameoftrees.org/releases/portable/got-portable-${finalAttrs.version}.tar.gz";
-    hash = "sha256-/11K2ZIu3xyAVbI5hlCXL9RjyAlZDb544uqxv3ihUMg=";
+    hash = "sha256-rqQINToCsuOtm00bdgeQAmmvl5htQJmMV/EKzfD6Hjg=";
   };
 
   nativeBuildInputs = [ pkg-config bison ]
@@ -30,8 +30,6 @@ stdenv.mkDerivation (finalAttrs: {
   buildInputs = [ libressl libbsd libevent libuuid libmd zlib ncurses ]
     ++ lib.optionals stdenv.isDarwin [ libossp_uuid ];
 
-  configureFlags = [ "--enable-gotd" ];
-
   preConfigure = lib.optionalString stdenv.isDarwin ''
     # The configure script assumes dependencies on Darwin are installed via
     # Homebrew or MacPorts and hardcodes assumptions about the paths of
@@ -52,7 +50,7 @@ stdenv.mkDerivation (finalAttrs: {
 
   meta = {
     changelog = "https://gameoftrees.org/releases/CHANGES";
-    description = "A version control system which prioritizes ease of use and simplicity over flexibility";
+    description = "Version control system which prioritizes ease of use and simplicity over flexibility";
     longDescription = ''
       Game of Trees (Got) is a version control system which prioritizes
       ease of use and simplicity over flexibility.
diff --git a/pkgs/by-name/gp/gpscorrelate/package.nix b/pkgs/by-name/gp/gpscorrelate/package.nix
index 6e029d411371..e50f160e5415 100644
--- a/pkgs/by-name/gp/gpscorrelate/package.nix
+++ b/pkgs/by-name/gp/gpscorrelate/package.nix
@@ -9,7 +9,7 @@
 , docbook_xsl
 , docbook_xml_dtd_42
 , desktop-file-utils
-, wrapGAppsHook
+, wrapGAppsHook3
 , desktopToDarwinBundle
 }:
 
@@ -30,7 +30,7 @@ stdenv.mkDerivation rec {
     docbook_xsl
     libxslt
     pkg-config
-    wrapGAppsHook
+    wrapGAppsHook3
   ] ++ lib.optional stdenv.isDarwin desktopToDarwinBundle;
 
   buildInputs = [
diff --git a/pkgs/by-name/gp/gpt4all/package.nix b/pkgs/by-name/gp/gpt4all/package.nix
index 0d3d41a55182..40fe6a88322f 100644
--- a/pkgs/by-name/gp/gpt4all/package.nix
+++ b/pkgs/by-name/gp/gpt4all/package.nix
@@ -11,11 +11,11 @@
 
 stdenv.mkDerivation (finalAttrs: {
   pname = "gpt4all";
-  version = "2.7.4";
+  version = "2.7.5";
 
   src = fetchFromGitHub {
     fetchSubmodules = true;
-    hash = "sha256-G22d2Q6z7DmPHM/DEE7iyJ8SWRZdoVdSWw+gnPVHdEg=";
+    hash = "sha256-i/T6gk8ICneW624008eiStgYNv5CE8w0Yx8knk57EFw=";
     owner = "nomic-ai";
     repo = "gpt4all";
     rev = "v${finalAttrs.version}";
diff --git a/pkgs/by-name/gr/grafana-kiosk/package.nix b/pkgs/by-name/gr/grafana-kiosk/package.nix
index 0c1c40ad310c..d9f21655d1cc 100644
--- a/pkgs/by-name/gr/grafana-kiosk/package.nix
+++ b/pkgs/by-name/gr/grafana-kiosk/package.nix
@@ -1,4 +1,4 @@
-{ lib, buildGoModule, fetchFromGitHub }:
+{ lib, buildGoModule, fetchFromGitHub, chromium, makeWrapper }:
 
 buildGoModule rec {
   pname = "grafana-kiosk";
@@ -13,6 +13,11 @@ buildGoModule rec {
 
   vendorHash = "sha256-sXaxyPNuHDUOkYcWYm94YvJmr1mGe4HdzttWrNSK2Pw=";
 
+  nativeBuildInputs = [ makeWrapper ];
+  postFixup = ''
+    wrapProgram $out/bin/grafana-kiosk --prefix PATH : ${lib.makeBinPath [ chromium ]}
+  '';
+
   meta = with lib; {
     description = "Kiosk Utility for Grafana";
     homepage = "https://github.com/grafana/grafana-kiosk";
diff --git a/pkgs/by-name/gr/graphite-cli/package-lock.json b/pkgs/by-name/gr/graphite-cli/package-lock.json
index 99d12c5e9322..72a0fa947484 100644
--- a/pkgs/by-name/gr/graphite-cli/package-lock.json
+++ b/pkgs/by-name/gr/graphite-cli/package-lock.json
@@ -1,12 +1,12 @@
 {
   "name": "@withgraphite/graphite-cli",
-  "version": "1.3.3",
+  "version": "1.3.4",
   "lockfileVersion": 3,
   "requires": true,
   "packages": {
     "": {
       "name": "@withgraphite/graphite-cli",
-      "version": "1.3.3",
+      "version": "1.3.4",
       "hasInstallScript": true,
       "license": "None",
       "dependencies": {
@@ -211,9 +211,9 @@
       }
     },
     "node_modules/ws": {
-      "version": "8.16.0",
-      "resolved": "https://registry.npmjs.org/ws/-/ws-8.16.0.tgz",
-      "integrity": "sha512-HS0c//TP7Ina87TfiPUz1rQzMhHrl/SG2guqRcTOIUYD2q8uhUdNHZYJUaQ8aTGPzCh+c6oawMKW35nFl1dxyQ==",
+      "version": "8.17.0",
+      "resolved": "https://registry.npmjs.org/ws/-/ws-8.17.0.tgz",
+      "integrity": "sha512-uJq6108EgZMAl20KagGkzCKfMEjxmKvZHG7Tlq0Z6nOky7YF7aq4mOx6xK8TJ/i1LeK4Qus7INktacctDgY8Ow==",
       "engines": {
         "node": ">=10.0.0"
       },
diff --git a/pkgs/by-name/gr/graphite-cli/package.nix b/pkgs/by-name/gr/graphite-cli/package.nix
index 67872584aadb..df4f95b88bb5 100644
--- a/pkgs/by-name/gr/graphite-cli/package.nix
+++ b/pkgs/by-name/gr/graphite-cli/package.nix
@@ -7,14 +7,14 @@
 
 buildNpmPackage rec {
   pname = "graphite-cli";
-  version = "1.3.3";
+  version = "1.3.4";
 
   src = fetchurl {
     url = "https://registry.npmjs.org/@withgraphite/graphite-cli/-/graphite-cli-${version}.tgz";
-    hash = "sha256-zNHk80PGsjucoZgKbLn5khQmhgrxKJfldiLJBzF4EXs=";
+    hash = "sha256-Rc/dj3r3EpMbxx9rYj4kXnstmUGLR46U+7v6n1jSaiQ=";
   };
 
-  npmDepsHash = "sha256-A/J7CUWtl0Wlv1fJKx1qSub7JhDoZhHsWHAYkcAGy6g=";
+  npmDepsHash = "sha256-w9d96SMLISPua9LMZscDjL7L8mGPO1RGyNjg8eU40hw=";
 
   postPatch = ''
     ln -s ${./package-lock.json} package-lock.json
diff --git a/pkgs/by-name/gr/greenmask/package.nix b/pkgs/by-name/gr/greenmask/package.nix
new file mode 100644
index 000000000000..4e5504ce769c
--- /dev/null
+++ b/pkgs/by-name/gr/greenmask/package.nix
@@ -0,0 +1,50 @@
+{
+  lib,
+  buildGoModule,
+  coreutils,
+  fetchFromGitHub,
+}:
+
+buildGoModule rec {
+  pname = "greenmask";
+  version = "0.1.14";
+
+  src = fetchFromGitHub {
+    owner = "GreenmaskIO";
+    repo = "greenmask";
+    rev = "refs/tags/v${version}";
+    hash = "sha256-R/JJnHBp9MPnq/fIDwYrePIUH3/FvDPFaRpmrpwhU6o=";
+  };
+
+  vendorHash = "sha256-WCsZ5DU+mZk9M1lldBY4q2PXI8DDFytPojzGJ6wqXsg=";
+
+  subPackages = [ "cmd/greenmask/" ];
+
+  ldflags = [
+    "-s"
+    "-w"
+    "-X=github.com/greenmaskio/greenmask/cmd/greenmask/cmd.Version=${version}"
+  ];
+
+  nativeCheckInputs = [ coreutils ];
+
+  preCheck = ''
+    substituteInPlace internal/db/postgres/transformers/custom/dynamic_definition_test.go \
+      --replace-fail "/bin/echo" "${coreutils}/bin/echo"
+
+    substituteInPlace tests/integration/greenmask/main_test.go \
+      --replace-fail "TestTocLibrary" "SkipTestTocLibrary" \
+      --replace-fail "TestGreenmaskBackwardCompatibility" "SkipTestGreenmaskBackwardCompatibility"
+    substituteInPlace tests/integration/storages/main_test.go \
+      --replace-fail "TestS3Storage" "SkipTestS3Storage"
+  '';
+
+  meta = with lib; {
+    description = "PostgreSQL database anonymization tool";
+    homepage = "https://github.com/GreenmaskIO/greenmask";
+    changelog = "https://github.com/GreenmaskIO/greenmask/releases/tag/v${version}";
+    license = licenses.asl20;
+    maintainers = with maintainers; [ fab ];
+    mainProgram = "greenmask";
+  };
+}
diff --git a/pkgs/by-name/gr/grype/package.nix b/pkgs/by-name/gr/grype/package.nix
index 645c9cadb4fc..25cf7d472839 100644
--- a/pkgs/by-name/gr/grype/package.nix
+++ b/pkgs/by-name/gr/grype/package.nix
@@ -9,13 +9,13 @@
 
 buildGoModule rec {
   pname = "grype";
-  version = "0.77.1";
+  version = "0.77.4";
 
   src = fetchFromGitHub {
     owner = "anchore";
     repo = "grype";
     rev = "refs/tags/v${version}";
-    hash = "sha256-Qfoo05MicnQ1shbEV/Rrz9TDrMBDvWBr0U/ZqnlnLTI=";
+    hash = "sha256-xD6G4DGimmYVVCZHpXlvC24zaRwpRpQ0iRc4Yxac3O8=";
     # populate values that require us to use git. By doing this in postFetch we
     # can delete .git afterwards and maintain better reproducibility of the src.
     leaveDotGit = true;
@@ -30,7 +30,7 @@ buildGoModule rec {
 
   proxyVendor = true;
 
-  vendorHash = "sha256-lAq1PRElWR0F+OfuSBpR/gnFOptFH33ObR8yd1k7oMk=";
+  vendorHash = "sha256-WosgdN49MEXSfK42l4em+Cpk8iAQphf9KOhY0mgBQ7U=";
 
   nativeBuildInputs = [ installShellFiles ];
 
@@ -90,6 +90,8 @@ buildGoModule rec {
       --replace-fail "TestAllNames" "SkipAllNames"
     substituteInPlace test/cli/version_cmd_test.go \
       --replace-fail "TestVersionCmdPrintsToStdout" "SkipVersionCmdPrintsToStdout"
+    substituteInPlace grype/presenter/sarif/presenter_test.go \
+      --replace-fail "Test_SarifIsValid" "SkipTest_SarifIsValid"
 
     # segfault
     rm grype/db/v5/namespace/cpe/namespace_test.go
@@ -103,10 +105,9 @@ buildGoModule rec {
   '';
 
   meta = with lib; {
+    description = "Vulnerability scanner for container images and filesystems";
     homepage = "https://github.com/anchore/grype";
     changelog = "https://github.com/anchore/grype/releases/tag/v${version}";
-    description = "Vulnerability scanner for container images and filesystems";
-    mainProgram = "grype";
     longDescription = ''
       As a vulnerability scanner grype is able to scan the contents of a
       container image or filesystem to find known vulnerabilities.
@@ -117,5 +118,6 @@ buildGoModule rec {
       jk
       kashw2
     ];
+    mainProgram = "grype";
   };
 }
diff --git a/pkgs/by-name/gt/gtimelog/package.nix b/pkgs/by-name/gt/gtimelog/package.nix
index 138575132945..471a0fd890b8 100644
--- a/pkgs/by-name/gt/gtimelog/package.nix
+++ b/pkgs/by-name/gt/gtimelog/package.nix
@@ -1,4 +1,4 @@
-{ lib, fetchFromGitHub, python3Packages, wrapGAppsHook
+{ lib, fetchFromGitHub, python3Packages, wrapGAppsHook3
 , glibcLocales, gobject-introspection, gtk3, libsoup_3, libsecret
 }:
 
@@ -14,7 +14,7 @@ python3Packages.buildPythonApplication rec {
     hash = "sha256-+iBHfbUJtAtI/vcHj0Y8f9OxAp1SnhQyMqedVzSYPZQ=";
   };
 
-  nativeBuildInputs = [ wrapGAppsHook gobject-introspection ];
+  nativeBuildInputs = [ wrapGAppsHook3 gobject-introspection ];
   buildInputs = [ glibcLocales gtk3 libsoup_3 libsecret ];
   propagatedBuildInputs = with python3Packages; [
     pygobject3
diff --git a/pkgs/by-name/gt/gtkhash/package.nix b/pkgs/by-name/gt/gtkhash/package.nix
index 63d0c788c976..87cfcf374bd0 100644
--- a/pkgs/by-name/gt/gtkhash/package.nix
+++ b/pkgs/by-name/gt/gtkhash/package.nix
@@ -5,7 +5,7 @@
 , ninja
 , cmake
 , pkg-config
-, wrapGAppsHook
+, wrapGAppsHook3
 , gtk3
 , glib
 , openssl
@@ -30,7 +30,7 @@ stdenv.mkDerivation rec {
     ninja
     cmake
     pkg-config
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
diff --git a/pkgs/by-name/gu/guile-goblins/package.nix b/pkgs/by-name/gu/guile-goblins/package.nix
index 13b391e4f6f5..aa5bcbc4bced 100644
--- a/pkgs/by-name/gu/guile-goblins/package.nix
+++ b/pkgs/by-name/gu/guile-goblins/package.nix
@@ -10,11 +10,11 @@
 }:
 stdenv.mkDerivation rec {
   pname = "guile-goblins";
-  version = "0.12.0";
+  version = "0.13.0";
 
   src = fetchurl {
     url = "https://spritely.institute/files/releases/guile-goblins/guile-goblins-${version}.tar.gz";
-    hash = "sha256-P5WKKv5i5Lrs4en+IWL40AkYAD+bgTyFdsQqE4FxPfA=";
+    hash = "sha256-efmyOtPAz1ZPdMCuVaGALR6e0lg7gcjt81BUMBVUKug=";
   };
 
   strictDeps = true;
diff --git a/pkgs/by-name/gu/guile-lzlib/package.nix b/pkgs/by-name/gu/guile-lzlib/package.nix
index f60a03b6da90..701c364da712 100644
--- a/pkgs/by-name/gu/guile-lzlib/package.nix
+++ b/pkgs/by-name/gu/guile-lzlib/package.nix
@@ -10,11 +10,11 @@
 
 stdenv.mkDerivation rec {
   pname = "guile-lzlib";
-  version = "0.0.2";
+  version = "0.3.0";
 
   src = fetchurl {
     url = "https://notabug.org/guile-lzlib/guile-lzlib/archive/${version}.tar.gz";
-    hash = "sha256-hiPbd9RH57n/v8vCiDkOcGprGomxFx2u1gh0z+x+T4c=";
+    hash = "sha256-p/mcjSoUPgXqItstyLnObCfK6UIWK0XuMBXtkCevD/I=";
   };
 
   strictDeps = true;
diff --git a/pkgs/by-name/gu/gungnir/package.nix b/pkgs/by-name/gu/gungnir/package.nix
new file mode 100644
index 000000000000..04f02865c4b9
--- /dev/null
+++ b/pkgs/by-name/gu/gungnir/package.nix
@@ -0,0 +1,29 @@
+{ lib
+, buildGoModule
+, fetchFromGitHub
+}:
+
+buildGoModule rec {
+  pname = "gungnir";
+  version = "1.0.8";
+
+  src = fetchFromGitHub {
+    owner = "g0ldencybersec";
+    repo = "gungnir";
+    rev = "v${version}";
+    hash = "sha256-k6fxAvUBAAcTHzdeGhekYhPpnS05jHq/7EqxafQfMio=";
+  };
+
+  vendorHash = "sha256-r2aU59L0fnSdc/lpR04K/GQ1eZ7ihV+tKlyuS6sPX2o=";
+
+  ldflags = [ "-s" "-w" ];
+
+  meta = with lib; {
+    description = "A command-line tool that continuously monitors certificate transparency (CT) logs for newly issued SSL/TLS certificates";
+    homepage = "https://github.com/g0ldencybersec/gungnir";
+    license = licenses.mit;
+    maintainers = with maintainers; [ cherrykitten ];
+    mainProgram = "gungnir";
+  };
+}
+
diff --git a/pkgs/by-name/ha/halloy/Cargo.lock b/pkgs/by-name/ha/halloy/Cargo.lock
index 774723b056a0..74e5fa582d6c 100644
--- a/pkgs/by-name/ha/halloy/Cargo.lock
+++ b/pkgs/by-name/ha/halloy/Cargo.lock
@@ -121,6 +121,12 @@ dependencies = [
 ]
 
 [[package]]
+name = "anyhow"
+version = "1.0.82"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "f538837af36e6f6a9be0faa67f9a314f8119e4e4b5867c6ab40ed60360142519"
+
+[[package]]
 name = "approx"
 version = "0.5.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -246,6 +252,18 @@ dependencies = [
 ]
 
 [[package]]
+name = "async-http-proxy"
+version = "1.2.5"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "29faa5d4d308266048bd7505ba55484315a890102f9345b9ff4b87de64201592"
+dependencies = [
+ "base64 0.13.1",
+ "httparse",
+ "thiserror",
+ "tokio",
+]
+
+[[package]]
 name = "async-io"
 version = "1.13.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -414,6 +432,12 @@ dependencies = [
 
 [[package]]
 name = "base64"
+version = "0.13.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "9e1b586273c5702936fe7b7d6896644d8be71e6314cfe09d3167c95f712589e8"
+
+[[package]]
+name = "base64"
 version = "0.21.7"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "9d297deb1925b89f2ccc13d7635fa0714f12c87adce1c75356b39ca9b7178567"
@@ -923,7 +947,7 @@ dependencies = [
 name = "data"
 version = "0.1.0"
 dependencies = [
- "base64",
+ "base64 0.21.7",
  "bytes",
  "chrono",
  "dirs-next",
@@ -947,6 +971,7 @@ dependencies = [
  "tokio",
  "tokio-stream",
  "toml",
+ "xdg",
 ]
 
 [[package]]
@@ -1271,6 +1296,20 @@ dependencies = [
 ]
 
 [[package]]
+name = "fast-socks5"
+version = "0.9.6"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "f89f36d4ee12370d30d57b16c7e190950a1a916e7dbbb5fd5a412f5ef913fe84"
+dependencies = [
+ "anyhow",
+ "async-trait",
+ "log",
+ "thiserror",
+ "tokio",
+ "tokio-stream",
+]
+
+[[package]]
 name = "fast-srgb8"
 version = "1.0.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -1924,7 +1963,7 @@ dependencies = [
 [[package]]
 name = "iced"
 version = "0.13.0-dev"
-source = "git+https://github.com/iced-rs/iced?rev=31d1d5fecbef50fa319cabd5d4194f1e4aaefa21#31d1d5fecbef50fa319cabd5d4194f1e4aaefa21"
+source = "git+https://github.com/iced-rs/iced?rev=a05b8044a9a82c1802d4d97f1723e24b9d9dad9c#a05b8044a9a82c1802d4d97f1723e24b9d9dad9c"
 dependencies = [
  "iced_core",
  "iced_futures",
@@ -1938,7 +1977,7 @@ dependencies = [
 [[package]]
 name = "iced_core"
 version = "0.13.0-dev"
-source = "git+https://github.com/iced-rs/iced?rev=31d1d5fecbef50fa319cabd5d4194f1e4aaefa21#31d1d5fecbef50fa319cabd5d4194f1e4aaefa21"
+source = "git+https://github.com/iced-rs/iced?rev=a05b8044a9a82c1802d4d97f1723e24b9d9dad9c#a05b8044a9a82c1802d4d97f1723e24b9d9dad9c"
 dependencies = [
  "bitflags 2.5.0",
  "dark-light",
@@ -1957,7 +1996,7 @@ dependencies = [
 [[package]]
 name = "iced_futures"
 version = "0.13.0-dev"
-source = "git+https://github.com/iced-rs/iced?rev=31d1d5fecbef50fa319cabd5d4194f1e4aaefa21#31d1d5fecbef50fa319cabd5d4194f1e4aaefa21"
+source = "git+https://github.com/iced-rs/iced?rev=a05b8044a9a82c1802d4d97f1723e24b9d9dad9c#a05b8044a9a82c1802d4d97f1723e24b9d9dad9c"
 dependencies = [
  "futures",
  "iced_core",
@@ -1971,7 +2010,7 @@ dependencies = [
 [[package]]
 name = "iced_graphics"
 version = "0.13.0-dev"
-source = "git+https://github.com/iced-rs/iced?rev=31d1d5fecbef50fa319cabd5d4194f1e4aaefa21#31d1d5fecbef50fa319cabd5d4194f1e4aaefa21"
+source = "git+https://github.com/iced-rs/iced?rev=a05b8044a9a82c1802d4d97f1723e24b9d9dad9c#a05b8044a9a82c1802d4d97f1723e24b9d9dad9c"
 dependencies = [
  "bitflags 2.5.0",
  "bytemuck",
@@ -1992,7 +2031,7 @@ dependencies = [
 [[package]]
 name = "iced_renderer"
 version = "0.13.0-dev"
-source = "git+https://github.com/iced-rs/iced?rev=31d1d5fecbef50fa319cabd5d4194f1e4aaefa21#31d1d5fecbef50fa319cabd5d4194f1e4aaefa21"
+source = "git+https://github.com/iced-rs/iced?rev=a05b8044a9a82c1802d4d97f1723e24b9d9dad9c#a05b8044a9a82c1802d4d97f1723e24b9d9dad9c"
 dependencies = [
  "iced_graphics",
  "iced_tiny_skia",
@@ -2004,7 +2043,7 @@ dependencies = [
 [[package]]
 name = "iced_runtime"
 version = "0.13.0-dev"
-source = "git+https://github.com/iced-rs/iced?rev=31d1d5fecbef50fa319cabd5d4194f1e4aaefa21#31d1d5fecbef50fa319cabd5d4194f1e4aaefa21"
+source = "git+https://github.com/iced-rs/iced?rev=a05b8044a9a82c1802d4d97f1723e24b9d9dad9c#a05b8044a9a82c1802d4d97f1723e24b9d9dad9c"
 dependencies = [
  "iced_core",
  "iced_futures",
@@ -2015,7 +2054,7 @@ dependencies = [
 [[package]]
 name = "iced_tiny_skia"
 version = "0.13.0-dev"
-source = "git+https://github.com/iced-rs/iced?rev=31d1d5fecbef50fa319cabd5d4194f1e4aaefa21#31d1d5fecbef50fa319cabd5d4194f1e4aaefa21"
+source = "git+https://github.com/iced-rs/iced?rev=a05b8044a9a82c1802d4d97f1723e24b9d9dad9c#a05b8044a9a82c1802d4d97f1723e24b9d9dad9c"
 dependencies = [
  "bytemuck",
  "cosmic-text",
@@ -2030,7 +2069,7 @@ dependencies = [
 [[package]]
 name = "iced_wgpu"
 version = "0.13.0-dev"
-source = "git+https://github.com/iced-rs/iced?rev=31d1d5fecbef50fa319cabd5d4194f1e4aaefa21#31d1d5fecbef50fa319cabd5d4194f1e4aaefa21"
+source = "git+https://github.com/iced-rs/iced?rev=a05b8044a9a82c1802d4d97f1723e24b9d9dad9c#a05b8044a9a82c1802d4d97f1723e24b9d9dad9c"
 dependencies = [
  "bitflags 2.5.0",
  "bytemuck",
@@ -2049,7 +2088,7 @@ dependencies = [
 [[package]]
 name = "iced_widget"
 version = "0.13.0-dev"
-source = "git+https://github.com/iced-rs/iced?rev=31d1d5fecbef50fa319cabd5d4194f1e4aaefa21#31d1d5fecbef50fa319cabd5d4194f1e4aaefa21"
+source = "git+https://github.com/iced-rs/iced?rev=a05b8044a9a82c1802d4d97f1723e24b9d9dad9c#a05b8044a9a82c1802d4d97f1723e24b9d9dad9c"
 dependencies = [
  "iced_renderer",
  "iced_runtime",
@@ -2063,7 +2102,7 @@ dependencies = [
 [[package]]
 name = "iced_winit"
 version = "0.13.0-dev"
-source = "git+https://github.com/iced-rs/iced?rev=31d1d5fecbef50fa319cabd5d4194f1e4aaefa21#31d1d5fecbef50fa319cabd5d4194f1e4aaefa21"
+source = "git+https://github.com/iced-rs/iced?rev=a05b8044a9a82c1802d4d97f1723e24b9d9dad9c#a05b8044a9a82c1802d4d97f1723e24b9d9dad9c"
 dependencies = [
  "iced_graphics",
  "iced_runtime",
@@ -2156,7 +2195,9 @@ checksum = "8f518f335dce6725a761382244631d86cf0ccb2863413590b31338feb467f9c3"
 name = "irc"
 version = "0.1.0"
 dependencies = [
+ "async-http-proxy",
  "bytes",
+ "fast-socks5",
  "futures",
  "irc_proto",
  "rustls-native-certs",
@@ -3377,7 +3418,7 @@ version = "0.12.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "2d66674f2b6fb864665eea7a3c1ac4e3dfacd2fda83cf6f935a612e01b0e3338"
 dependencies = [
- "base64",
+ "base64 0.21.7",
  "bytes",
  "encoding_rs",
  "futures-core",
@@ -3548,7 +3589,7 @@ version = "1.0.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "1c74cae0a4cf6ccbbf5f359f08efdf8ee7e1dc532573bf0db71968cb56b1448c"
 dependencies = [
- "base64",
+ "base64 0.21.7",
 ]
 
 [[package]]
@@ -3557,7 +3598,7 @@ version = "2.1.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "f48172685e6ff52a556baa527774f61fcaa884f59daf3375c62a3f1cd2549dab"
 dependencies = [
- "base64",
+ "base64 0.21.7",
  "rustls-pki-types",
 ]
 
@@ -5302,6 +5343,12 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "6a0ccd7b4a5345edfcd0c3535718a4e9ff7798ffc536bb5b5a0e26ff84732911"
 
 [[package]]
+name = "xdg"
+version = "2.5.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "213b7324336b53d2414b2db8537e56544d981803139155afa84f76eeebb7a546"
+
+[[package]]
 name = "xdg-home"
 version = "1.1.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
diff --git a/pkgs/by-name/ha/halloy/package.nix b/pkgs/by-name/ha/halloy/package.nix
index b38708b97423..7075d2a4a9a5 100644
--- a/pkgs/by-name/ha/halloy/package.nix
+++ b/pkgs/by-name/ha/halloy/package.nix
@@ -1,34 +1,35 @@
-{ lib
-, stdenv
-, darwin
-, fetchFromGitHub
-, copyDesktopItems
-, makeDesktopItem
-, libxkbcommon
-, openssl
-, pkg-config
-, rustPlatform
-, vulkan-loader
-, wayland
-, xorg
+{
+  lib,
+  stdenv,
+  darwin,
+  fetchFromGitHub,
+  copyDesktopItems,
+  makeDesktopItem,
+  libxkbcommon,
+  openssl,
+  pkg-config,
+  rustPlatform,
+  vulkan-loader,
+  wayland,
+  xorg,
 }:
 
 rustPlatform.buildRustPackage rec {
   pname = "halloy";
-  version = "2024.6";
+  version = "2024.7";
 
   src = fetchFromGitHub {
     owner = "squidowl";
     repo = "halloy";
     rev = "refs/tags/${version}";
-    hash = "sha256-UfeGRLZ0k2hHiA6o5kTysszU1WS4JUF5AXhKmE86bDM=";
+    hash = "sha256-CXuodMndUvltwjIiEdJuIazCYKqD/azROgSBTM6g87A=";
   };
 
   cargoLock = {
     lockFile = ./Cargo.lock;
     outputHashes = {
-      "iced-0.13.0-dev" = "sha256-acGN7yxf33fDoh8J8uKvwiID+Xz1oVJ7KiiWgNWDXfo=";
       "glyphon-0.5.0" = "sha256-e1jTuaWh9eFdk2pDE4Ov/l3b/Q7GA3hqx6dPoOde1hM=";
+      "iced-0.13.0-dev" = "sha256-K1B9rVkShxQC97kwebHPsqJsJmxjEsFCKpg+p2lt09U=";
       "winit-0.29.15" = "sha256-9i2i4KcEv7vIImJtcw2NALQ3uDb4EAZXjShG6tfmhkc=";
     };
   };
@@ -38,26 +39,27 @@ rustPlatform.buildRustPackage rec {
     pkg-config
   ];
 
-  buildInputs = [
-    libxkbcommon
-    openssl
-    vulkan-loader
-    xorg.libX11
-    xorg.libXcursor
-    xorg.libXi
-    xorg.libXrandr
-  ] ++ lib.optionals stdenv.isDarwin [
-    darwin.apple_sdk.frameworks.AppKit
-    darwin.apple_sdk.frameworks.CoreFoundation
-    darwin.apple_sdk.frameworks.CoreGraphics
-    darwin.apple_sdk.frameworks.Cocoa
-    darwin.apple_sdk.frameworks.Foundation
-    darwin.apple_sdk.frameworks.Metal
-    darwin.apple_sdk.frameworks.QuartzCore
-    darwin.apple_sdk.frameworks.Security
-  ] ++ lib.optionals stdenv.isLinux [
-    wayland
-  ];
+  buildInputs =
+    [
+      libxkbcommon
+      openssl
+      vulkan-loader
+      xorg.libX11
+      xorg.libXcursor
+      xorg.libXi
+      xorg.libXrandr
+    ]
+    ++ lib.optionals stdenv.isDarwin [
+      darwin.apple_sdk.frameworks.AppKit
+      darwin.apple_sdk.frameworks.CoreFoundation
+      darwin.apple_sdk.frameworks.CoreGraphics
+      darwin.apple_sdk.frameworks.Cocoa
+      darwin.apple_sdk.frameworks.Foundation
+      darwin.apple_sdk.frameworks.Metal
+      darwin.apple_sdk.frameworks.QuartzCore
+      darwin.apple_sdk.frameworks.Security
+    ]
+    ++ lib.optionals stdenv.isLinux [ wayland ];
 
   desktopItems = [
     (makeDesktopItem {
@@ -67,21 +69,35 @@ rustPlatform.buildRustPackage rec {
       icon = "org.squidowl.halloy";
       exec = pname;
       terminal = false;
-      mimeTypes = [ "x-scheme-handler/irc" "x-scheme-handler/ircs" ];
-      categories = [ "Network" "IRCClient" ];
-      keywords = [ "IM" "Chat" ];
+      mimeTypes = [
+        "x-scheme-handler/irc"
+        "x-scheme-handler/ircs"
+      ];
+      categories = [
+        "Network"
+        "IRCClient"
+      ];
+      keywords = [
+        "IM"
+        "Chat"
+      ];
       startupWMClass = "org.squidowl.halloy";
     })
   ];
 
   postFixup = lib.optional stdenv.isLinux (
     let
-      rpathWayland = lib.makeLibraryPath [ wayland vulkan-loader libxkbcommon ];
+      rpathWayland = lib.makeLibraryPath [
+        wayland
+        vulkan-loader
+        libxkbcommon
+      ];
     in
     ''
       rpath=$(patchelf --print-rpath $out/bin/halloy)
       patchelf --set-rpath "$rpath:${rpathWayland}" $out/bin/halloy
-    '');
+    ''
+  );
 
   postInstall = ''
     install -Dm644 assets/linux/icons/hicolor/128x128/apps/org.squidowl.halloy.png \
diff --git a/pkgs/by-name/ha/halo/package.nix b/pkgs/by-name/ha/halo/package.nix
new file mode 100644
index 000000000000..998e1f370698
--- /dev/null
+++ b/pkgs/by-name/ha/halo/package.nix
@@ -0,0 +1,72 @@
+{ lib
+, stdenv
+, fetchurl
+, makeWrapper
+  # official jre size is 500MB, but temurin-jre-bin is 100MB.
+, temurin-jre-bin
+}:
+stdenv.mkDerivation rec {
+  pname = "halo";
+  version = "2.15.2";
+  src = fetchurl {
+    url = "https://github.com/halo-dev/halo/releases/download/v${version}/${pname}-${version}.jar";
+    hash = "sha256-BCcIDaWtn8OkI+GWs741nWgqyO8qlE9m2hZ3e+iViUI=";
+  };
+
+  nativeBuildInputs = [
+    makeWrapper
+    temurin-jre-bin
+  ];
+
+  dontBuild = true;
+  dontConfigure = true;
+
+  unpackPhase = ''
+    cp $src halo.jar
+    # Extract the jar file.
+    # Because jar vs extract, jar startup time is 4s slower than extract.
+    java -Djarmode=tools -jar halo.jar extract --layers --launcher
+  '';
+
+  installPhase = ''
+    runHook preInstall
+
+    mkdir -p $out/share/halo
+    find halo -type d -empty -delete
+    for target in halo/*; do
+      cp -r $target/* $out/share/halo
+    done
+
+    # 'HALO_WORK_DIR'
+    # Set the working directory for halo, then plug-ins and other content will be stored in this directory.
+    # Note: that the '/' symbol is not required at the end of the path.
+    # default: /var/lib/halo
+    # 'JVM_OPTS'
+    # Note: 'apache.lucene' requires us to set HotspotVMOptions.
+    # You can override this via environment variables.
+    # default: -Xms256m -Xmx256m
+    # 'SPRING_CONFIG_LOCATION'
+    # Note: 'spring.config.location' is used to specify the configuration file location.
+    # Warning: This variable is based on "HALO_WORK_DIR", you do not need and should not set or override it.
+    mkdir -p $out/bin
+    makeWrapper ${temurin-jre-bin}/bin/java $out/bin/halo \
+      --chdir $out/share/halo \
+      --set-default HALO_WORK_DIR "/var/lib/halo" \
+      --set-default JVM_OPTS "-Xms256m -Xmx256m" \
+      --set SPRING_CONFIG_LOCATION "optional:classpath:/;optional:file:\`\$HALO_WORK_DIR\`/" \
+      --add-flags "-server \$JVM_OPTS" \
+      --add-flags "org.springframework.boot.loader.launch.JarLauncher"
+
+    runHook postInstall
+  '';
+
+  meta = {
+    homepage = "https://www.halo.run";
+    description = "Self-hosted dynamic blogging program";
+    maintainers = with lib.maintainers; [ yah ];
+    license = lib.licenses.gpl3Only;
+    platforms = [ "aarch64-linux" "x86_64-linux" ];
+    mainProgram = "halo";
+    sourceProvenance = with lib.sourceTypes; [ binaryBytecode ];
+  };
+}
diff --git a/pkgs/by-name/ha/handheld-daemon/package.nix b/pkgs/by-name/ha/handheld-daemon/package.nix
index 246e3879bb5c..ec24637dde3f 100644
--- a/pkgs/by-name/ha/handheld-daemon/package.nix
+++ b/pkgs/by-name/ha/handheld-daemon/package.nix
@@ -9,14 +9,14 @@
 }:
 python3.pkgs.buildPythonApplication rec {
   pname = "handheld-daemon";
-  version = "2.6.4";
+  version = "2.7.2";
   pyproject = true;
 
   src = fetchFromGitHub {
     owner = "hhd-dev";
     repo = "hhd";
     rev = "v${version}";
-    hash = "sha256-S77APtE1GGfqnv1IkZdJOSlprPOBtrqVXV60yVMvopg=";
+    hash = "sha256-jWLL1nmKam1iJ1R1l/OuIp+isgZ7toRhVamx1nOID/8=";
   };
 
   propagatedBuildInputs = with python3.pkgs; [
diff --git a/pkgs/by-name/ha/hare/003-hardcode-qbe-and-harec.patch b/pkgs/by-name/ha/hare/003-hardcode-qbe-and-harec.patch
new file mode 100644
index 000000000000..808d75aeb185
--- /dev/null
+++ b/pkgs/by-name/ha/hare/003-hardcode-qbe-and-harec.patch
@@ -0,0 +1,24 @@
+diff --git a/cmd/hare/build.ha b/cmd/hare/build.ha
+index b2ac6518..417b46c6 100644
+--- a/cmd/hare/build.ha
++++ b/cmd/hare/build.ha
+@@ -37,7 +37,7 @@ fn build(name: str, cmd: *getopt::command) (void | error) = {
+ 		case let ncpu: size =>
+ 			yield ncpu;
+ 		},
+-		version = build::get_version(os::tryenv("HAREC", "harec"))?,
++		version = build::get_version(os::tryenv("HAREC", "@harec@"))?,
+ 		arch = arch.qbe_name,
+ 		platform = build::get_platform(os::sysname())?,
+ 		...
+@@ -145,8 +145,8 @@ fn build(name: str, cmd: *getopt::command) (void | error) = {
+ 	set_arch_tags(&ctx.ctx.tags, arch);
+ 
+ 	ctx.cmds = ["",
+-		os::tryenv("HAREC", "harec"),
+-		os::tryenv("QBE", "qbe"),
++		os::tryenv("HAREC", "@harec@"),
++		os::tryenv("QBE", "@qbe@"),
+ 		os::tryenv("AS", arch.as_cmd),
+ 		os::tryenv("LD", arch.ld_cmd),
+ 	];
diff --git a/pkgs/by-name/ha/hare/package.nix b/pkgs/by-name/ha/hare/package.nix
index 49e4d91db7f5..3cf37e33109b 100644
--- a/pkgs/by-name/ha/hare/package.nix
+++ b/pkgs/by-name/ha/hare/package.nix
@@ -1,71 +1,88 @@
-{ lib
-, stdenv
-, fetchFromSourcehut
-, binutils-unwrapped
-, harec
-, makeWrapper
-, qbe
-, gitUpdater
-, scdoc
-, tzdata
-, substituteAll
-, fetchpatch
-, callPackage
-, enableCrossCompilation ? (stdenv.hostPlatform.isLinux && stdenv.hostPlatform.is64bit)
-, pkgsCross
-, x86_64PkgsCrossToolchain ? pkgsCross.gnu64
-, aarch64PkgsCrossToolchain ? pkgsCross.aarch64-multiplatform
-, riscv64PkgsCrossToolchain ? pkgsCross.riscv64
+{
+  lib,
+  stdenv,
+  fetchFromSourcehut,
+  harec,
+  qbe,
+  gitUpdater,
+  scdoc,
+  tzdata,
+  substituteAll,
+  fetchpatch,
+  callPackage,
+  enableCrossCompilation ? (stdenv.hostPlatform.isLinux && stdenv.hostPlatform.is64bit),
+  pkgsCross,
+  x86_64PkgsCrossToolchain ? pkgsCross.gnu64,
+  aarch64PkgsCrossToolchain ? pkgsCross.aarch64-multiplatform,
+  riscv64PkgsCrossToolchain ? pkgsCross.riscv64,
 }:
 
 # There's no support for `aarch64` or `riscv64` for freebsd nor for openbsd on nix.
 # See `lib.systems.doubles.aarch64` and `lib.systems.doubles.riscv64`.
-assert let
-  inherit (stdenv.hostPlatform) isLinux is64bit;
-  inherit (lib) intersectLists platforms concatStringsSep;
-  workingPlatforms = intersectLists platforms.linux (with platforms; x86_64 ++ aarch64 ++ riscv64);
-in
-(enableCrossCompilation -> !(isLinux && is64bit))
+assert
+  let
+    inherit (stdenv.hostPlatform) isLinux is64bit;
+    inherit (lib) intersectLists platforms concatStringsSep;
+    workingPlatforms = intersectLists platforms.linux (with platforms; x86_64 ++ aarch64 ++ riscv64);
+  in
+  (enableCrossCompilation -> !(isLinux && is64bit))
   -> builtins.throw ''
-  The cross-compilation toolchains may only be enabled on the following platforms:
-  ${concatStringsSep "\n" workingPlatforms}
-'';
+    The cross-compilation toolchains may only be enabled on the following platforms:
+    ${concatStringsSep "\n" workingPlatforms}
+  '';
 
 let
+  buildArch = stdenv.buildPlatform.uname.processor;
   arch = stdenv.hostPlatform.uname.processor;
-  qbePlatform = {
-    x86_64 = "amd64_sysv";
-    aarch64 = "arm64";
-    riscv64 = "rv64";
-  }.${arch};
   platform = lib.toLower stdenv.hostPlatform.uname.system;
+  qbePlatform =
+    {
+      x86_64 = "amd64_sysv";
+      aarch64 = "arm64";
+      riscv64 = "rv64";
+    }
+    .${arch};
   embeddedOnBinaryTools =
     let
-      genToolsFromToolchain = toolchain:
+      genPaths =
+        toolchain:
         let
-          crossTargetPrefix = toolchain.stdenv.cc.targetPrefix;
-          toolchainArch = toolchain.stdenv.hostPlatform.uname.processor;
-          absOrRelPath = toolDrv: toolBasename:
-            if arch == toolchainArch then toolBasename
-            else lib.getExe' toolDrv "${crossTargetPrefix}${toolBasename}";
+          inherit (toolchain.stdenv.cc) targetPrefix;
+          inherit (toolchain.stdenv.targetPlatform.uname) processor;
         in
         {
-          "ld" = absOrRelPath toolchain.buildPackages.binutils "ld";
-          "as" = absOrRelPath toolchain.buildPackages.binutils "as";
-          "cc" = absOrRelPath toolchain.stdenv.cc "cc";
+          "${processor}" = {
+            "ld" = lib.getExe' toolchain.buildPackages.binutils "${targetPrefix}ld";
+            "as" = lib.getExe' toolchain.buildPackages.binutils "${targetPrefix}as";
+            "cc" = lib.getExe' toolchain.stdenv.cc "${targetPrefix}cc";
+          };
         };
     in
-    {
-      x86_64 = genToolsFromToolchain x86_64PkgsCrossToolchain;
-      aarch64 = genToolsFromToolchain aarch64PkgsCrossToolchain;
-      riscv64 = genToolsFromToolchain riscv64PkgsCrossToolchain;
-    };
+    builtins.foldl' (acc: elem: acc // (genPaths elem)) { } [
+      x86_64PkgsCrossToolchain
+      aarch64PkgsCrossToolchain
+      riscv64PkgsCrossToolchain
+    ];
+  crossCompMakeFlags = builtins.filter (x: !(lib.hasPrefix (lib.toUpper buildArch) x)) [
+    "RISCV64_AS=${embeddedOnBinaryTools.riscv64.as}"
+    "RISCV64_CC=${embeddedOnBinaryTools.riscv64.cc}"
+    "RISCV64_LD=${embeddedOnBinaryTools.riscv64.ld}"
+    "AARCH64_AS=${embeddedOnBinaryTools.aarch64.as}"
+    "AARCH64_CC=${embeddedOnBinaryTools.aarch64.cc}"
+    "AARCH64_LD=${embeddedOnBinaryTools.aarch64.ld}"
+    "X86_64_AS=${embeddedOnBinaryTools.x86_64.as}"
+    "X86_64_CC=${embeddedOnBinaryTools.x86_64.cc}"
+    "X86_64_LD=${embeddedOnBinaryTools.x86_64.ld}"
+  ];
 in
 stdenv.mkDerivation (finalAttrs: {
   pname = "hare";
   version = "0.24.0";
 
-  outputs = [ "out" "man" ];
+  outputs = [
+    "out"
+    "man"
+  ];
 
   src = fetchFromSourcehut {
     owner = "~sircmpwn";
@@ -88,20 +105,35 @@ stdenv.mkDerivation (finalAttrs: {
     # Don't build haredoc since it uses the build `hare` bin, which breaks
     # cross-compilation.
     ./002-dont-build-haredoc.patch
+    # Hardcode harec and qbe.
+    (substituteAll {
+      src = ./003-hardcode-qbe-and-harec.patch;
+      harec = lib.getExe harec;
+      qbe = lib.getExe qbe;
+    })
+    # Display toolchains when using `hare version -v`.
+    (fetchpatch {
+      url = "https://git.sr.ht/~sircmpwn/hare/commit/e35f2284774436f422e06f0e8d290b173ced1677.patch";
+      hash = "sha256-A59bGO/9tOghV8/MomTxd8xRExkHVdoMom2d+HTfQGg=";
+    })
   ];
 
   nativeBuildInputs = [
     harec
-    makeWrapper
     qbe
     scdoc
   ];
 
+  # Needed for build frameworks like `haredo`, which set the HAREC and QBE env vars to `harec` and
+  # `qbe` respectively.
+  propagatedBuildInputs = [
+    harec
+    qbe
+  ];
+
   buildInputs = [
-    binutils-unwrapped
     harec
     qbe
-    tzdata
   ];
 
   makeFlags = [
@@ -110,23 +142,15 @@ stdenv.mkDerivation (finalAttrs: {
     "ARCH=${arch}"
     "VERSION=${finalAttrs.version}-nixpkgs"
     "QBEFLAGS=-t${qbePlatform}"
-    "CC=${stdenv.cc.targetPrefix}cc"
     "AS=${stdenv.cc.targetPrefix}as"
     "LD=${stdenv.cc.targetPrefix}ld"
+    "${lib.toUpper buildArch}_AS=${embeddedOnBinaryTools.${buildArch}.as}"
+    "${lib.toUpper buildArch}_CC=${embeddedOnBinaryTools.${buildArch}.cc}"
+    "${lib.toUpper buildArch}_LD=${embeddedOnBinaryTools.${buildArch}.ld}"
     # Strip the variable of an empty $(SRCDIR)/hare/third-party, since nix does
     # not follow the FHS.
     "HAREPATH=$(SRCDIR)/hare/stdlib"
-  ] ++ lib.optionals enableCrossCompilation [
-    "RISCV64_AS=${embeddedOnBinaryTools.riscv64.as}"
-    "RISCV64_CC=${embeddedOnBinaryTools.riscv64.cc}"
-    "RISCV64_LD=${embeddedOnBinaryTools.riscv64.ld}"
-    "AARCH64_AS=${embeddedOnBinaryTools.aarch64.as}"
-    "AARCH64_CC=${embeddedOnBinaryTools.aarch64.cc}"
-    "AARCH64_LD=${embeddedOnBinaryTools.aarch64.ld}"
-    "x86_64_AS=${embeddedOnBinaryTools.x86_64.as}"
-    "x86_64_CC=${embeddedOnBinaryTools.x86_64.cc}"
-    "x86_64_LD=${embeddedOnBinaryTools.x86_64.ld}"
-  ];
+  ] ++ lib.optionals enableCrossCompilation crossCompMakeFlags;
 
   enableParallelBuilding = true;
 
@@ -141,19 +165,12 @@ stdenv.mkDerivation (finalAttrs: {
     ln -s configs/${platform}.mk config.mk
   '';
 
-  postFixup = ''
-    wrapProgram $out/bin/hare \
-      --prefix PATH : ${lib.makeBinPath [binutils-unwrapped harec qbe]}
-  '';
-
   setupHook = ./setup-hook.sh;
 
   passthru = {
     updateScript = gitUpdater { };
     tests = lib.optionalAttrs enableCrossCompilation {
-      crossCompilation = callPackage ./cross-compilation-tests.nix {
-        hare = finalAttrs.finalPackage;
-      };
+      crossCompilation = callPackage ./cross-compilation-tests.nix { hare = finalAttrs.finalPackage; };
     };
   };
 
diff --git a/pkgs/by-name/ha/haredo/001-use-nix-store-sh.patch b/pkgs/by-name/ha/haredo/001-use-nix-store-sh.patch
new file mode 100644
index 000000000000..4bd6507d7ea4
--- /dev/null
+++ b/pkgs/by-name/ha/haredo/001-use-nix-store-sh.patch
@@ -0,0 +1,20 @@
+diff --git a/src/haredo.ha b/src/haredo.ha
+index c2e56e6..304c9ad 100644
+--- a/src/haredo.ha
++++ b/src/haredo.ha
+@@ -280,12 +280,12 @@ fn try_do(
+ 	const tmpfilepath = strings::concat(ctx.tmpdir, "/", tmpfilename);
+ 
+ 	const cmd = if (ctx.verbose) {
+-		fmt::errorln("* sh -ev", dopaths.do, dopaths.target,
++		fmt::errorln("* @bash@/bin/sh -ev", dopaths.do, dopaths.target,
+ 			dopaths.basename, tmpfilepath)?;
+-		yield exec::cmd("sh", "-ev", dopaths.do, dopaths.target,
++		yield exec::cmd("@bash@/bin/sh", "-ev", dopaths.do, dopaths.target,
+ 			dopaths.basename, tmpfilepath)?;
+ 	} else {
+-		yield exec::cmd("sh", "-e", dopaths.do, dopaths.target,
++		yield exec::cmd("@bash@/bin/sh", "-e", dopaths.do, dopaths.target,
+ 			dopaths.basename, tmpfilepath)?;
+ 	};
+ 
diff --git a/pkgs/by-name/ha/haredo/package.nix b/pkgs/by-name/ha/haredo/package.nix
index e31ae96c7832..a6db89149eb8 100644
--- a/pkgs/by-name/ha/haredo/package.nix
+++ b/pkgs/by-name/ha/haredo/package.nix
@@ -1,17 +1,22 @@
-{ stdenv
-, lib
-, fetchFromSourcehut
-, hare
-, scdoc
-, nix-update-script
-, makeWrapper
-, bash
+{
+  stdenv,
+  lib,
+  fetchFromSourcehut,
+  hare,
+  scdoc,
+  nix-update-script,
+  makeWrapper,
+  bash,
+  substituteAll,
 }:
 stdenv.mkDerivation (finalAttrs: {
   pname = "haredo";
   version = "1.0.5";
 
-  outputs = [ "out" "man" ];
+  outputs = [
+    "out"
+    "man"
+  ];
 
   src = fetchFromSourcehut {
     owner = "~autumnull";
@@ -20,6 +25,14 @@ stdenv.mkDerivation (finalAttrs: {
     hash = "sha256-gpui5FVRw3NKyx0AB/4kqdolrl5vkDudPOgjHc/IE4U=";
   };
 
+  patches = [
+    # Use nix store's bash instead of sh. `@bash@/bin/sh` is used, since haredo expects a posix shell.
+    (substituteAll {
+      src = ./001-use-nix-store-sh.patch;
+      inherit bash;
+    })
+  ];
+
   nativeBuildInputs = [
     hare
     makeWrapper
@@ -62,11 +75,6 @@ stdenv.mkDerivation (finalAttrs: {
     runHook postInstall
   '';
 
-  postFixup = ''
-    wrapProgram $out/bin/haredo \
-      --prefix PATH : "${lib.makeBinPath [bash]}"
-  '';
-
   setupHook = ./setup-hook.sh;
 
   passthru.updateScript = nix-update-script { };
diff --git a/pkgs/development/tools/hatch/default.nix b/pkgs/by-name/ha/hatch/package.nix
index 4f3dec85ff67..06f2911faafb 100644
--- a/pkgs/development/tools/hatch/default.nix
+++ b/pkgs/by-name/ha/hatch/package.nix
@@ -8,14 +8,19 @@
 
 python3.pkgs.buildPythonApplication rec {
   pname = "hatch";
-  version = "1.9.0";
+  version = "1.9.7";
   format = "pyproject";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-4ealEeFS7HzU26vE9Pahh0hwvUnJfRfTkLkjLdpoXOM=";
+    hash = "sha256-Gae4IXn5Tyrd2612qn5lq5DK1VqxA9U4J2N5NcnmYkw=";
   };
 
+  postPatch = ''
+    # Loosen hatchling runtime version dependency
+    sed -i 's/hatchling<1.22/hatchling/' pyproject.toml
+  '';
+
   nativeBuildInputs = with python3.pkgs; [
     hatchling
     hatch-vcs
@@ -69,19 +74,13 @@ python3.pkgs.buildPythonApplication rec {
     "test_editable_exact_force_include_option"
     "test_editable_exact_force_include_build_data_precedence"
     "test_editable_pth"
-    # AssertionError: assert len(extract_installed_requirements(output.splitlines())) > 0
-    "test_creation_allow_system_packages"
-    # cli table output mismatch
-    "test_context_formatting"
     # expects sh, finds bash
     "test_all"
     "test_already_installed_update_flag"
     "test_already_installed_update_prompt"
-    # unmet expectations about the binary module we provide
-    "test_dependency_not_found"
-    "test_marker_unmet"
-    # output capturing mismatch, likely stdout/stderr mixup
-    "test_no_compatibility_check_if_exists"
+    # Loosen hatchling runtime version dependency
+    "test_core"
+    "test_correct"
   ] ++ lib.optionals stdenv.isDarwin [
     # https://github.com/NixOS/nixpkgs/issues/209358
     "test_scripts_no_environment"
@@ -90,6 +89,8 @@ python3.pkgs.buildPythonApplication rec {
     # It is not possible to run it in a nix build using a /nix/store shell.
     # See https://github.com/pypa/hatch/pull/709 for the relevant code.
     "test_populate_default_popen_kwargs_executable"
+  ] ++ lib.optionals stdenv.isAarch64 [
+    "test_resolve"
   ];
 
   meta = with lib; {
diff --git a/pkgs/by-name/he/hexedit/package.nix b/pkgs/by-name/he/hexedit/package.nix
new file mode 100644
index 000000000000..e592d6633b6c
--- /dev/null
+++ b/pkgs/by-name/he/hexedit/package.nix
@@ -0,0 +1,31 @@
+{
+  lib,
+  stdenv,
+  fetchFromGitHub,
+  autoreconfHook,
+  ncurses,
+}:
+
+stdenv.mkDerivation (finalAttrs: {
+  pname = "hexedit";
+  version = "1.6";
+
+  src = fetchFromGitHub {
+    owner = "pixel";
+    repo = "hexedit";
+    rev = finalAttrs.version;
+    hash = "sha256-fIgPbr7qmxyEga2YaAD0+NBM8LeDm/tVAq99ub7aiAI=";
+  };
+
+  nativeBuildInputs = [ autoreconfHook ];
+  buildInputs = [ ncurses ];
+
+  meta = {
+    description = "View and edit files in hexadecimal or in ASCII";
+    homepage = "http://rigaux.org/hexedit.html";
+    license = lib.licenses.gpl2Plus;
+    platforms = lib.platforms.unix;
+    maintainers = with lib.maintainers; [ sigmanificient ];
+    mainProgram = "hexedit";
+  };
+})
diff --git a/pkgs/by-name/hi/hieroglyphic/package.nix b/pkgs/by-name/hi/hieroglyphic/package.nix
new file mode 100644
index 000000000000..f130488e95b2
--- /dev/null
+++ b/pkgs/by-name/hi/hieroglyphic/package.nix
@@ -0,0 +1,75 @@
+{
+  lib,
+  stdenv,
+  fetchFromGitHub,
+  rustPlatform,
+  cargo,
+  rustc,
+  meson,
+  ninja,
+  pkg-config,
+  wrapGAppsHook4,
+  desktop-file-utils,
+  glib,
+  gtk4,
+  libadwaita,
+  darwin,
+  gettext,
+}:
+
+let
+  inherit (darwin.apple_sdk.frameworks) CoreFoundation Foundation;
+in
+stdenv.mkDerivation (finalAttrs: {
+  pname = "hieroglyphic";
+  version = "1.0.1";
+  # Note: 1.1.0 requires a higher gtk4 version. This requirement could be patched out.
+
+  src = fetchFromGitHub {
+    owner = "FineFindus";
+    repo = "Hieroglyphic";
+    rev = "refs/tags/v${finalAttrs.version}";
+    hash = "sha256-Twx3yM71xn2FT3CbiFGbo2knGvb4MBl6VwjWlbjfks0=";
+  };
+
+  cargoDeps = rustPlatform.fetchCargoTarball {
+    inherit (finalAttrs) src;
+    name = "${finalAttrs.pname}-${finalAttrs.version}";
+    hash = "sha256-Se/YCi0e+Uoh5guDteLRXZYyk7et0NA8cv+vNpLxzx4=";
+  };
+
+  nativeBuildInputs = [
+    rustPlatform.cargoSetupHook
+    cargo
+    rustc
+    meson
+    ninja
+    pkg-config
+    wrapGAppsHook4
+    desktop-file-utils
+  ];
+
+  buildInputs =
+    [
+      glib
+      gtk4
+      libadwaita
+    ]
+    ++ lib.optionals stdenv.isDarwin [
+      CoreFoundation
+      Foundation
+    ];
+
+  # needed for darwin
+  env.GETTEXT_DIR = "${gettext}";
+
+  meta = {
+    changelog = "https://github.com/FineFindus/Hieroglyphic/releases/tag/v${finalAttrs.version}";
+    description = "A tool based on detexify for finding LaTeX symbols from drawings";
+    homepage = "https://apps.gnome.org/en/Hieroglyphic/";
+    license = lib.licenses.gpl3Only;
+    mainProgram = "hieroglyphic";
+    maintainers = with lib.maintainers; [ tomasajt ];
+    platforms = lib.platforms.linux ++ lib.platforms.darwin;
+  };
+})
diff --git a/pkgs/by-name/ho/home-manager/package.nix b/pkgs/by-name/ho/home-manager/package.nix
index eab2ca256876..c2a9cd7fd6ee 100644
--- a/pkgs/by-name/ho/home-manager/package.nix
+++ b/pkgs/by-name/ho/home-manager/package.nix
@@ -16,14 +16,14 @@
 
 stdenvNoCC.mkDerivation (finalAttrs: {
   pname = "home-manager";
-  version = "0-unstable-2024-04-29";
+  version = "0-unstable-2024-05-12";
 
   src = fetchFromGitHub {
     name = "home-manager-source";
     owner = "nix-community";
     repo = "home-manager";
-    rev = "9fe79591c1005ce6f93084ae7f7dab0a2891440d";
-    hash = "sha256-OzD1P0o46uD3Ix4ZI/g9z3YAeg+4g+W3qctB6bNOReo=";
+    rev = "44677a1c96810a8e8c4ffaeaad10c842402647c1";
+    hash = "sha256-4pRuzsHZOW5W4CsXI9uhKtiJeQSUoe1d2M9mWU98HC4=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/by-name/ho/hoppscotch/package.nix b/pkgs/by-name/ho/hoppscotch/package.nix
index c076f484a84b..a798f05c7ef4 100644
--- a/pkgs/by-name/ho/hoppscotch/package.nix
+++ b/pkgs/by-name/ho/hoppscotch/package.nix
@@ -7,31 +7,39 @@
 
 let
   pname = "hoppscotch";
-  version = "24.3.2-1";
+  version = "24.3.3-1";
 
   src = fetchurl {
     aarch64-darwin = {
       url = "https://github.com/hoppscotch/releases/releases/download/v${version}/Hoppscotch_mac_aarch64.dmg";
-      hash = "sha256-/Sa51x/Hy4mOxNL+6r+5sk/cF4iBbup9UBaWqzsnrBM=";
+      hash = "sha256-litOYRsUOx6VpkA1LPx7aGGagqIVL9fgNsYoP5n/2mo=";
     };
     x86_64-darwin = {
       url = "https://github.com/hoppscotch/releases/releases/download/v${version}/Hoppscotch_mac_x64.dmg";
-      hash = "sha256-6vm3pQPg5OKRtP6W1CNQxy4fi9niw4Y4nXjargwHxuA=";
+      hash = "sha256-UG89Fv9J8SnzPVoIO16LOprxPmZuu/zyox1b+jn+eNw=";
     };
     x86_64-linux = {
       url = "https://github.com/hoppscotch/releases/releases/download/v${version}/Hoppscotch_linux_x64.AppImage";
-      hash = "sha256-iGD/9alVwSsIhbSl9HZXdB5MQNSjn18YdgebyoizriE=";
+      hash = "sha256-110l1DTyvH2M0ex1r35Q+55NiJ8nYum1KdWQXDvAdxo=";
     };
   }.${stdenv.system} or (throw "Unsupported system: ${stdenv.system}");
 
-  meta = {
+  meta = with lib; {
     description = "Open source API development ecosystem";
-    mainProgram = "hoppscotch";
+    longDescription = ''
+      Hoppscotch is a lightweight, web-based API development suite. It was built
+      from the ground up with ease of use and accessibility in mind providing
+      all the functionality needed for API developers with minimalist,
+      unobtrusive UI.
+    '';
     homepage = "https://hoppscotch.com";
-    changelog = "https://github.com/hoppscotch/hoppscotch/releases/tag/${version}";
+    downloadPage = "https://hoppscotch.com/downloads";
+    changelog = "https://hoppscotch.com/changelog";
+    license = licenses.mit;
+    maintainers = with maintainers; [ DataHearth ];
+    mainProgram = "hoppscotch";
     platforms = [ "aarch64-darwin" "x86_64-darwin" "x86_64-linux" ];
-    license = lib.licenses.mit;
-    maintainers = with lib.maintainers; [ DataHearth ];
+    sourceProvenance = [ sourceTypes.binaryNativeCode ];
   };
 in
 if stdenv.isDarwin then stdenv.mkDerivation
@@ -54,9 +62,6 @@ if stdenv.isDarwin then stdenv.mkDerivation
 else appimageTools.wrapType2 {
   inherit pname version src meta;
 
-  extraPkgs = pkgs:
-    appimageTools.defaultFhsEnvArgs.multiPkgs pkgs;
-
   extraInstallCommands =
     let
       appimageContents = appimageTools.extractType2 { inherit pname version src; };
diff --git a/pkgs/by-name/ht/httpie-desktop/package.nix b/pkgs/by-name/ht/httpie-desktop/package.nix
new file mode 100644
index 000000000000..e8f3dbb1c02d
--- /dev/null
+++ b/pkgs/by-name/ht/httpie-desktop/package.nix
@@ -0,0 +1,23 @@
+{
+  appimageTools,
+  lib,
+  fetchurl,
+}:
+appimageTools.wrapType2 rec {
+  pname = "httpie-desktop";
+  version = "2024.1.2";
+
+  src = fetchurl {
+    url = "https://github.com/httpie/desktop/releases/download/v${version}/HTTPie-${version}.AppImage";
+    sha256 = "sha256-OOP1l7J2BgO3nOPSipxfwfN/lOUsl80UzYMBosyBHrM=";
+  };
+
+  meta = with lib; {
+    description = "Cross-platform API testing client for humans. Painlessly test REST, GraphQL, and HTTP APIs.";
+    homepage = "https://github.com/httpie/desktop";
+    license = licenses.unfree;
+    maintainers = with maintainers; [ luftmensch-luftmensch ];
+    mainProgram = "httpie-desktop";
+    platforms = [ "x86_64-linux" ];
+  };
+}
diff --git a/pkgs/by-name/hu/hugo/package.nix b/pkgs/by-name/hu/hugo/package.nix
index 98abe2a65b21..7e590a5dee61 100644
--- a/pkgs/by-name/hu/hugo/package.nix
+++ b/pkgs/by-name/hu/hugo/package.nix
@@ -10,16 +10,16 @@
 
 buildGoModule rec {
   pname = "hugo";
-  version = "0.125.5";
+  version = "0.126.1";
 
   src = fetchFromGitHub {
     owner = "gohugoio";
     repo = "hugo";
     rev = "refs/tags/v${version}";
-    hash = "sha256-vvADd4S4AURkIODGvDf4J9omZjKcZeQKQ6ZSKDu1gog=";
+    hash = "sha256-c421kzgD6PFM/9Rn+NmZGyRlJPWhQPraW/4HcuRoEUU=";
   };
 
-  vendorHash = "sha256-L8+e6rZvFaNV9gyWJtXv9NnzoigVDSyNKTuxGrRwb44=";
+  vendorHash = "sha256-VfwiA5LCAJ1pkmMCy/Dcc5bLKkNY1MHtxHcHvKLoWHs=";
 
   doCheck = false;
 
diff --git a/pkgs/applications/logging/humioctl/default.nix b/pkgs/by-name/hu/humioctl/package.nix
index d9f780c0b3a2..d9f780c0b3a2 100644
--- a/pkgs/applications/logging/humioctl/default.nix
+++ b/pkgs/by-name/hu/humioctl/package.nix
diff --git a/pkgs/by-name/hy/hyprdim/Cargo.lock b/pkgs/by-name/hy/hyprdim/Cargo.lock
deleted file mode 100644
index 8c22c7838dfa..000000000000
--- a/pkgs/by-name/hy/hyprdim/Cargo.lock
+++ /dev/null
@@ -1,1213 +0,0 @@
-# This file is automatically @generated by Cargo.
-# It is not intended for manual editing.
-version = 3
-
-[[package]]
-name = "addr2line"
-version = "0.21.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8a30b2e23b9e17a9f90641c7ab1549cd9b44f296d3ccbf309d2863cfe398a0cb"
-dependencies = [
- "gimli",
-]
-
-[[package]]
-name = "adler"
-version = "1.0.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f26201604c87b1e01bd3d98f8d5d9a8fcbb815e8cedb41ffccbeb4bf593a35fe"
-
-[[package]]
-name = "aho-corasick"
-version = "1.1.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8e60d3430d3a69478ad0993f19238d2df97c507009a52b3c10addcd7f6bcb916"
-dependencies = [
- "memchr",
-]
-
-[[package]]
-name = "anstream"
-version = "0.6.13"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d96bd03f33fe50a863e394ee9718a706f988b9079b20c3784fb726e7678b62fb"
-dependencies = [
- "anstyle",
- "anstyle-parse",
- "anstyle-query",
- "anstyle-wincon",
- "colorchoice",
- "utf8parse",
-]
-
-[[package]]
-name = "anstyle"
-version = "1.0.6"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8901269c6307e8d93993578286ac0edf7f195079ffff5ebdeea6a59ffb7e36bc"
-
-[[package]]
-name = "anstyle-parse"
-version = "0.2.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c75ac65da39e5fe5ab759307499ddad880d724eed2f6ce5b5e8a26f4f387928c"
-dependencies = [
- "utf8parse",
-]
-
-[[package]]
-name = "anstyle-query"
-version = "1.0.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e28923312444cdd728e4738b3f9c9cac739500909bb3d3c94b43551b16517648"
-dependencies = [
- "windows-sys 0.52.0",
-]
-
-[[package]]
-name = "anstyle-wincon"
-version = "3.0.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1cd54b81ec8d6180e24654d0b371ad22fc3dd083b6ff8ba325b72e00c87660a7"
-dependencies = [
- "anstyle",
- "windows-sys 0.52.0",
-]
-
-[[package]]
-name = "assert_cmd"
-version = "2.0.14"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ed72493ac66d5804837f480ab3766c72bdfab91a65e565fc54fa9e42db0073a8"
-dependencies = [
- "anstyle",
- "bstr",
- "doc-comment",
- "predicates",
- "predicates-core",
- "predicates-tree",
- "wait-timeout",
-]
-
-[[package]]
-name = "async-trait"
-version = "0.1.79"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a507401cad91ec6a857ed5513a2073c82a9b9048762b885bb98655b306964681"
-dependencies = [
- "proc-macro2",
- "quote",
- "syn 2.0.58",
-]
-
-[[package]]
-name = "autocfg"
-version = "1.2.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f1fdabc7756949593fe60f30ec81974b613357de856987752631dea1e3394c80"
-
-[[package]]
-name = "backtrace"
-version = "0.3.71"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "26b05800d2e817c8b3b4b54abd461726265fa9789ae34330622f2db9ee696f9d"
-dependencies = [
- "addr2line",
- "cc",
- "cfg-if",
- "libc",
- "miniz_oxide",
- "object",
- "rustc-demangle",
-]
-
-[[package]]
-name = "bitflags"
-version = "1.3.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a"
-
-[[package]]
-name = "bitflags"
-version = "2.5.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "cf4b9d6a944f767f8e5e0db018570623c85f3d925ac718db4e06d0187adb21c1"
-
-[[package]]
-name = "bstr"
-version = "1.9.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "05efc5cfd9110c8416e471df0e96702d58690178e206e61b7173706673c93706"
-dependencies = [
- "memchr",
- "regex-automata",
- "serde",
-]
-
-[[package]]
-name = "bytes"
-version = "1.6.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "514de17de45fdb8dc022b1a7975556c53c86f9f0aa5f534b98977b171857c2c9"
-
-[[package]]
-name = "cc"
-version = "1.0.91"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1fd97381a8cc6493395a5afc4c691c1084b3768db713b73aa215217aa245d153"
-
-[[package]]
-name = "cfg-if"
-version = "1.0.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd"
-
-[[package]]
-name = "cfg_aliases"
-version = "0.1.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "fd16c4719339c4530435d38e511904438d07cce7950afa3718a84ac36c10e89e"
-
-[[package]]
-name = "clap"
-version = "4.5.4"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "90bc066a67923782aa8515dbaea16946c5bcc5addbd668bb80af688e53e548a0"
-dependencies = [
- "clap_builder",
- "clap_derive",
-]
-
-[[package]]
-name = "clap_builder"
-version = "4.5.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ae129e2e766ae0ec03484e609954119f123cc1fe650337e155d03b022f24f7b4"
-dependencies = [
- "anstream",
- "anstyle",
- "clap_lex",
- "strsim",
-]
-
-[[package]]
-name = "clap_complete"
-version = "4.5.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "885e4d7d5af40bfb99ae6f9433e292feac98d452dcb3ec3d25dfe7552b77da8c"
-dependencies = [
- "clap",
-]
-
-[[package]]
-name = "clap_derive"
-version = "4.5.4"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "528131438037fd55894f62d6e9f068b8f45ac57ffa77517819645d10aed04f64"
-dependencies = [
- "heck 0.5.0",
- "proc-macro2",
- "quote",
- "syn 2.0.58",
-]
-
-[[package]]
-name = "clap_lex"
-version = "0.7.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "98cc8fbded0c607b7ba9dd60cd98df59af97e84d24e49c8557331cfc26d301ce"
-
-[[package]]
-name = "clap_mangen"
-version = "0.2.20"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e1dd95b5ebb5c1c54581dd6346f3ed6a79a3eef95dd372fc2ac13d535535300e"
-dependencies = [
- "clap",
- "roff",
-]
-
-[[package]]
-name = "colorchoice"
-version = "1.0.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "acbf1af155f9b9ef647e42cdc158db4b64a1b61f743629225fde6f3e0be2a7c7"
-
-[[package]]
-name = "convert_case"
-version = "0.4.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6245d59a3e82a7fc217c5828a6692dbc6dfb63a0c8c90495621f7b9d79704a0e"
-
-[[package]]
-name = "ctrlc"
-version = "3.4.4"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "672465ae37dc1bc6380a6547a8883d5dd397b0f1faaad4f265726cc7042a5345"
-dependencies = [
- "nix 0.28.0",
- "windows-sys 0.52.0",
-]
-
-[[package]]
-name = "derive_more"
-version = "0.99.17"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4fb810d30a7c1953f91334de7244731fc3f3c10d7fe163338a35b9f640960321"
-dependencies = [
- "convert_case",
- "proc-macro2",
- "quote",
- "rustc_version",
- "syn 1.0.109",
-]
-
-[[package]]
-name = "difflib"
-version = "0.4.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6184e33543162437515c2e2b48714794e37845ec9851711914eec9d308f6ebe8"
-
-[[package]]
-name = "doc-comment"
-version = "0.3.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "fea41bba32d969b513997752735605054bc0dfa92b4c56bf1189f2e174be7a10"
-
-[[package]]
-name = "equivalent"
-version = "1.0.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5443807d6dff69373d433ab9ef5378ad8df50ca6298caf15de6e52e24aaf54d5"
-
-[[package]]
-name = "futures"
-version = "0.3.30"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "645c6916888f6cb6350d2550b80fb63e734897a8498abe35cfb732b6487804b0"
-dependencies = [
- "futures-channel",
- "futures-core",
- "futures-executor",
- "futures-io",
- "futures-sink",
- "futures-task",
- "futures-util",
-]
-
-[[package]]
-name = "futures-channel"
-version = "0.3.30"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "eac8f7d7865dcb88bd4373ab671c8cf4508703796caa2b1985a9ca867b3fcb78"
-dependencies = [
- "futures-core",
- "futures-sink",
-]
-
-[[package]]
-name = "futures-core"
-version = "0.3.30"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "dfc6580bb841c5a68e9ef15c77ccc837b40a7504914d52e47b8b0e9bbda25a1d"
-
-[[package]]
-name = "futures-executor"
-version = "0.3.30"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a576fc72ae164fca6b9db127eaa9a9dda0d61316034f33a0a0d4eda41f02b01d"
-dependencies = [
- "futures-core",
- "futures-task",
- "futures-util",
-]
-
-[[package]]
-name = "futures-io"
-version = "0.3.30"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a44623e20b9681a318efdd71c299b6b222ed6f231972bfe2f224ebad6311f0c1"
-
-[[package]]
-name = "futures-macro"
-version = "0.3.30"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "87750cf4b7a4c0625b1529e4c543c2182106e4dedc60a2a6455e00d212c489ac"
-dependencies = [
- "proc-macro2",
- "quote",
- "syn 2.0.58",
-]
-
-[[package]]
-name = "futures-sink"
-version = "0.3.30"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9fb8e00e87438d937621c1c6269e53f536c14d3fbd6a042bb24879e57d474fb5"
-
-[[package]]
-name = "futures-task"
-version = "0.3.30"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "38d84fa142264698cdce1a9f9172cf383a0c82de1bddcf3092901442c4097004"
-
-[[package]]
-name = "futures-util"
-version = "0.3.30"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3d6401deb83407ab3da39eba7e33987a73c3df0c82b4bb5813ee871c19c41d48"
-dependencies = [
- "futures-channel",
- "futures-core",
- "futures-io",
- "futures-macro",
- "futures-sink",
- "futures-task",
- "memchr",
- "pin-project-lite",
- "pin-utils",
- "slab",
-]
-
-[[package]]
-name = "gimli"
-version = "0.28.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4271d37baee1b8c7e4b708028c57d816cf9d2434acb33a549475f78c181f6253"
-
-[[package]]
-name = "hashbrown"
-version = "0.14.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "290f1a1d9242c78d09ce40a5e87e7554ee637af1351968159f4952f028f75604"
-
-[[package]]
-name = "heck"
-version = "0.4.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "95505c38b4572b2d910cecb0281560f54b440a19336cbbcb27bf6ce6adc6f5a8"
-
-[[package]]
-name = "heck"
-version = "0.5.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2304e00983f87ffb38b55b444b5e3b60a884b5d30c0fca7d82fe33449bbe55ea"
-
-[[package]]
-name = "hermit-abi"
-version = "0.3.9"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d231dfb89cfffdbc30e7fc41579ed6066ad03abda9e567ccafae602b97ec5024"
-
-[[package]]
-name = "hex"
-version = "0.4.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7f24254aa9a54b5c858eaee2f5bccdb46aaf0e486a595ed5fd8f86ba55232a70"
-
-[[package]]
-name = "hyprdim"
-version = "2.2.4"
-dependencies = [
- "assert_cmd",
- "clap",
- "clap_complete",
- "clap_mangen",
- "ctrlc",
- "hyprland",
- "rustympkglib",
- "serde",
- "single-instance",
- "toml",
-]
-
-[[package]]
-name = "hyprland"
-version = "0.3.13"
-source = "git+https://github.com/hyprland-community/hyprland-rs.git#7a60845c9bfaf264e4dd9f5d7977f4a1f15599c8"
-dependencies = [
- "async-trait",
- "derive_more",
- "doc-comment",
- "futures",
- "hex",
- "hyprland-macros",
- "lazy_static",
- "num-traits",
- "paste",
- "regex",
- "serde",
- "serde_json",
- "serde_repr",
- "strum",
- "tokio",
-]
-
-[[package]]
-name = "hyprland-macros"
-version = "0.3.13"
-source = "git+https://github.com/hyprland-community/hyprland-rs.git#7a60845c9bfaf264e4dd9f5d7977f4a1f15599c8"
-dependencies = [
- "quote",
- "syn 2.0.58",
-]
-
-[[package]]
-name = "indexmap"
-version = "2.2.6"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "168fb715dda47215e360912c096649d23d58bf392ac62f73919e831745e40f26"
-dependencies = [
- "equivalent",
- "hashbrown",
-]
-
-[[package]]
-name = "itoa"
-version = "1.0.11"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "49f1f14873335454500d59611f1cf4a4b0f786f9ac11f4312a78e4cf2566695b"
-
-[[package]]
-name = "lazy_static"
-version = "1.4.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e2abad23fbc42b3700f2f279844dc832adb2b2eb069b2df918f455c4e18cc646"
-
-[[package]]
-name = "libc"
-version = "0.2.153"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9c198f91728a82281a64e1f4f9eeb25d82cb32a5de251c6bd1b5154d63a8e7bd"
-
-[[package]]
-name = "lock_api"
-version = "0.4.11"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3c168f8615b12bc01f9c17e2eb0cc07dcae1940121185446edc3744920e8ef45"
-dependencies = [
- "autocfg",
- "scopeguard",
-]
-
-[[package]]
-name = "memchr"
-version = "2.7.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6c8640c5d730cb13ebd907d8d04b52f55ac9a2eec55b440c8892f40d56c76c1d"
-
-[[package]]
-name = "memoffset"
-version = "0.6.5"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5aa361d4faea93603064a027415f07bd8e1d5c88c9fbf68bf56a285428fd79ce"
-dependencies = [
- "autocfg",
-]
-
-[[package]]
-name = "miniz_oxide"
-version = "0.7.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9d811f3e15f28568be3407c8e7fdb6514c1cda3cb30683f15b6a1a1dc4ea14a7"
-dependencies = [
- "adler",
-]
-
-[[package]]
-name = "mio"
-version = "0.8.11"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a4a650543ca06a924e8b371db273b2756685faae30f8487da1b56505a8f78b0c"
-dependencies = [
- "libc",
- "wasi",
- "windows-sys 0.48.0",
-]
-
-[[package]]
-name = "nix"
-version = "0.23.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8f3790c00a0150112de0f4cd161e3d7fc4b2d8a5542ffc35f099a2562aecb35c"
-dependencies = [
- "bitflags 1.3.2",
- "cc",
- "cfg-if",
- "libc",
- "memoffset",
-]
-
-[[package]]
-name = "nix"
-version = "0.28.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ab2156c4fce2f8df6c499cc1c763e4394b7482525bf2a9701c9d79d215f519e4"
-dependencies = [
- "bitflags 2.5.0",
- "cfg-if",
- "cfg_aliases",
- "libc",
-]
-
-[[package]]
-name = "num-traits"
-version = "0.2.18"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "da0df0e5185db44f69b44f26786fe401b6c293d1907744beaa7fa62b2e5a517a"
-dependencies = [
- "autocfg",
-]
-
-[[package]]
-name = "num_cpus"
-version = "1.16.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4161fcb6d602d4d2081af7c3a45852d875a03dd337a6bfdd6e06407b61342a43"
-dependencies = [
- "hermit-abi",
- "libc",
-]
-
-[[package]]
-name = "object"
-version = "0.32.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a6a622008b6e321afc04970976f62ee297fdbaa6f95318ca343e3eebb9648441"
-dependencies = [
- "memchr",
-]
-
-[[package]]
-name = "parking_lot"
-version = "0.12.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3742b2c103b9f06bc9fff0a37ff4912935851bee6d36f3c02bcc755bcfec228f"
-dependencies = [
- "lock_api",
- "parking_lot_core",
-]
-
-[[package]]
-name = "parking_lot_core"
-version = "0.9.9"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4c42a9226546d68acdd9c0a280d17ce19bfe27a46bf68784e4066115788d008e"
-dependencies = [
- "cfg-if",
- "libc",
- "redox_syscall",
- "smallvec",
- "windows-targets 0.48.5",
-]
-
-[[package]]
-name = "paste"
-version = "1.0.14"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "de3145af08024dea9fa9914f381a17b8fc6034dfb00f3a84013f7ff43f29ed4c"
-
-[[package]]
-name = "pin-project-lite"
-version = "0.2.14"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "bda66fc9667c18cb2758a2ac84d1167245054bcf85d5d1aaa6923f45801bdd02"
-
-[[package]]
-name = "pin-utils"
-version = "0.1.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8b870d8c151b6f2fb93e84a13146138f05d02ed11c7e7c54f8826aaaf7c9f184"
-
-[[package]]
-name = "predicates"
-version = "3.1.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "68b87bfd4605926cdfefc1c3b5f8fe560e3feca9d5552cf68c466d3d8236c7e8"
-dependencies = [
- "anstyle",
- "difflib",
- "predicates-core",
-]
-
-[[package]]
-name = "predicates-core"
-version = "1.0.6"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b794032607612e7abeb4db69adb4e33590fa6cf1149e95fd7cb00e634b92f174"
-
-[[package]]
-name = "predicates-tree"
-version = "1.0.9"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "368ba315fb8c5052ab692e68a0eefec6ec57b23a36959c14496f0b0df2c0cecf"
-dependencies = [
- "predicates-core",
- "termtree",
-]
-
-[[package]]
-name = "proc-macro2"
-version = "1.0.79"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e835ff2298f5721608eb1a980ecaee1aef2c132bf95ecc026a11b7bf3c01c02e"
-dependencies = [
- "unicode-ident",
-]
-
-[[package]]
-name = "quote"
-version = "1.0.35"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "291ec9ab5efd934aaf503a6466c5d5251535d108ee747472c3977cc5acc868ef"
-dependencies = [
- "proc-macro2",
-]
-
-[[package]]
-name = "redox_syscall"
-version = "0.4.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4722d768eff46b75989dd134e5c353f0d6296e5aaa3132e776cbdb56be7731aa"
-dependencies = [
- "bitflags 1.3.2",
-]
-
-[[package]]
-name = "regex"
-version = "1.10.4"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c117dbdfde9c8308975b6a18d71f3f385c89461f7b3fb054288ecf2a2058ba4c"
-dependencies = [
- "aho-corasick",
- "memchr",
- "regex-automata",
- "regex-syntax",
-]
-
-[[package]]
-name = "regex-automata"
-version = "0.4.6"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "86b83b8b9847f9bf95ef68afb0b8e6cdb80f498442f5179a29fad448fcc1eaea"
-dependencies = [
- "aho-corasick",
- "memchr",
- "regex-syntax",
-]
-
-[[package]]
-name = "regex-syntax"
-version = "0.8.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "adad44e29e4c806119491a7f06f03de4d1af22c3a680dd47f1e6e179439d1f56"
-
-[[package]]
-name = "roff"
-version = "0.2.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b833d8d034ea094b1ea68aa6d5c740e0d04bad9d16568d08ba6f76823a114316"
-
-[[package]]
-name = "rustc-demangle"
-version = "0.1.23"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d626bb9dae77e28219937af045c257c28bfd3f69333c512553507f5f9798cb76"
-
-[[package]]
-name = "rustc_version"
-version = "0.4.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "bfa0f585226d2e68097d4f95d113b15b83a82e819ab25717ec0590d9584ef366"
-dependencies = [
- "semver",
-]
-
-[[package]]
-name = "rustversion"
-version = "1.0.15"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "80af6f9131f277a45a3fba6ce8e2258037bb0477a67e610d3c1fe046ab31de47"
-
-[[package]]
-name = "rustympkglib"
-version = "0.1.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "39a6a04e9c4cc5d0fd4291f8ce8e1aa9d438d3e7b5ea09699cc81acd83272a16"
-dependencies = [
- "serde",
- "tree-sitter",
- "tree-sitter-bash",
-]
-
-[[package]]
-name = "ryu"
-version = "1.0.17"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e86697c916019a8588c99b5fac3cead74ec0b4b819707a682fd4d23fa0ce1ba1"
-
-[[package]]
-name = "scopeguard"
-version = "1.2.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "94143f37725109f92c262ed2cf5e59bce7498c01bcc1502d7b9afe439a4e9f49"
-
-[[package]]
-name = "semver"
-version = "1.0.22"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "92d43fe69e652f3df9bdc2b85b2854a0825b86e4fb76bc44d945137d053639ca"
-
-[[package]]
-name = "serde"
-version = "1.0.197"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3fb1c873e1b9b056a4dc4c0c198b24c3ffa059243875552b2bd0933b1aee4ce2"
-dependencies = [
- "serde_derive",
-]
-
-[[package]]
-name = "serde_derive"
-version = "1.0.197"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7eb0b34b42edc17f6b7cac84a52a1c5f0e1bb2227e997ca9011ea3dd34e8610b"
-dependencies = [
- "proc-macro2",
- "quote",
- "syn 2.0.58",
-]
-
-[[package]]
-name = "serde_json"
-version = "1.0.115"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "12dc5c46daa8e9fdf4f5e71b6cf9a53f2487da0e86e55808e2d35539666497dd"
-dependencies = [
- "itoa",
- "ryu",
- "serde",
-]
-
-[[package]]
-name = "serde_repr"
-version = "0.1.18"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0b2e6b945e9d3df726b65d6ee24060aff8e3533d431f677a9695db04eff9dfdb"
-dependencies = [
- "proc-macro2",
- "quote",
- "syn 2.0.58",
-]
-
-[[package]]
-name = "serde_spanned"
-version = "0.6.5"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "eb3622f419d1296904700073ea6cc23ad690adbd66f13ea683df73298736f0c1"
-dependencies = [
- "serde",
-]
-
-[[package]]
-name = "signal-hook-registry"
-version = "1.4.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d8229b473baa5980ac72ef434c4415e70c4b5e71b423043adb4ba059f89c99a1"
-dependencies = [
- "libc",
-]
-
-[[package]]
-name = "single-instance"
-version = "0.3.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4637485391f8545c9d3dbf60f9d9aab27a90c789a700999677583bcb17c8795d"
-dependencies = [
- "libc",
- "nix 0.23.2",
- "thiserror",
- "widestring",
- "winapi",
-]
-
-[[package]]
-name = "slab"
-version = "0.4.9"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8f92a496fb766b417c996b9c5e57daf2f7ad3b0bebe1ccfca4856390e3d3bb67"
-dependencies = [
- "autocfg",
-]
-
-[[package]]
-name = "smallvec"
-version = "1.13.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3c5e1a9a646d36c3599cd173a41282daf47c44583ad367b8e6837255952e5c67"
-
-[[package]]
-name = "socket2"
-version = "0.5.6"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "05ffd9c0a93b7543e062e759284fcf5f5e3b098501104bfbdde4d404db792871"
-dependencies = [
- "libc",
- "windows-sys 0.52.0",
-]
-
-[[package]]
-name = "strsim"
-version = "0.11.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7da8b5736845d9f2fcb837ea5d9e2628564b3b043a70948a3f0b778838c5fb4f"
-
-[[package]]
-name = "strum"
-version = "0.26.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5d8cec3501a5194c432b2b7976db6b7d10ec95c253208b45f83f7136aa985e29"
-dependencies = [
- "strum_macros",
-]
-
-[[package]]
-name = "strum_macros"
-version = "0.26.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c6cf59daf282c0a494ba14fd21610a0325f9f90ec9d1231dea26bcb1d696c946"
-dependencies = [
- "heck 0.4.1",
- "proc-macro2",
- "quote",
- "rustversion",
- "syn 2.0.58",
-]
-
-[[package]]
-name = "syn"
-version = "1.0.109"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "72b64191b275b66ffe2469e8af2c1cfe3bafa67b529ead792a6d0160888b4237"
-dependencies = [
- "proc-macro2",
- "quote",
- "unicode-ident",
-]
-
-[[package]]
-name = "syn"
-version = "2.0.58"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "44cfb93f38070beee36b3fef7d4f5a16f27751d94b187b666a5cc5e9b0d30687"
-dependencies = [
- "proc-macro2",
- "quote",
- "unicode-ident",
-]
-
-[[package]]
-name = "termtree"
-version = "0.4.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3369f5ac52d5eb6ab48c6b4ffdc8efbcad6b89c765749064ba298f2c68a16a76"
-
-[[package]]
-name = "thiserror"
-version = "1.0.58"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "03468839009160513471e86a034bb2c5c0e4baae3b43f79ffc55c4a5427b3297"
-dependencies = [
- "thiserror-impl",
-]
-
-[[package]]
-name = "thiserror-impl"
-version = "1.0.58"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c61f3ba182994efc43764a46c018c347bc492c79f024e705f46567b418f6d4f7"
-dependencies = [
- "proc-macro2",
- "quote",
- "syn 2.0.58",
-]
-
-[[package]]
-name = "tokio"
-version = "1.37.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1adbebffeca75fcfd058afa480fb6c0b81e165a0323f9c9d39c9697e37c46787"
-dependencies = [
- "backtrace",
- "bytes",
- "libc",
- "mio",
- "num_cpus",
- "parking_lot",
- "pin-project-lite",
- "signal-hook-registry",
- "socket2",
- "tokio-macros",
- "windows-sys 0.48.0",
-]
-
-[[package]]
-name = "tokio-macros"
-version = "2.2.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5b8a1e28f2deaa14e508979454cb3a223b10b938b45af148bc0986de36f1923b"
-dependencies = [
- "proc-macro2",
- "quote",
- "syn 2.0.58",
-]
-
-[[package]]
-name = "toml"
-version = "0.8.12"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e9dd1545e8208b4a5af1aa9bbd0b4cf7e9ea08fabc5d0a5c67fcaafa17433aa3"
-dependencies = [
- "serde",
- "serde_spanned",
- "toml_datetime",
- "toml_edit",
-]
-
-[[package]]
-name = "toml_datetime"
-version = "0.6.5"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3550f4e9685620ac18a50ed434eb3aec30db8ba93b0287467bca5826ea25baf1"
-dependencies = [
- "serde",
-]
-
-[[package]]
-name = "toml_edit"
-version = "0.22.9"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8e40bb779c5187258fd7aad0eb68cb8706a0a81fa712fbea808ab43c4b8374c4"
-dependencies = [
- "indexmap",
- "serde",
- "serde_spanned",
- "toml_datetime",
- "winnow",
-]
-
-[[package]]
-name = "tree-sitter"
-version = "0.19.5"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ad726ec26496bf4c083fff0f43d4eb3a2ad1bba305323af5ff91383c0b6ecac0"
-dependencies = [
- "cc",
- "regex",
-]
-
-[[package]]
-name = "tree-sitter-bash"
-version = "0.19.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c629e2d29ebb85b34cd195a1c511a161ed775451456cde110470e7af693424db"
-dependencies = [
- "cc",
- "tree-sitter",
-]
-
-[[package]]
-name = "unicode-ident"
-version = "1.0.12"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3354b9ac3fae1ff6755cb6db53683adb661634f67557942dea4facebec0fee4b"
-
-[[package]]
-name = "utf8parse"
-version = "0.2.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "711b9620af191e0cdc7468a8d14e709c3dcdb115b36f838e601583af800a370a"
-
-[[package]]
-name = "wait-timeout"
-version = "0.2.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9f200f5b12eb75f8c1ed65abd4b2db8a6e1b138a20de009dacee265a2498f3f6"
-dependencies = [
- "libc",
-]
-
-[[package]]
-name = "wasi"
-version = "0.11.0+wasi-snapshot-preview1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9c8d87e72b64a3b4db28d11ce29237c246188f4f51057d65a7eab63b7987e423"
-
-[[package]]
-name = "widestring"
-version = "0.4.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c168940144dd21fd8046987c16a46a33d5fc84eec29ef9dcddc2ac9e31526b7c"
-
-[[package]]
-name = "winapi"
-version = "0.3.9"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5c839a674fcd7a98952e593242ea400abe93992746761e38641405d28b00f419"
-dependencies = [
- "winapi-i686-pc-windows-gnu",
- "winapi-x86_64-pc-windows-gnu",
-]
-
-[[package]]
-name = "winapi-i686-pc-windows-gnu"
-version = "0.4.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ac3b87c63620426dd9b991e5ce0329eff545bccbbb34f3be09ff6fb6ab51b7b6"
-
-[[package]]
-name = "winapi-x86_64-pc-windows-gnu"
-version = "0.4.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f"
-
-[[package]]
-name = "windows-sys"
-version = "0.48.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "677d2418bec65e3338edb076e806bc1ec15693c5d0104683f2efe857f61056a9"
-dependencies = [
- "windows-targets 0.48.5",
-]
-
-[[package]]
-name = "windows-sys"
-version = "0.52.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "282be5f36a8ce781fad8c8ae18fa3f9beff57ec1b52cb3de0789201425d9a33d"
-dependencies = [
- "windows-targets 0.52.4",
-]
-
-[[package]]
-name = "windows-targets"
-version = "0.48.5"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9a2fa6e2155d7247be68c096456083145c183cbbbc2764150dda45a87197940c"
-dependencies = [
- "windows_aarch64_gnullvm 0.48.5",
- "windows_aarch64_msvc 0.48.5",
- "windows_i686_gnu 0.48.5",
- "windows_i686_msvc 0.48.5",
- "windows_x86_64_gnu 0.48.5",
- "windows_x86_64_gnullvm 0.48.5",
- "windows_x86_64_msvc 0.48.5",
-]
-
-[[package]]
-name = "windows-targets"
-version = "0.52.4"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7dd37b7e5ab9018759f893a1952c9420d060016fc19a472b4bb20d1bdd694d1b"
-dependencies = [
- "windows_aarch64_gnullvm 0.52.4",
- "windows_aarch64_msvc 0.52.4",
- "windows_i686_gnu 0.52.4",
- "windows_i686_msvc 0.52.4",
- "windows_x86_64_gnu 0.52.4",
- "windows_x86_64_gnullvm 0.52.4",
- "windows_x86_64_msvc 0.52.4",
-]
-
-[[package]]
-name = "windows_aarch64_gnullvm"
-version = "0.48.5"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2b38e32f0abccf9987a4e3079dfb67dcd799fb61361e53e2882c3cbaf0d905d8"
-
-[[package]]
-name = "windows_aarch64_gnullvm"
-version = "0.52.4"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "bcf46cf4c365c6f2d1cc93ce535f2c8b244591df96ceee75d8e83deb70a9cac9"
-
-[[package]]
-name = "windows_aarch64_msvc"
-version = "0.48.5"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "dc35310971f3b2dbbf3f0690a219f40e2d9afcf64f9ab7cc1be722937c26b4bc"
-
-[[package]]
-name = "windows_aarch64_msvc"
-version = "0.52.4"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "da9f259dd3bcf6990b55bffd094c4f7235817ba4ceebde8e6d11cd0c5633b675"
-
-[[package]]
-name = "windows_i686_gnu"
-version = "0.48.5"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a75915e7def60c94dcef72200b9a8e58e5091744960da64ec734a6c6e9b3743e"
-
-[[package]]
-name = "windows_i686_gnu"
-version = "0.52.4"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b474d8268f99e0995f25b9f095bc7434632601028cf86590aea5c8a5cb7801d3"
-
-[[package]]
-name = "windows_i686_msvc"
-version = "0.48.5"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8f55c233f70c4b27f66c523580f78f1004e8b5a8b659e05a4eb49d4166cca406"
-
-[[package]]
-name = "windows_i686_msvc"
-version = "0.52.4"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1515e9a29e5bed743cb4415a9ecf5dfca648ce85ee42e15873c3cd8610ff8e02"
-
-[[package]]
-name = "windows_x86_64_gnu"
-version = "0.48.5"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "53d40abd2583d23e4718fddf1ebec84dbff8381c07cae67ff7768bbf19c6718e"
-
-[[package]]
-name = "windows_x86_64_gnu"
-version = "0.52.4"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5eee091590e89cc02ad514ffe3ead9eb6b660aedca2183455434b93546371a03"
-
-[[package]]
-name = "windows_x86_64_gnullvm"
-version = "0.48.5"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0b7b52767868a23d5bab768e390dc5f5c55825b6d30b86c844ff2dc7414044cc"
-
-[[package]]
-name = "windows_x86_64_gnullvm"
-version = "0.52.4"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "77ca79f2451b49fa9e2af39f0747fe999fcda4f5e241b2898624dca97a1f2177"
-
-[[package]]
-name = "windows_x86_64_msvc"
-version = "0.48.5"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ed94fce61571a4006852b7389a063ab983c02eb1bb37b47f8272ce92d06d9538"
-
-[[package]]
-name = "windows_x86_64_msvc"
-version = "0.52.4"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "32b752e52a2da0ddfbdbcc6fceadfeede4c939ed16d13e648833a61dfb611ed8"
-
-[[package]]
-name = "winnow"
-version = "0.6.5"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "dffa400e67ed5a4dd237983829e66475f0a4a26938c4b04c21baede6262215b8"
-dependencies = [
- "memchr",
-]
diff --git a/pkgs/by-name/hy/hyprdim/package.nix b/pkgs/by-name/hy/hyprdim/package.nix
index 2ce84331f40e..11afcf6daa3a 100644
--- a/pkgs/by-name/hy/hyprdim/package.nix
+++ b/pkgs/by-name/hy/hyprdim/package.nix
@@ -8,21 +8,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "hyprdim";
-  version = "2.2.4";
+  version = "2.2.5";
 
   src = fetchFromGitHub {
     owner = "donovanglover";
     repo = "hyprdim";
     rev = version;
-    hash = "sha256-XRaBrn8gnXyMiCf3UQvdZGnZ//YMUivfVg0IoZF5F88=";
+    hash = "sha256-EWZnimLLV879FiZUax1YK5ML/Qz4qt29rJWn5uoKtqw=";
   };
 
-  cargoLock = {
-    lockFile = ./Cargo.lock;
-    outputHashes = {
-      "hyprland-0.3.13" = "sha256-gjShmFcECdX0/t7mL035l9e9OzZuJqX0Ueozv38l03g=";
-    };
-  };
+  cargoHash = "sha256-V4Z3PKavxfQm7zSoTyoWtxpc8yuuGPemO4OdadQEVdg=";
 
   nativeBuildInputs = [ installShellFiles ];
 
diff --git a/pkgs/by-name/hy/hyprland-activewindow/package.nix b/pkgs/by-name/hy/hyprland-activewindow/package.nix
index 1ff0396fb7c7..5bbdd467fd6e 100644
--- a/pkgs/by-name/hy/hyprland-activewindow/package.nix
+++ b/pkgs/by-name/hy/hyprland-activewindow/package.nix
@@ -2,16 +2,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "hyprland-activewindow";
-  version = "1.0.2";
+  version = "1.0.3";
 
   src = fetchFromGitHub {
     owner = "FieldOfClay";
     repo = "hyprland-activewindow";
     rev = "v${version}";
-    hash = "sha256-kF2dNb9hiC6RcL2XG8k18da5he94Jpv3v+HdfHbeW3E=";
+    hash = "sha256-kRxA2DLbbABPJFwv/L7yeNJ8eqNUbuV6U/PB5iJNoAw=";
   };
 
-  cargoHash = "sha256-YCzAfVLKDECGG/1fs3vyVB0oglxLFSE+2cnmLc7RoEo=";
+  cargoHash = "sha256-s3Ho0+OzuLuWqFvaBu9NLXoasByHSuun9eJGAAISOJc=";
 
   meta = with lib; {
     description = "A multi-monitor-aware Hyprland workspace widget helper";
diff --git a/pkgs/by-name/hy/hyprland-workspaces/package.nix b/pkgs/by-name/hy/hyprland-workspaces/package.nix
index 4ca89b0da118..11307059e680 100644
--- a/pkgs/by-name/hy/hyprland-workspaces/package.nix
+++ b/pkgs/by-name/hy/hyprland-workspaces/package.nix
@@ -6,16 +6,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "hyprland-workspaces";
-  version = "2.0.0";
+  version = "2.0.1";
 
   src = fetchFromGitHub {
     owner = "FieldofClay";
     repo = "hyprland-workspaces";
     rev = "v${version}";
-    hash = "sha256-4QGLTimIpx74gWUyHCheUZZT1WgVzBoJRY8OlUDdOh4=";
+    hash = "sha256-GhUjvFMlgjTdgtV9ASW7IqE2dBktPyOlRwg6qM1r7vc=";
   };
 
-  cargoHash = "sha256-9ndP0nyRBCdOGth4UWA263IvjbgnVW2x9PK8oTaMrxg=";
+  cargoHash = "sha256-RZVQSkegX8Fa9SNY7tGNxyu312oeDjXK4U1+1/UIAyA=";
 
   meta = with lib; {
     description = "A multi-monitor aware Hyprland workspace widget";
diff --git a/pkgs/by-name/hy/hyprlock/cmake.patch b/pkgs/by-name/hy/hyprlock/cmake.patch
deleted file mode 100644
index 92c21d643c0f..000000000000
--- a/pkgs/by-name/hy/hyprlock/cmake.patch
+++ /dev/null
@@ -1,15 +0,0 @@
-diff --git a/CMakeLists.txt b/CMakeLists.txt
-index 07e2338..720810b 100644
---- a/CMakeLists.txt
-+++ b/CMakeLists.txt
-@@ -83,9 +83,4 @@ protocol("unstable/linux-dmabuf/linux-dmabuf-unstable-v1.xml" "linux-dmabuf-unst
- # Installation
- install(TARGETS hyprlock)
- 
--install(CODE "
--    if (NOT EXISTS \"${CMAKE_INSTALL_FULL_SYSCONFDIR}/pam.d/hyprlock\")
--        install(FILES \"${CMAKE_SOURCE_DIR}/pam/hyprlock\" DESTINATION \"${CMAKE_INSTALL_FULL_SYSCONFDIR}/pam.d\")
--    endif()
--")
--
-+install(FILES "${CMAKE_SOURCE_DIR}/pam/hyprlock" DESTINATION "${CMAKE_INSTALL_FULL_SYSCONFDIR}/pam.d")
diff --git a/pkgs/by-name/hy/hyprlock/package.nix b/pkgs/by-name/hy/hyprlock/package.nix
index fb59a96321a0..722e90b445ea 100644
--- a/pkgs/by-name/hy/hyprlock/package.nix
+++ b/pkgs/by-name/hy/hyprlock/package.nix
@@ -1,37 +1,37 @@
-{ lib
-, stdenv
-, fetchFromGitHub
-, cmake
-, pkg-config
-, libGL
-, libxkbcommon
-, hyprlang
-, pam
-, wayland
-, wayland-protocols
-, cairo
-, pango
-, libdrm
-, mesa
-, nix-update-script
+{
+  lib,
+  stdenv,
+  fetchFromGitHub,
+  cmake,
+  pkg-config,
+  libGL,
+  libxkbcommon,
+  hyprlang,
+  pam,
+  wayland,
+  wayland-protocols,
+  cairo,
+  file,
+  libjpeg,
+  libwebp,
+  pango,
+  libdrm,
+  mesa,
+  nix-update-script,
 }:
 
 stdenv.mkDerivation (finalAttrs: {
   pname = "hyprlock";
-  version = "0.3.0";
+  version = "0.3.0-unstable-2024-04-24";
 
   src = fetchFromGitHub {
     owner = "hyprwm";
     repo = "hyprlock";
-    rev = "v${finalAttrs.version}";
-    hash = "sha256-rbzVe2WNdHynJrnyJsKOOrV8yuuJ7QIuah3ZHWERSnA=";
+    # FIXME: Change to a stable release once available
+    rev = "415262065fff0a04b229cd00165f346a86a0a73a";
+    hash = "sha256-jla5Wo0Qt3NEnD0OjNj85BGw0pR4Zlz5uy8AqHH7tuE=";
   };
 
-  patches = [
-    # remove PAM file install check
-    ./cmake.patch
-  ];
-
   strictDeps = true;
 
   nativeBuildInputs = [
@@ -41,9 +41,12 @@ stdenv.mkDerivation (finalAttrs: {
 
   buildInputs = [
     cairo
+    file
     hyprlang
     libdrm
     libGL
+    libjpeg
+    libwebp
     libxkbcommon
     mesa
     pam
@@ -58,8 +61,11 @@ stdenv.mkDerivation (finalAttrs: {
     description = "Hyprland's GPU-accelerated screen locking utility";
     homepage = "https://github.com/hyprwm/hyprlock";
     license = lib.licenses.bsd3;
-    maintainers = with lib.maintainers; [ eclairevoyant ];
+    maintainers = with lib.maintainers; [ ];
     mainProgram = "hyprlock";
-    platforms = [ "aarch64-linux" "x86_64-linux" ];
+    platforms = [
+      "aarch64-linux"
+      "x86_64-linux"
+    ];
   };
 })
diff --git a/pkgs/by-name/hy/hyprnome/package.nix b/pkgs/by-name/hy/hyprnome/package.nix
index 691ebc574a43..387f1e72d2dc 100644
--- a/pkgs/by-name/hy/hyprnome/package.nix
+++ b/pkgs/by-name/hy/hyprnome/package.nix
@@ -8,16 +8,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "hyprnome";
-  version = "0.2.0";
+  version = "0.3.0";
 
   src = fetchFromGitHub {
     owner = "donovanglover";
     repo = "hyprnome";
     rev = version;
-    hash = "sha256-zlXiT2EOIdgIDI4NQuU3C903SSq5bylBAFJXyv7mdJ4=";
+    hash = "sha256-J/gaAwydSA9fi2qZYrWLpodTltL56yG4VQ2YlIPKJ/U=";
   };
 
-  cargoHash = "sha256-DpbRs97sr5wpJSrYF99ZiQ0SZOZdoQjfaLhKIAU95HA=";
+  cargoHash = "sha256-Fyst6rwpvVQoeWCOkJwpNuMcnp6Q+kAXtDg+fccTVNM=";
 
   nativeBuildInputs = [ installShellFiles ];
 
diff --git a/pkgs/by-name/i2/i2p/package.nix b/pkgs/by-name/i2/i2p/package.nix
index 0c659755ee4e..7f1cfb025558 100644
--- a/pkgs/by-name/i2/i2p/package.nix
+++ b/pkgs/by-name/i2/i2p/package.nix
@@ -13,7 +13,7 @@
 
 stdenv.mkDerivation (finalAttrs: {
   pname = "i2p";
-  version = "2.5.0";
+  version = "2.5.1";
 
   src = fetchzip {
     urls = [
@@ -23,7 +23,7 @@ stdenv.mkDerivation (finalAttrs: {
       "https://files.i2p-projekt.de/"
       "https://download.i2p2.no/releases/"
     ]);
-    hash = "sha256-mGBt2BrHU2ETV3jRay5tEpMJEO3b3K6BlBjYZNedtEA=";
+    hash = "sha256-38kG0UyU1ngVdUb/H5tIuG3p+bsvJznjervDh3TWoGo=";
   };
 
   strictDeps = true;
diff --git a/pkgs/by-name/i3/i3bar-river/package.nix b/pkgs/by-name/i3/i3bar-river/package.nix
index e629dd32b95e..f94b8628f603 100644
--- a/pkgs/by-name/i3/i3bar-river/package.nix
+++ b/pkgs/by-name/i3/i3bar-river/package.nix
@@ -7,16 +7,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "i3bar-river";
-  version = "0.1.7";
+  version = "0.1.9";
 
   src = fetchFromGitHub {
     owner = "MaxVerevkin";
     repo = "i3bar-river";
     rev = "v${version}";
-    hash = "sha256-mLRB4o8FR/R9QUpRkcNppiE2XcWFWE05wPxuKdxG18M=";
+    hash = "sha256-tG23bdEKp8+9RMS1fpW8EVe+bAdjQp7nVW0eHl3eYSQ=";
   };
 
-  cargoHash = "sha256-INjuI3XTSzAjLqk/P+cd7rMhXsOBDSqMaZZN9kFyreg=";
+  cargoHash = "sha256-nSzGWpnyGRus9qCTPAd+BM4KsujSNyRmFUCc4Lg4D5k=";
 
   nativeBuildInputs = [ pkg-config ];
   buildInputs = [ pango ];
diff --git a/pkgs/by-name/ic/icnsify/package.nix b/pkgs/by-name/ic/icnsify/package.nix
new file mode 100644
index 000000000000..a1017f14a439
--- /dev/null
+++ b/pkgs/by-name/ic/icnsify/package.nix
@@ -0,0 +1,29 @@
+{
+  lib,
+  rustPlatform,
+  fetchFromGitHub,
+}:
+let
+  version = "0.1.0";
+in
+rustPlatform.buildRustPackage {
+  pname = "icnsify";
+  inherit version;
+
+  src = fetchFromGitHub {
+    owner = "uncenter";
+    repo = "icnsify";
+    rev = "v${version}";
+    hash = "sha256-v8jwN29S6ZTt2XkPpZM+lJugbP9ClzPhqu52mdwdP00=";
+  };
+
+  cargoHash = "sha256-5wgioCOKvZ0J/t5v/Ic3unAA5h5Bt6MuCUzFJP7Dusw=";
+
+  meta = {
+    description = "Convert PNGs to .icns";
+    homepage = "https://github.com/uncenter/icnsify";
+    license = lib.licenses.mit;
+    maintainers = with lib.maintainers; [ uncenter ];
+    mainProgram = "icnsify";
+  };
+}
diff --git a/pkgs/by-name/ig/ignite-cli/package.nix b/pkgs/by-name/ig/ignite-cli/package.nix
index b48af94d7fb8..998d9a0062a0 100644
--- a/pkgs/by-name/ig/ignite-cli/package.nix
+++ b/pkgs/by-name/ig/ignite-cli/package.nix
@@ -8,16 +8,16 @@
 
 buildGoModule rec {
   pname = "ignite-cli";
-  version = "28.3.0";
+  version = "28.4.0";
 
   src = fetchFromGitHub {
     repo = "cli";
     owner = "ignite";
     rev = "v${version}";
-    hash = "sha256-VLbVXZRKunvqM2gZlFrRdpIG558w6WFIRa/XHZwqA7s=";
+    hash = "sha256-FxTOtowoGXJvGt+qnVOogOnxAurFPe9ihQpBhxhwEkI=";
   };
 
-  vendorHash = "sha256-pT9WQuoA1LfeA2MO1giuO2hfwydiWqjyYXdSbqfHdhs=";
+  vendorHash = "sha256-ZqyZTvJ7IeEbQ/jRjaEiWT8xNnZdiaY3qJKeQtaHzXc=";
 
   nativeBuildInputs = [ makeWrapper ];
 
diff --git a/pkgs/by-name/ig/igvm-tooling/package.nix b/pkgs/by-name/ig/igvm-tooling/package.nix
new file mode 100644
index 000000000000..de9bdd996bf1
--- /dev/null
+++ b/pkgs/by-name/ig/igvm-tooling/package.nix
@@ -0,0 +1,86 @@
+{ lib
+, python3
+, fetchFromGitHub
+, fetchpatch
+, which
+, acpica-tools
+}:
+
+python3.pkgs.buildPythonApplication rec {
+  pname = "igvm-tooling";
+  version = "1.5.0";
+  pyproject = true;
+
+  src = fetchFromGitHub {
+    owner = "microsoft";
+    repo = "igvm-tooling";
+    rev = "igvm-${version}";
+    hash = "sha256-13TtiJv2w9WXSW6oPMfo+rRah+Q1wHV14aBaFGfz9CE=";
+  };
+
+  patches = [
+    # drop unused libclang dependency
+    # remove once https://github.com/microsoft/igvm-tooling/pull/53 is merged
+    (fetchpatch {
+      name = "0001-setup.py-remove-unused-libclang-dependency.patch";
+      url = "https://github.com/microsoft/igvm-tooling/commit/7182e925de9b5e9f5c8c3a3ce6e3942a92506064.patch";
+      sha256 = "sha256-tcVxcuLxknyEdo2YjeHOqSG9xQna8US+YyvlcfX+Htw=";
+      stripLen = 1;
+    })
+    # write updated acpi files to tempdir (instead of nix store path) at runtime
+    # remove once https://github.com/microsoft/igvm-tooling/pull/54 is merged
+    (fetchpatch {
+      name = "0002-acpi-update-dsl-files-in-tempdir.patch";
+      url = "https://github.com/microsoft/igvm-tooling/commit/20f8d123ec6531d8540074b7df2ee12de60e73b8.patch";
+      sha256 = "sha256-hNfkclxaYViy66TPHqLV3mqD7wqBuBN9MnMLaDOeRNM=";
+      stripLen = 1;
+    })
+    # allow for determinist id block signing
+    # remove once https://github.com/microsoft/igvm-tooling/pull/55 is merged
+    (fetchpatch {
+      name = "0003-add-deterministic-id-block-signature-mode.patch";
+      url = "https://github.com/microsoft/igvm-tooling/commit/03ad7825ade76ac25e308bb85f92e89b732e0bf1.patch";
+      sha256 = "sha256-Y7DFr0KgGtY8KOt6fLWd32sTaig/zHFe7n83+Yb9ls8=";
+      stripLen = 1;
+    })
+  ];
+
+  postPatch = ''
+    substituteInPlace igvm/acpi.py \
+      --replace-fail 'os.path.join(os.path.dirname(__file__), "acpi", "acpi.zip")' "\"$out/share/igvm-tooling/acpi/acpi.zip\""
+  '';
+
+  sourceRoot = "${src.name}/src";
+
+  nativeBuildInputs = [ acpica-tools ];
+
+  propagatedBuildInputs = with python3.pkgs; [
+    setuptools
+    ecdsa
+    cstruct
+    pyelftools
+    pytest
+    cached-property
+    frozendict
+  ] ++ [
+    acpica-tools
+    which
+  ];
+
+  postInstall = ''
+    mkdir -p $out/share/igvm-tooling/acpi/acpi-clh
+    cp -rT igvm/acpi/acpi-clh $out/share/igvm-tooling/acpi/acpi-clh
+    cp igvm/acpi/acpi.zip $out/share/igvm-tooling/acpi/acpi.zip
+    find $out/share/igvm-tooling/acpi -name "*.dsl" -exec iasl -f {} \;
+  '';
+
+  meta = {
+    description = "IGVM Image Generator";
+    homepage = "https://github.com/microsoft/igvm-tooling";
+    license = lib.licenses.mit;
+    maintainers = [ lib.maintainers.malt3 ];
+    changelog = "https://github.com/microsoft/igvm-tooling/releases/tag/igvm-${version}";
+    mainProgram = "igvmgen";
+    platforms = lib.platforms.all;
+  };
+}
diff --git a/pkgs/by-name/im/imposm/package.nix b/pkgs/by-name/im/imposm/package.nix
new file mode 100644
index 000000000000..e52cac5634cb
--- /dev/null
+++ b/pkgs/by-name/im/imposm/package.nix
@@ -0,0 +1,34 @@
+{ lib, buildGoModule, fetchFromGitHub, leveldb, geos }:
+
+buildGoModule rec {
+  pname = "imposm";
+  version = "0.12.0";
+
+  src = fetchFromGitHub {
+    owner = "omniscale";
+    repo = "imposm3";
+    rev = "v${version}";
+    hash = "sha256-xX4cV/iU7u/g9n7dtkkkCtNOPZK5oyprNHGDUuW+ees=";
+  };
+
+  vendorHash = null;
+
+  buildInputs = [ leveldb geos ];
+
+  ldflags = [
+    "-s -w"
+    "-X github.com/omniscale/imposm3.Version=${version}"
+  ];
+
+  # requires network access
+  doCheck = false;
+
+  meta = with lib; {
+    description = "Imposm imports OpenStreetMap data into PostGIS";
+    homepage = "https://imposm.org/";
+    changelog = "https://github.com/omniscale/imposm3/releases/tag/${src.rev}";
+    license = licenses.apsl20;
+    maintainers = with maintainers; [ sikmir ];
+    mainProgram = "imposm";
+  };
+}
diff --git a/pkgs/by-name/in/incus/generic.nix b/pkgs/by-name/in/incus/generic.nix
index cf73d366e10c..56b10804079b 100644
--- a/pkgs/by-name/in/incus/generic.nix
+++ b/pkgs/by-name/in/incus/generic.nix
@@ -81,7 +81,8 @@ buildGoModule rec {
     make incus-agent incus-migrate
   '';
 
-  preCheck =
+  # Disable tests requiring local operations
+  checkFlags =
     let
       skippedTests = [
         "TestValidateConfig"
@@ -91,10 +92,7 @@ buildGoModule rec {
         "TestContainerTestSuite"
       ];
     in
-    ''
-      # Disable tests requiring local operations
-      buildFlagsArray+=("-run" "[^(${builtins.concatStringsSep "|" skippedTests})]")
-    '';
+    [ "-skip=^${builtins.concatStringsSep "$|^" skippedTests}$" ];
 
   postInstall = ''
     installShellCompletion --cmd incus \
@@ -115,7 +113,7 @@ buildGoModule rec {
         ;
     };
 
-    tests = nixosTests.incus;
+    tests = if lts then nixosTests.incus-lts else nixosTests.incus;
 
     ui = callPackage ./ui.nix { };
 
diff --git a/pkgs/by-name/in/incus/package.nix b/pkgs/by-name/in/incus/package.nix
index 50fccf3e77ee..be289a05e077 100644
--- a/pkgs/by-name/in/incus/package.nix
+++ b/pkgs/by-name/in/incus/package.nix
@@ -1,6 +1,6 @@
 import ./generic.nix {
-  hash = "sha256-+q5qP7w2RdtuwvxPThCryYYEJ7s5WDnWHRvjo4TuajA=";
-  version = "6.0.0";
-  vendorHash = "sha256-wcauzIbBcYpSWttZCVVE9m49AEQGolGYSsv9eEkhb7Y=";
+  hash = "sha256-BFB4bdfh3hI7D1m7a20ckPPyP9CYXW7mjqeTZ/21Gqs=";
+  version = "6.1.0";
+  vendorHash = "sha256-a8ZPhzs7sNIJLjQ9Y87Zf9SXAsmbdVn250Q0OQwy69A=";
   patches = [ ];
 }
diff --git a/pkgs/by-name/in/inotify-info/package.nix b/pkgs/by-name/in/inotify-info/package.nix
index 2faa45771160..ea7235917caf 100644
--- a/pkgs/by-name/in/inotify-info/package.nix
+++ b/pkgs/by-name/in/inotify-info/package.nix
@@ -1,14 +1,17 @@
-{ lib, stdenv, fetchFromGitHub }:
-
+{
+  lib,
+  stdenv,
+  fetchFromGitHub,
+}:
 stdenv.mkDerivation (finalAttrs: {
   pname = "inotify-info";
-  version = "unstable-2024-01-05";
+  version = "0.0.1";
 
   src = fetchFromGitHub {
     owner = "mikesart";
     repo = "inotify-info";
-    rev = "a7ff6fa62ed96ec5d2195ef00756cd8ffbf23ae1";
-    hash = "sha256-yY+hjdb5J6dpFkIMMUWvZlwoGT/jqOuQIcFp3Dv+qB8=";
+    rev = "refs/tags/v${finalAttrs.version}";
+    hash = "sha256-fsUvIXWnP6Iy9Db0wDG+ntSw6mUt0MQOTJA5vFxhH+U=";
   };
 
   installPhase = ''
diff --git a/pkgs/by-name/in/inshellisense/package.nix b/pkgs/by-name/in/inshellisense/package.nix
index 0b685022ffa8..5e9610d0c2f9 100644
--- a/pkgs/by-name/in/inshellisense/package.nix
+++ b/pkgs/by-name/in/inshellisense/package.nix
@@ -2,16 +2,16 @@
 
 buildNpmPackage rec {
   pname = "inshellisense";
-  version = "0.0.1-rc.14";
+  version = "0.0.1-rc.15";
 
   src = fetchFromGitHub {
     owner = "microsoft";
     repo = pname;
     rev = "refs/tags/${version}";
-    hash = "sha256-ZsEAE9EDJLREpKjHLbvqAUNM/y9eCH44g3D8NHYHiT4=";
+    hash = "sha256-/6pU8ubasONPMe1qnE+Db0nzdHRQTo9fhMr7Xxjgsos=";
   };
 
-  npmDepsHash = "sha256-p0/GnAdWNM/wjB/w+rXbOrh3Hr/smIW0IVQga7uCKYY=";
+  npmDepsHash = "sha256-rOyvFA5X3o1TCgY54XxNSg0+QotA8IUauLngTtJuRj4=";
 
   # Needed for dependency `@homebridge/node-pty-prebuilt-multiarch`
   # On Darwin systems the build fails with,
diff --git a/pkgs/by-name/in/intune-portal/package.nix b/pkgs/by-name/in/intune-portal/package.nix
index 6e60df8bde46..c51771824446 100644
--- a/pkgs/by-name/in/intune-portal/package.nix
+++ b/pkgs/by-name/in/intune-portal/package.nix
@@ -23,11 +23,11 @@
 }:
 stdenv.mkDerivation rec {
   pname = "intune-portal";
-  version = "1.2402.12-jammy";
+  version = "1.2404.23-jammy";
 
   src = fetchurl {
     url = "https://packages.microsoft.com/ubuntu/22.04/prod/pool/main/i/${pname}/${pname}_${version}_amd64.deb";
-    hash = "sha256-S5+Ddm13OJ4eQTQ9Q8OgsCqnpM6GxuZ1hEycZCy6//g=";
+    hash = "sha256-zAH35iF+3YpDNGo3UhmzL4pRJXlEhG1PaT71qnRtpAg=";
   };
 
   nativeBuildInputs = [ dpkg ];
diff --git a/pkgs/by-name/ir/ironbar/package.nix b/pkgs/by-name/ir/ironbar/package.nix
index 1576f06528c6..006eb004611d 100644
--- a/pkgs/by-name/ir/ironbar/package.nix
+++ b/pkgs/by-name/ir/ironbar/package.nix
@@ -1,63 +1,76 @@
-{ gtk3
-, gdk-pixbuf
-, librsvg
-, webp-pixbuf-loader
-, gobject-introspection
-, glib-networking
-, glib
-, shared-mime-info
-, gsettings-desktop-schemas
-, wrapGAppsHook
-, gtk-layer-shell
-, gnome
-, libxkbcommon
-, openssl
-, pkg-config
-, hicolor-icon-theme
-, rustPlatform
-, lib
-, fetchFromGitHub
+{
+  gtk3,
+  gdk-pixbuf,
+  librsvg,
+  webp-pixbuf-loader,
+  gobject-introspection,
+  glib-networking,
+  glib,
+  shared-mime-info,
+  gsettings-desktop-schemas,
+  wrapGAppsHook3,
+  gtk-layer-shell,
+  gnome,
+  libxkbcommon,
+  openssl,
+  pkg-config,
+  hicolor-icon-theme,
+  rustPlatform,
+  lib,
+  fetchFromGitHub,
+  luajit,
+  luajitPackages,
+  libpulseaudio,
+  features ? [ ],
 }:
 
+let
+  hasFeature = f: features == [ ] || builtins.elem f features;
+in
 rustPlatform.buildRustPackage rec {
   pname = "ironbar";
-  version = "0.14.1";
+  version = "0.15.1";
 
   src = fetchFromGitHub {
     owner = "JakeStanger";
     repo = "ironbar";
     rev = "v${version}";
-    hash = "sha256-y4w4i/IVe1+wjB2tsCPQH6c7XTl93u45Q0pXFi3TY1E=";
+    hash = "sha256-TPbvKQdoGfZMzp+fl72vy6MtRV1yGcOG/es67VOA0xw=";
   };
 
-  cargoHash = "sha256-h5yNJM+NvX/Hi86iSegHWevPcPZeDmJ4y/qNr3G20Qg=";
+  cargoHash = "sha256-+9R505xyEycv5Dav4ZCh1BiYRp3U1I9yBDqSPefo9uY=";
 
-  buildInputs = [
-    gtk3
-    gdk-pixbuf
-    glib
-    gtk-layer-shell
-    glib-networking
-    shared-mime-info
-    gnome.adwaita-icon-theme
-    hicolor-icon-theme
-    gsettings-desktop-schemas
-    libxkbcommon
-    openssl
-  ];
+  buildInputs =
+    [
+      gtk3
+      gdk-pixbuf
+      glib
+      gtk-layer-shell
+      glib-networking
+      shared-mime-info
+      gnome.adwaita-icon-theme
+      hicolor-icon-theme
+      gsettings-desktop-schemas
+      libxkbcommon
+    ]
+    ++ lib.optionals (hasFeature "http") [ openssl ]
+    ++ lib.optionals (hasFeature "volume") [ libpulseaudio ]
+    ++ lib.optionals (hasFeature "cairo") [ luajit ];
 
   nativeBuildInputs = [
     pkg-config
-    wrapGAppsHook
+    wrapGAppsHook3
     gobject-introspection
   ];
+  propagatedBuildInputs = [ gtk3 ];
 
-  propagatedBuildInputs = [
-    gtk3
-  ];
+  runtimeDeps = [ luajitPackages.lgi ];
 
-  preFixup = ''
-    gappsWrapperArgs+=(
+  buildNoDefaultFeatures = features != [ ];
+  buildFeatures = features;
+
+  gappsWrapperArgs =
+    ''
       # Thumbnailers
       --prefix XDG_DATA_DIRS : "${gdk-pixbuf}/share"
       --prefix XDG_DATA_DIRS : "${librsvg}/share"
@@ -66,6 +79,15 @@ rustPlatform.buildRustPackage rec {
 
       # gtk-launch
       --suffix PATH : "${lib.makeBinPath [ gtk3 ]}"
+    ''
+    + lib.optionalString (hasFeature "cairo") ''
+      --prefix LUA_PATH : "./?.lua;${luajitPackages.lgi}/share/lua/5.1/?.lua;${luajitPackages.lgi}/share/lua/5.1/?/init.lua;${luajit}/share/lua/5.1/\?.lua;${luajit}/share/lua/5.1/?/init.lua"
+      --prefix LUA_CPATH : "./?.so;${luajitPackages.lgi}/lib/lua/5.1/?.so;${luajit}/lib/lua/5.1/?.so;${luajit}/lib/lua/5.1/loadall.so"
+    '';
+
+  preFixup = ''
+    gappsWrapperArgs+=(
+      ${gappsWrapperArgs}
     )
   '';
 
@@ -74,7 +96,11 @@ rustPlatform.buildRustPackage rec {
     description = "Customizable gtk-layer-shell wlroots/sway bar written in Rust";
     license = licenses.mit;
     platforms = platforms.linux;
-    maintainers = with maintainers; [ yavko donovanglover jakestanger ];
+    maintainers = with maintainers; [
+      yavko
+      donovanglover
+      jakestanger
+    ];
     mainProgram = "ironbar";
   };
 }
diff --git a/pkgs/by-name/iz/izrss/package.nix b/pkgs/by-name/iz/izrss/package.nix
new file mode 100644
index 000000000000..ae6b8a5afb5e
--- /dev/null
+++ b/pkgs/by-name/iz/izrss/package.nix
@@ -0,0 +1,40 @@
+{
+  lib,
+  buildGoModule,
+  fetchFromGitHub,
+  ...
+}:
+let
+  version = "0.0.6";
+in
+buildGoModule {
+  pname = "izrss";
+  inherit version;
+
+  src = fetchFromGitHub {
+    owner = "isabelroses";
+    repo = "izrss";
+    rev = "refs/tags/v${version}";
+    hash = "sha256-tO/m39FMtvxZzNgnVY84k4J2v8vQVdzR3IKofJWCf9U=";
+  };
+
+  ldflags = [
+    "-s"
+    "-w"
+    "-X main.version=${version}"
+  ];
+
+  vendorHash = "sha256-/gD82wT4jWNMQsGPb2nYQiFQsUdKICyO6eiRPHrLsy8=";
+
+  meta = {
+    description = "An RSS feed reader for the terminal written in Go";
+    changelog = "https://github.com/isabelroses/izrss/releases/v${version}";
+    homepage = "https://github.com/isabelroses/izrss";
+    license = lib.licenses.gpl3Plus;
+    maintainers = with lib.maintainers; [
+      isabelroses
+      luftmensch-luftmensch
+    ];
+    mainProgram = "izrss";
+  };
+}
diff --git a/pkgs/by-name/ja/jailer/package.nix b/pkgs/by-name/ja/jailer/package.nix
new file mode 100644
index 000000000000..867d813b1f41
--- /dev/null
+++ b/pkgs/by-name/ja/jailer/package.nix
@@ -0,0 +1,83 @@
+{
+  lib,
+  ant,
+  copyDesktopItems,
+  fetchFromGitHub,
+  jdk,
+  jre,
+  makeDesktopItem,
+  makeWrapper,
+  stdenv,
+  stripJavaArchivesHook,
+  wrapGAppsHook4,
+}:
+stdenv.mkDerivation (finalAttrs: {
+  name = "jailer";
+  version = "16.1.4";
+
+  src = fetchFromGitHub {
+    owner = "Wisser";
+    repo = "Jailer";
+    rev = "dcde48b2e0c7b68cc1b6f73c80fde06fdf31fdc6";
+    sha256 = "sha256-cPOWW2z44vCc/Fw1zYZUsYafgKr82e0g+K0Db5A9F5M=";
+  };
+
+
+  buildPhase = ''
+    runHook preBuild
+    rm jailer.jar
+    ant
+    runHook postBuild
+  '';
+
+  nativeBuildInputs = [ ant jdk stripJavaArchivesHook makeWrapper wrapGAppsHook4 copyDesktopItems ];
+
+  installPhase = ''
+    runHook preInstall
+
+    install -Dm644 jailer.jar $out/share/java/jailer.jar
+    install -Dm644 jailer-engine-${finalAttrs.version}.jar $out/share/java/
+    mkdir -p $out/share/java/lib
+    for f in lib/*.jar; do
+      install -Dm644 $f $out/share/java/lib
+    done
+
+    mkdir -p $out/bin
+    mkdir -p $out/share
+    mkdir -p $out/share/pixmaps
+    cp driverlist.csv $out/share
+    cp admin/jailer.png $out/share/pixmaps
+
+    # On first run, create a local configuration folder and copy driverlist.csv there.
+    cat << EOF > $out/bin/jailer
+    #!/usr/bin/env bash
+    CFG="''${XDG_CONFIG_HOME:-\$HOME/.config}/jailer"
+    mkdir -p \$CFG
+    cp -n $out/share/driverlist.csv \$CFG
+    cd \$CFG
+    _JAVA_AWT_WM_NONREPARENTING=1 ${jre}/bin/java -jar $out/share/java/jailer.jar
+    EOF
+    chmod +x $out/bin/jailer
+
+    runHook postInstall
+  '';
+
+  desktopItems = [
+    (makeDesktopItem {
+      name = "Jailer";
+      desktopName = "Jailer";
+      exec = "jailer";
+      icon = "jailer";
+      categories = [ "Development" ];
+    })
+  ];
+
+  meta = {
+    description = "A tool for database subsetting and relational data browsing";
+    license = lib.licenses.asl20;
+    homepage = "https://github.com/Wisser/Jailer";
+    changelog = "https://github.com/Wisser/Jailer/releases/tag/${finalAttrs.version}";
+    maintainers = with lib.maintainers; [ guillaumematheron ];
+    mainProgram = "jailer";
+  };
+})
diff --git a/pkgs/by-name/je/jetbrains-toolbox/package.nix b/pkgs/by-name/je/jetbrains-toolbox/package.nix
index 2d197e472d44..653bd8451757 100644
--- a/pkgs/by-name/je/jetbrains-toolbox/package.nix
+++ b/pkgs/by-name/je/jetbrains-toolbox/package.nix
@@ -35,7 +35,6 @@ let
   appimage = appimageTools.wrapAppImage {
     inherit pname version;
     src = appimageContents;
-    extraPkgs = pkgs: (appimageTools.defaultFhsEnvArgs.targetPkgs pkgs);
   };
 in
 stdenv.mkDerivation {
diff --git a/pkgs/by-name/ji/jikken/package.nix b/pkgs/by-name/ji/jikken/package.nix
index 1001ed711ad8..9b51b96ac2dc 100644
--- a/pkgs/by-name/ji/jikken/package.nix
+++ b/pkgs/by-name/ji/jikken/package.nix
@@ -10,16 +10,16 @@
 }:
 rustPlatform.buildRustPackage rec {
   pname = "jikken";
-  version = "0.7.1";
+  version = "0.7.2";
 
   src = fetchFromGitHub {
     owner = "jikkenio";
     repo = "jikken";
     rev = "v${version}";
-    hash = "sha256-A6+sezhob7GqAzuJsJGH7ZDLTJhCD+f0t3zx/IMdPsI=";
+    hash = "sha256-bV9NjwTcX1euk8zRJMGkAULegQmiT8z4jxngOwOPr+M=";
   };
 
-  cargoHash = "sha256-FxsI2ku52MlSGUph3/ovmn6HIwW+cUwVXuwzcd/1DV4=";
+  cargoHash = "sha256-gJg/l7L19qk6DELqo4fYc2ZWTHqKeUFEF3YU3+uyFjQ=";
 
   nativeBuildInputs = [ pkg-config ];
 
@@ -28,6 +28,7 @@ rustPlatform.buildRustPackage rec {
     ++ lib.optionals stdenv.isDarwin [
       darwin.apple_sdk.frameworks.IOKit
       darwin.apple_sdk.frameworks.Security
+      darwin.apple_sdk.frameworks.SystemConfiguration
     ];
 
   passthru.updateScript = nix-update-script { };
diff --git a/pkgs/by-name/js/jsoncons/package.nix b/pkgs/by-name/js/jsoncons/package.nix
index 0a4efe6d827f..0e40d8935b43 100644
--- a/pkgs/by-name/js/jsoncons/package.nix
+++ b/pkgs/by-name/js/jsoncons/package.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation (finalAttrs: {
   pname = "jsoncons";
-  version = "0.174.0";
+  version = "0.175.0";
 
   src = fetchFromGitHub {
     owner = "danielaparker";
     repo = "jsoncons";
     rev = "v${finalAttrs.version}";
-    hash = "sha256-VL64oWmaLz4zJm8eCF03tcAkeL+j1BRAQJ5/kUA7L90=";
+    hash = "sha256-pLOKgZx3f0Jka0Tm3SBC1JlQ2Rc3ViPgmXRbjgF4UXI=";
   };
 
   nativeBuildInputs = [ cmake ];
diff --git a/pkgs/by-name/ju/just/package.nix b/pkgs/by-name/ju/just/package.nix
index c613853ef3d9..d635d1271a2e 100644
--- a/pkgs/by-name/ju/just/package.nix
+++ b/pkgs/by-name/ju/just/package.nix
@@ -11,17 +11,17 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "just";
-  version = "1.25.2";
+  version = "1.26.0";
   outputs = [ "out" "man" "doc" ];
 
   src = fetchFromGitHub {
     owner = "casey";
     repo = pname;
     rev = "refs/tags/${version}";
-    hash = "sha256-w7tHLjIFnlvyuTw5yG6zxJtQ7oDNdKRXHIRKY638vTo=";
+    hash = "sha256-jPVvKxTHTOFkjpTsnjy9/IxQtHLgv1fInKA6knKUmu8=";
   };
 
-  cargoHash = "sha256-VL2uNbEtqOv3xmLukhdCmo3lrfx5yFwOAMGwgBlgAVw=";
+  cargoHash = "sha256-ssZ5JxOd0XVs4hsvnSz1IvtKE7ftEKX3nN2B8SsMesw=";
 
   nativeBuildInputs = [ installShellFiles mdbook ];
   buildInputs = lib.optionals stdenv.isDarwin [ libiconv ];
diff --git a/pkgs/by-name/ka/katawa-shoujo-re-engineered/package.nix b/pkgs/by-name/ka/katawa-shoujo-re-engineered/package.nix
index 34ec710a9b45..f00de11e27fa 100644
--- a/pkgs/by-name/ka/katawa-shoujo-re-engineered/package.nix
+++ b/pkgs/by-name/ka/katawa-shoujo-re-engineered/package.nix
@@ -9,7 +9,7 @@
 }:
 stdenvNoCC.mkDerivation (finalAttrs: {
   pname = "katawa-shoujo-re-engineered";
-  version = "1.4.4";
+  version = "1.4.7";
 
   src = fetchFromGitea {
     # GitHub mirror at fleetingheart/ksre
@@ -17,7 +17,7 @@ stdenvNoCC.mkDerivation (finalAttrs: {
     owner = "fhs";
     repo = "katawa-shoujo-re-engineered";
     rev = "v${finalAttrs.version}";
-    hash = "sha256-RYJM/wGVWqIRZzHLUtUZ5mKUrUftDVaOwS1f/EpW6Tk=";
+    hash = "sha256-E+2G47vWA7o4bFWttoMDfPjAG32K8FDv+OluMjzPDQw=";
   };
 
   desktopItems = [
@@ -59,7 +59,7 @@ stdenvNoCC.mkDerivation (finalAttrs: {
       cc-by-nc-nd-30
     ];
     mainProgram = "katawa-shoujo-re-engineered";
-    maintainers = with lib.maintainers; [ quantenzitrone ];
+    maintainers = with lib.maintainers; [ quantenzitrone rapiteanu ];
     platforms = renpy.meta.platforms;
   };
 })
diff --git a/pkgs/by-name/ka/katriawm/package.nix b/pkgs/by-name/ka/katriawm/package.nix
index 85116255e24f..7e8817a9e87d 100644
--- a/pkgs/by-name/ka/katriawm/package.nix
+++ b/pkgs/by-name/ka/katriawm/package.nix
@@ -1,10 +1,12 @@
-{ lib
-, stdenv
-, fetchzip
-, libX11
-, libXft
-, libXrandr
-, pkg-config
+{
+  lib,
+  stdenv,
+  fetchzip,
+  libX11,
+  libXft,
+  libXrandr,
+  pkg-config,
+  gitUpdater,
 }:
 
 stdenv.mkDerivation (finalAttrs: {
@@ -16,9 +18,7 @@ stdenv.mkDerivation (finalAttrs: {
     hash = "sha256-IWviLboZz421/Amz/QG4o8jYaG8Y/l5PvmvXfK5nzJE=";
   };
 
-  nativeBuildInputs = [
-    pkg-config
-  ];
+  nativeBuildInputs = [ pkg-config ];
 
   buildInputs = [
     libX11
@@ -26,11 +26,17 @@ stdenv.mkDerivation (finalAttrs: {
     libXrandr
   ];
 
-  outputs = [ "out" "man" ];
+  outputs = [
+    "out"
+    "man"
+  ];
 
   strictDeps = true;
 
-  makeFlags = [ "-C" "src" ];
+  makeFlags = [
+    "-C"
+    "src"
+  ];
 
   installFlags = [ "prefix=$(out)" ];
 
@@ -39,6 +45,11 @@ stdenv.mkDerivation (finalAttrs: {
       --replace pkg-config "$PKG_CONFIG"
   '';
 
+  passthru.updateScript = gitUpdater {
+    url = "https://www.uninformativ.de/git/katriawm.git/";
+    rev-prefix = "v";
+  };
+
   meta = {
     homepage = "https://www.uninformativ.de/git/katriawm/file/README.html";
     description = "A non-reparenting, dynamic window manager with decorations";
diff --git a/pkgs/by-name/kc/kcl-cli/package.nix b/pkgs/by-name/kc/kcl-cli/package.nix
index ea0b5536b528..3783a4682b99 100644
--- a/pkgs/by-name/kc/kcl-cli/package.nix
+++ b/pkgs/by-name/kc/kcl-cli/package.nix
@@ -5,14 +5,14 @@
 
 buildGoModule rec {
   pname = "kcl-cli";
-  version = "0.8.7";
+  version = "0.8.9";
   src = fetchFromGitHub {
     owner = "kcl-lang";
     repo = "cli";
     rev = "v${version}";
-    hash = "sha256-OKRMgxynKmHnO+5tcKlispFkpQehHINzB6qphH+lwHQ=";
+    hash = "sha256-slU3n7YCV5VfvXArzlcITb9epdu/gyXlAWq9KLjGdJA=";
   };
-  vendorHash = "sha256-dF0n1/SmQVd2BUVOPmvZWWUJYTn2mMnbgZC92luSY2s=";
+  vendorHash = "sha256-Xv8Tfq9Kb1xGFCWZQwBFDX9xZW9j99td/DUb7jBtkpE=";
   ldflags = [
     "-X=kcl-lang.io/cli/pkg/version.version=${version}"
   ];
diff --git a/pkgs/by-name/ke/keto/package.nix b/pkgs/by-name/ke/keto/package.nix
new file mode 100644
index 000000000000..8f50762bfeb2
--- /dev/null
+++ b/pkgs/by-name/ke/keto/package.nix
@@ -0,0 +1,45 @@
+{
+  fetchFromGitHub,
+  buildGoModule,
+  lib,
+}:
+let
+  pname = "keto";
+  version = "0.13.0-alpha.0";
+  commit = "c75695837f170334b526359f28967aa33d61bce6";
+in
+buildGoModule {
+  inherit pname version commit;
+
+  src = fetchFromGitHub {
+    owner = "ory";
+    repo = "keto";
+    rev = "v${version}";
+    sha256 = "sha256-0yylaaXogN2HWXY8Tb7ScN4jdyeHecJ0gBYlVvcwaNE=";
+  };
+
+  vendorHash = "sha256-lgwV4Ysjmd9e850Rf5c0wSZtMW3U34/piwwG7dQEUV4=";
+
+  tags = [
+    "sqlite"
+    "json1"
+    "hsm"
+  ];
+
+  subPackages = [ "." ];
+
+  # Pass versioning information via ldflags
+  ldflags = [
+    "-s"
+    "-w"
+    "-X github.com/ory/keto/internal/driver/config.Version=${version}"
+    "-X github.com/ory/keto/internal/driver/config.Commit=${commit}"
+  ];
+
+  meta = {
+    description = "ORY Keto, the open source access control server";
+    homepage = "https://www.ory.sh/keto/";
+    license = lib.licenses.asl20;
+    maintainers = with lib.maintainers; [ mrmebelman ];
+  };
+}
diff --git a/pkgs/by-name/ki/kittysay/package.nix b/pkgs/by-name/ki/kittysay/package.nix
index 27433adcc99c..df36247ead0e 100644
--- a/pkgs/by-name/ki/kittysay/package.nix
+++ b/pkgs/by-name/ki/kittysay/package.nix
@@ -3,7 +3,7 @@
   rustPlatform,
   fetchFromGitHub,
 }: let
-  version = "0.5.0";
+  version = "0.6.0";
 in
   rustPlatform.buildRustPackage {
     pname = "kittysay";
@@ -13,10 +13,10 @@ in
       owner = "uncenter";
       repo = "kittysay";
       rev = "v${version}";
-      sha256 = "sha256-eOcHrEvU3nBKFokwE8CyDOUYoBA1+gBlnl7VRUuoFfE=";
+      sha256 = "sha256-dJpbRPrpilaOFVPjAESk4DyZtH/hJm16p6pMRqrzOk4=";
     };
 
-    cargoHash = "sha256-dVgPp5jY3ii8mO/HLTDESQzQyZXzqut8Bjm2KfWD0+U=";
+    cargoHash = "sha256-r1xdMczqVyX7ZPjkyDdgVW3BFOeKOw1Dp6mGHb2XzrM=";
 
     meta = {
       description = "Cowsay, but with a cute kitty :3";
diff --git a/pkgs/by-name/ko/komac/package.nix b/pkgs/by-name/ko/komac/package.nix
index 3a87faa3c4ab..b15fc902b256 100644
--- a/pkgs/by-name/ko/komac/package.nix
+++ b/pkgs/by-name/ko/komac/package.nix
@@ -1,6 +1,8 @@
 { lib
 , stdenv
 , fetchFromGitHub
+, pkg-config
+, openssl
 , rustPlatform
 , darwin
 , testers
@@ -8,12 +10,12 @@
 }:
 
 let
-  version = "2.1.0";
+  version = "2.2.1";
   src = fetchFromGitHub {
     owner = "russellbanks";
     repo = "Komac";
     rev = "v${version}";
-    hash = "sha256-L8UYpNqjRyqf4hPQwD9LaXWu6jYaP34yTwTxcqg+e2U=";
+    hash = "sha256-dPX8/JUQ+vugd+M/jIjBf4/sNbac0FVQ0obhyAAGI84=";
   };
 in
 rustPlatform.buildRustPackage {
@@ -21,9 +23,13 @@ rustPlatform.buildRustPackage {
 
   pname = "komac";
 
-  cargoHash = "sha256-J4QZzbyDr4SDt6LlAy9ZdpqgIufZCZHmOC9eu70wMsM=";
+  cargoHash = "sha256-CDPN90X3m/9FRLolAVCIcAuajZbB5OAgLcFXq2ICS8g=";
 
-  buildInputs = lib.optionals stdenv.isDarwin [
+  nativeBuildInputs = lib.optionals stdenv.isLinux [ pkg-config ];
+
+  buildInputs = lib.optionals stdenv.isLinux [
+    openssl
+  ] ++ lib.optionals stdenv.isDarwin [
     darwin.apple_sdk.frameworks.SystemConfiguration
   ];
 
diff --git a/pkgs/by-name/ko/konbucase/package.nix b/pkgs/by-name/ko/konbucase/package.nix
index 56a977eeeb13..a846bc775a7a 100644
--- a/pkgs/by-name/ko/konbucase/package.nix
+++ b/pkgs/by-name/ko/konbucase/package.nix
@@ -5,7 +5,7 @@
 , ninja
 , vala
 , pkg-config
-, wrapGAppsHook
+, wrapGAppsHook3
 , pantheon
 , gtksourceview5
 }:
@@ -27,7 +27,7 @@ stdenv.mkDerivation (finalAttrs: {
     ninja
     vala
     pkg-config
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
diff --git a/pkgs/by-name/ko/koodo-reader/package.nix b/pkgs/by-name/ko/koodo-reader/package.nix
index 6386cece98ef..059dfeda02ee 100644
--- a/pkgs/by-name/ko/koodo-reader/package.nix
+++ b/pkgs/by-name/ko/koodo-reader/package.nix
@@ -8,7 +8,7 @@
   makeDesktopItem,
   copyDesktopItems,
   makeWrapper,
-  wrapGAppsHook,
+  wrapGAppsHook3,
   electron,
 }:
 
@@ -39,7 +39,7 @@ mkYarnPackage rec {
   nativeBuildInputs = [
     copyDesktopItems
     makeWrapper
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   dontWrapGApps = true;
diff --git a/pkgs/by-name/ko/kor/package.nix b/pkgs/by-name/ko/kor/package.nix
index 09abafc69d7c..a04132f99130 100644
--- a/pkgs/by-name/ko/kor/package.nix
+++ b/pkgs/by-name/ko/kor/package.nix
@@ -2,16 +2,16 @@
 
 buildGoModule rec {
   pname = "kor";
-  version = "0.3.8";
+  version = "0.4.0";
 
   src = fetchFromGitHub {
     owner = "yonahd";
     repo = pname;
     rev = "v${version}";
-    hash = "sha256-4lXLmh8BP7h6k8Tt/oklvv7fmDvmdKQP0P7gaCM2TK0=";
+    hash = "sha256-OZSec1S583jVGqSET0y4WhKxWf9CyLKuhEwu39Zg9vE=";
   };
 
-  vendorHash = "sha256-ScV12Xb+tVluXC2Jat44atkKXZIzIcUdZ+lyD1Y3dIM=";
+  vendorHash = "sha256-4XcmaW4H+IgZZx3PuG0aimqSG1eUnRtcbebKXuencnQ=";
 
   preCheck = ''
     HOME=$(mktemp -d)
diff --git a/pkgs/by-name/ko/kotlin-interactive-shell/package.nix b/pkgs/by-name/ko/kotlin-interactive-shell/package.nix
new file mode 100644
index 000000000000..23848a48969e
--- /dev/null
+++ b/pkgs/by-name/ko/kotlin-interactive-shell/package.nix
@@ -0,0 +1,45 @@
+{ lib, maven, fetchFromGitHub, makeWrapper, jre }:
+
+maven.buildMavenPackage rec {
+  pname = "kotlin-interactive-shell";
+  version = "0.5.2";
+
+  src = fetchFromGitHub {
+    owner = "Kotlin";
+    repo = "kotlin-interactive-shell";
+    rev = "v${version}";
+    hash = "sha256-3DTyo7rPswpEVzFkcprT6FD+ITGJ+qCXFKXEGoCK+oE=";
+  };
+
+  mvnHash = "sha256-m1o0m0foqJhEzWjC9behBeld5HT08WClcZN2xc3fZrI=";
+  mvnParameters = "-DskipTests compile";
+
+  nativeBuildInputs = [ makeWrapper ];
+
+  installPhase = ''
+    runHook preInstall
+
+    mkdir -p $out/{bin,lib}
+    cp lib/ki-shell.jar $out/lib/ki-shell.jar
+    makeWrapper ${lib.getExe jre} $out/bin/ki \
+      --add-flags "-jar $out/lib/ki-shell.jar"
+
+    runHook postInstall
+  '';
+
+  meta = with lib; {
+    description = "Kotlin Language Interactive Shell";
+    longDescription = ''
+      The shell is an extensible implementation of Kotlin REPL with a rich set of features including:
+      - Syntax highlight
+      - Type inference command
+      - Downloading dependencies in runtime using Maven coordinates
+      - List declared symbols
+    '';
+    homepage = "https://github.com/Kotlin/kotlin-interactive-shell";
+    license = licenses.asl20;
+    maintainers = [ maintainers.starsep ];
+    platforms = jre.meta.platforms;
+    mainProgram = "ki";
+  };
+}
diff --git a/pkgs/by-name/kx/kx-aspe-cli/package.nix b/pkgs/by-name/kx/kx-aspe-cli/package.nix
new file mode 100644
index 000000000000..88be7a402aeb
--- /dev/null
+++ b/pkgs/by-name/kx/kx-aspe-cli/package.nix
@@ -0,0 +1,36 @@
+{
+  lib,
+  rustPlatform,
+  fetchFromGitea,
+  pkg-config,
+  openssl,
+}:
+
+rustPlatform.buildRustPackage rec {
+  pname = "kx-aspe-cli";
+  version = "0-unstable-2024-04-06";
+
+  src = fetchFromGitea {
+    domain = "codeberg.org";
+    owner = "keyoxide";
+    repo = "kx-aspe-cli";
+    rev = "492df7edae95a8636bb59c4e5c1607053dab2c78";
+    hash = "sha256-xSJTwyHNqDHyH6dgwlWnvqNCzTvmFntk+XgAaxODWAY=";
+  };
+
+  nativeBuildInputs = [ pkg-config ];
+
+  buildInputs = [ openssl ];
+
+  cargoHash = "sha256-ZZwb5WHKFMAP5yPT1DDi+nWy7rjM/UI6ahagNqTDDMM=";
+
+  meta = {
+    homepage = "https://github.com/rustic-rs/rustic";
+    changelog = "https://codeberg.org/keyoxide/kx-aspe-cli/src/commit/${src.rev}/CHANGELOG.md";
+    description = "Keyoxide profile generator CLI using ASPE";
+    mainProgram = "kx-aspe";
+    platforms = lib.platforms.linux;
+    license = [ lib.licenses.asl20 ];
+    maintainers = [ lib.maintainers.nobbz ];
+  };
+}
diff --git a/pkgs/by-name/ky/kyua/kyua-check-hook.sh b/pkgs/by-name/ky/kyua/kyua-check-hook.sh
new file mode 100644
index 000000000000..0e8f724d5b4e
--- /dev/null
+++ b/pkgs/by-name/ky/kyua/kyua-check-hook.sh
@@ -0,0 +1,10 @@
+kyuaCheckPhase() {
+    runHook preCheck
+    # Kyua expects to save test results in ~/.kyua/store
+    HOME=$TMPDIR kyua test
+    runHook postCheck
+}
+
+if [ -z "${dontUseKyuaCheck-}" ] && [ -z "${checkPhase-}" ]; then
+    checkPhase=kyuaCheckPhase
+fi
diff --git a/pkgs/by-name/ky/kyua/package.nix b/pkgs/by-name/ky/kyua/package.nix
new file mode 100644
index 000000000000..6209c2048037
--- /dev/null
+++ b/pkgs/by-name/ky/kyua/package.nix
@@ -0,0 +1,119 @@
+{
+  lib,
+  stdenv,
+  fetchFromGitHub,
+  atf,
+  autoreconfHook,
+  lutok,
+  pkg-config,
+  sqlite,
+  gitUpdater,
+}:
+
+let
+  # Avoid an infinite recursion (because ATF uses Kyua for testing).
+  atf' = atf.overrideAttrs (_: {
+    doInstallCheck = false;
+  });
+in
+stdenv.mkDerivation (finalAttrs: {
+  pname = "kyua";
+  version = "0.13-unstable-2024-01-22"; # Match the commit used in FreeBSD’s port.
+
+  src = fetchFromGitHub {
+    owner = "freebsd";
+    repo = "kyua";
+    rev = "c85354e09ad93a902c9e8a701c042c045ec2a5b7";
+    hash = "sha256-fZ0WFgOTj8Gw8IT5O8DnuaNyZscKpg6B94m+l5UoZGc";
+  };
+
+  setupHooks = ./kyua-check-hook.sh;
+
+  postPatch =
+    ''
+      # Fix a linking error on Darwin. Embedding an archive in an archive isn’t portable.
+      substituteInPlace cli/Makefile.am.inc \
+        --replace-fail 'libcli_a_LIBADD = libutils.a' "" \
+        --replace-fail 'CLI_LIBS = ' 'CLI_LIBS = libutils.a '
+    ''
+    # These tests fail on Darwin or are unreliable.
+    + lib.optionalString (finalAttrs.doInstallCheck && stdenv.isDarwin) ''
+      sed -i utils/process/Makefile.am.inc -e '/executor_pid_test/d'
+      substituteInPlace utils/process/Kyuafile \
+        --replace-fail 'atf_test_program{name="executor_pid_test"}' ""
+      substituteInPlace engine/atf_test.cpp \
+        --replace-fail 'ATF_ADD_TEST_CASE(tcs, test__body_only__crashes);' ""
+      substituteInPlace engine/scheduler_test.cpp \
+        --replace-fail 'ATF_ADD_TEST_CASE(tcs, integration__stacktrace);' ""
+      substituteInPlace utils/stacktrace_test.cpp \
+        --replace-fail 'ATF_ADD_TEST_CASE(tcs, unlimit_core_size);' ""
+      substituteInPlace utils/process/isolation_test.cpp \
+        --replace-fail 'ATF_ADD_TEST_CASE(tcs, isolate_child__enable_core_dumps);' ""
+      substituteInPlace utils/process/operations_test.cpp \
+        --replace-fail 'ATF_ADD_TEST_CASE(tcs, terminate_self_with__termsig_and_core);' ""
+      substituteInPlace utils/process/status_test.cpp \
+        --replace-fail 'ATF_ADD_TEST_CASE(tcs, integration__coredump);' ""
+      substituteInPlace integration/cmd_test_test.sh \
+        --replace-fail 'atf_add_test_case premature_exit' ""
+    ''
+    # fchflags and UF_NOUNLINK are not supported on Linux. Other tests also fail.
+    + lib.optionalString (finalAttrs.doInstallCheck && stdenv.isLinux) ''
+      sed -i utils/process/Makefile.am.inc -e '/executor_pid_test/d'
+      substituteInPlace utils/process/Kyuafile \
+        --replace-fail 'atf_test_program{name="executor_pid_test"}' ""
+      substituteInPlace engine/atf_test.cpp \
+        --replace-fail 'ATF_ADD_TEST_CASE(tcs, test__body_only__crashes);' ""
+      substituteInPlace utils/stacktrace_test.cpp \
+        --replace-fail 'ATF_ADD_TEST_CASE(tcs, dump_stacktrace__ok);' "" \
+        --replace-fail 'ATF_ADD_TEST_CASE(tcs, dump_stacktrace_if_available__append);' "" \
+        --replace-fail 'ATF_ADD_TEST_CASE(tcs, find_core__found__long);' "" \
+        --replace-fail 'ATF_ADD_TEST_CASE(tcs, find_core__found__short);' "" \
+        --replace-fail 'ATF_ADD_TEST_CASE(tcs, unlimit_core_size__hard_is_zero);' ""
+      substituteInPlace integration/cmd_test_test.sh \
+        --replace-fail 'atf_add_test_case premature_exit' ""
+    '';
+
+  strictDeps = true;
+
+  buildInputs = [
+    lutok
+    sqlite
+  ];
+
+  nativeBuildInputs = [
+    atf'
+    autoreconfHook
+    pkg-config
+  ];
+
+  enableParallelBuilding = true;
+
+  makeFlags = [
+    # Kyua isn’t compatible with C++17, which is the default on current clang and GCC.
+    "CXXFLAGS=-std=c++11"
+  ];
+
+  doInstallCheck = true;
+
+  installCheckInputs = [ atf' ];
+  nativeInstallCheckInputs = [ sqlite ];
+
+  installCheckPhase = ''
+    runHook preInstallCheck
+    HOME=$TMPDIR PATH=$out/bin:$PATH kyua test
+    runHook postInstallCheck
+  '';
+
+  passthru.updateScript = gitUpdater { rev-prefix = "kyua-"; };
+
+  __structuredAttrs = true;
+
+  meta = {
+    description = "Testing framework for infrastructure software";
+    homepage = "https://github.com/freebsd/kyua/";
+    license = lib.licenses.bsd3;
+    mainProgram = "kyua";
+    maintainers = with lib.maintainers; [ reckenrode ];
+    platforms = lib.platforms.unix;
+  };
+})
diff --git a/pkgs/by-name/ky/kyverno-chainsaw/package.nix b/pkgs/by-name/ky/kyverno-chainsaw/package.nix
index 0853481fe1ed..d20c7308b423 100644
--- a/pkgs/by-name/ky/kyverno-chainsaw/package.nix
+++ b/pkgs/by-name/ky/kyverno-chainsaw/package.nix
@@ -2,16 +2,16 @@
 
 buildGoModule rec {
   pname = "kyverno-chainsaw";
-  version = "0.1.9";
+  version = "0.2.1";
 
   src = fetchFromGitHub {
     owner = "kyverno";
     repo = "chainsaw";
     rev = "v${version}";
-    hash = "sha256-qn5EjddLVRhN90SICa39A28giXQ24Ol1nfbxNH5TXhc=";
+    hash = "sha256-eQA4KiQH1tIbolQBKPId8hKCO0mcUnEyJ77+WSGYDjQ=";
   };
 
-  vendorHash = "sha256-R9qaG19Vp+1a7AL0q8Cl1jN89cbXzLwbnN163WMWAEw=";
+  vendorHash = "sha256-3x1HAt08Tbs56vaT2tBS//FPRn4JdFOI00XmlXMbs3w=";
 
   ldflags = [
     "-s" "-w"
diff --git a/pkgs/by-name/la/labelle/package.nix b/pkgs/by-name/la/labelle/package.nix
index 4affc6ef54e1..6ff68d63b84f 100644
--- a/pkgs/by-name/la/labelle/package.nix
+++ b/pkgs/by-name/la/labelle/package.nix
@@ -8,14 +8,14 @@
 }:
 python3Packages.buildPythonApplication rec {
   pname = "labelle";
-  version = "1.2.0";
+  version = "1.2.2";
   pyproject = true;
 
   src = fetchFromGitHub {
     owner = "labelle-org";
     repo = "labelle";
-    rev = "v${version}";
-    hash = "sha256-fLlYqJs/V5t8IdfVkfBsjtjM1rRdCyTYF87G+h1VU5Y=";
+    rev = "refs/tags/v${version}";
+    hash = "sha256-Im1mZ9kJB+0uPAmEXpUWoOYBooejes05vTGLDqPCAN4=";
   };
 
   postPatch = ''
diff --git a/pkgs/by-name/la/labwc-gtktheme/package.nix b/pkgs/by-name/la/labwc-gtktheme/package.nix
index dd2e9ca25495..0e9645e59628 100644
--- a/pkgs/by-name/la/labwc-gtktheme/package.nix
+++ b/pkgs/by-name/la/labwc-gtktheme/package.nix
@@ -3,13 +3,13 @@
 , gobject-introspection
 , gtk3
 , python3Packages
-, wrapGAppsHook
+, wrapGAppsHook3
 , unstableGitUpdater
 }:
 
 python3Packages.buildPythonApplication rec {
   pname = "labwc-gtktheme";
-  version = "unstable-2022-07-17";
+  version = "0-unstable-2022-07-17";
   pyproject = false;
 
   src = fetchFromGitHub {
@@ -21,7 +21,7 @@ python3Packages.buildPythonApplication rec {
 
   nativeBuildInputs = [
     gobject-introspection
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
diff --git a/pkgs/by-name/la/labwc-menu-generator/package.nix b/pkgs/by-name/la/labwc-menu-generator/package.nix
index 17254a077d5d..79c43706cc73 100644
--- a/pkgs/by-name/la/labwc-menu-generator/package.nix
+++ b/pkgs/by-name/la/labwc-menu-generator/package.nix
@@ -9,7 +9,7 @@
 
 stdenv.mkDerivation (finalAttrs: {
   pname = "labwc-menu-generator";
-  version = "unstable-2024-03-27";
+  version = "0-unstable-2024-03-27";
 
   src = fetchFromGitHub {
     owner = "labwc";
diff --git a/pkgs/by-name/la/labwc-tweaks-gtk/package.nix b/pkgs/by-name/la/labwc-tweaks-gtk/package.nix
index 84c71665ea9c..c8f6fdca999d 100644
--- a/pkgs/by-name/la/labwc-tweaks-gtk/package.nix
+++ b/pkgs/by-name/la/labwc-tweaks-gtk/package.nix
@@ -7,7 +7,7 @@
 , gtk3
 , libxml2
 , xkeyboard_config
-, wrapGAppsHook
+, wrapGAppsHook3
 , unstableGitUpdater
 }:
 
@@ -26,7 +26,7 @@ stdenv.mkDerivation (finalAttrs: {
     meson
     ninja
     pkg-config
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
diff --git a/pkgs/by-name/la/labwc/package.nix b/pkgs/by-name/la/labwc/package.nix
index 36aa398e8767..a6906f440ea1 100644
--- a/pkgs/by-name/la/labwc/package.nix
+++ b/pkgs/by-name/la/labwc/package.nix
@@ -26,13 +26,13 @@
 
 stdenv.mkDerivation (finalAttrs: {
   pname = "labwc";
-  version = "0.7.1";
+  version = "0.7.2";
 
   src = fetchFromGitHub {
     owner = "labwc";
     repo = "labwc";
     rev = finalAttrs.version;
-    hash = "sha256-6l+pYEMFQT8P0j40IcujSzlKgXzR5GIyuxkAJi65RiY=";
+    hash = "sha256-8TSBBNg9+W65vEKmwyAWB2yEOpHqV9YRm5+ttL19ke4=";
   };
 
   outputs = [ "out" "man" ];
diff --git a/pkgs/by-name/la/lacus/package.nix b/pkgs/by-name/la/lacus/package.nix
index 1bef9b506093..0f62ff18fed5 100644
--- a/pkgs/by-name/la/lacus/package.nix
+++ b/pkgs/by-name/la/lacus/package.nix
@@ -5,21 +5,21 @@
 
 python3.pkgs.buildPythonApplication rec {
   pname = "lacus";
-  version = "1.8.0";
+  version = "1.9.0";
   pyproject = true;
 
   src = fetchFromGitHub {
     owner = "ail-project";
     repo = "lacus";
     rev = "refs/tags/v${version}";
-    hash = "sha256-3sgTt3SsasltChCqHAWyujtUvoLwHWZzfWwlfnJA+zE=";
+    hash = "sha256-VFNW13PupJOroIhqnuLOq3mqU9nXEy1hmjHBQfErSN8=";
   };
 
-  nativeBuildInputs = with python3.pkgs; [
+  build-system = with python3.pkgs; [
     poetry-core
   ];
 
-  propagatedBuildInputs = with python3.pkgs; [
+  dependencies = with python3.pkgs; [
     flask-restx
     gunicorn
     lacuscore
diff --git a/pkgs/by-name/lb/lbreakouthd/package.nix b/pkgs/by-name/lb/lbreakouthd/package.nix
index 6e0f05082d3b..4de44c27dcbb 100644
--- a/pkgs/by-name/lb/lbreakouthd/package.nix
+++ b/pkgs/by-name/lb/lbreakouthd/package.nix
@@ -10,11 +10,11 @@
 
 stdenv.mkDerivation (finalAttrs: {
   pname = "lbreakouthd";
-  version = "1.1.7";
+  version = "1.1.8";
 
   src = fetchurl {
     url = "mirror://sourceforge/lgames/lbreakouthd-${finalAttrs.version}.tar.gz";
-    hash = "sha256-ivgT8yYEFK4kEJkilj3NP4OO2mBkk2Zx6I+Elde0TkE=";
+    hash = "sha256-3WZ77KVDNitdIcXPFf0CMXtjDvEXi91Jr7mpeV09Wt4=";
   };
 
   buildInputs = [
diff --git a/pkgs/by-name/le/lefthook/package.nix b/pkgs/by-name/le/lefthook/package.nix
index cba2661b00d9..65e7ffd52969 100644
--- a/pkgs/by-name/le/lefthook/package.nix
+++ b/pkgs/by-name/le/lefthook/package.nix
@@ -6,7 +6,7 @@
 
 let
   pname = "lefthook";
-  version = "1.6.10";
+  version = "1.6.11";
 in
 buildGoModule {
   inherit pname version;
@@ -15,7 +15,7 @@ buildGoModule {
     owner = "evilmartians";
     repo = "lefthook";
     rev = "v${version}";
-    hash = "sha256-6VjvlGA6PBYLa1Ct05jokgF9zlYKihr+ESG4C8MHnO0=";
+    hash = "sha256-l94RysGILYju0u1jOIGxLVe/TECw1naMq9SzpYq6ooM=";
   };
 
   vendorHash = "sha256-sDqP+fzAFavqtvJ98nwsD5+GxNhmLgtOkTzIK06wp9E=";
diff --git a/pkgs/by-name/le/lexical/package.nix b/pkgs/by-name/le/lexical/package.nix
index 2a8adc595f8e..d836b471cc8d 100644
--- a/pkgs/by-name/le/lexical/package.nix
+++ b/pkgs/by-name/le/lexical/package.nix
@@ -7,13 +7,13 @@
 
 beamPackages.mixRelease rec {
   pname = "lexical";
-  version = "0.6.0";
+  version = "0.6.1";
 
   src = fetchFromGitHub {
     owner = "lexical-lsp";
     repo = "lexical";
     rev = "refs/tags/v${version}";
-    hash = "sha256-20qfzYioR1PhA0ZBcft0nhcwxB95pw5L9zoPLWd7ZIE=";
+    hash = "sha256-gDiNjtYeEGoYoyoNmPh73EuYCvY36y9lUyLasbFrFgs=";
   };
 
   mixFodDeps = beamPackages.fetchMixDeps {
diff --git a/pkgs/by-name/li/libation/package.nix b/pkgs/by-name/li/libation/package.nix
index cad371b8919f..692de5d3d909 100644
--- a/pkgs/by-name/li/libation/package.nix
+++ b/pkgs/by-name/li/libation/package.nix
@@ -1,20 +1,21 @@
-{ lib
-, stdenv
-, buildDotnetModule
-, fetchFromGitHub
-, dotnetCorePackages
-, wrapGAppsHook
+{
+  lib,
+  stdenv,
+  buildDotnetModule,
+  fetchFromGitHub,
+  dotnetCorePackages,
+  wrapGAppsHook3,
 
-, libX11
-, libICE
-, libSM
-, libXi
-, libXcursor
-, libXext
-, libXrandr
-, fontconfig
-, glew
-, gtk3
+  libX11,
+  libICE,
+  libSM,
+  libXi,
+  libXcursor,
+  libXext,
+  libXrandr,
+  fontconfig,
+  glew,
+  gtk3,
 }:
 
 buildDotnetModule rec {
@@ -43,7 +44,7 @@ buildDotnetModule rec {
     "HangoverAvalonia/HangoverAvalonia.csproj"
   ];
 
-  nativeBuildInputs = [ wrapGAppsHook ];
+  nativeBuildInputs = [ wrapGAppsHook3 ];
 
   runtimeDeps = [
     # For Avalonia UI
@@ -61,10 +62,10 @@ buildDotnetModule rec {
   ];
 
   postInstall = ''
-    install -Dm644 LoadByOS/LinuxConfigApp/libation_glass.svg $out/share/icons/hicolor/scalable/apps/${pname}.svg
-    install -Dm644 LoadByOS/LinuxConfigApp/Libation.desktop $out/share/applications/${pname}.desktop
-    substituteInPlace $out/share/applications/${pname}.desktop \
-        --replace "/usr/bin/libation" "${meta.mainProgram}"
+    install -Dm644 LoadByOS/LinuxConfigApp/libation_glass.svg $out/share/icons/hicolor/scalable/apps/libation.svg
+    install -Dm644 LoadByOS/LinuxConfigApp/Libation.desktop $out/share/applications/libation.desktop
+    substituteInPlace $out/share/applications/libation.desktop \
+        --replace-fail "/usr/bin/libation" "${meta.mainProgram}"
   '';
 
   # wrap manually, because we need lower case excutables
diff --git a/pkgs/by-name/li/libewf-legacy/package.nix b/pkgs/by-name/li/libewf-legacy/package.nix
index f6505afdacec..536a28eceebe 100644
--- a/pkgs/by-name/li/libewf-legacy/package.nix
+++ b/pkgs/by-name/li/libewf-legacy/package.nix
@@ -11,11 +11,11 @@
 
 stdenv.mkDerivation (finalAttrs: {
   pname = "libewf-legacy";
-  version = "20140814";
+  version = "20140816";
 
   src = fetchurl {
     url = "https://github.com/libyal/libewf-legacy/releases/download/${finalAttrs.version}/libewf-${finalAttrs.version}.tar.gz";
-    hash = "sha256-OM3QXwnaIDeo66UNjzmu6to53SxgCMn/rE9VTPlX5BQ=";
+    hash = "sha256-ay0Hj7OGFnm6g5Qv6lHp5gKcN+wuoMN/V0QlbW9wJak=";
   };
 
   nativeBuildInputs = [ pkg-config ];
diff --git a/pkgs/by-name/li/libiconv-darwin/meson.build b/pkgs/by-name/li/libiconv-darwin/meson.build
new file mode 100644
index 000000000000..99adeb7fe084
--- /dev/null
+++ b/pkgs/by-name/li/libiconv-darwin/meson.build
@@ -0,0 +1,303 @@
+# Build settings based on the upstream Xcode project.
+# See: https://github.com/apple-oss-distributions/libiconv/blob/main/libiconv.xcodeproj/project.pbxproj
+
+# Project settings
+project('libiconv', 'c', version : '@version@')
+
+fs = import('fs')
+
+
+# Dependencies
+cc = meson.get_compiler('c')
+
+
+# Definitions
+prefix_libdir = get_option('prefix') / get_option('libdir')
+prefix_datadir = get_option('prefix') / get_option('datadir')
+
+i18nmoduledir = prefix_libdir / 'i18n'
+esdbdir = prefix_datadir / 'i18n/esdb'
+csmapperdir = prefix_datadir / 'i18n/csmapper'
+
+
+# Libraries
+libcharset = library(
+    'charset',
+    darwin_versions : '1',
+    install : true,
+    include_directories : ['libcharset'],
+    sources : [
+        'libcharset/libcharset.c'
+    ],
+    soversion : '1'
+)
+install_headers(
+    'libcharset/libcharset.h',
+    'libcharset/localcharset.h'
+)
+
+libiconv = library(
+    'iconv',
+    build_rpath : fs.parent(libcharset.full_path()),
+    c_args : [
+        f'-D_PATH_I18NMODULE="@i18nmoduledir@"',
+        f'-D_PATH_ESDB="@esdbdir@"',
+        f'-D_PATH_CSMAPPER="@csmapperdir@"'
+    ],
+    darwin_versions : '7',
+    install : true,
+    include_directories : ['citrus', 'libcharset'],
+    link_args : ['-Wl,-reexport_library', fs.name(libcharset.full_path())],
+    link_depends : [libcharset],
+    override_options : {'b_asneeded' : false}, # Make sure the libcharset reexport is not stripped
+    sources : [
+        'citrus/__iconv_get_list.c',
+        'citrus/__iconv_free_list.c',
+        'citrus/__iconv.c',
+        'citrus/bsd_iconv.c',
+        'citrus/citrus_bcs_strtol.c',
+        'citrus/citrus_bcs_strtoul.c',
+        'citrus/citrus_bcs.c',
+        'citrus/citrus_csmapper.c',
+        'citrus/citrus_db.c',
+        'citrus/citrus_db_factory.c',
+        'citrus/citrus_db_hash.c',
+        'citrus/citrus_esdb.c',
+        'citrus/citrus_hash.c',
+        'citrus/citrus_iconv.c',
+        'citrus/citrus_lookup_factory.c',
+        'citrus/citrus_lookup.c',
+        'citrus/citrus_mapper.c',
+        'citrus/citrus_memstream.c',
+        'citrus/citrus_mmap.c',
+        'citrus/citrus_module.c',
+        'citrus/citrus_none.c',
+        'citrus/citrus_pivot_factory.c',
+        'citrus/citrus_prop.c',
+        'citrus/citrus_stdenc.c',
+        'citrus/iconv_canonicalize.c',
+        'citrus/iconv_close.c',
+        'citrus/iconv_compat.c',
+        'citrus/iconv_open_into.c',
+        'citrus/iconv_open.c',
+        'citrus/iconv_set_relocation_prefix.c',
+        'citrus/iconvctl.c',
+        'citrus/iconvlist.c',
+        'citrus/iconv.c',
+    ],
+    soversion : '2'
+)
+install_headers(
+    'citrus/iconv.h'
+)
+install_man(
+    'citrus/__iconv_get_list.3',
+    'citrus/iconv_canonicalize.3',
+    'citrus/iconv.3',
+    'citrus/iconvctl.3',
+    'citrus/iconvlist.3',
+)
+
+
+# Binaries
+executable(
+    'iconv',
+    install : true,
+    include_directories : ['citrus', 'libcharset'],
+    link_with : [libiconv],
+    sources : [
+        'iconv/iconv.c'
+    ]
+)
+install_man('iconv/iconv.1')
+
+
+# Data
+## csmapper
+csmapper_modules = [
+    'APPLE',
+    'AST',
+    'BIG5',
+    'CNS',
+    'CP',
+    'EBCDIC',
+    'GB',
+    'GEORGIAN',
+    'ISO-8859',
+    'ISO646',
+    'JIS',
+    'KAZAKH',
+    'KOI',
+    'KS',
+    'MISC',
+    'TCVN'
+]
+
+foreach module : csmapper_modules
+    mps_files = run_command(
+        'find', 'i18n/csmapper' / module, '-regex', '.*\\.\\(mps\\|646\\)',
+        check : true
+    ).stdout().strip().split('\n')
+    install_data(mps_files, install_dir : csmapperdir / module)
+endforeach
+
+install_data(
+    'i18n/csmapper/charset.pivot',
+    'i18n/csmapper/charset.pivot.pvdb',
+    'i18n/csmapper/mapper.dir',
+    'i18n/csmapper/mapper.dir.db',
+    install_dir : csmapperdir
+)
+
+## esdb
+esdb_modules = [
+    'APPLE',
+    'AST',
+    'BIG5',
+    'CP',
+    'DEC',
+    'EBCDIC',
+    'EUC',
+    'GB',
+    'GEORGIAN',
+    'ISO-2022',
+    'ISO-8859',
+    'ISO646',
+    'KAZAKH',
+    'KOI',
+    'MISC',
+    'TCVN',
+    'UTF'
+]
+
+foreach module : esdb_modules
+    esdb_files = run_command(
+        'find', 'i18n/esdb' / module, '-name', '*.esdb',
+        check : true
+    ).stdout().strip().split('\n')
+    install_data(esdb_files, install_dir : esdbdir / module)
+endforeach
+
+install_data(
+    'i18n/esdb/esdb.alias',
+    'i18n/esdb/esdb.alias.db',
+    'i18n/esdb/esdb.dir',
+    'i18n/esdb/esdb.dir.db',
+    install_dir : esdbdir
+)
+
+
+# Modules
+libiconv_modules = [
+    'BIG5',
+    'DECHanyu',
+    'DECKanji',
+    'EUC',
+    'EUCTW',
+    'GBK2K',
+    'HZ',
+    'ISO2022',
+    'JOHAB',
+    'MSKanji',
+    'UES',
+    'UTF1632',
+    'UTF7',
+    'UTF8',
+    'UTF8MAC',
+    'VIQR',
+    'ZW',
+    'iconv_none',
+    'iconv_std',
+    'mapper_646',
+    'mapper_none',
+    'mapper_serial',
+    'mapper_parallel',
+    'mapper_std',
+    'mapper_zone'
+]
+
+foreach module : libiconv_modules
+    module_source = module.to_lower()
+    module_path = 'libiconv_modules' / module
+
+    if module == 'UTF8MAC'
+        extra_headers = 'libiconv_modules/UTF8'
+    else
+        extra_headers = [ ]
+    endif
+
+    # Upstream builds this module under both names.
+    # See: https://github.com/apple-oss-distributions/libiconv/blob/81be60a93521c931a01aab9c747dd2b078bc0679/libiconv.xcodeproj/project.pbxproj#L2549-L2556
+    # See also: https://cgit.freebsd.org/src/tree/lib/libiconv_modules/mapper_parallel/Makefile?id=9241ebc796c11cf133c550f188f324bd2c12d89a
+    if module == 'mapper_parallel'
+        module_source = 'mapper_serial'
+        module_path = 'libiconv_modules/mapper_serial'
+    endif
+
+    library(
+        module,
+        darwin_versions : '1',
+        install : true,
+        install_dir : i18nmoduledir,
+        include_directories : [module_path, 'citrus', 'libcharset'] + extra_headers,
+        link_with : [libiconv],
+        override_options : {'b_asneeded' : false}, # Upstream always links libiconv
+        sources : [
+            module_path / f'citrus_@module_source@.c'
+        ]
+    )
+endforeach
+
+
+# Tests
+if get_option('tests') == true
+## Only required for running the tests
+    atf = dependency('atf-c')
+    foreach suite : ['libiconv_test', 'mbopt_test', 'nixpkgs_test']
+        test_src = f'tests/libiconv/@suite@.c'
+        test_exe = executable(
+            suite,
+            dependencies : [atf],
+            include_directories : ['citrus', 'libcharset'],
+            link_with : [libiconv],
+            sources : [test_src]
+        )
+
+        # Extract the tests to run from the test source code.
+        tests = run_command(
+            'sed', '-n', '-E', 's|.*ATF_TP_ADD_TC\\([^,]*, ([^)]*).*$|\\1|p', test_src,
+            check : true
+        ).stdout().strip().split('\n')
+
+        foreach test : tests
+            test(test, test_exe, args : [test], suite : suite, timeout : 300)
+        endforeach
+    endforeach
+
+# These tests depend on `os_variant_has_internal_content`, which is stubbed out.
+#     atf_sh = find_program('atf-sh')
+#     print_charset = executable(
+#         'print_charset',
+#         include_directories : ['citrus', 'libcharset'],
+#         link_with : [libiconv],
+#         sources : 'tests/libcharset/print_charset.c'
+#     )
+#
+#     test_charset = custom_target(
+#         'test_charset.sh',
+#         command : ['cp', '@INPUT@', '@OUTPUT@'],
+#         depends : print_charset,
+#         input : 'tests/libcharset/test_charset.sh',
+#         output : 'test_charset.sh'
+#     )
+#
+#     # Extract the tests to run from the test source code.
+#     tests = run_command(
+#         'sed', '-n', '-E', 's|.*atf_add_test_case (.*$)|\\1|p', 'tests/libcharset/test_charset.sh',
+#         check : true
+#     ).stdout().strip().split('\n')
+#
+#     foreach test : tests
+#         test(test, atf_sh, args : [test_charset, test], suite : 'libcharset', timeout : 300)
+#     endforeach
+endif
diff --git a/pkgs/by-name/li/libiconv-darwin/meson.options b/pkgs/by-name/li/libiconv-darwin/meson.options
new file mode 100644
index 000000000000..c75832a377a5
--- /dev/null
+++ b/pkgs/by-name/li/libiconv-darwin/meson.options
@@ -0,0 +1 @@
+option('tests', type : 'boolean')
diff --git a/pkgs/by-name/li/libiconv-darwin/nixpkgs_test.c b/pkgs/by-name/li/libiconv-darwin/nixpkgs_test.c
new file mode 100644
index 000000000000..40400ef83283
--- /dev/null
+++ b/pkgs/by-name/li/libiconv-darwin/nixpkgs_test.c
@@ -0,0 +1,82 @@
+#include <atf-c.h>
+#include <iconv.h>
+#include <stdint.h>
+
+// The following tests were failing in libarchive due to libiconv issues.
+//   218: test_read_format_cab_filename (4 failures)
+//   415: test_read_format_zip_filename_CP932_eucJP (4 failures)
+//   426: test_read_format_zip_filename_CP932_CP932 (2 failures)
+
+ATF_TC(test_cp932_eucjp);
+ATF_TC_HEAD(test_cp932_eucjp, tc)
+{
+    atf_tc_set_md_var(tc, "descr", "regression test for CP932 to EUC-JP conversion");
+}
+ATF_TC_BODY(test_cp932_eucjp, tc)
+{
+    char expected[] = "\xc9\xbd\xa4\xc0\xa4\xe8\x5c\xb4\xc1\xbb\xfa\x2e\x74\x78\x74";
+    size_t expected_length = sizeof(expected) - 1;
+
+    char input[] = "\x95\x5c\x82\xbe\x82\xe6\x5c\x8a\xbf\x8e\x9a\x2e\x74\x78\x74";
+    size_t input_length = sizeof(input) - 1;
+
+    size_t output_available = sizeof(expected) - 1 ;
+    char output[sizeof(expected)] = { 0 };
+
+    iconv_t cd = iconv_open("eucJP", "CP932");
+    ATF_REQUIRE((size_t)cd != -1);
+
+    char* input_buf = input;
+    char* output_buf = output;
+
+    size_t res = iconv(cd, &input_buf, &input_length, &output_buf, &output_available);
+    iconv_close(cd);
+
+    ATF_CHECK(res != -1);
+
+    size_t output_length = sizeof(output) - output_available - 1;
+
+    ATF_CHECK_INTEQ(expected_length, output_length);
+    ATF_CHECK_STREQ(expected, output);
+}
+
+ATF_TC(test_cp932_cp932);
+ATF_TC_HEAD(test_cp932_cp932, tc)
+{
+    atf_tc_set_md_var(tc, "descr", "regression test for CP932 to CP932 conversion");
+}
+ATF_TC_BODY(test_cp932_cp932, tc)
+{
+    char expected[] = "\x95\x5c\x82\xbe\x82\xe6\x5c\x8a\xbf\x8e\x9a\x2e\x74\x78\x74";
+    size_t expected_length = sizeof(expected) - 1;
+
+    char input[] = "\x95\x5c\x82\xbe\x82\xe6\x5c\x8a\xbf\x8e\x9a\x2e\x74\x78\x74";
+    size_t input_length = sizeof(input) - 1;
+
+    size_t output_available = sizeof(expected) - 1 ;
+    char output[sizeof(expected)] = { 0 };
+
+    iconv_t cd = iconv_open("CP932", "CP932");
+    ATF_REQUIRE((size_t)cd != -1);
+
+    char* input_buf = input;
+    char* output_buf = output;
+
+    size_t res = iconv(cd, &input_buf, &input_length, &output_buf, &output_available);
+    iconv_close(cd);
+
+    ATF_CHECK(res != -1);
+
+    size_t output_length = sizeof(output) - output_available - 1;
+
+    ATF_CHECK_INTEQ(expected_length, output_length);
+    ATF_CHECK_STREQ(expected, output);
+}
+
+ATF_TP_ADD_TCS(tp)
+{
+    ATF_TP_ADD_TC(tp, test_cp932_eucjp);
+    ATF_TP_ADD_TC(tp, test_cp932_cp932);
+
+    return atf_no_error();
+}
diff --git a/pkgs/by-name/li/libiconv-darwin/package.nix b/pkgs/by-name/li/libiconv-darwin/package.nix
new file mode 100644
index 000000000000..bb5291831b65
--- /dev/null
+++ b/pkgs/by-name/li/libiconv-darwin/package.nix
@@ -0,0 +1,95 @@
+{
+  lib,
+  stdenv,
+  fetchFromGitHub,
+  fetchpatch,
+  atf,
+  libiconvReal,
+  meson,
+  ninja,
+  pkg-config,
+  gitUpdater,
+}:
+
+stdenv.mkDerivation (finalAttrs: {
+  pname = "libiconv";
+  version = "99";
+
+  outputs = [
+    "out"
+    "dev"
+  ];
+
+  src = fetchFromGitHub {
+    owner = "apple-oss-distributions";
+    repo = "libiconv";
+    rev = "libiconv-${finalAttrs.version}";
+    hash = "sha256-TGt6rsU52ztfW2rCqwnhMAExLbexI/59IoDOGY+XGu0=";
+  };
+
+  inherit (libiconvReal) setupHooks;
+
+  postPatch =
+    ''
+      substitute ${./meson.build} meson.build --subst-var version
+      cp ${./meson.options} meson.options
+
+      # Work around unnecessary private API usage in libcharset
+      mkdir -p libcharset/os && cat <<-header > libcharset/os/variant_private.h
+        #pragma once
+        #include <stdbool.h>
+        static inline bool os_variant_has_internal_content(const char*) { return false; }
+      header
+
+      cp ${./nixpkgs_test.c} tests/libiconv/nixpkgs_test.c
+    '';
+
+  strictDeps = true;
+
+  nativeBuildInputs = [
+    meson
+    ninja
+  ];
+
+  mesonBuildType = "release";
+
+  mesonFlags = [ (lib.mesonBool "tests" finalAttrs.doInstallCheck) ];
+
+  postInstall = lib.optionalString stdenv.isDarwin ''
+    ${stdenv.cc.targetPrefix}install_name_tool "$out/lib/libiconv.2.dylib" \
+      -change '@rpath/libcharset.1.dylib' "$out/lib/libcharset.1.dylib"
+  '';
+
+  # Tests have to be run in `installCheckPhase` because libiconv expects to `dlopen`
+  # modules from `$out/lib/i18n`.
+  nativeInstallCheckInputs = [ pkg-config ];
+  installCheckInputs = [ atf ];
+
+  doInstallCheck = stdenv.buildPlatform.canExecute stdenv.hostPlatform;
+
+  # Can’t use `mesonCheckPhase` because it runs the wrong hooks for `installCheckPhase`.
+  installCheckPhase = ''
+    runHook preInstallCheck
+    meson test --no-rebuild
+    runHook postInstallCheck
+  '';
+
+  passthru.updateScript = gitUpdater { rev-prefix = "libiconv-"; };
+
+  __structuredAttrs = true;
+
+  meta = {
+    description = "An iconv(3) implementation";
+    homepage = "https://opensource.apple.com/releases/";
+    license =
+      with lib.licenses;
+      [
+        bsd2
+        bsd3
+      ]
+      ++ lib.optional finalAttrs.doInstallCheck apsl10;
+    mainProgram = "iconv";
+    maintainers = with lib.maintainers; [ reckenrode ];
+    platforms = lib.platforms.darwin;
+  };
+})
diff --git a/pkgs/by-name/li/libmamba/package.nix b/pkgs/by-name/li/libmamba/package.nix
index 2c31119e2bfa..af87959a2e5f 100644
--- a/pkgs/by-name/li/libmamba/package.nix
+++ b/pkgs/by-name/li/libmamba/package.nix
@@ -19,12 +19,12 @@
 }:
 stdenv.mkDerivation rec {
   pname = "libmamba";
-  version = "1.5.7";
+  version = "1.5.8";
   src = fetchFromGitHub {
     owner = "mamba-org";
     repo = "mamba";
     rev = "${pname}-${version}";
-    hash = "sha256-HfmvLi9IBWlaGAn2Ej4Bnm4b3l19jEXwNl5IUkdVxi0=";
+    hash = "sha256-sxZDlMFoMLq2EAzwBVO++xvU1C30JoIoZXEX/sqkXS0=";
   };
   nativeBuildInputs = [
     cmake
diff --git a/pkgs/by-name/li/libmediainfo/package.nix b/pkgs/by-name/li/libmediainfo/package.nix
index c0abeb221ec8..d1a698627483 100644
--- a/pkgs/by-name/li/libmediainfo/package.nix
+++ b/pkgs/by-name/li/libmediainfo/package.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   pname = "libmediainfo";
-  version = "24.03";
+  version = "24.04";
 
   src = fetchurl {
     url = "https://mediaarea.net/download/source/libmediainfo/${version}/libmediainfo_${version}.tar.xz";
-    hash = "sha256-zCu0TkB8iQq1ZpNMVnY5GFBatYwUE0tT8NHanuokLI0=";
+    hash = "sha256-dqb/BgiHdz8ll3tYiuUISEuxLRHLeivjMi2qnG5T8bI=";
   };
 
   nativeBuildInputs = [ autoreconfHook pkg-config ];
diff --git a/pkgs/by-name/li/libmsgraph/package.nix b/pkgs/by-name/li/libmsgraph/package.nix
new file mode 100644
index 000000000000..a3cb929f8041
--- /dev/null
+++ b/pkgs/by-name/li/libmsgraph/package.nix
@@ -0,0 +1,73 @@
+{ stdenv
+, lib
+, fetchurl
+, gi-docgen
+, gobject-introspection
+, meson
+, ninja
+, pkg-config
+, uhttpmock_1_0
+, glib
+, gnome-online-accounts
+, json-glib
+, librest_1_0
+, libsoup_3
+, gnome
+}:
+
+stdenv.mkDerivation (finalAttrs: {
+  pname = "libmsgraph";
+  version = "0.2.1";
+
+  outputs = [ "out" "dev" "devdoc" ];
+
+  src = fetchurl {
+    url = "mirror://gnome/sources/msgraph/${lib.versions.majorMinor finalAttrs.version}/msgraph-${finalAttrs.version}.tar.xz";
+    hash = "sha256-4OWeqorj4KSOwKbC/tBHCFanCSSOkhK2odA33leS7Ls=";
+  };
+
+  nativeBuildInputs = [
+    gi-docgen
+    gobject-introspection
+    meson
+    ninja
+    pkg-config
+  ];
+
+  buildInputs = [
+    uhttpmock_1_0
+  ];
+
+  propagatedBuildInputs = [
+    glib
+    gnome-online-accounts
+    json-glib
+    librest_1_0
+    libsoup_3
+  ];
+
+  mesonFlags = [
+    # https://gitlab.gnome.org/GNOME/msgraph/-/merge_requests/9
+    "-Dc_args=-Wno-error=format-security"
+  ];
+
+  postFixup = ''
+    # Cannot be in postInstall, otherwise _multioutDocs hook in preFixup will move right back.
+    moveToOutput "share/doc/msgraph-0" "$devdoc"
+  '';
+
+  passthru = {
+    updateScript = gnome.updateScript {
+      attrPath = "libmsgraph";
+      packageName = "msgraph";
+    };
+  };
+
+  meta = with lib; {
+    description = "Library to access MS Graph API for Office 365";
+    homepage = "https://gitlab.gnome.org/GNOME/msgraph";
+    license = licenses.lgpl3Plus;
+    maintainers = teams.gnome.members;
+    platforms = platforms.linux;
+  };
+})
diff --git a/pkgs/by-name/li/libsbml/package.nix b/pkgs/by-name/li/libsbml/package.nix
new file mode 100644
index 000000000000..ce895beee006
--- /dev/null
+++ b/pkgs/by-name/li/libsbml/package.nix
@@ -0,0 +1,58 @@
+{
+  lib,
+  stdenv,
+  fetchFromGitHub,
+  fetchpatch,
+  cmake,
+  pkg-config,
+  bzip2,
+  libxml2,
+  swig,
+}:
+stdenv.mkDerivation (attrs: {
+  pname = "libsbml";
+  version = "5.20.2";
+
+  src = fetchFromGitHub {
+    owner = "sbmlteam";
+    repo = "libsbml";
+    rev = "v${attrs.version}";
+    hash = "sha256-8JT2r0zuf61VewtZaOAccaOUmDlQPnllA0fXE9rT5X8=";
+  };
+
+  patches = [
+    # This should be in next release, remember to remove fetchpatch
+    (fetchpatch {
+      name = "fix-xmlerror-conversion.patch";
+      url = "https://github.com/sbmlteam/libsbml/pull/358.patch";
+      hash = "sha256-uirG6XJ+w0hqBUEAGDnzhHoVtJVRdN1eqBYeneKMBao=";
+    })
+  ];
+
+  nativeBuildInputs = [
+    cmake
+    pkg-config
+    swig
+  ];
+
+  buildInputs = [
+    bzip2.dev
+    libxml2
+  ];
+
+  # libSBML doesn't always make use of pkg-config
+  cmakeFlags = [
+    "-DLIBXML_INCLUDE_DIR=${lib.getDev libxml2}/include/libxml2"
+    "-DLIBXML_LIBRARY=${lib.getLib libxml2}/lib/libxml2${stdenv.hostPlatform.extensions.sharedLibrary}"
+    "-DPKG_CONFIG_EXECUTABLE=${lib.getBin pkg-config}/bin/pkg-config"
+    "-DSWIG_EXECUTABLE=${lib.getBin swig}/bin/swig"
+  ];
+
+  meta = with lib; {
+    description = "Library for manipulating Systems Biology Markup Language (SBML)";
+    homepage = "https://github.com/sbmlteam/libsbml";
+    license = licenses.lgpl21Only;
+    maintainers = [maintainers.kupac];
+    platforms = platforms.all;
+  };
+})
diff --git a/pkgs/by-name/li/libui-ng/package.nix b/pkgs/by-name/li/libui-ng/package.nix
index aad482235544..80e0589ac2c1 100644
--- a/pkgs/by-name/li/libui-ng/package.nix
+++ b/pkgs/by-name/li/libui-ng/package.nix
@@ -12,13 +12,13 @@
 
 stdenv.mkDerivation rec {
   pname = "libui-ng";
-  version = "unstable-2024-02-05";
+  version = "4.1-unstable-2024-05-03";
 
   src = fetchFromGitHub {
     owner = "libui-ng";
     repo = "libui-ng";
-    rev = "4d46de31eafad84c88b939356bcd64e6c5ee3821";
-    hash = "sha256-Yb8VdJe75uBzRnsfTOVxUXstZmu6dJ9nBuOrf86KO5s=";
+    rev = "56f1ad65f0f32bb1eb67a268cca4658fbe4567c1";
+    hash = "sha256-wo4iS/a1ErdipFDPYKvaGpO/JGtk6eU/qMLC4eUoHnA=";
   };
 
   postPatch = lib.optionalString (stdenv.isDarwin && stdenv.isx86_64) ''
@@ -47,7 +47,9 @@ stdenv.mkDerivation rec {
     (lib.mesonBool "examples" (!stdenv.isDarwin))
   ];
 
-  passthru.updateScript = unstableGitUpdater { };
+  passthru.updateScript = unstableGitUpdater {
+    tagPrefix = "alpha";
+  };
 
   meta = with lib; {
     description = "A portable GUI library for C";
diff --git a/pkgs/by-name/li/lightningcss/package.nix b/pkgs/by-name/li/lightningcss/package.nix
index 598a6033c37f..7b9c58e087f3 100644
--- a/pkgs/by-name/li/lightningcss/package.nix
+++ b/pkgs/by-name/li/lightningcss/package.nix
@@ -2,6 +2,7 @@
 , stdenv
 , rustPlatform
 , fetchFromGitHub
+, nix-update-script
 }:
 
 rustPlatform.buildRustPackage rec {
@@ -37,6 +38,8 @@ rustPlatform.buildRustPackage rec {
     "--lib"
   ];
 
+  passthru.updateScript = nix-update-script {};
+
   meta = with lib; {
     description = "Extremely fast CSS parser, transformer, and minifier written in Rust";
     homepage = "https://lightningcss.dev/";
diff --git a/pkgs/by-name/li/limine/package.nix b/pkgs/by-name/li/limine/package.nix
index 3a5d77693523..1a004b42f210 100644
--- a/pkgs/by-name/li/limine/package.nix
+++ b/pkgs/by-name/li/limine/package.nix
@@ -12,7 +12,7 @@
 }:
 
 let
-  version = "7.4.1";
+  version = "7.5.1";
 in
 # The output of the derivation is a tool to create bootable images using Limine
 # as bootloader for various platforms and corresponding binary and helper files.
@@ -24,7 +24,7 @@ stdenv.mkDerivation {
   # Packaging that in Nix is very cumbersome.
   src = fetchurl {
     url = "https://github.com/limine-bootloader/limine/releases/download/v${version}/limine-${version}.tar.gz";
-    sha256 = "sha256-0SCy5msjWG9c1UHJka1typCTGh21VzHLfH5pMPMdEH0=";
+    sha256 = "sha256-aWzhUwW4799v0qZDpzzztb2LnfRYwjPXWM2dgpqwYIo=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/by-name/li/litmusctl/package.nix b/pkgs/by-name/li/litmusctl/package.nix
new file mode 100644
index 000000000000..4cdfe6384b5b
--- /dev/null
+++ b/pkgs/by-name/li/litmusctl/package.nix
@@ -0,0 +1,43 @@
+{ buildGoModule
+, fetchFromGitHub
+, installShellFiles
+, kubectl
+, lib
+}:
+
+buildGoModule rec {
+  pname = "litmusctl";
+  version = "1.6.0";
+
+  nativeBuildInputs = [
+    installShellFiles
+  ];
+
+  buildInputs = [
+    kubectl
+  ];
+
+  src = fetchFromGitHub {
+    owner = "litmuschaos";
+    repo = "litmusctl";
+    rev = "${version}";
+    hash = "sha256-aJcnK4VhtqVFaSUf0A40qGb0TBKiqlgkwY2nRdfTl2E=";
+  };
+
+  vendorHash = "sha256-U4dp2E2TZ3rds63PS6GzUVhb2qDSv92bf9JCkWpdLew=";
+
+  postInstall = ''
+    installShellCompletion --cmd litmusctl \
+      --bash <($out/bin/litmusctl completion bash) \
+      --fish <($out/bin/listmusctl completion fish) \
+      --zsh <($out/bin/litmusctl completion zsh)
+  '';
+
+  meta = {
+    description = "Command-Line tool to manage Litmuschaos's agent plane";
+    homepage = "https://github.com/litmuschaos/litmusctl";
+    license = lib.licenses.asl20;
+    mainProgram = "litmusctl";
+    maintainers = with lib.maintainers; [ vinetos sailord ];
+  };
+}
diff --git a/pkgs/by-name/li/live555/package.nix b/pkgs/by-name/li/live555/package.nix
index 2c9f13520eb7..e8fb1309844b 100644
--- a/pkgs/by-name/li/live555/package.nix
+++ b/pkgs/by-name/li/live555/package.nix
@@ -10,7 +10,7 @@
 
 stdenv.mkDerivation (finalAttrs: {
   pname = "live555";
-  version = "2024.04.19";
+  version = "2024.05.05";
 
   src = fetchurl {
     urls = [
@@ -19,7 +19,7 @@ stdenv.mkDerivation (finalAttrs: {
       "https://download.videolan.org/contrib/live555/live.${finalAttrs.version}.tar.gz"
       "mirror://sourceforge/slackbuildsdirectlinks/live.${finalAttrs.version}.tar.gz"
     ];
-    hash = "sha256-5sLr/sZ3LB83CEJx5OUjarx/Dh/ESJ+YaXY0QCAN3MI=";
+    hash = "sha256-jGT1jg5pa4bwIcxUy7/svIhU2HCxx2TNMkWvBfN33nM=";
   };
 
   patches = [
diff --git a/pkgs/by-name/li/livi/package.nix b/pkgs/by-name/li/livi/package.nix
index 92c7edee95eb..b36f08497a61 100644
--- a/pkgs/by-name/li/livi/package.nix
+++ b/pkgs/by-name/li/livi/package.nix
@@ -15,14 +15,14 @@
 
 stdenv.mkDerivation rec {
   pname = "livi";
-  version = "0.0.6";
+  version = "0.1.0";
 
   src = fetchFromGitLab {
     owner = "guidog";
     repo = "livi";
     domain = "gitlab.gnome.org";
     rev = "v${version}";
-    sha256 = "sha256-DaIbBCJT4Da5noW6Q5z1yzTZ256HNqrvdXgwSY7p/D8=";
+    sha256 = "sha256-FJ43BDRsZUFuRrNFWuEJ/nSO+suWad2QvqhwzuXWBtY=";
   };
   nativeBuildInputs = [
     meson
diff --git a/pkgs/by-name/ll/llama-cpp/package.nix b/pkgs/by-name/ll/llama-cpp/package.nix
index 8e1e0efd842b..0800cb2eaa2e 100644
--- a/pkgs/by-name/ll/llama-cpp/package.nix
+++ b/pkgs/by-name/ll/llama-cpp/package.nix
@@ -72,13 +72,13 @@ let
 in
 effectiveStdenv.mkDerivation (finalAttrs: {
   pname = "llama-cpp";
-  version = "2746";
+  version = "2901";
 
   src = fetchFromGitHub {
     owner = "ggerganov";
     repo = "llama.cpp";
     rev = "refs/tags/b${finalAttrs.version}";
-    hash = "sha256-KrIeZEq6RAz3N47wgtQjlfNzoGcTh3DqOhYBOxJPGzs=";
+    hash = "sha256-bsPqSvJ9/iXE/wu+8kHikt1YPxX5XC+WsPbXTuSlsAo=";
     leaveDotGit = true;
     postFetch = ''
       git -C "$out" rev-parse --short HEAD > $out/COMMIT
diff --git a/pkgs/by-name/lm/lms/package.nix b/pkgs/by-name/lm/lms/package.nix
new file mode 100644
index 000000000000..778414a5db32
--- /dev/null
+++ b/pkgs/by-name/lm/lms/package.nix
@@ -0,0 +1,86 @@
+{
+  lib,
+  stdenv,
+  fetchFromGitHub,
+  makeWrapper,
+  cmake,
+  pkg-config,
+  gtest,
+  boost,
+  wt,
+  taglib,
+  libconfig,
+  libarchive,
+  graphicsmagick,
+  ffmpeg,
+  zlib,
+  libSM,
+  libICE,
+}:
+
+stdenv.mkDerivation rec {
+  pname = "lms";
+  version = "3.51.1";
+  src = fetchFromGitHub {
+    owner = "epoupon";
+    repo = "lms";
+    rev = "v${version}";
+    hash = "sha256-5lEbrB218EVVHIzo1efvQYybut2OpfDKpLlRs0brhXg=";
+  };
+
+  strictDeps = true;
+  nativeBuildInputs = [
+    cmake
+    pkg-config
+    makeWrapper
+  ];
+  buildInputs = [
+    gtest
+    boost
+    wt
+    taglib
+    libconfig
+    libarchive
+    graphicsmagick
+    ffmpeg
+    zlib
+    libSM
+    libICE
+  ];
+
+  postPatch = ''
+    substituteInPlace src/lms/main.cpp --replace-fail "/etc/lms.conf" "$out/share/lms/lms.conf"
+    substituteInPlace src/tools/recommendation/LmsRecommendation.cpp --replace-fail "/etc/lms.conf" "$out/share/lms/lms.conf"
+    substituteInPlace src/tools/db-generator/LmsDbGenerator.cpp --replace-fail "/etc/lms.conf" "$out/share/lms/lms.conf"
+    substituteInPlace src/tools/cover/LmsCover.cpp --replace-fail "/etc/lms.conf" "$out/share/lms/lms.conf"
+  '';
+
+  cmakeFlags = [ "-DCMAKE_BUILD_TYPE=Release" ];
+
+  postInstall = ''
+    substituteInPlace $out/share/lms/lms.conf --replace-fail "/usr/bin/ffmpeg" "${ffmpeg}/bin/ffmpeg"
+    substituteInPlace $out/share/lms/lms.conf --replace-fail "/usr/share/Wt/resources" "${wt}/share/Wt/resources"
+    substituteInPlace $out/share/lms/lms.conf --replace-fail "/usr/share/lms/docroot" "$out/share/lms/docroot"
+    substituteInPlace $out/share/lms/lms.conf --replace-fail "/usr/share/lms/approot" "$out/share/lms/approot"
+    substituteInPlace $out/share/lms/default.service --replace-fail "/usr/bin/lms" "$out/bin/lms"
+    install -Dm444 $out/share/lms/default.service -T $out/lib/systemd/system/lmsd.service
+  '';
+
+  preFixup = ''
+    wrapProgram $out/bin/lms \
+      --prefix LD_LIBRARY_PATH : "${lib.strings.makeLibraryPath [libSM libICE]}"
+    wrapProgram $out/bin/lms-metadata \
+      --prefix LD_LIBRARY_PATH : "${lib.strings.makeLibraryPath [libSM libICE]}"
+    wrapProgram $out/bin/lms-recommendation \
+      --prefix LD_LIBRARY_PATH : "${lib.strings.makeLibraryPath [libSM libICE]}"
+  '';
+
+  meta = with lib; {
+    homepage = "https://github.com/epoupon/lms";
+    description = "Lightweight Music Server - Access your self-hosted music using a web interface";
+    license = licenses.gpl3Plus;
+    platforms = platforms.linux;
+    mainProgram = "lms";
+    maintainers = with maintainers; [ mksafavi ];
+  };
+}
diff --git a/pkgs/by-name/lm/lmstudio/darwin.nix b/pkgs/by-name/lm/lmstudio/darwin.nix
new file mode 100644
index 000000000000..5fa30e699db4
--- /dev/null
+++ b/pkgs/by-name/lm/lmstudio/darwin.nix
@@ -0,0 +1,28 @@
+{ stdenv
+, fetchurl
+, undmg
+, lib
+, meta
+, pname
+, version
+}:
+stdenv.mkDerivation {
+  inherit meta pname version;
+
+  src = fetchurl {
+    url = "https://releases.lmstudio.ai/mac/arm64/${version}/b/latest/LM-Studio-${version}-arm64.dmg";
+    hash = "sha256-kb1XoTZjhCL1+CsV+r3/EN0srzIJ43H2VMZ779dVq1k=";
+  };
+
+  nativeBuildInputs = [ undmg ];
+
+  sourceRoot = ".";
+
+  installPhase = ''
+    runHook preInstall
+    mkdir -p $out/Applications
+    cp -r *.app $out/Applications
+    runHook postInstall
+  '';
+}
+
diff --git a/pkgs/by-name/lm/lmstudio/linux.nix b/pkgs/by-name/lm/lmstudio/linux.nix
new file mode 100644
index 000000000000..add6274d36d4
--- /dev/null
+++ b/pkgs/by-name/lm/lmstudio/linux.nix
@@ -0,0 +1,29 @@
+{ lib
+, appimageTools
+, fetchurl
+, version
+, pname
+, meta
+}:
+let
+  src = fetchurl {
+    url = "https://releases.lmstudio.ai/linux/${version}/beta/LM_Studio-${version}.AppImage";
+    hash = "sha256-hcV8wDhulFAxHDBDKicpEGovwcsn9RaIi/idUz+YzD8=";
+  };
+
+  appimageContents = appimageTools.extractType2 { inherit pname version src; };
+in
+appimageTools.wrapType2 {
+  inherit meta pname version src;
+
+  extraPkgs = pkgs: [ pkgs.ocl-icd ];
+
+  extraInstallCommands = ''
+    mkdir -p $out/share/applications
+    cp -r ${appimageContents}/usr/share/icons $out/share
+    install -m 444 -D ${appimageContents}/lm-studio.desktop -t $out/share/applications
+    substituteInPlace $out/share/applications/lm-studio.desktop \
+      --replace-fail 'Exec=AppRun --no-sandbox %U' 'Exec=lmstudio'
+  '';
+}
+
diff --git a/pkgs/by-name/lm/lmstudio/package.nix b/pkgs/by-name/lm/lmstudio/package.nix
index f9325e5b800d..d18c76acefd7 100644
--- a/pkgs/by-name/lm/lmstudio/package.nix
+++ b/pkgs/by-name/lm/lmstudio/package.nix
@@ -1,38 +1,22 @@
 { lib
-, appimageTools
-, fetchurl
+, stdenv
+, callPackage
+, ...
 }:
-
 let
   pname = "lmstudio";
-  version = "0.2.20";
-  src = fetchurl {
-    url = "https://releases.lmstudio.ai/linux/${version}/beta/LM_Studio-${version}.AppImage";
-    hash = "sha256-T92ZDqGvxJfBkAWsK8EgHdQZnLefK3gDP2vCTL8X+eM=";
-  };
-
-  appimageContents = appimageTools.extractType2 { inherit pname version src; };
-in
-appimageTools.wrapType2 {
-  inherit pname version src;
-
-  extraPkgs = pkgs: (appimageTools.defaultFhsEnvArgs.multiPkgs pkgs) ++ [ pkgs.ocl-icd ];
-
-  extraInstallCommands = ''
-    mkdir -p $out/share/applications
-    cp -r ${appimageContents}/usr/share/icons $out/share
-    install -m 444 -D ${appimageContents}/lm-studio.desktop -t $out/share/applications
-    substituteInPlace $out/share/applications/lm-studio.desktop \
-      --replace-fail 'Exec=AppRun --no-sandbox %U' 'Exec=lmstudio'
-  '';
-
+  version = "0.2.22";
   meta = {
     description = "LM Studio is an easy to use desktop app for experimenting with local and open-source Large Language Models (LLMs)";
     homepage = "https://lmstudio.ai/";
     license = lib.licenses.unfree;
     mainProgram = "lmstudio";
-    maintainers = with lib.maintainers; [ drupol ];
-    platforms = lib.platforms.linux;
+    maintainers = with lib.maintainers; [ drupol eeedean ];
+    platforms = lib.platforms.linux ++ [ "aarch64-darwin" ];
     sourceProvenance = with lib.sourceTypes; [ binaryNativeCode ];
   };
-}
+in
+  if stdenv.isDarwin
+    then callPackage ./darwin.nix { inherit pname version meta; }
+    else callPackage ./linux.nix  { inherit pname version meta; }
+
diff --git a/pkgs/by-name/lo/local-ai/module.nix b/pkgs/by-name/lo/local-ai/module.nix
index d7b70048121f..70f486b43b1a 100644
--- a/pkgs/by-name/lo/local-ai/module.nix
+++ b/pkgs/by-name/lo/local-ai/module.nix
@@ -28,25 +28,33 @@ in
       type = types.either types.package types.str;
       default = "models";
     };
+
+    parallelRequests = mkOption {
+      type = types.int;
+      default = 1;
+    };
+
+    logLevel = mkOption {
+      type = types.enum [ "error" "warn" "info" "debug" "trace" ];
+      default = "warn";
+    };
   };
 
   config = lib.mkIf cfg.enable {
     systemd.services.local-ai = {
       wantedBy = [ "multi-user.target" ];
+      environment.LLAMACPP_PARALLEL = toString cfg.parallelRequests;
       serviceConfig = {
         DynamicUser = true;
         ExecStart = lib.escapeShellArgs ([
           "${cfg.package}/bin/local-ai"
-          "--debug"
-          "--address"
-          ":${toString cfg.port}"
-          "--threads"
-          (toString cfg.threads)
-          "--localai-config-dir"
-          "."
-          "--models-path"
-          (toString cfg.models)
+          "--address=:${toString cfg.port}"
+          "--threads=${toString cfg.threads}"
+          "--localai-config-dir=."
+          "--models-path=${cfg.models}"
+          "--log-level=${cfg.logLevel}"
         ]
+        ++ lib.optional (cfg.parallelRequests > 1) "--parallel-requests"
         ++ cfg.extraArgs);
         RuntimeDirectory = "local-ai";
         WorkingDirectory = "%t/local-ai";
diff --git a/pkgs/by-name/lo/local-ai/package.nix b/pkgs/by-name/lo/local-ai/package.nix
index 061122c3f848..5d582f3604a6 100644
--- a/pkgs/by-name/lo/local-ai/package.nix
+++ b/pkgs/by-name/lo/local-ai/package.nix
@@ -3,7 +3,6 @@
 , stdenv
 , lib
 , addDriverRunpath
-, fetchpatch
 , fetchFromGitHub
 , protobuf
 , protoc-gen-go
@@ -100,8 +99,8 @@ let
     src = fetchFromGitHub {
       owner = "ggerganov";
       repo = "llama.cpp";
-      rev = "784e11dea1f5ce9638851b2b0dddb107e2a609c8";
-      hash = "sha256-yAQAUo5J+a6O2kTqhFL1UH0tANxpQn3JhAd3MByaC6I=";
+      rev = "c12452c7aec8a02264afc00196a13caa591a13ac";
+      hash = "sha256-Kji8dlz7OfhPeNXnYgBHzpGGMhCsRLJ9d+EFf77Q6Co=";
       fetchSubmodules = true;
     };
     postPatch = prev.postPatch + ''
@@ -254,8 +253,8 @@ let
     src = fetchFromGitHub {
       owner = "ggerganov";
       repo = "whisper.cpp";
-      rev = "858452d58dba3acdc3431c9bced2bb8cfd9bf418";
-      hash = "sha256-2fT3RgGpBex1mF6GJsVDo4rb0F31YqxTymsXcrpQAZk=";
+      rev = "73d13ad19a8c9c4da4f405088a85169b1a171e66";
+      hash = "sha256-7g/J3a3behGgcJXy9ryAYXxgOYnsRMlGmux13re28AY=";
     };
 
     nativeBuildInputs = [ cmake pkg-config ]
@@ -305,8 +304,8 @@ let
     src = fetchFromGitHub {
       owner = "mudler";
       repo = "go-stable-diffusion";
-      rev = "362df9da29f882dbf09ade61972d16a1f53c3485";
-      hash = "sha256-A5KvMZOviPsIpPHxM8cacT+qE2x1iFJAbPsRs4sLijY=";
+      rev = "4a3cd6aeae6f66ee57eae9a0075f8c58c3a6a38f";
+      hash = "sha256-KXUvMP6cDyWib4rG0RmVRm3pgrdsfKXaH3k0v5/mTe8=";
       fetchSubmodules = true;
     };
     buildFlags = [ "libstablediffusion.a" ];
@@ -342,8 +341,8 @@ let
     src = fetchFromGitHub {
       owner = "M0Rf30";
       repo = "go-tiny-dream";
-      rev = "22a12a4bc0ac5455856f28f3b771331a551a4293";
-      hash = "sha256-DAVHD6E0OKHf4C2ldoI0Mm7813DIrmWFONUhSCQPCfc=";
+      rev = "c04fa463ace9d9a6464313aa5f9cd0f953b6c057";
+      hash = "sha256-uow3vbAI4F/fTGjYOKOLqTpKq7NgGYSZhGlEhn7h6s0=";
       fetchSubmodules = true;
     };
     postUnpack = ''
@@ -373,18 +372,18 @@ let
       stdenv;
 
   pname = "local-ai";
-  version = "2.13.0";
+  version = "2.15.0";
   src = fetchFromGitHub {
     owner = "go-skynet";
     repo = "LocalAI";
     rev = "v${version}";
-    hash = "sha256-jZE8Ow9FFhnx/jvsURLYlYtSuKpE4UWBezxg/mpHs9g=";
+    hash = "sha256-AjNgfZjVxlw0LtPbUTbJuLcUfqJdPzn6vOmUDz/v7Jc=";
   };
 
   self = buildGoModule.override { stdenv = effectiveStdenv; } {
     inherit pname version src;
 
-    vendorHash = "sha256-nWNK2YekQnBSLx4ouNSe6esIe0yFuo69E0HStYLQANg=";
+    vendorHash = "sha256-+ZPZkOpaTsKrL2HDOEtAr8sT6uqTiQXo/XS+MBNZq5E=";
 
     env.NIX_CFLAGS_COMPILE = lib.optionalString with_stablediffusion " -isystem ${opencv}/include/opencv4";
 
@@ -404,11 +403,13 @@ let
           -e 's;git clone.*go-tiny-dream$;${cp} ${if with_tinydream then go-tiny-dream else go-tiny-dream.src} sources/go-tiny-dream;' \
           -e 's, && git checkout.*,,g' \
           -e '/mod download/ d' \
+          -e '/^ALL_GRPC_BACKENDS+=backend-assets\/grpc\/llama-cpp-/ d' \
+      '';
 
-        ${cp} ${llama-cpp-grpc}/bin/*grpc-server backend/cpp/llama/grpc-server
-        echo "grpc-server:" > backend/cpp/llama/Makefile
-      ''
-    ;
+    postConfigure = ''
+      mkdir -p backend-assets/grpc
+      cp ${llama-cpp-grpc}/bin/*grpc-server backend-assets/grpc/llama-cpp
+    '';
 
     buildInputs = [ ]
       ++ lib.optionals with_cublas [ libcublas ]
diff --git a/pkgs/by-name/lo/local-ai/tests.nix b/pkgs/by-name/lo/local-ai/tests.nix
index 7cebc6fff938..5740362f24ef 100644
--- a/pkgs/by-name/lo/local-ai/tests.nix
+++ b/pkgs/by-name/lo/local-ai/tests.nix
@@ -6,6 +6,7 @@
 , writers
 , symlinkJoin
 , jq
+, prom2json
 }:
 let
   common-config = { config, ... }: {
@@ -14,6 +15,7 @@ let
       enable = true;
       package = self;
       threads = config.virtualisation.cores;
+      logLevel = "debug";
     };
   };
 
@@ -26,7 +28,7 @@ in
     command = "local-ai --help";
   };
 
-  health = testers.runNixOSTest ({ config, ... }: {
+  health = testers.runNixOSTest {
     name = self.name + "-health";
     nodes.machine = common-config;
     testScript =
@@ -36,8 +38,11 @@ in
       ''
         machine.wait_for_open_port(${port})
         machine.succeed("curl -f http://localhost:${port}/readyz")
+
+        machine.succeed("${prom2json}/bin/prom2json http://localhost:${port}/metrics > metrics.json")
+        machine.copy_from_vm("metrics.json")
       '';
-  });
+  };
 
   # https://localai.io/features/embeddings/#bert-embeddings
   bert =
@@ -78,8 +83,13 @@ in
           machine.succeed("curl -f http://localhost:${port}/readyz")
           machine.succeed("curl -f http://localhost:${port}/v1/models --output models.json")
           machine.succeed("${jq}/bin/jq --exit-status 'debug | .data[].id == \"${model}\"' models.json")
+
           machine.succeed("curl -f http://localhost:${port}/embeddings --json @${writers.writeJSON "request.json" requests.request} --output embeddings.json")
+          machine.copy_from_vm("embeddings.json")
           machine.succeed("${jq}/bin/jq --exit-status 'debug | .model == \"${model}\"' embeddings.json")
+
+          machine.succeed("${prom2json}/bin/prom2json http://localhost:${port}/metrics > metrics.json")
+          machine.copy_from_vm("metrics.json")
         '';
     };
 
@@ -92,6 +102,7 @@ in
       # https://localai.io/advanced/#full-config-model-file-reference
       model-configs.${model} = rec {
         context_size = 8192;
+        backend = "llama-cpp";
         parameters = {
           # https://huggingface.co/lmstudio-community/Meta-Llama-3-8B-Instruct-GGUF
           # https://ai.meta.com/blog/meta-llama-3/
@@ -157,6 +168,8 @@ in
         virtualisation.cores = 4;
         virtualisation.memorySize = 8192;
         services.local-ai.models = models;
+        # TODO: Add test case parallel requests
+        services.local-ai.parallelRequests = 2;
       };
       passthru = { inherit models requests; };
       testScript =
@@ -170,16 +183,22 @@ in
           machine.succeed("${jq}/bin/jq --exit-status 'debug | .data[].id == \"${model}\"' models.json")
 
           machine.succeed("curl -f http://localhost:${port}/v1/chat/completions --json @${writers.writeJSON "request-chat-completions.json" requests.chat-completions} --output chat-completions.json")
+          machine.copy_from_vm("chat-completions.json")
           machine.succeed("${jq}/bin/jq --exit-status 'debug | .object == \"chat.completion\"' chat-completions.json")
           machine.succeed("${jq}/bin/jq --exit-status 'debug | .choices | first.message.content | tonumber == 3' chat-completions.json")
 
           machine.succeed("curl -f http://localhost:${port}/v1/edits --json @${writers.writeJSON "request-edit-completions.json" requests.edit-completions} --output edit-completions.json")
+          machine.copy_from_vm("edit-completions.json")
           machine.succeed("${jq}/bin/jq --exit-status 'debug | .object == \"edit\"' edit-completions.json")
           machine.succeed("${jq}/bin/jq --exit-status '.usage.completion_tokens | debug == ${toString requests.edit-completions.max_tokens}' edit-completions.json")
 
           machine.succeed("curl -f http://localhost:${port}/v1/completions --json @${writers.writeJSON "request-completions.json" requests.completions} --output completions.json")
+          machine.copy_from_vm("completions.json")
           machine.succeed("${jq}/bin/jq --exit-status 'debug | .object ==\"text_completion\"' completions.json")
           machine.succeed("${jq}/bin/jq --exit-status '.usage.completion_tokens | debug == ${toString model-configs.${model}.parameters.max_tokens}' completions.json")
+
+          machine.succeed("${prom2json}/bin/prom2json http://localhost:${port}/metrics > metrics.json")
+          machine.copy_from_vm("metrics.json")
         '';
     };
 
@@ -240,9 +259,16 @@ in
           machine.succeed("curl -f http://localhost:${port}/readyz")
           machine.succeed("curl -f http://localhost:${port}/v1/models --output models.json")
           machine.succeed("${jq}/bin/jq --exit-status 'debug' models.json")
+
           machine.succeed("curl -f http://localhost:${port}/tts --json @${writers.writeJSON "request.json" requests.request} --output out.wav")
+          machine.copy_from_vm("out.wav")
+
           machine.succeed("curl -f http://localhost:${port}/v1/audio/transcriptions --header 'Content-Type: multipart/form-data' --form file=@out.wav --form model=${model-stt} --output transcription.json")
+          machine.copy_from_vm("transcription.json")
           machine.succeed("${jq}/bin/jq --exit-status 'debug | .segments | first.text == \"${requests.request.input}\"' transcription.json")
+
+          machine.succeed("${prom2json}/bin/prom2json http://localhost:${port}/metrics > metrics.json")
+          machine.copy_from_vm("metrics.json")
         '';
     };
 }
diff --git a/pkgs/by-name/lo/lorem/package.nix b/pkgs/by-name/lo/lorem/package.nix
index d024aeaf614a..05200e2ef690 100644
--- a/pkgs/by-name/lo/lorem/package.nix
+++ b/pkgs/by-name/lo/lorem/package.nix
@@ -14,22 +14,22 @@
 , wrapGAppsHook4
 }:
 
-stdenv.mkDerivation rec {
+stdenv.mkDerivation (finalAttrs: {
   pname = "lorem";
-  version = "1.3";
+  version = "1.4";
 
   src = fetchFromGitLab {
     domain = "gitlab.gnome.org";
     owner = "World/design";
-    repo = pname;
-    rev = version;
-    hash = "sha256-+Dp/o1rZSHWihLLLe6CzV6c7uUnSsE8Ct3tbLNqlGF0=";
+    repo = "lorem";
+    rev = finalAttrs.version;
+    hash = "sha256-6+kDKKK1bkIOZlqzKWpzpjAS5o7bkbVFITMZVmJijuU=";
   };
 
   cargoDeps = rustPlatform.fetchCargoTarball {
-    inherit src;
-    name = "${pname}-${version}";
-    hash = "sha256-YYjPhlPp211i+ECPu1xgDumz8nVqWRO8YzcZXy8uunI=";
+    src = finalAttrs.src;
+    name = "${finalAttrs.pname}-${finalAttrs.version}";
+    hash = "sha256-nzP2Jp9l1QgL7Wk9SWlsSVNaeVe3t48MmeX7Xuz+PKM=";
   };
 
   nativeBuildInputs = [
@@ -50,12 +50,12 @@ stdenv.mkDerivation rec {
   ];
 
   meta = with lib; {
+    changelog = "https://gitlab.gnome.org/World/design/lorem/-/releases/${finalAttrs.version}";
     description = "Generate placeholder text";
-    homepage = "https://gitlab.gnome.org/World/design/lorem";
-    changelog = "https://gitlab.gnome.org/World/design/lorem/-/releases/${version}";
+    homepage = "https://apps.gnome.org/Lorem/";
     license = licenses.gpl3Plus;
-    maintainers = with maintainers; [ michaelgrahamevans ];
     mainProgram = "lorem";
+    maintainers = with maintainers; [ michaelgrahamevans ];
     platforms = platforms.linux;
   };
-}
+})
diff --git a/pkgs/by-name/lo/loupe/package.nix b/pkgs/by-name/lo/loupe/package.nix
index 06820aa28a19..346da941ba2e 100644
--- a/pkgs/by-name/lo/loupe/package.nix
+++ b/pkgs/by-name/lo/loupe/package.nix
@@ -15,17 +15,18 @@
 , lcms2
 , libadwaita
 , libgweather
+, libseccomp
 , glycin-loaders
 , gnome
 }:
 
 stdenv.mkDerivation (finalAttrs: {
   pname = "loupe";
-  version = "45.3";
+  version = "46.2";
 
   src = fetchurl {
     url = "mirror://gnome/sources/loupe/${lib.versions.major finalAttrs.version}/loupe-${finalAttrs.version}.tar.xz";
-    hash = "sha256-9l8tEgjQhatf+pmN1DyS/pUictTVm1HP7MEevf/KLYY=";
+    hash = "sha256-OhWj+c+PiJp+ZC45AimfeSGKkAHAjFY3TgWRT/71qzA=";
   };
 
   patches = [
@@ -51,13 +52,14 @@ stdenv.mkDerivation (finalAttrs: {
     lcms2
     libadwaita
     libgweather
+    libseccomp
   ];
 
   postPatch = ''
     # Replace hash of file we patch in vendored glycin.
     jq \
-      --arg hash "$(sha256sum vendor/glycin/src/dbus.rs | cut -d' ' -f 1)" \
-      '.files."src/dbus.rs" = $hash' \
+      --arg hash "$(sha256sum vendor/glycin/src/sandbox.rs | cut -d' ' -f 1)" \
+      '.files."src/sandbox.rs" = $hash' \
       vendor/glycin/.cargo-checksum.json \
       | sponge vendor/glycin/.cargo-checksum.json
   '';
diff --git a/pkgs/by-name/lo/louvain-community/package.nix b/pkgs/by-name/lo/louvain-community/package.nix
index 857857092353..21ef70400c69 100644
--- a/pkgs/by-name/lo/louvain-community/package.nix
+++ b/pkgs/by-name/lo/louvain-community/package.nix
@@ -7,7 +7,7 @@
 
 stdenv.mkDerivation (finalAttrs: {
   pname = "louvain-community";
-  version = "unstable-2024-01-30";
+  version = "0-unstable-2024-01-30";
 
   src = fetchFromGitHub {
     owner = "meelgroup";
diff --git a/pkgs/by-name/lu/lumafly/deps.nix b/pkgs/by-name/lu/lumafly/deps.nix
new file mode 100644
index 000000000000..7573409bb55e
--- /dev/null
+++ b/pkgs/by-name/lu/lumafly/deps.nix
@@ -0,0 +1,729 @@
+# This file was automatically generated by passthru.fetch-deps.
+# Please dont edit it manually, your changes might get overwritten!
+{fetchNuGet}: [
+  (fetchNuGet {
+    pname = "Avalonia";
+    version = "11.0.4";
+    sha256 = "0jid0x90dc8m609wqwbq87014yzih2iimz74wm6zi1j02k080jk0";
+  })
+  (fetchNuGet {
+    pname = "Avalonia.Angle.Windows.Natives";
+    version = "2.1.0.2023020321";
+    sha256 = "1az4s1g22ipak9a3xfh55z2h3rm6lpqh7svbpw6ag4ysrgsjjsjd";
+  })
+  (fetchNuGet {
+    pname = "Avalonia.AvaloniaEdit";
+    version = "11.0.0";
+    sha256 = "12ibz472083iiz5zskd1ivigggbl0d9yv3nazgw17s97nmnl2lpj";
+  })
+  (fetchNuGet {
+    pname = "Avalonia.BuildServices";
+    version = "0.0.29";
+    sha256 = "05mm7f0jssih3gbzqfgjnfq5cnqa85ihsg0z1897ciihv8qd3waq";
+  })
+  (fetchNuGet {
+    pname = "Avalonia.Controls.ColorPicker";
+    version = "11.0.4";
+    sha256 = "1sqdcaknqazq4mw2x1jb6pfmfnyhpkd4xh6fl4ld85qikzzj7796";
+  })
+  (fetchNuGet {
+    pname = "Avalonia.Controls.DataGrid";
+    version = "11.0.4";
+    sha256 = "10kc1pfyi0jq29xavq059vfjm51igi45yikz7i1ys061zbjs0n62";
+  })
+  (fetchNuGet {
+    pname = "Avalonia.Controls.ItemsRepeater";
+    version = "11.0.4";
+    sha256 = "1p7mz33a6dn6ghvwajxdghq15mn5f6isvvqzxcjbnhh3m5c1zhrz";
+  })
+  (fetchNuGet {
+    pname = "Avalonia.Desktop";
+    version = "11.0.4";
+    sha256 = "101jlqx24d19nk0nd7x19pvbjjybckzgqh9h78c85vb98xbwh3ky";
+  })
+  (fetchNuGet {
+    pname = "Avalonia.Diagnostics";
+    version = "11.0.4";
+    sha256 = "1dxylsvaffzravz64rwq2wjjlr3392i5153nmkqk89ldaq70wjja";
+  })
+  (fetchNuGet {
+    pname = "Avalonia.FreeDesktop";
+    version = "11.0.4";
+    sha256 = "1sbgs6d1b751h0ipq249w7z3aclpfb42sw3f7g31vin9w8wxwa6q";
+  })
+  (fetchNuGet {
+    pname = "Avalonia.HtmlRenderer";
+    version = "11.0.0-rc1.1";
+    sha256 = "0b8idah8s6xi34s3ldvhl0rrph0sdbyvkx4yj3934ghcq1iga79a";
+  })
+  (fetchNuGet {
+    pname = "Avalonia.Native";
+    version = "11.0.4";
+    sha256 = "10fyr63sqb4xyr7rlk94rzjbnb9mbln95mb9papip5kb3sm8jx60";
+  })
+  (fetchNuGet {
+    pname = "Avalonia.ReactiveUI";
+    version = "11.0.4";
+    sha256 = "1hs29qvbhm5qdhys0j3d89c37qfalx1pcpxl3hh9adz11wc0nb3b";
+  })
+  (fetchNuGet {
+    pname = "Avalonia.Remote.Protocol";
+    version = "11.0.4";
+    sha256 = "096436hhg45v02pp4f43mf00xn6blx7x66sb8fq5j4jn7479fynp";
+  })
+  (fetchNuGet {
+    pname = "Avalonia.Skia";
+    version = "11.0.4";
+    sha256 = "1ysmq4f8bxabpq3nhcrrvgwvxb9z7gx9565bvdyksdhsq16wyxym";
+  })
+  (fetchNuGet {
+    pname = "Avalonia.Svg";
+    version = "11.0.0";
+    sha256 = "1xmgaj2wnjdl16x4y6rmfp3q9faca5na90zlb8j62rxcwf1v3lkr";
+  })
+  (fetchNuGet {
+    pname = "Avalonia.Themes.Fluent";
+    version = "11.0.4";
+    sha256 = "03zdixi6m9g4mcxmp24z8dzamzqqy9i0wg069m4gl5p3wcvfbqla";
+  })
+  (fetchNuGet {
+    pname = "Avalonia.Themes.Simple";
+    version = "11.0.4";
+    sha256 = "1rncb8ifqarjc5gfh6ld0ldahvxy57a2hzi7vs826an4zl3r0yrx";
+  })
+  (fetchNuGet {
+    pname = "Avalonia.Win32";
+    version = "11.0.4";
+    sha256 = "07ijkpbhz59gvsxsik8mib8rhpm5yrpnjz66sjnxl8m0ghqnkf02";
+  })
+  (fetchNuGet {
+    pname = "Avalonia.X11";
+    version = "11.0.4";
+    sha256 = "0xq6xqd3cwwdcqsipvrs4rpf82nqhr45ispwjj4dxlyn4i1n8ryd";
+  })
+  (fetchNuGet {
+    pname = "ColorTextBlock.Avalonia";
+    version = "11.0.1";
+    sha256 = "0mkqh9hzr3z40wxhp0xy569cb4sq6lvq49f51n0kbdyvfnvbsipy";
+  })
+  (fetchNuGet {
+    pname = "Deadpikle.AvaloniaProgressRing";
+    version = "0.10.1";
+    sha256 = "1zk7ylw4iwl1rbnipq8djcrzwmgbsdwa6di00ml7drdpnrvzf600";
+  })
+  (fetchNuGet {
+    pname = "DialogHost.Avalonia";
+    version = "0.7.6";
+    sha256 = "1byzs1fqz4nhn2ljhyxpifhvdkpyg7k4xfjcb1h3pf0hr4y9fgf6";
+  })
+  (fetchNuGet {
+    pname = "DynamicData";
+    version = "7.9.5";
+    sha256 = "1m9qx8g6na5ka6kd9vhg8gjmxrnkzb6v5cl5yqp1kdjsw4rcwy6x";
+  })
+  (fetchNuGet {
+    pname = "ExCSS";
+    version = "4.1.4";
+    sha256 = "1y50xp6rihkydbf5l73mr3qq2rm6rdfjrzdw9h1dw9my230q5lpd";
+  })
+  (fetchNuGet {
+    pname = "Fizzler";
+    version = "1.2.1";
+    sha256 = "1w5jb1d0figbv68dydbnlcsfmqlc3sv9z1zxp7d79dg2dkarc4qm";
+  })
+  (fetchNuGet {
+    pname = "HarfBuzzSharp";
+    version = "2.8.2.3";
+    sha256 = "115aybicqs9ijjlcv6k6r5v0agkjm1bm1nkd0rj3jglv8s0xvmp2";
+  })
+  (fetchNuGet {
+    pname = "HarfBuzzSharp.NativeAssets.Linux";
+    version = "2.8.2.3";
+    sha256 = "1f18ahwkaginrg0vwsi6s56lvnqvvxv7pzklfs5lnknasxy1a76z";
+  })
+  (fetchNuGet {
+    pname = "HarfBuzzSharp.NativeAssets.macOS";
+    version = "2.8.2.3";
+    sha256 = "052d8frpkj4ijs6fm6xp55xbv95b1s9biqwa0w8zp3rgm88m9236";
+  })
+  (fetchNuGet {
+    pname = "HarfBuzzSharp.NativeAssets.WebAssembly";
+    version = "2.8.2.3";
+    sha256 = "043hv36bg5240znbm8x5la7py17m4jfzy57q3ka32f6zjld83j36";
+  })
+  (fetchNuGet {
+    pname = "HarfBuzzSharp.NativeAssets.Win32";
+    version = "2.8.2.3";
+    sha256 = "08khd2jqm8sw58ljz5srangzfm2sz3gd2q1jzc5fr80lj8rv6r74";
+  })
+  (fetchNuGet {
+    pname = "HPackage.Net";
+    version = "1.0.1";
+    sha256 = "1jm2gaydndpyhywdm4sbbvwzjk3sdd825fw2gxd1s6x6dbppsl3i";
+  })
+  (fetchNuGet {
+    pname = "HtmlAgilityPack";
+    version = "1.11.42";
+    sha256 = "0cvnc1qdfcjbqkh335bv4wp44zisb4hc69lq3zphiyzqfrjisnyb";
+  })
+  (fetchNuGet {
+    pname = "JetBrains.Annotations";
+    version = "2023.2.0";
+    sha256 = "0nx7nrzbg9gk9skdc9x330cbr5xbsly6z9gzxm46vywf55yp8vaj";
+  })
+  (fetchNuGet {
+    pname = "Markdown.Avalonia";
+    version = "11.0.1";
+    sha256 = "08sv0cmzhhwnw0mv9dc7gzr1kvlqrl5pgmc045gigkqb3fi4zps1";
+  })
+  (fetchNuGet {
+    pname = "Markdown.Avalonia.Html";
+    version = "11.0.1";
+    sha256 = "00ipmxrq994w3vdqxicbw2dpv6nm54n2xz0xkvn127p8qvb734a7";
+  })
+  (fetchNuGet {
+    pname = "Markdown.Avalonia.Svg";
+    version = "11.0.1";
+    sha256 = "1lhfb9jk70fgfng87k2kxr82glrmrhv3llyd1kylmdv2vl3w9gwg";
+  })
+  (fetchNuGet {
+    pname = "Markdown.Avalonia.SyntaxHigh";
+    version = "11.0.1";
+    sha256 = "076wn8ylpxiawn9vnsy6z6d8y4mb0nk80j52aaqm3293f9cqajz6";
+  })
+  (fetchNuGet {
+    pname = "Markdown.Avalonia.Tight";
+    version = "11.0.1";
+    sha256 = "0bxclsly98jngdw4ykf23ip1x78d5l0xkqbqmny0pjw3pi4nsxzk";
+  })
+  (fetchNuGet {
+    pname = "MessageBox.Avalonia";
+    version = "3.1.4";
+    sha256 = "1qfaadvax0yc6wlqbm88ilz3jqzx0qh855ixymlkbi7wmg62fxzc";
+  })
+  (fetchNuGet {
+    pname = "MicroCom.Runtime";
+    version = "0.11.0";
+    sha256 = "0p9c3m0zk59x9dcqw077hzd2yk60myisbacvm36mnwpcjwzjkp2m";
+  })
+  (fetchNuGet {
+    pname = "Microsoft.CodeAnalysis.Analyzers";
+    version = "3.0.0";
+    sha256 = "0bbl0jpqywqmzz2gagld1p2gvdfldjfjmm25hil9wj2nq1zc4di8";
+  })
+  (fetchNuGet {
+    pname = "Microsoft.CodeAnalysis.Common";
+    version = "3.8.0";
+    sha256 = "12n7rvr39bzkf2maw7zplw8rwpxpxss4ich3bb2pw770rx4nyvyw";
+  })
+  (fetchNuGet {
+    pname = "Microsoft.CodeAnalysis.CSharp";
+    version = "3.8.0";
+    sha256 = "1kmry65csvfn72zzc16vj1nfbfwam28wcmlrk3m5rzb8ydbzgylb";
+  })
+  (fetchNuGet {
+    pname = "Microsoft.CodeAnalysis.CSharp.Scripting";
+    version = "3.8.0";
+    sha256 = "0w0yx0lpg54iw5jazqk46h48gx43ij32gwac8iywdj6kxfxm03vw";
+  })
+  (fetchNuGet {
+    pname = "Microsoft.CodeAnalysis.Scripting.Common";
+    version = "3.8.0";
+    sha256 = "0hjgxcsj5zy27lqk0986m59n5dbplx2vjjla2lsvg4bwg8qa7bpk";
+  })
+  (fetchNuGet {
+    pname = "Microsoft.CSharp";
+    version = "4.3.0";
+    sha256 = "0gw297dgkh0al1zxvgvncqs0j15lsna9l1wpqas4rflmys440xvb";
+  })
+  (fetchNuGet {
+    pname = "Microsoft.Extensions.DependencyInjection";
+    version = "8.0.0-preview.7.23375.6";
+    sha256 = "0xjffkqxhz0a2fv91rpiajksni7g8h3nl6cq1jzgyh0vx692n7xg";
+  })
+  (fetchNuGet {
+    pname = "Microsoft.Extensions.DependencyInjection.Abstractions";
+    version = "8.0.0-preview.7.23375.6";
+    sha256 = "15c3pjyqqn47shxmzxkp0bmsnqa6721cphncmp7vqa3735wqp7jh";
+  })
+  (fetchNuGet {
+    pname = "Microsoft.NETCore.Platforms";
+    version = "1.1.0";
+    sha256 = "08vh1r12g6ykjygq5d3vq09zylgb84l63k49jc4v8faw9g93iqqm";
+  })
+  (fetchNuGet {
+    pname = "Microsoft.NETCore.Platforms";
+    version = "2.1.2";
+    sha256 = "1507hnpr9my3z4w1r6xk5n0s1j3y6a2c2cnynj76za7cphxi1141";
+  })
+  (fetchNuGet {
+    pname = "Microsoft.NETCore.Targets";
+    version = "1.1.0";
+    sha256 = "193xwf33fbm0ni3idxzbr5fdq3i2dlfgihsac9jj7whj0gd902nh";
+  })
+  (fetchNuGet {
+    pname = "Microsoft.Toolkit.HighPerformance";
+    version = "7.1.2";
+    sha256 = "18l950mq0l8s1z771l9p332ni7jryidjh4hi9p37l6p8frcnccxb";
+  })
+  (fetchNuGet {
+    pname = "Microsoft.Win32.SystemEvents";
+    version = "6.0.0";
+    sha256 = "0c6pcj088g1yd1vs529q3ybgsd2vjlk5y1ic6dkmbhvrp5jibl9p";
+  })
+  (fetchNuGet {
+    pname = "Mono.Cecil";
+    version = "0.11.5";
+    sha256 = "1l388sy7ibsq4b2pj08g3di0g8yppq47chd7ip10kwml6mpp1wcw";
+  })
+  (fetchNuGet {
+    pname = "NetSparkleUpdater.SparkleUpdater";
+    version = "2.3.0-preview20230704001";
+    sha256 = "07j73ak79wwxl62pj35za1la47537xjbb4c7fjq8zdy2bzjifc23";
+  })
+  (fetchNuGet {
+    pname = "NetSparkleUpdater.UI.Avalonia";
+    version = "3.0.0-preview20230703001";
+    sha256 = "04d53xb30hx86p6ski6kvv67bfdi6p4xim8v59rfyc388f363nkl";
+  })
+  (fetchNuGet {
+    pname = "Newtonsoft.Json";
+    version = "13.0.3";
+    sha256 = "0xrwysmrn4midrjal8g2hr1bbg38iyisl0svamb11arqws4w2bw7";
+  })
+  (fetchNuGet {
+    pname = "Newtonsoft.Json.Schema";
+    version = "3.0.15";
+    sha256 = "1nmc9zxpcyyf3f2ypxw6vnjwlw5sxjv13r65p2dy8xrx8jkgaslp";
+  })
+  (fetchNuGet {
+    pname = "Portable.BouncyCastle";
+    version = "1.9.0";
+    sha256 = "0kphjwz4hk2nki3b4f9z096xzd520nrpvi3cjib8fkjk6zhwrr8q";
+  })
+  (fetchNuGet {
+    pname = "PropertyChanged.SourceGenerator";
+    version = "1.0.8";
+    sha256 = "05ygdj1sizcw678vf459hzhz4ynz2s5s206vl99g5gy3d9kaham6";
+  })
+  (fetchNuGet {
+    pname = "ReactiveUI";
+    version = "18.3.1";
+    sha256 = "1lxkc8yk9glj0w9n5vry2dnwwvh8152ad2c5bivk8aciq64zidyn";
+  })
+  (fetchNuGet {
+    pname = "runtime.any.System.Collections";
+    version = "4.3.0";
+    sha256 = "0bv5qgm6vr47ynxqbnkc7i797fdi8gbjjxii173syrx14nmrkwg0";
+  })
+  (fetchNuGet {
+    pname = "runtime.any.System.Globalization";
+    version = "4.3.0";
+    sha256 = "1daqf33hssad94lamzg01y49xwndy2q97i2lrb7mgn28656qia1x";
+  })
+  (fetchNuGet {
+    pname = "runtime.any.System.IO";
+    version = "4.3.0";
+    sha256 = "0l8xz8zn46w4d10bcn3l4yyn4vhb3lrj2zw8llvz7jk14k4zps5x";
+  })
+  (fetchNuGet {
+    pname = "runtime.any.System.Reflection";
+    version = "4.3.0";
+    sha256 = "02c9h3y35pylc0zfq3wcsvc5nqci95nrkq0mszifc0sjx7xrzkly";
+  })
+  (fetchNuGet {
+    pname = "runtime.any.System.Reflection.Extensions";
+    version = "4.3.0";
+    sha256 = "0zyri97dfc5vyaz9ba65hjj1zbcrzaffhsdlpxc9bh09wy22fq33";
+  })
+  (fetchNuGet {
+    pname = "runtime.any.System.Reflection.Primitives";
+    version = "4.3.0";
+    sha256 = "0x1mm8c6iy8rlxm8w9vqw7gb7s1ljadrn049fmf70cyh42vdfhrf";
+  })
+  (fetchNuGet {
+    pname = "runtime.any.System.Resources.ResourceManager";
+    version = "4.3.0";
+    sha256 = "03kickal0iiby82wa5flar18kyv82s9s6d4xhk5h4bi5kfcyfjzl";
+  })
+  (fetchNuGet {
+    pname = "runtime.any.System.Runtime";
+    version = "4.3.0";
+    sha256 = "1cqh1sv3h5j7ixyb7axxbdkqx6cxy00p4np4j91kpm492rf4s25b";
+  })
+  (fetchNuGet {
+    pname = "runtime.any.System.Runtime.Handles";
+    version = "4.3.0";
+    sha256 = "0bh5bi25nk9w9xi8z23ws45q5yia6k7dg3i4axhfqlnj145l011x";
+  })
+  (fetchNuGet {
+    pname = "runtime.any.System.Runtime.InteropServices";
+    version = "4.3.0";
+    sha256 = "0c3g3g3jmhlhw4klrc86ka9fjbl7i59ds1fadsb2l8nqf8z3kb19";
+  })
+  (fetchNuGet {
+    pname = "runtime.any.System.Text.Encoding";
+    version = "4.3.0";
+    sha256 = "0aqqi1v4wx51h51mk956y783wzags13wa7mgqyclacmsmpv02ps3";
+  })
+  (fetchNuGet {
+    pname = "runtime.any.System.Threading.Tasks";
+    version = "4.3.0";
+    sha256 = "03mnvkhskbzxddz4hm113zsch1jyzh2cs450dk3rgfjp8crlw1va";
+  })
+  (fetchNuGet {
+    pname = "runtime.debian.8-x64.runtime.native.System.Security.Cryptography.OpenSsl";
+    version = "4.3.0";
+    sha256 = "16rnxzpk5dpbbl1x354yrlsbvwylrq456xzpsha1n9y3glnhyx9d";
+  })
+  (fetchNuGet {
+    pname = "runtime.fedora.23-x64.runtime.native.System.Security.Cryptography.OpenSsl";
+    version = "4.3.0";
+    sha256 = "0hkg03sgm2wyq8nqk6dbm9jh5vcq57ry42lkqdmfklrw89lsmr59";
+  })
+  (fetchNuGet {
+    pname = "runtime.fedora.24-x64.runtime.native.System.Security.Cryptography.OpenSsl";
+    version = "4.3.0";
+    sha256 = "0c2p354hjx58xhhz7wv6div8xpi90sc6ibdm40qin21bvi7ymcaa";
+  })
+  (fetchNuGet {
+    pname = "runtime.native.System";
+    version = "4.3.0";
+    sha256 = "15hgf6zaq9b8br2wi1i3x0zvmk410nlmsmva9p0bbg73v6hml5k4";
+  })
+  (fetchNuGet {
+    pname = "runtime.native.System.Security.Cryptography.OpenSsl";
+    version = "4.3.0";
+    sha256 = "18pzfdlwsg2nb1jjjjzyb5qlgy6xjxzmhnfaijq5s2jw3cm3ab97";
+  })
+  (fetchNuGet {
+    pname = "runtime.opensuse.13.2-x64.runtime.native.System.Security.Cryptography.OpenSsl";
+    version = "4.3.0";
+    sha256 = "0qyynf9nz5i7pc26cwhgi8j62ps27sqmf78ijcfgzab50z9g8ay3";
+  })
+  (fetchNuGet {
+    pname = "runtime.opensuse.42.1-x64.runtime.native.System.Security.Cryptography.OpenSsl";
+    version = "4.3.0";
+    sha256 = "1klrs545awhayryma6l7g2pvnp9xy4z0r1i40r80zb45q3i9nbyf";
+  })
+  (fetchNuGet {
+    pname = "runtime.osx.10.10-x64.runtime.native.System.Security.Cryptography.OpenSsl";
+    version = "4.3.0";
+    sha256 = "0zcxjv5pckplvkg0r6mw3asggm7aqzbdjimhvsasb0cgm59x09l3";
+  })
+  (fetchNuGet {
+    pname = "runtime.rhel.7-x64.runtime.native.System.Security.Cryptography.OpenSsl";
+    version = "4.3.0";
+    sha256 = "0vhynn79ih7hw7cwjazn87rm9z9fj0rvxgzlab36jybgcpcgphsn";
+  })
+  (fetchNuGet {
+    pname = "runtime.ubuntu.14.04-x64.runtime.native.System.Security.Cryptography.OpenSsl";
+    version = "4.3.0";
+    sha256 = "160p68l2c7cqmyqjwxydcvgw7lvl1cr0znkw8fp24d1by9mqc8p3";
+  })
+  (fetchNuGet {
+    pname = "runtime.ubuntu.16.04-x64.runtime.native.System.Security.Cryptography.OpenSsl";
+    version = "4.3.0";
+    sha256 = "15zrc8fgd8zx28hdghcj5f5i34wf3l6bq5177075m2bc2j34jrqy";
+  })
+  (fetchNuGet {
+    pname = "runtime.ubuntu.16.10-x64.runtime.native.System.Security.Cryptography.OpenSsl";
+    version = "4.3.0";
+    sha256 = "1p4dgxax6p7rlgj4q73k73rslcnz4wdcv8q2flg1s8ygwcm58ld5";
+  })
+  (fetchNuGet {
+    pname = "runtime.unix.System.Diagnostics.Debug";
+    version = "4.3.0";
+    sha256 = "1lps7fbnw34bnh3lm31gs5c0g0dh7548wfmb8zz62v0zqz71msj5";
+  })
+  (fetchNuGet {
+    pname = "runtime.unix.System.Private.Uri";
+    version = "4.3.0";
+    sha256 = "1jx02q6kiwlvfksq1q9qr17fj78y5v6mwsszav4qcz9z25d5g6vk";
+  })
+  (fetchNuGet {
+    pname = "runtime.unix.System.Runtime.Extensions";
+    version = "4.3.0";
+    sha256 = "0pnxxmm8whx38dp6yvwgmh22smknxmqs5n513fc7m4wxvs1bvi4p";
+  })
+  (fetchNuGet {
+    pname = "ShimSkiaSharp";
+    version = "1.0.0";
+    sha256 = "0gdsrzh8q8mxlm7sxvai7zshaz93a3dm1ha4cgs4845lfhpn8nhc";
+  })
+  (fetchNuGet {
+    pname = "SkiaSharp";
+    version = "2.88.3";
+    sha256 = "1yq694myq2rhfp2hwwpyzcg1pzpxcp7j72wib8p9pw9dfj7008sv";
+  })
+  (fetchNuGet {
+    pname = "SkiaSharp.NativeAssets.Linux";
+    version = "2.88.3";
+    sha256 = "0dajvr60nwvnv7s6kcqgw1w97zxdpz1c5lb7kcq7r0hi0l05ck3q";
+  })
+  (fetchNuGet {
+    pname = "SkiaSharp.NativeAssets.macOS";
+    version = "2.88.3";
+    sha256 = "191ajgi6fnfqcvqvkayjsxasiz6l0bv3pps8vv9abbyc4b12qvph";
+  })
+  (fetchNuGet {
+    pname = "SkiaSharp.NativeAssets.WebAssembly";
+    version = "2.88.3";
+    sha256 = "1w5njksq3amrrp7fqxw89nv6ar2kgc5yx092i4rxv7hrjbd1aagx";
+  })
+  (fetchNuGet {
+    pname = "SkiaSharp.NativeAssets.Win32";
+    version = "2.88.3";
+    sha256 = "03wwfbarsxjnk70qhqyd1dw65098dncqk2m0vksx92j70i7lry6q";
+  })
+  (fetchNuGet {
+    pname = "Splat";
+    version = "14.4.1";
+    sha256 = "03ycyjn2ii44npi015p4rk344xnjgdzz02cf63cmhx2ab8hv6p4b";
+  })
+  (fetchNuGet {
+    pname = "Splat";
+    version = "14.7.1";
+    sha256 = "1rs8bmwcvzg4yn05zglgk7vbmyi2flyyhjqn62sx1cjkrd9m0cs7";
+  })
+  (fetchNuGet {
+    pname = "Splat.Microsoft.Extensions.DependencyInjection";
+    version = "14.7.1";
+    sha256 = "0niwhksr74frjrkb47ihf44fq0353y4y1i3cim0fd855brvq8xh5";
+  })
+  (fetchNuGet {
+    pname = "Svg.Custom";
+    version = "1.0.0";
+    sha256 = "0bmvgaqy4iaxw9x88ifx3a2zz0vw3p9w6pj4bk3xfnf5p9vjx1mr";
+  })
+  (fetchNuGet {
+    pname = "Svg.Model";
+    version = "1.0.0";
+    sha256 = "0yrjcqcrlgqpdm3bi59nc3fppcqgrfc7jddjwxjj2q423gimip97";
+  })
+  (fetchNuGet {
+    pname = "Svg.SourceGenerator.Skia";
+    version = "1.0.0.1";
+    sha256 = "0sjx3kqwrmrlv9jsb59hwgs9ahj4qryrmqmgq41qnqi0w8d7yjyr";
+  })
+  (fetchNuGet {
+    pname = "System.Collections";
+    version = "4.3.0";
+    sha256 = "19r4y64dqyrq6k4706dnyhhw7fs24kpp3awak7whzss39dakpxk9";
+  })
+  (fetchNuGet {
+    pname = "System.Collections.Immutable";
+    version = "1.6.0";
+    sha256 = "1pbxzdz3pwqyybzv5ff2b7nrc281bhg7hq34w0fn1w3qfgrbwyw2";
+  })
+  (fetchNuGet {
+    pname = "System.Collections.Immutable";
+    version = "5.0.0";
+    sha256 = "1kvcllagxz2q92g81zkz81djkn2lid25ayjfgjalncyc68i15p0r";
+  })
+  (fetchNuGet {
+    pname = "System.ComponentModel.Annotations";
+    version = "4.5.0";
+    sha256 = "1jj6f6g87k0iwsgmg3xmnn67a14mq88np0l1ys5zkxhkvbc8976p";
+  })
+  (fetchNuGet {
+    pname = "System.Diagnostics.Debug";
+    version = "4.3.0";
+    sha256 = "00yjlf19wjydyr6cfviaph3vsjzg3d5nvnya26i2fvfg53sknh3y";
+  })
+  (fetchNuGet {
+    pname = "System.Drawing.Common";
+    version = "6.0.0";
+    sha256 = "02n8rzm58dac2np8b3xw8ychbvylja4nh6938l5k2fhyn40imlgz";
+  })
+  (fetchNuGet {
+    pname = "System.Dynamic.Runtime";
+    version = "4.3.0";
+    sha256 = "1d951hrvrpndk7insiag80qxjbf2y0y39y8h5hnq9612ws661glk";
+  })
+  (fetchNuGet {
+    pname = "System.Globalization";
+    version = "4.3.0";
+    sha256 = "1cp68vv683n6ic2zqh2s1fn4c2sd87g5hpp6l4d4nj4536jz98ki";
+  })
+  (fetchNuGet {
+    pname = "System.IO";
+    version = "4.3.0";
+    sha256 = "05l9qdrzhm4s5dixmx68kxwif4l99ll5gqmh7rqgw554fx0agv5f";
+  })
+  (fetchNuGet {
+    pname = "System.IO.Abstractions";
+    version = "19.2.69";
+    sha256 = "0k22xbyypfw0s4lia46c2ykcw1mwnkq1fqrw7bql6q3kvwm7ab7h";
+  })
+  (fetchNuGet {
+    pname = "System.IO.Pipelines";
+    version = "6.0.0";
+    sha256 = "08211lvckdsdbd67xz4f6cyk76cli565j0dby1grlc4k9bhwby65";
+  })
+  (fetchNuGet {
+    pname = "System.Linq";
+    version = "4.3.0";
+    sha256 = "1w0gmba695rbr80l1k2h4mrwzbzsyfl2z4klmpbsvsg5pm4a56s7";
+  })
+  (fetchNuGet {
+    pname = "System.Linq.Expressions";
+    version = "4.3.0";
+    sha256 = "0ky2nrcvh70rqq88m9a5yqabsl4fyd17bpr63iy2mbivjs2nyypv";
+  })
+  (fetchNuGet {
+    pname = "System.Memory";
+    version = "4.5.4";
+    sha256 = "14gbbs22mcxwggn0fcfs1b062521azb9fbb7c113x0mq6dzq9h6y";
+  })
+  (fetchNuGet {
+    pname = "System.Numerics.Vectors";
+    version = "4.5.0";
+    sha256 = "1kzrj37yzawf1b19jq0253rcs8hsq1l2q8g69d7ipnhzb0h97m59";
+  })
+  (fetchNuGet {
+    pname = "System.ObjectModel";
+    version = "4.3.0";
+    sha256 = "191p63zy5rpqx7dnrb3h7prvgixmk168fhvvkkvhlazncf8r3nc2";
+  })
+  (fetchNuGet {
+    pname = "System.Private.Uri";
+    version = "4.3.0";
+    sha256 = "04r1lkdnsznin0fj4ya1zikxiqr0h6r6a1ww2dsm60gqhdrf0mvx";
+  })
+  (fetchNuGet {
+    pname = "System.Reactive";
+    version = "5.0.0";
+    sha256 = "1lafmpnadhiwxyd543kraxa3jfdpm6ipblxrjlibym9b1ykpr5ik";
+  })
+  (fetchNuGet {
+    pname = "System.Reactive";
+    version = "6.0.0";
+    sha256 = "1mkvx1fwychpczksy6svfmniqhbm3xqblxqik6178l12xgq7aw45";
+  })
+  (fetchNuGet {
+    pname = "System.Reflection";
+    version = "4.3.0";
+    sha256 = "0xl55k0mw8cd8ra6dxzh974nxif58s3k1rjv1vbd7gjbjr39j11m";
+  })
+  (fetchNuGet {
+    pname = "System.Reflection.Emit";
+    version = "4.3.0";
+    sha256 = "11f8y3qfysfcrscjpjym9msk7lsfxkk4fmz9qq95kn3jd0769f74";
+  })
+  (fetchNuGet {
+    pname = "System.Reflection.Emit.ILGeneration";
+    version = "4.3.0";
+    sha256 = "0w1n67glpv8241vnpz1kl14sy7zlnw414aqwj4hcx5nd86f6994q";
+  })
+  (fetchNuGet {
+    pname = "System.Reflection.Emit.Lightweight";
+    version = "4.3.0";
+    sha256 = "0ql7lcakycrvzgi9kxz1b3lljd990az1x6c4jsiwcacrvimpib5c";
+  })
+  (fetchNuGet {
+    pname = "System.Reflection.Extensions";
+    version = "4.3.0";
+    sha256 = "02bly8bdc98gs22lqsfx9xicblszr2yan7v2mmw3g7hy6miq5hwq";
+  })
+  (fetchNuGet {
+    pname = "System.Reflection.Metadata";
+    version = "5.0.0";
+    sha256 = "17qsl5nanlqk9iz0l5wijdn6ka632fs1m1fvx18dfgswm258r3ss";
+  })
+  (fetchNuGet {
+    pname = "System.Reflection.Primitives";
+    version = "4.3.0";
+    sha256 = "04xqa33bld78yv5r93a8n76shvc8wwcdgr1qvvjh959g3rc31276";
+  })
+  (fetchNuGet {
+    pname = "System.Reflection.TypeExtensions";
+    version = "4.3.0";
+    sha256 = "0y2ssg08d817p0vdag98vn238gyrrynjdj4181hdg780sif3ykp1";
+  })
+  (fetchNuGet {
+    pname = "System.Resources.ResourceManager";
+    version = "4.3.0";
+    sha256 = "0sjqlzsryb0mg4y4xzf35xi523s4is4hz9q4qgdvlvgivl7qxn49";
+  })
+  (fetchNuGet {
+    pname = "System.Runtime";
+    version = "4.3.0";
+    sha256 = "066ixvgbf2c929kgknshcxqj6539ax7b9m570cp8n179cpfkapz7";
+  })
+  (fetchNuGet {
+    pname = "System.Runtime.CompilerServices.Unsafe";
+    version = "4.7.1";
+    sha256 = "119br3pd85lq8zcgh4f60jzmv1g976q1kdgi3hvqdlhfbw6siz2j";
+  })
+  (fetchNuGet {
+    pname = "System.Runtime.Extensions";
+    version = "4.3.0";
+    sha256 = "1ykp3dnhwvm48nap8q23893hagf665k0kn3cbgsqpwzbijdcgc60";
+  })
+  (fetchNuGet {
+    pname = "System.Runtime.Handles";
+    version = "4.3.0";
+    sha256 = "0sw2gfj2xr7sw9qjn0j3l9yw07x73lcs97p8xfc9w1x9h5g5m7i8";
+  })
+  (fetchNuGet {
+    pname = "System.Runtime.InteropServices";
+    version = "4.3.0";
+    sha256 = "00hywrn4g7hva1b2qri2s6rabzwgxnbpw9zfxmz28z09cpwwgh7j";
+  })
+  (fetchNuGet {
+    pname = "System.Text.Encoding";
+    version = "4.3.0";
+    sha256 = "1f04lkir4iladpp51sdgmis9dj4y8v08cka0mbmsy0frc9a4gjqr";
+  })
+  (fetchNuGet {
+    pname = "System.Text.Encoding.CodePages";
+    version = "4.5.1";
+    sha256 = "1z21qyfs6sg76rp68qdx0c9iy57naan89pg7p6i3qpj8kyzn921w";
+  })
+  (fetchNuGet {
+    pname = "System.Text.Encodings.Web";
+    version = "7.0.0";
+    sha256 = "1151hbyrcf8kyg1jz8k9awpbic98lwz9x129rg7zk1wrs6vjlpxl";
+  })
+  (fetchNuGet {
+    pname = "System.Text.Json";
+    version = "7.0.3";
+    sha256 = "0zjrnc9lshagm6kdb9bdh45dmlnkpwcpyssa896sda93ngbmj8k9";
+  })
+  (fetchNuGet {
+    pname = "System.Threading";
+    version = "4.3.0";
+    sha256 = "0rw9wfamvhayp5zh3j7p1yfmx9b5khbf4q50d8k5rk993rskfd34";
+  })
+  (fetchNuGet {
+    pname = "System.Threading.Tasks";
+    version = "4.3.0";
+    sha256 = "134z3v9abw3a6jsw17xl3f6hqjpak5l682k2vz39spj4kmydg6k7";
+  })
+  (fetchNuGet {
+    pname = "System.Threading.Tasks.Extensions";
+    version = "4.5.4";
+    sha256 = "0y6ncasgfcgnjrhynaf0lwpkpkmv4a07sswwkwbwb5h7riisj153";
+  })
+  (fetchNuGet {
+    pname = "System.ValueTuple";
+    version = "4.5.0";
+    sha256 = "00k8ja51d0f9wrq4vv5z2jhq8hy31kac2rg0rv06prylcybzl8cy";
+  })
+  (fetchNuGet {
+    pname = "TestableIO.System.IO.Abstractions";
+    version = "19.2.69";
+    sha256 = "1y6xn5fgh4ia5ympjf33pvry4l76hgn7jwimvirbq8bkkc32v4hg";
+  })
+  (fetchNuGet {
+    pname = "TestableIO.System.IO.Abstractions.Wrappers";
+    version = "19.2.69";
+    sha256 = "1fjcgya57bx9n00y926d9bwrcii7l41gr470gz00q9ipj726wy30";
+  })
+  (fetchNuGet {
+    pname = "Tmds.DBus.Protocol";
+    version = "0.15.0";
+    sha256 = "0d99kcs7r9cp6gpyc7z230czkkyx4164x86dhy0mca73f2ykc2g2";
+  })
+]
diff --git a/pkgs/by-name/lu/lumafly/package.nix b/pkgs/by-name/lu/lumafly/package.nix
new file mode 100644
index 000000000000..14227990c490
--- /dev/null
+++ b/pkgs/by-name/lu/lumafly/package.nix
@@ -0,0 +1,75 @@
+{
+  lib,
+  fetchFromGitHub,
+  buildDotnetModule,
+  dotnetCorePackages,
+  zlib,
+  icu,
+  fontconfig,
+  openssl,
+  libX11,
+  libICE,
+  libSM,
+  icoutils,
+  copyDesktopItems,
+  makeDesktopItem,
+}:
+buildDotnetModule rec {
+  pname = "lumafly";
+  version = "3.2.0.0";
+
+  src = fetchFromGitHub {
+    owner = "TheMulhima";
+    repo = "lumafly";
+    rev = "v${version}";
+    hash = "sha256-oDSM5Ev9SCjbvCgDZcpzm2bVnzG04yy/WaSwJyh0b18=";
+  };
+
+  projectFile = "Lumafly/Lumafly.csproj";
+
+  nugetDeps = ./deps.nix;
+
+  dotnet-sdk = dotnetCorePackages.sdk_7_0;
+
+  selfContainedBuild = true;
+
+  runtimeDeps = [
+    zlib
+    icu
+    fontconfig
+    openssl
+    libX11
+    libICE
+    libSM
+  ];
+
+  nativeBuildInputs = [
+    icoutils
+    copyDesktopItems
+  ];
+
+  postFixup = ''
+    # Icon for the desktop file
+    icotool -x $src/Lumafly/Assets/Lumafly.ico
+    install -D Lumafly_1_32x32x32.png $out/share/icons/hicolor/32x32/apps/lumafly.png
+  '';
+
+  desktopItems = [(makeDesktopItem {
+    desktopName = "Lumafly";
+    name = "lumafly";
+    exec = "Lumafly";
+    icon = "lumafly";
+    comment = meta.description;
+    type = "Application";
+    categories = [ "Game" ];
+  })];
+
+  meta = {
+    description = "A cross platform mod manager for Hollow Knight written in Avalonia";
+    homepage = "https://themulhima.github.io/Lumafly/";
+    license = lib.licenses.gpl3Plus;
+    mainProgram = "Lumafly";
+    maintainers = with lib.maintainers; [ rohanssrao ];
+    platforms = lib.platforms.linux;
+  };
+}
diff --git a/pkgs/by-name/lu/lunar-client/package.nix b/pkgs/by-name/lu/lunar-client/package.nix
index f507a4dbc311..4a727834f670 100644
--- a/pkgs/by-name/lu/lunar-client/package.nix
+++ b/pkgs/by-name/lu/lunar-client/package.nix
@@ -6,11 +6,11 @@
 
 appimageTools.wrapType2 rec {
   pname = "lunar-client";
-  version = "3.2.6";
+  version = "3.2.7";
 
   src = fetchurl {
     url = "https://launcherupdates.lunarclientcdn.com/Lunar%20Client-${version}.AppImage";
-    hash = "sha512-JZ6fXUDurLxe6acRRXTHot2GTUqMaSwy7N5K4cmFmOn4s8W2aXek+o8med3ytaxoTd6FmibXmCxrjnOVMHBRGA==";
+    hash = "sha512-dziL9lnpsiJ2BV+jNOhVMvZtYY/K4chyiZB5/fMCw9/4/3Boe/DO7s2steEOhxEsPqUcWaf1Sjs6DFSX/CHUqw==";
   };
 
   extraInstallCommands =
diff --git a/pkgs/by-name/lu/lutgen/package.nix b/pkgs/by-name/lu/lutgen/package.nix
index 78779051349e..dc1955b68467 100644
--- a/pkgs/by-name/lu/lutgen/package.nix
+++ b/pkgs/by-name/lu/lutgen/package.nix
@@ -7,16 +7,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "lutgen";
-  version = "0.10.0";
+  version = "0.10.1";
 
   src = fetchFromGitHub {
     owner = "ozwaldorf";
     repo = "lutgen-rs";
     rev = "v${version}";
-    hash = "sha256-O2995+DLiCRDM/+oPTOBiM0L1x0jmbLTlR48+5IfOQw=";
+    hash = "sha256-Rj6y8ZiNWQsGn8B+iNMZvuE/U2703oYbJW+ZSdV3fl4=";
   };
 
-  cargoHash = "sha256-ys4c/YUJJikDEUJjzagZBB+kSy+EFf+PqQdK/h+3gWU=";
+  cargoHash = "sha256-7yNr6Zc5A7rj6sUnplo2gB2xNUgZ3TLwUuBEfVKZfIQ=";
 
   nativeBuildInputs = [
     installShellFiles
diff --git a/pkgs/by-name/lu/lutok/package.nix b/pkgs/by-name/lu/lutok/package.nix
new file mode 100644
index 000000000000..a09724b5348f
--- /dev/null
+++ b/pkgs/by-name/lu/lutok/package.nix
@@ -0,0 +1,87 @@
+{
+  lib,
+  stdenv,
+  fetchFromGitHub,
+  atf,
+  autoreconfHook,
+  kyua,
+  lua,
+  pkg-config,
+  gitUpdater,
+}:
+
+lib.fix (
+  drv:
+  let
+    # Avoid infinite recursions:
+    # - Lutok depends on ATF and Kyua for testing; but
+    # - ATF depends on Kyua for testing, and Kyua depends on Lutok as a build input.
+    # To break the cycle (ATF -> Kyua -> Lutok -> ATF and Kyua):
+    # - Build ATF without testing (avoiding the Kyua dependency); and
+    # - Build Kyua against a version of Lutok without testing (also avoiding the ATF and Kyua dependencies).
+    atf' = atf.overrideAttrs (_: {
+      doInstallCheck = false;
+    });
+    kyua' =
+      (kyua.override {
+        lutok = drv.overrideAttrs (_: {
+          doCheck = false;
+        });
+      }).overrideAttrs
+        (_: {
+          # Assume Kyua’s install check phase will run when Kyua is built. Don’t run it again
+          # while building Lutok because it can take four to five minutes to run.
+          doInstallCheck = false;
+        });
+  in
+  stdenv.mkDerivation (finalAttrs: {
+    pname = "lutok";
+    version = "0.4";
+
+    outputs = [
+      "out"
+      "dev"
+    ];
+
+    src = fetchFromGitHub {
+      owner = "freebsd";
+      repo = "lutok";
+      rev = "lutok-${finalAttrs.version}";
+      hash = "sha256-awAFxx9q8dZ6JO1/mShjhJnOPTLn1wCT4VrB4rlgWyg=";
+    };
+
+    strictDeps = true;
+
+    propagatedBuildInputs = [ lua ];
+
+    nativeBuildInputs = [
+      atf'
+      autoreconfHook
+      pkg-config
+    ];
+
+    enableParallelBuilding = true;
+
+    makeFlags = [
+      # Lutok isn’t compatible with C++17, which is the default on current clang and GCC.
+      "CXXFLAGS=-std=c++11"
+    ];
+
+    doCheck = true;
+
+    checkInputs = [ atf' ];
+    nativeCheckInputs = [ kyua' ];
+
+    passthru.updateScript = gitUpdater { rev-prefix = "lutok-"; };
+
+    __structuredAttrs = true;
+
+    meta = {
+      description = "Libraries to write tests in C, C++, and shell";
+      homepage = "https://github.com/freebsd/lutok/";
+      license = lib.licenses.bsd3;
+      maintainers = with lib.maintainers; [ reckenrode ];
+      platforms = lib.platforms.unix;
+    };
+  })
+)
diff --git a/pkgs/by-name/lx/lxd-unwrapped-lts/package.nix b/pkgs/by-name/lx/lxd-unwrapped-lts/package.nix
index c11ece294dc1..41b20f486068 100644
--- a/pkgs/by-name/lx/lxd-unwrapped-lts/package.nix
+++ b/pkgs/by-name/lx/lxd-unwrapped-lts/package.nix
@@ -71,7 +71,7 @@ buildGo122Module rec {
     make lxd-agent lxd-migrate
   '';
 
-  preCheck =
+  checkFlags =
     let
       skippedTests = [
         "TestValidateConfig"
@@ -81,10 +81,7 @@ buildGo122Module rec {
         "TestContainerTestSuite"
       ];
     in
-    ''
-      # Disable tests requiring local operations
-      buildFlagsArray+=("-run" "[^(${builtins.concatStringsSep "|" skippedTests})]")
-    '';
+    [ "-skip=^${builtins.concatStringsSep "$|^" skippedTests}$" ];
 
   postInstall = ''
     installShellCompletion --bash --name lxd ./scripts/bash/lxd-client
diff --git a/pkgs/by-name/lx/lxgw-wenkai-tc/package.nix b/pkgs/by-name/lx/lxgw-wenkai-tc/package.nix
new file mode 100644
index 000000000000..7b93d94b42ce
--- /dev/null
+++ b/pkgs/by-name/lx/lxgw-wenkai-tc/package.nix
@@ -0,0 +1,30 @@
+{ stdenvNoCC
+, fetchurl
+, lib
+}:
+
+stdenvNoCC.mkDerivation rec {
+  pname = "lxgw-wenkai-tc";
+  version = "1.330";
+  src = fetchurl {
+    url = "https://github.com/lxgw/LxgwWenKaiTC/releases/download/v${version}/${pname}-v${version}.tar.gz";
+    hash = "sha256-qpX5shH1HbGMa287u/R1rMFgQeAUC0wwKFVD+QSTyho=";
+  };
+
+  installPhase = ''
+    runHook preInstall
+
+    mkdir -p $out/share/fonts/truetype
+    mv *.ttf $out/share/fonts/truetype
+
+    runHook postInstall
+  '';
+
+  meta = with lib; {
+    homepage = "https://github.com/lxgw/LxgwWenKaiTC";
+    description = "The Traditional Chinese Edition of LXGW WenKai.";
+    license = licenses.ofl;
+    platforms = platforms.all;
+    maintainers = with maintainers; [ lebensterben ];
+  };
+}
diff --git a/pkgs/by-name/ma/maa-assistant-arknights/pin.json b/pkgs/by-name/ma/maa-assistant-arknights/pin.json
index cb63a8170054..c6056d3c9deb 100644
--- a/pkgs/by-name/ma/maa-assistant-arknights/pin.json
+++ b/pkgs/by-name/ma/maa-assistant-arknights/pin.json
@@ -1,10 +1,10 @@
 {
   "stable": {
-    "version": "5.2.1",
-    "hash": "sha256-pyvHhFfwgozaTP3AhqWPKOuXdC23stXiUW2PpdYRR7M="
+    "version": "5.2.3",
+    "hash": "sha256-fjlvP5PPmSSNYefYRrEBVdhbN3yZ0pCbvIe763U5y5o="
   },
   "beta": {
-    "version": "5.2.1",
-    "hash": "sha256-pyvHhFfwgozaTP3AhqWPKOuXdC23stXiUW2PpdYRR7M="
+    "version": "5.2.3",
+    "hash": "sha256-fjlvP5PPmSSNYefYRrEBVdhbN3yZ0pCbvIe763U5y5o="
   }
 }
diff --git a/pkgs/by-name/ma/makejinja/package.nix b/pkgs/by-name/ma/makejinja/package.nix
new file mode 100644
index 000000000000..cc53732ae3d6
--- /dev/null
+++ b/pkgs/by-name/ma/makejinja/package.nix
@@ -0,0 +1,52 @@
+{
+  lib,
+  python3Packages,
+  fetchFromGitHub,
+}:
+
+python3Packages.buildPythonApplication rec {
+  pname = "makejinja";
+  version = "2.6.0";
+  pyproject = true;
+
+  src = fetchFromGitHub {
+    owner = "mirkolenz";
+    repo = "makejinja";
+    rev = "v${version}";
+    hash = "sha256-sH4m+rcHA6nW21xEJon10lS7e5QiFwUyvV49NZ3UY+s=";
+  };
+
+  build-system = with python3Packages; [ poetry-core ];
+
+  dependencies =
+    with python3Packages;
+    [
+      jinja2
+      pyyaml
+      rich-click
+      typed-settings
+      immutables
+    ]
+    ++ typed-settings.optional-dependencies.attrs
+    ++ typed-settings.optional-dependencies.cattrs
+    ++ typed-settings.optional-dependencies.click;
+
+  preCheck = ''
+    substituteInPlace pyproject.toml \
+        --replace-fail "--cov makejinja --cov-report term-missing" ""
+  '';
+
+  nativeCheckInputs = with python3Packages; [ pytestCheckHook ];
+
+  meta = {
+    description = "Generate entire directory structures using Jinja templates with support for external data and custom plugins";
+    homepage = "https://github.com/mirkolenz/makejinja";
+    license = lib.licenses.mit;
+    mainProgram = "makejinja";
+    maintainers = with lib.maintainers; [
+      tomasajt
+      mirkolenz
+    ];
+    platforms = lib.platforms.darwin ++ lib.platforms.linux;
+  };
+}
diff --git a/pkgs/by-name/ma/makima/package.nix b/pkgs/by-name/ma/makima/package.nix
index 176432cdee7a..93aea5d69024 100644
--- a/pkgs/by-name/ma/makima/package.nix
+++ b/pkgs/by-name/ma/makima/package.nix
@@ -7,16 +7,16 @@
 
 rustPlatform.buildRustPackage rec{
   pname = "makima";
-  version = "0.6.5";
+  version = "0.7.2";
 
   src = fetchFromGitHub {
     owner = "cyber-sushi";
     repo = "makima";
     rev = "v${version}";
-    hash = "sha256-Zhr8j1JWxjwUZ3fjXKUEaKp3T6/dekeAxUDys6eniMQ=";
+    hash = "sha256-pLEMKVi1CXp9Jqy+D0Wibhfq8PAH2bm3e1G7jShEKsU=";
   };
 
-  cargoHash = "sha256-LdgS833MKJOEnUmfvnH/sWG9RrRMNwbe5gAgXTUYzh8=";
+  cargoHash = "sha256-EiqmNu0GUE/zFrWkIqrcxZEpv26J39GeWa+tmTlJq4A=";
 
   nativeBuildInputs = [ pkg-config ];
   buildInputs = [ udev ];
diff --git a/pkgs/applications/misc/mako/default.nix b/pkgs/by-name/ma/mako/package.nix
index ca7849c566a9..ad518f00e582 100644
--- a/pkgs/applications/misc/mako/default.nix
+++ b/pkgs/by-name/ma/mako/package.nix
@@ -1,21 +1,20 @@
 { lib, stdenv, fetchFromGitHub, meson, ninja, pkg-config, scdoc
 , systemd, pango, cairo, gdk-pixbuf, jq, bash
 , wayland, wayland-protocols
-, wrapGAppsHook }:
+, wrapGAppsHook3 }:
 
-stdenv.mkDerivation rec {
+stdenv.mkDerivation (finalAttrs: {
   pname = "mako";
-  version = "1.8.0";
+  version = "1.9.0";
 
   src = fetchFromGitHub {
     owner = "emersion";
-    repo = pname;
-    rev = "v${version}";
-    sha256 = "sha256-sUFMcCrc5iNPeAmRbqDaT/n8OIlFJEwJTzY1HMx94RU=";
+    repo = "mako";
+    rev = "refs/tags/v${finalAttrs.version}";
+    sha256 = "sha256-QtYtondP7E5QXLRnmcaOQlAm9fKXctfjxeUFqK6FnnE=";
   };
 
-  depsBuildBuild = [ pkg-config ];
-  nativeBuildInputs = [ meson ninja pkg-config scdoc wayland-protocols wrapGAppsHook ];
+  nativeBuildInputs = [ meson ninja pkg-config scdoc wayland-protocols wrapGAppsHook3 ];
   buildInputs = [ systemd pango cairo gdk-pixbuf wayland ];
 
   mesonFlags = [
@@ -29,12 +28,12 @@ stdenv.mkDerivation rec {
     )
   '';
 
-  meta = with lib; {
+  meta = {
     description = "A lightweight Wayland notification daemon";
     homepage = "https://wayland.emersion.fr/mako/";
-    license = licenses.mit;
-    maintainers = with maintainers; [ dywedir synthetica ];
-    platforms = platforms.linux;
+    license = lib.licenses.mit;
+    maintainers = with lib.maintainers; [ dywedir synthetica ];
+    platforms = lib.platforms.linux;
     mainProgram = "mako";
   };
-}
+})
diff --git a/pkgs/by-name/ma/marwaita-x/package.nix b/pkgs/by-name/ma/marwaita-x/package.nix
index 1fb947272d30..85dfb775dc13 100644
--- a/pkgs/by-name/ma/marwaita-x/package.nix
+++ b/pkgs/by-name/ma/marwaita-x/package.nix
@@ -10,13 +10,13 @@
 
 stdenvNoCC.mkDerivation (finalAttrs: {
   pname = "marwaita-x";
-  version = "0.8.1";
+  version = "1.0";
 
   src = fetchFromGitHub {
     owner = "darkomarko42";
     repo = "marwaita-x";
     rev = finalAttrs.version;
-    sha256 = "sha256-AkhysmA7QTHiH6yLEHFHgXFhRXb3l0elvYfy+oXsvZE=";
+    sha256 = "sha256-uSJfrM1QOTTV03WS6BpQh3GCgkW4+9w3aw+giwiCYWU=";
   };
 
   buildInputs = [
diff --git a/pkgs/by-name/ma/materialx/package.nix b/pkgs/by-name/ma/materialx/package.nix
new file mode 100644
index 000000000000..cac615eaecbb
--- /dev/null
+++ b/pkgs/by-name/ma/materialx/package.nix
@@ -0,0 +1,76 @@
+{
+  lib,
+  stdenv,
+  fetchFromGitHub,
+  cmake,
+  darwin,
+  libX11,
+  libXt,
+  libGL,
+  openimageio,
+  imath,
+  python3Packages,
+  python3
+}:
+
+python3Packages.buildPythonPackage rec {
+  pname = "materialx";
+  version = "1.38.10";
+
+  src = fetchFromGitHub {
+    owner = "AcademySoftwareFoundation";
+    repo = "MaterialX";
+    rev = "v${version}";
+    sha256 = "sha256-/kMHmW2dptZNtjuhE5s+jvPRIdtY+FRiVtMU+tiBgQo=";
+  };
+
+  format = "other";
+
+  nativeBuildInputs = [
+    cmake
+    python3Packages.setuptools
+  ];
+
+  buildInputs =
+    [
+      openimageio
+      imath
+    ]
+    ++ lib.optionals stdenv.isDarwin (
+      with darwin.apple_sdk.frameworks;
+      [
+        OpenGL
+        Cocoa
+      ]
+    )
+    ++ lib.optionals (!stdenv.isDarwin) [
+      libX11
+      libXt
+      libGL
+    ];
+
+  cmakeFlags = [
+    (lib.cmakeBool "MATERIALX_BUILD_OIIO" true)
+    (lib.cmakeBool "MATERIALX_BUILD_PYTHON" true)
+    # don't build MSL shader back-end on x86_x64-darwin, as it requires a newer SDK with metal support
+    (lib.cmakeBool "MATERIALX_BUILD_GEN_MSL" (stdenv.isLinux || (stdenv.isAarch64 && stdenv.isDarwin)))
+  ];
+
+  pythonImportsCheck = [ "MaterialX" ];
+
+  postInstall = ''
+    # Make python lib properly accessible
+    target_dir=$out/${python3.sitePackages}
+    mkdir -p $(dirname $target_dir)
+    # required for cmake to find the bindings, when included in other projects
+    ln -s $out/python $target_dir
+  '';
+
+  meta = {
+    description = "Open standard for representing rich material and look-development content in computer graphics";
+    homepage = "https://materialx.org";
+    maintainers = [ lib.maintainers.gador ];
+    platforms = lib.platforms.unix;
+    license = lib.licenses.mpl20;
+  };
+}
diff --git a/pkgs/by-name/ma/matrix-authentication-service/package.nix b/pkgs/by-name/ma/matrix-authentication-service/package.nix
index 199f42eda350..dce2081a4287 100644
--- a/pkgs/by-name/ma/matrix-authentication-service/package.nix
+++ b/pkgs/by-name/ma/matrix-authentication-service/package.nix
@@ -49,9 +49,9 @@ rustPlatform.buildRustPackage rec {
     sqlite
     zstd
   ] ++ lib.optionals stdenv.isDarwin [
-    darwin.apple_sdk.frameworks.CoreFoundation
-    darwin.apple_sdk.frameworks.Security
-    darwin.apple_sdk.frameworks.SystemConfiguration
+    darwin.apple_sdk_11_0.frameworks.CoreFoundation
+    darwin.apple_sdk_11_0.frameworks.Security
+    darwin.apple_sdk_11_0.frameworks.SystemConfiguration
   ];
 
   env = {
diff --git a/pkgs/by-name/ma/matugen/package.nix b/pkgs/by-name/ma/matugen/package.nix
new file mode 100644
index 000000000000..f2b80a0a76ad
--- /dev/null
+++ b/pkgs/by-name/ma/matugen/package.nix
@@ -0,0 +1,34 @@
+{ lib
+, rustPlatform
+, fetchFromGitHub
+, stdenv
+, darwin
+}:
+
+rustPlatform.buildRustPackage rec {
+  pname = "matugen";
+  version = "2.2.0";
+
+  src = fetchFromGitHub {
+    owner = "InioX";
+    repo = "matugen";
+    rev = "v${version}";
+    hash = "sha256-4VX7Rt+ftEH8nwg59eT7TsvHYUf8/euUmwh/JLc4rLc=";
+  };
+
+  cargoHash = "sha256-axBdOzCUwseV2ltgarmIS3IOYLX3q3rXeA2y6y7aNFI=";
+
+  buildInputs = lib.optionals stdenv.isDarwin [
+    darwin.apple_sdk.frameworks.Security
+    darwin.apple_sdk.frameworks.SystemConfiguration
+  ];
+
+  meta = with lib; {
+    description = "A material you color generation tool";
+    homepage = "git@github.com:InioX/matugen.git";
+    changelog = "https://github.com/InioX/matugen/blob/${src.rev}/CHANGELOG.md";
+    license = licenses.gpl2Only;
+    maintainers = with maintainers; [ lampros ];
+    mainProgram = "matugen";
+  };
+}
diff --git a/pkgs/by-name/ma/mautrix-meta/package.nix b/pkgs/by-name/ma/mautrix-meta/package.nix
index 7de21ab0233c..a49dd7df9ccc 100644
--- a/pkgs/by-name/ma/mautrix-meta/package.nix
+++ b/pkgs/by-name/ma/mautrix-meta/package.nix
@@ -8,7 +8,7 @@
 
 buildGoModule rec {
   pname = "mautrix-meta";
-  version = "0.3.0";
+  version = "0.3.1";
 
   subPackages = [ "." ];
 
@@ -16,12 +16,12 @@ buildGoModule rec {
     owner = "mautrix";
     repo = "meta";
     rev = "v${version}";
-    hash = "sha256-QyVcy9rqj1n1Nn/+gBufd57LyEaXPyu0KQhAUTgNmBA=";
+    hash = "sha256-zU8c/ZAKTKd4dbG056gOCiPzvPNS5/KEkJ2fw48oV00=";
   };
 
   buildInputs = [ olm ];
 
-  vendorHash = "sha256-oQSjP1WY0LuxrMtIrvyKhize91wXJxTzWeH0Y3MsEL4=";
+  vendorHash = "sha256-uwprj4G7HI87ZGr+6Bqkp77nzW6kgV3S5j4NGjbtOwQ=";
 
   passthru = {
     tests = {
diff --git a/pkgs/by-name/ma/maxfetch/package.nix b/pkgs/by-name/ma/maxfetch/package.nix
new file mode 100644
index 000000000000..3b664020a4e8
--- /dev/null
+++ b/pkgs/by-name/ma/maxfetch/package.nix
@@ -0,0 +1,39 @@
+{ lib
+, stdenvNoCC
+, fetchFromGitHub
+, makeBinaryWrapper
+, gnused
+, ncurses
+, procps
+}:
+
+stdenvNoCC.mkDerivation {
+  pname = "maxfetch";
+  version = "unstable-2023-07-31";
+
+  src = fetchFromGitHub {
+    owner = "jobcmax";
+    repo = "maxfetch";
+    rev = "17baa4047073e20572403b70703c69696af6b68d";
+    hash = "sha256-LzOhrFFjGs9GIDjk1lUFKhlnzJuEUrKjBcv1eT3kaY8=";
+  };
+
+  nativeBuildInputs = [ makeBinaryWrapper ];
+
+  installPhase = ''
+    runHook preInstall
+    install -Dm755 maxfetch $out/bin/maxfetch
+    wrapProgram $out/bin/maxfetch \
+     --prefix PATH : ${lib.makeBinPath [ gnused ncurses procps ]}
+    runHook postInstall
+  '';
+
+  meta = with lib; {
+    description = "Nice fetching program written in sh";
+    homepage = "https://github.com/jobcmax/maxfetch";
+    license = licenses.gpl2Plus;
+    mainProgram = "maxfetch";
+    maintainers = with maintainers; [ jtbx ];
+    platforms = platforms.unix;
+  };
+}
diff --git a/pkgs/by-name/mc/mcomix/package.nix b/pkgs/by-name/mc/mcomix/package.nix
index 170386de3e4c..900b40fed4b0 100644
--- a/pkgs/by-name/mc/mcomix/package.nix
+++ b/pkgs/by-name/mc/mcomix/package.nix
@@ -6,7 +6,7 @@
 , mcomix
 , python3
 , testers
-, wrapGAppsHook
+, wrapGAppsHook3
 
   # Recommended Dependencies:
 , p7zip
@@ -34,7 +34,7 @@ python3.pkgs.buildPythonApplication rec {
   nativeBuildInputs = [
     gobject-introspection
     python3.pkgs.setuptools
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   propagatedBuildInputs = with python3.pkgs; [
diff --git a/pkgs/by-name/me/mealie/package.nix b/pkgs/by-name/me/mealie/package.nix
index 2d1512f67ebc..0bd096f7977c 100644
--- a/pkgs/by-name/me/mealie/package.nix
+++ b/pkgs/by-name/me/mealie/package.nix
@@ -112,7 +112,7 @@ in pythonpkgs.buildPythonPackage rec {
 
   postPatch = ''
     substituteInPlace mealie/__init__.py \
-      --replace-fail '__version__ = ' '__version__ = "${version}" #'
+      --replace-fail '__version__ = ' '__version__ = "v${version}" #'
   '';
 
   postInstall = let
diff --git a/pkgs/by-name/me/mediainfo-gui/package.nix b/pkgs/by-name/me/mediainfo-gui/package.nix
index a321db523179..7016a9a6cc4c 100644
--- a/pkgs/by-name/me/mediainfo-gui/package.nix
+++ b/pkgs/by-name/me/mediainfo-gui/package.nix
@@ -6,11 +6,11 @@ let
 in
 stdenv.mkDerivation rec {
   pname = "mediainfo-gui";
-  version = "24.03";
+  version = "24.04";
 
   src = fetchurl {
     url = "https://mediaarea.net/download/source/mediainfo/${version}/mediainfo_${version}.tar.xz";
-    hash = "sha256-b/jx+i+FmhMJH3Wiz5E0hmRPbiWa0cJa+5qT5IRExWM=";
+    hash = "sha256-6+sctwGiMFnHNsszuRoxcsT5jnNB5EoLMKEZGRkaJ00=";
   };
 
   nativeBuildInputs = [ autoreconfHook pkg-config ];
diff --git a/pkgs/by-name/me/mediainfo/package.nix b/pkgs/by-name/me/mediainfo/package.nix
index 4fcaf4636d42..581b37dcde30 100644
--- a/pkgs/by-name/me/mediainfo/package.nix
+++ b/pkgs/by-name/me/mediainfo/package.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   pname = "mediainfo";
-  version = "24.03";
+  version = "24.04";
 
   src = fetchurl {
     url = "https://mediaarea.net/download/source/mediainfo/${version}/mediainfo_${version}.tar.xz";
-    hash = "sha256-b/jx+i+FmhMJH3Wiz5E0hmRPbiWa0cJa+5qT5IRExWM=";
+    hash = "sha256-6+sctwGiMFnHNsszuRoxcsT5jnNB5EoLMKEZGRkaJ00=";
   };
 
   nativeBuildInputs = [ autoreconfHook pkg-config ];
diff --git a/pkgs/by-name/me/mednaffe/package.nix b/pkgs/by-name/me/mednaffe/package.nix
index 5625c380eaa7..572275490800 100644
--- a/pkgs/by-name/me/mednaffe/package.nix
+++ b/pkgs/by-name/me/mednaffe/package.nix
@@ -6,7 +6,7 @@
   mednafen,
   pkg-config,
   stdenv,
-  wrapGAppsHook,
+  wrapGAppsHook3,
 }:
 
 stdenv.mkDerivation (finalAttrs: {
@@ -23,7 +23,7 @@ stdenv.mkDerivation (finalAttrs: {
   nativeBuildInputs = [
     autoreconfHook
     pkg-config
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
diff --git a/pkgs/by-name/me/megapixels/package.nix b/pkgs/by-name/me/megapixels/package.nix
index 74ced5c3af26..91bd2b302b94 100644
--- a/pkgs/by-name/me/megapixels/package.nix
+++ b/pkgs/by-name/me/megapixels/package.nix
@@ -29,13 +29,13 @@ let
 in
 stdenv.mkDerivation (finalAttrs: {
   pname = "megapixels";
-  version = "1.8.1";
+  version = "1.8.2";
 
   src = fetchFromGitLab {
     owner = "megapixels-org";
     repo = "Megapixels";
     rev = finalAttrs.version;
-    hash = "sha256-TXiPJbd4TPpsEvmD97F7xkm4rS1g+ViTVTNlxeXrQaw=";
+    hash = "sha256-odsOYrk//ZhodsumLpJjhPDcwF1gkE/no166u+IDxSY=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/by-name/me/meli/package.nix b/pkgs/by-name/me/meli/package.nix
index a4ff654ad892..ab5d838c0ae4 100644
--- a/pkgs/by-name/me/meli/package.nix
+++ b/pkgs/by-name/me/meli/package.nix
@@ -22,7 +22,7 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "meli";
-  version = "0.8.4";
+  version = "0.8.5";
 
   src = fetchzip {
     urls = [
@@ -30,10 +30,10 @@ rustPlatform.buildRustPackage rec {
       "https://codeberg.org/meli/meli/archive/v${version}.tar.gz"
       "https://github.com/meli/meli/archive/refs/tags/v${version}.tar.gz"
     ];
-    hash = "sha256-wmIlYgXB17/i9Q+6C7pbcEjVlEuvhmqrSH+cDmaBKLs=";
+    hash = "sha256-xfc4DZGKQi/n87JcjTl+s2UFJ20v+6JmzSL36pZlSc0=";
   };
 
-  cargoHash = "sha256-gYS/dxNMz/HkCmRXH5AdHPXJ2giqpAHc4eVXJGOpMDM=";
+  cargoHash = "sha256-7ax3VQ+McmzxdG8TeKnMnD0uJmM0pi9Sskfdl2SZkz4=";
 
   # Needed to get openssl-sys to use pkg-config
   OPENSSL_NO_VENDOR=1;
diff --git a/pkgs/by-name/me/melonDS/package.nix b/pkgs/by-name/me/melonDS/package.nix
index 334b5909496c..7fc24f718d84 100644
--- a/pkgs/by-name/me/melonDS/package.nix
+++ b/pkgs/by-name/me/melonDS/package.nix
@@ -23,13 +23,13 @@ let
 in
 stdenv.mkDerivation (finalAttrs: {
   pname = "melonDS";
-  version = "0.9.5-unstable-2024-04-18";
+  version = "0.9.5-unstable-2024-05-13";
 
   src = fetchFromGitHub {
     owner = "melonDS-emu";
     repo = "melonDS";
-    rev = "ba8d547dfa81539f4e8474152d92e866ad89241b";
-    hash = "sha256-va4KegM2z0GSA43goUynRPNPvQnrV2b8oNOfLKPE+Zc=";
+    rev = "5df83c97c766bff3da8ba5a1504a6a5974467133";
+    hash = "sha256-Fo+HtTvkfrHU361ccH9zPifRoR6tNcw9gKIaExKEQh4=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/by-name/me/menulibre/package.nix b/pkgs/by-name/me/menulibre/package.nix
index 134c7cc98cc9..414f591965eb 100644
--- a/pkgs/by-name/me/menulibre/package.nix
+++ b/pkgs/by-name/me/menulibre/package.nix
@@ -5,7 +5,7 @@
 , gtk3
 , intltool
 , gobject-introspection
-, wrapGAppsHook
+, wrapGAppsHook3
 , nix-update-script
 , testers
 , menulibre
@@ -33,7 +33,7 @@ python3Packages.buildPythonApplication rec {
     gtk3
     intltool
     gobject-introspection
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   postPatch = ''
diff --git a/pkgs/by-name/me/mermaid-cli/package.nix b/pkgs/by-name/me/mermaid-cli/package.nix
index d00da6941cf8..a11b5504bca5 100644
--- a/pkgs/by-name/me/mermaid-cli/package.nix
+++ b/pkgs/by-name/me/mermaid-cli/package.nix
@@ -11,18 +11,18 @@
 
 stdenv.mkDerivation rec {
   pname = "mermaid-cli";
-  version = "10.8.0";
+  version = "10.9.0";
 
   src = fetchFromGitHub {
     owner = "mermaid-js";
     repo = "mermaid-cli";
     rev = version;
-    hash = "sha256-nCLLv8QXx9N4WiUFw3WB+Rpfd4H4oCFa1ac01al+ovY=";
+    hash = "sha256-o9QaJsJlfqsAguYGHAdf8aqZWbOgDJs+0KVQAVtRlA0=";
   };
 
   offlineCache = fetchYarnDeps {
     yarnLock = "${src}/yarn.lock";
-    hash = "sha256-thZxaa7S3vlS1Ws+G5dklun+ISCV908p1Ov7qb8fP3c=";
+    hash = "sha256-SfRzn5FxO+Ls+ne7ay3tySNLr+awEJ9fo/nwcAY11qA=";
   };
 
   nativeBuildInputs  = [
diff --git a/pkgs/by-name/mg/mgba/package.nix b/pkgs/by-name/mg/mgba/package.nix
index 8f23998f01e0..6eaf56419d65 100644
--- a/pkgs/by-name/mg/mgba/package.nix
+++ b/pkgs/by-name/mg/mgba/package.nix
@@ -14,7 +14,7 @@
   minizip,
   pkg-config,
   stdenv,
-  wrapGAppsHook,
+  wrapGAppsHook3,
   enableDiscordRpc ? false,
 }:
 
@@ -42,7 +42,7 @@ stdenv.mkDerivation (finalAttrs: {
     SDL2
     cmake
     pkg-config
-    wrapGAppsHook
+    wrapGAppsHook3
     wrapQtAppsHook
   ];
 
diff --git a/pkgs/by-name/mi/mini-calc/package.nix b/pkgs/by-name/mi/mini-calc/package.nix
index d8a385121e1a..ad717a93f3ff 100644
--- a/pkgs/by-name/mi/mini-calc/package.nix
+++ b/pkgs/by-name/mi/mini-calc/package.nix
@@ -4,27 +4,35 @@
   fetchFromGitHub,
   gnuplot,
   makeWrapper,
+  testers,
+  mini-calc,
 }:
 rustPlatform.buildRustPackage rec {
   pname = "mini-calc";
-  version = "2.13.0";
+  version = "2.13.2";
 
   src = fetchFromGitHub {
     owner = "coco33920";
     repo = "calc";
     rev = version;
-    hash = "sha256-rvQXn0VuOjB7CSf+bDTGxjeMKpbJGhVmyDLNYSy/Mlw=";
+    hash = "sha256-qLPIo+Ht34YApWwl16Xscq2+vlAdlbCK5AeKy5q9cO0=";
   };
 
-  cargoHash = "sha256-QFzrJBnGKAgDhjbbik0WP3Y1fNoHMAiWpEHfidFQGPk=";
+  cargoHash = "sha256-oWN9JLPswNKRKDG3dh3z7aleAaqQ7AlMP+Zp2BpBueE=";
 
   nativeBuildInputs = [ makeWrapper ];
   postFixup = ''
     wrapProgram $out/bin/mini-calc \
       --prefix PATH : "${lib.makeBinPath [ gnuplot ]}"
-
   '';
 
+  passthru.tests.version = testers.testVersion {
+    package = mini-calc;
+    # `mini-calc -v` does not output in the test env, fallback to pipe
+    command = "echo -v | mini-calc";
+    version = "v${version}";
+  };
+
   meta = {
     description = "A fully-featured minimalistic configurable calculator written in Rust";
     changelog = "https://github.com/coco33920/calc/blob/${version}/CHANGELOG.md";
diff --git a/pkgs/by-name/mi/miracode/package.nix b/pkgs/by-name/mi/miracode/package.nix
new file mode 100644
index 000000000000..4dc1ad3f4eb3
--- /dev/null
+++ b/pkgs/by-name/mi/miracode/package.nix
@@ -0,0 +1,32 @@
+{ stdenvNoCC, lib, fetchurl }:
+
+let
+  version = "1.0";
+in
+stdenvNoCC.mkDerivation {
+  pname = "miracode";
+  inherit version;
+
+  src = fetchurl {
+    url = "https://github.com/IdreesInc/Miracode/releases/download/v${version}/Miracode.ttf";
+    hash = "sha256-Q+/D/TPlqOt779qYS/dF7ahEd3Mm4a4G+wdHB+Gutmo=";
+  };
+
+  dontUnpack = true;
+  dontConfigure = true;
+  dontBuild = true;
+
+  installPhase = ''
+    runHook preInstall
+    install -Dm644 $src $out/share/fonts/truetype/Miracode.ttf
+    runHook postInstall
+  '';
+
+  meta = with lib; {
+    description = "A sharp, readable, vector-y version of Monocraft";
+    homepage = "https://github.com/IdreesInc/Miracode";
+    license = licenses.ofl;
+    platforms = platforms.all;
+    maintainers = with maintainers; [ coca ];
+  };
+}
diff --git a/pkgs/by-name/mi/misconfig-mapper/package.nix b/pkgs/by-name/mi/misconfig-mapper/package.nix
new file mode 100644
index 000000000000..971fd8a64174
--- /dev/null
+++ b/pkgs/by-name/mi/misconfig-mapper/package.nix
@@ -0,0 +1,33 @@
+{
+  lib,
+  buildGoModule,
+  fetchFromGitHub,
+}:
+
+buildGoModule rec {
+  pname = "misconfig-mapper";
+  version = "1.1.1";
+
+  src = fetchFromGitHub {
+    owner = "intigriti";
+    repo = "misconfig-mapper";
+    rev = "refs/tags/v${version}";
+    hash = "sha256-D9VQthfkWC+qmqIZKIVuFuf9ZDNtyRmjh7tT/QGhQig=";
+  };
+
+  vendorHash = "sha256-lkVTgnWdk9eW6QtKScK8NckcXGzsHeIwjSoUx85AGU8=";
+
+  ldflags = [
+    "-s"
+    "-w"
+  ];
+
+  meta = with lib; {
+    description = "Tool to uncover security misconfigurations on popular third-party services";
+    homepage = "https://github.com/intigriti/misconfig-mapper";
+    changelog = "https://github.com/intigriti/misconfig-mapper/releases/tag/v${version}";
+    license = licenses.mit;
+    maintainers = with maintainers; [ fab ];
+    mainProgram = "misconfig-mapper";
+  };
+}
diff --git a/pkgs/by-name/mo/modprobed-db/package.nix b/pkgs/by-name/mo/modprobed-db/package.nix
index 2a307aeb832c..84edaa3f6350 100644
--- a/pkgs/by-name/mo/modprobed-db/package.nix
+++ b/pkgs/by-name/mo/modprobed-db/package.nix
@@ -9,7 +9,7 @@
 }:
 let
   pname = "modprobed-db";
-  version = "2.46";
+  version = "2.47";
 in
 stdenv.mkDerivation {
   inherit pname version;
@@ -18,7 +18,7 @@ stdenv.mkDerivation {
     owner = "graysky2";
     repo = "modprobed-db";
     rev = "v${version}";
-    hash = "sha256-GQME5CAZsGVHSPowKQMyUR7OjHeFZi/5YcWFUT9L/AQ=";
+    hash = "sha256-r/2ZENricRE03eyFnWDnfPNAz2863/9HKlF6a2xOkc0=";
   };
 
   strictDeps = true;
diff --git a/pkgs/by-name/mo/modrinth-app-unwrapped/Cargo.lock b/pkgs/by-name/mo/modrinth-app-unwrapped/Cargo.lock
new file mode 100644
index 000000000000..beb4423be95b
--- /dev/null
+++ b/pkgs/by-name/mo/modrinth-app-unwrapped/Cargo.lock
@@ -0,0 +1,6712 @@
+# This file is automatically @generated by Cargo.
+# It is not intended for manual editing.
+version = 3
+
+[[package]]
+name = "addr2line"
+version = "0.21.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "8a30b2e23b9e17a9f90641c7ab1549cd9b44f296d3ccbf309d2863cfe398a0cb"
+dependencies = [
+ "gimli",
+]
+
+[[package]]
+name = "adler"
+version = "1.0.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "f26201604c87b1e01bd3d98f8d5d9a8fcbb815e8cedb41ffccbeb4bf593a35fe"
+
+[[package]]
+name = "aes"
+version = "0.8.4"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "b169f7a6d4742236a0a00c541b845991d0ac43e546831af1249753ab4c3aa3a0"
+dependencies = [
+ "cfg-if",
+ "cipher",
+ "cpufeatures",
+]
+
+[[package]]
+name = "aho-corasick"
+version = "1.1.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "8e60d3430d3a69478ad0993f19238d2df97c507009a52b3c10addcd7f6bcb916"
+dependencies = [
+ "memchr",
+]
+
+[[package]]
+name = "alloc-no-stdlib"
+version = "2.0.4"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "cc7bb162ec39d46ab1ca8c77bf72e890535becd1751bb45f64c597edb4c8c6b3"
+
+[[package]]
+name = "alloc-stdlib"
+version = "0.2.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "94fb8275041c72129eb51b7d0322c29b8387a0386127718b096429201a5d6ece"
+dependencies = [
+ "alloc-no-stdlib",
+]
+
+[[package]]
+name = "android-tzdata"
+version = "0.1.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "e999941b234f3131b00bc13c22d06e8c5ff726d1b6318ac7eb276997bbb4fef0"
+
+[[package]]
+name = "android_system_properties"
+version = "0.1.5"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "819e7219dbd41043ac279b19830f2efc897156490d7fd6ea916720117ee66311"
+dependencies = [
+ "libc",
+]
+
+[[package]]
+name = "anyhow"
+version = "1.0.82"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "f538837af36e6f6a9be0faa67f9a314f8119e4e4b5867c6ab40ed60360142519"
+
+[[package]]
+name = "async-broadcast"
+version = "0.5.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "7c48ccdbf6ca6b121e0f586cbc0e73ae440e56c67c30fa0873b4e110d9c26d2b"
+dependencies = [
+ "event-listener 2.5.3",
+ "futures-core",
+]
+
+[[package]]
+name = "async-channel"
+version = "2.2.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "136d4d23bcc79e27423727b36823d86233aad06dfea531837b038394d11e9928"
+dependencies = [
+ "concurrent-queue",
+ "event-listener 5.3.0",
+ "event-listener-strategy 0.5.1",
+ "futures-core",
+ "pin-project-lite",
+]
+
+[[package]]
+name = "async-compression"
+version = "0.4.8"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "07dbbf24db18d609b1462965249abdf49129ccad073ec257da372adc83259c60"
+dependencies = [
+ "bzip2",
+ "deflate64",
+ "flate2",
+ "futures-core",
+ "futures-io",
+ "memchr",
+ "pin-project-lite",
+ "xz2",
+ "zstd 0.13.1",
+ "zstd-safe 7.1.0",
+]
+
+[[package]]
+name = "async-executor"
+version = "1.11.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "b10202063978b3351199d68f8b22c4e47e4b1b822f8d43fd862d5ea8c006b29a"
+dependencies = [
+ "async-task",
+ "concurrent-queue",
+ "fastrand 2.0.2",
+ "futures-lite 2.3.0",
+ "slab",
+]
+
+[[package]]
+name = "async-fs"
+version = "1.6.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "279cf904654eeebfa37ac9bb1598880884924aab82e290aa65c9e77a0e142e06"
+dependencies = [
+ "async-lock 2.8.0",
+ "autocfg",
+ "blocking",
+ "futures-lite 1.13.0",
+]
+
+[[package]]
+name = "async-io"
+version = "1.13.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "0fc5b45d93ef0529756f812ca52e44c221b35341892d3dcc34132ac02f3dd2af"
+dependencies = [
+ "async-lock 2.8.0",
+ "autocfg",
+ "cfg-if",
+ "concurrent-queue",
+ "futures-lite 1.13.0",
+ "log",
+ "parking",
+ "polling 2.8.0",
+ "rustix 0.37.27",
+ "slab",
+ "socket2 0.4.10",
+ "waker-fn",
+]
+
+[[package]]
+name = "async-io"
+version = "2.3.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "dcccb0f599cfa2f8ace422d3555572f47424da5648a4382a9dd0310ff8210884"
+dependencies = [
+ "async-lock 3.3.0",
+ "cfg-if",
+ "concurrent-queue",
+ "futures-io",
+ "futures-lite 2.3.0",
+ "parking",
+ "polling 3.7.0",
+ "rustix 0.38.34",
+ "slab",
+ "tracing",
+ "windows-sys 0.52.0",
+]
+
+[[package]]
+name = "async-lock"
+version = "2.8.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "287272293e9d8c41773cec55e365490fe034813a2f172f502d6ddcf75b2f582b"
+dependencies = [
+ "event-listener 2.5.3",
+]
+
+[[package]]
+name = "async-lock"
+version = "3.3.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "d034b430882f8381900d3fe6f0aaa3ad94f2cb4ac519b429692a1bc2dda4ae7b"
+dependencies = [
+ "event-listener 4.0.3",
+ "event-listener-strategy 0.4.0",
+ "pin-project-lite",
+]
+
+[[package]]
+name = "async-process"
+version = "1.8.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "ea6438ba0a08d81529c69b36700fa2f95837bfe3e776ab39cde9c14d9149da88"
+dependencies = [
+ "async-io 1.13.0",
+ "async-lock 2.8.0",
+ "async-signal",
+ "blocking",
+ "cfg-if",
+ "event-listener 3.1.0",
+ "futures-lite 1.13.0",
+ "rustix 0.38.34",
+ "windows-sys 0.48.0",
+]
+
+[[package]]
+name = "async-recursion"
+version = "1.1.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "30c5ef0ede93efbf733c1a727f3b6b5a1060bbedd5600183e66f6e4be4af0ec5"
+dependencies = [
+ "proc-macro2",
+ "quote",
+ "syn 2.0.60",
+]
+
+[[package]]
+name = "async-signal"
+version = "0.2.6"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "afe66191c335039c7bb78f99dc7520b0cbb166b3a1cb33a03f53d8a1c6f2afda"
+dependencies = [
+ "async-io 2.3.2",
+ "async-lock 3.3.0",
+ "atomic-waker",
+ "cfg-if",
+ "futures-core",
+ "futures-io",
+ "rustix 0.38.34",
+ "signal-hook-registry",
+ "slab",
+ "windows-sys 0.52.0",
+]
+
+[[package]]
+name = "async-task"
+version = "4.7.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "fbb36e985947064623dbd357f727af08ffd077f93d696782f3c56365fa2e2799"
+
+[[package]]
+name = "async-trait"
+version = "0.1.80"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "c6fa2087f2753a7da8cc1c0dbfcf89579dd57458e36769de5ac750b4671737ca"
+dependencies = [
+ "proc-macro2",
+ "quote",
+ "syn 2.0.60",
+]
+
+[[package]]
+name = "async-tungstenite"
+version = "0.25.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "2cca750b12e02c389c1694d35c16539f88b8bbaa5945934fdc1b41a776688589"
+dependencies = [
+ "futures-io",
+ "futures-util",
+ "log",
+ "native-tls",
+ "pin-project-lite",
+ "tokio",
+ "tokio-native-tls",
+ "tungstenite",
+]
+
+[[package]]
+name = "async_zip"
+version = "0.0.17"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "00b9f7252833d5ed4b00aa9604b563529dd5e11de9c23615de2dcdf91eb87b52"
+dependencies = [
+ "async-compression",
+ "chrono",
+ "crc32fast",
+ "futures-lite 2.3.0",
+ "pin-project",
+ "thiserror",
+ "tokio",
+ "tokio-util",
+]
+
+[[package]]
+name = "atk"
+version = "0.15.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "2c3d816ce6f0e2909a96830d6911c2aff044370b1ef92d7f267b43bae5addedd"
+dependencies = [
+ "atk-sys",
+ "bitflags 1.3.2",
+ "glib",
+ "libc",
+]
+
+[[package]]
+name = "atk-sys"
+version = "0.15.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "58aeb089fb698e06db8089971c7ee317ab9644bade33383f63631437b03aafb6"
+dependencies = [
+ "glib-sys",
+ "gobject-sys",
+ "libc",
+ "system-deps 6.2.2",
+]
+
+[[package]]
+name = "atomic-waker"
+version = "1.1.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "1505bd5d3d116872e7271a6d4e16d81d0c8570876c8de68093a09ac269d8aac0"
+
+[[package]]
+name = "autocfg"
+version = "1.2.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "f1fdabc7756949593fe60f30ec81974b613357de856987752631dea1e3394c80"
+
+[[package]]
+name = "backtrace"
+version = "0.3.71"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "26b05800d2e817c8b3b4b54abd461726265fa9789ae34330622f2db9ee696f9d"
+dependencies = [
+ "addr2line",
+ "cc",
+ "cfg-if",
+ "libc",
+ "miniz_oxide",
+ "object",
+ "rustc-demangle",
+]
+
+[[package]]
+name = "base16ct"
+version = "0.2.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "4c7f02d4ea65f2c1853089ffd8d2787bdbc63de2f0d29dedbcf8ccdfa0ccd4cf"
+
+[[package]]
+name = "base64"
+version = "0.13.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "9e1b586273c5702936fe7b7d6896644d8be71e6314cfe09d3167c95f712589e8"
+
+[[package]]
+name = "base64"
+version = "0.21.7"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "9d297deb1925b89f2ccc13d7635fa0714f12c87adce1c75356b39ca9b7178567"
+
+[[package]]
+name = "base64"
+version = "0.22.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "9475866fec1451be56a3c2400fd081ff546538961565ccb5b7142cbd22bc7a51"
+
+[[package]]
+name = "base64ct"
+version = "1.6.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "8c3c1a368f70d6cf7302d78f8f7093da241fb8e8807c05cc9e51a125895a6d5b"
+
+[[package]]
+name = "bincode"
+version = "1.3.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "b1f45e9417d87227c7a56d22e471c6206462cba514c7590c09aff4cf6d1ddcad"
+dependencies = [
+ "serde",
+]
+
+[[package]]
+name = "bincode"
+version = "2.0.0-rc.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "f11ea1a0346b94ef188834a65c068a03aec181c94896d481d7a0a40d85b0ce95"
+dependencies = [
+ "bincode_derive",
+ "serde",
+]
+
+[[package]]
+name = "bincode_derive"
+version = "2.0.0-rc.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "7e30759b3b99a1b802a7a3aa21c85c3ded5c28e1c83170d82d70f08bbf7f3e4c"
+dependencies = [
+ "virtue",
+]
+
+[[package]]
+name = "bitflags"
+version = "1.3.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a"
+
+[[package]]
+name = "bitflags"
+version = "2.5.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "cf4b9d6a944f767f8e5e0db018570623c85f3d925ac718db4e06d0187adb21c1"
+
+[[package]]
+name = "block"
+version = "0.1.6"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "0d8c1fef690941d3e7788d328517591fecc684c084084702d6ff1641e993699a"
+
+[[package]]
+name = "block-buffer"
+version = "0.10.4"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "3078c7629b62d3f0439517fa394996acacc5cbc91c5a20d8c658e77abd503a71"
+dependencies = [
+ "generic-array",
+]
+
+[[package]]
+name = "blocking"
+version = "1.5.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "6a37913e8dc4ddcc604f0c6d3bf2887c995153af3611de9e23c352b44c1b9118"
+dependencies = [
+ "async-channel",
+ "async-lock 3.3.0",
+ "async-task",
+ "fastrand 2.0.2",
+ "futures-io",
+ "futures-lite 2.3.0",
+ "piper",
+ "tracing",
+]
+
+[[package]]
+name = "brotli"
+version = "3.5.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "d640d25bc63c50fb1f0b545ffd80207d2e10a4c965530809b40ba3386825c391"
+dependencies = [
+ "alloc-no-stdlib",
+ "alloc-stdlib",
+ "brotli-decompressor",
+]
+
+[[package]]
+name = "brotli-decompressor"
+version = "2.5.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "4e2e4afe60d7dd600fdd3de8d0f08c2b7ec039712e3b6137ff98b7004e82de4f"
+dependencies = [
+ "alloc-no-stdlib",
+ "alloc-stdlib",
+]
+
+[[package]]
+name = "bstr"
+version = "1.9.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "05efc5cfd9110c8416e471df0e96702d58690178e206e61b7173706673c93706"
+dependencies = [
+ "memchr",
+ "serde",
+]
+
+[[package]]
+name = "bumpalo"
+version = "3.16.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "79296716171880943b8470b5f8d03aa55eb2e645a4874bdbb28adb49162e012c"
+
+[[package]]
+name = "bytemuck"
+version = "1.15.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "5d6d68c57235a3a081186990eca2867354726650f42f7516ca50c28d6281fd15"
+
+[[package]]
+name = "byteorder"
+version = "1.5.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "1fd0f2584146f6f2ef48085050886acf353beff7305ebd1ae69500e27c67f64b"
+
+[[package]]
+name = "bytes"
+version = "1.6.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "514de17de45fdb8dc022b1a7975556c53c86f9f0aa5f534b98977b171857c2c9"
+dependencies = [
+ "serde",
+]
+
+[[package]]
+name = "bzip2"
+version = "0.4.4"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "bdb116a6ef3f6c3698828873ad02c3014b3c85cadb88496095628e3ef1e347f8"
+dependencies = [
+ "bzip2-sys",
+ "libc",
+]
+
+[[package]]
+name = "bzip2-sys"
+version = "0.1.11+1.0.8"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "736a955f3fa7875102d57c82b8cac37ec45224a07fd32d58f9f7a186b6cd4cdc"
+dependencies = [
+ "cc",
+ "libc",
+ "pkg-config",
+]
+
+[[package]]
+name = "cairo-rs"
+version = "0.15.12"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "c76ee391b03d35510d9fa917357c7f1855bd9a6659c95a1b392e33f49b3369bc"
+dependencies = [
+ "bitflags 1.3.2",
+ "cairo-sys-rs",
+ "glib",
+ "libc",
+ "thiserror",
+]
+
+[[package]]
+name = "cairo-sys-rs"
+version = "0.15.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "3c55d429bef56ac9172d25fecb85dc8068307d17acd74b377866b7a1ef25d3c8"
+dependencies = [
+ "glib-sys",
+ "libc",
+ "system-deps 6.2.2",
+]
+
+[[package]]
+name = "cargo_toml"
+version = "0.15.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "599aa35200ffff8f04c1925aa1acc92fa2e08874379ef42e210a80e527e60838"
+dependencies = [
+ "serde",
+ "toml 0.7.8",
+]
+
+[[package]]
+name = "cc"
+version = "1.0.95"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "d32a725bc159af97c3e629873bb9f88fb8cf8a4867175f76dc987815ea07c83b"
+dependencies = [
+ "jobserver",
+ "libc",
+ "once_cell",
+]
+
+[[package]]
+name = "cesu8"
+version = "1.1.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "6d43a04d8753f35258c91f8ec639f792891f748a1edbd759cf1dcea3382ad83c"
+
+[[package]]
+name = "cfb"
+version = "0.7.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "d38f2da7a0a2c4ccf0065be06397cc26a81f4e528be095826eee9d4adbb8c60f"
+dependencies = [
+ "byteorder",
+ "fnv",
+ "uuid 1.8.0",
+]
+
+[[package]]
+name = "cfg-expr"
+version = "0.9.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "3431df59f28accaf4cb4eed4a9acc66bea3f3c3753aa6cdc2f024174ef232af7"
+dependencies = [
+ "smallvec",
+]
+
+[[package]]
+name = "cfg-expr"
+version = "0.15.8"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "d067ad48b8650848b989a59a86c6c36a995d02d2bf778d45c3c5d57bc2718f02"
+dependencies = [
+ "smallvec",
+ "target-lexicon",
+]
+
+[[package]]
+name = "cfg-if"
+version = "1.0.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd"
+
+[[package]]
+name = "cfg_aliases"
+version = "0.1.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "fd16c4719339c4530435d38e511904438d07cce7950afa3718a84ac36c10e89e"
+
+[[package]]
+name = "chrono"
+version = "0.4.38"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "a21f936df1771bf62b77f047b726c4625ff2e8aa607c01ec06e5a05bd8463401"
+dependencies = [
+ "android-tzdata",
+ "iana-time-zone",
+ "js-sys",
+ "num-traits",
+ "serde",
+ "wasm-bindgen",
+ "windows-targets 0.52.5",
+]
+
+[[package]]
+name = "cipher"
+version = "0.4.4"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "773f3b9af64447d2ce9850330c473515014aa235e6a783b02db81ff39e4a3dad"
+dependencies = [
+ "crypto-common",
+ "inout",
+]
+
+[[package]]
+name = "cocoa"
+version = "0.24.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "f425db7937052c684daec3bd6375c8abe2d146dca4b8b143d6db777c39138f3a"
+dependencies = [
+ "bitflags 1.3.2",
+ "block",
+ "cocoa-foundation",
+ "core-foundation",
+ "core-graphics 0.22.3",
+ "foreign-types 0.3.2",
+ "libc",
+ "objc",
+]
+
+[[package]]
+name = "cocoa"
+version = "0.25.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "f6140449f97a6e97f9511815c5632d84c8aacf8ac271ad77c559218161a1373c"
+dependencies = [
+ "bitflags 1.3.2",
+ "block",
+ "cocoa-foundation",
+ "core-foundation",
+ "core-graphics 0.23.2",
+ "foreign-types 0.5.0",
+ "libc",
+ "objc",
+]
+
+[[package]]
+name = "cocoa-foundation"
+version = "0.1.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "8c6234cbb2e4c785b456c0644748b1ac416dd045799740356f8363dfe00c93f7"
+dependencies = [
+ "bitflags 1.3.2",
+ "block",
+ "core-foundation",
+ "core-graphics-types",
+ "libc",
+ "objc",
+]
+
+[[package]]
+name = "color_quant"
+version = "1.1.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "3d7b894f5411737b7867f4827955924d7c254fc9f4d91a6aad6b097804b1018b"
+
+[[package]]
+name = "combine"
+version = "4.6.7"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "ba5a308b75df32fe02788e748662718f03fde005016435c444eea572398219fd"
+dependencies = [
+ "bytes",
+ "memchr",
+]
+
+[[package]]
+name = "concurrent-queue"
+version = "2.4.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "d16048cd947b08fa32c24458a22f5dc5e835264f689f4f5653210c69fd107363"
+dependencies = [
+ "crossbeam-utils",
+]
+
+[[package]]
+name = "console"
+version = "0.15.8"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "0e1f83fc076bd6dd27517eacdf25fef6c4dfe5f1d7448bafaaf3a26f13b5e4eb"
+dependencies = [
+ "encode_unicode",
+ "lazy_static",
+ "libc",
+ "unicode-width",
+ "windows-sys 0.52.0",
+]
+
+[[package]]
+name = "const-oid"
+version = "0.9.6"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "c2459377285ad874054d797f3ccebf984978aa39129f6eafde5cdc8315b612f8"
+
+[[package]]
+name = "constant_time_eq"
+version = "0.1.5"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "245097e9a4535ee1e3e3931fcfcd55a796a44c643e8596ff6566d68f09b87bbc"
+
+[[package]]
+name = "convert_case"
+version = "0.4.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "6245d59a3e82a7fc217c5828a6692dbc6dfb63a0c8c90495621f7b9d79704a0e"
+
+[[package]]
+name = "core-foundation"
+version = "0.9.4"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "91e195e091a93c46f7102ec7818a2aa394e1e1771c3ab4825963fa03e45afb8f"
+dependencies = [
+ "core-foundation-sys",
+ "libc",
+]
+
+[[package]]
+name = "core-foundation-sys"
+version = "0.8.6"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "06ea2b9bc92be3c2baa9334a323ebca2d6f074ff852cd1d7b11064035cd3868f"
+
+[[package]]
+name = "core-graphics"
+version = "0.22.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "2581bbab3b8ffc6fcbd550bf46c355135d16e9ff2a6ea032ad6b9bf1d7efe4fb"
+dependencies = [
+ "bitflags 1.3.2",
+ "core-foundation",
+ "core-graphics-types",
+ "foreign-types 0.3.2",
+ "libc",
+]
+
+[[package]]
+name = "core-graphics"
+version = "0.23.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "c07782be35f9e1140080c6b96f0d44b739e2278479f64e02fdab4e32dfd8b081"
+dependencies = [
+ "bitflags 1.3.2",
+ "core-foundation",
+ "core-graphics-types",
+ "foreign-types 0.5.0",
+ "libc",
+]
+
+[[package]]
+name = "core-graphics-types"
+version = "0.1.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "45390e6114f68f718cc7a830514a96f903cccd70d02a8f6d9f643ac4ba45afaf"
+dependencies = [
+ "bitflags 1.3.2",
+ "core-foundation",
+ "libc",
+]
+
+[[package]]
+name = "cpufeatures"
+version = "0.2.12"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "53fe5e26ff1b7aef8bca9c6080520cfb8d9333c7568e1829cef191a9723e5504"
+dependencies = [
+ "libc",
+]
+
+[[package]]
+name = "crash-context"
+version = "0.6.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "b85cef661eeca0c6675116310936972c520ebb0a33ddef16fd7efc957f4c1288"
+dependencies = [
+ "cfg-if",
+ "libc",
+ "mach2",
+]
+
+[[package]]
+name = "crash-handler"
+version = "0.6.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "ed56890cb467e9ff5e6fe95254571beebb301990b5c7df5e97a7b203e4f0c4f0"
+dependencies = [
+ "cfg-if",
+ "crash-context",
+ "libc",
+ "mach2",
+ "parking_lot",
+]
+
+[[package]]
+name = "crc32fast"
+version = "1.4.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "b3855a8a784b474f333699ef2bbca9db2c4a1f6d9088a90a2d25b1eb53111eaa"
+dependencies = [
+ "cfg-if",
+]
+
+[[package]]
+name = "crossbeam-channel"
+version = "0.5.12"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "ab3db02a9c5b5121e1e42fbdb1aeb65f5e02624cc58c43f2884c6ccac0b82f95"
+dependencies = [
+ "crossbeam-utils",
+]
+
+[[package]]
+name = "crossbeam-deque"
+version = "0.8.5"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "613f8cc01fe9cf1a3eb3d7f488fd2fa8388403e97039e2f73692932e291a770d"
+dependencies = [
+ "crossbeam-epoch",
+ "crossbeam-utils",
+]
+
+[[package]]
+name = "crossbeam-epoch"
+version = "0.9.18"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "5b82ac4a3c2ca9c3460964f020e1402edd5753411d7737aa39c3714ad1b5420e"
+dependencies = [
+ "crossbeam-utils",
+]
+
+[[package]]
+name = "crossbeam-utils"
+version = "0.8.19"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "248e3bacc7dc6baa3b21e405ee045c3047101a49145e7e9eca583ab4c2ca5345"
+
+[[package]]
+name = "crypto-bigint"
+version = "0.5.5"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "0dc92fb57ca44df6db8059111ab3af99a63d5d0f8375d9972e319a379c6bab76"
+dependencies = [
+ "generic-array",
+ "rand_core 0.6.4",
+ "subtle",
+ "zeroize",
+]
+
+[[package]]
+name = "crypto-common"
+version = "0.1.6"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "1bfb12502f3fc46cca1bb51ac28df9d618d813cdc3d2f25b9fe775a34af26bb3"
+dependencies = [
+ "generic-array",
+ "typenum",
+]
+
+[[package]]
+name = "cssparser"
+version = "0.27.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "754b69d351cdc2d8ee09ae203db831e005560fc6030da058f86ad60c92a9cb0a"
+dependencies = [
+ "cssparser-macros",
+ "dtoa-short",
+ "itoa 0.4.8",
+ "matches",
+ "phf 0.8.0",
+ "proc-macro2",
+ "quote",
+ "smallvec",
+ "syn 1.0.109",
+]
+
+[[package]]
+name = "cssparser-macros"
+version = "0.6.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "13b588ba4ac1a99f7f2964d24b3d896ddc6bf847ee3855dbd4366f058cfcd331"
+dependencies = [
+ "quote",
+ "syn 2.0.60",
+]
+
+[[package]]
+name = "ctor"
+version = "0.2.8"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "edb49164822f3ee45b17acd4a208cfc1251410cf0cad9a833234c9890774dd9f"
+dependencies = [
+ "quote",
+ "syn 2.0.60",
+]
+
+[[package]]
+name = "daedalus"
+version = "0.1.27"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "3b251eb4ed1dd9c417eb098492dcf17f8271ba5722387ffa3ee703bcebdb4838"
+dependencies = [
+ "bincode 2.0.0-rc.3",
+ "bytes",
+ "chrono",
+ "reqwest 0.11.27",
+ "serde",
+ "serde_json",
+ "sha1 0.6.1",
+ "thiserror",
+ "tokio",
+]
+
+[[package]]
+name = "darling"
+version = "0.20.8"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "54e36fcd13ed84ffdfda6f5be89b31287cbb80c439841fe69e04841435464391"
+dependencies = [
+ "darling_core",
+ "darling_macro",
+]
+
+[[package]]
+name = "darling_core"
+version = "0.20.8"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "9c2cf1c23a687a1feeb728783b993c4e1ad83d99f351801977dd809b48d0a70f"
+dependencies = [
+ "fnv",
+ "ident_case",
+ "proc-macro2",
+ "quote",
+ "strsim",
+ "syn 2.0.60",
+]
+
+[[package]]
+name = "darling_macro"
+version = "0.20.8"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "a668eda54683121533a393014d8692171709ff57a7d61f187b6e782719f8933f"
+dependencies = [
+ "darling_core",
+ "quote",
+ "syn 2.0.60",
+]
+
+[[package]]
+name = "data-encoding"
+version = "2.5.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "7e962a19be5cfc3f3bf6dd8f61eb50107f356ad6270fbb3ed41476571db78be5"
+
+[[package]]
+name = "debugid"
+version = "0.8.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "bef552e6f588e446098f6ba40d89ac146c8c7b64aade83c051ee00bb5d2bc18d"
+dependencies = [
+ "serde",
+ "uuid 1.8.0",
+]
+
+[[package]]
+name = "deflate64"
+version = "0.1.8"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "83ace6c86376be0b6cdcf3fb41882e81d94b31587573d1cfa9d01cd06bba210d"
+
+[[package]]
+name = "der"
+version = "0.7.9"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "f55bf8e7b65898637379c1b74eb1551107c8294ed26d855ceb9fd1a09cfc9bc0"
+dependencies = [
+ "const-oid",
+ "pem-rfc7468",
+ "zeroize",
+]
+
+[[package]]
+name = "deranged"
+version = "0.3.11"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "b42b6fa04a440b495c8b04d0e71b707c585f83cb9cb28cf8cd0d976c315e31b4"
+dependencies = [
+ "powerfmt",
+ "serde",
+]
+
+[[package]]
+name = "derivative"
+version = "2.2.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "fcc3dd5e9e9c0b295d6e1e4d811fb6f157d5ffd784b8d202fc62eac8035a770b"
+dependencies = [
+ "proc-macro2",
+ "quote",
+ "syn 1.0.109",
+]
+
+[[package]]
+name = "derive_more"
+version = "0.99.17"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "4fb810d30a7c1953f91334de7244731fc3f3c10d7fe163338a35b9f640960321"
+dependencies = [
+ "convert_case",
+ "proc-macro2",
+ "quote",
+ "rustc_version",
+ "syn 1.0.109",
+]
+
+[[package]]
+name = "digest"
+version = "0.10.7"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "9ed9a281f7bc9b7576e61468ba615a66a5c8cfdff42420a70aa82701a3b1e292"
+dependencies = [
+ "block-buffer",
+ "const-oid",
+ "crypto-common",
+ "subtle",
+]
+
+[[package]]
+name = "dirs"
+version = "5.0.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "44c45a9d03d6676652bcb5e724c7e988de1acad23a711b5217ab9cbecbec2225"
+dependencies = [
+ "dirs-sys",
+]
+
+[[package]]
+name = "dirs-next"
+version = "2.0.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "b98cf8ebf19c3d1b223e151f99a4f9f0690dca41414773390fc824184ac833e1"
+dependencies = [
+ "cfg-if",
+ "dirs-sys-next",
+]
+
+[[package]]
+name = "dirs-sys"
+version = "0.4.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "520f05a5cbd335fae5a99ff7a6ab8627577660ee5cfd6a94a6a929b52ff0321c"
+dependencies = [
+ "libc",
+ "option-ext",
+ "redox_users",
+ "windows-sys 0.48.0",
+]
+
+[[package]]
+name = "dirs-sys-next"
+version = "0.1.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "4ebda144c4fe02d1f7ea1a7d9641b6fc6b580adcfa024ae48797ecdeb6825b4d"
+dependencies = [
+ "libc",
+ "redox_users",
+ "winapi",
+]
+
+[[package]]
+name = "discord-rich-presence"
+version = "0.2.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "47fc4beffb85ee1461588499073a4d9c20dcc7728c4b13d6b282ab6c508947e5"
+dependencies = [
+ "serde",
+ "serde_derive",
+ "serde_json",
+ "uuid 0.8.2",
+]
+
+[[package]]
+name = "dispatch"
+version = "0.2.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "bd0c93bb4b0c6d9b77f4435b0ae98c24d17f1c45b2ff844c6151a07256ca923b"
+
+[[package]]
+name = "dtoa"
+version = "1.0.9"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "dcbb2bf8e87535c23f7a8a321e364ce21462d0ff10cb6407820e8e96dfff6653"
+
+[[package]]
+name = "dtoa-short"
+version = "0.3.4"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "dbaceec3c6e4211c79e7b1800fb9680527106beb2f9c51904a3210c03a448c74"
+dependencies = [
+ "dtoa",
+]
+
+[[package]]
+name = "dunce"
+version = "1.0.4"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "56ce8c6da7551ec6c462cbaf3bfbc75131ebbfa1c944aeaa9dab51ca1c5f0c3b"
+
+[[package]]
+name = "ecdsa"
+version = "0.16.9"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "ee27f32b5c5292967d2d4a9d7f1e0b0aed2c15daded5a60300e4abb9d8020bca"
+dependencies = [
+ "der",
+ "digest",
+ "elliptic-curve",
+ "rfc6979",
+ "signature",
+ "spki",
+]
+
+[[package]]
+name = "either"
+version = "1.11.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "a47c1c47d2f5964e29c61246e81db715514cd532db6b5116a25ea3c03d6780a2"
+
+[[package]]
+name = "elliptic-curve"
+version = "0.13.8"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "b5e6043086bf7973472e0c7dff2142ea0b680d30e18d9cc40f267efbf222bd47"
+dependencies = [
+ "base16ct",
+ "crypto-bigint",
+ "digest",
+ "ff",
+ "generic-array",
+ "group",
+ "pem-rfc7468",
+ "pkcs8",
+ "rand_core 0.6.4",
+ "sec1",
+ "subtle",
+ "zeroize",
+]
+
+[[package]]
+name = "embed-resource"
+version = "2.4.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "c6985554d0688b687c5cb73898a34fbe3ad6c24c58c238a4d91d5e840670ee9d"
+dependencies = [
+ "cc",
+ "memchr",
+ "rustc_version",
+ "toml 0.8.12",
+ "vswhom",
+ "winreg 0.52.0",
+]
+
+[[package]]
+name = "embed_plist"
+version = "1.2.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "4ef6b89e5b37196644d8796de5268852ff179b44e96276cf4290264843743bb7"
+
+[[package]]
+name = "encode_unicode"
+version = "0.3.6"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "a357d28ed41a50f9c765dbfe56cbc04a64e53e5fc58ba79fbc34c10ef3df831f"
+
+[[package]]
+name = "encoding_rs"
+version = "0.8.34"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "b45de904aa0b010bce2ab45264d0631681847fa7b6f2eaa7dab7619943bc4f59"
+dependencies = [
+ "cfg-if",
+]
+
+[[package]]
+name = "enumflags2"
+version = "0.7.9"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "3278c9d5fb675e0a51dabcf4c0d355f692b064171535ba72361be1528a9d8e8d"
+dependencies = [
+ "enumflags2_derive",
+ "serde",
+]
+
+[[package]]
+name = "enumflags2_derive"
+version = "0.7.9"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "5c785274071b1b420972453b306eeca06acf4633829db4223b58a2a8c5953bc4"
+dependencies = [
+ "proc-macro2",
+ "quote",
+ "syn 2.0.60",
+]
+
+[[package]]
+name = "equivalent"
+version = "1.0.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "5443807d6dff69373d433ab9ef5378ad8df50ca6298caf15de6e52e24aaf54d5"
+
+[[package]]
+name = "errno"
+version = "0.3.8"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "a258e46cdc063eb8519c00b9fc845fc47bcfca4130e2f08e88665ceda8474245"
+dependencies = [
+ "libc",
+ "windows-sys 0.52.0",
+]
+
+[[package]]
+name = "event-listener"
+version = "2.5.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "0206175f82b8d6bf6652ff7d71a1e27fd2e4efde587fd368662814d6ec1d9ce0"
+
+[[package]]
+name = "event-listener"
+version = "3.1.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "d93877bcde0eb80ca09131a08d23f0a5c18a620b01db137dba666d18cd9b30c2"
+dependencies = [
+ "concurrent-queue",
+ "parking",
+ "pin-project-lite",
+]
+
+[[package]]
+name = "event-listener"
+version = "4.0.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "67b215c49b2b248c855fb73579eb1f4f26c38ffdc12973e20e07b91d78d5646e"
+dependencies = [
+ "concurrent-queue",
+ "parking",
+ "pin-project-lite",
+]
+
+[[package]]
+name = "event-listener"
+version = "5.3.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "6d9944b8ca13534cdfb2800775f8dd4902ff3fc75a50101466decadfdf322a24"
+dependencies = [
+ "concurrent-queue",
+ "parking",
+ "pin-project-lite",
+]
+
+[[package]]
+name = "event-listener-strategy"
+version = "0.4.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "958e4d70b6d5e81971bebec42271ec641e7ff4e170a6fa605f2b8a8b65cb97d3"
+dependencies = [
+ "event-listener 4.0.3",
+ "pin-project-lite",
+]
+
+[[package]]
+name = "event-listener-strategy"
+version = "0.5.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "332f51cb23d20b0de8458b86580878211da09bcd4503cb579c225b3d124cabb3"
+dependencies = [
+ "event-listener 5.3.0",
+ "pin-project-lite",
+]
+
+[[package]]
+name = "fastrand"
+version = "1.9.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "e51093e27b0797c359783294ca4f0a911c270184cb10f85783b118614a1501be"
+dependencies = [
+ "instant",
+]
+
+[[package]]
+name = "fastrand"
+version = "2.0.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "658bd65b1cf4c852a3cc96f18a8ce7b5640f6b703f905c7d74532294c2a63984"
+
+[[package]]
+name = "fdeflate"
+version = "0.3.4"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "4f9bfee30e4dedf0ab8b422f03af778d9612b63f502710fc500a334ebe2de645"
+dependencies = [
+ "simd-adler32",
+]
+
+[[package]]
+name = "ff"
+version = "0.13.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "ded41244b729663b1e574f1b4fb731469f69f79c17667b5d776b16cda0479449"
+dependencies = [
+ "rand_core 0.6.4",
+ "subtle",
+]
+
+[[package]]
+name = "field-offset"
+version = "0.3.6"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "38e2275cc4e4fc009b0669731a1e5ab7ebf11f469eaede2bab9309a5b4d6057f"
+dependencies = [
+ "memoffset 0.9.1",
+ "rustc_version",
+]
+
+[[package]]
+name = "filetime"
+version = "0.2.23"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "1ee447700ac8aa0b2f2bd7bc4462ad686ba06baa6727ac149a2d6277f0d240fd"
+dependencies = [
+ "cfg-if",
+ "libc",
+ "redox_syscall",
+ "windows-sys 0.52.0",
+]
+
+[[package]]
+name = "findshlibs"
+version = "0.10.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "40b9e59cd0f7e0806cca4be089683ecb6434e602038df21fe6bf6711b2f07f64"
+dependencies = [
+ "cc",
+ "lazy_static",
+ "libc",
+ "winapi",
+]
+
+[[package]]
+name = "flate2"
+version = "1.0.28"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "46303f565772937ffe1d394a4fac6f411c6013172fadde9dcdb1e147a086940e"
+dependencies = [
+ "crc32fast",
+ "miniz_oxide",
+]
+
+[[package]]
+name = "fnv"
+version = "1.0.7"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "3f9eec918d3f24069decb9af1554cad7c880e2da24a9afd88aca000531ab82c1"
+
+[[package]]
+name = "foreign-types"
+version = "0.3.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "f6f339eb8adc052cd2ca78910fda869aefa38d22d5cb648e6485e4d3fc06f3b1"
+dependencies = [
+ "foreign-types-shared 0.1.1",
+]
+
+[[package]]
+name = "foreign-types"
+version = "0.5.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "d737d9aa519fb7b749cbc3b962edcf310a8dd1f4b67c91c4f83975dbdd17d965"
+dependencies = [
+ "foreign-types-macros",
+ "foreign-types-shared 0.3.1",
+]
+
+[[package]]
+name = "foreign-types-macros"
+version = "0.2.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "1a5c6c585bc94aaf2c7b51dd4c2ba22680844aba4c687be581871a6f518c5742"
+dependencies = [
+ "proc-macro2",
+ "quote",
+ "syn 2.0.60",
+]
+
+[[package]]
+name = "foreign-types-shared"
+version = "0.1.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "00b0228411908ca8685dba7fc2cdd70ec9990a6e753e89b6ac91a84c40fbaf4b"
+
+[[package]]
+name = "foreign-types-shared"
+version = "0.3.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "aa9a19cbb55df58761df49b23516a86d432839add4af60fc256da840f66ed35b"
+
+[[package]]
+name = "form_urlencoded"
+version = "1.2.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "e13624c2627564efccf4934284bdd98cbaa14e79b0b5a141218e507b3a823456"
+dependencies = [
+ "percent-encoding",
+]
+
+[[package]]
+name = "fsevent-sys"
+version = "4.1.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "76ee7a02da4d231650c7cea31349b889be2f45ddb3ef3032d2ec8185f6313fd2"
+dependencies = [
+ "libc",
+]
+
+[[package]]
+name = "futf"
+version = "0.1.5"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "df420e2e84819663797d1ec6544b13c5be84629e7bb00dc960d6917db2987843"
+dependencies = [
+ "mac",
+ "new_debug_unreachable",
+]
+
+[[package]]
+name = "futures"
+version = "0.3.30"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "645c6916888f6cb6350d2550b80fb63e734897a8498abe35cfb732b6487804b0"
+dependencies = [
+ "futures-channel",
+ "futures-core",
+ "futures-executor",
+ "futures-io",
+ "futures-sink",
+ "futures-task",
+ "futures-util",
+]
+
+[[package]]
+name = "futures-channel"
+version = "0.3.30"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "eac8f7d7865dcb88bd4373ab671c8cf4508703796caa2b1985a9ca867b3fcb78"
+dependencies = [
+ "futures-core",
+ "futures-sink",
+]
+
+[[package]]
+name = "futures-core"
+version = "0.3.30"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "dfc6580bb841c5a68e9ef15c77ccc837b40a7504914d52e47b8b0e9bbda25a1d"
+
+[[package]]
+name = "futures-executor"
+version = "0.3.30"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "a576fc72ae164fca6b9db127eaa9a9dda0d61316034f33a0a0d4eda41f02b01d"
+dependencies = [
+ "futures-core",
+ "futures-task",
+ "futures-util",
+]
+
+[[package]]
+name = "futures-io"
+version = "0.3.30"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "a44623e20b9681a318efdd71c299b6b222ed6f231972bfe2f224ebad6311f0c1"
+
+[[package]]
+name = "futures-lite"
+version = "1.13.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "49a9d51ce47660b1e808d3c990b4709f2f415d928835a17dfd16991515c46bce"
+dependencies = [
+ "fastrand 1.9.0",
+ "futures-core",
+ "futures-io",
+ "memchr",
+ "parking",
+ "pin-project-lite",
+ "waker-fn",
+]
+
+[[package]]
+name = "futures-lite"
+version = "2.3.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "52527eb5074e35e9339c6b4e8d12600c7128b68fb25dcb9fa9dec18f7c25f3a5"
+dependencies = [
+ "fastrand 2.0.2",
+ "futures-core",
+ "futures-io",
+ "parking",
+ "pin-project-lite",
+]
+
+[[package]]
+name = "futures-macro"
+version = "0.3.30"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "87750cf4b7a4c0625b1529e4c543c2182106e4dedc60a2a6455e00d212c489ac"
+dependencies = [
+ "proc-macro2",
+ "quote",
+ "syn 2.0.60",
+]
+
+[[package]]
+name = "futures-sink"
+version = "0.3.30"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "9fb8e00e87438d937621c1c6269e53f536c14d3fbd6a042bb24879e57d474fb5"
+
+[[package]]
+name = "futures-task"
+version = "0.3.30"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "38d84fa142264698cdce1a9f9172cf383a0c82de1bddcf3092901442c4097004"
+
+[[package]]
+name = "futures-util"
+version = "0.3.30"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "3d6401deb83407ab3da39eba7e33987a73c3df0c82b4bb5813ee871c19c41d48"
+dependencies = [
+ "futures-channel",
+ "futures-core",
+ "futures-io",
+ "futures-macro",
+ "futures-sink",
+ "futures-task",
+ "memchr",
+ "pin-project-lite",
+ "pin-utils",
+ "slab",
+]
+
+[[package]]
+name = "fxhash"
+version = "0.2.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "c31b6d751ae2c7f11320402d34e41349dd1016f8d5d45e48c4312bc8625af50c"
+dependencies = [
+ "byteorder",
+]
+
+[[package]]
+name = "gdk"
+version = "0.15.4"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "a6e05c1f572ab0e1f15be94217f0dc29088c248b14f792a5ff0af0d84bcda9e8"
+dependencies = [
+ "bitflags 1.3.2",
+ "cairo-rs",
+ "gdk-pixbuf",
+ "gdk-sys",
+ "gio",
+ "glib",
+ "libc",
+ "pango",
+]
+
+[[package]]
+name = "gdk-pixbuf"
+version = "0.15.11"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "ad38dd9cc8b099cceecdf41375bb6d481b1b5a7cd5cd603e10a69a9383f8619a"
+dependencies = [
+ "bitflags 1.3.2",
+ "gdk-pixbuf-sys",
+ "gio",
+ "glib",
+ "libc",
+]
+
+[[package]]
+name = "gdk-pixbuf-sys"
+version = "0.15.10"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "140b2f5378256527150350a8346dbdb08fadc13453a7a2d73aecd5fab3c402a7"
+dependencies = [
+ "gio-sys",
+ "glib-sys",
+ "gobject-sys",
+ "libc",
+ "system-deps 6.2.2",
+]
+
+[[package]]
+name = "gdk-sys"
+version = "0.15.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "32e7a08c1e8f06f4177fb7e51a777b8c1689f743a7bc11ea91d44d2226073a88"
+dependencies = [
+ "cairo-sys-rs",
+ "gdk-pixbuf-sys",
+ "gio-sys",
+ "glib-sys",
+ "gobject-sys",
+ "libc",
+ "pango-sys",
+ "pkg-config",
+ "system-deps 6.2.2",
+]
+
+[[package]]
+name = "gdkwayland-sys"
+version = "0.15.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "cca49a59ad8cfdf36ef7330fe7bdfbe1d34323220cc16a0de2679ee773aee2c2"
+dependencies = [
+ "gdk-sys",
+ "glib-sys",
+ "gobject-sys",
+ "libc",
+ "pkg-config",
+ "system-deps 6.2.2",
+]
+
+[[package]]
+name = "gdkx11-sys"
+version = "0.15.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "b4b7f8c7a84b407aa9b143877e267e848ff34106578b64d1e0a24bf550716178"
+dependencies = [
+ "gdk-sys",
+ "glib-sys",
+ "libc",
+ "system-deps 6.2.2",
+ "x11",
+]
+
+[[package]]
+name = "generator"
+version = "0.7.5"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "5cc16584ff22b460a382b7feec54b23d2908d858152e5739a120b949293bd74e"
+dependencies = [
+ "cc",
+ "libc",
+ "log",
+ "rustversion",
+ "windows 0.48.0",
+]
+
+[[package]]
+name = "generic-array"
+version = "0.14.7"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "85649ca51fd72272d7821adaf274ad91c288277713d9c18820d8499a7ff69e9a"
+dependencies = [
+ "typenum",
+ "version_check",
+ "zeroize",
+]
+
+[[package]]
+name = "getrandom"
+version = "0.1.16"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "8fc3cb4d91f53b50155bdcfd23f6a4c39ae1969c2ae85982b135750cccaf5fce"
+dependencies = [
+ "cfg-if",
+ "libc",
+ "wasi 0.9.0+wasi-snapshot-preview1",
+]
+
+[[package]]
+name = "getrandom"
+version = "0.2.14"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "94b22e06ecb0110981051723910cbf0b5f5e09a2062dd7663334ee79a9d1286c"
+dependencies = [
+ "cfg-if",
+ "libc",
+ "wasi 0.11.0+wasi-snapshot-preview1",
+]
+
+[[package]]
+name = "gimli"
+version = "0.28.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "4271d37baee1b8c7e4b708028c57d816cf9d2434acb33a549475f78c181f6253"
+
+[[package]]
+name = "gio"
+version = "0.15.12"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "68fdbc90312d462781a395f7a16d96a2b379bb6ef8cd6310a2df272771c4283b"
+dependencies = [
+ "bitflags 1.3.2",
+ "futures-channel",
+ "futures-core",
+ "futures-io",
+ "gio-sys",
+ "glib",
+ "libc",
+ "once_cell",
+ "thiserror",
+]
+
+[[package]]
+name = "gio-sys"
+version = "0.15.10"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "32157a475271e2c4a023382e9cab31c4584ee30a97da41d3c4e9fdd605abcf8d"
+dependencies = [
+ "glib-sys",
+ "gobject-sys",
+ "libc",
+ "system-deps 6.2.2",
+ "winapi",
+]
+
+[[package]]
+name = "glib"
+version = "0.15.12"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "edb0306fbad0ab5428b0ca674a23893db909a98582969c9b537be4ced78c505d"
+dependencies = [
+ "bitflags 1.3.2",
+ "futures-channel",
+ "futures-core",
+ "futures-executor",
+ "futures-task",
+ "glib-macros",
+ "glib-sys",
+ "gobject-sys",
+ "libc",
+ "once_cell",
+ "smallvec",
+ "thiserror",
+]
+
+[[package]]
+name = "glib-macros"
+version = "0.15.13"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "10c6ae9f6fa26f4fb2ac16b528d138d971ead56141de489f8111e259b9df3c4a"
+dependencies = [
+ "anyhow",
+ "heck 0.4.1",
+ "proc-macro-crate",
+ "proc-macro-error",
+ "proc-macro2",
+ "quote",
+ "syn 1.0.109",
+]
+
+[[package]]
+name = "glib-sys"
+version = "0.15.10"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "ef4b192f8e65e9cf76cbf4ea71fa8e3be4a0e18ffe3d68b8da6836974cc5bad4"
+dependencies = [
+ "libc",
+ "system-deps 6.2.2",
+]
+
+[[package]]
+name = "glob"
+version = "0.3.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "d2fabcfbdc87f4758337ca535fb41a6d701b65693ce38287d856d1674551ec9b"
+
+[[package]]
+name = "globset"
+version = "0.4.14"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "57da3b9b5b85bd66f31093f8c408b90a74431672542466497dcbdfdc02034be1"
+dependencies = [
+ "aho-corasick",
+ "bstr",
+ "log",
+ "regex-automata 0.4.6",
+ "regex-syntax 0.8.3",
+]
+
+[[package]]
+name = "gobject-sys"
+version = "0.15.10"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "0d57ce44246becd17153bd035ab4d32cfee096a657fc01f2231c9278378d1e0a"
+dependencies = [
+ "glib-sys",
+ "libc",
+ "system-deps 6.2.2",
+]
+
+[[package]]
+name = "goblin"
+version = "0.8.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "bb07a4ffed2093b118a525b1d8f5204ae274faed5604537caf7135d0f18d9887"
+dependencies = [
+ "log",
+ "plain",
+ "scroll",
+]
+
+[[package]]
+name = "group"
+version = "0.13.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "f0f9ef7462f7c099f518d754361858f86d8a07af53ba9af0fe635bbccb151a63"
+dependencies = [
+ "ff",
+ "rand_core 0.6.4",
+ "subtle",
+]
+
+[[package]]
+name = "gtk"
+version = "0.15.5"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "92e3004a2d5d6d8b5057d2b57b3712c9529b62e82c77f25c1fecde1fd5c23bd0"
+dependencies = [
+ "atk",
+ "bitflags 1.3.2",
+ "cairo-rs",
+ "field-offset",
+ "futures-channel",
+ "gdk",
+ "gdk-pixbuf",
+ "gio",
+ "glib",
+ "gtk-sys",
+ "gtk3-macros",
+ "libc",
+ "once_cell",
+ "pango",
+ "pkg-config",
+]
+
+[[package]]
+name = "gtk-sys"
+version = "0.15.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "d5bc2f0587cba247f60246a0ca11fe25fb733eabc3de12d1965fc07efab87c84"
+dependencies = [
+ "atk-sys",
+ "cairo-sys-rs",
+ "gdk-pixbuf-sys",
+ "gdk-sys",
+ "gio-sys",
+ "glib-sys",
+ "gobject-sys",
+ "libc",
+ "pango-sys",
+ "system-deps 6.2.2",
+]
+
+[[package]]
+name = "gtk3-macros"
+version = "0.15.6"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "684c0456c086e8e7e9af73ec5b84e35938df394712054550e81558d21c44ab0d"
+dependencies = [
+ "anyhow",
+ "proc-macro-crate",
+ "proc-macro-error",
+ "proc-macro2",
+ "quote",
+ "syn 1.0.109",
+]
+
+[[package]]
+name = "h2"
+version = "0.3.26"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "81fe527a889e1532da5c525686d96d4c2e74cdd345badf8dfef9f6b39dd5f5e8"
+dependencies = [
+ "bytes",
+ "fnv",
+ "futures-core",
+ "futures-sink",
+ "futures-util",
+ "http 0.2.12",
+ "indexmap 2.2.6",
+ "slab",
+ "tokio",
+ "tokio-util",
+ "tracing",
+]
+
+[[package]]
+name = "h2"
+version = "0.4.4"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "816ec7294445779408f36fe57bc5b7fc1cf59664059096c65f905c1c61f58069"
+dependencies = [
+ "bytes",
+ "fnv",
+ "futures-core",
+ "futures-sink",
+ "futures-util",
+ "http 1.1.0",
+ "indexmap 2.2.6",
+ "slab",
+ "tokio",
+ "tokio-util",
+ "tracing",
+]
+
+[[package]]
+name = "hashbrown"
+version = "0.12.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "8a9ee70c43aaf417c914396645a0fa852624801b24ebb7ae78fe8272889ac888"
+
+[[package]]
+name = "hashbrown"
+version = "0.14.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "290f1a1d9242c78d09ce40a5e87e7554ee637af1351968159f4952f028f75604"
+
+[[package]]
+name = "heck"
+version = "0.3.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "6d621efb26863f0e9924c6ac577e8275e5e6b77455db64ffa6c65c904e9e132c"
+dependencies = [
+ "unicode-segmentation",
+]
+
+[[package]]
+name = "heck"
+version = "0.4.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "95505c38b4572b2d910cecb0281560f54b440a19336cbbcb27bf6ce6adc6f5a8"
+
+[[package]]
+name = "heck"
+version = "0.5.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "2304e00983f87ffb38b55b444b5e3b60a884b5d30c0fca7d82fe33449bbe55ea"
+
+[[package]]
+name = "hermit-abi"
+version = "0.3.9"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "d231dfb89cfffdbc30e7fc41579ed6066ad03abda9e567ccafae602b97ec5024"
+
+[[package]]
+name = "hex"
+version = "0.4.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "7f24254aa9a54b5c858eaee2f5bccdb46aaf0e486a595ed5fd8f86ba55232a70"
+
+[[package]]
+name = "hmac"
+version = "0.12.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "6c49c37c09c17a53d937dfbb742eb3a961d65a994e6bcdcf37e7399d0cc8ab5e"
+dependencies = [
+ "digest",
+]
+
+[[package]]
+name = "home"
+version = "0.5.9"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "e3d1354bf6b7235cb4a0576c2619fd4ed18183f689b12b006a0ee7329eeff9a5"
+dependencies = [
+ "windows-sys 0.52.0",
+]
+
+[[package]]
+name = "hostname"
+version = "0.4.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "f9c7c7c8ac16c798734b8a24560c1362120597c40d5e1459f09498f8f6c8f2ba"
+dependencies = [
+ "cfg-if",
+ "libc",
+ "windows 0.52.0",
+]
+
+[[package]]
+name = "html5ever"
+version = "0.26.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "bea68cab48b8459f17cf1c944c67ddc572d272d9f2b274140f223ecb1da4a3b7"
+dependencies = [
+ "log",
+ "mac",
+ "markup5ever",
+ "proc-macro2",
+ "quote",
+ "syn 1.0.109",
+]
+
+[[package]]
+name = "http"
+version = "0.2.12"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "601cbb57e577e2f5ef5be8e7b83f0f63994f25aa94d673e54a92d5c516d101f1"
+dependencies = [
+ "bytes",
+ "fnv",
+ "itoa 1.0.11",
+]
+
+[[package]]
+name = "http"
+version = "1.1.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "21b9ddb458710bc376481b842f5da65cdf31522de232c1ca8146abce2a358258"
+dependencies = [
+ "bytes",
+ "fnv",
+ "itoa 1.0.11",
+]
+
+[[package]]
+name = "http-body"
+version = "0.4.6"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "7ceab25649e9960c0311ea418d17bee82c0dcec1bd053b5f9a66e265a693bed2"
+dependencies = [
+ "bytes",
+ "http 0.2.12",
+ "pin-project-lite",
+]
+
+[[package]]
+name = "http-body"
+version = "1.0.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "1cac85db508abc24a2e48553ba12a996e87244a0395ce011e62b37158745d643"
+dependencies = [
+ "bytes",
+ "http 1.1.0",
+]
+
+[[package]]
+name = "http-body-util"
+version = "0.1.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "0475f8b2ac86659c21b64320d5d653f9efe42acd2a4e560073ec61a155a34f1d"
+dependencies = [
+ "bytes",
+ "futures-core",
+ "http 1.1.0",
+ "http-body 1.0.0",
+ "pin-project-lite",
+]
+
+[[package]]
+name = "http-range"
+version = "0.1.5"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "21dec9db110f5f872ed9699c3ecf50cf16f423502706ba5c72462e28d3157573"
+
+[[package]]
+name = "httparse"
+version = "1.8.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "d897f394bad6a705d5f4104762e116a75639e470d80901eed05a860a95cb1904"
+
+[[package]]
+name = "httpdate"
+version = "1.0.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "df3b46402a9d5adb4c86a0cf463f42e19994e3ee891101b1841f30a545cb49a9"
+
+[[package]]
+name = "hyper"
+version = "0.14.28"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "bf96e135eb83a2a8ddf766e426a841d8ddd7449d5f00d34ea02b41d2f19eef80"
+dependencies = [
+ "bytes",
+ "futures-channel",
+ "futures-core",
+ "futures-util",
+ "h2 0.3.26",
+ "http 0.2.12",
+ "http-body 0.4.6",
+ "httparse",
+ "httpdate",
+ "itoa 1.0.11",
+ "pin-project-lite",
+ "socket2 0.5.6",
+ "tokio",
+ "tower-service",
+ "tracing",
+ "want",
+]
+
+[[package]]
+name = "hyper"
+version = "1.3.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "fe575dd17d0862a9a33781c8c4696a55c320909004a67a00fb286ba8b1bc496d"
+dependencies = [
+ "bytes",
+ "futures-channel",
+ "futures-util",
+ "h2 0.4.4",
+ "http 1.1.0",
+ "http-body 1.0.0",
+ "httparse",
+ "itoa 1.0.11",
+ "pin-project-lite",
+ "smallvec",
+ "tokio",
+ "want",
+]
+
+[[package]]
+name = "hyper-tls"
+version = "0.5.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "d6183ddfa99b85da61a140bea0efc93fdf56ceaa041b37d553518030827f9905"
+dependencies = [
+ "bytes",
+ "hyper 0.14.28",
+ "native-tls",
+ "tokio",
+ "tokio-native-tls",
+]
+
+[[package]]
+name = "hyper-tls"
+version = "0.6.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "70206fc6890eaca9fde8a0bf71caa2ddfc9fe045ac9e5c70df101a7dbde866e0"
+dependencies = [
+ "bytes",
+ "http-body-util",
+ "hyper 1.3.1",
+ "hyper-util",
+ "native-tls",
+ "tokio",
+ "tokio-native-tls",
+ "tower-service",
+]
+
+[[package]]
+name = "hyper-util"
+version = "0.1.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "ca38ef113da30126bbff9cd1705f9273e15d45498615d138b0c20279ac7a76aa"
+dependencies = [
+ "bytes",
+ "futures-channel",
+ "futures-util",
+ "http 1.1.0",
+ "http-body 1.0.0",
+ "hyper 1.3.1",
+ "pin-project-lite",
+ "socket2 0.5.6",
+ "tokio",
+ "tower",
+ "tower-service",
+ "tracing",
+]
+
+[[package]]
+name = "iana-time-zone"
+version = "0.1.60"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "e7ffbb5a1b541ea2561f8c41c087286cc091e21e556a4f09a8f6cbf17b69b141"
+dependencies = [
+ "android_system_properties",
+ "core-foundation-sys",
+ "iana-time-zone-haiku",
+ "js-sys",
+ "wasm-bindgen",
+ "windows-core",
+]
+
+[[package]]
+name = "iana-time-zone-haiku"
+version = "0.1.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "f31827a206f56af32e590ba56d5d2d085f558508192593743f16b2306495269f"
+dependencies = [
+ "cc",
+]
+
+[[package]]
+name = "ico"
+version = "0.3.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "e3804960be0bb5e4edb1e1ad67afd321a9ecfd875c3e65c099468fd2717d7cae"
+dependencies = [
+ "byteorder",
+ "png",
+]
+
+[[package]]
+name = "ident_case"
+version = "1.0.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "b9e0384b61958566e926dc50660321d12159025e767c18e043daf26b70104c39"
+
+[[package]]
+name = "idna"
+version = "0.5.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "634d9b1461af396cad843f47fdba5597a4f9e6ddd4bfb6ff5d85028c25cb12f6"
+dependencies = [
+ "unicode-bidi",
+ "unicode-normalization",
+]
+
+[[package]]
+name = "ignore"
+version = "0.4.22"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "b46810df39e66e925525d6e38ce1e7f6e1d208f72dc39757880fcb66e2c58af1"
+dependencies = [
+ "crossbeam-deque",
+ "globset",
+ "log",
+ "memchr",
+ "regex-automata 0.4.6",
+ "same-file",
+ "walkdir",
+ "winapi-util",
+]
+
+[[package]]
+name = "image"
+version = "0.24.9"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "5690139d2f55868e080017335e4b94cb7414274c74f1669c84fb5feba2c9f69d"
+dependencies = [
+ "bytemuck",
+ "byteorder",
+ "color_quant",
+ "num-traits",
+]
+
+[[package]]
+name = "indexmap"
+version = "1.9.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "bd070e393353796e801d209ad339e89596eb4c8d430d18ede6a1cced8fafbd99"
+dependencies = [
+ "autocfg",
+ "hashbrown 0.12.3",
+ "serde",
+]
+
+[[package]]
+name = "indexmap"
+version = "2.2.6"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "168fb715dda47215e360912c096649d23d58bf392ac62f73919e831745e40f26"
+dependencies = [
+ "equivalent",
+ "hashbrown 0.14.3",
+ "serde",
+]
+
+[[package]]
+name = "indicatif"
+version = "0.17.8"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "763a5a8f45087d6bcea4222e7b72c291a054edf80e4ef6efd2a4979878c7bea3"
+dependencies = [
+ "console",
+ "instant",
+ "number_prefix",
+ "portable-atomic",
+ "unicode-width",
+]
+
+[[package]]
+name = "infer"
+version = "0.13.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "f551f8c3a39f68f986517db0d1759de85881894fdc7db798bd2a9df9cb04b7fc"
+dependencies = [
+ "cfb",
+]
+
+[[package]]
+name = "inotify"
+version = "0.9.6"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "f8069d3ec154eb856955c1c0fbffefbf5f3c40a104ec912d4797314c1801abff"
+dependencies = [
+ "bitflags 1.3.2",
+ "inotify-sys",
+ "libc",
+]
+
+[[package]]
+name = "inotify-sys"
+version = "0.1.5"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "e05c02b5e89bff3b946cedeca278abc628fe811e604f027c45a8aa3cf793d0eb"
+dependencies = [
+ "libc",
+]
+
+[[package]]
+name = "inout"
+version = "0.1.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "a0c10553d664a4d0bcff9f4215d0aac67a639cc68ef660840afe309b807bc9f5"
+dependencies = [
+ "generic-array",
+]
+
+[[package]]
+name = "instant"
+version = "0.1.12"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "7a5bbe824c507c5da5956355e86a746d82e0e1464f65d862cc5e71da70e94b2c"
+dependencies = [
+ "cfg-if",
+]
+
+[[package]]
+name = "interprocess"
+version = "1.2.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "81f2533f3be42fffe3b5e63b71aeca416c1c3bc33e4e27be018521e76b1f38fb"
+dependencies = [
+ "cfg-if",
+ "libc",
+ "rustc_version",
+ "to_method",
+ "winapi",
+]
+
+[[package]]
+name = "io-lifetimes"
+version = "1.0.11"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "eae7b9aee968036d54dce06cebaefd919e4472e753296daccd6d344e3e2df0c2"
+dependencies = [
+ "hermit-abi",
+ "libc",
+ "windows-sys 0.48.0",
+]
+
+[[package]]
+name = "ipnet"
+version = "2.9.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "8f518f335dce6725a761382244631d86cf0ccb2863413590b31338feb467f9c3"
+
+[[package]]
+name = "itoa"
+version = "0.4.8"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "b71991ff56294aa922b450139ee08b3bfc70982c6b2c7562771375cf73542dd4"
+
+[[package]]
+name = "itoa"
+version = "1.0.11"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "49f1f14873335454500d59611f1cf4a4b0f786f9ac11f4312a78e4cf2566695b"
+
+[[package]]
+name = "javascriptcore-rs"
+version = "0.16.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "bf053e7843f2812ff03ef5afe34bb9c06ffee120385caad4f6b9967fcd37d41c"
+dependencies = [
+ "bitflags 1.3.2",
+ "glib",
+ "javascriptcore-rs-sys",
+]
+
+[[package]]
+name = "javascriptcore-rs-sys"
+version = "0.4.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "905fbb87419c5cde6e3269537e4ea7d46431f3008c5d057e915ef3f115e7793c"
+dependencies = [
+ "glib-sys",
+ "gobject-sys",
+ "libc",
+ "system-deps 5.0.0",
+]
+
+[[package]]
+name = "jni"
+version = "0.20.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "039022cdf4d7b1cf548d31f60ae783138e5fd42013f6271049d7df7afadef96c"
+dependencies = [
+ "cesu8",
+ "combine",
+ "jni-sys",
+ "log",
+ "thiserror",
+ "walkdir",
+]
+
+[[package]]
+name = "jni"
+version = "0.21.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "1a87aa2bb7d2af34197c04845522473242e1aa17c12f4935d5856491a7fb8c97"
+dependencies = [
+ "cesu8",
+ "cfg-if",
+ "combine",
+ "jni-sys",
+ "log",
+ "thiserror",
+ "walkdir",
+ "windows-sys 0.45.0",
+]
+
+[[package]]
+name = "jni-sys"
+version = "0.3.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "8eaf4bc02d17cbdd7ff4c7438cafcdf7fb9a4613313ad11b4f8fefe7d3fa0130"
+
+[[package]]
+name = "jobserver"
+version = "0.1.31"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "d2b099aaa34a9751c5bf0878add70444e1ed2dd73f347be99003d4577277de6e"
+dependencies = [
+ "libc",
+]
+
+[[package]]
+name = "js-sys"
+version = "0.3.69"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "29c15563dc2726973df627357ce0c9ddddbea194836909d655df6a75d2cf296d"
+dependencies = [
+ "wasm-bindgen",
+]
+
+[[package]]
+name = "json-patch"
+version = "1.2.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "55ff1e1486799e3f64129f8ccad108b38290df9cd7015cd31bed17239f0789d6"
+dependencies = [
+ "serde",
+ "serde_json",
+ "thiserror",
+ "treediff",
+]
+
+[[package]]
+name = "kqueue"
+version = "1.0.8"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "7447f1ca1b7b563588a205fe93dea8df60fd981423a768bc1c0ded35ed147d0c"
+dependencies = [
+ "kqueue-sys",
+ "libc",
+]
+
+[[package]]
+name = "kqueue-sys"
+version = "1.0.4"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "ed9625ffda8729b85e45cf04090035ac368927b8cebc34898e7c120f52e4838b"
+dependencies = [
+ "bitflags 1.3.2",
+ "libc",
+]
+
+[[package]]
+name = "kuchikiki"
+version = "0.8.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "f29e4755b7b995046f510a7520c42b2fed58b77bd94d5a87a8eb43d2fd126da8"
+dependencies = [
+ "cssparser",
+ "html5ever",
+ "indexmap 1.9.3",
+ "matches",
+ "selectors",
+]
+
+[[package]]
+name = "lazy_static"
+version = "1.4.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "e2abad23fbc42b3700f2f279844dc832adb2b2eb069b2df918f455c4e18cc646"
+
+[[package]]
+name = "libc"
+version = "0.2.153"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "9c198f91728a82281a64e1f4f9eeb25d82cb32a5de251c6bd1b5154d63a8e7bd"
+
+[[package]]
+name = "libredox"
+version = "0.1.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "c0ff37bd590ca25063e35af745c343cb7a0271906fb7b37e4813e8f79f00268d"
+dependencies = [
+ "bitflags 2.5.0",
+ "libc",
+]
+
+[[package]]
+name = "line-wrap"
+version = "0.2.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "dd1bc4d24ad230d21fb898d1116b1801d7adfc449d42026475862ab48b11e70e"
+
+[[package]]
+name = "linux-raw-sys"
+version = "0.3.8"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "ef53942eb7bf7ff43a617b3e2c1c4a5ecf5944a7c1bc12d7ee39bbb15e5c1519"
+
+[[package]]
+name = "linux-raw-sys"
+version = "0.4.13"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "01cda141df6706de531b6c46c3a33ecca755538219bd484262fa09410c13539c"
+
+[[package]]
+name = "lock_api"
+version = "0.4.11"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "3c168f8615b12bc01f9c17e2eb0cc07dcae1940121185446edc3744920e8ef45"
+dependencies = [
+ "autocfg",
+ "scopeguard",
+]
+
+[[package]]
+name = "log"
+version = "0.4.21"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "90ed8c1e510134f979dbc4f070f87d4313098b704861a105fe34231c70a3901c"
+
+[[package]]
+name = "loom"
+version = "0.5.6"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "ff50ecb28bb86013e935fb6683ab1f6d3a20016f123c76fd4c27470076ac30f5"
+dependencies = [
+ "cfg-if",
+ "generator",
+ "scoped-tls",
+ "serde",
+ "serde_json",
+ "tracing",
+ "tracing-subscriber",
+]
+
+[[package]]
+name = "lzma-sys"
+version = "0.1.20"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "5fda04ab3764e6cde78b9974eec4f779acaba7c4e84b36eca3cf77c581b85d27"
+dependencies = [
+ "cc",
+ "libc",
+ "pkg-config",
+]
+
+[[package]]
+name = "mac"
+version = "0.1.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "c41e0c4fef86961ac6d6f8a82609f55f31b05e4fce149ac5710e439df7619ba4"
+
+[[package]]
+name = "mach2"
+version = "0.4.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "19b955cdeb2a02b9117f121ce63aa52d08ade45de53e48fe6a38b39c10f6f709"
+dependencies = [
+ "libc",
+]
+
+[[package]]
+name = "malloc_buf"
+version = "0.0.6"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "62bb907fe88d54d8d9ce32a3cceab4218ed2f6b7d35617cafe9adf84e43919cb"
+dependencies = [
+ "libc",
+]
+
+[[package]]
+name = "markup5ever"
+version = "0.11.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "7a2629bb1404f3d34c2e921f21fd34ba00b206124c81f65c50b43b6aaefeb016"
+dependencies = [
+ "log",
+ "phf 0.10.1",
+ "phf_codegen 0.10.0",
+ "string_cache",
+ "string_cache_codegen",
+ "tendril",
+]
+
+[[package]]
+name = "matchers"
+version = "0.1.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "8263075bb86c5a1b1427b5ae862e8889656f126e9f77c484496e8b47cf5c5558"
+dependencies = [
+ "regex-automata 0.1.10",
+]
+
+[[package]]
+name = "matches"
+version = "0.1.10"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "2532096657941c2fea9c289d370a250971c689d4f143798ff67113ec042024a5"
+
+[[package]]
+name = "memchr"
+version = "2.7.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "6c8640c5d730cb13ebd907d8d04b52f55ac9a2eec55b440c8892f40d56c76c1d"
+
+[[package]]
+name = "memmap2"
+version = "0.9.4"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "fe751422e4a8caa417e13c3ea66452215d7d63e19e604f4980461212f3ae1322"
+dependencies = [
+ "libc",
+]
+
+[[package]]
+name = "memoffset"
+version = "0.7.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "5de893c32cde5f383baa4c04c5d6dbdd735cfd4a794b0debdb2bb1b421da5ff4"
+dependencies = [
+ "autocfg",
+]
+
+[[package]]
+name = "memoffset"
+version = "0.9.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "488016bfae457b036d996092f6cb448677611ce4449e970ceaf42695203f218a"
+dependencies = [
+ "autocfg",
+]
+
+[[package]]
+name = "mime"
+version = "0.3.17"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "6877bb514081ee2a7ff5ef9de3281f14a4dd4bceac4c09388074a6b5df8a139a"
+
+[[package]]
+name = "minidump-common"
+version = "0.21.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "1bb6eaf88cc770fa58e6ae721cf2e40c2ca6a4c942ae8c7aa324d680bd3c6717"
+dependencies = [
+ "bitflags 2.5.0",
+ "debugid",
+ "num-derive",
+ "num-traits",
+ "range-map",
+ "scroll",
+ "smart-default",
+]
+
+[[package]]
+name = "minidump-writer"
+version = "0.8.9"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "e2abcd9c8a1e6e1e9d56ce3627851f39a17ea83e17c96bc510f29d7e43d78a7d"
+dependencies = [
+ "bitflags 2.5.0",
+ "byteorder",
+ "cfg-if",
+ "crash-context",
+ "goblin",
+ "libc",
+ "log",
+ "mach2",
+ "memmap2",
+ "memoffset 0.9.1",
+ "minidump-common",
+ "nix 0.28.0",
+ "procfs-core",
+ "scroll",
+ "tempfile",
+ "thiserror",
+]
+
+[[package]]
+name = "minidumper"
+version = "0.8.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "1b99697a8483221ca2d163aedcbee44f3851c4f5916ab0e96ae6397fb6b6deb2"
+dependencies = [
+ "cfg-if",
+ "crash-context",
+ "libc",
+ "log",
+ "minidump-writer",
+ "parking_lot",
+ "polling 3.7.0",
+ "scroll",
+ "thiserror",
+ "uds",
+]
+
+[[package]]
+name = "minidumper-child"
+version = "0.2.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "d7c4f23f835dbe67e44ddf884d3802ff549ca5948bf60e9fd70e9a13c96324d1"
+dependencies = [
+ "crash-handler",
+ "minidumper",
+ "thiserror",
+ "uuid 1.8.0",
+]
+
+[[package]]
+name = "minisign-verify"
+version = "0.2.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "933dca44d65cdd53b355d0b73d380a2ff5da71f87f036053188bf1eab6a19881"
+
+[[package]]
+name = "miniz_oxide"
+version = "0.7.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "9d811f3e15f28568be3407c8e7fdb6514c1cda3cb30683f15b6a1a1dc4ea14a7"
+dependencies = [
+ "adler",
+ "simd-adler32",
+]
+
+[[package]]
+name = "mio"
+version = "0.8.11"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "a4a650543ca06a924e8b371db273b2756685faae30f8487da1b56505a8f78b0c"
+dependencies = [
+ "libc",
+ "log",
+ "wasi 0.11.0+wasi-snapshot-preview1",
+ "windows-sys 0.48.0",
+]
+
+[[package]]
+name = "native-tls"
+version = "0.2.11"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "07226173c32f2926027b63cce4bcd8076c3552846cbe7925f3aaffeac0a3b92e"
+dependencies = [
+ "lazy_static",
+ "libc",
+ "log",
+ "openssl",
+ "openssl-probe",
+ "openssl-sys",
+ "schannel",
+ "security-framework",
+ "security-framework-sys",
+ "tempfile",
+]
+
+[[package]]
+name = "ndk"
+version = "0.6.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "2032c77e030ddee34a6787a64166008da93f6a352b629261d0fee232b8742dd4"
+dependencies = [
+ "bitflags 1.3.2",
+ "jni-sys",
+ "ndk-sys",
+ "num_enum",
+ "thiserror",
+]
+
+[[package]]
+name = "ndk-context"
+version = "0.1.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "27b02d87554356db9e9a873add8782d4ea6e3e58ea071a9adb9a2e8ddb884a8b"
+
+[[package]]
+name = "ndk-sys"
+version = "0.3.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "6e5a6ae77c8ee183dcbbba6150e2e6b9f3f4196a7666c02a715a95692ec1fa97"
+dependencies = [
+ "jni-sys",
+]
+
+[[package]]
+name = "new_debug_unreachable"
+version = "1.0.6"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "650eef8c711430f1a879fdd01d4745a7deea475becfb90269c06775983bbf086"
+
+[[package]]
+name = "nix"
+version = "0.26.4"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "598beaf3cc6fdd9a5dfb1630c2800c7acd31df7aaf0f565796fba2b53ca1af1b"
+dependencies = [
+ "bitflags 1.3.2",
+ "cfg-if",
+ "libc",
+ "memoffset 0.7.1",
+]
+
+[[package]]
+name = "nix"
+version = "0.28.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "ab2156c4fce2f8df6c499cc1c763e4394b7482525bf2a9701c9d79d215f519e4"
+dependencies = [
+ "bitflags 2.5.0",
+ "cfg-if",
+ "cfg_aliases",
+ "libc",
+]
+
+[[package]]
+name = "nodrop"
+version = "0.1.14"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "72ef4a56884ca558e5ddb05a1d1e7e1bfd9a68d9ed024c21704cc98872dae1bb"
+
+[[package]]
+name = "notify"
+version = "6.1.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "6205bd8bb1e454ad2e27422015fb5e4f2bcc7e08fa8f27058670d208324a4d2d"
+dependencies = [
+ "bitflags 2.5.0",
+ "crossbeam-channel",
+ "filetime",
+ "fsevent-sys",
+ "inotify",
+ "kqueue",
+ "libc",
+ "log",
+ "mio",
+ "walkdir",
+ "windows-sys 0.48.0",
+]
+
+[[package]]
+name = "notify-debouncer-mini"
+version = "0.4.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "5d40b221972a1fc5ef4d858a2f671fb34c75983eb385463dff3780eeff6a9d43"
+dependencies = [
+ "log",
+ "notify",
+]
+
+[[package]]
+name = "ntapi"
+version = "0.4.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "e8a3895c6391c39d7fe7ebc444a87eb2991b2a0bc718fdabd071eec617fc68e4"
+dependencies = [
+ "winapi",
+]
+
+[[package]]
+name = "nu-ansi-term"
+version = "0.46.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "77a8165726e8236064dbb45459242600304b42a5ea24ee2948e18e023bf7ba84"
+dependencies = [
+ "overload",
+ "winapi",
+]
+
+[[package]]
+name = "num-conv"
+version = "0.1.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "51d515d32fb182ee37cda2ccdcb92950d6a3c2893aa280e540671c2cd0f3b1d9"
+
+[[package]]
+name = "num-derive"
+version = "0.4.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "ed3955f1a9c7c0c15e092f9c887db08b1fc683305fdf6eb6684f22555355e202"
+dependencies = [
+ "proc-macro2",
+ "quote",
+ "syn 2.0.60",
+]
+
+[[package]]
+name = "num-traits"
+version = "0.2.18"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "da0df0e5185db44f69b44f26786fe401b6c293d1907744beaa7fa62b2e5a517a"
+dependencies = [
+ "autocfg",
+]
+
+[[package]]
+name = "num_cpus"
+version = "1.16.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "4161fcb6d602d4d2081af7c3a45852d875a03dd337a6bfdd6e06407b61342a43"
+dependencies = [
+ "hermit-abi",
+ "libc",
+]
+
+[[package]]
+name = "num_enum"
+version = "0.5.11"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "1f646caf906c20226733ed5b1374287eb97e3c2a5c227ce668c1f2ce20ae57c9"
+dependencies = [
+ "num_enum_derive",
+]
+
+[[package]]
+name = "num_enum_derive"
+version = "0.5.11"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "dcbff9bc912032c62bf65ef1d5aea88983b420f4f839db1e9b0c281a25c9c799"
+dependencies = [
+ "proc-macro-crate",
+ "proc-macro2",
+ "quote",
+ "syn 1.0.109",
+]
+
+[[package]]
+name = "number_prefix"
+version = "0.4.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "830b246a0e5f20af87141b25c173cd1b609bd7779a4617d6ec582abaf90870f3"
+
+[[package]]
+name = "objc"
+version = "0.2.7"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "915b1b472bc21c53464d6c8461c9d3af805ba1ef837e1cac254428f4a77177b1"
+dependencies = [
+ "malloc_buf",
+ "objc_exception",
+]
+
+[[package]]
+name = "objc-foundation"
+version = "0.1.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "1add1b659e36c9607c7aab864a76c7a4c2760cd0cd2e120f3fb8b952c7e22bf9"
+dependencies = [
+ "block",
+ "objc",
+ "objc_id",
+]
+
+[[package]]
+name = "objc-sys"
+version = "0.3.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "da284c198fb9b7b0603f8635185e85fbd5b64ee154b1ed406d489077de2d6d60"
+
+[[package]]
+name = "objc2"
+version = "0.4.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "559c5a40fdd30eb5e344fbceacf7595a81e242529fb4e21cf5f43fb4f11ff98d"
+dependencies = [
+ "objc-sys",
+ "objc2-encode",
+]
+
+[[package]]
+name = "objc2-encode"
+version = "3.0.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "d079845b37af429bfe5dfa76e6d087d788031045b25cfc6fd898486fd9847666"
+
+[[package]]
+name = "objc_exception"
+version = "0.1.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "ad970fb455818ad6cba4c122ad012fae53ae8b4795f86378bce65e4f6bab2ca4"
+dependencies = [
+ "cc",
+]
+
+[[package]]
+name = "objc_id"
+version = "0.1.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "c92d4ddb4bd7b50d730c215ff871754d0da6b2178849f8a2a2ab69712d0c073b"
+dependencies = [
+ "objc",
+]
+
+[[package]]
+name = "object"
+version = "0.32.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "a6a622008b6e321afc04970976f62ee297fdbaa6f95318ca343e3eebb9648441"
+dependencies = [
+ "memchr",
+]
+
+[[package]]
+name = "once_cell"
+version = "1.19.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "3fdb12b2476b595f9358c5161aa467c2438859caa136dec86c26fdd2efe17b92"
+
+[[package]]
+name = "open"
+version = "3.2.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "2078c0039e6a54a0c42c28faa984e115fb4c2d5bf2208f77d1961002df8576f8"
+dependencies = [
+ "pathdiff",
+ "windows-sys 0.42.0",
+]
+
+[[package]]
+name = "openssl"
+version = "0.10.64"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "95a0481286a310808298130d22dd1fef0fa571e05a8f44ec801801e84b216b1f"
+dependencies = [
+ "bitflags 2.5.0",
+ "cfg-if",
+ "foreign-types 0.3.2",
+ "libc",
+ "once_cell",
+ "openssl-macros",
+ "openssl-sys",
+]
+
+[[package]]
+name = "openssl-macros"
+version = "0.1.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "a948666b637a0f465e8564c73e89d4dde00d72d4d473cc972f390fc3dcee7d9c"
+dependencies = [
+ "proc-macro2",
+ "quote",
+ "syn 2.0.60",
+]
+
+[[package]]
+name = "openssl-probe"
+version = "0.1.5"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "ff011a302c396a5197692431fc1948019154afc178baf7d8e37367442a4601cf"
+
+[[package]]
+name = "openssl-sys"
+version = "0.9.102"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "c597637d56fbc83893a35eb0dd04b2b8e7a50c91e64e9493e398b5df4fb45fa2"
+dependencies = [
+ "cc",
+ "libc",
+ "pkg-config",
+ "vcpkg",
+]
+
+[[package]]
+name = "option-ext"
+version = "0.2.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "04744f49eae99ab78e0d5c0b603ab218f515ea8cfe5a456d7629ad883a3b6e7d"
+
+[[package]]
+name = "ordered-stream"
+version = "0.2.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "9aa2b01e1d916879f73a53d01d1d6cee68adbb31d6d9177a8cfce093cced1d50"
+dependencies = [
+ "futures-core",
+ "pin-project-lite",
+]
+
+[[package]]
+name = "os_info"
+version = "3.8.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "ae99c7fa6dd38c7cafe1ec085e804f8f555a2f8659b0dbe03f1f9963a9b51092"
+dependencies = [
+ "log",
+ "serde",
+ "windows-sys 0.52.0",
+]
+
+[[package]]
+name = "overload"
+version = "0.1.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "b15813163c1d831bf4a13c3610c05c0d03b39feb07f7e09fa234dac9b15aaf39"
+
+[[package]]
+name = "p256"
+version = "0.13.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "c9863ad85fa8f4460f9c48cb909d38a0d689dba1f6f6988a5e3e0d31071bcd4b"
+dependencies = [
+ "ecdsa",
+ "elliptic-curve",
+ "primeorder",
+ "sha2",
+]
+
+[[package]]
+name = "pango"
+version = "0.15.10"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "22e4045548659aee5313bde6c582b0d83a627b7904dd20dc2d9ef0895d414e4f"
+dependencies = [
+ "bitflags 1.3.2",
+ "glib",
+ "libc",
+ "once_cell",
+ "pango-sys",
+]
+
+[[package]]
+name = "pango-sys"
+version = "0.15.10"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "d2a00081cde4661982ed91d80ef437c20eacaf6aa1a5962c0279ae194662c3aa"
+dependencies = [
+ "glib-sys",
+ "gobject-sys",
+ "libc",
+ "system-deps 6.2.2",
+]
+
+[[package]]
+name = "parking"
+version = "2.2.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "bb813b8af86854136c6922af0598d719255ecb2179515e6e7730d468f05c9cae"
+
+[[package]]
+name = "parking_lot"
+version = "0.12.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "3742b2c103b9f06bc9fff0a37ff4912935851bee6d36f3c02bcc755bcfec228f"
+dependencies = [
+ "lock_api",
+ "parking_lot_core",
+]
+
+[[package]]
+name = "parking_lot_core"
+version = "0.9.9"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "4c42a9226546d68acdd9c0a280d17ce19bfe27a46bf68784e4066115788d008e"
+dependencies = [
+ "cfg-if",
+ "libc",
+ "redox_syscall",
+ "smallvec",
+ "windows-targets 0.48.5",
+]
+
+[[package]]
+name = "password-hash"
+version = "0.4.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "7676374caaee8a325c9e7a2ae557f216c5563a171d6997b0ef8a65af35147700"
+dependencies = [
+ "base64ct",
+ "rand_core 0.6.4",
+ "subtle",
+]
+
+[[package]]
+name = "paste"
+version = "1.0.14"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "de3145af08024dea9fa9914f381a17b8fc6034dfb00f3a84013f7ff43f29ed4c"
+
+[[package]]
+name = "pathdiff"
+version = "0.2.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "8835116a5c179084a830efb3adc117ab007512b535bc1a21c991d3b32a6b44dd"
+
+[[package]]
+name = "pbkdf2"
+version = "0.11.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "83a0692ec44e4cf1ef28ca317f14f8f07da2d95ec3fa01f86e4467b725e60917"
+dependencies = [
+ "digest",
+ "hmac",
+ "password-hash",
+ "sha2",
+]
+
+[[package]]
+name = "pem-rfc7468"
+version = "0.7.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "88b39c9bfcfc231068454382784bb460aae594343fb030d46e9f50a645418412"
+dependencies = [
+ "base64ct",
+]
+
+[[package]]
+name = "percent-encoding"
+version = "2.3.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "e3148f5046208a5d56bcfc03053e3ca6334e51da8dfb19b6cdc8b306fae3283e"
+
+[[package]]
+name = "phf"
+version = "0.8.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "3dfb61232e34fcb633f43d12c58f83c1df82962dcdfa565a4e866ffc17dafe12"
+dependencies = [
+ "phf_macros 0.8.0",
+ "phf_shared 0.8.0",
+ "proc-macro-hack",
+]
+
+[[package]]
+name = "phf"
+version = "0.10.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "fabbf1ead8a5bcbc20f5f8b939ee3f5b0f6f281b6ad3468b84656b658b455259"
+dependencies = [
+ "phf_shared 0.10.0",
+]
+
+[[package]]
+name = "phf"
+version = "0.11.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "ade2d8b8f33c7333b51bcf0428d37e217e9f32192ae4772156f65063b8ce03dc"
+dependencies = [
+ "phf_macros 0.11.2",
+ "phf_shared 0.11.2",
+]
+
+[[package]]
+name = "phf_codegen"
+version = "0.8.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "cbffee61585b0411840d3ece935cce9cb6321f01c45477d30066498cd5e1a815"
+dependencies = [
+ "phf_generator 0.8.0",
+ "phf_shared 0.8.0",
+]
+
+[[package]]
+name = "phf_codegen"
+version = "0.10.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "4fb1c3a8bc4dd4e5cfce29b44ffc14bedd2ee294559a294e2a4d4c9e9a6a13cd"
+dependencies = [
+ "phf_generator 0.10.0",
+ "phf_shared 0.10.0",
+]
+
+[[package]]
+name = "phf_generator"
+version = "0.8.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "17367f0cc86f2d25802b2c26ee58a7b23faeccf78a396094c13dced0d0182526"
+dependencies = [
+ "phf_shared 0.8.0",
+ "rand 0.7.3",
+]
+
+[[package]]
+name = "phf_generator"
+version = "0.10.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "5d5285893bb5eb82e6aaf5d59ee909a06a16737a8970984dd7746ba9283498d6"
+dependencies = [
+ "phf_shared 0.10.0",
+ "rand 0.8.5",
+]
+
+[[package]]
+name = "phf_generator"
+version = "0.11.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "48e4cc64c2ad9ebe670cb8fd69dd50ae301650392e81c05f9bfcb2d5bdbc24b0"
+dependencies = [
+ "phf_shared 0.11.2",
+ "rand 0.8.5",
+]
+
+[[package]]
+name = "phf_macros"
+version = "0.8.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "7f6fde18ff429ffc8fe78e2bf7f8b7a5a5a6e2a8b58bc5a9ac69198bbda9189c"
+dependencies = [
+ "phf_generator 0.8.0",
+ "phf_shared 0.8.0",
+ "proc-macro-hack",
+ "proc-macro2",
+ "quote",
+ "syn 1.0.109",
+]
+
+[[package]]
+name = "phf_macros"
+version = "0.11.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "3444646e286606587e49f3bcf1679b8cef1dc2c5ecc29ddacaffc305180d464b"
+dependencies = [
+ "phf_generator 0.11.2",
+ "phf_shared 0.11.2",
+ "proc-macro2",
+ "quote",
+ "syn 2.0.60",
+]
+
+[[package]]
+name = "phf_shared"
+version = "0.8.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "c00cf8b9eafe68dde5e9eaa2cef8ee84a9336a47d566ec55ca16589633b65af7"
+dependencies = [
+ "siphasher",
+]
+
+[[package]]
+name = "phf_shared"
+version = "0.10.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "b6796ad771acdc0123d2a88dc428b5e38ef24456743ddb1744ed628f9815c096"
+dependencies = [
+ "siphasher",
+]
+
+[[package]]
+name = "phf_shared"
+version = "0.11.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "90fcb95eef784c2ac79119d1dd819e162b5da872ce6f3c3abe1e8ca1c082f72b"
+dependencies = [
+ "siphasher",
+]
+
+[[package]]
+name = "pin-project"
+version = "1.1.5"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "b6bf43b791c5b9e34c3d182969b4abb522f9343702850a2e57f460d00d09b4b3"
+dependencies = [
+ "pin-project-internal",
+]
+
+[[package]]
+name = "pin-project-internal"
+version = "1.1.5"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "2f38a4412a78282e09a2cf38d195ea5420d15ba0602cb375210efbc877243965"
+dependencies = [
+ "proc-macro2",
+ "quote",
+ "syn 2.0.60",
+]
+
+[[package]]
+name = "pin-project-lite"
+version = "0.2.14"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "bda66fc9667c18cb2758a2ac84d1167245054bcf85d5d1aaa6923f45801bdd02"
+
+[[package]]
+name = "pin-utils"
+version = "0.1.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "8b870d8c151b6f2fb93e84a13146138f05d02ed11c7e7c54f8826aaaf7c9f184"
+
+[[package]]
+name = "piper"
+version = "0.2.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "668d31b1c4eba19242f2088b2bf3316b82ca31082a8335764db4e083db7485d4"
+dependencies = [
+ "atomic-waker",
+ "fastrand 2.0.2",
+ "futures-io",
+]
+
+[[package]]
+name = "pkcs8"
+version = "0.10.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "f950b2377845cebe5cf8b5165cb3cc1a5e0fa5cfa3e1f7f55707d8fd82e0a7b7"
+dependencies = [
+ "der",
+ "spki",
+]
+
+[[package]]
+name = "pkg-config"
+version = "0.3.30"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "d231b230927b5e4ad203db57bbcbee2802f6bce620b1e4a9024a07d94e2907ec"
+
+[[package]]
+name = "plain"
+version = "0.2.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "b4596b6d070b27117e987119b4dac604f3c58cfb0b191112e24771b2faeac1a6"
+
+[[package]]
+name = "plist"
+version = "1.6.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "d9d34169e64b3c7a80c8621a48adaf44e0cf62c78a9b25dd9dd35f1881a17cf9"
+dependencies = [
+ "base64 0.21.7",
+ "indexmap 2.2.6",
+ "line-wrap",
+ "quick-xml",
+ "serde",
+ "time",
+]
+
+[[package]]
+name = "png"
+version = "0.17.13"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "06e4b0d3d1312775e782c86c91a111aa1f910cbb65e1337f9975b5f9a554b5e1"
+dependencies = [
+ "bitflags 1.3.2",
+ "crc32fast",
+ "fdeflate",
+ "flate2",
+ "miniz_oxide",
+]
+
+[[package]]
+name = "polling"
+version = "2.8.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "4b2d323e8ca7996b3e23126511a523f7e62924d93ecd5ae73b333815b0eb3dce"
+dependencies = [
+ "autocfg",
+ "bitflags 1.3.2",
+ "cfg-if",
+ "concurrent-queue",
+ "libc",
+ "log",
+ "pin-project-lite",
+ "windows-sys 0.48.0",
+]
+
+[[package]]
+name = "polling"
+version = "3.7.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "645493cf344456ef24219d02a768cf1fb92ddf8c92161679ae3d91b91a637be3"
+dependencies = [
+ "cfg-if",
+ "concurrent-queue",
+ "hermit-abi",
+ "pin-project-lite",
+ "rustix 0.38.34",
+ "tracing",
+ "windows-sys 0.52.0",
+]
+
+[[package]]
+name = "portable-atomic"
+version = "1.6.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "7170ef9988bc169ba16dd36a7fa041e5c4cbeb6a35b76d4c03daded371eae7c0"
+
+[[package]]
+name = "powerfmt"
+version = "0.2.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "439ee305def115ba05938db6eb1644ff94165c5ab5e9420d1c1bcedbba909391"
+
+[[package]]
+name = "ppv-lite86"
+version = "0.2.17"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "5b40af805b3121feab8a3c29f04d8ad262fa8e0561883e7653e024ae4479e6de"
+
+[[package]]
+name = "precomputed-hash"
+version = "0.1.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "925383efa346730478fb4838dbe9137d2a47675ad789c546d150a6e1dd4ab31c"
+
+[[package]]
+name = "primeorder"
+version = "0.13.6"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "353e1ca18966c16d9deb1c69278edbc5f194139612772bd9537af60ac231e1e6"
+dependencies = [
+ "elliptic-curve",
+]
+
+[[package]]
+name = "proc-macro-crate"
+version = "1.3.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "7f4c021e1093a56626774e81216a4ce732a735e5bad4868a03f3ed65ca0c3919"
+dependencies = [
+ "once_cell",
+ "toml_edit 0.19.15",
+]
+
+[[package]]
+name = "proc-macro-error"
+version = "1.0.4"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "da25490ff9892aab3fcf7c36f08cfb902dd3e71ca0f9f9517bea02a73a5ce38c"
+dependencies = [
+ "proc-macro-error-attr",
+ "proc-macro2",
+ "quote",
+ "syn 1.0.109",
+ "version_check",
+]
+
+[[package]]
+name = "proc-macro-error-attr"
+version = "1.0.4"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "a1be40180e52ecc98ad80b184934baf3d0d29f979574e439af5a55274b35f869"
+dependencies = [
+ "proc-macro2",
+ "quote",
+ "version_check",
+]
+
+[[package]]
+name = "proc-macro-hack"
+version = "0.5.20+deprecated"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "dc375e1527247fe1a97d8b7156678dfe7c1af2fc075c9a4db3690ecd2a148068"
+
+[[package]]
+name = "proc-macro2"
+version = "1.0.81"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "3d1597b0c024618f09a9c3b8655b7e430397a36d23fdafec26d6965e9eec3eba"
+dependencies = [
+ "unicode-ident",
+]
+
+[[package]]
+name = "procfs-core"
+version = "0.16.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "2d3554923a69f4ce04c4a754260c338f505ce22642d3830e049a399fc2059a29"
+dependencies = [
+ "bitflags 2.5.0",
+ "hex",
+]
+
+[[package]]
+name = "quick-xml"
+version = "0.31.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "1004a344b30a54e2ee58d66a71b32d2db2feb0a31f9a2d302bf0536f15de2a33"
+dependencies = [
+ "memchr",
+]
+
+[[package]]
+name = "quote"
+version = "1.0.36"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "0fa76aaf39101c457836aec0ce2316dbdc3ab723cdda1c6bd4e6ad4208acaca7"
+dependencies = [
+ "proc-macro2",
+]
+
+[[package]]
+name = "rand"
+version = "0.7.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "6a6b1679d49b24bbfe0c803429aa1874472f50d9b363131f0e89fc356b544d03"
+dependencies = [
+ "getrandom 0.1.16",
+ "libc",
+ "rand_chacha 0.2.2",
+ "rand_core 0.5.1",
+ "rand_hc",
+ "rand_pcg",
+]
+
+[[package]]
+name = "rand"
+version = "0.8.5"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "34af8d1a0e25924bc5b7c43c079c942339d8f0a8b57c39049bef581b46327404"
+dependencies = [
+ "libc",
+ "rand_chacha 0.3.1",
+ "rand_core 0.6.4",
+]
+
+[[package]]
+name = "rand_chacha"
+version = "0.2.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "f4c8ed856279c9737206bf725bf36935d8666ead7aa69b52be55af369d193402"
+dependencies = [
+ "ppv-lite86",
+ "rand_core 0.5.1",
+]
+
+[[package]]
+name = "rand_chacha"
+version = "0.3.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "e6c10a63a0fa32252be49d21e7709d4d4baf8d231c2dbce1eaa8141b9b127d88"
+dependencies = [
+ "ppv-lite86",
+ "rand_core 0.6.4",
+]
+
+[[package]]
+name = "rand_core"
+version = "0.5.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "90bde5296fc891b0cef12a6d03ddccc162ce7b2aff54160af9338f8d40df6d19"
+dependencies = [
+ "getrandom 0.1.16",
+]
+
+[[package]]
+name = "rand_core"
+version = "0.6.4"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "ec0be4795e2f6a28069bec0b5ff3e2ac9bafc99e6a9a7dc3547996c5c816922c"
+dependencies = [
+ "getrandom 0.2.14",
+]
+
+[[package]]
+name = "rand_hc"
+version = "0.2.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "ca3129af7b92a17112d59ad498c6f81eaf463253766b90396d39ea7a39d6613c"
+dependencies = [
+ "rand_core 0.5.1",
+]
+
+[[package]]
+name = "rand_pcg"
+version = "0.2.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "16abd0c1b639e9eb4d7c50c0b8100b0d0f849be2349829c740fe8e6eb4816429"
+dependencies = [
+ "rand_core 0.5.1",
+]
+
+[[package]]
+name = "range-map"
+version = "0.2.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "12a5a2d6c7039059af621472a4389be1215a816df61aa4d531cfe85264aee95f"
+dependencies = [
+ "num-traits",
+]
+
+[[package]]
+name = "raw-window-handle"
+version = "0.5.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "f2ff9a1f06a88b01621b7ae906ef0211290d1c8a168a15542486a8f61c0833b9"
+
+[[package]]
+name = "rayon"
+version = "1.10.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "b418a60154510ca1a002a752ca9714984e21e4241e804d32555251faf8b78ffa"
+dependencies = [
+ "either",
+ "rayon-core",
+]
+
+[[package]]
+name = "rayon-core"
+version = "1.12.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "1465873a3dfdaa8ae7cb14b4383657caab0b3e8a0aa9ae8e04b044854c8dfce2"
+dependencies = [
+ "crossbeam-deque",
+ "crossbeam-utils",
+]
+
+[[package]]
+name = "redox_syscall"
+version = "0.4.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "4722d768eff46b75989dd134e5c353f0d6296e5aaa3132e776cbdb56be7731aa"
+dependencies = [
+ "bitflags 1.3.2",
+]
+
+[[package]]
+name = "redox_users"
+version = "0.4.5"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "bd283d9651eeda4b2a83a43c1c91b266c40fd76ecd39a50a8c630ae69dc72891"
+dependencies = [
+ "getrandom 0.2.14",
+ "libredox",
+ "thiserror",
+]
+
+[[package]]
+name = "regex"
+version = "1.10.4"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "c117dbdfde9c8308975b6a18d71f3f385c89461f7b3fb054288ecf2a2058ba4c"
+dependencies = [
+ "aho-corasick",
+ "memchr",
+ "regex-automata 0.4.6",
+ "regex-syntax 0.8.3",
+]
+
+[[package]]
+name = "regex-automata"
+version = "0.1.10"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "6c230d73fb8d8c1b9c0b3135c5142a8acee3a0558fb8db5cf1cb65f8d7862132"
+dependencies = [
+ "regex-syntax 0.6.29",
+]
+
+[[package]]
+name = "regex-automata"
+version = "0.4.6"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "86b83b8b9847f9bf95ef68afb0b8e6cdb80f498442f5179a29fad448fcc1eaea"
+dependencies = [
+ "aho-corasick",
+ "memchr",
+ "regex-syntax 0.8.3",
+]
+
+[[package]]
+name = "regex-syntax"
+version = "0.6.29"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "f162c6dd7b008981e4d40210aca20b4bd0f9b60ca9271061b07f78537722f2e1"
+
+[[package]]
+name = "regex-syntax"
+version = "0.8.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "adad44e29e4c806119491a7f06f03de4d1af22c3a680dd47f1e6e179439d1f56"
+
+[[package]]
+name = "reqwest"
+version = "0.11.27"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "dd67538700a17451e7cba03ac727fb961abb7607553461627b97de0b89cf4a62"
+dependencies = [
+ "base64 0.21.7",
+ "bytes",
+ "encoding_rs",
+ "futures-core",
+ "futures-util",
+ "h2 0.3.26",
+ "http 0.2.12",
+ "http-body 0.4.6",
+ "hyper 0.14.28",
+ "hyper-tls 0.5.0",
+ "ipnet",
+ "js-sys",
+ "log",
+ "mime",
+ "native-tls",
+ "once_cell",
+ "percent-encoding",
+ "pin-project-lite",
+ "rustls-pemfile 1.0.4",
+ "serde",
+ "serde_json",
+ "serde_urlencoded",
+ "sync_wrapper",
+ "system-configuration",
+ "tokio",
+ "tokio-native-tls",
+ "tokio-util",
+ "tower-service",
+ "url",
+ "wasm-bindgen",
+ "wasm-bindgen-futures",
+ "wasm-streams",
+ "web-sys",
+ "winreg 0.50.0",
+]
+
+[[package]]
+name = "reqwest"
+version = "0.12.4"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "566cafdd92868e0939d3fb961bd0dc25fcfaaed179291093b3d43e6b3150ea10"
+dependencies = [
+ "base64 0.22.0",
+ "bytes",
+ "encoding_rs",
+ "futures-channel",
+ "futures-core",
+ "futures-util",
+ "h2 0.4.4",
+ "http 1.1.0",
+ "http-body 1.0.0",
+ "http-body-util",
+ "hyper 1.3.1",
+ "hyper-tls 0.6.0",
+ "hyper-util",
+ "ipnet",
+ "js-sys",
+ "log",
+ "mime",
+ "native-tls",
+ "once_cell",
+ "percent-encoding",
+ "pin-project-lite",
+ "rustls-pemfile 2.1.2",
+ "serde",
+ "serde_json",
+ "serde_urlencoded",
+ "sync_wrapper",
+ "system-configuration",
+ "tokio",
+ "tokio-native-tls",
+ "tokio-util",
+ "tower-service",
+ "url",
+ "wasm-bindgen",
+ "wasm-bindgen-futures",
+ "wasm-streams",
+ "web-sys",
+ "winreg 0.52.0",
+]
+
+[[package]]
+name = "result"
+version = "1.0.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "194d8e591e405d1eecf28819740abed6d719d1a2db87fc0bcdedee9a26d55560"
+
+[[package]]
+name = "rfc6979"
+version = "0.4.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "f8dd2a808d456c4a54e300a23e9f5a67e122c3024119acbfd73e3bf664491cb2"
+dependencies = [
+ "hmac",
+ "subtle",
+]
+
+[[package]]
+name = "rfd"
+version = "0.10.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "0149778bd99b6959285b0933288206090c50e2327f47a9c463bfdbf45c8823ea"
+dependencies = [
+ "block",
+ "dispatch",
+ "glib-sys",
+ "gobject-sys",
+ "gtk-sys",
+ "js-sys",
+ "lazy_static",
+ "log",
+ "objc",
+ "objc-foundation",
+ "objc_id",
+ "raw-window-handle",
+ "wasm-bindgen",
+ "wasm-bindgen-futures",
+ "web-sys",
+ "windows 0.37.0",
+]
+
+[[package]]
+name = "rustc-demangle"
+version = "0.1.23"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "d626bb9dae77e28219937af045c257c28bfd3f69333c512553507f5f9798cb76"
+
+[[package]]
+name = "rustc_version"
+version = "0.4.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "bfa0f585226d2e68097d4f95d113b15b83a82e819ab25717ec0590d9584ef366"
+dependencies = [
+ "semver",
+]
+
+[[package]]
+name = "rustix"
+version = "0.37.27"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "fea8ca367a3a01fe35e6943c400addf443c0f57670e6ec51196f71a4b8762dd2"
+dependencies = [
+ "bitflags 1.3.2",
+ "errno",
+ "io-lifetimes",
+ "libc",
+ "linux-raw-sys 0.3.8",
+ "windows-sys 0.48.0",
+]
+
+[[package]]
+name = "rustix"
+version = "0.38.34"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "70dc5ec042f7a43c4a73241207cecc9873a06d45debb38b329f8541d85c2730f"
+dependencies = [
+ "bitflags 2.5.0",
+ "errno",
+ "libc",
+ "linux-raw-sys 0.4.13",
+ "windows-sys 0.52.0",
+]
+
+[[package]]
+name = "rustls-pemfile"
+version = "1.0.4"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "1c74cae0a4cf6ccbbf5f359f08efdf8ee7e1dc532573bf0db71968cb56b1448c"
+dependencies = [
+ "base64 0.21.7",
+]
+
+[[package]]
+name = "rustls-pemfile"
+version = "2.1.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "29993a25686778eb88d4189742cd713c9bce943bc54251a33509dc63cbacf73d"
+dependencies = [
+ "base64 0.22.0",
+ "rustls-pki-types",
+]
+
+[[package]]
+name = "rustls-pki-types"
+version = "1.5.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "beb461507cee2c2ff151784c52762cf4d9ff6a61f3e80968600ed24fa837fa54"
+
+[[package]]
+name = "rustversion"
+version = "1.0.15"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "80af6f9131f277a45a3fba6ce8e2258037bb0477a67e610d3c1fe046ab31de47"
+
+[[package]]
+name = "ryu"
+version = "1.0.17"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "e86697c916019a8588c99b5fac3cead74ec0b4b819707a682fd4d23fa0ce1ba1"
+
+[[package]]
+name = "same-file"
+version = "1.0.6"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "93fc1dc3aaa9bfed95e02e6eadabb4baf7e3078b0bd1b4d7b6b0b68378900502"
+dependencies = [
+ "winapi-util",
+]
+
+[[package]]
+name = "schannel"
+version = "0.1.23"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "fbc91545643bcf3a0bbb6569265615222618bdf33ce4ffbbd13c4bbd4c093534"
+dependencies = [
+ "windows-sys 0.52.0",
+]
+
+[[package]]
+name = "scoped-tls"
+version = "1.0.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "e1cf6437eb19a8f4a6cc0f7dca544973b0b78843adbfeb3683d1a94a0024a294"
+
+[[package]]
+name = "scopeguard"
+version = "1.2.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "94143f37725109f92c262ed2cf5e59bce7498c01bcc1502d7b9afe439a4e9f49"
+
+[[package]]
+name = "scroll"
+version = "0.12.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "6ab8598aa408498679922eff7fa985c25d58a90771bd6be794434c5277eab1a6"
+dependencies = [
+ "scroll_derive",
+]
+
+[[package]]
+name = "scroll_derive"
+version = "0.12.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "7f81c2fde025af7e69b1d1420531c8a8811ca898919db177141a85313b1cb932"
+dependencies = [
+ "proc-macro2",
+ "quote",
+ "syn 2.0.60",
+]
+
+[[package]]
+name = "sec1"
+version = "0.7.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "d3e97a565f76233a6003f9f5c54be1d9c5bdfa3eccfb189469f11ec4901c47dc"
+dependencies = [
+ "base16ct",
+ "der",
+ "generic-array",
+ "pkcs8",
+ "subtle",
+ "zeroize",
+]
+
+[[package]]
+name = "security-framework"
+version = "2.10.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "770452e37cad93e0a50d5abc3990d2bc351c36d0328f86cefec2f2fb206eaef6"
+dependencies = [
+ "bitflags 1.3.2",
+ "core-foundation",
+ "core-foundation-sys",
+ "libc",
+ "security-framework-sys",
+]
+
+[[package]]
+name = "security-framework-sys"
+version = "2.10.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "41f3cc463c0ef97e11c3461a9d3787412d30e8e7eb907c79180c4a57bf7c04ef"
+dependencies = [
+ "core-foundation-sys",
+ "libc",
+]
+
+[[package]]
+name = "selectors"
+version = "0.22.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "df320f1889ac4ba6bc0cdc9c9af7af4bd64bb927bccdf32d81140dc1f9be12fe"
+dependencies = [
+ "bitflags 1.3.2",
+ "cssparser",
+ "derive_more",
+ "fxhash",
+ "log",
+ "matches",
+ "phf 0.8.0",
+ "phf_codegen 0.8.0",
+ "precomputed-hash",
+ "servo_arc",
+ "smallvec",
+ "thin-slice",
+]
+
+[[package]]
+name = "semver"
+version = "1.0.22"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "92d43fe69e652f3df9bdc2b85b2854a0825b86e4fb76bc44d945137d053639ca"
+dependencies = [
+ "serde",
+]
+
+[[package]]
+name = "sentry"
+version = "0.32.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "00421ed8fa0c995f07cde48ba6c89e80f2b312f74ff637326f392fbfd23abe02"
+dependencies = [
+ "httpdate",
+ "native-tls",
+ "reqwest 0.12.4",
+ "sentry-backtrace",
+ "sentry-contexts",
+ "sentry-core",
+ "sentry-debug-images",
+ "sentry-panic",
+ "sentry-tracing",
+ "tokio",
+ "ureq",
+]
+
+[[package]]
+name = "sentry-backtrace"
+version = "0.32.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "a79194074f34b0cbe5dd33896e5928bbc6ab63a889bd9df2264af5acb186921e"
+dependencies = [
+ "backtrace",
+ "once_cell",
+ "regex",
+ "sentry-core",
+]
+
+[[package]]
+name = "sentry-contexts"
+version = "0.32.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "eba8870c5dba2bfd9db25c75574a11429f6b95957b0a78ac02e2970dd7a5249a"
+dependencies = [
+ "hostname",
+ "libc",
+ "os_info",
+ "rustc_version",
+ "sentry-core",
+ "uname",
+]
+
+[[package]]
+name = "sentry-core"
+version = "0.32.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "46a75011ea1c0d5c46e9e57df03ce81f5c7f0a9e199086334a1f9c0a541e0826"
+dependencies = [
+ "once_cell",
+ "rand 0.8.5",
+ "sentry-types",
+ "serde",
+ "serde_json",
+]
+
+[[package]]
+name = "sentry-debug-images"
+version = "0.32.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "7ec2a486336559414ab66548da610da5e9626863c3c4ffca07d88f7dc71c8de8"
+dependencies = [
+ "findshlibs",
+ "once_cell",
+ "sentry-core",
+]
+
+[[package]]
+name = "sentry-panic"
+version = "0.32.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "2eaa3ecfa3c8750c78dcfd4637cfa2598b95b52897ed184b4dc77fcf7d95060d"
+dependencies = [
+ "sentry-backtrace",
+ "sentry-core",
+]
+
+[[package]]
+name = "sentry-rust-minidump"
+version = "0.7.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "6bc709f4afe117f8cc85bde49db457f8115601fa1d4b69fa35c3f44bf9ee619c"
+dependencies = [
+ "minidumper-child",
+ "sentry",
+ "thiserror",
+]
+
+[[package]]
+name = "sentry-tracing"
+version = "0.32.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "f715932bf369a61b7256687c6f0554141b7ce097287e30e3f7ed6e9de82498fe"
+dependencies = [
+ "sentry-backtrace",
+ "sentry-core",
+ "tracing-core",
+ "tracing-subscriber",
+]
+
+[[package]]
+name = "sentry-types"
+version = "0.32.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "4519c900ce734f7a0eb7aba0869dfb225a7af8820634a7dd51449e3b093cfb7c"
+dependencies = [
+ "debugid",
+ "hex",
+ "rand 0.8.5",
+ "serde",
+ "serde_json",
+ "thiserror",
+ "time",
+ "url",
+ "uuid 1.8.0",
+]
+
+[[package]]
+name = "serde"
+version = "1.0.198"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "9846a40c979031340571da2545a4e5b7c4163bdae79b301d5f86d03979451fcc"
+dependencies = [
+ "serde_derive",
+]
+
+[[package]]
+name = "serde_derive"
+version = "1.0.198"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "e88edab869b01783ba905e7d0153f9fc1a6505a96e4ad3018011eedb838566d9"
+dependencies = [
+ "proc-macro2",
+ "quote",
+ "syn 2.0.60",
+]
+
+[[package]]
+name = "serde_ini"
+version = "0.2.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "eb236687e2bb073a7521c021949be944641e671b8505a94069ca37b656c81139"
+dependencies = [
+ "result",
+ "serde",
+ "void",
+]
+
+[[package]]
+name = "serde_json"
+version = "1.0.116"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "3e17db7126d17feb94eb3fad46bf1a96b034e8aacbc2e775fe81505f8b0b2813"
+dependencies = [
+ "indexmap 2.2.6",
+ "itoa 1.0.11",
+ "ryu",
+ "serde",
+]
+
+[[package]]
+name = "serde_repr"
+version = "0.1.19"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "6c64451ba24fc7a6a2d60fc75dd9c83c90903b19028d4eff35e88fc1e86564e9"
+dependencies = [
+ "proc-macro2",
+ "quote",
+ "syn 2.0.60",
+]
+
+[[package]]
+name = "serde_spanned"
+version = "0.6.5"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "eb3622f419d1296904700073ea6cc23ad690adbd66f13ea683df73298736f0c1"
+dependencies = [
+ "serde",
+]
+
+[[package]]
+name = "serde_urlencoded"
+version = "0.7.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "d3491c14715ca2294c4d6a88f15e84739788c1d030eed8c110436aafdaa2f3fd"
+dependencies = [
+ "form_urlencoded",
+ "itoa 1.0.11",
+ "ryu",
+ "serde",
+]
+
+[[package]]
+name = "serde_with"
+version = "3.7.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "ee80b0e361bbf88fd2f6e242ccd19cfda072cb0faa6ae694ecee08199938569a"
+dependencies = [
+ "base64 0.21.7",
+ "chrono",
+ "hex",
+ "indexmap 1.9.3",
+ "indexmap 2.2.6",
+ "serde",
+ "serde_derive",
+ "serde_json",
+ "serde_with_macros",
+ "time",
+]
+
+[[package]]
+name = "serde_with_macros"
+version = "3.7.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "6561dc161a9224638a31d876ccdfefbc1df91d3f3a8342eddb35f055d48c7655"
+dependencies = [
+ "darling",
+ "proc-macro2",
+ "quote",
+ "syn 2.0.60",
+]
+
+[[package]]
+name = "serialize-to-javascript"
+version = "0.1.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "c9823f2d3b6a81d98228151fdeaf848206a7855a7a042bbf9bf870449a66cafb"
+dependencies = [
+ "serde",
+ "serde_json",
+ "serialize-to-javascript-impl",
+]
+
+[[package]]
+name = "serialize-to-javascript-impl"
+version = "0.1.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "74064874e9f6a15f04c1f3cb627902d0e6b410abbf36668afa873c61889f1763"
+dependencies = [
+ "proc-macro2",
+ "quote",
+ "syn 1.0.109",
+]
+
+[[package]]
+name = "servo_arc"
+version = "0.1.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "d98238b800e0d1576d8b6e3de32827c2d74bee68bb97748dcf5071fb53965432"
+dependencies = [
+ "nodrop",
+ "stable_deref_trait",
+]
+
+[[package]]
+name = "sha1"
+version = "0.6.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "c1da05c97445caa12d05e848c4a4fcbbea29e748ac28f7e80e9b010392063770"
+dependencies = [
+ "sha1_smol",
+]
+
+[[package]]
+name = "sha1"
+version = "0.10.6"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "e3bf829a2d51ab4a5ddf1352d8470c140cadc8301b2ae1789db023f01cedd6ba"
+dependencies = [
+ "cfg-if",
+ "cpufeatures",
+ "digest",
+]
+
+[[package]]
+name = "sha1_smol"
+version = "1.0.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "ae1a47186c03a32177042e55dbc5fd5aee900b8e0069a8d70fba96a9375cd012"
+
+[[package]]
+name = "sha2"
+version = "0.10.8"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "793db75ad2bcafc3ffa7c68b215fee268f537982cd901d132f89c6343f3a3dc8"
+dependencies = [
+ "cfg-if",
+ "cpufeatures",
+ "digest",
+]
+
+[[package]]
+name = "sharded-slab"
+version = "0.1.7"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "f40ca3c46823713e0d4209592e8d6e826aa57e928f09752619fc696c499637f6"
+dependencies = [
+ "lazy_static",
+]
+
+[[package]]
+name = "signal-hook-registry"
+version = "1.4.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "a9e9e0b4211b72e7b8b6e85c807d36c212bdb33ea8587f7569562a84df5465b1"
+dependencies = [
+ "libc",
+]
+
+[[package]]
+name = "signature"
+version = "2.2.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "77549399552de45a898a580c1b41d445bf730df867cc44e6c0233bbc4b8329de"
+dependencies = [
+ "digest",
+ "rand_core 0.6.4",
+]
+
+[[package]]
+name = "simd-adler32"
+version = "0.3.7"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "d66dc143e6b11c1eddc06d5c423cfc97062865baf299914ab64caa38182078fe"
+
+[[package]]
+name = "siphasher"
+version = "0.3.11"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "38b58827f4464d87d377d175e90bf58eb00fd8716ff0a62f80356b5e61555d0d"
+
+[[package]]
+name = "slab"
+version = "0.4.9"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "8f92a496fb766b417c996b9c5e57daf2f7ad3b0bebe1ccfca4856390e3d3bb67"
+dependencies = [
+ "autocfg",
+]
+
+[[package]]
+name = "smallvec"
+version = "1.13.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "3c5e1a9a646d36c3599cd173a41282daf47c44583ad367b8e6837255952e5c67"
+
+[[package]]
+name = "smart-default"
+version = "0.7.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "0eb01866308440fc64d6c44d9e86c5cc17adfe33c4d6eed55da9145044d0ffc1"
+dependencies = [
+ "proc-macro2",
+ "quote",
+ "syn 2.0.60",
+]
+
+[[package]]
+name = "socket2"
+version = "0.4.10"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "9f7916fc008ca5542385b89a3d3ce689953c143e9304a9bf8beec1de48994c0d"
+dependencies = [
+ "libc",
+ "winapi",
+]
+
+[[package]]
+name = "socket2"
+version = "0.5.6"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "05ffd9c0a93b7543e062e759284fcf5f5e3b098501104bfbdde4d404db792871"
+dependencies = [
+ "libc",
+ "windows-sys 0.52.0",
+]
+
+[[package]]
+name = "soup2"
+version = "0.2.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "b2b4d76501d8ba387cf0fefbe055c3e0a59891d09f0f995ae4e4b16f6b60f3c0"
+dependencies = [
+ "bitflags 1.3.2",
+ "gio",
+ "glib",
+ "libc",
+ "once_cell",
+ "soup2-sys",
+]
+
+[[package]]
+name = "soup2-sys"
+version = "0.2.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "009ef427103fcb17f802871647a7fa6c60cbb654b4c4e4c0ac60a31c5f6dc9cf"
+dependencies = [
+ "bitflags 1.3.2",
+ "gio-sys",
+ "glib-sys",
+ "gobject-sys",
+ "libc",
+ "system-deps 5.0.0",
+]
+
+[[package]]
+name = "spki"
+version = "0.7.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "d91ed6c858b01f942cd56b37a94b3e0a1798290327d1236e4d9cf4eaca44d29d"
+dependencies = [
+ "base64ct",
+ "der",
+]
+
+[[package]]
+name = "stable_deref_trait"
+version = "1.2.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "a8f112729512f8e442d81f95a8a7ddf2b7c6b8a1a6f509a95864142b30cab2d3"
+
+[[package]]
+name = "state"
+version = "0.5.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "dbe866e1e51e8260c9eed836a042a5e7f6726bb2b411dffeaa712e19c388f23b"
+dependencies = [
+ "loom",
+]
+
+[[package]]
+name = "static_assertions"
+version = "1.1.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "a2eb9349b6444b326872e140eb1cf5e7c522154d69e7a0ffb0fb81c06b37543f"
+
+[[package]]
+name = "string_cache"
+version = "0.8.7"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "f91138e76242f575eb1d3b38b4f1362f10d3a43f47d182a5b359af488a02293b"
+dependencies = [
+ "new_debug_unreachable",
+ "once_cell",
+ "parking_lot",
+ "phf_shared 0.10.0",
+ "precomputed-hash",
+ "serde",
+]
+
+[[package]]
+name = "string_cache_codegen"
+version = "0.5.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "6bb30289b722be4ff74a408c3cc27edeaad656e06cb1fe8fa9231fa59c728988"
+dependencies = [
+ "phf_generator 0.10.0",
+ "phf_shared 0.10.0",
+ "proc-macro2",
+ "quote",
+]
+
+[[package]]
+name = "strsim"
+version = "0.10.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "73473c0e59e6d5812c5dfe2a064a6444949f089e20eec9a2e5506596494e4623"
+
+[[package]]
+name = "subtle"
+version = "2.5.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "81cdd64d312baedb58e21336b31bc043b77e01cc99033ce76ef539f78e965ebc"
+
+[[package]]
+name = "syn"
+version = "1.0.109"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "72b64191b275b66ffe2469e8af2c1cfe3bafa67b529ead792a6d0160888b4237"
+dependencies = [
+ "proc-macro2",
+ "quote",
+ "unicode-ident",
+]
+
+[[package]]
+name = "syn"
+version = "2.0.60"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "909518bc7b1c9b779f1bbf07f2929d35af9f0f37e47c6e9ef7f9dddc1e1821f3"
+dependencies = [
+ "proc-macro2",
+ "quote",
+ "unicode-ident",
+]
+
+[[package]]
+name = "sync_wrapper"
+version = "0.1.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "2047c6ded9c721764247e62cd3b03c09ffc529b2ba5b10ec482ae507a4a70160"
+
+[[package]]
+name = "sys-info"
+version = "0.9.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "0b3a0d0aba8bf96a0e1ddfdc352fc53b3df7f39318c71854910c3c4b024ae52c"
+dependencies = [
+ "cc",
+ "libc",
+]
+
+[[package]]
+name = "sys-locale"
+version = "0.2.4"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "f8a11bd9c338fdba09f7881ab41551932ad42e405f61d01e8406baea71c07aee"
+dependencies = [
+ "js-sys",
+ "libc",
+ "wasm-bindgen",
+ "web-sys",
+ "windows-sys 0.45.0",
+]
+
+[[package]]
+name = "sysinfo"
+version = "0.30.11"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "87341a165d73787554941cd5ef55ad728011566fe714e987d1b976c15dbc3a83"
+dependencies = [
+ "cfg-if",
+ "core-foundation-sys",
+ "libc",
+ "ntapi",
+ "once_cell",
+ "rayon",
+ "windows 0.52.0",
+]
+
+[[package]]
+name = "system-configuration"
+version = "0.5.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "ba3a3adc5c275d719af8cb4272ea1c4a6d668a777f37e115f6d11ddbc1c8e0e7"
+dependencies = [
+ "bitflags 1.3.2",
+ "core-foundation",
+ "system-configuration-sys",
+]
+
+[[package]]
+name = "system-configuration-sys"
+version = "0.5.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "a75fb188eb626b924683e3b95e3a48e63551fcfb51949de2f06a9d91dbee93c9"
+dependencies = [
+ "core-foundation-sys",
+ "libc",
+]
+
+[[package]]
+name = "system-deps"
+version = "5.0.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "18db855554db7bd0e73e06cf7ba3df39f97812cb11d3f75e71c39bf45171797e"
+dependencies = [
+ "cfg-expr 0.9.1",
+ "heck 0.3.3",
+ "pkg-config",
+ "toml 0.5.11",
+ "version-compare 0.0.11",
+]
+
+[[package]]
+name = "system-deps"
+version = "6.2.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "a3e535eb8dded36d55ec13eddacd30dec501792ff23a0b1682c38601b8cf2349"
+dependencies = [
+ "cfg-expr 0.15.8",
+ "heck 0.5.0",
+ "pkg-config",
+ "toml 0.8.12",
+ "version-compare 0.2.0",
+]
+
+[[package]]
+name = "tao"
+version = "0.16.9"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "575c856fc21e551074869dcfaad8f706412bd5b803dfa0fbf6881c4ff4bfafab"
+dependencies = [
+ "bitflags 1.3.2",
+ "cairo-rs",
+ "cc",
+ "cocoa 0.24.1",
+ "core-foundation",
+ "core-graphics 0.22.3",
+ "crossbeam-channel",
+ "dispatch",
+ "gdk",
+ "gdk-pixbuf",
+ "gdk-sys",
+ "gdkwayland-sys",
+ "gdkx11-sys",
+ "gio",
+ "glib",
+ "glib-sys",
+ "gtk",
+ "image",
+ "instant",
+ "jni 0.20.0",
+ "lazy_static",
+ "libc",
+ "log",
+ "ndk",
+ "ndk-context",
+ "ndk-sys",
+ "objc",
+ "once_cell",
+ "parking_lot",
+ "png",
+ "raw-window-handle",
+ "scopeguard",
+ "serde",
+ "tao-macros",
+ "unicode-segmentation",
+ "uuid 1.8.0",
+ "windows 0.39.0",
+ "windows-implement",
+ "x11-dl",
+]
+
+[[package]]
+name = "tao-macros"
+version = "0.1.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "ec114582505d158b669b136e6851f85840c109819d77c42bb7c0709f727d18c2"
+dependencies = [
+ "proc-macro2",
+ "quote",
+ "syn 1.0.109",
+]
+
+[[package]]
+name = "tar"
+version = "0.4.40"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "b16afcea1f22891c49a00c751c7b63b2233284064f11a200fc624137c51e2ddb"
+dependencies = [
+ "filetime",
+ "libc",
+ "xattr",
+]
+
+[[package]]
+name = "target-lexicon"
+version = "0.12.14"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "e1fc403891a21bcfb7c37834ba66a547a8f402146eba7265b5a6d88059c9ff2f"
+
+[[package]]
+name = "tauri"
+version = "1.6.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "047aefcc7721bfb8024a9bc39d4719112262610502de7a224fa62c4570cd78d4"
+dependencies = [
+ "anyhow",
+ "base64 0.21.7",
+ "bytes",
+ "cocoa 0.24.1",
+ "dirs-next",
+ "dunce",
+ "embed_plist",
+ "encoding_rs",
+ "flate2",
+ "futures-util",
+ "glib",
+ "glob",
+ "gtk",
+ "heck 0.5.0",
+ "http 0.2.12",
+ "ignore",
+ "indexmap 1.9.3",
+ "minisign-verify",
+ "objc",
+ "once_cell",
+ "open",
+ "os_info",
+ "percent-encoding",
+ "rand 0.8.5",
+ "raw-window-handle",
+ "regex",
+ "reqwest 0.11.27",
+ "rfd",
+ "semver",
+ "serde",
+ "serde_json",
+ "serde_repr",
+ "serialize-to-javascript",
+ "state",
+ "sys-locale",
+ "tar",
+ "tauri-macros",
+ "tauri-runtime",
+ "tauri-runtime-wry",
+ "tauri-utils",
+ "tempfile",
+ "thiserror",
+ "time",
+ "tokio",
+ "url",
+ "uuid 1.8.0",
+ "webkit2gtk",
+ "webview2-com",
+ "windows 0.39.0",
+ "zip",
+]
+
+[[package]]
+name = "tauri-build"
+version = "1.5.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "e9914a4715e0b75d9f387a285c7e26b5bbfeb1249ad9f842675a82481565c532"
+dependencies = [
+ "anyhow",
+ "cargo_toml",
+ "dirs-next",
+ "heck 0.4.1",
+ "json-patch",
+ "semver",
+ "serde",
+ "serde_json",
+ "tauri-utils",
+ "tauri-winres",
+ "walkdir",
+]
+
+[[package]]
+name = "tauri-codegen"
+version = "1.4.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "a1554c5857f65dbc377cefb6b97c8ac77b1cb2a90d30d3448114d5d6b48a77fc"
+dependencies = [
+ "base64 0.21.7",
+ "brotli",
+ "ico",
+ "json-patch",
+ "plist",
+ "png",
+ "proc-macro2",
+ "quote",
+ "regex",
+ "semver",
+ "serde",
+ "serde_json",
+ "sha2",
+ "tauri-utils",
+ "thiserror",
+ "time",
+ "uuid 1.8.0",
+ "walkdir",
+]
+
+[[package]]
+name = "tauri-macros"
+version = "1.4.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "277abf361a3a6993ec16bcbb179de0d6518009b851090a01adfea12ac89fa875"
+dependencies = [
+ "heck 0.4.1",
+ "proc-macro2",
+ "quote",
+ "syn 1.0.109",
+ "tauri-codegen",
+ "tauri-utils",
+]
+
+[[package]]
+name = "tauri-plugin-deep-link"
+version = "0.1.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "4536f5f6602e8fdfaa7b3b185076c2a0704f8eb7015f4e58461eb483ec3ed1f8"
+dependencies = [
+ "dirs",
+ "interprocess",
+ "log",
+ "objc2",
+ "once_cell",
+ "tauri-utils",
+ "windows-sys 0.48.0",
+ "winreg 0.50.0",
+]
+
+[[package]]
+name = "tauri-plugin-single-instance"
+version = "0.0.0"
+source = "git+https://github.com/tauri-apps/plugins-workspace?branch=v1#5e3900e682e13f3759b439116ae2f77a6d389ca2"
+dependencies = [
+ "log",
+ "serde",
+ "serde_json",
+ "tauri",
+ "thiserror",
+ "windows-sys 0.52.0",
+ "zbus",
+]
+
+[[package]]
+name = "tauri-plugin-window-state"
+version = "0.1.1"
+source = "git+https://github.com/tauri-apps/plugins-workspace?branch=v1#5e3900e682e13f3759b439116ae2f77a6d389ca2"
+dependencies = [
+ "bincode 1.3.3",
+ "bitflags 2.5.0",
+ "log",
+ "serde",
+ "serde_json",
+ "tauri",
+ "thiserror",
+]
+
+[[package]]
+name = "tauri-runtime"
+version = "0.14.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "cf2d0652aa2891ff3e9caa2401405257ea29ab8372cce01f186a5825f1bd0e76"
+dependencies = [
+ "gtk",
+ "http 0.2.12",
+ "http-range",
+ "rand 0.8.5",
+ "raw-window-handle",
+ "serde",
+ "serde_json",
+ "tauri-utils",
+ "thiserror",
+ "url",
+ "uuid 1.8.0",
+ "webview2-com",
+ "windows 0.39.0",
+]
+
+[[package]]
+name = "tauri-runtime-wry"
+version = "0.14.5"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "067c56fc153b3caf406d7cd6de4486c80d1d66c0f414f39e94cb2f5543f6445f"
+dependencies = [
+ "cocoa 0.24.1",
+ "gtk",
+ "percent-encoding",
+ "rand 0.8.5",
+ "raw-window-handle",
+ "tauri-runtime",
+ "tauri-utils",
+ "uuid 1.8.0",
+ "webkit2gtk",
+ "webview2-com",
+ "windows 0.39.0",
+ "wry",
+]
+
+[[package]]
+name = "tauri-utils"
+version = "1.5.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "75ad0bbb31fccd1f4c56275d0a5c3abdf1f59999f72cb4ef8b79b4ed42082a21"
+dependencies = [
+ "brotli",
+ "ctor",
+ "dunce",
+ "glob",
+ "heck 0.4.1",
+ "html5ever",
+ "infer",
+ "json-patch",
+ "kuchikiki",
+ "log",
+ "memchr",
+ "phf 0.11.2",
+ "proc-macro2",
+ "quote",
+ "semver",
+ "serde",
+ "serde_json",
+ "serde_with",
+ "thiserror",
+ "url",
+ "walkdir",
+ "windows-version",
+]
+
+[[package]]
+name = "tauri-winres"
+version = "0.1.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "5993dc129e544393574288923d1ec447c857f3f644187f4fbf7d9a875fbfc4fb"
+dependencies = [
+ "embed-resource",
+ "toml 0.7.8",
+]
+
+[[package]]
+name = "tempfile"
+version = "3.10.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "85b77fafb263dd9d05cbeac119526425676db3784113aa9295c88498cbf8bff1"
+dependencies = [
+ "cfg-if",
+ "fastrand 2.0.2",
+ "rustix 0.38.34",
+ "windows-sys 0.52.0",
+]
+
+[[package]]
+name = "tendril"
+version = "0.4.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "d24a120c5fc464a3458240ee02c299ebcb9d67b5249c8848b09d639dca8d7bb0"
+dependencies = [
+ "futf",
+ "mac",
+ "utf-8",
+]
+
+[[package]]
+name = "theseus"
+version = "0.7.1"
+dependencies = [
+ "async-recursion",
+ "async-tungstenite",
+ "async_zip",
+ "base64 0.22.0",
+ "byteorder",
+ "bytes",
+ "chrono",
+ "daedalus",
+ "dirs",
+ "discord-rich-presence",
+ "dunce",
+ "flate2",
+ "futures",
+ "indicatif",
+ "lazy_static",
+ "notify",
+ "notify-debouncer-mini",
+ "p256",
+ "paste",
+ "rand 0.8.5",
+ "regex",
+ "reqwest 0.12.4",
+ "serde",
+ "serde_ini",
+ "serde_json",
+ "sha1_smol",
+ "sha2",
+ "sys-info",
+ "sysinfo",
+ "tauri",
+ "tempfile",
+ "theseus_macros",
+ "thiserror",
+ "tokio",
+ "tokio-stream",
+ "toml 0.8.12",
+ "tracing",
+ "tracing-appender",
+ "tracing-error",
+ "tracing-subscriber",
+ "url",
+ "urlencoding",
+ "uuid 1.8.0",
+ "whoami",
+ "winreg 0.52.0",
+ "zip",
+]
+
+[[package]]
+name = "theseus_gui"
+version = "0.7.1"
+dependencies = [
+ "chrono",
+ "cocoa 0.25.0",
+ "daedalus",
+ "dirs",
+ "futures",
+ "lazy_static",
+ "objc",
+ "once_cell",
+ "os_info",
+ "sentry",
+ "sentry-rust-minidump",
+ "serde",
+ "serde_json",
+ "tauri",
+ "tauri-build",
+ "tauri-plugin-deep-link",
+ "tauri-plugin-single-instance",
+ "tauri-plugin-window-state",
+ "theseus",
+ "thiserror",
+ "tokio",
+ "tokio-stream",
+ "tracing",
+ "tracing-error",
+ "url",
+ "uuid 1.8.0",
+ "window-shadows",
+]
+
+[[package]]
+name = "theseus_macros"
+version = "0.1.0"
+dependencies = [
+ "quote",
+ "syn 2.0.60",
+]
+
+[[package]]
+name = "theseus_playground"
+version = "0.0.0"
+dependencies = [
+ "daedalus",
+ "dunce",
+ "futures",
+ "serde",
+ "serde_json",
+ "tauri",
+ "theseus",
+ "thiserror",
+ "tokio",
+ "tokio-stream",
+ "tracing",
+ "tracing-error",
+ "tracing-subscriber",
+ "url",
+ "uuid 1.8.0",
+ "webbrowser",
+]
+
+[[package]]
+name = "thin-slice"
+version = "0.1.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "8eaa81235c7058867fa8c0e7314f33dcce9c215f535d1913822a2b3f5e289f3c"
+
+[[package]]
+name = "thiserror"
+version = "1.0.59"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "f0126ad08bff79f29fc3ae6a55cc72352056dfff61e3ff8bb7129476d44b23aa"
+dependencies = [
+ "thiserror-impl",
+]
+
+[[package]]
+name = "thiserror-impl"
+version = "1.0.59"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "d1cd413b5d558b4c5bf3680e324a6fa5014e7b7c067a51e69dbdf47eb7148b66"
+dependencies = [
+ "proc-macro2",
+ "quote",
+ "syn 2.0.60",
+]
+
+[[package]]
+name = "thread_local"
+version = "1.1.8"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "8b9ef9bad013ada3808854ceac7b46812a6465ba368859a37e2100283d2d719c"
+dependencies = [
+ "cfg-if",
+ "once_cell",
+]
+
+[[package]]
+name = "time"
+version = "0.3.36"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "5dfd88e563464686c916c7e46e623e520ddc6d79fa6641390f2e3fa86e83e885"
+dependencies = [
+ "deranged",
+ "itoa 1.0.11",
+ "num-conv",
+ "powerfmt",
+ "serde",
+ "time-core",
+ "time-macros",
+]
+
+[[package]]
+name = "time-core"
+version = "0.1.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "ef927ca75afb808a4d64dd374f00a2adf8d0fcff8e7b184af886c3c87ec4a3f3"
+
+[[package]]
+name = "time-macros"
+version = "0.2.18"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "3f252a68540fde3a3877aeea552b832b40ab9a69e318efd078774a01ddee1ccf"
+dependencies = [
+ "num-conv",
+ "time-core",
+]
+
+[[package]]
+name = "tinyvec"
+version = "1.6.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "87cc5ceb3875bb20c2890005a4e226a4651264a5c75edb2421b52861a0a0cb50"
+dependencies = [
+ "tinyvec_macros",
+]
+
+[[package]]
+name = "tinyvec_macros"
+version = "0.1.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "1f3ccbac311fea05f86f61904b462b55fb3df8837a366dfc601a0161d0532f20"
+
+[[package]]
+name = "to_method"
+version = "1.1.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "c7c4ceeeca15c8384bbc3e011dbd8fccb7f068a440b752b7d9b32ceb0ca0e2e8"
+
+[[package]]
+name = "tokio"
+version = "1.37.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "1adbebffeca75fcfd058afa480fb6c0b81e165a0323f9c9d39c9697e37c46787"
+dependencies = [
+ "backtrace",
+ "bytes",
+ "libc",
+ "mio",
+ "num_cpus",
+ "parking_lot",
+ "pin-project-lite",
+ "signal-hook-registry",
+ "socket2 0.5.6",
+ "tokio-macros",
+ "windows-sys 0.48.0",
+]
+
+[[package]]
+name = "tokio-macros"
+version = "2.2.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "5b8a1e28f2deaa14e508979454cb3a223b10b938b45af148bc0986de36f1923b"
+dependencies = [
+ "proc-macro2",
+ "quote",
+ "syn 2.0.60",
+]
+
+[[package]]
+name = "tokio-native-tls"
+version = "0.3.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "bbae76ab933c85776efabc971569dd6119c580d8f5d448769dec1764bf796ef2"
+dependencies = [
+ "native-tls",
+ "tokio",
+]
+
+[[package]]
+name = "tokio-stream"
+version = "0.1.15"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "267ac89e0bec6e691e5813911606935d77c476ff49024f98abcea3e7b15e37af"
+dependencies = [
+ "futures-core",
+ "pin-project-lite",
+ "tokio",
+]
+
+[[package]]
+name = "tokio-util"
+version = "0.7.10"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "5419f34732d9eb6ee4c3578b7989078579b7f039cbbb9ca2c4da015749371e15"
+dependencies = [
+ "bytes",
+ "futures-core",
+ "futures-io",
+ "futures-sink",
+ "pin-project-lite",
+ "tokio",
+ "tracing",
+]
+
+[[package]]
+name = "toml"
+version = "0.5.11"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "f4f7f0dd8d50a853a531c426359045b1998f04219d88799810762cd4ad314234"
+dependencies = [
+ "serde",
+]
+
+[[package]]
+name = "toml"
+version = "0.7.8"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "dd79e69d3b627db300ff956027cc6c3798cef26d22526befdfcd12feeb6d2257"
+dependencies = [
+ "serde",
+ "serde_spanned",
+ "toml_datetime",
+ "toml_edit 0.19.15",
+]
+
+[[package]]
+name = "toml"
+version = "0.8.12"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "e9dd1545e8208b4a5af1aa9bbd0b4cf7e9ea08fabc5d0a5c67fcaafa17433aa3"
+dependencies = [
+ "serde",
+ "serde_spanned",
+ "toml_datetime",
+ "toml_edit 0.22.12",
+]
+
+[[package]]
+name = "toml_datetime"
+version = "0.6.5"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "3550f4e9685620ac18a50ed434eb3aec30db8ba93b0287467bca5826ea25baf1"
+dependencies = [
+ "serde",
+]
+
+[[package]]
+name = "toml_edit"
+version = "0.19.15"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "1b5bb770da30e5cbfde35a2d7b9b8a2c4b8ef89548a7a6aeab5c9a576e3e7421"
+dependencies = [
+ "indexmap 2.2.6",
+ "serde",
+ "serde_spanned",
+ "toml_datetime",
+ "winnow 0.5.40",
+]
+
+[[package]]
+name = "toml_edit"
+version = "0.22.12"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "d3328d4f68a705b2a4498da1d580585d39a6510f98318a2cec3018a7ec61ddef"
+dependencies = [
+ "indexmap 2.2.6",
+ "serde",
+ "serde_spanned",
+ "toml_datetime",
+ "winnow 0.6.6",
+]
+
+[[package]]
+name = "tower"
+version = "0.4.13"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "b8fa9be0de6cf49e536ce1851f987bd21a43b771b09473c3549a6c853db37c1c"
+dependencies = [
+ "futures-core",
+ "futures-util",
+ "pin-project",
+ "pin-project-lite",
+ "tokio",
+ "tower-layer",
+ "tower-service",
+ "tracing",
+]
+
+[[package]]
+name = "tower-layer"
+version = "0.3.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "c20c8dbed6283a09604c3e69b4b7eeb54e298b8a600d4d5ecb5ad39de609f1d0"
+
+[[package]]
+name = "tower-service"
+version = "0.3.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "b6bc1c9ce2b5135ac7f93c72918fc37feb872bdc6a5533a8b85eb4b86bfdae52"
+
+[[package]]
+name = "tracing"
+version = "0.1.40"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "c3523ab5a71916ccf420eebdf5521fcef02141234bbc0b8a49f2fdc4544364ef"
+dependencies = [
+ "log",
+ "pin-project-lite",
+ "tracing-attributes",
+ "tracing-core",
+]
+
+[[package]]
+name = "tracing-appender"
+version = "0.2.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "3566e8ce28cc0a3fe42519fc80e6b4c943cc4c8cef275620eb8dac2d3d4e06cf"
+dependencies = [
+ "crossbeam-channel",
+ "thiserror",
+ "time",
+ "tracing-subscriber",
+]
+
+[[package]]
+name = "tracing-attributes"
+version = "0.1.27"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "34704c8d6ebcbc939824180af020566b01a7c01f80641264eba0999f6c2b6be7"
+dependencies = [
+ "proc-macro2",
+ "quote",
+ "syn 2.0.60",
+]
+
+[[package]]
+name = "tracing-core"
+version = "0.1.32"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "c06d3da6113f116aaee68e4d601191614c9053067f9ab7f6edbcb161237daa54"
+dependencies = [
+ "once_cell",
+ "valuable",
+]
+
+[[package]]
+name = "tracing-error"
+version = "0.2.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "d686ec1c0f384b1277f097b2f279a2ecc11afe8c133c1aabf036a27cb4cd206e"
+dependencies = [
+ "tracing",
+ "tracing-subscriber",
+]
+
+[[package]]
+name = "tracing-log"
+version = "0.2.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "ee855f1f400bd0e5c02d150ae5de3840039a3f54b025156404e34c23c03f47c3"
+dependencies = [
+ "log",
+ "once_cell",
+ "tracing-core",
+]
+
+[[package]]
+name = "tracing-subscriber"
+version = "0.3.18"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "ad0f048c97dbd9faa9b7df56362b8ebcaa52adb06b498c050d2f4e32f90a7a8b"
+dependencies = [
+ "chrono",
+ "matchers",
+ "nu-ansi-term",
+ "once_cell",
+ "regex",
+ "sharded-slab",
+ "smallvec",
+ "thread_local",
+ "tracing",
+ "tracing-core",
+ "tracing-log",
+]
+
+[[package]]
+name = "treediff"
+version = "4.0.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "4d127780145176e2b5d16611cc25a900150e86e9fd79d3bde6ff3a37359c9cb5"
+dependencies = [
+ "serde_json",
+]
+
+[[package]]
+name = "try-lock"
+version = "0.2.5"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "e421abadd41a4225275504ea4d6566923418b7f05506fbc9c0fe86ba7396114b"
+
+[[package]]
+name = "tungstenite"
+version = "0.21.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "9ef1a641ea34f399a848dea702823bbecfb4c486f911735368f1f137cb8257e1"
+dependencies = [
+ "byteorder",
+ "bytes",
+ "data-encoding",
+ "http 1.1.0",
+ "httparse",
+ "log",
+ "native-tls",
+ "rand 0.8.5",
+ "sha1 0.10.6",
+ "thiserror",
+ "url",
+ "utf-8",
+]
+
+[[package]]
+name = "typenum"
+version = "1.17.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "42ff0bf0c66b8238c6f3b578df37d0b7848e55df8577b3f74f92a69acceeb825"
+
+[[package]]
+name = "uds"
+version = "0.4.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "885c31f06fce836457fe3ef09a59f83fe8db95d270b11cd78f40a4666c4d1661"
+dependencies = [
+ "libc",
+]
+
+[[package]]
+name = "uds_windows"
+version = "1.1.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "89daebc3e6fd160ac4aa9fc8b3bf71e1f74fbf92367ae71fb83a037e8bf164b9"
+dependencies = [
+ "memoffset 0.9.1",
+ "tempfile",
+ "winapi",
+]
+
+[[package]]
+name = "uname"
+version = "0.1.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "b72f89f0ca32e4db1c04e2a72f5345d59796d4866a1ee0609084569f73683dc8"
+dependencies = [
+ "libc",
+]
+
+[[package]]
+name = "unicode-bidi"
+version = "0.3.15"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "08f95100a766bf4f8f28f90d77e0a5461bbdb219042e7679bebe79004fed8d75"
+
+[[package]]
+name = "unicode-ident"
+version = "1.0.12"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "3354b9ac3fae1ff6755cb6db53683adb661634f67557942dea4facebec0fee4b"
+
+[[package]]
+name = "unicode-normalization"
+version = "0.1.23"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "a56d1686db2308d901306f92a263857ef59ea39678a5458e7cb17f01415101f5"
+dependencies = [
+ "tinyvec",
+]
+
+[[package]]
+name = "unicode-segmentation"
+version = "1.11.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "d4c87d22b6e3f4a18d4d40ef354e97c90fcb14dd91d7dc0aa9d8a1172ebf7202"
+
+[[package]]
+name = "unicode-width"
+version = "0.1.11"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "e51733f11c9c4f72aa0c160008246859e340b00807569a0da0e7a1079b27ba85"
+
+[[package]]
+name = "ureq"
+version = "2.9.6"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "11f214ce18d8b2cbe84ed3aa6486ed3f5b285cf8d8fbdbce9f3f767a724adc35"
+dependencies = [
+ "base64 0.21.7",
+ "log",
+ "native-tls",
+ "once_cell",
+ "url",
+]
+
+[[package]]
+name = "url"
+version = "2.5.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "31e6302e3bb753d46e83516cae55ae196fc0c309407cf11ab35cc51a4c2a4633"
+dependencies = [
+ "form_urlencoded",
+ "idna",
+ "percent-encoding",
+ "serde",
+]
+
+[[package]]
+name = "urlencoding"
+version = "2.1.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "daf8dba3b7eb870caf1ddeed7bc9d2a049f3cfdfae7cb521b087cc33ae4c49da"
+
+[[package]]
+name = "utf-8"
+version = "0.7.6"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "09cc8ee72d2a9becf2f2febe0205bbed8fc6615b7cb429ad062dc7b7ddd036a9"
+
+[[package]]
+name = "uuid"
+version = "0.8.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "bc5cf98d8186244414c848017f0e2676b3fcb46807f6668a97dfe67359a3c4b7"
+dependencies = [
+ "getrandom 0.2.14",
+]
+
+[[package]]
+name = "uuid"
+version = "1.8.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "a183cf7feeba97b4dd1c0d46788634f6221d87fa961b305bed08c851829efcc0"
+dependencies = [
+ "getrandom 0.2.14",
+ "serde",
+]
+
+[[package]]
+name = "valuable"
+version = "0.1.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "830b7e5d4d90034032940e4ace0d9a9a057e7a45cd94e6c007832e39edb82f6d"
+
+[[package]]
+name = "vcpkg"
+version = "0.2.15"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "accd4ea62f7bb7a82fe23066fb0957d48ef677f6eeb8215f372f52e48bb32426"
+
+[[package]]
+name = "version-compare"
+version = "0.0.11"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "1c18c859eead79d8b95d09e4678566e8d70105c4e7b251f707a03df32442661b"
+
+[[package]]
+name = "version-compare"
+version = "0.2.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "852e951cb7832cb45cb1169900d19760cfa39b82bc0ea9c0e5a14ae88411c98b"
+
+[[package]]
+name = "version_check"
+version = "0.9.4"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "49874b5167b65d7193b8aba1567f5c7d93d001cafc34600cee003eda787e483f"
+
+[[package]]
+name = "virtue"
+version = "0.0.13"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "9dcc60c0624df774c82a0ef104151231d37da4962957d691c011c852b2473314"
+
+[[package]]
+name = "void"
+version = "1.0.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "6a02e4885ed3bc0f2de90ea6dd45ebcbb66dacffe03547fadbb0eeae2770887d"
+
+[[package]]
+name = "vswhom"
+version = "0.1.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "be979b7f07507105799e854203b470ff7c78a1639e330a58f183b5fea574608b"
+dependencies = [
+ "libc",
+ "vswhom-sys",
+]
+
+[[package]]
+name = "vswhom-sys"
+version = "0.1.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "d3b17ae1f6c8a2b28506cd96d412eebf83b4a0ff2cbefeeb952f2f9dfa44ba18"
+dependencies = [
+ "cc",
+ "libc",
+]
+
+[[package]]
+name = "waker-fn"
+version = "1.1.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "f3c4517f54858c779bbcbf228f4fca63d121bf85fbecb2dc578cdf4a39395690"
+
+[[package]]
+name = "walkdir"
+version = "2.5.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "29790946404f91d9c5d06f9874efddea1dc06c5efe94541a7d6863108e3a5e4b"
+dependencies = [
+ "same-file",
+ "winapi-util",
+]
+
+[[package]]
+name = "want"
+version = "0.3.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "bfa7760aed19e106de2c7c0b581b509f2f25d3dacaf737cb82ac61bc6d760b0e"
+dependencies = [
+ "try-lock",
+]
+
+[[package]]
+name = "wasi"
+version = "0.9.0+wasi-snapshot-preview1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "cccddf32554fecc6acb585f82a32a72e28b48f8c4c1883ddfeeeaa96f7d8e519"
+
+[[package]]
+name = "wasi"
+version = "0.11.0+wasi-snapshot-preview1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "9c8d87e72b64a3b4db28d11ce29237c246188f4f51057d65a7eab63b7987e423"
+
+[[package]]
+name = "wasite"
+version = "0.1.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "b8dad83b4f25e74f184f64c43b150b91efe7647395b42289f38e50566d82855b"
+
+[[package]]
+name = "wasm-bindgen"
+version = "0.2.92"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "4be2531df63900aeb2bca0daaaddec08491ee64ceecbee5076636a3b026795a8"
+dependencies = [
+ "cfg-if",
+ "wasm-bindgen-macro",
+]
+
+[[package]]
+name = "wasm-bindgen-backend"
+version = "0.2.92"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "614d787b966d3989fa7bb98a654e369c762374fd3213d212cfc0251257e747da"
+dependencies = [
+ "bumpalo",
+ "log",
+ "once_cell",
+ "proc-macro2",
+ "quote",
+ "syn 2.0.60",
+ "wasm-bindgen-shared",
+]
+
+[[package]]
+name = "wasm-bindgen-futures"
+version = "0.4.42"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "76bc14366121efc8dbb487ab05bcc9d346b3b5ec0eaa76e46594cabbe51762c0"
+dependencies = [
+ "cfg-if",
+ "js-sys",
+ "wasm-bindgen",
+ "web-sys",
+]
+
+[[package]]
+name = "wasm-bindgen-macro"
+version = "0.2.92"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "a1f8823de937b71b9460c0c34e25f3da88250760bec0ebac694b49997550d726"
+dependencies = [
+ "quote",
+ "wasm-bindgen-macro-support",
+]
+
+[[package]]
+name = "wasm-bindgen-macro-support"
+version = "0.2.92"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "e94f17b526d0a461a191c78ea52bbce64071ed5c04c9ffe424dcb38f74171bb7"
+dependencies = [
+ "proc-macro2",
+ "quote",
+ "syn 2.0.60",
+ "wasm-bindgen-backend",
+ "wasm-bindgen-shared",
+]
+
+[[package]]
+name = "wasm-bindgen-shared"
+version = "0.2.92"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "af190c94f2773fdb3729c55b007a722abb5384da03bc0986df4c289bf5567e96"
+
+[[package]]
+name = "wasm-streams"
+version = "0.4.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "b65dc4c90b63b118468cf747d8bf3566c1913ef60be765b5730ead9e0a3ba129"
+dependencies = [
+ "futures-util",
+ "js-sys",
+ "wasm-bindgen",
+ "wasm-bindgen-futures",
+ "web-sys",
+]
+
+[[package]]
+name = "web-sys"
+version = "0.3.69"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "77afa9a11836342370f4817622a2f0f418b134426d91a82dfb48f532d2ec13ef"
+dependencies = [
+ "js-sys",
+ "wasm-bindgen",
+]
+
+[[package]]
+name = "webbrowser"
+version = "0.8.15"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "db67ae75a9405634f5882791678772c94ff5f16a66535aae186e26aa0841fc8b"
+dependencies = [
+ "core-foundation",
+ "home",
+ "jni 0.21.1",
+ "log",
+ "ndk-context",
+ "objc",
+ "raw-window-handle",
+ "url",
+ "web-sys",
+]
+
+[[package]]
+name = "webkit2gtk"
+version = "0.18.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "b8f859735e4a452aeb28c6c56a852967a8a76c8eb1cc32dbf931ad28a13d6370"
+dependencies = [
+ "bitflags 1.3.2",
+ "cairo-rs",
+ "gdk",
+ "gdk-sys",
+ "gio",
+ "gio-sys",
+ "glib",
+ "glib-sys",
+ "gobject-sys",
+ "gtk",
+ "gtk-sys",
+ "javascriptcore-rs",
+ "libc",
+ "once_cell",
+ "soup2",
+ "webkit2gtk-sys",
+]
+
+[[package]]
+name = "webkit2gtk-sys"
+version = "0.18.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "4d76ca6ecc47aeba01ec61e480139dda143796abcae6f83bcddf50d6b5b1dcf3"
+dependencies = [
+ "atk-sys",
+ "bitflags 1.3.2",
+ "cairo-sys-rs",
+ "gdk-pixbuf-sys",
+ "gdk-sys",
+ "gio-sys",
+ "glib-sys",
+ "gobject-sys",
+ "gtk-sys",
+ "javascriptcore-rs-sys",
+ "libc",
+ "pango-sys",
+ "pkg-config",
+ "soup2-sys",
+ "system-deps 6.2.2",
+]
+
+[[package]]
+name = "webview2-com"
+version = "0.19.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "b4a769c9f1a64a8734bde70caafac2b96cada12cd4aefa49196b3a386b8b4178"
+dependencies = [
+ "webview2-com-macros",
+ "webview2-com-sys",
+ "windows 0.39.0",
+ "windows-implement",
+]
+
+[[package]]
+name = "webview2-com-macros"
+version = "0.6.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "eaebe196c01691db62e9e4ca52c5ef1e4fd837dcae27dae3ada599b5a8fd05ac"
+dependencies = [
+ "proc-macro2",
+ "quote",
+ "syn 1.0.109",
+]
+
+[[package]]
+name = "webview2-com-sys"
+version = "0.19.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "aac48ef20ddf657755fdcda8dfed2a7b4fc7e4581acce6fe9b88c3d64f29dee7"
+dependencies = [
+ "regex",
+ "serde",
+ "serde_json",
+ "thiserror",
+ "windows 0.39.0",
+ "windows-bindgen",
+ "windows-metadata",
+]
+
+[[package]]
+name = "whoami"
+version = "1.5.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "a44ab49fad634e88f55bf8f9bb3abd2f27d7204172a112c7c9987e01c1c94ea9"
+dependencies = [
+ "redox_syscall",
+ "wasite",
+ "web-sys",
+]
+
+[[package]]
+name = "winapi"
+version = "0.3.9"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "5c839a674fcd7a98952e593242ea400abe93992746761e38641405d28b00f419"
+dependencies = [
+ "winapi-i686-pc-windows-gnu",
+ "winapi-x86_64-pc-windows-gnu",
+]
+
+[[package]]
+name = "winapi-i686-pc-windows-gnu"
+version = "0.4.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "ac3b87c63620426dd9b991e5ce0329eff545bccbbb34f3be09ff6fb6ab51b7b6"
+
+[[package]]
+name = "winapi-util"
+version = "0.1.7"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "134306a13c5647ad6453e8deaec55d3a44d6021970129e6188735e74bf546697"
+dependencies = [
+ "windows-sys 0.52.0",
+]
+
+[[package]]
+name = "winapi-x86_64-pc-windows-gnu"
+version = "0.4.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f"
+
+[[package]]
+name = "window-shadows"
+version = "0.2.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "67ff424735b1ac21293b0492b069394b0a189c8a463fb015a16dea7c2e221c08"
+dependencies = [
+ "cocoa 0.25.0",
+ "objc",
+ "raw-window-handle",
+ "windows-sys 0.48.0",
+]
+
+[[package]]
+name = "windows"
+version = "0.37.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "57b543186b344cc61c85b5aab0d2e3adf4e0f99bc076eff9aa5927bcc0b8a647"
+dependencies = [
+ "windows_aarch64_msvc 0.37.0",
+ "windows_i686_gnu 0.37.0",
+ "windows_i686_msvc 0.37.0",
+ "windows_x86_64_gnu 0.37.0",
+ "windows_x86_64_msvc 0.37.0",
+]
+
+[[package]]
+name = "windows"
+version = "0.39.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "f1c4bd0a50ac6020f65184721f758dba47bb9fbc2133df715ec74a237b26794a"
+dependencies = [
+ "windows-implement",
+ "windows_aarch64_msvc 0.39.0",
+ "windows_i686_gnu 0.39.0",
+ "windows_i686_msvc 0.39.0",
+ "windows_x86_64_gnu 0.39.0",
+ "windows_x86_64_msvc 0.39.0",
+]
+
+[[package]]
+name = "windows"
+version = "0.48.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "e686886bc078bc1b0b600cac0147aadb815089b6e4da64016cbd754b6342700f"
+dependencies = [
+ "windows-targets 0.48.5",
+]
+
+[[package]]
+name = "windows"
+version = "0.52.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "e48a53791691ab099e5e2ad123536d0fff50652600abaf43bbf952894110d0be"
+dependencies = [
+ "windows-core",
+ "windows-targets 0.52.5",
+]
+
+[[package]]
+name = "windows-bindgen"
+version = "0.39.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "68003dbd0e38abc0fb85b939240f4bce37c43a5981d3df37ccbaaa981b47cb41"
+dependencies = [
+ "windows-metadata",
+ "windows-tokens",
+]
+
+[[package]]
+name = "windows-core"
+version = "0.52.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "33ab640c8d7e35bf8ba19b884ba838ceb4fba93a4e8c65a9059d08afcfc683d9"
+dependencies = [
+ "windows-targets 0.52.5",
+]
+
+[[package]]
+name = "windows-implement"
+version = "0.39.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "ba01f98f509cb5dc05f4e5fc95e535f78260f15fea8fe1a8abdd08f774f1cee7"
+dependencies = [
+ "syn 1.0.109",
+ "windows-tokens",
+]
+
+[[package]]
+name = "windows-metadata"
+version = "0.39.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "9ee5e275231f07c6e240d14f34e1b635bf1faa1c76c57cfd59a5cdb9848e4278"
+
+[[package]]
+name = "windows-sys"
+version = "0.42.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "5a3e1820f08b8513f676f7ab6c1f99ff312fb97b553d30ff4dd86f9f15728aa7"
+dependencies = [
+ "windows_aarch64_gnullvm 0.42.2",
+ "windows_aarch64_msvc 0.42.2",
+ "windows_i686_gnu 0.42.2",
+ "windows_i686_msvc 0.42.2",
+ "windows_x86_64_gnu 0.42.2",
+ "windows_x86_64_gnullvm 0.42.2",
+ "windows_x86_64_msvc 0.42.2",
+]
+
+[[package]]
+name = "windows-sys"
+version = "0.45.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "75283be5efb2831d37ea142365f009c02ec203cd29a3ebecbc093d52315b66d0"
+dependencies = [
+ "windows-targets 0.42.2",
+]
+
+[[package]]
+name = "windows-sys"
+version = "0.48.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "677d2418bec65e3338edb076e806bc1ec15693c5d0104683f2efe857f61056a9"
+dependencies = [
+ "windows-targets 0.48.5",
+]
+
+[[package]]
+name = "windows-sys"
+version = "0.52.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "282be5f36a8ce781fad8c8ae18fa3f9beff57ec1b52cb3de0789201425d9a33d"
+dependencies = [
+ "windows-targets 0.52.5",
+]
+
+[[package]]
+name = "windows-targets"
+version = "0.42.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "8e5180c00cd44c9b1c88adb3693291f1cd93605ded80c250a75d472756b4d071"
+dependencies = [
+ "windows_aarch64_gnullvm 0.42.2",
+ "windows_aarch64_msvc 0.42.2",
+ "windows_i686_gnu 0.42.2",
+ "windows_i686_msvc 0.42.2",
+ "windows_x86_64_gnu 0.42.2",
+ "windows_x86_64_gnullvm 0.42.2",
+ "windows_x86_64_msvc 0.42.2",
+]
+
+[[package]]
+name = "windows-targets"
+version = "0.48.5"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "9a2fa6e2155d7247be68c096456083145c183cbbbc2764150dda45a87197940c"
+dependencies = [
+ "windows_aarch64_gnullvm 0.48.5",
+ "windows_aarch64_msvc 0.48.5",
+ "windows_i686_gnu 0.48.5",
+ "windows_i686_msvc 0.48.5",
+ "windows_x86_64_gnu 0.48.5",
+ "windows_x86_64_gnullvm 0.48.5",
+ "windows_x86_64_msvc 0.48.5",
+]
+
+[[package]]
+name = "windows-targets"
+version = "0.52.5"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "6f0713a46559409d202e70e28227288446bf7841d3211583a4b53e3f6d96e7eb"
+dependencies = [
+ "windows_aarch64_gnullvm 0.52.5",
+ "windows_aarch64_msvc 0.52.5",
+ "windows_i686_gnu 0.52.5",
+ "windows_i686_gnullvm",
+ "windows_i686_msvc 0.52.5",
+ "windows_x86_64_gnu 0.52.5",
+ "windows_x86_64_gnullvm 0.52.5",
+ "windows_x86_64_msvc 0.52.5",
+]
+
+[[package]]
+name = "windows-tokens"
+version = "0.39.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "f838de2fe15fe6bac988e74b798f26499a8b21a9d97edec321e79b28d1d7f597"
+
+[[package]]
+name = "windows-version"
+version = "0.1.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "6998aa457c9ba8ff2fb9f13e9d2a930dabcea28f1d0ab94d687d8b3654844515"
+dependencies = [
+ "windows-targets 0.52.5",
+]
+
+[[package]]
+name = "windows_aarch64_gnullvm"
+version = "0.42.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "597a5118570b68bc08d8d59125332c54f1ba9d9adeedeef5b99b02ba2b0698f8"
+
+[[package]]
+name = "windows_aarch64_gnullvm"
+version = "0.48.5"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "2b38e32f0abccf9987a4e3079dfb67dcd799fb61361e53e2882c3cbaf0d905d8"
+
+[[package]]
+name = "windows_aarch64_gnullvm"
+version = "0.52.5"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "7088eed71e8b8dda258ecc8bac5fb1153c5cffaf2578fc8ff5d61e23578d3263"
+
+[[package]]
+name = "windows_aarch64_msvc"
+version = "0.37.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "2623277cb2d1c216ba3b578c0f3cf9cdebeddb6e66b1b218bb33596ea7769c3a"
+
+[[package]]
+name = "windows_aarch64_msvc"
+version = "0.39.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "ec7711666096bd4096ffa835238905bb33fb87267910e154b18b44eaabb340f2"
+
+[[package]]
+name = "windows_aarch64_msvc"
+version = "0.42.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "e08e8864a60f06ef0d0ff4ba04124db8b0fb3be5776a5cd47641e942e58c4d43"
+
+[[package]]
+name = "windows_aarch64_msvc"
+version = "0.48.5"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "dc35310971f3b2dbbf3f0690a219f40e2d9afcf64f9ab7cc1be722937c26b4bc"
+
+[[package]]
+name = "windows_aarch64_msvc"
+version = "0.52.5"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "9985fd1504e250c615ca5f281c3f7a6da76213ebd5ccc9561496568a2752afb6"
+
+[[package]]
+name = "windows_i686_gnu"
+version = "0.37.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "d3925fd0b0b804730d44d4b6278c50f9699703ec49bcd628020f46f4ba07d9e1"
+
+[[package]]
+name = "windows_i686_gnu"
+version = "0.39.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "763fc57100a5f7042e3057e7e8d9bdd7860d330070251a73d003563a3bb49e1b"
+
+[[package]]
+name = "windows_i686_gnu"
+version = "0.42.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "c61d927d8da41da96a81f029489353e68739737d3beca43145c8afec9a31a84f"
+
+[[package]]
+name = "windows_i686_gnu"
+version = "0.48.5"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "a75915e7def60c94dcef72200b9a8e58e5091744960da64ec734a6c6e9b3743e"
+
+[[package]]
+name = "windows_i686_gnu"
+version = "0.52.5"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "88ba073cf16d5372720ec942a8ccbf61626074c6d4dd2e745299726ce8b89670"
+
+[[package]]
+name = "windows_i686_gnullvm"
+version = "0.52.5"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "87f4261229030a858f36b459e748ae97545d6f1ec60e5e0d6a3d32e0dc232ee9"
+
+[[package]]
+name = "windows_i686_msvc"
+version = "0.37.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "ce907ac74fe331b524c1298683efbf598bb031bc84d5e274db2083696d07c57c"
+
+[[package]]
+name = "windows_i686_msvc"
+version = "0.39.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "7bc7cbfe58828921e10a9f446fcaaf649204dcfe6c1ddd712c5eebae6bda1106"
+
+[[package]]
+name = "windows_i686_msvc"
+version = "0.42.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "44d840b6ec649f480a41c8d80f9c65108b92d89345dd94027bfe06ac444d1060"
+
+[[package]]
+name = "windows_i686_msvc"
+version = "0.48.5"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "8f55c233f70c4b27f66c523580f78f1004e8b5a8b659e05a4eb49d4166cca406"
+
+[[package]]
+name = "windows_i686_msvc"
+version = "0.52.5"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "db3c2bf3d13d5b658be73463284eaf12830ac9a26a90c717b7f771dfe97487bf"
+
+[[package]]
+name = "windows_x86_64_gnu"
+version = "0.37.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "2babfba0828f2e6b32457d5341427dcbb577ceef556273229959ac23a10af33d"
+
+[[package]]
+name = "windows_x86_64_gnu"
+version = "0.39.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "6868c165637d653ae1e8dc4d82c25d4f97dd6605eaa8d784b5c6e0ab2a252b65"
+
+[[package]]
+name = "windows_x86_64_gnu"
+version = "0.42.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "8de912b8b8feb55c064867cf047dda097f92d51efad5b491dfb98f6bbb70cb36"
+
+[[package]]
+name = "windows_x86_64_gnu"
+version = "0.48.5"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "53d40abd2583d23e4718fddf1ebec84dbff8381c07cae67ff7768bbf19c6718e"
+
+[[package]]
+name = "windows_x86_64_gnu"
+version = "0.52.5"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "4e4246f76bdeff09eb48875a0fd3e2af6aada79d409d33011886d3e1581517d9"
+
+[[package]]
+name = "windows_x86_64_gnullvm"
+version = "0.42.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "26d41b46a36d453748aedef1486d5c7a85db22e56aff34643984ea85514e94a3"
+
+[[package]]
+name = "windows_x86_64_gnullvm"
+version = "0.48.5"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "0b7b52767868a23d5bab768e390dc5f5c55825b6d30b86c844ff2dc7414044cc"
+
+[[package]]
+name = "windows_x86_64_gnullvm"
+version = "0.52.5"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "852298e482cd67c356ddd9570386e2862b5673c85bd5f88df9ab6802b334c596"
+
+[[package]]
+name = "windows_x86_64_msvc"
+version = "0.37.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "f4dd6dc7df2d84cf7b33822ed5b86318fb1781948e9663bacd047fc9dd52259d"
+
+[[package]]
+name = "windows_x86_64_msvc"
+version = "0.39.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "5e4d40883ae9cae962787ca76ba76390ffa29214667a111db9e0a1ad8377e809"
+
+[[package]]
+name = "windows_x86_64_msvc"
+version = "0.42.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "9aec5da331524158c6d1a4ac0ab1541149c0b9505fde06423b02f5ef0106b9f0"
+
+[[package]]
+name = "windows_x86_64_msvc"
+version = "0.48.5"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "ed94fce61571a4006852b7389a063ab983c02eb1bb37b47f8272ce92d06d9538"
+
+[[package]]
+name = "windows_x86_64_msvc"
+version = "0.52.5"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "bec47e5bfd1bff0eeaf6d8b485cc1074891a197ab4225d504cb7a1ab88b02bf0"
+
+[[package]]
+name = "winnow"
+version = "0.5.40"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "f593a95398737aeed53e489c785df13f3618e41dbcd6718c6addbf1395aa6876"
+dependencies = [
+ "memchr",
+]
+
+[[package]]
+name = "winnow"
+version = "0.6.6"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "f0c976aaaa0e1f90dbb21e9587cdaf1d9679a1cde8875c0d6bd83ab96a208352"
+dependencies = [
+ "memchr",
+]
+
+[[package]]
+name = "winreg"
+version = "0.50.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "524e57b2c537c0f9b1e69f1965311ec12182b4122e45035b1508cd24d2adadb1"
+dependencies = [
+ "cfg-if",
+ "windows-sys 0.48.0",
+]
+
+[[package]]
+name = "winreg"
+version = "0.52.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "a277a57398d4bfa075df44f501a17cfdf8542d224f0d36095a2adc7aee4ef0a5"
+dependencies = [
+ "cfg-if",
+ "windows-sys 0.48.0",
+]
+
+[[package]]
+name = "wry"
+version = "0.24.8"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "a04e72739ee84a218e3dbf8625888eadc874285637003ed21ab96a1bbbb538ec"
+dependencies = [
+ "base64 0.13.1",
+ "block",
+ "cocoa 0.24.1",
+ "core-graphics 0.22.3",
+ "crossbeam-channel",
+ "dunce",
+ "gdk",
+ "gio",
+ "glib",
+ "gtk",
+ "html5ever",
+ "http 0.2.12",
+ "kuchikiki",
+ "libc",
+ "log",
+ "objc",
+ "objc_id",
+ "once_cell",
+ "serde",
+ "serde_json",
+ "sha2",
+ "soup2",
+ "tao",
+ "thiserror",
+ "url",
+ "webkit2gtk",
+ "webkit2gtk-sys",
+ "webview2-com",
+ "windows 0.39.0",
+ "windows-implement",
+]
+
+[[package]]
+name = "x11"
+version = "2.21.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "502da5464ccd04011667b11c435cb992822c2c0dbde1770c988480d312a0db2e"
+dependencies = [
+ "libc",
+ "pkg-config",
+]
+
+[[package]]
+name = "x11-dl"
+version = "2.21.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "38735924fedd5314a6e548792904ed8c6de6636285cb9fec04d5b1db85c1516f"
+dependencies = [
+ "libc",
+ "once_cell",
+ "pkg-config",
+]
+
+[[package]]
+name = "xattr"
+version = "1.3.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "8da84f1a25939b27f6820d92aed108f83ff920fdf11a7b19366c27c4cda81d4f"
+dependencies = [
+ "libc",
+ "linux-raw-sys 0.4.13",
+ "rustix 0.38.34",
+]
+
+[[package]]
+name = "xdg-home"
+version = "1.1.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "21e5a325c3cb8398ad6cf859c1135b25dd29e186679cf2da7581d9679f63b38e"
+dependencies = [
+ "libc",
+ "winapi",
+]
+
+[[package]]
+name = "xz2"
+version = "0.1.7"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "388c44dc09d76f1536602ead6d325eb532f5c122f17782bd57fb47baeeb767e2"
+dependencies = [
+ "lzma-sys",
+]
+
+[[package]]
+name = "zbus"
+version = "3.15.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "675d170b632a6ad49804c8cf2105d7c31eddd3312555cffd4b740e08e97c25e6"
+dependencies = [
+ "async-broadcast",
+ "async-executor",
+ "async-fs",
+ "async-io 1.13.0",
+ "async-lock 2.8.0",
+ "async-process",
+ "async-recursion",
+ "async-task",
+ "async-trait",
+ "blocking",
+ "byteorder",
+ "derivative",
+ "enumflags2",
+ "event-listener 2.5.3",
+ "futures-core",
+ "futures-sink",
+ "futures-util",
+ "hex",
+ "nix 0.26.4",
+ "once_cell",
+ "ordered-stream",
+ "rand 0.8.5",
+ "serde",
+ "serde_repr",
+ "sha1 0.10.6",
+ "static_assertions",
+ "tracing",
+ "uds_windows",
+ "winapi",
+ "xdg-home",
+ "zbus_macros",
+ "zbus_names",
+ "zvariant",
+]
+
+[[package]]
+name = "zbus_macros"
+version = "3.15.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "7131497b0f887e8061b430c530240063d33bf9455fa34438f388a245da69e0a5"
+dependencies = [
+ "proc-macro-crate",
+ "proc-macro2",
+ "quote",
+ "regex",
+ "syn 1.0.109",
+ "zvariant_utils",
+]
+
+[[package]]
+name = "zbus_names"
+version = "2.6.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "437d738d3750bed6ca9b8d423ccc7a8eb284f6b1d6d4e225a0e4e6258d864c8d"
+dependencies = [
+ "serde",
+ "static_assertions",
+ "zvariant",
+]
+
+[[package]]
+name = "zeroize"
+version = "1.7.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "525b4ec142c6b68a2d10f01f7bbf6755599ca3f81ea53b8431b7dd348f5fdb2d"
+
+[[package]]
+name = "zip"
+version = "0.6.6"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "760394e246e4c28189f19d488c058bf16f564016aefac5d32bb1f3b51d5e9261"
+dependencies = [
+ "aes",
+ "byteorder",
+ "bzip2",
+ "constant_time_eq",
+ "crc32fast",
+ "crossbeam-utils",
+ "flate2",
+ "hmac",
+ "pbkdf2",
+ "sha1 0.10.6",
+ "time",
+ "zstd 0.11.2+zstd.1.5.2",
+]
+
+[[package]]
+name = "zstd"
+version = "0.11.2+zstd.1.5.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "20cc960326ece64f010d2d2107537f26dc589a6573a316bd5b1dba685fa5fde4"
+dependencies = [
+ "zstd-safe 5.0.2+zstd.1.5.2",
+]
+
+[[package]]
+name = "zstd"
+version = "0.13.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "2d789b1514203a1120ad2429eae43a7bd32b90976a7bb8a05f7ec02fa88cc23a"
+dependencies = [
+ "zstd-safe 7.1.0",
+]
+
+[[package]]
+name = "zstd-safe"
+version = "5.0.2+zstd.1.5.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "1d2a5585e04f9eea4b2a3d1eca508c4dee9592a89ef6f450c11719da0726f4db"
+dependencies = [
+ "libc",
+ "zstd-sys",
+]
+
+[[package]]
+name = "zstd-safe"
+version = "7.1.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "1cd99b45c6bc03a018c8b8a86025678c87e55526064e38f9df301989dce7ec0a"
+dependencies = [
+ "zstd-sys",
+]
+
+[[package]]
+name = "zstd-sys"
+version = "2.0.10+zstd.1.5.6"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "c253a4914af5bafc8fa8c86ee400827e83cf6ec01195ec1f1ed8441bf00d65aa"
+dependencies = [
+ "cc",
+ "pkg-config",
+]
+
+[[package]]
+name = "zvariant"
+version = "3.15.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "4eef2be88ba09b358d3b58aca6e41cd853631d44787f319a1383ca83424fb2db"
+dependencies = [
+ "byteorder",
+ "enumflags2",
+ "libc",
+ "serde",
+ "static_assertions",
+ "zvariant_derive",
+]
+
+[[package]]
+name = "zvariant_derive"
+version = "3.15.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "37c24dc0bed72f5f90d1f8bb5b07228cbf63b3c6e9f82d82559d4bae666e7ed9"
+dependencies = [
+ "proc-macro-crate",
+ "proc-macro2",
+ "quote",
+ "syn 1.0.109",
+ "zvariant_utils",
+]
+
+[[package]]
+name = "zvariant_utils"
+version = "1.0.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "7234f0d811589db492d16893e3f21e8e2fd282e6d01b0cddee310322062cc200"
+dependencies = [
+ "proc-macro2",
+ "quote",
+ "syn 1.0.109",
+]
diff --git a/pkgs/by-name/mo/modrinth-app-unwrapped/package.nix b/pkgs/by-name/mo/modrinth-app-unwrapped/package.nix
new file mode 100644
index 000000000000..121d9072ab09
--- /dev/null
+++ b/pkgs/by-name/mo/modrinth-app-unwrapped/package.nix
@@ -0,0 +1,192 @@
+{
+  lib,
+  stdenv,
+  stdenvNoCC,
+  fetchFromGitHub,
+  rustPlatform,
+  buildGoModule,
+  nix-update-script,
+  modrinth-app-unwrapped,
+  cacert,
+  cargo-tauri,
+  desktop-file-utils,
+  esbuild,
+  darwin,
+  jq,
+  libsoup,
+  moreutils,
+  nodePackages,
+  openssl,
+  pkg-config,
+  webkitgtk,
+}:
+rustPlatform.buildRustPackage {
+  pname = "modrinth-app-unwrapped";
+  version = "0.7.1";
+
+  src = fetchFromGitHub {
+    owner = "modrinth";
+    repo = "theseus";
+    rev = "v${modrinth-app-unwrapped.version}";
+    sha256 = "sha256-JWR0e2vOBvOLosr22Oo2mAlR0KAhL+261RRybhNctlM=";
+  };
+
+  cargoLock = {
+    lockFile = ./Cargo.lock;
+    outputHashes = {
+      "tauri-plugin-single-instance-0.0.0" = "sha256-Mf2/cnKotd751ZcSHfiSLNe2nxBfo4dMBdoCwQhe7yI=";
+    };
+  };
+
+  pnpm-deps = stdenvNoCC.mkDerivation (finalAttrs: {
+    pname = "${modrinth-app-unwrapped.pname}-pnpm-deps";
+    inherit (modrinth-app-unwrapped) version src;
+    sourceRoot = "${finalAttrs.src.name}/theseus_gui";
+
+    dontConfigure = true;
+    dontBuild = true;
+    doCheck = false;
+
+    nativeBuildInputs = [
+      cacert
+      jq
+      moreutils
+      nodePackages.pnpm
+    ];
+
+    # https://github.com/NixOS/nixpkgs/blob/763e59ffedb5c25774387bf99bc725df5df82d10/pkgs/applications/misc/pot/default.nix#L56
+    installPhase = ''
+      export HOME=$(mktemp -d)
+
+      pnpm config set store-dir "$out"
+      pnpm install --frozen-lockfile --ignore-script --force
+
+      # remove timestamp and sort json files
+      rm -rf "$out"/v3/tmp
+      for f in $(find "$out" -name "*.json"); do
+        sed -i -E -e 's/"checkedAt":[0-9]+,//g' $f
+        jq --sort-keys . "$f" | sponge "$f"
+      done
+    '';
+
+    dontFixup = true;
+    outputHashMode = "recursive";
+    outputHash = "sha256-g/uUGfC9TQh0LE8ed51oFY17FySoeTvfaeEpzpNeMao=";
+  });
+
+  nativeBuildInputs = [
+    cargo-tauri
+    desktop-file-utils
+    nodePackages.pnpm
+    pkg-config
+  ];
+
+  buildInputs =
+    [ openssl ]
+    ++ lib.optionals stdenv.isLinux [
+      libsoup
+      webkitgtk
+    ]
+    ++ lib.optionals stdenv.isDarwin (
+      with darwin.apple_sdk.frameworks;
+      [
+        AppKit
+        CoreServices
+        Security
+        WebKit
+      ]
+    );
+
+  env = {
+    tauriBundle =
+      {
+        Linux = "deb";
+        Darwin = "app";
+      }
+      .${stdenv.hostPlatform.uname.system}
+      or (builtins.throw "No tauri bundle available for ${stdenv.hostPlatform.uname.system}!");
+
+    ESBUILD_BINARY_PATH = lib.getExe (
+      esbuild.override {
+        buildGoModule = args: buildGoModule (args // rec {
+          version = "0.20.2";
+          src = fetchFromGitHub {
+            owner = "evanw";
+            repo = "esbuild";
+            rev = "v${version}";
+            hash = "sha256-h/Vqwax4B4nehRP9TaYbdixAZdb1hx373dNxNHvDrtY=";
+          };
+          vendorHash = "sha256-+BfxCyg0KkDQpHt/wycy/8CTG6YBA/VJvJFhhzUnSiQ=";
+        });
+      }
+    );
+  };
+
+  postPatch = ''
+    export HOME=$(mktemp -d)
+    export STORE_PATH=$(mktemp -d)
+
+    pushd theseus_gui
+    cp -rT ${modrinth-app-unwrapped.pnpm-deps} "$STORE_PATH"
+    chmod -R +w "$STORE_PATH"
+
+    pnpm config set store-dir "$STORE_PATH"
+    pnpm install --offline --frozen-lockfile --ignore-script
+    popd
+  '';
+
+  buildPhase = ''
+    runHook preBuild
+
+    cargo tauri build --bundles "$tauriBundle"
+
+    runHook postBuild
+  '';
+
+  installPhase =
+    ''
+      runHook preInstall
+    ''
+    + lib.optionalString stdenv.isDarwin ''
+      mkdir -p "$out"/bin
+      cp -r target/release/bundle/macos "$out"/Applications
+      mv "$out"/Applications/Modrinth\ App.app/Contents/MacOS/Modrinth\ App "$out"/bin/modrinth-app
+      ln -s "$out"/bin/modrinth-app "$out"/Applications/Modrinth\ App.app/Contents/MacOS/Modrinth\ App
+    ''
+    + lib.optionalString stdenv.isLinux ''
+      cp -r target/release/bundle/"$tauriBundle"/*/data/usr "$out"
+      desktop-file-edit \
+        --set-comment "Modrinth's game launcher" \
+        --set-key="StartupNotify" --set-value="true" \
+        --set-key="Categories" --set-value="Game;ActionGame;AdventureGame;Simulation;" \
+        --set-key="Keywords" --set-value="game;minecraft;mc;" \
+        --set-key="StartupWMClass" --set-value="ModrinthApp" \
+        $out/share/applications/modrinth-app.desktop
+    ''
+    + ''
+      runHook postInstall
+    '';
+
+  passthru = {
+    updateScript = nix-update-script { };
+  };
+
+  meta = {
+    description = "Modrinth's game launcher";
+    longDescription = ''
+      A unique, open source launcher that allows you to play your favorite mods,
+      and keep them up to date, all in one neat little package
+    '';
+    mainProgram = "modrinth-app";
+    homepage = "https://modrinth.com";
+    changelog = "https://github.com/modrinth/theseus/releases/tag/v${modrinth-app-unwrapped.version}";
+    license = with lib.licenses; [
+      gpl3Plus
+      unfreeRedistributable
+    ];
+    maintainers = with lib.maintainers; [ getchoo ];
+    platforms = with lib; platforms.linux ++ platforms.darwin;
+    # this builds on architectures like aarch64, but the launcher itself does not support them yet
+    broken = !stdenv.isx86_64;
+  };
+}
diff --git a/pkgs/by-name/mo/modrinth-app/package.nix b/pkgs/by-name/mo/modrinth-app/package.nix
new file mode 100644
index 000000000000..23fd1adf1959
--- /dev/null
+++ b/pkgs/by-name/mo/modrinth-app/package.nix
@@ -0,0 +1,70 @@
+{
+  lib,
+  stdenv,
+  symlinkJoin,
+  modrinth-app-unwrapped,
+  wrapGAppsHook3,
+  addOpenGLRunpath,
+  flite,
+  glib,
+  glib-networking,
+  jdk8,
+  jdk17,
+  jdk21,
+  jdks ? [
+    jdk8
+    jdk17
+    jdk21
+  ],
+  libGL,
+  libpulseaudio,
+  udev,
+  xorg,
+}:
+symlinkJoin rec {
+  name = "${pname}-${version}";
+  pname = "modrinth-app";
+  inherit (modrinth-app-unwrapped) version;
+
+  paths = [ modrinth-app-unwrapped ];
+
+  buildInputs = [
+    glib
+    glib-networking
+  ];
+
+  nativeBuildInputs = [
+    wrapGAppsHook3
+  ];
+
+  runtimeDependencies = lib.optionalString stdenv.isLinux (lib.makeLibraryPath [
+    addOpenGLRunpath.driverLink
+    flite # narrator support
+
+    udev # oshi
+
+    # lwjgl
+    libGL
+    libpulseaudio
+    stdenv.cc.cc.lib
+    xorg.libX11
+    xorg.libXcursor
+    xorg.libXext
+    xorg.libXxf86vm
+    xorg.libXrandr
+  ]);
+
+  postBuild = ''
+    gappsWrapperArgs+=(
+      --prefix PATH : ${lib.makeSearchPath "bin/java" jdks}
+      ${lib.optionalString stdenv.isLinux ''
+        --prefix PATH : ${lib.makeBinPath [xorg.xrandr]}
+        --set LD_LIBRARY_PATH $runtimeDependencies
+      ''}
+    )
+
+    wrapGAppsHook
+  '';
+
+  inherit (modrinth-app-unwrapped) meta;
+}
diff --git a/pkgs/development/tools/mold/default.nix b/pkgs/by-name/mo/mold/package.nix
index 0caa0513d84b..32992d6a04c1 100644
--- a/pkgs/development/tools/mold/default.nix
+++ b/pkgs/by-name/mo/mold/package.nix
@@ -23,13 +23,13 @@
 
 stdenv.mkDerivation rec {
   pname = "mold";
-  version = "2.30.0";
+  version = "2.31.0";
 
   src = fetchFromGitHub {
     owner = "rui314";
     repo = "mold";
     rev = "v${version}";
-    hash = "sha256-VVgJDKf21V7Mkfalh8tJ0Tx73VG1ong+8C6uPC23154=";
+    hash = "sha256-CUIk1YACM+eCuxyUqyKaVBF00Ybxr23D+FQuXv45Qrs=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/by-name/mo/monaspace/package.nix b/pkgs/by-name/mo/monaspace/package.nix
index a27be47afa66..9612a78a8afd 100644
--- a/pkgs/by-name/mo/monaspace/package.nix
+++ b/pkgs/by-name/mo/monaspace/package.nix
@@ -5,12 +5,12 @@
 
 stdenvNoCC.mkDerivation (finalAttrs: {
   pname = "monaspace";
-  version = "1.000";
+  version = "1.101";
 
   src = fetchzip {
     url = "https://github.com/githubnext/monaspace/releases/download/v${finalAttrs.version}/monaspace-v${finalAttrs.version}.zip";
     stripRoot = false;
-    hash = "sha256-H8NOS+pVkrY9DofuJhPR2OlzkF4fMdmP2zfDBfrk83A=";
+    hash = "sha256-o5s4XBuwqA4sJ5KhEn5oYttBj4ojekr/LO6Ww9oQRGw=";
   };
 
   outputs = [ "out" "woff" ];
diff --git a/pkgs/by-name/mo/moneydance/package.nix b/pkgs/by-name/mo/moneydance/package.nix
index 5222684f706b..b7929fe7383d 100644
--- a/pkgs/by-name/mo/moneydance/package.nix
+++ b/pkgs/by-name/mo/moneydance/package.nix
@@ -1,16 +1,22 @@
-{ lib, stdenv, fetchzip, makeWrapper, openjdk21, openjfx21, jvmFlags ? [ ] }:
-let jdk = openjdk21.override { enableJavaFX = true; };
-in stdenv.mkDerivation (finalAttrs: {
+{ lib, stdenv, fetchzip, makeWrapper, openjdk22, openjfx22, jvmFlags ? [ ] }:
+let
+  openjfx = openjfx22;
+  jdk = openjdk22.override {
+    enableJavaFX = true;
+    inherit openjfx;
+  };
+in
+stdenv.mkDerivation (finalAttrs: {
   pname = "moneydance";
-  version = "2023.3_5064";
+  version = "2024.1_5118";
 
   src = fetchzip {
-    url = "https://infinitekind.com/stabledl/${finalAttrs.version}/moneydance-linux.tar.gz";
-    hash = "sha256-jHr1V/gV1seenw2Q0/G405lTiabEYEsOS8p/XyByrtM=";
+    url = "https://infinitekind.com/stabledl/2024_5118/moneydance-linux.tar.gz";
+    hash = "sha256-wwSb3CuhuXB4I9jq+TpLPbd1k9UzqQbAaZkGKgi+nns=";
   };
 
   nativeBuildInputs = [ makeWrapper ];
-  buildInputs = [ jdk openjfx21 ];
+  buildInputs = [ jdk openjfx ];
 
   # Note the double escaping in the call to makeWrapper. The escapeShellArgs
   # call quotes each element of the flags list as a word[1] and returns a
@@ -43,10 +49,15 @@ in stdenv.mkDerivation (finalAttrs: {
 
   meta = {
     homepage = "https://infinitekind.com/moneydance";
+    changelog = "https://infinitekind.com/stabledl/2024_5118/changelog.txt";
     description = "An easy to use and full-featured personal finance app that doesn't compromise your privacy";
     sourceProvenance = [ lib.sourceTypes.binaryBytecode ];
     license = lib.licenses.unfree;
-    platforms = jdk.meta.platforms;
+    # Darwin refers to Zulu Java, which breaks the evaluation of this derivation
+    # for some reason
+    #
+    # https://github.com/NixOS/nixpkgs/pull/306372#issuecomment-2111688236
+    platforms = lib.platforms.linux;
     maintainers = [ lib.maintainers.lucasbergman ];
   };
 })
diff --git a/pkgs/by-name/mo/mousam/package.nix b/pkgs/by-name/mo/mousam/package.nix
index 256ee99a13be..4990c96954f6 100644
--- a/pkgs/by-name/mo/mousam/package.nix
+++ b/pkgs/by-name/mo/mousam/package.nix
@@ -12,15 +12,15 @@
 
 python3Packages.buildPythonApplication rec {
   pname = "mousam";
-  version = "1.1.0";
+  version = "1.2.0";
   # built with meson, not a python format
-  format = "other";
+  pyproject = false;
 
   src = fetchFromGitHub {
     owner = "amit9838";
     repo = "mousam";
     rev = "v${version}";
-    hash = "sha256-4NJLJ9aPCufvqZGzqQEjSxryofcg4mwk0UohlgUYcqk=";
+    hash = "sha256-/mOb4Pgdn5DcxwHjlI8L9kKD/Y6a4vROLbsQBb62VXM=";
   };
 
   nativeBuildInputs = [
@@ -36,7 +36,7 @@ python3Packages.buildPythonApplication rec {
     libadwaita
   ];
 
-  propagatedBuildInputs = with python3Packages; [
+  dependencies = with python3Packages; [
     pygobject3
     requests
   ];
diff --git a/pkgs/by-name/mq/mqttx/package.nix b/pkgs/by-name/mq/mqttx/package.nix
index 6ec192a6ab14..975db394ab18 100644
--- a/pkgs/by-name/mq/mqttx/package.nix
+++ b/pkgs/by-name/mq/mqttx/package.nix
@@ -31,8 +31,6 @@ in
 appimageTools.wrapType2 {
   inherit pname version src;
 
-  extraPkgs = pkgs: [ ];
-
   extraInstallCommands = ''
     install -m 444 -D ${appimageContents}/${pname}.desktop $out/share/applications/${pname}.desktop
     install -m 444 -D ${appimageContents}/${pname}.png $out/share/icons/hicolor/1024x1024/apps/${pname}.png
diff --git a/pkgs/by-name/my/mycelium/Cargo.lock b/pkgs/by-name/my/mycelium/Cargo.lock
index 9151a0046659..bf8ad6ce4d74 100644
--- a/pkgs/by-name/my/mycelium/Cargo.lock
+++ b/pkgs/by-name/my/mycelium/Cargo.lock
@@ -922,9 +922,9 @@ dependencies = [
 
 [[package]]
 name = "libc"
-version = "0.2.153"
+version = "0.2.154"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9c198f91728a82281a64e1f4f9eeb25d82cb32a5de251c6bd1b5154d63a8e7bd"
+checksum = "ae743338b92ff9146ce83992f766a31066a91a8c84a45e0e9f21e7cf6de6d346"
 
 [[package]]
 name = "libloading"
@@ -1041,7 +1041,7 @@ dependencies = [
 
 [[package]]
 name = "mycelium"
-version = "0.5.1"
+version = "0.5.2"
 dependencies = [
  "aes-gcm",
  "blake3",
@@ -1075,7 +1075,7 @@ dependencies = [
 
 [[package]]
 name = "myceliumd"
-version = "0.5.1"
+version = "0.5.2"
 dependencies = [
  "axum",
  "base64 0.22.0",
@@ -1463,17 +1463,10 @@ dependencies = [
  "memchr",
  "parking_lot",
  "procfs",
- "protobuf",
  "thiserror",
 ]
 
 [[package]]
-name = "protobuf"
-version = "2.28.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "106dd99e98437432fed6519dedecfade6a06a73bb7b2a1e019fdd2bee5778d94"
-
-[[package]]
 name = "quinn"
 version = "0.10.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -1626,9 +1619,9 @@ checksum = "c08c74e62047bb2de4ff487b251e4a92e24f48745648451635cec7d591162d9f"
 
 [[package]]
 name = "reqwest"
-version = "0.12.3"
+version = "0.12.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3e6cc1e89e689536eb5aeede61520e874df5a4707df811cd5da4aa5fbb2aae19"
+checksum = "566cafdd92868e0939d3fb961bd0dc25fcfaaed179291093b3d43e6b3150ea10"
 dependencies = [
  "base64 0.22.0",
  "bytes",
@@ -1756,9 +1749,9 @@ dependencies = [
 
 [[package]]
 name = "rustls"
-version = "0.21.10"
+version = "0.21.12"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f9d5a6813c0759e4609cd494e8e725babae6a2ca7b62a5536a13daaec6fcb7ba"
+checksum = "3f56a14d1f48b391359b22f731fd4bd7e43c97f3c50eee276f3aa09c94784d3e"
 dependencies = [
  "ring 0.17.7",
  "rustls-webpki",
@@ -1817,18 +1810,18 @@ checksum = "b97ed7a9823b74f99c7742f5336af7be5ecd3eeafcb1507d1fa93347b1d589b0"
 
 [[package]]
 name = "serde"
-version = "1.0.197"
+version = "1.0.199"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3fb1c873e1b9b056a4dc4c0c198b24c3ffa059243875552b2bd0933b1aee4ce2"
+checksum = "0c9f6e76df036c77cd94996771fb40db98187f096dd0b9af39c6c6e452ba966a"
 dependencies = [
  "serde_derive",
 ]
 
 [[package]]
 name = "serde_derive"
-version = "1.0.197"
+version = "1.0.199"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7eb0b34b42edc17f6b7cac84a52a1c5f0e1bb2227e997ca9011ea3dd34e8610b"
+checksum = "11bd257a6541e141e42ca6d24ae26f7714887b47e89aa739099104c7e4d3b7fc"
 dependencies = [
  "proc-macro2",
  "quote",
@@ -1837,9 +1830,9 @@ dependencies = [
 
 [[package]]
 name = "serde_json"
-version = "1.0.115"
+version = "1.0.116"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "12dc5c46daa8e9fdf4f5e71b6cf9a53f2487da0e86e55808e2d35539666497dd"
+checksum = "3e17db7126d17feb94eb3fad46bf1a96b034e8aacbc2e775fe81505f8b0b2813"
 dependencies = [
  "itoa",
  "ryu",
diff --git a/pkgs/by-name/my/mycelium/package.nix b/pkgs/by-name/my/mycelium/package.nix
index a180a7727877..eea61e0c326b 100644
--- a/pkgs/by-name/my/mycelium/package.nix
+++ b/pkgs/by-name/my/mycelium/package.nix
@@ -8,13 +8,13 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "mycelium";
-  version = "0.5.1";
+  version = "0.5.2";
 
   src = fetchFromGitHub {
     owner = "threefoldtech";
     repo = "mycelium";
     rev = "v${version}";
-    hash = "sha256-x3XqFKcOLwKhgF/DKo8Qp3QLyaE2hdCTjfLSE8K3ifQ=";
+    hash = "sha256-Mz4YYpnuSGUwQANiXzsJNAYMugXL229E30wnZCu2lSM=";
   };
 
   cargoLock = {
diff --git a/pkgs/by-name/my/mysql84/no-force-outline-atomics.patch b/pkgs/by-name/my/mysql84/no-force-outline-atomics.patch
new file mode 100644
index 000000000000..a716a4f7f481
--- /dev/null
+++ b/pkgs/by-name/my/mysql84/no-force-outline-atomics.patch
@@ -0,0 +1,24 @@
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 727d66011f9..acae1aada57 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -1338,19 +1338,6 @@ IF(UNIX AND MY_COMPILER_IS_GNU_OR_CLANG
+   ENDIF()
+ ENDIF()
+ 
+-# For aarch64 some sub-architectures support LSE atomics and some don't. Thus,
+-# compiling for the common denominator (-march=armv8-a) means LSE is not used.
+-# The -moutline-atomics switch enables run-time detection of LSE support.
+-# There are compilers (gcc 9.3.1 for example) which support this switch, but
+-# do not enable it by default, even though it seems to help. So, we force it.
+-IF(CMAKE_SYSTEM_PROCESSOR STREQUAL "aarch64")
+-  MY_CHECK_CXX_COMPILER_FLAG( "-moutline-atomics" HAVE_OUTLINE_ATOMICS)
+-  IF(HAVE_OUTLINE_ATOMICS)
+-    STRING_APPEND(CMAKE_C_FLAGS   " -moutline-atomics")
+-    STRING_APPEND(CMAKE_CXX_FLAGS " -moutline-atomics")
+-  ENDIF()
+-ENDIF()
+-
+ IF(LINUX)
+   OPTION(LINK_RANDOMIZE "Randomize the order of all symbols in the binary" OFF)
+   SET(LINK_RANDOMIZE_SEED "mysql"
diff --git a/pkgs/by-name/my/mysql84/package.nix b/pkgs/by-name/my/mysql84/package.nix
new file mode 100644
index 000000000000..d7081f614141
--- /dev/null
+++ b/pkgs/by-name/my/mysql84/package.nix
@@ -0,0 +1,78 @@
+{ lib, stdenv, fetchurl, bison, cmake, pkg-config
+, icu, libedit, libevent, lz4, ncurses, openssl, protobuf_21, re2, readline, zlib, zstd, libfido2
+, darwin, numactl, libtirpc, rpcsvc-proto, curl
+}:
+
+stdenv.mkDerivation (finalAttrs: {
+  pname = "mysql";
+  version = "8.4.0";
+
+  src = fetchurl {
+    url = "https://dev.mysql.com/get/Downloads/MySQL-${lib.versions.majorMinor finalAttrs.version}/mysql-${finalAttrs.version}.tar.gz";
+    hash = "sha256-R6VDP83WOduDa5nhtUWcK4E8va0j/ytd1K0n95K6kY4=";
+  };
+
+  nativeBuildInputs = [ bison cmake pkg-config ]
+    ++ lib.optionals (!stdenv.isDarwin) [ rpcsvc-proto ];
+
+  patches = [
+    ./no-force-outline-atomics.patch # Do not force compilers to turn on -moutline-atomics switch
+  ];
+
+  ## NOTE: MySQL upstream frequently twiddles the invocations of libtool. When updating, you might proactively grep for libtool references.
+  postPatch = ''
+    substituteInPlace cmake/libutils.cmake --replace /usr/bin/libtool libtool
+    substituteInPlace cmake/os/Darwin.cmake --replace /usr/bin/libtool libtool
+  '';
+
+  buildInputs = [
+    (curl.override { inherit openssl; }) icu libedit libevent lz4 ncurses openssl protobuf_21 re2 readline zlib
+    zstd libfido2
+  ] ++ lib.optionals stdenv.isLinux [
+    numactl libtirpc
+  ] ++ lib.optionals stdenv.isDarwin [
+    darwin.cctools darwin.apple_sdk.frameworks.CoreServices darwin.developer_cmds darwin.DarwinTools
+  ];
+
+  outputs = [ "out" "static" ];
+
+  cmakeFlags = [
+    "-DFORCE_UNSUPPORTED_COMPILER=1" # To configure on Darwin.
+    "-DWITH_ROUTER=OFF" # It may be packaged separately.
+    "-DWITH_SYSTEM_LIBS=ON"
+    "-DWITH_UNIT_TESTS=OFF"
+    "-DMYSQL_UNIX_ADDR=/run/mysqld/mysqld.sock"
+    "-DMYSQL_DATADIR=/var/lib/mysql"
+    "-DINSTALL_INFODIR=share/mysql/docs"
+    "-DINSTALL_MANDIR=share/man"
+    "-DINSTALL_PLUGINDIR=lib/mysql/plugin"
+    "-DINSTALL_INCLUDEDIR=include/mysql"
+    "-DINSTALL_DOCREADMEDIR=share/mysql"
+    "-DINSTALL_SUPPORTFILESDIR=share/mysql"
+    "-DINSTALL_MYSQLSHAREDIR=share/mysql"
+    "-DINSTALL_MYSQLTESTDIR="
+    "-DINSTALL_DOCDIR=share/mysql/docs"
+    "-DINSTALL_SHAREDIR=share/mysql"
+  ];
+
+  postInstall = ''
+    moveToOutput "lib/*.a" $static
+    so=${stdenv.hostPlatform.extensions.sharedLibrary}
+    ln -s libmysqlclient$so $out/lib/libmysqlclient_r$so
+  '';
+
+  passthru = {
+    client = finalAttrs.finalPackage;
+    connector-c = finalAttrs.finalPackage;
+    server = finalAttrs.finalPackage;
+    mysqlVersion = lib.versions.majorMinor finalAttrs.version;
+  };
+
+  meta = with lib; {
+    homepage = "https://www.mysql.com/";
+    description = "The world's most popular open source database";
+    license = licenses.gpl2;
+    maintainers = with maintainers; [ orivej shyim ];
+    platforms = platforms.unix;
+  };
+})
diff --git a/pkgs/by-name/my/mystmd/package.nix b/pkgs/by-name/my/mystmd/package.nix
index 4206f21c2604..ee07a8fef3be 100644
--- a/pkgs/by-name/my/mystmd/package.nix
+++ b/pkgs/by-name/my/mystmd/package.nix
@@ -2,16 +2,16 @@
 
 buildNpmPackage rec {
   pname = "mystmd";
-  version = "1.1.55";
+  version = "1.2.0";
 
   src = fetchFromGitHub {
     owner = "executablebooks";
     repo = "mystmd";
     rev = "mystmd@${version}";
-    hash = "sha256-aIqIcNXlzpvW90WJs9tJajXvnEQB0IiNCu8B62cwElo=";
+    hash = "sha256-SxUZvPSitzWZzTa490dkJWw6fZ5PtN8hy7fglifPn6o=";
   };
 
-  npmDepsHash = "sha256-QIGqx1Peogmdo1KLHkzUKqvAuA6jCJRfxeQ1X7p6vTM=";
+  npmDepsHash = "sha256-fwjtEw2mAnNX7lo9ovCC58qqtJPDLc2Ho9I1Ui0k/iI=";
 
   dontNpmInstall = true;
 
diff --git a/pkgs/by-name/my/myxer/package.nix b/pkgs/by-name/my/myxer/package.nix
index 200ca4bce15c..61dd704db677 100644
--- a/pkgs/by-name/my/myxer/package.nix
+++ b/pkgs/by-name/my/myxer/package.nix
@@ -2,7 +2,7 @@
 , rustPlatform
 , fetchFromGitHub
 , pkg-config
-, wrapGAppsHook
+, wrapGAppsHook3
 , libpulseaudio
 , glib
 , pango
@@ -22,7 +22,7 @@ rustPlatform.buildRustPackage rec {
 
   cargoHash = "sha256-IH+SLIHO/wu+przH+mgOEnH9m+iAE5s/BJhh0UUHR/0=";
 
-  nativeBuildInputs = [ pkg-config wrapGAppsHook ];
+  nativeBuildInputs = [ pkg-config wrapGAppsHook3 ];
 
   buildInputs = [ libpulseaudio glib pango gtk3 ];
 
diff --git a/pkgs/by-name/na/namespace-cli/package.nix b/pkgs/by-name/na/namespace-cli/package.nix
index cacb93300c03..463fad226834 100644
--- a/pkgs/by-name/na/namespace-cli/package.nix
+++ b/pkgs/by-name/na/namespace-cli/package.nix
@@ -5,13 +5,13 @@
 
 buildGoModule rec {
   pname = "namespace-cli";
-  version = "0.0.360";
+  version = "0.0.369";
 
   src = fetchFromGitHub {
     owner = "namespacelabs";
     repo = "foundation";
     rev = "v${version}";
-    hash = "sha256-HuicX6g5+TfctiF4/N7uSQtkzzx9y2dnfn0ef+p1nRc=";
+    hash = "sha256-OmU6C0hapdpM/41kEeNwpcMRooCWMLzI5FgQbIvjsb8=";
   };
 
   vendorHash = "sha256-72cHswoTZszo42NOrPNuokDlqoJ3/YEhGe+rQSKvgAw=";
diff --git a/pkgs/servers/misc/navidrome/default.nix b/pkgs/by-name/na/navidrome/package.nix
index d7722688c774..fda3170bd002 100644
--- a/pkgs/servers/misc/navidrome/default.nix
+++ b/pkgs/by-name/na/navidrome/package.nix
@@ -10,7 +10,6 @@
 , ffmpeg-headless
 , taglib
 , zlib
-, makeWrapper
 , nixosTests
 , nix-update-script
 , ffmpegSupport ? true
diff --git a/pkgs/by-name/ne/nekoray/package.nix b/pkgs/by-name/ne/nekoray/package.nix
index 4a1ce8f04662..1fda18056a6e 100644
--- a/pkgs/by-name/ne/nekoray/package.nix
+++ b/pkgs/by-name/ne/nekoray/package.nix
@@ -84,11 +84,12 @@ stdenv.mkDerivation (finalAttrs: {
     fetchSubmodules = true;
   };
 
+  strictDeps = true;
+
   nativeBuildInputs = [
     libsForQt5.wrapQtAppsHook
     cmake
     ninja
-    protobuf
     copyDesktopItems
   ];
 
@@ -96,8 +97,9 @@ stdenv.mkDerivation (finalAttrs: {
     libsForQt5.qtbase
     libsForQt5.qttools
     libsForQt5.qtx11extras
-    zxing-cpp
+    protobuf
     yaml-cpp
+    zxing-cpp
   ];
 
   # NKR_PACKAGE makes sure the app uses the user's config directory to store it's non-static content
diff --git a/pkgs/applications/audio/waylyrics/Cargo.lock b/pkgs/by-name/ne/neothesia/Cargo.lock
index 2a5931a81a0c..775eacbe57d1 100644
--- a/pkgs/applications/audio/waylyrics/Cargo.lock
+++ b/pkgs/by-name/ne/neothesia/Cargo.lock
@@ -3,78 +3,127 @@
 version = 3
 
 [[package]]
-name = "addr2line"
-version = "0.21.0"
+name = "ab_glyph"
+version = "0.2.23"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8a30b2e23b9e17a9f90641c7ab1549cd9b44f296d3ccbf309d2863cfe398a0cb"
+checksum = "80179d7dd5d7e8c285d67c4a1e652972a92de7475beddfb92028c76463b13225"
 dependencies = [
- "gimli",
+ "ab_glyph_rasterizer",
+ "owned_ttf_parser",
 ]
 
 [[package]]
+name = "ab_glyph_rasterizer"
+version = "0.1.8"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "c71b1793ee61086797f5c80b6efa2b8ffa6d5dd703f118545808a7f2e27f7046"
+
+[[package]]
 name = "adler"
 version = "1.0.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "f26201604c87b1e01bd3d98f8d5d9a8fcbb815e8cedb41ffccbeb4bf593a35fe"
 
 [[package]]
-name = "aes"
-version = "0.8.4"
+name = "ahash"
+version = "0.8.7"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b169f7a6d4742236a0a00c541b845991d0ac43e546831af1249753ab4c3aa3a0"
+checksum = "77c3a9648d43b9cd48db467b3f87fdd6e146bcc88ab0180006cef2179fe11d01"
 dependencies = [
  "cfg-if",
- "cipher",
- "cpufeatures",
+ "getrandom",
+ "once_cell",
+ "version_check",
+ "zerocopy",
 ]
 
 [[package]]
-name = "ahash"
-version = "0.7.8"
+name = "aho-corasick"
+version = "1.1.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "891477e0c6a8957309ee5c45a6368af3ae14bb510732d2684ffa19af310920f9"
+checksum = "b2969dcb958b36655471fc61f7e416fa76033bdd4bfed0678d8fee1e2d07a1f0"
 dependencies = [
- "getrandom",
- "once_cell",
- "version_check",
+ "memchr",
 ]
 
 [[package]]
-name = "ahash"
-version = "0.8.11"
+name = "allocator-api2"
+version = "0.2.16"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "0942ffc6dcaadf03badf6e6a2d0228460359d5e34b57ccdc720b7382dfbd5ec5"
+
+[[package]]
+name = "alsa"
+version = "0.7.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e89da841a80418a9b391ebaea17f5c112ffaaa96f621d2c285b5174da76b9011"
+checksum = "e2562ad8dcf0f789f65c6fdaad8a8a9708ed6b488e649da28c01656ad66b8b47"
 dependencies = [
- "cfg-if",
- "getrandom",
- "once_cell",
- "version_check",
- "zerocopy",
+ "alsa-sys",
+ "bitflags 1.3.2",
+ "libc",
+ "nix 0.24.3",
 ]
 
 [[package]]
-name = "aho-corasick"
-version = "1.1.3"
+name = "alsa-sys"
+version = "0.3.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8e60d3430d3a69478ad0993f19238d2df97c507009a52b3c10addcd7f6bcb916"
+checksum = "db8fee663d06c4e303404ef5f40488a53e062f89ba8bfed81f42325aafad1527"
 dependencies = [
- "memchr",
+ "libc",
+ "pkg-config",
 ]
 
 [[package]]
-name = "ansi_term"
-version = "0.12.1"
+name = "android-activity"
+version = "0.5.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d52a9bb7ec0cf484c551830a7ce27bd20d67eac647e1befb56b0be4ee39a55d2"
+checksum = "ee91c0c2905bae44f84bfa4e044536541df26b7703fd0888deeb9060fcc44289"
 dependencies = [
- "winapi",
+ "android-properties",
+ "bitflags 2.4.2",
+ "cc",
+ "cesu8",
+ "jni 0.21.1",
+ "jni-sys",
+ "libc",
+ "log",
+ "ndk 0.8.0",
+ "ndk-context",
+ "ndk-sys 0.5.0+25.2.9519653",
+ "num_enum 0.7.2",
+ "thiserror",
+]
+
+[[package]]
+name = "android-properties"
+version = "0.2.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "fc7eb209b1518d6bb87b283c20095f5228ecda460da70b44f0802523dea6da04"
+
+[[package]]
+name = "android_system_properties"
+version = "0.1.5"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "819e7219dbd41043ac279b19830f2efc897156490d7fd6ea916720117ee66311"
+dependencies = [
+ "libc",
+]
+
+[[package]]
+name = "approx"
+version = "0.5.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "cab112f0a86d568ea0e627cc1d6be74a1e9cd55214684db5561995f6dad897c6"
+dependencies = [
+ "num-traits",
 ]
 
 [[package]]
-name = "anyhow"
-version = "1.0.82"
+name = "arrayref"
+version = "0.3.7"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f538837af36e6f6a9be0faa67f9a314f8119e4e4b5867c6ab40ed60360142519"
+checksum = "6b4930d2cb77ce62f89ee5d5289b4ac049559b1c45539271f5ed4fdc7db34545"
 
 [[package]]
 name = "arrayvec"
@@ -83,127 +132,303 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "96d30a06541fbafbc7f82ed10c06164cfbd2c401138f6addd8404629c4b16711"
 
 [[package]]
-name = "assert_float_eq"
-version = "1.1.3"
+name = "as-raw-xcb-connection"
+version = "1.0.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "175571dd1d178ced59193a6fc02dde1b972eb0bc56c892cde9beeceac5bf0f6b"
+
+[[package]]
+name = "ash"
+version = "0.37.3+1.3.251"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4cea652ffbedecf29e9cd41bb4c066881057a42c0c119040f022802b26853e77"
+checksum = "39e9c3835d686b0a6084ab4234fcd1b07dbf6e4767dce60874b12356a25ecd4a"
+dependencies = [
+ "libloading 0.7.4",
+]
+
+[[package]]
+name = "ashpd"
+version = "0.8.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "1b22517ee647547c01a687cf9b76074e1c91334032a4324f7243c6ee0f949390"
+dependencies = [
+ "async-fs",
+ "async-net",
+ "enumflags2",
+ "futures-channel",
+ "futures-util",
+ "rand",
+ "serde",
+ "serde_repr",
+ "url",
+ "zbus",
+]
+
+[[package]]
+name = "async-broadcast"
+version = "0.7.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "258b52a1aa741b9f09783b2d86cf0aeeb617bbf847f6933340a39644227acbdb"
+dependencies = [
+ "event-listener 5.1.0",
+ "event-listener-strategy 0.5.0",
+ "futures-core",
+ "pin-project-lite",
+]
 
 [[package]]
 name = "async-channel"
-version = "2.2.1"
+version = "2.2.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "136d4d23bcc79e27423727b36823d86233aad06dfea531837b038394d11e9928"
+checksum = "f28243a43d821d11341ab73c80bed182dc015c514b951616cf79bd4af39af0c3"
 dependencies = [
  "concurrent-queue",
- "event-listener",
- "event-listener-strategy",
+ "event-listener 5.1.0",
+ "event-listener-strategy 0.5.0",
  "futures-core",
  "pin-project-lite",
 ]
 
 [[package]]
-name = "async-trait"
-version = "0.1.80"
+name = "async-executor"
+version = "1.8.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c6fa2087f2753a7da8cc1c0dbfcf89579dd57458e36769de5ac750b4671737ca"
+checksum = "17ae5ebefcc48e7452b4987947920dac9450be1110cadf34d1b8c116bdbaf97c"
 dependencies = [
- "proc-macro2",
- "quote 1.0.36",
- "syn 2.0.58",
+ "async-lock 3.3.0",
+ "async-task",
+ "concurrent-queue",
+ "fastrand",
+ "futures-lite",
+ "slab",
 ]
 
 [[package]]
-name = "atk"
-version = "0.18.0"
+name = "async-fs"
+version = "2.1.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b4af014b17dd80e8af9fa689b2d4a211ddba6eb583c1622f35d0cb543f6b17e4"
+checksum = "bc19683171f287921f2405677dd2ed2549c3b3bda697a563ebc3a121ace2aba1"
 dependencies = [
- "atk-sys",
- "glib 0.18.5",
- "libc",
+ "async-lock 3.3.0",
+ "blocking",
+ "futures-lite",
 ]
 
 [[package]]
-name = "atk-sys"
-version = "0.18.0"
+name = "async-io"
+version = "2.3.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "251e0b7d90e33e0ba930891a505a9a35ece37b2dd37a14f3ffc306c13b980009"
+checksum = "8f97ab0c5b00a7cdbe5a371b9a782ee7be1316095885c8a4ea1daf490eb0ef65"
 dependencies = [
- "glib-sys 0.18.1",
- "gobject-sys 0.18.0",
- "libc",
- "system-deps",
+ "async-lock 3.3.0",
+ "cfg-if",
+ "concurrent-queue",
+ "futures-io",
+ "futures-lite",
+ "parking",
+ "polling",
+ "rustix",
+ "slab",
+ "tracing",
+ "windows-sys 0.52.0",
 ]
 
 [[package]]
-name = "atty"
-version = "0.2.14"
+name = "async-lock"
+version = "2.8.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d9b39be18770d11421cdb1b9947a45dd3f37e93092cbf377614828a319d5fee8"
+checksum = "287272293e9d8c41773cec55e365490fe034813a2f172f502d6ddcf75b2f582b"
 dependencies = [
- "hermit-abi 0.1.19",
- "libc",
- "winapi",
+ "event-listener 2.5.3",
 ]
 
 [[package]]
-name = "autocfg"
-version = "1.2.0"
+name = "async-lock"
+version = "3.3.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f1fdabc7756949593fe60f30ec81974b613357de856987752631dea1e3394c80"
+checksum = "d034b430882f8381900d3fe6f0aaa3ad94f2cb4ac519b429692a1bc2dda4ae7b"
+dependencies = [
+ "event-listener 4.0.3",
+ "event-listener-strategy 0.4.0",
+ "pin-project-lite",
+]
 
 [[package]]
-name = "backtrace"
-version = "0.3.71"
+name = "async-net"
+version = "2.0.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "26b05800d2e817c8b3b4b54abd461726265fa9789ae34330622f2db9ee696f9d"
+checksum = "b948000fad4873c1c9339d60f2623323a0cfd3816e5181033c6a5cb68b2accf7"
 dependencies = [
- "addr2line",
- "cc",
+ "async-io",
+ "blocking",
+ "futures-lite",
+]
+
+[[package]]
+name = "async-process"
+version = "2.1.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "451e3cf68011bd56771c79db04a9e333095ab6349f7e47592b788e9b98720cc8"
+dependencies = [
+ "async-channel",
+ "async-io",
+ "async-lock 3.3.0",
+ "async-signal",
+ "blocking",
  "cfg-if",
- "libc",
- "miniz_oxide",
- "object",
- "rustc-demangle",
+ "event-listener 5.1.0",
+ "futures-lite",
+ "rustix",
+ "windows-sys 0.52.0",
+]
+
+[[package]]
+name = "async-recursion"
+version = "1.0.5"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "5fd55a5ba1179988837d24ab4c7cc8ed6efdeff578ede0416b4225a5fca35bd0"
+dependencies = [
+ "proc-macro2",
+ "quote",
+ "syn 2.0.48",
+]
+
+[[package]]
+name = "async-signal"
+version = "0.2.5"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "9e47d90f65a225c4527103a8d747001fc56e375203592b25ad103e1ca13124c5"
+dependencies = [
+ "async-io",
+ "async-lock 2.8.0",
+ "atomic-waker",
+ "cfg-if",
+ "futures-core",
+ "futures-io",
+ "rustix",
+ "signal-hook-registry",
+ "slab",
+ "windows-sys 0.48.0",
+]
+
+[[package]]
+name = "async-task"
+version = "4.7.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "fbb36e985947064623dbd357f727af08ffd077f93d696782f3c56365fa2e2799"
+
+[[package]]
+name = "async-thread"
+version = "0.1.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "3f8127d0634ad2b788f12e8c8623f91c584c2eb7496157b2e0cada5b01e0fbfd"
+dependencies = [
+ "futures-channel",
+]
+
+[[package]]
+name = "async-trait"
+version = "0.1.77"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "c980ee35e870bd1a4d2c8294d4c04d0499e67bca1e4b5cefcc693c2fa00caea9"
+dependencies = [
+ "proc-macro2",
+ "quote",
+ "syn 2.0.48",
 ]
 
 [[package]]
+name = "atomic-waker"
+version = "1.1.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "1505bd5d3d116872e7271a6d4e16d81d0c8570876c8de68093a09ac269d8aac0"
+
+[[package]]
+name = "autocfg"
+version = "1.1.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "d468802bab17cbc0cc575e9b053f41e72aa36bfa6b7f55e3529ffa43161b97fa"
+
+[[package]]
 name = "base64"
-version = "0.22.0"
+version = "0.21.7"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9475866fec1451be56a3c2400fd081ff546538961565ccb5b7142cbd22bc7a51"
+checksum = "9d297deb1925b89f2ccc13d7635fa0714f12c87adce1c75356b39ca9b7178567"
 
 [[package]]
-name = "base64ct"
-version = "1.6.0"
+name = "bindgen"
+version = "0.64.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8c3c1a368f70d6cf7302d78f8f7093da241fb8e8807c05cc9e51a125895a6d5b"
+checksum = "c4243e6031260db77ede97ad86c27e501d646a27ab57b59a574f725d98ab1fb4"
+dependencies = [
+ "bitflags 1.3.2",
+ "cexpr",
+ "clang-sys",
+ "lazy_static",
+ "lazycell",
+ "peeking_take_while",
+ "proc-macro2",
+ "quote",
+ "regex",
+ "rustc-hash",
+ "shlex",
+ "syn 1.0.109",
+]
 
 [[package]]
-name = "bitflags"
-version = "1.3.2"
+name = "bindgen"
+version = "0.69.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a"
+checksum = "a00dc851838a2120612785d195287475a3ac45514741da670b735818822129a0"
+dependencies = [
+ "bitflags 2.4.2",
+ "cexpr",
+ "clang-sys",
+ "itertools",
+ "lazy_static",
+ "lazycell",
+ "proc-macro2",
+ "quote",
+ "regex",
+ "rustc-hash",
+ "shlex",
+ "syn 2.0.48",
+]
 
 [[package]]
-name = "bitflags"
-version = "2.5.0"
+name = "bit-set"
+version = "0.5.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "cf4b9d6a944f767f8e5e0db018570623c85f3d925ac718db4e06d0187adb21c1"
+checksum = "0700ddab506f33b20a03b13996eccd309a48e5ff77d0d95926aa0210fb4e95f1"
 dependencies = [
- "serde",
+ "bit-vec",
 ]
 
 [[package]]
-name = "bitvec"
-version = "1.0.1"
+name = "bit-vec"
+version = "0.6.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "349f9b6a179ed607305526ca489b34ad0a41aed5f7980fa90eb03160b69598fb"
+
+[[package]]
+name = "bit_field"
+version = "0.10.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1bc2832c24239b0141d5674bb9174f9d68a8b5b3f2753311927c172ca46f7e9c"
+checksum = "dc827186963e592360843fb5ba4b973e145841266c1357f7180c43526f2e5b61"
+
+[[package]]
+name = "bitflags"
+version = "1.3.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a"
+
+[[package]]
+name = "bitflags"
+version = "2.4.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "ed570934406eb16438a4e976b1b4500774099c13b8cb96eec99f620f05090ddf"
 dependencies = [
- "funty",
- "radium",
- "tap",
- "wyz",
+ "serde",
 ]
 
 [[package]]
@@ -213,64 +438,79 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "0d8c1fef690941d3e7788d328517591fecc684c084084702d6ff1641e993699a"
 
 [[package]]
-name = "block-padding"
-version = "0.3.3"
+name = "block-buffer"
+version = "0.10.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a8894febbff9f758034a5b8e12d87918f56dfc64a8e1fe757d65e29041538d93"
+checksum = "3078c7629b62d3f0439517fa394996acacc5cbc91c5a20d8c658e77abd503a71"
 dependencies = [
  "generic-array",
 ]
 
 [[package]]
-name = "borsh"
-version = "1.4.0"
+name = "block-sys"
+version = "0.2.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0901fc8eb0aca4c83be0106d6f2db17d86a08dfc2c25f0e84464bf381158add6"
+checksum = "ae85a0696e7ea3b835a453750bf002770776609115e6d25c6d2ff28a8200f7e7"
 dependencies = [
- "borsh-derive",
- "cfg_aliases",
+ "objc-sys",
 ]
 
 [[package]]
-name = "borsh-derive"
-version = "1.4.0"
+name = "block2"
+version = "0.3.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "51670c3aa053938b0ee3bd67c3817e471e626151131b934038e83c5bf8de48f5"
+checksum = "15b55663a85f33501257357e6421bb33e769d5c9ffb5ba0921c975a123e35e68"
 dependencies = [
- "once_cell",
- "proc-macro-crate 3.1.0",
- "proc-macro2",
- "quote 1.0.36",
- "syn 2.0.58",
- "syn_derive",
+ "block-sys",
+ "objc2",
+]
+
+[[package]]
+name = "blocking"
+version = "1.5.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "6a37913e8dc4ddcc604f0c6d3bf2887c995153af3611de9e23c352b44c1b9118"
+dependencies = [
+ "async-channel",
+ "async-lock 3.3.0",
+ "async-task",
+ "fastrand",
+ "futures-io",
+ "futures-lite",
+ "piper",
+ "tracing",
 ]
 
 [[package]]
 name = "bumpalo"
-version = "3.16.0"
+version = "3.14.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "7f30e7476521f6f8af1a1c4c0b8cc94f0bee37d91763d0ca2665f299b6cd8aec"
+
+[[package]]
+name = "byte-slice-cast"
+version = "1.2.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "79296716171880943b8470b5f8d03aa55eb2e645a4874bdbb28adb49162e012c"
+checksum = "c3ac9f8b63eca6fd385229b3675f6cc0dc5c8a5c8a54a59d4f52ffd670d87b0c"
 
 [[package]]
-name = "bytecheck"
-version = "0.6.12"
+name = "bytemuck"
+version = "1.14.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "23cdc57ce23ac53c931e88a43d06d070a6fd142f2617be5855eb75efc9beb1c2"
+checksum = "ea31d69bda4949c1c1562c1e6f042a1caefac98cdc8a298260a2ff41c1e2d42b"
 dependencies = [
- "bytecheck_derive",
- "ptr_meta",
- "simdutf8",
+ "bytemuck_derive",
 ]
 
 [[package]]
-name = "bytecheck_derive"
-version = "0.6.12"
+name = "bytemuck_derive"
+version = "1.5.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3db406d29fbcd95542e92559bed4d8ad92636d1ca8b3b72ede10b4bcc010e659"
+checksum = "965ab7eb5f8f97d2a083c799f3a1b994fc397b2fe2da5d1da1626ce15a39f2b1"
 dependencies = [
  "proc-macro2",
- "quote 1.0.36",
- "syn 1.0.109",
+ "quote",
+ "syn 2.0.48",
 ]
 
 [[package]]
@@ -281,82 +521,59 @@ checksum = "1fd0f2584146f6f2ef48085050886acf353beff7305ebd1ae69500e27c67f64b"
 
 [[package]]
 name = "bytes"
-version = "1.6.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "514de17de45fdb8dc022b1a7975556c53c86f9f0aa5f534b98977b171857c2c9"
-
-[[package]]
-name = "cairo-rs"
-version = "0.18.5"
+version = "1.5.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8ca26ef0159422fb77631dc9d17b102f253b876fe1586b03b803e63a309b4ee2"
-dependencies = [
- "bitflags 2.5.0",
- "cairo-sys-rs 0.18.2",
- "glib 0.18.5",
- "libc",
- "once_cell",
- "thiserror",
-]
+checksum = "a2bd12c1caf447e69cd4528f47f94d203fd2582878ecb9e9465484c4148a8223"
 
 [[package]]
-name = "cairo-rs"
-version = "0.19.4"
+name = "calloop"
+version = "0.12.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b2ac2a4d0e69036cf0062976f6efcba1aaee3e448594e6514bb2ddf87acce562"
+checksum = "fba7adb4dd5aa98e5553510223000e7148f621165ec5f9acd7113f6ca4995298"
 dependencies = [
- "bitflags 2.5.0",
- "cairo-sys-rs 0.19.2",
- "glib 0.19.4",
- "libc",
+ "bitflags 2.4.2",
+ "log",
+ "polling",
+ "rustix",
+ "slab",
  "thiserror",
 ]
 
 [[package]]
-name = "cairo-sys-rs"
-version = "0.18.2"
+name = "calloop-wayland-source"
+version = "0.2.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "685c9fa8e590b8b3d678873528d83411db17242a73fccaed827770ea0fedda51"
+checksum = "0f0ea9b9476c7fad82841a8dbb380e2eae480c21910feba80725b46931ed8f02"
 dependencies = [
- "glib-sys 0.18.1",
- "libc",
- "system-deps",
+ "calloop",
+ "rustix",
+ "wayland-backend",
+ "wayland-client",
 ]
 
 [[package]]
-name = "cairo-sys-rs"
-version = "0.19.2"
+name = "cc"
+version = "1.0.83"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "fd3bb3119664efbd78b5e6c93957447944f16bdbced84c17a9f41c7829b81e64"
+checksum = "f1174fb0b6ec23863f8b971027804a42614e347eafb0a95bf0b12cdae21fc4d0"
 dependencies = [
- "glib-sys 0.19.0",
+ "jobserver",
  "libc",
- "system-deps",
 ]
 
 [[package]]
-name = "cbc"
-version = "0.1.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "26b52a9543ae338f279b96b0b9fed9c8093744685043739079ce85cd58f289a6"
-dependencies = [
- "cipher",
-]
-
-[[package]]
-name = "cc"
-version = "1.0.94"
+name = "cesu8"
+version = "1.1.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "17f6e324229dc011159fcc089755d1e2e216a90d43a7dea6853ca740b84f35e7"
+checksum = "6d43a04d8753f35258c91f8ec639f792891f748a1edbd759cf1dcea3382ad83c"
 
 [[package]]
-name = "cfg-expr"
-version = "0.15.8"
+name = "cexpr"
+version = "0.6.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d067ad48b8650848b989a59a86c6c36a995d02d2bf778d45c3c5d57bc2718f02"
+checksum = "6fac387a98bb7c37292057cffc56d62ecb629900026402633ae9160df93a8766"
 dependencies = [
- "smallvec",
- "target-lexicon",
+ "nom",
 ]
 
 [[package]]
@@ -372,28 +589,20 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "fd16c4719339c4530435d38e511904438d07cce7950afa3718a84ac36c10e89e"
 
 [[package]]
-name = "cipher"
-version = "0.4.4"
+name = "cfg_aliases"
+version = "0.2.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "773f3b9af64447d2ce9850330c473515014aa235e6a783b02db81ff39e4a3dad"
-dependencies = [
- "crypto-common",
- "inout",
-]
+checksum = "77e53693616d3075149f4ead59bdeecd204ac6b8192d8969757601b74bddf00f"
 
 [[package]]
-name = "clap"
-version = "2.34.0"
+name = "clang-sys"
+version = "1.7.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a0610544180c38b88101fecf2dd634b174a62eef6946f84dfc6a7127512b381c"
+checksum = "67523a3b4be3ce1989d607a828d036249522dd9c1c8de7f4dd2dae43a37369d1"
 dependencies = [
- "ansi_term",
- "atty",
- "bitflags 1.3.2",
- "strsim 0.8.0",
- "textwrap",
- "unicode-width",
- "vec_map",
+ "glob",
+ "libc",
+ "libloading 0.8.1",
 ]
 
 [[package]]
@@ -407,7 +616,7 @@ dependencies = [
  "cocoa-foundation",
  "core-foundation",
  "core-graphics",
- "foreign-types 0.5.0",
+ "foreign-types",
  "libc",
  "objc",
 ]
@@ -427,56 +636,69 @@ dependencies = [
 ]
 
 [[package]]
-name = "concurrent-queue"
-version = "2.4.0"
+name = "codespan-reporting"
+version = "0.11.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d16048cd947b08fa32c24458a22f5dc5e835264f689f4f5653210c69fd107363"
+checksum = "3538270d33cc669650c4b093848450d380def10c331d38c768e34cac80576e6e"
 dependencies = [
- "crossbeam-utils",
+ "termcolor",
+ "unicode-width",
 ]
 
 [[package]]
-name = "const-oid"
-version = "0.9.6"
+name = "color_quant"
+version = "1.1.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c2459377285ad874054d797f3ccebf984978aa39129f6eafde5cdc8315b612f8"
+checksum = "3d7b894f5411737b7867f4827955924d7c254fc9f4d91a6aad6b097804b1018b"
 
 [[package]]
-name = "cookie"
-version = "0.17.0"
+name = "com"
+version = "0.6.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7efb37c3e1ccb1ff97164ad95ac1606e8ccd35b3fa0a7d99a304c7f4a428cc24"
+checksum = "7e17887fd17353b65b1b2ef1c526c83e26cd72e74f598a8dc1bee13a48f3d9f6"
 dependencies = [
- "percent-encoding",
- "time",
- "version_check",
+ "com_macros",
 ]
 
 [[package]]
-name = "cookie"
-version = "0.18.1"
+name = "com_macros"
+version = "0.6.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4ddef33a339a91ea89fb53151bd0a4689cfce27055c291dfa69945475d22c747"
+checksum = "d375883580a668c7481ea6631fc1a8863e33cc335bf56bfad8d7e6d4b04b13a5"
 dependencies = [
- "time",
- "version_check",
+ "com_macros_support",
+ "proc-macro2",
+ "syn 1.0.109",
 ]
 
 [[package]]
-name = "cookie_store"
-version = "0.20.0"
+name = "com_macros_support"
+version = "0.6.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "387461abbc748185c3a6e1673d826918b450b87ff22639429c694619a83b6cf6"
+checksum = "ad899a1087a9296d5644792d7cb72b8e34c1bec8e7d4fbc002230169a6e8710c"
 dependencies = [
- "cookie 0.17.0",
- "idna 0.3.0",
- "log",
- "publicsuffix",
- "serde",
- "serde_derive",
- "serde_json",
- "time",
- "url",
+ "proc-macro2",
+ "quote",
+ "syn 1.0.109",
+]
+
+[[package]]
+name = "combine"
+version = "4.6.6"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "35ed6e9d84f0b51a7f52daf1c7d71dd136fd7a3f41a8462b8cdb8c78d920fad4"
+dependencies = [
+ "bytes",
+ "memchr",
+]
+
+[[package]]
+name = "concurrent-queue"
+version = "2.4.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "d16048cd947b08fa32c24458a22f5dc5e835264f689f4f5653210c69fd107363"
+dependencies = [
+ "crossbeam-utils",
 ]
 
 [[package]]
@@ -497,14 +719,14 @@ checksum = "06ea2b9bc92be3c2baa9334a323ebca2d6f074ff852cd1d7b11064035cd3868f"
 
 [[package]]
 name = "core-graphics"
-version = "0.23.2"
+version = "0.23.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c07782be35f9e1140080c6b96f0d44b739e2278479f64e02fdab4e32dfd8b081"
+checksum = "970a29baf4110c26fedbc7f82107d42c23f7e88e404c4577ed73fe99ff85a212"
 dependencies = [
  "bitflags 1.3.2",
  "core-foundation",
  "core-graphics-types",
- "foreign-types 0.5.0",
+ "foreign-types",
  "libc",
 ]
 
@@ -520,143 +742,192 @@ dependencies = [
 ]
 
 [[package]]
-name = "cpufeatures"
-version = "0.2.12"
+name = "coreaudio-rs"
+version = "0.11.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "53fe5e26ff1b7aef8bca9c6080520cfb8d9333c7568e1829cef191a9723e5504"
+checksum = "321077172d79c662f64f5071a03120748d5bb652f5231570141be24cfcd2bace"
 dependencies = [
- "libc",
+ "bitflags 1.3.2",
+ "core-foundation-sys",
+ "coreaudio-sys",
 ]
 
 [[package]]
-name = "crc32fast"
-version = "1.4.0"
+name = "coreaudio-sys"
+version = "0.2.15"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b3855a8a784b474f333699ef2bbca9db2c4a1f6d9088a90a2d25b1eb53111eaa"
+checksum = "7f01585027057ff5f0a5bf276174ae4c1594a2c5bde93d5f46a016d76270f5a9"
 dependencies = [
- "cfg-if",
+ "bindgen 0.69.4",
 ]
 
 [[package]]
-name = "crossbeam-channel"
-version = "0.5.12"
+name = "coremidi"
+version = "0.6.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ab3db02a9c5b5121e1e42fbdb1aeb65f5e02624cc58c43f2884c6ccac0b82f95"
+checksum = "1a7847ca018a67204508b77cb9e6de670125075f7464fff5f673023378fa34f5"
 dependencies = [
- "crossbeam-utils",
+ "core-foundation",
+ "core-foundation-sys",
+ "coremidi-sys",
 ]
 
 [[package]]
-name = "crossbeam-utils"
-version = "0.8.19"
+name = "coremidi-sys"
+version = "3.1.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "248e3bacc7dc6baa3b21e405ee045c3047101a49145e7e9eca583ab4c2ca5345"
+checksum = "79a6deed0c97b2d40abbab77e4c97f81d71e162600423382c277dd640019116c"
+dependencies = [
+ "core-foundation-sys",
+]
 
 [[package]]
-name = "crypto-common"
-version = "0.1.6"
+name = "cosmic-text"
+version = "0.10.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1bfb12502f3fc46cca1bb51ac28df9d618d813cdc3d2f25b9fe775a34af26bb3"
+checksum = "75acbfb314aeb4f5210d379af45ed1ec2c98c7f1790bf57b8a4c562ac0c51b71"
 dependencies = [
- "generic-array",
- "typenum",
+ "fontdb",
+ "libm",
+ "log",
+ "rangemap",
+ "rustc-hash",
+ "rustybuzz",
+ "self_cell",
+ "swash",
+ "sys-locale",
+ "unicode-bidi",
+ "unicode-linebreak",
+ "unicode-script",
+ "unicode-segmentation",
 ]
 
 [[package]]
-name = "darling"
-version = "0.14.4"
+name = "cpal"
+version = "0.15.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7b750cb3417fd1b327431a470f388520309479ab0bf5e323505daf0290cd3850"
+checksum = "6d959d90e938c5493000514b446987c07aed46c668faaa7d34d6c7a67b1a578c"
 dependencies = [
- "darling_core",
- "darling_macro",
+ "alsa",
+ "core-foundation-sys",
+ "coreaudio-rs",
+ "dasp_sample",
+ "jni 0.19.0",
+ "js-sys",
+ "libc",
+ "mach2",
+ "ndk 0.7.0",
+ "ndk-context",
+ "oboe",
+ "once_cell",
+ "parking_lot 0.12.1",
+ "wasm-bindgen",
+ "wasm-bindgen-futures",
+ "web-sys",
+ "windows 0.46.0",
 ]
 
 [[package]]
-name = "darling_core"
-version = "0.14.4"
+name = "cpufeatures"
+version = "0.2.12"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "109c1ca6e6b7f82cc233a97004ea8ed7ca123a9af07a8230878fcfda9b158bf0"
+checksum = "53fe5e26ff1b7aef8bca9c6080520cfb8d9333c7568e1829cef191a9723e5504"
 dependencies = [
- "fnv",
- "ident_case",
- "proc-macro2",
- "quote 1.0.36",
- "strsim 0.10.0",
- "syn 1.0.109",
+ "libc",
 ]
 
 [[package]]
-name = "darling_macro"
-version = "0.14.4"
+name = "crc32fast"
+version = "1.3.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a4aab4dbc9f7611d8b55048a3a16d2d010c2c8334e46304b40ac1cc14bf3b48e"
+checksum = "b540bd8bc810d3885c6ea91e2018302f68baba2129ab3e88f32389ee9370880d"
 dependencies = [
- "darling_core",
- "quote 1.0.36",
- "syn 1.0.109",
+ "cfg-if",
 ]
 
 [[package]]
-name = "dbus"
-version = "0.9.7"
+name = "crossbeam-deque"
+version = "0.8.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1bb21987b9fb1613058ba3843121dd18b163b254d8a6e797e144cbac14d96d1b"
+checksum = "613f8cc01fe9cf1a3eb3d7f488fd2fa8388403e97039e2f73692932e291a770d"
 dependencies = [
- "libc",
- "libdbus-sys",
- "winapi",
+ "crossbeam-epoch",
+ "crossbeam-utils",
 ]
 
 [[package]]
-name = "dbus-codegen"
-version = "0.9.1"
+name = "crossbeam-epoch"
+version = "0.9.18"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a49da9fdfbe872d4841d56605dc42efa5e6ca3291299b87f44e1cde91a28617c"
+checksum = "5b82ac4a3c2ca9c3460964f020e1402edd5753411d7737aa39c3714ad1b5420e"
 dependencies = [
- "clap",
- "dbus",
- "xml-rs",
+ "crossbeam-utils",
 ]
 
 [[package]]
-name = "dbus-tree"
-version = "0.9.2"
+name = "crossbeam-utils"
+version = "0.8.19"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "248e3bacc7dc6baa3b21e405ee045c3047101a49145e7e9eca583ab4c2ca5345"
+
+[[package]]
+name = "crunchy"
+version = "0.2.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f456e698ae8e54575e19ddb1f9b7bce2298568524f215496b248eb9498b4f508"
+checksum = "7a81dae078cea95a014a339291cec439d2f232ebe854a9d672b796c6afafa9b7"
+
+[[package]]
+name = "crypto-common"
+version = "0.1.6"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "1bfb12502f3fc46cca1bb51ac28df9d618d813cdc3d2f25b9fe775a34af26bb3"
 dependencies = [
- "dbus",
+ "generic-array",
+ "typenum",
 ]
 
 [[package]]
-name = "der"
-version = "0.7.9"
+name = "ctor"
+version = "0.2.6"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f55bf8e7b65898637379c1b74eb1551107c8294ed26d855ceb9fd1a09cfc9bc0"
+checksum = "30d2b3721e861707777e3195b0158f950ae6dc4a27e4d02ff9f67e3eb3de199e"
 dependencies = [
- "const-oid",
- "pem-rfc7468",
- "zeroize",
+ "quote",
+ "syn 2.0.48",
 ]
 
 [[package]]
-name = "deranged"
-version = "0.3.11"
+name = "cursor-icon"
+version = "1.1.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b42b6fa04a440b495c8b04d0e71b707c585f83cb9cb28cf8cd0d976c315e31b4"
+checksum = "96a6ac251f4a2aca6b3f91340350eab87ae57c3f127ffeb585e92bd336717991"
+
+[[package]]
+name = "d3d12"
+version = "0.19.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "3e3d747f100290a1ca24b752186f61f6637e1deffe3bf6320de6fcb29510a307"
 dependencies = [
- "powerfmt",
+ "bitflags 2.4.2",
+ "libloading 0.8.1",
+ "winapi",
 ]
 
 [[package]]
-name = "derive_is_enum_variant"
-version = "0.1.1"
+name = "dasp_sample"
+version = "0.11.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d0ac8859845146979953797f03cc5b282fb4396891807cdb3d04929a88418197"
+checksum = "0c87e182de0887fd5361989c677c4e8f5000cd9491d6d563161a8f3a5519fc7f"
+
+[[package]]
+name = "derivative"
+version = "2.2.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "fcc3dd5e9e9c0b295d6e1e4d811fb6f157d5ffd784b8d202fc62eac8035a770b"
 dependencies = [
- "heck 0.3.3",
- "quote 0.3.15",
- "syn 0.11.11",
+ "proc-macro2",
+ "quote",
+ "syn 1.0.109",
 ]
 
 [[package]]
@@ -665,93 +936,87 @@ version = "0.10.7"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "9ed9a281f7bc9b7576e61468ba615a66a5c8cfdff42420a70aa82701a3b1e292"
 dependencies = [
- "const-oid",
+ "block-buffer",
  "crypto-common",
 ]
 
 [[package]]
-name = "directories"
-version = "5.0.1"
+name = "dispatch"
+version = "0.2.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9a49173b84e034382284f27f1af4dcbbd231ffa358c0fe316541a7337f376a35"
-dependencies = [
- "dirs-sys",
-]
+checksum = "bd0c93bb4b0c6d9b77f4435b0ae98c24d17f1c45b2ff844c6151a07256ca923b"
 
 [[package]]
-name = "dirs-next"
-version = "2.0.0"
+name = "dlib"
+version = "0.5.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b98cf8ebf19c3d1b223e151f99a4f9f0690dca41414773390fc824184ac833e1"
+checksum = "330c60081dcc4c72131f8eb70510f1ac07223e5d4163db481a04a0befcffa412"
 dependencies = [
- "cfg-if",
- "dirs-sys-next",
+ "libloading 0.8.1",
 ]
 
 [[package]]
-name = "dirs-sys"
-version = "0.4.1"
+name = "doc-comment"
+version = "0.3.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "520f05a5cbd335fae5a99ff7a6ab8627577660ee5cfd6a94a6a929b52ff0321c"
-dependencies = [
- "libc",
- "option-ext",
- "redox_users",
- "windows-sys 0.48.0",
-]
+checksum = "fea41bba32d969b513997752735605054bc0dfa92b4c56bf1189f2e174be7a10"
 
 [[package]]
-name = "dirs-sys-next"
-version = "0.1.2"
+name = "downcast-rs"
+version = "1.2.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4ebda144c4fe02d1f7ea1a7d9641b6fc6b580adcfa024ae48797ecdeb6825b4d"
-dependencies = [
- "libc",
- "redox_users",
- "winapi",
-]
+checksum = "9ea835d29036a4087793836fa931b08837ad5e957da9e23886b29586fb9b6650"
 
 [[package]]
-name = "documented"
-version = "0.4.1"
+name = "drm"
+version = "0.11.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "21cd1d2800b9a2b71d4311a38fcda9eebc9313bbd86730880147eba1e29599e0"
+checksum = "a0f8a69e60d75ae7dab4ef26a59ca99f2a89d4c142089b537775ae0c198bdcde"
 dependencies = [
- "documented-derive",
- "phf",
- "thiserror",
+ "bitflags 2.4.2",
+ "bytemuck",
+ "drm-ffi",
+ "drm-fourcc",
+ "rustix",
 ]
 
 [[package]]
-name = "documented-derive"
-version = "0.4.1"
+name = "drm-ffi"
+version = "0.7.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "48583206f0a72d5fbfcb5dd8ab56ec878a6594fbcb1219d5b65b502b960c7cdb"
+checksum = "41334f8405792483e32ad05fbb9c5680ff4e84491883d2947a4757dc54cb2ac6"
 dependencies = [
- "quote 1.0.36",
- "syn 2.0.58",
+ "drm-sys",
+ "rustix",
 ]
 
 [[package]]
-name = "dpi"
-version = "0.1.1"
+name = "drm-fourcc"
+version = "2.2.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f25c0e292a7ca6d6498557ff1df68f32c99850012b6ea401cf8daf771f22ff53"
+checksum = "0aafbcdb8afc29c1a7ee5fbe53b5d62f4565b35a042a662ca9fecd0b54dae6f4"
 
 [[package]]
-name = "ecb"
-version = "0.1.2"
+name = "drm-sys"
+version = "0.6.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1a8bfa975b1aec2145850fcaa1c6fe269a16578c44705a532ae3edc92b8881c7"
+checksum = "2d09ff881f92f118b11105ba5e34ff8f4adf27b30dae8f12e28c193af1c83176"
 dependencies = [
- "cipher",
+ "libc",
+ "linux-raw-sys 0.6.4",
 ]
 
 [[package]]
+name = "either"
+version = "1.9.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "a26ae43d7bcc3b814de94796a5e736d4029efb0ee900c12e2d54c993ad1a1e07"
+
+[[package]]
 name = "embed-resource"
-version = "2.4.2"
+version = "2.4.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c6985554d0688b687c5cb73898a34fbe3ad6c24c58c238a4d91d5e840670ee9d"
+checksum = "3bde55e389bea6a966bd467ad1ad7da0ae14546a5bc794d16d1e55e7fca44881"
 dependencies = [
  "cc",
  "memchr",
@@ -762,23 +1027,43 @@ dependencies = [
 ]
 
 [[package]]
-name = "encoding_rs"
-version = "0.8.34"
+name = "endi"
+version = "1.1.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "a3d8a32ae18130a3c84dd492d4215c3d913c3b07c6b63c2eb3eb7ff1101ab7bf"
+
+[[package]]
+name = "enumflags2"
+version = "0.7.9"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b45de904aa0b010bce2ab45264d0631681847fa7b6f2eaa7dab7619943bc4f59"
+checksum = "3278c9d5fb675e0a51dabcf4c0d355f692b064171535ba72361be1528a9d8e8d"
 dependencies = [
- "cfg-if",
+ "enumflags2_derive",
+ "serde",
 ]
 
 [[package]]
-name = "enum-kinds"
-version = "0.5.1"
+name = "enumflags2_derive"
+version = "0.7.9"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4e40a16955681d469ab3da85aaa6b42ff656b3c67b52e1d8d3dd36afe97fd462"
+checksum = "5c785274071b1b420972453b306eeca06acf4633829db4223b58a2a8c5953bc4"
 dependencies = [
  "proc-macro2",
- "quote 1.0.36",
- "syn 1.0.109",
+ "quote",
+ "syn 2.0.48",
+]
+
+[[package]]
+name = "env_logger"
+version = "0.10.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "4cd405aab171cb85d6735e5c8d9db038c17d3ca007a4d2c25f337935c3d90580"
+dependencies = [
+ "humantime",
+ "is-terminal",
+ "log",
+ "regex",
+ "termcolor",
 ]
 
 [[package]]
@@ -798,10 +1083,46 @@ dependencies = [
 ]
 
 [[package]]
+name = "etagere"
+version = "0.2.10"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "306960881d6c46bd0dd6b7f07442a441418c08d0d3e63d8d080b0f64c6343e4e"
+dependencies = [
+ "euclid",
+ "svg_fmt",
+]
+
+[[package]]
+name = "euclid"
+version = "0.22.9"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "87f253bc5c813ca05792837a0ff4b3a580336b224512d48f7eda1d7dd9210787"
+dependencies = [
+ "num-traits",
+]
+
+[[package]]
+name = "event-listener"
+version = "2.5.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "0206175f82b8d6bf6652ff7d71a1e27fd2e4efde587fd368662814d6ec1d9ce0"
+
+[[package]]
+name = "event-listener"
+version = "4.0.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "67b215c49b2b248c855fb73579eb1f4f26c38ffdc12973e20e07b91d78d5646e"
+dependencies = [
+ "concurrent-queue",
+ "parking",
+ "pin-project-lite",
+]
+
+[[package]]
 name = "event-listener"
-version = "5.3.0"
+version = "5.1.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6d9944b8ca13534cdfb2800775f8dd4902ff3fc75a50101466decadfdf322a24"
+checksum = "b7ad6fd685ce13acd6d9541a30f6db6567a7a24c9ffd4ba2955d29e3f22c8b27"
 dependencies = [
  "concurrent-queue",
  "parking",
@@ -810,19 +1131,51 @@ dependencies = [
 
 [[package]]
 name = "event-listener-strategy"
-version = "0.5.1"
+version = "0.4.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "958e4d70b6d5e81971bebec42271ec641e7ff4e170a6fa605f2b8a8b65cb97d3"
+dependencies = [
+ "event-listener 4.0.3",
+ "pin-project-lite",
+]
+
+[[package]]
+name = "event-listener-strategy"
+version = "0.5.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "332f51cb23d20b0de8458b86580878211da09bcd4503cb579c225b3d124cabb3"
+checksum = "feedafcaa9b749175d5ac357452a9d41ea2911da598fde46ce1fe02c37751291"
 dependencies = [
- "event-listener",
+ "event-listener 5.1.0",
  "pin-project-lite",
 ]
 
 [[package]]
+name = "exr"
+version = "1.72.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "887d93f60543e9a9362ef8a21beedd0a833c5d9610e18c67abe15a5963dcb1a4"
+dependencies = [
+ "bit_field",
+ "flume",
+ "half",
+ "lebe",
+ "miniz_oxide",
+ "rayon-core",
+ "smallvec",
+ "zune-inflate",
+]
+
+[[package]]
+name = "fast-srgb8"
+version = "1.0.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "dd2e7510819d6fbf51a5545c8f922716ecfb14df168a3242f7d33e0239efe6a1"
+
+[[package]]
 name = "fastrand"
-version = "2.0.2"
+version = "2.0.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "658bd65b1cf4c852a3cc96f18a8ce7b5640f6b703f905c7d74532294c2a63984"
+checksum = "25cbce373ec4653f1a01a31e8a5e5ec0c622dc27ff9c4e6606eefef5cbbed4a5"
 
 [[package]]
 name = "fdeflate"
@@ -834,13 +1187,17 @@ dependencies = [
 ]
 
 [[package]]
-name = "field-offset"
-version = "0.3.6"
+name = "ffmpeg-sys-next"
+version = "6.1.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "38e2275cc4e4fc009b0669731a1e5ab7ebf11f469eaede2bab9309a5b4d6057f"
+checksum = "c2529ad916d08c3562c754c21bc9b17a26c7882c0f5706cc2cd69472175f1620"
 dependencies = [
- "memoffset",
- "rustc_version",
+ "bindgen 0.64.0",
+ "cc",
+ "libc",
+ "num_cpus",
+ "pkg-config",
+ "vcpkg",
 ]
 
 [[package]]
@@ -854,18 +1211,61 @@ dependencies = [
 ]
 
 [[package]]
-name = "fnv"
-version = "1.0.7"
+name = "fluidlite"
+version = "0.2.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3f9eec918d3f24069decb9af1554cad7c880e2da24a9afd88aca000531ab82c1"
+checksum = "7c0265cc6e1b01b9418d29acc5b48c57b21775b5de59264f1afe13d9b529a401"
+dependencies = [
+ "bitflags 1.3.2",
+ "doc-comment",
+ "fluidlite-sys",
+]
 
 [[package]]
-name = "foreign-types"
-version = "0.3.2"
+name = "fluidlite-sys"
+version = "0.2.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "6f8574ea7d1f3d03d9713f9983c5c2f128abda23a99603f6af86bbecb2a03809"
+dependencies = [
+ "cc",
+]
+
+[[package]]
+name = "flume"
+version = "0.11.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "55ac459de2512911e4b674ce33cf20befaba382d05b62b008afc1c8b57cbf181"
+dependencies = [
+ "spin",
+]
+
+[[package]]
+name = "font-types"
+version = "0.4.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "0bd7f3ea17572640b606b35df42cfb6ecdf003704b062580e59918692190b73d"
+
+[[package]]
+name = "fontconfig-parser"
+version = "0.5.6"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "6a595cb550439a117696039dfc69830492058211b771a2a165379f2a1a53d84d"
+dependencies = [
+ "roxmltree",
+]
+
+[[package]]
+name = "fontdb"
+version = "0.15.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f6f339eb8adc052cd2ca78910fda869aefa38d22d5cb648e6485e4d3fc06f3b1"
+checksum = "020e203f177c0fb250fb19455a252e838d2bbbce1f80f25ecc42402aafa8cd38"
 dependencies = [
- "foreign-types-shared 0.1.1",
+ "fontconfig-parser",
+ "log",
+ "memmap2 0.8.0",
+ "slotmap",
+ "tinyvec",
+ "ttf-parser 0.19.2",
 ]
 
 [[package]]
@@ -875,7 +1275,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "d737d9aa519fb7b749cbc3b962edcf310a8dd1f4b67c91c4f83975dbdd17d965"
 dependencies = [
  "foreign-types-macros",
- "foreign-types-shared 0.3.1",
+ "foreign-types-shared",
 ]
 
 [[package]]
@@ -885,18 +1285,12 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "1a5c6c585bc94aaf2c7b51dd4c2ba22680844aba4c687be581871a6f518c5742"
 dependencies = [
  "proc-macro2",
- "quote 1.0.36",
- "syn 2.0.58",
+ "quote",
+ "syn 2.0.48",
 ]
 
 [[package]]
 name = "foreign-types-shared"
-version = "0.1.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "00b0228411908ca8685dba7fc2cdd70ec9990a6e753e89b6ac91a84c40fbaf4b"
-
-[[package]]
-name = "foreign-types-shared"
 version = "0.3.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "aa9a19cbb55df58761df49b23516a86d432839add4af60fc256da840f66ed35b"
@@ -911,39 +1305,34 @@ dependencies = [
 ]
 
 [[package]]
-name = "from_variants"
-version = "1.0.2"
+name = "fps_ticker"
+version = "1.0.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4e859c8f2057687618905dbe99fc76e836e0a69738865ef90e46fc214a41bbf2"
-dependencies = [
- "from_variants_impl",
-]
+checksum = "fe164905ff69757d4bdc4c61d7df2930e47e2f5b4a132895a8f995990b2b9219"
 
 [[package]]
-name = "from_variants_impl"
-version = "1.0.2"
+name = "futures"
+version = "0.3.30"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "55a5e644a80e6d96b2b4910fa7993301d7b7926c045b475b62202b20a36ce69e"
+checksum = "645c6916888f6cb6350d2550b80fb63e734897a8498abe35cfb732b6487804b0"
 dependencies = [
- "darling",
- "proc-macro2",
- "quote 1.0.36",
- "syn 1.0.109",
+ "futures-channel",
+ "futures-core",
+ "futures-executor",
+ "futures-io",
+ "futures-sink",
+ "futures-task",
+ "futures-util",
 ]
 
 [[package]]
-name = "funty"
-version = "2.0.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e6d5a32815ae3f33302d95fdcb2ce17862f8c65363dcfd29360480ba1001fc9c"
-
-[[package]]
 name = "futures-channel"
 version = "0.3.30"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "eac8f7d7865dcb88bd4373ab671c8cf4508703796caa2b1985a9ca867b3fcb78"
 dependencies = [
  "futures-core",
+ "futures-sink",
 ]
 
 [[package]]
@@ -961,6 +1350,7 @@ dependencies = [
  "futures-core",
  "futures-task",
  "futures-util",
+ "num_cpus",
 ]
 
 [[package]]
@@ -970,14 +1360,27 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "a44623e20b9681a318efdd71c299b6b222ed6f231972bfe2f224ebad6311f0c1"
 
 [[package]]
+name = "futures-lite"
+version = "2.2.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "445ba825b27408685aaecefd65178908c36c6e96aaf6d8599419d46e624192ba"
+dependencies = [
+ "fastrand",
+ "futures-core",
+ "futures-io",
+ "parking",
+ "pin-project-lite",
+]
+
+[[package]]
 name = "futures-macro"
 version = "0.3.30"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "87750cf4b7a4c0625b1529e4c543c2182106e4dedc60a2a6455e00d212c489ac"
 dependencies = [
  "proc-macro2",
- "quote 1.0.36",
- "syn 2.0.58",
+ "quote",
+ "syn 2.0.48",
 ]
 
 [[package]]
@@ -998,1104 +1401,976 @@ version = "0.3.30"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "3d6401deb83407ab3da39eba7e33987a73c3df0c82b4bb5813ee871c19c41d48"
 dependencies = [
+ "futures-channel",
  "futures-core",
+ "futures-io",
  "futures-macro",
+ "futures-sink",
  "futures-task",
+ "memchr",
  "pin-project-lite",
  "pin-utils",
  "slab",
 ]
 
 [[package]]
-name = "gdk"
-version = "0.18.0"
+name = "generational-arena"
+version = "0.2.9"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f5ba081bdef3b75ebcdbfc953699ed2d7417d6bd853347a42a37d76406a33646"
+checksum = "877e94aff08e743b651baaea359664321055749b398adff8740a7399af7796e7"
 dependencies = [
- "cairo-rs 0.18.5",
- "gdk-pixbuf 0.18.5",
- "gdk-sys",
- "gio 0.18.4",
- "glib 0.18.5",
- "libc",
- "pango 0.18.3",
+ "cfg-if",
 ]
 
 [[package]]
-name = "gdk-pixbuf"
-version = "0.18.5"
+name = "generic-array"
+version = "0.14.7"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "50e1f5f1b0bfb830d6ccc8066d18db35c487b1b2b1e8589b5dfe9f07e8defaec"
+checksum = "85649ca51fd72272d7821adaf274ad91c288277713d9c18820d8499a7ff69e9a"
 dependencies = [
- "gdk-pixbuf-sys 0.18.0",
- "gio 0.18.4",
- "glib 0.18.5",
- "libc",
- "once_cell",
+ "typenum",
+ "version_check",
 ]
 
 [[package]]
-name = "gdk-pixbuf"
-version = "0.19.2"
+name = "gethostname"
+version = "0.4.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f6a23f8a0b5090494fd04924662d463f8386cc678dd3915015a838c1a3679b92"
+checksum = "0176e0459c2e4a1fe232f984bca6890e681076abb9934f6cea7c326f3fc47818"
 dependencies = [
- "gdk-pixbuf-sys 0.19.0",
- "gio 0.19.4",
- "glib 0.19.4",
  "libc",
+ "windows-targets 0.48.5",
 ]
 
 [[package]]
-name = "gdk-pixbuf-sys"
-version = "0.18.0"
+name = "getrandom"
+version = "0.2.12"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3f9839ea644ed9c97a34d129ad56d38a25e6756f99f3a88e15cd39c20629caf7"
+checksum = "190092ea657667030ac6a35e305e62fc4dd69fd98ac98631e5d3a2b1575a12b5"
 dependencies = [
- "gio-sys 0.18.1",
- "glib-sys 0.18.1",
- "gobject-sys 0.18.0",
+ "cfg-if",
  "libc",
- "system-deps",
+ "wasi",
 ]
 
 [[package]]
-name = "gdk-pixbuf-sys"
-version = "0.19.0"
+name = "gif"
+version = "0.12.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3dcbd04c1b2c4834cc008b4828bc917d062483b88d26effde6342e5622028f96"
+checksum = "80792593675e051cf94a4b111980da2ba60d4a83e43e0048c5693baab3977045"
 dependencies = [
- "gio-sys 0.19.0",
- "glib-sys 0.19.0",
- "gobject-sys 0.19.0",
- "libc",
- "system-deps",
+ "color_quant",
+ "weezl",
 ]
 
 [[package]]
-name = "gdk-sys"
-version = "0.18.0"
+name = "gl_generator"
+version = "0.14.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "31ff856cb3386dae1703a920f803abafcc580e9b5f711ca62ed1620c25b51ff2"
+checksum = "1a95dfc23a2b4a9a2f5ab41d194f8bfda3cabec42af4e39f08c339eb2a0c124d"
 dependencies = [
- "cairo-sys-rs 0.18.2",
- "gdk-pixbuf-sys 0.18.0",
- "gio-sys 0.18.1",
- "glib-sys 0.18.1",
- "gobject-sys 0.18.0",
- "libc",
- "pango-sys 0.18.0",
- "pkg-config",
- "system-deps",
+ "khronos_api",
+ "log",
+ "xml-rs",
 ]
 
 [[package]]
-name = "gdk4"
-version = "0.8.1"
+name = "glam"
+version = "0.25.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9100b25604183f2fd97f55ef087fae96ab4934d7215118a35303e422688e6e4b"
-dependencies = [
- "cairo-rs 0.19.4",
- "gdk-pixbuf 0.19.2",
- "gdk4-sys",
- "gio 0.19.4",
- "glib 0.19.4",
- "libc",
- "pango 0.19.3",
-]
+checksum = "151665d9be52f9bb40fc7966565d39666f2d1e69233571b71b87791c7e0528b3"
 
 [[package]]
-name = "gdk4-sys"
-version = "0.8.1"
+name = "glob"
+version = "0.3.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d0b76874c40bb8d1c7d03a7231e23ac75fa577a456cd53af32ec17ec8f121626"
-dependencies = [
- "cairo-sys-rs 0.19.2",
- "gdk-pixbuf-sys 0.19.0",
- "gio-sys 0.19.0",
- "glib-sys 0.19.0",
- "gobject-sys 0.19.0",
- "libc",
- "pango-sys 0.19.0",
- "pkg-config",
- "system-deps",
-]
+checksum = "d2fabcfbdc87f4758337ca535fb41a6d701b65693ce38287d856d1674551ec9b"
 
 [[package]]
-name = "gdk4-win32"
-version = "0.8.1"
+name = "glow"
+version = "0.13.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ab6181b6e5c91ee292dca0032b00d48dee8e61358253742c9752537a88486b3f"
+checksum = "bd348e04c43b32574f2de31c8bb397d96c9fcfa1371bd4ca6d8bdc464ab121b1"
 dependencies = [
- "gdk4",
- "gdk4-win32-sys",
- "gio 0.19.4",
- "glib 0.19.4",
- "libc",
+ "js-sys",
+ "slotmap",
+ "wasm-bindgen",
+ "web-sys",
 ]
 
 [[package]]
-name = "gdk4-win32-sys"
-version = "0.8.1"
+name = "glutin_wgl_sys"
+version = "0.5.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "efa8530d6619cf43f007f3efd993a356e1ca4e643c4d0bd2a99832a08af2e402"
+checksum = "6c8098adac955faa2d31079b65dc48841251f69efd3ac25477903fc424362ead"
 dependencies = [
- "gdk4-sys",
- "glib-sys 0.19.0",
- "libc",
- "system-deps",
+ "gl_generator",
 ]
 
 [[package]]
-name = "generic-array"
-version = "0.14.7"
+name = "glyphon"
+version = "0.5.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "85649ca51fd72272d7821adaf274ad91c288277713d9c18820d8499a7ff69e9a"
+checksum = "6a62d0338e4056db6a73221c2fb2e30619452f6ea9651bac4110f51b0f7a7581"
 dependencies = [
- "typenum",
- "version_check",
+ "cosmic-text",
+ "etagere",
+ "lru",
+ "wgpu",
 ]
 
 [[package]]
-name = "getrandom"
-version = "0.2.14"
+name = "gpu-alloc"
+version = "0.6.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "94b22e06ecb0110981051723910cbf0b5f5e09a2062dd7663334ee79a9d1286c"
+checksum = "fbcd2dba93594b227a1f57ee09b8b9da8892c34d55aa332e034a228d0fe6a171"
 dependencies = [
- "cfg-if",
- "libc",
- "wasi",
+ "bitflags 2.4.2",
+ "gpu-alloc-types",
 ]
 
 [[package]]
-name = "gettext-rs"
-version = "0.7.0"
+name = "gpu-alloc-types"
+version = "0.3.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e49ea8a8fad198aaa1f9655a2524b64b70eb06b2f3ff37da407566c93054f364"
+checksum = "98ff03b468aa837d70984d55f5d3f846f6ec31fe34bbb97c4f85219caeee1ca4"
 dependencies = [
- "gettext-sys",
- "locale_config",
+ "bitflags 2.4.2",
 ]
 
 [[package]]
-name = "gettext-sys"
-version = "0.21.3"
+name = "gpu-allocator"
+version = "0.25.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c63ce2e00f56a206778276704bbe38564c8695249fdc8f354b4ef71c57c3839d"
+checksum = "6f56f6318968d03c18e1bcf4857ff88c61157e9da8e47c5f29055d60e1228884"
 dependencies = [
- "cc",
- "temp-dir",
+ "log",
+ "presser",
+ "thiserror",
+ "winapi",
+ "windows 0.52.0",
 ]
 
 [[package]]
-name = "gimli"
-version = "0.28.1"
+name = "gpu-descriptor"
+version = "0.2.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4271d37baee1b8c7e4b708028c57d816cf9d2434acb33a549475f78c181f6253"
+checksum = "cc11df1ace8e7e564511f53af41f3e42ddc95b56fd07b3f4445d2a6048bc682c"
+dependencies = [
+ "bitflags 2.4.2",
+ "gpu-descriptor-types",
+ "hashbrown",
+]
 
 [[package]]
-name = "gio"
-version = "0.18.4"
+name = "gpu-descriptor-types"
+version = "0.1.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d4fc8f532f87b79cbc51a79748f16a6828fb784be93145a322fa14d06d354c73"
+checksum = "6bf0b36e6f090b7e1d8a4b49c0cb81c1f8376f72198c65dd3ad9ff3556b8b78c"
 dependencies = [
- "futures-channel",
- "futures-core",
- "futures-io",
- "futures-util",
- "gio-sys 0.18.1",
- "glib 0.18.5",
- "libc",
- "once_cell",
- "pin-project-lite",
- "smallvec",
- "thiserror",
+ "bitflags 2.4.2",
 ]
 
 [[package]]
-name = "gio"
-version = "0.19.4"
+name = "guillotiere"
+version = "0.6.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3f91a0518c2ec539f099d3f945ab2d6a83ec372a9ef40a21906343b191182845"
+checksum = "b62d5865c036cb1393e23c50693df631d3f5d7bcca4c04fe4cc0fd592e74a782"
 dependencies = [
- "futures-channel",
- "futures-core",
- "futures-io",
- "futures-util",
- "gio-sys 0.19.0",
- "glib 0.19.4",
- "libc",
- "pin-project-lite",
- "smallvec",
- "thiserror",
+ "euclid",
+ "svg_fmt",
 ]
 
 [[package]]
-name = "gio-sys"
-version = "0.18.1"
+name = "half"
+version = "2.3.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "37566df850baf5e4cb0dfb78af2e4b9898d817ed9263d1090a2df958c64737d2"
+checksum = "bc52e53916c08643f1b56ec082790d1e86a32e58dc5268f897f313fbae7b4872"
 dependencies = [
- "glib-sys 0.18.1",
- "gobject-sys 0.18.0",
- "libc",
- "system-deps",
- "winapi",
+ "cfg-if",
+ "crunchy",
 ]
 
 [[package]]
-name = "gio-sys"
-version = "0.19.0"
+name = "hashbrown"
+version = "0.14.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "bcf8e1d9219bb294636753d307b030c1e8a032062cba74f493c431a5c8b81ce4"
+checksum = "290f1a1d9242c78d09ce40a5e87e7554ee637af1351968159f4952f028f75604"
 dependencies = [
- "glib-sys 0.19.0",
- "gobject-sys 0.19.0",
- "libc",
- "system-deps",
- "windows-sys 0.52.0",
+ "ahash",
+ "allocator-api2",
 ]
 
 [[package]]
-name = "glib"
-version = "0.18.5"
+name = "hassle-rs"
+version = "0.11.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "233daaf6e83ae6a12a52055f568f9d7cf4671dabb78ff9560ab6da230ce00ee5"
+checksum = "af2a7e73e1f34c48da31fb668a907f250794837e08faa144fd24f0b8b741e890"
 dependencies = [
- "bitflags 2.5.0",
- "futures-channel",
- "futures-core",
- "futures-executor",
- "futures-task",
- "futures-util",
- "gio-sys 0.18.1",
- "glib-macros 0.18.5",
- "glib-sys 0.18.1",
- "gobject-sys 0.18.0",
+ "bitflags 2.4.2",
+ "com",
  "libc",
- "memchr",
- "once_cell",
- "smallvec",
+ "libloading 0.8.1",
  "thiserror",
+ "widestring",
+ "winapi",
 ]
 
 [[package]]
-name = "glib"
-version = "0.19.4"
+name = "hermit-abi"
+version = "0.3.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ae1407b2ce171e654720be10d57d4054d3ff2f10a13d5b37e6819b41439832f7"
-dependencies = [
- "bitflags 2.5.0",
- "futures-channel",
- "futures-core",
- "futures-executor",
- "futures-task",
- "futures-util",
- "gio-sys 0.19.0",
- "glib-macros 0.19.4",
- "glib-sys 0.19.0",
- "gobject-sys 0.19.0",
- "libc",
- "memchr",
- "smallvec",
- "thiserror",
-]
+checksum = "d0c62115964e08cb8039170eb33c1d0e2388a256930279edca206fff675f82c3"
+
+[[package]]
+name = "hex"
+version = "0.4.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "7f24254aa9a54b5c858eaee2f5bccdb46aaf0e486a595ed5fd8f86ba55232a70"
 
 [[package]]
-name = "glib-macros"
-version = "0.18.5"
+name = "hexf-parse"
+version = "0.2.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0bb0228f477c0900c880fd78c8759b95c7636dbd7842707f49e132378aa2acdc"
-dependencies = [
- "heck 0.4.1",
- "proc-macro-crate 2.0.0",
- "proc-macro-error",
- "proc-macro2",
- "quote 1.0.36",
- "syn 2.0.58",
-]
+checksum = "dfa686283ad6dd069f105e5ab091b04c62850d3e4cf5d67debad1933f55023df"
 
 [[package]]
-name = "glib-macros"
-version = "0.19.4"
+name = "humantime"
+version = "2.1.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d8bba315e8ce8aa59631545358450f4962557e89b5f7db7442e7153b47037f71"
-dependencies = [
- "heck 0.5.0",
- "proc-macro-crate 3.1.0",
- "proc-macro2",
- "quote 1.0.36",
- "syn 2.0.58",
-]
+checksum = "9a3a5bfb195931eeb336b2a7b4d761daec841b97f947d34394601737a7bba5e4"
 
 [[package]]
-name = "glib-sys"
-version = "0.18.1"
+name = "iced_core"
+version = "0.12.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "063ce2eb6a8d0ea93d2bf8ba1957e78dbab6be1c2220dd3daca57d5a9d869898"
+checksum = "55f9226618af7e8155fc8a233e4d84dc1ec44438705f972e35d5d50e62f937df"
 dependencies = [
- "libc",
- "system-deps",
+ "bitflags 2.4.2",
+ "glam",
+ "log",
+ "num-traits",
+ "palette",
+ "raw-window-handle 0.6.0",
+ "smol_str",
+ "thiserror",
+ "web-time",
+ "xxhash-rust",
 ]
 
 [[package]]
-name = "glib-sys"
-version = "0.19.0"
+name = "iced_futures"
+version = "0.12.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "630f097773d7c7a0bb3258df4e8157b47dc98bbfa0e60ad9ab56174813feced4"
+checksum = "370bad88fb3832cbeeb3fa6c486b4701fb7e8da32a753b3101d4ce81fc1d9497"
 dependencies = [
- "libc",
- "system-deps",
+ "futures",
+ "iced_core",
+ "log",
+ "wasm-bindgen-futures",
+ "wasm-timer",
 ]
 
 [[package]]
-name = "gobject-sys"
-version = "0.18.0"
+name = "iced_graphics"
+version = "0.12.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0850127b514d1c4a4654ead6dedadb18198999985908e6ffe4436f53c785ce44"
+checksum = "0660df444c64a13f72999c55a324f6d3ea020167bb1af8ef43fe2bff168d8c27"
 dependencies = [
- "glib-sys 0.18.1",
- "libc",
- "system-deps",
+ "bitflags 2.4.2",
+ "bytemuck",
+ "cosmic-text",
+ "half",
+ "iced_core",
+ "iced_futures",
+ "image",
+ "kamadak-exif",
+ "log",
+ "once_cell",
+ "raw-window-handle 0.6.0",
+ "rustc-hash",
+ "thiserror",
+ "unicode-segmentation",
+ "xxhash-rust",
 ]
 
 [[package]]
-name = "gobject-sys"
-version = "0.19.0"
+name = "iced_renderer"
+version = "0.12.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c85e2b1080b9418dd0c58b498da3a5c826030343e0ef07bde6a955d28de54979"
+checksum = "59d931249515deb5fe116c7d199792cd9fd32d31bf18ffc08c6c2ad2dee5fd3e"
 dependencies = [
- "glib-sys 0.19.0",
- "libc",
- "system-deps",
+ "iced_graphics",
+ "iced_tiny_skia",
+ "iced_wgpu",
+ "log",
+ "thiserror",
 ]
 
 [[package]]
-name = "graphene-rs"
-version = "0.19.2"
+name = "iced_runtime"
+version = "0.12.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "99e4d388e96c5f29e2b2f67045d229ddf826d0a8d6d282f94ed3b34452222c91"
+checksum = "618a845cd752ca195f0805b7a4f0be42c071a4fdef0b88df047006572d219a5a"
 dependencies = [
- "glib 0.19.4",
- "graphene-sys",
- "libc",
+ "iced_core",
+ "iced_futures",
+ "raw-window-handle 0.6.0",
+ "thiserror",
 ]
 
 [[package]]
-name = "graphene-sys"
-version = "0.19.0"
+name = "iced_style"
+version = "0.12.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "236ed66cc9b18d8adf233716f75de803d0bf6fc806f60d14d948974a12e240d0"
+checksum = "eb6b3992bceeac1393ce0e83d06ab786be4c17c6a0004eefbdd4f6d89d5e8058"
 dependencies = [
- "glib-sys 0.19.0",
- "libc",
- "pkg-config",
- "system-deps",
+ "iced_core",
+ "once_cell",
+ "palette",
 ]
 
 [[package]]
-name = "gsk4"
-version = "0.8.1"
+name = "iced_tiny_skia"
+version = "0.12.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c65036fc8f99579e8cb37b12487969b707ab23ec8ab953682ff347cbd15d396e"
+checksum = "e079a4ae34df06894500e486b20bae8d8f2806fd64efe4fa9abe329e7f585f21"
 dependencies = [
- "cairo-rs 0.19.4",
- "gdk4",
- "glib 0.19.4",
- "graphene-rs",
- "gsk4-sys",
- "libc",
- "pango 0.19.3",
+ "bytemuck",
+ "cosmic-text",
+ "iced_graphics",
+ "kurbo",
+ "log",
+ "rustc-hash",
+ "softbuffer",
+ "tiny-skia",
+ "xxhash-rust",
 ]
 
 [[package]]
-name = "gsk4-sys"
-version = "0.8.1"
+name = "iced_wgpu"
+version = "0.12.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "bd24c814379f9c3199dc53e52253ee8d0f657eae389ab282c330505289d24738"
+checksum = "fa5d3ce370c7044ddc9535c8f87057f1008434a495be6b9f46b2666c3e9638f7"
 dependencies = [
- "cairo-sys-rs 0.19.2",
- "gdk4-sys",
- "glib-sys 0.19.0",
- "gobject-sys 0.19.0",
- "graphene-sys",
- "libc",
- "pango-sys 0.19.0",
- "system-deps",
+ "bitflags 2.4.2",
+ "bytemuck",
+ "futures",
+ "glam",
+ "glyphon",
+ "guillotiere",
+ "iced_graphics",
+ "log",
+ "once_cell",
+ "wgpu",
 ]
 
 [[package]]
-name = "gtk"
-version = "0.18.1"
+name = "iced_widget"
+version = "0.12.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "93c4f5e0e20b60e10631a5f06da7fe3dda744b05ad0ea71fee2f47adf865890c"
+checksum = "99f30ebbcc0706c19a92f01669193271d82bb209fda83576392d04cef3214ca2"
 dependencies = [
- "atk",
- "cairo-rs 0.18.5",
- "field-offset",
- "futures-channel",
- "gdk",
- "gdk-pixbuf 0.18.5",
- "gio 0.18.4",
- "glib 0.18.5",
- "gtk-sys",
- "gtk3-macros",
- "libc",
- "pango 0.18.3",
- "pkg-config",
+ "iced_renderer",
+ "iced_runtime",
+ "iced_style",
+ "num-traits",
+ "thiserror",
+ "unicode-segmentation",
 ]
 
 [[package]]
-name = "gtk-sys"
-version = "0.18.0"
+name = "icrate"
+version = "0.0.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "771437bf1de2c1c0b496c11505bdf748e26066bbe942dfc8f614c9460f6d7722"
+checksum = "99d3aaff8a54577104bafdf686ff18565c3b6903ca5782a2026ef06e2c7aa319"
 dependencies = [
- "atk-sys",
- "cairo-sys-rs 0.18.2",
- "gdk-pixbuf-sys 0.18.0",
- "gdk-sys",
- "gio-sys 0.18.1",
- "glib-sys 0.18.1",
- "gobject-sys 0.18.0",
- "libc",
- "pango-sys 0.18.0",
- "system-deps",
+ "block2",
+ "dispatch",
+ "objc2",
 ]
 
 [[package]]
-name = "gtk3-macros"
-version = "0.18.0"
+name = "idna"
+version = "0.5.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c6063efb63db582968fb7df72e1ae68aa6360dcfb0a75143f34fc7d616bad75e"
+checksum = "634d9b1461af396cad843f47fdba5597a4f9e6ddd4bfb6ff5d85028c25cb12f6"
 dependencies = [
- "proc-macro-crate 1.3.1",
- "proc-macro-error",
- "proc-macro2",
- "quote 1.0.36",
- "syn 2.0.58",
+ "unicode-bidi",
+ "unicode-normalization",
 ]
 
 [[package]]
-name = "gtk4"
-version = "0.8.1"
+name = "image"
+version = "0.24.8"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "aa82753b8c26277e4af1446c70e35b19aad4fb794a7b143859e7eeb9a4025d83"
+checksum = "034bbe799d1909622a74d1193aa50147769440040ff36cb2baa947609b0a4e23"
 dependencies = [
- "cairo-rs 0.19.4",
- "field-offset",
- "futures-channel",
- "gdk-pixbuf 0.19.2",
- "gdk4",
- "gio 0.19.4",
- "glib 0.19.4",
- "graphene-rs",
- "gsk4",
- "gtk4-macros",
- "gtk4-sys",
- "libc",
- "pango 0.19.3",
+ "bytemuck",
+ "byteorder",
+ "color_quant",
+ "exr",
+ "gif",
+ "jpeg-decoder",
+ "num-traits",
+ "png",
+ "qoi",
+ "tiff",
 ]
 
 [[package]]
-name = "gtk4-macros"
-version = "0.8.1"
+name = "indexmap"
+version = "2.2.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "40300bf071d2fcd4c94eacc09e84ec6fe73129d2ceb635cf7e55b026b5443567"
+checksum = "824b2ae422412366ba479e8111fd301f7b5faece8149317bb81925979a53f520"
 dependencies = [
- "anyhow",
- "proc-macro-crate 3.1.0",
- "proc-macro-error",
- "proc-macro2",
- "quote 1.0.36",
- "syn 1.0.109",
+ "equivalent",
+ "hashbrown",
 ]
 
 [[package]]
-name = "gtk4-sys"
-version = "0.8.1"
+name = "instant"
+version = "0.1.12"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0db1b104138f087ccdc81d2c332de5dd049b89de3d384437cc1093b17cd2da18"
+checksum = "7a5bbe824c507c5da5956355e86a746d82e0e1464f65d862cc5e71da70e94b2c"
 dependencies = [
- "cairo-sys-rs 0.19.2",
- "gdk-pixbuf-sys 0.19.0",
- "gdk4-sys",
- "gio-sys 0.19.0",
- "glib-sys 0.19.0",
- "gobject-sys 0.19.0",
- "graphene-sys",
- "gsk4-sys",
- "libc",
- "pango-sys 0.19.0",
- "system-deps",
+ "cfg-if",
 ]
 
 [[package]]
-name = "h2"
-version = "0.4.4"
+name = "is-terminal"
+version = "0.4.10"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "816ec7294445779408f36fe57bc5b7fc1cf59664059096c65f905c1c61f58069"
+checksum = "0bad00257d07be169d870ab665980b06cdb366d792ad690bf2e76876dc503455"
 dependencies = [
- "bytes",
- "fnv",
- "futures-core",
- "futures-sink",
- "futures-util",
- "http",
- "indexmap",
- "slab",
- "tokio",
- "tokio-util",
- "tracing",
+ "hermit-abi",
+ "rustix",
+ "windows-sys 0.52.0",
 ]
 
 [[package]]
-name = "hashbrown"
-version = "0.12.3"
+name = "itertools"
+version = "0.12.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8a9ee70c43aaf417c914396645a0fa852624801b24ebb7ae78fe8272889ac888"
+checksum = "ba291022dbbd398a455acf126c1e341954079855bc60dfdda641363bd6922569"
 dependencies = [
- "ahash 0.7.8",
+ "either",
 ]
 
 [[package]]
-name = "hashbrown"
-version = "0.14.3"
+name = "jni"
+version = "0.19.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "290f1a1d9242c78d09ce40a5e87e7554ee637af1351968159f4952f028f75604"
+checksum = "c6df18c2e3db7e453d3c6ac5b3e9d5182664d28788126d39b91f2d1e22b017ec"
+dependencies = [
+ "cesu8",
+ "combine",
+ "jni-sys",
+ "log",
+ "thiserror",
+ "walkdir",
+]
 
 [[package]]
-name = "heck"
-version = "0.3.3"
+name = "jni"
+version = "0.20.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6d621efb26863f0e9924c6ac577e8275e5e6b77455db64ffa6c65c904e9e132c"
+checksum = "039022cdf4d7b1cf548d31f60ae783138e5fd42013f6271049d7df7afadef96c"
 dependencies = [
- "unicode-segmentation",
+ "cesu8",
+ "combine",
+ "jni-sys",
+ "log",
+ "thiserror",
+ "walkdir",
 ]
 
 [[package]]
-name = "heck"
-version = "0.4.1"
+name = "jni"
+version = "0.21.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "95505c38b4572b2d910cecb0281560f54b440a19336cbbcb27bf6ce6adc6f5a8"
+checksum = "1a87aa2bb7d2af34197c04845522473242e1aa17c12f4935d5856491a7fb8c97"
+dependencies = [
+ "cesu8",
+ "cfg-if",
+ "combine",
+ "jni-sys",
+ "log",
+ "thiserror",
+ "walkdir",
+ "windows-sys 0.45.0",
+]
 
 [[package]]
-name = "heck"
-version = "0.5.0"
+name = "jni-sys"
+version = "0.3.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2304e00983f87ffb38b55b444b5e3b60a884b5d30c0fca7d82fe33449bbe55ea"
+checksum = "8eaf4bc02d17cbdd7ff4c7438cafcdf7fb9a4613313ad11b4f8fefe7d3fa0130"
 
 [[package]]
-name = "hermit-abi"
-version = "0.1.19"
+name = "jobserver"
+version = "0.1.27"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "62b467343b94ba476dcb2500d242dadbb39557df889310ac77c5d99100aaac33"
+checksum = "8c37f63953c4c63420ed5fd3d6d398c719489b9f872b9fa683262f8edd363c7d"
 dependencies = [
  "libc",
 ]
 
 [[package]]
-name = "hermit-abi"
-version = "0.3.9"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d231dfb89cfffdbc30e7fc41579ed6066ad03abda9e567ccafae602b97ec5024"
-
-[[package]]
-name = "hex"
-version = "0.4.3"
+name = "jpeg-decoder"
+version = "0.3.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7f24254aa9a54b5c858eaee2f5bccdb46aaf0e486a595ed5fd8f86ba55232a70"
+checksum = "f5d4a7da358eff58addd2877a45865158f0d78c911d43a5784ceb7bbf52833b0"
+dependencies = [
+ "rayon",
+]
 
 [[package]]
-name = "http"
-version = "1.1.0"
+name = "js-sys"
+version = "0.3.68"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "21b9ddb458710bc376481b842f5da65cdf31522de232c1ca8146abce2a358258"
+checksum = "406cda4b368d531c842222cf9d2600a9a4acce8d29423695379c6868a143a9ee"
 dependencies = [
- "bytes",
- "fnv",
- "itoa",
+ "wasm-bindgen",
 ]
 
 [[package]]
-name = "http-body"
-version = "1.0.0"
+name = "kamadak-exif"
+version = "0.5.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1cac85db508abc24a2e48553ba12a996e87244a0395ce011e62b37158745d643"
+checksum = "ef4fc70d0ab7e5b6bafa30216a6b48705ea964cdfc29c050f2412295eba58077"
 dependencies = [
- "bytes",
- "http",
+ "mutate_once",
 ]
 
 [[package]]
-name = "http-body-util"
-version = "0.1.1"
+name = "khronos-egl"
+version = "6.0.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0475f8b2ac86659c21b64320d5d653f9efe42acd2a4e560073ec61a155a34f1d"
+checksum = "6aae1df220ece3c0ada96b8153459b67eebe9ae9212258bb0134ae60416fdf76"
 dependencies = [
- "bytes",
- "futures-core",
- "http",
- "http-body",
- "pin-project-lite",
+ "libc",
+ "libloading 0.8.1",
+ "pkg-config",
 ]
 
 [[package]]
-name = "httparse"
-version = "1.8.0"
+name = "khronos_api"
+version = "3.1.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d897f394bad6a705d5f4104762e116a75639e470d80901eed05a860a95cb1904"
+checksum = "e2db585e1d738fc771bf08a151420d3ed193d9d895a36df7f6f8a9456b911ddc"
 
 [[package]]
-name = "hyper"
-version = "1.2.0"
+name = "kurbo"
+version = "0.10.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "186548d73ac615b32a73aafe38fb4f56c0d340e110e5a200bcadbaf2e199263a"
+checksum = "1618d4ebd923e97d67e7cd363d80aef35fe961005cbbbb3d2dad8bdd1bc63440"
 dependencies = [
- "bytes",
- "futures-channel",
- "futures-util",
- "h2",
- "http",
- "http-body",
- "httparse",
- "itoa",
- "pin-project-lite",
+ "arrayvec",
  "smallvec",
- "tokio",
- "want",
 ]
 
 [[package]]
-name = "hyper-tls"
-version = "0.6.0"
+name = "lazy_static"
+version = "1.4.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "70206fc6890eaca9fde8a0bf71caa2ddfc9fe045ac9e5c70df101a7dbde866e0"
-dependencies = [
- "bytes",
- "http-body-util",
- "hyper",
- "hyper-util",
- "native-tls",
- "tokio",
- "tokio-native-tls",
- "tower-service",
-]
+checksum = "e2abad23fbc42b3700f2f279844dc832adb2b2eb069b2df918f455c4e18cc646"
 
 [[package]]
-name = "hyper-util"
-version = "0.1.3"
+name = "lazycell"
+version = "1.3.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ca38ef113da30126bbff9cd1705f9273e15d45498615d138b0c20279ac7a76aa"
-dependencies = [
- "bytes",
- "futures-channel",
- "futures-util",
- "http",
- "http-body",
- "hyper",
- "pin-project-lite",
- "socket2",
- "tokio",
- "tower",
- "tower-service",
- "tracing",
-]
+checksum = "830d08ce1d1d941e6b30645f1a0eb5643013d835ce3779a5fc208261dbe10f55"
 
 [[package]]
-name = "ident_case"
-version = "1.0.1"
+name = "lebe"
+version = "0.5.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b9e0384b61958566e926dc50660321d12159025e767c18e043daf26b70104c39"
+checksum = "03087c2bad5e1034e8cace5926dec053fb3790248370865f5117a7d0213354c8"
 
 [[package]]
-name = "idna"
-version = "0.3.0"
+name = "libc"
+version = "0.2.153"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e14ddfc70884202db2244c223200c204c2bda1bc6e0998d11b5e024d657209e6"
-dependencies = [
- "unicode-bidi",
- "unicode-normalization",
-]
+checksum = "9c198f91728a82281a64e1f4f9eeb25d82cb32a5de251c6bd1b5154d63a8e7bd"
 
 [[package]]
-name = "idna"
-version = "0.5.0"
+name = "libloading"
+version = "0.7.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "634d9b1461af396cad843f47fdba5597a4f9e6ddd4bfb6ff5d85028c25cb12f6"
+checksum = "b67380fd3b2fbe7527a606e18729d21c6f3951633d0500574c4dc22d2d638b9f"
 dependencies = [
- "unicode-bidi",
- "unicode-normalization",
+ "cfg-if",
+ "winapi",
 ]
 
 [[package]]
-name = "indexmap"
-version = "2.2.6"
+name = "libloading"
+version = "0.8.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "168fb715dda47215e360912c096649d23d58bf392ac62f73919e831745e40f26"
+checksum = "c571b676ddfc9a8c12f1f3d3085a7b163966a8fd8098a90640953ce5f6170161"
 dependencies = [
- "equivalent",
- "hashbrown 0.14.3",
+ "cfg-if",
+ "windows-sys 0.48.0",
 ]
 
 [[package]]
-name = "inout"
-version = "0.1.3"
+name = "libm"
+version = "0.2.8"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a0c10553d664a4d0bcff9f4215d0aac67a639cc68ef660840afe309b807bc9f5"
+checksum = "4ec2a862134d2a7d32d7983ddcdd1c4923530833c9f2ea1a44fc5fa473989058"
+
+[[package]]
+name = "libredox"
+version = "0.0.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "3af92c55d7d839293953fcd0fda5ecfe93297cfde6ffbdec13b41d99c0ba6607"
 dependencies = [
- "block-padding",
- "generic-array",
+ "bitflags 2.4.2",
+ "libc",
+ "redox_syscall 0.4.1",
 ]
 
 [[package]]
-name = "ipnet"
-version = "2.9.0"
+name = "linux-raw-sys"
+version = "0.4.13"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8f518f335dce6725a761382244631d86cf0ccb2863413590b31338feb467f9c3"
+checksum = "01cda141df6706de531b6c46c3a33ecca755538219bd484262fa09410c13539c"
 
 [[package]]
-name = "itoa"
-version = "1.0.11"
+name = "linux-raw-sys"
+version = "0.6.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "49f1f14873335454500d59611f1cf4a4b0f786f9ac11f4312a78e4cf2566695b"
+checksum = "f0b5399f6804fbab912acbd8878ed3532d506b7c951b8f9f164ef90fef39e3f4"
 
 [[package]]
-name = "js-sys"
-version = "0.3.69"
+name = "lock_api"
+version = "0.4.11"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "29c15563dc2726973df627357ce0c9ddddbea194836909d655df6a75d2cf296d"
+checksum = "3c168f8615b12bc01f9c17e2eb0cc07dcae1940121185446edc3744920e8ef45"
 dependencies = [
- "wasm-bindgen",
+ "autocfg",
+ "scopeguard",
 ]
 
 [[package]]
-name = "keyboard-types"
-version = "0.7.0"
+name = "log"
+version = "0.4.20"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b750dcadc39a09dbadd74e118f6dd6598df77fa01df0cfcdc52c28dece74528a"
-dependencies = [
- "bitflags 2.5.0",
- "serde",
- "unicode-segmentation",
-]
+checksum = "b5e6163cb8c49088c2c36f57875e58ccd8c87c7427f7fbd50ea6710b2f3f2e8f"
 
 [[package]]
-name = "ksni"
-version = "0.2.1"
-source = "git+https://github.com/waylyrics/ksni.git#af6fa6e6e29b7cb3779f98c1ca3aaeb8744ef4c4"
+name = "lru"
+version = "0.12.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "db2c024b41519440580066ba82aab04092b333e09066a5eb86c7c4890df31f22"
 dependencies = [
- "dbus",
- "dbus-codegen",
- "dbus-tree",
- "thiserror",
+ "hashbrown",
 ]
 
 [[package]]
-name = "lazy_static"
-version = "1.4.0"
+name = "mach2"
+version = "0.4.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e2abad23fbc42b3700f2f279844dc832adb2b2eb069b2df918f455c4e18cc646"
+checksum = "19b955cdeb2a02b9117f121ce63aa52d08ade45de53e48fe6a38b39c10f6f709"
 dependencies = [
- "spin",
+ "libc",
 ]
 
 [[package]]
-name = "libappindicator"
-version = "0.9.0"
+name = "malloc_buf"
+version = "0.0.6"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "03589b9607c868cc7ae54c0b2a22c8dc03dd41692d48f2d7df73615c6a95dc0a"
+checksum = "62bb907fe88d54d8d9ce32a3cceab4218ed2f6b7d35617cafe9adf84e43919cb"
 dependencies = [
- "glib 0.18.5",
- "gtk",
- "gtk-sys",
- "libappindicator-sys",
- "log",
+ "libc",
 ]
 
 [[package]]
-name = "libappindicator-sys"
-version = "0.9.0"
+name = "memchr"
+version = "2.7.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6e9ec52138abedcc58dc17a7c6c0c00a2bdb4f3427c7f63fa97fd0d859155caf"
-dependencies = [
- "gtk-sys",
- "libloading",
- "once_cell",
-]
+checksum = "523dc4f511e55ab87b694dc30d0f820d60906ef06413f93d4d7a1385599cc149"
 
 [[package]]
-name = "libc"
-version = "0.2.153"
+name = "memmap2"
+version = "0.8.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9c198f91728a82281a64e1f4f9eeb25d82cb32a5de251c6bd1b5154d63a8e7bd"
+checksum = "43a5a03cefb0d953ec0be133036f14e109412fa594edc2f77227249db66cc3ed"
+dependencies = [
+ "libc",
+]
 
 [[package]]
-name = "libdbus-sys"
-version = "0.2.5"
+name = "memmap2"
+version = "0.9.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "06085512b750d640299b79be4bad3d2fa90a9c00b1fd9e1b46364f66f0485c72"
+checksum = "fe751422e4a8caa417e13c3ea66452215d7d63e19e604f4980461212f3ae1322"
 dependencies = [
- "cc",
- "pkg-config",
+ "libc",
 ]
 
 [[package]]
-name = "libloading"
-version = "0.7.4"
+name = "memoffset"
+version = "0.9.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b67380fd3b2fbe7527a606e18729d21c6f3951633d0500574c4dc22d2d638b9f"
+checksum = "5a634b1c61a95585bd15607c6ab0c4e5b226e695ff2800ba0cdccddf208c406c"
 dependencies = [
- "cfg-if",
- "winapi",
+ "autocfg",
 ]
 
 [[package]]
-name = "libm"
-version = "0.2.8"
+name = "metal"
+version = "0.27.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4ec2a862134d2a7d32d7983ddcdd1c4923530833c9f2ea1a44fc5fa473989058"
+checksum = "c43f73953f8cbe511f021b58f18c3ce1c3d1ae13fe953293e13345bf83217f25"
+dependencies = [
+ "bitflags 2.4.2",
+ "block",
+ "core-graphics-types",
+ "foreign-types",
+ "log",
+ "objc",
+ "paste",
+]
 
 [[package]]
-name = "libmimalloc-sys"
-version = "0.1.35"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3979b5c37ece694f1f5e51e7ecc871fdb0f517ed04ee45f88d15d6d553cb9664"
+name = "midi-file"
+version = "0.1.0"
 dependencies = [
- "cc",
- "libc",
+ "midi-io",
+ "midly",
 ]
 
 [[package]]
-name = "libredox"
-version = "0.1.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c0ff37bd590ca25063e35af745c343cb7a0271906fb7b37e4813e8f79f00268d"
+name = "midi-io"
+version = "0.1.0"
 dependencies = [
- "bitflags 2.5.0",
- "libc",
+ "midir",
 ]
 
 [[package]]
-name = "libxdo"
-version = "0.6.0"
+name = "midir"
+version = "0.9.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "00333b8756a3d28e78def82067a377de7fa61b24909000aeaa2b446a948d14db"
+checksum = "a456444d83e7ead06ae6a5c0a215ed70282947ff3897fb45fcb052b757284731"
 dependencies = [
- "libxdo-sys",
+ "alsa",
+ "bitflags 1.3.2",
+ "coremidi",
+ "js-sys",
+ "libc",
+ "wasm-bindgen",
+ "web-sys",
+ "windows 0.43.0",
 ]
 
 [[package]]
-name = "libxdo-sys"
-version = "0.11.0"
+name = "midly"
+version = "0.5.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "db23b9e7e2b7831bbd8aac0bbeeeb7b68cbebc162b227e7052e8e55829a09212"
+checksum = "207d755f4cb882d20c4da58d707ca9130a0c9bc5061f657a4f299b8e36362b7a"
 dependencies = [
- "libc",
- "x11",
+ "rayon",
 ]
 
 [[package]]
-name = "linux-raw-sys"
-version = "0.4.13"
+name = "minimal-lexical"
+version = "0.2.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "01cda141df6706de531b6c46c3a33ecca755538219bd484262fa09410c13539c"
+checksum = "68354c5c6bd36d73ff3feceb05efa59b6acb7626617f4962be322a825e61f79a"
 
 [[package]]
-name = "locale_config"
-version = "0.3.0"
+name = "miniz_oxide"
+version = "0.7.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "08d2c35b16f4483f6c26f0e4e9550717a2f6575bcd6f12a53ff0c490a94a6934"
+checksum = "9d811f3e15f28568be3407c8e7fdb6514c1cda3cb30683f15b6a1a1dc4ea14a7"
 dependencies = [
- "lazy_static",
- "objc",
- "objc-foundation",
- "regex",
- "winapi",
+ "adler",
+ "simd-adler32",
 ]
 
 [[package]]
-name = "lock_api"
-version = "0.4.11"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3c168f8615b12bc01f9c17e2eb0cc07dcae1940121185446edc3744920e8ef45"
+name = "mpeg_encoder"
+version = "0.2.1"
+source = "git+https://github.com/PolyMeilex/mpeg_encoder_next.git#577efd933e4b556526df773f267dd0fb066f724c"
 dependencies = [
- "autocfg",
- "scopeguard",
+ "ffmpeg-sys-next",
 ]
 
 [[package]]
-name = "log"
-version = "0.4.21"
+name = "mutate_once"
+version = "0.1.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "90ed8c1e510134f979dbc4f070f87d4313098b704861a105fe34231c70a3901c"
+checksum = "16cf681a23b4d0a43fc35024c176437f9dcd818db34e0f42ab456a0ee5ad497b"
 
 [[package]]
-name = "lrc-nom"
-version = "0.3.0"
+name = "naga"
+version = "0.19.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a0fb729227bcfd7c7cf247c37a932ac168b94759c052f046b9aad4ba5f584f70"
+checksum = "8878eb410fc90853da3908aebfe61d73d26d4437ef850b70050461f939509899"
 dependencies = [
- "nom",
- "rust_decimal",
- "rust_decimal_macros",
+ "bit-set",
+ "bitflags 2.4.2",
+ "codespan-reporting",
+ "hexf-parse",
+ "indexmap",
+ "log",
+ "num-traits",
+ "rustc-hash",
+ "spirv",
+ "termcolor",
  "thiserror",
+ "unicode-xid",
 ]
 
 [[package]]
-name = "malloc_buf"
-version = "0.0.6"
+name = "ndk"
+version = "0.7.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "62bb907fe88d54d8d9ce32a3cceab4218ed2f6b7d35617cafe9adf84e43919cb"
+checksum = "451422b7e4718271c8b5b3aadf5adedba43dc76312454b387e98fae0fc951aa0"
 dependencies = [
- "libc",
+ "bitflags 1.3.2",
+ "jni-sys",
+ "ndk-sys 0.4.1+23.1.7779620",
+ "num_enum 0.5.11",
+ "raw-window-handle 0.5.2",
+ "thiserror",
 ]
 
 [[package]]
-name = "matchers"
-version = "0.1.0"
+name = "ndk"
+version = "0.8.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8263075bb86c5a1b1427b5ae862e8889656f126e9f77c484496e8b47cf5c5558"
+checksum = "2076a31b7010b17a38c01907c45b945e8f11495ee4dd588309718901b1f7a5b7"
 dependencies = [
- "regex-automata 0.1.10",
+ "bitflags 2.4.2",
+ "jni-sys",
+ "log",
+ "ndk-sys 0.5.0+25.2.9519653",
+ "num_enum 0.7.2",
+ "raw-window-handle 0.5.2",
+ "raw-window-handle 0.6.0",
+ "thiserror",
 ]
 
 [[package]]
-name = "md5"
-version = "0.7.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "490cc448043f947bae3cbee9c203358d62dbee0db12107a74be5c30ccfd09771"
-
-[[package]]
-name = "memchr"
-version = "2.7.2"
+name = "ndk-context"
+version = "0.1.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6c8640c5d730cb13ebd907d8d04b52f55ac9a2eec55b440c8892f40d56c76c1d"
+checksum = "27b02d87554356db9e9a873add8782d4ea6e3e58ea071a9adb9a2e8ddb884a8b"
 
 [[package]]
-name = "memoffset"
-version = "0.9.1"
+name = "ndk-sys"
+version = "0.4.1+23.1.7779620"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "488016bfae457b036d996092f6cb448677611ce4449e970ceaf42695203f218a"
+checksum = "3cf2aae958bd232cac5069850591667ad422d263686d75b52a065f9badeee5a3"
 dependencies = [
- "autocfg",
+ "jni-sys",
 ]
 
 [[package]]
-name = "mimalloc"
-version = "0.1.39"
+name = "ndk-sys"
+version = "0.5.0+25.2.9519653"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "fa01922b5ea280a911e323e4d2fd24b7fe5cc4042e0d2cda3c40775cdc4bdc9c"
+checksum = "8c196769dd60fd4f363e11d948139556a344e79d451aeb2fa2fd040738ef7691"
 dependencies = [
- "libmimalloc-sys",
+ "jni-sys",
 ]
 
 [[package]]
-name = "mime"
-version = "0.3.17"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6877bb514081ee2a7ff5ef9de3281f14a4dd4bceac4c09388074a6b5df8a139a"
-
-[[package]]
-name = "minimal-lexical"
-version = "0.2.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "68354c5c6bd36d73ff3feceb05efa59b6acb7626617f4962be322a825e61f79a"
-
-[[package]]
-name = "miniz_oxide"
-version = "0.7.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9d811f3e15f28568be3407c8e7fdb6514c1cda3cb30683f15b6a1a1dc4ea14a7"
+name = "neothesia"
+version = "0.1.0"
 dependencies = [
- "adler",
- "simd-adler32",
+ "async-thread",
+ "cpal",
+ "embed-resource",
+ "env_logger",
+ "fluidlite",
+ "fps_ticker",
+ "futures",
+ "iced_core",
+ "iced_graphics",
+ "iced_runtime",
+ "iced_style",
+ "iced_wgpu",
+ "iced_widget",
+ "image",
+ "log",
+ "midi-file",
+ "midi-io",
+ "neothesia-core",
+ "neothesia-iced-widgets",
+ "oxisynth",
+ "piano-math",
+ "rfd",
+ "wgpu",
+ "wgpu-jumpstart",
+ "winit",
 ]
 
 [[package]]
-name = "mio"
-version = "0.8.11"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a4a650543ca06a924e8b371db273b2756685faae30f8487da1b56505a8f78b0c"
+name = "neothesia-cli"
+version = "0.1.0"
 dependencies = [
- "libc",
- "wasi",
- "windows-sys 0.48.0",
+ "env_logger",
+ "futures",
+ "midi-file",
+ "mpeg_encoder",
+ "neothesia-core",
+ "piano-math",
+ "wgpu-jumpstart",
 ]
 
 [[package]]
-name = "mpris"
-version = "2.0.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "55cef955a7826b1e00e901a3652e7a895abd221fb4ab61547e7d0e4c235d7feb"
+name = "neothesia-core"
+version = "0.1.0"
 dependencies = [
- "dbus",
- "derive_is_enum_variant",
- "enum-kinds",
- "from_variants",
- "thiserror",
+ "bytemuck",
+ "glyphon",
+ "log",
+ "midi-file",
+ "objc",
+ "piano-math",
+ "ron",
+ "serde",
+ "wgpu",
+ "wgpu-jumpstart",
 ]
 
 [[package]]
-name = "muda"
-version = "0.13.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f428b4e9db3d17e2f809dfb1ff9ddfbbf16c71790d1656d10aee320877e1392f"
+name = "neothesia-iced-widgets"
+version = "0.1.0"
 dependencies = [
- "cocoa",
- "crossbeam-channel",
- "dpi",
- "gtk",
- "keyboard-types",
- "libxdo",
- "objc",
- "once_cell",
- "png",
- "thiserror",
- "windows-sys 0.52.0",
+ "iced_core",
+ "iced_graphics",
+ "iced_style",
+ "iced_wgpu",
+ "iced_widget",
+ "piano-math",
 ]
 
 [[package]]
-name = "native-tls"
-version = "0.2.11"
+name = "nix"
+version = "0.24.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "07226173c32f2926027b63cce4bcd8076c3552846cbe7925f3aaffeac0a3b92e"
+checksum = "fa52e972a9a719cecb6864fb88568781eb706bac2cd1d4f04a648542dbf78069"
 dependencies = [
- "lazy_static",
+ "bitflags 1.3.2",
+ "cfg-if",
  "libc",
- "log",
- "openssl",
- "openssl-probe",
- "openssl-sys",
- "schannel",
- "security-framework",
- "security-framework-sys",
- "tempfile",
 ]
 
 [[package]]
-name = "ncmapi2"
-version = "0.1.13"
+name = "nix"
+version = "0.27.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "dcd3c218f2db46fc0b26ac6263d3005b96c82d5ebec0d349c3c902eef8bd660c"
+checksum = "2eb04e9c688eff1c89d72b407f168cf79bb9e867a9d3323ed6c01519eb9cc053"
 dependencies = [
- "aes",
- "base64",
- "cbc",
- "cookie 0.18.1",
- "ecb",
- "hex",
- "md5",
- "phf",
- "rand",
- "regex",
- "reqwest",
- "rsa",
- "serde",
- "serde_json",
- "serde_repr",
- "thiserror",
- "tokio",
+ "bitflags 2.4.2",
+ "cfg-if",
+ "libc",
+ "memoffset",
 ]
 
 [[package]]
@@ -2109,76 +2384,86 @@ dependencies = [
 ]
 
 [[package]]
-name = "nu-ansi-term"
-version = "0.46.0"
+name = "num-derive"
+version = "0.3.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "77a8165726e8236064dbb45459242600304b42a5ea24ee2948e18e023bf7ba84"
+checksum = "876a53fff98e03a936a674b29568b0e605f06b29372c2489ff4de23f1949743d"
 dependencies = [
- "overload",
- "winapi",
+ "proc-macro2",
+ "quote",
+ "syn 1.0.109",
 ]
 
 [[package]]
-name = "num-bigint-dig"
-version = "0.8.4"
+name = "num-derive"
+version = "0.4.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "dc84195820f291c7697304f3cbdadd1cb7199c0efc917ff5eafd71225c136151"
+checksum = "ed3955f1a9c7c0c15e092f9c887db08b1fc683305fdf6eb6684f22555355e202"
 dependencies = [
- "byteorder",
- "lazy_static",
- "libm",
- "num-integer",
- "num-iter",
- "num-traits",
- "rand",
- "smallvec",
- "zeroize",
+ "proc-macro2",
+ "quote",
+ "syn 2.0.48",
 ]
 
 [[package]]
-name = "num-conv"
-version = "0.1.0"
+name = "num-traits"
+version = "0.2.17"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "51d515d32fb182ee37cda2ccdcb92950d6a3c2893aa280e540671c2cd0f3b1d9"
+checksum = "39e3200413f237f41ab11ad6d161bc7239c84dcb631773ccd7de3dfe4b5c267c"
+dependencies = [
+ "autocfg",
+]
 
 [[package]]
-name = "num-integer"
-version = "0.1.46"
+name = "num_cpus"
+version = "1.16.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7969661fd2958a5cb096e56c8e1ad0444ac2bbcd0061bd28660485a44879858f"
+checksum = "4161fcb6d602d4d2081af7c3a45852d875a03dd337a6bfdd6e06407b61342a43"
 dependencies = [
- "num-traits",
+ "hermit-abi",
+ "libc",
 ]
 
 [[package]]
-name = "num-iter"
-version = "0.1.44"
+name = "num_enum"
+version = "0.5.11"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d869c01cc0c455284163fd0092f1f93835385ccab5a98a0dcc497b2f8bf055a9"
+checksum = "1f646caf906c20226733ed5b1374287eb97e3c2a5c227ce668c1f2ce20ae57c9"
 dependencies = [
- "autocfg",
- "num-integer",
- "num-traits",
+ "num_enum_derive 0.5.11",
 ]
 
 [[package]]
-name = "num-traits"
-version = "0.2.18"
+name = "num_enum"
+version = "0.7.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "da0df0e5185db44f69b44f26786fe401b6c293d1907744beaa7fa62b2e5a517a"
+checksum = "02339744ee7253741199f897151b38e72257d13802d4ee837285cc2990a90845"
 dependencies = [
- "autocfg",
- "libm",
+ "num_enum_derive 0.7.2",
 ]
 
 [[package]]
-name = "num_cpus"
-version = "1.16.0"
+name = "num_enum_derive"
+version = "0.5.11"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4161fcb6d602d4d2081af7c3a45852d875a03dd337a6bfdd6e06407b61342a43"
+checksum = "dcbff9bc912032c62bf65ef1d5aea88983b420f4f839db1e9b0c281a25c9c799"
 dependencies = [
- "hermit-abi 0.3.9",
- "libc",
+ "proc-macro-crate 1.3.1",
+ "proc-macro2",
+ "quote",
+ "syn 1.0.109",
+]
+
+[[package]]
+name = "num_enum_derive"
+version = "0.7.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "681030a937600a36906c185595136d26abfebb4aa9c65701cefcaf8578bb982b"
+dependencies = [
+ "proc-macro-crate 3.1.0",
+ "proc-macro2",
+ "quote",
+ "syn 2.0.48",
 ]
 
 [[package]]
@@ -2188,6 +2473,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "915b1b472bc21c53464d6c8461c9d3af805ba1ef837e1cac254428f4a77177b1"
 dependencies = [
  "malloc_buf",
+ "objc_exception",
 ]
 
 [[package]]
@@ -2202,142 +2488,141 @@ dependencies = [
 ]
 
 [[package]]
-name = "objc_id"
-version = "0.1.1"
+name = "objc-sys"
+version = "0.3.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c92d4ddb4bd7b50d730c215ff871754d0da6b2178849f8a2a2ab69712d0c073b"
-dependencies = [
- "objc",
-]
+checksum = "c7c71324e4180d0899963fc83d9d241ac39e699609fc1025a850aadac8257459"
 
 [[package]]
-name = "object"
-version = "0.32.2"
+name = "objc2"
+version = "0.4.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a6a622008b6e321afc04970976f62ee297fdbaa6f95318ca343e3eebb9648441"
+checksum = "559c5a40fdd30eb5e344fbceacf7595a81e242529fb4e21cf5f43fb4f11ff98d"
 dependencies = [
- "memchr",
+ "objc-sys",
+ "objc2-encode",
 ]
 
 [[package]]
-name = "once_cell"
-version = "1.19.0"
+name = "objc2-encode"
+version = "3.0.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3fdb12b2476b595f9358c5161aa467c2438859caa136dec86c26fdd2efe17b92"
+checksum = "d079845b37af429bfe5dfa76e6d087d788031045b25cfc6fd898486fd9847666"
 
 [[package]]
-name = "opencc-rust"
-version = "1.1.18"
+name = "objc_exception"
+version = "0.1.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "93236c9c3fb3e36c0cf4467731aabf338fd4831d4fad072a47cb2d4757e47303"
+checksum = "ad970fb455818ad6cba4c122ad012fae53ae8b4795f86378bce65e4f6bab2ca4"
 dependencies = [
- "libc",
- "pkg-config",
+ "cc",
 ]
 
 [[package]]
-name = "openssl"
-version = "0.10.64"
+name = "objc_id"
+version = "0.1.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "95a0481286a310808298130d22dd1fef0fa571e05a8f44ec801801e84b216b1f"
+checksum = "c92d4ddb4bd7b50d730c215ff871754d0da6b2178849f8a2a2ab69712d0c073b"
 dependencies = [
- "bitflags 2.5.0",
- "cfg-if",
- "foreign-types 0.3.2",
- "libc",
- "once_cell",
- "openssl-macros",
- "openssl-sys",
+ "objc",
 ]
 
 [[package]]
-name = "openssl-macros"
-version = "0.1.1"
+name = "oboe"
+version = "0.5.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a948666b637a0f465e8564c73e89d4dde00d72d4d473cc972f390fc3dcee7d9c"
+checksum = "8868cc237ee02e2d9618539a23a8d228b9bb3fc2e7a5b11eed3831de77c395d0"
 dependencies = [
- "proc-macro2",
- "quote 1.0.36",
- "syn 2.0.58",
+ "jni 0.20.0",
+ "ndk 0.7.0",
+ "ndk-context",
+ "num-derive 0.3.3",
+ "num-traits",
+ "oboe-sys",
 ]
 
 [[package]]
-name = "openssl-probe"
-version = "0.1.5"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ff011a302c396a5197692431fc1948019154afc178baf7d8e37367442a4601cf"
-
-[[package]]
-name = "openssl-sys"
-version = "0.9.102"
+name = "oboe-sys"
+version = "0.5.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c597637d56fbc83893a35eb0dd04b2b8e7a50c91e64e9493e398b5df4fb45fa2"
+checksum = "7f44155e7fb718d3cfddcf70690b2b51ac4412f347cd9e4fbe511abe9cd7b5f2"
 dependencies = [
  "cc",
- "libc",
- "pkg-config",
- "vcpkg",
 ]
 
 [[package]]
-name = "option-ext"
-version = "0.2.0"
+name = "once_cell"
+version = "1.19.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "04744f49eae99ab78e0d5c0b603ab218f515ea8cfe5a456d7629ad883a3b6e7d"
+checksum = "3fdb12b2476b595f9358c5161aa467c2438859caa136dec86c26fdd2efe17b92"
 
 [[package]]
-name = "overload"
-version = "0.1.1"
+name = "orbclient"
+version = "0.3.47"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b15813163c1d831bf4a13c3610c05c0d03b39feb07f7e09fa234dac9b15aaf39"
+checksum = "52f0d54bde9774d3a51dcf281a5def240c71996bc6ca05d2c847ec8b2b216166"
+dependencies = [
+ "libredox",
+]
 
 [[package]]
-name = "pango"
-version = "0.18.3"
+name = "ordered-stream"
+version = "0.2.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7ca27ec1eb0457ab26f3036ea52229edbdb74dee1edd29063f5b9b010e7ebee4"
+checksum = "9aa2b01e1d916879f73a53d01d1d6cee68adbb31d6d9177a8cfce093cced1d50"
 dependencies = [
- "gio 0.18.4",
- "glib 0.18.5",
- "libc",
- "once_cell",
- "pango-sys 0.18.0",
+ "futures-core",
+ "pin-project-lite",
 ]
 
 [[package]]
-name = "pango"
-version = "0.19.3"
+name = "owned_ttf_parser"
+version = "0.20.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b1264d13deb823cc652f26cfe59afb1ec4b9db2a5bd27c41b738c879cc1bfaa1"
+checksum = "d4586edfe4c648c71797a74c84bacb32b52b212eff5dfe2bb9f2c599844023e7"
 dependencies = [
- "gio 0.19.4",
- "glib 0.19.4",
- "libc",
- "pango-sys 0.19.0",
+ "ttf-parser 0.20.0",
 ]
 
 [[package]]
-name = "pango-sys"
-version = "0.18.0"
+name = "oxisynth"
+version = "0.0.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "436737e391a843e5933d6d9aa102cb126d501e815b83601365a948a518555dc5"
+checksum = "8ac4177ce94a34c3bcfa9e39f8338c8170918faa560d00dd923d984331a749e4"
 dependencies = [
- "glib-sys 0.18.1",
- "gobject-sys 0.18.0",
- "libc",
- "system-deps",
+ "bitflags 2.4.2",
+ "byte-slice-cast",
+ "byteorder",
+ "generational-arena",
+ "lazy_static",
+ "log",
+ "num-derive 0.4.2",
+ "num-traits",
+ "soundfont",
+ "thiserror",
 ]
 
 [[package]]
-name = "pango-sys"
-version = "0.19.0"
+name = "palette"
+version = "0.7.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f52ef6a881c19fbfe3b1484df5cad411acaaba29dbec843941c3110d19f340ea"
+checksum = "3d38e6e5ca1612e2081cc31188f08c3cba630ce4ba44709a153f1a0f38d678f2"
 dependencies = [
- "glib-sys 0.19.0",
- "gobject-sys 0.19.0",
- "libc",
- "system-deps",
+ "approx",
+ "fast-srgb8",
+ "palette_derive",
+ "phf",
+]
+
+[[package]]
+name = "palette_derive"
+version = "0.7.4"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "e05d1c929301fee6830dafa764341118829b2535c216b0571e3821ecac5c885b"
+dependencies = [
+ "proc-macro2",
+ "quote",
+ "syn 2.0.48",
 ]
 
 [[package]]
@@ -2348,12 +2633,37 @@ checksum = "bb813b8af86854136c6922af0598d719255ecb2179515e6e7730d468f05c9cae"
 
 [[package]]
 name = "parking_lot"
+version = "0.11.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "7d17b78036a60663b797adeaee46f5c9dfebb86948d1255007a1d6be0271ff99"
+dependencies = [
+ "instant",
+ "lock_api",
+ "parking_lot_core 0.8.6",
+]
+
+[[package]]
+name = "parking_lot"
 version = "0.12.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "3742b2c103b9f06bc9fff0a37ff4912935851bee6d36f3c02bcc755bcfec228f"
 dependencies = [
  "lock_api",
- "parking_lot_core",
+ "parking_lot_core 0.9.9",
+]
+
+[[package]]
+name = "parking_lot_core"
+version = "0.8.6"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "60a2cfe6f0ad2bfc16aefa463b497d5c7a5ecd44a23efa72aa342d90177356dc"
+dependencies = [
+ "cfg-if",
+ "instant",
+ "libc",
+ "redox_syscall 0.2.16",
+ "smallvec",
+ "winapi",
 ]
 
 [[package]]
@@ -2364,19 +2674,22 @@ checksum = "4c42a9226546d68acdd9c0a280d17ce19bfe27a46bf68784e4066115788d008e"
 dependencies = [
  "cfg-if",
  "libc",
- "redox_syscall",
+ "redox_syscall 0.4.1",
  "smallvec",
  "windows-targets 0.48.5",
 ]
 
 [[package]]
-name = "pem-rfc7468"
-version = "0.7.0"
+name = "paste"
+version = "1.0.14"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "88b39c9bfcfc231068454382784bb460aae594343fb030d46e9f50a645418412"
-dependencies = [
- "base64ct",
-]
+checksum = "de3145af08024dea9fa9914f381a17b8fc6034dfb00f3a84013f7ff43f29ed4c"
+
+[[package]]
+name = "peeking_take_while"
+version = "0.1.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "19b17cddbe7ec3f8bc800887bab5e717348c95ea2ca0b1bf0837fb964dc67099"
 
 [[package]]
 name = "percent-encoding"
@@ -2413,8 +2726,8 @@ dependencies = [
  "phf_generator",
  "phf_shared",
  "proc-macro2",
- "quote 1.0.36",
- "syn 2.0.58",
+ "quote",
+ "syn 2.0.48",
 ]
 
 [[package]]
@@ -2427,30 +2740,14 @@ dependencies = [
 ]
 
 [[package]]
-name = "pin-project"
-version = "1.1.5"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b6bf43b791c5b9e34c3d182969b4abb522f9343702850a2e57f460d00d09b4b3"
-dependencies = [
- "pin-project-internal",
-]
-
-[[package]]
-name = "pin-project-internal"
-version = "1.1.5"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2f38a4412a78282e09a2cf38d195ea5420d15ba0602cb375210efbc877243965"
-dependencies = [
- "proc-macro2",
- "quote 1.0.36",
- "syn 2.0.58",
-]
+name = "piano-math"
+version = "0.1.0"
 
 [[package]]
 name = "pin-project-lite"
-version = "0.2.14"
+version = "0.2.13"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "bda66fc9667c18cb2758a2ac84d1167245054bcf85d5d1aaa6923f45801bdd02"
+checksum = "8afb450f006bf6385ca15ef45d71d2288452bc3683ce2e2cacc0d18e4be60b58"
 
 [[package]]
 name = "pin-utils"
@@ -2459,37 +2756,27 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "8b870d8c151b6f2fb93e84a13146138f05d02ed11c7e7c54f8826aaaf7c9f184"
 
 [[package]]
-name = "pkcs1"
-version = "0.7.5"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c8ffb9f10fa047879315e6625af03c164b16962a5368d724ed16323b68ace47f"
-dependencies = [
- "der",
- "pkcs8",
- "spki",
-]
-
-[[package]]
-name = "pkcs8"
-version = "0.10.2"
+name = "piper"
+version = "0.2.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f950b2377845cebe5cf8b5165cb3cc1a5e0fa5cfa3e1f7f55707d8fd82e0a7b7"
+checksum = "668d31b1c4eba19242f2088b2bf3316b82ca31082a8335764db4e083db7485d4"
 dependencies = [
- "der",
- "spki",
+ "atomic-waker",
+ "fastrand",
+ "futures-io",
 ]
 
 [[package]]
 name = "pkg-config"
-version = "0.3.30"
+version = "0.3.29"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d231b230927b5e4ad203db57bbcbee2802f6bce620b1e4a9024a07d94e2907ec"
+checksum = "2900ede94e305130c13ddd391e0ab7cbaeb783945ae07a279c268cb05109c6cb"
 
 [[package]]
 name = "png"
-version = "0.17.13"
+version = "0.17.11"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "06e4b0d3d1312775e782c86c91a111aa1f910cbb65e1337f9975b5f9a554b5e1"
+checksum = "1f6c3c3e617595665b8ea2ff95a86066be38fb121ff920a9c0eb282abcd1da5a"
 dependencies = [
  "bitflags 1.3.2",
  "crc32fast",
@@ -2499,10 +2786,24 @@ dependencies = [
 ]
 
 [[package]]
-name = "powerfmt"
-version = "0.2.0"
+name = "polling"
+version = "3.4.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "439ee305def115ba05938db6eb1644ff94165c5ab5e9420d1c1bcedbba909391"
+checksum = "30054e72317ab98eddd8561db0f6524df3367636884b7b21b703e4b280a84a14"
+dependencies = [
+ "cfg-if",
+ "concurrent-queue",
+ "pin-project-lite",
+ "rustix",
+ "tracing",
+ "windows-sys 0.52.0",
+]
+
+[[package]]
+name = "pollster"
+version = "0.3.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "22686f4785f02a4fcc856d3b3bb19bf6c8160d103f7a99cc258bddd0251dc7f2"
 
 [[package]]
 name = "ppv-lite86"
@@ -2511,6 +2812,12 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "5b40af805b3121feab8a3c29f04d8ad262fa8e0561883e7653e024ae4479e6de"
 
 [[package]]
+name = "presser"
+version = "0.3.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "e8cf8e6a8aa66ce33f63993ffc4ea4271eb5b0530a9002db8455ea6050c77bfa"
+
+[[package]]
 name = "proc-macro-crate"
 version = "1.3.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -2522,15 +2829,6 @@ dependencies = [
 
 [[package]]
 name = "proc-macro-crate"
-version = "2.0.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7e8366a6159044a37876a2b9817124296703c586a5c92e2c53751fa06d8d43e8"
-dependencies = [
- "toml_edit 0.20.7",
-]
-
-[[package]]
-name = "proc-macro-crate"
 version = "3.1.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "6d37c51ca738a55da99dc0c4a34860fd675453b8b36209178c2249bb13651284"
@@ -2539,333 +2837,244 @@ dependencies = [
 ]
 
 [[package]]
-name = "proc-macro-error"
-version = "1.0.4"
+name = "proc-macro2"
+version = "1.0.78"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "da25490ff9892aab3fcf7c36f08cfb902dd3e71ca0f9f9517bea02a73a5ce38c"
+checksum = "e2422ad645d89c99f8f3e6b88a9fdeca7fabeac836b1002371c4367c8f984aae"
 dependencies = [
- "proc-macro-error-attr",
- "proc-macro2",
- "quote 1.0.36",
- "syn 1.0.109",
- "version_check",
+ "unicode-ident",
 ]
 
 [[package]]
-name = "proc-macro-error-attr"
-version = "1.0.4"
+name = "profiling"
+version = "1.0.14"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a1be40180e52ecc98ad80b184934baf3d0d29f979574e439af5a55274b35f869"
-dependencies = [
- "proc-macro2",
- "quote 1.0.36",
- "version_check",
-]
+checksum = "0f0f7f43585c34e4fdd7497d746bc32e14458cf11c69341cc0587b1d825dde42"
 
 [[package]]
-name = "proc-macro2"
-version = "1.0.79"
+name = "qoi"
+version = "0.4.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e835ff2298f5721608eb1a980ecaee1aef2c132bf95ecc026a11b7bf3c01c02e"
+checksum = "7f6d64c71eb498fe9eae14ce4ec935c555749aef511cca85b5568910d6e48001"
 dependencies = [
- "unicode-ident",
+ "bytemuck",
 ]
 
 [[package]]
-name = "psl-types"
-version = "2.0.11"
+name = "quick-xml"
+version = "0.31.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "33cb294fe86a74cbcf50d4445b37da762029549ebeea341421c7c70370f86cac"
+checksum = "1004a344b30a54e2ee58d66a71b32d2db2feb0a31f9a2d302bf0536f15de2a33"
+dependencies = [
+ "memchr",
+]
 
 [[package]]
-name = "ptr_meta"
-version = "0.1.4"
+name = "quote"
+version = "1.0.35"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0738ccf7ea06b608c10564b31debd4f5bc5e197fc8bfe088f68ae5ce81e7a4f1"
+checksum = "291ec9ab5efd934aaf503a6466c5d5251535d108ee747472c3977cc5acc868ef"
 dependencies = [
- "ptr_meta_derive",
+ "proc-macro2",
 ]
 
 [[package]]
-name = "ptr_meta_derive"
-version = "0.1.4"
+name = "rand"
+version = "0.8.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "16b845dbfca988fa33db069c0e230574d15a3088f147a87b64c7589eb662c9ac"
+checksum = "34af8d1a0e25924bc5b7c43c079c942339d8f0a8b57c39049bef581b46327404"
 dependencies = [
- "proc-macro2",
- "quote 1.0.36",
- "syn 1.0.109",
+ "libc",
+ "rand_chacha",
+ "rand_core",
 ]
 
 [[package]]
-name = "publicsuffix"
-version = "2.2.3"
+name = "rand_chacha"
+version = "0.3.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "96a8c1bda5ae1af7f99a2962e49df150414a43d62404644d98dd5c3a93d07457"
+checksum = "e6c10a63a0fa32252be49d21e7709d4d4baf8d231c2dbce1eaa8141b9b127d88"
 dependencies = [
- "idna 0.3.0",
- "psl-types",
+ "ppv-lite86",
+ "rand_core",
 ]
 
 [[package]]
-name = "qqmusic-rs"
-version = "0.1.0"
+name = "rand_core"
+version = "0.6.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c7698cb357cfa1a75f5a2071469345ede01a6c4ee83a2ff2a88f9e481893f341"
+checksum = "ec0be4795e2f6a28069bec0b5ff3e2ac9bafc99e6a9a7dc3547996c5c816922c"
 dependencies = [
- "serde",
- "serde_json",
- "url",
+ "getrandom",
 ]
 
 [[package]]
-name = "quote"
-version = "0.3.15"
+name = "range-alloc"
+version = "0.1.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7a6e920b65c65f10b2ae65c831a81a073a89edd28c7cce89475bff467ab4167a"
+checksum = "9c8a99fddc9f0ba0a85884b8d14e3592853e787d581ca1816c91349b10e4eeab"
 
 [[package]]
-name = "quote"
-version = "1.0.36"
+name = "rangemap"
+version = "1.4.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0fa76aaf39101c457836aec0ce2316dbdc3ab723cdda1c6bd4e6ad4208acaca7"
-dependencies = [
- "proc-macro2",
-]
+checksum = "977b1e897f9d764566891689e642653e5ed90c6895106acd005eb4c1d0203991"
 
 [[package]]
-name = "radium"
-version = "0.7.0"
+name = "raw-window-handle"
+version = "0.5.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "dc33ff2d4973d518d823d61aa239014831e521c75da58e3df4840d3f47749d09"
+checksum = "f2ff9a1f06a88b01621b7ae906ef0211290d1c8a168a15542486a8f61c0833b9"
 
 [[package]]
-name = "rand"
-version = "0.8.5"
+name = "raw-window-handle"
+version = "0.6.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "34af8d1a0e25924bc5b7c43c079c942339d8f0a8b57c39049bef581b46327404"
+checksum = "42a9830a0e1b9fb145ebb365b8bc4ccd75f290f98c0247deafbbe2c75cefb544"
+
+[[package]]
+name = "rayon"
+version = "1.8.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "fa7237101a77a10773db45d62004a272517633fbcc3df19d96455ede1122e051"
 dependencies = [
- "libc",
- "rand_chacha",
- "rand_core",
+ "either",
+ "rayon-core",
 ]
 
 [[package]]
-name = "rand_chacha"
-version = "0.3.1"
+name = "rayon-core"
+version = "1.12.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e6c10a63a0fa32252be49d21e7709d4d4baf8d231c2dbce1eaa8141b9b127d88"
+checksum = "1465873a3dfdaa8ae7cb14b4383657caab0b3e8a0aa9ae8e04b044854c8dfce2"
 dependencies = [
- "ppv-lite86",
- "rand_core",
+ "crossbeam-deque",
+ "crossbeam-utils",
 ]
 
 [[package]]
-name = "rand_core"
-version = "0.6.4"
+name = "read-fonts"
+version = "0.15.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ec0be4795e2f6a28069bec0b5ff3e2ac9bafc99e6a9a7dc3547996c5c816922c"
+checksum = "a1362980db95801b70031dd592dc052a44b1810ca9da8fbcf7b25983f3174ed0"
 dependencies = [
- "getrandom",
+ "font-types",
 ]
 
 [[package]]
 name = "redox_syscall"
-version = "0.4.1"
+version = "0.2.16"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4722d768eff46b75989dd134e5c353f0d6296e5aaa3132e776cbdb56be7731aa"
+checksum = "fb5a58c1855b4b6819d59012155603f0b22ad30cad752600aadfcb695265519a"
 dependencies = [
  "bitflags 1.3.2",
 ]
 
 [[package]]
-name = "redox_users"
-version = "0.4.5"
+name = "redox_syscall"
+version = "0.3.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "bd283d9651eeda4b2a83a43c1c91b266c40fd76ecd39a50a8c630ae69dc72891"
+checksum = "567664f262709473930a4bf9e51bf2ebf3348f2e748ccc50dea20646858f8f29"
 dependencies = [
- "getrandom",
- "libredox",
- "thiserror",
+ "bitflags 1.3.2",
 ]
 
 [[package]]
-name = "regex"
-version = "1.10.4"
+name = "redox_syscall"
+version = "0.4.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c117dbdfde9c8308975b6a18d71f3f385c89461f7b3fb054288ecf2a2058ba4c"
+checksum = "4722d768eff46b75989dd134e5c353f0d6296e5aaa3132e776cbdb56be7731aa"
 dependencies = [
- "aho-corasick",
- "memchr",
- "regex-automata 0.4.6",
- "regex-syntax 0.8.3",
+ "bitflags 1.3.2",
 ]
 
 [[package]]
-name = "regex-automata"
-version = "0.1.10"
+name = "regex"
+version = "1.10.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6c230d73fb8d8c1b9c0b3135c5142a8acee3a0558fb8db5cf1cb65f8d7862132"
+checksum = "b62dbe01f0b06f9d8dc7d49e05a0785f153b00b2c227856282f671e0318c9b15"
 dependencies = [
- "regex-syntax 0.6.29",
+ "aho-corasick",
+ "memchr",
+ "regex-automata",
+ "regex-syntax",
 ]
 
 [[package]]
 name = "regex-automata"
-version = "0.4.6"
+version = "0.4.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "86b83b8b9847f9bf95ef68afb0b8e6cdb80f498442f5179a29fad448fcc1eaea"
+checksum = "5bb987efffd3c6d0d8f5f89510bb458559eab11e4f869acb20bf845e016259cd"
 dependencies = [
  "aho-corasick",
  "memchr",
- "regex-syntax 0.8.3",
+ "regex-syntax",
 ]
 
 [[package]]
 name = "regex-syntax"
-version = "0.6.29"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f162c6dd7b008981e4d40210aca20b4bd0f9b60ca9271061b07f78537722f2e1"
-
-[[package]]
-name = "regex-syntax"
-version = "0.8.3"
+version = "0.8.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "adad44e29e4c806119491a7f06f03de4d1af22c3a680dd47f1e6e179439d1f56"
+checksum = "c08c74e62047bb2de4ff487b251e4a92e24f48745648451635cec7d591162d9f"
 
 [[package]]
-name = "rend"
-version = "0.4.2"
+name = "renderdoc-sys"
+version = "1.0.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "71fe3824f5629716b1589be05dacd749f6aa084c87e00e016714a8cdfccc997c"
-dependencies = [
- "bytecheck",
-]
+checksum = "216080ab382b992234dda86873c18d4c48358f5cfcb70fd693d7f6f2131b628b"
 
 [[package]]
-name = "reqwest"
-version = "0.12.3"
+name = "rfd"
+version = "0.14.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3e6cc1e89e689536eb5aeede61520e874df5a4707df811cd5da4aa5fbb2aae19"
+checksum = "373d2fc6310e2d14943d4e66ebed5b774a2b6b3b1610e7377edf124fb2760d6b"
 dependencies = [
- "base64",
- "bytes",
- "cookie 0.17.0",
- "cookie_store",
- "encoding_rs",
- "futures-core",
- "futures-util",
- "h2",
- "http",
- "http-body",
- "http-body-util",
- "hyper",
- "hyper-tls",
- "hyper-util",
- "ipnet",
+ "ashpd",
+ "block",
+ "dispatch",
  "js-sys",
  "log",
- "mime",
- "native-tls",
- "once_cell",
- "percent-encoding",
- "pin-project-lite",
- "rustls-pemfile",
- "serde",
- "serde_json",
- "serde_urlencoded",
- "sync_wrapper",
- "system-configuration",
- "tokio",
- "tokio-native-tls",
- "tower-service",
- "url",
+ "objc",
+ "objc-foundation",
+ "objc_id",
+ "pollster",
+ "raw-window-handle 0.6.0",
+ "urlencoding",
  "wasm-bindgen",
  "wasm-bindgen-futures",
  "web-sys",
- "winreg",
-]
-
-[[package]]
-name = "rkyv"
-version = "0.7.44"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5cba464629b3394fc4dbc6f940ff8f5b4ff5c7aef40f29166fd4ad12acbc99c0"
-dependencies = [
- "bitvec",
- "bytecheck",
- "bytes",
- "hashbrown 0.12.3",
- "ptr_meta",
- "rend",
- "rkyv_derive",
- "seahash",
- "tinyvec",
- "uuid",
+ "windows-sys 0.48.0",
 ]
 
 [[package]]
-name = "rkyv_derive"
-version = "0.7.44"
+name = "riff"
+version = "1.0.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a7dddfff8de25e6f62b9d64e6e432bf1c6736c57d20323e15ee10435fbda7c65"
-dependencies = [
- "proc-macro2",
- "quote 1.0.36",
- "syn 1.0.109",
-]
+checksum = "b9b1a3d5f46d53f4a3478e2be4a5a5ce5108ea58b100dcd139830eae7f79a3a1"
 
 [[package]]
-name = "rsa"
-version = "0.9.6"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5d0e5124fcb30e76a7e79bfee683a2746db83784b86289f6251b54b7950a0dfc"
-dependencies = [
- "const-oid",
- "digest",
- "num-bigint-dig",
- "num-integer",
- "num-traits",
- "pkcs1",
- "pkcs8",
- "rand_core",
- "signature",
- "spki",
- "subtle",
- "zeroize",
-]
-
-[[package]]
-name = "rust_decimal"
-version = "1.35.0"
+name = "ron"
+version = "0.8.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1790d1c4c0ca81211399e0e0af16333276f375209e71a37b67698a373db5b47a"
+checksum = "b91f7eff05f748767f183df4320a63d6936e9c6107d97c9e6bdd9784f4289c94"
 dependencies = [
- "arrayvec",
- "borsh",
- "bytes",
- "num-traits",
- "rand",
- "rkyv",
+ "base64",
+ "bitflags 2.4.2",
  "serde",
- "serde_json",
+ "serde_derive",
 ]
 
 [[package]]
-name = "rust_decimal_macros"
-version = "1.34.2"
+name = "roxmltree"
+version = "0.19.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e418701588729bef95e7a655f2b483ad64bb97c46e8e79fde83efd92aaab6d82"
-dependencies = [
- "quote 1.0.36",
- "rust_decimal",
-]
+checksum = "3cd14fd5e3b777a7422cca79358c57a8f6e3a703d9ac187448d0daf220c2407f"
 
 [[package]]
-name = "rustc-demangle"
-version = "0.1.23"
+name = "rustc-hash"
+version = "1.1.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d626bb9dae77e28219937af045c257c28bfd3f69333c512553507f5f9798cb76"
+checksum = "08d43f7aa6b08d49f382cde6a7982047c3426db949b1424bc4b7ec9ae12c6ce2"
 
 [[package]]
 name = "rustc_version"
@@ -2878,53 +3087,48 @@ dependencies = [
 
 [[package]]
 name = "rustix"
-version = "0.38.32"
+version = "0.38.31"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "65e04861e65f21776e67888bfbea442b3642beaa0138fdb1dd7a84a52dffdb89"
+checksum = "6ea3e1a662af26cd7a3ba09c0297a31af215563ecf42817c98df621387f4e949"
 dependencies = [
- "bitflags 2.5.0",
+ "bitflags 2.4.2",
  "errno",
  "libc",
- "linux-raw-sys",
+ "linux-raw-sys 0.4.13",
  "windows-sys 0.52.0",
 ]
 
 [[package]]
-name = "rustls-pemfile"
-version = "2.1.2"
+name = "rustybuzz"
+version = "0.11.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "29993a25686778eb88d4189742cd713c9bce943bc54251a33509dc63cbacf73d"
+checksum = "2ee8fe2a8461a0854a37101fe7a1b13998d0cfa987e43248e81d2a5f4570f6fa"
 dependencies = [
- "base64",
- "rustls-pki-types",
+ "bitflags 1.3.2",
+ "bytemuck",
+ "libm",
+ "smallvec",
+ "ttf-parser 0.20.0",
+ "unicode-bidi-mirroring",
+ "unicode-ccc",
+ "unicode-properties",
+ "unicode-script",
 ]
 
 [[package]]
-name = "rustls-pki-types"
-version = "1.4.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ecd36cc4259e3e4514335c4a138c6b43171a8d61d8f5c9348f9fc7529416f247"
-
-[[package]]
-name = "rustversion"
-version = "1.0.15"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "80af6f9131f277a45a3fba6ce8e2258037bb0477a67e610d3c1fe046ab31de47"
-
-[[package]]
-name = "ryu"
-version = "1.0.17"
+name = "same-file"
+version = "1.0.6"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e86697c916019a8588c99b5fac3cead74ec0b4b819707a682fd4d23fa0ce1ba1"
+checksum = "93fc1dc3aaa9bfed95e02e6eadabb4baf7e3078b0bd1b4d7b6b0b68378900502"
+dependencies = [
+ "winapi-util",
+]
 
 [[package]]
-name = "schannel"
-version = "0.1.23"
+name = "scoped-tls"
+version = "1.0.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "fbc91545643bcf3a0bbb6569265615222618bdf33ce4ffbbd13c4bbd4c093534"
-dependencies = [
- "windows-sys 0.52.0",
-]
+checksum = "e1cf6437eb19a8f4a6cc0f7dca544973b0b78843adbfeb3683d1a94a0024a294"
 
 [[package]]
 name = "scopeguard"
@@ -2933,80 +3137,59 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "94143f37725109f92c262ed2cf5e59bce7498c01bcc1502d7b9afe439a4e9f49"
 
 [[package]]
-name = "seahash"
-version = "4.1.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1c107b6f4780854c8b126e228ea8869f4d7b71260f962fefb57b996b8959ba6b"
-
-[[package]]
-name = "security-framework"
-version = "2.10.0"
+name = "sctk-adwaita"
+version = "0.8.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "770452e37cad93e0a50d5abc3990d2bc351c36d0328f86cefec2f2fb206eaef6"
+checksum = "82b2eaf3a5b264a521b988b2e73042e742df700c4f962cde845d1541adb46550"
 dependencies = [
- "bitflags 1.3.2",
- "core-foundation",
- "core-foundation-sys",
- "libc",
- "security-framework-sys",
+ "ab_glyph",
+ "log",
+ "memmap2 0.9.4",
+ "smithay-client-toolkit",
+ "tiny-skia",
 ]
 
 [[package]]
-name = "security-framework-sys"
-version = "2.10.0"
+name = "self_cell"
+version = "1.0.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "41f3cc463c0ef97e11c3461a9d3787412d30e8e7eb907c79180c4a57bf7c04ef"
-dependencies = [
- "core-foundation-sys",
- "libc",
-]
+checksum = "58bf37232d3bb9a2c4e641ca2a11d83b5062066f88df7fed36c28772046d65ba"
 
 [[package]]
 name = "semver"
-version = "1.0.22"
+version = "1.0.21"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "92d43fe69e652f3df9bdc2b85b2854a0825b86e4fb76bc44d945137d053639ca"
+checksum = "b97ed7a9823b74f99c7742f5336af7be5ecd3eeafcb1507d1fa93347b1d589b0"
 
 [[package]]
 name = "serde"
-version = "1.0.197"
+version = "1.0.196"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3fb1c873e1b9b056a4dc4c0c198b24c3ffa059243875552b2bd0933b1aee4ce2"
+checksum = "870026e60fa08c69f064aa766c10f10b1d62db9ccd4d0abb206472bee0ce3b32"
 dependencies = [
  "serde_derive",
 ]
 
 [[package]]
 name = "serde_derive"
-version = "1.0.197"
+version = "1.0.196"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7eb0b34b42edc17f6b7cac84a52a1c5f0e1bb2227e997ca9011ea3dd34e8610b"
+checksum = "33c85360c95e7d137454dc81d9a4ed2b8efd8fbe19cee57357b32b9771fccb67"
 dependencies = [
  "proc-macro2",
- "quote 1.0.36",
- "syn 2.0.58",
-]
-
-[[package]]
-name = "serde_json"
-version = "1.0.115"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "12dc5c46daa8e9fdf4f5e71b6cf9a53f2487da0e86e55808e2d35539666497dd"
-dependencies = [
- "itoa",
- "ryu",
- "serde",
+ "quote",
+ "syn 2.0.48",
 ]
 
 [[package]]
 name = "serde_repr"
-version = "0.1.19"
+version = "0.1.18"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6c64451ba24fc7a6a2d60fc75dd9c83c90903b19028d4eff35e88fc1e86564e9"
+checksum = "0b2e6b945e9d3df726b65d6ee24060aff8e3533d431f677a9695db04eff9dfdb"
 dependencies = [
  "proc-macro2",
- "quote 1.0.36",
- "syn 2.0.58",
+ "quote",
+ "syn 2.0.48",
 ]
 
 [[package]]
@@ -3019,25 +3202,21 @@ dependencies = [
 ]
 
 [[package]]
-name = "serde_urlencoded"
-version = "0.7.1"
+name = "sha1"
+version = "0.10.6"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d3491c14715ca2294c4d6a88f15e84739788c1d030eed8c110436aafdaa2f3fd"
+checksum = "e3bf829a2d51ab4a5ddf1352d8470c140cadc8301b2ae1789db023f01cedd6ba"
 dependencies = [
- "form_urlencoded",
- "itoa",
- "ryu",
- "serde",
+ "cfg-if",
+ "cpufeatures",
+ "digest",
 ]
 
 [[package]]
-name = "sharded-slab"
-version = "0.1.7"
+name = "shlex"
+version = "1.3.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f40ca3c46823713e0d4209592e8d6e826aa57e928f09752619fc696c499637f6"
-dependencies = [
- "lazy_static",
-]
+checksum = "0fda2ff0d084019ba4d7c6f371c95d8fd75ce3524c3cb8fb653a3023f6323e64"
 
 [[package]]
 name = "signal-hook-registry"
@@ -3049,28 +3228,12 @@ dependencies = [
 ]
 
 [[package]]
-name = "signature"
-version = "2.2.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "77549399552de45a898a580c1b41d445bf730df867cc44e6c0233bbc4b8329de"
-dependencies = [
- "digest",
- "rand_core",
-]
-
-[[package]]
 name = "simd-adler32"
 version = "0.3.7"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "d66dc143e6b11c1eddc06d5c423cfc97062865baf299914ab64caa38182078fe"
 
 [[package]]
-name = "simdutf8"
-version = "0.1.4"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f27f6278552951f1f2b8cf9da965d10969b2efdea95a6ec47987ab46edfe263a"
-
-[[package]]
 name = "siphasher"
 version = "0.3.11"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -3086,96 +3249,139 @@ dependencies = [
 ]
 
 [[package]]
+name = "slotmap"
+version = "1.0.7"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "dbff4acf519f630b3a3ddcfaea6c06b42174d9a44bc70c620e9ed1649d58b82a"
+dependencies = [
+ "version_check",
+]
+
+[[package]]
 name = "smallvec"
-version = "1.13.2"
+version = "1.13.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3c5e1a9a646d36c3599cd173a41282daf47c44583ad367b8e6837255952e5c67"
+checksum = "e6ecd384b10a64542d77071bd64bd7b231f4ed5940fba55e98c3de13824cf3d7"
 
 [[package]]
-name = "socket2"
-version = "0.5.6"
+name = "smithay-client-toolkit"
+version = "0.18.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "05ffd9c0a93b7543e062e759284fcf5f5e3b098501104bfbdde4d404db792871"
+checksum = "60e3d9941fa3bacf7c2bf4b065304faa14164151254cd16ce1b1bc8fc381600f"
 dependencies = [
+ "bitflags 2.4.2",
+ "calloop",
+ "calloop-wayland-source",
+ "cursor-icon",
  "libc",
- "windows-sys 0.52.0",
+ "log",
+ "memmap2 0.9.4",
+ "rustix",
+ "thiserror",
+ "wayland-backend",
+ "wayland-client",
+ "wayland-csd-frame",
+ "wayland-cursor",
+ "wayland-protocols",
+ "wayland-protocols-wlr",
+ "wayland-scanner",
+ "xkeysym",
 ]
 
 [[package]]
-name = "sorensen"
-version = "0.2.0"
+name = "smol_str"
+version = "0.2.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f480a5525538a706e6cb343127173f9b2fc402dea20cfdbbe6e91df018baedb8"
+checksum = "e6845563ada680337a52d43bb0b29f396f2d911616f6573012645b9e3d048a49"
 dependencies = [
- "assert_float_eq",
- "hashbrown 0.12.3",
+ "serde",
 ]
 
 [[package]]
-name = "spin"
-version = "0.5.2"
+name = "softbuffer"
+version = "0.4.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6e63cff320ae2c57904679ba7cb63280a3dc4613885beafb148ee7bf9aa9042d"
+checksum = "071916a85d1db274b4ed57af3a14afb66bd836ae7f82ebb6f1fd3455107830d9"
+dependencies = [
+ "as-raw-xcb-connection",
+ "bytemuck",
+ "cfg_aliases 0.2.0",
+ "cocoa",
+ "core-graphics",
+ "drm",
+ "fastrand",
+ "foreign-types",
+ "js-sys",
+ "log",
+ "memmap2 0.9.4",
+ "objc",
+ "raw-window-handle 0.6.0",
+ "redox_syscall 0.4.1",
+ "rustix",
+ "tiny-xlib",
+ "wasm-bindgen",
+ "wayland-backend",
+ "wayland-client",
+ "wayland-sys",
+ "web-sys",
+ "windows-sys 0.52.0",
+ "x11rb",
+]
 
 [[package]]
-name = "spki"
-version = "0.7.3"
+name = "soundfont"
+version = "0.0.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d91ed6c858b01f942cd56b37a94b3e0a1798290327d1236e4d9cf4eaca44d29d"
+checksum = "88f3c4ee9be1386dc5d4f33fb1df6f813eb2f49510cb24e8bfd30784f4853fce"
 dependencies = [
- "base64ct",
- "der",
+ "riff",
 ]
 
 [[package]]
-name = "strsim"
-version = "0.8.0"
+name = "spin"
+version = "0.9.8"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8ea5119cdb4c55b55d432abb513a0429384878c15dde60cc77b1c99de1a95a6a"
+checksum = "6980e8d7511241f8acf4aebddbb1ff938df5eebe98691418c4468d0b72a96a67"
+dependencies = [
+ "lock_api",
+]
 
 [[package]]
-name = "strsim"
-version = "0.10.0"
+name = "spirv"
+version = "0.3.0+sdk-1.3.268.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "73473c0e59e6d5812c5dfe2a064a6444949f089e20eec9a2e5506596494e4623"
+checksum = "eda41003dc44290527a59b13432d4a0379379fa074b70174882adfbdfd917844"
+dependencies = [
+ "bitflags 2.4.2",
+]
 
 [[package]]
-name = "strum"
-version = "0.26.2"
+name = "static_assertions"
+version = "1.1.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5d8cec3501a5194c432b2b7976db6b7d10ec95c253208b45f83f7136aa985e29"
-dependencies = [
- "strum_macros",
-]
+checksum = "a2eb9349b6444b326872e140eb1cf5e7c522154d69e7a0ffb0fb81c06b37543f"
 
 [[package]]
-name = "strum_macros"
-version = "0.26.2"
+name = "strict-num"
+version = "0.1.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c6cf59daf282c0a494ba14fd21610a0325f9f90ec9d1231dea26bcb1d696c946"
-dependencies = [
- "heck 0.4.1",
- "proc-macro2",
- "quote 1.0.36",
- "rustversion",
- "syn 2.0.58",
-]
+checksum = "6637bab7722d379c8b41ba849228d680cc12d0a45ba1fa2b48f2a30577a06731"
 
 [[package]]
-name = "subtle"
-version = "2.5.0"
+name = "svg_fmt"
+version = "0.4.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "81cdd64d312baedb58e21336b31bc043b77e01cc99033ce76ef539f78e965ebc"
+checksum = "8fb1df15f412ee2e9dfc1c504260fa695c1c3f10fe9f4a6ee2d2184d7d6450e2"
 
 [[package]]
-name = "syn"
-version = "0.11.11"
+name = "swash"
+version = "0.1.12"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d3b891b9015c88c576343b9b3e41c2c11a51c219ef067b264bd9c8aa9b441dad"
+checksum = "d06ff4664af8923625604261c645f5c4cc610cc83c84bec74b50d76237089de7"
 dependencies = [
- "quote 0.3.15",
- "synom",
- "unicode-xid",
+ "read-fonts",
+ "yazi",
+ "zeno",
 ]
 
 [[package]]
@@ -3185,105 +3391,35 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "72b64191b275b66ffe2469e8af2c1cfe3bafa67b529ead792a6d0160888b4237"
 dependencies = [
  "proc-macro2",
- "quote 1.0.36",
+ "quote",
  "unicode-ident",
 ]
 
 [[package]]
 name = "syn"
-version = "2.0.58"
+version = "2.0.48"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "44cfb93f38070beee36b3fef7d4f5a16f27751d94b187b666a5cc5e9b0d30687"
+checksum = "0f3531638e407dfc0814761abb7c00a5b54992b849452a0646b7f65c9f770f3f"
 dependencies = [
  "proc-macro2",
- "quote 1.0.36",
+ "quote",
  "unicode-ident",
 ]
 
 [[package]]
-name = "syn_derive"
-version = "0.1.8"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1329189c02ff984e9736652b1631330da25eaa6bc639089ed4915d25446cbe7b"
-dependencies = [
- "proc-macro-error",
- "proc-macro2",
- "quote 1.0.36",
- "syn 2.0.58",
-]
-
-[[package]]
-name = "sync_wrapper"
-version = "0.1.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2047c6ded9c721764247e62cd3b03c09ffc529b2ba5b10ec482ae507a4a70160"
-
-[[package]]
-name = "synom"
-version = "0.11.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a393066ed9010ebaed60b9eafa373d4b1baac186dd7e008555b0f702b51945b6"
-dependencies = [
- "unicode-xid",
-]
-
-[[package]]
-name = "system-configuration"
-version = "0.5.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ba3a3adc5c275d719af8cb4272ea1c4a6d668a777f37e115f6d11ddbc1c8e0e7"
-dependencies = [
- "bitflags 1.3.2",
- "core-foundation",
- "system-configuration-sys",
-]
-
-[[package]]
-name = "system-configuration-sys"
-version = "0.5.0"
+name = "sys-locale"
+version = "0.3.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a75fb188eb626b924683e3b95e3a48e63551fcfb51949de2f06a9d91dbee93c9"
+checksum = "e801cf239ecd6ccd71f03d270d67dd53d13e90aab208bf4b8fe4ad957ea949b0"
 dependencies = [
- "core-foundation-sys",
  "libc",
 ]
 
 [[package]]
-name = "system-deps"
-version = "6.2.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a3e535eb8dded36d55ec13eddacd30dec501792ff23a0b1682c38601b8cf2349"
-dependencies = [
- "cfg-expr",
- "heck 0.5.0",
- "pkg-config",
- "toml",
- "version-compare",
-]
-
-[[package]]
-name = "tap"
-version = "1.0.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "55937e1799185b12863d447f42597ed69d9928686b8d88a1df17376a097d8369"
-
-[[package]]
-name = "target-lexicon"
-version = "0.12.14"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e1fc403891a21bcfb7c37834ba66a547a8f402146eba7265b5a6d88059c9ff2f"
-
-[[package]]
-name = "temp-dir"
-version = "0.1.13"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1f227968ec00f0e5322f9b8173c7a0cbcff6181a0a5b28e9892491c286277231"
-
-[[package]]
 name = "tempfile"
-version = "3.10.1"
+version = "3.10.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "85b77fafb263dd9d05cbeac119526425676db3784113aa9295c88498cbf8bff1"
+checksum = "a365e8cd18e44762ef95d87f284f4b5cd04107fec2ff3052bd6a3e6069669e67"
 dependencies = [
  "cfg-if",
  "fastrand",
@@ -3292,73 +3428,81 @@ dependencies = [
 ]
 
 [[package]]
-name = "textwrap"
-version = "0.11.0"
+name = "termcolor"
+version = "1.4.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d326610f408c7a4eb6f51c37c330e496b08506c9457c9d34287ecc38809fb060"
+checksum = "06794f8f6c5c898b3275aebefa6b8a1cb24cd2c6c79397ab15774837a0bc5755"
 dependencies = [
- "unicode-width",
+ "winapi-util",
 ]
 
 [[package]]
 name = "thiserror"
-version = "1.0.58"
+version = "1.0.56"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "03468839009160513471e86a034bb2c5c0e4baae3b43f79ffc55c4a5427b3297"
+checksum = "d54378c645627613241d077a3a79db965db602882668f9136ac42af9ecb730ad"
 dependencies = [
  "thiserror-impl",
 ]
 
 [[package]]
 name = "thiserror-impl"
-version = "1.0.58"
+version = "1.0.56"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c61f3ba182994efc43764a46c018c347bc492c79f024e705f46567b418f6d4f7"
+checksum = "fa0faa943b50f3db30a20aa7e265dbc66076993efed8463e8de414e5d06d3471"
 dependencies = [
  "proc-macro2",
- "quote 1.0.36",
- "syn 2.0.58",
+ "quote",
+ "syn 2.0.48",
 ]
 
 [[package]]
-name = "thread_local"
-version = "1.1.8"
+name = "tiff"
+version = "0.9.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8b9ef9bad013ada3808854ceac7b46812a6465ba368859a37e2100283d2d719c"
+checksum = "ba1310fcea54c6a9a4fd1aad794ecc02c31682f6bfbecdf460bf19533eed1e3e"
 dependencies = [
- "cfg-if",
- "once_cell",
+ "flate2",
+ "jpeg-decoder",
+ "weezl",
 ]
 
 [[package]]
-name = "time"
-version = "0.3.36"
+name = "tiny-skia"
+version = "0.11.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5dfd88e563464686c916c7e46e623e520ddc6d79fa6641390f2e3fa86e83e885"
+checksum = "83d13394d44dae3207b52a326c0c85a8bf87f1541f23b0d143811088497b09ab"
 dependencies = [
- "deranged",
- "itoa",
- "num-conv",
- "powerfmt",
- "serde",
- "time-core",
- "time-macros",
+ "arrayref",
+ "arrayvec",
+ "bytemuck",
+ "cfg-if",
+ "log",
+ "png",
+ "tiny-skia-path",
 ]
 
 [[package]]
-name = "time-core"
-version = "0.1.2"
+name = "tiny-skia-path"
+version = "0.11.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ef927ca75afb808a4d64dd374f00a2adf8d0fcff8e7b184af886c3c87ec4a3f3"
+checksum = "9c9e7fc0c2e86a30b117d0462aa261b72b7a99b7ebd7deb3a14ceda95c5bdc93"
+dependencies = [
+ "arrayref",
+ "bytemuck",
+ "strict-num",
+]
 
 [[package]]
-name = "time-macros"
-version = "0.2.18"
+name = "tiny-xlib"
+version = "0.2.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3f252a68540fde3a3877aeea552b832b40ab9a69e318efd078774a01ddee1ccf"
+checksum = "d4098d49269baa034a8d1eae9bd63e9fa532148d772121dace3bcd6a6c98eb6d"
 dependencies = [
- "num-conv",
- "time-core",
+ "as-raw-xcb-connection",
+ "ctor",
+ "libloading 0.8.1",
+ "tracing",
 ]
 
 [[package]]
@@ -3377,69 +3521,15 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "1f3ccbac311fea05f86f61904b462b55fb3df8837a366dfc601a0161d0532f20"
 
 [[package]]
-name = "tokio"
-version = "1.37.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1adbebffeca75fcfd058afa480fb6c0b81e165a0323f9c9d39c9697e37c46787"
-dependencies = [
- "backtrace",
- "bytes",
- "libc",
- "mio",
- "num_cpus",
- "parking_lot",
- "pin-project-lite",
- "signal-hook-registry",
- "socket2",
- "tokio-macros",
- "windows-sys 0.48.0",
-]
-
-[[package]]
-name = "tokio-macros"
-version = "2.2.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5b8a1e28f2deaa14e508979454cb3a223b10b938b45af148bc0986de36f1923b"
-dependencies = [
- "proc-macro2",
- "quote 1.0.36",
- "syn 2.0.58",
-]
-
-[[package]]
-name = "tokio-native-tls"
-version = "0.3.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "bbae76ab933c85776efabc971569dd6119c580d8f5d448769dec1764bf796ef2"
-dependencies = [
- "native-tls",
- "tokio",
-]
-
-[[package]]
-name = "tokio-util"
-version = "0.7.10"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5419f34732d9eb6ee4c3578b7989078579b7f039cbbb9ca2c4da015749371e15"
-dependencies = [
- "bytes",
- "futures-core",
- "futures-sink",
- "pin-project-lite",
- "tokio",
- "tracing",
-]
-
-[[package]]
 name = "toml"
-version = "0.8.12"
+version = "0.8.10"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e9dd1545e8208b4a5af1aa9bbd0b4cf7e9ea08fabc5d0a5c67fcaafa17433aa3"
+checksum = "9a9aad4a3066010876e8dcf5a8a06e70a558751117a145c6ce2b82c2e2054290"
 dependencies = [
  "serde",
  "serde_spanned",
  "toml_datetime",
- "toml_edit 0.22.9",
+ "toml_edit 0.22.4",
 ]
 
 [[package]]
@@ -3459,18 +3549,7 @@ checksum = "1b5bb770da30e5cbfde35a2d7b9b8a2c4b8ef89548a7a6aeab5c9a576e3e7421"
 dependencies = [
  "indexmap",
  "toml_datetime",
- "winnow 0.5.40",
-]
-
-[[package]]
-name = "toml_edit"
-version = "0.20.7"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "70f427fce4d84c72b5b732388bf4a9f4531b53f74e2887e3ecb2481f68f66d81"
-dependencies = [
- "indexmap",
- "toml_datetime",
- "winnow 0.5.40",
+ "winnow",
 ]
 
 [[package]]
@@ -3481,57 +3560,28 @@ checksum = "6a8534fd7f78b5405e860340ad6575217ce99f38d4d5c8f2442cb5ecb50090e1"
 dependencies = [
  "indexmap",
  "toml_datetime",
- "winnow 0.5.40",
+ "winnow",
 ]
 
 [[package]]
 name = "toml_edit"
-version = "0.22.9"
+version = "0.22.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8e40bb779c5187258fd7aad0eb68cb8706a0a81fa712fbea808ab43c4b8374c4"
+checksum = "0c9ffdf896f8daaabf9b66ba8e77ea1ed5ed0f72821b398aba62352e95062951"
 dependencies = [
  "indexmap",
  "serde",
  "serde_spanned",
  "toml_datetime",
- "winnow 0.6.6",
+ "winnow",
 ]
 
 [[package]]
-name = "tower"
-version = "0.4.13"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b8fa9be0de6cf49e536ce1851f987bd21a43b771b09473c3549a6c853db37c1c"
-dependencies = [
- "futures-core",
- "futures-util",
- "pin-project",
- "pin-project-lite",
- "tokio",
- "tower-layer",
- "tower-service",
- "tracing",
-]
-
-[[package]]
-name = "tower-layer"
-version = "0.3.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c20c8dbed6283a09604c3e69b4b7eeb54e298b8a600d4d5ecb5ad39de609f1d0"
-
-[[package]]
-name = "tower-service"
-version = "0.3.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b6bc1c9ce2b5135ac7f93c72918fc37feb872bdc6a5533a8b85eb4b86bfdae52"
-
-[[package]]
 name = "tracing"
 version = "0.1.40"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "c3523ab5a71916ccf420eebdf5521fcef02141234bbc0b8a49f2fdc4544364ef"
 dependencies = [
- "log",
  "pin-project-lite",
  "tracing-attributes",
  "tracing-core",
@@ -3544,8 +3594,8 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "34704c8d6ebcbc939824180af020566b01a7c01f80641264eba0999f6c2b6be7"
 dependencies = [
  "proc-macro2",
- "quote 1.0.36",
- "syn 2.0.58",
+ "quote",
+ "syn 2.0.48",
 ]
 
 [[package]]
@@ -3555,85 +3605,54 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "c06d3da6113f116aaee68e4d601191614c9053067f9ab7f6edbcb161237daa54"
 dependencies = [
  "once_cell",
- "valuable",
 ]
 
 [[package]]
-name = "tracing-journald"
-version = "0.3.0"
+name = "ttf-parser"
+version = "0.19.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ba316a74e8fc3c3896a850dba2375928a9fa171b085ecddfc7c054d39970f3fd"
-dependencies = [
- "libc",
- "tracing-core",
- "tracing-subscriber",
-]
+checksum = "49d64318d8311fc2668e48b63969f4343e0a85c4a109aa8460d6672e364b8bd1"
 
 [[package]]
-name = "tracing-log"
-version = "0.2.0"
+name = "ttf-parser"
+version = "0.20.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ee855f1f400bd0e5c02d150ae5de3840039a3f54b025156404e34c23c03f47c3"
-dependencies = [
- "log",
- "once_cell",
- "tracing-core",
-]
+checksum = "17f77d76d837a7830fe1d4f12b7b4ba4192c1888001c7164257e4bc6d21d96b4"
 
 [[package]]
-name = "tracing-subscriber"
-version = "0.3.18"
+name = "typenum"
+version = "1.17.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ad0f048c97dbd9faa9b7df56362b8ebcaa52adb06b498c050d2f4e32f90a7a8b"
-dependencies = [
- "matchers",
- "nu-ansi-term",
- "once_cell",
- "regex",
- "sharded-slab",
- "smallvec",
- "thread_local",
- "tracing",
- "tracing-core",
- "tracing-log",
-]
+checksum = "42ff0bf0c66b8238c6f3b578df37d0b7848e55df8577b3f74f92a69acceeb825"
 
 [[package]]
-name = "tray-icon"
-version = "0.13.4"
+name = "uds_windows"
+version = "1.1.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a97ec55956c54569e74209ae9d29a7a79193b252d17a6ac28bcffd4c11a384ad"
+checksum = "89daebc3e6fd160ac4aa9fc8b3bf71e1f74fbf92367ae71fb83a037e8bf164b9"
 dependencies = [
- "cocoa",
- "core-graphics",
- "crossbeam-channel",
- "dirs-next",
- "libappindicator",
- "muda",
- "objc",
- "once_cell",
- "png",
- "thiserror",
- "windows-sys 0.52.0",
+ "memoffset",
+ "tempfile",
+ "winapi",
 ]
 
 [[package]]
-name = "try-lock"
-version = "0.2.5"
+name = "unicode-bidi"
+version = "0.3.15"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e421abadd41a4225275504ea4d6566923418b7f05506fbc9c0fe86ba7396114b"
+checksum = "08f95100a766bf4f8f28f90d77e0a5461bbdb219042e7679bebe79004fed8d75"
 
 [[package]]
-name = "typenum"
-version = "1.17.0"
+name = "unicode-bidi-mirroring"
+version = "0.1.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "42ff0bf0c66b8238c6f3b578df37d0b7848e55df8577b3f74f92a69acceeb825"
+checksum = "56d12260fb92d52f9008be7e4bca09f584780eb2266dc8fecc6a192bec561694"
 
 [[package]]
-name = "unicode-bidi"
-version = "0.3.15"
+name = "unicode-ccc"
+version = "0.1.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "08f95100a766bf4f8f28f90d77e0a5461bbdb219042e7679bebe79004fed8d75"
+checksum = "cc2520efa644f8268dce4dcd3050eaa7fc044fca03961e9998ac7e2e92b77cf1"
 
 [[package]]
 name = "unicode-ident"
@@ -3642,6 +3661,12 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "3354b9ac3fae1ff6755cb6db53683adb661634f67557942dea4facebec0fee4b"
 
 [[package]]
+name = "unicode-linebreak"
+version = "0.1.5"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "3b09c83c3c29d37506a3e260c08c03743a6bb66a9cd432c6934ab501a190571f"
+
+[[package]]
 name = "unicode-normalization"
 version = "0.1.23"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -3651,6 +3676,18 @@ dependencies = [
 ]
 
 [[package]]
+name = "unicode-properties"
+version = "0.1.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "e4259d9d4425d9f0661581b804cb85fe66a4c631cadd8f490d1c13a35d5d9291"
+
+[[package]]
+name = "unicode-script"
+version = "0.5.5"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "7d817255e1bed6dfd4ca47258685d14d2bdcfbc64fdc9e3819bd5848057b8ecc"
+
+[[package]]
 name = "unicode-segmentation"
 version = "1.11.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -3664,9 +3701,9 @@ checksum = "e51733f11c9c4f72aa0c160008246859e340b00807569a0da0e7a1079b27ba85"
 
 [[package]]
 name = "unicode-xid"
-version = "0.0.4"
+version = "0.2.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8c1f860d7d29cf02cb2f3f359fd35991af3d30bac52c57d265a3c461074cb4dc"
+checksum = "f962df74c8c05a667b5ee8bcf162993134c104e96440b663c8daa176dc772d8c"
 
 [[package]]
 name = "url"
@@ -3675,21 +3712,16 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "31e6302e3bb753d46e83516cae55ae196fc0c309407cf11ab35cc51a4c2a4633"
 dependencies = [
  "form_urlencoded",
- "idna 0.5.0",
+ "idna",
  "percent-encoding",
+ "serde",
 ]
 
 [[package]]
-name = "uuid"
-version = "1.8.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a183cf7feeba97b4dd1c0d46788634f6221d87fa961b305bed08c851829efcc0"
-
-[[package]]
-name = "valuable"
-version = "0.1.0"
+name = "urlencoding"
+version = "2.1.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "830b7e5d4d90034032940e4ace0d9a9a057e7a45cd94e6c007832e39edb82f6d"
+checksum = "daf8dba3b7eb870caf1ddeed7bc9d2a049f3cfdfae7cb521b087cc33ae4c49da"
 
 [[package]]
 name = "vcpkg"
@@ -3698,18 +3730,6 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "accd4ea62f7bb7a82fe23066fb0957d48ef677f6eeb8215f372f52e48bb32426"
 
 [[package]]
-name = "vec_map"
-version = "0.8.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f1bddf1187be692e79c5ffeab891132dfb0f236ed36a43c7ed39f1165ee20191"
-
-[[package]]
-name = "version-compare"
-version = "0.2.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "852e951cb7832cb45cb1169900d19760cfa39b82bc0ea9c0e5a14ae88411c98b"
-
-[[package]]
 name = "version_check"
 version = "0.9.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -3736,12 +3756,13 @@ dependencies = [
 ]
 
 [[package]]
-name = "want"
-version = "0.3.1"
+name = "walkdir"
+version = "2.4.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "bfa7760aed19e106de2c7c0b581b509f2f25d3dacaf737cb82ac61bc6d760b0e"
+checksum = "d71d857dc86794ca4c280d616f7da00d2dbfd8cd788846559a6813e6aa4b54ee"
 dependencies = [
- "try-lock",
+ "same-file",
+ "winapi-util",
 ]
 
 [[package]]
@@ -3752,9 +3773,9 @@ checksum = "9c8d87e72b64a3b4db28d11ce29237c246188f4f51057d65a7eab63b7987e423"
 
 [[package]]
 name = "wasm-bindgen"
-version = "0.2.92"
+version = "0.2.91"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4be2531df63900aeb2bca0daaaddec08491ee64ceecbee5076636a3b026795a8"
+checksum = "c1e124130aee3fb58c5bdd6b639a0509486b0338acaaae0c84a5124b0f588b7f"
 dependencies = [
  "cfg-if",
  "wasm-bindgen-macro",
@@ -3762,24 +3783,24 @@ dependencies = [
 
 [[package]]
 name = "wasm-bindgen-backend"
-version = "0.2.92"
+version = "0.2.91"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "614d787b966d3989fa7bb98a654e369c762374fd3213d212cfc0251257e747da"
+checksum = "c9e7e1900c352b609c8488ad12639a311045f40a35491fb69ba8c12f758af70b"
 dependencies = [
  "bumpalo",
  "log",
  "once_cell",
  "proc-macro2",
- "quote 1.0.36",
- "syn 2.0.58",
+ "quote",
+ "syn 2.0.48",
  "wasm-bindgen-shared",
 ]
 
 [[package]]
 name = "wasm-bindgen-futures"
-version = "0.4.42"
+version = "0.4.41"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "76bc14366121efc8dbb487ab05bcc9d346b3b5ec0eaa76e46594cabbe51762c0"
+checksum = "877b9c3f61ceea0e56331985743b13f3d25c406a7098d45180fb5f09bc19ed97"
 dependencies = [
  "cfg-if",
  "js-sys",
@@ -3789,89 +3810,306 @@ dependencies = [
 
 [[package]]
 name = "wasm-bindgen-macro"
-version = "0.2.92"
+version = "0.2.91"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a1f8823de937b71b9460c0c34e25f3da88250760bec0ebac694b49997550d726"
+checksum = "b30af9e2d358182b5c7449424f017eba305ed32a7010509ede96cdc4696c46ed"
 dependencies = [
- "quote 1.0.36",
+ "quote",
  "wasm-bindgen-macro-support",
 ]
 
 [[package]]
 name = "wasm-bindgen-macro-support"
-version = "0.2.92"
+version = "0.2.91"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e94f17b526d0a461a191c78ea52bbce64071ed5c04c9ffe424dcb38f74171bb7"
+checksum = "642f325be6301eb8107a83d12a8ac6c1e1c54345a7ef1a9261962dfefda09e66"
 dependencies = [
  "proc-macro2",
- "quote 1.0.36",
- "syn 2.0.58",
+ "quote",
+ "syn 2.0.48",
  "wasm-bindgen-backend",
  "wasm-bindgen-shared",
 ]
 
 [[package]]
 name = "wasm-bindgen-shared"
-version = "0.2.92"
+version = "0.2.91"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "af190c94f2773fdb3729c55b007a722abb5384da03bc0986df4c289bf5567e96"
+checksum = "4f186bd2dcf04330886ce82d6f33dd75a7bfcf69ecf5763b89fcde53b6ac9838"
 
 [[package]]
-name = "waylyrics"
-version = "0.3.5"
+name = "wasm-timer"
+version = "0.2.5"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "be0ecb0db480561e9a7642b5d3e4187c128914e58aa84330b9493e3eb68c5e7f"
 dependencies = [
- "ahash 0.8.11",
- "anyhow",
- "async-channel",
- "async-trait",
- "dbus",
- "directories",
- "documented",
- "gdk4-win32",
- "gettext-rs",
- "glib-macros 0.19.4",
- "gtk4",
- "ksni",
- "lrc-nom",
- "md5",
- "mimalloc",
- "mpris",
- "ncmapi2",
+ "futures",
+ "js-sys",
+ "parking_lot 0.11.2",
+ "pin-utils",
+ "wasm-bindgen",
+ "wasm-bindgen-futures",
+ "web-sys",
+]
+
+[[package]]
+name = "wayland-backend"
+version = "0.3.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "9d50fa61ce90d76474c87f5fc002828d81b32677340112b4ef08079a9d459a40"
+dependencies = [
+ "cc",
+ "downcast-rs",
+ "rustix",
+ "scoped-tls",
+ "smallvec",
+ "wayland-sys",
+]
+
+[[package]]
+name = "wayland-client"
+version = "0.31.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "82fb96ee935c2cea6668ccb470fb7771f6215d1691746c2d896b447a00ad3f1f"
+dependencies = [
+ "bitflags 2.4.2",
+ "rustix",
+ "wayland-backend",
+ "wayland-scanner",
+]
+
+[[package]]
+name = "wayland-csd-frame"
+version = "0.3.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "625c5029dbd43d25e6aa9615e88b829a5cad13b2819c4ae129fdbb7c31ab4c7e"
+dependencies = [
+ "bitflags 2.4.2",
+ "cursor-icon",
+ "wayland-backend",
+]
+
+[[package]]
+name = "wayland-cursor"
+version = "0.31.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "71ce5fa868dd13d11a0d04c5e2e65726d0897be8de247c0c5a65886e283231ba"
+dependencies = [
+ "rustix",
+ "wayland-client",
+ "xcursor",
+]
+
+[[package]]
+name = "wayland-protocols"
+version = "0.31.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "8f81f365b8b4a97f422ac0e8737c438024b5951734506b0e1d775c73030561f4"
+dependencies = [
+ "bitflags 2.4.2",
+ "wayland-backend",
+ "wayland-client",
+ "wayland-scanner",
+]
+
+[[package]]
+name = "wayland-protocols-plasma"
+version = "0.2.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "23803551115ff9ea9bce586860c5c5a971e360825a0309264102a9495a5ff479"
+dependencies = [
+ "bitflags 2.4.2",
+ "wayland-backend",
+ "wayland-client",
+ "wayland-protocols",
+ "wayland-scanner",
+]
+
+[[package]]
+name = "wayland-protocols-wlr"
+version = "0.2.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "ad1f61b76b6c2d8742e10f9ba5c3737f6530b4c243132c2a2ccc8aa96fe25cd6"
+dependencies = [
+ "bitflags 2.4.2",
+ "wayland-backend",
+ "wayland-client",
+ "wayland-protocols",
+ "wayland-scanner",
+]
+
+[[package]]
+name = "wayland-scanner"
+version = "0.31.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "63b3a62929287001986fb58c789dce9b67604a397c15c611ad9f747300b6c283"
+dependencies = [
+ "proc-macro2",
+ "quick-xml",
+ "quote",
+]
+
+[[package]]
+name = "wayland-sys"
+version = "0.31.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "15a0c8eaff5216d07f226cb7a549159267f3467b289d9a2e52fd3ef5aae2b7af"
+dependencies = [
+ "dlib",
+ "log",
  "once_cell",
- "opencc-rust",
- "qqmusic-rs",
- "regex",
- "reqwest",
- "rust_decimal",
- "rust_decimal_macros",
- "serde",
- "serde_json",
- "sorensen",
- "strum",
- "thiserror",
- "tokio",
- "toml",
- "toml_edit 0.22.9",
- "tracing",
- "tracing-journald",
- "tracing-subscriber",
- "tray-icon",
- "url",
- "windows",
- "windows_exe_info",
+ "pkg-config",
 ]
 
 [[package]]
 name = "web-sys"
-version = "0.3.69"
+version = "0.3.68"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "77afa9a11836342370f4817622a2f0f418b134426d91a82dfb48f532d2ec13ef"
+checksum = "96565907687f7aceb35bc5fc03770a8a0471d82e479f25832f54a0e3f4b28446"
 dependencies = [
  "js-sys",
  "wasm-bindgen",
 ]
 
 [[package]]
+name = "web-time"
+version = "0.2.4"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "aa30049b1c872b72c89866d458eae9f20380ab280ffd1b1e18df2d3e2d98cfe0"
+dependencies = [
+ "js-sys",
+ "wasm-bindgen",
+]
+
+[[package]]
+name = "weezl"
+version = "0.1.8"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "53a85b86a771b1c87058196170769dd264f66c0782acf1ae6cc51bfd64b39082"
+
+[[package]]
+name = "wgpu"
+version = "0.19.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "0bfe9a310dcf2e6b85f00c46059aaeaf4184caa8e29a1ecd4b7a704c3482332d"
+dependencies = [
+ "arrayvec",
+ "cfg-if",
+ "cfg_aliases 0.1.1",
+ "js-sys",
+ "log",
+ "naga",
+ "parking_lot 0.12.1",
+ "profiling",
+ "raw-window-handle 0.6.0",
+ "smallvec",
+ "static_assertions",
+ "wasm-bindgen",
+ "wasm-bindgen-futures",
+ "web-sys",
+ "wgpu-core",
+ "wgpu-hal",
+ "wgpu-types",
+]
+
+[[package]]
+name = "wgpu-core"
+version = "0.19.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "6b15e451d4060ada0d99a64df44e4d590213496da7c4f245572d51071e8e30ed"
+dependencies = [
+ "arrayvec",
+ "bit-vec",
+ "bitflags 2.4.2",
+ "cfg_aliases 0.1.1",
+ "codespan-reporting",
+ "indexmap",
+ "log",
+ "naga",
+ "once_cell",
+ "parking_lot 0.12.1",
+ "profiling",
+ "raw-window-handle 0.6.0",
+ "rustc-hash",
+ "smallvec",
+ "thiserror",
+ "web-sys",
+ "wgpu-hal",
+ "wgpu-types",
+]
+
+[[package]]
+name = "wgpu-hal"
+version = "0.19.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "e3bb47856236bfafc0bc591a925eb036ac19cd987624a447ff353e7a7e7e6f72"
+dependencies = [
+ "android_system_properties",
+ "arrayvec",
+ "ash",
+ "bit-set",
+ "bitflags 2.4.2",
+ "block",
+ "cfg_aliases 0.1.1",
+ "core-graphics-types",
+ "d3d12",
+ "glow",
+ "glutin_wgl_sys",
+ "gpu-alloc",
+ "gpu-allocator",
+ "gpu-descriptor",
+ "hassle-rs",
+ "js-sys",
+ "khronos-egl",
+ "libc",
+ "libloading 0.8.1",
+ "log",
+ "metal",
+ "naga",
+ "objc",
+ "once_cell",
+ "parking_lot 0.12.1",
+ "profiling",
+ "range-alloc",
+ "raw-window-handle 0.6.0",
+ "renderdoc-sys",
+ "rustc-hash",
+ "smallvec",
+ "thiserror",
+ "wasm-bindgen",
+ "web-sys",
+ "wgpu-types",
+ "winapi",
+]
+
+[[package]]
+name = "wgpu-jumpstart"
+version = "0.1.0"
+dependencies = [
+ "bytemuck",
+ "log",
+ "raw-window-handle 0.6.0",
+ "wgpu",
+]
+
+[[package]]
+name = "wgpu-types"
+version = "0.19.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "895fcbeb772bfb049eb80b2d6e47f6c9af235284e9703c96fc0218a42ffd5af2"
+dependencies = [
+ "bitflags 2.4.2",
+ "js-sys",
+ "web-sys",
+]
+
+[[package]]
+name = "widestring"
+version = "1.0.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "653f141f39ec16bba3c5abe400a0c60da7468261cc2cbf36805022876bc721a8"
+
+[[package]]
 name = "winapi"
 version = "0.3.9"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -3888,6 +4126,15 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "ac3b87c63620426dd9b991e5ce0329eff545bccbbb34f3be09ff6fb6ab51b7b6"
 
 [[package]]
+name = "winapi-util"
+version = "0.1.6"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "f29e6f9198ba0d26b4c9f07dbe6f9ed633e1f3d5b8b414090084349e46a52596"
+dependencies = [
+ "winapi",
+]
+
+[[package]]
 name = "winapi-x86_64-pc-windows-gnu"
 version = "0.4.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -3895,55 +4142,54 @@ checksum = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f"
 
 [[package]]
 name = "windows"
-version = "0.56.0"
+version = "0.43.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1de69df01bdf1ead2f4ac895dc77c9351aefff65b2f3db429a343f9cbf05e132"
+checksum = "04662ed0e3e5630dfa9b26e4cb823b817f1a9addda855d973a9458c236556244"
 dependencies = [
- "windows-core",
- "windows-targets 0.52.5",
+ "windows_aarch64_gnullvm 0.42.2",
+ "windows_aarch64_msvc 0.42.2",
+ "windows_i686_gnu 0.42.2",
+ "windows_i686_msvc 0.42.2",
+ "windows_x86_64_gnu 0.42.2",
+ "windows_x86_64_gnullvm 0.42.2",
+ "windows_x86_64_msvc 0.42.2",
 ]
 
 [[package]]
-name = "windows-core"
-version = "0.56.0"
+name = "windows"
+version = "0.46.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4698e52ed2d08f8658ab0c39512a7c00ee5fe2688c65f8c0a4f06750d729f2a6"
+checksum = "cdacb41e6a96a052c6cb63a144f24900236121c6f63f4f8219fef5977ecb0c25"
 dependencies = [
- "windows-implement",
- "windows-interface",
- "windows-result",
- "windows-targets 0.52.5",
+ "windows-targets 0.42.2",
 ]
 
 [[package]]
-name = "windows-implement"
-version = "0.56.0"
+name = "windows"
+version = "0.52.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f6fc35f58ecd95a9b71c4f2329b911016e6bec66b3f2e6a4aad86bd2e99e2f9b"
+checksum = "e48a53791691ab099e5e2ad123536d0fff50652600abaf43bbf952894110d0be"
 dependencies = [
- "proc-macro2",
- "quote 1.0.36",
- "syn 2.0.58",
+ "windows-core",
+ "windows-targets 0.52.0",
 ]
 
 [[package]]
-name = "windows-interface"
-version = "0.56.0"
+name = "windows-core"
+version = "0.52.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "08990546bf4edef8f431fa6326e032865f27138718c587dc21bc0265bbcb57cc"
+checksum = "33ab640c8d7e35bf8ba19b884ba838ceb4fba93a4e8c65a9059d08afcfc683d9"
 dependencies = [
- "proc-macro2",
- "quote 1.0.36",
- "syn 2.0.58",
+ "windows-targets 0.52.0",
 ]
 
 [[package]]
-name = "windows-result"
-version = "0.1.1"
+name = "windows-sys"
+version = "0.45.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "749f0da9cc72d82e600d8d2e44cadd0b9eedb9038f71a1c58556ac1c5791813b"
+checksum = "75283be5efb2831d37ea142365f009c02ec203cd29a3ebecbc093d52315b66d0"
 dependencies = [
- "windows-targets 0.52.5",
+ "windows-targets 0.42.2",
 ]
 
 [[package]]
@@ -3961,7 +4207,22 @@ version = "0.52.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "282be5f36a8ce781fad8c8ae18fa3f9beff57ec1b52cb3de0789201425d9a33d"
 dependencies = [
- "windows-targets 0.52.5",
+ "windows-targets 0.52.0",
+]
+
+[[package]]
+name = "windows-targets"
+version = "0.42.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "8e5180c00cd44c9b1c88adb3693291f1cd93605ded80c250a75d472756b4d071"
+dependencies = [
+ "windows_aarch64_gnullvm 0.42.2",
+ "windows_aarch64_msvc 0.42.2",
+ "windows_i686_gnu 0.42.2",
+ "windows_i686_msvc 0.42.2",
+ "windows_x86_64_gnu 0.42.2",
+ "windows_x86_64_gnullvm 0.42.2",
+ "windows_x86_64_msvc 0.42.2",
 ]
 
 [[package]]
@@ -3981,31 +4242,42 @@ dependencies = [
 
 [[package]]
 name = "windows-targets"
-version = "0.52.5"
+version = "0.52.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6f0713a46559409d202e70e28227288446bf7841d3211583a4b53e3f6d96e7eb"
+checksum = "8a18201040b24831fbb9e4eb208f8892e1f50a37feb53cc7ff887feb8f50e7cd"
 dependencies = [
- "windows_aarch64_gnullvm 0.52.5",
- "windows_aarch64_msvc 0.52.5",
- "windows_i686_gnu 0.52.5",
- "windows_i686_gnullvm",
- "windows_i686_msvc 0.52.5",
- "windows_x86_64_gnu 0.52.5",
- "windows_x86_64_gnullvm 0.52.5",
- "windows_x86_64_msvc 0.52.5",
+ "windows_aarch64_gnullvm 0.52.0",
+ "windows_aarch64_msvc 0.52.0",
+ "windows_i686_gnu 0.52.0",
+ "windows_i686_msvc 0.52.0",
+ "windows_x86_64_gnu 0.52.0",
+ "windows_x86_64_gnullvm 0.52.0",
+ "windows_x86_64_msvc 0.52.0",
 ]
 
 [[package]]
 name = "windows_aarch64_gnullvm"
+version = "0.42.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "597a5118570b68bc08d8d59125332c54f1ba9d9adeedeef5b99b02ba2b0698f8"
+
+[[package]]
+name = "windows_aarch64_gnullvm"
 version = "0.48.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "2b38e32f0abccf9987a4e3079dfb67dcd799fb61361e53e2882c3cbaf0d905d8"
 
 [[package]]
 name = "windows_aarch64_gnullvm"
-version = "0.52.5"
+version = "0.52.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7088eed71e8b8dda258ecc8bac5fb1153c5cffaf2578fc8ff5d61e23578d3263"
+checksum = "cb7764e35d4db8a7921e09562a0304bf2f93e0a51bfccee0bd0bb0b666b015ea"
+
+[[package]]
+name = "windows_aarch64_msvc"
+version = "0.42.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "e08e8864a60f06ef0d0ff4ba04124db8b0fb3be5776a5cd47641e942e58c4d43"
 
 [[package]]
 name = "windows_aarch64_msvc"
@@ -4015,18 +4287,15 @@ checksum = "dc35310971f3b2dbbf3f0690a219f40e2d9afcf64f9ab7cc1be722937c26b4bc"
 
 [[package]]
 name = "windows_aarch64_msvc"
-version = "0.52.5"
+version = "0.52.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9985fd1504e250c615ca5f281c3f7a6da76213ebd5ccc9561496568a2752afb6"
+checksum = "bbaa0368d4f1d2aaefc55b6fcfee13f41544ddf36801e793edbbfd7d7df075ef"
 
 [[package]]
-name = "windows_exe_info"
-version = "0.4.2"
+name = "windows_i686_gnu"
+version = "0.42.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f7e7bfd02caf5cd98a197cec15c852685c8c42605f91d7be3083541a0b40a7ff"
-dependencies = [
- "embed-resource",
-]
+checksum = "c61d927d8da41da96a81f029489353e68739737d3beca43145c8afec9a31a84f"
 
 [[package]]
 name = "windows_i686_gnu"
@@ -4036,15 +4305,15 @@ checksum = "a75915e7def60c94dcef72200b9a8e58e5091744960da64ec734a6c6e9b3743e"
 
 [[package]]
 name = "windows_i686_gnu"
-version = "0.52.5"
+version = "0.52.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "88ba073cf16d5372720ec942a8ccbf61626074c6d4dd2e745299726ce8b89670"
+checksum = "a28637cb1fa3560a16915793afb20081aba2c92ee8af57b4d5f28e4b3e7df313"
 
 [[package]]
-name = "windows_i686_gnullvm"
-version = "0.52.5"
+name = "windows_i686_msvc"
+version = "0.42.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "87f4261229030a858f36b459e748ae97545d6f1ec60e5e0d6a3d32e0dc232ee9"
+checksum = "44d840b6ec649f480a41c8d80f9c65108b92d89345dd94027bfe06ac444d1060"
 
 [[package]]
 name = "windows_i686_msvc"
@@ -4054,9 +4323,15 @@ checksum = "8f55c233f70c4b27f66c523580f78f1004e8b5a8b659e05a4eb49d4166cca406"
 
 [[package]]
 name = "windows_i686_msvc"
-version = "0.52.5"
+version = "0.52.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "db3c2bf3d13d5b658be73463284eaf12830ac9a26a90c717b7f771dfe97487bf"
+checksum = "ffe5e8e31046ce6230cc7215707b816e339ff4d4d67c65dffa206fd0f7aa7b9a"
+
+[[package]]
+name = "windows_x86_64_gnu"
+version = "0.42.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "8de912b8b8feb55c064867cf047dda097f92d51efad5b491dfb98f6bbb70cb36"
 
 [[package]]
 name = "windows_x86_64_gnu"
@@ -4066,9 +4341,15 @@ checksum = "53d40abd2583d23e4718fddf1ebec84dbff8381c07cae67ff7768bbf19c6718e"
 
 [[package]]
 name = "windows_x86_64_gnu"
-version = "0.52.5"
+version = "0.52.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4e4246f76bdeff09eb48875a0fd3e2af6aada79d409d33011886d3e1581517d9"
+checksum = "3d6fa32db2bc4a2f5abeacf2b69f7992cd09dca97498da74a151a3132c26befd"
+
+[[package]]
+name = "windows_x86_64_gnullvm"
+version = "0.42.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "26d41b46a36d453748aedef1486d5c7a85db22e56aff34643984ea85514e94a3"
 
 [[package]]
 name = "windows_x86_64_gnullvm"
@@ -4078,9 +4359,15 @@ checksum = "0b7b52767868a23d5bab768e390dc5f5c55825b6d30b86c844ff2dc7414044cc"
 
 [[package]]
 name = "windows_x86_64_gnullvm"
-version = "0.52.5"
+version = "0.52.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "852298e482cd67c356ddd9570386e2862b5673c85bd5f88df9ab6802b334c596"
+checksum = "1a657e1e9d3f514745a572a6846d3c7aa7dbe1658c056ed9c3344c4109a6949e"
+
+[[package]]
+name = "windows_x86_64_msvc"
+version = "0.42.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "9aec5da331524158c6d1a4ac0ab1541149c0b9505fde06423b02f5ef0106b9f0"
 
 [[package]]
 name = "windows_x86_64_msvc"
@@ -4090,62 +4377,232 @@ checksum = "ed94fce61571a4006852b7389a063ab983c02eb1bb37b47f8272ce92d06d9538"
 
 [[package]]
 name = "windows_x86_64_msvc"
-version = "0.52.5"
+version = "0.52.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "bec47e5bfd1bff0eeaf6d8b485cc1074891a197ab4225d504cb7a1ab88b02bf0"
+checksum = "dff9641d1cd4be8d1a070daf9e3773c5f67e78b4d9d42263020c057706765c04"
 
 [[package]]
-name = "winnow"
-version = "0.5.40"
+name = "winit"
+version = "0.29.10"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f593a95398737aeed53e489c785df13f3618e41dbcd6718c6addbf1395aa6876"
+checksum = "4c824f11941eeae66ec71111cc2674373c772f482b58939bb4066b642aa2ffcf"
 dependencies = [
- "memchr",
+ "ahash",
+ "android-activity",
+ "atomic-waker",
+ "bitflags 2.4.2",
+ "bytemuck",
+ "calloop",
+ "cfg_aliases 0.1.1",
+ "core-foundation",
+ "core-graphics",
+ "cursor-icon",
+ "icrate",
+ "js-sys",
+ "libc",
+ "log",
+ "memmap2 0.9.4",
+ "ndk 0.8.0",
+ "ndk-sys 0.5.0+25.2.9519653",
+ "objc2",
+ "once_cell",
+ "orbclient",
+ "percent-encoding",
+ "raw-window-handle 0.5.2",
+ "raw-window-handle 0.6.0",
+ "redox_syscall 0.3.5",
+ "rustix",
+ "sctk-adwaita",
+ "smithay-client-toolkit",
+ "smol_str",
+ "unicode-segmentation",
+ "wasm-bindgen",
+ "wasm-bindgen-futures",
+ "wayland-backend",
+ "wayland-client",
+ "wayland-protocols",
+ "wayland-protocols-plasma",
+ "web-sys",
+ "web-time",
+ "windows-sys 0.48.0",
+ "x11-dl",
+ "x11rb",
+ "xkbcommon-dl",
 ]
 
 [[package]]
 name = "winnow"
-version = "0.6.6"
+version = "0.5.39"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f0c976aaaa0e1f90dbb21e9587cdaf1d9679a1cde8875c0d6bd83ab96a208352"
+checksum = "5389a154b01683d28c77f8f68f49dea75f0a4da32557a58f68ee51ebba472d29"
 dependencies = [
  "memchr",
 ]
 
 [[package]]
 name = "winreg"
-version = "0.52.0"
+version = "0.51.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a277a57398d4bfa075df44f501a17cfdf8542d224f0d36095a2adc7aee4ef0a5"
+checksum = "937f3df7948156640f46aacef17a70db0de5917bda9c92b0f751f3a955b588fc"
 dependencies = [
  "cfg-if",
  "windows-sys 0.48.0",
 ]
 
 [[package]]
-name = "wyz"
-version = "0.5.1"
+name = "x11-dl"
+version = "2.21.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "05f360fc0b24296329c78fda852a1e9ae82de9cf7b27dae4b7f62f118f77b9ed"
+checksum = "38735924fedd5314a6e548792904ed8c6de6636285cb9fec04d5b1db85c1516f"
 dependencies = [
- "tap",
+ "libc",
+ "once_cell",
+ "pkg-config",
 ]
 
 [[package]]
-name = "x11"
-version = "2.21.0"
+name = "x11rb"
+version = "0.13.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "502da5464ccd04011667b11c435cb992822c2c0dbde1770c988480d312a0db2e"
+checksum = "f8f25ead8c7e4cba123243a6367da5d3990e0d3affa708ea19dce96356bd9f1a"
 dependencies = [
+ "as-raw-xcb-connection",
+ "gethostname",
  "libc",
- "pkg-config",
+ "libloading 0.8.1",
+ "once_cell",
+ "rustix",
+ "x11rb-protocol",
 ]
 
 [[package]]
+name = "x11rb-protocol"
+version = "0.13.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "e63e71c4b8bd9ffec2c963173a4dc4cbde9ee96961d4fcb4429db9929b606c34"
+
+[[package]]
+name = "xcursor"
+version = "0.3.5"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "6a0ccd7b4a5345edfcd0c3535718a4e9ff7798ffc536bb5b5a0e26ff84732911"
+
+[[package]]
+name = "xdg-home"
+version = "1.1.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "21e5a325c3cb8398ad6cf859c1135b25dd29e186679cf2da7581d9679f63b38e"
+dependencies = [
+ "libc",
+ "winapi",
+]
+
+[[package]]
+name = "xkbcommon-dl"
+version = "0.4.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "6924668544c48c0133152e7eec86d644a056ca3d09275eb8d5cdb9855f9d8699"
+dependencies = [
+ "bitflags 2.4.2",
+ "dlib",
+ "log",
+ "once_cell",
+ "xkeysym",
+]
+
+[[package]]
+name = "xkeysym"
+version = "0.2.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "054a8e68b76250b253f671d1268cb7f1ae089ec35e195b2efb2a4e9a836d0621"
+
+[[package]]
 name = "xml-rs"
-version = "0.8.20"
+version = "0.8.19"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "0fcb9cbac069e033553e8bb871be2fbdffcab578eb25bd0f7c508cedc6dcd75a"
+
+[[package]]
+name = "xxhash-rust"
+version = "0.8.8"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "53be06678ed9e83edb1745eb72efc0bbcd7b5c3c35711a860906aed827a13d61"
+
+[[package]]
+name = "yazi"
+version = "0.1.6"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "c94451ac9513335b5e23d7a8a2b61a7102398b8cca5160829d313e84c9d98be1"
+
+[[package]]
+name = "zbus"
+version = "4.0.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "7b8e3d6ae3342792a6cc2340e4394334c7402f3d793b390d2c5494a4032b3030"
+dependencies = [
+ "async-broadcast",
+ "async-executor",
+ "async-fs",
+ "async-io",
+ "async-lock 3.3.0",
+ "async-process",
+ "async-recursion",
+ "async-task",
+ "async-trait",
+ "blocking",
+ "derivative",
+ "enumflags2",
+ "event-listener 5.1.0",
+ "futures-core",
+ "futures-sink",
+ "futures-util",
+ "hex",
+ "nix 0.27.1",
+ "ordered-stream",
+ "rand",
+ "serde",
+ "serde_repr",
+ "sha1",
+ "static_assertions",
+ "tracing",
+ "uds_windows",
+ "windows-sys 0.52.0",
+ "xdg-home",
+ "zbus_macros",
+ "zbus_names",
+ "zvariant",
+]
+
+[[package]]
+name = "zbus_macros"
+version = "4.0.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "b7a3e850ff1e7217a3b7a07eba90d37fe9bb9e89a310f718afcde5885ca9b6d7"
+dependencies = [
+ "proc-macro-crate 1.3.1",
+ "proc-macro2",
+ "quote",
+ "regex",
+ "syn 1.0.109",
+ "zvariant_utils",
+]
+
+[[package]]
+name = "zbus_names"
+version = "3.0.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "791978798f0597cfc70478424c2b4fdc2b7a8024aaff78497ef00f24ef674193"
+checksum = "4b9b1fef7d021261cc16cba64c351d291b715febe0fa10dc3a443ac5a5022e6c"
+dependencies = [
+ "serde",
+ "static_assertions",
+ "zvariant",
+]
+
+[[package]]
+name = "zeno"
+version = "0.2.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "dd15f8e0dbb966fd9245e7498c7e9e5055d9e5c8b676b95bd67091cd11a1e697"
 
 [[package]]
 name = "zerocopy"
@@ -4163,12 +4620,53 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "9ce1b18ccd8e73a9321186f97e46f9f04b778851177567b1975109d26a08d2a6"
 dependencies = [
  "proc-macro2",
- "quote 1.0.36",
- "syn 2.0.58",
+ "quote",
+ "syn 2.0.48",
 ]
 
 [[package]]
-name = "zeroize"
-version = "1.7.0"
+name = "zune-inflate"
+version = "0.2.54"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "73ab332fe2f6680068f3582b16a24f90ad7096d5d39b974d1c0aff0125116f02"
+dependencies = [
+ "simd-adler32",
+]
+
+[[package]]
+name = "zvariant"
+version = "4.0.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "525b4ec142c6b68a2d10f01f7bbf6755599ca3f81ea53b8431b7dd348f5fdb2d"
+checksum = "4e09e8be97d44eeab994d752f341e67b3b0d80512a8b315a0671d47232ef1b65"
+dependencies = [
+ "endi",
+ "enumflags2",
+ "serde",
+ "static_assertions",
+ "url",
+ "zvariant_derive",
+]
+
+[[package]]
+name = "zvariant_derive"
+version = "4.0.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "72a5857e2856435331636a9fbb415b09243df4521a267c5bedcd5289b4d5799e"
+dependencies = [
+ "proc-macro-crate 1.3.1",
+ "proc-macro2",
+ "quote",
+ "syn 1.0.109",
+ "zvariant_utils",
+]
+
+[[package]]
+name = "zvariant_utils"
+version = "1.1.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "00bedb16a193cc12451873fee2a1bc6550225acece0e36f333e68326c73c8172"
+dependencies = [
+ "proc-macro2",
+ "quote",
+ "syn 1.0.109",
+]
diff --git a/pkgs/by-name/ne/neothesia/package.nix b/pkgs/by-name/ne/neothesia/package.nix
new file mode 100644
index 000000000000..9169d9cabaf2
--- /dev/null
+++ b/pkgs/by-name/ne/neothesia/package.nix
@@ -0,0 +1,70 @@
+{ rustPlatform
+, fetchFromGitHub
+, lib
+, ffmpeg
+, pkg-config
+, alsa-lib
+, wayland
+, makeWrapper
+, llvmPackages
+, libxkbcommon
+, vulkan-loader
+, xorg
+}:
+let
+  version = "0.2.1";
+
+  src = fetchFromGitHub {
+    owner = "PolyMeilex";
+    repo = "Neothesia";
+    rev = "v${version}";
+    hash = "sha256-bQ2546q+oachvuNKMJHjQzF6uv06LG+f7eFQPoAn6mw=";
+  };
+in
+rustPlatform.buildRustPackage {
+  pname = "neothesia";
+
+  inherit src version;
+
+  buildInputs = [
+    ffmpeg
+    alsa-lib
+  ];
+
+  nativeBuildInputs = [
+    pkg-config
+    llvmPackages.clang
+    makeWrapper
+  ];
+
+  cargoLock = {
+    lockFile = ./Cargo.lock;
+    outputHashes = {
+      "mpeg_encoder-0.2.1" = "sha256-+BNZZ1FIr1374n8Zs1mww2w3eWHOH6ENOTYXz9RT2Ck=";
+    };
+  };
+
+  cargoBuildFlags = [
+    "-p neothesia -p neothesia-cli"
+  ];
+
+  postInstall = ''
+    wrapProgram $out/bin/neothesia --prefix LD_LIBRARY_PATH : "${lib.makeLibraryPath [ wayland libxkbcommon vulkan-loader xorg.libX11 xorg.libXcursor xorg.libXi xorg.libXrender ]}"
+    install -Dm 644 flatpak/com.github.polymeilex.neothesia.desktop $out/share/applications/com.github.polymeilex.neothesia.desktop
+  '';
+
+  env = {
+    LIBCLANG_PATH = "${llvmPackages.libclang.lib}/lib";
+  };
+
+  meta = {
+    description = "Flashy Synthesia Like Software For Linux, Windows and macOS";
+    homepage = "https://github.com/PolyMeilex/Neothesia";
+    license = lib.licenses.gpl3;
+    platforms = lib.platforms.linux;
+    mainProgram = "neothesia";
+    maintainers = [
+      lib.maintainers.naxdy
+    ];
+  };
+}
diff --git a/pkgs/applications/editors/neovim/neovide/default.nix b/pkgs/by-name/ne/neovide/package.nix
index ce9b091add82..ce9b091add82 100644
--- a/pkgs/applications/editors/neovim/neovide/default.nix
+++ b/pkgs/by-name/ne/neovide/package.nix
diff --git a/pkgs/applications/editors/neovim/neovide/skia-externals.json b/pkgs/by-name/ne/neovide/skia-externals.json
index e57814e2a2d8..e57814e2a2d8 100644
--- a/pkgs/applications/editors/neovim/neovide/skia-externals.json
+++ b/pkgs/by-name/ne/neovide/skia-externals.json
diff --git a/pkgs/applications/editors/neovim/default.nix b/pkgs/by-name/ne/neovim-unwrapped/package.nix
index b29e020cbf61..eaf637c88e64 100644
--- a/pkgs/applications/editors/neovim/default.nix
+++ b/pkgs/by-name/ne/neovim-unwrapped/package.nix
@@ -66,7 +66,7 @@ stdenv.mkDerivation (finalAttrs:
 
 in {
     pname = "neovim-unwrapped";
-    version = "0.9.5";
+    version = "0.10.0";
 
     __structuredAttrs = true;
 
@@ -74,7 +74,7 @@ in {
       owner = "neovim";
       repo = "neovim";
       rev = "v${finalAttrs.version}";
-      hash = "sha256-CcaBqA0yFCffNPmXOJTo8c9v1jrEBiqAl8CG5Dj5YxE=";
+      hash = "sha256-FCOipXHkAbkuFw9JjEpOIJ8BkyMkjkI0Dp+SzZ4yZlw=";
     };
 
     patches = [
@@ -86,7 +86,11 @@ in {
 
     dontFixCmake = true;
 
-    inherit lua treesitter-parsers;
+    inherit lua;
+    treesitter-parsers = treesitter-parsers //
+      { markdown = treesitter-parsers.markdown // { location = "tree-sitter-markdown"; }; } //
+      { markdown-inline = treesitter-parsers.markdown // { language = "markdown_inline"; location = "tree-sitter-markdown-inline"; }; }
+      ;
 
     buildInputs = [
       gperf
@@ -148,7 +152,7 @@ in {
     # check that the above patching actually works
     disallowedRequisites = [ stdenv.cc ] ++ lib.optional (lua != codegenLua) codegenLua;
 
-    cmakeFlags = [
+    cmakeFlagsArray = [
       # Don't use downloaded dependencies. At the end of the configurePhase one
       # can spot that cmake says this option was "not used by the project".
       # That's because all dependencies were found and
@@ -169,11 +173,13 @@ in {
     '' + ''
       mkdir -p $out/lib/nvim/parser
     '' + lib.concatStrings (lib.mapAttrsToList
-      (language: src: ''
+      (language: grammar: ''
         ln -s \
           ${tree-sitter.buildGrammar {
-            inherit language src;
+            inherit (grammar) src;
             version = "neovim-${finalAttrs.version}";
+            language = grammar.language or language;
+            location = grammar.location or null;
           }}/parser \
           $out/lib/nvim/parser/${language}.so
       '')
diff --git a/pkgs/applications/editors/neovim/system_rplugin_manifest.patch b/pkgs/by-name/ne/neovim-unwrapped/system_rplugin_manifest.patch
index f634d3ec056a..f634d3ec056a 100644
--- a/pkgs/applications/editors/neovim/system_rplugin_manifest.patch
+++ b/pkgs/by-name/ne/neovim-unwrapped/system_rplugin_manifest.patch
diff --git a/pkgs/by-name/ne/neovim-unwrapped/treesitter-parsers.nix b/pkgs/by-name/ne/neovim-unwrapped/treesitter-parsers.nix
new file mode 100644
index 000000000000..e4d4dd60e2eb
--- /dev/null
+++ b/pkgs/by-name/ne/neovim-unwrapped/treesitter-parsers.nix
@@ -0,0 +1,36 @@
+{ fetchurl }:
+
+{
+  c.src = fetchurl {
+    url = "https://github.com/tree-sitter/tree-sitter-c/archive/v0.21.0.tar.gz";
+    hash = "sha256:6f0f5d1b71cf8ffd8a37fb638c6022fa1245bd630150b538547d52128ce0ea7e";
+  };
+  lua.src = fetchurl {
+    url = "https://github.com/tree-sitter-grammars/tree-sitter-lua/archive/v0.1.0.tar.gz";
+    hash = "sha256:230cfcbfa74ed1f7b8149e9a1f34c2efc4c589a71fe0f5dc8560622f8020d722";
+  };
+  vim.src = fetchurl {
+    url = "https://github.com/neovim/tree-sitter-vim/archive/v0.4.0.tar.gz";
+    hash = "sha256:9f856f8b4a10ab43348550fa2d3cb2846ae3d8e60f45887200549c051c66f9d5";
+  };
+  vimdoc.src = fetchurl {
+    url = "https://github.com/neovim/tree-sitter-vimdoc/archive/v2.5.1.tar.gz";
+    hash = "sha256:063645096504b21603585507c41c6d8718ff3c11b2150c5bfc31e8f3ee9afea3";
+  };
+  query.src = fetchurl {
+    url = "https://github.com/tree-sitter-grammars/tree-sitter-query/archive/v0.3.0.tar.gz";
+    hash = "sha256:f878ff37abcb83250e31a6569e997546f3dbab74dcb26683cb2d613f7568cfc0";
+  };
+  python.src = fetchurl {
+    url = "https://github.com/tree-sitter/tree-sitter-python/archive/v0.21.0.tar.gz";
+    hash = "sha256:720304a603271fa89e4430a14d6a81a023d6d7d1171b1533e49c0ab44f1e1c13";
+  };
+  bash.src = fetchurl {
+    url = "https://github.com/tree-sitter/tree-sitter-bash/archive/v0.21.0.tar.gz";
+    hash = "sha256:f0515efda839cfede851adb24ac154227fbc0dfb60c6c11595ecfa9087d43ceb";
+  };
+  markdown.src = fetchurl {
+    url = "https://github.com/MDeiml/tree-sitter-markdown/archive/v0.2.3.tar.gz";
+    hash = "sha256:4909d6023643f1afc3ab219585d4035b7403f3a17849782ab803c5f73c8a31d5";
+  };
+}
diff --git a/pkgs/applications/editors/neovim/update-treesitter-parsers.py b/pkgs/by-name/ne/neovim-unwrapped/update-treesitter-parsers.py
index 27260ca64917..117c7eb48123 100755
--- a/pkgs/applications/editors/neovim/update-treesitter-parsers.py
+++ b/pkgs/by-name/ne/neovim-unwrapped/update-treesitter-parsers.py
@@ -7,7 +7,7 @@ from pathlib import Path
 
 parsers = {}
 dir = Path(__file__).parent
-regex = re.compile(r"^set\(TREESITTER_([A-Z_]+)_(URL|SHA256)\s+([^ \)]+)\s*\)\s*$")
+regex = re.compile(r"^TREESITTER_([A-Z_]+)_(URL|SHA256)\s+(.+)$")
 
 src = subprocess.check_output(
     [
@@ -20,8 +20,8 @@ src = subprocess.check_output(
     text=True,
 ).strip()
 
-for line in open(f"{src}/cmake.deps/CMakeLists.txt"):
-    m = regex.fullmatch(line)
+for line in open(f"{src}/cmake.deps/deps.txt"):
+    m = regex.fullmatch(line.strip())
     if m is None:
         continue
 
@@ -37,7 +37,7 @@ with open(dir / "treesitter-parsers.nix", "w") as f:
     f.write("{ fetchurl }:\n\n{\n")
     for lang, src in parsers.items():
         f.write(
-            f"""  {lang} = fetchurl {{
+            f"""  {lang}.src = fetchurl {{
     url = "{src["URL"]}";
     hash = "sha256:{src["SHA256"]}";
   }};
diff --git a/pkgs/by-name/ne/nestopia-ue/package.nix b/pkgs/by-name/ne/nestopia-ue/package.nix
index 78c15e6dfe83..34ba7112e43f 100644
--- a/pkgs/by-name/ne/nestopia-ue/package.nix
+++ b/pkgs/by-name/ne/nestopia-ue/package.nix
@@ -14,7 +14,7 @@
 , pkg-config
 , stdenv
 , unzip
-, wrapGAppsHook
+, wrapGAppsHook3
 , xdg-utils
 }:
 
@@ -49,7 +49,7 @@ stdenv.mkDerivation (finalAttrs: {
     fltk
     pkg-config
     makeWrapper
-    wrapGAppsHook
+    wrapGAppsHook3
     unzip
   ];
 
diff --git a/pkgs/by-name/ne/netclient/package.nix b/pkgs/by-name/ne/netclient/package.nix
index 0d99763f4f1d..456a422fabdd 100644
--- a/pkgs/by-name/ne/netclient/package.nix
+++ b/pkgs/by-name/ne/netclient/package.nix
@@ -8,16 +8,16 @@
 
 buildGoModule rec {
   pname = "netclient";
-  version = "0.24.0";
+  version = "0.24.1";
 
   src = fetchFromGitHub {
     owner = "gravitl";
     repo = "netclient";
     rev = "v${version}";
-    hash = "sha256-p7cPOPmD/13Mvp0aHRDj3MXfkiaimqrTeg9D7bRU3AM=";
+    hash = "sha256-oS0DqrlOyab0MS7qSEquEIixcOYnlGuCYtCBmfEURm0=";
   };
 
-  vendorHash = "sha256-mxDhjvNrV4oMHKHQHaxg35Tn30czmjGD3MTRh/Dexv4=";
+  vendorHash = "sha256-09pRwsB2ycB/MK3isXZLBZDpga95SHYkNPjWWYtUuoU=";
 
   buildInputs = lib.optional stdenv.isDarwin darwin.apple_sdk.frameworks.Cocoa
     ++ lib.optional stdenv.isLinux libX11;
diff --git a/pkgs/by-name/ne/netscanner/package.nix b/pkgs/by-name/ne/netscanner/package.nix
index 16c1f2d847ff..01dd71d3ca21 100644
--- a/pkgs/by-name/ne/netscanner/package.nix
+++ b/pkgs/by-name/ne/netscanner/package.nix
@@ -6,7 +6,7 @@
 }:
 let
   pname = "netscanner";
-  version = "0.4.4";
+  version = "0.4.5";
 in
 rustPlatform.buildRustPackage {
   inherit pname version;
@@ -17,10 +17,10 @@ rustPlatform.buildRustPackage {
     owner = "Chleba";
     repo = "netscanner";
     rev = "refs/tags/v${version}";
-    hash = "sha256-RO0+Zz1sivIjD8OM4TBHR5geJw540MAJfXEl2yriH6o=";
+    hash = "sha256-mR+jazZ2Xnf5xuWbVrFCfGOR+sjEUWL3WqHJynIHVFQ=";
   };
 
-  cargoHash = "sha256-GJLrUF2YAMtCtXTPJvlUURfiTYBFUE6Gmeux+5RXqAM=";
+  cargoHash = "sha256-+FTbvS4wqBjEL+uWYKhHQp0uMmrvVPYwxdQeZ4cWrhw=";
 
   postFixup = ''
     wrapProgram $out/bin/netscanner \
diff --git a/pkgs/by-name/ne/nezha-agent/package.nix b/pkgs/by-name/ne/nezha-agent/package.nix
index 228810059921..4f2092e5d99f 100644
--- a/pkgs/by-name/ne/nezha-agent/package.nix
+++ b/pkgs/by-name/ne/nezha-agent/package.nix
@@ -7,16 +7,16 @@
 }:
 buildGoModule rec {
   pname = "nezha-agent";
-  version = "0.16.5";
+  version = "0.16.7";
 
   src = fetchFromGitHub {
     owner = "nezhahq";
     repo = "agent";
     rev = "v${version}";
-    hash = "sha256-WRHYI3/6qrVZRa4ANA6VBBJCaINP1N8Xjy0GWO4LqgA=";
+    hash = "sha256-SKPDNYbtN93GVOlghYS69iHORDUshN47lAZ9DDoX0jM=";
   };
 
-  vendorHash = "sha256-AtcRfvYBgTZJz9dpsMgacnV8RNi2Ph7QgUrcE6zzTo8=";
+  vendorHash = "sha256-kqu3+hO0juxI5qbczVFg0GF+pljmePFbKd59a14U7Pg=";
 
   ldflags = [
     "-s"
diff --git a/pkgs/by-name/nf/nf-test/package.nix b/pkgs/by-name/nf/nf-test/package.nix
new file mode 100644
index 000000000000..44a6c5d8f4a9
--- /dev/null
+++ b/pkgs/by-name/nf/nf-test/package.nix
@@ -0,0 +1,58 @@
+{ lib
+, fetchurl
+, makeWrapper
+, nextflow
+, nf-test
+, openjdk11
+, stdenv
+, testers
+}:
+stdenv.mkDerivation rec {
+
+  pname = "nf-test";
+  version = "0.8.4";
+
+  src = fetchurl {
+    url = "https://github.com/askimed/${pname}/releases/download/v${version}/${pname}-${version}.tar.gz";
+    hash = "sha256-gCO75uNUKU+6UUST9CP4DnWGnl2vflH0y4CId/3IQ4E=";
+  };
+  sourceRoot = ".";
+
+  buildInputs = [
+    makeWrapper
+  ];
+
+  nativeBuildInputs = [
+    nextflow
+  ];
+
+
+  installPhase = ''
+    runHook preInstall
+
+    mkdir -p $out/share/nf-test
+    install -Dm644 nf-test.jar $out/share/nf-test
+
+    mkdir -p $out/bin
+    makeWrapper ${openjdk11}/bin/java $out/bin/nf-test \
+      --add-flags "-jar $out/share/nf-test/nf-test.jar" \
+      --prefix PATH : ${lib.makeBinPath nativeBuildInputs} \
+
+    runHook postInstall
+  '';
+
+  passthru.tests.version = testers.testVersion {
+    package = nf-test;
+    command = "nf-test version";
+  };
+
+  meta = with lib; {
+    description = "Simple test framework for Nextflow pipelines";
+    homepage = "https://www.nf-test.com/";
+    changelog = "https://github.com/askimed/nf-test/releases";
+    license = licenses.mit;
+    maintainers = with maintainers; [ rollf ];
+    mainProgram = "nf-test";
+    platforms = platforms.unix;
+  };
+}
diff --git a/pkgs/by-name/nh/nh/package.nix b/pkgs/by-name/nh/nh/package.nix
index 3d1480da73d2..e20797546f1a 100644
--- a/pkgs/by-name/nh/nh/package.nix
+++ b/pkgs/by-name/nh/nh/package.nix
@@ -10,7 +10,7 @@
 , nix-output-monitor
 }:
 let
-  version = "3.5.13";
+  version = "3.5.15";
   runtimeDeps = [ nvd nix-output-monitor ];
 in
 rustPlatform.buildRustPackage {
@@ -21,7 +21,7 @@ rustPlatform.buildRustPackage {
     owner = "viperML";
     repo = "nh";
     rev = "refs/tags/v${version}";
-    hash = "sha256-lTy5gmB3dJZJKag2uuuxXvZCAt/RhLnI0jbIicBJfCo=";
+    hash = "sha256-1mE4ZXGAMZl2Mufr47y+2UMDHBelqsvChaCsQDK3m70=";
   };
 
   strictDeps = true;
@@ -47,7 +47,7 @@ rustPlatform.buildRustPackage {
       --prefix PATH : ${lib.makeBinPath runtimeDeps}
   '';
 
-  cargoHash = "sha256-X8+GmPFxvgeNxMuOacoCUCgdZ/+N4mwQFMUtvO1E998=";
+  cargoHash = "sha256-5BazSJGsafSl0eE7GOWw2SrVgC3k1tlrLiIFIpC51/o=";
 
   passthru.updateScript = nix-update-script { };
 
diff --git a/pkgs/by-name/ni/nim_lk/package.nix b/pkgs/by-name/ni/nim_lk/package.nix
index 680ba976b5bd..184d1e27745a 100644
--- a/pkgs/by-name/ni/nim_lk/package.nix
+++ b/pkgs/by-name/ni/nim_lk/package.nix
@@ -1,23 +1,26 @@
-{ lib
-, buildNimPackage
-, fetchFromSourcehut
-, nim
-, nix-prefetch
-, nix-prefetch-git
-, openssl
-, makeWrapper
+{
+  lib,
+  buildNimPackage,
+  fetchFromSourcehut,
+  nim,
+  nix-prefetch,
+  nix-prefetch-git,
+  openssl,
+  makeWrapper,
 }:
 
-let nim' = nim.passthru.nim;
-in buildNimPackage (finalAttrs: {
+let
+  nim' = nim.passthru.nim;
+in
+buildNimPackage (finalAttrs: {
   pname = "nim_lk";
-  version = "20240210";
+  version = "20240510";
 
   src = fetchFromSourcehut {
     owner = "~ehmry";
     repo = "nim_lk";
     rev = finalAttrs.version;
-    hash = "sha256-LLOf8HNee0Mol+e7/dvu9hQUCmpaVBNggTxaAl/wV6Y=";
+    hash = "sha256-fwoGyYkbGstWG0qw15dOq1gmr3GyIn6ZEBeBmEivHlA=";
   };
 
   lockFile = ./lock.json;
@@ -29,7 +32,13 @@ in buildNimPackage (finalAttrs: {
 
   postFixup = ''
     wrapProgram $out/bin/nim_lk \
-      --suffix PATH : ${lib.makeBinPath [ nim' nix-prefetch nix-prefetch-git ]}
+      --suffix PATH : ${
+        lib.makeBinPath [
+          nim'
+          nix-prefetch
+          nix-prefetch-git
+        ]
+      }
   '';
 
   meta = finalAttrs.src.meta // {
diff --git a/pkgs/by-name/ni/nitter/package.nix b/pkgs/by-name/ni/nitter/package.nix
index 3b3e89cf3e69..28884a7debf0 100644
--- a/pkgs/by-name/ni/nitter/package.nix
+++ b/pkgs/by-name/ni/nitter/package.nix
@@ -8,7 +8,7 @@
 
 buildNimPackage (finalAttrs: prevAttrs: {
   pname = "nitter";
-  version = "unstable-2024-02-26";
+  version = "0-unstable-2024-02-26";
 
   src = fetchFromGitHub {
     owner = "zedeus";
diff --git a/pkgs/by-name/ni/nix-search-cli/package.nix b/pkgs/by-name/ni/nix-search-cli/package.nix
index 56bde6ac04c2..daf80cf9a772 100644
--- a/pkgs/by-name/ni/nix-search-cli/package.nix
+++ b/pkgs/by-name/ni/nix-search-cli/package.nix
@@ -6,7 +6,7 @@
 
 buildGoModule {
   pname = "nix-search-cli";
-  version = "unstable-2023-09-12";
+  version = "0-unstable-2023-09-12";
 
   src = fetchFromGitHub {
     owner = "peterldowns";
@@ -17,7 +17,11 @@ buildGoModule {
 
   vendorHash = "sha256-JDOu7YdX9ztMZt0EFAMz++gD7n+Mn1VOe5g6XwrgS5M=";
 
-  passthru.updateScript = unstableGitUpdater { };
+  passthru.updateScript = unstableGitUpdater {
+    # Almost every commit is tagged as "release-<unix-time>-<commit>", software doesn't keep track of its version
+    # Using 0 feels closer to what the tagging is trying to express
+    hardcodeZeroVersion = true;
+  };
 
   meta = with lib; {
     description = "CLI for searching packages on search.nixos.org";
diff --git a/pkgs/by-name/ni/nixos-anywhere/package.nix b/pkgs/by-name/ni/nixos-anywhere/package.nix
index ffd74761a9fe..36ee25429b81 100644
--- a/pkgs/by-name/ni/nixos-anywhere/package.nix
+++ b/pkgs/by-name/ni/nixos-anywhere/package.nix
@@ -40,6 +40,7 @@ stdenv.mkDerivation (finalAttrs: {
   nativeBuildInputs = [ makeWrapper ];
   installPhase = ''
     install -D -m 0755 src/nixos-anywhere.sh $out/bin/nixos-anywhere
+    install -D -m 0755 src/get-facts.sh $out/bin/get-facts.sh
 
     # We prefer the system's openssh over our own, since it might come with features not present in ours:
     # https://github.com/numtide/nixos-anywhere/issues/62
diff --git a/pkgs/by-name/no/nodeinfo/package.nix b/pkgs/by-name/no/nodeinfo/package.nix
new file mode 100644
index 000000000000..2027ce803510
--- /dev/null
+++ b/pkgs/by-name/no/nodeinfo/package.nix
@@ -0,0 +1,33 @@
+{
+  lib,
+  fetchFromGitea,
+  buildGoModule,
+}:
+buildGoModule rec {
+  pname = "nodeinfo";
+  version = "0.3.2";
+  vendorHash = "sha256-4nHdz/Js8xBUMiH+hH+hSYP25cB4yHbe+QVk0RMqLgc=";
+
+  src = fetchFromGitea {
+    domain = "codeberg.org";
+    owner = "thefederationinfo";
+    repo = "nodeinfo-go";
+    rev = "refs/tags/v${version}";
+    hash = "sha256-NNrMv4AS7ybuJfTgs+p61btSIxo+iMvzH7Y5ct46Dag=";
+  };
+
+  tags = "extension";
+
+  sourceRoot = "${src.name}/cli";
+
+  CGO_ENABLED = 0;
+
+  meta = with lib; {
+    mainProgram = "nodeinfo";
+    description = "A command line tool to query nodeinfo based on a given domain";
+    homepage = "https://codeberg.org/thefederationinfo/nodeinfo-go";
+    changelog = "https://codeberg.org/thefederationinfo/nodeinfo-go/releases/tag/v${version}";
+    license = licenses.mit;
+    maintainers = with maintainers; [ _6543 ];
+  };
+}
diff --git a/pkgs/by-name/no/normcap/package.nix b/pkgs/by-name/no/normcap/package.nix
index 0f6e21671de3..40c7d66a9f00 100644
--- a/pkgs/by-name/no/normcap/package.nix
+++ b/pkgs/by-name/no/normcap/package.nix
@@ -25,7 +25,7 @@ in
 
 ps.buildPythonApplication rec {
   pname = "normcap";
-  version = "0.5.4";
+  version = "0.5.6";
   format = "pyproject";
 
   disabled = ps.pythonOlder "3.9";
@@ -34,7 +34,7 @@ ps.buildPythonApplication rec {
     owner = "dynobo";
     repo = "normcap";
     rev = "refs/tags/v${version}";
-    hash = "sha256-bYja05U/JBwSij1J2LxN+c5Syrb4qzWSZY5+HNmC9Zo=";
+    hash = "sha256-pvctgJCst536D3yLlel70hCwe1T3lxA8F6L3KKbfiEA=";
   };
 
   postPatch = ''
diff --git a/pkgs/by-name/no/nosql-workbench/package.nix b/pkgs/by-name/no/nosql-workbench/package.nix
index c3efc29b55c0..e3d1890665a5 100644
--- a/pkgs/by-name/no/nosql-workbench/package.nix
+++ b/pkgs/by-name/no/nosql-workbench/package.nix
@@ -58,9 +58,9 @@ if stdenv.isDarwin then stdenv.mkDerivation {
 } else appimageTools.wrapType2 {
   inherit pname version src meta;
 
-  extraPkgs = ps: (appimageTools.defaultFhsEnvArgs.multiPkgs ps) ++ [
+  extraPkgs = pkgs: [
     # Required to run DynamoDB locally
-    ps.jdk21
+    pkgs.jdk21
   ];
 
   extraInstallCommands = let
diff --git a/pkgs/by-name/no/novops/package.nix b/pkgs/by-name/no/novops/package.nix
index eed3077f5ef3..02f11dc208dd 100644
--- a/pkgs/by-name/no/novops/package.nix
+++ b/pkgs/by-name/no/novops/package.nix
@@ -10,16 +10,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "novops";
-  version = "0.13.0";
+  version = "0.15.0";
 
   src = fetchFromGitHub {
     owner = "PierreBeucher";
     repo = pname;
     rev = "v${version}";
-    hash = "sha256-LrEPdEVWgbZ6WyEqdfAhUjKXPuk8Xx7kmLA2ZsPFf1U=";
+    hash = "sha256-b6CM7dDjEzFuL6SZQsFMBOq8p66Jnd7BdXFspWYlTps=";
   };
 
-  cargoHash = "sha256-kI836Z0fgpmPPoX0HtWkZG731xaVWgWkXF0eCaQfM28=";
+  cargoHash = "sha256-mhNEeczbqXVsHoErwEIPUuJqNcyR6dTKBDeHCVH+KsE=";
 
   buildInputs = [
     openssl # required for openssl-sys
diff --git a/pkgs/by-name/nr/nrfconnect/package.nix b/pkgs/by-name/nr/nrfconnect/package.nix
index c3a6e0e7f3dd..a60ddd533441 100644
--- a/pkgs/by-name/nr/nrfconnect/package.nix
+++ b/pkgs/by-name/nr/nrfconnect/package.nix
@@ -5,11 +5,11 @@
 
 let
   pname = "nrfconnect";
-  version = "4.3.0";
+  version = "4.4.1";
 
   src = fetchurl {
     url = "https://nsscprodmedia.blob.core.windows.net/prod/software-and-other-downloads/desktop-software/nrf-connect-for-desktop/${lib.versions.major version}-${lib.versions.minor version}-${lib.versions.patch version}/nrfconnect-${version}-x86_64.appimage";
-    hash = "sha256-G8//dZqPxn6mR8Bjzf/bAn9Gv7t2AFWIF9twCGbqMd8=";
+    hash = "sha256-x/vVSOEajuQtLATRXk8DVLlXHegCqP+acecaOFNeBb8=";
     name = "${pname}-${version}.AppImage";
   };
 
@@ -20,12 +20,9 @@ let
 in appimageTools.wrapType2 {
   inherit pname version src;
 
-  extraPkgs = pkgs: with pkgs; [
-    segger-jlink
-  ];
+  extraPkgs = pkgs: [ pkgs.segger-jlink ];
 
   extraInstallCommands = ''
-    mv $out/bin/nrfconnect-* $out/bin/nrfconnect
     install -Dm444 ${appimageContents}/nrfconnect.desktop -t $out/share/applications
     install -Dm444 ${appimageContents}/usr/share/icons/hicolor/512x512/apps/nrfconnect.png \
       -t $out/share/icons/hicolor/512x512/apps
diff --git a/pkgs/by-name/nr/nrr/package.nix b/pkgs/by-name/nr/nrr/package.nix
index 0992152aed3e..7d43400dba3e 100644
--- a/pkgs/by-name/nr/nrr/package.nix
+++ b/pkgs/by-name/nr/nrr/package.nix
@@ -10,16 +10,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "nrr";
-  version = "0.9.0";
+  version = "0.9.1";
 
   src = fetchFromGitHub {
     owner = "ryanccn";
     repo = "nrr";
     rev = "v${version}";
-    hash = "sha256-94BeBCYCxZBoOp6xo4I/uxd6ULjIfmF4nw/vUWoaEpo=";
+    hash = "sha256-wof/KmoHiBkcn2aTh+M6bNH/B6Le3H6hnT8BzUCs0Pw=";
   };
 
-  cargoHash = "sha256-DTQTIAk914XC+LecQTXk1TdBc/5sMFG8KiD9lO5HLiM=";
+  cargoHash = "sha256-BtYZNZxFjgY/BFd1kwGyy/F1iRezSDxoPHF4exrNzuk=";
 
   buildInputs = lib.optionals stdenv.isDarwin [
     darwin.apple_sdk.frameworks.CoreFoundation
diff --git a/pkgs/by-name/nu/nuclei-templates/package.nix b/pkgs/by-name/nu/nuclei-templates/package.nix
index 09142e93ca10..90eb9d35d25e 100644
--- a/pkgs/by-name/nu/nuclei-templates/package.nix
+++ b/pkgs/by-name/nu/nuclei-templates/package.nix
@@ -6,13 +6,13 @@
 
 stdenvNoCC.mkDerivation rec {
   pname = "nuclei-templates";
-  version = "9.8.5";
+  version = "9.8.6";
 
   src = fetchFromGitHub {
     owner = "projectdiscovery";
     repo = "nuclei-templates";
     rev = "refs/tags/v${version}";
-    hash = "sha256-j1W/Gq002Y+/Lrq51Od8iZoxbMJji20kpbUaCC7ieqE=";
+    hash = "sha256-3hJfWSBciJ/UutVBIGisptcxmtWfvSfTbx55cyWxs4k=";
   };
 
   installPhase = ''
diff --git a/pkgs/by-name/nw/nwg-drawer/package.nix b/pkgs/by-name/nw/nwg-drawer/package.nix
index 42a69d594974..647ca14b3c2b 100644
--- a/pkgs/by-name/nw/nwg-drawer/package.nix
+++ b/pkgs/by-name/nw/nwg-drawer/package.nix
@@ -6,7 +6,7 @@
 , gtk-layer-shell
 , gtk3
 , pkg-config
-, wrapGAppsHook
+, wrapGAppsHook3
 , xdg-utils
 }:
 
@@ -29,7 +29,7 @@ buildGoModule {
   nativeBuildInputs = [
     gobject-introspection
     pkg-config
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
diff --git a/pkgs/by-name/nw/nwg-hello/package.nix b/pkgs/by-name/nw/nwg-hello/package.nix
index cae3fd2d2521..8efe84411f50 100644
--- a/pkgs/by-name/nw/nwg-hello/package.nix
+++ b/pkgs/by-name/nw/nwg-hello/package.nix
@@ -4,7 +4,7 @@
 , gtk-layer-shell
 , gtk3
 , python3Packages
-, wrapGAppsHook
+, wrapGAppsHook3
 }:
 
 python3Packages.buildPythonApplication rec {
@@ -20,7 +20,7 @@ python3Packages.buildPythonApplication rec {
 
   nativeBuildInputs = [
     gobject-introspection
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
diff --git a/pkgs/by-name/of/offat/package.nix b/pkgs/by-name/of/offat/package.nix
index 6bdd5e507b71..029fab3da789 100644
--- a/pkgs/by-name/of/offat/package.nix
+++ b/pkgs/by-name/of/offat/package.nix
@@ -6,14 +6,14 @@
 
 python3.pkgs.buildPythonApplication rec {
   pname = "offat";
-  version = "0.17.3";
+  version = "0.17.5";
   pyproject = true;
 
   src = fetchFromGitHub {
     owner = "OWASP";
     repo = "OFFAT";
     rev = "refs/tags/v${version}";
-    hash = "sha256-q9xqtJJ9R81tNvd5Z6S4OWMqDwVoijntw2LOXldVy0E=";
+    hash = "sha256-61VJPsmSvKZKBWQNl7klqZqFjEjhM3n4LuafZh4d6g4=";
   };
 
   sourceRoot = "${src.name}/src";
diff --git a/pkgs/development/tools/oh-my-posh/default.nix b/pkgs/by-name/oh/oh-my-posh/package.nix
index c2dd4cb8e5c6..698aa781b201 100644
--- a/pkgs/development/tools/oh-my-posh/default.nix
+++ b/pkgs/by-name/oh/oh-my-posh/package.nix
@@ -6,16 +6,16 @@
 
 buildGoModule rec {
   pname = "oh-my-posh";
-  version = "19.24.3";
+  version = "19.29.0";
 
   src = fetchFromGitHub {
     owner = "jandedobbeleer";
     repo = pname;
     rev = "refs/tags/v${version}";
-    hash = "sha256-sgtMK1ccf1rX5ZdQpTRClxx112eOFV+BWyTIpMlzLVA=";
+    hash = "sha256-vn3P9upO6d0jpZzrG77/xkhfn4NINnBZ3YymlRdoONw=";
   };
 
-  vendorHash = "sha256-iSbQn86b1xZwlyo5nKYI7LEH5AyWCw7MLgD3Q0mtFfk=";
+  vendorHash = "sha256-mZNhsvEI1AbsAhoK7AuNgrQvYlkGrrpPVuv3R5nssC4=";
 
   sourceRoot = "${src.name}/src";
 
diff --git a/pkgs/by-name/ol/olvid/package.nix b/pkgs/by-name/ol/olvid/package.nix
index bd0eb63a9af7..ec90fcb72fe9 100644
--- a/pkgs/by-name/ol/olvid/package.nix
+++ b/pkgs/by-name/ol/olvid/package.nix
@@ -13,7 +13,7 @@
 , openjfx21
 , autoPatchelfHook
 , makeBinaryWrapper
-, wrapGAppsHook
+, wrapGAppsHook3
 }:
 
 let
@@ -66,7 +66,7 @@ stdenv.mkDerivation (finalAttrs: {
   nativeBuildInputs = [
     autoPatchelfHook
     makeBinaryWrapper
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
diff --git a/pkgs/by-name/om/omnictl/package.nix b/pkgs/by-name/om/omnictl/package.nix
index ab74d54c2ea7..9fa32bb16998 100644
--- a/pkgs/by-name/om/omnictl/package.nix
+++ b/pkgs/by-name/om/omnictl/package.nix
@@ -2,16 +2,16 @@
 
 buildGoModule rec {
   pname = "omnictl";
-  version = "0.34.0";
+  version = "0.35.0";
 
   src = fetchFromGitHub {
     owner = "siderolabs";
     repo = "omni";
     rev = "v${version}";
-    hash = "sha256-aYdJ1cfA2xov0JMGlKNTcLfpi3KX3jRRA6N+8WfQoi0=";
+    hash = "sha256-y4kWIj7DDeUs521csW26w1K6esZMgvI4MQtgZAeOtlk=";
   };
 
-  vendorHash = "sha256-vJb9uUqLzQ38b4nJv0Q6/V8lIxw04fow16e2SSRCmuI=";
+  vendorHash = "sha256-BYKIAgWR+PDJbDJ72PS6TDvpZx7yRaDJzbq0/b/MIKs=";
 
   ldflags = [ "-s" "-w" ];
 
diff --git a/pkgs/by-name/on/onagre/package.nix b/pkgs/by-name/on/onagre/package.nix
new file mode 100644
index 000000000000..2943e8f03294
--- /dev/null
+++ b/pkgs/by-name/on/onagre/package.nix
@@ -0,0 +1,58 @@
+{ lib
+, fetchFromGitHub
+, makeWrapper
+, rustPlatform
+, cmake
+, pkgconf
+, freetype
+, expat
+, wayland
+, xorg
+, libxkbcommon
+, pop-launcher
+, vulkan-loader
+, libGL
+}:
+
+rustPlatform.buildRustPackage rec {
+  pname = "onagre";
+  version = "1.1.0";
+
+  src = fetchFromGitHub {
+    owner = "onagre-launcher";
+    repo = "onagre";
+    rev = "1.1.0";
+    hash = "sha256-ASeLvgj2RyhsZQtkUTYeA7jWyhbLg8yl6HbN2A/Sl2M=";
+  };
+
+  cargoHash = "sha256-17Hw3jtisOXwARpp0jB0hrNax7nzMWS0kCE3ZAruBj8=";
+
+  nativeBuildInputs = [ makeWrapper cmake pkgconf ];
+  buildInputs = [
+    expat
+    freetype
+    xorg.libX11
+    xorg.libXcursor
+    xorg.libXi
+    xorg.libXrandr
+  ];
+
+  postFixup = let
+    rpath = lib.makeLibraryPath [ libGL vulkan-loader wayland libxkbcommon ];
+  in ''
+    patchelf --set-rpath ${rpath} $out/bin/onagre
+    wrapProgram $out/bin/onagre \
+      --prefix PATH ':' ${lib.makeBinPath [
+        pop-launcher
+      ]}
+  '';
+
+  meta = with lib; {
+    description = "A general purpose application launcher for X and wayland inspired by rofi/wofi and alfred";
+    homepage = "https://github.com/onagre-launcher/onagre";
+    license = licenses.mit;
+    maintainers = [ maintainers.jfvillablanca maintainers.ilya-epifanov ];
+    platforms = platforms.linux;
+    mainProgram = "onagre";
+  };
+}
diff --git a/pkgs/by-name/on/onedriver/package.nix b/pkgs/by-name/on/onedriver/package.nix
index 348f4b658b4c..c4e3ba572d28 100644
--- a/pkgs/by-name/on/onedriver/package.nix
+++ b/pkgs/by-name/on/onedriver/package.nix
@@ -6,7 +6,8 @@
 , glib
 , fuse
 , installShellFiles
-, wrapGAppsHook
+, wrapGAppsHook3
+, glib-networking
 , wrapperDir ? "/run/wrappers/bin"
 }:
 let
@@ -24,8 +25,8 @@ buildGoModule {
   inherit pname version src;
   vendorHash = "sha256-OOiiKtKb+BiFkoSBUQQfqm4dMfDW3Is+30Kwcdg8LNA=";
 
-  nativeBuildInputs = [ pkg-config installShellFiles wrapGAppsHook ];
-  buildInputs = [ webkitgtk_4_1 glib fuse ];
+  nativeBuildInputs = [ pkg-config installShellFiles wrapGAppsHook3 ];
+  buildInputs = [ webkitgtk_4_1 glib fuse glib-networking ];
 
   ldflags = [ "-X github.com/jstaf/onedriver/cmd/common.commit=v${version}" ];
 
diff --git a/pkgs/by-name/on/onevpl-intel-gpu/package.nix b/pkgs/by-name/on/onevpl-intel-gpu/package.nix
index 64e6f9d262f2..da1e611e8d5c 100644
--- a/pkgs/by-name/on/onevpl-intel-gpu/package.nix
+++ b/pkgs/by-name/on/onevpl-intel-gpu/package.nix
@@ -9,7 +9,7 @@
 
 stdenv.mkDerivation rec {
   pname = "onevpl-intel-gpu";
-  version = "23.4.3";
+  version = "24.2.2";
 
   outputs = [ "out" "dev" ];
 
@@ -17,7 +17,7 @@ stdenv.mkDerivation rec {
     owner = "oneapi-src";
     repo = "oneVPL-intel-gpu";
     rev = "intel-onevpl-${version}";
-    sha256 = "sha256-oDwDMUq6JpRJH5nbANb7TJLW7HRYA9y0xZxEsoepx/U=";
+    sha256 = "sha256-JtvRh4p4wPRnqFfE86tJW+yS9AKMoi3TPZO+LZ2Q7Mo=";
   };
 
   nativeBuildInputs = [ cmake pkg-config ];
diff --git a/pkgs/by-name/on/onlyoffice-bin/package.nix b/pkgs/by-name/on/onlyoffice-bin/package.nix
index 8abf0909e6b3..4c9c0cd1e326 100644
--- a/pkgs/by-name/on/onlyoffice-bin/package.nix
+++ b/pkgs/by-name/on/onlyoffice-bin/package.nix
@@ -28,7 +28,7 @@
 , nss
 , pulseaudio
 , qt5
-, wrapGAppsHook
+, wrapGAppsHook3
 , xkeyboard_config
 , xorg
 }:
@@ -86,7 +86,7 @@ stdenv.mkDerivation rec {
     autoPatchelfHook
     dpkg
     makeWrapper
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
diff --git a/pkgs/by-name/on/onlyoffice-bin_latest/package.nix b/pkgs/by-name/on/onlyoffice-bin_latest/package.nix
index 0b5420300814..538e55b8bb25 100644
--- a/pkgs/by-name/on/onlyoffice-bin_latest/package.nix
+++ b/pkgs/by-name/on/onlyoffice-bin_latest/package.nix
@@ -31,7 +31,7 @@
 , nss
 , pulseaudio
 , qt5
-, wrapGAppsHook
+, wrapGAppsHook3
 , xkeyboard_config
 , xorg
 }:
@@ -76,7 +76,7 @@ let
       autoPatchelfHook
       dpkg
       makeWrapper
-      wrapGAppsHook
+      wrapGAppsHook3
     ];
 
     buildInputs = [
diff --git a/pkgs/applications/networking/instant-messengers/discord/openasar.nix b/pkgs/by-name/op/openasar/package.nix
index dbb05162f12a..a03e3205ffc3 100644
--- a/pkgs/applications/networking/instant-messengers/discord/openasar.nix
+++ b/pkgs/by-name/op/openasar/package.nix
@@ -1,14 +1,23 @@
-{ lib, stdenv, fetchFromGitHub, nodejs, bash, asar, unzip }:
+{
+  lib,
+  stdenv,
+  fetchFromGitHub,
+  unstableGitUpdater,
+  nodejs,
+  bash,
+  asar,
+  unzip,
+}:
 
-stdenv.mkDerivation rec {
+stdenv.mkDerivation (finalAttrs: {
   pname = "openasar";
-  version = "unstable-2023-10-24";
+  version = "0-unstable-2024-01-13";
 
   src = fetchFromGitHub {
     owner = "GooseMod";
     repo = "OpenAsar";
-    rev = "eee9bab822e3dbd97a735d0050ddd41ba27917f2";
-    hash = "sha256-SSWQSqGgTZjowgrzF6qHZDTw/Y9xFHNTZvetxqZubYI=";
+    rev = "4f264d860a5a6a32e1862ce26178b9cf6402335d";
+    hash = "sha256-NPUUDqntsMxnT/RN5M9DtLDwJXDyjOED4GlXa1oU8l8=";
   };
 
   postPatch = ''
@@ -23,7 +32,7 @@ stdenv.mkDerivation rec {
     runHook preBuild
 
     bash scripts/injectPolyfills.sh
-    substituteInPlace src/index.js --replace 'nightly' '${version}'
+    substituteInPlace src/index.js --replace 'nightly' '${finalAttrs.version}'
     ${nodejs}/bin/node scripts/strip.js
     ${asar}/bin/asar pack src app.asar
 
@@ -40,11 +49,19 @@ stdenv.mkDerivation rec {
 
   doCheck = false;
 
+  passthru.updateScript = unstableGitUpdater {
+    # Only has a "nightly" tag (untaged version 0.2 is latest) see https://github.com/GooseMod/OpenAsar/commit/8f79dcef9b1f7732421235a392f06e5bd7382659
+    hardcodeZeroVersion = true;
+  };
+
   meta = with lib; {
     description = "Open-source alternative of Discord desktop's \"app.asar\".";
     homepage = "https://openasar.dev";
-    license = licenses.mit;
-    maintainers = with maintainers; [ ];
+    license = licenses.agpl3Only;
+    maintainers = with maintainers; [
+      Scrumplex
+      jopejoe1
+    ];
     platforms = nodejs.meta.platforms;
   };
-}
+})
diff --git a/pkgs/by-name/op/opencomposite/package.nix b/pkgs/by-name/op/opencomposite/package.nix
index dff4e5988cda..8e58c90dfdf6 100644
--- a/pkgs/by-name/op/opencomposite/package.nix
+++ b/pkgs/by-name/op/opencomposite/package.nix
@@ -12,18 +12,18 @@
 , vulkan-loader
 , xorg
 
-, nix-update-script
+, unstableGitUpdater
 }:
 
 stdenv.mkDerivation {
   pname = "opencomposite";
-  version = "unstable-2024-03-04";
+  version = "0-unstable-2024-05-08";
 
   src = fetchFromGitLab {
     owner = "znixian";
     repo = "OpenOVR";
-    rev = "1bfdf67358add5f573efedbec1fa65d18b790e0e";
-    hash = "sha256-qF5oMI9B5a1oE2gQb/scbom/39Efccja0pTPHHaHMA8=";
+    rev = "5ddd6024efafa82c7a432c9dd8a67e3d5c3f9b38";
+    hash = "sha256-m6Xhi6xlDWiVqtYyxpQP2vp5JsB2EKsoXkmd0IYtPQ8=";
   };
 
   nativeBuildInputs = [
@@ -52,8 +52,9 @@ stdenv.mkDerivation {
     runHook postInstall
   '';
 
-  passthru.updateScript = nix-update-script {
-    extraArgs = [ "--version=branch=openxr" ];
+  passthru.updateScript = unstableGitUpdater {
+    hardcodeZeroVersion = true;
+    branch = "openxr";
   };
 
   meta = with lib; {
diff --git a/pkgs/by-name/op/openfga-cli/package.nix b/pkgs/by-name/op/openfga-cli/package.nix
new file mode 100644
index 000000000000..1cdbfaca786d
--- /dev/null
+++ b/pkgs/by-name/op/openfga-cli/package.nix
@@ -0,0 +1,55 @@
+{
+  lib,
+  buildGoModule,
+  fetchFromGitHub,
+  installShellFiles,
+}:
+
+let
+  pname = "openfga-cli";
+  version = "0.4.0";
+in
+
+buildGoModule {
+  inherit pname version;
+
+  src = fetchFromGitHub {
+    owner = "openfga";
+    repo = "cli";
+    rev = "v${version}";
+    hash = "sha256-nwzUBzu8c8kuSTbjwOB1mCFMLF1zoUReXofXeBOAO1U=";
+  };
+
+  vendorHash = "sha256-3fElvsy248lRwmIKWv8ac6BLJ1y5Qyr+kKh/1vprmvo=";
+
+  nativeBuildInputs = [ installShellFiles ];
+
+  ldflags =
+    let
+      buildInfoPkg = "github.com/openfga/cli/internal/build";
+    in
+    [
+      "-s"
+      "-w"
+      "-X ${buildInfoPkg}.Version=${version}"
+      "-X ${buildInfoPkg}.Commit=${version}"
+      "-X ${buildInfoPkg}.Date=19700101"
+    ];
+
+  postInstall = ''
+    completions_dir=$TMPDIR/fga_completions
+    mkdir $completions_dir
+    $out/bin/fga completion bash > $completions_dir/fga.bash
+    $out/bin/fga completion zsh > $completions_dir/_fga.zsh
+    $out/bin/fga completion fish > $completions_dir/fga.fish
+    installShellCompletion $completions_dir/*
+  '';
+
+  meta = {
+    description = "A cross-platform CLI to interact with an OpenFGA server";
+    homepage = "https://github.com/openfga/cli";
+    license = lib.licenses.asl20;
+    mainProgram = "fga";
+    maintainers = with lib.maintainers; [ jlesquembre ];
+  };
+}
diff --git a/pkgs/by-name/op/openfga/package.nix b/pkgs/by-name/op/openfga/package.nix
new file mode 100644
index 000000000000..3b034bb11643
--- /dev/null
+++ b/pkgs/by-name/op/openfga/package.nix
@@ -0,0 +1,58 @@
+{
+  lib,
+  buildGoModule,
+  fetchFromGitHub,
+  installShellFiles,
+}:
+
+let
+  pname = "openfga";
+  version = "1.5.3";
+in
+
+buildGoModule {
+  inherit pname version;
+
+  src = fetchFromGitHub {
+    owner = "openfga";
+    repo = "openfga";
+    rev = "v${version}";
+    hash = "sha256-+ECfBG0Z1XnopMPbq9jngcZ3lcSFOIomWo5iD0T1teQ=";
+  };
+
+  vendorHash = "sha256-MyoqdmNtpsoT08BKA9DPlpldIEXb82qzeXnW4KQXTiE=";
+
+  nativeBuildInputs = [ installShellFiles ];
+
+  ldflags =
+    let
+      buildInfoPkg = "github.com/openfga/openfga/internal/build";
+    in
+    [
+      "-s"
+      "-w"
+      "-X ${buildInfoPkg}.Version=${version}"
+      "-X ${buildInfoPkg}.Commit=${version}"
+      "-X ${buildInfoPkg}.Date=19700101"
+    ];
+
+  # Tests depend on docker
+  doCheck = false;
+
+  postInstall = ''
+    completions_dir=$TMPDIR/openfga_completions
+    mkdir $completions_dir
+    $out/bin/openfga completion bash > $completions_dir/openfga.bash
+    $out/bin/openfga completion zsh > $completions_dir/_openfga.zsh
+    $out/bin/openfga completion fish > $completions_dir/openfga.fish
+    installShellCompletion $completions_dir/*
+  '';
+
+  meta = {
+    description = "A high performance and flexible authorization/permission engine built for developers and inspired by Google Zanzibar";
+    homepage = "https://openfga.dev/";
+    license = lib.licenses.asl20;
+    mainProgram = "openfga";
+    maintainers = with lib.maintainers; [ jlesquembre ];
+  };
+}
diff --git a/pkgs/by-name/op/openpgl/package.nix b/pkgs/by-name/op/openpgl/package.nix
index ed81711d8f5d..76e61b6658d6 100644
--- a/pkgs/by-name/op/openpgl/package.nix
+++ b/pkgs/by-name/op/openpgl/package.nix
@@ -12,7 +12,7 @@ stdenv.mkDerivation (finalAttrs: {
 
   src = fetchFromGitHub {
     owner = "OpenPathGuidingLibrary";
-    repo = finalAttrs.pname;
+    repo = "openpgl";
     rev = "v${finalAttrs.version}";
     hash = "sha256-dbHmGGiHQkU0KPpQYpY/o0uCWdb3L5namETdOcOREgs=";
   };
@@ -31,12 +31,12 @@ stdenv.mkDerivation (finalAttrs: {
     "-DTBB_ROOT=${tbb.out}"
   ];
 
-  env.NIX_CFLAGS_COMPILE = lib.optionalString stdenv.isAarch64 "-flax-vector-conversions";
+  env.NIX_CFLAGS_COMPILE = lib.optionalString (stdenv.isAarch64 && !stdenv.isDarwin) "-flax-vector-conversions";
 
   meta = {
     description = "Intel Open Path Guiding Library";
     homepage = "https://github.com/OpenPathGuidingLibrary/openpgl";
-    platforms = lib.platforms.linux;
+    platforms = lib.platforms.unix;
     maintainers = [ lib.maintainers.amarshall ];
     license = lib.licenses.asl20;
   };
diff --git a/pkgs/by-name/op/openrocket/package.nix b/pkgs/by-name/op/openrocket/package.nix
index 384d84d9fa45..b8d83dd8b30d 100644
--- a/pkgs/by-name/op/openrocket/package.nix
+++ b/pkgs/by-name/op/openrocket/package.nix
@@ -60,7 +60,7 @@ stdenvNoCC.mkDerivation (finalAttrs: {
   meta = {
     changelog = "https://github.com/openrocket/openrocket/releases/tag/${finalAttrs.src.rev}";
     description = "Model-rocketry aerodynamics and trajectory simulation software";
-    homepage = "openrocket.info";
+    homepage = "https://openrocket.info";
     license = lib.licenses.gpl3Plus;
     mainProgram = "openrocket";
     maintainers = with lib.maintainers; [ tomasajt ];
diff --git a/pkgs/by-name/op/openscad-unstable/package.nix b/pkgs/by-name/op/openscad-unstable/package.nix
index 4483d5271fb1..1e14580b42bb 100644
--- a/pkgs/by-name/op/openscad-unstable/package.nix
+++ b/pkgs/by-name/op/openscad-unstable/package.nix
@@ -34,7 +34,7 @@
 , tbb_2021_11
 , wayland
 , wayland-protocols
-, wrapGAppsHook
+, wrapGAppsHook3
 , xorg
 }:
 let
@@ -97,7 +97,7 @@ clangStdenv.mkDerivation rec {
     flex
     libsForQt5.qt5.wrapQtAppsHook
     llvmPackages.bintools
-    wrapGAppsHook
+    wrapGAppsHook3
     ninja
     pkg-config
   ];
diff --git a/pkgs/by-name/op/openswitcher/package.nix b/pkgs/by-name/op/openswitcher/package.nix
index 569ed3597ea6..fb47a9f95a5a 100644
--- a/pkgs/by-name/op/openswitcher/package.nix
+++ b/pkgs/by-name/op/openswitcher/package.nix
@@ -9,7 +9,7 @@
 , ninja
 , pkg-config
 , scdoc
-, wrapGAppsHook
+, wrapGAppsHook3
 }:
 
 python3Packages.buildPythonApplication rec {
@@ -41,7 +41,7 @@ python3Packages.buildPythonApplication rec {
     ninja
     pkg-config
     scdoc
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   dontWrapGApps = true;
diff --git a/pkgs/by-name/op/openturns/package.nix b/pkgs/by-name/op/openturns/package.nix
new file mode 100644
index 000000000000..152714133fa7
--- /dev/null
+++ b/pkgs/by-name/op/openturns/package.nix
@@ -0,0 +1,99 @@
+{
+  lib,
+  boost,
+  ceres-solver,
+  cmake,
+  cminpack,
+  darwin,
+  dlib,
+  fetchFromGitHub,
+  fetchpatch,
+  hdf5,
+  hmat-oss,
+  ipopt,
+  libxml2,
+  nlopt,
+  pagmo2,
+  primesieve,
+  python3Packages,
+  spectra,
+  stdenv,
+  swig,
+  tbb,
+  # Boolean flags
+  runTests ? false, # tests take an hour to build on a 48-core machine
+  enablePython ? false,
+}:
+
+let
+  inherit (darwin.apple_sdk.frameworks) Accelerate;
+in
+stdenv.mkDerivation (finalAttrs: {
+  pname = "openturns";
+  version = "1.22";
+
+  src = fetchFromGitHub {
+    owner = "openturns";
+    repo = "openturns";
+    rev = "v${finalAttrs.version}";
+    hash = "sha256-ku3/mPoa1YJVJB99R/kWlOubIO+OZAiKfPqS/DrtJQk=";
+  };
+
+  nativeBuildInputs = [
+    cmake
+  ]
+  ++ lib.optionals enablePython [ python3Packages.sphinx ];
+
+  buildInputs = [
+    (lib.getLib primesieve)
+    boost
+    ceres-solver
+    cminpack
+    dlib
+    hdf5
+    hmat-oss
+    ipopt
+    libxml2
+    nlopt
+    pagmo2
+    spectra
+    swig
+    tbb
+  ]
+  ++ lib.optionals enablePython [
+    python3Packages.dill
+    python3Packages.matplotlib
+    python3Packages.psutil
+    python3Packages.python
+  ]
+  ++ lib.optionals stdenv.isDarwin [
+    Accelerate
+  ];
+
+  cmakeFlags = [
+    (lib.cmakeBool "BUILD_PYTHON" enablePython)
+    (lib.cmakeBool "CMAKE_UNITY_BUILD" true)
+    (lib.cmakeBool "USE_SPHINX" enablePython)
+    (lib.cmakeFeature "CMAKE_UNITY_BUILD_BATCH_SIZE" "32")
+    (lib.cmakeFeature "SWIG_COMPILE_FLAGS" "-O1")
+    (lib.cmakeOptionType "PATH" "OPENTURNS_SYSCONFIG_PATH" "$out/etc")
+  ];
+
+  checkTarget = lib.concatStringsSep " " [
+    "tests"
+    "check"
+  ];
+
+  strictDeps = true;
+
+  doCheck = runTests;
+
+  meta = {
+    homepage = "https://openturns.github.io/www/";
+    description = "Multivariate probabilistic modeling and uncertainty treatment library";
+    changelog = "https://github.com/openturns/openturns/raw/v${finalAttrs.version}/ChangeLog";
+    license = with lib.licenses; [ lgpl3Plus gpl3Plus ];
+    maintainers = with lib.maintainers; [ gdinh ];
+    platforms = lib.platforms.unix;
+  };
+})
diff --git a/pkgs/by-name/op/openvas-scanner/package.nix b/pkgs/by-name/op/openvas-scanner/package.nix
index 66587f76d605..f20eaafd2f63 100644
--- a/pkgs/by-name/op/openvas-scanner/package.nix
+++ b/pkgs/by-name/op/openvas-scanner/package.nix
@@ -31,13 +31,13 @@
 
 stdenv.mkDerivation rec {
   pname = "openvas-scanner";
-  version = "23.1.0";
+  version = "23.2.1";
 
   src = fetchFromGitHub {
     owner = "greenbone";
     repo = "openvas-scanner";
     rev = "refs/tags/v${version}";
-    hash = "sha256-2tMCyEBVR/DQP7Dny5iPypv2IWkurfxhZEHC/f+Pe8c=";
+    hash = "sha256-fP21F9SGT20sGPsQI5BxwQUCgZdLCBt+fsXutZu463k=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/libraries/openvr/default.nix b/pkgs/by-name/op/openvr/package.nix
index 5bdb10549001..418004909ae6 100644
--- a/pkgs/development/libraries/openvr/default.nix
+++ b/pkgs/by-name/op/openvr/package.nix
@@ -7,17 +7,18 @@
 , lib
 , libGL
 , stdenv
+, nix-update-script
 }:
 
 stdenv.mkDerivation (finalAttrs: {
   pname = "openvr";
-  version = "2.2.3";
+  version = "2.5.1";
 
   src = fetchFromGitHub {
     owner = "ValveSoftware";
     repo = "openvr";
     rev = "v${finalAttrs.version}";
-    hash = "sha256-Dpl88Te+EoVasoCtwERGrYt3xK8o03h15r8IVxxPPCw=";
+    hash = "sha256-bIKjZ7DvJVmDK386WgXaAFQrS0E1TNEUMhfQp7FNnvk=";
   };
 
   patches = [
@@ -56,6 +57,8 @@ stdenv.mkDerivation (finalAttrs: {
 
   cmakeFlags = [ "-DUSE_SYSTEM_JSONCPP=ON" "-DBUILD_SHARED=1" ];
 
+  passthru.updateScript = nix-update-script { };
+
   meta = {
     broken = stdenv.isDarwin;
     description = "An API and runtime that allows access to VR hardware from multiple vendors without requiring that applications have specific knowledge of the hardware they are targeting";
diff --git a/pkgs/by-name/op/openvswitch/generic.nix b/pkgs/by-name/op/openvswitch/generic.nix
index dadccc1c3947..9833661ef5cd 100644
--- a/pkgs/by-name/op/openvswitch/generic.nix
+++ b/pkgs/by-name/op/openvswitch/generic.nix
@@ -112,6 +112,7 @@ stdenv.mkDerivation rec {
       netaddr
       pyparsing
       pytest
+      setuptools
     ]);
 
   passthru.updateScript = writeScript "ovs-update.nu" ''
diff --git a/pkgs/by-name/or/orca/fix-paths.patch b/pkgs/by-name/or/orca/fix-paths.patch
new file mode 100644
index 000000000000..5f5feacb33a5
--- /dev/null
+++ b/pkgs/by-name/or/orca/fix-paths.patch
@@ -0,0 +1,75 @@
+diff --git a/src/orca/debug.py b/src/orca/debug.py
+index eb939a236..4e4db2e84 100644
+--- a/src/orca/debug.py
++++ b/src/orca/debug.py
+@@ -522,7 +522,7 @@ def traceit(frame, event, arg):
+     return traceit
+ 
+ def getOpenFDCount(pid):
+-    procs = subprocess.check_output([ 'lsof', '-w', '-Ff', '-p', str(pid)])
++    procs = subprocess.check_output([ '@lsof@', '-w', '-Ff', '-p', str(pid)])
+     procs = procs.decode('UTF-8').split('\n')
+     files = list(filter(lambda s: s and s[0] == 'f' and s[1:].isdigit(), procs))
+ 
+@@ -540,7 +540,7 @@ def getCmdline(pid):
+     return cmdline
+ 
+ def pidOf(procName):
+-    openFile = subprocess.Popen(f'pgrep {procName}',
++    openFile = subprocess.Popen(f'@pgrep@ {procName}',
+                                 shell=True,
+                                 stdout=subprocess.PIPE).stdout
+     pids = openFile.read()
+diff --git a/src/orca/orca_bin.py.in b/src/orca/orca_bin.py.in
+index c6f99de14..2370204f3 100755
+--- a/src/orca/orca_bin.py.in
++++ b/src/orca/orca_bin.py.in
+@@ -62,7 +62,7 @@ class ListApps(argparse.Action):
+                 name = "[DEAD]"
+ 
+             try:
+-                cmdline = subprocess.getoutput('cat /proc/%s/cmdline' % pid)
++                cmdline = subprocess.getoutput('@cat@ /proc/%s/cmdline' % pid)
+             except Exception:
+                 cmdline = '(exception encountered)'
+             else:
+@@ -195,7 +195,7 @@ def inGraphicalDesktop():
+ def otherOrcas():
+     """Returns the pid of any other instances of Orca owned by this user."""
+ 
+-    openFile = subprocess.Popen('pgrep -u %s -x orca' % os.getuid(),
++    openFile = subprocess.Popen('@pgrep@ -u %s -x orca' % os.getuid(),
+                                 shell=True,
+                                 stdout=subprocess.PIPE).stdout
+     pids = openFile.read()
+diff --git a/src/orca/orca_modifier_manager.py b/src/orca/orca_modifier_manager.py
+index c45cd4a5b..3f2ec59f0 100644
+--- a/src/orca/orca_modifier_manager.py
++++ b/src/orca/orca_modifier_manager.py
+@@ -115,7 +115,7 @@ class OrcaModifierManager:
+         debug.printMessage(debug.LEVEL_INFO, msg, True)
+ 
+         self.unset_orca_modifiers(reason)
+-        self._original_xmodmap = subprocess.check_output(['xkbcomp', os.environ['DISPLAY'], '-'])
++        self._original_xmodmap = subprocess.check_output(['@xkbcomp@', os.environ['DISPLAY'], '-'])
+         self._create_orca_xmodmap()
+ 
+     def update_key_map(self, keyboard_event):
+@@ -162,7 +162,7 @@ class OrcaModifierManager:
+             return
+ 
+         self._caps_lock_cleared = False
+-        p = subprocess.Popen(['xkbcomp', '-w0', '-', os.environ['DISPLAY']],
++        p = subprocess.Popen(['@xkbcomp@', '-w0', '-', os.environ['DISPLAY']],
+             stdin=subprocess.PIPE, stdout=None, stderr=None)
+         p.communicate(self._original_xmodmap)
+ 
+@@ -223,7 +223,7 @@ class OrcaModifierManager:
+         if modified:
+             msg = "ORCA MODIFIER MANAGER: Updating xmodmap"
+             debug.printMessage(debug.LEVEL_INFO, msg, True)
+-            p = subprocess.Popen(['xkbcomp', '-w0', '-', os.environ['DISPLAY']],
++            p = subprocess.Popen(['@xkbcomp@', '-w0', '-', os.environ['DISPLAY']],
+                 stdin=subprocess.PIPE, stdout=None, stderr=None)
+             p.communicate(bytes('\n'.join(lines), 'UTF-8'))
+         else:
diff --git a/pkgs/applications/misc/orca/default.nix b/pkgs/by-name/or/orca/package.nix
index dcb578dd5678..edc89bbaf2ba 100644
--- a/pkgs/applications/misc/orca/default.nix
+++ b/pkgs/by-name/or/orca/package.nix
@@ -1,24 +1,20 @@
 { lib
 , pkg-config
 , fetchurl
-, buildPythonApplication
-, autoreconfHook
-, wrapGAppsHook
+, meson
+, ninja
+, wrapGAppsHook3
 , gobject-introspection
 , gettext
 , yelp-tools
 , itstool
-, python
-, pygobject3
+, python3
 , gtk3
 , gnome
 , substituteAll
 , at-spi2-atk
 , at-spi2-core
-, pyatspi
 , dbus
-, dbus-python
-, pyxdg
 , xkbcomp
 , procps
 , lsof
@@ -27,20 +23,18 @@
 , speechd
 , brltty
 , liblouis
-, setproctitle
 , gst_all_1
-, gst-python
 }:
 
-buildPythonApplication rec {
+python3.pkgs.buildPythonApplication rec {
   pname = "orca";
-  version = "45.2";
+  version = "46.1";
 
   format = "other";
 
   src = fetchurl {
     url = "mirror://gnome/sources/${pname}/${lib.versions.major version}/${pname}-${version}.tar.xz";
-    sha256 = "8PLFeaW+7f5WU7x/4kSBxNaqxd0fccHnoghZXzx473Y=";
+    hash = "sha256-z2deNQwYrA+ilDbGVZ0dqXX3///vqAjr5HbY+enRERQ=";
   };
 
   patches = [
@@ -54,8 +48,9 @@ buildPythonApplication rec {
   ];
 
   nativeBuildInputs = [
-    autoreconfHook
-    wrapGAppsHook
+    meson
+    ninja
+    wrapGAppsHook3
     pkg-config
     gettext
     yelp-tools
@@ -63,13 +58,13 @@ buildPythonApplication rec {
     gobject-introspection
   ];
 
-  pythonPath = [
+  pythonPath = with python3.pkgs; [
     pygobject3
-    pyatspi
     dbus-python
     pyxdg
     brltty
     liblouis
+    psutil
     speechd
     gst-python
     setproctitle
@@ -78,7 +73,7 @@ buildPythonApplication rec {
   strictDeps = false;
 
   buildInputs = [
-    python
+    python3
     gtk3
     at-spi2-atk
     at-spi2-core
@@ -89,6 +84,12 @@ buildPythonApplication rec {
     gst_all_1.gst-plugins-good
   ];
 
+  dontWrapGApps = true; # Prevent double wrapping
+
+  preFixup = ''
+    makeWrapperArgs+=("''${gappsWrapperArgs[@]}")
+  '';
+
   passthru = {
     updateScript = gnome.updateScript {
       packageName = pname;
diff --git a/pkgs/by-name/ot/oterm/package.nix b/pkgs/by-name/ot/oterm/package.nix
index 75220b2f69dc..c321aca86236 100644
--- a/pkgs/by-name/ot/oterm/package.nix
+++ b/pkgs/by-name/ot/oterm/package.nix
@@ -1,58 +1,58 @@
-{ lib
-, python3Packages
-, fetchFromGitHub
+{
+  lib,
+  python3Packages,
+  fetchFromGitHub,
 }:
 
 python3Packages.buildPythonApplication rec {
   pname = "oterm";
-  version = "0.2.7";
+  version = "0.2.8";
   pyproject = true;
 
   src = fetchFromGitHub {
     owner = "ggozad";
     repo = "oterm";
     rev = "refs/tags/${version}";
-    hash = "sha256-vKVGSIneKQkFO1uoNaW/Yr6QTDhgokmIpkYFYIbm+U4=";
+    hash = "sha256-6UFNsEc6bYBrBYfCbeiDfemueeRMEXHGCT8junZVFtk=";
   };
 
   pythonRelaxDeps = [
     "aiosqlite"
-    "pillow"
     "httpx"
+    "ollama"
     "packaging"
+    "pillow"
+    "typer"
   ];
 
+  build-system = with python3Packages; [ poetry-core ];
+
+  nativeBuildInputs = with python3Packages; [ pythonRelaxDepsHook ];
+
   propagatedBuildInputs = with python3Packages; [
-    ollama
-    textual
-    typer
-    python-dotenv
-    httpx
+    aiohttp
     aiosql
     aiosqlite
-    pyperclip
+    httpx
+    ollama
     packaging
-    rich-pixels
     pillow
-    aiohttp
-  ];
-
-  nativeBuildInputs = with python3Packages; [
-    poetry-core
-    pythonRelaxDepsHook
+    pyperclip
+    python-dotenv
+    rich-pixels
+    textual
+    typer
   ];
 
-  pythonImportsCheck = [
-    "oterm"
-  ];
+  pythonImportsCheck = [ "oterm" ];
 
   # Tests require a HTTP connection to ollama
   doCheck = false;
 
   meta = {
-    changelog = "https://github.com/ggozad/oterm/releases/tag/${version}";
     description = "A text-based terminal client for Ollama";
     homepage = "https://github.com/ggozad/oterm";
+    changelog = "https://github.com/ggozad/oterm/releases/tag/${version}";
     license = lib.licenses.mit;
     mainProgram = "oterm";
     maintainers = with lib.maintainers; [ suhr ];
diff --git a/pkgs/by-name/pa/pablodraw/package.nix b/pkgs/by-name/pa/pablodraw/package.nix
index 418b9a9c0151..1f1d4ccd7935 100644
--- a/pkgs/by-name/pa/pablodraw/package.nix
+++ b/pkgs/by-name/pa/pablodraw/package.nix
@@ -2,7 +2,7 @@
 , buildDotnetModule
 , fetchFromGitHub
 , dotnetCorePackages
-, wrapGAppsHook
+, wrapGAppsHook3
 , copyDesktopItems
 , gtk3
 , libnotify
@@ -35,7 +35,7 @@ buildDotnetModule rec {
 
   nugetDeps = ./deps.nix;
 
-  nativeBuildInputs = [ wrapGAppsHook copyDesktopItems ];
+  nativeBuildInputs = [ wrapGAppsHook3 copyDesktopItems ];
 
   runtimeDeps = [ gtk3 libnotify ];
 
diff --git a/pkgs/development/tools/misc/pahole/default.nix b/pkgs/by-name/pa/pahole/package.nix
index 275044ee40c0..275044ee40c0 100644
--- a/pkgs/development/tools/misc/pahole/default.nix
+++ b/pkgs/by-name/pa/pahole/package.nix
diff --git a/pkgs/development/tools/misc/pahole/threading-reproducibility.patch b/pkgs/by-name/pa/pahole/threading-reproducibility.patch
index 15893ce2d035..15893ce2d035 100644
--- a/pkgs/development/tools/misc/pahole/threading-reproducibility.patch
+++ b/pkgs/by-name/pa/pahole/threading-reproducibility.patch
diff --git a/pkgs/by-name/pa/paper-clip/package.nix b/pkgs/by-name/pa/paper-clip/package.nix
index bd1d78b8e4c4..032bb9b5dbc4 100644
--- a/pkgs/by-name/pa/paper-clip/package.nix
+++ b/pkgs/by-name/pa/paper-clip/package.nix
@@ -16,13 +16,13 @@
 
 stdenv.mkDerivation (finalAttrs: {
   pname = "paper-clip";
-  version = "5.0";
+  version = "5.5";
 
   src = fetchFromGitHub {
     owner = "Diego-Ivan";
     repo = "Paper-Clip";
     rev = "v${finalAttrs.version}";
-    hash = "sha256-lkPX8S/0e7qEAfRiq0MyacDrqSWllncd9STxR7NKUFw=";
+    hash = "sha256-WCnWWVYaKq4U2RG3S4Xfja0NvreJIqU2VUJzpX7KI/E=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/by-name/pa/paper-plane/package.nix b/pkgs/by-name/pa/paper-plane/package.nix
index de900ef10282..dcbee261c461 100644
--- a/pkgs/by-name/pa/paper-plane/package.nix
+++ b/pkgs/by-name/pa/paper-plane/package.nix
@@ -1,7 +1,7 @@
 { lib
 , fetchFromGitHub
 , gtk4
-, wrapGAppsHook
+, wrapGAppsHook3
 , libadwaita
 , tdlib
 , rlottie
@@ -35,7 +35,7 @@ let
   gtk4-paperplane = gtk4.overrideAttrs (prev: {
     patches = (prev.patches or []) ++ [ "${src}/build-aux/gtk-reversed-list.patch" ];
   });
-  wrapPaperPlaneHook = wrapGAppsHook.override {
+  wrapPaperPlaneHook = wrapGAppsHook3.override {
     gtk3 = gtk4-paperplane;
   };
   # libadwaita has gtk4 in propagatedBuildInputs so it must be overrided
diff --git a/pkgs/by-name/pa/paperless-asn-qr-codes/package.nix b/pkgs/by-name/pa/paperless-asn-qr-codes/package.nix
new file mode 100644
index 000000000000..1661d7a5a485
--- /dev/null
+++ b/pkgs/by-name/pa/paperless-asn-qr-codes/package.nix
@@ -0,0 +1,42 @@
+{ lib
+, python3
+, fetchFromGitHub
+}:
+
+python3.pkgs.buildPythonApplication rec {
+  pname = "paperless-asn-qr-codes";
+  version = "0.2.0";
+  pyproject = true;
+
+  src = fetchFromGitHub {
+    owner = "entropia";
+    repo = "paperless-asn-qr-codes";
+    rev = "v${version}";
+    hash = "sha256-/xCU6xDrmhkua4Iw/BCzhOuqO5GT/0rTJ+Y59wuMz6E=";
+  };
+
+  prePatch = ''
+    substituteInPlace pyproject.toml \
+      --replace-fail "\"argparse\"," ""
+  '';
+
+  nativeBuildInputs = [
+    python3.pkgs.hatch-vcs
+    python3.pkgs.hatchling
+  ];
+
+  propagatedBuildInputs = with python3.pkgs; [
+    reportlab
+    reportlab-qrcode
+  ];
+
+  pythonImportsCheck = [ "paperless_asn_qr_codes" ];
+
+  meta = with lib; {
+    description = "Command line utility for generating ASN labels for paperless with both a human-readable representation, as well as a QR code for machine consumption";
+    homepage = "https://github.com/entropia/paperless-asn-qr-codes";
+    license = licenses.gpl3Only;
+    maintainers = with maintainers; [ xanderio ];
+    mainProgram = "paperless-asn-qr-codes";
+  };
+}
diff --git a/pkgs/by-name/pa/papers/Cargo.lock b/pkgs/by-name/pa/papers/Cargo.lock
new file mode 100644
index 000000000000..39f0481e5d64
--- /dev/null
+++ b/pkgs/by-name/pa/papers/Cargo.lock
@@ -0,0 +1,1251 @@
+# This file is automatically @generated by Cargo.
+# It is not intended for manual editing.
+version = 3
+
+[[package]]
+name = "ahash"
+version = "0.8.10"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "8b79b82693f705137f8fb9b37871d99e4f9a7df12b917eed79c3d3954830a60b"
+dependencies = [
+ "cfg-if",
+ "once_cell",
+ "version_check",
+ "zerocopy",
+]
+
+[[package]]
+name = "aho-corasick"
+version = "1.1.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "b2969dcb958b36655471fc61f7e416fa76033bdd4bfed0678d8fee1e2d07a1f0"
+dependencies = [
+ "memchr",
+]
+
+[[package]]
+name = "allocator-api2"
+version = "0.2.16"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "0942ffc6dcaadf03badf6e6a2d0228460359d5e34b57ccdc720b7382dfbd5ec5"
+
+[[package]]
+name = "anyhow"
+version = "1.0.80"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "5ad32ce52e4161730f7098c077cd2ed6229b5804ccf99e5366be1ab72a98b4e1"
+
+[[package]]
+name = "autocfg"
+version = "1.1.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "d468802bab17cbc0cc575e9b053f41e72aa36bfa6b7f55e3529ffa43161b97fa"
+
+[[package]]
+name = "bitflags"
+version = "2.4.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "ed570934406eb16438a4e976b1b4500774099c13b8cb96eec99f620f05090ddf"
+
+[[package]]
+name = "block"
+version = "0.1.6"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "0d8c1fef690941d3e7788d328517591fecc684c084084702d6ff1641e993699a"
+
+[[package]]
+name = "cairo-rs"
+version = "0.20.0"
+source = "git+https://github.com/gtk-rs/gtk-rs-core?branch=master#8e5054e4daea31be1fe2843d4003a00ccc8b6451"
+dependencies = [
+ "bitflags",
+ "cairo-sys-rs",
+ "glib",
+ "libc",
+ "thiserror",
+]
+
+[[package]]
+name = "cairo-sys-rs"
+version = "0.20.0"
+source = "git+https://github.com/gtk-rs/gtk-rs-core?branch=master#8e5054e4daea31be1fe2843d4003a00ccc8b6451"
+dependencies = [
+ "glib-sys",
+ "libc",
+ "system-deps",
+]
+
+[[package]]
+name = "cc"
+version = "1.0.88"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "02f341c093d19155a6e41631ce5971aac4e9a868262212153124c15fa22d1cdc"
+
+[[package]]
+name = "cfg-expr"
+version = "0.15.7"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "fa50868b64a9a6fda9d593ce778849ea8715cd2a3d2cc17ffdb4a2f2f2f1961d"
+dependencies = [
+ "smallvec",
+ "target-lexicon",
+]
+
+[[package]]
+name = "cfg-if"
+version = "1.0.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd"
+
+[[package]]
+name = "env_logger"
+version = "0.10.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "4cd405aab171cb85d6735e5c8d9db038c17d3ca007a4d2c25f337935c3d90580"
+dependencies = [
+ "humantime",
+ "is-terminal",
+ "log",
+ "regex",
+ "termcolor",
+]
+
+[[package]]
+name = "equivalent"
+version = "1.0.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "5443807d6dff69373d433ab9ef5378ad8df50ca6298caf15de6e52e24aaf54d5"
+
+[[package]]
+name = "errno"
+version = "0.3.8"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "a258e46cdc063eb8519c00b9fc845fc47bcfca4130e2f08e88665ceda8474245"
+dependencies = [
+ "libc",
+ "windows-sys",
+]
+
+[[package]]
+name = "fastrand"
+version = "2.0.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "25cbce373ec4653f1a01a31e8a5e5ec0c622dc27ff9c4e6606eefef5cbbed4a5"
+
+[[package]]
+name = "field-offset"
+version = "0.3.6"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "38e2275cc4e4fc009b0669731a1e5ab7ebf11f469eaede2bab9309a5b4d6057f"
+dependencies = [
+ "memoffset",
+ "rustc_version",
+]
+
+[[package]]
+name = "futures-channel"
+version = "0.3.30"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "eac8f7d7865dcb88bd4373ab671c8cf4508703796caa2b1985a9ca867b3fcb78"
+dependencies = [
+ "futures-core",
+]
+
+[[package]]
+name = "futures-core"
+version = "0.3.30"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "dfc6580bb841c5a68e9ef15c77ccc837b40a7504914d52e47b8b0e9bbda25a1d"
+
+[[package]]
+name = "futures-executor"
+version = "0.3.30"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "a576fc72ae164fca6b9db127eaa9a9dda0d61316034f33a0a0d4eda41f02b01d"
+dependencies = [
+ "futures-core",
+ "futures-task",
+ "futures-util",
+]
+
+[[package]]
+name = "futures-io"
+version = "0.3.30"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "a44623e20b9681a318efdd71c299b6b222ed6f231972bfe2f224ebad6311f0c1"
+
+[[package]]
+name = "futures-macro"
+version = "0.3.30"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "87750cf4b7a4c0625b1529e4c543c2182106e4dedc60a2a6455e00d212c489ac"
+dependencies = [
+ "proc-macro2",
+ "quote",
+ "syn 2.0.52",
+]
+
+[[package]]
+name = "futures-task"
+version = "0.3.30"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "38d84fa142264698cdce1a9f9172cf383a0c82de1bddcf3092901442c4097004"
+
+[[package]]
+name = "futures-util"
+version = "0.3.30"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "3d6401deb83407ab3da39eba7e33987a73c3df0c82b4bb5813ee871c19c41d48"
+dependencies = [
+ "futures-core",
+ "futures-macro",
+ "futures-task",
+ "pin-project-lite",
+ "pin-utils",
+ "slab",
+]
+
+[[package]]
+name = "gdk-pixbuf"
+version = "0.20.0"
+source = "git+https://github.com/gtk-rs/gtk-rs-core?branch=master#8e5054e4daea31be1fe2843d4003a00ccc8b6451"
+dependencies = [
+ "gdk-pixbuf-sys",
+ "gio",
+ "glib",
+ "libc",
+]
+
+[[package]]
+name = "gdk-pixbuf-sys"
+version = "0.20.0"
+source = "git+https://github.com/gtk-rs/gtk-rs-core?branch=master#8e5054e4daea31be1fe2843d4003a00ccc8b6451"
+dependencies = [
+ "gio-sys",
+ "glib-sys",
+ "gobject-sys",
+ "libc",
+ "system-deps",
+]
+
+[[package]]
+name = "gdk4"
+version = "0.9.0"
+source = "git+https://github.com/gtk-rs/gtk4-rs?branch=master#4136ba2de5fc6190821ec1ec126ba3cf2d9db18e"
+dependencies = [
+ "cairo-rs",
+ "gdk-pixbuf",
+ "gdk4-sys",
+ "gio",
+ "glib",
+ "libc",
+ "pango",
+]
+
+[[package]]
+name = "gdk4-sys"
+version = "0.9.0"
+source = "git+https://github.com/gtk-rs/gtk4-rs?branch=master#4136ba2de5fc6190821ec1ec126ba3cf2d9db18e"
+dependencies = [
+ "cairo-sys-rs",
+ "gdk-pixbuf-sys",
+ "gio-sys",
+ "glib-sys",
+ "gobject-sys",
+ "libc",
+ "pango-sys",
+ "pkg-config",
+ "system-deps",
+]
+
+[[package]]
+name = "gettext-rs"
+version = "0.7.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "e49ea8a8fad198aaa1f9655a2524b64b70eb06b2f3ff37da407566c93054f364"
+dependencies = [
+ "gettext-sys",
+ "locale_config",
+]
+
+[[package]]
+name = "gettext-sys"
+version = "0.21.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "c63ce2e00f56a206778276704bbe38564c8695249fdc8f354b4ef71c57c3839d"
+dependencies = [
+ "cc",
+ "temp-dir",
+]
+
+[[package]]
+name = "gio"
+version = "0.20.0"
+source = "git+https://github.com/gtk-rs/gtk-rs-core?branch=master#8e5054e4daea31be1fe2843d4003a00ccc8b6451"
+dependencies = [
+ "futures-channel",
+ "futures-core",
+ "futures-io",
+ "futures-util",
+ "gio-sys",
+ "glib",
+ "libc",
+ "pin-project-lite",
+ "smallvec",
+ "thiserror",
+]
+
+[[package]]
+name = "gio-sys"
+version = "0.20.0"
+source = "git+https://github.com/gtk-rs/gtk-rs-core?branch=master#8e5054e4daea31be1fe2843d4003a00ccc8b6451"
+dependencies = [
+ "glib-sys",
+ "gobject-sys",
+ "libc",
+ "system-deps",
+ "windows-sys",
+]
+
+[[package]]
+name = "glib"
+version = "0.20.0"
+source = "git+https://github.com/gtk-rs/gtk-rs-core?branch=master#8e5054e4daea31be1fe2843d4003a00ccc8b6451"
+dependencies = [
+ "bitflags",
+ "futures-channel",
+ "futures-core",
+ "futures-executor",
+ "futures-task",
+ "futures-util",
+ "gio-sys",
+ "glib-macros",
+ "glib-sys",
+ "gobject-sys",
+ "libc",
+ "memchr",
+ "smallvec",
+ "thiserror",
+]
+
+[[package]]
+name = "glib-macros"
+version = "0.20.0"
+source = "git+https://github.com/gtk-rs/gtk-rs-core?branch=master#8e5054e4daea31be1fe2843d4003a00ccc8b6451"
+dependencies = [
+ "heck",
+ "proc-macro-crate",
+ "proc-macro2",
+ "quote",
+ "syn 2.0.52",
+]
+
+[[package]]
+name = "glib-sys"
+version = "0.20.0"
+source = "git+https://github.com/gtk-rs/gtk-rs-core?branch=master#8e5054e4daea31be1fe2843d4003a00ccc8b6451"
+dependencies = [
+ "libc",
+ "system-deps",
+]
+
+[[package]]
+name = "gobject-sys"
+version = "0.20.0"
+source = "git+https://github.com/gtk-rs/gtk-rs-core?branch=master#8e5054e4daea31be1fe2843d4003a00ccc8b6451"
+dependencies = [
+ "glib-sys",
+ "libc",
+ "system-deps",
+]
+
+[[package]]
+name = "graphene-rs"
+version = "0.20.0"
+source = "git+https://github.com/gtk-rs/gtk-rs-core?branch=master#8e5054e4daea31be1fe2843d4003a00ccc8b6451"
+dependencies = [
+ "glib",
+ "graphene-sys",
+ "libc",
+]
+
+[[package]]
+name = "graphene-sys"
+version = "0.20.0"
+source = "git+https://github.com/gtk-rs/gtk-rs-core?branch=master#8e5054e4daea31be1fe2843d4003a00ccc8b6451"
+dependencies = [
+ "glib-sys",
+ "libc",
+ "pkg-config",
+ "system-deps",
+]
+
+[[package]]
+name = "gsk4"
+version = "0.9.0"
+source = "git+https://github.com/gtk-rs/gtk4-rs?branch=master#4136ba2de5fc6190821ec1ec126ba3cf2d9db18e"
+dependencies = [
+ "cairo-rs",
+ "gdk4",
+ "glib",
+ "graphene-rs",
+ "gsk4-sys",
+ "libc",
+ "pango",
+]
+
+[[package]]
+name = "gsk4-sys"
+version = "0.9.0"
+source = "git+https://github.com/gtk-rs/gtk4-rs?branch=master#4136ba2de5fc6190821ec1ec126ba3cf2d9db18e"
+dependencies = [
+ "cairo-sys-rs",
+ "gdk4-sys",
+ "glib-sys",
+ "gobject-sys",
+ "graphene-sys",
+ "libc",
+ "pango-sys",
+ "system-deps",
+]
+
+[[package]]
+name = "gtk4"
+version = "0.9.0"
+source = "git+https://github.com/gtk-rs/gtk4-rs?branch=master#4136ba2de5fc6190821ec1ec126ba3cf2d9db18e"
+dependencies = [
+ "cairo-rs",
+ "field-offset",
+ "futures-channel",
+ "gdk-pixbuf",
+ "gdk4",
+ "gio",
+ "glib",
+ "graphene-rs",
+ "gsk4",
+ "gtk4-macros",
+ "gtk4-sys",
+ "libc",
+ "pango",
+]
+
+[[package]]
+name = "gtk4-macros"
+version = "0.9.0"
+source = "git+https://github.com/gtk-rs/gtk4-rs?branch=master#4136ba2de5fc6190821ec1ec126ba3cf2d9db18e"
+dependencies = [
+ "anyhow",
+ "proc-macro-crate",
+ "proc-macro-error",
+ "proc-macro2",
+ "quote",
+ "syn 1.0.109",
+]
+
+[[package]]
+name = "gtk4-sys"
+version = "0.9.0"
+source = "git+https://github.com/gtk-rs/gtk4-rs?branch=master#4136ba2de5fc6190821ec1ec126ba3cf2d9db18e"
+dependencies = [
+ "cairo-sys-rs",
+ "gdk-pixbuf-sys",
+ "gdk4-sys",
+ "gio-sys",
+ "glib-sys",
+ "gobject-sys",
+ "graphene-sys",
+ "gsk4-sys",
+ "libc",
+ "pango-sys",
+ "system-deps",
+]
+
+[[package]]
+name = "hashbrown"
+version = "0.14.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "290f1a1d9242c78d09ce40a5e87e7554ee637af1351968159f4952f028f75604"
+dependencies = [
+ "ahash",
+ "allocator-api2",
+]
+
+[[package]]
+name = "heck"
+version = "0.4.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "95505c38b4572b2d910cecb0281560f54b440a19336cbbcb27bf6ce6adc6f5a8"
+
+[[package]]
+name = "hermit-abi"
+version = "0.3.9"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "d231dfb89cfffdbc30e7fc41579ed6066ad03abda9e567ccafae602b97ec5024"
+
+[[package]]
+name = "humantime"
+version = "2.1.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "9a3a5bfb195931eeb336b2a7b4d761daec841b97f947d34394601737a7bba5e4"
+
+[[package]]
+name = "indexmap"
+version = "2.2.5"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "7b0b929d511467233429c45a44ac1dcaa21ba0f5ba11e4879e6ed28ddb4f9df4"
+dependencies = [
+ "equivalent",
+ "hashbrown",
+]
+
+[[package]]
+name = "is-terminal"
+version = "0.4.12"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "f23ff5ef2b80d608d61efee834934d862cd92461afc0560dedf493e4c033738b"
+dependencies = [
+ "hermit-abi",
+ "libc",
+ "windows-sys",
+]
+
+[[package]]
+name = "lazy_static"
+version = "1.4.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "e2abad23fbc42b3700f2f279844dc832adb2b2eb069b2df918f455c4e18cc646"
+
+[[package]]
+name = "libadwaita"
+version = "0.7.0"
+source = "git+https://gitlab.gnome.org/World/Rust/libadwaita-rs.git?branch=master#9f9b3e8026f3cf7d7f1095fe5d0599f4fa78f625"
+dependencies = [
+ "gdk4",
+ "gio",
+ "glib",
+ "gtk4",
+ "libadwaita-sys",
+ "libc",
+ "pango",
+]
+
+[[package]]
+name = "libadwaita-sys"
+version = "0.7.0"
+source = "git+https://gitlab.gnome.org/World/Rust/libadwaita-rs.git?branch=master#9f9b3e8026f3cf7d7f1095fe5d0599f4fa78f625"
+dependencies = [
+ "gdk4-sys",
+ "gio-sys",
+ "glib-sys",
+ "gobject-sys",
+ "gtk4-sys",
+ "libc",
+ "pango-sys",
+ "system-deps",
+]
+
+[[package]]
+name = "libc"
+version = "0.2.153"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "9c198f91728a82281a64e1f4f9eeb25d82cb32a5de251c6bd1b5154d63a8e7bd"
+
+[[package]]
+name = "linux-raw-sys"
+version = "0.4.13"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "01cda141df6706de531b6c46c3a33ecca755538219bd484262fa09410c13539c"
+
+[[package]]
+name = "locale_config"
+version = "0.3.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "08d2c35b16f4483f6c26f0e4e9550717a2f6575bcd6f12a53ff0c490a94a6934"
+dependencies = [
+ "lazy_static",
+ "objc",
+ "objc-foundation",
+ "regex",
+ "winapi",
+]
+
+[[package]]
+name = "log"
+version = "0.4.21"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "90ed8c1e510134f979dbc4f070f87d4313098b704861a105fe34231c70a3901c"
+
+[[package]]
+name = "lru"
+version = "0.12.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "d3262e75e648fce39813cb56ac41f3c3e3f65217ebf3844d818d1f9398cfb0dc"
+dependencies = [
+ "hashbrown",
+]
+
+[[package]]
+name = "malloc_buf"
+version = "0.0.6"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "62bb907fe88d54d8d9ce32a3cceab4218ed2f6b7d35617cafe9adf84e43919cb"
+dependencies = [
+ "libc",
+]
+
+[[package]]
+name = "memchr"
+version = "2.7.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "523dc4f511e55ab87b694dc30d0f820d60906ef06413f93d4d7a1385599cc149"
+
+[[package]]
+name = "memoffset"
+version = "0.9.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "5a634b1c61a95585bd15607c6ab0c4e5b226e695ff2800ba0cdccddf208c406c"
+dependencies = [
+ "autocfg",
+]
+
+[[package]]
+name = "objc"
+version = "0.2.7"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "915b1b472bc21c53464d6c8461c9d3af805ba1ef837e1cac254428f4a77177b1"
+dependencies = [
+ "malloc_buf",
+]
+
+[[package]]
+name = "objc-foundation"
+version = "0.1.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "1add1b659e36c9607c7aab864a76c7a4c2760cd0cd2e120f3fb8b952c7e22bf9"
+dependencies = [
+ "block",
+ "objc",
+ "objc_id",
+]
+
+[[package]]
+name = "objc_id"
+version = "0.1.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "c92d4ddb4bd7b50d730c215ff871754d0da6b2178849f8a2a2ab69712d0c073b"
+dependencies = [
+ "objc",
+]
+
+[[package]]
+name = "once_cell"
+version = "1.19.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "3fdb12b2476b595f9358c5161aa467c2438859caa136dec86c26fdd2efe17b92"
+
+[[package]]
+name = "pango"
+version = "0.20.0"
+source = "git+https://github.com/gtk-rs/gtk-rs-core?branch=master#8e5054e4daea31be1fe2843d4003a00ccc8b6451"
+dependencies = [
+ "gio",
+ "glib",
+ "libc",
+ "pango-sys",
+]
+
+[[package]]
+name = "pango-sys"
+version = "0.20.0"
+source = "git+https://github.com/gtk-rs/gtk-rs-core?branch=master#8e5054e4daea31be1fe2843d4003a00ccc8b6451"
+dependencies = [
+ "glib-sys",
+ "gobject-sys",
+ "libc",
+ "system-deps",
+]
+
+[[package]]
+name = "papers"
+version = "0.1.0"
+dependencies = [
+ "env_logger",
+ "gdk-pixbuf",
+ "gdk4",
+ "gettext-rs",
+ "gio",
+ "glib",
+ "gtk4",
+ "libadwaita",
+ "log",
+ "lru",
+ "papers-document",
+ "papers-shell",
+ "papers-view",
+]
+
+[[package]]
+name = "papers-document"
+version = "0.1.0"
+dependencies = [
+ "bitflags",
+ "gdk-pixbuf",
+ "gdk4",
+ "gio",
+ "glib",
+ "gtk4",
+ "libc",
+ "papers-document-sys",
+]
+
+[[package]]
+name = "papers-document-sys"
+version = "0.0.1"
+dependencies = [
+ "cairo-sys-rs",
+ "gdk-pixbuf-sys",
+ "gdk4-sys",
+ "gio-sys",
+ "glib-sys",
+ "gobject-sys",
+ "gtk4-sys",
+ "libc",
+ "pango-sys",
+ "shell-words",
+ "system-deps",
+ "tempfile",
+]
+
+[[package]]
+name = "papers-shell"
+version = "0.1.0"
+dependencies = [
+ "bitflags",
+ "gdk-pixbuf",
+ "gdk4",
+ "gio",
+ "glib",
+ "gtk4",
+ "libadwaita",
+ "libc",
+ "papers-document",
+ "papers-shell-sys",
+ "papers-view",
+]
+
+[[package]]
+name = "papers-shell-sys"
+version = "0.0.1"
+dependencies = [
+ "cairo-sys-rs",
+ "gdk-pixbuf-sys",
+ "gdk4-sys",
+ "gio-sys",
+ "glib-sys",
+ "gobject-sys",
+ "gtk4-sys",
+ "libadwaita-sys",
+ "libc",
+ "pango-sys",
+ "papers-document-sys",
+ "papers-view-sys",
+ "shell-words",
+ "system-deps",
+ "tempfile",
+]
+
+[[package]]
+name = "papers-view"
+version = "0.1.0"
+dependencies = [
+ "bitflags",
+ "gdk-pixbuf",
+ "gdk4",
+ "gio",
+ "glib",
+ "gtk4",
+ "libc",
+ "papers-document",
+ "papers-view-sys",
+]
+
+[[package]]
+name = "papers-view-sys"
+version = "0.0.1"
+dependencies = [
+ "cairo-sys-rs",
+ "gdk-pixbuf-sys",
+ "gdk4-sys",
+ "gio-sys",
+ "glib-sys",
+ "gobject-sys",
+ "gtk4-sys",
+ "libc",
+ "pango-sys",
+ "papers-document-sys",
+ "shell-words",
+ "system-deps",
+ "tempfile",
+]
+
+[[package]]
+name = "pin-project-lite"
+version = "0.2.13"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "8afb450f006bf6385ca15ef45d71d2288452bc3683ce2e2cacc0d18e4be60b58"
+
+[[package]]
+name = "pin-utils"
+version = "0.1.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "8b870d8c151b6f2fb93e84a13146138f05d02ed11c7e7c54f8826aaaf7c9f184"
+
+[[package]]
+name = "pkg-config"
+version = "0.3.30"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "d231b230927b5e4ad203db57bbcbee2802f6bce620b1e4a9024a07d94e2907ec"
+
+[[package]]
+name = "proc-macro-crate"
+version = "3.1.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "6d37c51ca738a55da99dc0c4a34860fd675453b8b36209178c2249bb13651284"
+dependencies = [
+ "toml_edit 0.21.1",
+]
+
+[[package]]
+name = "proc-macro-error"
+version = "1.0.4"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "da25490ff9892aab3fcf7c36f08cfb902dd3e71ca0f9f9517bea02a73a5ce38c"
+dependencies = [
+ "proc-macro-error-attr",
+ "proc-macro2",
+ "quote",
+ "syn 1.0.109",
+ "version_check",
+]
+
+[[package]]
+name = "proc-macro-error-attr"
+version = "1.0.4"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "a1be40180e52ecc98ad80b184934baf3d0d29f979574e439af5a55274b35f869"
+dependencies = [
+ "proc-macro2",
+ "quote",
+ "version_check",
+]
+
+[[package]]
+name = "proc-macro2"
+version = "1.0.78"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "e2422ad645d89c99f8f3e6b88a9fdeca7fabeac836b1002371c4367c8f984aae"
+dependencies = [
+ "unicode-ident",
+]
+
+[[package]]
+name = "quote"
+version = "1.0.35"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "291ec9ab5efd934aaf503a6466c5d5251535d108ee747472c3977cc5acc868ef"
+dependencies = [
+ "proc-macro2",
+]
+
+[[package]]
+name = "regex"
+version = "1.10.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "b62dbe01f0b06f9d8dc7d49e05a0785f153b00b2c227856282f671e0318c9b15"
+dependencies = [
+ "aho-corasick",
+ "memchr",
+ "regex-automata",
+ "regex-syntax",
+]
+
+[[package]]
+name = "regex-automata"
+version = "0.4.5"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "5bb987efffd3c6d0d8f5f89510bb458559eab11e4f869acb20bf845e016259cd"
+dependencies = [
+ "aho-corasick",
+ "memchr",
+ "regex-syntax",
+]
+
+[[package]]
+name = "regex-syntax"
+version = "0.8.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "c08c74e62047bb2de4ff487b251e4a92e24f48745648451635cec7d591162d9f"
+
+[[package]]
+name = "rustc_version"
+version = "0.4.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "bfa0f585226d2e68097d4f95d113b15b83a82e819ab25717ec0590d9584ef366"
+dependencies = [
+ "semver",
+]
+
+[[package]]
+name = "rustix"
+version = "0.38.31"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "6ea3e1a662af26cd7a3ba09c0297a31af215563ecf42817c98df621387f4e949"
+dependencies = [
+ "bitflags",
+ "errno",
+ "libc",
+ "linux-raw-sys",
+ "windows-sys",
+]
+
+[[package]]
+name = "semver"
+version = "1.0.22"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "92d43fe69e652f3df9bdc2b85b2854a0825b86e4fb76bc44d945137d053639ca"
+
+[[package]]
+name = "serde"
+version = "1.0.197"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "3fb1c873e1b9b056a4dc4c0c198b24c3ffa059243875552b2bd0933b1aee4ce2"
+dependencies = [
+ "serde_derive",
+]
+
+[[package]]
+name = "serde_derive"
+version = "1.0.197"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "7eb0b34b42edc17f6b7cac84a52a1c5f0e1bb2227e997ca9011ea3dd34e8610b"
+dependencies = [
+ "proc-macro2",
+ "quote",
+ "syn 2.0.52",
+]
+
+[[package]]
+name = "serde_spanned"
+version = "0.6.5"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "eb3622f419d1296904700073ea6cc23ad690adbd66f13ea683df73298736f0c1"
+dependencies = [
+ "serde",
+]
+
+[[package]]
+name = "shell-words"
+version = "1.1.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "24188a676b6ae68c3b2cb3a01be17fbf7240ce009799bb56d5b1409051e78fde"
+
+[[package]]
+name = "slab"
+version = "0.4.9"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "8f92a496fb766b417c996b9c5e57daf2f7ad3b0bebe1ccfca4856390e3d3bb67"
+dependencies = [
+ "autocfg",
+]
+
+[[package]]
+name = "smallvec"
+version = "1.13.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "e6ecd384b10a64542d77071bd64bd7b231f4ed5940fba55e98c3de13824cf3d7"
+
+[[package]]
+name = "syn"
+version = "1.0.109"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "72b64191b275b66ffe2469e8af2c1cfe3bafa67b529ead792a6d0160888b4237"
+dependencies = [
+ "proc-macro2",
+ "quote",
+ "unicode-ident",
+]
+
+[[package]]
+name = "syn"
+version = "2.0.52"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "b699d15b36d1f02c3e7c69f8ffef53de37aefae075d8488d4ba1a7788d574a07"
+dependencies = [
+ "proc-macro2",
+ "quote",
+ "unicode-ident",
+]
+
+[[package]]
+name = "system-deps"
+version = "6.2.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "2a2d580ff6a20c55dfb86be5f9c238f67835d0e81cbdea8bf5680e0897320331"
+dependencies = [
+ "cfg-expr",
+ "heck",
+ "pkg-config",
+ "toml",
+ "version-compare",
+]
+
+[[package]]
+name = "target-lexicon"
+version = "0.12.14"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "e1fc403891a21bcfb7c37834ba66a547a8f402146eba7265b5a6d88059c9ff2f"
+
+[[package]]
+name = "temp-dir"
+version = "0.1.12"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "dd16aa9ffe15fe021c6ee3766772132c6e98dfa395a167e16864f61a9cfb71d6"
+
+[[package]]
+name = "tempfile"
+version = "3.10.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "85b77fafb263dd9d05cbeac119526425676db3784113aa9295c88498cbf8bff1"
+dependencies = [
+ "cfg-if",
+ "fastrand",
+ "rustix",
+ "windows-sys",
+]
+
+[[package]]
+name = "termcolor"
+version = "1.4.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "06794f8f6c5c898b3275aebefa6b8a1cb24cd2c6c79397ab15774837a0bc5755"
+dependencies = [
+ "winapi-util",
+]
+
+[[package]]
+name = "thiserror"
+version = "1.0.57"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "1e45bcbe8ed29775f228095caf2cd67af7a4ccf756ebff23a306bf3e8b47b24b"
+dependencies = [
+ "thiserror-impl",
+]
+
+[[package]]
+name = "thiserror-impl"
+version = "1.0.57"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "a953cb265bef375dae3de6663da4d3804eee9682ea80d8e2542529b73c531c81"
+dependencies = [
+ "proc-macro2",
+ "quote",
+ "syn 2.0.52",
+]
+
+[[package]]
+name = "toml"
+version = "0.8.10"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "9a9aad4a3066010876e8dcf5a8a06e70a558751117a145c6ce2b82c2e2054290"
+dependencies = [
+ "serde",
+ "serde_spanned",
+ "toml_datetime",
+ "toml_edit 0.22.6",
+]
+
+[[package]]
+name = "toml_datetime"
+version = "0.6.5"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "3550f4e9685620ac18a50ed434eb3aec30db8ba93b0287467bca5826ea25baf1"
+dependencies = [
+ "serde",
+]
+
+[[package]]
+name = "toml_edit"
+version = "0.21.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "6a8534fd7f78b5405e860340ad6575217ce99f38d4d5c8f2442cb5ecb50090e1"
+dependencies = [
+ "indexmap",
+ "toml_datetime",
+ "winnow 0.5.40",
+]
+
+[[package]]
+name = "toml_edit"
+version = "0.22.6"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "2c1b5fd4128cc8d3e0cb74d4ed9a9cc7c7284becd4df68f5f940e1ad123606f6"
+dependencies = [
+ "indexmap",
+ "serde",
+ "serde_spanned",
+ "toml_datetime",
+ "winnow 0.6.5",
+]
+
+[[package]]
+name = "unicode-ident"
+version = "1.0.12"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "3354b9ac3fae1ff6755cb6db53683adb661634f67557942dea4facebec0fee4b"
+
+[[package]]
+name = "version-compare"
+version = "0.1.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "579a42fc0b8e0c63b76519a339be31bed574929511fa53c1a3acae26eb258f29"
+
+[[package]]
+name = "version_check"
+version = "0.9.4"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "49874b5167b65d7193b8aba1567f5c7d93d001cafc34600cee003eda787e483f"
+
+[[package]]
+name = "winapi"
+version = "0.3.9"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "5c839a674fcd7a98952e593242ea400abe93992746761e38641405d28b00f419"
+dependencies = [
+ "winapi-i686-pc-windows-gnu",
+ "winapi-x86_64-pc-windows-gnu",
+]
+
+[[package]]
+name = "winapi-i686-pc-windows-gnu"
+version = "0.4.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "ac3b87c63620426dd9b991e5ce0329eff545bccbbb34f3be09ff6fb6ab51b7b6"
+
+[[package]]
+name = "winapi-util"
+version = "0.1.6"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "f29e6f9198ba0d26b4c9f07dbe6f9ed633e1f3d5b8b414090084349e46a52596"
+dependencies = [
+ "winapi",
+]
+
+[[package]]
+name = "winapi-x86_64-pc-windows-gnu"
+version = "0.4.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f"
+
+[[package]]
+name = "windows-sys"
+version = "0.52.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "282be5f36a8ce781fad8c8ae18fa3f9beff57ec1b52cb3de0789201425d9a33d"
+dependencies = [
+ "windows-targets",
+]
+
+[[package]]
+name = "windows-targets"
+version = "0.52.4"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "7dd37b7e5ab9018759f893a1952c9420d060016fc19a472b4bb20d1bdd694d1b"
+dependencies = [
+ "windows_aarch64_gnullvm",
+ "windows_aarch64_msvc",
+ "windows_i686_gnu",
+ "windows_i686_msvc",
+ "windows_x86_64_gnu",
+ "windows_x86_64_gnullvm",
+ "windows_x86_64_msvc",
+]
+
+[[package]]
+name = "windows_aarch64_gnullvm"
+version = "0.52.4"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "bcf46cf4c365c6f2d1cc93ce535f2c8b244591df96ceee75d8e83deb70a9cac9"
+
+[[package]]
+name = "windows_aarch64_msvc"
+version = "0.52.4"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "da9f259dd3bcf6990b55bffd094c4f7235817ba4ceebde8e6d11cd0c5633b675"
+
+[[package]]
+name = "windows_i686_gnu"
+version = "0.52.4"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "b474d8268f99e0995f25b9f095bc7434632601028cf86590aea5c8a5cb7801d3"
+
+[[package]]
+name = "windows_i686_msvc"
+version = "0.52.4"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "1515e9a29e5bed743cb4415a9ecf5dfca648ce85ee42e15873c3cd8610ff8e02"
+
+[[package]]
+name = "windows_x86_64_gnu"
+version = "0.52.4"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "5eee091590e89cc02ad514ffe3ead9eb6b660aedca2183455434b93546371a03"
+
+[[package]]
+name = "windows_x86_64_gnullvm"
+version = "0.52.4"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "77ca79f2451b49fa9e2af39f0747fe999fcda4f5e241b2898624dca97a1f2177"
+
+[[package]]
+name = "windows_x86_64_msvc"
+version = "0.52.4"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "32b752e52a2da0ddfbdbcc6fceadfeede4c939ed16d13e648833a61dfb611ed8"
+
+[[package]]
+name = "winnow"
+version = "0.5.40"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "f593a95398737aeed53e489c785df13f3618e41dbcd6718c6addbf1395aa6876"
+dependencies = [
+ "memchr",
+]
+
+[[package]]
+name = "winnow"
+version = "0.6.5"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "dffa400e67ed5a4dd237983829e66475f0a4a26938c4b04c21baede6262215b8"
+dependencies = [
+ "memchr",
+]
+
+[[package]]
+name = "zerocopy"
+version = "0.7.32"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "74d4d3961e53fa4c9a25a8637fc2bfaf2595b3d3ae34875568a5cf64787716be"
+dependencies = [
+ "zerocopy-derive",
+]
+
+[[package]]
+name = "zerocopy-derive"
+version = "0.7.32"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "9ce1b18ccd8e73a9321186f97e46f9f04b778851177567b1975109d26a08d2a6"
+dependencies = [
+ "proc-macro2",
+ "quote",
+ "syn 2.0.52",
+]
diff --git a/pkgs/by-name/pa/papers/package.nix b/pkgs/by-name/pa/papers/package.nix
new file mode 100644
index 000000000000..e599b4a779d1
--- /dev/null
+++ b/pkgs/by-name/pa/papers/package.nix
@@ -0,0 +1,133 @@
+{ lib
+, stdenv
+, fetchFromGitLab
+, meson
+, ninja
+, pkg-config
+, appstream
+, desktop-file-utils
+, gtk4
+, glib
+, pango
+, atk
+, gdk-pixbuf
+, shared-mime-info
+, itstool
+, poppler
+, ghostscriptX
+, djvulibre
+, libspectre
+, libarchive
+, libsecret
+, wrapGAppsHook4
+, librsvg
+, gobject-introspection
+, yelp-tools
+, gsettings-desktop-schemas
+, dbus
+, gi-docgen
+, libgxps
+, supportXPS ? true # Open XML Paper Specification via libgxps
+, withLibsecret ? true
+, libadwaita
+, exempi
+, cargo
+, rustPlatform
+}:
+
+stdenv.mkDerivation (finalAttrs: {
+  pname = "papers";
+  version = "45.0-unstable-2024-03-27";
+
+  outputs = [ "out" "dev" "devdoc" ];
+
+  src = fetchFromGitLab {
+    domain = "gitlab.gnome.org";
+    owner = "GNOME/Incubator";
+    repo = "papers";
+    rev = "4374535f4f5e5cea613b2df7b3dc99e97da27d99";
+    hash = "sha256-wjLRGENJ+TjXV3JPn/lcqv3DonAsJrC0OiLs1DoNHkc=";
+  };
+
+  cargoRoot = "shell-rs";
+
+  cargoDeps = rustPlatform.importCargoLock {
+    lockFile = ./Cargo.lock;
+
+    outputHashes = {
+      "cairo-rs-0.20.0" = "sha256-aCG9rh/tXqmcCIijuqJZJEgrGdG/IygcdWlvKYzVPhU=";
+      "gdk4-0.9.0" = "sha256-KYisC8nm6KVfowiKXtMoimXzB3UjHarH+2ZLhvW8oMU=";
+      "libadwaita-0.7.0" = "sha256-gfkaj/BIqvWj1UNVAGNNXww4aoJPlqvBwIRGmDiv48E=";
+    };
+  };
+
+  nativeBuildInputs = [
+    appstream
+    desktop-file-utils
+    gobject-introspection
+    gi-docgen
+    itstool
+    meson
+    ninja
+    pkg-config
+    wrapGAppsHook4
+    yelp-tools
+    cargo
+    rustPlatform.cargoSetupHook
+  ];
+
+  buildInputs = [
+    atk
+    dbus # only needed to find the service directory
+    djvulibre
+    exempi
+    gdk-pixbuf
+    ghostscriptX
+    glib
+    gtk4
+    gsettings-desktop-schemas
+    libadwaita
+    libarchive
+    librsvg
+    libspectre
+    pango
+    poppler
+  ] ++ lib.optionals withLibsecret [
+    libsecret
+  ] ++ lib.optionals supportXPS [
+    libgxps
+  ];
+
+  mesonFlags = [
+    "-Dnautilus=false"
+    "-Dps=enabled"
+  ] ++ lib.optionals (!withLibsecret) [
+    "-Dkeyring=disabled"
+  ];
+
+  preFixup = ''
+    gappsWrapperArgs+=(--prefix XDG_DATA_DIRS : "${shared-mime-info}/share")
+  '';
+
+  postFixup = ''
+    # Cannot be in postInstall, otherwise _multioutDocs hook in preFixup will move right back.
+    moveToOutput "share/doc" "$devdoc"
+  '';
+
+  meta = with lib; {
+    homepage = "https://wiki.gnome.org/Apps/papers";
+    description = "GNOME's document viewer";
+
+    longDescription = ''
+      papers is a document viewer for multiple document formats.  It
+      currently supports PDF, PostScript, DjVu, and TIFF (not DVI anymore).
+      The goal of papers is to replace the evince document viewer that exist
+      on the GNOME Desktop with a more modern interface.
+    '';
+
+    license = licenses.gpl2Plus;
+    platforms = platforms.unix;
+    mainProgram = "papers";
+    maintainers = teams.gnome.members;
+  };
+})
diff --git a/pkgs/by-name/pa/paratest/package.nix b/pkgs/by-name/pa/paratest/package.nix
index 855db7c079d6..8961c70f551c 100644
--- a/pkgs/by-name/pa/paratest/package.nix
+++ b/pkgs/by-name/pa/paratest/package.nix
@@ -23,6 +23,6 @@
     homepage = "https://github.com/paratestphp/paratest";
     license = lib.licenses.mit;
     mainProgram = "paratest";
-    maintainers = [ ];
+    maintainers = with lib.maintainers; [ patka ];
   };
 })
diff --git a/pkgs/by-name/pa/parinfer-rust-emacs/package.nix b/pkgs/by-name/pa/parinfer-rust-emacs/package.nix
new file mode 100644
index 000000000000..ec1c89edb343
--- /dev/null
+++ b/pkgs/by-name/pa/parinfer-rust-emacs/package.nix
@@ -0,0 +1,27 @@
+{
+  fetchFromGitHub,
+  lib,
+  llvmPackages,
+  rustPlatform,
+}:
+rustPlatform.buildRustPackage rec {
+  pname = "parinfer-rust-emacs";
+  version = "0.4.6";
+
+  src = fetchFromGitHub {
+    owner = "justinbarclay";
+    repo = "parinfer-rust-emacs";
+    rev = "v${version}";
+    hash = "sha256-SNs/75beomxvexfE4+3v/l9Xl5w5SY0EWcORHvRitOw=";
+  };
+
+  cargoHash = "sha256-LmfcY9iR7BGh3dF/raSZTIwburtaQRI3I3XvOZG343M=";
+
+  meta = with lib; {
+    description = "An emacs centric fork of parinfer-rust";
+    mainProgram = "parinfer-rust";
+    homepage = "https://github.com/justinbarclay/parinfer-rust-emacs";
+    license = licenses.isc;
+    maintainers = with maintainers; [ brsvh ];
+  };
+}
diff --git a/pkgs/by-name/pa/passt/package.nix b/pkgs/by-name/pa/passt/package.nix
index 3ce1715d2a36..8a149b07a940 100644
--- a/pkgs/by-name/pa/passt/package.nix
+++ b/pkgs/by-name/pa/passt/package.nix
@@ -7,11 +7,11 @@
 
 stdenv.mkDerivation (finalAttrs: {
   pname = "passt";
-  version = "2024_04_05.954589b";
+  version = "2024_04_26.d03c4e2";
 
   src = fetchurl {
     url = "https://passt.top/passt/snapshot/passt-${finalAttrs.version}.tar.gz";
-    hash = "sha256-lwiHjr7rv1xBwXktKAsYIjDzNDkHGjZsW/FsQyFbLng=";
+    hash = "sha256-SE9ae4ewwgpGv+Mc1GwUsAi2VZS26Ne7Flvw1ggjb4U=";
   };
 
   makeFlags = [
diff --git a/pkgs/by-name/pa/patch2pr/package.nix b/pkgs/by-name/pa/patch2pr/package.nix
index 67b5f227bcd4..488d2f858377 100644
--- a/pkgs/by-name/pa/patch2pr/package.nix
+++ b/pkgs/by-name/pa/patch2pr/package.nix
@@ -7,16 +7,16 @@
 
 buildGoModule rec {
   pname = "patch2pr";
-  version = "0.22.0";
+  version = "0.24.0";
 
   src = fetchFromGitHub {
     owner = "bluekeyes";
     repo = "patch2pr";
     rev = "v${version}";
-    hash = "sha256-tG0pSXmrWT5PCcR25XngbKAS3q9jKdDKqWdPqA62omE=";
+    hash = "sha256-ot/PECNRuhJUYX1woektKC6VEV+rLKiSnCVCLIRhSUo=";
   };
 
-  vendorHash = "sha256-Z6BHUD7WrEpUmCaLvrFYCQCSbhPhee+gR5ep1oLzqbE=";
+  vendorHash = "sha256-K2qYfS0A1gOo2n3pBy00oLbd1/q/p5N8RoId+OP1Jmw=";
 
   ldflags = [
     "-X main.version=${version}"
diff --git a/pkgs/by-name/pa/payme/package.nix b/pkgs/by-name/pa/payme/package.nix
index 5465274e1863..4dd5af707620 100644
--- a/pkgs/by-name/pa/payme/package.nix
+++ b/pkgs/by-name/pa/payme/package.nix
@@ -2,17 +2,18 @@
 
 buildGoModule rec {
   pname = "payme";
-  version = "1.2.0";
+  version = "1.2.2";
 
   src = fetchFromGitHub {
     owner = "jovandeginste";
     repo = "payme";
     rev = "v${version}";
-    hash = "sha256-2gZgmYgLaJQRQ+3VOUDnMm5QBjfKyxyutVf9NrbGO3g=";
+    hash = "sha256-LZyTwi4VCetIF39yc7WU3VR20DfFxfhDr3FvVQo7b/Q=";
     leaveDotGit = true;
     postFetch = ''
       cd "$out"
       git rev-parse HEAD > $out/COMMIT
+      TZ=UTC0 git show --quiet --date=iso-local --format=%cd > $out/BUILD_TIME
       find "$out" -name .git -print0 | xargs -0 rm -rf
     '';
   };
@@ -27,6 +28,7 @@ buildGoModule rec {
 
   preBuild = ''
     ldflags+=" -X main.gitCommit=$(cat COMMIT)"
+    ldflags+=" -X 'main.buildTime=$(cat BUILD_TIME)'"
   '';
 
   meta = {
diff --git a/pkgs/tools/networking/persepolis/0003-Search-PATH-for-aria2c-on-darwin.patch b/pkgs/by-name/pe/persepolis/0003-Search-PATH-for-aria2c-on-darwin.patch
index ab3c957ef4b1..505961d1ce6b 100644
--- a/pkgs/tools/networking/persepolis/0003-Search-PATH-for-aria2c-on-darwin.patch
+++ b/pkgs/by-name/pe/persepolis/0003-Search-PATH-for-aria2c-on-darwin.patch
@@ -9,7 +9,7 @@ index aaabb35..69676d3 100644
 @@ -72,16 +72,8 @@ def startAria():
  
      # in macintosh
-     elif os_type == 'Darwin':
+     elif os_type == OS.OSX:
 -        if aria2_path == "" or aria2_path == None or os.path.isfile(str(aria2_path)) == False:
 -
 -            cwd = sys.argv[0]
diff --git a/pkgs/tools/networking/persepolis/0004-Search-PATH-for-ffmpeg-on-darwin.patch b/pkgs/by-name/pe/persepolis/0004-Search-PATH-for-ffmpeg-on-darwin.patch
index 800f7bddd408..800f7bddd408 100644
--- a/pkgs/tools/networking/persepolis/0004-Search-PATH-for-ffmpeg-on-darwin.patch
+++ b/pkgs/by-name/pe/persepolis/0004-Search-PATH-for-ffmpeg-on-darwin.patch
diff --git a/pkgs/by-name/pe/persepolis/package.nix b/pkgs/by-name/pe/persepolis/package.nix
new file mode 100644
index 000000000000..3105cd8621f3
--- /dev/null
+++ b/pkgs/by-name/pe/persepolis/package.nix
@@ -0,0 +1,84 @@
+{ lib
+, stdenv
+, qt5
+, python3
+, fetchFromGitHub
+, aria2
+, ffmpeg
+, libnotify
+, pulseaudio
+, sound-theme-freedesktop
+, pkg-config
+, meson
+, ninja
+}:
+
+python3.pkgs.buildPythonApplication rec {
+  pname = "persepolis";
+  version = "4.0.1";
+  format = "other";
+
+  src = fetchFromGitHub {
+    owner = "persepolisdm";
+    repo = "persepolis";
+    rev = "57dc9d438bb3f126070a17c7a3677c45ea4dd332";
+    hash = "sha256-7OXAITFQJ2/aY0QmqlAo7if7cY7+T3j6PUjfJJV8Z2Q=";
+  };
+
+  patches = [
+    # Upstream does currently not allow building from source on macOS. These patches can likely
+    # be removed if https://github.com/persepolisdm/persepolis/issues/943 is fixed upstream
+    ./0003-Search-PATH-for-aria2c-on-darwin.patch
+    ./0004-Search-PATH-for-ffmpeg-on-darwin.patch
+  ];
+
+  postPatch = ''
+    # Ensure dependencies with hard-coded FHS dependencies are properly detected
+    substituteInPlace check_dependencies.py --replace-fail "isdir(notifications_path)" "isdir('${sound-theme-freedesktop}/share/sounds/freedesktop')"
+  '';
+
+  postInstall = ''
+    mkdir -p $out/share/applications
+    cp $src/xdg/com.github.persepolisdm.persepolis.desktop $out/share/applications
+  '';
+
+  # prevent double wrapping
+  dontWrapQtApps = true;
+  nativeBuildInputs = [ meson ninja pkg-config qt5.wrapQtAppsHook ];
+
+  # feed args to wrapPythonApp
+  makeWrapperArgs = [
+    "--prefix PATH : ${lib.makeBinPath [ aria2 ffmpeg libnotify ]}"
+    "\${qtWrapperArgs[@]}"
+  ];
+
+  # The presence of these dependencies is checked during setuptoolsCheckPhase,
+  # but apart from that, they're not required during build, only runtime
+  nativeCheckInputs = [
+    aria2
+    libnotify
+    pulseaudio
+    sound-theme-freedesktop
+    ffmpeg
+  ];
+
+  propagatedBuildInputs = [
+    pulseaudio
+    sound-theme-freedesktop
+  ] ++ (with python3.pkgs; [
+    psutil
+    pyqt5
+    requests
+    setproctitle
+    setuptools
+    yt-dlp
+  ]);
+
+  meta = with lib; {
+    description = "A GUI for aria2";
+    mainProgram = "persepolis";
+    homepage = "https://persepolisdm.github.io/";
+    license = licenses.gpl3Plus;
+    maintainers = with maintainers; [ iFreilicht ];
+  };
+}
diff --git a/pkgs/by-name/pe/pest/package.nix b/pkgs/by-name/pe/pest/package.nix
index 7431914a48ee..6b7231ec8f8e 100644
--- a/pkgs/by-name/pe/pest/package.nix
+++ b/pkgs/by-name/pe/pest/package.nix
@@ -21,6 +21,6 @@ php.buildComposerProject (finalAttrs: {
     homepage = "https://pestphp.com";
     license = lib.licenses.mit;
     mainProgram = "pest";
-    maintainers = [ ];
+    maintainers = with lib.maintainers; [ patka ];
   };
 })
diff --git a/pkgs/by-name/ph/phel/package.nix b/pkgs/by-name/ph/phel/package.nix
index 209f7bd8bbd4..a03d99147897 100644
--- a/pkgs/by-name/ph/phel/package.nix
+++ b/pkgs/by-name/ph/phel/package.nix
@@ -5,16 +5,16 @@
 
 php.buildComposerProject (finalAttrs: {
   pname = "phel";
-  version = "0.12.0";
+  version = "0.13.0";
 
   src = fetchFromGitHub {
     owner = "phel-lang";
     repo = "phel-lang";
     rev = "v${finalAttrs.version}";
-    hash = "sha256-5PMd87Xp7i3Q1ryKQWJBmNbU5TGo2LQ6uvIFP3T36vk=";
+    hash = "sha256-EITeApaQ1nmQb53/DrSidcmWUACapjTUuUYuJQDML0Y=";
   };
 
-  vendorHash = "sha256-83GX/dxHa6w1E34wnJshg7yxlVyRkDT5jmAPCCqPdtA=";
+  vendorHash = "sha256-IWFOpsPcrPg2/QWemRJ8tP6k0sIc2OogETdiBFAQ5BI=";
 
   doInstallCheck = true;
   postInstallCheck = ''
diff --git a/pkgs/by-name/ph/photocollage/package.nix b/pkgs/by-name/ph/photocollage/package.nix
index f02efb9f2e90..46c6bedd7710 100644
--- a/pkgs/by-name/ph/photocollage/package.nix
+++ b/pkgs/by-name/ph/photocollage/package.nix
@@ -4,7 +4,7 @@
 , gettext
 , gdk-pixbuf
 , gobject-introspection
-, wrapGAppsHook
+, wrapGAppsHook3
 }:
 
 python3Packages.buildPythonApplication rec {
@@ -31,7 +31,7 @@ python3Packages.buildPythonApplication rec {
   nativeBuildInputs = [
     gettext
     gobject-introspection
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   dontWrapGApps = true;
diff --git a/pkgs/by-name/ph/phpactor/package.nix b/pkgs/by-name/ph/phpactor/package.nix
index 6e22a98ce2ec..80dc6f2e6f89 100644
--- a/pkgs/by-name/ph/phpactor/package.nix
+++ b/pkgs/by-name/ph/phpactor/package.nix
@@ -30,6 +30,6 @@ php.buildComposerProject (finalAttrs: {
     homepage = "https://github.com/phpactor/phpactor";
     license = lib.licenses.mit;
     mainProgram = "phpactor";
-    maintainers = lib.teams.php.members;
+    maintainers = [ lib.maintainers.patka ] ++ lib.teams.php.members;
   };
 })
diff --git a/pkgs/by-name/ph/phpdocumentor/package.nix b/pkgs/by-name/ph/phpdocumentor/package.nix
index d94b143a0c0e..e0eeef5935a3 100644
--- a/pkgs/by-name/ph/phpdocumentor/package.nix
+++ b/pkgs/by-name/ph/phpdocumentor/package.nix
@@ -1,6 +1,7 @@
 { lib
 , php
 , fetchFromGitHub
+, makeBinaryWrapper
 }:
 
 php.buildComposerProject (finalAttrs: {
@@ -19,6 +20,8 @@ php.buildComposerProject (finalAttrs: {
   # Needed because of the unbound version constraint on phpdocumentor/json-path
   composerStrictValidation = false;
 
+  nativeBuildInputs = [ makeBinaryWrapper ];
+
   installPhase = ''
     runHook preInstall
 
diff --git a/pkgs/by-name/ph/phpunit/package.nix b/pkgs/by-name/ph/phpunit/package.nix
index ef614ce0849c..47a29be92f1d 100644
--- a/pkgs/by-name/ph/phpunit/package.nix
+++ b/pkgs/by-name/ph/phpunit/package.nix
@@ -1,27 +1,30 @@
 { lib
 , fetchFromGitHub
+, nix-update-script
 , php
 }:
 
 php.buildComposerProject (finalAttrs: {
   pname = "phpunit";
-  version = "11.1.1";
+  version = "11.1.3";
 
   src = fetchFromGitHub {
     owner = "sebastianbergmann";
     repo = "phpunit";
     rev = finalAttrs.version;
-    hash = "sha256-aS2mQeE8WnEaTexl8qhhfGyi1MP48s6fjrTXkVLq1LU=";
+    hash = "sha256-Wq2k44WpUhDhSyIx8ofn/jUR7FS3zn2CCe4OiFKHXEA=";
   };
 
   vendorHash = "sha256-kjMJCrMG08AXX662GAR5+V6w1+WOv8F9r6ONIOowP8Q=";
 
+  passthru.updateScript = nix-update-script { };
+
   meta = {
     changelog = "https://github.com/sebastianbergmann/phpunit/blob/${finalAttrs.version}/ChangeLog-${lib.versions.majorMinor finalAttrs.version}.md";
     description = "PHP Unit Testing framework";
     homepage = "https://phpunit.de";
     license = lib.licenses.bsd3;
     mainProgram = "phpunit";
-    maintainers = [ lib.maintainers.onny ] ++ lib.teams.php.members;
+    maintainers = with lib.maintainers; [ onny patka ] ++ lib.teams.php.members;
   };
 })
diff --git a/pkgs/by-name/pl/plasticity/package.nix b/pkgs/by-name/pl/plasticity/package.nix
index 672dc986d06b..0c7128724e28 100644
--- a/pkgs/by-name/pl/plasticity/package.nix
+++ b/pkgs/by-name/pl/plasticity/package.nix
@@ -27,7 +27,7 @@
 , systemd
 , trash-cli
 , vulkan-loader
-, wrapGAppsHook
+, wrapGAppsHook3
 , xdg-utils
 , xorg
 }:
@@ -42,7 +42,7 @@ stdenv.mkDerivation rec  {
 
   passthru.updateScript = ./update.sh;
 
-  nativeBuildInputs = [ wrapGAppsHook autoPatchelfHook rpmextract mesa ];
+  nativeBuildInputs = [ wrapGAppsHook3 autoPatchelfHook rpmextract mesa ];
 
   buildInputs = [
     alsa-lib
diff --git a/pkgs/by-name/pl/platformsh/package.nix b/pkgs/by-name/pl/platformsh/package.nix
index 9f295ac404a7..eb4c12e88b8b 100644
--- a/pkgs/by-name/pl/platformsh/package.nix
+++ b/pkgs/by-name/pl/platformsh/package.nix
@@ -1,42 +1,63 @@
-{ common-updater-scripts, curl, fetchFromGitHub, jq, lib, php, writeShellScript }:
-
-php.buildComposerProject (finalAttrs: {
+{
+  stdenvNoCC,
+  lib,
+  fetchurl,
+  testers,
+  platformsh
+}:
+
+stdenvNoCC.mkDerivation (finalAttrs: {
   pname = "platformsh";
-  version = "4.17.0";
-
-  src = fetchFromGitHub {
-    owner = "platformsh";
-    repo = "legacy-cli";
-    rev = "v${finalAttrs.version}";
-    hash = "sha256-8x7Fl1bYZIND4PuxVmPFNO2QOjeLMiIXh409DXG/WMU=";
-  };
-
-  vendorHash = "sha256-nXPfFlKYi2qP1bTeurRsopncKWg4zIZnZsSX/i0SF/s=";
-
-  prePatch = ''
-    substituteInPlace config-defaults.yaml \
-      --replace "@version-placeholder@" "${finalAttrs.version}"
+  version = "5.0.13";
+
+  src =
+    {
+      x86_64-darwin = fetchurl {
+        url = "https://github.com/platformsh/cli/releases/download/${finalAttrs.version}/platform_${finalAttrs.version}_darwin_all.tar.gz";
+        hash = "sha256-dCo5+de+9hXxrv+uPn0UoAh4UfSv+PyR2z/ytpfby0g=";
+      };
+      aarch64-darwin = fetchurl {
+        url = "https://github.com/platformsh/cli/releases/download/${finalAttrs.version}/platform_${finalAttrs.version}_darwin_all.tar.gz";
+        hash = "sha256-dCo5+de+9hXxrv+uPn0UoAh4UfSv+PyR2z/ytpfby0g=";
+      };
+      x86_64-linux = fetchurl {
+        url = "https://github.com/platformsh/cli/releases/download/${finalAttrs.version}/platform_${finalAttrs.version}_linux_amd64.tar.gz";
+        hash = "sha256-JP0RCqNQ8V4sFP3645MW+Pd9QfPFRAuTbVPIK6WD6PQ=";
+      };
+      aarch64-linux = fetchurl {
+        url = "https://github.com/platformsh/cli/releases/download/${finalAttrs.version}/platform_${finalAttrs.version}_linux_arm64.tar.gz";
+        hash = "sha256-vpk093kpGAmMevd4SVr3KSIjUXUqt3yWDZFHOVxu9rw=";
+      };
+    }
+    .${stdenvNoCC.system}
+      or (throw "${finalAttrs.pname}-${finalAttrs.version}: ${stdenvNoCC.system} is unsupported.");
+
+  dontConfigure = true;
+  dontBuild = true;
+
+  sourceRoot = ".";
+  installPhase = ''
+    runHook preInstall
+
+    install -Dm755 platformsh $out/bin/platformsh
+
+    runHook postInstall
   '';
 
-  passthru.updateScript = writeShellScript "update-${finalAttrs.pname}" ''
-    set -o errexit
-    export PATH="${lib.makeBinPath [ curl jq common-updater-scripts ]}"
-    NEW_VERSION=$(curl -s https://api.github.com/repos/platformsh/legacy-cli/releases/latest | jq .tag_name --raw-output)
-
-    if [[ "v${finalAttrs.version}" = "$NEW_VERSION" ]]; then
-      echo "The new version same as the old version."
-      exit 0
-    fi
-
-    update-source-version "platformsh" "$NEW_VERSION"
-  '';
+  passthru = {
+    tests.version = testers.testVersion {
+      inherit (finalAttrs) version;
+      package = platformsh;
+    };
+  };
 
   meta = {
-    description = "The unified tool for managing your Platform.sh services from the command line.";
-    homepage = "https://github.com/platformsh/legacy-cli";
+    description = "The unified tool for managing your Platform.sh services from the command line";
+    homepage = "https://github.com/platformsh/cli";
     license = lib.licenses.mit;
     mainProgram = "platform";
     maintainers = with lib.maintainers; [ shyim spk ];
-    platforms = lib.platforms.all;
+    platforms = [ "x86_64-linux" "aarch64-linux" "x86_64-darwin" "aarch64-darwin" ];
+    sourceProvenance = with lib.sourceTypes; [ binaryNativeCode ];
   };
 })
diff --git a/pkgs/by-name/pl/plymouth-matrix-theme/package.nix b/pkgs/by-name/pl/plymouth-matrix-theme/package.nix
new file mode 100644
index 000000000000..5db5be9c3f46
--- /dev/null
+++ b/pkgs/by-name/pl/plymouth-matrix-theme/package.nix
@@ -0,0 +1,48 @@
+{
+  stdenvNoCC,
+  fetchFromGitHub,
+  lib,
+  unstableGitUpdater,
+}:
+
+stdenvNoCC.mkDerivation {
+  pname = "plymouth-matrix-theme";
+  version = "0.1.0-unstable-19-02-2017";
+
+  src = fetchFromGitHub {
+    owner = "storax";
+    repo = "plymouth-matrix-theme";
+    rev = "b2268f25dea7537ed5709b00d5a83b3600265c54";
+    hash = "sha256-JmMmpw1By5U6OTaSPnJOZZxrieSnXivMmdt/JPazjpI=";
+  };
+
+  postPatch = ''
+    # Remove not needed files
+    rm README.rst LICENSE Makefile
+  '';
+
+  dontBuild = true;
+
+  installPhase = ''
+    runHook preInstall
+    mkdir -p $out/share/plymouth/themes/matrix
+    cp * $out/share/plymouth/themes/matrix
+    find $out/share/plymouth/themes/ -name \*.plymouth -exec sed -i "s@\/usr\/@$out\/@" {} \;
+    runHook postInstall
+  '';
+
+  passthru.updateScript = unstableGitUpdater;
+
+  meta = {
+    description = "Plymouth boot theme inspired by Matrix";
+    longDescription = ''
+      A very simple boot animation that emulates
+      Trinity hacking Neo's computer at the
+      beginning of The Matrix (1999).
+    '';
+    homepage = "https://github.com/storax/plymouth-matrix-theme";
+    license = lib.licenses.gpl3;
+    platforms = lib.platforms.linux;
+    maintainers = with lib.maintainers; [ johnrtitor ];
+  };
+}
diff --git a/pkgs/by-name/pn/pnpm-shell-completion/package.nix b/pkgs/by-name/pn/pnpm-shell-completion/package.nix
index b789a1024a72..3ec44b2e175d 100644
--- a/pkgs/by-name/pn/pnpm-shell-completion/package.nix
+++ b/pkgs/by-name/pn/pnpm-shell-completion/package.nix
@@ -7,16 +7,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "pnpm-shell-completion";
-  version = "0.5.3";
+  version = "0.5.4";
 
   src = fetchFromGitHub {
     owner = "g-plane";
     repo = "pnpm-shell-completion";
     rev = "v${version}";
-    hash = "sha256-UKuAUN1uGNy/1Fm4vXaTWBClHgda+Vns9C4ugfHm+0s=";
+    hash = "sha256-bc2ZVHQF+lSAmhy/fvdiVfg9uzPPcXYrtiNChjkjHtA=";
   };
 
-  cargoHash = "sha256-Kf28hQ5PUHeH5ZSRSRdfHljlqIYU8MN0zQsyT0Sa2+4=";
+  cargoHash = "sha256-pGACCT96pTG4ZcJZtSWCup7Iejf6r3RvQ+4tMOwiShw=";
 
   nativeBuildInputs = [ installShellFiles ];
 
diff --git a/pkgs/by-name/po/poethepoet/package.nix b/pkgs/by-name/po/poethepoet/package.nix
index b186b8866e1f..08237d2b8a72 100644
--- a/pkgs/by-name/po/poethepoet/package.nix
+++ b/pkgs/by-name/po/poethepoet/package.nix
@@ -5,14 +5,14 @@
 
 python3.pkgs.buildPythonApplication rec {
   pname = "poethepoet";
-  version = "0.25.1";
+  version = "0.26.1";
   pyproject = true;
 
   src = fetchFromGitHub {
     owner = "nat-n";
     repo = "poethepoet";
     rev = "refs/tags/v${version}";
-    hash = "sha256-x57/7Qw2cLSmB01uiIAIu0dBhFqol+ewO1fRs45U0qE=";
+    hash = "sha256-7mRzWxMhDNUc+eY9uEszt/qQUUJhlgJqadCL+Z7QzWo=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/by-name/po/popcorntime/package.nix b/pkgs/by-name/po/popcorntime/package.nix
index 240836d60049..28fd5b60e689 100644
--- a/pkgs/by-name/po/popcorntime/package.nix
+++ b/pkgs/by-name/po/popcorntime/package.nix
@@ -4,30 +4,31 @@
 , gsettings-desktop-schemas
 , gtk3
 , lib
+, libGL
 , makeDesktopItem
 , makeWrapper
 , nwjs
 , stdenv
 , unzip
 , udev
-, wrapGAppsHook
+, wrapGAppsHook3
 , copyDesktopItems
 }:
 
 stdenv.mkDerivation rec {
   pname = "popcorntime";
-  version = "0.5.0";
+  version = "0.5.1";
 
   src = fetchurl {
     url = "https://github.com/popcorn-official/popcorn-desktop/releases/download/v${version}/Popcorn-Time-${version}-linux64.zip";
-    hash = "sha256-A5G66KkCQ1AiOOO02dZFAVz6dqvComrd5lXQ4Wc1S0s=";
+    hash = "sha256-lCsIioR252GWP/+wNwkTw5PLSal/M9x6mlR/EKOd/hs=";
   };
 
   nativeBuildInputs = [
     autoPatchelfHook
     makeWrapper
     unzip
-    wrapGAppsHook
+    wrapGAppsHook3
     copyDesktopItems
   ];
 
@@ -45,7 +46,7 @@ stdenv.mkDerivation rec {
   dontUnpack = true;
 
   makeWrapperArgs = [
-    "--prefix LD_LIBRARY_PATH : ${lib.makeLibraryPath [ gcc-unwrapped.lib gtk3 udev ]}"
+    "--prefix LD_LIBRARY_PATH : ${lib.makeLibraryPath [ gcc-unwrapped.lib gtk3 udev libGL ]}"
     "--prefix PATH : ${lib.makeBinPath [ stdenv.cc ]}"
   ];
 
diff --git a/pkgs/by-name/po/portablemc/package.nix b/pkgs/by-name/po/portablemc/package.nix
new file mode 100644
index 000000000000..444dd9d20550
--- /dev/null
+++ b/pkgs/by-name/po/portablemc/package.nix
@@ -0,0 +1,97 @@
+{
+  lib,
+  stdenv,
+  python3Packages,
+  fetchFromGitHub,
+  installShellFiles,
+  jre,
+
+  libX11,
+  libXext,
+  libXcursor,
+  libXrandr,
+  libXxf86vm,
+  libpulseaudio,
+  libGL,
+  glfw,
+  openal,
+  udev,
+
+  textToSpeechSupport ? stdenv.isLinux,
+  flite,
+}:
+
+let
+  # Copied from the `prismlauncher` package
+  runtimeLibs = [
+    libX11
+    libXext
+    libXcursor
+    libXrandr
+    libXxf86vm
+
+    # lwjgl
+    libpulseaudio
+    libGL
+    glfw
+    openal
+    stdenv.cc.cc.lib
+
+    # oshi
+    udev
+  ] ++ lib.optional textToSpeechSupport flite;
+in
+python3Packages.buildPythonApplication rec {
+  pname = "portablemc";
+  version = "4.3.0";
+  pyproject = true;
+
+  disabled = python3Packages.pythonOlder "3.8";
+
+  src = fetchFromGitHub {
+    owner = "mindstorm38";
+    repo = "portablemc";
+    rev = "v${version}";
+    hash = "sha256-jCv4ncXUWbkWlBZr3P1hNeVpdQzY9HtrFz+pmKknL0I=";
+  };
+
+  patches = [
+    # Use the jre package provided by nixpkgs by default
+    ./use-builtin-java.patch
+  ];
+
+  nativeBuildInputs = [ installShellFiles ];
+
+  build-system = [ python3Packages.poetry-core ];
+
+  dependencies = [ python3Packages.certifi ];
+
+  # Note: Tests use networking, so we don't run them
+
+  postInstall = ''
+    installShellCompletion --cmd portablemc \
+        --bash <($out/bin/portablemc show completion bash) \
+        --zsh <($out/bin/portablemc show completion zsh)
+  '';
+
+  preFixup = ''
+    makeWrapperArgs+=(
+      --prefix LD_LIBRARY_PATH : ${lib.makeLibraryPath runtimeLibs}
+      --prefix PATH : ${lib.makeBinPath [ jre ]}
+    )
+  '';
+
+  meta = {
+    homepage = "https://github.com/mindstorm38/portablemc";
+    description = "A fast, reliable and cross-platform command-line Minecraft launcher and API for developers";
+    longDescription = ''
+      A fast, reliable and cross-platform command-line Minecraft launcher and API for developers.
+      Including fast and easy installation of common mod loaders such as Fabric, Forge, NeoForge and Quilt.
+      This launcher is compatible with the standard Minecraft directories.
+    '';
+    changelog = "https://github.com/mindstorm38/portablemc/releases/tag/${src.rev}";
+    license = lib.licenses.gpl3Only;
+    mainProgram = "portablemc";
+    maintainers = with lib.maintainers; [ tomasajt ];
+  };
+}
diff --git a/pkgs/by-name/po/portablemc/use-builtin-java.patch b/pkgs/by-name/po/portablemc/use-builtin-java.patch
new file mode 100644
index 000000000000..a88d97bae9b5
--- /dev/null
+++ b/pkgs/by-name/po/portablemc/use-builtin-java.patch
@@ -0,0 +1,47 @@
+diff --git a/portablemc/standard.py b/portablemc/standard.py
+index f59c55d..0f017e1 100644
+--- a/portablemc/standard.py
++++ b/portablemc/standard.py
+@@ -843,6 +843,8 @@ class Version:
+         if jvm_major_version is not None and not isinstance(jvm_major_version, int):
+             raise ValueError("metadata: /javaVersion/majorVersion must be an integer")
+ 
++        return self._resolve_builtin_jvm(watcher, JvmNotFoundError.UNSUPPORTED_ARCH, jvm_major_version)
++
+         if platform.system() == "Linux" and platform.libc_ver()[0] != "glibc":
+             return self._resolve_builtin_jvm(watcher, JvmNotFoundError.UNSUPPORTED_LIBC, jvm_major_version)
+ 
+@@ -926,31 +928,10 @@ class Version:
+         builtin_path = shutil.which(jvm_bin_filename)
+         if builtin_path is None:
+             raise JvmNotFoundError(reason)
+-        
+-        try:
+-            
+-            # Get version of the JVM.
+-            process = Popen([builtin_path, "-version"], bufsize=1, stdout=PIPE, stderr=STDOUT, universal_newlines=True)
+-            stdout, _stderr = process.communicate(timeout=1)
+-
+-            version_start = stdout.index(f"1.{major_version}" if major_version <= 8 else str(major_version))
+-            version = None
+-            
+-            # Parse version by getting all character that are numeric or '.'.
+-            for i, ch in enumerate(stdout[version_start:]):
+-                if not ch.isnumeric() and ch not in (".", "_"):
+-                    version = stdout[version_start:i]
+-                    break
+-            
+-            if version is None:
+-                raise ValueError()
+-
+-        except (TimeoutExpired, ValueError):
+-            raise JvmNotFoundError(JvmNotFoundError.BUILTIN_INVALID_VERSION)
+ 
+         self._jvm_path = Path(builtin_path)
+-        self._jvm_version = version
+-        watcher.handle(JvmLoadedEvent(version, JvmLoadedEvent.BUILTIN))
++        self._jvm_version = "nixpkgs"
++        watcher.handle(JvmLoadedEvent("nixpkgs", JvmLoadedEvent.BUILTIN))
+ 
+     def _download(self, watcher: Watcher) -> None:
+         
diff --git a/pkgs/by-name/po/pot/package.nix b/pkgs/by-name/po/pot/package.nix
index aac04e5a0bcc..0547e72f4819 100644
--- a/pkgs/by-name/po/pot/package.nix
+++ b/pkgs/by-name/po/pot/package.nix
@@ -3,7 +3,7 @@
 , stdenvNoCC
 , rustPlatform
 , fetchFromGitHub
-, wrapGAppsHook
+, wrapGAppsHook3
 , cargo
 , rustc
 , cargo-tauri
@@ -84,7 +84,7 @@ stdenv.mkDerivation rec {
     cargo
     rustc
     cargo-tauri
-    wrapGAppsHook
+    wrapGAppsHook3
     nodePackages.pnpm
     pkg-config
   ];
diff --git a/pkgs/by-name/po/powerpipe/package.nix b/pkgs/by-name/po/powerpipe/package.nix
new file mode 100644
index 000000000000..007ded352267
--- /dev/null
+++ b/pkgs/by-name/po/powerpipe/package.nix
@@ -0,0 +1,71 @@
+{
+  buildGoModule,
+  fetchFromGitHub,
+  installShellFiles,
+  lib,
+  makeWrapper,
+  nix-update-script,
+  powerpipe,
+  testers,
+}:
+
+buildGoModule rec {
+  pname = "powerpipe";
+  version = "0.3.0";
+
+  src = fetchFromGitHub {
+    owner = "turbot";
+    repo = "powerpipe";
+    rev = "refs/tags/v${version}";
+    hash = "sha256-lG2MYLb/8bv8SOLPZvZNtf5WM1qOJWEBTpLU2MzPbLs=";
+  };
+
+  vendorHash = "sha256-K8SfPWn4IGQNPdax0Qe4KD+XttvDe2xj361zz55u6tA=";
+  proxyVendor = true;
+
+  nativeBuildInputs = [
+    installShellFiles
+    makeWrapper
+  ];
+
+  ldflags = [
+    "-s"
+    "-w"
+    "-X main.version=${version}"
+  ];
+
+  doCheck = true;
+
+  checkFlags =
+    let
+      skippedTests = [
+        # test fails in the original github.com/turbot/powerpipe project as well
+        "TestGetAsSnapshotPropertyMap/card"
+      ];
+    in
+    [ "-skip=^${builtins.concatStringsSep "$|^" skippedTests}$" ];
+
+  postInstall = ''
+    wrapProgram $out/bin/powerpipe \
+      --set-default POWERPIPE_UPDATE_CHECK false \
+      --set-default POWERPIPE_TELEMETRY none
+  '';
+
+  passthru = {
+    tests.version = testers.testVersion {
+      command = "${lib.getExe powerpipe} --version";
+      package = powerpipe;
+      version = "v${version}";
+    };
+    updateScript = nix-update-script { };
+  };
+
+  meta = {
+    changelog = "https://github.com/turbot/powerpipe/blob/v${version}/CHANGELOG.md";
+    description = "Dynamically query your cloud, code, logs & more with SQL";
+    homepage = "https://powerpipe.io/";
+    license = lib.licenses.agpl3Only;
+    mainProgram = "powerpipe";
+    maintainers = with lib.maintainers; [ weitzj ];
+  };
+}
diff --git a/pkgs/by-name/po/powersupply/package.nix b/pkgs/by-name/po/powersupply/package.nix
index ce86cf2da7d0..31216d84675a 100644
--- a/pkgs/by-name/po/powersupply/package.nix
+++ b/pkgs/by-name/po/powersupply/package.nix
@@ -8,7 +8,7 @@
 , meson
 , ninja
 , pkg-config
-, wrapGAppsHook
+, wrapGAppsHook3
 }:
 
 python3.pkgs.buildPythonApplication rec {
@@ -31,7 +31,7 @@ python3.pkgs.buildPythonApplication rec {
     meson
     ninja
     pkg-config
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
diff --git a/pkgs/by-name/pp/ppsspp/package.nix b/pkgs/by-name/pp/ppsspp/package.nix
index 01c24a71bfe6..0dd5e3492a0f 100644
--- a/pkgs/by-name/pp/ppsspp/package.nix
+++ b/pkgs/by-name/pp/ppsspp/package.nix
@@ -1,25 +1,29 @@
-{ lib
-, stdenv
-, fetchFromGitHub
-, SDL2
-, cmake
-, copyDesktopItems
-, ffmpeg_4
-, glew
-, libffi
-, libsForQt5
-, libzip
-, makeDesktopItem
-, makeWrapper
-, pkg-config
-, python3
-, snappy
-, vulkan-loader
-, wayland
-, zlib
-, enableQt ? false
-, enableVulkan ? true
-, forceWayland ? false
+{
+  lib,
+  SDL2,
+  cmake,
+  copyDesktopItems,
+  fetchFromGitHub,
+  ffmpeg,
+  glew,
+  libffi,
+  libsForQt5,
+  libzip,
+  makeDesktopItem,
+  makeWrapper,
+  pkg-config,
+  python3,
+  snappy,
+  stdenv,
+  vulkan-loader,
+  wayland,
+  zlib,
+
+  enableQt ? false,
+  enableVulkan ? true,
+  forceWayland ? false,
+  useSystemFfmpeg? false,
+  useSystemSnappy? true,
 }:
 
 let
@@ -55,26 +59,33 @@ stdenv.mkDerivation (finalAttrs: {
     makeWrapper
     pkg-config
     python3
-  ] ++ lib.optionals enableQt [ wrapQtAppsHook ];
+  ]
+  ++ lib.optionals enableQt [ wrapQtAppsHook ];
 
   buildInputs = [
     SDL2
-    ffmpeg_4
-    (glew.override { enableEGL = forceWayland; })
+    glew
     libzip
-    snappy
     zlib
-  ] ++ lib.optionals enableQt [
+  ]
+  ++ lib.optionals useSystemFfmpeg [
+    ffmpeg
+  ]
+  ++ lib.optionals useSystemSnappy [
+    snappy
+  ]
+  ++ lib.optionals enableQt [
     qtbase
     qtmultimedia
-  ] ++ lib.optionals enableVulkan [ vulkan-loader ]
+  ]
+  ++ lib.optionals enableVulkan [ vulkan-loader ]
   ++ lib.optionals vulkanWayland [ wayland libffi ];
 
   cmakeFlags = [
     (lib.cmakeBool "HEADLESS" (!enableQt))
-    (lib.cmakeBool "USE_SYSTEM_FFMPEG" true)
+    (lib.cmakeBool "USE_SYSTEM_FFMPEG" useSystemFfmpeg)
     (lib.cmakeBool "USE_SYSTEM_LIBZIP" true)
-    (lib.cmakeBool "USE_SYSTEM_SNAPPY" true)
+    (lib.cmakeBool "USE_SYSTEM_SNAPPY" useSystemSnappy)
     (lib.cmakeBool "USE_WAYLAND_WSI" vulkanWayland)
     (lib.cmakeBool "USING_QT_UI" enableQt)
     (lib.cmakeFeature "OpenGL_GL_PREFERENCE" "GLVND")
@@ -91,33 +102,40 @@ stdenv.mkDerivation (finalAttrs: {
     })
   ];
 
-  installPhase = let
-    vulkanPath = lib.makeLibraryPath [ vulkan-loader ];
-  in
-    ''
-      runHook preInstall
+  installPhase =
+    lib.concatStringsSep "\n" ([
+      ''runHook preInstall''
+    ]
+    ++ [
+      ''mkdir -p $out/share/{applications,ppsspp/bin,icons}''
+    ]
+    ++ (if enableQt then [
+      ''install -Dm555 PPSSPPQt $out/share/ppsspp/bin/''
+      ] else [
+        ''install -Dm555 PPSSPPHeadless $out/share/ppsspp/bin/''
+        ''makeWrapper $out/share/ppsspp/bin/PPSSPPHeadless $out/bin/ppsspp-headless''
+        ''install -Dm555 PPSSPPSDL $out/share/ppsspp/bin/''
+      ])
+    ++ [
+      ''mv assets $out/share/ppsspp''
+      ''mv ../icons/hicolor $out/share/icons''
+    ]
+    ++ [
+      ''runHook postInstall''
+    ]);
 
-      mkdir -p $out/share/{applications,ppsspp,icons}
-    ''
-    + (if enableQt then ''
-      install -Dm555 PPSSPPQt $out/bin/ppsspp
-      wrapProgram $out/bin/ppsspp \
-    '' else ''
-      install -Dm555 PPSSPPHeadless $out/bin/ppsspp-headless
-      install -Dm555 PPSSPPSDL $out/share/ppsspp/
-      makeWrapper $out/share/ppsspp/PPSSPPSDL $out/bin/ppsspp \
-        --set SDL_VIDEODRIVER ${if forceWayland then "wayland" else "x11"} \
-    '')
-    + lib.optionalString enableVulkan ''
-        --prefix LD_LIBRARY_PATH : ${vulkanPath} \
-    ''
-    + ''
-
-      mv assets $out/share/ppsspp
-      mv ../icons/hicolor $out/share/icons
-
-      runHook postInstall
-    '';
+  postFixup =
+    let
+      wrapperArgs =
+        lib.concatStringsSep " "
+          (lib.optionals enableVulkan [
+            "--prefix LD_LIBRARY_PATH : ${lib.makeLibraryPath [ vulkan-loader ]}"
+          ] ++ lib.optionals (!enableQt) [
+            "--set SDL_VIDEODRIVER ${if forceWayland then "wayland" else "x11"}"
+          ]);
+      binToBeWrapped = if enableQt then "PPSSPPQt" else "PPSSPPSDL";
+    in
+      ''makeWrapper $out/share/ppsspp/bin/${binToBeWrapped} $out/bin/ppsspp ${wrapperArgs}'';
 
   meta = {
     homepage = "https://www.ppsspp.org/";
diff --git a/pkgs/by-name/pr/pragtical/package.nix b/pkgs/by-name/pr/pragtical/package.nix
new file mode 100644
index 000000000000..cfa6269b89f4
--- /dev/null
+++ b/pkgs/by-name/pr/pragtical/package.nix
@@ -0,0 +1,86 @@
+{
+  lib,
+  stdenv,
+  fetchFromGitHub,
+  cacert,
+  meson,
+  ninja,
+  pkg-config,
+  freetype,
+  libgit2,
+  libuchardet,
+  libzip,
+  lua5_4,
+  luajit,
+  mbedtls_2,
+  pcre2,
+  SDL2,
+  zlib,
+}:
+
+stdenv.mkDerivation (finalAttrs: {
+  pname = "pragtical";
+  version = "3.3.1";
+  pluginManagerVersion = "1.2.9";
+
+  src = fetchFromGitHub {
+    owner = "pragtical";
+    repo = "pragtical";
+    rev = "v${finalAttrs.version}";
+    fetchSubmodules = true;
+
+    # also fetch required git submodules
+    postFetch = ''
+      cd "$out"
+
+      export NIX_SSL_CERT_FILE=${cacert}/etc/ssl/certs/ca-bundle.crt
+
+      substituteInPlace subprojects/ppm.wrap \
+          --replace-fail 'revision = head' 'revision = v${finalAttrs.pluginManagerVersion}'
+
+      ${lib.getExe meson} subprojects download \
+          colors plugins ppm
+
+      find subprojects -type d -name .git -prune -execdir rm -r {} +
+    '';
+
+    hash = "sha256-T0IHpfMfx4P84RyBLtaYNead6a7cID2cUYwkyNnYMgc=";
+  };
+
+  nativeBuildInputs = [
+    meson
+    ninja
+    pkg-config
+  ];
+
+  buildInputs = [
+    freetype
+    libgit2
+    libuchardet
+    libzip
+    lua5_4
+    luajit
+    mbedtls_2
+    pcre2
+    SDL2
+    zlib
+  ];
+
+  # workaround for `libmbedx509.so.1, libmbedcrypto.so.7: error adding symbols: DSO missing from command line`
+  env.NIX_LDFLAGS = "-lmbedx509 -lmbedcrypto";
+
+  mesonFlags = [ "-Duse_system_lua=true" ];
+
+  meta = {
+    changelog = "https://github.com/pragtical/pragtical/blob/${finalAttrs.src.rev}/changelog.md";
+    description = "A practical and pragmatic code editor";
+    homepage = "https://pragtical.dev";
+    license = lib.licenses.mit;
+    mainProgram = "pragtical";
+    maintainers = with lib.maintainers; [
+      suhr
+      tomasajt
+    ];
+    platforms = lib.platforms.linux;
+  };
+})
diff --git a/pkgs/by-name/pr/pretalx/package.nix b/pkgs/by-name/pr/pretalx/package.nix
index 9f733eeb8fe4..f3582c1b7fb5 100644
--- a/pkgs/by-name/pr/pretalx/package.nix
+++ b/pkgs/by-name/pr/pretalx/package.nix
@@ -3,6 +3,7 @@
 , gettext
 , python3
 , fetchFromGitHub
+, plugins ? [ ]
 , nixosTests
 }:
 
@@ -42,7 +43,7 @@ let
     homepage = "https://github.com/pretalx/pretalx";
     changelog = "https://docs.pretalx.org/en/latest/changelog.html";
     license = licenses.asl20;
-    maintainers = teams.c3d2.members;
+    maintainers = with maintainers; [ hexa] ++ teams.c3d2.members;
     platforms = platforms.linux;
   };
 
@@ -85,10 +86,16 @@ python.pkgs.buildPythonApplication rec {
   ]);
 
   pythonRelaxDeps = [
+    "celery"
+    "css-inline"
     "cssutils"
     "django-csp"
     "django-filter"
+    "django-hierarkey"
+    "markdown"
+    "pillow"
     "python-dateutil"
+    "reportlab"
   ];
 
   propagatedBuildInputs = with python.pkgs; [
@@ -126,7 +133,7 @@ python.pkgs.buildPythonApplication rec {
     vobject
     whitenoise
     zxcvbn
-  ] ++ beautifulsoup4.optional-dependencies.lxml;
+  ] ++ beautifulsoup4.optional-dependencies.lxml ++ plugins;
 
   passthru.optional-dependencies = {
     mysql = with python.pkgs; [
@@ -204,6 +211,12 @@ python.pkgs.buildPythonApplication rec {
     tests = {
       inherit (nixosTests) pretalx;
     };
+    plugins = lib.recurseIntoAttrs (
+      lib.packagesFromDirectoryRecursive {
+        inherit (python.pkgs) callPackage;
+        directory = ./plugins;
+      }
+    );
   };
 
   inherit meta;
diff --git a/pkgs/by-name/pr/pretalx/plugins/downstream.nix b/pkgs/by-name/pr/pretalx/plugins/downstream.nix
new file mode 100644
index 000000000000..074c84a90b03
--- /dev/null
+++ b/pkgs/by-name/pr/pretalx/plugins/downstream.nix
@@ -0,0 +1,30 @@
+{
+  lib,
+  buildPythonPackage,
+  fetchFromGitHub,
+  setuptools,
+}:
+
+buildPythonPackage rec {
+  pname = "pretalx-downstream";
+  version = "1.2.0";
+  pyproject = true;
+
+  src = fetchFromGitHub {
+    owner = "pretalx";
+    repo = "pretalx-downstream";
+    rev = "v${version}";
+    hash = "sha256-MzoK/tzf6ajZ/THIXyad/tfb3lsQD9k9J6aBfoP9ONo=";
+  };
+
+  build-system = [ setuptools ];
+
+  pythonImportsCheck = [ "pretalx_downstream" ];
+
+  meta = {
+    description = "Use pretalx passively by importing another event's schedule";
+    homepage = "https://github.com/pretalx/pretalx-downstream";
+    license = lib.licenses.asl20;
+    maintainers = with lib.maintainers; [ wegank ];
+  };
+}
diff --git a/pkgs/by-name/pr/pretalx/plugins/media-ccc-de.nix b/pkgs/by-name/pr/pretalx/plugins/media-ccc-de.nix
new file mode 100644
index 000000000000..91cb42f791e3
--- /dev/null
+++ b/pkgs/by-name/pr/pretalx/plugins/media-ccc-de.nix
@@ -0,0 +1,30 @@
+{
+  lib,
+  buildPythonPackage,
+  fetchFromGitHub,
+  setuptools,
+}:
+
+buildPythonPackage rec {
+  pname = "pretalx-media-ccc-de";
+  version = "1.2.1";
+  pyproject = true;
+
+  src = fetchFromGitHub {
+    owner = "pretalx";
+    repo = "pretalx-media-ccc-de";
+    rev = "v${version}";
+    hash = "sha256-QCnZZpYjHxj92Dl2nRd4lXapufcqRmlVH6LEq0rzQ2U=";
+  };
+
+  build-system = [ setuptools ];
+
+  pythonImportsCheck = [ "pretalx_media_ccc_de" ];
+
+  meta = {
+    description = "Pull recordings from media.ccc.de and embed them in talk pages";
+    homepage = "https://github.com/pretalx/pretalx-media-ccc-de";
+    license = lib.licenses.asl20;
+    maintainers = with lib.maintainers; [ wegank ];
+  };
+}
diff --git a/pkgs/by-name/pr/pretalx/plugins/pages.nix b/pkgs/by-name/pr/pretalx/plugins/pages.nix
new file mode 100644
index 000000000000..3f8d254542a7
--- /dev/null
+++ b/pkgs/by-name/pr/pretalx/plugins/pages.nix
@@ -0,0 +1,30 @@
+{
+  lib,
+  buildPythonPackage,
+  fetchFromGitHub,
+  setuptools,
+}:
+
+buildPythonPackage rec {
+  pname = "pretalx-pages";
+  version = "1.4.0";
+  pyproject = true;
+
+  src = fetchFromGitHub {
+    owner = "pretalx";
+    repo = "pretalx-pages";
+    rev = "v${version}";
+    hash = "sha256-Wzd3uf+mdoyeMCZ4ZYcPLGqlUWCqSL02eeKRubTiH00=";
+  };
+
+  build-system = [ setuptools ];
+
+  pythonImportsCheck = [ "pretalx_pages" ];
+
+  meta = {
+    description = "Static pages for pretalx, e.g. information, venue listings, a Code of Conduct, etc";
+    homepage = "https://github.com/pretalx/pretalx-pages";
+    license = lib.licenses.asl20;
+    maintainers = with lib.maintainers; [ wegank ];
+  };
+}
diff --git a/pkgs/by-name/pr/pretalx/plugins/public-voting.nix b/pkgs/by-name/pr/pretalx/plugins/public-voting.nix
new file mode 100644
index 000000000000..3ce595b69fe5
--- /dev/null
+++ b/pkgs/by-name/pr/pretalx/plugins/public-voting.nix
@@ -0,0 +1,30 @@
+{
+  lib,
+  buildPythonPackage,
+  fetchFromGitHub,
+  setuptools,
+}:
+
+buildPythonPackage rec {
+  pname = "pretalx-public-voting";
+  version = "1.5.0";
+  pyproject = true;
+
+  src = fetchFromGitHub {
+    owner = "pretalx";
+    repo = "pretalx-public-voting";
+    rev = "v${version}";
+    hash = "sha256-0dSnUVXtWEuu+m5PyFjjM2WVYE3+cNqZYlMkRQlI+2U=";
+  };
+
+  build-system = [ setuptools ];
+
+  pythonImportsCheck = [ "pretalx_public_voting" ];
+
+  meta = {
+    description = "A public voting plugin for pretalx";
+    homepage = "https://github.com/pretalx/pretalx-public-voting";
+    license = lib.licenses.asl20;
+    maintainers = with lib.maintainers; [ wegank ];
+  };
+}
diff --git a/pkgs/by-name/pr/pretalx/plugins/venueless.nix b/pkgs/by-name/pr/pretalx/plugins/venueless.nix
new file mode 100644
index 000000000000..5d082c9abd6a
--- /dev/null
+++ b/pkgs/by-name/pr/pretalx/plugins/venueless.nix
@@ -0,0 +1,40 @@
+{
+  lib,
+  buildPythonPackage,
+  fetchFromGitHub,
+  gettext,
+  setuptools,
+  django,
+  pyjwt,
+}:
+
+buildPythonPackage rec {
+  pname = "pretalx-venueless";
+  version = "1.3.0";
+  pyproject = true;
+
+  src = fetchFromGitHub {
+    owner = "pretalx";
+    repo = "pretalx-venueless";
+    rev = "v${version}";
+    hash = "sha256-h8o5q1roFm8Bct/Qf8obIJYkkGPcz3WJ15quxZH48H8=";
+  };
+
+  nativeBuildInputs = [ gettext ];
+
+  build-system = [ setuptools ];
+
+  dependencies = [
+    django
+    pyjwt
+  ];
+
+  pythonImportsCheck = [ "pretalx_venueless" ];
+
+  meta = {
+    description = "Static venueless for pretalx, e.g. information, venue listings, a Code of Conduct, etc";
+    homepage = "https://github.com/pretalx/pretalx-venueless";
+    license = lib.licenses.asl20;
+    maintainers = with lib.maintainers; [ wegank ];
+  };
+}
diff --git a/pkgs/by-name/pr/pretalx/plugins/vimeo.nix b/pkgs/by-name/pr/pretalx/plugins/vimeo.nix
new file mode 100644
index 000000000000..c823b7bce4b3
--- /dev/null
+++ b/pkgs/by-name/pr/pretalx/plugins/vimeo.nix
@@ -0,0 +1,30 @@
+{
+  lib,
+  buildPythonPackage,
+  fetchFromGitHub,
+  setuptools,
+}:
+
+buildPythonPackage rec {
+  pname = "pretalx-vimeo";
+  version = "2.2.0";
+  pyproject = true;
+
+  src = fetchFromGitHub {
+    owner = "pretalx";
+    repo = "pretalx-vimeo";
+    rev = "v${version}";
+    hash = "sha256-CVP9C2wY51p8UDnzPpjzdVv5b9CSVanGbkaJiOo+9eY=";
+  };
+
+  build-system = [ setuptools ];
+
+  pythonImportsCheck = [ "pretalx_vimeo" ];
+
+  meta = {
+    description = "Static vimeo for pretalx, e.g. information, venue listings, a Code of Conduct, etc";
+    homepage = "https://github.com/pretalx/pretalx-vimeo";
+    license = lib.licenses.asl20;
+    maintainers = with lib.maintainers; [ wegank ];
+  };
+}
diff --git a/pkgs/by-name/pr/pretalx/plugins/youtube.nix b/pkgs/by-name/pr/pretalx/plugins/youtube.nix
new file mode 100644
index 000000000000..4424225c7b09
--- /dev/null
+++ b/pkgs/by-name/pr/pretalx/plugins/youtube.nix
@@ -0,0 +1,30 @@
+{
+  lib,
+  buildPythonPackage,
+  fetchFromGitHub,
+  setuptools,
+}:
+
+buildPythonPackage rec {
+  pname = "pretalx-youtube";
+  version = "2.1.0";
+  pyproject = true;
+
+  src = fetchFromGitHub {
+    owner = "pretalx";
+    repo = "pretalx-youtube";
+    rev = "v${version}";
+    hash = "sha256-j3NZ+5QBbdpE2bxenqq5bW/42CWvQ9FqrKMmfYIe4Lo=";
+  };
+
+  build-system = [ setuptools ];
+
+  pythonImportsCheck = [ "pretalx_youtube" ];
+
+  meta = {
+    description = "Static youtube for pretalx, e.g. information, venue listings, a Code of Conduct, etc";
+    homepage = "https://github.com/pretalx/pretalx-youtube";
+    license = lib.licenses.asl20;
+    maintainers = with lib.maintainers; [ wegank ];
+  };
+}
diff --git a/pkgs/by-name/pr/pretix/package.nix b/pkgs/by-name/pr/pretix/package.nix
index 2456720db705..a45fdbdf2ff3 100644
--- a/pkgs/by-name/pr/pretix/package.nix
+++ b/pkgs/by-name/pr/pretix/package.nix
@@ -29,13 +29,13 @@ let
   };
 
   pname = "pretix";
-  version = "2024.3.0";
+  version = "2024.4.0";
 
   src = fetchFromGitHub {
     owner = "pretix";
     repo = "pretix";
     rev = "refs/tags/v${version}";
-    hash = "sha256-Wz1vZcqgwyS0xJgTtRxqfaJpJ1fAMhIyxvTvBT/ABSo=";
+    hash = "sha256-+F5EOMMkO1ngGeFscDipwbldsY0AhOUKbjqgNpuph4g=";
   };
 
   npmDeps = buildNpmPackage {
@@ -43,7 +43,7 @@ let
     inherit version src;
 
     sourceRoot = "${src.name}/src/pretix/static/npm_dir";
-    npmDepsHash = "sha256-2fHlEEmYzpF3SyvF7+FbwCt+zQVGF0/kslDFnJ+DQGE=";
+    npmDepsHash = "sha256-0Q/BCRHlnyQJlCF3PgIP9q3Qyr/ff+GP0lPIwPsIMSU=";
 
     dontBuild = true;
 
@@ -81,16 +81,15 @@ python.pkgs.buildPythonApplication rec {
       --replace-fail psycopg2-binary psycopg2 \
       --replace-fail vat_moss_forked==2020.3.20.0.11.0 vat-moss \
       --replace-fail "bleach==5.0.*" bleach \
+      --replace-fail "django-hierarkey==1.1.*" django-hierarkey \
+      --replace-fail "djangorestframework==3.15.*" djangorestframework \
       --replace-fail "dnspython==2.6.*" dnspython \
-      --replace-fail "django-countries==7.5.*" django-countries \
-      --replace-fail "django-filter==24.1" django-filter \
       --replace-fail "importlib_metadata==7.*" importlib_metadata \
       --replace-fail "markdown==3.6" markdown \
       --replace-fail "protobuf==5.26.*" protobuf \
       --replace-fail "pycryptodome==3.20.*" pycryptodome \
       --replace-fail "pypdf==3.9.*" pypdf \
       --replace-fail "python-dateutil==2.9.*" python-dateutil \
-      --replace-fail "sentry-sdk==1.42.*" sentry-sdk \
       --replace-fail "stripe==7.9.*" stripe
   '';
 
@@ -175,6 +174,7 @@ python.pkgs.buildPythonApplication rec {
     text-unidecode
     tlds
     tqdm
+    ua-parser
     vat-moss
     vobject
     webauthn
@@ -213,6 +213,11 @@ python.pkgs.buildPythonApplication rec {
     "--reruns" "3"
   ];
 
+  disabledTests = [
+    # unreliable around day changes
+    "test_order_create_invoice"
+  ];
+
   preCheck = ''
     export PYTHONPATH=$(pwd)/src:$PYTHONPATH
     export DJANGO_SETTINGS_MODULE=tests.settings
diff --git a/pkgs/by-name/pr/primesieve/package.nix b/pkgs/by-name/pr/primesieve/package.nix
index 470b62111b3f..b5e2da37022d 100644
--- a/pkgs/by-name/pr/primesieve/package.nix
+++ b/pkgs/by-name/pr/primesieve/package.nix
@@ -7,13 +7,13 @@
 
 stdenv.mkDerivation (finalAttrs: {
   pname = "primesieve";
-  version = "12.1";
+  version = "12.3";
 
   src = fetchFromGitHub {
     owner = "kimwalisch";
     repo = "primesieve";
     rev = "v${finalAttrs.version}";
-    hash = "sha256-AHl2GfZ1oJ8ZyjJzvg10AqN7TA7HFZ+qa6N2v51Qa78=";
+    hash = "sha256-jULYLJK3iwPKgWpdTEetmSz1Nv2md1XUfR9A9mTQu9M=";
   };
 
   outputs = [ "out" "dev" "lib" "man" ];
diff --git a/pkgs/by-name/pr/private-gpt/package.nix b/pkgs/by-name/pr/private-gpt/package.nix
new file mode 100644
index 000000000000..1b717cc2bfb8
--- /dev/null
+++ b/pkgs/by-name/pr/private-gpt/package.nix
@@ -0,0 +1,17 @@
+{ python3Packages
+, makeBinaryWrapper
+}:
+
+python3Packages.toPythonApplication (python3Packages.private-gpt.overrideAttrs (oldAttrs: {
+  nativeBuildInputs = oldAttrs.nativeBuildInputs ++ [ makeBinaryWrapper ];
+
+  passthru.cl100k_base = {
+    inherit (python3Packages.private-gpt.cl100k_base) tiktoken;
+  };
+
+  postInstall = ''
+    makeWrapper ${python3Packages.python.interpreter} $out/bin/private-gpt \
+      --prefix PYTHONPATH : "$PYTHONPATH" \
+      --add-flags "-m private_gpt"
+  '';
+}))
diff --git a/pkgs/by-name/pr/promptfoo/package.nix b/pkgs/by-name/pr/promptfoo/package.nix
index 8e9c6ceec3ad..f6859c50f14e 100644
--- a/pkgs/by-name/pr/promptfoo/package.nix
+++ b/pkgs/by-name/pr/promptfoo/package.nix
@@ -5,16 +5,16 @@
 
 buildNpmPackage rec {
   pname = "promptfoo";
-  version = "0.54.1";
+  version = "0.55.0";
 
   src = fetchFromGitHub {
     owner = "promptfoo";
     repo = "promptfoo";
     rev = "${version}";
-    hash = "sha256-ZDr2sJRiy26a+NPAcsqTTAuccQQmvmDdMtrr1FGzaSk=";
+    hash = "sha256-XQnsOr+L2MCKPzZeIKzx4XjWF6B18gBVDU0j31CgjUc=";
   };
 
-  npmDepsHash = "sha256-ZPwEkhINT0sQc4BNUVbJzI1ffJZzXJa7Ld+0am6MYtM=";
+  npmDepsHash = "sha256-f7tlRZHjdeIk17hQhzmIbhMwUkoca3J+F65cr0dvSmU=";
 
   dontNpmBuild = true;
 
diff --git a/pkgs/by-name/pr/proto/package.nix b/pkgs/by-name/pr/proto/package.nix
index 94753d08d47e..3383f6bb5e54 100644
--- a/pkgs/by-name/pr/proto/package.nix
+++ b/pkgs/by-name/pr/proto/package.nix
@@ -10,16 +10,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "proto";
-  version = "0.34.4";
+  version = "0.35.1";
 
   src = fetchFromGitHub {
     owner = "moonrepo";
     repo = pname;
     rev = "v${version}";
-    hash = "sha256-sh4EeK9LGY1t7BDWV31pOjp6CYhOIRR/wCb6LAv68ok=";
+    hash = "sha256-ympqli1CHqS4iR76Rs9SFTVP4PxHsnFpZMDReg3+LhA=";
   };
 
-  cargoHash = "sha256-PU6r6Iwv00TLhAZSt9hERWvCgpC27Cuf3rrsjN1gO5k=";
+  cargoHash = "sha256-moabqZlj3vWkQo/yZEcwbvXuqrTswfSFaci/FEJzfnQ=";
 
   buildInputs = lib.optionals stdenv.isDarwin [
     darwin.apple_sdk.frameworks.SystemConfiguration
diff --git a/pkgs/development/tools/protoc-gen-rust/default.nix b/pkgs/by-name/pr/protoc-gen-rust/package.nix
index bba32dd81a4e..bba32dd81a4e 100644
--- a/pkgs/development/tools/protoc-gen-rust/default.nix
+++ b/pkgs/by-name/pr/protoc-gen-rust/package.nix
diff --git a/pkgs/by-name/pr/proton-ge-bin/package.nix b/pkgs/by-name/pr/proton-ge-bin/package.nix
index 3537d60cbbfe..a281607d5024 100644
--- a/pkgs/by-name/pr/proton-ge-bin/package.nix
+++ b/pkgs/by-name/pr/proton-ge-bin/package.nix
@@ -5,11 +5,11 @@
 }:
 stdenvNoCC.mkDerivation (finalAttrs: {
   pname = "proton-ge-bin";
-  version = "GE-Proton9-4";
+  version = "GE-Proton9-5";
 
   src = fetchzip {
     url = "https://github.com/GloriousEggroll/proton-ge-custom/releases/download/${finalAttrs.version}/${finalAttrs.version}.tar.gz";
-    hash = "sha256-OR4SUqm5Xsycv/KVBW2Ug/lz4Xr6IQBp8gXacorRe3U=";
+    hash = "sha256-bUlV533M5BL5UEOB0ED8VIMmquvVAvIm+E/ZJNjftRU=";
   };
 
   outputs = [ "out" "steamcompattool" ];
diff --git a/pkgs/by-name/pr/protonmail-desktop/package.nix b/pkgs/by-name/pr/protonmail-desktop/package.nix
index b3edfaa9dc21..fce6e7bef53e 100644
--- a/pkgs/by-name/pr/protonmail-desktop/package.nix
+++ b/pkgs/by-name/pr/protonmail-desktop/package.nix
@@ -10,11 +10,11 @@ let
   mainProgram = "proton-mail";
 in stdenv.mkDerivation rec {
   pname = "protonmail-desktop";
-  version = "1.0.1";
+  version = "1.0.2";
 
   src = fetchurl {
     url = "https://github.com/ProtonMail/inbox-desktop/releases/download/v${version}/proton-mail_${version}_amd64.deb";
-    hash = "sha256-fNK//x3DOsynWSkG9N+nZ3wjYoC+RreaYVC6KEDXh4w=";
+    hash = "sha256-c+0iFBpcg+t983oOttPokA5sLGsIQFIsC+GbsVY6hmI=";
   };
 
   dontConfigure = true;
diff --git a/pkgs/by-name/pr/protonplus/package.nix b/pkgs/by-name/pr/protonplus/package.nix
new file mode 100644
index 000000000000..cd715b3a36d0
--- /dev/null
+++ b/pkgs/by-name/pr/protonplus/package.nix
@@ -0,0 +1,65 @@
+{
+  lib,
+  stdenv,
+  fetchFromGitHub,
+  nix-update-script,
+  desktop-file-utils,
+  wrapGAppsHook4,
+  meson,
+  ninja,
+  pkg-config,
+  vala,
+  glib,
+  glib-networking,
+  gtk4,
+  json-glib,
+  libadwaita,
+  libarchive,
+  libgee,
+  libsoup_3,
+}:
+stdenv.mkDerivation (finalAttrs: {
+  pname = "protonplus";
+  version = "0.4.10";
+
+  src = fetchFromGitHub {
+    owner = "Vysp3r";
+    repo = "protonplus";
+    rev = "v${finalAttrs.version}";
+    hash = "sha256-dKhGXpsBCZBNNJRAjzSvP0B/3DbS9wRdhTS4WL2NZjE=";
+  };
+
+  nativeBuildInputs = [
+    desktop-file-utils
+    meson
+    ninja
+    pkg-config
+    vala
+    wrapGAppsHook4
+  ];
+
+  buildInputs = [
+    glib
+    glib-networking
+    gtk4
+    json-glib
+    libadwaita
+    libarchive
+    libgee
+    libsoup_3
+  ];
+
+  passthru = {
+    updateScript = nix-update-script { };
+  };
+
+  meta = with lib; {
+    mainProgram = "com.vysp3r.ProtonPlus";
+    description = "A simple Wine and Proton-based compatibility tools manager";
+    homepage = "https://github.com/Vysp3r/ProtonPlus";
+    changelog = "https://github.com/Vysp3r/ProtonPlus/releases/tag/v${finalAttrs.version}";
+    license = licenses.gpl3Only;
+    maintainers = with maintainers; [ getchoo ];
+    platforms = platforms.linux;
+  };
+})
diff --git a/pkgs/by-name/pr/prowler/package.nix b/pkgs/by-name/pr/prowler/package.nix
index 01dc71bf2fef..a8c5fb546e79 100644
--- a/pkgs/by-name/pr/prowler/package.nix
+++ b/pkgs/by-name/pr/prowler/package.nix
@@ -17,8 +17,10 @@ python3.pkgs.buildPythonApplication rec {
   };
 
   pythonRelaxDeps = [
+    "azure-identity"
     "azure-keyvault-keys"
     "azure-mgmt-compute"
+    "azure-mgmt-containerservice"
     "azure-mgmt-network"
     "azure-mgmt-security"
     "azure-storage-blob"
diff --git a/pkgs/tools/system/ps_mem/default.nix b/pkgs/by-name/ps/ps_mem/package.nix
index 96c21e461d4a..c6cdbab67262 100644
--- a/pkgs/tools/system/ps_mem/default.nix
+++ b/pkgs/by-name/ps/ps_mem/package.nix
@@ -1,22 +1,26 @@
-{ lib, python3Packages, fetchFromGitHub }:
+{
+  lib,
+  python3Packages,
+  fetchFromGitHub,
+}:
 
 python3Packages.buildPythonApplication rec {
   pname = "ps_mem";
-  version = "3.13";
+  version = "3.14";
 
   src = fetchFromGitHub {
     owner = "pixelb";
     repo = pname;
     rev = "v${version}";
-    sha256 = "0pgi9hvwfbkzvwicqlkwx4rwal1ikza018yxbwpnf7c80zw0zaw9";
+    hash = "sha256-jCfPtPSky/QFk9Xo/tq3W7609Pie1yLC4iS4dqjCa+E=";
   };
 
-  meta = with lib; {
+  meta = {
     description = "A utility to accurately report the in core memory usage for a program";
     homepage = "https://github.com/pixelb/ps_mem";
-    license = licenses.lgpl21;
-    maintainers = [ ];
-    platforms = platforms.linux;
+    license = lib.licenses.lgpl21;
+    maintainers = with lib.maintainers; [ sigmanificient ];
+    platforms = lib.platforms.linux;
     mainProgram = "ps_mem";
   };
 }
diff --git a/pkgs/by-name/pt/ptyxis/package.nix b/pkgs/by-name/pt/ptyxis/package.nix
new file mode 100644
index 000000000000..3ff45bffb4db
--- /dev/null
+++ b/pkgs/by-name/pt/ptyxis/package.nix
@@ -0,0 +1,66 @@
+{
+  lib,
+  stdenv,
+  fetchFromGitLab,
+  meson,
+  ninja,
+  pkg-config,
+  wrapGAppsHook4,
+  desktop-file-utils,
+  libadwaita,
+  json-glib,
+  vte-gtk4,
+  libportal-gtk4,
+  pcre2,
+}:
+
+let
+  version = "46.2";
+
+  src = fetchFromGitLab {
+    domain = "gitlab.gnome.org";
+    owner = "chergert";
+    repo = "ptyxis";
+    rev = version;
+    hash = "sha256-/n/S2ws6qsVwTXX96MPa+/ISozDDu8A1wkD1g3dmAtQ=";
+  };
+
+  vte-gtk4-patched = vte-gtk4.overrideAttrs (prev: {
+    patches = (prev.patches or [ ]) ++ [
+      "${src}/build-aux/0001-add-notification-and-shell-precmd-preexec.patch"
+    ];
+  });
+in
+stdenv.mkDerivation {
+  pname = "ptyxis";
+  inherit version src;
+
+  nativeBuildInputs = [
+    meson
+    ninja
+    pkg-config
+    wrapGAppsHook4
+    desktop-file-utils
+  ];
+
+  buildInputs = [
+    libadwaita
+    json-glib
+    vte-gtk4-patched
+    libportal-gtk4
+    pcre2
+  ];
+
+  passthru = {
+    inherit vte-gtk4-patched;
+  };
+
+  meta = {
+    description = "A terminal for GNOME with first-class support for containers";
+    homepage = "https://gitlab.gnome.org/chergert/ptyxis";
+    license = lib.licenses.gpl3Plus;
+    mainProgram = "ptyxis";
+    maintainers = with lib.maintainers; [ aleksana ];
+    platforms = lib.platforms.linux;
+  };
+}
diff --git a/pkgs/by-name/pu/pupdate/package.nix b/pkgs/by-name/pu/pupdate/package.nix
index a0740f486930..52a62f04268d 100644
--- a/pkgs/by-name/pu/pupdate/package.nix
+++ b/pkgs/by-name/pu/pupdate/package.nix
@@ -12,13 +12,13 @@
 
 buildDotnetModule rec {
   pname = "pupdate";
-  version = "3.10.1";
+  version = "3.10.2";
 
   src = fetchFromGitHub {
     owner = "mattpannella";
     repo = "${pname}";
     rev = "${version}";
-    hash = "sha256-xr5XD0V3kt4fDm8GNotGuttAeWwwlAr2iFA/RezvC4w=";
+    hash = "sha256-XPPbxlmwuM9q1NkeI8MX6w+ZbC272o2BPopQgkqU4Ek=";
   };
 
   buildInputs = [
diff --git a/pkgs/by-name/pw/pw3270/package.nix b/pkgs/by-name/pw/pw3270/package.nix
index 4e35f393dbcb..657a21806950 100644
--- a/pkgs/by-name/pw/pw3270/package.nix
+++ b/pkgs/by-name/pw/pw3270/package.nix
@@ -14,7 +14,7 @@
 , gettext
 , desktop-file-utils
 , glib
-, wrapGAppsHook
+, wrapGAppsHook3
 }:
 
 stdenv.mkDerivation rec {
@@ -35,7 +35,7 @@ stdenv.mkDerivation rec {
     automake
     libtool
     desktop-file-utils
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
diff --git a/pkgs/by-name/py/pyprland/package.nix b/pkgs/by-name/py/pyprland/package.nix
index 309f680751f7..de8a217d6e47 100644
--- a/pkgs/by-name/py/pyprland/package.nix
+++ b/pkgs/by-name/py/pyprland/package.nix
@@ -1,8 +1,13 @@
-{ lib, fetchFromGitHub, python3Packages }:
+{
+  lib,
+  fetchFromGitHub,
+  python3Packages,
+  nix-update-script,
+}:
 
 python3Packages.buildPythonApplication rec {
   pname = "pyprland";
-  version = "2.2.15";
+  version = "2.2.20";
   format = "pyproject";
 
   disabled = python3Packages.pythonOlder "3.10";
@@ -10,8 +15,8 @@ python3Packages.buildPythonApplication rec {
   src = fetchFromGitHub {
     owner = "hyprland-community";
     repo = "pyprland";
-    rev = version;
-    hash = "sha256-ju/Xa3s0engE09q9EtKK/zhgimMmlTPXJrpwWQqUFLs=";
+    rev = "refs/tags/${version}";
+    hash = "sha256-/eJ3emWI2l9jYgD7RX6tGUy6wHHQ25qS6Xd1x1uWZ1w=";
   };
 
   nativeBuildInputs = with python3Packages; [ poetry-core ];
@@ -53,12 +58,17 @@ python3Packages.buildPythonApplication rec {
     "pyprland.plugins.workspaces_follow_focus"
   ];
 
+  passthru.updateScript = nix-update-script {};
+
   meta = {
     mainProgram = "pypr";
     description = "An hyperland plugin system";
     homepage = "https://github.com/hyprland-community/pyprland";
     license = lib.licenses.mit;
-    maintainers = with lib.maintainers; [ iliayar johnrtitor ];
+    maintainers = with lib.maintainers; [
+      iliayar
+      johnrtitor
+    ];
     platforms = lib.platforms.linux;
   };
 }
diff --git a/pkgs/by-name/py/pyright/package.nix b/pkgs/by-name/py/pyright/package.nix
index f73cc100fbff..1f91e91abba0 100644
--- a/pkgs/by-name/py/pyright/package.nix
+++ b/pkgs/by-name/py/pyright/package.nix
@@ -1,13 +1,13 @@
 { lib, buildNpmPackage, fetchFromGitHub, runCommand, jq }:
 
 let
-  version = "1.1.360";
+  version = "1.1.362";
 
   src = fetchFromGitHub {
     owner = "Microsoft";
     repo = "pyright";
     rev = "${version}";
-    hash = "sha256-aVzQM9yfiIC5y7mgpym7ha2a4UKpOwYs+dUmIG0tlcQ=";
+    hash = "sha256-sz+Om2bfsJJTe2W8l49pI+K9phCTwoczeG1Q7qlMIig=";
   };
 
   patchedPackageJSON = runCommand "package.json" { } ''
@@ -37,7 +37,7 @@ let
     pname = "pyright-internal";
     inherit version src;
     sourceRoot = "${src.name}/packages/pyright-internal";
-    npmDepsHash = "sha256-lUAPeIw9sj3JyX8G8lMsJk3wf3AOlPRModN4u1iTpcQ=";
+    npmDepsHash = "sha256-xcr9j5/90gfV/r0yI9ifj6Nrr9WrawwvukuVkl387r4=";
     dontNpmBuild = true;
     installPhase = ''
       runHook preInstall
@@ -51,7 +51,7 @@ buildNpmPackage rec {
   inherit version src;
 
   sourceRoot = "${src.name}/packages/pyright";
-  npmDepsHash = "sha256-CcjVFvEqi0f6ltY9O4c7pBFAuxuKgX9WMKZ9TCBYLyk=";
+  npmDepsHash = "sha256-79tXMdOt1XH3KTT46bq35J4AcCVyoB2d4KEkr9EjqVY=";
 
   postPatch = ''
     chmod +w ../../
diff --git a/pkgs/by-name/qu/quark-goldleaf/package.nix b/pkgs/by-name/qu/quark-goldleaf/package.nix
index 71321a76fbd5..353bca5fea9f 100644
--- a/pkgs/by-name/qu/quark-goldleaf/package.nix
+++ b/pkgs/by-name/qu/quark-goldleaf/package.nix
@@ -6,7 +6,7 @@
 , makeDesktopItem
 , copyDesktopItems
 , imagemagick
-, wrapGAppsHook
+, wrapGAppsHook3
 , gtk3
 }:
 
@@ -46,7 +46,7 @@ maven'.buildMavenPackage rec {
   nativeBuildInputs = [
     imagemagick # for icon conversion
     copyDesktopItems
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [ gtk3 ];
diff --git a/pkgs/by-name/qu/quarkus/package.nix b/pkgs/by-name/qu/quarkus/package.nix
index 3a0528e6693e..018258955ff3 100644
--- a/pkgs/by-name/qu/quarkus/package.nix
+++ b/pkgs/by-name/qu/quarkus/package.nix
@@ -7,11 +7,11 @@
 
 stdenv.mkDerivation (finalAttrs: {
   pname = "quarkus-cli";
-  version = "3.9.5";
+  version = "3.10.1";
 
   src = fetchurl {
     url = "https://github.com/quarkusio/quarkus/releases/download/${finalAttrs.version}/quarkus-cli-${finalAttrs.version}.tar.gz";
-    hash = "sha256-3vcuf49gutlXbFT5mUuZw9fDjyvb0Q+lXyn4n+RcLdU=";
+    hash = "sha256-bS+d7CvzsMcIdex+cZ8DMFOkIgT9G1ktMDu2wc6XySU=";
   };
 
   nativeBuildInputs = [ makeWrapper ];
diff --git a/pkgs/development/quickemu/default.nix b/pkgs/by-name/qu/quickemu/package.nix
index c8893a4e06b2..9280eaa99007 100644
--- a/pkgs/development/quickemu/default.nix
+++ b/pkgs/by-name/qu/quickemu/package.nix
@@ -2,21 +2,23 @@
 , fetchFromGitHub
 , stdenv
 , makeWrapper
-, qemu
+, cdrtools
+, curl
+, gawk
 , gnugrep
 , gnused
-, lsb-release
 , jq
+, ncurses
+, pciutils
 , procps
 , python3
-, cdrtools
-, usbutils
-, util-linux
+, qemu
 , socat
 , spice-gtk
 , swtpm
+, usbutils
+, util-linux
 , unzip
-, wget
 , xdg-user-dirs
 , xrandr
 , zsync
@@ -28,35 +30,37 @@
 }:
 let
   runtimePaths = [
-    qemu
+    cdrtools
+    curl
+    gawk
     gnugrep
     gnused
     jq
-    lsb-release
+    ncurses
+    pciutils
     procps
     python3
-    cdrtools
+    qemu
+    socat
+    swtpm
     usbutils
     util-linux
     unzip
-    socat
-    swtpm
-    wget
     xdg-user-dirs
     xrandr
     zsync
   ];
 in
 
-stdenv.mkDerivation rec {
+stdenv.mkDerivation (finalAttrs : {
   pname = "quickemu";
-  version = "4.9.2";
+  version = "4.9.4";
 
   src = fetchFromGitHub {
     owner = "quickemu-project";
     repo = "quickemu";
-    rev = version;
-    hash = "sha256-StYgnFBnEJUkJDyFluMm01xhgejXc99AEldGGxIvZU0=";
+    rev = finalAttrs.version;
+    hash = "sha256-fjbXgze6klvbRgkJtPIUh9kEkP/As7dAj+cazpzelBY=";
   };
 
   postPatch = ''
@@ -74,11 +78,11 @@ stdenv.mkDerivation rec {
     runHook preInstall
 
     installManPage docs/quickget.1 docs/quickemu.1 docs/quickemu_conf.1
-    install -Dm755 -t "$out/bin" macrecovery quickemu quickget windowskey
+    install -Dm755 -t "$out/bin" chunkcheck quickemu quickget quickreport windowskey
 
     # spice-gtk needs to be put in suffix so that when virtualisation.spiceUSBRedirection
     # is enabled, the wrapped spice-client-glib-usb-acl-helper is used
-    for f in macrecovery quickget quickemu windowskey; do
+    for f in chunkcheck quickget quickemu quickreport windowskey; do
       wrapProgram $out/bin/$f \
         --prefix PATH : "${lib.makeBinPath runtimePaths}" \
         --suffix PATH : "${lib.makeBinPath [ spice-gtk ]}"
@@ -89,10 +93,11 @@ stdenv.mkDerivation rec {
 
   passthru.tests = testers.testVersion { package = quickemu; };
 
-  meta = with lib; {
-    description = "Quickly create and run optimised Windows, macOS and Linux desktop virtual machines";
+  meta = {
+    description = "Quickly create and run optimised Windows, macOS and Linux virtual machines";
     homepage = "https://github.com/quickemu-project/quickemu";
-    license = licenses.mit;
-    maintainers = with maintainers; [ fedx-sudo ];
+    mainProgram = "quickemu";
+    license = lib.licenses.mit;
+    maintainers = with lib.maintainers; [ fedx-sudo flexiondotorg ];
   };
-}
+})
diff --git a/pkgs/servers/radicale/3.x.nix b/pkgs/by-name/ra/radicale/package.nix
index c9523233379e..d3637df36b07 100644
--- a/pkgs/servers/radicale/3.x.nix
+++ b/pkgs/by-name/ra/radicale/package.nix
@@ -6,14 +6,14 @@
 
 python3.pkgs.buildPythonApplication rec {
   pname = "radicale";
-  version = "3.1.9";
+  version = "3.2.0";
   pyproject = true;
 
   src = fetchFromGitHub {
     owner = "Kozea";
     repo = "Radicale";
     rev = "v${version}";
-    hash = "sha256-i4NQ1+ltRE0g8AoyGKKVcgZgSmLeppnobu6bf2+XmWY=";
+    hash = "sha256-RxC8VOfdTXJZiAroDHTKjJqGWu65Z5uyb4WK1LOqubQ=";
   };
 
   postPatch = ''
@@ -28,6 +28,7 @@ python3.pkgs.buildPythonApplication rec {
     defusedxml
     passlib
     vobject
+    pika
     python-dateutil
     pytz # https://github.com/Kozea/Radicale/issues/816
   ] ++ passlib.optional-dependencies.bcrypt;
diff --git a/pkgs/by-name/ra/radicle-node/package.nix b/pkgs/by-name/ra/radicle-node/package.nix
new file mode 100644
index 000000000000..8044e41d8e44
--- /dev/null
+++ b/pkgs/by-name/ra/radicle-node/package.nix
@@ -0,0 +1,63 @@
+{ lib
+, stdenv
+, fetchgit
+, asciidoctor
+, git
+, installShellFiles
+, rustPlatform
+, testers
+, radicle-node
+, darwin
+}: rustPlatform.buildRustPackage rec {
+  pname = "radicle-node";
+  version = "1.0.0-rc.9";
+  env.RADICLE_VERSION = version;
+
+  src = fetchgit {
+    url = "https://seed.radicle.xyz/z3gqcJUoA1n9HaHKufZs5FCSGazv5.git";
+    rev = "refs/namespaces/z6MksFqXN3Yhqk8pTJdUGLwATkRfQvwZXPqR2qMEhbS9wzpT/refs/tags/v${version}";
+    hash = "sha256-GFltwKc6madTJWPTeAeslmFffHtixR0Dxd+3hAnHvz0=";
+  };
+  cargoHash = "sha256-UM9eDWyeewWPq3+z0JWqdAsCxx6EqytuYMwLXDHOC64=";
+
+  nativeBuildInputs = [ asciidoctor installShellFiles ];
+  nativeCheckInputs = [ git ];
+  buildInputs = lib.optionals stdenv.buildPlatform.isDarwin [
+    darwin.apple_sdk.frameworks.Security
+  ];
+
+  doCheck = stdenv.hostPlatform.isLinux;
+
+  preCheck = ''
+    export PATH=$PATH:$PWD/target/${stdenv.hostPlatform.rust.rustcTargetSpec}/release
+    # Tests want to open many files.
+    ulimit -n 4096
+  '';
+  checkFlags = [
+    "--skip=service::message::tests::test_node_announcement_validate"
+    "--skip=tests::test_announcement_relay"
+  ];
+
+  postInstall = ''
+    for page in $(find -name '*.adoc'); do
+      asciidoctor -d manpage -b manpage $page
+      installManPage ''${page::-5}
+    done
+  '';
+
+  passthru.tests.version = testers.testVersion { package = radicle-node; };
+
+  meta = {
+    description = "Radicle node and CLI for decentralized code collaboration";
+    longDescription = ''
+      Radicle is an open source, peer-to-peer code collaboration stack built on Git.
+      Unlike centralized code hosting platforms, there is no single entity controlling the network.
+      Repositories are replicated across peers in a decentralized manner, and users are in full control of their data and workflow.
+    '';
+    homepage = "https://radicle.xyz";
+    license = with lib.licenses; [ asl20 mit ];
+    platforms = lib.platforms.unix;
+    maintainers = with lib.maintainers; [ amesgen lorenzleutgeb ];
+    mainProgram = "rad";
+  };
+}
diff --git a/pkgs/by-name/ra/ratslap/package.nix b/pkgs/by-name/ra/ratslap/package.nix
index 6ea5cc191652..59ff8ffb8e1e 100644
--- a/pkgs/by-name/ra/ratslap/package.nix
+++ b/pkgs/by-name/ra/ratslap/package.nix
@@ -7,15 +7,15 @@
 , git
 }:
 
-stdenv.mkDerivation rec {
+stdenv.mkDerivation (finalAttrs: {
   pname = "ratslap";
   version = "0.4.1";
 
   src = fetchFromGitHub {
     owner = "krayon";
     repo = "ratslap";
-    rev = version;
-    sha256 = "sha256-PO/79tTiO4TBtojrEtkSf5W6zuG+Ml2iJGAtYHDwHEY=";
+    rev = finalAttrs.version;
+    hash = "sha256-PO/79tTiO4TBtojrEtkSf5W6zuG+Ml2iJGAtYHDwHEY=";
     leaveDotGit = true;
   };
 
@@ -33,9 +33,9 @@ stdenv.mkDerivation rec {
     makeFlagsArray+=(
       "-W gitup"
       "VDIRTY="
-      "MAJVER=${version}"
+      "MAJVER=${finalAttrs.version}"
       "APPBRANCH=main"
-      "BINNAME=${pname}"
+      "BINNAME=ratslap"
       "MARKDOWN_GEN="
       "BUILD_DATE=$(git show -s --date=format:'%Y-%m-%d %H:%M:%S%z' --format=%cd)"
       "BUILD_MONTH=$(git show -s --date=format:'%B' --format=%cd)"
@@ -49,8 +49,8 @@ stdenv.mkDerivation rec {
     mkdir -p $out/bin
     cp ratslap $out/bin
 
-    mv manpage.1 ${pname}.1
-    installManPage ${pname}.1
+    mv manpage.1 ratslap.1
+    installManPage ratslap.1
 
     runHook postInstall
   '';
@@ -62,9 +62,9 @@ stdenv.mkDerivation rec {
       all buttons and configuring modes, DPI settings and the LED.
     '';
     homepage = "https://github.com/krayon/ratslap";
-    changelog = "https://github.com/krayon/ratslap/releases/tag/${version}";
+    changelog = "https://github.com/krayon/ratslap/releases/tag/${finalAttrs.version}";
     license = licenses.gpl2Only;
     maintainers = with maintainers; [ zebreus ];
-    platforms = platforms.all;
+    platforms = platforms.linux;
   };
-}
+})
diff --git a/pkgs/by-name/rc/rclip/package.nix b/pkgs/by-name/rc/rclip/package.nix
index e98c41815e75..ed611edfda90 100644
--- a/pkgs/by-name/rc/rclip/package.nix
+++ b/pkgs/by-name/rc/rclip/package.nix
@@ -4,14 +4,14 @@
 }:
 python3Packages.buildPythonApplication rec {
   pname = "rclip";
-  version = "1.7.26";
+  version = "1.8.10";
   pyproject = true;
 
   src = fetchFromGitHub {
     owner = "yurijmikhalevich";
     repo = "rclip";
-    rev = "v${version}";
-    hash = "sha256-u+xnrqJXtjElVXlwkCTHztcRl998CwoTEIvaGYzGOLU=";
+    rev = "refs/tags/v${version}";
+    hash = "sha256-wjwi6GBblv8Z3SA1bMrtPz3KVF8Zw5595Hqyp8FPgcg=";
   };
 
   nativeBuildInputs = with python3Packages; [
diff --git a/pkgs/by-name/rc/rcu/package.nix b/pkgs/by-name/rc/rcu/package.nix
index 915113f44d13..250dda8940e6 100644
--- a/pkgs/by-name/rc/rcu/package.nix
+++ b/pkgs/by-name/rc/rcu/package.nix
@@ -15,14 +15,14 @@
 
 python3Packages.buildPythonApplication rec {
   pname = "rcu";
-  version = "2024.001n";
+  version = "2024.001o";
 
   format = "other";
 
   src = let
     src-tarball = requireFile {
       name = "rcu-d${version}-source.tar.gz";
-      sha256 = "1snmf2cr242k946q6fh5b5fqdyafdbs8gbbdzchjhm7n9r1kxyca";
+      sha256 = "1smi4cfnwbdil0f77244dfq65i173vb4g3kk451lwh35s91ar628";
       url = "http://www.davisr.me/projects/rcu/";
     };
   in runCommand "${src-tarball.name}-unpacked" {} ''
diff --git a/pkgs/by-name/re/redka/package.nix b/pkgs/by-name/re/redka/package.nix
new file mode 100644
index 000000000000..3ead73db8310
--- /dev/null
+++ b/pkgs/by-name/re/redka/package.nix
@@ -0,0 +1,30 @@
+{ lib, buildGoModule, fetchFromGitHub }:
+
+buildGoModule rec {
+  pname = "redka";
+  version = "0.4.0";
+
+  src = fetchFromGitHub {
+    owner = "nalgeon";
+    repo = "redka";
+    rev = "v${version}";
+    hash = "sha256-Dm+QMmCYoYJWv+Crot0bwcSPHuUYQzhRgTO65jRjLLE=";
+  };
+
+  vendorHash = "sha256-aX0X6TWVEouo884LunCt+UzLyvDHgmvuxdV0wh0r7Ro=";
+
+  subPackages = [ "cmd/redka" "cmd/cli" ];
+
+  ldflags = [ "-X main.version=v${version}" ];
+
+  postInstall = ''
+    mv $out/bin/{cli,redka-cli}
+  '';
+
+  meta = {
+    description = "Redis re-implemented with SQLite";
+    homepage = "https://github.com/nalgeon/redka";
+    maintainers = with lib.maintainers; [ sikmir ];
+    license = lib.licenses.bsd3;
+  };
+}
diff --git a/pkgs/development/tools/refinery-cli/default.nix b/pkgs/by-name/re/refinery-cli/package.nix
index 609a2618f86c..609a2618f86c 100644
--- a/pkgs/development/tools/refinery-cli/default.nix
+++ b/pkgs/by-name/re/refinery-cli/package.nix
diff --git a/pkgs/by-name/re/regal/package.nix b/pkgs/by-name/re/regal/package.nix
index 70f6058c674a..d97004f6439b 100644
--- a/pkgs/by-name/re/regal/package.nix
+++ b/pkgs/by-name/re/regal/package.nix
@@ -2,13 +2,13 @@
 
 buildGoModule rec {
   name = "regal";
-  version = "0.21.2";
+  version = "0.21.3";
 
   src = fetchFromGitHub {
     owner = "StyraInc";
     repo = "regal";
     rev = "v${version}";
-    hash = "sha256-YGUXJ5rfzyLwqhOLBuIRdN1G0fTcrPmuIsYKS/CzzW4=";
+    hash = "sha256-MeEamVAETl+PJXJ2HpbhYdEG3kqvEeT5bGzRHyTrjcY=";
   };
 
   vendorHash = "sha256-5rj2dCWya24VUmIFf0oJQop80trq9NnqqFlBW/A6opk=";
diff --git a/pkgs/by-name/re/regina/package.nix b/pkgs/by-name/re/regina/package.nix
index 7480ade5413c..f551d09dfc72 100644
--- a/pkgs/by-name/re/regina/package.nix
+++ b/pkgs/by-name/re/regina/package.nix
@@ -6,11 +6,11 @@
 
 stdenv.mkDerivation rec {
   pname = "regina-rexx";
-  version = "3.9.5";
+  version = "3.9.6";
 
   src = fetchurl {
     url = "mirror://sourceforge/regina-rexx/regina-rexx/${version}/${pname}-${version}.tar.gz";
-    hash = "sha256-COmpBhvuADjPtFRG3iB2b/2uUO6jf2ZCRG7E5zoqvFE=";
+    hash = "sha256-7ZjHp/HVpBSLAv7xsWruSmpthljQGoDPXFAwFe8Br6U=";
   };
 
   buildInputs = [ ncurses ];
diff --git a/pkgs/by-name/re/renode-dts2repl/package.nix b/pkgs/by-name/re/renode-dts2repl/package.nix
index 2472831eac22..f9ad25154dad 100644
--- a/pkgs/by-name/re/renode-dts2repl/package.nix
+++ b/pkgs/by-name/re/renode-dts2repl/package.nix
@@ -6,14 +6,14 @@
 
 python3.pkgs.buildPythonApplication {
   pname = "renode-dts2repl";
-  version = "unstable-2024-04-16";
+  version = "0-unstable-2024-05-09";
   pyproject = true;
 
   src = fetchFromGitHub {
     owner = "antmicro";
     repo = "dts2repl";
-    rev = "83e2d743202684eb1f89a1b93e859c69cd736455";
-    hash = "sha256-iD+59mrFNVRu6g58XXLR2Pg8oDpNIiI/+TyCdbRbjtM=";
+    rev = "b95c930c2122e227bbacee42f35933a4c2d40771";
+    hash = "sha256-Sax+ckln+R6ll/UPztESJEjO8dtq8THmi309CaFTv0I=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/by-name/re/renode-unstable/package.nix b/pkgs/by-name/re/renode-unstable/package.nix
index dd971a8df0fe..46cf78a80971 100644
--- a/pkgs/by-name/re/renode-unstable/package.nix
+++ b/pkgs/by-name/re/renode-unstable/package.nix
@@ -5,11 +5,11 @@
 
 renode.overrideAttrs (finalAttrs: _: {
   pname = "renode-unstable";
-  version = "1.15.0+20240426git72f3c383b";
+  version = "1.15.0+20240515gita6b1d773d";
 
   src = fetchurl {
     url = "https://builds.renode.io/renode-${finalAttrs.version}.linux-portable.tar.gz";
-    hash = "sha256-BOQT5nG6Vu12RyAkCwnh6PYfNQTcYGdV4XHDpi/8kPE=";
+    hash = "sha256-N0pdjbEsXZiPh/xr76akmwSmkEt/fsBXZl4Cjncz3hU=";
   };
 
   passthru.updateScript =
diff --git a/pkgs/development/interpreters/renpy/default.nix b/pkgs/by-name/re/renpy/package.nix
index 45a3630f7c57..d31ad9ced864 100644
--- a/pkgs/development/interpreters/renpy/default.nix
+++ b/pkgs/by-name/re/renpy/package.nix
@@ -1,6 +1,20 @@
-{ lib, stdenv, fetchFromGitHub, python3, pkg-config, SDL2
-, libpng, ffmpeg, freetype, glew, libGL, libGLU, fribidi, zlib
-, makeWrapper
+{
+  lib,
+  stdenv,
+  fetchFromGitHub,
+  python3,
+  pkg-config,
+  SDL2,
+  libpng,
+  ffmpeg,
+  freetype,
+  glew,
+  libGL,
+  libGLU,
+  fribidi,
+  zlib,
+  harfbuzz,
+  makeWrapper,
 }:
 
 let
@@ -8,42 +22,71 @@ let
   # base_version is of the form major.minor.patch
   # vc_version is of the form YYMMDDCC
   # version corresponds to the tag on GitHub
-  base_version = "8.1.3";
-  vc_version = "23091805";
-in stdenv.mkDerivation rec {
-  pname = "renpy";
-
+  base_version = "8.2.1";
+  vc_version = "24030407";
   version = "${base_version}.${vc_version}";
+in
+stdenv.mkDerivation {
+  pname = "renpy";
+  inherit version;
 
   src = fetchFromGitHub {
     owner = "renpy";
     repo = "renpy";
     rev = version;
-    sha256 = "sha256-bYqnKSWY8EEGr1+12cWeT9/ZSv5OrKLsRqCnnIruDQw=";
+    hash = "sha256-07Hj8mJGR0+Pn1DQ+sK5YQ3x3CTMsZ5h5yEoz44b2TM=";
   };
 
   nativeBuildInputs = [
     pkg-config
     makeWrapper
-    python3.pkgs.cython
+    # Ren'Py currently does not compile on Cython 3.x.
+    # See https://github.com/renpy/renpy/issues/5359
+    python3.pkgs.cython_0
     python3.pkgs.setuptools
   ];
 
-  buildInputs = [
-    SDL2 libpng ffmpeg freetype glew libGLU libGL fribidi zlib
-  ] ++ (with python3.pkgs; [
-    python pygame-sdl2 tkinter future six pefile requests ecdsa
-  ]);
-
-  RENPY_DEPS_INSTALL = lib.concatStringsSep "::" (map (path: path) [
-    SDL2 SDL2.dev libpng ffmpeg.lib freetype glew.dev libGLU libGL fribidi zlib
-  ]);
+  buildInputs =
+    [
+      SDL2
+      libpng
+      ffmpeg
+      freetype
+      glew
+      libGLU
+      libGL
+      fribidi
+      zlib
+      harfbuzz
+    ]
+    ++ (with python3.pkgs; [
+      python
+      pygame-sdl2
+      tkinter
+      future
+      six
+      pefile
+      requests
+      ecdsa
+    ]);
+
+  RENPY_DEPS_INSTALL = lib.concatStringsSep "::" [
+    SDL2
+    SDL2.dev
+    libpng
+    ffmpeg.lib
+    freetype
+    glew.dev
+    libGLU
+    libGL
+    fribidi
+    zlib
+    harfbuzz.dev
+  ];
 
   enableParallelBuilding = true;
 
-  patches = [
-    ./shutup-erofs-errors.patch
-  ];
+  patches = [ ./shutup-erofs-errors.patch ];
 
   postPatch = ''
     cp tutorial/game/tutorial_director.rpy{m,}
@@ -53,7 +96,7 @@ in stdenv.mkDerivation rec {
     official = False
     nightly = False
     # Look at https://renpy.org/latest.html for what to put.
-    version_name = 'Where No One Has Gone Before'
+    version_name = '64bit Sensation'
     EOF
   '';
 
@@ -79,15 +122,17 @@ in stdenv.mkDerivation rec {
 
   env.NIX_CFLAGS_COMPILE = with python3.pkgs; "-I${pygame-sdl2}/include/${python.libPrefix}";
 
-  meta = with lib; {
+  meta = {
     description = "Visual Novel Engine";
     mainProgram = "renpy";
     homepage = "https://renpy.org/";
     changelog = "https://renpy.org/doc/html/changelog.html";
-    license = licenses.mit;
-    platforms = platforms.linux;
-    maintainers = with maintainers; [ shadowrz ];
+    license = lib.licenses.mit;
+    platforms = lib.platforms.linux;
+    maintainers = with lib.maintainers; [ shadowrz ];
   };
 
-  passthru = { inherit base_version vc_version; };
+  passthru = {
+    inherit base_version vc_version;
+  };
 }
diff --git a/pkgs/development/interpreters/renpy/shutup-erofs-errors.patch b/pkgs/by-name/re/renpy/shutup-erofs-errors.patch
index 9889c9f8ef85..9889c9f8ef85 100644
--- a/pkgs/development/interpreters/renpy/shutup-erofs-errors.patch
+++ b/pkgs/by-name/re/renpy/shutup-erofs-errors.patch
diff --git a/pkgs/by-name/re/retool/package.nix b/pkgs/by-name/re/retool/package.nix
index 9d93358c3d14..dd47fa3e6d0a 100644
--- a/pkgs/by-name/re/retool/package.nix
+++ b/pkgs/by-name/re/retool/package.nix
@@ -7,7 +7,7 @@
 
 python3.pkgs.buildPythonApplication rec {
   pname = "retool";
-  version = "2.3.7";
+  version = "2.3.8";
 
   pyproject = true;
   disabled = python3.pkgs.pythonOlder "3.10";
@@ -16,7 +16,7 @@ python3.pkgs.buildPythonApplication rec {
     owner = "unexpectedpanda";
     repo = "retool";
     rev = "refs/tags/v${version}";
-    hash = "sha256-WEx/S6+8lJXu+4yKazzJ55HTGKr38GMRL242FV7KdLQ=";
+    hash = "sha256-KGBpGZAC0SjStp0aulxVRJMmNwlpvSG0i0rtZgvFCpc=";
   };
 
   nativeBuildInputs = with python3.pkgs; [
diff --git a/pkgs/by-name/re/retrospy/deps.nix b/pkgs/by-name/re/retrospy/deps.nix
new file mode 100644
index 000000000000..3e91b8962400
--- /dev/null
+++ b/pkgs/by-name/re/retrospy/deps.nix
@@ -0,0 +1,154 @@
+# This file was automatically generated by passthru.fetch-deps.
+# Please dont edit it manually, your changes might get overwritten!
+
+{ fetchNuGet }: [
+  (fetchNuGet { pname = "Avalonia"; version = "11.0.0"; sha256 = "0wfbwrr8p5hg9f809d44gh2zfkfwnwayfw84vs33hh7ms0r380gd"; })
+  (fetchNuGet { pname = "Avalonia.Angle.Windows.Natives"; version = "2.1.0.2023020321"; sha256 = "1az4s1g22ipak9a3xfh55z2h3rm6lpqh7svbpw6ag4ysrgsjjsjd"; })
+  (fetchNuGet { pname = "Avalonia.BuildServices"; version = "0.0.28"; sha256 = "0d9hyc1zmyvzlb320arwrv12ncp45llq98hibv711b7ibm11dm7c"; })
+  (fetchNuGet { pname = "Avalonia.Controls.ColorPicker"; version = "11.0.0"; sha256 = "06wgzhxkivlaxkn8p61wainsprml2g1q4jmvy9fpn64qnfywjdn7"; })
+  (fetchNuGet { pname = "Avalonia.Controls.DataGrid"; version = "11.0.0"; sha256 = "0qlcdx4w1pcljgs7sfbn5xmmnqwp2m0fqyswrgz6c8cvjzcfsjsj"; })
+  (fetchNuGet { pname = "Avalonia.Desktop"; version = "11.0.0"; sha256 = "08y31b357fax7c1ggwhjsfwgaj6zkm2abhpc6amlmk6ci4zn12lf"; })
+  (fetchNuGet { pname = "Avalonia.Diagnostics"; version = "11.0.0"; sha256 = "134xl19rfswnz75a1mhil9yqy8haqa788rmd1p1kk6ibjbhb3np9"; })
+  (fetchNuGet { pname = "Avalonia.FreeDesktop"; version = "11.0.0"; sha256 = "042s8lc83lw6ygcsiza14wlsc09rgzw3ch2qaxkhlp73bh736ps3"; })
+  (fetchNuGet { pname = "Avalonia.Native"; version = "11.0.0"; sha256 = "1j7wpv81wqwh6zhfzc1f36vb5dp6s2ig45v8km9sp0q6f66zkrsh"; })
+  (fetchNuGet { pname = "Avalonia.ReactiveUI"; version = "11.0.0"; sha256 = "1fhp6f2aj2bmzlcj0s5r9i9rcxwakdg9gvjqvdqaq8s98d0s06qh"; })
+  (fetchNuGet { pname = "Avalonia.Remote.Protocol"; version = "11.0.0"; sha256 = "1b5031k8slwiz7bncih67fjl6ny234yd4skqxk611l9zp5snjic2"; })
+  (fetchNuGet { pname = "Avalonia.Skia"; version = "11.0.0"; sha256 = "1ra1kd0kkblppr5zy7rzdbwllggrzvp9lkxblf9mg3y8rnp6fk83"; })
+  (fetchNuGet { pname = "Avalonia.Themes.Fluent"; version = "11.0.0"; sha256 = "0v1pnk3hjclr2yqxmff8w6mlgmjch5gfb6yb8h0z1a5m5j6y31qv"; })
+  (fetchNuGet { pname = "Avalonia.Themes.Simple"; version = "11.0.0"; sha256 = "1qw76n78c14xl419yzabahbsrgymm850ql05gd4fh5naq2brksdm"; })
+  (fetchNuGet { pname = "Avalonia.Win32"; version = "11.0.0"; sha256 = "1djp4m5yin4i2f9sjv4v3syv02fllwbfinzm9h0hm2abc2ccvrm3"; })
+  (fetchNuGet { pname = "Avalonia.X11"; version = "11.0.0"; sha256 = "1gd4zrjyw3hg3d48ivhxp0ca7ma13dnpr8y1wc7d51ddlrj3c86g"; })
+  (fetchNuGet { pname = "ColorTextBlock.Avalonia"; version = "11.0.0-d1"; sha256 = "1vf5fp11zx21bsakbpf12j6mchafh749cs03w9cifb6ci98jchgh"; })
+  (fetchNuGet { pname = "Desktop.Robot"; version = "1.5.0"; sha256 = "1y78cpv97cwk4xas0rcpr2wwyags424f3in63kzj8w80d9gradr1"; })
+  (fetchNuGet { pname = "DialogHost.Avalonia"; version = "0.7.5"; sha256 = "1wkvqrzvhjhhg128gfr57fcm2xvs9yvix405nm7v06kn6xr12d73"; })
+  (fetchNuGet { pname = "DynamicData"; version = "7.9.5"; sha256 = "1m9qx8g6na5ka6kd9vhg8gjmxrnkzb6v5cl5yqp1kdjsw4rcwy6x"; })
+  (fetchNuGet { pname = "HarfBuzzSharp"; version = "2.8.2.3"; sha256 = "115aybicqs9ijjlcv6k6r5v0agkjm1bm1nkd0rj3jglv8s0xvmp2"; })
+  (fetchNuGet { pname = "HarfBuzzSharp.NativeAssets.Linux"; version = "2.8.2.3"; sha256 = "1f18ahwkaginrg0vwsi6s56lvnqvvxv7pzklfs5lnknasxy1a76z"; })
+  (fetchNuGet { pname = "HarfBuzzSharp.NativeAssets.macOS"; version = "2.8.2.3"; sha256 = "052d8frpkj4ijs6fm6xp55xbv95b1s9biqwa0w8zp3rgm88m9236"; })
+  (fetchNuGet { pname = "HarfBuzzSharp.NativeAssets.WebAssembly"; version = "2.8.2.3"; sha256 = "043hv36bg5240znbm8x5la7py17m4jfzy57q3ka32f6zjld83j36"; })
+  (fetchNuGet { pname = "HarfBuzzSharp.NativeAssets.Win32"; version = "2.8.2.3"; sha256 = "08khd2jqm8sw58ljz5srangzfm2sz3gd2q1jzc5fr80lj8rv6r74"; })
+  (fetchNuGet { pname = "LibUsbDotNet"; version = "3.0.102-alpha"; sha256 = "05hz68aj5z76lgxz87r26314xw1a37s9wjy6gmvwwa77kg6av4d0"; })
+  (fetchNuGet { pname = "Markdown.Avalonia.Tight"; version = "11.0.0-d1"; sha256 = "0ks9k3wqwvdssiwbcjc4gnrfn1r8x2dbp9amraxkmws5a7vbjdyk"; })
+  (fetchNuGet { pname = "MessageBox.Avalonia"; version = "3.0.0"; sha256 = "1hyfhbayyi8dqsy9fnp09qh92qdil9wsjy97pdfp2mywgr121q50"; })
+  (fetchNuGet { pname = "MicroCom.Runtime"; version = "0.11.0"; sha256 = "0p9c3m0zk59x9dcqw077hzd2yk60myisbacvm36mnwpcjwzjkp2m"; })
+  (fetchNuGet { pname = "Microsoft.CodeAnalysis.Analyzers"; version = "3.0.0"; sha256 = "0bbl0jpqywqmzz2gagld1p2gvdfldjfjmm25hil9wj2nq1zc4di8"; })
+  (fetchNuGet { pname = "Microsoft.CodeAnalysis.Common"; version = "3.8.0"; sha256 = "12n7rvr39bzkf2maw7zplw8rwpxpxss4ich3bb2pw770rx4nyvyw"; })
+  (fetchNuGet { pname = "Microsoft.CodeAnalysis.CSharp"; version = "3.8.0"; sha256 = "1kmry65csvfn72zzc16vj1nfbfwam28wcmlrk3m5rzb8ydbzgylb"; })
+  (fetchNuGet { pname = "Microsoft.CodeAnalysis.CSharp.Scripting"; version = "3.8.0"; sha256 = "0w0yx0lpg54iw5jazqk46h48gx43ij32gwac8iywdj6kxfxm03vw"; })
+  (fetchNuGet { pname = "Microsoft.CodeAnalysis.Scripting.Common"; version = "3.8.0"; sha256 = "0hjgxcsj5zy27lqk0986m59n5dbplx2vjjla2lsvg4bwg8qa7bpk"; })
+  (fetchNuGet { pname = "Microsoft.CSharp"; version = "4.3.0"; sha256 = "0gw297dgkh0al1zxvgvncqs0j15lsna9l1wpqas4rflmys440xvb"; })
+  (fetchNuGet { pname = "Microsoft.NETCore.Platforms"; version = "1.1.0"; sha256 = "08vh1r12g6ykjygq5d3vq09zylgb84l63k49jc4v8faw9g93iqqm"; })
+  (fetchNuGet { pname = "Microsoft.NETCore.Platforms"; version = "2.1.2"; sha256 = "1507hnpr9my3z4w1r6xk5n0s1j3y6a2c2cnynj76za7cphxi1141"; })
+  (fetchNuGet { pname = "Microsoft.NETCore.Targets"; version = "1.1.0"; sha256 = "193xwf33fbm0ni3idxzbr5fdq3i2dlfgihsac9jj7whj0gd902nh"; })
+  (fetchNuGet { pname = "Microsoft.Win32.SystemEvents"; version = "6.0.0"; sha256 = "0c6pcj088g1yd1vs529q3ybgsd2vjlk5y1ic6dkmbhvrp5jibl9p"; })
+  (fetchNuGet { pname = "Microsoft.Win32.SystemEvents"; version = "7.0.0"; sha256 = "1bh77misznh19m1swqm3dsbji499b8xh9gk6w74sgbkarf6ni8lb"; })
+  (fetchNuGet { pname = "Newtonsoft.Json"; version = "13.0.3"; sha256 = "0xrwysmrn4midrjal8g2hr1bbg38iyisl0svamb11arqws4w2bw7"; })
+  (fetchNuGet { pname = "NodaTime"; version = "3.1.9"; sha256 = "10vyhv24awjqxjhyq6sw0gbbim8wddj1hnsv9l7mjv2vmg71qz1w"; })
+  (fetchNuGet { pname = "PolySharp"; version = "1.10.0"; sha256 = "06qici3hhk6a0jmy0nyvspcnmhbapnic6iin3i28pkdvrii02hnz"; })
+  (fetchNuGet { pname = "ReactiveUI"; version = "18.3.1"; sha256 = "1lxkc8yk9glj0w9n5vry2dnwwvh8152ad2c5bivk8aciq64zidyn"; })
+  (fetchNuGet { pname = "runtime.any.System.Collections"; version = "4.3.0"; sha256 = "0bv5qgm6vr47ynxqbnkc7i797fdi8gbjjxii173syrx14nmrkwg0"; })
+  (fetchNuGet { pname = "runtime.any.System.Globalization"; version = "4.3.0"; sha256 = "1daqf33hssad94lamzg01y49xwndy2q97i2lrb7mgn28656qia1x"; })
+  (fetchNuGet { pname = "runtime.any.System.IO"; version = "4.3.0"; sha256 = "0l8xz8zn46w4d10bcn3l4yyn4vhb3lrj2zw8llvz7jk14k4zps5x"; })
+  (fetchNuGet { pname = "runtime.any.System.Reflection"; version = "4.3.0"; sha256 = "02c9h3y35pylc0zfq3wcsvc5nqci95nrkq0mszifc0sjx7xrzkly"; })
+  (fetchNuGet { pname = "runtime.any.System.Reflection.Extensions"; version = "4.3.0"; sha256 = "0zyri97dfc5vyaz9ba65hjj1zbcrzaffhsdlpxc9bh09wy22fq33"; })
+  (fetchNuGet { pname = "runtime.any.System.Reflection.Primitives"; version = "4.3.0"; sha256 = "0x1mm8c6iy8rlxm8w9vqw7gb7s1ljadrn049fmf70cyh42vdfhrf"; })
+  (fetchNuGet { pname = "runtime.any.System.Resources.ResourceManager"; version = "4.3.0"; sha256 = "03kickal0iiby82wa5flar18kyv82s9s6d4xhk5h4bi5kfcyfjzl"; })
+  (fetchNuGet { pname = "runtime.any.System.Runtime"; version = "4.3.0"; sha256 = "1cqh1sv3h5j7ixyb7axxbdkqx6cxy00p4np4j91kpm492rf4s25b"; })
+  (fetchNuGet { pname = "runtime.any.System.Runtime.Handles"; version = "4.3.0"; sha256 = "0bh5bi25nk9w9xi8z23ws45q5yia6k7dg3i4axhfqlnj145l011x"; })
+  (fetchNuGet { pname = "runtime.any.System.Runtime.InteropServices"; version = "4.3.0"; sha256 = "0c3g3g3jmhlhw4klrc86ka9fjbl7i59ds1fadsb2l8nqf8z3kb19"; })
+  (fetchNuGet { pname = "runtime.any.System.Text.Encoding"; version = "4.3.0"; sha256 = "0aqqi1v4wx51h51mk956y783wzags13wa7mgqyclacmsmpv02ps3"; })
+  (fetchNuGet { pname = "runtime.any.System.Threading.Tasks"; version = "4.3.0"; sha256 = "03mnvkhskbzxddz4hm113zsch1jyzh2cs450dk3rgfjp8crlw1va"; })
+  (fetchNuGet { pname = "runtime.debian.8-x64.runtime.native.System.Security.Cryptography.OpenSsl"; version = "4.3.0"; sha256 = "16rnxzpk5dpbbl1x354yrlsbvwylrq456xzpsha1n9y3glnhyx9d"; })
+  (fetchNuGet { pname = "runtime.fedora.23-x64.runtime.native.System.Security.Cryptography.OpenSsl"; version = "4.3.0"; sha256 = "0hkg03sgm2wyq8nqk6dbm9jh5vcq57ry42lkqdmfklrw89lsmr59"; })
+  (fetchNuGet { pname = "runtime.fedora.24-x64.runtime.native.System.Security.Cryptography.OpenSsl"; version = "4.3.0"; sha256 = "0c2p354hjx58xhhz7wv6div8xpi90sc6ibdm40qin21bvi7ymcaa"; })
+  (fetchNuGet { pname = "runtime.linux-arm.runtime.native.System.IO.Ports"; version = "7.0.0"; sha256 = "1q38c2fq6c464h1hs3g6528m0m8c3a5a08vsg59mzmm42r0ayh4k"; })
+  (fetchNuGet { pname = "runtime.linux-arm.runtime.native.System.IO.Ports"; version = "8.0.0-preview.6.23329.7"; sha256 = "0gvrha8fp26hnzxqw99r50ki3mjnpjr6iaa483b4lahpljk06ijb"; })
+  (fetchNuGet { pname = "runtime.linux-arm64.runtime.native.System.IO.Ports"; version = "7.0.0"; sha256 = "1z35v6bwwl8lv7yz37xj99gablhs9sr5y0r3zb57qmjx4psvix3f"; })
+  (fetchNuGet { pname = "runtime.linux-arm64.runtime.native.System.IO.Ports"; version = "8.0.0-preview.6.23329.7"; sha256 = "1flvgvbpk7iqsi3cr23bjm9kdj63rmb97bn1hxzcia8iyybdzcnj"; })
+  (fetchNuGet { pname = "runtime.linux-x64.runtime.native.System.IO.Ports"; version = "7.0.0"; sha256 = "1gfzdz42rsv5gp1p4w5ygkw43gm101q444a3jzgsspp2jk50hdj7"; })
+  (fetchNuGet { pname = "runtime.linux-x64.runtime.native.System.IO.Ports"; version = "8.0.0-preview.6.23329.7"; sha256 = "17fw28ymsdbwpimmvh3nx2shc2khqm8gypg5q1s90kvyzb5ivzpg"; })
+  (fetchNuGet { pname = "runtime.native.System"; version = "4.3.0"; sha256 = "15hgf6zaq9b8br2wi1i3x0zvmk410nlmsmva9p0bbg73v6hml5k4"; })
+  (fetchNuGet { pname = "runtime.native.System.IO.Ports"; version = "7.0.0"; sha256 = "0l52l3kkl4rg9wg25lacb8khywmclcyq230mss0aqsyjqlyxv9l8"; })
+  (fetchNuGet { pname = "runtime.native.System.IO.Ports"; version = "8.0.0-preview.6.23329.7"; sha256 = "0gigh53b9ddkycvhm8vg5gz53wq02qzb7kivwh69vh2454f1qap7"; })
+  (fetchNuGet { pname = "runtime.native.System.Security.Cryptography.OpenSsl"; version = "4.3.0"; sha256 = "18pzfdlwsg2nb1jjjjzyb5qlgy6xjxzmhnfaijq5s2jw3cm3ab97"; })
+  (fetchNuGet { pname = "runtime.opensuse.13.2-x64.runtime.native.System.Security.Cryptography.OpenSsl"; version = "4.3.0"; sha256 = "0qyynf9nz5i7pc26cwhgi8j62ps27sqmf78ijcfgzab50z9g8ay3"; })
+  (fetchNuGet { pname = "runtime.opensuse.42.1-x64.runtime.native.System.Security.Cryptography.OpenSsl"; version = "4.3.0"; sha256 = "1klrs545awhayryma6l7g2pvnp9xy4z0r1i40r80zb45q3i9nbyf"; })
+  (fetchNuGet { pname = "runtime.osx-arm64.runtime.native.System.IO.Ports"; version = "7.0.0"; sha256 = "03fjxh2lcrkgbr63zdk3sal99rrr60z9rgwa58pz4a2y78zy5h53"; })
+  (fetchNuGet { pname = "runtime.osx-arm64.runtime.native.System.IO.Ports"; version = "8.0.0-preview.6.23329.7"; sha256 = "0zphic782inl2mc6ijv7m4003pdlrk3rb7xdkcavxb5gy00lgc7n"; })
+  (fetchNuGet { pname = "runtime.osx-x64.runtime.native.System.IO.Ports"; version = "7.0.0"; sha256 = "0y3rj0dv8l4fsw4w149q94zbqz4wm28ix5cvbhs8da3r92nqy9dj"; })
+  (fetchNuGet { pname = "runtime.osx-x64.runtime.native.System.IO.Ports"; version = "8.0.0-preview.6.23329.7"; sha256 = "0rnx41sgf690wx02z3i6bxgiw43khx5xq7f27arp53v7m0d11xny"; })
+  (fetchNuGet { pname = "runtime.osx.10.10-x64.runtime.native.System.Security.Cryptography.OpenSsl"; version = "4.3.0"; sha256 = "0zcxjv5pckplvkg0r6mw3asggm7aqzbdjimhvsasb0cgm59x09l3"; })
+  (fetchNuGet { pname = "runtime.rhel.7-x64.runtime.native.System.Security.Cryptography.OpenSsl"; version = "4.3.0"; sha256 = "0vhynn79ih7hw7cwjazn87rm9z9fj0rvxgzlab36jybgcpcgphsn"; })
+  (fetchNuGet { pname = "runtime.ubuntu.14.04-x64.runtime.native.System.Security.Cryptography.OpenSsl"; version = "4.3.0"; sha256 = "160p68l2c7cqmyqjwxydcvgw7lvl1cr0znkw8fp24d1by9mqc8p3"; })
+  (fetchNuGet { pname = "runtime.ubuntu.16.04-x64.runtime.native.System.Security.Cryptography.OpenSsl"; version = "4.3.0"; sha256 = "15zrc8fgd8zx28hdghcj5f5i34wf3l6bq5177075m2bc2j34jrqy"; })
+  (fetchNuGet { pname = "runtime.ubuntu.16.10-x64.runtime.native.System.Security.Cryptography.OpenSsl"; version = "4.3.0"; sha256 = "1p4dgxax6p7rlgj4q73k73rslcnz4wdcv8q2flg1s8ygwcm58ld5"; })
+  (fetchNuGet { pname = "runtime.unix.System.Diagnostics.Debug"; version = "4.3.0"; sha256 = "1lps7fbnw34bnh3lm31gs5c0g0dh7548wfmb8zz62v0zqz71msj5"; })
+  (fetchNuGet { pname = "runtime.unix.System.Private.Uri"; version = "4.3.0"; sha256 = "1jx02q6kiwlvfksq1q9qr17fj78y5v6mwsszav4qcz9z25d5g6vk"; })
+  (fetchNuGet { pname = "runtime.unix.System.Runtime.Extensions"; version = "4.3.0"; sha256 = "0pnxxmm8whx38dp6yvwgmh22smknxmqs5n513fc7m4wxvs1bvi4p"; })
+  (fetchNuGet { pname = "SharpGen.Runtime"; version = "2.0.0-beta.13"; sha256 = "1250z6sa9ghf84czlkzvaysb29c0n229z1f0vh5qls89akrkl7h8"; })
+  (fetchNuGet { pname = "SharpGen.Runtime.COM"; version = "2.0.0-beta.13"; sha256 = "1lmv3jp2g7mgy9j23pd3j0wr3p89qiq8v6c6qxqf688izyni1166"; })
+  (fetchNuGet { pname = "SixLabors.ImageSharp"; version = "3.0.1"; sha256 = "12ypfknphk30szsymmn1378vlp4jmlcvsz88flfxyhwgxrir0453"; })
+  (fetchNuGet { pname = "SkiaSharp"; version = "2.88.3"; sha256 = "1yq694myq2rhfp2hwwpyzcg1pzpxcp7j72wib8p9pw9dfj7008sv"; })
+  (fetchNuGet { pname = "SkiaSharp.NativeAssets.Linux"; version = "2.88.3"; sha256 = "0dajvr60nwvnv7s6kcqgw1w97zxdpz1c5lb7kcq7r0hi0l05ck3q"; })
+  (fetchNuGet { pname = "SkiaSharp.NativeAssets.macOS"; version = "2.88.3"; sha256 = "191ajgi6fnfqcvqvkayjsxasiz6l0bv3pps8vv9abbyc4b12qvph"; })
+  (fetchNuGet { pname = "SkiaSharp.NativeAssets.WebAssembly"; version = "2.88.3"; sha256 = "1w5njksq3amrrp7fqxw89nv6ar2kgc5yx092i4rxv7hrjbd1aagx"; })
+  (fetchNuGet { pname = "SkiaSharp.NativeAssets.Win32"; version = "2.88.3"; sha256 = "03wwfbarsxjnk70qhqyd1dw65098dncqk2m0vksx92j70i7lry6q"; })
+  (fetchNuGet { pname = "Splat"; version = "14.4.1"; sha256 = "03ycyjn2ii44npi015p4rk344xnjgdzz02cf63cmhx2ab8hv6p4b"; })
+  (fetchNuGet { pname = "SSH.NET"; version = "2020.0.2"; sha256 = "18mq7jjdbzc7qcsh5wg2j0gd39qbnrxkn811cy8wrdvki0pfi0sm"; })
+  (fetchNuGet { pname = "SshNet.Security.Cryptography"; version = "1.3.0"; sha256 = "1y9r9c2dn81l1l4nn976fwf0by83qbvb0sp1hw7m19pqz7pmaflh"; })
+  (fetchNuGet { pname = "System.CodeDom"; version = "7.0.0"; sha256 = "08a2k2v7kdx8wmzl4xcpfj749yy476ggqsy4cps4iyqqszgyv0zc"; })
+  (fetchNuGet { pname = "System.CodeDom"; version = "8.0.0-preview.6.23329.7"; sha256 = "1wbh229qyhrhcwihpkh99kzcfmn7f13s8l94gbw3hm4d24kqks7b"; })
+  (fetchNuGet { pname = "System.Collections"; version = "4.3.0"; sha256 = "19r4y64dqyrq6k4706dnyhhw7fs24kpp3awak7whzss39dakpxk9"; })
+  (fetchNuGet { pname = "System.Collections.Immutable"; version = "5.0.0"; sha256 = "1kvcllagxz2q92g81zkz81djkn2lid25ayjfgjalncyc68i15p0r"; })
+  (fetchNuGet { pname = "System.ComponentModel.Annotations"; version = "4.5.0"; sha256 = "1jj6f6g87k0iwsgmg3xmnn67a14mq88np0l1ys5zkxhkvbc8976p"; })
+  (fetchNuGet { pname = "System.Configuration.ConfigurationManager"; version = "7.0.0"; sha256 = "149d9kmakzkbw69cip1ny0wjlgcvnhrr7vz5pavpsip36k2mw02a"; })
+  (fetchNuGet { pname = "System.Configuration.ConfigurationManager"; version = "8.0.0-preview.6.23329.7"; sha256 = "1jj4yizbcj54m0qhj18il5b2r2cw4njl5z46v0121qvsxsgllc8k"; })
+  (fetchNuGet { pname = "System.Diagnostics.Debug"; version = "4.3.0"; sha256 = "00yjlf19wjydyr6cfviaph3vsjzg3d5nvnya26i2fvfg53sknh3y"; })
+  (fetchNuGet { pname = "System.Diagnostics.EventLog"; version = "7.0.0"; sha256 = "16p8z975dnzmncfifa9gw9n3k9ycpr2qvz7lglpghsvx0fava8k9"; })
+  (fetchNuGet { pname = "System.Diagnostics.EventLog"; version = "8.0.0-preview.6.23329.7"; sha256 = "0c1m9c6fq4mqxv8mnwzmhpv5321lrgnn3sikis9l2072cm5lzcnm"; })
+  (fetchNuGet { pname = "System.Drawing.Common"; version = "6.0.0"; sha256 = "02n8rzm58dac2np8b3xw8ychbvylja4nh6938l5k2fhyn40imlgz"; })
+  (fetchNuGet { pname = "System.Drawing.Common"; version = "7.0.0"; sha256 = "0jwyv5zjxzr4bm4vhmz394gsxqa02q6pxdqd2hwy1f116f0l30dp"; })
+  (fetchNuGet { pname = "System.Dynamic.Runtime"; version = "4.3.0"; sha256 = "1d951hrvrpndk7insiag80qxjbf2y0y39y8h5hnq9612ws661glk"; })
+  (fetchNuGet { pname = "System.Globalization"; version = "4.3.0"; sha256 = "1cp68vv683n6ic2zqh2s1fn4c2sd87g5hpp6l4d4nj4536jz98ki"; })
+  (fetchNuGet { pname = "System.IO"; version = "4.3.0"; sha256 = "05l9qdrzhm4s5dixmx68kxwif4l99ll5gqmh7rqgw554fx0agv5f"; })
+  (fetchNuGet { pname = "System.IO.Pipelines"; version = "6.0.0"; sha256 = "08211lvckdsdbd67xz4f6cyk76cli565j0dby1grlc4k9bhwby65"; })
+  (fetchNuGet { pname = "System.IO.Ports"; version = "7.0.0"; sha256 = "0nk5r3vair9kvbgcrp8zbc60x2yr464cnm6gjsz6wj1pm5b51gvp"; })
+  (fetchNuGet { pname = "System.IO.Ports"; version = "8.0.0-preview.6.23329.7"; sha256 = "0mc02ngqdbgazg7kw82g68kpbm5f7pdyjbfssjj30281116plyqq"; })
+  (fetchNuGet { pname = "System.Linq"; version = "4.3.0"; sha256 = "1w0gmba695rbr80l1k2h4mrwzbzsyfl2z4klmpbsvsg5pm4a56s7"; })
+  (fetchNuGet { pname = "System.Linq.Expressions"; version = "4.3.0"; sha256 = "0ky2nrcvh70rqq88m9a5yqabsl4fyd17bpr63iy2mbivjs2nyypv"; })
+  (fetchNuGet { pname = "System.Management"; version = "7.0.2"; sha256 = "0mjdkzl459hnz0qg4m0xp2kwizsqgdc9vc3xk7y7cv0znhhbb7bc"; })
+  (fetchNuGet { pname = "System.Management"; version = "8.0.0-preview.6.23329.7"; sha256 = "1f7apr1yq5jpr9alq03g90mj8wg9s30vxd8hp6irnf3pk9sgk5ys"; })
+  (fetchNuGet { pname = "System.Memory"; version = "4.5.4"; sha256 = "14gbbs22mcxwggn0fcfs1b062521azb9fbb7c113x0mq6dzq9h6y"; })
+  (fetchNuGet { pname = "System.Numerics.Vectors"; version = "4.5.0"; sha256 = "1kzrj37yzawf1b19jq0253rcs8hsq1l2q8g69d7ipnhzb0h97m59"; })
+  (fetchNuGet { pname = "System.ObjectModel"; version = "4.3.0"; sha256 = "191p63zy5rpqx7dnrb3h7prvgixmk168fhvvkkvhlazncf8r3nc2"; })
+  (fetchNuGet { pname = "System.Private.Uri"; version = "4.3.0"; sha256 = "04r1lkdnsznin0fj4ya1zikxiqr0h6r6a1ww2dsm60gqhdrf0mvx"; })
+  (fetchNuGet { pname = "System.Reactive"; version = "6.0.0"; sha256 = "1mkvx1fwychpczksy6svfmniqhbm3xqblxqik6178l12xgq7aw45"; })
+  (fetchNuGet { pname = "System.Reflection"; version = "4.3.0"; sha256 = "0xl55k0mw8cd8ra6dxzh974nxif58s3k1rjv1vbd7gjbjr39j11m"; })
+  (fetchNuGet { pname = "System.Reflection.Emit"; version = "4.3.0"; sha256 = "11f8y3qfysfcrscjpjym9msk7lsfxkk4fmz9qq95kn3jd0769f74"; })
+  (fetchNuGet { pname = "System.Reflection.Emit.ILGeneration"; version = "4.3.0"; sha256 = "0w1n67glpv8241vnpz1kl14sy7zlnw414aqwj4hcx5nd86f6994q"; })
+  (fetchNuGet { pname = "System.Reflection.Emit.Lightweight"; version = "4.3.0"; sha256 = "0ql7lcakycrvzgi9kxz1b3lljd990az1x6c4jsiwcacrvimpib5c"; })
+  (fetchNuGet { pname = "System.Reflection.Extensions"; version = "4.3.0"; sha256 = "02bly8bdc98gs22lqsfx9xicblszr2yan7v2mmw3g7hy6miq5hwq"; })
+  (fetchNuGet { pname = "System.Reflection.Metadata"; version = "5.0.0"; sha256 = "17qsl5nanlqk9iz0l5wijdn6ka632fs1m1fvx18dfgswm258r3ss"; })
+  (fetchNuGet { pname = "System.Reflection.Primitives"; version = "4.3.0"; sha256 = "04xqa33bld78yv5r93a8n76shvc8wwcdgr1qvvjh959g3rc31276"; })
+  (fetchNuGet { pname = "System.Reflection.TypeExtensions"; version = "4.3.0"; sha256 = "0y2ssg08d817p0vdag98vn238gyrrynjdj4181hdg780sif3ykp1"; })
+  (fetchNuGet { pname = "System.Resources.ResourceManager"; version = "4.3.0"; sha256 = "0sjqlzsryb0mg4y4xzf35xi523s4is4hz9q4qgdvlvgivl7qxn49"; })
+  (fetchNuGet { pname = "System.Runtime"; version = "4.3.0"; sha256 = "066ixvgbf2c929kgknshcxqj6539ax7b9m570cp8n179cpfkapz7"; })
+  (fetchNuGet { pname = "System.Runtime.CompilerServices.Unsafe"; version = "4.7.1"; sha256 = "119br3pd85lq8zcgh4f60jzmv1g976q1kdgi3hvqdlhfbw6siz2j"; })
+  (fetchNuGet { pname = "System.Runtime.Extensions"; version = "4.3.0"; sha256 = "1ykp3dnhwvm48nap8q23893hagf665k0kn3cbgsqpwzbijdcgc60"; })
+  (fetchNuGet { pname = "System.Runtime.Handles"; version = "4.3.0"; sha256 = "0sw2gfj2xr7sw9qjn0j3l9yw07x73lcs97p8xfc9w1x9h5g5m7i8"; })
+  (fetchNuGet { pname = "System.Runtime.InteropServices"; version = "4.3.0"; sha256 = "00hywrn4g7hva1b2qri2s6rabzwgxnbpw9zfxmz28z09cpwwgh7j"; })
+  (fetchNuGet { pname = "System.Security.Cryptography.ProtectedData"; version = "7.0.0"; sha256 = "15s9s6hsj9bz0nzw41mxbqdjgjd71w2djqbv0aj413gfi9amybk9"; })
+  (fetchNuGet { pname = "System.Security.Cryptography.ProtectedData"; version = "8.0.0-preview.6.23329.7"; sha256 = "1xs1fmz30gr0g5c2m0xy1dx5rlfsfapyj8l6v7a9c312bd02m4id"; })
+  (fetchNuGet { pname = "System.Security.Permissions"; version = "7.0.0"; sha256 = "0wkm6bj4abknzj41ygkziifx8mzhj4bix92wjvj6lihaw1gniq8c"; })
+  (fetchNuGet { pname = "System.Text.Encoding"; version = "4.3.0"; sha256 = "1f04lkir4iladpp51sdgmis9dj4y8v08cka0mbmsy0frc9a4gjqr"; })
+  (fetchNuGet { pname = "System.Text.Encoding.CodePages"; version = "4.5.1"; sha256 = "1z21qyfs6sg76rp68qdx0c9iy57naan89pg7p6i3qpj8kyzn921w"; })
+  (fetchNuGet { pname = "System.Threading"; version = "4.3.0"; sha256 = "0rw9wfamvhayp5zh3j7p1yfmx9b5khbf4q50d8k5rk993rskfd34"; })
+  (fetchNuGet { pname = "System.Threading.Tasks"; version = "4.3.0"; sha256 = "134z3v9abw3a6jsw17xl3f6hqjpak5l682k2vz39spj4kmydg6k7"; })
+  (fetchNuGet { pname = "System.Threading.Tasks.Extensions"; version = "4.5.4"; sha256 = "0y6ncasgfcgnjrhynaf0lwpkpkmv4a07sswwkwbwb5h7riisj153"; })
+  (fetchNuGet { pname = "System.Windows.Extensions"; version = "7.0.0"; sha256 = "11r9f0v7qp365bdpq5ax023yra4qvygljz18dlqs650d44iay669"; })
+  (fetchNuGet { pname = "Tmds.DBus.Protocol"; version = "0.15.0"; sha256 = "0d99kcs7r9cp6gpyc7z230czkkyx4164x86dhy0mca73f2ykc2g2"; })
+  (fetchNuGet { pname = "Vortice.DirectInput"; version = "3.2.0"; sha256 = "0ig60651kvynw6x3f70y3c95n581shr1k75b407p1n9mr8qnzfsy"; })
+  (fetchNuGet { pname = "Vortice.DirectX"; version = "3.2.0"; sha256 = "15wlzag7p8kvrjzjpndaa1pb9acpvylnxz8vb3rx2d3q62k9k2hw"; })
+  (fetchNuGet { pname = "Vortice.Mathematics"; version = "1.5.2"; sha256 = "04s282b07fz1h1d6rw1iiqcsfpj415fin5q5cxmq2bg7a930rfjz"; })
+  (fetchNuGet { pname = "Vortice.XInput"; version = "3.2.0"; sha256 = "00bkrsml45rzy1yvxfrykdgmg9g74ac3a2xb0251205mziwa0m3x"; })
+]
diff --git a/pkgs/by-name/re/retrospy/package.nix b/pkgs/by-name/re/retrospy/package.nix
new file mode 100644
index 000000000000..07ba2d35da36
--- /dev/null
+++ b/pkgs/by-name/re/retrospy/package.nix
@@ -0,0 +1,89 @@
+{ buildDotnetModule
+, fetchFromGitHub
+, dotnetCorePackages
+, copyDesktopItems
+, makeDesktopItem
+, lib
+, fontconfig
+, libX11
+, libXcursor
+, libICE
+, libSM
+, runCommandLocal
+}:
+let
+  version = "6.4.8";
+
+  src = fetchFromGitHub {
+    owner = "retrospy";
+    repo = "RetroSpy";
+    rev = "v${version}";
+    hash = "sha256-0rdLdud78gnBX8CIdG81caJ1IRoIjGzb7coP4huEPDA=";
+  };
+
+  executables = [
+    "RetroSpy"
+    "GBPemu"
+    "GBPUpdater"
+    "UsbUpdater"
+  ];
+
+  retrospy-icons = runCommandLocal "retrospy-icons" { } ''
+    mkdir -p $out/share/retrospy
+    ${builtins.concatStringsSep "\n" (map (e: "cp ${src}/${e}.ico $out/share/retrospy/${e}.ico") executables)}
+  '';
+in
+buildDotnetModule {
+  pname = "retrospy";
+  inherit version;
+
+  inherit src;
+
+  nativeBuildInputs = [
+    copyDesktopItems
+  ];
+
+  runtimeDeps = [
+    fontconfig
+    libX11
+    libICE
+    libXcursor
+    libSM
+  ];
+
+  projectFile = [
+    "RetroSpyX/RetroSpyX.csproj"
+    "GBPemuX/GBPemuX.csproj"
+    "GBPUpdaterX2/GBPUpdaterX2.csproj"
+    "UsbUpdaterX2/UsbUpdaterX2.csproj"
+  ];
+
+  dotnet-sdk = dotnetCorePackages.sdk_7_0;
+  dotnet-runtime = dotnetCorePackages.aspnetcore_7_0;
+
+  nugetDeps = ./deps.nix;
+
+  inherit executables;
+
+  passthru.updateScript = ./update.sh;
+
+  desktopItems = map
+    (e: (makeDesktopItem {
+      name = e;
+      exec = e;
+      icon = "${retrospy-icons}/share/retrospy/${e}.ico";
+      desktopName = "${e}";
+      categories = [ "Utility" ];
+      startupWMClass = e;
+    }))
+    executables;
+
+  meta = {
+    description = "Live controller viewer for Nintendo consoles as well as many other retro consoles and computers";
+    homepage = "https://retro-spy.com/";
+    license = lib.licenses.gpl3;
+    maintainers = [ lib.maintainers.naxdy ];
+    platforms = lib.platforms.linux;
+  };
+}
+
diff --git a/pkgs/by-name/re/retrospy/update.sh b/pkgs/by-name/re/retrospy/update.sh
new file mode 100755
index 000000000000..f3715f9da478
--- /dev/null
+++ b/pkgs/by-name/re/retrospy/update.sh
@@ -0,0 +1,17 @@
+#!/usr/bin/env nix-shell
+#!nix-shell -i bash -p curl jq common-updater-scripts
+# shellcheck shell=bash
+set -euo pipefail
+
+new_version="$(curl -s "https://api.github.com/repos/retrospy/RetroSpy/releases?per_page=1" | jq -r '.[0].tag_name')"
+new_version=${new_version#v}
+old_version=$(nix-instantiate --eval -A retrospy.version | jq -e -r)
+
+if [[ "$new_version" == "$old_version" ]]; then
+    echo "Up to date"
+    exit 0
+fi
+
+update-source-version retrospy "$new_version"
+
+eval "$(nix-build . -A retrospy.fetch-deps --no-out-link)"
diff --git a/pkgs/by-name/rh/rHttp/package.nix b/pkgs/by-name/rh/rHttp/package.nix
new file mode 100644
index 000000000000..bd28007dc361
--- /dev/null
+++ b/pkgs/by-name/rh/rHttp/package.nix
@@ -0,0 +1,27 @@
+{
+  lib,
+  buildGoModule,
+  fetchFromGitHub,
+  ...
+}:
+buildGoModule {
+  pname = "rHttp";
+  version = "unstable-2024-04-28";
+
+  src = fetchFromGitHub {
+    owner = "1buran";
+    repo = "rHttp";
+    rev = "9b7da3a0f7c2e35c9d326e7920ded15f806f8113";
+    sha256 = "1nz3f6zgpbxlwn6c5rqxa8897ygi5r7h7f6624i27rq9kr729cra";
+  };
+
+  vendorHash = "sha256-NR1q44IUSME+x1EOcnXXRoIXw8Av0uH7iXhD+cdd99I=";
+
+  meta = with lib; {
+    description = "Go REPL for HTTP";
+    homepage = "https://github.com/1buran/rHttp";
+    license = licenses.agpl3Plus;
+    maintainers = with maintainers; [ luftmensch-luftmensch ];
+    mainProgram = "rhttp";
+  };
+}
diff --git a/pkgs/by-name/ri/ride/mk.patch b/pkgs/by-name/ri/ride/mk.patch
new file mode 100644
index 000000000000..0a26356b0924
--- /dev/null
+++ b/pkgs/by-name/ri/ride/mk.patch
@@ -0,0 +1,34 @@
+diff --git a/mk b/mk
+index a5baa0f8..37cac28e 100755
+--- a/mk
++++ b/mk
+@@ -25,7 +25,7 @@ const rm = (x) => {
+ };
+ const pj = JSON.parse(rf('package.json'));
+ // v:version string - "x.y.z" where z is the number of commits since the beginning of the project
+-const v = `${pj.version.replace(/\.0$/, '')}.${sh('git rev-list --count HEAD')}`;
++const v = "@version@";
+ const isDyalogBuild = /^dyalog/.test(pj.name);
+ const tasks = { };
+ 
+@@ -36,8 +36,8 @@ const b = (f) => {
+   const vi = {
+     versionInfo: {
+       version: v,
+-      date: sh('git show -s HEAD --pretty=format:%ci'),
+-      rev: sh('git rev-parse HEAD'),
++      date: 'unknown',
++      rev: 'nixpkgs',
+     },
+   };
+   wf('_/version.js', `D=${JSON.stringify(vi)}`);
+@@ -50,6 +50,9 @@ const incl = new RegExp('^$'
+   + '|^/style($|/(fonts|img)|.*\\.css$)');
+ const pkg = (x, y, f) => {
+   rq('electron-packager')({
++    asar: true,
++    electronZipDir: "local-cache",
++    electronVersion: "@electron_version@",
+     dir: '.',
+     platform: x,
+     arch: y,
diff --git a/pkgs/by-name/ri/ride/package.nix b/pkgs/by-name/ri/ride/package.nix
new file mode 100644
index 000000000000..55ad02104ba9
--- /dev/null
+++ b/pkgs/by-name/ri/ride/package.nix
@@ -0,0 +1,152 @@
+{
+  lib,
+  stdenv,
+  buildNpmPackage,
+  fetchFromGitHub,
+  substituteAll,
+  jq,
+  moreutils,
+  zip,
+  makeWrapper,
+  copyDesktopItems,
+  makeDesktopItem,
+  electron_27,
+}:
+
+let
+  platformInfos = {
+    "x86_64-linux" = {
+      zipSuffix = "linux-x64";
+      buildCmd = "linux";
+    };
+    "x86_64-darwin" = {
+      zipSuffix = "darwin-x64";
+      buildCmd = "osx";
+    };
+    "aarch64-darwin" = {
+      zipSuffix = "darwin-arm64";
+      buildCmd = "osxarm";
+    };
+  };
+
+  platformInfo = platformInfos.${stdenv.system};
+
+  # Electron 27 is the latest version that works as of RIDE version 4.5.4097
+  electron = electron_27;
+in
+buildNpmPackage rec {
+  pname = "ride";
+  version = "4.5.4097";
+
+  src = fetchFromGitHub {
+    owner = "Dyalog";
+    repo = "ride";
+    rev = "v${version}";
+    hash = "sha256-xR+HVC1JVrPkgPhIJZxdTVG52+QbanmD1c/uO5l84oc=";
+  };
+
+  npmDepsHash = "sha256-EG3pZkjDGBI2dDaQZ6351+oU4xfHd6HNB8eD7ErpYIg=";
+
+  patches = [
+    # Fix info in the "about" page, set electron version, set local-cache as zipdir
+    (substituteAll {
+      src = ./mk.patch;
+      version = version;
+      electron_version = electron.version;
+    })
+  ];
+
+  postPatch = ''
+    # Remove spectron (it would download electron-chromedriver binaries)
+    ${jq}/bin/jq 'del(.devDependencies.spectron)' package.json | ${moreutils}/bin/sponge package.json
+
+    pushd style
+
+    # Remove non-deterministic glob ordering
+    sed -i "/\*\*/d" layout.less light-theme.less dark-theme.less
+
+    # Individually include all files that were previously globbed
+    shopt -s globstar
+    for file in less/layout/**/*.less; do
+      echo "@import '$file';" >> layout.less
+    done
+    for file in less/colour/**/*.less; do
+      echo "@import '$file';" >> light-theme.less
+      echo "@import '$file';" >> dark-theme.less
+    done
+    shopt -u globstar
+
+    popd
+  '';
+
+  nativeBuildInputs = [
+    zip
+    makeWrapper
+    copyDesktopItems
+  ];
+
+  env.ELECTRON_SKIP_BINARY_DOWNLOAD = "1";
+
+  npmBuildFlags = platformInfo.buildCmd;
+
+  # This package uses electron-packager instead of electron-builder
+  # Here, we create a local cache of electron zip-files, so electron-packager can copy from it
+  postConfigure = ''
+    mkdir local-cache
+    cp -r --no-preserve=all ${electron}/libexec/electron electron
+    pushd electron
+    zip -qr ../local-cache/electron-v${electron.version}-${platformInfo.zipSuffix}.zip *
+    popd
+  '';
+
+  installPhase = ''
+    runHook preInstall
+
+    install -Dm644 D.png $out/share/icons/hicolor/64x64/apps/ride.png
+    install -Dm644 D.svg $out/share/icons/hicolor/scalable/apps/ride.svg
+
+    pushd _/ride*/*
+
+    install -Dm644 ThirdPartyNotices.txt -t $out/share/doc/ride
+
+    mkdir -p $out/share/ride
+    cp -r locales resources{,.pak} $out/share/ride
+    makeWrapper ${lib.getExe electron} $out/bin/ride \
+      --add-flags $out/share/ride/resources/app.asar \
+      --add-flags "\''${NIXOS_OZONE_WL:+\''${WAYLAND_DISPLAY:+--ozone-platform-hint=auto --enable-features=WaylandWindowDecorations}}" \
+      --inherit-argv0
+
+    popd
+
+    runHook postInstall
+  '';
+
+  desktopItems = [
+    (makeDesktopItem {
+      name = "ride";
+      exec = "ride";
+      icon = "ride";
+      desktopName = "RIDE";
+      categories = [
+        "Development"
+        "IDE"
+      ];
+      comment = meta.description;
+      terminal = false;
+    })
+  ];
+
+  meta = {
+    broken = stdenv.isDarwin;
+    changelog = "https://github.com/Dyalog/ride/releases/tag/${src.rev}";
+    description = "Remote IDE for Dyalog APL";
+    homepage = "https://github.com/Dyalog/ride";
+    license = lib.licenses.mit;
+    mainProgram = "ride";
+    maintainers = with lib.maintainers; [
+      tomasajt
+      markus1189
+    ];
+    platforms = lib.attrNames platformInfos;
+  };
+}
diff --git a/pkgs/by-name/ri/ripunzip/package.nix b/pkgs/by-name/ri/ripunzip/package.nix
index 1942b61f5fb8..0af8460c2611 100644
--- a/pkgs/by-name/ri/ripunzip/package.nix
+++ b/pkgs/by-name/ri/ripunzip/package.nix
@@ -12,16 +12,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "ripunzip";
-  version = "1.1.0";
+  version = "1.2.1";
 
   src = fetchFromGitHub {
     owner = "google";
     repo = "ripunzip";
     rev = "v${version}";
-    hash = "sha256-GyP4OPnPKhu9nXYXIfWCVLF/thwWiP0OqAQY/1D05LE=";
+    hash = "sha256-WcqN3Li0UiEhntKlQkGUrkP9N1I3NrjaGzIs9Q5i4y4=";
   };
 
-  cargoHash = "sha256-Jv9bCHT5xl/2CPnSuWd9HZuaGOttBC5iAbbpr3jaIhM=";
+  cargoHash = "sha256-CezigBDU632UVaeFNv+iM2dQQUabKhOP43etp6vjxTg=";
 
   buildInputs = [ openssl ]
     ++ lib.optionals stdenv.isDarwin (with darwin.apple_sdk.frameworks; [ Security SystemConfiguration ]);
diff --git a/pkgs/by-name/ri/river-bnf/package.nix b/pkgs/by-name/ri/river-bnf/package.nix
index f869a6e2ff0c..bae48c268483 100644
--- a/pkgs/by-name/ri/river-bnf/package.nix
+++ b/pkgs/by-name/ri/river-bnf/package.nix
@@ -8,7 +8,7 @@
 
 stdenv.mkDerivation rec {
   pname = "river-bnf";
-  version = "unstable-2023-10-10";
+  version = "0-unstable-2023-10-10";
 
   src = fetchFromSourcehut {
     owner = "~leon_plickat";
diff --git a/pkgs/by-name/rm/rmenu/package.nix b/pkgs/by-name/rm/rmenu/package.nix
index a7a11f750540..f5abbc9dd65a 100644
--- a/pkgs/by-name/rm/rmenu/package.nix
+++ b/pkgs/by-name/rm/rmenu/package.nix
@@ -7,7 +7,7 @@
 , pkg-config
 , rustPlatform
 , webkitgtk_4_1
-, wrapGAppsHook
+, wrapGAppsHook3
 }:
 rustPlatform.buildRustPackage rec {
   pname = "rmenu";
@@ -22,7 +22,7 @@ rustPlatform.buildRustPackage rec {
 
   nativeBuildInputs = [
     pkg-config
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
diff --git a/pkgs/servers/rmfakecloud/default.nix b/pkgs/by-name/rm/rmfakecloud/package.nix
index 44d7b02d721d..44d7b02d721d 100644
--- a/pkgs/servers/rmfakecloud/default.nix
+++ b/pkgs/by-name/rm/rmfakecloud/package.nix
diff --git a/pkgs/servers/rmfakecloud/webui.nix b/pkgs/by-name/rm/rmfakecloud/webui.nix
index 98c4822a90b3..98c4822a90b3 100644
--- a/pkgs/servers/rmfakecloud/webui.nix
+++ b/pkgs/by-name/rm/rmfakecloud/webui.nix
diff --git a/pkgs/by-name/rm/rmg/package.nix b/pkgs/by-name/rm/rmg/package.nix
index 50436f36b928..4c2643346a44 100644
--- a/pkgs/by-name/rm/rmg/package.nix
+++ b/pkgs/by-name/rm/rmg/package.nix
@@ -20,12 +20,13 @@
 , which
 , xdg-user-dirs
 , zlib
+, withWayland ? false
 # Affects final license
 , withAngrylionRdpPlus ? false
 }:
 
 let
-  inherit (qt6Packages) qtbase qtsvg wrapQtAppsHook;
+  inherit (qt6Packages) qtbase qtsvg qtwayland wrapQtAppsHook;
 in
 stdenv.mkDerivation rec {
   pname = "rmg";
@@ -72,7 +73,7 @@ stdenv.mkDerivation rec {
     vulkan-loader
     xdg-user-dirs
     zlib
-  ];
+  ] ++ lib.optional withWayland qtwayland;
 
   cmakeFlags = [
     "-DPORTABLE_INSTALL=OFF"
@@ -84,7 +85,7 @@ stdenv.mkDerivation rec {
 
   qtWrapperArgs = lib.optionals stdenv.isLinux [
     "--prefix LD_LIBRARY_PATH : ${lib.makeLibraryPath [ vulkan-loader ]}"
-  ];
+  ] ++ lib.optional withWayland "--set RMG_WAYLAND 1";
 
   meta = with lib; {
     homepage = "https://github.com/Rosalie241/RMG";
diff --git a/pkgs/by-name/ro/rofimoji/package.nix b/pkgs/by-name/ro/rofimoji/package.nix
index 56730c975fd7..c694f88dd190 100644
--- a/pkgs/by-name/ro/rofimoji/package.nix
+++ b/pkgs/by-name/ro/rofimoji/package.nix
@@ -15,14 +15,14 @@
 
 python3Packages.buildPythonApplication rec {
   pname = "rofimoji";
-  version = "6.2.0";
+  version = "6.3.1";
   pyproject = true;
 
   src = fetchFromGitHub {
     owner = "fdw";
     repo = "rofimoji";
-    rev = version;
-    hash = "sha256-9P9hXBEfq6sqCvb2SfPBNadEoXAdWF3cmcKGEOK+EHE=";
+    rev = "refs/tags/${version}";
+    hash = "sha256-gYLUUbT6OHMo2nzJ//Pa0vZ9WPcHs6YnAjTKNO07VNk=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/by-name/ro/rosa/package.nix b/pkgs/by-name/ro/rosa/package.nix
index c50ca87e821b..b9156afa9df8 100644
--- a/pkgs/by-name/ro/rosa/package.nix
+++ b/pkgs/by-name/ro/rosa/package.nix
@@ -2,13 +2,13 @@
 
 buildGoModule rec {
   pname = "rosa";
-  version = "1.2.36";
+  version = "1.2.38";
 
   src = fetchFromGitHub {
     owner = "openshift";
     repo = "rosa";
     rev = "v${version}";
-    hash = "sha256-jdLMQLbk446QJ+8+HjTCTjtlCuLlZZsLUBInRg4UMH0=";
+    hash = "sha256-eS9mK5iK/fXWMpgA/RF7wYybcJtPDW/pIWo9Iw0I+K8=";
   };
   vendorHash = null;
 
@@ -16,6 +16,18 @@ buildGoModule rec {
 
   __darwinAllowLocalNetworking = true;
 
+  postPatch = ''
+    # e2e tests require network access
+    rm -r tests/e2e
+  '';
+
+  preCheck = ''
+    # Workaround for cmd/list/rhRegion/cmd_test.go:39
+    #   Failed to get OCM regions: Can't retrieve shards: Get "https://api.stage.openshift.com/static/ocm-shards.json": dial tcp: lookup api.stage.openshift.com on [::1]:53: read udp [::1]:55793->[::1]:53: read: connection refused
+    substituteInPlace "cmd/list/rhRegion/cmd_test.go" \
+      --replace-fail "TestRhRegionCommand" "SkipRhRegionCommand"
+  '';
+
   nativeBuildInputs = [ installShellFiles ];
   postInstall = ''
     installShellCompletion --cmd rosa \
diff --git a/pkgs/by-name/ro/roxterm/package.nix b/pkgs/by-name/ro/roxterm/package.nix
index 8b4f2e79c2be..bf4d5ec49996 100644
--- a/pkgs/by-name/ro/roxterm/package.nix
+++ b/pkgs/by-name/ro/roxterm/package.nix
@@ -25,7 +25,7 @@
 , stdenv
 , util-linuxMinimal
 , vte
-, wrapGAppsHook
+, wrapGAppsHook3
 , xmlto
 }:
 
@@ -44,7 +44,7 @@ stdenv.mkDerivation (finalAttrs: {
     cmake
     libxslt
     pkg-config
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
diff --git a/pkgs/by-name/rp/rpcs3/package.nix b/pkgs/by-name/rp/rpcs3/package.nix
index a9e4fbb5713f..ef9b5965aff7 100644
--- a/pkgs/by-name/rp/rpcs3/package.nix
+++ b/pkgs/by-name/rp/rpcs3/package.nix
@@ -32,10 +32,10 @@
 
 let
   # Keep these separate so the update script can regex them
-  rpcs3GitVersion = "16377-08c3a38b6";
-  rpcs3Version = "0.0.31-16377-08c3a38b6";
-  rpcs3Revision = "08c3a38b6788d9cd4f0bb7310c22a7fd05dc3ba2";
-  rpcs3Hash = "sha256-GOKbznr1X+5nunbjfL9TZ9it/IPvV5mnpc0cbuGHDHw=";
+  rpcs3GitVersion = "16391-39e946630";
+  rpcs3Version = "0.0.31-16391-39e946630";
+  rpcs3Revision = "39e946630da8e23c4d2d2b763f63145eb9205e43";
+  rpcs3Hash = "sha256-CIPUmcpBc6iRMzZJZ5vKty/Uh4TYiR65xXD4aKRPSKc=";
 
   inherit (qt6Packages) qtbase qtmultimedia wrapQtAppsHook qtwayland;
 in
diff --git a/pkgs/by-name/rw/rwpspread/package.nix b/pkgs/by-name/rw/rwpspread/package.nix
index 347835506dd1..954bdd4092d1 100644
--- a/pkgs/by-name/rw/rwpspread/package.nix
+++ b/pkgs/by-name/rw/rwpspread/package.nix
@@ -8,15 +8,15 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "rwpspread";
-  version = "0.2.5";
+  version = "0.3.0";
 
   src = fetchFromGitHub {
     owner = "0xk1f0";
     repo = "rwpspread";
     rev = "v${version}";
-    hash = "sha256-kISC3fYtwgjNRWCFniIzNaaNLnvlFL+y5J14PdcZ7fQ=";
+    hash = "sha256-B8K8/M5cUSchG54ar0ZY2XOH6lYLimdZr+dk5ffdplY=";
   };
-  cargoHash = "sha256-2SjgY9YIHOUXL0+Njkh/peXUWJGlyI0fW8DVvdJXWV8=";
+  cargoHash = "sha256-bTCXgaE8+nxuEFeOMSihL3lfmbIxiv1f400rmyV2b8k=";
 
   nativeBuildInputs = [ pkg-config ];
 
diff --git a/pkgs/by-name/ry/ryujinx/deps.nix b/pkgs/by-name/ry/ryujinx/deps.nix
index d01214484098..393c492d21f5 100644
--- a/pkgs/by-name/ry/ryujinx/deps.nix
+++ b/pkgs/by-name/ry/ryujinx/deps.nix
@@ -151,7 +151,7 @@
   (fetchNuGet { pname = "Silk.NET.Vulkan.Extensions.EXT"; version = "2.16.0"; sha256 = "05918f6fl8byla2m7qjp7dvxww2rbpj2sqd4xq26rl885fmddfvf"; })
   (fetchNuGet { pname = "Silk.NET.Vulkan.Extensions.KHR"; version = "2.16.0"; sha256 = "1j4wsv7kjgjkmf2vlm5jjnqkdh265rkz5s1hx42i0f4bmdaz2kj1"; })
   (fetchNuGet { pname = "SixLabors.Fonts"; version = "1.0.0"; sha256 = "1lsc789fqsnh3jx5w0g5k2n1wlww58zyzrcf5rs3wx2fjrqi084k"; })
-  (fetchNuGet { pname = "SixLabors.ImageSharp"; version = "2.1.7"; sha256 = "07rd8vbd23ynhpz4y81b8fqnbn5q5q7rvcdwcky3nzngdg3vgw08"; })
+  (fetchNuGet { pname = "SixLabors.ImageSharp"; version = "2.1.8"; sha256 = "049k8zf9acqncfdbdc7875fvndk2089mwlm5igam88vwc5i5vh75"; })
   (fetchNuGet { pname = "SixLabors.ImageSharp.Drawing"; version = "1.0.0"; sha256 = "0gh6xzw0jhjxf2slky11sdj0s8mp5dmps5k0rlx4krm68xb98zr0"; })
   (fetchNuGet { pname = "SkiaSharp"; version = "2.88.3"; sha256 = "1yq694myq2rhfp2hwwpyzcg1pzpxcp7j72wib8p9pw9dfj7008sv"; })
   (fetchNuGet { pname = "SkiaSharp"; version = "2.88.6"; sha256 = "0xs11zjw9ha68maw3l825kfwlrid43qwy0mswljxhpjh0y1k6k6b"; })
diff --git a/pkgs/by-name/ry/ryujinx/package.nix b/pkgs/by-name/ry/ryujinx/package.nix
index a32f86e2399b..4740e943a524 100644
--- a/pkgs/by-name/ry/ryujinx/package.nix
+++ b/pkgs/by-name/ry/ryujinx/package.nix
@@ -26,13 +26,13 @@
 
 buildDotnetModule rec {
   pname = "ryujinx";
-  version = "1.1.1281"; # Based off of the official github actions builds: https://github.com/Ryujinx/Ryujinx/actions/workflows/release.yml
+  version = "1.1.1298"; # Based off of the official github actions builds: https://github.com/Ryujinx/Ryujinx/actions/workflows/release.yml
 
   src = fetchFromGitHub {
     owner = "Ryujinx";
     repo = "Ryujinx";
-    rev = "8884d1fd732c9ba788f0ab711e6a9f507d934ac8";
-    sha256 = "0g4x10whiybckvx8hhpdrpa8mbypwmpq1av6cjk53zc7iwkhvigw";
+    rev = "a23d8cb92f3f1bb8dc144f4d9fb3fddee749feae";
+    sha256 = "1vf4xwn1z7bfm7c49r2yydx3dqqzqwp0qgzq12m9yskqsj898d63";
   };
 
   dotnet-sdk = dotnetCorePackages.sdk_8_0;
diff --git a/pkgs/tools/system/s0ix-selftest-tool/default.nix b/pkgs/by-name/s0/s0ix-selftest-tool/package.nix
index 535a68f6ff75..89b5c104aa98 100644
--- a/pkgs/tools/system/s0ix-selftest-tool/default.nix
+++ b/pkgs/by-name/s0/s0ix-selftest-tool/package.nix
@@ -1,6 +1,5 @@
 {
   acpica-tools,
-  bash,
   bc,
   coreutils,
   fetchFromGitHub,
@@ -11,71 +10,65 @@
   lib,
   pciutils,
   powertop,
-  resholve,
+  makeWrapper,
+  stdenv,
+  unstableGitUpdater,
   util-linux,
   xorg,
   xxd,
 }:
-resholve.mkDerivation {
+
+let
+  deps = [
+    acpica-tools
+    bc
+    coreutils
+    gawk
+    gnugrep
+    gnused
+    linuxPackages.turbostat
+    pciutils
+    powertop
+    util-linux
+    xorg.xset
+    xxd
+  ];
+in
+stdenv.mkDerivation {
   pname = "s0ix-selftest-tool";
-  version = "unstable-2022-11-04";
+  version = "0-unstable-2024-02-07";
 
   src = fetchFromGitHub {
     owner = "intel";
     repo = "S0ixSelftestTool";
-    rev = "1b6db3c3470a3a74b052cb728a544199661d18ec";
-    hash = "sha256-w97jfdppW8kC8K8XvBntmkfntIctXDQCWmvug+H1hKA=";
+    rev = "c12ae3ea611812547e09bb755dd015dd969b664c";
+    hash = "sha256-9O72TxlLrkQbt80izWdbLQt9OW/4Aq1p4RuQoD2yQ5E=";
   };
 
   # don't use the bundled turbostat binary
   postPatch = ''
     substituteInPlace s0ix-selftest-tool.sh --replace '"$DIR"/turbostat' 'turbostat'
-    substituteInPlace s0ix-selftest-tool.sh --replace 'sudo ' ""
-
   '';
 
+  nativeBuildInputs = [ makeWrapper ];
   dontConfigure = true;
   dontBuild = true;
 
   installPhase = ''
     runHook preInstall
     install -Dm555 s0ix-selftest-tool.sh "$out/bin/s0ix-selftest-tool"
+    wrapProgram "$out/bin/s0ix-selftest-tool" --prefix PATH : ${lib.escapeShellArg deps}
     runHook postInstall
   '';
 
-  solutions = {
-    default = {
-      scripts = ["bin/s0ix-selftest-tool"];
-      interpreter = lib.getExe bash;
-      inputs = [
-        acpica-tools
-        bc
-        coreutils
-        gawk
-        gnugrep
-        gnused
-        linuxPackages.turbostat
-        pciutils
-        powertop
-        util-linux
-        xorg.xset
-        xxd
-      ];
-      execer = [
-        "cannot:${util-linux}/bin/dmesg"
-        "cannot:${powertop}/bin/powertop"
-        "cannot:${util-linux}/bin/rtcwake"
-        "cannot:${linuxPackages.turbostat}/bin/turbostat"
-      ];
-    };
-  };
+  passthru.updateScript = unstableGitUpdater { };
 
   meta = with lib; {
     homepage = "https://github.com/intel/S0ixSelftestTool";
     description = "A tool for testing the S2idle path CPU Package C-state and S0ix failures";
     license = licenses.gpl2Only;
     platforms = platforms.linux;
-    maintainers = with maintainers; [adamcstephens];
+    maintainers = with maintainers; [ adamcstephens ];
     mainProgram = "s0ix-selftest-tool";
   };
 }
diff --git a/pkgs/by-name/sa/sabnzbd/package.nix b/pkgs/by-name/sa/sabnzbd/package.nix
index 9bcfe9b0ec4f..99a8e66514f6 100644
--- a/pkgs/by-name/sa/sabnzbd/package.nix
+++ b/pkgs/by-name/sa/sabnzbd/package.nix
@@ -48,14 +48,14 @@ let
   ]);
   path = lib.makeBinPath [ coreutils par2cmdline-turbo unrar unzip p7zip util-linux ];
 in stdenv.mkDerivation rec {
-  version = "4.3.0";
+  version = "4.3.1";
   pname = "sabnzbd";
 
   src = fetchFromGitHub {
     owner = pname;
     repo = pname;
     rev = version;
-    sha256 = "sha256-2zRhDFKbWq4JA7XE5/VFbfkN2ZQcqcuqGD5kjHmeXUA=";
+    sha256 = "sha256-OlACGAYP4nMZZAVJduzj0AGTzSwM+lE7+H2xgmQVSWg=";
   };
 
   nativeBuildInputs = [ makeWrapper ];
diff --git a/pkgs/by-name/sa/samrewritten/package.nix b/pkgs/by-name/sa/samrewritten/package.nix
index f90c31395f73..1cbaf4b79db8 100644
--- a/pkgs/by-name/sa/samrewritten/package.nix
+++ b/pkgs/by-name/sa/samrewritten/package.nix
@@ -11,7 +11,7 @@
 }:
 stdenv.mkDerivation (finalAttrs: {
   pname = "samrewritten";
-  version = "unstable-2023-05-23";
+  version = "202008-unstable-2023-05-22";
 
   src = fetchFromGitHub {
     owner = "PaulCombal";
diff --git a/pkgs/by-name/sa/sarasa-gothic/package.nix b/pkgs/by-name/sa/sarasa-gothic/package.nix
index ef900d6d476a..9c77d1070ee6 100644
--- a/pkgs/by-name/sa/sarasa-gothic/package.nix
+++ b/pkgs/by-name/sa/sarasa-gothic/package.nix
@@ -7,13 +7,13 @@
 
 stdenvNoCC.mkDerivation (finalAttrs: {
   pname = "sarasa-gothic";
-  version = "1.0.10";
+  version = "1.0.12";
 
   src = fetchurl {
     # Use the 'ttc' files here for a smaller closure size.
     # (Using 'ttf' files gives a closure size about 15x larger, as of November 2021.)
     url = "https://github.com/be5invis/Sarasa-Gothic/releases/download/v${finalAttrs.version}/Sarasa-TTC-${finalAttrs.version}.zip";
-    hash = "sha256-P7A788hlyfb3bQsltMvGlbMn67643h6/ijEQP0yjIaU=";
+    hash = "sha256-icZT/CEvCCbDTklcca3LjtX7wnvx35wg4RyK1jHDmwk=";
   };
 
   sourceRoot = ".";
diff --git a/pkgs/by-name/sa/sarif-tools/package.nix b/pkgs/by-name/sa/sarif-tools/package.nix
new file mode 100644
index 000000000000..881c2604eef9
--- /dev/null
+++ b/pkgs/by-name/sa/sarif-tools/package.nix
@@ -0,0 +1,4 @@
+{ python3Packages }:
+
+with python3Packages;
+toPythonApplication sarif-tools
diff --git a/pkgs/by-name/sa/satellite/package.nix b/pkgs/by-name/sa/satellite/package.nix
index ad3afe454b65..70b7f84c1290 100644
--- a/pkgs/by-name/sa/satellite/package.nix
+++ b/pkgs/by-name/sa/satellite/package.nix
@@ -5,7 +5,7 @@
 , gtk3
 , libhandy
 , modemmanager
-, wrapGAppsHook
+, wrapGAppsHook3
 }:
 
 python3.pkgs.buildPythonApplication rec {
@@ -25,7 +25,7 @@ python3.pkgs.buildPythonApplication rec {
   nativeBuildInputs = [
     gobject-introspection
     python3.pkgs.setuptools
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
diff --git a/pkgs/by-name/sb/sbom-utility/package.nix b/pkgs/by-name/sb/sbom-utility/package.nix
index 213dc94cff57..0b3b9ffba21f 100644
--- a/pkgs/by-name/sb/sbom-utility/package.nix
+++ b/pkgs/by-name/sb/sbom-utility/package.nix
@@ -6,16 +6,16 @@
 
 buildGoModule rec {
   pname = "sbom-utility";
-  version = "0.15.0";
+  version = "0.16.0";
 
   src = fetchFromGitHub {
     owner = "CycloneDX";
     repo = "sbom-utility";
     rev = "refs/tags/v${version}";
-    hash = "sha256-tNLMrtJj1eeJ4sVhDRR24/KVI1HzZSRquiImuDTNZFI=";
+    hash = "sha256-EqK2TGlv2RGfvR95lzYz3EHJkfq4q4Ty5H2zFdd9cME=";
   };
 
-  vendorHash = "sha256-EdzI5ypwZRksQVmcfGDUgEMa4CeAPcm237ZaKqmWQDY=";
+  vendorHash = "sha256-qh8kIwgrlmHkocM5ZoGnOY7ISJlct/TV7dAxvXlPw68=";
 
   preCheck = ''
     cd test
diff --git a/pkgs/development/tools/misc/scc/default.nix b/pkgs/by-name/sc/scc/package.nix
index 63ef5ed345a7..5895b2f0b455 100644
--- a/pkgs/development/tools/misc/scc/default.nix
+++ b/pkgs/by-name/sc/scc/package.nix
@@ -1,14 +1,17 @@
-{ lib, buildGoModule, fetchFromGitHub }:
-
+{
+  lib,
+  buildGoModule,
+  fetchFromGitHub,
+}:
 buildGoModule rec {
   pname = "scc";
-  version = "3.2.0";
+  version = "3.3.3";
 
   src = fetchFromGitHub {
     owner = "boyter";
     repo = "scc";
     rev = "v${version}";
-    hash = "sha256-ZQIOV7TznaIrgSUgc5Pyc4sz2d5MFO+RgczQq3gZevk=";
+    hash = "sha256-YbTPRUxkSKYZwOSK7XFr6wHqACp0rkFyzQCMcAFlZ7Y=";
   };
 
   vendorHash = null;
@@ -19,7 +22,14 @@ buildGoModule rec {
   meta = with lib; {
     homepage = "https://github.com/boyter/scc";
     description = "A very fast accurate code counter with complexity calculations and COCOMO estimates written in pure Go";
-    maintainers = with maintainers; [ sigma Br1ght0ne ];
-    license = with licenses; [ unlicense /* or */ mit ];
+    maintainers = with maintainers; [
+      sigma
+      Br1ght0ne
+    ];
+    license = with licenses; [
+      unlicense
+      # or
+      mit
+    ];
   };
 }
diff --git a/pkgs/by-name/sc/scion/package.nix b/pkgs/by-name/sc/scion/package.nix
index 67321aaa01ff..9044dc44f2a5 100644
--- a/pkgs/by-name/sc/scion/package.nix
+++ b/pkgs/by-name/sc/scion/package.nix
@@ -5,19 +5,7 @@
 , nixosTests
 }:
 let
-  version = "0.10.0";
-
-  # Injects a `t.Skip()` into a given test since there's apparently no other way to skip tests here.
-  # ref: https://github.com/NixOS/nixpkgs/blob/047bc33866bf7004d0ce9ed0af78dab5ceddaab0/pkgs/by-name/vi/vikunja/package.nix#L96
-  skipTest = lineOffset: testCase: file:
-    let
-      jumpAndAppend = lib.concatStringsSep ";" (lib.replicate (lineOffset - 1) "n" ++ [ "a" ]);
-    in
-    ''
-      sed -i -e '/${testCase}/{
-      ${jumpAndAppend} t.Skip();
-      }' ${file}
-    '';
+  version = "0.11.0";
 in
 
 buildGoModule {
@@ -29,20 +17,13 @@ buildGoModule {
     owner = "scionproto";
     repo = "scion";
     rev = "v${version}";
-    hash = "sha256-8yXjEDo1k0+7O0gx2acAZMrG/r+iePfNCG+FolCSKwI=";
+    hash = "sha256-JemqSr1XBwW1hLuWQrApY/hqLj/VpW3xSJedVIoFSiY=";
   };
 
-  vendorHash = "sha256-4nTp6vOyS7qDn8HmNO0NGCNU7wCb8ww8a15Yv3MPEq8=";
+  vendorHash = "sha256-akFbHgo8xI2/4aQsyutjhXPM5d0A3se3kG/6Ebw1Qcs=";
 
   excludedPackages = [ "acceptance" "demo" "tools" "pkg/private/xtest/graphupdater" ];
 
-  # This can be removed in the next release of scion since its fixed upstream
-  # https://github.com/scionproto/scion/pull/4476
-  postConfigure = ''
-    # This test needs docker, so lets skip it
-    ${skipTest 1 "TestOpensslCompatible" "scion-pki/trcs/sign_test.go"}
-  '';
-
   postInstall = ''
     set +e
     mv $out/bin/gateway $out/bin/scion-ip-gateway
@@ -55,13 +36,6 @@ buildGoModule {
 
   doCheck = true;
 
-  patches = [
-    (fetchpatch2 {
-      url = "https://github.com/scionproto/scion/commit/cb7fa6d6aab55c9eb90556c2b996b87539f8aa02.patch";
-      hash = "sha256-mMGJMPB6T7KeDXjEXffdrhzyKwaFmhuisK6PjHOJIdU=";
-    })
-  ];
-
   passthru.tests = {
     inherit (nixosTests) scion-freestanding-deployment;
   };
diff --git a/pkgs/by-name/sc/screenly-cli/package.nix b/pkgs/by-name/sc/screenly-cli/package.nix
index b2f0cf70ccf7..360e1d2abb92 100644
--- a/pkgs/by-name/sc/screenly-cli/package.nix
+++ b/pkgs/by-name/sc/screenly-cli/package.nix
@@ -11,16 +11,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "screenly-cli";
-  version = "0.2.5";
+  version = "0.2.6";
 
   src = fetchFromGitHub {
     owner = "screenly";
     repo = "cli";
     rev = "refs/tags/v${version}";
-    hash = "sha256-lRvJuoGxuKeijdFkJp6Gm+zXAhomYdSKCt8ng0cPjZg=";
+    hash = "sha256-JHGtF6xwAiSZg8Z3F7RvimoMsrPhmKEgqCInBnU5VtE=";
   };
 
-  cargoHash = "sha256-7hgm5i3Wr0qX+l3OihlxgBz6UO975bfC9mMXsYJ9Qhw=";
+  cargoHash = "sha256-YaxOoHIuoxiB5VJ9Cd1l4EnSN7OL1c9GDZlraDXxM6I=";
 
   nativeBuildInputs = [
     pkg-config
diff --git a/pkgs/by-name/sd/SDL2_mixer/package.nix b/pkgs/by-name/sd/SDL2_mixer/package.nix
new file mode 100644
index 000000000000..c271614d8f5f
--- /dev/null
+++ b/pkgs/by-name/sd/SDL2_mixer/package.nix
@@ -0,0 +1,82 @@
+{
+  lib,
+  SDL2,
+  darwin,
+  fetchFromGitHub,
+  flac,
+  fluidsynth,
+  libmodplug,
+  libogg,
+  libvorbis,
+  mpg123,
+  opusfile,
+  pkg-config,
+  smpeg2,
+  stdenv,
+  timidity,
+}:
+
+let
+  inherit (darwin.apple_sdk.frameworks) CoreServices AudioUnit AudioToolbox;
+in
+stdenv.mkDerivation (finalAttrs: {
+  pname = "SDL2_mixer";
+  version = "2.8.0";
+
+  src = fetchFromGitHub {
+    owner = "libsdl-org";
+    repo = "SDL_mixer";
+    rev = "release-${finalAttrs.version}";
+    hash = "sha256-jLKawxnwP5dJglUhgHfWgmKh27i32Rr4LcJQdpXasco=";
+  };
+
+  nativeBuildInputs = [
+    SDL2
+    pkg-config
+  ];
+
+  buildInputs = lib.optionals stdenv.isDarwin [
+    AudioToolbox
+    AudioUnit
+    CoreServices
+  ];
+
+  propagatedBuildInputs = [
+    SDL2
+    flac
+    fluidsynth
+    libmodplug
+    libogg
+    libvorbis
+    mpg123
+    opusfile
+    smpeg2
+    # MIDI patterns
+    timidity
+  ];
+
+  outputs = [ "out" "dev" ];
+
+  strictDeps = true;
+
+  configureFlags = [
+   (lib.enableFeature false "music-ogg-shared")
+   (lib.enableFeature false "music-flac-shared")
+   (lib.enableFeature false "music-mod-modplug-shared")
+   (lib.enableFeature false "music-mp3-mpg123-shared")
+   (lib.enableFeature false "music-opus-shared")
+   (lib.enableFeature false "music-midi-fluidsynth-shared")
+   (lib.enableFeature (!stdenv.isDarwin) "sdltest")
+   (lib.enableFeature (!stdenv.isDarwin) "smpegtest")
+   # override default path to allow MIDI files to be played
+   (lib.withFeatureAs true "timidity-cfg" "${timidity}/share/timidity/timidity.cfg")
+  ];
+
+  meta = {
+    homepage = "https://github.com/libsdl-org/SDL_mixer";
+    description = "SDL multi-channel audio mixer library";
+    license = lib.licenses.zlib;
+    maintainers = with lib.maintainers; [ AndersonTorres ];
+    platforms = lib.platforms.unix;
+  };
+})
diff --git a/pkgs/development/libraries/SDL2_mixer/SDL_mixer-2.0-incompatible-pointer-comparison-fix.patch b/pkgs/by-name/sd/SDL2_mixer_2_0/SDL_mixer-2.0-incompatible-pointer-comparison-fix.patch
index 76fff3fa63e2..76fff3fa63e2 100644
--- a/pkgs/development/libraries/SDL2_mixer/SDL_mixer-2.0-incompatible-pointer-comparison-fix.patch
+++ b/pkgs/by-name/sd/SDL2_mixer_2_0/SDL_mixer-2.0-incompatible-pointer-comparison-fix.patch
diff --git a/pkgs/by-name/sd/SDL2_mixer_2_0/package.nix b/pkgs/by-name/sd/SDL2_mixer_2_0/package.nix
new file mode 100644
index 000000000000..9413b8dda96e
--- /dev/null
+++ b/pkgs/by-name/sd/SDL2_mixer_2_0/package.nix
@@ -0,0 +1,40 @@
+# SDL2_mixer_2_0 pinned for lzwolf
+{
+  SDL2_mixer,
+  fetchFromGitHub,
+  fetchpatch,
+  lzwolf,
+  timidity,
+}:
+
+let
+  attrset = {
+    version = "2.0.4";
+
+    src = fetchFromGitHub {
+      owner = "libsdl-org";
+      repo = "SDL_mixer";
+      rev = "release-${attrset.version}";
+      hash = "sha256-vo9twUGeK2emDiGd9kSGuA/X8TxVmQrRFFm71zawWYM=";
+    };
+
+    patches = [
+      # These patches fix incompatible function pointer conversion errors with clang 16.
+      (fetchpatch {
+        url = "https://github.com/libsdl-org/SDL_mixer/commit/4119ec3fe838d38d2433f4432cd18926bda5d093.patch";
+        stripLen = 2;
+        hash = "sha256-Ug1EEZIRcV8+e1MeMsGHuTW7Zn6j4szqujP8IkIq2VM=";
+      })
+      # Based on https://github.com/libsdl-org/SDL_mixer/commit/64ab759111ddb1b033bcce64e1a04e0cba6e498f
+      ./SDL_mixer-2.0-incompatible-pointer-comparison-fix.patch
+    ];
+
+    # fix default path to timidity.cfg so MIDI files could be played
+    postPatch = ''
+      substituteInPlace timidity/options.h \
+        --replace "/usr/share/timidity" "${timidity}/share/timidity"
+    '';
+
+    passthru.tests.lzwolf = lzwolf;
+  };
+in SDL2_mixer.overrideAttrs(_: attrset)
diff --git a/pkgs/by-name/se/seabird/package.nix b/pkgs/by-name/se/seabird/package.nix
index 2727b040674c..6aae87efa83f 100644
--- a/pkgs/by-name/se/seabird/package.nix
+++ b/pkgs/by-name/se/seabird/package.nix
@@ -14,16 +14,16 @@
 
 buildGo122Module rec {
   pname = "seabird";
-  version = "0.2.2";
+  version = "0.3.2";
 
   src = fetchFromGitHub {
     owner = "getseabird";
     repo = "seabird";
     rev = "v${version}";
-    hash = "sha256-wrZLWDTgcUS8snCqc5rInqitAkrsStL8zmc8vjl4ApQ=";
+    hash = "sha256-MZEgzTwaBNXLimSj/vXR624DCJ7i2W5lYUdVxqvFii0=";
   };
 
-  vendorHash = "sha256-z9l6g5NkAErRQo8oiqwKG9ssm8K2S+eSZBD0w4kO3kc=";
+  vendorHash = "sha256-g7qKI78VeDUu8yafrk2llCIirW/1uxfx6urVLRexsPE=";
 
   nativeBuildInputs = [
     copyDesktopItems
diff --git a/pkgs/by-name/se/sendme/package.nix b/pkgs/by-name/se/sendme/package.nix
index e73983bb0078..08b7c8d232b1 100644
--- a/pkgs/by-name/se/sendme/package.nix
+++ b/pkgs/by-name/se/sendme/package.nix
@@ -7,16 +7,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "sendme";
-  version = "0.6.0";
+  version = "0.7.0";
 
   src = fetchFromGitHub {
     owner = "n0-computer";
     repo = pname;
     rev = "v${version}";
-    hash = "sha256-zUI9o3UWufl8NadwMeWsnoSuW8++tFw8NvzA6OdlkMI=";
+    hash = "sha256-x4RN/C/XMvpfsbWJTX5wDj1K+ADz2YIb/esAIEpFVcs=";
   };
 
-  cargoHash = "sha256-NuPBoMSB4Dr26O9IspFLPBzoUJljDjGZCXRyUIxa3IU=";
+  cargoHash = "sha256-yeexP6wfhg2Ir1oJzaxMwRMen9M409MB4cNZ8fd6cHc=";
 
   buildInputs = lib.optionals stdenv.isDarwin (
     with darwin.apple_sdk.frameworks; [
diff --git a/pkgs/by-name/se/sesh/package.nix b/pkgs/by-name/se/sesh/package.nix
index 88bb8c54f8dd..80bfac6348f5 100644
--- a/pkgs/by-name/se/sesh/package.nix
+++ b/pkgs/by-name/se/sesh/package.nix
@@ -5,13 +5,13 @@
 }:
 buildGoModule rec {
   pname = "sesh";
-  version = "1.1.0";
+  version = "1.1.1";
 
   src = fetchFromGitHub {
     owner = "joshmedeski";
     repo = "sesh";
     rev = "v${version}";
-    hash = "sha256-4p3Pqts6GSyUGX9hCQS/vTZiHbi5UQkrzzIA1Fheamc=";
+    hash = "sha256-Q0ErSM4r3wNjGu4p0EVhvdWkz4Cd46XD0hauN7idMRg=";
   };
 
   vendorHash = "sha256-zt1/gE4bVj+3yr9n0kT2FMYMEmiooy3k1lQ77rN6sTk=";
diff --git a/pkgs/by-name/sh/shellcheck-sarif/package.nix b/pkgs/by-name/sh/shellcheck-sarif/package.nix
new file mode 100644
index 000000000000..83492cfd39f8
--- /dev/null
+++ b/pkgs/by-name/sh/shellcheck-sarif/package.nix
@@ -0,0 +1,37 @@
+{
+  lib,
+  fetchFromGitHub,
+  rustPlatform,
+  shellcheck-sarif,
+  testers,
+}:
+rustPlatform.buildRustPackage rec {
+  pname = "shellcheck-sarif";
+  version = "0.4.2";
+
+  src = fetchFromGitHub {
+    owner = "psastras";
+    repo = "sarif-rs";
+    rev = "${pname}-v${version}";
+    hash = "sha256-EzWzDeIeSJ11CVcVyAhMjYQJcKHnieRrFkULc5eXAno=";
+  };
+
+  cargoHash = "sha256-JuE/Z0qrS/3BRlb0jTGDfV0TYk74Q75X1wv/IERxqeQ=";
+  cargoBuildFlags = [
+    "--package"
+    pname
+  ];
+  cargoTestFlags = cargoBuildFlags;
+
+  passthru = {
+    tests.version = testers.testVersion { package = shellcheck-sarif; };
+  };
+
+  meta = {
+    description = "A CLI tool to convert shellcheck diagnostics into SARIF";
+    homepage = "https://psastras.github.io/sarif-rs";
+    mainProgram = "shellcheck-sarif";
+    maintainers = with lib.maintainers; [ getchoo ];
+    license = lib.licenses.mit;
+  };
+}
diff --git a/pkgs/by-name/sh/shopware-cli/package.nix b/pkgs/by-name/sh/shopware-cli/package.nix
index b0918dcf1e96..899b956b50a6 100644
--- a/pkgs/by-name/sh/shopware-cli/package.nix
+++ b/pkgs/by-name/sh/shopware-cli/package.nix
@@ -9,18 +9,18 @@
 
 buildGoModule rec {
   pname = "shopware-cli";
-  version = "0.4.40";
+  version = "0.4.43";
   src = fetchFromGitHub {
     repo = "shopware-cli";
     owner = "FriendsOfShopware";
     rev = version;
-    hash = "sha256-ZyLEv9yWBoDDliMcb8DBvq+7VXva50No9GX/xyIZCcM=";
+    hash = "sha256-c8CaPxV54bF4Unlz15SIh64jiGZMZywcKOzdZ74AtaM=";
   };
 
   nativeBuildInputs = [ installShellFiles makeWrapper ];
   nativeCheckInputs = [ git dart-sass ];
 
-  vendorHash = "sha256-K6JcwZ7u/CYCY+Kpi3Ju6b5hZnyjs/fUTkRtZ9IEAS0=";
+  vendorHash = "sha256-7K56fBX4y2UPofksAl6+u7jBg5tySvtrutUJXDJ/qz4=";
 
   postInstall = ''
     export HOME="$(mktemp -d)"
diff --git a/pkgs/applications/video/showmethekey/default.nix b/pkgs/by-name/sh/showmethekey/package.nix
index ef30ed13784c..7faf5dec439e 100644
--- a/pkgs/applications/video/showmethekey/default.nix
+++ b/pkgs/by-name/sh/showmethekey/package.nix
@@ -15,13 +15,13 @@
 
 stdenv.mkDerivation rec {
   pname = "showmethekey";
-  version = "1.13.0";
+  version = "1.13.1";
 
   src = fetchFromGitHub {
     owner = "AlynxZhou";
     repo = "showmethekey";
     rev = "refs/tags/v${version}";
-    hash = "sha256-pVFkO/+a7GAOXbYBfU0zcO/uD26PX+y02bEZa3f1ZP8=";
+    hash = "sha256-kifUp/neqTBPRuZKqNdW6JOinzh9LKfppyvW9AgxAYo=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/by-name/si/simde/package.nix b/pkgs/by-name/si/simde/package.nix
index 4892914e2fae..e3896021e0de 100644
--- a/pkgs/by-name/si/simde/package.nix
+++ b/pkgs/by-name/si/simde/package.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "simde";
-  version = "0.8.0";
+  version = "0.8.2";
 
   src = fetchFromGitHub {
     owner = "simd-everywhere";
     repo = "simde";
     rev = "v${version}";
-    hash = "sha256-hQtSxO8Uld6LT6V1ZhR6tbshTK1QTGgyQ99o3jOIbQk=";
+    hash = "sha256-igjDHCpKXy6EbA9Mf6peL4OTVRPYTV0Y2jbgYQuWMT4=";
   };
 
   nativeBuildInputs = [ meson ninja ];
diff --git a/pkgs/by-name/si/simdutf/package.nix b/pkgs/by-name/si/simdutf/package.nix
index 734081ea5b47..82d2baf04a21 100644
--- a/pkgs/by-name/si/simdutf/package.nix
+++ b/pkgs/by-name/si/simdutf/package.nix
@@ -7,13 +7,13 @@
 
 stdenv.mkDerivation (finalAttrs: {
   pname = "simdutf";
-  version = "5.2.6";
+  version = "5.2.8";
 
   src = fetchFromGitHub {
     owner = "simdutf";
     repo = "simdutf";
     rev = "v${finalAttrs.version}";
-    hash = "sha256-fbDQPHoGqbojvhsMOrg/gMMQJ8bODV/P53F05yIHcTQ=";
+    hash = "sha256-EFyKefq03fpkrKQoSgfvWAjMwwB5UubQouZZU9Obn3k=";
   };
 
   # Fix build on darwin
diff --git a/pkgs/by-name/si/simplex-chat-desktop/package.nix b/pkgs/by-name/si/simplex-chat-desktop/package.nix
index ad15cd9cb1ee..c3e5c618a7ae 100644
--- a/pkgs/by-name/si/simplex-chat-desktop/package.nix
+++ b/pkgs/by-name/si/simplex-chat-desktop/package.nix
@@ -6,11 +6,11 @@
 
 let
   pname = "simplex-chat-desktop";
-  version = "5.5.5";
+  version = "5.7.0";
 
   src = fetchurl {
     url = "https://github.com/simplex-chat/simplex-chat/releases/download/v${version}/simplex-desktop-x86_64.AppImage";
-    hash = "sha256-MD1AbpHlpaMaPlpJmGp0oPbOYPmJEhhIXmexkpCr1wY=";
+    hash = "sha256-T8ojnay/FCa9Q4PObqlfy2MC4pKTF73taNW8elNDjIg=";
   };
 
   appimageContents = appimageTools.extract {
@@ -19,10 +19,6 @@ let
 in appimageTools.wrapType2 {
     inherit pname version src;
 
-    extraPkgs = pkgs: with pkgs; [
-      makeWrapper
-    ];
-
     extraBwrapArgs = [
       "--setenv _JAVA_AWT_WM_NONREPARENTING 1"
     ];
diff --git a/pkgs/by-name/si/sirius/package.nix b/pkgs/by-name/si/sirius/package.nix
index c8e42ff72fc8..c4d4d0506510 100644
--- a/pkgs/by-name/si/sirius/package.nix
+++ b/pkgs/by-name/si/sirius/package.nix
@@ -47,6 +47,9 @@ stdenv.mkDerivation rec {
     hash = "sha256-DYie6ufgZNqg7ohlIed3Bo+sqLKHOxWXTwAkea2guLk=";
   };
 
+
+  outputs = [ "out" "dev" ];
+
   nativeBuildInputs = [
     cmake
     gfortran
@@ -60,6 +63,7 @@ stdenv.mkDerivation rec {
     libxc
     hdf5
     umpire
+    mpi
     spglib
     spfft
     spla
@@ -80,7 +84,7 @@ stdenv.mkDerivation rec {
   ] ++ lib.optional stdenv.isDarwin llvmPackages.openmp
   ;
 
-  propagatedBuildInputs = [ mpi ];
+  propagatedBuildInputs = [ (lib.getBin mpi) ];
 
   CXXFLAGS = [
     # GCC 13: error: 'uintptr_t' in namespace 'std' does not name a type
diff --git a/pkgs/by-name/si/sispmctl/package.nix b/pkgs/by-name/si/sispmctl/package.nix
index d431e1a29ffe..7a09e9471d13 100644
--- a/pkgs/by-name/si/sispmctl/package.nix
+++ b/pkgs/by-name/si/sispmctl/package.nix
@@ -7,11 +7,11 @@
 
 stdenv.mkDerivation rec {
   pname = "sispmctl";
-  version = "4.11";
+  version = "4.12";
 
   src = fetchurl {
     url = "mirror://sourceforge/sispmctl/sispmctl-${version}.tar.gz";
-    hash = "sha256-dLlKNxAEaxUHDHMR8MrLgVVMhrQidxnMJzPLlscFJXg=";
+    hash = "sha256-51eGOkg42m4cpypXrcWspvxH/73ccqaQUtir10PVcII=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/by-name/si/siyuan/package-lock.json b/pkgs/by-name/si/siyuan/package-lock.json
new file mode 100644
index 000000000000..0efb71901c15
--- /dev/null
+++ b/pkgs/by-name/si/siyuan/package-lock.json
@@ -0,0 +1,7762 @@
+{
+  "name": "SiYuan",
+  "version": "3.0.11",
+  "lockfileVersion": 3,
+  "requires": true,
+  "packages": {
+    "": {
+      "name": "SiYuan",
+      "version": "3.0.11",
+      "dependencies": {
+        "@electron/remote": "^2.1.2"
+      },
+      "devDependencies": {
+        "@types/node": "^18.13.0",
+        "@typescript-eslint/eslint-plugin": "^5.30.6",
+        "@typescript-eslint/parser": "^5.30.6",
+        "blueimp-md5": "^2.19.0",
+        "clean-webpack-plugin": "^4.0.0",
+        "css-loader": "^6.7.1",
+        "dayjs": "^1.11.5",
+        "electron": "28.2.10",
+        "electron-builder": "^24.13.3",
+        "encoding": "^0.1.13",
+        "esbuild-loader": "^3.0.1",
+        "eslint": "^8.19.0",
+        "file-loader": "^6.2.0",
+        "html-loader": "^2.1.2",
+        "html-webpack-plugin": "^5.5.0",
+        "iconv-lite": "^0.6.3",
+        "ifdef-loader": "^2.3.2",
+        "mini-css-extract-plugin": "2.7.6",
+        "path-browserify": "^1.0.1",
+        "safer-buffer": "^2.1.2",
+        "sass": "^1.53.0",
+        "sass-loader": "^12.6.0",
+        "typescript": "^4.7.4",
+        "webpack": "^5.76.0",
+        "webpack-bundle-analyzer": "^4.5.0",
+        "webpack-cli": "^4.10.0"
+      }
+    },
+    "node_modules/@develar/schema-utils": {
+      "version": "2.6.5",
+      "resolved": "https://registry.npmjs.org/@develar/schema-utils/-/schema-utils-2.6.5.tgz",
+      "integrity": "sha512-0cp4PsWQ/9avqTVMCtZ+GirikIA36ikvjtHweU4/j8yLtgObI0+JUPhYFScgwlteveGB1rt3Cm8UhN04XayDig==",
+      "dev": true,
+      "dependencies": {
+        "ajv": "^6.12.0",
+        "ajv-keywords": "^3.4.1"
+      },
+      "engines": {
+        "node": ">= 8.9.0"
+      },
+      "funding": {
+        "type": "opencollective",
+        "url": "https://opencollective.com/webpack"
+      }
+    },
+    "node_modules/@discoveryjs/json-ext": {
+      "version": "0.5.7",
+      "resolved": "https://registry.npmjs.org/@discoveryjs/json-ext/-/json-ext-0.5.7.tgz",
+      "integrity": "sha512-dBVuXR082gk3jsFp7Rd/JI4kytwGHecnCoTtXFb7DB6CNHp4rg5k1bhg0nWdLGLnOV71lmDzGQaLMy8iPLY0pw==",
+      "dev": true,
+      "engines": {
+        "node": ">=10.0.0"
+      }
+    },
+    "node_modules/@electron/asar": {
+      "version": "3.2.10",
+      "resolved": "https://registry.npmjs.org/@electron/asar/-/asar-3.2.10.tgz",
+      "integrity": "sha512-mvBSwIBUeiRscrCeJE1LwctAriBj65eUDm0Pc11iE5gRwzkmsdbS7FnZ1XUWjpSeQWL1L5g12Fc/SchPM9DUOw==",
+      "dev": true,
+      "dependencies": {
+        "commander": "^5.0.0",
+        "glob": "^7.1.6",
+        "minimatch": "^3.0.4"
+      },
+      "bin": {
+        "asar": "bin/asar.js"
+      },
+      "engines": {
+        "node": ">=10.12.0"
+      }
+    },
+    "node_modules/@electron/asar/node_modules/brace-expansion": {
+      "version": "1.1.11",
+      "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz",
+      "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==",
+      "dev": true,
+      "dependencies": {
+        "balanced-match": "^1.0.0",
+        "concat-map": "0.0.1"
+      }
+    },
+    "node_modules/@electron/asar/node_modules/minimatch": {
+      "version": "3.1.2",
+      "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz",
+      "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==",
+      "dev": true,
+      "dependencies": {
+        "brace-expansion": "^1.1.7"
+      },
+      "engines": {
+        "node": "*"
+      }
+    },
+    "node_modules/@electron/get": {
+      "version": "2.0.3",
+      "resolved": "https://registry.npmjs.org/@electron/get/-/get-2.0.3.tgz",
+      "integrity": "sha512-Qkzpg2s9GnVV2I2BjRksUi43U5e6+zaQMcjoJy0C+C5oxaKl+fmckGDQFtRpZpZV0NQekuZZ+tGz7EA9TVnQtQ==",
+      "dependencies": {
+        "debug": "^4.1.1",
+        "env-paths": "^2.2.0",
+        "fs-extra": "^8.1.0",
+        "got": "^11.8.5",
+        "progress": "^2.0.3",
+        "semver": "^6.2.0",
+        "sumchecker": "^3.0.1"
+      },
+      "engines": {
+        "node": ">=12"
+      },
+      "optionalDependencies": {
+        "global-agent": "^3.0.0"
+      }
+    },
+    "node_modules/@electron/get/node_modules/semver": {
+      "version": "6.3.1",
+      "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz",
+      "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==",
+      "bin": {
+        "semver": "bin/semver.js"
+      }
+    },
+    "node_modules/@electron/notarize": {
+      "version": "2.2.1",
+      "resolved": "https://registry.npmjs.org/@electron/notarize/-/notarize-2.2.1.tgz",
+      "integrity": "sha512-aL+bFMIkpR0cmmj5Zgy0LMKEpgy43/hw5zadEArgmAMWWlKc5buwFvFT9G/o/YJkvXAJm5q3iuTuLaiaXW39sg==",
+      "dev": true,
+      "dependencies": {
+        "debug": "^4.1.1",
+        "fs-extra": "^9.0.1",
+        "promise-retry": "^2.0.1"
+      },
+      "engines": {
+        "node": ">= 10.0.0"
+      }
+    },
+    "node_modules/@electron/notarize/node_modules/fs-extra": {
+      "version": "9.1.0",
+      "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-9.1.0.tgz",
+      "integrity": "sha512-hcg3ZmepS30/7BSFqRvoo3DOMQu7IjqxO5nCDt+zM9XWjb33Wg7ziNT+Qvqbuc3+gWpzO02JubVyk2G4Zvo1OQ==",
+      "dev": true,
+      "dependencies": {
+        "at-least-node": "^1.0.0",
+        "graceful-fs": "^4.2.0",
+        "jsonfile": "^6.0.1",
+        "universalify": "^2.0.0"
+      },
+      "engines": {
+        "node": ">=10"
+      }
+    },
+    "node_modules/@electron/notarize/node_modules/jsonfile": {
+      "version": "6.1.0",
+      "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-6.1.0.tgz",
+      "integrity": "sha512-5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ==",
+      "dev": true,
+      "dependencies": {
+        "universalify": "^2.0.0"
+      },
+      "optionalDependencies": {
+        "graceful-fs": "^4.1.6"
+      }
+    },
+    "node_modules/@electron/notarize/node_modules/universalify": {
+      "version": "2.0.1",
+      "resolved": "https://registry.npmjs.org/universalify/-/universalify-2.0.1.tgz",
+      "integrity": "sha512-gptHNQghINnc/vTGIk0SOFGFNXw7JVrlRUtConJRlvaw6DuX0wO5Jeko9sWrMBhh+PsYAZ7oXAiOnf/UKogyiw==",
+      "dev": true,
+      "engines": {
+        "node": ">= 10.0.0"
+      }
+    },
+    "node_modules/@electron/osx-sign": {
+      "version": "1.0.5",
+      "resolved": "https://registry.npmjs.org/@electron/osx-sign/-/osx-sign-1.0.5.tgz",
+      "integrity": "sha512-k9ZzUQtamSoweGQDV2jILiRIHUu7lYlJ3c6IEmjv1hC17rclE+eb9U+f6UFlOOETo0JzY1HNlXy4YOlCvl+Lww==",
+      "dev": true,
+      "dependencies": {
+        "compare-version": "^0.1.2",
+        "debug": "^4.3.4",
+        "fs-extra": "^10.0.0",
+        "isbinaryfile": "^4.0.8",
+        "minimist": "^1.2.6",
+        "plist": "^3.0.5"
+      },
+      "bin": {
+        "electron-osx-flat": "bin/electron-osx-flat.js",
+        "electron-osx-sign": "bin/electron-osx-sign.js"
+      },
+      "engines": {
+        "node": ">=12.0.0"
+      }
+    },
+    "node_modules/@electron/osx-sign/node_modules/fs-extra": {
+      "version": "10.1.0",
+      "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-10.1.0.tgz",
+      "integrity": "sha512-oRXApq54ETRj4eMiFzGnHWGy+zo5raudjuxN0b8H7s/RU2oW0Wvsx9O0ACRN/kRq9E8Vu/ReskGB5o3ji+FzHQ==",
+      "dev": true,
+      "dependencies": {
+        "graceful-fs": "^4.2.0",
+        "jsonfile": "^6.0.1",
+        "universalify": "^2.0.0"
+      },
+      "engines": {
+        "node": ">=12"
+      }
+    },
+    "node_modules/@electron/osx-sign/node_modules/isbinaryfile": {
+      "version": "4.0.10",
+      "resolved": "https://registry.npmjs.org/isbinaryfile/-/isbinaryfile-4.0.10.tgz",
+      "integrity": "sha512-iHrqe5shvBUcFbmZq9zOQHBoeOhZJu6RQGrDpBgenUm/Am+F3JM2MgQj+rK3Z601fzrL5gLZWtAPH2OBaSVcyw==",
+      "dev": true,
+      "engines": {
+        "node": ">= 8.0.0"
+      },
+      "funding": {
+        "url": "https://github.com/sponsors/gjtorikian/"
+      }
+    },
+    "node_modules/@electron/osx-sign/node_modules/jsonfile": {
+      "version": "6.1.0",
+      "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-6.1.0.tgz",
+      "integrity": "sha512-5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ==",
+      "dev": true,
+      "dependencies": {
+        "universalify": "^2.0.0"
+      },
+      "optionalDependencies": {
+        "graceful-fs": "^4.1.6"
+      }
+    },
+    "node_modules/@electron/osx-sign/node_modules/universalify": {
+      "version": "2.0.1",
+      "resolved": "https://registry.npmjs.org/universalify/-/universalify-2.0.1.tgz",
+      "integrity": "sha512-gptHNQghINnc/vTGIk0SOFGFNXw7JVrlRUtConJRlvaw6DuX0wO5Jeko9sWrMBhh+PsYAZ7oXAiOnf/UKogyiw==",
+      "dev": true,
+      "engines": {
+        "node": ">= 10.0.0"
+      }
+    },
+    "node_modules/@electron/remote": {
+      "version": "2.1.2",
+      "resolved": "https://registry.npmjs.org/@electron/remote/-/remote-2.1.2.tgz",
+      "integrity": "sha512-EPwNx+nhdrTBxyCqXt/pftoQg/ybtWDW3DUWHafejvnB1ZGGfMpv6e15D8KeempocjXe78T7WreyGGb3mlZxdA==",
+      "peerDependencies": {
+        "electron": ">= 13.0.0"
+      }
+    },
+    "node_modules/@electron/universal": {
+      "version": "1.5.1",
+      "resolved": "https://registry.npmjs.org/@electron/universal/-/universal-1.5.1.tgz",
+      "integrity": "sha512-kbgXxyEauPJiQQUNG2VgUeyfQNFk6hBF11ISN2PNI6agUgPl55pv4eQmaqHzTAzchBvqZ2tQuRVaPStGf0mxGw==",
+      "dev": true,
+      "dependencies": {
+        "@electron/asar": "^3.2.1",
+        "@malept/cross-spawn-promise": "^1.1.0",
+        "debug": "^4.3.1",
+        "dir-compare": "^3.0.0",
+        "fs-extra": "^9.0.1",
+        "minimatch": "^3.0.4",
+        "plist": "^3.0.4"
+      },
+      "engines": {
+        "node": ">=8.6"
+      }
+    },
+    "node_modules/@electron/universal/node_modules/brace-expansion": {
+      "version": "1.1.11",
+      "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz",
+      "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==",
+      "dev": true,
+      "dependencies": {
+        "balanced-match": "^1.0.0",
+        "concat-map": "0.0.1"
+      }
+    },
+    "node_modules/@electron/universal/node_modules/fs-extra": {
+      "version": "9.1.0",
+      "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-9.1.0.tgz",
+      "integrity": "sha512-hcg3ZmepS30/7BSFqRvoo3DOMQu7IjqxO5nCDt+zM9XWjb33Wg7ziNT+Qvqbuc3+gWpzO02JubVyk2G4Zvo1OQ==",
+      "dev": true,
+      "dependencies": {
+        "at-least-node": "^1.0.0",
+        "graceful-fs": "^4.2.0",
+        "jsonfile": "^6.0.1",
+        "universalify": "^2.0.0"
+      },
+      "engines": {
+        "node": ">=10"
+      }
+    },
+    "node_modules/@electron/universal/node_modules/jsonfile": {
+      "version": "6.1.0",
+      "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-6.1.0.tgz",
+      "integrity": "sha512-5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ==",
+      "dev": true,
+      "dependencies": {
+        "universalify": "^2.0.0"
+      },
+      "optionalDependencies": {
+        "graceful-fs": "^4.1.6"
+      }
+    },
+    "node_modules/@electron/universal/node_modules/minimatch": {
+      "version": "3.1.2",
+      "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz",
+      "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==",
+      "dev": true,
+      "dependencies": {
+        "brace-expansion": "^1.1.7"
+      },
+      "engines": {
+        "node": "*"
+      }
+    },
+    "node_modules/@electron/universal/node_modules/universalify": {
+      "version": "2.0.1",
+      "resolved": "https://registry.npmjs.org/universalify/-/universalify-2.0.1.tgz",
+      "integrity": "sha512-gptHNQghINnc/vTGIk0SOFGFNXw7JVrlRUtConJRlvaw6DuX0wO5Jeko9sWrMBhh+PsYAZ7oXAiOnf/UKogyiw==",
+      "dev": true,
+      "engines": {
+        "node": ">= 10.0.0"
+      }
+    },
+    "node_modules/@esbuild/aix-ppc64": {
+      "version": "0.19.12",
+      "resolved": "https://registry.npmjs.org/@esbuild/aix-ppc64/-/aix-ppc64-0.19.12.tgz",
+      "integrity": "sha512-bmoCYyWdEL3wDQIVbcyzRyeKLgk2WtWLTWz1ZIAZF/EGbNOwSA6ew3PftJ1PqMiOOGu0OyFMzG53L0zqIpPeNA==",
+      "cpu": [
+        "ppc64"
+      ],
+      "dev": true,
+      "optional": true,
+      "os": [
+        "aix"
+      ],
+      "engines": {
+        "node": ">=12"
+      }
+    },
+    "node_modules/@esbuild/android-arm": {
+      "version": "0.19.12",
+      "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.19.12.tgz",
+      "integrity": "sha512-qg/Lj1mu3CdQlDEEiWrlC4eaPZ1KztwGJ9B6J+/6G+/4ewxJg7gqj8eVYWvao1bXrqGiW2rsBZFSX3q2lcW05w==",
+      "cpu": [
+        "arm"
+      ],
+      "dev": true,
+      "optional": true,
+      "os": [
+        "android"
+      ],
+      "engines": {
+        "node": ">=12"
+      }
+    },
+    "node_modules/@esbuild/android-arm64": {
+      "version": "0.19.12",
+      "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.19.12.tgz",
+      "integrity": "sha512-P0UVNGIienjZv3f5zq0DP3Nt2IE/3plFzuaS96vihvD0Hd6H/q4WXUGpCxD/E8YrSXfNyRPbpTq+T8ZQioSuPA==",
+      "cpu": [
+        "arm64"
+      ],
+      "dev": true,
+      "optional": true,
+      "os": [
+        "android"
+      ],
+      "engines": {
+        "node": ">=12"
+      }
+    },
+    "node_modules/@esbuild/android-x64": {
+      "version": "0.19.12",
+      "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.19.12.tgz",
+      "integrity": "sha512-3k7ZoUW6Q6YqhdhIaq/WZ7HwBpnFBlW905Fa4s4qWJyiNOgT1dOqDiVAQFwBH7gBRZr17gLrlFCRzF6jFh7Kew==",
+      "cpu": [
+        "x64"
+      ],
+      "dev": true,
+      "optional": true,
+      "os": [
+        "android"
+      ],
+      "engines": {
+        "node": ">=12"
+      }
+    },
+    "node_modules/@esbuild/darwin-arm64": {
+      "version": "0.19.12",
+      "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.19.12.tgz",
+      "integrity": "sha512-B6IeSgZgtEzGC42jsI+YYu9Z3HKRxp8ZT3cqhvliEHovq8HSX2YX8lNocDn79gCKJXOSaEot9MVYky7AKjCs8g==",
+      "cpu": [
+        "arm64"
+      ],
+      "dev": true,
+      "optional": true,
+      "os": [
+        "darwin"
+      ],
+      "engines": {
+        "node": ">=12"
+      }
+    },
+    "node_modules/@esbuild/darwin-x64": {
+      "version": "0.19.12",
+      "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.19.12.tgz",
+      "integrity": "sha512-hKoVkKzFiToTgn+41qGhsUJXFlIjxI/jSYeZf3ugemDYZldIXIxhvwN6erJGlX4t5h417iFuheZ7l+YVn05N3A==",
+      "cpu": [
+        "x64"
+      ],
+      "dev": true,
+      "optional": true,
+      "os": [
+        "darwin"
+      ],
+      "engines": {
+        "node": ">=12"
+      }
+    },
+    "node_modules/@esbuild/freebsd-arm64": {
+      "version": "0.19.12",
+      "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.19.12.tgz",
+      "integrity": "sha512-4aRvFIXmwAcDBw9AueDQ2YnGmz5L6obe5kmPT8Vd+/+x/JMVKCgdcRwH6APrbpNXsPz+K653Qg8HB/oXvXVukA==",
+      "cpu": [
+        "arm64"
+      ],
+      "dev": true,
+      "optional": true,
+      "os": [
+        "freebsd"
+      ],
+      "engines": {
+        "node": ">=12"
+      }
+    },
+    "node_modules/@esbuild/freebsd-x64": {
+      "version": "0.19.12",
+      "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.19.12.tgz",
+      "integrity": "sha512-EYoXZ4d8xtBoVN7CEwWY2IN4ho76xjYXqSXMNccFSx2lgqOG/1TBPW0yPx1bJZk94qu3tX0fycJeeQsKovA8gg==",
+      "cpu": [
+        "x64"
+      ],
+      "dev": true,
+      "optional": true,
+      "os": [
+        "freebsd"
+      ],
+      "engines": {
+        "node": ">=12"
+      }
+    },
+    "node_modules/@esbuild/linux-arm": {
+      "version": "0.19.12",
+      "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.19.12.tgz",
+      "integrity": "sha512-J5jPms//KhSNv+LO1S1TX1UWp1ucM6N6XuL6ITdKWElCu8wXP72l9MM0zDTzzeikVyqFE6U8YAV9/tFyj0ti+w==",
+      "cpu": [
+        "arm"
+      ],
+      "dev": true,
+      "optional": true,
+      "os": [
+        "linux"
+      ],
+      "engines": {
+        "node": ">=12"
+      }
+    },
+    "node_modules/@esbuild/linux-arm64": {
+      "version": "0.19.12",
+      "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.19.12.tgz",
+      "integrity": "sha512-EoTjyYyLuVPfdPLsGVVVC8a0p1BFFvtpQDB/YLEhaXyf/5bczaGeN15QkR+O4S5LeJ92Tqotve7i1jn35qwvdA==",
+      "cpu": [
+        "arm64"
+      ],
+      "dev": true,
+      "optional": true,
+      "os": [
+        "linux"
+      ],
+      "engines": {
+        "node": ">=12"
+      }
+    },
+    "node_modules/@esbuild/linux-ia32": {
+      "version": "0.19.12",
+      "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.19.12.tgz",
+      "integrity": "sha512-Thsa42rrP1+UIGaWz47uydHSBOgTUnwBwNq59khgIwktK6x60Hivfbux9iNR0eHCHzOLjLMLfUMLCypBkZXMHA==",
+      "cpu": [
+        "ia32"
+      ],
+      "dev": true,
+      "optional": true,
+      "os": [
+        "linux"
+      ],
+      "engines": {
+        "node": ">=12"
+      }
+    },
+    "node_modules/@esbuild/linux-loong64": {
+      "version": "0.19.12",
+      "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.19.12.tgz",
+      "integrity": "sha512-LiXdXA0s3IqRRjm6rV6XaWATScKAXjI4R4LoDlvO7+yQqFdlr1Bax62sRwkVvRIrwXxvtYEHHI4dm50jAXkuAA==",
+      "cpu": [
+        "loong64"
+      ],
+      "dev": true,
+      "optional": true,
+      "os": [
+        "linux"
+      ],
+      "engines": {
+        "node": ">=12"
+      }
+    },
+    "node_modules/@esbuild/linux-mips64el": {
+      "version": "0.19.12",
+      "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.19.12.tgz",
+      "integrity": "sha512-fEnAuj5VGTanfJ07ff0gOA6IPsvrVHLVb6Lyd1g2/ed67oU1eFzL0r9WL7ZzscD+/N6i3dWumGE1Un4f7Amf+w==",
+      "cpu": [
+        "mips64el"
+      ],
+      "dev": true,
+      "optional": true,
+      "os": [
+        "linux"
+      ],
+      "engines": {
+        "node": ">=12"
+      }
+    },
+    "node_modules/@esbuild/linux-ppc64": {
+      "version": "0.19.12",
+      "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.19.12.tgz",
+      "integrity": "sha512-nYJA2/QPimDQOh1rKWedNOe3Gfc8PabU7HT3iXWtNUbRzXS9+vgB0Fjaqr//XNbd82mCxHzik2qotuI89cfixg==",
+      "cpu": [
+        "ppc64"
+      ],
+      "dev": true,
+      "optional": true,
+      "os": [
+        "linux"
+      ],
+      "engines": {
+        "node": ">=12"
+      }
+    },
+    "node_modules/@esbuild/linux-riscv64": {
+      "version": "0.19.12",
+      "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.19.12.tgz",
+      "integrity": "sha512-2MueBrlPQCw5dVJJpQdUYgeqIzDQgw3QtiAHUC4RBz9FXPrskyyU3VI1hw7C0BSKB9OduwSJ79FTCqtGMWqJHg==",
+      "cpu": [
+        "riscv64"
+      ],
+      "dev": true,
+      "optional": true,
+      "os": [
+        "linux"
+      ],
+      "engines": {
+        "node": ">=12"
+      }
+    },
+    "node_modules/@esbuild/linux-s390x": {
+      "version": "0.19.12",
+      "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.19.12.tgz",
+      "integrity": "sha512-+Pil1Nv3Umes4m3AZKqA2anfhJiVmNCYkPchwFJNEJN5QxmTs1uzyy4TvmDrCRNT2ApwSari7ZIgrPeUx4UZDg==",
+      "cpu": [
+        "s390x"
+      ],
+      "dev": true,
+      "optional": true,
+      "os": [
+        "linux"
+      ],
+      "engines": {
+        "node": ">=12"
+      }
+    },
+    "node_modules/@esbuild/linux-x64": {
+      "version": "0.19.12",
+      "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.19.12.tgz",
+      "integrity": "sha512-B71g1QpxfwBvNrfyJdVDexenDIt1CiDN1TIXLbhOw0KhJzE78KIFGX6OJ9MrtC0oOqMWf+0xop4qEU8JrJTwCg==",
+      "cpu": [
+        "x64"
+      ],
+      "dev": true,
+      "optional": true,
+      "os": [
+        "linux"
+      ],
+      "engines": {
+        "node": ">=12"
+      }
+    },
+    "node_modules/@esbuild/netbsd-x64": {
+      "version": "0.19.12",
+      "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.19.12.tgz",
+      "integrity": "sha512-3ltjQ7n1owJgFbuC61Oj++XhtzmymoCihNFgT84UAmJnxJfm4sYCiSLTXZtE00VWYpPMYc+ZQmB6xbSdVh0JWA==",
+      "cpu": [
+        "x64"
+      ],
+      "dev": true,
+      "optional": true,
+      "os": [
+        "netbsd"
+      ],
+      "engines": {
+        "node": ">=12"
+      }
+    },
+    "node_modules/@esbuild/openbsd-x64": {
+      "version": "0.19.12",
+      "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.19.12.tgz",
+      "integrity": "sha512-RbrfTB9SWsr0kWmb9srfF+L933uMDdu9BIzdA7os2t0TXhCRjrQyCeOt6wVxr79CKD4c+p+YhCj31HBkYcXebw==",
+      "cpu": [
+        "x64"
+      ],
+      "dev": true,
+      "optional": true,
+      "os": [
+        "openbsd"
+      ],
+      "engines": {
+        "node": ">=12"
+      }
+    },
+    "node_modules/@esbuild/sunos-x64": {
+      "version": "0.19.12",
+      "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.19.12.tgz",
+      "integrity": "sha512-HKjJwRrW8uWtCQnQOz9qcU3mUZhTUQvi56Q8DPTLLB+DawoiQdjsYq+j+D3s9I8VFtDr+F9CjgXKKC4ss89IeA==",
+      "cpu": [
+        "x64"
+      ],
+      "dev": true,
+      "optional": true,
+      "os": [
+        "sunos"
+      ],
+      "engines": {
+        "node": ">=12"
+      }
+    },
+    "node_modules/@esbuild/win32-arm64": {
+      "version": "0.19.12",
+      "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.19.12.tgz",
+      "integrity": "sha512-URgtR1dJnmGvX864pn1B2YUYNzjmXkuJOIqG2HdU62MVS4EHpU2946OZoTMnRUHklGtJdJZ33QfzdjGACXhn1A==",
+      "cpu": [
+        "arm64"
+      ],
+      "dev": true,
+      "optional": true,
+      "os": [
+        "win32"
+      ],
+      "engines": {
+        "node": ">=12"
+      }
+    },
+    "node_modules/@esbuild/win32-ia32": {
+      "version": "0.19.12",
+      "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.19.12.tgz",
+      "integrity": "sha512-+ZOE6pUkMOJfmxmBZElNOx72NKpIa/HFOMGzu8fqzQJ5kgf6aTGrcJaFsNiVMH4JKpMipyK+7k0n2UXN7a8YKQ==",
+      "cpu": [
+        "ia32"
+      ],
+      "dev": true,
+      "optional": true,
+      "os": [
+        "win32"
+      ],
+      "engines": {
+        "node": ">=12"
+      }
+    },
+    "node_modules/@esbuild/win32-x64": {
+      "version": "0.19.12",
+      "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.19.12.tgz",
+      "integrity": "sha512-T1QyPSDCyMXaO3pzBkF96E8xMkiRYbUEZADd29SyPGabqxMViNoii+NcK7eWJAEoU6RZyEm5lVSIjTmcdoB9HA==",
+      "cpu": [
+        "x64"
+      ],
+      "dev": true,
+      "optional": true,
+      "os": [
+        "win32"
+      ],
+      "engines": {
+        "node": ">=12"
+      }
+    },
+    "node_modules/@eslint-community/eslint-utils": {
+      "version": "4.4.0",
+      "resolved": "https://registry.npmjs.org/@eslint-community/eslint-utils/-/eslint-utils-4.4.0.tgz",
+      "integrity": "sha512-1/sA4dwrzBAyeUoQ6oxahHKmrZvsnLCg4RfxW3ZFGGmQkSNQPFNLV9CUEFQP1x9EYXHTo5p6xdhZM1Ne9p/AfA==",
+      "dev": true,
+      "dependencies": {
+        "eslint-visitor-keys": "^3.3.0"
+      },
+      "engines": {
+        "node": "^12.22.0 || ^14.17.0 || >=16.0.0"
+      },
+      "peerDependencies": {
+        "eslint": "^6.0.0 || ^7.0.0 || >=8.0.0"
+      }
+    },
+    "node_modules/@eslint-community/regexpp": {
+      "version": "4.10.0",
+      "resolved": "https://registry.npmjs.org/@eslint-community/regexpp/-/regexpp-4.10.0.tgz",
+      "integrity": "sha512-Cu96Sd2By9mCNTx2iyKOmq10v22jUVQv0lQnlGNy16oE9589yE+QADPbrMGCkA51cKZSg3Pu/aTJVTGfL/qjUA==",
+      "dev": true,
+      "engines": {
+        "node": "^12.0.0 || ^14.0.0 || >=16.0.0"
+      }
+    },
+    "node_modules/@eslint/eslintrc": {
+      "version": "2.1.4",
+      "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-2.1.4.tgz",
+      "integrity": "sha512-269Z39MS6wVJtsoUl10L60WdkhJVdPG24Q4eZTH3nnF6lpvSShEK3wQjDX9JRWAUPvPh7COouPpU9IrqaZFvtQ==",
+      "dev": true,
+      "dependencies": {
+        "ajv": "^6.12.4",
+        "debug": "^4.3.2",
+        "espree": "^9.6.0",
+        "globals": "^13.19.0",
+        "ignore": "^5.2.0",
+        "import-fresh": "^3.2.1",
+        "js-yaml": "^4.1.0",
+        "minimatch": "^3.1.2",
+        "strip-json-comments": "^3.1.1"
+      },
+      "engines": {
+        "node": "^12.22.0 || ^14.17.0 || >=16.0.0"
+      },
+      "funding": {
+        "url": "https://opencollective.com/eslint"
+      }
+    },
+    "node_modules/@eslint/eslintrc/node_modules/brace-expansion": {
+      "version": "1.1.11",
+      "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz",
+      "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==",
+      "dev": true,
+      "dependencies": {
+        "balanced-match": "^1.0.0",
+        "concat-map": "0.0.1"
+      }
+    },
+    "node_modules/@eslint/eslintrc/node_modules/minimatch": {
+      "version": "3.1.2",
+      "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz",
+      "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==",
+      "dev": true,
+      "dependencies": {
+        "brace-expansion": "^1.1.7"
+      },
+      "engines": {
+        "node": "*"
+      }
+    },
+    "node_modules/@eslint/js": {
+      "version": "8.57.0",
+      "resolved": "https://registry.npmjs.org/@eslint/js/-/js-8.57.0.tgz",
+      "integrity": "sha512-Ys+3g2TaW7gADOJzPt83SJtCDhMjndcDMFVQ/Tj9iA1BfJzFKD9mAUXT3OenpuPHbI6P/myECxRJrofUsDx/5g==",
+      "dev": true,
+      "engines": {
+        "node": "^12.22.0 || ^14.17.0 || >=16.0.0"
+      }
+    },
+    "node_modules/@humanwhocodes/config-array": {
+      "version": "0.11.14",
+      "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.11.14.tgz",
+      "integrity": "sha512-3T8LkOmg45BV5FICb15QQMsyUSWrQ8AygVfC7ZG32zOalnqrilm018ZVCw0eapXux8FtA33q8PSRSstjee3jSg==",
+      "dev": true,
+      "dependencies": {
+        "@humanwhocodes/object-schema": "^2.0.2",
+        "debug": "^4.3.1",
+        "minimatch": "^3.0.5"
+      },
+      "engines": {
+        "node": ">=10.10.0"
+      }
+    },
+    "node_modules/@humanwhocodes/config-array/node_modules/brace-expansion": {
+      "version": "1.1.11",
+      "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz",
+      "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==",
+      "dev": true,
+      "dependencies": {
+        "balanced-match": "^1.0.0",
+        "concat-map": "0.0.1"
+      }
+    },
+    "node_modules/@humanwhocodes/config-array/node_modules/minimatch": {
+      "version": "3.1.2",
+      "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz",
+      "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==",
+      "dev": true,
+      "dependencies": {
+        "brace-expansion": "^1.1.7"
+      },
+      "engines": {
+        "node": "*"
+      }
+    },
+    "node_modules/@humanwhocodes/module-importer": {
+      "version": "1.0.1",
+      "resolved": "https://registry.npmjs.org/@humanwhocodes/module-importer/-/module-importer-1.0.1.tgz",
+      "integrity": "sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA==",
+      "dev": true,
+      "engines": {
+        "node": ">=12.22"
+      },
+      "funding": {
+        "type": "github",
+        "url": "https://github.com/sponsors/nzakas"
+      }
+    },
+    "node_modules/@humanwhocodes/object-schema": {
+      "version": "2.0.3",
+      "resolved": "https://registry.npmjs.org/@humanwhocodes/object-schema/-/object-schema-2.0.3.tgz",
+      "integrity": "sha512-93zYdMES/c1D69yZiKDBj0V24vqNzB/koF26KPaagAfd3P/4gUlh3Dys5ogAK+Exi9QyzlD8x/08Zt7wIKcDcA==",
+      "dev": true
+    },
+    "node_modules/@isaacs/cliui": {
+      "version": "8.0.2",
+      "resolved": "https://registry.npmjs.org/@isaacs/cliui/-/cliui-8.0.2.tgz",
+      "integrity": "sha512-O8jcjabXaleOG9DQ0+ARXWZBTfnP4WNAqzuiJK7ll44AmxGKv/J2M4TPjxjY3znBCfvBXFzucm1twdyFybFqEA==",
+      "dev": true,
+      "dependencies": {
+        "string-width": "^5.1.2",
+        "string-width-cjs": "npm:string-width@^4.2.0",
+        "strip-ansi": "^7.0.1",
+        "strip-ansi-cjs": "npm:strip-ansi@^6.0.1",
+        "wrap-ansi": "^8.1.0",
+        "wrap-ansi-cjs": "npm:wrap-ansi@^7.0.0"
+      },
+      "engines": {
+        "node": ">=12"
+      }
+    },
+    "node_modules/@isaacs/cliui/node_modules/ansi-regex": {
+      "version": "6.0.1",
+      "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.0.1.tgz",
+      "integrity": "sha512-n5M855fKb2SsfMIiFFoVrABHJC8QtHwVx+mHWP3QcEqBHYienj5dHSgjbxtC0WEZXYt4wcD6zrQElDPhFuZgfA==",
+      "dev": true,
+      "engines": {
+        "node": ">=12"
+      },
+      "funding": {
+        "url": "https://github.com/chalk/ansi-regex?sponsor=1"
+      }
+    },
+    "node_modules/@isaacs/cliui/node_modules/ansi-styles": {
+      "version": "6.2.1",
+      "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-6.2.1.tgz",
+      "integrity": "sha512-bN798gFfQX+viw3R7yrGWRqnrN2oRkEkUjjl4JNn4E8GxxbjtG3FbrEIIY3l8/hrwUwIeCZvi4QuOTP4MErVug==",
+      "dev": true,
+      "engines": {
+        "node": ">=12"
+      },
+      "funding": {
+        "url": "https://github.com/chalk/ansi-styles?sponsor=1"
+      }
+    },
+    "node_modules/@isaacs/cliui/node_modules/emoji-regex": {
+      "version": "9.2.2",
+      "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-9.2.2.tgz",
+      "integrity": "sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==",
+      "dev": true
+    },
+    "node_modules/@isaacs/cliui/node_modules/string-width": {
+      "version": "5.1.2",
+      "resolved": "https://registry.npmjs.org/string-width/-/string-width-5.1.2.tgz",
+      "integrity": "sha512-HnLOCR3vjcY8beoNLtcjZ5/nxn2afmME6lhrDrebokqMap+XbeW8n9TXpPDOqdGK5qcI3oT0GKTW6wC7EMiVqA==",
+      "dev": true,
+      "dependencies": {
+        "eastasianwidth": "^0.2.0",
+        "emoji-regex": "^9.2.2",
+        "strip-ansi": "^7.0.1"
+      },
+      "engines": {
+        "node": ">=12"
+      },
+      "funding": {
+        "url": "https://github.com/sponsors/sindresorhus"
+      }
+    },
+    "node_modules/@isaacs/cliui/node_modules/strip-ansi": {
+      "version": "7.1.0",
+      "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-7.1.0.tgz",
+      "integrity": "sha512-iq6eVVI64nQQTRYq2KtEg2d2uU7LElhTJwsH4YzIHZshxlgZms/wIc4VoDQTlG/IvVIrBKG06CrZnp0qv7hkcQ==",
+      "dev": true,
+      "dependencies": {
+        "ansi-regex": "^6.0.1"
+      },
+      "engines": {
+        "node": ">=12"
+      },
+      "funding": {
+        "url": "https://github.com/chalk/strip-ansi?sponsor=1"
+      }
+    },
+    "node_modules/@isaacs/cliui/node_modules/wrap-ansi": {
+      "version": "8.1.0",
+      "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-8.1.0.tgz",
+      "integrity": "sha512-si7QWI6zUMq56bESFvagtmzMdGOtoxfR+Sez11Mobfc7tm+VkUckk9bW2UeffTGVUbOksxmSw0AA2gs8g71NCQ==",
+      "dev": true,
+      "dependencies": {
+        "ansi-styles": "^6.1.0",
+        "string-width": "^5.0.1",
+        "strip-ansi": "^7.0.1"
+      },
+      "engines": {
+        "node": ">=12"
+      },
+      "funding": {
+        "url": "https://github.com/chalk/wrap-ansi?sponsor=1"
+      }
+    },
+    "node_modules/@jridgewell/gen-mapping": {
+      "version": "0.3.5",
+      "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.5.tgz",
+      "integrity": "sha512-IzL8ZoEDIBRWEzlCcRhOaCupYyN5gdIK+Q6fbFdPDg6HqX6jpkItn7DFIpW9LQzXG6Df9sA7+OKnq0qlz/GaQg==",
+      "dev": true,
+      "dependencies": {
+        "@jridgewell/set-array": "^1.2.1",
+        "@jridgewell/sourcemap-codec": "^1.4.10",
+        "@jridgewell/trace-mapping": "^0.3.24"
+      },
+      "engines": {
+        "node": ">=6.0.0"
+      }
+    },
+    "node_modules/@jridgewell/resolve-uri": {
+      "version": "3.1.2",
+      "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.2.tgz",
+      "integrity": "sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw==",
+      "dev": true,
+      "engines": {
+        "node": ">=6.0.0"
+      }
+    },
+    "node_modules/@jridgewell/set-array": {
+      "version": "1.2.1",
+      "resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.2.1.tgz",
+      "integrity": "sha512-R8gLRTZeyp03ymzP/6Lil/28tGeGEzhx1q2k703KGWRAI1VdvPIXdG70VJc2pAMw3NA6JKL5hhFu1sJX0Mnn/A==",
+      "dev": true,
+      "engines": {
+        "node": ">=6.0.0"
+      }
+    },
+    "node_modules/@jridgewell/source-map": {
+      "version": "0.3.6",
+      "resolved": "https://registry.npmjs.org/@jridgewell/source-map/-/source-map-0.3.6.tgz",
+      "integrity": "sha512-1ZJTZebgqllO79ue2bm3rIGud/bOe0pP5BjSRCRxxYkEZS8STV7zN84UBbiYu7jy+eCKSnVIUgoWWE/tt+shMQ==",
+      "dev": true,
+      "dependencies": {
+        "@jridgewell/gen-mapping": "^0.3.5",
+        "@jridgewell/trace-mapping": "^0.3.25"
+      }
+    },
+    "node_modules/@jridgewell/sourcemap-codec": {
+      "version": "1.4.15",
+      "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.15.tgz",
+      "integrity": "sha512-eF2rxCRulEKXHTRiDrDy6erMYWqNw4LPdQ8UQA4huuxaQsVeRPFl2oM8oDGxMFhJUWZf9McpLtJasDDZb/Bpeg==",
+      "dev": true
+    },
+    "node_modules/@jridgewell/trace-mapping": {
+      "version": "0.3.25",
+      "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.25.tgz",
+      "integrity": "sha512-vNk6aEwybGtawWmy/PzwnGDOjCkLWSD2wqvjGGAgOAwCGWySYXfYoxt00IJkTF+8Lb57DwOb3Aa0o9CApepiYQ==",
+      "dev": true,
+      "dependencies": {
+        "@jridgewell/resolve-uri": "^3.1.0",
+        "@jridgewell/sourcemap-codec": "^1.4.14"
+      }
+    },
+    "node_modules/@malept/cross-spawn-promise": {
+      "version": "1.1.1",
+      "resolved": "https://registry.npmjs.org/@malept/cross-spawn-promise/-/cross-spawn-promise-1.1.1.tgz",
+      "integrity": "sha512-RTBGWL5FWQcg9orDOCcp4LvItNzUPcyEU9bwaeJX0rJ1IQxzucC48Y0/sQLp/g6t99IQgAlGIaesJS+gTn7tVQ==",
+      "dev": true,
+      "funding": [
+        {
+          "type": "individual",
+          "url": "https://github.com/sponsors/malept"
+        },
+        {
+          "type": "tidelift",
+          "url": "https://tidelift.com/subscription/pkg/npm-.malept-cross-spawn-promise?utm_medium=referral&utm_source=npm_fund"
+        }
+      ],
+      "dependencies": {
+        "cross-spawn": "^7.0.1"
+      },
+      "engines": {
+        "node": ">= 10"
+      }
+    },
+    "node_modules/@malept/flatpak-bundler": {
+      "version": "0.4.0",
+      "resolved": "https://registry.npmjs.org/@malept/flatpak-bundler/-/flatpak-bundler-0.4.0.tgz",
+      "integrity": "sha512-9QOtNffcOF/c1seMCDnjckb3R9WHcG34tky+FHpNKKCW0wc/scYLwMtO+ptyGUfMW0/b/n4qRiALlaFHc9Oj7Q==",
+      "dev": true,
+      "dependencies": {
+        "debug": "^4.1.1",
+        "fs-extra": "^9.0.0",
+        "lodash": "^4.17.15",
+        "tmp-promise": "^3.0.2"
+      },
+      "engines": {
+        "node": ">= 10.0.0"
+      }
+    },
+    "node_modules/@malept/flatpak-bundler/node_modules/fs-extra": {
+      "version": "9.1.0",
+      "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-9.1.0.tgz",
+      "integrity": "sha512-hcg3ZmepS30/7BSFqRvoo3DOMQu7IjqxO5nCDt+zM9XWjb33Wg7ziNT+Qvqbuc3+gWpzO02JubVyk2G4Zvo1OQ==",
+      "dev": true,
+      "dependencies": {
+        "at-least-node": "^1.0.0",
+        "graceful-fs": "^4.2.0",
+        "jsonfile": "^6.0.1",
+        "universalify": "^2.0.0"
+      },
+      "engines": {
+        "node": ">=10"
+      }
+    },
+    "node_modules/@malept/flatpak-bundler/node_modules/jsonfile": {
+      "version": "6.1.0",
+      "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-6.1.0.tgz",
+      "integrity": "sha512-5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ==",
+      "dev": true,
+      "dependencies": {
+        "universalify": "^2.0.0"
+      },
+      "optionalDependencies": {
+        "graceful-fs": "^4.1.6"
+      }
+    },
+    "node_modules/@malept/flatpak-bundler/node_modules/universalify": {
+      "version": "2.0.1",
+      "resolved": "https://registry.npmjs.org/universalify/-/universalify-2.0.1.tgz",
+      "integrity": "sha512-gptHNQghINnc/vTGIk0SOFGFNXw7JVrlRUtConJRlvaw6DuX0wO5Jeko9sWrMBhh+PsYAZ7oXAiOnf/UKogyiw==",
+      "dev": true,
+      "engines": {
+        "node": ">= 10.0.0"
+      }
+    },
+    "node_modules/@nodelib/fs.scandir": {
+      "version": "2.1.5",
+      "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz",
+      "integrity": "sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==",
+      "dev": true,
+      "dependencies": {
+        "@nodelib/fs.stat": "2.0.5",
+        "run-parallel": "^1.1.9"
+      },
+      "engines": {
+        "node": ">= 8"
+      }
+    },
+    "node_modules/@nodelib/fs.stat": {
+      "version": "2.0.5",
+      "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz",
+      "integrity": "sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==",
+      "dev": true,
+      "engines": {
+        "node": ">= 8"
+      }
+    },
+    "node_modules/@nodelib/fs.walk": {
+      "version": "1.2.8",
+      "resolved": "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz",
+      "integrity": "sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==",
+      "dev": true,
+      "dependencies": {
+        "@nodelib/fs.scandir": "2.1.5",
+        "fastq": "^1.6.0"
+      },
+      "engines": {
+        "node": ">= 8"
+      }
+    },
+    "node_modules/@pkgjs/parseargs": {
+      "version": "0.11.0",
+      "resolved": "https://registry.npmjs.org/@pkgjs/parseargs/-/parseargs-0.11.0.tgz",
+      "integrity": "sha512-+1VkjdD0QBLPodGrJUeqarH8VAIvQODIbwh9XpP5Syisf7YoQgsJKPNFoqqLQlu+VQ/tVSshMR6loPMn8U+dPg==",
+      "dev": true,
+      "optional": true,
+      "engines": {
+        "node": ">=14"
+      }
+    },
+    "node_modules/@polka/url": {
+      "version": "1.0.0-next.25",
+      "resolved": "https://registry.npmjs.org/@polka/url/-/url-1.0.0-next.25.tgz",
+      "integrity": "sha512-j7P6Rgr3mmtdkeDGTe0E/aYyWEWVtc5yFXtHCRHs28/jptDEWfaVOc5T7cblqy1XKPPfCxJc/8DwQ5YgLOZOVQ==",
+      "dev": true
+    },
+    "node_modules/@sindresorhus/is": {
+      "version": "4.6.0",
+      "resolved": "https://registry.npmjs.org/@sindresorhus/is/-/is-4.6.0.tgz",
+      "integrity": "sha512-t09vSN3MdfsyCHoFcTRCH/iUtG7OJ0CsjzB8cjAmKc/va/kIgeDI/TxsigdncE/4be734m0cvIYwNaV4i2XqAw==",
+      "engines": {
+        "node": ">=10"
+      },
+      "funding": {
+        "url": "https://github.com/sindresorhus/is?sponsor=1"
+      }
+    },
+    "node_modules/@szmarczak/http-timer": {
+      "version": "4.0.6",
+      "resolved": "https://registry.npmjs.org/@szmarczak/http-timer/-/http-timer-4.0.6.tgz",
+      "integrity": "sha512-4BAffykYOgO+5nzBWYwE3W90sBgLJoUPRWWcL8wlyiM8IB8ipJz3UMJ9KXQd1RKQXpKp8Tutn80HZtWsu2u76w==",
+      "dependencies": {
+        "defer-to-connect": "^2.0.0"
+      },
+      "engines": {
+        "node": ">=10"
+      }
+    },
+    "node_modules/@tootallnate/once": {
+      "version": "2.0.0",
+      "resolved": "https://registry.npmjs.org/@tootallnate/once/-/once-2.0.0.tgz",
+      "integrity": "sha512-XCuKFP5PS55gnMVu3dty8KPatLqUoy/ZYzDzAGCQ8JNFCkLXzmI7vNHCR+XpbZaMWQK/vQubr7PkYq8g470J/A==",
+      "dev": true,
+      "engines": {
+        "node": ">= 10"
+      }
+    },
+    "node_modules/@types/cacheable-request": {
+      "version": "6.0.3",
+      "resolved": "https://registry.npmjs.org/@types/cacheable-request/-/cacheable-request-6.0.3.tgz",
+      "integrity": "sha512-IQ3EbTzGxIigb1I3qPZc1rWJnH0BmSKv5QYTalEwweFvyBDLSAe24zP0le/hyi7ecGfZVlIVAg4BZqb8WBwKqw==",
+      "dependencies": {
+        "@types/http-cache-semantics": "*",
+        "@types/keyv": "^3.1.4",
+        "@types/node": "*",
+        "@types/responselike": "^1.0.0"
+      }
+    },
+    "node_modules/@types/debug": {
+      "version": "4.1.12",
+      "resolved": "https://registry.npmjs.org/@types/debug/-/debug-4.1.12.tgz",
+      "integrity": "sha512-vIChWdVG3LG1SMxEvI/AK+FWJthlrqlTu7fbrlywTkkaONwk/UAGaULXRlf8vkzFBLVm0zkMdCquhL5aOjhXPQ==",
+      "dev": true,
+      "dependencies": {
+        "@types/ms": "*"
+      }
+    },
+    "node_modules/@types/eslint": {
+      "version": "8.56.10",
+      "resolved": "https://registry.npmjs.org/@types/eslint/-/eslint-8.56.10.tgz",
+      "integrity": "sha512-Shavhk87gCtY2fhXDctcfS3e6FdxWkCx1iUZ9eEUbh7rTqlZT0/IzOkCOVt0fCjcFuZ9FPYfuezTBImfHCDBGQ==",
+      "dev": true,
+      "dependencies": {
+        "@types/estree": "*",
+        "@types/json-schema": "*"
+      }
+    },
+    "node_modules/@types/eslint-scope": {
+      "version": "3.7.7",
+      "resolved": "https://registry.npmjs.org/@types/eslint-scope/-/eslint-scope-3.7.7.tgz",
+      "integrity": "sha512-MzMFlSLBqNF2gcHWO0G1vP/YQyfvrxZ0bF+u7mzUdZ1/xK4A4sru+nraZz5i3iEIk1l1uyicaDVTB4QbbEkAYg==",
+      "dev": true,
+      "dependencies": {
+        "@types/eslint": "*",
+        "@types/estree": "*"
+      }
+    },
+    "node_modules/@types/estree": {
+      "version": "1.0.5",
+      "resolved": "https://registry.npmjs.org/@types/estree/-/estree-1.0.5.tgz",
+      "integrity": "sha512-/kYRxGDLWzHOB7q+wtSUQlFrtcdUccpfy+X+9iMBpHK8QLLhx2wIPYuS5DYtR9Wa/YlZAbIovy7qVdB1Aq6Lyw==",
+      "dev": true
+    },
+    "node_modules/@types/fs-extra": {
+      "version": "9.0.13",
+      "resolved": "https://registry.npmjs.org/@types/fs-extra/-/fs-extra-9.0.13.tgz",
+      "integrity": "sha512-nEnwB++1u5lVDM2UI4c1+5R+FYaKfaAzS4OococimjVm3nQw3TuzH5UNsocrcTBbhnerblyHj4A49qXbIiZdpA==",
+      "dev": true,
+      "dependencies": {
+        "@types/node": "*"
+      }
+    },
+    "node_modules/@types/glob": {
+      "version": "7.2.0",
+      "resolved": "https://registry.npmjs.org/@types/glob/-/glob-7.2.0.tgz",
+      "integrity": "sha512-ZUxbzKl0IfJILTS6t7ip5fQQM/J3TJYubDm3nMbgubNNYS62eXeUpoLUC8/7fJNiFYHTrGPQn7hspDUzIHX3UA==",
+      "dev": true,
+      "dependencies": {
+        "@types/minimatch": "*",
+        "@types/node": "*"
+      }
+    },
+    "node_modules/@types/html-minifier-terser": {
+      "version": "6.1.0",
+      "resolved": "https://registry.npmjs.org/@types/html-minifier-terser/-/html-minifier-terser-6.1.0.tgz",
+      "integrity": "sha512-oh/6byDPnL1zeNXFrDXFLyZjkr1MsBG667IM792caf1L2UPOOMf65NFzjUH/ltyfwjAGfs1rsX1eftK0jC/KIg==",
+      "dev": true
+    },
+    "node_modules/@types/http-cache-semantics": {
+      "version": "4.0.4",
+      "resolved": "https://registry.npmjs.org/@types/http-cache-semantics/-/http-cache-semantics-4.0.4.tgz",
+      "integrity": "sha512-1m0bIFVc7eJWyve9S0RnuRgcQqF/Xd5QsUZAZeQFr1Q3/p9JWoQQEqmVy+DPTNpGXwhgIetAoYF8JSc33q29QA=="
+    },
+    "node_modules/@types/json-schema": {
+      "version": "7.0.15",
+      "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.15.tgz",
+      "integrity": "sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA==",
+      "dev": true
+    },
+    "node_modules/@types/keyv": {
+      "version": "3.1.4",
+      "resolved": "https://registry.npmjs.org/@types/keyv/-/keyv-3.1.4.tgz",
+      "integrity": "sha512-BQ5aZNSCpj7D6K2ksrRCTmKRLEpnPvWDiLPfoGyhZ++8YtiK9d/3DBKPJgry359X/P1PfruyYwvnvwFjuEiEIg==",
+      "dependencies": {
+        "@types/node": "*"
+      }
+    },
+    "node_modules/@types/minimatch": {
+      "version": "5.1.2",
+      "resolved": "https://registry.npmjs.org/@types/minimatch/-/minimatch-5.1.2.tgz",
+      "integrity": "sha512-K0VQKziLUWkVKiRVrx4a40iPaxTUefQmjtkQofBkYRcoaaL/8rhwDWww9qWbrgicNOgnpIsMxyNIUM4+n6dUIA==",
+      "dev": true
+    },
+    "node_modules/@types/ms": {
+      "version": "0.7.34",
+      "resolved": "https://registry.npmjs.org/@types/ms/-/ms-0.7.34.tgz",
+      "integrity": "sha512-nG96G3Wp6acyAgJqGasjODb+acrI7KltPiRxzHPXnP3NgI28bpQDRv53olbqGXbfcgF5aiiHmO3xpwEpS5Ld9g==",
+      "dev": true
+    },
+    "node_modules/@types/node": {
+      "version": "18.19.31",
+      "resolved": "https://registry.npmjs.org/@types/node/-/node-18.19.31.tgz",
+      "integrity": "sha512-ArgCD39YpyyrtFKIqMDvjz79jto5fcI/SVUs2HwB+f0dAzq68yqOdyaSivLiLugSziTpNXLQrVb7RZFmdZzbhA==",
+      "dependencies": {
+        "undici-types": "~5.26.4"
+      }
+    },
+    "node_modules/@types/plist": {
+      "version": "3.0.5",
+      "resolved": "https://registry.npmjs.org/@types/plist/-/plist-3.0.5.tgz",
+      "integrity": "sha512-E6OCaRmAe4WDmWNsL/9RMqdkkzDCY1etutkflWk4c+AcjDU07Pcz1fQwTX0TQz+Pxqn9i4L1TU3UFpjnrcDgxA==",
+      "dev": true,
+      "optional": true,
+      "dependencies": {
+        "@types/node": "*",
+        "xmlbuilder": ">=11.0.1"
+      }
+    },
+    "node_modules/@types/responselike": {
+      "version": "1.0.3",
+      "resolved": "https://registry.npmjs.org/@types/responselike/-/responselike-1.0.3.tgz",
+      "integrity": "sha512-H/+L+UkTV33uf49PH5pCAUBVPNj2nDBXTN+qS1dOwyyg24l3CcicicCA7ca+HMvJBZcFgl5r8e+RR6elsb4Lyw==",
+      "dependencies": {
+        "@types/node": "*"
+      }
+    },
+    "node_modules/@types/semver": {
+      "version": "7.5.8",
+      "resolved": "https://registry.npmjs.org/@types/semver/-/semver-7.5.8.tgz",
+      "integrity": "sha512-I8EUhyrgfLrcTkzV3TSsGyl1tSuPrEDzr0yd5m90UgNxQkyDXULk3b6MlQqTCpZpNtWe1K0hzclnZkTcLBe2UQ==",
+      "dev": true
+    },
+    "node_modules/@types/verror": {
+      "version": "1.10.10",
+      "resolved": "https://registry.npmjs.org/@types/verror/-/verror-1.10.10.tgz",
+      "integrity": "sha512-l4MM0Jppn18hb9xmM6wwD1uTdShpf9Pn80aXTStnK1C94gtPvJcV2FrDmbOQUAQfJ1cKZHktkQUDwEqaAKXMMg==",
+      "dev": true,
+      "optional": true
+    },
+    "node_modules/@types/yauzl": {
+      "version": "2.10.3",
+      "resolved": "https://registry.npmjs.org/@types/yauzl/-/yauzl-2.10.3.tgz",
+      "integrity": "sha512-oJoftv0LSuaDZE3Le4DbKX+KS9G36NzOeSap90UIK0yMA/NhKJhqlSGtNDORNRaIbQfzjXDrQa0ytJ6mNRGz/Q==",
+      "optional": true,
+      "dependencies": {
+        "@types/node": "*"
+      }
+    },
+    "node_modules/@typescript-eslint/eslint-plugin": {
+      "version": "5.62.0",
+      "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-5.62.0.tgz",
+      "integrity": "sha512-TiZzBSJja/LbhNPvk6yc0JrX9XqhQ0hdh6M2svYfsHGejaKFIAGd9MQ+ERIMzLGlN/kZoYIgdxFV0PuljTKXag==",
+      "dev": true,
+      "dependencies": {
+        "@eslint-community/regexpp": "^4.4.0",
+        "@typescript-eslint/scope-manager": "5.62.0",
+        "@typescript-eslint/type-utils": "5.62.0",
+        "@typescript-eslint/utils": "5.62.0",
+        "debug": "^4.3.4",
+        "graphemer": "^1.4.0",
+        "ignore": "^5.2.0",
+        "natural-compare-lite": "^1.4.0",
+        "semver": "^7.3.7",
+        "tsutils": "^3.21.0"
+      },
+      "engines": {
+        "node": "^12.22.0 || ^14.17.0 || >=16.0.0"
+      },
+      "funding": {
+        "type": "opencollective",
+        "url": "https://opencollective.com/typescript-eslint"
+      },
+      "peerDependencies": {
+        "@typescript-eslint/parser": "^5.0.0",
+        "eslint": "^6.0.0 || ^7.0.0 || ^8.0.0"
+      },
+      "peerDependenciesMeta": {
+        "typescript": {
+          "optional": true
+        }
+      }
+    },
+    "node_modules/@typescript-eslint/parser": {
+      "version": "5.62.0",
+      "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-5.62.0.tgz",
+      "integrity": "sha512-VlJEV0fOQ7BExOsHYAGrgbEiZoi8D+Bl2+f6V2RrXerRSylnp+ZBHmPvaIa8cz0Ajx7WO7Z5RqfgYg7ED1nRhA==",
+      "dev": true,
+      "dependencies": {
+        "@typescript-eslint/scope-manager": "5.62.0",
+        "@typescript-eslint/types": "5.62.0",
+        "@typescript-eslint/typescript-estree": "5.62.0",
+        "debug": "^4.3.4"
+      },
+      "engines": {
+        "node": "^12.22.0 || ^14.17.0 || >=16.0.0"
+      },
+      "funding": {
+        "type": "opencollective",
+        "url": "https://opencollective.com/typescript-eslint"
+      },
+      "peerDependencies": {
+        "eslint": "^6.0.0 || ^7.0.0 || ^8.0.0"
+      },
+      "peerDependenciesMeta": {
+        "typescript": {
+          "optional": true
+        }
+      }
+    },
+    "node_modules/@typescript-eslint/scope-manager": {
+      "version": "5.62.0",
+      "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-5.62.0.tgz",
+      "integrity": "sha512-VXuvVvZeQCQb5Zgf4HAxc04q5j+WrNAtNh9OwCsCgpKqESMTu3tF/jhZ3xG6T4NZwWl65Bg8KuS2uEvhSfLl0w==",
+      "dev": true,
+      "dependencies": {
+        "@typescript-eslint/types": "5.62.0",
+        "@typescript-eslint/visitor-keys": "5.62.0"
+      },
+      "engines": {
+        "node": "^12.22.0 || ^14.17.0 || >=16.0.0"
+      },
+      "funding": {
+        "type": "opencollective",
+        "url": "https://opencollective.com/typescript-eslint"
+      }
+    },
+    "node_modules/@typescript-eslint/type-utils": {
+      "version": "5.62.0",
+      "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-5.62.0.tgz",
+      "integrity": "sha512-xsSQreu+VnfbqQpW5vnCJdq1Z3Q0U31qiWmRhr98ONQmcp/yhiPJFPq8MXiJVLiksmOKSjIldZzkebzHuCGzew==",
+      "dev": true,
+      "dependencies": {
+        "@typescript-eslint/typescript-estree": "5.62.0",
+        "@typescript-eslint/utils": "5.62.0",
+        "debug": "^4.3.4",
+        "tsutils": "^3.21.0"
+      },
+      "engines": {
+        "node": "^12.22.0 || ^14.17.0 || >=16.0.0"
+      },
+      "funding": {
+        "type": "opencollective",
+        "url": "https://opencollective.com/typescript-eslint"
+      },
+      "peerDependencies": {
+        "eslint": "*"
+      },
+      "peerDependenciesMeta": {
+        "typescript": {
+          "optional": true
+        }
+      }
+    },
+    "node_modules/@typescript-eslint/types": {
+      "version": "5.62.0",
+      "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-5.62.0.tgz",
+      "integrity": "sha512-87NVngcbVXUahrRTqIK27gD2t5Cu1yuCXxbLcFtCzZGlfyVWWh8mLHkoxzjsB6DDNnvdL+fW8MiwPEJyGJQDgQ==",
+      "dev": true,
+      "engines": {
+        "node": "^12.22.0 || ^14.17.0 || >=16.0.0"
+      },
+      "funding": {
+        "type": "opencollective",
+        "url": "https://opencollective.com/typescript-eslint"
+      }
+    },
+    "node_modules/@typescript-eslint/typescript-estree": {
+      "version": "5.62.0",
+      "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-5.62.0.tgz",
+      "integrity": "sha512-CmcQ6uY7b9y694lKdRB8FEel7JbU/40iSAPomu++SjLMntB+2Leay2LO6i8VnJk58MtE9/nQSFIH6jpyRWyYzA==",
+      "dev": true,
+      "dependencies": {
+        "@typescript-eslint/types": "5.62.0",
+        "@typescript-eslint/visitor-keys": "5.62.0",
+        "debug": "^4.3.4",
+        "globby": "^11.1.0",
+        "is-glob": "^4.0.3",
+        "semver": "^7.3.7",
+        "tsutils": "^3.21.0"
+      },
+      "engines": {
+        "node": "^12.22.0 || ^14.17.0 || >=16.0.0"
+      },
+      "funding": {
+        "type": "opencollective",
+        "url": "https://opencollective.com/typescript-eslint"
+      },
+      "peerDependenciesMeta": {
+        "typescript": {
+          "optional": true
+        }
+      }
+    },
+    "node_modules/@typescript-eslint/utils": {
+      "version": "5.62.0",
+      "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-5.62.0.tgz",
+      "integrity": "sha512-n8oxjeb5aIbPFEtmQxQYOLI0i9n5ySBEY/ZEHHZqKQSFnxio1rv6dthascc9dLuwrL0RC5mPCxB7vnAVGAYWAQ==",
+      "dev": true,
+      "dependencies": {
+        "@eslint-community/eslint-utils": "^4.2.0",
+        "@types/json-schema": "^7.0.9",
+        "@types/semver": "^7.3.12",
+        "@typescript-eslint/scope-manager": "5.62.0",
+        "@typescript-eslint/types": "5.62.0",
+        "@typescript-eslint/typescript-estree": "5.62.0",
+        "eslint-scope": "^5.1.1",
+        "semver": "^7.3.7"
+      },
+      "engines": {
+        "node": "^12.22.0 || ^14.17.0 || >=16.0.0"
+      },
+      "funding": {
+        "type": "opencollective",
+        "url": "https://opencollective.com/typescript-eslint"
+      },
+      "peerDependencies": {
+        "eslint": "^6.0.0 || ^7.0.0 || ^8.0.0"
+      }
+    },
+    "node_modules/@typescript-eslint/visitor-keys": {
+      "version": "5.62.0",
+      "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-5.62.0.tgz",
+      "integrity": "sha512-07ny+LHRzQXepkGg6w0mFY41fVUNBrL2Roj/++7V1txKugfjm/Ci/qSND03r2RhlJhJYMcTn9AhhSSqQp0Ysyw==",
+      "dev": true,
+      "dependencies": {
+        "@typescript-eslint/types": "5.62.0",
+        "eslint-visitor-keys": "^3.3.0"
+      },
+      "engines": {
+        "node": "^12.22.0 || ^14.17.0 || >=16.0.0"
+      },
+      "funding": {
+        "type": "opencollective",
+        "url": "https://opencollective.com/typescript-eslint"
+      }
+    },
+    "node_modules/@ungap/structured-clone": {
+      "version": "1.2.0",
+      "resolved": "https://registry.npmjs.org/@ungap/structured-clone/-/structured-clone-1.2.0.tgz",
+      "integrity": "sha512-zuVdFrMJiuCDQUMCzQaD6KL28MjnqqN8XnAqiEq9PNm/hCPTSGfrXCOfwj1ow4LFb/tNymJPwsNbVePc1xFqrQ==",
+      "dev": true
+    },
+    "node_modules/@webassemblyjs/ast": {
+      "version": "1.12.1",
+      "resolved": "https://registry.npmjs.org/@webassemblyjs/ast/-/ast-1.12.1.tgz",
+      "integrity": "sha512-EKfMUOPRRUTy5UII4qJDGPpqfwjOmZ5jeGFwid9mnoqIFK+e0vqoi1qH56JpmZSzEL53jKnNzScdmftJyG5xWg==",
+      "dev": true,
+      "dependencies": {
+        "@webassemblyjs/helper-numbers": "1.11.6",
+        "@webassemblyjs/helper-wasm-bytecode": "1.11.6"
+      }
+    },
+    "node_modules/@webassemblyjs/floating-point-hex-parser": {
+      "version": "1.11.6",
+      "resolved": "https://registry.npmjs.org/@webassemblyjs/floating-point-hex-parser/-/floating-point-hex-parser-1.11.6.tgz",
+      "integrity": "sha512-ejAj9hfRJ2XMsNHk/v6Fu2dGS+i4UaXBXGemOfQ/JfQ6mdQg/WXtwleQRLLS4OvfDhv8rYnVwH27YJLMyYsxhw==",
+      "dev": true
+    },
+    "node_modules/@webassemblyjs/helper-api-error": {
+      "version": "1.11.6",
+      "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-api-error/-/helper-api-error-1.11.6.tgz",
+      "integrity": "sha512-o0YkoP4pVu4rN8aTJgAyj9hC2Sv5UlkzCHhxqWj8butaLvnpdc2jOwh4ewE6CX0txSfLn/UYaV/pheS2Txg//Q==",
+      "dev": true
+    },
+    "node_modules/@webassemblyjs/helper-buffer": {
+      "version": "1.12.1",
+      "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-buffer/-/helper-buffer-1.12.1.tgz",
+      "integrity": "sha512-nzJwQw99DNDKr9BVCOZcLuJJUlqkJh+kVzVl6Fmq/tI5ZtEyWT1KZMyOXltXLZJmDtvLCDgwsyrkohEtopTXCw==",
+      "dev": true
+    },
+    "node_modules/@webassemblyjs/helper-numbers": {
+      "version": "1.11.6",
+      "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-numbers/-/helper-numbers-1.11.6.tgz",
+      "integrity": "sha512-vUIhZ8LZoIWHBohiEObxVm6hwP034jwmc9kuq5GdHZH0wiLVLIPcMCdpJzG4C11cHoQ25TFIQj9kaVADVX7N3g==",
+      "dev": true,
+      "dependencies": {
+        "@webassemblyjs/floating-point-hex-parser": "1.11.6",
+        "@webassemblyjs/helper-api-error": "1.11.6",
+        "@xtuc/long": "4.2.2"
+      }
+    },
+    "node_modules/@webassemblyjs/helper-wasm-bytecode": {
+      "version": "1.11.6",
+      "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-bytecode/-/helper-wasm-bytecode-1.11.6.tgz",
+      "integrity": "sha512-sFFHKwcmBprO9e7Icf0+gddyWYDViL8bpPjJJl0WHxCdETktXdmtWLGVzoHbqUcY4Be1LkNfwTmXOJUFZYSJdA==",
+      "dev": true
+    },
+    "node_modules/@webassemblyjs/helper-wasm-section": {
+      "version": "1.12.1",
+      "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-section/-/helper-wasm-section-1.12.1.tgz",
+      "integrity": "sha512-Jif4vfB6FJlUlSbgEMHUyk1j234GTNG9dBJ4XJdOySoj518Xj0oGsNi59cUQF4RRMS9ouBUxDDdyBVfPTypa5g==",
+      "dev": true,
+      "dependencies": {
+        "@webassemblyjs/ast": "1.12.1",
+        "@webassemblyjs/helper-buffer": "1.12.1",
+        "@webassemblyjs/helper-wasm-bytecode": "1.11.6",
+        "@webassemblyjs/wasm-gen": "1.12.1"
+      }
+    },
+    "node_modules/@webassemblyjs/ieee754": {
+      "version": "1.11.6",
+      "resolved": "https://registry.npmjs.org/@webassemblyjs/ieee754/-/ieee754-1.11.6.tgz",
+      "integrity": "sha512-LM4p2csPNvbij6U1f19v6WR56QZ8JcHg3QIJTlSwzFcmx6WSORicYj6I63f9yU1kEUtrpG+kjkiIAkevHpDXrg==",
+      "dev": true,
+      "dependencies": {
+        "@xtuc/ieee754": "^1.2.0"
+      }
+    },
+    "node_modules/@webassemblyjs/leb128": {
+      "version": "1.11.6",
+      "resolved": "https://registry.npmjs.org/@webassemblyjs/leb128/-/leb128-1.11.6.tgz",
+      "integrity": "sha512-m7a0FhE67DQXgouf1tbN5XQcdWoNgaAuoULHIfGFIEVKA6tu/edls6XnIlkmS6FrXAquJRPni3ZZKjw6FSPjPQ==",
+      "dev": true,
+      "dependencies": {
+        "@xtuc/long": "4.2.2"
+      }
+    },
+    "node_modules/@webassemblyjs/utf8": {
+      "version": "1.11.6",
+      "resolved": "https://registry.npmjs.org/@webassemblyjs/utf8/-/utf8-1.11.6.tgz",
+      "integrity": "sha512-vtXf2wTQ3+up9Zsg8sa2yWiQpzSsMyXj0qViVP6xKGCUT8p8YJ6HqI7l5eCnWx1T/FYdsv07HQs2wTFbbof/RA==",
+      "dev": true
+    },
+    "node_modules/@webassemblyjs/wasm-edit": {
+      "version": "1.12.1",
+      "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-edit/-/wasm-edit-1.12.1.tgz",
+      "integrity": "sha512-1DuwbVvADvS5mGnXbE+c9NfA8QRcZ6iKquqjjmR10k6o+zzsRVesil54DKexiowcFCPdr/Q0qaMgB01+SQ1u6g==",
+      "dev": true,
+      "dependencies": {
+        "@webassemblyjs/ast": "1.12.1",
+        "@webassemblyjs/helper-buffer": "1.12.1",
+        "@webassemblyjs/helper-wasm-bytecode": "1.11.6",
+        "@webassemblyjs/helper-wasm-section": "1.12.1",
+        "@webassemblyjs/wasm-gen": "1.12.1",
+        "@webassemblyjs/wasm-opt": "1.12.1",
+        "@webassemblyjs/wasm-parser": "1.12.1",
+        "@webassemblyjs/wast-printer": "1.12.1"
+      }
+    },
+    "node_modules/@webassemblyjs/wasm-gen": {
+      "version": "1.12.1",
+      "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-gen/-/wasm-gen-1.12.1.tgz",
+      "integrity": "sha512-TDq4Ojh9fcohAw6OIMXqiIcTq5KUXTGRkVxbSo1hQnSy6lAM5GSdfwWeSxpAo0YzgsgF182E/U0mDNhuA0tW7w==",
+      "dev": true,
+      "dependencies": {
+        "@webassemblyjs/ast": "1.12.1",
+        "@webassemblyjs/helper-wasm-bytecode": "1.11.6",
+        "@webassemblyjs/ieee754": "1.11.6",
+        "@webassemblyjs/leb128": "1.11.6",
+        "@webassemblyjs/utf8": "1.11.6"
+      }
+    },
+    "node_modules/@webassemblyjs/wasm-opt": {
+      "version": "1.12.1",
+      "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-opt/-/wasm-opt-1.12.1.tgz",
+      "integrity": "sha512-Jg99j/2gG2iaz3hijw857AVYekZe2SAskcqlWIZXjji5WStnOpVoat3gQfT/Q5tb2djnCjBtMocY/Su1GfxPBg==",
+      "dev": true,
+      "dependencies": {
+        "@webassemblyjs/ast": "1.12.1",
+        "@webassemblyjs/helper-buffer": "1.12.1",
+        "@webassemblyjs/wasm-gen": "1.12.1",
+        "@webassemblyjs/wasm-parser": "1.12.1"
+      }
+    },
+    "node_modules/@webassemblyjs/wasm-parser": {
+      "version": "1.12.1",
+      "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-parser/-/wasm-parser-1.12.1.tgz",
+      "integrity": "sha512-xikIi7c2FHXysxXe3COrVUPSheuBtpcfhbpFj4gmu7KRLYOzANztwUU0IbsqvMqzuNK2+glRGWCEqZo1WCLyAQ==",
+      "dev": true,
+      "dependencies": {
+        "@webassemblyjs/ast": "1.12.1",
+        "@webassemblyjs/helper-api-error": "1.11.6",
+        "@webassemblyjs/helper-wasm-bytecode": "1.11.6",
+        "@webassemblyjs/ieee754": "1.11.6",
+        "@webassemblyjs/leb128": "1.11.6",
+        "@webassemblyjs/utf8": "1.11.6"
+      }
+    },
+    "node_modules/@webassemblyjs/wast-printer": {
+      "version": "1.12.1",
+      "resolved": "https://registry.npmjs.org/@webassemblyjs/wast-printer/-/wast-printer-1.12.1.tgz",
+      "integrity": "sha512-+X4WAlOisVWQMikjbcvY2e0rwPsKQ9F688lksZhBcPycBBuii3O7m8FACbDMWDojpAqvjIncrG8J0XHKyQfVeA==",
+      "dev": true,
+      "dependencies": {
+        "@webassemblyjs/ast": "1.12.1",
+        "@xtuc/long": "4.2.2"
+      }
+    },
+    "node_modules/@webpack-cli/configtest": {
+      "version": "1.2.0",
+      "resolved": "https://registry.npmjs.org/@webpack-cli/configtest/-/configtest-1.2.0.tgz",
+      "integrity": "sha512-4FB8Tj6xyVkyqjj1OaTqCjXYULB9FMkqQ8yGrZjRDrYh0nOE+7Lhs45WioWQQMV+ceFlE368Ukhe6xdvJM9Egg==",
+      "dev": true,
+      "peerDependencies": {
+        "webpack": "4.x.x || 5.x.x",
+        "webpack-cli": "4.x.x"
+      }
+    },
+    "node_modules/@webpack-cli/info": {
+      "version": "1.5.0",
+      "resolved": "https://registry.npmjs.org/@webpack-cli/info/-/info-1.5.0.tgz",
+      "integrity": "sha512-e8tSXZpw2hPl2uMJY6fsMswaok5FdlGNRTktvFk2sD8RjH0hE2+XistawJx1vmKteh4NmGmNUrp+Tb2w+udPcQ==",
+      "dev": true,
+      "dependencies": {
+        "envinfo": "^7.7.3"
+      },
+      "peerDependencies": {
+        "webpack-cli": "4.x.x"
+      }
+    },
+    "node_modules/@webpack-cli/serve": {
+      "version": "1.7.0",
+      "resolved": "https://registry.npmjs.org/@webpack-cli/serve/-/serve-1.7.0.tgz",
+      "integrity": "sha512-oxnCNGj88fL+xzV+dacXs44HcDwf1ovs3AuEzvP7mqXw7fQntqIhQ1BRmynh4qEKQSSSRSWVyXRjmTbZIX9V2Q==",
+      "dev": true,
+      "peerDependencies": {
+        "webpack-cli": "4.x.x"
+      },
+      "peerDependenciesMeta": {
+        "webpack-dev-server": {
+          "optional": true
+        }
+      }
+    },
+    "node_modules/@xmldom/xmldom": {
+      "version": "0.8.10",
+      "resolved": "https://registry.npmjs.org/@xmldom/xmldom/-/xmldom-0.8.10.tgz",
+      "integrity": "sha512-2WALfTl4xo2SkGCYRt6rDTFfk9R1czmBvUQy12gK2KuRKIpWEhcbbzy8EZXtz/jkRqHX8bFEc6FC1HjX4TUWYw==",
+      "dev": true,
+      "engines": {
+        "node": ">=10.0.0"
+      }
+    },
+    "node_modules/@xtuc/ieee754": {
+      "version": "1.2.0",
+      "resolved": "https://registry.npmjs.org/@xtuc/ieee754/-/ieee754-1.2.0.tgz",
+      "integrity": "sha512-DX8nKgqcGwsc0eJSqYt5lwP4DH5FlHnmuWWBRy7X0NcaGR0ZtuyeESgMwTYVEtxmsNGY+qit4QYT/MIYTOTPeA==",
+      "dev": true
+    },
+    "node_modules/@xtuc/long": {
+      "version": "4.2.2",
+      "resolved": "https://registry.npmjs.org/@xtuc/long/-/long-4.2.2.tgz",
+      "integrity": "sha512-NuHqBY1PB/D8xU6s/thBgOAiAP7HOYDQ32+BFZILJ8ivkUkAHQnWfn6WhL79Owj1qmUnoN/YPhktdIoucipkAQ==",
+      "dev": true
+    },
+    "node_modules/7zip-bin": {
+      "version": "5.2.0",
+      "resolved": "https://registry.npmjs.org/7zip-bin/-/7zip-bin-5.2.0.tgz",
+      "integrity": "sha512-ukTPVhqG4jNzMro2qA9HSCSSVJN3aN7tlb+hfqYCt3ER0yWroeA2VR38MNrOHLQ/cVj+DaIMad0kFCtWWowh/A==",
+      "dev": true
+    },
+    "node_modules/acorn": {
+      "version": "8.11.3",
+      "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.11.3.tgz",
+      "integrity": "sha512-Y9rRfJG5jcKOE0CLisYbojUjIrIEE7AGMzA/Sm4BslANhbS+cDMpgBdcPT91oJ7OuJ9hYJBx59RjbhxVnrF8Xg==",
+      "dev": true,
+      "bin": {
+        "acorn": "bin/acorn"
+      },
+      "engines": {
+        "node": ">=0.4.0"
+      }
+    },
+    "node_modules/acorn-import-assertions": {
+      "version": "1.9.0",
+      "resolved": "https://registry.npmjs.org/acorn-import-assertions/-/acorn-import-assertions-1.9.0.tgz",
+      "integrity": "sha512-cmMwop9x+8KFhxvKrKfPYmN6/pKTYYHBqLa0DfvVZcKMJWNyWLnaqND7dx/qn66R7ewM1UX5XMaDVP5wlVTaVA==",
+      "dev": true,
+      "peerDependencies": {
+        "acorn": "^8"
+      }
+    },
+    "node_modules/acorn-jsx": {
+      "version": "5.3.2",
+      "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.2.tgz",
+      "integrity": "sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==",
+      "dev": true,
+      "peerDependencies": {
+        "acorn": "^6.0.0 || ^7.0.0 || ^8.0.0"
+      }
+    },
+    "node_modules/acorn-walk": {
+      "version": "8.3.2",
+      "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-8.3.2.tgz",
+      "integrity": "sha512-cjkyv4OtNCIeqhHrfS81QWXoCBPExR/J62oyEqepVw8WaQeSqpW2uhuLPh1m9eWhDuOo/jUXVTlifvesOWp/4A==",
+      "dev": true,
+      "engines": {
+        "node": ">=0.4.0"
+      }
+    },
+    "node_modules/agent-base": {
+      "version": "6.0.2",
+      "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-6.0.2.tgz",
+      "integrity": "sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ==",
+      "dev": true,
+      "dependencies": {
+        "debug": "4"
+      },
+      "engines": {
+        "node": ">= 6.0.0"
+      }
+    },
+    "node_modules/ajv": {
+      "version": "6.12.6",
+      "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz",
+      "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==",
+      "dev": true,
+      "dependencies": {
+        "fast-deep-equal": "^3.1.1",
+        "fast-json-stable-stringify": "^2.0.0",
+        "json-schema-traverse": "^0.4.1",
+        "uri-js": "^4.2.2"
+      },
+      "funding": {
+        "type": "github",
+        "url": "https://github.com/sponsors/epoberezkin"
+      }
+    },
+    "node_modules/ajv-formats": {
+      "version": "2.1.1",
+      "resolved": "https://registry.npmjs.org/ajv-formats/-/ajv-formats-2.1.1.tgz",
+      "integrity": "sha512-Wx0Kx52hxE7C18hkMEggYlEifqWZtYaRgouJor+WMdPnQyEK13vgEWyVNup7SoeeoLMsr4kf5h6dOW11I15MUA==",
+      "dev": true,
+      "dependencies": {
+        "ajv": "^8.0.0"
+      },
+      "peerDependencies": {
+        "ajv": "^8.0.0"
+      },
+      "peerDependenciesMeta": {
+        "ajv": {
+          "optional": true
+        }
+      }
+    },
+    "node_modules/ajv-formats/node_modules/ajv": {
+      "version": "8.13.0",
+      "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.13.0.tgz",
+      "integrity": "sha512-PRA911Blj99jR5RMeTunVbNXMF6Lp4vZXnk5GQjcnUWUTsrXtekg/pnmFFI2u/I36Y/2bITGS30GZCXei6uNkA==",
+      "dev": true,
+      "dependencies": {
+        "fast-deep-equal": "^3.1.3",
+        "json-schema-traverse": "^1.0.0",
+        "require-from-string": "^2.0.2",
+        "uri-js": "^4.4.1"
+      },
+      "funding": {
+        "type": "github",
+        "url": "https://github.com/sponsors/epoberezkin"
+      }
+    },
+    "node_modules/ajv-formats/node_modules/json-schema-traverse": {
+      "version": "1.0.0",
+      "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz",
+      "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==",
+      "dev": true
+    },
+    "node_modules/ajv-keywords": {
+      "version": "3.5.2",
+      "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-3.5.2.tgz",
+      "integrity": "sha512-5p6WTN0DdTGVQk6VjcEju19IgaHudalcfabD7yhDGeA6bcQnmL+CpveLJq/3hvfwd1aof6L386Ougkx6RfyMIQ==",
+      "dev": true,
+      "peerDependencies": {
+        "ajv": "^6.9.1"
+      }
+    },
+    "node_modules/ansi-regex": {
+      "version": "5.0.1",
+      "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz",
+      "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==",
+      "dev": true,
+      "engines": {
+        "node": ">=8"
+      }
+    },
+    "node_modules/ansi-styles": {
+      "version": "4.3.0",
+      "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
+      "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
+      "dev": true,
+      "dependencies": {
+        "color-convert": "^2.0.1"
+      },
+      "engines": {
+        "node": ">=8"
+      },
+      "funding": {
+        "url": "https://github.com/chalk/ansi-styles?sponsor=1"
+      }
+    },
+    "node_modules/anymatch": {
+      "version": "3.1.3",
+      "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.3.tgz",
+      "integrity": "sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==",
+      "dev": true,
+      "dependencies": {
+        "normalize-path": "^3.0.0",
+        "picomatch": "^2.0.4"
+      },
+      "engines": {
+        "node": ">= 8"
+      }
+    },
+    "node_modules/app-builder-bin": {
+      "version": "4.0.0",
+      "resolved": "https://registry.npmjs.org/app-builder-bin/-/app-builder-bin-4.0.0.tgz",
+      "integrity": "sha512-xwdG0FJPQMe0M0UA4Tz0zEB8rBJTRA5a476ZawAqiBkMv16GRK5xpXThOjMaEOFnZ6zabejjG4J3da0SXG63KA==",
+      "dev": true
+    },
+    "node_modules/app-builder-lib": {
+      "version": "24.13.3",
+      "resolved": "https://registry.npmjs.org/app-builder-lib/-/app-builder-lib-24.13.3.tgz",
+      "integrity": "sha512-FAzX6IBit2POXYGnTCT8YHFO/lr5AapAII6zzhQO3Rw4cEDOgK+t1xhLc5tNcKlicTHlo9zxIwnYCX9X2DLkig==",
+      "dev": true,
+      "dependencies": {
+        "@develar/schema-utils": "~2.6.5",
+        "@electron/notarize": "2.2.1",
+        "@electron/osx-sign": "1.0.5",
+        "@electron/universal": "1.5.1",
+        "@malept/flatpak-bundler": "^0.4.0",
+        "@types/fs-extra": "9.0.13",
+        "async-exit-hook": "^2.0.1",
+        "bluebird-lst": "^1.0.9",
+        "builder-util": "24.13.1",
+        "builder-util-runtime": "9.2.4",
+        "chromium-pickle-js": "^0.2.0",
+        "debug": "^4.3.4",
+        "ejs": "^3.1.8",
+        "electron-publish": "24.13.1",
+        "form-data": "^4.0.0",
+        "fs-extra": "^10.1.0",
+        "hosted-git-info": "^4.1.0",
+        "is-ci": "^3.0.0",
+        "isbinaryfile": "^5.0.0",
+        "js-yaml": "^4.1.0",
+        "lazy-val": "^1.0.5",
+        "minimatch": "^5.1.1",
+        "read-config-file": "6.3.2",
+        "sanitize-filename": "^1.6.3",
+        "semver": "^7.3.8",
+        "tar": "^6.1.12",
+        "temp-file": "^3.4.0"
+      },
+      "engines": {
+        "node": ">=14.0.0"
+      },
+      "peerDependencies": {
+        "dmg-builder": "24.13.3",
+        "electron-builder-squirrel-windows": "24.13.3"
+      }
+    },
+    "node_modules/app-builder-lib/node_modules/fs-extra": {
+      "version": "10.1.0",
+      "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-10.1.0.tgz",
+      "integrity": "sha512-oRXApq54ETRj4eMiFzGnHWGy+zo5raudjuxN0b8H7s/RU2oW0Wvsx9O0ACRN/kRq9E8Vu/ReskGB5o3ji+FzHQ==",
+      "dev": true,
+      "dependencies": {
+        "graceful-fs": "^4.2.0",
+        "jsonfile": "^6.0.1",
+        "universalify": "^2.0.0"
+      },
+      "engines": {
+        "node": ">=12"
+      }
+    },
+    "node_modules/app-builder-lib/node_modules/jsonfile": {
+      "version": "6.1.0",
+      "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-6.1.0.tgz",
+      "integrity": "sha512-5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ==",
+      "dev": true,
+      "dependencies": {
+        "universalify": "^2.0.0"
+      },
+      "optionalDependencies": {
+        "graceful-fs": "^4.1.6"
+      }
+    },
+    "node_modules/app-builder-lib/node_modules/universalify": {
+      "version": "2.0.1",
+      "resolved": "https://registry.npmjs.org/universalify/-/universalify-2.0.1.tgz",
+      "integrity": "sha512-gptHNQghINnc/vTGIk0SOFGFNXw7JVrlRUtConJRlvaw6DuX0wO5Jeko9sWrMBhh+PsYAZ7oXAiOnf/UKogyiw==",
+      "dev": true,
+      "engines": {
+        "node": ">= 10.0.0"
+      }
+    },
+    "node_modules/archiver": {
+      "version": "5.3.2",
+      "resolved": "https://registry.npmjs.org/archiver/-/archiver-5.3.2.tgz",
+      "integrity": "sha512-+25nxyyznAXF7Nef3y0EbBeqmGZgeN/BxHX29Rs39djAfaFalmQ89SE6CWyDCHzGL0yt/ycBtNOmGTW0FyGWNw==",
+      "dev": true,
+      "peer": true,
+      "dependencies": {
+        "archiver-utils": "^2.1.0",
+        "async": "^3.2.4",
+        "buffer-crc32": "^0.2.1",
+        "readable-stream": "^3.6.0",
+        "readdir-glob": "^1.1.2",
+        "tar-stream": "^2.2.0",
+        "zip-stream": "^4.1.0"
+      },
+      "engines": {
+        "node": ">= 10"
+      }
+    },
+    "node_modules/archiver-utils": {
+      "version": "2.1.0",
+      "resolved": "https://registry.npmjs.org/archiver-utils/-/archiver-utils-2.1.0.tgz",
+      "integrity": "sha512-bEL/yUb/fNNiNTuUz979Z0Yg5L+LzLxGJz8x79lYmR54fmTIb6ob/hNQgkQnIUDWIFjZVQwl9Xs356I6BAMHfw==",
+      "dev": true,
+      "peer": true,
+      "dependencies": {
+        "glob": "^7.1.4",
+        "graceful-fs": "^4.2.0",
+        "lazystream": "^1.0.0",
+        "lodash.defaults": "^4.2.0",
+        "lodash.difference": "^4.5.0",
+        "lodash.flatten": "^4.4.0",
+        "lodash.isplainobject": "^4.0.6",
+        "lodash.union": "^4.6.0",
+        "normalize-path": "^3.0.0",
+        "readable-stream": "^2.0.0"
+      },
+      "engines": {
+        "node": ">= 6"
+      }
+    },
+    "node_modules/archiver-utils/node_modules/readable-stream": {
+      "version": "2.3.8",
+      "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.8.tgz",
+      "integrity": "sha512-8p0AUk4XODgIewSi0l8Epjs+EVnWiK7NoDIEGU0HhE7+ZyY8D1IMY7odu5lRrFXGg71L15KG8QrPmum45RTtdA==",
+      "dev": true,
+      "peer": true,
+      "dependencies": {
+        "core-util-is": "~1.0.0",
+        "inherits": "~2.0.3",
+        "isarray": "~1.0.0",
+        "process-nextick-args": "~2.0.0",
+        "safe-buffer": "~5.1.1",
+        "string_decoder": "~1.1.1",
+        "util-deprecate": "~1.0.1"
+      }
+    },
+    "node_modules/archiver-utils/node_modules/safe-buffer": {
+      "version": "5.1.2",
+      "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz",
+      "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==",
+      "dev": true,
+      "peer": true
+    },
+    "node_modules/archiver-utils/node_modules/string_decoder": {
+      "version": "1.1.1",
+      "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz",
+      "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==",
+      "dev": true,
+      "peer": true,
+      "dependencies": {
+        "safe-buffer": "~5.1.0"
+      }
+    },
+    "node_modules/argparse": {
+      "version": "2.0.1",
+      "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz",
+      "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==",
+      "dev": true
+    },
+    "node_modules/array-union": {
+      "version": "2.1.0",
+      "resolved": "https://registry.npmjs.org/array-union/-/array-union-2.1.0.tgz",
+      "integrity": "sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==",
+      "dev": true,
+      "engines": {
+        "node": ">=8"
+      }
+    },
+    "node_modules/array-uniq": {
+      "version": "1.0.3",
+      "resolved": "https://registry.npmjs.org/array-uniq/-/array-uniq-1.0.3.tgz",
+      "integrity": "sha512-MNha4BWQ6JbwhFhj03YK552f7cb3AzoE8SzeljgChvL1dl3IcvggXVz1DilzySZkCja+CXuZbdW7yATchWn8/Q==",
+      "dev": true,
+      "engines": {
+        "node": ">=0.10.0"
+      }
+    },
+    "node_modules/assert-plus": {
+      "version": "1.0.0",
+      "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz",
+      "integrity": "sha512-NfJ4UzBCcQGLDlQq7nHxH+tv3kyZ0hHQqF5BO6J7tNJeP5do1llPr8dZ8zHonfhAu0PHAdMkSo+8o0wxg9lZWw==",
+      "dev": true,
+      "optional": true,
+      "engines": {
+        "node": ">=0.8"
+      }
+    },
+    "node_modules/astral-regex": {
+      "version": "2.0.0",
+      "resolved": "https://registry.npmjs.org/astral-regex/-/astral-regex-2.0.0.tgz",
+      "integrity": "sha512-Z7tMw1ytTXt5jqMcOP+OQteU1VuNK9Y02uuJtKQ1Sv69jXQKKg5cibLwGJow8yzZP+eAc18EmLGPal0bp36rvQ==",
+      "dev": true,
+      "optional": true,
+      "engines": {
+        "node": ">=8"
+      }
+    },
+    "node_modules/async": {
+      "version": "3.2.5",
+      "resolved": "https://registry.npmjs.org/async/-/async-3.2.5.tgz",
+      "integrity": "sha512-baNZyqaaLhyLVKm/DlvdW051MSgO6b8eVfIezl9E5PqWxFgzLm/wQntEW4zOytVburDEr0JlALEpdOFwvErLsg==",
+      "dev": true
+    },
+    "node_modules/async-exit-hook": {
+      "version": "2.0.1",
+      "resolved": "https://registry.npmjs.org/async-exit-hook/-/async-exit-hook-2.0.1.tgz",
+      "integrity": "sha512-NW2cX8m1Q7KPA7a5M2ULQeZ2wR5qI5PAbw5L0UOMxdioVk9PMZ0h1TmyZEkPYrCvYjDlFICusOu1dlEKAAeXBw==",
+      "dev": true,
+      "engines": {
+        "node": ">=0.12.0"
+      }
+    },
+    "node_modules/asynckit": {
+      "version": "0.4.0",
+      "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz",
+      "integrity": "sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==",
+      "dev": true
+    },
+    "node_modules/at-least-node": {
+      "version": "1.0.0",
+      "resolved": "https://registry.npmjs.org/at-least-node/-/at-least-node-1.0.0.tgz",
+      "integrity": "sha512-+q/t7Ekv1EDY2l6Gda6LLiX14rU9TV20Wa3ofeQmwPFZbOMo9DXrLbOjFaaclkXKWidIaopwAObQDqwWtGUjqg==",
+      "dev": true,
+      "engines": {
+        "node": ">= 4.0.0"
+      }
+    },
+    "node_modules/balanced-match": {
+      "version": "1.0.2",
+      "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz",
+      "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==",
+      "dev": true
+    },
+    "node_modules/base64-js": {
+      "version": "1.5.1",
+      "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz",
+      "integrity": "sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==",
+      "dev": true,
+      "funding": [
+        {
+          "type": "github",
+          "url": "https://github.com/sponsors/feross"
+        },
+        {
+          "type": "patreon",
+          "url": "https://www.patreon.com/feross"
+        },
+        {
+          "type": "consulting",
+          "url": "https://feross.org/support"
+        }
+      ]
+    },
+    "node_modules/big.js": {
+      "version": "5.2.2",
+      "resolved": "https://registry.npmjs.org/big.js/-/big.js-5.2.2.tgz",
+      "integrity": "sha512-vyL2OymJxmarO8gxMr0mhChsO9QGwhynfuu4+MHTAW6czfq9humCB7rKpUjDd9YUiDPU4mzpyupFSvOClAwbmQ==",
+      "dev": true,
+      "engines": {
+        "node": "*"
+      }
+    },
+    "node_modules/binary-extensions": {
+      "version": "2.3.0",
+      "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.3.0.tgz",
+      "integrity": "sha512-Ceh+7ox5qe7LJuLHoY0feh3pHuUDHAcRUeyL2VYghZwfpkNIy/+8Ocg0a3UuSoYzavmylwuLWQOf3hl0jjMMIw==",
+      "dev": true,
+      "engines": {
+        "node": ">=8"
+      },
+      "funding": {
+        "url": "https://github.com/sponsors/sindresorhus"
+      }
+    },
+    "node_modules/bl": {
+      "version": "4.1.0",
+      "resolved": "https://registry.npmjs.org/bl/-/bl-4.1.0.tgz",
+      "integrity": "sha512-1W07cM9gS6DcLperZfFSj+bWLtaPGSOHWhPiGzXmvVJbRLdG82sH/Kn8EtW1VqWVA54AKf2h5k5BbnIbwF3h6w==",
+      "dev": true,
+      "peer": true,
+      "dependencies": {
+        "buffer": "^5.5.0",
+        "inherits": "^2.0.4",
+        "readable-stream": "^3.4.0"
+      }
+    },
+    "node_modules/bluebird": {
+      "version": "3.7.2",
+      "resolved": "https://registry.npmjs.org/bluebird/-/bluebird-3.7.2.tgz",
+      "integrity": "sha512-XpNj6GDQzdfW+r2Wnn7xiSAd7TM3jzkxGXBGTtWKuSXv1xUV+azxAm8jdWZN06QTQk+2N2XB9jRDkvbmQmcRtg==",
+      "dev": true
+    },
+    "node_modules/bluebird-lst": {
+      "version": "1.0.9",
+      "resolved": "https://registry.npmjs.org/bluebird-lst/-/bluebird-lst-1.0.9.tgz",
+      "integrity": "sha512-7B1Rtx82hjnSD4PGLAjVWeYH3tHAcVUmChh85a3lltKQm6FresXh9ErQo6oAv6CqxttczC3/kEg8SY5NluPuUw==",
+      "dev": true,
+      "dependencies": {
+        "bluebird": "^3.5.5"
+      }
+    },
+    "node_modules/blueimp-md5": {
+      "version": "2.19.0",
+      "resolved": "https://registry.npmjs.org/blueimp-md5/-/blueimp-md5-2.19.0.tgz",
+      "integrity": "sha512-DRQrD6gJyy8FbiE4s+bDoXS9hiW3Vbx5uCdwvcCf3zLHL+Iv7LtGHLpr+GZV8rHG8tK766FGYBwRbu8pELTt+w==",
+      "dev": true
+    },
+    "node_modules/boolbase": {
+      "version": "1.0.0",
+      "resolved": "https://registry.npmjs.org/boolbase/-/boolbase-1.0.0.tgz",
+      "integrity": "sha512-JZOSA7Mo9sNGB8+UjSgzdLtokWAky1zbztM3WRLCbZ70/3cTANmQmOdR7y2g+J0e2WXywy1yS468tY+IruqEww==",
+      "dev": true
+    },
+    "node_modules/boolean": {
+      "version": "3.2.0",
+      "resolved": "https://registry.npmjs.org/boolean/-/boolean-3.2.0.tgz",
+      "integrity": "sha512-d0II/GO9uf9lfUHH2BQsjxzRJZBdsjgsBiW4BvhWk/3qoKwQFjIDVN19PfX8F2D/r9PCMTtLWjYVCFrpeYUzsw==",
+      "optional": true
+    },
+    "node_modules/brace-expansion": {
+      "version": "2.0.1",
+      "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz",
+      "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==",
+      "dev": true,
+      "dependencies": {
+        "balanced-match": "^1.0.0"
+      }
+    },
+    "node_modules/braces": {
+      "version": "3.0.2",
+      "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz",
+      "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==",
+      "dev": true,
+      "dependencies": {
+        "fill-range": "^7.0.1"
+      },
+      "engines": {
+        "node": ">=8"
+      }
+    },
+    "node_modules/browserslist": {
+      "version": "4.23.0",
+      "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.23.0.tgz",
+      "integrity": "sha512-QW8HiM1shhT2GuzkvklfjcKDiWFXHOeFCIA/huJPwHsslwcydgk7X+z2zXpEijP98UCY7HbubZt5J2Zgvf0CaQ==",
+      "dev": true,
+      "funding": [
+        {
+          "type": "opencollective",
+          "url": "https://opencollective.com/browserslist"
+        },
+        {
+          "type": "tidelift",
+          "url": "https://tidelift.com/funding/github/npm/browserslist"
+        },
+        {
+          "type": "github",
+          "url": "https://github.com/sponsors/ai"
+        }
+      ],
+      "dependencies": {
+        "caniuse-lite": "^1.0.30001587",
+        "electron-to-chromium": "^1.4.668",
+        "node-releases": "^2.0.14",
+        "update-browserslist-db": "^1.0.13"
+      },
+      "bin": {
+        "browserslist": "cli.js"
+      },
+      "engines": {
+        "node": "^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7"
+      }
+    },
+    "node_modules/buffer": {
+      "version": "5.7.1",
+      "resolved": "https://registry.npmjs.org/buffer/-/buffer-5.7.1.tgz",
+      "integrity": "sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ==",
+      "dev": true,
+      "funding": [
+        {
+          "type": "github",
+          "url": "https://github.com/sponsors/feross"
+        },
+        {
+          "type": "patreon",
+          "url": "https://www.patreon.com/feross"
+        },
+        {
+          "type": "consulting",
+          "url": "https://feross.org/support"
+        }
+      ],
+      "dependencies": {
+        "base64-js": "^1.3.1",
+        "ieee754": "^1.1.13"
+      }
+    },
+    "node_modules/buffer-crc32": {
+      "version": "0.2.13",
+      "resolved": "https://registry.npmjs.org/buffer-crc32/-/buffer-crc32-0.2.13.tgz",
+      "integrity": "sha512-VO9Ht/+p3SN7SKWqcrgEzjGbRSJYTx+Q1pTQC0wrWqHx0vpJraQ6GtHx8tvcg1rlK1byhU5gccxgOgj7B0TDkQ==",
+      "engines": {
+        "node": "*"
+      }
+    },
+    "node_modules/buffer-equal": {
+      "version": "1.0.1",
+      "resolved": "https://registry.npmjs.org/buffer-equal/-/buffer-equal-1.0.1.tgz",
+      "integrity": "sha512-QoV3ptgEaQpvVwbXdSO39iqPQTCxSF7A5U99AxbHYqUdCizL/lH2Z0A2y6nbZucxMEOtNyZfG2s6gsVugGpKkg==",
+      "dev": true,
+      "engines": {
+        "node": ">=0.4"
+      },
+      "funding": {
+        "url": "https://github.com/sponsors/ljharb"
+      }
+    },
+    "node_modules/buffer-from": {
+      "version": "1.1.2",
+      "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz",
+      "integrity": "sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==",
+      "dev": true
+    },
+    "node_modules/builder-util": {
+      "version": "24.13.1",
+      "resolved": "https://registry.npmjs.org/builder-util/-/builder-util-24.13.1.tgz",
+      "integrity": "sha512-NhbCSIntruNDTOVI9fdXz0dihaqX2YuE1D6zZMrwiErzH4ELZHE6mdiB40wEgZNprDia+FghRFgKoAqMZRRjSA==",
+      "dev": true,
+      "dependencies": {
+        "@types/debug": "^4.1.6",
+        "7zip-bin": "~5.2.0",
+        "app-builder-bin": "4.0.0",
+        "bluebird-lst": "^1.0.9",
+        "builder-util-runtime": "9.2.4",
+        "chalk": "^4.1.2",
+        "cross-spawn": "^7.0.3",
+        "debug": "^4.3.4",
+        "fs-extra": "^10.1.0",
+        "http-proxy-agent": "^5.0.0",
+        "https-proxy-agent": "^5.0.1",
+        "is-ci": "^3.0.0",
+        "js-yaml": "^4.1.0",
+        "source-map-support": "^0.5.19",
+        "stat-mode": "^1.0.0",
+        "temp-file": "^3.4.0"
+      }
+    },
+    "node_modules/builder-util-runtime": {
+      "version": "9.2.4",
+      "resolved": "https://registry.npmjs.org/builder-util-runtime/-/builder-util-runtime-9.2.4.tgz",
+      "integrity": "sha512-upp+biKpN/XZMLim7aguUyW8s0FUpDvOtK6sbanMFDAMBzpHDqdhgVYm6zc9HJ6nWo7u2Lxk60i2M6Jd3aiNrA==",
+      "dev": true,
+      "dependencies": {
+        "debug": "^4.3.4",
+        "sax": "^1.2.4"
+      },
+      "engines": {
+        "node": ">=12.0.0"
+      }
+    },
+    "node_modules/builder-util/node_modules/fs-extra": {
+      "version": "10.1.0",
+      "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-10.1.0.tgz",
+      "integrity": "sha512-oRXApq54ETRj4eMiFzGnHWGy+zo5raudjuxN0b8H7s/RU2oW0Wvsx9O0ACRN/kRq9E8Vu/ReskGB5o3ji+FzHQ==",
+      "dev": true,
+      "dependencies": {
+        "graceful-fs": "^4.2.0",
+        "jsonfile": "^6.0.1",
+        "universalify": "^2.0.0"
+      },
+      "engines": {
+        "node": ">=12"
+      }
+    },
+    "node_modules/builder-util/node_modules/jsonfile": {
+      "version": "6.1.0",
+      "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-6.1.0.tgz",
+      "integrity": "sha512-5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ==",
+      "dev": true,
+      "dependencies": {
+        "universalify": "^2.0.0"
+      },
+      "optionalDependencies": {
+        "graceful-fs": "^4.1.6"
+      }
+    },
+    "node_modules/builder-util/node_modules/universalify": {
+      "version": "2.0.1",
+      "resolved": "https://registry.npmjs.org/universalify/-/universalify-2.0.1.tgz",
+      "integrity": "sha512-gptHNQghINnc/vTGIk0SOFGFNXw7JVrlRUtConJRlvaw6DuX0wO5Jeko9sWrMBhh+PsYAZ7oXAiOnf/UKogyiw==",
+      "dev": true,
+      "engines": {
+        "node": ">= 10.0.0"
+      }
+    },
+    "node_modules/cacheable-lookup": {
+      "version": "5.0.4",
+      "resolved": "https://registry.npmjs.org/cacheable-lookup/-/cacheable-lookup-5.0.4.tgz",
+      "integrity": "sha512-2/kNscPhpcxrOigMZzbiWF7dz8ilhb/nIHU3EyZiXWXpeq/au8qJ8VhdftMkty3n7Gj6HIGalQG8oiBNB3AJgA==",
+      "engines": {
+        "node": ">=10.6.0"
+      }
+    },
+    "node_modules/cacheable-request": {
+      "version": "7.0.4",
+      "resolved": "https://registry.npmjs.org/cacheable-request/-/cacheable-request-7.0.4.tgz",
+      "integrity": "sha512-v+p6ongsrp0yTGbJXjgxPow2+DL93DASP4kXCDKb8/bwRtt9OEF3whggkkDkGNzgcWy2XaF4a8nZglC7uElscg==",
+      "dependencies": {
+        "clone-response": "^1.0.2",
+        "get-stream": "^5.1.0",
+        "http-cache-semantics": "^4.0.0",
+        "keyv": "^4.0.0",
+        "lowercase-keys": "^2.0.0",
+        "normalize-url": "^6.0.1",
+        "responselike": "^2.0.0"
+      },
+      "engines": {
+        "node": ">=8"
+      }
+    },
+    "node_modules/callsites": {
+      "version": "3.1.0",
+      "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz",
+      "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==",
+      "dev": true,
+      "engines": {
+        "node": ">=6"
+      }
+    },
+    "node_modules/camel-case": {
+      "version": "4.1.2",
+      "resolved": "https://registry.npmjs.org/camel-case/-/camel-case-4.1.2.tgz",
+      "integrity": "sha512-gxGWBrTT1JuMx6R+o5PTXMmUnhnVzLQ9SNutD4YqKtI6ap897t3tKECYla6gCWEkplXnlNybEkZg9GEGxKFCgw==",
+      "dev": true,
+      "dependencies": {
+        "pascal-case": "^3.1.2",
+        "tslib": "^2.0.3"
+      }
+    },
+    "node_modules/caniuse-lite": {
+      "version": "1.0.30001616",
+      "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001616.tgz",
+      "integrity": "sha512-RHVYKov7IcdNjVHJFNY/78RdG4oGVjbayxv8u5IO74Wv7Hlq4PnJE6mo/OjFijjVFNy5ijnCt6H3IIo4t+wfEw==",
+      "dev": true,
+      "funding": [
+        {
+          "type": "opencollective",
+          "url": "https://opencollective.com/browserslist"
+        },
+        {
+          "type": "tidelift",
+          "url": "https://tidelift.com/funding/github/npm/caniuse-lite"
+        },
+        {
+          "type": "github",
+          "url": "https://github.com/sponsors/ai"
+        }
+      ]
+    },
+    "node_modules/chalk": {
+      "version": "4.1.2",
+      "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz",
+      "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==",
+      "dev": true,
+      "dependencies": {
+        "ansi-styles": "^4.1.0",
+        "supports-color": "^7.1.0"
+      },
+      "engines": {
+        "node": ">=10"
+      },
+      "funding": {
+        "url": "https://github.com/chalk/chalk?sponsor=1"
+      }
+    },
+    "node_modules/chokidar": {
+      "version": "3.6.0",
+      "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.6.0.tgz",
+      "integrity": "sha512-7VT13fmjotKpGipCW9JEQAusEPE+Ei8nl6/g4FBAmIm0GOOLMua9NDDo/DWp0ZAxCr3cPq5ZpBqmPAQgDda2Pw==",
+      "dev": true,
+      "dependencies": {
+        "anymatch": "~3.1.2",
+        "braces": "~3.0.2",
+        "glob-parent": "~5.1.2",
+        "is-binary-path": "~2.1.0",
+        "is-glob": "~4.0.1",
+        "normalize-path": "~3.0.0",
+        "readdirp": "~3.6.0"
+      },
+      "engines": {
+        "node": ">= 8.10.0"
+      },
+      "funding": {
+        "url": "https://paulmillr.com/funding/"
+      },
+      "optionalDependencies": {
+        "fsevents": "~2.3.2"
+      }
+    },
+    "node_modules/chokidar/node_modules/glob-parent": {
+      "version": "5.1.2",
+      "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz",
+      "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==",
+      "dev": true,
+      "dependencies": {
+        "is-glob": "^4.0.1"
+      },
+      "engines": {
+        "node": ">= 6"
+      }
+    },
+    "node_modules/chownr": {
+      "version": "2.0.0",
+      "resolved": "https://registry.npmjs.org/chownr/-/chownr-2.0.0.tgz",
+      "integrity": "sha512-bIomtDF5KGpdogkLd9VspvFzk9KfpyyGlS8YFVZl7TGPBHL5snIOnxeshwVgPteQ9b4Eydl+pVbIyE1DcvCWgQ==",
+      "dev": true,
+      "engines": {
+        "node": ">=10"
+      }
+    },
+    "node_modules/chrome-trace-event": {
+      "version": "1.0.3",
+      "resolved": "https://registry.npmjs.org/chrome-trace-event/-/chrome-trace-event-1.0.3.tgz",
+      "integrity": "sha512-p3KULyQg4S7NIHixdwbGX+nFHkoBiA4YQmyWtjb8XngSKV124nJmRysgAeujbUVb15vh+RvFUfCPqU7rXk+hZg==",
+      "dev": true,
+      "engines": {
+        "node": ">=6.0"
+      }
+    },
+    "node_modules/chromium-pickle-js": {
+      "version": "0.2.0",
+      "resolved": "https://registry.npmjs.org/chromium-pickle-js/-/chromium-pickle-js-0.2.0.tgz",
+      "integrity": "sha512-1R5Fho+jBq0DDydt+/vHWj5KJNJCKdARKOCwZUen84I5BreWoLqRLANH1U87eJy1tiASPtMnGqJJq0ZsLoRPOw==",
+      "dev": true
+    },
+    "node_modules/ci-info": {
+      "version": "3.9.0",
+      "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-3.9.0.tgz",
+      "integrity": "sha512-NIxF55hv4nSqQswkAeiOi1r83xy8JldOFDTWiug55KBu9Jnblncd2U6ViHmYgHf01TPZS77NJBhBMKdWj9HQMQ==",
+      "dev": true,
+      "funding": [
+        {
+          "type": "github",
+          "url": "https://github.com/sponsors/sibiraj-s"
+        }
+      ],
+      "engines": {
+        "node": ">=8"
+      }
+    },
+    "node_modules/clean-css": {
+      "version": "4.2.4",
+      "resolved": "https://registry.npmjs.org/clean-css/-/clean-css-4.2.4.tgz",
+      "integrity": "sha512-EJUDT7nDVFDvaQgAo2G/PJvxmp1o/c6iXLbswsBbUFXi1Nr+AjA2cKmfbKDMjMvzEe75g3P6JkaDDAKk96A85A==",
+      "dev": true,
+      "dependencies": {
+        "source-map": "~0.6.0"
+      },
+      "engines": {
+        "node": ">= 4.0"
+      }
+    },
+    "node_modules/clean-webpack-plugin": {
+      "version": "4.0.0",
+      "resolved": "https://registry.npmjs.org/clean-webpack-plugin/-/clean-webpack-plugin-4.0.0.tgz",
+      "integrity": "sha512-WuWE1nyTNAyW5T7oNyys2EN0cfP2fdRxhxnIQWiAp0bMabPdHhoGxM8A6YL2GhqwgrPnnaemVE7nv5XJ2Fhh2w==",
+      "dev": true,
+      "dependencies": {
+        "del": "^4.1.1"
+      },
+      "engines": {
+        "node": ">=10.0.0"
+      },
+      "peerDependencies": {
+        "webpack": ">=4.0.0 <6.0.0"
+      }
+    },
+    "node_modules/cli-truncate": {
+      "version": "2.1.0",
+      "resolved": "https://registry.npmjs.org/cli-truncate/-/cli-truncate-2.1.0.tgz",
+      "integrity": "sha512-n8fOixwDD6b/ObinzTrp1ZKFzbgvKZvuz/TvejnLn1aQfC6r52XEx85FmuC+3HI+JM7coBRXUvNqEU2PHVrHpg==",
+      "dev": true,
+      "optional": true,
+      "dependencies": {
+        "slice-ansi": "^3.0.0",
+        "string-width": "^4.2.0"
+      },
+      "engines": {
+        "node": ">=8"
+      },
+      "funding": {
+        "url": "https://github.com/sponsors/sindresorhus"
+      }
+    },
+    "node_modules/cliui": {
+      "version": "8.0.1",
+      "resolved": "https://registry.npmjs.org/cliui/-/cliui-8.0.1.tgz",
+      "integrity": "sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ==",
+      "dev": true,
+      "dependencies": {
+        "string-width": "^4.2.0",
+        "strip-ansi": "^6.0.1",
+        "wrap-ansi": "^7.0.0"
+      },
+      "engines": {
+        "node": ">=12"
+      }
+    },
+    "node_modules/clone-deep": {
+      "version": "4.0.1",
+      "resolved": "https://registry.npmjs.org/clone-deep/-/clone-deep-4.0.1.tgz",
+      "integrity": "sha512-neHB9xuzh/wk0dIHweyAXv2aPGZIVk3pLMe+/RNzINf17fe0OG96QroktYAUm7SM1PBnzTabaLboqqxDyMU+SQ==",
+      "dev": true,
+      "dependencies": {
+        "is-plain-object": "^2.0.4",
+        "kind-of": "^6.0.2",
+        "shallow-clone": "^3.0.0"
+      },
+      "engines": {
+        "node": ">=6"
+      }
+    },
+    "node_modules/clone-response": {
+      "version": "1.0.3",
+      "resolved": "https://registry.npmjs.org/clone-response/-/clone-response-1.0.3.tgz",
+      "integrity": "sha512-ROoL94jJH2dUVML2Y/5PEDNaSHgeOdSDicUyS7izcF63G6sTc/FTjLub4b8Il9S8S0beOfYt0TaA5qvFK+w0wA==",
+      "dependencies": {
+        "mimic-response": "^1.0.0"
+      },
+      "funding": {
+        "url": "https://github.com/sponsors/sindresorhus"
+      }
+    },
+    "node_modules/color-convert": {
+      "version": "2.0.1",
+      "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
+      "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
+      "dev": true,
+      "dependencies": {
+        "color-name": "~1.1.4"
+      },
+      "engines": {
+        "node": ">=7.0.0"
+      }
+    },
+    "node_modules/color-name": {
+      "version": "1.1.4",
+      "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
+      "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==",
+      "dev": true
+    },
+    "node_modules/colorette": {
+      "version": "2.0.20",
+      "resolved": "https://registry.npmjs.org/colorette/-/colorette-2.0.20.tgz",
+      "integrity": "sha512-IfEDxwoWIjkeXL1eXcDiow4UbKjhLdq6/EuSVR9GMN7KVH3r9gQ83e73hsz1Nd1T3ijd5xv1wcWRYO+D6kCI2w==",
+      "dev": true
+    },
+    "node_modules/combined-stream": {
+      "version": "1.0.8",
+      "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz",
+      "integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==",
+      "dev": true,
+      "dependencies": {
+        "delayed-stream": "~1.0.0"
+      },
+      "engines": {
+        "node": ">= 0.8"
+      }
+    },
+    "node_modules/commander": {
+      "version": "5.1.0",
+      "resolved": "https://registry.npmjs.org/commander/-/commander-5.1.0.tgz",
+      "integrity": "sha512-P0CysNDQ7rtVw4QIQtm+MRxV66vKFSvlsQvGYXZWR3qFU0jlMKHZZZgw8e+8DSah4UDKMqnknRDQz+xuQXQ/Zg==",
+      "dev": true,
+      "engines": {
+        "node": ">= 6"
+      }
+    },
+    "node_modules/compare-version": {
+      "version": "0.1.2",
+      "resolved": "https://registry.npmjs.org/compare-version/-/compare-version-0.1.2.tgz",
+      "integrity": "sha512-pJDh5/4wrEnXX/VWRZvruAGHkzKdr46z11OlTPN+VrATlWWhSKewNCJ1futCO5C7eJB3nPMFZA1LeYtcFboZ2A==",
+      "dev": true,
+      "engines": {
+        "node": ">=0.10.0"
+      }
+    },
+    "node_modules/compress-commons": {
+      "version": "4.1.2",
+      "resolved": "https://registry.npmjs.org/compress-commons/-/compress-commons-4.1.2.tgz",
+      "integrity": "sha512-D3uMHtGc/fcO1Gt1/L7i1e33VOvD4A9hfQLP+6ewd+BvG/gQ84Yh4oftEhAdjSMgBgwGL+jsppT7JYNpo6MHHg==",
+      "dev": true,
+      "peer": true,
+      "dependencies": {
+        "buffer-crc32": "^0.2.13",
+        "crc32-stream": "^4.0.2",
+        "normalize-path": "^3.0.0",
+        "readable-stream": "^3.6.0"
+      },
+      "engines": {
+        "node": ">= 10"
+      }
+    },
+    "node_modules/concat-map": {
+      "version": "0.0.1",
+      "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz",
+      "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==",
+      "dev": true
+    },
+    "node_modules/config-file-ts": {
+      "version": "0.2.6",
+      "resolved": "https://registry.npmjs.org/config-file-ts/-/config-file-ts-0.2.6.tgz",
+      "integrity": "sha512-6boGVaglwblBgJqGyxm4+xCmEGcWgnWHSWHY5jad58awQhB6gftq0G8HbzU39YqCIYHMLAiL1yjwiZ36m/CL8w==",
+      "dev": true,
+      "dependencies": {
+        "glob": "^10.3.10",
+        "typescript": "^5.3.3"
+      }
+    },
+    "node_modules/config-file-ts/node_modules/glob": {
+      "version": "10.3.12",
+      "resolved": "https://registry.npmjs.org/glob/-/glob-10.3.12.tgz",
+      "integrity": "sha512-TCNv8vJ+xz4QiqTpfOJA7HvYv+tNIRHKfUWw/q+v2jdgN4ebz+KY9tGx5J4rHP0o84mNP+ApH66HRX8us3Khqg==",
+      "dev": true,
+      "dependencies": {
+        "foreground-child": "^3.1.0",
+        "jackspeak": "^2.3.6",
+        "minimatch": "^9.0.1",
+        "minipass": "^7.0.4",
+        "path-scurry": "^1.10.2"
+      },
+      "bin": {
+        "glob": "dist/esm/bin.mjs"
+      },
+      "engines": {
+        "node": ">=16 || 14 >=14.17"
+      },
+      "funding": {
+        "url": "https://github.com/sponsors/isaacs"
+      }
+    },
+    "node_modules/config-file-ts/node_modules/minimatch": {
+      "version": "9.0.4",
+      "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.4.tgz",
+      "integrity": "sha512-KqWh+VchfxcMNRAJjj2tnsSJdNbHsVgnkBhTNrW7AjVo6OvLtxw8zfT9oLw1JSohlFzJ8jCoTgaoXvJ+kHt6fw==",
+      "dev": true,
+      "dependencies": {
+        "brace-expansion": "^2.0.1"
+      },
+      "engines": {
+        "node": ">=16 || 14 >=14.17"
+      },
+      "funding": {
+        "url": "https://github.com/sponsors/isaacs"
+      }
+    },
+    "node_modules/config-file-ts/node_modules/minipass": {
+      "version": "7.1.0",
+      "resolved": "https://registry.npmjs.org/minipass/-/minipass-7.1.0.tgz",
+      "integrity": "sha512-oGZRv2OT1lO2UF1zUcwdTb3wqUwI0kBGTgt/T7OdSj6M6N5m3o5uPf0AIW6lVxGGoiWUR7e2AwTE+xiwK8WQig==",
+      "dev": true,
+      "engines": {
+        "node": ">=16 || 14 >=14.17"
+      }
+    },
+    "node_modules/config-file-ts/node_modules/typescript": {
+      "version": "5.4.5",
+      "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.4.5.tgz",
+      "integrity": "sha512-vcI4UpRgg81oIRUFwR0WSIHKt11nJ7SAVlYNIu+QpqeyXP+gpQJy/Z4+F0aGxSE4MqwjyXvW/TzgkLAx2AGHwQ==",
+      "dev": true,
+      "bin": {
+        "tsc": "bin/tsc",
+        "tsserver": "bin/tsserver"
+      },
+      "engines": {
+        "node": ">=14.17"
+      }
+    },
+    "node_modules/core-util-is": {
+      "version": "1.0.2",
+      "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz",
+      "integrity": "sha512-3lqz5YjWTYnW6dlDa5TLaTCcShfar1e40rmcJVwCBJC6mWlFuj0eCHIElmG1g5kyuJ/GD+8Wn4FFCcz4gJPfaQ==",
+      "dev": true
+    },
+    "node_modules/crc": {
+      "version": "3.8.0",
+      "resolved": "https://registry.npmjs.org/crc/-/crc-3.8.0.tgz",
+      "integrity": "sha512-iX3mfgcTMIq3ZKLIsVFAbv7+Mc10kxabAGQb8HvjA1o3T1PIYprbakQ65d3I+2HGHt6nSKkM9PYjgoJO2KcFBQ==",
+      "dev": true,
+      "optional": true,
+      "dependencies": {
+        "buffer": "^5.1.0"
+      }
+    },
+    "node_modules/crc-32": {
+      "version": "1.2.2",
+      "resolved": "https://registry.npmjs.org/crc-32/-/crc-32-1.2.2.tgz",
+      "integrity": "sha512-ROmzCKrTnOwybPcJApAA6WBWij23HVfGVNKqqrZpuyZOHqK2CwHSvpGuyt/UNNvaIjEd8X5IFGp4Mh+Ie1IHJQ==",
+      "dev": true,
+      "peer": true,
+      "bin": {
+        "crc32": "bin/crc32.njs"
+      },
+      "engines": {
+        "node": ">=0.8"
+      }
+    },
+    "node_modules/crc32-stream": {
+      "version": "4.0.3",
+      "resolved": "https://registry.npmjs.org/crc32-stream/-/crc32-stream-4.0.3.tgz",
+      "integrity": "sha512-NT7w2JVU7DFroFdYkeq8cywxrgjPHWkdX1wjpRQXPX5Asews3tA+Ght6lddQO5Mkumffp3X7GEqku3epj2toIw==",
+      "dev": true,
+      "peer": true,
+      "dependencies": {
+        "crc-32": "^1.2.0",
+        "readable-stream": "^3.4.0"
+      },
+      "engines": {
+        "node": ">= 10"
+      }
+    },
+    "node_modules/cross-spawn": {
+      "version": "7.0.3",
+      "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz",
+      "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==",
+      "dev": true,
+      "dependencies": {
+        "path-key": "^3.1.0",
+        "shebang-command": "^2.0.0",
+        "which": "^2.0.1"
+      },
+      "engines": {
+        "node": ">= 8"
+      }
+    },
+    "node_modules/css-loader": {
+      "version": "6.11.0",
+      "resolved": "https://registry.npmjs.org/css-loader/-/css-loader-6.11.0.tgz",
+      "integrity": "sha512-CTJ+AEQJjq5NzLga5pE39qdiSV56F8ywCIsqNIRF0r7BDgWsN25aazToqAFg7ZrtA/U016xudB3ffgweORxX7g==",
+      "dev": true,
+      "dependencies": {
+        "icss-utils": "^5.1.0",
+        "postcss": "^8.4.33",
+        "postcss-modules-extract-imports": "^3.1.0",
+        "postcss-modules-local-by-default": "^4.0.5",
+        "postcss-modules-scope": "^3.2.0",
+        "postcss-modules-values": "^4.0.0",
+        "postcss-value-parser": "^4.2.0",
+        "semver": "^7.5.4"
+      },
+      "engines": {
+        "node": ">= 12.13.0"
+      },
+      "funding": {
+        "type": "opencollective",
+        "url": "https://opencollective.com/webpack"
+      },
+      "peerDependencies": {
+        "@rspack/core": "0.x || 1.x",
+        "webpack": "^5.0.0"
+      },
+      "peerDependenciesMeta": {
+        "@rspack/core": {
+          "optional": true
+        },
+        "webpack": {
+          "optional": true
+        }
+      }
+    },
+    "node_modules/css-select": {
+      "version": "4.3.0",
+      "resolved": "https://registry.npmjs.org/css-select/-/css-select-4.3.0.tgz",
+      "integrity": "sha512-wPpOYtnsVontu2mODhA19JrqWxNsfdatRKd64kmpRbQgh1KtItko5sTnEpPdpSaJszTOhEMlF/RPz28qj4HqhQ==",
+      "dev": true,
+      "dependencies": {
+        "boolbase": "^1.0.0",
+        "css-what": "^6.0.1",
+        "domhandler": "^4.3.1",
+        "domutils": "^2.8.0",
+        "nth-check": "^2.0.1"
+      },
+      "funding": {
+        "url": "https://github.com/sponsors/fb55"
+      }
+    },
+    "node_modules/css-what": {
+      "version": "6.1.0",
+      "resolved": "https://registry.npmjs.org/css-what/-/css-what-6.1.0.tgz",
+      "integrity": "sha512-HTUrgRJ7r4dsZKU6GjmpfRK1O76h97Z8MfS1G0FozR+oF2kG6Vfe8JE6zwrkbxigziPHinCJ+gCPjA9EaBDtRw==",
+      "dev": true,
+      "engines": {
+        "node": ">= 6"
+      },
+      "funding": {
+        "url": "https://github.com/sponsors/fb55"
+      }
+    },
+    "node_modules/cssesc": {
+      "version": "3.0.0",
+      "resolved": "https://registry.npmjs.org/cssesc/-/cssesc-3.0.0.tgz",
+      "integrity": "sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==",
+      "dev": true,
+      "bin": {
+        "cssesc": "bin/cssesc"
+      },
+      "engines": {
+        "node": ">=4"
+      }
+    },
+    "node_modules/dayjs": {
+      "version": "1.11.11",
+      "resolved": "https://registry.npmjs.org/dayjs/-/dayjs-1.11.11.tgz",
+      "integrity": "sha512-okzr3f11N6WuqYtZSvm+F776mB41wRZMhKP+hc34YdW+KmtYYK9iqvHSwo2k9FEH3fhGXvOPV6yz2IcSrfRUDg==",
+      "dev": true
+    },
+    "node_modules/debounce": {
+      "version": "1.2.1",
+      "resolved": "https://registry.npmjs.org/debounce/-/debounce-1.2.1.tgz",
+      "integrity": "sha512-XRRe6Glud4rd/ZGQfiV1ruXSfbvfJedlV9Y6zOlP+2K04vBYiJEte6stfFkCP03aMnY5tsipamumUjL14fofug==",
+      "dev": true
+    },
+    "node_modules/debug": {
+      "version": "4.3.4",
+      "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz",
+      "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==",
+      "dependencies": {
+        "ms": "2.1.2"
+      },
+      "engines": {
+        "node": ">=6.0"
+      },
+      "peerDependenciesMeta": {
+        "supports-color": {
+          "optional": true
+        }
+      }
+    },
+    "node_modules/decompress-response": {
+      "version": "6.0.0",
+      "resolved": "https://registry.npmjs.org/decompress-response/-/decompress-response-6.0.0.tgz",
+      "integrity": "sha512-aW35yZM6Bb/4oJlZncMH2LCoZtJXTRxES17vE3hoRiowU2kWHaJKFkSBDnDR+cm9J+9QhXmREyIfv0pji9ejCQ==",
+      "dependencies": {
+        "mimic-response": "^3.1.0"
+      },
+      "engines": {
+        "node": ">=10"
+      },
+      "funding": {
+        "url": "https://github.com/sponsors/sindresorhus"
+      }
+    },
+    "node_modules/decompress-response/node_modules/mimic-response": {
+      "version": "3.1.0",
+      "resolved": "https://registry.npmjs.org/mimic-response/-/mimic-response-3.1.0.tgz",
+      "integrity": "sha512-z0yWI+4FDrrweS8Zmt4Ej5HdJmky15+L2e6Wgn3+iK5fWzb6T3fhNFq2+MeTRb064c6Wr4N/wv0DzQTjNzHNGQ==",
+      "engines": {
+        "node": ">=10"
+      },
+      "funding": {
+        "url": "https://github.com/sponsors/sindresorhus"
+      }
+    },
+    "node_modules/deep-is": {
+      "version": "0.1.4",
+      "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.4.tgz",
+      "integrity": "sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==",
+      "dev": true
+    },
+    "node_modules/defer-to-connect": {
+      "version": "2.0.1",
+      "resolved": "https://registry.npmjs.org/defer-to-connect/-/defer-to-connect-2.0.1.tgz",
+      "integrity": "sha512-4tvttepXG1VaYGrRibk5EwJd1t4udunSOVMdLSAL6mId1ix438oPwPZMALY41FCijukO1L0twNcGsdzS7dHgDg==",
+      "engines": {
+        "node": ">=10"
+      }
+    },
+    "node_modules/define-data-property": {
+      "version": "1.1.4",
+      "resolved": "https://registry.npmjs.org/define-data-property/-/define-data-property-1.1.4.tgz",
+      "integrity": "sha512-rBMvIzlpA8v6E+SJZoo++HAYqsLrkg7MSfIinMPFhmkorw7X+dOXVJQs+QT69zGkzMyfDnIMN2Wid1+NbL3T+A==",
+      "optional": true,
+      "dependencies": {
+        "es-define-property": "^1.0.0",
+        "es-errors": "^1.3.0",
+        "gopd": "^1.0.1"
+      },
+      "engines": {
+        "node": ">= 0.4"
+      },
+      "funding": {
+        "url": "https://github.com/sponsors/ljharb"
+      }
+    },
+    "node_modules/define-properties": {
+      "version": "1.2.1",
+      "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.2.1.tgz",
+      "integrity": "sha512-8QmQKqEASLd5nx0U1B1okLElbUuuttJ/AnYmRXbbbGDWh6uS208EjD4Xqq/I9wK7u0v6O08XhTWnt5XtEbR6Dg==",
+      "optional": true,
+      "dependencies": {
+        "define-data-property": "^1.0.1",
+        "has-property-descriptors": "^1.0.0",
+        "object-keys": "^1.1.1"
+      },
+      "engines": {
+        "node": ">= 0.4"
+      },
+      "funding": {
+        "url": "https://github.com/sponsors/ljharb"
+      }
+    },
+    "node_modules/del": {
+      "version": "4.1.1",
+      "resolved": "https://registry.npmjs.org/del/-/del-4.1.1.tgz",
+      "integrity": "sha512-QwGuEUouP2kVwQenAsOof5Fv8K9t3D8Ca8NxcXKrIpEHjTXK5J2nXLdP+ALI1cgv8wj7KuwBhTwBkOZSJKM5XQ==",
+      "dev": true,
+      "dependencies": {
+        "@types/glob": "^7.1.1",
+        "globby": "^6.1.0",
+        "is-path-cwd": "^2.0.0",
+        "is-path-in-cwd": "^2.0.0",
+        "p-map": "^2.0.0",
+        "pify": "^4.0.1",
+        "rimraf": "^2.6.3"
+      },
+      "engines": {
+        "node": ">=6"
+      }
+    },
+    "node_modules/del/node_modules/array-union": {
+      "version": "1.0.2",
+      "resolved": "https://registry.npmjs.org/array-union/-/array-union-1.0.2.tgz",
+      "integrity": "sha512-Dxr6QJj/RdU/hCaBjOfxW+q6lyuVE6JFWIrAUpuOOhoJJoQ99cUn3igRaHVB5P9WrgFVN0FfArM3x0cueOU8ng==",
+      "dev": true,
+      "dependencies": {
+        "array-uniq": "^1.0.1"
+      },
+      "engines": {
+        "node": ">=0.10.0"
+      }
+    },
+    "node_modules/del/node_modules/globby": {
+      "version": "6.1.0",
+      "resolved": "https://registry.npmjs.org/globby/-/globby-6.1.0.tgz",
+      "integrity": "sha512-KVbFv2TQtbzCoxAnfD6JcHZTYCzyliEaaeM/gH8qQdkKr5s0OP9scEgvdcngyk7AVdY6YVW/TJHd+lQ/Df3Daw==",
+      "dev": true,
+      "dependencies": {
+        "array-union": "^1.0.1",
+        "glob": "^7.0.3",
+        "object-assign": "^4.0.1",
+        "pify": "^2.0.0",
+        "pinkie-promise": "^2.0.0"
+      },
+      "engines": {
+        "node": ">=0.10.0"
+      }
+    },
+    "node_modules/del/node_modules/globby/node_modules/pify": {
+      "version": "2.3.0",
+      "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz",
+      "integrity": "sha512-udgsAY+fTnvv7kI7aaxbqwWNb0AHiB0qBO89PZKPkoTmGOgdbrHDKD+0B2X4uTfJ/FT1R09r9gTsjUjNJotuog==",
+      "dev": true,
+      "engines": {
+        "node": ">=0.10.0"
+      }
+    },
+    "node_modules/delayed-stream": {
+      "version": "1.0.0",
+      "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz",
+      "integrity": "sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==",
+      "dev": true,
+      "engines": {
+        "node": ">=0.4.0"
+      }
+    },
+    "node_modules/detect-node": {
+      "version": "2.1.0",
+      "resolved": "https://registry.npmjs.org/detect-node/-/detect-node-2.1.0.tgz",
+      "integrity": "sha512-T0NIuQpnTvFDATNuHN5roPwSBG83rFsuO+MXXH9/3N1eFbn4wcPjttvjMLEPWJ0RGUYgQE7cGgS3tNxbqCGM7g==",
+      "optional": true
+    },
+    "node_modules/dir-compare": {
+      "version": "3.3.0",
+      "resolved": "https://registry.npmjs.org/dir-compare/-/dir-compare-3.3.0.tgz",
+      "integrity": "sha512-J7/et3WlGUCxjdnD3HAAzQ6nsnc0WL6DD7WcwJb7c39iH1+AWfg+9OqzJNaI6PkBwBvm1mhZNL9iY/nRiZXlPg==",
+      "dev": true,
+      "dependencies": {
+        "buffer-equal": "^1.0.0",
+        "minimatch": "^3.0.4"
+      }
+    },
+    "node_modules/dir-compare/node_modules/brace-expansion": {
+      "version": "1.1.11",
+      "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz",
+      "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==",
+      "dev": true,
+      "dependencies": {
+        "balanced-match": "^1.0.0",
+        "concat-map": "0.0.1"
+      }
+    },
+    "node_modules/dir-compare/node_modules/minimatch": {
+      "version": "3.1.2",
+      "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz",
+      "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==",
+      "dev": true,
+      "dependencies": {
+        "brace-expansion": "^1.1.7"
+      },
+      "engines": {
+        "node": "*"
+      }
+    },
+    "node_modules/dir-glob": {
+      "version": "3.0.1",
+      "resolved": "https://registry.npmjs.org/dir-glob/-/dir-glob-3.0.1.tgz",
+      "integrity": "sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==",
+      "dev": true,
+      "dependencies": {
+        "path-type": "^4.0.0"
+      },
+      "engines": {
+        "node": ">=8"
+      }
+    },
+    "node_modules/dmg-builder": {
+      "version": "24.13.3",
+      "resolved": "https://registry.npmjs.org/dmg-builder/-/dmg-builder-24.13.3.tgz",
+      "integrity": "sha512-rcJUkMfnJpfCboZoOOPf4L29TRtEieHNOeAbYPWPxlaBw/Z1RKrRA86dOI9rwaI4tQSc/RD82zTNHprfUHXsoQ==",
+      "dev": true,
+      "dependencies": {
+        "app-builder-lib": "24.13.3",
+        "builder-util": "24.13.1",
+        "builder-util-runtime": "9.2.4",
+        "fs-extra": "^10.1.0",
+        "iconv-lite": "^0.6.2",
+        "js-yaml": "^4.1.0"
+      },
+      "optionalDependencies": {
+        "dmg-license": "^1.0.11"
+      }
+    },
+    "node_modules/dmg-builder/node_modules/fs-extra": {
+      "version": "10.1.0",
+      "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-10.1.0.tgz",
+      "integrity": "sha512-oRXApq54ETRj4eMiFzGnHWGy+zo5raudjuxN0b8H7s/RU2oW0Wvsx9O0ACRN/kRq9E8Vu/ReskGB5o3ji+FzHQ==",
+      "dev": true,
+      "dependencies": {
+        "graceful-fs": "^4.2.0",
+        "jsonfile": "^6.0.1",
+        "universalify": "^2.0.0"
+      },
+      "engines": {
+        "node": ">=12"
+      }
+    },
+    "node_modules/dmg-builder/node_modules/jsonfile": {
+      "version": "6.1.0",
+      "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-6.1.0.tgz",
+      "integrity": "sha512-5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ==",
+      "dev": true,
+      "dependencies": {
+        "universalify": "^2.0.0"
+      },
+      "optionalDependencies": {
+        "graceful-fs": "^4.1.6"
+      }
+    },
+    "node_modules/dmg-builder/node_modules/universalify": {
+      "version": "2.0.1",
+      "resolved": "https://registry.npmjs.org/universalify/-/universalify-2.0.1.tgz",
+      "integrity": "sha512-gptHNQghINnc/vTGIk0SOFGFNXw7JVrlRUtConJRlvaw6DuX0wO5Jeko9sWrMBhh+PsYAZ7oXAiOnf/UKogyiw==",
+      "dev": true,
+      "engines": {
+        "node": ">= 10.0.0"
+      }
+    },
+    "node_modules/dmg-license": {
+      "version": "1.0.11",
+      "resolved": "https://registry.npmjs.org/dmg-license/-/dmg-license-1.0.11.tgz",
+      "integrity": "sha512-ZdzmqwKmECOWJpqefloC5OJy1+WZBBse5+MR88z9g9Zn4VY+WYUkAyojmhzJckH5YbbZGcYIuGAkY5/Ys5OM2Q==",
+      "dev": true,
+      "optional": true,
+      "os": [
+        "darwin"
+      ],
+      "dependencies": {
+        "@types/plist": "^3.0.1",
+        "@types/verror": "^1.10.3",
+        "ajv": "^6.10.0",
+        "crc": "^3.8.0",
+        "iconv-corefoundation": "^1.1.7",
+        "plist": "^3.0.4",
+        "smart-buffer": "^4.0.2",
+        "verror": "^1.10.0"
+      },
+      "bin": {
+        "dmg-license": "bin/dmg-license.js"
+      },
+      "engines": {
+        "node": ">=8"
+      }
+    },
+    "node_modules/doctrine": {
+      "version": "3.0.0",
+      "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz",
+      "integrity": "sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==",
+      "dev": true,
+      "dependencies": {
+        "esutils": "^2.0.2"
+      },
+      "engines": {
+        "node": ">=6.0.0"
+      }
+    },
+    "node_modules/dom-converter": {
+      "version": "0.2.0",
+      "resolved": "https://registry.npmjs.org/dom-converter/-/dom-converter-0.2.0.tgz",
+      "integrity": "sha512-gd3ypIPfOMr9h5jIKq8E3sHOTCjeirnl0WK5ZdS1AW0Odt0b1PaWaHdJ4Qk4klv+YB9aJBS7mESXjFoDQPu6DA==",
+      "dev": true,
+      "dependencies": {
+        "utila": "~0.4"
+      }
+    },
+    "node_modules/dom-serializer": {
+      "version": "1.4.1",
+      "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-1.4.1.tgz",
+      "integrity": "sha512-VHwB3KfrcOOkelEG2ZOfxqLZdfkil8PtJi4P8N2MMXucZq2yLp75ClViUlOVwyoHEDjYU433Aq+5zWP61+RGag==",
+      "dev": true,
+      "dependencies": {
+        "domelementtype": "^2.0.1",
+        "domhandler": "^4.2.0",
+        "entities": "^2.0.0"
+      },
+      "funding": {
+        "url": "https://github.com/cheeriojs/dom-serializer?sponsor=1"
+      }
+    },
+    "node_modules/domelementtype": {
+      "version": "2.3.0",
+      "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-2.3.0.tgz",
+      "integrity": "sha512-OLETBj6w0OsagBwdXnPdN0cnMfF9opN69co+7ZrbfPGrdpPVNBUj02spi6B1N7wChLQiPn4CSH/zJvXw56gmHw==",
+      "dev": true,
+      "funding": [
+        {
+          "type": "github",
+          "url": "https://github.com/sponsors/fb55"
+        }
+      ]
+    },
+    "node_modules/domhandler": {
+      "version": "4.3.1",
+      "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-4.3.1.tgz",
+      "integrity": "sha512-GrwoxYN+uWlzO8uhUXRl0P+kHE4GtVPfYzVLcUxPL7KNdHKj66vvlhiweIHqYYXWlw+T8iLMp42Lm67ghw4WMQ==",
+      "dev": true,
+      "dependencies": {
+        "domelementtype": "^2.2.0"
+      },
+      "engines": {
+        "node": ">= 4"
+      },
+      "funding": {
+        "url": "https://github.com/fb55/domhandler?sponsor=1"
+      }
+    },
+    "node_modules/domutils": {
+      "version": "2.8.0",
+      "resolved": "https://registry.npmjs.org/domutils/-/domutils-2.8.0.tgz",
+      "integrity": "sha512-w96Cjofp72M5IIhpjgobBimYEfoPjx1Vx0BSX9P30WBdZW2WIKU0T1Bd0kz2eNZ9ikjKgHbEyKx8BB6H1L3h3A==",
+      "dev": true,
+      "dependencies": {
+        "dom-serializer": "^1.0.1",
+        "domelementtype": "^2.2.0",
+        "domhandler": "^4.2.0"
+      },
+      "funding": {
+        "url": "https://github.com/fb55/domutils?sponsor=1"
+      }
+    },
+    "node_modules/dot-case": {
+      "version": "3.0.4",
+      "resolved": "https://registry.npmjs.org/dot-case/-/dot-case-3.0.4.tgz",
+      "integrity": "sha512-Kv5nKlh6yRrdrGvxeJ2e5y2eRUpkUosIW4A2AS38zwSz27zu7ufDwQPi5Jhs3XAlGNetl3bmnGhQsMtkKJnj3w==",
+      "dev": true,
+      "dependencies": {
+        "no-case": "^3.0.4",
+        "tslib": "^2.0.3"
+      }
+    },
+    "node_modules/dotenv": {
+      "version": "9.0.2",
+      "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-9.0.2.tgz",
+      "integrity": "sha512-I9OvvrHp4pIARv4+x9iuewrWycX6CcZtoAu1XrzPxc5UygMJXJZYmBsynku8IkrJwgypE5DGNjDPmPRhDCptUg==",
+      "dev": true,
+      "engines": {
+        "node": ">=10"
+      }
+    },
+    "node_modules/dotenv-expand": {
+      "version": "5.1.0",
+      "resolved": "https://registry.npmjs.org/dotenv-expand/-/dotenv-expand-5.1.0.tgz",
+      "integrity": "sha512-YXQl1DSa4/PQyRfgrv6aoNjhasp/p4qs9FjJ4q4cQk+8m4r6k4ZSiEyytKG8f8W9gi8WsQtIObNmKd+tMzNTmA==",
+      "dev": true
+    },
+    "node_modules/duplexer": {
+      "version": "0.1.2",
+      "resolved": "https://registry.npmjs.org/duplexer/-/duplexer-0.1.2.tgz",
+      "integrity": "sha512-jtD6YG370ZCIi/9GTaJKQxWTZD045+4R4hTk/x1UyoqadyJ9x9CgSi1RlVDQF8U2sxLLSnFkCaMihqljHIWgMg==",
+      "dev": true
+    },
+    "node_modules/eastasianwidth": {
+      "version": "0.2.0",
+      "resolved": "https://registry.npmjs.org/eastasianwidth/-/eastasianwidth-0.2.0.tgz",
+      "integrity": "sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA==",
+      "dev": true
+    },
+    "node_modules/ejs": {
+      "version": "3.1.10",
+      "resolved": "https://registry.npmjs.org/ejs/-/ejs-3.1.10.tgz",
+      "integrity": "sha512-UeJmFfOrAQS8OJWPZ4qtgHyWExa088/MtK5UEyoJGFH67cDEXkZSviOiKRCZ4Xij0zxI3JECgYs3oKx+AizQBA==",
+      "dev": true,
+      "dependencies": {
+        "jake": "^10.8.5"
+      },
+      "bin": {
+        "ejs": "bin/cli.js"
+      },
+      "engines": {
+        "node": ">=0.10.0"
+      }
+    },
+    "node_modules/electron": {
+      "version": "28.2.10",
+      "resolved": "https://registry.npmjs.org/electron/-/electron-28.2.10.tgz",
+      "integrity": "sha512-0rGBJNogcl2FIRxGRUv9zuMaBP78nSBJW+Bd1U7OGeg8IEkSIbHOhfn71XoGxgbOUSCEXjjyftq4mtAAVbUsZQ==",
+      "hasInstallScript": true,
+      "dependencies": {
+        "@electron/get": "^2.0.0",
+        "@types/node": "^18.11.18",
+        "extract-zip": "^2.0.1"
+      },
+      "bin": {
+        "electron": "cli.js"
+      },
+      "engines": {
+        "node": ">= 12.20.55"
+      }
+    },
+    "node_modules/electron-builder": {
+      "version": "24.13.3",
+      "resolved": "https://registry.npmjs.org/electron-builder/-/electron-builder-24.13.3.tgz",
+      "integrity": "sha512-yZSgVHft5dNVlo31qmJAe4BVKQfFdwpRw7sFp1iQglDRCDD6r22zfRJuZlhtB5gp9FHUxCMEoWGq10SkCnMAIg==",
+      "dev": true,
+      "dependencies": {
+        "app-builder-lib": "24.13.3",
+        "builder-util": "24.13.1",
+        "builder-util-runtime": "9.2.4",
+        "chalk": "^4.1.2",
+        "dmg-builder": "24.13.3",
+        "fs-extra": "^10.1.0",
+        "is-ci": "^3.0.0",
+        "lazy-val": "^1.0.5",
+        "read-config-file": "6.3.2",
+        "simple-update-notifier": "2.0.0",
+        "yargs": "^17.6.2"
+      },
+      "bin": {
+        "electron-builder": "cli.js",
+        "install-app-deps": "install-app-deps.js"
+      },
+      "engines": {
+        "node": ">=14.0.0"
+      }
+    },
+    "node_modules/electron-builder-squirrel-windows": {
+      "version": "24.13.3",
+      "resolved": "https://registry.npmjs.org/electron-builder-squirrel-windows/-/electron-builder-squirrel-windows-24.13.3.tgz",
+      "integrity": "sha512-oHkV0iogWfyK+ah9ZIvMDpei1m9ZRpdXcvde1wTpra2U8AFDNNpqJdnin5z+PM1GbQ5BoaKCWas2HSjtR0HwMg==",
+      "dev": true,
+      "peer": true,
+      "dependencies": {
+        "app-builder-lib": "24.13.3",
+        "archiver": "^5.3.1",
+        "builder-util": "24.13.1",
+        "fs-extra": "^10.1.0"
+      }
+    },
+    "node_modules/electron-builder-squirrel-windows/node_modules/fs-extra": {
+      "version": "10.1.0",
+      "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-10.1.0.tgz",
+      "integrity": "sha512-oRXApq54ETRj4eMiFzGnHWGy+zo5raudjuxN0b8H7s/RU2oW0Wvsx9O0ACRN/kRq9E8Vu/ReskGB5o3ji+FzHQ==",
+      "dev": true,
+      "peer": true,
+      "dependencies": {
+        "graceful-fs": "^4.2.0",
+        "jsonfile": "^6.0.1",
+        "universalify": "^2.0.0"
+      },
+      "engines": {
+        "node": ">=12"
+      }
+    },
+    "node_modules/electron-builder-squirrel-windows/node_modules/jsonfile": {
+      "version": "6.1.0",
+      "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-6.1.0.tgz",
+      "integrity": "sha512-5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ==",
+      "dev": true,
+      "peer": true,
+      "dependencies": {
+        "universalify": "^2.0.0"
+      },
+      "optionalDependencies": {
+        "graceful-fs": "^4.1.6"
+      }
+    },
+    "node_modules/electron-builder-squirrel-windows/node_modules/universalify": {
+      "version": "2.0.1",
+      "resolved": "https://registry.npmjs.org/universalify/-/universalify-2.0.1.tgz",
+      "integrity": "sha512-gptHNQghINnc/vTGIk0SOFGFNXw7JVrlRUtConJRlvaw6DuX0wO5Jeko9sWrMBhh+PsYAZ7oXAiOnf/UKogyiw==",
+      "dev": true,
+      "peer": true,
+      "engines": {
+        "node": ">= 10.0.0"
+      }
+    },
+    "node_modules/electron-builder/node_modules/fs-extra": {
+      "version": "10.1.0",
+      "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-10.1.0.tgz",
+      "integrity": "sha512-oRXApq54ETRj4eMiFzGnHWGy+zo5raudjuxN0b8H7s/RU2oW0Wvsx9O0ACRN/kRq9E8Vu/ReskGB5o3ji+FzHQ==",
+      "dev": true,
+      "dependencies": {
+        "graceful-fs": "^4.2.0",
+        "jsonfile": "^6.0.1",
+        "universalify": "^2.0.0"
+      },
+      "engines": {
+        "node": ">=12"
+      }
+    },
+    "node_modules/electron-builder/node_modules/jsonfile": {
+      "version": "6.1.0",
+      "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-6.1.0.tgz",
+      "integrity": "sha512-5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ==",
+      "dev": true,
+      "dependencies": {
+        "universalify": "^2.0.0"
+      },
+      "optionalDependencies": {
+        "graceful-fs": "^4.1.6"
+      }
+    },
+    "node_modules/electron-builder/node_modules/universalify": {
+      "version": "2.0.1",
+      "resolved": "https://registry.npmjs.org/universalify/-/universalify-2.0.1.tgz",
+      "integrity": "sha512-gptHNQghINnc/vTGIk0SOFGFNXw7JVrlRUtConJRlvaw6DuX0wO5Jeko9sWrMBhh+PsYAZ7oXAiOnf/UKogyiw==",
+      "dev": true,
+      "engines": {
+        "node": ">= 10.0.0"
+      }
+    },
+    "node_modules/electron-publish": {
+      "version": "24.13.1",
+      "resolved": "https://registry.npmjs.org/electron-publish/-/electron-publish-24.13.1.tgz",
+      "integrity": "sha512-2ZgdEqJ8e9D17Hwp5LEq5mLQPjqU3lv/IALvgp+4W8VeNhryfGhYEQC/PgDPMrnWUp+l60Ou5SJLsu+k4mhQ8A==",
+      "dev": true,
+      "dependencies": {
+        "@types/fs-extra": "^9.0.11",
+        "builder-util": "24.13.1",
+        "builder-util-runtime": "9.2.4",
+        "chalk": "^4.1.2",
+        "fs-extra": "^10.1.0",
+        "lazy-val": "^1.0.5",
+        "mime": "^2.5.2"
+      }
+    },
+    "node_modules/electron-publish/node_modules/fs-extra": {
+      "version": "10.1.0",
+      "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-10.1.0.tgz",
+      "integrity": "sha512-oRXApq54ETRj4eMiFzGnHWGy+zo5raudjuxN0b8H7s/RU2oW0Wvsx9O0ACRN/kRq9E8Vu/ReskGB5o3ji+FzHQ==",
+      "dev": true,
+      "dependencies": {
+        "graceful-fs": "^4.2.0",
+        "jsonfile": "^6.0.1",
+        "universalify": "^2.0.0"
+      },
+      "engines": {
+        "node": ">=12"
+      }
+    },
+    "node_modules/electron-publish/node_modules/jsonfile": {
+      "version": "6.1.0",
+      "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-6.1.0.tgz",
+      "integrity": "sha512-5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ==",
+      "dev": true,
+      "dependencies": {
+        "universalify": "^2.0.0"
+      },
+      "optionalDependencies": {
+        "graceful-fs": "^4.1.6"
+      }
+    },
+    "node_modules/electron-publish/node_modules/universalify": {
+      "version": "2.0.1",
+      "resolved": "https://registry.npmjs.org/universalify/-/universalify-2.0.1.tgz",
+      "integrity": "sha512-gptHNQghINnc/vTGIk0SOFGFNXw7JVrlRUtConJRlvaw6DuX0wO5Jeko9sWrMBhh+PsYAZ7oXAiOnf/UKogyiw==",
+      "dev": true,
+      "engines": {
+        "node": ">= 10.0.0"
+      }
+    },
+    "node_modules/electron-to-chromium": {
+      "version": "1.4.756",
+      "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.756.tgz",
+      "integrity": "sha512-RJKZ9+vEBMeiPAvKNWyZjuYyUqMndcP1f335oHqn3BEQbs2NFtVrnK5+6Xg5wSM9TknNNpWghGDUCKGYF+xWXw==",
+      "dev": true
+    },
+    "node_modules/emoji-regex": {
+      "version": "8.0.0",
+      "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz",
+      "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==",
+      "dev": true
+    },
+    "node_modules/emojis-list": {
+      "version": "3.0.0",
+      "resolved": "https://registry.npmjs.org/emojis-list/-/emojis-list-3.0.0.tgz",
+      "integrity": "sha512-/kyM18EfinwXZbno9FyUGeFh87KC8HRQBQGildHZbEuRyWFOmv1U10o9BBp8XVZDVNNuQKyIGIu5ZYAAXJ0V2Q==",
+      "dev": true,
+      "engines": {
+        "node": ">= 4"
+      }
+    },
+    "node_modules/encoding": {
+      "version": "0.1.13",
+      "resolved": "https://registry.npmjs.org/encoding/-/encoding-0.1.13.tgz",
+      "integrity": "sha512-ETBauow1T35Y/WZMkio9jiM0Z5xjHHmJ4XmjZOq1l/dXz3lr2sRn87nJy20RupqSh1F2m3HHPSp8ShIPQJrJ3A==",
+      "dev": true,
+      "dependencies": {
+        "iconv-lite": "^0.6.2"
+      }
+    },
+    "node_modules/end-of-stream": {
+      "version": "1.4.4",
+      "resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.4.tgz",
+      "integrity": "sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q==",
+      "dependencies": {
+        "once": "^1.4.0"
+      }
+    },
+    "node_modules/enhanced-resolve": {
+      "version": "5.16.0",
+      "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.16.0.tgz",
+      "integrity": "sha512-O+QWCviPNSSLAD9Ucn8Awv+poAkqn3T1XY5/N7kR7rQO9yfSGWkYZDwpJ+iKF7B8rxaQKWngSqACpgzeapSyoA==",
+      "dev": true,
+      "dependencies": {
+        "graceful-fs": "^4.2.4",
+        "tapable": "^2.2.0"
+      },
+      "engines": {
+        "node": ">=10.13.0"
+      }
+    },
+    "node_modules/entities": {
+      "version": "2.2.0",
+      "resolved": "https://registry.npmjs.org/entities/-/entities-2.2.0.tgz",
+      "integrity": "sha512-p92if5Nz619I0w+akJrLZH0MX0Pb5DX39XOwQTtXSdQQOaYH03S1uIQp4mhOZtAXrxq4ViO67YTiLBo2638o9A==",
+      "dev": true,
+      "funding": {
+        "url": "https://github.com/fb55/entities?sponsor=1"
+      }
+    },
+    "node_modules/env-paths": {
+      "version": "2.2.1",
+      "resolved": "https://registry.npmjs.org/env-paths/-/env-paths-2.2.1.tgz",
+      "integrity": "sha512-+h1lkLKhZMTYjog1VEpJNG7NZJWcuc2DDk/qsqSTRRCOXiLjeQ1d1/udrUGhqMxUgAlwKNZ0cf2uqan5GLuS2A==",
+      "engines": {
+        "node": ">=6"
+      }
+    },
+    "node_modules/envinfo": {
+      "version": "7.13.0",
+      "resolved": "https://registry.npmjs.org/envinfo/-/envinfo-7.13.0.tgz",
+      "integrity": "sha512-cvcaMr7KqXVh4nyzGTVqTum+gAiL265x5jUWQIDLq//zOGbW+gSW/C+OWLleY/rs9Qole6AZLMXPbtIFQbqu+Q==",
+      "dev": true,
+      "bin": {
+        "envinfo": "dist/cli.js"
+      },
+      "engines": {
+        "node": ">=4"
+      }
+    },
+    "node_modules/err-code": {
+      "version": "2.0.3",
+      "resolved": "https://registry.npmjs.org/err-code/-/err-code-2.0.3.tgz",
+      "integrity": "sha512-2bmlRpNKBxT/CRmPOlyISQpNj+qSeYvcym/uT0Jx2bMOlKLtSy1ZmLuVxSEKKyor/N5yhvp/ZiG1oE3DEYMSFA==",
+      "dev": true
+    },
+    "node_modules/es-define-property": {
+      "version": "1.0.0",
+      "resolved": "https://registry.npmjs.org/es-define-property/-/es-define-property-1.0.0.tgz",
+      "integrity": "sha512-jxayLKShrEqqzJ0eumQbVhTYQM27CfT1T35+gCgDFoL82JLsXqTJ76zv6A0YLOgEnLUMvLzsDsGIrl8NFpT2gQ==",
+      "optional": true,
+      "dependencies": {
+        "get-intrinsic": "^1.2.4"
+      },
+      "engines": {
+        "node": ">= 0.4"
+      }
+    },
+    "node_modules/es-errors": {
+      "version": "1.3.0",
+      "resolved": "https://registry.npmjs.org/es-errors/-/es-errors-1.3.0.tgz",
+      "integrity": "sha512-Zf5H2Kxt2xjTvbJvP2ZWLEICxA6j+hAmMzIlypy4xcBg1vKVnx89Wy0GbS+kf5cwCVFFzdCFh2XSCFNULS6csw==",
+      "optional": true,
+      "engines": {
+        "node": ">= 0.4"
+      }
+    },
+    "node_modules/es-module-lexer": {
+      "version": "1.5.2",
+      "resolved": "https://registry.npmjs.org/es-module-lexer/-/es-module-lexer-1.5.2.tgz",
+      "integrity": "sha512-l60ETUTmLqbVbVHv1J4/qj+M8nq7AwMzEcg3kmJDt9dCNrTk+yHcYFf/Kw75pMDwd9mPcIGCG5LcS20SxYRzFA==",
+      "dev": true
+    },
+    "node_modules/es6-error": {
+      "version": "4.1.1",
+      "resolved": "https://registry.npmjs.org/es6-error/-/es6-error-4.1.1.tgz",
+      "integrity": "sha512-Um/+FxMr9CISWh0bi5Zv0iOD+4cFh5qLeks1qhAopKVAJw3drgKbKySikp7wGhDL0HPeaja0P5ULZrxLkniUVg==",
+      "optional": true
+    },
+    "node_modules/esbuild": {
+      "version": "0.19.12",
+      "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.19.12.tgz",
+      "integrity": "sha512-aARqgq8roFBj054KvQr5f1sFu0D65G+miZRCuJyJ0G13Zwx7vRar5Zhn2tkQNzIXcBrNVsv/8stehpj+GAjgbg==",
+      "dev": true,
+      "hasInstallScript": true,
+      "bin": {
+        "esbuild": "bin/esbuild"
+      },
+      "engines": {
+        "node": ">=12"
+      },
+      "optionalDependencies": {
+        "@esbuild/aix-ppc64": "0.19.12",
+        "@esbuild/android-arm": "0.19.12",
+        "@esbuild/android-arm64": "0.19.12",
+        "@esbuild/android-x64": "0.19.12",
+        "@esbuild/darwin-arm64": "0.19.12",
+        "@esbuild/darwin-x64": "0.19.12",
+        "@esbuild/freebsd-arm64": "0.19.12",
+        "@esbuild/freebsd-x64": "0.19.12",
+        "@esbuild/linux-arm": "0.19.12",
+        "@esbuild/linux-arm64": "0.19.12",
+        "@esbuild/linux-ia32": "0.19.12",
+        "@esbuild/linux-loong64": "0.19.12",
+        "@esbuild/linux-mips64el": "0.19.12",
+        "@esbuild/linux-ppc64": "0.19.12",
+        "@esbuild/linux-riscv64": "0.19.12",
+        "@esbuild/linux-s390x": "0.19.12",
+        "@esbuild/linux-x64": "0.19.12",
+        "@esbuild/netbsd-x64": "0.19.12",
+        "@esbuild/openbsd-x64": "0.19.12",
+        "@esbuild/sunos-x64": "0.19.12",
+        "@esbuild/win32-arm64": "0.19.12",
+        "@esbuild/win32-ia32": "0.19.12",
+        "@esbuild/win32-x64": "0.19.12"
+      }
+    },
+    "node_modules/esbuild-loader": {
+      "version": "3.2.0",
+      "resolved": "https://registry.npmjs.org/esbuild-loader/-/esbuild-loader-3.2.0.tgz",
+      "integrity": "sha512-lnIdRMQpk50alCa0QoW0ozc0D3rjJXl02mtMsk9INIcW25RPZhDja332bu85ixwVNbhQ7VfBRcQyZ/qza8mWiA==",
+      "dev": true,
+      "dependencies": {
+        "esbuild": "^0.19.0",
+        "get-tsconfig": "^4.6.2",
+        "loader-utils": "^2.0.4",
+        "webpack-sources": "^1.4.3"
+      },
+      "funding": {
+        "url": "https://github.com/esbuild-kit/esbuild-loader?sponsor=1"
+      },
+      "peerDependencies": {
+        "webpack": "^4.40.0 || ^5.0.0"
+      }
+    },
+    "node_modules/escalade": {
+      "version": "3.1.2",
+      "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.2.tgz",
+      "integrity": "sha512-ErCHMCae19vR8vQGe50xIsVomy19rg6gFu3+r3jkEO46suLMWBksvVyoGgQV+jOfl84ZSOSlmv6Gxa89PmTGmA==",
+      "dev": true,
+      "engines": {
+        "node": ">=6"
+      }
+    },
+    "node_modules/escape-string-regexp": {
+      "version": "4.0.0",
+      "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz",
+      "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==",
+      "devOptional": true,
+      "engines": {
+        "node": ">=10"
+      },
+      "funding": {
+        "url": "https://github.com/sponsors/sindresorhus"
+      }
+    },
+    "node_modules/eslint": {
+      "version": "8.57.0",
+      "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.57.0.tgz",
+      "integrity": "sha512-dZ6+mexnaTIbSBZWgou51U6OmzIhYM2VcNdtiTtI7qPNZm35Akpr0f6vtw3w1Kmn5PYo+tZVfh13WrhpS6oLqQ==",
+      "dev": true,
+      "dependencies": {
+        "@eslint-community/eslint-utils": "^4.2.0",
+        "@eslint-community/regexpp": "^4.6.1",
+        "@eslint/eslintrc": "^2.1.4",
+        "@eslint/js": "8.57.0",
+        "@humanwhocodes/config-array": "^0.11.14",
+        "@humanwhocodes/module-importer": "^1.0.1",
+        "@nodelib/fs.walk": "^1.2.8",
+        "@ungap/structured-clone": "^1.2.0",
+        "ajv": "^6.12.4",
+        "chalk": "^4.0.0",
+        "cross-spawn": "^7.0.2",
+        "debug": "^4.3.2",
+        "doctrine": "^3.0.0",
+        "escape-string-regexp": "^4.0.0",
+        "eslint-scope": "^7.2.2",
+        "eslint-visitor-keys": "^3.4.3",
+        "espree": "^9.6.1",
+        "esquery": "^1.4.2",
+        "esutils": "^2.0.2",
+        "fast-deep-equal": "^3.1.3",
+        "file-entry-cache": "^6.0.1",
+        "find-up": "^5.0.0",
+        "glob-parent": "^6.0.2",
+        "globals": "^13.19.0",
+        "graphemer": "^1.4.0",
+        "ignore": "^5.2.0",
+        "imurmurhash": "^0.1.4",
+        "is-glob": "^4.0.0",
+        "is-path-inside": "^3.0.3",
+        "js-yaml": "^4.1.0",
+        "json-stable-stringify-without-jsonify": "^1.0.1",
+        "levn": "^0.4.1",
+        "lodash.merge": "^4.6.2",
+        "minimatch": "^3.1.2",
+        "natural-compare": "^1.4.0",
+        "optionator": "^0.9.3",
+        "strip-ansi": "^6.0.1",
+        "text-table": "^0.2.0"
+      },
+      "bin": {
+        "eslint": "bin/eslint.js"
+      },
+      "engines": {
+        "node": "^12.22.0 || ^14.17.0 || >=16.0.0"
+      },
+      "funding": {
+        "url": "https://opencollective.com/eslint"
+      }
+    },
+    "node_modules/eslint-scope": {
+      "version": "5.1.1",
+      "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-5.1.1.tgz",
+      "integrity": "sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==",
+      "dev": true,
+      "dependencies": {
+        "esrecurse": "^4.3.0",
+        "estraverse": "^4.1.1"
+      },
+      "engines": {
+        "node": ">=8.0.0"
+      }
+    },
+    "node_modules/eslint-visitor-keys": {
+      "version": "3.4.3",
+      "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.4.3.tgz",
+      "integrity": "sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==",
+      "dev": true,
+      "engines": {
+        "node": "^12.22.0 || ^14.17.0 || >=16.0.0"
+      },
+      "funding": {
+        "url": "https://opencollective.com/eslint"
+      }
+    },
+    "node_modules/eslint/node_modules/brace-expansion": {
+      "version": "1.1.11",
+      "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz",
+      "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==",
+      "dev": true,
+      "dependencies": {
+        "balanced-match": "^1.0.0",
+        "concat-map": "0.0.1"
+      }
+    },
+    "node_modules/eslint/node_modules/eslint-scope": {
+      "version": "7.2.2",
+      "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-7.2.2.tgz",
+      "integrity": "sha512-dOt21O7lTMhDM+X9mB4GX+DZrZtCUJPL/wlcTqxyrx5IvO0IYtILdtrQGQp+8n5S0gwSVmOf9NQrjMOgfQZlIg==",
+      "dev": true,
+      "dependencies": {
+        "esrecurse": "^4.3.0",
+        "estraverse": "^5.2.0"
+      },
+      "engines": {
+        "node": "^12.22.0 || ^14.17.0 || >=16.0.0"
+      },
+      "funding": {
+        "url": "https://opencollective.com/eslint"
+      }
+    },
+    "node_modules/eslint/node_modules/estraverse": {
+      "version": "5.3.0",
+      "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz",
+      "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==",
+      "dev": true,
+      "engines": {
+        "node": ">=4.0"
+      }
+    },
+    "node_modules/eslint/node_modules/minimatch": {
+      "version": "3.1.2",
+      "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz",
+      "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==",
+      "dev": true,
+      "dependencies": {
+        "brace-expansion": "^1.1.7"
+      },
+      "engines": {
+        "node": "*"
+      }
+    },
+    "node_modules/espree": {
+      "version": "9.6.1",
+      "resolved": "https://registry.npmjs.org/espree/-/espree-9.6.1.tgz",
+      "integrity": "sha512-oruZaFkjorTpF32kDSI5/75ViwGeZginGGy2NoOSg3Q9bnwlnmDm4HLnkl0RE3n+njDXR037aY1+x58Z/zFdwQ==",
+      "dev": true,
+      "dependencies": {
+        "acorn": "^8.9.0",
+        "acorn-jsx": "^5.3.2",
+        "eslint-visitor-keys": "^3.4.1"
+      },
+      "engines": {
+        "node": "^12.22.0 || ^14.17.0 || >=16.0.0"
+      },
+      "funding": {
+        "url": "https://opencollective.com/eslint"
+      }
+    },
+    "node_modules/esquery": {
+      "version": "1.5.0",
+      "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.5.0.tgz",
+      "integrity": "sha512-YQLXUplAwJgCydQ78IMJywZCceoqk1oH01OERdSAJc/7U2AylwjhSCLDEtqwg811idIS/9fIU5GjG73IgjKMVg==",
+      "dev": true,
+      "dependencies": {
+        "estraverse": "^5.1.0"
+      },
+      "engines": {
+        "node": ">=0.10"
+      }
+    },
+    "node_modules/esquery/node_modules/estraverse": {
+      "version": "5.3.0",
+      "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz",
+      "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==",
+      "dev": true,
+      "engines": {
+        "node": ">=4.0"
+      }
+    },
+    "node_modules/esrecurse": {
+      "version": "4.3.0",
+      "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz",
+      "integrity": "sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==",
+      "dev": true,
+      "dependencies": {
+        "estraverse": "^5.2.0"
+      },
+      "engines": {
+        "node": ">=4.0"
+      }
+    },
+    "node_modules/esrecurse/node_modules/estraverse": {
+      "version": "5.3.0",
+      "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz",
+      "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==",
+      "dev": true,
+      "engines": {
+        "node": ">=4.0"
+      }
+    },
+    "node_modules/estraverse": {
+      "version": "4.3.0",
+      "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz",
+      "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==",
+      "dev": true,
+      "engines": {
+        "node": ">=4.0"
+      }
+    },
+    "node_modules/esutils": {
+      "version": "2.0.3",
+      "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz",
+      "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==",
+      "dev": true,
+      "engines": {
+        "node": ">=0.10.0"
+      }
+    },
+    "node_modules/events": {
+      "version": "3.3.0",
+      "resolved": "https://registry.npmjs.org/events/-/events-3.3.0.tgz",
+      "integrity": "sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q==",
+      "dev": true,
+      "engines": {
+        "node": ">=0.8.x"
+      }
+    },
+    "node_modules/extract-zip": {
+      "version": "2.0.1",
+      "resolved": "https://registry.npmjs.org/extract-zip/-/extract-zip-2.0.1.tgz",
+      "integrity": "sha512-GDhU9ntwuKyGXdZBUgTIe+vXnWj0fppUEtMDL0+idd5Sta8TGpHssn/eusA9mrPr9qNDym6SxAYZjNvCn/9RBg==",
+      "dependencies": {
+        "debug": "^4.1.1",
+        "get-stream": "^5.1.0",
+        "yauzl": "^2.10.0"
+      },
+      "bin": {
+        "extract-zip": "cli.js"
+      },
+      "engines": {
+        "node": ">= 10.17.0"
+      },
+      "optionalDependencies": {
+        "@types/yauzl": "^2.9.1"
+      }
+    },
+    "node_modules/extsprintf": {
+      "version": "1.4.1",
+      "resolved": "https://registry.npmjs.org/extsprintf/-/extsprintf-1.4.1.tgz",
+      "integrity": "sha512-Wrk35e8ydCKDj/ArClo1VrPVmN8zph5V4AtHwIuHhvMXsKf73UT3BOD+azBIW+3wOJ4FhEH7zyaJCFvChjYvMA==",
+      "dev": true,
+      "engines": [
+        "node >=0.6.0"
+      ],
+      "optional": true
+    },
+    "node_modules/fast-deep-equal": {
+      "version": "3.1.3",
+      "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz",
+      "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==",
+      "dev": true
+    },
+    "node_modules/fast-glob": {
+      "version": "3.3.2",
+      "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.3.2.tgz",
+      "integrity": "sha512-oX2ruAFQwf/Orj8m737Y5adxDQO0LAB7/S5MnxCdTNDd4p6BsyIVsv9JQsATbTSq8KHRpLwIHbVlUNatxd+1Ow==",
+      "dev": true,
+      "dependencies": {
+        "@nodelib/fs.stat": "^2.0.2",
+        "@nodelib/fs.walk": "^1.2.3",
+        "glob-parent": "^5.1.2",
+        "merge2": "^1.3.0",
+        "micromatch": "^4.0.4"
+      },
+      "engines": {
+        "node": ">=8.6.0"
+      }
+    },
+    "node_modules/fast-glob/node_modules/glob-parent": {
+      "version": "5.1.2",
+      "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz",
+      "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==",
+      "dev": true,
+      "dependencies": {
+        "is-glob": "^4.0.1"
+      },
+      "engines": {
+        "node": ">= 6"
+      }
+    },
+    "node_modules/fast-json-stable-stringify": {
+      "version": "2.1.0",
+      "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz",
+      "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==",
+      "dev": true
+    },
+    "node_modules/fast-levenshtein": {
+      "version": "2.0.6",
+      "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz",
+      "integrity": "sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==",
+      "dev": true
+    },
+    "node_modules/fastest-levenshtein": {
+      "version": "1.0.16",
+      "resolved": "https://registry.npmjs.org/fastest-levenshtein/-/fastest-levenshtein-1.0.16.tgz",
+      "integrity": "sha512-eRnCtTTtGZFpQCwhJiUOuxPQWRXVKYDn0b2PeHfXL6/Zi53SLAzAHfVhVWK2AryC/WH05kGfxhFIPvTF0SXQzg==",
+      "dev": true,
+      "engines": {
+        "node": ">= 4.9.1"
+      }
+    },
+    "node_modules/fastq": {
+      "version": "1.17.1",
+      "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.17.1.tgz",
+      "integrity": "sha512-sRVD3lWVIXWg6By68ZN7vho9a1pQcN/WBFaAAsDDFzlJjvoGx0P8z7V1t72grFJfJhu3YPZBuu25f7Kaw2jN1w==",
+      "dev": true,
+      "dependencies": {
+        "reusify": "^1.0.4"
+      }
+    },
+    "node_modules/fd-slicer": {
+      "version": "1.1.0",
+      "resolved": "https://registry.npmjs.org/fd-slicer/-/fd-slicer-1.1.0.tgz",
+      "integrity": "sha512-cE1qsB/VwyQozZ+q1dGxR8LBYNZeofhEdUNGSMbQD3Gw2lAzX9Zb3uIU6Ebc/Fmyjo9AWWfnn0AUCHqtevs/8g==",
+      "dependencies": {
+        "pend": "~1.2.0"
+      }
+    },
+    "node_modules/file-entry-cache": {
+      "version": "6.0.1",
+      "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-6.0.1.tgz",
+      "integrity": "sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg==",
+      "dev": true,
+      "dependencies": {
+        "flat-cache": "^3.0.4"
+      },
+      "engines": {
+        "node": "^10.12.0 || >=12.0.0"
+      }
+    },
+    "node_modules/file-loader": {
+      "version": "6.2.0",
+      "resolved": "https://registry.npmjs.org/file-loader/-/file-loader-6.2.0.tgz",
+      "integrity": "sha512-qo3glqyTa61Ytg4u73GultjHGjdRyig3tG6lPtyX/jOEJvHif9uB0/OCI2Kif6ctF3caQTW2G5gym21oAsI4pw==",
+      "dev": true,
+      "dependencies": {
+        "loader-utils": "^2.0.0",
+        "schema-utils": "^3.0.0"
+      },
+      "engines": {
+        "node": ">= 10.13.0"
+      },
+      "funding": {
+        "type": "opencollective",
+        "url": "https://opencollective.com/webpack"
+      },
+      "peerDependencies": {
+        "webpack": "^4.0.0 || ^5.0.0"
+      }
+    },
+    "node_modules/filelist": {
+      "version": "1.0.4",
+      "resolved": "https://registry.npmjs.org/filelist/-/filelist-1.0.4.tgz",
+      "integrity": "sha512-w1cEuf3S+DrLCQL7ET6kz+gmlJdbq9J7yXCSjK/OZCPA+qEN1WyF4ZAf0YYJa4/shHJra2t/d/r8SV4Ji+x+8Q==",
+      "dev": true,
+      "dependencies": {
+        "minimatch": "^5.0.1"
+      }
+    },
+    "node_modules/fill-range": {
+      "version": "7.0.1",
+      "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz",
+      "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==",
+      "dev": true,
+      "dependencies": {
+        "to-regex-range": "^5.0.1"
+      },
+      "engines": {
+        "node": ">=8"
+      }
+    },
+    "node_modules/find-up": {
+      "version": "5.0.0",
+      "resolved": "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz",
+      "integrity": "sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==",
+      "dev": true,
+      "dependencies": {
+        "locate-path": "^6.0.0",
+        "path-exists": "^4.0.0"
+      },
+      "engines": {
+        "node": ">=10"
+      },
+      "funding": {
+        "url": "https://github.com/sponsors/sindresorhus"
+      }
+    },
+    "node_modules/flat": {
+      "version": "5.0.2",
+      "resolved": "https://registry.npmjs.org/flat/-/flat-5.0.2.tgz",
+      "integrity": "sha512-b6suED+5/3rTpUBdG1gupIl8MPFCAMA0QXwmljLhvCUKcUvdE4gWky9zpuGCcXHOsz4J9wPGNWq6OKpmIzz3hQ==",
+      "dev": true,
+      "bin": {
+        "flat": "cli.js"
+      }
+    },
+    "node_modules/flat-cache": {
+      "version": "3.2.0",
+      "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-3.2.0.tgz",
+      "integrity": "sha512-CYcENa+FtcUKLmhhqyctpclsq7QF38pKjZHsGNiSQF5r4FtoKDWabFDl3hzaEQMvT1LHEysw5twgLvpYYb4vbw==",
+      "dev": true,
+      "dependencies": {
+        "flatted": "^3.2.9",
+        "keyv": "^4.5.3",
+        "rimraf": "^3.0.2"
+      },
+      "engines": {
+        "node": "^10.12.0 || >=12.0.0"
+      }
+    },
+    "node_modules/flat-cache/node_modules/rimraf": {
+      "version": "3.0.2",
+      "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz",
+      "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==",
+      "dev": true,
+      "dependencies": {
+        "glob": "^7.1.3"
+      },
+      "bin": {
+        "rimraf": "bin.js"
+      },
+      "funding": {
+        "url": "https://github.com/sponsors/isaacs"
+      }
+    },
+    "node_modules/flatted": {
+      "version": "3.3.1",
+      "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.3.1.tgz",
+      "integrity": "sha512-X8cqMLLie7KsNUDSdzeN8FYK9rEt4Dt67OsG/DNGnYTSDBG4uFAJFBnUeiV+zCVAvwFy56IjM9sH51jVaEhNxw==",
+      "dev": true
+    },
+    "node_modules/foreground-child": {
+      "version": "3.1.1",
+      "resolved": "https://registry.npmjs.org/foreground-child/-/foreground-child-3.1.1.tgz",
+      "integrity": "sha512-TMKDUnIte6bfb5nWv7V/caI169OHgvwjb7V4WkeUvbQQdjr5rWKqHFiKWb/fcOwB+CzBT+qbWjvj+DVwRskpIg==",
+      "dev": true,
+      "dependencies": {
+        "cross-spawn": "^7.0.0",
+        "signal-exit": "^4.0.1"
+      },
+      "engines": {
+        "node": ">=14"
+      },
+      "funding": {
+        "url": "https://github.com/sponsors/isaacs"
+      }
+    },
+    "node_modules/form-data": {
+      "version": "4.0.0",
+      "resolved": "https://registry.npmjs.org/form-data/-/form-data-4.0.0.tgz",
+      "integrity": "sha512-ETEklSGi5t0QMZuiXoA/Q6vcnxcLQP5vdugSpuAyi6SVGi2clPPp+xgEhuMaHC+zGgn31Kd235W35f7Hykkaww==",
+      "dev": true,
+      "dependencies": {
+        "asynckit": "^0.4.0",
+        "combined-stream": "^1.0.8",
+        "mime-types": "^2.1.12"
+      },
+      "engines": {
+        "node": ">= 6"
+      }
+    },
+    "node_modules/fs-constants": {
+      "version": "1.0.0",
+      "resolved": "https://registry.npmjs.org/fs-constants/-/fs-constants-1.0.0.tgz",
+      "integrity": "sha512-y6OAwoSIf7FyjMIv94u+b5rdheZEjzR63GTyZJm5qh4Bi+2YgwLCcI/fPFZkL5PSixOt6ZNKm+w+Hfp/Bciwow==",
+      "dev": true,
+      "peer": true
+    },
+    "node_modules/fs-extra": {
+      "version": "8.1.0",
+      "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-8.1.0.tgz",
+      "integrity": "sha512-yhlQgA6mnOJUKOsRUFsgJdQCvkKhcz8tlZG5HBQfReYZy46OwLcY+Zia0mtdHsOo9y/hP+CxMN0TU9QxoOtG4g==",
+      "dependencies": {
+        "graceful-fs": "^4.2.0",
+        "jsonfile": "^4.0.0",
+        "universalify": "^0.1.0"
+      },
+      "engines": {
+        "node": ">=6 <7 || >=8"
+      }
+    },
+    "node_modules/fs-minipass": {
+      "version": "2.1.0",
+      "resolved": "https://registry.npmjs.org/fs-minipass/-/fs-minipass-2.1.0.tgz",
+      "integrity": "sha512-V/JgOLFCS+R6Vcq0slCuaeWEdNC3ouDlJMNIsacH2VtALiu9mV4LPrHc5cDl8k5aw6J8jwgWWpiTo5RYhmIzvg==",
+      "dev": true,
+      "dependencies": {
+        "minipass": "^3.0.0"
+      },
+      "engines": {
+        "node": ">= 8"
+      }
+    },
+    "node_modules/fs-minipass/node_modules/minipass": {
+      "version": "3.3.6",
+      "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz",
+      "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==",
+      "dev": true,
+      "dependencies": {
+        "yallist": "^4.0.0"
+      },
+      "engines": {
+        "node": ">=8"
+      }
+    },
+    "node_modules/fs.realpath": {
+      "version": "1.0.0",
+      "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz",
+      "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==",
+      "dev": true
+    },
+    "node_modules/fsevents": {
+      "version": "2.3.3",
+      "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.3.tgz",
+      "integrity": "sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==",
+      "dev": true,
+      "hasInstallScript": true,
+      "optional": true,
+      "os": [
+        "darwin"
+      ],
+      "engines": {
+        "node": "^8.16.0 || ^10.6.0 || >=11.0.0"
+      }
+    },
+    "node_modules/function-bind": {
+      "version": "1.1.2",
+      "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.2.tgz",
+      "integrity": "sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==",
+      "devOptional": true,
+      "funding": {
+        "url": "https://github.com/sponsors/ljharb"
+      }
+    },
+    "node_modules/get-caller-file": {
+      "version": "2.0.5",
+      "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz",
+      "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==",
+      "dev": true,
+      "engines": {
+        "node": "6.* || 8.* || >= 10.*"
+      }
+    },
+    "node_modules/get-intrinsic": {
+      "version": "1.2.4",
+      "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.2.4.tgz",
+      "integrity": "sha512-5uYhsJH8VJBTv7oslg4BznJYhDoRI6waYCxMmCdnTrcCrHA/fCFKoTFz2JKKE0HdDFUF7/oQuhzumXJK7paBRQ==",
+      "optional": true,
+      "dependencies": {
+        "es-errors": "^1.3.0",
+        "function-bind": "^1.1.2",
+        "has-proto": "^1.0.1",
+        "has-symbols": "^1.0.3",
+        "hasown": "^2.0.0"
+      },
+      "engines": {
+        "node": ">= 0.4"
+      },
+      "funding": {
+        "url": "https://github.com/sponsors/ljharb"
+      }
+    },
+    "node_modules/get-stream": {
+      "version": "5.2.0",
+      "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-5.2.0.tgz",
+      "integrity": "sha512-nBF+F1rAZVCu/p7rjzgA+Yb4lfYXrpl7a6VmJrU8wF9I1CKvP/QwPNZHnOlwbTkY6dvtFIzFMSyQXbLoTQPRpA==",
+      "dependencies": {
+        "pump": "^3.0.0"
+      },
+      "engines": {
+        "node": ">=8"
+      },
+      "funding": {
+        "url": "https://github.com/sponsors/sindresorhus"
+      }
+    },
+    "node_modules/get-tsconfig": {
+      "version": "4.7.3",
+      "resolved": "https://registry.npmjs.org/get-tsconfig/-/get-tsconfig-4.7.3.tgz",
+      "integrity": "sha512-ZvkrzoUA0PQZM6fy6+/Hce561s+faD1rsNwhnO5FelNjyy7EMGJ3Rz1AQ8GYDWjhRs/7dBLOEJvhK8MiEJOAFg==",
+      "dev": true,
+      "dependencies": {
+        "resolve-pkg-maps": "^1.0.0"
+      },
+      "funding": {
+        "url": "https://github.com/privatenumber/get-tsconfig?sponsor=1"
+      }
+    },
+    "node_modules/glob": {
+      "version": "7.2.3",
+      "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz",
+      "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==",
+      "dev": true,
+      "dependencies": {
+        "fs.realpath": "^1.0.0",
+        "inflight": "^1.0.4",
+        "inherits": "2",
+        "minimatch": "^3.1.1",
+        "once": "^1.3.0",
+        "path-is-absolute": "^1.0.0"
+      },
+      "engines": {
+        "node": "*"
+      },
+      "funding": {
+        "url": "https://github.com/sponsors/isaacs"
+      }
+    },
+    "node_modules/glob-parent": {
+      "version": "6.0.2",
+      "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-6.0.2.tgz",
+      "integrity": "sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==",
+      "dev": true,
+      "dependencies": {
+        "is-glob": "^4.0.3"
+      },
+      "engines": {
+        "node": ">=10.13.0"
+      }
+    },
+    "node_modules/glob-to-regexp": {
+      "version": "0.4.1",
+      "resolved": "https://registry.npmjs.org/glob-to-regexp/-/glob-to-regexp-0.4.1.tgz",
+      "integrity": "sha512-lkX1HJXwyMcprw/5YUZc2s7DrpAiHB21/V+E1rHUrVNokkvB6bqMzT0VfV6/86ZNabt1k14YOIaT7nDvOX3Iiw==",
+      "dev": true
+    },
+    "node_modules/glob/node_modules/brace-expansion": {
+      "version": "1.1.11",
+      "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz",
+      "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==",
+      "dev": true,
+      "dependencies": {
+        "balanced-match": "^1.0.0",
+        "concat-map": "0.0.1"
+      }
+    },
+    "node_modules/glob/node_modules/minimatch": {
+      "version": "3.1.2",
+      "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz",
+      "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==",
+      "dev": true,
+      "dependencies": {
+        "brace-expansion": "^1.1.7"
+      },
+      "engines": {
+        "node": "*"
+      }
+    },
+    "node_modules/global-agent": {
+      "version": "3.0.0",
+      "resolved": "https://registry.npmjs.org/global-agent/-/global-agent-3.0.0.tgz",
+      "integrity": "sha512-PT6XReJ+D07JvGoxQMkT6qji/jVNfX/h364XHZOWeRzy64sSFr+xJ5OX7LI3b4MPQzdL4H8Y8M0xzPpsVMwA8Q==",
+      "optional": true,
+      "dependencies": {
+        "boolean": "^3.0.1",
+        "es6-error": "^4.1.1",
+        "matcher": "^3.0.0",
+        "roarr": "^2.15.3",
+        "semver": "^7.3.2",
+        "serialize-error": "^7.0.1"
+      },
+      "engines": {
+        "node": ">=10.0"
+      }
+    },
+    "node_modules/globals": {
+      "version": "13.24.0",
+      "resolved": "https://registry.npmjs.org/globals/-/globals-13.24.0.tgz",
+      "integrity": "sha512-AhO5QUcj8llrbG09iWhPU2B204J1xnPeL8kQmVorSsy+Sjj1sk8gIyh6cUocGmH4L0UuhAJy+hJMRA4mgA4mFQ==",
+      "dev": true,
+      "dependencies": {
+        "type-fest": "^0.20.2"
+      },
+      "engines": {
+        "node": ">=8"
+      },
+      "funding": {
+        "url": "https://github.com/sponsors/sindresorhus"
+      }
+    },
+    "node_modules/globalthis": {
+      "version": "1.0.4",
+      "resolved": "https://registry.npmjs.org/globalthis/-/globalthis-1.0.4.tgz",
+      "integrity": "sha512-DpLKbNU4WylpxJykQujfCcwYWiV/Jhm50Goo0wrVILAv5jOr9d+H+UR3PhSCD2rCCEIg0uc+G+muBTwD54JhDQ==",
+      "optional": true,
+      "dependencies": {
+        "define-properties": "^1.2.1",
+        "gopd": "^1.0.1"
+      },
+      "engines": {
+        "node": ">= 0.4"
+      },
+      "funding": {
+        "url": "https://github.com/sponsors/ljharb"
+      }
+    },
+    "node_modules/globby": {
+      "version": "11.1.0",
+      "resolved": "https://registry.npmjs.org/globby/-/globby-11.1.0.tgz",
+      "integrity": "sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g==",
+      "dev": true,
+      "dependencies": {
+        "array-union": "^2.1.0",
+        "dir-glob": "^3.0.1",
+        "fast-glob": "^3.2.9",
+        "ignore": "^5.2.0",
+        "merge2": "^1.4.1",
+        "slash": "^3.0.0"
+      },
+      "engines": {
+        "node": ">=10"
+      },
+      "funding": {
+        "url": "https://github.com/sponsors/sindresorhus"
+      }
+    },
+    "node_modules/gopd": {
+      "version": "1.0.1",
+      "resolved": "https://registry.npmjs.org/gopd/-/gopd-1.0.1.tgz",
+      "integrity": "sha512-d65bNlIadxvpb/A2abVdlqKqV563juRnZ1Wtk6s1sIR8uNsXR70xqIzVqxVf1eTqDunwT2MkczEeaezCKTZhwA==",
+      "optional": true,
+      "dependencies": {
+        "get-intrinsic": "^1.1.3"
+      },
+      "funding": {
+        "url": "https://github.com/sponsors/ljharb"
+      }
+    },
+    "node_modules/got": {
+      "version": "11.8.6",
+      "resolved": "https://registry.npmjs.org/got/-/got-11.8.6.tgz",
+      "integrity": "sha512-6tfZ91bOr7bOXnK7PRDCGBLa1H4U080YHNaAQ2KsMGlLEzRbk44nsZF2E1IeRc3vtJHPVbKCYgdFbaGO2ljd8g==",
+      "dependencies": {
+        "@sindresorhus/is": "^4.0.0",
+        "@szmarczak/http-timer": "^4.0.5",
+        "@types/cacheable-request": "^6.0.1",
+        "@types/responselike": "^1.0.0",
+        "cacheable-lookup": "^5.0.3",
+        "cacheable-request": "^7.0.2",
+        "decompress-response": "^6.0.0",
+        "http2-wrapper": "^1.0.0-beta.5.2",
+        "lowercase-keys": "^2.0.0",
+        "p-cancelable": "^2.0.0",
+        "responselike": "^2.0.0"
+      },
+      "engines": {
+        "node": ">=10.19.0"
+      },
+      "funding": {
+        "url": "https://github.com/sindresorhus/got?sponsor=1"
+      }
+    },
+    "node_modules/graceful-fs": {
+      "version": "4.2.11",
+      "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.11.tgz",
+      "integrity": "sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ=="
+    },
+    "node_modules/graphemer": {
+      "version": "1.4.0",
+      "resolved": "https://registry.npmjs.org/graphemer/-/graphemer-1.4.0.tgz",
+      "integrity": "sha512-EtKwoO6kxCL9WO5xipiHTZlSzBm7WLT627TqC/uVRd0HKmq8NXyebnNYxDoBi7wt8eTWrUrKXCOVaFq9x1kgag==",
+      "dev": true
+    },
+    "node_modules/gzip-size": {
+      "version": "6.0.0",
+      "resolved": "https://registry.npmjs.org/gzip-size/-/gzip-size-6.0.0.tgz",
+      "integrity": "sha512-ax7ZYomf6jqPTQ4+XCpUGyXKHk5WweS+e05MBO4/y3WJ5RkmPXNKvX+bx1behVILVwr6JSQvZAku021CHPXG3Q==",
+      "dev": true,
+      "dependencies": {
+        "duplexer": "^0.1.2"
+      },
+      "engines": {
+        "node": ">=10"
+      },
+      "funding": {
+        "url": "https://github.com/sponsors/sindresorhus"
+      }
+    },
+    "node_modules/has-flag": {
+      "version": "4.0.0",
+      "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
+      "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==",
+      "dev": true,
+      "engines": {
+        "node": ">=8"
+      }
+    },
+    "node_modules/has-property-descriptors": {
+      "version": "1.0.2",
+      "resolved": "https://registry.npmjs.org/has-property-descriptors/-/has-property-descriptors-1.0.2.tgz",
+      "integrity": "sha512-55JNKuIW+vq4Ke1BjOTjM2YctQIvCT7GFzHwmfZPGo5wnrgkid0YQtnAleFSqumZm4az3n2BS+erby5ipJdgrg==",
+      "optional": true,
+      "dependencies": {
+        "es-define-property": "^1.0.0"
+      },
+      "funding": {
+        "url": "https://github.com/sponsors/ljharb"
+      }
+    },
+    "node_modules/has-proto": {
+      "version": "1.0.3",
+      "resolved": "https://registry.npmjs.org/has-proto/-/has-proto-1.0.3.tgz",
+      "integrity": "sha512-SJ1amZAJUiZS+PhsVLf5tGydlaVB8EdFpaSO4gmiUKUOxk8qzn5AIy4ZeJUmh22znIdk/uMAUT2pl3FxzVUH+Q==",
+      "optional": true,
+      "engines": {
+        "node": ">= 0.4"
+      },
+      "funding": {
+        "url": "https://github.com/sponsors/ljharb"
+      }
+    },
+    "node_modules/has-symbols": {
+      "version": "1.0.3",
+      "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.3.tgz",
+      "integrity": "sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A==",
+      "optional": true,
+      "engines": {
+        "node": ">= 0.4"
+      },
+      "funding": {
+        "url": "https://github.com/sponsors/ljharb"
+      }
+    },
+    "node_modules/hasown": {
+      "version": "2.0.2",
+      "resolved": "https://registry.npmjs.org/hasown/-/hasown-2.0.2.tgz",
+      "integrity": "sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ==",
+      "devOptional": true,
+      "dependencies": {
+        "function-bind": "^1.1.2"
+      },
+      "engines": {
+        "node": ">= 0.4"
+      }
+    },
+    "node_modules/he": {
+      "version": "1.2.0",
+      "resolved": "https://registry.npmjs.org/he/-/he-1.2.0.tgz",
+      "integrity": "sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw==",
+      "dev": true,
+      "bin": {
+        "he": "bin/he"
+      }
+    },
+    "node_modules/hosted-git-info": {
+      "version": "4.1.0",
+      "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-4.1.0.tgz",
+      "integrity": "sha512-kyCuEOWjJqZuDbRHzL8V93NzQhwIB71oFWSyzVo+KPZI+pnQPPxucdkrOZvkLRnrf5URsQM+IJ09Dw29cRALIA==",
+      "dev": true,
+      "dependencies": {
+        "lru-cache": "^6.0.0"
+      },
+      "engines": {
+        "node": ">=10"
+      }
+    },
+    "node_modules/html-escaper": {
+      "version": "2.0.2",
+      "resolved": "https://registry.npmjs.org/html-escaper/-/html-escaper-2.0.2.tgz",
+      "integrity": "sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg==",
+      "dev": true
+    },
+    "node_modules/html-loader": {
+      "version": "2.1.2",
+      "resolved": "https://registry.npmjs.org/html-loader/-/html-loader-2.1.2.tgz",
+      "integrity": "sha512-XB4O1+6mpLp4qy/3qg5+1QPZ/uXvWtO64hNAX87sKHwcHkp1LJGU7V3sJ9iVmRACElAZXQ4YOO/Lbkx5kYfl9A==",
+      "dev": true,
+      "dependencies": {
+        "html-minifier-terser": "^5.1.1",
+        "parse5": "^6.0.1"
+      },
+      "engines": {
+        "node": ">= 10.13.0"
+      },
+      "funding": {
+        "type": "opencollective",
+        "url": "https://opencollective.com/webpack"
+      },
+      "peerDependencies": {
+        "webpack": "^5.0.0"
+      }
+    },
+    "node_modules/html-minifier-terser": {
+      "version": "5.1.1",
+      "resolved": "https://registry.npmjs.org/html-minifier-terser/-/html-minifier-terser-5.1.1.tgz",
+      "integrity": "sha512-ZPr5MNObqnV/T9akshPKbVgyOqLmy+Bxo7juKCfTfnjNniTAMdy4hz21YQqoofMBJD2kdREaqPPdThoR78Tgxg==",
+      "dev": true,
+      "dependencies": {
+        "camel-case": "^4.1.1",
+        "clean-css": "^4.2.3",
+        "commander": "^4.1.1",
+        "he": "^1.2.0",
+        "param-case": "^3.0.3",
+        "relateurl": "^0.2.7",
+        "terser": "^4.6.3"
+      },
+      "bin": {
+        "html-minifier-terser": "cli.js"
+      },
+      "engines": {
+        "node": ">=6"
+      }
+    },
+    "node_modules/html-minifier-terser/node_modules/commander": {
+      "version": "4.1.1",
+      "resolved": "https://registry.npmjs.org/commander/-/commander-4.1.1.tgz",
+      "integrity": "sha512-NOKm8xhkzAjzFx8B2v5OAHT+u5pRQc2UCa2Vq9jYL/31o2wi9mxBA7LIFs3sV5VSC49z6pEhfbMULvShKj26WA==",
+      "dev": true,
+      "engines": {
+        "node": ">= 6"
+      }
+    },
+    "node_modules/html-webpack-plugin": {
+      "version": "5.6.0",
+      "resolved": "https://registry.npmjs.org/html-webpack-plugin/-/html-webpack-plugin-5.6.0.tgz",
+      "integrity": "sha512-iwaY4wzbe48AfKLZ/Cc8k0L+FKG6oSNRaZ8x5A/T/IVDGyXcbHncM9TdDa93wn0FsSm82FhTKW7f3vS61thXAw==",
+      "dev": true,
+      "dependencies": {
+        "@types/html-minifier-terser": "^6.0.0",
+        "html-minifier-terser": "^6.0.2",
+        "lodash": "^4.17.21",
+        "pretty-error": "^4.0.0",
+        "tapable": "^2.0.0"
+      },
+      "engines": {
+        "node": ">=10.13.0"
+      },
+      "funding": {
+        "type": "opencollective",
+        "url": "https://opencollective.com/html-webpack-plugin"
+      },
+      "peerDependencies": {
+        "@rspack/core": "0.x || 1.x",
+        "webpack": "^5.20.0"
+      },
+      "peerDependenciesMeta": {
+        "@rspack/core": {
+          "optional": true
+        },
+        "webpack": {
+          "optional": true
+        }
+      }
+    },
+    "node_modules/html-webpack-plugin/node_modules/clean-css": {
+      "version": "5.3.3",
+      "resolved": "https://registry.npmjs.org/clean-css/-/clean-css-5.3.3.tgz",
+      "integrity": "sha512-D5J+kHaVb/wKSFcyyV75uCn8fiY4sV38XJoe4CUyGQ+mOU/fMVYUdH1hJC+CJQ5uY3EnW27SbJYS4X8BiLrAFg==",
+      "dev": true,
+      "dependencies": {
+        "source-map": "~0.6.0"
+      },
+      "engines": {
+        "node": ">= 10.0"
+      }
+    },
+    "node_modules/html-webpack-plugin/node_modules/commander": {
+      "version": "8.3.0",
+      "resolved": "https://registry.npmjs.org/commander/-/commander-8.3.0.tgz",
+      "integrity": "sha512-OkTL9umf+He2DZkUq8f8J9of7yL6RJKI24dVITBmNfZBmri9zYZQrKkuXiKhyfPSu8tUhnVBB1iKXevvnlR4Ww==",
+      "dev": true,
+      "engines": {
+        "node": ">= 12"
+      }
+    },
+    "node_modules/html-webpack-plugin/node_modules/html-minifier-terser": {
+      "version": "6.1.0",
+      "resolved": "https://registry.npmjs.org/html-minifier-terser/-/html-minifier-terser-6.1.0.tgz",
+      "integrity": "sha512-YXxSlJBZTP7RS3tWnQw74ooKa6L9b9i9QYXY21eUEvhZ3u9XLfv6OnFsQq6RxkhHygsaUMvYsZRV5rU/OVNZxw==",
+      "dev": true,
+      "dependencies": {
+        "camel-case": "^4.1.2",
+        "clean-css": "^5.2.2",
+        "commander": "^8.3.0",
+        "he": "^1.2.0",
+        "param-case": "^3.0.4",
+        "relateurl": "^0.2.7",
+        "terser": "^5.10.0"
+      },
+      "bin": {
+        "html-minifier-terser": "cli.js"
+      },
+      "engines": {
+        "node": ">=12"
+      }
+    },
+    "node_modules/html-webpack-plugin/node_modules/terser": {
+      "version": "5.31.0",
+      "resolved": "https://registry.npmjs.org/terser/-/terser-5.31.0.tgz",
+      "integrity": "sha512-Q1JFAoUKE5IMfI4Z/lkE/E6+SwgzO+x4tq4v1AyBLRj8VSYvRO6A/rQrPg1yud4g0En9EKI1TvFRF2tQFcoUkg==",
+      "dev": true,
+      "dependencies": {
+        "@jridgewell/source-map": "^0.3.3",
+        "acorn": "^8.8.2",
+        "commander": "^2.20.0",
+        "source-map-support": "~0.5.20"
+      },
+      "bin": {
+        "terser": "bin/terser"
+      },
+      "engines": {
+        "node": ">=10"
+      }
+    },
+    "node_modules/html-webpack-plugin/node_modules/terser/node_modules/commander": {
+      "version": "2.20.3",
+      "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz",
+      "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==",
+      "dev": true
+    },
+    "node_modules/htmlparser2": {
+      "version": "6.1.0",
+      "resolved": "https://registry.npmjs.org/htmlparser2/-/htmlparser2-6.1.0.tgz",
+      "integrity": "sha512-gyyPk6rgonLFEDGoeRgQNaEUvdJ4ktTmmUh/h2t7s+M8oPpIPxgNACWa+6ESR57kXstwqPiCut0V8NRpcwgU7A==",
+      "dev": true,
+      "funding": [
+        "https://github.com/fb55/htmlparser2?sponsor=1",
+        {
+          "type": "github",
+          "url": "https://github.com/sponsors/fb55"
+        }
+      ],
+      "dependencies": {
+        "domelementtype": "^2.0.1",
+        "domhandler": "^4.0.0",
+        "domutils": "^2.5.2",
+        "entities": "^2.0.0"
+      }
+    },
+    "node_modules/http-cache-semantics": {
+      "version": "4.1.1",
+      "resolved": "https://registry.npmjs.org/http-cache-semantics/-/http-cache-semantics-4.1.1.tgz",
+      "integrity": "sha512-er295DKPVsV82j5kw1Gjt+ADA/XYHsajl82cGNQG2eyoPkvgUhX+nDIyelzhIWbbsXP39EHcI6l5tYs2FYqYXQ=="
+    },
+    "node_modules/http-proxy-agent": {
+      "version": "5.0.0",
+      "resolved": "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-5.0.0.tgz",
+      "integrity": "sha512-n2hY8YdoRE1i7r6M0w9DIw5GgZN0G25P8zLCRQ8rjXtTU3vsNFBI/vWK/UIeE6g5MUUz6avwAPXmL6Fy9D/90w==",
+      "dev": true,
+      "dependencies": {
+        "@tootallnate/once": "2",
+        "agent-base": "6",
+        "debug": "4"
+      },
+      "engines": {
+        "node": ">= 6"
+      }
+    },
+    "node_modules/http2-wrapper": {
+      "version": "1.0.3",
+      "resolved": "https://registry.npmjs.org/http2-wrapper/-/http2-wrapper-1.0.3.tgz",
+      "integrity": "sha512-V+23sDMr12Wnz7iTcDeJr3O6AIxlnvT/bmaAAAP/Xda35C90p9599p0F1eHR/N1KILWSoWVAiOMFjBBXaXSMxg==",
+      "dependencies": {
+        "quick-lru": "^5.1.1",
+        "resolve-alpn": "^1.0.0"
+      },
+      "engines": {
+        "node": ">=10.19.0"
+      }
+    },
+    "node_modules/https-proxy-agent": {
+      "version": "5.0.1",
+      "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-5.0.1.tgz",
+      "integrity": "sha512-dFcAjpTQFgoLMzC2VwU+C/CbS7uRL0lWmxDITmqm7C+7F0Odmj6s9l6alZc6AELXhrnggM2CeWSXHGOdX2YtwA==",
+      "dev": true,
+      "dependencies": {
+        "agent-base": "6",
+        "debug": "4"
+      },
+      "engines": {
+        "node": ">= 6"
+      }
+    },
+    "node_modules/iconv-corefoundation": {
+      "version": "1.1.7",
+      "resolved": "https://registry.npmjs.org/iconv-corefoundation/-/iconv-corefoundation-1.1.7.tgz",
+      "integrity": "sha512-T10qvkw0zz4wnm560lOEg0PovVqUXuOFhhHAkixw8/sycy7TJt7v/RrkEKEQnAw2viPSJu6iAkErxnzR0g8PpQ==",
+      "dev": true,
+      "optional": true,
+      "os": [
+        "darwin"
+      ],
+      "dependencies": {
+        "cli-truncate": "^2.1.0",
+        "node-addon-api": "^1.6.3"
+      },
+      "engines": {
+        "node": "^8.11.2 || >=10"
+      }
+    },
+    "node_modules/iconv-lite": {
+      "version": "0.6.3",
+      "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.6.3.tgz",
+      "integrity": "sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==",
+      "dev": true,
+      "dependencies": {
+        "safer-buffer": ">= 2.1.2 < 3.0.0"
+      },
+      "engines": {
+        "node": ">=0.10.0"
+      }
+    },
+    "node_modules/icss-utils": {
+      "version": "5.1.0",
+      "resolved": "https://registry.npmjs.org/icss-utils/-/icss-utils-5.1.0.tgz",
+      "integrity": "sha512-soFhflCVWLfRNOPU3iv5Z9VUdT44xFRbzjLsEzSr5AQmgqPMTHdU3PMT1Cf1ssx8fLNJDA1juftYl+PUcv3MqA==",
+      "dev": true,
+      "engines": {
+        "node": "^10 || ^12 || >= 14"
+      },
+      "peerDependencies": {
+        "postcss": "^8.1.0"
+      }
+    },
+    "node_modules/ieee754": {
+      "version": "1.2.1",
+      "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.2.1.tgz",
+      "integrity": "sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==",
+      "dev": true,
+      "funding": [
+        {
+          "type": "github",
+          "url": "https://github.com/sponsors/feross"
+        },
+        {
+          "type": "patreon",
+          "url": "https://www.patreon.com/feross"
+        },
+        {
+          "type": "consulting",
+          "url": "https://feross.org/support"
+        }
+      ]
+    },
+    "node_modules/ifdef-loader": {
+      "version": "2.3.2",
+      "resolved": "https://registry.npmjs.org/ifdef-loader/-/ifdef-loader-2.3.2.tgz",
+      "integrity": "sha512-kH9bHPrfIFxLpq3XEruJqSlHXch2nOljKIDRS/6MU5LDZTyHeaSWVf04wNYX+8RT+NDmeS8Vm5HwZ7akkXo8ig==",
+      "dev": true,
+      "dependencies": {
+        "loader-utils": "^1.1.0"
+      }
+    },
+    "node_modules/ifdef-loader/node_modules/json5": {
+      "version": "1.0.2",
+      "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.2.tgz",
+      "integrity": "sha512-g1MWMLBiz8FKi1e4w0UyVL3w+iJceWAFBAaBnnGKOpNa5f8TLktkbre1+s6oICydWAm+HRUGTmI+//xv2hvXYA==",
+      "dev": true,
+      "dependencies": {
+        "minimist": "^1.2.0"
+      },
+      "bin": {
+        "json5": "lib/cli.js"
+      }
+    },
+    "node_modules/ifdef-loader/node_modules/loader-utils": {
+      "version": "1.4.2",
+      "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-1.4.2.tgz",
+      "integrity": "sha512-I5d00Pd/jwMD2QCduo657+YM/6L3KZu++pmX9VFncxaxvHcru9jx1lBaFft+r4Mt2jK0Yhp41XlRAihzPxHNCg==",
+      "dev": true,
+      "dependencies": {
+        "big.js": "^5.2.2",
+        "emojis-list": "^3.0.0",
+        "json5": "^1.0.1"
+      },
+      "engines": {
+        "node": ">=4.0.0"
+      }
+    },
+    "node_modules/ignore": {
+      "version": "5.3.1",
+      "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.3.1.tgz",
+      "integrity": "sha512-5Fytz/IraMjqpwfd34ke28PTVMjZjJG2MPn5t7OE4eUCUNf8BAa7b5WUS9/Qvr6mwOQS7Mk6vdsMno5he+T8Xw==",
+      "dev": true,
+      "engines": {
+        "node": ">= 4"
+      }
+    },
+    "node_modules/immutable": {
+      "version": "4.3.5",
+      "resolved": "https://registry.npmjs.org/immutable/-/immutable-4.3.5.tgz",
+      "integrity": "sha512-8eabxkth9gZatlwl5TBuJnCsoTADlL6ftEr7A4qgdaTsPyreilDSnUk57SO+jfKcNtxPa22U5KK6DSeAYhpBJw==",
+      "dev": true
+    },
+    "node_modules/import-fresh": {
+      "version": "3.3.0",
+      "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz",
+      "integrity": "sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==",
+      "dev": true,
+      "dependencies": {
+        "parent-module": "^1.0.0",
+        "resolve-from": "^4.0.0"
+      },
+      "engines": {
+        "node": ">=6"
+      },
+      "funding": {
+        "url": "https://github.com/sponsors/sindresorhus"
+      }
+    },
+    "node_modules/import-local": {
+      "version": "3.1.0",
+      "resolved": "https://registry.npmjs.org/import-local/-/import-local-3.1.0.tgz",
+      "integrity": "sha512-ASB07uLtnDs1o6EHjKpX34BKYDSqnFerfTOJL2HvMqF70LnxpjkzDB8J44oT9pu4AMPkQwf8jl6szgvNd2tRIg==",
+      "dev": true,
+      "dependencies": {
+        "pkg-dir": "^4.2.0",
+        "resolve-cwd": "^3.0.0"
+      },
+      "bin": {
+        "import-local-fixture": "fixtures/cli.js"
+      },
+      "engines": {
+        "node": ">=8"
+      },
+      "funding": {
+        "url": "https://github.com/sponsors/sindresorhus"
+      }
+    },
+    "node_modules/imurmurhash": {
+      "version": "0.1.4",
+      "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz",
+      "integrity": "sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==",
+      "dev": true,
+      "engines": {
+        "node": ">=0.8.19"
+      }
+    },
+    "node_modules/inflight": {
+      "version": "1.0.6",
+      "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz",
+      "integrity": "sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==",
+      "dev": true,
+      "dependencies": {
+        "once": "^1.3.0",
+        "wrappy": "1"
+      }
+    },
+    "node_modules/inherits": {
+      "version": "2.0.4",
+      "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz",
+      "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==",
+      "dev": true
+    },
+    "node_modules/interpret": {
+      "version": "2.2.0",
+      "resolved": "https://registry.npmjs.org/interpret/-/interpret-2.2.0.tgz",
+      "integrity": "sha512-Ju0Bz/cEia55xDwUWEa8+olFpCiQoypjnQySseKtmjNrnps3P+xfpUmGr90T7yjlVJmOtybRvPXhKMbHr+fWnw==",
+      "dev": true,
+      "engines": {
+        "node": ">= 0.10"
+      }
+    },
+    "node_modules/is-binary-path": {
+      "version": "2.1.0",
+      "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz",
+      "integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==",
+      "dev": true,
+      "dependencies": {
+        "binary-extensions": "^2.0.0"
+      },
+      "engines": {
+        "node": ">=8"
+      }
+    },
+    "node_modules/is-ci": {
+      "version": "3.0.1",
+      "resolved": "https://registry.npmjs.org/is-ci/-/is-ci-3.0.1.tgz",
+      "integrity": "sha512-ZYvCgrefwqoQ6yTyYUbQu64HsITZ3NfKX1lzaEYdkTDcfKzzCI/wthRRYKkdjHKFVgNiXKAKm65Zo1pk2as/QQ==",
+      "dev": true,
+      "dependencies": {
+        "ci-info": "^3.2.0"
+      },
+      "bin": {
+        "is-ci": "bin.js"
+      }
+    },
+    "node_modules/is-core-module": {
+      "version": "2.13.1",
+      "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.13.1.tgz",
+      "integrity": "sha512-hHrIjvZsftOsvKSn2TRYl63zvxsgE0K+0mYMoH6gD4omR5IWB2KynivBQczo3+wF1cCkjzvptnI9Q0sPU66ilw==",
+      "dev": true,
+      "dependencies": {
+        "hasown": "^2.0.0"
+      },
+      "funding": {
+        "url": "https://github.com/sponsors/ljharb"
+      }
+    },
+    "node_modules/is-extglob": {
+      "version": "2.1.1",
+      "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz",
+      "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==",
+      "dev": true,
+      "engines": {
+        "node": ">=0.10.0"
+      }
+    },
+    "node_modules/is-fullwidth-code-point": {
+      "version": "3.0.0",
+      "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz",
+      "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==",
+      "dev": true,
+      "engines": {
+        "node": ">=8"
+      }
+    },
+    "node_modules/is-glob": {
+      "version": "4.0.3",
+      "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz",
+      "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==",
+      "dev": true,
+      "dependencies": {
+        "is-extglob": "^2.1.1"
+      },
+      "engines": {
+        "node": ">=0.10.0"
+      }
+    },
+    "node_modules/is-number": {
+      "version": "7.0.0",
+      "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz",
+      "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==",
+      "dev": true,
+      "engines": {
+        "node": ">=0.12.0"
+      }
+    },
+    "node_modules/is-path-cwd": {
+      "version": "2.2.0",
+      "resolved": "https://registry.npmjs.org/is-path-cwd/-/is-path-cwd-2.2.0.tgz",
+      "integrity": "sha512-w942bTcih8fdJPJmQHFzkS76NEP8Kzzvmw92cXsazb8intwLqPibPPdXf4ANdKV3rYMuuQYGIWtvz9JilB3NFQ==",
+      "dev": true,
+      "engines": {
+        "node": ">=6"
+      }
+    },
+    "node_modules/is-path-in-cwd": {
+      "version": "2.1.0",
+      "resolved": "https://registry.npmjs.org/is-path-in-cwd/-/is-path-in-cwd-2.1.0.tgz",
+      "integrity": "sha512-rNocXHgipO+rvnP6dk3zI20RpOtrAM/kzbB258Uw5BWr3TpXi861yzjo16Dn4hUox07iw5AyeMLHWsujkjzvRQ==",
+      "dev": true,
+      "dependencies": {
+        "is-path-inside": "^2.1.0"
+      },
+      "engines": {
+        "node": ">=6"
+      }
+    },
+    "node_modules/is-path-in-cwd/node_modules/is-path-inside": {
+      "version": "2.1.0",
+      "resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-2.1.0.tgz",
+      "integrity": "sha512-wiyhTzfDWsvwAW53OBWF5zuvaOGlZ6PwYxAbPVDhpm+gM09xKQGjBq/8uYN12aDvMxnAnq3dxTyoSoRNmg5YFg==",
+      "dev": true,
+      "dependencies": {
+        "path-is-inside": "^1.0.2"
+      },
+      "engines": {
+        "node": ">=6"
+      }
+    },
+    "node_modules/is-path-inside": {
+      "version": "3.0.3",
+      "resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-3.0.3.tgz",
+      "integrity": "sha512-Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ==",
+      "dev": true,
+      "engines": {
+        "node": ">=8"
+      }
+    },
+    "node_modules/is-plain-object": {
+      "version": "2.0.4",
+      "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-2.0.4.tgz",
+      "integrity": "sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==",
+      "dev": true,
+      "dependencies": {
+        "isobject": "^3.0.1"
+      },
+      "engines": {
+        "node": ">=0.10.0"
+      }
+    },
+    "node_modules/isarray": {
+      "version": "1.0.0",
+      "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz",
+      "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==",
+      "dev": true,
+      "peer": true
+    },
+    "node_modules/isbinaryfile": {
+      "version": "5.0.2",
+      "resolved": "https://registry.npmjs.org/isbinaryfile/-/isbinaryfile-5.0.2.tgz",
+      "integrity": "sha512-GvcjojwonMjWbTkfMpnVHVqXW/wKMYDfEpY94/8zy8HFMOqb/VL6oeONq9v87q4ttVlaTLnGXnJD4B5B1OTGIg==",
+      "dev": true,
+      "engines": {
+        "node": ">= 18.0.0"
+      },
+      "funding": {
+        "url": "https://github.com/sponsors/gjtorikian/"
+      }
+    },
+    "node_modules/isexe": {
+      "version": "2.0.0",
+      "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz",
+      "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==",
+      "dev": true
+    },
+    "node_modules/isobject": {
+      "version": "3.0.1",
+      "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz",
+      "integrity": "sha512-WhB9zCku7EGTj/HQQRz5aUQEUeoQZH2bWcltRErOpymJ4boYE6wL9Tbr23krRPSZ+C5zqNSrSw+Cc7sZZ4b7vg==",
+      "dev": true,
+      "engines": {
+        "node": ">=0.10.0"
+      }
+    },
+    "node_modules/jackspeak": {
+      "version": "2.3.6",
+      "resolved": "https://registry.npmjs.org/jackspeak/-/jackspeak-2.3.6.tgz",
+      "integrity": "sha512-N3yCS/NegsOBokc8GAdM8UcmfsKiSS8cipheD/nivzr700H+nsMOxJjQnvwOcRYVuFkdH0wGUvW2WbXGmrZGbQ==",
+      "dev": true,
+      "dependencies": {
+        "@isaacs/cliui": "^8.0.2"
+      },
+      "engines": {
+        "node": ">=14"
+      },
+      "funding": {
+        "url": "https://github.com/sponsors/isaacs"
+      },
+      "optionalDependencies": {
+        "@pkgjs/parseargs": "^0.11.0"
+      }
+    },
+    "node_modules/jake": {
+      "version": "10.9.1",
+      "resolved": "https://registry.npmjs.org/jake/-/jake-10.9.1.tgz",
+      "integrity": "sha512-61btcOHNnLnsOdtLgA5efqQWjnSi/vow5HbI7HMdKKWqvrKR1bLK3BPlJn9gcSaP2ewuamUSMB5XEy76KUIS2w==",
+      "dev": true,
+      "dependencies": {
+        "async": "^3.2.3",
+        "chalk": "^4.0.2",
+        "filelist": "^1.0.4",
+        "minimatch": "^3.1.2"
+      },
+      "bin": {
+        "jake": "bin/cli.js"
+      },
+      "engines": {
+        "node": ">=10"
+      }
+    },
+    "node_modules/jake/node_modules/brace-expansion": {
+      "version": "1.1.11",
+      "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz",
+      "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==",
+      "dev": true,
+      "dependencies": {
+        "balanced-match": "^1.0.0",
+        "concat-map": "0.0.1"
+      }
+    },
+    "node_modules/jake/node_modules/minimatch": {
+      "version": "3.1.2",
+      "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz",
+      "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==",
+      "dev": true,
+      "dependencies": {
+        "brace-expansion": "^1.1.7"
+      },
+      "engines": {
+        "node": "*"
+      }
+    },
+    "node_modules/jest-worker": {
+      "version": "27.5.1",
+      "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-27.5.1.tgz",
+      "integrity": "sha512-7vuh85V5cdDofPyxn58nrPjBktZo0u9x1g8WtjQol+jZDaE+fhN+cIvTj11GndBnMnyfrUOG1sZQxCdjKh+DKg==",
+      "dev": true,
+      "dependencies": {
+        "@types/node": "*",
+        "merge-stream": "^2.0.0",
+        "supports-color": "^8.0.0"
+      },
+      "engines": {
+        "node": ">= 10.13.0"
+      }
+    },
+    "node_modules/jest-worker/node_modules/supports-color": {
+      "version": "8.1.1",
+      "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz",
+      "integrity": "sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==",
+      "dev": true,
+      "dependencies": {
+        "has-flag": "^4.0.0"
+      },
+      "engines": {
+        "node": ">=10"
+      },
+      "funding": {
+        "url": "https://github.com/chalk/supports-color?sponsor=1"
+      }
+    },
+    "node_modules/js-yaml": {
+      "version": "4.1.0",
+      "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz",
+      "integrity": "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==",
+      "dev": true,
+      "dependencies": {
+        "argparse": "^2.0.1"
+      },
+      "bin": {
+        "js-yaml": "bin/js-yaml.js"
+      }
+    },
+    "node_modules/json-buffer": {
+      "version": "3.0.1",
+      "resolved": "https://registry.npmjs.org/json-buffer/-/json-buffer-3.0.1.tgz",
+      "integrity": "sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ=="
+    },
+    "node_modules/json-parse-even-better-errors": {
+      "version": "2.3.1",
+      "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz",
+      "integrity": "sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==",
+      "dev": true
+    },
+    "node_modules/json-schema-traverse": {
+      "version": "0.4.1",
+      "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz",
+      "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==",
+      "dev": true
+    },
+    "node_modules/json-stable-stringify-without-jsonify": {
+      "version": "1.0.1",
+      "resolved": "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz",
+      "integrity": "sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==",
+      "dev": true
+    },
+    "node_modules/json-stringify-safe": {
+      "version": "5.0.1",
+      "resolved": "https://registry.npmjs.org/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz",
+      "integrity": "sha512-ZClg6AaYvamvYEE82d3Iyd3vSSIjQ+odgjaTzRuO3s7toCdFKczob2i0zCh7JE8kWn17yvAWhUVxvqGwUalsRA==",
+      "optional": true
+    },
+    "node_modules/json5": {
+      "version": "2.2.3",
+      "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.3.tgz",
+      "integrity": "sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==",
+      "dev": true,
+      "bin": {
+        "json5": "lib/cli.js"
+      },
+      "engines": {
+        "node": ">=6"
+      }
+    },
+    "node_modules/jsonfile": {
+      "version": "4.0.0",
+      "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-4.0.0.tgz",
+      "integrity": "sha512-m6F1R3z8jjlf2imQHS2Qez5sjKWQzbuuhuJ/FKYFRZvPE3PuHcSMVZzfsLhGVOkfd20obL5SWEBew5ShlquNxg==",
+      "optionalDependencies": {
+        "graceful-fs": "^4.1.6"
+      }
+    },
+    "node_modules/keyv": {
+      "version": "4.5.4",
+      "resolved": "https://registry.npmjs.org/keyv/-/keyv-4.5.4.tgz",
+      "integrity": "sha512-oxVHkHR/EJf2CNXnWxRLW6mg7JyCCUcG0DtEGmL2ctUo1PNTin1PUil+r/+4r5MpVgC/fn1kjsx7mjSujKqIpw==",
+      "dependencies": {
+        "json-buffer": "3.0.1"
+      }
+    },
+    "node_modules/kind-of": {
+      "version": "6.0.3",
+      "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz",
+      "integrity": "sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==",
+      "dev": true,
+      "engines": {
+        "node": ">=0.10.0"
+      }
+    },
+    "node_modules/klona": {
+      "version": "2.0.6",
+      "resolved": "https://registry.npmjs.org/klona/-/klona-2.0.6.tgz",
+      "integrity": "sha512-dhG34DXATL5hSxJbIexCft8FChFXtmskoZYnoPWjXQuebWYCNkVeV3KkGegCK9CP1oswI/vQibS2GY7Em/sJJA==",
+      "dev": true,
+      "engines": {
+        "node": ">= 8"
+      }
+    },
+    "node_modules/lazy-val": {
+      "version": "1.0.5",
+      "resolved": "https://registry.npmjs.org/lazy-val/-/lazy-val-1.0.5.tgz",
+      "integrity": "sha512-0/BnGCCfyUMkBpeDgWihanIAF9JmZhHBgUhEqzvf+adhNGLoP6TaiI5oF8oyb3I45P+PcnrqihSf01M0l0G5+Q==",
+      "dev": true
+    },
+    "node_modules/lazystream": {
+      "version": "1.0.1",
+      "resolved": "https://registry.npmjs.org/lazystream/-/lazystream-1.0.1.tgz",
+      "integrity": "sha512-b94GiNHQNy6JNTrt5w6zNyffMrNkXZb3KTkCZJb2V1xaEGCk093vkZ2jk3tpaeP33/OiXC+WvK9AxUebnf5nbw==",
+      "dev": true,
+      "peer": true,
+      "dependencies": {
+        "readable-stream": "^2.0.5"
+      },
+      "engines": {
+        "node": ">= 0.6.3"
+      }
+    },
+    "node_modules/lazystream/node_modules/readable-stream": {
+      "version": "2.3.8",
+      "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.8.tgz",
+      "integrity": "sha512-8p0AUk4XODgIewSi0l8Epjs+EVnWiK7NoDIEGU0HhE7+ZyY8D1IMY7odu5lRrFXGg71L15KG8QrPmum45RTtdA==",
+      "dev": true,
+      "peer": true,
+      "dependencies": {
+        "core-util-is": "~1.0.0",
+        "inherits": "~2.0.3",
+        "isarray": "~1.0.0",
+        "process-nextick-args": "~2.0.0",
+        "safe-buffer": "~5.1.1",
+        "string_decoder": "~1.1.1",
+        "util-deprecate": "~1.0.1"
+      }
+    },
+    "node_modules/lazystream/node_modules/safe-buffer": {
+      "version": "5.1.2",
+      "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz",
+      "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==",
+      "dev": true,
+      "peer": true
+    },
+    "node_modules/lazystream/node_modules/string_decoder": {
+      "version": "1.1.1",
+      "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz",
+      "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==",
+      "dev": true,
+      "peer": true,
+      "dependencies": {
+        "safe-buffer": "~5.1.0"
+      }
+    },
+    "node_modules/levn": {
+      "version": "0.4.1",
+      "resolved": "https://registry.npmjs.org/levn/-/levn-0.4.1.tgz",
+      "integrity": "sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==",
+      "dev": true,
+      "dependencies": {
+        "prelude-ls": "^1.2.1",
+        "type-check": "~0.4.0"
+      },
+      "engines": {
+        "node": ">= 0.8.0"
+      }
+    },
+    "node_modules/loader-runner": {
+      "version": "4.3.0",
+      "resolved": "https://registry.npmjs.org/loader-runner/-/loader-runner-4.3.0.tgz",
+      "integrity": "sha512-3R/1M+yS3j5ou80Me59j7F9IMs4PXs3VqRrm0TU3AbKPxlmpoY1TNscJV/oGJXo8qCatFGTfDbY6W6ipGOYXfg==",
+      "dev": true,
+      "engines": {
+        "node": ">=6.11.5"
+      }
+    },
+    "node_modules/loader-utils": {
+      "version": "2.0.4",
+      "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-2.0.4.tgz",
+      "integrity": "sha512-xXqpXoINfFhgua9xiqD8fPFHgkoq1mmmpE92WlDbm9rNRd/EbRb+Gqf908T2DMfuHjjJlksiK2RbHVOdD/MqSw==",
+      "dev": true,
+      "dependencies": {
+        "big.js": "^5.2.2",
+        "emojis-list": "^3.0.0",
+        "json5": "^2.1.2"
+      },
+      "engines": {
+        "node": ">=8.9.0"
+      }
+    },
+    "node_modules/locate-path": {
+      "version": "6.0.0",
+      "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz",
+      "integrity": "sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==",
+      "dev": true,
+      "dependencies": {
+        "p-locate": "^5.0.0"
+      },
+      "engines": {
+        "node": ">=10"
+      },
+      "funding": {
+        "url": "https://github.com/sponsors/sindresorhus"
+      }
+    },
+    "node_modules/lodash": {
+      "version": "4.17.21",
+      "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz",
+      "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==",
+      "dev": true
+    },
+    "node_modules/lodash.defaults": {
+      "version": "4.2.0",
+      "resolved": "https://registry.npmjs.org/lodash.defaults/-/lodash.defaults-4.2.0.tgz",
+      "integrity": "sha512-qjxPLHd3r5DnsdGacqOMU6pb/avJzdh9tFX2ymgoZE27BmjXrNy/y4LoaiTeAb+O3gL8AfpJGtqfX/ae2leYYQ==",
+      "dev": true,
+      "peer": true
+    },
+    "node_modules/lodash.difference": {
+      "version": "4.5.0",
+      "resolved": "https://registry.npmjs.org/lodash.difference/-/lodash.difference-4.5.0.tgz",
+      "integrity": "sha512-dS2j+W26TQ7taQBGN8Lbbq04ssV3emRw4NY58WErlTO29pIqS0HmoT5aJ9+TUQ1N3G+JOZSji4eugsWwGp9yPA==",
+      "dev": true,
+      "peer": true
+    },
+    "node_modules/lodash.flatten": {
+      "version": "4.4.0",
+      "resolved": "https://registry.npmjs.org/lodash.flatten/-/lodash.flatten-4.4.0.tgz",
+      "integrity": "sha512-C5N2Z3DgnnKr0LOpv/hKCgKdb7ZZwafIrsesve6lmzvZIRZRGaZ/l6Q8+2W7NaT+ZwO3fFlSCzCzrDCFdJfZ4g==",
+      "dev": true,
+      "peer": true
+    },
+    "node_modules/lodash.isplainobject": {
+      "version": "4.0.6",
+      "resolved": "https://registry.npmjs.org/lodash.isplainobject/-/lodash.isplainobject-4.0.6.tgz",
+      "integrity": "sha512-oSXzaWypCMHkPC3NvBEaPHf0KsA5mvPrOPgQWDsbg8n7orZ290M0BmC/jgRZ4vcJ6DTAhjrsSYgdsW/F+MFOBA==",
+      "dev": true,
+      "peer": true
+    },
+    "node_modules/lodash.merge": {
+      "version": "4.6.2",
+      "resolved": "https://registry.npmjs.org/lodash.merge/-/lodash.merge-4.6.2.tgz",
+      "integrity": "sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==",
+      "dev": true
+    },
+    "node_modules/lodash.union": {
+      "version": "4.6.0",
+      "resolved": "https://registry.npmjs.org/lodash.union/-/lodash.union-4.6.0.tgz",
+      "integrity": "sha512-c4pB2CdGrGdjMKYLA+XiRDO7Y0PRQbm/Gzg8qMj+QH+pFVAoTp5sBpO0odL3FjoPCGjK96p6qsP+yQoiLoOBcw==",
+      "dev": true,
+      "peer": true
+    },
+    "node_modules/lower-case": {
+      "version": "2.0.2",
+      "resolved": "https://registry.npmjs.org/lower-case/-/lower-case-2.0.2.tgz",
+      "integrity": "sha512-7fm3l3NAF9WfN6W3JOmf5drwpVqX78JtoGJ3A6W0a6ZnldM41w2fV5D490psKFTpMds8TJse/eHLFFsNHHjHgg==",
+      "dev": true,
+      "dependencies": {
+        "tslib": "^2.0.3"
+      }
+    },
+    "node_modules/lowercase-keys": {
+      "version": "2.0.0",
+      "resolved": "https://registry.npmjs.org/lowercase-keys/-/lowercase-keys-2.0.0.tgz",
+      "integrity": "sha512-tqNXrS78oMOE73NMxK4EMLQsQowWf8jKooH9g7xPavRT706R6bkQJ6DY2Te7QukaZsulxa30wQ7bk0pm4XiHmA==",
+      "engines": {
+        "node": ">=8"
+      }
+    },
+    "node_modules/lru-cache": {
+      "version": "6.0.0",
+      "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz",
+      "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==",
+      "devOptional": true,
+      "dependencies": {
+        "yallist": "^4.0.0"
+      },
+      "engines": {
+        "node": ">=10"
+      }
+    },
+    "node_modules/matcher": {
+      "version": "3.0.0",
+      "resolved": "https://registry.npmjs.org/matcher/-/matcher-3.0.0.tgz",
+      "integrity": "sha512-OkeDaAZ/bQCxeFAozM55PKcKU0yJMPGifLwV4Qgjitu+5MoAfSQN4lsLJeXZ1b8w0x+/Emda6MZgXS1jvsapng==",
+      "optional": true,
+      "dependencies": {
+        "escape-string-regexp": "^4.0.0"
+      },
+      "engines": {
+        "node": ">=10"
+      }
+    },
+    "node_modules/merge-stream": {
+      "version": "2.0.0",
+      "resolved": "https://registry.npmjs.org/merge-stream/-/merge-stream-2.0.0.tgz",
+      "integrity": "sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==",
+      "dev": true
+    },
+    "node_modules/merge2": {
+      "version": "1.4.1",
+      "resolved": "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz",
+      "integrity": "sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==",
+      "dev": true,
+      "engines": {
+        "node": ">= 8"
+      }
+    },
+    "node_modules/micromatch": {
+      "version": "4.0.5",
+      "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.5.tgz",
+      "integrity": "sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA==",
+      "dev": true,
+      "dependencies": {
+        "braces": "^3.0.2",
+        "picomatch": "^2.3.1"
+      },
+      "engines": {
+        "node": ">=8.6"
+      }
+    },
+    "node_modules/mime": {
+      "version": "2.6.0",
+      "resolved": "https://registry.npmjs.org/mime/-/mime-2.6.0.tgz",
+      "integrity": "sha512-USPkMeET31rOMiarsBNIHZKLGgvKc/LrjofAnBlOttf5ajRvqiRA8QsenbcooctK6d6Ts6aqZXBA+XbkKthiQg==",
+      "dev": true,
+      "bin": {
+        "mime": "cli.js"
+      },
+      "engines": {
+        "node": ">=4.0.0"
+      }
+    },
+    "node_modules/mime-db": {
+      "version": "1.52.0",
+      "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz",
+      "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==",
+      "dev": true,
+      "engines": {
+        "node": ">= 0.6"
+      }
+    },
+    "node_modules/mime-types": {
+      "version": "2.1.35",
+      "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz",
+      "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==",
+      "dev": true,
+      "dependencies": {
+        "mime-db": "1.52.0"
+      },
+      "engines": {
+        "node": ">= 0.6"
+      }
+    },
+    "node_modules/mimic-response": {
+      "version": "1.0.1",
+      "resolved": "https://registry.npmjs.org/mimic-response/-/mimic-response-1.0.1.tgz",
+      "integrity": "sha512-j5EctnkH7amfV/q5Hgmoal1g2QHFJRraOtmx0JpIqkxhBhI/lJSl1nMpQ45hVarwNETOoWEimndZ4QK0RHxuxQ==",
+      "engines": {
+        "node": ">=4"
+      }
+    },
+    "node_modules/mini-css-extract-plugin": {
+      "version": "2.7.6",
+      "resolved": "https://registry.npmjs.org/mini-css-extract-plugin/-/mini-css-extract-plugin-2.7.6.tgz",
+      "integrity": "sha512-Qk7HcgaPkGG6eD77mLvZS1nmxlao3j+9PkrT9Uc7HAE1id3F41+DdBRYRYkbyfNRGzm8/YWtzhw7nVPmwhqTQw==",
+      "dev": true,
+      "dependencies": {
+        "schema-utils": "^4.0.0"
+      },
+      "engines": {
+        "node": ">= 12.13.0"
+      },
+      "funding": {
+        "type": "opencollective",
+        "url": "https://opencollective.com/webpack"
+      },
+      "peerDependencies": {
+        "webpack": "^5.0.0"
+      }
+    },
+    "node_modules/mini-css-extract-plugin/node_modules/ajv": {
+      "version": "8.13.0",
+      "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.13.0.tgz",
+      "integrity": "sha512-PRA911Blj99jR5RMeTunVbNXMF6Lp4vZXnk5GQjcnUWUTsrXtekg/pnmFFI2u/I36Y/2bITGS30GZCXei6uNkA==",
+      "dev": true,
+      "dependencies": {
+        "fast-deep-equal": "^3.1.3",
+        "json-schema-traverse": "^1.0.0",
+        "require-from-string": "^2.0.2",
+        "uri-js": "^4.4.1"
+      },
+      "funding": {
+        "type": "github",
+        "url": "https://github.com/sponsors/epoberezkin"
+      }
+    },
+    "node_modules/mini-css-extract-plugin/node_modules/ajv-keywords": {
+      "version": "5.1.0",
+      "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-5.1.0.tgz",
+      "integrity": "sha512-YCS/JNFAUyr5vAuhk1DWm1CBxRHW9LbJ2ozWeemrIqpbsqKjHVxYPyi5GC0rjZIT5JxJ3virVTS8wk4i/Z+krw==",
+      "dev": true,
+      "dependencies": {
+        "fast-deep-equal": "^3.1.3"
+      },
+      "peerDependencies": {
+        "ajv": "^8.8.2"
+      }
+    },
+    "node_modules/mini-css-extract-plugin/node_modules/json-schema-traverse": {
+      "version": "1.0.0",
+      "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz",
+      "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==",
+      "dev": true
+    },
+    "node_modules/mini-css-extract-plugin/node_modules/schema-utils": {
+      "version": "4.2.0",
+      "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-4.2.0.tgz",
+      "integrity": "sha512-L0jRsrPpjdckP3oPug3/VxNKt2trR8TcabrM6FOAAlvC/9Phcmm+cuAgTlxBqdBR1WJx7Naj9WHw+aOmheSVbw==",
+      "dev": true,
+      "dependencies": {
+        "@types/json-schema": "^7.0.9",
+        "ajv": "^8.9.0",
+        "ajv-formats": "^2.1.1",
+        "ajv-keywords": "^5.1.0"
+      },
+      "engines": {
+        "node": ">= 12.13.0"
+      },
+      "funding": {
+        "type": "opencollective",
+        "url": "https://opencollective.com/webpack"
+      }
+    },
+    "node_modules/minimatch": {
+      "version": "5.1.6",
+      "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-5.1.6.tgz",
+      "integrity": "sha512-lKwV/1brpG6mBUFHtb7NUmtABCb2WZZmm2wNiOA5hAb8VdCS4B3dtMWyvcoViccwAW/COERjXLt0zP1zXUN26g==",
+      "dev": true,
+      "dependencies": {
+        "brace-expansion": "^2.0.1"
+      },
+      "engines": {
+        "node": ">=10"
+      }
+    },
+    "node_modules/minimist": {
+      "version": "1.2.8",
+      "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.8.tgz",
+      "integrity": "sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==",
+      "dev": true,
+      "funding": {
+        "url": "https://github.com/sponsors/ljharb"
+      }
+    },
+    "node_modules/minipass": {
+      "version": "5.0.0",
+      "resolved": "https://registry.npmjs.org/minipass/-/minipass-5.0.0.tgz",
+      "integrity": "sha512-3FnjYuehv9k6ovOEbyOswadCDPX1piCfhV8ncmYtHOjuPwylVWsghTLo7rabjC3Rx5xD4HDx8Wm1xnMF7S5qFQ==",
+      "dev": true,
+      "engines": {
+        "node": ">=8"
+      }
+    },
+    "node_modules/minizlib": {
+      "version": "2.1.2",
+      "resolved": "https://registry.npmjs.org/minizlib/-/minizlib-2.1.2.tgz",
+      "integrity": "sha512-bAxsR8BVfj60DWXHE3u30oHzfl4G7khkSuPW+qvpd7jFRHm7dLxOjUk1EHACJ/hxLY8phGJ0YhYHZo7jil7Qdg==",
+      "dev": true,
+      "dependencies": {
+        "minipass": "^3.0.0",
+        "yallist": "^4.0.0"
+      },
+      "engines": {
+        "node": ">= 8"
+      }
+    },
+    "node_modules/minizlib/node_modules/minipass": {
+      "version": "3.3.6",
+      "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz",
+      "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==",
+      "dev": true,
+      "dependencies": {
+        "yallist": "^4.0.0"
+      },
+      "engines": {
+        "node": ">=8"
+      }
+    },
+    "node_modules/mkdirp": {
+      "version": "1.0.4",
+      "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz",
+      "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==",
+      "dev": true,
+      "bin": {
+        "mkdirp": "bin/cmd.js"
+      },
+      "engines": {
+        "node": ">=10"
+      }
+    },
+    "node_modules/mrmime": {
+      "version": "2.0.0",
+      "resolved": "https://registry.npmjs.org/mrmime/-/mrmime-2.0.0.tgz",
+      "integrity": "sha512-eu38+hdgojoyq63s+yTpN4XMBdt5l8HhMhc4VKLO9KM5caLIBvUm4thi7fFaxyTmCKeNnXZ5pAlBwCUnhA09uw==",
+      "dev": true,
+      "engines": {
+        "node": ">=10"
+      }
+    },
+    "node_modules/ms": {
+      "version": "2.1.2",
+      "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz",
+      "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w=="
+    },
+    "node_modules/nanoid": {
+      "version": "3.3.7",
+      "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.7.tgz",
+      "integrity": "sha512-eSRppjcPIatRIMC1U6UngP8XFcz8MQWGQdt1MTBQ7NaAmvXDfvNxbvWV3x2y6CdEUciCSsDHDQZbhYaB8QEo2g==",
+      "dev": true,
+      "funding": [
+        {
+          "type": "github",
+          "url": "https://github.com/sponsors/ai"
+        }
+      ],
+      "bin": {
+        "nanoid": "bin/nanoid.cjs"
+      },
+      "engines": {
+        "node": "^10 || ^12 || ^13.7 || ^14 || >=15.0.1"
+      }
+    },
+    "node_modules/natural-compare": {
+      "version": "1.4.0",
+      "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz",
+      "integrity": "sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==",
+      "dev": true
+    },
+    "node_modules/natural-compare-lite": {
+      "version": "1.4.0",
+      "resolved": "https://registry.npmjs.org/natural-compare-lite/-/natural-compare-lite-1.4.0.tgz",
+      "integrity": "sha512-Tj+HTDSJJKaZnfiuw+iaF9skdPpTo2GtEly5JHnWV/hfv2Qj/9RKsGISQtLh2ox3l5EAGw487hnBee0sIJ6v2g==",
+      "dev": true
+    },
+    "node_modules/neo-async": {
+      "version": "2.6.2",
+      "resolved": "https://registry.npmjs.org/neo-async/-/neo-async-2.6.2.tgz",
+      "integrity": "sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw==",
+      "dev": true
+    },
+    "node_modules/no-case": {
+      "version": "3.0.4",
+      "resolved": "https://registry.npmjs.org/no-case/-/no-case-3.0.4.tgz",
+      "integrity": "sha512-fgAN3jGAh+RoxUGZHTSOLJIqUc2wmoBwGR4tbpNAKmmovFoWq0OdRkb0VkldReO2a2iBT/OEulG9XSUc10r3zg==",
+      "dev": true,
+      "dependencies": {
+        "lower-case": "^2.0.2",
+        "tslib": "^2.0.3"
+      }
+    },
+    "node_modules/node-addon-api": {
+      "version": "1.7.2",
+      "resolved": "https://registry.npmjs.org/node-addon-api/-/node-addon-api-1.7.2.tgz",
+      "integrity": "sha512-ibPK3iA+vaY1eEjESkQkM0BbCqFOaZMiXRTtdB0u7b4djtY6JnsjvPdUHVMg6xQt3B8fpTTWHI9A+ADjM9frzg==",
+      "dev": true,
+      "optional": true
+    },
+    "node_modules/node-releases": {
+      "version": "2.0.14",
+      "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.14.tgz",
+      "integrity": "sha512-y10wOWt8yZpqXmOgRo77WaHEmhYQYGNA6y421PKsKYWEK8aW+cqAphborZDhqfyKrbZEN92CN1X2KbafY2s7Yw==",
+      "dev": true
+    },
+    "node_modules/normalize-path": {
+      "version": "3.0.0",
+      "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz",
+      "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==",
+      "dev": true,
+      "engines": {
+        "node": ">=0.10.0"
+      }
+    },
+    "node_modules/normalize-url": {
+      "version": "6.1.0",
+      "resolved": "https://registry.npmjs.org/normalize-url/-/normalize-url-6.1.0.tgz",
+      "integrity": "sha512-DlL+XwOy3NxAQ8xuC0okPgK46iuVNAK01YN7RueYBqqFeGsBjV9XmCAzAdgt+667bCl5kPh9EqKKDwnaPG1I7A==",
+      "engines": {
+        "node": ">=10"
+      },
+      "funding": {
+        "url": "https://github.com/sponsors/sindresorhus"
+      }
+    },
+    "node_modules/nth-check": {
+      "version": "2.1.1",
+      "resolved": "https://registry.npmjs.org/nth-check/-/nth-check-2.1.1.tgz",
+      "integrity": "sha512-lqjrjmaOoAnWfMmBPL+XNnynZh2+swxiX3WUE0s4yEHI6m+AwrK2UZOimIRl3X/4QctVqS8AiZjFqyOGrMXb/w==",
+      "dev": true,
+      "dependencies": {
+        "boolbase": "^1.0.0"
+      },
+      "funding": {
+        "url": "https://github.com/fb55/nth-check?sponsor=1"
+      }
+    },
+    "node_modules/object-assign": {
+      "version": "4.1.1",
+      "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz",
+      "integrity": "sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==",
+      "dev": true,
+      "engines": {
+        "node": ">=0.10.0"
+      }
+    },
+    "node_modules/object-keys": {
+      "version": "1.1.1",
+      "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz",
+      "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==",
+      "optional": true,
+      "engines": {
+        "node": ">= 0.4"
+      }
+    },
+    "node_modules/once": {
+      "version": "1.4.0",
+      "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz",
+      "integrity": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==",
+      "dependencies": {
+        "wrappy": "1"
+      }
+    },
+    "node_modules/opener": {
+      "version": "1.5.2",
+      "resolved": "https://registry.npmjs.org/opener/-/opener-1.5.2.tgz",
+      "integrity": "sha512-ur5UIdyw5Y7yEj9wLzhqXiy6GZ3Mwx0yGI+5sMn2r0N0v3cKJvUmFH5yPP+WXh9e0xfyzyJX95D8l088DNFj7A==",
+      "dev": true,
+      "bin": {
+        "opener": "bin/opener-bin.js"
+      }
+    },
+    "node_modules/optionator": {
+      "version": "0.9.4",
+      "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.9.4.tgz",
+      "integrity": "sha512-6IpQ7mKUxRcZNLIObR0hz7lxsapSSIYNZJwXPGeF0mTVqGKFIXj1DQcMoT22S3ROcLyY/rz0PWaWZ9ayWmad9g==",
+      "dev": true,
+      "dependencies": {
+        "deep-is": "^0.1.3",
+        "fast-levenshtein": "^2.0.6",
+        "levn": "^0.4.1",
+        "prelude-ls": "^1.2.1",
+        "type-check": "^0.4.0",
+        "word-wrap": "^1.2.5"
+      },
+      "engines": {
+        "node": ">= 0.8.0"
+      }
+    },
+    "node_modules/p-cancelable": {
+      "version": "2.1.1",
+      "resolved": "https://registry.npmjs.org/p-cancelable/-/p-cancelable-2.1.1.tgz",
+      "integrity": "sha512-BZOr3nRQHOntUjTrH8+Lh54smKHoHyur8We1V8DSMVrl5A2malOOwuJRnKRDjSnkoeBh4at6BwEnb5I7Jl31wg==",
+      "engines": {
+        "node": ">=8"
+      }
+    },
+    "node_modules/p-limit": {
+      "version": "3.1.0",
+      "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz",
+      "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==",
+      "dev": true,
+      "dependencies": {
+        "yocto-queue": "^0.1.0"
+      },
+      "engines": {
+        "node": ">=10"
+      },
+      "funding": {
+        "url": "https://github.com/sponsors/sindresorhus"
+      }
+    },
+    "node_modules/p-locate": {
+      "version": "5.0.0",
+      "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-5.0.0.tgz",
+      "integrity": "sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==",
+      "dev": true,
+      "dependencies": {
+        "p-limit": "^3.0.2"
+      },
+      "engines": {
+        "node": ">=10"
+      },
+      "funding": {
+        "url": "https://github.com/sponsors/sindresorhus"
+      }
+    },
+    "node_modules/p-map": {
+      "version": "2.1.0",
+      "resolved": "https://registry.npmjs.org/p-map/-/p-map-2.1.0.tgz",
+      "integrity": "sha512-y3b8Kpd8OAN444hxfBbFfj1FY/RjtTd8tzYwhUqNYXx0fXx2iX4maP4Qr6qhIKbQXI02wTLAda4fYUbDagTUFw==",
+      "dev": true,
+      "engines": {
+        "node": ">=6"
+      }
+    },
+    "node_modules/p-try": {
+      "version": "2.2.0",
+      "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz",
+      "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==",
+      "dev": true,
+      "engines": {
+        "node": ">=6"
+      }
+    },
+    "node_modules/param-case": {
+      "version": "3.0.4",
+      "resolved": "https://registry.npmjs.org/param-case/-/param-case-3.0.4.tgz",
+      "integrity": "sha512-RXlj7zCYokReqWpOPH9oYivUzLYZ5vAPIfEmCTNViosC78F8F0H9y7T7gG2M39ymgutxF5gcFEsyZQSph9Bp3A==",
+      "dev": true,
+      "dependencies": {
+        "dot-case": "^3.0.4",
+        "tslib": "^2.0.3"
+      }
+    },
+    "node_modules/parent-module": {
+      "version": "1.0.1",
+      "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz",
+      "integrity": "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==",
+      "dev": true,
+      "dependencies": {
+        "callsites": "^3.0.0"
+      },
+      "engines": {
+        "node": ">=6"
+      }
+    },
+    "node_modules/parse5": {
+      "version": "6.0.1",
+      "resolved": "https://registry.npmjs.org/parse5/-/parse5-6.0.1.tgz",
+      "integrity": "sha512-Ofn/CTFzRGTTxwpNEs9PP93gXShHcTq255nzRYSKe8AkVpZY7e1fpmTfOyoIvjP5HG7Z2ZM7VS9PPhQGW2pOpw==",
+      "dev": true
+    },
+    "node_modules/pascal-case": {
+      "version": "3.1.2",
+      "resolved": "https://registry.npmjs.org/pascal-case/-/pascal-case-3.1.2.tgz",
+      "integrity": "sha512-uWlGT3YSnK9x3BQJaOdcZwrnV6hPpd8jFH1/ucpiLRPh/2zCVJKS19E4GvYHvaCcACn3foXZ0cLB9Wrx1KGe5g==",
+      "dev": true,
+      "dependencies": {
+        "no-case": "^3.0.4",
+        "tslib": "^2.0.3"
+      }
+    },
+    "node_modules/path-browserify": {
+      "version": "1.0.1",
+      "resolved": "https://registry.npmjs.org/path-browserify/-/path-browserify-1.0.1.tgz",
+      "integrity": "sha512-b7uo2UCUOYZcnF/3ID0lulOJi/bafxa1xPe7ZPsammBSpjSWQkjNxlt635YGS2MiR9GjvuXCtz2emr3jbsz98g==",
+      "dev": true
+    },
+    "node_modules/path-exists": {
+      "version": "4.0.0",
+      "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz",
+      "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==",
+      "dev": true,
+      "engines": {
+        "node": ">=8"
+      }
+    },
+    "node_modules/path-is-absolute": {
+      "version": "1.0.1",
+      "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz",
+      "integrity": "sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==",
+      "dev": true,
+      "engines": {
+        "node": ">=0.10.0"
+      }
+    },
+    "node_modules/path-is-inside": {
+      "version": "1.0.2",
+      "resolved": "https://registry.npmjs.org/path-is-inside/-/path-is-inside-1.0.2.tgz",
+      "integrity": "sha512-DUWJr3+ULp4zXmol/SZkFf3JGsS9/SIv+Y3Rt93/UjPpDpklB5f1er4O3POIbUuUJ3FXgqte2Q7SrU6zAqwk8w==",
+      "dev": true
+    },
+    "node_modules/path-key": {
+      "version": "3.1.1",
+      "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz",
+      "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==",
+      "dev": true,
+      "engines": {
+        "node": ">=8"
+      }
+    },
+    "node_modules/path-parse": {
+      "version": "1.0.7",
+      "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz",
+      "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==",
+      "dev": true
+    },
+    "node_modules/path-scurry": {
+      "version": "1.10.2",
+      "resolved": "https://registry.npmjs.org/path-scurry/-/path-scurry-1.10.2.tgz",
+      "integrity": "sha512-7xTavNy5RQXnsjANvVvMkEjvloOinkAjv/Z6Ildz9v2RinZ4SBKTWFOVRbaF8p0vpHnyjV/UwNDdKuUv6M5qcA==",
+      "dev": true,
+      "dependencies": {
+        "lru-cache": "^10.2.0",
+        "minipass": "^5.0.0 || ^6.0.2 || ^7.0.0"
+      },
+      "engines": {
+        "node": ">=16 || 14 >=14.17"
+      },
+      "funding": {
+        "url": "https://github.com/sponsors/isaacs"
+      }
+    },
+    "node_modules/path-scurry/node_modules/lru-cache": {
+      "version": "10.2.2",
+      "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.2.2.tgz",
+      "integrity": "sha512-9hp3Vp2/hFQUiIwKo8XCeFVnrg8Pk3TYNPIR7tJADKi5YfcF7vEaK7avFHTlSy3kOKYaJQaalfEo6YuXdceBOQ==",
+      "dev": true,
+      "engines": {
+        "node": "14 || >=16.14"
+      }
+    },
+    "node_modules/path-type": {
+      "version": "4.0.0",
+      "resolved": "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz",
+      "integrity": "sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==",
+      "dev": true,
+      "engines": {
+        "node": ">=8"
+      }
+    },
+    "node_modules/pend": {
+      "version": "1.2.0",
+      "resolved": "https://registry.npmjs.org/pend/-/pend-1.2.0.tgz",
+      "integrity": "sha512-F3asv42UuXchdzt+xXqfW1OGlVBe+mxa2mqI0pg5yAHZPvFmY3Y6drSf/GQ1A86WgWEN9Kzh/WrgKa6iGcHXLg=="
+    },
+    "node_modules/picocolors": {
+      "version": "1.0.0",
+      "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz",
+      "integrity": "sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==",
+      "dev": true
+    },
+    "node_modules/picomatch": {
+      "version": "2.3.1",
+      "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz",
+      "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==",
+      "dev": true,
+      "engines": {
+        "node": ">=8.6"
+      },
+      "funding": {
+        "url": "https://github.com/sponsors/jonschlinkert"
+      }
+    },
+    "node_modules/pify": {
+      "version": "4.0.1",
+      "resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz",
+      "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==",
+      "dev": true,
+      "engines": {
+        "node": ">=6"
+      }
+    },
+    "node_modules/pinkie": {
+      "version": "2.0.4",
+      "resolved": "https://registry.npmjs.org/pinkie/-/pinkie-2.0.4.tgz",
+      "integrity": "sha512-MnUuEycAemtSaeFSjXKW/aroV7akBbY+Sv+RkyqFjgAe73F+MR0TBWKBRDkmfWq/HiFmdavfZ1G7h4SPZXaCSg==",
+      "dev": true,
+      "engines": {
+        "node": ">=0.10.0"
+      }
+    },
+    "node_modules/pinkie-promise": {
+      "version": "2.0.1",
+      "resolved": "https://registry.npmjs.org/pinkie-promise/-/pinkie-promise-2.0.1.tgz",
+      "integrity": "sha512-0Gni6D4UcLTbv9c57DfxDGdr41XfgUjqWZu492f0cIGr16zDU06BWP/RAEvOuo7CQ0CNjHaLlM59YJJFm3NWlw==",
+      "dev": true,
+      "dependencies": {
+        "pinkie": "^2.0.0"
+      },
+      "engines": {
+        "node": ">=0.10.0"
+      }
+    },
+    "node_modules/pkg-dir": {
+      "version": "4.2.0",
+      "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-4.2.0.tgz",
+      "integrity": "sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==",
+      "dev": true,
+      "dependencies": {
+        "find-up": "^4.0.0"
+      },
+      "engines": {
+        "node": ">=8"
+      }
+    },
+    "node_modules/pkg-dir/node_modules/find-up": {
+      "version": "4.1.0",
+      "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz",
+      "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==",
+      "dev": true,
+      "dependencies": {
+        "locate-path": "^5.0.0",
+        "path-exists": "^4.0.0"
+      },
+      "engines": {
+        "node": ">=8"
+      }
+    },
+    "node_modules/pkg-dir/node_modules/locate-path": {
+      "version": "5.0.0",
+      "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz",
+      "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==",
+      "dev": true,
+      "dependencies": {
+        "p-locate": "^4.1.0"
+      },
+      "engines": {
+        "node": ">=8"
+      }
+    },
+    "node_modules/pkg-dir/node_modules/p-limit": {
+      "version": "2.3.0",
+      "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz",
+      "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==",
+      "dev": true,
+      "dependencies": {
+        "p-try": "^2.0.0"
+      },
+      "engines": {
+        "node": ">=6"
+      },
+      "funding": {
+        "url": "https://github.com/sponsors/sindresorhus"
+      }
+    },
+    "node_modules/pkg-dir/node_modules/p-locate": {
+      "version": "4.1.0",
+      "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz",
+      "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==",
+      "dev": true,
+      "dependencies": {
+        "p-limit": "^2.2.0"
+      },
+      "engines": {
+        "node": ">=8"
+      }
+    },
+    "node_modules/plist": {
+      "version": "3.1.0",
+      "resolved": "https://registry.npmjs.org/plist/-/plist-3.1.0.tgz",
+      "integrity": "sha512-uysumyrvkUX0rX/dEVqt8gC3sTBzd4zoWfLeS29nb53imdaXVvLINYXTI2GNqzaMuvacNx4uJQ8+b3zXR0pkgQ==",
+      "dev": true,
+      "dependencies": {
+        "@xmldom/xmldom": "^0.8.8",
+        "base64-js": "^1.5.1",
+        "xmlbuilder": "^15.1.1"
+      },
+      "engines": {
+        "node": ">=10.4.0"
+      }
+    },
+    "node_modules/postcss": {
+      "version": "8.4.38",
+      "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.38.tgz",
+      "integrity": "sha512-Wglpdk03BSfXkHoQa3b/oulrotAkwrlLDRSOb9D0bN86FdRyE9lppSp33aHNPgBa0JKCoB+drFLZkQoRRYae5A==",
+      "dev": true,
+      "funding": [
+        {
+          "type": "opencollective",
+          "url": "https://opencollective.com/postcss/"
+        },
+        {
+          "type": "tidelift",
+          "url": "https://tidelift.com/funding/github/npm/postcss"
+        },
+        {
+          "type": "github",
+          "url": "https://github.com/sponsors/ai"
+        }
+      ],
+      "dependencies": {
+        "nanoid": "^3.3.7",
+        "picocolors": "^1.0.0",
+        "source-map-js": "^1.2.0"
+      },
+      "engines": {
+        "node": "^10 || ^12 || >=14"
+      }
+    },
+    "node_modules/postcss-modules-extract-imports": {
+      "version": "3.1.0",
+      "resolved": "https://registry.npmjs.org/postcss-modules-extract-imports/-/postcss-modules-extract-imports-3.1.0.tgz",
+      "integrity": "sha512-k3kNe0aNFQDAZGbin48pL2VNidTF0w4/eASDsxlyspobzU3wZQLOGj7L9gfRe0Jo9/4uud09DsjFNH7winGv8Q==",
+      "dev": true,
+      "engines": {
+        "node": "^10 || ^12 || >= 14"
+      },
+      "peerDependencies": {
+        "postcss": "^8.1.0"
+      }
+    },
+    "node_modules/postcss-modules-local-by-default": {
+      "version": "4.0.5",
+      "resolved": "https://registry.npmjs.org/postcss-modules-local-by-default/-/postcss-modules-local-by-default-4.0.5.tgz",
+      "integrity": "sha512-6MieY7sIfTK0hYfafw1OMEG+2bg8Q1ocHCpoWLqOKj3JXlKu4G7btkmM/B7lFubYkYWmRSPLZi5chid63ZaZYw==",
+      "dev": true,
+      "dependencies": {
+        "icss-utils": "^5.0.0",
+        "postcss-selector-parser": "^6.0.2",
+        "postcss-value-parser": "^4.1.0"
+      },
+      "engines": {
+        "node": "^10 || ^12 || >= 14"
+      },
+      "peerDependencies": {
+        "postcss": "^8.1.0"
+      }
+    },
+    "node_modules/postcss-modules-scope": {
+      "version": "3.2.0",
+      "resolved": "https://registry.npmjs.org/postcss-modules-scope/-/postcss-modules-scope-3.2.0.tgz",
+      "integrity": "sha512-oq+g1ssrsZOsx9M96c5w8laRmvEu9C3adDSjI8oTcbfkrTE8hx/zfyobUoWIxaKPO8bt6S62kxpw5GqypEw1QQ==",
+      "dev": true,
+      "dependencies": {
+        "postcss-selector-parser": "^6.0.4"
+      },
+      "engines": {
+        "node": "^10 || ^12 || >= 14"
+      },
+      "peerDependencies": {
+        "postcss": "^8.1.0"
+      }
+    },
+    "node_modules/postcss-modules-values": {
+      "version": "4.0.0",
+      "resolved": "https://registry.npmjs.org/postcss-modules-values/-/postcss-modules-values-4.0.0.tgz",
+      "integrity": "sha512-RDxHkAiEGI78gS2ofyvCsu7iycRv7oqw5xMWn9iMoR0N/7mf9D50ecQqUo5BZ9Zh2vH4bCUR/ktCqbB9m8vJjQ==",
+      "dev": true,
+      "dependencies": {
+        "icss-utils": "^5.0.0"
+      },
+      "engines": {
+        "node": "^10 || ^12 || >= 14"
+      },
+      "peerDependencies": {
+        "postcss": "^8.1.0"
+      }
+    },
+    "node_modules/postcss-selector-parser": {
+      "version": "6.0.16",
+      "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.0.16.tgz",
+      "integrity": "sha512-A0RVJrX+IUkVZbW3ClroRWurercFhieevHB38sr2+l9eUClMqome3LmEmnhlNy+5Mr2EYN6B2Kaw9wYdd+VHiw==",
+      "dev": true,
+      "dependencies": {
+        "cssesc": "^3.0.0",
+        "util-deprecate": "^1.0.2"
+      },
+      "engines": {
+        "node": ">=4"
+      }
+    },
+    "node_modules/postcss-value-parser": {
+      "version": "4.2.0",
+      "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-4.2.0.tgz",
+      "integrity": "sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ==",
+      "dev": true
+    },
+    "node_modules/prelude-ls": {
+      "version": "1.2.1",
+      "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.2.1.tgz",
+      "integrity": "sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==",
+      "dev": true,
+      "engines": {
+        "node": ">= 0.8.0"
+      }
+    },
+    "node_modules/pretty-error": {
+      "version": "4.0.0",
+      "resolved": "https://registry.npmjs.org/pretty-error/-/pretty-error-4.0.0.tgz",
+      "integrity": "sha512-AoJ5YMAcXKYxKhuJGdcvse+Voc6v1RgnsR3nWcYU7q4t6z0Q6T86sv5Zq8VIRbOWWFpvdGE83LtdSMNd+6Y0xw==",
+      "dev": true,
+      "dependencies": {
+        "lodash": "^4.17.20",
+        "renderkid": "^3.0.0"
+      }
+    },
+    "node_modules/process-nextick-args": {
+      "version": "2.0.1",
+      "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz",
+      "integrity": "sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==",
+      "dev": true,
+      "peer": true
+    },
+    "node_modules/progress": {
+      "version": "2.0.3",
+      "resolved": "https://registry.npmjs.org/progress/-/progress-2.0.3.tgz",
+      "integrity": "sha512-7PiHtLll5LdnKIMw100I+8xJXR5gW2QwWYkT6iJva0bXitZKa/XMrSbdmg3r2Xnaidz9Qumd0VPaMrZlF9V9sA==",
+      "engines": {
+        "node": ">=0.4.0"
+      }
+    },
+    "node_modules/promise-retry": {
+      "version": "2.0.1",
+      "resolved": "https://registry.npmjs.org/promise-retry/-/promise-retry-2.0.1.tgz",
+      "integrity": "sha512-y+WKFlBR8BGXnsNlIHFGPZmyDf3DFMoLhaflAnyZgV6rG6xu+JwesTo2Q9R6XwYmtmwAFCkAk3e35jEdoeh/3g==",
+      "dev": true,
+      "dependencies": {
+        "err-code": "^2.0.2",
+        "retry": "^0.12.0"
+      },
+      "engines": {
+        "node": ">=10"
+      }
+    },
+    "node_modules/pump": {
+      "version": "3.0.0",
+      "resolved": "https://registry.npmjs.org/pump/-/pump-3.0.0.tgz",
+      "integrity": "sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww==",
+      "dependencies": {
+        "end-of-stream": "^1.1.0",
+        "once": "^1.3.1"
+      }
+    },
+    "node_modules/punycode": {
+      "version": "2.3.1",
+      "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.3.1.tgz",
+      "integrity": "sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==",
+      "dev": true,
+      "engines": {
+        "node": ">=6"
+      }
+    },
+    "node_modules/queue-microtask": {
+      "version": "1.2.3",
+      "resolved": "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz",
+      "integrity": "sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==",
+      "dev": true,
+      "funding": [
+        {
+          "type": "github",
+          "url": "https://github.com/sponsors/feross"
+        },
+        {
+          "type": "patreon",
+          "url": "https://www.patreon.com/feross"
+        },
+        {
+          "type": "consulting",
+          "url": "https://feross.org/support"
+        }
+      ]
+    },
+    "node_modules/quick-lru": {
+      "version": "5.1.1",
+      "resolved": "https://registry.npmjs.org/quick-lru/-/quick-lru-5.1.1.tgz",
+      "integrity": "sha512-WuyALRjWPDGtt/wzJiadO5AXY+8hZ80hVpe6MyivgraREW751X3SbhRvG3eLKOYN+8VEvqLcf3wdnt44Z4S4SA==",
+      "engines": {
+        "node": ">=10"
+      },
+      "funding": {
+        "url": "https://github.com/sponsors/sindresorhus"
+      }
+    },
+    "node_modules/randombytes": {
+      "version": "2.1.0",
+      "resolved": "https://registry.npmjs.org/randombytes/-/randombytes-2.1.0.tgz",
+      "integrity": "sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==",
+      "dev": true,
+      "dependencies": {
+        "safe-buffer": "^5.1.0"
+      }
+    },
+    "node_modules/read-config-file": {
+      "version": "6.3.2",
+      "resolved": "https://registry.npmjs.org/read-config-file/-/read-config-file-6.3.2.tgz",
+      "integrity": "sha512-M80lpCjnE6Wt6zb98DoW8WHR09nzMSpu8XHtPkiTHrJ5Az9CybfeQhTJ8D7saeBHpGhLPIVyA8lcL6ZmdKwY6Q==",
+      "dev": true,
+      "dependencies": {
+        "config-file-ts": "^0.2.4",
+        "dotenv": "^9.0.2",
+        "dotenv-expand": "^5.1.0",
+        "js-yaml": "^4.1.0",
+        "json5": "^2.2.0",
+        "lazy-val": "^1.0.4"
+      },
+      "engines": {
+        "node": ">=12.0.0"
+      }
+    },
+    "node_modules/readable-stream": {
+      "version": "3.6.2",
+      "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.2.tgz",
+      "integrity": "sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==",
+      "dev": true,
+      "peer": true,
+      "dependencies": {
+        "inherits": "^2.0.3",
+        "string_decoder": "^1.1.1",
+        "util-deprecate": "^1.0.1"
+      },
+      "engines": {
+        "node": ">= 6"
+      }
+    },
+    "node_modules/readdir-glob": {
+      "version": "1.1.3",
+      "resolved": "https://registry.npmjs.org/readdir-glob/-/readdir-glob-1.1.3.tgz",
+      "integrity": "sha512-v05I2k7xN8zXvPD9N+z/uhXPaj0sUFCe2rcWZIpBsqxfP7xXFQ0tipAd/wjj1YxWyWtUS5IDJpOG82JKt2EAVA==",
+      "dev": true,
+      "peer": true,
+      "dependencies": {
+        "minimatch": "^5.1.0"
+      }
+    },
+    "node_modules/readdirp": {
+      "version": "3.6.0",
+      "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz",
+      "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==",
+      "dev": true,
+      "dependencies": {
+        "picomatch": "^2.2.1"
+      },
+      "engines": {
+        "node": ">=8.10.0"
+      }
+    },
+    "node_modules/rechoir": {
+      "version": "0.7.1",
+      "resolved": "https://registry.npmjs.org/rechoir/-/rechoir-0.7.1.tgz",
+      "integrity": "sha512-/njmZ8s1wVeR6pjTZ+0nCnv8SpZNRMT2D1RLOJQESlYFDBvwpTA4KWJpZ+sBJ4+vhjILRcK7JIFdGCdxEAAitg==",
+      "dev": true,
+      "dependencies": {
+        "resolve": "^1.9.0"
+      },
+      "engines": {
+        "node": ">= 0.10"
+      }
+    },
+    "node_modules/relateurl": {
+      "version": "0.2.7",
+      "resolved": "https://registry.npmjs.org/relateurl/-/relateurl-0.2.7.tgz",
+      "integrity": "sha512-G08Dxvm4iDN3MLM0EsP62EDV9IuhXPR6blNz6Utcp7zyV3tr4HVNINt6MpaRWbxoOHT3Q7YN2P+jaHX8vUbgog==",
+      "dev": true,
+      "engines": {
+        "node": ">= 0.10"
+      }
+    },
+    "node_modules/renderkid": {
+      "version": "3.0.0",
+      "resolved": "https://registry.npmjs.org/renderkid/-/renderkid-3.0.0.tgz",
+      "integrity": "sha512-q/7VIQA8lmM1hF+jn+sFSPWGlMkSAeNYcPLmDQx2zzuiDfaLrOmumR8iaUKlenFgh0XRPIUeSPlH3A+AW3Z5pg==",
+      "dev": true,
+      "dependencies": {
+        "css-select": "^4.1.3",
+        "dom-converter": "^0.2.0",
+        "htmlparser2": "^6.1.0",
+        "lodash": "^4.17.21",
+        "strip-ansi": "^6.0.1"
+      }
+    },
+    "node_modules/require-directory": {
+      "version": "2.1.1",
+      "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz",
+      "integrity": "sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==",
+      "dev": true,
+      "engines": {
+        "node": ">=0.10.0"
+      }
+    },
+    "node_modules/require-from-string": {
+      "version": "2.0.2",
+      "resolved": "https://registry.npmjs.org/require-from-string/-/require-from-string-2.0.2.tgz",
+      "integrity": "sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw==",
+      "dev": true,
+      "engines": {
+        "node": ">=0.10.0"
+      }
+    },
+    "node_modules/resolve": {
+      "version": "1.22.8",
+      "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.8.tgz",
+      "integrity": "sha512-oKWePCxqpd6FlLvGV1VU0x7bkPmmCNolxzjMf4NczoDnQcIWrAF+cPtZn5i6n+RfD2d9i0tzpKnG6Yk168yIyw==",
+      "dev": true,
+      "dependencies": {
+        "is-core-module": "^2.13.0",
+        "path-parse": "^1.0.7",
+        "supports-preserve-symlinks-flag": "^1.0.0"
+      },
+      "bin": {
+        "resolve": "bin/resolve"
+      },
+      "funding": {
+        "url": "https://github.com/sponsors/ljharb"
+      }
+    },
+    "node_modules/resolve-alpn": {
+      "version": "1.2.1",
+      "resolved": "https://registry.npmjs.org/resolve-alpn/-/resolve-alpn-1.2.1.tgz",
+      "integrity": "sha512-0a1F4l73/ZFZOakJnQ3FvkJ2+gSTQWz/r2KE5OdDY0TxPm5h4GkqkWWfM47T7HsbnOtcJVEF4epCVy6u7Q3K+g=="
+    },
+    "node_modules/resolve-cwd": {
+      "version": "3.0.0",
+      "resolved": "https://registry.npmjs.org/resolve-cwd/-/resolve-cwd-3.0.0.tgz",
+      "integrity": "sha512-OrZaX2Mb+rJCpH/6CpSqt9xFVpN++x01XnN2ie9g6P5/3xelLAkXWVADpdz1IHD/KFfEXyE6V0U01OQ3UO2rEg==",
+      "dev": true,
+      "dependencies": {
+        "resolve-from": "^5.0.0"
+      },
+      "engines": {
+        "node": ">=8"
+      }
+    },
+    "node_modules/resolve-cwd/node_modules/resolve-from": {
+      "version": "5.0.0",
+      "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz",
+      "integrity": "sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==",
+      "dev": true,
+      "engines": {
+        "node": ">=8"
+      }
+    },
+    "node_modules/resolve-from": {
+      "version": "4.0.0",
+      "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz",
+      "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==",
+      "dev": true,
+      "engines": {
+        "node": ">=4"
+      }
+    },
+    "node_modules/resolve-pkg-maps": {
+      "version": "1.0.0",
+      "resolved": "https://registry.npmjs.org/resolve-pkg-maps/-/resolve-pkg-maps-1.0.0.tgz",
+      "integrity": "sha512-seS2Tj26TBVOC2NIc2rOe2y2ZO7efxITtLZcGSOnHHNOQ7CkiUBfw0Iw2ck6xkIhPwLhKNLS8BO+hEpngQlqzw==",
+      "dev": true,
+      "funding": {
+        "url": "https://github.com/privatenumber/resolve-pkg-maps?sponsor=1"
+      }
+    },
+    "node_modules/responselike": {
+      "version": "2.0.1",
+      "resolved": "https://registry.npmjs.org/responselike/-/responselike-2.0.1.tgz",
+      "integrity": "sha512-4gl03wn3hj1HP3yzgdI7d3lCkF95F21Pz4BPGvKHinyQzALR5CapwC8yIi0Rh58DEMQ/SguC03wFj2k0M/mHhw==",
+      "dependencies": {
+        "lowercase-keys": "^2.0.0"
+      },
+      "funding": {
+        "url": "https://github.com/sponsors/sindresorhus"
+      }
+    },
+    "node_modules/retry": {
+      "version": "0.12.0",
+      "resolved": "https://registry.npmjs.org/retry/-/retry-0.12.0.tgz",
+      "integrity": "sha512-9LkiTwjUh6rT555DtE9rTX+BKByPfrMzEAtnlEtdEwr3Nkffwiihqe2bWADg+OQRjt9gl6ICdmB/ZFDCGAtSow==",
+      "dev": true,
+      "engines": {
+        "node": ">= 4"
+      }
+    },
+    "node_modules/reusify": {
+      "version": "1.0.4",
+      "resolved": "https://registry.npmjs.org/reusify/-/reusify-1.0.4.tgz",
+      "integrity": "sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==",
+      "dev": true,
+      "engines": {
+        "iojs": ">=1.0.0",
+        "node": ">=0.10.0"
+      }
+    },
+    "node_modules/rimraf": {
+      "version": "2.7.1",
+      "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz",
+      "integrity": "sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==",
+      "dev": true,
+      "dependencies": {
+        "glob": "^7.1.3"
+      },
+      "bin": {
+        "rimraf": "bin.js"
+      }
+    },
+    "node_modules/roarr": {
+      "version": "2.15.4",
+      "resolved": "https://registry.npmjs.org/roarr/-/roarr-2.15.4.tgz",
+      "integrity": "sha512-CHhPh+UNHD2GTXNYhPWLnU8ONHdI+5DI+4EYIAOaiD63rHeYlZvyh8P+in5999TTSFgUYuKUAjzRI4mdh/p+2A==",
+      "optional": true,
+      "dependencies": {
+        "boolean": "^3.0.1",
+        "detect-node": "^2.0.4",
+        "globalthis": "^1.0.1",
+        "json-stringify-safe": "^5.0.1",
+        "semver-compare": "^1.0.0",
+        "sprintf-js": "^1.1.2"
+      },
+      "engines": {
+        "node": ">=8.0"
+      }
+    },
+    "node_modules/run-parallel": {
+      "version": "1.2.0",
+      "resolved": "https://registry.npmjs.org/run-parallel/-/run-parallel-1.2.0.tgz",
+      "integrity": "sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==",
+      "dev": true,
+      "funding": [
+        {
+          "type": "github",
+          "url": "https://github.com/sponsors/feross"
+        },
+        {
+          "type": "patreon",
+          "url": "https://www.patreon.com/feross"
+        },
+        {
+          "type": "consulting",
+          "url": "https://feross.org/support"
+        }
+      ],
+      "dependencies": {
+        "queue-microtask": "^1.2.2"
+      }
+    },
+    "node_modules/safe-buffer": {
+      "version": "5.2.1",
+      "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz",
+      "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==",
+      "dev": true,
+      "funding": [
+        {
+          "type": "github",
+          "url": "https://github.com/sponsors/feross"
+        },
+        {
+          "type": "patreon",
+          "url": "https://www.patreon.com/feross"
+        },
+        {
+          "type": "consulting",
+          "url": "https://feross.org/support"
+        }
+      ]
+    },
+    "node_modules/safer-buffer": {
+      "version": "2.1.2",
+      "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz",
+      "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==",
+      "dev": true
+    },
+    "node_modules/sanitize-filename": {
+      "version": "1.6.3",
+      "resolved": "https://registry.npmjs.org/sanitize-filename/-/sanitize-filename-1.6.3.tgz",
+      "integrity": "sha512-y/52Mcy7aw3gRm7IrcGDFx/bCk4AhRh2eI9luHOQM86nZsqwiRkkq2GekHXBBD+SmPidc8i2PqtYZl+pWJ8Oeg==",
+      "dev": true,
+      "dependencies": {
+        "truncate-utf8-bytes": "^1.0.0"
+      }
+    },
+    "node_modules/sass": {
+      "version": "1.76.0",
+      "resolved": "https://registry.npmjs.org/sass/-/sass-1.76.0.tgz",
+      "integrity": "sha512-nc3LeqvF2FNW5xGF1zxZifdW3ffIz5aBb7I7tSvOoNu7z1RQ6pFt9MBuiPtjgaI62YWrM/txjWlOCFiGtf2xpw==",
+      "dev": true,
+      "dependencies": {
+        "chokidar": ">=3.0.0 <4.0.0",
+        "immutable": "^4.0.0",
+        "source-map-js": ">=0.6.2 <2.0.0"
+      },
+      "bin": {
+        "sass": "sass.js"
+      },
+      "engines": {
+        "node": ">=14.0.0"
+      }
+    },
+    "node_modules/sass-loader": {
+      "version": "12.6.0",
+      "resolved": "https://registry.npmjs.org/sass-loader/-/sass-loader-12.6.0.tgz",
+      "integrity": "sha512-oLTaH0YCtX4cfnJZxKSLAyglED0naiYfNG1iXfU5w1LNZ+ukoA5DtyDIN5zmKVZwYNJP4KRc5Y3hkWga+7tYfA==",
+      "dev": true,
+      "dependencies": {
+        "klona": "^2.0.4",
+        "neo-async": "^2.6.2"
+      },
+      "engines": {
+        "node": ">= 12.13.0"
+      },
+      "funding": {
+        "type": "opencollective",
+        "url": "https://opencollective.com/webpack"
+      },
+      "peerDependencies": {
+        "fibers": ">= 3.1.0",
+        "node-sass": "^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0",
+        "sass": "^1.3.0",
+        "sass-embedded": "*",
+        "webpack": "^5.0.0"
+      },
+      "peerDependenciesMeta": {
+        "fibers": {
+          "optional": true
+        },
+        "node-sass": {
+          "optional": true
+        },
+        "sass": {
+          "optional": true
+        },
+        "sass-embedded": {
+          "optional": true
+        }
+      }
+    },
+    "node_modules/sax": {
+      "version": "1.3.0",
+      "resolved": "https://registry.npmjs.org/sax/-/sax-1.3.0.tgz",
+      "integrity": "sha512-0s+oAmw9zLl1V1cS9BtZN7JAd0cW5e0QH4W3LWEK6a4LaLEA2OTpGYWDY+6XasBLtz6wkm3u1xRw95mRuJ59WA==",
+      "dev": true
+    },
+    "node_modules/schema-utils": {
+      "version": "3.3.0",
+      "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.3.0.tgz",
+      "integrity": "sha512-pN/yOAvcC+5rQ5nERGuwrjLlYvLTbCibnZ1I7B1LaiAz9BRBlE9GMgE/eqV30P7aJQUf7Ddimy/RsbYO/GrVGg==",
+      "dev": true,
+      "dependencies": {
+        "@types/json-schema": "^7.0.8",
+        "ajv": "^6.12.5",
+        "ajv-keywords": "^3.5.2"
+      },
+      "engines": {
+        "node": ">= 10.13.0"
+      },
+      "funding": {
+        "type": "opencollective",
+        "url": "https://opencollective.com/webpack"
+      }
+    },
+    "node_modules/semver": {
+      "version": "7.6.0",
+      "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.0.tgz",
+      "integrity": "sha512-EnwXhrlwXMk9gKu5/flx5sv/an57AkRplG3hTK68W7FRDN+k+OWBj65M7719OkA82XLBxrcX0KSHj+X5COhOVg==",
+      "devOptional": true,
+      "dependencies": {
+        "lru-cache": "^6.0.0"
+      },
+      "bin": {
+        "semver": "bin/semver.js"
+      },
+      "engines": {
+        "node": ">=10"
+      }
+    },
+    "node_modules/semver-compare": {
+      "version": "1.0.0",
+      "resolved": "https://registry.npmjs.org/semver-compare/-/semver-compare-1.0.0.tgz",
+      "integrity": "sha512-YM3/ITh2MJ5MtzaM429anh+x2jiLVjqILF4m4oyQB18W7Ggea7BfqdH/wGMK7dDiMghv/6WG7znWMwUDzJiXow==",
+      "optional": true
+    },
+    "node_modules/serialize-error": {
+      "version": "7.0.1",
+      "resolved": "https://registry.npmjs.org/serialize-error/-/serialize-error-7.0.1.tgz",
+      "integrity": "sha512-8I8TjW5KMOKsZQTvoxjuSIa7foAwPWGOts+6o7sgjz41/qMD9VQHEDxi6PBvK2l0MXUmqZyNpUK+T2tQaaElvw==",
+      "optional": true,
+      "dependencies": {
+        "type-fest": "^0.13.1"
+      },
+      "engines": {
+        "node": ">=10"
+      },
+      "funding": {
+        "url": "https://github.com/sponsors/sindresorhus"
+      }
+    },
+    "node_modules/serialize-error/node_modules/type-fest": {
+      "version": "0.13.1",
+      "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.13.1.tgz",
+      "integrity": "sha512-34R7HTnG0XIJcBSn5XhDd7nNFPRcXYRZrBB2O2jdKqYODldSzBAqzsWoZYYvduky73toYS/ESqxPvkDf/F0XMg==",
+      "optional": true,
+      "engines": {
+        "node": ">=10"
+      },
+      "funding": {
+        "url": "https://github.com/sponsors/sindresorhus"
+      }
+    },
+    "node_modules/serialize-javascript": {
+      "version": "6.0.2",
+      "resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-6.0.2.tgz",
+      "integrity": "sha512-Saa1xPByTTq2gdeFZYLLo+RFE35NHZkAbqZeWNd3BpzppeVisAqpDjcp8dyf6uIvEqJRd46jemmyA4iFIeVk8g==",
+      "dev": true,
+      "dependencies": {
+        "randombytes": "^2.1.0"
+      }
+    },
+    "node_modules/shallow-clone": {
+      "version": "3.0.1",
+      "resolved": "https://registry.npmjs.org/shallow-clone/-/shallow-clone-3.0.1.tgz",
+      "integrity": "sha512-/6KqX+GVUdqPuPPd2LxDDxzX6CAbjJehAAOKlNpqqUpAqPM6HeL8f+o3a+JsyGjn2lv0WY8UsTgUJjU9Ok55NA==",
+      "dev": true,
+      "dependencies": {
+        "kind-of": "^6.0.2"
+      },
+      "engines": {
+        "node": ">=8"
+      }
+    },
+    "node_modules/shebang-command": {
+      "version": "2.0.0",
+      "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz",
+      "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==",
+      "dev": true,
+      "dependencies": {
+        "shebang-regex": "^3.0.0"
+      },
+      "engines": {
+        "node": ">=8"
+      }
+    },
+    "node_modules/shebang-regex": {
+      "version": "3.0.0",
+      "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz",
+      "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==",
+      "dev": true,
+      "engines": {
+        "node": ">=8"
+      }
+    },
+    "node_modules/signal-exit": {
+      "version": "4.1.0",
+      "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-4.1.0.tgz",
+      "integrity": "sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==",
+      "dev": true,
+      "engines": {
+        "node": ">=14"
+      },
+      "funding": {
+        "url": "https://github.com/sponsors/isaacs"
+      }
+    },
+    "node_modules/simple-update-notifier": {
+      "version": "2.0.0",
+      "resolved": "https://registry.npmjs.org/simple-update-notifier/-/simple-update-notifier-2.0.0.tgz",
+      "integrity": "sha512-a2B9Y0KlNXl9u/vsW6sTIu9vGEpfKu2wRV6l1H3XEas/0gUIzGzBoP/IouTcUQbm9JWZLH3COxyn03TYlFax6w==",
+      "dev": true,
+      "dependencies": {
+        "semver": "^7.5.3"
+      },
+      "engines": {
+        "node": ">=10"
+      }
+    },
+    "node_modules/sirv": {
+      "version": "2.0.4",
+      "resolved": "https://registry.npmjs.org/sirv/-/sirv-2.0.4.tgz",
+      "integrity": "sha512-94Bdh3cC2PKrbgSOUqTiGPWVZeSiXfKOVZNJniWoqrWrRkB1CJzBU3NEbiTsPcYy1lDsANA/THzS+9WBiy5nfQ==",
+      "dev": true,
+      "dependencies": {
+        "@polka/url": "^1.0.0-next.24",
+        "mrmime": "^2.0.0",
+        "totalist": "^3.0.0"
+      },
+      "engines": {
+        "node": ">= 10"
+      }
+    },
+    "node_modules/slash": {
+      "version": "3.0.0",
+      "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz",
+      "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==",
+      "dev": true,
+      "engines": {
+        "node": ">=8"
+      }
+    },
+    "node_modules/slice-ansi": {
+      "version": "3.0.0",
+      "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-3.0.0.tgz",
+      "integrity": "sha512-pSyv7bSTC7ig9Dcgbw9AuRNUb5k5V6oDudjZoMBSr13qpLBG7tB+zgCkARjq7xIUgdz5P1Qe8u+rSGdouOOIyQ==",
+      "dev": true,
+      "optional": true,
+      "dependencies": {
+        "ansi-styles": "^4.0.0",
+        "astral-regex": "^2.0.0",
+        "is-fullwidth-code-point": "^3.0.0"
+      },
+      "engines": {
+        "node": ">=8"
+      }
+    },
+    "node_modules/smart-buffer": {
+      "version": "4.2.0",
+      "resolved": "https://registry.npmjs.org/smart-buffer/-/smart-buffer-4.2.0.tgz",
+      "integrity": "sha512-94hK0Hh8rPqQl2xXc3HsaBoOXKV20MToPkcXvwbISWLEs+64sBq5kFgn2kJDHb1Pry9yrP0dxrCI9RRci7RXKg==",
+      "dev": true,
+      "optional": true,
+      "engines": {
+        "node": ">= 6.0.0",
+        "npm": ">= 3.0.0"
+      }
+    },
+    "node_modules/source-list-map": {
+      "version": "2.0.1",
+      "resolved": "https://registry.npmjs.org/source-list-map/-/source-list-map-2.0.1.tgz",
+      "integrity": "sha512-qnQ7gVMxGNxsiL4lEuJwe/To8UnK7fAnmbGEEH8RpLouuKbeEm0lhbQVFIrNSuB+G7tVrAlVsZgETT5nljf+Iw==",
+      "dev": true
+    },
+    "node_modules/source-map": {
+      "version": "0.6.1",
+      "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz",
+      "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==",
+      "dev": true,
+      "engines": {
+        "node": ">=0.10.0"
+      }
+    },
+    "node_modules/source-map-js": {
+      "version": "1.2.0",
+      "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.2.0.tgz",
+      "integrity": "sha512-itJW8lvSA0TXEphiRoawsCksnlf8SyvmFzIhltqAHluXd88pkCd+cXJVHTDwdCr0IzwptSm035IHQktUu1QUMg==",
+      "dev": true,
+      "engines": {
+        "node": ">=0.10.0"
+      }
+    },
+    "node_modules/source-map-support": {
+      "version": "0.5.21",
+      "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.21.tgz",
+      "integrity": "sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w==",
+      "dev": true,
+      "dependencies": {
+        "buffer-from": "^1.0.0",
+        "source-map": "^0.6.0"
+      }
+    },
+    "node_modules/sprintf-js": {
+      "version": "1.1.3",
+      "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.1.3.tgz",
+      "integrity": "sha512-Oo+0REFV59/rz3gfJNKQiBlwfHaSESl1pcGyABQsnnIfWOFt6JNj5gCog2U6MLZ//IGYD+nA8nI+mTShREReaA==",
+      "optional": true
+    },
+    "node_modules/stat-mode": {
+      "version": "1.0.0",
+      "resolved": "https://registry.npmjs.org/stat-mode/-/stat-mode-1.0.0.tgz",
+      "integrity": "sha512-jH9EhtKIjuXZ2cWxmXS8ZP80XyC3iasQxMDV8jzhNJpfDb7VbQLVW4Wvsxz9QZvzV+G4YoSfBUVKDOyxLzi/sg==",
+      "dev": true,
+      "engines": {
+        "node": ">= 6"
+      }
+    },
+    "node_modules/string_decoder": {
+      "version": "1.3.0",
+      "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz",
+      "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==",
+      "dev": true,
+      "peer": true,
+      "dependencies": {
+        "safe-buffer": "~5.2.0"
+      }
+    },
+    "node_modules/string-width": {
+      "version": "4.2.3",
+      "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz",
+      "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==",
+      "dev": true,
+      "dependencies": {
+        "emoji-regex": "^8.0.0",
+        "is-fullwidth-code-point": "^3.0.0",
+        "strip-ansi": "^6.0.1"
+      },
+      "engines": {
+        "node": ">=8"
+      }
+    },
+    "node_modules/string-width-cjs": {
+      "name": "string-width",
+      "version": "4.2.3",
+      "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz",
+      "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==",
+      "dev": true,
+      "dependencies": {
+        "emoji-regex": "^8.0.0",
+        "is-fullwidth-code-point": "^3.0.0",
+        "strip-ansi": "^6.0.1"
+      },
+      "engines": {
+        "node": ">=8"
+      }
+    },
+    "node_modules/strip-ansi": {
+      "version": "6.0.1",
+      "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz",
+      "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==",
+      "dev": true,
+      "dependencies": {
+        "ansi-regex": "^5.0.1"
+      },
+      "engines": {
+        "node": ">=8"
+      }
+    },
+    "node_modules/strip-ansi-cjs": {
+      "name": "strip-ansi",
+      "version": "6.0.1",
+      "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz",
+      "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==",
+      "dev": true,
+      "dependencies": {
+        "ansi-regex": "^5.0.1"
+      },
+      "engines": {
+        "node": ">=8"
+      }
+    },
+    "node_modules/strip-json-comments": {
+      "version": "3.1.1",
+      "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz",
+      "integrity": "sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==",
+      "dev": true,
+      "engines": {
+        "node": ">=8"
+      },
+      "funding": {
+        "url": "https://github.com/sponsors/sindresorhus"
+      }
+    },
+    "node_modules/sumchecker": {
+      "version": "3.0.1",
+      "resolved": "https://registry.npmjs.org/sumchecker/-/sumchecker-3.0.1.tgz",
+      "integrity": "sha512-MvjXzkz/BOfyVDkG0oFOtBxHX2u3gKbMHIF/dXblZsgD3BWOFLmHovIpZY7BykJdAjcqRCBi1WYBNdEC9yI7vg==",
+      "dependencies": {
+        "debug": "^4.1.0"
+      },
+      "engines": {
+        "node": ">= 8.0"
+      }
+    },
+    "node_modules/supports-color": {
+      "version": "7.2.0",
+      "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
+      "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
+      "dev": true,
+      "dependencies": {
+        "has-flag": "^4.0.0"
+      },
+      "engines": {
+        "node": ">=8"
+      }
+    },
+    "node_modules/supports-preserve-symlinks-flag": {
+      "version": "1.0.0",
+      "resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz",
+      "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==",
+      "dev": true,
+      "engines": {
+        "node": ">= 0.4"
+      },
+      "funding": {
+        "url": "https://github.com/sponsors/ljharb"
+      }
+    },
+    "node_modules/tapable": {
+      "version": "2.2.1",
+      "resolved": "https://registry.npmjs.org/tapable/-/tapable-2.2.1.tgz",
+      "integrity": "sha512-GNzQvQTOIP6RyTfE2Qxb8ZVlNmw0n88vp1szwWRimP02mnTsx3Wtn5qRdqY9w2XduFNUgvOwhNnQsjwCp+kqaQ==",
+      "dev": true,
+      "engines": {
+        "node": ">=6"
+      }
+    },
+    "node_modules/tar": {
+      "version": "6.2.1",
+      "resolved": "https://registry.npmjs.org/tar/-/tar-6.2.1.tgz",
+      "integrity": "sha512-DZ4yORTwrbTj/7MZYq2w+/ZFdI6OZ/f9SFHR+71gIVUZhOQPHzVCLpvRnPgyaMpfWxxk/4ONva3GQSyNIKRv6A==",
+      "dev": true,
+      "dependencies": {
+        "chownr": "^2.0.0",
+        "fs-minipass": "^2.0.0",
+        "minipass": "^5.0.0",
+        "minizlib": "^2.1.1",
+        "mkdirp": "^1.0.3",
+        "yallist": "^4.0.0"
+      },
+      "engines": {
+        "node": ">=10"
+      }
+    },
+    "node_modules/tar-stream": {
+      "version": "2.2.0",
+      "resolved": "https://registry.npmjs.org/tar-stream/-/tar-stream-2.2.0.tgz",
+      "integrity": "sha512-ujeqbceABgwMZxEJnk2HDY2DlnUZ+9oEcb1KzTVfYHio0UE6dG71n60d8D2I4qNvleWrrXpmjpt7vZeF1LnMZQ==",
+      "dev": true,
+      "peer": true,
+      "dependencies": {
+        "bl": "^4.0.3",
+        "end-of-stream": "^1.4.1",
+        "fs-constants": "^1.0.0",
+        "inherits": "^2.0.3",
+        "readable-stream": "^3.1.1"
+      },
+      "engines": {
+        "node": ">=6"
+      }
+    },
+    "node_modules/temp-file": {
+      "version": "3.4.0",
+      "resolved": "https://registry.npmjs.org/temp-file/-/temp-file-3.4.0.tgz",
+      "integrity": "sha512-C5tjlC/HCtVUOi3KWVokd4vHVViOmGjtLwIh4MuzPo/nMYTV/p1urt3RnMz2IWXDdKEGJH3k5+KPxtqRsUYGtg==",
+      "dev": true,
+      "dependencies": {
+        "async-exit-hook": "^2.0.1",
+        "fs-extra": "^10.0.0"
+      }
+    },
+    "node_modules/temp-file/node_modules/fs-extra": {
+      "version": "10.1.0",
+      "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-10.1.0.tgz",
+      "integrity": "sha512-oRXApq54ETRj4eMiFzGnHWGy+zo5raudjuxN0b8H7s/RU2oW0Wvsx9O0ACRN/kRq9E8Vu/ReskGB5o3ji+FzHQ==",
+      "dev": true,
+      "dependencies": {
+        "graceful-fs": "^4.2.0",
+        "jsonfile": "^6.0.1",
+        "universalify": "^2.0.0"
+      },
+      "engines": {
+        "node": ">=12"
+      }
+    },
+    "node_modules/temp-file/node_modules/jsonfile": {
+      "version": "6.1.0",
+      "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-6.1.0.tgz",
+      "integrity": "sha512-5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ==",
+      "dev": true,
+      "dependencies": {
+        "universalify": "^2.0.0"
+      },
+      "optionalDependencies": {
+        "graceful-fs": "^4.1.6"
+      }
+    },
+    "node_modules/temp-file/node_modules/universalify": {
+      "version": "2.0.1",
+      "resolved": "https://registry.npmjs.org/universalify/-/universalify-2.0.1.tgz",
+      "integrity": "sha512-gptHNQghINnc/vTGIk0SOFGFNXw7JVrlRUtConJRlvaw6DuX0wO5Jeko9sWrMBhh+PsYAZ7oXAiOnf/UKogyiw==",
+      "dev": true,
+      "engines": {
+        "node": ">= 10.0.0"
+      }
+    },
+    "node_modules/terser": {
+      "version": "4.8.1",
+      "resolved": "https://registry.npmjs.org/terser/-/terser-4.8.1.tgz",
+      "integrity": "sha512-4GnLC0x667eJG0ewJTa6z/yXrbLGv80D9Ru6HIpCQmO+Q4PfEtBFi0ObSckqwL6VyQv/7ENJieXHo2ANmdQwgw==",
+      "dev": true,
+      "dependencies": {
+        "commander": "^2.20.0",
+        "source-map": "~0.6.1",
+        "source-map-support": "~0.5.12"
+      },
+      "bin": {
+        "terser": "bin/terser"
+      },
+      "engines": {
+        "node": ">=6.0.0"
+      }
+    },
+    "node_modules/terser-webpack-plugin": {
+      "version": "5.3.10",
+      "resolved": "https://registry.npmjs.org/terser-webpack-plugin/-/terser-webpack-plugin-5.3.10.tgz",
+      "integrity": "sha512-BKFPWlPDndPs+NGGCr1U59t0XScL5317Y0UReNrHaw9/FwhPENlq6bfgs+4yPfyP51vqC1bQ4rp1EfXW5ZSH9w==",
+      "dev": true,
+      "dependencies": {
+        "@jridgewell/trace-mapping": "^0.3.20",
+        "jest-worker": "^27.4.5",
+        "schema-utils": "^3.1.1",
+        "serialize-javascript": "^6.0.1",
+        "terser": "^5.26.0"
+      },
+      "engines": {
+        "node": ">= 10.13.0"
+      },
+      "funding": {
+        "type": "opencollective",
+        "url": "https://opencollective.com/webpack"
+      },
+      "peerDependencies": {
+        "webpack": "^5.1.0"
+      },
+      "peerDependenciesMeta": {
+        "@swc/core": {
+          "optional": true
+        },
+        "esbuild": {
+          "optional": true
+        },
+        "uglify-js": {
+          "optional": true
+        }
+      }
+    },
+    "node_modules/terser-webpack-plugin/node_modules/commander": {
+      "version": "2.20.3",
+      "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz",
+      "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==",
+      "dev": true
+    },
+    "node_modules/terser-webpack-plugin/node_modules/terser": {
+      "version": "5.31.0",
+      "resolved": "https://registry.npmjs.org/terser/-/terser-5.31.0.tgz",
+      "integrity": "sha512-Q1JFAoUKE5IMfI4Z/lkE/E6+SwgzO+x4tq4v1AyBLRj8VSYvRO6A/rQrPg1yud4g0En9EKI1TvFRF2tQFcoUkg==",
+      "dev": true,
+      "dependencies": {
+        "@jridgewell/source-map": "^0.3.3",
+        "acorn": "^8.8.2",
+        "commander": "^2.20.0",
+        "source-map-support": "~0.5.20"
+      },
+      "bin": {
+        "terser": "bin/terser"
+      },
+      "engines": {
+        "node": ">=10"
+      }
+    },
+    "node_modules/terser/node_modules/commander": {
+      "version": "2.20.3",
+      "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz",
+      "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==",
+      "dev": true
+    },
+    "node_modules/text-table": {
+      "version": "0.2.0",
+      "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz",
+      "integrity": "sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==",
+      "dev": true
+    },
+    "node_modules/tmp": {
+      "version": "0.2.3",
+      "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.2.3.tgz",
+      "integrity": "sha512-nZD7m9iCPC5g0pYmcaxogYKggSfLsdxl8of3Q/oIbqCqLLIO9IAF0GWjX1z9NZRHPiXv8Wex4yDCaZsgEw0Y8w==",
+      "dev": true,
+      "engines": {
+        "node": ">=14.14"
+      }
+    },
+    "node_modules/tmp-promise": {
+      "version": "3.0.3",
+      "resolved": "https://registry.npmjs.org/tmp-promise/-/tmp-promise-3.0.3.tgz",
+      "integrity": "sha512-RwM7MoPojPxsOBYnyd2hy0bxtIlVrihNs9pj5SUvY8Zz1sQcQG2tG1hSr8PDxfgEB8RNKDhqbIlroIarSNDNsQ==",
+      "dev": true,
+      "dependencies": {
+        "tmp": "^0.2.0"
+      }
+    },
+    "node_modules/to-regex-range": {
+      "version": "5.0.1",
+      "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz",
+      "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==",
+      "dev": true,
+      "dependencies": {
+        "is-number": "^7.0.0"
+      },
+      "engines": {
+        "node": ">=8.0"
+      }
+    },
+    "node_modules/totalist": {
+      "version": "3.0.1",
+      "resolved": "https://registry.npmjs.org/totalist/-/totalist-3.0.1.tgz",
+      "integrity": "sha512-sf4i37nQ2LBx4m3wB74y+ubopq6W/dIzXg0FDGjsYnZHVa1Da8FH853wlL2gtUhg+xJXjfk3kUZS3BRoQeoQBQ==",
+      "dev": true,
+      "engines": {
+        "node": ">=6"
+      }
+    },
+    "node_modules/truncate-utf8-bytes": {
+      "version": "1.0.2",
+      "resolved": "https://registry.npmjs.org/truncate-utf8-bytes/-/truncate-utf8-bytes-1.0.2.tgz",
+      "integrity": "sha512-95Pu1QXQvruGEhv62XCMO3Mm90GscOCClvrIUwCM0PYOXK3kaF3l3sIHxx71ThJfcbM2O5Au6SO3AWCSEfW4mQ==",
+      "dev": true,
+      "dependencies": {
+        "utf8-byte-length": "^1.0.1"
+      }
+    },
+    "node_modules/tslib": {
+      "version": "2.6.2",
+      "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.6.2.tgz",
+      "integrity": "sha512-AEYxH93jGFPn/a2iVAwW87VuUIkR1FVUKB77NwMF7nBTDkDrrT/Hpt/IrCJ0QXhW27jTBDcf5ZY7w6RiqTMw2Q==",
+      "dev": true
+    },
+    "node_modules/tsutils": {
+      "version": "3.21.0",
+      "resolved": "https://registry.npmjs.org/tsutils/-/tsutils-3.21.0.tgz",
+      "integrity": "sha512-mHKK3iUXL+3UF6xL5k0PEhKRUBKPBCv/+RkEOpjRWxxx27KKRBmmA60A9pgOUvMi8GKhRMPEmjBRPzs2W7O1OA==",
+      "dev": true,
+      "dependencies": {
+        "tslib": "^1.8.1"
+      },
+      "engines": {
+        "node": ">= 6"
+      },
+      "peerDependencies": {
+        "typescript": ">=2.8.0 || >= 3.2.0-dev || >= 3.3.0-dev || >= 3.4.0-dev || >= 3.5.0-dev || >= 3.6.0-dev || >= 3.6.0-beta || >= 3.7.0-dev || >= 3.7.0-beta"
+      }
+    },
+    "node_modules/tsutils/node_modules/tslib": {
+      "version": "1.14.1",
+      "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz",
+      "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==",
+      "dev": true
+    },
+    "node_modules/type-check": {
+      "version": "0.4.0",
+      "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.4.0.tgz",
+      "integrity": "sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==",
+      "dev": true,
+      "dependencies": {
+        "prelude-ls": "^1.2.1"
+      },
+      "engines": {
+        "node": ">= 0.8.0"
+      }
+    },
+    "node_modules/type-fest": {
+      "version": "0.20.2",
+      "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz",
+      "integrity": "sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==",
+      "dev": true,
+      "engines": {
+        "node": ">=10"
+      },
+      "funding": {
+        "url": "https://github.com/sponsors/sindresorhus"
+      }
+    },
+    "node_modules/typescript": {
+      "version": "4.9.5",
+      "resolved": "https://registry.npmjs.org/typescript/-/typescript-4.9.5.tgz",
+      "integrity": "sha512-1FXk9E2Hm+QzZQ7z+McJiHL4NW1F2EzMu9Nq9i3zAaGqibafqYwCVU6WyWAuyQRRzOlxou8xZSyXLEN8oKj24g==",
+      "dev": true,
+      "bin": {
+        "tsc": "bin/tsc",
+        "tsserver": "bin/tsserver"
+      },
+      "engines": {
+        "node": ">=4.2.0"
+      }
+    },
+    "node_modules/undici-types": {
+      "version": "5.26.5",
+      "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-5.26.5.tgz",
+      "integrity": "sha512-JlCMO+ehdEIKqlFxk6IfVoAUVmgz7cU7zD/h9XZ0qzeosSHmUJVOzSQvvYSYWXkFXC+IfLKSIffhv0sVZup6pA=="
+    },
+    "node_modules/universalify": {
+      "version": "0.1.2",
+      "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.1.2.tgz",
+      "integrity": "sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==",
+      "engines": {
+        "node": ">= 4.0.0"
+      }
+    },
+    "node_modules/update-browserslist-db": {
+      "version": "1.0.15",
+      "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.0.15.tgz",
+      "integrity": "sha512-K9HWH62x3/EalU1U6sjSZiylm9C8tgq2mSvshZpqc7QE69RaA2qjhkW2HlNA0tFpEbtyFz7HTqbSdN4MSwUodA==",
+      "dev": true,
+      "funding": [
+        {
+          "type": "opencollective",
+          "url": "https://opencollective.com/browserslist"
+        },
+        {
+          "type": "tidelift",
+          "url": "https://tidelift.com/funding/github/npm/browserslist"
+        },
+        {
+          "type": "github",
+          "url": "https://github.com/sponsors/ai"
+        }
+      ],
+      "dependencies": {
+        "escalade": "^3.1.2",
+        "picocolors": "^1.0.0"
+      },
+      "bin": {
+        "update-browserslist-db": "cli.js"
+      },
+      "peerDependencies": {
+        "browserslist": ">= 4.21.0"
+      }
+    },
+    "node_modules/uri-js": {
+      "version": "4.4.1",
+      "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz",
+      "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==",
+      "dev": true,
+      "dependencies": {
+        "punycode": "^2.1.0"
+      }
+    },
+    "node_modules/utf8-byte-length": {
+      "version": "1.0.4",
+      "resolved": "https://registry.npmjs.org/utf8-byte-length/-/utf8-byte-length-1.0.4.tgz",
+      "integrity": "sha512-4+wkEYLBbWxqTahEsWrhxepcoVOJ+1z5PGIjPZxRkytcdSUaNjIjBM7Xn8E+pdSuV7SzvWovBFA54FO0JSoqhA==",
+      "dev": true
+    },
+    "node_modules/util-deprecate": {
+      "version": "1.0.2",
+      "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz",
+      "integrity": "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==",
+      "dev": true
+    },
+    "node_modules/utila": {
+      "version": "0.4.0",
+      "resolved": "https://registry.npmjs.org/utila/-/utila-0.4.0.tgz",
+      "integrity": "sha512-Z0DbgELS9/L/75wZbro8xAnT50pBVFQZ+hUEueGDU5FN51YSCYM+jdxsfCiHjwNP/4LCDD0i/graKpeBnOXKRA==",
+      "dev": true
+    },
+    "node_modules/verror": {
+      "version": "1.10.1",
+      "resolved": "https://registry.npmjs.org/verror/-/verror-1.10.1.tgz",
+      "integrity": "sha512-veufcmxri4e3XSrT0xwfUR7kguIkaxBeosDg00yDWhk49wdwkSUrvvsm7nc75e1PUyvIeZj6nS8VQRYz2/S4Xg==",
+      "dev": true,
+      "optional": true,
+      "dependencies": {
+        "assert-plus": "^1.0.0",
+        "core-util-is": "1.0.2",
+        "extsprintf": "^1.2.0"
+      },
+      "engines": {
+        "node": ">=0.6.0"
+      }
+    },
+    "node_modules/watchpack": {
+      "version": "2.4.1",
+      "resolved": "https://registry.npmjs.org/watchpack/-/watchpack-2.4.1.tgz",
+      "integrity": "sha512-8wrBCMtVhqcXP2Sup1ctSkga6uc2Bx0IIvKyT7yTFier5AXHooSI+QyQQAtTb7+E0IUCCKyTFmXqdqgum2XWGg==",
+      "dev": true,
+      "dependencies": {
+        "glob-to-regexp": "^0.4.1",
+        "graceful-fs": "^4.1.2"
+      },
+      "engines": {
+        "node": ">=10.13.0"
+      }
+    },
+    "node_modules/webpack": {
+      "version": "5.91.0",
+      "resolved": "https://registry.npmjs.org/webpack/-/webpack-5.91.0.tgz",
+      "integrity": "sha512-rzVwlLeBWHJbmgTC/8TvAcu5vpJNII+MelQpylD4jNERPwpBJOE2lEcko1zJX3QJeLjTTAnQxn/OJ8bjDzVQaw==",
+      "dev": true,
+      "dependencies": {
+        "@types/eslint-scope": "^3.7.3",
+        "@types/estree": "^1.0.5",
+        "@webassemblyjs/ast": "^1.12.1",
+        "@webassemblyjs/wasm-edit": "^1.12.1",
+        "@webassemblyjs/wasm-parser": "^1.12.1",
+        "acorn": "^8.7.1",
+        "acorn-import-assertions": "^1.9.0",
+        "browserslist": "^4.21.10",
+        "chrome-trace-event": "^1.0.2",
+        "enhanced-resolve": "^5.16.0",
+        "es-module-lexer": "^1.2.1",
+        "eslint-scope": "5.1.1",
+        "events": "^3.2.0",
+        "glob-to-regexp": "^0.4.1",
+        "graceful-fs": "^4.2.11",
+        "json-parse-even-better-errors": "^2.3.1",
+        "loader-runner": "^4.2.0",
+        "mime-types": "^2.1.27",
+        "neo-async": "^2.6.2",
+        "schema-utils": "^3.2.0",
+        "tapable": "^2.1.1",
+        "terser-webpack-plugin": "^5.3.10",
+        "watchpack": "^2.4.1",
+        "webpack-sources": "^3.2.3"
+      },
+      "bin": {
+        "webpack": "bin/webpack.js"
+      },
+      "engines": {
+        "node": ">=10.13.0"
+      },
+      "funding": {
+        "type": "opencollective",
+        "url": "https://opencollective.com/webpack"
+      },
+      "peerDependenciesMeta": {
+        "webpack-cli": {
+          "optional": true
+        }
+      }
+    },
+    "node_modules/webpack-bundle-analyzer": {
+      "version": "4.10.2",
+      "resolved": "https://registry.npmjs.org/webpack-bundle-analyzer/-/webpack-bundle-analyzer-4.10.2.tgz",
+      "integrity": "sha512-vJptkMm9pk5si4Bv922ZbKLV8UTT4zib4FPgXMhgzUny0bfDDkLXAVQs3ly3fS4/TN9ROFtb0NFrm04UXFE/Vw==",
+      "dev": true,
+      "dependencies": {
+        "@discoveryjs/json-ext": "0.5.7",
+        "acorn": "^8.0.4",
+        "acorn-walk": "^8.0.0",
+        "commander": "^7.2.0",
+        "debounce": "^1.2.1",
+        "escape-string-regexp": "^4.0.0",
+        "gzip-size": "^6.0.0",
+        "html-escaper": "^2.0.2",
+        "opener": "^1.5.2",
+        "picocolors": "^1.0.0",
+        "sirv": "^2.0.3",
+        "ws": "^7.3.1"
+      },
+      "bin": {
+        "webpack-bundle-analyzer": "lib/bin/analyzer.js"
+      },
+      "engines": {
+        "node": ">= 10.13.0"
+      }
+    },
+    "node_modules/webpack-bundle-analyzer/node_modules/commander": {
+      "version": "7.2.0",
+      "resolved": "https://registry.npmjs.org/commander/-/commander-7.2.0.tgz",
+      "integrity": "sha512-QrWXB+ZQSVPmIWIhtEO9H+gwHaMGYiF5ChvoJ+K9ZGHG/sVsa6yiesAD1GC/x46sET00Xlwo1u49RVVVzvcSkw==",
+      "dev": true,
+      "engines": {
+        "node": ">= 10"
+      }
+    },
+    "node_modules/webpack-cli": {
+      "version": "4.10.0",
+      "resolved": "https://registry.npmjs.org/webpack-cli/-/webpack-cli-4.10.0.tgz",
+      "integrity": "sha512-NLhDfH/h4O6UOy+0LSso42xvYypClINuMNBVVzX4vX98TmTaTUxwRbXdhucbFMd2qLaCTcLq/PdYrvi8onw90w==",
+      "dev": true,
+      "dependencies": {
+        "@discoveryjs/json-ext": "^0.5.0",
+        "@webpack-cli/configtest": "^1.2.0",
+        "@webpack-cli/info": "^1.5.0",
+        "@webpack-cli/serve": "^1.7.0",
+        "colorette": "^2.0.14",
+        "commander": "^7.0.0",
+        "cross-spawn": "^7.0.3",
+        "fastest-levenshtein": "^1.0.12",
+        "import-local": "^3.0.2",
+        "interpret": "^2.2.0",
+        "rechoir": "^0.7.0",
+        "webpack-merge": "^5.7.3"
+      },
+      "bin": {
+        "webpack-cli": "bin/cli.js"
+      },
+      "engines": {
+        "node": ">=10.13.0"
+      },
+      "funding": {
+        "type": "opencollective",
+        "url": "https://opencollective.com/webpack"
+      },
+      "peerDependencies": {
+        "webpack": "4.x.x || 5.x.x"
+      },
+      "peerDependenciesMeta": {
+        "@webpack-cli/generators": {
+          "optional": true
+        },
+        "@webpack-cli/migrate": {
+          "optional": true
+        },
+        "webpack-bundle-analyzer": {
+          "optional": true
+        },
+        "webpack-dev-server": {
+          "optional": true
+        }
+      }
+    },
+    "node_modules/webpack-cli/node_modules/commander": {
+      "version": "7.2.0",
+      "resolved": "https://registry.npmjs.org/commander/-/commander-7.2.0.tgz",
+      "integrity": "sha512-QrWXB+ZQSVPmIWIhtEO9H+gwHaMGYiF5ChvoJ+K9ZGHG/sVsa6yiesAD1GC/x46sET00Xlwo1u49RVVVzvcSkw==",
+      "dev": true,
+      "engines": {
+        "node": ">= 10"
+      }
+    },
+    "node_modules/webpack-merge": {
+      "version": "5.10.0",
+      "resolved": "https://registry.npmjs.org/webpack-merge/-/webpack-merge-5.10.0.tgz",
+      "integrity": "sha512-+4zXKdx7UnO+1jaN4l2lHVD+mFvnlZQP/6ljaJVb4SZiwIKeUnrT5l0gkT8z+n4hKpC+jpOv6O9R+gLtag7pSA==",
+      "dev": true,
+      "dependencies": {
+        "clone-deep": "^4.0.1",
+        "flat": "^5.0.2",
+        "wildcard": "^2.0.0"
+      },
+      "engines": {
+        "node": ">=10.0.0"
+      }
+    },
+    "node_modules/webpack-sources": {
+      "version": "1.4.3",
+      "resolved": "https://registry.npmjs.org/webpack-sources/-/webpack-sources-1.4.3.tgz",
+      "integrity": "sha512-lgTS3Xhv1lCOKo7SA5TjKXMjpSM4sBjNV5+q2bqesbSPs5FjGmU6jjtBSkX9b4qW87vDIsCIlUPOEhbZrMdjeQ==",
+      "dev": true,
+      "dependencies": {
+        "source-list-map": "^2.0.0",
+        "source-map": "~0.6.1"
+      }
+    },
+    "node_modules/webpack/node_modules/webpack-sources": {
+      "version": "3.2.3",
+      "resolved": "https://registry.npmjs.org/webpack-sources/-/webpack-sources-3.2.3.tgz",
+      "integrity": "sha512-/DyMEOrDgLKKIG0fmvtz+4dUX/3Ghozwgm6iPp8KRhvn+eQf9+Q7GWxVNMk3+uCPWfdXYC4ExGBckIXdFEfH1w==",
+      "dev": true,
+      "engines": {
+        "node": ">=10.13.0"
+      }
+    },
+    "node_modules/which": {
+      "version": "2.0.2",
+      "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz",
+      "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==",
+      "dev": true,
+      "dependencies": {
+        "isexe": "^2.0.0"
+      },
+      "bin": {
+        "node-which": "bin/node-which"
+      },
+      "engines": {
+        "node": ">= 8"
+      }
+    },
+    "node_modules/wildcard": {
+      "version": "2.0.1",
+      "resolved": "https://registry.npmjs.org/wildcard/-/wildcard-2.0.1.tgz",
+      "integrity": "sha512-CC1bOL87PIWSBhDcTrdeLo6eGT7mCFtrg0uIJtqJUFyK+eJnzl8A1niH56uu7KMa5XFrtiV+AQuHO3n7DsHnLQ==",
+      "dev": true
+    },
+    "node_modules/word-wrap": {
+      "version": "1.2.5",
+      "resolved": "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.5.tgz",
+      "integrity": "sha512-BN22B5eaMMI9UMtjrGd5g5eCYPpCPDUy0FJXbYsaT5zYxjFOckS53SQDE3pWkVoWpHXVb3BrYcEN4Twa55B5cA==",
+      "dev": true,
+      "engines": {
+        "node": ">=0.10.0"
+      }
+    },
+    "node_modules/wrap-ansi": {
+      "version": "7.0.0",
+      "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz",
+      "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==",
+      "dev": true,
+      "dependencies": {
+        "ansi-styles": "^4.0.0",
+        "string-width": "^4.1.0",
+        "strip-ansi": "^6.0.0"
+      },
+      "engines": {
+        "node": ">=10"
+      },
+      "funding": {
+        "url": "https://github.com/chalk/wrap-ansi?sponsor=1"
+      }
+    },
+    "node_modules/wrap-ansi-cjs": {
+      "name": "wrap-ansi",
+      "version": "7.0.0",
+      "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz",
+      "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==",
+      "dev": true,
+      "dependencies": {
+        "ansi-styles": "^4.0.0",
+        "string-width": "^4.1.0",
+        "strip-ansi": "^6.0.0"
+      },
+      "engines": {
+        "node": ">=10"
+      },
+      "funding": {
+        "url": "https://github.com/chalk/wrap-ansi?sponsor=1"
+      }
+    },
+    "node_modules/wrappy": {
+      "version": "1.0.2",
+      "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz",
+      "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ=="
+    },
+    "node_modules/ws": {
+      "version": "7.5.9",
+      "resolved": "https://registry.npmjs.org/ws/-/ws-7.5.9.tgz",
+      "integrity": "sha512-F+P9Jil7UiSKSkppIiD94dN07AwvFixvLIj1Og1Rl9GGMuNipJnV9JzjD6XuqmAeiswGvUmNLjr5cFuXwNS77Q==",
+      "dev": true,
+      "engines": {
+        "node": ">=8.3.0"
+      },
+      "peerDependencies": {
+        "bufferutil": "^4.0.1",
+        "utf-8-validate": "^5.0.2"
+      },
+      "peerDependenciesMeta": {
+        "bufferutil": {
+          "optional": true
+        },
+        "utf-8-validate": {
+          "optional": true
+        }
+      }
+    },
+    "node_modules/xmlbuilder": {
+      "version": "15.1.1",
+      "resolved": "https://registry.npmjs.org/xmlbuilder/-/xmlbuilder-15.1.1.tgz",
+      "integrity": "sha512-yMqGBqtXyeN1e3TGYvgNgDVZ3j84W4cwkOXQswghol6APgZWaff9lnbvN7MHYJOiXsvGPXtjTYJEiC9J2wv9Eg==",
+      "dev": true,
+      "engines": {
+        "node": ">=8.0"
+      }
+    },
+    "node_modules/y18n": {
+      "version": "5.0.8",
+      "resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz",
+      "integrity": "sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==",
+      "dev": true,
+      "engines": {
+        "node": ">=10"
+      }
+    },
+    "node_modules/yallist": {
+      "version": "4.0.0",
+      "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz",
+      "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==",
+      "devOptional": true
+    },
+    "node_modules/yargs": {
+      "version": "17.7.2",
+      "resolved": "https://registry.npmjs.org/yargs/-/yargs-17.7.2.tgz",
+      "integrity": "sha512-7dSzzRQ++CKnNI/krKnYRV7JKKPUXMEh61soaHKg9mrWEhzFWhFnxPxGl+69cD1Ou63C13NUPCnmIcrvqCuM6w==",
+      "dev": true,
+      "dependencies": {
+        "cliui": "^8.0.1",
+        "escalade": "^3.1.1",
+        "get-caller-file": "^2.0.5",
+        "require-directory": "^2.1.1",
+        "string-width": "^4.2.3",
+        "y18n": "^5.0.5",
+        "yargs-parser": "^21.1.1"
+      },
+      "engines": {
+        "node": ">=12"
+      }
+    },
+    "node_modules/yargs-parser": {
+      "version": "21.1.1",
+      "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-21.1.1.tgz",
+      "integrity": "sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==",
+      "dev": true,
+      "engines": {
+        "node": ">=12"
+      }
+    },
+    "node_modules/yauzl": {
+      "version": "2.10.0",
+      "resolved": "https://registry.npmjs.org/yauzl/-/yauzl-2.10.0.tgz",
+      "integrity": "sha512-p4a9I6X6nu6IhoGmBqAcbJy1mlC4j27vEPZX9F4L4/vZT3Lyq1VkFHw/V/PUcB9Buo+DG3iHkT0x3Qya58zc3g==",
+      "dependencies": {
+        "buffer-crc32": "~0.2.3",
+        "fd-slicer": "~1.1.0"
+      }
+    },
+    "node_modules/yocto-queue": {
+      "version": "0.1.0",
+      "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz",
+      "integrity": "sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==",
+      "dev": true,
+      "engines": {
+        "node": ">=10"
+      },
+      "funding": {
+        "url": "https://github.com/sponsors/sindresorhus"
+      }
+    },
+    "node_modules/zip-stream": {
+      "version": "4.1.1",
+      "resolved": "https://registry.npmjs.org/zip-stream/-/zip-stream-4.1.1.tgz",
+      "integrity": "sha512-9qv4rlDiopXg4E69k+vMHjNN63YFMe9sZMrdlvKnCjlCRWeCBswPPMPUfx+ipsAWq1LXHe70RcbaHdJJpS6hyQ==",
+      "dev": true,
+      "peer": true,
+      "dependencies": {
+        "archiver-utils": "^3.0.4",
+        "compress-commons": "^4.1.2",
+        "readable-stream": "^3.6.0"
+      },
+      "engines": {
+        "node": ">= 10"
+      }
+    },
+    "node_modules/zip-stream/node_modules/archiver-utils": {
+      "version": "3.0.4",
+      "resolved": "https://registry.npmjs.org/archiver-utils/-/archiver-utils-3.0.4.tgz",
+      "integrity": "sha512-KVgf4XQVrTjhyWmx6cte4RxonPLR9onExufI1jhvw/MQ4BB6IsZD5gT8Lq+u/+pRkWna/6JoHpiQioaqFP5Rzw==",
+      "dev": true,
+      "peer": true,
+      "dependencies": {
+        "glob": "^7.2.3",
+        "graceful-fs": "^4.2.0",
+        "lazystream": "^1.0.0",
+        "lodash.defaults": "^4.2.0",
+        "lodash.difference": "^4.5.0",
+        "lodash.flatten": "^4.4.0",
+        "lodash.isplainobject": "^4.0.6",
+        "lodash.union": "^4.6.0",
+        "normalize-path": "^3.0.0",
+        "readable-stream": "^3.6.0"
+      },
+      "engines": {
+        "node": ">= 10"
+      }
+    }
+  }
+}
diff --git a/pkgs/by-name/si/siyuan/package.nix b/pkgs/by-name/si/siyuan/package.nix
new file mode 100644
index 000000000000..c80d27b612a0
--- /dev/null
+++ b/pkgs/by-name/si/siyuan/package.nix
@@ -0,0 +1,100 @@
+{
+  lib,
+  fetchFromGitHub,
+  buildGoModule,
+  buildNpmPackage,
+  substituteAll,
+  pandoc,
+  electron,
+}:
+
+buildNpmPackage rec {
+  pname = "siyuan";
+  version = "3.0.11";
+
+  src = fetchFromGitHub {
+    owner = "siyuan-note";
+    repo = "siyuan";
+    rev = "v${version}";
+    hash = "sha256-s82g5os944us85V2TBnm+HNd37vVzNjaOJYrbBrgLSI=";
+  };
+
+  kernel = buildGoModule {
+    name = "${pname}-${version}-kernel";
+    inherit src;
+    sourceRoot = "${src.name}/kernel";
+    vendorHash = "sha256-onZBrw0fDsjqXgQF06C40ArxNmsbFDIwD57fJ0jB0ls=";
+
+    patches = [
+      (substituteAll {
+        src = ./set-pandoc-path.patch;
+        pandoc_path = lib.getExe pandoc;
+      })
+    ];
+
+    # this patch makes it so that file permissions are not kept when copying files using the gulu package
+    # this fixes a problem where it was copying files from the store and keeping their permissions
+    # hopefully this doesn't break other functionality
+    modPostBuild = ''
+      chmod +w vendor/github.com/88250/gulu
+      substituteInPlace vendor/github.com/88250/gulu/file.go \
+          --replace-fail "os.Chmod(dest, sourceinfo.Mode())" "os.Chmod(dest, 0644)"
+    '';
+  };
+
+  sourceRoot = "${src.name}/app";
+
+  postPatch = ''
+    ln -s ${./package-lock.json} package-lock.json
+    # for some reason the default page is broken, use the redirection link automatically
+    substituteInPlace electron/main.js \
+        --replace-fail ' "/stage/build/app/index.html?v=" + new Date().getTime()' '"/stage/build/desktop"'
+  '';
+
+  npmDepsHash = "sha256-Yv/iOCyry3CNeKPxS206Y5y5mvzPU873PJdi0UQkVLs=";
+
+  env.ELECTRON_SKIP_BINARY_DOWNLOAD = "1";
+
+  npmBuildScript = "build:desktop";
+
+  postBuild = ''
+    substituteInPlace electron-builder-linux.yml \
+        --replace-fail '- target: "AppImage"' "" \
+        --replace-fail '- target: "tar.gz"' '- target: "dir"'
+
+    # add extra fields to resolve the electron provided by nixpkgs
+    sed -e 1i'electronDist: ${electron}/libexec/electron' \
+        -e 1i'electronVersion: ${electron.version}' \
+        -i electron-builder-linux.yml
+
+    npm run dist-linux
+  '';
+
+  installPhase = ''
+    runHook preInstall
+
+    mkdir -p $out/share/siyuan
+    cp -r build/*-unpacked/{locales,resources{,.pak}} $out/share/siyuan
+
+    mkdir $out/share/siyuan/resources/kernel
+    ln -s ${kernel}/bin/kernel $out/share/siyuan/resources/kernel/SiYuan-Kernel
+
+    makeWrapper ${lib.getExe electron} $out/bin/siyuan \
+        --chdir $out/share/siyuan/resources \
+        --add-flags $out/share/siyuan/resources/app \
+        --set ELECTRON_FORCE_IS_PACKAGED 1 \
+        --add-flags "\''${NIXOS_OZONE_WL:+\''${WAYLAND_DISPLAY:+--ozone-platform-hint=auto --enable-features=WaylandWindowDecorations}}" \
+        --inherit-argv0
+
+    runHook postInstall
+  '';
+
+  meta = {
+    description = "A privacy-first personal knowledge management system that supports complete offline usage, as well as end-to-end encrypted data sync";
+    homepage = "https://b3log.org/siyuan/";
+    license = lib.licenses.agpl3Plus;
+    mainProgram = "siyuan";
+    maintainers = with lib.maintainers; [ tomasajt ];
+    platforms = lib.platforms.linux;
+  };
+}
diff --git a/pkgs/by-name/si/siyuan/set-pandoc-path.patch b/pkgs/by-name/si/siyuan/set-pandoc-path.patch
new file mode 100644
index 000000000000..e3b75b6988d9
--- /dev/null
+++ b/pkgs/by-name/si/siyuan/set-pandoc-path.patch
@@ -0,0 +1,13 @@
+diff --git a/util/pandoc.go b/util/pandoc.go
+index 5dbc58d..5f32644 100644
+--- a/util/pandoc.go
++++ b/util/pandoc.go
+@@ -97,6 +97,8 @@ var (
+ )
+ 
+ func InitPandoc() {
++    PandocBinPath = "@pandoc_path@"
++    return
+ 	if ContainerStd != Container {
+ 		return
+ 	}
diff --git a/pkgs/by-name/sk/sketchybar-app-font/package.nix b/pkgs/by-name/sk/sketchybar-app-font/package.nix
index ff1a2fe7c742..e13b23e3fbbc 100644
--- a/pkgs/by-name/sk/sketchybar-app-font/package.nix
+++ b/pkgs/by-name/sk/sketchybar-app-font/package.nix
@@ -18,7 +18,7 @@ lib.checkListOfEnum "sketchybar-app-font: artifacts" artifacts artifactList
   in
   {
     pname = "sketchybar-app-font";
-    version = "2.0.17";
+    version = "2.0.18";
 
     srcs = selectedSources;
 
@@ -52,15 +52,15 @@ lib.checkListOfEnum "sketchybar-app-font: artifacts" artifacts artifactList
       sources = {
         font = fetchurl {
           url = "https://github.com/kvndrsslr/sketchybar-app-font/releases/download/v${finalAttrs.version}/sketchybar-app-font.ttf";
-          hash = "sha256-iVSWFqhzf0ZxfQODAf+uvGIiWMjWbir6ZWurlx3n6/w=";
+          hash = "sha256-ajwyBUfgvIUcac8gdFUnzGJCXsUcOJnscIdtrxo7ZqY=";
         };
         lua = fetchurl {
           url = "https://github.com/kvndrsslr/sketchybar-app-font/releases/download/v${finalAttrs.version}/icon_map.lua";
-          hash = "sha256-/N16zLflQ2sONBFOZiIdC8KR1rd5pZvXftiXjXJvTVA=";
+          hash = "sha256-jxIBLE1UDD1S8nu4b9y7AUYb0XHH/3iknhmBloi1Qrs=";
         };
         shell = fetchurl {
           url = "https://github.com/kvndrsslr/sketchybar-app-font/releases/download/v${finalAttrs.version}/icon_map.sh";
-          hash = "sha256-nPBiNz+3oHwiertjMJ6YW6g6WZglGjassUGrsQVvnRM=";
+          hash = "sha256-I0t9KbC3Cs73021z9lm7TZUhmwdIaIgPVuLe8IjwkCU=";
         };
       };
 
diff --git a/pkgs/by-name/sl/slumber/package.nix b/pkgs/by-name/sl/slumber/package.nix
new file mode 100644
index 000000000000..dbb59d45d7d6
--- /dev/null
+++ b/pkgs/by-name/sl/slumber/package.nix
@@ -0,0 +1,30 @@
+{
+  lib,
+  stdenv,
+  fetchFromGitHub,
+  rustPlatform,
+  darwin,
+}:
+rustPlatform.buildRustPackage rec {
+  pname = "slumber";
+  version = "1.3.0";
+
+  src = fetchFromGitHub {
+    owner = "LucasPickering";
+    repo = "slumber";
+    rev = "v${version}";
+    hash = "sha256-Qg2Tn0f/5a1tzD7mdPm+d6di1k+o1PKLUjpV7Hv8wpY=";
+  };
+
+  cargoHash = "sha256-mWKMnE47fl04TvkgB5h3U/Y8TKUcdxDQdIwFiK7kGf4=";
+
+  buildInputs = lib.optionals stdenv.isDarwin [ darwin.apple_sdk.frameworks.AppKit ];
+
+  meta = with lib; {
+    description = "Terminal-based HTTP/REST client";
+    homepage = "https://slumber.lucaspickering.me";
+    license = licenses.mit;
+    mainProgram = "slumber";
+    maintainers = with maintainers; [ javaes ];
+  };
+}
diff --git a/pkgs/by-name/sm/smartgithg/package.nix b/pkgs/by-name/sm/smartgithg/package.nix
index 4693511951a1..65c5a78ad299 100644
--- a/pkgs/by-name/sm/smartgithg/package.nix
+++ b/pkgs/by-name/sm/smartgithg/package.nix
@@ -6,7 +6,7 @@
 , gtk3
 , glib
 , gnome
-, wrapGAppsHook
+, wrapGAppsHook3
 , libXtst
 , which
 }:
@@ -15,14 +15,14 @@ let
 in
 stdenv.mkDerivation rec {
   pname = "smartgithg";
-  version = "23.1.2";
+  version = "23.1.3";
 
   src = fetchurl {
     url = "https://www.syntevo.com/downloads/smartgit/smartgit-linux-${builtins.replaceStrings [ "." ] [ "_" ] version}.tar.gz";
-    hash = "sha256-gXfHmRPUhs8s7IQIhN0vQyx8NpLrS28ufNNYOMA4AXw=";
+    hash = "sha256-UvdHr1L5MYwl7eT1BVS/M8Ydtw8VjDG+QuqMW0Q5La4=";
   };
 
-  nativeBuildInputs = [ wrapGAppsHook ];
+  nativeBuildInputs = [ wrapGAppsHook3 ];
 
   buildInputs = [ jre gnome.adwaita-icon-theme gtk3 ];
 
diff --git a/pkgs/by-name/sn/snapcraft/package.nix b/pkgs/by-name/sn/snapcraft/package.nix
index b66180a22fc8..38d0f47edbaa 100644
--- a/pkgs/by-name/sn/snapcraft/package.nix
+++ b/pkgs/by-name/sn/snapcraft/package.nix
@@ -11,7 +11,7 @@
 }:
 python3Packages.buildPythonApplication rec {
   pname = "snapcraft";
-  version = "8.2.1";
+  version = "8.2.5";
 
   pyproject = true;
 
@@ -24,7 +24,7 @@ python3Packages.buildPythonApplication rec {
     owner = "canonical";
     repo = "snapcraft";
     rev = "refs/tags/${version}";
-    hash = "sha256-PVJVvkc/LtGFbs93OWmkopaAXZFudLJedpmetrjU010=";
+    hash = "sha256-+1Gzseuq402m5FvlRAGXl7Lsy2VnRmd1cXNXhkMDDDE=";
   };
 
   patches = [
diff --git a/pkgs/by-name/sn/snes9x/package.nix b/pkgs/by-name/sn/snes9x/package.nix
index c3d19bac383b..3f57aee0ed47 100644
--- a/pkgs/by-name/sn/snes9x/package.nix
+++ b/pkgs/by-name/sn/snes9x/package.nix
@@ -23,7 +23,7 @@
   python3,
   stdenv,
   util-linuxMinimal,
-  wrapGAppsHook,
+  wrapGAppsHook3,
   zlib,
   # Boolean flags
   withGtk ? false,
@@ -48,7 +48,7 @@ stdenv.mkDerivation (finalAttrs: {
   ++ lib.optionals withGtk [
     cmake
     ninja
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
diff --git a/pkgs/by-name/sn/snipe-it/package.nix b/pkgs/by-name/sn/snipe-it/package.nix
index 32d0778e423f..db68a36a4d17 100644
--- a/pkgs/by-name/sn/snipe-it/package.nix
+++ b/pkgs/by-name/sn/snipe-it/package.nix
@@ -8,16 +8,16 @@
 
 php.buildComposerProject (finalAttrs: {
   pname = "snipe-it";
-  version = "6.3.4";
+  version = "6.4.1";
 
   src = fetchFromGitHub {
     owner = "snipe";
     repo = "snipe-it";
     rev = "v${finalAttrs.version}";
-    hash = "sha256-xjVrf8RgHzVHSyPK+fqLOCS2pjPvUMFUHZtwkrQWHWM=";
+    hash = "sha256-7IK5KLdWYcdzsJwzXfHsYvxWiR/R4407gGAGiY9+czY=";
   };
 
-  vendorHash = "sha256-HNMn50gTYtRHH9bKcvrM7fnCMQsf6lBOqr825kgEsvE=";
+  vendorHash = "sha256-KkFoc/fqYVgA5Vv6oEk+1/Rcj9VA52ZnH5O5qmLhmE4=";
 
   postInstall = ''
     snipe_it_out="$out/share/php/snipe-it"
diff --git a/pkgs/by-name/sn/snippetexpandergui/package.nix b/pkgs/by-name/sn/snippetexpandergui/package.nix
index c43ce82c5ea7..a5b68fbce93f 100644
--- a/pkgs/by-name/sn/snippetexpandergui/package.nix
+++ b/pkgs/by-name/sn/snippetexpandergui/package.nix
@@ -1,7 +1,7 @@
 { lib
 , buildGoModule
 , fetchFromSourcehut
-, wrapGAppsHook
+, wrapGAppsHook3
 , wails
 , scdoc
 , installShellFiles
@@ -28,7 +28,7 @@ buildGoModule rec {
     wails
     scdoc
     installShellFiles
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
diff --git a/pkgs/by-name/sn/snippetexpanderx/package.nix b/pkgs/by-name/sn/snippetexpanderx/package.nix
index 50da8f05503f..c1d7827a4cc5 100644
--- a/pkgs/by-name/sn/snippetexpanderx/package.nix
+++ b/pkgs/by-name/sn/snippetexpanderx/package.nix
@@ -3,7 +3,7 @@
 , fetchFromSourcehut
 , pkg-config
 , vala
-, wrapGAppsHook
+, wrapGAppsHook3
 , installShellFiles
 , scdoc
 , at-spi2-atk
@@ -26,7 +26,7 @@ stdenv.mkDerivation rec {
   nativeBuildInputs = [
     pkg-config
     vala
-    wrapGAppsHook
+    wrapGAppsHook3
     installShellFiles
     scdoc
   ];
diff --git a/pkgs/by-name/sp/spacedrive/package.nix b/pkgs/by-name/sp/spacedrive/package.nix
index a4efb37f8d60..80220ae4b941 100644
--- a/pkgs/by-name/sp/spacedrive/package.nix
+++ b/pkgs/by-name/sp/spacedrive/package.nix
@@ -9,20 +9,20 @@
 
 let
   pname = "spacedrive";
-  version = "0.2.13";
+  version = "0.2.14";
 
   src = fetchurl {
     aarch64-darwin = {
       url = "https://github.com/spacedriveapp/spacedrive/releases/download/${version}/Spacedrive-darwin-aarch64.dmg";
-      hash = "sha256-Ph9+Jve1qP1KBbKRN1I2lylHRy/SWRJAx7nOF9l3A/E=";
+      hash = "sha256-G0Ey7ewZeXegiqkAXFmS0MdaYllTphp7Buqs5/4/mWY=";
     };
     x86_64-darwin = {
       url = "https://github.com/spacedriveapp/spacedrive/releases/download/${version}/Spacedrive-darwin-x86_64.dmg";
-      hash = "sha256-+FHxJre+ouOxKvhDG+uDKDp7ZSx8NWRxac4m4yFqgrE=";
+      hash = "sha256-ypUDb94RlGqJfkf4htWKZ0UrGZ0SyCZrrAqtMuxDzDI=";
     };
     x86_64-linux = {
       url = "https://github.com/spacedriveapp/spacedrive/releases/download/${version}/Spacedrive-linux-x86_64.AppImage";
-      hash = "sha256-AyR1FshOjFatkZLgT2K46IKJgeFDu4e4//CvcuNyt0E=";
+      hash = "sha256-DFJ1/uJW0BwEtJZxGpnvGC7U8YmsJTUbcuWEOAP2Bno=";
     };
   }.${stdenv.system} or (throw "${pname}-${version}: ${stdenv.system} is unsupported.");
 
@@ -57,8 +57,7 @@ if stdenv.isDarwin then stdenv.mkDerivation
 else appimageTools.wrapType2 {
   inherit pname version src meta passthru;
 
-  extraPkgs = pkgs:
-    (appimageTools.defaultFhsEnvArgs.multiPkgs pkgs) ++ [ pkgs.libthai ];
+  extraPkgs = pkgs: [ pkgs.libthai ];
 
   extraInstallCommands =
     let
diff --git a/pkgs/by-name/sp/spade/Cargo.lock b/pkgs/by-name/sp/spade/Cargo.lock
index 0a236b50a51d..f97ada67faba 100644
--- a/pkgs/by-name/sp/spade/Cargo.lock
+++ b/pkgs/by-name/sp/spade/Cargo.lock
@@ -980,7 +980,7 @@ checksum = "942b4a808e05215192e39f4ab80813e599068285906cc91aa64f923db842bd5a"
 
 [[package]]
 name = "spade"
-version = "0.7.0"
+version = "0.8.0"
 dependencies = [
  "atty",
  "clap",
@@ -1014,7 +1014,7 @@ dependencies = [
 
 [[package]]
 name = "spade-ast"
-version = "0.7.0"
+version = "0.8.0"
 dependencies = [
  "num",
  "spade-common",
@@ -1022,7 +1022,7 @@ dependencies = [
 
 [[package]]
 name = "spade-ast-lowering"
-version = "0.7.0"
+version = "0.8.0"
 dependencies = [
  "itertools",
  "local-impl",
@@ -1040,7 +1040,7 @@ dependencies = [
 
 [[package]]
 name = "spade-common"
-version = "0.7.0"
+version = "0.8.0"
 dependencies = [
  "codespan",
  "codespan-reporting 0.12.0",
@@ -1066,7 +1066,7 @@ dependencies = [
 
 [[package]]
 name = "spade-diagnostics"
-version = "0.7.0"
+version = "0.8.0"
 dependencies = [
  "codespan",
  "codespan-reporting 0.12.0",
@@ -1084,7 +1084,7 @@ dependencies = [
 
 [[package]]
 name = "spade-hir"
-version = "0.7.0"
+version = "0.8.0"
 dependencies = [
  "codespan-reporting 0.12.0",
  "colored",
@@ -1102,7 +1102,7 @@ dependencies = [
 
 [[package]]
 name = "spade-hir-lowering"
-version = "0.7.0"
+version = "0.8.0"
 dependencies = [
  "codespan",
  "codespan-reporting 0.12.0",
@@ -1128,7 +1128,7 @@ dependencies = [
 
 [[package]]
 name = "spade-macros"
-version = "0.7.0"
+version = "0.8.0"
 dependencies = [
  "proc-macro2",
  "quote",
@@ -1138,7 +1138,7 @@ dependencies = [
 
 [[package]]
 name = "spade-mir"
-version = "0.7.0"
+version = "0.8.0"
 dependencies = [
  "codespan",
  "codespan-reporting 0.12.0",
@@ -1159,7 +1159,7 @@ dependencies = [
 
 [[package]]
 name = "spade-parser"
-version = "0.7.0"
+version = "0.8.0"
 dependencies = [
  "codespan",
  "colored",
@@ -1177,7 +1177,7 @@ dependencies = [
 
 [[package]]
 name = "spade-python"
-version = "0.7.0"
+version = "0.8.0"
 dependencies = [
  "codespan-reporting 0.12.0",
  "color-eyre",
@@ -1206,7 +1206,7 @@ dependencies = [
 
 [[package]]
 name = "spade-simulation-ext"
-version = "0.7.0"
+version = "0.8.0"
 dependencies = [
  "codespan-reporting 0.12.0",
  "color-eyre",
@@ -1234,7 +1234,7 @@ dependencies = [
 
 [[package]]
 name = "spade-tests"
-version = "0.7.0"
+version = "0.8.0"
 dependencies = [
  "codespan-reporting 0.12.0",
  "colored",
@@ -1262,7 +1262,7 @@ dependencies = [
 
 [[package]]
 name = "spade-typeinference"
-version = "0.7.0"
+version = "0.8.0"
 dependencies = [
  "assert_matches",
  "codespan",
@@ -1285,7 +1285,7 @@ dependencies = [
 
 [[package]]
 name = "spade-types"
-version = "0.7.0"
+version = "0.8.0"
 dependencies = [
  "num",
  "serde",
@@ -1294,7 +1294,7 @@ dependencies = [
 
 [[package]]
 name = "spade-wordlength-inference"
-version = "0.7.0"
+version = "0.8.0"
 dependencies = [
  "codespan",
  "codespan-reporting 0.12.0",
diff --git a/pkgs/by-name/sp/spade/package.nix b/pkgs/by-name/sp/spade/package.nix
index 9248568deae2..2781a6440de9 100644
--- a/pkgs/by-name/sp/spade/package.nix
+++ b/pkgs/by-name/sp/spade/package.nix
@@ -2,17 +2,20 @@
 , rustPlatform
 , fetchFromGitLab
 , stdenv
+, nix-update
+, writeScript
+, git
 }:
 
 rustPlatform.buildRustPackage rec {
   pname = "spade";
-  version = "0.7.0";
+  version = "0.8.0";
 
   src = fetchFromGitLab {
     owner = "spade-lang";
     repo = "spade";
     rev = "v${version}";
-    hash = "sha256-oJfOgWobjt+DAVdP465E8iLMJCdqhs0vzJJFgRqVAP8=";
+    hash = "sha256-J3AdXuN1WLKFED9YeBly68umPlx05Wl+mhT2YbBsJVk=";
     # only needed for vatch, which contains test data
     fetchSubmodules = true;
   };
@@ -25,6 +28,18 @@ rustPlatform.buildRustPackage rec {
     };
   };
 
+  # rust + gitlab is a rare combo
+  passthru.updateScript = [
+    (writeScript "update-spade" ''
+      VERSION="$(
+        ${lib.getExe git} ls-remote --tags --sort -version:refname ${lib.escapeShellArg src.gitRepoUrl} \
+          | cut -f2 | grep ^refs/tags/v | cut -d/ -f3- | cut -c2- \
+          | sort --version-sort --reverse | head -n1
+      )"
+      exec ${lib.getExe nix-update} --version "$VERSION" "$@"
+    '')
+  ];
+
   meta = with lib; {
     description = "A better hardware description language";
     homepage = "https://gitlab.com/spade-lang/spade";
diff --git a/pkgs/by-name/sp/spectral-language-server/package.json b/pkgs/by-name/sp/spectral-language-server/package.json
new file mode 100644
index 000000000000..1f3651349c62
--- /dev/null
+++ b/pkgs/by-name/sp/spectral-language-server/package.json
@@ -0,0 +1,159 @@
+{
+  "activationEvents": [
+    "onStartupFinished"
+  ],
+  "author": "Stoplight <support@stoplight.io>",
+  "bugs": {
+    "url": "https://github.com/stoplightio/vscode-spectral/issues"
+  },
+  "categories": [
+    "Linters"
+  ],
+  "contributes": {
+    "configuration": {
+      "properties": {
+        "spectral.enable": {
+          "default": true,
+          "description": "Controls whether or not Spectral is enabled.",
+          "scope": "resource",
+          "type": "boolean"
+        },
+        "spectral.rulesetFile": {
+          "description": "Location of the ruleset file to use when validating. If omitted, the default is a .spectral.yml/.spectral.json in the same folder as the document being validated. Paths are relative to the workspace. This can also be a remote HTTP url.",
+          "scope": "resource",
+          "type": "string"
+        },
+        "spectral.run": {
+          "default": "onType",
+          "description": "Run the linter on save (onSave) or as you type (onType).",
+          "enum": [
+            "onSave",
+            "onType"
+          ],
+          "scope": "resource",
+          "type": "string"
+        },
+        "spectral.trace.server": {
+          "default": "off",
+          "description": "Traces the communication between VS Code and the language server.",
+          "enum": [
+            "off",
+            "messages",
+            "verbose"
+          ],
+          "scope": "window",
+          "type": "string"
+        },
+        "spectral.validateFiles": {
+          "description": "An array of file globs (e.g., `**/*.yaml`) in minimatch glob format which should be validated by Spectral. If language identifiers are also specified, the file must match both in order to be validated. You can also use negative file globs (e.g., `!**/package.json`) here to exclude files.",
+          "items": {
+            "type": "string"
+          },
+          "scope": "resource",
+          "type": "array"
+        },
+        "spectral.validateLanguages": {
+          "default": [
+            "json",
+            "yaml"
+          ],
+          "description": "An array of language IDs which should be validated by Spectral. If file globs are also specified, the file must match both in order to be validated.",
+          "items": {
+            "type": "string"
+          },
+          "scope": "resource",
+          "type": "array"
+        }
+      },
+      "title": "Spectral",
+      "type": "object"
+    },
+    "commands": [
+      {
+        "title": "Show Output Channel",
+        "category": "Spectral",
+        "command": "spectral.showOutputChannel"
+      }
+    ]
+  },
+  "description": "JSON/YAML linter with OpenAPI and custom ruleset support.",
+  "devDependencies": {
+    "@types/chai": "^4.3.1",
+    "@types/chai-jest-snapshot": "^1.3.6",
+    "@types/glob": "^7.2.0",
+    "@types/mocha": "^9.1.0",
+    "@types/node": "^18.11.18",
+    "@types/vscode": "^1.48.0",
+    "@typescript-eslint/eslint-plugin": "^4.33.0",
+    "@typescript-eslint/parser": "^4.1.0",
+    "chai": "^4.2.0",
+    "chai-jest-snapshot": "^2.0.0",
+    "copyfiles": "^2.4.1",
+    "cross-env": "^7.0.3",
+    "eslint": "^7.8.1",
+    "eslint-config-google": "^0.14.0",
+    "glob": "^8.0.3",
+    "http-test-servers": "^2.0.0",
+    "merge-options": "^3.0.0",
+    "mocha": "^8.1.3",
+    "rimraf": "^3.0.2",
+    "semver": "^7.3.2",
+    "shelljs": "^0.8.5",
+    "ts-loader": "^9.2.8",
+    "ts-node": "^8.10.2",
+    "typescript": "beta",
+    "vsce": "^1.103.1",
+    "vscode-test": "^1.5.0",
+    "webpack": "^5.72.0",
+    "webpack-cli": "^4.9.2"
+  },
+  "displayName": "Spectral",
+  "engines": {
+    "vscode": "^1.48.0",
+    "node": "^12.20 || >= 14.13"
+  },
+  "homepage": "https://github.com/stoplightio/vscode-spectral",
+  "icon": "icon.png",
+  "keywords": [
+    "linter",
+    "validator",
+    "OpenAPI",
+    "Swagger",
+    "API",
+    "style guide",
+    "API description",
+    "API specification",
+    "OAS",
+    "OAS2",
+    "OAS3",
+    "AsyncAPI",
+    "json",
+    "yaml"
+  ],
+  "license": "Apache-2.0",
+  "main": "./client/index.js",
+  "name": "spectral",
+  "private": true,
+  "publisher": "stoplight",
+  "repository": {
+    "type": "git",
+    "url": "https://github.com/stoplightio/vscode-spectral"
+  },
+  "scripts": {
+    "clean": "rimraf dist && rimraf \"{server,client}/dist\"",
+    "lint": "eslint --ext .ts,.js .",
+    "test": "mocha -r ts-node/register \"./+(client|server)/__tests__/unit/**/*.test.ts\"",
+    "test:e2e": "cross-env CI=true CHAI_JEST_SNAPSHOT_UPDATE_ALL=false ts-node ./client/src/__tests__/e2e/index.ts"
+  },
+  "version": "1.1.2",
+  "workspaces": {
+    "packages": [
+      "client",
+      "server"
+    ],
+    "nohoist": [
+      "client/**",
+      "server/**"
+    ]
+  }
+}
diff --git a/pkgs/by-name/sp/spectral-language-server/package.nix b/pkgs/by-name/sp/spectral-language-server/package.nix
new file mode 100644
index 000000000000..8193ff3acebd
--- /dev/null
+++ b/pkgs/by-name/sp/spectral-language-server/package.nix
@@ -0,0 +1,109 @@
+{ lib
+, buildNpmPackage
+, mkYarnPackage
+, fetchYarnDeps
+, fetchFromGitHub
+, typescript
+, jq
+, fetchpatch
+}:
+let
+  # Instead of the build script that spectral-language-server provides (ref: https://github.com/luizcorreia/spectral-language-server/blob/master/script/vscode-spectral-build.sh), we build vscode-spectral manually.
+  # This is because the script must go through the network and will not work under the Nix sandbox environment.
+  vscodeSpectral = mkYarnPackage rec {
+    pname = "vscode-spectral";
+    version = "1.1.2";
+
+    src = fetchFromGitHub {
+      owner = "stoplightio";
+      repo = "vscode-spectral";
+      rev = "v${version}";
+      hash = "sha256-TWy+bC6qhTKDY874ORTBbvCIH8ycpmBiU8GLYxBIiAs=";
+    };
+
+    packageJSON = ./package.json;
+
+    offlineCache = fetchYarnDeps {
+      yarnLock = src + "/yarn.lock";
+      hash = "sha256-am27A9VyFoXuOlgG9mnvNqV3Q7Bi7GJzDqqVFGDVWIA=";
+    };
+
+    nativeBuildInputs = [ typescript jq ];
+
+    postPatch = ''
+      cp server/tsconfig.json server/tsconfig.json.bak
+      jq '.compilerOptions += {"module": "NodeNext", "moduleResolution": "NodeNext"}' server/tsconfig.json.bak > server/tsconfig.json
+    '';
+
+    dontConfigure = true;
+
+    buildPhase = ''
+      runHook preBuild
+      # FIXME: vscode-spactral depends on @rollup/pluginutils, but it may have a bug that doesn't provide the type definitions for NodeNext module resolution. (ref: https://github.com/rollup/plugins/issues/1192)
+      # tsc detects some type errors in the code. However we ignore this because it's not a problem for the final build if server/dist is generated.
+      tsc -p server || true
+      test -d server/dist
+      runHook postBuild
+    '';
+
+    installPhase = ''
+      runHook preInstall
+      mkdir -p $out
+      cp -R server/dist $out
+      runHook postInstall
+    '';
+
+    doDist = false;
+
+    meta = with lib; {
+      homepage = "https://github.com/stoplightio/vscode-spectral";
+      description = "VS Code extension bringing the awesome Spectral JSON/YAML linter with OpenAPI/AsyncAPI support";
+      license = licenses.asl20;
+    };
+  };
+in
+buildNpmPackage rec {
+  pname = "spectral-language-server";
+  version = "1.0.8-unstable-2023-06-06";
+
+  src = fetchFromGitHub {
+    owner = "luizcorreia";
+    repo = "spectral-language-server";
+    rev = "c9a7752b08e6bba937ef4f5435902afd41b6957f";
+    hash = "sha256-VD2aAzlCnJ6mxPUSbNRfMOlslM8kLPqrAI2ah6sX9cU=";
+  };
+
+  npmDepsHash = "sha256-ixAXy/rRkyWL3jdAkrXJh1qhWcKIkr5nH/Bhu2JV6k8=";
+
+  patches = [
+    # https://github.com/luizcorreia/spectral-language-server/pull/15
+    (fetchpatch {
+      name = "fix-package-lock.patch";
+      url = "https://github.com/luizcorreia/spectral-language-server/commit/909704850dd10e7b328fc7d15f8b07cdef88899d.patch";
+      hash = "sha256-+mN93xP4HCll4dTcnh2W/m9k3XovvgnB6AOmuJpZUZ0=";
+    })
+  ];
+
+  dontNpmBuild = true;
+
+  npmFlags = [ "--ignore-scripts" ];
+
+  installPhase = ''
+    runHook preInstall
+    mkdir -p $out/bin
+    mkdir -p $out/node_modules
+    mkdir -p $out/dist/spectral-language-server
+    cp -R ${vscodeSpectral}/dist/* $out/dist/spectral-language-server/
+    cp ./bin/* $out/bin
+    cp -R ./node_modules/* $out/node_modules
+    runHook postInstall
+  '';
+
+  meta = with lib; {
+    homepage = "https://github.com/luizcorreia/spectral-language-server";
+    description = "Awesome Spectral JSON/YAML linter with OpenAPI/AsyncAPI support";
+    maintainers = with maintainers; [ momeemt ];
+    license = licenses.mit;
+    mainProgram = "spectral-language-server";
+  };
+}
diff --git a/pkgs/by-name/sp/spfft/package.nix b/pkgs/by-name/sp/spfft/package.nix
index f7e8b3742581..65e98b92b4f2 100644
--- a/pkgs/by-name/sp/spfft/package.nix
+++ b/pkgs/by-name/sp/spfft/package.nix
@@ -38,6 +38,7 @@ stdenv.mkDerivation rec {
 
   buildInputs = [
     fftw
+    mpi
   ] ++ lib.optionals (gpuBackend == "cuda") [
     cudaPackages.libcufft
     cudaPackages.cuda_cudart
@@ -48,8 +49,6 @@ stdenv.mkDerivation rec {
   ] ++ lib.optional stdenv.isDarwin llvmPackages.openmp
   ;
 
-  propagatedBuildInputs = [ mpi ];
-
   cmakeFlags = [
     "-DSPFFT_OMP=ON"
     "-DSPFFT_MPI=ON"
diff --git a/pkgs/by-name/sp/spicetify-cli/package.nix b/pkgs/by-name/sp/spicetify-cli/package.nix
index e884a5177fa6..22489b3b7c9c 100644
--- a/pkgs/by-name/sp/spicetify-cli/package.nix
+++ b/pkgs/by-name/sp/spicetify-cli/package.nix
@@ -2,13 +2,13 @@
 
 buildGoModule rec {
   pname = "spicetify-cli";
-  version = "2.36.5";
+  version = "2.36.11";
 
   src = fetchFromGitHub {
     owner = "spicetify";
     repo = "spicetify-cli";
     rev = "v${version}";
-    hash = "sha256-amalb1NNoA9KqeQtMtJZamLFNL3Wc/21ZVkr/Evhmik=";
+    hash = "sha256-ZqWGKuYDxuKVqz6cNxZ3cTcKTxkxuu42b48hlAialKc=";
   };
 
   vendorHash = "sha256-UPrLXzAdvCOmLm1tekzKyulQ4+2BSyPUF1k66GwKS88=";
diff --git a/pkgs/by-name/sp/spla/package.nix b/pkgs/by-name/sp/spla/package.nix
index 210fb04af9b8..98222aa7c1f5 100644
--- a/pkgs/by-name/sp/spla/package.nix
+++ b/pkgs/by-name/sp/spla/package.nix
@@ -31,6 +31,8 @@ stdenv.mkDerivation rec {
     hash = "sha256-71QpwTsRogH+6Bik9DKwezl9SqwoLxQt4SZ7zw5X6DE=";
   };
 
+  outputs = [ "out" "dev" ];
+
   postPatch = ''
     substituteInPlace src/gpu_util/gpu_blas_api.hpp \
       --replace '#include <rocblas.h>' '#include <rocblas/rocblas.h>'
@@ -43,6 +45,7 @@ stdenv.mkDerivation rec {
 
   buildInputs = [
     blas
+    mpi
   ]
   ++ lib.optional (gpuBackend == "cuda") cudaPackages.cudatoolkit
   ++ lib.optionals (gpuBackend == "rocm") [
@@ -51,8 +54,6 @@ stdenv.mkDerivation rec {
   ] ++ lib.optional stdenv.isDarwin llvmPackages.openmp
   ;
 
-  propagatedBuildInputs = [ mpi ];
-
   cmakeFlags = [
     "-DSPLA_OMP=ON"
     "-DSPLA_FORTRAN=ON"
@@ -65,10 +66,15 @@ stdenv.mkDerivation rec {
   ++ lib.optional (gpuBackend == "rocm") [ "-DSPLA_GPU_BACKEND=ROCM" ]
   ;
 
+  preFixup = ''
+    substituteInPlace $out/lib/cmake/SPLA/SPLASharedTargets-release.cmake \
+      --replace-fail "\''${_IMPORT_PREFIX}" "$out"
+  '';
+
   meta = with lib; {
     description = "Specialized Parallel Linear Algebra, providing distributed GEMM functionality for specific matrix distributions with optional GPU acceleration";
     homepage = "https://github.com/eth-cscs/spla";
     license = licenses.bsd3;
-    maintainers = [ maintainers.sheepforce ];#
+    maintainers = [ maintainers.sheepforce ];
   };
 }
diff --git a/pkgs/by-name/sp/spotube/package.nix b/pkgs/by-name/sp/spotube/package.nix
index 03ee6ad8d8bb..cc63a6b680a1 100644
--- a/pkgs/by-name/sp/spotube/package.nix
+++ b/pkgs/by-name/sp/spotube/package.nix
@@ -8,7 +8,7 @@
   makeBinaryWrapper,
   makeWrapper,
   undmg,
-  wrapGAppsHook,
+  wrapGAppsHook3,
 
   libappindicator,
   libnotify,
@@ -84,7 +84,7 @@ let
       autoPatchelfHook
       dpkg
       makeWrapper
-      wrapGAppsHook
+      wrapGAppsHook3
     ];
 
     buildInputs = [
diff --git a/pkgs/by-name/sq/squirreldisk/package.nix b/pkgs/by-name/sq/squirreldisk/package.nix
index d274abae5e35..f394cce79ada 100644
--- a/pkgs/by-name/sq/squirreldisk/package.nix
+++ b/pkgs/by-name/sq/squirreldisk/package.nix
@@ -6,7 +6,7 @@
   gtk3,
   webkitgtk,
   pkg-config,
-  wrapGAppsHook,
+  wrapGAppsHook3,
   parallel-disk-usage,
   fetchFromGitHub,
   buildNpmPackage,
@@ -65,7 +65,7 @@ in
       cp ${parallel-disk-usage}/bin/pdu bin/pdu-${stdenv.hostPlatform.config}
     '';
 
-    nativeBuildInputs = [pkg-config wrapGAppsHook copyDesktopItems];
+    nativeBuildInputs = [pkg-config wrapGAppsHook3 copyDesktopItems];
     buildInputs = [dbus openssl freetype libsoup gtk3 webkitgtk];
 
     # Disable checkPhase, since the project doesn't contain tests
diff --git a/pkgs/by-name/ss/sse2neon/package.nix b/pkgs/by-name/ss/sse2neon/package.nix
new file mode 100644
index 000000000000..f7ef8cca1563
--- /dev/null
+++ b/pkgs/by-name/ss/sse2neon/package.nix
@@ -0,0 +1,41 @@
+{
+  lib,
+  fetchFromGitHub,
+  pkg-config,
+  stdenv,
+}:
+
+stdenv.mkDerivation (finalAttrs: {
+  pname = "sse2neon";
+  version = "1.7.0";
+
+  src = fetchFromGitHub {
+    owner = "DLTcollab";
+    repo = "sse2neon";
+    rev = "v${finalAttrs.version}";
+    hash = "sha256-riFFGIA0H7e5StYSjO0/JDrduzfwS+lOASzk5BRUyo4=";
+  };
+
+  postPatch = ''
+    # remove warning about gcc < 10
+    substituteInPlace sse2neon.h --replace-fail "#warning \"GCC versions" "// "
+  '';
+
+  nativeBuildInputs = [ pkg-config ];
+
+  dontInstall = true;
+  # use postBuild instead of installPhase, because the build
+  # in itself doesn't produce any ($out) output
+  postBuild = ''
+    mkdir -p $out/lib
+    install -m444 sse2neon.h $out/lib/
+  '';
+
+  meta = {
+    description = "Mono library that provides a GDI+-compatible API on non-Windows operating systems";
+    homepage = "https://www.mono-project.com/docs/gui/libgdiplus/";
+    platforms = lib.platforms.unix;
+    license = lib.licenses.mit;
+    maintainers = [ lib.maintainers.gador ];
+  };
+})
diff --git a/pkgs/by-name/st/stackit-cli/package.nix b/pkgs/by-name/st/stackit-cli/package.nix
index e96738d45960..1a786eafebe6 100644
--- a/pkgs/by-name/st/stackit-cli/package.nix
+++ b/pkgs/by-name/st/stackit-cli/package.nix
@@ -12,16 +12,16 @@
 
 buildGoModule rec {
   pname = "stackit-cli";
-  version = "0.3.0";
+  version = "0.6.0";
 
   src = fetchFromGitHub {
     owner = "stackitcloud";
     repo = "stackit-cli";
     rev = "v${version}";
-    hash = "sha256-EoZ1ThAve08NitKf6jPJNyqkGz0JUW2GmzKtvWm9cDU=";
+    hash = "sha256-Rd4kuU1iMCxuNhL0GwAX625hIAv6O2URmP7JTeMduMo";
   };
 
-  vendorHash = "sha256-WQNb4vs1qcsY0hqlLXNiH67065/yq5xZEgZBOwFZzNM=";
+  vendorHash = "sha256-PRCra/i4n+YvYC+onBYO/uZ8JlyTjibfZsGMM53COcw=";
 
   subPackages = [ "." ];
 
diff --git a/pkgs/by-name/st/stats/package.nix b/pkgs/by-name/st/stats/package.nix
index b907d5b2db81..690cd70a8d88 100644
--- a/pkgs/by-name/st/stats/package.nix
+++ b/pkgs/by-name/st/stats/package.nix
@@ -10,11 +10,11 @@
 
 stdenvNoCC.mkDerivation (finalAttrs: {
   pname = "stats";
-  version = "2.10.10";
+  version = "2.10.13";
 
   src = fetchurl {
     url = "https://github.com/exelban/stats/releases/download/v${finalAttrs.version}/Stats.dmg";
-    hash = "sha256-CdTY5Qv/xF9ItNgHQFqec5nKObnImx/+MuFShTfdrAo=";
+    hash = "sha256-AzH1rZFqEH8sovZZfJykvsEmCedEZWigQFHWHl6/PdE=";
   };
 
   sourceRoot = ".";
diff --git a/pkgs/by-name/st/stereotool/package.nix b/pkgs/by-name/st/stereotool/package.nix
index f1c4ea0d8e52..bb5e7e41fe96 100644
--- a/pkgs/by-name/st/stereotool/package.nix
+++ b/pkgs/by-name/st/stereotool/package.nix
@@ -16,7 +16,7 @@
 
 stdenv.mkDerivation rec {
   pname = "stereotool";
-  version = "10.21";
+  version = "10.30";
 
   srcs =
     let
@@ -35,19 +35,19 @@ stdenv.mkDerivation rec {
           (fetchurl {
             name = "alsa";
             url = "https://download.thimeo.com/stereo_tool_gui_64_${versionNoPoint}";
-            hash = "sha256-ByRguhZ29ertQM3q+TPUUT1BMnAJGbwNe8WbNxLhcmk=";
+            hash = "sha256-sy1ps4knMlSKVapSQTJ6+8Q7x70/CpRUj7UkWWUkraI=";
           })
           # Jack version for 64bits.
           (fetchurl {
             name = "jack";
             url = "https://download.thimeo.com/stereo_tool_gui_jack_64_${versionNoPoint}";
-            hash = "sha256-ByRguhZ29ertQM3q+TPUUT1BMnAJGbwNe8WbNxLhcmk=";
+            hash = "sha256-sy1ps4knMlSKVapSQTJ6+8Q7x70/CpRUj7UkWWUkraI=";
           })
           # Cmd version for 64bits
           (fetchurl {
             name = "cmd";
             url = "https://download.thimeo.com/stereo_tool_cmd_64_${versionNoPoint}";
-            hash = "sha256-PGheJfOQJzI1gs05qW9vcAMoVnCPIHR2qS0GIg5V6vw=";
+            hash = "sha256-ncrMkuqNkdhfa1l5Ya+EMoeySDTkFshbpXVIvoJdEAc=";
           })
         ];
         # Sources if the system is aarch64-linux
@@ -55,17 +55,17 @@ stdenv.mkDerivation rec {
           (fetchurl {
             name = "alsa";
             url = "https://download.thimeo.com/stereo_tool_gui_pi2_64_${versionNoPoint}";
-            hash = "sha256-iwoc6c+ox+2DSqmiz8mpDotDjqki7iL0jgqc7Z1htNI=";
+            hash = "sha256-o4KW7oPPUYrFLKGo/Q+ISrga9EoA7FUZUzuGtYVVT+Y=";
           })
           (fetchurl {
             name = "jack";
             url = "https://download.thimeo.com/stereo_tool_gui_jack_pi2_64_${versionNoPoint}";
-            hash = "sha256-iwoc6c+ox+2DSqmiz8mpDotDjqki7iL0jgqc7Z1htNI==";
+            hash = "sha256-o4KW7oPPUYrFLKGo/Q+ISrga9EoA7FUZUzuGtYVVT+Y=";
           })
           (fetchurl {
             name = "cmd";
             url = "https://download.thimeo.com/stereo_tool_pi2_64_${versionNoPoint}";
-            hash = "sha256-bIFnQkJB9XoEKo7IG+MSMvx/ia1C8i97Cw7EX4EDizk=";
+            hash = "sha256-kzzPh/l+ShvdFnFqTn6CGsj8MlMxikuhi7tThD3qFEk=";
           })
         ];
         # Sources if the system is aarch32-linux
@@ -73,17 +73,17 @@ stdenv.mkDerivation rec {
           (fetchurl {
             name = "alsa";
             url = "https://download.thimeo.com/stereo_tool_gui_pi2_${versionNoPoint}";
-            hash = "sha256-922yqmis5acvASU2rEi5YzFLAUuDO7BiEiW49RKfcoU=";
+            hash = "sha256-D5e72QabHJPaXhLa06pkS+Q/X6PiRzTn8jF2EpSf41k=";
           })
           (fetchurl {
             name = "jack";
             url = "https://download.thimeo.com/stereo_tool_gui_jack_pi2_${versionNoPoint}";
-            hash = "sha256-922yqmis5acvASU2rEi5YzFLAUuDO7BiEiW49RKfcoU=";
+            hash = "sha256-D5e72QabHJPaXhLa06pkS+Q/X6PiRzTn8jF2EpSf41k=";
           })
           (fetchurl {
             name = "cmd";
             url = "https://download.thimeo.com/stereo_tool_pi2_${versionNoPoint}";
-            hash = "sha256-xKM5Mg6gEAvbp63rd81ssnx2Bj1hUylCo36mQBYwIvg=";
+            hash = "sha256-RELyXszIVjsAl0qPufLbcqDTKFOTt4Hqp8CsAl56Ybo=";
           })
         ];
         # Sources if the system is 32bits i686
@@ -92,17 +92,17 @@ stdenv.mkDerivation rec {
             # The name is the name of this source in the build directory
             name = "alsa";
             url = "https://download.thimeo.com/stereo_tool_gui_${versionNoPoint}";
-            hash = "sha256-iEPqJvmXKXD4AVbM+1QZeUOwpMjMT7ROYNQpmhRVZyw=";
+            hash = "sha256-JSy88rTlbqIclLIg1HT+OYltve5lw8Q2fH6MIQNouUk=";
           })
           (fetchurl {
             name = "jack";
             url = "https://download.thimeo.com/stereo_tool_gui_jack_${versionNoPoint}";
-            hash = "sha256-iEPqJvmXKXD4AVbM+1QZeUOwpMjMT7ROYNQpmhRVZyw=";
+            hash = "sha256-JSy88rTlbqIclLIg1HT+OYltve5lw8Q2fH6MIQNouUk=";
           })
           (fetchurl {
             name = "cmd";
             url = "https://download.thimeo.com/stereo_tool_cmd_${versionNoPoint}";
-            hash = "sha256-sk13wj7XvuwTDWWW6tMYHdTV9XjPeHe6hHv2JPBxBLA=";
+            hash = "sha256-b6v0TJaCaJKZP6uwJmmHek4y51YsK8NoslysljYHcF0=";
           })
         ];
       }.${stdenv.hostPlatform.system} or (throw "Unsupported system: ${stdenv.hostPlatform.system}"));
diff --git a/pkgs/by-name/st/strictdoc/package.nix b/pkgs/by-name/st/strictdoc/package.nix
index d428d4638f21..3b1e2397407f 100644
--- a/pkgs/by-name/st/strictdoc/package.nix
+++ b/pkgs/by-name/st/strictdoc/package.nix
@@ -5,14 +5,14 @@
 
 python3.pkgs.buildPythonApplication rec {
   pname = "strictdoc";
-  version = "0.0.54";
+  version = "0.0.55";
   pyproject = true;
 
   src = fetchFromGitHub {
     owner = "strictdoc-project";
     repo = "strictdoc";
     rev = "refs/tags/${version}";
-    hash = "sha256-gsZgvT3bSHxxFLhEqlHjoRZiYZwyFr377CGYWYOssyM=";
+    hash = "sha256-QIwDtOaqRq59zdF5IZ7xwas5LLYt98Vyv00HkgGgahM=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/by-name/su/superfile/package.nix b/pkgs/by-name/su/superfile/package.nix
new file mode 100644
index 000000000000..21abce75d3d0
--- /dev/null
+++ b/pkgs/by-name/su/superfile/package.nix
@@ -0,0 +1,32 @@
+{
+  lib,
+  buildGoModule,
+  fetchFromGitHub,
+}:
+let
+  version = "1.1.2";
+in
+buildGoModule {
+  pname = "superfile";
+  inherit version;
+
+  src =
+    fetchFromGitHub {
+      owner = "MHNightCat";
+      repo = "superfile";
+      rev = "v${version}";
+      hash = "sha256-Cn03oPGT+vCZQcC62p7COx8N8BGgra+qQaZyF+osVsA=";
+    }
+    + "/src";
+
+  vendorHash = "sha256-gWrhy3qzlXG072u5mW971N2Y4Vmt0KbZkB8SFsFgSzo=";
+
+  meta = {
+    changelog = "https://github.com/MHNightCat/superfile/blob/v${version}/changelog.md";
+    description = "Pretty fancy and modern terminal file manager";
+    homepage = "https://github.com/MHNightCat/superfile";
+    license = lib.licenses.mit;
+    maintainers = with lib.maintainers; [ momeemt ];
+    mainProgram = "superfile";
+  };
+}
diff --git a/pkgs/by-name/su/surrealdb/package.nix b/pkgs/by-name/su/surrealdb/package.nix
index 625d9f802d54..0e881eeb7dac 100644
--- a/pkgs/by-name/su/surrealdb/package.nix
+++ b/pkgs/by-name/su/surrealdb/package.nix
@@ -16,16 +16,16 @@ let
 in
 rustPlatform.buildRustPackage rec {
   pname = "surrealdb";
-  version = "1.4.2";
+  version = "1.5.0";
 
   src = fetchFromGitHub {
     owner = "surrealdb";
     repo = "surrealdb";
     rev = "v${version}";
-    hash = "sha256-LC/T+TkHdZ0uWaVQpR2Q9l0fShPL871rOfxxsXyJnvw=";
+    hash = "sha256-MX7XE+1YCP6zSc207GAaFgr0QJLMX0dbFqGjLMf/KOI=";
   };
 
-  cargoHash = "sha256-1/l++iXiPCIwAVE8VQCSS++/9i3Kh1RNq3WnUjRy2fU=";
+  cargoHash = "sha256-skPCmQVH76qdmBVd4IVCnKn1uHP7mEgJ8YXprycpQ5I=";
 
   # error: linker `aarch64-linux-gnu-gcc` not found
   postPatch = ''
diff --git a/pkgs/by-name/sw/sway-easyfocus/package.nix b/pkgs/by-name/sw/sway-easyfocus/package.nix
index 022770a22344..43a9f9ab1340 100644
--- a/pkgs/by-name/sw/sway-easyfocus/package.nix
+++ b/pkgs/by-name/sw/sway-easyfocus/package.nix
@@ -2,7 +2,7 @@
 , rustPlatform
 , fetchFromGitHub
 , pkg-config
-, wrapGAppsHook
+, wrapGAppsHook3
 , atk
 , cairo
 , gdk-pixbuf
@@ -27,7 +27,7 @@ rustPlatform.buildRustPackage rec {
 
   nativeBuildInputs = [
     pkg-config
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
diff --git a/pkgs/by-name/sw/sway/package.nix b/pkgs/by-name/sw/sway/package.nix
index 2ae6d3ed0154..5506447f692e 100644
--- a/pkgs/by-name/sw/sway/package.nix
+++ b/pkgs/by-name/sw/sway/package.nix
@@ -2,7 +2,7 @@
 , sway-unwrapped
 , makeWrapper, symlinkJoin, writeShellScriptBin
 , withBaseWrapper ? true, extraSessionCommands ? "", dbus
-, withGtkWrapper ? false, wrapGAppsHook, gdk-pixbuf, glib, gtk3
+, withGtkWrapper ? false, wrapGAppsHook3, gdk-pixbuf, glib, gtk3
 , extraOptions ? [] # E.g.: [ "--verbose" ]
 # Used by the NixOS module:
 , isNixOS ? false
@@ -44,7 +44,7 @@ in symlinkJoin rec {
 
   strictDeps = false;
   nativeBuildInputs = [ makeWrapper ]
-    ++ (optional withGtkWrapper wrapGAppsHook);
+    ++ (optional withGtkWrapper wrapGAppsHook3);
 
   buildInputs = optionals withGtkWrapper [ gdk-pixbuf glib gtk3 ];
 
diff --git a/pkgs/by-name/sw/swayosd/package.nix b/pkgs/by-name/sw/swayosd/package.nix
index d3238053c019..c6e9dc2a809f 100644
--- a/pkgs/by-name/sw/swayosd/package.nix
+++ b/pkgs/by-name/sw/swayosd/package.nix
@@ -2,7 +2,7 @@
 , rustPlatform
 , fetchFromGitHub
 , pkg-config
-, wrapGAppsHook
+, wrapGAppsHook3
 , brightnessctl
 , cargo
 , coreutils
@@ -36,7 +36,7 @@ stdenv.mkDerivation rec {
   };
 
   nativeBuildInputs = [
-    wrapGAppsHook
+    wrapGAppsHook3
     pkg-config
     meson
     rustc
diff --git a/pkgs/by-name/sw/switch-to-configuration-ng/.gitignore b/pkgs/by-name/sw/switch-to-configuration-ng/.gitignore
new file mode 100644
index 000000000000..ea8c4bf7f35f
--- /dev/null
+++ b/pkgs/by-name/sw/switch-to-configuration-ng/.gitignore
@@ -0,0 +1 @@
+/target
diff --git a/pkgs/by-name/sw/switch-to-configuration-ng/Cargo.lock b/pkgs/by-name/sw/switch-to-configuration-ng/Cargo.lock
new file mode 100644
index 000000000000..d66a2c6e7527
--- /dev/null
+++ b/pkgs/by-name/sw/switch-to-configuration-ng/Cargo.lock
@@ -0,0 +1,527 @@
+# This file is automatically @generated by Cargo.
+# It is not intended for manual editing.
+version = 3
+
+[[package]]
+name = "aho-corasick"
+version = "1.1.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "8e60d3430d3a69478ad0993f19238d2df97c507009a52b3c10addcd7f6bcb916"
+dependencies = [
+ "memchr",
+]
+
+[[package]]
+name = "ansi_term"
+version = "0.12.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "d52a9bb7ec0cf484c551830a7ce27bd20d67eac647e1befb56b0be4ee39a55d2"
+dependencies = [
+ "winapi",
+]
+
+[[package]]
+name = "anyhow"
+version = "1.0.82"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "f538837af36e6f6a9be0faa67f9a314f8119e4e4b5867c6ab40ed60360142519"
+
+[[package]]
+name = "atty"
+version = "0.2.14"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "d9b39be18770d11421cdb1b9947a45dd3f37e93092cbf377614828a319d5fee8"
+dependencies = [
+ "hermit-abi",
+ "libc",
+ "winapi",
+]
+
+[[package]]
+name = "bitflags"
+version = "1.3.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a"
+
+[[package]]
+name = "bitflags"
+version = "2.5.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "cf4b9d6a944f767f8e5e0db018570623c85f3d925ac718db4e06d0187adb21c1"
+
+[[package]]
+name = "cfg-if"
+version = "1.0.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd"
+
+[[package]]
+name = "cfg_aliases"
+version = "0.1.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "fd16c4719339c4530435d38e511904438d07cce7950afa3718a84ac36c10e89e"
+
+[[package]]
+name = "clap"
+version = "2.34.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "a0610544180c38b88101fecf2dd634b174a62eef6946f84dfc6a7127512b381c"
+dependencies = [
+ "ansi_term",
+ "atty",
+ "bitflags 1.3.2",
+ "strsim",
+ "textwrap",
+ "unicode-width",
+ "vec_map",
+]
+
+[[package]]
+name = "const-random"
+version = "0.1.18"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "87e00182fe74b066627d63b85fd550ac2998d4b0bd86bfed477a0ae4c7c71359"
+dependencies = [
+ "const-random-macro",
+]
+
+[[package]]
+name = "const-random-macro"
+version = "0.1.16"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "f9d839f2a20b0aee515dc581a6172f2321f96cab76c1a38a4c584a194955390e"
+dependencies = [
+ "getrandom",
+ "once_cell",
+ "tiny-keccak",
+]
+
+[[package]]
+name = "crunchy"
+version = "0.2.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "7a81dae078cea95a014a339291cec439d2f232ebe854a9d672b796c6afafa9b7"
+
+[[package]]
+name = "dbus"
+version = "0.9.7"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "1bb21987b9fb1613058ba3843121dd18b163b254d8a6e797e144cbac14d96d1b"
+dependencies = [
+ "libc",
+ "libdbus-sys",
+ "winapi",
+]
+
+[[package]]
+name = "dbus-codegen"
+version = "0.11.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "bcd91775d91fc83c7d526aa7c08078bac0b30f382706689901ac819fe6ddc812"
+dependencies = [
+ "clap",
+ "dbus",
+ "xml-rs",
+]
+
+[[package]]
+name = "deranged"
+version = "0.3.11"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "b42b6fa04a440b495c8b04d0e71b707c585f83cb9cb28cf8cd0d976c315e31b4"
+dependencies = [
+ "powerfmt",
+]
+
+[[package]]
+name = "dlv-list"
+version = "0.5.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "442039f5147480ba31067cb00ada1adae6892028e40e45fc5de7b7df6dcc1b5f"
+dependencies = [
+ "const-random",
+]
+
+[[package]]
+name = "error-chain"
+version = "0.12.4"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "2d2f06b9cac1506ece98fe3231e3cc9c4410ec3d5b1f24ae1c8946f0742cdefc"
+dependencies = [
+ "version_check",
+]
+
+[[package]]
+name = "getrandom"
+version = "0.2.14"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "94b22e06ecb0110981051723910cbf0b5f5e09a2062dd7663334ee79a9d1286c"
+dependencies = [
+ "cfg-if",
+ "libc",
+ "wasi",
+]
+
+[[package]]
+name = "glob"
+version = "0.3.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "d2fabcfbdc87f4758337ca535fb41a6d701b65693ce38287d856d1674551ec9b"
+
+[[package]]
+name = "hashbrown"
+version = "0.14.5"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "e5274423e17b7c9fc20b6e7e208532f9b19825d82dfd615708b70edd83df41f1"
+
+[[package]]
+name = "hermit-abi"
+version = "0.1.19"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "62b467343b94ba476dcb2500d242dadbb39557df889310ac77c5d99100aaac33"
+dependencies = [
+ "libc",
+]
+
+[[package]]
+name = "hostname"
+version = "0.3.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "3c731c3e10504cc8ed35cfe2f1db4c9274c3d35fa486e3b31df46f068ef3e867"
+dependencies = [
+ "libc",
+ "match_cfg",
+ "winapi",
+]
+
+[[package]]
+name = "itoa"
+version = "1.0.11"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "49f1f14873335454500d59611f1cf4a4b0f786f9ac11f4312a78e4cf2566695b"
+
+[[package]]
+name = "libc"
+version = "0.2.154"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "ae743338b92ff9146ce83992f766a31066a91a8c84a45e0e9f21e7cf6de6d346"
+
+[[package]]
+name = "libdbus-sys"
+version = "0.2.5"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "06085512b750d640299b79be4bad3d2fa90a9c00b1fd9e1b46364f66f0485c72"
+dependencies = [
+ "pkg-config",
+]
+
+[[package]]
+name = "log"
+version = "0.4.21"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "90ed8c1e510134f979dbc4f070f87d4313098b704861a105fe34231c70a3901c"
+
+[[package]]
+name = "match_cfg"
+version = "0.1.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "ffbee8634e0d45d258acb448e7eaab3fce7a0a467395d4d9f228e3c1f01fb2e4"
+
+[[package]]
+name = "memchr"
+version = "2.7.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "6c8640c5d730cb13ebd907d8d04b52f55ac9a2eec55b440c8892f40d56c76c1d"
+
+[[package]]
+name = "nix"
+version = "0.28.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "ab2156c4fce2f8df6c499cc1c763e4394b7482525bf2a9701c9d79d215f519e4"
+dependencies = [
+ "bitflags 2.5.0",
+ "cfg-if",
+ "cfg_aliases",
+ "libc",
+]
+
+[[package]]
+name = "num-conv"
+version = "0.1.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "51d515d32fb182ee37cda2ccdcb92950d6a3c2893aa280e540671c2cd0f3b1d9"
+
+[[package]]
+name = "num_threads"
+version = "0.1.7"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "5c7398b9c8b70908f6371f47ed36737907c87c52af34c268fed0bf0ceb92ead9"
+dependencies = [
+ "libc",
+]
+
+[[package]]
+name = "once_cell"
+version = "1.19.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "3fdb12b2476b595f9358c5161aa467c2438859caa136dec86c26fdd2efe17b92"
+
+[[package]]
+name = "ordered-multimap"
+version = "0.7.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "49203cdcae0030493bad186b28da2fa25645fa276a51b6fec8010d281e02ef79"
+dependencies = [
+ "dlv-list",
+ "hashbrown",
+]
+
+[[package]]
+name = "pkg-config"
+version = "0.3.30"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "d231b230927b5e4ad203db57bbcbee2802f6bce620b1e4a9024a07d94e2907ec"
+
+[[package]]
+name = "powerfmt"
+version = "0.2.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "439ee305def115ba05938db6eb1644ff94165c5ab5e9420d1c1bcedbba909391"
+
+[[package]]
+name = "proc-macro2"
+version = "1.0.81"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "3d1597b0c024618f09a9c3b8655b7e430397a36d23fdafec26d6965e9eec3eba"
+dependencies = [
+ "unicode-ident",
+]
+
+[[package]]
+name = "quote"
+version = "1.0.36"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "0fa76aaf39101c457836aec0ce2316dbdc3ab723cdda1c6bd4e6ad4208acaca7"
+dependencies = [
+ "proc-macro2",
+]
+
+[[package]]
+name = "regex"
+version = "1.10.4"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "c117dbdfde9c8308975b6a18d71f3f385c89461f7b3fb054288ecf2a2058ba4c"
+dependencies = [
+ "aho-corasick",
+ "memchr",
+ "regex-automata",
+ "regex-syntax",
+]
+
+[[package]]
+name = "regex-automata"
+version = "0.4.6"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "86b83b8b9847f9bf95ef68afb0b8e6cdb80f498442f5179a29fad448fcc1eaea"
+dependencies = [
+ "aho-corasick",
+ "memchr",
+ "regex-syntax",
+]
+
+[[package]]
+name = "regex-syntax"
+version = "0.8.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "adad44e29e4c806119491a7f06f03de4d1af22c3a680dd47f1e6e179439d1f56"
+
+[[package]]
+name = "rust-ini"
+version = "0.21.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "0d625ed57d8f49af6cfa514c42e1a71fadcff60eb0b1c517ff82fe41aa025b41"
+dependencies = [
+ "cfg-if",
+ "ordered-multimap",
+ "trim-in-place",
+]
+
+[[package]]
+name = "serde"
+version = "1.0.200"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "ddc6f9cc94d67c0e21aaf7eda3a010fd3af78ebf6e096aa6e2e13c79749cce4f"
+dependencies = [
+ "serde_derive",
+]
+
+[[package]]
+name = "serde_derive"
+version = "1.0.200"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "856f046b9400cee3c8c94ed572ecdb752444c24528c035cd35882aad6f492bcb"
+dependencies = [
+ "proc-macro2",
+ "quote",
+ "syn",
+]
+
+[[package]]
+name = "strsim"
+version = "0.8.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "8ea5119cdb4c55b55d432abb513a0429384878c15dde60cc77b1c99de1a95a6a"
+
+[[package]]
+name = "switch-to-configuration"
+version = "0.1.0"
+dependencies = [
+ "anyhow",
+ "dbus",
+ "dbus-codegen",
+ "glob",
+ "log",
+ "nix",
+ "regex",
+ "rust-ini",
+ "syslog",
+]
+
+[[package]]
+name = "syn"
+version = "2.0.60"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "909518bc7b1c9b779f1bbf07f2929d35af9f0f37e47c6e9ef7f9dddc1e1821f3"
+dependencies = [
+ "proc-macro2",
+ "quote",
+ "unicode-ident",
+]
+
+[[package]]
+name = "syslog"
+version = "6.1.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "dfc7e95b5b795122fafe6519e27629b5ab4232c73ebb2428f568e82b1a457ad3"
+dependencies = [
+ "error-chain",
+ "hostname",
+ "libc",
+ "log",
+ "time",
+]
+
+[[package]]
+name = "textwrap"
+version = "0.11.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "d326610f408c7a4eb6f51c37c330e496b08506c9457c9d34287ecc38809fb060"
+dependencies = [
+ "unicode-width",
+]
+
+[[package]]
+name = "time"
+version = "0.3.36"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "5dfd88e563464686c916c7e46e623e520ddc6d79fa6641390f2e3fa86e83e885"
+dependencies = [
+ "deranged",
+ "itoa",
+ "libc",
+ "num-conv",
+ "num_threads",
+ "powerfmt",
+ "serde",
+ "time-core",
+ "time-macros",
+]
+
+[[package]]
+name = "time-core"
+version = "0.1.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "ef927ca75afb808a4d64dd374f00a2adf8d0fcff8e7b184af886c3c87ec4a3f3"
+
+[[package]]
+name = "time-macros"
+version = "0.2.18"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "3f252a68540fde3a3877aeea552b832b40ab9a69e318efd078774a01ddee1ccf"
+dependencies = [
+ "num-conv",
+ "time-core",
+]
+
+[[package]]
+name = "tiny-keccak"
+version = "2.0.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "2c9d3793400a45f954c52e73d068316d76b6f4e36977e3fcebb13a2721e80237"
+dependencies = [
+ "crunchy",
+]
+
+[[package]]
+name = "trim-in-place"
+version = "0.1.7"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "343e926fc669bc8cde4fa3129ab681c63671bae288b1f1081ceee6d9d37904fc"
+
+[[package]]
+name = "unicode-ident"
+version = "1.0.12"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "3354b9ac3fae1ff6755cb6db53683adb661634f67557942dea4facebec0fee4b"
+
+[[package]]
+name = "unicode-width"
+version = "0.1.12"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "68f5e5f3158ecfd4b8ff6fe086db7c8467a2dfdac97fe420f2b7c4aa97af66d6"
+
+[[package]]
+name = "vec_map"
+version = "0.8.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "f1bddf1187be692e79c5ffeab891132dfb0f236ed36a43c7ed39f1165ee20191"
+
+[[package]]
+name = "version_check"
+version = "0.9.4"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "49874b5167b65d7193b8aba1567f5c7d93d001cafc34600cee003eda787e483f"
+
+[[package]]
+name = "wasi"
+version = "0.11.0+wasi-snapshot-preview1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "9c8d87e72b64a3b4db28d11ce29237c246188f4f51057d65a7eab63b7987e423"
+
+[[package]]
+name = "winapi"
+version = "0.3.9"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "5c839a674fcd7a98952e593242ea400abe93992746761e38641405d28b00f419"
+dependencies = [
+ "winapi-i686-pc-windows-gnu",
+ "winapi-x86_64-pc-windows-gnu",
+]
+
+[[package]]
+name = "winapi-i686-pc-windows-gnu"
+version = "0.4.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "ac3b87c63620426dd9b991e5ce0329eff545bccbbb34f3be09ff6fb6ab51b7b6"
+
+[[package]]
+name = "winapi-x86_64-pc-windows-gnu"
+version = "0.4.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f"
+
+[[package]]
+name = "xml-rs"
+version = "0.8.20"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "791978798f0597cfc70478424c2b4fdc2b7a8024aaff78497ef00f24ef674193"
diff --git a/pkgs/by-name/sw/switch-to-configuration-ng/Cargo.toml b/pkgs/by-name/sw/switch-to-configuration-ng/Cargo.toml
new file mode 100644
index 000000000000..51d805dcd959
--- /dev/null
+++ b/pkgs/by-name/sw/switch-to-configuration-ng/Cargo.toml
@@ -0,0 +1,19 @@
+[package]
+name = "switch-to-configuration"
+version = "0.1.0"
+edition = "2021"
+
+# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html
+
+[dependencies]
+anyhow = "1.0.82"
+dbus = "0.9.7"
+glob = "0.3.1"
+log = "0.4.21"
+nix = { version = "0.28.0", features = ["fs", "signal"] }
+regex = "1.10.4"
+rust-ini = "0.21.0"
+syslog = "6.1.1"
+
+[build-dependencies]
+dbus-codegen = "0.11.0"
diff --git a/pkgs/by-name/sw/switch-to-configuration-ng/build.rs b/pkgs/by-name/sw/switch-to-configuration-ng/build.rs
new file mode 100644
index 000000000000..41fed3086e69
--- /dev/null
+++ b/pkgs/by-name/sw/switch-to-configuration-ng/build.rs
@@ -0,0 +1,30 @@
+use std::io::Write;
+
+fn code_for_dbus_xml(xml: impl AsRef<std::path::Path>) -> String {
+    dbus_codegen::generate(
+        &std::fs::read_to_string(xml).unwrap(),
+        &dbus_codegen::GenOpts {
+            methodtype: None,
+            connectiontype: dbus_codegen::ConnectionType::Blocking,
+            ..Default::default()
+        },
+    )
+    .unwrap()
+}
+
+fn main() {
+    let systemd_dbus_interface_dir = std::env::var("SYSTEMD_DBUS_INTERFACE_DIR").unwrap();
+    let systemd_dbus_interface_dir = std::path::Path::new(systemd_dbus_interface_dir.as_str());
+
+    let out_path = std::path::PathBuf::from(std::env::var("OUT_DIR").unwrap());
+
+    let systemd_manager_code =
+        code_for_dbus_xml(systemd_dbus_interface_dir.join("org.freedesktop.systemd1.Manager.xml"));
+    let mut file = std::fs::File::create(out_path.join("systemd_manager.rs")).unwrap();
+    file.write_all(systemd_manager_code.as_bytes()).unwrap();
+
+    let logind_manager_code =
+        code_for_dbus_xml(systemd_dbus_interface_dir.join("org.freedesktop.login1.Manager.xml"));
+    let mut file = std::fs::File::create(out_path.join("logind_manager.rs")).unwrap();
+    file.write_all(logind_manager_code.as_bytes()).unwrap();
+}
diff --git a/pkgs/by-name/sw/switch-to-configuration-ng/package.nix b/pkgs/by-name/sw/switch-to-configuration-ng/package.nix
new file mode 100644
index 000000000000..aa748a0c2b3d
--- /dev/null
+++ b/pkgs/by-name/sw/switch-to-configuration-ng/package.nix
@@ -0,0 +1,36 @@
+{
+  buildPackages,
+  dbus,
+  lib,
+  pkg-config,
+  rustPlatform,
+}:
+
+rustPlatform.buildRustPackage {
+  pname = "switch-to-configuration";
+  version = "0.1.0";
+
+  src = lib.fileset.toSource {
+    root = ./.;
+    fileset = lib.fileset.unions [
+      ./Cargo.lock
+      ./Cargo.toml
+      ./build.rs
+      ./src
+    ];
+  };
+
+  cargoLock.lockFile = ./Cargo.lock;
+
+  nativeBuildInputs = [ pkg-config ];
+  buildInputs = [ dbus ];
+
+  env.SYSTEMD_DBUS_INTERFACE_DIR = "${buildPackages.systemd}/share/dbus-1/interfaces";
+
+  meta = {
+    description = "NixOS switch-to-configuration program";
+    mainProgram = "switch-to-configuration";
+    maintainers = with lib.maintainers; [ jmbaur ];
+    license = lib.licenses.mit;
+  };
+}
diff --git a/pkgs/by-name/sw/switch-to-configuration-ng/src/main.rs b/pkgs/by-name/sw/switch-to-configuration-ng/src/main.rs
new file mode 100644
index 000000000000..e050e74d79ea
--- /dev/null
+++ b/pkgs/by-name/sw/switch-to-configuration-ng/src/main.rs
@@ -0,0 +1,2077 @@
+use std::{
+    cell::RefCell,
+    collections::HashMap,
+    io::{BufRead, Write},
+    os::unix::{fs::PermissionsExt, process::CommandExt},
+    path::{Path, PathBuf},
+    rc::Rc,
+    str::FromStr,
+    sync::OnceLock,
+    time::Duration,
+};
+
+use anyhow::{anyhow, bail, Context, Result};
+use dbus::{
+    blocking::{stdintf::org_freedesktop_dbus::Properties, LocalConnection, Proxy},
+    Message,
+};
+use glob::glob;
+use ini::Ini;
+use log::LevelFilter;
+use nix::{
+    fcntl::{Flock, FlockArg, OFlag},
+    sys::{
+        signal::{self, SigHandler, Signal},
+        stat::Mode,
+    },
+};
+use regex::Regex;
+use syslog::Facility;
+
+mod systemd_manager {
+    #![allow(non_upper_case_globals)]
+    #![allow(non_camel_case_types)]
+    #![allow(non_snake_case)]
+    #![allow(unused)]
+    include!(concat!(env!("OUT_DIR"), "/systemd_manager.rs"));
+}
+
+mod logind_manager {
+    #![allow(non_upper_case_globals)]
+    #![allow(non_camel_case_types)]
+    #![allow(non_snake_case)]
+    #![allow(unused)]
+    include!(concat!(env!("OUT_DIR"), "/logind_manager.rs"));
+}
+
+use crate::systemd_manager::OrgFreedesktopSystemd1Manager;
+use crate::{
+    logind_manager::OrgFreedesktopLogin1Manager,
+    systemd_manager::{
+        OrgFreedesktopSystemd1ManagerJobRemoved, OrgFreedesktopSystemd1ManagerReloading,
+    },
+};
+
+type UnitInfo = HashMap<String, HashMap<String, Vec<String>>>;
+
+const SYSINIT_REACTIVATION_TARGET: &str = "sysinit-reactivation.target";
+
+// To be robust against interruption, record what units need to be started etc. We read these files
+// again every time this program starts to make sure we continue where the old (interrupted) script
+// left off.
+const START_LIST_FILE: &str = "/run/nixos/start-list";
+const RESTART_LIST_FILE: &str = "/run/nixos/restart-list";
+const RELOAD_LIST_FILE: &str = "/run/nixos/reload-list";
+
+// Parse restart/reload requests by the activation script. Activation scripts may write
+// newline-separated units to the restart file and switch-to-configuration will handle them. While
+// `stopIfChanged = true` is ignored, switch-to-configuration will handle `restartIfChanged =
+// false` and `reloadIfChanged = true`. This is the same as specifying a restart trigger in the
+// NixOS module.
+//
+// The reload file asks this program to reload a unit. This is the same as specifying a reload
+// trigger in the NixOS module and can be ignored if the unit is restarted in this activation.
+const RESTART_BY_ACTIVATION_LIST_FILE: &str = "/run/nixos/activation-restart-list";
+const RELOAD_BY_ACTIVATION_LIST_FILE: &str = "/run/nixos/activation-reload-list";
+const DRY_RESTART_BY_ACTIVATION_LIST_FILE: &str = "/run/nixos/dry-activation-restart-list";
+const DRY_RELOAD_BY_ACTIVATION_LIST_FILE: &str = "/run/nixos/dry-activation-reload-list";
+
+#[derive(Debug, Clone, PartialEq)]
+enum Action {
+    Switch,
+    Boot,
+    Test,
+    DryActivate,
+}
+
+impl std::str::FromStr for Action {
+    type Err = anyhow::Error;
+
+    fn from_str(s: &str) -> std::result::Result<Self, Self::Err> {
+        Ok(match s {
+            "switch" => Self::Switch,
+            "boot" => Self::Boot,
+            "test" => Self::Test,
+            "dry-activate" => Self::DryActivate,
+            _ => bail!("invalid action {s}"),
+        })
+    }
+}
+
+impl Into<&'static str> for &Action {
+    fn into(self) -> &'static str {
+        match self {
+            Action::Switch => "switch",
+            Action::Boot => "boot",
+            Action::Test => "test",
+            Action::DryActivate => "dry-activate",
+        }
+    }
+}
+
+// Allow for this switch-to-configuration to remain consistent with the perl implementation.
+// Perl's "die" uses errno to set the exit code: https://perldoc.perl.org/perlvar#%24%21
+fn die() -> ! {
+    std::process::exit(std::io::Error::last_os_error().raw_os_error().unwrap_or(1));
+}
+
+fn parse_os_release() -> Result<HashMap<String, String>> {
+    Ok(std::fs::read_to_string("/etc/os-release")
+        .context("Failed to read /etc/os-release")?
+        .lines()
+        .into_iter()
+        .fold(HashMap::new(), |mut acc, line| {
+            if let Some((k, v)) = line.split_once('=') {
+                acc.insert(k.to_string(), v.to_string());
+            }
+
+            acc
+        }))
+}
+
+fn do_install_bootloader(command: &str, toplevel: &Path) -> Result<()> {
+    let mut cmd_split = command.split_whitespace();
+    let Some(argv0) = cmd_split.next() else {
+        bail!("missing first argument in install bootloader commands");
+    };
+
+    match std::process::Command::new(argv0)
+        .args(cmd_split.collect::<Vec<&str>>())
+        .arg(toplevel)
+        .spawn()
+        .map(|mut child| child.wait())
+    {
+        Ok(Ok(status)) if status.success() => {}
+        _ => {
+            eprintln!("Failed to install bootloader");
+            die();
+        }
+    }
+
+    Ok(())
+}
+
+extern "C" fn handle_sigpipe(_signal: nix::libc::c_int) {}
+
+fn required_env(var: &str) -> anyhow::Result<String> {
+    std::env::var(var).with_context(|| format!("missing required environment variable ${var}"))
+}
+
+#[derive(Debug)]
+struct UnitState {
+    state: String,
+    substate: String,
+}
+
+// Asks the currently running systemd instance via dbus which units are active. Returns a hash
+// where the key is the name of each unit and the value a hash of load, state, substate.
+fn get_active_units<'a>(
+    systemd_manager: &Proxy<'a, &LocalConnection>,
+) -> Result<HashMap<String, UnitState>> {
+    let units = systemd_manager
+        .list_units_by_patterns(Vec::new(), Vec::new())
+        .context("Failed to list systemd units")?;
+
+    Ok(units
+        .into_iter()
+        .filter_map(
+            |(
+                id,
+                _description,
+                _load_state,
+                active_state,
+                sub_state,
+                following,
+                _unit_path,
+                _job_id,
+                _job_type,
+                _job_path,
+            )| {
+                if following == "" && active_state != "inactive" {
+                    Some((id, active_state, sub_state))
+                } else {
+                    None
+                }
+            },
+        )
+        .fold(HashMap::new(), |mut acc, (id, active_state, sub_state)| {
+            acc.insert(
+                id,
+                UnitState {
+                    state: active_state,
+                    substate: sub_state,
+                },
+            );
+
+            acc
+        }))
+}
+
+// This function takes a single ini file that specified systemd configuration like unit
+// configuration and parses it into a HashMap where the keys are the sections of the unit file and
+// the values are HashMaps themselves. These HashMaps have the unit file keys as their keys (left
+// side of =) and an array of all values that were set as their values. If a value is empty (for
+// example `ExecStart=`), then all current definitions are removed.
+//
+// Instead of returning the HashMap, this function takes a mutable reference to a HashMap to return
+// the data in. This allows calling the function multiple times with the same Hashmap to parse
+// override files.
+fn parse_systemd_ini(data: &mut UnitInfo, unit_file: &Path) -> Result<()> {
+    let ini = Ini::load_from_file(unit_file)
+        .with_context(|| format!("Failed to load unit file {}", unit_file.display()))?;
+
+    // Copy over all sections
+    for (section, properties) in ini.iter() {
+        let Some(section) = section else {
+            continue;
+        };
+
+        if section == "Install" {
+            // Skip the [Install] section because it has no relevant keys for us
+            continue;
+        }
+
+        let section_map = if let Some(section_map) = data.get_mut(section) {
+            section_map
+        } else {
+            data.insert(section.to_string(), HashMap::new());
+            data.get_mut(section)
+                .ok_or(anyhow!("section name should exist in hashmap"))?
+        };
+
+        for (ini_key, _) in properties {
+            let values = properties.get_all(ini_key);
+            let values = values
+                .into_iter()
+                .map(String::from)
+                .collect::<Vec<String>>();
+
+            // Go over all values
+            let mut new_vals = Vec::new();
+            let mut clear_existing = false;
+
+            for val in values {
+                // If a value is empty, it's an override that tells us to clean the value
+                if val.is_empty() {
+                    new_vals.clear();
+                    clear_existing = true;
+                } else {
+                    new_vals.push(val);
+                }
+            }
+
+            match (section_map.get_mut(ini_key), clear_existing) {
+                (Some(existing_vals), false) => existing_vals.extend(new_vals),
+                _ => _ = section_map.insert(ini_key.to_string(), new_vals),
+            };
+        }
+    }
+
+    Ok(())
+}
+
+// This function takes the path to a systemd configuration file (like a unit configuration) and
+// parses it into a UnitInfo structure.
+//
+// If a directory with the same basename ending in .d exists next to the unit file, it will be
+// assumed to contain override files which will be parsed as well and handled properly.
+fn parse_unit(unit_file: &Path, base_unit_file: &Path) -> Result<UnitInfo> {
+    // Parse the main unit and all overrides
+    let mut unit_data = HashMap::new();
+
+    parse_systemd_ini(&mut unit_data, base_unit_file)?;
+
+    for entry in
+        glob(&format!("{}.d/*.conf", base_unit_file.display())).context("Invalid glob pattern")?
+    {
+        let Ok(entry) = entry else {
+            continue;
+        };
+
+        parse_systemd_ini(&mut unit_data, &entry)?;
+    }
+
+    // Handle drop-in template-unit instance overrides
+    if unit_file != base_unit_file {
+        for entry in
+            glob(&format!("{}.d/*.conf", unit_file.display())).context("Invalid glob pattern")?
+        {
+            let Ok(entry) = entry else {
+                continue;
+            };
+
+            parse_systemd_ini(&mut unit_data, &entry)?;
+        }
+    }
+
+    Ok(unit_data)
+}
+
+// Checks whether a specified boolean in a systemd unit is true or false, with a default that is
+// applied when the value is not set.
+fn parse_systemd_bool(
+    unit_data: Option<&UnitInfo>,
+    section_name: &str,
+    bool_name: &str,
+    default: bool,
+) -> bool {
+    if let Some(Some(Some(Some(b)))) = unit_data.map(|data| {
+        data.get(section_name).map(|section| {
+            section.get(bool_name).map(|vals| {
+                vals.last()
+                    .map(|last| matches!(last.as_str(), "1" | "yes" | "true" | "on"))
+            })
+        })
+    }) {
+        b
+    } else {
+        default
+    }
+}
+
+#[derive(Debug, PartialEq)]
+enum UnitComparison {
+    Equal,
+    UnequalNeedsRestart,
+    UnequalNeedsReload,
+}
+
+// Compare the contents of two unit files and return whether the unit needs to be restarted or
+// reloaded. If the units differ, the service is restarted unless the only difference is
+// `X-Reload-Triggers` in the `Unit` section. If this is the only modification, the unit is
+// reloaded instead of restarted. If the only difference is `Options` in the `[Mount]` section, the
+// unit is reloaded rather than restarted.
+fn compare_units(current_unit: &UnitInfo, new_unit: &UnitInfo) -> UnitComparison {
+    let mut ret = UnitComparison::Equal;
+
+    let unit_section_ignores = HashMap::from(
+        [
+            "X-Reload-Triggers",
+            "Description",
+            "Documentation",
+            "OnFailure",
+            "OnSuccess",
+            "OnFailureJobMode",
+            "IgnoreOnIsolate",
+            "StopWhenUnneeded",
+            "RefuseManualStart",
+            "RefuseManualStop",
+            "AllowIsolate",
+            "CollectMode",
+            "SourcePath",
+        ]
+        .map(|name| (name, ())),
+    );
+
+    let mut section_cmp = new_unit.keys().fold(HashMap::new(), |mut acc, key| {
+        acc.insert(key.as_str(), ());
+        acc
+    });
+
+    // Iterate over the sections
+    for (section_name, section_val) in current_unit {
+        // Missing section in the new unit?
+        if !section_cmp.contains_key(section_name.as_str()) {
+            // If the [Unit] section was removed, make sure that only keys were in it that are
+            // ignored
+            if section_name == "Unit" {
+                for (ini_key, _ini_val) in section_val {
+                    if !unit_section_ignores.contains_key(ini_key.as_str()) {
+                        return UnitComparison::UnequalNeedsRestart;
+                    }
+                }
+                continue; // check the next section
+            } else {
+                return UnitComparison::UnequalNeedsRestart;
+            }
+        }
+
+        section_cmp.remove(section_name.as_str());
+
+        // Comparison hash for the section contents
+        let mut ini_cmp = new_unit
+            .get(section_name)
+            .map(|section_val| {
+                section_val.keys().fold(HashMap::new(), |mut acc, ini_key| {
+                    acc.insert(ini_key.as_str(), ());
+                    acc
+                })
+            })
+            .unwrap_or_default();
+
+        // Iterate over the keys of the section
+        for (ini_key, current_value) in section_val {
+            ini_cmp.remove(ini_key.as_str());
+            let Some(Some(new_value)) = new_unit
+                .get(section_name)
+                .map(|section| section.get(ini_key))
+            else {
+                // If the key is missing in the new unit, they are different unless the key that is
+                // now missing is one of the ignored keys
+                if section_name == "Unit" && unit_section_ignores.contains_key(ini_key.as_str()) {
+                    continue;
+                }
+                return UnitComparison::UnequalNeedsRestart;
+            };
+
+            // If the contents are different, the units are different
+            if current_value != new_value {
+                if section_name == "Unit" {
+                    if ini_key == "X-Reload-Triggers" {
+                        ret = UnitComparison::UnequalNeedsReload;
+                        continue;
+                    } else if unit_section_ignores.contains_key(ini_key.as_str()) {
+                        continue;
+                    }
+                }
+
+                // If this is a mount unit, check if it was only `Options`
+                if section_name == "Mount" && ini_key == "Options" {
+                    ret = UnitComparison::UnequalNeedsReload;
+                    continue;
+                }
+
+                return UnitComparison::UnequalNeedsRestart;
+            }
+        }
+
+        // A key was introduced that was missing in the previous unit
+        if !ini_cmp.is_empty() {
+            if section_name == "Unit" {
+                for (ini_key, _) in ini_cmp {
+                    if ini_key == "X-Reload-Triggers" {
+                        ret = UnitComparison::UnequalNeedsReload;
+                    } else if unit_section_ignores.contains_key(ini_key) {
+                        continue;
+                    } else {
+                        return UnitComparison::UnequalNeedsRestart;
+                    }
+                }
+            } else {
+                return UnitComparison::UnequalNeedsRestart;
+            }
+        }
+    }
+
+    // A section was introduced that was missing in the previous unit
+    if !section_cmp.is_empty() {
+        if section_cmp.keys().len() == 1 && section_cmp.contains_key("Unit") {
+            if let Some(new_unit_unit) = new_unit.get("Unit") {
+                for (ini_key, _) in new_unit_unit {
+                    if !unit_section_ignores.contains_key(ini_key.as_str()) {
+                        return UnitComparison::UnequalNeedsRestart;
+                    } else if ini_key == "X-Reload-Triggers" {
+                        ret = UnitComparison::UnequalNeedsReload;
+                    }
+                }
+            }
+        } else {
+            return UnitComparison::UnequalNeedsRestart;
+        }
+    }
+
+    ret
+}
+
+// Called when a unit exists in both the old systemd and the new system and the units differ. This
+// figures out of what units are to be stopped, restarted, reloaded, started, and skipped.
+fn handle_modified_unit(
+    toplevel: &Path,
+    unit: &str,
+    base_name: &str,
+    new_unit_file: &Path,
+    new_base_unit_file: &Path,
+    new_unit_info: Option<&UnitInfo>,
+    active_cur: &HashMap<String, UnitState>,
+    units_to_stop: &mut HashMap<String, ()>,
+    units_to_start: &mut HashMap<String, ()>,
+    units_to_reload: &mut HashMap<String, ()>,
+    units_to_restart: &mut HashMap<String, ()>,
+    units_to_skip: &mut HashMap<String, ()>,
+) -> Result<()> {
+    let use_restart_as_stop_and_start = new_unit_info.is_none();
+
+    if matches!(
+        unit,
+        "sysinit.target" | "basic.target" | "multi-user.target" | "graphical.target"
+    ) || unit.ends_with(".unit")
+        || unit.ends_with(".slice")
+    {
+        // Do nothing.  These cannot be restarted directly.
+
+        // Slices and Paths don't have to be restarted since properties (resource limits and
+        // inotify watches) seem to get applied on daemon-reload.
+    } else if unit.ends_with(".mount") {
+        // Just restart the unit. We wouldn't have gotten into this subroutine if only `Options`
+        // was changed, in which case the unit would be reloaded. The only exception is / and /nix
+        // because it's very unlikely we can safely unmount them so we reload them instead. This
+        // means that we may not get all changes into the running system but it's better than
+        // crashing it.
+        if unit == "-.mount" || unit == "nix.mount" {
+            units_to_reload.insert(unit.to_string(), ());
+            record_unit(RELOAD_LIST_FILE, unit);
+        } else {
+            units_to_restart.insert(unit.to_string(), ());
+            record_unit(RESTART_LIST_FILE, unit);
+        }
+    } else if unit.ends_with(".socket") {
+        // FIXME: do something?
+        // Attempt to fix this: https://github.com/NixOS/nixpkgs/pull/141192
+        // Revert of the attempt: https://github.com/NixOS/nixpkgs/pull/147609
+        // More details: https://github.com/NixOS/nixpkgs/issues/74899#issuecomment-981142430
+    } else {
+        let fallback = parse_unit(new_unit_file, new_base_unit_file)?;
+        let new_unit_info = if new_unit_info.is_some() {
+            new_unit_info
+        } else {
+            Some(&fallback)
+        };
+
+        if parse_systemd_bool(new_unit_info, "Service", "X-ReloadIfChanged", false)
+            && !units_to_restart.contains_key(unit)
+            && !(if use_restart_as_stop_and_start {
+                units_to_restart.contains_key(unit)
+            } else {
+                units_to_stop.contains_key(unit)
+            })
+        {
+            units_to_reload.insert(unit.to_string(), ());
+            record_unit(RELOAD_LIST_FILE, unit);
+        } else if !parse_systemd_bool(new_unit_info, "Service", "X-RestartIfChanged", true)
+            || parse_systemd_bool(new_unit_info, "Unit", "RefuseManualStop", false)
+            || parse_systemd_bool(new_unit_info, "Unit", "X-OnlyManualStart", false)
+        {
+            units_to_skip.insert(unit.to_string(), ());
+        } else {
+            // It doesn't make sense to stop and start non-services because they can't have
+            // ExecStop=
+            if !parse_systemd_bool(new_unit_info, "Service", "X-StopIfChanged", true)
+                || !unit.ends_with(".service")
+            {
+                // This unit should be restarted instead of stopped and started.
+                units_to_restart.insert(unit.to_string(), ());
+                record_unit(RESTART_LIST_FILE, unit);
+                // Remove from units to reload so we don't restart and reload
+                if units_to_reload.contains_key(unit) {
+                    units_to_reload.remove(unit);
+                    unrecord_unit(RELOAD_LIST_FILE, unit);
+                }
+            } else {
+                // If this unit is socket-activated, then stop the socket unit(s) as well, and
+                // restart the socket(s) instead of the service.
+                let mut socket_activated = false;
+                if unit.ends_with(".service") {
+                    let mut sockets = if let Some(Some(Some(sockets))) = new_unit_info.map(|info| {
+                        info.get("Service")
+                            .map(|service_section| service_section.get("Sockets"))
+                    }) {
+                        sockets
+                            .join(" ")
+                            .split_whitespace()
+                            .into_iter()
+                            .map(String::from)
+                            .collect()
+                    } else {
+                        Vec::new()
+                    };
+
+                    if sockets.is_empty() {
+                        sockets.push(format!("{}.socket", base_name));
+                    }
+
+                    for socket in &sockets {
+                        if active_cur.contains_key(socket) {
+                            // We can now be sure this is a socket-activated unit
+
+                            if use_restart_as_stop_and_start {
+                                units_to_restart.insert(socket.to_string(), ());
+                            } else {
+                                units_to_stop.insert(socket.to_string(), ());
+                            }
+
+                            // Only restart sockets that actually exist in new configuration:
+                            if toplevel.join("etc/systemd/system").join(socket).exists() {
+                                if use_restart_as_stop_and_start {
+                                    units_to_restart.insert(socket.to_string(), ());
+                                    record_unit(RESTART_LIST_FILE, socket);
+                                } else {
+                                    units_to_start.insert(socket.to_string(), ());
+                                    record_unit(START_LIST_FILE, socket);
+                                }
+
+                                socket_activated = true;
+                            }
+
+                            // Remove from units to reload so we don't restart and reload
+                            if units_to_reload.contains_key(unit) {
+                                units_to_reload.remove(unit);
+                                unrecord_unit(RELOAD_LIST_FILE, unit);
+                            }
+                        }
+                    }
+                }
+
+                // If the unit is not socket-activated, record that this unit needs to be started
+                // below. We write this to a file to ensure that the service gets restarted if
+                // we're interrupted.
+                if !socket_activated {
+                    if use_restart_as_stop_and_start {
+                        units_to_restart.insert(unit.to_string(), ());
+                        record_unit(RESTART_LIST_FILE, unit);
+                    } else {
+                        units_to_start.insert(unit.to_string(), ());
+                        record_unit(START_LIST_FILE, unit);
+                    }
+                }
+
+                if use_restart_as_stop_and_start {
+                    units_to_restart.insert(unit.to_string(), ());
+                } else {
+                    units_to_stop.insert(unit.to_string(), ());
+                }
+                // Remove from units to reload so we don't restart and reload
+                if units_to_reload.contains_key(unit) {
+                    units_to_reload.remove(unit);
+                    unrecord_unit(RELOAD_LIST_FILE, unit);
+                }
+            }
+        }
+    }
+
+    Ok(())
+}
+
+// Writes a unit name into a given file to be more resilient against crashes of the script. Does
+// nothing when the action is dry-activate.
+fn record_unit(p: impl AsRef<Path>, unit: &str) {
+    if ACTION.get() != Some(&Action::DryActivate) {
+        if let Ok(mut f) = std::fs::File::options().append(true).create(true).open(p) {
+            _ = writeln!(&mut f, "{unit}");
+        }
+    }
+}
+
+// The opposite of record_unit, removes a unit name from a file
+fn unrecord_unit(p: impl AsRef<Path>, unit: &str) {
+    if ACTION.get() != Some(&Action::DryActivate) {
+        if let Ok(contents) = std::fs::read_to_string(&p) {
+            if let Ok(mut f) = std::fs::File::options()
+                .write(true)
+                .truncate(true)
+                .create(true)
+                .open(&p)
+            {
+                contents
+                    .lines()
+                    .into_iter()
+                    .filter(|line| line != &unit)
+                    .for_each(|line| _ = writeln!(&mut f, "{line}"))
+            }
+        }
+    }
+}
+
+fn map_from_list_file(p: impl AsRef<Path>) -> HashMap<String, ()> {
+    std::fs::read_to_string(p)
+        .unwrap_or_default()
+        .lines()
+        .filter(|line| !line.is_empty())
+        .into_iter()
+        .fold(HashMap::new(), |mut acc, line| {
+            acc.insert(line.to_string(), ());
+            acc
+        })
+}
+
+#[derive(Debug)]
+struct Filesystem {
+    device: String,
+    fs_type: String,
+    options: String,
+}
+
+#[derive(Debug)]
+#[allow(unused)]
+struct Swap(String);
+
+// Parse a fstab file, given its path. Returns a tuple of filesystems and swaps.
+//
+// Filesystems is a hash of mountpoint and { device, fsType, options } Swaps is a hash of device
+// and { options }
+fn parse_fstab(fstab: impl BufRead) -> (HashMap<String, Filesystem>, HashMap<String, Swap>) {
+    let mut filesystems = HashMap::new();
+    let mut swaps = HashMap::new();
+
+    for line in fstab.lines() {
+        let Ok(line) = line else {
+            break;
+        };
+
+        if line.contains('#') {
+            continue;
+        }
+
+        let mut split = line.split_whitespace();
+        let (Some(device), Some(mountpoint), Some(fs_type), options) = (
+            split.next(),
+            split.next(),
+            split.next(),
+            split.next().unwrap_or_default(),
+        ) else {
+            continue;
+        };
+
+        if fs_type == "swap" {
+            swaps.insert(device.to_string(), Swap(options.to_string()));
+        } else {
+            filesystems.insert(
+                mountpoint.to_string(),
+                Filesystem {
+                    device: device.to_string(),
+                    fs_type: fs_type.to_string(),
+                    options: options.to_string(),
+                },
+            );
+        }
+    }
+
+    (filesystems, swaps)
+}
+
+// Converts a path to the name of a systemd mount unit that would be responsible for mounting this
+// path.
+fn path_to_unit_name(bin_path: &Path, path: &str) -> String {
+    let Ok(output) = std::process::Command::new(bin_path.join("systemd-escape"))
+        .arg("--suffix=mount")
+        .arg("-p")
+        .arg(path)
+        .output()
+    else {
+        eprintln!("Unable to escape {}!", path);
+        die();
+    };
+
+    let Ok(unit) = String::from_utf8(output.stdout) else {
+        eprintln!("Unable to convert systemd-espape output to valid UTF-8");
+        die();
+    };
+
+    unit.trim().to_string()
+}
+
+// Returns a HashMap containing the same contents as the passed in `units`, minus the units in
+// `units_to_filter`.
+fn filter_units(
+    units_to_filter: &HashMap<String, ()>,
+    units: &HashMap<String, ()>,
+) -> HashMap<String, ()> {
+    let mut res = HashMap::new();
+
+    for (unit, _) in units {
+        if !units_to_filter.contains_key(unit) {
+            res.insert(unit.to_string(), ());
+        }
+    }
+
+    res
+}
+
+fn unit_is_active<'a>(conn: &LocalConnection, unit: &str) -> Result<bool> {
+    let unit_object_path = conn
+        .with_proxy(
+            "org.freedesktop.systemd1",
+            "/org/freedesktop/systemd1",
+            Duration::from_millis(5000),
+        )
+        .get_unit(unit)
+        .with_context(|| format!("Failed to get unit {unit}"))?;
+
+    let active_state: String = conn
+        .with_proxy(
+            "org.freedesktop.systemd1",
+            unit_object_path,
+            Duration::from_millis(5000),
+        )
+        .get("org.freedesktop.systemd1.Unit", "ActiveState")
+        .with_context(|| format!("Failed to get ExecMainStatus for {unit}"))?;
+
+    Ok(matches!(active_state.as_str(), "active" | "activating"))
+}
+
+static ACTION: OnceLock<Action> = OnceLock::new();
+
+#[derive(Debug)]
+enum Job {
+    Start,
+    Restart,
+    Reload,
+    Stop,
+}
+
+impl std::fmt::Display for Job {
+    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
+        write!(
+            f,
+            "{}",
+            match self {
+                Job::Start => "start",
+                Job::Restart => "restart",
+                Job::Reload => "reload",
+                Job::Stop => "stop",
+            }
+        )
+    }
+}
+
+fn new_dbus_proxies<'a>(
+    conn: &'a LocalConnection,
+) -> (
+    Proxy<'a, &'a LocalConnection>,
+    Proxy<'a, &'a LocalConnection>,
+) {
+    (
+        conn.with_proxy(
+            "org.freedesktop.systemd1",
+            "/org/freedesktop/systemd1",
+            Duration::from_millis(5000),
+        ),
+        conn.with_proxy(
+            "org.freedesktop.login1",
+            "/org/freedesktop/login1",
+            Duration::from_millis(5000),
+        ),
+    )
+}
+
+fn block_on_jobs(
+    conn: &LocalConnection,
+    submitted_jobs: &Rc<RefCell<HashMap<dbus::Path<'static>, Job>>>,
+) {
+    while !submitted_jobs.borrow().is_empty() {
+        _ = conn.process(Duration::from_millis(500));
+    }
+}
+
+fn remove_file_if_exists(p: impl AsRef<Path>) -> std::io::Result<()> {
+    match std::fs::remove_file(p) {
+        Err(err) if err.kind() != std::io::ErrorKind::NotFound => Err(err),
+        _ => Ok(()),
+    }
+}
+
+/// Performs switch-to-configuration functionality for a single non-root user
+fn do_user_switch(parent_exe: String) -> anyhow::Result<()> {
+    if Path::new(&parent_exe)
+        != Path::new("/proc/self/exe")
+            .canonicalize()
+            .context("Failed to get full path to current executable")?
+            .as_path()
+    {
+        eprintln!(
+            r#"This program is not meant to be called from outside of switch-to-configuration."#
+        );
+        die();
+    }
+
+    let dbus_conn = LocalConnection::new_session().context("Failed to open dbus connection")?;
+    let (systemd, _) = new_dbus_proxies(&dbus_conn);
+
+    let nixos_activation_done = Rc::new(RefCell::new(false));
+    let _nixos_activation_done = nixos_activation_done.clone();
+    let jobs_token = systemd
+        .match_signal(
+            move |signal: OrgFreedesktopSystemd1ManagerJobRemoved,
+                  _: &LocalConnection,
+                  _: &Message| {
+                if signal.unit.as_str() == "nixos-activation.service" {
+                    *_nixos_activation_done.borrow_mut() = true;
+                }
+
+                true
+            },
+        )
+        .context("Failed to add signal match for systemd removed jobs")?;
+
+    // The systemd user session seems to not send a Reloaded signal, so we don't have anything to
+    // wait on here.
+    _ = systemd.reexecute();
+
+    systemd
+        .restart_unit("nixos-activation.service", "replace")
+        .context("Failed to restart nixos-activation.service")?;
+
+    while !*nixos_activation_done.borrow() {
+        _ = dbus_conn
+            .process(Duration::from_secs(500))
+            .context("Failed to process dbus messages")?;
+    }
+
+    dbus_conn
+        .remove_match(jobs_token)
+        .context("Failed to remove jobs token")?;
+
+    Ok(())
+}
+
+/// Performs switch-to-configuration functionality for the entire system
+fn do_system_switch() -> anyhow::Result<()> {
+    let out = PathBuf::from(required_env("OUT")?);
+    let toplevel = PathBuf::from(required_env("TOPLEVEL")?);
+    let distro_id = required_env("DISTRO_ID")?;
+    let install_bootloader = required_env("INSTALL_BOOTLOADER")?;
+    let locale_archive = required_env("LOCALE_ARCHIVE")?;
+    let new_systemd = PathBuf::from(required_env("SYSTEMD")?);
+
+    let mut args = std::env::args();
+    let argv0 = args.next().ok_or(anyhow!("no argv[0]"))?;
+
+    let Some(Ok(action)) = args.next().map(|a| Action::from_str(&a)) else {
+        eprintln!(
+            r#"Usage: {} [switch|boot|test|dry-activate]
+switch:       make the configuration the boot default and activate now
+boot:         make the configuration the boot default
+test:         activate the configuration, but don't make it the boot default
+dry-activate: show what would be done if this configuration were activated
+"#,
+            argv0
+                .split(std::path::MAIN_SEPARATOR_STR)
+                .last()
+                .unwrap_or("switch-to-configuration")
+        );
+        std::process::exit(1);
+    };
+
+    let action = ACTION.get_or_init(|| action);
+
+    // The action that is to be performed (like switch, boot, test, dry-activate) Also exposed via
+    // environment variable from now on
+    std::env::set_var("NIXOS_ACTION", Into::<&'static str>::into(action));
+
+    // Expose the locale archive as an environment variable for systemctl and the activation script
+    if !locale_archive.is_empty() {
+        std::env::set_var("LOCALE_ARCHIVE", locale_archive);
+    }
+
+    let current_system_bin = std::path::PathBuf::from("/run/current-system/sw/bin")
+        .canonicalize()
+        .context("/run/current-system/sw/bin is missing")?;
+
+    let os_release = parse_os_release().context("Failed to parse os-release")?;
+
+    let distro_id_re = Regex::new(format!("^\"?{}\"?$", distro_id).as_str())
+        .context("Invalid regex for distro ID")?;
+
+    // This is a NixOS installation if it has /etc/NIXOS or a proper /etc/os-release.
+    if !Path::new("/etc/NIXOS").is_file()
+        && !os_release
+            .get("ID")
+            .map(|id| distro_id_re.is_match(id))
+            .unwrap_or_default()
+    {
+        eprintln!("This is not a NixOS installation!");
+        die();
+    }
+
+    std::fs::create_dir_all("/run/nixos").context("Failed to create /run/nixos directory")?;
+    let perms = std::fs::Permissions::from_mode(0o755);
+    std::fs::set_permissions("/run/nixos", perms)
+        .context("Failed to set permissions on /run/nixos directory")?;
+
+    let Ok(lock) = std::fs::OpenOptions::new()
+        .append(true)
+        .create(true)
+        .open("/run/nixos/switch-to-configuration.lock")
+    else {
+        eprintln!("Could not open lock");
+        die();
+    };
+
+    let Ok(_lock) = Flock::lock(lock, FlockArg::LockExclusive) else {
+        eprintln!("Could not acquire lock");
+        die();
+    };
+
+    if syslog::init(Facility::LOG_USER, LevelFilter::Debug, Some("nixos")).is_err() {
+        bail!("Failed to initialize logger");
+    }
+
+    // Install or update the bootloader.
+    if matches!(action, Action::Switch | Action::Boot) {
+        do_install_bootloader(&install_bootloader, &toplevel)?;
+    }
+
+    // Just in case the new configuration hangs the system, do a sync now.
+    if std::env::var("NIXOS_NO_SYNC")
+        .as_deref()
+        .unwrap_or_default()
+        != "1"
+    {
+        let fd = nix::fcntl::open("/nix/store", OFlag::O_NOCTTY, Mode::S_IROTH)
+            .context("Failed to open /nix/store")?;
+        nix::unistd::syncfs(fd).context("Failed to sync /nix/store")?;
+    }
+
+    if *action == Action::Boot {
+        std::process::exit(0);
+    }
+
+    let current_init_interface_version =
+        std::fs::read_to_string("/run/current-system/init-interface-version").unwrap_or_default();
+
+    let new_init_interface_version =
+        std::fs::read_to_string(toplevel.join("init-interface-version"))
+            .context("File init-interface-version should exist")?;
+
+    // Check if we can activate the new configuration.
+    if current_init_interface_version != new_init_interface_version {
+        eprintln!(
+            r#"Warning: the new NixOS configuration has an ‘init’ that is
+incompatible with the current configuration.  The new configuration
+won't take effect until you reboot the system.
+"#
+        );
+        std::process::exit(100);
+    }
+
+    // Ignore SIGHUP so that we're not killed if we're running on (say) virtual console 1 and we
+    // restart the "tty1" unit.
+    let handler = SigHandler::Handler(handle_sigpipe);
+    unsafe { signal::signal(Signal::SIGPIPE, handler) }.context("Failed to set SIGPIPE handler")?;
+
+    let mut units_to_stop = HashMap::new();
+    let mut units_to_skip = HashMap::new();
+    let mut units_to_filter = HashMap::new(); // units not shown
+
+    let mut units_to_start = map_from_list_file(START_LIST_FILE);
+    let mut units_to_restart = map_from_list_file(RESTART_LIST_FILE);
+    let mut units_to_reload = map_from_list_file(RELOAD_LIST_FILE);
+
+    let dbus_conn = LocalConnection::new_system().context("Failed to open dbus connection")?;
+    let (systemd, logind) = new_dbus_proxies(&dbus_conn);
+
+    let submitted_jobs = Rc::new(RefCell::new(HashMap::new()));
+    let finished_jobs = Rc::new(RefCell::new(HashMap::new()));
+
+    let systemd_reload_status = Rc::new(RefCell::new(false));
+
+    systemd
+        .subscribe()
+        .context("Failed to subscribe to systemd dbus messages")?;
+
+    // Wait for the system to have finished booting.
+    loop {
+        let system_state: String = systemd
+            .get("org.freedesktop.systemd1.Manager", "SystemState")
+            .context("Failed to get system state")?;
+
+        match system_state.as_str() {
+            "running" | "degraded" | "maintenance" => break,
+            _ => {
+                _ = dbus_conn
+                    .process(Duration::from_millis(500))
+                    .context("Failed to process dbus messages")?
+            }
+        }
+    }
+
+    let _systemd_reload_status = systemd_reload_status.clone();
+    let reloading_token = systemd
+        .match_signal(
+            move |signal: OrgFreedesktopSystemd1ManagerReloading,
+                  _: &LocalConnection,
+                  _msg: &Message| {
+                *_systemd_reload_status.borrow_mut() = signal.active;
+
+                true
+            },
+        )
+        .context("Failed to add systemd Reloading match")?;
+
+    let _submitted_jobs = submitted_jobs.clone();
+    let _finished_jobs = finished_jobs.clone();
+    let job_removed_token = systemd
+        .match_signal(
+            move |signal: OrgFreedesktopSystemd1ManagerJobRemoved,
+                  _: &LocalConnection,
+                  _msg: &Message| {
+                if let Some(old) = _submitted_jobs.borrow_mut().remove(&signal.job) {
+                    let mut finished_jobs = _finished_jobs.borrow_mut();
+                    finished_jobs.insert(signal.job, (signal.unit, old, signal.result));
+                }
+
+                true
+            },
+        )
+        .context("Failed to add systemd JobRemoved match")?;
+
+    let current_active_units = get_active_units(&systemd)?;
+
+    let template_unit_re = Regex::new(r"^(.*)@[^\.]*\.(.*)$")
+        .context("Invalid regex for matching systemd template units")?;
+    let unit_name_re = Regex::new(r"^(.*)\.[[:lower:]]*$")
+        .context("Invalid regex for matching systemd unit names")?;
+
+    for (unit, unit_state) in &current_active_units {
+        let current_unit_file = Path::new("/etc/systemd/system").join(&unit);
+        let new_unit_file = toplevel.join("etc/systemd/system").join(&unit);
+
+        let mut base_unit = unit.clone();
+        let mut current_base_unit_file = current_unit_file.clone();
+        let mut new_base_unit_file = new_unit_file.clone();
+
+        // Detect template instances
+        if let Some((Some(template_name), Some(template_instance))) =
+            template_unit_re.captures(&unit).map(|captures| {
+                (
+                    captures.get(1).map(|c| c.as_str()),
+                    captures.get(2).map(|c| c.as_str()),
+                )
+            })
+        {
+            if !current_unit_file.exists() && !new_unit_file.exists() {
+                base_unit = format!("{}@.{}", template_name, template_instance);
+                current_base_unit_file = Path::new("/etc/systemd/system").join(&base_unit);
+                new_base_unit_file = toplevel.join("etc/systemd/system").join(&base_unit);
+            }
+        }
+
+        let mut base_name = base_unit.as_str();
+        if let Some(Some(new_base_name)) = unit_name_re
+            .captures(&base_unit)
+            .map(|capture| capture.get(1).map(|first| first.as_str()))
+        {
+            base_name = new_base_name;
+        }
+
+        if current_base_unit_file.exists()
+            && (unit_state.state == "active" || unit_state.state == "activating")
+        {
+            if new_base_unit_file
+                .canonicalize()
+                .map(|full_path| full_path == Path::new("/dev/null"))
+                .unwrap_or(true)
+            {
+                let current_unit_info = parse_unit(&current_unit_file, &current_base_unit_file)?;
+                if parse_systemd_bool(Some(&current_unit_info), "Unit", "X-StopOnRemoval", true) {
+                    _ = units_to_stop.insert(unit.to_string(), ());
+                }
+            } else if unit.ends_with(".target") {
+                let new_unit_info = parse_unit(&new_unit_file, &new_base_unit_file)?;
+
+                // Cause all active target units to be restarted below. This should start most
+                // changed units we stop here as well as any new dependencies (including new mounts
+                // and swap devices).  FIXME: the suspend target is sometimes active after the
+                // system has resumed, which probably should not be the case.  Just ignore it.
+                if !matches!(
+                    unit.as_str(),
+                    "suspend.target" | "hibernate.target" | "hybrid-sleep.target"
+                ) {
+                    if !(parse_systemd_bool(
+                        Some(&new_unit_info),
+                        "Unit",
+                        "RefuseManualStart",
+                        false,
+                    ) || parse_systemd_bool(
+                        Some(&new_unit_info),
+                        "Unit",
+                        "X-OnlyManualStart",
+                        false,
+                    )) {
+                        units_to_start.insert(unit.to_string(), ());
+                        record_unit(START_LIST_FILE, unit);
+                        // Don't spam the user with target units that always get started.
+                        if std::env::var("STC_DISPLAY_ALL_UNITS").as_deref() != Ok("1") {
+                            units_to_filter.insert(unit.to_string(), ());
+                        }
+                    }
+                }
+
+                // Stop targets that have X-StopOnReconfiguration set. This is necessary to respect
+                // dependency orderings involving targets: if unit X starts after target Y and
+                // target Y starts after unit Z, then if X and Z have both changed, then X should
+                // be restarted after Z.  However, if target Y is in the "active" state, X and Z
+                // will be restarted at the same time because X's dependency on Y is already
+                // satisfied.  Thus, we need to stop Y first. Stopping a target generally has no
+                // effect on other units (unless there is a PartOf dependency), so this is just a
+                // bookkeeping thing to get systemd to do the right thing.
+                if parse_systemd_bool(
+                    Some(&new_unit_info),
+                    "Unit",
+                    "X-StopOnReconfiguration",
+                    false,
+                ) {
+                    units_to_stop.insert(unit.to_string(), ());
+                }
+            } else {
+                let current_unit_info = parse_unit(&current_unit_file, &current_base_unit_file)?;
+                let new_unit_info = parse_unit(&new_unit_file, &new_base_unit_file)?;
+                match compare_units(&current_unit_info, &new_unit_info) {
+                    UnitComparison::UnequalNeedsRestart => {
+                        handle_modified_unit(
+                            &toplevel,
+                            &unit,
+                            base_name,
+                            &new_unit_file,
+                            &new_base_unit_file,
+                            Some(&new_unit_info),
+                            &current_active_units,
+                            &mut units_to_stop,
+                            &mut units_to_start,
+                            &mut units_to_reload,
+                            &mut units_to_restart,
+                            &mut units_to_skip,
+                        )?;
+                    }
+                    UnitComparison::UnequalNeedsReload if !units_to_restart.contains_key(unit) => {
+                        units_to_reload.insert(unit.clone(), ());
+                        record_unit(RELOAD_LIST_FILE, &unit);
+                    }
+                    _ => {}
+                }
+            }
+        }
+    }
+
+    // Compare the previous and new fstab to figure out which filesystems need a remount or need to
+    // be unmounted. New filesystems are mounted automatically by starting local-fs.target.
+    // FIXME: might be nicer if we generated units for all mounts; then we could unify this with
+    // the unit checking code above.
+    let (current_filesystems, current_swaps) = std::fs::read_to_string("/etc/fstab")
+        .map(|fstab| parse_fstab(std::io::Cursor::new(fstab)))
+        .unwrap_or_default();
+    let (new_filesystems, new_swaps) = std::fs::read_to_string(toplevel.join("etc/fstab"))
+        .map(|fstab| parse_fstab(std::io::Cursor::new(fstab)))
+        .unwrap_or_default();
+
+    for (mountpoint, current_filesystem) in current_filesystems {
+        // Use current version of systemctl binary before daemon is reexeced.
+        let unit = path_to_unit_name(&current_system_bin, &mountpoint);
+        if let Some(new_filesystem) = new_filesystems.get(&mountpoint) {
+            if current_filesystem.fs_type != new_filesystem.fs_type
+                || current_filesystem.device != new_filesystem.device
+            {
+                if matches!(mountpoint.as_str(), "/" | "/nix") {
+                    if current_filesystem.options != new_filesystem.options {
+                        // Mount options changes, so remount it.
+                        units_to_reload.insert(unit.to_string(), ());
+                        record_unit(RELOAD_LIST_FILE, &unit)
+                    } else {
+                        // Don't unmount / or /nix if the device changed
+                        units_to_skip.insert(unit, ());
+                    }
+                } else {
+                    // Filesystem type or device changed, so unmount and mount it.
+                    units_to_restart.insert(unit.to_string(), ());
+                    record_unit(RESTART_LIST_FILE, &unit);
+                }
+            } else if current_filesystem.options != new_filesystem.options {
+                // Mount options changes, so remount it.
+                units_to_reload.insert(unit.to_string(), ());
+                record_unit(RELOAD_LIST_FILE, &unit)
+            }
+        } else {
+            // Filesystem entry disappeared, so unmount it.
+            units_to_stop.insert(unit, ());
+        }
+    }
+
+    // Also handles swap devices.
+    for (device, _) in current_swaps {
+        if new_swaps.get(&device).is_none() {
+            // Swap entry disappeared, so turn it off.  Can't use "systemctl stop" here because
+            // systemd has lots of alias units that prevent a stop from actually calling "swapoff".
+            if *action == Action::DryActivate {
+                eprintln!("would stop swap device: {}", &device);
+            } else {
+                eprintln!("stopping swap device: {}", &device);
+                let c_device = std::ffi::CString::new(device.clone())
+                    .context("failed to convert device to cstring")?;
+                if unsafe { nix::libc::swapoff(c_device.as_ptr()) } != 0 {
+                    let err = std::io::Error::last_os_error();
+                    eprintln!("Failed to stop swapping to {device}: {err}");
+                }
+            }
+        }
+        // FIXME: update swap options (i.e. its priority).
+    }
+
+    // Should we have systemd re-exec itself?
+    let current_pid1_path = Path::new("/proc/1/exe")
+        .canonicalize()
+        .unwrap_or_else(|_| PathBuf::from("/unknown"));
+    let current_systemd_system_config = Path::new("/etc/systemd/system.conf")
+        .canonicalize()
+        .unwrap_or_else(|_| PathBuf::from("/unknown"));
+    let Ok(new_pid1_path) = new_systemd.join("lib/systemd/systemd").canonicalize() else {
+        die();
+    };
+    let new_systemd_system_config = toplevel
+        .join("etc/systemd/system.conf")
+        .canonicalize()
+        .unwrap_or_else(|_| PathBuf::from("/unknown"));
+
+    let restart_systemd = current_pid1_path != new_pid1_path
+        || current_systemd_system_config != new_systemd_system_config;
+
+    let units_to_stop_filtered = filter_units(&units_to_filter, &units_to_stop);
+
+    // Show dry-run actions.
+    if *action == Action::DryActivate {
+        if !units_to_stop_filtered.is_empty() {
+            let mut units = units_to_stop_filtered
+                .keys()
+                .into_iter()
+                .map(String::as_str)
+                .collect::<Vec<&str>>();
+            units.sort_by_key(|name| name.to_lowercase());
+            eprintln!("would stop the following units: {}", units.join(", "));
+        }
+
+        if !units_to_skip.is_empty() {
+            let mut units = units_to_skip
+                .keys()
+                .into_iter()
+                .map(String::as_str)
+                .collect::<Vec<&str>>();
+            units.sort_by_key(|name| name.to_lowercase());
+            eprintln!(
+                "would NOT stop the following changed units: {}",
+                units.join(", ")
+            );
+        }
+
+        eprintln!("would activate the configuration...");
+        _ = std::process::Command::new(out.join("dry-activate"))
+            .arg(&out)
+            .spawn()
+            .map(|mut child| child.wait());
+
+        // Handle the activation script requesting the restart or reload of a unit.
+        for unit in std::fs::read_to_string(DRY_RESTART_BY_ACTIVATION_LIST_FILE)
+            .unwrap_or_default()
+            .lines()
+        {
+            let current_unit_file = Path::new("/etc/systemd/system").join(unit);
+            let new_unit_file = toplevel.join("etc/systemd/system").join(unit);
+            let mut base_unit = unit.to_string();
+            let mut new_base_unit_file = new_unit_file.clone();
+
+            // Detect template instances.
+            if let Some((Some(template_name), Some(template_instance))) =
+                template_unit_re.captures(&unit).map(|captures| {
+                    (
+                        captures.get(1).map(|c| c.as_str()),
+                        captures.get(2).map(|c| c.as_str()),
+                    )
+                })
+            {
+                if !current_unit_file.exists() && !new_unit_file.exists() {
+                    base_unit = format!("{}@.{}", template_name, template_instance);
+                    new_base_unit_file = toplevel.join("etc/systemd/system").join(&base_unit);
+                }
+            }
+
+            let mut base_name = base_unit.as_str();
+            if let Some(Some(new_base_name)) = unit_name_re
+                .captures(&base_unit)
+                .map(|capture| capture.get(1).map(|first| first.as_str()))
+            {
+                base_name = new_base_name;
+            }
+
+            // Start units if they were not active previously
+            if !current_active_units.contains_key(unit) {
+                units_to_start.insert(unit.to_string(), ());
+                continue;
+            }
+
+            handle_modified_unit(
+                &toplevel,
+                unit,
+                base_name,
+                &new_unit_file,
+                &new_base_unit_file,
+                None,
+                &current_active_units,
+                &mut units_to_stop,
+                &mut units_to_start,
+                &mut units_to_reload,
+                &mut units_to_restart,
+                &mut units_to_skip,
+            )?;
+        }
+
+        remove_file_if_exists(DRY_RESTART_BY_ACTIVATION_LIST_FILE)
+            .with_context(|| format!("Failed to remove {}", DRY_RESTART_BY_ACTIVATION_LIST_FILE))?;
+
+        for unit in std::fs::read_to_string(DRY_RELOAD_BY_ACTIVATION_LIST_FILE)
+            .unwrap_or_default()
+            .lines()
+        {
+            if current_active_units.contains_key(unit)
+                && !units_to_restart.contains_key(unit)
+                && !units_to_stop.contains_key(unit)
+            {
+                units_to_reload.insert(unit.to_string(), ());
+                record_unit(RELOAD_LIST_FILE, unit);
+            }
+        }
+
+        remove_file_if_exists(DRY_RELOAD_BY_ACTIVATION_LIST_FILE)
+            .with_context(|| format!("Failed to remove {}", DRY_RELOAD_BY_ACTIVATION_LIST_FILE))?;
+
+        if restart_systemd {
+            eprintln!("would restart systemd");
+        }
+
+        if !units_to_reload.is_empty() {
+            let mut units = units_to_reload
+                .keys()
+                .into_iter()
+                .map(String::as_str)
+                .collect::<Vec<&str>>();
+            units.sort_by_key(|name| name.to_lowercase());
+            eprintln!("would reload the following units: {}", units.join(", "));
+        }
+
+        if !units_to_restart.is_empty() {
+            let mut units = units_to_restart
+                .keys()
+                .into_iter()
+                .map(String::as_str)
+                .collect::<Vec<&str>>();
+            units.sort_by_key(|name| name.to_lowercase());
+            eprintln!("would restart the following units: {}", units.join(", "));
+        }
+
+        let units_to_start_filtered = filter_units(&units_to_filter, &units_to_start);
+        if !units_to_start_filtered.is_empty() {
+            let mut units = units_to_start_filtered
+                .keys()
+                .into_iter()
+                .map(String::as_str)
+                .collect::<Vec<&str>>();
+            units.sort_by_key(|name| name.to_lowercase());
+            eprintln!("would start the following units: {}", units.join(", "));
+        }
+
+        std::process::exit(0);
+    }
+
+    log::info!("switching to system configuration {}", toplevel.display());
+
+    if !units_to_stop.is_empty() {
+        if !units_to_stop_filtered.is_empty() {
+            let mut units = units_to_stop_filtered
+                .keys()
+                .into_iter()
+                .map(String::as_str)
+                .collect::<Vec<&str>>();
+            units.sort_by_key(|name| name.to_lowercase());
+            eprintln!("stopping the following units: {}", units.join(", "));
+        }
+
+        for unit in units_to_stop.keys() {
+            match systemd.stop_unit(unit, "replace") {
+                Ok(job_path) => {
+                    let mut j = submitted_jobs.borrow_mut();
+                    j.insert(job_path.to_owned(), Job::Stop);
+                }
+                Err(_) => {}
+            };
+        }
+
+        block_on_jobs(&dbus_conn, &submitted_jobs);
+    }
+
+    if !units_to_skip.is_empty() {
+        let mut units = units_to_skip
+            .keys()
+            .into_iter()
+            .map(String::as_str)
+            .collect::<Vec<&str>>();
+        units.sort_by_key(|name| name.to_lowercase());
+        eprintln!(
+            "NOT restarting the following changed units: {}",
+            units.join(", "),
+        );
+    }
+
+    // Wait for all stop jobs to finish
+    block_on_jobs(&dbus_conn, &submitted_jobs);
+
+    let mut exit_code = 0;
+
+    // Activate the new configuration (i.e., update /etc, make accounts, and so on).
+    eprintln!("activating the configuration...");
+    match std::process::Command::new(out.join("activate"))
+        .arg(&out)
+        .spawn()
+        .map(|mut child| child.wait())
+    {
+        Ok(Ok(status)) if status.success() => {}
+        Err(_) => {
+            // allow toplevel to not have an activation script
+        }
+        _ => {
+            eprintln!("Failed to run activate script");
+            exit_code = 2;
+        }
+    }
+
+    // Handle the activation script requesting the restart or reload of a unit.
+    for unit in std::fs::read_to_string(RESTART_BY_ACTIVATION_LIST_FILE)
+        .unwrap_or_default()
+        .lines()
+    {
+        let new_unit_file = toplevel.join("etc/systemd/system").join(unit);
+        let mut base_unit = unit.to_string();
+        let mut new_base_unit_file = new_unit_file.clone();
+
+        // Detect template instances.
+        if let Some((Some(template_name), Some(template_instance))) =
+            template_unit_re.captures(&unit).map(|captures| {
+                (
+                    captures.get(1).map(|c| c.as_str()),
+                    captures.get(2).map(|c| c.as_str()),
+                )
+            })
+        {
+            if !new_unit_file.exists() {
+                base_unit = format!("{}@.{}", template_name, template_instance);
+                new_base_unit_file = toplevel.join("etc/systemd/system").join(&base_unit);
+            }
+        }
+
+        let mut base_name = base_unit.as_str();
+        if let Some(Some(new_base_name)) = unit_name_re
+            .captures(&base_unit)
+            .map(|capture| capture.get(1).map(|first| first.as_str()))
+        {
+            base_name = new_base_name;
+        }
+
+        // Start units if they were not active previously
+        if !current_active_units.contains_key(unit) {
+            units_to_start.insert(unit.to_string(), ());
+            record_unit(START_LIST_FILE, unit);
+            continue;
+        }
+
+        handle_modified_unit(
+            &toplevel,
+            unit,
+            base_name,
+            &new_unit_file,
+            &new_base_unit_file,
+            None,
+            &current_active_units,
+            &mut units_to_stop,
+            &mut units_to_start,
+            &mut units_to_reload,
+            &mut units_to_restart,
+            &mut units_to_skip,
+        )?;
+    }
+
+    // We can remove the file now because it has been propagated to the other restart/reload files
+    remove_file_if_exists(RESTART_BY_ACTIVATION_LIST_FILE)
+        .with_context(|| format!("Failed to remove {}", RESTART_BY_ACTIVATION_LIST_FILE))?;
+
+    for unit in std::fs::read_to_string(RELOAD_BY_ACTIVATION_LIST_FILE)
+        .unwrap_or_default()
+        .lines()
+    {
+        if current_active_units.contains_key(unit)
+            && !units_to_restart.contains_key(unit)
+            && !units_to_stop.contains_key(unit)
+        {
+            units_to_reload.insert(unit.to_string(), ());
+            record_unit(RELOAD_LIST_FILE, unit);
+        }
+    }
+
+    // We can remove the file now because it has been propagated to the other reload file
+    remove_file_if_exists(RELOAD_BY_ACTIVATION_LIST_FILE)
+        .with_context(|| format!("Failed to remove {}", RELOAD_BY_ACTIVATION_LIST_FILE))?;
+
+    // Restart systemd if necessary. Note that this is done using the current version of systemd,
+    // just in case the new one has trouble communicating with the running pid 1.
+    if restart_systemd {
+        eprintln!("restarting systemd...");
+        _ = systemd.reexecute(); // we don't get a dbus reply here
+
+        while !*systemd_reload_status.borrow() {
+            _ = dbus_conn
+                .process(Duration::from_millis(500))
+                .context("Failed to process dbus messages")?;
+        }
+    }
+
+    // Forget about previously failed services.
+    systemd
+        .reset_failed()
+        .context("Failed to reset failed units")?;
+
+    // Make systemd reload its units.
+    _ = systemd.reload(); // we don't get a dbus reply here
+    while !*systemd_reload_status.borrow() {
+        _ = dbus_conn
+            .process(Duration::from_millis(500))
+            .context("Failed to process dbus messages")?;
+    }
+
+    dbus_conn
+        .remove_match(reloading_token)
+        .context("Failed to cleanup systemd Reloading match")?;
+
+    // Reload user units
+    match logind.list_users() {
+        Err(err) => {
+            eprintln!("Unable to list users with logind: {err}");
+            die();
+        }
+        Ok(users) => {
+            for (uid, name, _) in users {
+                eprintln!("reloading user units for {}...", name);
+                let myself = Path::new("/proc/self/exe")
+                    .canonicalize()
+                    .context("Failed to get full path to /proc/self/exe")?;
+
+                std::process::Command::new(&myself)
+                    .uid(uid)
+                    .env("XDG_RUNTIME_DIR", format!("/run/user/{}", uid))
+                    .env("__NIXOS_SWITCH_TO_CONFIGURATION_PARENT_EXE", &myself)
+                    .spawn()
+                    .map(|mut child| _ = child.wait())
+                    .with_context(|| format!("Failed to run user activation for {name}"))?;
+            }
+        }
+    }
+
+    // Restart sysinit-reactivation.target. This target only exists to restart services ordered
+    // before sysinit.target. We cannot use X-StopOnReconfiguration to restart sysinit.target
+    // because then ALL services of the system would be restarted since all normal services have a
+    // default dependency on sysinit.target. sysinit-reactivation.target ensures that services
+    // ordered BEFORE sysinit.target get re-started in the correct order. Ordering between these
+    // services is respected.
+    eprintln!("restarting {SYSINIT_REACTIVATION_TARGET}");
+    match systemd.restart_unit(SYSINIT_REACTIVATION_TARGET, "replace") {
+        Ok(job_path) => {
+            let mut jobs = submitted_jobs.borrow_mut();
+            jobs.insert(job_path, Job::Restart);
+        }
+        Err(err) => {
+            eprintln!("Failed to restart {SYSINIT_REACTIVATION_TARGET}: {err}");
+            exit_code = 4;
+        }
+    }
+
+    // Wait for the restart job of sysinit-reactivation.service to finish
+    block_on_jobs(&dbus_conn, &submitted_jobs);
+
+    // Before reloading we need to ensure that the units are still active. They may have been
+    // deactivated because one of their requirements got stopped. If they are inactive but should
+    // have been reloaded, the user probably expects them to be started.
+    if !units_to_reload.is_empty() {
+        for (unit, _) in units_to_reload.clone() {
+            if !unit_is_active(&dbus_conn, &unit)? {
+                // Figure out if we need to start the unit
+                let unit_info = parse_unit(
+                    toplevel.join("etc/systemd/system").join(&unit).as_path(),
+                    toplevel.join("etc/systemd/system").join(&unit).as_path(),
+                )?;
+                if !parse_systemd_bool(Some(&unit_info), "Unit", "RefuseManualStart", false)
+                    || parse_systemd_bool(Some(&unit_info), "Unit", "X-OnlyManualStart", false)
+                {
+                    units_to_start.insert(unit.clone(), ());
+                    record_unit(START_LIST_FILE, &unit);
+                }
+                // Don't reload the unit, reloading would fail
+                units_to_reload.remove(&unit);
+                unrecord_unit(RELOAD_LIST_FILE, &unit);
+            }
+        }
+    }
+
+    // Reload units that need it. This includes remounting changed mount units.
+    if !units_to_reload.is_empty() {
+        let mut units = units_to_reload
+            .keys()
+            .into_iter()
+            .map(String::as_str)
+            .collect::<Vec<&str>>();
+        units.sort_by_key(|name| name.to_lowercase());
+        eprintln!("reloading the following units: {}", units.join(", "));
+
+        for unit in units {
+            match systemd.reload_unit(unit, "replace") {
+                Ok(job_path) => {
+                    submitted_jobs
+                        .borrow_mut()
+                        .insert(job_path.clone(), Job::Reload);
+                }
+                Err(err) => {
+                    eprintln!("Failed to reload {unit}: {err}");
+                    exit_code = 4;
+                }
+            }
+        }
+
+        block_on_jobs(&dbus_conn, &submitted_jobs);
+
+        remove_file_if_exists(RELOAD_LIST_FILE)
+            .with_context(|| format!("Failed to remove {}", RELOAD_LIST_FILE))?;
+    }
+
+    // Restart changed services (those that have to be restarted rather than stopped and started).
+    if !units_to_restart.is_empty() {
+        let mut units = units_to_restart
+            .keys()
+            .into_iter()
+            .map(String::as_str)
+            .collect::<Vec<&str>>();
+        units.sort_by_key(|name| name.to_lowercase());
+        eprintln!("restarting the following units: {}", units.join(", "));
+
+        for unit in units {
+            match systemd.restart_unit(unit, "replace") {
+                Ok(job_path) => {
+                    let mut jobs = submitted_jobs.borrow_mut();
+                    jobs.insert(job_path, Job::Restart);
+                }
+                Err(err) => {
+                    eprintln!("Failed to restart {unit}: {err}");
+                    exit_code = 4;
+                }
+            }
+        }
+
+        block_on_jobs(&dbus_conn, &submitted_jobs);
+
+        remove_file_if_exists(RESTART_LIST_FILE)
+            .with_context(|| format!("Failed to remove {}", RESTART_LIST_FILE))?;
+    }
+
+    // Start all active targets, as well as changed units we stopped above. The latter is necessary
+    // because some may not be dependencies of the targets (i.e., they were manually started).
+    // FIXME: detect units that are symlinks to other units.  We shouldn't start both at the same
+    // time because we'll get a "Failed to add path to set" error from systemd.
+    let units_to_start_filtered = filter_units(&units_to_filter, &units_to_start);
+    if !units_to_start_filtered.is_empty() {
+        let mut units = units_to_start_filtered
+            .keys()
+            .into_iter()
+            .map(String::as_str)
+            .collect::<Vec<&str>>();
+        units.sort_by_key(|name| name.to_lowercase());
+        eprintln!("starting the following units: {}", units.join(", "));
+    }
+
+    for unit in units_to_start.keys() {
+        match systemd.start_unit(unit, "replace") {
+            Ok(job_path) => {
+                let mut jobs = submitted_jobs.borrow_mut();
+                jobs.insert(job_path, Job::Start);
+            }
+            Err(err) => {
+                eprintln!("Failed to start {unit}: {err}");
+                exit_code = 4;
+            }
+        }
+    }
+
+    block_on_jobs(&dbus_conn, &submitted_jobs);
+
+    remove_file_if_exists(START_LIST_FILE)
+        .with_context(|| format!("Failed to remove {}", START_LIST_FILE))?;
+
+    for (unit, job, result) in finished_jobs.borrow().values() {
+        match result.as_str() {
+            "timeout" | "failed" | "dependency" => {
+                eprintln!("Failed to {} {}", job, unit);
+                exit_code = 4;
+            }
+            _ => {}
+        }
+    }
+
+    dbus_conn
+        .remove_match(job_removed_token)
+        .context("Failed to cleanup systemd job match")?;
+
+    // Print failed and new units.
+    let mut failed_units = Vec::new();
+    let mut new_units = Vec::new();
+
+    // NOTE: We want switch-to-configuration to be able to report to the user any units that failed
+    // to start or units that systemd had to restart due to having previously failed. This is
+    // inherently a race condition between how long our program takes to run and how long the unit
+    // in question takes to potentially fail. The amount of time we wait for new messages on the
+    // bus to settle is purely tuned so that this program is compatible with the Perl
+    // implementation.
+    //
+    // Wait for events from systemd to settle. process() will return true if we have received any
+    // messages on the bus.
+    while dbus_conn
+        .process(Duration::from_millis(250))
+        .unwrap_or_default()
+    {}
+
+    let new_active_units = get_active_units(&systemd)?;
+
+    for (unit, unit_state) in new_active_units {
+        if &unit_state.state == "failed" {
+            failed_units.push(unit);
+            continue;
+        }
+
+        if unit_state.substate == "auto-restart" && unit.ends_with(".service") {
+            // A unit in auto-restart substate is a failure *if* it previously failed to start
+            let unit_object_path = systemd
+                .get_unit(&unit)
+                .context("Failed to get unit info for {unit}")?;
+            let exec_main_status: i32 = dbus_conn
+                .with_proxy(
+                    "org.freedesktop.systemd1",
+                    unit_object_path,
+                    Duration::from_millis(5000),
+                )
+                .get("org.freedesktop.systemd1.Service", "ExecMainStatus")
+                .context("Failed to get ExecMainStatus for {unit}")?;
+
+            if exec_main_status != 0 {
+                failed_units.push(unit);
+                continue;
+            }
+        }
+
+        // Ignore scopes since they are not managed by this script but rather created and managed
+        // by third-party services via the systemd dbus API. This only lists units that are not
+        // failed (including ones that are in auto-restart but have not failed previously)
+        if unit_state.state != "failed"
+            && !current_active_units.contains_key(&unit)
+            && !unit.ends_with(".scope")
+        {
+            new_units.push(unit);
+        }
+    }
+
+    if !new_units.is_empty() {
+        new_units.sort_by_key(|name| name.to_lowercase());
+        eprintln!(
+            "the following new units were started: {}",
+            new_units.join(", ")
+        );
+    }
+
+    if !failed_units.is_empty() {
+        failed_units.sort_by_key(|name| name.to_lowercase());
+        eprintln!(
+            "warning: the following units failed: {}",
+            failed_units.join(", ")
+        );
+        _ = std::process::Command::new(new_systemd.join("bin/systemctl"))
+            .arg("status")
+            .arg("--no-pager")
+            .arg("--full")
+            .args(failed_units)
+            .spawn()
+            .map(|mut child| child.wait());
+
+        exit_code = 4;
+    }
+
+    if exit_code == 0 {
+        log::info!(
+            "finished switching to system configuration {}",
+            toplevel.display()
+        );
+    } else {
+        log::error!(
+            "switching to system configuration {} failed (status {})",
+            toplevel.display(),
+            exit_code
+        );
+    }
+
+    std::process::exit(exit_code);
+}
+
+fn main() -> anyhow::Result<()> {
+    match (
+        unsafe { nix::libc::geteuid() },
+        std::env::var("__NIXOS_SWITCH_TO_CONFIGURATION_PARENT_EXE").ok(),
+    ) {
+        (0, None) => do_system_switch(),
+        (1..=u32::MAX, None) => bail!("This program does not support being ran outside of the switch-to-configuration environment"),
+        (_, Some(parent_exe)) => do_user_switch(parent_exe),
+    }
+}
+
+#[cfg(test)]
+mod tests {
+    use std::collections::HashMap;
+
+    #[test]
+    fn parse_fstab() {
+        {
+            let (filesystems, swaps) = super::parse_fstab(std::io::Cursor::new(""));
+            assert!(filesystems.is_empty());
+            assert!(swaps.is_empty());
+        }
+
+        {
+            let (filesystems, swaps) = super::parse_fstab(std::io::Cursor::new(
+                r#"\
+invalid
+                    "#,
+            ));
+            assert!(filesystems.is_empty());
+            assert!(swaps.is_empty());
+        }
+
+        {
+            let (filesystems, swaps) = super::parse_fstab(std::io::Cursor::new(
+                r#"\
+# This is a generated file.  Do not edit!
+#
+# To make changes, edit the fileSystems and swapDevices NixOS options
+# in your /etc/nixos/configuration.nix file.
+#
+# <file system> <mount point>   <type>  <options>       <dump>  <pass>
+
+# Filesystems.
+/dev/mapper/root / btrfs x-initrd.mount,compress=zstd,noatime,defaults 0 0
+/dev/disk/by-partlabel/BOOT /boot vfat x-systemd.automount 0 2
+/dev/disk/by-partlabel/home /home ext4 defaults 0 2
+/dev/mapper/usr /nix/.ro-store erofs x-initrd.mount,ro 0 2
+
+
+# Swap devices.
+                    "#,
+            ));
+            assert_eq!(filesystems.len(), 4);
+            assert_eq!(swaps.len(), 0);
+            let home_fs = filesystems.get("/home").unwrap();
+            assert_eq!(home_fs.fs_type, "ext4");
+            assert_eq!(home_fs.device, "/dev/disk/by-partlabel/home");
+            assert_eq!(home_fs.options, "defaults");
+        }
+    }
+
+    #[test]
+    fn filter_units() {
+        assert_eq!(
+            super::filter_units(&HashMap::from([]), &HashMap::from([])),
+            HashMap::from([])
+        );
+
+        assert_eq!(
+            super::filter_units(
+                &HashMap::from([("foo".to_string(), ())]),
+                &HashMap::from([("foo".to_string(), ()), ("bar".to_string(), ())])
+            ),
+            HashMap::from([("bar".to_string(), ())])
+        );
+    }
+
+    #[test]
+    fn compare_units() {
+        {
+            assert!(
+                super::compare_units(&HashMap::from([]), &HashMap::from([]))
+                    == super::UnitComparison::Equal
+            );
+
+            assert!(
+                super::compare_units(
+                    &HashMap::from([("Unit".to_string(), HashMap::from([]))]),
+                    &HashMap::from([])
+                ) == super::UnitComparison::Equal
+            );
+
+            assert!(
+                super::compare_units(
+                    &HashMap::from([(
+                        "Unit".to_string(),
+                        HashMap::from([(
+                            "X-Reload-Triggers".to_string(),
+                            vec!["foobar".to_string()]
+                        )])
+                    )]),
+                    &HashMap::from([])
+                ) == super::UnitComparison::Equal
+            );
+        }
+
+        {
+            assert!(
+                super::compare_units(
+                    &HashMap::from([("foobar".to_string(), HashMap::from([]))]),
+                    &HashMap::from([])
+                ) == super::UnitComparison::UnequalNeedsRestart
+            );
+
+            assert!(
+                super::compare_units(
+                    &HashMap::from([(
+                        "Mount".to_string(),
+                        HashMap::from([("Options".to_string(), vec![])])
+                    )]),
+                    &HashMap::from([(
+                        "Mount".to_string(),
+                        HashMap::from([("Options".to_string(), vec!["ro".to_string()])])
+                    )])
+                ) == super::UnitComparison::UnequalNeedsReload
+            );
+        }
+
+        {
+            assert!(
+                super::compare_units(
+                    &HashMap::from([]),
+                    &HashMap::from([(
+                        "Unit".to_string(),
+                        HashMap::from([(
+                            "X-Reload-Triggers".to_string(),
+                            vec!["foobar".to_string()]
+                        )])
+                    )])
+                ) == super::UnitComparison::UnequalNeedsReload
+            );
+
+            assert!(
+                super::compare_units(
+                    &HashMap::from([(
+                        "Unit".to_string(),
+                        HashMap::from([(
+                            "X-Reload-Triggers".to_string(),
+                            vec!["foobar".to_string()]
+                        )])
+                    )]),
+                    &HashMap::from([(
+                        "Unit".to_string(),
+                        HashMap::from([(
+                            "X-Reload-Triggers".to_string(),
+                            vec!["barfoo".to_string()]
+                        )])
+                    )])
+                ) == super::UnitComparison::UnequalNeedsReload
+            );
+
+            assert!(
+                super::compare_units(
+                    &HashMap::from([(
+                        "Mount".to_string(),
+                        HashMap::from([("Type".to_string(), vec!["ext4".to_string()])])
+                    )]),
+                    &HashMap::from([(
+                        "Mount".to_string(),
+                        HashMap::from([("Type".to_string(), vec!["btrfs".to_string()])])
+                    )])
+                ) == super::UnitComparison::UnequalNeedsRestart
+            );
+        }
+    }
+}
diff --git a/pkgs/by-name/sw/switcheroo/package.nix b/pkgs/by-name/sw/switcheroo/package.nix
index 9d2327f4095a..aa132910b1c2 100644
--- a/pkgs/by-name/sw/switcheroo/package.nix
+++ b/pkgs/by-name/sw/switcheroo/package.nix
@@ -18,19 +18,19 @@
 
 stdenv.mkDerivation (finalAttrs: {
   pname = "switcheroo";
-  version = "2.1.0";
+  version = "2.2.0";
 
   src = fetchFromGitLab {
     owner = "adhami3310";
     repo = "Switcheroo";
     rev = "v${finalAttrs.version}";
-    hash = "sha256-hopN2ynksaYoNYjXrh7plmhfmGYyqqK75GOtbsE95ZY=";
+    hash = "sha256-AwecOA8HWGimhQyCEG3Z3hhwa9RVWssykUXsdvqqs9U=";
   };
 
   cargoDeps = rustPlatform.fetchCargoTarball {
     src = finalAttrs.src;
     name = "switcheroo-${finalAttrs.version}";
-    hash = "sha256-wN6MsiOgYFgzDzdGei0ptRbG+h+xMJiFfzCcg6Xtryw=";
+    hash = "sha256-fpI4ue30DhkeWAolyeots+LkaRyaIPhYmIqRmx08i2s=";
   };
 
   nativeBuildInputs = [
@@ -65,7 +65,7 @@ stdenv.mkDerivation (finalAttrs: {
   meta = with lib; {
     changelog = "https://gitlab.com/adhami3310/Switcheroo/-/releases/v${finalAttrs.version}";
     description = "An app for converting images between different formats";
-    homepage = "https://gitlab.com/adhami3310/Switcheroo";
+    homepage = "https://apps.gnome.org/Converter/";
     license = licenses.gpl3Plus;
     mainProgram = "switcheroo";
     maintainers = with maintainers; [ michaelgrahamevans ];
diff --git a/pkgs/by-name/sw/swww/Cargo.lock b/pkgs/by-name/sw/swww/Cargo.lock
index d9c0ee3e72a8..bc481ee36a3b 100644
--- a/pkgs/by-name/sw/swww/Cargo.lock
+++ b/pkgs/by-name/sw/swww/Cargo.lock
@@ -31,47 +31,48 @@ checksum = "4b46cbb362ab8752921c97e041f5e366ee6297bd428a31275b9fcf1e380f7299"
 
 [[package]]
 name = "anstream"
-version = "0.6.13"
+version = "0.6.14"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d96bd03f33fe50a863e394ee9718a706f988b9079b20c3784fb726e7678b62fb"
+checksum = "418c75fa768af9c03be99d17643f93f79bbba589895012a80e3452a19ddda15b"
 dependencies = [
  "anstyle",
  "anstyle-parse",
  "anstyle-query",
  "anstyle-wincon",
  "colorchoice",
+ "is_terminal_polyfill",
  "utf8parse",
 ]
 
 [[package]]
 name = "anstyle"
-version = "1.0.6"
+version = "1.0.7"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8901269c6307e8d93993578286ac0edf7f195079ffff5ebdeea6a59ffb7e36bc"
+checksum = "038dfcf04a5feb68e9c60b21c9625a54c2c0616e79b72b0fd87075a056ae1d1b"
 
 [[package]]
 name = "anstyle-parse"
-version = "0.2.3"
+version = "0.2.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c75ac65da39e5fe5ab759307499ddad880d724eed2f6ce5b5e8a26f4f387928c"
+checksum = "c03a11a9034d92058ceb6ee011ce58af4a9bf61491aa7e1e59ecd24bd40d22d4"
 dependencies = [
  "utf8parse",
 ]
 
 [[package]]
 name = "anstyle-query"
-version = "1.0.2"
+version = "1.0.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e28923312444cdd728e4738b3f9c9cac739500909bb3d3c94b43551b16517648"
+checksum = "a64c907d4e79225ac72e2a354c9ce84d50ebb4586dee56c82b3ee73004f537f5"
 dependencies = [
  "windows-sys 0.52.0",
 ]
 
 [[package]]
 name = "anstyle-wincon"
-version = "3.0.2"
+version = "3.0.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1cd54b81ec8d6180e24654d0b371ad22fc3dd083b6ff8ba325b72e00c87660a7"
+checksum = "61a38449feb7068f52bb06c12759005cf459ee52bb4adc1d5a7c4322d716fb19"
 dependencies = [
  "anstyle",
  "windows-sys 0.52.0",
@@ -229,6 +230,12 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "1fd0f2584146f6f2ef48085050886acf353beff7305ebd1ae69500e27c67f64b"
 
 [[package]]
+name = "byteorder-lite"
+version = "0.1.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "8f1fe948ff07f4bd06c30984e69f5b4899c516a3ef74f34df92a2df2ab535495"
+
+[[package]]
 name = "cast"
 version = "0.3.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -236,12 +243,13 @@ checksum = "37b2a672a2cb129a2e41c10b1224bb368f9f37a2b16b612598138befd7b37eb5"
 
 [[package]]
 name = "cc"
-version = "1.0.94"
+version = "1.0.96"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "17f6e324229dc011159fcc089755d1e2e216a90d43a7dea6853ca740b84f35e7"
+checksum = "065a29261d53ba54260972629f9ca6bffa69bac13cd1fed61420f7fa68b9f8bd"
 dependencies = [
  "jobserver",
  "libc",
+ "once_cell",
 ]
 
 [[package]]
@@ -345,9 +353,9 @@ checksum = "3d7b894f5411737b7867f4827955924d7c254fc9f4d91a6aad6b097804b1018b"
 
 [[package]]
 name = "colorchoice"
-version = "1.0.0"
+version = "1.0.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "acbf1af155f9b9ef647e42cdc158db4b64a1b61f743629225fde6f3e0be2a7c7"
+checksum = "0b6a852b24ab71dffc585bcb46eaf7959d175cb865a7152e35b348d1b2960422"
 
 [[package]]
 name = "crc32fast"
@@ -521,9 +529,9 @@ dependencies = [
 
 [[package]]
 name = "flate2"
-version = "1.0.28"
+version = "1.0.30"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "46303f565772937ffe1d394a4fac6f411c6013172fadde9dcdb1e147a086940e"
+checksum = "5f54427cfd1c7829e2a139fcefea601bf088ebca651d2bf53ebc600eac295dae"
 dependencies = [
  "crc32fast",
  "miniz_oxide",
@@ -571,9 +579,9 @@ dependencies = [
 
 [[package]]
 name = "hashbrown"
-version = "0.14.3"
+version = "0.14.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "290f1a1d9242c78d09ce40a5e87e7554ee637af1351968159f4952f028f75604"
+checksum = "e5274423e17b7c9fc20b6e7e208532f9b19825d82dfd615708b70edd83df41f1"
 
 [[package]]
 name = "heck"
@@ -612,11 +620,11 @@ dependencies = [
 
 [[package]]
 name = "image-webp"
-version = "0.1.1"
+version = "0.1.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7a84a25dcae3ac487bc24ef280f9e20c79c9b1a3e5e32cbed3041d1c514aa87c"
+checksum = "d730b085583c4d789dfd07fdcf185be59501666a90c97c40162b37e4fdad272d"
 dependencies = [
- "byteorder",
+ "byteorder-lite",
  "thiserror",
 ]
 
@@ -659,6 +667,12 @@ dependencies = [
 ]
 
 [[package]]
+name = "is_terminal_polyfill"
+version = "1.70.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "f8478577c03552c21db0e2724ffb8986a5ce7af88107e6be5d2ee6e158c12800"
+
+[[package]]
 name = "itertools"
 version = "0.10.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -684,9 +698,9 @@ checksum = "49f1f14873335454500d59611f1cf4a4b0f786f9ac11f4312a78e4cf2566695b"
 
 [[package]]
 name = "jobserver"
-version = "0.1.30"
+version = "0.1.31"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "685a7d121ee3f65ae4fddd72b25a04bb36b6af81bc0828f7d5434c0fe60fa3a2"
+checksum = "d2b099aaa34a9751c5bf0878add70444e1ed2dd73f347be99003d4577277de6e"
 dependencies = [
  "libc",
 ]
@@ -724,9 +738,9 @@ checksum = "03087c2bad5e1034e8cace5926dec053fb3790248370865f5117a7d0213354c8"
 
 [[package]]
 name = "libc"
-version = "0.2.153"
+version = "0.2.154"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9c198f91728a82281a64e1f4f9eeb25d82cb32a5de251c6bd1b5154d63a8e7bd"
+checksum = "ae743338b92ff9146ce83992f766a31066a91a8c84a45e0e9f21e7cf6de6d346"
 
 [[package]]
 name = "libfuzzer-sys"
@@ -763,9 +777,9 @@ checksum = "01cda141df6706de531b6c46c3a33ecca755538219bd484262fa09410c13539c"
 
 [[package]]
 name = "lock_api"
-version = "0.4.11"
+version = "0.4.12"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3c168f8615b12bc01f9c17e2eb0cc07dcae1940121185446edc3744920e8ef45"
+checksum = "07af8b9cdd281b7915f413fa73f29ebd5d55d0d3f0155584dade1ff18cea1b17"
 dependencies = [
  "autocfg",
  "scopeguard",
@@ -1020,9 +1034,9 @@ dependencies = [
 
 [[package]]
 name = "proc-macro2"
-version = "1.0.80"
+version = "1.0.81"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a56dea16b0a29e94408b9aa5e2940a4eedbd128a1ba20e8f7ae60fd3d465af0e"
+checksum = "3d1597b0c024618f09a9c3b8655b7e430397a36d23fdafec26d6965e9eec3eba"
 dependencies = [
  "unicode-ident",
 ]
@@ -1219,9 +1233,9 @@ dependencies = [
 
 [[package]]
 name = "rustix"
-version = "0.38.32"
+version = "0.38.34"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "65e04861e65f21776e67888bfbea442b3642beaa0138fdb1dd7a84a52dffdb89"
+checksum = "70dc5ec042f7a43c4a73241207cecc9873a06d45debb38b329f8541d85c2730f"
 dependencies = [
  "bitflags 2.5.0",
  "errno",
@@ -1265,18 +1279,18 @@ checksum = "621e3680f3e07db4c9c2c3fb07c6223ab2fab2e54bd3c04c3ae037990f428c32"
 
 [[package]]
 name = "serde"
-version = "1.0.198"
+version = "1.0.200"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9846a40c979031340571da2545a4e5b7c4163bdae79b301d5f86d03979451fcc"
+checksum = "ddc6f9cc94d67c0e21aaf7eda3a010fd3af78ebf6e096aa6e2e13c79749cce4f"
 dependencies = [
  "serde_derive",
 ]
 
 [[package]]
 name = "serde_derive"
-version = "1.0.198"
+version = "1.0.200"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e88edab869b01783ba905e7d0153f9fc1a6505a96e4ad3018011eedb838566d9"
+checksum = "856f046b9400cee3c8c94ed572ecdb752444c24528c035cd35882aad6f492bcb"
 dependencies = [
  "proc-macro2",
  "quote",
@@ -1361,7 +1375,7 @@ checksum = "7da8b5736845d9f2fcb837ea5d9e2628564b3b043a70948a3f0b778838c5fb4f"
 
 [[package]]
 name = "swww"
-version = "0.9.4"
+version = "0.9.5"
 dependencies = [
  "assert_cmd",
  "clap",
@@ -1374,7 +1388,7 @@ dependencies = [
 
 [[package]]
 name = "swww-daemon"
-version = "0.9.4"
+version = "0.9.5"
 dependencies = [
  "bitcode",
  "keyframe",
@@ -1394,9 +1408,9 @@ dependencies = [
 
 [[package]]
 name = "syn"
-version = "2.0.59"
+version = "2.0.60"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4a6531ffc7b071655e4ce2e04bd464c4830bb585a61cabb96cf808f05172615a"
+checksum = "909518bc7b1c9b779f1bbf07f2929d35af9f0f37e47c6e9ef7f9dddc1e1821f3"
 dependencies = [
  "proc-macro2",
  "quote",
@@ -1449,18 +1463,18 @@ checksum = "3369f5ac52d5eb6ab48c6b4ffdc8efbcad6b89c765749064ba298f2c68a16a76"
 
 [[package]]
 name = "thiserror"
-version = "1.0.58"
+version = "1.0.59"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "03468839009160513471e86a034bb2c5c0e4baae3b43f79ffc55c4a5427b3297"
+checksum = "f0126ad08bff79f29fc3ae6a55cc72352056dfff61e3ff8bb7129476d44b23aa"
 dependencies = [
  "thiserror-impl",
 ]
 
 [[package]]
 name = "thiserror-impl"
-version = "1.0.58"
+version = "1.0.59"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c61f3ba182994efc43764a46c018c347bc492c79f024e705f46567b418f6d4f7"
+checksum = "d1cd413b5d558b4c5bf3680e324a6fa5014e7b7c067a51e69dbdf47eb7148b66"
 dependencies = [
  "proc-macro2",
  "quote",
@@ -1544,9 +1558,9 @@ dependencies = [
 
 [[package]]
 name = "toml_edit"
-version = "0.22.9"
+version = "0.22.12"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8e40bb779c5187258fd7aad0eb68cb8706a0a81fa712fbea808ab43c4b8374c4"
+checksum = "d3328d4f68a705b2a4498da1d580585d39a6510f98318a2cec3018a7ec61ddef"
 dependencies = [
  "indexmap",
  "serde",
@@ -1569,7 +1583,7 @@ checksum = "711b9620af191e0cdc7468a8d14e709c3dcdb115b36f838e601583af800a370a"
 
 [[package]]
 name = "utils"
-version = "0.9.4"
+version = "0.9.5"
 dependencies = [
  "bitcode",
  "criterion",
@@ -1764,37 +1778,15 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "53a85b86a771b1c87058196170769dd264f66c0782acf1ae6cc51bfd64b39082"
 
 [[package]]
-name = "winapi"
-version = "0.3.9"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5c839a674fcd7a98952e593242ea400abe93992746761e38641405d28b00f419"
-dependencies = [
- "winapi-i686-pc-windows-gnu",
- "winapi-x86_64-pc-windows-gnu",
-]
-
-[[package]]
-name = "winapi-i686-pc-windows-gnu"
-version = "0.4.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ac3b87c63620426dd9b991e5ce0329eff545bccbbb34f3be09ff6fb6ab51b7b6"
-
-[[package]]
 name = "winapi-util"
-version = "0.1.6"
+version = "0.1.8"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f29e6f9198ba0d26b4c9f07dbe6f9ed633e1f3d5b8b414090084349e46a52596"
+checksum = "4d4cc384e1e73b93bafa6fb4f1df8c41695c8a91cf9c4c64358067d15a7b6c6b"
 dependencies = [
- "winapi",
+ "windows-sys 0.52.0",
 ]
 
 [[package]]
-name = "winapi-x86_64-pc-windows-gnu"
-version = "0.4.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f"
-
-[[package]]
 name = "windows-sys"
 version = "0.48.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -1935,9 +1927,9 @@ checksum = "bec47e5bfd1bff0eeaf6d8b485cc1074891a197ab4225d504cb7a1ab88b02bf0"
 
 [[package]]
 name = "winnow"
-version = "0.6.6"
+version = "0.6.7"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f0c976aaaa0e1f90dbb21e9587cdaf1d9679a1cde8875c0d6bd83ab96a208352"
+checksum = "14b9415ee827af173ebb3f15f9083df5a122eb93572ec28741fb153356ea2578"
 dependencies = [
  "memchr",
 ]
diff --git a/pkgs/by-name/sw/swww/package.nix b/pkgs/by-name/sw/swww/package.nix
index 4dc92570f93d..de6889f5b1f2 100644
--- a/pkgs/by-name/sw/swww/package.nix
+++ b/pkgs/by-name/sw/swww/package.nix
@@ -1,22 +1,23 @@
-{ lib
-, fetchFromGitHub
-, rustPlatform
-, pkg-config
-, lz4
-, libxkbcommon
-, installShellFiles
-, scdoc
+{
+  lib,
+  fetchFromGitHub,
+  rustPlatform,
+  pkg-config,
+  lz4,
+  libxkbcommon,
+  installShellFiles,
+  scdoc,
 }:
 
 rustPlatform.buildRustPackage rec {
   pname = "swww";
-  version = "0.9.4";
+  version = "0.9.5";
 
   src = fetchFromGitHub {
     owner = "LGFae";
     repo = "swww";
     rev = "refs/tags/v${version}";
-    hash = "sha256-LvSPKg8cWlwKu4a+P/G0dOqV+aPsUq3axI1QqnLj4U8=";
+    hash = "sha256-ldy9HhIsWdtTdvtRLV3qDT80oX646BI4Q+YX5wJXbsc=";
   };
 
   cargoLock = {
@@ -52,12 +53,15 @@ rustPlatform.buildRustPackage rec {
       --zsh completions/_swww
   '';
 
-  meta = with lib; {
+  meta = {
     description = "Efficient animated wallpaper daemon for wayland, controlled at runtime";
     homepage = "https://github.com/LGFae/swww";
-    license = licenses.gpl3;
-    maintainers = with maintainers; [ mateodd25 donovanglover ];
-    platforms = platforms.linux;
+    license = lib.licenses.gpl3;
+    maintainers = with lib.maintainers; [
+      mateodd25
+      donovanglover
+    ];
+    platforms = lib.platforms.linux;
     mainProgram = "swww";
   };
 }
diff --git a/pkgs/by-name/sy/syft/package.nix b/pkgs/by-name/sy/syft/package.nix
index 3c9da505b607..91727c94908c 100644
--- a/pkgs/by-name/sy/syft/package.nix
+++ b/pkgs/by-name/sy/syft/package.nix
@@ -7,13 +7,13 @@
 
 buildGoModule rec {
   pname = "syft";
-  version = "1.3.0";
+  version = "1.4.1";
 
   src = fetchFromGitHub {
     owner = "anchore";
     repo = "syft";
     rev = "refs/tags/v${version}";
-    hash = "sha256-9U1PBLAj4oWKyUWrBbrlqM4MldYlYN20W5VAWxQ9nq4=";
+    hash = "sha256-fFJcRNqXhhdxsxQkP5S8xSeeUOa+KbS9CkUs1sbNuOg=";
     # populate values that require us to use git. By doing this in postFetch we
     # can delete .git afterwards and maintain better reproducibility of the src.
     leaveDotGit = true;
@@ -28,7 +28,7 @@ buildGoModule rec {
   # hash mismatch with darwin
   proxyVendor = true;
 
-  vendorHash = "sha256-UuQpO6iZN3ITQLj4xccEmxpmgfKSTigImlTPSvPgFyM=";
+  vendorHash = "sha256-vuKvQjWMFHtTjTb7Sg/jXvzpR2IxrHaWyfibTQdpSd4=";
 
   nativeBuildInputs = [ installShellFiles ];
 
diff --git a/pkgs/by-name/sy/symfony-cli/package.nix b/pkgs/by-name/sy/symfony-cli/package.nix
index 1036022bc68b..20a30fd5d249 100644
--- a/pkgs/by-name/sy/symfony-cli/package.nix
+++ b/pkgs/by-name/sy/symfony-cli/package.nix
@@ -10,14 +10,19 @@
 
 buildGoModule rec {
   pname = "symfony-cli";
-  version = "5.8.16";
-  vendorHash = "sha256-bhlD7EgOkWjRTsw1hH0GKjtFkLbOzr28wR4JJKOJwnY=";
+  version = "5.8.17";
+  vendorHash = "sha256-ARTKJVHgN1Y3xOUc3P2Ch7e8gN9BZbhBEZ1DiM7nEWs=";
 
   src = fetchFromGitHub {
     owner = "symfony-cli";
     repo = "symfony-cli";
     rev = "v${version}";
-    hash = "sha256-V67RLa/Tn9ZdV+vnhFSht0wtIYYZOAGAYP9R1Lxn9aI=";
+    hash = "sha256-UmGyIZk5s5A8ModafWMZqeJHdZ4fa+hAHi62pdlfJ8I=";
+    leaveDotGit = true;
+    postFetch = ''
+      git --git-dir $out/.git log -1 --pretty=%cd --date=format:'%Y-%m-%dT%H:%M:%SZ' > $out/SOURCE_DATE
+      rm -rf $out/.git
+    '';
   };
 
   ldflags = [
@@ -27,6 +32,10 @@ buildGoModule rec {
     "-X main.channel=stable"
   ];
 
+  preBuild = ''
+    ldflags+=" -X main.buildDate=$(cat SOURCE_DATE)"
+  '';
+
   buildInputs = [ makeBinaryWrapper ];
 
   postInstall = ''
diff --git a/pkgs/by-name/sy/symphony/package.nix b/pkgs/by-name/sy/symphony/package.nix
new file mode 100644
index 000000000000..51d3316c7d17
--- /dev/null
+++ b/pkgs/by-name/sy/symphony/package.nix
@@ -0,0 +1,37 @@
+{ lib
+, stdenv
+, fetchFromGitHub
+, cmake
+, coin-utils
+, CoinMP
+, gfortran
+, libtool
+, glpk
+, osi
+, pkg-config
+}:
+
+stdenv.mkDerivation rec {
+  pname = "symphony";
+  version = "5.7.2";
+
+  outputs = [ "out" ];
+
+  src = fetchFromGitHub {
+    owner = "coin-or";
+    repo = "SYMPHONY";
+    rev = "releases/${version}";
+    sha256 = "sha256-OdTUMG3iVhjhw5uKtUnsLCZ4DfMjYHm8+/ozfmw7J6c=";
+  };
+
+  nativeBuildInputs = [ libtool pkg-config glpk gfortran CoinMP osi coin-utils ];
+
+  meta = {
+    description = "SYMPHONY is an open-source solver, callable library, and development framework for mixed-integer linear programs (MILPs) written in C with a number of unique features";
+    homepage = "https://www.coin-or.org/SYMPHONY/index.htm";
+    changelog = "https://github.com/coin-or/SYMPHONY/blob/${version}/CHANGELOG.md";
+    platforms = [ "x86_64-linux" ];
+    license = lib.licenses.epl20;
+    maintainers = with lib.maintainers; [ b-rodrigues ];
+  };
+}
diff --git a/pkgs/by-name/sy/sync/package.nix b/pkgs/by-name/sy/sync/package.nix
new file mode 100644
index 000000000000..e96aa738d2c1
--- /dev/null
+++ b/pkgs/by-name/sy/sync/package.nix
@@ -0,0 +1,63 @@
+{
+  lib,
+  stdenv,
+  fetchgit,
+  autoreconfHook,
+  libgcrypt,
+  pkg-config,
+  curlWithGnuTls,
+  gnunet,
+  jansson,
+  libmicrohttpd,
+  libsodium,
+  libtool,
+  postgresql,
+  taler-exchange,
+  taler-merchant,
+  runtimeShell,
+}:
+
+stdenv.mkDerivation (finalAttrs: {
+  pname = "sync";
+  version = "0.10.1";
+
+  src = fetchgit {
+    url = "https://git.taler.net/sync.git";
+    rev = "v${finalAttrs.version}";
+    hash = "sha256-7EBm4Zp1sjZw7pXxQySY+1It3C/KLG2SHhqUPhDATbg=";
+  };
+
+  strictDeps = true;
+
+  nativeBuildInputs = [
+    autoreconfHook
+    libgcrypt
+    pkg-config
+  ];
+
+  buildInputs = [
+    curlWithGnuTls
+    gnunet
+    jansson
+    libgcrypt
+    libmicrohttpd
+    libsodium
+    libtool
+    postgresql
+    taler-exchange
+    taler-merchant
+  ];
+
+  preFixup = ''
+    substituteInPlace "$out/bin/sync-dbconfig" \
+      --replace-fail "/bin/bash" "${runtimeShell}"
+  '';
+
+  meta = {
+    description = "Backup and synchronization service";
+    homepage = "https://git.taler.net/sync.git";
+    license = lib.licenses.agpl3Plus;
+    maintainers = with lib.maintainers; [ wegank ];
+    platforms = lib.platforms.linux;
+  };
+})
diff --git a/pkgs/by-name/sy/systemctl-tui/package.nix b/pkgs/by-name/sy/systemctl-tui/package.nix
index 23a831e9e9c5..f51ada76c07e 100644
--- a/pkgs/by-name/sy/systemctl-tui/package.nix
+++ b/pkgs/by-name/sy/systemctl-tui/package.nix
@@ -7,14 +7,14 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "systemctl-tui";
-  version = "0.3.3";
+  version = "0.3.5";
 
   src = fetchCrate {
     inherit pname version;
-    hash = "sha256-oFXLxWS2G+CkG0yuJLkA34SqoGGcXU/eZmFMRYw+Gzo=";
+    hash = "sha256-CONg4amz4WaaZC/RtptzZDxLY8QnYqSnmpbBTILHjos=";
   };
 
-  cargoHash = "sha256-MKxeRQupgAxA2ui8qSK8BvhxqqgjJarD8pY9wmk8MvA=";
+  cargoHash = "sha256-EQ5vAAO52KXt9RhnB+P0cX7mCvXDYSxPfSh+Ak/DN0g=";
 
   buildInputs = lib.optionals stdenv.isDarwin [
     darwin.apple_sdk.frameworks.AppKit
diff --git a/pkgs/by-name/ta/tabby/Cargo.lock b/pkgs/by-name/ta/tabby/Cargo.lock
index ab4805aecd1d..a00e9b862f01 100644
--- a/pkgs/by-name/ta/tabby/Cargo.lock
+++ b/pkgs/by-name/ta/tabby/Cargo.lock
@@ -19,11 +19,12 @@ checksum = "f26201604c87b1e01bd3d98f8d5d9a8fcbb815e8cedb41ffccbeb4bf593a35fe"
 
 [[package]]
 name = "ahash"
-version = "0.8.7"
+version = "0.8.11"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "77c3a9648d43b9cd48db467b3f87fdd6e146bcc88ab0180006cef2179fe11d01"
+checksum = "e89da841a80418a9b391ebaea17f5c112ffaaa96f621d2c285b5174da76b9011"
 dependencies = [
  "cfg-if",
+ "getrandom",
  "once_cell",
  "version_check",
  "zerocopy",
@@ -40,7 +41,7 @@ dependencies = [
 
 [[package]]
 name = "aim-downloader"
-version = "0.8.3"
+version = "0.11.1"
 dependencies = [
  "async-stream",
  "clap",
@@ -51,7 +52,7 @@ dependencies = [
  "indicatif",
  "netrc",
  "regex",
- "reqwest",
+ "reqwest 0.12.4",
  "serial_test 2.0.0",
  "sha2",
  "strfmt",
@@ -145,6 +146,86 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "9c7d0618f0e0b7e8ff11427422b64564d5fb0be1940354bfe2e0529b18a9d9b8"
 
 [[package]]
+name = "apalis"
+version = "0.5.1"
+source = "git+https://github.com/wsxiaoys/apalis?rev=91526e8#91526e811607ec72ab83583547c0e8005c24d394"
+dependencies = [
+ "apalis-core",
+ "apalis-cron",
+ "apalis-redis",
+ "apalis-sql",
+ "futures",
+ "pin-project-lite",
+ "serde",
+ "thiserror",
+ "tokio",
+ "tower",
+ "tracing",
+ "tracing-futures",
+]
+
+[[package]]
+name = "apalis-core"
+version = "0.5.1"
+source = "git+https://github.com/wsxiaoys/apalis?rev=91526e8#91526e811607ec72ab83583547c0e8005c24d394"
+dependencies = [
+ "async-oneshot",
+ "futures",
+ "pin-project-lite",
+ "serde",
+ "serde_json",
+ "thiserror",
+ "tokio",
+ "tower",
+ "ulid",
+]
+
+[[package]]
+name = "apalis-cron"
+version = "0.5.1"
+source = "git+https://github.com/wsxiaoys/apalis?rev=91526e8#91526e811607ec72ab83583547c0e8005c24d394"
+dependencies = [
+ "apalis-core",
+ "async-stream",
+ "chrono",
+ "cron",
+ "futures",
+ "tower",
+]
+
+[[package]]
+name = "apalis-redis"
+version = "0.5.1"
+source = "git+https://github.com/wsxiaoys/apalis?rev=91526e8#91526e811607ec72ab83583547c0e8005c24d394"
+dependencies = [
+ "apalis-core",
+ "async-stream",
+ "async-trait",
+ "chrono",
+ "futures",
+ "log",
+ "redis",
+ "serde",
+ "tokio",
+]
+
+[[package]]
+name = "apalis-sql"
+version = "0.5.1"
+source = "git+https://github.com/wsxiaoys/apalis?rev=91526e8#91526e811607ec72ab83583547c0e8005c24d394"
+dependencies = [
+ "apalis-core",
+ "async-stream",
+ "futures",
+ "futures-lite",
+ "log",
+ "serde",
+ "serde_json",
+ "sqlx",
+ "tokio",
+]
+
+[[package]]
 name = "arc-swap"
 version = "1.6.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -185,6 +266,49 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "9b34d609dfbaf33d6889b2b7106d3ca345eacad44200913df5ba02bfd31d2ba9"
 
 [[package]]
+name = "async-convert"
+version = "1.0.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "6d416feee97712e43152cd42874de162b8f9b77295b1c85e5d92725cc8310bae"
+dependencies = [
+ "async-trait",
+]
+
+[[package]]
+name = "async-oneshot"
+version = "0.5.9"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "ae47de2a02d543205f3f5457a90b6ecbc9494db70557bd29590ec8f1ddff5463"
+dependencies = [
+ "futures-micro",
+]
+
+[[package]]
+name = "async-openai"
+version = "0.20.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "11e97f9c5e0ee3260caee9700ba1bb61a6fdc34d2b6786a31e018c5de5198491"
+dependencies = [
+ "async-convert",
+ "backoff",
+ "base64 0.22.0",
+ "bytes",
+ "derive_builder 0.20.0",
+ "futures",
+ "rand",
+ "reqwest 0.12.4",
+ "reqwest-eventsource",
+ "secrecy",
+ "serde",
+ "serde_json",
+ "thiserror",
+ "tokio",
+ "tokio-stream",
+ "tokio-util",
+ "tracing",
+]
+
+[[package]]
 name = "async-stream"
 version = "0.3.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -203,18 +327,39 @@ checksum = "16e62a023e7c117e27523144c5d2459f4397fcc3cab0085af8e2224f643a0193"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.32",
+ "syn 2.0.52",
 ]
 
 [[package]]
 name = "async-trait"
-version = "0.1.74"
+version = "0.1.80"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "c6fa2087f2753a7da8cc1c0dbfcf89579dd57458e36769de5ac750b4671737ca"
+dependencies = [
+ "proc-macro2",
+ "quote",
+ "syn 2.0.52",
+]
+
+[[package]]
+name = "atoi"
+version = "2.0.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a66537f1bb974b254c98ed142ff995236e81b9d0fe4db0575f46612cb15eb0f9"
+checksum = "f28d99ec8bfea296261ca1af174f24225171fea9664ba9003cbebee704810528"
 dependencies = [
+ "num-traits",
+]
+
+[[package]]
+name = "auto_enums"
+version = "0.8.5"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "1899bfcfd9340ceea3533ea157360ba8fa864354eccbceab58e1006ecab35393"
+dependencies = [
+ "derive_utils",
  "proc-macro2",
  "quote",
- "syn 2.0.32",
+ "syn 2.0.52",
 ]
 
 [[package]]
@@ -225,20 +370,20 @@ checksum = "d468802bab17cbc0cc575e9b053f41e72aa36bfa6b7f55e3529ffa43161b97fa"
 
 [[package]]
 name = "axum"
-version = "0.6.20"
+version = "0.7.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3b829e4e32b91e643de6eafe82b1d90675f5874230191a4ffbc1b336dec4d6bf"
+checksum = "3a6c9af12842a67734c9a2e355436e5d03b22383ed60cf13cd0c18fbfe3dcbcf"
 dependencies = [
  "async-trait",
  "axum-core",
  "base64 0.21.5",
- "bitflags 1.3.2",
  "bytes",
  "futures-util",
- "headers",
- "http",
- "http-body",
- "hyper",
+ "http 1.1.0",
+ "http-body 1.0.0",
+ "http-body-util",
+ "hyper 1.3.1",
+ "hyper-util",
  "itoa",
  "matchit",
  "memchr",
@@ -251,44 +396,71 @@ dependencies = [
  "serde_path_to_error",
  "serde_urlencoded",
  "sha1",
- "sync_wrapper",
+ "sync_wrapper 1.0.1",
  "tokio",
  "tokio-tungstenite",
  "tower",
  "tower-layer",
  "tower-service",
+ "tracing",
 ]
 
 [[package]]
 name = "axum-core"
-version = "0.3.4"
+version = "0.4.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "759fa577a247914fd3f7f76d62972792636412fbfd634cd452f6a385a74d2d2c"
+checksum = "a15c63fd72d41492dc4f497196f5da1fb04fb7529e631d73630d1b491e47a2e3"
 dependencies = [
  "async-trait",
  "bytes",
  "futures-util",
- "http",
- "http-body",
+ "http 1.1.0",
+ "http-body 1.0.0",
+ "http-body-util",
  "mime",
+ "pin-project-lite",
  "rustversion",
+ "sync_wrapper 0.1.2",
  "tower-layer",
  "tower-service",
+ "tracing",
 ]
 
 [[package]]
-name = "axum-prometheus"
-version = "0.4.0"
+name = "axum-extra"
+version = "0.9.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "97def327c5481791abb57ac295bfc70f2e1a0727675b7dbf74bd1b27a72b6fd8"
+checksum = "0be6ea09c9b96cb5076af0de2e383bd2bc0c18f827cf1967bdd353e0b910d733"
 dependencies = [
  "axum",
  "axum-core",
  "bytes",
+ "futures-util",
+ "headers",
+ "http 1.1.0",
+ "http-body 1.0.0",
+ "http-body-util",
+ "mime",
+ "pin-project-lite",
+ "serde",
+ "tower",
+ "tower-layer",
+ "tower-service",
+ "tracing",
+]
+
+[[package]]
+name = "axum-prometheus"
+version = "0.6.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "b683cbc43010e9a3d72c2f31ca464155ff4f95819e88a32924b0f47a43898978"
+dependencies = [
+ "axum",
+ "bytes",
  "futures",
  "futures-core",
- "http",
- "http-body",
+ "http 1.1.0",
+ "http-body 1.0.0",
  "matchit",
  "metrics",
  "metrics-exporter-prometheus",
@@ -296,23 +468,21 @@ dependencies = [
  "pin-project",
  "tokio",
  "tower",
- "tower-http 0.4.0",
+ "tower-http",
 ]
 
 [[package]]
-name = "axum-tracing-opentelemetry"
-version = "0.10.0"
+name = "backoff"
+version = "0.4.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "164b95427e83b79583c7699a72b4a6b485a12bbdef5b5c054ee5ff2296d82f52"
+checksum = "b62ddb9cb1ec0a098ad4bbf9344d0713fa193ae1a80af55febcff2627b6a00c1"
 dependencies = [
- "axum",
- "futures",
- "http",
- "opentelemetry",
- "tower",
- "tower-http 0.3.5",
- "tracing",
- "tracing-opentelemetry",
+ "futures-core",
+ "getrandom",
+ "instant",
+ "pin-project-lite",
+ "rand",
+ "tokio",
 ]
 
 [[package]]
@@ -343,6 +513,12 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "35636a1494ede3b646cc98f74f8e62c773a38a659ebc777a2cf26b9b74171df9"
 
 [[package]]
+name = "base64"
+version = "0.22.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "9475866fec1451be56a3c2400fd081ff546538961565ccb5b7142cbd22bc7a51"
+
+[[package]]
 name = "base64ct"
 version = "1.6.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -368,6 +544,9 @@ name = "bitflags"
 version = "2.4.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "b4682ae6287fcf752ecaabbfcc7b6f9b72aa33933dc23a554d853aea8eea8635"
+dependencies = [
+ "serde",
+]
 
 [[package]]
 name = "bitpacking"
@@ -397,23 +576,6 @@ dependencies = [
 ]
 
 [[package]]
-name = "bson"
-version = "1.2.4"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "de0aa578035b938855a710ba58d43cfb4d435f3619f99236fb35922a574d6cb1"
-dependencies = [
- "base64 0.13.1",
- "chrono",
- "hex",
- "lazy_static",
- "linked-hash-map",
- "rand 0.7.3",
- "serde",
- "serde_json",
- "uuid 0.8.2",
-]
-
-[[package]]
 name = "bstr"
 version = "1.7.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -442,6 +604,42 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "a2bd12c1caf447e69cd4528f47f94d203fd2582878ecb9e9465484c4148a8223"
 
 [[package]]
+name = "cached"
+version = "0.49.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "8e8e463fceca5674287f32d252fb1d94083758b8709c160efae66d263e5f4eba"
+dependencies = [
+ "ahash",
+ "async-trait",
+ "cached_proc_macro",
+ "cached_proc_macro_types",
+ "futures",
+ "hashbrown 0.14.3",
+ "instant",
+ "once_cell",
+ "thiserror",
+ "tokio",
+]
+
+[[package]]
+name = "cached_proc_macro"
+version = "0.20.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "ad9f16c0d84de31a2ab7fdf5f7783c14631f7075cf464eb3bb43119f61c9cb2a"
+dependencies = [
+ "darling 0.14.4",
+ "proc-macro2",
+ "quote",
+ "syn 1.0.109",
+]
+
+[[package]]
+name = "cached_proc_macro_types"
+version = "0.1.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "ade8366b8bd5ba243f0a58f036cc0ca8a2f069cff1a2351ef1cac6b083e16fc0"
+
+[[package]]
 name = "cargo-lock"
 version = "9.0.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -450,7 +648,7 @@ dependencies = [
  "petgraph",
  "semver",
  "serde",
- "toml",
+ "toml 0.7.4",
  "url",
 ]
 
@@ -532,7 +730,7 @@ dependencies = [
  "heck",
  "proc-macro2",
  "quote",
- "syn 2.0.32",
+ "syn 2.0.52",
 ]
 
 [[package]]
@@ -580,6 +778,20 @@ dependencies = [
 ]
 
 [[package]]
+name = "combine"
+version = "4.6.7"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "ba5a308b75df32fe02788e748662718f03fde005016435c444eea572398219fd"
+dependencies = [
+ "bytes",
+ "futures-core",
+ "memchr",
+ "pin-project-lite",
+ "tokio",
+ "tokio-util",
+]
+
+[[package]]
 name = "console"
 version = "0.15.7"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -593,6 +805,12 @@ dependencies = [
 ]
 
 [[package]]
+name = "const-oid"
+version = "0.9.6"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "c2459377285ad874054d797f3ccebf984978aa39129f6eafde5cdc8315b612f8"
+
+[[package]]
 name = "core-foundation"
 version = "0.9.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -618,33 +836,37 @@ dependencies = [
 ]
 
 [[package]]
-name = "crc32fast"
-version = "1.3.2"
+name = "crc"
+version = "3.0.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b540bd8bc810d3885c6ea91e2018302f68baba2129ab3e88f32389ee9370880d"
+checksum = "86ec7a15cbe22e59248fc7eadb1907dab5ba09372595da4d73dd805ed4417dfe"
 dependencies = [
- "cfg-if",
+ "crc-catalog",
 ]
 
 [[package]]
-name = "cron"
-version = "0.6.1"
+name = "crc-catalog"
+version = "2.4.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ab00a636277f7ea5d8dd92ac7a5099fc9a46e5327bba84d3640b41ae127eada9"
+checksum = "19d374276b40fb8bbdee95aef7c7fa6b5316ec764510eb64b8dd0e2ed0d7e7f5"
+
+[[package]]
+name = "crc32fast"
+version = "1.3.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "b540bd8bc810d3885c6ea91e2018302f68baba2129ab3e88f32389ee9370880d"
 dependencies = [
- "chrono",
- "error-chain",
- "nom 4.1.1",
+ "cfg-if",
 ]
 
 [[package]]
 name = "cron"
-version = "0.12.0"
+version = "0.12.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1ff76b51e4c068c52bfd2866e1567bee7c567ae8f24ada09fd4307019e25eab7"
+checksum = "6f8c3e73077b4b4a6ab1ea5047c37c57aee77657bc8ecd6f29b0af082d0b0c07"
 dependencies = [
  "chrono",
- "nom 7.1.3",
+ "nom",
  "once_cell",
 ]
 
@@ -683,15 +905,21 @@ dependencies = [
 ]
 
 [[package]]
-name = "crossbeam-utils"
-version = "0.8.16"
+name = "crossbeam-queue"
+version = "0.3.11"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5a22b2d63d4d1dc0b7f1b6b2747dd0088008a9be28b6ddf0b1e7d335e3037294"
+checksum = "df0346b5d5e76ac2fe4e327c5fd1118d6be7c51dfb18f9b7922923f287471e35"
 dependencies = [
- "cfg-if",
+ "crossbeam-utils",
 ]
 
 [[package]]
+name = "crossbeam-utils"
+version = "0.8.19"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "248e3bacc7dc6baa3b21e405ee045c3047101a49145e7e9eca583ab4c2ca5345"
+
+[[package]]
 name = "crunchy"
 version = "0.2.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -737,7 +965,7 @@ dependencies = [
  "proc-macro2",
  "quote",
  "scratch",
- "syn 2.0.32",
+ "syn 2.0.52",
 ]
 
 [[package]]
@@ -754,7 +982,7 @@ checksum = "4a076022ece33e7686fb76513518e219cca4fce5750a8ae6d1ce6c0f48fd1af9"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.32",
+ "syn 2.0.52",
 ]
 
 [[package]]
@@ -778,6 +1006,16 @@ dependencies = [
 ]
 
 [[package]]
+name = "darling"
+version = "0.20.8"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "54e36fcd13ed84ffdfda6f5be89b31287cbb80c439841fe69e04841435464391"
+dependencies = [
+ "darling_core 0.20.8",
+ "darling_macro 0.20.8",
+]
+
+[[package]]
 name = "darling_core"
 version = "0.10.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -806,6 +1044,20 @@ dependencies = [
 ]
 
 [[package]]
+name = "darling_core"
+version = "0.20.8"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "9c2cf1c23a687a1feeb728783b993c4e1ad83d99f351801977dd809b48d0a70f"
+dependencies = [
+ "fnv",
+ "ident_case",
+ "proc-macro2",
+ "quote",
+ "strsim 0.10.0",
+ "syn 2.0.52",
+]
+
+[[package]]
 name = "darling_macro"
 version = "0.10.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -828,6 +1080,17 @@ dependencies = [
 ]
 
 [[package]]
+name = "darling_macro"
+version = "0.20.8"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "a668eda54683121533a393014d8692171709ff57a7d61f187b6e782719f8933f"
+dependencies = [
+ "darling_core 0.20.8",
+ "quote",
+ "syn 2.0.52",
+]
+
+[[package]]
 name = "dashmap"
 version = "5.5.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -837,7 +1100,7 @@ dependencies = [
  "hashbrown 0.14.3",
  "lock_api",
  "once_cell",
- "parking_lot_core",
+ "parking_lot_core 0.9.8",
 ]
 
 [[package]]
@@ -847,28 +1110,58 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "c2e66c9d817f1720209181c316d28635c050fa304f9c79e47a520882661b7308"
 
 [[package]]
+name = "der"
+version = "0.7.8"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "fffa369a668c8af7dbf8b5e56c9f744fbd399949ed171606040001947de40b1c"
+dependencies = [
+ "const-oid",
+ "pem-rfc7468",
+ "zeroize",
+]
+
+[[package]]
 name = "deranged"
-version = "0.3.8"
+version = "0.3.11"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f2696e8a945f658fd14dc3b87242e6b80cd0f36ff04ea560fa39082368847946"
+checksum = "b42b6fa04a440b495c8b04d0e71b707c585f83cb9cb28cf8cd0d976c315e31b4"
 dependencies = [
+ "powerfmt",
  "serde",
 ]
 
 [[package]]
 name = "derive_builder"
+version = "0.11.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "d07adf7be193b71cc36b193d0f5fe60b918a3a9db4dad0449f57bcfd519704a3"
+dependencies = [
+ "derive_builder_macro 0.11.2",
+]
+
+[[package]]
+name = "derive_builder"
 version = "0.12.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "8d67778784b508018359cbc8696edb3db78160bab2c2a28ba7f56ef6932997f8"
 dependencies = [
- "derive_builder_macro",
+ "derive_builder_macro 0.12.0",
+]
+
+[[package]]
+name = "derive_builder"
+version = "0.20.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "0350b5cb0331628a5916d6c5c0b72e97393b8b6b03b47a9284f4e7f5a405ffd7"
+dependencies = [
+ "derive_builder_macro 0.20.0",
 ]
 
 [[package]]
 name = "derive_builder_core"
-version = "0.12.0"
+version = "0.11.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c11bdc11a0c47bc7d37d582b5285da6849c96681023680b906673c5707af7b0f"
+checksum = "1f91d4cfa921f1c05904dc3c57b4a32c38aed3340cce209f3a6fd1478babafc4"
 dependencies = [
  "darling 0.14.4",
  "proc-macro2",
@@ -877,55 +1170,80 @@ dependencies = [
 ]
 
 [[package]]
-name = "derive_builder_macro"
+name = "derive_builder_core"
 version = "0.12.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ebcda35c7a396850a55ffeac740804b40ffec779b98fffbb1738f4033f0ee79e"
+checksum = "c11bdc11a0c47bc7d37d582b5285da6849c96681023680b906673c5707af7b0f"
 dependencies = [
- "derive_builder_core",
+ "darling 0.14.4",
+ "proc-macro2",
+ "quote",
  "syn 1.0.109",
 ]
 
 [[package]]
-name = "derive_utils"
-version = "0.11.2"
+name = "derive_builder_core"
+version = "0.20.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "532b4c15dccee12c7044f1fcad956e98410860b22231e44a3b827464797ca7bf"
+checksum = "d48cda787f839151732d396ac69e3473923d54312c070ee21e9effcaa8ca0b1d"
 dependencies = [
+ "darling 0.20.8",
  "proc-macro2",
  "quote",
+ "syn 2.0.52",
+]
+
+[[package]]
+name = "derive_builder_macro"
+version = "0.11.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "8f0314b72bed045f3a68671b3c86328386762c93f82d98c65c3cb5e5f573dd68"
+dependencies = [
+ "derive_builder_core 0.11.2",
  "syn 1.0.109",
 ]
 
 [[package]]
-name = "digest"
-version = "0.10.7"
+name = "derive_builder_macro"
+version = "0.12.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9ed9a281f7bc9b7576e61468ba615a66a5c8cfdff42420a70aa82701a3b1e292"
+checksum = "ebcda35c7a396850a55ffeac740804b40ffec779b98fffbb1738f4033f0ee79e"
 dependencies = [
- "block-buffer",
- "crypto-common",
- "subtle",
+ "derive_builder_core 0.12.0",
+ "syn 1.0.109",
 ]
 
 [[package]]
-name = "dirs"
-version = "4.0.0"
+name = "derive_builder_macro"
+version = "0.20.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ca3aa72a6f96ea37bbc5aa912f6788242832f75369bdfdadcb0e38423f100059"
+checksum = "206868b8242f27cecce124c19fd88157fbd0dd334df2587f36417bafbc85097b"
 dependencies = [
- "dirs-sys",
+ "derive_builder_core 0.20.0",
+ "syn 2.0.52",
 ]
 
 [[package]]
-name = "dirs-sys"
-version = "0.3.7"
+name = "derive_utils"
+version = "0.14.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1b1d1d91c932ef41c0f2663aa8b0ca0342d444d842c06914aa0a7e352d0bada6"
+checksum = "61bb5a1014ce6dfc2a378578509abe775a5aa06bff584a547555d9efdb81b926"
 dependencies = [
- "libc",
- "redox_users",
- "winapi",
+ "proc-macro2",
+ "quote",
+ "syn 2.0.52",
+]
+
+[[package]]
+name = "digest"
+version = "0.10.7"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "9ed9a281f7bc9b7576e61468ba615a66a5c8cfdff42420a70aa82701a3b1e292"
+dependencies = [
+ "block-buffer",
+ "const-oid",
+ "crypto-common",
+ "subtle",
 ]
 
 [[package]]
@@ -942,9 +1260,12 @@ checksum = "9ea835d29036a4087793836fa931b08837ad5e957da9e23886b29586fb9b6650"
 
 [[package]]
 name = "either"
-version = "1.8.1"
+version = "1.11.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7fcaabb2fef8c910e7f4c7ce9f67a1283a1715879a7c230ca9d6d1ae31f16d91"
+checksum = "a47c1c47d2f5964e29c61246e81db715514cd532db6b5116a25ea3c03d6780a2"
+dependencies = [
+ "serde",
+]
 
 [[package]]
 name = "email-encoding"
@@ -1005,25 +1326,32 @@ dependencies = [
 ]
 
 [[package]]
-name = "error-chain"
-version = "0.10.0"
+name = "etcetera"
+version = "0.8.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d9435d864e017c3c6afeac1654189b06cdb491cf2ff73dbf0d73b0f292f42ff8"
+checksum = "136d1b5283a1ab77bd9257427ffd09d8667ced0570b6f938942bc7568ed5b943"
 dependencies = [
- "backtrace",
+ "cfg-if",
+ "home",
+ "windows-sys 0.48.0",
 ]
 
 [[package]]
-name = "fallible-iterator"
-version = "0.3.0"
+name = "event-listener"
+version = "2.5.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2acce4a10f12dc2fb14a218589d4f1f62ef011b2d0cc4b3cb1bba8e94da14649"
+checksum = "0206175f82b8d6bf6652ff7d71a1e27fd2e4efde587fd368662814d6ec1d9ce0"
 
 [[package]]
-name = "fallible-streaming-iterator"
-version = "0.1.9"
+name = "eventsource-stream"
+version = "0.2.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7360491ce676a36bf9bb3c56c1aa791658183a54d2744120f27285738d90465a"
+checksum = "74fef4569247a5f429d9156b9d0a2599914385dd189c539334c625d8099d90ab"
+dependencies = [
+ "futures-core",
+ "nom",
+ "pin-project-lite",
+]
 
 [[package]]
 name = "fastdivide"
@@ -1047,6 +1375,15 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "25cbce373ec4653f1a01a31e8a5e5ec0c622dc27ff9c4e6606eefef5cbbed4a5"
 
 [[package]]
+name = "fid-rs"
+version = "0.1.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "6c28658c0c3420305705adde833a0d2d614207507d013a5f25707553fb2ae2cd"
+dependencies = [
+ "rayon",
+]
+
+[[package]]
 name = "file-rotate"
 version = "0.7.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -1057,13 +1394,10 @@ dependencies = [
 ]
 
 [[package]]
-name = "filenamify"
-version = "0.1.0"
+name = "finl_unicode"
+version = "1.2.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b781e8974b2cc71ac3c587c881c11ee5fe9a379f43503674e1e1052647593b4c"
-dependencies = [
- "regex",
-]
+checksum = "8fcfdc7a0362c9f4444381a9e697c79d435fe65b52a37466fc2c1184cee9edc6"
 
 [[package]]
 name = "fixedbitset"
@@ -1082,6 +1416,17 @@ dependencies = [
 ]
 
 [[package]]
+name = "flume"
+version = "0.11.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "55ac459de2512911e4b674ce33cf20befaba382d05b62b008afc1c8b57cbf181"
+dependencies = [
+ "futures-core",
+ "futures-sink",
+ "spin 0.9.8",
+]
+
+[[package]]
 name = "fnv"
 version = "1.0.7"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -1112,6 +1457,16 @@ dependencies = [
 ]
 
 [[package]]
+name = "fs2"
+version = "0.4.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "9564fc758e15025b46aa6643b1b77d047d1a56a1aea6e01002ac0c7026876213"
+dependencies = [
+ "libc",
+ "winapi",
+]
+
+[[package]]
 name = "fs4"
 version = "0.6.6"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -1122,6 +1477,12 @@ dependencies = [
 ]
 
 [[package]]
+name = "fs_extra"
+version = "1.3.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "42703706b716c37f96a77aea830392ad231f44c9e9a67872fa5548707e11b11c"
+
+[[package]]
 name = "futures"
 version = "0.3.28"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -1153,17 +1514,6 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "eb1d22c66e66d9d72e1758f0bd7d4fd0bee04cad842ee34587d68c07e45d088c"
 
 [[package]]
-name = "futures-enum"
-version = "0.1.17"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3422d14de7903a52e9dbc10ae05a7e14445ec61890100e098754e120b2bd7b1e"
-dependencies = [
- "derive_utils",
- "quote",
- "syn 1.0.109",
-]
-
-[[package]]
 name = "futures-executor"
 version = "0.3.28"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -1175,12 +1525,36 @@ dependencies = [
 ]
 
 [[package]]
+name = "futures-intrusive"
+version = "0.5.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "1d930c203dd0b6ff06e0201a4a2fe9149b43c684fd4420555b26d21b1a02956f"
+dependencies = [
+ "futures-core",
+ "lock_api",
+ "parking_lot 0.12.1",
+]
+
+[[package]]
 name = "futures-io"
 version = "0.3.29"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "8bf34a163b5c4c52d0478a4d757da8fb65cabef42ba90515efee0f6f9fa45aaa"
 
 [[package]]
+name = "futures-lite"
+version = "2.3.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "52527eb5074e35e9339c6b4e8d12600c7128b68fb25dcb9fa9dec18f7c25f3a5"
+dependencies = [
+ "fastrand 2.0.1",
+ "futures-core",
+ "futures-io",
+ "parking",
+ "pin-project-lite",
+]
+
+[[package]]
 name = "futures-macro"
 version = "0.3.29"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -1188,7 +1562,16 @@ checksum = "53b153fd91e4b0147f4aced87be237c98248656bb01050b96bf3ee89220a8ddb"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.32",
+ "syn 2.0.52",
+]
+
+[[package]]
+name = "futures-micro"
+version = "0.5.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "b460264b3593d68b16a7bc35f7bc226ddfebdf9a1c8db1ed95d5cc6b7168c826"
+dependencies = [
+ "pin-project-lite",
 ]
 
 [[package]]
@@ -1204,6 +1587,12 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "efd193069b0ddadc69c46389b740bbccdd97203899b48d09c5f7969591d6bae2"
 
 [[package]]
+name = "futures-timer"
+version = "3.0.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "e64b03909df88034c26dc1547e8970b91f98bdb65165d6a4e9110d94263dbb2c"
+
+[[package]]
 name = "futures-util"
 version = "0.3.29"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -1222,6 +1611,15 @@ dependencies = [
 ]
 
 [[package]]
+name = "fxhash"
+version = "0.2.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "c31b6d751ae2c7f11320402d34e41349dd1016f8d5d45e48c4312bc8625af50c"
+dependencies = [
+ "byteorder",
+]
+
+[[package]]
 name = "generator"
 version = "0.7.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -1246,31 +1644,63 @@ dependencies = [
 
 [[package]]
 name = "getrandom"
-version = "0.1.16"
+version = "0.2.11"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8fc3cb4d91f53b50155bdcfd23f6a4c39ae1969c2ae85982b135750cccaf5fce"
+checksum = "fe9006bed769170c11f845cf00c7c1e9092aeb3f268e007c3e760ac68008070f"
 dependencies = [
  "cfg-if",
+ "js-sys",
  "libc",
- "wasi 0.9.0+wasi-snapshot-preview1",
+ "wasi",
+ "wasm-bindgen",
 ]
 
 [[package]]
-name = "getrandom"
-version = "0.2.11"
+name = "gimli"
+version = "0.27.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "fe9006bed769170c11f845cf00c7c1e9092aeb3f268e007c3e760ac68008070f"
+checksum = "ad0a93d233ebf96623465aad4046a8d3aa4da22d4f4beba5388838c8a434bbb4"
+
+[[package]]
+name = "git2"
+version = "0.18.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "232e6a7bfe35766bf715e55a88b39a700596c0ccfd88cd3680b4cdb40d66ef70"
 dependencies = [
- "cfg-if",
+ "bitflags 2.4.0",
  "libc",
- "wasi 0.11.0+wasi-snapshot-preview1",
+ "libgit2-sys",
+ "log",
+ "openssl-probe",
+ "openssl-sys",
+ "url",
 ]
 
 [[package]]
-name = "gimli"
-version = "0.27.2"
+name = "gitlab"
+version = "0.1610.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ad0a93d233ebf96623465aad4046a8d3aa4da22d4f4beba5388838c8a434bbb4"
+checksum = "d6c802fc7eb82ff5ba2e4447c5acd0f18ec1b7bb95dbe95b6d77639e25be7cbe"
+dependencies = [
+ "async-trait",
+ "base64 0.13.1",
+ "bytes",
+ "chrono",
+ "cron",
+ "derive_builder 0.11.2",
+ "futures-util",
+ "graphql_client",
+ "http 0.2.11",
+ "itertools 0.10.5",
+ "log",
+ "percent-encoding",
+ "reqwest 0.11.22",
+ "serde",
+ "serde_json",
+ "serde_urlencoded",
+ "thiserror",
+ "url",
+]
 
 [[package]]
 name = "glob"
@@ -1280,15 +1710,15 @@ checksum = "d2fabcfbdc87f4758337ca535fb41a6d701b65693ce38287d856d1674551ec9b"
 
 [[package]]
 name = "globset"
-version = "0.4.13"
+version = "0.4.14"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "759c97c1e17c55525b57192c06a267cda0ac5210b222d6b82189a2338fa1c13d"
+checksum = "57da3b9b5b85bd66f31093f8c408b90a74431672542466497dcbdfdc02034be1"
 dependencies = [
  "aho-corasick",
  "bstr",
- "fnv",
  "log",
- "regex",
+ "regex-automata 0.4.6",
+ "regex-syntax 0.8.2",
 ]
 
 [[package]]
@@ -1302,16 +1732,64 @@ dependencies = [
 ]
 
 [[package]]
+name = "graphql-introspection-query"
+version = "0.2.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "7f2a4732cf5140bd6c082434494f785a19cfb566ab07d1382c3671f5812fed6d"
+dependencies = [
+ "serde",
+]
+
+[[package]]
 name = "graphql-parser"
-version = "0.3.0"
+version = "0.4.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d1abd4ce5247dfc04a03ccde70f87a048458c9356c7e41d21ad8c407b3dde6f2"
+checksum = "d2ebc8013b4426d5b81a4364c419a95ed0b404af2b82e2457de52d9348f0e474"
 dependencies = [
- "combine",
+ "combine 3.8.1",
  "thiserror",
 ]
 
 [[package]]
+name = "graphql_client"
+version = "0.11.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "7fc16d75d169fddb720d8f1c7aed6413e329e1584079b9734ff07266a193f5bc"
+dependencies = [
+ "graphql_query_derive",
+ "serde",
+ "serde_json",
+]
+
+[[package]]
+name = "graphql_client_codegen"
+version = "0.11.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "f290ecfa3bea3e8a157899dc8a1d96ee7dd6405c18c8ddd213fc58939d18a0e9"
+dependencies = [
+ "graphql-introspection-query",
+ "graphql-parser",
+ "heck",
+ "lazy_static",
+ "proc-macro2",
+ "quote",
+ "serde",
+ "serde_json",
+ "syn 1.0.109",
+]
+
+[[package]]
+name = "graphql_query_derive"
+version = "0.11.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "a755cc59cda2641ea3037b4f9f7ef40471c329f55c1fa2db6fa0bb7ae6c1f7ce"
+dependencies = [
+ "graphql_client_codegen",
+ "proc-macro2",
+ "syn 1.0.109",
+]
+
+[[package]]
 name = "h2"
 version = "0.3.19"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -1322,7 +1800,7 @@ dependencies = [
  "futures-core",
  "futures-sink",
  "futures-util",
- "http",
+ "http 0.2.11",
  "indexmap 1.9.3",
  "slab",
  "tokio",
@@ -1331,19 +1809,35 @@ dependencies = [
 ]
 
 [[package]]
-name = "hashbrown"
-version = "0.12.3"
+name = "h2"
+version = "0.4.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8a9ee70c43aaf417c914396645a0fa852624801b24ebb7ae78fe8272889ac888"
+checksum = "816ec7294445779408f36fe57bc5b7fc1cf59664059096c65f905c1c61f58069"
+dependencies = [
+ "bytes",
+ "fnv",
+ "futures-core",
+ "futures-sink",
+ "futures-util",
+ "http 1.1.0",
+ "indexmap 2.2.6",
+ "slab",
+ "tokio",
+ "tokio-util",
+ "tracing",
+]
+
+[[package]]
+name = "hash-ids"
+version = "0.2.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "9289cbc8064a1c2f505c92d4d17f7fe5050d487728c19cee7936bd204069bc9d"
 
 [[package]]
 name = "hashbrown"
-version = "0.13.1"
+version = "0.12.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "33ff8ae62cd3a9102e5637afc8452c55acf3844001bd5374e0b0bd7b6616c038"
-dependencies = [
- "ahash",
-]
+checksum = "8a9ee70c43aaf417c914396645a0fa852624801b24ebb7ae78fe8272889ac888"
 
 [[package]]
 name = "hashbrown"
@@ -1366,15 +1860,14 @@ dependencies = [
 
 [[package]]
 name = "headers"
-version = "0.3.8"
+version = "0.4.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f3e372db8e5c0d213e0cd0b9be18be2aca3d44cf2fe30a9d46a65581cd454584"
+checksum = "322106e6bd0cba2d5ead589ddb8150a13d7c4217cf80d7c4f682ca994ccc6aa9"
 dependencies = [
- "base64 0.13.1",
- "bitflags 1.3.2",
+ "base64 0.21.5",
  "bytes",
  "headers-core",
- "http",
+ "http 1.1.0",
  "httpdate",
  "mime",
  "sha1",
@@ -1382,11 +1875,11 @@ dependencies = [
 
 [[package]]
 name = "headers-core"
-version = "0.2.0"
+version = "0.3.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e7f66481bfee273957b1f20485a4ff3362987f85b2c236580d81b4eb7a326429"
+checksum = "54b4a22553d4242c49fddb9ba998a99962b5cc6f22cb5a3482bec22522403ce4"
 dependencies = [
- "http",
+ "http 1.1.0",
 ]
 
 [[package]]
@@ -1394,6 +1887,9 @@ name = "heck"
 version = "0.4.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "95505c38b4572b2d910cecb0281560f54b440a19336cbbcb27bf6ce6adc6f5a8"
+dependencies = [
+ "unicode-segmentation",
+]
 
 [[package]]
 name = "hermit-abi"
@@ -1417,6 +1913,24 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "7f24254aa9a54b5c858eaee2f5bccdb46aaf0e486a595ed5fd8f86ba55232a70"
 
 [[package]]
+name = "hkdf"
+version = "0.12.4"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "7b5f8eb2ad728638ea2c7d47a21db23b7b58a72ed6a38256b8a1849f15fbbdf7"
+dependencies = [
+ "hmac",
+]
+
+[[package]]
+name = "hmac"
+version = "0.12.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "6c49c37c09c17a53d937dfbb742eb3a961d65a994e6bcdcf37e7399d0cc8ab5e"
+dependencies = [
+ "digest",
+]
+
+[[package]]
 name = "home"
 version = "0.5.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -1454,17 +1968,31 @@ dependencies = [
 ]
 
 [[package]]
+name = "http"
+version = "1.1.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "21b9ddb458710bc376481b842f5da65cdf31522de232c1ca8146abce2a358258"
+dependencies = [
+ "bytes",
+ "fnv",
+ "itoa",
+]
+
+[[package]]
 name = "http-api-bindings"
-version = "0.8.3"
+version = "0.11.1"
 dependencies = [
  "anyhow",
+ "async-openai",
+ "async-stream",
  "async-trait",
  "futures",
- "reqwest",
+ "reqwest 0.12.4",
+ "reqwest-eventsource",
  "serde",
  "serde_json",
+ "tabby-common",
  "tabby-inference",
- "tokio",
  "tracing",
 ]
 
@@ -1475,15 +2003,38 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "d5f38f16d184e36f2408a55281cd658ecbd3ca05cce6d6510a176eca393e26d1"
 dependencies = [
  "bytes",
- "http",
+ "http 0.2.11",
+ "pin-project-lite",
+]
+
+[[package]]
+name = "http-body"
+version = "1.0.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "1cac85db508abc24a2e48553ba12a996e87244a0395ce011e62b37158745d643"
+dependencies = [
+ "bytes",
+ "http 1.1.0",
+]
+
+[[package]]
+name = "http-body-util"
+version = "0.1.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "0475f8b2ac86659c21b64320d5d653f9efe42acd2a4e560073ec61a155a34f1d"
+dependencies = [
+ "bytes",
+ "futures-core",
+ "http 1.1.0",
+ "http-body 1.0.0",
  "pin-project-lite",
 ]
 
 [[package]]
 name = "http-range-header"
-version = "0.3.0"
+version = "0.4.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0bfe8eed0a9285ef776bb792479ea3834e8b94e13d615c2f66d03dd50a435a29"
+checksum = "3ce4ef31cda248bbdb6e6820603b82dfcd9e833db65a43e997a0ccec777d11fe"
 
 [[package]]
 name = "httparse"
@@ -1513,9 +2064,9 @@ dependencies = [
  "futures-channel",
  "futures-core",
  "futures-util",
- "h2",
- "http",
- "http-body",
+ "h2 0.3.19",
+ "http 0.2.11",
+ "http-body 0.4.5",
  "httparse",
  "httpdate",
  "itoa",
@@ -1528,28 +2079,106 @@ dependencies = [
 ]
 
 [[package]]
+name = "hyper"
+version = "1.3.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "fe575dd17d0862a9a33781c8c4696a55c320909004a67a00fb286ba8b1bc496d"
+dependencies = [
+ "bytes",
+ "futures-channel",
+ "futures-util",
+ "h2 0.4.4",
+ "http 1.1.0",
+ "http-body 1.0.0",
+ "httparse",
+ "httpdate",
+ "itoa",
+ "pin-project-lite",
+ "smallvec",
+ "tokio",
+ "want",
+]
+
+[[package]]
+name = "hyper-rustls"
+version = "0.24.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "ec3efd23720e2049821a693cbc7e65ea87c72f1c58ff2f9522ff332b1491e590"
+dependencies = [
+ "futures-util",
+ "http 0.2.11",
+ "hyper 0.14.27",
+ "rustls 0.21.10",
+ "tokio",
+ "tokio-rustls 0.24.1",
+]
+
+[[package]]
+name = "hyper-rustls"
+version = "0.26.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "a0bea761b46ae2b24eb4aef630d8d1c398157b6fc29e6350ecf090a0b70c952c"
+dependencies = [
+ "futures-util",
+ "http 1.1.0",
+ "hyper 1.3.1",
+ "hyper-util",
+ "log",
+ "rustls 0.22.4",
+ "rustls-native-certs",
+ "rustls-pki-types",
+ "tokio",
+ "tokio-rustls 0.25.0",
+ "tower-service",
+]
+
+[[package]]
 name = "hyper-timeout"
-version = "0.4.1"
+version = "0.5.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "bbb958482e8c7be4bc3cf272a766a2b0bf1a6755e7a6ae777f017a31d11b13b1"
+checksum = "3203a961e5c83b6f5498933e78b6b263e208c197b63e9c6c53cc82ffd3f63793"
 dependencies = [
- "hyper",
+ "hyper 1.3.1",
+ "hyper-util",
  "pin-project-lite",
  "tokio",
- "tokio-io-timeout",
+ "tower-service",
 ]
 
 [[package]]
 name = "hyper-tls"
-version = "0.5.0"
+version = "0.6.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d6183ddfa99b85da61a140bea0efc93fdf56ceaa041b37d553518030827f9905"
+checksum = "70206fc6890eaca9fde8a0bf71caa2ddfc9fe045ac9e5c70df101a7dbde866e0"
 dependencies = [
  "bytes",
- "hyper",
+ "http-body-util",
+ "hyper 1.3.1",
+ "hyper-util",
  "native-tls",
  "tokio",
  "tokio-native-tls",
+ "tower-service",
+]
+
+[[package]]
+name = "hyper-util"
+version = "0.1.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "ca38ef113da30126bbff9cd1705f9273e15d45498615d138b0c20279ac7a76aa"
+dependencies = [
+ "bytes",
+ "futures-channel",
+ "futures-util",
+ "http 1.1.0",
+ "http-body 1.0.0",
+ "hyper 1.3.1",
+ "pin-project-lite",
+ "socket2 0.5.5",
+ "tokio",
+ "tower",
+ "tower-service",
+ "tracing",
 ]
 
 [[package]]
@@ -1609,41 +2238,21 @@ checksum = "cb56e1aa765b4b4f3aadfab769793b7087bb03a4ea4920644a6d238e2df5b9ed"
 
 [[package]]
 name = "ignore"
-version = "0.4.20"
+version = "0.4.22"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "dbe7873dab538a9a44ad79ede1faf5f30d49f9a5c883ddbab48bce81b64b7492"
+checksum = "b46810df39e66e925525d6e38ce1e7f6e1d208f72dc39757880fcb66e2c58af1"
 dependencies = [
+ "crossbeam-deque",
  "globset",
- "lazy_static",
  "log",
  "memchr",
- "regex",
+ "regex-automata 0.4.6",
  "same-file",
- "thread_local",
  "walkdir",
  "winapi-util",
 ]
 
 [[package]]
-name = "include_dir"
-version = "0.7.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "18762faeff7122e89e0857b02f7ce6fcc0d101d5e9ad2ad7846cc01d61b7f19e"
-dependencies = [
- "include_dir_macros",
-]
-
-[[package]]
-name = "include_dir_macros"
-version = "0.7.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b139284b5cf57ecfa712bcc66950bb635b31aff41c188e8a4cfc758eca374a3f"
-dependencies = [
- "proc-macro2",
- "quote",
-]
-
-[[package]]
 name = "indexmap"
 version = "1.9.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -1651,17 +2260,17 @@ checksum = "bd070e393353796e801d209ad339e89596eb4c8d430d18ede6a1cced8fafbd99"
 dependencies = [
  "autocfg",
  "hashbrown 0.12.3",
- "serde",
 ]
 
 [[package]]
 name = "indexmap"
-version = "2.0.1"
+version = "2.2.6"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ad227c3af19d4914570ad36d30409928b75967c298feb9ea1969db3a610bb14e"
+checksum = "168fb715dda47215e360912c096649d23d58bf392ac62f73919e831745e40f26"
 dependencies = [
  "equivalent",
  "hashbrown 0.14.3",
+ "serde",
 ]
 
 [[package]]
@@ -1723,6 +2332,16 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "12b6ee2129af8d4fb011108c73d99a1b83a85977f23b82460c0ae2e25bb4b57f"
 
 [[package]]
+name = "iri-string"
+version = "0.7.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "7f5f6c2df22c009ac44f6f1499308e7a3ac7ba42cd2378475cc691510e1eef1b"
+dependencies = [
+ "memchr",
+ "serde",
+]
+
+[[package]]
 name = "itertools"
 version = "0.10.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -1741,21 +2360,19 @@ dependencies = [
 ]
 
 [[package]]
-name = "itoa"
-version = "1.0.6"
+name = "itertools"
+version = "0.12.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "453ad9f582a441959e5f0d088b02ce04cfe8d51a8eaf077f12ac6d3e94164ca6"
+checksum = "ba291022dbbd398a455acf126c1e341954079855bc60dfdda641363bd6922569"
+dependencies = [
+ "either",
+]
 
 [[package]]
-name = "job_scheduler"
-version = "1.2.1"
+name = "itoa"
+version = "1.0.6"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "51f368c9c76dde2282714ae32dc274b79c27527a0c06c816f6dda048904d0d7c"
-dependencies = [
- "chrono",
- "cron 0.6.1",
- "uuid 0.8.2",
-]
+checksum = "453ad9f582a441959e5f0d088b02ce04cfe8d51a8eaf077f12ac6d3e94164ca6"
 
 [[package]]
 name = "jobserver"
@@ -1791,31 +2408,32 @@ dependencies = [
 
 [[package]]
 name = "juniper"
-version = "0.15.11"
+version = "0.16.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "52adf17d43d0b526eed31fac15d9312941c5c2558ffbfb105811690b96d6e2f1"
+checksum = "943306315b1a7a03d27af9dfb0c288d9f4da8830c17df4bceb7d50a47da0982c"
 dependencies = [
  "async-trait",
- "bson",
+ "auto_enums",
  "chrono",
  "fnv",
  "futures",
- "futures-enum",
  "graphql-parser",
- "indexmap 1.9.3",
+ "indexmap 2.2.6",
  "juniper_codegen",
  "serde",
  "smartstring",
  "static_assertions",
- "url",
- "uuid 0.8.2",
+ "void",
 ]
 
 [[package]]
-name = "juniper-axum"
-version = "0.8.3"
+name = "juniper_axum"
+version = "0.1.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "1f81e883bc6ffb2e5a3cc7276bfe9519c49108bdc1330d5aab1b79cb088f2f26"
 dependencies = [
  "axum",
+ "bytes",
  "juniper",
  "juniper_graphql_ws",
  "serde",
@@ -1824,21 +2442,21 @@ dependencies = [
 
 [[package]]
 name = "juniper_codegen"
-version = "0.15.9"
+version = "0.16.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "aee97671061ad50301ba077d054d295e01d31a1868fbd07902db651f987e71db"
+checksum = "760dbe46660494d469023d661e8d268f413b2cb68c999975dcc237407096a693"
 dependencies = [
- "proc-macro-error",
  "proc-macro2",
  "quote",
- "syn 1.0.109",
+ "syn 2.0.52",
+ "url",
 ]
 
 [[package]]
 name = "juniper_graphql_ws"
-version = "0.3.0"
+version = "0.4.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ed5526c2f2a9c40f08841dc559971641fdd71c008a265745d18bb0c8b7e105b3"
+checksum = "709eb11c716072f5c9fcbfa705dd684bd3c070943102f9fc56ccb812a36ba017"
 dependencies = [
  "juniper",
  "juniper_subscriptions",
@@ -1848,9 +2466,9 @@ dependencies = [
 
 [[package]]
 name = "juniper_subscriptions"
-version = "0.16.0"
+version = "0.17.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2983b26a1e12b691c17432aee3881d8bec4a94d6c64bc933c0eaf6d9e3429f13"
+checksum = "e6208a839bd4ca2131924a238311d088d6604ea267c0917903392bad7b70a92c"
 dependencies = [
  "futures",
  "juniper",
@@ -1867,10 +2485,27 @@ dependencies = [
 ]
 
 [[package]]
+name = "kv"
+version = "0.24.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "620727085ac39ee9650b373fe6d8073a0aee6f99e52a9c72b25f7671078039ab"
+dependencies = [
+ "pin-project-lite",
+ "serde",
+ "serde_json",
+ "sled",
+ "thiserror",
+ "toml 0.5.11",
+]
+
+[[package]]
 name = "lazy_static"
 version = "1.4.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "e2abad23fbc42b3700f2f279844dc832adb2b2eb069b2df918f455c4e18cc646"
+dependencies = [
+ "spin 0.5.2",
+]
 
 [[package]]
 name = "lettre"
@@ -1878,21 +2513,24 @@ version = "0.11.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "f5aaf628956b6b0852e12ac3505d20d7a12ecc1e32d5ea921f002af4a74036a5"
 dependencies = [
+ "async-trait",
  "base64 0.21.5",
  "chumsky",
  "email-encoding",
  "email_address",
  "fastrand 2.0.1",
+ "futures-io",
  "futures-util",
  "hostname",
  "httpdate",
  "idna 0.5.0",
  "mime",
  "native-tls",
- "nom 7.1.3",
+ "nom",
  "quoted_printable",
  "socket2 0.5.5",
  "tokio",
+ "tokio-native-tls",
  "url",
 ]
 
@@ -1909,6 +2547,20 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "a08173bc88b7955d1b3145aa561539096c421ac8debde8cbc3612ec635fee29b"
 
 [[package]]
+name = "libgit2-sys"
+version = "0.16.2+1.7.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "ee4126d8b4ee5c9d9ea891dd875cfdc1e9d0950437179104b183d7d8a74d24e8"
+dependencies = [
+ "cc",
+ "libc",
+ "libssh2-sys",
+ "libz-sys",
+ "openssl-sys",
+ "pkg-config",
+]
+
+[[package]]
 name = "libloading"
 version = "0.7.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -1919,6 +2571,12 @@ dependencies = [
 ]
 
 [[package]]
+name = "libm"
+version = "0.2.8"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "4ec2a862134d2a7d32d7983ddcdd1c4923530833c9f2ea1a44fc5fa473989058"
+
+[[package]]
 name = "libsqlite3-sys"
 version = "0.27.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -1930,6 +2588,32 @@ dependencies = [
 ]
 
 [[package]]
+name = "libssh2-sys"
+version = "0.3.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "2dc8a030b787e2119a731f1951d6a773e2280c660f8ec4b0f5e1505a386e71ee"
+dependencies = [
+ "cc",
+ "libc",
+ "libz-sys",
+ "openssl-sys",
+ "pkg-config",
+ "vcpkg",
+]
+
+[[package]]
+name = "libz-sys"
+version = "1.1.16"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "5e143b5e666b2695d28f6bca6497720813f699c9602dd7f5cac91008b8ada7f9"
+dependencies = [
+ "cc",
+ "libc",
+ "pkg-config",
+ "vcpkg",
+]
+
+[[package]]
 name = "link-cplusplus"
 version = "1.0.8"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -1958,14 +2642,14 @@ checksum = "da2479e8c062e40bf0066ffa0bc823de0a9368974af99c9f6df941d2c231e03f"
 
 [[package]]
 name = "llama-cpp-bindings"
-version = "0.8.3"
+version = "0.11.1"
 dependencies = [
  "async-stream",
  "async-trait",
  "cmake",
  "cxx",
  "cxx-build",
- "derive_builder",
+ "derive_builder 0.12.0",
  "futures",
  "tabby-inference",
  "tokio",
@@ -2003,6 +2687,15 @@ dependencies = [
 ]
 
 [[package]]
+name = "louds-rs"
+version = "0.4.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "e16a91fb20f74b6d9a758a0103a2884af525a2fa34fbfe19f4b3c5482a4a54e9"
+dependencies = [
+ "fid-rs",
+]
+
+[[package]]
 name = "lru"
 version = "0.11.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -2018,15 +2711,6 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "3ea9b256699eda7b0387ffbc776dd625e28bde3918446381781245b7a50349d8"
 
 [[package]]
-name = "mach2"
-version = "0.4.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6d0d1830bcd151a6fc4aea1369af235b36c1528fe976b8ff678683c9995eade8"
-dependencies = [
- "libc",
-]
-
-[[package]]
 name = "match_cfg"
 version = "0.1.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -2057,6 +2741,16 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "b87248edafb776e59e6ee64a79086f65890d3510f2c656c000bf2a7e8a0aea40"
 
 [[package]]
+name = "md-5"
+version = "0.10.6"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "d89e7ee0cfbedfc4da3340218492196241d89eefb6dab27de5df917a6d2e78cf"
+dependencies = [
+ "cfg-if",
+ "digest",
+]
+
+[[package]]
 name = "measure_time"
 version = "0.8.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -2068,9 +2762,9 @@ dependencies = [
 
 [[package]]
 name = "memchr"
-version = "2.6.2"
+version = "2.7.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5486aed0026218e61b8a01d5fbd5a0a134649abb71a0e53b7bc088529dced86e"
+checksum = "6c8640c5d730cb13ebd907d8d04b52f55ac9a2eec55b440c8892f40d56c76c1d"
 
 [[package]]
 name = "memmap2"
@@ -2098,53 +2792,40 @@ dependencies = [
 
 [[package]]
 name = "metrics"
-version = "0.21.1"
+version = "0.22.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "fde3af1a009ed76a778cb84fdef9e7dbbdf5775ae3e4cc1f434a6a307f6f76c5"
+checksum = "2be3cbd384d4e955b231c895ce10685e3d8260c5ccffae898c96c723b0772835"
 dependencies = [
  "ahash",
- "metrics-macros",
  "portable-atomic",
 ]
 
 [[package]]
 name = "metrics-exporter-prometheus"
-version = "0.12.1"
+version = "0.13.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8a4964177ddfdab1e3a2b37aec7cf320e14169abb0ed73999f558136409178d5"
+checksum = "9bf4e7146e30ad172c42c39b3246864bd2d3c6396780711a1baf749cfe423e21"
 dependencies = [
  "base64 0.21.5",
- "hyper",
- "indexmap 1.9.3",
+ "hyper 0.14.27",
+ "indexmap 2.2.6",
  "ipnet",
  "metrics",
  "metrics-util",
  "quanta",
  "thiserror",
  "tokio",
- "tracing",
-]
-
-[[package]]
-name = "metrics-macros"
-version = "0.7.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ddece26afd34c31585c74a4db0630c376df271c285d682d1e55012197830b6df"
-dependencies = [
- "proc-macro2",
- "quote",
- "syn 2.0.32",
 ]
 
 [[package]]
 name = "metrics-util"
-version = "0.15.1"
+version = "0.16.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4de2ed6e491ed114b40b732e4d1659a9d53992ebd87490c44a6ffe23739d973e"
+checksum = "8b07a5eb561b8cbc16be2d216faf7757f9baf3bfb94dbb0fae3df8387a5bb47f"
 dependencies = [
  "crossbeam-epoch",
  "crossbeam-utils",
- "hashbrown 0.13.1",
+ "hashbrown 0.14.3",
  "metrics",
  "num_cpus",
  "quanta",
@@ -2209,17 +2890,11 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "8f3d0b296e374a4e6f3c7b0a1f5a51d748a0d34c85e7dc48fc3fa9a87657fe09"
 dependencies = [
  "libc",
- "wasi 0.11.0+wasi-snapshot-preview1",
+ "wasi",
  "windows-sys 0.48.0",
 ]
 
 [[package]]
-name = "multimap"
-version = "0.8.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e5ce46fe64a9d73be07dcbe690a38ce1b293be448fd8ce1e6c1b8062c9f72c6a"
-
-[[package]]
 name = "murmurhash32"
 version = "0.3.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -2251,21 +2926,23 @@ checksum = "c9a91b326434fca226707ed8ec1fd22d4e1c96801abdf10c412afdc7d97116e0"
 
 [[package]]
 name = "nom"
-version = "4.1.1"
+version = "7.1.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9c349f68f25f596b9f44cf0e7c69752a5c633b0550c3ff849518bfba0233774a"
+checksum = "d273983c5a657a70a3e8f2a01329822f3b8c8172b73826411a55751e404a0a4a"
 dependencies = [
  "memchr",
+ "minimal-lexical",
 ]
 
 [[package]]
-name = "nom"
-version = "7.1.3"
+name = "npm-package-json"
+version = "0.1.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d273983c5a657a70a3e8f2a01329822f3b8c8172b73826411a55751e404a0a4a"
+checksum = "df163f89771bd6654d5e116952b9ab2d0b952cd8e3315ddaa615f6d2bfbb1fde"
 dependencies = [
- "memchr",
- "minimal-lexical",
+ "serde",
+ "serde_json",
+ "thiserror",
 ]
 
 [[package]]
@@ -2288,6 +2965,27 @@ dependencies = [
 ]
 
 [[package]]
+name = "nucleo"
+version = "0.5.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "5262af4c94921c2646c5ac6ff7900c2af9cbb08dc26a797e18130a7019c039d4"
+dependencies = [
+ "nucleo-matcher",
+ "parking_lot 0.12.1",
+ "rayon",
+]
+
+[[package]]
+name = "nucleo-matcher"
+version = "0.3.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "bf33f538733d1a5a3494b836ba913207f14d9d4a1d3cd67030c5061bdd2cac85"
+dependencies = [
+ "memchr",
+ "unicode-segmentation",
+]
+
+[[package]]
 name = "num-bigint"
 version = "0.4.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -2299,6 +2997,29 @@ dependencies = [
 ]
 
 [[package]]
+name = "num-bigint-dig"
+version = "0.8.4"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "dc84195820f291c7697304f3cbdadd1cb7199c0efc917ff5eafd71225c136151"
+dependencies = [
+ "byteorder",
+ "lazy_static",
+ "libm",
+ "num-integer",
+ "num-iter",
+ "num-traits",
+ "rand",
+ "smallvec",
+ "zeroize",
+]
+
+[[package]]
+name = "num-conv"
+version = "0.1.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "51d515d32fb182ee37cda2ccdcb92950d6a3c2893aa280e540671c2cd0f3b1d9"
+
+[[package]]
 name = "num-derive"
 version = "0.3.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -2320,12 +3041,24 @@ dependencies = [
 ]
 
 [[package]]
+name = "num-iter"
+version = "0.1.43"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "7d03e6c028c5dc5cac6e2dec0efda81fc887605bb3d884578bb6d6bf7514e252"
+dependencies = [
+ "autocfg",
+ "num-integer",
+ "num-traits",
+]
+
+[[package]]
 name = "num-traits"
 version = "0.2.17"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "39e3200413f237f41ab11ad6d161bc7239c84dcb631773ccd7de3dfe4b5c267c"
 dependencies = [
  "autocfg",
+ "libm",
 ]
 
 [[package]]
@@ -2386,10 +3119,49 @@ dependencies = [
 ]
 
 [[package]]
+name = "octocrab"
+version = "0.38.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "68a8a3df00728324ad654ecd1ed449a60157c55b7ff8c109af3a35989687c367"
+dependencies = [
+ "arc-swap",
+ "async-trait",
+ "base64 0.22.0",
+ "bytes",
+ "cfg-if",
+ "chrono",
+ "either",
+ "futures",
+ "futures-util",
+ "http 1.1.0",
+ "http-body 1.0.0",
+ "http-body-util",
+ "hyper 1.3.1",
+ "hyper-rustls 0.26.0",
+ "hyper-timeout",
+ "hyper-util",
+ "jsonwebtoken",
+ "once_cell",
+ "percent-encoding",
+ "pin-project",
+ "secrecy",
+ "serde",
+ "serde_json",
+ "serde_path_to_error",
+ "serde_urlencoded",
+ "snafu",
+ "tokio",
+ "tower",
+ "tower-http",
+ "tracing",
+ "url",
+]
+
+[[package]]
 name = "once_cell"
-version = "1.18.0"
+version = "1.19.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "dd8b5dd2ae5ed71462c540258bedcb51965123ad7e7ccf4b9a8cafaa4a63576d"
+checksum = "3fdb12b2476b595f9358c5161aa467c2438859caa136dec86c26fdd2efe17b92"
 
 [[package]]
 name = "oneshot"
@@ -2423,7 +3195,7 @@ checksum = "a948666b637a0f465e8564c73e89d4dde00d72d4d473cc972f390fc3dcee7d9c"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.32",
+ "syn 2.0.52",
 ]
 
 [[package]]
@@ -2465,44 +3237,11 @@ dependencies = [
 ]
 
 [[package]]
-name = "opentelemetry-otlp"
-version = "0.11.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d1c928609d087790fc936a1067bdc310ae702bdf3b090c3f281b713622c8bbde"
-dependencies = [
- "async-trait",
- "futures",
- "futures-util",
- "http",
- "opentelemetry",
- "opentelemetry-proto",
- "prost",
- "thiserror",
- "tokio",
- "tonic",
-]
-
-[[package]]
-name = "opentelemetry-proto"
-version = "0.1.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d61a2f56df5574508dd86aaca016c917489e589ece4141df1b5e349af8d66c28"
-dependencies = [
- "futures",
- "futures-util",
- "opentelemetry",
- "prost",
- "tonic",
- "tonic-build",
-]
-
-[[package]]
 name = "opentelemetry_api"
 version = "0.18.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "c24f96e21e7acc813c7a8394ee94978929db2bcc46cf6b5014fc612bf7760c22"
 dependencies = [
- "fnv",
  "futures-channel",
  "futures-util",
  "indexmap 1.9.3",
@@ -2520,18 +3259,14 @@ checksum = "1ca41c4933371b61c2a2f214bf16931499af4ec90543604ec828f7a625c09113"
 dependencies = [
  "async-trait",
  "crossbeam-channel",
- "dashmap",
- "fnv",
  "futures-channel",
  "futures-executor",
  "futures-util",
  "once_cell",
  "opentelemetry_api",
  "percent-encoding",
- "rand 0.8.5",
+ "rand",
  "thiserror",
- "tokio",
- "tokio-stream",
 ]
 
 [[package]]
@@ -2550,13 +3285,56 @@ dependencies = [
 ]
 
 [[package]]
+name = "package-lock-json-parser"
+version = "0.4.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "8707d34f4a67f9c733970b8afc7b82d8623bc0746ff17b460aa6f2ea5ef487d3"
+dependencies = [
+ "serde",
+ "serde_json",
+ "thiserror",
+ "tracing",
+]
+
+[[package]]
+name = "parking"
+version = "2.2.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "bb813b8af86854136c6922af0598d719255ecb2179515e6e7730d468f05c9cae"
+
+[[package]]
+name = "parking_lot"
+version = "0.11.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "7d17b78036a60663b797adeaee46f5c9dfebb86948d1255007a1d6be0271ff99"
+dependencies = [
+ "instant",
+ "lock_api",
+ "parking_lot_core 0.8.6",
+]
+
+[[package]]
 name = "parking_lot"
 version = "0.12.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "3742b2c103b9f06bc9fff0a37ff4912935851bee6d36f3c02bcc755bcfec228f"
 dependencies = [
  "lock_api",
- "parking_lot_core",
+ "parking_lot_core 0.9.8",
+]
+
+[[package]]
+name = "parking_lot_core"
+version = "0.8.6"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "60a2cfe6f0ad2bfc16aefa463b497d5c7a5ecd44a23efa72aa342d90177356dc"
+dependencies = [
+ "cfg-if",
+ "instant",
+ "libc",
+ "redox_syscall 0.2.16",
+ "smallvec",
+ "winapi",
 ]
 
 [[package]]
@@ -2573,13 +3351,23 @@ dependencies = [
 ]
 
 [[package]]
+name = "parse-git-url"
+version = "0.5.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "9cd626725d3855a68fdede6483fae43429129bf246f42d8db598911c8036cf47"
+dependencies = [
+ "tracing",
+ "url",
+]
+
+[[package]]
 name = "password-hash"
 version = "0.5.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "346f04948ba92c43e8469c1ee6736c7563d71012b17d40745260fe106aac2166"
 dependencies = [
  "base64ct",
- "rand_core 0.6.4",
+ "rand_core",
  "subtle",
 ]
 
@@ -2600,6 +3388,15 @@ dependencies = [
 ]
 
 [[package]]
+name = "pem-rfc7468"
+version = "0.7.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "88b39c9bfcfc231068454382784bb460aae594343fb030d46e9f50a645418412"
+dependencies = [
+ "base64ct",
+]
+
+[[package]]
 name = "percent-encoding"
 version = "2.3.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -2636,7 +3433,7 @@ dependencies = [
  "pest_meta",
  "proc-macro2",
  "quote",
- "syn 2.0.32",
+ "syn 2.0.52",
 ]
 
 [[package]]
@@ -2677,7 +3474,7 @@ checksum = "4359fd9c9171ec6e8c62926d6faaf553a8dc3f64e1507e76da7911b4f6a04405"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.32",
+ "syn 2.0.52",
 ]
 
 [[package]]
@@ -2693,6 +3490,27 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "8b870d8c151b6f2fb93e84a13146138f05d02ed11c7e7c54f8826aaaf7c9f184"
 
 [[package]]
+name = "pkcs1"
+version = "0.7.5"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "c8ffb9f10fa047879315e6625af03c164b16962a5368d724ed16323b68ace47f"
+dependencies = [
+ "der",
+ "pkcs8",
+ "spki",
+]
+
+[[package]]
+name = "pkcs8"
+version = "0.10.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "f950b2377845cebe5cf8b5165cb3cc1a5e0fa5cfa3e1f7f55707d8fd82e0a7b7"
+dependencies = [
+ "der",
+ "spki",
+]
+
+[[package]]
 name = "pkg-config"
 version = "0.3.27"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -2705,20 +3523,16 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "dc59d1bcc64fc5d021d67521f818db868368028108d37f0e98d74e33f68297b5"
 
 [[package]]
-name = "ppv-lite86"
-version = "0.2.17"
+name = "powerfmt"
+version = "0.2.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5b40af805b3121feab8a3c29f04d8ad262fa8e0561883e7653e024ae4479e6de"
+checksum = "439ee305def115ba05938db6eb1644ff94165c5ab5e9420d1c1bcedbba909391"
 
 [[package]]
-name = "prettyplease"
-version = "0.1.25"
+name = "ppv-lite86"
+version = "0.2.17"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6c8646e95016a7a6c4adea95bafa8a16baab64b583356217f2c85db4a39d9a86"
-dependencies = [
- "proc-macro2",
- "syn 1.0.109",
-]
+checksum = "5b40af805b3121feab8a3c29f04d8ad262fa8e0561883e7653e024ae4479e6de"
 
 [[package]]
 name = "proc-macro-error"
@@ -2746,68 +3560,14 @@ dependencies = [
 
 [[package]]
 name = "proc-macro2"
-version = "1.0.66"
+version = "1.0.78"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "18fb31db3f9bddb2ea821cde30a9f70117e3f119938b5ee630b7403aa6e2ead9"
+checksum = "e2422ad645d89c99f8f3e6b88a9fdeca7fabeac836b1002371c4367c8f984aae"
 dependencies = [
  "unicode-ident",
 ]
 
 [[package]]
-name = "prost"
-version = "0.11.9"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0b82eaa1d779e9a4bc1c3217db8ffbeabaae1dca241bf70183242128d48681cd"
-dependencies = [
- "bytes",
- "prost-derive",
-]
-
-[[package]]
-name = "prost-build"
-version = "0.11.9"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "119533552c9a7ffacc21e099c24a0ac8bb19c2a2a3f363de84cd9b844feab270"
-dependencies = [
- "bytes",
- "heck",
- "itertools 0.10.5",
- "lazy_static",
- "log",
- "multimap",
- "petgraph",
- "prettyplease",
- "prost",
- "prost-types",
- "regex",
- "syn 1.0.109",
- "tempfile",
- "which",
-]
-
-[[package]]
-name = "prost-derive"
-version = "0.11.9"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e5d2d8d10f3c6ded6da8b05b5fb3b8a5082514344d56c9f871412d29b4e075b4"
-dependencies = [
- "anyhow",
- "itertools 0.10.5",
- "proc-macro2",
- "quote",
- "syn 1.0.109",
-]
-
-[[package]]
-name = "prost-types"
-version = "0.11.9"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "213622a1460818959ac1181aaeb2dc9c7f63df720db7d788b3e24eacd1983e13"
-dependencies = [
- "prost",
-]
-
-[[package]]
 name = "psm"
 version = "0.1.21"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -2818,25 +3578,30 @@ dependencies = [
 
 [[package]]
 name = "quanta"
-version = "0.11.1"
+version = "0.12.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a17e662a7a8291a865152364c20c7abc5e60486ab2001e8ec10b24862de0b9ab"
+checksum = "8e5167a477619228a0b284fac2674e3c388cba90631d7b7de620e6f1fcd08da5"
 dependencies = [
  "crossbeam-utils",
  "libc",
- "mach2",
  "once_cell",
  "raw-cpuid",
- "wasi 0.11.0+wasi-snapshot-preview1",
+ "wasi",
  "web-sys",
  "winapi",
 ]
 
 [[package]]
+name = "querystring"
+version = "1.1.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "9318ead08c799aad12a55a3e78b82e0b6167271ffd1f627b758891282f739187"
+
+[[package]]
 name = "quote"
-version = "1.0.32"
+version = "1.0.35"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "50f3b39ccfb720540debaa0164757101c08ecb8d326b15358ce76a62c7e85965"
+checksum = "291ec9ab5efd934aaf503a6466c5d5251535d108ee747472c3977cc5acc868ef"
 dependencies = [
  "proc-macro2",
 ]
@@ -2849,36 +3614,13 @@ checksum = "79ec282e887b434b68c18fe5c121d38e72a5cf35119b59e54ec5b992ea9c8eb0"
 
 [[package]]
 name = "rand"
-version = "0.7.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6a6b1679d49b24bbfe0c803429aa1874472f50d9b363131f0e89fc356b544d03"
-dependencies = [
- "getrandom 0.1.16",
- "libc",
- "rand_chacha 0.2.2",
- "rand_core 0.5.1",
- "rand_hc",
-]
-
-[[package]]
-name = "rand"
 version = "0.8.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "34af8d1a0e25924bc5b7c43c079c942339d8f0a8b57c39049bef581b46327404"
 dependencies = [
  "libc",
- "rand_chacha 0.3.1",
- "rand_core 0.6.4",
-]
-
-[[package]]
-name = "rand_chacha"
-version = "0.2.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f4c8ed856279c9737206bf725bf36935d8666ead7aa69b52be55af369d193402"
-dependencies = [
- "ppv-lite86",
- "rand_core 0.5.1",
+ "rand_chacha",
+ "rand_core",
 ]
 
 [[package]]
@@ -2888,16 +3630,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "e6c10a63a0fa32252be49d21e7709d4d4baf8d231c2dbce1eaa8141b9b127d88"
 dependencies = [
  "ppv-lite86",
- "rand_core 0.6.4",
-]
-
-[[package]]
-name = "rand_core"
-version = "0.5.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "90bde5296fc891b0cef12a6d03ddccc162ce7b2aff54160af9338f8d40df6d19"
-dependencies = [
- "getrandom 0.1.16",
+ "rand_core",
 ]
 
 [[package]]
@@ -2906,25 +3639,16 @@ version = "0.6.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "ec0be4795e2f6a28069bec0b5ff3e2ac9bafc99e6a9a7dc3547996c5c816922c"
 dependencies = [
- "getrandom 0.2.11",
-]
-
-[[package]]
-name = "rand_hc"
-version = "0.2.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ca3129af7b92a17112d59ad498c6f81eaf463253766b90396d39ea7a39d6613c"
-dependencies = [
- "rand_core 0.5.1",
+ "getrandom",
 ]
 
 [[package]]
 name = "raw-cpuid"
-version = "10.7.0"
+version = "11.0.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6c297679cb867470fa8c9f67dbba74a78d78e3e98d7cf2b08d6d71540f797332"
+checksum = "e29830cbb1290e404f24c73af91c5d8d631ce7e128691e9477556b540cd01ecd"
 dependencies = [
- "bitflags 1.3.2",
+ "bitflags 2.4.0",
 ]
 
 [[package]]
@@ -2950,6 +3674,29 @@ dependencies = [
 ]
 
 [[package]]
+name = "redis"
+version = "0.25.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "6472825949c09872e8f2c50bde59fcefc17748b6be5c90fd67cd8b4daca73bfd"
+dependencies = [
+ "arc-swap",
+ "async-trait",
+ "bytes",
+ "combine 4.6.7",
+ "futures",
+ "futures-util",
+ "itoa",
+ "percent-encoding",
+ "pin-project-lite",
+ "ryu",
+ "sha1_smol",
+ "tokio",
+ "tokio-retry",
+ "tokio-util",
+ "url",
+]
+
+[[package]]
 name = "redox_syscall"
 version = "0.2.16"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -2968,25 +3715,14 @@ dependencies = [
 ]
 
 [[package]]
-name = "redox_users"
-version = "0.4.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b033d837a7cf162d7993aded9304e30a83213c648b6e389db233191f891e5c2b"
-dependencies = [
- "getrandom 0.2.11",
- "redox_syscall 0.2.16",
- "thiserror",
-]
-
-[[package]]
 name = "regex"
-version = "1.10.2"
+version = "1.10.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "380b951a9c5e80ddfd6136919eef32310721aa4aacd4889a8d39124b026ab343"
+checksum = "c117dbdfde9c8308975b6a18d71f3f385c89461f7b3fb054288ecf2a2058ba4c"
 dependencies = [
  "aho-corasick",
  "memchr",
- "regex-automata 0.4.3",
+ "regex-automata 0.4.6",
  "regex-syntax 0.8.2",
 ]
 
@@ -3001,9 +3737,9 @@ dependencies = [
 
 [[package]]
 name = "regex-automata"
-version = "0.4.3"
+version = "0.4.6"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5f804c7828047e88b2d32e2d7fe5a105da8ee3264f01902f796c8e067dc2483f"
+checksum = "86b83b8b9847f9bf95ef68afb0b8e6cdb80f498442f5179a29fad448fcc1eaea"
 dependencies = [
  "aho-corasick",
  "memchr",
@@ -3046,25 +3782,75 @@ dependencies = [
  "encoding_rs",
  "futures-core",
  "futures-util",
- "h2",
- "http",
- "http-body",
- "hyper",
+ "h2 0.3.19",
+ "http 0.2.11",
+ "http-body 0.4.5",
+ "hyper 0.14.27",
+ "hyper-rustls 0.24.2",
+ "ipnet",
+ "js-sys",
+ "log",
+ "mime",
+ "once_cell",
+ "percent-encoding",
+ "pin-project-lite",
+ "rustls 0.21.10",
+ "rustls-pemfile 1.0.4",
+ "serde",
+ "serde_json",
+ "serde_urlencoded",
+ "system-configuration",
+ "tokio",
+ "tokio-rustls 0.24.1",
+ "tower-service",
+ "url",
+ "wasm-bindgen",
+ "wasm-bindgen-futures",
+ "web-sys",
+ "webpki-roots",
+ "winreg 0.50.0",
+]
+
+[[package]]
+name = "reqwest"
+version = "0.12.4"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "566cafdd92868e0939d3fb961bd0dc25fcfaaed179291093b3d43e6b3150ea10"
+dependencies = [
+ "base64 0.22.0",
+ "bytes",
+ "encoding_rs",
+ "futures-core",
+ "futures-util",
+ "h2 0.4.4",
+ "http 1.1.0",
+ "http-body 1.0.0",
+ "http-body-util",
+ "hyper 1.3.1",
+ "hyper-rustls 0.26.0",
  "hyper-tls",
+ "hyper-util",
  "ipnet",
  "js-sys",
  "log",
  "mime",
+ "mime_guess",
  "native-tls",
  "once_cell",
  "percent-encoding",
  "pin-project-lite",
+ "rustls 0.22.4",
+ "rustls-native-certs",
+ "rustls-pemfile 2.1.2",
+ "rustls-pki-types",
  "serde",
  "serde_json",
  "serde_urlencoded",
+ "sync_wrapper 0.1.2",
  "system-configuration",
  "tokio",
  "tokio-native-tls",
+ "tokio-rustls 0.25.0",
  "tokio-util",
  "tower-service",
  "url",
@@ -3072,7 +3858,23 @@ dependencies = [
  "wasm-bindgen-futures",
  "wasm-streams",
  "web-sys",
- "winreg",
+ "winreg 0.52.0",
+]
+
+[[package]]
+name = "reqwest-eventsource"
+version = "0.6.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "632c55746dbb44275691640e7b40c907c16a2dc1a5842aa98aaec90da6ec6bde"
+dependencies = [
+ "eventsource-stream",
+ "futures-core",
+ "futures-timer",
+ "mime",
+ "nom",
+ "pin-project-lite",
+ "reqwest 0.12.4",
+ "thiserror",
 ]
 
 [[package]]
@@ -3082,9 +3884,9 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "fb0205304757e5d899b9c2e448b867ffd03ae7f988002e47cd24954391394d0b"
 dependencies = [
  "cc",
- "getrandom 0.2.11",
+ "getrandom",
  "libc",
- "spin",
+ "spin 0.9.8",
  "untrusted",
  "windows-sys 0.48.0",
 ]
@@ -3112,42 +3914,23 @@ dependencies = [
 ]
 
 [[package]]
-name = "rusqlite"
-version = "0.30.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a78046161564f5e7cd9008aff3b2990b3850dc8e0349119b98e8f251e099f24d"
-dependencies = [
- "bitflags 2.4.0",
- "chrono",
- "fallible-iterator",
- "fallible-streaming-iterator",
- "hashlink",
- "libsqlite3-sys",
- "smallvec",
-]
-
-[[package]]
-name = "rusqlite_migration"
-version = "1.1.0-beta.1"
+name = "rsa"
+version = "0.9.6"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b5767f8cb28e54d1ed745f072b72c6e68bfa6179fabb4cd15bdb8575858e301d"
+checksum = "5d0e5124fcb30e76a7e79bfee683a2746db83784b86289f6251b54b7950a0dfc"
 dependencies = [
- "include_dir",
- "log",
- "rusqlite",
- "tokio",
- "tokio-rusqlite",
-]
-
-[[package]]
-name = "rust-embed"
-version = "6.6.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1b68543d5527e158213414a92832d2aab11a84d2571a5eb021ebe22c43aab066"
-dependencies = [
- "rust-embed-impl 6.5.0",
- "rust-embed-utils 7.5.0",
- "walkdir",
+ "const-oid",
+ "digest",
+ "num-bigint-dig",
+ "num-integer",
+ "num-traits",
+ "pkcs1",
+ "pkcs8",
+ "rand_core",
+ "signature",
+ "spki",
+ "subtle",
+ "zeroize",
 ]
 
 [[package]]
@@ -3156,22 +3939,8 @@ version = "8.0.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "b1e7d90385b59f0a6bf3d3b757f3ca4ece2048265d70db20a2016043d4509a40"
 dependencies = [
- "rust-embed-impl 8.0.0",
- "rust-embed-utils 8.0.0",
- "walkdir",
-]
-
-[[package]]
-name = "rust-embed-impl"
-version = "6.5.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4d4e0f0ced47ded9a68374ac145edd65a6c1fa13a96447b873660b2a568a0fd7"
-dependencies = [
- "proc-macro2",
- "quote",
- "rust-embed-utils 7.5.0",
- "shellexpand",
- "syn 1.0.109",
+ "rust-embed-impl",
+ "rust-embed-utils",
  "walkdir",
 ]
 
@@ -3183,18 +3952,8 @@ checksum = "3c3d8c6fd84090ae348e63a84336b112b5c3918b3bf0493a581f7bd8ee623c29"
 dependencies = [
  "proc-macro2",
  "quote",
- "rust-embed-utils 8.0.0",
- "syn 2.0.32",
- "walkdir",
-]
-
-[[package]]
-name = "rust-embed-utils"
-version = "7.5.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "512b0ab6853f7e14e3c8754acb43d6f748bb9ced66aa5915a6553ac8213f7731"
-dependencies = [
- "sha2",
+ "rust-embed-utils",
+ "syn 2.0.52",
  "walkdir",
 ]
 
@@ -3258,6 +4017,91 @@ dependencies = [
 ]
 
 [[package]]
+name = "rustls"
+version = "0.21.10"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "f9d5a6813c0759e4609cd494e8e725babae6a2ca7b62a5536a13daaec6fcb7ba"
+dependencies = [
+ "log",
+ "ring",
+ "rustls-webpki 0.101.7",
+ "sct",
+]
+
+[[package]]
+name = "rustls"
+version = "0.22.4"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "bf4ef73721ac7bcd79b2b315da7779d8fc09718c6b3d2d1b2d94850eb8c18432"
+dependencies = [
+ "log",
+ "ring",
+ "rustls-pki-types",
+ "rustls-webpki 0.102.3",
+ "subtle",
+ "zeroize",
+]
+
+[[package]]
+name = "rustls-native-certs"
+version = "0.7.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "8f1fb85efa936c42c6d5fc28d2629bb51e4b2f4b8a5211e297d599cc5a093792"
+dependencies = [
+ "openssl-probe",
+ "rustls-pemfile 2.1.2",
+ "rustls-pki-types",
+ "schannel",
+ "security-framework",
+]
+
+[[package]]
+name = "rustls-pemfile"
+version = "1.0.4"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "1c74cae0a4cf6ccbbf5f359f08efdf8ee7e1dc532573bf0db71968cb56b1448c"
+dependencies = [
+ "base64 0.21.5",
+]
+
+[[package]]
+name = "rustls-pemfile"
+version = "2.1.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "29993a25686778eb88d4189742cd713c9bce943bc54251a33509dc63cbacf73d"
+dependencies = [
+ "base64 0.22.0",
+ "rustls-pki-types",
+]
+
+[[package]]
+name = "rustls-pki-types"
+version = "1.5.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "beb461507cee2c2ff151784c52762cf4d9ff6a61f3e80968600ed24fa837fa54"
+
+[[package]]
+name = "rustls-webpki"
+version = "0.101.7"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "8b6275d1ee7a1cd780b64aca7726599a1dbc893b1e64144529e55c3c2f745765"
+dependencies = [
+ "ring",
+ "untrusted",
+]
+
+[[package]]
+name = "rustls-webpki"
+version = "0.102.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "f3bce581c0dd41bce533ce695a1437fa16a7ab5ac3ccfa99fe1a620a7885eabf"
+dependencies = [
+ "ring",
+ "rustls-pki-types",
+ "untrusted",
+]
+
+[[package]]
 name = "rustversion"
 version = "1.0.14"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -3306,6 +4150,26 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "1792db035ce95be60c3f8853017b3999209281c24e2ba5bc8e59bf97a0c590c1"
 
 [[package]]
+name = "sct"
+version = "0.7.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "da046153aa2352493d6cb7da4b6e5c0c057d8a1d0a9aa8560baffdd945acd414"
+dependencies = [
+ "ring",
+ "untrusted",
+]
+
+[[package]]
+name = "secrecy"
+version = "0.8.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "9bd1c54ea06cfd2f6b63219704de0b9b4f72dcc2b8fdef820be6cd799780e91e"
+dependencies = [
+ "serde",
+ "zeroize",
+]
+
+[[package]]
 name = "security-framework"
 version = "2.9.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -3345,9 +4209,9 @@ dependencies = [
 
 [[package]]
 name = "serde"
-version = "1.0.171"
+version = "1.0.199"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "30e27d1e4fd7659406c492fd6cfaf2066ba8773de45ca75e855590f856dc34a9"
+checksum = "0c9f6e76df036c77cd94996771fb40db98187f096dd0b9af39c6c6e452ba966a"
 dependencies = [
  "serde_derive",
 ]
@@ -3374,22 +4238,21 @@ dependencies = [
 
 [[package]]
 name = "serde_derive"
-version = "1.0.171"
+version = "1.0.199"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "389894603bd18c46fa56231694f8d827779c0951a667087194cf9de94ed24682"
+checksum = "11bd257a6541e141e42ca6d24ae26f7714887b47e89aa739099104c7e4d3b7fc"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.32",
+ "syn 2.0.52",
 ]
 
 [[package]]
 name = "serde_json"
-version = "1.0.107"
+version = "1.0.116"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6b420ce6e3d8bd882e9b243c6eed35dbc9a6110c9769e74b584e0d68d1f20c65"
+checksum = "3e17db7126d17feb94eb3fad46bf1a96b034e8aacbc2e775fe81505f8b0b2813"
 dependencies = [
- "indexmap 2.0.1",
  "itoa",
  "ryu",
  "serde",
@@ -3434,7 +4297,7 @@ dependencies = [
  "rmp-serde",
  "serde",
  "serde_json",
- "toml",
+ "toml 0.7.4",
  "trackable",
 ]
 
@@ -3448,7 +4311,7 @@ dependencies = [
  "futures",
  "lazy_static",
  "log",
- "parking_lot",
+ "parking_lot 0.12.1",
  "serial_test_derive 2.0.0",
 ]
 
@@ -3462,7 +4325,7 @@ dependencies = [
  "futures",
  "lazy_static",
  "log",
- "parking_lot",
+ "parking_lot 0.12.1",
  "serial_test_derive 3.0.0",
 ]
 
@@ -3474,7 +4337,7 @@ checksum = "91d129178576168c589c9ec973feedf7d3126c01ac2bf08795109aa35b69fb8f"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.32",
+ "syn 2.0.52",
 ]
 
 [[package]]
@@ -3485,7 +4348,7 @@ checksum = "b93fb4adc70021ac1b47f7d45e8cc4169baaa7ea58483bc5b721d19a26202212"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.32",
+ "syn 2.0.52",
 ]
 
 [[package]]
@@ -3500,6 +4363,12 @@ dependencies = [
 ]
 
 [[package]]
+name = "sha1_smol"
+version = "1.0.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "ae1a47186c03a32177042e55dbc5fd5aee900b8e0069a8d70fba96a9375cd012"
+
+[[package]]
 name = "sha2"
 version = "0.10.8"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -3533,21 +4402,22 @@ dependencies = [
 ]
 
 [[package]]
-name = "shellexpand"
-version = "2.1.2"
+name = "signal-hook-registry"
+version = "1.4.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7ccc8076840c4da029af4f87e4e8daeb0fca6b87bbb02e10cb60b791450e11e4"
+checksum = "d8229b473baa5980ac72ef434c4415e70c4b5e71b423043adb4ba059f89c99a1"
 dependencies = [
- "dirs",
+ "libc",
 ]
 
 [[package]]
-name = "signal-hook-registry"
-version = "1.4.1"
+name = "signature"
+version = "2.2.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d8229b473baa5980ac72ef434c4415e70c4b5e71b423043adb4ba059f89c99a1"
+checksum = "77549399552de45a898a580c1b41d445bf730df867cc44e6c0233bbc4b8329de"
 dependencies = [
- "libc",
+ "digest",
+ "rand_core",
 ]
 
 [[package]]
@@ -3587,10 +4457,26 @@ dependencies = [
 ]
 
 [[package]]
+name = "sled"
+version = "0.34.7"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "7f96b4737c2ce5987354855aed3797279def4ebf734436c6aa4552cf8e169935"
+dependencies = [
+ "crc32fast",
+ "crossbeam-epoch",
+ "crossbeam-utils",
+ "fs2",
+ "fxhash",
+ "libc",
+ "log",
+ "parking_lot 0.11.2",
+]
+
+[[package]]
 name = "smallvec"
-version = "1.10.0"
+version = "1.13.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a507befe795404456341dfab10cef66ead4c041f62b8b11bbb92bffe5d0953e0"
+checksum = "3c5e1a9a646d36c3599cd173a41282daf47c44583ad367b8e6837255952e5c67"
 
 [[package]]
 name = "smartstring"
@@ -3604,6 +4490,27 @@ dependencies = [
 ]
 
 [[package]]
+name = "snafu"
+version = "0.8.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "75976f4748ab44f6e5332102be424e7c2dc18daeaf7e725f2040c3ebb133512e"
+dependencies = [
+ "snafu-derive",
+]
+
+[[package]]
+name = "snafu-derive"
+version = "0.8.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "b4b19911debfb8c2fb1107bc6cb2d61868aaf53a988449213959bb1b5b1ed95f"
+dependencies = [
+ "heck",
+ "proc-macro2",
+ "quote",
+ "syn 2.0.52",
+]
+
+[[package]]
 name = "socket2"
 version = "0.4.9"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -3625,9 +4532,246 @@ dependencies = [
 
 [[package]]
 name = "spin"
+version = "0.5.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "6e63cff320ae2c57904679ba7cb63280a3dc4613885beafb148ee7bf9aa9042d"
+
+[[package]]
+name = "spin"
 version = "0.9.8"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "6980e8d7511241f8acf4aebddbb1ff938df5eebe98691418c4468d0b72a96a67"
+dependencies = [
+ "lock_api",
+]
+
+[[package]]
+name = "spki"
+version = "0.7.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "d91ed6c858b01f942cd56b37a94b3e0a1798290327d1236e4d9cf4eaca44d29d"
+dependencies = [
+ "base64ct",
+ "der",
+]
+
+[[package]]
+name = "sql_query_builder"
+version = "2.1.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "b371e496dc275fae413896ef31160eaeb949df66a942245cf3f37fb741389611"
+
+[[package]]
+name = "sqlformat"
+version = "0.2.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "ce81b7bd7c4493975347ef60d8c7e8b742d4694f4c49f93e0a12ea263938176c"
+dependencies = [
+ "itertools 0.12.1",
+ "nom",
+ "unicode_categories",
+]
+
+[[package]]
+name = "sqlx"
+version = "0.7.4"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "c9a2ccff1a000a5a59cd33da541d9f2fdcd9e6e8229cc200565942bff36d0aaa"
+dependencies = [
+ "sqlx-core",
+ "sqlx-macros",
+ "sqlx-mysql",
+ "sqlx-postgres",
+ "sqlx-sqlite",
+]
+
+[[package]]
+name = "sqlx-core"
+version = "0.7.4"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "24ba59a9342a3d9bab6c56c118be528b27c9b60e490080e9711a04dccac83ef6"
+dependencies = [
+ "ahash",
+ "atoi",
+ "byteorder",
+ "bytes",
+ "chrono",
+ "crc",
+ "crossbeam-queue",
+ "either",
+ "event-listener",
+ "futures-channel",
+ "futures-core",
+ "futures-intrusive",
+ "futures-io",
+ "futures-util",
+ "hashlink",
+ "hex",
+ "indexmap 2.2.6",
+ "log",
+ "memchr",
+ "once_cell",
+ "paste",
+ "percent-encoding",
+ "rustls 0.21.10",
+ "rustls-pemfile 1.0.4",
+ "serde",
+ "serde_json",
+ "sha2",
+ "smallvec",
+ "sqlformat",
+ "thiserror",
+ "tokio",
+ "tokio-stream",
+ "tracing",
+ "url",
+ "webpki-roots",
+]
+
+[[package]]
+name = "sqlx-macros"
+version = "0.7.4"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "4ea40e2345eb2faa9e1e5e326db8c34711317d2b5e08d0d5741619048a803127"
+dependencies = [
+ "proc-macro2",
+ "quote",
+ "sqlx-core",
+ "sqlx-macros-core",
+ "syn 1.0.109",
+]
+
+[[package]]
+name = "sqlx-macros-core"
+version = "0.7.4"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "5833ef53aaa16d860e92123292f1f6a3d53c34ba8b1969f152ef1a7bb803f3c8"
+dependencies = [
+ "dotenvy",
+ "either",
+ "heck",
+ "hex",
+ "once_cell",
+ "proc-macro2",
+ "quote",
+ "serde",
+ "serde_json",
+ "sha2",
+ "sqlx-core",
+ "sqlx-mysql",
+ "sqlx-postgres",
+ "sqlx-sqlite",
+ "syn 1.0.109",
+ "tempfile",
+ "tokio",
+ "url",
+]
+
+[[package]]
+name = "sqlx-mysql"
+version = "0.7.4"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "1ed31390216d20e538e447a7a9b959e06ed9fc51c37b514b46eb758016ecd418"
+dependencies = [
+ "atoi",
+ "base64 0.21.5",
+ "bitflags 2.4.0",
+ "byteorder",
+ "bytes",
+ "chrono",
+ "crc",
+ "digest",
+ "dotenvy",
+ "either",
+ "futures-channel",
+ "futures-core",
+ "futures-io",
+ "futures-util",
+ "generic-array",
+ "hex",
+ "hkdf",
+ "hmac",
+ "itoa",
+ "log",
+ "md-5",
+ "memchr",
+ "once_cell",
+ "percent-encoding",
+ "rand",
+ "rsa",
+ "serde",
+ "sha1",
+ "sha2",
+ "smallvec",
+ "sqlx-core",
+ "stringprep",
+ "thiserror",
+ "tracing",
+ "whoami",
+]
+
+[[package]]
+name = "sqlx-postgres"
+version = "0.7.4"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "7c824eb80b894f926f89a0b9da0c7f435d27cdd35b8c655b114e58223918577e"
+dependencies = [
+ "atoi",
+ "base64 0.21.5",
+ "bitflags 2.4.0",
+ "byteorder",
+ "chrono",
+ "crc",
+ "dotenvy",
+ "etcetera",
+ "futures-channel",
+ "futures-core",
+ "futures-io",
+ "futures-util",
+ "hex",
+ "hkdf",
+ "hmac",
+ "home",
+ "itoa",
+ "log",
+ "md-5",
+ "memchr",
+ "once_cell",
+ "rand",
+ "serde",
+ "serde_json",
+ "sha2",
+ "smallvec",
+ "sqlx-core",
+ "stringprep",
+ "thiserror",
+ "tracing",
+ "whoami",
+]
+
+[[package]]
+name = "sqlx-sqlite"
+version = "0.7.4"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "b244ef0a8414da0bed4bb1910426e890b19e5e9bccc27ada6b797d05c55ae0aa"
+dependencies = [
+ "atoi",
+ "chrono",
+ "flume",
+ "futures-channel",
+ "futures-core",
+ "futures-executor",
+ "futures-intrusive",
+ "futures-util",
+ "libsqlite3-sys",
+ "log",
+ "percent-encoding",
+ "serde",
+ "sqlx-core",
+ "tracing",
+ "url",
+ "urlencoding",
+]
 
 [[package]]
 name = "stable_deref_trait"
@@ -3661,6 +4805,17 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "7a8348af2d9fc3258c8733b8d9d8db2e56f54b2363a4b5b81585c7875ed65e65"
 
 [[package]]
+name = "stringprep"
+version = "0.1.4"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "bb41d74e231a107a1b4ee36bd1214b11285b77768d2e3824aedafa988fd36ee6"
+dependencies = [
+ "finl_unicode",
+ "unicode-bidi",
+ "unicode-normalization",
+]
+
+[[package]]
 name = "strsim"
 version = "0.9.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -3713,9 +4868,9 @@ dependencies = [
 
 [[package]]
 name = "syn"
-version = "2.0.32"
+version = "2.0.52"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "239814284fd6f1a4ffe4ca893952cdd93c224b6a1571c9a9eadd670295c0c9e2"
+checksum = "b699d15b36d1f02c3e7c69f8ffef53de37aefae075d8488d4ba1a7788d574a07"
 dependencies = [
  "proc-macro2",
  "quote",
@@ -3729,6 +4884,12 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "2047c6ded9c721764247e62cd3b03c09ffc529b2ba5b10ec482ae507a4a70160"
 
 [[package]]
+name = "sync_wrapper"
+version = "1.0.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "a7065abeca94b6a8a577f9bd45aa0867a2238b74e8eb67cf10d492bc39351394"
+
+[[package]]
 name = "sysinfo"
 version = "0.29.8"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -3766,30 +4927,31 @@ dependencies = [
 
 [[package]]
 name = "tabby"
-version = "0.8.3"
+version = "0.11.1"
 dependencies = [
  "anyhow",
  "assert-json-diff",
  "async-stream",
  "async-trait",
  "axum",
+ "axum-extra",
  "axum-prometheus",
- "axum-tracing-opentelemetry",
+ "cached",
  "chrono",
  "clap",
  "futures",
  "http-api-bindings",
- "hyper",
+ "hyper 1.3.1",
  "insta",
  "lazy_static",
  "llama-cpp-bindings",
  "minijinja",
  "nvml-wrapper",
  "openssl",
- "opentelemetry",
- "opentelemetry-otlp",
+ "parse-git-url",
  "regex",
- "reqwest",
+ "reqwest 0.12.4",
+ "reqwest-eventsource",
  "serde",
  "serde-jsonlines 0.5.0",
  "serde_json",
@@ -3807,58 +4969,66 @@ dependencies = [
  "textdistance",
  "thiserror",
  "tokio",
- "tower-http 0.4.0",
+ "tower-http",
  "tracing",
- "tracing-opentelemetry",
  "tracing-subscriber 0.3.17",
  "utoipa",
  "utoipa-swagger-ui",
- "uuid 1.6.1",
+ "uuid",
  "vergen",
 ]
 
 [[package]]
 name = "tabby-common"
-version = "0.8.3"
+version = "0.11.1"
 dependencies = [
  "anyhow",
  "async-trait",
- "filenamify",
  "glob",
  "home",
  "lazy_static",
- "regex",
- "reqwest",
+ "reqwest 0.12.4",
  "serde",
  "serde-jsonlines 0.4.0",
  "serde_json",
  "serdeconv",
  "tantivy",
+ "temp_testdir",
  "thiserror",
+ "tokio",
+ "url",
  "utoipa",
- "uuid 1.6.1",
+ "uuid",
 ]
 
 [[package]]
 name = "tabby-db"
-version = "0.8.3"
+version = "0.11.1"
 dependencies = [
  "anyhow",
  "assert_matches",
+ "cached",
  "chrono",
- "include_dir",
+ "hash-ids",
  "lazy_static",
- "rusqlite",
- "rusqlite_migration",
- "tabby-common",
+ "sql_query_builder",
+ "sqlx",
+ "tabby-db-macros",
  "tokio",
- "tokio-rusqlite",
- "uuid 1.6.1",
+ "uuid",
+]
+
+[[package]]
+name = "tabby-db-macros"
+version = "0.11.1"
+dependencies = [
+ "quote",
+ "syn 2.0.52",
 ]
 
 [[package]]
 name = "tabby-download"
-version = "0.8.3"
+version = "0.11.1"
 dependencies = [
  "aim-downloader",
  "anyhow",
@@ -3870,39 +5040,47 @@ dependencies = [
 
 [[package]]
 name = "tabby-inference"
-version = "0.8.3"
+version = "0.11.1"
 dependencies = [
+ "anyhow",
  "async-stream",
  "async-trait",
  "dashmap",
- "derive_builder",
+ "derive_builder 0.12.0",
  "futures",
- "regex",
  "tabby-common",
+ "trie-rs",
 ]
 
 [[package]]
 name = "tabby-scheduler"
-version = "0.8.3"
+version = "0.11.1"
 dependencies = [
  "anyhow",
+ "async-trait",
  "cargo-lock",
  "file-rotate",
  "ignore",
- "job_scheduler",
  "kdam",
+ "kv",
  "lazy_static",
+ "npm-package-json",
+ "package-lock-json-parser",
  "requirements",
+ "serde",
  "serde-jsonlines 0.4.0",
  "serde_json",
  "serdeconv",
  "tabby-common",
  "tantivy",
  "temp_testdir",
+ "text-splitter",
  "tokio",
+ "tokio-cron-scheduler",
  "tracing",
  "tracing-test",
  "tree-sitter-c",
+ "tree-sitter-c-sharp",
  "tree-sitter-cpp",
  "tree-sitter-go",
  "tree-sitter-java",
@@ -3910,47 +5088,95 @@ dependencies = [
  "tree-sitter-python",
  "tree-sitter-ruby",
  "tree-sitter-rust",
+ "tree-sitter-solidity",
  "tree-sitter-tags",
  "tree-sitter-typescript",
+ "yarn-lock-parser",
+]
+
+[[package]]
+name = "tabby-schema"
+version = "0.11.1"
+dependencies = [
+ "anyhow",
+ "async-trait",
+ "axum",
+ "base64 0.22.0",
+ "chrono",
+ "futures",
+ "hash-ids",
+ "juniper",
+ "lazy_static",
+ "regex",
+ "serde",
+ "strum",
+ "tabby-common",
+ "tabby-db",
+ "thiserror",
+ "tokio",
+ "tracing",
+ "validator",
+]
+
+[[package]]
+name = "tabby-search"
+version = "0.11.1"
+dependencies = [
+ "anyhow",
+ "git2",
+ "nucleo",
+ "temp_testdir",
 ]
 
 [[package]]
 name = "tabby-webserver"
-version = "0.8.3"
+version = "0.11.1"
 dependencies = [
  "anyhow",
+ "apalis",
  "argon2",
  "assert_matches",
  "async-trait",
  "axum",
+ "axum-extra",
  "bincode",
  "chrono",
+ "fs_extra",
  "futures",
- "hyper",
+ "gitlab",
+ "hyper 1.3.1",
+ "hyper-util",
  "jsonwebtoken",
  "juniper",
- "juniper-axum",
+ "juniper_axum",
+ "juniper_graphql_ws",
  "lazy_static",
  "lettre",
  "mime_guess",
+ "octocrab",
  "pin-project",
- "reqwest",
- "rust-embed 8.0.0",
+ "querystring",
+ "reqwest 0.12.4",
+ "rust-embed",
  "serde",
  "serde_json",
+ "serial_test 3.0.0",
  "tabby-common",
  "tabby-db",
+ "tabby-schema",
+ "tabby-search",
  "tarpc",
+ "temp_testdir",
  "thiserror",
  "tokio",
- "tokio-cron-scheduler",
  "tokio-tungstenite",
  "tower",
- "tower-http 0.4.0",
+ "tower-http",
  "tracing",
  "unicase",
- "uuid 1.6.1",
- "validator",
+ "url",
+ "urlencoding",
+ "uuid",
 ]
 
 [[package]]
@@ -4001,7 +5227,7 @@ dependencies = [
  "tempfile",
  "thiserror",
  "time",
- "uuid 1.6.1",
+ "uuid",
  "winapi",
 ]
 
@@ -4060,7 +5286,7 @@ version = "0.21.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "1d39c5a03100ac10c96e0c8b07538e2ab8b17da56434ab348309b31f23fada77"
 dependencies = [
- "nom 7.1.3",
+ "nom",
 ]
 
 [[package]]
@@ -4105,7 +5331,7 @@ dependencies = [
  "humantime",
  "opentelemetry",
  "pin-project",
- "rand 0.8.5",
+ "rand",
  "serde",
  "static_assertions",
  "tarpc-plugins",
@@ -4167,6 +5393,21 @@ dependencies = [
 ]
 
 [[package]]
+name = "text-splitter"
+version = "0.10.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "8d5315f993b00372fd909fcf8587535e65f03ac5fd9400f49dd72ce1f6be23cf"
+dependencies = [
+ "ahash",
+ "auto_enums",
+ "either",
+ "itertools 0.12.1",
+ "once_cell",
+ "regex",
+ "unicode-segmentation",
+]
+
+[[package]]
 name = "textdistance"
 version = "1.0.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -4174,22 +5415,22 @@ checksum = "d321c8576c2b47e43953e9cce236550d4cd6af0a6ce518fe084340082ca6037b"
 
 [[package]]
 name = "thiserror"
-version = "1.0.49"
+version = "1.0.59"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1177e8c6d7ede7afde3585fd2513e611227efd6481bd78d2e82ba1ce16557ed4"
+checksum = "f0126ad08bff79f29fc3ae6a55cc72352056dfff61e3ff8bb7129476d44b23aa"
 dependencies = [
  "thiserror-impl",
 ]
 
 [[package]]
 name = "thiserror-impl"
-version = "1.0.49"
+version = "1.0.59"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "10712f02019e9288794769fba95cd6847df9874d49d871d062172f9dd41bc4cc"
+checksum = "d1cd413b5d558b4c5bf3680e324a6fa5014e7b7c067a51e69dbdf47eb7148b66"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.32",
+ "syn 2.0.52",
 ]
 
 [[package]]
@@ -4204,14 +5445,16 @@ dependencies = [
 
 [[package]]
 name = "time"
-version = "0.3.26"
+version = "0.3.36"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a79d09ac6b08c1ab3906a2f7cc2e81a0e27c7ae89c63812df75e52bef0751e07"
+checksum = "5dfd88e563464686c916c7e46e623e520ddc6d79fa6641390f2e3fa86e83e885"
 dependencies = [
  "deranged",
  "itoa",
  "libc",
+ "num-conv",
  "num_threads",
+ "powerfmt",
  "serde",
  "time-core",
  "time-macros",
@@ -4219,16 +5462,17 @@ dependencies = [
 
 [[package]]
 name = "time-core"
-version = "0.1.1"
+version = "0.1.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7300fbefb4dadc1af235a9cef3737cea692a9d97e1b9cbcd4ebdae6f8868e6fb"
+checksum = "ef927ca75afb808a4d64dd374f00a2adf8d0fcff8e7b184af886c3c87ec4a3f3"
 
 [[package]]
 name = "time-macros"
-version = "0.2.12"
+version = "0.2.18"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "75c65469ed6b3a4809d987a41eb1dc918e9bc1d92211cbad7ae82931846f7451"
+checksum = "3f252a68540fde3a3877aeea552b832b40ab9a69e318efd078774a01ddee1ccf"
 dependencies = [
+ "num-conv",
  "time-core",
 ]
 
@@ -4258,7 +5502,7 @@ dependencies = [
  "libc",
  "mio",
  "num_cpus",
- "parking_lot",
+ "parking_lot 0.12.1",
  "pin-project-lite",
  "signal-hook-registry",
  "socket2 0.5.5",
@@ -4273,22 +5517,12 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "de2c1fd54a857b29c6cd1846f31903d0ae8e28175615c14a277aed45c58d8e27"
 dependencies = [
  "chrono",
- "cron 0.12.0",
+ "cron",
  "num-derive",
  "num-traits",
  "tokio",
  "tracing",
- "uuid 1.6.1",
-]
-
-[[package]]
-name = "tokio-io-timeout"
-version = "1.2.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "30b74022ada614a1b4834de765f9bb43877f910cc8ce4be40e89042c9223a8bf"
-dependencies = [
- "pin-project-lite",
- "tokio",
+ "uuid",
 ]
 
 [[package]]
@@ -4299,7 +5533,7 @@ checksum = "5b8a1e28f2deaa14e508979454cb3a223b10b938b45af148bc0986de36f1923b"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.32",
+ "syn 2.0.52",
 ]
 
 [[package]]
@@ -4319,18 +5553,28 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "7f57eb36ecbe0fc510036adff84824dd3c24bb781e21bfa67b69d556aa85214f"
 dependencies = [
  "pin-project",
- "rand 0.8.5",
+ "rand",
  "tokio",
 ]
 
 [[package]]
-name = "tokio-rusqlite"
-version = "0.5.0"
+name = "tokio-rustls"
+version = "0.24.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "dc785c98d0c872455381e59be1f33a8f3a6b4e852544212e37601cc2ccb21d39"
+checksum = "c28327cf380ac148141087fbfb9de9d7bd4e84ab5d2c28fbc911d753de8a7081"
 dependencies = [
- "crossbeam-channel",
- "rusqlite",
+ "rustls 0.21.10",
+ "tokio",
+]
+
+[[package]]
+name = "tokio-rustls"
+version = "0.25.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "775e0c0f0adb3a2f22a00c4745d728b479985fc15ee7ca6a2608388c5569860f"
+dependencies = [
+ "rustls 0.22.4",
+ "rustls-pki-types",
  "tokio",
 ]
 
@@ -4359,9 +5603,9 @@ dependencies = [
 
 [[package]]
 name = "tokio-tungstenite"
-version = "0.20.1"
+version = "0.21.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "212d5dcb2a1ce06d81107c3d0ffa3121fe974b73f068c8282cb1c32328113b6c"
+checksum = "c83b561d025642014097b66e6c1bb422783339e0909e4429cde4749d1990bc38"
 dependencies = [
  "futures-util",
  "log",
@@ -4389,6 +5633,15 @@ dependencies = [
 
 [[package]]
 name = "toml"
+version = "0.5.11"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "f4f7f0dd8d50a853a531c426359045b1998f04219d88799810762cd4ad314234"
+dependencies = [
+ "serde",
+]
+
+[[package]]
+name = "toml"
 version = "0.7.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "d6135d499e69981f9ff0ef2167955a5333c35e36f6937d382974566b3d5b94ec"
@@ -4422,51 +5675,6 @@ dependencies = [
 ]
 
 [[package]]
-name = "tonic"
-version = "0.8.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8f219fad3b929bef19b1f86fbc0358d35daed8f2cac972037ac0dc10bbb8d5fb"
-dependencies = [
- "async-stream",
- "async-trait",
- "axum",
- "base64 0.13.1",
- "bytes",
- "futures-core",
- "futures-util",
- "h2",
- "http",
- "http-body",
- "hyper",
- "hyper-timeout",
- "percent-encoding",
- "pin-project",
- "prost",
- "prost-derive",
- "tokio",
- "tokio-stream",
- "tokio-util",
- "tower",
- "tower-layer",
- "tower-service",
- "tracing",
- "tracing-futures",
-]
-
-[[package]]
-name = "tonic-build"
-version = "0.8.4"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5bf5e9b9c0f7e0a7c027dcfaba7b2c60816c7049171f679d99ee2ff65d0de8c4"
-dependencies = [
- "prettyplease",
- "proc-macro2",
- "prost-build",
- "quote",
- "syn 1.0.109",
-]
-
-[[package]]
 name = "tower"
 version = "0.4.13"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -4474,11 +5682,8 @@ checksum = "b8fa9be0de6cf49e536ce1851f987bd21a43b771b09473c3549a6c853db37c1c"
 dependencies = [
  "futures-core",
  "futures-util",
- "indexmap 1.9.3",
  "pin-project",
  "pin-project-lite",
- "rand 0.8.5",
- "slab",
  "tokio",
  "tokio-util",
  "tower-layer",
@@ -4488,43 +5693,26 @@ dependencies = [
 
 [[package]]
 name = "tower-http"
-version = "0.3.5"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f873044bf02dd1e8239e9c1293ea39dad76dc594ec16185d0a1bf31d8dc8d858"
-dependencies = [
- "bitflags 1.3.2",
- "bytes",
- "futures-core",
- "futures-util",
- "http",
- "http-body",
- "http-range-header",
- "pin-project-lite",
- "tower-layer",
- "tower-service",
- "tracing",
-]
-
-[[package]]
-name = "tower-http"
-version = "0.4.0"
+version = "0.5.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5d1d42a9b3f3ec46ba828e8d376aec14592ea199f70a06a548587ecd1c4ab658"
+checksum = "1e9cd434a998747dd2c4276bc96ee2e0c7a2eadf3cae88e52be55a05fa9053f5"
 dependencies = [
- "bitflags 1.3.2",
+ "bitflags 2.4.0",
  "bytes",
- "futures-core",
  "futures-util",
- "http",
- "http-body",
+ "http 1.1.0",
+ "http-body 1.0.0",
+ "http-body-util",
  "http-range-header",
  "httpdate",
+ "iri-string",
  "mime",
  "mime_guess",
  "percent-encoding",
  "pin-project-lite",
  "tokio",
  "tokio-util",
+ "tower",
  "tower-layer",
  "tower-service",
  "tracing",
@@ -4563,7 +5751,7 @@ checksum = "0f57e3ca2a01450b1a921183a9c9cbfda207fd822cef4ccb00a65402cbba7a74"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.32",
+ "syn 2.0.52",
 ]
 
 [[package]]
@@ -4582,7 +5770,6 @@ version = "0.2.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "97d095ae15e245a057c8e8451bab9b3ee1e1f68e9ba2b4fbc18d0ac5237835f2"
 dependencies = [
- "pin-project",
  "tracing",
 ]
 
@@ -4607,7 +5794,6 @@ dependencies = [
  "opentelemetry",
  "tracing",
  "tracing-core",
- "tracing-log",
  "tracing-subscriber 0.3.17",
 ]
 
@@ -4723,6 +5909,16 @@ dependencies = [
 ]
 
 [[package]]
+name = "tree-sitter-c-sharp"
+version = "0.20.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "b9ab3dc608f34924fa9e10533a95f62dbc14b6de0ddd7107722eba66fe19ae31"
+dependencies = [
+ "cc",
+ "tree-sitter",
+]
+
+[[package]]
 name = "tree-sitter-cpp"
 version = "0.20.3"
 source = "git+https://github.com/tree-sitter/tree-sitter-cpp?rev=a714740#a71474021410973b29bfe99440d57bcd750246b1"
@@ -4792,6 +5988,15 @@ dependencies = [
 ]
 
 [[package]]
+name = "tree-sitter-solidity"
+version = "0.0.3"
+source = "git+https://github.com/JoranHonig/tree-sitter-solidity?rev=b239a95#b239a95f94cfcc6e7b3e961bc73a28d55e214f02"
+dependencies = [
+ "cc",
+ "tree-sitter",
+]
+
+[[package]]
 name = "tree-sitter-tags"
 version = "0.20.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -4814,6 +6019,15 @@ dependencies = [
 ]
 
 [[package]]
+name = "trie-rs"
+version = "0.1.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "5096c019d49566aff57593a06e401c7f588da84e9a575d0ed2ac0913f51928c0"
+dependencies = [
+ "louds-rs",
+]
+
+[[package]]
 name = "try-lock"
 version = "0.2.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -4821,17 +6035,17 @@ checksum = "3528ecfd12c466c6f163363caf2d02a71161dd5e1cc6ae7b34207ea2d42d81ed"
 
 [[package]]
 name = "tungstenite"
-version = "0.20.1"
+version = "0.21.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9e3dac10fd62eaf6617d3a904ae222845979aec67c615d1c842b4002c7666fb9"
+checksum = "9ef1a641ea34f399a848dea702823bbecfb4c486f911735368f1f137cb8257e1"
 dependencies = [
  "byteorder",
  "bytes",
  "data-encoding",
- "http",
+ "http 1.1.0",
  "httparse",
  "log",
- "rand 0.8.5",
+ "rand",
  "sha1",
  "thiserror",
  "url",
@@ -4851,6 +6065,17 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "ed646292ffc8188ef8ea4d1e0e0150fb15a5c2e12ad9b8fc191ae7a8a7f3c4b9"
 
 [[package]]
+name = "ulid"
+version = "1.1.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "34778c17965aa2a08913b57e1f34db9b4a63f5de31768b55bf20d2795f921259"
+dependencies = [
+ "getrandom",
+ "rand",
+ "web-time",
+]
+
+[[package]]
 name = "unicase"
 version = "2.7.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -4881,12 +6106,24 @@ dependencies = [
 ]
 
 [[package]]
+name = "unicode-segmentation"
+version = "1.11.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "d4c87d22b6e3f4a18d4d40ef354e97c90fcb14dd91d7dc0aa9d8a1172ebf7202"
+
+[[package]]
 name = "unicode-width"
 version = "0.1.10"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "c0edd1e5b14653f783770bce4a4dabb4a5108a5370a5f5d8cfe8710c361f6c8b"
 
 [[package]]
+name = "unicode_categories"
+version = "0.1.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "39ec24b3121d976906ece63c9daad25b85969647682eee313cb5779fdd69e14e"
+
+[[package]]
 name = "unreachable"
 version = "1.0.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -4910,6 +6147,7 @@ dependencies = [
  "form_urlencoded",
  "idna 0.5.0",
  "percent-encoding",
+ "serde",
 ]
 
 [[package]]
@@ -4922,6 +6160,12 @@ dependencies = [
 ]
 
 [[package]]
+name = "urlencoding"
+version = "2.1.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "daf8dba3b7eb870caf1ddeed7bc9d2a049f3cfdfae7cb521b087cc33ae4c49da"
+
+[[package]]
 name = "utf-8"
 version = "0.7.6"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -4941,11 +6185,11 @@ checksum = "711b9620af191e0cdc7468a8d14e709c3dcdb115b36f838e601583af800a370a"
 
 [[package]]
 name = "utoipa"
-version = "3.3.0"
+version = "4.2.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "68ae74ef183fae36d650f063ae7bde1cacbe1cd7e72b617cbe1e985551878b98"
+checksum = "272ebdfbc99111033031d2f10e018836056e4d2c8e2acda76450ec7974269fa7"
 dependencies = [
- "indexmap 1.9.3",
+ "indexmap 2.2.6",
  "serde",
  "serde_json",
  "utoipa-gen",
@@ -4953,26 +6197,27 @@ dependencies = [
 
 [[package]]
 name = "utoipa-gen"
-version = "3.3.0"
+version = "4.2.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7ea8ac818da7e746a63285594cce8a96f5e00ee31994e655bd827569cb8b137b"
+checksum = "d3c9f4d08338c1bfa70dde39412a040a884c6f318b3d09aaaf3437a1e52027fc"
 dependencies = [
  "proc-macro-error",
  "proc-macro2",
  "quote",
- "syn 2.0.32",
+ "regex",
+ "syn 2.0.52",
 ]
 
 [[package]]
 name = "utoipa-swagger-ui"
-version = "3.1.3"
+version = "6.0.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "062bba5a3568e126ac72049a63254f4cb1da2eb713db0c1ab2a4c76be191db8c"
+checksum = "0b39868d43c011961e04b41623e050aedf2cc93652562ff7935ce0f819aaf2da"
 dependencies = [
  "axum",
  "mime_guess",
  "regex",
- "rust-embed 6.6.1",
+ "rust-embed",
  "serde",
  "serde_json",
  "utoipa",
@@ -4981,21 +6226,12 @@ dependencies = [
 
 [[package]]
 name = "uuid"
-version = "0.8.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "bc5cf98d8186244414c848017f0e2676b3fcb46807f6668a97dfe67359a3c4b7"
-dependencies = [
- "getrandom 0.2.11",
-]
-
-[[package]]
-name = "uuid"
 version = "1.6.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "5e395fcf16a7a3d8127ec99782007af141946b4795001f876d54fb0d55978560"
 dependencies = [
- "getrandom 0.2.11",
- "rand 0.8.5",
+ "getrandom",
+ "rand",
  "serde",
  "uuid-macro-internal",
 ]
@@ -5008,7 +6244,7 @@ checksum = "f49e7f3f3db8040a100710a11932239fd30697115e2ba4107080d8252939845e"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.32",
+ "syn 2.0.52",
 ]
 
 [[package]]
@@ -5090,9 +6326,9 @@ checksum = "6a02e4885ed3bc0f2de90ea6dd45ebcbb66dacffe03547fadbb0eeae2770887d"
 
 [[package]]
 name = "walkdir"
-version = "2.3.3"
+version = "2.5.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "36df944cda56c7d8d8b7496af378e6b16de9284591917d307c9b4d313c44e698"
+checksum = "29790946404f91d9c5d06f9874efddea1dc06c5efe94541a7d6863108e3a5e4b"
 dependencies = [
  "same-file",
  "winapi-util",
@@ -5110,12 +6346,6 @@ dependencies = [
 
 [[package]]
 name = "wasi"
-version = "0.9.0+wasi-snapshot-preview1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "cccddf32554fecc6acb585f82a32a72e28b48f8c4c1883ddfeeeaa96f7d8e519"
-
-[[package]]
-name = "wasi"
 version = "0.11.0+wasi-snapshot-preview1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "9c8d87e72b64a3b4db28d11ce29237c246188f4f51057d65a7eab63b7987e423"
@@ -5141,7 +6371,7 @@ dependencies = [
  "once_cell",
  "proc-macro2",
  "quote",
- "syn 2.0.32",
+ "syn 2.0.52",
  "wasm-bindgen-shared",
 ]
 
@@ -5175,7 +6405,7 @@ checksum = "54681b18a46765f095758388f2d0cf16eb8d4169b639ab575a8f5693af210c7b"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.32",
+ "syn 2.0.52",
  "wasm-bindgen-backend",
  "wasm-bindgen-shared",
 ]
@@ -5188,9 +6418,9 @@ checksum = "ca6ad05a4870b2bf5fe995117d3728437bd27d7cd5f06f13c17443ef369775a1"
 
 [[package]]
 name = "wasm-streams"
-version = "0.3.0"
+version = "0.4.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b4609d447824375f43e1ffbc051b50ad8f4b3ae8219680c94452ea05eb240ac7"
+checksum = "b65dc4c90b63b118468cf747d8bf3566c1913ef60be765b5730ead9e0a3ba129"
 dependencies = [
  "futures-util",
  "js-sys",
@@ -5210,17 +6440,28 @@ dependencies = [
 ]
 
 [[package]]
-name = "which"
-version = "4.4.0"
+name = "web-time"
+version = "1.1.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2441c784c52b289a054b7201fc93253e288f094e2f4be9058343127c4226a269"
+checksum = "5a6580f308b1fad9207618087a65c04e7a10bc77e02c8e84e9b00dd4b12fa0bb"
 dependencies = [
- "either",
- "libc",
- "once_cell",
+ "js-sys",
+ "wasm-bindgen",
 ]
 
 [[package]]
+name = "webpki-roots"
+version = "0.25.4"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "5f20c57d8d7db6d3b86154206ae5d8fba62dd39573114de97c2cb0578251f8e1"
+
+[[package]]
+name = "whoami"
+version = "1.4.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "22fc3756b8a9133049b26c7f61ab35416c130e8c09b660f5b3958b446f52cc50"
+
+[[package]]
 name = "winapi"
 version = "0.3.9"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -5427,6 +6668,16 @@ dependencies = [
 ]
 
 [[package]]
+name = "winreg"
+version = "0.52.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "a277a57398d4bfa075df44f501a17cfdf8542d224f0d36095a2adc7aee4ef0a5"
+dependencies = [
+ "cfg-if",
+ "windows-sys 0.48.0",
+]
+
+[[package]]
 name = "wrapcenum-derive"
 version = "0.4.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -5448,6 +6699,16 @@ dependencies = [
 ]
 
 [[package]]
+name = "yarn-lock-parser"
+version = "0.7.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "7d0603904f8482a1a2a038c9f89c75b0e435392513c3abd3d284123381bbe51f"
+dependencies = [
+ "nom",
+ "thiserror",
+]
+
+[[package]]
 name = "zerocopy"
 version = "0.7.32"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -5464,10 +6725,16 @@ checksum = "9ce1b18ccd8e73a9321186f97e46f9f04b778851177567b1975109d26a08d2a6"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.32",
+ "syn 2.0.52",
 ]
 
 [[package]]
+name = "zeroize"
+version = "1.7.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "525b4ec142c6b68a2d10f01f7bbf6755599ca3f81ea53b8431b7dd348f5fdb2d"
+
+[[package]]
 name = "zip"
 version = "0.6.6"
 source = "registry+https://github.com/rust-lang/crates.io-index"
diff --git a/pkgs/by-name/ta/tabby/package.nix b/pkgs/by-name/ta/tabby/package.nix
index 1879a9f3354b..4ebc77e741b1 100644
--- a/pkgs/by-name/ta/tabby/package.nix
+++ b/pkgs/by-name/ta/tabby/package.nix
@@ -2,6 +2,7 @@
 , lib
 , rustPlatform
 , fetchFromGitHub
+, nix-update-script
 , stdenv
 
 , git
@@ -31,7 +32,7 @@ let
   # https://github.com/NixOS/nixpkgs/blob/master/pkgs/tools/misc/ollama/default.nix
 
   pname = "tabby";
-  version = "0.8.3";
+  version = "0.11.1";
 
 
   availableAccelerations = flatten [
@@ -77,7 +78,7 @@ let
   # to use a specific device type as it is relying on llama-cpp only being
   # built to use one type of device.
   #
-  # See: https://github.com/TabbyML/tabby/blob/v0.8.3/crates/llama-cpp-bindings/include/engine.h#L20
+  # See: https://github.com/TabbyML/tabby/blob/v0.11.1/crates/llama-cpp-bindings/include/engine.h#L20
   #
   llamaccpPackage = llama-cpp.override {
     rocmSupport = enableRocm;
@@ -107,15 +108,17 @@ rustPlatform.buildRustPackage {
     owner = "TabbyML";
     repo = "tabby";
     rev = "v${version}";
-    hash = "sha256-+5Q5XKfh7+g24y2hBqJC/jNEoRytDdcRdn838xc7c8w=";
+    hash = "sha256-OgAE526aW3mVqf6fVmBmL5/B4gH9B54QLEITQk9Kgsg=";
     fetchSubmodules = true;
   };
 
   cargoLock = {
     lockFile = ./Cargo.lock;
     outputHashes = {
+      "apalis-0.5.1" = "sha256-hGvVuSy32lSTR5DJdiyf8q1sXbIeuLSGrtyq6m2QlUQ=";
       "tree-sitter-c-0.20.6" = "sha256-Etl4s29YSOxiqPo4Z49N6zIYqNpIsdk/Qd0jR8jdvW4=";
       "tree-sitter-cpp-0.20.3" = "sha256-UrQ48CoUMSHmlHzOMu22c9N4hxJtHL2ZYRabYjf5byA=";
+      "tree-sitter-solidity-0.0.3" = "sha256-b+LthCf+g19sjKeNgXZmUV0RNi94O3u0WmXfgKRpaE0=";
     };
   };
 
@@ -152,6 +155,8 @@ rustPlatform.buildRustPackage {
   # file cannot create directory: /var/empty/local/lib64/cmake/Llama
   doCheck = false;
 
+  passthru.updateScript = nix-update-script { };
+
   meta = with lib; {
     homepage = "https://github.com/TabbyML/tabby";
     changelog = "https://github.com/TabbyML/tabby/releases/tag/v${version}";
diff --git a/pkgs/by-name/ta/tailscale-nginx-auth/package.nix b/pkgs/by-name/ta/tailscale-nginx-auth/package.nix
index 044334c60264..a71d1988cafc 100644
--- a/pkgs/by-name/ta/tailscale-nginx-auth/package.nix
+++ b/pkgs/by-name/ta/tailscale-nginx-auth/package.nix
@@ -1,7 +1,7 @@
 { lib, stdenv, buildGoModule, fetchFromGitHub }:
 
 let
-  version = "1.64.2";
+  version = "1.66.3";
 in
 buildGoModule {
   pname = "tailscale-nginx-auth";
@@ -11,9 +11,9 @@ buildGoModule {
     owner = "tailscale";
     repo = "tailscale";
     rev = "v${version}";
-    hash = "sha256-DS7C/G1Nj9gIjYwXaEeCLbtH9HbB0tRoJBDjZc/nq5g=";
+    hash = "sha256-dFyXOoN4YZfN3G1XfHK1/8M1ROwW9Q9eCl/NjTdfD4Q=";
   };
-  vendorHash = "sha256-pYeHqYd2cCOVQlD1r2lh//KC+732H0lj1fPDBr+W8qA=";
+  vendorHash = "sha256-Hd77xy8stw0Y6sfk3/ItqRIbM/349M/4uf0iNy1xJGw=";
 
   CGO_ENABLED = 0;
 
diff --git a/pkgs/development/tools/analysis/tartan/default.nix b/pkgs/by-name/ta/tartan/package.nix
index 1106d017cba1..d7d4d4a6f745 100644
--- a/pkgs/development/tools/analysis/tartan/default.nix
+++ b/pkgs/by-name/ta/tartan/package.nix
@@ -1,25 +1,26 @@
-{ stdenv
-, lib
-, fetchFromGitLab
-, meson
-, ninja
-, pkg-config
-, llvmPackages
-, gobject-introspection
-, glib
-, unstableGitUpdater
+{
+  stdenv,
+  lib,
+  fetchFromGitLab,
+  meson,
+  ninja,
+  pkg-config,
+  llvmPackages,
+  gobject-introspection,
+  glib,
+  unstableGitUpdater,
 }:
 
-stdenv.mkDerivation rec {
+stdenv.mkDerivation {
   pname = "tartan";
-  version = "unstable-2021-12-23";
+  version = "0.3.0-unstable-2023-10-11";
 
   src = fetchFromGitLab {
     domain = "gitlab.freedesktop.org";
     owner = "tartan";
     repo = "tartan";
-    rev = "bd4ea95d8b3ce1258491e9fac7fcc37d2b241a16";
-    sha256 = "l3duPt8Kh/JljzOV+Dm26XbS7gZ+mmFfYUYofWSJRyo=";
+    rev = "4a7c945535d746d3d874ebebc0217715d674a862";
+    hash = "sha256-DYvbBGgytf1JOYKejZB+ReehD8iKm1n4BhMmLQURay0=";
   };
 
   nativeBuildInputs = [
@@ -45,7 +46,7 @@ stdenv.mkDerivation rec {
   meta = with lib; {
     broken = stdenv.isDarwin;
     description = "Tools and Clang plugins for developing code with GLib";
-    homepage = "https://freedesktop.org/wiki/Software/tartan";
+    homepage = "https://gitlab.freedesktop.org/tartan/tartan";
     license = licenses.gpl3Plus;
     platforms = platforms.unix;
     maintainers = with maintainers; [ jtojnar ];
diff --git a/pkgs/by-name/ta/taskwarrior3/package.nix b/pkgs/by-name/ta/taskwarrior3/package.nix
index 6f48f5593231..dd5f038b1503 100644
--- a/pkgs/by-name/ta/taskwarrior3/package.nix
+++ b/pkgs/by-name/ta/taskwarrior3/package.nix
@@ -15,15 +15,15 @@
   darwin,
 }:
 stdenv.mkDerivation rec {
-    pname = "taskwarrior";
-    version = "3.0.0-unstable-2024-04-07";
-    src = fetchFromGitHub {
-      owner = "GothenburgBitFactory";
-      repo = "taskwarrior";
-      rev = "fd306712b85dda3ea89de4e617aebeb98b2ede80";
-      fetchSubmodules = true;
-      sha256 = "sha256-vzfHq/LHfnTx6CVGFCuO6W5aSqj1jVqldMdmyciSDDk=";
-    };
+  pname = "taskwarrior";
+  version = "3.0.2";
+  src = fetchFromGitHub {
+    owner = "GothenburgBitFactory";
+    repo = "taskwarrior";
+    rev = "v3.0.2";
+    hash = "sha256-vN3X6vLuD4Fw9wpEUYLf8sboA5GIcdP5EFb41KS6d5s=";
+    fetchSubmodules = true;
+  };
 
   postPatch = ''
     substituteInPlace src/commands/CmdNews.cpp \
@@ -55,7 +55,7 @@ stdenv.mkDerivation rec {
     name = "${pname}-${version}-cargo-deps";
     inherit src;
     sourceRoot = src.name;
-    hash = "sha256-zQca/1tI/GUCekKhrg2iSL+h69SH6Ttsj3MqwDKj8HQ=";
+    hash = "sha256-4hdM9LgDa47ZYcX30HXvixIRy0xaahG4XBqPiUM+IUM=";
   };
   cargoRoot = "./";
   preConfigure = ''
diff --git a/pkgs/by-name/te/tecoc/package.nix b/pkgs/by-name/te/tecoc/package.nix
index a5531b3aa874..a28e814c904b 100644
--- a/pkgs/by-name/te/tecoc/package.nix
+++ b/pkgs/by-name/te/tecoc/package.nix
@@ -7,7 +7,7 @@
 
 stdenv.mkDerivation (finalAttrs: {
   pname = "tecoc";
-  version = "unstable-2023-06-21";
+  version = "0-unstable-2023-06-21";
 
   src = fetchFromGitHub {
     owner = "blakemcbride";
diff --git a/pkgs/by-name/te/templ/package.nix b/pkgs/by-name/te/templ/package.nix
index f3442c0de4fb..a7a74e993f24 100644
--- a/pkgs/by-name/te/templ/package.nix
+++ b/pkgs/by-name/te/templ/package.nix
@@ -5,16 +5,16 @@
 
 buildGoModule rec {
   pname = "templ";
-  version = "0.2.663";
+  version = "0.2.680";
 
   src = fetchFromGitHub {
     owner = "a-h";
     repo = "templ";
     rev = "v${version}";
-    hash = "sha256-TU8QG6OmUzSNDAX9W0Ntmz5cucLqVQeTskfnJbm/YM0=";
+    hash = "sha256-n5OSbVc+UhN0WeWzG1Lop5oX5Zc/hlp/aaBoFjpua64=";
   };
 
-  vendorHash = "sha256-Upd5Wq4ajsyOMDiAWS2g2iNO1sm1XJc43AFQLIo5eDM=";
+  vendorHash = "sha256-zYW2dM+g9RfiOrNjhIsfszy3yqTcAKzGbDPpQh5TP6E=";
 
   subPackages = [ "cmd/templ" ];
 
diff --git a/pkgs/by-name/te/tenki/package.nix b/pkgs/by-name/te/tenki/package.nix
index 464e57682494..ccf3757bdb37 100644
--- a/pkgs/by-name/te/tenki/package.nix
+++ b/pkgs/by-name/te/tenki/package.nix
@@ -4,16 +4,16 @@
 }:
 rustPlatform.buildRustPackage rec {
   pname = "tenki";
-  version = "1.8.0";
+  version = "1.11.0";
 
   src = fetchFromGitHub {
     owner = "ckaznable";
     repo = "tenki";
     rev = "v${version}";
-    hash = "sha256-FItq/rnxJsEnKFPUR59Wo3eQvaykaIyCohCcOlPrdAE=";
+    hash = "sha256-jd7D0iC3+s3w6uG0WqlvL9F4xQL+cQzsUvAIOc7ORgw=";
   };
 
-  cargoHash = "sha256-PhilKt7gLWoOOpkpSPa1/E33rmHvX466hSCGoNfezq0=";
+  cargoHash = "sha256-3SdOUSSerTnA9VHZEmFt1LiatLwC7Dq4k/MKstE8x80=";
 
   meta = with lib; {
     description = "tty-clock with weather effect";
diff --git a/pkgs/by-name/te/tenv/package.nix b/pkgs/by-name/te/tenv/package.nix
index d974007a2037..78ec93cc5d4e 100644
--- a/pkgs/by-name/te/tenv/package.nix
+++ b/pkgs/by-name/te/tenv/package.nix
@@ -2,16 +2,16 @@
 
 buildGoModule rec {
   pname = "tenv";
-  version = "1.9.4";
+  version = "1.11.0";
 
   src = fetchFromGitHub {
     owner = "tofuutils";
     repo = "tenv";
     rev = "v${version}";
-    hash = "sha256-lrBoZwdhDPE2cGTxptMV6PChUdHe99n7AqCozMUkXk0=";
+    hash = "sha256-LjgcI3E6K6b8fca9HdLyyIJJMHFxRtHdvWQb19jFHpA=";
   };
 
-  vendorHash = "sha256-NMkR90+kJ3VsuhF45l5K68uOqenPfINZDEE0GfjULro=";
+  vendorHash = "sha256-teog4VJGDOYsABuE2/fvOtcWvC8mM36rJQI6KZb3eS8=";
 
   # Tests disabled for requiring network access to release.hashicorp.com
   doCheck = false;
diff --git a/pkgs/by-name/te/termsonic/package.nix b/pkgs/by-name/te/termsonic/package.nix
new file mode 100644
index 000000000000..2dfb14677500
--- /dev/null
+++ b/pkgs/by-name/te/termsonic/package.nix
@@ -0,0 +1,33 @@
+{
+  lib,
+  buildGoModule,
+  fetchzip,
+  pkg-config,
+  alsa-lib
+}:
+buildGoModule rec {
+  name = "termsonic";
+  version = "0-unstable-2024-02-02";
+
+  src = fetchzip {
+    url = "https://git.sixfoisneuf.fr/termsonic/snapshot/termsonic-7a3aabee59e1a427aff755fc69759265ad9d0adc.zip";
+    hash = "sha256-C5/4679qw4CAdUt9lXpPIR3yejrPdddvmjgbpLF3SvA=";
+  };
+
+  vendorHash = "sha256-wCtQD9f1mbN/0qUZnamPoVn9p4Ra5dQ34vlT+XjPF3k=";
+
+  nativeBuildInputs = [ pkg-config ];
+
+  buildInputs = [ alsa-lib ];
+
+  strictDeps = true;
+
+  meta = with lib; {
+    homepage = "https://git.sixfoisneuf.fr/termsonic";
+    description = "A Subsonic client running in your terminal";
+    license = licenses.gpl3Plus;
+    platforms = platforms.unix;
+    mainProgram = "termsonic";
+    maintainers = with maintainers; [ mksafavi ];
+  };
+}
diff --git a/pkgs/by-name/te/terragrunt/package.nix b/pkgs/by-name/te/terragrunt/package.nix
index a381efeaa871..36ed4f13f8cc 100644
--- a/pkgs/by-name/te/terragrunt/package.nix
+++ b/pkgs/by-name/te/terragrunt/package.nix
@@ -5,16 +5,16 @@
 
 buildGoModule rec {
   pname = "terragrunt";
-  version = "0.57.5";
+  version = "0.58.2";
 
   src = fetchFromGitHub {
     owner = "gruntwork-io";
     repo = pname;
     rev = "refs/tags/v${version}";
-    hash = "sha256-G2eIzEgTKWCS8GGR8I1jZPQVBd8HwC/iB632ErsksGo=";
+    hash = "sha256-Bcn3wwhAzbdO3XBrLKApAurpnpRcVJLWo6C9x/n3Nz0=";
   };
 
-  vendorHash = "sha256-JKiEJw61B4vyKsi4M36v8NF/eOqbGr55/8y/Rru3L9Q=";
+  vendorHash = "sha256-ZuOgbwE32yFXPn+AqlQ397a4UZ+MWuj5ppCrDGnC3og=";
 
   doCheck = false;
 
diff --git a/pkgs/by-name/te/textsnatcher/package.nix b/pkgs/by-name/te/textsnatcher/package.nix
index 21b75c31a37f..670c87faeba5 100644
--- a/pkgs/by-name/te/textsnatcher/package.nix
+++ b/pkgs/by-name/te/textsnatcher/package.nix
@@ -4,7 +4,7 @@
 , meson
 , ninja
 , vala
-, wrapGAppsHook
+, wrapGAppsHook3
 , pkg-config
 , pantheon
 , libhandy
@@ -33,7 +33,7 @@ stdenv.mkDerivation (finalAttrs: {
     vala
     pkg-config
     desktop-file-utils
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
diff --git a/pkgs/by-name/th/the-powder-toy/package.nix b/pkgs/by-name/th/the-powder-toy/package.nix
new file mode 100644
index 000000000000..ee3265ccd30e
--- /dev/null
+++ b/pkgs/by-name/th/the-powder-toy/package.nix
@@ -0,0 +1,75 @@
+{
+  bzip2,
+  Cocoa,
+  copyDesktopItems,
+  curl,
+  fetchFromGitHub,
+  fftwFloat,
+  jsoncpp,
+  lib,
+  libpng,
+  lua,
+  luajit,
+  meson,
+  ninja,
+  pkg-config,
+  SDL2,
+  stdenv,
+  zlib,
+}:
+stdenv.mkDerivation rec {
+  pname = "the-powder-toy";
+  version = "98.2.365";
+
+  src = fetchFromGitHub {
+    owner = "The-Powder-Toy";
+    repo = "The-Powder-Toy";
+    rev = "refs/tags/v${version}";
+    hash = "sha256-S2aUa25EnUfX6ShW6D+wHrsTLxTcCFcZ/uLE9EWGu4Q=";
+  };
+
+  nativeBuildInputs = [
+    meson
+    ninja
+    pkg-config
+  ] ++ lib.optional stdenv.isLinux copyDesktopItems;
+
+  buildInputs = [
+    bzip2
+    curl
+    fftwFloat
+    jsoncpp
+    libpng
+    lua
+    luajit
+    SDL2
+    zlib
+  ] ++ lib.optional stdenv.isDarwin Cocoa;
+
+  mesonFlags = [ "-Dworkaround_elusive_bzip2=false" ];
+
+  installPhase = ''
+    runHook preInstall
+
+    install -Dm 755 powder $out/bin/powder
+
+    mkdir -p $out/share
+    mv ../resources $out/share
+
+    runHook postInstall
+  '';
+
+  desktopItems = [ "resources/powder.desktop" ];
+
+  meta = with lib; {
+    description = "A free 2D physics sandbox game";
+    homepage = "https://powdertoy.co.uk/";
+    platforms = platforms.unix;
+    license = licenses.gpl3Plus;
+    maintainers = with maintainers; [
+      abbradar
+      siraben
+    ];
+    mainProgram = "powder";
+  };
+}
diff --git a/pkgs/by-name/th/themix-gui/package.nix b/pkgs/by-name/th/themix-gui/package.nix
index c73724a0ca27..8393884cb5c2 100644
--- a/pkgs/by-name/th/themix-gui/package.nix
+++ b/pkgs/by-name/th/themix-gui/package.nix
@@ -8,7 +8,7 @@
 , gtk3
 , python3
 , fetchFromGitHub
-, wrapGAppsHook
+, wrapGAppsHook3
 }:
 
 let
@@ -33,7 +33,7 @@ stdenv.mkDerivation {
     gobject-introspection
     py
     sassc
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
@@ -72,7 +72,7 @@ stdenv.mkDerivation {
     homepage = "https://github.com/themix-project/themix-gui";
     license = lib.licenses.gpl3Only;
     mainProgram = "themix-gui";
-    maintainers = with lib.maintainers; [ eclairevoyant ];
+    maintainers = with lib.maintainers; [ ];
     platforms = lib.platforms.linux;
   };
 }
diff --git a/pkgs/by-name/ti/tilix/package.nix b/pkgs/by-name/ti/tilix/package.nix
index 2e0bdad0be8c..4394a2a52f58 100644
--- a/pkgs/by-name/ti/tilix/package.nix
+++ b/pkgs/by-name/ti/tilix/package.nix
@@ -13,7 +13,7 @@
 , gettext
 , gtkd
 , libsecret
-, wrapGAppsHook
+, wrapGAppsHook3
 , libunwind
 , appstream
 , nixosTests
@@ -42,7 +42,7 @@ stdenv.mkDerivation (finalAttrs: {
     ninja
     pkg-config
     python3
-    wrapGAppsHook
+    wrapGAppsHook3
     appstream
   ];
 
diff --git a/pkgs/by-name/ti/tiny-dfr/package.nix b/pkgs/by-name/ti/tiny-dfr/package.nix
new file mode 100644
index 000000000000..ab1d5298ec8a
--- /dev/null
+++ b/pkgs/by-name/ti/tiny-dfr/package.nix
@@ -0,0 +1,40 @@
+{ lib, rustPlatform, fetchFromGitHub, pkg-config
+, cairo, gdk-pixbuf, glib, libinput, libxml2, pango, udev
+}:
+
+rustPlatform.buildRustPackage rec {
+  pname = "tiny-dfr";
+  version = "0.2.0";
+
+  src = fetchFromGitHub {
+    owner = "WhatAmISupposedToPutHere";
+    repo = "tiny-dfr";
+    rev = "v${version}";
+    hash = "sha256-oawKYrfXAQ5RFMdUCG7F12wHcnFif++44s2KsX9ns6U=";
+  };
+
+  cargoHash = "sha256-QOkztErJLFXPxCb8MvaXi7jGXeI5A0q8LwZtYddzUZE=";
+
+  nativeBuildInputs = [ pkg-config ];
+  buildInputs = [ cairo gdk-pixbuf glib libinput libxml2 pango udev ];
+
+  postConfigure = ''
+    substituteInPlace etc/systemd/system/tiny-dfr.service \
+        --replace-fail /usr/bin $out/bin
+    substituteInPlace src/*.rs --replace-quiet /usr/share $out/share
+  '';
+
+  postInstall = ''
+    cp -R etc $out/lib
+    cp -R share $out
+  '';
+
+  meta = with lib; {
+    homepage = "https://github.com/WhatAmISupposedToPutHere/tiny-dfr";
+    description = "The most basic dynamic function row daemon possible";
+    license = [ licenses.asl20 licenses.mit ];
+    mainProgram = "tiny-dfr";
+    maintainers = [ maintainers.qyliss ];
+    platforms = platforms.linux;
+  };
+}
diff --git a/pkgs/by-name/ti/tinymist/Cargo.lock b/pkgs/by-name/ti/tinymist/Cargo.lock
index b561b67c1088..d841971169af 100644
--- a/pkgs/by-name/ti/tinymist/Cargo.lock
+++ b/pkgs/by-name/ti/tinymist/Cargo.lock
@@ -29,6 +29,18 @@ dependencies = [
 ]
 
 [[package]]
+name = "ahash"
+version = "0.8.11"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "e89da841a80418a9b391ebaea17f5c112ffaaa96f621d2c285b5174da76b9011"
+dependencies = [
+ "cfg-if",
+ "once_cell",
+ "version_check",
+ "zerocopy",
+]
+
+[[package]]
 name = "aho-corasick"
 version = "1.1.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -38,6 +50,12 @@ dependencies = [
 ]
 
 [[package]]
+name = "allocator-api2"
+version = "0.2.18"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "5c6cb57a04249c6480766f7f7cef5467412af1490f8d1e243141daddada3264f"
+
+[[package]]
 name = "android-tzdata"
 version = "0.1.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -122,6 +140,12 @@ dependencies = [
 ]
 
 [[package]]
+name = "arraydeque"
+version = "0.5.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "7d902e3d592a523def97af8f317b08ce16b7ab854c1985a0c671e6f15cebc236"
+
+[[package]]
 name = "arrayref"
 version = "0.3.7"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -1468,7 +1492,7 @@ version = "0.12.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "8a9ee70c43aaf417c914396645a0fa852624801b24ebb7ae78fe8272889ac888"
 dependencies = [
- "ahash",
+ "ahash 0.7.8",
 ]
 
 [[package]]
@@ -1476,6 +1500,19 @@ name = "hashbrown"
 version = "0.14.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "290f1a1d9242c78d09ce40a5e87e7554ee637af1351968159f4952f028f75604"
+dependencies = [
+ "ahash 0.8.11",
+ "allocator-api2",
+]
+
+[[package]]
+name = "hashlink"
+version = "0.8.4"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "e8094feaf31ff591f651a2664fb9cfd92bba7a60ce3197265e9482ebe753c8f7"
+dependencies = [
+ "hashbrown 0.14.3",
+]
 
 [[package]]
 name = "hayagriva"
@@ -3681,7 +3718,7 @@ dependencies = [
 
 [[package]]
 name = "tests"
-version = "0.11.6"
+version = "0.11.8"
 dependencies = [
  "insta",
  "lsp-server",
@@ -3778,7 +3815,7 @@ dependencies = [
 
 [[package]]
 name = "tinymist"
-version = "0.11.6"
+version = "0.11.8"
 dependencies = [
  "anyhow",
  "async-trait",
@@ -3829,9 +3866,10 @@ dependencies = [
 
 [[package]]
 name = "tinymist-query"
-version = "0.11.6"
+version = "0.11.8"
 dependencies = [
  "anyhow",
+ "biblatex",
  "comemo 0.4.0",
  "ecow 0.2.2",
  "ena",
@@ -3854,7 +3892,9 @@ dependencies = [
  "rust_iso639",
  "serde",
  "serde_json",
+ "serde_yaml",
  "sha2",
+ "siphasher 1.0.1",
  "strum 0.26.2",
  "toml 0.8.12",
  "ttf-parser",
@@ -3863,11 +3903,12 @@ dependencies = [
  "typst-ts-core",
  "unscanny",
  "walkdir",
+ "yaml-rust2",
 ]
 
 [[package]]
 name = "tinymist-render"
-version = "0.11.6"
+version = "0.11.8"
 dependencies = [
  "base64 0.22.0",
  "log",
@@ -4131,7 +4172,7 @@ checksum = "42ff0bf0c66b8238c6f3b578df37d0b7848e55df8577b3f74f92a69acceeb825"
 [[package]]
 name = "typst"
 version = "0.11.0"
-source = "git+https://github.com/Myriad-Dreamin/typst.git?branch=tinymist-v0.11.0#88608109579929b0c1fbab12d7a2afaea0baaf74"
+source = "git+https://github.com/Myriad-Dreamin/typst.git?branch=tinymist-v0.11.0-2#6f1cdbb625fd16ad2f26466f4d72818ac24b83d9"
 dependencies = [
  "az",
  "bitflags 2.5.0",
@@ -4198,7 +4239,7 @@ checksum = "f13f85360328da54847dd7fefaf272dfa5b6d1fdeb53f32938924c39bf5b2c6c"
 [[package]]
 name = "typst-macros"
 version = "0.11.0"
-source = "git+https://github.com/Myriad-Dreamin/typst.git?branch=tinymist-v0.11.0#88608109579929b0c1fbab12d7a2afaea0baaf74"
+source = "git+https://github.com/Myriad-Dreamin/typst.git?branch=tinymist-v0.11.0-2#6f1cdbb625fd16ad2f26466f4d72818ac24b83d9"
 dependencies = [
  "heck 0.4.1",
  "proc-macro2",
@@ -4209,7 +4250,7 @@ dependencies = [
 [[package]]
 name = "typst-pdf"
 version = "0.11.0"
-source = "git+https://github.com/Myriad-Dreamin/typst.git?branch=tinymist-v0.11.0#88608109579929b0c1fbab12d7a2afaea0baaf74"
+source = "git+https://github.com/Myriad-Dreamin/typst.git?branch=tinymist-v0.11.0-2#6f1cdbb625fd16ad2f26466f4d72818ac24b83d9"
 dependencies = [
  "base64 0.22.0",
  "bytemuck",
@@ -4269,7 +4310,7 @@ dependencies = [
 [[package]]
 name = "typst-render"
 version = "0.11.0"
-source = "git+https://github.com/Myriad-Dreamin/typst.git?branch=tinymist-v0.11.0#88608109579929b0c1fbab12d7a2afaea0baaf74"
+source = "git+https://github.com/Myriad-Dreamin/typst.git?branch=tinymist-v0.11.0-2#6f1cdbb625fd16ad2f26466f4d72818ac24b83d9"
 dependencies = [
  "bytemuck",
  "comemo 0.4.0",
@@ -4289,7 +4330,7 @@ dependencies = [
 [[package]]
 name = "typst-svg"
 version = "0.11.0"
-source = "git+https://github.com/Myriad-Dreamin/typst.git?branch=tinymist-v0.11.0#88608109579929b0c1fbab12d7a2afaea0baaf74"
+source = "git+https://github.com/Myriad-Dreamin/typst.git?branch=tinymist-v0.11.0-2#6f1cdbb625fd16ad2f26466f4d72818ac24b83d9"
 dependencies = [
  "base64 0.22.0",
  "comemo 0.4.0",
@@ -4322,7 +4363,7 @@ dependencies = [
 [[package]]
 name = "typst-syntax"
 version = "0.11.0"
-source = "git+https://github.com/Myriad-Dreamin/typst.git?branch=tinymist-v0.11.0#88608109579929b0c1fbab12d7a2afaea0baaf74"
+source = "git+https://github.com/Myriad-Dreamin/typst.git?branch=tinymist-v0.11.0-2#6f1cdbb625fd16ad2f26466f4d72818ac24b83d9"
 dependencies = [
  "comemo 0.4.0",
  "ecow 0.2.2",
@@ -4338,7 +4379,7 @@ dependencies = [
 [[package]]
 name = "typst-timing"
 version = "0.11.0"
-source = "git+https://github.com/Myriad-Dreamin/typst.git?branch=tinymist-v0.11.0#88608109579929b0c1fbab12d7a2afaea0baaf74"
+source = "git+https://github.com/Myriad-Dreamin/typst.git?branch=tinymist-v0.11.0-2#6f1cdbb625fd16ad2f26466f4d72818ac24b83d9"
 dependencies = [
  "parking_lot",
  "serde",
@@ -4458,9 +4499,9 @@ dependencies = [
 
 [[package]]
 name = "typstyle"
-version = "0.11.14"
+version = "0.11.17"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f701eb3c275c8250b3e5e18c3c081e36861cdd5b2e78538ff4984735cbfd9591"
+checksum = "b25283094eca3cf1200a2105bb339f367e1fb127e69b22ae106d7e706d7eb08d"
 dependencies = [
  "anyhow",
  "clap",
@@ -5133,6 +5174,17 @@ dependencies = [
 ]
 
 [[package]]
+name = "yaml-rust2"
+version = "0.8.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "498f4d102a79ea1c9d4dd27573c0fc96ad74c023e8da38484e47883076da25fb"
+dependencies = [
+ "arraydeque",
+ "encoding_rs",
+ "hashlink",
+]
+
+[[package]]
 name = "yoke"
 version = "0.7.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -5157,6 +5209,26 @@ dependencies = [
 ]
 
 [[package]]
+name = "zerocopy"
+version = "0.7.32"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "74d4d3961e53fa4c9a25a8637fc2bfaf2595b3d3ae34875568a5cf64787716be"
+dependencies = [
+ "zerocopy-derive",
+]
+
+[[package]]
+name = "zerocopy-derive"
+version = "0.7.32"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "9ce1b18ccd8e73a9321186f97e46f9f04b778851177567b1975109d26a08d2a6"
+dependencies = [
+ "proc-macro2",
+ "quote",
+ "syn 2.0.55",
+]
+
+[[package]]
 name = "zerofrom"
 version = "0.1.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
diff --git a/pkgs/by-name/ti/tinymist/package.nix b/pkgs/by-name/ti/tinymist/package.nix
index da2189145581..9849b56f1eef 100644
--- a/pkgs/by-name/ti/tinymist/package.nix
+++ b/pkgs/by-name/ti/tinymist/package.nix
@@ -13,19 +13,19 @@ rustPlatform.buildRustPackage rec {
   pname = "tinymist";
   # Please update the corresponding vscode extension when updating
   # this derivation.
-  version = "0.11.6";
+  version = "0.11.8";
 
   src = fetchFromGitHub {
     owner = "Myriad-Dreamin";
     repo = "tinymist";
     rev = "v${version}";
-    hash = "sha256-7YG15kt+pIxAK22QYiTApu5lBV6Afe3Jss6L5dTGsGI=";
+    hash = "sha256-1mgtyOXSvovO2f4XSdirzTIcUlbFoT9t/UFa2uW5CpI=";
   };
 
   cargoLock = {
     lockFile = ./Cargo.lock;
     outputHashes = {
-      "typst-0.11.0" = "sha256-UzZ0tbC6Dhn178GQDyLl70WTp3h5WdaBCsEKgLisZ2M=";
+      "typst-0.11.0" = "sha256-J3oSrxylR00r3Tc4KDmuW6ungQkoYJiI7cZEpbyyNsc=";
       "typst-syntax-0.7.0" = "sha256-yrtOmlFAKOqAmhCP7n0HQCOQpU3DWyms5foCdUb9QTg=";
       "typstfmt_lib-0.2.7" = "sha256-LBYsTCjZ+U+lgd7Z3H1sBcWwseoHsuepPd66bWgfvhI=";
     };
diff --git a/pkgs/by-name/tk/tkdiff/189.patch b/pkgs/by-name/tk/tkdiff/189.patch
deleted file mode 100644
index c638727d3bd4..000000000000
--- a/pkgs/by-name/tk/tkdiff/189.patch
+++ /dev/null
@@ -1,71 +0,0 @@
-Index: tkdiff
-===================================================================
-diff --git a/tkdiff b/tkdiff
---- a/tkdiff	(revision 188)
-+++ b/tkdiff	(revision 189)
-@@ -111,7 +111,7 @@
- }
- 
- # Determine the name of the temporary directory, the rc file name,
--# and possible VPATH EnvVar, all of which are platform dependent.
-+# NULLdev, and possible VPATH EnvVar, all of which are platform dependent.
- #
- # Much MAY likely be overridden by a preference in .tkdiffrc,
- # EXCEPT (obviously) when no such file actually exists yet
-@@ -126,6 +126,9 @@
-             set opts(tmpdir) C:/temp
-         }
- 
-+        # Reserved filename which is actually a NULL device
-+        set opts(NULLdev) "nul"
-+
-         # Split up and store a VPATH if it exists
-         if {[info exists ::env(VPATH)]} {
-             set finfo(Vpath) [split $::env(VPATH) ";"]
-@@ -145,6 +148,9 @@
-             set opts(tmpdir) $::env(TMPDIR)
-         }  {set opts(tmpdir) /tmp }
- 
-+        # Reserved filename which is actually a NULL device (Unix-like platforms)
-+        set opts(NULLdev) "/dev/null"
-+
-         # Split up and store a VPATH if it exists
-         if {[info exists ::env(VPATH)]} {
-             set finfo(Vpath) [split $::env(VPATH) ":"]
-@@ -2106,7 +2112,7 @@
- #           1  Failed   (PLUS a 'pushed' HARD-error message to the caller)
- ###############################################################################
- proc get-file {fn ndx {probe 0}} {
--    global g finfo
-+    global g opts finfo
- 
-     # Ancestor files are stored into a slightly adjusted array element name 
-     #   N.B> 'ndx' AS PASSED *can* be an EXPRESSION (not just a number): resolve!
-@@ -2121,7 +2127,7 @@
-     } elseif {!$tildechk} {
-         # DO NOT REPORT non-existence if this attempt was ONLY a probe
-         if {$probe} { return 1 } { set MSG "File '$fn' does not exist" }
--    } elseif {[file isfile $fn]} {
-+    } elseif {[file isfile $fn] || $fn == $opts(NULLdev)} {
-         set finfo(${A}lbl,$ndx) [shortNm [set finfo(${A}pth,$ndx) "$fn"]]
-     } else { set MSG "'$fn' exists, but is not a file" }
- 
-@@ -2857,7 +2863,7 @@
- # Align various label decorations to the CURRENT input file pairing
- ###############################################################################
- proc alignDecor {pairnum} {
--    global g w finfo
-+    global g w opts finfo
- 
-     # Establish if 3way mode is NOW active and what file indices are in use
-     set g(is3way) [info exists finfo(albl,$pairnum)]
-@@ -2874,7 +2880,8 @@
-             set finfo(lbl,$LR) $finfo(ulbl,$ndx($n))    ;# Override lbl display
-         } else {set finfo(lbl,$LR) $finfo(lbl,$ndx($n))}
- 
--        if {![info exists finfo(tmp,$ndx($n))]} {
-+        if {![info exists finfo(tmp,$ndx($n))] \
-+            && $finfo(pth,$ndx($n)) != $opts(NULLdev)} {
-             #   (N.B> Tip data will ALSO be used by report generation heading)
-             set    g(tooltip,${LR}Label) "{$finfo(pth,$ndx($n))\n"
-             append g(tooltip,${LR}Label) \
diff --git a/pkgs/by-name/tk/tkdiff/194.patch b/pkgs/by-name/tk/tkdiff/194.patch
deleted file mode 100644
index 0fc50db3028b..000000000000
--- a/pkgs/by-name/tk/tkdiff/194.patch
+++ /dev/null
@@ -1,15 +0,0 @@
-Index: tkdiff
-===================================================================
-diff --git a/tkdiff b/tkdiff
---- a/tkdiff	(revision 193)
-+++ b/tkdiff	(revision 194)
-@@ -4557,7 +4557,8 @@
-                 }
-             }
-         }
--    }
-+        # But KICK scroll to *LOOK* for Ratcliff (when ON); otherwise is a NOOP
-+    } { $w(acTxWdg) SEE @1,1 }
- }
- 
- ###############################################################################
diff --git a/pkgs/by-name/tk/tkdiff/package.nix b/pkgs/by-name/tk/tkdiff/package.nix
index b057a07e56c4..8cf0e575f8db 100644
--- a/pkgs/by-name/tk/tkdiff/package.nix
+++ b/pkgs/by-name/tk/tkdiff/package.nix
@@ -2,24 +2,13 @@
 
 stdenv.mkDerivation (finalAttrs: {
   pname = "tkdiff";
-  version = "5.6";
+  version = "5.7";
 
   src = fetchzip {
     url = "mirror://sourceforge/tkdiff/tkdiff-${builtins.replaceStrings ["."] ["-"] finalAttrs.version}.zip";
-    hash = "sha256-EpbIdjsejkkTaSpoZRM5AHz0r1Cio+YzRryK0BoghBk=";
+    hash = "sha256-ZndpolvaXoCAzR4KF+Bu7DJrXyB/C2H2lWp5FyzOc4M=";
   };
 
-  patches = [
-    # fix regression: allow /dev/null again. eg: "tkdiff /dev/null file"
-    # svn diff --git -r188:189 https://svn.code.sf.net/p/tkdiff/code/trunk
-    ./189.patch
-
-    # fix regression: trigger redraw when inline recursive diff requested
-    # svn diff --git -r193:194 https://svn.code.sf.net/p/tkdiff/code/trunk | \
-    #   sed -e '/^@@ -4545,7/,14d' -e '/^@@ -18063,7/,$d'
-    ./194.patch
-  ];
-
   nativeBuildInputs = [ makeBinaryWrapper ];
 
   installPhase = ''
diff --git a/pkgs/by-name/to/tootik/package.nix b/pkgs/by-name/to/tootik/package.nix
index b799a753146f..c3b81e172282 100644
--- a/pkgs/by-name/to/tootik/package.nix
+++ b/pkgs/by-name/to/tootik/package.nix
@@ -2,16 +2,16 @@
 
 buildGoModule rec {
   pname = "tootik";
-  version = "0.10.3";
+  version = "0.11.2";
 
   src = fetchFromGitHub {
     owner = "dimkr";
     repo = "tootik";
     rev = version;
-    hash = "sha256-afGFQxC9WJxSQk6LLl4IBo1JoKqcKQ/Qc7HOaJKi2Do=";
+    hash = "sha256-aAIyEUeIZvDbWfUcfcETGrB3Md8GqRB8hvRBUtMU5Zs=";
   };
 
-  vendorHash = "sha256-Lsc8nK4I1gZEW7RbEapHr3IJ6wTATLElX3XfNX1LwvM=";
+  vendorHash = "sha256-kAnGMNBWqH37QETnn2ncp7qOaCSx6Xd4HCFhCehh/kU=";
 
   nativeBuildInputs = [ openssl ];
 
diff --git a/pkgs/by-name/to/torrentstream/deps.nix b/pkgs/by-name/to/torrentstream/deps.nix
index 048d85c10a62..b68fcf2d6cab 100644
--- a/pkgs/by-name/to/torrentstream/deps.nix
+++ b/pkgs/by-name/to/torrentstream/deps.nix
@@ -2,38 +2,42 @@
 # Please dont edit it manually, your changes might get overwritten!
 
 { fetchNuGet }: [
-  (fetchNuGet { pname = "Microsoft.Extensions.Configuration"; version = "7.0.0"; sha256 = "0n1grglxql9llmrsbbnlz5chx8mxrb5cpvjngm0hfyrkgzcwz90d"; })
-  (fetchNuGet { pname = "Microsoft.Extensions.Configuration.Abstractions"; version = "7.0.0"; sha256 = "1as8cygz0pagg17w22nsf6mb49lr2mcl1x8i3ad1wi8lyzygy1a3"; })
-  (fetchNuGet { pname = "Microsoft.Extensions.Configuration.Binder"; version = "7.0.0"; sha256 = "1qifb1pv7s76lih8wnjk418wdk4qwn87q2n6dx54knfvxai410bl"; })
-  (fetchNuGet { pname = "Microsoft.Extensions.Configuration.CommandLine"; version = "7.0.0"; sha256 = "1pmgjrvwdzqrxjb24cg3fd624r64lgywbqc9symd5hyl4175pwk8"; })
-  (fetchNuGet { pname = "Microsoft.Extensions.Configuration.EnvironmentVariables"; version = "7.0.0"; sha256 = "0nhh7rnh45s39x8sjn88czg7nyfpry85pkm0g619j8b468zj8nb4"; })
-  (fetchNuGet { pname = "Microsoft.Extensions.Configuration.FileExtensions"; version = "7.0.0"; sha256 = "1fk7dcz6gfhd1k1d8ksz22rnjvj1waqjzk29ym4i3dz73rsq8j1i"; })
-  (fetchNuGet { pname = "Microsoft.Extensions.Configuration.Json"; version = "7.0.0"; sha256 = "05zjmrpp99l128wijp1fy8asskc11ls871qaqr4mjnz3gbfycxnj"; })
-  (fetchNuGet { pname = "Microsoft.Extensions.Configuration.UserSecrets"; version = "7.0.0"; sha256 = "0ks7lcyvfvr3ar36f5gp89bnnblxzic5vawppfcrvhw1ivas4mp1"; })
-  (fetchNuGet { pname = "Microsoft.Extensions.DependencyInjection"; version = "7.0.0"; sha256 = "121zs4jp8iimgbpzm3wsglhjwkc06irg1pxy8c1zcdlsg34cfq1p"; })
-  (fetchNuGet { pname = "Microsoft.Extensions.DependencyInjection.Abstractions"; version = "7.0.0"; sha256 = "181d7mp9307fs17lyy42f8cxnjwysddmpsalky4m0pqxcimnr6g7"; })
-  (fetchNuGet { pname = "Microsoft.Extensions.FileProviders.Abstractions"; version = "7.0.0"; sha256 = "0ff20yklyjgyjzdyv7sybczgqhgd557m05dbwxzjznr0x41b180d"; })
-  (fetchNuGet { pname = "Microsoft.Extensions.FileProviders.Physical"; version = "7.0.0"; sha256 = "1f1h0l47abw0spssd64qkhgd7b54pyzslyb586zp21milimcfmgv"; })
-  (fetchNuGet { pname = "Microsoft.Extensions.FileSystemGlobbing"; version = "7.0.0"; sha256 = "1812vnkn8n0i4yr3k5azcxcfx1bbpcsmms95rdyxjfrzfksr05ai"; })
-  (fetchNuGet { pname = "Microsoft.Extensions.Hosting"; version = "7.0.0"; sha256 = "0wx50kswqv8jw1vr8sma1hf1mm3wkwsnml0hzzlilvak9ql7cr3n"; })
-  (fetchNuGet { pname = "Microsoft.Extensions.Hosting.Abstractions"; version = "7.0.0"; sha256 = "1h5szfsr1dalsvdj9c18y6362853chisfns0hfpsq44hz0pr8j9q"; })
-  (fetchNuGet { pname = "Microsoft.Extensions.Hosting.Systemd"; version = "7.0.0"; sha256 = "07cr2lzmlczmz1f9sjv1i9sfqwinkcmkq1q0kkscnh9bqa85aaqd"; })
-  (fetchNuGet { pname = "Microsoft.Extensions.Hosting.WindowsServices"; version = "7.0.0"; sha256 = "1cvc24ma18vi2hb3kwkb9k7hfx5v8lcfdvy9n8bc12d5nhmh9zcc"; })
-  (fetchNuGet { pname = "Microsoft.Extensions.Logging"; version = "7.0.0"; sha256 = "1bqd3pqn5dacgnkq0grc17cgb2i0w8z1raw12nwm3p3zhrfcvgxf"; })
-  (fetchNuGet { pname = "Microsoft.Extensions.Logging.Abstractions"; version = "7.0.0"; sha256 = "1gn7d18i1wfy13vrwhmdv1rmsb4vrk26kqdld4cgvh77yigj90xs"; })
-  (fetchNuGet { pname = "Microsoft.Extensions.Logging.Configuration"; version = "7.0.0"; sha256 = "1f5fhpvzwyrwxh3g1ry027s4skmklf6mbm2w0p13h0x6fbmxcb24"; })
-  (fetchNuGet { pname = "Microsoft.Extensions.Logging.Console"; version = "7.0.0"; sha256 = "1m8ri2m3vlv9vzk0068jkrx0vkk4sqmk1kxmn8pc3wys38d38qaf"; })
-  (fetchNuGet { pname = "Microsoft.Extensions.Logging.Debug"; version = "7.0.0"; sha256 = "14p7hrhdd58fxdhjbyjwmlzr00vs03bmns3sf2f6alsgpvbf2h1i"; })
-  (fetchNuGet { pname = "Microsoft.Extensions.Logging.EventLog"; version = "7.0.0"; sha256 = "0q1cgi456shngxs70ar0ibshpm5qk8whw369jrl6xdxnf1vxkkq8"; })
-  (fetchNuGet { pname = "Microsoft.Extensions.Logging.EventSource"; version = "7.0.0"; sha256 = "11rskmrijf6xv78slm38zywj6l3wjlm017kijhan1kfg56f1kvdk"; })
-  (fetchNuGet { pname = "Microsoft.Extensions.Options"; version = "7.0.0"; sha256 = "0b90zkrsk5dw3wr749rbynhpxlg4bgqdnd7d5vdlw2g9c7zlhgx6"; })
-  (fetchNuGet { pname = "Microsoft.Extensions.Options.ConfigurationExtensions"; version = "7.0.0"; sha256 = "1liyprh0zha2vgmqh92n8kkjz61zwhr7g16f0gmr297z2rg1j5pj"; })
-  (fetchNuGet { pname = "Microsoft.Extensions.Primitives"; version = "7.0.0"; sha256 = "1b4km9fszid9vp2zb3gya5ni9fn8bq62bzaas2ck2r7gs0sdys80"; })
+  (fetchNuGet { pname = "dotnet-ef"; version = "8.0.0"; sha256 = "1qh1zwyfgzy2486xvwiblg8algmwi70w2p1sqaiw4pfjz5c6dn21"; })
+  (fetchNuGet { pname = "Microsoft.Extensions.Configuration"; version = "8.0.0"; sha256 = "080kab87qgq2kh0ijry5kfdiq9afyzb8s0k3jqi5zbbi540yq4zl"; })
+  (fetchNuGet { pname = "Microsoft.Extensions.Configuration.Abstractions"; version = "8.0.0"; sha256 = "1jlpa4ggl1gr5fs7fdcw04li3y3iy05w3klr9lrrlc7v8w76kq71"; })
+  (fetchNuGet { pname = "Microsoft.Extensions.Configuration.Binder"; version = "8.0.0"; sha256 = "1m0gawiz8f5hc3li9vd5psddlygwgkiw13d7div87kmkf4idza8r"; })
+  (fetchNuGet { pname = "Microsoft.Extensions.Configuration.CommandLine"; version = "8.0.0"; sha256 = "026f7f2iv6ph2dc5rnslll0bly8qcx5clmh2nn9hgyqjizzc4qvy"; })
+  (fetchNuGet { pname = "Microsoft.Extensions.Configuration.EnvironmentVariables"; version = "8.0.0"; sha256 = "13qb8wz3k59ihq0mjcqz1kwrpyzxn5da4dhk2pvcgc42z9kcbf7r"; })
+  (fetchNuGet { pname = "Microsoft.Extensions.Configuration.FileExtensions"; version = "8.0.0"; sha256 = "1jrmlfzy4h32nzf1nm5q8bhkpx958b0ww9qx1k1zm4pyaf6mqb04"; })
+  (fetchNuGet { pname = "Microsoft.Extensions.Configuration.Json"; version = "8.0.0"; sha256 = "1n3ss26v1lq6b69fxk1vz3kqv9ppxq8ypgdqpd7415xrq66y4bqn"; })
+  (fetchNuGet { pname = "Microsoft.Extensions.Configuration.UserSecrets"; version = "8.0.0"; sha256 = "1br01zhzhnxjzqx63bxd25x48y9xs69hcs71pjni8y9kl50zja7z"; })
+  (fetchNuGet { pname = "Microsoft.Extensions.DependencyInjection"; version = "8.0.0"; sha256 = "0i7qziz0iqmbk8zzln7kx9vd0lbx1x3va0yi3j1bgkjir13h78ps"; })
+  (fetchNuGet { pname = "Microsoft.Extensions.DependencyInjection.Abstractions"; version = "8.0.0"; sha256 = "1zw0bpp5742jzx03wvqc8csnvsbgdqi0ls9jfc5i2vd3cl8b74pg"; })
+  (fetchNuGet { pname = "Microsoft.Extensions.Diagnostics"; version = "8.0.0"; sha256 = "0ghwkld91k20hcbmzg2137w81mzzdh8hfaapdwckhza0vipya4kw"; })
+  (fetchNuGet { pname = "Microsoft.Extensions.Diagnostics.Abstractions"; version = "8.0.0"; sha256 = "15m4j6w9n8h0mj7hlfzb83hd3wn7aq1s7fxbicm16slsjfwzj82i"; })
+  (fetchNuGet { pname = "Microsoft.Extensions.FileProviders.Abstractions"; version = "8.0.0"; sha256 = "1idq65fxwcn882c06yci7nscy9i0rgw6mqjrl7362prvvsd9f15r"; })
+  (fetchNuGet { pname = "Microsoft.Extensions.FileProviders.Physical"; version = "8.0.0"; sha256 = "05wxjvjbx79ir7vfkri6b28k8zl8fa6bbr0i7gahqrim2ijvkp6v"; })
+  (fetchNuGet { pname = "Microsoft.Extensions.FileSystemGlobbing"; version = "8.0.0"; sha256 = "1igf2bqism22fxv7km5yv028r4rg12a4lki2jh4xg3brjkagiv7q"; })
+  (fetchNuGet { pname = "Microsoft.Extensions.Hosting"; version = "8.0.0"; sha256 = "1f2af5m1yny8b43251gsj75hjd9ixni1clcldy8cg91z1vxxm8dh"; })
+  (fetchNuGet { pname = "Microsoft.Extensions.Hosting.Abstractions"; version = "8.0.0"; sha256 = "00d5dwmzw76iy8z40ly01hy9gly49a7rpf7k7m99vrid1kxp346h"; })
+  (fetchNuGet { pname = "Microsoft.Extensions.Hosting.Systemd"; version = "8.0.0"; sha256 = "1jhxx8wyk18vspvfp30j5dymv8m85jg9s1iahdkfyin5v5j8g0xq"; })
+  (fetchNuGet { pname = "Microsoft.Extensions.Hosting.WindowsServices"; version = "8.0.0"; sha256 = "1xwbk1xa2y888a4qrmxn50l9b2l8vnfq1lmia9xh7zykl9zhmrps"; })
+  (fetchNuGet { pname = "Microsoft.Extensions.Logging"; version = "8.0.0"; sha256 = "0nppj34nmq25gnrg0wh1q22y4wdqbih4ax493f226azv8mkp9s1i"; })
+  (fetchNuGet { pname = "Microsoft.Extensions.Logging.Abstractions"; version = "8.0.0"; sha256 = "1klcqhg3hk55hb6vmjiq2wgqidsl81aldw0li2z98lrwx26msrr6"; })
+  (fetchNuGet { pname = "Microsoft.Extensions.Logging.Configuration"; version = "8.0.0"; sha256 = "1d9b734vnll935661wqkgl7ry60rlh5p876l2bsa930mvfsaqfcv"; })
+  (fetchNuGet { pname = "Microsoft.Extensions.Logging.Console"; version = "8.0.0"; sha256 = "1mvp3ipw7k33v2qw2yrvc4vl5yzgpk3yxa94gg0gz7wmcmhzvmkd"; })
+  (fetchNuGet { pname = "Microsoft.Extensions.Logging.Debug"; version = "8.0.0"; sha256 = "1h7mg97lj0ss47kq7zwnihh9c6xcrkwrr8ffhc16qcsrh36sg6q0"; })
+  (fetchNuGet { pname = "Microsoft.Extensions.Logging.EventLog"; version = "8.0.0"; sha256 = "05vfrxw7mlwlwhsl6r4yrhxk3sd8dv5sl0hdlcpgw62n53incw5x"; })
+  (fetchNuGet { pname = "Microsoft.Extensions.Logging.EventSource"; version = "8.0.0"; sha256 = "0gbjll6p03rmw0cf8fp0p8cxzn9awmzv8hvnyqbczrkax5h7p94i"; })
+  (fetchNuGet { pname = "Microsoft.Extensions.Options"; version = "8.0.0"; sha256 = "0p50qn6zhinzyhq9sy5svnmqqwhw2jajs2pbjh9sah504wjvhscz"; })
+  (fetchNuGet { pname = "Microsoft.Extensions.Options.ConfigurationExtensions"; version = "8.0.0"; sha256 = "04nm8v5a3zp0ill7hjnwnja3s2676b4wffdri8hdk2341p7mp403"; })
+  (fetchNuGet { pname = "Microsoft.Extensions.Primitives"; version = "8.0.0"; sha256 = "0aldaz5aapngchgdr7dax9jw5wy7k7hmjgjpfgfv1wfif27jlkqm"; })
   (fetchNuGet { pname = "Mono.Nat"; version = "3.0.0"; sha256 = "17lyjcpwp5j2dwx0gi975x710r7kqkx50c1wmyzwdyqhar3kszi8"; })
   (fetchNuGet { pname = "MonoTorrent"; version = "3.0.0-beta.rev0106"; sha256 = "0zz64nnb02d4pjpffs9x26jvbalm48yaghbgj3vc7j8ff0sm8xr4"; })
   (fetchNuGet { pname = "ReusableTasks"; version = "2.0.2"; sha256 = "0dkyirzspp8spmgd3ad9mak5jhqfmib6m437r2bmmyb3m4mxp5rb"; })
-  (fetchNuGet { pname = "System.Diagnostics.EventLog"; version = "7.0.0"; sha256 = "16p8z975dnzmncfifa9gw9n3k9ycpr2qvz7lglpghsvx0fava8k9"; })
-  (fetchNuGet { pname = "System.ServiceProcess.ServiceController"; version = "7.0.0"; sha256 = "0xgg9y06j6ch3h65lyrpnghb7iaf9g97w1kg5sz0ji6ikfiqlkxz"; })
-  (fetchNuGet { pname = "System.Text.Encodings.Web"; version = "7.0.0"; sha256 = "1151hbyrcf8kyg1jz8k9awpbic98lwz9x129rg7zk1wrs6vjlpxl"; })
-  (fetchNuGet { pname = "System.Text.Json"; version = "7.0.0"; sha256 = "0scb0lp7wbgcinaa4kqiqs7b8i5nx4ppfad81138jiwd1sl37pyp"; })
+  (fetchNuGet { pname = "System.Diagnostics.DiagnosticSource"; version = "8.0.0"; sha256 = "0nzra1i0mljvmnj1qqqg37xs7bl71fnpl68nwmdajchh65l878zr"; })
+  (fetchNuGet { pname = "System.Diagnostics.EventLog"; version = "8.0.0"; sha256 = "1xnvcidh2qf6k7w8ij1rvj0viqkq84cq47biw0c98xhxg5rk3pxf"; })
+  (fetchNuGet { pname = "System.ServiceProcess.ServiceController"; version = "8.0.0"; sha256 = "00hlb8vmfgs2kk39mqmij5h3bz5sgkqxpxvpnki4ncayqadx1bws"; })
+  (fetchNuGet { pname = "System.Text.Encodings.Web"; version = "8.0.0"; sha256 = "1wbypkx0m8dgpsaqgyywz4z760xblnwalb241d5qv9kx8m128i11"; })
+  (fetchNuGet { pname = "System.Text.Json"; version = "8.0.0"; sha256 = "134savxw0sq7s448jnzw17bxcijsi1v38mirpbb6zfxmqlf04msw"; })
 ]
diff --git a/pkgs/by-name/to/torrentstream/package.nix b/pkgs/by-name/to/torrentstream/package.nix
index b59c17dd59c6..34b7e4866d5a 100644
--- a/pkgs/by-name/to/torrentstream/package.nix
+++ b/pkgs/by-name/to/torrentstream/package.nix
@@ -2,39 +2,39 @@
 , buildDotnetModule
 , fetchFromGitHub
 , dotnetCorePackages
-, fetchpatch
 }:
 
 buildDotnetModule rec {
   pname = "torrentstream";
-  version = "1.0.1.6";
+  version = "1.0.1.11";
 
   src = fetchFromGitHub {
     owner = "trueromanus";
     repo = "TorrentStream";
     rev = version;
-    hash = "sha256-41zlzrQ+YGY2wEvq4Su/lp6lOmGW4u0F37ub2a3z+7o=";
+    hash = "sha256-3lmQWx00Ulp0ZyQBEhFT+djHBi84foMlWGJEp/UOGek=";
   };
 
   sourceRoot = "${src.name}/src";
 
-  projectFile = "TorrentStream.sln";
-  nugetDeps = ./deps.nix;
-  dotnet-sdk = dotnetCorePackages.sdk_7_0;
-  dotnet-runtime = dotnetCorePackages.aspnetcore_7_0;
+  dotnet-runtime = dotnetCorePackages.aspnetcore_8_0;
+  dotnet-sdk = dotnetCorePackages.sdk_8_0;
   executables = [ "TorrentStream" ];
+  nugetDeps = ./deps.nix;
+  projectFile = "TorrentStream.csproj";
+  selfContainedBuild = true;
+
+  dotnetFlags = [
+    "-p:PublishAot=false" # untill https://github.com/NixOS/nixpkgs/issues/280923 is fixed
+    "-p:PublishSingleFile=true"
+  ];
 
   patches = [
-    (fetchpatch {
-       name = "allow-setting-listen-address.patch";
-       url = "https://github.com/trueromanus/TorrentStream/compare/1.0.1.6..6900b6f33f2b4b94888a8a1355029a81767e66a4.patch";
-       hash = "sha256-jOUs5SO2BnNnkz3wJ710Z4stVlhZ8nKqpmHr4BNlGs0=";
-       stripLen = 1;
-       excludes = [ "README.md" ];
-     })
     ./0001-display-the-message-of-caught-exceptions.patch
   ];
 
+  postInstall = "rm $out/lib/torrentstream/NuGet.config"; # reduce closure size
+
   meta = {
     homepage = "https://github.com/trueromanus/TorrentStream";
     description = "Simple web server for streaming torrent files in video players";
diff --git a/pkgs/by-name/tp/tplay/package.nix b/pkgs/by-name/tp/tplay/package.nix
index 4258bf6960cc..37bf1db7d198 100644
--- a/pkgs/by-name/tp/tplay/package.nix
+++ b/pkgs/by-name/tp/tplay/package.nix
@@ -29,7 +29,13 @@ rustPlatform.buildRustPackage rec {
     "--skip=pipeline::runner::tests::test_time_to_send_next_frame"
   ];
 
-  nativeBuildInputs = [ pkg-config clang ffmpeg ];
+  nativeBuildInputs = [
+    rustPlatform.bindgenHook
+    pkg-config
+    clang
+    ffmpeg
+  ];
+
   buildInputs = [
     openssl.dev
     alsa-lib.dev
@@ -38,8 +44,6 @@ rustPlatform.buildRustPackage rec {
     opencv
   ];
 
-  env.LIBCLANG_PATH = "${libclang.lib}/lib";
-
   meta = {
     description = "Terminal Media Player";
     homepage = "https://github.com/maxcurzi/tplay";
diff --git a/pkgs/by-name/tr/tracexec/package.nix b/pkgs/by-name/tr/tracexec/package.nix
new file mode 100644
index 000000000000..055644424b5a
--- /dev/null
+++ b/pkgs/by-name/tr/tracexec/package.nix
@@ -0,0 +1,37 @@
+{
+  lib,
+  rustPlatform,
+  fetchFromGitHub,
+}:
+
+rustPlatform.buildRustPackage rec {
+  pname = "tracexec";
+  version = "0.2.2";
+
+  src = fetchFromGitHub {
+    owner = "kxxt";
+    repo = "tracexec";
+    rev = "v${version}";
+    hash = "sha256-X2hLaBndeYLBMnDe2MT4pgZiPj0COHG2uTvAbW+JVd4=";
+  };
+
+  cargoHash = "sha256-3xANOv+A4soDcKMINy+RnI8l6uS3koZpw3CMIUCmK5A=";
+
+  # Remove test binaries and only retain tracexec
+  postInstall = ''
+    find "$out/bin" -type f \! -name tracexec -print0 | xargs -0 rm -v
+  '';
+
+  # ptrace is not allowed in sandbox
+  doCheck = false;
+
+  meta = {
+    description = "A small utility for tracing execve{,at} and pre-exec behavior";
+    homepage = "https://github.com/kxxt/tracexec";
+    changelog = "https://github.com/kxxt/tracexec/blob/${src.rev}/CHANGELOG.md";
+    license = lib.licenses.gpl2;
+    maintainers = with lib.maintainers; [ fpletz ];
+    mainProgram = "tracexec";
+    platforms = lib.platforms.linux;
+  };
+}
diff --git a/pkgs/development/libraries/tracker-miners/default.nix b/pkgs/by-name/tr/tracker-miners/package.nix
index 6d9d1628e4e7..caf2e36488b2 100644
--- a/pkgs/development/libraries/tracker-miners/default.nix
+++ b/pkgs/by-name/tr/tracker-miners/package.nix
@@ -45,13 +45,13 @@
 , e2fsprogs
 }:
 
-stdenv.mkDerivation rec {
+stdenv.mkDerivation (finalAttrs: {
   pname = "tracker-miners";
-  version = "3.6.2";
+  version = "3.7.3";
 
   src = fetchurl {
-    url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
-    sha256 = "Ctci89Uywh11fPSI+UKWBnnqj0V5Je+pdlbtTJ6bpP8=";
+    url = "mirror://gnome/sources/tracker-miners/${lib.versions.majorMinor finalAttrs.version}/tracker-miners-${finalAttrs.version}.tar.xz";
+    hash = "sha256-50OIFUtcGXtLfuQvDc6MX7vd1NNhCT74jU+zA+M9pf4=";
   };
 
   nativeBuildInputs = [
@@ -130,15 +130,15 @@ stdenv.mkDerivation rec {
 
   passthru = {
     updateScript = gnome.updateScript {
-      packageName = pname;
+      packageName = "tracker-miners";
     };
   };
 
-  meta = with lib; {
+  meta = {
     homepage = "https://gitlab.gnome.org/GNOME/tracker-miners";
     description = "Desktop-neutral user information store, search tool and indexer";
-    maintainers = teams.gnome.members;
-    license = licenses.gpl2Plus;
-    platforms = platforms.unix;
+    maintainers = lib.teams.gnome.members;
+    license = lib.licenses.gpl2Plus;
+    platforms = lib.platforms.unix;
   };
-}
+})
diff --git a/pkgs/by-name/tr/treedome/package.nix b/pkgs/by-name/tr/treedome/package.nix
index 86a554b2f8ae..07efeebccb3f 100644
--- a/pkgs/by-name/tr/treedome/package.nix
+++ b/pkgs/by-name/tr/treedome/package.nix
@@ -13,7 +13,7 @@
 , pkg-config
 , rustPlatform
 , webkitgtk
-, wrapGAppsHook
+, wrapGAppsHook3
 , sqlite
 }:
 
@@ -98,7 +98,7 @@ rustPlatform.buildRustPackage {
     cmake
     pkg-config
     cargo-tauri
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
diff --git a/pkgs/development/tools/treefmt/default.nix b/pkgs/by-name/tr/treefmt/package.nix
index 48fc4b44962e..48fc4b44962e 100644
--- a/pkgs/development/tools/treefmt/default.nix
+++ b/pkgs/by-name/tr/treefmt/package.nix
diff --git a/pkgs/by-name/tr/treefmt2/package.nix b/pkgs/by-name/tr/treefmt2/package.nix
new file mode 100644
index 000000000000..defe9100906a
--- /dev/null
+++ b/pkgs/by-name/tr/treefmt2/package.nix
@@ -0,0 +1,33 @@
+{ lib, buildGoModule, fetchFromGitHub }:
+buildGoModule rec {
+  pname = "treefmt";
+  version = "2.0.0-rc1";
+
+  src = fetchFromGitHub {
+    owner = "numtide";
+    repo = "treefmt";
+    rev = "v${version}";
+    hash = "sha256-iRjd7iYd3617XZrGD6Bi6d1SoE8dgATMbT4AMXklfgM=";
+  };
+
+  vendorHash = "sha256-xbXy5Csl2JD5/F5mtvh8J36VZqrUIfO3OBV/LE+KzWA=";
+
+  subPackages = [ "." ];
+
+  CGO_ENABLED = 1;
+
+  ldflags = [
+    "-s"
+    "-w"
+    "-X git.numtide.com/numtide/treefmt/build.Name=${pname}"
+    "-X git.numtide.com/numtide/treefmt/build.Version=v${version}"
+  ];
+
+  meta = {
+    description = "one CLI to format the code tree";
+    homepage = "https://github.com/numtide/treefmt";
+    license = lib.licenses.mit;
+    maintainers = [ lib.maintainers.brianmcgee lib.maintainers.zimbatm ];
+    mainProgram = "treefmt";
+  };
+}
diff --git a/pkgs/applications/networking/p2p/tribler/default.nix b/pkgs/by-name/tr/tribler/package.nix
index bb009ff0adf0..db89a613d316 100644
--- a/pkgs/applications/networking/p2p/tribler/default.nix
+++ b/pkgs/by-name/tr/tribler/package.nix
@@ -1,23 +1,25 @@
-{ lib
-, stdenv
-, fetchurl
-, fetchPypi
-, python3
-, makeWrapper
-, libtorrent-rasterbar-1_2_x
-, qt5
+{
+  lib,
+  stdenv,
+  fetchurl,
+  fetchPypi,
+  python3,
+  makeWrapper,
+  libtorrent-rasterbar-1_2_x,
+  qt5,
+  nix-update-script,
 }:
 
 let
   libtorrent = (python3.pkgs.toPythonModule (libtorrent-rasterbar-1_2_x)).python;
 in
-stdenv.mkDerivation rec {
+stdenv.mkDerivation (finalAttrs: {
   pname = "tribler";
-  version = "7.13.0";
+  version = "7.14.0";
 
   src = fetchurl {
-    url = "https://github.com/Tribler/tribler/releases/download/v${version}/Tribler-${version}.tar.xz";
-    hash = "sha256-j9+Kq6dOqiJCTY3vuRWGnciuwACU7L0pl73l6nkDLN4=";
+    url = "https://github.com/Tribler/tribler/releases/download/v${finalAttrs.version}/Tribler-${finalAttrs.version}.tar.xz";
+    hash = "sha256-fQJOs9P4y71De/+svmD7YZ4+tm/bC3rspm7SbOHlSR4=";
   };
 
   nativeBuildInputs = [
@@ -28,57 +30,55 @@ stdenv.mkDerivation rec {
     qt5.wrapQtAppsHook
   ];
 
-  buildInputs = [
-    python3.pkgs.python
-  ];
+  buildInputs = [ python3.pkgs.python ];
 
-  pythonPath = [
-    libtorrent
-  ] ++ (with python3.pkgs; [
-    # requirements-core.txt
-    aiohttp
-    aiohttp-apispec
-    anyio
-    chardet
-    configobj
-    cryptography
-    decorator
-    faker
-    libnacl
-    lz4
-    marshmallow
-    netifaces
-    networkx
-    pony
-    psutil
-    pyasn1
-    pydantic_1
-    pyopenssl
-    pyyaml
-    sentry-sdk
-    service-identity
-    yappi
-    yarl
-    bitarray
-    (pyipv8.overrideAttrs (p: rec {
-      version = "2.10.0";
-      src = fetchPypi {
-        inherit (p) pname;
-        inherit version;
-        hash = "sha256-yxiXBxBiPokequm+vjsHIoG9kQnRnbsOx3mYOd8nmiU=";
-      };
-    }))
-    libtorrent
-    file-read-backwards
-    brotli
-    human-readable
-    # requirements.txt
-    pillow
-    pyqt5
-    #pyqt5-sip
-    pyqtgraph
-    pyqtwebengine
-  ]);
+  pythonPath =
+    [ libtorrent ]
+    ++ (with python3.pkgs; [
+      # requirements-core.txt
+      aiohttp
+      aiohttp-apispec
+      anyio
+      chardet
+      configobj
+      cryptography
+      decorator
+      faker
+      libnacl
+      lz4
+      marshmallow
+      netifaces
+      networkx
+      pony
+      psutil
+      pyasn1
+      pydantic_1
+      pyopenssl
+      pyyaml
+      sentry-sdk
+      service-identity
+      yappi
+      yarl
+      bitarray
+      filelock
+      (pyipv8.overrideAttrs (p: rec {
+        version = "2.10.0";
+        src = fetchPypi {
+          inherit (p) pname;
+          inherit version;
+          hash = "sha256-yxiXBxBiPokequm+vjsHIoG9kQnRnbsOx3mYOd8nmiU=";
+        };
+      }))
+      file-read-backwards
+      brotli
+      human-readable
+      # requirements.txt
+      pillow
+      pyqt5
+      #pyqt5-sip
+      pyqtgraph
+      pyqtwebengine
+    ]);
 
   installPhase = ''
     mkdir -pv $out
@@ -106,12 +106,19 @@ stdenv.mkDerivation rec {
     export QT_PLUGIN_PATH="${qt5.qtsvg.bin}/${qt5.qtbase.qtPluginPrefix}"
   '';
 
-  meta = with lib; {
+  passthru.updateScript = nix-update-script { };
+
+  meta = {
     description = "Decentralised P2P filesharing client based on the Bittorrent protocol";
     mainProgram = "tribler";
     homepage = "https://www.tribler.org/";
-    license = licenses.lgpl21Plus;
-    maintainers = with maintainers; [ xvapx viric mkg20001 ];
-    platforms = platforms.linux;
+    changelog = "https://github.com/Tribler/tribler/releases/tag/v${finalAttrs.version}";
+    license = lib.licenses.lgpl21Plus;
+    maintainers = with lib.maintainers; [
+      xvapx
+      viric
+      mkg20001
+    ];
+    platforms = lib.platforms.linux;
   };
-}
+})
diff --git a/pkgs/by-name/tr/troubadix/package.nix b/pkgs/by-name/tr/troubadix/package.nix
index 9575a83ce48f..d70553604bc3 100644
--- a/pkgs/by-name/tr/troubadix/package.nix
+++ b/pkgs/by-name/tr/troubadix/package.nix
@@ -7,14 +7,14 @@
 
 python3.pkgs.buildPythonApplication rec {
   pname = "troubadix";
-  version = "24.4.1";
+  version = "24.5.1";
   pyproject = true;
 
   src = fetchFromGitHub {
     owner = "greenbone";
     repo = "troubadix";
     rev = "refs/tags/v${version}";
-    hash = "sha256-+JrMUog04SS24ZKiBFB46AyYTDzVu7d4IdoX9SRMhpk=";
+    hash = "sha256-kA+9zcP3unNb2tE3OU8J/3xHX+pRZ/06lEQtH/0QEk4=";
   };
 
   pythonRelaxDeps = [ "validators" ];
diff --git a/pkgs/by-name/tt/tt/package.nix b/pkgs/by-name/tt/tt/package.nix
new file mode 100644
index 000000000000..f45376aa4caa
--- /dev/null
+++ b/pkgs/by-name/tt/tt/package.nix
@@ -0,0 +1,35 @@
+{
+  lib,
+  fetchFromGitHub,
+  buildGoModule,
+  installShellFiles,
+}:
+
+buildGoModule rec {
+  pname = "tt";
+  version = "0.4.2";
+
+  src = fetchFromGitHub {
+    owner = "lemnos";
+    repo = "tt";
+    rev = "v${version}";
+    hash = "sha256-vKh19xYBeNqvVFilvA7NeQ34RM5VnwDs+Hu/pe3J0y4=";
+  };
+
+  vendorHash = "sha256-edY2CcZXOIed0+7IA8kr4lAfuSJx/nHtmc734XzT4z4=";
+
+  nativeBuildInputs = [ installShellFiles ];
+
+  postInstall = ''
+      mv $out/bin/src $out/bin/tt
+      installManPage tt.1.gz
+  '';
+
+  meta = {
+    description = "Typing test in the terminal written in Go";
+    homepage = "https://github.com/lemnos/tt";
+    license = lib.licenses.mit;
+    mainProgram = "tt";
+    maintainers = with lib.maintainers; [ vinetos ];
+  };
+}
diff --git a/pkgs/by-name/tu/tuifimanager/package.nix b/pkgs/by-name/tu/tuifimanager/package.nix
index 3e0531f4805f..7d54de40be3b 100644
--- a/pkgs/by-name/tu/tuifimanager/package.nix
+++ b/pkgs/by-name/tu/tuifimanager/package.nix
@@ -1,29 +1,65 @@
-{ lib
+{ stdenv
+, lib
 , python3
 , fetchFromGitHub
+, kdePackages
+, gnome
+, qt6
+, makeWrapper
+, x11Support ? stdenv.isLinux
+# pypinput is marked as broken for darwin
+, pynputSupport ? stdenv.isLinux
+# Experimental Drag & Drop support requires x11 & pyinput suport
+, hasDndSupport ? x11Support && pynputSupport
+, enableDragAndDrop ? false
 }:
 
+lib.throwIf (enableDragAndDrop && !hasDndSupport)
+  "Drag and drop support is only available for linux with xorg."
+
 python3.pkgs.buildPythonApplication rec {
   pname = "tuifimanager";
-  version = "4.0.5";
+  version = "4.0.6";
   format = "pyproject";
 
   src = fetchFromGitHub {
     owner = "GiorgosXou";
     repo = "TUIFIManager";
-    rev = "refs/tags/v${version}";
-    hash = "sha256-DuCrIJuADmJ0MHIP0+OJ0zCrQR/oGdgzJ1xck4m/tPo=";
+    rev = "v.${version}";
+    hash = "sha256-pppPlpPA1UYjUCKvGCjUo9jFNyOOkk6aF7/v5sXIptI=";
   };
 
   nativeBuildInputs = [
     python3.pkgs.setuptools
     python3.pkgs.setuptools-scm
-  ];
+  ] ++ (lib.optionals enableDragAndDrop [
+    qt6.wrapQtAppsHook
+    makeWrapper
+  ]);
 
   propagatedBuildInputs = [
     python3.pkgs.send2trash
     python3.pkgs.unicurses
-  ];
+  ] ++ (lib.optionals enableDragAndDrop [
+    python3.pkgs.pynput
+    python3.pkgs.pyside6
+    python3.pkgs.requests
+    python3.pkgs.xlib
+    kdePackages.qtbase
+    kdePackages.qt6gtk2
+  ]);
+
+  postFixup = let
+    # fix missing 'adwaita' warning missing with ncurses tui
+    # see: https://github.com/NixOS/nixpkgs/issues/60918
+    theme = gnome.gnome-themes-extra;
+  in
+    lib.optionalString enableDragAndDrop ''
+      wrapProgram $out/bin/tuifi \
+        --prefix GTK_PATH : "${theme}/lib/gtk-2.0" \
+        --set tuifi_synth_dnd True
+    '';
+
   pythonImportsCheck = [ "TUIFIManager" ];
 
   meta = with lib; {
diff --git a/pkgs/development/tools/twiggy/default.nix b/pkgs/by-name/tw/twiggy/package.nix
index 25d8ab244d9e..25d8ab244d9e 100644
--- a/pkgs/development/tools/twiggy/default.nix
+++ b/pkgs/by-name/tw/twiggy/package.nix
diff --git a/pkgs/by-name/tw/twitch-dl/package.nix b/pkgs/by-name/tw/twitch-dl/package.nix
index 6a7a89d17fe1..fa78dc273c75 100644
--- a/pkgs/by-name/tw/twitch-dl/package.nix
+++ b/pkgs/by-name/tw/twitch-dl/package.nix
@@ -7,14 +7,14 @@
 
 python3Packages.buildPythonApplication rec {
   pname = "twitch-dl";
-  version = "2.2.2";
+  version = "2.3.0";
   pyproject = true;
 
   src = fetchFromGitHub {
     owner = "ihabunek";
     repo = "twitch-dl";
     rev = "refs/tags/${version}";
-    hash = "sha256-Os27uqH3MA3v9+8WzfL5KIEUewAzf8JUyRtsWSzw81o=";
+    hash = "sha256-0uOOc3ANXleQlENB+gdWheafBiOOcyZsFvYj7r+WMCY=";
   };
 
   pythonRelaxDeps = [
@@ -42,6 +42,7 @@ python3Packages.buildPythonApplication rec {
   disabledTestPaths = [
     # Requires network access
     "tests/test_api.py"
+    "tests/test_cli.py"
   ];
 
   pythonImportsCheck = [
diff --git a/pkgs/by-name/ty/typos-lsp/package.nix b/pkgs/by-name/ty/typos-lsp/package.nix
index 821c169cad7d..0c69a0cf1a4c 100644
--- a/pkgs/by-name/ty/typos-lsp/package.nix
+++ b/pkgs/by-name/ty/typos-lsp/package.nix
@@ -4,16 +4,18 @@
 }:
 rustPlatform.buildRustPackage rec {
   pname = "typos-lsp";
-  version = "0.1.17";
+  # Please update the corresponding VSCode extension too.
+  # See pkgs/applications/editors/vscode/extensions/tekumara.typos-vscode/default.nix
+  version = "0.1.18";
 
   src = fetchFromGitHub {
     owner = "tekumara";
     repo = "typos-lsp";
     rev = "refs/tags/v${version}";
-    hash = "sha256-Q/V9WabxtsUQ69r7qHzslko8anWyuB3VqVRQJ6gl9O8=";
+    hash = "sha256-6ELn2Q7pAUgnwe8+vAUbuRjaKFWvbGZ1SMfXQ1qKp5c=";
   };
 
-  cargoHash = "sha256-Rus79FpYBgz1CPK4n805Au0ncom8rhD3zD82a2DyR3k=";
+  cargoHash = "sha256-UDID+dI8ETP084WR482uWli2++bI4mRiMvpFpWUlvZE=";
 
   # fix for compilation on aarch64
   # see https://github.com/NixOS/nixpkgs/issues/145726
diff --git a/pkgs/by-name/ty/typst/Cargo.lock b/pkgs/by-name/ty/typst/Cargo.lock
index e054eacee948..0a9e82ce5b2d 100644
--- a/pkgs/by-name/ty/typst/Cargo.lock
+++ b/pkgs/by-name/ty/typst/Cargo.lock
@@ -288,9 +288,9 @@ dependencies = [
 
 [[package]]
 name = "citationberg"
-version = "0.3.0"
+version = "0.3.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "82108f2b676c954076d2e5044f19a6a03887b24bd42804f322e0650d13035899"
+checksum = "d259fe9fd78ffa05a119581d20fddb50bfba428311057b12741ffb9015123d0b"
 dependencies = [
  "quick-xml",
  "serde",
@@ -827,9 +827,9 @@ checksum = "290f1a1d9242c78d09ce40a5e87e7554ee637af1351968159f4952f028f75604"
 
 [[package]]
 name = "hayagriva"
-version = "0.5.2"
+version = "0.5.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "cc2e670de5191df083ddd112cd253049f8213277ccf0c15e18a8bf10e6c666cc"
+checksum = "1d0d20c98b77b86ce737876b2a1653e2e6abbeee84afbb39d72111091191c97a"
 dependencies = [
  "biblatex",
  "ciborium",
@@ -2132,6 +2132,12 @@ dependencies = [
 ]
 
 [[package]]
+name = "shell-escape"
+version = "0.1.5"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "45bb67a18fa91266cc7807181f62f9178a6873bfad7dc788c42e6430db40184f"
+
+[[package]]
 name = "simd-adler32"
 version = "0.3.7"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -2510,7 +2516,7 @@ checksum = "6af6ae20167a9ece4bcb41af5b80f8a1f1df981f6391189ce00fd257af04126a"
 
 [[package]]
 name = "typst"
-version = "0.11.0"
+version = "0.11.1"
 dependencies = [
  "az",
  "bitflags 2.4.2",
@@ -2571,13 +2577,13 @@ dependencies = [
 
 [[package]]
 name = "typst-assets"
-version = "0.11.0"
+version = "0.11.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f13f85360328da54847dd7fefaf272dfa5b6d1fdeb53f32938924c39bf5b2c6c"
+checksum = "2b3061f8d268e8eec7481c9ab24540455cb4912983c49aae38fa6e8bf8ef4d9c"
 
 [[package]]
 name = "typst-cli"
-version = "0.11.0"
+version = "0.11.1"
 dependencies = [
  "chrono",
  "clap",
@@ -2605,6 +2611,7 @@ dependencies = [
  "serde",
  "serde_json",
  "serde_yaml 0.9.32",
+ "shell-escape",
  "tar",
  "tempfile",
  "toml",
@@ -2622,12 +2629,12 @@ dependencies = [
 
 [[package]]
 name = "typst-dev-assets"
-version = "0.11.0"
-source = "git+https://github.com/typst/typst-dev-assets?tag=v0.11.0#e0ef7ad46f28a440c41bc8e78563ace86cc02678"
+version = "0.11.1"
+source = "git+https://github.com/typst/typst-dev-assets?tag=v0.11.1#35caed3a870d46e827cffaa9dc450e38bede2a37"
 
 [[package]]
 name = "typst-docs"
-version = "0.11.0"
+version = "0.11.1"
 dependencies = [
  "clap",
  "comemo",
@@ -2650,7 +2657,7 @@ dependencies = [
 
 [[package]]
 name = "typst-fuzz"
-version = "0.11.0"
+version = "0.11.1"
 dependencies = [
  "comemo",
  "libfuzzer-sys",
@@ -2662,20 +2669,23 @@ dependencies = [
 
 [[package]]
 name = "typst-ide"
-version = "0.11.0"
+version = "0.11.1"
 dependencies = [
  "comemo",
  "ecow",
  "if_chain",
  "log",
+ "once_cell",
  "serde",
  "typst",
+ "typst-assets",
+ "typst-dev-assets",
  "unscanny",
 ]
 
 [[package]]
 name = "typst-macros"
-version = "0.11.0"
+version = "0.11.1"
 dependencies = [
  "heck",
  "proc-macro2",
@@ -2685,7 +2695,7 @@ dependencies = [
 
 [[package]]
 name = "typst-pdf"
-version = "0.11.0"
+version = "0.11.1"
 dependencies = [
  "base64 0.22.0",
  "bytemuck",
@@ -2709,7 +2719,7 @@ dependencies = [
 
 [[package]]
 name = "typst-render"
-version = "0.11.0"
+version = "0.11.1"
 dependencies = [
  "bytemuck",
  "comemo",
@@ -2728,7 +2738,7 @@ dependencies = [
 
 [[package]]
 name = "typst-svg"
-version = "0.11.0"
+version = "0.11.1"
 dependencies = [
  "base64 0.22.0",
  "comemo",
@@ -2744,7 +2754,7 @@ dependencies = [
 
 [[package]]
 name = "typst-syntax"
-version = "0.11.0"
+version = "0.11.1"
 dependencies = [
  "comemo",
  "ecow",
@@ -2759,20 +2769,20 @@ dependencies = [
 
 [[package]]
 name = "typst-tests"
-version = "0.11.0"
+version = "0.11.1"
 dependencies = [
  "clap",
  "comemo",
  "ecow",
  "once_cell",
  "oxipng",
+ "parking_lot",
  "rayon",
  "tiny-skia",
  "ttf-parser",
  "typst",
  "typst-assets",
  "typst-dev-assets",
- "typst-ide",
  "typst-pdf",
  "typst-render",
  "typst-svg",
@@ -2782,7 +2792,7 @@ dependencies = [
 
 [[package]]
 name = "typst-timing"
-version = "0.11.0"
+version = "0.11.1"
 dependencies = [
  "parking_lot",
  "serde",
diff --git a/pkgs/by-name/ty/typst/package.nix b/pkgs/by-name/ty/typst/package.nix
index e470a7f4ce61..af61bdedb11e 100644
--- a/pkgs/by-name/ty/typst/package.nix
+++ b/pkgs/by-name/ty/typst/package.nix
@@ -11,19 +11,19 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "typst";
-  version = "0.11.0";
+  version = "0.11.1";
 
   src = fetchFromGitHub {
     owner = "typst";
     repo = "typst";
     rev = "v${version}";
-    hash = "sha256-RbkirnVrhYT/OuZSdJWMOvQXAeBmsFICsCrezyT6ukA=";
+    hash = "sha256-FagjVU8BJZStE/geexZERuV2P28iF/pPn2mTi1Gu9iU=";
   };
 
   cargoLock = {
     lockFile = ./Cargo.lock;
     outputHashes = {
-      "typst-dev-assets-0.11.0" = "sha256-wTmux3GsUIU+PX6SO9rrQHr3korPFBeP/Z8byC97KUI=";
+      "typst-dev-assets-0.11.1" = "sha256-SMRtitDHFpdMEoOuPBnC3RBTyZ96hb4KmMSCXpAyKfU=";
     };
   };
 
diff --git a/pkgs/by-name/ty/typstyle/Cargo.lock b/pkgs/by-name/ty/typstyle/Cargo.lock
index 47ae5437f5b9..73892cb629cf 100644
--- a/pkgs/by-name/ty/typstyle/Cargo.lock
+++ b/pkgs/by-name/ty/typstyle/Cargo.lock
@@ -3649,7 +3649,7 @@ dependencies = [
 
 [[package]]
 name = "typstyle"
-version = "0.11.13"
+version = "0.11.16"
 dependencies = [
  "anyhow",
  "clap",
diff --git a/pkgs/by-name/ty/typstyle/package.nix b/pkgs/by-name/ty/typstyle/package.nix
index aa44d1de31c8..1022537164f8 100644
--- a/pkgs/by-name/ty/typstyle/package.nix
+++ b/pkgs/by-name/ty/typstyle/package.nix
@@ -1,6 +1,7 @@
 { lib
 , rustPlatform
 , fetchFromGitHub
+, fetchpatch
 , pkg-config
 , libgit2
 , zlib
@@ -10,15 +11,24 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "typstyle";
-  version = "0.11.13";
+  version = "0.11.16";
 
   src = fetchFromGitHub {
     owner = "Enter-tainer";
     repo = "typstyle";
     rev = "v${version}";
-    hash = "sha256-xJoL/YgdkORQf+U/1E2OVk6pD/IuXxJJTw+Xufonjd0=";
+    hash = "sha256-ZmGrdAHbU4PQgd9haoVEZ8Wn8Scujm9bJAtvO2+aPoQ=";
   };
 
+  patches = [
+    (fetchpatch {
+      # Trim whitespace patch
+      name = "whitespace-trim.patch";
+      url = "https://github.com/Enter-tainer/typstyle/commit/127b7362f5938e091e2e5a33976ad3f63b6e4ee3.patch";
+      hash = "sha256-Xzo51bgpEUKP7WDQ7BFNAZsyofPcPDIJMWOf4S+GGvI=";
+    })
+  ];
+
   cargoLock = {
     lockFile = ./Cargo.lock;
     outputHashes = {
diff --git a/pkgs/by-name/uc/ucblogo/package.nix b/pkgs/by-name/uc/ucblogo/package.nix
index 40ccdecf6c68..08e3610b6fb2 100644
--- a/pkgs/by-name/uc/ucblogo/package.nix
+++ b/pkgs/by-name/uc/ucblogo/package.nix
@@ -4,7 +4,7 @@
 , wxGTK32
 , texinfo
 , tetex
-, wrapGAppsHook
+, wrapGAppsHook3
 , autoconf-archive
 , autoreconfHook
 }:
@@ -25,7 +25,7 @@ stdenv.mkDerivation (finalAttrs: {
     autoconf-archive
     texinfo
     tetex
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
diff --git a/pkgs/by-name/uc/uclibc-ng/package.nix b/pkgs/by-name/uc/uclibc-ng/package.nix
index d2ce33e4bab3..aee6f6f015f1 100644
--- a/pkgs/by-name/uc/uclibc-ng/package.nix
+++ b/pkgs/by-name/uc/uclibc-ng/package.nix
@@ -59,11 +59,11 @@ let
 in
 stdenv.mkDerivation (finalAttrs: {
   pname = "uclibc-ng";
-  version = "1.0.47";
+  version = "1.0.48";
 
   src = fetchurl {
     url = "https://downloads.uclibc-ng.org/releases/${finalAttrs.version}/uClibc-ng-${finalAttrs.version}.tar.xz";
-    hash = "sha256-KaTWhKBto0TuPuCazCynZJ1ZKuP/hI9pgUXEbe8F78s=";
+    hash = "sha256-O/X8bMXLxFS2xHhCR1XG9x58FVeKLJZvAmBqpcVZbiE=";
   };
 
   # 'ftw' needed to build acl, a coreutils dependency
diff --git a/pkgs/by-name/ue/ueberzugpp/package.nix b/pkgs/by-name/ue/ueberzugpp/package.nix
index 82fe4ef72ca8..cc0e0cd79535 100644
--- a/pkgs/by-name/ue/ueberzugpp/package.nix
+++ b/pkgs/by-name/ue/ueberzugpp/package.nix
@@ -30,13 +30,13 @@
 
 stdenv.mkDerivation rec {
   pname = "ueberzugpp";
-  version = "2.9.4";
+  version = "2.9.5";
 
   src = fetchFromGitHub {
     owner = "jstkdng";
     repo = "ueberzugpp";
     rev = "v${version}";
-    hash = "sha256-D+7a+3Vxrt+XUq7c2F2eqi8ZGQ2eZd37aTqighWEKPs=";
+    hash = "sha256-BuVInCYpogkn1CnQ2hqLaTi1KJ0mHEEfRIOrTIg9duY=";
   };
 
   strictDeps = true;
diff --git a/pkgs/by-name/uh/uhttpmock_1_0/package.nix b/pkgs/by-name/uh/uhttpmock_1_0/package.nix
new file mode 100644
index 000000000000..1cc16f96eb5e
--- /dev/null
+++ b/pkgs/by-name/uh/uhttpmock_1_0/package.nix
@@ -0,0 +1,56 @@
+{ stdenv
+, lib
+, fetchFromGitLab
+, meson
+, mesonEmulatorHook
+, ninja
+, pkg-config
+, gobject-introspection
+, vala
+, gtk-doc
+, docbook-xsl-nons
+, glib
+, libsoup_3
+}:
+
+stdenv.mkDerivation (finalAttrs: {
+  pname = "uhttpmock";
+  version = "0.10.0";
+
+  outputs = [ "out" "dev" "devdoc" ];
+
+  src = fetchFromGitLab {
+    domain = "gitlab.freedesktop.org";
+    owner = "pwithnall";
+    repo = "uhttpmock";
+    rev = finalAttrs.version;
+    hash = "sha256-d3IVlPOLOLzlUDuGOLll8pOK5FMsXI/d2wbwPZ6WI34=";
+  };
+
+  strictDeps = true;
+
+  nativeBuildInputs = [
+    meson
+    ninja
+    pkg-config
+    gobject-introspection
+    vala
+    gtk-doc
+    docbook-xsl-nons
+  ] ++ lib.optionals (!stdenv.buildPlatform.canExecute stdenv.hostPlatform) [
+    mesonEmulatorHook
+  ];
+
+  propagatedBuildInputs = [
+    glib
+    libsoup_3
+  ];
+
+  meta = with lib; {
+    description = "Project for mocking web service APIs which use HTTP or HTTPS";
+    homepage = "https://gitlab.freedesktop.org/pwithnall/uhttpmock/";
+    license = licenses.lgpl21Plus;
+    maintainers = teams.gnome.members;
+    platforms = platforms.linux;
+  };
+})
diff --git a/pkgs/by-name/un/unciv/package.nix b/pkgs/by-name/un/unciv/package.nix
index d55a5d06ec9a..bf75681ffc96 100644
--- a/pkgs/by-name/un/unciv/package.nix
+++ b/pkgs/by-name/un/unciv/package.nix
@@ -27,11 +27,11 @@ let
 in
 stdenv.mkDerivation rec {
   pname = "unciv";
-  version = "4.11.9";
+  version = "4.11.12";
 
   src = fetchurl {
     url = "https://github.com/yairm210/Unciv/releases/download/${version}/Unciv.jar";
-    hash = "sha256-fAosJmEAQGA1QAyabcmqwuDeqUM+t3mNIfSOrAwc5hg=";
+    hash = "sha256-duhcNkK5Ah8KpyzIzwZvSKRjuYuVg1H6luKUPHjHwlc=";
   };
 
   dontUnpack = true;
diff --git a/pkgs/by-name/un/unipicker/package.nix b/pkgs/by-name/un/unipicker/package.nix
new file mode 100644
index 000000000000..5f0bca5ef962
--- /dev/null
+++ b/pkgs/by-name/un/unipicker/package.nix
@@ -0,0 +1,47 @@
+{
+  stdenv,
+  fetchFromGitHub,
+  lib,
+  fzf,
+  xclip,
+}:
+
+stdenv.mkDerivation (finalAttrs: {
+  pname = "unipicker";
+  version = "2.0.1";
+
+  src = fetchFromGitHub {
+    owner = "jeremija";
+    repo = "unipicker";
+    rev = "v${finalAttrs.version}";
+    hash = "sha256-Br9nCK5eWoSN1i4LM2F31B62L9vuN5KzjS9pC9lq9oM=";
+  };
+
+  buildInputs = [
+    fzf
+    xclip
+  ];
+
+  preInstall = ''
+    substituteInPlace unipicker \
+      --replace-fail "/etc/unipickerrc" "$out/etc/unipickerrc" \
+      --replace-fail "fzf" "${fzf}/bin/fzf"
+    substituteInPlace unipickerrc \
+      --replace-fail "/usr/local" "$out" \
+      --replace-fail "fzf" "${fzf}/bin/fzf"
+  '';
+
+  makeFlags = [
+    "PREFIX=${placeholder "out"}"
+    "DESTDIR=${placeholder "out"}"
+  ];
+
+  meta = {
+    description = "A CLI utility for searching unicode characters by description and optionally copying them to clipboard";
+    homepage = "https://github.com/jeremija/unipicker";
+    license = lib.licenses.mit;
+    maintainers = with lib.maintainers; [ sigmanificient ];
+    platforms = lib.platforms.unix;
+    mainProgram = "unipicker";
+  };
+})
diff --git a/pkgs/by-name/un/unison/package.nix b/pkgs/by-name/un/unison/package.nix
index 2d68ba5799b4..f512d775ea8d 100644
--- a/pkgs/by-name/un/unison/package.nix
+++ b/pkgs/by-name/un/unison/package.nix
@@ -4,20 +4,20 @@
 , ocamlPackages
 , copyDesktopItems
 , makeDesktopItem
-, wrapGAppsHook
+, wrapGAppsHook3
 , gsettings-desktop-schemas
 , enableX11 ? !stdenv.isDarwin
 }:
 
 stdenv.mkDerivation (finalAttrs: {
   pname = "unison";
-  version = "2.53.4";
+  version = "2.53.5";
 
   src = fetchFromGitHub {
     owner = "bcpierce00";
     repo = "unison";
     rev = "v${finalAttrs.version}";
-    hash = "sha256-nFT6FjlQjh6qx0fepmT4aiQj2SxA7U/as+IU9xXNok0=";
+    hash = "sha256-XCdK38jG7tRI+/Zk72JVY8a/pPJF6KVaf8l2s3hgxLs=";
   };
 
   strictDeps = true;
@@ -28,7 +28,7 @@ stdenv.mkDerivation (finalAttrs: {
   '';
 
   nativeBuildInputs = [ ocamlPackages.ocaml ocamlPackages.findlib ]
-    ++ lib.optionals enableX11 [ copyDesktopItems wrapGAppsHook ];
+    ++ lib.optionals enableX11 [ copyDesktopItems wrapGAppsHook3 ];
   buildInputs = lib.optionals enableX11 [ gsettings-desktop-schemas ocamlPackages.lablgtk3 ];
 
   makeFlags = [ "PREFIX=$(out)" ]
diff --git a/pkgs/by-name/un/unrar/package.nix b/pkgs/by-name/un/unrar/package.nix
index d99a991ebc64..6a71c63d9e2d 100644
--- a/pkgs/by-name/un/unrar/package.nix
+++ b/pkgs/by-name/un/unrar/package.nix
@@ -5,12 +5,12 @@
 
 stdenv.mkDerivation (finalAttrs: {
   pname = "unrar";
-  version = "7.0.8";
+  version = "7.0.9";
 
   src = fetchzip {
     url = "https://www.rarlab.com/rar/unrarsrc-${finalAttrs.version}.tar.gz";
     stripRoot = false;
-    hash = "sha256-oyLU4LkjzqjpiPLMpsTJWqaF9Tr4Tg441vXo3JiORDo=";
+    hash = "sha256-lHh02uqHdX2Q9yyaGiHlkdBjlQE1tQyB44d39yDE4ls=";
   };
 
   sourceRoot = finalAttrs.src.name;
diff --git a/pkgs/development/tools/upbound/default.nix b/pkgs/by-name/up/upbound/package.nix
index 92031aa6dddf..421be958b168 100644
--- a/pkgs/development/tools/upbound/default.nix
+++ b/pkgs/by-name/up/upbound/package.nix
@@ -2,16 +2,16 @@
 
 buildGoModule rec {
   pname = "upbound";
-  version = "0.28.0";
+  version = "0.30.0";
 
   src = fetchFromGitHub {
     owner = pname;
     repo = "up";
     rev = "v${version}";
-    sha256 = "sha256-74kmEjJTcFYRgbuH8hFPS+sadVWk7FkFE+MrapQw/lw=";
+    sha256 = "sha256-KAWyHlqgj4xz3abSSa1cezpeDTmJbGSZAMffq3p/CyI=";
   };
 
-  vendorHash = "sha256-hNEM8U+3T4biEqGoN2ClKLSgKlfT/eoUkQQGiTrR2vM=";
+  vendorHash = "sha256-4o1WJHGHiO9r8RC8hr4KWZBiC8h52la1gKdYaYxEjbk=";
 
   subPackages = [ "cmd/docker-credential-up" "cmd/up" ];
 
diff --git a/pkgs/by-name/up/updatecli/package.nix b/pkgs/by-name/up/updatecli/package.nix
index 5427471c8229..c3999383ba9e 100644
--- a/pkgs/by-name/up/updatecli/package.nix
+++ b/pkgs/by-name/up/updatecli/package.nix
@@ -8,16 +8,16 @@
 
 buildGoModule rec {
   pname = "updatecli";
-  version = "0.76.0";
+  version = "0.77.0";
 
   src = fetchFromGitHub {
     owner = "updatecli";
     repo = pname;
     rev = "v${version}";
-    hash = "sha256-UfiwagyE3w+kcPJnDDNTCGrxghnag/RPz6SSdAglyYA=";
+    hash = "sha256-sBkTdr4/DqNrCxtaM1tVTx+rQ1dvJ1KwlFvAJHIZCuw=";
   };
 
-  vendorHash = "sha256-STiVtzA78zeo5wywwzvA0dqmBW3REUvcpOXuWjpxReY=";
+  vendorHash = "sha256-xY2nNDMnUyV2sOMOJfSHbXaEU/gOKfZkA77d0lhDlgg=";
 
   # tests require network access
   doCheck = false;
diff --git a/pkgs/by-name/up/ups/package.nix b/pkgs/by-name/up/ups/package.nix
new file mode 100644
index 000000000000..bfd743a8236d
--- /dev/null
+++ b/pkgs/by-name/up/ups/package.nix
@@ -0,0 +1,24 @@
+{ buildGoModule
+, fetchFromGitHub
+, lib
+}:
+buildGoModule rec {
+  pname = "ups";
+  version = "0.2.1";
+
+  src = fetchFromGitHub {
+    owner = "rameshvarun";
+    repo = "ups";
+    rev = "v${version}";
+    sha256 = "sha256-7AuZ1gyp8tAWHM0Ry54tKucPJ3enaGDtvrM1J8uBIT8=";
+  };
+
+  vendorHash = "sha256-c6aE6iD6yCnnuSEDhhr3v1ArcfLmSP8QhS7Cz7rtVHs=";
+
+  meta = with lib; {
+    description = "Command line tool for creating and applying UPS patch files";
+    homepage = "https://github.com/rameshvarun/ups";
+    license = licenses.mit;
+    maintainers = with maintainers; [ ruby0b ];
+  };
+}
diff --git a/pkgs/by-name/up/upsun/package.nix b/pkgs/by-name/up/upsun/package.nix
index 5e2d53d78667..97b32c03fe95 100644
--- a/pkgs/by-name/up/upsun/package.nix
+++ b/pkgs/by-name/up/upsun/package.nix
@@ -1,34 +1,63 @@
-{ stdenvNoCC, lib, fetchurl }:
+{
+  stdenvNoCC,
+  lib,
+  fetchurl,
+  testers,
+  upsun
+}:
 
-stdenvNoCC.mkDerivation rec {
+stdenvNoCC.mkDerivation (finalAttrs: {
   pname = "upsun";
-  version = "5.0.12";
+  version = "5.0.13";
 
-  src = {
-    x86_64-linux = fetchurl {
-      url = "https://github.com/platformsh/cli/releases/download/${version}/upsun_${version}_linux_amd64.tar.gz";
-      hash = "sha256-svEPMVY7r7pAoXwFIMYqCEduqR3Nkocaguf2nIGt+G8=";
-    };
-    aarch64-linux = fetchurl {
-      url = "https://github.com/platformsh/cli/releases/download/${version}/upsun_${version}_linux_arm64.tar.gz";
-      hash = "sha256-ZraS/PqSPL/kcj5o6hzDdL70IV2IWXOma6OHCiXIDQc=";
-    };
-  }.${stdenvNoCC.system} or (throw "${pname}-${version}: ${stdenvNoCC.system} is unsupported.");
+  src =
+    {
+      x86_64-darwin = fetchurl {
+        url = "https://github.com/platformsh/cli/releases/download/${finalAttrs.version}/upsun_${finalAttrs.version}_darwin_all.tar.gz";
+        hash = "sha256-5JKXtAUnqrlufyNE05uZjEDfJv557auYPriTxvUbMJI=";
+      };
+      aarch64-darwin = fetchurl {
+        url = "https://github.com/platformsh/cli/releases/download/${finalAttrs.version}/upsun_${finalAttrs.version}_darwin_all.tar.gz";
+        hash = "sha256-5JKXtAUnqrlufyNE05uZjEDfJv557auYPriTxvUbMJI=";
+      };
+      x86_64-linux = fetchurl {
+        url = "https://github.com/platformsh/cli/releases/download/${finalAttrs.version}/upsun_${finalAttrs.version}_linux_amd64.tar.gz";
+        hash = "sha256-fjVL/sbO1wmaJ4qZpUMV/4Q4Jzf0p6qx0ElRdY5EUJU=";
+      };
+      aarch64-linux = fetchurl {
+        url = "https://github.com/platformsh/cli/releases/download/${finalAttrs.version}/upsun_${finalAttrs.version}_linux_arm64.tar.gz";
+        hash = "sha256-MNlQkwsg5SuIQJBDy7yVtcda1odpaUZezCgrat6OW2Q=";
+      };
+    }
+    .${stdenvNoCC.system}
+      or (throw "${finalAttrs.pname}-${finalAttrs.version}: ${stdenvNoCC.system} is unsupported.");
 
   dontConfigure = true;
   dontBuild = true;
 
   sourceRoot = ".";
   installPhase = ''
+    runHook preInstall
+
     install -Dm755 upsun $out/bin/upsun
+
+    runHook postInstall
   '';
 
+  passthru = {
+    tests.version = testers.testVersion {
+      inherit (finalAttrs) version;
+      package = upsun;
+    };
+  };
+
   meta = {
-    homepage = "https://github.com/platformsh/cli";
     description = "The unified tool for managing your Upsun services from the command line";
-    maintainers = with lib.maintainers; [ spk ];
+    homepage = "https://github.com/platformsh/cli";
     license = lib.licenses.mit;
-    platforms = [ "x86_64-linux" "aarch64-linux" ];
+    mainProgram = "upsun";
+    maintainers = with lib.maintainers; [ spk ];
+    platforms = [ "x86_64-linux" "aarch64-linux" "x86_64-darwin" "aarch64-darwin" ];
     sourceProvenance = with lib.sourceTypes; [ binaryNativeCode ];
   };
-}
+})
diff --git a/pkgs/by-name/us/usql/package.nix b/pkgs/by-name/us/usql/package.nix
index 27ea4e6bb9e3..1297da876c31 100644
--- a/pkgs/by-name/us/usql/package.nix
+++ b/pkgs/by-name/us/usql/package.nix
@@ -11,18 +11,18 @@
 
 buildGoModule rec {
   pname = "usql";
-  version = "0.18.1";
+  version = "0.19.1";
 
   src = fetchFromGitHub {
     owner = "xo";
     repo = "usql";
     rev = "v${version}";
-    hash = "sha256-2/qB05LQGw4XjnODn0dzuTVqkc9X6YACJ45z+/juHXk=";
+    hash = "sha256-O0NsxOPp09W6FFdVjoCBUDSEkMct/MX/sLWDpoCmwwM=";
   };
 
   buildInputs = [ unixODBC icu ];
 
-  vendorHash = "sha256-PFXULlYMSUoJ23jDA3CTImiUAlcoqHoh1zq+749qO2g=";
+  vendorHash = "sha256-4WGxstIwjq7u+4UZ03IAONi58Vlg3p82fEOkfPS3eT4=";
   proxyVendor = true;
 
   # Exclude drivers from the bad group
diff --git a/pkgs/by-name/us/ustr/package.nix b/pkgs/by-name/us/ustr/package.nix
new file mode 100644
index 000000000000..0da93206752b
--- /dev/null
+++ b/pkgs/by-name/us/ustr/package.nix
@@ -0,0 +1,52 @@
+{
+  lib,
+  stdenv,
+  fetchgit,
+}:
+
+stdenv.mkDerivation (finalAttrs: {
+  pname = "ustr";
+  version = "1.0.4";
+
+  src = fetchgit {
+    url = "http://www.and.org/ustr/ustr.git";
+    rev = "v${finalAttrs.version}";
+    hash = "sha256-pQrQy+S9fVFl8Mop4QmwEAXGiBSheQE4HgAZ4srFz64=";
+  };
+
+  # Fixes bogus warnings that failed libsemanage
+  patches = [ ./va_args.patch ];
+
+  # Work around gcc5 switch to gnu11
+  env.NIX_CFLAGS_COMPILE = "-std=gnu89";
+
+  # Fix detection of stdint.h
+  postPatch = ''
+    substituteInPlace Makefile \
+      --replace-fail "have_stdint_h=0" "have_stdint_h=1"
+
+    cat ustr-import.in | grep USTR_CONF
+    substituteInPlace ustr-import.in \
+      --replace-fail "USTR_CONF_HAVE_STDINT_H 0" "USTR_CONF_HAVE_STDINT_H 1"
+  '';
+
+  makeFlags = [
+    "prefix=${placeholder "out"}"
+    "LDCONFIG=echo"
+    "HIDE="
+  ];
+
+  # Remove debug libraries
+  postInstall = ''
+    find $out/lib -name \*debug\* -delete
+  '';
+
+  meta = with lib; {
+    homepage = "http://www.and.org/ustr/";
+    description = "Micro String API for C language";
+    mainProgram = "ustr-import";
+    license = licenses.bsd2;
+    maintainers = with lib.maintainers; [ sigmanificient ];
+    platforms = platforms.linux;
+  };
+})
diff --git a/pkgs/development/libraries/ustr/va_args.patch b/pkgs/by-name/us/ustr/va_args.patch
index f75b537485d8..f75b537485d8 100644
--- a/pkgs/development/libraries/ustr/va_args.patch
+++ b/pkgs/by-name/us/ustr/va_args.patch
diff --git a/pkgs/by-name/uu/uuu/package.nix b/pkgs/by-name/uu/uuu/package.nix
index 4166d99d34fb..d0fa46bb6a40 100755
--- a/pkgs/by-name/uu/uuu/package.nix
+++ b/pkgs/by-name/uu/uuu/package.nix
@@ -17,13 +17,13 @@
 
 stdenv.mkDerivation (finalAttrs: {
   pname = "uuu";
-  version = "1.5.179";
+  version = "1.5.181";
 
   src = fetchFromGitHub {
     owner = "nxp-imx";
     repo = "mfgtools";
     rev = "uuu_${finalAttrs.version}";
-    hash = "sha256-W0jFwivjD19SQmXz2G7cIvWh1zkyN4AXh3bfqF302MA=";
+    hash = "sha256-HMpirdXpcBFTkO7anGDIjsBJKjQ+kIN4kDhPlcqIDqY=";
   };
 
   passthru.updateScript = nix-update-script {
diff --git a/pkgs/by-name/uv/uv/Cargo.lock b/pkgs/by-name/uv/uv/Cargo.lock
index c751fedd8c2c..c5e0263485c5 100644
--- a/pkgs/by-name/uv/uv/Cargo.lock
+++ b/pkgs/by-name/uv/uv/Cargo.lock
@@ -75,47 +75,48 @@ checksum = "4b46cbb362ab8752921c97e041f5e366ee6297bd428a31275b9fcf1e380f7299"
 
 [[package]]
 name = "anstream"
-version = "0.6.13"
+version = "0.6.14"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d96bd03f33fe50a863e394ee9718a706f988b9079b20c3784fb726e7678b62fb"
+checksum = "418c75fa768af9c03be99d17643f93f79bbba589895012a80e3452a19ddda15b"
 dependencies = [
  "anstyle",
  "anstyle-parse",
  "anstyle-query",
  "anstyle-wincon",
  "colorchoice",
+ "is_terminal_polyfill",
  "utf8parse",
 ]
 
 [[package]]
 name = "anstyle"
-version = "1.0.6"
+version = "1.0.7"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8901269c6307e8d93993578286ac0edf7f195079ffff5ebdeea6a59ffb7e36bc"
+checksum = "038dfcf04a5feb68e9c60b21c9625a54c2c0616e79b72b0fd87075a056ae1d1b"
 
 [[package]]
 name = "anstyle-parse"
-version = "0.2.3"
+version = "0.2.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c75ac65da39e5fe5ab759307499ddad880d724eed2f6ce5b5e8a26f4f387928c"
+checksum = "c03a11a9034d92058ceb6ee011ce58af4a9bf61491aa7e1e59ecd24bd40d22d4"
 dependencies = [
  "utf8parse",
 ]
 
 [[package]]
 name = "anstyle-query"
-version = "1.0.2"
+version = "1.0.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e28923312444cdd728e4738b3f9c9cac739500909bb3d3c94b43551b16517648"
+checksum = "a64c907d4e79225ac72e2a354c9ce84d50ebb4586dee56c82b3ee73004f537f5"
 dependencies = [
  "windows-sys 0.52.0",
 ]
 
 [[package]]
 name = "anstyle-wincon"
-version = "3.0.2"
+version = "3.0.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1cd54b81ec8d6180e24654d0b371ad22fc3dd083b6ff8ba325b72e00c87660a7"
+checksum = "61a38449feb7068f52bb06c12759005cf459ee52bb4adc1d5a7c4322d716fb19"
 dependencies = [
  "anstyle",
  "windows-sys 0.52.0",
@@ -123,9 +124,9 @@ dependencies = [
 
 [[package]]
 name = "anyhow"
-version = "1.0.82"
+version = "1.0.83"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f538837af36e6f6a9be0faa67f9a314f8119e4e4b5867c6ab40ed60360142519"
+checksum = "25bdb32cbbdce2b519a9cd7df3a678443100e265d5e25ca763b7572a5104f5f3"
 
 [[package]]
 name = "arbitrary"
@@ -196,9 +197,9 @@ dependencies = [
 
 [[package]]
 name = "async-channel"
-version = "2.2.1"
+version = "2.3.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "136d4d23bcc79e27423727b36823d86233aad06dfea531837b038394d11e9928"
+checksum = "9f2776ead772134d55b62dd45e59a79e21612d85d0af729b8b7d3967d601a62a"
 dependencies = [
  "concurrent-queue",
  "event-listener",
@@ -209,9 +210,9 @@ dependencies = [
 
 [[package]]
 name = "async-compression"
-version = "0.4.8"
+version = "0.4.10"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "07dbbf24db18d609b1462965249abdf49129ccad073ec257da372adc83259c60"
+checksum = "9c90a406b4495d129f00461241616194cb8a032c8d1c53c657f0961d5f8e0498"
 dependencies = [
  "brotli",
  "bzip2",
@@ -233,14 +234,14 @@ checksum = "c6fa2087f2753a7da8cc1c0dbfcf89579dd57458e36769de5ac750b4671737ca"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.58",
+ "syn 2.0.61",
 ]
 
 [[package]]
 name = "async_http_range_reader"
-version = "0.7.1"
+version = "0.8.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8561e6613f8361df8bed11c0eef05b98384643bc81f6b753eec7c1d91f097509"
+checksum = "f1a0e0571c5d724d17fbe0b608d31a91e94938722c141877d3a2982216b084c2"
 dependencies = [
  "bisection",
  "futures",
@@ -272,18 +273,17 @@ dependencies = [
 
 [[package]]
 name = "autocfg"
-version = "1.2.0"
+version = "1.3.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f1fdabc7756949593fe60f30ec81974b613357de856987752631dea1e3394c80"
+checksum = "0c4b4d0bd25bd0b74681c0ad21497610ce1b7c91b1022cd21c80c6fbdd9476b0"
 
 [[package]]
 name = "axoasset"
-version = "0.9.1"
+version = "0.9.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5e05853b0d9abfab8e7532cad0d07ec396dd95c1a81926b49ab3cfa121a9d8d6"
+checksum = "6d492e2a60fbacf2154ee58fd4bc3dd7385a5febf10fef6145924fd3117cd920"
 dependencies = [
  "camino",
- "image",
  "miette",
  "mime",
  "serde",
@@ -317,9 +317,9 @@ dependencies = [
 
 [[package]]
 name = "axoupdater"
-version = "0.5.1"
+version = "0.6.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "639ef3c97d1bebfb42f94739036fbe3e10ef0056d2f8d5ea288bf4ad5f73a5e6"
+checksum = "8fd70e10a815d55bcef2a2e0907b189fc6d800558b7481883ad6535d5ae7cd42"
 dependencies = [
  "axoasset",
  "axoprocess",
@@ -386,17 +386,30 @@ checksum = "9d297deb1925b89f2ccc13d7635fa0714f12c87adce1c75356b39ca9b7178567"
 
 [[package]]
 name = "base64"
-version = "0.22.0"
+version = "0.22.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9475866fec1451be56a3c2400fd081ff546538961565ccb5b7142cbd22bc7a51"
+checksum = "72b3254f16251a8381aa12e40e3c4d2f0199f8c6508fbecb9d91f575e0fbb8c6"
 
 [[package]]
 name = "bench"
 version = "0.0.0"
 dependencies = [
+ "anyhow",
+ "codspeed-criterion-compat",
  "criterion",
  "distribution-filename",
+ "distribution-types",
+ "once_cell",
+ "pep508_rs",
  "platform-tags",
+ "tokio",
+ "uv-cache",
+ "uv-client",
+ "uv-configuration",
+ "uv-distribution",
+ "uv-interpreter",
+ "uv-resolver",
+ "uv-types",
 ]
 
 [[package]]
@@ -440,9 +453,9 @@ dependencies = [
 
 [[package]]
 name = "brotli"
-version = "4.0.0"
+version = "6.0.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "125740193d7fee5cc63ab9e16c2fdc4e07c74ba755cc53b327d6ea029e9fc569"
+checksum = "74f7971dbd9326d58187408ab83117d8ac1bb9c17b085fdacd1cf2f598719b6b"
 dependencies = [
  "alloc-no-stdlib",
  "alloc-stdlib",
@@ -451,9 +464,9 @@ dependencies = [
 
 [[package]]
 name = "brotli-decompressor"
-version = "3.0.0"
+version = "4.0.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "65622a320492e09b5e0ac436b14c54ff68199bac392d0e89a6832c4518eea525"
+checksum = "e6221fe77a248b9117d431ad93761222e1cf8ff282d9d1d5d9f53d6299a1cf76"
 dependencies = [
  "alloc-no-stdlib",
  "alloc-stdlib",
@@ -566,9 +579,9 @@ dependencies = [
 
 [[package]]
 name = "cargo-util"
-version = "0.2.10"
+version = "0.2.11"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9f2d9a9a8d3e0b61b1110c49ab8f6ed7a76ce4f2b1d53ae48a83152d3d5e8f5b"
+checksum = "f6e977de2867ec90a1654882ff95ca5849a526e893bab588f84664cfcdb11c0a"
 dependencies = [
  "anyhow",
  "core-foundation",
@@ -595,12 +608,13 @@ checksum = "37b2a672a2cb129a2e41c10b1224bb368f9f37a2b16b612598138befd7b37eb5"
 
 [[package]]
 name = "cc"
-version = "1.0.92"
+version = "1.0.97"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2678b2e3449475e95b0aa6f9b506a28e61b3dc8996592b983695e8ebb58a8b41"
+checksum = "099a5357d84c4c61eb35fc8eafa9a79a902c2f76911e5747ced4e032edd8d9b4"
 dependencies = [
  "jobserver",
  "libc",
+ "once_cell",
 ]
 
 [[package]]
@@ -740,7 +754,7 @@ dependencies = [
  "heck 0.5.0",
  "proc-macro2",
  "quote",
- "syn 2.0.58",
+ "syn 2.0.61",
 ]
 
 [[package]]
@@ -759,6 +773,28 @@ dependencies = [
 ]
 
 [[package]]
+name = "codspeed"
+version = "2.6.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "3a104ac948e0188b921eb3fcbdd55dcf62e542df4c7ab7e660623f6288302089"
+dependencies = [
+ "colored",
+ "libc",
+ "serde_json",
+]
+
+[[package]]
+name = "codspeed-criterion-compat"
+version = "2.6.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "722c36bdc62d9436d027256ce2627af81ac7a596dfc7d13d849d0d212448d7fe"
+dependencies = [
+ "codspeed",
+ "colored",
+ "criterion",
+]
+
+[[package]]
 name = "color_quant"
 version = "1.1.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -766,15 +802,25 @@ checksum = "3d7b894f5411737b7867f4827955924d7c254fc9f4d91a6aad6b097804b1018b"
 
 [[package]]
 name = "colorchoice"
-version = "1.0.0"
+version = "1.0.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "0b6a852b24ab71dffc585bcb46eaf7959d175cb865a7152e35b348d1b2960422"
+
+[[package]]
+name = "colored"
+version = "2.1.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "acbf1af155f9b9ef647e42cdc158db4b64a1b61f743629225fde6f3e0be2a7c7"
+checksum = "cbf2150cce219b664a8a70df7a1f933836724b503f8a413af9365b4dcc4d90b8"
+dependencies = [
+ "lazy_static",
+ "windows-sys 0.48.0",
+]
 
 [[package]]
 name = "concurrent-queue"
-version = "2.4.0"
+version = "2.5.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d16048cd947b08fa32c24458a22f5dc5e835264f689f4f5653210c69fd107363"
+checksum = "4ca0197aee26d1ae37445ee532fefce43251d24cc7c166799f4d46817f1d3973"
 dependencies = [
  "crossbeam-utils",
 ]
@@ -843,6 +889,7 @@ dependencies = [
  "ciborium",
  "clap",
  "criterion-plot",
+ "futures",
  "is-terminal",
  "itertools 0.10.5",
  "num-traits",
@@ -853,6 +900,7 @@ dependencies = [
  "serde_derive",
  "serde_json",
  "tinytemplate",
+ "tokio",
  "walkdir",
 ]
 
@@ -945,17 +993,17 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "978747c1d849a7d2ee5e8adc0159961c48fb7e5db2f06af6723b80123bb53856"
 dependencies = [
  "cfg-if",
- "hashbrown 0.14.3",
+ "hashbrown 0.14.5",
  "lock_api",
  "once_cell",
- "parking_lot_core 0.9.9",
+ "parking_lot_core 0.9.10",
 ]
 
 [[package]]
 name = "data-encoding"
-version = "2.5.0"
+version = "2.6.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7e962a19be5cfc3f3bf6dd8f61eb50107f356ad6270fbb3ed41476571db78be5"
+checksum = "e8566979429cf69b49a5c740c60791108e86440e8be149bbea4fe54d2c32d6e2"
 
 [[package]]
 name = "data-url"
@@ -977,9 +1025,9 @@ dependencies = [
 
 [[package]]
 name = "deadpool-runtime"
-version = "0.1.3"
+version = "0.1.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "63dfa964fe2a66f3fde91fc70b267fe193d822c7e603e2a675a49a7f46ad3f49"
+checksum = "092966b41edc516079bdf31ec78a2e0588d1d0c08f78b91d8307215928642b2b"
 
 [[package]]
 name = "derivative"
@@ -1000,7 +1048,7 @@ checksum = "67e77553c4162a157adbf834ebae5b415acbecbeafc7a74b0e886657506a7611"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.58",
+ "syn 2.0.61",
 ]
 
 [[package]]
@@ -1048,6 +1096,17 @@ dependencies = [
 ]
 
 [[package]]
+name = "displaydoc"
+version = "0.2.4"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "487585f4d0c6655fe74905e2504d8ad6908e4db67f744eb140876906c2f3175d"
+dependencies = [
+ "proc-macro2",
+ "quote",
+ "syn 2.0.61",
+]
+
+[[package]]
 name = "distribution-filename"
 version = "0.0.1"
 dependencies = [
@@ -1070,6 +1129,7 @@ dependencies = [
  "distribution-filename",
  "fs-err",
  "git2",
+ "indexmap",
  "itertools 0.12.1",
  "once_cell",
  "pep440_rs",
@@ -1146,9 +1206,9 @@ checksum = "5443807d6dff69373d433ab9ef5378ad8df50ca6298caf15de6e52e24aaf54d5"
 
 [[package]]
 name = "errno"
-version = "0.3.8"
+version = "0.3.9"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a258e46cdc063eb8519c00b9fc845fc47bcfca4130e2f08e88665ceda8474245"
+checksum = "534c5cf6194dfab3db3242765c03bbe257cf92f22b38f6bc0c58d59108a820ba"
 dependencies = [
  "libc",
  "windows-sys 0.52.0",
@@ -1167,9 +1227,9 @@ dependencies = [
 
 [[package]]
 name = "event-listener-strategy"
-version = "0.5.1"
+version = "0.5.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "332f51cb23d20b0de8458b86580878211da09bcd4503cb579c225b3d124cabb3"
+checksum = "0f214dc438f977e6d4e3500aaa277f5ad94ca83fbbd9b1a15713ce2344ccc5a1"
 dependencies = [
  "event-listener",
  "pin-project-lite",
@@ -1177,9 +1237,9 @@ dependencies = [
 
 [[package]]
 name = "fastrand"
-version = "2.0.2"
+version = "2.1.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "658bd65b1cf4c852a3cc96f18a8ce7b5640f6b703f905c7d74532294c2a63984"
+checksum = "9fc0510504f03c51ada170672ac806f1f105a88aa97a5281117e1ddc3368e51a"
 
 [[package]]
 name = "fdeflate"
@@ -1210,9 +1270,9 @@ checksum = "0ce7134b9999ecaf8bcd65542e436736ef32ddca1b3e06094cb6ec5755203b80"
 
 [[package]]
 name = "flate2"
-version = "1.0.28"
+version = "1.0.30"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "46303f565772937ffe1d394a4fac6f411c6013172fadde9dcdb1e147a086940e"
+checksum = "5f54427cfd1c7829e2a139fcefea601bf088ebca651d2bf53ebc600eac295dae"
 dependencies = [
  "crc32fast",
  "libz-ng-sys",
@@ -1359,7 +1419,7 @@ checksum = "87750cf4b7a4c0625b1529e4c543c2182106e4dedc60a2a6455e00d212c489ac"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.58",
+ "syn 2.0.61",
 ]
 
 [[package]]
@@ -1404,9 +1464,9 @@ dependencies = [
 
 [[package]]
 name = "getrandom"
-version = "0.2.14"
+version = "0.2.15"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "94b22e06ecb0110981051723910cbf0b5f5e09a2062dd7663334ee79a9d1286c"
+checksum = "c4567c8db10ae91089c99af84c68c38da3ec2f087c3f82960bcdbf3656b6f4d7"
 dependencies = [
  "cfg-if",
  "js-sys",
@@ -1516,9 +1576,9 @@ dependencies = [
 
 [[package]]
 name = "hashbrown"
-version = "0.14.3"
+version = "0.14.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "290f1a1d9242c78d09ce40a5e87e7554ee637af1351968159f4952f028f75604"
+checksum = "e5274423e17b7c9fc20b6e7e208532f9b19825d82dfd615708b70edd83df41f1"
 
 [[package]]
 name = "heck"
@@ -1745,18 +1805,6 @@ dependencies = [
 ]
 
 [[package]]
-name = "image"
-version = "0.24.9"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5690139d2f55868e080017335e4b94cb7414274c74f1669c84fb5feba2c9f69d"
-dependencies = [
- "bytemuck",
- "byteorder",
- "color_quant",
- "num-traits",
-]
-
-[[package]]
 name = "imagesize"
 version = "0.11.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -1769,7 +1817,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "168fb715dda47215e360912c096649d23d58bf392ac62f73919e831745e40f26"
 dependencies = [
  "equivalent",
- "hashbrown 0.14.3",
+ "hashbrown 0.14.5",
  "serde",
 ]
 
@@ -1879,6 +1927,12 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "7655c9839580ee829dfacba1d1278c2b7883e50a277ff7541299489d6bdfdc45"
 
 [[package]]
+name = "is_terminal_polyfill"
+version = "1.70.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "f8478577c03552c21db0e2724ffb8986a5ce7af88107e6be5d2ee6e158c12800"
+
+[[package]]
 name = "itertools"
 version = "0.10.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -1904,9 +1958,9 @@ checksum = "49f1f14873335454500d59611f1cf4a4b0f786f9ac11f4312a78e4cf2566695b"
 
 [[package]]
 name = "jobserver"
-version = "0.1.28"
+version = "0.1.31"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ab46a6e9526ddef3ae7f787c06f0f2600639ba80ea3eade3d8e670a2230f51d6"
+checksum = "d2b099aaa34a9751c5bf0878add70444e1ed2dd73f347be99003d4577277de6e"
 dependencies = [
  "libc",
 ]
@@ -1928,12 +1982,12 @@ dependencies = [
 
 [[package]]
 name = "junction"
-version = "1.0.0"
+version = "1.1.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ca39ef0d69b18e6a2fd14c2f0a1d593200f4a4ed949b240b5917ab51fac754cb"
+checksum = "1c9c415a9b7b1e86cd5738f39d34c9e78c765da7fb1756dbd7d31b3b0d2e7afa"
 dependencies = [
  "scopeguard",
- "winapi",
+ "windows-sys 0.52.0",
 ]
 
 [[package]]
@@ -1962,9 +2016,9 @@ checksum = "e2abad23fbc42b3700f2f279844dc832adb2b2eb069b2df918f455c4e18cc646"
 
 [[package]]
 name = "libc"
-version = "0.2.153"
+version = "0.2.154"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9c198f91728a82281a64e1f4f9eeb25d82cb32a5de251c6bd1b5154d63a8e7bd"
+checksum = "ae743338b92ff9146ce83992f766a31066a91a8c84a45e0e9f21e7cf6de6d346"
 
 [[package]]
 name = "libgit2-sys"
@@ -1982,9 +2036,9 @@ dependencies = [
 
 [[package]]
 name = "libmimalloc-sys"
-version = "0.1.35"
+version = "0.1.37"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3979b5c37ece694f1f5e51e7ecc871fdb0f517ed04ee45f88d15d6d553cb9664"
+checksum = "81eb4061c0582dedea1cbc7aff2240300dd6982e0239d1c99e65c1dbf4a30ba7"
 dependencies = [
  "cc",
  "libc",
@@ -2050,9 +2104,9 @@ checksum = "01cda141df6706de531b6c46c3a33ecca755538219bd484262fa09410c13539c"
 
 [[package]]
 name = "lock_api"
-version = "0.4.11"
+version = "0.4.12"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3c168f8615b12bc01f9c17e2eb0cc07dcae1940121185446edc3744920e8ef45"
+checksum = "07af8b9cdd281b7915f413fa73f29ebd5d55d0d3f0155584dade1ff18cea1b17"
 dependencies = [
  "autocfg",
  "scopeguard",
@@ -2066,9 +2120,9 @@ checksum = "90ed8c1e510134f979dbc4f070f87d4313098b704861a105fe34231c70a3901c"
 
 [[package]]
 name = "mailparse"
-version = "0.14.1"
+version = "0.15.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2d096594926cab442e054e047eb8c1402f7d5b2272573b97ba68aa40629f9757"
+checksum = "3da03d5980411a724e8aaf7b61a7b5e386ec55a7fb49ee3d0ff79efc7e5e7c7e"
 dependencies = [
  "charset",
  "data-encoding",
@@ -2164,14 +2218,14 @@ checksum = "dcf09caffaac8068c346b6df2a7fc27a177fd20b39421a39ce0a211bde679a6c"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.58",
+ "syn 2.0.61",
 ]
 
 [[package]]
 name = "mimalloc"
-version = "0.1.39"
+version = "0.1.41"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "fa01922b5ea280a911e323e4d2fd24b7fe5cc4042e0d2cda3c40775cdc4bdc9c"
+checksum = "9f41a2280ded0da56c8cf898babb86e8f10651a34adcfff190ae9a1159c6908d"
 dependencies = [
  "libmimalloc-sys",
 ]
@@ -2273,9 +2327,9 @@ dependencies = [
 
 [[package]]
 name = "num-traits"
-version = "0.2.18"
+version = "0.2.19"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "da0df0e5185db44f69b44f26786fe401b6c293d1907744beaa7fa62b2e5a517a"
+checksum = "071dfc062690e90b734c0b2273ce72ad0ffa95f0c74596bc250dcfd960262841"
 dependencies = [
  "autocfg",
 ]
@@ -2390,12 +2444,12 @@ dependencies = [
 
 [[package]]
 name = "parking_lot"
-version = "0.12.1"
+version = "0.12.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3742b2c103b9f06bc9fff0a37ff4912935851bee6d36f3c02bcc755bcfec228f"
+checksum = "7e4af0ca4f6caed20e900d564c242b8e5d4903fdacf31d3daf527b66fe6f42fb"
 dependencies = [
  "lock_api",
- "parking_lot_core 0.9.9",
+ "parking_lot_core 0.9.10",
 ]
 
 [[package]]
@@ -2414,22 +2468,22 @@ dependencies = [
 
 [[package]]
 name = "parking_lot_core"
-version = "0.9.9"
+version = "0.9.10"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4c42a9226546d68acdd9c0a280d17ce19bfe27a46bf68784e4066115788d008e"
+checksum = "1e401f977ab385c9e4e3ab30627d6f26d00e2c73eef317493c4ec6d468726cf8"
 dependencies = [
  "cfg-if",
  "libc",
- "redox_syscall 0.4.1",
+ "redox_syscall 0.5.1",
  "smallvec",
- "windows-targets 0.48.5",
+ "windows-targets 0.52.5",
 ]
 
 [[package]]
 name = "paste"
-version = "1.0.14"
+version = "1.0.15"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "de3145af08024dea9fa9914f381a17b8fc6034dfb00f3a84013f7ff43f29ed4c"
+checksum = "57c0d7b74b563b49d38dae00a0c37d4d6de9b432382b2892f0574ddcae73fd0a"
 
 [[package]]
 name = "path-absolutize"
@@ -2500,9 +2554,9 @@ checksum = "e3148f5046208a5d56bcfc03053e3ca6334e51da8dfb19b6cdc8b306fae3283e"
 
 [[package]]
 name = "pest"
-version = "2.7.8"
+version = "2.7.10"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "56f8023d0fb78c8e03784ea1c7f3fa36e68a723138990b8d5a47d916b651e7a8"
+checksum = "560131c633294438da9f7c4b08189194b20946c8274c6b9e38881a7874dc8ee8"
 dependencies = [
  "memchr",
  "thiserror",
@@ -2511,9 +2565,9 @@ dependencies = [
 
 [[package]]
 name = "pest_derive"
-version = "2.7.8"
+version = "2.7.10"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b0d24f72393fd16ab6ac5738bc33cdb6a9aa73f8b902e8fe29cf4e67d7dd1026"
+checksum = "26293c9193fbca7b1a3bf9b79dc1e388e927e6cacaa78b4a3ab705a1d3d41459"
 dependencies = [
  "pest",
  "pest_generator",
@@ -2521,22 +2575,22 @@ dependencies = [
 
 [[package]]
 name = "pest_generator"
-version = "2.7.8"
+version = "2.7.10"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "fdc17e2a6c7d0a492f0158d7a4bd66cc17280308bbaff78d5bef566dca35ab80"
+checksum = "3ec22af7d3fb470a85dd2ca96b7c577a1eb4ef6f1683a9fe9a8c16e136c04687"
 dependencies = [
  "pest",
  "pest_meta",
  "proc-macro2",
  "quote",
- "syn 2.0.58",
+ "syn 2.0.61",
 ]
 
 [[package]]
 name = "pest_meta"
-version = "2.7.8"
+version = "2.7.10"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "934cd7631c050f4674352a6e835d5f6711ffbfb9345c2fc0107155ac495ae293"
+checksum = "d7a240022f37c361ec1878d646fc5b7d7c4d28d5946e1a80ad5a7a4f4ca0bdcd"
 dependencies = [
  "once_cell",
  "pest",
@@ -2545,9 +2599,9 @@ dependencies = [
 
 [[package]]
 name = "petgraph"
-version = "0.6.4"
+version = "0.6.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e1d3afd2628e69da2be385eb6f2fd57c8ac7977ceeff6dc166ff1657b0e386a9"
+checksum = "b4c5cc86750666a3ed20bdaf5ca2a0344f9c67674cae0515bec2da16fbaa47db"
 dependencies = [
  "fixedbitset",
  "indexmap",
@@ -2576,7 +2630,7 @@ checksum = "2f38a4412a78282e09a2cf38d195ea5420d15ba0602cb375210efbc877243965"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.58",
+ "syn 2.0.61",
 ]
 
 [[package]]
@@ -2704,9 +2758,9 @@ dependencies = [
 
 [[package]]
 name = "proc-macro2"
-version = "1.0.79"
+version = "1.0.82"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e835ff2298f5721608eb1a980ecaee1aef2c132bf95ecc026a11b7bf3c01c02e"
+checksum = "8ad3d49ab951a01fbaafe34f2ec74122942fe18a3f9814c3268f1bb72042131b"
 dependencies = [
  "unicode-ident",
 ]
@@ -2734,7 +2788,7 @@ dependencies = [
 [[package]]
 name = "pubgrub"
 version = "0.2.1"
-source = "git+https://github.com/astral-sh/pubgrub?rev=c26e485213e39582c6f2e4d45c0328422670e7a7#c26e485213e39582c6f2e4d45c0328422670e7a7"
+source = "git+https://github.com/astral-sh/pubgrub?rev=0e684a874c9fb8f74738cd8875524c80e3d4820b#0e684a874c9fb8f74738cd8875524c80e3d4820b"
 dependencies = [
  "indexmap",
  "log",
@@ -2753,7 +2807,7 @@ dependencies = [
  "indoc",
  "libc",
  "memoffset 0.9.1",
- "parking_lot 0.12.1",
+ "parking_lot 0.11.2",
  "portable-atomic",
  "pyo3-build-config",
  "pyo3-ffi",
@@ -2801,7 +2855,7 @@ dependencies = [
  "proc-macro2",
  "pyo3-macros-backend",
  "quote",
- "syn 2.0.58",
+ "syn 2.0.61",
 ]
 
 [[package]]
@@ -2814,7 +2868,7 @@ dependencies = [
  "proc-macro2",
  "pyo3-build-config",
  "quote",
- "syn 2.0.58",
+ "syn 2.0.61",
 ]
 
 [[package]]
@@ -2942,6 +2996,15 @@ dependencies = [
 ]
 
 [[package]]
+name = "redox_syscall"
+version = "0.5.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "469052894dcb553421e483e4209ee581a45100d31b4018de03e5a7ad86374a7e"
+dependencies = [
+ "bitflags 2.5.0",
+]
+
+[[package]]
 name = "redox_users"
 version = "0.4.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -3022,6 +3085,7 @@ version = "0.0.1"
 dependencies = [
  "anyhow",
  "assert_fs",
+ "distribution-types",
  "fs-err",
  "indoc",
  "insta",
@@ -3030,9 +3094,9 @@ dependencies = [
  "regex",
  "reqwest",
  "reqwest-middleware",
- "serde",
  "tempfile",
  "test-case",
+ "thiserror",
  "tokio",
  "tracing",
  "unscanny",
@@ -3051,7 +3115,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "566cafdd92868e0939d3fb961bd0dc25fcfaaed179291093b3d43e6b3150ea10"
 dependencies = [
  "async-compression",
- "base64 0.22.0",
+ "base64 0.22.1",
  "bytes",
  "futures-channel",
  "futures-core",
@@ -3092,9 +3156,9 @@ dependencies = [
 
 [[package]]
 name = "reqwest-middleware"
-version = "0.3.0"
+version = "0.3.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0209efb52486ad88136190094ee214759ef7507068b27992256ed6610eb71a01"
+checksum = "a45d100244a467870f6cb763c4484d010a6bed6bd610b3676e3825d93fb4cfbd"
 dependencies = [
  "anyhow",
  "async-trait",
@@ -3223,9 +3287,9 @@ dependencies = [
 
 [[package]]
 name = "rmp-serde"
-version = "1.2.0"
+version = "1.3.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "938a142ab806f18b88a97b0dea523d39e0fd730a064b035726adcfc58a8a5188"
+checksum = "52e599a477cf9840e92f2cde9a7189e67b42c57532749bf90aea6ec10facd4db"
 dependencies = [
  "byteorder",
  "rmp",
@@ -3271,9 +3335,9 @@ dependencies = [
 
 [[package]]
 name = "rustc-demangle"
-version = "0.1.23"
+version = "0.1.24"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d626bb9dae77e28219937af045c257c28bfd3f69333c512553507f5f9798cb76"
+checksum = "719b953e2095829ee67db738b3bfa9fa368c94900df327b3f07fe6e794d2fe1f"
 
 [[package]]
 name = "rustc-hash"
@@ -3283,9 +3347,9 @@ checksum = "08d43f7aa6b08d49f382cde6a7982047c3426db949b1424bc4b7ec9ae12c6ce2"
 
 [[package]]
 name = "rustix"
-version = "0.38.32"
+version = "0.38.34"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "65e04861e65f21776e67888bfbea442b3642beaa0138fdb1dd7a84a52dffdb89"
+checksum = "70dc5ec042f7a43c4a73241207cecc9873a06d45debb38b329f8541d85c2730f"
 dependencies = [
  "bitflags 2.5.0",
  "errno",
@@ -3296,9 +3360,9 @@ dependencies = [
 
 [[package]]
 name = "rustls"
-version = "0.22.3"
+version = "0.22.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "99008d7ad0bbbea527ec27bddbc0e432c5b87d8175178cee68d2eec9c4a1813c"
+checksum = "bf4ef73721ac7bcd79b2b315da7779d8fc09718c6b3d2d1b2d94850eb8c18432"
 dependencies = [
  "log",
  "ring",
@@ -3327,21 +3391,21 @@ version = "2.1.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "29993a25686778eb88d4189742cd713c9bce943bc54251a33509dc63cbacf73d"
 dependencies = [
- "base64 0.22.0",
+ "base64 0.22.1",
  "rustls-pki-types",
 ]
 
 [[package]]
 name = "rustls-pki-types"
-version = "1.4.1"
+version = "1.7.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ecd36cc4259e3e4514335c4a138c6b43171a8d61d8f5c9348f9fc7529416f247"
+checksum = "976295e77ce332211c0d24d92c0e83e50f5c5f046d11082cea19f3df13a3562d"
 
 [[package]]
 name = "rustls-webpki"
-version = "0.102.2"
+version = "0.102.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "faaa0a62740bedb9b2ef5afa303da42764c012f743917351dc9a237ea1663610"
+checksum = "f3bce581c0dd41bce533ce695a1437fa16a7ab5ac3ccfa99fe1a620a7885eabf"
 dependencies = [
  "ring",
  "rustls-pki-types",
@@ -3366,9 +3430,9 @@ dependencies = [
 
 [[package]]
 name = "ryu"
-version = "1.0.17"
+version = "1.0.18"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e86697c916019a8588c99b5fac3cead74ec0b4b819707a682fd4d23fa0ce1ba1"
+checksum = "f3cb5ba0dc43242ce17de99c180e96db90b235b8a9fdc9543c96d2209116bd9f"
 
 [[package]]
 name = "same-file"
@@ -3390,26 +3454,27 @@ dependencies = [
 
 [[package]]
 name = "schemars"
-version = "0.8.16"
+version = "0.8.19"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "45a28f4c49489add4ce10783f7911893516f15afe45d015608d41faca6bc4d29"
+checksum = "fc6e7ed6919cb46507fb01ff1654309219f62b4d603822501b0b80d42f6f21ef"
 dependencies = [
  "dyn-clone",
  "schemars_derive",
  "serde",
  "serde_json",
+ "url",
 ]
 
 [[package]]
 name = "schemars_derive"
-version = "0.8.16"
+version = "0.8.19"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c767fd6fa65d9ccf9cf026122c1b555f2ef9a4f0cea69da4d7dbc3e258d30967"
+checksum = "185f2b7aa7e02d418e453790dde16890256bbd2bcd04b7dc5348811052b53f49"
 dependencies = [
  "proc-macro2",
  "quote",
  "serde_derive_internals",
- "syn 1.0.109",
+ "syn 2.0.61",
 ]
 
 [[package]]
@@ -3426,11 +3491,11 @@ checksum = "1c107b6f4780854c8b126e228ea8869f4d7b71260f962fefb57b996b8959ba6b"
 
 [[package]]
 name = "security-framework"
-version = "2.10.0"
+version = "2.11.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "770452e37cad93e0a50d5abc3990d2bc351c36d0328f86cefec2f2fb206eaef6"
+checksum = "c627723fd09706bacdb5cf41499e95098555af3c3c29d014dc3c458ef6be11c0"
 dependencies = [
- "bitflags 1.3.2",
+ "bitflags 2.5.0",
  "core-foundation",
  "core-foundation-sys",
  "libc",
@@ -3439,9 +3504,9 @@ dependencies = [
 
 [[package]]
 name = "security-framework-sys"
-version = "2.10.0"
+version = "2.11.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "41f3cc463c0ef97e11c3461a9d3787412d30e8e7eb907c79180c4a57bf7c04ef"
+checksum = "317936bbbd05227752583946b9e66d7ce3b489f84e11a94a510b4437fef407d7"
 dependencies = [
  "core-foundation-sys",
  "libc",
@@ -3449,46 +3514,46 @@ dependencies = [
 
 [[package]]
 name = "semver"
-version = "1.0.22"
+version = "1.0.23"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "92d43fe69e652f3df9bdc2b85b2854a0825b86e4fb76bc44d945137d053639ca"
+checksum = "61697e0a1c7e512e84a621326239844a24d8207b4669b41bc18b32ea5cbf988b"
 
 [[package]]
 name = "serde"
-version = "1.0.198"
+version = "1.0.201"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9846a40c979031340571da2545a4e5b7c4163bdae79b301d5f86d03979451fcc"
+checksum = "780f1cebed1629e4753a1a38a3c72d30b97ec044f0aef68cb26650a3c5cf363c"
 dependencies = [
  "serde_derive",
 ]
 
 [[package]]
 name = "serde_derive"
-version = "1.0.198"
+version = "1.0.201"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e88edab869b01783ba905e7d0153f9fc1a6505a96e4ad3018011eedb838566d9"
+checksum = "c5e405930b9796f1c00bee880d03fc7e0bb4b9a11afc776885ffe84320da2865"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.58",
+ "syn 2.0.61",
 ]
 
 [[package]]
 name = "serde_derive_internals"
-version = "0.26.0"
+version = "0.29.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "85bf8229e7920a9f636479437026331ce11aa132b4dde37d121944a44d6e5f3c"
+checksum = "330f01ce65a3a5fe59a60c82f3c9a024b573b8a6e875bd233fe5f934e71d54e3"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 1.0.109",
+ "syn 2.0.61",
 ]
 
 [[package]]
 name = "serde_json"
-version = "1.0.116"
+version = "1.0.117"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3e17db7126d17feb94eb3fad46bf1a96b034e8aacbc2e775fe81505f8b0b2813"
+checksum = "455182ea6142b14f93f4bc5320a2b31c1f266b66a4a5c858b013302a5d8cbfc3"
 dependencies = [
  "itoa",
  "ryu",
@@ -3555,9 +3620,9 @@ checksum = "45bb67a18fa91266cc7807181f62f9178a6873bfad7dc788c42e6430db40184f"
 
 [[package]]
 name = "signal-hook-registry"
-version = "1.4.1"
+version = "1.4.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d8229b473baa5980ac72ef434c4415e70c4b5e71b423043adb4ba059f89c99a1"
+checksum = "a9e9e0b4211b72e7b8b6e85c807d36c212bdb33ea8587f7569562a84df5465b1"
 dependencies = [
  "libc",
 ]
@@ -3618,9 +3683,9 @@ checksum = "b7c388c1b5e93756d0c740965c41e8822f866621d41acbdf6336a6a168f8840c"
 
 [[package]]
 name = "socket2"
-version = "0.5.6"
+version = "0.5.7"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "05ffd9c0a93b7543e062e759284fcf5f5e3b098501104bfbdde4d404db792871"
+checksum = "ce305eb0b4296696835b71df73eb912e0f1ffd2556a501fcede6e0c50349191c"
 dependencies = [
  "libc",
  "windows-sys 0.52.0",
@@ -3723,9 +3788,9 @@ dependencies = [
 
 [[package]]
 name = "syn"
-version = "2.0.58"
+version = "2.0.61"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "44cfb93f38070beee36b3fef7d4f5a16f27751d94b187b666a5cc5e9b0d30687"
+checksum = "c993ed8ccba56ae856363b1845da7266a7cb78e1d146c8a32d54b45a8b831fc9"
 dependencies = [
  "proc-macro2",
  "quote",
@@ -3818,7 +3883,7 @@ dependencies = [
  "cfg-if",
  "proc-macro2",
  "quote",
- "syn 2.0.58",
+ "syn 2.0.61",
 ]
 
 [[package]]
@@ -3829,15 +3894,15 @@ checksum = "5c89e72a01ed4c579669add59014b9a524d609c0c88c6a585ce37485879f6ffb"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.58",
+ "syn 2.0.61",
  "test-case-core",
 ]
 
 [[package]]
 name = "test-log"
-version = "0.2.15"
+version = "0.2.16"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7b319995299c65d522680decf80f2c108d85b861d81dfe340a10d16cee29d9e6"
+checksum = "3dffced63c2b5c7be278154d76b479f9f9920ed34e7574201407f0b14e2bbb93"
 dependencies = [
  "test-log-macros",
  "tracing-subscriber",
@@ -3845,13 +3910,13 @@ dependencies = [
 
 [[package]]
 name = "test-log-macros"
-version = "0.2.15"
+version = "0.2.16"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c8f546451eaa38373f549093fe9fd05e7d2bade739e2ddf834b9968621d60107"
+checksum = "5999e24eaa32083191ba4e425deb75cdf25efefabe5aaccb7446dd0d4122a3f5"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.58",
+ "syn 2.0.61",
 ]
 
 [[package]]
@@ -3876,22 +3941,22 @@ dependencies = [
 
 [[package]]
 name = "thiserror"
-version = "1.0.59"
+version = "1.0.60"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f0126ad08bff79f29fc3ae6a55cc72352056dfff61e3ff8bb7129476d44b23aa"
+checksum = "579e9083ca58dd9dcf91a9923bb9054071b9ebbd800b342194c9feb0ee89fc18"
 dependencies = [
  "thiserror-impl",
 ]
 
 [[package]]
 name = "thiserror-impl"
-version = "1.0.59"
+version = "1.0.60"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d1cd413b5d558b4c5bf3680e324a6fa5014e7b7c067a51e69dbdf47eb7148b66"
+checksum = "e2470041c06ec3ac1ab38d0356a6119054dedaea53e12fbefc0de730a1c08524"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.58",
+ "syn 2.0.61",
 ]
 
 [[package]]
@@ -3991,7 +4056,7 @@ dependencies = [
  "libc",
  "mio",
  "num_cpus",
- "parking_lot 0.12.1",
+ "parking_lot 0.12.2",
  "pin-project-lite",
  "signal-hook-registry",
  "socket2",
@@ -4007,7 +4072,7 @@ checksum = "5b8a1e28f2deaa14e508979454cb3a223b10b938b45af148bc0986de36f1923b"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.58",
+ "syn 2.0.61",
 ]
 
 [[package]]
@@ -4050,9 +4115,9 @@ dependencies = [
 
 [[package]]
 name = "tokio-util"
-version = "0.7.10"
+version = "0.7.11"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5419f34732d9eb6ee4c3578b7989078579b7f039cbbb9ca2c4da015749371e15"
+checksum = "9cf6b47b3771c49ac75ad09a6162f53ad4b8088b76ac60e8ec1455b31a189fe1"
 dependencies = [
  "bytes",
  "futures-core",
@@ -4060,7 +4125,6 @@ dependencies = [
  "futures-sink",
  "pin-project-lite",
  "tokio",
- "tracing",
 ]
 
 [[package]]
@@ -4086,9 +4150,9 @@ dependencies = [
 
 [[package]]
 name = "toml_edit"
-version = "0.22.9"
+version = "0.22.12"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8e40bb779c5187258fd7aad0eb68cb8706a0a81fa712fbea808ab43c4b8374c4"
+checksum = "d3328d4f68a705b2a4498da1d580585d39a6510f98318a2cec3018a7ec61ddef"
 dependencies = [
  "indexmap",
  "serde",
@@ -4145,7 +4209,7 @@ checksum = "34704c8d6ebcbc939824180af020566b01a7c01f80641264eba0999f6c2b6be7"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.58",
+ "syn 2.0.61",
 ]
 
 [[package]]
@@ -4325,9 +4389,9 @@ checksum = "b1d386ff53b415b7fe27b50bb44679e2cc4660272694b7b6f3326d8480823a94"
 
 [[package]]
 name = "unicode-width"
-version = "0.1.11"
+version = "0.1.12"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e51733f11c9c4f72aa0c160008246859e340b00807569a0da0e7a1079b27ba85"
+checksum = "68f5e5f3158ecfd4b8ff6fe086db7c8467a2dfdac97fe420f2b7c4aa97af66d6"
 
 [[package]]
 name = "unindent"
@@ -4418,14 +4482,14 @@ checksum = "a183cf7feeba97b4dd1c0d46788634f6221d87fa961b305bed08c851829efcc0"
 
 [[package]]
 name = "uv"
-version = "0.1.39"
+version = "0.1.44"
 dependencies = [
  "anstream",
  "anyhow",
  "assert_cmd",
  "assert_fs",
  "axoupdater",
- "base64 0.22.0",
+ "base64 0.22.1",
  "byteorder",
  "chrono",
  "clap",
@@ -4434,6 +4498,7 @@ dependencies = [
  "filetime",
  "flate2",
  "fs-err",
+ "indexmap",
  "indicatif",
  "indoc",
  "insta",
@@ -4442,6 +4507,7 @@ dependencies = [
  "miette",
  "mimalloc",
  "owo-colors",
+ "pep440_rs",
  "pep508_rs",
  "platform-tags",
  "predicates",
@@ -4457,6 +4523,7 @@ dependencies = [
  "thiserror",
  "tikv-jemallocator",
  "tokio",
+ "toml",
  "tracing",
  "tracing-durations-export",
  "tracing-subscriber",
@@ -4475,7 +4542,6 @@ dependencies = [
  "uv-normalize",
  "uv-requirements",
  "uv-resolver",
- "uv-toolchain",
  "uv-types",
  "uv-virtualenv",
  "uv-warnings",
@@ -4488,7 +4554,7 @@ version = "0.0.1"
 dependencies = [
  "anyhow",
  "async-trait",
- "base64 0.22.0",
+ "base64 0.22.1",
  "futures",
  "http",
  "insta",
@@ -4540,7 +4606,6 @@ name = "uv-cache"
 version = "0.0.1"
 dependencies = [
  "cache-key",
- "cachedir",
  "clap",
  "directories",
  "distribution-types",
@@ -4614,6 +4679,7 @@ version = "0.0.1"
 dependencies = [
  "anyhow",
  "clap",
+ "distribution-types",
  "itertools 0.12.1",
  "pep508_rs",
  "platform-tags",
@@ -4621,6 +4687,7 @@ dependencies = [
  "schemars",
  "serde",
  "serde_json",
+ "tracing",
  "uv-auth",
  "uv-normalize",
 ]
@@ -4663,12 +4730,13 @@ dependencies = [
  "uv-client",
  "uv-configuration",
  "uv-dispatch",
+ "uv-distribution",
  "uv-fs",
  "uv-installer",
  "uv-interpreter",
  "uv-normalize",
+ "uv-requirements",
  "uv-resolver",
- "uv-toolchain",
  "uv-types",
  "uv-workspace",
  "walkdir",
@@ -4683,13 +4751,13 @@ dependencies = [
  "futures",
  "install-wheel-rs",
  "itertools 0.12.1",
- "pep508_rs",
  "rustc-hash",
  "tracing",
  "uv-build",
  "uv-cache",
  "uv-client",
  "uv-configuration",
+ "uv-distribution",
  "uv-installer",
  "uv-interpreter",
  "uv-resolver",
@@ -4761,6 +4829,7 @@ name = "uv-fs"
 version = "0.0.1"
 dependencies = [
  "backoff",
+ "cachedir",
  "dunce",
  "encoding_rs_io",
  "fs-err",
@@ -4769,7 +4838,6 @@ dependencies = [
  "once_cell",
  "path-absolutize",
  "tempfile",
- "tokio",
  "tracing",
  "urlencoding",
  "uv-warnings",
@@ -4780,7 +4848,7 @@ name = "uv-git"
 version = "0.0.1"
 dependencies = [
  "anyhow",
- "base64 0.22.0",
+ "base64 0.22.1",
  "cache-key",
  "cargo-util",
  "fs-err",
@@ -4803,6 +4871,8 @@ version = "0.0.1"
 dependencies = [
  "anyhow",
  "async-channel",
+ "cache-key",
+ "distribution-filename",
  "distribution-types",
  "fs-err",
  "futures",
@@ -4822,11 +4892,11 @@ dependencies = [
  "tracing",
  "url",
  "uv-cache",
- "uv-client",
  "uv-configuration",
  "uv-distribution",
  "uv-extract",
  "uv-fs",
+ "uv-git",
  "uv-interpreter",
  "uv-normalize",
  "uv-types",
@@ -4842,6 +4912,7 @@ dependencies = [
  "cache-key",
  "configparser",
  "fs-err",
+ "futures",
  "indoc",
  "insta",
  "install-wheel-rs",
@@ -4852,16 +4923,22 @@ dependencies = [
  "platform-tags",
  "pypi-types",
  "regex",
+ "reqwest",
+ "reqwest-middleware",
  "rmp-serde",
  "same-file",
+ "schemars",
  "serde",
  "serde_json",
  "tempfile",
  "thiserror",
+ "tokio-util",
  "tracing",
+ "url",
  "uv-cache",
+ "uv-client",
+ "uv-extract",
  "uv-fs",
- "uv-toolchain",
  "uv-warnings",
  "which",
  "winapi",
@@ -4889,11 +4966,18 @@ dependencies = [
  "distribution-types",
  "fs-err",
  "futures",
+ "glob",
  "indexmap",
+ "indoc",
+ "insta",
+ "itertools 0.12.1",
+ "path-absolutize",
+ "pep440_rs",
  "pep508_rs",
  "pypi-types",
  "requirements-txt",
  "rustc-hash",
+ "schemars",
  "serde",
  "thiserror",
  "toml",
@@ -4903,6 +4987,7 @@ dependencies = [
  "uv-configuration",
  "uv-distribution",
  "uv-fs",
+ "uv-git",
  "uv-normalize",
  "uv-resolver",
  "uv-types",
@@ -4918,7 +5003,6 @@ dependencies = [
  "cache-key",
  "chrono",
  "clap",
- "dashmap",
  "derivative",
  "distribution-filename",
  "distribution-types",
@@ -4946,12 +5030,14 @@ dependencies = [
  "thiserror",
  "tokio",
  "tokio-stream",
+ "toml",
  "tracing",
  "url",
  "uv-cache",
  "uv-client",
  "uv-configuration",
  "uv-distribution",
+ "uv-git",
  "uv-interpreter",
  "uv-normalize",
  "uv-types",
@@ -4959,30 +5045,6 @@ dependencies = [
 ]
 
 [[package]]
-name = "uv-toolchain"
-version = "0.1.0"
-dependencies = [
- "anyhow",
- "fs-err",
- "futures",
- "once_cell",
- "pep440_rs",
- "pep508_rs",
- "reqwest",
- "reqwest-middleware",
- "schemars",
- "serde",
- "tempfile",
- "thiserror",
- "tokio-util",
- "tracing",
- "url",
- "uv-client",
- "uv-extract",
- "uv-fs",
-]
-
-[[package]]
 name = "uv-types"
 version = "0.0.1"
 dependencies = [
@@ -4992,7 +5054,6 @@ dependencies = [
  "pep440_rs",
  "pep508_rs",
  "pypi-types",
- "requirements-txt",
  "rustc-hash",
  "thiserror",
  "url",
@@ -5004,17 +5065,17 @@ dependencies = [
 
 [[package]]
 name = "uv-version"
-version = "0.1.39"
+version = "0.1.44"
 
 [[package]]
 name = "uv-virtualenv"
 version = "0.0.4"
 dependencies = [
  "anstream",
- "cachedir",
  "clap",
  "directories",
  "fs-err",
+ "itertools 0.12.1",
  "pathdiff",
  "platform-tags",
  "pypi-types",
@@ -5052,9 +5113,9 @@ dependencies = [
  "tracing",
  "uv-configuration",
  "uv-fs",
+ "uv-interpreter",
  "uv-normalize",
  "uv-resolver",
- "uv-toolchain",
  "uv-warnings",
 ]
 
@@ -5164,7 +5225,7 @@ dependencies = [
  "once_cell",
  "proc-macro2",
  "quote",
- "syn 2.0.58",
+ "syn 2.0.61",
  "wasm-bindgen-shared",
 ]
 
@@ -5198,7 +5259,7 @@ checksum = "e94f17b526d0a461a191c78ea52bbce64071ed5c04c9ffe424dcb38f74171bb7"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.58",
+ "syn 2.0.61",
  "wasm-bindgen-backend",
  "wasm-bindgen-shared",
 ]
@@ -5298,11 +5359,11 @@ checksum = "ac3b87c63620426dd9b991e5ce0329eff545bccbbb34f3be09ff6fb6ab51b7b6"
 
 [[package]]
 name = "winapi-util"
-version = "0.1.6"
+version = "0.1.8"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f29e6f9198ba0d26b4c9f07dbe6f9ed633e1f3d5b8b414090084349e46a52596"
+checksum = "4d4cc384e1e73b93bafa6fb4f1df8c41695c8a91cf9c4c64358067d15a7b6c6b"
 dependencies = [
- "winapi",
+ "windows-sys 0.52.0",
 ]
 
 [[package]]
@@ -5362,7 +5423,7 @@ checksum = "12168c33176773b86799be25e2a2ba07c7aab9968b37541f1094dbd7a60c8946"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.58",
+ "syn 2.0.61",
 ]
 
 [[package]]
@@ -5373,7 +5434,7 @@ checksum = "f6fc35f58ecd95a9b71c4f2329b911016e6bec66b3f2e6a4aad86bd2e99e2f9b"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.58",
+ "syn 2.0.61",
 ]
 
 [[package]]
@@ -5384,7 +5445,7 @@ checksum = "9d8dc32e0095a7eeccebd0e3f09e9509365ecb3fc6ac4d6f5f14a3f6392942d1"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.58",
+ "syn 2.0.61",
 ]
 
 [[package]]
@@ -5395,7 +5456,7 @@ checksum = "08990546bf4edef8f431fa6326e032865f27138718c587dc21bc0265bbcb57cc"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.58",
+ "syn 2.0.61",
 ]
 
 [[package]]
@@ -5548,9 +5609,9 @@ checksum = "bec47e5bfd1bff0eeaf6d8b485cc1074891a197ab4225d504cb7a1ab88b02bf0"
 
 [[package]]
 name = "winnow"
-version = "0.6.5"
+version = "0.6.8"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "dffa400e67ed5a4dd237983829e66475f0a4a26938c4b04c21baede6262215b8"
+checksum = "c3c52e9c97a68071b23e836c9380edae937f17b9c4667bd021973efc689f618d"
 dependencies = [
  "memchr",
 ]
@@ -5649,15 +5710,17 @@ checksum = "525b4ec142c6b68a2d10f01f7bbf6755599ca3f81ea53b8431b7dd348f5fdb2d"
 
 [[package]]
 name = "zip"
-version = "1.1.1"
+version = "1.2.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f2655979068a1f8fa91cb9e8e5b9d3ee54d18e0ddc358f2f4a395afc0929a84b"
+checksum = "c700ea425e148de30c29c580c1f9508b93ca57ad31c9f4e96b83c194c37a7a8f"
 dependencies = [
  "arbitrary",
- "byteorder",
  "crc32fast",
  "crossbeam-utils",
+ "displaydoc",
  "flate2",
+ "indexmap",
+ "thiserror",
 ]
 
 [[package]]
diff --git a/pkgs/by-name/uv/uv/package.nix b/pkgs/by-name/uv/uv/package.nix
index 77f775d3793e..8c24b1b49511 100644
--- a/pkgs/by-name/uv/uv/package.nix
+++ b/pkgs/by-name/uv/uv/package.nix
@@ -12,20 +12,20 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "uv";
-  version = "0.1.39";
+  version = "0.1.44";
 
   src = fetchFromGitHub {
     owner = "astral-sh";
     repo = "uv";
     rev = version;
-    hash = "sha256-o5KrguapmfihO8oAse+LjBH9MvSsUORyZRALxkU4+xA=";
+    hash = "sha256-dmUnngHMj9WSDsr8es3eX9y2e8mmNcQFJ0QHi5YQT0U=";
   };
 
   cargoLock = {
     lockFile = ./Cargo.lock;
     outputHashes = {
       "async_zip-0.0.17" = "sha256-Q5fMDJrQtob54CTII3+SXHeozy5S5s3iLOzntevdGOs=";
-      "pubgrub-0.2.1" = "sha256-sqC7R2mtqymYFULDW0wSbM/MKCZc8rP7Yy/gaQpjYEI=";
+      "pubgrub-0.2.1" = "sha256-mAPyo2R996ymzCt6TAX2G7xU1C3vDGjYF0z7R8lI1yg=";
     };
   };
 
diff --git a/pkgs/by-name/ux/uxn/package.nix b/pkgs/by-name/ux/uxn/package.nix
index 9180f1b3d933..17a85dddce52 100644
--- a/pkgs/by-name/ux/uxn/package.nix
+++ b/pkgs/by-name/ux/uxn/package.nix
@@ -7,13 +7,13 @@
 
 stdenv.mkDerivation (finalAttrs: {
   pname = "uxn";
-  version = "unstable-2024-04-15";
+  version = "1.0-unstable-2024-05-10";
 
   src = fetchFromSourcehut {
     owner = "~rabbits";
     repo = "uxn";
-    rev = "b0bfb38dccff4ff7b0fa6d384651f7847a76fd1f";
-    hash = "sha256-OLrIIrcIfFI96+Q2fc0JSqJHBMcoN9+LL5E/YCN21Kc=";
+    rev = "bb57b85f5724ccabdb081ff83080c2e3e0e122f7";
+    hash = "sha256-S/lTa6nQ7qIIibYaLfaS4l2dEKgOwXuMryvK9j7FD9Y=";
   };
 
   outputs = [ "out" "projects" ];
diff --git a/pkgs/servers/uxplay/default.nix b/pkgs/by-name/ux/uxplay/package.nix
index 01b0361e29e8..53c2c76f5ab5 100644
--- a/pkgs/servers/uxplay/default.nix
+++ b/pkgs/by-name/ux/uxplay/package.nix
@@ -1,14 +1,16 @@
-{ lib
-, stdenv
-, fetchFromGitHub
-, cmake
-, openssl
-, libplist
-, pkg-config
-, wrapGAppsHook
-, avahi
-, avahi-compat
-, gst_all_1
+{
+  lib,
+  stdenv,
+  fetchFromGitHub,
+  cmake,
+  openssl,
+  libplist,
+  pkg-config,
+  wrapGAppsHook3,
+  avahi,
+  avahi-compat,
+  gst_all_1,
+  nix-update-script,
 }:
 
 stdenv.mkDerivation (finalAttrs: {
@@ -33,7 +35,7 @@ stdenv.mkDerivation (finalAttrs: {
     openssl
     libplist
     pkg-config
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
@@ -47,12 +49,15 @@ stdenv.mkDerivation (finalAttrs: {
     gst_all_1.gst-libav
   ];
 
+  passthru.updateScript = nix-update-script { };
+
   meta = {
+    changelog = "https://github.com/FDH2/UxPlay/releases/tag/v${finalAttrs.version}";
     description = "AirPlay Unix mirroring server";
     homepage = "https://github.com/FDH2/UxPlay";
     license = lib.licenses.gpl3Plus;
+    mainProgram = "uxplay";
     maintainers = [ lib.maintainers.azuwis ];
     platforms = lib.platforms.unix;
-    mainProgram = "uxplay";
   };
 })
diff --git a/pkgs/by-name/va/valuta/package.nix b/pkgs/by-name/va/valuta/package.nix
new file mode 100644
index 000000000000..cabd2edc289d
--- /dev/null
+++ b/pkgs/by-name/va/valuta/package.nix
@@ -0,0 +1,65 @@
+{ lib
+, python3Packages
+, fetchFromGitHub
+, meson
+, ninja
+, pkg-config
+, blueprint-compiler
+, desktop-file-utils
+, gtk4
+, gst_all_1
+, libsoup_3
+, libadwaita
+, wrapGAppsHook4
+}:
+
+python3Packages.buildPythonApplication rec {
+  pname = "valuta";
+  version = "1.2.0";
+
+  pyproject = false;
+
+  src = fetchFromGitHub {
+    owner = "ideveCore";
+    repo = "Valuta";
+    rev = "v${version}";
+    hash = "sha256-ygroF9hlmsjQTocly7CNL6zQi4N6h8va/ZkJ8w8QHms=";
+  };
+
+  nativeBuildInputs = [
+    meson
+    ninja
+    pkg-config
+    blueprint-compiler
+    desktop-file-utils
+    wrapGAppsHook4
+  ];
+
+  buildInputs = [
+    gtk4
+    gst_all_1.gstreamer
+    libsoup_3
+    libadwaita
+  ];
+
+  propagatedBuildInputs = with python3Packages; [
+    dbus-python
+    pygobject3
+  ];
+
+  dontWrapGApps = true;
+
+  # Arguments to be passed to `makeWrapper`, only used by buildPython*
+  preFixup = ''
+    makeWrapperArgs+=("''${gappsWrapperArgs[@]}")
+  '';
+
+  meta = with lib; {
+    description = "A simple application for converting currencies, with support for various APIs";
+    homepage = "https://github.com/ideveCore/Valuta";
+    license = licenses.gpl3Plus;
+    maintainers = with maintainers; [ arthsmn ];
+    mainProgram = "currencyconverter";
+    platforms = platforms.linux;
+  };
+}
diff --git a/pkgs/by-name/va/varia/package.nix b/pkgs/by-name/va/varia/package.nix
index 8b54794298d8..d638671a27ca 100644
--- a/pkgs/by-name/va/varia/package.nix
+++ b/pkgs/by-name/va/varia/package.nix
@@ -13,14 +13,14 @@
 
 python3Packages.buildPythonApplication rec {
   pname = "varia";
-  version = "2024.3.20";
+  version = "2024.5.7";
   pyproject = false;
 
   src = fetchFromGitHub {
     owner = "giantpinkrobots";
     repo = "varia";
     rev = "v${version}";
-    hash = "sha256-kvpARXunKaybw9mNCvCTjtHTGbnbVmja5npcjFY5cdM=";
+    hash = "sha256-axBBJYIFCt3J0aCY8tMYehho0QN1eIcUMPhWb5g5uDc=";
   };
 
   postPatch = ''
diff --git a/pkgs/by-name/va/vaults/package.nix b/pkgs/by-name/va/vaults/package.nix
index e44c3b73efec..6e0f1078819b 100644
--- a/pkgs/by-name/va/vaults/package.nix
+++ b/pkgs/by-name/va/vaults/package.nix
@@ -10,7 +10,7 @@
 , rustPlatform
 , rustc
 , cargo
-, wrapGAppsHook
+, wrapGAppsHook3
 , glib
 , gtk4
 , libadwaita
@@ -56,7 +56,7 @@ stdenv.mkDerivation rec {
     meson
     ninja
     pkg-config
-    wrapGAppsHook
+    wrapGAppsHook3
     cargo
     rustc
     rustPlatform.cargoSetupHook
diff --git a/pkgs/by-name/vc/vcpkg/package.nix b/pkgs/by-name/vc/vcpkg/package.nix
index befa6eab94c2..8e2753617ab9 100644
--- a/pkgs/by-name/vc/vcpkg/package.nix
+++ b/pkgs/by-name/vc/vcpkg/package.nix
@@ -7,13 +7,13 @@
 
 stdenvNoCC.mkDerivation (finalAttrs: {
   pname = "vcpkg";
-  version = "2024.03.25";
+  version = "2024.04.26";
 
   src = fetchFromGitHub {
     owner = "microsoft";
     repo = "vcpkg";
     rev = finalAttrs.version;
-    hash = "sha256-HMK3sebq/9TuxHQ75+5UIMvN09cPWmq7TFBBwRY4X7o=";
+    hash = "sha256-Bu1sZhk8fqG5D7m/0QK3uI97stXx8l8y30lnffTr9h0=";
   };
 
   installPhase = let
diff --git a/pkgs/by-name/ve/vencord/package-lock.json b/pkgs/by-name/ve/vencord/package-lock.json
index 8af42a918205..a5c9f7b54397 100644
--- a/pkgs/by-name/ve/vencord/package-lock.json
+++ b/pkgs/by-name/ve/vencord/package-lock.json
@@ -1,12 +1,12 @@
 {
     "name": "vencord",
-    "version": "1.7.9",
+    "version": "1.8.2",
     "lockfileVersion": 3,
     "requires": true,
     "packages": {
         "": {
             "name": "vencord",
-            "version": "1.7.9",
+            "version": "1.8.2",
             "license": "GPL-3.0-or-later",
             "dependencies": {
                 "@sapphi-red/web-noise-suppressor": "0.3.3",
@@ -68,21 +68,21 @@
             }
         },
         "node_modules/@babel/helper-validator-identifier": {
-            "version": "7.22.20",
-            "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.22.20.tgz",
-            "integrity": "sha512-Y4OZ+ytlatR8AI+8KZfKuL5urKp7qey08ha31L8b3BwewJAoJamTzyvxPR/5D+KkdJCGPq/+8TukHBlY10FX9A==",
+            "version": "7.24.5",
+            "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.24.5.tgz",
+            "integrity": "sha512-3q93SSKX2TWCG30M2G2kwaKeTYgEUp5Snjuj8qm729SObL6nbtUldAi37qbxkD5gg3xnBio+f9nqpSepGZMvxA==",
             "dev": true,
             "engines": {
                 "node": ">=6.9.0"
             }
         },
         "node_modules/@babel/highlight": {
-            "version": "7.24.2",
-            "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.24.2.tgz",
-            "integrity": "sha512-Yac1ao4flkTxTteCDZLEvdxg2fZfz1v8M4QpaGypq/WPDqg3ijHYbDfs+LG5hvzSoqaSZ9/Z9lKSP3CjZjv+pA==",
+            "version": "7.24.5",
+            "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.24.5.tgz",
+            "integrity": "sha512-8lLmua6AVh/8SLJRRVD6V8p73Hir9w5mJrhE+IPpILG31KKlI9iz5zmBYKcWPS59qSfgP9RaSBQSHHE81WKuEw==",
             "dev": true,
             "dependencies": {
-                "@babel/helper-validator-identifier": "^7.22.20",
+                "@babel/helper-validator-identifier": "^7.24.5",
                 "chalk": "^2.4.2",
                 "js-tokens": "^4.0.0",
                 "picocolors": "^1.0.0"
@@ -163,9 +163,9 @@
             }
         },
         "node_modules/@csstools/css-parser-algorithms": {
-            "version": "2.6.1",
-            "resolved": "https://registry.npmjs.org/@csstools/css-parser-algorithms/-/css-parser-algorithms-2.6.1.tgz",
-            "integrity": "sha512-ubEkAaTfVZa+WwGhs5jbo5Xfqpeaybr/RvWzvFxRs4jfq16wH8l8Ty/QEEpINxll4xhuGfdMbipRyz5QZh9+FA==",
+            "version": "2.6.3",
+            "resolved": "https://registry.npmjs.org/@csstools/css-parser-algorithms/-/css-parser-algorithms-2.6.3.tgz",
+            "integrity": "sha512-xI/tL2zxzEbESvnSxwFgwvy5HS00oCXxL4MLs6HUiDcYfwowsoQaABKxUElp1ARITrINzBnsECOc1q0eg2GOrA==",
             "dev": true,
             "funding": [
                 {
@@ -181,13 +181,13 @@
                 "node": "^14 || ^16 || >=18"
             },
             "peerDependencies": {
-                "@csstools/css-tokenizer": "^2.2.4"
+                "@csstools/css-tokenizer": "^2.3.1"
             }
         },
         "node_modules/@csstools/css-tokenizer": {
-            "version": "2.2.4",
-            "resolved": "https://registry.npmjs.org/@csstools/css-tokenizer/-/css-tokenizer-2.2.4.tgz",
-            "integrity": "sha512-PuWRAewQLbDhGeTvFuq2oClaSCKPIBmHyIobCV39JHRYN0byDcUWJl5baPeNUcqrjtdMNqFooE0FGl31I3JOqw==",
+            "version": "2.3.1",
+            "resolved": "https://registry.npmjs.org/@csstools/css-tokenizer/-/css-tokenizer-2.3.1.tgz",
+            "integrity": "sha512-iMNHTyxLbBlWIfGtabT157LH9DUx9X8+Y3oymFEuMj8HNc+rpE3dPFGFgHjpKfjeFDjLjYIAIhXPGvS2lKxL9g==",
             "dev": true,
             "funding": [
                 {
@@ -204,9 +204,9 @@
             }
         },
         "node_modules/@csstools/media-query-list-parser": {
-            "version": "2.1.9",
-            "resolved": "https://registry.npmjs.org/@csstools/media-query-list-parser/-/media-query-list-parser-2.1.9.tgz",
-            "integrity": "sha512-qqGuFfbn4rUmyOB0u8CVISIp5FfJ5GAR3mBrZ9/TKndHakdnm6pY0L/fbLcpPnrzwCyyTEZl1nUcXAYHEWneTA==",
+            "version": "2.1.11",
+            "resolved": "https://registry.npmjs.org/@csstools/media-query-list-parser/-/media-query-list-parser-2.1.11.tgz",
+            "integrity": "sha512-uox5MVhvNHqitPP+SynrB1o8oPxPMt2JLgp5ghJOWf54WGQ5OKu47efne49r1SWqs3wRP8xSWjnO9MBKxhB1dA==",
             "dev": true,
             "funding": [
                 {
@@ -222,8 +222,8 @@
                 "node": "^14 || ^16 || >=18"
             },
             "peerDependencies": {
-                "@csstools/css-parser-algorithms": "^2.6.1",
-                "@csstools/css-tokenizer": "^2.2.4"
+                "@csstools/css-parser-algorithms": "^2.6.3",
+                "@csstools/css-tokenizer": "^2.3.1"
             }
         },
         "node_modules/@csstools/selector-specificity": {
@@ -770,9 +770,9 @@
             }
         },
         "node_modules/@types/diff": {
-            "version": "5.2.0",
-            "resolved": "https://registry.npmjs.org/@types/diff/-/diff-5.2.0.tgz",
-            "integrity": "sha512-pjJH+02ukgJRW0mViDUA1cdC+wzSgRu0e4cPuogPLAw0i66y62iMP0ZlXoJAmoXrKRZnF3pMDwyKZsgNVlMX4A==",
+            "version": "5.2.1",
+            "resolved": "https://registry.npmjs.org/@types/diff/-/diff-5.2.1.tgz",
+            "integrity": "sha512-uxpcuwWJGhe2AR1g8hD9F5OYGCqjqWnBUQFD8gMZsDbv8oPHzxJF6iMO6n8Tk0AdzlxoaaoQhOYlIg/PukVU8g==",
             "dev": true
         },
         "node_modules/@types/filesystem": {
@@ -803,9 +803,9 @@
             "dev": true
         },
         "node_modules/@types/lodash": {
-            "version": "4.17.0",
-            "resolved": "https://registry.npmjs.org/@types/lodash/-/lodash-4.17.0.tgz",
-            "integrity": "sha512-t7dhREVv6dbNj0q17X12j7yDG4bD/DHYX7o5/DbDxobP0HnGPgpRz2Ej77aL7TZT3DSw13fqUTj8J4mMnqa7WA==",
+            "version": "4.17.1",
+            "resolved": "https://registry.npmjs.org/@types/lodash/-/lodash-4.17.1.tgz",
+            "integrity": "sha512-X+2qazGS3jxLAIz5JDXDzglAF3KpijdhFxlf/V1+hEsOUc+HnWi81L/uv/EvGuV90WY+7mPGFCUDGfQC3Gj95Q==",
             "dev": true
         },
         "node_modules/@types/minimist": {
@@ -815,9 +815,9 @@
             "dev": true
         },
         "node_modules/@types/node": {
-            "version": "18.19.31",
-            "resolved": "https://registry.npmjs.org/@types/node/-/node-18.19.31.tgz",
-            "integrity": "sha512-ArgCD39YpyyrtFKIqMDvjz79jto5fcI/SVUs2HwB+f0dAzq68yqOdyaSivLiLugSziTpNXLQrVb7RZFmdZzbhA==",
+            "version": "18.19.33",
+            "resolved": "https://registry.npmjs.org/@types/node/-/node-18.19.33.tgz",
+            "integrity": "sha512-NR9+KrpSajr2qBVp/Yt5TU/rp+b5Mayi3+OlMlcg2cVCfRmcG5PWZ7S4+MG9PZ5gWBoc9Pd0BKSRViuBCRPu0A==",
             "dev": true,
             "dependencies": {
                 "undici-types": "~5.26.4"
@@ -2747,9 +2747,9 @@
             }
         },
         "node_modules/get-tsconfig": {
-            "version": "4.7.3",
-            "resolved": "https://registry.npmjs.org/get-tsconfig/-/get-tsconfig-4.7.3.tgz",
-            "integrity": "sha512-ZvkrzoUA0PQZM6fy6+/Hce561s+faD1rsNwhnO5FelNjyy7EMGJ3Rz1AQ8GYDWjhRs/7dBLOEJvhK8MiEJOAFg==",
+            "version": "4.7.5",
+            "resolved": "https://registry.npmjs.org/get-tsconfig/-/get-tsconfig-4.7.5.tgz",
+            "integrity": "sha512-ZCuZCnlqNzjb4QprAzXKdpp/gh6KTxSJuw3IBsPnV/7fV4NxC9ckB+vPTt8w7fJA0TaSD7c55BR47JD6MEDyDw==",
             "dev": true,
             "dependencies": {
                 "resolve-pkg-maps": "^1.0.0"
@@ -4398,13 +4398,10 @@
             }
         },
         "node_modules/semver": {
-            "version": "7.6.0",
-            "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.0.tgz",
-            "integrity": "sha512-EnwXhrlwXMk9gKu5/flx5sv/an57AkRplG3hTK68W7FRDN+k+OWBj65M7719OkA82XLBxrcX0KSHj+X5COhOVg==",
+            "version": "7.6.2",
+            "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.2.tgz",
+            "integrity": "sha512-FNAIBWCx9qcRhoHcgcJ0gvU7SN1lYU2ZXuSfl04bSC5OpvDHFyJCjdNHomPXxjQlCBU67YW64PzY7/VIEH7F2w==",
             "dev": true,
-            "dependencies": {
-                "lru-cache": "^6.0.0"
-            },
             "bin": {
                 "semver": "bin/semver.js"
             },
@@ -4967,15 +4964,15 @@
             }
         },
         "node_modules/table/node_modules/ajv": {
-            "version": "8.12.0",
-            "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.12.0.tgz",
-            "integrity": "sha512-sRu1kpcO9yLtYxBKvqfTeh9KzZEwO3STyX1HT+4CaDzC6HpTGYhIhPIzj9XuKU7KYDwnaeh5hcOwjy1QuJzBPA==",
+            "version": "8.13.0",
+            "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.13.0.tgz",
+            "integrity": "sha512-PRA911Blj99jR5RMeTunVbNXMF6Lp4vZXnk5GQjcnUWUTsrXtekg/pnmFFI2u/I36Y/2bITGS30GZCXei6uNkA==",
             "dev": true,
             "dependencies": {
-                "fast-deep-equal": "^3.1.1",
+                "fast-deep-equal": "^3.1.3",
                 "json-schema-traverse": "^1.0.0",
                 "require-from-string": "^2.0.2",
-                "uri-js": "^4.2.2"
+                "uri-js": "^4.4.1"
             },
             "funding": {
                 "type": "github",
diff --git a/pkgs/by-name/ve/vencord/package.nix b/pkgs/by-name/ve/vencord/package.nix
index 5b6a88bf3184..5d8074d70cb2 100644
--- a/pkgs/by-name/ve/vencord/package.nix
+++ b/pkgs/by-name/ve/vencord/package.nix
@@ -5,8 +5,8 @@
 , buildWebExtension ? false
 }:
 let
-  version = "1.7.9";
-  gitHash = "d294128";
+  version = "1.8.4";
+  gitHash = "a5eb55e";
 in
 buildNpmPackage rec {
   pname = "vencord";
@@ -16,7 +16,7 @@ buildNpmPackage rec {
     owner = "Vendicated";
     repo = "Vencord";
     rev = "v${version}";
-    hash = "sha256-iXcWz/ZqhCQnqS37LVTXYW+1eeos0AUA0O5URb2FELU=";
+    hash = "sha256-FbU1Zsz/84oSOCOSWunA5nn5qFGLQ4W3uqsbYytF/7c=";
   };
 
   ESBUILD_BINARY_PATH = lib.getExe (esbuild.overrideAttrs (final: _: {
@@ -34,7 +34,7 @@ buildNpmPackage rec {
   npmRebuildFlags = [ "|| true" ];
 
   makeCacheWritable = true;
-  npmDepsHash = "sha256-G3adLiSrEyAShTsNEaYLEPYACHoXTISiNp/9jru0mUc=";
+  npmDepsHash = "sha256-yb9Dbu9Rb1+xV/XiDP49uaQdBP9uM+oimzkeznpGrKw=";
   npmFlags = [ "--legacy-peer-deps" ];
   npmBuildScript = if buildWebExtension then "buildWeb" else "build";
   npmBuildFlags = [ "--" "--standalone" "--disable-updater" ];
@@ -60,6 +60,6 @@ buildNpmPackage rec {
     description = "Vencord web extension";
     homepage = "https://github.com/Vendicated/Vencord";
     license = licenses.gpl3Only;
-    maintainers = with maintainers; [ FlafyDev fwam NotAShelf Scrumplex ];
+    maintainers = with maintainers; [ FlafyDev NotAShelf Scrumplex ];
   };
 }
diff --git a/pkgs/by-name/ve/vesktop/package.nix b/pkgs/by-name/ve/vesktop/package.nix
index 8b06a570dedc..9e45802d392e 100644
--- a/pkgs/by-name/ve/vesktop/package.nix
+++ b/pkgs/by-name/ve/vesktop/package.nix
@@ -1,25 +1,26 @@
-{ lib
-, stdenv
-, stdenvNoCC
-, fetchFromGitHub
-, substituteAll
-, makeWrapper
-, makeDesktopItem
-, copyDesktopItems
-, vencord
-, electron
-, libicns
-, jq
-, moreutils
-, cacert
-, nodePackages
-, pipewire
-, libpulseaudio
-, autoPatchelfHook
-, withTTS ? true
+{
+  lib,
+  stdenv,
+  stdenvNoCC,
+  fetchFromGitHub,
+  substituteAll,
+  makeWrapper,
+  makeDesktopItem,
+  copyDesktopItems,
+  vencord,
+  electron,
+  libicns,
+  jq,
+  moreutils,
+  cacert,
+  nodePackages,
+  pipewire,
+  libpulseaudio,
+  autoPatchelfHook,
+  withTTS ? true,
   # Enables the use of vencord from nixpkgs instead of
   # letting vesktop manage it's own version
-, withSystemVencord ? true
+  withSystemVencord ? false,
 }:
 stdenv.mkDerivation (finalAttrs: {
   pname = "vesktop";
@@ -38,68 +39,80 @@ stdenv.mkDerivation (finalAttrs: {
     assert lib.versionAtLeast nodePackages.pnpm.version "8.10.0";
     stdenvNoCC.mkDerivation {
       pname = "${finalAttrs.pname}-pnpm-deps";
-      inherit (finalAttrs) src version patches ELECTRON_SKIP_BINARY_DOWNLOAD;
+      inherit (finalAttrs)
+        src
+        version
+        patches
+        ELECTRON_SKIP_BINARY_DOWNLOAD
+        ;
 
       nativeBuildInputs = [
+        cacert
         jq
         moreutils
         nodePackages.pnpm
-        cacert
       ];
 
-      pnpmPatch = builtins.toJSON {
-        pnpm.supportedArchitectures = {
-          os = [ "linux" ];
-          cpu = [ "x64" "arm64" ];
-        };
-      };
-
-      postPatch = ''
-        mv package.json package.json.orig
-        jq --raw-output ". * $pnpmPatch" package.json.orig > package.json
-      '';
-
-      # https://github.com/NixOS/nixpkgs/blob/763e59ffedb5c25774387bf99bc725df5df82d10/pkgs/applications/misc/pot/default.nix#L56
+      # inspired by https://github.com/NixOS/nixpkgs/blob/763e59ffedb5c25774387bf99bc725df5df82d10/pkgs/applications/misc/pot/default.nix#L56
+      # and based on https://github.com/NixOS/nixpkgs/pull/290715
       installPhase = ''
-        export HOME=$(mktemp -d)
+        runHook preInstall
 
+        export HOME=$(mktemp -d)
         pnpm config set store-dir $out
-        pnpm install --frozen-lockfile --ignore-script
+        # Some packages produce platform dependent outputs. We do not want to cache those in the global store
+        pnpm config set side-effects-cache false
+        # pnpm is going to warn us about using --force
+        # --force allows us to fetch all dependencies including ones that aren't meant for our host platform
+        pnpm install --force --frozen-lockfile --ignore-script
+
+      '';
 
+      fixupPhase = ''
+        runHook preFixup
+
+        # Remove timestamp and sort the json files
         rm -rf $out/v3/tmp
         for f in $(find $out -name "*.json"); do
           sed -i -E -e 's/"checkedAt":[0-9]+,//g' $f
           jq --sort-keys . $f | sponge $f
         done
+
+        runHook postFixup
       '';
 
+      dontConfigure = true;
       dontBuild = true;
-      dontFixup = true;
       outputHashMode = "recursive";
-      outputHash = "sha256-6ezEBeYmK5va3gCh00YnJzZ77V/Ql7A3l/+csohkz68=";
+      outputHash = "sha256-PogE8uf3W5cKSCqFHMz7FOvT7ONUP4FiFWGBgtk3UC8=";
     };
 
   nativeBuildInputs = [
+    autoPatchelfHook
     copyDesktopItems
+    makeWrapper
     nodePackages.pnpm
     nodePackages.nodejs
-    makeWrapper
-    autoPatchelfHook
   ];
 
   buildInputs = [
-    pipewire
     libpulseaudio
+    pipewire
     stdenv.cc.cc.lib
   ];
 
-  patches = [
-    ./disable_update_checking.patch
-  ] ++ lib.optional withSystemVencord (substituteAll { inherit vencord; src = ./use_system_vencord.patch; });
+  patches =
+    [ ./disable_update_checking.patch ]
+    ++ lib.optional withSystemVencord (substituteAll {
+      inherit vencord;
+      src = ./use_system_vencord.patch;
+    });
 
   ELECTRON_SKIP_BINARY_DOWNLOAD = 1;
 
-  preBuild = ''
+  configurePhase = ''
+    runHook preConfigure
+
     export HOME=$(mktemp -d)
     export STORE_PATH=$(mktemp -d)
 
@@ -107,11 +120,15 @@ stdenv.mkDerivation (finalAttrs: {
     chmod -R +w "$STORE_PATH"
 
     pnpm config set store-dir "$STORE_PATH"
-    pnpm install --offline --frozen-lockfile --ignore-script
+    pnpm install --frozen-lockfile --ignore-script --offline
     patchShebangs node_modules/{*,.*}
+
+    runHook postConfigure
   '';
 
-  postBuild = ''
+  buildPhase = ''
+    runHook preBuild
+
     pnpm build
     # using `pnpm exec` here apparently makes it ignore ELECTRON_SKIP_BINARY_DOWNLOAD
     ./node_modules/.bin/electron-builder \
@@ -119,30 +136,31 @@ stdenv.mkDerivation (finalAttrs: {
       -c.asarUnpack="**/*.node" \
       -c.electronDist=${electron}/libexec/electron \
       -c.electronVersion=${electron.version}
+
+    runHook postBuild
   '';
 
   # this is consistent with other nixpkgs electron packages and upstream, as far as I am aware
-  installPhase =
-    ''
-      runHook preInstall
+  installPhase = ''
+    runHook preInstall
 
-      mkdir -p $out/opt/Vesktop
-      cp -r dist/linux-*unpacked/resources $out/opt/Vesktop/
+    mkdir -p $out/opt/Vesktop
+    cp -r dist/linux-*unpacked/resources $out/opt/Vesktop/
 
-      pushd build
-      ${libicns}/bin/icns2png -x icon.icns
-      for file in icon_*x32.png; do
-        file_suffix=''${file//icon_}
-        install -Dm0644 $file $out/share/icons/hicolor/''${file_suffix//x32.png}/apps/vesktop.png
-      done
+    pushd build
+    ${libicns}/bin/icns2png -x icon.icns
+    for file in icon_*x32.png; do
+      file_suffix=''${file//icon_}
+      install -Dm0644 $file $out/share/icons/hicolor/''${file_suffix//x32.png}/apps/vesktop.png
+    done
 
-      makeWrapper ${electron}/bin/electron $out/bin/vesktop \
-        --add-flags $out/opt/Vesktop/resources/app.asar \
-        ${lib.optionalString withTTS "--add-flags \"--enable-speech-dispatcher\""} \
-        --add-flags "\''${NIXOS_OZONE_WL:+\''${WAYLAND_DISPLAY:+--ozone-platform-hint=auto --enable-features=WaylandWindowDecorations --enable-wayland-ime}}"
+    makeWrapper ${electron}/bin/electron $out/bin/vesktop \
+      --add-flags $out/opt/Vesktop/resources/app.asar \
+      ${lib.optionalString withTTS "--add-flags \"--enable-speech-dispatcher\""} \
+      --add-flags "\''${NIXOS_OZONE_WL:+\''${WAYLAND_DISPLAY:+--ozone-platform-hint=auto --enable-features=WaylandWindowDecorations --enable-wayland-ime}}"
 
-      runHook postInstall
-    '';
+    runHook postInstall
+  '';
 
   desktopItems = [
     (makeDesktopItem {
@@ -152,8 +170,17 @@ stdenv.mkDerivation (finalAttrs: {
       icon = "vesktop";
       startupWMClass = "Vesktop";
       genericName = "Internet Messenger";
-      keywords = [ "discord" "vencord" "electron" "chat" ];
-      categories = [ "Network" "InstantMessaging" "Chat" ];
+      keywords = [
+        "discord"
+        "vencord"
+        "electron"
+        "chat"
+      ];
+      categories = [
+        "Network"
+        "InstantMessaging"
+        "Chat"
+      ];
     })
   ];
 
@@ -161,12 +188,21 @@ stdenv.mkDerivation (finalAttrs: {
     inherit (finalAttrs) pnpmDeps;
   };
 
-  meta = with lib; {
+  meta = {
     description = "An alternate client for Discord with Vencord built-in";
     homepage = "https://github.com/Vencord/Vesktop";
-    license = licenses.gpl3Only;
-    maintainers = with maintainers; [ getchoo Scrumplex vgskye pluiedev ];
-    platforms = [ "x86_64-linux" "aarch64-linux" ];
+    changelog = "https://github.com/Vencord/Vesktop/releases/tag/${finalAttrs.src.rev}";
+    license = lib.licenses.gpl3Only;
+    maintainers = with lib.maintainers; [
+      getchoo
+      Scrumplex
+      vgskye
+      pluiedev
+    ];
+    platforms = [
+      "x86_64-linux"
+      "aarch64-linux"
+    ];
     mainProgram = "vesktop";
   };
 })
diff --git a/pkgs/by-name/vi/vieb/package.nix b/pkgs/by-name/vi/vieb/package.nix
index f49cea3c13c7..707a0a0f5cbb 100644
--- a/pkgs/by-name/vi/vieb/package.nix
+++ b/pkgs/by-name/vi/vieb/package.nix
@@ -2,22 +2,23 @@
 
 buildNpmPackage rec {
   pname = "vieb";
-  version = "11.0.0";
+  version = "12.0.0";
 
   src = fetchFromGitHub {
     owner = "Jelmerro";
     repo = pname;
     rev = version;
-    hash = "sha256-OBOxT2leZYD3td1+PJdLv7Nph/gY6U9tVC7b/fUmUJw=";
+    hash = "sha256-/gMAGmTsaS9B0qHXHq2Z/77LgcAMKjF6Mt7OiJ9l4wU=";
   };
 
   postPatch = ''
     sed -i '/"electron"/d' package.json
   '';
 
-  npmDepsHash = "sha256-vgp20qVT4JZ7U24uu9ZPkveXchMNcdbljodALAMAu9s=";
+  npmDepsHash = "sha256-sGDygjb9+tIBHykMUb3UGZrCF8btkFVObTdyx4Y3Q2c=";
   makeCacheWritable = true;
   dontNpmBuild = true;
+  env.ELECTRON_SKIP_BINARY_DOWNLOAD = 1;
 
   nativeBuildInputs = [ makeWrapper ] ++ lib.optional stdenv.isAarch64 python3;
 
diff --git a/pkgs/by-name/vl/vlc/package.nix b/pkgs/by-name/vl/vlc/package.nix
index 9b89cca9a192..86406bdba034 100644
--- a/pkgs/by-name/vl/vlc/package.nix
+++ b/pkgs/by-name/vl/vlc/package.nix
@@ -77,7 +77,7 @@
 , unzip
 , wayland
 , wayland-protocols
-, wrapGAppsHook
+, wrapGAppsHook3
 , xcbutilkeysyms
 , zlib
 
@@ -112,7 +112,7 @@ stdenv.mkDerivation (finalAttrs: {
     pkg-config
     removeReferencesTo
     unzip
-    wrapGAppsHook
+    wrapGAppsHook3
   ]
   ++ optionals chromecastSupport [ protobuf ]
   ++ optionals withQt5 [ libsForQt5.wrapQtAppsHook ]
diff --git a/pkgs/by-name/vu/vunnel/package.nix b/pkgs/by-name/vu/vunnel/package.nix
index c6a5256fdf57..df8787c52b81 100644
--- a/pkgs/by-name/vu/vunnel/package.nix
+++ b/pkgs/by-name/vu/vunnel/package.nix
@@ -7,14 +7,14 @@
 
 python3.pkgs.buildPythonApplication rec {
   pname = "vunnel";
-  version = "0.22.0";
+  version = "0.23.0";
   pyproject = true;
 
   src = fetchFromGitHub {
     owner = "anchore";
     repo = "vunnel";
     rev = "refs/tags/v${version}";
-    hash = "sha256-+L1MUD9IKPnbh/yjRuF3aOszeMvkILuqHHWj949SrMo=";
+    hash = "sha256-pfR3LxC1sSvLKIwq0P/9DcNkGVIIDfwMiSOpwJ7km9Y=";
   };
 
   pythonRelaxDeps = [
diff --git a/pkgs/tools/misc/wakatime/default.nix b/pkgs/by-name/wa/wakatime/package.nix
index 2ce8df19867e..eb62951df210 100644
--- a/pkgs/tools/misc/wakatime/default.nix
+++ b/pkgs/by-name/wa/wakatime/package.nix
@@ -1,17 +1,23 @@
-{ lib, buildGoModule, fetchFromGitHub, testers, wakatime }:
-
-buildGoModule rec {
+{
+  lib,
+  buildGo122Module,
+  fetchFromGitHub,
+  testers,
+  wakatime,
+}:
+
+buildGo122Module rec {
   pname = "wakatime";
-  version = "1.73.0";
+  version = "1.90.0";
 
   src = fetchFromGitHub {
     owner = "wakatime";
     repo = "wakatime-cli";
     rev = "v${version}";
-    hash = "sha256-EUZgYRsQRqtp0yiqNYex+ILSZwGEdO4BhciEgUVdui4=";
+    hash = "sha256-A2YrDrXmMR4BJUOYuo3h3Pa5HqyYSoDr/qdH54INU3w=";
   };
 
-  vendorHash = "sha256-SlYYrlRDBvhNm2BxemK9HzzsqM/RGH/sDQXpoGEY8rw=";
+  vendorHash = "sha256-pejrUFcv9c4ZAE3Cuw7uytc1T2pr7SOZNJ/Wr8K+fas=";
 
   ldflags = [
     "-s"
@@ -19,7 +25,7 @@ buildGoModule rec {
     "-X github.com/wakatime/wakatime-cli/pkg/version.Version=${version}"
   ];
 
-  preCheck =
+  checkFlags =
     let
       skippedTests = [
         # Tests requiring network
@@ -28,15 +34,13 @@ buildGoModule rec {
         "TestSendHeartbeats_ExtraHeartbeats"
         "TestSendHeartbeats_IsUnsavedEntity"
         "TestSendHeartbeats_NonExistingExtraHeartbeatsEntity"
+        "TestFileExperts_Err(Auth|Api|BadRequest)"
 
         # Flaky tests
         "TestLoadParams_ApiKey_FromVault_Err_Darwin"
       ];
     in
-    ''
-      # Disable tests
-      buildFlagsArray+=("-run" "[^(${builtins.concatStringsSep "|" skippedTests})]")
-    '';
+    [ "-skip=^${builtins.concatStringsSep "$|^" skippedTests}$" ];
 
   passthru.tests.version = testers.testVersion {
     package = wakatime;
@@ -47,7 +51,7 @@ buildGoModule rec {
     homepage = "https://wakatime.com/";
     description = "WakaTime command line interface";
     license = licenses.bsd3;
-    maintainers = with maintainers; [ ];
+    maintainers = with maintainers; [ sigmanificient ];
     mainProgram = "wakatime-cli";
   };
 }
diff --git a/pkgs/tools/package-management/wapm/cli/default.nix b/pkgs/by-name/wa/wapm/package.nix
index bd345ca6940d..658aa93ce758 100644
--- a/pkgs/tools/package-management/wapm/cli/default.nix
+++ b/pkgs/by-name/wa/wapm/package.nix
@@ -4,9 +4,8 @@
 , libiconv
 , openssl
 , rustPlatform
-, Security
 , stdenv
-, SystemConfiguration
+, darwin
 }:
 
 rustPlatform.buildRustPackage rec {
@@ -25,7 +24,7 @@ rustPlatform.buildRustPackage rec {
   nativeBuildInputs = [ perl ];
 
   buildInputs = [ libiconv openssl ]
-    ++ lib.optionals stdenv.isDarwin [ Security SystemConfiguration ];
+    ++ lib.optionals stdenv.isDarwin (with darwin.apple_sdk.frameworks; [ Security SystemConfiguration ]);
 
   doCheck = false;
 
diff --git a/pkgs/by-name/wa/warp-terminal/package.nix b/pkgs/by-name/wa/warp-terminal/package.nix
index cd69dc6e37cf..573e08678199 100644
--- a/pkgs/by-name/wa/warp-terminal/package.nix
+++ b/pkgs/by-name/wa/warp-terminal/package.nix
@@ -99,7 +99,7 @@ meta = with lib; {
   homepage = "https://www.warp.dev";
   license = licenses.unfree;
   sourceProvenance = with lib.sourceTypes; [ binaryNativeCode ];
-  maintainers = with maintainers; [ emilytrau Enzime imadnyc ];
+  maintainers = with maintainers; [ emilytrau Enzime imadnyc donteatoreo ];
   platforms = platforms.darwin ++ [ "x86_64-linux" ];
 };
 
diff --git a/pkgs/by-name/wa/warp-terminal/versions.json b/pkgs/by-name/wa/warp-terminal/versions.json
index f0d9321a1f2f..28891c02ce2a 100644
--- a/pkgs/by-name/wa/warp-terminal/versions.json
+++ b/pkgs/by-name/wa/warp-terminal/versions.json
@@ -1,10 +1,10 @@
 {
   "darwin": {
-    "hash": "sha256-t8Qobl20YXY71vZVAIq6uJ+vnEeT3wFTmAy2dfthvIY=",
-    "version": "0.2024.04.16.08.02.stable_00"
+    "hash": "sha256-Ky5JyocpI9JKvhmmhk0Cg/Eo7icmo6FQAT639cGIGrA=",
+    "version": "0.2024.05.07.08.02.stable_02"
   },
   "linux": {
-    "hash": "sha256-V1bG4Sx0cWv1+5mPnktQ3pPQm6Qwj0Ec6qDXmxGqB+8=",
-    "version": "0.2024.04.16.08.02.stable_00"
+    "hash": "sha256-zUbWNgiupBoFWoN3I726FejGtGne9dctaiGlPBbj5KU=",
+    "version": "0.2024.05.07.08.02.stable_02"
   }
 }
diff --git a/pkgs/by-name/wa/waybar/package.nix b/pkgs/by-name/wa/waybar/package.nix
index a8bc66b73e12..cf8eb3b9b350 100644
--- a/pkgs/by-name/wa/waybar/package.nix
+++ b/pkgs/by-name/wa/waybar/package.nix
@@ -1,71 +1,71 @@
-{ lib
-, stdenv
-, bash
-, fetchFromGitHub
-, fetchFromGitLab
-, SDL2
-, alsa-lib
-, catch2_3
-, fftw
-, glib
-, gobject-introspection
-, gtk-layer-shell
-, gtkmm3
-, howard-hinnant-date
-, hyprland
-, iniparser
-, jsoncpp
-, libdbusmenu-gtk3
-, libevdev
-, libinotify-kqueue
-, libinput
-, libjack2
-, libmpdclient
-, libnl
-, libpulseaudio
-, libsigcxx
-, libxkbcommon
-, meson
-, ncurses
-, ninja
-, pipewire
-, pkg-config
-, playerctl
-, portaudio
-, python3
-, scdoc
-, sndio
-, spdlog
-, sway
-, udev
-, upower
-, wayland
-, wayland-scanner
-, wireplumber
-, wrapGAppsHook
+{
+  lib,
+  stdenv,
+  bash,
+  fetchFromGitHub,
+  SDL2,
+  alsa-lib,
+  catch2_3,
+  fftw,
+  glib,
+  gobject-introspection,
+  gtk-layer-shell,
+  gtkmm3,
+  howard-hinnant-date,
+  hyprland,
+  iniparser,
+  jsoncpp,
+  libdbusmenu-gtk3,
+  libevdev,
+  libinotify-kqueue,
+  libinput,
+  libjack2,
+  libmpdclient,
+  libnl,
+  libpulseaudio,
+  libsigcxx,
+  libxkbcommon,
+  meson,
+  ncurses,
+  ninja,
+  pipewire,
+  pkg-config,
+  playerctl,
+  portaudio,
+  python3,
+  scdoc,
+  sndio,
+  spdlog,
+  sway,
+  udev,
+  upower,
+  wayland,
+  wayland-scanner,
+  wireplumber,
+  wrapGAppsHook3,
 
-, cavaSupport ? true
-, enableManpages ? stdenv.buildPlatform.canExecute stdenv.hostPlatform
-, evdevSupport ? true
-, experimentalPatches ? true
-, hyprlandSupport ? true
-, inputSupport ? true
-, jackSupport ? true
-, mpdSupport ? true
-, mprisSupport ? stdenv.isLinux
-, nlSupport ? true
-, pipewireSupport ? true
-, pulseSupport ? true
-, rfkillSupport ? true
-, runTests ? stdenv.buildPlatform.canExecute stdenv.hostPlatform
-, sndioSupport ? true
-, swaySupport ? true
-, traySupport ? true
-, udevSupport ? true
-, upowerSupport ? true
-, wireplumberSupport ? true
-, withMediaPlayer ? mprisSupport && false
-, nix-update-script
+  cavaSupport ? true,
+  enableManpages ? stdenv.buildPlatform.canExecute stdenv.hostPlatform,
+  evdevSupport ? true,
+  experimentalPatches ? true,
+  hyprlandSupport ? true,
+  inputSupport ? true,
+  jackSupport ? true,
+  mpdSupport ? true,
+  mprisSupport ? stdenv.isLinux,
+  nlSupport ? true,
+  pipewireSupport ? true,
+  pulseSupport ? true,
+  rfkillSupport ? true,
+  runTests ? stdenv.buildPlatform.canExecute stdenv.hostPlatform,
+  sndioSupport ? true,
+  swaySupport ? true,
+  traySupport ? true,
+  udevSupport ? true,
+  upowerSupport ? true,
+  wireplumberSupport ? true,
+  withMediaPlayer ? mprisSupport && false,
+  nix-update-script,
 }:
 
 let
@@ -79,13 +79,13 @@ let
 in
 stdenv.mkDerivation (finalAttrs: {
   pname = "waybar";
-  version = "0.10.2";
+  version = "0.10.3";
 
   src = fetchFromGitHub {
     owner = "Alexays";
     repo = "Waybar";
     rev = finalAttrs.version;
-    hash = "sha256-xinTLjZJhL4048jpAbN3i6nSxKAqnbesbK/GBX+1CkE=";
+    hash = "sha256-LUageV0xC42MldMmYY1njkm95icBsqID1tEGy3wwrRM=";
   };
 
   postUnpack = lib.optional cavaSupport ''
@@ -100,9 +100,8 @@ stdenv.mkDerivation (finalAttrs: {
     ninja
     pkg-config
     wayland-scanner
-    wrapGAppsHook
-  ] ++ lib.optional withMediaPlayer gobject-introspection
-    ++ lib.optional enableManpages scdoc;
+    wrapGAppsHook3
+  ] ++ lib.optional withMediaPlayer gobject-introspection ++ lib.optional enableManpages scdoc;
 
   propagatedBuildInputs = lib.optionals withMediaPlayer [
     glib
@@ -110,63 +109,66 @@ stdenv.mkDerivation (finalAttrs: {
     python3.pkgs.pygobject3
   ];
 
-  buildInputs = [
-    gtk-layer-shell
-    gtkmm3
-    howard-hinnant-date
-    jsoncpp
-    libsigcxx
-    libxkbcommon
-    spdlog
-    wayland
-  ]
-  ++ lib.optionals cavaSupport [
-    SDL2
-    alsa-lib
-    fftw
-    iniparser
-    ncurses
-    portaudio
-  ]
-  ++ lib.optional evdevSupport libevdev
-  ++ lib.optional hyprlandSupport hyprland
-  ++ lib.optional inputSupport libinput
-  ++ lib.optional jackSupport libjack2
-  ++ lib.optional mpdSupport libmpdclient
-  ++ lib.optional mprisSupport playerctl
-  ++ lib.optional nlSupport libnl
-  ++ lib.optional pulseSupport libpulseaudio
-  ++ lib.optional sndioSupport sndio
-  ++ lib.optional swaySupport sway
-  ++ lib.optional traySupport libdbusmenu-gtk3
-  ++ lib.optional udevSupport udev
-  ++ lib.optional upowerSupport upower
-  ++ lib.optional wireplumberSupport wireplumber
-  ++ lib.optional (cavaSupport || pipewireSupport) pipewire
-  ++ lib.optional (!stdenv.isLinux) libinotify-kqueue;
+  buildInputs =
+    [
+      gtk-layer-shell
+      gtkmm3
+      howard-hinnant-date
+      jsoncpp
+      libsigcxx
+      libxkbcommon
+      spdlog
+      wayland
+    ]
+    ++ lib.optionals cavaSupport [
+      SDL2
+      alsa-lib
+      fftw
+      iniparser
+      ncurses
+      portaudio
+    ]
+    ++ lib.optional evdevSupport libevdev
+    ++ lib.optional hyprlandSupport hyprland
+    ++ lib.optional inputSupport libinput
+    ++ lib.optional jackSupport libjack2
+    ++ lib.optional mpdSupport libmpdclient
+    ++ lib.optional mprisSupport playerctl
+    ++ lib.optional nlSupport libnl
+    ++ lib.optional pulseSupport libpulseaudio
+    ++ lib.optional sndioSupport sndio
+    ++ lib.optional swaySupport sway
+    ++ lib.optional traySupport libdbusmenu-gtk3
+    ++ lib.optional udevSupport udev
+    ++ lib.optional upowerSupport upower
+    ++ lib.optional wireplumberSupport wireplumber
+    ++ lib.optional (cavaSupport || pipewireSupport) pipewire
+    ++ lib.optional (!stdenv.isLinux) libinotify-kqueue;
 
   nativeCheckInputs = [ catch2_3 ];
   doCheck = runTests;
 
-  mesonFlags = (lib.mapAttrsToList lib.mesonEnable {
-    "cava" = cavaSupport;
-    "dbusmenu-gtk" = traySupport;
-    "jack" = jackSupport;
-    "libinput" = inputSupport;
-    "libnl" = nlSupport;
-    "libudev" = udevSupport;
-    "man-pages" = enableManpages;
-    "mpd" = mpdSupport;
-    "mpris" = mprisSupport;
-    "pipewire" = pipewireSupport;
-    "pulseaudio" = pulseSupport;
-    "rfkill" = rfkillSupport;
-    "sndio" = sndioSupport;
-    "systemd" = false;
-    "tests" = runTests;
-    "upower_glib" = upowerSupport;
-    "wireplumber" = wireplumberSupport;
-  }) ++ lib.optional experimentalPatches (lib.mesonBool "experimental" true);
+  mesonFlags =
+    (lib.mapAttrsToList lib.mesonEnable {
+      "cava" = cavaSupport;
+      "dbusmenu-gtk" = traySupport;
+      "jack" = jackSupport;
+      "libinput" = inputSupport;
+      "libnl" = nlSupport;
+      "libudev" = udevSupport;
+      "man-pages" = enableManpages;
+      "mpd" = mpdSupport;
+      "mpris" = mprisSupport;
+      "pipewire" = pipewireSupport;
+      "pulseaudio" = pulseSupport;
+      "rfkill" = rfkillSupport;
+      "sndio" = sndioSupport;
+      "systemd" = false;
+      "tests" = runTests;
+      "upower_glib" = upowerSupport;
+      "wireplumber" = wireplumberSupport;
+    })
+    ++ lib.optional experimentalPatches (lib.mesonBool "experimental" true);
 
   postPatch = ''
     substituteInPlace include/util/command.hpp \
diff --git a/pkgs/by-name/wa/waycheck/package.nix b/pkgs/by-name/wa/waycheck/package.nix
index 953ed3c8443b..73eb3146664e 100644
--- a/pkgs/by-name/wa/waycheck/package.nix
+++ b/pkgs/by-name/wa/waycheck/package.nix
@@ -7,7 +7,7 @@
 , qt6
 , wayland
 , glib
-, wrapGAppsHook
+, wrapGAppsHook3
 }:
 
 stdenv.mkDerivation (finalAttrs: {
@@ -26,7 +26,7 @@ stdenv.mkDerivation (finalAttrs: {
     meson
     ninja
     pkg-config
-    wrapGAppsHook
+    wrapGAppsHook3
     qt6.wrapQtAppsHook
   ];
 
diff --git a/pkgs/applications/misc/wbg/default.nix b/pkgs/by-name/wb/wbg/package.nix
index 4501f2c3ffeb..b971bce46d69 100644
--- a/pkgs/applications/misc/wbg/default.nix
+++ b/pkgs/by-name/wb/wbg/package.nix
@@ -20,14 +20,14 @@
 
 stdenv.mkDerivation rec {
   pname = "wbg";
-  version = "1.1.0";
+  version = "1.2.0";
 
   src = fetchFromGitea {
     domain = "codeberg.org";
     owner = "dnkl";
     repo = "wbg";
     rev = version;
-    sha256 = "sha256-JJIIqSc0qHgjtpGKai8p6vihXg16unsO7vW91pioAmc=";
+    sha256 = "sha256-zd5OWC0r/75IaeKy5xjV+pQefRy48IcFTxx93iy0a0Q=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/by-name/we/weasis/package.nix b/pkgs/by-name/we/weasis/package.nix
index 0637fea1c58f..ae500efec3fd 100644
--- a/pkgs/by-name/we/weasis/package.nix
+++ b/pkgs/by-name/we/weasis/package.nix
@@ -14,12 +14,12 @@ let
 
 in stdenv.mkDerivation rec {
   pname = "weasis";
-  version = "4.3.0";
+  version = "4.4.0";
 
   # Their build instructions indicate to use the packaging script
   src = fetchzip {
     url = "https://github.com/nroduit/Weasis/releases/download/v${version}/weasis-native.zip";
-    hash = "sha256-4Ew7RG8eM8pa6AiblREgt03fGOQVKVzkQMR87GIJIVM=";
+    hash = "sha256-+Bi9rTuM9osKzbKVA4exqsFm8p9+1OHgJqRSNnCC6QQ=";
     stripRoot = false;
   };
 
diff --git a/pkgs/applications/networking/instant-messengers/webcord/webcord-vencord/add-extension.patch b/pkgs/by-name/we/webcord-vencord/add-extension.patch
index 888dad1eee11..888dad1eee11 100644
--- a/pkgs/applications/networking/instant-messengers/webcord/webcord-vencord/add-extension.patch
+++ b/pkgs/by-name/we/webcord-vencord/add-extension.patch
diff --git a/pkgs/applications/networking/instant-messengers/webcord/webcord-vencord/default.nix b/pkgs/by-name/we/webcord-vencord/package.nix
index 47e067345547..352e372d00ad 100644
--- a/pkgs/applications/networking/instant-messengers/webcord/webcord-vencord/default.nix
+++ b/pkgs/by-name/we/webcord-vencord/package.nix
@@ -1,9 +1,11 @@
-{ webcord
-, substituteAll
-, lib
-, vencord-web-extension
+{
+  webcord,
+  substituteAll,
+  lib,
+  vencord-web-extension,
 }:
 
+# nixpkgs-update: no auto update
 webcord.overrideAttrs (old: {
   pname = "webcord-vencord";
 
@@ -14,8 +16,13 @@ webcord.overrideAttrs (old: {
     })
   ];
 
-  meta = with lib; old.meta // {
+  meta = {
+    inherit (old.meta) license mainProgram platforms;
+
     description = "Webcord with Vencord web extension";
-    maintainers = with maintainers; [ FlafyDev NotAShelf ];
+    maintainers = with lib.maintainers; [
+      FlafyDev
+      NotAShelf
+    ];
   };
 })
diff --git a/pkgs/applications/networking/instant-messengers/webcord/default.nix b/pkgs/by-name/we/webcord/package.nix
index aebe2998bd27..f3fb33f5dcc4 100644
--- a/pkgs/applications/networking/instant-messengers/webcord/default.nix
+++ b/pkgs/by-name/we/webcord/package.nix
@@ -1,26 +1,26 @@
-{ lib
-, buildNpmPackage
-, fetchFromGitHub
-, copyDesktopItems
-, python3
-, xdg-utils
-, electron_29
-, makeDesktopItem
-, nix-update-script
+{
+  lib,
+  buildNpmPackage,
+  fetchFromGitHub,
+  copyDesktopItems,
+  python3,
+  xdg-utils,
+  electron,
+  makeDesktopItem,
 }:
 
 buildNpmPackage rec {
   pname = "webcord";
-  version = "4.8.0";
+  version = "4.9.1";
 
   src = fetchFromGitHub {
     owner = "SpacingBat3";
     repo = "WebCord";
-    rev = "v${version}";
-    hash = "sha256-x9Ejb8yxgQhlEfUUfoqbgSffNNtOoFeAyb3OISR+Jz4=";
+    rev = "refs/tags/v${version}";
+    hash = "sha256-sYTMfqZokwJ3CFtArkUckCpQlnyJ1BVpewU92sNaKC8=";
   };
 
-  npmDepsHash = "sha256-7H4I4vKygMgsPh+OvZZGhpkoQQu1a51yUTwEPJSBM18=";
+  npmDepsHash = "sha256-LxOqpUVl2hXZrfTQfMz1+fVGRuNwG6dX03fGQVYmqq0=";
 
   nativeBuildInputs = [
     copyDesktopItems
@@ -41,25 +41,25 @@ buildNpmPackage rec {
     let
       binPath = lib.makeBinPath [ xdg-utils ];
     in
-  ''
-    runHook preInstall
+    ''
+      runHook preInstall
 
-    # Remove dev deps that aren't necessary for running the app
-    npm prune --omit=dev
+      # Remove dev deps that aren't necessary for running the app
+      npm prune --omit=dev
 
-    mkdir -p $out/lib/node_modules/webcord
-    cp -r app node_modules sources package.json $out/lib/node_modules/webcord/
+      mkdir -p $out/lib/node_modules/webcord
+      cp -r app node_modules sources package.json $out/lib/node_modules/webcord/
 
-    install -Dm644 sources/assets/icons/app.png $out/share/icons/hicolor/256x256/apps/webcord.png
+      install -Dm644 sources/assets/icons/app.png $out/share/icons/hicolor/256x256/apps/webcord.png
 
-    # Add xdg-utils to path via suffix, per PR #181171
-    makeWrapper '${lib.getExe electron_29}' $out/bin/webcord \
-      --suffix PATH : "${binPath}" \
-      --add-flags "\''${NIXOS_OZONE_WL:+\''${WAYLAND_DISPLAY:+--ozone-platform-hint=auto --enable-features=WaylandWindowDecorations}}" \
-      --add-flags $out/lib/node_modules/webcord/
+      # Add xdg-utils to path via suffix, per PR #181171
+      makeWrapper '${lib.getExe electron}' $out/bin/webcord \
+        --suffix PATH : "${binPath}" \
+        --add-flags "\''${NIXOS_OZONE_WL:+\''${WAYLAND_DISPLAY:+--ozone-platform-hint=auto --enable-features=WaylandWindowDecorations}}" \
+        --add-flags $out/lib/node_modules/webcord/
 
-    runHook postInstall
-  '';
+      runHook postInstall
+    '';
 
   desktopItems = [
     (makeDesktopItem {
@@ -68,11 +68,14 @@ buildNpmPackage rec {
       icon = "webcord";
       desktopName = "WebCord";
       comment = meta.description;
-      categories = [ "Network" "InstantMessaging" ];
+      categories = [
+        "Network"
+        "InstantMessaging"
+      ];
     })
   ];
 
-  passthru.updateScript = nix-update-script { };
+  passthru.updateScript = ./update.sh;
 
   meta = {
     description = "A Discord and SpaceBar electron-based client implemented without Discord API";
@@ -81,7 +84,10 @@ buildNpmPackage rec {
     changelog = "https://github.com/SpacingBat3/WebCord/releases/tag/v${version}";
     license = lib.licenses.mit;
     mainProgram = "webcord";
-    maintainers = with lib.maintainers; [ eclairevoyant huantian ];
+    maintainers = with lib.maintainers; [
+      eclairevoyant
+      huantian
+    ];
     platforms = lib.platforms.linux;
   };
 }
diff --git a/pkgs/by-name/we/webcord/update.sh b/pkgs/by-name/we/webcord/update.sh
new file mode 100755
index 000000000000..ea79effc869a
--- /dev/null
+++ b/pkgs/by-name/we/webcord/update.sh
@@ -0,0 +1,15 @@
+#! /usr/bin/env nix-shell
+#! nix-shell -i bash -p curl jq nix-update
+
+set -ex
+
+curl_github() {
+    curl -L ${GITHUB_TOKEN:+" -u \":$GITHUB_TOKEN\""} "$@"
+}
+
+latestTag=$(curl_github https://api.github.com/repos/SpacingBat3/Webcord/releases/latest | jq -r ".tag_name")
+latestVersion="$(expr "$latestTag" : 'v\(.*\)')"
+
+nix-update --version "$latestVersion" webcord
+electronVersion=$(curl_github "https://raw.githubusercontent.com/SpacingBat3/WebCord/v$latestVersion/package.json" | jq -r ".devDependencies.electron" | sed -r 's|^\^([0-9]+).*|\1|')
+sed -r "/webcord = / s|(electron_)[0-9]+|\1$electronVersion|" -i pkgs/top-level/all-packages.nix
diff --git a/pkgs/by-name/wh/whatsapp-emoji-font/package.nix b/pkgs/by-name/wh/whatsapp-emoji-font/package.nix
index cb10bfe4d2eb..bf70c0271c93 100644
--- a/pkgs/by-name/wh/whatsapp-emoji-font/package.nix
+++ b/pkgs/by-name/wh/whatsapp-emoji-font/package.nix
@@ -11,13 +11,13 @@
 
 stdenvNoCC.mkDerivation rec {
   pname = "whatsapp-emoji-linux";
-  version = "2.24.2.76-1";
+  version = "2.24.8.85-1";
 
   src = fetchFromGitHub {
     rev = "refs/tags/${version}";
     owner = "dmlls";
     repo = "whatsapp-emoji-linux";
-    hash = "sha256-BviYvhH/iu5N0+YtL4d6andbWL87LFU98pxUgt4NcsM=";
+    hash = "sha256-6bei+kR+5UF4GQ140sUXy8TDXZKNFmM+XgvMKf+8s2Y=";
   };
 
   makeFlags = [
diff --git a/pkgs/by-name/wi/windows10-icons/package.nix b/pkgs/by-name/wi/windows10-icons/package.nix
new file mode 100644
index 000000000000..8609aa7508af
--- /dev/null
+++ b/pkgs/by-name/wi/windows10-icons/package.nix
@@ -0,0 +1,36 @@
+{ lib, stdenvNoCC, fetchFromGitHub }:
+
+stdenvNoCC.mkDerivation (finalAttrs: {
+  pname = "windows10-icons";
+  version = "1.0";
+
+  src = fetchFromGitHub {
+    owner = "B00merang-Artwork";
+    repo = "Windows-10";
+    rev = "${finalAttrs.version}";
+    hash = "sha256-Yz6a7FcgPfzz4w8cKp8oq7/usIBUUZV7qhVmDewmzrI=";
+  };
+
+  installPhase = ''
+    runHook preInstall
+
+    mkdir -p $out/share/icons/windows10
+    find . \
+      ! -path ./README.md \
+      -mindepth 1 -maxdepth 1 \
+      -exec cp -r {} $out/share/icons/windows10 \;
+
+    runHook postInstall
+  '';
+
+  dontConfigure = true;
+  dontBuild = true;
+
+  meta = with lib; {
+    description = "Windows 10 icon theme";
+    homepage = "http://b00merang.weebly.com/windows-10.html";
+    license = licenses.unfree;
+    maintainers = with maintainers; [ mib ];
+    platforms = platforms.linux;
+  };
+})
diff --git a/pkgs/by-name/wi/wio/package.nix b/pkgs/by-name/wi/wio/package.nix
index 5a39e30ea3be..5982f80cef36 100644
--- a/pkgs/by-name/wi/wio/package.nix
+++ b/pkgs/by-name/wi/wio/package.nix
@@ -20,13 +20,13 @@
 
 stdenv.mkDerivation (finalAttrs: {
   pname = "wio";
-  version = "unstable-2024-03-23";
+  version = "0.17.3-unstable-2024-04-30";
 
   src = fetchFromGitHub {
     owner = "Rubo3";
     repo = "wio";
-    rev = "a68fbaf0011610d55db0413ebb7aca6ff79a8dc3";
-    hash = "sha256-iQulldgYuz++ank2rOL92Ydj6IOiBtNEVEEcVOlhkMk=";
+    rev = "9d459df379efdcf20ea10906c48c79c506c32066";
+    hash = "sha256-Bn7mCVQPH/kH2WRsGPPGIGgvk0r894zZHCHl6BVmWVg=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/by-name/wi/wireguard-vanity-keygen/package.nix b/pkgs/by-name/wi/wireguard-vanity-keygen/package.nix
index 9f910079eef1..a38699cf0ddc 100644
--- a/pkgs/by-name/wi/wireguard-vanity-keygen/package.nix
+++ b/pkgs/by-name/wi/wireguard-vanity-keygen/package.nix
@@ -5,16 +5,16 @@
 
 buildGoModule rec {
   pname = "wireguard-vanity-keygen";
-  version = "0.0.8";
+  version = "0.0.9";
 
   src = fetchFromGitHub {
     owner = "axllent";
     repo = "wireguard-vanity-keygen";
     rev = version;
-    hash = "sha256-qTVPPr7lmjMvUqetDupZCo8RdoBHr++0V9CB4b6Bp4Y=";
+    hash = "sha256-K5lJSDRBf3NCs6v+HmjYJiHjfKt/6djvM847/C4qfeI=";
   };
 
-  vendorHash = "sha256-9/waDAfHYgKh+FsGZEp7HbgI83urRDQPuvtuEKHOf58=";
+  vendorHash = "sha256-kAPw5M9o99NijCC9BzYhIpzHK/8fSAJxvckaj8iRby0=";
 
   ldflags = [ "-s" "-w" "-X main.appVersion=${version}" ];
 
diff --git a/pkgs/development/tools/wizer/default.nix b/pkgs/by-name/wi/wizer/package.nix
index 7a46d673af9c..7a46d673af9c 100644
--- a/pkgs/development/tools/wizer/default.nix
+++ b/pkgs/by-name/wi/wizer/package.nix
diff --git a/pkgs/by-name/wl/wl-clip-persist/package.nix b/pkgs/by-name/wl/wl-clip-persist/package.nix
index fbce56b3e4eb..3b31f14f8c20 100644
--- a/pkgs/by-name/wl/wl-clip-persist/package.nix
+++ b/pkgs/by-name/wl/wl-clip-persist/package.nix
@@ -9,16 +9,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "wl-clip-persist";
-  version = "0.4.1";
+  version = "0.4.3";
 
   src = fetchFromGitHub {
     owner = "Linus789";
     repo = "wl-clip-persist";
     rev = "v${version}";
-    hash = "sha256-gUi4Htui7IwldeK30C7SGTNc+0VHuzDZfJdaL8FmkGs=";
+    hash = "sha256-dFhHsBazBHVWgPxoRDNwh8Yctt4w64E0RyFaHEC4mvk=";
   };
 
-  cargoHash = "sha256-Kt/XTcwclZENtw4vw2BntndqxvojEizCc2Oa0w+c1D0=";
+  cargoHash = "sha256-rhXVjXhRPCjt7ur7fQviGFXVtQneuFKWZcDNkhM9tkY=";
 
   nativeBuildInputs = [ pkg-config ];
 
diff --git a/pkgs/by-name/wl/wlr-layout-ui/package.nix b/pkgs/by-name/wl/wlr-layout-ui/package.nix
index f115bf12159b..efa72ee133d9 100644
--- a/pkgs/by-name/wl/wlr-layout-ui/package.nix
+++ b/pkgs/by-name/wl/wlr-layout-ui/package.nix
@@ -5,14 +5,14 @@
 
 python3.pkgs.buildPythonApplication rec {
   pname = "wlr-layout-ui";
-  version = "1.4.7";
+  version = "1.6.10";
   pyproject = true;
 
   src = fetchFromGitHub {
     owner = "fdev31";
     repo = "wlr-layout-ui";
-    rev = "${version}";
-    hash = "sha256-3NV02/Lk43h3r17jwmSAqx7wofaHFJKDh+vaWwU17Gw=";
+    rev = "refs/tags/${version}";
+    hash = "sha256-UM1p5b5+xJY6BgPUMXjluIC9zQxe388+gBWTbNQPWYQ=";
   };
 
   postPatch = ''
diff --git a/pkgs/by-name/wo/workout-tracker/package.nix b/pkgs/by-name/wo/workout-tracker/package.nix
index d22ebbe3aba6..ab15fced522c 100644
--- a/pkgs/by-name/wo/workout-tracker/package.nix
+++ b/pkgs/by-name/wo/workout-tracker/package.nix
@@ -8,13 +8,13 @@
 
 buildGoModule rec {
   pname = "workout-tracker";
-  version = "0.14.2";
+  version = "0.14.3";
 
   src = fetchFromGitHub {
     owner = "jovandeginste";
     repo = "workout-tracker";
     rev = "refs/tags/v${version}";
-    hash = "sha256-hQPBptpsxksfILZXXAVIcFf+W7Eea3pcgnndHY4mO9c=";
+    hash = "sha256-NGj3W6SYZauaAhMinPzsSXM8Dqy+B+am985JJjh6xTs=";
   };
 
   vendorHash = null;
diff --git a/pkgs/by-name/wo/workshop-runner/package.nix b/pkgs/by-name/wo/workshop-runner/package.nix
new file mode 100644
index 000000000000..ff325cee7054
--- /dev/null
+++ b/pkgs/by-name/wo/workshop-runner/package.nix
@@ -0,0 +1,31 @@
+{
+  lib,
+  fetchFromGitHub,
+  rustPlatform,
+}:
+
+rustPlatform.buildRustPackage rec {
+  pname = "workshop-runner";
+  version = "0.1.5";
+
+  src = fetchFromGitHub {
+    owner = "mainmatter";
+    repo = "rust-workshop-runner";
+    rev = "v${version}";
+    hash = "sha256-2lt4RloIRnFvWZ+HeZx7M2cg/wHb1/j0qDmhUhOoF+M=";
+  };
+
+  cargoHash = "sha256-VoIAwPrkhrRl48czXtKWmLTktsZ/U4TVV924wx0DL+A=";
+
+  meta = {
+    description = "A CLI tool to drive test-driven Rust workshops";
+    homepage = "https://github.com/mainmatter/rust-workshop-runner";
+    license = with lib.licenses; [
+      mit
+      asl20
+    ];
+    platforms = lib.platforms.unix;
+    maintainers = with lib.maintainers; [ RaghavSood ];
+    mainProgram = "wr";
+  };
+}
diff --git a/pkgs/by-name/wo/wowup-cf/package.nix b/pkgs/by-name/wo/wowup-cf/package.nix
new file mode 100644
index 000000000000..a9243ef3adb5
--- /dev/null
+++ b/pkgs/by-name/wo/wowup-cf/package.nix
@@ -0,0 +1,38 @@
+{ lib, appimageTools, fetchurl }:
+
+let
+  version = "2.12.0";
+  pname = "wowup-cf";
+  name = "${pname}-${version}";
+
+  src = fetchurl {
+    url = "https://github.com/WowUp/WowUp.CF/releases/download/v${version}/WowUp-CF-${version}.AppImage";
+    hash = "sha256-uWz/EQBX/d1UBfpc9EL4x+UH72kINd6pqFIvJkV16e8=";
+  };
+
+  appimageContents = appimageTools.extractType1 { inherit name src; };
+in appimageTools.wrapType1 {
+  inherit name src;
+
+  extraInstallCommands = ''
+    mv $out/bin/${name} $out/bin/${pname}
+    install -m 444 -D ${appimageContents}/${pname}.desktop -t $out/share/applications
+    substituteInPlace $out/share/applications/${pname}.desktop \
+      --replace 'Exec=AppRun' 'Exec=${pname}'
+    cp -r ${appimageContents}/usr/share/icons $out/share
+  '';
+
+  meta = with lib; {
+    description = "World of Warcraft addon updater with CurseForge support";
+    longDescription = ''
+    WowUp is the community centered World of Warcraft addon updater. We attempt to bring the addon community together in an easy to use updater application. We have an ever growing list of supported features.
+    '';
+    mainProgram = "wowup-cf";
+    homepage = "https://wowup.io/";
+    downloadPage = "https://github.com/WowUp/WowUp.CF/releases";
+    license = licenses.unfree;
+    sourceProvenance = with sourceTypes; [ binaryNativeCode ];
+    maintainers = with maintainers; [ pbek ];
+    platforms = [ "x86_64-linux" ];
+  };
+}
diff --git a/pkgs/tools/wayland/wpaperd/default.nix b/pkgs/by-name/wp/wpaperd/package.nix
index dc7ce198e8e7..f059b22640a7 100644
--- a/pkgs/tools/wayland/wpaperd/default.nix
+++ b/pkgs/by-name/wp/wpaperd/package.nix
@@ -1,35 +1,27 @@
-{ lib, rustPlatform, fetchFromGitHub, pkg-config, libxkbcommon }:
+{ lib, rustPlatform, fetchFromGitHub, pkg-config, libxkbcommon, wayland, libGL }:
 
 rustPlatform.buildRustPackage rec {
   pname = "wpaperd";
-  version = "0.3.0";
+  version = "1.0.1";
 
   src = fetchFromGitHub {
     owner = "danyspin97";
-    repo = pname;
+    repo = "wpaperd";
     rev = version;
-    sha256 = "cgjHCSBrkX3aoz42qBS/1JUGhc7sZKarKByntp7ubaQ=";
+    hash = "sha256-5riZ/6yjgsW++SUIyJP5rFG65tkjJKgtvDLIGaoiHN0=";
   };
 
+  cargoHash = "sha256-EkCGLxUQeSCR88Y95Hog9TAjpYMmZHlOqEM//ENiCco=";
+
   nativeBuildInputs = [
     pkg-config
   ];
   buildInputs = [
+    wayland
+    libGL
     libxkbcommon
   ];
 
-  cargoLock = {
-    lockFile = ./Cargo.lock;
-    outputHashes = {
-      "smithay-client-toolkit-0.16.0" = "iPDL7pxTez4EnIBaUH25lLSWpu3RRL2QBF9pfdTDsP8=";
-    };
-  };
-
-  postPatch = ''
-    rm Cargo.lock
-    ln -s ${./Cargo.lock} Cargo.lock
-  '';
-
   meta = with lib; {
     description = "Minimal wallpaper daemon for Wayland";
     longDescription = ''
@@ -41,7 +33,7 @@ rustPlatform.buildRustPackage rec {
     homepage = "https://github.com/danyspin97/wpaperd";
     license = licenses.gpl3Plus;
     platforms = platforms.linux;
-    maintainers = with maintainers; [ DPDmancul ];
+    maintainers = with maintainers; [ DPDmancul nu-nu-ko ];
     mainProgram = "wpaperd";
   };
 }
diff --git a/pkgs/by-name/wt/wtfis/package.nix b/pkgs/by-name/wt/wtfis/package.nix
index 886d7de4baa9..4163a31ac988 100644
--- a/pkgs/by-name/wt/wtfis/package.nix
+++ b/pkgs/by-name/wt/wtfis/package.nix
@@ -5,12 +5,12 @@
 
 let
   pname = "wtfis";
-  version = "0.9.0";
+  version = "0.9.1";
   src = fetchFromGitHub {
     owner = "pirxthepilot";
     repo = "wtfis";
     rev = "refs/tags/v${version}";
-    hash = "sha256-LeIb2MLxulDsgQepNr7I81u8gG4HQC6PsszKZKVjFkw=";
+    hash = "sha256-nVcF7mPoWL5PNLh0W4FBPE7WVU72FidHpBZqMNl+Fd4=";
   };
 in python3.pkgs.buildPythonApplication {
   inherit pname version src;
diff --git a/pkgs/by-name/wt/wttrbar/package.nix b/pkgs/by-name/wt/wttrbar/package.nix
index 6cba42d0c158..0d3fce04d1c1 100644
--- a/pkgs/by-name/wt/wttrbar/package.nix
+++ b/pkgs/by-name/wt/wttrbar/package.nix
@@ -8,18 +8,18 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "wttrbar";
-  version = "0.9.4";
+  version = "0.10.1";
 
   src = fetchFromGitHub {
     owner = "bjesus";
     repo = "wttrbar";
     rev = version;
-    hash = "sha256-kRrVqUfkrSK/9z3Hj4J+mKcdV7JdTzjhxlVRa/kf8sw=";
+    hash = "sha256-rUiLB0M/dzNxzBPAqlGy5m/gOTGYw4GRzb+ud0l/1+8=";
   };
 
   buildInputs = lib.optionals stdenv.isDarwin (with darwin.apple_sdk_11_0.frameworks; [ Security SystemConfiguration ]);
 
-  cargoHash = "sha256-HxSyGME95FWR5VwodmrMUX0jPlfE9SJV0WBbICuuTok=";
+  cargoHash = "sha256-v415OJ6dmWSLUDeFUtd27mBaQlB3x1vC37sjpMhKyYY=";
 
   passthru.updateScript = nix-update-script { };
 
diff --git a/pkgs/by-name/xa/xarcan/package.nix b/pkgs/by-name/xa/xarcan/package.nix
index 2f10a984aa37..d2c06e36038a 100644
--- a/pkgs/by-name/xa/xarcan/package.nix
+++ b/pkgs/by-name/xa/xarcan/package.nix
@@ -1,7 +1,6 @@
 { lib
 , stdenv
 , fetchFromGitHub
-, fetchpatch
 , arcan
 , audit
 , dbus
@@ -30,21 +29,23 @@
 , systemd
 , xcbutil
 , xcbutilwm
+, xcbutilimage
 , xkbcomp
 , xkeyboard_config
 , xorgproto
 , xtrans
+, unstableGitUpdater
 }:
 
 stdenv.mkDerivation (finalPackages: {
   pname = "xarcan";
-  version = "unstable-2023-11-03";
+  version = "0-unstable-2024-05-11";
 
   src = fetchFromGitHub {
     owner = "letoram";
     repo = "xarcan";
-    rev = "380ea856307f593535dfc8b23799938db69e31b0";
-    hash = "sha256-RdizezCbJylQDkOmUdqL0lBTNLsjyvo+lKAjfZXTXf4=";
+    rev = "ecc4d0a6408dfeb19934e3bfd4c382b0862c03b4";
+    hash = "sha256-PmaoeemQpin5NN8I6JYOumP+PrzkyTYrqAyxxwBO9K0=";
   };
 
   nativeBuildInputs = [
@@ -79,6 +80,7 @@ stdenv.mkDerivation (finalPackages: {
     systemd
     xcbutil
     xcbutilwm
+    xcbutilimage
     xkbcomp
     xkeyboard_config
     xorgproto
@@ -104,6 +106,8 @@ stdenv.mkDerivation (finalPackages: {
     "--with-xkb-path=${xkeyboard_config}/share/X11/xkb"
   ];
 
+  passthru.updateScript = unstableGitUpdater {};
+
   meta =  {
     homepage = "https://github.com/letoram/letoram";
     description = "Patched Xserver that bridges connections to Arcan";
diff --git a/pkgs/servers/caddy/xcaddy/inject_version_info.diff b/pkgs/by-name/xc/xcaddy/inject_version_info.diff
index 4d87aa687878..4d87aa687878 100644
--- a/pkgs/servers/caddy/xcaddy/inject_version_info.diff
+++ b/pkgs/by-name/xc/xcaddy/inject_version_info.diff
diff --git a/pkgs/servers/caddy/xcaddy/default.nix b/pkgs/by-name/xc/xcaddy/package.nix
index c90ef853b065..69a531c70767 100644
--- a/pkgs/servers/caddy/xcaddy/default.nix
+++ b/pkgs/by-name/xc/xcaddy/package.nix
@@ -2,7 +2,7 @@
 
 buildGoModule rec {
   pname = "xcaddy";
-  version = "0.4.0";
+  version = "0.4.1";
 
   subPackages = [ "cmd/xcaddy" ];
 
@@ -10,7 +10,7 @@ buildGoModule rec {
     owner = "caddyserver";
     repo = pname;
     rev = "v${version}";
-    hash = "sha256-wzX6+O7hN8x3DDkTdNMBuWTCY8dp1gGrF2TW1d07PEc=";
+    hash = "sha256-xEPSRKrQC9hb+G9/rV9/k4btvZxXZkcsxmaxWcgl2fk=";
   };
 
   patches = [
diff --git a/pkgs/servers/caddy/xcaddy/use_tmpdir_on_darwin.diff b/pkgs/by-name/xc/xcaddy/use_tmpdir_on_darwin.diff
index 064d8feb5a05..064d8feb5a05 100644
--- a/pkgs/servers/caddy/xcaddy/use_tmpdir_on_darwin.diff
+++ b/pkgs/by-name/xc/xcaddy/use_tmpdir_on_darwin.diff
diff --git a/pkgs/by-name/xc/xclicker/package.nix b/pkgs/by-name/xc/xclicker/package.nix
index 5c2e178464f5..e61c86c2b320 100644
--- a/pkgs/by-name/xc/xclicker/package.nix
+++ b/pkgs/by-name/xc/xclicker/package.nix
@@ -4,7 +4,7 @@
 , meson
 , ninja
 , pkg-config
-, wrapGAppsHook
+, wrapGAppsHook3
 , gtk3
 , libXtst
 }:
@@ -24,7 +24,7 @@ stdenv.mkDerivation (finalAttrs: {
     meson
     ninja
     pkg-config
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
diff --git a/pkgs/by-name/xd/xdg-terminal-exec-mkhl/package.nix b/pkgs/by-name/xd/xdg-terminal-exec-mkhl/package.nix
new file mode 100644
index 000000000000..1d6e61edb6b0
--- /dev/null
+++ b/pkgs/by-name/xd/xdg-terminal-exec-mkhl/package.nix
@@ -0,0 +1,27 @@
+{
+  lib,
+  rustPlatform,
+  fetchFromGitea,
+}:
+rustPlatform.buildRustPackage rec {
+  pname = "xdg-terminal-exec-mkhl";
+  version = "0.2.0";
+
+  src = fetchFromGitea {
+    domain = "codeberg.org";
+    owner = "mkhl";
+    repo = "xdg-terminal-exec";
+    rev = "v${version}";
+    hash = "sha256-iVp+tg+OujMMddKsQ/T9wyqh/Jk/j/jQgsl23uQA/iM=";
+  };
+
+  cargoHash = "sha256-x2oEPFx2KRhnKPX3QjGBM16nkYGclxR5mELGYvxjtMA=";
+
+  meta = {
+    description = "Alternative rust-based implementation of the proposed XDG Default Terminal Execution Specification";
+    license = lib.licenses.gpl3Plus;
+    mainProgram = "xdg-terminal-exec";
+    maintainers = with lib.maintainers; [ quantenzitrone ];
+    platforms = lib.platforms.unix;
+  };
+}
diff --git a/pkgs/by-name/xe/xemu/package.nix b/pkgs/by-name/xe/xemu/package.nix
index 7fc390049cb9..47b42d5422c7 100644
--- a/pkgs/by-name/xe/xemu/package.nix
+++ b/pkgs/by-name/xe/xemu/package.nix
@@ -1,55 +1,56 @@
-{ lib
-, SDL2
-, SDL2_image
-, copyDesktopItems
-, fetchFromGitHub
-, gettext
-, glib
-, gtk3
-, libGLU
-, libdrm
-, libepoxy
-, libpcap
-, libsamplerate
-, libslirp
-, makeDesktopItem
-, mesa
-, meson
-, ninja
-, openssl
-, perl
-, pkg-config
-, python3Packages
-, stdenv
-, vte
-, which
-, wrapGAppsHook
+{
+  lib,
+  SDL2,
+  SDL2_image,
+  fetchFromGitHub,
+  gettext,
+  glib,
+  gtk3,
+  libGLU,
+  libdrm,
+  libepoxy,
+  libpcap,
+  libsamplerate,
+  libslirp,
+  mesa,
+  meson,
+  ninja,
+  openssl,
+  perl,
+  pkg-config,
+  python3Packages,
+  stdenv,
+  vte,
+  which,
+  wrapGAppsHook3,
 }:
 
 stdenv.mkDerivation (finalAttrs: {
   pname = "xemu";
-  version = "0.7.120";
+  version = "0.7.121";
 
   src = fetchFromGitHub {
     owner = "xemu-project";
     repo = "xemu";
     rev = "v${finalAttrs.version}";
     fetchSubmodules = true;
-    hash = "sha256-FFxYp53LLDOPZ1Inr70oyQXhNjJO23G+gNmXd/lvrYs=";
+    hash = "sha256-VcztVzG/IN9N0SVKj6BipyqnhxXC2nTTuMjKMtFKzGw=";
   };
 
-  nativeBuildInputs = [
-    copyDesktopItems
-    meson
-    ninja
-    perl
-    pkg-config
-    which
-    wrapGAppsHook
-  ] ++ (with python3Packages; [
-    python
-    pyyaml
-  ]);
+  nativeBuildInputs =
+    [
+      SDL2
+      meson
+      ninja
+      perl
+      pkg-config
+      which
+      wrapGAppsHook3
+    ]
+    ++ (with python3Packages; [
+      python
+      pyyaml
+    ]);
 
   buildInputs = [
     SDL2
@@ -68,12 +69,6 @@ stdenv.mkDerivation (finalAttrs: {
     vte
   ];
 
-  separateDebugInfo = true;
-
-  dontUseMesonConfigure = true;
-
-  setOutputFlags = false;
-
   configureFlags = [
     "--disable-strip"
     "--meson=meson"
@@ -83,14 +78,13 @@ stdenv.mkDerivation (finalAttrs: {
 
   buildFlags = [ "qemu-system-i386" ];
 
-  desktopItems = [
-    (makeDesktopItem {
-      name = "xemu";
-      desktopName = "xemu";
-      exec = "xemu";
-      icon = "xemu";
-    })
-  ];
+  separateDebugInfo = true;
+
+  dontUseMesonConfigure = true;
+
+  setOutputFlags = false;
+
+  strictDeps = true;
 
   postPatch = ''
     patchShebangs .
@@ -98,35 +92,49 @@ stdenv.mkDerivation (finalAttrs: {
       --replace 'date -u' "date -d @$SOURCE_DATE_EPOCH '+%Y-%m-%d %H:%M:%S'"
   '';
 
-  preConfigure = ''
-    configureFlagsArray+=("--extra-cflags=-DXBOX=1 -Wno-error=redundant-decls")
-  '' +
-  # When the data below can't be obtained through git, the build process tries
-  # to run `XEMU_COMMIT=$(cat XEMU_COMMIT)` (and similar)
-  ''
-    echo '${finalAttrs.version}' > XEMU_VERSION
-  '';
+  preConfigure =
+    ''
+      configureFlagsArray+=("--extra-cflags=-DXBOX=1 -Wno-error=redundant-decls")
+    ''
+    +
+      # When the data below can't be obtained through git, the build process tries
+      # to run `XEMU_COMMIT=$(cat XEMU_COMMIT)` (and similar)
+      ''
+        echo '${finalAttrs.version}' > XEMU_VERSION
+      '';
 
   preBuild = ''
     cd build
     substituteInPlace ./build.ninja --replace /usr/bin/env $(which env)
   '';
 
-  installPhase = let
-    installIcon = resolution: ''
-      install -Dm644 -T ../ui/icons/xemu_${resolution}.png \
-        $out/share/icons/hicolor/${resolution}/apps/xemu.png
+  installPhase =
+    let
+      installIcon = resolution: ''
+        install -Dm644 -T ../ui/icons/xemu_${resolution}.png \
+          $out/share/icons/hicolor/${resolution}/apps/xemu.png
+      '';
+    in
+    ''
+      runHook preInstall
+
+      install -Dm755 -T qemu-system-i386 $out/bin/xemu
+    ''
+    + (lib.concatMapStringsSep "\n" installIcon [
+      "16x16"
+      "24x24"
+      "32x32"
+      "48x48"
+      "128x128"
+      "256x256"
+      "512x512"
+    ])
+    + "\n"
+    + ''
+      install -Dm644 -T ../ui/xemu.desktop $out/share/applications/xemu.desktop
+
+      runHook postInstall
     '';
-  in ''
-    runHook preInstall
-
-    install -Dm755 -T qemu-system-i386 $out/bin/xemu
-  '' +
-  (lib.concatMapStringsSep "\n" installIcon
-    [ "16x16" "24x24" "32x32" "48x48" "128x128" "256x256" "512x512" ]) + "\n" +
-  ''
-    runHook postInstall
-  '';
 
   meta = {
     homepage = "https://xemu.app/";
@@ -143,3 +151,4 @@ stdenv.mkDerivation (finalAttrs: {
     platforms = lib.platforms.linux;
   };
 })
+# TODO: investigate failure when using __structuredAttrs
diff --git a/pkgs/development/libraries/xml-tooling-c/default.nix b/pkgs/by-name/xm/xml-tooling-c/package.nix
index f58f50b4a72f..439f7e64899b 100644
--- a/pkgs/development/libraries/xml-tooling-c/default.nix
+++ b/pkgs/by-name/xm/xml-tooling-c/package.nix
@@ -1,5 +1,15 @@
-{ lib, stdenv, fetchgit, autoreconfHook, pkg-config
-, boost, curl, openssl, log4shib, xercesc, xml-security-c
+{
+  lib,
+  stdenv,
+  fetchgit,
+  autoreconfHook,
+  pkg-config,
+  boost,
+  curl,
+  openssl,
+  log4shib,
+  xercesc,
+  xml-security-c,
 }:
 
 stdenv.mkDerivation rec {
@@ -12,17 +22,28 @@ stdenv.mkDerivation rec {
     sha256 = "sha256-FQ109ahOSWj3hvaxu1r/0FTpCuWaLgSEKM8NBio+wqU=";
   };
 
-  buildInputs = [ boost curl openssl log4shib xercesc xml-security-c ];
-  nativeBuildInputs = [ autoreconfHook pkg-config ];
+  buildInputs = [
+    boost
+    curl
+    openssl
+    log4shib
+    xercesc
+    xml-security-c
+  ];
+
+  nativeBuildInputs = [
+    autoreconfHook
+    pkg-config
+  ];
 
   env.NIX_CFLAGS_COMPILE = lib.optionalString (!stdenv.isDarwin) "-std=c++14";
 
   enableParallelBuilding = true;
 
-  meta = with lib; {
+  meta = {
     description = "A low-level library that provides a high level interface to XML processing for OpenSAML 2";
-    platforms   = platforms.unix;
-    license     = licenses.asl20;
-    maintainers = [ ];
+    platforms = lib.platforms.unix;
+    license = lib.licenses.asl20;
+    maintainers = [ lib.maintainers.sigmanificient ];
   };
 }
diff --git a/pkgs/by-name/xn/xnlinkfinder/package.nix b/pkgs/by-name/xn/xnlinkfinder/package.nix
new file mode 100644
index 000000000000..85429a64ec70
--- /dev/null
+++ b/pkgs/by-name/xn/xnlinkfinder/package.nix
@@ -0,0 +1,55 @@
+{
+  lib,
+  fetchFromGitHub,
+  fetchpatch,
+  python3,
+}:
+
+python3.pkgs.buildPythonApplication rec {
+  pname = "xnlinkfinder";
+  version = "6.0";
+  pyproject = true;
+
+  src = fetchFromGitHub {
+    owner = "xnl-h4ck3r";
+    repo = "xnLinkFinder";
+    rev = "refs/tags/v${version}";
+    hash = "sha256-UMHMWHLJOhEeR+vO4YE3aNzdsvMAXPpQHQgdFf1QeMY=";
+  };
+
+  patches = [
+    # Clean-up setup.py
+    (fetchpatch {
+      name = "clean-up.patch";
+      url = "https://github.com/xnl-h4ck3r/xnLinkFinder/commit/8ef5e2ecf4c627b389cb7bb526f10fffe84acc13.patch";
+      hash = "sha256-14j3dFgehhPdqAe4e9FsB8sD66hKnNaPmDJRV1mQTDo=";
+    })
+  ];
+
+  build-system = with python3.pkgs; [ setuptools ];
+
+  dependencies = with python3.pkgs; [
+    beautifulsoup4
+    html5lib
+    lxml
+    psutil
+    pyyaml
+    requests
+    termcolor
+    urllib3
+  ];
+
+  # Project has no test
+  doCheck = false;
+
+  pythonImportsCheck = [ "xnLinkFinder" ];
+
+  meta = with lib; {
+    description = "Tool to discover endpoints, potential parameters, and a target specific wordlist for a given target";
+    homepage = "https://github.com/xnl-h4ck3r/xnLinkFinder";
+    changelog = "https://github.com/xnl-h4ck3r/xnLinkFinder/blob/${version}/CHANGELOG.md";
+    license = licenses.mit;
+    maintainers = with maintainers; [ fab ];
+    mainProgram = "xnLinkFinder";
+  };
+}
diff --git a/pkgs/by-name/xp/xplr/package.nix b/pkgs/by-name/xp/xplr/package.nix
index c159da6c6da5..920ddb872032 100644
--- a/pkgs/by-name/xp/xplr/package.nix
+++ b/pkgs/by-name/xp/xplr/package.nix
@@ -2,16 +2,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "xplr";
-  version = "0.21.7";
+  version = "0.21.8";
 
   src = fetchFromGitHub {
     owner = "sayanarijit";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-ZitwO/XfNrlTFNepQ5Wyk1A7cwlNm6+26nPHdZ8Wh3c=";
+    sha256 = "sha256-GpGYCGXSCQhFEPDUnHaOdz0LZ0jjRcCRnRCyOrulDVs=";
   };
 
-  cargoHash = "sha256-mfSVjm0s/tLjjygwu8TuKn92mFM3Ui6TEHkIzS0eEOA=";
+  cargoHash = "sha256-eCIoUUWHpFk+O5ipswwiQxf1H1ygkj07Sjyj4L8Ui6I=";
 
   # fixes `thread 'main' panicked at 'cannot find strip'` on x86_64-darwin
   env = lib.optionalAttrs (stdenv.isx86_64 && stdenv.isDarwin) {
diff --git a/pkgs/tools/wayland/ydotool/default.nix b/pkgs/by-name/yd/ydotool/package.nix
index 42f95735de59..137a701d87a3 100644
--- a/pkgs/tools/wayland/ydotool/default.nix
+++ b/pkgs/by-name/yd/ydotool/package.nix
@@ -1,13 +1,22 @@
-{ lib, stdenv, fetchFromGitHub, cmake, scdoc, util-linux, xorg }:
+{
+  lib,
+  stdenv,
+  fetchFromGitHub,
+  cmake,
+  scdoc,
+  util-linux,
+  xorg,
+  nixosTests,
+}:
 
-stdenv.mkDerivation rec {
+stdenv.mkDerivation (finalAttrs: {
   pname = "ydotool";
   version = "1.0.4";
 
   src = fetchFromGitHub {
     owner = "ReimuNotMoe";
     repo = "ydotool";
-    rev = "v${version}";
+    rev = "v${finalAttrs.version}";
     hash = "sha256-MtanR+cxz6FsbNBngqLE+ITKPZFHmWGsD1mBDk0OVng=";
   };
 
@@ -19,13 +28,22 @@ stdenv.mkDerivation rec {
   '';
 
   strictDeps = true;
-  nativeBuildInputs = [ cmake scdoc ];
+  nativeBuildInputs = [
+    cmake
+    scdoc
+  ];
 
-  meta = with lib; {
-    homepage = "https://github.com/ReimuNotMoe/ydotool";
+  passthru.tests.basic = nixosTests.ydotool;
+
+  meta = {
     description = "Generic Linux command-line automation tool";
-    license = licenses.agpl3Plus;
-    maintainers = with maintainers; [ willibutz kraem ];
-    platforms = with platforms; linux;
+    homepage = "https://github.com/ReimuNotMoe/ydotool";
+    license = lib.licenses.agpl3Plus;
+    mainProgram = "ydotool";
+    maintainers = with lib.maintainers; [
+      willibutz
+      kraem
+    ];
+    platforms = lib.platforms.linux;
   };
-}
+})
diff --git a/pkgs/by-name/ye/yesplaymusic/package.nix b/pkgs/by-name/ye/yesplaymusic/package.nix
index c5292401fa83..576547669f8c 100644
--- a/pkgs/by-name/ye/yesplaymusic/package.nix
+++ b/pkgs/by-name/ye/yesplaymusic/package.nix
@@ -4,7 +4,7 @@
 , _7zz
 , dpkg
 , autoPatchelfHook
-, wrapGAppsHook
+, wrapGAppsHook3
 , makeWrapper
 , alsa-lib
 , at-spi2-atk
@@ -98,7 +98,7 @@ else stdenv.mkDerivation {
 
   nativeBuildInputs = [
     autoPatchelfHook
-    wrapGAppsHook
+    wrapGAppsHook3
     makeWrapper
   ];
 
diff --git a/pkgs/by-name/yo/yofi/package.nix b/pkgs/by-name/yo/yofi/package.nix
new file mode 100644
index 000000000000..5227efa6fe7e
--- /dev/null
+++ b/pkgs/by-name/yo/yofi/package.nix
@@ -0,0 +1,50 @@
+{ lib
+, fetchFromGitHub
+, rustPlatform
+, autoPatchelfHook
+, fontconfig
+, libxkbcommon
+, pkg-config
+, libgcc
+, wayland
+}:
+rustPlatform.buildRustPackage rec {
+  pname = "yofi";
+  version = "0.2.2";
+
+  src = fetchFromGitHub {
+    owner = "l4l";
+    repo = "yofi";
+    rev = "refs/tags/${version}";
+    hash = "sha256-cepAZyA4RBgqeF20g6YOlZTM0aRqErw17yuQ3U24UEg=";
+  };
+
+  cargoHash = "sha256-iSy/y1iwhR8x3wDIfazMeROSrJ8uRyA10hoNo6y2OQc=";
+  nativeBuildInputs = [
+    autoPatchelfHook
+    pkg-config
+  ];
+
+  buildInputs = [
+    libgcc
+    libxkbcommon
+  ];
+
+  appendRunpaths = [
+    (lib.makeLibraryPath [ fontconfig wayland ])
+  ];
+
+  checkFlags = [
+    # Fail to run in sandbox environment.
+    "--skip=screen::context::test"
+  ];
+
+  meta = {
+    description = "A minimalist app launcher in Rust";
+    homepage = "https://github.com/l4l/yofi";
+    license = lib.licenses.mit;
+    platforms = lib.platforms.linux;
+    maintainers = with lib.maintainers; [ rayslash ];
+    mainProgram = "yofi";
+  };
+}
diff --git a/pkgs/by-name/yo/your_spotify/client.nix b/pkgs/by-name/yo/your_spotify/client.nix
new file mode 100644
index 000000000000..420498821bf9
--- /dev/null
+++ b/pkgs/by-name/yo/your_spotify/client.nix
@@ -0,0 +1,58 @@
+{
+  apiEndpoint ? "http://localhost:3000",
+  fetchYarnDeps,
+  your_spotify,
+  mkYarnPackage,
+  fixup-yarn-lock,
+  src,
+  version,
+  yarn,
+}:
+mkYarnPackage rec {
+  inherit version src;
+  pname = "your_spotify_client";
+  name = "your_spotify_client-${version}";
+  packageJSON = ./package.json;
+  offlineCache = fetchYarnDeps {
+    yarnLock = src + "/yarn.lock";
+    hash = "sha256-5SgknaRVzgO2Dzc8MhAaM8UERWMv+PrItzevoWHbWnA=";
+  };
+  configurePhase = ''
+    runHook preConfigure
+
+    export HOME=$(mktemp -d)
+    yarn config --offline set yarn-offline-mirror $offlineCache
+    fixup-yarn-lock yarn.lock
+    yarn install --offline --frozen-lockfile --ignore-platform --ignore-scripts --no-progress --non-interactive
+    patchShebangs node_modules/
+
+    runHook postConfigure
+  '';
+  buildPhase = ''
+    runHook preBuild
+    pushd ./apps/client/
+    yarn --offline run build
+    export API_ENDPOINT="${apiEndpoint}"
+    substituteInPlace scripts/run/variables.sh --replace-quiet '/app/apps/client/' "./"
+
+    chmod +x ./scripts/run/variables.sh
+    patchShebangs --build ./scripts/run/variables.sh
+
+    ./scripts/run/variables.sh
+
+    popd
+    runHook postBuild
+  '';
+  nativeBuildInputs = [yarn fixup-yarn-lock];
+
+  installPhase = ''
+    runHook preInstall
+    mkdir -p $out
+    cp -r ./apps/client/build/* $out
+    runHook postInstall
+  '';
+  doDist = false;
+  meta = {
+    inherit (your_spotify.meta) homepage changelog description license maintainers;
+  };
+}
diff --git a/pkgs/by-name/yo/your_spotify/package.json b/pkgs/by-name/yo/your_spotify/package.json
new file mode 100644
index 000000000000..8c10988ffb6d
--- /dev/null
+++ b/pkgs/by-name/yo/your_spotify/package.json
@@ -0,0 +1,10 @@
+{
+  "name": "@your_spotify/root",
+  "version": "1.10.1",
+  "repository": "git@github.com:Yooooomi/your_spotify.git",
+  "author": "Timothee <timothee.boussus@gmail.com>",
+  "private": true,
+  "workspaces": [
+    "apps/*"
+  ]
+}
diff --git a/pkgs/by-name/yo/your_spotify/package.nix b/pkgs/by-name/yo/your_spotify/package.nix
new file mode 100644
index 000000000000..0296b9d22c02
--- /dev/null
+++ b/pkgs/by-name/yo/your_spotify/package.nix
@@ -0,0 +1,85 @@
+{
+  callPackage,
+  fetchFromGitHub,
+  fetchYarnDeps,
+  lib,
+  makeWrapper,
+  mkYarnPackage,
+  nodejs,
+  fixup-yarn-lock,
+  yarn,
+}: let
+  version = "1.10.1";
+  src = fetchFromGitHub {
+    owner = "Yooooomi";
+    repo = "your_spotify";
+    rev = "refs/tags/${version}";
+    hash = "sha256-e82j2blGxQLWAlBNuAnFvlD9vwMk4/mRI0Vf7vuaPA0=";
+  };
+  client = callPackage ./client.nix {inherit src version;};
+in
+  mkYarnPackage rec {
+    inherit version src;
+    pname = "your_spotify_server";
+    name = "your_spotify_server-${version}";
+    packageJSON = ./package.json;
+    offlineCache = fetchYarnDeps {
+      yarnLock = src + "/yarn.lock";
+      hash = "sha256-5SgknaRVzgO2Dzc8MhAaM8UERWMv+PrItzevoWHbWnA=";
+    };
+
+    configurePhase = ''
+      runHook preConfigure
+
+      export HOME=$(mktemp -d)
+      yarn config --offline set yarn-offline-mirror $offlineCache
+      fixup-yarn-lock yarn.lock
+
+      runHook postConfigure
+    '';
+
+    buildPhase = ''
+      runHook preBuild
+
+      yarn install --offline --frozen-lockfile --ignore-platform --ignore-scripts --no-progress --non-interactive
+      patchShebangs node_modules/
+
+      pushd ./apps/server/
+      yarn --offline run build
+      popd
+
+      rm -r node_modules
+      export NODE_ENV="production"
+      yarn install --offline --frozen-lockfile --ignore-platform --ignore-scripts --no-progress --non-interactive
+      patchShebangs node_modules/
+
+      runHook postBuild
+    '';
+    nativeBuildInputs = [makeWrapper yarn fixup-yarn-lock];
+    installPhase = ''
+      runHook preInstall
+
+      mkdir -p $out/share/your_spotify
+      cp -r node_modules $out/share/your_spotify/node_modules
+      cp -r ./apps/server/{lib,package.json} $out
+      mkdir -p $out/bin
+      makeWrapper ${lib.escapeShellArg (lib.getExe nodejs)} "$out/bin/your_spotify_migrate" \
+        --add-flags "$out/lib/migrations.js" --set NODE_PATH "$out/share/your_spotify/node_modules"
+      makeWrapper ${lib.escapeShellArg (lib.getExe nodejs)} "$out/bin/your_spotify_server" \
+        --add-flags "$out/lib/index.js" --set NODE_PATH "$out/share/your_spotify/node_modules"
+
+      runHook postInstall
+    '';
+    doDist = false;
+    passthru = {
+      inherit client;
+    };
+    meta = with lib; {
+      homepage = "https://github.com/Yooooomi/your_spotify";
+      changelog = "https://github.com/Yooooomi/your_spotify/releases/tag/${version}";
+      description = "Self-hosted application that tracks what you listen and offers you a dashboard to explore statistics about it";
+      license = licenses.gpl3Only;
+      maintainers = with maintainers; [patrickdag];
+      mainProgram = "your_spotify_server";
+    };
+  }
diff --git a/pkgs/by-name/yo/youtrack/package.nix b/pkgs/by-name/yo/youtrack/package.nix
index 61788d193b56..5dbe8b9710ba 100644
--- a/pkgs/by-name/yo/youtrack/package.nix
+++ b/pkgs/by-name/yo/youtrack/package.nix
@@ -2,11 +2,11 @@
 
 stdenvNoCC.mkDerivation (finalAttrs: {
   pname = "youtrack";
-  version = "2024.1.28928";
+  version = "2024.1.29548";
 
   src = fetchzip {
     url = "https://download.jetbrains.com/charisma/youtrack-${finalAttrs.version}.zip";
-    hash = "sha256-8+dZ1YTpvOX0IEEbFzv4t8T/U/BZMeDCZL7Ju25WBpE=";
+    hash = "sha256-01av1leVJz+QbnFNYyxEeL1zd6I25VNt45YFgV25n+0=";
   };
 
   nativeBuildInputs = [ makeBinaryWrapper ];
diff --git a/pkgs/applications/misc/onagre/Cargo.lock b/pkgs/by-name/yt/ytermusic/Cargo.lock
index b576dbc9022a..1fbd706c0c5c 100644
--- a/pkgs/applications/misc/onagre/Cargo.lock
+++ b/pkgs/by-name/yt/ytermusic/Cargo.lock
@@ -3,97 +3,101 @@
 version = 3
 
 [[package]]
-name = "ab_glyph"
-version = "0.2.15"
+name = "addr2line"
+version = "0.21.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "24606928a235e73cdef55a0c909719cadd72fce573e5713d58cb2952d8f5794c"
+checksum = "8a30b2e23b9e17a9f90641c7ab1549cd9b44f296d3ccbf309d2863cfe398a0cb"
 dependencies = [
- "ab_glyph_rasterizer",
- "owned_ttf_parser",
+ "gimli",
 ]
 
 [[package]]
-name = "ab_glyph_rasterizer"
-version = "0.1.5"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a13739d7177fbd22bb0ed28badfff9f372f8bef46c863db4e1c6248f6b223b6e"
-
-[[package]]
 name = "adler"
 version = "1.0.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "f26201604c87b1e01bd3d98f8d5d9a8fcbb815e8cedb41ffccbeb4bf593a35fe"
 
 [[package]]
-name = "adler32"
-version = "1.2.0"
+name = "aes"
+version = "0.8.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "aae1277d39aeec15cb388266ecc24b11c80469deae6067e17a1a7aa9e5c1f234"
+checksum = "ac1f845298e95f983ff1944b728ae08b8cebab80d684f0a832ed0fc74dfa27e2"
+dependencies = [
+ "cfg-if 1.0.0",
+ "cipher",
+ "cpufeatures",
+]
 
 [[package]]
 name = "ahash"
-version = "0.7.6"
+version = "0.8.7"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "fcb51a0695d8f838b1ee009b3fbf66bda078cd64590202a864a8f3e8c4315c47"
+checksum = "77c3a9648d43b9cd48db467b3f87fdd6e146bcc88ab0180006cef2179fe11d01"
 dependencies = [
- "getrandom 0.2.6",
+ "cfg-if 1.0.0",
+ "getrandom 0.2.12",
  "once_cell",
  "version_check",
+ "zerocopy",
 ]
 
 [[package]]
 name = "aho-corasick"
-version = "0.7.18"
+version = "1.1.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1e37cfd5e7657ada45f742d6e99ca5788580b5c529dc78faf11ece6dc702656f"
+checksum = "b2969dcb958b36655471fc61f7e416fa76033bdd4bfed0678d8fee1e2d07a1f0"
 dependencies = [
  "memchr",
 ]
 
 [[package]]
-name = "ansi_term"
-version = "0.12.1"
+name = "allocator-api2"
+version = "0.2.16"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d52a9bb7ec0cf484c551830a7ce27bd20d67eac647e1befb56b0be4ee39a55d2"
-dependencies = [
- "winapi",
-]
+checksum = "0942ffc6dcaadf03badf6e6a2d0228460359d5e34b57ccdc720b7382dfbd5ec5"
 
 [[package]]
-name = "anyhow"
-version = "1.0.57"
+name = "alsa"
+version = "0.6.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "08f9b8508dccb7687a1d6c4ce66b2b0ecef467c94667de27d8d7fe1f8d2a9cdc"
+checksum = "5915f52fe2cf65e83924d037b6c5290b7cee097c6b5c8700746e6168a343fd6b"
+dependencies = [
+ "alsa-sys",
+ "bitflags 1.3.2",
+ "libc",
+ "nix 0.23.2",
+]
 
 [[package]]
-name = "approx"
-version = "0.3.2"
+name = "alsa-sys"
+version = "0.3.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f0e60b75072ecd4168020818c0107f2857bb6c4e64252d8d3983f6263b40a5c3"
+checksum = "db8fee663d06c4e303404ef5f40488a53e062f89ba8bfed81f42325aafad1527"
 dependencies = [
- "num-traits",
+ "libc",
+ "pkg-config",
 ]
 
 [[package]]
-name = "approx"
-version = "0.5.1"
+name = "android-tzdata"
+version = "0.1.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "cab112f0a86d568ea0e627cc1d6be74a1e9cd55214684db5561995f6dad897c6"
-dependencies = [
- "num-traits",
-]
+checksum = "e999941b234f3131b00bc13c22d06e8c5ff726d1b6318ac7eb276997bbb4fef0"
 
 [[package]]
-name = "arrayref"
-version = "0.3.6"
+name = "android_system_properties"
+version = "0.1.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a4c527152e37cf757a3f78aae5a06fbeefdb07ccc535c980a3208ee3060dd544"
+checksum = "819e7219dbd41043ac279b19830f2efc897156490d7fd6ea916720117ee66311"
+dependencies = [
+ "libc",
+]
 
 [[package]]
-name = "arrayvec"
-version = "0.5.2"
+name = "anyhow"
+version = "1.0.79"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "23b62fc65de8e4e7f52534fb52b0f3ed04746ae267519eef2a83941e8085068b"
+checksum = "080e9890a082662b09c1ad45f567faeeb47f22b5fb23895fbe1e651e718e25ca"
 
 [[package]]
 name = "arrayvec"
@@ -102,240 +106,284 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "8da52d66c7071e2e3fa2a1e5c6d088fec47b593032b254f5e980de8ea54454d6"
 
 [[package]]
-name = "ash"
-version = "0.34.0+1.2.203"
+name = "async-compression"
+version = "0.4.6"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b0f780da53d0063880d45554306489f09dd8d1bda47688b4a57bc579119356df"
+checksum = "a116f46a969224200a0a97f29cfd4c50e7534e4b4826bd23ea2c3c533039c82c"
 dependencies = [
- "libloading",
+ "flate2",
+ "futures-core",
+ "memchr",
+ "pin-project-lite",
+ "tokio",
 ]
 
 [[package]]
-name = "async-broadcast"
-version = "0.4.0"
+name = "async-trait"
+version = "0.1.77"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1bbd92a9bd0e9c1298118ecf8a2f825e86b12c3ec9e411573e34aaf3a0c03cdd"
+checksum = "c980ee35e870bd1a4d2c8294d4c04d0499e67bca1e4b5cefcc693c2fa00caea9"
 dependencies = [
- "easy-parallel",
- "event-listener",
- "futures-core",
- "parking_lot",
+ "proc-macro2",
+ "quote",
+ "syn 2.0.48",
 ]
 
 [[package]]
-name = "async-channel"
-version = "1.6.1"
+name = "atomic_float"
+version = "0.1.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2114d64672151c0c5eaa5e131ec84a74f06e1e559830dabba01ca30605d66319"
-dependencies = [
- "concurrent-queue",
- "event-listener",
- "futures-core",
-]
+checksum = "62af46d040ba9df09edc6528dae9d8e49f5f3e82f55b7d2ec31a733c38dbc49d"
 
 [[package]]
-name = "async-executor"
-version = "1.4.1"
+name = "autocfg"
+version = "1.1.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "871f9bb5e0a22eeb7e8cf16641feb87c9dc67032ccf8ff49e772eb9941d3a965"
-dependencies = [
- "async-task",
- "concurrent-queue",
- "fastrand",
- "futures-lite",
- "once_cell",
- "slab",
-]
+checksum = "d468802bab17cbc0cc575e9b053f41e72aa36bfa6b7f55e3529ffa43161b97fa"
 
 [[package]]
-name = "async-io"
-version = "1.6.0"
+name = "backtrace"
+version = "0.3.69"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a811e6a479f2439f0c04038796b5cfb3d2ad56c230e0f2d3f7b04d68cfee607b"
+checksum = "2089b7e3f35b9dd2d0ed921ead4f6d318c27680d4a5bd167b3ee120edb105837"
 dependencies = [
- "concurrent-queue",
- "futures-lite",
+ "addr2line",
+ "cc",
+ "cfg-if 1.0.0",
  "libc",
- "log",
- "once_cell",
- "parking",
- "polling",
- "slab",
- "socket2",
- "waker-fn",
- "winapi",
+ "miniz_oxide 0.7.2",
+ "object",
+ "rustc-demangle",
 ]
 
 [[package]]
-name = "async-lock"
-version = "2.5.0"
+name = "base64"
+version = "0.13.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e97a171d191782fba31bb902b14ad94e24a68145032b7eedf871ab0bc0d077b6"
-dependencies = [
- "event-listener",
-]
+checksum = "904dfeac50f3cdaba28fc6f57fdcddb75f49ed61346676a78c4ffe55877802fd"
 
 [[package]]
-name = "async-oneshot"
-version = "0.5.0"
+name = "base64"
+version = "0.21.7"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1ec7c75bcbcb0139e9177f30692fd617405ca4e0c27802e128d53171f7042e2c"
-dependencies = [
- "futures-micro",
-]
+checksum = "9d297deb1925b89f2ccc13d7635fa0714f12c87adce1c75356b39ca9b7178567"
 
 [[package]]
-name = "async-pidfd"
-version = "0.1.4"
+name = "bincode"
+version = "1.3.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "12177058299bb8e3507695941b6d0d7dc0e4e6515b8bc1bf4609d9e32ef51799"
+checksum = "b1f45e9417d87227c7a56d22e471c6206462cba514c7590c09aff4cf6d1ddcad"
 dependencies = [
- "async-io",
- "libc",
+ "serde",
 ]
 
 [[package]]
-name = "async-recursion"
-version = "0.3.2"
+name = "bindgen"
+version = "0.59.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d7d78656ba01f1b93024b7c3a0467f1608e4be67d725749fdcd7d2c7678fd7a2"
+checksum = "2bd2a9a458e8f4304c52c43ebb0cfbd520289f8379a52e329a38afda99bf8eb8"
 dependencies = [
+ "bitflags 1.3.2",
+ "cexpr",
+ "clang-sys",
+ "lazy_static",
+ "lazycell",
+ "peeking_take_while",
  "proc-macro2",
  "quote",
- "syn",
+ "regex",
+ "rustc-hash",
+ "shlex",
 ]
 
 [[package]]
-name = "async-task"
-version = "4.2.0"
+name = "bitflags"
+version = "1.3.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "30696a84d817107fc028e049980e09d5e140e8da8f1caeb17e8e950658a3cea9"
+checksum = "bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a"
 
 [[package]]
-name = "async-trait"
-version = "0.1.53"
+name = "bitflags"
+version = "2.4.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ed6aa3524a2dfcf9fe180c51eae2b58738348d819517ceadf95789c51fff7600"
+checksum = "ed570934406eb16438a4e976b1b4500774099c13b8cb96eec99f620f05090ddf"
 dependencies = [
- "proc-macro2",
- "quote",
- "syn",
+ "serde",
 ]
 
 [[package]]
-name = "atty"
-version = "0.2.14"
+name = "block"
+version = "0.1.6"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d9b39be18770d11421cdb1b9947a45dd3f37e93092cbf377614828a319d5fee8"
-dependencies = [
- "hermit-abi",
- "libc",
- "winapi",
-]
+checksum = "0d8c1fef690941d3e7788d328517591fecc684c084084702d6ff1641e993699a"
 
 [[package]]
-name = "autocfg"
-version = "1.1.0"
+name = "block-buffer"
+version = "0.10.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d468802bab17cbc0cc575e9b053f41e72aa36bfa6b7f55e3529ffa43161b97fa"
+checksum = "69cce20737498f97b993470a6e536b8523f0af7892a4f928cceb1ac5e52ebe7e"
+dependencies = [
+ "generic-array",
+]
 
 [[package]]
-name = "base64"
-version = "0.13.0"
+name = "block-padding"
+version = "0.3.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "904dfeac50f3cdaba28fc6f57fdcddb75f49ed61346676a78c4ffe55877802fd"
+checksum = "a8894febbff9f758034a5b8e12d87918f56dfc64a8e1fe757d65e29041538d93"
+dependencies = [
+ "generic-array",
+]
 
 [[package]]
-name = "bit-set"
-version = "0.5.2"
+name = "boa_ast"
+version = "0.17.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6e11e16035ea35e4e5997b393eacbf6f63983188f7a2ad25bfb13465f5ad59de"
+checksum = "73498e9b2f0aa7db74977afa4d594657611e90587abf0dd564c0b55b4a130163"
 dependencies = [
- "bit-vec",
+ "bitflags 2.4.2",
+ "boa_interner",
+ "boa_macros",
+ "indexmap",
+ "num-bigint",
+ "rustc-hash",
 ]
 
 [[package]]
-name = "bit-vec"
-version = "0.6.3"
+name = "boa_engine"
+version = "0.17.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "349f9b6a179ed607305526ca489b34ad0a41aed5f7980fa90eb03160b69598fb"
+checksum = "16377479d5d6d33896e7acdd1cc698d04a8f72004025bbbddf47558cd29146a6"
+dependencies = [
+ "bitflags 2.4.2",
+ "boa_ast",
+ "boa_gc",
+ "boa_icu_provider",
+ "boa_interner",
+ "boa_macros",
+ "boa_parser",
+ "boa_profiler",
+ "chrono",
+ "dashmap",
+ "fast-float",
+ "icu_normalizer",
+ "indexmap",
+ "itertools 0.11.0",
+ "num-bigint",
+ "num-integer",
+ "num-traits",
+ "num_enum 0.6.1",
+ "once_cell",
+ "pollster",
+ "rand 0.8.5",
+ "regress",
+ "rustc-hash",
+ "ryu-js",
+ "serde",
+ "serde_json",
+ "sptr",
+ "static_assertions",
+ "tap",
+ "thin-vec",
+ "thiserror",
+]
 
 [[package]]
-name = "bitflags"
-version = "1.3.2"
+name = "boa_gc"
+version = "0.17.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a"
+checksum = "c97b44beaef9d4452342d117d94607fdfa8d474280f1ba0fd97853834e3a49b2"
+dependencies = [
+ "boa_macros",
+ "boa_profiler",
+ "thin-vec",
+]
 
 [[package]]
-name = "block"
-version = "0.1.6"
+name = "boa_icu_provider"
+version = "0.17.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0d8c1fef690941d3e7788d328517591fecc684c084084702d6ff1641e993699a"
+checksum = "b30e52e34e451dd0bfc2c654a9a43ed34b0073dbd4ae3394b40313edda8627aa"
+dependencies = [
+ "icu_collections",
+ "icu_normalizer",
+ "icu_properties",
+ "icu_provider",
+ "icu_provider_adapters",
+ "icu_provider_blob",
+ "once_cell",
+]
 
 [[package]]
-name = "block-buffer"
-version = "0.7.3"
+name = "boa_interner"
+version = "0.17.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c0940dc441f31689269e10ac70eb1002a3a1d3ad1390e030043662eb7fe4688b"
+checksum = "f3e5afa991908cfbe79bd3109b824e473a1dc5f74f31fab91bb44c9e245daa77"
 dependencies = [
- "block-padding",
- "byte-tools",
- "byteorder",
- "generic-array",
+ "boa_gc",
+ "boa_macros",
+ "hashbrown 0.14.3",
+ "indexmap",
+ "once_cell",
+ "phf 0.11.2",
+ "rustc-hash",
+ "static_assertions",
 ]
 
 [[package]]
-name = "block-padding"
-version = "0.1.5"
+name = "boa_macros"
+version = "0.17.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "fa79dedbb091f449f1f39e53edf88d5dbe95f895dae6135a8d7b881fb5af73f5"
+checksum = "005fa0c5bd20805466dda55eb34cd709bb31a2592bb26927b47714eeed6914d8"
 dependencies = [
- "byte-tools",
+ "proc-macro2",
+ "quote",
+ "syn 2.0.48",
+ "synstructure",
 ]
 
 [[package]]
-name = "bstr"
-version = "0.2.17"
+name = "boa_parser"
+version = "0.17.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ba3569f383e8f1598449f1a423e72e99569137b47740b1da11ef19af3d5c3223"
+checksum = "9e09afb035377a9044443b598187a7d34cd13164617182a4d7c348522ee3f052"
 dependencies = [
- "lazy_static",
- "memchr",
- "regex-automata",
- "serde",
+ "bitflags 2.4.2",
+ "boa_ast",
+ "boa_icu_provider",
+ "boa_interner",
+ "boa_macros",
+ "boa_profiler",
+ "fast-float",
+ "icu_locid",
+ "icu_properties",
+ "icu_provider",
+ "icu_provider_macros",
+ "num-bigint",
+ "num-traits",
+ "once_cell",
+ "regress",
+ "rustc-hash",
+ "tinystr",
 ]
 
 [[package]]
-name = "bumpalo"
-version = "3.9.1"
+name = "boa_profiler"
+version = "0.17.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a4a45a46ab1f2412e53d3a0ade76ffad2025804294569aae387231a0cd6e0899"
+checksum = "3190f92dfe48224adc92881c620f08ccf37ff62b91a094bb357fe53bd5e84647"
 
 [[package]]
-name = "byte-tools"
-version = "0.3.1"
+name = "bumpalo"
+version = "3.9.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e3b5ca7a04898ad4bcd41c90c5285445ff5b791899bb1b0abdd2a2aa791211d7"
+checksum = "a4a45a46ab1f2412e53d3a0ade76ffad2025804294569aae387231a0cd6e0899"
 
 [[package]]
 name = "bytemuck"
-version = "1.9.1"
+version = "1.14.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "cdead85bdec19c194affaeeb670c0e41fe23de31459efd1c174d049269cf02cc"
-dependencies = [
- "bytemuck_derive",
-]
-
-[[package]]
-name = "bytemuck_derive"
-version = "1.1.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "562e382481975bc61d11275ac5e62a19abd00b0547d99516a415336f183dcd0e"
-dependencies = [
- "proc-macro2",
- "quote",
- "syn",
-]
+checksum = "ea31d69bda4949c1c1562c1e6f042a1caefac98cdc8a298260a2ff41c1e2d42b"
 
 [[package]]
 name = "byteorder"
@@ -345,23 +393,11 @@ checksum = "14c189c53d098945499cdfa7ecc63567cf3886b3332b312a5b4585d8d3a6a610"
 
 [[package]]
 name = "bytes"
-version = "0.5.6"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0e4cec68f03f32e44924783795810fa50a7035d8c8ebe78580ad7e6c703fba38"
-
-[[package]]
-name = "bytes"
 version = "1.1.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "c4872d67bab6358e59559027aa3b9157c53d9358c51423c17554809a8858e0f8"
 
 [[package]]
-name = "cache-padded"
-version = "1.2.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c1db59621ec70f09c5e9b597b220c7a2b43611f4710dc03ceb8748637775692c"
-
-[[package]]
 name = "calloop"
 version = "0.9.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -372,106 +408,112 @@ dependencies = [
 ]
 
 [[package]]
-name = "cast"
-version = "0.2.7"
+name = "cassowary"
+version = "0.3.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4c24dab4283a142afa2fdca129b80ad2c6284e073930f964c3a1293c225ee39a"
-dependencies = [
- "rustc_version 0.4.0",
-]
+checksum = "df8670b8c7b9dae1793364eafadf7239c40d669904660c5960d74cfd80b46a53"
 
 [[package]]
-name = "cc"
-version = "1.0.73"
+name = "castaway"
+version = "0.2.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2fff2a6927b3bb87f9595d67196a70493f627687a71d87a0d692242c33f58c11"
+checksum = "8a17ed5635fc8536268e5d4de1e22e81ac34419e5f052d4d51f4e01dcc263fcc"
+dependencies = [
+ "rustversion",
+]
 
 [[package]]
-name = "cfg-if"
-version = "0.1.10"
+name = "cbc"
+version = "0.1.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4785bdd1c96b2a846b2bd7cc02e86b6b3dbf14e7e53446c4f54c92a361040822"
+checksum = "26b52a9543ae338f279b96b0b9fed9c8093744685043739079ce85cd58f289a6"
+dependencies = [
+ "cipher",
+]
 
 [[package]]
-name = "cfg-if"
-version = "1.0.0"
+name = "cc"
+version = "1.0.83"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd"
+checksum = "f1174fb0b6ec23863f8b971027804a42614e347eafb0a95bf0b12cdae21fc4d0"
+dependencies = [
+ "jobserver",
+ "libc",
+]
 
 [[package]]
-name = "cfg_aliases"
-version = "0.1.1"
+name = "cesu8"
+version = "1.1.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "fd16c4719339c4530435d38e511904438d07cce7950afa3718a84ac36c10e89e"
+checksum = "6d43a04d8753f35258c91f8ec639f792891f748a1edbd759cf1dcea3382ad83c"
 
 [[package]]
-name = "clap"
-version = "2.34.0"
+name = "cexpr"
+version = "0.6.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a0610544180c38b88101fecf2dd634b174a62eef6946f84dfc6a7127512b381c"
+checksum = "6fac387a98bb7c37292057cffc56d62ecb629900026402633ae9160df93a8766"
 dependencies = [
- "bitflags",
- "textwrap",
- "unicode-width",
+ "nom",
 ]
 
 [[package]]
-name = "clipboard-win"
-version = "4.4.1"
+name = "cfg-if"
+version = "0.1.10"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2f3e1238132dc01f081e1cbb9dace14e5ef4c3a51ee244bd982275fb514605db"
-dependencies = [
- "error-code",
- "str-buf",
- "winapi",
-]
+checksum = "4785bdd1c96b2a846b2bd7cc02e86b6b3dbf14e7e53446c4f54c92a361040822"
 
 [[package]]
-name = "clipboard_macos"
-version = "0.1.0"
+name = "cfg-if"
+version = "1.0.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "145a7f9e9b89453bc0a5e32d166456405d389cea5b578f57f1274b1397588a95"
-dependencies = [
- "objc",
- "objc-foundation",
- "objc_id",
-]
+checksum = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd"
 
 [[package]]
-name = "clipboard_wayland"
-version = "0.2.0"
+name = "chrono"
+version = "0.4.33"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6f6364a9f7a66f2ac1a1a098aa1c7f6b686f2496c6ac5e5c0d773445df912747"
+checksum = "9f13690e35a5e4ace198e7beea2895d29f3a9cc55015fcebe6336bd2010af9eb"
 dependencies = [
- "smithay-clipboard",
+ "android-tzdata",
+ "iana-time-zone",
+ "num-traits",
+ "windows-targets 0.52.0",
 ]
 
 [[package]]
-name = "clipboard_x11"
-version = "0.3.1"
+name = "cipher"
+version = "0.4.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "64240d63f1883d87e5637bfcaf9d77e5c8bd24e30fd440ea2dff5c48c0bf0b7a"
+checksum = "773f3b9af64447d2ce9850330c473515014aa235e6a783b02db81ff39e4a3dad"
 dependencies = [
- "thiserror",
- "x11rb",
+ "crypto-common",
+ "inout",
 ]
 
 [[package]]
-name = "cmake"
-version = "0.1.48"
+name = "clang-sys"
+version = "1.3.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e8ad8cef104ac57b68b89df3208164d228503abbdce70f6880ffa3d970e7443a"
+checksum = "4cc00842eed744b858222c4c9faf7243aafc6d33f92f96935263ef4d8a41ce21"
 dependencies = [
- "cc",
+ "glob",
+ "libc",
+ "libloading 0.7.3",
 ]
 
 [[package]]
+name = "cobs"
+version = "0.2.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "67ba02a97a2bd10f4b59b25c7973101c79642302776489e030cd13cdab09ed15"
+
+[[package]]
 name = "cocoa"
 version = "0.24.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "6f63902e9223530efb4e26ccd0cf55ec30d592d3b42e21a28defc42a9586e832"
 dependencies = [
- "bitflags",
+ "bitflags 1.3.2",
  "block",
  "cocoa-foundation",
  "core-foundation 0.9.3",
@@ -487,7 +529,7 @@ version = "0.1.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "7ade49b65d560ca58c403a479bb396592b155c0185eada742ee323d1d68d6318"
 dependencies = [
- "bitflags",
+ "bitflags 1.3.2",
  "block",
  "core-foundation 0.9.3",
  "core-graphics-types",
@@ -497,55 +539,62 @@ dependencies = [
 ]
 
 [[package]]
-name = "codespan-reporting"
-version = "0.11.1"
+name = "combine"
+version = "4.6.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3538270d33cc669650c4b093848450d380def10c331d38c768e34cac80576e6e"
+checksum = "2a604e93b79d1808327a6fca85a6f2d69de66461e7620f5a4cbf5fb4d1d7c948"
 dependencies = [
- "termcolor",
- "unicode-width",
+ "bytes",
+ "memchr",
 ]
 
 [[package]]
-name = "color_quant"
-version = "1.1.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3d7b894f5411737b7867f4827955924d7c254fc9f4d91a6aad6b097804b1018b"
-
-[[package]]
-name = "concurrent-queue"
-version = "1.2.2"
+name = "compact_str"
+version = "0.7.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "30ed07550be01594c6026cff2a1d7fe9c8f683caa798e12b68694ac9e88286a3"
+checksum = "f86b9c4c00838774a6d902ef931eff7470720c51d90c2e32cfe15dc304737b3f"
 dependencies = [
- "cache-padded",
+ "castaway",
+ "cfg-if 1.0.0",
+ "itoa",
+ "ryu",
+ "serde",
+ "static_assertions",
 ]
 
 [[package]]
-name = "const_format"
-version = "0.2.23"
+name = "convert_case"
+version = "0.4.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0936ffe6d0c8d6a51b3b0a73b2acbe925d786f346cf45bfddc8341d79fb7dc8a"
-dependencies = [
- "const_format_proc_macros",
-]
+checksum = "6245d59a3e82a7fc217c5828a6692dbc6dfb63a0c8c90495621f7b9d79704a0e"
 
 [[package]]
-name = "const_format_proc_macros"
-version = "0.2.22"
+name = "cookie"
+version = "0.17.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ef196d5d972878a48da7decb7686eded338b4858fbabeed513d63a7c98b2b82d"
+checksum = "7efb37c3e1ccb1ff97164ad95ac1606e8ccd35b3fa0a7d99a304c7f4a428cc24"
 dependencies = [
- "proc-macro2",
- "quote",
- "unicode-xid",
+ "percent-encoding",
+ "time",
+ "version_check",
 ]
 
 [[package]]
-name = "copyless"
-version = "0.1.5"
+name = "cookie_store"
+version = "0.20.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a2df960f5d869b2dd8532793fde43eb5427cceb126c929747a26823ab0eeb536"
+checksum = "387461abbc748185c3a6e1673d826918b450b87ff22639429c694619a83b6cf6"
+dependencies = [
+ "cookie",
+ "idna 0.3.0",
+ "log",
+ "publicsuffix",
+ "serde",
+ "serde_derive",
+ "serde_json",
+ "time",
+ "url",
+]
 
 [[package]]
 name = "core-foundation"
@@ -585,7 +634,7 @@ version = "0.19.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "b3889374e6ea6ab25dba90bb5d96202f61108058361f6dc72e8b03e6f8bbe923"
 dependencies = [
- "bitflags",
+ "bitflags 1.3.2",
  "core-foundation 0.7.0",
  "foreign-types",
  "libc",
@@ -597,7 +646,7 @@ version = "0.22.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "2581bbab3b8ffc6fcbd550bf46c355135d16e9ff2a6ea032ad6b9bf1d7efe4fb"
 dependencies = [
- "bitflags",
+ "bitflags 1.3.2",
  "core-foundation 0.9.3",
  "core-graphics-types",
  "foreign-types",
@@ -610,25 +659,13 @@ version = "0.1.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "3a68b68b3446082644c91ac778bf50cd4104bfb002b5a6a7c44cca5a2c70788b"
 dependencies = [
- "bitflags",
+ "bitflags 1.3.2",
  "core-foundation 0.9.3",
  "foreign-types",
  "libc",
 ]
 
 [[package]]
-name = "core-text"
-version = "19.2.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "99d74ada66e07c1cefa18f8abfba765b486f250de2e4a999e5727fc0dd4b4a25"
-dependencies = [
- "core-foundation 0.9.3",
- "core-graphics 0.22.3",
- "foreign-types",
- "libc",
-]
-
-[[package]]
 name = "core-video-sys"
 version = "0.1.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -642,125 +679,133 @@ dependencies = [
 ]
 
 [[package]]
-name = "crc32fast"
-version = "1.3.2"
+name = "coreaudio-rs"
+version = "0.10.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b540bd8bc810d3885c6ea91e2018302f68baba2129ab3e88f32389ee9370880d"
+checksum = "11894b20ebfe1ff903cbdc52259693389eea03b94918a2def2c30c3bf227ad88"
 dependencies = [
- "cfg-if 1.0.0",
+ "bitflags 1.3.2",
+ "coreaudio-sys",
 ]
 
 [[package]]
-name = "criterion"
-version = "0.3.5"
+name = "coreaudio-sys"
+version = "0.2.10"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1604dafd25fba2fe2d5895a9da139f8dc9b319a5fe5354ca137cbbce4e178d10"
+checksum = "3dff444d80630d7073077d38d40b4501fd518bd2b922c2a55edcc8b0f7be57e6"
 dependencies = [
- "atty",
- "cast",
- "clap",
- "criterion-plot",
- "csv",
- "itertools",
- "lazy_static",
- "num-traits",
- "oorandom",
- "plotters",
- "rayon",
- "regex",
- "serde",
- "serde_cbor",
- "serde_derive",
- "serde_json",
- "tinytemplate",
- "walkdir",
+ "bindgen",
 ]
 
 [[package]]
-name = "criterion-plot"
-version = "0.4.4"
+name = "cpal"
+version = "0.13.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d00996de9f2f7559f7f4dc286073197f83e92256a59ed395f9aac01fe717da57"
+checksum = "74117836a5124f3629e4b474eed03e479abaf98988b4bb317e29f08cfe0e4116"
 dependencies = [
- "cast",
- "itertools",
+ "alsa",
+ "core-foundation-sys 0.8.3",
+ "coreaudio-rs",
+ "jni",
+ "js-sys",
+ "lazy_static",
+ "libc",
+ "mach",
+ "ndk 0.6.0",
+ "ndk-glue 0.6.1",
+ "nix 0.23.2",
+ "oboe",
+ "parking_lot 0.11.2",
+ "stdweb",
+ "thiserror",
+ "web-sys",
+ "winapi",
 ]
 
 [[package]]
-name = "crossbeam-channel"
-version = "0.5.4"
+name = "cpufeatures"
+version = "0.2.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5aaa7bd5fb665c6864b5f963dd9097905c54125909c7aa94c9e18507cdbe6c53"
+checksum = "28d997bd5e24a5928dd43e46dc529867e207907fe0b239c3477d924f7f2ca320"
 dependencies = [
- "cfg-if 1.0.0",
- "crossbeam-utils",
+ "libc",
 ]
 
 [[package]]
-name = "crossbeam-deque"
-version = "0.8.1"
+name = "crc32fast"
+version = "1.3.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6455c0ca19f0d2fbf751b908d5c55c1f5cbc65e03c4225427254b46890bdde1e"
+checksum = "b540bd8bc810d3885c6ea91e2018302f68baba2129ab3e88f32389ee9370880d"
 dependencies = [
  "cfg-if 1.0.0",
- "crossbeam-epoch",
- "crossbeam-utils",
 ]
 
 [[package]]
-name = "crossbeam-epoch"
-version = "0.9.8"
+name = "critical-section"
+version = "1.1.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1145cf131a2c6ba0615079ab6a638f7e1973ac9c2634fcbeaaad6114246efe8c"
+checksum = "7059fff8937831a9ae6f0fe4d658ffabf58f2ca96aa9dec1c889f936f705f216"
+
+[[package]]
+name = "crossterm"
+version = "0.27.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "f476fe445d41c9e991fd07515a6f463074b782242ccf4a5b7b1d1012e70824df"
 dependencies = [
- "autocfg",
- "cfg-if 1.0.0",
- "crossbeam-utils",
- "lazy_static",
- "memoffset",
- "scopeguard",
+ "bitflags 2.4.2",
+ "crossterm_winapi",
+ "libc",
+ "mio",
+ "parking_lot 0.12.0",
+ "signal-hook",
+ "signal-hook-mio",
+ "winapi",
 ]
 
 [[package]]
-name = "crossbeam-utils"
-version = "0.8.8"
+name = "crossterm_winapi"
+version = "0.9.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0bf124c720b7686e3c2663cf54062ab0f68a88af2fb6a030e87e30bf721fcb38"
+checksum = "acdd7c62a3665c7f6830a51635d9ac9b23ed385797f70a83bb8bafe9c572ab2b"
 dependencies = [
- "cfg-if 1.0.0",
- "lazy_static",
+ "winapi",
 ]
 
 [[package]]
-name = "csv"
-version = "1.1.6"
+name = "crypto-common"
+version = "0.1.6"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "22813a6dc45b335f9bade10bf7271dc477e81113e89eb251a0bc2a8a81c536e1"
+checksum = "1bfb12502f3fc46cca1bb51ac28df9d618d813cdc3d2f25b9fe775a34af26bb3"
 dependencies = [
- "bstr",
- "csv-core",
- "itoa 0.4.8",
- "ryu",
- "serde",
+ "generic-array",
+ "typenum",
 ]
 
 [[package]]
-name = "csv-core"
-version = "0.1.10"
+name = "cssparser"
+version = "0.29.6"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2b2466559f260f48ad25fe6317b3c8dac77b5bdb5763ac7d9d6103530663bc90"
+checksum = "f93d03419cb5950ccfd3daf3ff1c7a36ace64609a1a8746d493df1ca0afde0fa"
 dependencies = [
- "memchr",
+ "cssparser-macros",
+ "dtoa-short",
+ "itoa",
+ "matches",
+ "phf 0.10.1",
+ "proc-macro2",
+ "quote",
+ "smallvec",
+ "syn 1.0.99",
 ]
 
 [[package]]
-name = "ctor"
-version = "0.1.22"
+name = "cssparser-macros"
+version = "0.6.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f877be4f7c9f246b183111634f75baa039715e3f46ce860677d3b19a69fb229c"
+checksum = "13b588ba4ac1a99f7f2964d24b3d896ddc6bf847ee3855dbd4366f058cfcd331"
 dependencies = [
  "quote",
- "syn",
+ "syn 2.0.48",
 ]
 
 [[package]]
@@ -770,21 +815,10 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "b365fabc795046672053e29c954733ec3b05e4be654ab130fe8f1f94d7051f35"
 
 [[package]]
-name = "d3d12"
-version = "0.4.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2daefd788d1e96e0a9d66dee4b828b883509bc3ea9ce30665f04c3246372690c"
-dependencies = [
- "bitflags",
- "libloading",
- "winapi",
-]
-
-[[package]]
 name = "darling"
-version = "0.13.4"
+version = "0.13.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a01d95850c592940db9b8194bc39f4bc0e89dee5c4265e4b1807c34a9aba453c"
+checksum = "d0d720b8683f8dd83c65155f0530560cba68cd2bf395f6513a483caee57ff7f4"
 dependencies = [
  "darling_core",
  "darling_macro",
@@ -792,65 +826,69 @@ dependencies = [
 
 [[package]]
 name = "darling_core"
-version = "0.13.4"
+version = "0.13.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "859d65a907b6852c9361e3185c862aae7fafd2887876799fa55f5f99dc40d610"
+checksum = "7a340f241d2ceed1deb47ae36c4144b2707ec7dd0b649f894cb39bb595986324"
 dependencies = [
  "fnv",
  "ident_case",
  "proc-macro2",
  "quote",
  "strsim",
- "syn",
+ "syn 1.0.99",
 ]
 
 [[package]]
 name = "darling_macro"
-version = "0.13.4"
+version = "0.13.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9c972679f83bdf9c42bd905396b6c3588a843a17f0f16dfcfa3e2c5d57441835"
+checksum = "72c41b3b7352feb3211a0d743dc5700a4e3b60f51bd2b368892d1e0f9a95f44b"
 dependencies = [
  "darling_core",
  "quote",
- "syn",
+ "syn 1.0.99",
 ]
 
 [[package]]
-name = "data-url"
-version = "0.1.1"
+name = "dashmap"
+version = "5.5.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3a30bfce702bcfa94e906ef82421f2c0e61c076ad76030c16ee5d2e9a32fe193"
+checksum = "978747c1d849a7d2ee5e8adc0159961c48fb7e5db2f06af6723b80123bb53856"
 dependencies = [
- "matches",
+ "cfg-if 1.0.0",
+ "hashbrown 0.14.3",
+ "lock_api",
+ "once_cell",
+ "parking_lot_core 0.9.9",
 ]
 
 [[package]]
-name = "deflate"
-version = "0.7.20"
+name = "dbus"
+version = "0.9.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "707b6a7b384888a70c8d2e8650b3e60170dfc6a67bb4aa67b6dfca57af4bedb4"
+checksum = "de0a745c25b32caa56b82a3950f5fec7893a960f4c10ca3b02060b0c38d8c2ce"
 dependencies = [
- "adler32",
- "byteorder",
+ "libc",
+ "libdbus-sys",
+ "winapi",
 ]
 
 [[package]]
-name = "deflate"
-version = "0.8.6"
+name = "dbus-crossroads"
+version = "0.5.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "73770f8e1fe7d64df17ca66ad28994a0a623ea497fa69486e14984e715c5d174"
+checksum = "a5d83c4b78f7c7d0dec4859d286665a06858a607ba406c91a36316ff36918141"
 dependencies = [
- "adler32",
- "byteorder",
+ "dbus",
 ]
 
 [[package]]
-name = "deflate"
-version = "1.0.0"
+name = "deranged"
+version = "0.3.11"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c86f7e25f518f4b81808a2cf1c50996a61f5c2eb394b2393bd87f2a4780a432f"
+checksum = "b42b6fa04a440b495c8b04d0e71b707c585f83cb9cb28cf8cd0d976c315e31b4"
 dependencies = [
- "adler32",
+ "powerfmt",
 ]
 
 [[package]]
@@ -861,72 +899,51 @@ checksum = "fcc3dd5e9e9c0b295d6e1e4d811fb6f157d5ffd784b8d202fc62eac8035a770b"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn",
+ "syn 1.0.99",
 ]
 
 [[package]]
-name = "diff"
-version = "0.1.12"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0e25ea47919b1560c4e3b7fe0aaab9becf5b84a10325ddf7db0f0ba5e1026499"
-
-[[package]]
-name = "digest"
-version = "0.8.1"
+name = "derive_more"
+version = "0.99.17"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f3d0c8c8752312f9713efd397ff63acb9f85585afbf179282e720e7704954dd5"
+checksum = "4fb810d30a7c1953f91334de7244731fc3f3c10d7fe163338a35b9f640960321"
 dependencies = [
- "generic-array",
+ "convert_case",
+ "proc-macro2",
+ "quote",
+ "rustc_version",
+ "syn 1.0.99",
 ]
 
 [[package]]
-name = "dirs"
-version = "3.0.2"
+name = "digest"
+version = "0.10.7"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "30baa043103c9d0c2a57cf537cc2f35623889dc0d405e6c3cccfadbc81c71309"
+checksum = "9ed9a281f7bc9b7576e61468ba615a66a5c8cfdff42420a70aa82701a3b1e292"
 dependencies = [
- "dirs-sys",
+ "block-buffer",
+ "crypto-common",
 ]
 
 [[package]]
-name = "dirs"
-version = "4.0.0"
+name = "directories"
+version = "5.0.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ca3aa72a6f96ea37bbc5aa912f6788242832f75369bdfdadcb0e38423f100059"
+checksum = "9a49173b84e034382284f27f1af4dcbbd231ffa358c0fe316541a7337f376a35"
 dependencies = [
  "dirs-sys",
 ]
 
 [[package]]
-name = "dirs-next"
-version = "2.0.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b98cf8ebf19c3d1b223e151f99a4f9f0690dca41414773390fc824184ac833e1"
-dependencies = [
- "cfg-if 1.0.0",
- "dirs-sys-next",
-]
-
-[[package]]
 name = "dirs-sys"
-version = "0.3.7"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1b1d1d91c932ef41c0f2663aa8b0ca0342d444d842c06914aa0a7e352d0bada6"
-dependencies = [
- "libc",
- "redox_users",
- "winapi",
-]
-
-[[package]]
-name = "dirs-sys-next"
-version = "0.1.2"
+version = "0.4.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4ebda144c4fe02d1f7ea1a7d9641b6fc6b580adcfa024ae48797ecdeb6825b4d"
+checksum = "520f05a5cbd335fae5a99ff7a6ab8627577660ee5cfd6a94a6a929b52ff0321c"
 dependencies = [
  "libc",
+ "option-ext",
  "redox_users",
- "winapi",
+ "windows-sys 0.48.0",
 ]
 
 [[package]]
@@ -936,19 +953,24 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "bd0c93bb4b0c6d9b77f4435b0ae98c24d17f1c45b2ff844c6151a07256ca923b"
 
 [[package]]
-name = "dlib"
-version = "0.5.0"
+name = "displaydoc"
+version = "0.2.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ac1b7517328c04c2aa68422fc60a41b92208182142ed04a25879c26c8f878794"
+checksum = "487585f4d0c6655fe74905e2504d8ad6908e4db67f744eb140876906c2f3175d"
 dependencies = [
- "libloading",
+ "proc-macro2",
+ "quote",
+ "syn 2.0.48",
 ]
 
 [[package]]
-name = "dlv-list"
-version = "0.3.0"
+name = "dlib"
+version = "0.5.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0688c2a7f92e427f44895cd63841bff7b29f8d7a1648b9e7e07a4a365b2e1257"
+checksum = "330c60081dcc4c72131f8eb70510f1ac07223e5d4163db481a04a0befcffa412"
+dependencies = [
+ "libloading 0.8.1",
+]
 
 [[package]]
 name = "downcast-rs"
@@ -957,166 +979,97 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "9ea835d29036a4087793836fa931b08837ad5e957da9e23886b29586fb9b6650"
 
 [[package]]
-name = "dwrote"
-version = "0.11.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "439a1c2ba5611ad3ed731280541d36d2e9c4ac5e7fb818a27b604bdc5a6aa65b"
-dependencies = [
- "lazy_static",
- "libc",
- "winapi",
- "wio",
-]
-
-[[package]]
-name = "easy-parallel"
-version = "3.2.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6907e25393cdcc1f4f3f513d9aac1e840eb1cc341a0fccb01171f7d14d10b946"
-
-[[package]]
-name = "either"
-version = "1.6.1"
+name = "dtoa"
+version = "1.0.9"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e78d4f1cc4ae33bbfc157ed5d5a5ef3bc29227303d595861deb238fcec4e9457"
+checksum = "dcbb2bf8e87535c23f7a8a321e364ce21462d0ff10cb6407820e8e96dfff6653"
 
 [[package]]
-name = "encoding_rs"
-version = "0.8.31"
+name = "dtoa-short"
+version = "0.3.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9852635589dc9f9ea1b6fe9f05b50ef208c85c834a562f0c6abb1c475736ec2b"
+checksum = "dbaceec3c6e4211c79e7b1800fb9680527106beb2f9c51904a3210c03a448c74"
 dependencies = [
- "cfg-if 1.0.0",
+ "dtoa",
 ]
 
 [[package]]
-name = "enumflags2"
-version = "0.7.5"
+name = "ego-tree"
+version = "0.6.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e75d4cd21b95383444831539909fbb14b9dc3fdceb2a6f5d36577329a1f55ccb"
-dependencies = [
- "enumflags2_derive",
- "serde",
-]
+checksum = "3a68a4904193147e0a8dec3314640e6db742afd5f6e634f428a6af230d9b3591"
 
 [[package]]
-name = "enumflags2_derive"
-version = "0.7.4"
+name = "either"
+version = "1.9.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f58dc3c5e468259f19f2d46304a6b28f1c3d034442e14b322d2b850e36f6d5ae"
-dependencies = [
- "proc-macro2",
- "quote",
- "syn",
-]
+checksum = "a26ae43d7bcc3b814de94796a5e736d4029efb0ee900c12e2d54c993ad1a1e07"
 
 [[package]]
-name = "env_logger"
-version = "0.8.4"
+name = "embedded-io"
+version = "0.4.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a19187fea3ac7e84da7dacf48de0c45d63c6a76f9490dae389aead16c243fce3"
-dependencies = [
- "atty",
- "humantime",
- "log",
- "regex",
- "termcolor",
-]
+checksum = "ef1a6892d9eef45c8fa6b9e0086428a2cca8491aca8f787c534a3d6d0bcb3ced"
 
 [[package]]
-name = "error-code"
-version = "2.3.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "64f18991e7bf11e7ffee451b5318b5c1a73c52d0d0ada6e5a3017c8c1ced6a21"
-dependencies = [
- "libc",
- "str-buf",
-]
-
-[[package]]
-name = "euclid"
-version = "0.22.7"
+name = "encoding_rs"
+version = "0.8.30"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b52c2ef4a78da0ba68fbe1fd920627411096d2ac478f7f4c9f3a54ba6705bade"
+checksum = "7896dc8abb250ffdda33912550faa54c88ec8b998dec0b2c55ab224921ce11df"
 dependencies = [
- "num-traits",
+ "cfg-if 1.0.0",
 ]
 
 [[package]]
-name = "event-listener"
-version = "2.5.2"
+name = "equivalent"
+version = "1.0.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "77f3309417938f28bf8228fcff79a4a37103981e3e186d2ccd19c74b38f4eb71"
+checksum = "5443807d6dff69373d433ab9ef5378ad8df50ca6298caf15de6e52e24aaf54d5"
 
 [[package]]
-name = "expat-sys"
-version = "2.1.6"
+name = "errno"
+version = "0.3.8"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "658f19728920138342f68408b7cf7644d90d4784353d8ebc32e7e8663dbe45fa"
+checksum = "a258e46cdc063eb8519c00b9fc845fc47bcfca4130e2f08e88665ceda8474245"
 dependencies = [
- "cmake",
- "pkg-config",
+ "libc",
+ "windows-sys 0.52.0",
 ]
 
 [[package]]
-name = "fake-simd"
-version = "0.1.2"
+name = "fast-float"
+version = "0.2.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e88a8acf291dafb59c2d96e8f59828f3838bb1a70398823ade51a84de6a6deed"
+checksum = "95765f67b4b18863968b4a1bd5bb576f732b29a4a28c7cd84c09fa3e2875f33c"
 
 [[package]]
 name = "fastrand"
-version = "1.7.0"
+version = "2.0.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c3fcf0cee53519c866c09b5de1f6c56ff9d647101f81c1964fa632e148896cdf"
-dependencies = [
- "instant",
-]
-
-[[package]]
-name = "find-crate"
-version = "0.6.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "59a98bbaacea1c0eb6a0876280051b892eb73594fd90cf3b20e9c817029c57d2"
-dependencies = [
- "toml",
-]
+checksum = "25cbce373ec4653f1a01a31e8a5e5ec0c622dc27ff9c4e6606eefef5cbbed4a5"
 
 [[package]]
 name = "flate2"
-version = "1.0.23"
+version = "1.0.22"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b39522e96686d38f4bc984b9198e3a0613264abaebaff2c5c918bfa6b6da09af"
+checksum = "1e6988e897c1c9c485f43b47a529cef42fde0547f9d8d41a7062518f1d8fc53f"
 dependencies = [
  "cfg-if 1.0.0",
  "crc32fast",
  "libc",
- "miniz_oxide 0.5.1",
+ "miniz_oxide 0.4.4",
 ]
 
 [[package]]
-name = "float-cmp"
-version = "0.9.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "98de4bbd547a563b716d8dfa9aad1cb19bfab00f4fa09a6a4ed21dbcf44ce9c4"
-
-[[package]]
-name = "float-ord"
-version = "0.2.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7bad48618fdb549078c333a7a8528acb57af271d0433bdecd523eb620628364e"
-
-[[package]]
 name = "flume"
-version = "0.10.12"
+version = "0.11.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "843c03199d0c0ca54bc1ea90ac0d507274c28abcc4f691ae8b4eaa375087c76a"
+checksum = "55ac459de2512911e4b674ce33cf20befaba382d05b62b008afc1c8b57cbf181"
 dependencies = [
  "futures-core",
  "futures-sink",
  "nanorand",
- "pin-project 1.0.10",
- "spin 0.9.3",
+ "spin 0.9.8",
 ]
 
 [[package]]
@@ -1126,42 +1079,6 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "3f9eec918d3f24069decb9af1554cad7c880e2da24a9afd88aca000531ab82c1"
 
 [[package]]
-name = "font-kit"
-version = "0.10.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "46c9a156ec38864999bc9c4156e5f3b50224d4a5578028a64e5a3875caa9ee28"
-dependencies = [
- "bitflags",
- "byteorder",
- "core-foundation 0.9.3",
- "core-graphics 0.22.3",
- "core-text",
- "dirs-next",
- "dwrote",
- "float-ord",
- "freetype",
- "lazy_static",
- "libc",
- "log",
- "pathfinder_geometry",
- "pathfinder_simd",
- "servo-fontconfig",
- "walkdir",
- "winapi",
-]
-
-[[package]]
-name = "fontdb"
-version = "0.6.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1d66551cc28351f0bc6a73da86459ee7765caaad03ce284f2dc36472dbf539cd"
-dependencies = [
- "log",
- "memmap2",
- "ttf-parser 0.12.3",
-]
-
-[[package]]
 name = "foreign-types"
 version = "0.3.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -1177,87 +1094,25 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "00b0228411908ca8685dba7fc2cdd70ec9990a6e753e89b6ac91a84c40fbaf4b"
 
 [[package]]
-name = "fork"
-version = "0.1.19"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "57b4f1a740392e495821244cc1658d86496ac6e67a47da67e243ed401b937717"
-dependencies = [
- "libc",
-]
-
-[[package]]
 name = "form_urlencoded"
-version = "1.0.1"
+version = "1.2.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5fc25a87fa4fd2094bffb06925852034d90a17f0d1e05197d4956d3555752191"
+checksum = "e13624c2627564efccf4934284bdd98cbaa14e79b0b5a141218e507b3a823456"
 dependencies = [
- "matches",
  "percent-encoding",
 ]
 
 [[package]]
-name = "freedesktop-desktop-entry"
-version = "0.5.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "45157175a725e81f3f594382430b6b78af5f8f72db9bd51b94f0785f80fc6d29"
-dependencies = [
- "dirs 3.0.2",
- "gettext-rs",
- "memchr",
- "thiserror",
- "xdg",
-]
-
-[[package]]
-name = "freedesktop-icons"
-version = "0.2.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "420b2cb0cf0ab0d5f34c068830f3b5c17b378ab3c2acaf7ca4bfde671d70be51"
-dependencies = [
- "dirs 4.0.0",
- "once_cell",
- "rust-ini",
- "thiserror",
-]
-
-[[package]]
-name = "freetype"
-version = "0.7.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "bee38378a9e3db1cc693b4f88d166ae375338a0ff75cb8263e1c601d51f35dc6"
-dependencies = [
- "freetype-sys",
- "libc",
-]
-
-[[package]]
-name = "freetype-sys"
-version = "0.13.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a37d4011c0cc628dfa766fcc195454f4b068d7afdc2adfd28861191d866e731a"
-dependencies = [
- "cmake",
- "libc",
- "pkg-config",
-]
-
-[[package]]
-name = "fs2"
-version = "0.4.3"
+name = "futf"
+version = "0.1.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9564fc758e15025b46aa6643b1b77d047d1a56a1aea6e01002ac0c7026876213"
+checksum = "df420e2e84819663797d1ec6544b13c5be84629e7bb00dc960d6917db2987843"
 dependencies = [
- "libc",
- "winapi",
+ "mac",
+ "new_debug_unreachable",
 ]
 
 [[package]]
-name = "fuchsia-cprng"
-version = "0.1.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a06f77d526c1a601b7c4cdd98f54b5eaabffc14d5f2f0296febdc7f357c6d3ba"
-
-[[package]]
 name = "futures"
 version = "0.3.21"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -1274,9 +1129,9 @@ dependencies = [
 
 [[package]]
 name = "futures-channel"
-version = "0.3.21"
+version = "0.3.25"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c3083ce4b914124575708913bca19bfe887522d6e2e6d0952943f5eac4a74010"
+checksum = "52ba265a92256105f45b719605a571ffe2d1f0fea3807304b522c1d778f79eed"
 dependencies = [
  "futures-core",
  "futures-sink",
@@ -1284,9 +1139,9 @@ dependencies = [
 
 [[package]]
 name = "futures-core"
-version = "0.3.21"
+version = "0.3.25"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0c09fd04b7e4073ac7156a9539b57a484a8ea920f79c7c675d05d289ab6110d3"
+checksum = "04909a7a7e4633ae6c4a9ab280aeb86da1236243a77b694a49eacd659a4bd3ac"
 
 [[package]]
 name = "futures-executor"
@@ -1297,67 +1152,42 @@ dependencies = [
  "futures-core",
  "futures-task",
  "futures-util",
- "num_cpus",
 ]
 
 [[package]]
 name = "futures-io"
-version = "0.3.21"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "fc4045962a5a5e935ee2fdedaa4e08284547402885ab326734432bed5d12966b"
-
-[[package]]
-name = "futures-lite"
-version = "1.12.0"
+version = "0.3.25"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7694489acd39452c77daa48516b894c153f192c3578d5a839b62c58099fcbf48"
-dependencies = [
- "fastrand",
- "futures-core",
- "futures-io",
- "memchr",
- "parking",
- "pin-project-lite",
- "waker-fn",
-]
+checksum = "00f5fb52a06bdcadeb54e8d3671f8888a39697dcb0b81b23b55174030427f4eb"
 
 [[package]]
 name = "futures-macro"
-version = "0.3.21"
+version = "0.3.25"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "33c1e13800337f4d4d7a316bf45a567dbcb6ffe087f16424852d97e97a91f512"
+checksum = "bdfb8ce053d86b91919aad980c220b1fb8401a9394410e1c289ed7e66b61835d"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn",
-]
-
-[[package]]
-name = "futures-micro"
-version = "0.5.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b460264b3593d68b16a7bc35f7bc226ddfebdf9a1c8db1ed95d5cc6b7168c826"
-dependencies = [
- "pin-project-lite",
+ "syn 1.0.99",
 ]
 
 [[package]]
 name = "futures-sink"
-version = "0.3.21"
+version = "0.3.25"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "21163e139fa306126e6eedaf49ecdb4588f939600f0b1e770f4205ee4b7fa868"
+checksum = "39c15cf1a4aa79df40f1bb462fb39676d0ad9e366c2a33b590d7c66f4f81fcf9"
 
 [[package]]
 name = "futures-task"
-version = "0.3.21"
+version = "0.3.25"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "57c66a976bf5909d801bbef33416c41372779507e7a6b3a5e25e4749c58f776a"
+checksum = "2ffb393ac5d9a6eaa9d3fdf37ae2776656b706e200c8e16b1bdb227f5198e6ea"
 
 [[package]]
 name = "futures-util"
-version = "0.3.21"
+version = "0.3.25"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d8b7abd5d659d9b90c8cba917f6ec750a74e2dc23902ef9cd4cc8c8b22e6036a"
+checksum = "197676987abd2f9cadff84926f410af1c183608d36641465df73ae8211dc65d6"
 dependencies = [
  "futures-channel",
  "futures-core",
@@ -1372,18 +1202,6 @@ dependencies = [
 ]
 
 [[package]]
-name = "futures_codec"
-version = "0.4.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ce54d63f8b0c75023ed920d46fd71d0cbbb830b0ee012726b5b4f506fb6dea5b"
-dependencies = [
- "bytes 0.5.6",
- "futures",
- "memchr",
- "pin-project 0.4.29",
-]
-
-[[package]]
 name = "fxhash"
 version = "0.2.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -1393,31 +1211,22 @@ dependencies = [
 ]
 
 [[package]]
-name = "gen-z"
-version = "0.1.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0e87038e64f38cb7fcd57f54c8d6654ad65712babbf70f38d1834d3150ad2415"
-dependencies = [
- "futures",
-]
-
-[[package]]
 name = "generic-array"
-version = "0.12.4"
+version = "0.14.6"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ffdf9f34f1447443d37393cc6c2b8313aebddcd96906caf34e54c68d8e57d7bd"
+checksum = "bff49e947297f3312447abdca79f45f4738097cc82b06e72054d2223f601f1b9"
 dependencies = [
  "typenum",
+ "version_check",
 ]
 
 [[package]]
-name = "gethostname"
-version = "0.2.3"
+name = "getopts"
+version = "0.2.21"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c1ebd34e35c46e00bb73e81363248d627782724609fe1b6396f553f68fe3862e"
+checksum = "14dbbfd5c71d70241ecf9e6f13737f7b5ce823821063188d7e46c41d371eebd5"
 dependencies = [
- "libc",
- "winapi",
+ "unicode-width",
 ]
 
 [[package]]
@@ -1433,163 +1242,36 @@ dependencies = [
 
 [[package]]
 name = "getrandom"
-version = "0.2.6"
+version = "0.2.12"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9be70c98951c83b8d2f8f60d7065fa6d5146873094452a1008da8c2f1e4205ad"
+checksum = "190092ea657667030ac6a35e305e62fc4dd69fd98ac98631e5d3a2b1575a12b5"
 dependencies = [
  "cfg-if 1.0.0",
  "js-sys",
  "libc",
- "wasi 0.10.2+wasi-snapshot-preview1",
- "wasm-bindgen",
-]
-
-[[package]]
-name = "gettext-rs"
-version = "0.7.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e49ea8a8fad198aaa1f9655a2524b64b70eb06b2f3ff37da407566c93054f364"
-dependencies = [
- "gettext-sys",
- "locale_config",
-]
-
-[[package]]
-name = "gettext-sys"
-version = "0.21.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c63ce2e00f56a206778276704bbe38564c8695249fdc8f354b4ef71c57c3839d"
-dependencies = [
- "cc",
- "temp-dir",
-]
-
-[[package]]
-name = "gif"
-version = "0.11.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c3a7187e78088aead22ceedeee99779455b23fc231fe13ec443f99bb71694e5b"
-dependencies = [
- "color_quant",
- "weezl",
-]
-
-[[package]]
-name = "glam"
-version = "0.10.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "579160312273c954cc51bd440f059dde741029ac8daf8c84fece76cb77f62c15"
-dependencies = [
- "version_check",
-]
-
-[[package]]
-name = "glow"
-version = "0.11.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d8bd5877156a19b8ac83a29b2306fe20537429d318f3ff0a1a2119f8d9c61919"
-dependencies = [
- "js-sys",
- "slotmap",
+ "wasi 0.11.0+wasi-snapshot-preview1",
  "wasm-bindgen",
- "web-sys",
 ]
 
 [[package]]
-name = "glyph_brush"
-version = "0.7.4"
+name = "gimli"
+version = "0.28.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a69c65dd1f1fbb6209aa00f78636e436ad0a55b7d8e5de886d00720dcad9c6e2"
-dependencies = [
- "glyph_brush_draw_cache",
- "glyph_brush_layout",
- "log",
- "ordered-float",
- "rustc-hash",
- "twox-hash",
-]
+checksum = "4271d37baee1b8c7e4b708028c57d816cf9d2434acb33a549475f78c181f6253"
 
 [[package]]
-name = "glyph_brush_draw_cache"
-version = "0.1.5"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6010675390f6889e09a21e2c8b575b3ee25667ea8237a8d59423f73cb8c28610"
-dependencies = [
- "ab_glyph",
- "crossbeam-channel",
- "crossbeam-deque",
- "linked-hash-map",
- "rayon",
- "rustc-hash",
-]
-
-[[package]]
-name = "glyph_brush_layout"
-version = "0.2.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "cc32c2334f00ca5ac3695c5009ae35da21da8c62d255b5b96d56e2597a637a38"
-dependencies = [
- "ab_glyph",
- "approx 0.5.1",
- "xi-unicode",
-]
-
-[[package]]
-name = "gpu-alloc"
-version = "0.5.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7fc59e5f710e310e76e6707f86c561dd646f69a8876da9131703b2f717de818d"
-dependencies = [
- "bitflags",
- "gpu-alloc-types",
-]
-
-[[package]]
-name = "gpu-alloc-types"
-version = "0.2.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "54804d0d6bc9d7f26db4eaec1ad10def69b599315f487d32c334a80d1efe67a5"
-dependencies = [
- "bitflags",
-]
-
-[[package]]
-name = "gpu-descriptor"
-version = "0.2.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a538f217be4d405ff4719a283ca68323cc2384003eca5baaa87501e821c81dda"
-dependencies = [
- "bitflags",
- "gpu-descriptor-types",
- "hashbrown 0.11.2",
-]
-
-[[package]]
-name = "gpu-descriptor-types"
-version = "0.1.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "363e3677e55ad168fef68cf9de3a4a310b53124c5e784c53a1d70e92d23f2126"
-dependencies = [
- "bitflags",
-]
-
-[[package]]
-name = "guillotiere"
-version = "0.6.2"
+name = "glob"
+version = "0.3.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b62d5865c036cb1393e23c50693df631d3f5d7bcca4c04fe4cc0fd592e74a782"
-dependencies = [
- "euclid",
- "svg_fmt",
-]
+checksum = "9b919933a397b79c37e33b77bb2aa3dc8eb6e165ad809e58ff75bc7db2e34574"
 
 [[package]]
 name = "h2"
-version = "0.3.13"
+version = "0.3.24"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "37a82c6d637fc9515a4694bbf1cb2457b79d81ce52b3108bdeea58b07dd34a57"
+checksum = "bb2c4422095b67ee78da96fbb51a4cc413b3b25883c7717ff7ca1ab31022c9c9"
 dependencies = [
- "bytes 1.1.0",
+ "bytes",
  "fnv",
  "futures-core",
  "futures-sink",
@@ -1603,37 +1285,29 @@ dependencies = [
 ]
 
 [[package]]
-name = "half"
-version = "1.8.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "eabb4a44450da02c90444cf74558da904edde8fb4e9035a9a6a4e15445af0bd7"
-
-[[package]]
 name = "hashbrown"
-version = "0.11.2"
+version = "0.13.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ab5ef0d4909ef3724cc8cce6ccc8572c5c817592e9285f5464f8e86f8bd3726e"
+checksum = "43a3c133739dddd0d2990f9a4bdf8eb4b21ef50e4851ca85ab661199821d510e"
 dependencies = [
  "ahash",
 ]
 
 [[package]]
 name = "hashbrown"
-version = "0.12.1"
+version = "0.14.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "db0d4cf898abf0081f964436dc980e96670a0f36863e4b83aaacdb65c9d7ccc3"
+checksum = "290f1a1d9242c78d09ce40a5e87e7554ee637af1351968159f4952f028f75604"
 dependencies = [
  "ahash",
+ "allocator-api2",
 ]
 
 [[package]]
 name = "heck"
-version = "0.3.3"
+version = "0.4.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6d621efb26863f0e9924c6ac577e8275e5e6b77455db64ffa6c65c904e9e132c"
-dependencies = [
- "unicode-segmentation",
-]
+checksum = "95505c38b4572b2d910cecb0281560f54b440a19336cbbcb27bf6ce6adc6f5a8"
 
 [[package]]
 name = "hermit-abi"
@@ -1651,20 +1325,28 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "7f24254aa9a54b5c858eaee2f5bccdb46aaf0e486a595ed5fd8f86ba55232a70"
 
 [[package]]
-name = "hexf-parse"
-version = "0.2.1"
+name = "html5ever"
+version = "0.26.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "dfa686283ad6dd069f105e5ab091b04c62850d3e4cf5d67debad1933f55023df"
+checksum = "bea68cab48b8459f17cf1c944c67ddc572d272d9f2b274140f223ecb1da4a3b7"
+dependencies = [
+ "log",
+ "mac",
+ "markup5ever",
+ "proc-macro2",
+ "quote",
+ "syn 1.0.99",
+]
 
 [[package]]
 name = "http"
-version = "0.2.7"
+version = "0.2.6"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ff8670570af52249509a86f5e3e18a08c60b177071826898fde8997cf5f6bfbb"
+checksum = "31f4c6746584866f0feabcc69893c5b51beef3831656a968ed7ae254cdc4fd03"
 dependencies = [
- "bytes 1.1.0",
+ "bytes",
  "fnv",
- "itoa 1.0.1",
+ "itoa",
 ]
 
 [[package]]
@@ -1673,16 +1355,16 @@ version = "0.4.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "1ff4f84919677303da5f147645dbea6b1881f368d03ac84e1dc09031ebd7b2c6"
 dependencies = [
- "bytes 1.1.0",
+ "bytes",
  "http",
  "pin-project-lite",
 ]
 
 [[package]]
 name = "httparse"
-version = "1.7.1"
+version = "1.8.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "496ce29bb5a52785b44e0f7ca2847ae0bb839c9bd28f69acac9b99d461c0c04c"
+checksum = "d897f394bad6a705d5f4104762e116a75639e470d80901eed05a860a95cb1904"
 
 [[package]]
 name = "httpdate"
@@ -1691,30 +1373,12 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "c4a1e36c821dbe04574f602848a19f742f4fb3c98d40449f11bcad18d6b17421"
 
 [[package]]
-name = "human-sort"
-version = "0.2.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "140a09c9305e6d5e557e2ed7cbc68e05765a7d4213975b87cb04920689cc6219"
-
-[[package]]
-name = "human_format"
-version = "1.0.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "86cce260d758a9aa3d7c4b99d55c815a540f8a37514ba6046ab6be402a157cb0"
-
-[[package]]
-name = "humantime"
-version = "2.1.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9a3a5bfb195931eeb336b2a7b4d761daec841b97f947d34394601737a7bba5e4"
-
-[[package]]
 name = "hyper"
-version = "0.14.18"
+version = "0.14.28"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b26ae0a80afebe130861d90abf98e3814a4f28a4c6ffeb5ab8ebb2be311e0ef2"
+checksum = "bf96e135eb83a2a8ddf766e426a841d8ddd7449d5f00d34ea02b41d2f19eef80"
 dependencies = [
- "bytes 1.1.0",
+ "bytes",
  "futures-channel",
  "futures-core",
  "futures-util",
@@ -1723,7 +1387,7 @@ dependencies = [
  "http-body",
  "httparse",
  "httpdate",
- "itoa 1.0.1",
+ "itoa",
  "pin-project-lite",
  "socket2",
  "tokio",
@@ -1734,10 +1398,11 @@ dependencies = [
 
 [[package]]
 name = "hyper-rustls"
-version = "0.23.0"
+version = "0.24.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d87c48c02e0dc5e3b849a2041db3029fd066650f8f717c07bf8ed78ccb895cac"
+checksum = "ec3efd23720e2049821a693cbc7e65ea87c72f1c58ff2f9522ff332b1491e590"
 dependencies = [
+ "futures-util",
  "http",
  "hyper",
  "rustls",
@@ -1746,131 +1411,155 @@ dependencies = [
 ]
 
 [[package]]
-name = "iced"
-version = "0.4.2"
+name = "hyper-tls"
+version = "0.5.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6025abe6b1056c9b5adad79c484c5fd8b7012e5230f3b0439a1294ade7ded7bf"
+checksum = "d6183ddfa99b85da61a140bea0efc93fdf56ceaa041b37d553518030827f9905"
 dependencies = [
- "iced_core",
- "iced_futures",
- "iced_graphics",
- "iced_native",
- "iced_wgpu",
- "iced_winit",
- "thiserror",
+ "bytes",
+ "hyper",
+ "native-tls",
+ "tokio",
+ "tokio-native-tls",
 ]
 
 [[package]]
-name = "iced_core"
-version = "0.5.0"
+name = "iana-time-zone"
+version = "0.1.60"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ccf9133ceb345ec640047d5597fb8aa88e9cf74ce2d0277a9a62e2d6ed4a8148"
+checksum = "e7ffbb5a1b541ea2561f8c41c087286cc091e21e556a4f09a8f6cbf17b69b141"
 dependencies = [
- "bitflags",
- "palette 0.6.0",
- "wasm-timer",
+ "android_system_properties",
+ "core-foundation-sys 0.8.3",
+ "iana-time-zone-haiku",
+ "js-sys",
+ "wasm-bindgen",
+ "windows-core",
 ]
 
 [[package]]
-name = "iced_futures"
-version = "0.4.0"
+name = "iana-time-zone-haiku"
+version = "0.1.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1a93ebc9bcad1745b0852f961c17f3311d8ad797dca5ec5d76c2f7b48922030d"
+checksum = "f31827a206f56af32e590ba56d5d2d085f558508192593743f16b2306495269f"
 dependencies = [
- "futures",
- "log",
- "tokio",
- "wasm-bindgen-futures",
- "wasm-timer",
+ "cc",
 ]
 
 [[package]]
-name = "iced_graphics"
-version = "0.3.0"
+name = "icu_collections"
+version = "1.2.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e5f5e700f76069666fe7eb920f715a46471a6b8063d8c237b17ff2c1d2f31ce5"
+checksum = "ef8302d8dfd6044d3ddb3f807a5ef3d7bbca9a574959c6d6e4dc39aa7012d0d5"
 dependencies = [
- "bytemuck",
- "font-kit",
- "glam",
- "iced_native",
- "iced_style",
- "raw-window-handle 0.4.3",
- "thiserror",
+ "displaydoc",
+ "serde",
+ "yoke",
+ "zerofrom",
+ "zerovec",
 ]
 
 [[package]]
-name = "iced_native"
-version = "0.5.0"
+name = "icu_locid"
+version = "1.2.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b7bde7e7c754a0579bb1565394c2167014a8e29824195aecb598cbdf69dba4c5"
+checksum = "3003f85dccfc0e238ff567693248c59153a46f4e6125ba4020b973cef4d1d335"
 dependencies = [
- "iced_core",
- "iced_futures",
- "iced_style",
- "num-traits",
- "twox-hash",
- "unicode-segmentation",
+ "displaydoc",
+ "litemap",
+ "serde",
+ "tinystr",
+ "writeable",
+ "zerovec",
 ]
 
 [[package]]
-name = "iced_style"
-version = "0.4.0"
+name = "icu_normalizer"
+version = "1.2.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a90028c94ab62c13cd3b6fb1499a593a51510d4729c5b4e8e60705b2b28c6bc2"
+checksum = "652869735c9fb9f5a64ba180ee16f2c848390469c116deef517ecc53f4343598"
 dependencies = [
- "iced_core",
+ "displaydoc",
+ "icu_collections",
+ "icu_properties",
+ "icu_provider",
+ "serde",
+ "smallvec",
+ "utf16_iter",
+ "utf8_iter",
+ "write16",
+ "zerovec",
 ]
 
 [[package]]
-name = "iced_wgpu"
-version = "0.5.0"
+name = "icu_properties"
+version = "1.2.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "eef85bef80e9a6ce3bd5e1c783661f4911424e922bfa30b2e600a33a1e5d5716"
+checksum = "ce0e1aa26851f16c9e04412a5911c86b7f8768dac8f8d4c5f1c568a7e5d7a434"
 dependencies = [
- "bitflags",
- "bytemuck",
- "futures",
- "glyph_brush",
- "guillotiere",
- "iced_graphics",
- "iced_native",
- "image",
- "kamadak-exif",
- "log",
- "raw-window-handle 0.4.3",
- "resvg",
- "tiny-skia",
- "usvg",
- "wgpu",
- "wgpu_glyph",
+ "displaydoc",
+ "icu_collections",
+ "icu_provider",
+ "serde",
+ "tinystr",
+ "zerovec",
 ]
 
 [[package]]
-name = "iced_winit"
-version = "0.4.0"
+name = "icu_provider"
+version = "1.2.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "72011b895e439e2ebad8f545720e3e97c7368ecfc47a23cbfeaa9508a98af90c"
+checksum = "8dc312a7b6148f7dfe098047ae2494d12d4034f48ade58d4f353000db376e305"
 dependencies = [
- "iced_futures",
- "iced_graphics",
- "iced_native",
- "log",
- "thiserror",
- "web-sys",
- "winapi",
- "window_clipboard",
- "winit",
+ "displaydoc",
+ "icu_locid",
+ "icu_provider_macros",
+ "postcard",
+ "serde",
+ "stable_deref_trait",
+ "writeable",
+ "yoke",
+ "zerofrom",
+ "zerovec",
 ]
 
 [[package]]
-name = "ico"
-version = "0.1.0"
+name = "icu_provider_adapters"
+version = "1.2.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6a4b3331534254a9b64095ae60d3dc2a8225a7a70229cd5888be127cdc1f6804"
+checksum = "f4ae1e2bd0c41728b77e7c46e9afdec5e2127d1eedacc684724667d50c126bd3"
 dependencies = [
- "byteorder",
- "png 0.11.0",
+ "icu_locid",
+ "icu_provider",
+ "serde",
+ "tinystr",
+ "yoke",
+ "zerovec",
+]
+
+[[package]]
+name = "icu_provider_blob"
+version = "1.2.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "fd364c9a01f791a4bc04a74cf2a1d01d9f6926a40fd5ae1c28004e1e70d8338b"
+dependencies = [
+ "icu_provider",
+ "postcard",
+ "serde",
+ "writeable",
+ "yoke",
+ "zerovec",
+]
+
+[[package]]
+name = "icu_provider_macros"
+version = "1.2.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "dd8b728b9421e93eff1d9f8681101b78fa745e0748c95c655c83f337044a7e10"
+dependencies = [
+ "proc-macro2",
+ "quote",
+ "syn 1.0.99",
 ]
 
 [[package]]
@@ -1881,56 +1570,49 @@ checksum = "b9e0384b61958566e926dc50660321d12159025e767c18e043daf26b70104c39"
 
 [[package]]
 name = "idna"
-version = "0.2.3"
+version = "0.3.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "418a0a6fab821475f634efe3ccc45c013f742efe03d853e8d3355d5cb850ecf8"
+checksum = "e14ddfc70884202db2244c223200c204c2bda1bc6e0998d11b5e024d657209e6"
 dependencies = [
- "matches",
  "unicode-bidi",
  "unicode-normalization",
 ]
 
 [[package]]
-name = "image"
-version = "0.23.14"
+name = "idna"
+version = "0.5.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "24ffcb7e7244a9bf19d35bf2883b9c080c4ced3c07a9895572178cdb8f13f6a1"
+checksum = "634d9b1461af396cad843f47fdba5597a4f9e6ddd4bfb6ff5d85028c25cb12f6"
 dependencies = [
- "bytemuck",
- "byteorder",
- "color_quant",
- "gif",
- "jpeg-decoder",
- "num-iter",
- "num-rational 0.3.2",
- "num-traits",
- "png 0.16.8",
+ "unicode-bidi",
+ "unicode-normalization",
 ]
 
 [[package]]
 name = "indexmap"
-version = "1.8.1"
+version = "2.2.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0f647032dfaa1f8b6dc29bd3edb7bbef4861b8b8007ebb118d6db284fd59f6ee"
+checksum = "824b2ae422412366ba479e8111fd301f7b5faece8149317bb81925979a53f520"
 dependencies = [
- "autocfg",
- "hashbrown 0.11.2",
+ "equivalent",
+ "hashbrown 0.14.3",
 ]
 
 [[package]]
-name = "inflate"
-version = "0.3.4"
+name = "indoc"
+version = "2.0.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f5f9f47468e9a76a6452271efadc88fe865a82be91fe75e6c0c57b87ccea59d4"
-dependencies = [
- "adler32",
-]
+checksum = "1e186cfbae8084e513daff4240b4797e342f988cecda4fb6c939150f96315fd8"
 
 [[package]]
-name = "inplace_it"
-version = "0.3.3"
+name = "inout"
+version = "0.1.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "90953f308a79fe6d62a4643e51f848fbfddcd05975a38e69fdf4ab86a7baf7ca"
+checksum = "a0c10553d664a4d0bcff9f4215d0aac67a639cc68ef660840afe309b807bc9f5"
+dependencies = [
+ "block-padding",
+ "generic-array",
+]
 
 [[package]]
 name = "instant"
@@ -1946,24 +1628,27 @@ dependencies = [
 
 [[package]]
 name = "ipnet"
-version = "2.5.0"
+version = "2.4.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "879d54834c8c76457ef4293a689b2a8c59b076067ad77b15efafbb05f92a592b"
+checksum = "35e70ee094dc02fd9c13fdad4940090f22dbd6ac7c9e7094a46cf0232a50bc7c"
 
 [[package]]
 name = "itertools"
-version = "0.10.3"
+version = "0.11.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a9a9d19fa1e79b6215ff29b9d6880b706147f16e9b1dbb1e4e5947b5b02bc5e3"
+checksum = "b1c173a5686ce8bfa551b3563d0c2170bf24ca44da99c7ca4bfdab5418c3fe57"
 dependencies = [
  "either",
 ]
 
 [[package]]
-name = "itoa"
-version = "0.4.8"
+name = "itertools"
+version = "0.12.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b71991ff56294aa922b450139ee08b3bfc70982c6b2c7562771375cf73542dd4"
+checksum = "ba291022dbbd398a455acf126c1e341954079855bc60dfdda641363bd6922569"
+dependencies = [
+ "either",
+]
 
 [[package]]
 name = "itoa"
@@ -1972,68 +1657,69 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "1aab8fc367588b89dcee83ab0fd66b72b50b72fa1904d7095045ace2b0c81c35"
 
 [[package]]
+name = "jni"
+version = "0.19.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "c6df18c2e3db7e453d3c6ac5b3e9d5182664d28788126d39b91f2d1e22b017ec"
+dependencies = [
+ "cesu8",
+ "combine",
+ "jni-sys",
+ "log",
+ "thiserror",
+ "walkdir",
+]
+
+[[package]]
 name = "jni-sys"
 version = "0.3.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "8eaf4bc02d17cbdd7ff4c7438cafcdf7fb9a4613313ad11b4f8fefe7d3fa0130"
 
 [[package]]
-name = "jpeg-decoder"
-version = "0.1.22"
+name = "jobserver"
+version = "0.1.24"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "229d53d58899083193af11e15917b5640cd40b29ff475a1fe4ef725deb02d0f2"
+checksum = "af25a77299a7f711a01975c35a6a424eb6862092cc2d6c72c4ed6cbc56dfc1fa"
 dependencies = [
- "rayon",
+ "libc",
 ]
 
 [[package]]
 name = "js-sys"
-version = "0.3.57"
+version = "0.3.68"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "671a26f820db17c2a2750743f1dd03bafd15b98c9f30c7c2628c024c05d73397"
+checksum = "406cda4b368d531c842222cf9d2600a9a4acce8d29423695379c6868a143a9ee"
 dependencies = [
  "wasm-bindgen",
 ]
 
 [[package]]
-name = "kamadak-exif"
-version = "0.5.4"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "70494964492bf8e491eb3951c5d70c9627eb7100ede6cc56d748b9a3f302cfb6"
-dependencies = [
- "mutate_once",
-]
-
-[[package]]
-name = "khronos-egl"
-version = "4.1.0"
+name = "lazy_static"
+version = "1.4.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8c2352bd1d0bceb871cb9d40f24360c8133c11d7486b68b5381c1dd1a32015e3"
-dependencies = [
- "libc",
- "libloading",
-]
+checksum = "e2abad23fbc42b3700f2f279844dc832adb2b2eb069b2df918f455c4e18cc646"
 
 [[package]]
-name = "kurbo"
-version = "0.8.0"
+name = "lazycell"
+version = "1.3.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "eb348d766edbac91ba1eb83020d96f4f8867924d194393083c15a51f185e6a82"
-dependencies = [
- "arrayvec 0.5.2",
-]
+checksum = "830d08ce1d1d941e6b30645f1a0eb5643013d835ce3779a5fc208261dbe10f55"
 
 [[package]]
-name = "lazy_static"
-version = "1.4.0"
+name = "libc"
+version = "0.2.153"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e2abad23fbc42b3700f2f279844dc832adb2b2eb069b2df918f455c4e18cc646"
+checksum = "9c198f91728a82281a64e1f4f9eeb25d82cb32a5de251c6bd1b5154d63a8e7bd"
 
 [[package]]
-name = "libc"
-version = "0.2.125"
+name = "libdbus-sys"
+version = "0.2.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5916d2ae698f6de9bfb891ad7a8d65c09d232dc58cc4ac433c7da3b2fd84bc2b"
+checksum = "c185b5b7ad900923ef3a8ff594083d4d9b5aea80bb4f32b8342363138c0d456b"
+dependencies = [
+ "pkg-config",
+]
 
 [[package]]
 name = "libloading"
@@ -2046,29 +1732,42 @@ dependencies = [
 ]
 
 [[package]]
-name = "linked-hash-map"
-version = "0.5.4"
+name = "libloading"
+version = "0.8.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7fb9b38af92608140b86b693604b9ffcc5824240a484d1ecd4795bacb2fe88f3"
+checksum = "c571b676ddfc9a8c12f1f3d3085a7b163966a8fd8098a90640953ce5f6170161"
+dependencies = [
+ "cfg-if 1.0.0",
+ "windows-sys 0.48.0",
+]
 
 [[package]]
-name = "locale_config"
-version = "0.3.0"
+name = "libmimalloc-sys"
+version = "0.1.35"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "08d2c35b16f4483f6c26f0e4e9550717a2f6575bcd6f12a53ff0c490a94a6934"
+checksum = "3979b5c37ece694f1f5e51e7ecc871fdb0f517ed04ee45f88d15d6d553cb9664"
 dependencies = [
- "lazy_static",
- "objc",
- "objc-foundation",
- "regex",
- "winapi",
+ "cc",
+ "libc",
 ]
 
 [[package]]
+name = "linux-raw-sys"
+version = "0.4.13"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "01cda141df6706de531b6c46c3a33ecca755538219bd484262fa09410c13539c"
+
+[[package]]
+name = "litemap"
+version = "0.7.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "f9d642685b028806386b2b6e75685faadd3eb65a85fff7df711ce18446a422da"
+
+[[package]]
 name = "lock_api"
-version = "0.4.7"
+version = "0.4.11"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "327fa5b6a6940e4699ec49a9beae1ea4845c6bab9314e4f84ac68742139d8c53"
+checksum = "3c168f8615b12bc01f9c17e2eb0cc07dcae1940121185446edc3744920e8ef45"
 dependencies = [
  "autocfg",
  "scopeguard",
@@ -2076,35 +1775,65 @@ dependencies = [
 
 [[package]]
 name = "log"
-version = "0.4.17"
+version = "0.4.20"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "b5e6163cb8c49088c2c36f57875e58ccd8c87c7427f7fbd50ea6710b2f3f2e8f"
+
+[[package]]
+name = "lru"
+version = "0.12.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "abb12e687cfb44aa40f41fc3978ef76448f9b6038cad6aef4259d3c095a2382e"
+checksum = "db2c024b41519440580066ba82aab04092b333e09066a5eb86c7c4890df31f22"
 dependencies = [
- "cfg-if 1.0.0",
+ "hashbrown 0.14.3",
 ]
 
 [[package]]
-name = "malloc_buf"
-version = "0.0.6"
+name = "m3u8-rs"
+version = "5.0.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "62bb907fe88d54d8d9ce32a3cceab4218ed2f6b7d35617cafe9adf84e43919cb"
+checksum = "0c1d7ba86f7ea62f17f4310c55e93244619ddc7dadfc7e565de1967e4e41e6e7"
+dependencies = [
+ "chrono",
+ "nom",
+]
+
+[[package]]
+name = "mac"
+version = "0.1.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "c41e0c4fef86961ac6d6f8a82609f55f31b05e4fce149ac5710e439df7619ba4"
+
+[[package]]
+name = "mach"
+version = "0.3.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "b823e83b2affd8f40a9ee8c29dbc56404c1e34cd2710921f2801e2cf29527afa"
 dependencies = [
  "libc",
 ]
 
 [[package]]
-name = "maplit"
-version = "1.0.2"
+name = "malloc_buf"
+version = "0.0.6"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3e2e65a1a2e43cfcb47a895c4c8b10d1f4a61097f9f254f183aee60cad9c651d"
+checksum = "62bb907fe88d54d8d9ce32a3cceab4218ed2f6b7d35617cafe9adf84e43919cb"
+dependencies = [
+ "libc",
+]
 
 [[package]]
-name = "matchers"
-version = "0.1.0"
+name = "markup5ever"
+version = "0.11.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8263075bb86c5a1b1427b5ae862e8889656f126e9f77c484496e8b47cf5c5558"
+checksum = "7a2629bb1404f3d34c2e921f21fd34ba00b206124c81f65c50b43b6aaefeb016"
 dependencies = [
- "regex-automata",
+ "log",
+ "phf 0.10.1",
+ "phf_codegen 0.10.0",
+ "string_cache",
+ "string_cache_codegen",
+ "tendril",
 ]
 
 [[package]]
@@ -2115,9 +1844,9 @@ checksum = "a3e378b66a060d48947b590737b30a1be76706c8dd7b8ba0f2fe3989c68a853f"
 
 [[package]]
 name = "memchr"
-version = "2.5.0"
+version = "2.7.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2dffe52ecf27772e601905b7522cb4ef790d2cc203488bbd0e2fe85fcb74566d"
+checksum = "523dc4f511e55ab87b694dc30d0f820d60906ef06413f93d4d7a1385599cc149"
 
 [[package]]
 name = "memmap2"
@@ -2138,17 +1867,12 @@ dependencies = [
 ]
 
 [[package]]
-name = "metal"
-version = "0.23.1"
+name = "mimalloc"
+version = "0.1.39"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e0514f491f4cc03632ab399ee01e2c1c1b12d3e1cf2d667c1ff5f87d6dcd2084"
+checksum = "fa01922b5ea280a911e323e4d2fd24b7fe5cc4042e0d2cda3c40775cdc4bdc9c"
 dependencies = [
- "bitflags",
- "block",
- "core-graphics-types",
- "foreign-types",
- "log",
- "objc",
+ "libmimalloc-sys",
 ]
 
 [[package]]
@@ -2158,6 +1882,16 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "2a60c7ce501c71e03a9c9c0d35b861413ae925bd979cc7a4e30d060069aaac8d"
 
 [[package]]
+name = "mime_guess"
+version = "2.0.4"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "4192263c238a5f0d0c6bfd21f336a313a4ce1c450542449ca191bb657b4642ef"
+dependencies = [
+ "mime",
+ "unicase",
+]
+
+[[package]]
 name = "minimal-lexical"
 version = "0.2.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -2165,77 +1899,85 @@ checksum = "68354c5c6bd36d73ff3feceb05efa59b6acb7626617f4962be322a825e61f79a"
 
 [[package]]
 name = "miniz_oxide"
-version = "0.3.7"
+version = "0.4.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "791daaae1ed6889560f8c4359194f56648355540573244a5448a83ba1ecc7435"
+checksum = "a92518e98c078586bc6c934028adcca4c92a53d6a958196de835170a01d84e4b"
 dependencies = [
- "adler32",
+ "adler",
+ "autocfg",
 ]
 
 [[package]]
 name = "miniz_oxide"
-version = "0.5.1"
+version = "0.7.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d2b29bd4bc3f33391105ebee3589c19197c4271e3e5a9ec9bfe8127eeff8f082"
+checksum = "9d811f3e15f28568be3407c8e7fdb6514c1cda3cb30683f15b6a1a1dc4ea14a7"
 dependencies = [
  "adler",
 ]
 
 [[package]]
 name = "mio"
-version = "0.8.3"
+version = "0.8.10"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "713d550d9b44d89174e066b7a6217ae06234c10cb47819a88290d2b353c31799"
+checksum = "8f3d0b296e374a4e6f3c7b0a1f5a51d748a0d34c85e7dc48fc3fa9a87657fe09"
 dependencies = [
  "libc",
  "log",
  "wasi 0.11.0+wasi-snapshot-preview1",
- "windows-sys",
+ "windows-sys 0.48.0",
 ]
 
 [[package]]
-name = "mutate_once"
-version = "0.1.1"
+name = "nanorand"
+version = "0.7.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "16cf681a23b4d0a43fc35024c176437f9dcd818db34e0f42ab456a0ee5ad497b"
+checksum = "6a51313c5820b0b02bd422f4b44776fbf47961755c74ce64afc73bfad10226c3"
+dependencies = [
+ "getrandom 0.2.12",
+]
 
 [[package]]
-name = "naga"
-version = "0.8.5"
+name = "native-tls"
+version = "0.2.11"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3012f2dbcc79e8e0b5825a4836a7106a75dd9b2fe42c528163be0f572538c705"
+checksum = "07226173c32f2926027b63cce4bcd8076c3552846cbe7925f3aaffeac0a3b92e"
 dependencies = [
- "bit-set",
- "bitflags",
- "codespan-reporting",
- "hexf-parse",
- "indexmap",
+ "lazy_static",
+ "libc",
  "log",
- "num-traits",
- "rustc-hash",
- "spirv",
- "thiserror",
+ "openssl",
+ "openssl-probe",
+ "openssl-sys",
+ "schannel",
+ "security-framework",
+ "security-framework-sys",
+ "tempfile",
 ]
 
 [[package]]
-name = "nanorand"
-version = "0.7.0"
+name = "ndk"
+version = "0.5.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6a51313c5820b0b02bd422f4b44776fbf47961755c74ce64afc73bfad10226c3"
+checksum = "96d868f654c72e75f8687572699cdabe755f03effbb62542768e995d5b8d699d"
 dependencies = [
- "getrandom 0.2.6",
+ "bitflags 1.3.2",
+ "jni-sys",
+ "ndk-sys 0.2.2",
+ "num_enum 0.5.7",
+ "thiserror",
 ]
 
 [[package]]
 name = "ndk"
-version = "0.5.0"
+version = "0.6.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "96d868f654c72e75f8687572699cdabe755f03effbb62542768e995d5b8d699d"
+checksum = "2032c77e030ddee34a6787a64166008da93f6a352b629261d0fee232b8742dd4"
 dependencies = [
- "bitflags",
+ "bitflags 1.3.2",
  "jni-sys",
- "ndk-sys",
- "num_enum",
+ "ndk-sys 0.3.0",
+ "num_enum 0.5.7",
  "thiserror",
 ]
 
@@ -2254,10 +1996,25 @@ dependencies = [
  "lazy_static",
  "libc",
  "log",
- "ndk",
+ "ndk 0.5.0",
  "ndk-context",
  "ndk-macro",
- "ndk-sys",
+ "ndk-sys 0.2.2",
+]
+
+[[package]]
+name = "ndk-glue"
+version = "0.6.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "d9ffb7443daba48349d545028777ca98853b018b4c16624aa01223bc29e078da"
+dependencies = [
+ "lazy_static",
+ "libc",
+ "log",
+ "ndk 0.6.0",
+ "ndk-context",
+ "ndk-macro",
+ "ndk-sys 0.3.0",
 ]
 
 [[package]]
@@ -2270,7 +2027,7 @@ dependencies = [
  "proc-macro-crate",
  "proc-macro2",
  "quote",
- "syn",
+ "syn 1.0.99",
 ]
 
 [[package]]
@@ -2280,34 +2037,40 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "e1bcdd74c20ad5d95aacd60ef9ba40fdf77f767051040541df557b7a9b2a2121"
 
 [[package]]
-name = "new_mime_guess"
-version = "4.0.1"
+name = "ndk-sys"
+version = "0.3.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c2d684d1b59e0dc07b37e2203ef576987473288f530082512aff850585c61b1f"
+checksum = "6e5a6ae77c8ee183dcbbba6150e2e6b9f3f4196a7666c02a715a95692ec1fa97"
 dependencies = [
- "mime",
- "unicase",
+ "jni-sys",
 ]
 
 [[package]]
+name = "new_debug_unreachable"
+version = "1.0.4"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "e4a24736216ec316047a1fc4252e27dabb04218aa4a3f37c6e7ddbf1f9782b54"
+
+[[package]]
 name = "nix"
-version = "0.20.0"
+version = "0.22.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "fa9b4819da1bc61c0ea48b63b7bc8604064dd43013e7cc325df098d49cd7c18a"
+checksum = "e4916f159ed8e5de0082076562152a76b7a1f64a01fd9d1e0fea002c37624faf"
 dependencies = [
- "bitflags",
+ "bitflags 1.3.2",
  "cc",
  "cfg-if 1.0.0",
  "libc",
+ "memoffset",
 ]
 
 [[package]]
 name = "nix"
-version = "0.22.3"
+version = "0.23.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e4916f159ed8e5de0082076562152a76b7a1f64a01fd9d1e0fea002c37624faf"
+checksum = "8f3790c00a0150112de0f4cd161e3d7fc4b2d8a5542ffc35f099a2562aecb35c"
 dependencies = [
- "bitflags",
+ "bitflags 1.3.2",
  "cc",
  "cfg-if 1.0.0",
  "libc",
@@ -2316,18 +2079,23 @@ dependencies = [
 
 [[package]]
 name = "nix"
-version = "0.23.1"
+version = "0.24.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9f866317acbd3a240710c63f065ffb1e4fd466259045ccb504130b7f668f35c6"
+checksum = "fa52e972a9a719cecb6864fb88568781eb706bac2cd1d4f04a648542dbf78069"
 dependencies = [
- "bitflags",
- "cc",
+ "bitflags 1.3.2",
  "cfg-if 1.0.0",
  "libc",
  "memoffset",
 ]
 
 [[package]]
+name = "nodrop"
+version = "0.1.14"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "72ef4a56884ca558e5ddb05a1d1e7e1bfd9a68d9ed024c21704cc98872dae1bb"
+
+[[package]]
 name = "nom"
 version = "7.1.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -2338,39 +2106,32 @@ dependencies = [
 ]
 
 [[package]]
-name = "num"
-version = "0.1.42"
+name = "num-bigint"
+version = "0.4.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4703ad64153382334aa8db57c637364c322d3372e097840c72000dabdcf6156e"
+checksum = "608e7659b5c3d7cba262d894801b9ec9d00de989e8a82bd4bef91d08da45cdc0"
 dependencies = [
- "num-bigint",
- "num-complex",
+ "autocfg",
  "num-integer",
- "num-iter",
- "num-rational 0.1.42",
  "num-traits",
+ "serde",
 ]
 
 [[package]]
-name = "num-bigint"
-version = "0.1.44"
+name = "num-conv"
+version = "0.1.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e63899ad0da84ce718c14936262a41cee2c79c981fc0a0e7c7beb47d5a07e8c1"
-dependencies = [
- "num-integer",
- "num-traits",
- "rand 0.4.6",
- "rustc-serialize",
-]
+checksum = "51d515d32fb182ee37cda2ccdcb92950d6a3c2893aa280e540671c2cd0f3b1d9"
 
 [[package]]
-name = "num-complex"
-version = "0.1.43"
+name = "num-derive"
+version = "0.3.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b288631d7878aaf59442cffd36910ea604ecd7745c36054328595114001c9656"
+checksum = "876a53fff98e03a936a674b29568b0e605f06b29372c2489ff4de23f1949743d"
 dependencies = [
- "num-traits",
- "rustc-serialize",
+ "proc-macro2",
+ "quote",
+ "syn 1.0.99",
 ]
 
 [[package]]
@@ -2384,44 +2145,10 @@ dependencies = [
 ]
 
 [[package]]
-name = "num-iter"
-version = "0.1.43"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7d03e6c028c5dc5cac6e2dec0efda81fc887605bb3d884578bb6d6bf7514e252"
-dependencies = [
- "autocfg",
- "num-integer",
- "num-traits",
-]
-
-[[package]]
-name = "num-rational"
-version = "0.1.42"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ee314c74bd753fc86b4780aa9475da469155f3848473a261d2d18e35245a784e"
-dependencies = [
- "num-bigint",
- "num-integer",
- "num-traits",
- "rustc-serialize",
-]
-
-[[package]]
-name = "num-rational"
-version = "0.3.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "12ac428b1cb17fce6f731001d307d351ec70a6d202fc2e60f7d4c5e42d8f4f07"
-dependencies = [
- "autocfg",
- "num-integer",
- "num-traits",
-]
-
-[[package]]
 name = "num-traits"
-version = "0.2.15"
+version = "0.2.17"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "578ede34cf02f8924ab9447f50c28075b4d3e5b269972345e7e0372b38c6cdcd"
+checksum = "39e3200413f237f41ab11ad6d161bc7239c84dcb631773ccd7de3dfe4b5c267c"
 dependencies = [
  "autocfg",
 ]
@@ -2442,7 +2169,16 @@ version = "0.5.7"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "cf5395665662ef45796a4ff5486c5d41d29e0c09640af4c5f17fd94ee2c119c9"
 dependencies = [
- "num_enum_derive",
+ "num_enum_derive 0.5.7",
+]
+
+[[package]]
+name = "num_enum"
+version = "0.6.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "7a015b430d3c108a207fd776d2e2196aaf8b1cf8cf93253e3a097ff3085076a1"
+dependencies = [
+ "num_enum_derive 0.6.1",
 ]
 
 [[package]]
@@ -2454,14 +2190,20 @@ dependencies = [
  "proc-macro-crate",
  "proc-macro2",
  "quote",
- "syn",
+ "syn 1.0.99",
 ]
 
 [[package]]
-name = "numtoa"
-version = "0.2.4"
+name = "num_enum_derive"
+version = "0.6.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6aa2c4e539b869820a2b82e1aef6ff40aa85e65decdd5185e83fb4b1249cd00f"
+checksum = "96667db765a921f7b295ffee8b60472b686a51d4f21c2ee4ffdb94c7013b65a6"
+dependencies = [
+ "proc-macro-crate",
+ "proc-macro2",
+ "quote",
+ "syn 2.0.48",
+]
 
 [[package]]
 name = "objc"
@@ -2470,419 +2212,305 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "915b1b472bc21c53464d6c8461c9d3af805ba1ef837e1cac254428f4a77177b1"
 dependencies = [
  "malloc_buf",
- "objc_exception",
 ]
 
 [[package]]
-name = "objc-foundation"
-version = "0.1.1"
+name = "object"
+version = "0.32.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1add1b659e36c9607c7aab864a76c7a4c2760cd0cd2e120f3fb8b952c7e22bf9"
+checksum = "a6a622008b6e321afc04970976f62ee297fdbaa6f95318ca343e3eebb9648441"
 dependencies = [
- "block",
- "objc",
- "objc_id",
+ "memchr",
 ]
 
 [[package]]
-name = "objc_exception"
-version = "0.1.2"
+name = "oboe"
+version = "0.4.6"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ad970fb455818ad6cba4c122ad012fae53ae8b4795f86378bce65e4f6bab2ca4"
+checksum = "27f63c358b4fa0fbcfefd7c8be5cfc39c08ce2389f5325687e7762a48d30a5c1"
 dependencies = [
- "cc",
+ "jni",
+ "ndk 0.6.0",
+ "ndk-context",
+ "num-derive",
+ "num-traits",
+ "oboe-sys",
 ]
 
 [[package]]
-name = "objc_id"
-version = "0.1.1"
+name = "oboe-sys"
+version = "0.4.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c92d4ddb4bd7b50d730c215ff871754d0da6b2178849f8a2a2ab69712d0c073b"
+checksum = "3370abb7372ed744232c12954d920d1a40f1c4686de9e79e800021ef492294bd"
 dependencies = [
- "objc",
-]
-
-[[package]]
-name = "onagre"
-version = "1.0.0-alpha.0"
-dependencies = [
- "anyhow",
- "criterion",
- "dirs 4.0.0",
- "env_logger",
- "font-kit",
- "freedesktop-icons",
- "iced",
- "iced_native",
- "iced_style",
- "ico",
- "log",
- "once_cell",
- "palette 0.5.0",
- "pest",
- "pest_derive",
- "pop-launcher-toolkit",
- "pretty_assertions",
- "regex",
- "ron 0.6.6",
- "serde",
- "serde_ini",
- "serde_json",
- "serde_with",
- "shell-words",
- "sled",
- "speculoos",
- "structopt",
- "thiserror",
- "tokio",
+ "cc",
 ]
 
 [[package]]
 name = "once_cell"
-version = "1.10.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "87f3e037eac156d1775da914196f0f37741a274155e34a0b7e427c35d2a2ecb9"
-
-[[package]]
-name = "oorandom"
-version = "11.1.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0ab1bc2a289d34bd04a330323ac98a1b4bc82c9d9fcb1e66b63caa84da26b575"
-
-[[package]]
-name = "opaque-debug"
-version = "0.2.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2839e79665f131bdb5782e51f2c6c9599c133c6098982a54c794358bf432529c"
-
-[[package]]
-name = "ordered-float"
-version = "3.0.0"
+version = "1.19.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "96bcbab4bfea7a59c2c0fe47211a1ac4e3e96bea6eb446d704f310bc5c732ae2"
+checksum = "3fdb12b2476b595f9358c5161aa467c2438859caa136dec86c26fdd2efe17b92"
 dependencies = [
- "num-traits",
+ "critical-section",
+ "portable-atomic",
 ]
 
 [[package]]
-name = "ordered-multimap"
-version = "0.4.3"
+name = "openssl"
+version = "0.10.63"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ccd746e37177e1711c20dd619a1620f34f5c8b569c53590a72dedd5344d8924a"
+checksum = "15c9d69dd87a29568d4d017cfe8ec518706046a05184e5aea92d0af890b803c8"
 dependencies = [
- "dlv-list",
- "hashbrown 0.12.1",
-]
-
-[[package]]
-name = "ordered-stream"
-version = "0.0.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "44630c059eacfd6e08bdaa51b1db2ce33119caa4ddc1235e923109aa5f25ccb1"
-dependencies = [
- "futures-core",
- "pin-project-lite",
+ "bitflags 2.4.2",
+ "cfg-if 1.0.0",
+ "foreign-types",
+ "libc",
+ "once_cell",
+ "openssl-macros",
+ "openssl-sys",
 ]
 
 [[package]]
-name = "output_vt100"
-version = "0.1.3"
+name = "openssl-macros"
+version = "0.1.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "628223faebab4e3e40667ee0b2336d34a5b960ff60ea743ddfdbcf7770bcfb66"
+checksum = "a948666b637a0f465e8564c73e89d4dde00d72d4d473cc972f390fc3dcee7d9c"
 dependencies = [
- "winapi",
+ "proc-macro2",
+ "quote",
+ "syn 2.0.48",
 ]
 
 [[package]]
-name = "owned_ttf_parser"
-version = "0.15.0"
+name = "openssl-probe"
+version = "0.1.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4fb1e509cfe7a12db2a90bfa057dfcdbc55a347f5da677c506b53dd099cfec9d"
-dependencies = [
- "ttf-parser 0.15.0",
-]
+checksum = "ff011a302c396a5197692431fc1948019154afc178baf7d8e37367442a4601cf"
 
 [[package]]
-name = "palette"
-version = "0.5.0"
+name = "openssl-sys"
+version = "0.9.99"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a05c0334468e62a4dfbda34b29110aa7d70d58c7fdb2c9857b5874dd9827cc59"
+checksum = "22e1bf214306098e4832460f797824c05d25aacdf896f64a985fb0fd992454ae"
 dependencies = [
- "approx 0.3.2",
- "num-traits",
- "palette_derive 0.5.0",
- "phf 0.8.0",
- "phf_codegen",
- "serde",
-]
-
-[[package]]
-name = "palette"
-version = "0.6.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f9735f7e1e51a3f740bacd5dc2724b61a7806f23597a8736e679f38ee3435d18"
-dependencies = [
- "approx 0.5.1",
- "num-traits",
- "palette_derive 0.6.0",
- "phf 0.9.0",
+ "cc",
+ "libc",
+ "pkg-config",
+ "vcpkg",
 ]
 
 [[package]]
-name = "palette_derive"
-version = "0.5.0"
+name = "option-ext"
+version = "0.2.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0b4b5f600e60dd3a147fb57b4547033d382d1979eb087af310e91cb45a63b1f4"
-dependencies = [
- "proc-macro2",
- "quote",
- "syn",
-]
+checksum = "04744f49eae99ab78e0d5c0b603ab218f515ea8cfe5a456d7629ad883a3b6e7d"
 
 [[package]]
-name = "palette_derive"
-version = "0.6.0"
+name = "parking_lot"
+version = "0.11.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7799c3053ea8a6d8a1193c7ba42f534e7863cf52e378a7f90406f4a645d33bad"
+checksum = "7d17b78036a60663b797adeaee46f5c9dfebb86948d1255007a1d6be0271ff99"
 dependencies = [
- "find-crate",
- "proc-macro2",
- "quote",
- "syn",
+ "instant",
+ "lock_api",
+ "parking_lot_core 0.8.6",
 ]
 
 [[package]]
-name = "parking"
-version = "2.0.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "427c3892f9e783d91cc128285287e70a59e206ca452770ece88a76f7a3eddd72"
-
-[[package]]
 name = "parking_lot"
-version = "0.11.2"
+version = "0.12.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7d17b78036a60663b797adeaee46f5c9dfebb86948d1255007a1d6be0271ff99"
+checksum = "87f5ec2493a61ac0506c0f4199f99070cbe83857b0337006a30f3e6719b8ef58"
 dependencies = [
- "instant",
  "lock_api",
- "parking_lot_core",
+ "parking_lot_core 0.9.9",
 ]
 
 [[package]]
 name = "parking_lot_core"
-version = "0.8.5"
+version = "0.8.6"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d76e8e1493bcac0d2766c42737f34458f1c8c50c0d23bcb24ea953affb273216"
+checksum = "60a2cfe6f0ad2bfc16aefa463b497d5c7a5ecd44a23efa72aa342d90177356dc"
 dependencies = [
  "cfg-if 1.0.0",
  "instant",
  "libc",
- "redox_syscall",
+ "redox_syscall 0.2.11",
  "smallvec",
  "winapi",
 ]
 
 [[package]]
-name = "pathfinder_geometry"
-version = "0.5.1"
+name = "parking_lot_core"
+version = "0.9.9"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0b7b7e7b4ea703700ce73ebf128e1450eb69c3a8329199ffbfb9b2a0418e5ad3"
+checksum = "4c42a9226546d68acdd9c0a280d17ce19bfe27a46bf68784e4066115788d008e"
 dependencies = [
- "log",
- "pathfinder_simd",
+ "cfg-if 1.0.0",
+ "libc",
+ "redox_syscall 0.4.1",
+ "smallvec",
+ "windows-targets 0.48.5",
 ]
 
 [[package]]
-name = "pathfinder_simd"
-version = "0.5.1"
+name = "paste"
+version = "1.0.14"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "39fe46acc5503595e5949c17b818714d26fdf9b4920eacf3b2947f0199f4a6ff"
-dependencies = [
- "rustc_version 0.3.3",
-]
+checksum = "de3145af08024dea9fa9914f381a17b8fc6034dfb00f3a84013f7ff43f29ed4c"
 
 [[package]]
-name = "percent-encoding"
-version = "2.1.0"
+name = "peeking_take_while"
+version = "0.1.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d4fd5641d01c8f18a23da7b6fe29298ff4b55afcccdf78973b24cf3175fee32e"
+checksum = "19b17cddbe7ec3f8bc800887bab5e717348c95ea2ca0b1bf0837fb964dc67099"
 
 [[package]]
-name = "pest"
-version = "2.1.3"
+name = "percent-encoding"
+version = "2.3.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "10f4872ae94d7b90ae48754df22fd42ad52ce740b8f370b03da4835417403e53"
-dependencies = [
- "ucd-trie",
-]
+checksum = "e3148f5046208a5d56bcfc03053e3ca6334e51da8dfb19b6cdc8b306fae3283e"
 
 [[package]]
-name = "pest_derive"
-version = "2.1.0"
+name = "phf"
+version = "0.8.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "833d1ae558dc601e9a60366421196a8d94bc0ac980476d0b67e1d0988d72b2d0"
+checksum = "3dfb61232e34fcb633f43d12c58f83c1df82962dcdfa565a4e866ffc17dafe12"
 dependencies = [
- "pest",
- "pest_generator",
+ "phf_shared 0.8.0",
 ]
 
 [[package]]
-name = "pest_generator"
-version = "2.1.3"
+name = "phf"
+version = "0.10.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "99b8db626e31e5b81787b9783425769681b347011cc59471e33ea46d2ea0cf55"
+checksum = "fabbf1ead8a5bcbc20f5f8b939ee3f5b0f6f281b6ad3468b84656b658b455259"
 dependencies = [
- "pest",
- "pest_meta",
- "proc-macro2",
- "quote",
- "syn",
+ "phf_macros 0.10.0",
+ "phf_shared 0.10.0",
+ "proc-macro-hack",
 ]
 
 [[package]]
-name = "pest_meta"
-version = "2.1.3"
+name = "phf"
+version = "0.11.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "54be6e404f5317079812fc8f9f5279de376d8856929e21c184ecf6bbd692a11d"
+checksum = "ade2d8b8f33c7333b51bcf0428d37e217e9f32192ae4772156f65063b8ce03dc"
 dependencies = [
- "maplit",
- "pest",
- "sha-1",
+ "phf_macros 0.11.2",
+ "phf_shared 0.11.2",
 ]
 
 [[package]]
-name = "phf"
+name = "phf_codegen"
 version = "0.8.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3dfb61232e34fcb633f43d12c58f83c1df82962dcdfa565a4e866ffc17dafe12"
+checksum = "cbffee61585b0411840d3ece935cce9cb6321f01c45477d30066498cd5e1a815"
 dependencies = [
+ "phf_generator 0.8.0",
  "phf_shared 0.8.0",
 ]
 
 [[package]]
-name = "phf"
-version = "0.9.0"
+name = "phf_codegen"
+version = "0.10.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b2ac8b67553a7ca9457ce0e526948cad581819238f4a9d1ea74545851fa24f37"
+checksum = "4fb1c3a8bc4dd4e5cfce29b44ffc14bedd2ee294559a294e2a4d4c9e9a6a13cd"
 dependencies = [
- "phf_macros",
- "phf_shared 0.9.0",
- "proc-macro-hack",
+ "phf_generator 0.10.0",
+ "phf_shared 0.10.0",
 ]
 
 [[package]]
-name = "phf_codegen"
+name = "phf_generator"
 version = "0.8.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "cbffee61585b0411840d3ece935cce9cb6321f01c45477d30066498cd5e1a815"
+checksum = "17367f0cc86f2d25802b2c26ee58a7b23faeccf78a396094c13dced0d0182526"
 dependencies = [
- "phf_generator 0.8.0",
  "phf_shared 0.8.0",
+ "rand 0.7.3",
 ]
 
 [[package]]
 name = "phf_generator"
-version = "0.8.0"
+version = "0.10.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "17367f0cc86f2d25802b2c26ee58a7b23faeccf78a396094c13dced0d0182526"
+checksum = "5d5285893bb5eb82e6aaf5d59ee909a06a16737a8970984dd7746ba9283498d6"
 dependencies = [
- "phf_shared 0.8.0",
- "rand 0.7.3",
+ "phf_shared 0.10.0",
+ "rand 0.8.5",
 ]
 
 [[package]]
 name = "phf_generator"
-version = "0.9.1"
+version = "0.11.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d43f3220d96e0080cc9ea234978ccd80d904eafb17be31bb0f76daaea6493082"
+checksum = "48e4cc64c2ad9ebe670cb8fd69dd50ae301650392e81c05f9bfcb2d5bdbc24b0"
 dependencies = [
- "phf_shared 0.9.0",
+ "phf_shared 0.11.2",
  "rand 0.8.5",
 ]
 
 [[package]]
 name = "phf_macros"
-version = "0.9.0"
+version = "0.10.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b706f5936eb50ed880ae3009395b43ed19db5bff2ebd459c95e7bf013a89ab86"
+checksum = "58fdf3184dd560f160dd73922bea2d5cd6e8f064bf4b13110abd81b03697b4e0"
 dependencies = [
- "phf_generator 0.9.1",
- "phf_shared 0.9.0",
+ "phf_generator 0.10.0",
+ "phf_shared 0.10.0",
  "proc-macro-hack",
  "proc-macro2",
  "quote",
- "syn",
+ "syn 1.0.99",
 ]
 
 [[package]]
-name = "phf_shared"
-version = "0.8.0"
+name = "phf_macros"
+version = "0.11.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c00cf8b9eafe68dde5e9eaa2cef8ee84a9336a47d566ec55ca16589633b65af7"
+checksum = "3444646e286606587e49f3bcf1679b8cef1dc2c5ecc29ddacaffc305180d464b"
 dependencies = [
- "siphasher",
+ "phf_generator 0.11.2",
+ "phf_shared 0.11.2",
+ "proc-macro2",
+ "quote",
+ "syn 2.0.48",
 ]
 
 [[package]]
 name = "phf_shared"
-version = "0.9.0"
+version = "0.8.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a68318426de33640f02be62b4ae8eb1261be2efbc337b60c54d845bf4484e0d9"
+checksum = "c00cf8b9eafe68dde5e9eaa2cef8ee84a9336a47d566ec55ca16589633b65af7"
 dependencies = [
  "siphasher",
 ]
 
 [[package]]
-name = "pico-args"
-version = "0.4.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "db8bcd96cb740d03149cbad5518db9fd87126a10ab519c011893b1754134c468"
-
-[[package]]
-name = "pin-project"
-version = "0.4.29"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9615c18d31137579e9ff063499264ddc1278e7b1982757ebc111028c4d1dc909"
-dependencies = [
- "pin-project-internal 0.4.29",
-]
-
-[[package]]
-name = "pin-project"
-version = "1.0.10"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "58ad3879ad3baf4e44784bc6a718a8698867bb991f8ce24d1bcbe2cfb4c3a75e"
-dependencies = [
- "pin-project-internal 1.0.10",
-]
-
-[[package]]
-name = "pin-project-internal"
-version = "0.4.29"
+name = "phf_shared"
+version = "0.10.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "044964427019eed9d49d9d5bbce6047ef18f37100ea400912a9fa4a3523ab12a"
+checksum = "b6796ad771acdc0123d2a88dc428b5e38ef24456743ddb1744ed628f9815c096"
 dependencies = [
- "proc-macro2",
- "quote",
- "syn",
+ "siphasher",
 ]
 
 [[package]]
-name = "pin-project-internal"
-version = "1.0.10"
+name = "phf_shared"
+version = "0.11.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "744b6f092ba29c3650faf274db506afd39944f48420f6c86b17cfe0ee1cb36bb"
+checksum = "90fcb95eef784c2ac79119d1dd819e162b5da872ce6f3c3abe1e8ca1c082f72b"
 dependencies = [
- "proc-macro2",
- "quote",
- "syn",
+ "siphasher",
 ]
 
 [[package]]
 name = "pin-project-lite"
-version = "0.2.9"
+version = "0.2.13"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e0a7ae3ac2f1173085d398531c705756c94a4c56843785df85a60c1a0afac116"
+checksum = "8afb450f006bf6385ca15ef45d71d2288452bc3683ce2e2cacc0d18e4be60b58"
 
 [[package]]
 name = "pin-utils"
@@ -2892,192 +2520,61 @@ checksum = "8b870d8c151b6f2fb93e84a13146138f05d02ed11c7e7c54f8826aaaf7c9f184"
 
 [[package]]
 name = "pkg-config"
-version = "0.3.25"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1df8c4ec4b0627e53bdf214615ad287367e482558cf84b109250b37464dc03ae"
-
-[[package]]
-name = "plotters"
-version = "0.3.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "32a3fd9ec30b9749ce28cd91f255d569591cdf937fe280c312143e3c4bad6f2a"
-dependencies = [
- "num-traits",
- "plotters-backend",
- "plotters-svg",
- "wasm-bindgen",
- "web-sys",
-]
-
-[[package]]
-name = "plotters-backend"
-version = "0.3.2"
+version = "0.3.24"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d88417318da0eaf0fdcdb51a0ee6c3bed624333bff8f946733049380be67ac1c"
+checksum = "58893f751c9b0412871a09abd62ecd2a00298c6c83befa223ef98c52aef40cbe"
 
 [[package]]
-name = "plotters-svg"
-version = "0.3.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "521fa9638fa597e1dc53e9412a4f9cefb01187ee1f7413076f9e6749e2885ba9"
-dependencies = [
- "plotters-backend",
-]
-
-[[package]]
-name = "png"
-version = "0.11.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f0b0cabbbd20c2d7f06dbf015e06aad59b6ca3d9ed14848783e98af9aaf19925"
+name = "player"
+version = "0.1.0"
 dependencies = [
- "bitflags",
- "deflate 0.7.20",
- "inflate",
- "num-iter",
+ "atomic_float",
+ "cpal",
+ "flume",
+ "symphonia",
+ "tokio",
 ]
 
 [[package]]
-name = "png"
-version = "0.16.8"
+name = "pollster"
+version = "0.3.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3c3287920cb847dee3de33d301c463fba14dda99db24214ddf93f83d3021f4c6"
-dependencies = [
- "bitflags",
- "crc32fast",
- "deflate 0.8.6",
- "miniz_oxide 0.3.7",
-]
+checksum = "22686f4785f02a4fcc856d3b3bb19bf6c8160d103f7a99cc258bddd0251dc7f2"
 
 [[package]]
-name = "png"
-version = "0.17.5"
+name = "portable-atomic"
+version = "1.6.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "dc38c0ad57efb786dd57b9864e5b18bae478c00c824dc55a38bbc9da95dde3ba"
-dependencies = [
- "bitflags",
- "crc32fast",
- "deflate 1.0.0",
- "miniz_oxide 0.5.1",
-]
+checksum = "7170ef9988bc169ba16dd36a7fa041e5c4cbeb6a35b76d4c03daded371eae7c0"
 
 [[package]]
-name = "polling"
-version = "2.2.0"
+name = "postcard"
+version = "1.0.8"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "685404d509889fade3e86fe3a5803bca2ec09b0c0778d5ada6ec8bf7a8de5259"
+checksum = "a55c51ee6c0db07e68448e336cf8ea4131a620edefebf9893e759b2d793420f8"
 dependencies = [
- "cfg-if 1.0.0",
- "libc",
- "log",
- "wepoll-ffi",
- "winapi",
-]
-
-[[package]]
-name = "pop-launcher"
-version = "1.2.1"
-source = "git+https://github.com/pop-os/launcher/#47852e53cb6f637003ed6bdb178fe76cb90dff24"
-dependencies = [
- "const_format",
- "dirs 4.0.0",
- "futures",
+ "cobs",
+ "embedded-io",
  "serde",
- "serde_json",
- "serde_with",
- "tokio",
- "tokio-stream",
-]
-
-[[package]]
-name = "pop-launcher-plugins"
-version = "1.2.1"
-source = "git+https://github.com/pop-os/launcher/#47852e53cb6f637003ed6bdb178fe76cb90dff24"
-dependencies = [
- "anyhow",
- "async-pidfd",
- "bytes 1.1.0",
- "dirs 4.0.0",
- "flume",
- "fork",
- "freedesktop-desktop-entry",
- "futures",
- "human-sort",
- "human_format",
- "new_mime_guess",
- "pop-launcher",
- "recently-used-xbel",
- "regex",
- "reqwest",
- "ron 0.7.0",
- "serde",
- "serde_json",
- "slab",
- "strsim",
- "sysfs-class",
- "tokio",
- "tracing",
- "url",
- "urlencoding",
- "ward",
- "zbus",
- "zvariant",
-]
-
-[[package]]
-name = "pop-launcher-service"
-version = "1.2.1"
-source = "git+https://github.com/pop-os/launcher/#47852e53cb6f637003ed6bdb178fe76cb90dff24"
-dependencies = [
- "anyhow",
- "async-oneshot",
- "async-trait",
- "flume",
- "futures",
- "futures_codec",
- "gen-z",
- "num_cpus",
- "pop-launcher",
- "regex",
- "ron 0.7.0",
- "serde",
- "serde_json",
- "serde_with",
- "slab",
- "strsim",
- "tokio",
- "tokio-stream",
- "toml",
- "tracing",
- "tracing-subscriber",
 ]
 
 [[package]]
-name = "pop-launcher-toolkit"
-version = "0.1.0"
-source = "git+https://github.com/pop-os/launcher/#47852e53cb6f637003ed6bdb178fe76cb90dff24"
-dependencies = [
- "pop-launcher",
- "pop-launcher-plugins",
- "pop-launcher-service",
-]
+name = "powerfmt"
+version = "0.2.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "439ee305def115ba05938db6eb1644ff94165c5ab5e9420d1c1bcedbba909391"
 
 [[package]]
 name = "ppv-lite86"
-version = "0.2.16"
+version = "0.2.17"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "eb9f9e6e233e5c4a35559a617bf40a4ec447db2e84c20b55a6f83167b7e57872"
+checksum = "5b40af805b3121feab8a3c29f04d8ad262fa8e0561883e7653e024ae4479e6de"
 
 [[package]]
-name = "pretty_assertions"
-version = "1.2.1"
+name = "precomputed-hash"
+version = "0.1.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c89f989ac94207d048d92db058e4f6ec7342b0971fc58d1271ca148b799b3563"
-dependencies = [
- "ansi_term",
- "ctor",
- "diff",
- "output_vt100",
-]
+checksum = "925383efa346730478fb4838dbe9137d2a47675ad789c546d150a6e1dd4ab31c"
 
 [[package]]
 name = "proc-macro-crate"
@@ -3086,31 +2583,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "e17d47ce914bf4de440332250b0edd23ce48c005f59fab39d3335866b114f11a"
 dependencies = [
  "thiserror",
- "toml",
-]
-
-[[package]]
-name = "proc-macro-error"
-version = "1.0.4"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "da25490ff9892aab3fcf7c36f08cfb902dd3e71ca0f9f9517bea02a73a5ce38c"
-dependencies = [
- "proc-macro-error-attr",
- "proc-macro2",
- "quote",
- "syn",
- "version_check",
-]
-
-[[package]]
-name = "proc-macro-error-attr"
-version = "1.0.4"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a1be40180e52ecc98ad80b184934baf3d0d29f979574e439af5a55274b35f869"
-dependencies = [
- "proc-macro2",
- "quote",
- "version_check",
+ "toml 0.5.9",
 ]
 
 [[package]]
@@ -3121,39 +2594,36 @@ checksum = "dbf0c48bc1d91375ae5c3cd81e3722dff1abcf81a30960240640d223f59fe0e5"
 
 [[package]]
 name = "proc-macro2"
-version = "1.0.38"
+version = "1.0.78"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9027b48e9d4c9175fa2218adf3557f91c1137021739951d4932f5f8268ac48aa"
+checksum = "e2422ad645d89c99f8f3e6b88a9fdeca7fabeac836b1002371c4367c8f984aae"
 dependencies = [
- "unicode-xid",
+ "unicode-ident",
 ]
 
 [[package]]
-name = "profiling"
-version = "1.0.5"
+name = "psl-types"
+version = "2.0.11"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9145ac0af1d93c638c98c40cf7d25665f427b2a44ad0a99b1dccf3e2f25bb987"
+checksum = "33cb294fe86a74cbcf50d4445b37da762029549ebeea341421c7c70370f86cac"
 
 [[package]]
-name = "quote"
-version = "1.0.18"
+name = "publicsuffix"
+version = "2.2.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a1feb54ed693b93a84e14094943b84b7c4eae204c512b7ccb95ab0c66d278ad1"
+checksum = "96a8c1bda5ae1af7f99a2962e49df150414a43d62404644d98dd5c3a93d07457"
 dependencies = [
- "proc-macro2",
+ "idna 0.3.0",
+ "psl-types",
 ]
 
 [[package]]
-name = "rand"
-version = "0.4.6"
+name = "quote"
+version = "1.0.35"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "552840b97013b1a26992c11eac34bdd778e464601a4c2054b5f0bff7c6761293"
+checksum = "291ec9ab5efd934aaf503a6466c5d5251535d108ee747472c3977cc5acc868ef"
 dependencies = [
- "fuchsia-cprng",
- "libc",
- "rand_core 0.3.1",
- "rdrand",
- "winapi",
+ "proc-macro2",
 ]
 
 [[package]]
@@ -3178,7 +2648,7 @@ checksum = "34af8d1a0e25924bc5b7c43c079c942339d8f0a8b57c39049bef581b46327404"
 dependencies = [
  "libc",
  "rand_chacha 0.3.1",
- "rand_core 0.6.3",
+ "rand_core 0.6.4",
 ]
 
 [[package]]
@@ -3198,26 +2668,11 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "e6c10a63a0fa32252be49d21e7709d4d4baf8d231c2dbce1eaa8141b9b127d88"
 dependencies = [
  "ppv-lite86",
- "rand_core 0.6.3",
+ "rand_core 0.6.4",
 ]
 
 [[package]]
 name = "rand_core"
-version = "0.3.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7a6fdeb83b075e8266dcc8762c22776f6877a63111121f5f8c7411e5be7eed4b"
-dependencies = [
- "rand_core 0.4.2",
-]
-
-[[package]]
-name = "rand_core"
-version = "0.4.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9c33a3c44ca05fa6f1807d8e6743f3824e8509beca625669633be0acbdf509dc"
-
-[[package]]
-name = "rand_core"
 version = "0.5.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "90bde5296fc891b0cef12a6d03ddccc162ce7b2aff54160af9338f8d40df6d19"
@@ -3227,11 +2682,11 @@ dependencies = [
 
 [[package]]
 name = "rand_core"
-version = "0.6.3"
+version = "0.6.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d34f1408f55294453790c48b2f1ebbb1c5b4b7563eb1f418bcfcfdbb06ebb4e7"
+checksum = "ec0be4795e2f6a28069bec0b5ff3e2ac9bafc99e6a9a7dc3547996c5c816922c"
 dependencies = [
- "getrandom 0.2.6",
+ "getrandom 0.2.12",
 ]
 
 [[package]]
@@ -3253,19 +2708,24 @@ dependencies = [
 ]
 
 [[package]]
-name = "range-alloc"
-version = "0.1.2"
+name = "ratatui"
+version = "0.26.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "63e935c45e09cc6dcf00d2f0b2d630a58f4095320223d47fc68918722f0538b6"
-
-[[package]]
-name = "raw-window-handle"
-version = "0.3.4"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e28f55143d0548dad60bb4fbdc835a3d7ac6acc3324506450c5fdd6e42903a76"
+checksum = "154b85ef15a5d1719bcaa193c3c81fe645cd120c156874cd660fe49fd21d1373"
 dependencies = [
- "libc",
- "raw-window-handle 0.4.3",
+ "bitflags 2.4.2",
+ "cassowary",
+ "compact_str",
+ "crossterm",
+ "indoc",
+ "itertools 0.12.1",
+ "lru",
+ "paste",
+ "serde",
+ "stability",
+ "strum",
+ "unicode-segmentation",
+ "unicode-width",
 ]
 
 [[package]]
@@ -3278,63 +2738,21 @@ dependencies = [
 ]
 
 [[package]]
-name = "rayon"
-version = "1.5.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "fd249e82c21598a9a426a4e00dd7adc1d640b22445ec8545feef801d1a74c221"
-dependencies = [
- "autocfg",
- "crossbeam-deque",
- "either",
- "rayon-core",
-]
-
-[[package]]
-name = "rayon-core"
-version = "1.9.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9f51245e1e62e1f1629cbfec37b5793bbabcaeb90f30e94d2ba03564687353e4"
-dependencies = [
- "crossbeam-channel",
- "crossbeam-deque",
- "crossbeam-utils",
- "num_cpus",
-]
-
-[[package]]
-name = "rctree"
-version = "0.4.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9ae028b272a6e99d9f8260ceefa3caa09300a8d6c8d2b2001316474bc52122e9"
-
-[[package]]
-name = "rdrand"
-version = "0.4.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "678054eb77286b51581ba43620cc911abf02758c91f93f479767aed0f90458b2"
-dependencies = [
- "rand_core 0.3.1",
-]
-
-[[package]]
-name = "recently-used-xbel"
-version = "1.0.0"
+name = "redox_syscall"
+version = "0.2.11"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "bd9533c371523034735c8c68da31004561dd011df9d45d0e5886c141858a7d17"
+checksum = "8380fe0152551244f0747b1bf41737e0f8a74f97a14ccefd1148187271634f3c"
 dependencies = [
- "dirs 4.0.0",
- "serde",
- "serde-xml-rs",
- "thiserror",
+ "bitflags 1.3.2",
 ]
 
 [[package]]
 name = "redox_syscall"
-version = "0.2.13"
+version = "0.4.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "62f25bc4c7e55e0b0b7a1d43fb893f4fa1361d0abe38b9ce4f323c2adfe6ef42"
+checksum = "4722d768eff46b75989dd134e5c353f0d6296e5aaa3132e776cbdb56be7731aa"
 dependencies = [
- "bitflags",
+ "bitflags 1.3.2",
 ]
 
 [[package]]
@@ -3343,60 +2761,61 @@ version = "0.4.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "b033d837a7cf162d7993aded9304e30a83213c648b6e389db233191f891e5c2b"
 dependencies = [
- "getrandom 0.2.6",
- "redox_syscall",
+ "getrandom 0.2.12",
+ "redox_syscall 0.2.11",
  "thiserror",
 ]
 
 [[package]]
 name = "regex"
-version = "1.5.5"
+version = "1.10.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1a11647b6b25ff05a515cb92c365cec08801e83423a235b51e231e1808747286"
+checksum = "b62dbe01f0b06f9d8dc7d49e05a0785f153b00b2c227856282f671e0318c9b15"
 dependencies = [
  "aho-corasick",
  "memchr",
+ "regex-automata",
  "regex-syntax",
 ]
 
 [[package]]
 name = "regex-automata"
-version = "0.1.10"
+version = "0.4.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6c230d73fb8d8c1b9c0b3135c5142a8acee3a0558fb8db5cf1cb65f8d7862132"
+checksum = "5bb987efffd3c6d0d8f5f89510bb458559eab11e4f869acb20bf845e016259cd"
 dependencies = [
+ "aho-corasick",
+ "memchr",
  "regex-syntax",
 ]
 
 [[package]]
 name = "regex-syntax"
-version = "0.6.25"
+version = "0.8.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f497285884f3fcff424ffc933e56d7cbca511def0c9831a7f9b5f6153e3cc89b"
+checksum = "c08c74e62047bb2de4ff487b251e4a92e24f48745648451635cec7d591162d9f"
 
 [[package]]
-name = "remove_dir_all"
-version = "0.5.3"
+name = "regress"
+version = "0.6.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3acd125665422973a33ac9d3dd2df85edad0f4ae9b00dafb1a05e43a9f5ef8e7"
+checksum = "82a9ecfa0cb04d0b04dddb99b8ccf4f66bc8dfd23df694b398570bd8ae3a50fb"
 dependencies = [
- "winapi",
+ "hashbrown 0.13.2",
+ "memchr",
 ]
 
 [[package]]
-name = "renderdoc-sys"
-version = "0.7.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f1382d1f0a252c4bf97dc20d979a2fdd05b024acd7c2ed0f7595d7817666a157"
-
-[[package]]
 name = "reqwest"
-version = "0.11.10"
+version = "0.11.24"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "46a1f7aa4f35e5e8b4160449f51afc758f0ce6454315a9fa7d0d113e958c41eb"
+checksum = "c6920094eb85afde5e4a138be3f2de8bbdf28000f0029e72c45025a56b042251"
 dependencies = [
- "base64",
- "bytes 1.1.0",
+ "async-compression",
+ "base64 0.21.7",
+ "bytes",
+ "cookie",
+ "cookie_store",
  "encoding_rs",
  "futures-core",
  "futures-util",
@@ -3405,11 +2824,14 @@ dependencies = [
  "http-body",
  "hyper",
  "hyper-rustls",
+ "hyper-tls",
  "ipnet",
  "js-sys",
- "lazy_static",
  "log",
  "mime",
+ "mime_guess",
+ "native-tls",
+ "once_cell",
  "percent-encoding",
  "pin-project-lite",
  "rustls",
@@ -3417,8 +2839,13 @@ dependencies = [
  "serde",
  "serde_json",
  "serde_urlencoded",
+ "sync_wrapper",
+ "system-configuration",
  "tokio",
+ "tokio-native-tls",
  "tokio-rustls",
+ "tokio-util",
+ "tower-service",
  "url",
  "wasm-bindgen",
  "wasm-bindgen-futures",
@@ -3428,34 +2855,52 @@ dependencies = [
 ]
 
 [[package]]
-name = "result"
-version = "1.0.0"
+name = "reqwest-middleware"
+version = "0.2.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "194d8e591e405d1eecf28819740abed6d719d1a2db87fc0bcdedee9a26d55560"
+checksum = "88a3e86aa6053e59030e7ce2d2a3b258dd08fc2d337d52f73f6cb480f5858690"
+dependencies = [
+ "anyhow",
+ "async-trait",
+ "http",
+ "reqwest",
+ "serde",
+ "task-local-extensions",
+ "thiserror",
+]
 
 [[package]]
-name = "resvg"
-version = "0.18.0"
+name = "reqwest-retry"
+version = "0.3.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "608c6e8aa6fb2c13bc06e4184d7c7b2cc1b7c138f88a539da8be55c3c033d7f4"
+checksum = "9af20b65c2ee9746cc575acb6bd28a05ffc0d15e25c992a8f4462d8686aacb4f"
 dependencies = [
- "jpeg-decoder",
- "log",
- "pico-args",
- "png 0.17.5",
- "rgb",
- "svgfilters",
- "tiny-skia",
- "usvg",
+ "anyhow",
+ "async-trait",
+ "chrono",
+ "futures",
+ "getrandom 0.2.12",
+ "http",
+ "hyper",
+ "parking_lot 0.11.2",
+ "reqwest",
+ "reqwest-middleware",
+ "retry-policies",
+ "task-local-extensions",
+ "tokio",
+ "tracing",
+ "wasm-timer",
 ]
 
 [[package]]
-name = "rgb"
-version = "0.8.32"
+name = "retry-policies"
+version = "0.2.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e74fdc210d8f24a7dbfedc13b04ba5764f5232754ccebfdf5fff1bad791ccbc6"
+checksum = "17dd00bff1d737c40dbcd47d4375281bf4c17933f9eef0a185fc7bacca23ecbd"
 dependencies = [
- "bytemuck",
+ "anyhow",
+ "chrono",
+ "rand 0.8.5",
 ]
 
 [[package]]
@@ -3468,51 +2913,30 @@ dependencies = [
  "libc",
  "once_cell",
  "spin 0.5.2",
- "untrusted",
+ "untrusted 0.7.1",
  "web-sys",
  "winapi",
 ]
 
 [[package]]
-name = "ron"
-version = "0.6.6"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "86018df177b1beef6c7c8ef949969c4f7cb9a9344181b92486b23c79995bdaa4"
-dependencies = [
- "base64",
- "bitflags",
- "serde",
-]
-
-[[package]]
-name = "ron"
-version = "0.7.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1b861ecaade43ac97886a512b360d01d66be9f41f3c61088b42cedf92e03d678"
-dependencies = [
- "base64",
- "bitflags",
- "serde",
-]
-
-[[package]]
-name = "roxmltree"
-version = "0.14.1"
+name = "ring"
+version = "0.17.7"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "921904a62e410e37e215c40381b7117f830d9d89ba60ab5236170541dd25646b"
+checksum = "688c63d65483050968b2a8937f7995f443e27041a0f7700aa59b0822aedebb74"
 dependencies = [
- "xmlparser",
+ "cc",
+ "getrandom 0.2.12",
+ "libc",
+ "spin 0.9.8",
+ "untrusted 0.9.0",
+ "windows-sys 0.48.0",
 ]
 
 [[package]]
-name = "rust-ini"
-version = "0.18.0"
+name = "rustc-demangle"
+version = "0.1.23"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f6d5f2436026b4f6e79dc829837d467cc7e9a55ee40e750d716713540715a2df"
-dependencies = [
- "cfg-if 1.0.0",
- "ordered-multimap",
-]
+checksum = "d626bb9dae77e28219937af045c257c28bfd3f69333c512553507f5f9798cb76"
 
 [[package]]
 name = "rustc-hash"
@@ -3521,48 +2945,56 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "08d43f7aa6b08d49f382cde6a7982047c3426db949b1424bc4b7ec9ae12c6ce2"
 
 [[package]]
-name = "rustc-serialize"
-version = "0.3.24"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "dcf128d1287d2ea9d80910b5f1120d0b8eede3fbf1abe91c40d39ea7d51e6fda"
-
-[[package]]
 name = "rustc_version"
-version = "0.3.3"
+version = "0.4.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f0dfe2087c51c460008730de8b57e6a320782fbfb312e1f4d520e6c6fae155ee"
+checksum = "bfa0f585226d2e68097d4f95d113b15b83a82e819ab25717ec0590d9584ef366"
 dependencies = [
- "semver 0.11.0",
+ "semver",
 ]
 
 [[package]]
-name = "rustc_version"
-version = "0.4.0"
+name = "rustix"
+version = "0.38.31"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "bfa0f585226d2e68097d4f95d113b15b83a82e819ab25717ec0590d9584ef366"
+checksum = "6ea3e1a662af26cd7a3ba09c0297a31af215563ecf42817c98df621387f4e949"
 dependencies = [
- "semver 1.0.9",
+ "bitflags 2.4.2",
+ "errno",
+ "libc",
+ "linux-raw-sys",
+ "windows-sys 0.52.0",
 ]
 
 [[package]]
 name = "rustls"
-version = "0.20.4"
+version = "0.21.10"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4fbfeb8d0ddb84706bc597a5574ab8912817c52a397f819e5b614e2265206921"
+checksum = "f9d5a6813c0759e4609cd494e8e725babae6a2ca7b62a5536a13daaec6fcb7ba"
 dependencies = [
  "log",
- "ring",
+ "ring 0.17.7",
+ "rustls-webpki",
  "sct",
- "webpki",
 ]
 
 [[package]]
 name = "rustls-pemfile"
-version = "0.3.0"
+version = "1.0.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "0864aeff53f8c05aa08d86e5ef839d3dfcf07aeba2db32f12db0ef716e87bd55"
+dependencies = [
+ "base64 0.13.0",
+]
+
+[[package]]
+name = "rustls-webpki"
+version = "0.101.7"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1ee86d63972a7c661d1536fefe8c3c8407321c3df668891286de28abcd087360"
+checksum = "8b6275d1ee7a1cd780b64aca7726599a1dbc893b1e64144529e55c3c2f745765"
 dependencies = [
- "base64",
+ "ring 0.17.7",
+ "untrusted 0.9.0",
 ]
 
 [[package]]
@@ -3572,19 +3004,33 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "f2cc38e8fa666e2de3c4aba7edeb5ffc5246c1c2ed0e3d17e560aeeba736b23f"
 
 [[package]]
-name = "rustybuzz"
-version = "0.4.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "44561062e583c4873162861261f16fd1d85fe927c4904d71329a4fe43dc355ef"
+name = "rusty_ytdl"
+version = "0.6.6"
+source = "git+https://github.com/Mithronn/rusty_ytdl/?branch=main#32232d4fc8ab2ccdab77147d557cde0152a66893"
 dependencies = [
- "bitflags",
- "bytemuck",
- "smallvec",
- "ttf-parser 0.12.3",
- "unicode-bidi-mirroring",
- "unicode-ccc",
- "unicode-general-category",
- "unicode-script",
+ "aes",
+ "async-trait",
+ "boa_engine",
+ "cbc",
+ "derivative",
+ "derive_more",
+ "hex",
+ "m3u8-rs",
+ "once_cell",
+ "rand 0.8.5",
+ "regex",
+ "reqwest",
+ "reqwest-middleware",
+ "reqwest-retry",
+ "scraper",
+ "serde",
+ "serde_json",
+ "serde_qs",
+ "thiserror",
+ "tokio",
+ "unicode-segmentation",
+ "url",
+ "urlencoding",
 ]
 
 [[package]]
@@ -3594,13 +3040,10 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "73b4b750c782965c211b42f022f59af1fbceabdd026623714f104152f1ec149f"
 
 [[package]]
-name = "safe_arch"
-version = "0.5.2"
+name = "ryu-js"
+version = "0.2.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c1ff3d6d9696af502cc3110dacce942840fb06ff4514cad92236ecc455f2ce05"
-dependencies = [
- "bytemuck",
-]
+checksum = "6518fc26bced4d53678a22d6e423e9d8716377def84545fe328236e3af070e7f"
 
 [[package]]
 name = "same-file"
@@ -3612,6 +3055,15 @@ dependencies = [
 ]
 
 [[package]]
+name = "schannel"
+version = "0.1.23"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "fbc91545643bcf3a0bbb6569265615222618bdf33ce4ffbbd13c4bbd4c093534"
+dependencies = [
+ "windows-sys 0.52.0",
+]
+
+[[package]]
 name = "scoped-tls"
 version = "1.0.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -3624,112 +3076,128 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "d29ab0c6d3fc0ee92fe66e2d99f700eab17a8d57d1c1d3b748380fb20baa78cd"
 
 [[package]]
-name = "sct"
-version = "0.7.0"
+name = "scraper"
+version = "0.16.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d53dcdb7c9f8158937a7981b48accfd39a43af418591a5d008c7b22b5e1b7ca4"
+checksum = "59e25654b5e9fd557a67dbaab5a5d36b8c448d0561beb4c041b6dbb902eddfa6"
 dependencies = [
- "ring",
- "untrusted",
+ "ahash",
+ "cssparser",
+ "ego-tree",
+ "getopts",
+ "html5ever",
+ "once_cell",
+ "selectors",
+ "smallvec",
+ "tendril",
 ]
 
 [[package]]
-name = "semver"
-version = "0.11.0"
+name = "sct"
+version = "0.7.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f301af10236f6df4160f7c3f04eec6dbc70ace82d23326abad5edee88801c6b6"
+checksum = "d53dcdb7c9f8158937a7981b48accfd39a43af418591a5d008c7b22b5e1b7ca4"
 dependencies = [
- "semver-parser",
+ "ring 0.16.20",
+ "untrusted 0.7.1",
 ]
 
 [[package]]
-name = "semver"
-version = "1.0.9"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8cb243bdfdb5936c8dc3c45762a19d12ab4550cdc753bc247637d4ec35a040fd"
-
-[[package]]
-name = "semver-parser"
-version = "0.10.2"
+name = "security-framework"
+version = "2.9.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "00b0bef5b7f9e0df16536d3961cfb6e84331c065b4066afb39768d0e319411f7"
+checksum = "05b64fb303737d99b81884b2c63433e9ae28abebe5eb5045dcdd175dc2ecf4de"
 dependencies = [
- "pest",
+ "bitflags 1.3.2",
+ "core-foundation 0.9.3",
+ "core-foundation-sys 0.8.3",
+ "libc",
+ "security-framework-sys",
 ]
 
 [[package]]
-name = "serde"
-version = "1.0.137"
+name = "security-framework-sys"
+version = "2.9.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "61ea8d54c77f8315140a05f4c7237403bf38b72704d031543aa1d16abbf517d1"
+checksum = "e932934257d3b408ed8f30db49d85ea163bfe74961f017f405b025af298f0c7a"
 dependencies = [
- "serde_derive",
+ "core-foundation-sys 0.8.3",
+ "libc",
 ]
 
 [[package]]
-name = "serde-xml-rs"
-version = "0.5.1"
+name = "selectors"
+version = "0.24.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "65162e9059be2f6a3421ebbb4fef3e74b7d9e7c60c50a0e292c6239f19f1edfa"
+checksum = "0c37578180969d00692904465fb7f6b3d50b9a2b952b87c23d0e2e5cb5013416"
 dependencies = [
+ "bitflags 1.3.2",
+ "cssparser",
+ "derive_more",
+ "fxhash",
  "log",
- "serde",
- "thiserror",
- "xml-rs",
+ "phf 0.8.0",
+ "phf_codegen 0.8.0",
+ "precomputed-hash",
+ "servo_arc",
+ "smallvec",
 ]
 
 [[package]]
-name = "serde_cbor"
-version = "0.11.2"
+name = "semver"
+version = "1.0.6"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2bef2ebfde456fb76bbcf9f59315333decc4fda0b2b44b420243c11e0f5ec1f5"
+checksum = "a4a3381e03edd24287172047536f20cabde766e2cd3e65e6b00fb3af51c4f38d"
+
+[[package]]
+name = "serde"
+version = "1.0.196"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "870026e60fa08c69f064aa766c10f10b1d62db9ccd4d0abb206472bee0ce3b32"
 dependencies = [
- "half",
- "serde",
+ "serde_derive",
 ]
 
 [[package]]
 name = "serde_derive"
-version = "1.0.137"
+version = "1.0.196"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1f26faba0c3959972377d3b2d306ee9f71faee9714294e41bb777f83f88578be"
+checksum = "33c85360c95e7d137454dc81d9a4ed2b8efd8fbe19cee57357b32b9771fccb67"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn",
+ "syn 2.0.48",
 ]
 
 [[package]]
-name = "serde_ini"
-version = "0.2.0"
+name = "serde_json"
+version = "1.0.113"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "eb236687e2bb073a7521c021949be944641e671b8505a94069ca37b656c81139"
+checksum = "69801b70b1c3dac963ecb03a364ba0ceda9cf60c71cfe475e99864759c8b8a79"
 dependencies = [
- "result",
+ "itoa",
+ "ryu",
  "serde",
- "void",
 ]
 
 [[package]]
-name = "serde_json"
-version = "1.0.81"
+name = "serde_qs"
+version = "0.12.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9b7ce2b32a1aed03c558dc61a5cd328f15aff2dbc17daad8fb8af04d2100e15c"
+checksum = "0431a35568651e363364210c91983c1da5eb29404d9f0928b67d4ebcfa7d330c"
 dependencies = [
- "itoa 1.0.1",
- "ryu",
+ "percent-encoding",
  "serde",
+ "thiserror",
 ]
 
 [[package]]
-name = "serde_repr"
-version = "0.1.8"
+name = "serde_spanned"
+version = "0.6.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a2ad84e47328a31223de7fed7a4f5087f2d6ddfe586cf3ca25b7a165bc0a5aed"
+checksum = "eb3622f419d1296904700073ea6cc23ad690adbd66f13ea683df73298736f0c1"
 dependencies = [
- "proc-macro2",
- "quote",
- "syn",
+ "serde",
 ]
 
 [[package]]
@@ -3739,98 +3207,60 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "d3491c14715ca2294c4d6a88f15e84739788c1d030eed8c110436aafdaa2f3fd"
 dependencies = [
  "form_urlencoded",
- "itoa 1.0.1",
+ "itoa",
  "ryu",
  "serde",
 ]
 
 [[package]]
-name = "serde_with"
-version = "1.13.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b827f2113224f3f19a665136f006709194bdfdcb1fdc1e4b2b5cbac8e0cced54"
-dependencies = [
- "rustversion",
- "serde",
- "serde_with_macros",
-]
-
-[[package]]
-name = "serde_with_macros"
-version = "1.5.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e182d6ec6f05393cc0e5ed1bf81ad6db3a8feedf8ee515ecdd369809bcce8082"
-dependencies = [
- "darling",
- "proc-macro2",
- "quote",
- "syn",
-]
-
-[[package]]
-name = "servo-fontconfig"
-version = "0.5.1"
+name = "servo_arc"
+version = "0.2.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c7e3e22fe5fd73d04ebf0daa049d3efe3eae55369ce38ab16d07ddd9ac5c217c"
+checksum = "d52aa42f8fdf0fed91e5ce7f23d8138441002fa31dca008acf47e6fd4721f741"
 dependencies = [
- "libc",
- "servo-fontconfig-sys",
+ "nodrop",
+ "stable_deref_trait",
 ]
 
 [[package]]
-name = "servo-fontconfig-sys"
-version = "5.1.0"
+name = "sha1"
+version = "0.10.6"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e36b879db9892dfa40f95da1c38a835d41634b825fbd8c4c418093d53c24b388"
+checksum = "e3bf829a2d51ab4a5ddf1352d8470c140cadc8301b2ae1789db023f01cedd6ba"
 dependencies = [
- "expat-sys",
- "freetype-sys",
- "pkg-config",
+ "cfg-if 1.0.0",
+ "cpufeatures",
+ "digest",
 ]
 
 [[package]]
-name = "sha-1"
-version = "0.8.2"
+name = "shlex"
+version = "1.1.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f7d94d0bede923b3cea61f3f1ff57ff8cdfd77b400fb8f9998949e0cf04163df"
-dependencies = [
- "block-buffer",
- "digest",
- "fake-simd",
- "opaque-debug",
-]
+checksum = "43b2853a4d09f215c24cc5489c992ce46052d359b5109343cbafbf26bc62f8a3"
 
 [[package]]
-name = "sha1"
-version = "0.6.1"
+name = "signal-hook"
+version = "0.3.17"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c1da05c97445caa12d05e848c4a4fcbbea29e748ac28f7e80e9b010392063770"
+checksum = "8621587d4798caf8eb44879d42e56b9a93ea5dcd315a6487c357130095b62801"
 dependencies = [
- "sha1_smol",
+ "libc",
+ "signal-hook-registry",
 ]
 
 [[package]]
-name = "sha1_smol"
-version = "1.0.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ae1a47186c03a32177042e55dbc5fd5aee900b8e0069a8d70fba96a9375cd012"
-
-[[package]]
-name = "sharded-slab"
-version = "0.1.4"
+name = "signal-hook-mio"
+version = "0.2.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "900fba806f70c630b0a382d0d825e17a0f19fcd059a2ade1ff237bcddf446b31"
+checksum = "29ad2e15f37ec9a6cc544097b78a1ec90001e9f71b81338ca39f430adaca99af"
 dependencies = [
- "lazy_static",
+ "libc",
+ "mio",
+ "signal-hook",
 ]
 
 [[package]]
-name = "shell-words"
-version = "1.1.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "24188a676b6ae68c3b2cb3a01be17fbf7240ce009799bb56d5b1409051e78fde"
-
-[[package]]
 name = "signal-hook-registry"
 version = "1.4.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -3840,56 +3270,25 @@ dependencies = [
 ]
 
 [[package]]
-name = "simplecss"
-version = "0.2.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a11be7c62927d9427e9f40f3444d5499d868648e2edbc4e2116de69e7ec0e89d"
-dependencies = [
- "log",
-]
-
-[[package]]
 name = "siphasher"
-version = "0.3.10"
+version = "0.3.11"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7bd3e3206899af3f8b12af284fafc038cc1dc2b41d1b89dd17297221c5d225de"
+checksum = "38b58827f4464d87d377d175e90bf58eb00fd8716ff0a62f80356b5e61555d0d"
 
 [[package]]
 name = "slab"
-version = "0.4.6"
+version = "0.4.9"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "eb703cfe953bccee95685111adeedb76fabe4e97549a58d16f03ea7b9367bb32"
-
-[[package]]
-name = "sled"
-version = "0.34.7"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7f96b4737c2ce5987354855aed3797279def4ebf734436c6aa4552cf8e169935"
+checksum = "8f92a496fb766b417c996b9c5e57daf2f7ad3b0bebe1ccfca4856390e3d3bb67"
 dependencies = [
- "crc32fast",
- "crossbeam-epoch",
- "crossbeam-utils",
- "fs2",
- "fxhash",
- "libc",
- "log",
- "parking_lot",
-]
-
-[[package]]
-name = "slotmap"
-version = "1.0.6"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e1e08e261d0e8f5c43123b7adf3e4ca1690d655377ac93a03b2c9d3e98de1342"
-dependencies = [
- "version_check",
+ "autocfg",
 ]
 
 [[package]]
 name = "smallvec"
-version = "1.8.0"
+version = "1.13.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f2dd574626839106c320a323308629dcb1acfc96e32a8cba364ddc61ac23ee83"
+checksum = "e6ecd384b10a64542d77071bd64bd7b231f4ed5940fba55e98c3de13824cf3d7"
 
 [[package]]
 name = "smithay-client-toolkit"
@@ -3897,7 +3296,7 @@ version = "0.15.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "8a28f16a97fa0e8ce563b2774d1e732dd5d4025d2772c5dba0a41a0f90a29da3"
 dependencies = [
- "bitflags",
+ "bitflags 1.3.2",
  "calloop",
  "dlib",
  "lazy_static",
@@ -3911,32 +3310,30 @@ dependencies = [
 ]
 
 [[package]]
-name = "smithay-clipboard"
-version = "0.6.5"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "610b551bd25378bfd2b8e7a0fcbd83d427e8f2f6a40c47ae0f70688e9949dd55"
-dependencies = [
- "smithay-client-toolkit",
- "wayland-client",
-]
-
-[[package]]
 name = "socket2"
-version = "0.4.4"
+version = "0.5.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "66d72b759436ae32898a2af0a14218dbf55efde3feeb170eb623637db85ee1e0"
+checksum = "7b5fac59a5cb5dd637972e5fca70daf0523c9067fcdc4842f053dae04a18f8e9"
 dependencies = [
  "libc",
- "winapi",
+ "windows-sys 0.48.0",
 ]
 
 [[package]]
-name = "speculoos"
-version = "0.9.0"
+name = "souvlaki"
+version = "0.7.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0bcff6a72e2ddfb09ce0064568857e70d3cf6f4342244ebb1f84fa6f89b16c26"
+checksum = "ea4544ba17df4ac03d6503ae8abba19adad3ae89203a425945dc4c12d7790bfa"
 dependencies = [
- "num",
+ "block",
+ "cocoa",
+ "core-graphics 0.22.3",
+ "dbus",
+ "dbus-crossroads",
+ "dispatch",
+ "objc",
+ "thiserror",
+ "windows",
 ]
 
 [[package]]
@@ -3947,34 +3344,72 @@ checksum = "6e63cff320ae2c57904679ba7cb63280a3dc4613885beafb148ee7bf9aa9042d"
 
 [[package]]
 name = "spin"
-version = "0.9.3"
+version = "0.9.8"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c530c2b0d0bf8b69304b39fe2001993e267461948b890cd037d8ad4293fa1a0d"
+checksum = "6980e8d7511241f8acf4aebddbb1ff938df5eebe98691418c4468d0b72a96a67"
 dependencies = [
  "lock_api",
 ]
 
 [[package]]
-name = "spirv"
-version = "0.2.0+1.5.4"
+name = "sptr"
+version = "0.3.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "246bfa38fe3db3f1dfc8ca5a2cdeb7348c78be2112740cc0ec8ef18b6d94f830"
+checksum = "3b9b39299b249ad65f3b7e96443bad61c02ca5cd3589f46cb6d610a0fd6c0d6a"
+
+[[package]]
+name = "stability"
+version = "0.1.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "ebd1b177894da2a2d9120208c3386066af06a488255caabc5de8ddca22dbc3ce"
 dependencies = [
- "bitflags",
- "num-traits",
+ "quote",
+ "syn 1.0.99",
 ]
 
 [[package]]
+name = "stable_deref_trait"
+version = "1.2.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "a8f112729512f8e442d81f95a8a7ddf2b7c6b8a1a6f509a95864142b30cab2d3"
+
+[[package]]
 name = "static_assertions"
 version = "1.1.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "a2eb9349b6444b326872e140eb1cf5e7c522154d69e7a0ffb0fb81c06b37543f"
 
 [[package]]
-name = "str-buf"
-version = "1.0.5"
+name = "stdweb"
+version = "0.1.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d44a3643b4ff9caf57abcee9c2c621d6c03d9135e0d8b589bd9afb5992cb176a"
+checksum = "ef5430c8e36b713e13b48a9f709cc21e046723fe44ce34587b73a830203b533e"
+
+[[package]]
+name = "string_cache"
+version = "0.8.7"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "f91138e76242f575eb1d3b38b4f1362f10d3a43f47d182a5b359af488a02293b"
+dependencies = [
+ "new_debug_unreachable",
+ "once_cell",
+ "parking_lot 0.12.0",
+ "phf_shared 0.10.0",
+ "precomputed-hash",
+ "serde",
+]
+
+[[package]]
+name = "string_cache_codegen"
+version = "0.5.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "6bb30289b722be4ff74a408c3cc27edeaad656e06cb1fe8fa9231fa59c728988"
+dependencies = [
+ "phf_generator 0.10.0",
+ "phf_shared 0.10.0",
+ "proc-macro2",
+ "quote",
+]
 
 [[package]]
 name = "strsim"
@@ -3983,166 +3418,343 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "73473c0e59e6d5812c5dfe2a064a6444949f089e20eec9a2e5506596494e4623"
 
 [[package]]
-name = "structopt"
-version = "0.3.26"
+name = "strum"
+version = "0.26.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0c6b5c64445ba8094a6ab0c3cd2ad323e07171012d9c98b0b15651daf1787a10"
+checksum = "723b93e8addf9aa965ebe2d11da6d7540fa2283fcea14b3371ff055f7ba13f5f"
 dependencies = [
- "clap",
- "lazy_static",
- "structopt-derive",
+ "strum_macros",
 ]
 
 [[package]]
-name = "structopt-derive"
-version = "0.4.18"
+name = "strum_macros"
+version = "0.26.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "dcb5ae327f9cc13b68763b5749770cb9e048a99bd9dfdfa58d0cf05d5f64afe0"
+checksum = "7a3417fc93d76740d974a01654a09777cb500428cc874ca9f45edfe0c4d4cd18"
 dependencies = [
  "heck",
- "proc-macro-error",
  "proc-macro2",
  "quote",
- "syn",
+ "rustversion",
+ "syn 2.0.48",
 ]
 
 [[package]]
-name = "svg_fmt"
-version = "0.4.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8fb1df15f412ee2e9dfc1c504260fa695c1c3f10fe9f4a6ee2d2184d7d6450e2"
+name = "symphonia"
+version = "0.5.1"
+source = "git+https://github.com/pdeljanov/Symphonia#bb7c180e8d696cdd896f0a179abfe0c01d5e6385"
+dependencies = [
+ "lazy_static",
+ "symphonia-bundle-flac",
+ "symphonia-codec-aac",
+ "symphonia-codec-adpcm",
+ "symphonia-codec-pcm",
+ "symphonia-codec-vorbis",
+ "symphonia-core",
+ "symphonia-format-isomp4",
+ "symphonia-format-mkv",
+ "symphonia-format-ogg",
+ "symphonia-format-wav",
+ "symphonia-metadata",
+]
 
 [[package]]
-name = "svgfilters"
-version = "0.4.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "639abcebc15fdc2df179f37d6f5463d660c1c79cd552c12343a4600827a04bce"
+name = "symphonia-bundle-flac"
+version = "0.5.1"
+source = "git+https://github.com/pdeljanov/Symphonia#bb7c180e8d696cdd896f0a179abfe0c01d5e6385"
 dependencies = [
- "float-cmp",
- "rgb",
+ "log",
+ "symphonia-core",
+ "symphonia-metadata",
+ "symphonia-utils-xiph",
 ]
 
 [[package]]
-name = "svgtypes"
-version = "0.8.0"
+name = "symphonia-codec-aac"
+version = "0.5.1"
+source = "git+https://github.com/pdeljanov/Symphonia#bb7c180e8d696cdd896f0a179abfe0c01d5e6385"
+dependencies = [
+ "lazy_static",
+ "log",
+ "symphonia-core",
+]
+
+[[package]]
+name = "symphonia-codec-adpcm"
+version = "0.5.1"
+source = "git+https://github.com/pdeljanov/Symphonia#bb7c180e8d696cdd896f0a179abfe0c01d5e6385"
+dependencies = [
+ "log",
+ "symphonia-core",
+]
+
+[[package]]
+name = "symphonia-codec-pcm"
+version = "0.5.1"
+source = "git+https://github.com/pdeljanov/Symphonia#bb7c180e8d696cdd896f0a179abfe0c01d5e6385"
+dependencies = [
+ "log",
+ "symphonia-core",
+]
+
+[[package]]
+name = "symphonia-codec-vorbis"
+version = "0.5.1"
+source = "git+https://github.com/pdeljanov/Symphonia#bb7c180e8d696cdd896f0a179abfe0c01d5e6385"
+dependencies = [
+ "log",
+ "symphonia-core",
+ "symphonia-utils-xiph",
+]
+
+[[package]]
+name = "symphonia-core"
+version = "0.5.1"
+source = "git+https://github.com/pdeljanov/Symphonia#bb7c180e8d696cdd896f0a179abfe0c01d5e6385"
+dependencies = [
+ "arrayvec",
+ "bitflags 1.3.2",
+ "bytemuck",
+ "lazy_static",
+ "log",
+]
+
+[[package]]
+name = "symphonia-format-isomp4"
+version = "0.5.1"
+source = "git+https://github.com/pdeljanov/Symphonia#bb7c180e8d696cdd896f0a179abfe0c01d5e6385"
+dependencies = [
+ "encoding_rs",
+ "log",
+ "symphonia-core",
+ "symphonia-metadata",
+ "symphonia-utils-xiph",
+]
+
+[[package]]
+name = "symphonia-format-mkv"
+version = "0.5.1"
+source = "git+https://github.com/pdeljanov/Symphonia#bb7c180e8d696cdd896f0a179abfe0c01d5e6385"
+dependencies = [
+ "lazy_static",
+ "log",
+ "symphonia-core",
+ "symphonia-metadata",
+ "symphonia-utils-xiph",
+]
+
+[[package]]
+name = "symphonia-format-ogg"
+version = "0.5.1"
+source = "git+https://github.com/pdeljanov/Symphonia#bb7c180e8d696cdd896f0a179abfe0c01d5e6385"
+dependencies = [
+ "log",
+ "symphonia-core",
+ "symphonia-metadata",
+ "symphonia-utils-xiph",
+]
+
+[[package]]
+name = "symphonia-format-wav"
+version = "0.5.1"
+source = "git+https://github.com/pdeljanov/Symphonia#bb7c180e8d696cdd896f0a179abfe0c01d5e6385"
+dependencies = [
+ "log",
+ "symphonia-core",
+ "symphonia-metadata",
+]
+
+[[package]]
+name = "symphonia-metadata"
+version = "0.5.1"
+source = "git+https://github.com/pdeljanov/Symphonia#bb7c180e8d696cdd896f0a179abfe0c01d5e6385"
+dependencies = [
+ "encoding_rs",
+ "lazy_static",
+ "log",
+ "symphonia-core",
+]
+
+[[package]]
+name = "symphonia-utils-xiph"
+version = "0.5.1"
+source = "git+https://github.com/pdeljanov/Symphonia#bb7c180e8d696cdd896f0a179abfe0c01d5e6385"
+dependencies = [
+ "symphonia-core",
+ "symphonia-metadata",
+]
+
+[[package]]
+name = "syn"
+version = "1.0.99"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "dabb3eb59a457c56d5282ab4545609e2cc382b41f6af239bb8d59a7267ef94b3"
+checksum = "58dbef6ec655055e20b86b15a8cc6d439cca19b667537ac6a1369572d151ab13"
 dependencies = [
- "siphasher",
+ "proc-macro2",
+ "quote",
+ "unicode-ident",
 ]
 
 [[package]]
 name = "syn"
-version = "1.0.92"
+version = "2.0.48"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7ff7c592601f11445996a06f8ad0c27f094a58857c2f89e97974ab9235b92c52"
+checksum = "0f3531638e407dfc0814761abb7c00a5b54992b849452a0646b7f65c9f770f3f"
 dependencies = [
  "proc-macro2",
  "quote",
- "unicode-xid",
+ "unicode-ident",
 ]
 
 [[package]]
-name = "sysfs-class"
-version = "0.1.3"
+name = "sync_wrapper"
+version = "0.1.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "2047c6ded9c721764247e62cd3b03c09ffc529b2ba5b10ec482ae507a4a70160"
+
+[[package]]
+name = "synstructure"
+version = "0.13.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5e1bbcf869732c45a77898f7f61ed6d411dfc37613517e444842f58d428856d1"
+checksum = "c8af7666ab7b6390ab78131fb5b0fce11d6b7a6951602017c35fa82800708971"
 dependencies = [
- "numtoa",
+ "proc-macro2",
+ "quote",
+ "syn 2.0.48",
 ]
 
 [[package]]
-name = "temp-dir"
-version = "0.1.11"
+name = "system-configuration"
+version = "0.5.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "af547b166dd1ea4b472165569fc456cfb6818116f854690b0ff205e636523dab"
+checksum = "ba3a3adc5c275d719af8cb4272ea1c4a6d668a777f37e115f6d11ddbc1c8e0e7"
+dependencies = [
+ "bitflags 1.3.2",
+ "core-foundation 0.9.3",
+ "system-configuration-sys",
+]
 
 [[package]]
-name = "tempdir"
-version = "0.3.7"
+name = "system-configuration-sys"
+version = "0.5.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "15f2b5fb00ccdf689e0149d1b1b3c03fead81c2b37735d812fa8bddbbf41b6d8"
+checksum = "a75fb188eb626b924683e3b95e3a48e63551fcfb51949de2f06a9d91dbee93c9"
 dependencies = [
- "rand 0.4.6",
- "remove_dir_all",
+ "core-foundation-sys 0.8.3",
+ "libc",
 ]
 
 [[package]]
-name = "termcolor"
-version = "1.1.3"
+name = "tap"
+version = "1.0.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "bab24d30b911b2376f3a13cc2cd443142f0c81dda04c118693e35b3835757755"
+checksum = "55937e1799185b12863d447f42597ed69d9928686b8d88a1df17376a097d8369"
+
+[[package]]
+name = "task-local-extensions"
+version = "0.1.4"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "ba323866e5d033818e3240feeb9f7db2c4296674e4d9e16b97b7bf8f490434e8"
 dependencies = [
- "winapi-util",
+ "pin-utils",
 ]
 
 [[package]]
-name = "textwrap"
-version = "0.11.0"
+name = "tempfile"
+version = "3.10.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d326610f408c7a4eb6f51c37c330e496b08506c9457c9d34287ecc38809fb060"
+checksum = "a365e8cd18e44762ef95d87f284f4b5cd04107fec2ff3052bd6a3e6069669e67"
 dependencies = [
- "unicode-width",
+ "cfg-if 1.0.0",
+ "fastrand",
+ "rustix",
+ "windows-sys 0.52.0",
 ]
 
 [[package]]
+name = "tendril"
+version = "0.4.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "d24a120c5fc464a3458240ee02c299ebcb9d67b5249c8848b09d639dca8d7bb0"
+dependencies = [
+ "futf",
+ "mac",
+ "utf-8",
+]
+
+[[package]]
+name = "thin-vec"
+version = "0.2.13"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "a38c90d48152c236a3ab59271da4f4ae63d678c5d7ad6b7714d7cb9760be5e4b"
+
+[[package]]
 name = "thiserror"
-version = "1.0.31"
+version = "1.0.56"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "bd829fe32373d27f76265620b5309d0340cb8550f523c1dda251d6298069069a"
+checksum = "d54378c645627613241d077a3a79db965db602882668f9136ac42af9ecb730ad"
 dependencies = [
  "thiserror-impl",
 ]
 
 [[package]]
 name = "thiserror-impl"
-version = "1.0.31"
+version = "1.0.56"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0396bc89e626244658bef819e22d0cc459e795a5ebe878e6ec336d1674a8d79a"
+checksum = "fa0faa943b50f3db30a20aa7e265dbc66076993efed8463e8de414e5d06d3471"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn",
+ "syn 2.0.48",
 ]
 
 [[package]]
-name = "thread_local"
-version = "1.1.4"
+name = "time"
+version = "0.3.34"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5516c27b78311c50bf42c071425c560ac799b11c30b31f87e3081965fe5e0180"
+checksum = "c8248b6521bb14bc45b4067159b9b6ad792e2d6d754d6c41fb50e29fefe38749"
 dependencies = [
- "once_cell",
+ "deranged",
+ "itoa",
+ "num-conv",
+ "powerfmt",
+ "serde",
+ "time-core",
+ "time-macros",
 ]
 
 [[package]]
-name = "tiny-skia"
-version = "0.6.3"
+name = "time-core"
+version = "0.1.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1bcfd4339bdd4545eabed74b208f2f1555f2e6540fb58135c01f46c0940aa138"
+checksum = "ef927ca75afb808a4d64dd374f00a2adf8d0fcff8e7b184af886c3c87ec4a3f3"
+
+[[package]]
+name = "time-macros"
+version = "0.2.17"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "7ba3a3ef41e6672a2f0f001392bb5dcd3ff0a9992d618ca761a11c3121547774"
 dependencies = [
- "arrayref",
- "arrayvec 0.5.2",
- "bytemuck",
- "cfg-if 1.0.0",
- "png 0.17.5",
- "safe_arch",
+ "num-conv",
+ "time-core",
 ]
 
 [[package]]
-name = "tinytemplate"
-version = "1.2.1"
+name = "tinystr"
+version = "0.7.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "be4d6b5f19ff7664e8c98d03e2139cb510db9b0a60b55f8e8709b689d939b6bc"
+checksum = "8faa444297615a4e020acb64146b0603c9c395c03a97c17fd9028816d3b4d63e"
 dependencies = [
+ "displaydoc",
  "serde",
- "serde_json",
+ "zerovec",
 ]
 
 [[package]]
 name = "tinyvec"
-version = "1.6.0"
+version = "1.5.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "87cc5ceb3875bb20c2890005a4e226a4651264a5c75edb2421b52861a0a0cb50"
+checksum = "2c1c1d5a42b6245520c249549ec267180beaffcc0615401ac8e31853d4b6d8d2"
 dependencies = [
  "tinyvec_macros",
 ]
@@ -4155,63 +3767,61 @@ checksum = "cda74da7e1a664f795bb1f8a87ec406fb89a02522cf6e50620d016add6dbbf5c"
 
 [[package]]
 name = "tokio"
-version = "1.18.2"
+version = "1.36.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4903bf0427cf68dddd5aa6a93220756f8be0c34fcfa9f5e6191e103e15a31395"
+checksum = "61285f6515fa018fb2d1e46eb21223fff441ee8db5d0f1435e8ab4f5cdb80931"
 dependencies = [
- "bytes 1.1.0",
+ "backtrace",
+ "bytes",
  "libc",
- "memchr",
  "mio",
  "num_cpus",
- "once_cell",
+ "parking_lot 0.12.0",
  "pin-project-lite",
  "signal-hook-registry",
  "socket2",
  "tokio-macros",
- "winapi",
+ "windows-sys 0.48.0",
 ]
 
 [[package]]
 name = "tokio-macros"
-version = "1.7.0"
+version = "2.2.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b557f72f448c511a979e2564e55d74e6c4432fc96ff4f6241bc6bded342643b7"
+checksum = "5b8a1e28f2deaa14e508979454cb3a223b10b938b45af148bc0986de36f1923b"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn",
+ "syn 2.0.48",
 ]
 
 [[package]]
-name = "tokio-rustls"
-version = "0.23.4"
+name = "tokio-native-tls"
+version = "0.3.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c43ee83903113e03984cb9e5cebe6c04a5116269e900e3ddba8f068a62adda59"
+checksum = "bbae76ab933c85776efabc971569dd6119c580d8f5d448769dec1764bf796ef2"
 dependencies = [
- "rustls",
+ "native-tls",
  "tokio",
- "webpki",
 ]
 
 [[package]]
-name = "tokio-stream"
-version = "0.1.8"
+name = "tokio-rustls"
+version = "0.24.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "50145484efff8818b5ccd256697f36863f587da82cf8b409c53adf1e840798e3"
+checksum = "c28327cf380ac148141087fbfb9de9d7bd4e84ab5d2c28fbc911d753de8a7081"
 dependencies = [
- "futures-core",
- "pin-project-lite",
+ "rustls",
  "tokio",
 ]
 
 [[package]]
 name = "tokio-util"
-version = "0.7.1"
+version = "0.7.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0edfdeb067411dba2044da6d1cb2df793dd35add7888d73c16e3381ded401764"
+checksum = "cc463cd8deddc3770d20f9852143d50bf6094e640b485cb2e189a2099085ff45"
 dependencies = [
- "bytes 1.1.0",
+ "bytes",
  "futures-core",
  "futures-sink",
  "pin-project-lite",
@@ -4229,6 +3839,40 @@ dependencies = [
 ]
 
 [[package]]
+name = "toml"
+version = "0.8.10"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "9a9aad4a3066010876e8dcf5a8a06e70a558751117a145c6ce2b82c2e2054290"
+dependencies = [
+ "serde",
+ "serde_spanned",
+ "toml_datetime",
+ "toml_edit",
+]
+
+[[package]]
+name = "toml_datetime"
+version = "0.6.5"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "3550f4e9685620ac18a50ed434eb3aec30db8ba93b0287467bca5826ea25baf1"
+dependencies = [
+ "serde",
+]
+
+[[package]]
+name = "toml_edit"
+version = "0.22.4"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "0c9ffdf896f8daaabf9b66ba8e77ea1ed5ed0f72821b398aba62352e95062951"
+dependencies = [
+ "indexmap",
+ "serde",
+ "serde_spanned",
+ "toml_datetime",
+ "winnow",
+]
+
+[[package]]
 name = "tower-service"
 version = "0.3.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -4236,11 +3880,10 @@ checksum = "360dfd1d6d30e05fda32ace2c8c70e9c0a9da713275777f5a4dbb8a1893930c6"
 
 [[package]]
 name = "tracing"
-version = "0.1.34"
+version = "0.1.40"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5d0ecdcb44a79f0fe9844f0c4f33a342cbcbb5117de8001e6ba0dc2351327d09"
+checksum = "c3523ab5a71916ccf420eebdf5521fcef02141234bbc0b8a49f2fdc4544364ef"
 dependencies = [
- "cfg-if 1.0.0",
  "pin-project-lite",
  "tracing-attributes",
  "tracing-core",
@@ -4248,38 +3891,22 @@ dependencies = [
 
 [[package]]
 name = "tracing-attributes"
-version = "0.1.21"
+version = "0.1.27"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "cc6b8ad3567499f98a1db7a752b07a7c8c7c7c34c332ec00effb2b0027974b7c"
+checksum = "34704c8d6ebcbc939824180af020566b01a7c01f80641264eba0999f6c2b6be7"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn",
+ "syn 2.0.48",
 ]
 
 [[package]]
 name = "tracing-core"
-version = "0.1.26"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f54c8ca710e81886d498c2fd3331b56c93aa248d49de2222ad2742247c60072f"
-dependencies = [
- "lazy_static",
- "valuable",
-]
-
-[[package]]
-name = "tracing-subscriber"
-version = "0.3.11"
+version = "0.1.32"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4bc28f93baff38037f64e6f43d34cfa1605f27a49c34e8a04c5e78b0babf2596"
+checksum = "c06d3da6113f116aaee68e4d601191614c9053067f9ab7f6edbcb161237daa54"
 dependencies = [
- "lazy_static",
- "matchers",
- "regex",
- "sharded-slab",
- "thread_local",
- "tracing",
- "tracing-core",
+ "once_cell",
 ]
 
 [[package]]
@@ -4289,109 +3916,46 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "59547bce71d9c38b83d9c0e92b6066c4253371f15005def0c30d9657f50c7642"
 
 [[package]]
-name = "ttf-parser"
-version = "0.12.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7ae2f58a822f08abdaf668897e96a5656fe72f5a9ce66422423e8849384872e6"
-
-[[package]]
-name = "ttf-parser"
-version = "0.15.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c74c96594835e10fa545e2a51e8709f30b173a092bfd6036ef2cec53376244f3"
-
-[[package]]
-name = "twox-hash"
-version = "1.6.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "97fee6b57c6a41524a810daee9286c02d7752c4253064d0b05472833a438f675"
-dependencies = [
- "cfg-if 1.0.0",
- "rand 0.8.5",
- "static_assertions",
-]
-
-[[package]]
 name = "typenum"
-version = "1.15.0"
+version = "1.16.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "dcf81ac59edc17cc8697ff311e8f5ef2d99fcbd9817b34cec66f90b6c3dfd987"
-
-[[package]]
-name = "ucd-trie"
-version = "0.1.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "56dee185309b50d1f11bfedef0fe6d036842e3fb77413abef29f8f8d1c5d4c1c"
-
-[[package]]
-name = "uds_windows"
-version = "1.0.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "486992108df0fe0160680af1941fe856c521be931d5a5ecccefe0de86dc47e4a"
-dependencies = [
- "tempdir",
- "winapi",
-]
+checksum = "497961ef93d974e23eb6f433eb5fe1b7930b659f06d12dec6fc44a8f554c0bba"
 
 [[package]]
 name = "unicase"
-version = "2.6.0"
+version = "2.7.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "50f37be617794602aabbeee0be4f259dc1778fabe05e2d67ee8f79326d5cb4f6"
+checksum = "f7d2d4dafb69621809a81864c9c1b864479e1235c0dd4e199924b9742439ed89"
 dependencies = [
  "version_check",
 ]
 
 [[package]]
 name = "unicode-bidi"
-version = "0.3.8"
+version = "0.3.15"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "099b7128301d285f79ddd55b9a83d5e6b9e97c92e0ea0daebee7263e932de992"
+checksum = "08f95100a766bf4f8f28f90d77e0a5461bbdb219042e7679bebe79004fed8d75"
 
 [[package]]
-name = "unicode-bidi-mirroring"
-version = "0.1.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "56d12260fb92d52f9008be7e4bca09f584780eb2266dc8fecc6a192bec561694"
-
-[[package]]
-name = "unicode-ccc"
-version = "0.1.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "cc2520efa644f8268dce4dcd3050eaa7fc044fca03961e9998ac7e2e92b77cf1"
-
-[[package]]
-name = "unicode-general-category"
-version = "0.4.0"
+name = "unicode-ident"
+version = "1.0.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "07547e3ee45e28326cc23faac56d44f58f16ab23e413db526debce3b0bfd2742"
+checksum = "c4f5b37a154999a8f3f98cc23a628d850e154479cd94decf3414696e12e31aaf"
 
 [[package]]
 name = "unicode-normalization"
-version = "0.1.19"
+version = "0.1.22"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d54590932941a9e9266f0832deed84ebe1bf2e4c9e4a3554d393d18f5e854bf9"
+checksum = "5c5713f0fc4b5db668a2ac63cdb7bb4469d8c9fed047b1d0292cc7b0ce2ba921"
 dependencies = [
  "tinyvec",
 ]
 
 [[package]]
-name = "unicode-script"
-version = "0.5.4"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "58dd944fd05f2f0b5c674917aea8a4df6af84f2d8de3fe8d988b95d28fb8fb09"
-
-[[package]]
 name = "unicode-segmentation"
-version = "1.9.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7e8820f5d777f6224dc4be3632222971ac30164d4a258d595640799554ebfd99"
-
-[[package]]
-name = "unicode-vo"
-version = "0.1.0"
+version = "1.11.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b1d386ff53b415b7fe27b50bb44679e2cc4660272694b7b6f3326d8480823a94"
+checksum = "d4c87d22b6e3f4a18d4d40ef354e97c90fcb14dd91d7dc0aa9d8a1172ebf7202"
 
 [[package]]
 name = "unicode-width"
@@ -4400,85 +3964,69 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "3ed742d4ea2bd1176e236172c8429aaf54486e7ac098db29ffe6529e0ce50973"
 
 [[package]]
-name = "unicode-xid"
-version = "0.2.3"
+name = "untrusted"
+version = "0.7.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "957e51f3646910546462e67d5f7599b9e4fb8acdd304b087a6494730f9eebf04"
+checksum = "a156c684c91ea7d62626509bce3cb4e1d9ed5c4d978f7b4352658f96a4c26b4a"
 
 [[package]]
 name = "untrusted"
-version = "0.7.1"
+version = "0.9.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a156c684c91ea7d62626509bce3cb4e1d9ed5c4d978f7b4352658f96a4c26b4a"
+checksum = "8ecb6da28b8a351d773b68d5825ac39017e680750f980f3a1a85cd8dd28a47c1"
 
 [[package]]
 name = "url"
-version = "2.2.2"
+version = "2.5.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a507c383b2d33b5fc35d1861e77e6b383d158b2da5e14fe51b83dfedf6fd578c"
+checksum = "31e6302e3bb753d46e83516cae55ae196fc0c309407cf11ab35cc51a4c2a4633"
 dependencies = [
  "form_urlencoded",
- "idna",
- "matches",
+ "idna 0.5.0",
  "percent-encoding",
 ]
 
 [[package]]
 name = "urlencoding"
-version = "2.1.0"
+version = "2.1.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "68b90931029ab9b034b300b797048cf23723400aa757e8a2bfb9d748102f9821"
+checksum = "daf8dba3b7eb870caf1ddeed7bc9d2a049f3cfdfae7cb521b087cc33ae4c49da"
 
 [[package]]
-name = "usvg"
-version = "0.18.0"
+name = "utf-8"
+version = "0.7.6"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4058e0bd091a56f905e6963e40776ce6880b271275f0b493bff951433e303071"
-dependencies = [
- "base64",
- "data-url",
- "flate2",
- "float-cmp",
- "fontdb",
- "kurbo",
- "log",
- "pico-args",
- "rctree",
- "roxmltree",
- "rustybuzz",
- "simplecss",
- "siphasher",
- "svgtypes",
- "ttf-parser 0.12.3",
- "unicode-bidi",
- "unicode-script",
- "unicode-vo",
- "xmlwriter",
-]
+checksum = "09cc8ee72d2a9becf2f2febe0205bbed8fc6615b7cb429ad062dc7b7ddd036a9"
 
 [[package]]
-name = "valuable"
-version = "0.1.0"
+name = "utf16_iter"
+version = "1.0.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "830b7e5d4d90034032940e4ace0d9a9a057e7a45cd94e6c007832e39edb82f6d"
+checksum = "c8232dd3cdaed5356e0f716d285e4b40b932ac434100fe9b7e0e8e935b9e6246"
 
 [[package]]
-name = "version_check"
-version = "0.9.4"
+name = "utf8_iter"
+version = "1.0.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "49874b5167b65d7193b8aba1567f5c7d93d001cafc34600cee003eda787e483f"
+checksum = "b6c140620e7ffbb22c2dee59cafe6084a59b5ffc27a8859a5f0d494b5d52b6be"
 
 [[package]]
-name = "void"
-version = "1.0.2"
+name = "varuint"
+version = "0.6.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6a02e4885ed3bc0f2de90ea6dd45ebcbb66dacffe03547fadbb0eeae2770887d"
+checksum = "896414bb0f21aba00ff26b0a8a3679331b5a86886f217c9d9396b919a7bf4ac6"
 
 [[package]]
-name = "waker-fn"
-version = "1.1.0"
+name = "vcpkg"
+version = "0.2.15"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9d5b2c62b4012a3e1eca5a7e077d13b3bf498c4073e33ccd58626607748ceeca"
+checksum = "accd4ea62f7bb7a82fe23066fb0957d48ef677f6eeb8215f372f52e48bb32426"
+
+[[package]]
+name = "version_check"
+version = "0.9.4"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "49874b5167b65d7193b8aba1567f5c7d93d001cafc34600cee003eda787e483f"
 
 [[package]]
 name = "walkdir"
@@ -4502,12 +4050,6 @@ dependencies = [
 ]
 
 [[package]]
-name = "ward"
-version = "2.1.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1cbcd609d606e1307a1530061482ed2ee3fc9963128990238cefb2013127b61e"
-
-[[package]]
 name = "wasi"
 version = "0.9.0+wasi-snapshot-preview1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -4515,21 +4057,15 @@ checksum = "cccddf32554fecc6acb585f82a32a72e28b48f8c4c1883ddfeeeaa96f7d8e519"
 
 [[package]]
 name = "wasi"
-version = "0.10.2+wasi-snapshot-preview1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "fd6fbd9a79829dd1ad0cc20627bf1ed606756a7f77edff7b66b7064f9cb327c6"
-
-[[package]]
-name = "wasi"
 version = "0.11.0+wasi-snapshot-preview1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "9c8d87e72b64a3b4db28d11ce29237c246188f4f51057d65a7eab63b7987e423"
 
 [[package]]
 name = "wasm-bindgen"
-version = "0.2.80"
+version = "0.2.91"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "27370197c907c55e3f1a9fbe26f44e937fe6451368324e009cba39e139dc08ad"
+checksum = "c1e124130aee3fb58c5bdd6b639a0509486b0338acaaae0c84a5124b0f588b7f"
 dependencies = [
  "cfg-if 1.0.0",
  "wasm-bindgen-macro",
@@ -4537,24 +4073,24 @@ dependencies = [
 
 [[package]]
 name = "wasm-bindgen-backend"
-version = "0.2.80"
+version = "0.2.91"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "53e04185bfa3a779273da532f5025e33398409573f348985af9a1cbf3774d3f4"
+checksum = "c9e7e1900c352b609c8488ad12639a311045f40a35491fb69ba8c12f758af70b"
 dependencies = [
  "bumpalo",
- "lazy_static",
  "log",
+ "once_cell",
  "proc-macro2",
  "quote",
- "syn",
+ "syn 2.0.48",
  "wasm-bindgen-shared",
 ]
 
 [[package]]
 name = "wasm-bindgen-futures"
-version = "0.4.30"
+version = "0.4.41"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6f741de44b75e14c35df886aff5f1eb73aa114fa5d4d00dcd37b5e01259bf3b2"
+checksum = "877b9c3f61ceea0e56331985743b13f3d25c406a7098d45180fb5f09bc19ed97"
 dependencies = [
  "cfg-if 1.0.0",
  "js-sys",
@@ -4564,9 +4100,9 @@ dependencies = [
 
 [[package]]
 name = "wasm-bindgen-macro"
-version = "0.2.80"
+version = "0.2.91"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "17cae7ff784d7e83a2fe7611cfe766ecf034111b49deb850a3dc7699c08251f5"
+checksum = "b30af9e2d358182b5c7449424f017eba305ed32a7010509ede96cdc4696c46ed"
 dependencies = [
  "quote",
  "wasm-bindgen-macro-support",
@@ -4574,22 +4110,22 @@ dependencies = [
 
 [[package]]
 name = "wasm-bindgen-macro-support"
-version = "0.2.80"
+version = "0.2.91"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "99ec0dc7a4756fffc231aab1b9f2f578d23cd391390ab27f952ae0c9b3ece20b"
+checksum = "642f325be6301eb8107a83d12a8ac6c1e1c54345a7ef1a9261962dfefda09e66"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn",
+ "syn 2.0.48",
  "wasm-bindgen-backend",
  "wasm-bindgen-shared",
 ]
 
 [[package]]
 name = "wasm-bindgen-shared"
-version = "0.2.80"
+version = "0.2.91"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d554b7f530dee5964d9a9468d95c1f8b8acae4f282807e7d27d4b03099a46744"
+checksum = "4f186bd2dcf04330886ce82d6f33dd75a7bfcf69ecf5763b89fcde53b6ac9838"
 
 [[package]]
 name = "wasm-timer"
@@ -4599,7 +4135,7 @@ checksum = "be0ecb0db480561e9a7642b5d3e4187c128914e58aa84330b9493e3eb68c5e7f"
 dependencies = [
  "futures",
  "js-sys",
- "parking_lot",
+ "parking_lot 0.11.2",
  "pin-utils",
  "wasm-bindgen",
  "wasm-bindgen-futures",
@@ -4608,14 +4144,14 @@ dependencies = [
 
 [[package]]
 name = "wayland-client"
-version = "0.29.4"
+version = "0.29.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "91223460e73257f697d9e23d401279123d36039a3f7a449e983f123292d4458f"
+checksum = "3f3b068c05a039c9f755f881dc50f01732214f5685e379829759088967c46715"
 dependencies = [
- "bitflags",
+ "bitflags 1.3.2",
  "downcast-rs",
  "libc",
- "nix 0.22.3",
+ "nix 0.24.3",
  "scoped-tls",
  "wayland-commons",
  "wayland-scanner",
@@ -4624,11 +4160,11 @@ dependencies = [
 
 [[package]]
 name = "wayland-commons"
-version = "0.29.4"
+version = "0.29.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "94f6e5e340d7c13490eca867898c4cec5af56c27a5ffe5c80c6fc4708e22d33e"
+checksum = "8691f134d584a33a6606d9d717b95c4fa20065605f798a3f350d78dced02a902"
 dependencies = [
- "nix 0.22.3",
+ "nix 0.24.3",
  "once_cell",
  "smallvec",
  "wayland-sys",
@@ -4636,22 +4172,22 @@ dependencies = [
 
 [[package]]
 name = "wayland-cursor"
-version = "0.29.4"
+version = "0.29.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c52758f13d5e7861fc83d942d3d99bf270c83269575e52ac29e5b73cb956a6bd"
+checksum = "6865c6b66f13d6257bef1cd40cbfe8ef2f150fb8ebbdb1e8e873455931377661"
 dependencies = [
- "nix 0.22.3",
+ "nix 0.24.3",
  "wayland-client",
  "xcursor",
 ]
 
 [[package]]
 name = "wayland-protocols"
-version = "0.29.4"
+version = "0.29.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "60147ae23303402e41fe034f74fb2c35ad0780ee88a1c40ac09a3be1e7465741"
+checksum = "b950621f9354b322ee817a23474e479b34be96c2e909c14f7bc0100e9a970bc6"
 dependencies = [
- "bitflags",
+ "bitflags 1.3.2",
  "wayland-client",
  "wayland-commons",
  "wayland-scanner",
@@ -4659,9 +4195,9 @@ dependencies = [
 
 [[package]]
 name = "wayland-scanner"
-version = "0.29.4"
+version = "0.29.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "39a1ed3143f7a143187156a2ab52742e89dac33245ba505c17224df48939f9e0"
+checksum = "8f4303d8fa22ab852f789e75a967f0a2cdc430a607751c0499bada3e451cbd53"
 dependencies = [
  "proc-macro2",
  "quote",
@@ -4670,9 +4206,9 @@ dependencies = [
 
 [[package]]
 name = "wayland-sys"
-version = "0.29.4"
+version = "0.29.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d9341df79a8975679188e37dab3889bfa57c44ac2cb6da166f519a81cbe452d4"
+checksum = "be12ce1a3c39ec7dba25594b97b42cb3195d54953ddb9d3d95a7c3902bc6e9d4"
 dependencies = [
  "dlib",
  "lazy_static",
@@ -4681,247 +4217,257 @@ dependencies = [
 
 [[package]]
 name = "web-sys"
-version = "0.3.57"
+version = "0.3.68"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7b17e741662c70c8bd24ac5c5b18de314a2c26c32bf8346ee1e6f53de919c283"
+checksum = "96565907687f7aceb35bc5fc03770a8a0471d82e479f25832f54a0e3f4b28446"
 dependencies = [
  "js-sys",
  "wasm-bindgen",
 ]
 
 [[package]]
-name = "webpki"
-version = "0.22.0"
+name = "webpki-roots"
+version = "0.25.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f095d78192e208183081cc07bc5515ef55216397af48b873e5edcd72637fa1bd"
+checksum = "5f20c57d8d7db6d3b86154206ae5d8fba62dd39573114de97c2cb0578251f8e1"
+
+[[package]]
+name = "winapi"
+version = "0.3.9"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "5c839a674fcd7a98952e593242ea400abe93992746761e38641405d28b00f419"
 dependencies = [
- "ring",
- "untrusted",
+ "winapi-i686-pc-windows-gnu",
+ "winapi-x86_64-pc-windows-gnu",
 ]
 
 [[package]]
-name = "webpki-roots"
-version = "0.22.3"
+name = "winapi-i686-pc-windows-gnu"
+version = "0.4.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "ac3b87c63620426dd9b991e5ce0329eff545bccbbb34f3be09ff6fb6ab51b7b6"
+
+[[package]]
+name = "winapi-util"
+version = "0.1.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "44d8de8415c823c8abd270ad483c6feeac771fad964890779f9a8cb24fbbc1bf"
+checksum = "70ec6ce85bb158151cae5e5c87f95a8e97d2c0c4b001223f33a334e3ce5de178"
 dependencies = [
- "webpki",
+ "winapi",
 ]
 
 [[package]]
-name = "weezl"
-version = "0.1.6"
+name = "winapi-x86_64-pc-windows-gnu"
+version = "0.4.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9c97e489d8f836838d497091de568cf16b117486d529ec5579233521065bd5e4"
+checksum = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f"
 
 [[package]]
-name = "wepoll-ffi"
-version = "0.1.2"
+name = "windows"
+version = "0.44.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d743fdedc5c64377b5fc2bc036b01c7fd642205a0d96356034ae3404d49eb7fb"
+checksum = "9e745dab35a0c4c77aa3ce42d595e13d2003d6902d6b08c9ef5fc326d08da12b"
 dependencies = [
- "cc",
+ "windows-targets 0.42.2",
 ]
 
 [[package]]
-name = "wgpu"
-version = "0.12.0"
+name = "windows-core"
+version = "0.52.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b97cd781ff044d6d697b632a2e212032c2e957d1afaa21dbf58069cbb8f78567"
+checksum = "33ab640c8d7e35bf8ba19b884ba838ceb4fba93a4e8c65a9059d08afcfc683d9"
 dependencies = [
- "arrayvec 0.7.2",
- "js-sys",
- "log",
- "naga",
- "parking_lot",
- "raw-window-handle 0.4.3",
- "smallvec",
- "wasm-bindgen",
- "wasm-bindgen-futures",
- "web-sys",
- "wgpu-core",
- "wgpu-hal",
- "wgpu-types",
+ "windows-targets 0.52.0",
 ]
 
 [[package]]
-name = "wgpu-core"
-version = "0.12.2"
+name = "windows-sys"
+version = "0.48.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c4688c000eb841ca55f7b35db659b78d6e1cd77d7caf8fb929f4e181f754047d"
+checksum = "677d2418bec65e3338edb076e806bc1ec15693c5d0104683f2efe857f61056a9"
 dependencies = [
- "arrayvec 0.7.2",
- "bitflags",
- "cfg_aliases",
- "codespan-reporting",
- "copyless",
- "fxhash",
- "log",
- "naga",
- "parking_lot",
- "profiling",
- "raw-window-handle 0.4.3",
- "smallvec",
- "thiserror",
- "wgpu-hal",
- "wgpu-types",
+ "windows-targets 0.48.5",
 ]
 
 [[package]]
-name = "wgpu-hal"
-version = "0.12.5"
+name = "windows-sys"
+version = "0.52.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d684ea6a34974a2fc19f1dfd183d11a62e22d75c4f187a574bb1224df8e056c2"
+checksum = "282be5f36a8ce781fad8c8ae18fa3f9beff57ec1b52cb3de0789201425d9a33d"
 dependencies = [
- "arrayvec 0.7.2",
- "ash",
- "bit-set",
- "bitflags",
- "block",
- "core-graphics-types",
- "d3d12",
- "foreign-types",
- "fxhash",
- "glow",
- "gpu-alloc",
- "gpu-descriptor",
- "inplace_it",
- "js-sys",
- "khronos-egl",
- "libloading",
- "log",
- "metal",
- "naga",
- "objc",
- "parking_lot",
- "profiling",
- "range-alloc",
- "raw-window-handle 0.4.3",
- "renderdoc-sys",
- "thiserror",
- "wasm-bindgen",
- "web-sys",
- "wgpu-types",
- "winapi",
+ "windows-targets 0.52.0",
 ]
 
 [[package]]
-name = "wgpu-types"
-version = "0.12.0"
+name = "windows-targets"
+version = "0.42.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "549533d9e1cdd4b4cda7718d33ff500fc4c34b5467b71d76b547ae0324f3b2a2"
+checksum = "8e5180c00cd44c9b1c88adb3693291f1cd93605ded80c250a75d472756b4d071"
 dependencies = [
- "bitflags",
+ "windows_aarch64_gnullvm 0.42.2",
+ "windows_aarch64_msvc 0.42.2",
+ "windows_i686_gnu 0.42.2",
+ "windows_i686_msvc 0.42.2",
+ "windows_x86_64_gnu 0.42.2",
+ "windows_x86_64_gnullvm 0.42.2",
+ "windows_x86_64_msvc 0.42.2",
 ]
 
 [[package]]
-name = "wgpu_glyph"
-version = "0.16.0"
+name = "windows-targets"
+version = "0.48.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8134edb15ae465caf308125646c9e98bdef7398cdefc69227ac77a5eb795e7fe"
+checksum = "9a2fa6e2155d7247be68c096456083145c183cbbbc2764150dda45a87197940c"
 dependencies = [
- "bytemuck",
- "glyph_brush",
- "log",
- "wgpu",
+ "windows_aarch64_gnullvm 0.48.5",
+ "windows_aarch64_msvc 0.48.5",
+ "windows_i686_gnu 0.48.5",
+ "windows_i686_msvc 0.48.5",
+ "windows_x86_64_gnu 0.48.5",
+ "windows_x86_64_gnullvm 0.48.5",
+ "windows_x86_64_msvc 0.48.5",
 ]
 
 [[package]]
-name = "winapi"
-version = "0.3.9"
+name = "windows-targets"
+version = "0.52.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5c839a674fcd7a98952e593242ea400abe93992746761e38641405d28b00f419"
+checksum = "8a18201040b24831fbb9e4eb208f8892e1f50a37feb53cc7ff887feb8f50e7cd"
 dependencies = [
- "winapi-i686-pc-windows-gnu",
- "winapi-x86_64-pc-windows-gnu",
+ "windows_aarch64_gnullvm 0.52.0",
+ "windows_aarch64_msvc 0.52.0",
+ "windows_i686_gnu 0.52.0",
+ "windows_i686_msvc 0.52.0",
+ "windows_x86_64_gnu 0.52.0",
+ "windows_x86_64_gnullvm 0.52.0",
+ "windows_x86_64_msvc 0.52.0",
 ]
 
 [[package]]
-name = "winapi-i686-pc-windows-gnu"
-version = "0.4.0"
+name = "windows_aarch64_gnullvm"
+version = "0.42.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ac3b87c63620426dd9b991e5ce0329eff545bccbbb34f3be09ff6fb6ab51b7b6"
+checksum = "597a5118570b68bc08d8d59125332c54f1ba9d9adeedeef5b99b02ba2b0698f8"
 
 [[package]]
-name = "winapi-util"
-version = "0.1.5"
+name = "windows_aarch64_gnullvm"
+version = "0.48.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "70ec6ce85bb158151cae5e5c87f95a8e97d2c0c4b001223f33a334e3ce5de178"
-dependencies = [
- "winapi",
-]
+checksum = "2b38e32f0abccf9987a4e3079dfb67dcd799fb61361e53e2882c3cbaf0d905d8"
 
 [[package]]
-name = "winapi-wsapoll"
-version = "0.1.1"
+name = "windows_aarch64_gnullvm"
+version = "0.52.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "44c17110f57155602a80dca10be03852116403c9ff3cd25b079d666f2aa3df6e"
-dependencies = [
- "winapi",
-]
+checksum = "cb7764e35d4db8a7921e09562a0304bf2f93e0a51bfccee0bd0bb0b666b015ea"
 
 [[package]]
-name = "winapi-x86_64-pc-windows-gnu"
-version = "0.4.0"
+name = "windows_aarch64_msvc"
+version = "0.42.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f"
+checksum = "e08e8864a60f06ef0d0ff4ba04124db8b0fb3be5776a5cd47641e942e58c4d43"
 
 [[package]]
-name = "window_clipboard"
-version = "0.2.2"
+name = "windows_aarch64_msvc"
+version = "0.48.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "086ed826cc4468377b6b995300d5f7f852a2fe1eb02e6cd1ccd4a574deb9d310"
-dependencies = [
- "clipboard-win",
- "clipboard_macos",
- "clipboard_wayland",
- "clipboard_x11",
- "raw-window-handle 0.3.4",
- "thiserror",
-]
+checksum = "dc35310971f3b2dbbf3f0690a219f40e2d9afcf64f9ab7cc1be722937c26b4bc"
 
 [[package]]
-name = "windows-sys"
-version = "0.36.1"
+name = "windows_aarch64_msvc"
+version = "0.52.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ea04155a16a59f9eab786fe12a4a450e75cdb175f9e0d80da1e17db09f55b8d2"
-dependencies = [
- "windows_aarch64_msvc",
- "windows_i686_gnu",
- "windows_i686_msvc",
- "windows_x86_64_gnu",
- "windows_x86_64_msvc",
-]
+checksum = "bbaa0368d4f1d2aaefc55b6fcfee13f41544ddf36801e793edbbfd7d7df075ef"
 
 [[package]]
-name = "windows_aarch64_msvc"
-version = "0.36.1"
+name = "windows_i686_gnu"
+version = "0.42.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9bb8c3fd39ade2d67e9874ac4f3db21f0d710bee00fe7cab16949ec184eeaa47"
+checksum = "c61d927d8da41da96a81f029489353e68739737d3beca43145c8afec9a31a84f"
 
 [[package]]
 name = "windows_i686_gnu"
-version = "0.36.1"
+version = "0.48.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "180e6ccf01daf4c426b846dfc66db1fc518f074baa793aa7d9b9aaeffad6a3b6"
+checksum = "a75915e7def60c94dcef72200b9a8e58e5091744960da64ec734a6c6e9b3743e"
+
+[[package]]
+name = "windows_i686_gnu"
+version = "0.52.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "a28637cb1fa3560a16915793afb20081aba2c92ee8af57b4d5f28e4b3e7df313"
 
 [[package]]
 name = "windows_i686_msvc"
-version = "0.36.1"
+version = "0.42.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "44d840b6ec649f480a41c8d80f9c65108b92d89345dd94027bfe06ac444d1060"
+
+[[package]]
+name = "windows_i686_msvc"
+version = "0.48.5"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "8f55c233f70c4b27f66c523580f78f1004e8b5a8b659e05a4eb49d4166cca406"
+
+[[package]]
+name = "windows_i686_msvc"
+version = "0.52.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "ffe5e8e31046ce6230cc7215707b816e339ff4d4d67c65dffa206fd0f7aa7b9a"
+
+[[package]]
+name = "windows_x86_64_gnu"
+version = "0.42.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e2e7917148b2812d1eeafaeb22a97e4813dfa60a3f8f78ebe204bcc88f12f024"
+checksum = "8de912b8b8feb55c064867cf047dda097f92d51efad5b491dfb98f6bbb70cb36"
 
 [[package]]
 name = "windows_x86_64_gnu"
-version = "0.36.1"
+version = "0.48.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4dcd171b8776c41b97521e5da127a2d86ad280114807d0b2ab1e462bc764d9e1"
+checksum = "53d40abd2583d23e4718fddf1ebec84dbff8381c07cae67ff7768bbf19c6718e"
+
+[[package]]
+name = "windows_x86_64_gnu"
+version = "0.52.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "3d6fa32db2bc4a2f5abeacf2b69f7992cd09dca97498da74a151a3132c26befd"
+
+[[package]]
+name = "windows_x86_64_gnullvm"
+version = "0.42.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "26d41b46a36d453748aedef1486d5c7a85db22e56aff34643984ea85514e94a3"
+
+[[package]]
+name = "windows_x86_64_gnullvm"
+version = "0.48.5"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "0b7b52767868a23d5bab768e390dc5f5c55825b6d30b86c844ff2dc7414044cc"
+
+[[package]]
+name = "windows_x86_64_gnullvm"
+version = "0.52.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "1a657e1e9d3f514745a572a6846d3c7aa7dbe1658c056ed9c3344c4109a6949e"
 
 [[package]]
 name = "windows_x86_64_msvc"
-version = "0.36.1"
+version = "0.42.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c811ca4a8c853ef420abd8592ba53ddbbac90410fab6903b3e79972a631f7680"
+checksum = "9aec5da331524158c6d1a4ac0ab1541149c0b9505fde06423b02f5ef0106b9f0"
+
+[[package]]
+name = "windows_x86_64_msvc"
+version = "0.48.5"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "ed94fce61571a4006852b7389a063ab983c02eb1bb37b47f8272ce92d06d9538"
+
+[[package]]
+name = "windows_x86_64_msvc"
+version = "0.52.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "dff9641d1cd4be8d1a070daf9e3773c5f67e78b4d9d42263020c057706765c04"
 
 [[package]]
 name = "winit"
@@ -4929,7 +4475,7 @@ version = "0.26.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "9b43cc931d58b99461188607efd7acb2a093e65fc621f54cad78517a6063e73a"
 dependencies = [
- "bitflags",
+ "bitflags 1.3.2",
  "cocoa",
  "core-foundation 0.9.3",
  "core-graphics 0.22.3",
@@ -4940,13 +4486,13 @@ dependencies = [
  "libc",
  "log",
  "mio",
- "ndk",
- "ndk-glue",
- "ndk-sys",
+ "ndk 0.5.0",
+ "ndk-glue 0.5.2",
+ "ndk-sys 0.2.2",
  "objc",
- "parking_lot",
+ "parking_lot 0.11.2",
  "percent-encoding",
- "raw-window-handle 0.4.3",
+ "raw-window-handle",
  "smithay-client-toolkit",
  "wasm-bindgen",
  "wayland-client",
@@ -4957,24 +4503,37 @@ dependencies = [
 ]
 
 [[package]]
-name = "winreg"
-version = "0.10.1"
+name = "winnow"
+version = "0.5.39"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "80d0f4e272c85def139476380b12f9ac60926689dd2e01d4923222f40580869d"
+checksum = "5389a154b01683d28c77f8f68f49dea75f0a4da32557a58f68ee51ebba472d29"
 dependencies = [
- "winapi",
+ "memchr",
 ]
 
 [[package]]
-name = "wio"
-version = "0.2.2"
+name = "winreg"
+version = "0.50.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5d129932f4644ac2396cb456385cbf9e63b5b30c6e8dc4820bdca4eb082037a5"
+checksum = "524e57b2c537c0f9b1e69f1965311ec12182b4122e45035b1508cd24d2adadb1"
 dependencies = [
- "winapi",
+ "cfg-if 1.0.0",
+ "windows-sys 0.48.0",
 ]
 
 [[package]]
+name = "write16"
+version = "1.0.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "d1890f4022759daae28ed4fe62859b1236caebfc61ede2f63ed4e695f3f6d936"
+
+[[package]]
+name = "writeable"
+version = "0.5.4"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "dad7bb64b8ef9c0aa27b6da38b452b0ee9fd82beaf276a87dd796fb55cbae14e"
+
+[[package]]
 name = "x11-dl"
 version = "2.19.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -4986,18 +4545,6 @@ dependencies = [
 ]
 
 [[package]]
-name = "x11rb"
-version = "0.8.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6ffb080b3f2f616242a4eb8e7d325035312127901025b0052bc3154a282d0f19"
-dependencies = [
- "gethostname",
- "nix 0.20.0",
- "winapi",
- "winapi-wsapoll",
-]
-
-[[package]]
 name = "xcursor"
 version = "0.3.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -5007,122 +4554,134 @@ dependencies = [
 ]
 
 [[package]]
-name = "xdg"
-version = "2.4.1"
+name = "xml-rs"
+version = "0.8.19"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0c4583db5cbd4c4c0303df2d15af80f0539db703fa1c68802d4cbbd2dd0f88f6"
-dependencies = [
- "dirs 4.0.0",
-]
+checksum = "0fcb9cbac069e033553e8bb871be2fbdffcab578eb25bd0f7c508cedc6dcd75a"
 
 [[package]]
-name = "xi-unicode"
-version = "0.3.0"
+name = "yoke"
+version = "0.7.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a67300977d3dc3f8034dae89778f502b6ba20b269527b3223ba59c0cf393bb8a"
+checksum = "65e71b2e4f287f467794c671e2b8f8a5f3716b3c829079a1c44740148eff07e4"
+dependencies = [
+ "serde",
+ "stable_deref_trait",
+ "yoke-derive",
+ "zerofrom",
+]
 
 [[package]]
-name = "xml-rs"
-version = "0.8.4"
+name = "yoke-derive"
+version = "0.7.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d2d7d3948613f75c98fd9328cfdcc45acc4d360655289d0a7d4ec931392200a3"
+checksum = "9e6936f0cce458098a201c245a11bef556c6a0181129c7034d10d76d1ec3a2b8"
+dependencies = [
+ "proc-macro2",
+ "quote",
+ "syn 2.0.48",
+ "synstructure",
+]
 
 [[package]]
-name = "xmlparser"
-version = "0.13.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "114ba2b24d2167ef6d67d7d04c8cc86522b87f490025f39f0303b7db5bf5e3d8"
+name = "ytermusic"
+version = "0.1.0"
+dependencies = [
+ "bincode",
+ "crossterm",
+ "directories",
+ "flume",
+ "log",
+ "mimalloc",
+ "once_cell",
+ "player",
+ "rand 0.8.5",
+ "ratatui",
+ "raw-window-handle",
+ "rusty_ytdl",
+ "serde",
+ "serde_json",
+ "souvlaki",
+ "tokio",
+ "toml 0.8.10",
+ "urlencoding",
+ "varuint",
+ "winit",
+ "ytpapi2",
+]
 
 [[package]]
-name = "xmlwriter"
+name = "ytpapi2"
 version = "0.1.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ec7a2a501ed189703dba8b08142f057e887dfc4b2cc4db2d343ac6376ba3e0b9"
+dependencies = [
+ "log",
+ "reqwest",
+ "serde",
+ "serde_json",
+ "sha1",
+ "tokio",
+]
 
 [[package]]
-name = "zbus"
-version = "2.2.0"
+name = "zerocopy"
+version = "0.7.32"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "53819092b9db813b2c6168b097b4b13ad284d81c9f2b0165a0a1b190e505a1f3"
+checksum = "74d4d3961e53fa4c9a25a8637fc2bfaf2595b3d3ae34875568a5cf64787716be"
 dependencies = [
- "async-broadcast",
- "async-channel",
- "async-executor",
- "async-io",
- "async-lock",
- "async-recursion",
- "async-task",
- "async-trait",
- "byteorder",
- "derivative",
- "enumflags2",
- "event-listener",
- "futures-core",
- "futures-sink",
- "futures-util",
- "hex",
- "lazy_static",
- "nix 0.23.1",
- "once_cell",
- "ordered-stream",
- "rand 0.8.5",
- "serde",
- "serde_repr",
- "sha1",
- "static_assertions",
- "uds_windows",
- "winapi",
- "zbus_macros",
- "zbus_names",
- "zvariant",
+ "zerocopy-derive",
 ]
 
 [[package]]
-name = "zbus_macros"
-version = "2.2.0"
+name = "zerocopy-derive"
+version = "0.7.32"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c7174ebe6722c280d6d132d694bb5664ce50a788cb70eeb518e7fc1ca095a114"
+checksum = "9ce1b18ccd8e73a9321186f97e46f9f04b778851177567b1975109d26a08d2a6"
 dependencies = [
- "proc-macro-crate",
  "proc-macro2",
  "quote",
- "regex",
- "syn",
+ "syn 2.0.48",
 ]
 
 [[package]]
-name = "zbus_names"
-version = "2.1.0"
+name = "zerofrom"
+version = "0.1.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "45dfcdcf87b71dad505d30cc27b1b7b88a64b6d1c435648f48f9dbc1fdc4b7e1"
+checksum = "655b0814c5c0b19ade497851070c640773304939a6c0fd5f5fb43da0696d05b7"
 dependencies = [
- "serde",
- "static_assertions",
- "zvariant",
+ "zerofrom-derive",
 ]
 
 [[package]]
-name = "zvariant"
-version = "3.2.0"
+name = "zerofrom-derive"
+version = "0.1.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e18ba99d71e03af262953f476071607da0c44e225236cf9b5b9f7f11f1d0b6b0"
+checksum = "e6a647510471d372f2e6c2e6b7219e44d8c574d24fdc11c610a61455782f18c3"
+dependencies = [
+ "proc-macro2",
+ "quote",
+ "syn 2.0.48",
+ "synstructure",
+]
+
+[[package]]
+name = "zerovec"
+version = "0.9.6"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "591691014119b87047ead4dcf3e6adfbf73cb7c38ab6980d4f18a32138f35d46"
 dependencies = [
- "byteorder",
- "enumflags2",
- "libc",
  "serde",
- "static_assertions",
- "zvariant_derive",
+ "yoke",
+ "zerofrom",
+ "zerovec-derive",
 ]
 
 [[package]]
-name = "zvariant_derive"
-version = "3.2.0"
+name = "zerovec-derive"
+version = "0.9.6"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9042892ebdca35261951a83d17bcbfd4d3d528cb3bde828498a9b306b50d05c0"
+checksum = "7a4a1638a1934450809c2266a70362bfc96cd90550c073f5b8a55014d1010157"
 dependencies = [
- "proc-macro-crate",
  "proc-macro2",
  "quote",
- "syn",
+ "syn 2.0.48",
 ]
diff --git a/pkgs/by-name/yt/ytermusic/package.nix b/pkgs/by-name/yt/ytermusic/package.nix
new file mode 100644
index 000000000000..7b325afb9be9
--- /dev/null
+++ b/pkgs/by-name/yt/ytermusic/package.nix
@@ -0,0 +1,54 @@
+{ alsa-lib
+, dbus
+, fetchFromGitHub
+, lib
+, openssl
+, pkg-config
+, rustPlatform
+, stdenv
+,
+}:
+
+rustPlatform.buildRustPackage rec {
+  pname = "ytermusic";
+  version = "0.1.0";
+
+  src = fetchFromGitHub {
+    owner = "ccgauche";
+    repo = "ytermusic";
+    rev = "beta-${version}";
+    hash = "sha256-nu/vedQNs5TgCG1v5qwwDTnFTyXCS2KnLVrnEhCtzCs=";
+  };
+
+  cargoLock = {
+    lockFile = ./Cargo.lock;
+    outputHashes = {
+      "rusty_ytdl-0.6.6" = "sha256-htXD8v9Yd7S0iLjP6iZu94tP5KO5vbmkdUybqA7OtlU=";
+      "symphonia-0.5.1" = "sha256-rGvde5w7czMLcOPARK1gFfDLn70VeIrn4nKOL6FPc2U=";
+    };
+  };
+  postPatch = "cp ${./Cargo.lock} Cargo.lock";
+
+  doCheck = true;
+
+  cargoBuildType = "release";
+
+  nativeBuildInputs = [
+    pkg-config
+  ];
+
+  buildInputs = [
+    openssl
+    alsa-lib
+    dbus
+  ];
+
+  meta = {
+    description = "TUI based Youtube Music Player that aims to be as fast and simple as possible";
+    homepage = "https://github.com/ccgauche/ytermusic";
+    changelog = "https://github.com/ccgauche/ytermusic/releases/tag/${src.rev}";
+    license = lib.licenses.asl20;
+    maintainers = with lib.maintainers; [ codebam ];
+    mainProgram = "ytermusic";
+  };
+}
diff --git a/pkgs/by-name/ze/zed-editor/Cargo.lock b/pkgs/by-name/ze/zed-editor/Cargo.lock
index b45efeb690f5..707a06a3bb61 100644
--- a/pkgs/by-name/ze/zed-editor/Cargo.lock
+++ b/pkgs/by-name/ze/zed-editor/Cargo.lock
@@ -16,7 +16,6 @@ dependencies = [
  "project",
  "smallvec",
  "ui",
- "util",
  "workspace",
 ]
 
@@ -284,21 +283,21 @@ checksum = "d92bec98840b8f03a5ff5413de5293bfcd8bf96467cf5452609f939ec6f5de16"
 
 [[package]]
 name = "ash"
-version = "0.37.3+1.3.251"
+version = "0.38.0+1.3.281"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "39e9c3835d686b0a6084ab4234fcd1b07dbf6e4767dce60874b12356a25ecd4a"
+checksum = "0bb44936d800fea8f016d7f2311c6a4f97aebd5dc86f09906139ec848cf3a46f"
 dependencies = [
- "libloading 0.7.4",
+ "libloading 0.8.0",
 ]
 
 [[package]]
 name = "ash-window"
-version = "0.12.0"
+version = "0.13.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b912285a7c29f3a8f87ca6f55afc48768624e5e33ec17dbd2f2075903f5e35ab"
+checksum = "52bca67b61cb81e5553babde81b8211f713cb6db79766f80168f3e5f40ea6c82"
 dependencies = [
  "ash",
- "raw-window-handle 0.5.2",
+ "raw-window-handle 0.6.0",
  "raw-window-metal",
 ]
 
@@ -379,10 +378,13 @@ dependencies = [
  "assets",
  "assistant_tooling",
  "client",
+ "collections",
  "editor",
  "env_logger",
  "feature_flags",
+ "fs",
  "futures 0.3.28",
+ "fuzzy",
  "gpui",
  "language",
  "languages",
@@ -390,6 +392,7 @@ dependencies = [
  "nanoid",
  "node_runtime",
  "open_ai",
+ "picker",
  "project",
  "rand 0.8.5",
  "release_channel",
@@ -399,6 +402,7 @@ dependencies = [
  "serde",
  "serde_json",
  "settings",
+ "story",
  "theme",
  "ui",
  "util",
@@ -410,10 +414,17 @@ name = "assistant_tooling"
 version = "0.1.0"
 dependencies = [
  "anyhow",
+ "collections",
+ "futures 0.3.28",
  "gpui",
+ "project",
  "schemars",
  "serde",
  "serde_json",
+ "settings",
+ "sum_tree",
+ "unindent",
+ "util",
 ]
 
 [[package]]
@@ -1479,7 +1490,7 @@ dependencies = [
 [[package]]
 name = "blade-graphics"
 version = "0.4.0"
-source = "git+https://github.com/kvark/blade?rev=810ec594358aafea29a4a3d8ab601d25292b2ce4#810ec594358aafea29a4a3d8ab601d25292b2ce4"
+source = "git+https://github.com/kvark/blade?rev=f5766863de9dcc092e90fdbbc5e0007a99e7f9bf#f5766863de9dcc092e90fdbbc5e0007a99e7f9bf"
 dependencies = [
  "ash",
  "ash-window",
@@ -1500,7 +1511,7 @@ dependencies = [
  "mint",
  "naga",
  "objc",
- "raw-window-handle 0.5.2",
+ "raw-window-handle 0.6.0",
  "slab",
  "wasm-bindgen",
  "web-sys",
@@ -1509,7 +1520,7 @@ dependencies = [
 [[package]]
 name = "blade-macros"
 version = "0.2.1"
-source = "git+https://github.com/kvark/blade?rev=810ec594358aafea29a4a3d8ab601d25292b2ce4#810ec594358aafea29a4a3d8ab601d25292b2ce4"
+source = "git+https://github.com/kvark/blade?rev=f5766863de9dcc092e90fdbbc5e0007a99e7f9bf#f5766863de9dcc092e90fdbbc5e0007a99e7f9bf"
 dependencies = [
  "proc-macro2",
  "quote",
@@ -2270,6 +2281,7 @@ dependencies = [
  "collections",
  "ctor",
  "dashmap",
+ "dev_server_projects",
  "editor",
  "env_logger",
  "envy",
@@ -2277,6 +2289,7 @@ dependencies = [
  "fs",
  "futures 0.3.28",
  "git",
+ "git_hosting_providers",
  "google_ai",
  "gpui",
  "headless",
@@ -2299,7 +2312,6 @@ dependencies = [
  "prost",
  "rand 0.8.5",
  "release_channel",
- "remote_projects",
  "reqwest",
  "rpc",
  "rustc-demangle",
@@ -2314,6 +2326,7 @@ dependencies = [
  "sha2 0.10.7",
  "sqlx",
  "subtle",
+ "supermaven_api",
  "telemetry_events",
  "text",
  "theme",
@@ -2342,6 +2355,7 @@ dependencies = [
  "clock",
  "collections",
  "db",
+ "dev_server_projects",
  "editor",
  "emojis",
  "extensions_ui",
@@ -2357,6 +2371,7 @@ dependencies = [
  "pretty_assertions",
  "project",
  "recent_projects",
+ "release_channel",
  "rich_text",
  "rpc",
  "schemars",
@@ -2508,30 +2523,10 @@ dependencies = [
  "async-compression",
  "async-std",
  "async-tar",
+ "client",
  "clock",
  "collections",
  "command_palette_hooks",
- "fs",
- "futures 0.3.28",
- "gpui",
- "language",
- "lsp",
- "node_runtime",
- "parking_lot",
- "rpc",
- "serde",
- "settings",
- "smol",
- "util",
-]
-
-[[package]]
-name = "copilot_ui"
-version = "0.1.0"
-dependencies = [
- "anyhow",
- "client",
- "copilot",
  "editor",
  "fs",
  "futures 0.3.28",
@@ -2540,14 +2535,18 @@ dependencies = [
  "language",
  "lsp",
  "menu",
+ "node_runtime",
+ "parking_lot",
  "project",
+ "rpc",
+ "serde",
  "serde_json",
  "settings",
+ "smol",
  "theme",
  "ui",
  "util",
  "workspace",
- "zed_actions",
 ]
 
 [[package]]
@@ -3175,19 +3174,35 @@ dependencies = [
 ]
 
 [[package]]
+name = "dev_server_projects"
+version = "0.1.0"
+dependencies = [
+ "anyhow",
+ "client",
+ "gpui",
+ "rpc",
+ "serde",
+ "serde_json",
+]
+
+[[package]]
 name = "diagnostics"
 version = "0.1.0"
 dependencies = [
  "anyhow",
  "client",
  "collections",
+ "ctor",
  "editor",
+ "env_logger",
  "futures 0.3.28",
  "gpui",
  "language",
  "log",
  "lsp",
+ "pretty_assertions",
  "project",
+ "rand 0.8.5",
  "schemars",
  "serde",
  "serde_json",
@@ -3390,6 +3405,7 @@ dependencies = [
  "smol",
  "snippet",
  "sum_tree",
+ "task",
  "text",
  "theme",
  "time",
@@ -3434,10 +3450,18 @@ dependencies = [
 ]
 
 [[package]]
-name = "embed-manifest"
-version = "1.4.0"
+name = "embed-resource"
+version = "2.4.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "41cd446c890d6bed1d8b53acef5f240069ebef91d6fae7c5f52efe61fe8b5eae"
+checksum = "c6985554d0688b687c5cb73898a34fbe3ad6c24c58c238a4d91d5e840670ee9d"
+dependencies = [
+ "cc",
+ "memchr",
+ "rustc_version",
+ "toml 0.8.10",
+ "vswhom",
+ "winreg 0.52.0",
+]
 
 [[package]]
 name = "emojis"
@@ -3816,6 +3840,7 @@ dependencies = [
  "ctor",
  "editor",
  "env_logger",
+ "futures 0.3.28",
  "fuzzy",
  "gpui",
  "itertools 0.11.0",
@@ -4051,6 +4076,7 @@ dependencies = [
  "anyhow",
  "async-tar",
  "async-trait",
+ "cocoa",
  "collections",
  "fsevent",
  "futures 0.3.28",
@@ -4060,6 +4086,7 @@ dependencies = [
  "lazy_static",
  "libc",
  "notify",
+ "objc",
  "parking_lot",
  "rope",
  "serde",
@@ -4088,6 +4115,7 @@ name = "fsevent"
 version = "0.1.0"
 dependencies = [
  "bitflags 2.4.2",
+ "core-foundation",
  "fsevent-sys 3.1.0",
  "parking_lot",
  "tempfile",
@@ -4367,14 +4395,16 @@ name = "git"
 version = "0.1.0"
 dependencies = [
  "anyhow",
+ "async-trait",
  "clock",
  "collections",
+ "derive_more",
  "git2",
+ "gpui",
  "lazy_static",
  "log",
  "parking_lot",
  "pretty_assertions",
- "regex",
  "rope",
  "serde",
  "serde_json",
@@ -4402,6 +4432,25 @@ dependencies = [
 ]
 
 [[package]]
+name = "git_hosting_providers"
+version = "0.1.0"
+dependencies = [
+ "anyhow",
+ "async-trait",
+ "futures 0.3.28",
+ "git",
+ "gpui",
+ "isahc",
+ "pretty_assertions",
+ "regex",
+ "serde",
+ "serde_json",
+ "unindent",
+ "url",
+ "util",
+]
+
+[[package]]
 name = "glob"
 version = "0.3.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -4449,6 +4498,7 @@ name = "go_to_line"
 version = "0.1.0"
 dependencies = [
  "anyhow",
+ "collections",
  "editor",
  "gpui",
  "indoc",
@@ -4492,9 +4542,9 @@ dependencies = [
 
 [[package]]
 name = "gpu-alloc-ash"
-version = "0.6.0"
+version = "0.7.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d2424bc9be88170e1a56e57c25d3d0e2dfdd22e8f328e892786aeb4da1415732"
+checksum = "cbda7a18a29bc98c2e0de0435c347df935bf59489935d0cbd0b73f1679b6f79a"
 dependencies = [
  "ash",
  "gpu-alloc-types",
@@ -4536,6 +4586,7 @@ dependencies = [
  "cosmic-text",
  "ctor",
  "derive_more",
+ "embed-resource",
  "env_logger",
  "etagere",
  "filedescriptor",
@@ -4561,7 +4612,6 @@ dependencies = [
  "postage",
  "profiling",
  "rand 0.8.5",
- "raw-window-handle 0.5.2",
  "raw-window-handle 0.6.0",
  "refineable",
  "resvg",
@@ -4586,6 +4636,7 @@ dependencies = [
  "wayland-client",
  "wayland-cursor",
  "wayland-protocols",
+ "wayland-protocols-plasma",
  "windows 0.53.0",
  "x11rb",
  "xkbcommon",
@@ -4724,6 +4775,7 @@ dependencies = [
  "project",
  "rpc",
  "settings",
+ "shellexpand",
  "util",
 ]
 
@@ -5110,6 +5162,30 @@ dependencies = [
 ]
 
 [[package]]
+name = "inline_completion_button"
+version = "0.1.0"
+dependencies = [
+ "anyhow",
+ "copilot",
+ "editor",
+ "fs",
+ "futures 0.3.28",
+ "gpui",
+ "indoc",
+ "language",
+ "lsp",
+ "project",
+ "serde_json",
+ "settings",
+ "supermaven",
+ "theme",
+ "ui",
+ "util",
+ "workspace",
+ "zed_actions",
+]
+
+[[package]]
 name = "inotify"
 version = "0.9.6"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -5514,6 +5590,7 @@ dependencies = [
  "anyhow",
  "client",
  "collections",
+ "copilot",
  "editor",
  "env_logger",
  "futures 0.3.28",
@@ -5552,12 +5629,9 @@ dependencies = [
  "regex",
  "rope",
  "rust-embed",
- "schemars",
  "serde",
- "serde_derive",
  "serde_json",
  "settings",
- "shellexpand",
  "smol",
  "task",
  "text",
@@ -5568,12 +5642,10 @@ dependencies = [
  "tree-sitter-c",
  "tree-sitter-cpp",
  "tree-sitter-css",
- "tree-sitter-elixir",
  "tree-sitter-embedded-template",
  "tree-sitter-go",
  "tree-sitter-gomod",
  "tree-sitter-gowork",
- "tree-sitter-heex",
  "tree-sitter-jsdoc",
  "tree-sitter-json 0.20.0",
  "tree-sitter-markdown",
@@ -5662,9 +5734,9 @@ checksum = "4ec2a862134d2a7d32d7983ddcdd1c4923530833c9f2ea1a44fc5fa473989058"
 
 [[package]]
 name = "libmimalloc-sys"
-version = "0.1.35"
+version = "0.1.37"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3979b5c37ece694f1f5e51e7ecc871fdb0f517ed04ee45f88d15d6d553cb9664"
+checksum = "81eb4061c0582dedea1cbc7aff2240300dd6982e0239d1c99e65c1dbf4a30ba7"
 dependencies = [
  "cc",
  "libc",
@@ -5907,6 +5979,7 @@ version = "0.1.0"
 dependencies = [
  "anyhow",
  "async-recursion 1.0.5",
+ "collections",
  "editor",
  "gpui",
  "language",
@@ -6028,9 +6101,9 @@ dependencies = [
 
 [[package]]
 name = "mimalloc"
-version = "0.1.39"
+version = "0.1.41"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "fa01922b5ea280a911e323e4d2fd24b7fe5cc4042e0d2cda3c40775cdc4bdc9c"
+checksum = "9f41a2280ded0da56c8cf898babb86e8f10651a34adcfff190ae9a1159c6908d"
 dependencies = [
  "libmimalloc-sys",
 ]
@@ -6772,6 +6845,7 @@ dependencies = [
 name = "outline"
 version = "0.1.0"
 dependencies = [
+ "collections",
  "editor",
  "fuzzy",
  "gpui",
@@ -7391,7 +7465,6 @@ dependencies = [
  "client",
  "clock",
  "collections",
- "copilot",
  "env_logger",
  "fs",
  "futures 0.3.28",
@@ -7731,14 +7804,14 @@ checksum = "42a9830a0e1b9fb145ebb365b8bc4ccd75f290f98c0247deafbbe2c75cefb544"
 
 [[package]]
 name = "raw-window-metal"
-version = "0.3.2"
+version = "0.4.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ac4ea493258d54c24cb46aa9345d099e58e2ea3f30dd63667fc54fc892f18e76"
+checksum = "76e8caa82e31bb98fee12fa8f051c94a6aa36b07cddb03f0d4fc558988360ff1"
 dependencies = [
  "cocoa",
  "core-graphics",
  "objc",
- "raw-window-handle 0.5.2",
+ "raw-window-handle 0.6.0",
 ]
 
 [[package]]
@@ -7775,6 +7848,7 @@ name = "recent_projects"
 version = "0.1.0"
 dependencies = [
  "anyhow",
+ "dev_server_projects",
  "editor",
  "feature_flags",
  "fuzzy",
@@ -7784,7 +7858,6 @@ dependencies = [
  "ordered-float 2.10.0",
  "picker",
  "project",
- "remote_projects",
  "rpc",
  "serde",
  "serde_json",
@@ -7920,18 +7993,6 @@ dependencies = [
 ]
 
 [[package]]
-name = "remote_projects"
-version = "0.1.0"
-dependencies = [
- "anyhow",
- "client",
- "gpui",
- "rpc",
- "serde",
- "serde_json",
-]
-
-[[package]]
 name = "rend"
 version = "0.4.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -7974,7 +8035,7 @@ dependencies = [
  "wasm-bindgen",
  "wasm-bindgen-futures",
  "web-sys",
- "winreg",
+ "winreg 0.50.0",
 ]
 
 [[package]]
@@ -8678,6 +8739,7 @@ dependencies = [
  "languages",
  "log",
  "open_ai",
+ "parking_lot",
  "project",
  "serde",
  "serde_json",
@@ -8685,7 +8747,12 @@ dependencies = [
  "sha2 0.10.7",
  "smol",
  "tempfile",
+ "theme",
+ "tree-sitter",
+ "ui",
+ "unindent",
  "util",
+ "workspace",
  "worktree",
 ]
 
@@ -9483,12 +9550,12 @@ name = "storybook"
 version = "0.1.0"
 dependencies = [
  "anyhow",
+ "assistant2",
  "clap 4.4.4",
  "collab_ui",
  "ctrlc",
  "dialoguer",
  "editor",
- "embed-manifest",
  "fuzzy",
  "gpui",
  "indoc",
@@ -9573,6 +9640,43 @@ dependencies = [
 ]
 
 [[package]]
+name = "supermaven"
+version = "0.1.0"
+dependencies = [
+ "anyhow",
+ "client",
+ "collections",
+ "editor",
+ "env_logger",
+ "futures 0.3.28",
+ "gpui",
+ "language",
+ "log",
+ "postage",
+ "project",
+ "serde",
+ "serde_json",
+ "settings",
+ "smol",
+ "supermaven_api",
+ "theme",
+ "ui",
+ "util",
+]
+
+[[package]]
+name = "supermaven_api"
+version = "0.1.0"
+dependencies = [
+ "anyhow",
+ "futures 0.3.28",
+ "serde",
+ "serde_json",
+ "smol",
+ "util",
+]
+
+[[package]]
 name = "sval"
 version = "2.8.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -9805,6 +9909,7 @@ dependencies = [
  "futures 0.3.28",
  "gpui",
  "hex",
+ "parking_lot",
  "schemars",
  "serde",
  "serde_json_lenient",
@@ -9817,7 +9922,6 @@ dependencies = [
 name = "tasks_ui"
 version = "0.1.0"
 dependencies = [
- "anyhow",
  "editor",
  "file_icons",
  "fuzzy",
@@ -10631,7 +10735,7 @@ dependencies = [
 [[package]]
 name = "tree-sitter-jsdoc"
 version = "0.20.0"
-source = "git+https://github.com/tree-sitter/tree-sitter-jsdoc#6a6cf9e7341af32d8e2b2e24a37fbfebefc3dc55"
+source = "git+https://github.com/tree-sitter/tree-sitter-jsdoc?rev=6a6cf9e7341af32d8e2b2e24a37fbfebefc3dc55#6a6cf9e7341af32d8e2b2e24a37fbfebefc3dc55"
 dependencies = [
  "cc",
  "tree-sitter",
@@ -11101,6 +11205,7 @@ dependencies = [
  "futures 0.3.28",
  "gpui",
  "indoc",
+ "itertools 0.11.0",
  "language",
  "log",
  "lsp",
@@ -11137,6 +11242,26 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "5c3082ca00d5a5ef149bb8b555a72ae84c9c59f7250f013ac822ac2e49b19c64"
 
 [[package]]
+name = "vswhom"
+version = "0.1.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "be979b7f07507105799e854203b470ff7c78a1639e330a58f183b5fea574608b"
+dependencies = [
+ "libc",
+ "vswhom-sys",
+]
+
+[[package]]
+name = "vswhom-sys"
+version = "0.1.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "d3b17ae1f6c8a2b28506cd96d412eebf83b4a0ff2cbefeeb952f2f9dfa44ba18"
+dependencies = [
+ "cc",
+ "libc",
+]
+
+[[package]]
 name = "vte"
 version = "0.13.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -11689,6 +11814,19 @@ dependencies = [
 ]
 
 [[package]]
+name = "wayland-protocols-plasma"
+version = "0.2.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "23803551115ff9ea9bce586860c5c5a971e360825a0309264102a9495a5ff479"
+dependencies = [
+ "bitflags 2.4.2",
+ "wayland-backend",
+ "wayland-client",
+ "wayland-protocols",
+ "wayland-scanner",
+]
+
+[[package]]
 name = "wayland-protocols-wlr"
 version = "0.2.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -11755,11 +11893,12 @@ version = "0.1.0"
 dependencies = [
  "anyhow",
  "client",
- "copilot_ui",
  "db",
  "editor",
+ "extensions_ui",
  "fuzzy",
  "gpui",
+ "inline_completion_button",
  "install_cli",
  "picker",
  "project",
@@ -12210,6 +12349,16 @@ dependencies = [
 ]
 
 [[package]]
+name = "winreg"
+version = "0.52.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "a277a57398d4bfa075df44f501a17cfdf8542d224f0d36095a2adc7aee4ef0a5"
+dependencies = [
+ "cfg-if",
+ "windows-sys 0.48.0",
+]
+
+[[package]]
 name = "winresource"
 version = "0.1.17"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -12356,6 +12505,7 @@ dependencies = [
  "collections",
  "db",
  "derive_more",
+ "dev_server_projects",
  "env_logger",
  "fs",
  "futures 0.3.28",
@@ -12368,7 +12518,6 @@ dependencies = [
  "parking_lot",
  "postage",
  "project",
- "remote_projects",
  "schemars",
  "serde",
  "serde_json",
@@ -12607,7 +12756,7 @@ dependencies = [
 
 [[package]]
 name = "zed"
-version = "0.133.5"
+version = "0.135.2"
 dependencies = [
  "activity_indicator",
  "anyhow",
@@ -12629,11 +12778,10 @@ dependencies = [
  "collections",
  "command_palette",
  "copilot",
- "copilot_ui",
  "db",
+ "dev_server_projects",
  "diagnostics",
  "editor",
- "embed-manifest",
  "env_logger",
  "extension",
  "extensions_ui",
@@ -12642,10 +12790,13 @@ dependencies = [
  "file_icons",
  "fs",
  "futures 0.3.28",
+ "git",
+ "git_hosting_providers",
  "go_to_line",
  "gpui",
  "headless",
  "image_viewer",
+ "inline_completion_button",
  "install_cli",
  "isahc",
  "journal",
@@ -12657,6 +12808,7 @@ dependencies = [
  "markdown_preview",
  "menu",
  "mimalloc",
+ "nix 0.28.0",
  "node_runtime",
  "notifications",
  "outline",
@@ -12668,7 +12820,6 @@ dependencies = [
  "quick_action_bar",
  "recent_projects",
  "release_channel",
- "remote_projects",
  "rope",
  "search",
  "serde",
@@ -12676,9 +12827,11 @@ dependencies = [
  "settings",
  "simplelog",
  "smol",
+ "supermaven",
  "tab_switcher",
  "task",
  "tasks_ui",
+ "telemetry_events",
  "terminal_view",
  "theme",
  "theme_selector",
@@ -12724,7 +12877,7 @@ dependencies = [
 
 [[package]]
 name = "zed_dart"
-version = "0.0.1"
+version = "0.0.2"
 dependencies = [
  "zed_extension_api 0.0.6 (registry+https://github.com/rust-lang/crates.io-index)",
 ]
@@ -12737,6 +12890,13 @@ dependencies = [
 ]
 
 [[package]]
+name = "zed_elixir"
+version = "0.0.4"
+dependencies = [
+ "zed_extension_api 0.0.6 (registry+https://github.com/rust-lang/crates.io-index)",
+]
+
+[[package]]
 name = "zed_elm"
 version = "0.0.1"
 dependencies = [
@@ -12865,7 +13025,7 @@ dependencies = [
 
 [[package]]
 name = "zed_toml"
-version = "0.1.0"
+version = "0.1.1"
 dependencies = [
  "zed_extension_api 0.0.6 (registry+https://github.com/rust-lang/crates.io-index)",
 ]
@@ -12886,7 +13046,7 @@ dependencies = [
 
 [[package]]
 name = "zed_zig"
-version = "0.1.1"
+version = "0.1.2"
 dependencies = [
  "zed_extension_api 0.0.6 (registry+https://github.com/rust-lang/crates.io-index)",
 ]
diff --git a/pkgs/by-name/ze/zed-editor/package.nix b/pkgs/by-name/ze/zed-editor/package.nix
index 9c79b602b469..5b0e8f746e61 100644
--- a/pkgs/by-name/ze/zed-editor/package.nix
+++ b/pkgs/by-name/ze/zed-editor/package.nix
@@ -22,18 +22,17 @@
   darwin,
   makeFontsConf,
   vulkan-loader,
-  makeDesktopItem,
 }:
 
 rustPlatform.buildRustPackage rec {
   pname = "zed";
-  version = "0.133.5";
+  version = "0.135.2";
 
   src = fetchFromGitHub {
     owner = "zed-industries";
     repo = "zed";
     rev = "refs/tags/v${version}";
-    hash = "sha256-52vWOlaxVcjlKLrBW+anh6i7kfBCD5cTHWcjLFiY9BA=";
+    hash = "sha256-XnfTrcLKjJH42l9L9KxogMhNQ2u/8G4fyd6i/0dO5S0=";
     fetchSubmodules = true;
   };
 
@@ -41,7 +40,7 @@ rustPlatform.buildRustPackage rec {
     lockFile = ./Cargo.lock;
     outputHashes = {
       "async-pipe-0.1.3" = "sha256-g120X88HGT8P6GNCrzpS5SutALx5H+45Sf4iSSxzctE=";
-      "blade-graphics-0.4.0" = "sha256-S1PNdQ9YbJgLLsJU1mvDZ3feVDIrZGwU37JqIm+kfcE=";
+      "blade-graphics-0.4.0" = "sha256-U8278YkskWE1E60JVTx4hRv4322EV9jz8fzJkBTG3R8=";
       "font-kit-0.11.0" = "sha256-+4zMzjFyMS60HfLMEXGfXqKn6P+pOngLA45udV09DM8=";
       "heed-0.20.0-alpha.9" = "sha256-8bzoMmfKS+6AmeTzh0/F7WM9OBdIex+NYFER28bpA/s=";
       "lsp-types-0.94.1" = "sha256-kplgPsafrgZFMI1D9pQCwmg+FKMn5HNWLbcgdXHUFVU=";
@@ -137,50 +136,11 @@ rustPlatform.buildRustPackage rec {
 
   postInstall = ''
     mv $out/bin/Zed $out/bin/zed
-    install -D ${src}/crates/zed/resources/app-icon@2x.png $out/share/icons/hicolor/1024x1024@2x/apps/Zed.png
-    install -D ${src}/crates/zed/resources/app-icon.png $out/share/icons/hicolor/512x512/apps/Zed.png
+    install -D ${src}/crates/zed/resources/app-icon@2x.png $out/share/icons/hicolor/1024x1024@2x/apps/zed.png
+    install -D ${src}/crates/zed/resources/app-icon.png $out/share/icons/hicolor/512x512/apps/zed.png
+    install -D ${src}/crates/zed/resources/zed.desktop $out/share/applications/dev.zed.Zed.desktop
   '';
 
-  desktopItems = [
-    (makeDesktopItem {
-      name = "dev.zed.Zed";
-      exec = "zed %F";
-      tryExec = "zed";
-      icon = "Zed";
-      comment = meta.description;
-      desktopName = "Zed";
-      genericName = "Text Editor";
-      categories = [
-        "Utility"
-        "TextEditor"
-        "Development"
-      ];
-      keywords = [
-        "Text"
-        "Editor"
-      ];
-      terminal = false;
-      type = "Application";
-      mimeTypes = [
-        "inode/directory"
-        "text/plain"
-        "text/x-makefile"
-        "text/x-c++hdr"
-        "text/x-c++src"
-        "text/x-chdr"
-        "text/x-csrc"
-        "text/x-java"
-        "text/x-moc"
-        "text/x-pascal"
-        "text/x-tcl"
-        "text/x-tex"
-        "application/x-shellscript"
-        "text/x-c"
-        "text/x-c++"
-      ];
-    })
-  ];
-
   meta = with lib; {
     description = "High-performance, multiplayer code editor from the creators of Atom and Tree-sitter";
     homepage = "https://zed.dev";
diff --git a/pkgs/by-name/zp/zpaqfranz/package.nix b/pkgs/by-name/zp/zpaqfranz/package.nix
index ba03ab784e38..7908f050bafb 100644
--- a/pkgs/by-name/zp/zpaqfranz/package.nix
+++ b/pkgs/by-name/zp/zpaqfranz/package.nix
@@ -6,13 +6,13 @@
 
 stdenv.mkDerivation (finalAttrs: {
   pname = "zpaqfranz";
-  version = "59.3";
+  version = "59.4";
 
   src = fetchFromGitHub {
     owner = "fcorbelli";
     repo = "zpaqfranz";
     rev = finalAttrs.version;
-    hash = "sha256-Ut4NOcmuXDaGkoXff8cixe5Onb84ztyHlFKH1zDUAZE=";
+    hash = "sha256-tdkb/qyxpgORC8UcyDl3giGrU1VI0BAriBN7jDNBJzA=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/by-name/zx/zxtune/package.nix b/pkgs/by-name/zx/zxtune/package.nix
index 436a24153366..e406afbb681b 100644
--- a/pkgs/by-name/zx/zxtune/package.nix
+++ b/pkgs/by-name/zx/zxtune/package.nix
@@ -41,7 +41,7 @@ let
     ++ lib.optional withQt (if (supportWayland) then qt5.qtwayland else qt5.qtbase);
 in stdenv.mkDerivation rec {
   pname = "zxtune";
-  version = "5056";
+  version = "5061";
 
   outputs = [ "out" ];
 
@@ -49,7 +49,7 @@ in stdenv.mkDerivation rec {
     owner = "zxtune";
     repo = "zxtune";
     rev = "r${version}";
-    hash = "sha256-zvLbgS8AFW4kkvTccGXcr1KEw3EH47XcHwzq6CKzusQ=";
+    hash = "sha256-KhGxVq0dDvsAMdnr/MRiVbw6mhl/3Vv7D+NSb+fDhgk=";
   };
 
   passthru.updateScript = nix-update-script {
diff --git a/pkgs/common-updater/unstable-updater.nix b/pkgs/common-updater/unstable-updater.nix
index d982fc6110ba..d7a9c73fbc2d 100644
--- a/pkgs/common-updater/unstable-updater.nix
+++ b/pkgs/common-updater/unstable-updater.nix
@@ -8,6 +8,10 @@
 
 # This is an updater for unstable packages that should always use the latest
 # commit.
+# To use this updater, add the following to your package set:
+# passthru.updateScript = unstableGitUpdater { };
+# relevant attributes can be passed as below:
+
 { url ? null # The git url, if empty it will be set to src.gitRepoUrl
 , branch ? null
 , hardcodeZeroVersion ? false # Use a made-up version "0" instead of latest tag. Use when there is no previous release, or the project's tagging system is incompatible with what we expect from versions
diff --git a/pkgs/data/documentation/gnome-user-docs/default.nix b/pkgs/data/documentation/gnome-user-docs/default.nix
index 30382918c6d0..873346c77738 100644
--- a/pkgs/data/documentation/gnome-user-docs/default.nix
+++ b/pkgs/data/documentation/gnome-user-docs/default.nix
@@ -9,11 +9,11 @@
 
 stdenv.mkDerivation rec {
   pname = "gnome-user-docs";
-  version = "45.5";
+  version = "46.1";
 
   src = fetchurl {
     url = "mirror://gnome/sources/gnome-user-docs/${lib.versions.major version}/${pname}-${version}.tar.xz";
-    sha256 = "sha256-dBZ/z0KgTZ5dPMEw0nvCA9h7aFzmBqhGdN8k4f9xnlQ=";
+    hash = "sha256-qXKTy+63l+tPTRadcTu2WDvRLDeR4UAoPkNW0v4YCto=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/data/documentation/man-pages/default.nix b/pkgs/data/documentation/man-pages/default.nix
index deb6a4005f66..3bb5c3b1d18c 100644
--- a/pkgs/data/documentation/man-pages/default.nix
+++ b/pkgs/data/documentation/man-pages/default.nix
@@ -21,6 +21,14 @@ stdenv.mkDerivation rec {
 
   enableParallelInstalling = true;
 
+  postInstall = ''
+    # The manpath executable looks up manpages from PATH. And this package won't
+    # appear in PATH unless it has a /bin folder. Without the change
+    # 'nix-shell -p man-pages' does not pull in the search paths.
+    # See 'man 5 manpath' for the lookup order.
+    mkdir -p $out/bin
+  '';
+
   meta = with lib; {
     description = "Linux development manual pages";
     homepage = "https://www.kernel.org/doc/man-pages/";
diff --git a/pkgs/data/documentation/scheme-manpages/default.nix b/pkgs/data/documentation/scheme-manpages/default.nix
index 87119f31452b..96d8d9ac1194 100644
--- a/pkgs/data/documentation/scheme-manpages/default.nix
+++ b/pkgs/data/documentation/scheme-manpages/default.nix
@@ -2,7 +2,7 @@
 
 stdenvNoCC.mkDerivation rec {
   pname = "scheme-manpages";
-  version = "unstable-2024-02-11";
+  version = "0-unstable-2024-02-11";
 
   src = fetchFromGitHub {
     owner = "schemedoc";
diff --git a/pkgs/data/fonts/0xproto/default.nix b/pkgs/data/fonts/0xproto/default.nix
index ee43ede57da4..6a0cf9b5f11e 100644
--- a/pkgs/data/fonts/0xproto/default.nix
+++ b/pkgs/data/fonts/0xproto/default.nix
@@ -4,14 +4,14 @@
 }:
 stdenvNoCC.mkDerivation rec {
   pname = "0xproto";
-  version = "1.603";
+  version = "2.000";
 
   src = let
     underscoreVersion = builtins.replaceStrings ["."] ["_"] version;
   in
     fetchzip {
       url = "https://github.com/0xType/0xProto/releases/download/${version}/0xProto_${underscoreVersion}.zip";
-      hash = "sha256-20KqPX6BKlyX+R3zrhDMz3p9Vwgd4RlRe2qhJpic6W4=";
+      hash = "sha256-ekoCvN3A0mrYUwIG61508bRAvLdOa+MQ4IXPWE5zKHw=";
     };
 
   installPhase = ''
diff --git a/pkgs/data/fonts/apl386/default.nix b/pkgs/data/fonts/apl386/default.nix
index 15c61d41aa69..e1bab248f394 100644
--- a/pkgs/data/fonts/apl386/default.nix
+++ b/pkgs/data/fonts/apl386/default.nix
@@ -23,7 +23,7 @@ stdenvNoCC.mkDerivation {
     homepage = "https://abrudz.github.io/APL386/";
     description = "APL385 Unicode font evolved";
     license = lib.licenses.unlicense;
-    maintainers = with lib.maintainers; [ ];
+    maintainers = with lib.maintainers; [ sigmanificient ];
     platforms = lib.platforms.all;
   };
 }
diff --git a/pkgs/data/fonts/cozette/default.nix b/pkgs/data/fonts/cozette/default.nix
index 4e052cdf3c97..caf7790cab83 100644
--- a/pkgs/data/fonts/cozette/default.nix
+++ b/pkgs/data/fonts/cozette/default.nix
@@ -2,11 +2,11 @@
 
 stdenvNoCC.mkDerivation rec {
   pname = "cozette";
-  version = "1.23.2";
+  version = "1.24.1";
 
   src = fetchzip {
     url = "https://github.com/slavfox/Cozette/releases/download/v.${version}/CozetteFonts-v-${builtins.replaceStrings ["."] ["-"] version}.zip";
-    hash = "sha256-v1UWrVx1PnNPiFtMMy4kOkIe//iHxx0LOA4nHo95Zws=";
+    hash = "sha256-G3/m0g3pdPHUlSLnJhGIFem6UOyEf1VxjOvz/0E9Vr0=";
   };
 
   installPhase = ''
diff --git a/pkgs/data/fonts/iosevka/bin.nix b/pkgs/data/fonts/iosevka/bin.nix
index f805c07a18a1..76760368605a 100644
--- a/pkgs/data/fonts/iosevka/bin.nix
+++ b/pkgs/data/fonts/iosevka/bin.nix
@@ -17,7 +17,7 @@ let
 in
 stdenv.mkDerivation rec {
   pname = "${name}-bin";
-  version = "29.2.1";
+  version = "30.0.0";
 
   src = fetchurl {
     url = "https://github.com/be5invis/Iosevka/releases/download/v${version}/PkgTTC-${name}-${version}.zip";
diff --git a/pkgs/data/fonts/iosevka/default.nix b/pkgs/data/fonts/iosevka/default.nix
index 1350b01d96fe..5628df5393cf 100644
--- a/pkgs/data/fonts/iosevka/default.nix
+++ b/pkgs/data/fonts/iosevka/default.nix
@@ -55,16 +55,16 @@ assert (extraParameters != null) -> set != null;
 
 buildNpmPackage rec {
   pname = "Iosevka${toString set}";
-  version = "29.2.1";
+  version = "30.0.1";
 
   src = fetchFromGitHub {
     owner = "be5invis";
     repo = "iosevka";
     rev = "v${version}";
-    hash = "sha256-WWumGi6+jaQUGi1eArS9l3G8sOQL4ZetixVB5RWDPQ4=";
+    hash = "sha256-THs6kN5VZpTvzTK7w/sGQbxoEyyPwzl93JDOvwucgeo=";
   };
 
-  npmDepsHash = "sha256-Gm3R8lWmYbLOfyGW+f8CYXlodp11vMCMAhagILxLKFA=";
+  npmDepsHash = "sha256-maDIkbe4BKY7XYOQNGdOalyTGdBXgIU5t0QjVJW6lvQ=";
 
   nativeBuildInputs = [
     remarshal
diff --git a/pkgs/data/fonts/iosevka/variants.nix b/pkgs/data/fonts/iosevka/variants.nix
index baab3d4016a4..4d51d9acd5e9 100644
--- a/pkgs/data/fonts/iosevka/variants.nix
+++ b/pkgs/data/fonts/iosevka/variants.nix
@@ -1,93 +1,93 @@
 # This file was autogenerated. DO NOT EDIT!
 {
-  Iosevka = "0m1ky8l0jm8sj62848grmzgpdqjj1ji51q2id7fnjy19cpb79r9p";
-  IosevkaAile = "1g2z2xn59rankrq724c16bds7lcjv05b3p9w2zk2yk30p3v8ik7r";
-  IosevkaCurly = "1ngybzmhfsfjj7jh3mkb6mmb0p9pai5jkrd15ck19qdyvn0m7p54";
-  IosevkaCurlySlab = "1jidf96kspv0yrl2wyal7m2sz25nalx05w0x60cplmnq3zdxkbqw";
-  IosevkaEtoile = "0xwzic90sq6i2cglds8j8yj9b3cxx5xxdkqwngg1l3ra1nw40mqy";
-  IosevkaSlab = "1l25d3n9z1fy6ch3km3bzdcxgs2h7nsmy322pvpw5d4w3dn27g8q";
-  IosevkaSS01 = "1r5c291gbjgg7zzqm75dk77z67snpxp571xgdqvq57yb0dx38rij";
-  IosevkaSS02 = "0y28c4h0064vi6svgaljv3drahh8f2z0bw4vr33008ha1xn854pf";
-  IosevkaSS03 = "0bz66psg47ccvkbp8c1b8ki91xw68isf1jibh5vrgi51s9cg7031";
-  IosevkaSS04 = "0czfc0fcf61l6ldcq55nva50xshkkq6930kzfp5ixx5f04ng74c4";
-  IosevkaSS05 = "0fwd1bb840y5173z15qczribgi60c4i3m2g047dsi4aq98ykvzmp";
-  IosevkaSS06 = "1p4isvyzinxx7029pp84hzq2hj341dksl65nnflrxhz756rgg7qy";
-  IosevkaSS07 = "08qdwkn4vpmybb1ivaxnnf8rwpsblgchhnk9nv3dbrpkwkqpzc6s";
-  IosevkaSS08 = "0a3ddksfp83dbfy2xnvwc02mkldpby6wbbf30y43in1lac22gx6c";
-  IosevkaSS09 = "0nia0ycbv2cd27g6r5gnwp22c4xsszkca88d4b909fdasw14dah2";
-  IosevkaSS10 = "00vfbvx1hwmqjj9qc1zd21r7l9lgimz4dnvgwf3qkvbzk018lks6";
-  IosevkaSS11 = "1pxgrg0m2x0695frxzm4yrnaagay4v9am8gz514436z0jjdzamp0";
-  IosevkaSS12 = "1iqr8wplzsilcvl4mpn82c8j90c8whacif8sfl4yyvvpmy3d1863";
-  IosevkaSS13 = "06n5fzby3xwdz3rpjbm0viicak3l4qmjxbrv8d10z49c83z65blh";
-  IosevkaSS14 = "0akqbm4isfq9ky88sgxaadc20v58hd42n2g0f69ykfnq5m2rh2sl";
-  IosevkaSS15 = "0fn1k4q59zzy6g6c2z120ixnbq781zrkrqwdrysvb5ni00pvc7v7";
-  IosevkaSS16 = "1z39xq3r133hrbp0g8sjah90bbzichnijwhpxmfxirkc09gdjbnd";
-  IosevkaSS17 = "1gxp12z4z8cva4ns3y7x4hvqbd8wq7g9bzzdja06zimp87g2sb9b";
-  IosevkaSS18 = "1dvh4jxmw04nnw8xr47azn13hff4mq6f2sc3d62s3a41m3vg8gnq";
-  SGr-Iosevka = "0q46rj8viqjiri1i8wp6w65wyfiabh3yimyvpy7p36zksmiqic4v";
-  SGr-IosevkaCurly = "117qybi30a1rylxb76pbf7wqh2nb3b4q1v5ssjgva8rgirghs3hr";
-  SGr-IosevkaCurlySlab = "0xwqivyclxs6pnyzscd7qvnh2lav0q28lavf2zjvbf9yfylzrp7n";
-  SGr-IosevkaFixed = "1sgma0cz2mfh0nqzyg19y0s7q2rjds1xfbwz56fpljw4jpgy9m2d";
-  SGr-IosevkaFixedCurly = "1xg281c5m3fbj5hwzwjkhvjbsv3dbbl1c88shwhqqll12cnfl99d";
-  SGr-IosevkaFixedCurlySlab = "197qmypfcmbrlr1778zmbl26j6wmmrg6jxpk58znh040lchkkahs";
-  SGr-IosevkaFixedSlab = "14qxpl47m2frgxf023aqm57ysykw6cn6ni9pn0xxfp133vzf5743";
-  SGr-IosevkaFixedSS01 = "0fyys6ycihybwrjfna7byjk90jf7cl1ljnz58jgr1mbj2pyrkazg";
-  SGr-IosevkaFixedSS02 = "0c06i0jdjjp0knhirkarccrn80iphakj2dz7ppaibqh65i7zk5ff";
-  SGr-IosevkaFixedSS03 = "16b0sd5v68zdsjh847rl0jq4w7i8k0pk6i7qssdif0iljqf8qr2z";
-  SGr-IosevkaFixedSS04 = "03wm6gvyhv4rbimqncqy9d5rjxyh9v6wvz0y7gvia7zk6aajq3ni";
-  SGr-IosevkaFixedSS05 = "0z3fy17n35w52hzdlv2m9pavw8q148l4k56bydd4q8pdw0g7j0h8";
-  SGr-IosevkaFixedSS06 = "0zbzc4qsc5h2rp8vwjxzw5k0rxgsinn87jqg9h80dc7nj030wdir";
-  SGr-IosevkaFixedSS07 = "1xzhd8kgq86k9af9ppscfxgy3sidh7kkxr20yrb5na6083q5klyk";
-  SGr-IosevkaFixedSS08 = "1f6lkigf0hrcjr5yc134f250vqvd69vq7zvh0csy2ihhlrm0fbj9";
-  SGr-IosevkaFixedSS09 = "0z1mspmzhkzjm7fqxmwv6n622chbk4z1fhnqqdhq9i84lh5k7blr";
-  SGr-IosevkaFixedSS10 = "1kyla4msffymn46wkmjgk38lvbx0b8d7hh211wbnrl7a37rj7yxa";
-  SGr-IosevkaFixedSS11 = "09fv846hvq6dwqg0ssa8bsjdf9fsfqsj5v9pz9bmqgqrba728bpn";
-  SGr-IosevkaFixedSS12 = "1pii9k7wpgxjick29aan0gaidwcsws48rvr15afqm1yimy9c6563";
-  SGr-IosevkaFixedSS13 = "1s5b9w61lszv7aqyj15zp3dszmmlmbg1cwxnr0d5f826qchjj3qc";
-  SGr-IosevkaFixedSS14 = "09fnlbsvjlczh4xawi33rh0w7nyq7zc732jpk38f0ibb3n72d8xs";
-  SGr-IosevkaFixedSS15 = "1qwg3178vmjxhls975kigkcw7sz0dfpqqfxgjiz50cc9b6lp7vqk";
-  SGr-IosevkaFixedSS16 = "0pfkr6bk5s5x9xnr0c1nd9p6wvmrk8rr84naq9hyqska683nlv3w";
-  SGr-IosevkaFixedSS17 = "0b82dflnjzhs7z5sc9di9mq0xngdp8272j24adk3307067l8v5xg";
-  SGr-IosevkaFixedSS18 = "1apr62rscj2v2q1yrvvk33ky2qsfx3lww316wjhyh7h6rhj85blb";
-  SGr-IosevkaSlab = "1jxzb8dr1sb79gk2wh3hc3zpjpa73a1qn74kcmy0fcx3wff5d7al";
-  SGr-IosevkaSS01 = "1ad6s7x9sr4gwr65pa63fv78vrdmmd46gfd363n924fvq9bv2b8c";
-  SGr-IosevkaSS02 = "0jj7wch9q1rdy9zdqb8amm2wc8ksw6bacwjc4ilnghnfx96a5d8l";
-  SGr-IosevkaSS03 = "1r4x4i2rsmj8v4h00m5mc47y17cm0ld0qc65an2jlsgrqlinj1gj";
-  SGr-IosevkaSS04 = "1vqcg9szm97f99mfzi8rz9sl9z173r3i89s4lpwig8fdx9h6pl0d";
-  SGr-IosevkaSS05 = "0q31l7lnya2jiwkmvprid45klmx4qp604xhffjimkvmlciihs1b4";
-  SGr-IosevkaSS06 = "03j85lk9swa02n0jyrfpwwrdld263gxq9qngd3pzdl0p752n5rwc";
-  SGr-IosevkaSS07 = "17r91ykc35bd5j53zj1mmhq0w2ndwx8sk7l3vagq2i8hpw6gjp35";
-  SGr-IosevkaSS08 = "1myq7mxpffc589rmmixsfnh8ixnklzk69yqwbl3n1a7y33wbdqg8";
-  SGr-IosevkaSS09 = "1g5rrsqqkiq94yjvm82mfa4hxqlnzg0ggn50phn87qxh2qkd9b17";
-  SGr-IosevkaSS10 = "1rxi057zjjg7nrrwh5jgzxbfsdrr9g1h6kldm9m3ddx1mbc4iyqc";
-  SGr-IosevkaSS11 = "0mjpsz8mjw38j1nd2aj0kslzjk1gyyy82zkdbnviip69pq138aj7";
-  SGr-IosevkaSS12 = "0haqrynqmkvswdc4k2br6v13dxjwb7qq4vyf9jwr50j2jsxg25zv";
-  SGr-IosevkaSS13 = "0jpv0iniwz0vm726d3bi8zxhn9363r82ygjp3hhg1f8zfcx69fli";
-  SGr-IosevkaSS14 = "17rvpb5dw3rksgwd000aykch8zy1lyfi5i7bk4xqy68rfy9hgwh4";
-  SGr-IosevkaSS15 = "0z4hm3wklndvqp36h22m11qd14rrikbbh6bq837bz8akr2zqbshs";
-  SGr-IosevkaSS16 = "0y20k8apax7rkbrj8mygqp11zgz3jqqyj7kzm646i0wpskdigrnv";
-  SGr-IosevkaSS17 = "0ikkiqq56hf8gmx3xavli9q2hdkv10rj0vlw37as6463y4bpsc8g";
-  SGr-IosevkaSS18 = "0ywvk8nj342sa7dgj0nwjyvglrd5qgq57dj0f6vw574g2k7q2r01";
-  SGr-IosevkaTerm = "1x13lbq2viibqmvk0a2xh4r2h7dmiz6s62sliaj1hwv15p0iarwq";
-  SGr-IosevkaTermCurly = "0z56lbsbck3g5z7f2bdyzhxy1bygx9jybd1f3v73zz7lp75a07pi";
-  SGr-IosevkaTermCurlySlab = "0ddkq5xl6aqk7i093wdibi68xzbd2x4k64x462rml593n6mj3kqv";
-  SGr-IosevkaTermSlab = "1gcq5x23736qq00hg0acb9638qh06px4pq0kw3i1hybqw568dcyc";
-  SGr-IosevkaTermSS01 = "1d2bd218cbr0ivjmw4kbg8bhwhna45pl43h3zhmqpaq6ghhr18gs";
-  SGr-IosevkaTermSS02 = "0xhhzdy2hr3sagqj1ys30rhckj0pl2mpmk016j5ccz9afvmb4id2";
-  SGr-IosevkaTermSS03 = "1kjaq20pjknlv4yqak8r9ixmiibxp9dx770aq24riclqvfk96j6r";
-  SGr-IosevkaTermSS04 = "1cwxm9qy4n2lcbrk7h9h6gawmzhkwbcfix5d9l85n06jn4vp4zl3";
-  SGr-IosevkaTermSS05 = "0f14gwjxbqilvfwiladymwyqa36j5scwg4ydsapgw651p5qw2nq2";
-  SGr-IosevkaTermSS06 = "1jpfydg8jwwb0imzlfijk6fbkl1r8bvpb5z31s559a0zl6d8vg7k";
-  SGr-IosevkaTermSS07 = "12bjapbcrijzfdcyh55yjdhyp7da1b2mrwd0j4qq3a9zkapy8scl";
-  SGr-IosevkaTermSS08 = "04a8zbj8rcrx5pr9ihyf1y3ghywyaan1l7wixvzw2jcbfb48iyrz";
-  SGr-IosevkaTermSS09 = "07z6fi18yvk7ggz6yl3dvsy25irnxrs4dimq9jpqisphi7vh6hmb";
-  SGr-IosevkaTermSS10 = "16xyfsxqymgh7n0fhkpfvx3b02xl3ni3xwi0pdllg597b4vyai6l";
-  SGr-IosevkaTermSS11 = "1qkv8jbb9c8bnyd5513yxg9xznm3gqmbf9vw8n0g0hhvg0x54j0x";
-  SGr-IosevkaTermSS12 = "00xvvvh4wlmlyd2mdn724x9lx0h2nlb8rg50k745lbmp5kp2wp1n";
-  SGr-IosevkaTermSS13 = "115pwj15s18br1qsyziajpjzcv1xbvqk3lcvc8x4rzmwzf9jfb3x";
-  SGr-IosevkaTermSS14 = "1bs17lk1bjwidnwn794f2rmqgb96p7cd2ljnq05aqar27sp9612k";
-  SGr-IosevkaTermSS15 = "0wsvrnp3wdmzh2s0xq9243j79dvdz6017r3zdvbjpqj4dd4rxgbb";
-  SGr-IosevkaTermSS16 = "0ih1p4jmmja776s7y79xmc4awd1amr4w5856d7fac13wprqzyvx5";
-  SGr-IosevkaTermSS17 = "01z9q22n7riabwyqj0j2cnsqif8j8fdpsydhnm3fzyfqz0bcfq21";
-  SGr-IosevkaTermSS18 = "0fmzjycz572qgmk6jsd9v6zxlkh6mpqhnhcbjzjy4m7p5pdks6xj";
+  Iosevka = "08phw6jy5zml9gs5wvizqil9m24xx3bfiq026dqxfa7b45qwhvy9";
+  IosevkaAile = "0mhfq4rn6jfxyvci5dky5a72gdsw40rvgzqrzwdhdb95ydbpv0yg";
+  IosevkaCurly = "0bnwg2y1nxldx8pc4qfbdxb7z6cdqlx37fhz1a4xf7qydy8bcrwl";
+  IosevkaCurlySlab = "1ik3r5nbdg9x7lm508zwlvyqvnr50r0w8wmkw8qp5x57xf9bwpgn";
+  IosevkaEtoile = "13gqlsycnkf4n2zsb621dzc4s8hgb04r6r9jaz6585bnr5pjm1gs";
+  IosevkaSlab = "0ww4p5qlp4anb6g80dydm730357rpr4w90z845r3z12i5x6pv4xn";
+  IosevkaSS01 = "0b3yrlcxm7wxzd6zy8p2zm6a3qgj3y5sa065g3qjkybmdzl8r9j4";
+  IosevkaSS02 = "0jv9b2jff2v8hqmbnx734x7ncnn83z1azcfmv819saw06wsqig05";
+  IosevkaSS03 = "06sy9ml1igw0p167gjb3vwm3b33jd8yh42wjlwsx0vz88220hp78";
+  IosevkaSS04 = "0r3rbdcyn3ffqxl3mk0y1r9h77nr8b31fi065p0yfdciqlhas4zn";
+  IosevkaSS05 = "042n54596lqir70j19kz8vqpvr6r7kqcsg9b0q679qrsny03brrw";
+  IosevkaSS06 = "0wf0b842sh7z7f3x1y6bxz9a7qp207jm4vgdzjba5fq56dzzqv1s";
+  IosevkaSS07 = "1qzyvp9g0j3lj05rafll1yaki818a421kl4h2vsgfqks9h4knp3b";
+  IosevkaSS08 = "1ypj0vsq94qx1fhsqkpwxwhp0bv1ks1cgg40n4kyk8icjx41c2bv";
+  IosevkaSS09 = "1dw6jcmnlxpq9c7429c01nw0v3lb4p3x25vzn63xznwgnxlp3zd0";
+  IosevkaSS10 = "1sjzs7hn5r3n85w9rb35v93jdaq86mga2xwfmsalhmw1k5dbdp65";
+  IosevkaSS11 = "00a2wkxpqfsy9m2kxp4w91iwyxdacmh2r9gmr10ycp11v0d7q9dy";
+  IosevkaSS12 = "0nvx4r7w9kdlgd2js6q6fn1dfcwmfjqln6j5l7cm9kpjxalq4xz7";
+  IosevkaSS13 = "1is6qgwjds28ljsc65bnqrm40233qw4w5n6wqkmc689pqh96c5zf";
+  IosevkaSS14 = "1p037map2fpn0wrx3jlv6hw84p8jpvv2gm7w9sr1rwfb0sgqj422";
+  IosevkaSS15 = "1dd2i5b25a1hzmnq5pan98f4fs8nd98q50jawx3m87xczl0y25ym";
+  IosevkaSS16 = "0jvf1p8k8pdakcm0ygmn8c4s1fkay0yjrnnjpz764wh9kmvif2ah";
+  IosevkaSS17 = "11529msxvjqgv2m0lh0ydiapwszjhy2bb1kqqvm2k0if42jaw0aq";
+  IosevkaSS18 = "1rqg15imhcwfivi0q8gxvk69xszfl3vqbik2a24kkl64ngs8j6ld";
+  SGr-Iosevka = "07izlilvkf688jv06myq4iayghsggk8mlqhd52cyyj14y3705hiq";
+  SGr-IosevkaCurly = "010w2qczbdjh1p6my2nvq498zwlzk6as70db1m7mphqyzf0pypdq";
+  SGr-IosevkaCurlySlab = "0lhav6950vxm0x66xkdqf50gzvh4sznzfd20k2ly58pr1wjnzmgg";
+  SGr-IosevkaFixed = "0c6wviqhgxvcaz8lb0f3hwnwqqcjdqxywr2vj91ac7sy5fwn29k0";
+  SGr-IosevkaFixedCurly = "0a0hs7lxbgfimn0vcl9yhpsdqm9zdffly9glpbrffr6j5lfzr3hk";
+  SGr-IosevkaFixedCurlySlab = "0cpsiv06gpp69c9iv3v095fk181kf1vxv9rzhjs18n7f4l1mvl0f";
+  SGr-IosevkaFixedSlab = "18g7bwmiqf6hl8y3c4s9hkr4a99484c470w2j5bimvby1sajj1lh";
+  SGr-IosevkaFixedSS01 = "0byi5zp92s3ib18n4jjq1rqh8si58qr853977p8s8xgpwmw0dpv1";
+  SGr-IosevkaFixedSS02 = "1vi4zw117id31bmj1v6srfkbmx0a12v7zvbvqww5gq2al51c2wld";
+  SGr-IosevkaFixedSS03 = "0p8gaf53qlhrgpk4ycrz0499mzcqndrndhcjim41qmn37pxragdc";
+  SGr-IosevkaFixedSS04 = "0y00i5s0csw9ca7r1hajqjdn7ip0ryhrai16h9f901ckxrl8icp0";
+  SGr-IosevkaFixedSS05 = "0ncyjv3bap46db2l75w3q3g6gs1z6g4gd2459qs1mh66m4avw9yy";
+  SGr-IosevkaFixedSS06 = "0hpkxvybzjwjzk4ran18zhli6cp44dd9dmjsi3qr7cp057sv2nxc";
+  SGr-IosevkaFixedSS07 = "17rycr4bbpskzkb134ywa409ylx0hgqy76idxpnp0nzgacrdqw63";
+  SGr-IosevkaFixedSS08 = "0na7j1nwwpzigaxbndw4hsgbvr020ljjnpcmp2cw0q6gaw86gzn4";
+  SGr-IosevkaFixedSS09 = "06smgacjm7csnjv6105c47mwg7i3gfg4b18hghxy6vwcf7323skk";
+  SGr-IosevkaFixedSS10 = "0b053yfmx0jp10cizcdcv9hq1xdbjkzpfasw9dchywj0j4l77i3f";
+  SGr-IosevkaFixedSS11 = "16ycvndlmcpasdc9c2mncm6vj221iy2y40ni6kbdz6rlhi88i1cj";
+  SGr-IosevkaFixedSS12 = "03sq2i6fhlmljqfk8ji6bkq7kg0iibd7yxxdmsgfrwi9bspfynmv";
+  SGr-IosevkaFixedSS13 = "0s6f35px4frf3fkzmq8nrv16h9n55nmm2jwn9h9pfds01wl6y3h3";
+  SGr-IosevkaFixedSS14 = "14a92rzj1w50xczpn8gjf2vsd5ms38yg82a9hl32g522b7bmg3si";
+  SGr-IosevkaFixedSS15 = "11g9y220djq6nxpzqqjmj9frcxgdxsagkf4rjpi1ldwy6v3jbvqj";
+  SGr-IosevkaFixedSS16 = "1ncjmg7fwsgilivpjgfjgsh4giihqzbmf60slwcjkgxhiwq6sk6w";
+  SGr-IosevkaFixedSS17 = "0fzxjrdlqxl4y617lwjc8sbvh1azz6wkyfvg3894j82r1s4myn4y";
+  SGr-IosevkaFixedSS18 = "111krj392zmx6m0ikmwjcg32j5wx5a4cbjj36l3ksc7cjhpv0vn6";
+  SGr-IosevkaSlab = "1z6swxvq3yhslq9sjxgvay5g3bzgip2lf9pqjkbs3pm03qv77ah0";
+  SGr-IosevkaSS01 = "1gp768wzc8nxz8b7b65mdiprxwabsr4h7xcz145lw8bkxdcv8c0s";
+  SGr-IosevkaSS02 = "0vdvi5fk49lwyyrkyc1qc77ia0jckp64zdqksrqh8y20iyx8z3jd";
+  SGr-IosevkaSS03 = "0f2m5283cr76zwzcym4mib9dyhwzyj9ca6zp0marh30fnfyl1pi4";
+  SGr-IosevkaSS04 = "1z3wc4v73dc9shzsbjnb732ihkd85m5kfmy3dns6qyqbyn5grsz4";
+  SGr-IosevkaSS05 = "1glwqkjg8q6rjigi30r44zlhsg8q1209h4yj0mg0pvlqai802v0l";
+  SGr-IosevkaSS06 = "1ysyl05s98g97bwqq1gra8irxxryzm32gwqp5gv6w54407s4gjyr";
+  SGr-IosevkaSS07 = "00lxp584ys3ngjqk578szxrgi3pga18r64gl1i72y30c1wmvp29d";
+  SGr-IosevkaSS08 = "0pck7kn82g56r245zblbbnn5k7ax5x175hlbb0ib4zd59w59bw07";
+  SGr-IosevkaSS09 = "0rhb2hmp7sygwhysazwldxygzmyymrazcprf42impiw87s6z46bx";
+  SGr-IosevkaSS10 = "0swy1k8arjxllcx965ln8fjpwyd6h5y5w9i4kdx9x1kac4graki6";
+  SGr-IosevkaSS11 = "07c0qmrca6z0vwmfli9ipzjiv84192wq8b15lbn04fn2m1xvbdlr";
+  SGr-IosevkaSS12 = "072scbxs85fwv04b77zy0sk3bmy6ql358k4z38vgfhbck1920rdp";
+  SGr-IosevkaSS13 = "0cbcjgl209msq1rf5kh9gi9cx49h8wlnrkvwqcabpwg3vfh2y508";
+  SGr-IosevkaSS14 = "1sj0hs6wmsngkrkjfp9ki9zpnssqd2xia4n71pwjmc63zydmbpgm";
+  SGr-IosevkaSS15 = "1c79zyddjjgmly3ssz75bgn6lg7jmlc1jspq59hxcwcvv2maf4h8";
+  SGr-IosevkaSS16 = "1mf7zacqsf0jfr5sn36g6cpmkwkk41lfprcxrvy3xvbmd68kj0ap";
+  SGr-IosevkaSS17 = "0fvwj7v338sqh02v8pb7gzz3lw83z7ahqal15ygzjl5xk7f1z51j";
+  SGr-IosevkaSS18 = "180ixkl7777v43a9h4iybp8x1iw6jcdiq9p6027ayjxd81hvbd67";
+  SGr-IosevkaTerm = "142pq2h18x9mr9myvyx7mdmyw7c658c1pn1z0z6w9k3jy0cmf8cm";
+  SGr-IosevkaTermCurly = "1cd0wr51d7470ifzfbk1va2q1daylkd462zag9ilxb0iqha35wfp";
+  SGr-IosevkaTermCurlySlab = "0jd3jj5hbq1axn2wa0x19kf059wmac953zd6f02h878lpvcj88hi";
+  SGr-IosevkaTermSlab = "07aff9wdh014fnqgl88pwfbd0a7b9qakqy4c6kscplhr4sp7q122";
+  SGr-IosevkaTermSS01 = "01i707n4z798y2i7flj9x1rzsdp0fqfxw7cqxyjlczr4s1ydf6a3";
+  SGr-IosevkaTermSS02 = "01nq3gxajgfx55gyn302sl44ami26kw0n4fjw8va9xcz812bg472";
+  SGr-IosevkaTermSS03 = "1a6v0vvf2z38bxddsaaixyswdx6fyrvmzyhz0v1p82xlzvbpmr83";
+  SGr-IosevkaTermSS04 = "1kblkagawachgb70ab4jymbnw28dznh56p8k7cmbi3ixkykfbmn5";
+  SGr-IosevkaTermSS05 = "0g3mnxbly3ckwi37cvwywcj4jzp1x1nm759vykk2pkqjimdjgksr";
+  SGr-IosevkaTermSS06 = "1jgxp066zns4bh4amlsn4spa5z87x3zfbbwmqx998x98yblqzf16";
+  SGr-IosevkaTermSS07 = "1h85lhslc0k6l06zxxc2cgcj8fnpaq31rxkdpx18gxkniy6bqmip";
+  SGr-IosevkaTermSS08 = "07q9mjjpnbkfardplx9hps4xf2b08kwrv6m4ws6zqyylvn4mvhlj";
+  SGr-IosevkaTermSS09 = "0i8bcqxgw0glgin22nrl80ivvcagw2810b1c23ngjfkv2sfblmnk";
+  SGr-IosevkaTermSS10 = "1h031pr83dfc2xjkzfw85k4w3001a5v0gqilwbxz05gnv582k5yf";
+  SGr-IosevkaTermSS11 = "04pg8ilnbyzci8jggrzx8kw5k2zj43whl30rllnb0krvfqn82g1m";
+  SGr-IosevkaTermSS12 = "18vzqv8l1iyyiq9pfzlw9b02jn73qqqy1b1dhly1qliwdgnzcliy";
+  SGr-IosevkaTermSS13 = "0ya3bg29nc4ja7qflfqds00yqqpb9r7dq40hkmdi7qgjj1l681wi";
+  SGr-IosevkaTermSS14 = "143mfn7dh7a9vngagq1q3zz5b57rcjznwa62jjivy30rhvnnpxx8";
+  SGr-IosevkaTermSS15 = "0xqw8nsjd0wsj0mk5x2b934738fj617451hkb3cymcrhrvbrd4fq";
+  SGr-IosevkaTermSS16 = "0lwq7ijc0r64wx3816d97avzrayp77avkv53cqm2ad5bdkink0z5";
+  SGr-IosevkaTermSS17 = "09g2r6531g1pw3dpd4s78i8x3d4l78dd25c91hy0xry06dvb0da6";
+  SGr-IosevkaTermSS18 = "1lwlc9mj7q7irjx74q3q22gzm52kjk487rsrxih9ijvpw3fdnlvy";
 }
diff --git a/pkgs/data/fonts/julia-mono/default.nix b/pkgs/data/fonts/julia-mono/default.nix
index dc9ebf5ef25f..50172de67f4b 100644
--- a/pkgs/data/fonts/julia-mono/default.nix
+++ b/pkgs/data/fonts/julia-mono/default.nix
@@ -2,12 +2,12 @@
 
 stdenvNoCC.mkDerivation rec {
   pname = "JuliaMono-ttf";
-  version = "0.054";
+  version = "0.055";
 
   src = fetchzip {
     url = "https://github.com/cormullion/juliamono/releases/download/v${version}/${pname}.tar.gz";
     stripRoot = false;
-    hash = "sha256-DtvaFu3r2r5WmlFCbkbzqAk/Y2BNEnxR6hPDfKM+/aQ=";
+    hash = "sha256-bE7XjVzleSo5hjc7Azcl8R4OgJzsj1U21UOuXrBkulA=";
   };
 
   installPhase = ''
diff --git a/pkgs/data/fonts/kanji-stroke-order-font/default.nix b/pkgs/data/fonts/kanji-stroke-order-font/default.nix
index 80c97024ac36..7d7d025bbb76 100644
--- a/pkgs/data/fonts/kanji-stroke-order-font/default.nix
+++ b/pkgs/data/fonts/kanji-stroke-order-font/default.nix
@@ -1,28 +1,36 @@
-{ lib, stdenv, fetchurl }:
+{ lib, stdenv, fetchzip }:
 
 let
-  version = "4.003";
-  debianVersion = "dfsg-1";
-in stdenv.mkDerivation {
-  name = "kanji-stroke-order-font-${version}";
+  font = "kanji-stroke-order";
+  version = "4.004";
+in
+stdenv.mkDerivation {
+  pname = "${font}-font";
+  inherit version;
 
-  src = fetchurl {
-    url = "https://salsa.debian.org/fonts-team/fonts-kanjistrokeorders/-/archive/debian/${version}_${debianVersion}/fonts-kanjistrokeorders-debian-${version}_${debianVersion}.tar.bz2";
-    sha256 = "1a8hxzkrfjz0h5gl9h0panzzsn7cldlklxryyzmpam23g32q6bg1";
+  src = fetchzip {
+    # https://github.com/NixOS/nixpkgs/issues/60157
+    url = "https://drive.google.com/uc?export=download&id=1snpD-IQmT6fGGQjEePHdDzE2aiwuKrz4#${font}.zip";
+    hash = "sha256-wQpurDS6APnpNMbMHofwW/UKeBF8FXeiCVx4wAOeRoE=";
+    stripRoot = false;
   };
 
   installPhase = ''
-    mkdir -p $out/share/fonts/kanji-stroke-order $out/share/doc/kanji-stroke-order
-    cp *.ttf $out/share/fonts/kanji-stroke-order
-    cp *.txt $out/share/doc/kanji-stroke-order
+    runHook preInstall
+
+    install -Dm644 *.ttf -t $out/share/fonts/${font}
+    install -Dm644 *.txt -t $out/share/doc/${font}
+    install -Dm644 *.pdf -t $out/share/doc/${font}
+
+    runHook postInstall
   '';
 
   meta = with lib; {
     description = "Font containing stroke order diagrams for over 6500 kanji, 180 kana and other characters";
-    homepage = "https://sites.google.com/site/nihilistorguk/";
+    homepage = "https://www.nihilist.org.uk/";
 
     license = [ licenses.bsd3 ];
-    maintainers = with maintainers; [ ptrhlm ];
+    maintainers = with maintainers; [ ptrhlm stephen-huan ];
     platforms = platforms.all;
   };
 }
diff --git a/pkgs/data/fonts/lxgw-wenkai/default.nix b/pkgs/data/fonts/lxgw-wenkai/default.nix
index 8ce458d3e4a3..e5d8094e3914 100644
--- a/pkgs/data/fonts/lxgw-wenkai/default.nix
+++ b/pkgs/data/fonts/lxgw-wenkai/default.nix
@@ -2,11 +2,11 @@
 
 stdenvNoCC.mkDerivation rec {
   pname = "lxgw-wenkai";
-  version = "1.320";
+  version = "1.330";
 
   src = fetchurl {
     url = "https://github.com/lxgw/LxgwWenKai/releases/download/v${version}/${pname}-v${version}.tar.gz";
-    hash = "sha256-9crFUfj1mOXg4gD607jL2eHq8wlq/yEi5sgzKJ5YavM=";
+    hash = "sha256-CscUUcyLsk/S70tT2uGRqLiF8fa4KxC9pVrOziWJ/fI=";
   };
 
   installPhase = ''
diff --git a/pkgs/data/fonts/undefined-medium/default.nix b/pkgs/data/fonts/undefined-medium/default.nix
index c1b22f787117..f981b9f85e29 100644
--- a/pkgs/data/fonts/undefined-medium/default.nix
+++ b/pkgs/data/fonts/undefined-medium/default.nix
@@ -2,11 +2,11 @@
 
 stdenvNoCC.mkDerivation rec {
   pname = "undefined-medium";
-  version = "1.2";
+  version = "1.3";
 
   src = fetchzip {
-    url = "https://github.com/andirueckel/undefined-medium/archive/v1.2.zip";
-    hash = "sha256-hgHwi25T+aM7ljzk5uR4x+CqoRJ3/IOyktdp/mDW46I=";
+    url = "https://github.com/andirueckel/undefined-medium/archive/v1.3.zip";
+    hash = "sha256-cVdk6a0xijAQ/18W5jalqRS7IiPufMJW27Scns+nbEY=";
   };
 
   installPhase = ''
diff --git a/pkgs/data/icons/kora-icon-theme/default.nix b/pkgs/data/icons/kora-icon-theme/default.nix
index a490d1c7289a..6ff07f749e54 100644
--- a/pkgs/data/icons/kora-icon-theme/default.nix
+++ b/pkgs/data/icons/kora-icon-theme/default.nix
@@ -10,13 +10,13 @@
 
 stdenvNoCC.mkDerivation rec  {
   pname = "kora-icon-theme";
-  version = "1.6.0";
+  version = "1.6.1";
 
   src = fetchFromGitHub  {
     owner = "bikass";
     repo = "kora";
     rev = "v${version}";
-    sha256 = "sha256-YKdqV41HlQMvkyWoWbOCMUASshnEDnXtxzdmJdTEQGw=";
+    sha256 = "sha256-cWfQiJeyH/bkvASoe2nl4efHQdMpYFh587d5yycs31k=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/data/icons/nordzy-icon-theme/default.nix b/pkgs/data/icons/nordzy-icon-theme/default.nix
index 1e7b2f29b64e..3aedf3b2c93f 100644
--- a/pkgs/data/icons/nordzy-icon-theme/default.nix
+++ b/pkgs/data/icons/nordzy-icon-theme/default.nix
@@ -8,13 +8,13 @@
 
 stdenvNoCC.mkDerivation rec {
   pname = "nordzy-icon-theme";
-  version = "1.8.6";
+  version = "1.8.7";
 
   src = fetchFromGitHub {
     owner = "alvatip";
     repo = "Nordzy-icon";
     rev = version;
-    sha256 = "sha256-EJDnT6ft70eTR7o2ps+zyLGNZL9NBn6Qn4nHKsskzvE=";
+    sha256 = "sha256-r/WYGcHRAFX7TennestobjcJhwu3GE8aQXxnaeokQM0=";
   };
 
   # In the post patch phase we should first make sure to patch shebangs.
diff --git a/pkgs/data/icons/papirus-icon-theme/default.nix b/pkgs/data/icons/papirus-icon-theme/default.nix
index 4a39dfe473c8..fd1603e08d28 100644
--- a/pkgs/data/icons/papirus-icon-theme/default.nix
+++ b/pkgs/data/icons/papirus-icon-theme/default.nix
@@ -13,13 +13,13 @@
 
 stdenvNoCC.mkDerivation rec {
   pname = "papirus-icon-theme";
-  version = "20240201";
+  version = "20240501";
 
   src = fetchFromGitHub {
     owner = "PapirusDevelopmentTeam";
     repo = pname;
     rev = version;
-    hash = "sha256-hAmtvib6wENEAGQdK242wwDqF3Ddu4YR00KPaWR8JMo=";
+    hash = "sha256-ZTijLslItfXRBUVKrz9KcOc78Efr5rRV+HfQckKcZSI=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/data/icons/whitesur-cursors/default.nix b/pkgs/data/icons/whitesur-cursors/default.nix
index c16efa996d34..167c2b3578b7 100644
--- a/pkgs/data/icons/whitesur-cursors/default.nix
+++ b/pkgs/data/icons/whitesur-cursors/default.nix
@@ -1,17 +1,18 @@
-{ lib
-, stdenvNoCC
-, fetchFromGitHub
+{
+  lib,
+  stdenvNoCC,
+  fetchFromGitHub,
 }:
 
 stdenvNoCC.mkDerivation {
   pname = "whitesur-cursors";
-  version = "unstable-2022-06-17";
+  version = "0-unstable-2022-06-17";
 
   src = fetchFromGitHub {
     owner = "vinceliuice";
     repo = "WhiteSur-cursors";
     rev = "5c94e8c22de067282f4cf6d782afd7b75cdd08c8";
-    sha256 = "sha256-CFse0XZzJu+PWDcqmvIXvue+3cKX47oavZU9HYRDAg0=";
+    hash = "sha256-CFse0XZzJu+PWDcqmvIXvue+3cKX47oavZU9HYRDAg0=";
   };
 
   installPhase = ''
diff --git a/pkgs/data/misc/clash-geoip/default.nix b/pkgs/data/misc/clash-geoip/default.nix
index 7514d08f5e11..bf43ce2a63f2 100644
--- a/pkgs/data/misc/clash-geoip/default.nix
+++ b/pkgs/data/misc/clash-geoip/default.nix
@@ -2,11 +2,11 @@
 
 stdenvNoCC.mkDerivation rec {
   pname = "clash-geoip";
-  version = "20240412";
+  version = "20240512";
 
   src = fetchurl {
     url = "https://github.com/Dreamacro/maxmind-geoip/releases/download/${version}/Country.mmdb";
-    sha256 = "sha256-xc31FwO9wku1MzLIuCScOKEgzwLPn5NuXi2H4L3+M9s=";
+    sha256 = "sha256-vWtiTcuTcAL6E083rHPVhqduIs6tuAOph/EdwLFXHek=";
   };
 
   dontUnpack = true;
diff --git a/pkgs/data/misc/dbip-country-lite/default.nix b/pkgs/data/misc/dbip-country-lite/default.nix
index ca151c3b4dfb..9bf3cbdf4cf3 100644
--- a/pkgs/data/misc/dbip-country-lite/default.nix
+++ b/pkgs/data/misc/dbip-country-lite/default.nix
@@ -5,11 +5,11 @@
 
 stdenvNoCC.mkDerivation (finalAttrs: {
   pname = "dbip-country-lite";
-  version = "2024-04";
+  version = "2024-05";
 
   src = fetchurl {
     url = "https://download.db-ip.com/free/dbip-country-lite-${finalAttrs.version}.mmdb.gz";
-    hash = "sha256-tpiggDnhYPeLJ21mctXjbNSS2Gw4RI8gnpc1stDVmMc=";
+    hash = "sha256-MFhBCnYOJOVQl+xJ4wxi10nyb5MfRHnNVlba9LV1nsY=";
   };
 
   dontUnpack = true;
diff --git a/pkgs/data/misc/hackage/pin.json b/pkgs/data/misc/hackage/pin.json
index 38730d8ade56..fd08de133198 100644
--- a/pkgs/data/misc/hackage/pin.json
+++ b/pkgs/data/misc/hackage/pin.json
@@ -1,6 +1,6 @@
 {
-  "commit": "4eb9a5fde06b5d7343665582243debaf1d77e0a9",
-  "url": "https://github.com/commercialhaskell/all-cabal-hashes/archive/4eb9a5fde06b5d7343665582243debaf1d77e0a9.tar.gz",
-  "sha256": "0dzyfr1gv79riy2vh840b5hqly8rs10zhj01zi9nfn7jd9pzql28",
-  "msg": "Update from Hackage at 2024-04-16T17:36:35Z"
+  "commit": "88d42dc0129b0e3f4f702149a58667c66add9262",
+  "url": "https://github.com/commercialhaskell/all-cabal-hashes/archive/88d42dc0129b0e3f4f702149a58667c66add9262.tar.gz",
+  "sha256": "0imff76qbg1hsvsdds6dc2wfip0prdsa0bixd5b575jr6yjlkirh",
+  "msg": "Update from Hackage at 2024-05-15T11:29:34Z"
 }
diff --git a/pkgs/data/misc/unicode-emoji/default.nix b/pkgs/data/misc/unicode-emoji/default.nix
index ae14a27c8b7f..580dfef90bc5 100644
--- a/pkgs/data/misc/unicode-emoji/default.nix
+++ b/pkgs/data/misc/unicode-emoji/default.nix
@@ -5,7 +5,7 @@
 }:
 
 let
-  version = "15.0";
+  version = "15.1";
 
   fetchData = { suffix, hash }: stdenvNoCC.mkDerivation {
     pname = "unicode-emoji-${suffix}";
@@ -32,15 +32,15 @@ let
   srcs = {
     emoji-sequences = fetchData {
       suffix = "sequences";
-      hash = "sha256-XCIi2KQy2JagMaaML1SwT79HsPzi5phT8euKPpRetW0=";
+      hash = "sha256-63LJEV41BPu+HIYhthn4eUcaRszFbi9EVBe3wcrQUNE=";
     };
     emoji-test = fetchData {
       suffix = "test";
-      hash = "sha256-hEXyOsg4jglr4Z0CYuFPzv+Fb/Ugk/I1bciUhfGoU9s=";
+      hash = "sha256-2HbuJJqijqp2z6bfqnAoR6jROwYqpIjUZdA5XugTftk=";
     };
     emoji-zwj-sequences = fetchData {
       suffix = "zwj-sequences";
-      hash = "sha256-/jV/kRe3dGZ2Bjdl1YcTft+bJZA6eSvVSTW/CFZ5EYI=";
+      hash = "sha256-mnagPcrPzY+b/gjEnI2QtVGCuXfLzIemlOioGT77Dlc=";
     };
   };
 in
diff --git a/pkgs/data/misc/wireless-regdb/default.nix b/pkgs/data/misc/wireless-regdb/default.nix
index 284e6f524de5..fa2db6f82251 100644
--- a/pkgs/data/misc/wireless-regdb/default.nix
+++ b/pkgs/data/misc/wireless-regdb/default.nix
@@ -2,11 +2,11 @@
 
 stdenvNoCC.mkDerivation rec {
   pname = "wireless-regdb";
-  version = "2024.01.23";
+  version = "2024.05.08";
 
   src = fetchurl {
     url = "https://www.kernel.org/pub/software/network/${pname}/${pname}-${version}.tar.xz";
-    hash = "sha256-yKYcms92+n60I56J9kDe4+hwmNn2m001GMnGD8bSDFU=";
+    hash = "sha256-mu4dhuvrs2O3FL7JQbKCDzHjt/Gkhd3J/L2ZhcfT58Q=";
   };
 
   dontBuild = true;
diff --git a/pkgs/data/themes/alacritty-theme/default.nix b/pkgs/data/themes/alacritty-theme/default.nix
index 27c28cad1430..96cf66197fe1 100644
--- a/pkgs/data/themes/alacritty-theme/default.nix
+++ b/pkgs/data/themes/alacritty-theme/default.nix
@@ -6,13 +6,13 @@
 
 stdenvNoCC.mkDerivation (self: {
   pname = "alacritty-theme";
-  version = "0-unstable-2024-04-24";
+  version = "0-unstable-2024-05-03";
 
   src = fetchFromGitHub {
     owner = "alacritty";
     repo = "alacritty-theme";
-    rev = "e866efd4ac4e1b4b05892bf9f9bae0540754bca3";
-    hash = "sha256-Uv/Nv2aipnMBM7F4IoUiLF4U/27SF9H/EEfnwGfjiIs=";
+    rev = "94e1dc0b9511969a426208fbba24bd7448493785";
+    hash = "sha256-bPup3AKFGVuUC8CzVhWJPKphHdx0GAc62GxWsUWQ7Xk=";
   };
 
   dontConfigure = true;
diff --git a/pkgs/data/themes/catppuccin-gtk/default.nix b/pkgs/data/themes/catppuccin-gtk/default.nix
index 2e552290ffd3..bbe670f99ec9 100644
--- a/pkgs/data/themes/catppuccin-gtk/default.nix
+++ b/pkgs/data/themes/catppuccin-gtk/default.nix
@@ -29,13 +29,13 @@ lib.checkListOfEnum "${pname}: tweaks" validTweaks tweaks
 
 stdenvNoCC.mkDerivation rec {
   inherit pname;
-  version = "0.7.3";
+  version = "0.7.4";
 
   src = fetchFromGitHub {
     owner = "catppuccin";
     repo = "gtk";
     rev = "v${version}";
-    hash = "sha256-pGL8vaE63ss2ZT2FoNDfDkeuCxjcbl02RmwwfHC/Vxg=";
+    hash = "sha256-RFhahwiBTsjeRW71JkAveOHO70O6SbTZhUEvq8oMQ4Y=";
   };
 
   nativeBuildInputs = [ gtk3 sassc ];
diff --git a/pkgs/data/themes/colloid-gtk-theme/default.nix b/pkgs/data/themes/colloid-gtk-theme/default.nix
index ef69114c855e..60849a407d86 100644
--- a/pkgs/data/themes/colloid-gtk-theme/default.nix
+++ b/pkgs/data/themes/colloid-gtk-theme/default.nix
@@ -22,13 +22,13 @@ lib.checkListOfEnum "${pname}: tweaks" [ "nord" "dracula" "gruvbox" "everforest"
 
 stdenvNoCC.mkDerivation rec {
   inherit pname;
-  version = "2024-04-14";
+  version = "2024-05-13";
 
   src = fetchFromGitHub {
     owner = "vinceliuice";
     repo = pname;
     rev = version;
-    hash = "sha256-DQYnR2V86KbIJfAA4ObRtKQq1IuECie1qdOBYVu8NtA=";
+    hash = "sha256-24U1iMByy+cFQuLUWYPBSuvJwYzwS0rCr7L6OWyMUz0=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/data/themes/dracula-theme/default.nix b/pkgs/data/themes/dracula-theme/default.nix
index cb3e112821fc..d21264f4e075 100644
--- a/pkgs/data/themes/dracula-theme/default.nix
+++ b/pkgs/data/themes/dracula-theme/default.nix
@@ -2,7 +2,7 @@
 
 let
   themeName = "Dracula";
-  version = "unstable-2024-04-24";
+  version = "4.0.0-unstable-2024-05-12";
 in
 stdenvNoCC.mkDerivation {
   pname = "dracula-theme";
@@ -11,8 +11,8 @@ stdenvNoCC.mkDerivation {
   src = fetchFromGitHub {
     owner = "dracula";
     repo = "gtk";
-    rev = "5e9a46b7610da0944a8131bbf08487861cae2c46";
-    hash = "sha256-pKKEZ/GheyIf6pPb+Sz4AfF8oRlf1Jk4cl0tub5Ye10=";
+    rev = "98ad13fb6efbdcbf944b3c5507de01cf94338c0c";
+    hash = "sha256-qF35jUvoDw3xMGGscET18sKqqQ0+oZJYNnSXbvy7ayM=";
   };
 
   propagatedUserEnvPkgs = [
@@ -38,7 +38,9 @@ stdenvNoCC.mkDerivation {
     runHook postInstall
   '';
 
-  passthru.updateScript = unstableGitUpdater { };
+  passthru.updateScript = unstableGitUpdater {
+    tagPrefix = "v";
+  };
 
   meta = with lib; {
     description = "Dracula variant of the Ant theme";
diff --git a/pkgs/data/themes/flat-remix-gnome/default.nix b/pkgs/data/themes/flat-remix-gnome/default.nix
index 61ddd00abd30..3cd6710e5b93 100644
--- a/pkgs/data/themes/flat-remix-gnome/default.nix
+++ b/pkgs/data/themes/flat-remix-gnome/default.nix
@@ -7,25 +7,25 @@
 let
   # make install will use dconf to find desktop background file uri.
   # consider adding an args to allow specify pictures manually.
-  # https://github.com/daniruiz/flat-remix-gnome/blob/20231026/Makefile#L38
+  # https://github.com/daniruiz/flat-remix-gnome/blob/20240503/Makefile#L38
   fake-dconf = writeScriptBin "dconf" "echo -n";
 in
 stdenv.mkDerivation rec {
   pname = "flat-remix-gnome";
-  version = "20231026";
+  version = "20240503";
 
   src = fetchFromGitHub {
     owner = "daniruiz";
     repo = pname;
     rev = version;
-    hash = "sha256-sKQOq0GMslkzND2ayL5M6XIxJv8t0yj6XCP3poA6wRc=";
+    hash = "sha256-02hYxgq8Go++oYT8r86wA7HVXQJeUZ0JpwIu3VWfjQE=";
   };
 
   nativeBuildInputs = [ glib fake-dconf ];
   makeFlags = [ "PREFIX=$(out)" ];
 
   # make install will back up this file, it will fail if the file doesn't exist.
-  # https://github.com/daniruiz/flat-remix-gnome/blob/20231026/Makefile#L56
+  # https://github.com/daniruiz/flat-remix-gnome/blob/20240503/Makefile#L56
   preInstall = ''
     mkdir -p $out/share/gnome-shell/
     touch $out/share/gnome-shell/gnome-shell-theme.gresource
diff --git a/pkgs/data/themes/graphite-gtk-theme/default.nix b/pkgs/data/themes/graphite-gtk-theme/default.nix
index ef453e7cbbda..5fadc70d1181 100644
--- a/pkgs/data/themes/graphite-gtk-theme/default.nix
+++ b/pkgs/data/themes/graphite-gtk-theme/default.nix
@@ -27,13 +27,13 @@ lib.checkListOfEnum "${pname}: grub screens" [ "1080p" "2k" "4k" ] grubScreens
 
 stdenvNoCC.mkDerivation rec {
   inherit pname;
-  version = "2023-12-31";
+  version = "2024-04-28";
 
   src = fetchFromGitHub {
     owner = "vinceliuice";
     repo = pname;
     rev = version;
-    hash = "sha256-tAby1nLRBdkVQy448BXloBw8oeYqN2aFEs0jahNI3jg=";
+    hash = "sha256-7P8dTPk0LwXU3e44TeechCNsxtzw+w01B56IWtCUcCI=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/data/themes/kwin-decorations/kde-rounded-corners/default.nix b/pkgs/data/themes/kwin-decorations/kde-rounded-corners/default.nix
index 1be8fd1b6b0d..99c5f7fe3fe0 100644
--- a/pkgs/data/themes/kwin-decorations/kde-rounded-corners/default.nix
+++ b/pkgs/data/themes/kwin-decorations/kde-rounded-corners/default.nix
@@ -12,13 +12,13 @@
 
 stdenv.mkDerivation rec {
   pname = "kde-rounded-corners";
-  version = "0.6.2";
+  version = "0.6.5";
 
   src = fetchFromGitHub {
     owner = "matinlotfali";
     repo = "KDE-Rounded-Corners";
     rev = "v${version}";
-    hash = "sha256-4bB1EKK9XUkX8o3ca2dQtJe0UuSDgITVXWnpddTsJDs=";
+    hash = "sha256-g7gNFv4/ighfxYz/VXF5KvcoT6t4lT5soDLlV3oAKvc=";
   };
 
   postConfigure = ''
diff --git a/pkgs/data/themes/material-kwin-decoration/default.nix b/pkgs/data/themes/material-kwin-decoration/default.nix
index ba81e1f62987..85bf37cc7892 100644
--- a/pkgs/data/themes/material-kwin-decoration/default.nix
+++ b/pkgs/data/themes/material-kwin-decoration/default.nix
@@ -17,7 +17,7 @@
 
 mkDerivation rec {
   pname = "material-kwin-decoration";
-  version = "unstable-2023-01-15";
+  version = "7-unstable-2023-01-15";
 
   src = fetchFromGitHub {
     owner = "Zren";
@@ -47,7 +47,9 @@ mkDerivation rec {
   ];
 
   passthru = {
-    updateScript = unstableGitUpdater { };
+    updateScript = unstableGitUpdater {
+      tagPrefix = "v";
+    };
   };
 
   meta = with lib; {
diff --git a/pkgs/data/themes/nixos-bgrt-plymouth/default.nix b/pkgs/data/themes/nixos-bgrt-plymouth/default.nix
index 0486aed864f4..b6b5be1adda0 100644
--- a/pkgs/data/themes/nixos-bgrt-plymouth/default.nix
+++ b/pkgs/data/themes/nixos-bgrt-plymouth/default.nix
@@ -6,7 +6,7 @@
 
 stdenv.mkDerivation {
   name = "nixos-bgrt-plymouth";
-  version = "unstable-2023-03-10";
+  version = "0-unstable-2023-03-10";
 
   src = fetchFromGitHub {
     repo = "plymouth-theme-nixos-bgrt";
diff --git a/pkgs/data/themes/orchis-theme/default.nix b/pkgs/data/themes/orchis-theme/default.nix
index 75bdf7b07aa9..e1dd0a256594 100644
--- a/pkgs/data/themes/orchis-theme/default.nix
+++ b/pkgs/data/themes/orchis-theme/default.nix
@@ -26,13 +26,13 @@ lib.checkListOfEnum "${pname}: theme tweaks" validTweaks tweaks
 stdenvNoCC.mkDerivation
 rec {
   inherit pname;
-  version = "2024-04-18";
+  version = "2024-05-01";
 
   src = fetchFromGitHub {
     repo = "Orchis-theme";
     owner = "vinceliuice";
     rev = version;
-    hash = "sha256-Kvafbvw1q8F0+l47WshFHPfZEQhFXPPXuI0RjBJnP4s=";
+    hash = "sha256-xi4kYT566bQqQEY4CByTrpwMfC1uhzeIqpprpe59oIM=";
   };
 
   nativeBuildInputs = [ gtk3 sassc ];
diff --git a/pkgs/data/themes/yaru/default.nix b/pkgs/data/themes/yaru/default.nix
index 4810bfd55e32..d22064014eba 100644
--- a/pkgs/data/themes/yaru/default.nix
+++ b/pkgs/data/themes/yaru/default.nix
@@ -16,13 +16,13 @@
 
 stdenv.mkDerivation rec {
   pname = "yaru";
-  version = "23.10.0";
+  version = "24.04.2";
 
   src = fetchFromGitHub {
     owner = "ubuntu";
     repo = "yaru";
     rev = version;
-    hash = "sha256-+Szk77QeoM4PwusxKflTh83h16qz6Es6UwDXpbydJUE=";
+    hash = "sha256-nvNJ0ppx3oete+CsklJtpDOLyUA0Oj/oUmcLjsR54MU=";
   };
 
   nativeBuildInputs = [ meson sassc pkg-config glib ninja python3 ];
diff --git a/pkgs/desktops/budgie/budgie-control-center/default.nix b/pkgs/desktops/budgie/budgie-control-center/default.nix
index aea55e66256c..25b8b66f6082 100644
--- a/pkgs/desktops/budgie/budgie-control-center/default.nix
+++ b/pkgs/desktops/budgie/budgie-control-center/default.nix
@@ -52,7 +52,7 @@
 , udisks2
 , upower
 , webp-pixbuf-loader
-, wrapGAppsHook
+, wrapGAppsHook3
 , enableSshSocket ? false
 }:
 
@@ -86,7 +86,7 @@ stdenv.mkDerivation (finalAttrs: {
     ninja
     pkg-config
     shared-mime-info
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
diff --git a/pkgs/desktops/budgie/budgie-desktop-view/default.nix b/pkgs/desktops/budgie/budgie-desktop-view/default.nix
index a1869cfa918c..b7be5ff42c16 100644
--- a/pkgs/desktops/budgie/budgie-desktop-view/default.nix
+++ b/pkgs/desktops/budgie/budgie-desktop-view/default.nix
@@ -9,7 +9,7 @@
 , ninja
 , pkg-config
 , vala
-, wrapGAppsHook
+, wrapGAppsHook3
 }:
 
 stdenv.mkDerivation (finalAttrs: {
@@ -30,7 +30,7 @@ stdenv.mkDerivation (finalAttrs: {
     ninja
     pkg-config
     vala
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
diff --git a/pkgs/desktops/budgie/budgie-desktop/default.nix b/pkgs/desktops/budgie/budgie-desktop/default.nix
index 50068621be34..0a1512412179 100644
--- a/pkgs/desktops/budgie/budgie-desktop/default.nix
+++ b/pkgs/desktops/budgie/budgie-desktop/default.nix
@@ -33,7 +33,7 @@
 , upower
 , vala
 , xfce
-, wrapGAppsHook
+, wrapGAppsHook3
 }:
 
 stdenv.mkDerivation (finalAttrs: {
@@ -81,7 +81,7 @@ stdenv.mkDerivation (finalAttrs: {
     ninja
     pkg-config
     vala
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
diff --git a/pkgs/desktops/budgie/budgie-desktop/wrapper.nix b/pkgs/desktops/budgie/budgie-desktop/wrapper.nix
index 99b33b68cb0e..d25643e6603f 100644
--- a/pkgs/desktops/budgie/budgie-desktop/wrapper.nix
+++ b/pkgs/desktops/budgie/budgie-desktop/wrapper.nix
@@ -2,7 +2,7 @@
 , stdenv
 , glib
 , xorg
-, wrapGAppsHook
+, wrapGAppsHook3
 , budgie-desktop
 , plugins ? [ ]
 }:
@@ -21,7 +21,7 @@ stdenv.mkDerivation {
 
   nativeBuildInputs = [
     glib
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = lib.forEach plugins (plugin: plugin.buildInputs) ++ plugins;
diff --git a/pkgs/desktops/budgie/budgie-gsettings-overrides/default.nix b/pkgs/desktops/budgie/budgie-gsettings-overrides/default.nix
index d853a584a7a4..a9f427450883 100644
--- a/pkgs/desktops/budgie/budgie-gsettings-overrides/default.nix
+++ b/pkgs/desktops/budgie/budgie-gsettings-overrides/default.nix
@@ -31,9 +31,6 @@ let
     document-font-name="Noto Sans 10"
     monospace-font-name="Hack 10"
 
-    [org.gnome.desktop.peripherals.touchpad:Budgie]
-    tap-to-click=true
-
     [org.gnome.desktop.wm.preferences:Budgie]
     titlebar-font="Noto Sans Bold 10"
 
diff --git a/pkgs/desktops/budgie/budgie-screensaver/default.nix b/pkgs/desktops/budgie/budgie-screensaver/default.nix
index 68c253a2a1c6..d0c4964a0400 100644
--- a/pkgs/desktops/budgie/budgie-screensaver/default.nix
+++ b/pkgs/desktops/budgie/budgie-screensaver/default.nix
@@ -13,7 +13,7 @@
 , ninja
 , pkg-config
 , systemd
-, wrapGAppsHook
+, wrapGAppsHook3
 , xorg
 }:
 
@@ -33,7 +33,7 @@ stdenv.mkDerivation (finalAttrs: {
     meson
     ninja
     pkg-config
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
diff --git a/pkgs/desktops/budgie/magpie/default.nix b/pkgs/desktops/budgie/magpie/default.nix
index f900e82a9ce1..5f42b1986ce6 100644
--- a/pkgs/desktops/budgie/magpie/default.nix
+++ b/pkgs/desktops/budgie/magpie/default.nix
@@ -35,7 +35,7 @@
 , meson
 , xorgserver
 , python3
-, wrapGAppsHook
+, wrapGAppsHook3
 , gi-docgen
 , sysprof
 , libsysprof-capture
@@ -90,7 +90,7 @@ stdenv.mkDerivation (finalAttrs: {
     xvfb-run
     pkg-config
     python3
-    wrapGAppsHook
+    wrapGAppsHook3
     gi-docgen
     xorgserver
   ];
diff --git a/pkgs/desktops/cinnamon/bulky/default.nix b/pkgs/desktops/cinnamon/bulky/default.nix
index 21cd43601924..c3927ece2548 100644
--- a/pkgs/desktops/cinnamon/bulky/default.nix
+++ b/pkgs/desktops/cinnamon/bulky/default.nix
@@ -1,7 +1,7 @@
 { stdenv
 , lib
 , fetchFromGitHub
-, wrapGAppsHook
+, wrapGAppsHook3
 , python3
 , gobject-introspection
 , gsettings-desktop-schemas
@@ -23,7 +23,7 @@ stdenv.mkDerivation rec {
   };
 
   nativeBuildInputs = [
-    wrapGAppsHook
+    wrapGAppsHook3
     gsettings-desktop-schemas
     gettext
     gobject-introspection
diff --git a/pkgs/desktops/cinnamon/cinnamon-common/default.nix b/pkgs/desktops/cinnamon/cinnamon-common/default.nix
index 957739980746..957af3062422 100644
--- a/pkgs/desktops/cinnamon/cinnamon-common/default.nix
+++ b/pkgs/desktops/cinnamon/cinnamon-common/default.nix
@@ -9,6 +9,7 @@
 , cjs
 , evolution-data-server
 , fetchFromGitHub
+, fetchpatch
 , gdk-pixbuf
 , gettext
 , libgnomekbd
@@ -29,7 +30,7 @@
 , polkit
 , lib
 , stdenv
-, wrapGAppsHook
+, wrapGAppsHook3
 , libxml2
 , gtk-doc
 , gnome
@@ -83,6 +84,13 @@ stdenv.mkDerivation rec {
   patches = [
     ./use-sane-install-dir.patch
     ./libdir.patch
+
+    # Switch to GNOME Online Accounts GTK
+    (fetchpatch {
+      url = "https://github.com/linuxmint/cinnamon/commit/d22f889c376734f0ca5d904885c2772e790fbadc.patch";
+      includes = [ "files/usr/share/cinnamon/cinnamon-settings/cinnamon-settings.py" ];
+      hash = "sha256-xutJqxtzk3/BUQGZY/tnBkRyAfZZY7AckaGC6b7Sfn8=";
+    })
   ];
 
   buildInputs = [
@@ -132,7 +140,7 @@ stdenv.mkDerivation rec {
     gobject-introspection
     meson
     ninja
-    wrapGAppsHook
+    wrapGAppsHook3
     intltool
     gtk-doc
     perl
@@ -140,13 +148,6 @@ stdenv.mkDerivation rec {
     pkg-config
   ];
 
-  # Use locales from cinnamon-translations.
-  # FIXME: Upstream does not respect localedir option from Meson currently.
-  # https://github.com/linuxmint/cinnamon/pull/11244#issuecomment-1305855783
-  postInstall = ''
-    ln -s ${cinnamon-translations}/share/locale $out/share/locale
-  '';
-
   postPatch = ''
     find . -type f -exec sed -i \
       -e s,/usr/share/cinnamon,$out/share/cinnamon,g \
@@ -173,6 +174,22 @@ stdenv.mkDerivation rec {
     patchShebangs src/data-to-c.pl
   '';
 
+  postInstall = ''
+    # Use locales from cinnamon-translations.
+    ln -s ${cinnamon-translations}/share/locale $out/share/locale
+
+    # Do not install online accounts module, with a -Donlineaccounts=false c-c-c
+    # this just shows an empty page.
+    rm -f $out/share/cinnamon/cinnamon-settings/modules/cs_online_accounts.py
+
+    # g-o-a-gtk already provides its own desktop item.
+    rm -f $out/share/applications/cinnamon-settings-online-accounts.desktop
+
+    # Actually removes Adwaita and HighContrast from Cinnamon styles with mint-artwork 1.8.2.
+    # https://github.com/linuxmint/cinnamon/commit/13b1ad104e88197f6c4e2d02ab2674c07254b8e8
+    rm -r $out/share/cinnamon/styles.d
+  '';
+
   preFixup = ''
     # https://github.com/NixOS/nixpkgs/issues/101881
     gappsWrapperArgs+=(
diff --git a/pkgs/desktops/cinnamon/cinnamon-control-center/default.nix b/pkgs/desktops/cinnamon/cinnamon-control-center/default.nix
index e0aee4bde640..c09bf55a3e41 100644
--- a/pkgs/desktops/cinnamon/cinnamon-control-center/default.nix
+++ b/pkgs/desktops/cinnamon/cinnamon-control-center/default.nix
@@ -9,7 +9,6 @@
 , gtk3
 , libnotify
 , libxml2
-, gnome-online-accounts
 , colord
 , polkit
 , libxkbfile
@@ -20,7 +19,7 @@
 , libgudev
 , libwacom
 , gnome
-, wrapGAppsHook
+, wrapGAppsHook3
 , tzdata
 , glibc
 , libnma
@@ -59,7 +58,6 @@ stdenv.mkDerivation rec {
     colord
     libgudev
     libwacom
-    gnome-online-accounts
     tzdata
     networkmanager
     libnma
@@ -85,13 +83,15 @@ stdenv.mkDerivation rec {
   mesonFlags = [
     # use locales from cinnamon-translations
     "--localedir=${cinnamon-translations}/share/locale"
+    # https://github.com/linuxmint/cinnamon-control-center/issues/326
+    "-Donlineaccounts=false"
   ];
 
   nativeBuildInputs = [
     pkg-config
     meson
     ninja
-    wrapGAppsHook
+    wrapGAppsHook3
     gettext
     python3
   ];
diff --git a/pkgs/desktops/cinnamon/cinnamon-desktop/default.nix b/pkgs/desktops/cinnamon/cinnamon-desktop/default.nix
index 0f53fbbb656a..830abafa2853 100644
--- a/pkgs/desktops/cinnamon/cinnamon-desktop/default.nix
+++ b/pkgs/desktops/cinnamon/cinnamon-desktop/default.nix
@@ -13,7 +13,7 @@
 , systemd
 , xkeyboard_config
 , xorg
-, wrapGAppsHook
+, wrapGAppsHook3
 , glib
 }:
 
@@ -49,7 +49,7 @@ stdenv.mkDerivation rec {
     meson
     ninja
     python3
-    wrapGAppsHook
+    wrapGAppsHook3
     intltool
     pkg-config
     gobject-introspection
diff --git a/pkgs/desktops/cinnamon/cinnamon-menus/default.nix b/pkgs/desktops/cinnamon/cinnamon-menus/default.nix
index 754a5c43a182..693495591178 100644
--- a/pkgs/desktops/cinnamon/cinnamon-menus/default.nix
+++ b/pkgs/desktops/cinnamon/cinnamon-menus/default.nix
@@ -6,7 +6,7 @@
 , pkg-config
 , lib
 , stdenv
-, wrapGAppsHook
+, wrapGAppsHook3
 }:
 
 stdenv.mkDerivation rec {
@@ -27,7 +27,7 @@ stdenv.mkDerivation rec {
   nativeBuildInputs = [
     meson
     ninja
-    wrapGAppsHook
+    wrapGAppsHook3
     pkg-config
     gobject-introspection
   ];
diff --git a/pkgs/desktops/cinnamon/cinnamon-screensaver/default.nix b/pkgs/desktops/cinnamon/cinnamon-screensaver/default.nix
index 98d1a4f39c16..6ed8c0247ba2 100644
--- a/pkgs/desktops/cinnamon/cinnamon-screensaver/default.nix
+++ b/pkgs/desktops/cinnamon/cinnamon-screensaver/default.nix
@@ -15,7 +15,7 @@
 , libgnomekbd
 , gnome
 , libtool
-, wrapGAppsHook
+, wrapGAppsHook3
 , gobject-introspection
 , python3
 , pam
@@ -39,7 +39,7 @@ stdenv.mkDerivation rec {
 
   nativeBuildInputs = [
     pkg-config
-    wrapGAppsHook
+    wrapGAppsHook3
     gettext
     intltool
     dbus # for meson.build
diff --git a/pkgs/desktops/cinnamon/cinnamon-session/default.nix b/pkgs/desktops/cinnamon/cinnamon-session/default.nix
index 66044ccefc4f..bb8a4f192cf9 100644
--- a/pkgs/desktops/cinnamon/cinnamon-session/default.nix
+++ b/pkgs/desktops/cinnamon/cinnamon-session/default.nix
@@ -16,7 +16,7 @@
 , lib
 , stdenv
 , systemd
-, wrapGAppsHook
+, wrapGAppsHook3
 , xapp
 , xorg
 , libexecinfo
@@ -76,7 +76,7 @@ stdenv.mkDerivation rec {
   nativeBuildInputs = [
     meson
     ninja
-    wrapGAppsHook
+    wrapGAppsHook3
     libexecinfo
     python3
     pkg-config
diff --git a/pkgs/desktops/cinnamon/cinnamon-settings-daemon/default.nix b/pkgs/desktops/cinnamon/cinnamon-settings-daemon/default.nix
index 65828b3da604..1c948d622430 100644
--- a/pkgs/desktops/cinnamon/cinnamon-settings-daemon/default.nix
+++ b/pkgs/desktops/cinnamon/cinnamon-settings-daemon/default.nix
@@ -10,7 +10,7 @@
 , libgnomekbd
 , libnotify
 , libxklavier
-, wrapGAppsHook
+, wrapGAppsHook3
 , pkg-config
 , lib
 , stdenv
@@ -75,7 +75,7 @@ stdenv.mkDerivation rec {
   nativeBuildInputs = [
     meson
     ninja
-    wrapGAppsHook
+    wrapGAppsHook3
     pkg-config
   ];
 
diff --git a/pkgs/desktops/cinnamon/mint-artwork/default.nix b/pkgs/desktops/cinnamon/mint-artwork/default.nix
index 7641272b0ec8..ef2c6ec4fa2c 100644
--- a/pkgs/desktops/cinnamon/mint-artwork/default.nix
+++ b/pkgs/desktops/cinnamon/mint-artwork/default.nix
@@ -7,14 +7,14 @@
 
 stdenv.mkDerivation rec {
   pname = "mint-artwork";
-  version = "1.8.0";
+  version = "1.8.2";
 
   src = fetchurl {
     urls = [
       "http://packages.linuxmint.com/pool/main/m/mint-artwork/mint-artwork_${version}.tar.xz"
-      "https://web.archive.org/web/20240122135036/http://packages.linuxmint.com/pool/main/m/mint-artwork/mint-artwork_${version}.tar.xz"
+      "https://web.archive.org/web/20240505123538/http://packages.linuxmint.com/pool/main/m/mint-artwork/mint-artwork_${version}.tar.xz"
     ];
-    hash = "sha256-eCrch5IQdTd92DIqdjZFzvE4oShv3HuXfrLLUmLb0Ms=";
+    hash = "sha256-MegMFrnU8Gcc2v5y3BQCIZS31JdpfSM5FIJJNcyt4LY=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/desktops/cinnamon/muffin/default.nix b/pkgs/desktops/cinnamon/muffin/default.nix
index f00a92ddc6d4..fa054f1eaeec 100644
--- a/pkgs/desktops/cinnamon/muffin/default.nix
+++ b/pkgs/desktops/cinnamon/muffin/default.nix
@@ -33,7 +33,7 @@
 , udev
 , wayland
 , wayland-protocols
-, wrapGAppsHook
+, wrapGAppsHook3
 , xorgserver
 , xwayland
 }:
@@ -65,7 +65,7 @@ stdenv.mkDerivation rec {
     ninja
     pkg-config
     python3
-    wrapGAppsHook
+    wrapGAppsHook3
     xorgserver # for cvt command
     gobject-introspection
   ];
diff --git a/pkgs/desktops/cinnamon/nemo/default.nix b/pkgs/desktops/cinnamon/nemo/default.nix
index fe61e9701d9c..482c9b6b4193 100644
--- a/pkgs/desktops/cinnamon/nemo/default.nix
+++ b/pkgs/desktops/cinnamon/nemo/default.nix
@@ -7,7 +7,7 @@
 , pkg-config
 , lib
 , stdenv
-, wrapGAppsHook
+, wrapGAppsHook3
 , libxml2
 , gtk3
 , gvfs
@@ -56,7 +56,7 @@ stdenv.mkDerivation rec {
     meson
     pkg-config
     ninja
-    wrapGAppsHook
+    wrapGAppsHook3
     intltool
     shared-mime-info
     gobject-introspection
diff --git a/pkgs/desktops/cinnamon/pix/default.nix b/pkgs/desktops/cinnamon/pix/default.nix
index 1264ca82fc8b..45b8da1760ba 100644
--- a/pkgs/desktops/cinnamon/pix/default.nix
+++ b/pkgs/desktops/cinnamon/pix/default.nix
@@ -20,7 +20,7 @@
 , bison
 , flex
 , clutter-gtk
-, wrapGAppsHook
+, wrapGAppsHook3
 , shared-mime-info
 , python3
 , desktop-file-utils
@@ -48,7 +48,7 @@ stdenv.mkDerivation rec {
     ninja
     pkg-config
     python3
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
diff --git a/pkgs/desktops/cinnamon/warpinator/default.nix b/pkgs/desktops/cinnamon/warpinator/default.nix
index 69a5aadb6ca9..6f9a7e5a24d3 100644
--- a/pkgs/desktops/cinnamon/warpinator/default.nix
+++ b/pkgs/desktops/cinnamon/warpinator/default.nix
@@ -8,7 +8,7 @@
 , gtk3
 , gdk-pixbuf
 , xapp
-, wrapGAppsHook
+, wrapGAppsHook3
 , gettext
 , polkit
 , glib
@@ -49,7 +49,7 @@ stdenv.mkDerivation rec {
     meson
     ninja
     gobject-introspection
-    wrapGAppsHook
+    wrapGAppsHook3
     gettext
     polkit # for its gettext
   ];
diff --git a/pkgs/desktops/cinnamon/xapp/default.nix b/pkgs/desktops/cinnamon/xapp/default.nix
index 5c691cd40905..14b706fbd4c3 100644
--- a/pkgs/desktops/cinnamon/xapp/default.nix
+++ b/pkgs/desktops/cinnamon/xapp/default.nix
@@ -13,7 +13,7 @@
 , lib
 , stdenv
 , vala
-, wrapGAppsHook
+, wrapGAppsHook3
 , inxi
 , mate
 , dbus
@@ -43,7 +43,7 @@ stdenv.mkDerivation rec {
     pkg-config
     python3
     vala
-    wrapGAppsHook
+    wrapGAppsHook3
     gobject-introspection
   ];
 
diff --git a/pkgs/desktops/cinnamon/xreader/default.nix b/pkgs/desktops/cinnamon/xreader/default.nix
index c64f57ec3c8e..05a4aedfb6ed 100644
--- a/pkgs/desktops/cinnamon/xreader/default.nix
+++ b/pkgs/desktops/cinnamon/xreader/default.nix
@@ -6,7 +6,7 @@
 , intltool
 , shared-mime-info
 , gtk3
-, wrapGAppsHook
+, wrapGAppsHook3
 , libarchive
 , libxml2
 , xapp
@@ -38,7 +38,7 @@ stdenv.mkDerivation rec {
 
   nativeBuildInputs = [
     shared-mime-info
-    wrapGAppsHook
+    wrapGAppsHook3
     meson
     ninja
     pkg-config
diff --git a/pkgs/desktops/cinnamon/xviewer/default.nix b/pkgs/desktops/cinnamon/xviewer/default.nix
index 47e4e331da8b..e0ff80b74ffc 100644
--- a/pkgs/desktops/cinnamon/xviewer/default.nix
+++ b/pkgs/desktops/cinnamon/xviewer/default.nix
@@ -20,7 +20,7 @@
 , ninja
 , pkg-config
 , python3
-, wrapGAppsHook
+, wrapGAppsHook3
 , xapp
 , yelp-tools
 }:
@@ -47,7 +47,7 @@ stdenv.mkDerivation rec {
     ninja
     pkg-config
     python3
-    wrapGAppsHook
+    wrapGAppsHook3
     yelp-tools
   ];
 
diff --git a/pkgs/desktops/deepin/core/dde-control-center/default.nix b/pkgs/desktops/deepin/core/dde-control-center/default.nix
index cbfbb34f33ce..ffb94b9b52b3 100644
--- a/pkgs/desktops/deepin/core/dde-control-center/default.nix
+++ b/pkgs/desktops/deepin/core/dde-control-center/default.nix
@@ -6,7 +6,7 @@
 , qttools
 , doxygen
 , wrapQtAppsHook
-, wrapGAppsHook
+, wrapGAppsHook3
 , dtkwidget
 , qt5integration
 , qt5platform-plugins
@@ -44,7 +44,7 @@ stdenv.mkDerivation rec {
     qttools
     doxygen
     wrapQtAppsHook
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
   dontWrapGApps = true;
 
diff --git a/pkgs/desktops/deepin/core/dde-dock/default.nix b/pkgs/desktops/deepin/core/dde-dock/default.nix
index 9c827e96a745..275d8e589492 100644
--- a/pkgs/desktops/deepin/core/dde-dock/default.nix
+++ b/pkgs/desktops/deepin/core/dde-dock/default.nix
@@ -7,7 +7,7 @@
 , qttools
 , pkg-config
 , wrapQtAppsHook
-, wrapGAppsHook
+, wrapGAppsHook3
 , qtbase
 , dtkwidget
 , qt5integration
@@ -48,7 +48,7 @@ stdenv.mkDerivation rec {
     qttools
     pkg-config
     wrapQtAppsHook
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
   dontWrapGApps = true;
 
diff --git a/pkgs/desktops/deepin/core/dde-file-manager/default.nix b/pkgs/desktops/deepin/core/dde-file-manager/default.nix
index 552fa748d51f..42d371628b3e 100644
--- a/pkgs/desktops/deepin/core/dde-file-manager/default.nix
+++ b/pkgs/desktops/deepin/core/dde-file-manager/default.nix
@@ -23,7 +23,7 @@
 , polkit-qt
 , polkit
 , wrapQtAppsHook
-, wrapGAppsHook
+, wrapGAppsHook3
 , lucenepp
 , boost
 , taglib
@@ -57,7 +57,7 @@ stdenv.mkDerivation rec {
     qttools
     pkg-config
     wrapQtAppsHook
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
   dontWrapGApps = true;
 
diff --git a/pkgs/desktops/deepin/core/dde-session-shell/default.nix b/pkgs/desktops/deepin/core/dde-session-shell/default.nix
index b30840f74ff3..cfaa12338eb2 100644
--- a/pkgs/desktops/deepin/core/dde-session-shell/default.nix
+++ b/pkgs/desktops/deepin/core/dde-session-shell/default.nix
@@ -6,7 +6,7 @@
 , pkg-config
 , qttools
 , wrapQtAppsHook
-, wrapGAppsHook
+, wrapGAppsHook3
 , qtbase
 , dtkwidget
 , qt5integration
@@ -65,7 +65,7 @@ stdenv.mkDerivation rec {
     pkg-config
     qttools
     wrapQtAppsHook
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
   dontWrapGApps = true;
 
diff --git a/pkgs/desktops/deepin/default.nix b/pkgs/desktops/deepin/default.nix
index 2edf1359bee9..4b2dc27c1100 100644
--- a/pkgs/desktops/deepin/default.nix
+++ b/pkgs/desktops/deepin/default.nix
@@ -23,6 +23,11 @@ let
     image-editor = callPackage ./library/image-editor { };
     udisks2-qt5 = callPackage ./library/udisks2-qt5 { };
     util-dfm = callPackage ./library/util-dfm { };
+    dtk6core = callPackage ./library/dtk6core { };
+    dtk6gui = callPackage ./library/dtk6gui { };
+    dtk6widget = callPackage ./library/dtk6widget { };
+    dtk6declarative = callPackage ./library/dtk6declarative { };
+    dtk6systemsettings = callPackage ./library/dtk6systemsettings { };
 
     #### CORE
     deepin-kwin = callPackage ./core/deepin-kwin { };
diff --git a/pkgs/desktops/deepin/go-package/dde-api/default.nix b/pkgs/desktops/deepin/go-package/dde-api/default.nix
index d86c36976302..2c7c6276cff6 100644
--- a/pkgs/desktops/deepin/go-package/dde-api/default.nix
+++ b/pkgs/desktops/deepin/go-package/dde-api/default.nix
@@ -5,7 +5,7 @@
 , pkg-config
 , deepin-gettext-tools
 , wrapQtAppsHook
-, wrapGAppsHook
+, wrapGAppsHook3
 , alsa-lib
 , gtk3
 , libcanberra
@@ -57,7 +57,7 @@ buildGoModule rec {
     pkg-config
     deepin-gettext-tools
     wrapQtAppsHook
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
   dontWrapGApps = true;
 
diff --git a/pkgs/desktops/deepin/go-package/dde-daemon/default.nix b/pkgs/desktops/deepin/go-package/dde-daemon/default.nix
index b79f1fe472d1..4a63b779c4c5 100644
--- a/pkgs/desktops/deepin/go-package/dde-daemon/default.nix
+++ b/pkgs/desktops/deepin/go-package/dde-daemon/default.nix
@@ -7,7 +7,7 @@
 , deepin-gettext-tools
 , gettext
 , python3
-, wrapGAppsHook
+, wrapGAppsHook3
 , ddcutil
 , alsa-lib
 , glib
@@ -95,7 +95,7 @@ buildGoModule rec {
     deepin-gettext-tools
     gettext
     python3
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
diff --git a/pkgs/desktops/deepin/go-package/startdde/default.nix b/pkgs/desktops/deepin/go-package/startdde/default.nix
index 2408410b2f08..63ebea8f08ab 100644
--- a/pkgs/desktops/deepin/go-package/startdde/default.nix
+++ b/pkgs/desktops/deepin/go-package/startdde/default.nix
@@ -5,7 +5,7 @@
 , gettext
 , pkg-config
 , jq
-, wrapGAppsHook
+, wrapGAppsHook3
 , glib
 , libgnome-keyring
 , gtk3
@@ -47,7 +47,7 @@ buildGoModule rec {
     gettext
     pkg-config
     jq
-    wrapGAppsHook
+    wrapGAppsHook3
     glib
   ];
 
diff --git a/pkgs/desktops/deepin/library/dtk6core/default.nix b/pkgs/desktops/deepin/library/dtk6core/default.nix
new file mode 100644
index 000000000000..d86bebdea1d8
--- /dev/null
+++ b/pkgs/desktops/deepin/library/dtk6core/default.nix
@@ -0,0 +1,84 @@
+{ stdenv
+, lib
+, fetchFromGitHub
+, cmake
+, pkg-config
+, doxygen
+, qt6Packages
+, lshw
+, libuchardet
+, spdlog
+, dtkcommon
+, systemd
+, withSystemd ? lib.meta.availableOn stdenv.hostPlatform systemd
+}:
+
+stdenv.mkDerivation (finalAttrs: {
+  pname = "dtk6core";
+  version = "6.0.15";
+
+  src = fetchFromGitHub {
+    owner = "linuxdeepin";
+    repo = "dtk6core";
+    rev = finalAttrs.version;
+    hash = "sha256-zUJFilafR0hNH/Owmuyh6BLBFPbBuFKcHv40fena0GM=";
+  };
+
+  patches = [
+    ./fix-pkgconfig-path.patch
+    ./fix-pri-path.patch
+  ];
+
+  nativeBuildInputs = [
+    cmake
+    pkg-config
+    doxygen
+    qt6Packages.qttools
+    qt6Packages.wrapQtAppsHook
+  ];
+
+  dontWrapQtApps = true;
+
+  buildInputs = [
+    qt6Packages.qtbase
+    lshw
+    libuchardet
+    spdlog
+  ]
+  ++ lib.optional withSystemd systemd;
+
+  propagatedBuildInputs = [ dtkcommon ];
+
+  cmakeFlags = [
+    "-DDTK_VERSION=${finalAttrs.version}"
+    "-DBUILD_DOCS=ON"
+    "-DBUILD_EXAMPLES=OFF"
+    "-DQCH_INSTALL_DESTINATION=${placeholder "doc"}/share/doc"
+    "-DDSG_PREFIX_PATH='/run/current-system/sw'"
+    "-DMKSPECS_INSTALL_DIR=${placeholder "out"}/mkspecs/modules"
+    "-DD_DSG_APP_DATA_FALLBACK=/var/dsg/appdata"
+    "-DBUILD_WITH_SYSTEMD=${if withSystemd then "ON" else "OFF"}"
+  ];
+
+  preConfigure = ''
+    # qt.qpa.plugin: Could not find the Qt platform plugin "minimal"
+    # A workaround is to set QT_PLUGIN_PATH explicitly
+    export QT_PLUGIN_PATH=${lib.getBin qt6Packages.qtbase}/${qt6Packages.qtbase.qtPluginPrefix}
+  '';
+
+  outputs = [ "out" "dev" "doc" ];
+
+  postFixup = ''
+    for binary in $out/libexec/dtk6/DCore/bin/*; do
+      wrapQtApp $binary
+    done
+  '';
+
+  meta = {
+    description = "Deepin tool kit core library";
+    homepage = "https://github.com/linuxdeepin/dtk6core";
+    license = lib.licenses.lgpl3Plus;
+    platforms = lib.platforms.linux;
+    maintainers = lib.teams.deepin.members;
+  };
+})
diff --git a/pkgs/desktops/deepin/library/dtk6core/fix-pkgconfig-path.patch b/pkgs/desktops/deepin/library/dtk6core/fix-pkgconfig-path.patch
new file mode 100644
index 000000000000..570e34c06147
--- /dev/null
+++ b/pkgs/desktops/deepin/library/dtk6core/fix-pkgconfig-path.patch
@@ -0,0 +1,14 @@
+diff --git a/misc/dtkcore.pc.in b/misc/dtkcore.pc.in
+index 83eecb7..da24ce8 100644
+--- a/misc/dtkcore.pc.in
++++ b/misc/dtkcore.pc.in
+@@ -1,7 +1,7 @@
+ prefix=@CMAKE_INSTALL_PREFIX@
+ exec_prefix=${prefix}
+-libdir=${prefix}/@LIBRARY_INSTALL_DIR@
+-includedir=${prefix}/@INCLUDE_INSTALL_DIR@
++libdir=@LIBRARY_INSTALL_DIR@
++includedir=@INCLUDE_INSTALL_DIR@
+ 
+ Name: dtk@DTK_VERSION_MAJOR@core
+ Description: Deepin Tool Kit dtkcore header files
diff --git a/pkgs/desktops/deepin/library/dtk6core/fix-pri-path.patch b/pkgs/desktops/deepin/library/dtk6core/fix-pri-path.patch
new file mode 100644
index 000000000000..19953ed1733d
--- /dev/null
+++ b/pkgs/desktops/deepin/library/dtk6core/fix-pri-path.patch
@@ -0,0 +1,17 @@
+diff --git a/misc/qt_lib_dtkcore.pri.in b/misc/qt_lib_dtkcore.pri.in
+index a331f52..ce01dc0 100644
+--- a/misc/qt_lib_dtkcore.pri.in
++++ b/misc/qt_lib_dtkcore.pri.in
+@@ -4,9 +4,9 @@ QT.dtkcore.MINOR_VERSION = @PROJECT_VERSION_MINOR@
+ QT.dtkcore.PATCH_VERSION = @PROJECT_VERSION_PATCH@
+ QT.dtkcore.name = dtkcore
+ QT.dtkcore.module = dtk@DTK_VERSION_MAJOR@core
+-QT.dtkcore.tools = @CMAKE_INSTALL_PREFIX@/@TOOL_INSTALL_DIR@
+-QT.dtkcore.libs = @CMAKE_INSTALL_PREFIX@/@LIBRARY_INSTALL_DIR@
+-QT.dtkcore.includes = @CMAKE_INSTALL_PREFIX@/@INCLUDE_INSTALL_DIR@
++QT.dtkcore.tools = @TOOL_INSTALL_DIR@
++QT.dtkcore.libs = @LIBRARY_INSTALL_DIR@
++QT.dtkcore.includes = @INCLUDE_INSTALL_DIR@
+ QT.dtkcore.frameworks =
+ QT.dtkcore.depends = core dbus xml
+ QT.dtkcore.module_config = v2 ltcg
diff --git a/pkgs/desktops/deepin/library/dtk6declarative/default.nix b/pkgs/desktops/deepin/library/dtk6declarative/default.nix
new file mode 100644
index 000000000000..ecafebf66b71
--- /dev/null
+++ b/pkgs/desktops/deepin/library/dtk6declarative/default.nix
@@ -0,0 +1,70 @@
+{ stdenv
+, lib
+, fetchFromGitHub
+, cmake
+, pkg-config
+, doxygen
+, qt6Packages
+, dtk6gui
+}:
+
+stdenv.mkDerivation (finalAttrs: {
+  pname = "dtk6declarative";
+  version = "6.0.15";
+
+  src = fetchFromGitHub {
+    owner = "linuxdeepin";
+    repo = "dtk6declarative";
+    rev = finalAttrs.version;
+    hash = "sha256-euHEfK2N2jtWMzeajgvTnHSl39zXwp7I0cQIqZRVGZ0=";
+  };
+
+  patches = [
+    ./fix-pkgconfig-path.patch
+    ./fix-pri-path.patch
+  ];
+
+  nativeBuildInputs = [
+    cmake
+    pkg-config
+    doxygen
+    qt6Packages.qttools
+    qt6Packages.wrapQtAppsHook
+  ];
+
+  propagatedBuildInputs = [
+    dtk6gui
+  ] ++ (with qt6Packages ; [
+    qtbase
+    qtdeclarative
+    qtshadertools
+    qt5compat
+  ]);
+
+  cmakeFlags = [
+    "-DDTK_VERSION=${finalAttrs.version}"
+    "-DBUILD_DOCS=ON"
+    "-DBUILD_EXAMPLES=ON"
+    "-DMKSPECS_INSTALL_DIR=${placeholder "dev"}/mkspecs/modules"
+    "-DQCH_INSTALL_DESTINATION=${placeholder "doc"}/share/doc"
+    "-DQML_INSTALL_DIR=${placeholder "out"}/${qt6Packages.qtbase.qtQmlPrefix}"
+  ];
+
+  preConfigure = ''
+    # qt.qpa.plugin: Could not find the Qt platform plugin "minimal"
+    # A workaround is to set QT_PLUGIN_PATH explicitly
+    export QT_PLUGIN_PATH=${lib.getBin qt6Packages.qtbase}/${qt6Packages.qtbase.qtPluginPrefix}
+    export QML2_IMPORT_PATH=${lib.getBin qt6Packages.qtdeclarative}/${qt6Packages.qtbase.qtQmlPrefix}
+  '';
+
+  outputs = [ "out" "dev" "doc" ];
+
+  meta = {
+    description = "A widget development toolkit based on QtQuick/QtQml";
+    mainProgram = "dtk-exhibition";
+    homepage = "https://github.com/linuxdeepin/dtk6declarative";
+    license = lib.licenses.lgpl3Plus;
+    platforms = lib.platforms.linux;
+    maintainers = lib.teams.deepin.members;
+  };
+})
diff --git a/pkgs/desktops/deepin/library/dtk6declarative/fix-pkgconfig-path.patch b/pkgs/desktops/deepin/library/dtk6declarative/fix-pkgconfig-path.patch
new file mode 100644
index 000000000000..e15ee2f7a0b8
--- /dev/null
+++ b/pkgs/desktops/deepin/library/dtk6declarative/fix-pkgconfig-path.patch
@@ -0,0 +1,14 @@
+diff --git a/misc/dtkdeclarative.pc.in b/misc/dtkdeclarative.pc.in
+index dc3827f..fd0949e 100644
+--- a/misc/dtkdeclarative.pc.in
++++ b/misc/dtkdeclarative.pc.in
+@@ -1,7 +1,7 @@
+ prefix=@CMAKE_INSTALL_PREFIX@
+ exec_prefix=${prefix}
+-libdir=${prefix}/@LIB_INSTALL_DIR@
+-includedir=${prefix}/@INCLUDE_INSTALL_DIR@
++libdir=@LIB_INSTALL_DIR@
++includedir=@INCLUDE_INSTALL_DIR@
+ 
+ Name: DtkDeclarative
+ Description: Deepin Tool Kit DtkDeclarative header files
diff --git a/pkgs/desktops/deepin/library/dtk6declarative/fix-pri-path.patch b/pkgs/desktops/deepin/library/dtk6declarative/fix-pri-path.patch
new file mode 100644
index 000000000000..e622809c3936
--- /dev/null
+++ b/pkgs/desktops/deepin/library/dtk6declarative/fix-pri-path.patch
@@ -0,0 +1,15 @@
+diff --git a/misc/qt_lib_dtkdeclarative.pri.in b/misc/qt_lib_dtkdeclarative.pri.in
+index 8797802..44e32a3 100644
+--- a/misc/qt_lib_dtkdeclarative.pri.in
++++ b/misc/qt_lib_dtkdeclarative.pri.in
+@@ -4,8 +4,8 @@ QT.dtkdeclarative.MINOR_VERSION = @PROJECT_VERSION_MINOR@
+ QT.dtkdeclarative.PATCH_VERSION = @PROJECT_VERSION_PATCH@
+ QT.dtkdeclarative.name = dtkdeclarative
+ QT.dtkdeclarative.module = dtk@DTK_VERSION_MAJOR@declarative
+-QT.dtkdeclarative.libs = @CMAKE_INSTALL_PREFIX@/@LIB_INSTALL_DIR@
+-QT.dtkdeclarative.includes = @CMAKE_INSTALL_PREFIX@/@INCLUDE_INSTALL_DIR@
++QT.dtkdeclarative.libs = @LIB_INSTALL_DIR@
++QT.dtkdeclarative.includes = @INCLUDE_INSTALL_DIR@
+ QT.dtkdeclarative.frameworks =
+ QT.dtkdeclarative.depends = core dbus xml gui dtkcore dtkgui quick quick_private
+ QT.dtkdeclarative.module_config = v2 ltcg
diff --git a/pkgs/desktops/deepin/library/dtk6gui/default.nix b/pkgs/desktops/deepin/library/dtk6gui/default.nix
new file mode 100644
index 000000000000..73638c39e62f
--- /dev/null
+++ b/pkgs/desktops/deepin/library/dtk6gui/default.nix
@@ -0,0 +1,74 @@
+{ stdenv
+, lib
+, fetchFromGitHub
+, cmake
+, pkg-config
+, doxygen
+, qt6Packages
+, dtk6core
+, librsvg
+}:
+
+stdenv.mkDerivation (finalAttrs: {
+  pname = "dtk6gui";
+  version = "6.0.15";
+
+  src = fetchFromGitHub {
+    owner = "linuxdeepin";
+    repo = "dtk6gui";
+    rev = finalAttrs.version;
+    hash = "sha256-B/A3VXPCon+NIUhO+IVGoojACVjut2h0nH5pLdJYufw=";
+  };
+
+  patches = [
+    ./fix-pkgconfig-path.patch
+    ./fix-pri-path.patch
+  ];
+
+  nativeBuildInputs = [
+    cmake
+    pkg-config
+    doxygen
+    qt6Packages.qttools
+    qt6Packages.wrapQtAppsHook
+  ];
+
+  buildInputs = [
+    qt6Packages.qtbase
+    librsvg
+  ];
+
+  propagatedBuildInputs = [
+    dtk6core
+    qt6Packages.qtimageformats
+  ];
+
+  cmakeFlags = [
+    "-DDTK_VERSION=${finalAttrs.version}"
+    "-DBUILD_DOCS=ON"
+    "-DMKSPECS_INSTALL_DIR=${placeholder "out"}/mkspecs/modules"
+    "-DQCH_INSTALL_DESTINATION=${placeholder "doc"}/share/doc"
+  ];
+
+  preConfigure = ''
+    # qt.qpa.plugin: Could not find the Qt platform plugin "minimal"
+    # A workaround is to set QT_PLUGIN_PATH explicitly
+    export QT_PLUGIN_PATH=${lib.getBin qt6Packages.qtbase}/${qt6Packages.qtbase.qtPluginPrefix}
+  '';
+
+  outputs = [ "out" "dev" "doc" ];
+
+  postFixup = ''
+    for binary in $out/libexec/dtk6/DGui/bin/*; do
+      wrapQtApp $binary
+    done
+  '';
+
+  meta = {
+    description = "Deepin Toolkit, gui module for DDE look and feel";
+    homepage = "https://github.com/linuxdeepin/dtk6gui";
+    license = lib.licenses.lgpl3Plus;
+    platforms = lib.platforms.linux;
+    maintainers = lib.teams.deepin.members;
+  };
+})
diff --git a/pkgs/desktops/deepin/library/dtk6gui/fix-pkgconfig-path.patch b/pkgs/desktops/deepin/library/dtk6gui/fix-pkgconfig-path.patch
new file mode 100644
index 000000000000..1485baccc204
--- /dev/null
+++ b/pkgs/desktops/deepin/library/dtk6gui/fix-pkgconfig-path.patch
@@ -0,0 +1,16 @@
+diff --git a/misc/dtkgui.pc.in b/misc/dtkgui.pc.in
+index 89fdbbf..ad817c4 100644
+--- a/misc/dtkgui.pc.in
++++ b/misc/dtkgui.pc.in
+@@ -1,8 +1,8 @@
+ prefix=@CMAKE_INSTALL_PREFIX@
+ exec_prefix=${prefix}
+-libdir=${prefix}/@LIBRARY_INSTALL_DIR@
+-includedir=${prefix}/@INCLUDE_INSTALL_DIR@
+-tooldir=${prefix}/@PACKAGE_TOOL_INSTALL_DIR@
++libdir=@LIBRARY_INSTALL_DIR@
++includedir=@INCLUDE_INSTALL_DIR@
++tooldir=@PACKAGE_TOOL_INSTALL_DIR@
+ 
+ Name: dtk@DTK_VERSION_MAJOR@gui
+ Description: Deepin Tool Kit dtkgui header files
diff --git a/pkgs/desktops/deepin/library/dtk6gui/fix-pri-path.patch b/pkgs/desktops/deepin/library/dtk6gui/fix-pri-path.patch
new file mode 100644
index 000000000000..b746d34b1c79
--- /dev/null
+++ b/pkgs/desktops/deepin/library/dtk6gui/fix-pri-path.patch
@@ -0,0 +1,17 @@
+diff --git a/misc/qt_lib_dtkgui.pri.in b/misc/qt_lib_dtkgui.pri.in
+index 28308ee..9fb25e6 100644
+--- a/misc/qt_lib_dtkgui.pri.in
++++ b/misc/qt_lib_dtkgui.pri.in
+@@ -4,9 +4,9 @@ QT.dtkgui.MINOR_VERSION = @PROJECT_VERSION_MINOR@
+ QT.dtkgui.PATCH_VERSION = @PROJECT_VERSION_PATCH@
+ QT.dtkgui.name = dtkgui
+ QT.dtkgui.module = dtk@DTK_VERSION_MAJOR@gui
+-QT.dtkgui.tools = @CMAKE_INSTALL_PREFIX@/@TOOL_INSTALL_DIR@
+-QT.dtkgui.libs = @CMAKE_INSTALL_PREFIX@/@LIBRARY_INSTALL_DIR@
+-QT.dtkgui.includes = @CMAKE_INSTALL_PREFIX@/@INCLUDE_INSTALL_DIR@
++QT.dtkgui.tools = @TOOL_INSTALL_DIR@
++QT.dtkgui.libs = @LIBRARY_INSTALL_DIR@
++QT.dtkgui.includes = @INCLUDE_INSTALL_DIR@
+ QT.dtkgui.frameworks =
+ QT.dtkgui.depends = core gui dtkcore gui_private dbus network
+ QT.dtkgui.module_config = v2 internal_module ltcg
diff --git a/pkgs/desktops/deepin/library/dtk6systemsettings/default.nix b/pkgs/desktops/deepin/library/dtk6systemsettings/default.nix
new file mode 100644
index 000000000000..d9f400ce979f
--- /dev/null
+++ b/pkgs/desktops/deepin/library/dtk6systemsettings/default.nix
@@ -0,0 +1,63 @@
+{ stdenv
+, lib
+, fetchFromGitHub
+, fetchpatch
+, cmake
+, pkg-config
+, doxygen
+, qt6Packages
+, dtk6core
+, libxcrypt
+}:
+
+stdenv.mkDerivation rec {
+  pname = "dtk6systemsettings";
+  version = "6.0.2";
+
+  src = fetchFromGitHub {
+    owner = "linuxdeepin";
+    repo = pname;
+    rev = version;
+    hash = "sha256-b/iI2OKQQoFj3vWatfGdDP9z+SEsK5XBra9KqjlGzqs=";
+  };
+
+  nativeBuildInputs = [
+    cmake
+    pkg-config
+    doxygen
+    qt6Packages.qttools
+  ];
+
+  dontWrapQtApps = true;
+
+  buildInputs = [
+    qt6Packages.qtbase
+    dtk6core
+    libxcrypt
+  ];
+
+  cmakeFlags = [
+    "-DDTK_VERSION=${version}"
+    "-DBUILD_DOCS=ON"
+    "-DBUILD_EXAMPLES=OFF"
+    "-DQCH_INSTALL_DESTINATION=${placeholder "doc"}/share/doc"
+    "-DMKSPECS_INSTALL_DIR=${placeholder "out"}/mkspecs/modules"
+    "-DDTK_INCLUDE_INSTALL_DIR=${placeholder "dev"}/include/dtk/DSystemSettings"
+  ];
+
+  preConfigure = ''
+    # qt.qpa.plugin: Could not find the Qt platform plugin "minimal"
+    # A workaround is to set QT_PLUGIN_PATH explicitly
+    export QT_PLUGIN_PATH=${lib.getBin qt6Packages.qtbase}/${qt6Packages.qtbase.qtPluginPrefix}
+  '';
+
+  outputs = [ "out" "dev" "doc" ];
+
+  meta = {
+    description = "Qt-based development library for system settings";
+    homepage = "https://github.com/linuxdeepin/dtk6systemsettings";
+    license = lib.licenses.lgpl3Plus;
+    platforms = lib.platforms.linux;
+    maintainers = lib.teams.deepin.members;
+  };
+}
diff --git a/pkgs/desktops/deepin/library/dtk6widget/default.nix b/pkgs/desktops/deepin/library/dtk6widget/default.nix
new file mode 100644
index 000000000000..3c1870581988
--- /dev/null
+++ b/pkgs/desktops/deepin/library/dtk6widget/default.nix
@@ -0,0 +1,83 @@
+{ stdenv
+, lib
+, fetchFromGitHub
+, cmake
+, pkg-config
+, doxygen
+, qt6Packages
+, dtk6gui
+, cups
+, libstartup_notification
+}:
+
+stdenv.mkDerivation (finalAttrs: {
+  pname = "dtk6widget";
+  version = "6.0.15";
+
+  src = fetchFromGitHub {
+    owner = "linuxdeepin";
+    repo = "dtk6widget";
+    rev = finalAttrs.version;
+    hash = "sha256-QCdRjkD4JTPecLeZK+Y5U/H9pBgKI4DHRuchz/GymWQ=";
+  };
+
+  patches = [
+    ./fix-pkgconfig-path.patch
+    ./fix-pri-path.patch
+    ./fix-build-on-qt-6_7.patch
+  ];
+
+  postPatch = ''
+    substituteInPlace src/widgets/dapplication.cpp \
+      --replace-fail "auto dataDirs = DStandardPaths::standardLocations(QStandardPaths::GenericDataLocation);" \
+                "auto dataDirs = DStandardPaths::standardLocations(QStandardPaths::GenericDataLocation) << \"$out/share\";"
+  '';
+
+  nativeBuildInputs = [
+    cmake
+    doxygen
+    pkg-config
+    qt6Packages.qttools
+    qt6Packages.wrapQtAppsHook
+  ];
+
+  buildInputs = [
+    cups
+    libstartup_notification
+  ] ++ (with qt6Packages; [
+    qtbase
+    qtmultimedia
+    qtsvg
+  ]);
+
+  propagatedBuildInputs = [ dtk6gui ];
+
+  cmakeFlags = [
+    "-DDTK_VERSION=${finalAttrs.version}"
+    "-DBUILD_DOCS=ON"
+    "-DMKSPECS_INSTALL_DIR=${placeholder "dev"}/mkspecs/modules"
+    "-DQCH_INSTALL_DESTINATION=${placeholder "doc"}/share/doc"
+  ];
+
+  preConfigure = ''
+    # qt.qpa.plugin: Could not find the Qt platform plugin "minimal"
+    # A workaround is to set QT_PLUGIN_PATH explicitly
+    export QT_PLUGIN_PATH=${lib.getBin qt6Packages.qtbase}/${qt6Packages.qtbase.qtPluginPrefix}
+  '';
+
+  outputs = [ "out" "dev" "doc" ];
+
+  postFixup = ''
+    for binary in $out/lib/dtk6/DWidget/bin/*; do
+      wrapQtApp $binary
+    done
+  '';
+
+  meta = {
+    description = "Deepin graphical user interface library";
+    homepage = "https://github.com/linuxdeepin/dtk6widget";
+    license = lib.licenses.lgpl3Plus;
+    platforms = lib.platforms.linux;
+    maintainers = lib.teams.deepin.members;
+  };
+})
diff --git a/pkgs/desktops/deepin/library/dtk6widget/fix-build-on-qt-6_7.patch b/pkgs/desktops/deepin/library/dtk6widget/fix-build-on-qt-6_7.patch
new file mode 100644
index 000000000000..16d2d2ec9b54
--- /dev/null
+++ b/pkgs/desktops/deepin/library/dtk6widget/fix-build-on-qt-6_7.patch
@@ -0,0 +1,20 @@
+diff --git a/src/widgets/dkeysequenceedit.cpp b/src/widgets/dkeysequenceedit.cpp
+index a99e17ae..0e1c57f6 100644
+--- a/src/widgets/dkeysequenceedit.cpp
++++ b/src/widgets/dkeysequenceedit.cpp
+@@ -276,13 +276,13 @@ void DKeySequenceEdit::keyPressEvent(QKeyEvent *e)
+     }
+ 
+     if (e->modifiers() & Qt::ShiftModifier) {
+-        QList<int> possibleKeys = QKeyMapper::possibleKeys(e);
++        auto possibleKeys = QKeyMapper::possibleKeys(e);
+         int pkTotal = possibleKeys.count();
+         if (!pkTotal)
+             return;
+         bool found = false;
+         for (int i = 0; i < possibleKeys.size(); ++i) {
+-            if (possibleKeys.at(i) - nextKey == int(e->modifiers())
++            if (static_cast<int>(possibleKeys.at(i)) - nextKey == static_cast<int>(e->modifiers())
+                 || (possibleKeys.at(i) == nextKey && e->modifiers() == Qt::ShiftModifier)) {
+                 nextKey = possibleKeys.at(i);
+                 found = true;
diff --git a/pkgs/desktops/deepin/library/dtk6widget/fix-pkgconfig-path.patch b/pkgs/desktops/deepin/library/dtk6widget/fix-pkgconfig-path.patch
new file mode 100644
index 000000000000..df4452259580
--- /dev/null
+++ b/pkgs/desktops/deepin/library/dtk6widget/fix-pkgconfig-path.patch
@@ -0,0 +1,14 @@
+diff --git a/misc/DtkWidget.pc.in b/misc/DtkWidget.pc.in
+index 3c610669..b6ed04ca 100644
+--- a/misc/DtkWidget.pc.in
++++ b/misc/DtkWidget.pc.in
+@@ -1,7 +1,7 @@
+ prefix=@CMAKE_INSTALL_PREFIX@
+ exec_prefix=${prefix}
+-libdir=${prefix}/@LIBRARY_INSTALL_DIR@
+-includedir=${prefix}/@INCLUDE_INSTALL_DIR@
++libdir=@LIBRARY_INSTALL_DIR@
++includedir=@INCLUDE_INSTALL_DIR@
+ 
+ Name: dtk@DTK_VERSION_MAJOR@widget
+ Description: Deepin Tool Kit dtkwidget header files
diff --git a/pkgs/desktops/deepin/library/dtk6widget/fix-pri-path.patch b/pkgs/desktops/deepin/library/dtk6widget/fix-pri-path.patch
new file mode 100644
index 000000000000..cf2faac94855
--- /dev/null
+++ b/pkgs/desktops/deepin/library/dtk6widget/fix-pri-path.patch
@@ -0,0 +1,17 @@
+diff --git a/misc/qt_lib_DtkWidget.pri.in b/misc/qt_lib_DtkWidget.pri.in
+index 623878d3..561f5186 100644
+--- a/misc/qt_lib_DtkWidget.pri.in
++++ b/misc/qt_lib_DtkWidget.pri.in
+@@ -4,9 +4,9 @@ QT.dtkwidget.MINOR_VERSION = @PROJECT_VERSION_MINOR@
+ QT.dtkwidget.PATCH_VERSION = @PROJECT_VERSION_PATCH@
+ QT.dtkwidget.name = dtkwidget
+ QT.dtkwidget.module = dtk@DTK_VERSION_MAJOR@widget
+-QT.dtkwidget.tools = @CMAKE_INSTALL_PREFIX@/@TOOL_INSTALL_DIR@
+-QT.dtkwidget.libs = @CMAKE_INSTALL_PREFIX@/@LIBRARY_INSTALL_DIR@
+-QT.dtkwidget.includes = @CMAKE_INSTALL_PREFIX@/@INCLUDE_INSTALL_DIR@
++QT.dtkwidget.tools = @TOOL_INSTALL_DIR@
++QT.dtkwidget.libs = @LIBRARY_INSTALL_DIR@
++QT.dtkwidget.includes = @INCLUDE_INSTALL_DIR@
+ QT.dtkwidget.frameworks =
+ QT.dtkwidget.depends = core gui dtkcore network concurrent dtkgui printsupport printsupport_private widgets widgets_private gui_private x11extras dbus
+ QT.dtkwidget.module_config = v2 internal_module ltcg
diff --git a/pkgs/desktops/enlightenment/rage/default.nix b/pkgs/desktops/enlightenment/rage/default.nix
index 2ed7384ca0e0..afe70fd9e327 100644
--- a/pkgs/desktops/enlightenment/rage/default.nix
+++ b/pkgs/desktops/enlightenment/rage/default.nix
@@ -6,7 +6,7 @@
 , pkg-config
 , efl
 , gst_all_1
-, wrapGAppsHook
+, wrapGAppsHook3
 , directoryListingUpdater
 }:
 
@@ -23,7 +23,7 @@ stdenv.mkDerivation rec {
     meson
     ninja
     pkg-config
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
diff --git a/pkgs/desktops/gnome/apps/accerciser/default.nix b/pkgs/desktops/gnome/apps/accerciser/default.nix
index ca4e7e3fc123..b8f5d153467e 100644
--- a/pkgs/desktops/gnome/apps/accerciser/default.nix
+++ b/pkgs/desktops/gnome/apps/accerciser/default.nix
@@ -3,7 +3,7 @@
 , pkg-config
 , gnome
 , gtk3
-, wrapGAppsHook
+, wrapGAppsHook3
 , gobject-introspection
 , itstool
 , libxml2
@@ -34,7 +34,7 @@ python3.pkgs.buildPythonApplication rec {
     libxml2
     pkg-config
     dbus
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
diff --git a/pkgs/desktops/gnome/apps/cheese/default.nix b/pkgs/desktops/gnome/apps/cheese/default.nix
index 8e4723679074..9dd578438c50 100644
--- a/pkgs/desktops/gnome/apps/cheese/default.nix
+++ b/pkgs/desktops/gnome/apps/cheese/default.nix
@@ -2,7 +2,7 @@
 , stdenv
 , gettext
 , fetchurl
-, wrapGAppsHook
+, wrapGAppsHook3
 , gnome-video-effects
 , libcanberra-gtk3
 , pkg-config
@@ -55,7 +55,7 @@ stdenv.mkDerivation rec {
     ninja
     pkg-config
     vala
-    wrapGAppsHook
+    wrapGAppsHook3
     glib # for glib-compile-schemas
   ];
 
diff --git a/pkgs/desktops/gnome/apps/file-roller/default.nix b/pkgs/desktops/gnome/apps/file-roller/default.nix
index f0f265c08a1d..27c189af64cb 100644
--- a/pkgs/desktops/gnome/apps/file-roller/default.nix
+++ b/pkgs/desktops/gnome/apps/file-roller/default.nix
@@ -11,25 +11,26 @@
 , ninja
 , pkg-config
 , python3
-, wrapGAppsHook
+, wrapGAppsHook4
 , cpio
 , glib
 , gnome
-, gtk3
+, gtk4
+, libadwaita
 , libhandy
 , json-glib
 , libarchive
-, libportal-gtk3
+, libportal-gtk4
 , nautilus
 }:
 
 stdenv.mkDerivation (finalAttrs: {
   pname = "file-roller";
-  version = "43.1";
+  version = "44.2";
 
   src = fetchurl {
     url = "mirror://gnome/sources/file-roller/${lib.versions.major finalAttrs.version}/file-roller-${finalAttrs.version}.tar.xz";
-    sha256 = "hJlAI5lyk76zRdl5Pbj18Lu0H6oVXG/7SDKPIDlXrQg=";
+    hash = "sha256-LFcXzn8F+6sTyEe2zjGxsCSIYfp6uPD/Hx4dRdHizfk=";
   };
 
   nativeBuildInputs = [
@@ -42,17 +43,18 @@ stdenv.mkDerivation (finalAttrs: {
     ninja
     pkg-config
     python3
-    wrapGAppsHook
+    wrapGAppsHook4
   ];
 
   buildInputs = [
     cpio
     glib
-    gtk3
+    gtk4
+    libadwaita
     libhandy
     json-glib
     libarchive
-    libportal-gtk3
+    libportal-gtk4
     nautilus
   ];
 
diff --git a/pkgs/desktops/gnome/apps/ghex/default.nix b/pkgs/desktops/gnome/apps/ghex/default.nix
index 1d8655fa6b5e..f58ca108e905 100644
--- a/pkgs/desktops/gnome/apps/ghex/default.nix
+++ b/pkgs/desktops/gnome/apps/ghex/default.nix
@@ -22,13 +22,13 @@
 
 stdenv.mkDerivation rec {
   pname = "ghex";
-  version = "45.1";
+  version = "46.0";
 
   outputs = [ "out" "dev" "devdoc" ];
 
   src = fetchurl {
     url = "mirror://gnome/sources/ghex/${lib.versions.major version}/${pname}-${version}.tar.xz";
-    sha256 = "+ysII80WJJ7b6u6DAvm9UAXgFQNos18eR8JmgMrKwvo=";
+    hash = "sha256-ocRvMCDLNYuDIwJds6U5yX2ZSkxG9wH0jtxjV/f7y9E=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/desktops/gnome/apps/gnome-boxes/default.nix b/pkgs/desktops/gnome/apps/gnome-boxes/default.nix
index 2ff40b2b7c0b..2ef940122af0 100644
--- a/pkgs/desktops/gnome/apps/gnome-boxes/default.nix
+++ b/pkgs/desktops/gnome/apps/gnome-boxes/default.nix
@@ -3,7 +3,7 @@
 , fetchurl
 , meson
 , ninja
-, wrapGAppsHook
+, wrapGAppsHook3
 , pkg-config
 , gettext
 , itstool
@@ -14,7 +14,6 @@
 , gtk3
 , libvirt
 , spice-gtk
-, appstream-glib
 , spice-protocol
 , libhandy
 , libsoup_3
@@ -44,15 +43,16 @@
 , vte
 , glib-networking
 , qemu-utils
+, libportal-gtk3
 }:
 
 stdenv.mkDerivation rec {
   pname = "gnome-boxes";
-  version = "45.0";
+  version = "46.1";
 
   src = fetchurl {
     url = "mirror://gnome/sources/${pname}/${lib.versions.major version}/${pname}-${version}.tar.xz";
-    sha256 = "zGMIDu+hR6hHKrGl/wh7l6J6tyOk7gBe1B6Mndd5jkE=";
+    hash = "sha256-kAwXf2diZANwpmNM+efTzYIH5Jg2eopmemtzGwQRYDY=";
   };
 
   patches = [
@@ -64,7 +64,6 @@ stdenv.mkDerivation rec {
   doCheck = true;
 
   nativeBuildInputs = [
-    appstream-glib # for appstream-util
     gettext
     gobject-introspection
     itstool
@@ -72,7 +71,7 @@ stdenv.mkDerivation rec {
     ninja
     pkg-config
     vala
-    wrapGAppsHook
+    wrapGAppsHook3
     # For post install script
     glib
     gtk3
@@ -114,6 +113,7 @@ stdenv.mkDerivation rec {
     vte
     webkitgtk_4_1
     yajl
+    libportal-gtk3
   ];
 
   preFixup = ''
diff --git a/pkgs/desktops/gnome/apps/gnome-calendar/default.nix b/pkgs/desktops/gnome/apps/gnome-calendar/default.nix
index 43ae80296657..d56c8114bd04 100644
--- a/pkgs/desktops/gnome/apps/gnome-calendar/default.nix
+++ b/pkgs/desktops/gnome/apps/gnome-calendar/default.nix
@@ -21,11 +21,11 @@
 
 stdenv.mkDerivation rec {
   pname = "gnome-calendar";
-  version = "45.1";
+  version = "46.1";
 
   src = fetchurl {
     url = "mirror://gnome/sources/${pname}/${lib.versions.major version}/${pname}-${version}.tar.xz";
-    sha256 = "f6hQdUOGWqdDK7UxmDDIcVi1RHygnMpFtgfcZ5bHEAg=";
+    hash = "sha256-mGH/e4q9W3sgaQulXrdULH7FNLVmJp4ptbHoWMFhCJc=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/desktops/gnome/apps/gnome-characters/default.nix b/pkgs/desktops/gnome/apps/gnome-characters/default.nix
index 18ca9a9d58ad..9a6676ad4c29 100644
--- a/pkgs/desktops/gnome/apps/gnome-characters/default.nix
+++ b/pkgs/desktops/gnome/apps/gnome-characters/default.nix
@@ -21,11 +21,11 @@
 
 stdenv.mkDerivation rec {
   pname = "gnome-characters";
-  version = "45.0";
+  version = "46.0";
 
   src = fetchurl {
     url = "mirror://gnome/sources/gnome-characters/${lib.versions.major version}/${pname}-${version}.tar.xz";
-    sha256 = "P9VPzBTSkbd//xLe7/8A2jg+CmQAr1B9FgX7y0m4x0E=";
+    hash = "sha256-pOjixRC/SCBLmZSk581TeEQkbnTIqYb52+BOIj9dgnw=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/desktops/gnome/apps/gnome-clocks/default.nix b/pkgs/desktops/gnome/apps/gnome-clocks/default.nix
index 5f1c2e43bc57..5bdbe12f705a 100644
--- a/pkgs/desktops/gnome/apps/gnome-clocks/default.nix
+++ b/pkgs/desktops/gnome/apps/gnome-clocks/default.nix
@@ -25,11 +25,11 @@
 
 stdenv.mkDerivation rec {
   pname = "gnome-clocks";
-  version = "45.0";
+  version = "46.0";
 
   src = fetchurl {
     url = "mirror://gnome/sources/gnome-clocks/${lib.versions.major version}/${pname}-${version}.tar.xz";
-    sha256 = "/I60/ZUw8eZB3ADuIIbufTVKegCwoNFyLjBdXJqrkbU=";
+    hash = "sha256-6qPFeM3O+XVOZotWJnCbc/NSZxAjX0tyB20v9JpPmcc=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/desktops/gnome/apps/gnome-connections/default.nix b/pkgs/desktops/gnome/apps/gnome-connections/default.nix
index 933c80a9ffe9..bd501c1be9b9 100644
--- a/pkgs/desktops/gnome/apps/gnome-connections/default.nix
+++ b/pkgs/desktops/gnome/apps/gnome-connections/default.nix
@@ -7,9 +7,8 @@
 , vala
 , gettext
 , itstool
-, appstream-glib
 , desktop-file-utils
-, wrapGAppsHook
+, wrapGAppsHook3
 , glib
 , gtk3
 , libhandy
@@ -22,11 +21,11 @@
 
 stdenv.mkDerivation rec {
   pname = "gnome-connections";
-  version = "45.0";
+  version = "46.0";
 
   src = fetchurl {
     url = "mirror://gnome/sources/${pname}/${lib.versions.major version}/${pname}-${version}.tar.xz";
-    hash = "sha256-ufq1JbkKPifRE8FvuGjCucR7+BSTENFNuGLqGRLAb7g=";
+    hash = "sha256-+xzqaOeTC73B2yi3zQqaN80xDUtOeHL+gU9QoWqNJdM=";
   };
 
   nativeBuildInputs = [
@@ -36,10 +35,9 @@ stdenv.mkDerivation rec {
     vala
     gettext
     itstool
-    appstream-glib
     desktop-file-utils
     glib # glib-compile-resources
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
diff --git a/pkgs/desktops/gnome/apps/gnome-logs/default.nix b/pkgs/desktops/gnome/apps/gnome-logs/default.nix
index 0483cd83dd8a..77a9ba333260 100644
--- a/pkgs/desktops/gnome/apps/gnome-logs/default.nix
+++ b/pkgs/desktops/gnome/apps/gnome-logs/default.nix
@@ -22,11 +22,11 @@
 
 stdenv.mkDerivation rec {
   pname = "gnome-logs";
-  version = "45.beta";
+  version = "45.0";
 
   src = fetchurl {
     url = "mirror://gnome/sources/gnome-logs/${lib.versions.major version}/${pname}-${version}.tar.xz";
-    sha256 = "nbxJ/7J90jQuji/UmK8ltUENsjkQ/I7/XmiTrHa7jK4=";
+    hash = "sha256-sooG6lyYvRfyhztQfwhbDKDemBATZhH08u6wmGFOzlI=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/desktops/gnome/apps/gnome-maps/default.nix b/pkgs/desktops/gnome/apps/gnome-maps/default.nix
index ffe1f3b07d45..99815109624c 100644
--- a/pkgs/desktops/gnome/apps/gnome-maps/default.nix
+++ b/pkgs/desktops/gnome/apps/gnome-maps/default.nix
@@ -24,18 +24,19 @@
 , gjs
 , libadwaita
 , geocode-glib_2
+, tzdata
 }:
 
 stdenv.mkDerivation (finalAttrs: {
   pname = "gnome-maps";
-  version = "45.5";
+  version = "46.10";
 
   src = fetchurl {
     url = "mirror://gnome/sources/gnome-maps/${lib.versions.major finalAttrs.version}/gnome-maps-${finalAttrs.version}.tar.xz";
-    hash = "sha256-HCD14Q3OaEre+ylhUmJmoiTmxGwW+gO5VK/6Czobt0A=";
+    hash = "sha256-XyXul6DC/t+E8M8DkrTvi+GT4/bOJfl1RntvzsBUIa8=";
   };
 
-  doCheck = true;
+  doCheck = !stdenv.isDarwin;
 
   nativeBuildInputs = [
     gettext
@@ -80,6 +81,19 @@ stdenv.mkDerivation (finalAttrs: {
   preCheck = ''
     # “time.js” included by “timeTest” and “translationsTest” depends on “org.gnome.desktop.interface” schema.
     export XDG_DATA_DIRS="${gsettings-desktop-schemas}/share/gsettings-schemas/${gsettings-desktop-schemas.name}:$XDG_DATA_DIRS"
+    export HOME=$(mktemp -d)
+    export TZDIR=${tzdata}/share/zoneinfo
+
+    # Our gobject-introspection patches make the shared library paths absolute
+    # in the GIR files. When running tests, the library is not yet installed,
+    # though, so we need to replace the absolute path with a local one during build.
+    # We are using a symlink that we will delete before installation.
+    mkdir -p $out/lib/gnome-maps
+    ln -s $PWD/lib/libgnome-maps.so.0 $out/lib/gnome-maps/libgnome-maps.so.0
+  '';
+
+  postCheck = ''
+    rm $out/lib/gnome-maps/libgnome-maps.so.0
   '';
 
   passthru = {
diff --git a/pkgs/desktops/gnome/apps/gnome-music/default.nix b/pkgs/desktops/gnome/apps/gnome-music/default.nix
index d219bbdcb0ba..7def9a535d86 100644
--- a/pkgs/desktops/gnome/apps/gnome-music/default.nix
+++ b/pkgs/desktops/gnome/apps/gnome-music/default.nix
@@ -30,13 +30,13 @@
 
 python3.pkgs.buildPythonApplication rec {
   pname = "gnome-music";
-  version = "45.1";
+  version = "46.0";
 
   format = "other";
 
   src = fetchurl {
     url = "mirror://gnome/sources/${pname}/${lib.versions.major version}/${pname}-${version}.tar.xz";
-    sha256 = "lZWc24AkRASNUKGpHELbiyUWWgpoUzvAOJXrNyxN3gs=";
+    hash = "sha256-pFDVzgFokvavL4q3H8fDlDguIse2ILqSpuFc9mvF7F8=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/desktops/gnome/apps/gnome-nettool/default.nix b/pkgs/desktops/gnome/apps/gnome-nettool/default.nix
index 761d55a4036c..bf377b288aa0 100644
--- a/pkgs/desktops/gnome/apps/gnome-nettool/default.nix
+++ b/pkgs/desktops/gnome/apps/gnome-nettool/default.nix
@@ -8,7 +8,7 @@
 , ninja
 , pkg-config
 , python3
-, wrapGAppsHook
+, wrapGAppsHook3
 , glib
 , gtk3
 , libgtop
@@ -44,7 +44,7 @@ stdenv.mkDerivation rec {
     ninja
     pkg-config
     python3
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
diff --git a/pkgs/desktops/gnome/apps/gnome-notes/default.nix b/pkgs/desktops/gnome/apps/gnome-notes/default.nix
index e66f0b77a567..dd474567196e 100644
--- a/pkgs/desktops/gnome/apps/gnome-notes/default.nix
+++ b/pkgs/desktops/gnome/apps/gnome-notes/default.nix
@@ -6,7 +6,7 @@
 , fetchurl
 , fetchpatch
 , pkg-config
-, wrapGAppsHook
+, wrapGAppsHook3
 , itstool
 , desktop-file-utils
 , python3
@@ -59,7 +59,7 @@ stdenv.mkDerivation rec {
     libxml2
     desktop-file-utils
     python3
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
diff --git a/pkgs/desktops/gnome/apps/gnome-power-manager/default.nix b/pkgs/desktops/gnome/apps/gnome-power-manager/default.nix
index 3797f9df6f9b..0f630593101b 100644
--- a/pkgs/desktops/gnome/apps/gnome-power-manager/default.nix
+++ b/pkgs/desktops/gnome/apps/gnome-power-manager/default.nix
@@ -10,7 +10,7 @@
 , upower
 , python3
 , desktop-file-utils
-, wrapGAppsHook
+, wrapGAppsHook3
 , gnome
 }:
 
@@ -27,7 +27,7 @@ stdenv.mkDerivation rec {
     meson
     ninja
     pkg-config
-    wrapGAppsHook
+    wrapGAppsHook3
     gettext
 
     # needed by meson_post_install.sh
diff --git a/pkgs/desktops/gnome/apps/gnome-text-editor/default.nix b/pkgs/desktops/gnome/apps/gnome-text-editor/default.nix
index 3dd7b2f4decb..deb3e011c1cd 100644
--- a/pkgs/desktops/gnome/apps/gnome-text-editor/default.nix
+++ b/pkgs/desktops/gnome/apps/gnome-text-editor/default.nix
@@ -18,21 +18,19 @@
 , libadwaita
 , editorconfig-core-c
 , libxml2
-, appstream-glib
 , desktop-file-utils
 }:
 
 stdenv.mkDerivation rec {
   pname = "gnome-text-editor";
-  version = "45.3";
+  version = "46.3";
 
   src = fetchurl {
     url = "mirror://gnome/sources/gnome-text-editor/${lib.versions.major version}/${pname}-${version}.tar.xz";
-    sha256 = "sha256-8//LEakt/QS6PDs9DmZ4R9REmiHgEq428H3aBax9OlI=";
+    hash = "sha256-AFtIEEqQm+Zq4HRI0rxXBsfRE3gQV6JP9tpVvfMkxz0=";
   };
 
   nativeBuildInputs = [
-    appstream-glib
     desktop-file-utils
     itstool
     libxml2 # for xmllint
diff --git a/pkgs/desktops/gnome/apps/gnome-weather/default.nix b/pkgs/desktops/gnome/apps/gnome-weather/default.nix
index b32b829db1f5..f614094d623b 100644
--- a/pkgs/desktops/gnome/apps/gnome-weather/default.nix
+++ b/pkgs/desktops/gnome/apps/gnome-weather/default.nix
@@ -19,11 +19,11 @@
 
 stdenv.mkDerivation rec {
   pname = "gnome-weather";
-  version = "45.0";
+  version = "46.0";
 
   src = fetchurl {
     url = "mirror://gnome/sources/gnome-weather/${lib.versions.major version}/${pname}-${version}.tar.xz";
-    sha256 = "MMAClwKIPcjYFg5t4dYRaHfNbCW8lQ1OSQKmq0Z7L6Q=";
+    hash = "sha256-FTgmcFzPZy4U8v5N/Hgvjom3xMvkqv6VpVMvveej1J0=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/desktops/gnome/apps/polari/default.nix b/pkgs/desktops/gnome/apps/polari/default.nix
index e4c7455d43bf..65ff3851e6ae 100644
--- a/pkgs/desktops/gnome/apps/polari/default.nix
+++ b/pkgs/desktops/gnome/apps/polari/default.nix
@@ -13,6 +13,7 @@
 , desktop-file-utils
 , pkg-config
 , gtk4
+, tracker
 , libadwaita
 , gtk3
 , glib
@@ -20,21 +21,19 @@
 , libsoup_3
 , webkitgtk_4_1
 , gobject-introspection
-, appstream-glib
 , gnome
 , wrapGAppsHook4
-, telepathy-logger
 , gspell
 , gsettings-desktop-schemas
 }:
 
 stdenv.mkDerivation rec {
   pname = "polari";
-  version = "45.0";
+  version = "46.0";
 
   src = fetchurl {
     url = "mirror://gnome/sources/${pname}/${lib.versions.major version}/${pname}-${version}.tar.xz";
-    sha256 = "nbfdwJSqhVfxkXfhZMQti+Fn9UckuScTC3YhyCnB1KE=";
+    hash = "sha256-0rFwnjeRiSlPU9TvFfA/i8u76MUvD0FeYvfV8Aw2CjE=";
   };
 
   patches = [
@@ -46,7 +45,6 @@ stdenv.mkDerivation rec {
 
   propagatedUserEnvPkgs = [
     telepathy-idle
-    telepathy-logger
   ];
 
   nativeBuildInputs = [
@@ -59,17 +57,16 @@ stdenv.mkDerivation rec {
     libxml2
     desktop-file-utils
     gobject-introspection
-    appstream-glib
   ];
 
   buildInputs = [
     gtk4
+    tracker
     libadwaita
     gtk3 # for thumbnailer
     glib
     gsettings-desktop-schemas
     telepathy-glib
-    telepathy-logger
     gjs
     gspell
     gdk-pixbuf
diff --git a/pkgs/desktops/gnome/apps/seahorse/default.nix b/pkgs/desktops/gnome/apps/seahorse/default.nix
index 79f8a6ee0892..4cbc455c3da9 100644
--- a/pkgs/desktops/gnome/apps/seahorse/default.nix
+++ b/pkgs/desktops/gnome/apps/seahorse/default.nix
@@ -10,7 +10,7 @@
 , gtk3
 , glib
 , glib-networking
-, wrapGAppsHook
+, wrapGAppsHook3
 , itstool
 , gnupg
 , desktop-file-utils
@@ -51,7 +51,7 @@ stdenv.mkDerivation rec {
     pkg-config
     vala
     itstool
-    wrapGAppsHook
+    wrapGAppsHook3
     python3
     openssh
     gnupg
diff --git a/pkgs/desktops/gnome/apps/vinagre/default.nix b/pkgs/desktops/gnome/apps/vinagre/default.nix
index 9bb548d96061..72c1f7b3226c 100644
--- a/pkgs/desktops/gnome/apps/vinagre/default.nix
+++ b/pkgs/desktops/gnome/apps/vinagre/default.nix
@@ -1,5 +1,5 @@
 { lib, stdenv, fetchurl, fetchpatch, pkg-config, gtk3, gnome, vte, libxml2, gtk-vnc, intltool
-, libsecret, itstool, wrapGAppsHook, librsvg }:
+, libsecret, itstool, wrapGAppsHook3, librsvg }:
 
 stdenv.mkDerivation rec {
   pname = "vinagre";
@@ -20,7 +20,7 @@ stdenv.mkDerivation rec {
     })
   ];
 
-  nativeBuildInputs = [ pkg-config intltool itstool wrapGAppsHook ];
+  nativeBuildInputs = [ pkg-config intltool itstool wrapGAppsHook3 ];
   buildInputs = [
     gtk3 vte libxml2 gtk-vnc libsecret gnome.adwaita-icon-theme librsvg
   ];
diff --git a/pkgs/desktops/gnome/core/adwaita-icon-theme/default.nix b/pkgs/desktops/gnome/core/adwaita-icon-theme/default.nix
index 5d287f4e6fd9..324d439d7589 100644
--- a/pkgs/desktops/gnome/core/adwaita-icon-theme/default.nix
+++ b/pkgs/desktops/gnome/core/adwaita-icon-theme/default.nix
@@ -13,11 +13,11 @@
 
 stdenv.mkDerivation rec {
   pname = "adwaita-icon-theme";
-  version = "45.0";
+  version = "46.0";
 
   src = fetchurl {
     url = "mirror://gnome/sources/adwaita-icon-theme/${lib.versions.major version}/${pname}-${version}.tar.xz";
-    sha256 = "JEK/sG9ObMlb9uJoL9/5j6Xt3GiHUbnWIVxiPLTkL/E=";
+    hash = "sha256-S8tTm9ddZNo4XW+gjLqp3erOtqyOgrhbpsQRF79bpk4=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/desktops/gnome/core/baobab/default.nix b/pkgs/desktops/gnome/core/baobab/default.nix
index 120d69441a7f..3978661baabb 100644
--- a/pkgs/desktops/gnome/core/baobab/default.nix
+++ b/pkgs/desktops/gnome/core/baobab/default.nix
@@ -18,11 +18,11 @@
 
 stdenv.mkDerivation rec {
   pname = "baobab";
-  version = "45.0";
+  version = "46.0";
 
   src = fetchurl {
     url = "mirror://gnome/sources/${pname}/${lib.versions.major version}/${pname}-${version}.tar.xz";
-    sha256 = "p9LPMIpsg57gsL8HT49f1g1iri8GSpSzxhDWVgt1joY=";
+    hash = "sha256-zk3vXILQVnGlAJ9768+FrJhnXZ2BYNKK2RgbJppy43w=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/desktops/gnome/core/caribou/default.nix b/pkgs/desktops/gnome/core/caribou/default.nix
index 69afefbc94ca..5f853efdab83 100644
--- a/pkgs/desktops/gnome/core/caribou/default.nix
+++ b/pkgs/desktops/gnome/core/caribou/default.nix
@@ -1,6 +1,6 @@
 { fetchurl, lib, stdenv, pkg-config, gnome, glib, gtk3, clutter, dbus, python3, libxml2
 , libxklavier, libXtst, gtk2, intltool, libxslt, at-spi2-core, autoreconfHook
-, wrapGAppsHook, libgee, vala }:
+, wrapGAppsHook3, libgee, vala }:
 
 let
   pname = "caribou";
@@ -38,7 +38,7 @@ in stdenv.mkDerivation rec {
     })
   ];
 
-  nativeBuildInputs = [ pkg-config intltool libxslt libxml2 autoreconfHook wrapGAppsHook vala ];
+  nativeBuildInputs = [ pkg-config intltool libxslt libxml2 autoreconfHook wrapGAppsHook3 vala ];
 
   buildInputs = [
     glib gtk3 clutter at-spi2-core dbus pythonEnv python3.pkgs.pygobject3
diff --git a/pkgs/desktops/gnome/core/dconf-editor/default.nix b/pkgs/desktops/gnome/core/dconf-editor/default.nix
index f62cd9a74376..2b1b747a74a2 100644
--- a/pkgs/desktops/gnome/core/dconf-editor/default.nix
+++ b/pkgs/desktops/gnome/core/dconf-editor/default.nix
@@ -16,7 +16,7 @@
 , libxml2
 , gettext
 , docbook-xsl-nons
-, wrapGAppsHook
+, wrapGAppsHook3
 , gobject-introspection
 }:
 
@@ -48,7 +48,7 @@ stdenv.mkDerivation rec {
     vala
     libxslt
     pkg-config
-    wrapGAppsHook
+    wrapGAppsHook3
     gettext
     docbook-xsl-nons
     libxml2
diff --git a/pkgs/desktops/gnome/core/eog/default.nix b/pkgs/desktops/gnome/core/eog/default.nix
index 0867de3915d3..b59eb108c014 100644
--- a/pkgs/desktops/gnome/core/eog/default.nix
+++ b/pkgs/desktops/gnome/core/eog/default.nix
@@ -20,7 +20,7 @@
 , gdk-pixbuf
 , exempi
 , shared-mime-info
-, wrapGAppsHook
+, wrapGAppsHook3
 , libjxl
 , librsvg
 , webp-pixbuf-loader
@@ -54,7 +54,7 @@ stdenv.mkDerivation rec {
     pkg-config
     gettext
     itstool
-    wrapGAppsHook
+    wrapGAppsHook3
     libxml2 # for xmllint for xml-stripblanks
     gobject-introspection
     gi-docgen
diff --git a/pkgs/desktops/gnome/core/epiphany/default.nix b/pkgs/desktops/gnome/core/epiphany/default.nix
index f28949d8a8b3..ab1c4d6b1051 100644
--- a/pkgs/desktops/gnome/core/epiphany/default.nix
+++ b/pkgs/desktops/gnome/core/epiphany/default.nix
@@ -36,11 +36,11 @@
 
 stdenv.mkDerivation rec {
   pname = "epiphany";
-  version = "45.3";
+  version = "46.0";
 
   src = fetchurl {
     url = "mirror://gnome/sources/${pname}/${lib.versions.major version}/${pname}-${version}.tar.xz";
-    sha256 = "bDAum91mKQyw4m9ihDzUxDWklVq9u08VHwfcgEldZzA=";
+    hash = "sha256-9DSPLPUcB8DBBtEwFy1NI/LNQGh3Hh3gB7dYyireVmA=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/desktops/gnome/core/evince/default.nix b/pkgs/desktops/gnome/core/evince/default.nix
index ee21e8c6384d..daf912e2a7c1 100644
--- a/pkgs/desktops/gnome/core/evince/default.nix
+++ b/pkgs/desktops/gnome/core/evince/default.nix
@@ -23,7 +23,7 @@
 , libarchive
 , libhandy
 , libsecret
-, wrapGAppsHook
+, wrapGAppsHook3
 , librsvg
 , gobject-introspection
 , yelp-tools
@@ -42,13 +42,13 @@
 
 stdenv.mkDerivation rec {
   pname = "evince";
-  version = "45.0";
+  version = "46.1";
 
   outputs = [ "out" "dev" "devdoc" ];
 
   src = fetchurl {
     url = "mirror://gnome/sources/evince/${lib.versions.major version}/${pname}-${version}.tar.xz";
-    sha256 = "0YZH1Cdcvd8NMoF7HQTjBzQqhb6RTsTa0tgIKq+KpKg=";
+    hash = "sha256-lLtSU2WwYKKML2AX0iy/KvURVQclSqQum/wAC7wYq2I=";
   };
 
   depsBuildBuild = [
@@ -65,7 +65,7 @@ stdenv.mkDerivation rec {
     meson
     ninja
     pkg-config
-    wrapGAppsHook
+    wrapGAppsHook3
     yelp-tools
   ];
 
@@ -110,8 +110,6 @@ stdenv.mkDerivation rec {
     "-Dmultimedia=disabled"
   ];
 
-  env.NIX_CFLAGS_COMPILE = "-I${glib.dev}/include/gio-unix-2.0";
-
   preFixup = ''
     gappsWrapperArgs+=(--prefix XDG_DATA_DIRS : "${shared-mime-info}/share")
   '';
diff --git a/pkgs/desktops/gnome/core/evolution-data-server/default.nix b/pkgs/desktops/gnome/core/evolution-data-server/default.nix
index 1957025bf3b2..b5326c4e7f81 100644
--- a/pkgs/desktops/gnome/core/evolution-data-server/default.nix
+++ b/pkgs/desktops/gnome/core/evolution-data-server/default.nix
@@ -21,7 +21,7 @@
 , nss
 , libical
 , gperf
-, wrapGAppsHook
+, wrapGAppsHook3
 , glib-networking
 , gsettings-desktop-schemas
 , pcre
@@ -50,13 +50,13 @@
 
 stdenv.mkDerivation rec {
   pname = "evolution-data-server";
-  version = "3.50.4";
+  version = "3.52.1";
 
   outputs = [ "out" "dev" ];
 
   src = fetchurl {
     url = "mirror://gnome/sources/evolution-data-server/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
-    sha256 = "sha256-1+3/vgOgu87L7mc5MhS4McexjNiVuExNv+E4d3biV8U=";
+    hash = "sha256-gls9fVRoRApn0R3SojkzlgwHue7MeXuxJYQ8sshwo0g=";
   };
 
   patches = [
@@ -84,7 +84,7 @@ stdenv.mkDerivation rec {
     gettext
     python3
     gperf
-    wrapGAppsHook
+    wrapGAppsHook3
     gobject-introspection
     vala
   ];
@@ -147,10 +147,6 @@ stdenv.mkDerivation rec {
       --replace "-Wl,--no-undefined" ""
     substituteInPlace src/services/evolution-alarm-notify/e-alarm-notify.c \
       --replace "G_OS_WIN32" "__APPLE__"
-  '' + lib.optionalString stdenv.cc.isClang ''
-    # https://gitlab.gnome.org/GNOME/evolution-data-server/-/issues/513
-    substituteInPlace src/addressbook/libebook-contacts/e-phone-number-private.cpp \
-      --replace "std::auto_ptr" "std::unique_ptr"
   '';
 
   postInstall = lib.optionalString stdenv.isDarwin ''
diff --git a/pkgs/desktops/gnome/core/evolution-data-server/hardcode-gsettings.patch b/pkgs/desktops/gnome/core/evolution-data-server/hardcode-gsettings.patch
index 6fef72819391..de8186d01c5e 100644
--- a/pkgs/desktops/gnome/core/evolution-data-server/hardcode-gsettings.patch
+++ b/pkgs/desktops/gnome/core/evolution-data-server/hardcode-gsettings.patch
@@ -1,8 +1,8 @@
 diff --git a/src/addressbook/libebook/e-book-client.c b/src/addressbook/libebook/e-book-client.c
-index bd479d8..bd049b3 100644
+index 5e65ec8..8ca28c6 100644
 --- a/src/addressbook/libebook/e-book-client.c
 +++ b/src/addressbook/libebook/e-book-client.c
-@@ -1997,7 +1997,18 @@ e_book_client_get_self (ESourceRegistry *registry,
+@@ -1924,7 +1924,18 @@ e_book_client_get_self (ESourceRegistry *registry,
  
  	*out_client = book_client;
  
@@ -22,7 +22,7 @@ index bd479d8..bd049b3 100644
  	uid = g_settings_get_string (settings, SELF_UID_KEY);
  	g_object_unref (settings);
  
-@@ -2065,7 +2076,18 @@ e_book_client_set_self (EBookClient *client,
+@@ -1992,7 +2003,18 @@ e_book_client_set_self (EBookClient *client,
  	g_return_val_if_fail (
  		e_contact_get_const (contact, E_CONTACT_UID) != NULL, FALSE);
  
@@ -42,7 +42,7 @@ index bd479d8..bd049b3 100644
  	g_settings_set_string (
  		settings, SELF_UID_KEY,
  		e_contact_get_const (contact, E_CONTACT_UID));
-@@ -2101,8 +2123,18 @@ e_book_client_is_self (EContact *contact)
+@@ -2028,8 +2050,18 @@ e_book_client_is_self (EContact *contact)
  	 * unfortunately the API doesn't allow that.
  	 */
  	g_mutex_lock (&mutex);
@@ -128,7 +128,7 @@ index e85a56b..59d3fe2 100644
  	g_object_unref (settings);
  
 diff --git a/src/addressbook/libedata-book/e-book-meta-backend.c b/src/addressbook/libedata-book/e-book-meta-backend.c
-index 63e1016..0492756 100644
+index 5b4debf..77c8d9c 100644
 --- a/src/addressbook/libedata-book/e-book-meta-backend.c
 +++ b/src/addressbook/libedata-book/e-book-meta-backend.c
 @@ -144,7 +144,18 @@ ebmb_is_power_saver_enabled (void)
@@ -152,10 +152,10 @@ index 63e1016..0492756 100644
  	if (g_settings_get_boolean (settings, "limit-operations-in-power-saver-mode")) {
  		GPowerProfileMonitor *power_monitor;
 diff --git a/src/calendar/backends/contacts/e-cal-backend-contacts.c b/src/calendar/backends/contacts/e-cal-backend-contacts.c
-index 42f3457..b4926af 100644
+index 43bd383..4dce824 100644
 --- a/src/calendar/backends/contacts/e-cal-backend-contacts.c
 +++ b/src/calendar/backends/contacts/e-cal-backend-contacts.c
-@@ -1387,7 +1387,18 @@ e_cal_backend_contacts_init (ECalBackendContacts *cbc)
+@@ -1369,7 +1369,18 @@ e_cal_backend_contacts_init (ECalBackendContacts *cbc)
  		(GDestroyNotify) g_free,
  		(GDestroyNotify) contact_record_free);
  
@@ -202,10 +202,10 @@ index 2525856..7ecc1a8 100644
  				g_clear_object (&settings);
  			}
 diff --git a/src/calendar/libecal/e-reminder-watcher.c b/src/calendar/libecal/e-reminder-watcher.c
-index ade0a73..d7c3e73 100644
+index 44ba49c..dfac2a2 100644
 --- a/src/calendar/libecal/e-reminder-watcher.c
 +++ b/src/calendar/libecal/e-reminder-watcher.c
-@@ -2626,8 +2626,33 @@ e_reminder_watcher_init (EReminderWatcher *watcher)
+@@ -2826,8 +2826,33 @@ e_reminder_watcher_init (EReminderWatcher *watcher)
  
  	watcher->priv = e_reminder_watcher_get_instance_private (watcher);
  	watcher->priv->cancellable = g_cancellable_new ();
@@ -242,7 +242,7 @@ index ade0a73..d7c3e73 100644
  		g_signal_connect_object (
  			watcher->priv->desktop_settings,
 diff --git a/src/calendar/libedata-cal/e-cal-meta-backend.c b/src/calendar/libedata-cal/e-cal-meta-backend.c
-index 27fa153..3679d72 100644
+index b9145af..350fcd3 100644
 --- a/src/calendar/libedata-cal/e-cal-meta-backend.c
 +++ b/src/calendar/libedata-cal/e-cal-meta-backend.c
 @@ -156,7 +156,18 @@ ecmb_is_power_saver_enabled (void)
@@ -265,7 +265,7 @@ index 27fa153..3679d72 100644
  
  	if (g_settings_get_boolean (settings, "limit-operations-in-power-saver-mode")) {
  		GPowerProfileMonitor *power_monitor;
-@@ -2633,7 +2644,20 @@ ecmb_receive_object_sync (ECalMetaBackend *meta_backend,
+@@ -2632,7 +2643,20 @@ ecmb_receive_object_sync (ECalMetaBackend *meta_backend,
  			if (is_declined) {
  				GSettings *settings;
  
@@ -288,7 +288,7 @@ index 27fa153..3679d72 100644
  				g_clear_object (&settings);
  			}
 diff --git a/src/camel/camel-cipher-context.c b/src/camel/camel-cipher-context.c
-index bef9188..ce92f6c 100644
+index d5a0823..2ae03f8 100644
 --- a/src/camel/camel-cipher-context.c
 +++ b/src/camel/camel-cipher-context.c
 @@ -1631,7 +1631,18 @@ camel_cipher_can_load_photos (void)
@@ -312,7 +312,7 @@ index bef9188..ce92f6c 100644
  	g_clear_object (&settings);
  
 diff --git a/src/camel/camel-gpg-context.c b/src/camel/camel-gpg-context.c
-index 4deae76..ebe0a1b 100644
+index cecd740..9a15180 100644
 --- a/src/camel/camel-gpg-context.c
 +++ b/src/camel/camel-gpg-context.c
 @@ -747,7 +747,18 @@ gpg_ctx_get_executable_name (void)
@@ -361,10 +361,10 @@ index e61160c..b6553a4 100644
  		G_CALLBACK (mi_user_headers_settings_changed_cb), NULL);
  	G_UNLOCK (mi_user_headers);
 diff --git a/src/camel/providers/imapx/camel-imapx-server.c b/src/camel/providers/imapx/camel-imapx-server.c
-index 8518c90..6a655a9 100644
+index bbf214b..bed39d2 100644
 --- a/src/camel/providers/imapx/camel-imapx-server.c
 +++ b/src/camel/providers/imapx/camel-imapx-server.c
-@@ -5627,7 +5627,18 @@ camel_imapx_server_do_old_flags_update (CamelFolder *folder)
+@@ -5661,7 +5661,18 @@ camel_imapx_server_do_old_flags_update (CamelFolder *folder)
  	if (do_old_flags_update) {
  		GSettings *eds_settings;
  
@@ -433,10 +433,10 @@ index 188f276..939f89b 100644
  		settings, "network-monitor-gio-name",
  		object, "gio-name",
 diff --git a/src/libedataserver/e-oauth2-service-google.c b/src/libedataserver/e-oauth2-service-google.c
-index ec08afe..7b31227 100644
+index 1453410..a3f06b0 100644
 --- a/src/libedataserver/e-oauth2-service-google.c
 +++ b/src/libedataserver/e-oauth2-service-google.c
-@@ -71,7 +71,18 @@ eos_google_read_settings (EOAuth2Service *service,
+@@ -72,7 +72,18 @@ eos_google_read_settings (EOAuth2Service *service,
  	if (!value) {
  		GSettings *settings;
  
@@ -529,10 +529,10 @@ index af59b0b..0c7e75e 100644
  	g_object_unref (settings);
  
 diff --git a/src/libedataserver/e-source-registry.c b/src/libedataserver/e-source-registry.c
-index 4a9b398..e7cb404 100644
+index 1539f8b..77cf123 100644
 --- a/src/libedataserver/e-source-registry.c
 +++ b/src/libedataserver/e-source-registry.c
-@@ -1773,7 +1773,19 @@ e_source_registry_init (ESourceRegistry *registry)
+@@ -1754,7 +1754,19 @@ e_source_registry_init (ESourceRegistry *registry)
  
  	g_mutex_init (&registry->priv->sources_lock);
  
diff --git a/pkgs/desktops/gnome/core/gdm/default.nix b/pkgs/desktops/gnome/core/gdm/default.nix
index b136fa75a039..bbbe4fbb25b3 100644
--- a/pkgs/desktops/gnome/core/gdm/default.nix
+++ b/pkgs/desktops/gnome/core/gdm/default.nix
@@ -7,6 +7,7 @@
 , ninja
 , pkg-config
 , glib
+, json-glib
 , itstool
 , xorg
 , accountsservice
@@ -42,13 +43,13 @@ in
 
 stdenv.mkDerivation (finalAttrs: {
   pname = "gdm";
-  version = "45.0.1";
+  version = "46.0";
 
   outputs = [ "out" "dev" ];
 
   src = fetchurl {
     url = "mirror://gnome/sources/gdm/${lib.versions.major finalAttrs.version}/${finalAttrs.pname}-${finalAttrs.version}.tar.xz";
-    sha256 = "ZXJXjAXjxladbtJp994qrzoDVldlRYbYJDkHu3pv+oU=";
+    hash = "sha256-jWy1IXbspItrvxz+L9rgjZZ3taDyvKYA3uRgTeDdHvw=";
   };
 
   mesonFlags = [
@@ -76,6 +77,7 @@ stdenv.mkDerivation (finalAttrs: {
     accountsservice
     audit
     glib
+    json-glib
     gtk3
     keyutils
     libX11
@@ -94,7 +96,7 @@ stdenv.mkDerivation (finalAttrs: {
     # https://gitlab.gnome.org/GNOME/gdm/-/merge_requests/92
     (fetchpatch {
       url = "https://gitlab.gnome.org/GNOME/gdm/-/commit/ccecd9c975d04da80db4cd547b67a1a94fa83292.patch";
-      sha256 = "5hKS9wjjhuSAYwXct5vS0dPbmPRIINJoLC0Zm1naz6Q=";
+      hash = "sha256-5hKS9wjjhuSAYwXct5vS0dPbmPRIINJoLC0Zm1naz6Q=";
       revert = true;
     })
 
diff --git a/pkgs/desktops/gnome/core/gdm/fix-paths.patch b/pkgs/desktops/gnome/core/gdm/fix-paths.patch
index 980627c78d46..4ad417285f27 100644
--- a/pkgs/desktops/gnome/core/gdm/fix-paths.patch
+++ b/pkgs/desktops/gnome/core/gdm/fix-paths.patch
@@ -1,8 +1,8 @@
 diff --git a/daemon/gdm-local-display-factory.c b/daemon/gdm-local-display-factory.c
-index 5fbbad68..739718ec 100644
+index f2d8e155b..54b998826 100644
 --- a/daemon/gdm-local-display-factory.c
 +++ b/daemon/gdm-local-display-factory.c
-@@ -233,9 +233,9 @@ struct GdmDisplayServerConfiguration {
+@@ -245,9 +245,9 @@ struct GdmDisplayServerConfiguration {
          const char *session_type;
  } display_server_configuration[] = {
  #ifdef ENABLE_WAYLAND_SUPPORT
@@ -15,10 +15,10 @@ index 5fbbad68..739718ec 100644
  };
  
 diff --git a/daemon/gdm-manager.c b/daemon/gdm-manager.c
-index cc61efc9..4c9d15af 100644
+index fc5aef6ac..c61e0046b 100644
 --- a/daemon/gdm-manager.c
 +++ b/daemon/gdm-manager.c
-@@ -148,7 +148,7 @@ plymouth_is_running (void)
+@@ -151,7 +151,7 @@ plymouth_is_running (void)
          GError  *error;
  
          error = NULL;
@@ -27,7 +27,7 @@ index cc61efc9..4c9d15af 100644
                                           NULL, NULL, &status, &error);
          if (! res) {
                  g_debug ("Could not ping plymouth: %s", error->message);
-@@ -166,7 +166,7 @@ plymouth_prepare_for_transition (void)
+@@ -169,7 +169,7 @@ plymouth_prepare_for_transition (void)
          GError  *error;
  
          error = NULL;
@@ -36,7 +36,7 @@ index cc61efc9..4c9d15af 100644
                                           NULL, NULL, NULL, &error);
          if (! res) {
                  g_warning ("Could not deactivate plymouth: %s", error->message);
-@@ -181,7 +181,7 @@ plymouth_quit_with_transition (void)
+@@ -184,7 +184,7 @@ plymouth_quit_with_transition (void)
          GError  *error;
  
          error = NULL;
@@ -45,7 +45,7 @@ index cc61efc9..4c9d15af 100644
          if (! res) {
                  g_warning ("Could not quit plymouth: %s", error->message);
                  g_error_free (error);
-@@ -197,7 +197,7 @@ plymouth_quit_without_transition (void)
+@@ -200,7 +200,7 @@ plymouth_quit_without_transition (void)
          GError  *error;
  
          error = NULL;
@@ -55,10 +55,10 @@ index cc61efc9..4c9d15af 100644
                  g_warning ("Could not quit plymouth: %s", error->message);
                  g_error_free (error);
 diff --git a/daemon/gdm-session.c b/daemon/gdm-session.c
-index 4b709731..245ac0cf 100644
+index a4c4b2dcf..67416b204 100644
 --- a/daemon/gdm-session.c
 +++ b/daemon/gdm-session.c
-@@ -2972,16 +2972,16 @@ gdm_session_start_session (GdmSession *self,
+@@ -3193,16 +3193,16 @@ gdm_session_start_session (GdmSession *self,
                   */
                  if (run_launcher) {
                          if (is_x11) {
@@ -79,7 +79,7 @@ index 4b709731..245ac0cf 100644
                  }
          }
 diff --git a/data/gdm.service.in b/data/gdm.service.in
-index 17e8a8de..afc70977 100644
+index 17e8a8de8..afc709778 100644
 --- a/data/gdm.service.in
 +++ b/data/gdm.service.in
 @@ -26,7 +26,7 @@ Restart=always
diff --git a/pkgs/desktops/gnome/core/gnome-backgrounds/default.nix b/pkgs/desktops/gnome/core/gnome-backgrounds/default.nix
index 808ff7c0c293..f60631ac2280 100644
--- a/pkgs/desktops/gnome/core/gnome-backgrounds/default.nix
+++ b/pkgs/desktops/gnome/core/gnome-backgrounds/default.nix
@@ -8,11 +8,11 @@
 
 stdenv.mkDerivation rec {
   pname = "gnome-backgrounds";
-  version = "45.0";
+  version = "46.0";
 
   src = fetchurl {
     url = "mirror://gnome/sources/gnome-backgrounds/${lib.versions.major version}/${pname}-${version}.tar.xz";
-    sha256 = "zuDmiPuuXvenXzNa2i0Qd54I68qURfFYbeMsWptt7i0=";
+    hash = "sha256-Td06xDmkoGeHaAWSG7dfTTyLhaIY1Hwnbd3eiShEPC4=";
   };
 
   patches = [
diff --git a/pkgs/desktops/gnome/core/gnome-bluetooth/1.0/default.nix b/pkgs/desktops/gnome/core/gnome-bluetooth/1.0/default.nix
index 9389127e578c..526363a61393 100644
--- a/pkgs/desktops/gnome/core/gnome-bluetooth/1.0/default.nix
+++ b/pkgs/desktops/gnome/core/gnome-bluetooth/1.0/default.nix
@@ -12,7 +12,7 @@
 , udev
 , itstool
 , libxml2
-, wrapGAppsHook
+, wrapGAppsHook3
 , libnotify
 , libcanberra-gtk3
 , gobject-introspection
@@ -51,7 +51,7 @@ stdenv.mkDerivation rec {
     itstool
     pkg-config
     libxml2
-    wrapGAppsHook
+    wrapGAppsHook3
     gobject-introspection
     gtk-doc
     docbook-xsl-nons
diff --git a/pkgs/desktops/gnome/core/gnome-bluetooth/default.nix b/pkgs/desktops/gnome/core/gnome-bluetooth/default.nix
index b9701f3d5e11..8b1fd59d3f8c 100644
--- a/pkgs/desktops/gnome/core/gnome-bluetooth/default.nix
+++ b/pkgs/desktops/gnome/core/gnome-bluetooth/default.nix
@@ -27,14 +27,14 @@
 
 stdenv.mkDerivation rec {
   pname = "gnome-bluetooth";
-  version = "42.8";
+  version = "46.0";
 
   # TODO: split out "lib"
   outputs = [ "out" "dev" "devdoc" "man" ];
 
   src = fetchurl {
     url = "mirror://gnome/sources/${pname}/${lib.versions.major version}/${pname}-${version}.tar.xz";
-    sha256 = "dsJB6MosmxA1NkU1yiYIT4n8XA4YKVEPiQlYMRX8wts=";
+    hash = "sha256-E/4edfMXrNvfXoDJAp0uBjLWCpzPcqQ64263VFAh++8=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/desktops/gnome/core/gnome-calculator/default.nix b/pkgs/desktops/gnome/core/gnome-calculator/default.nix
index 248282c50c74..3b666976681e 100644
--- a/pkgs/desktops/gnome/core/gnome-calculator/default.nix
+++ b/pkgs/desktops/gnome/core/gnome-calculator/default.nix
@@ -1,5 +1,6 @@
 { stdenv
 , lib
+, appstream
 , meson
 , ninja
 , vala
@@ -24,14 +25,15 @@
 
 stdenv.mkDerivation rec {
   pname = "gnome-calculator";
-  version = "45.0.2";
+  version = "46.1";
 
   src = fetchurl {
     url = "mirror://gnome/sources/gnome-calculator/${lib.versions.major version}/${pname}-${version}.tar.xz";
-    sha256 = "fcvzI4SJcXHL5Ug+xmTZlOXnVekSrh35EWJPA8kIZ8I=";
+    hash = "sha256-LTZ1CnOJAIYSLPPwyD5oUXiRWFYVFlMG+hWWqRhmgkc=";
   };
 
   nativeBuildInputs = [
+    appstream
     meson
     ninja
     pkg-config
diff --git a/pkgs/desktops/gnome/core/gnome-color-manager/default.nix b/pkgs/desktops/gnome/core/gnome-color-manager/default.nix
index 7c9d3df9f1c0..786e19277e8d 100644
--- a/pkgs/desktops/gnome/core/gnome-color-manager/default.nix
+++ b/pkgs/desktops/gnome/core/gnome-color-manager/default.nix
@@ -58,6 +58,7 @@ stdenv.mkDerivation rec {
     updateScript = gnome.updateScript {
       packageName = pname;
       attrPath = "gnome.${pname}";
+      freeze = true;
     };
   };
 
diff --git a/pkgs/desktops/gnome/core/gnome-contacts/default.nix b/pkgs/desktops/gnome/core/gnome-contacts/default.nix
index 9b100ef7576a..5dd008cc5c03 100644
--- a/pkgs/desktops/gnome/core/gnome-contacts/default.nix
+++ b/pkgs/desktops/gnome/core/gnome-contacts/default.nix
@@ -11,7 +11,6 @@
 , gtk4
 , glib
 , libportal-gtk4
-, gnome-desktop
 , gnome-online-accounts
 , qrencode
 , wrapGAppsHook4
@@ -27,11 +26,11 @@
 
 stdenv.mkDerivation rec {
   pname = "gnome-contacts";
-  version = "45.1";
+  version = "46.0";
 
   src = fetchurl {
     url = "mirror://gnome/sources/gnome-contacts/${lib.versions.major version}/${pname}-${version}.tar.xz";
-    sha256 = "gj9WCe7NkMQk3T5khXKHvBMh+23+KJJKR0/w6azyG3U=";
+    hash = "sha256-cK606DWhx3+bzH5XotzCN22TvbYXVxYYJXRF9WxjcN8=";
   };
 
   nativeBuildInputs = [
@@ -54,7 +53,6 @@ stdenv.mkDerivation rec {
     evolution-data-server-gtk4
     gsettings-desktop-schemas
     folks
-    gnome-desktop
     libadwaita
     libxml2
     gnome-online-accounts
diff --git a/pkgs/desktops/gnome/core/gnome-control-center/default.nix b/pkgs/desktops/gnome/core/gnome-control-center/default.nix
index 48566ba66945..b3b5d2594d21 100644
--- a/pkgs/desktops/gnome/core/gnome-control-center/default.nix
+++ b/pkgs/desktops/gnome/core/gnome-control-center/default.nix
@@ -7,13 +7,14 @@
 , colord
 , colord-gtk4
 , cups
+, dbus
 , docbook-xsl-nons
 , fontconfig
 , gdk-pixbuf
 , gettext
 , glib
 , glib-networking
-, gcr
+, gcr_4
 , glibc
 , gnome-bluetooth
 , gnome-color-manager
@@ -37,7 +38,9 @@
 , librsvg
 , webp-pixbuf-loader
 , libsecret
+, libsoup_3
 , libwacom
+, libXi
 , libxml2
 , libxslt
 , meson
@@ -69,11 +72,11 @@
 
 stdenv.mkDerivation (finalAttrs: {
   pname = "gnome-control-center";
-  version = "45.3";
+  version = "46.1";
 
   src = fetchurl {
     url = "mirror://gnome/sources/gnome-control-center/${lib.versions.major finalAttrs.version}/gnome-control-center-${finalAttrs.version}.tar.xz";
-    sha256 = "sha256-selJxOhsBiTsam7Q3wnJ+uKyKYPB3KYO2GrsjvCyQAQ=";
+    hash = "sha256-gXkkIwGd7aHSoHTB7Pan5u8xcsCcvm9NeZWktd6igxI=";
   };
 
   patches = [
@@ -102,12 +105,12 @@ stdenv.mkDerivation (finalAttrs: {
     adwaita-icon-theme
     colord
     colord-gtk4
-    libepoxy
+    cups
     fontconfig
     gdk-pixbuf
     glib
     glib-networking
-    gcr
+    gcr_4
     gnome-bluetooth
     gnome-desktop
     gnome-online-accounts
@@ -119,6 +122,7 @@ stdenv.mkDerivation (finalAttrs: {
     gsound
     gtk4
     ibus
+    libepoxy
     libgtop
     libgudev
     libadwaita
@@ -128,7 +132,9 @@ stdenv.mkDerivation (finalAttrs: {
     libpwquality
     librsvg
     libsecret
+    libsoup_3
     libwacom
+    libXi
     libxml2
     modemmanager
     mutter # schemas for the keybindings
@@ -146,6 +152,7 @@ stdenv.mkDerivation (finalAttrs: {
   ]);
 
   nativeCheckInputs = [
+    dbus
     python3.pkgs.python-dbusmock
     setxkbmap
     xvfb-run
diff --git a/pkgs/desktops/gnome/core/gnome-control-center/paths.patch b/pkgs/desktops/gnome/core/gnome-control-center/paths.patch
index be2ca4b5e09e..41dd5979aa4b 100644
--- a/pkgs/desktops/gnome/core/gnome-control-center/paths.patch
+++ b/pkgs/desktops/gnome/core/gnome-control-center/paths.patch
@@ -37,10 +37,10 @@ index f6c84e3d2..cd897f8f5 100644
      gtk_widget_set_sensitive (self->toolbutton_profile_view, TRUE);
    else
      gtk_widget_set_sensitive (self->toolbutton_profile_view, FALSE);
-diff --git a/panels/datetime/tz.h b/panels/datetime/tz.h
+diff --git a/panels/system/datetime/tz.h b/panels/system/datetime/tz.h
 index feef16580..4b88ef7b1 100644
---- a/panels/datetime/tz.h
-+++ b/panels/datetime/tz.h
+--- a/panels/system/datetime/tz.h
++++ b/panels/system/datetime/tz.h
 @@ -27,11 +27,7 @@
  
  G_BEGIN_DECLS
@@ -67,37 +67,6 @@ index ec5a905a5..689fdbebe 100644
  
          if (self->is_new_connection) {
                  g_autofree gchar *type_str = NULL;
-diff --git a/panels/network/net-device-bluetooth.c b/panels/network/net-device-bluetooth.c
-index 303f4a8af..e5afc4dff 100644
---- a/panels/network/net-device-bluetooth.c
-+++ b/panels/network/net-device-bluetooth.c
-@@ -80,7 +80,7 @@ nm_device_bluetooth_refresh_ui (NetDeviceBluetooth *self)
-         update_off_switch_from_device_state (self->device_off_switch, state, self);
- 
-         /* set up the Options button */
--        path = g_find_program_in_path ("nm-connection-editor");
-+        path = g_find_program_in_path ("@networkmanagerapplet@/bin/nm-connection-editor");
-         gtk_widget_set_visible (GTK_WIDGET (self->options_button), state != NM_DEVICE_STATE_UNMANAGED && path != NULL);
- }
- 
-@@ -131,7 +131,7 @@ options_button_clicked_cb (NetDeviceBluetooth *self)
- 
-         connection = net_device_get_find_connection (self->client, self->device);
-         uuid = nm_connection_get_uuid (connection);
--        cmdline = g_strdup_printf ("nm-connection-editor --edit %s", uuid);
-+        cmdline = g_strdup_printf ("@networkmanagerapplet@/bin/nm-connection-editor --edit %s", uuid);
-         g_debug ("Launching '%s'\n", cmdline);
-         if (!g_spawn_command_line_async (cmdline, &error))
-                 g_warning ("Failed to launch nm-connection-editor: %s", error->message);
-@@ -173,7 +173,7 @@ net_device_bluetooth_init (NetDeviceBluetooth *self)
- 
-         gtk_widget_init_template (GTK_WIDGET (self));
- 
--        path = g_find_program_in_path ("nm-connection-editor");
-+        path = g_find_program_in_path ("@networkmanagerapplet@/bin/nm-connection-editor");
-         gtk_widget_set_visible (GTK_WIDGET (self->options_button), path != NULL);
- }
- 
 diff --git a/panels/network/net-device-mobile.c b/panels/network/net-device-mobile.c
 index 166670224..36f720d36 100644
 --- a/panels/network/net-device-mobile.c
@@ -133,10 +102,10 @@ index a31a606e3..ed5133d29 100644
    argv[1] = g_strdup (priv->hostname);
  
    /* Use SNMP to get printer's informations */
-diff --git a/panels/user-accounts/run-passwd.c b/panels/user-accounts/run-passwd.c
+diff --git a/panels/system/users/run-passwd.c b/panels/system/users/run-passwd.c
 index edbc99830..1e1d90141 100644
---- a/panels/user-accounts/run-passwd.c
-+++ b/panels/user-accounts/run-passwd.c
+--- a/panels/system/users/run-passwd.c
++++ b/panels/system/users/run-passwd.c
 @@ -152,7 +152,7 @@ spawn_passwd (PasswdHandler *passwd_handler, GError **error)
          gchar  **envp;
          gint    my_stdin, my_stdout;
@@ -146,10 +115,10 @@ index edbc99830..1e1d90141 100644
          argv[1] = NULL;
  
          envp = g_get_environ ();
-diff --git a/panels/user-accounts/user-utils.c b/panels/user-accounts/user-utils.c
+diff --git a/panels/system/users/user-utils.c b/panels/system/users/user-utils.c
 index 5b7bc1f02..13ffe6ca8 100644
---- a/panels/user-accounts/user-utils.c
-+++ b/panels/user-accounts/user-utils.c
+--- a/panels/system/users/user-utils.c
++++ b/panels/system/users/user-utils.c
 @@ -215,7 +215,7 @@ is_valid_username_async (const gchar *username,
           * future, so it would be nice to have some official way for this
           * instead of relying on the current "--login" implementation.
diff --git a/pkgs/desktops/gnome/core/gnome-dictionary/default.nix b/pkgs/desktops/gnome/core/gnome-dictionary/default.nix
index 3fec9e44abe1..0fed6638f97e 100644
--- a/pkgs/desktops/gnome/core/gnome-dictionary/default.nix
+++ b/pkgs/desktops/gnome/core/gnome-dictionary/default.nix
@@ -11,7 +11,7 @@
 , libxml2
 , gettext
 , itstool
-, wrapGAppsHook
+, wrapGAppsHook3
 , docbook_xsl
 , docbook_xml_dtd_43
 , gnome
@@ -48,7 +48,7 @@ stdenv.mkDerivation rec {
     meson
     ninja
     pkg-config
-    wrapGAppsHook
+    wrapGAppsHook3
     libxml2
     gettext
     itstool
diff --git a/pkgs/desktops/gnome/core/gnome-disk-utility/default.nix b/pkgs/desktops/gnome/core/gnome-disk-utility/default.nix
index ad4efbb1d75e..dcd376fda185 100644
--- a/pkgs/desktops/gnome/core/gnome-disk-utility/default.nix
+++ b/pkgs/desktops/gnome/core/gnome-disk-utility/default.nix
@@ -11,7 +11,7 @@
 , ninja
 , gtk3
 , glib
-, wrapGAppsHook
+, wrapGAppsHook3
 , libnotify
 , itstool
 , gnome
@@ -27,11 +27,11 @@
 
 stdenv.mkDerivation rec {
   pname = "gnome-disk-utility";
-  version = "45.1";
+  version = "46.0";
 
   src = fetchurl {
     url = "mirror://gnome/sources/gnome-disk-utility/${lib.versions.major version}/${pname}-${version}.tar.xz";
-    sha256 = "sha256-VA/07JprljAAP/TNYNYk85/nDyWpVZ5TMziWA8hblSk=";
+    hash = "sha256-RkZJFIxtZ3HxrC6/5DpOUZIFsRwtkUoJ8qABgh0GlX0=";
   };
 
   nativeBuildInputs = [
@@ -43,7 +43,7 @@ stdenv.mkDerivation rec {
     libxslt
     docbook-xsl-nons
     desktop-file-utils
-    wrapGAppsHook
+    wrapGAppsHook3
     libxml2
   ];
 
diff --git a/pkgs/desktops/gnome/core/gnome-font-viewer/default.nix b/pkgs/desktops/gnome/core/gnome-font-viewer/default.nix
index 9e5003ae2f35..5a0f8d82cb53 100644
--- a/pkgs/desktops/gnome/core/gnome-font-viewer/default.nix
+++ b/pkgs/desktops/gnome/core/gnome-font-viewer/default.nix
@@ -18,11 +18,11 @@
 
 stdenv.mkDerivation rec {
   pname = "gnome-font-viewer";
-  version = "45.0";
+  version = "46.0";
 
   src = fetchurl {
     url = "mirror://gnome/sources/gnome-font-viewer/${lib.versions.major version}/${pname}-${version}.tar.xz";
-    sha256 = "l8traN2mDeCrMDg4NYbx5LwdpaSPRAJb1rvnTqBcKwg=";
+    hash = "sha256-WS9AHkhdAswETUh7tcjgTJYdpoViFnaKWfH/mL0tU3w=";
   };
 
   doCheck = true;
diff --git a/pkgs/desktops/gnome/core/gnome-initial-setup/default.nix b/pkgs/desktops/gnome/core/gnome-initial-setup/default.nix
index d20700233aa7..055c811263db 100644
--- a/pkgs/desktops/gnome/core/gnome-initial-setup/default.nix
+++ b/pkgs/desktops/gnome/core/gnome-initial-setup/default.nix
@@ -16,14 +16,11 @@
 , geocode-glib_2
 , glib
 , gnome-desktop
-, gnome-online-accounts
-, gtk3
 , gtk4
 , libgweather
 , json-glib
 , krb5
 , libpwquality
-, librest_1_0
 , libsecret
 , networkmanager
 , pango
@@ -39,11 +36,11 @@
 
 stdenv.mkDerivation rec {
   pname = "gnome-initial-setup";
-  version = "45.4.1";
+  version = "46.0";
 
   src = fetchurl {
     url = "mirror://gnome/sources/${pname}/${lib.versions.major version}/${pname}-${version}.tar.xz";
-    sha256 = "Nj4JqjMI5/QHTgZiU6AYKzIqtgN2dD3heLu0AOVLqO4=";
+    hash = "sha256-+O6dzqfjXnNeqjvI0QQdBrtk6/HhBG5ejkjx+0QVGEc=";
   };
 
   patches = [
@@ -72,9 +69,7 @@ stdenv.mkDerivation rec {
     geocode-glib_2
     glib
     gnome-desktop
-    gnome-online-accounts
     gsettings-desktop-schemas
-    gtk3
     gtk4
     json-glib
     krb5
@@ -82,7 +77,6 @@ stdenv.mkDerivation rec {
     libadwaita
     libnma-gtk4
     libpwquality
-    librest_1_0
     libsecret
     networkmanager
     pango
diff --git a/pkgs/desktops/gnome/core/gnome-keyring/default.nix b/pkgs/desktops/gnome/core/gnome-keyring/default.nix
index 61247a1dc75c..472d9a413513 100644
--- a/pkgs/desktops/gnome/core/gnome-keyring/default.nix
+++ b/pkgs/desktops/gnome/core/gnome-keyring/default.nix
@@ -15,7 +15,7 @@
 , libselinux
 , p11-kit
 , openssh
-, wrapGAppsHook
+, wrapGAppsHook3
 , docbook-xsl-nons
 , docbook_xml_dtd_43
 , gnome
@@ -24,13 +24,13 @@
 
 stdenv.mkDerivation rec {
   pname = "gnome-keyring";
-  version = "42.1";
+  version = "46.1";
 
   outputs = [ "out" "dev" ];
 
   src = fetchurl {
     url = "mirror://gnome/sources/gnome-keyring/${lib.versions.major version}/${pname}-${version}.tar.xz";
-    sha256 = "x/TQQMx2prf+Z+CO+RBpEcPIDUD8iMv8jiaEpMlG4+Y=";
+    hash = "sha256-sdOukTL/L4s/JaGQeQiSlo49Cs+VKkh+QPZEqFUM4/Y=";
   };
 
   nativeBuildInputs = [
@@ -41,7 +41,7 @@ stdenv.mkDerivation rec {
     autoreconfHook
     docbook-xsl-nons
     docbook_xml_dtd_43
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
@@ -60,6 +60,9 @@ stdenv.mkDerivation rec {
   configureFlags = [
     "--with-pkcs11-config=${placeholder "out"}/etc/pkcs11/" # installation directories
     "--with-pkcs11-modules=${placeholder "out"}/lib/pkcs11/"
+    # gnome-keyring doesn't build with ssh-agent by default anymore, we need to
+    # switch to using gcr https://github.com/NixOS/nixpkgs/issues/140824
+    "--enable-ssh-agent"
   ];
 
   # Tends to fail non-deterministically.
diff --git a/pkgs/desktops/gnome/core/gnome-online-miners/default.nix b/pkgs/desktops/gnome/core/gnome-online-miners/default.nix
index 219d32284b82..8cc2689f2944 100644
--- a/pkgs/desktops/gnome/core/gnome-online-miners/default.nix
+++ b/pkgs/desktops/gnome/core/gnome-online-miners/default.nix
@@ -21,7 +21,7 @@
 , gmp
 , openssl
 , dleyna-server
-, wrapGAppsHook
+, wrapGAppsHook3
 }:
 
 stdenv.mkDerivation rec {
@@ -71,7 +71,7 @@ stdenv.mkDerivation rec {
     autoreconfHook
 
     pkg-config
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
diff --git a/pkgs/desktops/gnome/core/gnome-remote-desktop/default.nix b/pkgs/desktops/gnome/core/gnome-remote-desktop/default.nix
index 4a46eab35761..abd6d2102679 100644
--- a/pkgs/desktops/gnome/core/gnome-remote-desktop/default.nix
+++ b/pkgs/desktops/gnome/core/gnome-remote-desktop/default.nix
@@ -1,4 +1,5 @@
-{ lib, stdenv
+{ stdenv
+, lib
 , fetchurl
 , cairo
 , meson
@@ -6,7 +7,7 @@
 , pkg-config
 , python3
 , asciidoc
-, wrapGAppsHook
+, wrapGAppsHook3
 , glib
 , libei
 , libepoxy
@@ -16,22 +17,24 @@
 , systemd
 , libsecret
 , libnotify
+, libopus
 , libxkbcommon
 , gdk-pixbuf
-, freerdp
+, freerdp3
 , fdk_aac
 , tpm2-tss
 , fuse3
 , gnome
+, polkit
 }:
 
 stdenv.mkDerivation rec {
   pname = "gnome-remote-desktop";
-  version = "45.1";
+  version = "46.1";
 
   src = fetchurl {
     url = "mirror://gnome/sources/${pname}/${lib.versions.major version}/${pname}-${version}.tar.xz";
-    hash = "sha256-3NnBisIwZpVjH88AqIZFw443DroFxp3zn1QCBNTq/Y0=";
+    hash = "sha256-fGKkKB/fqVIhEK/7910JlzA18q3H+kV3UR1zMYa+to8=";
   };
 
   nativeBuildInputs = [
@@ -40,12 +43,12 @@ stdenv.mkDerivation rec {
     pkg-config
     python3
     asciidoc
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
     cairo
-    freerdp
+    freerdp3
     fdk_aac
     tpm2-tss
     fuse3
@@ -56,15 +59,23 @@ stdenv.mkDerivation rec {
     libdrm
     nv-codec-headers-11
     libnotify
+    libopus
     libsecret
     libxkbcommon
     pipewire
     systemd
+    polkit # For polkit-gobject
   ];
 
   mesonFlags = [
+    "-Dconf_dir=/etc/gnome-remote-desktop"
     "-Dsystemd_user_unit_dir=${placeholder "out"}/lib/systemd/user"
+    "-Dsystemd_system_unit_dir=${placeholder "out"}/lib/systemd/system"
+    "-Dsystemd_sysusers_dir=${placeholder "out"}/lib/sysusers.d"
+    "-Dsystemd_tmpfiles_dir=${placeholder "out"}/lib/tmpfiles.d"
     "-Dtests=false" # Too deep of a rabbit hole.
+    # TODO: investigate who should be fixed here.
+    "-Dc_args=-I${freerdp3}/include/winpr3"
   ];
 
   passthru = {
diff --git a/pkgs/desktops/gnome/core/gnome-screenshot/default.nix b/pkgs/desktops/gnome/core/gnome-screenshot/default.nix
index 0a345fe0d8c9..b8fa9a9f0c29 100644
--- a/pkgs/desktops/gnome/core/gnome-screenshot/default.nix
+++ b/pkgs/desktops/gnome/core/gnome-screenshot/default.nix
@@ -12,7 +12,7 @@
 , meson
 , ninja
 , python3
-, wrapGAppsHook
+, wrapGAppsHook3
 , appstream-glib
 , desktop-file-utils
 , gnome
@@ -46,7 +46,7 @@ stdenv.mkDerivation rec {
     libxml2
     desktop-file-utils
     python3
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
diff --git a/pkgs/desktops/gnome/core/gnome-session/ctl.nix b/pkgs/desktops/gnome/core/gnome-session/ctl.nix
index 09fc80bf9ef8..10b59d660bef 100644
--- a/pkgs/desktops/gnome/core/gnome-session/ctl.nix
+++ b/pkgs/desktops/gnome/core/gnome-session/ctl.nix
@@ -6,7 +6,7 @@
 , pkg-config
 , glib
 , systemd
-, wrapGAppsHook
+, wrapGAppsHook3
 }:
 
 stdenv.mkDerivation rec {
@@ -24,7 +24,7 @@ stdenv.mkDerivation rec {
     meson
     ninja
     pkg-config
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
diff --git a/pkgs/desktops/gnome/core/gnome-session/default.nix b/pkgs/desktops/gnome/core/gnome-session/default.nix
index 967fbc9478a6..5d4504b90852 100644
--- a/pkgs/desktops/gnome/core/gnome-session/default.nix
+++ b/pkgs/desktops/gnome/core/gnome-session/default.nix
@@ -30,13 +30,13 @@
 stdenv.mkDerivation rec {
   pname = "gnome-session";
   # Also bump ./ctl.nix when bumping major version.
-  version = "45.0";
+  version = "46.0";
 
   outputs = [ "out" "sessions" ];
 
   src = fetchurl {
     url = "mirror://gnome/sources/gnome-session/${lib.versions.major version}/${pname}-${version}.tar.xz";
-    sha256 = "cG0v/KysOFU6PAGFeT9aK0qslAu154nZU8mAgWO+8vE=";
+    hash = "sha256-xuFiSvYJC8ThoZH+Imir+nqN4HgxynpX8hfmeb97mlQ=";
   };
 
   patches = [
@@ -76,11 +76,6 @@ stdenv.mkDerivation rec {
     libepoxy
   ];
 
-  mesonFlags = [
-    "-Dsystemd=true"
-    "-Dsystemd_session=default"
-  ];
-
   postPatch = ''
     chmod +x meson_post_install.py # patchShebangs requires executable file
     patchShebangs meson_post_install.py
diff --git a/pkgs/desktops/gnome/core/gnome-settings-daemon/43/default.nix b/pkgs/desktops/gnome/core/gnome-settings-daemon/43/default.nix
index 95eb6fe1d25e..6e87a2ab6e3b 100644
--- a/pkgs/desktops/gnome/core/gnome-settings-daemon/43/default.nix
+++ b/pkgs/desktops/gnome/core/gnome-settings-daemon/43/default.nix
@@ -33,7 +33,7 @@
 , gnome-desktop
 , geocode-glib_2
 , docbook_xsl
-, wrapGAppsHook
+, wrapGAppsHook3
 , python3
 , tzdata
 , nss
@@ -72,7 +72,7 @@ stdenv.mkDerivation rec {
     libxml2
     libxslt
     docbook_xsl
-    wrapGAppsHook
+    wrapGAppsHook3
     python3
   ];
 
diff --git a/pkgs/desktops/gnome/core/gnome-settings-daemon/default.nix b/pkgs/desktops/gnome/core/gnome-settings-daemon/default.nix
index 1719127a6cbc..4284a68ee3e7 100644
--- a/pkgs/desktops/gnome/core/gnome-settings-daemon/default.nix
+++ b/pkgs/desktops/gnome/core/gnome-settings-daemon/default.nix
@@ -31,7 +31,7 @@
 , gnome-desktop
 , geocode-glib_2
 , docbook_xsl
-, wrapGAppsHook
+, wrapGAppsHook3
 , python3
 , tzdata
 , gcr_4
@@ -40,11 +40,11 @@
 
 stdenv.mkDerivation rec {
   pname = "gnome-settings-daemon";
-  version = "45.1";
+  version = "46.0";
 
   src = fetchurl {
     url = "mirror://gnome/sources/gnome-settings-daemon/${lib.versions.major version}/${pname}-${version}.tar.xz";
-    sha256 = "xiv+yYF+7luD6+kBqShhiaZ+tf8DPF3UFQZXT4Ir8JA=";
+    hash = "sha256-C5oPZPoYqOfgm0yVo/dU+gM8LNvS3DVwHwYYVywcs9c=";
   };
 
   patches = [
@@ -66,7 +66,7 @@ stdenv.mkDerivation rec {
     libxml2
     libxslt
     docbook_xsl
-    wrapGAppsHook
+    wrapGAppsHook3
     python3
   ];
 
diff --git a/pkgs/desktops/gnome/core/gnome-shell-extensions/default.nix b/pkgs/desktops/gnome/core/gnome-shell-extensions/default.nix
index 6f4fdc8f77ea..2fd711266938 100644
--- a/pkgs/desktops/gnome/core/gnome-shell-extensions/default.nix
+++ b/pkgs/desktops/gnome/core/gnome-shell-extensions/default.nix
@@ -13,11 +13,11 @@
 
 stdenv.mkDerivation (finalAttrs: {
   pname = "gnome-shell-extensions";
-  version = "45.2";
+  version = "46.1";
 
   src = fetchurl {
     url = "mirror://gnome/sources/gnome-shell-extensions/${lib.versions.major finalAttrs.version}/gnome-shell-extensions-${finalAttrs.version}.tar.xz";
-    sha256 = "7jL2OHotGK2/96lWaJvHR4ZrSocS1zeQwAKr6uTMqq8=";
+    hash = "sha256-xbpQcA2nephvAGC+7az8AX5+yCKD8qY4SEKggHvEVT8=";
   };
 
   patches = [
diff --git a/pkgs/desktops/gnome/core/gnome-shell/default.nix b/pkgs/desktops/gnome/core/gnome-shell/default.nix
index d00c97a06b57..7b94533f7b60 100644
--- a/pkgs/desktops/gnome/core/gnome-shell/default.nix
+++ b/pkgs/desktops/gnome/core/gnome-shell/default.nix
@@ -12,8 +12,7 @@
 , python3
 , polkit
 , networkmanager
-, gtk-doc
-, docbook-xsl-nons
+, gi-docgen
 , at-spi2-core
 , libstartup_notification
 , unzip
@@ -24,7 +23,6 @@
 , webp-pixbuf-loader
 , geoclue2
 , perl
-, docbook_xml_dtd_45
 , desktop-file-utils
 , libpulseaudio
 , libical
@@ -68,13 +66,13 @@ let
 in
 stdenv.mkDerivation (finalAttrs: {
   pname = "gnome-shell";
-  version = "45.5";
+  version = "46.1";
 
   outputs = [ "out" "devdoc" ];
 
   src = fetchurl {
     url = "mirror://gnome/sources/gnome-shell/${lib.versions.major finalAttrs.version}/gnome-shell-${finalAttrs.version}.tar.xz";
-    sha256 = "sha256-vVw9PQKNRyM+QgUiPwrAKsmpc7aZvCd0OQlNQaeNarA=";
+    hash = "sha256-ZPmZhEwQHmO/KU1FsTjeVjGa0vMmKCchqtD6hgZTs2k=";
   };
 
   patches = [
@@ -101,8 +99,15 @@ stdenv.mkDerivation (finalAttrs: {
 
     # Work around failing fingerprint auth
     (fetchpatch {
-      url = "https://src.fedoraproject.org/rpms/gnome-shell/raw/9a647c460b651aaec0b8a21f046cc289c1999416/f/0001-gdm-Work-around-failing-fingerprint-auth.patch";
-      sha256 = "pFvZli3TilUt6YwdZztpB8Xq7O60XfuWUuPMMVSpqLw=";
+      url = "https://src.fedoraproject.org/rpms/gnome-shell/raw/dcd112d9708954187e7490564c2229d82ba5326f/f/0001-gdm-Work-around-failing-fingerprint-auth.patch";
+      hash = "sha256-mgXty5HhiwUO1UV3/eDgWtauQKM0cRFQ0U7uocST25s=";
+    })
+
+    # screencast: Correct expected bus name for streams
+    # https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/3303
+    (fetchpatch {
+      url = "https://gitlab.gnome.org/GNOME/gnome-shell/-/commit/50a011a19dcc6997ea6173c07bb80b2d9888d363.patch";
+      hash = "sha256-ccEpdWgDxwnj7ouzFekpoln5Y2PtgRikWetwK+0U9Fg=";
     })
   ];
 
@@ -111,9 +116,7 @@ stdenv.mkDerivation (finalAttrs: {
     ninja
     pkg-config
     gettext
-    docbook-xsl-nons
-    docbook_xml_dtd_45
-    gtk-doc
+    gi-docgen
     perl
     wrapGAppsHook4
     sassc
@@ -213,6 +216,9 @@ stdenv.mkDerivation (finalAttrs: {
     for svc in org.gnome.ScreenSaver org.gnome.Shell.Extensions org.gnome.Shell.Notifications org.gnome.Shell.Screencast; do
       wrapGApp $out/share/gnome-shell/$svc
     done
+
+    # Cannot be in postInstall, otherwise _multioutDocs hook in preFixup will move right back.
+    moveToOutput "share/doc" "$devdoc"
   '';
 
   separateDebugInfo = true;
diff --git a/pkgs/desktops/gnome/core/gnome-shell/fix-paths.patch b/pkgs/desktops/gnome/core/gnome-shell/fix-paths.patch
index e27847378bb2..a87f5129152f 100644
--- a/pkgs/desktops/gnome/core/gnome-shell/fix-paths.patch
+++ b/pkgs/desktops/gnome/core/gnome-shell/fix-paths.patch
@@ -56,16 +56,3 @@ index 11fb4b6b7..e00e4807b 100644
                                 NULL);
  
        if (!g_subprocess_wait_check (proc, NULL, &error))
-diff --git a/subprojects/extensions-tool/src/command-pack.c b/subprojects/extensions-tool/src/command-pack.c
-index f2cfcd51a..2a9a7efdf 100644
---- a/subprojects/extensions-tool/src/command-pack.c
-+++ b/subprojects/extensions-tool/src/command-pack.c
-@@ -168,7 +168,7 @@ extension_pack_add_schemas (ExtensionPack  *pack,
- #else
-   dstpath = g_file_get_path (dstdir);
-   proc = g_subprocess_new (G_SUBPROCESS_FLAGS_STDERR_SILENCE, error,
--                           "glib-compile-schemas", "--strict", dstpath, NULL);
-+                           "@glib_compile_schemas@", "--strict", dstpath, NULL);
- 
-   if (!g_subprocess_wait_check (proc, NULL, error))
-     return FALSE;
diff --git a/pkgs/desktops/gnome/core/gnome-shell/greeter-logo-size.patch b/pkgs/desktops/gnome/core/gnome-shell/greeter-logo-size.patch
index e58610ddc2b2..93965a475216 100644
--- a/pkgs/desktops/gnome/core/gnome-shell/greeter-logo-size.patch
+++ b/pkgs/desktops/gnome/core/gnome-shell/greeter-logo-size.patch
@@ -1,16 +1,16 @@
 diff --git a/js/gdm/loginDialog.js b/js/gdm/loginDialog.js
-index a3e4372b4..36f6c1f47 100644
+index 28db1a9de..805b686bf 100644
 --- a/js/gdm/loginDialog.js
 +++ b/js/gdm/loginDialog.js
-@@ -43,6 +43,7 @@ import * as UserWidget from '../ui/userWidget.js';
- const _FADE_ANIMATION_TIME = 250;
+@@ -46,6 +46,7 @@ const _FADE_ANIMATION_TIME = 250;
  const _SCROLL_ANIMATION_TIME = 500;
  const _TIMED_LOGIN_IDLE_THRESHOLD = 5.0;
+ const _CONFLICTING_SESSION_DIALOG_TIMEOUT = 60;
 +const _LOGO_ICON_HEIGHT = 48;
  
  export const UserListItem = GObject.registerClass({
      Signals: {'activate': {}},
-@@ -839,7 +840,7 @@ export const LoginDialog = GObject.registerClass({
+@@ -908,7 +909,7 @@ export const LoginDialog = GObject.registerClass({
              const scaleFactor = St.ThemeContext.get_for_stage(global.stage).scale_factor;
              const texture = this._textureCache.load_file_async(
                  this._logoFile,
diff --git a/pkgs/desktops/gnome/core/gnome-software/default.nix b/pkgs/desktops/gnome/core/gnome-software/default.nix
index c2f80e1931ba..43adcd092ffb 100644
--- a/pkgs/desktops/gnome/core/gnome-software/default.nix
+++ b/pkgs/desktops/gnome/core/gnome-software/default.nix
@@ -1,7 +1,6 @@
 { lib
 , stdenv
 , fetchurl
-, fetchpatch
 , substituteAll
 , pkg-config
 , meson
@@ -46,11 +45,11 @@ in
 
 stdenv.mkDerivation rec {
   pname = "gnome-software";
-  version = "45.3";
+  version = "46.1";
 
   src = fetchurl {
     url = "mirror://gnome/sources/gnome-software/${lib.versions.major version}/${pname}-${version}.tar.xz";
-    sha256 = "1rkkWyIjfae9FzndKMI8yPODX5n6EMEDfZ3XY1M1JRw=";
+    hash = "sha256-tu63iRAN6UtQ6+Lnfxaya+TC2xVImQXxmNBgxCXhkHY=";
   };
 
   patches = [
@@ -58,17 +57,6 @@ stdenv.mkDerivation rec {
       src = ./fix-paths.patch;
       inherit isocodes;
     })
-
-    # Add support for AppStream 1.0.
-    # https://gitlab.gnome.org/GNOME/gnome-software/-/issues/2393
-    (fetchpatch {
-      url = "https://gitlab.gnome.org/GNOME/gnome-software/-/commit/0655f358ed0e8455e12d9634f60bc4dbaee434e3.patch";
-      hash = "sha256-8IXXUfNeha5yRlRLuxQV8whwQmyNw7Aoi/r5NNFS/zA=";
-    })
-    (fetchpatch {
-      url = "https://gitlab.gnome.org/GNOME/gnome-software/-/commit/e431ab003f3fabf616b6eb7dc93f8967bc9473e5.patch";
-      hash = "sha256-Y5GcC1XMbb9Bl2/VKFnrV1B/ipLKxY4guse25LhxhKM=";
-    })
   ];
 
   nativeBuildInputs = [
diff --git a/pkgs/desktops/gnome/core/gnome-system-monitor/default.nix b/pkgs/desktops/gnome/core/gnome-system-monitor/default.nix
index 8a54c013b360..bc7caa3ad27b 100644
--- a/pkgs/desktops/gnome/core/gnome-system-monitor/default.nix
+++ b/pkgs/desktops/gnome/core/gnome-system-monitor/default.nix
@@ -3,13 +3,13 @@
 , gettext
 , fetchurl
 , pkg-config
-, gtkmm3
+, gtkmm4
 , libxml2
 , bash
-, gtk3
-, libhandy
+, gtk4
+, libadwaita
 , glib
-, wrapGAppsHook
+, wrapGAppsHook4
 , meson
 , ninja
 , gsettings-desktop-schemas
@@ -23,11 +23,11 @@
 
 stdenv.mkDerivation rec {
   pname = "gnome-system-monitor";
-  version = "45.0.2";
+  version = "46.0";
 
   src = fetchurl {
     url = "mirror://gnome/sources/gnome-system-monitor/${lib.versions.major version}/${pname}-${version}.tar.xz";
-    sha256 = "xeJy2Qv5mGo/hhPXbg0n+kLfrO5cAZLnOSG7lLGGii4=";
+    hash = "sha256-U3YkgVjGhsMIJVRy6MKp5MFyVWQsFJ/HGYxtA05UdZk=";
   };
 
   patches = [
@@ -39,7 +39,7 @@ stdenv.mkDerivation rec {
     pkg-config
     gettext
     itstool
-    wrapGAppsHook
+    wrapGAppsHook4
     meson
     ninja
     glib
@@ -47,11 +47,11 @@ stdenv.mkDerivation rec {
 
   buildInputs = [
     bash
-    gtk3
-    libhandy
+    gtk4
+    libadwaita
     glib
     libxml2
-    gtkmm3
+    gtkmm4
     libgtop
     gdk-pixbuf
     gnome.adwaita-icon-theme
diff --git a/pkgs/desktops/gnome/core/gnome-terminal/default.nix b/pkgs/desktops/gnome/core/gnome-terminal/default.nix
index 93391a744748..7b3306df5719 100644
--- a/pkgs/desktops/gnome/core/gnome-terminal/default.nix
+++ b/pkgs/desktops/gnome/core/gnome-terminal/default.nix
@@ -6,7 +6,6 @@
 , pkg-config
 , python3
 , libxml2
-, gnome
 , gitUpdater
 , nautilus
 , glib
@@ -21,7 +20,7 @@
 , vala
 , desktop-file-utils
 , itstool
-, wrapGAppsHook
+, wrapGAppsHook3
 , pcre2
 , libxslt
 , docbook-xsl-nons
@@ -30,14 +29,14 @@
 
 stdenv.mkDerivation rec {
   pname = "gnome-terminal";
-  version = "3.50.1";
+  version = "3.52.1";
 
   src = fetchFromGitLab {
     domain = "gitlab.gnome.org";
     owner = "GNOME";
     repo = "gnome-terminal";
     rev = version;
-    sha256 = "sha256-lJAzmz8tvEbr371VtYjlV4+z3cSy4QrmP0vmD5WiJD4=";
+    hash = "sha256-npoQfe5+HTn7CsrW6MuOoiYBc3rYMAMv4apC6dFR8O4=";
   };
 
   nativeBuildInputs = [
@@ -53,7 +52,7 @@ stdenv.mkDerivation rec {
     docbook-xsl-nons
     vala
     desktop-file-utils
-    wrapGAppsHook
+    wrapGAppsHook3
     pcre2
     python3
   ];
@@ -69,13 +68,7 @@ stdenv.mkDerivation rec {
     nautilus # For extension
   ];
 
-  # Silly build system, it looks for dbus file from gnome-shell in the
-  # installation tree of the package it is configuring.
   postPatch = ''
-    substituteInPlace src/meson.build \
-       --replace "gt_prefix / gt_dbusinterfacedir / 'org.gnome.ShellSearchProvider2.xml'" \
-       "'${gnome.gnome-shell}/share/dbus-1/interfaces/org.gnome.ShellSearchProvider2.xml'"
-
     patchShebangs \
       data/icons/meson_updateiconcache.py \
       data/meson_desktopfile.py \
diff --git a/pkgs/desktops/gnome/core/gnome-tour/default.nix b/pkgs/desktops/gnome/core/gnome-tour/default.nix
index c6d58c480581..0cc5c596bb5c 100644
--- a/pkgs/desktops/gnome/core/gnome-tour/default.nix
+++ b/pkgs/desktops/gnome/core/gnome-tour/default.nix
@@ -22,11 +22,11 @@
 
 stdenv.mkDerivation rec {
   pname = "gnome-tour";
-  version = "45.0";
+  version = "46.0";
 
   src = fetchurl {
     url = "mirror://gnome/sources/${pname}/${lib.versions.major version}/${pname}-${version}.tar.xz";
-    hash = "sha256-W+S470uPTV7KzMMQSNtuCFqPe/+tqghDuOiniP8dre4=";
+    hash = "sha256-8yZSqp1+8GQ3YM5jkyCCz9NkHnczt2xCm3jQl4O3xGo=";
   };
 
   cargoVendorDir = "vendor";
diff --git a/pkgs/desktops/gnome/core/gucharmap/default.nix b/pkgs/desktops/gnome/core/gucharmap/default.nix
index 82ca07cf146a..2d0dd7553965 100644
--- a/pkgs/desktops/gnome/core/gucharmap/default.nix
+++ b/pkgs/desktops/gnome/core/gucharmap/default.nix
@@ -12,7 +12,7 @@
 , glib
 , desktop-file-utils
 , gtk-doc
-, wrapGAppsHook
+, wrapGAppsHook3
 , itstool
 , libxml2
 , yelp-tools
@@ -63,7 +63,7 @@ in stdenv.mkDerivation rec {
     ninja
     pkg-config
     python3
-    wrapGAppsHook
+    wrapGAppsHook3
     unzip
     intltool
     itstool
diff --git a/pkgs/desktops/gnome/core/mutter/43/default.nix b/pkgs/desktops/gnome/core/mutter/43/default.nix
index 63110d9d90d3..9d40303fad2e 100644
--- a/pkgs/desktops/gnome/core/mutter/43/default.nix
+++ b/pkgs/desktops/gnome/core/mutter/43/default.nix
@@ -37,7 +37,7 @@
 , gnome-settings-daemon
 , xorgserver
 , python3
-, wrapGAppsHook
+, wrapGAppsHook3
 , gi-docgen
 , sysprof
 , libsysprof-capture
@@ -111,7 +111,7 @@ stdenv.mkDerivation (finalAttrs: {
     xvfb-run
     pkg-config
     python3
-    wrapGAppsHook
+    wrapGAppsHook3
     gi-docgen
     xorgserver
     gobject-introspection
diff --git a/pkgs/desktops/gnome/core/mutter/default.nix b/pkgs/desktops/gnome/core/mutter/default.nix
index 570d954766a0..0efd14124a37 100644
--- a/pkgs/desktops/gnome/core/mutter/default.nix
+++ b/pkgs/desktops/gnome/core/mutter/default.nix
@@ -36,6 +36,7 @@
 , libinput
 , libdrm
 , libei
+, libdisplay-info
 , gsettings-desktop-schemas
 , glib
 , atk
@@ -67,13 +68,13 @@
 
 stdenv.mkDerivation (finalAttrs: {
   pname = "mutter";
-  version = "45.5";
+  version = "46.1";
 
   outputs = [ "out" "dev" "man" "devdoc" ];
 
   src = fetchurl {
     url = "mirror://gnome/sources/mutter/${lib.versions.major finalAttrs.version}/mutter-${finalAttrs.version}.tar.xz";
-    sha256 = "sha256-UcMyS4qXX5luWsaTqzhWPElubxQubNM1e0lQ0lAzSHQ=";
+    hash = "sha256-Y7JmDdD6GT+mYsgO4S64sW8rjDvDiWNmIAx5lDgk1R0=";
   };
 
   mesonFlags = [
@@ -125,6 +126,7 @@ stdenv.mkDerivation (finalAttrs: {
     libcanberra
     libdrm
     libei
+    libdisplay-info
     libgudev
     libinput
     libstartup_notification
@@ -172,7 +174,7 @@ stdenv.mkDerivation (finalAttrs: {
   postFixup = ''
     # Cannot be in postInstall, otherwise _multioutDocs hook in preFixup will move right back.
     # TODO: Move this into a directory devhelp can find.
-    moveToOutput "share/mutter-13/doc" "$devdoc"
+    moveToOutput "share/mutter-14/doc" "$devdoc"
   '';
 
   # Install udev files into our own tree.
@@ -181,7 +183,7 @@ stdenv.mkDerivation (finalAttrs: {
   separateDebugInfo = true;
 
   passthru = {
-    libdir = "${finalAttrs.finalPackage}/lib/mutter-13";
+    libdir = "${finalAttrs.finalPackage}/lib/mutter-14";
 
     tests = {
       libdirExists = runCommand "mutter-libdir-exists" {} ''
diff --git a/pkgs/desktops/gnome/core/nautilus/default.nix b/pkgs/desktops/gnome/core/nautilus/default.nix
index 7b1c438c7a0e..063914060dfe 100644
--- a/pkgs/desktops/gnome/core/nautilus/default.nix
+++ b/pkgs/desktops/gnome/core/nautilus/default.nix
@@ -7,7 +7,6 @@
 , gi-docgen
 , docbook-xsl-nons
 , gettext
-, libxml2
 , desktop-file-utils
 , wrapGAppsHook4
 , gtk4
@@ -39,13 +38,13 @@
 
 stdenv.mkDerivation (finalAttrs: {
   pname = "nautilus";
-  version = "45.2.1";
+  version = "46.1";
 
   outputs = [ "out" "dev" "devdoc" ];
 
   src = fetchurl {
     url = "mirror://gnome/sources/nautilus/${lib.versions.major finalAttrs.version}/nautilus-${finalAttrs.version}.tar.xz";
-    sha256 = "ul1T3zmhVVYt+XHvXjHoJwdJBdDEjqseskIaEChLmQ0=";
+    hash = "sha256-zBpf3x3XL5Lp4/PHrSY3CaDeU5Golb6TRPamf0OIe9c=";
   };
 
   patches = [
@@ -63,7 +62,6 @@ stdenv.mkDerivation (finalAttrs: {
     desktop-file-utils
     gettext
     gobject-introspection
-    libxml2
     meson
     ninja
     pkg-config
diff --git a/pkgs/desktops/gnome/core/nautilus/extension_dir.patch b/pkgs/desktops/gnome/core/nautilus/extension_dir.patch
index a1bdd64f989b..d7cd161a8dfc 100644
--- a/pkgs/desktops/gnome/core/nautilus/extension_dir.patch
+++ b/pkgs/desktops/gnome/core/nautilus/extension_dir.patch
@@ -21,6 +21,4 @@ index cd889ff18..e2cd6468e 100644
 +        }
 +
 +        load_module_dir (extensiondir);
- 
-         eel_debug_call_at_shutdown (free_module_objects);
      }
diff --git a/pkgs/desktops/gnome/core/rygel/default.nix b/pkgs/desktops/gnome/core/rygel/default.nix
index c7d59d76525d..9cc4e1ee8d71 100644
--- a/pkgs/desktops/gnome/core/rygel/default.nix
+++ b/pkgs/desktops/gnome/core/rygel/default.nix
@@ -7,7 +7,7 @@
 , gettext
 , libxml2
 , gobject-introspection
-, wrapGAppsHook
+, wrapGAppsHook3
 , python3
 , glib
 , gssdp_1_6
@@ -50,7 +50,7 @@ stdenv.mkDerivation rec {
     gettext
     libxml2
     gobject-introspection
-    wrapGAppsHook
+    wrapGAppsHook3
     python3
   ];
 
diff --git a/pkgs/desktops/gnome/core/simple-scan/default.nix b/pkgs/desktops/gnome/core/simple-scan/default.nix
index 3aea02678a83..e7f2954ca39f 100644
--- a/pkgs/desktops/gnome/core/simple-scan/default.nix
+++ b/pkgs/desktops/gnome/core/simple-scan/default.nix
@@ -6,15 +6,15 @@
 , gettext
 , itstool
 , python3
-, wrapGAppsHook
+, wrapGAppsHook4
 , cairo
 , gdk-pixbuf
 , colord
 , glib
-, gtk3
+, libadwaita
+, gtk4
 , gusb
 , packagekit
-, libhandy
 , libwebp
 , libxml2
 , sane-backends
@@ -25,11 +25,11 @@
 
 stdenv.mkDerivation rec {
   pname = "simple-scan";
-  version = "44.0";
+  version = "46.0";
 
   src = fetchurl {
     url = "mirror://gnome/sources/${pname}/${lib.versions.major version}/${pname}-${version}.tar.xz";
-    sha256 = "sha256-Obhw/Ub0R/dH6uzC3yYEnvdzGFCZ8OE8Z1ZWJk3ZjpU=";
+    hash = "sha256-wW5lkBQv5WO+UUMSKzu7U/awCn2p2VL2HEf6Jve08Kk=";
   };
 
   nativeBuildInputs = [
@@ -39,7 +39,7 @@ stdenv.mkDerivation rec {
     itstool
     pkg-config
     python3
-    wrapGAppsHook
+    wrapGAppsHook4
     libxml2
     gobject-introspection # For setup hook
     vala
@@ -51,8 +51,8 @@ stdenv.mkDerivation rec {
     colord
     glib
     gusb
-    gtk3
-    libhandy
+    libadwaita
+    gtk4
     libwebp
     packagekit
     sane-backends
diff --git a/pkgs/desktops/gnome/core/sushi/default.nix b/pkgs/desktops/gnome/core/sushi/default.nix
index 0765b7af0be7..c6165869a34e 100644
--- a/pkgs/desktops/gnome/core/sushi/default.nix
+++ b/pkgs/desktops/gnome/core/sushi/default.nix
@@ -11,7 +11,7 @@
 , libsoup_3
 , webkitgtk_4_1
 , icu
-, wrapGAppsHook
+, wrapGAppsHook3
 , gst_all_1
 , gdk-pixbuf
 , librsvg
@@ -23,11 +23,11 @@
 
 stdenv.mkDerivation rec {
   pname = "sushi";
-  version = "45.0";
+  version = "46.0";
 
   src = fetchurl {
     url = "mirror://gnome/sources/sushi/${lib.versions.major version}/${pname}-${version}.tar.xz";
-    sha256 = "al8UsFo0cf5DhTzCsOGuVITX+fhvfqN2F5gpub9Kwd0=";
+    hash = "sha256-lghbqqQwqyFCxgaqtcR+L7sv0+two1ITfmXFmlig8sY=";
   };
 
   nativeBuildInputs = [
@@ -36,7 +36,7 @@ stdenv.mkDerivation rec {
     ninja
     gettext
     gobject-introspection
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
diff --git a/pkgs/desktops/gnome/core/totem/default.nix b/pkgs/desktops/gnome/core/totem/default.nix
index b0b23cc9cd4f..56da00923f94 100644
--- a/pkgs/desktops/gnome/core/totem/default.nix
+++ b/pkgs/desktops/gnome/core/totem/default.nix
@@ -13,7 +13,7 @@
 , glib
 , gobject-introspection
 , totem-pl-parser
-, wrapGAppsHook
+, wrapGAppsHook3
 , itstool
 , libxml2
 , vala
@@ -67,7 +67,7 @@ stdenv.mkDerivation rec {
     python3Packages.python
     itstool
     gobject-introspection
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
diff --git a/pkgs/desktops/gnome/core/yelp/default.nix b/pkgs/desktops/gnome/core/yelp/default.nix
index 7eeec1902de2..217c6afab05f 100644
--- a/pkgs/desktops/gnome/core/yelp/default.nix
+++ b/pkgs/desktops/gnome/core/yelp/default.nix
@@ -13,7 +13,7 @@
 , libxml2
 , libxslt
 , gst_all_1
-, wrapGAppsHook
+, wrapGAppsHook3
 }:
 
 stdenv.mkDerivation rec {
@@ -29,7 +29,7 @@ stdenv.mkDerivation rec {
     pkg-config
     gettext
     itstool
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
diff --git a/pkgs/desktops/gnome/devtools/devhelp/default.nix b/pkgs/desktops/gnome/devtools/devhelp/default.nix
index 9c1a55700c7e..4a6577adbe25 100644
--- a/pkgs/desktops/gnome/devtools/devhelp/default.nix
+++ b/pkgs/desktops/gnome/devtools/devhelp/default.nix
@@ -6,7 +6,7 @@
 , pkg-config
 , gnome
 , gtk3
-, wrapGAppsHook
+, wrapGAppsHook3
 , glib
 , gobject-introspection
 , gi-docgen
@@ -34,7 +34,7 @@ stdenv.mkDerivation rec {
     pkg-config
     gettext
     itstool
-    wrapGAppsHook
+    wrapGAppsHook3
     gobject-introspection
     gi-docgen
     # post install script
diff --git a/pkgs/desktops/gnome/extensions/default.nix b/pkgs/desktops/gnome/extensions/default.nix
index e6aac226f531..85b4fc5fca00 100644
--- a/pkgs/desktops/gnome/extensions/default.nix
+++ b/pkgs/desktops/gnome/extensions/default.nix
@@ -67,7 +67,7 @@ in rec {
   gnome46Extensions = mapUuidNames (produceExtensionsList "46");
 
   # Keep the last three versions in here
-  gnomeExtensions = lib.trivial.pipe (gnome44Extensions // gnome45Extensions) [
+  gnomeExtensions = lib.trivial.pipe (gnome44Extensions // gnome45Extensions // gnome46Extensions) [
     (v: builtins.removeAttrs v [ "__attrsFailEvaluation" ])
     # Apply some custom patches for automatically packaged extensions
     (callPackage ./extensionOverrides.nix {})
diff --git a/pkgs/desktops/gnome/extensions/extensionOverrides.nix b/pkgs/desktops/gnome/extensions/extensionOverrides.nix
index 6fd01d1b52d2..373715d357ed 100644
--- a/pkgs/desktops/gnome/extensions/extensionOverrides.nix
+++ b/pkgs/desktops/gnome/extensions/extensionOverrides.nix
@@ -21,7 +21,7 @@
 , touchegg
 , util-linux
 , vte
-, wrapGAppsHook
+, wrapGAppsHook3
 , xdg-utils
 }:
 let
@@ -46,7 +46,7 @@ super: lib.trivial.pipe super [
   }))
 
   (patchExtension "ddterm@amezin.github.com" (old: {
-    nativeBuildInputs = [ gobject-introspection wrapGAppsHook ];
+    nativeBuildInputs = [ gobject-introspection wrapGAppsHook3 ];
     buildInputs = [ vte ];
     postFixup = ''
       substituteInPlace "$out/share/gnome-shell/extensions/ddterm@amezin.github.com/bin/com.github.amezin.ddterm" --replace "gjs" "${gjs}/bin/gjs"
@@ -94,7 +94,7 @@ super: lib.trivial.pipe super [
   }))
 
   (patchExtension "gtk4-ding@smedius.gitlab.com" (old: {
-    nativeBuildInputs = [ wrapGAppsHook ];
+    nativeBuildInputs = [ wrapGAppsHook3 ];
     patches = [
       (substituteAll {
         inherit gjs util-linux xdg-utils;
diff --git a/pkgs/desktops/gnome/extensions/gsconnect/default.nix b/pkgs/desktops/gnome/extensions/gsconnect/default.nix
index b7577888df23..3401db037eda 100644
--- a/pkgs/desktops/gnome/extensions/gsconnect/default.nix
+++ b/pkgs/desktops/gnome/extensions/gsconnect/default.nix
@@ -9,7 +9,7 @@
 , ninja
 , pkg-config
 , gobject-introspection
-, wrapGAppsHook
+, wrapGAppsHook3
 , glib
 , glib-networking
 , gtk3
@@ -23,7 +23,7 @@
 
 stdenv.mkDerivation rec {
   pname = "gnome-shell-extension-gsconnect";
-  version = "56";
+  version = "57";
 
   outputs = [ "out" "installedTests" ];
 
@@ -31,7 +31,7 @@ stdenv.mkDerivation rec {
     owner = "GSConnect";
     repo = "gnome-shell-extension-gsconnect";
     rev = "v${version}";
-    hash = "sha256-V2L65Fz1WcJE2ENE8uNgIuVSXLDHokcgM4Caz1sOdZM=";
+    hash = "sha256-0o5CEkdFPL7bZkHIA/zFWB8sY1OYROl4P3rl24+lze0=";
   };
 
   patches = [
@@ -50,7 +50,7 @@ stdenv.mkDerivation rec {
     ninja
     pkg-config
     gobject-introspection # for locating typelibs
-    wrapGAppsHook # for wrapping daemons
+    wrapGAppsHook3 # for wrapping daemons
     desktop-file-utils # update-desktop-database
   ];
 
diff --git a/pkgs/desktops/gnome/games/aisleriot/default.nix b/pkgs/desktops/gnome/games/aisleriot/default.nix
index cacb49edbe6e..dfba82308d1a 100644
--- a/pkgs/desktops/gnome/games/aisleriot/default.nix
+++ b/pkgs/desktops/gnome/games/aisleriot/default.nix
@@ -5,7 +5,7 @@
 , pkg-config
 , itstool
 , gtk3
-, wrapGAppsHook
+, wrapGAppsHook3
 , meson
 , librsvg
 , libxml2
@@ -13,27 +13,25 @@
 , guile
 , libcanberra-gtk3
 , ninja
-, appstream-glib
 , yelp-tools
 }:
 
 stdenv.mkDerivation rec {
   pname = "aisleriot";
-  version = "3.22.30";
+  version = "3.22.32";
 
   src = fetchFromGitLab {
     domain = "gitlab.gnome.org";
     owner = "GNOME";
     repo = "aisleriot";
     rev = version;
-    sha256 = "sha256-Fj5v2h6xDqf+PPxduxGr3vTy+eZ3aIv0u/ThrheYLGQ=";
+    sha256 = "sha256-+U/EsKTZjWa05DbILWAxqIpMcZ0DP0l4LIYxM2wCFdM=";
   };
 
   nativeBuildInputs = [
-    wrapGAppsHook
+    wrapGAppsHook3
     meson
     ninja
-    appstream-glib
     pkg-config
     itstool
     libxml2
diff --git a/pkgs/desktops/gnome/games/atomix/default.nix b/pkgs/desktops/gnome/games/atomix/default.nix
index 559976c8bc73..7b292054702b 100644
--- a/pkgs/desktops/gnome/games/atomix/default.nix
+++ b/pkgs/desktops/gnome/games/atomix/default.nix
@@ -4,7 +4,7 @@
 , meson
 , ninja
 , pkg-config
-, wrapGAppsHook
+, wrapGAppsHook3
 , python3
 , gettext
 , gnome
@@ -28,7 +28,7 @@ stdenv.mkDerivation (finalAttrs: {
     ninja
     pkg-config
     gettext
-    wrapGAppsHook
+    wrapGAppsHook3
     python3
   ];
 
diff --git a/pkgs/desktops/gnome/games/five-or-more/default.nix b/pkgs/desktops/gnome/games/five-or-more/default.nix
index 32e765ba9b44..099aecf7b411 100644
--- a/pkgs/desktops/gnome/games/five-or-more/default.nix
+++ b/pkgs/desktops/gnome/games/five-or-more/default.nix
@@ -6,7 +6,7 @@
 , pkg-config
 , gnome
 , gtk3
-, wrapGAppsHook
+, wrapGAppsHook3
 , librsvg
 , libgnome-games-support
 , gettext
@@ -33,7 +33,7 @@ stdenv.mkDerivation rec {
     itstool
     libxml2
     python3
-    wrapGAppsHook
+    wrapGAppsHook3
     vala
   ];
 
diff --git a/pkgs/desktops/gnome/games/four-in-a-row/default.nix b/pkgs/desktops/gnome/games/four-in-a-row/default.nix
index 3e08e066c30b..a866e3797a30 100644
--- a/pkgs/desktops/gnome/games/four-in-a-row/default.nix
+++ b/pkgs/desktops/gnome/games/four-in-a-row/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetchurl, pkg-config, gnome, gtk3, wrapGAppsHook
+{ lib, stdenv, fetchurl, pkg-config, gnome, gtk3, wrapGAppsHook3
 , gettext, meson, gsound, librsvg, itstool, vala
 , python3, ninja, desktop-file-utils }:
 
@@ -12,7 +12,7 @@ stdenv.mkDerivation rec {
   };
 
   nativeBuildInputs = [
-    pkg-config wrapGAppsHook gettext meson itstool vala
+    pkg-config wrapGAppsHook3 gettext meson itstool vala
     ninja python3 desktop-file-utils
   ];
   buildInputs = [ gtk3 gsound librsvg gnome.adwaita-icon-theme ];
diff --git a/pkgs/desktops/gnome/games/gnome-2048/default.nix b/pkgs/desktops/gnome/games/gnome-2048/default.nix
index cb359781227a..fc04ee0b8f1e 100644
--- a/pkgs/desktops/gnome/games/gnome-2048/default.nix
+++ b/pkgs/desktops/gnome/games/gnome-2048/default.nix
@@ -2,7 +2,7 @@
 , stdenv
 , fetchurl
 , fetchpatch
-, wrapGAppsHook
+, wrapGAppsHook3
 , meson
 , vala
 , pkg-config
@@ -39,7 +39,7 @@ stdenv.mkDerivation rec {
     ninja
     pkg-config
     vala
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
diff --git a/pkgs/desktops/gnome/games/gnome-chess/default.nix b/pkgs/desktops/gnome/games/gnome-chess/default.nix
index 5ed0a629338f..53d656b93fc3 100644
--- a/pkgs/desktops/gnome/games/gnome-chess/default.nix
+++ b/pkgs/desktops/gnome/games/gnome-chess/default.nix
@@ -21,11 +21,11 @@
 
 stdenv.mkDerivation rec {
   pname = "gnome-chess";
-  version = "43.2";
+  version = "46.0";
 
   src = fetchurl {
     url = "mirror://gnome/sources/gnome-chess/${lib.versions.major version}/${pname}-${version}.tar.xz";
-    sha256 = "NIUI+PbnRRwHNE/6egmpkM8dKIO8z1M0CdvgKSaNSfI=";
+    hash = "sha256-oryQ4KdUMSxXibkZi0knMDd1tiWDqOlnbSxqlztG/ec=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/desktops/gnome/games/gnome-klotski/default.nix b/pkgs/desktops/gnome/games/gnome-klotski/default.nix
index 58605a9ca9a2..3b976c633e03 100644
--- a/pkgs/desktops/gnome/games/gnome-klotski/default.nix
+++ b/pkgs/desktops/gnome/games/gnome-klotski/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetchurl, pkg-config, vala, gnome, gtk3, wrapGAppsHook, appstream-glib, desktop-file-utils
+{ lib, stdenv, fetchurl, pkg-config, vala, gnome, gtk3, wrapGAppsHook3, appstream-glib, desktop-file-utils
 , glib, librsvg, libxml2, gettext, itstool, libgee, libgnome-games-support
 , meson, ninja, python3
 }:
@@ -13,7 +13,7 @@ stdenv.mkDerivation rec {
   };
 
   nativeBuildInputs = [
-    pkg-config vala meson ninja python3 wrapGAppsHook
+    pkg-config vala meson ninja python3 wrapGAppsHook3
     gettext itstool libxml2 appstream-glib desktop-file-utils
     gnome.adwaita-icon-theme
   ];
diff --git a/pkgs/desktops/gnome/games/gnome-mines/default.nix b/pkgs/desktops/gnome/games/gnome-mines/default.nix
index 4800eb4da2b0..ee9509309e4c 100644
--- a/pkgs/desktops/gnome/games/gnome-mines/default.nix
+++ b/pkgs/desktops/gnome/games/gnome-mines/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetchurl, meson, ninja, vala, pkg-config, gnome, gtk3, wrapGAppsHook
+{ lib, stdenv, fetchurl, meson, ninja, vala, pkg-config, gnome, gtk3, wrapGAppsHook3
 , librsvg, gettext, itstool, python3, libxml2, libgnome-games-support, libgee, desktop-file-utils }:
 
 stdenv.mkDerivation rec {
@@ -12,7 +12,7 @@ stdenv.mkDerivation rec {
 
   nativeBuildInputs = [
     meson ninja vala pkg-config gettext itstool python3
-    libxml2 wrapGAppsHook desktop-file-utils
+    libxml2 wrapGAppsHook3 desktop-file-utils
   ];
   buildInputs = [ gtk3 librsvg gnome.adwaita-icon-theme libgnome-games-support libgee ];
 
diff --git a/pkgs/desktops/gnome/games/gnome-nibbles/default.nix b/pkgs/desktops/gnome/games/gnome-nibbles/default.nix
index 6d4ad9c0feb0..58538d24bd49 100644
--- a/pkgs/desktops/gnome/games/gnome-nibbles/default.nix
+++ b/pkgs/desktops/gnome/games/gnome-nibbles/default.nix
@@ -20,11 +20,11 @@
 
 stdenv.mkDerivation (finalAttrs: {
   pname = "gnome-nibbles";
-  version = "4.0.2";
+  version = "4.0.4";
 
   src = fetchurl {
     url = "mirror://gnome/sources/gnome-nibbles/${lib.versions.majorMinor finalAttrs.version}/gnome-nibbles-${finalAttrs.version}.tar.xz";
-    sha256 = "SF+Mnq03/xr/ANXFfZk40PXc/xyocDHyKkrjhS6HU8U=";
+    hash = "sha256-1xKkxpQ78ylWrfuSIvHxQ2mRHlTs67DNYffCWr16Wdo=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/desktops/gnome/games/gnome-robots/default.nix b/pkgs/desktops/gnome/games/gnome-robots/default.nix
index 5e47769e71a4..5222fc81605c 100644
--- a/pkgs/desktops/gnome/games/gnome-robots/default.nix
+++ b/pkgs/desktops/gnome/games/gnome-robots/default.nix
@@ -4,7 +4,7 @@
 , pkg-config
 , gnome
 , gtk3
-, wrapGAppsHook
+, wrapGAppsHook3
 , librsvg
 , gsound
 , gettext
@@ -36,7 +36,7 @@ stdenv.mkDerivation rec {
     vala
     python3
     libxml2
-    wrapGAppsHook
+    wrapGAppsHook3
     gettext
     itstool
     desktop-file-utils
diff --git a/pkgs/desktops/gnome/games/gnome-sudoku/default.nix b/pkgs/desktops/gnome/games/gnome-sudoku/default.nix
index 90c3e2c83ddf..4c84e0053b27 100644
--- a/pkgs/desktops/gnome/games/gnome-sudoku/default.nix
+++ b/pkgs/desktops/gnome/games/gnome-sudoku/default.nix
@@ -21,11 +21,11 @@
 
 stdenv.mkDerivation rec {
   pname = "gnome-sudoku";
-  version = "45.5";
+  version = "46.1";
 
   src = fetchurl {
     url = "mirror://gnome/sources/gnome-sudoku/${lib.versions.major version}/${pname}-${version}.tar.xz";
-    sha256 = "jo4rymzaSfBdAGHD+YZgILNj74TDow9bfo7U5BpX/Q8=";
+    hash = "sha256-ObtDHxCjH1Vq9im2aFyG1Qyknymhuv6GIZwgwVUQcKY=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/desktops/gnome/games/gnome-taquin/default.nix b/pkgs/desktops/gnome/games/gnome-taquin/default.nix
index 462c78990afa..75f68731cb3c 100644
--- a/pkgs/desktops/gnome/games/gnome-taquin/default.nix
+++ b/pkgs/desktops/gnome/games/gnome-taquin/default.nix
@@ -5,7 +5,7 @@
 , pkg-config
 , gnome
 , gtk3
-, wrapGAppsHook
+, wrapGAppsHook3
 , librsvg
 , gsound
 , gettext
@@ -41,7 +41,7 @@ stdenv.mkDerivation rec {
 
   nativeBuildInputs = [
     pkg-config
-    wrapGAppsHook
+    wrapGAppsHook3
     meson
     ninja
     python3
diff --git a/pkgs/desktops/gnome/games/gnome-tetravex/default.nix b/pkgs/desktops/gnome/games/gnome-tetravex/default.nix
index cd5bf21269e4..8c86a4c090a1 100644
--- a/pkgs/desktops/gnome/games/gnome-tetravex/default.nix
+++ b/pkgs/desktops/gnome/games/gnome-tetravex/default.nix
@@ -5,7 +5,7 @@
 , pkg-config
 , gnome
 , gtk3
-, wrapGAppsHook
+, wrapGAppsHook3
 , libxml2
 , gettext
 , itstool
@@ -37,7 +37,7 @@ stdenv.mkDerivation rec {
   ];
 
   nativeBuildInputs = [
-    wrapGAppsHook
+    wrapGAppsHook3
     itstool
     libxml2
     gnome.adwaita-icon-theme
diff --git a/pkgs/desktops/gnome/games/hitori/default.nix b/pkgs/desktops/gnome/games/hitori/default.nix
index cdf38be195df..77cc67f41a38 100644
--- a/pkgs/desktops/gnome/games/hitori/default.nix
+++ b/pkgs/desktops/gnome/games/hitori/default.nix
@@ -8,7 +8,7 @@
 , glib
 , gtk3
 , cairo
-, wrapGAppsHook
+, wrapGAppsHook3
 , libxml2
 , python3
 , gettext
@@ -34,7 +34,7 @@ stdenv.mkDerivation (finalAttrs: {
     desktop-file-utils
     libxml2
     python3
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
diff --git a/pkgs/desktops/gnome/games/iagno/default.nix b/pkgs/desktops/gnome/games/iagno/default.nix
index c3db2971d574..4dc3e9eabdb7 100644
--- a/pkgs/desktops/gnome/games/iagno/default.nix
+++ b/pkgs/desktops/gnome/games/iagno/default.nix
@@ -6,7 +6,7 @@
 , gnome
 , gdk-pixbuf
 , librsvg
-, wrapGAppsHook
+, wrapGAppsHook3
 , itstool
 , gsound
 , libxml2
@@ -47,7 +47,7 @@ stdenv.mkDerivation rec {
     vala
     desktop-file-utils
     pkg-config
-    wrapGAppsHook
+    wrapGAppsHook3
     itstool
     libxml2
   ];
diff --git a/pkgs/desktops/gnome/games/lightsoff/default.nix b/pkgs/desktops/gnome/games/lightsoff/default.nix
index b47d6e59ead3..1884fe869122 100644
--- a/pkgs/desktops/gnome/games/lightsoff/default.nix
+++ b/pkgs/desktops/gnome/games/lightsoff/default.nix
@@ -1,18 +1,18 @@
-{ lib, stdenv, fetchurl, vala, pkg-config, gtk3, gnome, gdk-pixbuf, librsvg, wrapGAppsHook
+{ lib, stdenv, fetchurl, vala, pkg-config, gtk3, gnome, gdk-pixbuf, librsvg, wrapGAppsHook3
 , gettext, itstool, clutter, clutter-gtk, libxml2, appstream-glib
 , meson, ninja, python3 }:
 
 stdenv.mkDerivation rec {
   pname = "lightsoff";
-  version = "40.0.1";
+  version = "46.0";
 
   src = fetchurl {
     url = "mirror://gnome/sources/lightsoff/${lib.versions.major version}/${pname}-${version}.tar.xz";
-    sha256 = "1aziy64g15bm83zfn3ifs20z9yvscdvsxbx132xnq77i0r3qvlxc";
+    hash = "sha256-ZysVMuBkX64C8oN6ltU57c/Uw7pPcuWR3HP+R567i5I=";
   };
 
   nativeBuildInputs = [
-    vala pkg-config wrapGAppsHook itstool gettext appstream-glib libxml2
+    vala pkg-config wrapGAppsHook3 itstool gettext appstream-glib libxml2
     meson ninja python3
   ];
   buildInputs = [ gtk3 gnome.adwaita-icon-theme gdk-pixbuf librsvg clutter clutter-gtk ];
diff --git a/pkgs/desktops/gnome/games/quadrapassel/default.nix b/pkgs/desktops/gnome/games/quadrapassel/default.nix
index 857c89fa22cb..d867ad4f16a3 100644
--- a/pkgs/desktops/gnome/games/quadrapassel/default.nix
+++ b/pkgs/desktops/gnome/games/quadrapassel/default.nix
@@ -14,7 +14,7 @@
   libxml2,
   clutter,
   clutter-gtk,
-  wrapGAppsHook,
+  wrapGAppsHook3,
   meson,
   ninja,
   python3,
@@ -42,7 +42,7 @@ stdenv.mkDerivation rec {
     libxml2
     itstool
     gettext
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
diff --git a/pkgs/desktops/gnome/games/swell-foop/default.nix b/pkgs/desktops/gnome/games/swell-foop/default.nix
index c4373b1c0822..6a8d64103509 100644
--- a/pkgs/desktops/gnome/games/swell-foop/default.nix
+++ b/pkgs/desktops/gnome/games/swell-foop/default.nix
@@ -6,26 +6,26 @@
 , pkg-config
 , vala
 , glib
-, gtk3
-, libgnome-games-support
+, gtk4
+, libgee
+, libgnome-games-support_2_0
+, pango
 , gnome
 , desktop-file-utils
-, clutter
-, clutter-gtk
 , gettext
 , itstool
 , libxml2
-, wrapGAppsHook
+, wrapGAppsHook4
 , python3
 }:
 
 stdenv.mkDerivation rec {
   pname = "swell-foop";
-  version = "41.1";
+  version = "46.0";
 
   src = fetchurl {
     url = "mirror://gnome/sources/${pname}/${lib.versions.major version}/${pname}-${version}.tar.xz";
-    sha256 = "JD96VeXnU6UQhu7CVoMg12ktWxWmanI6tZFwXg2O9t0=";
+    hash = "sha256-BvireAfXHOyUi4aDcfR/ut7vzLXDV+E9HvPISBiR/KM=";
   };
 
   nativeBuildInputs = [
@@ -33,7 +33,7 @@ stdenv.mkDerivation rec {
     ninja
     vala
     pkg-config
-    wrapGAppsHook
+    wrapGAppsHook4
     python3
     itstool
     gettext
@@ -43,17 +43,12 @@ stdenv.mkDerivation rec {
 
   buildInputs = [
     glib
-    gtk3
-    libgnome-games-support
-    clutter
-    clutter-gtk
+    gtk4
+    libgee
+    libgnome-games-support_2_0
+    pango
   ];
 
-  postPatch = ''
-    chmod +x meson_post_install.py # patchShebangs requires executable file
-    patchShebangs meson_post_install.py
-  '';
-
   passthru = {
     updateScript = gnome.updateScript {
       packageName = pname;
diff --git a/pkgs/desktops/gnome/games/tali/default.nix b/pkgs/desktops/gnome/games/tali/default.nix
index 3224f0bf2f36..fac4a1fb5776 100644
--- a/pkgs/desktops/gnome/games/tali/default.nix
+++ b/pkgs/desktops/gnome/games/tali/default.nix
@@ -11,7 +11,7 @@
   gettext,
   itstool,
   libxml2,
-  wrapGAppsHook,
+  wrapGAppsHook3,
   meson,
   ninja,
   python3,
@@ -37,7 +37,7 @@ stdenv.mkDerivation rec {
     libxml2
     itstool
     gettext
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
diff --git a/pkgs/desktops/gnome/misc/geary/default.nix b/pkgs/desktops/gnome/misc/geary/default.nix
index 4233c4253819..e2cbaaa6da89 100644
--- a/pkgs/desktops/gnome/misc/geary/default.nix
+++ b/pkgs/desktops/gnome/misc/geary/default.nix
@@ -5,7 +5,7 @@
 , gtk3
 , vala
 , enchant2
-, wrapGAppsHook
+, wrapGAppsHook3
 , meson
 , ninja
 , desktop-file-utils
@@ -66,7 +66,7 @@ stdenv.mkDerivation rec {
     pkg-config
     python3
     vala
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
diff --git a/pkgs/desktops/gnome/misc/gitg/default.nix b/pkgs/desktops/gnome/misc/gitg/default.nix
index 00e1a635a00a..923f1ccc28bf 100644
--- a/pkgs/desktops/gnome/misc/gitg/default.nix
+++ b/pkgs/desktops/gnome/misc/gitg/default.nix
@@ -7,7 +7,7 @@
 , glib
 , gpgme
 , json-glib
-, wrapGAppsHook
+, wrapGAppsHook3
 , libpeas
 , bash
 , gobject-introspection
@@ -44,7 +44,7 @@ stdenv.mkDerivation rec {
     pkg-config
     python3
     vala
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
diff --git a/pkgs/desktops/gnome/misc/gnome-applets/default.nix b/pkgs/desktops/gnome/misc/gnome-applets/default.nix
index 06afbfe13795..0270045dad7d 100644
--- a/pkgs/desktops/gnome/misc/gnome-applets/default.nix
+++ b/pkgs/desktops/gnome/misc/gnome-applets/default.nix
@@ -23,11 +23,11 @@
 
 stdenv.mkDerivation rec {
   pname = "gnome-applets";
-  version = "3.50.0";
+  version = "3.52.0";
 
   src = fetchurl {
     url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
-    sha256 = "b3kagx8WQ+YvOJ7sCLHqPfHzr+1DqzQJb6Ic+njcgKU=";
+    hash = "sha256-bz07QoZW/21bHT7lzLfs49Kxi1S/BFes9DtxHlXi1iw=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/desktops/gnome/misc/gnome-flashback/default.nix b/pkgs/desktops/gnome/misc/gnome-flashback/default.nix
index 3c090282bdb4..f54860ba19ad 100644
--- a/pkgs/desktops/gnome/misc/gnome-flashback/default.nix
+++ b/pkgs/desktops/gnome/misc/gnome-flashback/default.nix
@@ -22,7 +22,7 @@
 , systemd
 , upower
 , pam
-, wrapGAppsHook
+, wrapGAppsHook3
 , writeTextFile
 , xkeyboard_config
 , xorg
@@ -31,11 +31,11 @@
 }:
 let
   pname = "gnome-flashback";
-  version = "3.50.0";
+  version = "3.52.1";
 
   # From data/sessions/Makefile.am
   requiredComponentsCommon = enableGnomePanel:
-    [ "gnome-flashback" ]
+    [ ]
     ++ lib.optional enableGnomePanel "gnome-panel";
   requiredComponentsGsd = [
     "org.gnome.SettingsDaemon.A11ySettings"
@@ -62,13 +62,13 @@ let
 
     src = fetchurl {
       url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${name}.tar.xz";
-      sha256 = "sha256-0ExDSCICLJ+n5gh05cjNIGDI88BwPBnytAMr4lQnKv4=";
+      hash = "sha256-ugRhPNrbYr2iBkN8BHKZ4WAlzeG9gJXglKp3dpx4YDo=";
     };
 
     # make .desktop Execs absolute
     postPatch = ''
       patch -p0 <<END_PATCH
-      +++ data/applications/gnome-flashback.desktop.in.in
+      +++ data/applications/gnome-flashback.desktop.in
       @@ -4 +4 @@
       -Exec=gnome-flashback
       +Exec=$out/bin/gnome-flashback
@@ -90,7 +90,7 @@ let
       gettext
       libxml2
       pkg-config
-      wrapGAppsHook
+      wrapGAppsHook3
     ];
 
     buildInputs = [
diff --git a/pkgs/desktops/gnome/misc/gnome-packagekit/default.nix b/pkgs/desktops/gnome/misc/gnome-packagekit/default.nix
index 92b216ed2c5e..6e2f9168e54f 100644
--- a/pkgs/desktops/gnome/misc/gnome-packagekit/default.nix
+++ b/pkgs/desktops/gnome/misc/gnome-packagekit/default.nix
@@ -10,7 +10,7 @@
 , polkit
 , gtk3
 , systemd
-, wrapGAppsHook
+, wrapGAppsHook3
 , desktop-file-utils
 }:
 
@@ -28,7 +28,7 @@ stdenv.mkDerivation rec {
     meson
     ninja
     gettext
-    wrapGAppsHook
+    wrapGAppsHook3
     desktop-file-utils
   ];
 
diff --git a/pkgs/desktops/gnome/misc/gnome-panel/default.nix b/pkgs/desktops/gnome/misc/gnome-panel/default.nix
index 56305d8e72db..71bfd89d4599 100644
--- a/pkgs/desktops/gnome/misc/gnome-panel/default.nix
+++ b/pkgs/desktops/gnome/misc/gnome-panel/default.nix
@@ -19,18 +19,18 @@
 , pkg-config
 , polkit
 , systemd
-, wrapGAppsHook
+, wrapGAppsHook3
 }:
 
 stdenv.mkDerivation rec {
   pname = "gnome-panel";
-  version = "3.50.0";
+  version = "3.52.0";
 
   outputs = [ "out" "dev" "man" ];
 
   src = fetchurl {
     url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
-    hash = "sha256-Al7IidBCYtQclb7oW+ZCG6OmBQ4mm5zpn2ksrUmi6xM=";
+    hash = "sha256-nim6iHPN5A1AwpNKRk+PQ7ousbUisZFEfKon3XhTxdQ=";
   };
 
   patches = [
@@ -63,7 +63,7 @@ stdenv.mkDerivation rec {
     itstool
     libxml2
     pkg-config
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
diff --git a/pkgs/desktops/gnome/misc/gnome-panel/wrapper.nix b/pkgs/desktops/gnome/misc/gnome-panel/wrapper.nix
index 6afee1051af4..10b81eaad62c 100644
--- a/pkgs/desktops/gnome/misc/gnome-panel/wrapper.nix
+++ b/pkgs/desktops/gnome/misc/gnome-panel/wrapper.nix
@@ -5,7 +5,7 @@
 , gnome-flashback
 , xorg
 , glib
-, wrapGAppsHook
+, wrapGAppsHook3
 , panelModulePackages ? [ ]
 }:
 
@@ -25,7 +25,7 @@ stdenv.mkDerivation {
 
   nativeBuildInputs = [
     glib
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = selectedPanelModulePackages ++
diff --git a/pkgs/desktops/gnome/misc/gnome-tweaks/default.nix b/pkgs/desktops/gnome/misc/gnome-tweaks/default.nix
index 10f6dbff4508..a5254d1bbcf6 100644
--- a/pkgs/desktops/gnome/misc/gnome-tweaks/default.nix
+++ b/pkgs/desktops/gnome/misc/gnome-tweaks/default.nix
@@ -2,6 +2,7 @@
 , meson
 , ninja
 , fetchurl
+, desktop-file-utils
 , gdk-pixbuf
 , gettext
 , glib
@@ -9,26 +10,29 @@
 , gnome-desktop
 , gobject-introspection
 , gsettings-desktop-schemas
-, gtk3
+, gtk4
 , itstool
-, libhandy
+, libadwaita
+, libgudev
 , libnotify
 , libxml2
 , pkg-config
 , python3Packages
-, wrapGAppsHook }:
+, wrapGAppsHook4
+}:
 
 python3Packages.buildPythonApplication rec {
   pname = "gnome-tweaks";
-  version = "45.1";
+  version = "46.1";
   format = "other";
 
   src = fetchurl {
     url = "mirror://gnome/sources/${pname}/${lib.versions.major version}/${pname}-${version}.tar.xz";
-    sha256 = "lf+n842bHf1eTOvvt1JBn+ohzUBwITla3J8RKFRBbU8=";
+    hash = "sha256-LxkqcIX71oQ+z4JXFtnaIeyScgKRSeo18+FZ4Kwwm4A=";
   };
 
   nativeBuildInputs = [
+    desktop-file-utils
     gettext
     gobject-introspection
     itstool
@@ -36,7 +40,7 @@ python3Packages.buildPythonApplication rec {
     meson
     ninja
     pkg-config
-    wrapGAppsHook
+    wrapGAppsHook4
   ];
 
   buildInputs = [
@@ -49,8 +53,9 @@ python3Packages.buildPythonApplication rec {
     gnome.gnome-shell-extensions
     gnome.mutter
     gsettings-desktop-schemas
-    gtk3
-    libhandy
+    gtk4
+    libadwaita
+    libgudev
     libnotify
   ];
 
diff --git a/pkgs/desktops/gnome/misc/gpaste/default.nix b/pkgs/desktops/gnome/misc/gpaste/default.nix
index e98c861f1267..16da276b64b5 100644
--- a/pkgs/desktops/gnome/misc/gpaste/default.nix
+++ b/pkgs/desktops/gnome/misc/gpaste/default.nix
@@ -1,6 +1,6 @@
 { stdenv
 , lib
-, fetchFromGitHub
+, fetchurl
 , gjs
 , glib
 , gobject-introspection
@@ -14,18 +14,16 @@
 , pkg-config
 , vala
 , desktop-file-utils
-, wrapGAppsHook
+, wrapGAppsHook3
 }:
 
-stdenv.mkDerivation rec {
-  version = "45";
+stdenv.mkDerivation (finalAttrs: {
+  version = "45.1";
   pname = "gpaste";
 
-  src = fetchFromGitHub {
-    owner = "Keruspe";
-    repo = "GPaste";
-    rev = "v${version}";
-    sha256 = "sha256-MpoeLXGdLfas/E3x5ojJW5Dd3H8XZORtFaBHgRGJXxg=";
+  src = fetchurl {
+    url = "https://www.imagination-land.org/files/gpaste/GPaste-${finalAttrs.version}.tar.xz";
+    hash = "sha256-yYLoHn3/2xlefBeErnydNfkvtJva8/9f9JHhfschBpQ=";
   };
 
   patches = [
@@ -36,7 +34,7 @@ stdenv.mkDerivation rec {
   # https://github.com/NixOS/nix/issues/1846
   postPatch = ''
     substituteInPlace src/libgpaste/gpaste/gpaste-settings.c \
-      --subst-var-by gschemasCompiled ${glib.makeSchemaPath (placeholder "out") "${pname}-${version}"}
+      --subst-var-by gschemasCompiled ${glib.makeSchemaPath (placeholder "out") "${finalAttrs.pname}-${finalAttrs.version}"}
   '';
 
   nativeBuildInputs = [
@@ -46,7 +44,7 @@ stdenv.mkDerivation rec {
     pkg-config
     vala
     desktop-file-utils
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
@@ -81,10 +79,10 @@ stdenv.mkDerivation rec {
 
   meta = with lib; {
     homepage = "https://github.com/Keruspe/GPaste";
-    description = "Clipboard management system with GNOME 3 integration";
+    description = "Clipboard management system with GNOME integration";
     mainProgram = "gpaste-client";
-    license = licenses.gpl3;
+    license = licenses.bsd2;
     platforms = platforms.linux;
     maintainers = teams.gnome.members;
   };
-}
+})
diff --git a/pkgs/desktops/gnome/misc/metacity/default.nix b/pkgs/desktops/gnome/misc/metacity/default.nix
index b303c6698daf..748ac320014b 100644
--- a/pkgs/desktops/gnome/misc/metacity/default.nix
+++ b/pkgs/desktops/gnome/misc/metacity/default.nix
@@ -12,17 +12,17 @@
 , libxml2
 , pkg-config
 , substituteAll
-, wrapGAppsHook
+, wrapGAppsHook3
 , zenity
 }:
 
 stdenv.mkDerivation rec {
   pname = "metacity";
-  version = "3.50.0";
+  version = "3.52.0";
 
   src = fetchurl {
     url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
-    sha256 = "GOmxBkONRjlOQUi8uDrMY2cxK+VFWc21ZOJwwcyutg8=";
+    hash = "sha256-pyQ4rObVkDrnkzjGCYsbNauRyKl8QyNwHTvvHz7rGRw=";
   };
 
   patches = [
@@ -36,7 +36,7 @@ stdenv.mkDerivation rec {
     gettext
     libxml2
     pkg-config
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
diff --git a/pkgs/desktops/gnome/misc/nautilus-python/default.nix b/pkgs/desktops/gnome/misc/nautilus-python/default.nix
index 22ea314d4381..73767f31219d 100644
--- a/pkgs/desktops/gnome/misc/nautilus-python/default.nix
+++ b/pkgs/desktops/gnome/misc/nautilus-python/default.nix
@@ -15,13 +15,13 @@
 
 stdenv.mkDerivation rec {
   pname = "nautilus-python";
-  version = "4.0";
+  version = "4.0.1";
 
   outputs = [ "out" "dev" "doc" "devdoc" ];
 
   src = fetchurl {
     url = "mirror://gnome/sources/nautilus-python/${lib.versions.majorMinor version}/nautilus-python-${version}.tar.xz";
-    sha256 = "FyQ9Yut9fYOalGGrjQcBaIgFxxYaZwXmFBOljsJoKBo=";
+    hash = "sha256-/EnBBPsyoK0ZWmawE2eEzRnRDYs+jVnV7n9z6PlOko8=";
   };
 
   patches = [
diff --git a/pkgs/desktops/gnome/misc/pomodoro/default.nix b/pkgs/desktops/gnome/misc/pomodoro/default.nix
index 9a1697c2332b..4261ebaec1ef 100644
--- a/pkgs/desktops/gnome/misc/pomodoro/default.nix
+++ b/pkgs/desktops/gnome/misc/pomodoro/default.nix
@@ -5,7 +5,7 @@
 , meson
 , ninja
 , pkg-config
-, wrapGAppsHook
+, wrapGAppsHook3
 , desktop-file-utils
 , libcanberra
 , gst_all_1
@@ -50,7 +50,7 @@ stdenv.mkDerivation rec {
     libxml2
     pkg-config
     vala
-    wrapGAppsHook
+    wrapGAppsHook3
     desktop-file-utils
   ];
 
diff --git a/pkgs/desktops/lomiri/applications/lomiri-system-settings/default.nix b/pkgs/desktops/lomiri/applications/lomiri-system-settings/default.nix
index 5230e8541181..3025e86f6a70 100644
--- a/pkgs/desktops/lomiri/applications/lomiri-system-settings/default.nix
+++ b/pkgs/desktops/lomiri/applications/lomiri-system-settings/default.nix
@@ -37,7 +37,7 @@
 , ubports-click
 , upower
 , validatePkgConfig
-, wrapGAppsHook
+, wrapGAppsHook3
 , wrapQtAppsHook
 , xvfb-run
 }:
diff --git a/pkgs/desktops/lomiri/applications/lomiri-system-settings/wrapper.nix b/pkgs/desktops/lomiri/applications/lomiri-system-settings/wrapper.nix
index 74767f41d9ec..682001b62eea 100644
--- a/pkgs/desktops/lomiri/applications/lomiri-system-settings/wrapper.nix
+++ b/pkgs/desktops/lomiri/applications/lomiri-system-settings/wrapper.nix
@@ -5,7 +5,7 @@
 , lndir
 , lomiri-system-settings-unwrapped
 , lomiri-system-settings-security-privacy
-, wrapGAppsHook
+, wrapGAppsHook3
 , wrapQtAppsHook
 , plugins ? [ lomiri-system-settings-security-privacy ]
 }:
@@ -22,7 +22,7 @@ stdenvNoCC.mkDerivation (finalAttrs: {
 
   nativeBuildInputs = [
     lndir
-    wrapGAppsHook
+    wrapGAppsHook3
     wrapQtAppsHook
   ];
 
diff --git a/pkgs/desktops/lomiri/applications/lomiri/default.nix b/pkgs/desktops/lomiri/applications/lomiri/default.nix
index 2c1b64bf0ca8..f9eead00dafb 100644
--- a/pkgs/desktops/lomiri/applications/lomiri/default.nix
+++ b/pkgs/desktops/lomiri/applications/lomiri/default.nix
@@ -54,7 +54,7 @@
 , qtmultimedia
 , qtsvg
 , telephony-service
-, wrapGAppsHook
+, wrapGAppsHook3
 , wrapQtAppsHook
 , xwayland
 }:
@@ -160,7 +160,7 @@ stdenv.mkDerivation (finalAttrs: {
     cmake
     glib # populates GSETTINGS_SCHEMAS_PATH
     pkg-config
-    wrapGAppsHook # XDG_DATA_DIRS wrapper flags for schemas
+    wrapGAppsHook3 # XDG_DATA_DIRS wrapper flags for schemas
     wrapQtAppsHook
   ];
 
diff --git a/pkgs/desktops/lomiri/services/content-hub/default.nix b/pkgs/desktops/lomiri/services/content-hub/default.nix
index 7cbf7f205871..3df927d3ed2d 100644
--- a/pkgs/desktops/lomiri/services/content-hub/default.nix
+++ b/pkgs/desktops/lomiri/services/content-hub/default.nix
@@ -25,7 +25,7 @@
 , qtfeedback
 , qtgraphicaleffects
 , validatePkgConfig
-, wrapGAppsHook
+, wrapGAppsHook3
 , xvfb-run
 }:
 
@@ -103,7 +103,7 @@ stdenv.mkDerivation (finalAttrs: {
     pkg-config
     qtdeclarative # qmlplugindump
     validatePkgConfig
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
diff --git a/pkgs/desktops/lomiri/services/lomiri-thumbnailer/default.nix b/pkgs/desktops/lomiri/services/lomiri-thumbnailer/default.nix
index e400b73a25ab..ef9ed8f07257 100644
--- a/pkgs/desktops/lomiri/services/lomiri-thumbnailer/default.nix
+++ b/pkgs/desktops/lomiri/services/lomiri-thumbnailer/default.nix
@@ -25,7 +25,7 @@
 , shared-mime-info
 , taglib
 , validatePkgConfig
-, wrapGAppsHook
+, wrapGAppsHook3
 , xvfb-run
 }:
 
@@ -129,7 +129,7 @@ stdenv.mkDerivation (finalAttrs: {
       tornado
     ]))
     validatePkgConfig
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
diff --git a/pkgs/desktops/lumina/lumina/default.nix b/pkgs/desktops/lumina/lumina/default.nix
index a7c533b42cec..74de1fbeedfb 100644
--- a/pkgs/desktops/lumina/lumina/default.nix
+++ b/pkgs/desktops/lumina/lumina/default.nix
@@ -13,7 +13,7 @@
 , qtx11extras
 , xorg
 , xscreensaver
-, wrapGAppsHook
+, wrapGAppsHook3
 }:
 
 mkDerivation rec {
@@ -30,7 +30,7 @@ mkDerivation rec {
   nativeBuildInputs = [
     qmake
     qttools
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
diff --git a/pkgs/desktops/lxde/core/lxappearance/default.nix b/pkgs/desktops/lxde/core/lxappearance/default.nix
index 3dc93a0f3386..0143ab595e68 100644
--- a/pkgs/desktops/lxde/core/lxappearance/default.nix
+++ b/pkgs/desktops/lxde/core/lxappearance/default.nix
@@ -5,7 +5,7 @@
 , libX11
 , gtk2
 , gtk3
-, wrapGAppsHook
+, wrapGAppsHook3
 , withGtk3 ? true
 }:
 
@@ -21,7 +21,7 @@ stdenv.mkDerivation rec {
   nativeBuildInputs = [
     pkg-config
     intltool
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
diff --git a/pkgs/desktops/lxde/core/lxsession/default.nix b/pkgs/desktops/lxde/core/lxsession/default.nix
index b30c195f636a..056651e0390e 100644
--- a/pkgs/desktops/lxde/core/lxsession/default.nix
+++ b/pkgs/desktops/lxde/core/lxsession/default.nix
@@ -9,7 +9,7 @@
 , libxml2
 , libxslt
 , pkg-config
-, wrapGAppsHook
+, wrapGAppsHook3
 , gtk2-x11
 , libX11
 , polkit
@@ -38,7 +38,7 @@ stdenv.mkDerivation rec {
     libxml2
     libxslt
     pkg-config
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
diff --git a/pkgs/desktops/lxqt/libfm-qt/default.nix b/pkgs/desktops/lxqt/libfm-qt/default.nix
index 0ef27be05d2b..694c4452b45a 100644
--- a/pkgs/desktops/lxqt/libfm-qt/default.nix
+++ b/pkgs/desktops/lxqt/libfm-qt/default.nix
@@ -15,7 +15,7 @@
 , qttools
 , wrapQtAppsHook
 , gitUpdater
-, version ? "2.0.0"
+, version ? "2.0.2"
 , qtx11extras ? null
 }:
 
@@ -29,7 +29,7 @@ stdenv.mkDerivation rec {
     rev = version;
     hash = {
       "1.4.0" = "sha256-QxPYSA7537K+/dRTxIYyg+Q/kj75rZOdzlUsmSdQcn4=";
-      "2.0.0" = "sha256-vWkuPdG5KaT6KMr1NJGt7JBUd1z3wROKY79otsrRsuI=";
+      "2.0.2" = "sha256-Ntj+yixGGGgL8ylRv2IJsWtapxE71JNl9cC9K0JToNU=";
     }."${version}";
   };
 
diff --git a/pkgs/desktops/lxqt/lximage-qt/default.nix b/pkgs/desktops/lxqt/lximage-qt/default.nix
index 3ff33af9d4c5..e5972344abcb 100644
--- a/pkgs/desktops/lxqt/lximage-qt/default.nix
+++ b/pkgs/desktops/lxqt/lximage-qt/default.nix
@@ -20,13 +20,13 @@
 
 stdenv.mkDerivation rec {
   pname = "lximage-qt";
-  version = "2.0.0";
+  version = "2.0.1";
 
   src = fetchFromGitHub {
     owner = "lxqt";
     repo = pname;
     rev = version;
-    hash = "sha256-yjsdXVV/EOgpNI5kY12lNH9Wpru8A6eWxayslFdioiQ=";
+    hash = "sha256-I0DyC8i+OnHxHcpp/xPsKjr3UgvUHlVO8h9Tjhg7Pg8=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/desktops/lxqt/lxqt-notificationd/default.nix b/pkgs/desktops/lxqt/lxqt-notificationd/default.nix
index 0ca6d4fe61fe..df5f6ed911ca 100644
--- a/pkgs/desktops/lxqt/lxqt-notificationd/default.nix
+++ b/pkgs/desktops/lxqt/lxqt-notificationd/default.nix
@@ -17,13 +17,13 @@
 
 stdenv.mkDerivation rec {
   pname = "lxqt-notificationd";
-  version = "2.0.0";
+  version = "2.0.1";
 
   src = fetchFromGitHub {
     owner = "lxqt";
     repo = pname;
     rev = version;
-    hash = "sha256-zEoTjDD65bBJBbvAZVtov8HyiN1G6CqYkmcPH4T8Jhc=";
+    hash = "sha256-qmBHeXKBJD97Me2zNSn7bNr0UrObGmvj8Pn19GQGktI=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/desktops/lxqt/lxqt-openssh-askpass/default.nix b/pkgs/desktops/lxqt/lxqt-openssh-askpass/default.nix
index eb0784840d1f..e3e8d52977f1 100644
--- a/pkgs/desktops/lxqt/lxqt-openssh-askpass/default.nix
+++ b/pkgs/desktops/lxqt/lxqt-openssh-askpass/default.nix
@@ -16,13 +16,13 @@
 
 stdenv.mkDerivation rec {
   pname = "lxqt-openssh-askpass";
-  version = "2.0.0";
+  version = "2.0.1";
 
   src = fetchFromGitHub {
     owner = "lxqt";
     repo = pname;
     rev = version;
-    hash = "sha256-YDGKp8Fd6lEFSRWGAFUG7SUUFq7gEpJnKlr+ZFsBCRU=";
+    hash = "sha256-poTOXVvVUdM6m1mHBgQGS+mVHu6O4iBKQRs0JwpU8X0=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/desktops/lxqt/lxqt-panel/default.nix b/pkgs/desktops/lxqt/lxqt-panel/default.nix
index dda96380a3eb..a2072702ad7c 100644
--- a/pkgs/desktops/lxqt/lxqt-panel/default.nix
+++ b/pkgs/desktops/lxqt/lxqt-panel/default.nix
@@ -35,13 +35,13 @@
 
 stdenv.mkDerivation rec {
   pname = "lxqt-panel";
-  version = "2.0.0";
+  version = "2.0.1";
 
   src = fetchFromGitHub {
     owner = "lxqt";
     repo = pname;
     rev = version;
-    hash = "sha256-2I7I3AiLptKbBXiTPbbpcj16zuIx0e9SQnvbalpoFvM=";
+    hash = "sha256-m+LUG7hnkIJj48HJIy6pMyv3YZ/RfuSXbdBKJ9mi764=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/desktops/lxqt/pcmanfm-qt/default.nix b/pkgs/desktops/lxqt/pcmanfm-qt/default.nix
index 466c365d2c3b..2b52e53755e5 100644
--- a/pkgs/desktops/lxqt/pcmanfm-qt/default.nix
+++ b/pkgs/desktops/lxqt/pcmanfm-qt/default.nix
@@ -13,6 +13,7 @@
 , qtimageformats
 , qttools
 , qtwayland
+, qtsvg
 , wrapQtAppsHook
 , gitUpdater
 }:
@@ -45,6 +46,7 @@ stdenv.mkDerivation rec {
     qtbase
     qtimageformats # add-on module to support more image file formats
     qtwayland
+    qtsvg
   ];
 
   passthru.updateScript = gitUpdater { };
diff --git a/pkgs/desktops/lxqt/xdg-desktop-portal-lxqt/default.nix b/pkgs/desktops/lxqt/xdg-desktop-portal-lxqt/default.nix
index 6f668abb7ea5..f88f32fb11fc 100644
--- a/pkgs/desktops/lxqt/xdg-desktop-portal-lxqt/default.nix
+++ b/pkgs/desktops/lxqt/xdg-desktop-portal-lxqt/default.nix
@@ -15,13 +15,13 @@
 
 stdenv.mkDerivation rec {
   pname = "xdg-desktop-portal-lxqt";
-  version = "1.0.1";
+  version = "1.0.2";
 
   src = fetchFromGitHub {
     owner = "lxqt";
     repo = pname;
     rev = version;
-    hash = "sha256-JSbFZ7R1Cu5VPPb50fRVSAsaE0LE15BbbHpvJZP6+w0=";
+    hash = "sha256-zXZ0Un56uz1hKoPvZitJgQpJ7ko0LrSSFxl+agiqZ4A=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/desktops/mate/atril/default.nix b/pkgs/desktops/mate/atril/default.nix
index 611721da3642..130bba9182f4 100644
--- a/pkgs/desktops/mate/atril/default.nix
+++ b/pkgs/desktops/mate/atril/default.nix
@@ -14,7 +14,7 @@
 , itstool
 , hicolor-icon-theme
 , texlive
-, wrapGAppsHook
+, wrapGAppsHook3
 , enableEpub ? true
 , webkitgtk_4_1
 , enableDjvu ? true
@@ -39,7 +39,7 @@ stdenv.mkDerivation rec {
   nativeBuildInputs = [
     pkg-config
     gettext
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
diff --git a/pkgs/desktops/mate/caja-extensions/default.nix b/pkgs/desktops/mate/caja-extensions/default.nix
index d3bc563f0729..205dae5e8592 100644
--- a/pkgs/desktops/mate/caja-extensions/default.nix
+++ b/pkgs/desktops/mate/caja-extensions/default.nix
@@ -10,7 +10,7 @@
 , gupnp
 , imagemagick
 , mate-desktop
-, wrapGAppsHook
+, wrapGAppsHook3
 , mateUpdateScript
 }:
 
@@ -26,7 +26,7 @@ stdenv.mkDerivation rec {
   nativeBuildInputs = [
     pkg-config
     gettext
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
diff --git a/pkgs/desktops/mate/caja/default.nix b/pkgs/desktops/mate/caja/default.nix
index a09cef4621a8..59474ac8920f 100644
--- a/pkgs/desktops/mate/caja/default.nix
+++ b/pkgs/desktops/mate/caja/default.nix
@@ -12,7 +12,7 @@
 , mate-desktop
 , hicolor-icon-theme
 , wayland
-, wrapGAppsHook
+, wrapGAppsHook3
 , mateUpdateScript
 }:
 
@@ -28,7 +28,7 @@ stdenv.mkDerivation rec {
   nativeBuildInputs = [
     pkg-config
     gettext
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
diff --git a/pkgs/desktops/mate/caja/with-extensions.nix b/pkgs/desktops/mate/caja/with-extensions.nix
index b9a55b4b9209..a66840ca94a0 100644
--- a/pkgs/desktops/mate/caja/with-extensions.nix
+++ b/pkgs/desktops/mate/caja/with-extensions.nix
@@ -1,7 +1,7 @@
 { stdenv
 , lib
 , glib
-, wrapGAppsHook
+, wrapGAppsHook3
 , xorg
 , caja
 , cajaExtensions
@@ -20,7 +20,7 @@ stdenv.mkDerivation {
 
   nativeBuildInputs = [
     glib
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = lib.forEach selectedExtensions (x: x.buildInputs) ++ selectedExtensions
diff --git a/pkgs/desktops/mate/engrampa/default.nix b/pkgs/desktops/mate/engrampa/default.nix
index d5fb1aea2bbe..2f0404f88fba 100644
--- a/pkgs/desktops/mate/engrampa/default.nix
+++ b/pkgs/desktops/mate/engrampa/default.nix
@@ -10,7 +10,7 @@
 , hicolor-icon-theme
 , json-glib
 , mate-desktop
-, wrapGAppsHook
+, wrapGAppsHook3
 , mateUpdateScript
 # can be defaulted to true once switch to meson
 , withMagic ? stdenv.buildPlatform.canExecute stdenv.hostPlatform, file
@@ -30,7 +30,7 @@ stdenv.mkDerivation rec {
     gettext
     itstool
     libxml2  # for xmllint
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
diff --git a/pkgs/desktops/mate/eom/default.nix b/pkgs/desktops/mate/eom/default.nix
index 98475acb3cd0..792c24c5b327 100644
--- a/pkgs/desktops/mate/eom/default.nix
+++ b/pkgs/desktops/mate/eom/default.nix
@@ -15,7 +15,7 @@
 , gtk3
 , mate-desktop
 , hicolor-icon-theme
-, wrapGAppsHook
+, wrapGAppsHook3
 , mateUpdateScript
 }:
 
@@ -32,7 +32,7 @@ stdenv.mkDerivation rec {
     pkg-config
     gettext
     itstool
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
diff --git a/pkgs/desktops/mate/marco/default.nix b/pkgs/desktops/mate/marco/default.nix
index 598cc51eca46..7006e66d136c 100644
--- a/pkgs/desktops/mate/marco/default.nix
+++ b/pkgs/desktops/mate/marco/default.nix
@@ -16,7 +16,7 @@
 , gtk3
 , mate-desktop
 , mate-settings-daemon
-, wrapGAppsHook
+, wrapGAppsHook3
 , mateUpdateScript
 }:
 
@@ -33,7 +33,7 @@ stdenv.mkDerivation rec {
     pkg-config
     gettext
     itstool
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
diff --git a/pkgs/desktops/mate/mate-applets/default.nix b/pkgs/desktops/mate/mate-applets/default.nix
index 8e358fe29ae0..a15fd0054b92 100644
--- a/pkgs/desktops/mate/mate-applets/default.nix
+++ b/pkgs/desktops/mate/mate-applets/default.nix
@@ -21,7 +21,7 @@
 , upower
 , wirelesstools
 , hicolor-icon-theme
-, wrapGAppsHook
+, wrapGAppsHook3
 , mateUpdateScript
 }:
 
@@ -38,7 +38,7 @@ stdenv.mkDerivation rec {
     gettext
     itstool
     pkg-config
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
diff --git a/pkgs/desktops/mate/mate-calc/default.nix b/pkgs/desktops/mate/mate-calc/default.nix
index 4a4d6db2a3b3..2c11bbef52a3 100644
--- a/pkgs/desktops/mate/mate-calc/default.nix
+++ b/pkgs/desktops/mate/mate-calc/default.nix
@@ -8,7 +8,7 @@
 , libmpc
 , libxml2
 , mpfr
-, wrapGAppsHook
+, wrapGAppsHook3
 , mateUpdateScript
 }:
 
@@ -25,7 +25,7 @@ stdenv.mkDerivation rec {
     gettext
     itstool
     pkg-config
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
diff --git a/pkgs/desktops/mate/mate-control-center/default.nix b/pkgs/desktops/mate/mate-control-center/default.nix
index 8305601204e2..3a052549a7d1 100644
--- a/pkgs/desktops/mate/mate-control-center/default.nix
+++ b/pkgs/desktops/mate/mate-control-center/default.nix
@@ -27,7 +27,7 @@
 , udisks2
 , systemd
 , hicolor-icon-theme
-, wrapGAppsHook
+, wrapGAppsHook3
 , mateUpdateScript
 }:
 
@@ -45,7 +45,7 @@ stdenv.mkDerivation rec {
     gettext
     itstool
     desktop-file-utils
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
diff --git a/pkgs/desktops/mate/mate-desktop/default.nix b/pkgs/desktops/mate/mate-desktop/default.nix
index 4f917028bd80..a60e56cae846 100644
--- a/pkgs/desktops/mate/mate-desktop/default.nix
+++ b/pkgs/desktops/mate/mate-desktop/default.nix
@@ -7,7 +7,7 @@
 , libstartup_notification
 , gtk3
 , dconf
-, wrapGAppsHook
+, wrapGAppsHook3
 , mateUpdateScript
 }:
 
@@ -25,7 +25,7 @@ stdenv.mkDerivation rec {
   nativeBuildInputs = [
     pkg-config
     gettext
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
diff --git a/pkgs/desktops/mate/mate-indicator-applet/default.nix b/pkgs/desktops/mate/mate-indicator-applet/default.nix
index 0a915625958b..ecbe0e8bfc4d 100644
--- a/pkgs/desktops/mate/mate-indicator-applet/default.nix
+++ b/pkgs/desktops/mate/mate-indicator-applet/default.nix
@@ -7,7 +7,7 @@
 , libayatana-indicator
 , mate-panel
 , hicolor-icon-theme
-, wrapGAppsHook
+, wrapGAppsHook3
 , mateUpdateScript
 }:
 
@@ -29,7 +29,7 @@ stdenv.mkDerivation rec {
   nativeBuildInputs = [
     pkg-config
     gettext
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
diff --git a/pkgs/desktops/mate/mate-media/default.nix b/pkgs/desktops/mate/mate-media/default.nix
index 4b2590088e1d..51dcc29f8990 100644
--- a/pkgs/desktops/mate/mate-media/default.nix
+++ b/pkgs/desktops/mate/mate-media/default.nix
@@ -12,7 +12,7 @@
 , mate-desktop
 , mate-panel
 , wayland
-, wrapGAppsHook
+, wrapGAppsHook3
 , mateUpdateScript
 }:
 
@@ -29,7 +29,7 @@ stdenv.mkDerivation rec {
     pkg-config
     gettext
     libtool
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
diff --git a/pkgs/desktops/mate/mate-netbook/default.nix b/pkgs/desktops/mate/mate-netbook/default.nix
index af4e7bebf9b3..0b1c5a747923 100644
--- a/pkgs/desktops/mate/mate-netbook/default.nix
+++ b/pkgs/desktops/mate/mate-netbook/default.nix
@@ -8,7 +8,7 @@
 , libfakekey
 , libXtst
 , mate
-, wrapGAppsHook
+, wrapGAppsHook3
 , mateUpdateScript
 }:
 
@@ -24,7 +24,7 @@ stdenv.mkDerivation rec {
   nativeBuildInputs = [
     pkg-config
     gettext
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
diff --git a/pkgs/desktops/mate/mate-notification-daemon/default.nix b/pkgs/desktops/mate/mate-notification-daemon/default.nix
index 4299f98d4ccc..6ac2b8abaa5d 100644
--- a/pkgs/desktops/mate/mate-notification-daemon/default.nix
+++ b/pkgs/desktops/mate/mate-notification-daemon/default.nix
@@ -12,7 +12,7 @@
 , libxml2
 , mate-desktop
 , mate-panel
-, wrapGAppsHook
+, wrapGAppsHook3
 , mateUpdateScript
 }:
 
@@ -29,7 +29,7 @@ stdenv.mkDerivation rec {
     pkg-config
     gettext
     libxml2 # for xmllint
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
diff --git a/pkgs/desktops/mate/mate-panel/default.nix b/pkgs/desktops/mate/mate-panel/default.nix
index 8ff97affd4db..6ddd142a3fa5 100644
--- a/pkgs/desktops/mate/mate-panel/default.nix
+++ b/pkgs/desktops/mate/mate-panel/default.nix
@@ -18,7 +18,7 @@
 , hicolor-icon-theme
 , wayland
 , gobject-introspection
-, wrapGAppsHook
+, wrapGAppsHook3
 , marco
 , mateUpdateScript
 }:
@@ -37,7 +37,7 @@ stdenv.mkDerivation rec {
     gettext
     itstool
     pkg-config
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
@@ -57,7 +57,7 @@ stdenv.mkDerivation rec {
     glib
     gtk3
     # See https://github.com/mate-desktop/mate-panel/issues/1402
-    # This is propagated for mate_panel_applet_settings_new and applet's wrapGAppsHook
+    # This is propagated for mate_panel_applet_settings_new and applet's wrapGAppsHook3
     gnome.dconf-editor
   ];
 
diff --git a/pkgs/desktops/mate/mate-panel/with-applets.nix b/pkgs/desktops/mate/mate-panel/with-applets.nix
index e3f76645aa7c..dd6f8a6c58b8 100644
--- a/pkgs/desktops/mate/mate-panel/with-applets.nix
+++ b/pkgs/desktops/mate/mate-panel/with-applets.nix
@@ -1,7 +1,7 @@
 { stdenv
 , lib
 , glib
-, wrapGAppsHook
+, wrapGAppsHook3
 , xorg
 , marco
 , mate-panel
@@ -24,7 +24,7 @@ stdenv.mkDerivation {
 
   nativeBuildInputs = [
     glib
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = lib.forEach selectedApplets (x: x.buildInputs) ++ selectedApplets
diff --git a/pkgs/desktops/mate/mate-power-manager/default.nix b/pkgs/desktops/mate/mate-power-manager/default.nix
index 1eaff61fc1b2..42a782f9e841 100644
--- a/pkgs/desktops/mate/mate-power-manager/default.nix
+++ b/pkgs/desktops/mate/mate-power-manager/default.nix
@@ -16,7 +16,7 @@
 , gtk3
 , libtool
 , polkit
-, wrapGAppsHook
+, wrapGAppsHook3
 , mateUpdateScript
 }:
 
@@ -33,7 +33,7 @@ stdenv.mkDerivation rec {
     pkg-config
     gettext
     libtool
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
diff --git a/pkgs/desktops/mate/mate-screensaver/default.nix b/pkgs/desktops/mate/mate-screensaver/default.nix
index 2d2c9bfaf952..930b6d8d814e 100644
--- a/pkgs/desktops/mate/mate-screensaver/default.nix
+++ b/pkgs/desktops/mate/mate-screensaver/default.nix
@@ -13,7 +13,7 @@
 , mate-panel
 , pam
 , systemd
-, wrapGAppsHook
+, wrapGAppsHook3
 , mateUpdateScript
 }:
 
@@ -30,7 +30,7 @@ stdenv.mkDerivation rec {
     pkg-config
     gettext
     libxml2 # provides xmllint
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
diff --git a/pkgs/desktops/mate/mate-session-manager/default.nix b/pkgs/desktops/mate/mate-session-manager/default.nix
index c8b0c94f888e..1ae3a0690e33 100644
--- a/pkgs/desktops/mate/mate-session-manager/default.nix
+++ b/pkgs/desktops/mate/mate-session-manager/default.nix
@@ -15,7 +15,7 @@
 , hicolor-icon-theme
 , mate-desktop
 , mate-screensaver
-, wrapGAppsHook
+, wrapGAppsHook3
 , fetchpatch
 , mateUpdateScript
 }:
@@ -41,7 +41,7 @@ stdenv.mkDerivation rec {
     pkg-config
     gettext
     xtrans
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
diff --git a/pkgs/desktops/mate/mate-settings-daemon/default.nix b/pkgs/desktops/mate/mate-settings-daemon/default.nix
index 09085ed04869..425d23c660f2 100644
--- a/pkgs/desktops/mate/mate-settings-daemon/default.nix
+++ b/pkgs/desktops/mate/mate-settings-daemon/default.nix
@@ -16,7 +16,7 @@
 , mate-desktop
 , pulseaudioSupport ? stdenv.config.pulseaudio or true
 , libpulseaudio
-, wrapGAppsHook
+, wrapGAppsHook3
 , mateUpdateScript
 }:
 
@@ -32,7 +32,7 @@ stdenv.mkDerivation rec {
   nativeBuildInputs = [
     gettext
     pkg-config
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
diff --git a/pkgs/desktops/mate/mate-settings-daemon/wrapped.nix b/pkgs/desktops/mate/mate-settings-daemon/wrapped.nix
index 1bbe53c44786..6031b7f7341f 100644
--- a/pkgs/desktops/mate/mate-settings-daemon/wrapped.nix
+++ b/pkgs/desktops/mate/mate-settings-daemon/wrapped.nix
@@ -1,7 +1,7 @@
 { stdenv
 , mate
 , glib
-, wrapGAppsHook
+, wrapGAppsHook3
 }:
 
 stdenv.mkDerivation {
@@ -9,7 +9,7 @@ stdenv.mkDerivation {
   version = mate.mate-settings-daemon.version;
 
   nativeBuildInputs = [
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
diff --git a/pkgs/desktops/mate/mate-system-monitor/default.nix b/pkgs/desktops/mate/mate-system-monitor/default.nix
index 665d062dc246..f6b38ddec47f 100644
--- a/pkgs/desktops/mate/mate-system-monitor/default.nix
+++ b/pkgs/desktops/mate/mate-system-monitor/default.nix
@@ -10,7 +10,7 @@
 , librsvg
 , polkit
 , systemd
-, wrapGAppsHook
+, wrapGAppsHook3
 , mate-desktop
 , mateUpdateScript
 }:
@@ -28,7 +28,7 @@ stdenv.mkDerivation rec {
     pkg-config
     gettext
     itstool
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
diff --git a/pkgs/desktops/mate/mate-terminal/default.nix b/pkgs/desktops/mate/mate-terminal/default.nix
index 76c002c9299d..fa08aa326411 100644
--- a/pkgs/desktops/mate/mate-terminal/default.nix
+++ b/pkgs/desktops/mate/mate-terminal/default.nix
@@ -9,7 +9,7 @@
 , dconf
 , vte
 , pcre2
-, wrapGAppsHook
+, wrapGAppsHook3
 , mateUpdateScript
 , nixosTests
 }:
@@ -27,7 +27,7 @@ stdenv.mkDerivation rec {
     gettext
     itstool
     pkg-config
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
diff --git a/pkgs/desktops/mate/mate-tweak/default.nix b/pkgs/desktops/mate/mate-tweak/default.nix
index f4c2d76d52b2..7688d934c74e 100644
--- a/pkgs/desktops/mate/mate-tweak/default.nix
+++ b/pkgs/desktops/mate/mate-tweak/default.nix
@@ -7,7 +7,7 @@
 , gtk3
 , gdk-pixbuf
 , gobject-introspection
-, wrapGAppsHook
+, wrapGAppsHook3
 , glib
 , gitUpdater
 }:
@@ -24,7 +24,7 @@ python3Packages.buildPythonApplication rec {
   };
 
   nativeBuildInputs = [
-    wrapGAppsHook
+    wrapGAppsHook3
     intltool
     python3Packages.distutils-extra
     gobject-introspection
diff --git a/pkgs/desktops/mate/mate-user-share/default.nix b/pkgs/desktops/mate/mate-user-share/default.nix
index 6156a7450fa1..3ecfc8a34e90 100644
--- a/pkgs/desktops/mate/mate-user-share/default.nix
+++ b/pkgs/desktops/mate/mate-user-share/default.nix
@@ -13,7 +13,7 @@
 , apacheHttpdPackages
 , hicolor-icon-theme
 , mate
-, wrapGAppsHook
+, wrapGAppsHook3
 , mateUpdateScript
 }:
 
@@ -34,7 +34,7 @@ stdenv.mkDerivation rec {
     gettext
     itstool
     libxml2
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
diff --git a/pkgs/desktops/mate/mate-utils/default.nix b/pkgs/desktops/mate/mate-utils/default.nix
index 35ce76d7c0fa..7763e2960eda 100644
--- a/pkgs/desktops/mate/mate-utils/default.nix
+++ b/pkgs/desktops/mate/mate-utils/default.nix
@@ -16,7 +16,7 @@
 , mate-panel
 , hicolor-icon-theme
 , wayland
-, wrapGAppsHook
+, wrapGAppsHook3
 , mateUpdateScript
 }:
 
@@ -34,7 +34,7 @@ stdenv.mkDerivation rec {
     gettext
     itstool
     inkscape
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
diff --git a/pkgs/desktops/mate/mozo/default.nix b/pkgs/desktops/mate/mozo/default.nix
index 66b7048ffecf..c402cf039300 100644
--- a/pkgs/desktops/mate/mozo/default.nix
+++ b/pkgs/desktops/mate/mozo/default.nix
@@ -6,7 +6,7 @@
 , mate-menus
 , gtk3
 , glib
-, wrapGAppsHook
+, wrapGAppsHook3
 , gobject-introspection
 , mateUpdateScript
 }:
@@ -27,7 +27,7 @@ python3.pkgs.buildPythonApplication rec {
     pkg-config
     gettext
     gobject-introspection
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   propagatedBuildInputs = [
diff --git a/pkgs/desktops/mate/pluma/default.nix b/pkgs/desktops/mate/pluma/default.nix
index f6bfe6eb2ba1..87eca7161f76 100644
--- a/pkgs/desktops/mate/pluma/default.nix
+++ b/pkgs/desktops/mate/pluma/default.nix
@@ -12,7 +12,7 @@
 , gtksourceview4
 , libpeas
 , mate-desktop
-, wrapGAppsHook
+, wrapGAppsHook3
 , mateUpdateScript
 }:
 
@@ -32,7 +32,7 @@ stdenv.mkDerivation rec {
     perl
     pkg-config
     python3.pkgs.wrapPython
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
diff --git a/pkgs/desktops/pantheon/apps/appcenter/default.nix b/pkgs/desktops/pantheon/apps/appcenter/default.nix
index bf99163a5414..2744d925ef0b 100644
--- a/pkgs/desktops/pantheon/apps/appcenter/default.nix
+++ b/pkgs/desktops/pantheon/apps/appcenter/default.nix
@@ -19,7 +19,7 @@
 , pkg-config
 , vala
 , polkit
-, wrapGAppsHook
+, wrapGAppsHook3
 }:
 
 stdenv.mkDerivation rec {
@@ -42,7 +42,7 @@ stdenv.mkDerivation rec {
     ninja
     pkg-config
     vala
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
diff --git a/pkgs/desktops/pantheon/apps/elementary-calendar/default.nix b/pkgs/desktops/pantheon/apps/elementary-calendar/default.nix
index 4f50def6cbd6..24deffaa01ec 100644
--- a/pkgs/desktops/pantheon/apps/elementary-calendar/default.nix
+++ b/pkgs/desktops/pantheon/apps/elementary-calendar/default.nix
@@ -7,7 +7,7 @@
 , pkg-config
 , python3
 , vala
-, wrapGAppsHook
+, wrapGAppsHook3
 , clutter
 , evolution-data-server
 , folks
@@ -39,7 +39,7 @@ stdenv.mkDerivation rec {
     pkg-config
     python3
     vala
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
diff --git a/pkgs/desktops/pantheon/apps/elementary-camera/default.nix b/pkgs/desktops/pantheon/apps/elementary-camera/default.nix
index b1bb55f1d39b..7b0747407e9a 100644
--- a/pkgs/desktops/pantheon/apps/elementary-camera/default.nix
+++ b/pkgs/desktops/pantheon/apps/elementary-camera/default.nix
@@ -7,7 +7,7 @@
 , pkg-config
 , python3
 , vala
-, wrapGAppsHook
+, wrapGAppsHook3
 , glib
 , granite
 , gst_all_1
@@ -34,7 +34,7 @@ stdenv.mkDerivation rec {
     pkg-config
     python3
     vala
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
diff --git a/pkgs/desktops/pantheon/apps/elementary-code/default.nix b/pkgs/desktops/pantheon/apps/elementary-code/default.nix
index 9ecf59d2db6f..d9837b83676e 100644
--- a/pkgs/desktops/pantheon/apps/elementary-code/default.nix
+++ b/pkgs/desktops/pantheon/apps/elementary-code/default.nix
@@ -9,7 +9,7 @@
 , pkg-config
 , polkit
 , vala
-, wrapGAppsHook
+, wrapGAppsHook3
 , editorconfig-core-c
 , granite
 , gtk3
@@ -43,7 +43,7 @@ stdenv.mkDerivation rec {
     pkg-config
     polkit # needed for ITS rules
     vala
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
diff --git a/pkgs/desktops/pantheon/apps/elementary-dock/default.nix b/pkgs/desktops/pantheon/apps/elementary-dock/default.nix
index b564060d06bf..17c0e12969eb 100644
--- a/pkgs/desktops/pantheon/apps/elementary-dock/default.nix
+++ b/pkgs/desktops/pantheon/apps/elementary-dock/default.nix
@@ -19,7 +19,7 @@
 , libdbusmenu-gtk3
 , gnome-menus
 , libgee
-, wrapGAppsHook
+, wrapGAppsHook3
 , meson
 , ninja
 , granite
@@ -44,7 +44,7 @@ stdenv.mkDerivation rec {
     libxml2 # xmllint
     pkg-config
     vala
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
diff --git a/pkgs/desktops/pantheon/apps/elementary-files/default.nix b/pkgs/desktops/pantheon/apps/elementary-files/default.nix
index a77e440bfe39..04711a791463 100644
--- a/pkgs/desktops/pantheon/apps/elementary-files/default.nix
+++ b/pkgs/desktops/pantheon/apps/elementary-files/default.nix
@@ -19,7 +19,7 @@
 , zeitgeist
 , libcloudproviders
 , libgit2-glib
-, wrapGAppsHook
+, wrapGAppsHook3
 , systemd
 }:
 
@@ -42,7 +42,7 @@ stdenv.mkDerivation rec {
     ninja
     pkg-config
     vala
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
diff --git a/pkgs/desktops/pantheon/apps/elementary-mail/default.nix b/pkgs/desktops/pantheon/apps/elementary-mail/default.nix
index ca672cadae9b..8f7a89ea23fe 100644
--- a/pkgs/desktops/pantheon/apps/elementary-mail/default.nix
+++ b/pkgs/desktops/pantheon/apps/elementary-mail/default.nix
@@ -18,7 +18,7 @@
 , glib-networking
 , granite
 , evolution-data-server
-, wrapGAppsHook
+, wrapGAppsHook3
 , libgee
 }:
 
@@ -40,7 +40,7 @@ stdenv.mkDerivation rec {
     pkg-config
     python3
     vala
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
diff --git a/pkgs/desktops/pantheon/apps/elementary-photos/default.nix b/pkgs/desktops/pantheon/apps/elementary-photos/default.nix
index 5170940c9138..4534a8af27ee 100644
--- a/pkgs/desktops/pantheon/apps/elementary-photos/default.nix
+++ b/pkgs/desktops/pantheon/apps/elementary-photos/default.nix
@@ -23,7 +23,7 @@
 , python3
 , libwebp
 , appstream
-, wrapGAppsHook
+, wrapGAppsHook3
 }:
 
 stdenv.mkDerivation rec {
@@ -71,7 +71,7 @@ stdenv.mkDerivation rec {
     pkg-config
     python3
     vala
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
diff --git a/pkgs/desktops/pantheon/apps/elementary-screenshot/default.nix b/pkgs/desktops/pantheon/apps/elementary-screenshot/default.nix
index 1ac5d6979ebb..f8ca0fe62cd7 100644
--- a/pkgs/desktops/pantheon/apps/elementary-screenshot/default.nix
+++ b/pkgs/desktops/pantheon/apps/elementary-screenshot/default.nix
@@ -13,7 +13,7 @@
 , libgee
 , libhandy
 , libcanberra
-, wrapGAppsHook
+, wrapGAppsHook3
 }:
 
 stdenv.mkDerivation rec {
@@ -34,7 +34,7 @@ stdenv.mkDerivation rec {
     pkg-config
     python3
     vala
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
diff --git a/pkgs/desktops/pantheon/apps/elementary-tasks/default.nix b/pkgs/desktops/pantheon/apps/elementary-tasks/default.nix
index d33242b77df2..21065a55a2a7 100644
--- a/pkgs/desktops/pantheon/apps/elementary-tasks/default.nix
+++ b/pkgs/desktops/pantheon/apps/elementary-tasks/default.nix
@@ -7,7 +7,7 @@
 , pkg-config
 , python3
 , vala
-, wrapGAppsHook
+, wrapGAppsHook3
 , clutter-gtk
 , evolution-data-server
 , granite
@@ -38,7 +38,7 @@ stdenv.mkDerivation rec {
     pkg-config
     python3
     vala
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
diff --git a/pkgs/desktops/pantheon/apps/elementary-terminal/default.nix b/pkgs/desktops/pantheon/apps/elementary-terminal/default.nix
index efa672c71142..7109b8372b7d 100644
--- a/pkgs/desktops/pantheon/apps/elementary-terminal/default.nix
+++ b/pkgs/desktops/pantheon/apps/elementary-terminal/default.nix
@@ -15,7 +15,7 @@
 , vte
 , libgee
 , pcre2
-, wrapGAppsHook
+, wrapGAppsHook3
 , xvfb-run
 }:
 
@@ -37,7 +37,7 @@ stdenv.mkDerivation rec {
     pkg-config
     python3
     vala
-    wrapGAppsHook
+    wrapGAppsHook3
     xvfb-run
   ];
 
diff --git a/pkgs/desktops/pantheon/apps/elementary-videos/default.nix b/pkgs/desktops/pantheon/apps/elementary-videos/default.nix
index 6411971fdb05..7fb642ce7b7d 100644
--- a/pkgs/desktops/pantheon/apps/elementary-videos/default.nix
+++ b/pkgs/desktops/pantheon/apps/elementary-videos/default.nix
@@ -11,7 +11,7 @@
 , libgee
 , libhandy
 , gst_all_1
-, wrapGAppsHook
+, wrapGAppsHook3
 }:
 
 stdenv.mkDerivation rec {
@@ -30,7 +30,7 @@ stdenv.mkDerivation rec {
     ninja
     pkg-config
     vala
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
diff --git a/pkgs/desktops/pantheon/apps/switchboard/default.nix b/pkgs/desktops/pantheon/apps/switchboard/default.nix
index f13d90bd088a..a8a0c34853dc 100644
--- a/pkgs/desktops/pantheon/apps/switchboard/default.nix
+++ b/pkgs/desktops/pantheon/apps/switchboard/default.nix
@@ -11,7 +11,7 @@
 , libgee
 , libhandy
 , granite
-, wrapGAppsHook
+, wrapGAppsHook3
 }:
 
 stdenv.mkDerivation rec {
@@ -31,7 +31,7 @@ stdenv.mkDerivation rec {
     pkg-config
     python3
     vala
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
diff --git a/pkgs/desktops/pantheon/apps/switchboard/wrapper.nix b/pkgs/desktops/pantheon/apps/switchboard/wrapper.nix
index e42df9bee060..2702b438f0ec 100644
--- a/pkgs/desktops/pantheon/apps/switchboard/wrapper.nix
+++ b/pkgs/desktops/pantheon/apps/switchboard/wrapper.nix
@@ -1,4 +1,4 @@
-{ wrapGAppsHook
+{ wrapGAppsHook3
 , glib
 , lib
 , stdenv
@@ -32,7 +32,7 @@ stdenv.mkDerivation rec {
 
   nativeBuildInputs = [
     glib
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = lib.forEach selectedPlugs (x: x.buildInputs)
diff --git a/pkgs/desktops/pantheon/desktop/elementary-greeter/default.nix b/pkgs/desktops/pantheon/desktop/elementary-greeter/default.nix
index c3f31624fff2..f4d7451835f0 100644
--- a/pkgs/desktops/pantheon/desktop/elementary-greeter/default.nix
+++ b/pkgs/desktops/pantheon/desktop/elementary-greeter/default.nix
@@ -25,7 +25,7 @@
 , gdk-pixbuf
 , dbus
 , accountsservice
-, wrapGAppsHook
+, wrapGAppsHook3
 }:
 
 stdenv.mkDerivation rec {
@@ -54,7 +54,7 @@ stdenv.mkDerivation rec {
     ninja
     pkg-config
     vala
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
@@ -72,7 +72,7 @@ stdenv.mkDerivation rec {
   ];
 
   mesonFlags = [
-    # A hook does this but after wrapGAppsHook so the files never get wrapped.
+    # A hook does this but after wrapGAppsHook3 so the files never get wrapped.
     "--sbindir=${placeholder "out"}/bin"
     # baked into the program for discovery of the greeter configuration
     "--sysconfdir=/etc"
diff --git a/pkgs/desktops/pantheon/desktop/file-roller-contract/default.nix b/pkgs/desktops/pantheon/desktop/file-roller-contract/default.nix
index c9a24b4906c7..6a2a22ddf83a 100644
--- a/pkgs/desktops/pantheon/desktop/file-roller-contract/default.nix
+++ b/pkgs/desktops/pantheon/desktop/file-roller-contract/default.nix
@@ -8,7 +8,7 @@
 
 stdenv.mkDerivation rec {
   pname = "file-roller-contract";
-  version = "unstable-2021-02-22";
+  version = "0-unstable-2021-02-22";
 
   src = fetchFromGitHub {
     owner = "elementary";
diff --git a/pkgs/desktops/pantheon/desktop/gala/default.nix b/pkgs/desktops/pantheon/desktop/gala/default.nix
index 3cf8a67e9539..ec3541b7c83b 100644
--- a/pkgs/desktops/pantheon/desktop/gala/default.nix
+++ b/pkgs/desktops/pantheon/desktop/gala/default.nix
@@ -20,7 +20,7 @@
 , mesa
 , mutter
 , gnome-settings-daemon
-, wrapGAppsHook
+, wrapGAppsHook3
 , gexiv2
 , systemd
 }:
@@ -58,7 +58,7 @@ stdenv.mkDerivation rec {
     pkg-config
     python3
     vala
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
diff --git a/pkgs/desktops/pantheon/desktop/wingpanel/default.nix b/pkgs/desktops/pantheon/desktop/wingpanel/default.nix
index 8b24dba707c3..7c4d8d93b631 100644
--- a/pkgs/desktops/pantheon/desktop/wingpanel/default.nix
+++ b/pkgs/desktops/pantheon/desktop/wingpanel/default.nix
@@ -2,7 +2,7 @@
 , stdenv
 , fetchFromGitHub
 , nix-update-script
-, wrapGAppsHook
+, wrapGAppsHook3
 , pkg-config
 , meson
 , ninja
@@ -40,7 +40,7 @@ stdenv.mkDerivation rec {
     ninja
     pkg-config
     vala
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
diff --git a/pkgs/desktops/pantheon/desktop/wingpanel/wrapper.nix b/pkgs/desktops/pantheon/desktop/wingpanel/wrapper.nix
index 89a359a4c9d2..da6d61cd1337 100644
--- a/pkgs/desktops/pantheon/desktop/wingpanel/wrapper.nix
+++ b/pkgs/desktops/pantheon/desktop/wingpanel/wrapper.nix
@@ -1,5 +1,5 @@
 { lib
-, wrapGAppsHook
+, wrapGAppsHook3
 , glib
 , stdenv
 , xorg
@@ -30,7 +30,7 @@ stdenv.mkDerivation rec {
 
   nativeBuildInputs = [
     glib
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = lib.forEach selectedIndicators (x: x.buildInputs)
diff --git a/pkgs/desktops/pantheon/granite/7/default.nix b/pkgs/desktops/pantheon/granite/7/default.nix
index 5abffc0cc677..747e24a705ac 100644
--- a/pkgs/desktops/pantheon/granite/7/default.nix
+++ b/pkgs/desktops/pantheon/granite/7/default.nix
@@ -19,7 +19,7 @@
 
 stdenv.mkDerivation rec {
   pname = "granite";
-  version = "7.4.0";
+  version = "7.5.0";
 
   outputs = [ "out" "dev" ];
 
@@ -27,7 +27,7 @@ stdenv.mkDerivation rec {
     owner = "elementary";
     repo = pname;
     rev = version;
-    sha256 = "sha256-z/6GxWfbsngySv2ziNwzhcEfTamxP1DnJ2ld9fft/1U=";
+    sha256 = "sha256-mwivme79zsPcS+Ol8iApECjpQz+fYcBLZwkULagXVvI=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/desktops/pantheon/granite/default.nix b/pkgs/desktops/pantheon/granite/default.nix
index f817a3017b7a..a16045889b9f 100644
--- a/pkgs/desktops/pantheon/granite/default.nix
+++ b/pkgs/desktops/pantheon/granite/default.nix
@@ -12,7 +12,7 @@
 , gettext
 , gsettings-desktop-schemas
 , gobject-introspection
-, wrapGAppsHook
+, wrapGAppsHook3
 }:
 
 stdenv.mkDerivation rec {
@@ -36,7 +36,7 @@ stdenv.mkDerivation rec {
     pkg-config
     python3
     vala
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   propagatedBuildInputs = [
diff --git a/pkgs/desktops/pantheon/services/contractor/default.nix b/pkgs/desktops/pantheon/services/contractor/default.nix
index f4ce10df84cc..26b4e1c28e20 100644
--- a/pkgs/desktops/pantheon/services/contractor/default.nix
+++ b/pkgs/desktops/pantheon/services/contractor/default.nix
@@ -11,7 +11,7 @@
 , libgee
 , dbus
 , glib-networking
-, wrapGAppsHook
+, wrapGAppsHook3
 }:
 
 stdenv.mkDerivation rec {
@@ -32,7 +32,7 @@ stdenv.mkDerivation rec {
     pkg-config
     python3
     vala
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
diff --git a/pkgs/desktops/pantheon/services/elementary-capnet-assist/default.nix b/pkgs/desktops/pantheon/services/elementary-capnet-assist/default.nix
index 4b88ea3e5abd..18448fd0b4f0 100644
--- a/pkgs/desktops/pantheon/services/elementary-capnet-assist/default.nix
+++ b/pkgs/desktops/pantheon/services/elementary-capnet-assist/default.nix
@@ -14,7 +14,7 @@
 , libhandy
 , gcr
 , webkitgtk_4_1
-, wrapGAppsHook
+, wrapGAppsHook3
 }:
 
 stdenv.mkDerivation rec {
@@ -35,7 +35,7 @@ stdenv.mkDerivation rec {
     pkg-config
     python3
     vala
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
diff --git a/pkgs/desktops/pantheon/services/elementary-notifications/default.nix b/pkgs/desktops/pantheon/services/elementary-notifications/default.nix
index 475503bfe420..f21115fd0dab 100644
--- a/pkgs/desktops/pantheon/services/elementary-notifications/default.nix
+++ b/pkgs/desktops/pantheon/services/elementary-notifications/default.nix
@@ -12,7 +12,7 @@
 , libgee
 , libhandy
 , libcanberra-gtk3
-, wrapGAppsHook
+, wrapGAppsHook3
 }:
 
 stdenv.mkDerivation rec {
@@ -32,7 +32,7 @@ stdenv.mkDerivation rec {
     ninja
     pkg-config
     vala
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
@@ -44,6 +44,12 @@ stdenv.mkDerivation rec {
     libhandy
   ];
 
+  postPatch = ''
+    # https://github.com/elementary/notifications/issues/222
+    substituteInPlace src/FdoActionGroup.vala \
+      --replace-fail "out VariantType" "out unowned VariantType"
+  '';
+
   passthru = {
     updateScript = nix-update-script { };
   };
diff --git a/pkgs/desktops/pantheon/services/elementary-settings-daemon/default.nix b/pkgs/desktops/pantheon/services/elementary-settings-daemon/default.nix
index 805956d33279..ed9da1181514 100644
--- a/pkgs/desktops/pantheon/services/elementary-settings-daemon/default.nix
+++ b/pkgs/desktops/pantheon/services/elementary-settings-daemon/default.nix
@@ -18,7 +18,7 @@
 , granite
 , libgee
 , systemd
-, wrapGAppsHook
+, wrapGAppsHook3
 }:
 
 stdenv.mkDerivation rec {
@@ -40,7 +40,7 @@ stdenv.mkDerivation rec {
     pkg-config
     python3
     vala
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
diff --git a/pkgs/desktops/pantheon/services/pantheon-agent-geoclue2/default.nix b/pkgs/desktops/pantheon/services/pantheon-agent-geoclue2/default.nix
index 942e53aaf8a4..20c28133d234 100644
--- a/pkgs/desktops/pantheon/services/pantheon-agent-geoclue2/default.nix
+++ b/pkgs/desktops/pantheon/services/pantheon-agent-geoclue2/default.nix
@@ -12,7 +12,7 @@
 , desktop-file-utils
 , geoclue2
 , granite
-, wrapGAppsHook
+, wrapGAppsHook3
 }:
 
 stdenv.mkDerivation rec {
@@ -32,7 +32,7 @@ stdenv.mkDerivation rec {
     ninja
     pkg-config
     vala
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
diff --git a/pkgs/desktops/pantheon/services/pantheon-agent-polkit/default.nix b/pkgs/desktops/pantheon/services/pantheon-agent-polkit/default.nix
index 9e1c3464dad7..172554fa37ac 100644
--- a/pkgs/desktops/pantheon/services/pantheon-agent-polkit/default.nix
+++ b/pkgs/desktops/pantheon/services/pantheon-agent-polkit/default.nix
@@ -10,7 +10,7 @@
 , libgee
 , granite
 , polkit
-, wrapGAppsHook
+, wrapGAppsHook3
 }:
 
 stdenv.mkDerivation rec {
@@ -29,7 +29,7 @@ stdenv.mkDerivation rec {
     ninja
     pkg-config
     vala
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
diff --git a/pkgs/desktops/pantheon/third-party/wingpanel-indicator-ayatana/default.nix b/pkgs/desktops/pantheon/third-party/wingpanel-indicator-ayatana/default.nix
index f199894d924b..c3c24b02401a 100644
--- a/pkgs/desktops/pantheon/third-party/wingpanel-indicator-ayatana/default.nix
+++ b/pkgs/desktops/pantheon/third-party/wingpanel-indicator-ayatana/default.nix
@@ -15,7 +15,7 @@
 
 stdenv.mkDerivation rec {
   pname = "wingpanel-indicator-ayatana";
-  version = "unstable-2023-04-18";
+  version = "2.0.7-unstable-2023-04-18";
 
   src = fetchFromGitHub {
     owner = "Lafydev";
diff --git a/pkgs/desktops/plasma-5/kde-gtk-config/default.nix b/pkgs/desktops/plasma-5/kde-gtk-config/default.nix
index c55193ae6429..fd3c5e71a3d6 100644
--- a/pkgs/desktops/plasma-5/kde-gtk-config/default.nix
+++ b/pkgs/desktops/plasma-5/kde-gtk-config/default.nix
@@ -1,6 +1,6 @@
 { mkDerivation
 , extra-cmake-modules
-, wrapGAppsHook
+, wrapGAppsHook3
 , glib
 , gtk3
 , karchive
@@ -18,7 +18,7 @@
 
 mkDerivation {
   pname = "kde-gtk-config";
-  nativeBuildInputs = [ extra-cmake-modules wrapGAppsHook ];
+  nativeBuildInputs = [ extra-cmake-modules wrapGAppsHook3 ];
   dontWrapGApps = true; # There is nothing to wrap
   buildInputs = [
     ki18n
diff --git a/pkgs/desktops/rox/rox-filer/default.nix b/pkgs/desktops/rox/rox-filer/default.nix
index 64c658d04a94..0d7b0acaff57 100644
--- a/pkgs/desktops/rox/rox-filer/default.nix
+++ b/pkgs/desktops/rox/rox-filer/default.nix
@@ -3,7 +3,7 @@
 , fetchurl
 , fetchpatch
 , pkg-config
-, wrapGAppsHook
+, wrapGAppsHook3
 , libxml2
 , gtk
 , libSM
@@ -21,7 +21,7 @@ stdenv.mkDerivation rec {
 
   nativeBuildInputs = [
     pkg-config
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
   buildInputs = [ libxml2 gtk shared-mime-info libSM ];
   NIX_LDFLAGS = "-lm";
diff --git a/pkgs/desktops/xfce/applications/catfish/default.nix b/pkgs/desktops/xfce/applications/catfish/default.nix
index 24148731291a..520835bf80d7 100644
--- a/pkgs/desktops/xfce/applications/catfish/default.nix
+++ b/pkgs/desktops/xfce/applications/catfish/default.nix
@@ -11,7 +11,7 @@
 , gtk3
 , python3Packages
 , xfconf
-, wrapGAppsHook
+, wrapGAppsHook3
 }:
 
 python3Packages.buildPythonApplication rec {
@@ -32,7 +32,7 @@ python3Packages.buildPythonApplication rec {
     which
     intltool
     gobject-introspection # for setup hook populating GI_TYPELIB_PATH
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
diff --git a/pkgs/desktops/xfce/applications/xfce4-panel-profiles/default.nix b/pkgs/desktops/xfce/applications/xfce4-panel-profiles/default.nix
index e223f8bc6663..2e25e686ccd5 100644
--- a/pkgs/desktops/xfce/applications/xfce4-panel-profiles/default.nix
+++ b/pkgs/desktops/xfce/applications/xfce4-panel-profiles/default.nix
@@ -1,31 +1,63 @@
-{ mkXfceDerivation, lib, python3, intltool, gettext,
- gtk3, libxfce4ui, libxfce4util, pango, harfbuzz, gdk-pixbuf, atk }:
+{ stdenv
+, lib
+, fetchFromGitLab
+, gettext
+, gobject-introspection
+, intltool
+, wrapGAppsHook3
+, glib
+, gtk3
+, libxfce4ui
+, python3
+, gitUpdater
+}:
 
 let
-  pythonEnv = python3.withPackages(ps: [ ps.pygobject3 ps.psutil ]);
-  makeTypelibPath = lib.makeSearchPathOutput "lib/girepository-1.0" "lib/girepository-1.0";
-in mkXfceDerivation {
-  category = "apps";
+  pythonEnv = python3.withPackages (ps: [
+    ps.pygobject3
+    ps.psutil
+  ]);
+in
+stdenv.mkDerivation (finalAttrs: {
   pname = "xfce4-panel-profiles";
   version = "1.0.14";
 
-  sha256 = "sha256-mGA70t2U4mqEbcrj/DDsPl++EKWyZ8YXzKzzVOrH5h8=";
+  src = fetchFromGitLab {
+    domain = "gitlab.xfce.org";
+    owner = "apps";
+    repo = "xfce4-panel-profiles";
+    rev = "xfce4-panel-profiles-${finalAttrs.version}";
+    sha256 = "sha256-mGA70t2U4mqEbcrj/DDsPl++EKWyZ8YXzKzzVOrH5h8=";
+  };
+
+  nativeBuildInputs = [
+    gettext
+    gobject-introspection
+    intltool
+    wrapGAppsHook3
+  ];
 
-  nativeBuildInputs = [ intltool gettext ];
-  propagatedBuildInputs = [ pythonEnv ];
+  buildInputs = [
+    glib
+    gtk3
+    libxfce4ui
+    pythonEnv
+  ];
 
   configurePhase = ''
+    runHook preConfigure
+    # This is just a handcrafted script and does not accept additional arguments.
     ./configure --prefix=$out
+    runHook postConfigure
   '';
 
-  postFixup = ''
-    wrapProgram $out/bin/xfce4-panel-profiles \
-      --set GI_TYPELIB_PATH ${makeTypelibPath [ gtk3 libxfce4ui libxfce4util pango harfbuzz gdk-pixbuf atk ]}
-  '';
+  passthru.updateScript = gitUpdater { rev-prefix = "xfce4-panel-profiles-"; };
 
   meta = with lib; {
+    homepage = "https://docs.xfce.org/apps/xfce4-panel-profiles/start";
     description = "Simple application to manage Xfce panel layouts";
     mainProgram = "xfce4-panel-profiles";
     maintainers = with maintainers; [ ] ++ teams.xfce.members;
+    platforms = platforms.linux;
   };
-}
+})
diff --git a/pkgs/desktops/xfce/default.nix b/pkgs/desktops/xfce/default.nix
index a1416426a32a..77d783cd9039 100644
--- a/pkgs/desktops/xfce/default.nix
+++ b/pkgs/desktops/xfce/default.nix
@@ -132,8 +132,6 @@ makeScopeWithSplicing' {
 
       xfce4-i3-workspaces-plugin = callPackage ./panel-plugins/xfce4-i3-workspaces-plugin { };
 
-      xfce4-namebar-plugin = callPackage ./panel-plugins/xfce4-namebar-plugin { };
-
       xfce4-netload-plugin = callPackage ./panel-plugins/xfce4-netload-plugin { };
 
       xfce4-notes-plugin = callPackage ./panel-plugins/xfce4-notes-plugin { };
@@ -172,5 +170,6 @@ makeScopeWithSplicing' {
       thunar-bare = self.thunar.override { thunarPlugins = [ ]; }; # added 2019-11-04
 
       xfce4-hardware-monitor-plugin = throw "xfce.xfce4-hardware-monitor-plugin has been removed: abandoned by upstream and does not build"; # added 2023-01-15
+      xfce4-namebar-plugin = throw "xfce.xfce4-namebar-plugin has been removed: abandoned by upstream and does not build"; # added 2024-05-08
     });
 }
diff --git a/pkgs/desktops/xfce/mkXfceDerivation.nix b/pkgs/desktops/xfce/mkXfceDerivation.nix
index 17939e5e2058..7edcb6e2eef2 100644
--- a/pkgs/desktops/xfce/mkXfceDerivation.nix
+++ b/pkgs/desktops/xfce/mkXfceDerivation.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetchFromGitLab, pkg-config, xfce4-dev-tools, hicolor-icon-theme, xfce, wrapGAppsHook, gitUpdater }:
+{ lib, stdenv, fetchFromGitLab, pkg-config, xfce4-dev-tools, hicolor-icon-theme, xfce, wrapGAppsHook3, gitUpdater }:
 
 { category
 , pname
@@ -25,7 +25,7 @@ let
     zipAttrsWithNames (filterAttrNames isList (head attrsets)) (_: concatLists) attrsets;
 
   template = {
-    nativeBuildInputs = [ pkg-config xfce4-dev-tools wrapGAppsHook ];
+    nativeBuildInputs = [ pkg-config xfce4-dev-tools wrapGAppsHook3 ];
     buildInputs = [ hicolor-icon-theme ];
     configureFlags = [ "--enable-maintainer-mode" ];
 
diff --git a/pkgs/desktops/xfce/panel-plugins/xfce4-dockbarx-plugin/default.nix b/pkgs/desktops/xfce/panel-plugins/xfce4-dockbarx-plugin/default.nix
index 2dad2d688eca..8e8da3485638 100644
--- a/pkgs/desktops/xfce/panel-plugins/xfce4-dockbarx-plugin/default.nix
+++ b/pkgs/desktops/xfce/panel-plugins/xfce4-dockbarx-plugin/default.nix
@@ -8,7 +8,7 @@
 , keybinder3
 , pkg-config
 , python3Packages
-, wrapGAppsHook
+, wrapGAppsHook3
 , xfce
 }:
 
@@ -33,7 +33,7 @@ stdenv.mkDerivation rec {
     gobject-introspection
     pkg-config
     python3Packages.wrapPython
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
diff --git a/pkgs/desktops/xfce/panel-plugins/xfce4-namebar-plugin/default.nix b/pkgs/desktops/xfce/panel-plugins/xfce4-namebar-plugin/default.nix
deleted file mode 100644
index 032b29eaef3d..000000000000
--- a/pkgs/desktops/xfce/panel-plugins/xfce4-namebar-plugin/default.nix
+++ /dev/null
@@ -1,43 +0,0 @@
-{ lib, stdenv, pkg-config, fetchFromGitHub, python3, vala
-, gtk3, libwnck, libxfce4util, xfce4-panel, wafHook, xfce
-, gitUpdater
-}:
-
-stdenv.mkDerivation rec {
-  pname = "xfce4-namebar-plugin";
-  version = "1.0.0";
-
-  src = fetchFromGitHub {
-    owner = "HugLifeTiZ";
-    repo = pname;
-    rev = "v${version}";
-    sha256 = "sha256-aKrJzf9rwCyXAJsRIXdBzmJBASuXD5I5kZrp+atx4FA=";
-  };
-
-  nativeBuildInputs = [ pkg-config vala wafHook python3 ];
-  buildInputs = [ gtk3 libwnck libxfce4util xfce4-panel ];
-
-  postPatch = ''
-    substituteInPlace src/namebar.vala --replace 'var dirs = Environment.get_system_data_dirs()' "string[] dirs = { \"$out/share\" }"
-    substituteInPlace src/preferences.vala --replace 'var dir_strings = Environment.get_system_data_dirs()' "string[] dir_strings = { \"$out/share\" }"
-  '';
-
-  passthru.updateScript = gitUpdater {
-    rev-prefix = "v";
-  };
-
-  meta = with lib; {
-    homepage = "https://github.com/HugLifeTiZ/xfce4-namebar-plugin";
-    description = "Plugin which integrates titlebar and window controls into the xfce4-panel";
-    license = licenses.mit;
-    platforms = platforms.linux;
-    maintainers = with maintainers; [ ] ++ teams.xfce.members;
-    # Does not build with vala 0.48 or later
-    # libxfce4panel-2.0.vapi:92.3-92.41: error: overriding method `Xfce.PanelPlugin.remote_event' is incompatible
-    # with base method `bool Xfce.PanelPluginProvider.remote_event (string, GLib.Value, uint)': too few parameters.
-    #               public virtual signal bool remote_event (string name, GLib.Value value);
-    #               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
-    # Upstream has no activity since 20 May 2020
-    broken = true;
-  };
-}
diff --git a/pkgs/development/beam-modules/elixir-ls/default.nix b/pkgs/development/beam-modules/elixir-ls/default.nix
index 2324d641244f..f918916a3a67 100644
--- a/pkgs/development/beam-modules/elixir-ls/default.nix
+++ b/pkgs/development/beam-modules/elixir-ls/default.nix
@@ -4,12 +4,12 @@
 
 let
   pname = "elixir-ls";
-  version = "0.20.0";
+  version = "0.21.1";
   src = fetchFromGitHub {
     owner = "elixir-lsp";
     repo = "elixir-ls";
     rev = "v${version}";
-    hash = "sha256-LVMwDoGR516rwNhhvibu7g4EsaG2O8WOb+Ja+nCQA+k=";
+    hash = "sha256-OBLSj1nqv/p1FYg7DapCnr4EU2EW51MQM+YnZqDkcB4=";
     fetchSubmodules = true;
   };
 in
@@ -21,7 +21,7 @@ mixRelease {
   mixFodDeps = fetchMixDeps {
     pname = "mix-deps-${pname}";
     inherit src version elixir;
-    hash = "sha256-yq2shufOZsTyg8iBGsRrAs6bC3iAa9vtUeS96c5xJl0=";
+    hash = "sha256-3PVMembw3CpYUQ/ynoPKmu0N5iZwoFu9uNjRS+kS4BY=";
   };
 
   # elixir-ls is an umbrella app
diff --git a/pkgs/development/beam-modules/fetch-hex.nix b/pkgs/development/beam-modules/fetch-hex.nix
index 2d1fa623745a..a8241892ee0c 100644
--- a/pkgs/development/beam-modules/fetch-hex.nix
+++ b/pkgs/development/beam-modules/fetch-hex.nix
@@ -7,7 +7,7 @@
 }:
 
 stdenv.mkDerivation ({
-  pname = "hex-source-${pkg}";
+  pname = pkg;
   inherit version;
   dontBuild = true;
   dontConfigure = true;
diff --git a/pkgs/development/chez-modules/chez-mit/default.nix b/pkgs/development/chez-modules/chez-mit/default.nix
index 677e7fc99194..285ee7f14ec9 100644
--- a/pkgs/development/chez-modules/chez-mit/default.nix
+++ b/pkgs/development/chez-modules/chez-mit/default.nix
@@ -13,13 +13,7 @@ stdenv.mkDerivation rec {
 
   buildInputs = [ chez chez-srfi ];
 
-  buildPhase = ''
-    make PREFIX=$out CHEZ=${chez}/bin/scheme
-  '';
-
-  installPhase = ''
-    make install PREFIX=$out CHEZ=${chez}/bin/scheme
-  '';
+  makeFlags = [ "CHEZ=${lib.getExe chez}" ];
 
   doCheck = false;
 
@@ -28,6 +22,7 @@ stdenv.mkDerivation rec {
     homepage = "https://github.com/fedeinthemix/chez-mit/";
     maintainers = [ maintainers.jitwit ];
     license = licenses.gpl3Plus;
+    broken = true;
   };
 
 }
diff --git a/pkgs/development/compilers/aspectj/default.nix b/pkgs/development/compilers/aspectj/default.nix
index 50c54b66b73c..2b7ac5340111 100644
--- a/pkgs/development/compilers/aspectj/default.nix
+++ b/pkgs/development/compilers/aspectj/default.nix
@@ -6,7 +6,7 @@
 }:
 
 let
-  version = "1.9.21.2";
+  version = "1.9.22";
   versionSnakeCase = builtins.replaceStrings [ "." ] [ "_" ] version;
 in
 stdenvNoCC.mkDerivation {
@@ -17,7 +17,7 @@ stdenvNoCC.mkDerivation {
 
   src = fetchurl {
     url = "https://github.com/eclipse/org.aspectj/releases/download/V${versionSnakeCase}/aspectj-${version}.jar";
-    hash = "sha256-wqQtyopS03zX+GJme5YZwWiACqO4GAYFr3XAjzqSFnQ=";
+    hash = "sha256-kQsWu/rS7Qf7Fcg5VZ+QhggvK69aUVD3HCh0aJ2qhfw=";
   };
 
   dontUnpack = true;
diff --git a/pkgs/development/compilers/ballerina/default.nix b/pkgs/development/compilers/ballerina/default.nix
index 5a58d9afd9a8..2c64bb7b54f3 100644
--- a/pkgs/development/compilers/ballerina/default.nix
+++ b/pkgs/development/compilers/ballerina/default.nix
@@ -1,6 +1,6 @@
 { ballerina, lib, writeText, runCommand, makeWrapper, fetchzip, stdenv, openjdk }:
 let
-  version = "2201.8.6";
+  version = "2201.9.0";
   codeName = "swan-lake";
 in stdenv.mkDerivation {
   pname = "ballerina";
@@ -8,7 +8,7 @@ in stdenv.mkDerivation {
 
   src = fetchzip {
     url = "https://dist.ballerina.io/downloads/${version}/ballerina-${version}-${codeName}.zip";
-    hash = "sha256-/oYyYziUTt4OqQfYJdDuRVy9xmMDfhpj24lbisQFfAU=";
+    hash = "sha256-HLZqhVHBghVd52rbbsEoM4FxoEslxPSJ/oimBPNnmMM=";
   };
 
   nativeBuildInputs = [ makeWrapper ];
diff --git a/pkgs/development/compilers/c0/default.nix b/pkgs/development/compilers/c0/default.nix
index de728cb32c9f..15b83980b9c6 100644
--- a/pkgs/development/compilers/c0/default.nix
+++ b/pkgs/development/compilers/c0/default.nix
@@ -15,7 +15,7 @@
 
 stdenv.mkDerivation rec {
   pname = "c0";
-  version = "unstable-2023-09-05";
+  version = "0-unstable-2023-09-05";
 
   src = fetchFromBitbucket {
     owner = "c0-lang";
diff --git a/pkgs/development/compilers/c3c/default.nix b/pkgs/development/compilers/c3c/default.nix
index b68ffc045f64..4310ad931792 100644
--- a/pkgs/development/compilers/c3c/default.nix
+++ b/pkgs/development/compilers/c3c/default.nix
@@ -3,38 +3,51 @@
 , fetchFromGitHub
 , cmake
 , python3
+, curl
+, libxml2
+, libffi
+, xar
 }:
 
 llvmPackages.stdenv.mkDerivation rec {
   pname = "c3c";
-  version = "unstable-2021-07-30";
+  version = "0.5.5";
 
   src = fetchFromGitHub {
     owner = "c3lang";
     repo = pname;
-    rev = "2246b641b16e581aec9059c8358858e10a548d94";
-    sha256 = "VdMKdQsedDQCnsmTxO4HnBj5GH/EThspnotvrAscSqE=";
+    rev = "refs/tags/${version}";
+    hash = "sha256-iOljE1BRVc92NJZj+nr1G6KkBTCwJEUOadXHUDNoPGk=";
   };
 
-  nativeBuildInputs = [ cmake ];
+  postPatch = ''
+    substituteInPlace CMakeLists.txt \
+      --replace-fail "\''${LLVM_LIBRARY_DIRS}" "${llvmPackages.lld.lib}/lib ${llvmPackages.llvm.lib}/lib"
+  '';
+
+  nativeBuildInputs = [
+    cmake
+  ];
 
   buildInputs = [
     llvmPackages.llvm
     llvmPackages.lld
+    curl
+    libxml2
+    libffi
+  ] ++ lib.optionals llvmPackages.stdenv.isDarwin [
+    xar
   ];
 
   nativeCheckInputs = [ python3 ];
 
-  doCheck = true;
+  doCheck = llvmPackages.stdenv.system == "x86_64-linux";
 
   checkPhase = ''
+    runHook preCheck
     ( cd ../resources/testproject; ../../build/c3c build )
     ( cd ../test; python src/tester.py ../build/c3c test_suite )
-  '';
-
-  installPhase = ''
-    install -Dm755 c3c $out/bin/c3c
-    cp -r lib $out
+    runHook postCheck
   '';
 
   meta = with lib; {
diff --git a/pkgs/development/compilers/cakelisp/default.nix b/pkgs/development/compilers/cakelisp/default.nix
index c71f2dd48e21..4c5af8d26b45 100644
--- a/pkgs/development/compilers/cakelisp/default.nix
+++ b/pkgs/development/compilers/cakelisp/default.nix
@@ -3,12 +3,12 @@
 stdenv.mkDerivation {
   pname = "cakelisp";
   # using unstable as it's the only version that builds against gcc-13
-  version = "0.3.0-unstable-2024-04-18";
+  version = "0.3.0-unstable-2024-04-25";
 
   src = fetchgit {
     url = "https://macoy.me/code/macoy/cakelisp";
-    rev = "115ab436056602b7f3a1ca30be40edbfcc88299d";
-    hash = "sha256-rgBtT24aopXLTeDffjXGvJ3RgT+QLlr50Ju9a6ccyzc=";
+    rev = "eb4427f555c3def9d65612672ccfe59e11b14059";
+    hash = "sha256-wFyqAbHrBMFKqMYlBjS6flYHPn3Rxtaiqb1rRmlZrB4=";
   };
 
   buildInputs = [ gcc ];
diff --git a/pkgs/development/compilers/circt/circt-llvm.nix b/pkgs/development/compilers/circt/circt-llvm.nix
index a21b82d93376..efde87b0789c 100644
--- a/pkgs/development/compilers/circt/circt-llvm.nix
+++ b/pkgs/development/compilers/circt/circt-llvm.nix
@@ -23,7 +23,7 @@
     "-DLLVM_BUILD_EXAMPLES=OFF"
     "-DLLVM_OPTIMIZED_TABLEGEN=ON"
     "-DLLVM_ENABLE_PROJECTS=mlir"
-    "-DLLVM_TARGETS_TO_BUILD="
+    "-DLLVM_TARGETS_TO_BUILD=Native"
 
     # This option is needed to install llvm-config
     "-DLLVM_INSTALL_UTILS=ON"
diff --git a/pkgs/development/compilers/circt/default.nix b/pkgs/development/compilers/circt/default.nix
index 58174f3fde0a..2b9f64bb6b20 100644
--- a/pkgs/development/compilers/circt/default.nix
+++ b/pkgs/development/compilers/circt/default.nix
@@ -7,6 +7,7 @@
 , fetchFromGitHub
 , ninja
 , lit
+, z3
 , gitUpdater
 , callPackage
 }:
@@ -17,18 +18,18 @@ let
 in
 stdenv.mkDerivation rec {
   pname = "circt";
-  version = "1.73.0";
+  version = "1.74.0";
   src = fetchFromGitHub {
     owner = "llvm";
     repo = "circt";
     rev = "firtool-${version}";
-    hash = "sha256-C50PiToXrKf94Vg1yv++3xVhIuCW/KVPs0yLv5Fg0dY=";
+    hash = "sha256-RFvWUd98OiL2I3aFrP61LQRZr4FSKrrZ5YOblBKRCA4=";
     fetchSubmodules = true;
   };
 
   requiredSystemFeatures = [ "big-parallel" ];
 
-  nativeBuildInputs = [ cmake ninja git pythonEnv ];
+  nativeBuildInputs = [ cmake ninja git pythonEnv z3 ];
   buildInputs = [ circt-llvm ];
 
   cmakeFlags = [
diff --git a/pkgs/development/compilers/dotnet/8/deps.nix b/pkgs/development/compilers/dotnet/8/deps.nix
index c38b748b20b6..11e45f1d79c3 100644
--- a/pkgs/development/compilers/dotnet/8/deps.nix
+++ b/pkgs/development/compilers/dotnet/8/deps.nix
@@ -1,10 +1,10 @@
 { fetchNuGet }: [
-  (fetchNuGet { pname = "runtime.linux-arm64.Microsoft.NETCore.ILAsm"; sha256 = "82be279b43a39011b6b4e3cbd46565a407ed6d263a037d2298e6401addafa9b9"; url = "https://pkgs.dev.azure.com/dnceng/9ee6d478-d288-47f7-aacc-f6e6d082ae6d/_packaging/a65e5cb4-26c0-410f-9457-06db3c5254be/nuget/v3/flat2/runtime.linux-arm64.microsoft.netcore.ilasm/8.0.3-servicing.24114.23/runtime.linux-arm64.microsoft.netcore.ilasm.8.0.3-servicing.24114.23.nupkg"; version = "8.0.3-servicing.24114.23"; })
-  (fetchNuGet { pname = "runtime.linux-arm64.Microsoft.NETCore.ILDAsm"; sha256 = "773d55eb6a015a74328e9ed3b14821940b9fe4679ca43c837815891dfc3e2611"; url = "https://pkgs.dev.azure.com/dnceng/9ee6d478-d288-47f7-aacc-f6e6d082ae6d/_packaging/a65e5cb4-26c0-410f-9457-06db3c5254be/nuget/v3/flat2/runtime.linux-arm64.microsoft.netcore.ildasm/8.0.3-servicing.24114.23/runtime.linux-arm64.microsoft.netcore.ildasm.8.0.3-servicing.24114.23.nupkg"; version = "8.0.3-servicing.24114.23"; })
-  (fetchNuGet { pname = "runtime.linux-x64.Microsoft.NETCore.ILAsm"; sha256 = "0ckmdww2fcir6s91rj9yr4bfx5ix0xdv96yszipgcw23zlv2xkci"; url = "https://pkgs.dev.azure.com/dnceng/9ee6d478-d288-47f7-aacc-f6e6d082ae6d/_packaging/a65e5cb4-26c0-410f-9457-06db3c5254be/nuget/v3/flat2/runtime.linux-x64.microsoft.netcore.ilasm/8.0.3-servicing.24114.23/runtime.linux-x64.microsoft.netcore.ilasm.8.0.3-servicing.24114.23.nupkg"; version = "8.0.3-servicing.24114.23"; })
-  (fetchNuGet { pname = "runtime.linux-x64.Microsoft.NETCore.ILDAsm"; sha256 = "0qqsbj61rw69l2idakbqfl55a44maklav1csdk8a2gcz6a32riab"; url = "https://pkgs.dev.azure.com/dnceng/9ee6d478-d288-47f7-aacc-f6e6d082ae6d/_packaging/a65e5cb4-26c0-410f-9457-06db3c5254be/nuget/v3/flat2/runtime.linux-x64.microsoft.netcore.ildasm/8.0.3-servicing.24114.23/runtime.linux-x64.microsoft.netcore.ildasm.8.0.3-servicing.24114.23.nupkg"; version = "8.0.3-servicing.24114.23"; })
-  (fetchNuGet { pname = "runtime.osx-arm64.Microsoft.NETCore.ILAsm"; sha256 = "b5d819e6bd3659ecc18b03c5ba0a425dc72645d7b14dcd768df914ae4348dd44"; url = "https://pkgs.dev.azure.com/dnceng/9ee6d478-d288-47f7-aacc-f6e6d082ae6d/_packaging/a65e5cb4-26c0-410f-9457-06db3c5254be/nuget/v3/flat2/runtime.osx-arm64.microsoft.netcore.ilasm/8.0.3-servicing.24114.23/runtime.osx-arm64.microsoft.netcore.ilasm.8.0.3-servicing.24114.23.nupkg"; version = "8.0.3-servicing.24114.23"; })
-  (fetchNuGet { pname = "runtime.osx-arm64.Microsoft.NETCore.ILDAsm"; sha256 = "316473b799e05f6fb6e5f3aaf17fcb5842155cd3fa8853dc31882e0521747e9e"; url = "https://pkgs.dev.azure.com/dnceng/9ee6d478-d288-47f7-aacc-f6e6d082ae6d/_packaging/a65e5cb4-26c0-410f-9457-06db3c5254be/nuget/v3/flat2/runtime.osx-arm64.microsoft.netcore.ildasm/8.0.3-servicing.24114.23/runtime.osx-arm64.microsoft.netcore.ildasm.8.0.3-servicing.24114.23.nupkg"; version = "8.0.3-servicing.24114.23"; })
-  (fetchNuGet { pname = "runtime.osx-x64.Microsoft.NETCore.ILAsm"; sha256 = "191b604c2e06b6a7bc2706455df3cb8e38eb6168fa1433459eda61357821b73e"; url = "https://pkgs.dev.azure.com/dnceng/9ee6d478-d288-47f7-aacc-f6e6d082ae6d/_packaging/a65e5cb4-26c0-410f-9457-06db3c5254be/nuget/v3/flat2/runtime.osx-x64.microsoft.netcore.ilasm/8.0.3-servicing.24114.23/runtime.osx-x64.microsoft.netcore.ilasm.8.0.3-servicing.24114.23.nupkg"; version = "8.0.3-servicing.24114.23"; })
-  (fetchNuGet { pname = "runtime.osx-x64.Microsoft.NETCore.ILDAsm"; sha256 = "0f76a150908c05152314f4d3e591040de757983b7940cadac3fb3ead75fdb9cf"; url = "https://pkgs.dev.azure.com/dnceng/9ee6d478-d288-47f7-aacc-f6e6d082ae6d/_packaging/a65e5cb4-26c0-410f-9457-06db3c5254be/nuget/v3/flat2/runtime.osx-x64.microsoft.netcore.ildasm/8.0.3-servicing.24114.23/runtime.osx-x64.microsoft.netcore.ildasm.8.0.3-servicing.24114.23.nupkg"; version = "8.0.3-servicing.24114.23"; })
+  (fetchNuGet { pname = "runtime.linux-arm64.Microsoft.NETCore.ILAsm"; sha256 = "4ceb7c65d355ac08753d7e255ded7261c9e3d6a3692c4641eda432d84cc5c2ef"; url = "https://pkgs.dev.azure.com/dnceng/9ee6d478-d288-47f7-aacc-f6e6d082ae6d/_packaging/a65e5cb4-26c0-410f-9457-06db3c5254be/nuget/v3/flat2/runtime.linux-arm64.microsoft.netcore.ilasm/8.0.4-servicing.24169.9/runtime.linux-arm64.microsoft.netcore.ilasm.8.0.4-servicing.24169.9.nupkg"; version = "8.0.4-servicing.24169.9"; })
+  (fetchNuGet { pname = "runtime.linux-arm64.Microsoft.NETCore.ILDAsm"; sha256 = "467caa1c74ac499a0359b813a54fcf07f664f543e2b495f33213fe5500355494"; url = "https://pkgs.dev.azure.com/dnceng/9ee6d478-d288-47f7-aacc-f6e6d082ae6d/_packaging/a65e5cb4-26c0-410f-9457-06db3c5254be/nuget/v3/flat2/runtime.linux-arm64.microsoft.netcore.ildasm/8.0.4-servicing.24169.9/runtime.linux-arm64.microsoft.netcore.ildasm.8.0.4-servicing.24169.9.nupkg"; version = "8.0.4-servicing.24169.9"; })
+  (fetchNuGet { pname = "runtime.linux-x64.Microsoft.NETCore.ILAsm"; sha256 = "0q669pidvv27vll5xpap08c2askmaqggsky00ia1d00f3bnnfxbr"; url = "https://pkgs.dev.azure.com/dnceng/9ee6d478-d288-47f7-aacc-f6e6d082ae6d/_packaging/a65e5cb4-26c0-410f-9457-06db3c5254be/nuget/v3/flat2/runtime.linux-x64.microsoft.netcore.ilasm/8.0.4-servicing.24169.9/runtime.linux-x64.microsoft.netcore.ilasm.8.0.4-servicing.24169.9.nupkg"; version = "8.0.4-servicing.24169.9"; })
+  (fetchNuGet { pname = "runtime.linux-x64.Microsoft.NETCore.ILDAsm"; sha256 = "03q3c45cn8vy3qb9q1b8m965j5z9cg9x9ja0l6271lkr4fq72qp4"; url = "https://pkgs.dev.azure.com/dnceng/9ee6d478-d288-47f7-aacc-f6e6d082ae6d/_packaging/a65e5cb4-26c0-410f-9457-06db3c5254be/nuget/v3/flat2/runtime.linux-x64.microsoft.netcore.ildasm/8.0.4-servicing.24169.9/runtime.linux-x64.microsoft.netcore.ildasm.8.0.4-servicing.24169.9.nupkg"; version = "8.0.4-servicing.24169.9"; })
+  (fetchNuGet { pname = "runtime.osx-arm64.Microsoft.NETCore.ILAsm"; sha256 = "5f84f02ef53e9e05fafddf0ef2a249d5a7990c458c90f42b365cd8b9397b2e8e"; url = "https://pkgs.dev.azure.com/dnceng/9ee6d478-d288-47f7-aacc-f6e6d082ae6d/_packaging/a65e5cb4-26c0-410f-9457-06db3c5254be/nuget/v3/flat2/runtime.osx-arm64.microsoft.netcore.ilasm/8.0.4-servicing.24169.9/runtime.osx-arm64.microsoft.netcore.ilasm.8.0.4-servicing.24169.9.nupkg"; version = "8.0.4-servicing.24169.9"; })
+  (fetchNuGet { pname = "runtime.osx-arm64.Microsoft.NETCore.ILDAsm"; sha256 = "171f006df766e439a3080496dd6e4899649e52085ca6afdb375caa57d04eb998"; url = "https://pkgs.dev.azure.com/dnceng/9ee6d478-d288-47f7-aacc-f6e6d082ae6d/_packaging/a65e5cb4-26c0-410f-9457-06db3c5254be/nuget/v3/flat2/runtime.osx-arm64.microsoft.netcore.ildasm/8.0.4-servicing.24169.9/runtime.osx-arm64.microsoft.netcore.ildasm.8.0.4-servicing.24169.9.nupkg"; version = "8.0.4-servicing.24169.9"; })
+  (fetchNuGet { pname = "runtime.osx-x64.Microsoft.NETCore.ILAsm"; sha256 = "5e1652bd1d0194300849ffaf1ef3371795f8d63889e685c2ef74434c33608f1e"; url = "https://pkgs.dev.azure.com/dnceng/9ee6d478-d288-47f7-aacc-f6e6d082ae6d/_packaging/a65e5cb4-26c0-410f-9457-06db3c5254be/nuget/v3/flat2/runtime.osx-x64.microsoft.netcore.ilasm/8.0.4-servicing.24169.9/runtime.osx-x64.microsoft.netcore.ilasm.8.0.4-servicing.24169.9.nupkg"; version = "8.0.4-servicing.24169.9"; })
+  (fetchNuGet { pname = "runtime.osx-x64.Microsoft.NETCore.ILDAsm"; sha256 = "e3b4ef11f3f8f625730fad3f59aa84a82c63f1921eb4145109723cd9f458e20b"; url = "https://pkgs.dev.azure.com/dnceng/9ee6d478-d288-47f7-aacc-f6e6d082ae6d/_packaging/a65e5cb4-26c0-410f-9457-06db3c5254be/nuget/v3/flat2/runtime.osx-x64.microsoft.netcore.ildasm/8.0.4-servicing.24169.9/runtime.osx-x64.microsoft.netcore.ildasm.8.0.4-servicing.24169.9.nupkg"; version = "8.0.4-servicing.24169.9"; })
 ]
diff --git a/pkgs/development/compilers/dotnet/8/release-info.json b/pkgs/development/compilers/dotnet/8/release-info.json
index 60992556a837..6b829ab65903 100644
--- a/pkgs/development/compilers/dotnet/8/release-info.json
+++ b/pkgs/development/compilers/dotnet/8/release-info.json
@@ -1,5 +1,5 @@
 {
-  "tarballHash": "sha256-GCzqK/3KGbwTRTwnwZFUCBIQnp8f0bjuUrDNTCghXyQ=",
-  "artifactsUrl": "https://dotnetcli.azureedge.net/source-built-artifacts/assets/Private.SourceBuilt.Artifacts.8.0.103-servicing.24117.1.centos.8-x64.tar.gz",
-  "artifactsHash": "sha256-6t7vjX/MQVp7Mk1c9v5sjcwwLUImLPdD/bvnT5ZGBEs="
+  "tarballHash": "sha256-Hu3mq+cJpbS6Qzvt3PmRe4iRbWJDuMUaNmRlS6tuphw=",
+  "artifactsUrl": "https://dotnetcli.azureedge.net/source-built-artifacts/assets/Private.SourceBuilt.Artifacts.8.0.104-servicing.24171.1.centos.8-x64.tar.gz",
+  "artifactsHash": "sha256-+ft4PIFOwfv5Z8VqW6bt71LP/HuvTWRTDYnB71Ti0O8="
 }
diff --git a/pkgs/development/compilers/dotnet/8/release.json b/pkgs/development/compilers/dotnet/8/release.json
index 9a63353dcb4b..b1ea86dba79a 100644
--- a/pkgs/development/compilers/dotnet/8/release.json
+++ b/pkgs/development/compilers/dotnet/8/release.json
@@ -1,10 +1,10 @@
 {
-  "release": "8.0.4",
+  "release": "8.0.5",
   "channel": "8.0",
-  "tag": "v8.0.4",
-  "sdkVersion": "8.0.104",
-  "runtimeVersion": "8.0.4",
-  "aspNetCoreVersion": "8.0.4",
+  "tag": "v8.0.5",
+  "sdkVersion": "8.0.105",
+  "runtimeVersion": "8.0.5",
+  "aspNetCoreVersion": "8.0.5",
   "sourceRepository": "https://github.com/dotnet/dotnet",
-  "sourceVersion": "83659133a1aa2b2d94f9c4ecebfa10d960e27706"
+  "sourceVersion": "181780576f29353fd077b649e7624cf806e882e7"
 }
diff --git a/pkgs/development/compilers/dotnet/build-dotnet.nix b/pkgs/development/compilers/dotnet/build-dotnet.nix
index f6802e62c70d..11ece5397166 100644
--- a/pkgs/development/compilers/dotnet/build-dotnet.nix
+++ b/pkgs/development/compilers/dotnet/build-dotnet.nix
@@ -26,6 +26,7 @@ assert if type == "sdk" then packages != null else true;
 , mkNugetDeps
 , callPackage
 , dotnetCorePackages
+, xmlstarlet
 }:
 
 let
@@ -47,6 +48,9 @@ let
 
   targetRid = dotnetCorePackages.systemToDotnetRid stdenv.targetPlatform.system;
 
+  sigtool = callPackage ./sigtool.nix {};
+  signAppHost = callPackage ./sign-apphost.nix {};
+
 in
 mkCommon type rec {
   inherit pname version;
@@ -54,7 +58,11 @@ mkCommon type rec {
   # Some of these dependencies are `dlopen()`ed.
   nativeBuildInputs = [
     makeWrapper
-  ] ++ lib.optional stdenv.isLinux autoPatchelfHook;
+  ] ++ lib.optional stdenv.isLinux autoPatchelfHook
+  ++ lib.optionals (type == "sdk" && stdenv.isDarwin) [
+    xmlstarlet
+    sigtool
+  ];
 
   buildInputs = [
     stdenv.cc.cc
@@ -71,6 +79,16 @@ mkCommon type rec {
 
   sourceRoot = ".";
 
+  postPatch = if type == "sdk" && stdenv.isDarwin then ''
+    xmlstarlet ed \
+      --inplace \
+      -s //_:Project -t elem -n Import \
+      -i \$prev -t attr -n Project -v "${signAppHost}" \
+      sdk/*/Sdks/Microsoft.NET.Sdk/targets/Microsoft.NET.Sdk.targets
+
+    codesign --remove-signature packs/Microsoft.NETCore.App.Host.osx-*/*/runtimes/osx-*/native/{apphost,singlefilehost}
+  '' else null;
+
   dontPatchELF = true;
   noDumpEnvVars = true;
 
@@ -108,6 +126,14 @@ mkCommon type rec {
       $out/packs/Microsoft.NETCore.App.Host.${targetRid}/*/runtimes/${targetRid}/native/*host
   '';
 
+  # fixes: Could not load ICU data. UErrorCode: 2
+  propagatedSandboxProfile = lib.optionalString stdenv.isDarwin ''
+    (allow file-read* (subpath "/usr/share/icu"))
+    (allow file-read* (subpath "/private/var/db/mds/system"))
+    (allow mach-lookup (global-name "com.apple.SecurityServer")
+                       (global-name "com.apple.system.opendirectoryd.membership"))
+  '';
+
   passthru = {
     inherit icu;
   } // lib.optionalAttrs (type == "sdk") {
diff --git a/pkgs/development/compilers/dotnet/common.nix b/pkgs/development/compilers/dotnet/common.nix
index 49f3e3be4d77..e26fd0e33770 100644
--- a/pkgs/development/compilers/dotnet/common.nix
+++ b/pkgs/development/compilers/dotnet/common.nix
@@ -50,9 +50,18 @@
           runtime ? finalAttrs.finalPackage,
           runInputs ? [],
           run ? null,
+          runAllowNetworking ? false,
         }:
         let
-          built = runCommand "dotnet-test-${name}" { buildInputs = [ finalAttrs.finalPackage ]; } (''
+          sdk = finalAttrs.finalPackage;
+          built = runCommand "dotnet-test-${name}" {
+            buildInputs = [ sdk ];
+            # make sure ICU works in a sandbox
+            propagatedSandboxProfile = toString sdk.__propagatedSandboxProfile + ''
+              (allow network-inbound (local ip))
+              (allow mach-lookup (global-name "com.apple.FSEvents"))
+            '';
+          } (''
             HOME=$PWD/.home
             dotnet new nugetconfig
             dotnet nuget disable source nuget
@@ -65,11 +74,19 @@
           if run == null
             then built
           else
-            runCommand "${built.name}-run" { src = built; nativeBuildInputs = runInputs; } (
-              lib.optionalString (runtime != null) ''
-                # TODO: use runtime here
-                export DOTNET_ROOT=${runtime}
-              '' + run);
+            runCommand "${built.name}-run" ({
+              src = built;
+              nativeBuildInputs = [ built ] ++ runInputs;
+            } // lib.optionalAttrs (stdenv.isDarwin && runAllowNetworking) {
+              sandboxProfile = ''
+                (allow network-inbound (local ip))
+                (allow mach-lookup (global-name "com.apple.FSEvents"))
+              '';
+              __darwinAllowLocalNetworking = true;
+            }) (lib.optionalString (runtime != null) ''
+              # TODO: use runtime here
+              export DOTNET_ROOT=${runtime}
+            '' + run);
 
       # Setting LANG to something other than 'C' forces the runtime to search
       # for ICU, which will be required in most user environments.
@@ -127,6 +144,7 @@
           expect <<"EOF"
             set status 1
             spawn $env(src)/test
+            proc abort { } { exit 2 }
             expect_before default abort
             expect -re {Now listening on: ([^\r]+)\r} {
               set url $expect_out(1,string)
@@ -138,11 +156,14 @@
               exit 1
             }
             send \x03
+            expect_before timeout abort
+            expect eof
             catch wait result
             exit [lindex $result 3]
           EOF
           touch $out
         '';
+        runAllowNetworking = true;
       };
     } // args.passthru.tests or {};
   } // args.passthru or {};
diff --git a/pkgs/development/compilers/dotnet/stage0.nix b/pkgs/development/compilers/dotnet/stage0.nix
index e0caad3f9a67..5806a5ee6de8 100644
--- a/pkgs/development/compilers/dotnet/stage0.nix
+++ b/pkgs/development/compilers/dotnet/stage0.nix
@@ -25,8 +25,6 @@ let
 
   patchNupkgs = pkgsBuildHost.callPackage ./patch-nupkgs.nix {};
 
-  signAppHost = callPackage ./sign-apphost.nix {};
-
   deps = mkNugetDeps {
     name = "dotnet-vmr-deps";
     sourceFile = depsFile;
@@ -51,12 +49,6 @@ let
         -s //Project -t elem -n Import \
         -i \$prev -t attr -n Project -v "${./patch-restored-packages.proj}" \
         src/*/Directory.Build.targets
-    '' + lib.optionalString stdenv.isDarwin ''
-      xmlstarlet ed \
-        --inplace \
-        -s //Project -t elem -n Import \
-        -i \$prev -t attr -n Project -v "${signAppHost}" \
-        src/runtime/Directory.Build.targets
     '';
 
     postConfigure = old.postConfigure or "" + ''
diff --git a/pkgs/development/compilers/dotnet/versions/6.0.nix b/pkgs/development/compilers/dotnet/versions/6.0.nix
index 1e4331ea4805..3e0694666f08 100644
--- a/pkgs/development/compilers/dotnet/versions/6.0.nix
+++ b/pkgs/development/compilers/dotnet/versions/6.0.nix
@@ -4,202 +4,202 @@
 
 let
   packages = { fetchNuGet }: [
-      (fetchNuGet { pname = "Microsoft.AspNetCore.App.Runtime.linux-arm"; version = "6.0.29"; sha256 = "1ww2rsf46bm3mrgq590ky2q2qdxx9q63my661xff24f0s4h2iy7r"; })
-      (fetchNuGet { pname = "Microsoft.AspNetCore.App.Runtime.linux-arm64"; version = "6.0.29"; sha256 = "1kkyqzlmhmms1nl08hlrss75lc8yy8qvb0kx23x0fg1dmyqnnzmw"; })
-      (fetchNuGet { pname = "Microsoft.AspNetCore.App.Runtime.linux-musl-arm64"; version = "6.0.29"; sha256 = "02yxbf6s8ncxl5gp2yq7dl08p2i3iy21bjahy9bpw44cqwcf9crs"; })
-      (fetchNuGet { pname = "Microsoft.AspNetCore.App.Runtime.linux-musl-x64"; version = "6.0.29"; sha256 = "0wdy09kilnasa64jad3j2piggr7iad9z1jhxc24vchq9nalhdbxk"; })
-      (fetchNuGet { pname = "Microsoft.AspNetCore.App.Runtime.linux-x64"; version = "6.0.29"; sha256 = "0z359wbz3014rwz7cdcr60qr6mrcwsbwwh36g59a5hncxb1g73rj"; })
-      (fetchNuGet { pname = "Microsoft.AspNetCore.App.Runtime.osx-x64"; version = "6.0.29"; sha256 = "031kalc7mp8w35rwvnb13jbwwi8cgmny7nywsk3717iy6blxldih"; })
-      (fetchNuGet { pname = "Microsoft.AspNetCore.App.Runtime.win-arm64"; version = "6.0.29"; sha256 = "04zs1sgfxnlbd9csalxlzciwapz64mn4d284l6qr0yj12v6jjzyz"; })
-      (fetchNuGet { pname = "Microsoft.AspNetCore.App.Runtime.win-x64"; version = "6.0.29"; sha256 = "0byixcrwj7ixz60lvg7c6r3f132br4pfrjv0w0fh99b3iwzrf114"; })
-      (fetchNuGet { pname = "Microsoft.AspNetCore.App.Runtime.win-x86"; version = "6.0.29"; sha256 = "08s37g8x0m6ck862cy44g1khp3ncynk7z9czbknpa4fw8s24g4mz"; })
-      (fetchNuGet { pname = "Microsoft.AspNetCore.App.Runtime.win-arm"; version = "6.0.29"; sha256 = "0lbmyxancwikzhiqhyvlv8vd1868fj0yjchm6kby58b6x7h9fawb"; })
-      (fetchNuGet { pname = "Microsoft.AspNetCore.App.Ref"; version = "6.0.29"; sha256 = "1ld7aipybxbhwnybimsnhv09ib9ib824zkj11qk3aq7ncz6pfazr"; })
-      (fetchNuGet { pname = "Microsoft.AspNetCore.App.Runtime.linux-musl-arm"; version = "6.0.29"; sha256 = "0yl3i637jhp2si9dls0yd528q9w0cm59w079wyyxgyffyy2g2553"; })
-      (fetchNuGet { pname = "Microsoft.AspNetCore.App.Runtime.osx-arm64"; version = "6.0.29"; sha256 = "0jhcjy60rjwbv2a8qcrkj2im3qv4mvg1ar9gza5199dciigsh968"; })
-      (fetchNuGet { pname = "Microsoft.NETCore.App.Host.linux-arm"; version = "6.0.29"; sha256 = "0wy5hs9h0214i2b2jj0yc3r8lr92ai6iszy3llvyzlb4jb5yzgzq"; })
-      (fetchNuGet { pname = "Microsoft.NETCore.App.Host.linux-arm64"; version = "6.0.29"; sha256 = "1bxmnw7zmjv1wxggzv7qf27jjfb01f2x8440a67lkzxsnrl0cd4r"; })
-      (fetchNuGet { pname = "Microsoft.NETCore.App.Host.linux-musl-arm64"; version = "6.0.29"; sha256 = "0q6fwydh0rhm1p8q11zwi7l4qkvw7fh41s4rhfhwx9jn7vxw9adv"; })
-      (fetchNuGet { pname = "Microsoft.NETCore.App.Host.linux-musl-x64"; version = "6.0.29"; sha256 = "1whzwlnh0cv184smn0ddhd9ssbrlqlj67a12yw4b0l15xsx51n78"; })
-      (fetchNuGet { pname = "Microsoft.NETCore.App.Host.linux-x64"; version = "6.0.29"; sha256 = "1g9qlb4k3i8zq5kn4y8v7lc9mqhy3ikh2bla30nqv86iwaclrwb7"; })
-      (fetchNuGet { pname = "Microsoft.NETCore.App.Host.osx-x64"; version = "6.0.29"; sha256 = "03rzclkvl2gc7wakh0xqhnj6zl32b91igrnyhd69pzr3mql5kdll"; })
-      (fetchNuGet { pname = "Microsoft.NETCore.App.Host.win-arm64"; version = "6.0.29"; sha256 = "18qk2ahkddzd34zwz4q0gg5cgrcdmg00hlkfxp4h18gyq8i5bc0d"; })
-      (fetchNuGet { pname = "Microsoft.NETCore.App.Host.win-x64"; version = "6.0.29"; sha256 = "0kh3lrzpz7y42iqa4vdhw4mg51vf4y2x8l4lg767mzbx0sd4xllv"; })
-      (fetchNuGet { pname = "Microsoft.NETCore.App.Host.win-x86"; version = "6.0.29"; sha256 = "15sz26wgpnfrp9gqspwdhj64lhlnjv8id8s6bblxxkkwa6040ls6"; })
-      (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.linux-arm"; version = "6.0.29"; sha256 = "0lnq5pqmsgh1fv0q5cxx1bn3lvxmrd4xvx6vsn2mjahzkvpzjgxr"; })
-      (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.linux-arm64"; version = "6.0.29"; sha256 = "0jzzkdbqikwq96plmwrmjhpv7v6g0l0bz50swbs27vjf45msbj42"; })
-      (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.linux-musl-arm64"; version = "6.0.29"; sha256 = "0ggicsy3zija6v76mv0rddg0ga6spxn4i9skq9fr7s6a9xccbgqb"; })
-      (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.linux-musl-x64"; version = "6.0.29"; sha256 = "17ma2g0j6klpbnxbv402f8hn1rrvq52f3s9wkz8zllh7zbsqin69"; })
-      (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.linux-x64"; version = "6.0.29"; sha256 = "0gv5dnd44xj1yidzd70b01s5a19khbq757llkfykgwf7wl4a89cf"; })
-      (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.osx-x64"; version = "6.0.29"; sha256 = "1bk2n7csgnvqma5yv550037xg4ph4j11gp4m5hn7s4sy23cfc5xp"; })
-      (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.win-arm64"; version = "6.0.29"; sha256 = "1k4jkjqrbgsnn8r220vh82s20b38h5hrks579a48bsv1288i0zhn"; })
-      (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.win-x64"; version = "6.0.29"; sha256 = "0hhypwr4202n8nvpz10ac1q48ryjr7d4xj34r4c79mw49fvh1n61"; })
-      (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.win-x86"; version = "6.0.29"; sha256 = "01d27mw1zsfx5wdw7515zg68wvwwl7ia579l7bkkbbzbmbb7n6r4"; })
-      (fetchNuGet { pname = "Microsoft.NETCore.DotNetAppHost"; version = "6.0.29"; sha256 = "16cqxd6kh9dvxrbsjj3ls317ql7cwj036gdqnbg31dpcl9qmib47"; })
-      (fetchNuGet { pname = "Microsoft.NETCore.DotNetHost"; version = "6.0.29"; sha256 = "1alfbxqjq7jyyh62lbw2szjfchmc32ywh10x48hcjkscnqvn32fv"; })
-      (fetchNuGet { pname = "Microsoft.NETCore.DotNetHostPolicy"; version = "6.0.29"; sha256 = "1q9hbz6qv8gx2v0vpv21i6m0m2rw2jk1956gc0ybj5l5fppqfzqr"; })
-      (fetchNuGet { pname = "Microsoft.NETCore.DotNetHostResolver"; version = "6.0.29"; sha256 = "1sf3jvbscph4yrljhpiiyyqgw70qcwcym0jb74ql3aw0cr3gqbh5"; })
-      (fetchNuGet { pname = "runtime.linux-arm64.Microsoft.NETCore.DotNetAppHost"; version = "6.0.29"; sha256 = "01dvbid18120g6fgxcb79qfz9628qwm0kr5j88mincvdzklz4k9n"; })
-      (fetchNuGet { pname = "runtime.linux-arm64.Microsoft.NETCore.DotNetHost"; version = "6.0.29"; sha256 = "15f5mscfmj6cn771wzxqszxfjqx93lvfa2dmdiyg9vx8nyciara5"; })
-      (fetchNuGet { pname = "runtime.linux-arm64.Microsoft.NETCore.DotNetHostPolicy"; version = "6.0.29"; sha256 = "05m50dprl9y1jq40z5wicizwdb669nbp942lmnk282rkvga79wh6"; })
-      (fetchNuGet { pname = "runtime.linux-arm64.Microsoft.NETCore.DotNetHostResolver"; version = "6.0.29"; sha256 = "11dnr4r4sj9pzmayavs69f274ba4xvynxh4mj46ynkaiwf423imq"; })
-      (fetchNuGet { pname = "runtime.linux-arm.Microsoft.NETCore.DotNetAppHost"; version = "6.0.29"; sha256 = "1f9m1rqfbz6p8h574f9ylw512w6njvdl1a52hcjcjf4y6wjvwm13"; })
-      (fetchNuGet { pname = "runtime.linux-arm.Microsoft.NETCore.DotNetHost"; version = "6.0.29"; sha256 = "1sk1fdz3d6gm44qsaqavqc1zdl1kjc1m29sk2rlpw4lml1aa527x"; })
-      (fetchNuGet { pname = "runtime.linux-arm.Microsoft.NETCore.DotNetHostPolicy"; version = "6.0.29"; sha256 = "1gly6h5vnmp2h3mj2jqym6nwg3swp8ihsq2s56j1b7mdxjnbhilk"; })
-      (fetchNuGet { pname = "runtime.linux-arm.Microsoft.NETCore.DotNetHostResolver"; version = "6.0.29"; sha256 = "1hnbr15han7261jjnx6pkyhi3bklyd3sbg24x1yqxac36f7xcvwx"; })
-      (fetchNuGet { pname = "runtime.linux-musl-arm64.Microsoft.NETCore.DotNetAppHost"; version = "6.0.29"; sha256 = "06ip2z9j02ak5nqrbm5vzs6lyv8d1g959xmx2h4b24ddj1zrkid0"; })
-      (fetchNuGet { pname = "runtime.linux-musl-arm64.Microsoft.NETCore.DotNetHost"; version = "6.0.29"; sha256 = "0j089aayx9g653agaqbwk9101nxdiy278j1k4yaj20a78bw6cdsm"; })
-      (fetchNuGet { pname = "runtime.linux-musl-arm64.Microsoft.NETCore.DotNetHostPolicy"; version = "6.0.29"; sha256 = "163b5p3mwy6v0lp00ardag41gn90vv25jfkrawwhqvzjx9i7gm6x"; })
-      (fetchNuGet { pname = "runtime.linux-musl-arm64.Microsoft.NETCore.DotNetHostResolver"; version = "6.0.29"; sha256 = "0j2dwpr1mzm43nvw1lqyqk23gxf0iwx2j6lpffq43dpx5n3bdi0a"; })
-      (fetchNuGet { pname = "runtime.linux-musl-x64.Microsoft.NETCore.DotNetAppHost"; version = "6.0.29"; sha256 = "1ax7sjajicibkz4zdvdx65vjpc4xdd6q88zgcqfi22hvfpcdgbni"; })
-      (fetchNuGet { pname = "runtime.linux-musl-x64.Microsoft.NETCore.DotNetHost"; version = "6.0.29"; sha256 = "1rxcxafv84lcmskdlhxa8pvm32fvcgn1vnmcrsksb3g1ibvh1bhv"; })
-      (fetchNuGet { pname = "runtime.linux-musl-x64.Microsoft.NETCore.DotNetHostPolicy"; version = "6.0.29"; sha256 = "03qxxkh1wk3rswssglnhrff6k8pajbjalzp95xyg9pyd0xaq5i4k"; })
-      (fetchNuGet { pname = "runtime.linux-musl-x64.Microsoft.NETCore.DotNetHostResolver"; version = "6.0.29"; sha256 = "0wq6mjg0apqnvv9axdkvka8c0swap8r4n241kvm7xqrlg88dhlvz"; })
-      (fetchNuGet { pname = "runtime.linux-x64.Microsoft.NETCore.DotNetAppHost"; version = "6.0.29"; sha256 = "0a63sh3i71nwwgw83194k903yc3j9z1wnlnfbcj60w5i3kwifnnp"; })
-      (fetchNuGet { pname = "runtime.linux-x64.Microsoft.NETCore.DotNetHost"; version = "6.0.29"; sha256 = "1by4lbzv90lzl1zrgycrpgrq7b3dkc023npixsihx0sw0vc29s1m"; })
-      (fetchNuGet { pname = "runtime.linux-x64.Microsoft.NETCore.DotNetHostPolicy"; version = "6.0.29"; sha256 = "1pvr7bh9hvg55r4d4yjm5zlqmdnpk5jbi76xjkhw7vdwkp9133rh"; })
-      (fetchNuGet { pname = "runtime.linux-x64.Microsoft.NETCore.DotNetHostResolver"; version = "6.0.29"; sha256 = "0k7k4rhq5d9d2rwpqppddhdw633509v1dxs9ii2cvk8pz0vcl2ll"; })
-      (fetchNuGet { pname = "runtime.osx-x64.Microsoft.NETCore.DotNetAppHost"; version = "6.0.29"; sha256 = "0mvyfmmsn40cmn7n8mavspflrz2rahfzmqy4f8vnhdfb2pmirbkb"; })
-      (fetchNuGet { pname = "runtime.osx-x64.Microsoft.NETCore.DotNetHost"; version = "6.0.29"; sha256 = "1hyyhbpvzvx56lbbk43vdlajz1x5mb17155j7k0lbnpp29gr2hn9"; })
-      (fetchNuGet { pname = "runtime.osx-x64.Microsoft.NETCore.DotNetHostPolicy"; version = "6.0.29"; sha256 = "0012c5f6qmgvky5bff9gpcwmc9rydhrs9vd0j2hcqggdixcfv5f0"; })
-      (fetchNuGet { pname = "runtime.osx-x64.Microsoft.NETCore.DotNetHostResolver"; version = "6.0.29"; sha256 = "1a1hvalw80kaw2prixzzjr6s4l2q2q73vibqh09cn0hp09zbsr1g"; })
-      (fetchNuGet { pname = "runtime.win-arm64.Microsoft.NETCore.DotNetAppHost"; version = "6.0.29"; sha256 = "0agminm16ksiplxi3lb7csinzbr7r315wl0a32spyy0qbmzpfv4h"; })
-      (fetchNuGet { pname = "runtime.win-arm64.Microsoft.NETCore.DotNetHost"; version = "6.0.29"; sha256 = "19x3w376180dh7l9rn82rv4jgcfl7rbrc1ckr9x6nbkmldgq8bxq"; })
-      (fetchNuGet { pname = "runtime.win-arm64.Microsoft.NETCore.DotNetHostPolicy"; version = "6.0.29"; sha256 = "1jxxx3zh1hzkfxk9m1pawlcg5h5x8bb6jwj0vxb0cflj3yh9scjr"; })
-      (fetchNuGet { pname = "runtime.win-arm64.Microsoft.NETCore.DotNetHostResolver"; version = "6.0.29"; sha256 = "03zlldqxlc3ykbapmmvpifik2c3wy3w5k5fnrbjl6ak155iblszj"; })
-      (fetchNuGet { pname = "runtime.win-x64.Microsoft.NETCore.DotNetAppHost"; version = "6.0.29"; sha256 = "006pk987rmif8kv26l91wchj52r1qad673fdn2vbdmh8qmr4jgp9"; })
-      (fetchNuGet { pname = "runtime.win-x64.Microsoft.NETCore.DotNetHost"; version = "6.0.29"; sha256 = "13z4lgmkkfkw86d5x3pz80rv85h36sbixckbwja7fxc6wzx11a3h"; })
-      (fetchNuGet { pname = "runtime.win-x64.Microsoft.NETCore.DotNetHostPolicy"; version = "6.0.29"; sha256 = "0sqcrkdsdih5pjb30r9c4g5bdmvjak4i7s9ji1vx83h2hw71d9x9"; })
-      (fetchNuGet { pname = "runtime.win-x64.Microsoft.NETCore.DotNetHostResolver"; version = "6.0.29"; sha256 = "1mmkp6a8xhyfipnafj9nbwlnc3blpkgpbvcnq12znlbjg6wgxqz0"; })
-      (fetchNuGet { pname = "runtime.win-x86.Microsoft.NETCore.DotNetAppHost"; version = "6.0.29"; sha256 = "1hj6qqfy1vs88j2lksz2bd69ra1nk5vp1rnc9wbrd95qhzq0bg96"; })
-      (fetchNuGet { pname = "runtime.win-x86.Microsoft.NETCore.DotNetHost"; version = "6.0.29"; sha256 = "0y25zkmm2gwi6kmqyc7ajsjpwyb240x99ipfslxfihan9y8lsjg9"; })
-      (fetchNuGet { pname = "runtime.win-x86.Microsoft.NETCore.DotNetHostPolicy"; version = "6.0.29"; sha256 = "02l0adv6iy71pyf3j6r3vag8945avq30srwlpc1k0jdfwb0rp4ia"; })
-      (fetchNuGet { pname = "runtime.win-x86.Microsoft.NETCore.DotNetHostResolver"; version = "6.0.29"; sha256 = "1405a595p5zdsv0czd5fb75f3w6i4w7d4cxns7ar007dc4dnfzhw"; })
-      (fetchNuGet { pname = "Microsoft.NETCore.App.Host.linux-musl-arm"; version = "6.0.29"; sha256 = "0hp585dlg26zbqgcla0bz8c26bhspnqwccwimyjg3gs0acymm5aa"; })
-      (fetchNuGet { pname = "Microsoft.NETCore.App.Host.osx-arm64"; version = "6.0.29"; sha256 = "1al87br8qcdplm9j5n57mni5zbvw71jvwax4kjb4yfcq5c9qwdvy"; })
-      (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.linux-musl-arm"; version = "6.0.29"; sha256 = "1n1sj94xzm3f6qx20hmw9zvz188iaxm76pd34zcyzs7izbw1jyq2"; })
-      (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.osx-arm64"; version = "6.0.29"; sha256 = "00w4cw7blwkqhcg20q9xybs00mrcymgnmki393smn3bc439b8vpn"; })
-      (fetchNuGet { pname = "Microsoft.NETCore.App.Ref"; version = "6.0.29"; sha256 = "0d0xy3zmrlfzc7zk6hpx69mr5b6p28aj944403c7akhzpg1zz2r1"; })
-      (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.Mono.linux-arm"; version = "6.0.29"; sha256 = "0n5zb3hghyqk1yizzznx0azdqg7rc19gvzrw5214rhf731jsm4rw"; })
-      (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.Mono.linux-arm64"; version = "6.0.29"; sha256 = "110wd98zgddiw0znn6b4hrbsixc8shl9hsjd9gch4vxz1ivbsfm6"; })
-      (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.Mono.linux-musl-x64"; version = "6.0.29"; sha256 = "0nrrv68px7xvg7291zsgyw9zzmi3kgcdb24p6cnywmyrrjf1ww0f"; })
-      (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.Mono.linux-x64"; version = "6.0.29"; sha256 = "0yviz7fjchd4jg71gbq52c3jpk9jpkcz042hhfpz9rj7wij7m7n6"; })
-      (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.Mono.osx-arm64"; version = "6.0.29"; sha256 = "0d4sflclyqwx7p9qlb41xfjcpxhjqy0xgah3kr1wb030apr46ina"; })
-      (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.Mono.osx-x64"; version = "6.0.29"; sha256 = "1wl49lg346lhnvn5h2vlb393lasbvbh9hrhvzb1fsi9nnwk6v278"; })
-      (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.Mono.win-x64"; version = "6.0.29"; sha256 = "192n0rbnwb13m619i70yiym38pdlsfkfh68qcq2pm7r4q1lhw5jm"; })
-      (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.Mono.win-x86"; version = "6.0.29"; sha256 = "0r1sp7jjqz2lh92bfnz6xv2jp3q3m4fabq5m1zbw28q6h945q9mp"; })
-      (fetchNuGet { pname = "runtime.linux-musl-arm.Microsoft.NETCore.DotNetAppHost"; version = "6.0.29"; sha256 = "1lifcf96r5mqh4n8d7gcrnmql7vyj8q42sbd621yrqk68dg2gyz3"; })
-      (fetchNuGet { pname = "runtime.linux-musl-arm.Microsoft.NETCore.DotNetHost"; version = "6.0.29"; sha256 = "07hsmqrx6yk8rjr8270v1agqfqhl9lw8mgxfsyf6g7anrjc8skrz"; })
-      (fetchNuGet { pname = "runtime.linux-musl-arm.Microsoft.NETCore.DotNetHostPolicy"; version = "6.0.29"; sha256 = "0iqvqmhncmwl2df6lwlxs3anzpwwy1xhaci4zzq57f67qkiwfh57"; })
-      (fetchNuGet { pname = "runtime.linux-musl-arm.Microsoft.NETCore.DotNetHostResolver"; version = "6.0.29"; sha256 = "1ix3672jd5m5n93y6r9gkpvrkc9hpj1jzf0wlpwji25n75mjg2hg"; })
-      (fetchNuGet { pname = "runtime.osx-arm64.Microsoft.NETCore.DotNetAppHost"; version = "6.0.29"; sha256 = "1qxr84lqn6pzi1rh3941rgyaiv1shsjrj7pgdzmmd0r06ng49avd"; })
-      (fetchNuGet { pname = "runtime.osx-arm64.Microsoft.NETCore.DotNetHost"; version = "6.0.29"; sha256 = "065ih4wls3y3wlcwn61ywjmy08k4abz216kvzg7vhg511qlsi7a5"; })
-      (fetchNuGet { pname = "runtime.osx-arm64.Microsoft.NETCore.DotNetHostPolicy"; version = "6.0.29"; sha256 = "0mm7mybfvqymxcgdr9vwbxfdv83dp613gqhlpm4s8v38jy8ndx52"; })
-      (fetchNuGet { pname = "runtime.osx-arm64.Microsoft.NETCore.DotNetHostResolver"; version = "6.0.29"; sha256 = "1gr26qlj7v3j3mf5dhizbmdh69y6rs9hnff0yf3pi1p1fc6pljf0"; })
-      (fetchNuGet { pname = "Microsoft.NETCore.App.Crossgen2.linux-musl-arm"; version = "6.0.29"; sha256 = "0in1hpn7a2dmmrgdzh101idn9nb8x8al1kp2a7s9vx8sk42nvhnw"; })
-      (fetchNuGet { pname = "Microsoft.NETCore.App.Crossgen2.linux-musl-arm64"; version = "6.0.29"; sha256 = "1nzihwz9vyhfhjq2a6ws2kn651mlyq0ki675v9jwkcb0sgabagab"; })
-      (fetchNuGet { pname = "Microsoft.NETCore.App.Crossgen2.linux-musl-x64"; version = "6.0.29"; sha256 = "1k7dcy3w7yjpykspcb3n1j8fjba4f7505gv0zs003dzx7379bnis"; })
-      (fetchNuGet { pname = "Microsoft.NETCore.App.Crossgen2.linux-arm"; version = "6.0.29"; sha256 = "13s195fgy7yymvc9qw71nr1vlphmvyq4gyr982bv1x0ci2mzybh9"; })
-      (fetchNuGet { pname = "Microsoft.NETCore.App.Crossgen2.linux-arm64"; version = "6.0.29"; sha256 = "0vhd537vh7rakxzbgy6fmfr379k5fj8gq4s005fasripv0a8k98n"; })
-      (fetchNuGet { pname = "Microsoft.NETCore.App.Crossgen2.linux-x64"; version = "6.0.29"; sha256 = "12l5i81rqm8mvz1hj1hnrdzbdrv9fzxghcdj9mw7xlcynsmazazz"; })
-      (fetchNuGet { pname = "Microsoft.NETCore.App.Crossgen2.osx-x64"; version = "6.0.29"; sha256 = "1y3mzszv3qa0pqvjpn5y8jykww0pcpj97576gj6m63mw7rlk8vcn"; })
-      (fetchNuGet { pname = "Microsoft.NETCore.App.Crossgen2.osx-arm64"; version = "6.0.29"; sha256 = "0z6lnhq0jmj759z99ph00wxwyvr5dh0mpkqp89mzqi98dpxwlnpb"; })
-      (fetchNuGet { pname = "Microsoft.NETCore.App.Host.win-arm"; version = "6.0.29"; sha256 = "1s1j8zivvkpkg088kmr9lfqqxz6zc4753hqhz3grxp850vhv1hzy"; })
-      (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.win-arm"; version = "6.0.29"; sha256 = "0la7fw19zj4aqa8dlp5pg4bvh1m3fsfa1cnzfw3fm1g17bpq210f"; })
-      (fetchNuGet { pname = "runtime.win-arm.Microsoft.NETCore.DotNetAppHost"; version = "6.0.29"; sha256 = "1p4jxlqnc8kf18q005nhywj2ca1d3j3kk5234xbsfhr8j2wx211g"; })
-      (fetchNuGet { pname = "runtime.win-arm.Microsoft.NETCore.DotNetHost"; version = "6.0.29"; sha256 = "096cldfkih3c3bs8bi7340yiz4ss0dqb3y90n3rshfhln1mik28y"; })
-      (fetchNuGet { pname = "runtime.win-arm.Microsoft.NETCore.DotNetHostPolicy"; version = "6.0.29"; sha256 = "1k79s6rbxqhfqsh5yxznnfhhsxvgg1bbfsj5dwrpxwxlhcwg8p9k"; })
-      (fetchNuGet { pname = "runtime.win-arm.Microsoft.NETCore.DotNetHostResolver"; version = "6.0.29"; sha256 = "0inzz41s033hwd5splr0jrf5b4bnsqlyydrbxjcqxhk975fjfgxl"; })
-      (fetchNuGet { pname = "Microsoft.NETCore.App.Composite"; version = "6.0.29"; sha256 = "1k2k68hrxc3181439nipgv6pwci8x3l92lx26n7wzjqr20g7lknv"; })
+      (fetchNuGet { pname = "Microsoft.AspNetCore.App.Runtime.linux-arm"; version = "6.0.30"; sha256 = "00h28rynbg62abjgknxlq79b48qnjjjclib638wpxjaz96wih96n"; })
+      (fetchNuGet { pname = "Microsoft.AspNetCore.App.Runtime.linux-arm64"; version = "6.0.30"; sha256 = "1n4v5przbrjhzj01b6qijpdc2jbsxr66ijvd0483qxh4s0b4jppr"; })
+      (fetchNuGet { pname = "Microsoft.AspNetCore.App.Runtime.linux-musl-arm64"; version = "6.0.30"; sha256 = "13cyagv2gxzdssy4kch80jalax0d905sqglibnp9ncswv5yv7af5"; })
+      (fetchNuGet { pname = "Microsoft.AspNetCore.App.Runtime.linux-musl-x64"; version = "6.0.30"; sha256 = "01n58418vmvz3bxm3b175irfidp42vg71m5b7v0bf5mhifi40ji8"; })
+      (fetchNuGet { pname = "Microsoft.AspNetCore.App.Runtime.linux-x64"; version = "6.0.30"; sha256 = "18v0l07q74m5xxaf6y6dkmr6and8ivya0nslffnr4djrxcbiygdr"; })
+      (fetchNuGet { pname = "Microsoft.AspNetCore.App.Runtime.osx-x64"; version = "6.0.30"; sha256 = "009srl8vazkjnd93xr6k1m353spbki9gn1yzp4zgazgbrini6rqc"; })
+      (fetchNuGet { pname = "Microsoft.AspNetCore.App.Runtime.win-arm64"; version = "6.0.30"; sha256 = "105zskdc8d7papsi5b8pf76335j4slkm77jd6k5ha0mp6n39a1m2"; })
+      (fetchNuGet { pname = "Microsoft.AspNetCore.App.Runtime.win-x64"; version = "6.0.30"; sha256 = "1ppl5zc8j6z3yfhq9wkcmjaa0yajjy4d4iiykh8yqsjypxg5pq95"; })
+      (fetchNuGet { pname = "Microsoft.AspNetCore.App.Runtime.win-x86"; version = "6.0.30"; sha256 = "07yaxq68gjnc512nwvzj3h6xk3w1bj9gl25k0qpljnxfv1nmba8y"; })
+      (fetchNuGet { pname = "Microsoft.AspNetCore.App.Runtime.win-arm"; version = "6.0.30"; sha256 = "07jhykr9q5akxy2vcsp6w8646j78p636cn13qcbybcxapz7s0iji"; })
+      (fetchNuGet { pname = "Microsoft.AspNetCore.App.Ref"; version = "6.0.30"; sha256 = "17k3l8xd5bsyk69bm5q4nxbpb4i0izw1kzmzi7j3p8pmm9prgrpy"; })
+      (fetchNuGet { pname = "Microsoft.AspNetCore.App.Runtime.linux-musl-arm"; version = "6.0.30"; sha256 = "05ffs63h5f8qhxzrkhq0fwy40q88nf6672xgx5q1zm3pa0a4zpdz"; })
+      (fetchNuGet { pname = "Microsoft.AspNetCore.App.Runtime.osx-arm64"; version = "6.0.30"; sha256 = "0p53lyqmr5n2ym202pbgmsd9b9aa6jar7ic04dcq86h2g77r5jqk"; })
+      (fetchNuGet { pname = "Microsoft.NETCore.App.Host.linux-arm"; version = "6.0.30"; sha256 = "0nzgcfvzxkkf9qgy18svjgwsfhhpv9zz44kcyv5qqv3hjnn59n77"; })
+      (fetchNuGet { pname = "Microsoft.NETCore.App.Host.linux-arm64"; version = "6.0.30"; sha256 = "0l3gjhmnjd5n67w83smqyhmfcwzszafjgcbq8kdwxiwwh2m6nh2i"; })
+      (fetchNuGet { pname = "Microsoft.NETCore.App.Host.linux-musl-arm64"; version = "6.0.30"; sha256 = "08xwqfqhazjy1gwj2j060vcn1x429b37db1h20mjcszmr6j55bb8"; })
+      (fetchNuGet { pname = "Microsoft.NETCore.App.Host.linux-musl-x64"; version = "6.0.30"; sha256 = "0kgpximwlw0ypjnpdvnrvgi3k72r032c44ik1vamka6ilir5gcsj"; })
+      (fetchNuGet { pname = "Microsoft.NETCore.App.Host.linux-x64"; version = "6.0.30"; sha256 = "0ss3108c2h7afypvliyqixv4dll60sq9iwqy90k1p132znpszrmb"; })
+      (fetchNuGet { pname = "Microsoft.NETCore.App.Host.osx-x64"; version = "6.0.30"; sha256 = "02x38c68xan8hlr59mindcl4rcx49bbh4bibh6fw1l4rrijb38lw"; })
+      (fetchNuGet { pname = "Microsoft.NETCore.App.Host.win-arm64"; version = "6.0.30"; sha256 = "0qmma776whn57fnjqkpacj03vx6brcx6j51mh200v9gx8hm9h1gz"; })
+      (fetchNuGet { pname = "Microsoft.NETCore.App.Host.win-x64"; version = "6.0.30"; sha256 = "1000y4ap0k0iaidl8bqdais3dpcnccd7f4mp219qfcsbn7ma1g5m"; })
+      (fetchNuGet { pname = "Microsoft.NETCore.App.Host.win-x86"; version = "6.0.30"; sha256 = "0dcmanh6bpkiix9nm516ybfd3jijr5f4m4pj2b0f4lzdhgnrg5bj"; })
+      (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.linux-arm"; version = "6.0.30"; sha256 = "1aj6dljgqh7ivbbzzqisycklc3ffy5hav6rr78pi20kqr60hgv2d"; })
+      (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.linux-arm64"; version = "6.0.30"; sha256 = "0xfhcig3gj3986rxp3dhnd8hvnj4nvyhz1fz7kpx342d3g53wb37"; })
+      (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.linux-musl-arm64"; version = "6.0.30"; sha256 = "11c5cirdzcmv1h88frjpdzknsafmpzxz6k3k5viqs8dj0pkrx9w4"; })
+      (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.linux-musl-x64"; version = "6.0.30"; sha256 = "0yc0kx6nlfq2hj6392m8jq0gkkc8ayp6pndidwpdyrgxr6dcgx5p"; })
+      (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.linux-x64"; version = "6.0.30"; sha256 = "1s81sj8lnb8szqawxh3vc8wi815ln12cyhrl3f7hwcpay57xgswx"; })
+      (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.osx-x64"; version = "6.0.30"; sha256 = "0xybqg2wd240r1nm2vrbn2qbfqfnqsmxn1012zzwjn17wa2si9a1"; })
+      (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.win-arm64"; version = "6.0.30"; sha256 = "1f8jid6hzbgc69i3mrhr75g4yb8mxky1xddzsq6vm5bhzdi9x9dq"; })
+      (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.win-x64"; version = "6.0.30"; sha256 = "1iv7mxzyma90s2w6pgcr9gb4b0yab0qgd43ljbr776r45jfmhfgy"; })
+      (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.win-x86"; version = "6.0.30"; sha256 = "0h63xlks92kmgmzi5vcciw46h9i982shqjsy5w64hxb2m28rrali"; })
+      (fetchNuGet { pname = "Microsoft.NETCore.DotNetAppHost"; version = "6.0.30"; sha256 = "1nmcfcrhlvyyxgsiaa91ssp691yl3y4p87azsnmvy3p97xppn89w"; })
+      (fetchNuGet { pname = "Microsoft.NETCore.DotNetHost"; version = "6.0.30"; sha256 = "1dl58ci5xl0np15mbya16zaipscmvhm3914l2f0pfv1k530c9j7m"; })
+      (fetchNuGet { pname = "Microsoft.NETCore.DotNetHostPolicy"; version = "6.0.30"; sha256 = "1ik2aarvg0r7k5mm47y7z9lq1csx84k5sd55nrkl2bil0x2pwbzq"; })
+      (fetchNuGet { pname = "Microsoft.NETCore.DotNetHostResolver"; version = "6.0.30"; sha256 = "1n711qbd40468l74fr5yjl92n38fsvcdxcl5i3vrqxxqw24rk2v6"; })
+      (fetchNuGet { pname = "runtime.linux-arm64.Microsoft.NETCore.DotNetAppHost"; version = "6.0.30"; sha256 = "141ik8krp675ra085b7w4kwslwxdfhpbgkwjwix0l3idkbbqx61x"; })
+      (fetchNuGet { pname = "runtime.linux-arm64.Microsoft.NETCore.DotNetHost"; version = "6.0.30"; sha256 = "1xj1g4j7khd54lk04wdii1mam6iwa61aijr43bwfrl3cwjlyk0s4"; })
+      (fetchNuGet { pname = "runtime.linux-arm64.Microsoft.NETCore.DotNetHostPolicy"; version = "6.0.30"; sha256 = "0h419n0wzpl7g19g4vwf9s3c3n7vpshyqzfb28w7hy9jk7svvhs1"; })
+      (fetchNuGet { pname = "runtime.linux-arm64.Microsoft.NETCore.DotNetHostResolver"; version = "6.0.30"; sha256 = "0d9g5yimjmvqgfm5ndyzb7v5xwi0ix0dq6wxinlfcv9jk933bxis"; })
+      (fetchNuGet { pname = "runtime.linux-arm.Microsoft.NETCore.DotNetAppHost"; version = "6.0.30"; sha256 = "0v059yadlahda6ifb84rhpdf5lwd27pkgwfyqdgmqbvc55mvxbpj"; })
+      (fetchNuGet { pname = "runtime.linux-arm.Microsoft.NETCore.DotNetHost"; version = "6.0.30"; sha256 = "048nxp4xckb367b016r0avzwkfc6acvw1y454466p9ib29kahc9i"; })
+      (fetchNuGet { pname = "runtime.linux-arm.Microsoft.NETCore.DotNetHostPolicy"; version = "6.0.30"; sha256 = "0ah5lzn0al0p73mv2ifaqfal38pq7v7cgjsh2byqpylg4fj00lgw"; })
+      (fetchNuGet { pname = "runtime.linux-arm.Microsoft.NETCore.DotNetHostResolver"; version = "6.0.30"; sha256 = "1d7vxq3cbqv36mpl1lv9xj6v6gg5x1brr2z0v16zb1sgc20c1py0"; })
+      (fetchNuGet { pname = "runtime.linux-musl-arm64.Microsoft.NETCore.DotNetAppHost"; version = "6.0.30"; sha256 = "0im0444rnfdjb088mkgj5nwmlh4qqi7cg29dp7c7490h9b4si6sc"; })
+      (fetchNuGet { pname = "runtime.linux-musl-arm64.Microsoft.NETCore.DotNetHost"; version = "6.0.30"; sha256 = "0zl6h8nq6c5jnm2a4sn39wsqy05iv1s8cwwxck1xxhc6xhvm7ssz"; })
+      (fetchNuGet { pname = "runtime.linux-musl-arm64.Microsoft.NETCore.DotNetHostPolicy"; version = "6.0.30"; sha256 = "1b8h3clg8fhx2lg1znlidawlr6y230rh7fswz459p3y9a5m2g5rv"; })
+      (fetchNuGet { pname = "runtime.linux-musl-arm64.Microsoft.NETCore.DotNetHostResolver"; version = "6.0.30"; sha256 = "00zc5ym89ps8f000j3h7d7fqcsk8bs30hx91yd3q8aqcacwp5qwf"; })
+      (fetchNuGet { pname = "runtime.linux-musl-x64.Microsoft.NETCore.DotNetAppHost"; version = "6.0.30"; sha256 = "068y16a9966g5r6syznpi445z753h15dngw9dr5z8dr2rpzvjmdm"; })
+      (fetchNuGet { pname = "runtime.linux-musl-x64.Microsoft.NETCore.DotNetHost"; version = "6.0.30"; sha256 = "04i97cy9x3z0cs738li44s7zf73vspjmqiw70vi7bi6lsnf1n393"; })
+      (fetchNuGet { pname = "runtime.linux-musl-x64.Microsoft.NETCore.DotNetHostPolicy"; version = "6.0.30"; sha256 = "0ra00mpz0m4wchxxay0mzk0r4dslkkjbkxfwv3agfldyl20hdh8v"; })
+      (fetchNuGet { pname = "runtime.linux-musl-x64.Microsoft.NETCore.DotNetHostResolver"; version = "6.0.30"; sha256 = "1dmqagg5ygg6w2lmg5rh165chb06q5lalyz0aggd7d10dqyjqdys"; })
+      (fetchNuGet { pname = "runtime.linux-x64.Microsoft.NETCore.DotNetAppHost"; version = "6.0.30"; sha256 = "01naz5yn790qd96pq00pb17s0cgl82ai9l4p0psgcj9hdazhh5d9"; })
+      (fetchNuGet { pname = "runtime.linux-x64.Microsoft.NETCore.DotNetHost"; version = "6.0.30"; sha256 = "1pfl0sc6z14imjlxdmacs6yb9mfgf2pb0jqxiwsdxrc9yhvkcy4x"; })
+      (fetchNuGet { pname = "runtime.linux-x64.Microsoft.NETCore.DotNetHostPolicy"; version = "6.0.30"; sha256 = "08vdq131yc70hb72dh9ira28c894b0fwg71ap8bkdwv3nlj92xcp"; })
+      (fetchNuGet { pname = "runtime.linux-x64.Microsoft.NETCore.DotNetHostResolver"; version = "6.0.30"; sha256 = "1b2nwjw1q8696j63rfr6b9v3czprj3vnydw5sb1c4dy8rmi037g1"; })
+      (fetchNuGet { pname = "runtime.osx-x64.Microsoft.NETCore.DotNetAppHost"; version = "6.0.30"; sha256 = "1v4rc0zxiznmg3xzk0f9v780nzrycp7gcj10jpc5f1w7rw9007ch"; })
+      (fetchNuGet { pname = "runtime.osx-x64.Microsoft.NETCore.DotNetHost"; version = "6.0.30"; sha256 = "01r6w4j991lzirvb9nznsjq0825j5pa6mfjvacy6izjqbivwcf53"; })
+      (fetchNuGet { pname = "runtime.osx-x64.Microsoft.NETCore.DotNetHostPolicy"; version = "6.0.30"; sha256 = "060xdk3fazza196zgg5q3r10p7h9nna90zc0kffdabg6j2msr8rm"; })
+      (fetchNuGet { pname = "runtime.osx-x64.Microsoft.NETCore.DotNetHostResolver"; version = "6.0.30"; sha256 = "0z350zy4c4xz42ysac40sacvky7lp0n7lyl1kh393v0bnzqad5zm"; })
+      (fetchNuGet { pname = "runtime.win-arm64.Microsoft.NETCore.DotNetAppHost"; version = "6.0.30"; sha256 = "0h7c58nx1l77n1s28ysqbsij9408g2vmyacxryp56k1l30aspnri"; })
+      (fetchNuGet { pname = "runtime.win-arm64.Microsoft.NETCore.DotNetHost"; version = "6.0.30"; sha256 = "1nf8p7a8qghpgpyh5hq8f75w78vqy9airb3nkhp600ln0h3rzwsp"; })
+      (fetchNuGet { pname = "runtime.win-arm64.Microsoft.NETCore.DotNetHostPolicy"; version = "6.0.30"; sha256 = "0579hnk8xiclfzkfdb64628h0r49l8sac3mnv5yrq8sp3kkf8f4d"; })
+      (fetchNuGet { pname = "runtime.win-arm64.Microsoft.NETCore.DotNetHostResolver"; version = "6.0.30"; sha256 = "0flcc2vmy9sj40cc6igmb26zflsabp6vx9gzabhyns1lwnkwbljw"; })
+      (fetchNuGet { pname = "runtime.win-x64.Microsoft.NETCore.DotNetAppHost"; version = "6.0.30"; sha256 = "0zcsj0zqr2mf5134v74xwvsikxsr4g44qkh16qxkhdai1fi9z78n"; })
+      (fetchNuGet { pname = "runtime.win-x64.Microsoft.NETCore.DotNetHost"; version = "6.0.30"; sha256 = "0zwqi277hfiqj0yinmvakw6dvb4njj35yi618s96h94c4dz5f64y"; })
+      (fetchNuGet { pname = "runtime.win-x64.Microsoft.NETCore.DotNetHostPolicy"; version = "6.0.30"; sha256 = "0bifshrxl0g2q3xby4vy4bfgjbhy28r1jcvfr7y2vl1ci0a7l7q6"; })
+      (fetchNuGet { pname = "runtime.win-x64.Microsoft.NETCore.DotNetHostResolver"; version = "6.0.30"; sha256 = "17nj6zp7z65p1gbd0rpz0fgiwgh3sikd1b0lvj006gz9njldbkki"; })
+      (fetchNuGet { pname = "runtime.win-x86.Microsoft.NETCore.DotNetAppHost"; version = "6.0.30"; sha256 = "0yzrn1261ypm7y8l3klpyswkav8qxhnlxsv083nrw1z83sbs6a5f"; })
+      (fetchNuGet { pname = "runtime.win-x86.Microsoft.NETCore.DotNetHost"; version = "6.0.30"; sha256 = "0q5i9nzwjdl733vqx3rp5k9favjz83yrvpwr953wm0jmcddk8gz4"; })
+      (fetchNuGet { pname = "runtime.win-x86.Microsoft.NETCore.DotNetHostPolicy"; version = "6.0.30"; sha256 = "1dhd1zczam6s5r0lwdanm3mvvjrwi6l81izb5v2aq4h28g67ciz6"; })
+      (fetchNuGet { pname = "runtime.win-x86.Microsoft.NETCore.DotNetHostResolver"; version = "6.0.30"; sha256 = "11lqxmcmlhxgj1d4ki1rng3ivs2fx8ny984vwzlmcyhc2y5rz63w"; })
+      (fetchNuGet { pname = "Microsoft.NETCore.App.Host.linux-musl-arm"; version = "6.0.30"; sha256 = "0ljzirp7nx1xmglz9arfggjaxysg0iaqajck045z31s5dr7p70a5"; })
+      (fetchNuGet { pname = "Microsoft.NETCore.App.Host.osx-arm64"; version = "6.0.30"; sha256 = "08k5v35mvcs712kb0vcfjd1dsas5rgwrmv8rn87mzjb2p6ajl3n3"; })
+      (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.linux-musl-arm"; version = "6.0.30"; sha256 = "0p9qybbi7m797svki92ahsyxchd3ic6xw5dbd6h7j2zacgwwkdr7"; })
+      (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.osx-arm64"; version = "6.0.30"; sha256 = "0s71k92daakzwish65gmn4nniy6bf2hv34c0sb6m1hv3criqxmp4"; })
+      (fetchNuGet { pname = "Microsoft.NETCore.App.Ref"; version = "6.0.30"; sha256 = "1wqqjhhlqz4dmijcx3kg3hnwq0s0jzqsddaksskzhq8avr4ziy18"; })
+      (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.Mono.linux-arm"; version = "6.0.30"; sha256 = "1zgspjf5qsl6nki9flfm5askgs2ryz6n3b5vz0sh0cygjk93mifr"; })
+      (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.Mono.linux-arm64"; version = "6.0.30"; sha256 = "03gi4ckn2926am1m5i4pimxlwzb47s5bvqcarw8gchiw6ids27a8"; })
+      (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.Mono.linux-musl-x64"; version = "6.0.30"; sha256 = "1vp1r5jsphj322dh441fs0723riijdqcai595xf7fgdlhr8kqgqj"; })
+      (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.Mono.linux-x64"; version = "6.0.30"; sha256 = "1snjxdqm7bn9p87m8hbv125qbz2sgdy59cz5icld9qgyvx6c65p2"; })
+      (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.Mono.osx-arm64"; version = "6.0.30"; sha256 = "1pdwyi7p71h8418qcjypl5fzvdj22grxiq9yjpnw1qma7d1251ny"; })
+      (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.Mono.osx-x64"; version = "6.0.30"; sha256 = "125qdpv0j0my2m47cdhqacdx3jnpm0f7xgyi60x539iadg9w5n17"; })
+      (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.Mono.win-x64"; version = "6.0.30"; sha256 = "187nbyjgpj64ap3kql0msynrfrjkfxi7flap67nn3ly844l08h1x"; })
+      (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.Mono.win-x86"; version = "6.0.30"; sha256 = "0j8rqm3rfl3x7azpkp3l651v4hdd3rchfm40vd291pcc90qicqd8"; })
+      (fetchNuGet { pname = "runtime.linux-musl-arm.Microsoft.NETCore.DotNetAppHost"; version = "6.0.30"; sha256 = "0c3iglyq21mwwlwjd942z2jxaxgh39lxnqkyna0wf4a895g2v4ia"; })
+      (fetchNuGet { pname = "runtime.linux-musl-arm.Microsoft.NETCore.DotNetHost"; version = "6.0.30"; sha256 = "0frimj5r3c2dzk3a0z8h80jlsyvckw57nzm2rj85x8c3ym7cfp7g"; })
+      (fetchNuGet { pname = "runtime.linux-musl-arm.Microsoft.NETCore.DotNetHostPolicy"; version = "6.0.30"; sha256 = "1viylidv5j5h6acikm02v3zrbjbqy78f5a9b5rm5hc74q9hajngw"; })
+      (fetchNuGet { pname = "runtime.linux-musl-arm.Microsoft.NETCore.DotNetHostResolver"; version = "6.0.30"; sha256 = "1929s1w81h0y51r2qcywbm4zp700l75yswp5ii68k401861b8pmb"; })
+      (fetchNuGet { pname = "runtime.osx-arm64.Microsoft.NETCore.DotNetAppHost"; version = "6.0.30"; sha256 = "13kgffl4jhbq0dn7lx3hhd36r0vi0s3s8dhjq85lq3hrm8454p8r"; })
+      (fetchNuGet { pname = "runtime.osx-arm64.Microsoft.NETCore.DotNetHost"; version = "6.0.30"; sha256 = "10lny4j9yyla16bwpzvnr15gkf5d4n4la5smk4v8ncfxbj7lgbrm"; })
+      (fetchNuGet { pname = "runtime.osx-arm64.Microsoft.NETCore.DotNetHostPolicy"; version = "6.0.30"; sha256 = "0kmxfvb10gfp4870mcrzgvymgzyb3l4yljnj105y8hr80jya2z2l"; })
+      (fetchNuGet { pname = "runtime.osx-arm64.Microsoft.NETCore.DotNetHostResolver"; version = "6.0.30"; sha256 = "0passlm8ajlarnvvrczgxp0brgnbk4n8fig9xmangzsz43bys5dc"; })
+      (fetchNuGet { pname = "Microsoft.NETCore.App.Crossgen2.linux-musl-arm"; version = "6.0.30"; sha256 = "1cxd3hshcb5m5651324svwqxfsimkz35kr9lx0m9s0h7r7hnrcck"; })
+      (fetchNuGet { pname = "Microsoft.NETCore.App.Crossgen2.linux-musl-arm64"; version = "6.0.30"; sha256 = "1adhb5qj1rz68l4dg87d2j1mbl263lvfry200fag6sfydb305kqh"; })
+      (fetchNuGet { pname = "Microsoft.NETCore.App.Crossgen2.linux-musl-x64"; version = "6.0.30"; sha256 = "0f8w8fjaigd2pj0gzc0h5qqm3j24mibprirx0iqaj1l7shgpi40n"; })
+      (fetchNuGet { pname = "Microsoft.NETCore.App.Crossgen2.linux-arm"; version = "6.0.30"; sha256 = "0iirjhd26am5kczss9z1jv0v9qjafassvqdm19jdlwrbfn3nzqvf"; })
+      (fetchNuGet { pname = "Microsoft.NETCore.App.Crossgen2.linux-arm64"; version = "6.0.30"; sha256 = "0pvwpdjf5vnyx3kjq9p67hyzqbfq3yri2alxh2i93xjmdc8rmryv"; })
+      (fetchNuGet { pname = "Microsoft.NETCore.App.Crossgen2.linux-x64"; version = "6.0.30"; sha256 = "0bkh3haf5ll5l0iiafv9ihzxqh2jqsqqi5325mkzq192lfkh3nrl"; })
+      (fetchNuGet { pname = "Microsoft.NETCore.App.Crossgen2.osx-x64"; version = "6.0.30"; sha256 = "1dfc7zdjb8m2ziy8rxwismfp6wjs32m4piqxw5w65sc2ryaf2gvq"; })
+      (fetchNuGet { pname = "Microsoft.NETCore.App.Crossgen2.osx-arm64"; version = "6.0.30"; sha256 = "0f01cs742z821m1jds7p05jc085aryj7mjpdd04pwv1ql8axmyhw"; })
+      (fetchNuGet { pname = "Microsoft.NETCore.App.Host.win-arm"; version = "6.0.30"; sha256 = "0ns1zscka2fs0zdizir5malhxhgqryd5id87gjqa6y9k8vc6d0h3"; })
+      (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.win-arm"; version = "6.0.30"; sha256 = "0pd1bwq2nzd705c65ckwxnayjlj7ahj2n5hwfnglmjvhi8dyzr15"; })
+      (fetchNuGet { pname = "runtime.win-arm.Microsoft.NETCore.DotNetAppHost"; version = "6.0.30"; sha256 = "06nrnbbaykg2w35bldyzyp9qxs8y7aa1mp4j3lswdjcly06rgvbm"; })
+      (fetchNuGet { pname = "runtime.win-arm.Microsoft.NETCore.DotNetHost"; version = "6.0.30"; sha256 = "1h05dhpvycxjs17y3r7y929r07dswv7iq9lmwas1kjxhnzhbs6x2"; })
+      (fetchNuGet { pname = "runtime.win-arm.Microsoft.NETCore.DotNetHostPolicy"; version = "6.0.30"; sha256 = "0jj3nxpbyb3vxh2jsa3qwwy46l6yls1z2n93mq2kyr3yi7lnghmg"; })
+      (fetchNuGet { pname = "runtime.win-arm.Microsoft.NETCore.DotNetHostResolver"; version = "6.0.30"; sha256 = "0sbi0b0kck61fq99ipw6jrjrj378kzmk30z0czkj5cn3m59v3dgj"; })
+      (fetchNuGet { pname = "Microsoft.NETCore.App.Composite"; version = "6.0.30"; sha256 = "166xfyap4mgv5y6qa5bzq1r7rd8n2fy1f3gcy16i1fhlf52db5v8"; })
   ];
 in rec {
-  release_6_0 = "6.0.29";
+  release_6_0 = "6.0.30";
 
   aspnetcore_6_0 = buildAspNetCore {
-    version = "6.0.29";
+    version = "6.0.30";
     srcs = {
       x86_64-linux = {
-        url     = "https://download.visualstudio.microsoft.com/download/pr/70ddd1ed-776d-41d2-b192-f02436ef3ca6/337d6dd35177408acb9889289a7743a7/aspnetcore-runtime-6.0.29-linux-x64.tar.gz";
-        sha512  = "6dc21e1a8dd597df9c1135065f7350bbde9cc040c3079ec7850b0e5f254051b883c6c6e0056682d2963ec74dadff8eb32d82c13b35c9088f3d7c055d3d3f0863";
+        url     = "https://download.visualstudio.microsoft.com/download/pr/03d1bc71-2ad1-41b4-aa2f-9e4ef6d5c6ed/29b655655d626c590cb216e0c30bccb3/aspnetcore-runtime-6.0.30-linux-x64.tar.gz";
+        sha512  = "757d017db28b8e34c4b242c082aa51eb85bce8fca16af37a0beabedb271c9bd13e1631868faa131745d7784db48974567f82275da09041ba434dcb7abe821a2d";
       };
       aarch64-linux = {
-        url     = "https://download.visualstudio.microsoft.com/download/pr/094fe5d6-0520-4c0a-9edf-b53d269f8b20/8c5e69ed04787815037ae373ffb77466/aspnetcore-runtime-6.0.29-linux-arm64.tar.gz";
-        sha512  = "6e4a504f37ba4bf7d0316d2a3077c5088962c8b8445b659fa05844697bd11427afabacb6fee34094aa4313dd6dca70c862c1c68b30731b12b4451bd59067bc8f";
+        url     = "https://download.visualstudio.microsoft.com/download/pr/a4c8e994-c595-4698-8cfc-cf3ac166bbbf/9e6b514da011de5191d148d95601a7ec/aspnetcore-runtime-6.0.30-linux-arm64.tar.gz";
+        sha512  = "de0921903ba55e21195107b126e271457550543fd6a9698ab3c2b1e2b95f7fe2d6fb2f067e08ed10c9e56940c247733dd9a2f9775e7993e033a945899461e130";
       };
       x86_64-darwin = {
-        url     = "https://download.visualstudio.microsoft.com/download/pr/7b93130d-337d-46b8-8d61-cd702c4f2ae7/e198b8e68a06f1f1f5f46116f9976641/aspnetcore-runtime-6.0.29-osx-x64.tar.gz";
-        sha512  = "f4405bcf40a075a5acbd8f4ced424efb0b2de49a5f81481c708a1942c1e92e3a69ea8a4d59b55c025092a59e2715d260521fda56618f250d1484fe18dc4cadf4";
+        url     = "https://download.visualstudio.microsoft.com/download/pr/15ab71c2-9230-4afb-87c5-36328af745ed/b859c077ed4d8c00985a2ee87009b6f1/aspnetcore-runtime-6.0.30-osx-x64.tar.gz";
+        sha512  = "0a0c4c9255ed29db1c1911fa0fc6c8a9083f777c04a3939b2087d80bba21fbd864e6c92c62aa566a930a2b30024b1fdbfdcf34d034e2734c0a9b3d45f7c63445";
       };
       aarch64-darwin = {
-        url     = "https://download.visualstudio.microsoft.com/download/pr/cbaf5637-d4ba-41e8-a16f-a66a063a30e2/205c5fd4005a47753549594370bd385d/aspnetcore-runtime-6.0.29-osx-arm64.tar.gz";
-        sha512  = "a9ecc77db6f0fd8e5ff70ac58ae3549b766694d30a93cfd41869ceaa298178fd2c0e86e4e763d8d7a5e2236d42faf2e87d798d2853f8391a73a40f5193f4fa71";
+        url     = "https://download.visualstudio.microsoft.com/download/pr/0a61c065-2196-4a9f-a34a-9517b3ec9336/538e1624926840a66ef6963f57d44aa0/aspnetcore-runtime-6.0.30-osx-arm64.tar.gz";
+        sha512  = "a74d44c399e06c9ce19ec10d4be53444bf18d981fe7ede62a69efc24a5af5898d4ee63542ffbedc3b906cf1ac3f7101ecdb69e45dc0fbb1336bf151940fc2204";
       };
     };
   };
 
   runtime_6_0 = buildNetRuntime {
-    version = "6.0.29";
+    version = "6.0.30";
     srcs = {
       x86_64-linux = {
-        url     = "https://download.visualstudio.microsoft.com/download/pr/a066873e-e4f6-4538-a225-4170e2950af2/7e3b369dee3fb19cf193823e158f3b6b/dotnet-runtime-6.0.29-linux-x64.tar.gz";
-        sha512  = "c9fc66d47e7c5ed77f13d03bd3a6d09f99560bd432aa308392e0604bdf2a378f66f836184dca4a678052989e6e51a5535225de337c32a4a4e17a67abdc554ffa";
+        url     = "https://download.visualstudio.microsoft.com/download/pr/a80ab89d-9f64-47b9-bba5-907a4cdaf457/c5714a6e605ef86293a5145d8ea72f39/dotnet-runtime-6.0.30-linux-x64.tar.gz";
+        sha512  = "b43200ec3a8c74475f396becd21d22c6a78a6713585837707c2a84bbb869c7e551a05c4c1c1cdba8083baebdd09bc356de5d5a833b8bc84b83421d3ecfac71ca";
       };
       aarch64-linux = {
-        url     = "https://download.visualstudio.microsoft.com/download/pr/633cbdd7-57e0-4101-9627-9bda4f29dc9d/93ad01d00720363b0c054f5d88d97a62/dotnet-runtime-6.0.29-linux-arm64.tar.gz";
-        sha512  = "27c7121a4953b51bf29a15ffac4155cf86609ded15948f91ecdd19970ff7e19276c528d875f547c2877245767adf1be1ca0eaeb45dc8db460070637bd5ee1ec8";
+        url     = "https://download.visualstudio.microsoft.com/download/pr/27a21bdd-cad5-4f5a-b7a3-86942632a745/3d7aba7c0cfe0c28342a8f83b65e72b9/dotnet-runtime-6.0.30-linux-arm64.tar.gz";
+        sha512  = "75fa6de07e5d8e5485af910de522c1d0afed0532008ded1e80ec3f576c9a78c6e5759dd4d1331159263c02121a4d8f1e532f0533c11524c2d782cf861be13c09";
       };
       x86_64-darwin = {
-        url     = "https://download.visualstudio.microsoft.com/download/pr/ed218418-03fc-455b-ba08-6743dd753435/87ce2ccb4bd152e7e9435b891349ec9c/dotnet-runtime-6.0.29-osx-x64.tar.gz";
-        sha512  = "e04207993febbd8593eb5474016e90910491f4c5b23cfec39498bc6d5ca2c3ce427da4f5f14ff4160766daab1e35dd2d324d0cfd7ffa83c4741a25f9ac811f00";
+        url     = "https://download.visualstudio.microsoft.com/download/pr/aee516fe-b6d8-40db-b284-1a287f7cd5ce/c217b7cdbcac883886169b82bcc2b7d8/dotnet-runtime-6.0.30-osx-x64.tar.gz";
+        sha512  = "8cffba5feca56bf11b38318564c45ae18a58ec48223963ee46105f71bc07661457e562d51ea0e8b626eb69b7635565244a5cd1575b6fbac52b776145c533e784";
       };
       aarch64-darwin = {
-        url     = "https://download.visualstudio.microsoft.com/download/pr/ca51758e-d614-4a55-97ce-bf60ec381931/c2e6633c67dcf4359666cdaa88f1eeae/dotnet-runtime-6.0.29-osx-arm64.tar.gz";
-        sha512  = "baf9b30ab7fcdb16878a05429a98c20079e8a5e081f910ddabaee70298dd3d976f3c56569af4efa544533534be50920258982cb97d98bc85f31ce44e6ccabf52";
+        url     = "https://download.visualstudio.microsoft.com/download/pr/e78e6379-e47a-4e24-ac6b-1c3182f1d664/b8f47b2f04b15c78ac24a8bc88000131/dotnet-runtime-6.0.30-osx-arm64.tar.gz";
+        sha512  = "b33a38f4e41455cd88e23f6c0fa76797e05af25bcd94d500557fdd5ce10071ac16789ddef98ec9abef113f2aa487fc7d5c22f329b8a7941a79d7768ca176975d";
       };
     };
   };
 
   sdk_6_0_4xx = buildNetSdk {
-    version = "6.0.421";
+    version = "6.0.422";
     srcs = {
       x86_64-linux = {
-        url     = "https://download.visualstudio.microsoft.com/download/pr/19144d78-6f95-4810-a9f6-3bf86035a244/23f4654fc5352e049b517937f94be839/dotnet-sdk-6.0.421-linux-x64.tar.gz";
-        sha512  = "aa2c1fdc06c477acbb8ca938895f22373a96e96bb75028b496ddf3d433a1e347f3f765b414e8e09fbf1da1cc50f575e28572e701693bad2a33f9b92437a7d3fc";
+        url     = "https://download.visualstudio.microsoft.com/download/pr/316ad9ae-22cb-478b-b51e-47667f1e7027/7a13422c0951e9235b7692c610b83442/dotnet-sdk-6.0.422-linux-x64.tar.gz";
+        sha512  = "e0e6ea234a5aef29c2571784c22396115db292fae8f859f4642f80f873807140bb7bbc009be568e8e34288b46b2e3e7732115b5f02bbc8ca0aa723e183bc084a";
       };
       aarch64-linux = {
-        url     = "https://download.visualstudio.microsoft.com/download/pr/30303304-04ea-4569-9f10-3919b4b3105c/5b689d8357866cc2637a021d16096256/dotnet-sdk-6.0.421-linux-arm64.tar.gz";
-        sha512  = "2713e16d70d9cb5bd6d3d2da385c75c8cfe6ed3187225efe6715d595b1b1b17d0a48fc7044cb514add8918875c5f281196f09686c11c7524fe9397d8bbe1f8aa";
+        url     = "https://download.visualstudio.microsoft.com/download/pr/9f8f2c2c-e531-4a5d-b7ed-1e7e4b8bbc29/12e87ade15ce29558b40099d6c152b10/dotnet-sdk-6.0.422-linux-arm64.tar.gz";
+        sha512  = "c03c3708061f266a3d7fb5bf2240f5bdd00be4d877dc3dc62b95a857f2ad62c80dd4c54f5257737ef7bad3cb458685d7f2bcfe71c3562075ac3aed660df8ae41";
       };
       x86_64-darwin = {
-        url     = "https://download.visualstudio.microsoft.com/download/pr/270b615f-5281-4c58-980f-d9f7a08db642/3e874492a9cb0d5b87195c596b46d609/dotnet-sdk-6.0.421-osx-x64.tar.gz";
-        sha512  = "93570a4efc929050b36ad53adca2be803c4cd8ebd9f2553b0f3e325af0629f9854ed39ec8ed0bde4302985c74143763b3a7bef89b1bcecbcec99e137777181d6";
+        url     = "https://download.visualstudio.microsoft.com/download/pr/818b0c97-95cc-4da8-b5af-05f6854c5e89/200ee246643a1d6a0436ad967ae705f1/dotnet-sdk-6.0.422-osx-x64.tar.gz";
+        sha512  = "a301982e64a18cf06577463fc3e2e179c06a31597b1b32127b1196dba755bcc3323edb618f6000c9f4f9ed902c671377a459e9ac90da2c761744fc1d57e220cf";
       };
       aarch64-darwin = {
-        url     = "https://download.visualstudio.microsoft.com/download/pr/ed341e9a-7848-4036-bf88-00cffa9fe535/52887ced41272bf177a9ef6ac04563a2/dotnet-sdk-6.0.421-osx-arm64.tar.gz";
-        sha512  = "83870fbe802cdea4ca014eb5dc0cd899deed952d8cfeb862f74bf68d80bfa81e814a3d90381615bb6e26dc39bfcbc82f975462665bf65294d25249e2ea365332";
+        url     = "https://download.visualstudio.microsoft.com/download/pr/2f0c0bae-a26c-44c1-bd9e-9fcd42548066/c88dc835e8ac824d992696122c10d959/dotnet-sdk-6.0.422-osx-arm64.tar.gz";
+        sha512  = "7bb885b605f51cffcb235a6bb6f0eccef7a211e67480fa6243b0cb8899dfd60c4c0501579c0c1dc7fb267aea5db5a6d35cf9e2a35903772797a66360fa171b3b";
       };
     };
     inherit packages;
   };
 
   sdk_6_0_1xx = buildNetSdk {
-    version = "6.0.129";
+    version = "6.0.130";
     srcs = {
       x86_64-linux = {
-        url     = "https://download.visualstudio.microsoft.com/download/pr/7bb40f2e-6ef7-43d6-b0cb-b74d974a5675/cf48bfe3825b1d419da055a8d8f16101/dotnet-sdk-6.0.129-linux-x64.tar.gz";
-        sha512  = "fb4991e5b0297ea0c65dd84300f0c11bef4589b19012556f67eb10970bd3ee50a58bad59023e1d266a8d9688a71c23458e0d21b8cd9adb75d21c47b59987aabe";
+        url     = "https://download.visualstudio.microsoft.com/download/pr/3d0d3892-fec9-4764-8638-b579b1b9e222/dd4c14a3c27929671362c89fe3378677/dotnet-sdk-6.0.130-linux-x64.tar.gz";
+        sha512  = "dd4e3e5e24c0bc387dc6ed3fa833236d3f444efc0b12a256dcd73f5f4431488b516143d63019c6e9430173adebb07406b52e78a102f9e143a7e3f16361228b32";
       };
       aarch64-linux = {
-        url     = "https://download.visualstudio.microsoft.com/download/pr/ceb30bb4-f3b9-4195-b549-76e49ace533b/60fb639b9c621ba00946765d1be575c0/dotnet-sdk-6.0.129-linux-arm64.tar.gz";
-        sha512  = "58185fa68b9a7bd373b8c4ad9f2d14d0379e6758007bfbe52a640cb432eec91267ff7df94fc57ec0d0d16b8ab5a0838a623c31d3cf36384b3a77697d3a8cfd86";
+        url     = "https://download.visualstudio.microsoft.com/download/pr/b7e1a062-bd07-4aab-90c8-0d91994ce0c5/1d399c3f9cc73c767e6927ad4f60c5c5/dotnet-sdk-6.0.130-linux-arm64.tar.gz";
+        sha512  = "95767eb4da8e3fb50992ec48df178fba9e2a7beaae26c5fdd8ecd4dae605ec048b83180a2bcb72c836468a99607179f9193ce0e1980bc95484865f559cc91789";
       };
       x86_64-darwin = {
-        url     = "https://download.visualstudio.microsoft.com/download/pr/2e1ce563-4b66-4bed-b092-a411755b0101/e6abdcbec6cb93a3f3c74f3b25eb0dac/dotnet-sdk-6.0.129-osx-x64.tar.gz";
-        sha512  = "b4b70a211eaabc9b3a34fe197ca4c69e4a167484445fbbc6df326c972047c813a6ef9a89830d0105ffa00bc8754f8b728e102fba35f89fd9caafe139d45b4eef";
+        url     = "https://download.visualstudio.microsoft.com/download/pr/fa013cb2-8b3c-4986-8863-dd526d13503e/ac0c886e8c9837784ff02db082ac4a53/dotnet-sdk-6.0.130-osx-x64.tar.gz";
+        sha512  = "8102f1432343538f45d0d49e518edb7ba0000d1ae7f7306611d2e17a205baa4215281250b45cf11900f45db0622fd190bf7d57f2b63cc8b1b4bd106128564522";
       };
       aarch64-darwin = {
-        url     = "https://download.visualstudio.microsoft.com/download/pr/bd5e3be9-a283-4cfe-afd8-b217d2429ad2/0339d0cf86b7b8fa5831d0788175c34a/dotnet-sdk-6.0.129-osx-arm64.tar.gz";
-        sha512  = "065a6b54fc5044d335371c6244c633d3a64d6813ebcef9db19fe0dce4f15c381109b537efab8ff1a9850d83721b0783b4f5f58c048cd6e8f05a32d12eebd430a";
+        url     = "https://download.visualstudio.microsoft.com/download/pr/8c72ae1a-38b3-4a30-81d5-408073f96d64/2e3493ea5498d598193746232d4be684/dotnet-sdk-6.0.130-osx-arm64.tar.gz";
+        sha512  = "9d8273f73e842a3a1a71a2ba5c2f0dce74821e1302ef34843817a3f5c49df83d662bf6c7031dba7a8362903a870f759c7976176209781a3c4ade6c66e6824c41";
       };
     };
     inherit packages;
diff --git a/pkgs/development/compilers/dotnet/versions/7.0.nix b/pkgs/development/compilers/dotnet/versions/7.0.nix
index 21d7884c482d..dc2e5d704a33 100644
--- a/pkgs/development/compilers/dotnet/versions/7.0.nix
+++ b/pkgs/development/compilers/dotnet/versions/7.0.nix
@@ -4,232 +4,232 @@
 
 let
   packages = { fetchNuGet }: [
-      (fetchNuGet { pname = "Microsoft.AspNetCore.App.Runtime.linux-arm"; version = "7.0.18"; sha256 = "001f6hj331sy712yq1p1yzdgpxmdz0zk8ikgyb18sxf2xflggrk5"; })
-      (fetchNuGet { pname = "Microsoft.AspNetCore.App.Runtime.linux-arm64"; version = "7.0.18"; sha256 = "171ygqrbjza8d83awyrqpm1rhrdxmq3x5qdpc2w907nidf3h1nwz"; })
-      (fetchNuGet { pname = "Microsoft.AspNetCore.App.Runtime.linux-musl-arm64"; version = "7.0.18"; sha256 = "1b5zgxzg71jgr2rqgxqgnl9b98zq466g6l15nzkqwa4pj3y2i4s9"; })
-      (fetchNuGet { pname = "Microsoft.AspNetCore.App.Runtime.linux-musl-x64"; version = "7.0.18"; sha256 = "0f9dhjgw35i9z96qgq3q7fn0csnd3f17z6db3vw1j126k8zy67yy"; })
-      (fetchNuGet { pname = "Microsoft.AspNetCore.App.Runtime.linux-x64"; version = "7.0.18"; sha256 = "0i90lp2pm3x39ypilrvf6v98j3pgj68palw1dimdf04vfi874s7l"; })
-      (fetchNuGet { pname = "Microsoft.AspNetCore.App.Runtime.osx-x64"; version = "7.0.18"; sha256 = "1z11qffsbnfdk2a5yk7q8ck12v0vck60nvcd2wrqawv87pxga033"; })
-      (fetchNuGet { pname = "Microsoft.AspNetCore.App.Runtime.win-arm64"; version = "7.0.18"; sha256 = "1awf0s6z1grny54s3lbi01978kywx0vdrif0vx6m75n11lps33g1"; })
-      (fetchNuGet { pname = "Microsoft.AspNetCore.App.Runtime.win-x64"; version = "7.0.18"; sha256 = "0kq0l498p54314ajsjpsi0rkm17frhsagw60v0ldr7d6y3faw0yf"; })
-      (fetchNuGet { pname = "Microsoft.AspNetCore.App.Runtime.win-x86"; version = "7.0.18"; sha256 = "19g4h724s358an75wksgcg2q2pp6qkll4rrrb36b174cwr265ahv"; })
-      (fetchNuGet { pname = "Microsoft.AspNetCore.App.Runtime.win-arm"; version = "7.0.18"; sha256 = "08d6fhhppdh2arzj9vp7qplsfr513p4fvzl190ybz5zrzxx3nayx"; })
-      (fetchNuGet { pname = "Microsoft.AspNetCore.App.Ref"; version = "7.0.18"; sha256 = "034bccx7g5bn7kjfqsdvr95v7vw2c5cvnifna0v877lb3pbnml6x"; })
-      (fetchNuGet { pname = "Microsoft.AspNetCore.App.Runtime.linux-musl-arm"; version = "7.0.18"; sha256 = "1likvj92lgfmbd4ccyff3byv2089wq7xijjcbgq28vp3zha0lr3a"; })
-      (fetchNuGet { pname = "Microsoft.AspNetCore.App.Runtime.osx-arm64"; version = "7.0.18"; sha256 = "01axi419jqvnv1zpx0fv5ky7d1cdysnn800f6ix8jhrab9h9vlwq"; })
-      (fetchNuGet { pname = "Microsoft.NETCore.App.Host.linux-arm"; version = "7.0.18"; sha256 = "1lzmmirxivs9aldpi30j77mhm15fsnr5pi3r4i1nbarqz3jm6kbd"; })
-      (fetchNuGet { pname = "Microsoft.NETCore.App.Host.linux-arm64"; version = "7.0.18"; sha256 = "0bwcny3bc7swh57isij2v5y4qbd08zvi126nwkvyw43piaqn77yy"; })
-      (fetchNuGet { pname = "Microsoft.NETCore.App.Host.linux-musl-arm64"; version = "7.0.18"; sha256 = "0php4saswya3ag0zjb95ybb4xj8z8vpbb3bp1gq4xf6kdmkzaz7n"; })
-      (fetchNuGet { pname = "Microsoft.NETCore.App.Host.linux-musl-x64"; version = "7.0.18"; sha256 = "0864r2xnczssc4sfrqbvjdqnha0gblrkza4xjk0r0ndiwshyrg3x"; })
-      (fetchNuGet { pname = "Microsoft.NETCore.App.Host.linux-x64"; version = "7.0.18"; sha256 = "0a0f8icdzps5cjvgxw0pi26vjilnvii5dqljg1a874y9pazamk4q"; })
-      (fetchNuGet { pname = "Microsoft.NETCore.App.Host.osx-x64"; version = "7.0.18"; sha256 = "1h626c86379jsk2fndiqr3zhhrnz46vz7m4s5pp1kz02pss6wjrf"; })
-      (fetchNuGet { pname = "Microsoft.NETCore.App.Host.win-arm64"; version = "7.0.18"; sha256 = "1708v99wr4zgflnpjwpsl7dq3jc42mi03z18055p03vmpqrl25f8"; })
-      (fetchNuGet { pname = "Microsoft.NETCore.App.Host.win-x64"; version = "7.0.18"; sha256 = "1xfi9h1gkjkssxnn5gdpa2idhrxcf7yfwgmsy30q227lql7z9hxv"; })
-      (fetchNuGet { pname = "Microsoft.NETCore.App.Host.win-x86"; version = "7.0.18"; sha256 = "18r8vzsgwqnhppx8jw7x8ycamdpsrgfhph9b7s6cj7kzam8vihqn"; })
-      (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.linux-arm"; version = "7.0.18"; sha256 = "16r1dc61i96df158qk6295lrkpdqd9fy6yqj15027x76xxf234az"; })
-      (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.linux-arm64"; version = "7.0.18"; sha256 = "098c1iaz3pbwha79vlfbl98cn6zfh3ynnlm2307z5mzb7i4lk7lr"; })
-      (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.linux-musl-arm64"; version = "7.0.18"; sha256 = "16aaf3137rpf93k4k24qdbvy8y0lfj9mqv3zym5ndfd3jw1jh1fh"; })
-      (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.linux-musl-x64"; version = "7.0.18"; sha256 = "0fvb9s3z71pwmqag8zk2bl97dq8jjnpw45mh0gya49wvw15p1436"; })
-      (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.linux-x64"; version = "7.0.18"; sha256 = "1108sk0r71g2rz86yppz7fmlf69ij6gyrazyvyk9hkhl90lrfzyr"; })
-      (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.osx-x64"; version = "7.0.18"; sha256 = "0b0cl249p51pa36fcwng31g2cp2f8m1360g0cfizq4wb4zfa6a62"; })
-      (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.win-arm64"; version = "7.0.18"; sha256 = "1xn4v5avi78sww9a5n2ijf96sv7jixablpqr8fin21fsgg9clqs1"; })
-      (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.win-x64"; version = "7.0.18"; sha256 = "03d8zp3f5md61kbawpiac4qrlsn5l4xj2k07kn4s6vkg4r3wz2ia"; })
-      (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.win-x86"; version = "7.0.18"; sha256 = "0hz49hsrk389lmbz8hk057vsqg1m9x8r1p2vh9w1kc3y2ljp9gbn"; })
-      (fetchNuGet { pname = "Microsoft.NETCore.DotNetAppHost"; version = "7.0.18"; sha256 = "0j5vjd20f492q6sj9i74cflyqzrxr4wbqwdz8yjlaimw00yyg07z"; })
-      (fetchNuGet { pname = "Microsoft.NETCore.DotNetHost"; version = "7.0.18"; sha256 = "1nvlbkhp66zangjpzf5cj0gywkd5kv81hzbfk7igdfbpwmganw7b"; })
-      (fetchNuGet { pname = "Microsoft.NETCore.DotNetHostPolicy"; version = "7.0.18"; sha256 = "0ng09aacwi2kxws1i695ri8kssn01wb7cd7i3rf3sx4bcyx4ax18"; })
-      (fetchNuGet { pname = "Microsoft.NETCore.DotNetHostResolver"; version = "7.0.18"; sha256 = "0x77z0kqs56jnr9yma21pdlpw2gjyxccjdk0cgybc7fg36rzpz5w"; })
-      (fetchNuGet { pname = "runtime.linux-arm64.Microsoft.NETCore.DotNetAppHost"; version = "7.0.18"; sha256 = "1ijq8jhvfsij3q4irb6a0mnlp57q3yw41qp3bsymi6pbvg9pwm7j"; })
-      (fetchNuGet { pname = "runtime.linux-arm64.Microsoft.NETCore.DotNetHost"; version = "7.0.18"; sha256 = "12rvs32ggwg4h8j2vgyx0aj8kl1yr17d6d7mw1x26qsaj4y0grzh"; })
-      (fetchNuGet { pname = "runtime.linux-arm64.Microsoft.NETCore.DotNetHostPolicy"; version = "7.0.18"; sha256 = "0mlaifk2xjh2w61zp2hqi4nnqlwzvzl2mn3k8p5q3d4zzjna8apy"; })
-      (fetchNuGet { pname = "runtime.linux-arm64.Microsoft.NETCore.DotNetHostResolver"; version = "7.0.18"; sha256 = "1ccr55ps2z3vq5bl8mlsfh7ks608fygdrdrw5v7cgf2z7ihihlfh"; })
-      (fetchNuGet { pname = "runtime.linux-arm.Microsoft.NETCore.DotNetAppHost"; version = "7.0.18"; sha256 = "02lj8ch0sq8avqd13p9gk8b7xfwm1rc6qg9q6vpwjdmi80f6zs28"; })
-      (fetchNuGet { pname = "runtime.linux-arm.Microsoft.NETCore.DotNetHost"; version = "7.0.18"; sha256 = "14ap1ap85w17h1cq5dlkzp9wnmrr02gxaq8a33ri84gaknsigv41"; })
-      (fetchNuGet { pname = "runtime.linux-arm.Microsoft.NETCore.DotNetHostPolicy"; version = "7.0.18"; sha256 = "0ipy0s2s54xr9zvy44k13wkk3dd347ks5nz4h27g958ilc9xz3xl"; })
-      (fetchNuGet { pname = "runtime.linux-arm.Microsoft.NETCore.DotNetHostResolver"; version = "7.0.18"; sha256 = "0w53iz43wrzyyy4rahvgbpc4xv4yrhxh1bqmcjsycvv5vf0svj2x"; })
-      (fetchNuGet { pname = "runtime.linux-musl-arm64.Microsoft.NETCore.DotNetAppHost"; version = "7.0.18"; sha256 = "1x0b90pydgy0i0kbcbfipz4v0pmjd52862rx8d3r68vkfxym7ra1"; })
-      (fetchNuGet { pname = "runtime.linux-musl-arm64.Microsoft.NETCore.DotNetHost"; version = "7.0.18"; sha256 = "0glgv2dxyf5k6rl7qd9df4s8vrh8wkx2nwv31hcphb3wsg959kax"; })
-      (fetchNuGet { pname = "runtime.linux-musl-arm64.Microsoft.NETCore.DotNetHostPolicy"; version = "7.0.18"; sha256 = "00y32d2c64kkgrri248rp0api9d9xl80ggfhspfc9n08s3bmcknj"; })
-      (fetchNuGet { pname = "runtime.linux-musl-arm64.Microsoft.NETCore.DotNetHostResolver"; version = "7.0.18"; sha256 = "0s6g0jw99y1mv008q2mckqx0dkhjcpy49kmvm7kpzb20sw4hqqw5"; })
-      (fetchNuGet { pname = "runtime.linux-musl-x64.Microsoft.NETCore.DotNetAppHost"; version = "7.0.18"; sha256 = "190y1n6yv8xqsrmas96ragzvk54kc58mgr7yg0h50i8mq77f96pb"; })
-      (fetchNuGet { pname = "runtime.linux-musl-x64.Microsoft.NETCore.DotNetHost"; version = "7.0.18"; sha256 = "1f6dwf0al9ma9m2n63w1b3yrrl5zpqy2knhrcg76njmk2899w1sc"; })
-      (fetchNuGet { pname = "runtime.linux-musl-x64.Microsoft.NETCore.DotNetHostPolicy"; version = "7.0.18"; sha256 = "0q3qzh2ni435zygimvp35m3c745fafqa87c8gd6ps1fmc5iv9w1p"; })
-      (fetchNuGet { pname = "runtime.linux-musl-x64.Microsoft.NETCore.DotNetHostResolver"; version = "7.0.18"; sha256 = "039sh5f8pq1nf1gj5w1ghrpqd3bci2a3ys2sh33r3skhys4k21y8"; })
-      (fetchNuGet { pname = "runtime.linux-x64.Microsoft.NETCore.DotNetAppHost"; version = "7.0.18"; sha256 = "0a2vzgc5pgrv0hn6ijah7s0y2i7aw8nak6mai58mx307kwrawsh7"; })
-      (fetchNuGet { pname = "runtime.linux-x64.Microsoft.NETCore.DotNetHost"; version = "7.0.18"; sha256 = "00gq0fgkz198461470gpmixl2b5lgz02yzyz7mz297d2lxixq54y"; })
-      (fetchNuGet { pname = "runtime.linux-x64.Microsoft.NETCore.DotNetHostPolicy"; version = "7.0.18"; sha256 = "1k1ri4y8d49sqyayi3lg8gzybnb9bmgcqzm8qisi8cf2yrlypc23"; })
-      (fetchNuGet { pname = "runtime.linux-x64.Microsoft.NETCore.DotNetHostResolver"; version = "7.0.18"; sha256 = "1q5zg65jlnp0vv4j4ya3kl70843smzm5ljwx21cx3dlnl92d39v4"; })
-      (fetchNuGet { pname = "runtime.osx-x64.Microsoft.NETCore.DotNetAppHost"; version = "7.0.18"; sha256 = "12hvpqgmil06z28ix5x51rbzm99vdxgqr1090c10b9gcy231bbhn"; })
-      (fetchNuGet { pname = "runtime.osx-x64.Microsoft.NETCore.DotNetHost"; version = "7.0.18"; sha256 = "0n9hvj7a4f44g38x111ajcjmr3ixq2g2wh3yxr2jjpv45znk0nyz"; })
-      (fetchNuGet { pname = "runtime.osx-x64.Microsoft.NETCore.DotNetHostPolicy"; version = "7.0.18"; sha256 = "02fd5il9bihnhmvhybw1sqsb31241kg035vwxgghr17bbyb9yx8r"; })
-      (fetchNuGet { pname = "runtime.osx-x64.Microsoft.NETCore.DotNetHostResolver"; version = "7.0.18"; sha256 = "1sad1x4sg06rfh2bjrrwy2gk5ik396p7rggcv3p9v9xfl3kbjkwp"; })
-      (fetchNuGet { pname = "runtime.win-arm64.Microsoft.NETCore.DotNetAppHost"; version = "7.0.18"; sha256 = "1mql52lndslpqxb673cv02lif9jxahgm62977r3rdlypljynbymg"; })
-      (fetchNuGet { pname = "runtime.win-arm64.Microsoft.NETCore.DotNetHost"; version = "7.0.18"; sha256 = "0gqnw3hvfpvy1lddl98y3jiv69x11ahkcxcnix9sdzlpf4vvshfl"; })
-      (fetchNuGet { pname = "runtime.win-arm64.Microsoft.NETCore.DotNetHostPolicy"; version = "7.0.18"; sha256 = "1vwjqnyhskvmxnym65a48yh6w9l004a9xk6dfwdqmdxxlv3d14lc"; })
-      (fetchNuGet { pname = "runtime.win-arm64.Microsoft.NETCore.DotNetHostResolver"; version = "7.0.18"; sha256 = "006i3qylks25j3cirlafml07wrhlcb3pmpzknbx1vr4a8q29498d"; })
-      (fetchNuGet { pname = "runtime.win-x64.Microsoft.NETCore.DotNetAppHost"; version = "7.0.18"; sha256 = "05jf0dvxa1wqamdapclwrkfdxvll4cah2i81shaf9crhw3wlpmxq"; })
-      (fetchNuGet { pname = "runtime.win-x64.Microsoft.NETCore.DotNetHost"; version = "7.0.18"; sha256 = "1vyxww3kwz8dw92v0rd3f1phiif01pymbissm3pb9mrf977dkav9"; })
-      (fetchNuGet { pname = "runtime.win-x64.Microsoft.NETCore.DotNetHostPolicy"; version = "7.0.18"; sha256 = "1p2dbqwqflh9qnhq70m3jlycs9agyfy7ird9g83icav1v504vm89"; })
-      (fetchNuGet { pname = "runtime.win-x64.Microsoft.NETCore.DotNetHostResolver"; version = "7.0.18"; sha256 = "1y0kka39xahz3a7fjdngd3bcqw6xv7wwypdnq3vq3agcadm1q0rn"; })
-      (fetchNuGet { pname = "runtime.win-x86.Microsoft.NETCore.DotNetAppHost"; version = "7.0.18"; sha256 = "1070gji2j2dkb9130c0s3pc5bns4xwkl7y2n4daqz2haqrc1lqr3"; })
-      (fetchNuGet { pname = "runtime.win-x86.Microsoft.NETCore.DotNetHost"; version = "7.0.18"; sha256 = "1qi51x84nn6b69gpqqxqngc9bp4y6z0r6sqirdgfg370vqly2qhi"; })
-      (fetchNuGet { pname = "runtime.win-x86.Microsoft.NETCore.DotNetHostPolicy"; version = "7.0.18"; sha256 = "1q6kxjzi300jkinp9dhnvwf84pj4kh11n3jv0vqkivlycbja92dh"; })
-      (fetchNuGet { pname = "runtime.win-x86.Microsoft.NETCore.DotNetHostResolver"; version = "7.0.18"; sha256 = "0q97bwr9rrq5p6arziz9y31hliplydbkybp8r3ajrl6qh0xlfbd5"; })
-      (fetchNuGet { pname = "Microsoft.NETCore.App.Host.linux-musl-arm"; version = "7.0.18"; sha256 = "0hlaxh06z9az86vd8w373hwb40fmz1x43jabl8qdz26cm8hlzngv"; })
-      (fetchNuGet { pname = "Microsoft.NETCore.App.Host.osx-arm64"; version = "7.0.18"; sha256 = "13pdmcjd64g89wlgj2aiimi22z3nmy6s4wm890h0j3vfgj8q6yhj"; })
-      (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.linux-musl-arm"; version = "7.0.18"; sha256 = "09zc0k8wv42par873a6gkyknbpgfsam7mmnva3yyxbpm7pxn945y"; })
-      (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.osx-arm64"; version = "7.0.18"; sha256 = "0wj6413ijh62g3pbacirjb26qr38nghps29wcqkp4p56sybx24xf"; })
-      (fetchNuGet { pname = "Microsoft.NETCore.App.Ref"; version = "7.0.18"; sha256 = "1vj04hfs9xwm2k3r2xgzrwbbr4mxb4n1ri4xsdds0vr0qbfgrb8p"; })
-      (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.Mono.linux-arm"; version = "7.0.18"; sha256 = "1i5an4bhlcwxqbdza35x6l1wmhlsw90nqg9kk9r4qfffyccnsz6y"; })
-      (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.Mono.linux-arm64"; version = "7.0.18"; sha256 = "13i6kwkrbifsbjqjx5ik032s1plg1db6wwbvw10qrg82y4x9989g"; })
-      (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.Mono.linux-musl-x64"; version = "7.0.18"; sha256 = "0328z9jvp0agf7wwwh8hhz5l1r0xpspx6rszdak6mxjqpgs0nlq3"; })
-      (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.Mono.linux-x64"; version = "7.0.18"; sha256 = "0gdvsig08gfcr5jw9a7prqwdm2lk5qz2cq4n0daw1k4572mg4qp2"; })
-      (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.Mono.osx-arm64"; version = "7.0.18"; sha256 = "18vy1jkylb3842wc1wjki70rk5wvx3wxfgyvqf15mfgiaw5mp851"; })
-      (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.Mono.osx-x64"; version = "7.0.18"; sha256 = "1f98jankwxk9d99pmrdnaflydxcj3wc0wkxc13z6plvl63rprphs"; })
-      (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.Mono.win-x64"; version = "7.0.18"; sha256 = "18sdls7flsdzbdd3jfrmlz0ssvzbfwj8ackx6p40mzr9w4hlnli6"; })
-      (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.Mono.win-x86"; version = "7.0.18"; sha256 = "0j75anj33h6avdjhvdcqbfbaxj7l07n0850f906ral0mvgfd4ndg"; })
-      (fetchNuGet { pname = "runtime.linux-musl-arm.Microsoft.NETCore.DotNetAppHost"; version = "7.0.18"; sha256 = "0gqn98lic556yf57cgw2gsfrb31v6l5mn3z7kinnp9h25vhbc8wb"; })
-      (fetchNuGet { pname = "runtime.linux-musl-arm.Microsoft.NETCore.DotNetHost"; version = "7.0.18"; sha256 = "18gq0h1x6x41qpk754s0vwx6lxf9bhmr61hix3aizh1b3brxhmjw"; })
-      (fetchNuGet { pname = "runtime.linux-musl-arm.Microsoft.NETCore.DotNetHostPolicy"; version = "7.0.18"; sha256 = "0s0pmas9a344kn7srq0pfc8fgwn6p9qkmnhpcnh1yfkpj4k8nd0q"; })
-      (fetchNuGet { pname = "runtime.linux-musl-arm.Microsoft.NETCore.DotNetHostResolver"; version = "7.0.18"; sha256 = "0adz0q7y6xqrg9s71vzwnv6cx871m5ya2kfaiqiff32f7296gcq3"; })
-      (fetchNuGet { pname = "runtime.osx-arm64.Microsoft.NETCore.DotNetAppHost"; version = "7.0.18"; sha256 = "1ifibwfypiyc9wl538ivlby5l0csisj5visqnfifwwxg4qhhy2vy"; })
-      (fetchNuGet { pname = "runtime.osx-arm64.Microsoft.NETCore.DotNetHost"; version = "7.0.18"; sha256 = "0abdf1319zyia7zxqfv32c4fb9rw0qw3qivlbs1ms8qk4c7a5w4j"; })
-      (fetchNuGet { pname = "runtime.osx-arm64.Microsoft.NETCore.DotNetHostPolicy"; version = "7.0.18"; sha256 = "1nf81ngbhr40d81hq6c2d21x0cjs7qh269z1ynwdiv3kslb79sf1"; })
-      (fetchNuGet { pname = "runtime.osx-arm64.Microsoft.NETCore.DotNetHostResolver"; version = "7.0.18"; sha256 = "1cqv7vvf1v71r5ndwammwy9rvwrbmhmwwpfwpf9635mgnh0707ph"; })
-      (fetchNuGet { pname = "Microsoft.NETCore.App.Crossgen2.linux-musl-arm"; version = "7.0.18"; sha256 = "0cdj0g3cyhpfbkpqzbxslhx7pc8a406c1w80y4bxd1dxmwi387p2"; })
-      (fetchNuGet { pname = "Microsoft.NETCore.App.Crossgen2.linux-musl-arm64"; version = "7.0.18"; sha256 = "0mhahzk11a5lziij0w5ahfapcf219zkwfihwqaymwlgyzxdzilq1"; })
-      (fetchNuGet { pname = "Microsoft.NETCore.App.Crossgen2.linux-musl-x64"; version = "7.0.18"; sha256 = "01dc6m6hwv4zzbpxbib4338j7rhm6kxgz92f84idjnxc9mjrz823"; })
-      (fetchNuGet { pname = "Microsoft.NETCore.App.Crossgen2.linux-arm"; version = "7.0.18"; sha256 = "006s6a5xhkvpxm0f25g85xiks7cv5gb6zfqakw4hq4r9sisi5mvd"; })
-      (fetchNuGet { pname = "Microsoft.NETCore.App.Crossgen2.linux-arm64"; version = "7.0.18"; sha256 = "1645i1pqd8a700hf7l0bj2hyflyllsrhvw9nc70fid6sin20nm5y"; })
-      (fetchNuGet { pname = "Microsoft.NETCore.App.Crossgen2.linux-x64"; version = "7.0.18"; sha256 = "0sabmz4ifqgc22hr1dp5ci7xlhlfxdzl2zvlf53mwkn79818liar"; })
-      (fetchNuGet { pname = "Microsoft.NETCore.App.Crossgen2.osx-x64"; version = "7.0.18"; sha256 = "1nda77r6bxa21zph5zymnnk1wym8sla2qrnrqrd0a9sqmq82v3bp"; })
-      (fetchNuGet { pname = "Microsoft.NETCore.App.Crossgen2.osx-arm64"; version = "7.0.18"; sha256 = "1imi3c2g4mpc83ppbl4ipq9v73h2pd3497dcpz8mcv1z82ga0pdy"; })
-      (fetchNuGet { pname = "Microsoft.NETCore.App.Host.win-arm"; version = "7.0.18"; sha256 = "1iws4awg6ph7xblcckza1xd0wzq05s7fkx86j4acsxqmvi696fp7"; })
-      (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.win-arm"; version = "7.0.18"; sha256 = "1ix4j79k2azkanpnx63ifjrmfh3qx501rzk3bknf7vh2c0ds2p9d"; })
-      (fetchNuGet { pname = "runtime.win-arm.Microsoft.NETCore.DotNetAppHost"; version = "7.0.18"; sha256 = "07n3npyw36jddvixnc89yhkj1nj70a1fxh7skq92720z5i76wwbd"; })
-      (fetchNuGet { pname = "runtime.win-arm.Microsoft.NETCore.DotNetHost"; version = "7.0.18"; sha256 = "02girjrnralf4pdz4cv0pvvxvkakriqakgw95ci0ywqn5gv379b0"; })
-      (fetchNuGet { pname = "runtime.win-arm.Microsoft.NETCore.DotNetHostPolicy"; version = "7.0.18"; sha256 = "1wbals50h7lnnqpgrinvq5hknl6mvfkgjd83i8c54cpimcy20myl"; })
-      (fetchNuGet { pname = "runtime.win-arm.Microsoft.NETCore.DotNetHostResolver"; version = "7.0.18"; sha256 = "07n6jq7h5750zznv65jjasis010n4b70416mmnc0rn6vdnz3fsbn"; })
-      (fetchNuGet { pname = "Microsoft.NETCore.App.Composite"; version = "7.0.18"; sha256 = "14h8i3539ghggliix8b7gnzw1wx4cgb6qn7qqx7zaij6b34r9plz"; })
-      (fetchNuGet { pname = "runtime.linux-arm64.Microsoft.DotNet.ILCompiler"; version = "7.0.18"; sha256 = "1hmnw40zw3m1bwlb0xdnfl1gf66551cyq9vavvj3mnxpximwbc02"; })
-      (fetchNuGet { pname = "runtime.linux-musl-arm64.Microsoft.DotNet.ILCompiler"; version = "7.0.18"; sha256 = "0a1ln258drgykx1x8hswbfy991mjh017j5f47avgbkq7gxbwvsjx"; })
-      (fetchNuGet { pname = "runtime.linux-musl-x64.Microsoft.DotNet.ILCompiler"; version = "7.0.18"; sha256 = "1j37aizp32bfdjs5p1grjdqzyci37gblgj4vxgr585v1whs5bvnx"; })
-      (fetchNuGet { pname = "runtime.linux-x64.Microsoft.DotNet.ILCompiler"; version = "7.0.18"; sha256 = "1j7q7nbw887l7np3sy1snxyvwmlfq4kfhbrdx73ng721mv7bvkdd"; })
-      (fetchNuGet { pname = "runtime.osx-x64.Microsoft.DotNet.ILCompiler"; version = "7.0.18"; sha256 = "0518w3ifl093jap27p2xhh923if5r01jg70sbkfh3sgc7vwqjsdd"; })
-      (fetchNuGet { pname = "runtime.win-arm64.Microsoft.DotNet.ILCompiler"; version = "7.0.18"; sha256 = "1h2fkbva4ddaswkw3zq4bv7gvkxx811svdczxvjx2vhw2fyw3b45"; })
-      (fetchNuGet { pname = "runtime.win-x64.Microsoft.DotNet.ILCompiler"; version = "7.0.18"; sha256 = "07sbkvvx4ixl0yxy91y0avbr7fv2j26p25c9cq42w4jkjzacfjc1"; })
+      (fetchNuGet { pname = "Microsoft.AspNetCore.App.Runtime.linux-arm"; version = "7.0.19"; sha256 = "0da47yabymn7q9viymv9g3apmmaibfddnlix67qpxwn9cikbq459"; })
+      (fetchNuGet { pname = "Microsoft.AspNetCore.App.Runtime.linux-arm64"; version = "7.0.19"; sha256 = "0i8mhcy09lmjqhzqmwvp0n5qkizdqin3vap206b2ad28yl6963wz"; })
+      (fetchNuGet { pname = "Microsoft.AspNetCore.App.Runtime.linux-musl-arm64"; version = "7.0.19"; sha256 = "0gqwm6as0lyjawwvq7cgks0ji7cfld495h7hcl553f1vpy3wsn2q"; })
+      (fetchNuGet { pname = "Microsoft.AspNetCore.App.Runtime.linux-musl-x64"; version = "7.0.19"; sha256 = "099yl2cpqmajdlax174z4bxzw2m4ry5abfx8s10q7h6d95fcnmrp"; })
+      (fetchNuGet { pname = "Microsoft.AspNetCore.App.Runtime.linux-x64"; version = "7.0.19"; sha256 = "1zypq8jgk9z3kn3mmkdijvc9h65iyy7gaif9p0vhnylmvvm89jzp"; })
+      (fetchNuGet { pname = "Microsoft.AspNetCore.App.Runtime.osx-x64"; version = "7.0.19"; sha256 = "1jmg7sxjnsmaa7ag6bgyhndlhvibswcmnrw0n6sr6crw2y0in2a3"; })
+      (fetchNuGet { pname = "Microsoft.AspNetCore.App.Runtime.win-arm64"; version = "7.0.19"; sha256 = "0dyk2x5jc3vdpfyl8q6q6wqz8hwzsgvyrjd3956mvs3mrp00brp6"; })
+      (fetchNuGet { pname = "Microsoft.AspNetCore.App.Runtime.win-x64"; version = "7.0.19"; sha256 = "1g941bzffbdlqlxpgq356mv6n6g72d2yn0rhv0ix53834369367i"; })
+      (fetchNuGet { pname = "Microsoft.AspNetCore.App.Runtime.win-x86"; version = "7.0.19"; sha256 = "0xz2lacyda09kxs2d7hasvh51dw6pa6xs7k0q809ni247v7bnab0"; })
+      (fetchNuGet { pname = "Microsoft.AspNetCore.App.Runtime.win-arm"; version = "7.0.19"; sha256 = "1kkkajxxdbcy1kgh80183l8v00fv1l81kx5wmxgypz15lqnpmv2l"; })
+      (fetchNuGet { pname = "Microsoft.AspNetCore.App.Ref"; version = "7.0.19"; sha256 = "19pjhnx49srxp1qwknc390gapc44019wy4adz9caxpryw0ch4l1x"; })
+      (fetchNuGet { pname = "Microsoft.AspNetCore.App.Runtime.linux-musl-arm"; version = "7.0.19"; sha256 = "184fjnln6bzg55xz1xc3bmgaanlrh7jxn48fccks163gnir0frjc"; })
+      (fetchNuGet { pname = "Microsoft.AspNetCore.App.Runtime.osx-arm64"; version = "7.0.19"; sha256 = "1dqilsqwwymy7fq2pnvjggn5mfvizqsisla0c36w53mg6xx7vn78"; })
+      (fetchNuGet { pname = "Microsoft.NETCore.App.Host.linux-arm"; version = "7.0.19"; sha256 = "1pld28mqy2gy5rsy688y0n5lhzrqzhv1pszqq4bx2ki2rcqka4y6"; })
+      (fetchNuGet { pname = "Microsoft.NETCore.App.Host.linux-arm64"; version = "7.0.19"; sha256 = "1dv4vk07a7kj53sk1nf63h51swzk9yl4j7jdvkc5w2v0z5a186hm"; })
+      (fetchNuGet { pname = "Microsoft.NETCore.App.Host.linux-musl-arm64"; version = "7.0.19"; sha256 = "03766ks38fir978qm6s958zzywvqlnfqsj4mq14ifq36dphmkp4a"; })
+      (fetchNuGet { pname = "Microsoft.NETCore.App.Host.linux-musl-x64"; version = "7.0.19"; sha256 = "034v4p5w946yvfialqszaywjncqixv9bpc3x8v87wyr95pa3b7bv"; })
+      (fetchNuGet { pname = "Microsoft.NETCore.App.Host.linux-x64"; version = "7.0.19"; sha256 = "0jcfmaq4ckcpywwxm1ack9xa001aic8pn85ggglidxgcfdr6mpzd"; })
+      (fetchNuGet { pname = "Microsoft.NETCore.App.Host.osx-x64"; version = "7.0.19"; sha256 = "1srx048x6nv88s308bfn2vsg9gyqvzmgn4xlzknm9yr89c5pm96q"; })
+      (fetchNuGet { pname = "Microsoft.NETCore.App.Host.win-arm64"; version = "7.0.19"; sha256 = "14l69l4fnvykmyq48i60xaipc7n72l5acjwvbvm2hg5sx848mnsv"; })
+      (fetchNuGet { pname = "Microsoft.NETCore.App.Host.win-x64"; version = "7.0.19"; sha256 = "0zs1jpj64wrjwkw3yqs3ryl08m9qlk3ksv74cy21g6bgx3xaq05y"; })
+      (fetchNuGet { pname = "Microsoft.NETCore.App.Host.win-x86"; version = "7.0.19"; sha256 = "05x34bg48y4aas3yv88ksd84vjz2jj1y7hjkwddmcpd4ni90ixmh"; })
+      (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.linux-arm"; version = "7.0.19"; sha256 = "1d84xdva4av8mv2msbi759fb13sxig0qzdr6a9pmlq8gb8hf7zma"; })
+      (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.linux-arm64"; version = "7.0.19"; sha256 = "0m30aykrzl48i8589qn8z89hm9p1yl71cdigv1f09fmwb7c6jfm3"; })
+      (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.linux-musl-arm64"; version = "7.0.19"; sha256 = "0akwsg0q1498ribamba3qkabp0rgn941dsrswb29sbpwfyyqmmgg"; })
+      (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.linux-musl-x64"; version = "7.0.19"; sha256 = "06xcc29albls44invg5dfyjf3qzcn991h7sdlbhvc5v0xyk72fhx"; })
+      (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.linux-x64"; version = "7.0.19"; sha256 = "12zgh8pvbdl99zs0rq5ajbl91r976i47hdrrvxl2hbsxl2ws3brs"; })
+      (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.osx-x64"; version = "7.0.19"; sha256 = "1lwnwxscza5m7pk83fwjz5r9kms3ybag2rl07f3gqp3b203iyyxx"; })
+      (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.win-arm64"; version = "7.0.19"; sha256 = "1kgz4594742cd72vh23ra5gr4b9sgxfim2b608z9bmp0slnr08k1"; })
+      (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.win-x64"; version = "7.0.19"; sha256 = "0njfv091dlc7aff6nj0v7g2b583ns14lkmjf93z184sgav37ynvp"; })
+      (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.win-x86"; version = "7.0.19"; sha256 = "0hssqp21mjsacxf53g7jjc6ss3689199rxymlzp1sswjhhz8w9ci"; })
+      (fetchNuGet { pname = "Microsoft.NETCore.DotNetAppHost"; version = "7.0.19"; sha256 = "1pja0r3p7n41hm0bjcdvmi4ymsd2jr7m2pcky4107dz8lf2l0axb"; })
+      (fetchNuGet { pname = "Microsoft.NETCore.DotNetHost"; version = "7.0.19"; sha256 = "1yfy711lpgngy8qmzywjmc7bv0q9j1dz4c6g23vd7q25nw05jrr4"; })
+      (fetchNuGet { pname = "Microsoft.NETCore.DotNetHostPolicy"; version = "7.0.19"; sha256 = "0ab5phjb7vs9rc2cynsn5wgxfdh4lnz97whw9n63dyqmi1zp6y7w"; })
+      (fetchNuGet { pname = "Microsoft.NETCore.DotNetHostResolver"; version = "7.0.19"; sha256 = "01v9j3j54m2ff7qdfvm5gk77vggjyfy42fjn8lcgz38gi6z57742"; })
+      (fetchNuGet { pname = "runtime.linux-arm64.Microsoft.NETCore.DotNetAppHost"; version = "7.0.19"; sha256 = "059qxvvyyqihxfmg21c3v6ykb0yf6ay88pc9r1dv27say4glr28q"; })
+      (fetchNuGet { pname = "runtime.linux-arm64.Microsoft.NETCore.DotNetHost"; version = "7.0.19"; sha256 = "09ra2dm7zqjm000rpz2l6jqsf05f97kkkd754djf337h0kskwfkg"; })
+      (fetchNuGet { pname = "runtime.linux-arm64.Microsoft.NETCore.DotNetHostPolicy"; version = "7.0.19"; sha256 = "1dbzmscgp2drqijl1rl8jkyn1bawfyzq0xlndk1knh7lwq1qhrwz"; })
+      (fetchNuGet { pname = "runtime.linux-arm64.Microsoft.NETCore.DotNetHostResolver"; version = "7.0.19"; sha256 = "0w2gvwg8mipvvp9q88asvpaxg96v7k52c535sd70b2lxmwgaf5aw"; })
+      (fetchNuGet { pname = "runtime.linux-arm.Microsoft.NETCore.DotNetAppHost"; version = "7.0.19"; sha256 = "10xjjhbivxb37yq7a417r3hmp5vvk75800jwlysfa241yq2x3ysk"; })
+      (fetchNuGet { pname = "runtime.linux-arm.Microsoft.NETCore.DotNetHost"; version = "7.0.19"; sha256 = "0frf9xf70fh595m6hg9h5wivhvm229dd9w1zij4jwsl532n9s80i"; })
+      (fetchNuGet { pname = "runtime.linux-arm.Microsoft.NETCore.DotNetHostPolicy"; version = "7.0.19"; sha256 = "1agbxkypvhcdwf2w3zfnsx7ncfi5nzhnays7b8ciawnjr3jp10gh"; })
+      (fetchNuGet { pname = "runtime.linux-arm.Microsoft.NETCore.DotNetHostResolver"; version = "7.0.19"; sha256 = "056v3fyc0bqad3kixcggzvjrvflxhiiivy90s1rd9gbcm79zyg0x"; })
+      (fetchNuGet { pname = "runtime.linux-musl-arm64.Microsoft.NETCore.DotNetAppHost"; version = "7.0.19"; sha256 = "1zya7f9gp3rr31kshw3c53wmqz5f8qdr511wf2vyi2854b1gm96v"; })
+      (fetchNuGet { pname = "runtime.linux-musl-arm64.Microsoft.NETCore.DotNetHost"; version = "7.0.19"; sha256 = "156zby9bxx1mcfnxjvgbcmlxx5zi5l3dys8kgb1wfy9ipbhcjh16"; })
+      (fetchNuGet { pname = "runtime.linux-musl-arm64.Microsoft.NETCore.DotNetHostPolicy"; version = "7.0.19"; sha256 = "03z39bbpq5h9rvs9ixcrhvf18s3hsfap5zsi0j3yrkf8v5zqziil"; })
+      (fetchNuGet { pname = "runtime.linux-musl-arm64.Microsoft.NETCore.DotNetHostResolver"; version = "7.0.19"; sha256 = "0agdz3g1v33d8bxm7fk1c0mvlkyh5hvr17f0d5g3yzrzlnrxlc8s"; })
+      (fetchNuGet { pname = "runtime.linux-musl-x64.Microsoft.NETCore.DotNetAppHost"; version = "7.0.19"; sha256 = "0nkmj3hl0w5b8ndx0yb86dddq6w5qcknw0xvr40d6rlafsgbfdq2"; })
+      (fetchNuGet { pname = "runtime.linux-musl-x64.Microsoft.NETCore.DotNetHost"; version = "7.0.19"; sha256 = "0fkkcm9bd7kv87bwfi434ikh0an2n6g340vr3pdz8f292r9kq4d7"; })
+      (fetchNuGet { pname = "runtime.linux-musl-x64.Microsoft.NETCore.DotNetHostPolicy"; version = "7.0.19"; sha256 = "11sa38y72qi8v5pncw8j2ql89q3rl27nvmh1bpq4rbvnspl4pvqs"; })
+      (fetchNuGet { pname = "runtime.linux-musl-x64.Microsoft.NETCore.DotNetHostResolver"; version = "7.0.19"; sha256 = "1hrd03lbk63p91fn0rf0fybqwqk2mv57q2g82qns0991cl61fvi8"; })
+      (fetchNuGet { pname = "runtime.linux-x64.Microsoft.NETCore.DotNetAppHost"; version = "7.0.19"; sha256 = "0b4kq7c2rcngksq0xf12ijhjx9hch90hwrzw5icffqzhqys40v4f"; })
+      (fetchNuGet { pname = "runtime.linux-x64.Microsoft.NETCore.DotNetHost"; version = "7.0.19"; sha256 = "0j1giclx2kn3mjwm8kbw1jsv0vhnd65jk692y1y1xvzz9jbqfs5b"; })
+      (fetchNuGet { pname = "runtime.linux-x64.Microsoft.NETCore.DotNetHostPolicy"; version = "7.0.19"; sha256 = "143j9g5k661dqx9lwsgia215lr7rqz04xk2rk8g3vxckbnk7rzx5"; })
+      (fetchNuGet { pname = "runtime.linux-x64.Microsoft.NETCore.DotNetHostResolver"; version = "7.0.19"; sha256 = "0lf7i88b9mdb72dgzc9zk478gwws4saij721v2n6z5xx9ggn5hyp"; })
+      (fetchNuGet { pname = "runtime.osx-x64.Microsoft.NETCore.DotNetAppHost"; version = "7.0.19"; sha256 = "012h4pb369y2wrb8rmvvklndsgphh6a6gd1gxqzl6bqfpl716njz"; })
+      (fetchNuGet { pname = "runtime.osx-x64.Microsoft.NETCore.DotNetHost"; version = "7.0.19"; sha256 = "01d9xrh0wczpdyzm6zqym9w73his56lq455hc8nkz9ga5a2s058h"; })
+      (fetchNuGet { pname = "runtime.osx-x64.Microsoft.NETCore.DotNetHostPolicy"; version = "7.0.19"; sha256 = "02wvkzmmnfj55vzanll95hl2pgg1ihfzarcwkhgnrxyx4j6qrh40"; })
+      (fetchNuGet { pname = "runtime.osx-x64.Microsoft.NETCore.DotNetHostResolver"; version = "7.0.19"; sha256 = "0kgd9xl4r39pr4kcpfxgc8s13gpjjzamrkiwhnsj5mqyphslgfp5"; })
+      (fetchNuGet { pname = "runtime.win-arm64.Microsoft.NETCore.DotNetAppHost"; version = "7.0.19"; sha256 = "066wx7m5vj841xqqbdw4qshsjxzf0g6n7msgxjyqn2aw58w7kk9b"; })
+      (fetchNuGet { pname = "runtime.win-arm64.Microsoft.NETCore.DotNetHost"; version = "7.0.19"; sha256 = "08h5fybyn1dfpsr5gqz7xkafavgaacbf6cijq1hiynvjw89cm7ch"; })
+      (fetchNuGet { pname = "runtime.win-arm64.Microsoft.NETCore.DotNetHostPolicy"; version = "7.0.19"; sha256 = "1wvp2xlzh4arsnj7fz7p4714af8j19h7b847kzvafg31ns02ws5h"; })
+      (fetchNuGet { pname = "runtime.win-arm64.Microsoft.NETCore.DotNetHostResolver"; version = "7.0.19"; sha256 = "17dr9r8j5kqgkbpnj5j4s2hikk0aiv61xvqchr3vp1pjrpzfi231"; })
+      (fetchNuGet { pname = "runtime.win-x64.Microsoft.NETCore.DotNetAppHost"; version = "7.0.19"; sha256 = "14q5q312nz1i8q8ffiz4v0rp9fd52n3pv2p4vn71lavcplh3sfq1"; })
+      (fetchNuGet { pname = "runtime.win-x64.Microsoft.NETCore.DotNetHost"; version = "7.0.19"; sha256 = "1hfb76mkxkqc88km752irifbxjd745lncvy0a0zxxahq0hacj425"; })
+      (fetchNuGet { pname = "runtime.win-x64.Microsoft.NETCore.DotNetHostPolicy"; version = "7.0.19"; sha256 = "143abqzcq2s22gz32lj6z363fw6hll6mgm6kh530qr437rb8fvqh"; })
+      (fetchNuGet { pname = "runtime.win-x64.Microsoft.NETCore.DotNetHostResolver"; version = "7.0.19"; sha256 = "01pxl7n3iygdnzj1b08vz87d43ysc5yqzy8yifriy96yf7c9syb2"; })
+      (fetchNuGet { pname = "runtime.win-x86.Microsoft.NETCore.DotNetAppHost"; version = "7.0.19"; sha256 = "15gr2dknc4g0dcg6zkml0f87i4hx7hjz7glmknkpy3bsbadlc075"; })
+      (fetchNuGet { pname = "runtime.win-x86.Microsoft.NETCore.DotNetHost"; version = "7.0.19"; sha256 = "1mfk457maqrmxi0rwj4fhchbj0yj65zsr072374idf61q9fp01wc"; })
+      (fetchNuGet { pname = "runtime.win-x86.Microsoft.NETCore.DotNetHostPolicy"; version = "7.0.19"; sha256 = "0qcsddvh4cjn8fkk8d8ndlxhlx7xs1799kqap192m5diip4ik0j0"; })
+      (fetchNuGet { pname = "runtime.win-x86.Microsoft.NETCore.DotNetHostResolver"; version = "7.0.19"; sha256 = "1wkvap3pm7fa02agg9dbnr4xq60rd5hrcjizr4acn8xrljyxbli7"; })
+      (fetchNuGet { pname = "Microsoft.NETCore.App.Host.linux-musl-arm"; version = "7.0.19"; sha256 = "0afrmsv8qk0p8b5964fz38m07v0h89j16x5mlll3pm0a1ih3cshz"; })
+      (fetchNuGet { pname = "Microsoft.NETCore.App.Host.osx-arm64"; version = "7.0.19"; sha256 = "0xyc0mdd7nnmc9wjzq8nxwrqagmiqxds8qwghr2rgxw55b9slc33"; })
+      (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.linux-musl-arm"; version = "7.0.19"; sha256 = "1ssgnfhgkly0h8dc5h9c8iyb3n75d7dgc4cxgxnslydwv3ygyh32"; })
+      (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.osx-arm64"; version = "7.0.19"; sha256 = "08gs703rz3agmisy3vsdnyv5lyc32qb8kvfljzszbyqlaf5cxhd1"; })
+      (fetchNuGet { pname = "Microsoft.NETCore.App.Ref"; version = "7.0.19"; sha256 = "1z9zfzccqn6yh9mcqrkiidjagzmnk4blrralzb8q0b7mnf1b1ww9"; })
+      (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.Mono.linux-arm"; version = "7.0.19"; sha256 = "10i3rr8hig3cnnd1wf9isxgmbj6hn59ndsywbif5yhyflgw3fvqm"; })
+      (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.Mono.linux-arm64"; version = "7.0.19"; sha256 = "1rby657hwrw4a26fljbxq7lanl4rhv7sijxcw746lifxx7mzfj6a"; })
+      (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.Mono.linux-musl-x64"; version = "7.0.19"; sha256 = "0gg1rj848cfiyx9cvvddangww9h37586dr15d7l1c2zmk9nlisd7"; })
+      (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.Mono.linux-x64"; version = "7.0.19"; sha256 = "1gvbnqayjc2nkb42f35d5gxc6ffszwg698z4dy8b75838jjqnwdl"; })
+      (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.Mono.osx-arm64"; version = "7.0.19"; sha256 = "0xm8l6wbyx55p75wgpckmsn9brrymslgsr7rm2q1a8z003m86kx7"; })
+      (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.Mono.osx-x64"; version = "7.0.19"; sha256 = "061lhndg6m4infwhnrb243sz3a8hvwvck6hpl106annxms760mq7"; })
+      (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.Mono.win-x64"; version = "7.0.19"; sha256 = "1cm56g54fa18p9hvbmnkiwn7jf4f6bbcny3zd4vsqm9y348dag1i"; })
+      (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.Mono.win-x86"; version = "7.0.19"; sha256 = "01391xxjmgcfgflc4fvrx74a8nr3y48db5m3r9qnj0m49rh60rxs"; })
+      (fetchNuGet { pname = "runtime.linux-musl-arm.Microsoft.NETCore.DotNetAppHost"; version = "7.0.19"; sha256 = "0my6x223z6mpwvw6614xzly6haxamnhn9w4a3q91l3ayq4q9crgg"; })
+      (fetchNuGet { pname = "runtime.linux-musl-arm.Microsoft.NETCore.DotNetHost"; version = "7.0.19"; sha256 = "1cklsjdk7rvnc2h9pfyq04asjpair2nsnbb002flwyq4nhh35af5"; })
+      (fetchNuGet { pname = "runtime.linux-musl-arm.Microsoft.NETCore.DotNetHostPolicy"; version = "7.0.19"; sha256 = "1awcriq95alz79xzd3g669l1wf23bs362z23xkyxmafiyn0h9jvj"; })
+      (fetchNuGet { pname = "runtime.linux-musl-arm.Microsoft.NETCore.DotNetHostResolver"; version = "7.0.19"; sha256 = "1xbwsxaxq55azpj49jal50w8a2awd6aa5q5qbxhwv84rqlv8ixd0"; })
+      (fetchNuGet { pname = "runtime.osx-arm64.Microsoft.NETCore.DotNetAppHost"; version = "7.0.19"; sha256 = "1xb37xfkblby3gi0rg0hhmy66pcvsm9q0x6ypi0z9lbl64h7r919"; })
+      (fetchNuGet { pname = "runtime.osx-arm64.Microsoft.NETCore.DotNetHost"; version = "7.0.19"; sha256 = "0270v287dq263a4p34qxk8g09af4nr9sxn8m4jd192zfm9cggvw6"; })
+      (fetchNuGet { pname = "runtime.osx-arm64.Microsoft.NETCore.DotNetHostPolicy"; version = "7.0.19"; sha256 = "12wkp5y27ih8d5k4xrlbi4jd8wg7si9lw03bp2bvmp7grslqdnfp"; })
+      (fetchNuGet { pname = "runtime.osx-arm64.Microsoft.NETCore.DotNetHostResolver"; version = "7.0.19"; sha256 = "1mz2y7s9gxj0jkrf8xyi9q2h5xaqily3vzd9b5bpmx69nbi1adip"; })
+      (fetchNuGet { pname = "Microsoft.NETCore.App.Crossgen2.linux-musl-arm"; version = "7.0.19"; sha256 = "0anfp4mdsnkkjj398vnqjs5k07z6niriyqz10ccxjzzmkxaq5kb0"; })
+      (fetchNuGet { pname = "Microsoft.NETCore.App.Crossgen2.linux-musl-arm64"; version = "7.0.19"; sha256 = "0wj5p8hi9jqr9qn4gl0v367kv43vdh21p1kxsja49vvq98y6c7h9"; })
+      (fetchNuGet { pname = "Microsoft.NETCore.App.Crossgen2.linux-musl-x64"; version = "7.0.19"; sha256 = "0izy5gvkwa5a71aq8q9nsbwmy22sghk9x1b42lw97vn4h5ghwcnr"; })
+      (fetchNuGet { pname = "Microsoft.NETCore.App.Crossgen2.linux-arm"; version = "7.0.19"; sha256 = "1dsj2nhd8wa8m3w69cs4i89kd1b5812qbdjx14nagwgdazvvakbf"; })
+      (fetchNuGet { pname = "Microsoft.NETCore.App.Crossgen2.linux-arm64"; version = "7.0.19"; sha256 = "1c9rzh8va957xvfb4w07409ncv8zps8692yp5dl7xh643djsgpwv"; })
+      (fetchNuGet { pname = "Microsoft.NETCore.App.Crossgen2.linux-x64"; version = "7.0.19"; sha256 = "01slq8bk8mk0a59abf6mcs4m39mqzvhb003w4abvqr9vghq8fzbr"; })
+      (fetchNuGet { pname = "Microsoft.NETCore.App.Crossgen2.osx-x64"; version = "7.0.19"; sha256 = "088yv3n9qghnw8fgbrkc90xnb0dlrr13j60wj6qhd8rsk53cvxig"; })
+      (fetchNuGet { pname = "Microsoft.NETCore.App.Crossgen2.osx-arm64"; version = "7.0.19"; sha256 = "158pibija2rfnmxsrynypslknlr76h2vgpq4p0n9bfy79pb7krda"; })
+      (fetchNuGet { pname = "Microsoft.NETCore.App.Host.win-arm"; version = "7.0.19"; sha256 = "0qldfcpjid7a05b0sk7zznfz6xvpaz74hkyqs6ybs7ac1mkb5d3m"; })
+      (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.win-arm"; version = "7.0.19"; sha256 = "01rbx0phr7apkdkflsmbbzjzfzxl2ls3q6a00bqijabzb9brmfaf"; })
+      (fetchNuGet { pname = "runtime.win-arm.Microsoft.NETCore.DotNetAppHost"; version = "7.0.19"; sha256 = "1s1x47nkaxk4mg2k4a81g6c3i2lf6lzzqn5rhs67fsp2p7gam03x"; })
+      (fetchNuGet { pname = "runtime.win-arm.Microsoft.NETCore.DotNetHost"; version = "7.0.19"; sha256 = "0m9s3fgmlcy1r5knfgm1qm4s9gskjvnpnscsv88hkczw8m4v8if2"; })
+      (fetchNuGet { pname = "runtime.win-arm.Microsoft.NETCore.DotNetHostPolicy"; version = "7.0.19"; sha256 = "02sq95zkgqlksa47n7mgqkrbk44v20fc8k7slsyk3faplg0bzf60"; })
+      (fetchNuGet { pname = "runtime.win-arm.Microsoft.NETCore.DotNetHostResolver"; version = "7.0.19"; sha256 = "1pk7afp09ilzlinpbqjnbjnww6i7iykrhg822x8ggrmqm0bmxvyn"; })
+      (fetchNuGet { pname = "Microsoft.NETCore.App.Composite"; version = "7.0.19"; sha256 = "0mar4ls20prrj2b8vb2yaqgfz46gqsjll5amyacv92vgnyixhv9n"; })
+      (fetchNuGet { pname = "runtime.linux-arm64.Microsoft.DotNet.ILCompiler"; version = "7.0.19"; sha256 = "1934pv8q3jdnsj94lid10wc6xmicmqvg82cv480898hfcvwp25zb"; })
+      (fetchNuGet { pname = "runtime.linux-musl-arm64.Microsoft.DotNet.ILCompiler"; version = "7.0.19"; sha256 = "0w0j7pmdm0x49yv4z96d6phmwqfj2sjm3aaa5k856g08b38kviyi"; })
+      (fetchNuGet { pname = "runtime.linux-musl-x64.Microsoft.DotNet.ILCompiler"; version = "7.0.19"; sha256 = "116yy1k23jhaibhqr2jjjxd0pbw3n6ps3y8mx6i7s6k2mdglys5y"; })
+      (fetchNuGet { pname = "runtime.linux-x64.Microsoft.DotNet.ILCompiler"; version = "7.0.19"; sha256 = "14p7d7gb4bxi7vdzs0jajcblb3zbp8bg2168yl09jmqwyp3qwrrb"; })
+      (fetchNuGet { pname = "runtime.osx-x64.Microsoft.DotNet.ILCompiler"; version = "7.0.19"; sha256 = "15k2sn69mph4cfrr90rpa803z1jx9bzjccn5z5q5cc7ywnrm8xcr"; })
+      (fetchNuGet { pname = "runtime.win-arm64.Microsoft.DotNet.ILCompiler"; version = "7.0.19"; sha256 = "1gzmw2mp0pb9jj81784xfazxk6i4l9mgffd5k1ljbq4kp8i40wiq"; })
+      (fetchNuGet { pname = "runtime.win-x64.Microsoft.DotNet.ILCompiler"; version = "7.0.19"; sha256 = "1lx6qydgvip8i7f3v93yn9ibdyl384hblbsk0hc384jai62hs444"; })
   ];
 in rec {
-  release_7_0 = "7.0.18";
+  release_7_0 = "7.0.19";
 
   aspnetcore_7_0 = buildAspNetCore {
-    version = "7.0.18";
+    version = "7.0.19";
     srcs = {
       x86_64-linux = {
-        url     = "https://download.visualstudio.microsoft.com/download/pr/39baab6f-96c6-42bf-b772-29830158176b/cde064792e7f22506d692f54993fe5a5/aspnetcore-runtime-7.0.18-linux-x64.tar.gz";
-        sha512  = "d2c3af93b9b8280c4e519f052f443e0504ccf7a04b3eef60500b2e3a8874a60a3a545ca936f8433887bfa6388106c19283c5a6a2c78ffdc19889bde3edbefbda";
+        url     = "https://download.visualstudio.microsoft.com/download/pr/d3d6c11a-a7d6-4be4-8b2b-11154b846100/69bd5fbe2621600e84bb191d0b13abdd/aspnetcore-runtime-7.0.19-linux-x64.tar.gz";
+        sha512  = "569fcc25f0c32df3b28c4569bbeabb6c20afc8865088f14a405d3847bbfd159cf291d2dc4810140b8f436f06c95ebb09214ac837b5ade6bd8121e9c0204eb217";
       };
       aarch64-linux = {
-        url     = "https://download.visualstudio.microsoft.com/download/pr/119db743-de75-4bfd-ac51-f2a2bfd1dd1b/4e96dcef933e3787a34691a86f8972cf/aspnetcore-runtime-7.0.18-linux-arm64.tar.gz";
-        sha512  = "62bc42a8d094be8253be90acba02253c27afb1eb6b06976c3adea74f967f522bf7938eaed25c824d6e36a9fb71f7248ba315cc67577a3c7fb73b0d3d7a41ecac";
+        url     = "https://download.visualstudio.microsoft.com/download/pr/78d9729a-9f05-49a6-81b7-b041452a2828/73214343fb60deddb7faf355ecbbaca3/aspnetcore-runtime-7.0.19-linux-arm64.tar.gz";
+        sha512  = "c71e6a756bdac7f68289fb6c67fcb8c347586e421cbf4345fb510686ff5948e25898759dc7ab30904ac07a7d595508e59d66b5b6dc88d30b54c141c82bd590cf";
       };
       x86_64-darwin = {
-        url     = "https://download.visualstudio.microsoft.com/download/pr/79433d6a-6ac8-4c1e-851b-a9335319d846/c91648d921bcec7bedebdaf83cfe0487/aspnetcore-runtime-7.0.18-osx-x64.tar.gz";
-        sha512  = "50cecd47a75498ffd2862b3a470c0e05848853b163925c0fb27a7912fc39f77aa27b91d4e780d7ef90e6bce22510714132cbdc06cee0db7547c9d79258d29895";
+        url     = "https://download.visualstudio.microsoft.com/download/pr/e2bed645-39cb-4ea7-ba7c-503741d8d9e6/07bc37ec71cfe01a4187d94275580b3c/aspnetcore-runtime-7.0.19-osx-x64.tar.gz";
+        sha512  = "5f16d0cea6b637ad9835dabf23b37f47d8fe92fbd4cfb1ac046fb607beb380255759f14f3e80f9a49c3545afc47000c770394d4dacc5b7444ab0b6d87a5336b5";
       };
       aarch64-darwin = {
-        url     = "https://download.visualstudio.microsoft.com/download/pr/be772e15-f6f4-46a4-b0de-2365ccafa69d/fac2f4ae76ba20f7d16e07b60c2b8801/aspnetcore-runtime-7.0.18-osx-arm64.tar.gz";
-        sha512  = "3c56c17545d530a35cc13bad410da1caea33bbcc7c3a857b4d68f48a64f02cbba516d83cd0a3fea9a8ab463dac8140a6c079fb63887c176bdb2a44552dc71852";
+        url     = "https://download.visualstudio.microsoft.com/download/pr/879c8cbe-37bd-4fc9-b8db-857a3fe09144/231cf7ae2bca959750144d08ad08d057/aspnetcore-runtime-7.0.19-osx-arm64.tar.gz";
+        sha512  = "10fdc9868efdd8cf25dbe10843ea17075747cc1bee52e495af7e1858ff556dac2802bfcc85fd474527f142672b45e7a1c5b63a927529036923671f6cb9092431";
       };
     };
   };
 
   runtime_7_0 = buildNetRuntime {
-    version = "7.0.18";
+    version = "7.0.19";
     srcs = {
       x86_64-linux = {
-        url     = "https://download.visualstudio.microsoft.com/download/pr/9f48eeb2-ca25-4828-87d9-1114e751fa6e/df269cfd6b9661bcd776ed979541c0fe/dotnet-runtime-7.0.18-linux-x64.tar.gz";
-        sha512  = "9d2aaf11e798d8dbfa74a93cfc53c6bb631cfb041b5dc55c208f980f61808e872dfa9880c7d9d4b42aad934e5350c9e8f327664909054fa0109636158701b4b8";
+        url     = "https://download.visualstudio.microsoft.com/download/pr/09ab2389-5bab-4d45-9a91-a56ff322e83c/2f8192a98b6887c7f12b0d2dc4a06247/dotnet-runtime-7.0.19-linux-x64.tar.gz";
+        sha512  = "4e556c1437a58d2325e3eeb5a5c4b718599dff206af957a80490ef2945b1a2f5114d25b808b4c9ea233cc4eb2e5ce40932bb249e198319e97f3b5cc443612e6f";
       };
       aarch64-linux = {
-        url     = "https://download.visualstudio.microsoft.com/download/pr/e7dc89d5-3287-4f82-b1fa-e0a7f12f7736/3206b55ee6d717f4008a46e67048c100/dotnet-runtime-7.0.18-linux-arm64.tar.gz";
-        sha512  = "7cf7d3b0b12cec234227529c66f2a2ecab49e63af2c766d7539b6591f709342da4f2b846726630ab6104a19cd94c1eed5ec66e1a773e3477b344941bc1ee5f41";
+        url     = "https://download.visualstudio.microsoft.com/download/pr/81616b49-6c82-4778-884d-caeca4c195a9/51a0a0bcdd17fdb77be7f1c5db52165e/dotnet-runtime-7.0.19-linux-arm64.tar.gz";
+        sha512  = "fde0a0190c77cd361722d2ce449b207b6a26c7f6462dcc9a2debfa1b0e670f7df0b538758ea5eb865f156df17a98722ed7e8f7a2bfceb0a486d1b06a2d436240";
       };
       x86_64-darwin = {
-        url     = "https://download.visualstudio.microsoft.com/download/pr/2bbb4960-9fb2-4bd9-a525-80e6260b5979/adecde0cf003ce421b06e76197627533/dotnet-runtime-7.0.18-osx-x64.tar.gz";
-        sha512  = "ba790572b8b37a33766dcdfae319c5021568e49be3d9a55c688655b1b4174faf6cf20b3077fefaf57fa2b12261b682a685345db77034412dc883cfa05b8e8ca9";
+        url     = "https://download.visualstudio.microsoft.com/download/pr/92c2b6d8-783f-4a48-8575-e001296d4a54/c11d13f994d5016fc13d5c9a81e394f0/dotnet-runtime-7.0.19-osx-x64.tar.gz";
+        sha512  = "005828f1138cfce1f04741a478595186a1098185747ed0872099d7541d2bed16416f36d1214f6289f6ed1d3543e119733e4bba6dddf42db43150bc7bf2e980df";
       };
       aarch64-darwin = {
-        url     = "https://download.visualstudio.microsoft.com/download/pr/38526acb-1b20-4fd6-8a4d-09d72a48c9f8/8db4c13c722425ca9b82fed60d539815/dotnet-runtime-7.0.18-osx-arm64.tar.gz";
-        sha512  = "f9a5f09afd9c7cead985cda7db03fa6bd6b684aecedb2b8bfe3bb2569704c233501b1f9888e2e26f273d5ab124b0b9fecf3edf8c7d0b0908f5a499323c67515f";
+        url     = "https://download.visualstudio.microsoft.com/download/pr/4b8da067-3b82-4636-8e0d-18583857e64b/fba7ceea0e014535a695ceb9259886c6/dotnet-runtime-7.0.19-osx-arm64.tar.gz";
+        sha512  = "394f0f068b1dcd8f116c41391baccb46fd1112578281b0d11edd6dc194b767850c8a2bb9e2bc041b1e872872afb130fa10f7c98fbac988dd80c0d788a0f23e7f";
       };
     };
   };
 
   sdk_7_0_4xx = buildNetSdk {
-    version = "7.0.408";
+    version = "7.0.409";
     srcs = {
       x86_64-linux = {
-        url     = "https://download.visualstudio.microsoft.com/download/pr/a256265b-0ec6-4b63-b943-bc27bcfc98c0/47c8bbd54d7f6dbfe0ca4985c410282e/dotnet-sdk-7.0.408-linux-x64.tar.gz";
-        sha512  = "89d39601a27cbbc74a5dbbfc6dda6661220e76b73f7387fec6558222aa144734b44db5788bcb888c7f49d4659c8b0ea60794f93ad1223c86ceafdddf6e6b70e2";
+        url     = "https://download.visualstudio.microsoft.com/download/pr/03e24745-90c7-4661-8ffe-e5a857b6e6a3/99038e4e48e403a17bcbe509bfe8d6b8/dotnet-sdk-7.0.409-linux-x64.tar.gz";
+        sha512  = "0b67d04621d7c2a1856fdb0cf6e081090b4e1df1075d2f881fb33655422f2f59f63f8324559dc207510485f77781cc20c7a407e3c04dc0b53246987164427671";
       };
       aarch64-linux = {
-        url     = "https://download.visualstudio.microsoft.com/download/pr/460f951f-0944-442b-8474-555e20394ca8/5fcf6b1845d87d772f919737b3dd5f55/dotnet-sdk-7.0.408-linux-arm64.tar.gz";
-        sha512  = "7c5e18f165c2d74345102244a617b475b68c208434512211af154b28896ebe5487caeff96b278e877af384e6e0deb476d38be16d275ad88af1ae177afef561ac";
+        url     = "https://download.visualstudio.microsoft.com/download/pr/f065c679-7039-4968-9a2f-dda7cda72f5f/702eb11e596f498a1cb23b636e1d83be/dotnet-sdk-7.0.409-linux-arm64.tar.gz";
+        sha512  = "ebf98115e3ef9a5388394443b8cec8aa104c2468fbcb6c964661115665645326abb0bce42786a98eef4ebffe42dedd36de8608e15538d191e934dc83fcd8b2f5";
       };
       x86_64-darwin = {
-        url     = "https://download.visualstudio.microsoft.com/download/pr/dff43b03-6ca6-413b-a48e-82f593c12d40/5760ef99163056c6850f0fe140e01958/dotnet-sdk-7.0.408-osx-x64.tar.gz";
-        sha512  = "b183b1a84b345f8e41701f0f1cdcc68d0bcf286d3aad53bf04d860bc6260bde87a6797f6c55ef807609680c10b6efea6bcdf6732d3fa097ffaa99b505bbea7a9";
+        url     = "https://download.visualstudio.microsoft.com/download/pr/feee7b85-ddb2-4ff5-8927-5656ea1e0a6f/ecdfb330298d11e0d49c3b595ddea452/dotnet-sdk-7.0.409-osx-x64.tar.gz";
+        sha512  = "70efa550d6d78e17db0368e8500ddfd9a6343707e009247d00062613e8052463d3d83779af619128233e78a29f5b5a5f71f0eaba740c3c3f74be0c76145c892b";
       };
       aarch64-darwin = {
-        url     = "https://download.visualstudio.microsoft.com/download/pr/749ab69c-0726-4503-9e92-035f13753374/68cbf2a5d6c8e1184f5d8d8ca3bc49a6/dotnet-sdk-7.0.408-osx-arm64.tar.gz";
-        sha512  = "ce1b9f7bc67c80b8774b7a8071438027f322c35c330be2667bf15a80a8826a32d9f8a7d2762ba7f3c7417b31f3ac288f336956f6e701d282e80f02c68b805177";
+        url     = "https://download.visualstudio.microsoft.com/download/pr/0025e3a3-0221-493e-90cf-a5baaedc3cfa/716e07c6342d6625dd9a04f632ca8d50/dotnet-sdk-7.0.409-osx-arm64.tar.gz";
+        sha512  = "bf234cc2c6e90abb891cbefc3eed35e63fae07d312f01193d8890dce03edbaa3fe5a095cc695bb03ef35fcfd1c2e45e7b9d54c3b483761d7b1653a019c55b53f";
       };
     };
     inherit packages;
   };
 
   sdk_7_0_3xx = buildNetSdk {
-    version = "7.0.315";
+    version = "7.0.316";
     srcs = {
       x86_64-linux = {
-        url     = "https://download.visualstudio.microsoft.com/download/pr/e4cc9a2f-7fa1-4ac4-b839-3838d8762ee5/caef8745bcdaf1c089ade6cdb89eee5c/dotnet-sdk-7.0.315-linux-x64.tar.gz";
-        sha512  = "ffbaca47ee2a3b601abd1e8ccc99981e55d5f904072d5dc76e0c817940bf1ac1b71f5e652f649112bcee7328bcf0408d203b2f7c91d58a6aaa58c8ff553e49f7";
+        url     = "https://download.visualstudio.microsoft.com/download/pr/28d800b7-e6c4-42a2-a27b-ff9de8979025/ef5dd5c9329e1789ab1dfd3a82e88677/dotnet-sdk-7.0.316-linux-x64.tar.gz";
+        sha512  = "1489f33f3314b93ac7b9411e4c884fb630622336bee6765b7f193aecda8798cfa201ae0b32d82ec401d5839601d79d6a854832502b08f6eea860fc47fc1da6f2";
       };
       aarch64-linux = {
-        url     = "https://download.visualstudio.microsoft.com/download/pr/12286d30-5894-4ad5-8dfe-8bd03e9fa0ee/58973de54201a7f1963cb524ba421613/dotnet-sdk-7.0.315-linux-arm64.tar.gz";
-        sha512  = "a480e012760980121af4eda39dbd0640e824de13f10e916a95e77b7fb591a3c516d40da45fe56dc07cfcbdf24074f4579145d00d45c84ef299ca9ee779c43903";
+        url     = "https://download.visualstudio.microsoft.com/download/pr/09e91afb-d0a7-4468-9aba-70484bd8cfe2/8ef2416d952b14ec9e00380025960b36/dotnet-sdk-7.0.316-linux-arm64.tar.gz";
+        sha512  = "c6c7d57f6ddcb26fae6cef846745bb151296d0f359526161a0e700d9b54ccaef6a24acf2485f2abae1b7305608bfe9204ab89842a712f2913caa092efb756833";
       };
       x86_64-darwin = {
-        url     = "https://download.visualstudio.microsoft.com/download/pr/32b714c0-96fd-4179-b2a5-34cd29061e5b/3db1ea8db28f706a8af10dd57d1cb590/dotnet-sdk-7.0.315-osx-x64.tar.gz";
-        sha512  = "7a7d3c32f71a89bf0d9e809b068252c2496109ae226acaef163f7221e4a8231a2faa2e81ba0a95e7aeef7780691cb59b993e999d45076a280da518941b9fd2ed";
+        url     = "https://download.visualstudio.microsoft.com/download/pr/9a092178-2aa4-4c06-b73d-144327a4992d/4709a913d89feda462d9cccd508b4a5f/dotnet-sdk-7.0.316-osx-x64.tar.gz";
+        sha512  = "52a96edba93029283d555c13abd1c1b016870bcdbf10db4caaea6f4b18c46aff3b49355f8bf7b8b2548287c1bc31dbe38c6b7a27e40c1129c2eb010c697c002c";
       };
       aarch64-darwin = {
-        url     = "https://download.visualstudio.microsoft.com/download/pr/1586c0ec-bae9-450c-83fa-987499e2c9c7/8e2855e078b035404b5fea4f658af1d7/dotnet-sdk-7.0.315-osx-arm64.tar.gz";
-        sha512  = "f146ca3f530a96fbd14fe550cded99d36b35dfef4536f2a9174985c933db42c9a6d44708cab83c93a701f6482e0cf868e7aee92385cec201b9d0b5d5f348d642";
+        url     = "https://download.visualstudio.microsoft.com/download/pr/8e2764ac-debb-4e46-a6f2-637f7c7d8e70/d3da856e4a7d4b45581ff405aee923fb/dotnet-sdk-7.0.316-osx-arm64.tar.gz";
+        sha512  = "7f59874fb1638f6f09a5538483ed1b39e482a90bc11555b07cac8fc8ea941dbd9419f57fec252810bb324b89d8647b6bf32d1bd4e6b720c568929d82297d260a";
       };
     };
     inherit packages;
   };
 
   sdk_7_0_1xx = buildNetSdk {
-    version = "7.0.118";
+    version = "7.0.119";
     srcs = {
       x86_64-linux = {
-        url     = "https://download.visualstudio.microsoft.com/download/pr/4e25d320-2883-4b20-aee7-035d586e1426/fdbbb8209dd2ba57a87351c55ef80e0c/dotnet-sdk-7.0.118-linux-x64.tar.gz";
-        sha512  = "4f34257abcc013683c0747f5510cddf26013f5ea4cd068efd7591b0a6e809038395d57842f163489884046bcc54ac7ffb406fff91701c9e371920efe6396b710";
+        url     = "https://download.visualstudio.microsoft.com/download/pr/03102e44-64d0-414c-9cfa-e212d0160ce8/aad0796ede4708933a4cd75bebd878dc/dotnet-sdk-7.0.119-linux-x64.tar.gz";
+        sha512  = "6be08bbbb9d961879b63943413b70e0ceff413e68af59c5c5f01120b02c605e83145a5a9f3417563f9b39159cc5ee149219e99e48ebc92ca2b25c2c0554dd5d6";
       };
       aarch64-linux = {
-        url     = "https://download.visualstudio.microsoft.com/download/pr/eec4a58d-3546-4c40-bd82-b6533115b5ea/face73d99a1f01f655dfc3f9cfee2bf5/dotnet-sdk-7.0.118-linux-arm64.tar.gz";
-        sha512  = "8e5358e3824ec141ee8406e0a67b8d1bf6965a4f9e7487bdee4ff02344078e95bffe4c46c0f1ae975b1caf7164387d35763f1b81abd2e66593b77cc0470cc957";
+        url     = "https://download.visualstudio.microsoft.com/download/pr/c0dd267e-4f6a-4a36-9f7d-19813033cb60/69a960be31caa92da70e68c9529ceeab/dotnet-sdk-7.0.119-linux-arm64.tar.gz";
+        sha512  = "187b1422f0ce4eb59c3f894cacb074abe285ad0346ce6cd95a240506167932f08c90ef2529492a8fe6a9abf8bd7cf3dd4c7258cc5972ee4fa630d75f03b42ccd";
       };
       x86_64-darwin = {
-        url     = "https://download.visualstudio.microsoft.com/download/pr/7ba2b1de-4494-4865-bd90-3931dd6ec41e/4897e62ba478d5f3b5c48ab0c98370b7/dotnet-sdk-7.0.118-osx-x64.tar.gz";
-        sha512  = "48081b4b53f7dd79aa9e11e362ab53d50b7efdb48f18fa8f0828c5e179c79b36b192b9b514e9effb04688838bf87a4d4b3763539fac34dd2f2570e1b8882d7b9";
+        url     = "https://download.visualstudio.microsoft.com/download/pr/aea7635c-c965-4ee1-9f2d-496873e2c308/e9a800bff17679887458ec75e988fe82/dotnet-sdk-7.0.119-osx-x64.tar.gz";
+        sha512  = "dd70345a9093abfd0a839394e425c7b9907afc5884828127ee503ead5395338c1f1b013a481eabff6f1ea1e9e57ce76ef0875d5feb1540f3b05539e9afd129ff";
       };
       aarch64-darwin = {
-        url     = "https://download.visualstudio.microsoft.com/download/pr/b3541939-7484-4cc4-b8c3-abc2bea28799/610db5c984192e3710151de48f918d1c/dotnet-sdk-7.0.118-osx-arm64.tar.gz";
-        sha512  = "25b2fd5a26b870f5b0f407acb3b0cdabe9287d2f7b7c3db81f85e34cecb7a3211a72ee54d0e0adafbbee151387e1bfe51e3681b6a0a347509bddd14b589ba117";
+        url     = "https://download.visualstudio.microsoft.com/download/pr/06970037-ff94-42b5-a640-16cc25e0ca30/628233310199d362e7af0fb25825f8ad/dotnet-sdk-7.0.119-osx-arm64.tar.gz";
+        sha512  = "c411bae746be15f270513412a38e8fde5a72795f876f26b7e5452eaecd3b4fb0e979f9391e0f5f652c692a4516741f2165d77afd5ef264bb24b8bda9cc1e4bf4";
       };
     };
     inherit packages;
diff --git a/pkgs/development/compilers/dotnet/versions/8.0.nix b/pkgs/development/compilers/dotnet/versions/8.0.nix
index a4d2dadfd7d3..a6468f685cf0 100644
--- a/pkgs/development/compilers/dotnet/versions/8.0.nix
+++ b/pkgs/development/compilers/dotnet/versions/8.0.nix
@@ -4,206 +4,229 @@
 
 let
   packages = { fetchNuGet }: [
-      (fetchNuGet { pname = "Microsoft.AspNetCore.App.Runtime.linux-arm"; version = "8.0.4"; sha256 = "0d0sgy8rczy78l0inaymcldmw1h742407c7q5y37hbnrw7p8ix7c"; })
-      (fetchNuGet { pname = "Microsoft.AspNetCore.App.Runtime.linux-arm64"; version = "8.0.4"; sha256 = "0acxp6p5ln9sym8w65lz32ywpxvzpm78j09xd6bcjcz8n9224az8"; })
-      (fetchNuGet { pname = "Microsoft.AspNetCore.App.Runtime.linux-musl-arm64"; version = "8.0.4"; sha256 = "1plwp944v4a6hj12cg2g378bdl0dwr2jwv22hs7bd2gq56226mjs"; })
-      (fetchNuGet { pname = "Microsoft.AspNetCore.App.Runtime.linux-musl-x64"; version = "8.0.4"; sha256 = "1mhbxrj2d2xqp7lkl7129alhppjfma1a5z9jdp0pcik2dw6qd4xn"; })
-      (fetchNuGet { pname = "Microsoft.AspNetCore.App.Runtime.linux-x64"; version = "8.0.4"; sha256 = "0g2sjwgkgni797p6ay51brvc9snbnrbsmv88002lnvqnz9zgbifr"; })
-      (fetchNuGet { pname = "Microsoft.AspNetCore.App.Runtime.osx-x64"; version = "8.0.4"; sha256 = "07iw2h06awcvlicw0cdvvsrllln72jv3wihvpzp89jyfnjibv4xv"; })
-      (fetchNuGet { pname = "Microsoft.AspNetCore.App.Runtime.win-arm64"; version = "8.0.4"; sha256 = "108rwwmv331w8maspamfq3hpv1azajnfwxcj9mr4r7xn1137z5y9"; })
-      (fetchNuGet { pname = "Microsoft.AspNetCore.App.Runtime.win-x64"; version = "8.0.4"; sha256 = "0fhiimqaqr9nf1d6snbni1g38472pzzb21pjsjkcvb9l4z51hbbl"; })
-      (fetchNuGet { pname = "Microsoft.AspNetCore.App.Runtime.win-x86"; version = "8.0.4"; sha256 = "13s2ycyph5p2nddz6crny7zvkaz5f1xylcc8qg24nbwwmrl9539m"; })
-      (fetchNuGet { pname = "Microsoft.AspNetCore.App.Ref"; version = "8.0.4"; sha256 = "1s30dsd5ifv4yfdcjb9nm9gsm1wv3jkhy6b7a5xnk9pblpkizv1g"; })
-      (fetchNuGet { pname = "Microsoft.AspNetCore.App.Runtime.linux-musl-arm"; version = "8.0.4"; sha256 = "02d9xv1mzr88lvc7vpn7xpnm2jhbb87bl7jkmaj34fr1r52xg045"; })
-      (fetchNuGet { pname = "Microsoft.AspNetCore.App.Runtime.osx-arm64"; version = "8.0.4"; sha256 = "040pfyazmii6vyp5jp45c9sw1vqxlrlbhaj6in7vscwd0s67cyi3"; })
-      (fetchNuGet { pname = "Microsoft.NETCore.App.Host.linux-arm"; version = "8.0.4"; sha256 = "0pd4v31dfk4z5bbdb29477d2k9jxsg0zslba19vzk7azv1p6zcxs"; })
-      (fetchNuGet { pname = "Microsoft.NETCore.App.Host.linux-arm64"; version = "8.0.4"; sha256 = "0qbm26aqlyj12wiiy7hpinxammv1a9dzryq3wkm3ij65vfx8r62s"; })
-      (fetchNuGet { pname = "Microsoft.NETCore.App.Host.linux-musl-arm64"; version = "8.0.4"; sha256 = "0gix41xc788xs8mcdssf4xrpp697h0n159a9j9sdg274cxj8vjhx"; })
-      (fetchNuGet { pname = "Microsoft.NETCore.App.Host.linux-musl-x64"; version = "8.0.4"; sha256 = "0wf4bmkw90lmwcp9158j4ywsqvik6hryj53zmm1hbaxpfxkjb1bz"; })
-      (fetchNuGet { pname = "Microsoft.NETCore.App.Host.linux-x64"; version = "8.0.4"; sha256 = "0dji6ypar30bqzba9hvsbqf4wsk2zmp2blzg3czfnfbs3034wl2a"; })
-      (fetchNuGet { pname = "Microsoft.NETCore.App.Host.osx-x64"; version = "8.0.4"; sha256 = "11rd1hbisjzqyrfz4raj0sl9ip4yznbm7in36j6z41awba2gai9q"; })
-      (fetchNuGet { pname = "Microsoft.NETCore.App.Host.win-arm64"; version = "8.0.4"; sha256 = "06k1wbyhphmlqrdfzwhg8pr6nd2mbm47jidzy38mqf4n4qqqb64j"; })
-      (fetchNuGet { pname = "Microsoft.NETCore.App.Host.win-x64"; version = "8.0.4"; sha256 = "1wvyjsr6yd8ajv8726x7h3fp5kdk6cmgfzyrh0h0vpkn9padac5z"; })
-      (fetchNuGet { pname = "Microsoft.NETCore.App.Host.win-x86"; version = "8.0.4"; sha256 = "00hp5n92a383rkn54n041r8092y3r7hs50bn3zazn5ngcfh2a02z"; })
-      (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.linux-arm"; version = "8.0.4"; sha256 = "0fz5hmnfl21a7izs02p3hm6k15f6icnnxhb06wv8fb7fncv2qnjl"; })
-      (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.linux-arm64"; version = "8.0.4"; sha256 = "00ql8vy9mpf3k3s1j0gd0ykb9zn98qpzibrf1sm4hyg1xmvarj8y"; })
-      (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.linux-musl-arm64"; version = "8.0.4"; sha256 = "00s7an056z82k14aq809264nhxwr3kmj34rwzch8v3kyl4pm955d"; })
-      (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.linux-musl-x64"; version = "8.0.4"; sha256 = "14y5nljc6fcbxz48f2m01kyfc9vqxpqwflh9927s77zfr9w2lid5"; })
-      (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.linux-x64"; version = "8.0.4"; sha256 = "0pi459crkny9bwjl2z4znj9kgnkwl00bnc54jq9asi8zvssvcbfm"; })
-      (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.osx-x64"; version = "8.0.4"; sha256 = "01apjs90laa069qxns2c5mh0fahrhx1771d0iqifbhwbgvcahz9j"; })
-      (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.win-arm64"; version = "8.0.4"; sha256 = "0f291zqarfa1c1gn4ih05gspr2mdv55rvzr2kdjql5vjk3qkjmh2"; })
-      (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.win-x64"; version = "8.0.4"; sha256 = "128ghs7lkibpiw3i1kszigffcmwwdj3raak1dqli375qmgpafifk"; })
-      (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.win-x86"; version = "8.0.4"; sha256 = "1fgm2q8hj43n6573pbcnj565kx5qshkkh9mfji49pswsva6g475v"; })
-      (fetchNuGet { pname = "Microsoft.NETCore.DotNetAppHost"; version = "8.0.4"; sha256 = "1k9n0yjp1jsskacl14avbkjnp1a42dn30vhmvnmlp7bi0hirm451"; })
-      (fetchNuGet { pname = "Microsoft.NETCore.DotNetHost"; version = "8.0.4"; sha256 = "1iqrvg36b2as1maik7b7ls1kwszl30njpp4pjkdljhswlh75c9lz"; })
-      (fetchNuGet { pname = "Microsoft.NETCore.DotNetHostPolicy"; version = "8.0.4"; sha256 = "1is3dr4m30shxbgqd2g916z192cx2gqvx8iijf05b976qyy0hnvd"; })
-      (fetchNuGet { pname = "Microsoft.NETCore.DotNetHostResolver"; version = "8.0.4"; sha256 = "0056k3y221g13l62fb1cdghijhvml8aynn7lax40ark5rxplam3m"; })
-      (fetchNuGet { pname = "runtime.linux-arm64.Microsoft.NETCore.DotNetAppHost"; version = "8.0.4"; sha256 = "1qy3zbvfjqa0gw80jxqd9va58zsf1gp5b6phibsi5da3mw6ybc8k"; })
-      (fetchNuGet { pname = "runtime.linux-arm64.Microsoft.NETCore.DotNetHost"; version = "8.0.4"; sha256 = "0qpva0m8wn8g7l33ws166s4wr84cl8wd6q3zyp78pc7k309bdfjp"; })
-      (fetchNuGet { pname = "runtime.linux-arm64.Microsoft.NETCore.DotNetHostPolicy"; version = "8.0.4"; sha256 = "02fqkrq74c2rra33spcym05vl378xc8iyzamfpm6gjmkq4vfsca6"; })
-      (fetchNuGet { pname = "runtime.linux-arm64.Microsoft.NETCore.DotNetHostResolver"; version = "8.0.4"; sha256 = "1k7f79x7yd066b0hhnbq1l183c4v5yw7lysbydfwng14z5x6x7h7"; })
-      (fetchNuGet { pname = "runtime.linux-arm.Microsoft.NETCore.DotNetAppHost"; version = "8.0.4"; sha256 = "1sv4yzx5bagrzqjb3wnb9wqw75ihblsdgdvhd3n7dfhckrssxlnx"; })
-      (fetchNuGet { pname = "runtime.linux-arm.Microsoft.NETCore.DotNetHost"; version = "8.0.4"; sha256 = "0brwpdv25lrh6vvq466k25vlhrvgiw7mv61jilm4ngdiyx3261br"; })
-      (fetchNuGet { pname = "runtime.linux-arm.Microsoft.NETCore.DotNetHostPolicy"; version = "8.0.4"; sha256 = "0c9qjlzwr2y3h98xwmf3ql5kh4x8pp4k16brfx82n8ml8js4g5x5"; })
-      (fetchNuGet { pname = "runtime.linux-arm.Microsoft.NETCore.DotNetHostResolver"; version = "8.0.4"; sha256 = "1qy2n7n35wvc5nbik1s5pfirhbp332zbgzs1b3xlnhwdk6nmpcnj"; })
-      (fetchNuGet { pname = "runtime.linux-musl-arm64.Microsoft.NETCore.DotNetAppHost"; version = "8.0.4"; sha256 = "0lgd5nxlz8na182n90y935hmcpry813nakg93ixk2cm5k3i0hy37"; })
-      (fetchNuGet { pname = "runtime.linux-musl-arm64.Microsoft.NETCore.DotNetHost"; version = "8.0.4"; sha256 = "1ig0h7b0rasqrg8hv7j7wqh2n6rxs8wzqllbspk88dyjf64mpvif"; })
-      (fetchNuGet { pname = "runtime.linux-musl-arm64.Microsoft.NETCore.DotNetHostPolicy"; version = "8.0.4"; sha256 = "0lm7a3k7ll1m13clkicnw9smnw29m493w6syvwaada67lxndvdqh"; })
-      (fetchNuGet { pname = "runtime.linux-musl-arm64.Microsoft.NETCore.DotNetHostResolver"; version = "8.0.4"; sha256 = "1v8yf67dk51paqqvjmljf7x2cc127aykl2ylgqimvs7pn6xajrqb"; })
-      (fetchNuGet { pname = "runtime.linux-musl-x64.Microsoft.NETCore.DotNetAppHost"; version = "8.0.4"; sha256 = "1i1xifc3nrfl5y7xv7iahfw3y9k2w8p8d6qd3p4pkv8rm1i1qqdb"; })
-      (fetchNuGet { pname = "runtime.linux-musl-x64.Microsoft.NETCore.DotNetHost"; version = "8.0.4"; sha256 = "0irkqhm47wqj1g32m7pbfyi1igs6js8c7m5xkkfm11a8d3ryy87g"; })
-      (fetchNuGet { pname = "runtime.linux-musl-x64.Microsoft.NETCore.DotNetHostPolicy"; version = "8.0.4"; sha256 = "0zhw9dxss2zql0qrr4jkj0kr9691b02aav01z2cqn0zbfxc5m5ig"; })
-      (fetchNuGet { pname = "runtime.linux-musl-x64.Microsoft.NETCore.DotNetHostResolver"; version = "8.0.4"; sha256 = "1h5kzx741pgzl5p0lsfzmqi1qa3c4yad1p11l54k2dxcbg08nzgv"; })
-      (fetchNuGet { pname = "runtime.linux-x64.Microsoft.NETCore.DotNetAppHost"; version = "8.0.4"; sha256 = "06l874c98i3dac7zyv5y416k6lm477733i4pf6205lamw95hgci9"; })
-      (fetchNuGet { pname = "runtime.linux-x64.Microsoft.NETCore.DotNetHost"; version = "8.0.4"; sha256 = "1ciiai9i9cac2fppd5x7whxblgg9jj0n7p5ff83dmylnb04gg0vp"; })
-      (fetchNuGet { pname = "runtime.linux-x64.Microsoft.NETCore.DotNetHostPolicy"; version = "8.0.4"; sha256 = "168nnns2ppjij3bmbfvnfdpwijf689m6ryrhcbbnram1hxzr2ki5"; })
-      (fetchNuGet { pname = "runtime.linux-x64.Microsoft.NETCore.DotNetHostResolver"; version = "8.0.4"; sha256 = "1syw6863rb8p2g6a9r54hflz0dj750fkzm9dv18vib064r7x1lgc"; })
-      (fetchNuGet { pname = "runtime.osx-x64.Microsoft.NETCore.DotNetAppHost"; version = "8.0.4"; sha256 = "07y30dx317kwj089z5laxlw9dwllv27rbh8yhym2ljqajjknaxrs"; })
-      (fetchNuGet { pname = "runtime.osx-x64.Microsoft.NETCore.DotNetHost"; version = "8.0.4"; sha256 = "060z3c7iqqjy4p9chm7b18z8j6439dwb71cahpwxb1y0xm6y4hmr"; })
-      (fetchNuGet { pname = "runtime.osx-x64.Microsoft.NETCore.DotNetHostPolicy"; version = "8.0.4"; sha256 = "0pf30jg23iymn5vvg1vsn6aibdqv26i11cl0zypfmq1bgh3cjh3f"; })
-      (fetchNuGet { pname = "runtime.osx-x64.Microsoft.NETCore.DotNetHostResolver"; version = "8.0.4"; sha256 = "0kmbglad3xp643b82qy6gsydib77i3rmlq23vvvm8i8pg6whzflc"; })
-      (fetchNuGet { pname = "runtime.win-arm64.Microsoft.NETCore.DotNetAppHost"; version = "8.0.4"; sha256 = "0x7pvxvl0vfc9lk6kb70v9rj0i5mc5xk9w1cp382npr1lc6l51m6"; })
-      (fetchNuGet { pname = "runtime.win-arm64.Microsoft.NETCore.DotNetHost"; version = "8.0.4"; sha256 = "0725n81lawhjlhqs7rhj00fx3ymz10xy4bpj5pmvwx78qrfja8bj"; })
-      (fetchNuGet { pname = "runtime.win-arm64.Microsoft.NETCore.DotNetHostPolicy"; version = "8.0.4"; sha256 = "18kr4l7vbndvbq2k332axywk0jagci8892r0wxdxyqa9n0pa311c"; })
-      (fetchNuGet { pname = "runtime.win-arm64.Microsoft.NETCore.DotNetHostResolver"; version = "8.0.4"; sha256 = "03ng08sx2nvpkvk3nfcp5f4zh85h7lpq0d272d75n0axhffqmwd6"; })
-      (fetchNuGet { pname = "runtime.win-x64.Microsoft.NETCore.DotNetAppHost"; version = "8.0.4"; sha256 = "0riwadg1qhqdr50js8jx6diaq4g302xwz1an9ngxd22p8xyy1dj7"; })
-      (fetchNuGet { pname = "runtime.win-x64.Microsoft.NETCore.DotNetHost"; version = "8.0.4"; sha256 = "08j2dbg06vg09xz6r6jsqm4k6749z4bbpaaligx7zhrqihszvm41"; })
-      (fetchNuGet { pname = "runtime.win-x64.Microsoft.NETCore.DotNetHostPolicy"; version = "8.0.4"; sha256 = "02nkdqf0hi3f6720d0mqv27mr98wxycryy74grrbgabjjylawazg"; })
-      (fetchNuGet { pname = "runtime.win-x64.Microsoft.NETCore.DotNetHostResolver"; version = "8.0.4"; sha256 = "08y3vckrv8njar2v02igsqm4lbcf31fk8f2ld8c74s219nmd2c64"; })
-      (fetchNuGet { pname = "runtime.win-x86.Microsoft.NETCore.DotNetAppHost"; version = "8.0.4"; sha256 = "12vlqrllhgbg6n43yv8vav0bmj0xy0cvw4p1rg7knc63x83jf2rr"; })
-      (fetchNuGet { pname = "runtime.win-x86.Microsoft.NETCore.DotNetHost"; version = "8.0.4"; sha256 = "1d1yxlyk2yjh5i4aidzc155j11qyjfly2vyhvsdxkh0arh41n96x"; })
-      (fetchNuGet { pname = "runtime.win-x86.Microsoft.NETCore.DotNetHostPolicy"; version = "8.0.4"; sha256 = "0pwq5vzm34wascaj77h2bhc6rrzbygx2vavr8qn2adz6pia1zvf0"; })
-      (fetchNuGet { pname = "runtime.win-x86.Microsoft.NETCore.DotNetHostResolver"; version = "8.0.4"; sha256 = "00qr1ydbyvjxi57k0ig9kv1ngn84n0b48hznvwa8n86iqqk886q7"; })
-      (fetchNuGet { pname = "Microsoft.NETCore.App.Host.linux-musl-arm"; version = "8.0.4"; sha256 = "07mn92340nv63ld5r3ch8hc71p8kjk5zb7bh6n3n43qxmakr3ysc"; })
-      (fetchNuGet { pname = "Microsoft.NETCore.App.Host.osx-arm64"; version = "8.0.4"; sha256 = "1lgvwyypl2l64qz23p1qdxzap73v3118pjkh0wh8g5qw54nfd3ck"; })
-      (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.linux-musl-arm"; version = "8.0.4"; sha256 = "1hdyb154xmapm4bw1bxs433k2sigjkb663cnxzhsgxwwxf8jd0z7"; })
-      (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.osx-arm64"; version = "8.0.4"; sha256 = "08z2bhm5zva61ddb3psmlrwpi9snr37s96xyf6iqc4gl8pki65h8"; })
-      (fetchNuGet { pname = "Microsoft.NETCore.App.Ref"; version = "8.0.4"; sha256 = "0xi99c6gqhwxgz2yivihs9rxjnfl9h1nwgq4w5v15bjln1blmq9x"; })
-      (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.Mono.linux-arm"; version = "8.0.4"; sha256 = "0a02aa93wx92rzy3lmyxpm9qns6g35wfzdf8zks4sm1f7l2jlxhp"; })
-      (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.Mono.linux-arm64"; version = "8.0.4"; sha256 = "0m6sqgr37m0228jkkp89dyr6s2iidnrs9xaffhpaq7yhk578y61v"; })
-      (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.Mono.linux-musl-x64"; version = "8.0.4"; sha256 = "1ws5zchg550sn6rfadrjfc9aqs62qz10pyqw7ddrgygffvb1sfji"; })
-      (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.Mono.linux-x64"; version = "8.0.4"; sha256 = "1xd1zdb5d2cb4ivw3mj9gf3r02i52hmx7jiswbk2dx8q2k79hv6i"; })
-      (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.Mono.osx-arm64"; version = "8.0.4"; sha256 = "05gp1385441wwmjf7j08z4gkirzws06rxvwr7k1hj144ix0nyy9l"; })
-      (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.Mono.osx-x64"; version = "8.0.4"; sha256 = "1l9yahli9dan9szins7sckmjpwnpm3w9ic5qvwzdzzljn8pp16kl"; })
-      (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.Mono.win-x64"; version = "8.0.4"; sha256 = "05j3n1a5r5gh75mvw5pcj8my3l77kh7hdparl2cv030kk7cc401s"; })
-      (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.Mono.win-x86"; version = "8.0.4"; sha256 = "05rl747ahxqyvkcdmbcnn5rjr6pg6bc65h0vwc56vwrfd9nif6vq"; })
-      (fetchNuGet { pname = "runtime.linux-musl-arm.Microsoft.NETCore.DotNetAppHost"; version = "8.0.4"; sha256 = "1i7q1fjf07hpnd9hi9z0bavp9kqkk3z5ny8id8yfcansgf4j9bj7"; })
-      (fetchNuGet { pname = "runtime.linux-musl-arm.Microsoft.NETCore.DotNetHost"; version = "8.0.4"; sha256 = "01vknc74yy1b36yip1gdcjcr7wij0p9kmglj1lidh6mr676mmi87"; })
-      (fetchNuGet { pname = "runtime.linux-musl-arm.Microsoft.NETCore.DotNetHostPolicy"; version = "8.0.4"; sha256 = "1qms7i24h9rrzljfmw1vrj3ivfagr0lhr3xaack7vcq7n5mqdcf2"; })
-      (fetchNuGet { pname = "runtime.linux-musl-arm.Microsoft.NETCore.DotNetHostResolver"; version = "8.0.4"; sha256 = "1qjzkqm0ra6yhazygw8ypzqcaq6ryvcw19b0msfnw3bkaiip0l7k"; })
-      (fetchNuGet { pname = "runtime.osx-arm64.Microsoft.NETCore.DotNetAppHost"; version = "8.0.4"; sha256 = "0m37df28wji42cg3696acbrcq6k67y76rsvlr0gfx5qzgy1nfy8s"; })
-      (fetchNuGet { pname = "runtime.osx-arm64.Microsoft.NETCore.DotNetHost"; version = "8.0.4"; sha256 = "0g7qb58r0jd17xbfvhbpd2pwvnmzmpq8jvd5m08xdq9krrx0cvcc"; })
-      (fetchNuGet { pname = "runtime.osx-arm64.Microsoft.NETCore.DotNetHostPolicy"; version = "8.0.4"; sha256 = "1b4ihr11yj3zjy7s9zhhailryrlkwrlnpa18z603gic157cbzz2j"; })
-      (fetchNuGet { pname = "runtime.osx-arm64.Microsoft.NETCore.DotNetHostResolver"; version = "8.0.4"; sha256 = "1fr33r7cgiww338xad3n2f5xhjrq31chx4nj5kqwdh6gszx3ifj9"; })
-      (fetchNuGet { pname = "Microsoft.NETCore.App.Crossgen2.linux-musl-arm"; version = "8.0.4"; sha256 = "16148vl576zmc336q98a975zzqxz0xjwqkwh87ibxrlyz3w78qw2"; })
-      (fetchNuGet { pname = "Microsoft.NETCore.App.Crossgen2.linux-musl-arm64"; version = "8.0.4"; sha256 = "13gwa8ifir2frmsk88swg778lrjf2l0ij0x7pdlihhywy7gly9wi"; })
-      (fetchNuGet { pname = "Microsoft.NETCore.App.Crossgen2.linux-musl-x64"; version = "8.0.4"; sha256 = "1b1ml4mppgfl85lz8s34dk2b3s5j8vdql8k2233zhbcs26d401na"; })
-      (fetchNuGet { pname = "Microsoft.NETCore.App.Crossgen2.linux-arm"; version = "8.0.4"; sha256 = "1d3yfjqnar7g1fzr6005n43q5frkihkgmpwy91m40jjzbivlid6c"; })
-      (fetchNuGet { pname = "Microsoft.NETCore.App.Crossgen2.linux-arm64"; version = "8.0.4"; sha256 = "0qz21s5v01fls5y1n1zjbc0fylk5lynf5yw9fmgabh2s8gi05wxz"; })
-      (fetchNuGet { pname = "Microsoft.NETCore.App.Crossgen2.linux-x64"; version = "8.0.4"; sha256 = "0bbw2v83aask0w18ir0i6q3xhmhxa5rahbcd5a1c6cy3hmj3mkx9"; })
-      (fetchNuGet { pname = "Microsoft.NETCore.App.Crossgen2.osx-x64"; version = "8.0.4"; sha256 = "1kb1y62mgzdyh11qcvb8mk7i2lmxbil7nwnyv2nys2fwqqkp0zdm"; })
-      (fetchNuGet { pname = "Microsoft.NETCore.App.Crossgen2.osx-arm64"; version = "8.0.4"; sha256 = "15yhasq3q0dhw1ssldgxwjdnf8q7az55bly4nmg198ngkw6aiikg"; })
-      (fetchNuGet { pname = "runtime.linux-arm64.Microsoft.DotNet.ILCompiler"; version = "8.0.4"; sha256 = "18z2lz3rbas3p0k9jahmdas72p5klfwzhqpky044wyp4knwh62dl"; })
-      (fetchNuGet { pname = "runtime.linux-musl-arm64.Microsoft.DotNet.ILCompiler"; version = "8.0.4"; sha256 = "1ia6kl7v2gmrm52417n4b3h61zvnc7pvyfwa0ighyb16p67zw8rm"; })
-      (fetchNuGet { pname = "runtime.linux-musl-x64.Microsoft.DotNet.ILCompiler"; version = "8.0.4"; sha256 = "012phpsracmrpgrv74ajyx0sva2rzbklz7a5pmi2m656j2mqnx1n"; })
-      (fetchNuGet { pname = "runtime.linux-x64.Microsoft.DotNet.ILCompiler"; version = "8.0.4"; sha256 = "0pkdlqjpv15x0d87z85w7n40n804nzzdzjbjbhr9arijhl8ykd24"; })
-      (fetchNuGet { pname = "runtime.osx-x64.Microsoft.DotNet.ILCompiler"; version = "8.0.4"; sha256 = "1bgwban9h8paav98v8m7bpfsqq85k52vhar4w50wv6kag81dradc"; })
-      (fetchNuGet { pname = "runtime.win-arm64.Microsoft.DotNet.ILCompiler"; version = "8.0.4"; sha256 = "1anp4wazxx42r9hzqbyqdsg01pg344wgp36ksd03dvhkdn51dnyy"; })
-      (fetchNuGet { pname = "runtime.win-x64.Microsoft.DotNet.ILCompiler"; version = "8.0.4"; sha256 = "1ppa0jcfwl0g7w71i90wjdfg72gm52pjp9izr5qig0sxfg266jsg"; })
-      (fetchNuGet { pname = "Microsoft.NET.ILLink.Tasks"; version = "8.0.4"; sha256 = "055jpbwd3309lplrczs14yfvfhznr4k6cc7b50rdnlrhjvxmhgf3"; })
+      (fetchNuGet { pname = "Microsoft.AspNetCore.App.Runtime.linux-arm"; version = "8.0.5"; sha256 = "0zfpmawx2pc1mjdjkadch2ycqfsvjxz6zr4r5lb2s9w8ywafyqcf"; })
+      (fetchNuGet { pname = "Microsoft.AspNetCore.App.Runtime.linux-arm64"; version = "8.0.5"; sha256 = "0vn6kq3svv9kbgwdfa3lswc4pwsqxplg7kc3srd1a07k4jkz9qn5"; })
+      (fetchNuGet { pname = "Microsoft.AspNetCore.App.Runtime.linux-musl-arm64"; version = "8.0.5"; sha256 = "0cvzrnqizdccrajfznjgwj6qra8kbqqln5z6x2l9gqklawk4ncdl"; })
+      (fetchNuGet { pname = "Microsoft.AspNetCore.App.Runtime.linux-musl-x64"; version = "8.0.5"; sha256 = "0phhkwilyhh764m8pf403d3qv072ld0z7jg6x9sywqlb4q6za443"; })
+      (fetchNuGet { pname = "Microsoft.AspNetCore.App.Runtime.linux-x64"; version = "8.0.5"; sha256 = "1m9gp68z0wyv0xxr4aqc1c2v6v8grml3jxkiqabddn46d6gsisqh"; })
+      (fetchNuGet { pname = "Microsoft.AspNetCore.App.Runtime.osx-x64"; version = "8.0.5"; sha256 = "0mdcrzpj17g8xkk5j3flk5xkgp2dx44gamyfn9x5lf9siyi4812p"; })
+      (fetchNuGet { pname = "Microsoft.AspNetCore.App.Runtime.win-arm64"; version = "8.0.5"; sha256 = "1r2hcmi5l05n1s84gdpiqys0bc4lik1fmp8085dlqz5pc5kg0ibh"; })
+      (fetchNuGet { pname = "Microsoft.AspNetCore.App.Runtime.win-x64"; version = "8.0.5"; sha256 = "1118p6981b74zzm3p1nr2kwd5db35y21z3xif940xahh52zc887n"; })
+      (fetchNuGet { pname = "Microsoft.AspNetCore.App.Runtime.win-x86"; version = "8.0.5"; sha256 = "1bd0spskxlc4kwqd260ycxxvysxq19hrz6z0chlbc8kxfwf3kf9z"; })
+      (fetchNuGet { pname = "Microsoft.AspNetCore.App.Ref"; version = "8.0.5"; sha256 = "0s62x5cv1bw6g4jmmg7vyfpj4nha3bpsanhwpbk1vwgkridwxfgi"; })
+      (fetchNuGet { pname = "Microsoft.AspNetCore.App.Runtime.linux-musl-arm"; version = "8.0.5"; sha256 = "0b50abmhp8l8qjiwqxd1i1zw1kfddpr25nxl061kxb319zp5qslb"; })
+      (fetchNuGet { pname = "Microsoft.AspNetCore.App.Runtime.osx-arm64"; version = "8.0.5"; sha256 = "1m29wm2i6666cl6jlv5r5y75v98qidqjsc74sl2xazxsd105p7iw"; })
+      (fetchNuGet { pname = "Microsoft.NETCore.App.Host.linux-arm"; version = "8.0.5"; sha256 = "1f37i0f227lns4x2zxw670f7lj8lkxhpn805dk07xd2a70w3h54p"; })
+      (fetchNuGet { pname = "Microsoft.NETCore.App.Host.linux-arm64"; version = "8.0.5"; sha256 = "1b4js7g35nq5kx50cjbncrpychrhxqysic46x082g50kvkn877zy"; })
+      (fetchNuGet { pname = "Microsoft.NETCore.App.Host.linux-musl-arm64"; version = "8.0.5"; sha256 = "18ln96i7md0b3p00gyaka8jr9hly47gkbyqsmyzvvp4b98z5lda9"; })
+      (fetchNuGet { pname = "Microsoft.NETCore.App.Host.linux-musl-x64"; version = "8.0.5"; sha256 = "14mipnqvw6h7pw58sqjjc7013znz9wgcdklfcj6nbpr3cvb297xm"; })
+      (fetchNuGet { pname = "Microsoft.NETCore.App.Host.linux-x64"; version = "8.0.5"; sha256 = "1004mzihgamdrv66nd9bv44kk0qxbmzbqgjlrq54k8fxwy1602ps"; })
+      (fetchNuGet { pname = "Microsoft.NETCore.App.Host.osx-x64"; version = "8.0.5"; sha256 = "1wv6sqhf77x5iac6h64sr1ip8qyz9w79wlvs82h5wxn84hjrb97h"; })
+      (fetchNuGet { pname = "Microsoft.NETCore.App.Host.win-arm64"; version = "8.0.5"; sha256 = "0vz07rfkl7jday1qgjrgvqf47pgzqajx75fz9v3z55n94wdrsrk3"; })
+      (fetchNuGet { pname = "Microsoft.NETCore.App.Host.win-x64"; version = "8.0.5"; sha256 = "0176paxswr5phr8x29xir3sd4rxygp4w107anpwx14a2fbm01wmc"; })
+      (fetchNuGet { pname = "Microsoft.NETCore.App.Host.win-x86"; version = "8.0.5"; sha256 = "1rl8f4bgx6hmh4q7lgr4nvx6fb044rg96ja128m22v925wx3wq9q"; })
+      (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.linux-arm"; version = "8.0.5"; sha256 = "0j09zajb36z3gyv6f7gw9d80kvcjc8z9qw52x4cs5bynakx97563"; })
+      (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.linux-arm64"; version = "8.0.5"; sha256 = "00m2f6fi9nagcv9s0f9nd0wkcq9qs6dmwchdp0khfsl3xj1hv99g"; })
+      (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.linux-musl-arm64"; version = "8.0.5"; sha256 = "0jn3rpk6xcndrlkjvr0s8wlk4vgakvc18js0psmlrswrq9crq4ix"; })
+      (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.linux-musl-x64"; version = "8.0.5"; sha256 = "0l1shrv0rshx527dy90wq1w5x3rvx3kzqj1mslx4ysjzf8841q6r"; })
+      (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.linux-x64"; version = "8.0.5"; sha256 = "15vadqfi0w7sdq0rh35rb9ph4h4qbal2i5m5ifabbfwjp7348z9c"; })
+      (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.osx-x64"; version = "8.0.5"; sha256 = "0f5ya9gb16wi6jff586g67icwshsca22afx4k6vnssr2p38xvh7v"; })
+      (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.win-arm64"; version = "8.0.5"; sha256 = "09wjap5ykxsyyxfplhjn7jpxbx8qnks6cbc0200nfx3xqi5hyj6c"; })
+      (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.win-x64"; version = "8.0.5"; sha256 = "03nin18sqjc79b4dwwfzd620vr0ph1jnj462sfaszhyrcxs41vz1"; })
+      (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.win-x86"; version = "8.0.5"; sha256 = "0f9pw81cc2z6jir7nfr0nn211857ac9ix0dq7rpib0ld0bzf9naz"; })
+      (fetchNuGet { pname = "Microsoft.NETCore.DotNetAppHost"; version = "8.0.5"; sha256 = "0b8bdyckb4l2z4byxlw84pz4nfahp8kfx5valbll8sj0f9357apn"; })
+      (fetchNuGet { pname = "Microsoft.NETCore.DotNetHost"; version = "8.0.5"; sha256 = "0wv2c8cf1fi7pm42by9dhyrld48cl5mssm70aq7fwa2hgnvy5kaz"; })
+      (fetchNuGet { pname = "Microsoft.NETCore.DotNetHostPolicy"; version = "8.0.5"; sha256 = "1yg53pnw2an4vmw9aqmhdnrk54ir16i3q95lv44p3vfdx8az582b"; })
+      (fetchNuGet { pname = "Microsoft.NETCore.DotNetHostResolver"; version = "8.0.5"; sha256 = "0zjh0ang18sxayr3imidda99bbcna3iwml77f77fyw7cq5xm57xd"; })
+      (fetchNuGet { pname = "runtime.linux-arm64.Microsoft.NETCore.DotNetAppHost"; version = "8.0.5"; sha256 = "0bvnc073s7g9pap6cl0v18xp7shpmck6mfmcwryjzpj98za8fiz3"; })
+      (fetchNuGet { pname = "runtime.linux-arm64.Microsoft.NETCore.DotNetHost"; version = "8.0.5"; sha256 = "1lnxgpd66psjciafhgwm37lzd8a5n980m77bbmaclcmx1jf5knv6"; })
+      (fetchNuGet { pname = "runtime.linux-arm64.Microsoft.NETCore.DotNetHostPolicy"; version = "8.0.5"; sha256 = "1r753a0bhlz9iiw1k47drjmwckwjzzixzgggji8glp3a22p2d8bp"; })
+      (fetchNuGet { pname = "runtime.linux-arm64.Microsoft.NETCore.DotNetHostResolver"; version = "8.0.5"; sha256 = "08wcywhnjl2pw5w2ybswnwwzgmyanxm4bma80rbz86xchlqakk5z"; })
+      (fetchNuGet { pname = "runtime.linux-arm.Microsoft.NETCore.DotNetAppHost"; version = "8.0.5"; sha256 = "12r3is7ddra45yvkwqcrm63lhpya5l9g912xw4rqbnfz4pbmr8dz"; })
+      (fetchNuGet { pname = "runtime.linux-arm.Microsoft.NETCore.DotNetHost"; version = "8.0.5"; sha256 = "1m3vglk8q3bycg6k5x3v29ylrb62kih56hn63dfzb7f20qb8xv8z"; })
+      (fetchNuGet { pname = "runtime.linux-arm.Microsoft.NETCore.DotNetHostPolicy"; version = "8.0.5"; sha256 = "1pxw3wxak4x2pm2mqsz9fipzx98d3blma8y0cz03nqqcmxfq2lnr"; })
+      (fetchNuGet { pname = "runtime.linux-arm.Microsoft.NETCore.DotNetHostResolver"; version = "8.0.5"; sha256 = "1m60wsv54czd55qw770mcnv8m7lnn5s99dya38is7szvgjgq0zx1"; })
+      (fetchNuGet { pname = "runtime.linux-musl-arm64.Microsoft.NETCore.DotNetAppHost"; version = "8.0.5"; sha256 = "1xdpipcybj54phsm1xn8ycfrwd6xaa8d67jxdakfiyzdwgbdqnam"; })
+      (fetchNuGet { pname = "runtime.linux-musl-arm64.Microsoft.NETCore.DotNetHost"; version = "8.0.5"; sha256 = "17xj4qrmmb6yxd3w0xi5x9la1ywrzczbmyx975p0z97yx5js719d"; })
+      (fetchNuGet { pname = "runtime.linux-musl-arm64.Microsoft.NETCore.DotNetHostPolicy"; version = "8.0.5"; sha256 = "01wq0zf646c87yz1zgf1vzvwd5kxjv8dfd0vvqq2w6af8670vxwa"; })
+      (fetchNuGet { pname = "runtime.linux-musl-arm64.Microsoft.NETCore.DotNetHostResolver"; version = "8.0.5"; sha256 = "1s85bhrhyq7sjks0frj4mkh8g1pd0j0bifd0wj3qnlagrbxmq33b"; })
+      (fetchNuGet { pname = "runtime.linux-musl-x64.Microsoft.NETCore.DotNetAppHost"; version = "8.0.5"; sha256 = "1qcnnshmqj6i6xf34pfi6ampvgcissclfs547yxjzgjizxgkkhy4"; })
+      (fetchNuGet { pname = "runtime.linux-musl-x64.Microsoft.NETCore.DotNetHost"; version = "8.0.5"; sha256 = "1ar9jssv4njgk6gy3nh81d0p81as8ff5vmgzranshyr6djrmshna"; })
+      (fetchNuGet { pname = "runtime.linux-musl-x64.Microsoft.NETCore.DotNetHostPolicy"; version = "8.0.5"; sha256 = "0d0yl060my0f9z3qbkzbks9jhw3zsms5issfa94rnkpgw9is40fh"; })
+      (fetchNuGet { pname = "runtime.linux-musl-x64.Microsoft.NETCore.DotNetHostResolver"; version = "8.0.5"; sha256 = "11v1bk0wsdx87rdk32cx63118bqmrvl054ai6h231yqw75q680sv"; })
+      (fetchNuGet { pname = "runtime.linux-x64.Microsoft.NETCore.DotNetAppHost"; version = "8.0.5"; sha256 = "0j4g9n88vdss1qzslr11pf49jxdv6pkbchdmsnis4nypp4nc4vk9"; })
+      (fetchNuGet { pname = "runtime.linux-x64.Microsoft.NETCore.DotNetHost"; version = "8.0.5"; sha256 = "1gmgj6h9nhzdcmn4mq2vfv8a69ncwcaix0vyyk8rrzzcrypvizpy"; })
+      (fetchNuGet { pname = "runtime.linux-x64.Microsoft.NETCore.DotNetHostPolicy"; version = "8.0.5"; sha256 = "04ihcgls7w20g8v3s47fyxc6cxx554mcmmfynkwp0206l6mfka78"; })
+      (fetchNuGet { pname = "runtime.linux-x64.Microsoft.NETCore.DotNetHostResolver"; version = "8.0.5"; sha256 = "1lr79q6bpmggmm1kpgr195662r47mnl4infva84w51daw6hkdkq2"; })
+      (fetchNuGet { pname = "runtime.osx-x64.Microsoft.NETCore.DotNetAppHost"; version = "8.0.5"; sha256 = "0rz6d960kxc4c1nc31w46l76lkpzmrh74qf0l4qy1cmsdylkbsby"; })
+      (fetchNuGet { pname = "runtime.osx-x64.Microsoft.NETCore.DotNetHost"; version = "8.0.5"; sha256 = "1cczas7zmdc8wal2n9axgz5kb5ccmh4i94k94jfma3p0c7s69msy"; })
+      (fetchNuGet { pname = "runtime.osx-x64.Microsoft.NETCore.DotNetHostPolicy"; version = "8.0.5"; sha256 = "1p9hi32ibv12dyiwgysj60as2g53an0dqidgxl93pazmmg1v25fd"; })
+      (fetchNuGet { pname = "runtime.osx-x64.Microsoft.NETCore.DotNetHostResolver"; version = "8.0.5"; sha256 = "1l4cbxlw33grx3pyf08079c8f2cmwnvdxkqpnw0072sb50s8yqk3"; })
+      (fetchNuGet { pname = "runtime.win-arm64.Microsoft.NETCore.DotNetAppHost"; version = "8.0.5"; sha256 = "1bzw2w73glg96mnf9cjjdk1bwz4z5rf8pgn1rmnpb3ldlawhz4g1"; })
+      (fetchNuGet { pname = "runtime.win-arm64.Microsoft.NETCore.DotNetHost"; version = "8.0.5"; sha256 = "02jz8kvs30d9vnxnv20dc3w8q9vhzff6n6r1qcyym3zfalmc4maz"; })
+      (fetchNuGet { pname = "runtime.win-arm64.Microsoft.NETCore.DotNetHostPolicy"; version = "8.0.5"; sha256 = "1hwfn3yy9iprikfvc0wz99fvb000w5nya2hmkix2fx3nydxd1gl3"; })
+      (fetchNuGet { pname = "runtime.win-arm64.Microsoft.NETCore.DotNetHostResolver"; version = "8.0.5"; sha256 = "18havx9c3m2py0zzccxh1jmj8wb2hq28vqixib0kcicgvdl3rwis"; })
+      (fetchNuGet { pname = "runtime.win-x64.Microsoft.NETCore.DotNetAppHost"; version = "8.0.5"; sha256 = "1lvp94im006cgi17mj26c9yhhzz6js0lxmdpqas9vh7qxlikj7nx"; })
+      (fetchNuGet { pname = "runtime.win-x64.Microsoft.NETCore.DotNetHost"; version = "8.0.5"; sha256 = "12bc6r867izzb6s092wwj1cfmi09qmyy7q6l1d8r48jq3p14v0np"; })
+      (fetchNuGet { pname = "runtime.win-x64.Microsoft.NETCore.DotNetHostPolicy"; version = "8.0.5"; sha256 = "1x6xwq8n9y0n2sj5rfh4pqzhkz62qxaa2g6y4s089f4bcg721l3d"; })
+      (fetchNuGet { pname = "runtime.win-x64.Microsoft.NETCore.DotNetHostResolver"; version = "8.0.5"; sha256 = "06a37cr1pg1nmzw07nbxsvfs3q8wn5p4xiglzg1b4fdpcwr0xpl6"; })
+      (fetchNuGet { pname = "runtime.win-x86.Microsoft.NETCore.DotNetAppHost"; version = "8.0.5"; sha256 = "1wlrapi8928jd9yfck7kfjdzgrzkylw8d7k4faaxrkbxpzn687br"; })
+      (fetchNuGet { pname = "runtime.win-x86.Microsoft.NETCore.DotNetHost"; version = "8.0.5"; sha256 = "1q4wbircp3dcbhgc7vdxm2m81ywpw3ls44jv6i3j7hkvh83v7kms"; })
+      (fetchNuGet { pname = "runtime.win-x86.Microsoft.NETCore.DotNetHostPolicy"; version = "8.0.5"; sha256 = "1rrrfig168zv5hznv19b1pb8k5r6j9smfxg4jn4vcr8qmy0vnfi1"; })
+      (fetchNuGet { pname = "runtime.win-x86.Microsoft.NETCore.DotNetHostResolver"; version = "8.0.5"; sha256 = "118558hm53ix8fr7lib2h4vgp6vmf1gmaxph75220c3v966wbbz6"; })
+      (fetchNuGet { pname = "Microsoft.NETCore.App.Host.linux-musl-arm"; version = "8.0.5"; sha256 = "1sjyap9avwq1p5gk2iw11zmqlh3bh1ch02phvmqp0s9pawwa6mvs"; })
+      (fetchNuGet { pname = "Microsoft.NETCore.App.Host.osx-arm64"; version = "8.0.5"; sha256 = "1s2n57qjggyznf23gf9gk7dzsr8nr8ypsv3gyacn8fvy42fvq9v2"; })
+      (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.linux-musl-arm"; version = "8.0.5"; sha256 = "04g6vriblgzhaf960pfjbxhql9xdqkwx778pklim0kck4prn39f6"; })
+      (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.osx-arm64"; version = "8.0.5"; sha256 = "18fxpdzlb9kqq754hs67aabklq7k13b1gxyjmbi7mldcn7yjw0wg"; })
+      (fetchNuGet { pname = "Microsoft.NETCore.App.Ref"; version = "8.0.5"; sha256 = "0mjwyl4ywakvzqgiy5gm0rld8fwxw7gp81qa1cn8ns2yn7ll2zhl"; })
+      (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.Mono.linux-arm"; version = "8.0.5"; sha256 = "0805yfy47fz5348ydi54546g43qr7fp4wpb2xzry5nfh0sn0693s"; })
+      (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.Mono.linux-arm64"; version = "8.0.5"; sha256 = "0rwjw6ahinci3bajky0m421cg7a0h6rjdnx389cd3wan3ij5l8bk"; })
+      (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.Mono.linux-musl-x64"; version = "8.0.5"; sha256 = "08j0xrfp7b2vj9hxrjf8zdp0agj2jvwyr5xii9wbkhnq4cwikjgn"; })
+      (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.Mono.linux-x64"; version = "8.0.5"; sha256 = "0vag2bgllay20fmyvvjbckjircry690sr2fykf010kzb4zmywiaz"; })
+      (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.Mono.osx-arm64"; version = "8.0.5"; sha256 = "1pf1m7miy6r430z5fbja0p38ixr4pj9jbh7mzqj6fqm4vqxbfiqg"; })
+      (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.Mono.osx-x64"; version = "8.0.5"; sha256 = "186q4jy948hy128271rhsjy1z8isc45snvss37pnz5r0wq68vy3b"; })
+      (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.Mono.win-x64"; version = "8.0.5"; sha256 = "0njzarmfay3jhqmjr1qmhgsldsff0rhb5lnl6zp0c337i85yd7xh"; })
+      (fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.Mono.win-x86"; version = "8.0.5"; sha256 = "0fwpmdw5d89mkmzfq16659mlswjp9fnd0cqdyfy5frgb3mi3g10a"; })
+      (fetchNuGet { pname = "runtime.linux-musl-arm.Microsoft.NETCore.DotNetAppHost"; version = "8.0.5"; sha256 = "0j68y9gp3ci4982imhdri513in9sldicx8xn6kvg3czqanc34n9j"; })
+      (fetchNuGet { pname = "runtime.linux-musl-arm.Microsoft.NETCore.DotNetHost"; version = "8.0.5"; sha256 = "1frixdwdpxjzkzlwrfkxrx6qnf4vpb7flhl7r1z2wi8m2x8xyami"; })
+      (fetchNuGet { pname = "runtime.linux-musl-arm.Microsoft.NETCore.DotNetHostPolicy"; version = "8.0.5"; sha256 = "1wmf8b422s3l6rld07zr5qyg43wp6cd3xnz80j45zmny6sl1ksd9"; })
+      (fetchNuGet { pname = "runtime.linux-musl-arm.Microsoft.NETCore.DotNetHostResolver"; version = "8.0.5"; sha256 = "1yp69lwz1yj89258sq0pznr037ihng9444d06893vajyn86x2ys3"; })
+      (fetchNuGet { pname = "runtime.osx-arm64.Microsoft.NETCore.DotNetAppHost"; version = "8.0.5"; sha256 = "1r1bzbisjxqkl310yfqjrsivjg55l61rlw60xm77nr4iww4av6l9"; })
+      (fetchNuGet { pname = "runtime.osx-arm64.Microsoft.NETCore.DotNetHost"; version = "8.0.5"; sha256 = "0gc6kmqvqmgzf22fgsimfybdj7yp889nc50jnlskm20hp6mia4wi"; })
+      (fetchNuGet { pname = "runtime.osx-arm64.Microsoft.NETCore.DotNetHostPolicy"; version = "8.0.5"; sha256 = "0ymnh483ds18699mvcg0k2j1an8xrknsb4zb3nxj97246wgdh9hp"; })
+      (fetchNuGet { pname = "runtime.osx-arm64.Microsoft.NETCore.DotNetHostResolver"; version = "8.0.5"; sha256 = "1r3cn282p3qv4fzsq5cwd5lkjjrv5dfqp54ffgh6yi9j9s2h0j99"; })
+      (fetchNuGet { pname = "Microsoft.NETCore.App.Crossgen2.linux-musl-arm"; version = "8.0.5"; sha256 = "1xkzzn8vg4h4nf63nbzvd5pk19y5cg3k0ljzkblva4knppaxx6k5"; })
+      (fetchNuGet { pname = "Microsoft.NETCore.App.Crossgen2.linux-musl-arm64"; version = "8.0.5"; sha256 = "00dbmjlcfckpgbl4f44p8vfr5aqabx21jllsqkqcy1qnp8a504h0"; })
+      (fetchNuGet { pname = "Microsoft.NETCore.App.Crossgen2.linux-musl-x64"; version = "8.0.5"; sha256 = "1syiaqw9dmqm5n5fvwhaycip1d7mj14dcivjwbhyf5nyd67zy8bp"; })
+      (fetchNuGet { pname = "Microsoft.NETCore.App.Crossgen2.linux-arm"; version = "8.0.5"; sha256 = "0jpf2axjfv8nwd4yiib25agfx2y1mmksxz8laf6akac33gf6swgh"; })
+      (fetchNuGet { pname = "Microsoft.NETCore.App.Crossgen2.linux-arm64"; version = "8.0.5"; sha256 = "02mpnyyklhwyysjz8rhk42cnl5v1gb64la8zm95nldrsgv1viw70"; })
+      (fetchNuGet { pname = "Microsoft.NETCore.App.Crossgen2.linux-x64"; version = "8.0.5"; sha256 = "1ky9whq5k3a1x0amailp1kd5926lx3kpir2ji68wj80w7c4kpr72"; })
+      (fetchNuGet { pname = "Microsoft.NETCore.App.Crossgen2.osx-x64"; version = "8.0.5"; sha256 = "1jaw4mgzsf7jjkqlzkxjbpj3jszpg86fgjjvkc2vyk91p15dsgll"; })
+      (fetchNuGet { pname = "Microsoft.NETCore.App.Crossgen2.osx-arm64"; version = "8.0.5"; sha256 = "1jw06my5ds295lap3q35pg4hqcqmrx2bjqjaxgxhm6vyaif756nx"; })
+      (fetchNuGet { pname = "runtime.linux-arm64.Microsoft.DotNet.ILCompiler"; version = "8.0.5"; sha256 = "1iq19frhagk99a9wjgb10059mh0k5wp28inwy7diivj4lpi7wr24"; })
+      (fetchNuGet { pname = "runtime.linux-musl-arm64.Microsoft.DotNet.ILCompiler"; version = "8.0.5"; sha256 = "1qrmwr0vvl49slnjf5r63lyyl7zlli98lbn0g44n6ra8drbhdyp6"; })
+      (fetchNuGet { pname = "runtime.linux-musl-x64.Microsoft.DotNet.ILCompiler"; version = "8.0.5"; sha256 = "17i0cgs6w8vlr7fnypj4c6188rpc3sgkr80ly453nb2qrmkyhzh4"; })
+      (fetchNuGet { pname = "runtime.linux-x64.Microsoft.DotNet.ILCompiler"; version = "8.0.5"; sha256 = "1x80i4rbkdanana8hhbhkw47410bpryinry2axxwaw6yyk5gyr3g"; })
+      (fetchNuGet { pname = "runtime.osx-x64.Microsoft.DotNet.ILCompiler"; version = "8.0.5"; sha256 = "1psh3vxfp37xx6bdhgj7l7d9r6p0kkxwfi98i89l1s407nj6cwvc"; })
+      (fetchNuGet { pname = "runtime.win-arm64.Microsoft.DotNet.ILCompiler"; version = "8.0.5"; sha256 = "0msnc3iqrlslipar5zbjhz7v4f27lc7rkyy1fv18rqv787a87bbx"; })
+      (fetchNuGet { pname = "runtime.win-x64.Microsoft.DotNet.ILCompiler"; version = "8.0.5"; sha256 = "1q6vx9d2z57idkickjfxf9jf90x9x7jmxz7lrhyxcrprnf7sscgw"; })
+      (fetchNuGet { pname = "Microsoft.NET.ILLink.Tasks"; version = "8.0.5"; sha256 = "06siqqihzhmxbkryrw3x3xvmv5fr6gw5qdyb6y8z3l9bzd5qdf7r"; })
   ];
 in rec {
-  release_8_0 = "8.0.4";
+  release_8_0 = "8.0.5";
 
   aspnetcore_8_0 = buildAspNetCore {
-    version = "8.0.4";
+    version = "8.0.5";
     srcs = {
       x86_64-linux = {
-        url     = "https://download.visualstudio.microsoft.com/download/pr/0b0bc7f4-c6e5-4cec-a7ed-45c2fac0da4b/ae2090564274152b5a4be9f1e66c5d30/aspnetcore-runtime-8.0.4-linux-x64.tar.gz";
-        sha512  = "8ab281977116bf59a672afe5463bce4433378cc8a67d332c564a012939b7dbdd8756df82a115a5ab93f8186c22700a6dc0272b99a0f484db837da96820c78e79";
+        url     = "https://download.visualstudio.microsoft.com/download/pr/ccccfeb7-0af4-4713-b4f1-cf49b5c8bd6c/5b04c0188dfcf78b70da78ae3bd7f3ab/aspnetcore-runtime-8.0.5-linux-x64.tar.gz";
+        sha512  = "ffe6a534ed7dffe031e7d687b153f09a743792fad6ddcdf70fcbdbe4564462d5db71a8c9eb52036b817192386ef6a8fc574d995e0cdf572226302e797a6581c4";
       };
       aarch64-linux = {
-        url     = "https://download.visualstudio.microsoft.com/download/pr/80ec12e5-b26f-466c-a20c-f96772ea709d/606e7203912400b44cb35d6fcecf60bf/aspnetcore-runtime-8.0.4-linux-arm64.tar.gz";
-        sha512  = "0b0b3dffe678211afcaeca5d7e381f2218f156421c79dd06e083b1abd92ceb2b5c04c8a159b7d67b866393b8169de826ede70240226e0164451b329b7d46b570";
+        url     = "https://download.visualstudio.microsoft.com/download/pr/208a57a8-fcc0-4801-a337-79095304d2af/d1ffa79af24735af4bd748229778c1a9/aspnetcore-runtime-8.0.5-linux-arm64.tar.gz";
+        sha512  = "54ad859a3307a4ccce6aa794df20dab3fc38cb4a8fc9f1c2cb41636d6d19fed1e82f88a0099bdc9f30e08c919ae5653da828ae54b0299291dafcc755575f02db";
       };
       x86_64-darwin = {
-        url     = "https://download.visualstudio.microsoft.com/download/pr/8edd447c-bd4a-4677-ba33-8bdac6088dc8/a17a23a5d47642eb050288dea0322350/aspnetcore-runtime-8.0.4-osx-x64.tar.gz";
-        sha512  = "544257738cd7265a6c3c99e83f331c20c631ee8064e47bd925e37191627223e2f39f19a025360de1f95915bde1a26eede757bea4ffbd115309d186d81d7d6b61";
+        url     = "https://download.visualstudio.microsoft.com/download/pr/77cd03cb-5575-48c9-8714-6498ee88694b/8bfba2913a4db23e3dffdff779fb7866/aspnetcore-runtime-8.0.5-osx-x64.tar.gz";
+        sha512  = "d214a8b6a60547acb1a7f879e7a82348585b699f714b73b168918ebc60ee580ca5ff973f64e7738063f79dd04f0807bef0d73e90ce42c3b4464b87b768ccd789";
       };
       aarch64-darwin = {
-        url     = "https://download.visualstudio.microsoft.com/download/pr/172cfd62-a126-4375-9a48-84cfbcf1b718/959ce27a010020f0e5d393578574bca9/aspnetcore-runtime-8.0.4-osx-arm64.tar.gz";
-        sha512  = "15e8a7535e0b4d2deeccec32e6373cc2d79fe1156c2490ec263790723c5f660c03a61978826d825a427ebbad02cd0eef12a14e11cb8fcd9744c5ce2ef7176011";
+        url     = "https://download.visualstudio.microsoft.com/download/pr/c264657c-7a93-4ba5-b6e0-91bf41341e1e/90fb45ed7d2f92c374899b1c7a5254b2/aspnetcore-runtime-8.0.5-osx-arm64.tar.gz";
+        sha512  = "b1a47d2ae3b528f5c32b57e3a03b46d12a14126b9768f9dd5dd979d49dc6543c6aafe55684eae3890ffe6b867aa664805b920ae1514f67cc841b882d5da7c091";
       };
     };
   };
 
   runtime_8_0 = buildNetRuntime {
-    version = "8.0.4";
+    version = "8.0.5";
     srcs = {
       x86_64-linux = {
-        url     = "https://download.visualstudio.microsoft.com/download/pr/a3ca3d31-f45b-4e53-ab4d-0f2f221cbc5b/47382078b4b72a66387d0fd6ed9ff963/dotnet-runtime-8.0.4-linux-x64.tar.gz";
-        sha512  = "5c23889d3e6effa85d46c0e1969ce876c686723ae47bddf2cf9c0b1d99affde3f60c04063c2467027aa4163e9a981ef601250a7e8d14ddc6b365c89b24029c80";
+        url     = "https://download.visualstudio.microsoft.com/download/pr/baeb5da3-4b77-465b-8816-b29f0bc3e1a9/b04b17a2aae79e5f5635a3ceffbd4645/dotnet-runtime-8.0.5-linux-x64.tar.gz";
+        sha512  = "3efff49feb2e11cb5ec08dcee4e1e8ad92a4d2516b721a98b55ef2ada231cad0c91fd20b71ab5e340047fc837bd02d143449dd32f4f95288f6f659fa6c790eaa";
       };
       aarch64-linux = {
-        url     = "https://download.visualstudio.microsoft.com/download/pr/761b252b-a0d9-41cd-b1ec-2dc33159c11c/b8285cf82db4ef340a191bfba9a9a73e/dotnet-runtime-8.0.4-linux-arm64.tar.gz";
-        sha512  = "d11ce8867dc91d9e9b333753cc7b9677204898485d044dfbbfabe5c5eee43091580a11c3029fca4138cfa9576f84e23fc11bcffa44fcaf5c3d8e617a3cd18802";
+        url     = "https://download.visualstudio.microsoft.com/download/pr/00ca4d7a-e529-4384-8ad4-acb8237d540f/a7df4c26e3c0e1dcf8e17d2abb79aad5/dotnet-runtime-8.0.5-linux-arm64.tar.gz";
+        sha512  = "cd6c0ac051c3a8b6f3452a5a93600e664e30b9ba14c33948fbbfc21482fe55a8b16268035dd0725c85189d18c83860ea7a7bc96c87d6a4ee6a6083130c5586c3";
       };
       x86_64-darwin = {
-        url     = "https://download.visualstudio.microsoft.com/download/pr/c999e42b-38c9-4d9a-9816-9a0ebece8afe/8e4471db5aa0756d812af23817b14259/dotnet-runtime-8.0.4-osx-x64.tar.gz";
-        sha512  = "bb303991154582e1aee0b4850bec2ed92b5c4253bed08d76da0c9687c90c46c9ddddd7ffb9050fb7a4d8db6be6e8cd552156589679a3a169341a167952d76407";
+        url     = "https://download.visualstudio.microsoft.com/download/pr/0dabe69f-fa99-4b53-96d1-9f9791bb0b6b/f72acbfd3b0e60528d9494b43bcf21ca/dotnet-runtime-8.0.5-osx-x64.tar.gz";
+        sha512  = "29a8be6dd738d634cc33857dc1f1f6cc2c263177d78eb1c4585c96b5bf568f8f2689f1a30eec728ccb96a2d005049936abbfd44daca1962caf4f6d53325ba42f";
       };
       aarch64-darwin = {
-        url     = "https://download.visualstudio.microsoft.com/download/pr/d2cd56cc-5a78-460d-a45d-3893b020949d/8cf9653a23c91ac2b10c70f58edae60e/dotnet-runtime-8.0.4-osx-arm64.tar.gz";
-        sha512  = "7aa4ea587348984ca959945a9e52bade7cb9cbcb8c5a32dbcdf0836d2da4148ca68fcf9815b0b274964b5164c9266b1891afc9406c1c7337642f09300efd7649";
+        url     = "https://download.visualstudio.microsoft.com/download/pr/fac90ccb-5864-4d4a-a116-67387aaee61e/df82eea80efffad3c9ec8b0522847e68/dotnet-runtime-8.0.5-osx-arm64.tar.gz";
+        sha512  = "5401135b8871d85ca6f774958e6a644ef2bf85a88d2358f15c3bdc928b21a700be428efede677d83640085461d000e55a28bfbacdc9f01af0334a6e8b257efbd";
       };
     };
   };
 
+  sdk_8_0_3xx = buildNetSdk {
+    version = "8.0.300";
+    srcs = {
+      x86_64-linux = {
+        url     = "https://download.visualstudio.microsoft.com/download/pr/4a252cd9-d7b7-41bf-a7f0-b2b10b45c068/1aff08f401d0e3980ac29ccba44efb29/dotnet-sdk-8.0.300-linux-x64.tar.gz";
+        sha512  = "6ba966801ad3869275469b0f7ee7af0b88b659d018a37b241962335bd95ef6e55cb6741ab77d96a93c68174d30d0c270b48b3cda21b493270b0d6038ee3fe79e";
+      };
+      aarch64-linux = {
+        url     = "https://download.visualstudio.microsoft.com/download/pr/54e5bb2e-bdd6-496d-8aba-4ed14658ee91/34fd7327eadad7611bded51dcda44c35/dotnet-sdk-8.0.300-linux-arm64.tar.gz";
+        sha512  = "b38d34afe6d92f63a0e5b6fc37c88fbb5a1c73fba7d8df41d25432b64b2fbc31017198a02209b3d4343d384bc352834b9ee68306307a3f0fe486591dd2f70efd";
+      };
+      x86_64-darwin = {
+        url     = "https://download.visualstudio.microsoft.com/download/pr/e05a3055-c987-4127-a315-51d6b982fd67/fbda30d8e461b2c5098f3c405378b559/dotnet-sdk-8.0.300-osx-x64.tar.gz";
+        sha512  = "12ed6044dad31c65d6894d7e1cf861a6c330c23761fed90ca2fe0c7d2700433fb8b8541c35bb235b044762f5fd33496cd6e92dbd70deeeb7b9e59423d9d49f5e";
+      };
+      aarch64-darwin = {
+        url     = "https://download.visualstudio.microsoft.com/download/pr/4d7af168-9a20-40a3-8744-b2f1c10c0227/3d6d8d16545d6c05125c51ef8142296f/dotnet-sdk-8.0.300-osx-arm64.tar.gz";
+        sha512  = "98a9b56b2795bf6faa848062ed34d917b187eda220db50c8e73de1bfa37244dd68d8c3cbc598b5fc5be4620a2b92724f95d7c13299f8b873fdefe880890a1bbb";
+      };
+    };
+    inherit packages;
+  };
+
   sdk_8_0_2xx = buildNetSdk {
-    version = "8.0.204";
+    version = "8.0.205";
     srcs = {
       x86_64-linux = {
-        url     = "https://download.visualstudio.microsoft.com/download/pr/0a1b3cbd-b4af-4d0d-9ed7-0054f0e200b4/4bcc533c66379caaa91770236667aacb/dotnet-sdk-8.0.204-linux-x64.tar.gz";
-        sha512  = "b45d3e3bc039d50764bfbe393b26cc929d93b22d69da74af6d35d4038ebcbc2f8410b047cdd0425c954d245e2594755c9f293c09f1ded3c97d33aebfaf878b5f";
+        url     = "https://download.visualstudio.microsoft.com/download/pr/7cdbcd68-c4e8-4212-b4a2-f30ae2ffdb19/48a359550fd7eab1f03ea18eb2689eb3/dotnet-sdk-8.0.205-linux-x64.tar.gz";
+        sha512  = "2ec774350ca3192e1c68c9c8ee62d0c089f9bd03fe1aaebb118fbe7625f2e0960f5dbd800ea3f974cc7ac7fba32830f41faec9ee1bae736497ba05d9c7addb59";
       };
       aarch64-linux = {
-        url     = "https://download.visualstudio.microsoft.com/download/pr/1e449990-2934-47ee-97fb-b78f0e587c98/1c92c33593932f7a86efa5aff18960ed/dotnet-sdk-8.0.204-linux-arm64.tar.gz";
-        sha512  = "7000b559efe502e9a799e9fccb6bccc2e39eb21331d6cb2be54f389e357436b84f5ccbcc73245df647749ee32d27f7fb8b7737d449312f0db7dd3409f8e12443";
+        url     = "https://download.visualstudio.microsoft.com/download/pr/96b5cb76-37e3-4514-a8c5-bb4834e275d3/b541205fa6efc3bd223b3201dcb7735c/dotnet-sdk-8.0.205-linux-arm64.tar.gz";
+        sha512  = "092ce55cc45ab5109c9d991382e7ed7f40bc0281e94766738dbf179d618f03dbf8ba38e43c418a3d5cac0377afc5e5b82a969e36832e386b851f3679a2e988e3";
       };
       x86_64-darwin = {
-        url     = "https://download.visualstudio.microsoft.com/download/pr/9548c95b-8495-4b69-b6f0-1fdebdbbf9ff/30827786409718c5a9604711661da3b5/dotnet-sdk-8.0.204-osx-x64.tar.gz";
-        sha512  = "a49c3dc8f364dcf2f88353b80267062b557ef4afff333fa4494e84d01234d38c57619aaf7a3e2cacfb16d066ab1523b6e5953cf864e5e8f411dd38855408bb5d";
+        url     = "https://download.visualstudio.microsoft.com/download/pr/0dcb3b2f-6bbe-4dc0-a42a-283826d8b9ce/16767a67d602bd267122a26f4c4c2935/dotnet-sdk-8.0.205-osx-x64.tar.gz";
+        sha512  = "15f410ae81027f4537a03a00114873fe9bacf799d5ddc24663fefc3b1d977d237269fef48c80334bcaf7230495f304bb123f310692f880fea8cb8e0072abb4a3";
       };
       aarch64-darwin = {
-        url     = "https://download.visualstudio.microsoft.com/download/pr/8746698c-596d-406e-b672-49a53d77eea7/74c28673e54213d058eec2c9151714cc/dotnet-sdk-8.0.204-osx-arm64.tar.gz";
-        sha512  = "db06baa1d076549e393a9a402c03e81834e15641d2b5fdbd5beb7c4a55b5ed979f5e58ac6baa2048bc55a3a7b3aabe0e3c518310c66a17ecd107b7bf0aaaf2b0";
+        url     = "https://download.visualstudio.microsoft.com/download/pr/c8126855-4f38-4d01-8e22-b7f93452a9d7/725dda9ebd1ae3486febf496217ba0b9/dotnet-sdk-8.0.205-osx-arm64.tar.gz";
+        sha512  = "2792e9b0cd4fd69373022c5e4c17bd128dd8e31db773f51b39c8696f37e72af8c4b67d0c017ee068587c0f664efa8bbd9a0bc4472b072a7897d2ff4ef8fafa58";
       };
     };
     inherit packages;
   };
 
   sdk_8_0_1xx = buildNetSdk {
-    version = "8.0.104";
+    version = "8.0.105";
     srcs = {
       x86_64-linux = {
-        url     = "https://download.visualstudio.microsoft.com/download/pr/fd4a16ac-5322-4308-b6b0-afa1821e63f6/0abd2e63358335f2235d22fd84b32a60/dotnet-sdk-8.0.104-linux-x64.tar.gz";
-        sha512  = "cb7b5e509c16a7e27ccfc03b3a217460b9eac151ca973f262f82d4b4a494f7bdff3229e9aee91df1c110582ee8dd3d310dad39528c3bd292c5d9b7746ba3b6fd";
+        url     = "https://download.visualstudio.microsoft.com/download/pr/e898e5ae-041a-4e64-95c7-751479f40df5/9e36a84d3e1283e1932d7f82f6980cd8/dotnet-sdk-8.0.105-linux-x64.tar.gz";
+        sha512  = "60ff271ee7851ff9ab851f9dc3e3d0abc87ac9b982959abfc8f0a3b58301fb6a0ff7b9f07f8df18668e1e8182c688d0d661bb9cb1771a2d40a0015d02009fce8";
       };
       aarch64-linux = {
-        url     = "https://download.visualstudio.microsoft.com/download/pr/92652bc8-b312-4f77-ad95-cbbcbc9330ed/549869e13f1bf66b0b089b4e976e96ea/dotnet-sdk-8.0.104-linux-arm64.tar.gz";
-        sha512  = "71f5fb65c88bfd14ebc13c5eec04d08b4f7461d1b9f3f5f08c31351a377e08cd002072a4487bfc2496ac7b4d5ba83c97eb979a5732de394c1a02a4528877002f";
+        url     = "https://download.visualstudio.microsoft.com/download/pr/ffadc6b9-6f16-4671-866d-4c150f2888d1/256d5909ff60dae42cbd251347cc14df/dotnet-sdk-8.0.105-linux-arm64.tar.gz";
+        sha512  = "8f04afa385676d2ec879ad22734a4c869d931ba4bc7507d0aa5889561d0230e382598057bdf75792048b28bd9a1c8eb187e80691f603309a46d6c50d71373381";
       };
       x86_64-darwin = {
-        url     = "https://download.visualstudio.microsoft.com/download/pr/5f790cbf-88b3-4619-b083-178e1eb6c16f/ab21721125a05ec751b22d689e19a353/dotnet-sdk-8.0.104-osx-x64.tar.gz";
-        sha512  = "b451731c7fe151316df57d1e6a23129732ebc0dc3dd53479421b881652bd042d5fb9890c2c8e229fc578b3b05542a8e08986955154e590d8c1e274c5821a5666";
+        url     = "https://download.visualstudio.microsoft.com/download/pr/54b48c6e-1a50-4dd5-9592-8ae5dfbe9d2f/913341d866eaf3149a6158cabf9ce2ad/dotnet-sdk-8.0.105-osx-x64.tar.gz";
+        sha512  = "052fd0783bd0901876a29b57a0f15e9f9cf859373bf4f3867a8f3e00b4edac5f3814b066be81c76d6bc74a20bd696e4ec65db48dc19703bbb4ee56d60aedd96d";
       };
       aarch64-darwin = {
-        url     = "https://download.visualstudio.microsoft.com/download/pr/73d8ccae-9bcf-42e4-9a57-b6a4480eea2b/52e136f08e967c6ea9617be542921286/dotnet-sdk-8.0.104-osx-arm64.tar.gz";
-        sha512  = "376fda994997e3ebbf15cafbc910ff25a71debd2d31d088cf7947f813ff013568f3f47514ec53d2c02a3e3f8432a5ca9344dab3ee07cc0df650761a3dbc6be68";
+        url     = "https://download.visualstudio.microsoft.com/download/pr/8d741dd4-ab83-4bd8-8667-998cc1c6d345/c7ac6cf87561262db36b18e505150e89/dotnet-sdk-8.0.105-osx-arm64.tar.gz";
+        sha512  = "f910adb274065fef581728e7d043bc3f0c105a939f659865753c11a0dd0b550bdc4c0bc01e2ce6f710efcdebb3966ef138986113f595af4d6a9be8b15008abc6";
       };
     };
     inherit packages;
   };
 
-  sdk_8_0 = sdk_8_0_2xx;
+  sdk_8_0 = sdk_8_0_3xx;
 }
diff --git a/pkgs/development/compilers/dtc/default.nix b/pkgs/development/compilers/dtc/default.nix
index 60bce2f6e458..9548f8fe06f8 100644
--- a/pkgs/development/compilers/dtc/default.nix
+++ b/pkgs/development/compilers/dtc/default.nix
@@ -47,6 +47,12 @@ stdenv.mkDerivation (finalAttrs: {
       url = "https://github.com/dgibson/dtc/commit/35f26d2921b68d97fefbd5a2b6e821a2f02ff65d.patch";
       sha256 = "sha256-cO4f/jJX/pQL7kk4jpKUhsCVESW2ZuWaTr7z3BuvVkw=";
     })
+
+    (fetchpatch {
+      name = "static.patch";
+      url = "https://git.kernel.org/pub/scm/utils/dtc/dtc.git/patch/?id=3fbfdd08afd2a7a25b27433f6f5678c0fe694721";
+      hash = "sha256-skK8m1s4xkK6x9AqzxiEK+1uMEmS27dBI1CdEXNFTfU=";
+    })
   ];
 
   env.SETUPTOOLS_SCM_PRETEND_VERSION = finalAttrs.version;
diff --git a/pkgs/development/compilers/ecl/default.nix b/pkgs/development/compilers/ecl/default.nix
index 26f1ec471a59..c11f471641da 100644
--- a/pkgs/development/compilers/ecl/default.nix
+++ b/pkgs/development/compilers/ecl/default.nix
@@ -19,11 +19,11 @@
 
 stdenv.mkDerivation rec {
   pname = "ecl";
-  version = "23.9.9";
+  version = "24.5.10";
 
   src = fetchurl {
     url = "https://common-lisp.net/project/ecl/static/files/release/ecl-${version}.tgz";
-    sha256 = "107q6gmxlsya4yv38r1x1axrgyyfgdrfkkz97zfp64bcrasdl6y5";
+    hash = "sha256-5Opluxhh4OSVOGv6i8ZzvQFOltPPnZHpA4+RQ1y+Yis=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/compilers/erg/default.nix b/pkgs/development/compilers/erg/default.nix
index 9d02f1f4a996..6a8741be0581 100644
--- a/pkgs/development/compilers/erg/default.nix
+++ b/pkgs/development/compilers/erg/default.nix
@@ -9,16 +9,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "erg";
-  version = "0.6.35";
+  version = "0.6.36";
 
   src = fetchFromGitHub {
     owner = "erg-lang";
     repo = "erg";
     rev = "v${version}";
-    hash = "sha256-aDYT2bXd2OcRRgYd6ycjeLPQ1LuRxejivhEFkiqZoGw=";
+    hash = "sha256-fwuAlIUPEzc2ZjKJ+4gdzXM679MAAJpg9Mh0d7LAt5s=";
   };
 
-  cargoHash = "sha256-I5g+Nqdr/UYS/+F9sGelOSnb2vnT5vHc0/VeRASBsQY=";
+  cargoHash = "sha256-MfetCaYK5bBsV6EszNkwqlBFMykmLW7jX4gZWuIbHek=";
 
   nativeBuildInputs = [
     makeWrapper
diff --git a/pkgs/development/compilers/flix/default.nix b/pkgs/development/compilers/flix/default.nix
index 926c98d68043..3499b7390f69 100644
--- a/pkgs/development/compilers/flix/default.nix
+++ b/pkgs/development/compilers/flix/default.nix
@@ -2,11 +2,11 @@
 
 stdenvNoCC.mkDerivation rec {
   pname = "flix";
-  version = "0.46.0";
+  version = "0.47.0";
 
   src = fetchurl {
     url = "https://github.com/flix/flix/releases/download/v${version}/flix.jar";
-    sha256 = "sha256-jj8h30QsIF5HlunrqUktHY6bCUq9gMNVlAVsAH0F0U0=";
+    sha256 = "sha256-HlVJR8SPwhOFn3yuxJzUWSS+xascf4pGsoKCqzBDG6Y=";
   };
 
   dontUnpack = true;
diff --git a/pkgs/development/compilers/flutter/wrapper.nix b/pkgs/development/compilers/flutter/wrapper.nix
index 4a7aedf97d38..f5b8b2e2059d 100644
--- a/pkgs/development/compilers/flutter/wrapper.nix
+++ b/pkgs/development/compilers/flutter/wrapper.nix
@@ -20,7 +20,7 @@
 , makeWrapper
 , runCommandLocal
 , writeShellScript
-, wrapGAppsHook
+, wrapGAppsHook3
 , git
 , which
 , pkg-config
@@ -123,7 +123,7 @@ in
 
   nativeBuildInputs = [ makeWrapper ]
     ++ lib.optionals stdenv.hostPlatform.isDarwin [ darwin.DarwinTools ]
-    ++ lib.optionals supportsLinuxDesktopTarget [ glib wrapGAppsHook ];
+    ++ lib.optionals supportsLinuxDesktopTarget [ glib wrapGAppsHook3 ];
 
   passthru = flutter.passthru // {
     inherit (flutter) version;
diff --git a/pkgs/development/compilers/gcc/common/pre-configure.nix b/pkgs/development/compilers/gcc/common/pre-configure.nix
index 77179d739768..75f59163bdac 100644
--- a/pkgs/development/compilers/gcc/common/pre-configure.nix
+++ b/pkgs/development/compilers/gcc/common/pre-configure.nix
@@ -38,31 +38,6 @@ in lib.optionalString (hostPlatform.isSunOS && hostPlatform.is64bit) ''
   export GFORTRAN_FOR_TARGET=${pkgsBuildTarget.gfortran}/bin/${stdenv.targetPlatform.config}-gfortran
 ''
 
-# On x86_64-darwin, the gnat-bootstrap bootstrap compiler that we need to build a
-# native GCC with Ada support emits assembly that is accepted by the Clang
-# integrated assembler, but not by the GNU assembler in cctools-port that Nix
-# usually in the x86_64-darwin stdenv.  In particular, x86_64-darwin gnat-bootstrap
-# emits MOVQ as the mnemonic for quadword interunit moves, such as between XMM
-# and general registers (e.g "movq %xmm0, %rbp"); the cctools-port assembler,
-# however, only recognises MOVD for such moves.
-#
-# Therefore, for native x86_64-darwin builds that support Ada, we have to use
-# the Clang integrated assembler to build (at least stage 1 of) GCC, but have to
-# target GCC at the cctools-port GNU assembler.  In the wrapped x86_64-darwin
-# gnat-bootstrap, the former is provided as `as`, while the latter is provided as
-# `gas`.
-#
-+ lib.optionalString (
-    langAda
-    && buildPlatform == hostPlatform
-    && hostPlatform == targetPlatform
-    && targetPlatform.isx86_64
-    && targetPlatform.isDarwin
-  ) ''
-  export AS_FOR_BUILD=${gnat-bootstrap}/bin/as
-  export AS_FOR_TARGET=${gnat-bootstrap}/bin/gas
-''
-
 # NOTE 2020/3/18: This environment variable prevents configure scripts from
 # detecting the presence of aligned_alloc on Darwin.  There are many facts that
 # collectively make this fix necessary:
diff --git a/pkgs/development/compilers/ghc/9.0.2.nix b/pkgs/development/compilers/ghc/9.0.2.nix
index 175d1fe2450b..987821830504 100644
--- a/pkgs/development/compilers/ghc/9.0.2.nix
+++ b/pkgs/development/compilers/ghc/9.0.2.nix
@@ -1,393 +1,4 @@
-{ lib, stdenv, pkgsBuildTarget, pkgsHostTarget, targetPackages
-
-# build-tools
-, bootPkgs
-, autoconf, automake, coreutils, fetchurl, perl, python3, m4, sphinx, xattr
-, autoSignDarwinBinariesHook
-, bash
-, fetchpatch
-
-, 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)
-, # LLVM is conceptually a run-time-only dependency, 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
-                         && lib.meta.availableOn stdenv.targetPlatform gmp)
-, gmp
-
-, # If enabled, use -fPIC when compiling static libs.
-  enableRelocatedStaticLibs ? stdenv.targetPlatform != stdenv.hostPlatform
-
-, enableProfiledLibs ? true
-
-, # 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 if we are building on musl because it's a large task to keep
-    # all `sphinx` dependencies building in this environment.
-    !stdenv.buildPlatform.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) ''
-    BUILD_PROF_LIBS = NO
-  '' +
-  # -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 {
+import ./common-make-native-bignum.nix {
   version = "9.0.2";
-  pname = "${targetPrefix}ghc${variantSuffix}";
-
-  src = fetchurl {
-    url = "https://downloads.haskell.org/ghc/${version}/ghc-${version}-src.tar.xz";
-    sha256 = "140e42b96346322d1a39eb17602bcdc76e292028ad4a69286b230bab188a9197";
-  };
-
-  enableParallelBuilding = true;
-
-  outputs = [ "out" "doc" ];
-
-  patches = [
-    # Fix docs build with sphinx >= 6.0
-    # https://gitlab.haskell.org/ghc/ghc/-/issues/22766
-    (fetchpatch {
-      name = "ghc-docs-sphinx-6.0.patch";
-      url = "https://gitlab.haskell.org/ghc/ghc/-/commit/10e94a556b4f90769b7fd718b9790d58ae566600.patch";
-      sha256 = "0kmhfamr16w8gch0lgln2912r8aryjky1hfcda3jkcwa5cdzgjdv";
-    })
-    # Fix docs build with Sphinx >= 7 https://gitlab.haskell.org/ghc/ghc/-/issues/24129
-    ./docs-sphinx-7.patch
-    # 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;
-    })
-
-    # Add flag that fixes C++ exception handling; opt-in. Merged in 9.4 and 9.2.2.
-    # https://gitlab.haskell.org/ghc/ghc/-/merge_requests/7423
-    (fetchpatch {
-      name = "ghc-9.0.2-fcompact-unwind.patch";
-      # Note that the test suite is not packaged.
-      url = "https://gitlab.haskell.org/ghc/ghc/-/commit/c6132c782d974a7701e7f6447bdcd2bf6db4299a.patch?merge_request_iid=7423";
-      sha256 = "sha256-b4feGZIaKDj/UKjWTNY6/jH4s2iate0wAgMxG3rAbZI=";
-    })
-  ] ++ lib.optionals (stdenv.targetPlatform.isDarwin && stdenv.targetPlatform.isAarch64) [
-    # Prevent the paths module from emitting symbols that we don't use
-    # when building with separate outputs.
-    #
-    # These cause problems as they're not eliminated by GHC's dead code
-    # elimination on aarch64-darwin. (see
-    # https://github.com/NixOS/nixpkgs/issues/140774 for details).
-    ./Cabal-3.2-3.4-paths-fix-cycle-aarch64-darwin.patch
-  ];
-
-  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
-    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"
-  '' + 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
-  ] ++ lib.optionals stdenv.isDarwin [
-    # TODO(@sternenseemann): backport addition of XATTR env var like
-    # https://gitlab.haskell.org/ghc/ghc/-/merge_requests/6447
-    xattr
-  ];
-
-  # 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;
-})
+  sha256 = "140e42b96346322d1a39eb17602bcdc76e292028ad4a69286b230bab188a9197";
+}
diff --git a/pkgs/development/compilers/ghc/9.10.1.nix b/pkgs/development/compilers/ghc/9.10.1.nix
new file mode 100644
index 000000000000..7955661f50e1
--- /dev/null
+++ b/pkgs/development/compilers/ghc/9.10.1.nix
@@ -0,0 +1,4 @@
+import ./common-hadrian.nix rec {
+  version = "9.10.1";
+  sha256 = "bf386a302d4ee054791ffd51748900f15d71760fd199157922d120cc1f89e2f7";
+}
diff --git a/pkgs/development/compilers/ghc/9.2.5.nix b/pkgs/development/compilers/ghc/9.2.5.nix
index 6c86e05ebbd4..366b25441bbb 100644
--- a/pkgs/development/compilers/ghc/9.2.5.nix
+++ b/pkgs/development/compilers/ghc/9.2.5.nix
@@ -1,389 +1,4 @@
-{ 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)
-, # LLVM is conceptually a run-time-only dependency, 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
-                         && lib.meta.availableOn stdenv.targetPlatform gmp)
-, gmp
-
-, # If enabled, use -fPIC when compiling static libs.
-  enableRelocatedStaticLibs ? stdenv.targetPlatform != stdenv.hostPlatform
-
-, enableProfiledLibs ? true
-
-, # 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 if we are building on musl because it's a large task to keep
-    # all `sphinx` dependencies building in this environment.
-    !stdenv.buildPlatform.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) ''
-    BUILD_PROF_LIBS = NO
-  '' +
-  # -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 {
+import ./common-make-native-bignum.nix {
   version = "9.2.5";
-  pname = "${targetPrefix}ghc${variantSuffix}";
-
-  src = fetchurl {
-    url = "https://downloads.haskell.org/ghc/${version}/ghc-${version}-src.tar.xz";
-    sha256 = "0606797d1b38e2d88ee2243f38ec6b9a1aa93e9b578e95f0de9a9c0a4144021c";
-  };
-
-  enableParallelBuilding = true;
-
-  outputs = [ "out" "doc" ];
-
-  patches = [
-    # Fix docs build with sphinx >= 6.0
-    # https://gitlab.haskell.org/ghc/ghc/-/issues/22766
-    (fetchpatch {
-      name = "ghc-docs-sphinx-6.0.patch";
-      url = "https://gitlab.haskell.org/ghc/ghc/-/commit/10e94a556b4f90769b7fd718b9790d58ae566600.patch";
-      sha256 = "0kmhfamr16w8gch0lgln2912r8aryjky1hfcda3jkcwa5cdzgjdv";
-    })
-    # Fix docs build with Sphinx >= 7 https://gitlab.haskell.org/ghc/ghc/-/issues/24129
-    ./docs-sphinx-7.patch
-    # 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;
-    })
-    # Don't generate code that doesn't compile when --enable-relocatable is passed to Setup.hs
-    # Can be removed if the Cabal library included with ghc backports the linked fix
-    (fetchpatch {
-      url = "https://github.com/haskell/cabal/commit/6c796218c92f93c95e94d5ec2d077f6956f68e98.patch";
-      stripLen = 1;
-      extraPrefix = "libraries/Cabal/";
-      sha256 = "sha256-yRQ6YmMiwBwiYseC5BsrEtDgFbWvst+maGgDtdD0vAY=";
-    })
-  ] ++ lib.optionals (stdenv.targetPlatform.isDarwin && stdenv.targetPlatform.isAarch64) [
-    # Prevent the paths module from emitting symbols that we don't use
-    # when building with separate outputs.
-    #
-    # These cause problems as they're not eliminated by GHC's dead code
-    # elimination on aarch64-darwin. (see
-    # https://github.com/NixOS/nixpkgs/issues/140774 for details).
-    ./Cabal-at-least-3.6-paths-fix-cycle-aarch64-darwin.patch
-  ];
-
-  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
-  '' + 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;
-})
+  sha256 = "0606797d1b38e2d88ee2243f38ec6b9a1aa93e9b578e95f0de9a9c0a4144021c";
+}
diff --git a/pkgs/development/compilers/ghc/9.2.6.nix b/pkgs/development/compilers/ghc/9.2.6.nix
index 6ff58f087f8a..4490cd6f5b31 100644
--- a/pkgs/development/compilers/ghc/9.2.6.nix
+++ b/pkgs/development/compilers/ghc/9.2.6.nix
@@ -1,389 +1,4 @@
-{ 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)
-, # LLVM is conceptually a run-time-only dependency, 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
-                         && lib.meta.availableOn stdenv.targetPlatform gmp)
-, gmp
-
-, # If enabled, use -fPIC when compiling static libs.
-  enableRelocatedStaticLibs ? stdenv.targetPlatform != stdenv.hostPlatform
-
-, enableProfiledLibs ? true
-
-, # 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 if we are building on musl because it's a large task to keep
-    # all `sphinx` dependencies building in this environment.
-    !stdenv.buildPlatform.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) ''
-    BUILD_PROF_LIBS = NO
-  '' +
-  # -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 {
+import ./common-make-native-bignum.nix {
   version = "9.2.6";
-  pname = "${targetPrefix}ghc${variantSuffix}";
-
-  src = fetchurl {
-    url = "https://downloads.haskell.org/ghc/${version}/ghc-${version}-src.tar.xz";
-    sha256 = "7a54cf0398ad488b4ed219e15d1d1e64c0b6876c43a0564550dd11f0540d7305";
-  };
-
-  enableParallelBuilding = true;
-
-  outputs = [ "out" "doc" ];
-
-  patches = [
-    # Fix docs build with sphinx >= 6.0
-    # https://gitlab.haskell.org/ghc/ghc/-/issues/22766
-    (fetchpatch {
-      name = "ghc-docs-sphinx-6.0.patch";
-      url = "https://gitlab.haskell.org/ghc/ghc/-/commit/10e94a556b4f90769b7fd718b9790d58ae566600.patch";
-      sha256 = "0kmhfamr16w8gch0lgln2912r8aryjky1hfcda3jkcwa5cdzgjdv";
-    })
-    # Fix docs build with Sphinx >= 7 https://gitlab.haskell.org/ghc/ghc/-/issues/24129
-    ./docs-sphinx-7.patch
-    # 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;
-    })
-    # Don't generate code that doesn't compile when --enable-relocatable is passed to Setup.hs
-    # Can be removed if the Cabal library included with ghc backports the linked fix
-    (fetchpatch {
-      url = "https://github.com/haskell/cabal/commit/6c796218c92f93c95e94d5ec2d077f6956f68e98.patch";
-      stripLen = 1;
-      extraPrefix = "libraries/Cabal/";
-      sha256 = "sha256-yRQ6YmMiwBwiYseC5BsrEtDgFbWvst+maGgDtdD0vAY=";
-    })
-  ] ++ lib.optionals (stdenv.targetPlatform.isDarwin && stdenv.targetPlatform.isAarch64) [
-    # Prevent the paths module from emitting symbols that we don't use
-    # when building with separate outputs.
-    #
-    # These cause problems as they're not eliminated by GHC's dead code
-    # elimination on aarch64-darwin. (see
-    # https://github.com/NixOS/nixpkgs/issues/140774 for details).
-    ./Cabal-at-least-3.6-paths-fix-cycle-aarch64-darwin.patch
-  ];
-
-  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
-  '' + 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;
-})
+  sha256 = "7a54cf0398ad488b4ed219e15d1d1e64c0b6876c43a0564550dd11f0540d7305";
+}
diff --git a/pkgs/development/compilers/ghc/9.2.7.nix b/pkgs/development/compilers/ghc/9.2.7.nix
index f605bfda1981..ad840dd0a32f 100644
--- a/pkgs/development/compilers/ghc/9.2.7.nix
+++ b/pkgs/development/compilers/ghc/9.2.7.nix
@@ -1,389 +1,4 @@
-{ 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)
-, # LLVM is conceptually a run-time-only dependency, 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
-                         && lib.meta.availableOn stdenv.targetPlatform gmp)
-, gmp
-
-, # If enabled, use -fPIC when compiling static libs.
-  enableRelocatedStaticLibs ? stdenv.targetPlatform != stdenv.hostPlatform
-
-, enableProfiledLibs ? true
-
-, # 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 if we are building on musl because it's a large task to keep
-    # all `sphinx` dependencies building in this environment.
-    !stdenv.buildPlatform.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) ''
-    BUILD_PROF_LIBS = NO
-  '' +
-  # -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 {
+import ./common-make-native-bignum.nix {
   version = "9.2.7";
-  pname = "${targetPrefix}ghc${variantSuffix}";
-
-  src = fetchurl {
-    url = "https://downloads.haskell.org/ghc/${version}/ghc-${version}-src.tar.xz";
-    sha256 = "a253567a17b734a4c0dd0ffa296d33c2a5b5a54a77df988806a2a1e1ca7e88b8";
-  };
-
-  enableParallelBuilding = true;
-
-  outputs = [ "out" "doc" ];
-
-  patches = [
-    # Fix docs build with sphinx >= 6.0
-    # https://gitlab.haskell.org/ghc/ghc/-/issues/22766
-    (fetchpatch {
-      name = "ghc-docs-sphinx-6.0.patch";
-      url = "https://gitlab.haskell.org/ghc/ghc/-/commit/10e94a556b4f90769b7fd718b9790d58ae566600.patch";
-      sha256 = "0kmhfamr16w8gch0lgln2912r8aryjky1hfcda3jkcwa5cdzgjdv";
-    })
-    # Fix docs build with Sphinx >= 7 https://gitlab.haskell.org/ghc/ghc/-/issues/24129
-    ./docs-sphinx-7.patch
-    # 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;
-    })
-    # Don't generate code that doesn't compile when --enable-relocatable is passed to Setup.hs
-    # Can be removed if the Cabal library included with ghc backports the linked fix
-    (fetchpatch {
-      url = "https://github.com/haskell/cabal/commit/6c796218c92f93c95e94d5ec2d077f6956f68e98.patch";
-      stripLen = 1;
-      extraPrefix = "libraries/Cabal/";
-      sha256 = "sha256-yRQ6YmMiwBwiYseC5BsrEtDgFbWvst+maGgDtdD0vAY=";
-    })
-  ] ++ lib.optionals (stdenv.targetPlatform.isDarwin && stdenv.targetPlatform.isAarch64) [
-    # Prevent the paths module from emitting symbols that we don't use
-    # when building with separate outputs.
-    #
-    # These cause problems as they're not eliminated by GHC's dead code
-    # elimination on aarch64-darwin. (see
-    # https://github.com/NixOS/nixpkgs/issues/140774 for details).
-    ./Cabal-at-least-3.6-paths-fix-cycle-aarch64-darwin.patch
-  ];
-
-  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
-  '' + 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;
-})
+  sha256 = "a253567a17b734a4c0dd0ffa296d33c2a5b5a54a77df988806a2a1e1ca7e88b8";
+}
diff --git a/pkgs/development/compilers/ghc/9.2.8.nix b/pkgs/development/compilers/ghc/9.2.8.nix
index 72cfdd242f42..dc2bd89b3174 100644
--- a/pkgs/development/compilers/ghc/9.2.8.nix
+++ b/pkgs/development/compilers/ghc/9.2.8.nix
@@ -1,389 +1,4 @@
-{ 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)
-, # LLVM is conceptually a run-time-only dependency, 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
-                         && lib.meta.availableOn stdenv.targetPlatform gmp)
-, gmp
-
-, # If enabled, use -fPIC when compiling static libs.
-  enableRelocatedStaticLibs ? stdenv.targetPlatform != stdenv.hostPlatform
-
-, enableProfiledLibs ? true
-
-, # 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 if we are building on musl because it's a large task to keep
-    # all `sphinx` dependencies building in this environment.
-    !stdenv.buildPlatform.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) ''
-    BUILD_PROF_LIBS = NO
-  '' +
-  # -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 {
+import ./common-make-native-bignum.nix {
   version = "9.2.8";
-  pname = "${targetPrefix}ghc${variantSuffix}";
-
-  src = fetchurl {
-    url = "https://downloads.haskell.org/ghc/${version}/ghc-${version}-src.tar.xz";
-    sha256 = "sha256-XxPReGv0/RL0tF+qN6vttbs/NtXlj32lMH6L/oilZ6E=";
-  };
-
-  enableParallelBuilding = true;
-
-  outputs = [ "out" "doc" ];
-
-  patches = [
-    # Fix docs build with sphinx >= 6.0
-    # https://gitlab.haskell.org/ghc/ghc/-/issues/22766
-    (fetchpatch {
-      name = "ghc-docs-sphinx-6.0.patch";
-      url = "https://gitlab.haskell.org/ghc/ghc/-/commit/10e94a556b4f90769b7fd718b9790d58ae566600.patch";
-      sha256 = "0kmhfamr16w8gch0lgln2912r8aryjky1hfcda3jkcwa5cdzgjdv";
-    })
-    # Fix docs build with Sphinx >= 7 https://gitlab.haskell.org/ghc/ghc/-/issues/24129
-    ./docs-sphinx-7.patch
-    # 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;
-    })
-    # Don't generate code that doesn't compile when --enable-relocatable is passed to Setup.hs
-    # Can be removed if the Cabal library included with ghc backports the linked fix
-    (fetchpatch {
-      url = "https://github.com/haskell/cabal/commit/6c796218c92f93c95e94d5ec2d077f6956f68e98.patch";
-      stripLen = 1;
-      extraPrefix = "libraries/Cabal/";
-      sha256 = "sha256-yRQ6YmMiwBwiYseC5BsrEtDgFbWvst+maGgDtdD0vAY=";
-    })
-  ] ++ lib.optionals (stdenv.targetPlatform.isDarwin && stdenv.targetPlatform.isAarch64) [
-    # Prevent the paths module from emitting symbols that we don't use
-    # when building with separate outputs.
-    #
-    # These cause problems as they're not eliminated by GHC's dead code
-    # elimination on aarch64-darwin. (see
-    # https://github.com/NixOS/nixpkgs/issues/140774 for details).
-    ./Cabal-at-least-3.6-paths-fix-cycle-aarch64-darwin.patch
-  ];
-
-  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
-  '' + 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;
-})
+  sha256 = "sha256-XxPReGv0/RL0tF+qN6vttbs/NtXlj32lMH6L/oilZ6E=";
+}
diff --git a/pkgs/development/compilers/ghc/9.4.5.nix b/pkgs/development/compilers/ghc/9.4.5.nix
index 298af6596e71..cffbfef1524e 100644
--- a/pkgs/development/compilers/ghc/9.4.5.nix
+++ b/pkgs/development/compilers/ghc/9.4.5.nix
@@ -1,396 +1,6 @@
 # DO NOT port this expression to hadrian. It is not possible to build a GHC
 # cross compiler with 9.4.* and hadrian.
-{ 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)
-, # LLVM is conceptually a run-time-only dependency, 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
-                         && lib.meta.availableOn stdenv.targetPlatform gmp)
-, gmp
-
-, # If enabled, use -fPIC when compiling static libs.
-  enableRelocatedStaticLibs ? stdenv.targetPlatform != stdenv.hostPlatform
-
-, enableProfiledLibs ? true
-
-, # 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 if we are building on musl because it's a large task to keep
-    # all `sphinx` dependencies building in this environment.
-    !stdenv.buildPlatform.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) ''
-    BUILD_PROF_LIBS = NO
-  '' +
-  # -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 {
+import ./common-make-native-bignum.nix {
   version = "9.4.5";
-  pname = "${targetPrefix}ghc${variantSuffix}";
-
-  src = fetchurl {
-    url = "https://downloads.haskell.org/ghc/${version}/ghc-${version}-src.tar.xz";
-    sha256 = "6256cf9caf6d6dc7b611dcfbb247df2d528e85aa39d22a698e870e5a590e8601";
-  };
-
-  enableParallelBuilding = true;
-
-  outputs = [ "out" "doc" ];
-
-  patches = [
-    # Don't generate code that doesn't compile when --enable-relocatable is passed to Setup.hs
-    # Can be removed if the Cabal library included with ghc backports the linked fix
-    (fetchpatch {
-      url = "https://github.com/haskell/cabal/commit/6c796218c92f93c95e94d5ec2d077f6956f68e98.patch";
-      stripLen = 1;
-      extraPrefix = "libraries/Cabal/";
-      sha256 = "sha256-yRQ6YmMiwBwiYseC5BsrEtDgFbWvst+maGgDtdD0vAY=";
-    })
-
-    # Fix docs build with sphinx >= 6.0
-    # https://gitlab.haskell.org/ghc/ghc/-/issues/22766
-    (fetchpatch {
-      name = "ghc-docs-sphinx-6.0.patch";
-      url = "https://gitlab.haskell.org/ghc/ghc/-/commit/10e94a556b4f90769b7fd718b9790d58ae566600.patch";
-      sha256 = "0kmhfamr16w8gch0lgln2912r8aryjky1hfcda3jkcwa5cdzgjdv";
-    })
-
-    # Fix docs build with Sphinx >= 7 https://gitlab.haskell.org/ghc/ghc/-/issues/24129
-    ./docs-sphinx-7.patch
-  ] ++ lib.optionals (stdenv.targetPlatform.isDarwin && stdenv.targetPlatform.isAarch64) [
-    # Prevent the paths module from emitting symbols that we don't use
-    # when building with separate outputs.
-    #
-    # These cause problems as they're not eliminated by GHC's dead code
-    # elimination on aarch64-darwin. (see
-    # https://github.com/NixOS/nixpkgs/issues/140774 for details).
-    ./Cabal-at-least-3.6-paths-fix-cycle-aarch64-darwin.patch
-  ];
-
-  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
-
-    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
-  ''
-  # HACK: allow bootstrapping with GHC 8.10 which works fine, as we don't have
-  # binary 9.0 packaged. Bootstrapping with 9.2 is broken without hadrian.
-  + ''
-    substituteInPlace configure --replace \
-      'MinBootGhcVersion="9.0"' \
-      'MinBootGhcVersion="8.10"'
-  '';
-
-  # 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;
-})
+  sha256 = "6256cf9caf6d6dc7b611dcfbb247df2d528e85aa39d22a698e870e5a590e8601";
+}
diff --git a/pkgs/development/compilers/ghc/9.4.6.nix b/pkgs/development/compilers/ghc/9.4.6.nix
index 310787e477b2..0d37ba97fdb6 100644
--- a/pkgs/development/compilers/ghc/9.4.6.nix
+++ b/pkgs/development/compilers/ghc/9.4.6.nix
@@ -1,392 +1,6 @@
 # DO NOT port this expression to hadrian. It is not possible to build a GHC
 # cross compiler with 9.4.* and hadrian.
-{ 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)
-, # LLVM is conceptually a run-time-only dependency, 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
-                         && lib.meta.availableOn stdenv.targetPlatform gmp)
-, gmp
-
-, # If enabled, use -fPIC when compiling static libs.
-  enableRelocatedStaticLibs ? stdenv.targetPlatform != stdenv.hostPlatform
-
-, enableProfiledLibs ? true
-
-, # 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 if we are building on musl because it's a large task to keep
-    # all `sphinx` dependencies building in this environment.
-    !stdenv.buildPlatform.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) ''
-    BUILD_PROF_LIBS = NO
-  '' +
-  # -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 {
+import ./common-make-native-bignum.nix {
   version = "9.4.6";
-  pname = "${targetPrefix}ghc${variantSuffix}";
-
-  src = fetchurl {
-    url = "https://downloads.haskell.org/ghc/${version}/ghc-${version}-src.tar.xz";
-    sha256 = "1b705cf52692f9d4d6707cdf8e761590f5f56ec8ea6a65e36610db392d3d24b9";
-  };
-
-  enableParallelBuilding = true;
-
-  outputs = [ "out" "doc" ];
-
-  patches = [
-    # Don't generate code that doesn't compile when --enable-relocatable is passed to Setup.hs
-    # Can be removed if the Cabal library included with ghc backports the linked fix
-    (fetchpatch {
-      url = "https://github.com/haskell/cabal/commit/6c796218c92f93c95e94d5ec2d077f6956f68e98.patch";
-      stripLen = 1;
-      extraPrefix = "libraries/Cabal/";
-      sha256 = "sha256-yRQ6YmMiwBwiYseC5BsrEtDgFbWvst+maGgDtdD0vAY=";
-    })
-
-    # Fix docs build with Sphinx >= 7 https://gitlab.haskell.org/ghc/ghc/-/issues/24129
-    ./docs-sphinx-7.patch
-
-    # Work around a type not being defined when including Rts.h in bytestring's cbits
-    # due to missing feature macros. See https://gitlab.haskell.org/ghc/ghc/-/issues/23810.
-    ./9.4.6-bytestring-posix-source.patch
-  ] ++ lib.optionals (stdenv.targetPlatform.isDarwin && stdenv.targetPlatform.isAarch64) [
-    # Prevent the paths module from emitting symbols that we don't use
-    # when building with separate outputs.
-    #
-    # These cause problems as they're not eliminated by GHC's dead code
-    # elimination on aarch64-darwin. (see
-    # https://github.com/NixOS/nixpkgs/issues/140774 for details).
-    ./Cabal-at-least-3.6-paths-fix-cycle-aarch64-darwin.patch
-  ];
-
-  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
-
-    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
-  ''
-  # HACK: allow bootstrapping with GHC 8.10 which works fine, as we don't have
-  # binary 9.0 packaged. Bootstrapping with 9.2 is broken without hadrian.
-  + ''
-    substituteInPlace configure --replace \
-      'MinBootGhcVersion="9.0"' \
-      'MinBootGhcVersion="8.10"'
-  '';
-
-  # 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;
-})
+  sha256 = "1b705cf52692f9d4d6707cdf8e761590f5f56ec8ea6a65e36610db392d3d24b9";
+}
diff --git a/pkgs/development/compilers/ghc/9.4.7.nix b/pkgs/development/compilers/ghc/9.4.7.nix
index e87f8fc3a907..2be8c9f092fb 100644
--- a/pkgs/development/compilers/ghc/9.4.7.nix
+++ b/pkgs/development/compilers/ghc/9.4.7.nix
@@ -1,388 +1,6 @@
 # DO NOT port this expression to hadrian. It is not possible to build a GHC
 # cross compiler with 9.4.* and hadrian.
-{ 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)
-, # LLVM is conceptually a run-time-only dependency, 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
-                         && lib.meta.availableOn stdenv.targetPlatform gmp)
-, gmp
-
-, # If enabled, use -fPIC when compiling static libs.
-  enableRelocatedStaticLibs ? stdenv.targetPlatform != stdenv.hostPlatform
-
-, enableProfiledLibs ? true
-
-, # 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 if we are building on musl because it's a large task to keep
-    # all `sphinx` dependencies building in this environment.
-    !stdenv.buildPlatform.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) ''
-    BUILD_PROF_LIBS = NO
-  '' +
-  # -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 {
+import ./common-make-native-bignum.nix {
   version = "9.4.7";
-  pname = "${targetPrefix}ghc${variantSuffix}";
-
-  src = fetchurl {
-    url = "https://downloads.haskell.org/ghc/${version}/ghc-${version}-src.tar.xz";
-    sha256 = "06775a52b4d13ac09edc6dabc299fd11e59d8886bbcae450af367baee2684c8f";
-  };
-
-  enableParallelBuilding = true;
-
-  outputs = [ "out" "doc" ];
-
-  patches = [
-    # Don't generate code that doesn't compile when --enable-relocatable is passed to Setup.hs
-    # Can be removed if the Cabal library included with ghc backports the linked fix
-    (fetchpatch {
-      url = "https://github.com/haskell/cabal/commit/6c796218c92f93c95e94d5ec2d077f6956f68e98.patch";
-      stripLen = 1;
-      extraPrefix = "libraries/Cabal/";
-      sha256 = "sha256-yRQ6YmMiwBwiYseC5BsrEtDgFbWvst+maGgDtdD0vAY=";
-    })
-
-    # Fix docs build with Sphinx >= 7 https://gitlab.haskell.org/ghc/ghc/-/issues/24129
-    ./docs-sphinx-7.patch
-  ] ++ lib.optionals (stdenv.targetPlatform.isDarwin && stdenv.targetPlatform.isAarch64) [
-    # Prevent the paths module from emitting symbols that we don't use
-    # when building with separate outputs.
-    #
-    # These cause problems as they're not eliminated by GHC's dead code
-    # elimination on aarch64-darwin. (see
-    # https://github.com/NixOS/nixpkgs/issues/140774 for details).
-    ./Cabal-at-least-3.6-paths-fix-cycle-aarch64-darwin.patch
-  ];
-
-  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
-
-    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
-  ''
-  # HACK: allow bootstrapping with GHC 8.10 which works fine, as we don't have
-  # binary 9.0 packaged. Bootstrapping with 9.2 is broken without hadrian.
-  + ''
-    substituteInPlace configure --replace \
-      'MinBootGhcVersion="9.0"' \
-      'MinBootGhcVersion="8.10"'
-  '';
-
-  # 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;
-})
+  sha256 = "06775a52b4d13ac09edc6dabc299fd11e59d8886bbcae450af367baee2684c8f";
+}
diff --git a/pkgs/development/compilers/ghc/9.4.8.fixme.nix b/pkgs/development/compilers/ghc/9.4.8.fixme.nix
new file mode 100644
index 000000000000..a98d7404b7ac
--- /dev/null
+++ b/pkgs/development/compilers/ghc/9.4.8.fixme.nix
@@ -0,0 +1,6 @@
+# DO NOT port this expression to hadrian. It is not possible to build a GHC
+# cross compiler with 9.4.* and hadrian.
+import ./common-make-native-bignum.nix {
+  version = "9.4.8";
+  sha256 = "0bf407eb67fe3e3c24b0f4c8dea8cb63e07f63ca0f76cf2058565143507ab85e";
+}
diff --git a/pkgs/development/compilers/ghc/common-hadrian.nix b/pkgs/development/compilers/ghc/common-hadrian.nix
index 522bcb10222b..5db97cc0d976 100644
--- a/pkgs/development/compilers/ghc/common-hadrian.nix
+++ b/pkgs/development/compilers/ghc/common-hadrian.nix
@@ -29,6 +29,7 @@
 , xattr
 , autoSignDarwinBinariesHook
 , bash
+, srcOnly
 
 , libiconv ? null, ncurses
 , glibcLocales ? null
@@ -145,25 +146,60 @@
         return $ verbosity >= Verbose
   ''
 
-, ghcSrc ? (if rev != null then fetchgit else fetchurl) ({
-    inherit url sha256;
-  } // lib.optionalAttrs (rev != null) {
-    inherit rev;
-  } // lib.optionalAttrs (postFetch != null) {
-    inherit postFetch;
-  })
+, ghcSrc ?
+    srcOnly {
+      name = "ghc-${version}"; # -source appended by srcOnly
+      src =
+        (if rev != null then fetchgit else fetchurl) ({
+          inherit url sha256;
+        } // lib.optionalAttrs (rev != null) {
+          inherit rev;
+        } // lib.optionalAttrs (postFetch != null) {
+          inherit postFetch;
+        });
+
+      patches =
+        let
+          # Disable haddock generating pretty source listings to stay under 3GB on aarch64-linux
+          enableHyperlinkedSource =
+            lib.versionAtLeast version "9.8" ||
+            !(stdenv.hostPlatform.isAarch64 && stdenv.hostPlatform.isLinux);
+        in
+        [
+          # Fix docs build with Sphinx >= 7 https://gitlab.haskell.org/ghc/ghc/-/issues/24129
+          (if lib.versionAtLeast version "9.8"
+           then ./docs-sphinx-7-ghc98.patch
+           else ./docs-sphinx-7.patch )
+        ]
+        ++ lib.optionals (stdenv.targetPlatform.isDarwin && stdenv.targetPlatform.isAarch64) [
+          # Prevent the paths module from emitting symbols that we don't use
+          # when building with separate outputs.
+          #
+          # These cause problems as they're not eliminated by GHC's dead code
+          # elimination on aarch64-darwin. (see
+          # https://github.com/NixOS/nixpkgs/issues/140774 for details).
+          ./Cabal-at-least-3.6-paths-fix-cycle-aarch64-darwin.patch
+        ]
+        # Prevents passing --hyperlinked-source to haddock. This is a custom
+        # workaround as we wait for this to be configurable via userSettings or
+        # similar. https://gitlab.haskell.org/ghc/ghc/-/issues/23625
+        ++ lib.optionals (!enableHyperlinkedSource) [
+          # TODO(@sternenseemann): Doesn't apply for GHC >= 9.8
+          ../../tools/haskell/hadrian/disable-hyperlinked-source.patch
+        ]
+        # Incorrect bounds on Cabal in hadrian
+        # https://gitlab.haskell.org/ghc/ghc/-/issues/24100
+        ++ lib.optionals (lib.elem version [ "9.8.1" "9.8.2" ]) [
+          ../../tools/haskell/hadrian/hadrian-9.8.1-allow-Cabal-3.10.patch
+        ];
+    }
 
   # GHC's build system hadrian built from the GHC-to-build's source tree
   # using our bootstrap GHC.
 , hadrian ? import ../../tools/haskell/hadrian/make-hadrian.nix { inherit bootPkgs lib; } {
-    ghcSrc = ghcSrc;
+    inherit ghcSrc;
     ghcVersion = version;
     userSettings = hadrianUserSettings;
-    # Disable haddock generating pretty source listings to stay under 3GB on aarch64-linux
-    enableHyperlinkedSource =
-      # TODO(@sternenseemann): Disabling currently doesn't work with GHC >= 9.8
-      lib.versionAtLeast version "9.8" ||
-      !(stdenv.hostPlatform.isAarch64 && stdenv.hostPlatform.isLinux);
   }
 
 , #  Whether to build sphinx documentation.
@@ -269,21 +305,6 @@ stdenv.mkDerivation ({
 
   enableParallelBuilding = true;
 
-  patches = [
-    # Fix docs build with Sphinx >= 7 https://gitlab.haskell.org/ghc/ghc/-/issues/24129
-    (if lib.versionAtLeast version "9.8"
-      then ./docs-sphinx-7-ghc98.patch
-      else ./docs-sphinx-7.patch )
-  ] ++ lib.optionals (stdenv.targetPlatform.isDarwin && stdenv.targetPlatform.isAarch64) [
-    # Prevent the paths module from emitting symbols that we don't use
-    # when building with separate outputs.
-    #
-    # These cause problems as they're not eliminated by GHC's dead code
-    # elimination on aarch64-darwin. (see
-    # https://github.com/NixOS/nixpkgs/issues/140774 for details).
-    ./Cabal-at-least-3.6-paths-fix-cycle-aarch64-darwin.patch
-  ];
-
   postPatch = ''
     patchShebangs --build .
   '';
diff --git a/pkgs/development/compilers/ghc/9.4.8.nix b/pkgs/development/compilers/ghc/common-make-native-bignum.nix
index 5ac2b60b1cd7..b2f6b1606265 100644
--- a/pkgs/development/compilers/ghc/9.4.8.nix
+++ b/pkgs/development/compilers/ghc/common-make-native-bignum.nix
@@ -1,5 +1,8 @@
-# DO NOT port this expression to hadrian. It is not possible to build a GHC
-# cross compiler with 9.4.* and hadrian.
+{ version
+, sha256
+, url ? "https://downloads.haskell.org/ghc/${version}/ghc-${version}-src.tar.xz"
+}:
+
 { lib, stdenv, pkgsBuildTarget, pkgsHostTarget, targetPackages
 
 # build-tools
@@ -17,7 +20,7 @@
 , useLLVM ? !(stdenv.targetPlatform.isx86
               || stdenv.targetPlatform.isPower
               || stdenv.targetPlatform.isSparc
-              || stdenv.targetPlatform.isAarch64)
+              || (lib.versionAtLeast version "9.2" && stdenv.targetPlatform.isAarch64))
 , # LLVM is conceptually a run-time-only dependency, but for
   # non-x86, we need LLVM to bootstrap later stages, so it becomes a
   # build-time dependency too.
@@ -173,19 +176,70 @@ assert buildTargetLlvmPackages.llvm == llvmPackages.llvm;
 assert stdenv.targetPlatform.isDarwin -> buildTargetLlvmPackages.clang == llvmPackages.clang;
 
 stdenv.mkDerivation (rec {
-  version = "9.4.8";
   pname = "${targetPrefix}ghc${variantSuffix}";
+  inherit version;
 
   src = fetchurl {
-    url = "https://downloads.haskell.org/ghc/${version}/ghc-${version}-src.tar.xz";
-    sha256 = "0bf407eb67fe3e3c24b0f4c8dea8cb63e07f63ca0f76cf2058565143507ab85e";
+    inherit url sha256;
   };
 
   enableParallelBuilding = true;
 
   outputs = [ "out" "doc" ];
 
-  patches = [
+  # FIXME(@sternenseemann): This can be simplified a lot (causing a rebuild)
+  patches = (if lib.versions.majorMinor version == "9.0" then [
+    # Fix docs build with sphinx >= 6.0
+    # https://gitlab.haskell.org/ghc/ghc/-/issues/22766
+    (fetchpatch {
+      name = "ghc-docs-sphinx-6.0.patch";
+      url = "https://gitlab.haskell.org/ghc/ghc/-/commit/10e94a556b4f90769b7fd718b9790d58ae566600.patch";
+      sha256 = "0kmhfamr16w8gch0lgln2912r8aryjky1hfcda3jkcwa5cdzgjdv";
+    })
+    # Fix docs build with Sphinx >= 7 https://gitlab.haskell.org/ghc/ghc/-/issues/24129
+    ./docs-sphinx-7.patch
+    # 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;
+    })
+
+    # Add flag that fixes C++ exception handling; opt-in. Merged in 9.4 and 9.2.2.
+    # https://gitlab.haskell.org/ghc/ghc/-/merge_requests/7423
+    (fetchpatch {
+      name = "ghc-9.0.2-fcompact-unwind.patch";
+      # Note that the test suite is not packaged.
+      url = "https://gitlab.haskell.org/ghc/ghc/-/commit/c6132c782d974a7701e7f6447bdcd2bf6db4299a.patch?merge_request_iid=7423";
+      sha256 = "sha256-b4feGZIaKDj/UKjWTNY6/jH4s2iate0wAgMxG3rAbZI=";
+    })
+  ] else if lib.versions.majorMinor version == "9.2" then [
+    # Fix docs build with sphinx >= 6.0
+    # https://gitlab.haskell.org/ghc/ghc/-/issues/22766
+    (fetchpatch {
+      name = "ghc-docs-sphinx-6.0.patch";
+      url = "https://gitlab.haskell.org/ghc/ghc/-/commit/10e94a556b4f90769b7fd718b9790d58ae566600.patch";
+      sha256 = "0kmhfamr16w8gch0lgln2912r8aryjky1hfcda3jkcwa5cdzgjdv";
+    })
+    # Fix docs build with Sphinx >= 7 https://gitlab.haskell.org/ghc/ghc/-/issues/24129
+    ./docs-sphinx-7.patch
+    # 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;
+    })
+    # Don't generate code that doesn't compile when --enable-relocatable is passed to Setup.hs
+    # Can be removed if the Cabal library included with ghc backports the linked fix
+    (fetchpatch {
+      url = "https://github.com/haskell/cabal/commit/6c796218c92f93c95e94d5ec2d077f6956f68e98.patch";
+      stripLen = 1;
+      extraPrefix = "libraries/Cabal/";
+      sha256 = "sha256-yRQ6YmMiwBwiYseC5BsrEtDgFbWvst+maGgDtdD0vAY=";
+    })
+  ] else if lib.versions.majorMinor version == "9.4" then [
     # Don't generate code that doesn't compile when --enable-relocatable is passed to Setup.hs
     # Can be removed if the Cabal library included with ghc backports the linked fix
     (fetchpatch {
@@ -194,17 +248,36 @@ stdenv.mkDerivation (rec {
       extraPrefix = "libraries/Cabal/";
       sha256 = "sha256-yRQ6YmMiwBwiYseC5BsrEtDgFbWvst+maGgDtdD0vAY=";
     })
+  ]
+  ++ lib.optionals (version == "9.4.5") [
+    # Fix docs build with sphinx >= 6.0
+    # https://gitlab.haskell.org/ghc/ghc/-/issues/22766
+    (fetchpatch {
+      name = "ghc-docs-sphinx-6.0.patch";
+      url = "https://gitlab.haskell.org/ghc/ghc/-/commit/10e94a556b4f90769b7fd718b9790d58ae566600.patch";
+      sha256 = "0kmhfamr16w8gch0lgln2912r8aryjky1hfcda3jkcwa5cdzgjdv";
+    })
+  ]
+  ++ [
 
     # Fix docs build with Sphinx >= 7 https://gitlab.haskell.org/ghc/ghc/-/issues/24129
     ./docs-sphinx-7.patch
-  ] ++ lib.optionals (stdenv.targetPlatform.isDarwin && stdenv.targetPlatform.isAarch64) [
+  ]
+  ++ lib.optionals (version == "9.4.6") [
+    # Work around a type not being defined when including Rts.h in bytestring's cbits
+    # due to missing feature macros. See https://gitlab.haskell.org/ghc/ghc/-/issues/23810.
+    ./9.4.6-bytestring-posix-source.patch
+  ] else [ ])
+  ++ lib.optionals (stdenv.targetPlatform.isDarwin && stdenv.targetPlatform.isAarch64) [
     # Prevent the paths module from emitting symbols that we don't use
     # when building with separate outputs.
     #
     # These cause problems as they're not eliminated by GHC's dead code
     # elimination on aarch64-darwin. (see
     # https://github.com/NixOS/nixpkgs/issues/140774 for details).
-    ./Cabal-at-least-3.6-paths-fix-cycle-aarch64-darwin.patch
+    (if lib.versionAtLeast version "9.2"
+     then ./Cabal-at-least-3.6-paths-fix-cycle-aarch64-darwin.patch
+     else ./Cabal-3.2-3.4-paths-fix-cycle-aarch64-darwin.patch)
   ];
 
   postPatch = "patchShebangs .";
@@ -239,10 +312,15 @@ stdenv.mkDerivation (rec {
   '' + 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"
-  '' + ''
+  ''
+  + lib.optionalString (version == "9.0.2" || lib.versionAtLeast version "9.4") ''
 
+  '' + ''
     echo -n "${buildMK}" > mk/build.mk
+  '' + lib.optionalString (lib.versionAtLeast version "9.4") ''
 
+  ''
+  + lib.optionalString (lib.versionOlder version "9.2" || lib.versionAtLeast version "9.4") ''
     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"
@@ -250,6 +328,7 @@ stdenv.mkDerivation (rec {
     export NIX_LDFLAGS+=" -rpath $out/lib/ghc-${version}"
   '' + lib.optionalString stdenv.isDarwin ''
     export NIX_LDFLAGS+=" -no_dtrace_dof"
+  '' + lib.optionalString (stdenv.isDarwin && lib.versionAtLeast version "9.2") ''
 
     # 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
@@ -274,7 +353,7 @@ stdenv.mkDerivation (rec {
   ''
   # HACK: allow bootstrapping with GHC 8.10 which works fine, as we don't have
   # binary 9.0 packaged. Bootstrapping with 9.2 is broken without hadrian.
-  + ''
+  + lib.optionalString (lib.versions.majorMinor version == "9.4") ''
     substituteInPlace configure --replace \
       'MinBootGhcVersion="9.0"' \
       'MinBootGhcVersion="8.10"'
@@ -321,6 +400,10 @@ stdenv.mkDerivation (rec {
     autoSignDarwinBinariesHook
   ] ++ lib.optionals enableDocs [
     sphinx
+  ] ++ lib.optionals (stdenv.isDarwin && lib.versions.majorMinor version == "9.0") [
+    # TODO(@sternenseemann): backport addition of XATTR env var like
+    # https://gitlab.haskell.org/ghc/ghc/-/merge_requests/6447
+    xattr
   ];
 
   # For building runtime libs
diff --git a/pkgs/development/compilers/ghdl/default.nix b/pkgs/development/compilers/ghdl/default.nix
index 84109f7436fa..96f1db0e6492 100644
--- a/pkgs/development/compilers/ghdl/default.nix
+++ b/pkgs/development/compilers/ghdl/default.nix
@@ -66,7 +66,7 @@ stdenv.mkDerivation (finalAttrs: {
     description = "VHDL 2008/93/87 simulator";
     license = lib.licenses.gpl2Plus;
     mainProgram = "ghdl";
-    maintainers = with lib.maintainers; [ eclairevoyant lucus16 thoughtpolice ];
+    maintainers = with lib.maintainers; [ lucus16 thoughtpolice ];
     platforms = lib.platforms.linux;
   };
 })
diff --git a/pkgs/development/compilers/gnu-cim/default.nix b/pkgs/development/compilers/gnu-cim/default.nix
index 54ba6cffff13..f689517196a1 100644
--- a/pkgs/development/compilers/gnu-cim/default.nix
+++ b/pkgs/development/compilers/gnu-cim/default.nix
@@ -23,7 +23,7 @@ stdenv.mkDerivation rec {
     done
   '';
 
-  CFLAGS = lib.optionalString stdenv.cc.isClang "-Wno-return-type";
+  env.CFLAGS = lib.optionalString stdenv.cc.isClang "-Wno-return-type -Wno-error=implicit-function-declaration -Wno-error=implicit-int";
 
   doCheck = true;
 
diff --git a/pkgs/development/compilers/go/1.21.nix b/pkgs/development/compilers/go/1.21.nix
index b9694f7d4baa..4d9982f2b265 100644
--- a/pkgs/development/compilers/go/1.21.nix
+++ b/pkgs/development/compilers/go/1.21.nix
@@ -47,11 +47,11 @@ let
 in
 stdenv.mkDerivation (finalAttrs: {
   pname = "go";
-  version = "1.21.9";
+  version = "1.21.10";
 
   src = fetchurl {
     url = "https://go.dev/dl/go${finalAttrs.version}.src.tar.gz";
-    hash = "sha256-WPDFztRaABK84v96nfA+Eoq8yIGOur5QJ7uSuv4g5CE=";
+    hash = "sha256-kA4K/okAwe5lqKjE8MWjygLc+FwdHLE6ZSviLCE5k5Q=";
   };
 
   strictDeps = true;
diff --git a/pkgs/development/compilers/idris2/idris2.nix b/pkgs/development/compilers/idris2/idris2.nix
index 421fb93cf03b..452e9da97c35 100644
--- a/pkgs/development/compilers/idris2/idris2.nix
+++ b/pkgs/development/compilers/idris2/idris2.nix
@@ -17,10 +17,12 @@
 # NOTICE: An `idris2WithPackages` is available at: https://github.com/claymager/idris2-pkgs
 
 let
-  # Taken from Idris2/idris2/flake.nix. Check if the idris2 project does it this
-  # way, still, every now and then.
-  platformChez = if stdenv.system == "x86_64-linux" then chez else chez-racket;
-# Uses scheme to bootstrap the build of idris2
+  platformChez =
+    if (stdenv.system == "x86_64-linux") || (lib.versionAtLeast chez.version "10.0.0")
+      then
+        chez
+      else
+        chez-racket;
 in stdenv.mkDerivation rec {
   pname = "idris2";
   version = "0.7.0";
diff --git a/pkgs/development/compilers/inform6/default.nix b/pkgs/development/compilers/inform6/default.nix
index 49af7e6676e3..ccbf8ef5da34 100644
--- a/pkgs/development/compilers/inform6/default.nix
+++ b/pkgs/development/compilers/inform6/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   pname = "inform6";
-  version = "6.41-r11";
+  version = "6.42-r1";
 
   src = fetchurl  {
     url = "https://ifarchive.org/if-archive/infocom/compilers/inform6/source/inform-${version}.tar.gz";
-    sha256 = "sha256-kfFfjJL03f3af1h/JdvkItuDFu8aGlM3BRa2eBB+ddY=";
+    sha256 = "sha256-JZaMhA4M+fDgk52tWCJokG9J/a1+FQHL7+VxAT4PgQo=";
   };
 
   buildInputs = [ perl ];
diff --git a/pkgs/development/compilers/julia/default.nix b/pkgs/development/compilers/julia/default.nix
index b1437804287c..130b65158cec 100644
--- a/pkgs/development/compilers/julia/default.nix
+++ b/pkgs/development/compilers/julia/default.nix
@@ -30,12 +30,12 @@ in
     { });
   julia_110-bin = wrapJulia (callPackage
     (import ./generic-bin.nix {
-      version = "1.10.2";
+      version = "1.10.3";
       sha256 = {
-        x86_64-linux = "51bccc9bb245197f24e6b2394e6aa69c0dc1e41b4e300b796e17da34ef64db1e";
-        aarch64-linux = "f319ff2812bece0918cb9ea6e0df54cc9412fc5ef8c0589b6a4fea485c07535d";
-        x86_64-darwin = "52679b9285b9aa8354afade8cc5a6c98d30af31ee72e4e879d17cef5dd4d4213";
-        aarch64-darwin = "c7392237725b54d2d145bf56ce362e502596ea4338523a91bf20ce02379cea80";
+        x86_64-linux = "81b910c922fff0e27ae1f256f2cc803db81f3960215281eddd2d484721928c70";
+        aarch64-linux = "2d52a61826872b3170c65f99a954bd9d21a31211cb50948056d924f811a0024f";
+        x86_64-darwin = "af61600db0abdc56fffb1b47cd18c30213b8925796546b53b657e164126082b4";
+        aarch64-darwin = "9ea32daa1bef34c8e48d6c76187f48fd2bf1054cc921fb8c374b737b51c9ffdd";
       };
     })
     { });
@@ -50,8 +50,8 @@ in
     { });
   julia_110 = wrapJulia (callPackage
     (import ./generic.nix {
-      version = "1.10.2";
-      hash = "sha256-YkaHIK+8QQ608mLtJDOpITJieHLJ9pC3BNwEXMsVVAE=";
+      version = "1.10.3";
+      hash = "sha256-2JKyEjvmTaz50F5My61/F5f2v4fDl6dIBLARyHUPbI8=";
       patches = [
         ./patches/1.10/0001-skip-building-docs-as-it-requires-network-access.patch
         ./patches/1.10/0002-skip-failing-and-flaky-tests.patch
diff --git a/pkgs/development/compilers/kotlin/default.nix b/pkgs/development/compilers/kotlin/default.nix
index e2fc481d3bc3..68b648846ea4 100644
--- a/pkgs/development/compilers/kotlin/default.nix
+++ b/pkgs/development/compilers/kotlin/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   pname = "kotlin";
-  version = "1.9.23";
+  version = "1.9.24";
 
   src = fetchurl {
     url = "https://github.com/JetBrains/kotlin/releases/download/v${version}/kotlin-compiler-${version}.zip";
-    sha256 = "125yb2yzah7laf38m78pysvcd5a16b129a06rckrpylsmcx7s4wk";
+    sha256 = "sha256-63to4BAp+me8jQYO5UwSAY8sYN3EOM8h2xRRcimqaTs=";
   };
 
   propagatedBuildInputs = [ jre ] ;
diff --git a/pkgs/development/compilers/llvm/12/default.nix b/pkgs/development/compilers/llvm/12/default.nix
index 45955dc5e1b3..82a9d63ab330 100644
--- a/pkgs/development/compilers/llvm/12/default.nix
+++ b/pkgs/development/compilers/llvm/12/default.nix
@@ -58,7 +58,52 @@ let
 
   in {
 
-    libllvm = callPackage ./llvm {
+    libllvm = callPackage ../common/llvm {
+      src = fetch "llvm" "1pzx9zrmd7r3481sbhwvkms68fwhffpp4mmz45dgrkjpyl2q96kx";
+      polly_src = fetch "polly" "1yfm9ixda4a2sx7ak5vswijx4ydk5lv1c1xh39xmd2kh299y4m12";
+      patches = [
+        # When cross-compiling we configure llvm-config-native with an approximation
+        # of the flags used for the normal LLVM build. To avoid the need for building
+        # a native libLLVM.so (which would fail) we force llvm-config to be linked
+        # statically against the necessary LLVM components always.
+        ../common/llvm/llvm-config-link-static.patch
+        # Fix llvm being miscompiled by some gccs. See llvm/llvm-project#49955
+        # Fix llvm being miscompiled by some gccs. See https://github.com/llvm/llvm-project/issues/49955
+        ./llvm/fix-llvm-issue-49955.patch
+
+        ./llvm/gnu-install-dirs.patch
+        # On older CPUs (e.g. Hydra/wendy) we'd be getting an error in this test.
+        (fetchpatch {
+          name = "uops-CMOV16rm-noreg.diff";
+          url = "https://github.com/llvm/llvm-project/commit/9e9f991ac033.diff";
+          sha256 = "sha256:12s8vr6ibri8b48h2z38f3afhwam10arfiqfy4yg37bmc054p5hi";
+          stripLen = 1;
+        })
+
+        # Fix musl build.
+        (fetchpatch {
+          url = "https://github.com/llvm/llvm-project/commit/5cd554303ead0f8891eee3cd6d25cb07f5a7bf67.patch";
+          relative = "llvm";
+          hash = "sha256-XPbvNJ45SzjMGlNUgt/IgEvM2dHQpDOe6woUJY+nUYA=";
+        })
+
+        # Backport gcc-13 fixes with missing includes.
+        (fetchpatch {
+          name = "signals-gcc-13.patch";
+          url = "https://github.com/llvm/llvm-project/commit/ff1681ddb303223973653f7f5f3f3435b48a1983.patch";
+          hash = "sha256-CXwYxQezTq5vdmc8Yn88BUAEly6YZ5VEIA6X3y5NNOs=";
+          stripLen = 1;
+        })
+        (fetchpatch {
+          name = "base64-gcc-13.patch";
+          url = "https://github.com/llvm/llvm-project/commit/5e9be93566f39ee6cecd579401e453eccfbe81e5.patch";
+          hash = "sha256-PAwrVrvffPd7tphpwCkYiz+67szPRzRB2TXBvKfzQ7U=";
+          stripLen = 1;
+        })
+      ];
+      pollyPatches = [
+        ./llvm/gnu-install-dirs-polly.patch
+      ];
       inherit llvm_meta;
     };
 
diff --git a/pkgs/development/compilers/llvm/12/llvm/default.nix b/pkgs/development/compilers/llvm/12/llvm/default.nix
deleted file mode 100644
index 4745345a3f71..000000000000
--- a/pkgs/development/compilers/llvm/12/llvm/default.nix
+++ /dev/null
@@ -1,357 +0,0 @@
-{ lib, stdenv, llvm_meta
-, pkgsBuildBuild
-, fetch
-, fetchpatch
-, cmake
-, python3
-, libffi
-, enableGoldPlugin ? libbfd.hasPluginAPI
-, libbfd
-, libpfm
-, libxml2
-, ncurses
-, version
-, release_version
-, zlib
-, buildLlvmTools
-, debugVersion ? false
-, doCheck ? stdenv.isLinux && (!stdenv.isx86_32) && (!stdenv.hostPlatform.isMusl)
-  && (stdenv.hostPlatform == stdenv.buildPlatform)
-, enableManpages ? false
-, enableSharedLibraries ? !stdenv.hostPlatform.isStatic
-# broken for Ampere eMAG 8180 (c2.large.arm on Packet) #56245
-# broken for the armv7l builder
-, enablePFM ? stdenv.isLinux && !stdenv.hostPlatform.isAarch
-, enablePolly ? false
-}:
-
-let
-  inherit (lib) optional optionals optionalString;
-
-  # Used when creating a version-suffixed symlink of libLLVM.dylib
-  shortVersion = with lib;
-    concatStringsSep "." (take 1 (splitString "." release_version));
-
-  # Ordinarily we would just the `doCheck` and `checkDeps` functionality
-  # `mkDerivation` gives us to manage our test dependencies (instead of breaking
-  # out `doCheck` as a package level attribute).
-  #
-  # Unfortunately `lit` does not forward `$PYTHONPATH` to children processes, in
-  # particular the children it uses to do feature detection.
-  #
-  # This means that python deps we add to `checkDeps` (which the python
-  # interpreter is made aware of via `$PYTHONPATH` – populated by the python
-  # setup hook) are not picked up by `lit` which causes it to skip tests.
-  #
-  # Adding `python3.withPackages (ps: [ ... ])` to `checkDeps` also doesn't work
-  # because this package is shadowed in `$PATH` by the regular `python3`
-  # package.
-  #
-  # So, we "manually" assemble one python derivation for the package to depend
-  # on, taking into account whether checks are enabled or not:
-  python = if doCheck then
-    let
-      checkDeps = ps: with ps; [ psutil ];
-    in python3.withPackages checkDeps
-  else python3;
-
-in stdenv.mkDerivation (rec {
-  pname = "llvm";
-  inherit version;
-
-  src = fetch pname "1pzx9zrmd7r3481sbhwvkms68fwhffpp4mmz45dgrkjpyl2q96kx";
-  polly_src = fetch "polly" "1yfm9ixda4a2sx7ak5vswijx4ydk5lv1c1xh39xmd2kh299y4m12";
-
-  unpackPhase = ''
-    unpackFile $src
-    mv llvm-${release_version}* llvm
-    sourceRoot=$PWD/llvm
-  '' + optionalString enablePolly ''
-    unpackFile $polly_src
-    mv polly-* $sourceRoot/tools/polly
-  '';
-
-  outputs = [ "out" "lib" "dev" "python" ];
-
-  nativeBuildInputs = [ cmake python ]
-    ++ optionals enableManpages [ python3.pkgs.sphinx python3.pkgs.recommonmark ];
-
-  buildInputs = [ libxml2 libffi ]
-    ++ optional enablePFM libpfm; # exegesis
-
-  propagatedBuildInputs = optionals (stdenv.buildPlatform == stdenv.hostPlatform) [ ncurses ]
-    ++ [ zlib ];
-
-  patches = [
-    # When cross-compiling we configure llvm-config-native with an approximation
-    # of the flags used for the normal LLVM build. To avoid the need for building
-    # a native libLLVM.so (which would fail) we force llvm-config to be linked
-    # statically against the necessary LLVM components always.
-    ../../common/llvm/llvm-config-link-static.patch
-    # Fix llvm being miscompiled by some gccs. See llvm/llvm-project#49955
-    # Fix llvm being miscompiled by some gccs. See https://github.com/llvm/llvm-project/issues/49955
-    ./fix-llvm-issue-49955.patch
-
-    ./gnu-install-dirs.patch
-    # On older CPUs (e.g. Hydra/wendy) we'd be getting an error in this test.
-    (fetchpatch {
-      name = "uops-CMOV16rm-noreg.diff";
-      url = "https://github.com/llvm/llvm-project/commit/9e9f991ac033.diff";
-      sha256 = "sha256:12s8vr6ibri8b48h2z38f3afhwam10arfiqfy4yg37bmc054p5hi";
-      stripLen = 1;
-    })
-
-    # Fix musl build.
-    (fetchpatch {
-      url = "https://github.com/llvm/llvm-project/commit/5cd554303ead0f8891eee3cd6d25cb07f5a7bf67.patch";
-      relative = "llvm";
-      hash = "sha256-XPbvNJ45SzjMGlNUgt/IgEvM2dHQpDOe6woUJY+nUYA=";
-    })
-
-    # Backport gcc-13 fixes with missing includes.
-    (fetchpatch {
-      name = "signals-gcc-13.patch";
-      url = "https://github.com/llvm/llvm-project/commit/ff1681ddb303223973653f7f5f3f3435b48a1983.patch";
-      hash = "sha256-CXwYxQezTq5vdmc8Yn88BUAEly6YZ5VEIA6X3y5NNOs=";
-      stripLen = 1;
-    })
-    (fetchpatch {
-      name = "base64-gcc-13.patch";
-      url = "https://github.com/llvm/llvm-project/commit/5e9be93566f39ee6cecd579401e453eccfbe81e5.patch";
-      hash = "sha256-PAwrVrvffPd7tphpwCkYiz+67szPRzRB2TXBvKfzQ7U=";
-      stripLen = 1;
-    })
-  ] ++ lib.optional enablePolly ./gnu-install-dirs-polly.patch;
-
-  postPatch = optionalString stdenv.isDarwin ''
-    substituteInPlace cmake/modules/AddLLVM.cmake \
-      --replace 'set(_install_name_dir INSTALL_NAME_DIR "@rpath")' "set(_install_name_dir)" \
-      --replace 'set(_install_rpath "@loader_path/../''${CMAKE_INSTALL_LIBDIR}''${LLVM_LIBDIR_SUFFIX}" ''${extra_libdir})' ""
-  '' + ''
-    # FileSystem permissions tests fail with various special bits
-    substituteInPlace unittests/Support/CMakeLists.txt \
-      --replace "Path.cpp" ""
-    rm unittests/Support/Path.cpp
-    substituteInPlace unittests/IR/CMakeLists.txt \
-      --replace "PassBuilderCallbacksTest.cpp" ""
-    rm unittests/IR/PassBuilderCallbacksTest.cpp
-    # TODO: Fix failing tests:
-    rm test/DebugInfo/X86/vla-multi.ll
-  '' + optionalString stdenv.hostPlatform.isMusl ''
-    patch -p1 -i ${../../common/llvm/TLI-musl.patch}
-    substituteInPlace unittests/Support/CMakeLists.txt \
-      --replace "add_subdirectory(DynamicLibrary)" ""
-    rm unittests/Support/DynamicLibrary/DynamicLibraryTest.cpp
-    # valgrind unhappy with musl or glibc, but fails w/musl only
-    rm test/CodeGen/AArch64/wineh4.mir
-  '' + optionalString stdenv.hostPlatform.isAarch32 ''
-    # skip failing X86 test cases on 32-bit ARM
-    rm test/DebugInfo/X86/convert-debugloc.ll
-    rm test/DebugInfo/X86/convert-inlined.ll
-    rm test/DebugInfo/X86/convert-linked.ll
-    rm test/tools/dsymutil/X86/op-convert.test
-    rm test/tools/gold/X86/split-dwarf.ll
-    rm test/tools/llvm-objcopy/MachO/universal-object.test
-  '' + optionalString (stdenv.hostPlatform.system == "armv6l-linux") ''
-    # Seems to require certain floating point hardware (NEON?)
-    rm test/ExecutionEngine/frem.ll
-  '' + ''
-    patchShebangs test/BugPoint/compile-custom.ll.py
-  '' + ''
-    # Tweak tests to ignore namespace part of type to support
-    # gcc-12: https://gcc.gnu.org/PR103598.
-    # The change below mangles strings like:
-    #    CHECK-NEXT: Starting llvm::Function pass manager run.
-    # to:
-    #    CHECK-NEXT: Starting {{.*}}Function pass manager run.
-    for f in \
-      test/Other/new-pass-manager.ll \
-      test/Other/new-pm-O0-defaults.ll \
-      test/Other/new-pm-defaults.ll \
-      test/Other/new-pm-lto-defaults.ll \
-      test/Other/new-pm-thinlto-defaults.ll \
-      test/Other/pass-pipeline-parsing.ll \
-      test/Transforms/Inline/cgscc-incremental-invalidate.ll \
-      test/Transforms/Inline/clear-analyses.ll \
-      test/Transforms/LoopUnroll/unroll-loop-invalidation.ll \
-      test/Transforms/SCCP/ipsccp-preserve-analysis.ll \
-      test/Transforms/SCCP/preserve-analysis.ll \
-      test/Transforms/SROA/dead-inst.ll \
-      test/tools/gold/X86/new-pm.ll \
-      ; do
-      echo "PATCH: $f"
-      substituteInPlace $f \
-        --replace 'Starting llvm::' 'Starting {{.*}}' \
-        --replace 'Finished llvm::' 'Finished {{.*}}'
-    done
-  '' + ''
-    # gcc-13 fix
-    sed -i '/#include <string>/i#include <cstdint>' \
-      include/llvm/DebugInfo/Symbolize/DIPrinter.h
-  '';
-
-  preConfigure = ''
-    # Workaround for configure flags that need to have spaces
-    cmakeFlagsArray+=(
-      -DLLVM_LIT_ARGS='-svj''${NIX_BUILD_CORES} --no-progress-bar'
-    )
-  '';
-
-  # hacky fix: created binaries need to be run before installation
-  preBuild = ''
-    mkdir -p $out/
-    ln -sv $PWD/lib $out
-  '';
-
-  # E.g. mesa.drivers use the build-id as a cache key (see #93946):
-  LDFLAGS = optionalString (enableSharedLibraries && !stdenv.isDarwin) "-Wl,--build-id=sha1";
-
-  hardeningDisable = [ "trivialautovarinit" ];
-
-  cmakeBuildType = if debugVersion then "Debug" else "Release";
-
-  cmakeFlags = with stdenv; let
-    # These flags influence llvm-config's BuildVariables.inc in addition to the
-    # general build. We need to make sure these are also passed via
-    # CROSS_TOOLCHAIN_FLAGS_NATIVE when cross-compiling or llvm-config-native
-    # will return different results from the cross llvm-config.
-    #
-    # Some flags don't need to be repassed because LLVM already does so (like
-    # CMAKE_BUILD_TYPE), others are irrelevant to the result.
-    flagsForLlvmConfig = [
-      "-DLLVM_INSTALL_CMAKE_DIR=${placeholder "dev"}/lib/cmake/llvm/"
-      "-DLLVM_ENABLE_RTTI=ON"
-    ] ++ optionals enableSharedLibraries [
-      "-DLLVM_LINK_LLVM_DYLIB=ON"
-    ];
-  in flagsForLlvmConfig ++ [
-    "-DLLVM_INSTALL_UTILS=ON"  # Needed by rustc
-    "-DLLVM_BUILD_TESTS=${if doCheck then "ON" else "OFF"}"
-    "-DLLVM_ENABLE_FFI=ON"
-    "-DLLVM_HOST_TRIPLE=${stdenv.hostPlatform.config}"
-    "-DLLVM_DEFAULT_TARGET_TRIPLE=${stdenv.hostPlatform.config}"
-    "-DLLVM_ENABLE_DUMP=ON"
-  ] ++ optionals stdenv.hostPlatform.isStatic [
-    # Disables building of shared libs, -fPIC is still injected by cc-wrapper
-    "-DLLVM_ENABLE_PIC=OFF"
-    "-DLLVM_BUILD_STATIC=ON"
-    # libxml2 needs to be disabled because the LLVM build system ignores its .la
-    # file and doesn't link zlib as well.
-    # https://github.com/ClangBuiltLinux/tc-build/issues/150#issuecomment-845418812
-    "-DLLVM_ENABLE_LIBXML2=OFF"
-  ] ++ optionals enableManpages [
-    "-DLLVM_BUILD_DOCS=ON"
-    "-DLLVM_ENABLE_SPHINX=ON"
-    "-DSPHINX_OUTPUT_MAN=ON"
-    "-DSPHINX_OUTPUT_HTML=OFF"
-    "-DSPHINX_WARNINGS_AS_ERRORS=OFF"
-  ] ++ optionals (enableGoldPlugin) [
-    "-DLLVM_BINUTILS_INCDIR=${libbfd.dev}/include"
-  ] ++ optionals isDarwin [
-    "-DLLVM_ENABLE_LIBCXX=ON"
-    "-DCAN_TARGET_i386=false"
-  ] ++ optionals ((stdenv.hostPlatform != stdenv.buildPlatform) && !(stdenv.buildPlatform.canExecute stdenv.hostPlatform)) [
-    "-DCMAKE_CROSSCOMPILING=True"
-    "-DLLVM_TABLEGEN=${buildLlvmTools.llvm}/bin/llvm-tblgen"
-    (
-      let
-        nativeCC = pkgsBuildBuild.targetPackages.stdenv.cc;
-        nativeBintools = nativeCC.bintools.bintools;
-        nativeToolchainFlags = [
-          "-DCMAKE_C_COMPILER=${nativeCC}/bin/${nativeCC.targetPrefix}cc"
-          "-DCMAKE_CXX_COMPILER=${nativeCC}/bin/${nativeCC.targetPrefix}c++"
-          "-DCMAKE_AR=${nativeBintools}/bin/${nativeBintools.targetPrefix}ar"
-          "-DCMAKE_STRIP=${nativeBintools}/bin/${nativeBintools.targetPrefix}strip"
-          "-DCMAKE_RANLIB=${nativeBintools}/bin/${nativeBintools.targetPrefix}ranlib"
-        ];
-        # We need to repass the custom GNUInstallDirs values, otherwise CMake
-        # will choose them for us, leading to wrong results in llvm-config-native
-        nativeInstallFlags = [
-          "-DCMAKE_INSTALL_PREFIX=${placeholder "out"}"
-          "-DCMAKE_INSTALL_BINDIR=${placeholder "out"}/bin"
-          "-DCMAKE_INSTALL_INCLUDEDIR=${placeholder "dev"}/include"
-          "-DCMAKE_INSTALL_LIBDIR=${placeholder "lib"}/lib"
-          "-DCMAKE_INSTALL_LIBEXECDIR=${placeholder "lib"}/libexec"
-        ];
-      in "-DCROSS_TOOLCHAIN_FLAGS_NATIVE:list="
-      + lib.concatStringsSep ";" (lib.concatLists [
-        flagsForLlvmConfig
-        nativeToolchainFlags
-        nativeInstallFlags
-      ])
-    )
-  ];
-
-  postBuild = ''
-    rm -fR $out
-  '';
-
-  preCheck = ''
-    export LD_LIBRARY_PATH=$LD_LIBRARY_PATH''${LD_LIBRARY_PATH:+:}$PWD/lib
-  '';
-
-  postInstall = ''
-    mkdir -p $python/share
-    mv $out/share/opt-viewer $python/share/opt-viewer
-    moveToOutput "bin/llvm-config*" "$dev"
-    substituteInPlace "$dev/lib/cmake/llvm/LLVMExports-${if debugVersion then "debug" else "release"}.cmake" \
-      --replace "\''${_IMPORT_PREFIX}/lib/lib" "$lib/lib/lib" \
-      --replace "$out/bin/llvm-config" "$dev/bin/llvm-config"
-    substituteInPlace "$dev/lib/cmake/llvm/LLVMConfig.cmake" \
-      --replace 'set(LLVM_BINARY_DIR "''${LLVM_INSTALL_PREFIX}")' 'set(LLVM_BINARY_DIR "''${LLVM_INSTALL_PREFIX}'"$lib"'")'
-  ''
-  + optionalString (stdenv.isDarwin && enableSharedLibraries) ''
-    ln -s $lib/lib/libLLVM.dylib $lib/lib/libLLVM-${shortVersion}.dylib
-    ln -s $lib/lib/libLLVM.dylib $lib/lib/libLLVM-${release_version}.dylib
-  ''
-  + optionalString (stdenv.buildPlatform != stdenv.hostPlatform) ''
-    cp NATIVE/bin/llvm-config $dev/bin/llvm-config-native
-  '';
-
-  inherit doCheck;
-
-  checkTarget = "check-all";
-
-  requiredSystemFeatures = [ "big-parallel" ];
-  meta = llvm_meta // {
-    homepage = "https://llvm.org/";
-    description = "A collection of modular and reusable compiler and toolchain technologies";
-    longDescription = ''
-      The LLVM Project is a collection of modular and reusable compiler and
-      toolchain technologies. Despite its name, LLVM has little to do with
-      traditional virtual machines. The name "LLVM" itself is not an acronym; it
-      is the full name of the project.
-      LLVM began as a research project at the University of Illinois, with the
-      goal of providing a modern, SSA-based compilation strategy capable of
-      supporting both static and dynamic compilation of arbitrary programming
-      languages. Since then, LLVM has grown to be an umbrella project consisting
-      of a number of subprojects, many of which are being used in production by
-      a wide variety of commercial and open source projects as well as being
-      widely used in academic research. Code in the LLVM project is licensed
-      under the "Apache 2.0 License with LLVM exceptions".
-    '';
-  };
-} // lib.optionalAttrs enableManpages {
-  pname = "llvm-manpages";
-
-  buildPhase = ''
-    make docs-llvm-man
-  '';
-
-  propagatedBuildInputs = [];
-
-  installPhase = ''
-    make -C docs install
-  '';
-
-  postPatch = null;
-  postInstall = null;
-
-  outputs = [ "out" ];
-
-  doCheck = false;
-
-  meta = llvm_meta // {
-    description = "man pages for LLVM ${version}";
-  };
-})
diff --git a/pkgs/development/compilers/llvm/13/default.nix b/pkgs/development/compilers/llvm/13/default.nix
index 018fb0c63850..9348e19e6de3 100644
--- a/pkgs/development/compilers/llvm/13/default.nix
+++ b/pkgs/development/compilers/llvm/13/default.nix
@@ -84,7 +84,47 @@ in let
 
   in {
 
-    libllvm = callPackage ./llvm {
+    libllvm = callPackage ../common/llvm {
+      patches = [
+        # When cross-compiling we configure llvm-config-native with an approximation
+        # of the flags used for the normal LLVM build. To avoid the need for building
+        # a native libLLVM.so (which would fail) we force llvm-config to be linked
+        # statically against the necessary LLVM components always.
+        ../common/llvm/llvm-config-link-static.patch
+
+        ./llvm/gnu-install-dirs.patch
+
+        # Fix random compiler crashes: https://bugs.llvm.org/show_bug.cgi?id=50611
+        (fetchpatch {
+          url = "https://raw.githubusercontent.com/archlinux/svntogit-packages/4764a4f8c920912a2bfd8b0eea57273acfe0d8a8/trunk/no-strict-aliasing-DwarfCompileUnit.patch";
+          sha256 = "18l6mrvm2vmwm77ckcnbjvh6ybvn72rhrb799d4qzwac4x2ifl7g";
+          stripLen = 1;
+        })
+
+        # Fix musl build.
+        (fetchpatch {
+          url = "https://github.com/llvm/llvm-project/commit/5cd554303ead0f8891eee3cd6d25cb07f5a7bf67.patch";
+          relative = "llvm";
+          hash = "sha256-XPbvNJ45SzjMGlNUgt/IgEvM2dHQpDOe6woUJY+nUYA=";
+        })
+
+        # Backport gcc-13 fixes with missing includes.
+        (fetchpatch {
+          name = "signals-gcc-13.patch";
+          url = "https://github.com/llvm/llvm-project/commit/ff1681ddb303223973653f7f5f3f3435b48a1983.patch";
+          hash = "sha256-CXwYxQezTq5vdmc8Yn88BUAEly6YZ5VEIA6X3y5NNOs=";
+          stripLen = 1;
+        })
+        (fetchpatch {
+          name = "base64-gcc-13.patch";
+          url = "https://github.com/llvm/llvm-project/commit/5e9be93566f39ee6cecd579401e453eccfbe81e5.patch";
+          hash = "sha256-PAwrVrvffPd7tphpwCkYiz+67szPRzRB2TXBvKfzQ7U=";
+          stripLen = 1;
+        })
+      ];
+      pollyPatches = [
+        ./llvm/gnu-install-dirs-polly.patch
+      ];
       inherit llvm_meta;
     };
 
diff --git a/pkgs/development/compilers/llvm/13/llvm/default.nix b/pkgs/development/compilers/llvm/13/llvm/default.nix
deleted file mode 100644
index 58e742b9b41e..000000000000
--- a/pkgs/development/compilers/llvm/13/llvm/default.nix
+++ /dev/null
@@ -1,315 +0,0 @@
-{ lib, stdenv, llvm_meta
-, pkgsBuildBuild
-, src
-, fetchpatch
-, cmake
-, python3
-, libffi
-, enableGoldPlugin ? libbfd.hasPluginAPI
-, libbfd
-, libpfm
-, libxml2
-, ncurses
-, version
-, release_version
-, zlib
-, which
-, buildLlvmTools
-, debugVersion ? false
-, doCheck ? stdenv.isLinux && (!stdenv.isx86_32) && (!stdenv.hostPlatform.isMusl)
-  && (stdenv.hostPlatform == stdenv.buildPlatform)
-, enableManpages ? false
-, enableSharedLibraries ? !stdenv.hostPlatform.isStatic
-# broken for Ampere eMAG 8180 (c2.large.arm on Packet) #56245
-# broken for the armv7l builder
-, enablePFM ? stdenv.isLinux && !stdenv.hostPlatform.isAarch
-, enablePolly ? false
-}:
-
-let
-  inherit (lib) optional optionals optionalString;
-
-  # Used when creating a version-suffixed symlink of libLLVM.dylib
-  shortVersion = with lib;
-    concatStringsSep "." (take 1 (splitString "." release_version));
-
-  # Ordinarily we would just the `doCheck` and `checkDeps` functionality
-  # `mkDerivation` gives us to manage our test dependencies (instead of breaking
-  # out `doCheck` as a package level attribute).
-  #
-  # Unfortunately `lit` does not forward `$PYTHONPATH` to children processes, in
-  # particular the children it uses to do feature detection.
-  #
-  # This means that python deps we add to `checkDeps` (which the python
-  # interpreter is made aware of via `$PYTHONPATH` – populated by the python
-  # setup hook) are not picked up by `lit` which causes it to skip tests.
-  #
-  # Adding `python3.withPackages (ps: [ ... ])` to `checkDeps` also doesn't work
-  # because this package is shadowed in `$PATH` by the regular `python3`
-  # package.
-  #
-  # So, we "manually" assemble one python derivation for the package to depend
-  # on, taking into account whether checks are enabled or not:
-  python = if doCheck then
-    let
-      checkDeps = ps: with ps; [ psutil ];
-    in python3.withPackages checkDeps
-  else python3;
-
-in stdenv.mkDerivation (rec {
-  pname = "llvm";
-  inherit version;
-
-  inherit src;
-  sourceRoot = "${src.name}/${pname}";
-
-  outputs = [ "out" "lib" "dev" "python" ];
-
-  nativeBuildInputs = [ cmake python ]
-    ++ optionals enableManpages [ python3.pkgs.sphinx python3.pkgs.recommonmark ];
-
-  buildInputs = [ libxml2 libffi ]
-    ++ optional enablePFM libpfm; # exegesis
-
-  propagatedBuildInputs = optionals (stdenv.hostPlatform == stdenv.buildPlatform) [ ncurses ]
-    ++ [ zlib ];
-
-  nativeCheckInputs = [ which ];
-
-  patches = [
-    # When cross-compiling we configure llvm-config-native with an approximation
-    # of the flags used for the normal LLVM build. To avoid the need for building
-    # a native libLLVM.so (which would fail) we force llvm-config to be linked
-    # statically against the necessary LLVM components always.
-    ../../common/llvm/llvm-config-link-static.patch
-
-    ./gnu-install-dirs.patch
-
-    # Fix random compiler crashes: https://bugs.llvm.org/show_bug.cgi?id=50611
-    (fetchpatch {
-      url = "https://raw.githubusercontent.com/archlinux/svntogit-packages/4764a4f8c920912a2bfd8b0eea57273acfe0d8a8/trunk/no-strict-aliasing-DwarfCompileUnit.patch";
-      sha256 = "18l6mrvm2vmwm77ckcnbjvh6ybvn72rhrb799d4qzwac4x2ifl7g";
-      stripLen = 1;
-    })
-
-    # Fix musl build.
-    (fetchpatch {
-      url = "https://github.com/llvm/llvm-project/commit/5cd554303ead0f8891eee3cd6d25cb07f5a7bf67.patch";
-      relative = "llvm";
-      hash = "sha256-XPbvNJ45SzjMGlNUgt/IgEvM2dHQpDOe6woUJY+nUYA=";
-    })
-
-    # Backport gcc-13 fixes with missing includes.
-    (fetchpatch {
-      name = "signals-gcc-13.patch";
-      url = "https://github.com/llvm/llvm-project/commit/ff1681ddb303223973653f7f5f3f3435b48a1983.patch";
-      hash = "sha256-CXwYxQezTq5vdmc8Yn88BUAEly6YZ5VEIA6X3y5NNOs=";
-      stripLen = 1;
-    })
-    (fetchpatch {
-      name = "base64-gcc-13.patch";
-      url = "https://github.com/llvm/llvm-project/commit/5e9be93566f39ee6cecd579401e453eccfbe81e5.patch";
-      hash = "sha256-PAwrVrvffPd7tphpwCkYiz+67szPRzRB2TXBvKfzQ7U=";
-      stripLen = 1;
-    })
-  ] ++ lib.optional enablePolly ./gnu-install-dirs-polly.patch;
-
-  postPatch = optionalString stdenv.isDarwin ''
-    substituteInPlace cmake/modules/AddLLVM.cmake \
-      --replace 'set(_install_name_dir INSTALL_NAME_DIR "@rpath")' "set(_install_name_dir)" \
-      --replace 'set(_install_rpath "@loader_path/../''${CMAKE_INSTALL_LIBDIR}''${LLVM_LIBDIR_SUFFIX}" ''${extra_libdir})' ""
-  '' + ''
-    # FileSystem permissions tests fail with various special bits
-    substituteInPlace unittests/Support/CMakeLists.txt \
-      --replace "Path.cpp" ""
-    rm unittests/Support/Path.cpp
-    substituteInPlace unittests/IR/CMakeLists.txt \
-      --replace "PassBuilderCallbacksTest.cpp" ""
-    rm unittests/IR/PassBuilderCallbacksTest.cpp
-    rm test/tools/llvm-objcopy/ELF/mirror-permissions-unix.test
-  '' + optionalString stdenv.hostPlatform.isMusl ''
-    patch -p1 -i ${../../common/llvm/TLI-musl.patch}
-    substituteInPlace unittests/Support/CMakeLists.txt \
-      --replace "add_subdirectory(DynamicLibrary)" ""
-    rm unittests/Support/DynamicLibrary/DynamicLibraryTest.cpp
-    # valgrind unhappy with musl or glibc, but fails w/musl only
-    rm test/CodeGen/AArch64/wineh4.mir
-  '' + optionalString stdenv.hostPlatform.isAarch32 ''
-    # skip failing X86 test cases on 32-bit ARM
-    rm test/DebugInfo/X86/convert-debugloc.ll
-    rm test/DebugInfo/X86/convert-inlined.ll
-    rm test/DebugInfo/X86/convert-linked.ll
-    rm test/tools/dsymutil/X86/op-convert.test
-    rm test/tools/gold/X86/split-dwarf.ll
-  '' + optionalString (stdenv.hostPlatform.system == "armv6l-linux") ''
-    # Seems to require certain floating point hardware (NEON?)
-    rm test/ExecutionEngine/frem.ll
-  '' + ''
-    patchShebangs test/BugPoint/compile-custom.ll.py
-  '';
-
-  preConfigure = ''
-    # Workaround for configure flags that need to have spaces
-    cmakeFlagsArray+=(
-      -DLLVM_LIT_ARGS='-svj''${NIX_BUILD_CORES} --no-progress-bar'
-    )
-  '';
-
-  # hacky fix: created binaries need to be run before installation
-  preBuild = ''
-    mkdir -p $out/
-    ln -sv $PWD/lib $out
-  '';
-
-  # E.g. mesa.drivers use the build-id as a cache key (see #93946):
-  LDFLAGS = optionalString (enableSharedLibraries && !stdenv.isDarwin) "-Wl,--build-id=sha1";
-
-  hardeningDisable = [ "trivialautovarinit" ];
-
-  cmakeBuildType = if debugVersion then "Debug" else "Release";
-
-  cmakeFlags = with stdenv; let
-    # These flags influence llvm-config's BuildVariables.inc in addition to the
-    # general build. We need to make sure these are also passed via
-    # CROSS_TOOLCHAIN_FLAGS_NATIVE when cross-compiling or llvm-config-native
-    # will return different results from the cross llvm-config.
-    #
-    # Some flags don't need to be repassed because LLVM already does so (like
-    # CMAKE_BUILD_TYPE), others are irrelevant to the result.
-    flagsForLlvmConfig = [
-      "-DLLVM_INSTALL_CMAKE_DIR=${placeholder "dev"}/lib/cmake/llvm/"
-      "-DLLVM_ENABLE_RTTI=ON"
-    ] ++ optionals enableSharedLibraries [
-      "-DLLVM_LINK_LLVM_DYLIB=ON"
-    ];
-  in flagsForLlvmConfig ++ [
-    "-DLLVM_INSTALL_UTILS=ON"  # Needed by rustc
-    "-DLLVM_BUILD_TESTS=${if doCheck then "ON" else "OFF"}"
-    "-DLLVM_ENABLE_FFI=ON"
-    "-DLLVM_HOST_TRIPLE=${stdenv.hostPlatform.config}"
-    "-DLLVM_DEFAULT_TARGET_TRIPLE=${stdenv.hostPlatform.config}"
-    "-DLLVM_ENABLE_DUMP=ON"
-  ] ++ optionals stdenv.hostPlatform.isStatic [
-    # Disables building of shared libs, -fPIC is still injected by cc-wrapper
-    "-DLLVM_ENABLE_PIC=OFF"
-    "-DLLVM_BUILD_STATIC=ON"
-    # libxml2 needs to be disabled because the LLVM build system ignores its .la
-    # file and doesn't link zlib as well.
-    # https://github.com/ClangBuiltLinux/tc-build/issues/150#issuecomment-845418812
-    "-DLLVM_ENABLE_LIBXML2=OFF"
-  ] ++ optionals enableManpages [
-    "-DLLVM_BUILD_DOCS=ON"
-    "-DLLVM_ENABLE_SPHINX=ON"
-    "-DSPHINX_OUTPUT_MAN=ON"
-    "-DSPHINX_OUTPUT_HTML=OFF"
-    "-DSPHINX_WARNINGS_AS_ERRORS=OFF"
-  ] ++ optionals (enableGoldPlugin) [
-    "-DLLVM_BINUTILS_INCDIR=${libbfd.dev}/include"
-  ] ++ optionals isDarwin [
-    "-DLLVM_ENABLE_LIBCXX=ON"
-    "-DCAN_TARGET_i386=false"
-  ] ++ optionals ((stdenv.hostPlatform != stdenv.buildPlatform) && !(stdenv.buildPlatform.canExecute stdenv.hostPlatform)) [
-    "-DCMAKE_CROSSCOMPILING=True"
-    "-DLLVM_TABLEGEN=${buildLlvmTools.llvm}/bin/llvm-tblgen"
-    (
-      let
-        nativeCC = pkgsBuildBuild.targetPackages.stdenv.cc;
-        nativeBintools = nativeCC.bintools.bintools;
-        nativeToolchainFlags = [
-          "-DCMAKE_C_COMPILER=${nativeCC}/bin/${nativeCC.targetPrefix}cc"
-          "-DCMAKE_CXX_COMPILER=${nativeCC}/bin/${nativeCC.targetPrefix}c++"
-          "-DCMAKE_AR=${nativeBintools}/bin/${nativeBintools.targetPrefix}ar"
-          "-DCMAKE_STRIP=${nativeBintools}/bin/${nativeBintools.targetPrefix}strip"
-          "-DCMAKE_RANLIB=${nativeBintools}/bin/${nativeBintools.targetPrefix}ranlib"
-        ];
-        # We need to repass the custom GNUInstallDirs values, otherwise CMake
-        # will choose them for us, leading to wrong results in llvm-config-native
-        nativeInstallFlags = [
-          "-DCMAKE_INSTALL_PREFIX=${placeholder "out"}"
-          "-DCMAKE_INSTALL_BINDIR=${placeholder "out"}/bin"
-          "-DCMAKE_INSTALL_INCLUDEDIR=${placeholder "dev"}/include"
-          "-DCMAKE_INSTALL_LIBDIR=${placeholder "lib"}/lib"
-          "-DCMAKE_INSTALL_LIBEXECDIR=${placeholder "lib"}/libexec"
-        ];
-      in "-DCROSS_TOOLCHAIN_FLAGS_NATIVE:list="
-      + lib.concatStringsSep ";" (lib.concatLists [
-        flagsForLlvmConfig
-        nativeToolchainFlags
-        nativeInstallFlags
-      ])
-    )
-  ];
-
-  postBuild = ''
-    rm -fR $out
-  '';
-
-  preCheck = ''
-    export LD_LIBRARY_PATH=$LD_LIBRARY_PATH''${LD_LIBRARY_PATH:+:}$PWD/lib
-  '';
-
-  postInstall = ''
-    mkdir -p $python/share
-    mv $out/share/opt-viewer $python/share/opt-viewer
-    moveToOutput "bin/llvm-config*" "$dev"
-    substituteInPlace "$dev/lib/cmake/llvm/LLVMExports-${if debugVersion then "debug" else "release"}.cmake" \
-      --replace "\''${_IMPORT_PREFIX}/lib/lib" "$lib/lib/lib" \
-      --replace "$out/bin/llvm-config" "$dev/bin/llvm-config"
-    substituteInPlace "$dev/lib/cmake/llvm/LLVMConfig.cmake" \
-      --replace 'set(LLVM_BINARY_DIR "''${LLVM_INSTALL_PREFIX}")' 'set(LLVM_BINARY_DIR "''${LLVM_INSTALL_PREFIX}'"$lib"'")'
-  ''
-  + optionalString (stdenv.isDarwin && enableSharedLibraries) ''
-    ln -s $lib/lib/libLLVM.dylib $lib/lib/libLLVM-${shortVersion}.dylib
-    ln -s $lib/lib/libLLVM.dylib $lib/lib/libLLVM-${release_version}.dylib
-  ''
-  + optionalString (stdenv.buildPlatform != stdenv.hostPlatform) ''
-    cp NATIVE/bin/llvm-config $dev/bin/llvm-config-native
-  '';
-
-  inherit doCheck;
-
-  checkTarget = "check-all";
-
-  requiredSystemFeatures = [ "big-parallel" ];
-  meta = llvm_meta // {
-    homepage = "https://llvm.org/";
-    description = "A collection of modular and reusable compiler and toolchain technologies";
-    longDescription = ''
-      The LLVM Project is a collection of modular and reusable compiler and
-      toolchain technologies. Despite its name, LLVM has little to do with
-      traditional virtual machines. The name "LLVM" itself is not an acronym; it
-      is the full name of the project.
-      LLVM began as a research project at the University of Illinois, with the
-      goal of providing a modern, SSA-based compilation strategy capable of
-      supporting both static and dynamic compilation of arbitrary programming
-      languages. Since then, LLVM has grown to be an umbrella project consisting
-      of a number of subprojects, many of which are being used in production by
-      a wide variety of commercial and open source projects as well as being
-      widely used in academic research. Code in the LLVM project is licensed
-      under the "Apache 2.0 License with LLVM exceptions".
-    '';
-  };
-} // lib.optionalAttrs enableManpages {
-  pname = "llvm-manpages";
-
-  buildPhase = ''
-    make docs-llvm-man
-  '';
-
-  propagatedBuildInputs = [];
-
-  installPhase = ''
-    make -C docs install
-  '';
-
-  postPatch = null;
-  postInstall = null;
-
-  outputs = [ "out" ];
-
-  doCheck = false;
-
-  meta = llvm_meta // {
-    description = "man pages for LLVM ${version}";
-  };
-})
diff --git a/pkgs/development/compilers/llvm/14/default.nix b/pkgs/development/compilers/llvm/14/default.nix
index 588dc8fffefd..f7368050d614 100644
--- a/pkgs/development/compilers/llvm/14/default.nix
+++ b/pkgs/development/compilers/llvm/14/default.nix
@@ -1,6 +1,6 @@
 { lowPrio, newScope, pkgs, lib, stdenv, cmake
 , preLibcCrossHeaders
-, libxml2, python3, fetchFromGitHub, substitute, substituteAll, overrideCC, wrapCCWith, wrapBintoolsWith
+, libxml2, python3, fetchFromGitHub, substitute, substituteAll, fetchpatch, overrideCC, wrapCCWith, wrapBintoolsWith
 , buildLlvmTools # tools, but from the previous stage, for cross
 , targetLlvmLibraries # libraries, but from the next stage, for cross
 , targetLlvm
@@ -80,7 +80,26 @@ in let
 
   in {
 
-    libllvm = callPackage ./llvm {
+    libllvm = callPackage ../common/llvm {
+      patches = [
+        ./llvm/gnu-install-dirs.patch
+
+        # Fix musl build.
+        (fetchpatch {
+          url = "https://github.com/llvm/llvm-project/commit/5cd554303ead0f8891eee3cd6d25cb07f5a7bf67.patch";
+          relative = "llvm";
+          hash = "sha256-XPbvNJ45SzjMGlNUgt/IgEvM2dHQpDOe6woUJY+nUYA=";
+        })
+        # fix RuntimeDyld usage on aarch64-linux (e.g. python312Packages.numba tests)
+        (fetchpatch {
+          url = "https://github.com/llvm/llvm-project/commit/2e1b838a889f9793d4bcd5dbfe10db9796b77143.patch";
+          relative = "llvm";
+          hash = "sha256-Ot45P/iwaR4hkcM3xtLwfryQNgHI6pv6ADjv98tgdZA=";
+        })
+      ];
+      pollyPatches = [
+        ./llvm/gnu-install-dirs-polly.patch
+      ];
       inherit llvm_meta;
     };
 
diff --git a/pkgs/development/compilers/llvm/14/llvm/default.nix b/pkgs/development/compilers/llvm/14/llvm/default.nix
deleted file mode 100644
index 124d07e4bb2b..000000000000
--- a/pkgs/development/compilers/llvm/14/llvm/default.nix
+++ /dev/null
@@ -1,323 +0,0 @@
-{ lib, stdenv, llvm_meta
-, pkgsBuildBuild
-, monorepoSrc
-, runCommand
-, fetchpatch
-, cmake
-, python3
-, libffi
-, enableGoldPlugin ? libbfd.hasPluginAPI
-, libbfd
-, libpfm
-, libxml2
-, ncurses
-, version
-, release_version
-, zlib
-, which
-, buildLlvmTools
-, debugVersion ? false
-, doCheck ? stdenv.isLinux && (!stdenv.isx86_32) && (!stdenv.hostPlatform.isMusl)
-  && (stdenv.hostPlatform == stdenv.buildPlatform)
-, enableManpages ? false
-, enableSharedLibraries ? !stdenv.hostPlatform.isStatic
-# broken for Ampere eMAG 8180 (c2.large.arm on Packet) #56245
-# broken for the armv7l builder
-, enablePFM ? stdenv.isLinux && !stdenv.hostPlatform.isAarch
-, enablePolly ? true
-}:
-
-let
-  inherit (lib) optional optionals optionalString;
-
-  # Used when creating a version-suffixed symlink of libLLVM.dylib
-  shortVersion = with lib;
-    concatStringsSep "." (take 1 (splitString "." release_version));
-
-  # Ordinarily we would just the `doCheck` and `checkDeps` functionality
-  # `mkDerivation` gives us to manage our test dependencies (instead of breaking
-  # out `doCheck` as a package level attribute).
-  #
-  # Unfortunately `lit` does not forward `$PYTHONPATH` to children processes, in
-  # particular the children it uses to do feature detection.
-  #
-  # This means that python deps we add to `checkDeps` (which the python
-  # interpreter is made aware of via `$PYTHONPATH` – populated by the python
-  # setup hook) are not picked up by `lit` which causes it to skip tests.
-  #
-  # Adding `python3.withPackages (ps: [ ... ])` to `checkDeps` also doesn't work
-  # because this package is shadowed in `$PATH` by the regular `python3`
-  # package.
-  #
-  # So, we "manually" assemble one python derivation for the package to depend
-  # on, taking into account whether checks are enabled or not:
-  python = if doCheck then
-    let
-      checkDeps = ps: with ps; [ psutil ];
-    in python3.withPackages checkDeps
-  else python3;
-
-in stdenv.mkDerivation (rec {
-  pname = "llvm";
-  inherit version;
-
-  src = runCommand "${pname}-src-${version}" {} (''
-    mkdir -p "$out"
-    cp -r ${monorepoSrc}/cmake "$out"
-    cp -r ${monorepoSrc}/${pname} "$out"
-    cp -r ${monorepoSrc}/third-party "$out"
-  '' + lib.optionalString enablePolly ''
-    chmod u+w "$out/${pname}/tools"
-    cp -r ${monorepoSrc}/polly "$out/${pname}/tools"
-  '');
-
-  sourceRoot = "${src.name}/${pname}";
-
-  outputs = [ "out" "lib" "dev" "python" ];
-
-  nativeBuildInputs = [ cmake python ]
-    ++ optionals enableManpages [ python3.pkgs.sphinx python3.pkgs.recommonmark ];
-
-  buildInputs = [ libxml2 libffi ]
-    ++ optional enablePFM libpfm; # exegesis
-
-  propagatedBuildInputs = [ ncurses zlib ];
-
-  nativeCheckInputs = [ which ];
-
-  patches = [
-    ./gnu-install-dirs.patch
-
-    # Fix musl build.
-    (fetchpatch {
-      url = "https://github.com/llvm/llvm-project/commit/5cd554303ead0f8891eee3cd6d25cb07f5a7bf67.patch";
-      relative = "llvm";
-      hash = "sha256-XPbvNJ45SzjMGlNUgt/IgEvM2dHQpDOe6woUJY+nUYA=";
-    })
-    # fix RuntimeDyld usage on aarch64-linux (e.g. python312Packages.numba tests)
-    (fetchpatch {
-      url = "https://github.com/llvm/llvm-project/commit/2e1b838a889f9793d4bcd5dbfe10db9796b77143.patch";
-      relative = "llvm";
-      hash = "sha256-Ot45P/iwaR4hkcM3xtLwfryQNgHI6pv6ADjv98tgdZA=";
-    })
-  ] ++ lib.optional enablePolly ./gnu-install-dirs-polly.patch;
-
-  postPatch = optionalString stdenv.isDarwin ''
-    substituteInPlace cmake/modules/AddLLVM.cmake \
-      --replace 'set(_install_name_dir INSTALL_NAME_DIR "@rpath")' "set(_install_name_dir)" \
-      --replace 'set(_install_rpath "@loader_path/../''${CMAKE_INSTALL_LIBDIR}''${LLVM_LIBDIR_SUFFIX}" ''${extra_libdir})' ""
-  '' + ''
-    # FileSystem permissions tests fail with various special bits
-    substituteInPlace unittests/Support/CMakeLists.txt \
-      --replace "Path.cpp" ""
-    rm unittests/Support/Path.cpp
-    substituteInPlace unittests/IR/CMakeLists.txt \
-      --replace "PassBuilderCallbacksTest.cpp" ""
-    rm unittests/IR/PassBuilderCallbacksTest.cpp
-    rm test/tools/llvm-objcopy/ELF/mirror-permissions-unix.test
-  '' + optionalString stdenv.hostPlatform.isMusl ''
-    patch -p1 -i ${../../common/llvm/TLI-musl.patch}
-    substituteInPlace unittests/Support/CMakeLists.txt \
-      --replace "add_subdirectory(DynamicLibrary)" ""
-    rm unittests/Support/DynamicLibrary/DynamicLibraryTest.cpp
-    # valgrind unhappy with musl or glibc, but fails w/musl only
-    rm test/CodeGen/AArch64/wineh4.mir
-  '' + optionalString stdenv.hostPlatform.isAarch32 ''
-    # skip failing X86 test cases on 32-bit ARM
-    rm test/DebugInfo/X86/convert-debugloc.ll
-    rm test/DebugInfo/X86/convert-inlined.ll
-    rm test/DebugInfo/X86/convert-linked.ll
-    rm test/tools/dsymutil/X86/op-convert.test
-    rm test/tools/gold/X86/split-dwarf.ll
-    rm test/tools/llvm-dwarfdump/X86/prettyprint_types.s
-    rm test/tools/llvm-dwarfdump/X86/simplified-template-names.s
-  '' + optionalString (stdenv.hostPlatform.system == "armv6l-linux") ''
-    # Seems to require certain floating point hardware (NEON?)
-    rm test/ExecutionEngine/frem.ll
-  '' + optionalString stdenv.hostPlatform.isRiscV ''
-    rm test/ExecutionEngine/frem.ll
-    rm test/ExecutionEngine/mov64zext32.ll
-    rm test/ExecutionEngine/test-interp-vec-arithm_float.ll
-    rm test/ExecutionEngine/test-interp-vec-arithm_int.ll
-    rm test/ExecutionEngine/test-interp-vec-logical.ll
-    rm test/ExecutionEngine/test-interp-vec-setcond-fp.ll
-    rm test/ExecutionEngine/test-interp-vec-setcond-int.ll
-    substituteInPlace unittests/Support/CMakeLists.txt \
-      --replace "CrashRecoveryTest.cpp" ""
-    rm unittests/Support/CrashRecoveryTest.cpp
-    substituteInPlace unittests/ExecutionEngine/Orc/CMakeLists.txt \
-      --replace "OrcCAPITest.cpp" ""
-    rm unittests/ExecutionEngine/Orc/OrcCAPITest.cpp
-  '' + ''
-    patchShebangs test/BugPoint/compile-custom.ll.py
-  '';
-
-  preConfigure = ''
-    # Workaround for configure flags that need to have spaces
-    cmakeFlagsArray+=(
-      -DLLVM_LIT_ARGS='-svj''${NIX_BUILD_CORES} --no-progress-bar'
-    )
-  '';
-
-  # hacky fix: created binaries need to be run before installation
-  preBuild = ''
-    mkdir -p $out/
-    ln -sv $PWD/lib $out
-  '';
-
-  # E.g. mesa.drivers use the build-id as a cache key (see #93946):
-  LDFLAGS = optionalString (enableSharedLibraries && !stdenv.isDarwin) "-Wl,--build-id=sha1";
-
-  hardeningDisable = [ "trivialautovarinit" ];
-
-  cmakeBuildType = if debugVersion then "Debug" else "Release";
-
-  cmakeFlags = with stdenv; let
-    # These flags influence llvm-config's BuildVariables.inc in addition to the
-    # general build. We need to make sure these are also passed via
-    # CROSS_TOOLCHAIN_FLAGS_NATIVE when cross-compiling or llvm-config-native
-    # will return different results from the cross llvm-config.
-    #
-    # Some flags don't need to be repassed because LLVM already does so (like
-    # CMAKE_BUILD_TYPE), others are irrelevant to the result.
-    flagsForLlvmConfig = [
-      "-DLLVM_INSTALL_CMAKE_DIR=${placeholder "dev"}/lib/cmake/llvm/"
-      "-DLLVM_ENABLE_RTTI=ON"
-    ] ++ optionals enableSharedLibraries [
-      "-DLLVM_LINK_LLVM_DYLIB=ON"
-    ];
-  in flagsForLlvmConfig ++ [
-    "-DLLVM_INSTALL_UTILS=ON"  # Needed by rustc
-    "-DLLVM_BUILD_TESTS=${if doCheck then "ON" else "OFF"}"
-    "-DLLVM_ENABLE_FFI=ON"
-    "-DLLVM_HOST_TRIPLE=${stdenv.hostPlatform.config}"
-    "-DLLVM_DEFAULT_TARGET_TRIPLE=${stdenv.hostPlatform.config}"
-    "-DLLVM_ENABLE_DUMP=ON"
-  ] ++ optionals stdenv.hostPlatform.isStatic [
-    # Disables building of shared libs, -fPIC is still injected by cc-wrapper
-    "-DLLVM_ENABLE_PIC=OFF"
-    "-DLLVM_BUILD_STATIC=ON"
-    "-DLLVM_LINK_LLVM_DYLIB=off"
-    # libxml2 needs to be disabled because the LLVM build system ignores its .la
-    # file and doesn't link zlib as well.
-    # https://github.com/ClangBuiltLinux/tc-build/issues/150#issuecomment-845418812
-    "-DLLVM_ENABLE_LIBXML2=OFF"
-  ] ++ optionals enableManpages [
-    "-DLLVM_BUILD_DOCS=ON"
-    "-DLLVM_ENABLE_SPHINX=ON"
-    "-DSPHINX_OUTPUT_MAN=ON"
-    "-DSPHINX_OUTPUT_HTML=OFF"
-    "-DSPHINX_WARNINGS_AS_ERRORS=OFF"
-  ] ++ optionals (enableGoldPlugin) [
-    "-DLLVM_BINUTILS_INCDIR=${libbfd.dev}/include"
-  ] ++ optionals isDarwin [
-    "-DLLVM_ENABLE_LIBCXX=ON"
-    "-DCAN_TARGET_i386=false"
-  ] ++ optionals ((stdenv.hostPlatform != stdenv.buildPlatform) && !(stdenv.buildPlatform.canExecute stdenv.hostPlatform)) [
-    "-DCMAKE_CROSSCOMPILING=True"
-    "-DLLVM_TABLEGEN=${buildLlvmTools.llvm}/bin/llvm-tblgen"
-    (
-      let
-        nativeCC = pkgsBuildBuild.targetPackages.stdenv.cc;
-        nativeBintools = nativeCC.bintools.bintools;
-        nativeToolchainFlags = [
-          "-DCMAKE_C_COMPILER=${nativeCC}/bin/${nativeCC.targetPrefix}cc"
-          "-DCMAKE_CXX_COMPILER=${nativeCC}/bin/${nativeCC.targetPrefix}c++"
-          "-DCMAKE_AR=${nativeBintools}/bin/${nativeBintools.targetPrefix}ar"
-          "-DCMAKE_STRIP=${nativeBintools}/bin/${nativeBintools.targetPrefix}strip"
-          "-DCMAKE_RANLIB=${nativeBintools}/bin/${nativeBintools.targetPrefix}ranlib"
-        ];
-        # We need to repass the custom GNUInstallDirs values, otherwise CMake
-        # will choose them for us, leading to wrong results in llvm-config-native
-        nativeInstallFlags = [
-          "-DCMAKE_INSTALL_PREFIX=${placeholder "out"}"
-          "-DCMAKE_INSTALL_BINDIR=${placeholder "out"}/bin"
-          "-DCMAKE_INSTALL_INCLUDEDIR=${placeholder "dev"}/include"
-          "-DCMAKE_INSTALL_LIBDIR=${placeholder "lib"}/lib"
-          "-DCMAKE_INSTALL_LIBEXECDIR=${placeholder "lib"}/libexec"
-        ];
-      in "-DCROSS_TOOLCHAIN_FLAGS_NATIVE:list="
-      + lib.concatStringsSep ";" (lib.concatLists [
-        flagsForLlvmConfig
-        nativeToolchainFlags
-        nativeInstallFlags
-      ])
-    )
-  ];
-
-  postBuild = ''
-    rm -fR $out
-  '';
-
-  preCheck = ''
-    export LD_LIBRARY_PATH=$LD_LIBRARY_PATH''${LD_LIBRARY_PATH:+:}$PWD/lib
-  '';
-
-  postInstall = ''
-    mkdir -p $python/share
-    mv $out/share/opt-viewer $python/share/opt-viewer
-    moveToOutput "bin/llvm-config*" "$dev"
-    substituteInPlace "$dev/lib/cmake/llvm/LLVMExports-${if debugVersion then "debug" else "release"}.cmake" \
-      --replace "\''${_IMPORT_PREFIX}/lib/lib" "$lib/lib/lib" \
-      --replace "$out/bin/llvm-config" "$dev/bin/llvm-config"
-    substituteInPlace "$dev/lib/cmake/llvm/LLVMConfig.cmake" \
-      --replace 'set(LLVM_BINARY_DIR "''${LLVM_INSTALL_PREFIX}")' 'set(LLVM_BINARY_DIR "''${LLVM_INSTALL_PREFIX}'"$lib"'")'
-  ''
-  + optionalString (stdenv.isDarwin && enableSharedLibraries) ''
-    ln -s $lib/lib/libLLVM.dylib $lib/lib/libLLVM-${shortVersion}.dylib
-    ln -s $lib/lib/libLLVM.dylib $lib/lib/libLLVM-${release_version}.dylib
-  ''
-  + optionalString (stdenv.buildPlatform != stdenv.hostPlatform) ''
-    cp NATIVE/bin/llvm-config $dev/bin/llvm-config-native
-  '';
-
-  inherit doCheck;
-
-  checkTarget = "check-all";
-
-  # For the update script:
-  passthru.monorepoSrc = monorepoSrc;
-
-  requiredSystemFeatures = [ "big-parallel" ];
-  meta = llvm_meta // {
-    homepage = "https://llvm.org/";
-    description = "A collection of modular and reusable compiler and toolchain technologies";
-    longDescription = ''
-      The LLVM Project is a collection of modular and reusable compiler and
-      toolchain technologies. Despite its name, LLVM has little to do with
-      traditional virtual machines. The name "LLVM" itself is not an acronym; it
-      is the full name of the project.
-      LLVM began as a research project at the University of Illinois, with the
-      goal of providing a modern, SSA-based compilation strategy capable of
-      supporting both static and dynamic compilation of arbitrary programming
-      languages. Since then, LLVM has grown to be an umbrella project consisting
-      of a number of subprojects, many of which are being used in production by
-      a wide variety of commercial and open source projects as well as being
-      widely used in academic research. Code in the LLVM project is licensed
-      under the "Apache 2.0 License with LLVM exceptions".
-    '';
-  };
-} // lib.optionalAttrs enableManpages {
-  pname = "llvm-manpages";
-
-  buildPhase = ''
-    make docs-llvm-man
-  '';
-
-  propagatedBuildInputs = [];
-
-  installPhase = ''
-    make -C docs install
-  '';
-
-  postPatch = null;
-  postInstall = null;
-
-  outputs = [ "out" ];
-
-  doCheck = false;
-
-  meta = llvm_meta // {
-    description = "man pages for LLVM ${version}";
-  };
-})
diff --git a/pkgs/development/compilers/llvm/15/default.nix b/pkgs/development/compilers/llvm/15/default.nix
index bfcbe2b86e24..5003ef32d1ee 100644
--- a/pkgs/development/compilers/llvm/15/default.nix
+++ b/pkgs/development/compilers/llvm/15/default.nix
@@ -86,7 +86,64 @@ in let
 
   in {
 
-    libllvm = callPackage ./llvm {
+    libllvm = callPackage ../common/llvm {
+      patches = [
+        ./llvm/gnu-install-dirs.patch
+
+        # Running the tests involves invoking binaries (like `opt`) that depend on
+        # the LLVM dylibs and reference them by absolute install path (i.e. their
+        # nix store path).
+        #
+        # Because we have not yet run the install phase (we're running these tests
+        # as part of `checkPhase` instead of `installCheckPhase`) these absolute
+        # paths do not exist yet; to work around this we point the loader (`ld` on
+        # unix, `dyld` on macOS) at the `lib` directory which will later become this
+        # package's `lib` output.
+        #
+        # Previously we would just set `LD_LIBRARY_PATH` to include the build `lib`
+        # dir but:
+        #   - this doesn't generalize well to other platforms; `lit` doesn't forward
+        #     `DYLD_LIBRARY_PATH` (macOS):
+        #     + https://github.com/llvm/llvm-project/blob/0d89963df354ee309c15f67dc47c8ab3cb5d0fb2/llvm/utils/lit/lit/TestingConfig.py#L26
+        #   - even if `lit` forwarded this env var, we actually cannot set
+        #     `DYLD_LIBRARY_PATH` in the child processes `lit` launches because
+        #     `DYLD_LIBRARY_PATH` (and `DYLD_FALLBACK_LIBRARY_PATH`) is cleared for
+        #     "protected processes" (i.e. the python interpreter that runs `lit`):
+        #     https://stackoverflow.com/a/35570229
+        #   - other LLVM subprojects deal with this issue by having their `lit`
+        #     configuration set these env vars for us; it makes sense to do the same
+        #     for LLVM:
+        #     + https://github.com/llvm/llvm-project/blob/4c106cfdf7cf7eec861ad3983a3dd9a9e8f3a8ae/clang-tools-extra/test/Unit/lit.cfg.py#L22-L31
+        #
+        # !!! TODO: look into upstreaming this patch
+        ./llvm/llvm-lit-cfg-add-libs-to-dylib-path.patch
+
+        # `lit` has a mode where it executes run lines as a shell script which is
+        # constructs; this is problematic for macOS because it means that there's
+        # another process in between `lit` and the binaries being tested. As noted
+        # above, this means that `DYLD_LIBRARY_PATH` is cleared which means that our
+        # tests fail with dyld errors.
+        #
+        # To get around this we patch `lit` to reintroduce `DYLD_LIBRARY_PATH`, when
+        # present in the test configuration.
+        #
+        # It's not clear to me why this isn't an issue for LLVM developers running
+        # on macOS (nothing about this _seems_ nix specific)..
+        ./llvm/lit-shell-script-runner-set-dyld-library-path.patch
+
+        # Fix musl build.
+        (fetchpatch {
+          url = "https://github.com/llvm/llvm-project/commit/5cd554303ead0f8891eee3cd6d25cb07f5a7bf67.patch";
+          relative = "llvm";
+          hash = "sha256-XPbvNJ45SzjMGlNUgt/IgEvM2dHQpDOe6woUJY+nUYA=";
+        })
+      ];
+      pollyPatches = [
+        ./llvm/gnu-install-dirs-polly.patch
+
+        # Just like the `llvm-lit-cfg` patch, but for `polly`.
+        ./llvm/polly-lit-cfg-add-libs-to-dylib-path.patch
+      ];
       inherit llvm_meta;
     };
 
diff --git a/pkgs/development/compilers/llvm/15/llvm/default.nix b/pkgs/development/compilers/llvm/15/llvm/default.nix
deleted file mode 100644
index d7ebcbcf8b76..000000000000
--- a/pkgs/development/compilers/llvm/15/llvm/default.nix
+++ /dev/null
@@ -1,442 +0,0 @@
-{ lib, stdenv, llvm_meta
-, pkgsBuildBuild
-, monorepoSrc
-, runCommand
-, fetchpatch
-, cmake
-, darwin
-, ninja
-, python3
-, python3Packages
-, libffi
-, enableGoldPlugin ? libbfd.hasPluginAPI
-, libbfd
-, libpfm
-, libxml2
-, ncurses
-, version
-, release_version
-, zlib
-, which
-, sysctl
-, buildLlvmTools
-, debugVersion ? false
-, doCheck ? (!stdenv.isx86_32 /* TODO: why */) && (!stdenv.hostPlatform.isMusl)
-  && (stdenv.hostPlatform == stdenv.buildPlatform)
-, enableManpages ? false
-, enableSharedLibraries ? !stdenv.hostPlatform.isStatic
-, enablePFM ? stdenv.isLinux /* PFM only supports Linux */
-  # broken for Ampere eMAG 8180 (c2.large.arm on Packet) #56245
-  # broken for the armv7l builder
-  && !stdenv.hostPlatform.isAarch
-, enablePolly ? true
-}:
-
-let
-  inherit (lib) optional optionals optionalString;
-
-  # Used when creating a version-suffixed symlink of libLLVM.dylib
-  shortVersion = with lib;
-    concatStringsSep "." (take 1 (splitString "." release_version));
-
-  # Ordinarily we would just the `doCheck` and `checkDeps` functionality
-  # `mkDerivation` gives us to manage our test dependencies (instead of breaking
-  # out `doCheck` as a package level attribute).
-  #
-  # Unfortunately `lit` does not forward `$PYTHONPATH` to children processes, in
-  # particular the children it uses to do feature detection.
-  #
-  # This means that python deps we add to `checkDeps` (which the python
-  # interpreter is made aware of via `$PYTHONPATH` – populated by the python
-  # setup hook) are not picked up by `lit` which causes it to skip tests.
-  #
-  # Adding `python3.withPackages (ps: [ ... ])` to `checkDeps` also doesn't work
-  # because this package is shadowed in `$PATH` by the regular `python3`
-  # package.
-  #
-  # So, we "manually" assemble one python derivation for the package to depend
-  # on, taking into account whether checks are enabled or not:
-  python = if doCheck then
-    # Note that we _explicitly_ ask for a python interpreter for our host
-    # platform here; the splicing that would ordinarily take care of this for
-    # us does not seem to work once we use `withPackages`.
-    let
-      checkDeps = ps: with ps; [ psutil ];
-    in pkgsBuildBuild.targetPackages.python3.withPackages checkDeps
-  else python3;
-
-in stdenv.mkDerivation (rec {
-  pname = "llvm";
-  inherit version;
-
-  src = runCommand "${pname}-src-${version}" {} (''
-    mkdir -p "$out"
-    cp -r ${monorepoSrc}/cmake "$out"
-    cp -r ${monorepoSrc}/${pname} "$out"
-    cp -r ${monorepoSrc}/third-party "$out"
-  '' + lib.optionalString enablePolly ''
-    chmod u+w "$out/${pname}/tools"
-    cp -r ${monorepoSrc}/polly "$out/${pname}/tools"
-  '');
-
-  sourceRoot = "${src.name}/${pname}";
-
-  outputs = [ "out" "lib" "dev" "python" ];
-
-  nativeBuildInputs = [ cmake ninja python ]
-    ++ optionals enableManpages [
-      # Note: we intentionally use `python3Packages` instead of `python3.pkgs`;
-      # splicing does *not* work with the latter. (TODO: fix)
-      python3Packages.sphinx python3Packages.recommonmark
-    ];
-
-  buildInputs = [ libxml2 libffi ]
-    ++ optional enablePFM libpfm; # exegesis
-
-  propagatedBuildInputs = [ ncurses zlib ];
-
-  nativeCheckInputs = [
-    which
-  ] ++ lib.optional stdenv.isDarwin sysctl;
-
-  patches = [
-    ./gnu-install-dirs.patch
-
-    # Running the tests involves invoking binaries (like `opt`) that depend on
-    # the LLVM dylibs and reference them by absolute install path (i.e. their
-    # nix store path).
-    #
-    # Because we have not yet run the install phase (we're running these tests
-    # as part of `checkPhase` instead of `installCheckPhase`) these absolute
-    # paths do not exist yet; to work around this we point the loader (`ld` on
-    # unix, `dyld` on macOS) at the `lib` directory which will later become this
-    # package's `lib` output.
-    #
-    # Previously we would just set `LD_LIBRARY_PATH` to include the build `lib`
-    # dir but:
-    #   - this doesn't generalize well to other platforms; `lit` doesn't forward
-    #     `DYLD_LIBRARY_PATH` (macOS):
-    #     + https://github.com/llvm/llvm-project/blob/0d89963df354ee309c15f67dc47c8ab3cb5d0fb2/llvm/utils/lit/lit/TestingConfig.py#L26
-    #   - even if `lit` forwarded this env var, we actually cannot set
-    #     `DYLD_LIBRARY_PATH` in the child processes `lit` launches because
-    #     `DYLD_LIBRARY_PATH` (and `DYLD_FALLBACK_LIBRARY_PATH`) is cleared for
-    #     "protected processes" (i.e. the python interpreter that runs `lit`):
-    #     https://stackoverflow.com/a/35570229
-    #   - other LLVM subprojects deal with this issue by having their `lit`
-    #     configuration set these env vars for us; it makes sense to do the same
-    #     for LLVM:
-    #     + https://github.com/llvm/llvm-project/blob/4c106cfdf7cf7eec861ad3983a3dd9a9e8f3a8ae/clang-tools-extra/test/Unit/lit.cfg.py#L22-L31
-    #
-    # !!! TODO: look into upstreaming this patch
-    ./llvm-lit-cfg-add-libs-to-dylib-path.patch
-
-    # `lit` has a mode where it executes run lines as a shell script which is
-    # constructs; this is problematic for macOS because it means that there's
-    # another process in between `lit` and the binaries being tested. As noted
-    # above, this means that `DYLD_LIBRARY_PATH` is cleared which means that our
-    # tests fail with dyld errors.
-    #
-    # To get around this we patch `lit` to reintroduce `DYLD_LIBRARY_PATH`, when
-    # present in the test configuration.
-    #
-    # It's not clear to me why this isn't an issue for LLVM developers running
-    # on macOS (nothing about this _seems_ nix specific)..
-    ./lit-shell-script-runner-set-dyld-library-path.patch
-
-    # Fix musl build.
-    (fetchpatch {
-      url = "https://github.com/llvm/llvm-project/commit/5cd554303ead0f8891eee3cd6d25cb07f5a7bf67.patch";
-      relative = "llvm";
-      hash = "sha256-XPbvNJ45SzjMGlNUgt/IgEvM2dHQpDOe6woUJY+nUYA=";
-    })
-  ] ++ lib.optionals enablePolly [
-    ./gnu-install-dirs-polly.patch
-
-    # Just like the `llvm-lit-cfg` patch, but for `polly`.
-    ./polly-lit-cfg-add-libs-to-dylib-path.patch
-  ];
-
-  postPatch = optionalString stdenv.isDarwin ''
-    substituteInPlace cmake/modules/AddLLVM.cmake \
-      --replace 'set(_install_name_dir INSTALL_NAME_DIR "@rpath")' "set(_install_name_dir)" \
-      --replace 'set(_install_rpath "@loader_path/../''${CMAKE_INSTALL_LIBDIR}''${LLVM_LIBDIR_SUFFIX}" ''${extra_libdir})' ""
-
-    # As of LLVM 15, marked as XFAIL on arm64 macOS but lit doesn't seem to pick
-    # this up: https://github.com/llvm/llvm-project/blob/c344d97a125b18f8fed0a64aace73c49a870e079/llvm/test/MC/ELF/cfi-version.ll#L7
-    rm test/MC/ELF/cfi-version.ll
-
-    # This test tries to call `sw_vers` by absolute path (`/usr/bin/sw_vers`)
-    # and thus fails under the sandbox:
-    substituteInPlace unittests/Support/Host.cpp \
-      --replace '/usr/bin/sw_vers' "${(builtins.toString darwin.DarwinTools) + "/bin/sw_vers" }"
-  '' + optionalString (stdenv.isDarwin && stdenv.hostPlatform.isx86) ''
-    # This test tries to call the intrinsics `@llvm.roundeven.f32` and
-    # `@llvm.roundeven.f64` which seem to (incorrectly?) lower to `roundevenf`
-    # and `roundeven` on x86_64 macOS.
-    #
-    # However these functions are glibc specific so the test fails:
-    #   - https://www.gnu.org/software/gnulib/manual/html_node/roundevenf.html
-    #   - https://www.gnu.org/software/gnulib/manual/html_node/roundeven.html
-    #
-    # TODO(@rrbutani): this seems to run fine on `aarch64-darwin`, why does it
-    # pass there?
-    substituteInPlace test/ExecutionEngine/Interpreter/intrinsics.ll \
-      --replace "%roundeven32 = call float @llvm.roundeven.f32(float 0.000000e+00)" "" \
-      --replace "%roundeven64 = call double @llvm.roundeven.f64(double 0.000000e+00)" ""
-
-    # This test fails on darwin x86_64 because `sw_vers` reports a different
-    # macOS version than what LLVM finds by reading
-    # `/System/Library/CoreServices/SystemVersion.plist` (which is passed into
-    # the sandbox on macOS).
-    #
-    # The `sw_vers` provided by nixpkgs reports the macOS version associated
-    # with the `CoreFoundation` framework with which it was built. Because
-    # nixpkgs pins the SDK for `aarch64-darwin` and `x86_64-darwin` what
-    # `sw_vers` reports is not guaranteed to match the macOS version of the host
-    # that's building this derivation.
-    #
-    # Astute readers will note that we only _patch_ this test on aarch64-darwin
-    # (to use the nixpkgs provided `sw_vers`) instead of disabling it outright.
-    # So why does this test pass on aarch64?
-    #
-    # Well, it seems that `sw_vers` on aarch64 actually links against the _host_
-    # CoreFoundation framework instead of the nixpkgs provided one.
-    #
-    # Not entirely sure what the right fix is here. I'm assuming aarch64
-    # `sw_vers` doesn't intentionally link against the host `CoreFoundation`
-    # (still digging into how this ends up happening, will follow up) but that
-    # aside I think the more pertinent question is: should we be patching LLVM's
-    # macOS version detection logic to use `sw_vers` instead of reading host
-    # paths? This *is* a way in which details about builder machines can creep
-    # into the artifacts that are produced, affecting reproducibility, but it's
-    # not clear to me when/where/for what this even gets used in LLVM.
-    #
-    # TODO(@rrbutani): fix/follow-up
-    substituteInPlace unittests/Support/Host.cpp \
-      --replace "getMacOSHostVersion" "DISABLED_getMacOSHostVersion"
-
-    # This test fails with a `dysmutil` crash; have not yet dug into what's
-    # going on here (TODO(@rrbutani)).
-    rm test/tools/dsymutil/ARM/obfuscated.test
-  '' + ''
-    # FileSystem permissions tests fail with various special bits
-    substituteInPlace unittests/Support/CMakeLists.txt \
-      --replace "Path.cpp" ""
-    rm unittests/Support/Path.cpp
-    substituteInPlace unittests/IR/CMakeLists.txt \
-      --replace "PassBuilderCallbacksTest.cpp" ""
-    rm unittests/IR/PassBuilderCallbacksTest.cpp
-    rm test/tools/llvm-objcopy/ELF/mirror-permissions-unix.test
-    # timing-based tests are trouble
-    rm utils/lit/tests/googletest-timeout.py
-  '' + optionalString stdenv.hostPlatform.isMusl ''
-    patch -p1 -i ${../../common/llvm/TLI-musl.patch}
-    substituteInPlace unittests/Support/CMakeLists.txt \
-      --replace "add_subdirectory(DynamicLibrary)" ""
-    rm unittests/Support/DynamicLibrary/DynamicLibraryTest.cpp
-    # valgrind unhappy with musl or glibc, but fails w/musl only
-    rm test/CodeGen/AArch64/wineh4.mir
-  '' + optionalString stdenv.hostPlatform.isAarch32 ''
-    # skip failing X86 test cases on 32-bit ARM
-    rm test/DebugInfo/X86/convert-debugloc.ll
-    rm test/DebugInfo/X86/convert-inlined.ll
-    rm test/DebugInfo/X86/convert-linked.ll
-    rm test/tools/dsymutil/X86/op-convert.test
-    rm test/tools/gold/X86/split-dwarf.ll
-    rm test/tools/llvm-dwarfdump/X86/prettyprint_types.s
-    rm test/tools/llvm-dwarfdump/X86/simplified-template-names.s
-
-    # !!! Note: these tests are removed in LLVM 16.
-    #
-    # See here for context: https://github.com/NixOS/nixpkgs/pull/194634#discussion_r999790443
-    rm test/CodeGen/RISCV/rv32zbp.ll
-    rm test/CodeGen/RISCV/rv64zbp.ll
-  '' + optionalString (stdenv.hostPlatform.system == "armv6l-linux") ''
-    # Seems to require certain floating point hardware (NEON?)
-    rm test/ExecutionEngine/frem.ll
-  '' + ''
-    patchShebangs test/BugPoint/compile-custom.ll.py
-  '';
-
-  preConfigure = ''
-    # Workaround for configure flags that need to have spaces
-    cmakeFlagsArray+=(
-      -DLLVM_LIT_ARGS="-svj''${NIX_BUILD_CORES} --no-progress-bar"
-    )
-  '';
-
-  # Defensive check: some paths (that we make symlinks to) depend on the release
-  # version, for example:
-  #  - https://github.com/llvm/llvm-project/blob/406bde9a15136254f2b10d9ef3a42033b3cb1b16/clang/lib/Headers/CMakeLists.txt#L185
-  #
-  # So we want to sure that the version in the source matches the release
-  # version we were given.
-  #
-  # We do this check here, in the LLVM build, because it happens early.
-  postConfigure = let
-    v = lib.versions;
-    major = v.major release_version;
-    minor = v.minor release_version;
-    patch = v.patch release_version;
-  in ''
-    # $1: part, $2: expected
-    check_version() {
-      part="''${1^^}"
-      part="$(cat include/llvm/Config/llvm-config.h  | grep "#define LLVM_VERSION_''${part} " | cut -d' ' -f3)"
-
-      if [[ "$part" != "$2" ]]; then
-        echo >&2 \
-          "mismatch in the $1 version! we have version ${release_version}" \
-          "and expected the $1 version to be '$2'; the source has '$part' instead"
-        exit 3
-      fi
-    }
-
-    check_version major ${major}
-    check_version minor ${minor}
-    check_version patch ${patch}
-  '';
-
-  # E.g. mesa.drivers use the build-id as a cache key (see #93946):
-  LDFLAGS = optionalString (enableSharedLibraries && !stdenv.isDarwin) "-Wl,--build-id=sha1";
-
-  hardeningDisable = [ "trivialautovarinit" ];
-
-  cmakeBuildType = if debugVersion then "Debug" else "Release";
-
-  cmakeFlags = with stdenv; let
-    # These flags influence llvm-config's BuildVariables.inc in addition to the
-    # general build. We need to make sure these are also passed via
-    # CROSS_TOOLCHAIN_FLAGS_NATIVE when cross-compiling or llvm-config-native
-    # will return different results from the cross llvm-config.
-    #
-    # Some flags don't need to be repassed because LLVM already does so (like
-    # CMAKE_BUILD_TYPE), others are irrelevant to the result.
-    flagsForLlvmConfig = [
-      "-DLLVM_INSTALL_PACKAGE_DIR=${placeholder "dev"}/lib/cmake/llvm"
-      "-DLLVM_ENABLE_RTTI=ON"
-    ] ++ optionals enableSharedLibraries [
-      "-DLLVM_LINK_LLVM_DYLIB=ON"
-    ];
-  in flagsForLlvmConfig ++ [
-    "-DLLVM_INSTALL_UTILS=ON"  # Needed by rustc
-    "-DLLVM_BUILD_TESTS=${if doCheck then "ON" else "OFF"}"
-    "-DLLVM_ENABLE_FFI=ON"
-    "-DLLVM_HOST_TRIPLE=${stdenv.hostPlatform.config}"
-    "-DLLVM_DEFAULT_TARGET_TRIPLE=${stdenv.hostPlatform.config}"
-    "-DLLVM_ENABLE_DUMP=ON"
-  ] ++ optionals stdenv.hostPlatform.isStatic [
-    # Disables building of shared libs, -fPIC is still injected by cc-wrapper
-    "-DLLVM_ENABLE_PIC=OFF"
-    "-DLLVM_BUILD_STATIC=ON"
-    "-DLLVM_LINK_LLVM_DYLIB=off"
-    # libxml2 needs to be disabled because the LLVM build system ignores its .la
-    # file and doesn't link zlib as well.
-    # https://github.com/ClangBuiltLinux/tc-build/issues/150#issuecomment-845418812
-    "-DLLVM_ENABLE_LIBXML2=OFF"
-  ] ++ optionals enableManpages [
-    "-DLLVM_BUILD_DOCS=ON"
-    "-DLLVM_ENABLE_SPHINX=ON"
-    "-DSPHINX_OUTPUT_MAN=ON"
-    "-DSPHINX_OUTPUT_HTML=OFF"
-    "-DSPHINX_WARNINGS_AS_ERRORS=OFF"
-  ] ++ optionals (enableGoldPlugin) [
-    "-DLLVM_BINUTILS_INCDIR=${libbfd.dev}/include"
-  ] ++ optionals isDarwin [
-    "-DLLVM_ENABLE_LIBCXX=ON"
-    "-DCAN_TARGET_i386=false"
-  ] ++ optionals ((stdenv.hostPlatform != stdenv.buildPlatform) && !(stdenv.buildPlatform.canExecute stdenv.hostPlatform)) [
-    "-DCMAKE_CROSSCOMPILING=True"
-    "-DLLVM_TABLEGEN=${buildLlvmTools.llvm}/bin/llvm-tblgen"
-    (
-      let
-        nativeCC = pkgsBuildBuild.targetPackages.stdenv.cc;
-        nativeBintools = nativeCC.bintools.bintools;
-        nativeToolchainFlags = [
-          "-DCMAKE_C_COMPILER=${nativeCC}/bin/${nativeCC.targetPrefix}cc"
-          "-DCMAKE_CXX_COMPILER=${nativeCC}/bin/${nativeCC.targetPrefix}c++"
-          "-DCMAKE_AR=${nativeBintools}/bin/${nativeBintools.targetPrefix}ar"
-          "-DCMAKE_STRIP=${nativeBintools}/bin/${nativeBintools.targetPrefix}strip"
-          "-DCMAKE_RANLIB=${nativeBintools}/bin/${nativeBintools.targetPrefix}ranlib"
-        ];
-        # We need to repass the custom GNUInstallDirs values, otherwise CMake
-        # will choose them for us, leading to wrong results in llvm-config-native
-        nativeInstallFlags = [
-          "-DCMAKE_INSTALL_PREFIX=${placeholder "out"}"
-          "-DCMAKE_INSTALL_BINDIR=${placeholder "out"}/bin"
-          "-DCMAKE_INSTALL_INCLUDEDIR=${placeholder "dev"}/include"
-          "-DCMAKE_INSTALL_LIBDIR=${placeholder "lib"}/lib"
-          "-DCMAKE_INSTALL_LIBEXECDIR=${placeholder "lib"}/libexec"
-        ];
-      in "-DCROSS_TOOLCHAIN_FLAGS_NATIVE:list="
-      + lib.concatStringsSep ";" (lib.concatLists [
-        flagsForLlvmConfig
-        nativeToolchainFlags
-        nativeInstallFlags
-      ])
-    )
-  ];
-
-  postInstall = ''
-    mkdir -p $python/share
-    mv $out/share/opt-viewer $python/share/opt-viewer
-    moveToOutput "bin/llvm-config*" "$dev"
-    substituteInPlace "$dev/lib/cmake/llvm/LLVMExports-${if debugVersion then "debug" else "release"}.cmake" \
-      --replace "\''${_IMPORT_PREFIX}/lib/lib" "$lib/lib/lib" \
-      --replace "$out/bin/llvm-config" "$dev/bin/llvm-config"
-    substituteInPlace "$dev/lib/cmake/llvm/LLVMConfig.cmake" \
-      --replace 'set(LLVM_BINARY_DIR "''${LLVM_INSTALL_PREFIX}")' 'set(LLVM_BINARY_DIR "'"$lib"'")'
-  ''
-  + optionalString (stdenv.isDarwin && enableSharedLibraries) ''
-    ln -s $lib/lib/libLLVM.dylib $lib/lib/libLLVM-${shortVersion}.dylib
-    ln -s $lib/lib/libLLVM.dylib $lib/lib/libLLVM-${release_version}.dylib
-  ''
-  + optionalString (stdenv.buildPlatform != stdenv.hostPlatform) ''
-    cp NATIVE/bin/llvm-config $dev/bin/llvm-config-native
-  '';
-
-  inherit doCheck;
-
-  checkTarget = "check-all";
-
-  # For the update script:
-  passthru.monorepoSrc = monorepoSrc;
-
-  requiredSystemFeatures = [ "big-parallel" ];
-  meta = llvm_meta // {
-    homepage = "https://llvm.org/";
-    description = "A collection of modular and reusable compiler and toolchain technologies";
-    longDescription = ''
-      The LLVM Project is a collection of modular and reusable compiler and
-      toolchain technologies. Despite its name, LLVM has little to do with
-      traditional virtual machines. The name "LLVM" itself is not an acronym; it
-      is the full name of the project.
-      LLVM began as a research project at the University of Illinois, with the
-      goal of providing a modern, SSA-based compilation strategy capable of
-      supporting both static and dynamic compilation of arbitrary programming
-      languages. Since then, LLVM has grown to be an umbrella project consisting
-      of a number of subprojects, many of which are being used in production by
-      a wide variety of commercial and open source projects as well as being
-      widely used in academic research. Code in the LLVM project is licensed
-      under the "Apache 2.0 License with LLVM exceptions".
-    '';
-  };
-} // lib.optionalAttrs enableManpages {
-  pname = "llvm-manpages";
-
-  propagatedBuildInputs = [];
-
-  ninjaFlags = [ "docs-llvm-man" ];
-  installTargets = [ "install-docs-llvm-man" ];
-
-  postPatch = null;
-  postInstall = null;
-
-  outputs = [ "out" ];
-
-  doCheck = false;
-
-  meta = llvm_meta // {
-    description = "man pages for LLVM ${version}";
-  };
-})
diff --git a/pkgs/development/compilers/llvm/16/default.nix b/pkgs/development/compilers/llvm/16/default.nix
index 5dd07d77cf8c..79d5f8589044 100644
--- a/pkgs/development/compilers/llvm/16/default.nix
+++ b/pkgs/development/compilers/llvm/16/default.nix
@@ -87,7 +87,57 @@ in let
 
   in {
 
-    libllvm = callPackage ./llvm {
+    libllvm = callPackage ../common/llvm {
+      patches = [
+        ./llvm/gnu-install-dirs.patch
+
+        # Running the tests involves invoking binaries (like `opt`) that depend on
+        # the LLVM dylibs and reference them by absolute install path (i.e. their
+        # nix store path).
+        #
+        # Because we have not yet run the install phase (we're running these tests
+        # as part of `checkPhase` instead of `installCheckPhase`) these absolute
+        # paths do not exist yet; to work around this we point the loader (`ld` on
+        # unix, `dyld` on macOS) at the `lib` directory which will later become this
+        # package's `lib` output.
+        #
+        # Previously we would just set `LD_LIBRARY_PATH` to include the build `lib`
+        # dir but:
+        #   - this doesn't generalize well to other platforms; `lit` doesn't forward
+        #     `DYLD_LIBRARY_PATH` (macOS):
+        #     + https://github.com/llvm/llvm-project/blob/0d89963df354ee309c15f67dc47c8ab3cb5d0fb2/llvm/utils/lit/lit/TestingConfig.py#L26
+        #   - even if `lit` forwarded this env var, we actually cannot set
+        #     `DYLD_LIBRARY_PATH` in the child processes `lit` launches because
+        #     `DYLD_LIBRARY_PATH` (and `DYLD_FALLBACK_LIBRARY_PATH`) is cleared for
+        #     "protected processes" (i.e. the python interpreter that runs `lit`):
+        #     https://stackoverflow.com/a/35570229
+        #   - other LLVM subprojects deal with this issue by having their `lit`
+        #     configuration set these env vars for us; it makes sense to do the same
+        #     for LLVM:
+        #     + https://github.com/llvm/llvm-project/blob/4c106cfdf7cf7eec861ad3983a3dd9a9e8f3a8ae/clang-tools-extra/test/Unit/lit.cfg.py#L22-L31
+        #
+        # !!! TODO: look into upstreaming this patch
+        ./llvm/llvm-lit-cfg-add-libs-to-dylib-path.patch
+
+        # `lit` has a mode where it executes run lines as a shell script which is
+        # constructs; this is problematic for macOS because it means that there's
+        # another process in between `lit` and the binaries being tested. As noted
+        # above, this means that `DYLD_LIBRARY_PATH` is cleared which means that our
+        # tests fail with dyld errors.
+        #
+        # To get around this we patch `lit` to reintroduce `DYLD_LIBRARY_PATH`, when
+        # present in the test configuration.
+        #
+        # It's not clear to me why this isn't an issue for LLVM developers running
+        # on macOS (nothing about this _seems_ nix specific)..
+        ./llvm/lit-shell-script-runner-set-dyld-library-path.patch
+      ];
+      pollyPatches = [
+        ./llvm/gnu-install-dirs-polly.patch
+
+        # Just like the `llvm-lit-cfg` patch, but for `polly`.
+        ./llvm/polly-lit-cfg-add-libs-to-dylib-path.patch
+      ];
       inherit llvm_meta;
     };
 
diff --git a/pkgs/development/compilers/llvm/16/llvm/default.nix b/pkgs/development/compilers/llvm/16/llvm/default.nix
deleted file mode 100644
index 0a8d877ba83c..000000000000
--- a/pkgs/development/compilers/llvm/16/llvm/default.nix
+++ /dev/null
@@ -1,435 +0,0 @@
-{ lib, stdenv, llvm_meta
-, pkgsBuildBuild
-, monorepoSrc
-, runCommand
-, cmake
-, darwin
-, ninja
-, python3
-, python3Packages
-, libffi
-# TODO: Gold plugin on LLVM16 has a severe memory corruption bug: https://github.com/llvm/llvm-project/issues/61350.
-, enableGoldPlugin ? false
-, libbfd
-, libpfm
-, libxml2
-, ncurses
-, version
-, release_version
-, zlib
-, which
-, sysctl
-, buildLlvmTools
-, debugVersion ? false
-, doCheck ? (!stdenv.isx86_32 /* TODO: why */) && (!stdenv.hostPlatform.isMusl)
-  && (stdenv.hostPlatform == stdenv.buildPlatform)
-, enableManpages ? false
-, enableSharedLibraries ? !stdenv.hostPlatform.isStatic
-, enablePFM ? stdenv.isLinux /* PFM only supports Linux */
-  # broken for Ampere eMAG 8180 (c2.large.arm on Packet) #56245
-  # broken for the armv7l builder
-  && !stdenv.hostPlatform.isAarch
-, enablePolly ? true
-}:
-
-let
-  inherit (lib) optional optionals optionalString;
-
-  # Used when creating a version-suffixed symlink of libLLVM.dylib
-  shortVersion = with lib;
-    concatStringsSep "." (take 1 (splitString "." release_version));
-
-  # Ordinarily we would just the `doCheck` and `checkDeps` functionality
-  # `mkDerivation` gives us to manage our test dependencies (instead of breaking
-  # out `doCheck` as a package level attribute).
-  #
-  # Unfortunately `lit` does not forward `$PYTHONPATH` to children processes, in
-  # particular the children it uses to do feature detection.
-  #
-  # This means that python deps we add to `checkDeps` (which the python
-  # interpreter is made aware of via `$PYTHONPATH` – populated by the python
-  # setup hook) are not picked up by `lit` which causes it to skip tests.
-  #
-  # Adding `python3.withPackages (ps: [ ... ])` to `checkDeps` also doesn't work
-  # because this package is shadowed in `$PATH` by the regular `python3`
-  # package.
-  #
-  # So, we "manually" assemble one python derivation for the package to depend
-  # on, taking into account whether checks are enabled or not:
-  python = if doCheck then
-    # Note that we _explicitly_ ask for a python interpreter for our host
-    # platform here; the splicing that would ordinarily take care of this for
-    # us does not seem to work once we use `withPackages`.
-    let
-      checkDeps = ps: with ps; [ psutil ];
-    in pkgsBuildBuild.targetPackages.python3.withPackages checkDeps
-  else python3;
-
-in
-  assert (lib.assertMsg (!enableGoldPlugin) "Gold plugin cannot be enabled on LLVM16 due to a upstream issue: https://github.com/llvm/llvm-project/issues/61350");
-  stdenv.mkDerivation (rec {
-  pname = "llvm";
-  inherit version;
-
-  src = runCommand "${pname}-src-${version}" {} (''
-    mkdir -p "$out"
-    cp -r ${monorepoSrc}/cmake "$out"
-    cp -r ${monorepoSrc}/${pname} "$out"
-    cp -r ${monorepoSrc}/third-party "$out"
-  '' + lib.optionalString enablePolly ''
-    chmod u+w "$out/${pname}/tools"
-    cp -r ${monorepoSrc}/polly "$out/${pname}/tools"
-  '');
-
-  sourceRoot = "${src.name}/${pname}";
-
-  outputs = [ "out" "lib" "dev" "python" ];
-
-  nativeBuildInputs = [ cmake ninja python ]
-    ++ optionals enableManpages [
-      # Note: we intentionally use `python3Packages` instead of `python3.pkgs`;
-      # splicing does *not* work with the latter. (TODO: fix)
-      python3Packages.sphinx python3Packages.recommonmark
-    ];
-
-  buildInputs = [ libxml2 libffi ]
-    ++ optional enablePFM libpfm; # exegesis
-
-  propagatedBuildInputs = [ ncurses zlib ];
-
-  nativeCheckInputs = [
-    which
-  ] ++ lib.optional stdenv.isDarwin sysctl;
-
-  patches = [
-    ./gnu-install-dirs.patch
-
-    # Running the tests involves invoking binaries (like `opt`) that depend on
-    # the LLVM dylibs and reference them by absolute install path (i.e. their
-    # nix store path).
-    #
-    # Because we have not yet run the install phase (we're running these tests
-    # as part of `checkPhase` instead of `installCheckPhase`) these absolute
-    # paths do not exist yet; to work around this we point the loader (`ld` on
-    # unix, `dyld` on macOS) at the `lib` directory which will later become this
-    # package's `lib` output.
-    #
-    # Previously we would just set `LD_LIBRARY_PATH` to include the build `lib`
-    # dir but:
-    #   - this doesn't generalize well to other platforms; `lit` doesn't forward
-    #     `DYLD_LIBRARY_PATH` (macOS):
-    #     + https://github.com/llvm/llvm-project/blob/0d89963df354ee309c15f67dc47c8ab3cb5d0fb2/llvm/utils/lit/lit/TestingConfig.py#L26
-    #   - even if `lit` forwarded this env var, we actually cannot set
-    #     `DYLD_LIBRARY_PATH` in the child processes `lit` launches because
-    #     `DYLD_LIBRARY_PATH` (and `DYLD_FALLBACK_LIBRARY_PATH`) is cleared for
-    #     "protected processes" (i.e. the python interpreter that runs `lit`):
-    #     https://stackoverflow.com/a/35570229
-    #   - other LLVM subprojects deal with this issue by having their `lit`
-    #     configuration set these env vars for us; it makes sense to do the same
-    #     for LLVM:
-    #     + https://github.com/llvm/llvm-project/blob/4c106cfdf7cf7eec861ad3983a3dd9a9e8f3a8ae/clang-tools-extra/test/Unit/lit.cfg.py#L22-L31
-    #
-    # !!! TODO: look into upstreaming this patch
-    ./llvm-lit-cfg-add-libs-to-dylib-path.patch
-
-    # `lit` has a mode where it executes run lines as a shell script which is
-    # constructs; this is problematic for macOS because it means that there's
-    # another process in between `lit` and the binaries being tested. As noted
-    # above, this means that `DYLD_LIBRARY_PATH` is cleared which means that our
-    # tests fail with dyld errors.
-    #
-    # To get around this we patch `lit` to reintroduce `DYLD_LIBRARY_PATH`, when
-    # present in the test configuration.
-    #
-    # It's not clear to me why this isn't an issue for LLVM developers running
-    # on macOS (nothing about this _seems_ nix specific)..
-    ./lit-shell-script-runner-set-dyld-library-path.patch
-  ] ++ lib.optionals enablePolly [
-    ./gnu-install-dirs-polly.patch
-
-    # Just like the `llvm-lit-cfg` patch, but for `polly`.
-    ./polly-lit-cfg-add-libs-to-dylib-path.patch
-  ];
-
-  postPatch = optionalString stdenv.isDarwin ''
-    substituteInPlace cmake/modules/AddLLVM.cmake \
-      --replace 'set(_install_name_dir INSTALL_NAME_DIR "@rpath")' "set(_install_name_dir)" \
-      --replace 'set(_install_rpath "@loader_path/../''${CMAKE_INSTALL_LIBDIR}''${LLVM_LIBDIR_SUFFIX}" ''${extra_libdir})' ""
-
-    # As of LLVM 15, marked as XFAIL on arm64 macOS but lit doesn't seem to pick
-    # this up: https://github.com/llvm/llvm-project/blob/c344d97a125b18f8fed0a64aace73c49a870e079/llvm/test/MC/ELF/cfi-version.ll#L7
-    rm test/MC/ELF/cfi-version.ll
-
-    # This test tries to call `sw_vers` by absolute path (`/usr/bin/sw_vers`)
-    # and thus fails under the sandbox:
-    substituteInPlace unittests/TargetParser/Host.cpp \
-      --replace '/usr/bin/sw_vers' "${(builtins.toString darwin.DarwinTools) + "/bin/sw_vers" }"
-
-    # This test tries to call the intrinsics `@llvm.roundeven.f32` and
-    # `@llvm.roundeven.f64` which seem to (incorrectly?) lower to `roundevenf`
-    # and `roundeven` on macOS.
-    #
-    # However these functions are glibc specific so the test fails:
-    #   - https://www.gnu.org/software/gnulib/manual/html_node/roundevenf.html
-    #   - https://www.gnu.org/software/gnulib/manual/html_node/roundeven.html
-    #
-    substituteInPlace test/ExecutionEngine/Interpreter/intrinsics.ll \
-      --replace "%roundeven32 = call float @llvm.roundeven.f32(float 0.000000e+00)" "" \
-      --replace "%roundeven64 = call double @llvm.roundeven.f64(double 0.000000e+00)" ""
-  '' + optionalString (stdenv.isDarwin && stdenv.hostPlatform.isx86) ''
-    # This test fails on darwin x86_64 because `sw_vers` reports a different
-    # macOS version than what LLVM finds by reading
-    # `/System/Library/CoreServices/SystemVersion.plist` (which is passed into
-    # the sandbox on macOS).
-    #
-    # The `sw_vers` provided by nixpkgs reports the macOS version associated
-    # with the `CoreFoundation` framework with which it was built. Because
-    # nixpkgs pins the SDK for `aarch64-darwin` and `x86_64-darwin` what
-    # `sw_vers` reports is not guaranteed to match the macOS version of the host
-    # that's building this derivation.
-    #
-    # Astute readers will note that we only _patch_ this test on aarch64-darwin
-    # (to use the nixpkgs provided `sw_vers`) instead of disabling it outright.
-    # So why does this test pass on aarch64?
-    #
-    # Well, it seems that `sw_vers` on aarch64 actually links against the _host_
-    # CoreFoundation framework instead of the nixpkgs provided one.
-    #
-    # Not entirely sure what the right fix is here. I'm assuming aarch64
-    # `sw_vers` doesn't intentionally link against the host `CoreFoundation`
-    # (still digging into how this ends up happening, will follow up) but that
-    # aside I think the more pertinent question is: should we be patching LLVM's
-    # macOS version detection logic to use `sw_vers` instead of reading host
-    # paths? This *is* a way in which details about builder machines can creep
-    # into the artifacts that are produced, affecting reproducibility, but it's
-    # not clear to me when/where/for what this even gets used in LLVM.
-    #
-    # TODO(@rrbutani): fix/follow-up
-    substituteInPlace unittests/TargetParser/Host.cpp \
-      --replace "getMacOSHostVersion" "DISABLED_getMacOSHostVersion"
-
-    # This test fails with a `dysmutil` crash; have not yet dug into what's
-    # going on here (TODO(@rrbutani)).
-    rm test/tools/dsymutil/ARM/obfuscated.test
-  '' + ''
-    # FileSystem permissions tests fail with various special bits
-    substituteInPlace unittests/Support/CMakeLists.txt \
-      --replace "Path.cpp" ""
-    rm unittests/Support/Path.cpp
-    substituteInPlace unittests/IR/CMakeLists.txt \
-      --replace "PassBuilderCallbacksTest.cpp" ""
-    rm unittests/IR/PassBuilderCallbacksTest.cpp
-    rm test/tools/llvm-objcopy/ELF/mirror-permissions-unix.test
-
-    # Fails in the presence of anti-virus software or other intrusion-detection software that
-    # modifies the atime when run. See #284056.
-    rm test/tools/llvm-objcopy/ELF/strip-preserve-atime.test
-
-    # timing-based tests are trouble
-    rm utils/lit/tests/googletest-timeout.py
-  '' + optionalString stdenv.hostPlatform.isMusl ''
-    patch -p1 -i ${../../common/llvm/TLI-musl.patch}
-    substituteInPlace unittests/Support/CMakeLists.txt \
-      --replace "add_subdirectory(DynamicLibrary)" ""
-    rm unittests/Support/DynamicLibrary/DynamicLibraryTest.cpp
-    # valgrind unhappy with musl or glibc, but fails w/musl only
-    rm test/CodeGen/AArch64/wineh4.mir
-  '' + optionalString stdenv.hostPlatform.isAarch32 ''
-    # skip failing X86 test cases on 32-bit ARM
-    rm test/DebugInfo/X86/convert-debugloc.ll
-    rm test/DebugInfo/X86/convert-inlined.ll
-    rm test/DebugInfo/X86/convert-linked.ll
-    rm test/tools/dsymutil/X86/op-convert.test
-    rm test/tools/gold/X86/split-dwarf.ll
-    rm test/tools/llvm-dwarfdump/X86/prettyprint_types.s
-    rm test/tools/llvm-dwarfdump/X86/simplified-template-names.s
-  '' + optionalString (stdenv.hostPlatform.system == "armv6l-linux") ''
-    # Seems to require certain floating point hardware (NEON?)
-    rm test/ExecutionEngine/frem.ll
-  '' + ''
-    patchShebangs test/BugPoint/compile-custom.ll.py
-  '';
-
-  preConfigure = ''
-    # Workaround for configure flags that need to have spaces
-    cmakeFlagsArray+=(
-      -DLLVM_LIT_ARGS="-svj''${NIX_BUILD_CORES} --no-progress-bar"
-    )
-  '';
-
-  # Defensive check: some paths (that we make symlinks to) depend on the release
-  # version, for example:
-  #  - https://github.com/llvm/llvm-project/blob/406bde9a15136254f2b10d9ef3a42033b3cb1b16/clang/lib/Headers/CMakeLists.txt#L185
-  #
-  # So we want to sure that the version in the source matches the release
-  # version we were given.
-  #
-  # We do this check here, in the LLVM build, because it happens early.
-  postConfigure = let
-    v = lib.versions;
-    major = v.major release_version;
-    minor = v.minor release_version;
-    patch = v.patch release_version;
-  in ''
-    # $1: part, $2: expected
-    check_version() {
-      part="''${1^^}"
-      part="$(cat include/llvm/Config/llvm-config.h  | grep "#define LLVM_VERSION_''${part} " | cut -d' ' -f3)"
-
-      if [[ "$part" != "$2" ]]; then
-        echo >&2 \
-          "mismatch in the $1 version! we have version ${release_version}" \
-          "and expected the $1 version to be '$2'; the source has '$part' instead"
-        exit 3
-      fi
-    }
-
-    check_version major ${major}
-    check_version minor ${minor}
-    check_version patch ${patch}
-  '';
-
-  # E.g. mesa.drivers use the build-id as a cache key (see #93946):
-  LDFLAGS = optionalString (enableSharedLibraries && !stdenv.isDarwin) "-Wl,--build-id=sha1";
-
-  hardeningDisable = [ "trivialautovarinit" ];
-
-  cmakeBuildType = if debugVersion then "Debug" else "Release";
-
-  cmakeFlags = with stdenv; let
-    # These flags influence llvm-config's BuildVariables.inc in addition to the
-    # general build. We need to make sure these are also passed via
-    # CROSS_TOOLCHAIN_FLAGS_NATIVE when cross-compiling or llvm-config-native
-    # will return different results from the cross llvm-config.
-    #
-    # Some flags don't need to be repassed because LLVM already does so (like
-    # CMAKE_BUILD_TYPE), others are irrelevant to the result.
-    flagsForLlvmConfig = [
-      "-DLLVM_INSTALL_PACKAGE_DIR=${placeholder "dev"}/lib/cmake/llvm"
-      "-DLLVM_ENABLE_RTTI=ON"
-    ] ++ optionals enableSharedLibraries [
-      "-DLLVM_LINK_LLVM_DYLIB=ON"
-    ];
-  in flagsForLlvmConfig ++ [
-    "-DLLVM_INSTALL_UTILS=ON"  # Needed by rustc
-    "-DLLVM_BUILD_TESTS=${if doCheck then "ON" else "OFF"}"
-    "-DLLVM_ENABLE_FFI=ON"
-    "-DLLVM_HOST_TRIPLE=${stdenv.hostPlatform.config}"
-    "-DLLVM_DEFAULT_TARGET_TRIPLE=${stdenv.hostPlatform.config}"
-    "-DLLVM_ENABLE_DUMP=ON"
-  ] ++ optionals stdenv.hostPlatform.isStatic [
-    # Disables building of shared libs, -fPIC is still injected by cc-wrapper
-    "-DLLVM_ENABLE_PIC=OFF"
-    "-DLLVM_BUILD_STATIC=ON"
-    "-DLLVM_LINK_LLVM_DYLIB=off"
-    # libxml2 needs to be disabled because the LLVM build system ignores its .la
-    # file and doesn't link zlib as well.
-    # https://github.com/ClangBuiltLinux/tc-build/issues/150#issuecomment-845418812
-    "-DLLVM_ENABLE_LIBXML2=OFF"
-  ] ++ optionals enableManpages [
-    "-DLLVM_BUILD_DOCS=ON"
-    "-DLLVM_ENABLE_SPHINX=ON"
-    "-DSPHINX_OUTPUT_MAN=ON"
-    "-DSPHINX_OUTPUT_HTML=OFF"
-    "-DSPHINX_WARNINGS_AS_ERRORS=OFF"
-  ] ++ optionals enableGoldPlugin [
-    # For LLVMgold plugin
-    "-DLLVM_BINUTILS_INCDIR=${libbfd.dev}/include"
-  ] ++ optionals isDarwin [
-    "-DLLVM_ENABLE_LIBCXX=ON"
-    "-DCAN_TARGET_i386=false"
-  ] ++ optionals ((stdenv.hostPlatform != stdenv.buildPlatform) && !(stdenv.buildPlatform.canExecute stdenv.hostPlatform)) [
-    "-DCMAKE_CROSSCOMPILING=True"
-    "-DLLVM_TABLEGEN=${buildLlvmTools.llvm}/bin/llvm-tblgen"
-    (
-      let
-        nativeCC = pkgsBuildBuild.targetPackages.stdenv.cc;
-        nativeBintools = nativeCC.bintools.bintools;
-        nativeToolchainFlags = [
-          "-DCMAKE_C_COMPILER=${nativeCC}/bin/${nativeCC.targetPrefix}cc"
-          "-DCMAKE_CXX_COMPILER=${nativeCC}/bin/${nativeCC.targetPrefix}c++"
-          "-DCMAKE_AR=${nativeBintools}/bin/${nativeBintools.targetPrefix}ar"
-          "-DCMAKE_STRIP=${nativeBintools}/bin/${nativeBintools.targetPrefix}strip"
-          "-DCMAKE_RANLIB=${nativeBintools}/bin/${nativeBintools.targetPrefix}ranlib"
-        ];
-        # We need to repass the custom GNUInstallDirs values, otherwise CMake
-        # will choose them for us, leading to wrong results in llvm-config-native
-        nativeInstallFlags = [
-          "-DCMAKE_INSTALL_PREFIX=${placeholder "out"}"
-          "-DCMAKE_INSTALL_BINDIR=${placeholder "out"}/bin"
-          "-DCMAKE_INSTALL_INCLUDEDIR=${placeholder "dev"}/include"
-          "-DCMAKE_INSTALL_LIBDIR=${placeholder "lib"}/lib"
-          "-DCMAKE_INSTALL_LIBEXECDIR=${placeholder "lib"}/libexec"
-        ];
-      in "-DCROSS_TOOLCHAIN_FLAGS_NATIVE:list="
-      + lib.concatStringsSep ";" (lib.concatLists [
-        flagsForLlvmConfig
-        nativeToolchainFlags
-        nativeInstallFlags
-      ])
-    )
-  ];
-
-  postInstall = ''
-    mkdir -p $python/share
-    mv $out/share/opt-viewer $python/share/opt-viewer
-    moveToOutput "bin/llvm-config*" "$dev"
-    substituteInPlace "$dev/lib/cmake/llvm/LLVMExports-${if debugVersion then "debug" else "release"}.cmake" \
-      --replace "\''${_IMPORT_PREFIX}/lib/lib" "$lib/lib/lib" \
-      --replace "$out/bin/llvm-config" "$dev/bin/llvm-config"
-    substituteInPlace "$dev/lib/cmake/llvm/LLVMConfig.cmake" \
-      --replace 'set(LLVM_BINARY_DIR "''${LLVM_INSTALL_PREFIX}")' 'set(LLVM_BINARY_DIR "'"$lib"'")'
-  ''
-  + optionalString (stdenv.isDarwin && enableSharedLibraries) ''
-    ln -s $lib/lib/libLLVM.dylib $lib/lib/libLLVM-${shortVersion}.dylib
-    ln -s $lib/lib/libLLVM.dylib $lib/lib/libLLVM-${release_version}.dylib
-  ''
-  + optionalString (stdenv.buildPlatform != stdenv.hostPlatform) ''
-    cp NATIVE/bin/llvm-config $dev/bin/llvm-config-native
-  '';
-
-  inherit doCheck;
-
-  checkTarget = "check-all";
-
-  # For the update script:
-  passthru.monorepoSrc = monorepoSrc;
-
-  requiredSystemFeatures = [ "big-parallel" ];
-  meta = llvm_meta // {
-    homepage = "https://llvm.org/";
-    description = "A collection of modular and reusable compiler and toolchain technologies";
-    longDescription = ''
-      The LLVM Project is a collection of modular and reusable compiler and
-      toolchain technologies. Despite its name, LLVM has little to do with
-      traditional virtual machines. The name "LLVM" itself is not an acronym; it
-      is the full name of the project.
-      LLVM began as a research project at the University of Illinois, with the
-      goal of providing a modern, SSA-based compilation strategy capable of
-      supporting both static and dynamic compilation of arbitrary programming
-      languages. Since then, LLVM has grown to be an umbrella project consisting
-      of a number of subprojects, many of which are being used in production by
-      a wide variety of commercial and open source projects as well as being
-      widely used in academic research. Code in the LLVM project is licensed
-      under the "Apache 2.0 License with LLVM exceptions".
-    '';
-  };
-} // lib.optionalAttrs enableManpages {
-  pname = "llvm-manpages";
-
-  propagatedBuildInputs = [];
-
-  ninjaFlags = [ "docs-llvm-man" ];
-  installTargets = [ "install-docs-llvm-man" ];
-
-  postPatch = null;
-  postInstall = null;
-
-  outputs = [ "out" ];
-
-  doCheck = false;
-
-  meta = llvm_meta // {
-    description = "man pages for LLVM ${version}";
-  };
-})
diff --git a/pkgs/development/compilers/llvm/17/default.nix b/pkgs/development/compilers/llvm/17/default.nix
index 9f4be2261b0c..b4039540badf 100644
--- a/pkgs/development/compilers/llvm/17/default.nix
+++ b/pkgs/development/compilers/llvm/17/default.nix
@@ -82,7 +82,57 @@ in let
 
   in {
 
-    libllvm = callPackage ./llvm {
+    libllvm = callPackage ../common/llvm {
+      patches = [
+        ./llvm/gnu-install-dirs.patch
+
+        # Running the tests involves invoking binaries (like `opt`) that depend on
+        # the LLVM dylibs and reference them by absolute install path (i.e. their
+        # nix store path).
+        #
+        # Because we have not yet run the install phase (we're running these tests
+        # as part of `checkPhase` instead of `installCheckPhase`) these absolute
+        # paths do not exist yet; to work around this we point the loader (`ld` on
+        # unix, `dyld` on macOS) at the `lib` directory which will later become this
+        # package's `lib` output.
+        #
+        # Previously we would just set `LD_LIBRARY_PATH` to include the build `lib`
+        # dir but:
+        #   - this doesn't generalize well to other platforms; `lit` doesn't forward
+        #     `DYLD_LIBRARY_PATH` (macOS):
+        #     + https://github.com/llvm/llvm-project/blob/0d89963df354ee309c15f67dc47c8ab3cb5d0fb2/llvm/utils/lit/lit/TestingConfig.py#L26
+        #   - even if `lit` forwarded this env var, we actually cannot set
+        #     `DYLD_LIBRARY_PATH` in the child processes `lit` launches because
+        #     `DYLD_LIBRARY_PATH` (and `DYLD_FALLBACK_LIBRARY_PATH`) is cleared for
+        #     "protected processes" (i.e. the python interpreter that runs `lit`):
+        #     https://stackoverflow.com/a/35570229
+        #   - other LLVM subprojects deal with this issue by having their `lit`
+        #     configuration set these env vars for us; it makes sense to do the same
+        #     for LLVM:
+        #     + https://github.com/llvm/llvm-project/blob/4c106cfdf7cf7eec861ad3983a3dd9a9e8f3a8ae/clang-tools-extra/test/Unit/lit.cfg.py#L22-L31
+        #
+        # !!! TODO: look into upstreaming this patch
+        ./llvm/llvm-lit-cfg-add-libs-to-dylib-path.patch
+
+        # `lit` has a mode where it executes run lines as a shell script which is
+        # constructs; this is problematic for macOS because it means that there's
+        # another process in between `lit` and the binaries being tested. As noted
+        # above, this means that `DYLD_LIBRARY_PATH` is cleared which means that our
+        # tests fail with dyld errors.
+        #
+        # To get around this we patch `lit` to reintroduce `DYLD_LIBRARY_PATH`, when
+        # present in the test configuration.
+        #
+        # It's not clear to me why this isn't an issue for LLVM developers running
+        # on macOS (nothing about this _seems_ nix specific)..
+        ./llvm/lit-shell-script-runner-set-dyld-library-path.patch
+      ];
+      pollyPatches = [
+        ./llvm/gnu-install-dirs-polly.patch
+
+        # Just like the `llvm-lit-cfg` patch, but for `polly`.
+        ./llvm/polly-lit-cfg-add-libs-to-dylib-path.patch
+      ];
       inherit llvm_meta;
     };
 
diff --git a/pkgs/development/compilers/llvm/17/llvm/default.nix b/pkgs/development/compilers/llvm/17/llvm/default.nix
deleted file mode 100644
index a045bea9f472..000000000000
--- a/pkgs/development/compilers/llvm/17/llvm/default.nix
+++ /dev/null
@@ -1,431 +0,0 @@
-{ lib, stdenv, llvm_meta
-, pkgsBuildBuild
-, monorepoSrc
-, runCommand
-, cmake
-, darwin
-, ninja
-, python3
-, python3Packages
-, libffi
-, enableGoldPlugin ? libbfd.hasPluginAPI
-, libbfd
-, libpfm
-, libxml2
-, ncurses
-, version
-, release_version
-, zlib
-, which
-, sysctl
-, buildLlvmTools
-, debugVersion ? false
-, doCheck ? (!stdenv.isx86_32 /* TODO: why */) && (!stdenv.hostPlatform.isMusl)
-  && (stdenv.hostPlatform == stdenv.buildPlatform)
-, enableManpages ? false
-, enableSharedLibraries ? !stdenv.hostPlatform.isStatic
-, enablePFM ? stdenv.isLinux /* PFM only supports Linux */
-  # broken for Ampere eMAG 8180 (c2.large.arm on Packet) #56245
-  # broken for the armv7l builder
-  && !stdenv.hostPlatform.isAarch
-, enablePolly ? true
-}:
-
-let
-  inherit (lib) optional optionals optionalString;
-
-  # Used when creating a version-suffixed symlink of libLLVM.dylib
-  shortVersion = with lib;
-    concatStringsSep "." (take 1 (splitString "." release_version));
-
-  # Ordinarily we would just the `doCheck` and `checkDeps` functionality
-  # `mkDerivation` gives us to manage our test dependencies (instead of breaking
-  # out `doCheck` as a package level attribute).
-  #
-  # Unfortunately `lit` does not forward `$PYTHONPATH` to children processes, in
-  # particular the children it uses to do feature detection.
-  #
-  # This means that python deps we add to `checkDeps` (which the python
-  # interpreter is made aware of via `$PYTHONPATH` – populated by the python
-  # setup hook) are not picked up by `lit` which causes it to skip tests.
-  #
-  # Adding `python3.withPackages (ps: [ ... ])` to `checkDeps` also doesn't work
-  # because this package is shadowed in `$PATH` by the regular `python3`
-  # package.
-  #
-  # So, we "manually" assemble one python derivation for the package to depend
-  # on, taking into account whether checks are enabled or not:
-  python = if doCheck then
-    # Note that we _explicitly_ ask for a python interpreter for our host
-    # platform here; the splicing that would ordinarily take care of this for
-    # us does not seem to work once we use `withPackages`.
-    let
-      checkDeps = ps: with ps; [ psutil ];
-    in pkgsBuildBuild.targetPackages.python3.withPackages checkDeps
-  else python3;
-
-in
-
-stdenv.mkDerivation (rec {
-  pname = "llvm";
-  inherit version;
-
-  src = runCommand "${pname}-src-${version}" {} (''
-    mkdir -p "$out"
-    cp -r ${monorepoSrc}/cmake "$out"
-    cp -r ${monorepoSrc}/${pname} "$out"
-    cp -r ${monorepoSrc}/third-party "$out"
-  '' + lib.optionalString enablePolly ''
-    chmod u+w "$out/${pname}/tools"
-    cp -r ${monorepoSrc}/polly "$out/${pname}/tools"
-  '');
-
-  sourceRoot = "${src.name}/${pname}";
-
-  outputs = [ "out" "lib" "dev" "python" ];
-
-  nativeBuildInputs = [ cmake ninja python ]
-    ++ optionals enableManpages [
-      # Note: we intentionally use `python3Packages` instead of `python3.pkgs`;
-      # splicing does *not* work with the latter. (TODO: fix)
-      python3Packages.sphinx python3Packages.recommonmark
-    ];
-
-  buildInputs = [ libxml2 libffi ]
-    ++ optional enablePFM libpfm; # exegesis
-
-  propagatedBuildInputs = [ ncurses zlib ];
-
-  nativeCheckInputs = [
-    which
-  ] ++ lib.optional stdenv.isDarwin sysctl;
-
-  patches = [
-    ./gnu-install-dirs.patch
-
-    # Running the tests involves invoking binaries (like `opt`) that depend on
-    # the LLVM dylibs and reference them by absolute install path (i.e. their
-    # nix store path).
-    #
-    # Because we have not yet run the install phase (we're running these tests
-    # as part of `checkPhase` instead of `installCheckPhase`) these absolute
-    # paths do not exist yet; to work around this we point the loader (`ld` on
-    # unix, `dyld` on macOS) at the `lib` directory which will later become this
-    # package's `lib` output.
-    #
-    # Previously we would just set `LD_LIBRARY_PATH` to include the build `lib`
-    # dir but:
-    #   - this doesn't generalize well to other platforms; `lit` doesn't forward
-    #     `DYLD_LIBRARY_PATH` (macOS):
-    #     + https://github.com/llvm/llvm-project/blob/0d89963df354ee309c15f67dc47c8ab3cb5d0fb2/llvm/utils/lit/lit/TestingConfig.py#L26
-    #   - even if `lit` forwarded this env var, we actually cannot set
-    #     `DYLD_LIBRARY_PATH` in the child processes `lit` launches because
-    #     `DYLD_LIBRARY_PATH` (and `DYLD_FALLBACK_LIBRARY_PATH`) is cleared for
-    #     "protected processes" (i.e. the python interpreter that runs `lit`):
-    #     https://stackoverflow.com/a/35570229
-    #   - other LLVM subprojects deal with this issue by having their `lit`
-    #     configuration set these env vars for us; it makes sense to do the same
-    #     for LLVM:
-    #     + https://github.com/llvm/llvm-project/blob/4c106cfdf7cf7eec861ad3983a3dd9a9e8f3a8ae/clang-tools-extra/test/Unit/lit.cfg.py#L22-L31
-    #
-    # !!! TODO: look into upstreaming this patch
-    ./llvm-lit-cfg-add-libs-to-dylib-path.patch
-
-    # `lit` has a mode where it executes run lines as a shell script which is
-    # constructs; this is problematic for macOS because it means that there's
-    # another process in between `lit` and the binaries being tested. As noted
-    # above, this means that `DYLD_LIBRARY_PATH` is cleared which means that our
-    # tests fail with dyld errors.
-    #
-    # To get around this we patch `lit` to reintroduce `DYLD_LIBRARY_PATH`, when
-    # present in the test configuration.
-    #
-    # It's not clear to me why this isn't an issue for LLVM developers running
-    # on macOS (nothing about this _seems_ nix specific)..
-    ./lit-shell-script-runner-set-dyld-library-path.patch
-  ] ++ lib.optionals enablePolly [
-    ./gnu-install-dirs-polly.patch
-
-    # Just like the `llvm-lit-cfg` patch, but for `polly`.
-    ./polly-lit-cfg-add-libs-to-dylib-path.patch
-  ];
-
-  postPatch = optionalString stdenv.isDarwin ''
-    substituteInPlace cmake/modules/AddLLVM.cmake \
-      --replace 'set(_install_name_dir INSTALL_NAME_DIR "@rpath")' "set(_install_name_dir)" \
-      --replace 'set(_install_rpath "@loader_path/../''${CMAKE_INSTALL_LIBDIR}''${LLVM_LIBDIR_SUFFIX}" ''${extra_libdir})' ""
-
-    # As of LLVM 15, marked as XFAIL on arm64 macOS but lit doesn't seem to pick
-    # this up: https://github.com/llvm/llvm-project/blob/c344d97a125b18f8fed0a64aace73c49a870e079/llvm/test/MC/ELF/cfi-version.ll#L7
-    rm test/MC/ELF/cfi-version.ll
-
-    # This test tries to call `sw_vers` by absolute path (`/usr/bin/sw_vers`)
-    # and thus fails under the sandbox:
-    substituteInPlace unittests/TargetParser/Host.cpp \
-      --replace '/usr/bin/sw_vers' "${(builtins.toString darwin.DarwinTools) + "/bin/sw_vers" }"
-
-    # This test tries to call the intrinsics `@llvm.roundeven.f32` and
-    # `@llvm.roundeven.f64` which seem to (incorrectly?) lower to `roundevenf`
-    # and `roundeven` on macOS.
-    #
-    # However these functions are glibc specific so the test fails:
-    #   - https://www.gnu.org/software/gnulib/manual/html_node/roundevenf.html
-    #   - https://www.gnu.org/software/gnulib/manual/html_node/roundeven.html
-    #
-    substituteInPlace test/ExecutionEngine/Interpreter/intrinsics.ll \
-      --replace "%roundeven32 = call float @llvm.roundeven.f32(float 0.000000e+00)" "" \
-      --replace "%roundeven64 = call double @llvm.roundeven.f64(double 0.000000e+00)" ""
-  '' + optionalString (stdenv.isDarwin && stdenv.hostPlatform.isx86) ''
-    # This test fails on darwin x86_64 because `sw_vers` reports a different
-    # macOS version than what LLVM finds by reading
-    # `/System/Library/CoreServices/SystemVersion.plist` (which is passed into
-    # the sandbox on macOS).
-    #
-    # The `sw_vers` provided by nixpkgs reports the macOS version associated
-    # with the `CoreFoundation` framework with which it was built. Because
-    # nixpkgs pins the SDK for `aarch64-darwin` and `x86_64-darwin` what
-    # `sw_vers` reports is not guaranteed to match the macOS version of the host
-    # that's building this derivation.
-    #
-    # Astute readers will note that we only _patch_ this test on aarch64-darwin
-    # (to use the nixpkgs provided `sw_vers`) instead of disabling it outright.
-    # So why does this test pass on aarch64?
-    #
-    # Well, it seems that `sw_vers` on aarch64 actually links against the _host_
-    # CoreFoundation framework instead of the nixpkgs provided one.
-    #
-    # Not entirely sure what the right fix is here. I'm assuming aarch64
-    # `sw_vers` doesn't intentionally link against the host `CoreFoundation`
-    # (still digging into how this ends up happening, will follow up) but that
-    # aside I think the more pertinent question is: should we be patching LLVM's
-    # macOS version detection logic to use `sw_vers` instead of reading host
-    # paths? This *is* a way in which details about builder machines can creep
-    # into the artifacts that are produced, affecting reproducibility, but it's
-    # not clear to me when/where/for what this even gets used in LLVM.
-    #
-    # TODO(@rrbutani): fix/follow-up
-    substituteInPlace unittests/TargetParser/Host.cpp \
-      --replace "getMacOSHostVersion" "DISABLED_getMacOSHostVersion"
-
-    # This test fails with a `dysmutil` crash; have not yet dug into what's
-    # going on here (TODO(@rrbutani)).
-    rm test/tools/dsymutil/ARM/obfuscated.test
-  '' + ''
-    # FileSystem permissions tests fail with various special bits
-    substituteInPlace unittests/Support/CMakeLists.txt \
-      --replace "Path.cpp" ""
-    rm unittests/Support/Path.cpp
-    substituteInPlace unittests/IR/CMakeLists.txt \
-      --replace "PassBuilderCallbacksTest.cpp" ""
-    rm unittests/IR/PassBuilderCallbacksTest.cpp
-    rm test/tools/llvm-objcopy/ELF/mirror-permissions-unix.test
-
-    # Fails in the presence of anti-virus software or other intrusion-detection software that
-    # modifies the atime when run. See #284056.
-    rm test/tools/llvm-objcopy/ELF/strip-preserve-atime.test
-  '' + optionalString stdenv.hostPlatform.isMusl ''
-    patch -p1 -i ${../../common/llvm/TLI-musl.patch}
-    substituteInPlace unittests/Support/CMakeLists.txt \
-      --replace "add_subdirectory(DynamicLibrary)" ""
-    rm unittests/Support/DynamicLibrary/DynamicLibraryTest.cpp
-    # valgrind unhappy with musl or glibc, but fails w/musl only
-    rm test/CodeGen/AArch64/wineh4.mir
-  '' + optionalString stdenv.hostPlatform.isAarch32 ''
-    # skip failing X86 test cases on 32-bit ARM
-    rm test/DebugInfo/X86/convert-debugloc.ll
-    rm test/DebugInfo/X86/convert-inlined.ll
-    rm test/DebugInfo/X86/convert-linked.ll
-    rm test/tools/dsymutil/X86/op-convert.test
-    rm test/tools/gold/X86/split-dwarf.ll
-    rm test/tools/llvm-dwarfdump/X86/prettyprint_types.s
-    rm test/tools/llvm-dwarfdump/X86/simplified-template-names.s
-    rm test/CodeGen/RISCV/attributes.ll
-    rm test/CodeGen/RISCV/xtheadmempair.ll
-  '' + optionalString (stdenv.hostPlatform.system == "armv6l-linux") ''
-    # Seems to require certain floating point hardware (NEON?)
-    rm test/ExecutionEngine/frem.ll
-  '' + ''
-    patchShebangs test/BugPoint/compile-custom.ll.py
-  '';
-
-  preConfigure = ''
-    # Workaround for configure flags that need to have spaces
-    cmakeFlagsArray+=(
-      -DLLVM_LIT_ARGS="-svj''${NIX_BUILD_CORES} --no-progress-bar"
-    )
-  '';
-
-  # Defensive check: some paths (that we make symlinks to) depend on the release
-  # version, for example:
-  #  - https://github.com/llvm/llvm-project/blob/406bde9a15136254f2b10d9ef3a42033b3cb1b16/clang/lib/Headers/CMakeLists.txt#L185
-  #
-  # So we want to sure that the version in the source matches the release
-  # version we were given.
-  #
-  # We do this check here, in the LLVM build, because it happens early.
-  postConfigure = let
-    v = lib.versions;
-    major = v.major release_version;
-    minor = v.minor release_version;
-    patch = v.patch release_version;
-  in ''
-    # $1: part, $2: expected
-    check_version() {
-      part="''${1^^}"
-      part="$(cat include/llvm/Config/llvm-config.h  | grep "#define LLVM_VERSION_''${part} " | cut -d' ' -f3)"
-
-      if [[ "$part" != "$2" ]]; then
-        echo >&2 \
-          "mismatch in the $1 version! we have version ${release_version}" \
-          "and expected the $1 version to be '$2'; the source has '$part' instead"
-        exit 3
-      fi
-    }
-
-    check_version major ${major}
-    check_version minor ${minor}
-    check_version patch ${patch}
-  '';
-
-  # E.g. mesa.drivers use the build-id as a cache key (see #93946):
-  LDFLAGS = optionalString (enableSharedLibraries && !stdenv.isDarwin) "-Wl,--build-id=sha1";
-
-  cmakeBuildType = if debugVersion then "Debug" else "Release";
-
-  cmakeFlags = with stdenv; let
-    # These flags influence llvm-config's BuildVariables.inc in addition to the
-    # general build. We need to make sure these are also passed via
-    # CROSS_TOOLCHAIN_FLAGS_NATIVE when cross-compiling or llvm-config-native
-    # will return different results from the cross llvm-config.
-    #
-    # Some flags don't need to be repassed because LLVM already does so (like
-    # CMAKE_BUILD_TYPE), others are irrelevant to the result.
-    flagsForLlvmConfig = [
-      "-DLLVM_INSTALL_PACKAGE_DIR=${placeholder "dev"}/lib/cmake/llvm"
-      "-DLLVM_ENABLE_RTTI=ON"
-    ] ++ optionals enableSharedLibraries [
-      "-DLLVM_LINK_LLVM_DYLIB=ON"
-    ];
-  in flagsForLlvmConfig ++ [
-    "-DLLVM_INSTALL_UTILS=ON"  # Needed by rustc
-    "-DLLVM_BUILD_TESTS=${if doCheck then "ON" else "OFF"}"
-    "-DLLVM_ENABLE_FFI=ON"
-    "-DLLVM_HOST_TRIPLE=${stdenv.hostPlatform.config}"
-    "-DLLVM_DEFAULT_TARGET_TRIPLE=${stdenv.hostPlatform.config}"
-    "-DLLVM_ENABLE_DUMP=ON"
-  ] ++ optionals stdenv.hostPlatform.isStatic [
-    # Disables building of shared libs, -fPIC is still injected by cc-wrapper
-    "-DLLVM_ENABLE_PIC=OFF"
-    "-DLLVM_BUILD_STATIC=ON"
-    "-DLLVM_LINK_LLVM_DYLIB=off"
-    # libxml2 needs to be disabled because the LLVM build system ignores its .la
-    # file and doesn't link zlib as well.
-    # https://github.com/ClangBuiltLinux/tc-build/issues/150#issuecomment-845418812
-    "-DLLVM_ENABLE_LIBXML2=OFF"
-  ] ++ optionals enableManpages [
-    "-DLLVM_BUILD_DOCS=ON"
-    "-DLLVM_ENABLE_SPHINX=ON"
-    "-DSPHINX_OUTPUT_MAN=ON"
-    "-DSPHINX_OUTPUT_HTML=OFF"
-    "-DSPHINX_WARNINGS_AS_ERRORS=OFF"
-  ] ++ optionals enableGoldPlugin [
-    # For LLVMgold plugin
-    "-DLLVM_BINUTILS_INCDIR=${libbfd.dev}/include"
-  ] ++ optionals isDarwin [
-    "-DLLVM_ENABLE_LIBCXX=ON"
-    "-DCAN_TARGET_i386=false"
-  ] ++ optionals ((stdenv.hostPlatform != stdenv.buildPlatform) && !(stdenv.buildPlatform.canExecute stdenv.hostPlatform)) [
-    "-DCMAKE_CROSSCOMPILING=True"
-    "-DLLVM_TABLEGEN=${buildLlvmTools.llvm}/bin/llvm-tblgen"
-    (
-      let
-        nativeCC = pkgsBuildBuild.targetPackages.stdenv.cc;
-        nativeBintools = nativeCC.bintools.bintools;
-        nativeToolchainFlags = [
-          "-DCMAKE_C_COMPILER=${nativeCC}/bin/${nativeCC.targetPrefix}cc"
-          "-DCMAKE_CXX_COMPILER=${nativeCC}/bin/${nativeCC.targetPrefix}c++"
-          "-DCMAKE_AR=${nativeBintools}/bin/${nativeBintools.targetPrefix}ar"
-          "-DCMAKE_STRIP=${nativeBintools}/bin/${nativeBintools.targetPrefix}strip"
-          "-DCMAKE_RANLIB=${nativeBintools}/bin/${nativeBintools.targetPrefix}ranlib"
-        ];
-        # We need to repass the custom GNUInstallDirs values, otherwise CMake
-        # will choose them for us, leading to wrong results in llvm-config-native
-        nativeInstallFlags = [
-          "-DCMAKE_INSTALL_PREFIX=${placeholder "out"}"
-          "-DCMAKE_INSTALL_BINDIR=${placeholder "out"}/bin"
-          "-DCMAKE_INSTALL_INCLUDEDIR=${placeholder "dev"}/include"
-          "-DCMAKE_INSTALL_LIBDIR=${placeholder "lib"}/lib"
-          "-DCMAKE_INSTALL_LIBEXECDIR=${placeholder "lib"}/libexec"
-        ];
-      in "-DCROSS_TOOLCHAIN_FLAGS_NATIVE:list="
-      + lib.concatStringsSep ";" (lib.concatLists [
-        flagsForLlvmConfig
-        nativeToolchainFlags
-        nativeInstallFlags
-      ])
-    )
-  ];
-
-  postInstall = ''
-    mkdir -p $python/share
-    mv $out/share/opt-viewer $python/share/opt-viewer
-    moveToOutput "bin/llvm-config*" "$dev"
-    substituteInPlace "$dev/lib/cmake/llvm/LLVMExports-${if debugVersion then "debug" else "release"}.cmake" \
-      --replace "\''${_IMPORT_PREFIX}/lib/lib" "$lib/lib/lib" \
-      --replace "$out/bin/llvm-config" "$dev/bin/llvm-config"
-    substituteInPlace "$dev/lib/cmake/llvm/LLVMConfig.cmake" \
-      --replace 'set(LLVM_BINARY_DIR "''${LLVM_INSTALL_PREFIX}")' 'set(LLVM_BINARY_DIR "'"$lib"'")'
-  ''
-  + optionalString (stdenv.isDarwin && enableSharedLibraries) ''
-    ln -s $lib/lib/libLLVM.dylib $lib/lib/libLLVM-${shortVersion}.dylib
-    ln -s $lib/lib/libLLVM.dylib $lib/lib/libLLVM-${release_version}.dylib
-  ''
-  + optionalString (stdenv.buildPlatform != stdenv.hostPlatform) ''
-    cp NATIVE/bin/llvm-config $dev/bin/llvm-config-native
-  '';
-
-  inherit doCheck;
-
-  checkTarget = "check-all";
-
-  # For the update script:
-  passthru.monorepoSrc = monorepoSrc;
-
-  requiredSystemFeatures = [ "big-parallel" ];
-  meta = llvm_meta // {
-    homepage = "https://llvm.org/";
-    description = "A collection of modular and reusable compiler and toolchain technologies";
-    longDescription = ''
-      The LLVM Project is a collection of modular and reusable compiler and
-      toolchain technologies. Despite its name, LLVM has little to do with
-      traditional virtual machines. The name "LLVM" itself is not an acronym; it
-      is the full name of the project.
-      LLVM began as a research project at the University of Illinois, with the
-      goal of providing a modern, SSA-based compilation strategy capable of
-      supporting both static and dynamic compilation of arbitrary programming
-      languages. Since then, LLVM has grown to be an umbrella project consisting
-      of a number of subprojects, many of which are being used in production by
-      a wide variety of commercial and open source projects as well as being
-      widely used in academic research. Code in the LLVM project is licensed
-      under the "Apache 2.0 License with LLVM exceptions".
-    '';
-  };
-} // lib.optionalAttrs enableManpages {
-  pname = "llvm-manpages";
-
-  propagatedBuildInputs = [];
-
-  ninjaFlags = [ "docs-llvm-man" ];
-  installTargets = [ "install-docs-llvm-man" ];
-
-  postPatch = null;
-  postInstall = null;
-
-  outputs = [ "out" ];
-
-  doCheck = false;
-
-  meta = llvm_meta // {
-    description = "man pages for LLVM ${version}";
-  };
-})
diff --git a/pkgs/development/compilers/llvm/18/default.nix b/pkgs/development/compilers/llvm/18/default.nix
index 3c78cd44fdf5..3c0e551791e5 100644
--- a/pkgs/development/compilers/llvm/18/default.nix
+++ b/pkgs/development/compilers/llvm/18/default.nix
@@ -25,7 +25,7 @@
   #   rev-version = /* human readable version; i.e. "unstable-2022-26-07" */;
   #   sha256 = /* checksum for this release, can omit if specifying your own `monorepoSrc` */;
   # }
-, officialRelease ? { version = "18.1.4"; sha256 = "sha256-LyQEb4ZJXm2hkPOM9XITIploMT2VKIQWxUFio7SXrc0="; }
+, officialRelease ? { version = "18.1.5"; sha256 = "0n44chqn96xsa00ryhwk8g0vv3zx908xjakkgjsa14sjr9mcsq8q"; }
   # i.e.:
   # {
   #   version = /* i.e. "15.0.0" */;
@@ -82,7 +82,57 @@ in let
 
   in {
 
-    libllvm = callPackage ./llvm {
+    libllvm = callPackage ../common/llvm {
+      patches = [
+        ./llvm/gnu-install-dirs.patch
+
+        # Running the tests involves invoking binaries (like `opt`) that depend on
+        # the LLVM dylibs and reference them by absolute install path (i.e. their
+        # nix store path).
+        #
+        # Because we have not yet run the install phase (we're running these tests
+        # as part of `checkPhase` instead of `installCheckPhase`) these absolute
+        # paths do not exist yet; to work around this we point the loader (`ld` on
+        # unix, `dyld` on macOS) at the `lib` directory which will later become this
+        # package's `lib` output.
+        #
+        # Previously we would just set `LD_LIBRARY_PATH` to include the build `lib`
+        # dir but:
+        #   - this doesn't generalize well to other platforms; `lit` doesn't forward
+        #     `DYLD_LIBRARY_PATH` (macOS):
+        #     + https://github.com/llvm/llvm-project/blob/0d89963df354ee309c15f67dc47c8ab3cb5d0fb2/llvm/utils/lit/lit/TestingConfig.py#L26
+        #   - even if `lit` forwarded this env var, we actually cannot set
+        #     `DYLD_LIBRARY_PATH` in the child processes `lit` launches because
+        #     `DYLD_LIBRARY_PATH` (and `DYLD_FALLBACK_LIBRARY_PATH`) is cleared for
+        #     "protected processes" (i.e. the python interpreter that runs `lit`):
+        #     https://stackoverflow.com/a/35570229
+        #   - other LLVM subprojects deal with this issue by having their `lit`
+        #     configuration set these env vars for us; it makes sense to do the same
+        #     for LLVM:
+        #     + https://github.com/llvm/llvm-project/blob/4c106cfdf7cf7eec861ad3983a3dd9a9e8f3a8ae/clang-tools-extra/test/Unit/lit.cfg.py#L22-L31
+        #
+        # !!! TODO: look into upstreaming this patch
+        ./llvm/llvm-lit-cfg-add-libs-to-dylib-path.patch
+
+        # `lit` has a mode where it executes run lines as a shell script which is
+        # constructs; this is problematic for macOS because it means that there's
+        # another process in between `lit` and the binaries being tested. As noted
+        # above, this means that `DYLD_LIBRARY_PATH` is cleared which means that our
+        # tests fail with dyld errors.
+        #
+        # To get around this we patch `lit` to reintroduce `DYLD_LIBRARY_PATH`, when
+        # present in the test configuration.
+        #
+        # It's not clear to me why this isn't an issue for LLVM developers running
+        # on macOS (nothing about this _seems_ nix specific)..
+        ./llvm/lit-shell-script-runner-set-dyld-library-path.patch
+      ];
+      pollyPatches = [
+        ./llvm/gnu-install-dirs-polly.patch
+
+        # Just like the `llvm-lit-cfg` patch, but for `polly`.
+        ./llvm/polly-lit-cfg-add-libs-to-dylib-path.patch
+      ];
       inherit llvm_meta;
     };
 
diff --git a/pkgs/development/compilers/llvm/common/clang/default.nix b/pkgs/development/compilers/llvm/common/clang/default.nix
index 2373795b49fd..58af0340a139 100644
--- a/pkgs/development/compilers/llvm/common/clang/default.nix
+++ b/pkgs/development/compilers/llvm/common/clang/default.nix
@@ -71,7 +71,11 @@ let
       "-DCLANG_PSEUDO_GEN=${buildLlvmTools.libclang.dev}/bin/clang-pseudo-gen"
     ]);
 
-    postPatch = (if lib.versionOlder release_version "13" then ''
+    postPatch = ''
+      # Make sure clang passes the correct location of libLTO to ld64
+      substituteInPlace lib/Driver/ToolChains/Darwin.cpp \
+        --replace-fail 'StringRef P = llvm::sys::path::parent_path(D.Dir);' 'StringRef P = "${lib.getLib libllvm}";'
+    '' + (if lib.versionOlder release_version "13" then ''
       sed -i -e 's/DriverArgs.hasArg(options::OPT_nostdlibinc)/true/' \
              -e 's/Args.hasArg(options::OPT_nostdlibinc)/true/' \
              lib/Driver/ToolChains/*.cpp
diff --git a/pkgs/development/compilers/llvm/18/llvm/default.nix b/pkgs/development/compilers/llvm/common/llvm/default.nix
index a9732763e9d7..705dfed8a249 100644
--- a/pkgs/development/compilers/llvm/18/llvm/default.nix
+++ b/pkgs/development/compilers/llvm/common/llvm/default.nix
@@ -1,6 +1,12 @@
-{ lib, stdenv, llvm_meta
+{ lib
+, stdenv
+, llvm_meta
 , pkgsBuildBuild
-, monorepoSrc
+, pollyPatches ? []
+, patches ? []
+, polly_src ? null
+, src ? null
+, monorepoSrc ? null
 , runCommand
 , cmake
 , darwin
@@ -8,6 +14,8 @@
 , python3
 , python3Packages
 , libffi
+  # TODO: Can this memory corruption bug still occur?
+  # <https://github.com/llvm/llvm-project/issues/61350>
 , enableGoldPlugin ? libbfd.hasPluginAPI
 , libbfd
 , libpfm
@@ -20,7 +28,9 @@
 , sysctl
 , buildLlvmTools
 , debugVersion ? false
-, doCheck ? (!stdenv.isx86_32 /* TODO: why */) && (!stdenv.hostPlatform.isMusl)
+, doCheck ? !stdenv.isAarch32 && (if lib.versionOlder release_version "15" then stdenv.isLinux else true)
+  && (!stdenv.isx86_32 /* TODO: why */) && (!stdenv.hostPlatform.isMusl)
+  && !(stdenv.hostPlatform.isPower64 && stdenv.hostPlatform.isBigEndian)
   && (stdenv.hostPlatform == stdenv.buildPlatform)
 , enableManpages ? false
 , enableSharedLibraries ? !stdenv.hostPlatform.isStatic
@@ -28,7 +38,7 @@
   # broken for Ampere eMAG 8180 (c2.large.arm on Packet) #56245
   # broken for the armv7l builder
   && !stdenv.hostPlatform.isAarch
-, enablePolly ? true
+, enablePolly ? lib.versionAtLeast release_version "14"
 }:
 
 let
@@ -64,27 +74,36 @@ let
     in pkgsBuildBuild.targetPackages.python3.withPackages checkDeps
   else python3;
 
+  pname = "llvm";
+
+  src' = if monorepoSrc != null then
+    runCommand "${pname}-src-${version}" {} (''
+      mkdir -p "$out"
+      cp -r ${monorepoSrc}/cmake "$out"
+      cp -r ${monorepoSrc}/${pname} "$out"
+      cp -r ${monorepoSrc}/third-party "$out"
+    '' + lib.optionalString enablePolly ''
+      chmod u+w "$out/${pname}/tools"
+      cp -r ${monorepoSrc}/polly "$out/${pname}/tools"
+    '') else src;
+
+  patches' = patches ++ lib.optionals enablePolly pollyPatches;
 in
 
 stdenv.mkDerivation (rec {
-  pname = "llvm";
-  inherit version;
-
-  src = runCommand "${pname}-src-${version}" {} (''
-    mkdir -p "$out"
-    cp -r ${monorepoSrc}/cmake "$out"
-    cp -r ${monorepoSrc}/${pname} "$out"
-    cp -r ${monorepoSrc}/third-party "$out"
-  '' + lib.optionalString enablePolly ''
-    chmod u+w "$out/${pname}/tools"
-    cp -r ${monorepoSrc}/polly "$out/${pname}/tools"
-  '');
+  inherit pname version;
 
-  sourceRoot = "${src.name}/${pname}";
+  src = src';
+  patches = patches';
+
+  sourceRoot = if lib.versionOlder release_version "13" then null
+    else "${src.name}/${pname}";
 
   outputs = [ "out" "lib" "dev" "python" ];
 
-  nativeBuildInputs = [ cmake ninja python ]
+  nativeBuildInputs = [ cmake ]
+    ++ (lib.optional (lib.versionAtLeast release_version "15") ninja)
+    ++ [ python ]
     ++ optionals enableManpages [
     # Note: we intentionally use `python3Packages` instead of `python3.pkgs`;
     # splicing does *not* work with the latter. (TODO: fix)
@@ -98,66 +117,14 @@ stdenv.mkDerivation (rec {
   buildInputs = [ libxml2 libffi ]
     ++ optional enablePFM libpfm; # exegesis
 
-  propagatedBuildInputs = [ ncurses zlib ];
-
-  nativeCheckInputs = [
-    which
-  ] ++ lib.optional stdenv.isDarwin sysctl;
-
-  patches = [
-    ./gnu-install-dirs.patch
-
-    # Running the tests involves invoking binaries (like `opt`) that depend on
-    # the LLVM dylibs and reference them by absolute install path (i.e. their
-    # nix store path).
-    #
-    # Because we have not yet run the install phase (we're running these tests
-    # as part of `checkPhase` instead of `installCheckPhase`) these absolute
-    # paths do not exist yet; to work around this we point the loader (`ld` on
-    # unix, `dyld` on macOS) at the `lib` directory which will later become this
-    # package's `lib` output.
-    #
-    # Previously we would just set `LD_LIBRARY_PATH` to include the build `lib`
-    # dir but:
-    #   - this doesn't generalize well to other platforms; `lit` doesn't forward
-    #     `DYLD_LIBRARY_PATH` (macOS):
-    #     + https://github.com/llvm/llvm-project/blob/0d89963df354ee309c15f67dc47c8ab3cb5d0fb2/llvm/utils/lit/lit/TestingConfig.py#L26
-    #   - even if `lit` forwarded this env var, we actually cannot set
-    #     `DYLD_LIBRARY_PATH` in the child processes `lit` launches because
-    #     `DYLD_LIBRARY_PATH` (and `DYLD_FALLBACK_LIBRARY_PATH`) is cleared for
-    #     "protected processes" (i.e. the python interpreter that runs `lit`):
-    #     https://stackoverflow.com/a/35570229
-    #   - other LLVM subprojects deal with this issue by having their `lit`
-    #     configuration set these env vars for us; it makes sense to do the same
-    #     for LLVM:
-    #     + https://github.com/llvm/llvm-project/blob/4c106cfdf7cf7eec861ad3983a3dd9a9e8f3a8ae/clang-tools-extra/test/Unit/lit.cfg.py#L22-L31
-    #
-    # !!! TODO: look into upstreaming this patch
-    ./llvm-lit-cfg-add-libs-to-dylib-path.patch
-
-    # `lit` has a mode where it executes run lines as a shell script which is
-    # constructs; this is problematic for macOS because it means that there's
-    # another process in between `lit` and the binaries being tested. As noted
-    # above, this means that `DYLD_LIBRARY_PATH` is cleared which means that our
-    # tests fail with dyld errors.
-    #
-    # To get around this we patch `lit` to reintroduce `DYLD_LIBRARY_PATH`, when
-    # present in the test configuration.
-    #
-    # It's not clear to me why this isn't an issue for LLVM developers running
-    # on macOS (nothing about this _seems_ nix specific)..
-    ./lit-shell-script-runner-set-dyld-library-path.patch
-  ] ++ lib.optionals enablePolly [
-    ./gnu-install-dirs-polly.patch
-
-    # Just like the `llvm-lit-cfg` patch, but for `polly`.
-    ./polly-lit-cfg-add-libs-to-dylib-path.patch
-  ];
+  propagatedBuildInputs = (lib.optional (lib.versionAtLeast release_version "14" || stdenv.buildPlatform == stdenv.hostPlatform) ncurses)
+    ++ [ zlib ];
 
-  postPatch = optionalString stdenv.isDarwin ''
+  postPatch = optionalString stdenv.isDarwin (''
     substituteInPlace cmake/modules/AddLLVM.cmake \
       --replace 'set(_install_name_dir INSTALL_NAME_DIR "@rpath")' "set(_install_name_dir)" \
       --replace 'set(_install_rpath "@loader_path/../''${CMAKE_INSTALL_LIBDIR}''${LLVM_LIBDIR_SUFFIX}" ''${extra_libdir})' ""
+  '' + (optionalString (lib.versionAtLeast release_version "15") (''
 
     # As of LLVM 15, marked as XFAIL on arm64 macOS but lit doesn't seem to pick
     # this up: https://github.com/llvm/llvm-project/blob/c344d97a125b18f8fed0a64aace73c49a870e079/llvm/test/MC/ELF/cfi-version.ll#L7
@@ -165,8 +132,13 @@ stdenv.mkDerivation (rec {
 
     # This test tries to call `sw_vers` by absolute path (`/usr/bin/sw_vers`)
     # and thus fails under the sandbox:
+  '' + (if lib.versionAtLeast release_version "16" then ''
     substituteInPlace unittests/TargetParser/Host.cpp \
       --replace '/usr/bin/sw_vers' "${(builtins.toString darwin.DarwinTools) + "/bin/sw_vers" }"
+  '' else ''
+    substituteInPlace unittests/Support/Host.cpp \
+      --replace '/usr/bin/sw_vers' "${(builtins.toString darwin.DarwinTools) + "/bin/sw_vers" }"
+  '') + optionalString (lib.versionAtLeast release_version "16") ''
 
     # This test tries to call the intrinsics `@llvm.roundeven.f32` and
     # `@llvm.roundeven.f64` which seem to (incorrectly?) lower to `roundevenf`
@@ -179,11 +151,32 @@ stdenv.mkDerivation (rec {
     substituteInPlace test/ExecutionEngine/Interpreter/intrinsics.ll \
       --replace "%roundeven32 = call float @llvm.roundeven.f32(float 0.000000e+00)" "" \
       --replace "%roundeven64 = call double @llvm.roundeven.f64(double 0.000000e+00)" ""
+  '' + optionalString (!stdenv.hostPlatform.isx86 && lib.versionAtLeast release_version "18") ''
 
     # fails when run in sandbox
     substituteInPlace unittests/Support/VirtualFileSystemTest.cpp \
       --replace "PhysicalFileSystemWorkingDirFailure" "DISABLED_PhysicalFileSystemWorkingDirFailure"
-  '' + optionalString (stdenv.isDarwin && stdenv.hostPlatform.isx86) ''
+  ''))) + optionalString (stdenv.isDarwin && stdenv.hostPlatform.isx86 && lib.versionAtLeast release_version "15") (optionalString (lib.versionOlder release_version "16") ''
+    # This test tries to call the intrinsics `@llvm.roundeven.f32` and
+    # `@llvm.roundeven.f64` which seem to (incorrectly?) lower to `roundevenf`
+    # and `roundeven` on x86_64 macOS.
+    #
+    # However these functions are glibc specific so the test fails:
+    #   - https://www.gnu.org/software/gnulib/manual/html_node/roundevenf.html
+    #   - https://www.gnu.org/software/gnulib/manual/html_node/roundeven.html
+    #
+    # TODO(@rrbutani): this seems to run fine on `aarch64-darwin`, why does it
+    # pass there?
+    substituteInPlace test/ExecutionEngine/Interpreter/intrinsics.ll \
+      --replace "%roundeven32 = call float @llvm.roundeven.f32(float 0.000000e+00)" "" \
+      --replace "%roundeven64 = call double @llvm.roundeven.f64(double 0.000000e+00)" ""
+
+  '' + ((optionalString (lib.versionAtLeast release_version "18") ''
+
+    # fails when run in sandbox
+    substituteInPlace unittests/Support/VirtualFileSystemTest.cpp \
+      --replace "PhysicalFileSystemWorkingDirFailure" "DISABLED_PhysicalFileSystemWorkingDirFailure"
+  '') + ''
     # This test fails on darwin x86_64 because `sw_vers` reports a different
     # macOS version than what LLVM finds by reading
     # `/System/Library/CoreServices/SystemVersion.plist` (which is passed into
@@ -212,13 +205,18 @@ stdenv.mkDerivation (rec {
     # not clear to me when/where/for what this even gets used in LLVM.
     #
     # TODO(@rrbutani): fix/follow-up
+  '' + (if lib.versionAtLeast release_version "16" then ''
     substituteInPlace unittests/TargetParser/Host.cpp \
       --replace "getMacOSHostVersion" "DISABLED_getMacOSHostVersion"
+  '' else ''
+    substituteInPlace unittests/Support/Host.cpp \
+      --replace "getMacOSHostVersion" "DISABLED_getMacOSHostVersion"
+  '') + ''
 
     # This test fails with a `dysmutil` crash; have not yet dug into what's
     # going on here (TODO(@rrbutani)).
     rm test/tools/dsymutil/ARM/obfuscated.test
-  '' + ''
+  '')) + ''
     # FileSystem permissions tests fail with various special bits
     substituteInPlace unittests/Support/CMakeLists.txt \
       --replace "Path.cpp" ""
@@ -226,13 +224,23 @@ stdenv.mkDerivation (rec {
     substituteInPlace unittests/IR/CMakeLists.txt \
       --replace "PassBuilderCallbacksTest.cpp" ""
     rm unittests/IR/PassBuilderCallbacksTest.cpp
+  '' + lib.optionalString (lib.versionAtLeast release_version "13") ''
     rm test/tools/llvm-objcopy/ELF/mirror-permissions-unix.test
+  '' + lib.optionalString (lib.versionOlder release_version "13") ''
+    # TODO: Fix failing tests:
+    rm test/DebugInfo/X86/vla-multi.ll
+  '' + lib.optionalString (lib.versionAtLeast release_version "16") (''
 
     # Fails in the presence of anti-virus software or other intrusion-detection software that
     # modifies the atime when run. See #284056.
     rm test/tools/llvm-objcopy/ELF/strip-preserve-atime.test
+  '' + lib.optionalString (lib.versionOlder release_version "17") ''
+
+  '') + lib.optionalString (lib.versionAtLeast release_version "15" && lib.versionOlder release_version "17") ''
+    # timing-based tests are trouble
+    rm utils/lit/tests/googletest-timeout.py
   '' + optionalString stdenv.hostPlatform.isMusl ''
-    patch -p1 -i ${../../common/llvm/TLI-musl.patch}
+    patch -p1 -i ${./TLI-musl.patch}
     substituteInPlace unittests/Support/CMakeLists.txt \
       --replace "add_subdirectory(DynamicLibrary)" ""
     rm unittests/Support/DynamicLibrary/DynamicLibraryTest.cpp
@@ -245,61 +253,59 @@ stdenv.mkDerivation (rec {
     rm test/DebugInfo/X86/convert-linked.ll
     rm test/tools/dsymutil/X86/op-convert.test
     rm test/tools/gold/X86/split-dwarf.ll
-    rm test/tools/llvm-dwarfdump/X86/prettyprint_types.s
-    rm test/tools/llvm-dwarfdump/X86/simplified-template-names.s
-    rm test/CodeGen/RISCV/attributes.ll
-    rm test/CodeGen/RISCV/xtheadmempair.ll
+    rm test/tools/llvm-objcopy/MachO/universal-object.test
   '' + optionalString (stdenv.hostPlatform.system == "armv6l-linux") ''
     # Seems to require certain floating point hardware (NEON?)
     rm test/ExecutionEngine/frem.ll
   '' + ''
     patchShebangs test/BugPoint/compile-custom.ll.py
-  '';
+  '' + (lib.optionalString (lib.versionOlder release_version "13") ''
+    # Tweak tests to ignore namespace part of type to support
+    # gcc-12: https://gcc.gnu.org/PR103598.
+    # The change below mangles strings like:
+    #    CHECK-NEXT: Starting llvm::Function pass manager run.
+    # to:
+    #    CHECK-NEXT: Starting {{.*}}Function pass manager run.
+    for f in \
+      test/Other/new-pass-manager.ll \
+      test/Other/new-pm-O0-defaults.ll \
+      test/Other/new-pm-defaults.ll \
+      test/Other/new-pm-lto-defaults.ll \
+      test/Other/new-pm-thinlto-defaults.ll \
+      test/Other/pass-pipeline-parsing.ll \
+      test/Transforms/Inline/cgscc-incremental-invalidate.ll \
+      test/Transforms/Inline/clear-analyses.ll \
+      test/Transforms/LoopUnroll/unroll-loop-invalidation.ll \
+      test/Transforms/SCCP/ipsccp-preserve-analysis.ll \
+      test/Transforms/SCCP/preserve-analysis.ll \
+      test/Transforms/SROA/dead-inst.ll \
+      test/tools/gold/X86/new-pm.ll \
+      ; do
+      echo "PATCH: $f"
+      substituteInPlace $f \
+        --replace 'Starting llvm::' 'Starting {{.*}}' \
+        --replace 'Finished llvm::' 'Finished {{.*}}'
+    done
+    # gcc-13 fix
+    sed -i '/#include <string>/i#include <cstdint>' \
+      include/llvm/DebugInfo/Symbolize/DIPrinter.h
+  '');
 
-  preConfigure = ''
+  preConfigure = if lib.versionAtLeast release_version "15" then ''
     # Workaround for configure flags that need to have spaces
     cmakeFlagsArray+=(
       -DLLVM_LIT_ARGS="-svj''${NIX_BUILD_CORES} --no-progress-bar"
     )
-  '';
-
-  # Defensive check: some paths (that we make symlinks to) depend on the release
-  # version, for example:
-  #  - https://github.com/llvm/llvm-project/blob/406bde9a15136254f2b10d9ef3a42033b3cb1b16/clang/lib/Headers/CMakeLists.txt#L185
-  #
-  # So we want to sure that the version in the source matches the release
-  # version we were given.
-  #
-  # We do this check here, in the LLVM build, because it happens early.
-  postConfigure = let
-    v = lib.versions;
-    major = v.major release_version;
-    minor = v.minor release_version;
-    patch = v.patch release_version;
-  in ''
-    # $1: part, $2: expected
-    check_version() {
-      part="''${1^^}"
-      part="$(cat include/llvm/Config/llvm-config.h  | grep "#define LLVM_VERSION_''${part} " | cut -d' ' -f3)"
-
-      if [[ "$part" != "$2" ]]; then
-        echo >&2 \
-          "mismatch in the $1 version! we have version ${release_version}" \
-          "and expected the $1 version to be '$2'; the source has '$part' instead"
-        exit 3
-      fi
-    }
-
-    check_version major ${major}
-    check_version minor ${minor}
-    check_version patch ${patch}
+  '' else ''
+    # Workaround for configure flags that need to have spaces
+    cmakeFlagsArray+=(
+      -DLLVM_LIT_ARGS='-svj''${NIX_BUILD_CORES} --no-progress-bar'
+    )
   '';
 
   # E.g. mesa.drivers use the build-id as a cache key (see #93946):
   LDFLAGS = optionalString (enableSharedLibraries && !stdenv.isDarwin) "-Wl,--build-id=sha1";
 
-  hardeningDisable = [ "trivialautovarinit" ];
-
   cmakeBuildType = if debugVersion then "Debug" else "Release";
 
   cmakeFlags = with stdenv; let
@@ -310,8 +316,11 @@ stdenv.mkDerivation (rec {
     #
     # Some flags don't need to be repassed because LLVM already does so (like
     # CMAKE_BUILD_TYPE), others are irrelevant to the result.
-    flagsForLlvmConfig = [
+    flagsForLlvmConfig = (if lib.versionOlder release_version "15" then [
+      "-DLLVM_INSTALL_CMAKE_DIR=${placeholder "dev"}/lib/cmake/llvm/"
+    ] else [
       "-DLLVM_INSTALL_PACKAGE_DIR=${placeholder "dev"}/lib/cmake/llvm"
+    ]) ++ [
       "-DLLVM_ENABLE_RTTI=ON"
     ] ++ optionals enableSharedLibraries [
       "-DLLVM_LINK_LLVM_DYLIB=ON"
@@ -327,7 +336,6 @@ stdenv.mkDerivation (rec {
     # Disables building of shared libs, -fPIC is still injected by cc-wrapper
     "-DLLVM_ENABLE_PIC=OFF"
     "-DLLVM_BUILD_STATIC=ON"
-    "-DLLVM_LINK_LLVM_DYLIB=off"
     # libxml2 needs to be disabled because the LLVM build system ignores its .la
     # file and doesn't link zlib as well.
     # https://github.com/ClangBuiltLinux/tc-build/issues/150#issuecomment-845418812
@@ -338,7 +346,7 @@ stdenv.mkDerivation (rec {
     "-DSPHINX_OUTPUT_MAN=ON"
     "-DSPHINX_OUTPUT_HTML=OFF"
     "-DSPHINX_WARNINGS_AS_ERRORS=OFF"
-  ] ++ optionals enableGoldPlugin [
+  ] ++ optionals (enableGoldPlugin) [
     "-DLLVM_BINUTILS_INCDIR=${libbfd.dev}/include"
   ] ++ optionals isDarwin [
     "-DLLVM_ENABLE_LIBCXX=ON"
@@ -382,8 +390,15 @@ stdenv.mkDerivation (rec {
     substituteInPlace "$dev/lib/cmake/llvm/LLVMExports-${if debugVersion then "debug" else "release"}.cmake" \
       --replace "\''${_IMPORT_PREFIX}/lib/lib" "$lib/lib/lib" \
       --replace "$out/bin/llvm-config" "$dev/bin/llvm-config"
+  '' + (if lib.versionOlder release_version "15" then ''
+    substituteInPlace "$dev/lib/cmake/llvm/LLVMConfig.cmake" \
+      --replace 'set(LLVM_BINARY_DIR "''${LLVM_INSTALL_PREFIX}")' 'set(LLVM_BINARY_DIR "''${LLVM_INSTALL_PREFIX}'"$lib"'")'
+  '' else ''
     substituteInPlace "$dev/lib/cmake/llvm/LLVMConfig.cmake" \
       --replace 'set(LLVM_BINARY_DIR "''${LLVM_INSTALL_PREFIX}")' 'set(LLVM_BINARY_DIR "'"$lib"'")'
+  '')
+  + optionalString (stdenv.isDarwin && enableSharedLibraries && lib.versionOlder release_version "18") ''
+    ln -s $lib/lib/libLLVM.dylib $lib/lib/libLLVM-${shortVersion}.dylib
   ''
   + optionalString (stdenv.isDarwin && enableSharedLibraries) ''
     ln -s $lib/lib/libLLVM.dylib $lib/lib/libLLVM-${release_version}.dylib
@@ -418,14 +433,11 @@ stdenv.mkDerivation (rec {
       under the "Apache 2.0 License with LLVM exceptions".
     '';
   };
-} // lib.optionalAttrs enableManpages {
+} // lib.optionalAttrs enableManpages ({
   pname = "llvm-manpages";
 
   propagatedBuildInputs = [];
 
-  ninjaFlags = [ "docs-llvm-man" ];
-  installTargets = [ "install-docs-llvm-man" ];
-
   postPatch = null;
   postInstall = null;
 
@@ -436,4 +448,79 @@ stdenv.mkDerivation (rec {
   meta = llvm_meta // {
     description = "man pages for LLVM ${version}";
   };
+} // (if lib.versionOlder release_version "15" then {
+  buildPhase = ''
+    make docs-llvm-man
+  '';
+
+  installPhase = ''
+    make -C docs install
+  '';
+} else {
+  ninjaFlags = [ "docs-llvm-man" ];
+  installTargets = [ "install-docs-llvm-man" ];
+
+  postPatch = null;
+  postInstall = null;
+})) // lib.optionalAttrs (lib.versionOlder release_version "13") {
+  inherit polly_src;
+
+  unpackPhase = ''
+    unpackFile $src
+    mv llvm-${release_version}* llvm
+    sourceRoot=$PWD/llvm
+  '' + optionalString enablePolly ''
+    unpackFile $polly_src
+    mv polly-* $sourceRoot/tools/polly
+  '';
+} // lib.optionalAttrs (lib.versionAtLeast release_version "13") {
+  nativeCheckInputs = [ which ] ++ lib.optional (stdenv.isDarwin && lib.versionAtLeast release_version "15") sysctl;
+} // lib.optionalAttrs (lib.versionOlder release_version "15") {
+  # hacky fix: created binaries need to be run before installation
+  preBuild = ''
+    mkdir -p $out/
+    ln -sv $PWD/lib $out
+  '';
+
+  postBuild = ''
+    rm -fR $out
+  '';
+
+  preCheck = ''
+    export LD_LIBRARY_PATH=$LD_LIBRARY_PATH''${LD_LIBRARY_PATH:+:}$PWD/lib
+  '';
+} // lib.optionalAttrs (lib.versionAtLeast release_version "15") {
+  # Defensive check: some paths (that we make symlinks to) depend on the release
+  # version, for example:
+  #  - https://github.com/llvm/llvm-project/blob/406bde9a15136254f2b10d9ef3a42033b3cb1b16/clang/lib/Headers/CMakeLists.txt#L185
+  #
+  # So we want to sure that the version in the source matches the release
+  # version we were given.
+  #
+  # We do this check here, in the LLVM build, because it happens early.
+  postConfigure = let
+    v = lib.versions;
+    major = v.major release_version;
+    minor = v.minor release_version;
+    patch = v.patch release_version;
+  in ''
+    # $1: part, $2: expected
+    check_version() {
+      part="''${1^^}"
+      part="$(cat include/llvm/Config/llvm-config.h  | grep "#define LLVM_VERSION_''${part} " | cut -d' ' -f3)"
+
+      if [[ "$part" != "$2" ]]; then
+        echo >&2 \
+          "mismatch in the $1 version! we have version ${release_version}" \
+          "and expected the $1 version to be '$2'; the source has '$part' instead"
+        exit 3
+      fi
+    }
+
+    check_version major ${major}
+    check_version minor ${minor}
+    check_version patch ${patch}
+  '';
+} // lib.optionalAttrs (lib.versionOlder release_version "17" || lib.versionAtLeast release_version "18") {
+  hardeningDisable = [ "trivialautovarinit" ];
 })
diff --git a/pkgs/development/compilers/llvm/git/default.nix b/pkgs/development/compilers/llvm/git/default.nix
index 1a34130679db..c995845fb6b3 100644
--- a/pkgs/development/compilers/llvm/git/default.nix
+++ b/pkgs/development/compilers/llvm/git/default.nix
@@ -87,7 +87,57 @@ in let
 
   in {
 
-    libllvm = callPackage ./llvm {
+    libllvm = callPackage ../common/llvm {
+      patches = [
+        ./llvm/gnu-install-dirs.patch
+
+        # Running the tests involves invoking binaries (like `opt`) that depend on
+        # the LLVM dylibs and reference them by absolute install path (i.e. their
+        # nix store path).
+        #
+        # Because we have not yet run the install phase (we're running these tests
+        # as part of `checkPhase` instead of `installCheckPhase`) these absolute
+        # paths do not exist yet; to work around this we point the loader (`ld` on
+        # unix, `dyld` on macOS) at the `lib` directory which will later become this
+        # package's `lib` output.
+        #
+        # Previously we would just set `LD_LIBRARY_PATH` to include the build `lib`
+        # dir but:
+        #   - this doesn't generalize well to other platforms; `lit` doesn't forward
+        #     `DYLD_LIBRARY_PATH` (macOS):
+        #     + https://github.com/llvm/llvm-project/blob/0d89963df354ee309c15f67dc47c8ab3cb5d0fb2/llvm/utils/lit/lit/TestingConfig.py#L26
+        #   - even if `lit` forwarded this env var, we actually cannot set
+        #     `DYLD_LIBRARY_PATH` in the child processes `lit` launches because
+        #     `DYLD_LIBRARY_PATH` (and `DYLD_FALLBACK_LIBRARY_PATH`) is cleared for
+        #     "protected processes" (i.e. the python interpreter that runs `lit`):
+        #     https://stackoverflow.com/a/35570229
+        #   - other LLVM subprojects deal with this issue by having their `lit`
+        #     configuration set these env vars for us; it makes sense to do the same
+        #     for LLVM:
+        #     + https://github.com/llvm/llvm-project/blob/4c106cfdf7cf7eec861ad3983a3dd9a9e8f3a8ae/clang-tools-extra/test/Unit/lit.cfg.py#L22-L31
+        #
+        # !!! TODO: look into upstreaming this patch
+        ./llvm/llvm-lit-cfg-add-libs-to-dylib-path.patch
+
+        # `lit` has a mode where it executes run lines as a shell script which is
+        # constructs; this is problematic for macOS because it means that there's
+        # another process in between `lit` and the binaries being tested. As noted
+        # above, this means that `DYLD_LIBRARY_PATH` is cleared which means that our
+        # tests fail with dyld errors.
+        #
+        # To get around this we patch `lit` to reintroduce `DYLD_LIBRARY_PATH`, when
+        # present in the test configuration.
+        #
+        # It's not clear to me why this isn't an issue for LLVM developers running
+        # on macOS (nothing about this _seems_ nix specific)..
+        ./llvm/lit-shell-script-runner-set-dyld-library-path.patch
+      ];
+      pollyPatches = [
+        ./llvm/gnu-install-dirs-polly.patch
+
+        # Just like the `llvm-lit-cfg` patch, but for `polly`.
+        ./llvm/polly-lit-cfg-add-libs-to-dylib-path.patch
+      ];
       inherit llvm_meta;
     };
 
diff --git a/pkgs/development/compilers/llvm/git/llvm/default.nix b/pkgs/development/compilers/llvm/git/llvm/default.nix
deleted file mode 100644
index 8987103e22fe..000000000000
--- a/pkgs/development/compilers/llvm/git/llvm/default.nix
+++ /dev/null
@@ -1,435 +0,0 @@
-{ lib, stdenv, llvm_meta
-, pkgsBuildBuild
-, monorepoSrc
-, runCommand
-, cmake
-, darwin
-, ninja
-, python3
-, python3Packages
-, libffi
-, enableGoldPlugin ? libbfd.hasPluginAPI
-, libbfd
-, libpfm
-, libxml2
-, ncurses
-, version
-, release_version
-, zlib
-, which
-, sysctl
-, buildLlvmTools
-, debugVersion ? false
-, doCheck ? (!stdenv.isx86_32 /* TODO: why */) && (!stdenv.hostPlatform.isMusl)
-  && (stdenv.hostPlatform == stdenv.buildPlatform)
-, enableManpages ? false
-, enableSharedLibraries ? !stdenv.hostPlatform.isStatic
-, enablePFM ? stdenv.isLinux /* PFM only supports Linux */
-  # broken for Ampere eMAG 8180 (c2.large.arm on Packet) #56245
-  # broken for the armv7l builder
-  && !stdenv.hostPlatform.isAarch
-, enablePolly ? true
-}:
-
-let
-  inherit (lib) optional optionals optionalString;
-
-  # Used when creating a version-suffixed symlink of libLLVM.dylib
-  shortVersion = with lib;
-    concatStringsSep "." (take 1 (splitString "." release_version));
-
-  # Ordinarily we would just the `doCheck` and `checkDeps` functionality
-  # `mkDerivation` gives us to manage our test dependencies (instead of breaking
-  # out `doCheck` as a package level attribute).
-  #
-  # Unfortunately `lit` does not forward `$PYTHONPATH` to children processes, in
-  # particular the children it uses to do feature detection.
-  #
-  # This means that python deps we add to `checkDeps` (which the python
-  # interpreter is made aware of via `$PYTHONPATH` – populated by the python
-  # setup hook) are not picked up by `lit` which causes it to skip tests.
-  #
-  # Adding `python3.withPackages (ps: [ ... ])` to `checkDeps` also doesn't work
-  # because this package is shadowed in `$PATH` by the regular `python3`
-  # package.
-  #
-  # So, we "manually" assemble one python derivation for the package to depend
-  # on, taking into account whether checks are enabled or not:
-  python = if doCheck then
-    # Note that we _explicitly_ ask for a python interpreter for our host
-    # platform here; the splicing that would ordinarily take care of this for
-    # us does not seem to work once we use `withPackages`.
-    let
-      checkDeps = ps: with ps; [ psutil ];
-    in pkgsBuildBuild.targetPackages.python3.withPackages checkDeps
-  else python3;
-
-in
-
-stdenv.mkDerivation (rec {
-  pname = "llvm";
-  inherit version;
-
-  src = runCommand "${pname}-src-${version}" {} (''
-    mkdir -p "$out"
-    cp -r ${monorepoSrc}/cmake "$out"
-    cp -r ${monorepoSrc}/${pname} "$out"
-    cp -r ${monorepoSrc}/third-party "$out"
-  '' + lib.optionalString enablePolly ''
-    chmod u+w "$out/${pname}/tools"
-    cp -r ${monorepoSrc}/polly "$out/${pname}/tools"
-  '');
-
-  sourceRoot = "${src.name}/${pname}";
-
-  outputs = [ "out" "lib" "dev" "python" ];
-
-  nativeBuildInputs = [ cmake ninja python ]
-    ++ optionals enableManpages [
-    # Note: we intentionally use `python3Packages` instead of `python3.pkgs`;
-    # splicing does *not* work with the latter. (TODO: fix)
-    python3Packages.sphinx
-  ] ++ optionals (lib.versionOlder version "18" && enableManpages) [
-    python3Packages.recommonmark
-  ] ++ optionals (lib.versionAtLeast version "18" && enableManpages) [
-    python3Packages.myst-parser
-  ];
-
-  buildInputs = [ libxml2 libffi ]
-    ++ optional enablePFM libpfm; # exegesis
-
-  propagatedBuildInputs = [ ncurses zlib ];
-
-  nativeCheckInputs = [
-    which
-  ] ++ lib.optional stdenv.isDarwin sysctl;
-
-  patches = [
-    ./gnu-install-dirs.patch
-
-    # Running the tests involves invoking binaries (like `opt`) that depend on
-    # the LLVM dylibs and reference them by absolute install path (i.e. their
-    # nix store path).
-    #
-    # Because we have not yet run the install phase (we're running these tests
-    # as part of `checkPhase` instead of `installCheckPhase`) these absolute
-    # paths do not exist yet; to work around this we point the loader (`ld` on
-    # unix, `dyld` on macOS) at the `lib` directory which will later become this
-    # package's `lib` output.
-    #
-    # Previously we would just set `LD_LIBRARY_PATH` to include the build `lib`
-    # dir but:
-    #   - this doesn't generalize well to other platforms; `lit` doesn't forward
-    #     `DYLD_LIBRARY_PATH` (macOS):
-    #     + https://github.com/llvm/llvm-project/blob/0d89963df354ee309c15f67dc47c8ab3cb5d0fb2/llvm/utils/lit/lit/TestingConfig.py#L26
-    #   - even if `lit` forwarded this env var, we actually cannot set
-    #     `DYLD_LIBRARY_PATH` in the child processes `lit` launches because
-    #     `DYLD_LIBRARY_PATH` (and `DYLD_FALLBACK_LIBRARY_PATH`) is cleared for
-    #     "protected processes" (i.e. the python interpreter that runs `lit`):
-    #     https://stackoverflow.com/a/35570229
-    #   - other LLVM subprojects deal with this issue by having their `lit`
-    #     configuration set these env vars for us; it makes sense to do the same
-    #     for LLVM:
-    #     + https://github.com/llvm/llvm-project/blob/4c106cfdf7cf7eec861ad3983a3dd9a9e8f3a8ae/clang-tools-extra/test/Unit/lit.cfg.py#L22-L31
-    #
-    # !!! TODO: look into upstreaming this patch
-    ./llvm-lit-cfg-add-libs-to-dylib-path.patch
-
-    # `lit` has a mode where it executes run lines as a shell script which is
-    # constructs; this is problematic for macOS because it means that there's
-    # another process in between `lit` and the binaries being tested. As noted
-    # above, this means that `DYLD_LIBRARY_PATH` is cleared which means that our
-    # tests fail with dyld errors.
-    #
-    # To get around this we patch `lit` to reintroduce `DYLD_LIBRARY_PATH`, when
-    # present in the test configuration.
-    #
-    # It's not clear to me why this isn't an issue for LLVM developers running
-    # on macOS (nothing about this _seems_ nix specific)..
-    ./lit-shell-script-runner-set-dyld-library-path.patch
-  ] ++ lib.optionals enablePolly [
-    ./gnu-install-dirs-polly.patch
-
-    # Just like the `llvm-lit-cfg` patch, but for `polly`.
-    ./polly-lit-cfg-add-libs-to-dylib-path.patch
-  ];
-
-  postPatch = optionalString stdenv.isDarwin ''
-    substituteInPlace cmake/modules/AddLLVM.cmake \
-      --replace 'set(_install_name_dir INSTALL_NAME_DIR "@rpath")' "set(_install_name_dir)" \
-      --replace 'set(_install_rpath "@loader_path/../''${CMAKE_INSTALL_LIBDIR}''${LLVM_LIBDIR_SUFFIX}" ''${extra_libdir})' ""
-
-    # As of LLVM 15, marked as XFAIL on arm64 macOS but lit doesn't seem to pick
-    # this up: https://github.com/llvm/llvm-project/blob/c344d97a125b18f8fed0a64aace73c49a870e079/llvm/test/MC/ELF/cfi-version.ll#L7
-    rm test/MC/ELF/cfi-version.ll
-
-    # This test tries to call `sw_vers` by absolute path (`/usr/bin/sw_vers`)
-    # and thus fails under the sandbox:
-    substituteInPlace unittests/TargetParser/Host.cpp \
-      --replace '/usr/bin/sw_vers' "${(builtins.toString darwin.DarwinTools) + "/bin/sw_vers" }"
-
-    # This test tries to call the intrinsics `@llvm.roundeven.f32` and
-    # `@llvm.roundeven.f64` which seem to (incorrectly?) lower to `roundevenf`
-    # and `roundeven` on macOS.
-    #
-    # However these functions are glibc specific so the test fails:
-    #   - https://www.gnu.org/software/gnulib/manual/html_node/roundevenf.html
-    #   - https://www.gnu.org/software/gnulib/manual/html_node/roundeven.html
-    #
-    substituteInPlace test/ExecutionEngine/Interpreter/intrinsics.ll \
-      --replace "%roundeven32 = call float @llvm.roundeven.f32(float 0.000000e+00)" "" \
-      --replace "%roundeven64 = call double @llvm.roundeven.f64(double 0.000000e+00)" ""
-
-    # fails when run in sandbox
-    substituteInPlace unittests/Support/VirtualFileSystemTest.cpp \
-      --replace "PhysicalFileSystemWorkingDirFailure" "DISABLED_PhysicalFileSystemWorkingDirFailure"
-  '' + optionalString (stdenv.isDarwin && stdenv.hostPlatform.isx86) ''
-    # This test fails on darwin x86_64 because `sw_vers` reports a different
-    # macOS version than what LLVM finds by reading
-    # `/System/Library/CoreServices/SystemVersion.plist` (which is passed into
-    # the sandbox on macOS).
-    #
-    # The `sw_vers` provided by nixpkgs reports the macOS version associated
-    # with the `CoreFoundation` framework with which it was built. Because
-    # nixpkgs pins the SDK for `aarch64-darwin` and `x86_64-darwin` what
-    # `sw_vers` reports is not guaranteed to match the macOS version of the host
-    # that's building this derivation.
-    #
-    # Astute readers will note that we only _patch_ this test on aarch64-darwin
-    # (to use the nixpkgs provided `sw_vers`) instead of disabling it outright.
-    # So why does this test pass on aarch64?
-    #
-    # Well, it seems that `sw_vers` on aarch64 actually links against the _host_
-    # CoreFoundation framework instead of the nixpkgs provided one.
-    #
-    # Not entirely sure what the right fix is here. I'm assuming aarch64
-    # `sw_vers` doesn't intentionally link against the host `CoreFoundation`
-    # (still digging into how this ends up happening, will follow up) but that
-    # aside I think the more pertinent question is: should we be patching LLVM's
-    # macOS version detection logic to use `sw_vers` instead of reading host
-    # paths? This *is* a way in which details about builder machines can creep
-    # into the artifacts that are produced, affecting reproducibility, but it's
-    # not clear to me when/where/for what this even gets used in LLVM.
-    #
-    # TODO(@rrbutani): fix/follow-up
-    substituteInPlace unittests/TargetParser/Host.cpp \
-      --replace "getMacOSHostVersion" "DISABLED_getMacOSHostVersion"
-  '' + ''
-    # FileSystem permissions tests fail with various special bits
-    substituteInPlace unittests/Support/CMakeLists.txt \
-      --replace "Path.cpp" ""
-    rm unittests/Support/Path.cpp
-    substituteInPlace unittests/IR/CMakeLists.txt \
-      --replace "PassBuilderCallbacksTest.cpp" ""
-    rm unittests/IR/PassBuilderCallbacksTest.cpp
-    rm test/tools/llvm-objcopy/ELF/mirror-permissions-unix.test
-
-    # Fails in the presence of anti-virus software or other intrusion-detection software that
-    # modifies the atime when run. See #284056.
-    rm test/tools/llvm-objcopy/ELF/strip-preserve-atime.test
-  '' + optionalString stdenv.hostPlatform.isMusl ''
-    patch -p1 -i ${../../common/llvm/TLI-musl.patch}
-    substituteInPlace unittests/Support/CMakeLists.txt \
-      --replace "add_subdirectory(DynamicLibrary)" ""
-    rm unittests/Support/DynamicLibrary/DynamicLibraryTest.cpp
-    # valgrind unhappy with musl or glibc, but fails w/musl only
-    rm test/CodeGen/AArch64/wineh4.mir
-  '' + optionalString stdenv.hostPlatform.isAarch32 ''
-    # skip failing X86 test cases on 32-bit ARM
-    rm test/DebugInfo/X86/convert-debugloc.ll
-    rm test/DebugInfo/X86/convert-inlined.ll
-    rm test/DebugInfo/X86/convert-linked.ll
-    rm test/tools/dsymutil/X86/op-convert.test
-    rm test/tools/gold/X86/split-dwarf.ll
-    rm test/tools/llvm-dwarfdump/X86/prettyprint_types.s
-    rm test/tools/llvm-dwarfdump/X86/simplified-template-names.s
-    rm test/CodeGen/RISCV/attributes.ll
-    rm test/CodeGen/RISCV/xtheadmempair.ll
-  '' + optionalString (stdenv.hostPlatform.system == "armv6l-linux") ''
-    # Seems to require certain floating point hardware (NEON?)
-    rm test/ExecutionEngine/frem.ll
-  '' + ''
-    patchShebangs test/BugPoint/compile-custom.ll.py
-  '';
-
-  preConfigure = ''
-    # Workaround for configure flags that need to have spaces
-    cmakeFlagsArray+=(
-      -DLLVM_LIT_ARGS="-svj''${NIX_BUILD_CORES} --no-progress-bar"
-    )
-  '';
-
-  # Defensive check: some paths (that we make symlinks to) depend on the release
-  # version, for example:
-  #  - https://github.com/llvm/llvm-project/blob/406bde9a15136254f2b10d9ef3a42033b3cb1b16/clang/lib/Headers/CMakeLists.txt#L185
-  #
-  # So we want to sure that the version in the source matches the release
-  # version we were given.
-  #
-  # We do this check here, in the LLVM build, because it happens early.
-  postConfigure = let
-    v = lib.versions;
-    major = v.major release_version;
-    minor = v.minor release_version;
-    patch = v.patch release_version;
-  in ''
-    # $1: part, $2: expected
-    check_version() {
-      part="''${1^^}"
-      part="$(cat include/llvm/Config/llvm-config.h  | grep "#define LLVM_VERSION_''${part} " | cut -d' ' -f3)"
-
-      if [[ "$part" != "$2" ]]; then
-        echo >&2 \
-          "mismatch in the $1 version! we have version ${release_version}" \
-          "and expected the $1 version to be '$2'; the source has '$part' instead"
-        exit 3
-      fi
-    }
-
-    check_version major ${major}
-    check_version minor ${minor}
-    check_version patch ${patch}
-  '';
-
-  # E.g. mesa.drivers use the build-id as a cache key (see #93946):
-  LDFLAGS = optionalString (enableSharedLibraries && !stdenv.isDarwin) "-Wl,--build-id=sha1";
-
-  hardeningDisable = [ "trivialautovarinit" ];
-
-  cmakeBuildType = if debugVersion then "Debug" else "Release";
-
-  cmakeFlags = with stdenv; let
-    # These flags influence llvm-config's BuildVariables.inc in addition to the
-    # general build. We need to make sure these are also passed via
-    # CROSS_TOOLCHAIN_FLAGS_NATIVE when cross-compiling or llvm-config-native
-    # will return different results from the cross llvm-config.
-    #
-    # Some flags don't need to be repassed because LLVM already does so (like
-    # CMAKE_BUILD_TYPE), others are irrelevant to the result.
-    flagsForLlvmConfig = [
-      "-DLLVM_INSTALL_PACKAGE_DIR=${placeholder "dev"}/lib/cmake/llvm"
-      "-DLLVM_ENABLE_RTTI=ON"
-    ] ++ optionals enableSharedLibraries [
-      "-DLLVM_LINK_LLVM_DYLIB=ON"
-    ];
-  in flagsForLlvmConfig ++ [
-    "-DLLVM_INSTALL_UTILS=ON"  # Needed by rustc
-    "-DLLVM_BUILD_TESTS=${if doCheck then "ON" else "OFF"}"
-    "-DLLVM_ENABLE_FFI=ON"
-    "-DLLVM_HOST_TRIPLE=${stdenv.hostPlatform.config}"
-    "-DLLVM_DEFAULT_TARGET_TRIPLE=${stdenv.hostPlatform.config}"
-    "-DLLVM_ENABLE_DUMP=ON"
-  ] ++ optionals stdenv.hostPlatform.isStatic [
-    # Disables building of shared libs, -fPIC is still injected by cc-wrapper
-    "-DLLVM_ENABLE_PIC=OFF"
-    "-DLLVM_BUILD_STATIC=ON"
-    "-DLLVM_LINK_LLVM_DYLIB=off"
-    # libxml2 needs to be disabled because the LLVM build system ignores its .la
-    # file and doesn't link zlib as well.
-    # https://github.com/ClangBuiltLinux/tc-build/issues/150#issuecomment-845418812
-    "-DLLVM_ENABLE_LIBXML2=OFF"
-  ] ++ optionals enableManpages [
-    "-DLLVM_BUILD_DOCS=ON"
-    "-DLLVM_ENABLE_SPHINX=ON"
-    "-DSPHINX_OUTPUT_MAN=ON"
-    "-DSPHINX_OUTPUT_HTML=OFF"
-    "-DSPHINX_WARNINGS_AS_ERRORS=OFF"
-  ] ++ optionals enableGoldPlugin [
-    "-DLLVM_BINUTILS_INCDIR=${libbfd.dev}/include"
-  ] ++ optionals isDarwin [
-    "-DLLVM_ENABLE_LIBCXX=ON"
-    "-DCAN_TARGET_i386=false"
-  ] ++ optionals ((stdenv.hostPlatform != stdenv.buildPlatform) && !(stdenv.buildPlatform.canExecute stdenv.hostPlatform)) [
-    "-DCMAKE_CROSSCOMPILING=True"
-    "-DLLVM_TABLEGEN=${buildLlvmTools.llvm}/bin/llvm-tblgen"
-    (
-      let
-        nativeCC = pkgsBuildBuild.targetPackages.stdenv.cc;
-        nativeBintools = nativeCC.bintools.bintools;
-        nativeToolchainFlags = [
-          "-DCMAKE_C_COMPILER=${nativeCC}/bin/${nativeCC.targetPrefix}cc"
-          "-DCMAKE_CXX_COMPILER=${nativeCC}/bin/${nativeCC.targetPrefix}c++"
-          "-DCMAKE_AR=${nativeBintools}/bin/${nativeBintools.targetPrefix}ar"
-          "-DCMAKE_STRIP=${nativeBintools}/bin/${nativeBintools.targetPrefix}strip"
-          "-DCMAKE_RANLIB=${nativeBintools}/bin/${nativeBintools.targetPrefix}ranlib"
-        ];
-        # We need to repass the custom GNUInstallDirs values, otherwise CMake
-        # will choose them for us, leading to wrong results in llvm-config-native
-        nativeInstallFlags = [
-          "-DCMAKE_INSTALL_PREFIX=${placeholder "out"}"
-          "-DCMAKE_INSTALL_BINDIR=${placeholder "out"}/bin"
-          "-DCMAKE_INSTALL_INCLUDEDIR=${placeholder "dev"}/include"
-          "-DCMAKE_INSTALL_LIBDIR=${placeholder "lib"}/lib"
-          "-DCMAKE_INSTALL_LIBEXECDIR=${placeholder "lib"}/libexec"
-        ];
-      in "-DCROSS_TOOLCHAIN_FLAGS_NATIVE:list="
-      + lib.concatStringsSep ";" (lib.concatLists [
-        flagsForLlvmConfig
-        nativeToolchainFlags
-        nativeInstallFlags
-      ])
-    )
-  ];
-
-  postInstall = ''
-    mkdir -p $python/share
-    mv $out/share/opt-viewer $python/share/opt-viewer
-    moveToOutput "bin/llvm-config*" "$dev"
-    substituteInPlace "$dev/lib/cmake/llvm/LLVMExports-${if debugVersion then "debug" else "release"}.cmake" \
-      --replace "\''${_IMPORT_PREFIX}/lib/lib" "$lib/lib/lib" \
-      --replace "$out/bin/llvm-config" "$dev/bin/llvm-config"
-    substituteInPlace "$dev/lib/cmake/llvm/LLVMConfig.cmake" \
-      --replace 'set(LLVM_BINARY_DIR "''${LLVM_INSTALL_PREFIX}")' 'set(LLVM_BINARY_DIR "'"$lib"'")'
-  ''
-  + optionalString (stdenv.isDarwin && enableSharedLibraries) ''
-    ln -s $lib/lib/libLLVM.dylib $lib/lib/libLLVM-${release_version}.dylib
-  ''
-  + optionalString (stdenv.buildPlatform != stdenv.hostPlatform) ''
-    cp NATIVE/bin/llvm-config $dev/bin/llvm-config-native
-  '';
-
-  inherit doCheck;
-
-  checkTarget = "check-all";
-
-  # For the update script:
-  passthru.monorepoSrc = monorepoSrc;
-
-  requiredSystemFeatures = [ "big-parallel" ];
-  meta = llvm_meta // {
-    homepage = "https://llvm.org/";
-    description = "A collection of modular and reusable compiler and toolchain technologies";
-    longDescription = ''
-      The LLVM Project is a collection of modular and reusable compiler and
-      toolchain technologies. Despite its name, LLVM has little to do with
-      traditional virtual machines. The name "LLVM" itself is not an acronym; it
-      is the full name of the project.
-      LLVM began as a research project at the University of Illinois, with the
-      goal of providing a modern, SSA-based compilation strategy capable of
-      supporting both static and dynamic compilation of arbitrary programming
-      languages. Since then, LLVM has grown to be an umbrella project consisting
-      of a number of subprojects, many of which are being used in production by
-      a wide variety of commercial and open source projects as well as being
-      widely used in academic research. Code in the LLVM project is licensed
-      under the "Apache 2.0 License with LLVM exceptions".
-    '';
-  };
-} // lib.optionalAttrs enableManpages {
-  pname = "llvm-manpages";
-
-  propagatedBuildInputs = [];
-
-  ninjaFlags = [ "docs-llvm-man" ];
-  installTargets = [ "install-docs-llvm-man" ];
-
-  postPatch = null;
-  postInstall = null;
-
-  outputs = [ "out" ];
-
-  doCheck = false;
-
-  meta = llvm_meta // {
-    description = "man pages for LLVM ${version}";
-  };
-})
diff --git a/pkgs/development/compilers/nasm/default.nix b/pkgs/development/compilers/nasm/default.nix
index 64abd3a1e322..2ba33b2c6833 100644
--- a/pkgs/development/compilers/nasm/default.nix
+++ b/pkgs/development/compilers/nasm/default.nix
@@ -7,11 +7,11 @@
 
 stdenv.mkDerivation rec {
   pname = "nasm";
-  version = "2.16.02";
+  version = "2.16.03";
 
   src = fetchurl {
     url = "https://www.nasm.us/pub/nasm/releasebuilds/${version}/${pname}-${version}.tar.xz";
-    sha256 = "sha256-HhuULqiPIu2uiWWeFb4m+gJ+rgdH9RQTVA9S1OrEeQ0=";
+    hash = "sha256-FBKhx2C70F2wJrbA0WV6/9ZjHNCmPN229zzG1KphYUg=";
   };
 
   nativeBuildInputs = [ perl ];
diff --git a/pkgs/development/compilers/nim/default.nix b/pkgs/development/compilers/nim/default.nix
index 1b5f21ddef79..089043dc6dee 100644
--- a/pkgs/development/compilers/nim/default.nix
+++ b/pkgs/development/compilers/nim/default.nix
@@ -76,12 +76,12 @@ in {
 
   nim-unwrapped-2 = stdenv.mkDerivation (finalAttrs: {
     pname = "nim-unwrapped";
-    version = "2.0.2";
+    version = "2.0.4";
     strictDeps = true;
 
     src = fetchurl {
       url = "https://nim-lang.org/download/nim-${finalAttrs.version}.tar.xz";
-      hash = "sha256-ZPUdO/Vt6dDueeLKapzpRFSvmmOhQaaWnOjFmmC4LM8=";
+      hash = "sha256-cVJr0HQ53I43j6Gm60B+2hKY8fPU30R23KDjyjy+Pwk=";
     };
 
     buildInputs = [ boehmgc openssl pcre readline sqlite ]
@@ -161,10 +161,10 @@ in {
   });
 
   nim-unwrapped-1 = nim-unwrapped-2.overrideAttrs (finalAttrs: prevAttrs: {
-    version = "1.6.18";
+    version = "1.6.20";
     src = fetchurl {
       url = "https://nim-lang.org/download/nim-${finalAttrs.version}.tar.xz";
-      hash = "sha256-UCQaxyIpG6ljdT8EWqo1h7c8GqKK4pxXPBWluKYCoss=";
+      hash = "sha256-/+0EdQTR/K9hDw3Xzz4Ce+kaKSsMnFEWFQTC87mE/7k=";
     };
 
     patches = [
diff --git a/pkgs/development/compilers/ocaml/5.2.nix b/pkgs/development/compilers/ocaml/5.2.nix
index 8df6f1d5d48e..5a0c2783207a 100644
--- a/pkgs/development/compilers/ocaml/5.2.nix
+++ b/pkgs/development/compilers/ocaml/5.2.nix
@@ -1,9 +1,6 @@
 import ./generic.nix {
   major_version = "5";
   minor_version = "2";
-  patch_version = "0-beta2";
-  src = fetchTarball {
-    url = "https://caml.inria.fr/pub/distrib/ocaml-5.2/ocaml-5.2.0~beta2.tar.xz";
-    sha256 = "sha256:1cyw0w79j7kyr3x0ivsqm1si704b29ic33yj621dq7f125jabk00";
-  };
+  patch_version = "0";
+  sha256 = "sha256-L0v0efUUefm/jH8WlKbqcza793T0rW2mtZ0a1JOd2Kc=";
 }
diff --git a/pkgs/development/compilers/odin/default.nix b/pkgs/development/compilers/odin/default.nix
index 9168ad485e27..44a215496e7a 100644
--- a/pkgs/development/compilers/odin/default.nix
+++ b/pkgs/development/compilers/odin/default.nix
@@ -12,13 +12,13 @@ let
   inherit (llvmPackages) stdenv;
 in stdenv.mkDerivation rec {
   pname = "odin";
-  version = "dev-2024-04a";
+  version = "dev-2024-05";
 
   src = fetchFromGitHub {
     owner = "odin-lang";
     repo = "Odin";
     rev = version;
-    hash = "sha256-jFENpWUosNNTctYiHdKqDg7ENAoEtigz87pTfYJDj5Q=";
+    hash = "sha256-JGTC+Gi5mkHQHvd5CmEzrhi1muzWf1rUN4f5FT5K5vc=";
   };
 
   nativeBuildInputs = [
@@ -30,13 +30,11 @@ in stdenv.mkDerivation rec {
   LLVM_CONFIG = "${llvmPackages.llvm.dev}/bin/llvm-config";
 
   postPatch = lib.optionalString stdenv.isDarwin ''
-    sed -i src/main.cpp \
-      -e 's|-syslibroot /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk|-syslibroot ${MacOSX-SDK}|'
-  '' + ''
-    sed -i build_odin.sh \
-      -e 's/^GIT_SHA=.*$/GIT_SHA=/' \
-      -e 's/LLVM-C/LLVM/' \
-      -e 's/framework System/lSystem/'
+    substituteInPlace src/linker.cpp \
+        --replace-fail '/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk' ${MacOSX-SDK}
+    '' + ''
+    substituteInPlace build_odin.sh \
+        --replace-fail '-framework System' '-lSystem'
     patchShebangs build_odin.sh
   '';
 
diff --git a/pkgs/development/compilers/open-watcom/v2.nix b/pkgs/development/compilers/open-watcom/v2.nix
index 37503496c917..de4aad453c38 100644
--- a/pkgs/development/compilers/open-watcom/v2.nix
+++ b/pkgs/development/compilers/open-watcom/v2.nix
@@ -13,7 +13,7 @@
 stdenv.mkDerivation rec {
   pname = "${passthru.prettyName}-unwrapped";
   # nixpkgs-update: no auto update
-  version = "unstable-2023-11-24";
+  version = "0-unstable-2023-11-24";
 
   src = fetchFromGitHub {
     owner = "open-watcom";
@@ -89,6 +89,8 @@ stdenv.mkDerivation rec {
     prettyName = "open-watcom-v2";
     updateScript = unstableGitUpdater {
       url = "https://github.com/open-watcom/open-watcom-v2.git";
+      # no numerical releases, monthly "YYYY-MM-DD-Build" tags and daily "Current-build", "Last-CI-build" & "Coverity-scan" retagging
+      hardcodeZeroVersion = true;
     };
   };
 
diff --git a/pkgs/development/compilers/orc/default.nix b/pkgs/development/compilers/orc/default.nix
index 07bee8ecd278..9841fd94f2d0 100644
--- a/pkgs/development/compilers/orc/default.nix
+++ b/pkgs/development/compilers/orc/default.nix
@@ -60,6 +60,6 @@ in stdenv.mkDerivation rec {
     # under the 3-clause BSD license. The rest is 2-clause BSD license.
     license = with licenses; [ bsd3 bsd2 ];
     platforms = platforms.unix;
-    maintainers = [ ];
+    maintainers = with maintainers; [ lilyinstarlight ];
   };
 }
diff --git a/pkgs/development/compilers/osl/default.nix b/pkgs/development/compilers/osl/default.nix
index c9c849f0a68a..d05d01bc6c07 100644
--- a/pkgs/development/compilers/osl/default.nix
+++ b/pkgs/development/compilers/osl/default.nix
@@ -24,13 +24,13 @@ let
 
 in stdenv.mkDerivation rec {
   pname = "openshadinglanguage";
-  version = "1.13.8.0";
+  version = "1.13.9.0";
 
   src = fetchFromGitHub {
     owner = "AcademySoftwareFoundation";
     repo = "OpenShadingLanguage";
     rev = "v${version}";
-    hash = "sha256-AixN3cj6r/PUGvAhVN4wGfpuLiBt5LglgJp68hFfJMo=";
+    hash = "sha256-3HSmiIvGk+C5rnHzCXnYlFVeOWYa5M0WZRLTSb8Zsh8=";
   };
 
   cmakeFlags = [
diff --git a/pkgs/development/compilers/rasm/default.nix b/pkgs/development/compilers/rasm/default.nix
index 3246e014145f..c131e4b79980 100644
--- a/pkgs/development/compilers/rasm/default.nix
+++ b/pkgs/development/compilers/rasm/default.nix
@@ -28,7 +28,7 @@ stdenv.mkDerivation rec {
     mainProgram = "rasm";
     # use -n option to display all licenses
     license = licenses.mit; # expat version
-    maintainers = [ ];
+    maintainers = with lib.maintainers; [ sigmanificient ];
     platforms = platforms.all;
   };
 }
diff --git a/pkgs/development/compilers/rust/1_77.nix b/pkgs/development/compilers/rust/1_77.nix
index 24c1b7bcb534..ab501aba8ffb 100644
--- a/pkgs/development/compilers/rust/1_77.nix
+++ b/pkgs/development/compilers/rust/1_77.nix
@@ -19,8 +19,8 @@
 } @ args:
 
 import ./default.nix {
-  rustcVersion = "1.77.1";
-  rustcSha256 = "7hBuTFafUtujtbKCsQWCD4a9j2s9CcBrjc6C+xuzpKE=";
+  rustcVersion = "1.77.2";
+  rustcSha256 = "xhRX749ZZjj928dxZ3iy9rmf8SUTo7DxOZTDvFIWOMM=";
 
   llvmSharedForBuild = pkgsBuildBuild.llvmPackages_17.libllvm.override { enableSharedLibraries = true; };
   llvmSharedForHost = pkgsBuildHost.llvmPackages_17.libllvm.override { enableSharedLibraries = true; };
diff --git a/pkgs/development/compilers/sbcl/default.nix b/pkgs/development/compilers/sbcl/default.nix
index 411695219971..75ead6184aa8 100644
--- a/pkgs/development/compilers/sbcl/default.nix
+++ b/pkgs/development/compilers/sbcl/default.nix
@@ -113,6 +113,15 @@ stdenv.mkDerivation (self: rec {
     # have it block a release.
     "futex-wait.test.sh"
   ];
+  patches = [
+    # Support the NIX_SBCL_DYNAMIC_SPACE_SIZE envvar. Upstream SBCL didn’t want
+    # to include this (see
+    # "https://sourceforge.net/p/sbcl/mailman/sbcl-devel/thread/2cf20df7-01d0-44f2-8551-0df01fe55f1a%400brg.net/"),
+    # but for Nix envvars are sufficiently useful that it’s worth maintaining
+    # this functionality downstream.
+    ./dynamic-space-size-envvar-feature.patch
+    ./dynamic-space-size-envvar-tests.patch
+  ];
   postPatch = lib.optionalString (self.disabledTestFiles != [ ]) ''
     (cd tests ; rm -f ${lib.concatStringsSep " " self.disabledTestFiles})
   ''
diff --git a/pkgs/development/compilers/sbcl/dynamic-space-size-envvar-feature.patch b/pkgs/development/compilers/sbcl/dynamic-space-size-envvar-feature.patch
new file mode 100644
index 000000000000..f1596958a6f8
--- /dev/null
+++ b/pkgs/development/compilers/sbcl/dynamic-space-size-envvar-feature.patch
@@ -0,0 +1,63 @@
+From ac15f9f7c75c1fb5767514e64b609e2a75e6fe9d Mon Sep 17 00:00:00 2001
+From: Hraban Luyat <hraban@0brg.net>
+Date: Sat, 13 Apr 2024 14:04:57 -0400
+Subject: [PATCH] feat: NIX_SBCL_DYNAMIC_SPACE_SIZE envvar
+
+Read SBCL dynamic space size configuration from env if available.
+---
+ src/runtime/runtime.c | 25 +++++++++++++++++++++++++
+ 1 file changed, 25 insertions(+)
+
+diff --git a/src/runtime/runtime.c b/src/runtime/runtime.c
+index 274687c8f..970caa8f4 100644
+--- a/src/runtime/runtime.c
++++ b/src/runtime/runtime.c
+@@ -422,6 +422,29 @@ static int is_memsize_arg(char *argv[], int argi, int argc, int *merge_core_page
+     return 0;
+ }
+ 
++/**
++ * Read memory options from the environment, if present.
++ *
++ * Memory settings are read in the following priority:
++ *
++ * 1. command line arguments
++ * 2. environment variable
++ * 3. embedded options in core
++ * 4. default
++ */
++static void
++read_memsize_from_env(void) {
++  const char *val = getenv("NIX_SBCL_DYNAMIC_SPACE_SIZE");
++  // The distinction is blurry between setting an envvar to the empty string and
++  // unsetting it entirely. Depending on the calling environment it can even be
++  // tricky to properly unset an envvar in the first place. An empty envvar is
++  // practically always intended to just mean “unset”, so let’s interpret it
++  // that way.
++  if (val != NULL && (strcmp(val, "") != 0)) {
++    dynamic_space_size = parse_size_arg(val, "NIX_SBCL_DYNAMIC_SPACE_SIZE");
++  }
++}
++
+ static struct cmdline_options
+ parse_argv(struct memsize_options memsize_options,
+            int argc, char *argv[], char *envp[], char *core)
+@@ -462,6 +485,7 @@ parse_argv(struct memsize_options memsize_options,
+         dynamic_space_size = memsize_options.dynamic_space_size;
+         thread_control_stack_size = memsize_options.thread_control_stack_size;
+         dynamic_values_bytes = memsize_options.thread_tls_bytes;
++        read_memsize_from_env();
+         int stop_parsing = 0; // have we seen '--'
+         int output_index = 1;
+ 
+@@ -488,6 +512,7 @@ parse_argv(struct memsize_options memsize_options,
+         }
+         sbcl_argv[output_index] = 0;
+     } else {
++        read_memsize_from_env();
+         bool end_runtime_options = 0;
+         /* Parse our any of the command-line options that we handle from C,
+          * stopping at the first one that we don't, and leave the rest */
+-- 
+2.44.0
+
diff --git a/pkgs/development/compilers/sbcl/dynamic-space-size-envvar-tests.patch b/pkgs/development/compilers/sbcl/dynamic-space-size-envvar-tests.patch
new file mode 100644
index 000000000000..1a507cc90381
--- /dev/null
+++ b/pkgs/development/compilers/sbcl/dynamic-space-size-envvar-tests.patch
@@ -0,0 +1,104 @@
+From 9d4a886a8a76ea8be51bcf754cefacdf30986f46 Mon Sep 17 00:00:00 2001
+From: Hraban Luyat <hraban@0brg.net>
+Date: Sat, 13 Apr 2024 15:39:58 -0400
+Subject: [PATCH 2/2] test: dynamic space size envvar and precedence
+
+---
+ tests/memory-args.test.sh | 22 ++++++++++++++++++++++
+ tests/save7.test.sh       | 37 ++++++++++++++++++++++++++++++++-----
+ 2 files changed, 54 insertions(+), 5 deletions(-)
+ create mode 100755 tests/memory-args.test.sh
+
+diff --git a/tests/memory-args.test.sh b/tests/memory-args.test.sh
+new file mode 100755
+index 000000000..72ef0cc79
+--- /dev/null
++++ b/tests/memory-args.test.sh
+@@ -0,0 +1,22 @@
++#!/bin/sh
++
++. ./subr.sh
++
++use_test_subdirectory
++
++set -e
++
++# Allow slight shrinkage if heap relocation has to adjust for alignment
++NIX_SBCL_DYNAMIC_SPACE_SIZE=234mb run_sbcl_with_args --script <<EOF
++(assert (<= 0 (- (* 234 1024 1024) (sb-ext:dynamic-space-size)) 65536))
++EOF
++
++NIX_SBCL_DYNAMIC_SPACE_SIZE=555mb run_sbcl_with_args --dynamic-space-size 234mb --script <<EOF
++(assert (<= 0 (- (* 234 1024 1024) (sb-ext:dynamic-space-size)) 65536))
++EOF
++
++run_sbcl_with_args --dynamic-space-size 234mb --script <<EOF
++(assert (<= 0 (- (* 234 1024 1024) (sb-ext:dynamic-space-size)) 65536))
++EOF
++
++exit $EXIT_TEST_WIN
+diff --git a/tests/save7.test.sh b/tests/save7.test.sh
+index f9225543b..3c35e7b31 100644
+--- a/tests/save7.test.sh
++++ b/tests/save7.test.sh
+@@ -59,9 +59,9 @@ run_sbcl_with_core "$tmpcore" --noinform --control-stack-size 640KB \
+   (assert (eql (extern-alien "dynamic_values_bytes" (unsigned 32))
+                (* 5000 sb-vm:n-word-bytes)))
+   ; allow slight shrinkage if heap relocation has to adjust for alignment
+-  (defun dynamic-space-size-good-p ()
+-    (<= 0 (- (* 260 1048576) (dynamic-space-size)) 65536))
+-  (assert (dynamic-space-size-good-p))
++  (defun dynamic-space-size-good-p (expected-mb)
++    (<= 0 (- (* expected-mb 1024 1024) (dynamic-space-size)) 65536))
++  (assert (dynamic-space-size-good-p 260))
+   (save-lisp-and-die "${tmpcore}2" :executable t :save-runtime-options t)
+ EOF
+ chmod u+x "${tmpcore}2"
+@@ -70,15 +70,42 @@ echo "::: INFO: prepared test core"
+   (when (and (eql (extern-alien "thread_control_stack_size" unsigned) (* 640 1024))
+              (eql (extern-alien "dynamic_values_bytes" (unsigned 32))
+                   (* 5000 sb-vm:n-word-bytes))
+-             (dynamic-space-size-good-p))
++             (dynamic-space-size-good-p 260))
+     (exit :code 42))
+ EOF
+ status=$?
+-rm "$tmpcore" "${tmpcore}2"
+ if [ $status -ne 42 ]; then
+     echo "re-saved executable used wrong memory size options"
+     exit 1
+ fi
+ echo "::: Success"
+ 
++echo "::: Running :DYNAMIC-SPACE-SIZE-ENV"
++NIX_SBCL_DYNAMIC_SPACE_SIZE=432MB ./"${tmpcore}2" --no-userinit --no-sysinit --noprint <<EOF
++  (when (dynamic-space-size-good-p 432)
++    (exit :code 42))
++EOF
++status=$?
++if [ $status -ne 42 ]; then
++    echo "re-saved executable should have prioritized memory specification from env"
++    exit 1
++fi
++echo "::: Success"
++
++echo "::: Running :DYNAMIC-SPACE-SIZE-PRECEDENCE"
++NIX_SBCL_DYNAMIC_SPACE_SIZE=432MB ./"${tmpcore}2" --dynamic-space-size 333MB \
++  --no-userinit --no-sysinit --noprint <<EOF
++  (when (dynamic-space-size-good-p 333))
++    (exit :code 42))
++EOF
++status=$?
++rm "$tmpcore" "${tmpcore}2"
++if [ $status -ne 42 ]; then
++    echo "re-saved executable should have prioritized memory specification from arg"
++    exit 1
++fi
++echo "::: Success"
++
++
++
+ exit $EXIT_TEST_WIN
+-- 
+2.44.0
+
diff --git a/pkgs/development/compilers/terra/default.nix b/pkgs/development/compilers/terra/default.nix
index 3f6934f04212..ae81adf5f5b0 100644
--- a/pkgs/development/compilers/terra/default.nix
+++ b/pkgs/development/compilers/terra/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetchFromGitHub, llvmPackages, ncurses, cmake, libxml2
+{ lib, stdenv, fetchFromGitHub, llvmPackages_16, ncurses, cmake, libxml2
 , symlinkJoin, breakpointHook, cudaPackages, enableCUDA ? false
 , libffi, libobjc, libpfm, Cocoa, Foundation
 }:
@@ -14,6 +14,7 @@ let
     sha256 = "1g87pl014b5v6z2nnhiwn3wf405skawszfr5wdzyfbx00j3kgxd0";
   };
 
+  llvmPackages = llvmPackages_16;
   llvmMerged = symlinkJoin {
     name = "llvmClangMerged";
     paths = with llvmPackages; [
diff --git a/pkgs/development/compilers/tvm/default.nix b/pkgs/development/compilers/tvm/default.nix
index 3613ed55e084..1f714f1b2dea 100644
--- a/pkgs/development/compilers/tvm/default.nix
+++ b/pkgs/development/compilers/tvm/default.nix
@@ -2,14 +2,14 @@
 
 stdenv.mkDerivation rec {
   pname = "tvm";
-  version = "0.15.0";
+  version = "0.16.0";
 
   src = fetchFromGitHub {
     owner = "apache";
     repo = "incubator-tvm";
     rev = "v${version}";
     fetchSubmodules = true;
-    sha256 = "sha256-VbJptTUi12pJh1wz4I+xL6HVo/rSiUHCkvgEMPe1F6o=";
+    sha256 = "sha256-g8Z5MRM3KIgCjGxtU9JLEsFUjFxPKmc6OwY17C59cxg=";
   };
 
   nativeBuildInputs = [ cmake ];
diff --git a/pkgs/development/compilers/unison/default.nix b/pkgs/development/compilers/unison/default.nix
index 7afdd45c459d..2ba6a65c7afc 100644
--- a/pkgs/development/compilers/unison/default.nix
+++ b/pkgs/development/compilers/unison/default.nix
@@ -47,7 +47,7 @@ stdenv.mkDerivation (finalAttrs: {
     homepage = "https://unisonweb.org/";
     license = with licenses; [ mit bsd3 ];
     mainProgram = "ucm";
-    maintainers = [ maintainers.virusdave ];
+    maintainers = with maintainers; [ ceedubs sellout virusdave ];
     platforms = [ "x86_64-darwin" "x86_64-linux" "aarch64-darwin" ];
     sourceProvenance = with sourceTypes; [ binaryNativeCode ];
   };
diff --git a/pkgs/development/compilers/vala/default.nix b/pkgs/development/compilers/vala/default.nix
index 86caf243a559..a7041bfc6a29 100644
--- a/pkgs/development/compilers/vala/default.nix
+++ b/pkgs/development/compilers/vala/default.nix
@@ -1,10 +1,10 @@
 { stdenv, lib, fetchurl, fetchpatch, pkg-config, flex, bison, libxslt, autoconf, autoreconfHook
-, gnome, graphviz, glib, libiconv, libintl, libtool, expat, substituteAll, vala
+, gnome, graphviz, glib, libiconv, libintl, libtool, expat, substituteAll, vala, gobject-introspection
 }:
 
 let
   generic = lib.makeOverridable ({
-    version, sha256,
+    version, hash,
     extraNativeBuildInputs ? [],
     extraBuildInputs ? [],
     withGraphviz ? false
@@ -30,7 +30,7 @@ let
 
     src = fetchurl {
       url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
-      inherit sha256;
+      inherit hash;
     };
 
     postPatch = ''
@@ -49,7 +49,7 @@ let
     outputs = [ "out" "devdoc" ];
 
     nativeBuildInputs = [
-      pkg-config flex bison libxslt
+      pkg-config flex bison libxslt gobject-introspection
     ] ++ lib.optional (stdenv.isDarwin) expat
       ++ lib.optional disableGraphviz autoreconfHook # if we changed our ./configure script, need to reconfigure
       ++ lib.optionals (stdenv.buildPlatform != stdenv.hostPlatform) [ vala ]
@@ -86,8 +86,8 @@ let
 
 in rec {
   vala_0_56 = generic {
-    version = "0.56.14";
-    sha256 = "k4LCaMqb3AKq7cgVKpgYvzk1JzBB9inFbeQQ42Cj9Vc=";
+    version = "0.56.17";
+    hash = "sha256-JhAMTk7wBJxhknXxQNl89WWIPQDHVDyCvM5aQmk07Wo=";
   };
 
   vala = vala_0_56;
diff --git a/pkgs/development/compilers/zig/shell-completions.nix b/pkgs/development/compilers/zig/shell-completions.nix
index d60f7950dcad..44773cf9a553 100644
--- a/pkgs/development/compilers/zig/shell-completions.nix
+++ b/pkgs/development/compilers/zig/shell-completions.nix
@@ -7,7 +7,7 @@
 
 stdenv.mkDerivation (finalAttrs: {
   pname = "zig-shell-completions";
-  version = "unstable-2023-11-18";
+  version = "0-unstable-2023-11-18";
 
   src = fetchFromGitHub {
     owner = "ziglang";
diff --git a/pkgs/development/compilers/zulu/22.nix b/pkgs/development/compilers/zulu/22.nix
index 96b0e6805a5a..93891d6511c7 100644
--- a/pkgs/development/compilers/zulu/22.nix
+++ b/pkgs/development/compilers/zulu/22.nix
@@ -11,7 +11,7 @@ callPackage ./common.nix ({
       zuluVersion = "22.28.91";
       jdkVersion = "22.0.0";
       hash =
-        if enableJavaFX then "sha256-HvMiODsz+puu1xtxG2RRXH/PWCk91PGNZ7UcOd9orqQ="
+        if enableJavaFX then "sha256-+qUrZ+GlspSP3RLTAbgEtFm0B0fzX/VD1WUl6mk2c/0="
         else "sha256-HvMiODsz+puu1xtxG2RRXH/PWCk91PGNZ7UcOd9orqQ=";
     };
 
@@ -27,7 +27,7 @@ callPackage ./common.nix ({
       zuluVersion = "22.28.91";
       jdkVersion = "22.0.0";
       hash =
-        if enableJavaFX then "sha256-Y6PSNQjHRXukwux2sVbvpTIqT+Cg+KeG1C0iSEwyKZw="
+        if enableJavaFX then "sha256-QkFwbc2YFEWb5rddhH4a+zmtsrXxUBSuS8yg9qUb728="
         else "sha256-Y6PSNQjHRXukwux2sVbvpTIqT+Cg+KeG1C0iSEwyKZw=";
     };
 
@@ -35,7 +35,7 @@ callPackage ./common.nix ({
       zuluVersion = "22.28.91";
       jdkVersion = "22.0.0";
       hash =
-        if enableJavaFX then "sha256-o0VkWB4+PzBmNNWy+FZlyjTgukBTe6owfydb3YNfEE0="
+        if enableJavaFX then "sha256-256UP6MtUReQYqCKVt0ThN9BVDyKLAMXQTdpcDB9t24="
         else "sha256-o0VkWB4+PzBmNNWy+FZlyjTgukBTe6owfydb3YNfEE0=";
     };
   };
diff --git a/pkgs/development/compilers/zz/Cargo.lock b/pkgs/development/compilers/zz/Cargo.lock
deleted file mode 100644
index 8b72d6a3e404..000000000000
--- a/pkgs/development/compilers/zz/Cargo.lock
+++ /dev/null
@@ -1,961 +0,0 @@
-# This file is automatically @generated by Cargo.
-# It is not intended for manual editing.
-[[package]]
-name = "aho-corasick"
-version = "0.7.10"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8716408b8bc624ed7f65d223ddb9ac2d044c0547b6fa4b0d554f3a9540496ada"
-dependencies = [
- "memchr",
-]
-
-[[package]]
-name = "ansi_term"
-version = "0.11.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ee49baf6cb617b853aa8d93bf420db2383fab46d314482ca2803b40d5fde979b"
-dependencies = [
- "winapi",
-]
-
-[[package]]
-name = "askama"
-version = "0.9.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "10a1fb9e41eb366cbcd267da2094be5b7e62fdbca9f82091e7503e80f885050d"
-dependencies = [
- "askama_derive",
- "askama_escape",
- "askama_shared",
-]
-
-[[package]]
-name = "askama_derive"
-version = "0.9.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e1012c270085fa35ece6a48a569544fde85b6d9ee41074c7b706cc912a03f939"
-dependencies = [
- "askama_shared",
- "nom",
- "proc-macro2",
- "quote",
- "syn",
-]
-
-[[package]]
-name = "askama_escape"
-version = "0.3.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7a577aeba5fec1aafb9f195d98cfcc38a78b588e4ebf9b15f62ca1c7aa33795a"
-
-[[package]]
-name = "askama_shared"
-version = "0.9.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8ee517f4e33c27b129928e71d8a044d54c513e72e0b72ec5c4f5f1823e9de353"
-dependencies = [
- "askama_escape",
- "humansize",
- "num-traits",
- "serde",
- "toml",
-]
-
-[[package]]
-name = "atty"
-version = "0.2.14"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d9b39be18770d11421cdb1b9947a45dd3f37e93092cbf377614828a319d5fee8"
-dependencies = [
- "hermit-abi",
- "libc",
- "winapi",
-]
-
-[[package]]
-name = "autocfg"
-version = "1.0.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f8aac770f1885fd7e387acedd76065302551364496e46b3dd00860b2f8359b9d"
-
-[[package]]
-name = "backtrace"
-version = "0.3.46"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b1e692897359247cc6bb902933361652380af0f1b7651ae5c5013407f30e109e"
-dependencies = [
- "backtrace-sys",
- "cfg-if",
- "libc",
- "rustc-demangle",
-]
-
-[[package]]
-name = "backtrace-sys"
-version = "0.1.37"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "18fbebbe1c9d1f383a9cc7e8ccdb471b91c8d024ee9c2ca5b5346121fe8b4399"
-dependencies = [
- "cc",
- "libc",
-]
-
-[[package]]
-name = "bitflags"
-version = "1.2.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "cf1de2fe8c75bc145a2f577add951f8134889b4795d47466a54a5c846d691693"
-
-[[package]]
-name = "block-buffer"
-version = "0.7.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c0940dc441f31689269e10ac70eb1002a3a1d3ad1390e030043662eb7fe4688b"
-dependencies = [
- "block-padding",
- "byte-tools",
- "byteorder",
- "generic-array",
-]
-
-[[package]]
-name = "block-padding"
-version = "0.1.5"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "fa79dedbb091f449f1f39e53edf88d5dbe95f895dae6135a8d7b881fb5af73f5"
-dependencies = [
- "byte-tools",
-]
-
-[[package]]
-name = "byte-tools"
-version = "0.3.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e3b5ca7a04898ad4bcd41c90c5285445ff5b791899bb1b0abdd2a2aa791211d7"
-
-[[package]]
-name = "byteorder"
-version = "1.3.4"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "08c48aae112d48ed9f069b33538ea9e3e90aa263cfa3d1c24309612b1f7472de"
-
-[[package]]
-name = "cc"
-version = "1.0.52"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c3d87b23d6a92cd03af510a5ade527033f6aa6fa92161e2d5863a907d4c5e31d"
-
-[[package]]
-name = "cfg-if"
-version = "0.1.10"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4785bdd1c96b2a846b2bd7cc02e86b6b3dbf14e7e53446c4f54c92a361040822"
-
-[[package]]
-name = "clap"
-version = "2.33.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5067f5bb2d80ef5d68b4c87db81601f0b75bca627bc2ef76b141d7b846a3c6d9"
-dependencies = [
- "ansi_term",
- "atty",
- "bitflags",
- "strsim",
- "textwrap",
- "unicode-width",
- "vec_map",
-]
-
-[[package]]
-name = "crossbeam-deque"
-version = "0.7.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9f02af974daeee82218205558e51ec8768b48cf524bd01d550abe5573a608285"
-dependencies = [
- "crossbeam-epoch",
- "crossbeam-utils",
- "maybe-uninit",
-]
-
-[[package]]
-name = "crossbeam-epoch"
-version = "0.8.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "058ed274caafc1f60c4997b5fc07bf7dc7cca454af7c6e81edffe5f33f70dace"
-dependencies = [
- "autocfg",
- "cfg-if",
- "crossbeam-utils",
- "lazy_static",
- "maybe-uninit",
- "memoffset",
- "scopeguard",
-]
-
-[[package]]
-name = "crossbeam-queue"
-version = "0.2.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c695eeca1e7173472a32221542ae469b3e9aac3a4fc81f7696bcad82029493db"
-dependencies = [
- "cfg-if",
- "crossbeam-utils",
-]
-
-[[package]]
-name = "crossbeam-utils"
-version = "0.7.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c3c7c73a2d1e9fc0886a08b93e98eb643461230d5f1925e4036204d5f2e261a8"
-dependencies = [
- "autocfg",
- "cfg-if",
- "lazy_static",
-]
-
-[[package]]
-name = "digest"
-version = "0.8.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f3d0c8c8752312f9713efd397ff63acb9f85585afbf179282e720e7704954dd5"
-dependencies = [
- "generic-array",
-]
-
-[[package]]
-name = "either"
-version = "1.5.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "bb1f6b1ce1c140482ea30ddd3335fc0024ac7ee112895426e0a629a6c20adfe3"
-
-[[package]]
-name = "env_logger"
-version = "0.6.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "aafcde04e90a5226a6443b7aabdb016ba2f8307c847d524724bd9b346dd1a2d3"
-dependencies = [
- "atty",
- "humantime",
- "log",
- "regex",
- "termcolor",
-]
-
-[[package]]
-name = "error-chain"
-version = "0.12.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d371106cc88ffdfb1eabd7111e432da544f16f3e2d7bf1dfe8bf575f1df045cd"
-dependencies = [
- "backtrace",
- "version_check",
-]
-
-[[package]]
-name = "failure"
-version = "0.1.8"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d32e9bd16cc02eae7db7ef620b392808b89f6a5e16bb3497d159c6b92a0f4f86"
-dependencies = [
- "backtrace",
-]
-
-[[package]]
-name = "fake-simd"
-version = "0.1.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e88a8acf291dafb59c2d96e8f59828f3838bb1a70398823ade51a84de6a6deed"
-
-[[package]]
-name = "fuchsia-cprng"
-version = "0.1.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a06f77d526c1a601b7c4cdd98f54b5eaabffc14d5f2f0296febdc7f357c6d3ba"
-
-[[package]]
-name = "generic-array"
-version = "0.12.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c68f0274ae0e023facc3c97b2e00f076be70e254bc851d972503b328db79b2ec"
-dependencies = [
- "typenum",
-]
-
-[[package]]
-name = "getrandom"
-version = "0.1.14"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7abc8dd8451921606d809ba32e95b6111925cd2906060d2dcc29c070220503eb"
-dependencies = [
- "cfg-if",
- "libc",
- "wasi",
-]
-
-[[package]]
-name = "hermit-abi"
-version = "0.1.12"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "61565ff7aaace3525556587bd2dc31d4a07071957be715e63ce7b1eccf51a8f4"
-dependencies = [
- "libc",
-]
-
-[[package]]
-name = "humansize"
-version = "1.1.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b6cab2627acfc432780848602f3f558f7e9dd427352224b0d9324025796d2a5e"
-
-[[package]]
-name = "humantime"
-version = "1.3.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "df004cfca50ef23c36850aaaa59ad52cc70d0e90243c3c7737a4dd32dc7a3c4f"
-dependencies = [
- "quick-error",
-]
-
-[[package]]
-name = "idna"
-version = "0.2.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "02e2673c30ee86b5b96a9cb52ad15718aa1f966f5ab9ad54a8b95d5ca33120a9"
-dependencies = [
- "matches",
- "unicode-bidi",
- "unicode-normalization",
-]
-
-[[package]]
-name = "itoa"
-version = "0.4.5"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b8b7a7c0c47db5545ed3fef7468ee7bb5b74691498139e4b3f6a20685dc6dd8e"
-
-[[package]]
-name = "lazy_static"
-version = "1.4.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e2abad23fbc42b3700f2f279844dc832adb2b2eb069b2df918f455c4e18cc646"
-
-[[package]]
-name = "libc"
-version = "0.2.69"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "99e85c08494b21a9054e7fe1374a732aeadaff3980b6990b94bfd3a70f690005"
-
-[[package]]
-name = "log"
-version = "0.4.8"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "14b6052be84e6b71ab17edffc2eeabf5c2c3ae1fdb464aae35ac50c67a44e1f7"
-dependencies = [
- "cfg-if",
-]
-
-[[package]]
-name = "maplit"
-version = "1.0.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3e2e65a1a2e43cfcb47a895c4c8b10d1f4a61097f9f254f183aee60cad9c651d"
-
-[[package]]
-name = "matches"
-version = "0.1.8"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7ffc5c5338469d4d3ea17d269fa8ea3512ad247247c30bd2df69e68309ed0a08"
-
-[[package]]
-name = "maybe-uninit"
-version = "2.0.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "60302e4db3a61da70c0cb7991976248362f30319e88850c487b9b95bbf059e00"
-
-[[package]]
-name = "memchr"
-version = "2.3.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3728d817d99e5ac407411fa471ff9800a778d88a24685968b36824eaf4bee400"
-
-[[package]]
-name = "memoffset"
-version = "0.5.4"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b4fc2c02a7e374099d4ee95a193111f72d2110197fe200272371758f6c3643d8"
-dependencies = [
- "autocfg",
-]
-
-[[package]]
-name = "metrohash"
-version = "1.0.6"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3ba553cb19e2acbc54baa16faef215126243fe45e53357a3b2e9f4ebc7b0506c"
-
-[[package]]
-name = "nom"
-version = "5.1.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0b471253da97532da4b61552249c521e01e736071f71c1a4f7ebbfbf0a06aad6"
-dependencies = [
- "memchr",
- "version_check",
-]
-
-[[package]]
-name = "num-traits"
-version = "0.2.11"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c62be47e61d1842b9170f0fdeec8eba98e60e90e5446449a0545e5152acd7096"
-dependencies = [
- "autocfg",
-]
-
-[[package]]
-name = "num_cpus"
-version = "1.13.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "05499f3756671c15885fee9034446956fff3f243d6077b91e5767df161f766b3"
-dependencies = [
- "hermit-abi",
- "libc",
-]
-
-[[package]]
-name = "numtoa"
-version = "0.1.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b8f8bdf33df195859076e54ab11ee78a1b208382d3a26ec40d142ffc1ecc49ef"
-
-[[package]]
-name = "opaque-debug"
-version = "0.2.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2839e79665f131bdb5782e51f2c6c9599c133c6098982a54c794358bf432529c"
-
-[[package]]
-name = "pathdiff"
-version = "0.2.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "877630b3de15c0b64cc52f659345724fbf6bdad9bd9566699fc53688f3c34a34"
-
-[[package]]
-name = "pbr"
-version = "1.0.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4403eb718d70c03ee279e51737782902c68cca01e870a33b6a2f9dfb50b9cd83"
-dependencies = [
- "libc",
- "termion",
- "time",
- "winapi",
-]
-
-[[package]]
-name = "percent-encoding"
-version = "2.1.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d4fd5641d01c8f18a23da7b6fe29298ff4b55afcccdf78973b24cf3175fee32e"
-
-[[package]]
-name = "pest"
-version = "2.1.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "10f4872ae94d7b90ae48754df22fd42ad52ce740b8f370b03da4835417403e53"
-dependencies = [
- "ucd-trie",
-]
-
-[[package]]
-name = "pest_derive"
-version = "2.1.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "833d1ae558dc601e9a60366421196a8d94bc0ac980476d0b67e1d0988d72b2d0"
-dependencies = [
- "pest",
- "pest_generator",
-]
-
-[[package]]
-name = "pest_generator"
-version = "2.1.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "99b8db626e31e5b81787b9783425769681b347011cc59471e33ea46d2ea0cf55"
-dependencies = [
- "pest",
- "pest_meta",
- "proc-macro2",
- "quote",
- "syn",
-]
-
-[[package]]
-name = "pest_meta"
-version = "2.1.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "54be6e404f5317079812fc8f9f5279de376d8856929e21c184ecf6bbd692a11d"
-dependencies = [
- "maplit",
- "pest",
- "sha-1",
-]
-
-[[package]]
-name = "proc-macro2"
-version = "1.0.12"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8872cf6f48eee44265156c111456a700ab3483686b3f96df4cf5481c89157319"
-dependencies = [
- "unicode-xid",
-]
-
-[[package]]
-name = "quick-error"
-version = "1.2.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a1d01941d82fa2ab50be1e79e6714289dd7cde78eba4c074bc5a4374f650dfe0"
-
-[[package]]
-name = "quote"
-version = "1.0.4"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4c1f4b0efa5fc5e8ceb705136bfee52cfdb6a4e3509f770b478cd6ed434232a7"
-dependencies = [
- "proc-macro2",
-]
-
-[[package]]
-name = "rand"
-version = "0.4.6"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "552840b97013b1a26992c11eac34bdd778e464601a4c2054b5f0bff7c6761293"
-dependencies = [
- "fuchsia-cprng",
- "libc",
- "rand_core 0.3.1",
- "rdrand",
- "winapi",
-]
-
-[[package]]
-name = "rand_core"
-version = "0.3.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7a6fdeb83b075e8266dcc8762c22776f6877a63111121f5f8c7411e5be7eed4b"
-dependencies = [
- "rand_core 0.4.2",
-]
-
-[[package]]
-name = "rand_core"
-version = "0.4.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9c33a3c44ca05fa6f1807d8e6743f3824e8509beca625669633be0acbdf509dc"
-
-[[package]]
-name = "rayon"
-version = "1.3.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "db6ce3297f9c85e16621bb8cca38a06779ffc31bb8184e1be4bed2be4678a098"
-dependencies = [
- "crossbeam-deque",
- "either",
- "rayon-core",
-]
-
-[[package]]
-name = "rayon-core"
-version = "1.7.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "08a89b46efaf957e52b18062fb2f4660f8b8a4dde1807ca002690868ef2c85a9"
-dependencies = [
- "crossbeam-deque",
- "crossbeam-queue",
- "crossbeam-utils",
- "lazy_static",
- "num_cpus",
-]
-
-[[package]]
-name = "rdrand"
-version = "0.4.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "678054eb77286b51581ba43620cc911abf02758c91f93f479767aed0f90458b2"
-dependencies = [
- "rand_core 0.3.1",
-]
-
-[[package]]
-name = "redox_syscall"
-version = "0.1.56"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2439c63f3f6139d1b57529d16bc3b8bb855230c8efcc5d3a896c8bea7c3b1e84"
-
-[[package]]
-name = "redox_termios"
-version = "0.1.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7e891cfe48e9100a70a3b6eb652fef28920c117d366339687bd5576160db0f76"
-dependencies = [
- "redox_syscall",
-]
-
-[[package]]
-name = "regex"
-version = "1.3.7"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a6020f034922e3194c711b82a627453881bc4682166cabb07134a10c26ba7692"
-dependencies = [
- "aho-corasick",
- "memchr",
- "regex-syntax",
- "thread_local",
-]
-
-[[package]]
-name = "regex-syntax"
-version = "0.6.17"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7fe5bd57d1d7414c6b5ed48563a2c855d995ff777729dcd91c369ec7fea395ae"
-
-[[package]]
-name = "remove_dir_all"
-version = "0.5.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4a83fa3702a688b9359eccba92d153ac33fd2e8462f9e0e3fdf155239ea7792e"
-dependencies = [
- "winapi",
-]
-
-[[package]]
-name = "rmp"
-version = "0.8.9"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0f10b46df14cf1ee1ac7baa4d2fbc2c52c0622a4b82fa8740e37bc452ac0184f"
-dependencies = [
- "byteorder",
- "num-traits",
-]
-
-[[package]]
-name = "rmp-serde"
-version = "0.14.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4c1ee98f14fe8b8e9c5ea13d25da7b2a1796169202c57a09d7288de90d56222b"
-dependencies = [
- "byteorder",
- "rmp",
- "serde",
-]
-
-[[package]]
-name = "rsmt2"
-version = "0.11.0"
-source = "git+https://github.com/kino-mc/rsmt2?rev=ebce2e4#ebce2e403d25ca739cfd717817be68844f80f13c"
-dependencies = [
- "error-chain",
-]
-
-[[package]]
-name = "rustc-demangle"
-version = "0.1.16"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4c691c0e608126e00913e33f0ccf3727d5fc84573623b8d65b2df340b5201783"
-
-[[package]]
-name = "ryu"
-version = "1.0.4"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ed3d612bc64430efeb3f7ee6ef26d590dce0c43249217bddc62112540c7941e1"
-
-[[package]]
-name = "scopeguard"
-version = "1.1.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d29ab0c6d3fc0ee92fe66e2d99f700eab17a8d57d1c1d3b748380fb20baa78cd"
-
-[[package]]
-name = "serde"
-version = "1.0.106"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "36df6ac6412072f67cf767ebbde4133a5b2e88e76dc6187fa7104cd16f783399"
-dependencies = [
- "serde_derive",
-]
-
-[[package]]
-name = "serde_derive"
-version = "1.0.106"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9e549e3abf4fb8621bd1609f11dfc9f5e50320802273b12f3811a67e6716ea6c"
-dependencies = [
- "proc-macro2",
- "quote",
- "syn",
-]
-
-[[package]]
-name = "serde_json"
-version = "1.0.52"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a7894c8ed05b7a3a279aeb79025fdec1d3158080b75b98a08faf2806bb799edd"
-dependencies = [
- "itoa",
- "ryu",
- "serde",
-]
-
-[[package]]
-name = "sha-1"
-version = "0.8.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f7d94d0bede923b3cea61f3f1ff57ff8cdfd77b400fb8f9998949e0cf04163df"
-dependencies = [
- "block-buffer",
- "digest",
- "fake-simd",
- "opaque-debug",
-]
-
-[[package]]
-name = "sha2"
-version = "0.8.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "27044adfd2e1f077f649f59deb9490d3941d674002f7d062870a60ebe9bd47a0"
-dependencies = [
- "block-buffer",
- "digest",
- "fake-simd",
- "opaque-debug",
-]
-
-[[package]]
-name = "smallvec"
-version = "1.4.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c7cb5678e1615754284ec264d9bb5b4c27d2018577fd90ac0ceb578591ed5ee4"
-
-[[package]]
-name = "strsim"
-version = "0.8.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8ea5119cdb4c55b55d432abb513a0429384878c15dde60cc77b1c99de1a95a6a"
-
-[[package]]
-name = "syn"
-version = "1.0.18"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "410a7488c0a728c7ceb4ad59b9567eb4053d02e8cc7f5c0e0eeeb39518369213"
-dependencies = [
- "proc-macro2",
- "quote",
- "unicode-xid",
-]
-
-[[package]]
-name = "tempdir"
-version = "0.3.7"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "15f2b5fb00ccdf689e0149d1b1b3c03fead81c2b37735d812fa8bddbbf41b6d8"
-dependencies = [
- "rand",
- "remove_dir_all",
-]
-
-[[package]]
-name = "termcolor"
-version = "1.1.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "bb6bfa289a4d7c5766392812c0a1f4c1ba45afa1ad47803c11e1f407d846d75f"
-dependencies = [
- "winapi-util",
-]
-
-[[package]]
-name = "termion"
-version = "1.5.5"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c22cec9d8978d906be5ac94bceb5a010d885c626c4c8855721a4dbd20e3ac905"
-dependencies = [
- "libc",
- "numtoa",
- "redox_syscall",
- "redox_termios",
-]
-
-[[package]]
-name = "textwrap"
-version = "0.11.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d326610f408c7a4eb6f51c37c330e496b08506c9457c9d34287ecc38809fb060"
-dependencies = [
- "unicode-width",
-]
-
-[[package]]
-name = "thread_local"
-version = "1.0.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d40c6d1b69745a6ec6fb1ca717914848da4b44ae29d9b3080cbee91d72a69b14"
-dependencies = [
- "lazy_static",
-]
-
-[[package]]
-name = "time"
-version = "0.1.43"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ca8a50ef2360fbd1eeb0ecd46795a87a19024eb4b53c5dc916ca1fd95fe62438"
-dependencies = [
- "libc",
- "winapi",
-]
-
-[[package]]
-name = "toml"
-version = "0.5.6"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ffc92d160b1eef40665be3a05630d003936a3bc7da7421277846c2613e92c71a"
-dependencies = [
- "serde",
-]
-
-[[package]]
-name = "typenum"
-version = "1.12.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "373c8a200f9e67a0c95e62a4f52fbf80c23b4381c05a17845531982fa99e6b33"
-
-[[package]]
-name = "ucd-trie"
-version = "0.1.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "56dee185309b50d1f11bfedef0fe6d036842e3fb77413abef29f8f8d1c5d4c1c"
-
-[[package]]
-name = "unicode-bidi"
-version = "0.3.4"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "49f2bd0c6468a8230e1db229cff8029217cf623c767ea5d60bfbd42729ea54d5"
-dependencies = [
- "matches",
-]
-
-[[package]]
-name = "unicode-normalization"
-version = "0.1.12"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5479532badd04e128284890390c1e876ef7a993d0570b3597ae43dfa1d59afa4"
-dependencies = [
- "smallvec",
-]
-
-[[package]]
-name = "unicode-width"
-version = "0.1.7"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "caaa9d531767d1ff2150b9332433f32a24622147e5ebb1f26409d5da67afd479"
-
-[[package]]
-name = "unicode-xid"
-version = "0.2.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "826e7639553986605ec5979c7dd957c7895e93eabed50ab2ffa7f6128a75097c"
-
-[[package]]
-name = "url"
-version = "2.1.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "829d4a8476c35c9bf0bbce5a3b23f4106f79728039b726d292bb93bc106787cb"
-dependencies = [
- "idna",
- "matches",
- "percent-encoding",
-]
-
-[[package]]
-name = "vec_map"
-version = "0.8.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "05c78687fb1a80548ae3250346c3db86a80a7cdd77bda190189f2d0a0987c81a"
-
-[[package]]
-name = "version_check"
-version = "0.9.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "078775d0255232fb988e6fccf26ddc9d1ac274299aaedcedce21c6f72cc533ce"
-
-[[package]]
-name = "wasi"
-version = "0.9.0+wasi-snapshot-preview1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "cccddf32554fecc6acb585f82a32a72e28b48f8c4c1883ddfeeeaa96f7d8e519"
-
-[[package]]
-name = "which"
-version = "3.1.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d011071ae14a2f6671d0b74080ae0cd8ebf3a6f8c9589a2cd45f23126fe29724"
-dependencies = [
- "failure",
- "libc",
-]
-
-[[package]]
-name = "winapi"
-version = "0.3.8"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8093091eeb260906a183e6ae1abdba2ef5ef2257a21801128899c3fc699229c6"
-dependencies = [
- "winapi-i686-pc-windows-gnu",
- "winapi-x86_64-pc-windows-gnu",
-]
-
-[[package]]
-name = "winapi-i686-pc-windows-gnu"
-version = "0.4.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ac3b87c63620426dd9b991e5ce0329eff545bccbbb34f3be09ff6fb6ab51b7b6"
-
-[[package]]
-name = "winapi-util"
-version = "0.1.5"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "70ec6ce85bb158151cae5e5c87f95a8e97d2c0c4b001223f33a334e3ce5de178"
-dependencies = [
- "winapi",
-]
-
-[[package]]
-name = "winapi-x86_64-pc-windows-gnu"
-version = "0.4.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f"
-
-[[package]]
-name = "zz"
-version = "0.1.1"
-dependencies = [
- "askama",
- "clap",
- "env_logger",
- "getrandom",
- "lazy_static",
- "log",
- "metrohash",
- "pathdiff",
- "pbr",
- "pest",
- "pest_derive",
- "rayon",
- "rmp-serde",
- "rsmt2",
- "serde",
- "serde_json",
- "sha2",
- "tempdir",
- "toml",
- "url",
- "which",
-]
diff --git a/pkgs/development/compilers/zz/default.nix b/pkgs/development/compilers/zz/default.nix
deleted file mode 100644
index bd26c78e626a..000000000000
--- a/pkgs/development/compilers/zz/default.nix
+++ /dev/null
@@ -1,52 +0,0 @@
-{ lib, rustPlatform, fetchFromGitHub, makeWrapper, z3, pkgsHostTarget }:
-
-let
-  runtimeDeps = [
-    z3
-    pkgsHostTarget.targetPackages.stdenv.cc
-  ];
-in
-
-rustPlatform.buildRustPackage rec {
-  pname = "zz";
-  version = "unstable-2021-05-04";
-
-  # when updating, choose commit of the latest build on http://bin.zetz.it/
-  src = fetchFromGitHub {
-    owner = "zetzit";
-    repo = "zz";
-    rev = "18020b10b933cfe2fc7f2256b71e646889f9b1d2";
-    sha256 = "01nlyyk1qxk76dq2hw3wpbjwkh27zzp6mpczjnxdpv6rxs7mc825";
-  };
-
-  nativeBuildInputs = [ makeWrapper ];
-
-  cargoLock = {
-    lockFile = ./Cargo.lock;
-    outputHashes = {
-      "rsmt2-0.11.0" = "sha256-RwNsS0zge8uOXmgzTvDwp8AD70NspIZq0LgW/v3yrpA=";
-    };
-  };
-
-  postPatch = ''
-    # remove search path entry which would reference /build
-    sed -i '/env!("CARGO_MANIFEST_DIR")/d' src/lib.rs
-  '';
-
-  postInstall = ''
-    mkdir -p "$out/share/zz"
-    cp -r modules "$out/share/zz/"
-
-    wrapProgram $out/bin/zz \
-      --prefix PATH ":" "${lib.makeBinPath runtimeDeps}" \
-      --suffix ZZ_MODULE_PATHS ":" "$out/share/zz/modules"
-  '';
-
-  meta = with lib; {
-    description = "ZetZ a zymbolic verifier and tranzpiler to bare metal C";
-    mainProgram = "zz";
-    homepage = "https://github.com/zetzit/zz";
-    license = licenses.mit;
-    maintainers = [ ];
-  };
-}
diff --git a/pkgs/development/coq-modules/compcert/default.nix b/pkgs/development/coq-modules/compcert/default.nix
index 769017d4e282..0557311c3650 100644
--- a/pkgs/development/coq-modules/compcert/default.nix
+++ b/pkgs/development/coq-modules/compcert/default.nix
@@ -29,7 +29,7 @@ compcert = mkCoqDerivation {
   releaseRev = v: "v${v}";
 
   defaultVersion =  with lib.versions; lib.switch coq.version [
-      { case = range "8.14" "8.19"; out = "3.13.1"; }
+      { case = range "8.14" "8.19"; out = "3.14"; }
       { case = isEq "8.13"        ; out = "3.10"; }
       { case = isEq "8.12"       ; out = "3.9"; }
       { case = range "8.8" "8.11"; out = "3.8"; }
@@ -43,6 +43,7 @@ compcert = mkCoqDerivation {
     "3.12".sha256 = "sha256-hXkQ8UnAx3k50OJGBmSm4hgrnRFCosu4+PEMrcKfmV0=";
     "3.13".sha256 = "sha256-ZedxgEPr1ZgKIcyhQ6zD1l2xr6RDNNUYq/4ZyR6ojM4=";
     "3.13.1".sha256 = "sha256-ldXbuzVB0Z+UVTd5S4yGSg6oRYiKbXLMmUZcQsJLcns=";
+    "3.14".sha256 = "sha256-QXJMpp/BaPiK5okHeo2rcmXENToXKjB51UqljMHTDgw=";
   };
 
   strictDeps = true;
diff --git a/pkgs/development/coq-modules/coq-record-update/default.nix b/pkgs/development/coq-modules/coq-record-update/default.nix
index d65a486476a0..b9a295617b8c 100644
--- a/pkgs/development/coq-modules/coq-record-update/default.nix
+++ b/pkgs/development/coq-modules/coq-record-update/default.nix
@@ -5,8 +5,9 @@
   owner = "tchajed";
   inherit version;
   defaultVersion = with lib.versions; lib.switch coq.coq-version [
-    { case = range "8.10" "8.19";  out = "0.3.3"; }
+    { case = range "8.10" "8.19";  out = "0.3.4"; }
   ] null;
+  release."0.3.4".sha256 = "sha256-AhEcugUiVIsgbq884Lur/bQIuGw8prk+3AlNkP1omcw=";
   release."0.3.3".sha256 = "sha256-HDIPeFHiC9EwhiOH7yMGJ9d2zJMhboTpRGf9kWcB9Io=";
   release."0.3.1".sha256 = "sha256-DyGxO2tqmYZZluXN6Oy5Tw6fuLMyuyxonj8CCToWKkk=";
   release."0.3.0".sha256 = "1ffr21dd6hy19gxnvcd4if2450iksvglvkd6q5713fajd72hmc0z";
diff --git a/pkgs/development/coq-modules/coqide/default.nix b/pkgs/development/coq-modules/coqide/default.nix
index d2dda145f677..449e81040dfa 100644
--- a/pkgs/development/coq-modules/coqide/default.nix
+++ b/pkgs/development/coq-modules/coqide/default.nix
@@ -1,7 +1,7 @@
 { lib
 , makeDesktopItem
 , copyDesktopItems
-, wrapGAppsHook
+, wrapGAppsHook3
 , glib
 , gnome
 , mkCoqDerivation
@@ -26,7 +26,7 @@ mkCoqDerivation rec {
 
   buildInputs = [
     copyDesktopItems
-    wrapGAppsHook
+    wrapGAppsHook3
     coq.ocamlPackages.lablgtk3-sourceview3
     glib
     gnome.adwaita-icon-theme
diff --git a/pkgs/development/coq-modules/ssprove/default.nix b/pkgs/development/coq-modules/ssprove/default.nix
new file mode 100644
index 000000000000..714872170c3b
--- /dev/null
+++ b/pkgs/development/coq-modules/ssprove/default.nix
@@ -0,0 +1,48 @@
+{ lib, mkCoqDerivation, coq, version ? null
+, equations
+, mathcomp-ssreflect
+, mathcomp-analysis
+, extructures
+, deriving
+}:
+
+(mkCoqDerivation {
+  pname = "ssprove";
+  owner = "SSProve";
+
+  inherit version;
+  defaultVersion = with lib.versions; lib.switch [coq.coq-version mathcomp-ssreflect.version] [
+    { cases = [(range "8.18" "8.19") (range "2.1.0" "2.2.0")]; out = "0.2.0"; }
+    # This is the original dependency:
+    # { cases = ["8.17" "1.18.0"]; out = "0.1.0"; }
+    # But it is not loadable. The math-comp nixpkgs configuration
+    # will always only output version 1.18.0 for Coq 8.17.
+    # Hence, the Coq 8.17 and math-comp 1.17.0 must be explicitly set
+    # to load it.
+    # (This version is not on the math-comp CI and hence not checked.)
+    { cases = ["8.17" "1.17.0"]; out = "0.1.0"; }
+  ] null;
+
+  releaseRev = v: "v${v}";
+
+  release."0.2.0".sha256 = "sha256-GDkWH0LUsW165vAUoYC5of9ndr0MbfBtmrPhsJVXi3o=";
+  release."0.1.0".sha256 = "sha256-Yj+k+mBsudi3d6bRVlZLyM4UqQnzAX5tHvxtKoIuNTE=";
+
+  propagatedBuildInputs = [equations
+                           mathcomp-ssreflect
+                           mathcomp-analysis
+                           extructures
+                           deriving];
+
+  meta = with lib; {
+    description = "SSProve: A Foundational Framework for Modular Cryptographic Proofs in Coq";
+    license = licenses.mit;
+    maintainers = [ {
+      name = "Sebastian Ertel";
+      email = "sebastian.ertel@gmail.com";
+      github = "sertel";
+      githubId = 3703100;
+    } ];
+  };
+
+})
diff --git a/pkgs/development/coq-modules/vscoq-language-server/default.nix b/pkgs/development/coq-modules/vscoq-language-server/default.nix
index ee74d77101e7..e79bd4f60f8d 100644
--- a/pkgs/development/coq-modules/vscoq-language-server/default.nix
+++ b/pkgs/development/coq-modules/vscoq-language-server/default.nix
@@ -1,4 +1,4 @@
-{ metaFetch, mkCoqDerivation, coq, lib, glib, gnome, wrapGAppsHook,
+{ metaFetch, mkCoqDerivation, coq, lib, glib, gnome, wrapGAppsHook3,
   version ? null }:
 
 let ocamlPackages = coq.ocamlPackages;
@@ -21,7 +21,7 @@ ocamlPackages.buildDunePackage {
   src = "${fetched.src}/language-server";
   nativeBuildInputs = [ coq ];
   buildInputs =
-    [ coq glib gnome.adwaita-icon-theme wrapGAppsHook ] ++
+    [ coq glib gnome.adwaita-icon-theme wrapGAppsHook3 ] ++
     (with ocamlPackages; [ findlib
       lablgtk3-sourceview3 yojson zarith ppx_inline_test
       ppx_assert ppx_sexp_conv ppx_deriving ppx_import sexplib
diff --git a/pkgs/development/embedded/arduino/arduino-core/chrootenv.nix b/pkgs/development/embedded/arduino/arduino-core/chrootenv.nix
index a97fa50aebf2..2efab1f1e2f5 100644
--- a/pkgs/development/embedded/arduino/arduino-core/chrootenv.nix
+++ b/pkgs/development/embedded/arduino/arduino-core/chrootenv.nix
@@ -14,7 +14,6 @@ buildFHSEnv {
         pyserial
       ]))
     ]);
-  multiArch = false;
 
   extraInstallCommands = ''
     ${lib.optionalString withGui ''
diff --git a/pkgs/development/embedded/arduino/arduino-core/default.nix b/pkgs/development/embedded/arduino/arduino-core/default.nix
index cf9e014310df..43e6292143a4 100644
--- a/pkgs/development/embedded/arduino/arduino-core/default.nix
+++ b/pkgs/development/embedded/arduino/arduino-core/default.nix
@@ -13,7 +13,7 @@
 , readline
 , withGui ? false
 , gtk3
-, wrapGAppsHook
+, wrapGAppsHook3
 , withTeensyduino ? false
   /* Packages needed for Teensyduino */
 , upx
@@ -113,7 +113,7 @@ stdenv.mkDerivation rec {
   # the glib setup hook will populate GSETTINGS_SCHEMAS_PATH,
   # wrapGAppHooks (among other things) adds it to XDG_DATA_DIRS
   # so 'save as...' works:
-  nativeBuildInputs = [ glib stripJavaArchivesHook wrapGAppsHook unzip ];
+  nativeBuildInputs = [ glib stripJavaArchivesHook wrapGAppsHook3 unzip ];
   buildInputs = [
     jdk
     ant
diff --git a/pkgs/development/embedded/bossa/default.nix b/pkgs/development/embedded/bossa/default.nix
index 58ee0642fb38..0444a2000a46 100644
--- a/pkgs/development/embedded/bossa/default.nix
+++ b/pkgs/development/embedded/bossa/default.nix
@@ -5,6 +5,7 @@
 , libX11
 , readline
 , darwin
+, fetchpatch
 }:
 
 let
@@ -31,6 +32,15 @@ stdenv.mkDerivation rec {
     sha256 = "sha256-8M3MU/+Y1L6SaQ1yoC9Z27A/gGruZdopLnL1z7h7YJw=";
   };
 
+  patches = [
+    (fetchpatch {
+      # Required for building on Darwin with clang >=15.
+      name = "pr-172-fix.patch";
+      url = "https://github.com/shumatech/BOSSA/commit/6e54973c3c758674c3d04b5e2cf12e097006f6a3.patch";
+      hash = "sha256-2lp6Ej3IfofztC1n/yHLjabn0MH4BA/CM3dsnAw8klA=";
+    })
+  ];
+
   postPatch = ''
     substituteInPlace Makefile \
       --replace "-arch x86_64" ""
diff --git a/pkgs/development/embedded/rshell/default.nix b/pkgs/development/embedded/rshell/default.nix
index 591331464e3a..b42651aa1404 100644
--- a/pkgs/development/embedded/rshell/default.nix
+++ b/pkgs/development/embedded/rshell/default.nix
@@ -3,15 +3,12 @@
 , fetchPypi
 , pyserial
 , pyudev
-, pythonOlder
 }:
 
 buildPythonApplication rec {
   pname = "rshell";
   version = "0.0.32";
 
-  disabled = pythonOlder "3.4";
-
   src = fetchPypi {
     inherit pname version;
     sha256 = "sha256-frIwZ21JzVgxRS+KouBjDShHCP1lCoUwwySy2oFGcJ8=";
diff --git a/pkgs/development/guile-modules/guile-git/default.nix b/pkgs/development/guile-modules/guile-git/default.nix
index 0314ed738ed4..ef5213b26cbe 100644
--- a/pkgs/development/guile-modules/guile-git/default.nix
+++ b/pkgs/development/guile-modules/guile-git/default.nix
@@ -11,13 +11,13 @@
 
 stdenv.mkDerivation rec {
   pname = "guile-git";
-  version = "0.6.0";
+  version = "0.7.0";
 
   src = fetchFromGitLab {
     owner = "guile-git";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-+GVGM9XOy8+nFChyJazRWsNBjS+HYUBnbUErCVkxZyg=";
+    sha256 = "sha256-7xKs5Biq9HHOJbNILLU1oX8oPuEbti0uLMiobKz//bU=";
   };
 
   strictDeps = true;
diff --git a/pkgs/development/guile-modules/guile-lib/default.nix b/pkgs/development/guile-modules/guile-lib/default.nix
index ca9989bfcd18..1262cd73f670 100644
--- a/pkgs/development/guile-modules/guile-lib/default.nix
+++ b/pkgs/development/guile-modules/guile-lib/default.nix
@@ -9,11 +9,11 @@
 
 stdenv.mkDerivation rec {
   pname = "guile-lib";
-  version = "0.2.8";
+  version = "0.2.8.1";
 
   src = fetchurl {
     url = "mirror://savannah/${pname}/${pname}-${version}.tar.gz";
-    hash = "sha256-ZOkC7gy7LO4e+4Fow7+e1J4LMqiiPbhj6DvxSBfXZ9k=";
+    hash = "sha256-E3TC2Dnmoz0ZDNHavZx/h3U/g4T1W4ZvPhQhVcIrSbE=";
   };
 
   strictDeps = true;
diff --git a/pkgs/development/haskell-modules/configuration-common.nix b/pkgs/development/haskell-modules/configuration-common.nix
index a0ab31525888..baae6e1a0cfa 100644
--- a/pkgs/development/haskell-modules/configuration-common.nix
+++ b/pkgs/development/haskell-modules/configuration-common.nix
@@ -433,22 +433,22 @@ self: super: {
 
   # Manually maintained
   cachix-api = overrideCabal (drv: {
-    version = "1.7";
+    version = "1.7.3";
     src = pkgs.fetchFromGitHub {
       owner = "cachix";
       repo = "cachix";
-      rev = "v1.7";
-      sha256 = "sha256-d9BohugsKajvjNgt+VyXHuDdLOFKr9mhwpdUNkpIP3s=";
+      rev = "v1.7.3";
+      sha256 = "sha256-BBhOFK4OuCD7ilNrdfeAILBR2snxl29gBk58szZ4460=";
     };
     postUnpack = "sourceRoot=$sourceRoot/cachix-api";
   }) super.cachix-api;
   cachix = (overrideCabal (drv: {
-    version = "1.7";
+    version = "1.7.3";
     src = pkgs.fetchFromGitHub {
       owner = "cachix";
       repo = "cachix";
-      rev = "v1.7";
-      sha256 = "sha256-d9BohugsKajvjNgt+VyXHuDdLOFKr9mhwpdUNkpIP3s=";
+      rev = "v1.7.3";
+      sha256 = "sha256-BBhOFK4OuCD7ilNrdfeAILBR2snxl29gBk58szZ4460=";
     };
     postUnpack = "sourceRoot=$sourceRoot/cachix";
   }) (lib.pipe
@@ -732,7 +732,6 @@ self: super: {
   Rlang-QQ = dontCheck super.Rlang-QQ;
   safecopy = dontCheck super.safecopy;
   sai-shape-syb = dontCheck super.sai-shape-syb;
-  saltine = dontCheck super.saltine; # https://github.com/tel/saltine/pull/56
   scp-streams = dontCheck super.scp-streams;
   sdl2 = dontCheck super.sdl2; # the test suite needs an x server
   separated = dontCheck super.separated;
@@ -752,6 +751,7 @@ self: super: {
   translatable-intset = dontCheck super.translatable-intset;
   ua-parser = dontCheck super.ua-parser;
   unagi-chan = dontCheck super.unagi-chan;
+  universe-some = dontCheck super.universe-some;
   wai-logger = dontCheck super.wai-logger;
   WebBits = dontCheck super.WebBits;                    # http://hydra.cryp.to/build/499604/log/raw
   webdriver = dontCheck super.webdriver;
@@ -934,22 +934,6 @@ self: super: {
   # https://github.com/Euterpea/Euterpea2/issues/40
   Euterpea = doJailbreak super.Euterpea;
 
-  # Install icons, metadata and cli program.
-  bustle = appendPatches [
-    # Fix build with libpcap 1.10.2
-    # https://gitlab.freedesktop.org/bustle/bustle/-/merge_requests/21
-    (pkgs.fetchpatch {
-      url = "https://gitlab.freedesktop.org/bustle/bustle/-/commit/77e2de892cd359f779c84739682431a66eb8cf31.patch";
-      hash = "sha256-sPb6/Z/ANids53aL9VsMHa/v5y+TA1ZY3jwAXlEH3Ec=";
-    })
-  ] (overrideCabal (drv: {
-    buildDepends = [ pkgs.libpcap ];
-    buildTools = with pkgs.buildPackages; [ gettext perl help2man ];
-    postInstall = ''
-      make install PREFIX=$out
-    '';
-  }) super.bustle);
-
   # Byte-compile elisp code for Emacs.
   ghc-mod = overrideCabal (drv: {
     preCheck = "export HOME=$TMPDIR";
@@ -1320,9 +1304,6 @@ self: super: {
   # https://github.com/haskell/hoopl/issues/50
   hoopl = dontCheck super.hoopl;
 
-  # Generate shell completion for spago
-  spago = self.generateOptparseApplicativeCompletions [ "spago" ] super.spago;
-
   # https://github.com/DanielG/cabal-helper/pull/123
   cabal-helper = doJailbreak super.cabal-helper;
 
@@ -1361,11 +1342,21 @@ self: super: {
     (dontCheckIf (!pkgs.postgresql.doCheck))
   ];
 
+  # Requires pqueue <1.5 but it works fine with pqueue-1.5.0.0
+  # https://github.com/haskell-beam/beam/pull/705
+  beam-migrate = doJailbreak super.beam-migrate;
+
   users-postgresql-simple = addTestToolDepends [
     pkgs.postgresql
     pkgs.postgresqlTestHook
   ] super.users-postgresql-simple;
 
+  # Need https://github.com/obsidiansystems/gargoyle/pull/45
+  gargoyle = doJailbreak super.gargoyle;
+  gargoyle-postgresql = doJailbreak super.gargoyle-postgresql;
+  gargoyle-postgresql-nix = doJailbreak (addBuildTool [pkgs.postgresql] super.gargoyle-postgresql-nix);
+  gargoyle-postgresql-connect = doJailbreak super.gargoyle-postgresql-connect;
+
   # PortMidi needs an environment variable to have ALSA find its plugins:
   # https://github.com/NixOS/nixpkgs/issues/6860
   PortMidi = overrideCabal (drv: {
@@ -1395,8 +1386,6 @@ self: super: {
   # Fix build with attr-2.4.48 (see #53716)
   xattr = appendPatch ./patches/xattr-fix-build.patch super.xattr;
 
-  patch = dontCheck super.patch;
-
   esqueleto =
     overrideCabal
       (drv: {
@@ -1546,11 +1535,6 @@ self: super: {
   # 2021-12-26: Too strict bounds on doctest
   polysemy-plugin = doJailbreak super.polysemy-plugin;
 
-  # hasn’t bumped upper bounds
-  # upstream: https://github.com/obsidiansystems/which/pull/6
-  which = doJailbreak super.which;
-
-
   # 2024-02-28: The Hackage version dhall-lsp-server-1.1.3 requires
   # lsp-1.4.0.0 which is hard to build with this LTS. However, the latest
   # git version of dhall-lsp-server works with lsp-2.1.0.0, and only
@@ -1577,13 +1561,11 @@ self: super: {
       doJailbreak
     ];
 
-  # 2022-03-16: lens bound can be loosened https://github.com/ghcjs/jsaddle-dom/issues/19
   jsaddle-dom = overrideCabal (old: {
     postPatch = old.postPatch or "" + ''
-      sed -i 's/lens.*4.20/lens/' jsaddle-dom.cabal
       rm Setup.hs
     '';
-  }) (doJailbreak super.jsaddle-dom);
+  }) super.jsaddle-dom;
   jsaddle-hello = doJailbreak super.jsaddle-hello;
   ghcjs-dom-hello = doJailbreak super.ghcjs-dom-hello;
 
@@ -1849,9 +1831,6 @@ self: super: {
   # https://github.com/adnelson/semver-range/issues/15
   semver-range = dontCheck super.semver-range;
 
-  # https://github.com/obsidiansystems/dependent-sum/issues/55
-  dependent-sum = doJailbreak super.dependent-sum;
-
   # 2022-06-19: Disable checks because of https://github.com/reflex-frp/reflex/issues/475
   reflex = doJailbreak (dontCheck super.reflex);
 
@@ -2079,18 +2058,31 @@ self: super: {
   # Issue reported upstream, no bug tracker url yet.
   darcs = doJailbreak super.darcs;
 
-  # Too strict version bounds on cryptonite and github.
-  # PRs are merged, will be fixed next release or Hackage revision.
-  nix-thunk = appendPatches [
-    (fetchpatch {
-      url = "https://github.com/obsidiansystems/nix-thunk/commit/49d27a85dd39cd9413c99958c67e596756a502b5.patch";
-      sha256 = "1p1n0123yrbdqyfk4kx3gq6bdv65l1bxgbsg51ckcwclg54xp2p5";
-    })
-    (fetchpatch {
-      url = "https://github.com/obsidiansystems/nix-thunk/commit/512867c651977265d5d8f456b538f7a364ec8a8b.patch";
-      sha256 = "121yg26y4g28k8xv7y1j6c3pxm17vsjn3vi62kkc8g928c47yd02";
-    })
-  ] super.nix-thunk;
+  # Need https://github.com/obsidiansystems/cli-extras/pull/12 and more
+  cli-extras = doJailbreak super.cli-extras;
+
+  # https://github.com/obsidiansystems/cli-git/pull/7 turned into a flat patch
+  cli-git = lib.pipe super.cli-git [
+    (appendPatch (fetchpatch {
+      url = "https://github.com/obsidiansystems/cli-git/commit/be378a97e2f46522174231b77c952f759df3fad6.patch";
+      sha256 = "sha256-6RrhqkKpnb+FTHxccHNx6pdC7ClfqcJ2eoo+W7h+JUo=";
+      excludes = [ ".github/**" ];
+    }))
+    doJailbreak
+    (addBuildTool pkgs.git)
+  ];
+
+  # Need https://github.com/obsidiansystems/cli-nix/pull/5 and more
+  cli-nix = addBuildTools [
+    pkgs.nix
+    pkgs.nix-prefetch-git
+  ] (doJailbreak super.cli-nix);
+
+  # https://github.com/obsidiansystems/nix-thunk/pull/51/
+  nix-thunk = appendPatch (fetchpatch {
+    url = "https://github.com/obsidiansystems/nix-thunk/commit/c3dc3e799e8ce7756330f98b9f73f59c4b7a5502.patch";
+    sha256 = "sha256-C1ii1FXiCPFfw5NzyQZ0cEG6kIYGohVsnHycpYEJ24Q=";
+  }) (doJailbreak super.nix-thunk);
 
   # list `modbus` in librarySystemDepends, correct to `libmodbus`
   libmodbus = doJailbreak (addExtraLibrary pkgs.libmodbus super.libmodbus);
@@ -2103,9 +2095,14 @@ self: super: {
 
   ginger = doJailbreak super.ginger;
 
-  # Too strict version bounds on cryptonite
-  # https://github.com/obsidiansystems/haveibeenpwned/issues/7
-  haveibeenpwned = doJailbreak super.haveibeenpwned;
+  # 2024-05-05 syntax changes: https://github.com/obsidiansystems/haveibeenpwned/pull/9
+  haveibeenpwned = appendPatch
+    (fetchpatch {
+      url = "https://github.com/obsidiansystems/haveibeenpwned/pull/9/commits/14c134eec7de12f755b2d4667727762a8a1a6476.patch";
+      sha256 = "sha256-fau5+b6tufJ+MscrLgbYvvBsekPe8R6QAy/4H31dcQ4";
+    })
+    (doJailbreak super.haveibeenpwned);
+
 
   # Too strict version bounds on ghc-events
   # https://github.com/mpickering/hs-speedscope/issues/16
@@ -2188,11 +2185,6 @@ self: super: {
             compiler: ${self.ghc.haskellCompilerName}
 
             core-packages:
-              # Hack: The following package is a core package of GHCJS. If we don't declare
-              # it, then hackage2nix will generate a Hackage database where all dependants
-              # of this library are marked as "broken".
-              - ghcjs-base-0
-
             EOF
 
             ghc-pkg list \
@@ -2258,6 +2250,13 @@ self: super: {
   # https://github.com/merijn/paramtree/issues/4
   paramtree = dontCheck super.paramtree;
 
+  # https://github.com/haskell-gi/haskell-gi/issues/431
+  haskell-gi = appendPatch (fetchpatch {
+      url = "https://github.com/haskell-gi/haskell-gi/pull/430/commits/9ee545ad5028e5de8e1e1d96bbba2b9dbab47480.diff";
+      hash = "sha256-kh32mZ7EdlOsg7HQILB7Y/EkHIqG/mozbnd/kbP+WDk=";
+    })
+    super.haskell-gi;
+
   # Too strict version bounds on haskell-gi
   # https://github.com/owickstrom/gi-gtk-declarative/issues/100
   gi-gtk-declarative = doJailbreak super.gi-gtk-declarative;
@@ -2608,8 +2607,30 @@ self: super: {
   # 2022-03-16: Upstream stopped updating bounds https://github.com/haskell-hvr/base-noprelude/pull/15
   base-noprelude = doJailbreak super.base-noprelude;
 
-  # 2022-03-16: Bounds need to be loosened https://github.com/obsidiansystems/dependent-sum-aeson-orphans/issues/10
-  dependent-sum-aeson-orphans = doJailbreak super.dependent-sum-aeson-orphans;
+  # 2025-05-05: Bounds need to be loosened https://github.com/obsidiansystems/dependent-sum-aeson-orphans/pull/13
+  dependent-monoidal-map = appendPatch (fetchpatch {
+    url = "https://github.com/obsidiansystems/dependent-monoidal-map/commit/3f8be15fa9bd2796d1c917e9f0979b4d6c62cf91.patch";
+    hash = "sha256-QKDUh4jO8xZrThrkjTVNnkoVY+GejxOhpXOVA4+n1H8=";
+  }) super.dependent-monoidal-map;
+
+  # 2025-05-05: Bounds need to be loosened https://github.com/obsidiansystems/dependent-sum-aeson-orphans/pull/13
+  dependent-sum-aeson-orphans = appendPatch (fetchpatch {
+    url = "https://github.com/obsidiansystems/dependent-sum-aeson-orphans/commit/9b4698154303a9865d7d68a2f01d280a8a39f108.patch";
+    hash = "sha256-Pzjl2yp01XsYWcyhpLnsuccg7bOACgv+RpafauUox8c=";
+  }) super.dependent-sum-aeson-orphans;
+
+  # https://github.com/obsidiansystems/dependent-sum/pull/73
+  dependent-sum-template = appendPatch (fetchpatch {
+    url = "https://github.com/obsidiansystems/dependent-sum/commit/619727ba1792e39a68d23c62e75a923672e87a54.patch";
+    hash = "sha256-SyD1/KrX1KUjrR82fvI+BRcqLC2Q3AbvSeKNrdGstjg=";
+    relative = "dependent-sum-template";
+  }) super.dependent-sum-template;
+
+  aeson-gadt-th = appendPatch (fetchpatch {
+    url = "https://github.com/obsidiansystems/aeson-gadt-th/commit/8f6922a6440019dece637d73d70766c473bcd6c0.patch";
+    hash = "sha256-564DhfiubwNV8nAj8L5DzsWn4MdzqqaYYNmOSPUa7ys=";
+    excludes = [ ".github/**" ];
+  }) super.aeson-gadt-th;
 
   # Too strict bounds on chell: https://github.com/fpco/haskell-filesystem/issues/24
   system-fileio = doJailbreak super.system-fileio;
@@ -2626,12 +2647,27 @@ self: super: {
   # https://github.com/ngless-toolkit/ngless/issues/152
   NGLess = dontCheck super.NGLess;
 
-  # Raise version bounds for hspec
+  # Raise version bounds: https://github.com/well-typed/lens-sop/pull/4
+  lens-sop = appendPatches [
+    (fetchpatch {
+      url = "https://github.com/well-typed/lens-sop/commit/d8657f27c12191a7c0a91701c0fcd9a590e0090e.patch";
+      sha256 = "sha256-9ODfbOb6Bs3EVTY9b7cUvkNmqzzZPWUmgmlAneaN3Tw=";
+    })
+    (fetchpatch {
+      url = "https://github.com/well-typed/lens-sop/commit/b7ecffdeb836d19373871659e2f8cd24da6f7312.patch";
+      sha256 = "sha256-hDUQ2fW9Qyom65YvtW9bsbz7XtueRmdsAbAB42D+gu4=";
+    })
+  ] super.lens-sop;
+
+  # Raise version bounds: https://github.com/kosmikus/records-sop/pull/15
   records-sop = appendPatch (fetchpatch {
-    url = "https://github.com/kosmikus/records-sop/pull/11/commits/d88831388ab3041190130fec3cdd679a4217b3c7.patch";
-    sha256 = "sha256-O+v/OxvqnlWX3HaDvDIBZnJ+Og3xs/SJqI3gaouU3ZI=";
+    url = "https://github.com/kosmikus/records-sop/commit/fb149f453a816ff14d0cb20b3ea56b80ff49d9f1.patch";
+    sha256 = "sha256-iHiF4EWL/GjJFnr/6aR+yMZKLMLAZK+gsgSxG8YaeDI=";
   }) super.records-sop;
 
+  # Need https://github.com/well-typed/large-records/pull/151
+  large-generics = doJailbreak super.large-generics;
+
   # Fix build failures for ghc 9 (https://github.com/mokus0/polynomial/pull/20)
   polynomial = appendPatch (fetchpatch {
     name = "haskell-polynomial.20.patch";
@@ -2944,7 +2980,7 @@ self: super: {
 
   # Requires a newer zlib version than stackage provides
   futhark = super.futhark.override {
-    zlib = self.zlib_0_7_0_0;
+    zlib = self.zlib_0_7_1_0;
   };
 
   # Tests rely on (missing) submodule
@@ -2961,7 +2997,7 @@ self: super: {
   }) super.kmonad;
 
   ghc-syntax-highlighter_0_0_11_0 = super.ghc-syntax-highlighter_0_0_11_0.overrideScope(self: super: {
-    ghc-lib-parser = self.ghc-lib-parser_9_8_2_20240223;
+    ghc-lib-parser = self.ghc-lib-parser_9_10_1_20240511;
   });
 
   # 2024-03-17: broken
@@ -2998,6 +3034,14 @@ self: super: {
   # 2024-03-25: HSH broken because of the unix-2.8.0.0 breaking change
   HSH = appendPatches [./patches/HSH-unix-openFd.patch] super.HSH;
 
+  # Support unix < 2.8 to build in older ghc than 9.6
+  linux-namespaces = appendPatch
+    (fetchpatch {
+      url = "https://github.com/redneb/hs-linux-namespaces/commit/f4a3546541bb6c7172fdd03e177a961da60e3951.patch";
+      sha256 = "sha256-6Qv7NWIbzR3ktMGFogw5597bIqPH7Z4hoFvvBQAoquY=";
+    })
+    super.linux-namespaces;
+
   inherit
     (let
       unbreakRepa = packageName: drv: lib.pipe drv [
@@ -3056,4 +3100,11 @@ self: super: {
 
   # Too strict bounds on text. Can be removed after https://github.com/alx741/currencies/pull/3 is merged
   currencies = doJailbreak super.currencies;
+
+  # https://github.com/awakesecurity/proto3-wire/pull/104
+  proto3-wire = appendPatch (pkgs.fetchpatch {
+    url = "https://github.com/awakesecurity/proto3-wire/commit/c1cadeb5fca2e82c5b28e2811c01f5b37eb21ed8.patch";
+    hash = "sha256-tFOWpjGmZANC7H82QapZ36raaNWuZ6F3BgjxnfTXpMs=";
+  }) super.proto3-wire;
+
 } // import ./configuration-tensorflow.nix {inherit pkgs haskellLib;} self super
diff --git a/pkgs/development/haskell-modules/configuration-darwin.nix b/pkgs/development/haskell-modules/configuration-darwin.nix
index 3e7bf1f89f7c..f3267f376b62 100644
--- a/pkgs/development/haskell-modules/configuration-darwin.nix
+++ b/pkgs/development/haskell-modules/configuration-darwin.nix
@@ -316,6 +316,13 @@ self: super: ({
 
   # Tests fail on macOS https://github.com/mrkkrp/zip/issues/112
   zip = dontCheck super.zip;
+
+  # cabal lib set as unbuildable in linux so callCabal2nix generates a dummy derivation
+  jsaddle-wkwebview = overrideCabal (drv: {
+    libraryFrameworkDepends = with pkgs.buildPackages.darwin.apple_sdk.frameworks; [ Cocoa WebKit ];
+    libraryHaskellDepends = with self; [ aeson data-default jsaddle ];
+  }) super.jsaddle-wkwebview;
+
 } // lib.optionalAttrs pkgs.stdenv.isAarch64 {  # aarch64-darwin
 
   # https://github.com/fpco/unliftio/issues/87
diff --git a/pkgs/development/haskell-modules/configuration-ghc-8.10.x.nix b/pkgs/development/haskell-modules/configuration-ghc-8.10.x.nix
index 3e7907689822..961d4caffb80 100644
--- a/pkgs/development/haskell-modules/configuration-ghc-8.10.x.nix
+++ b/pkgs/development/haskell-modules/configuration-ghc-8.10.x.nix
@@ -82,9 +82,6 @@ self: super: {
   base-noprelude = doJailbreak super.base-noprelude;
   unliftio-core = doJailbreak super.unliftio-core;
 
-  # Jailbreaking because monoidal-containers hasn’t bumped it's base dependency for 8.10.
-  monoidal-containers = doJailbreak super.monoidal-containers;
-
   # Jailbreak to fix the build.
   brick = doJailbreak super.brick;
   exact-pi = doJailbreak super.exact-pi;
diff --git a/pkgs/development/haskell-modules/configuration-ghc-9.6.x.nix b/pkgs/development/haskell-modules/configuration-ghc-9.6.x.nix
index 35a886c1d6bd..14084bcf03d5 100644
--- a/pkgs/development/haskell-modules/configuration-ghc-9.6.x.nix
+++ b/pkgs/development/haskell-modules/configuration-ghc-9.6.x.nix
@@ -180,6 +180,16 @@ self: super: {
       sha256 = "sha256-b7u9GiIAd2xpOrM0MfILHNb6Nt7070lNRIadn2l3DfQ=";
     })];
   }) super.ConfigFile;
+
+  # This runs into the following GHC bug currently affecting 9.6.* and 9.8.* as
+  # well as 9.10.1: https://gitlab.haskell.org/ghc/ghc/-/issues/24432
+  inherit (lib.mapAttrs (_: overrideCabal (drv: {
+      badPlatforms = drv.badPlatforms or [ ] ++ [ "aarch64-linux" ];
+    })) super)
+    mueval
+    lambdabot
+    lambdabot-haskell-plugins
+    ;
 }
 # super.ghc is required to break infinite recursion as Nix is strict in the attrNames
 // lib.optionalAttrs (pkgs.stdenv.hostPlatform.isAarch64 && lib.versionOlder super.ghc.version "9.6.4") {
diff --git a/pkgs/development/haskell-modules/configuration-ghc-9.8.x.nix b/pkgs/development/haskell-modules/configuration-ghc-9.8.x.nix
index 624b767f47c9..5e1630f839d3 100644
--- a/pkgs/development/haskell-modules/configuration-ghc-9.8.x.nix
+++ b/pkgs/development/haskell-modules/configuration-ghc-9.8.x.nix
@@ -53,9 +53,9 @@ self: super: {
   # Version upgrades
   #
   th-abstraction = doDistribute self.th-abstraction_0_7_0_0;
-  ghc-lib-parser = doDistribute self.ghc-lib-parser_9_8_2_20240223;
+  ghc-lib-parser = doDistribute self.ghc-lib-parser_9_10_1_20240511;
   ghc-lib-parser-ex = doDistribute self.ghc-lib-parser-ex_9_8_0_2;
-  ghc-lib = doDistribute self.ghc-lib_9_8_2_20240223;
+  ghc-lib = doDistribute self.ghc-lib_9_10_1_20240511;
   megaparsec = doDistribute self.megaparsec_9_6_1;
   # TODO: remove when aeson updates or launches a revision
   # see https://github.com/haskell/aeson/issues/1089 and https://github.com/haskell/aeson/pulls/1088
@@ -88,10 +88,14 @@ self: super: {
   #
   blaze-svg = doJailbreak super.blaze-svg; # base <4.19
   commutative-semigroups = doJailbreak super.commutative-semigroups; # base < 4.19
+  dependent-sum-template = doJailbreak super.dependent-sum-template_0_2_0_1; # template-haskell < 2.21
   diagrams-lib = doJailbreak super.diagrams-lib; # base <4.19, text <2.1
   diagrams-postscript = doJailbreak super.diagrams-postscript;  # base <4.19, bytestring <0.12
   diagrams-svg = doJailbreak super.diagrams-svg;  # base <4.19, text <2.1
+  generics-sop = doJailbreak super.generics-sop_0_5_1_4; # th-abstraction >=0.6 && <0.7
   ghc-trace-events = doJailbreak super.ghc-trace-events; # text < 2.1, bytestring < 0.12, base < 4.19
+  hashing = doJailbreak super.hashing; # bytestring <0.12
+  json-sop = doJailbreak super.json-sop; # aeson <2.2, base <4.19, text <2.1
   primitive-unlifted = doJailbreak super.primitive-unlifted; # bytestring < 0.12
   statestack = doJailbreak super.statestack; # base < 4.19
   newtype-generics = doJailbreak super.newtype-generics; # base < 4.19
@@ -102,10 +106,12 @@ self: super: {
   terminfo_0_4_1_6 = doJailbreak super.terminfo_0_4_1_6;
   HaskellNet-SSL = doJailbreak super.HaskellNet-SSL; # bytestring >=0.9 && <0.12
   raven-haskell = doJailbreak super.raven-haskell; # aeson <2.2
+  saltine = doJailbreak super.saltine; # bytestring  && <0.12, deepseq <1.5, text > 1.2 && <1.3 || >=2.0 && <2.1
   stripe-concepts = doJailbreak super.stripe-concepts; # text >=1.2.5 && <1.3 || >=2.0 && <2.1
   stripe-signature = doJailbreak super.stripe-signature; # text >=1.2.5 && <1.3 || >=2.0 && <2.1
   string-random = doJailbreak super.string-random; # text >=1.2.2.1 && <2.1
   inflections = doJailbreak super.inflections; # text >=0.2 && <2.1
+  universe-some = doJailbreak super.universe-some; # th-abstraction < 0.7
 
   #
   # Test suite issues
@@ -131,4 +137,14 @@ self: super: {
       })
     super.libmpd;
 
+  # Loosen bounds
+  patch = appendPatch (pkgs.fetchpatch {
+    url = "https://github.com/reflex-frp/patch/commit/91fed138483a7bf2b098d45b9e5cc36191776320.patch";
+    sha256 = "sha256-/KLfIshia88lU5G/hA7ild7+a2mqc7qgSa9AEBqEqkQ=";
+  }) super.patch;
+  reflex = appendPatch (pkgs.fetchpatch {
+    url = "https://github.com/reflex-frp/reflex/commit/0ac53ca3eab2649dd3f3edc585e10af8d13b28cd.patch";
+    sha256 = "sha256-umjwgdSKebJdRrXjwHhsi8HBqotx1vFibY9ttLkyT/0=";
+  }) super.reflex;
+
 }
diff --git a/pkgs/development/haskell-modules/configuration-ghcjs.nix b/pkgs/development/haskell-modules/configuration-ghcjs.nix
index d98107957e6c..f90f3094ab9e 100644
--- a/pkgs/development/haskell-modules/configuration-ghcjs.nix
+++ b/pkgs/development/haskell-modules/configuration-ghcjs.nix
@@ -26,7 +26,7 @@ self: super:
 
   # GHCJS does not ship with the same core packages as GHC.
   # https://github.com/ghcjs/ghcjs/issues/676
-  stm = doJailbreak self.stm_2_5_3_0;
+  stm = doJailbreak self.stm_2_5_3_1;
   exceptions = dontCheck self.exceptions_0_10_7;
 
 ## OTHER PACKAGES
diff --git a/pkgs/development/haskell-modules/configuration-hackage2nix/broken.yaml b/pkgs/development/haskell-modules/configuration-hackage2nix/broken.yaml
index 584197463269..b32bd0d79d25 100644
--- a/pkgs/development/haskell-modules/configuration-hackage2nix/broken.yaml
+++ b/pkgs/development/haskell-modules/configuration-hackage2nix/broken.yaml
@@ -38,6 +38,7 @@ broken-packages:
   - acme-memorandom # failure in job https://hydra.nixos.org/build/233222926 at 2023-09-02
   - acme-miscorder # failure in job https://hydra.nixos.org/build/233209957 at 2023-09-02
   - acme-mutable-package # failure in job https://hydra.nixos.org/build/233213349 at 2023-09-02
+  - acme-not-a-joke # failure in job https://hydra.nixos.org/build/259604911 at 2024-05-15
   - acme-now # failure in job https://hydra.nixos.org/build/233243289 at 2023-09-02
   - acme-numbersystem # failure in job https://hydra.nixos.org/build/233208106 at 2023-09-02
   - acme-operators # failure in job https://hydra.nixos.org/build/233248282 at 2023-09-02
@@ -83,7 +84,6 @@ broken-packages:
   - aeson-flat # failure in job https://hydra.nixos.org/build/233220787 at 2023-09-02
   - aeson-flatten # failure in job https://hydra.nixos.org/build/233242954 at 2023-09-02
   - aeson-flowtyped # failure in job https://hydra.nixos.org/build/233245878 at 2023-09-02
-  - aeson-gadt-th # failure in job https://hydra.nixos.org/build/233247060 at 2023-09-02
   - aeson-generics-typescript # failure in job https://hydra.nixos.org/build/245703304 at 2024-01-07
   - aeson-injector # failure in job https://hydra.nixos.org/build/233200351 at 2023-09-02
   - aeson-json-ast # failure in job https://hydra.nixos.org/build/233249406 at 2023-09-02
@@ -369,7 +369,6 @@ broken-packages:
   - bash # failure in job https://hydra.nixos.org/build/252719390 at 2024-03-16
   - basic-gps # failure in job https://hydra.nixos.org/build/252718385 at 2024-03-16
   - basics # failure in job https://hydra.nixos.org/build/236678238 at 2023-10-04
-  - basic-sop # failure in job https://hydra.nixos.org/build/233253357 at 2023-09-02
   - baskell # failure in job https://hydra.nixos.org/build/233246705 at 2023-09-02
   - battlenet # failure in job https://hydra.nixos.org/build/233260076 at 2023-09-02
   - battleplace # failure in job https://hydra.nixos.org/build/233230199 at 2023-09-02
@@ -381,7 +380,6 @@ broken-packages:
   - bdo # failure in job https://hydra.nixos.org/build/233216486 at 2023-09-02
   - beamable # failure in job https://hydra.nixos.org/build/233211619 at 2023-09-02
   - beam # failure in job https://hydra.nixos.org/build/233213313 at 2023-09-02
-  - beam-migrate # failure in job https://hydra.nixos.org/build/252730758 at 2024-03-16
   - beam-mysql # failure in job https://hydra.nixos.org/build/233253237 at 2023-09-02
   - beam-newtype-field # failure in job https://hydra.nixos.org/build/233206317 at 2023-09-02
   - bech32 # failure in job https://hydra.nixos.org/build/233194823 at 2023-09-02
@@ -707,7 +705,6 @@ broken-packages:
   - cayene-lpp # failure in job https://hydra.nixos.org/build/233228959 at 2023-09-02
   - cayley-client # failure in job https://hydra.nixos.org/build/233260112 at 2023-09-02
   - cblrepo # failure in job https://hydra.nixos.org/build/233251926 at 2023-09-02
-  - cbor-tool # failure in job https://hydra.nixos.org/build/233198797 at 2023-09-02
   - CCA # failure in job https://hydra.nixos.org/build/233206723 at 2023-09-02
   - ccast # failure in job https://hydra.nixos.org/build/233254517 at 2023-09-02
   - CC-delcont-cxe # failure in job https://hydra.nixos.org/build/233190865 at 2023-09-02
@@ -740,6 +737,7 @@ broken-packages:
   - changelog-d # failure in job https://hydra.nixos.org/build/253689337 at 2024-03-31
   - changelog-d # failure in job https://hydra.nixos.org/build/255671571 at 2024-04-16
   - changelog-d # failure in job https://hydra.nixos.org/build/257082502 at 2024-04-27
+  - changelog-d # failure in job https://hydra.nixos.org/build/259607598 at 2024-05-15
   - changelogged # failure in job https://hydra.nixos.org/build/233211675 at 2023-09-02
   - character-cases # failure in job https://hydra.nixos.org/build/233197636 at 2023-09-02
   - charter # failure in job https://hydra.nixos.org/build/233237264 at 2023-09-02
@@ -805,7 +803,6 @@ broken-packages:
   - clevercss # failure in job https://hydra.nixos.org/build/233206298 at 2023-09-02
   - clexer # failure in job https://hydra.nixos.org/build/233229804 at 2023-09-02
   - cli-builder # failure in job https://hydra.nixos.org/build/233209961 at 2023-09-02
-  - cli-extras # failure in job https://hydra.nixos.org/build/233226908 at 2023-09-02
   - CLI # failure in job https://hydra.nixos.org/build/233191087 at 2023-09-02
   - clif # failure in job https://hydra.nixos.org/build/233197110 at 2023-09-02
   - clifm # failure in job https://hydra.nixos.org/build/233227426 at 2023-09-02
@@ -1006,6 +1003,7 @@ broken-packages:
   - core-haskell # failure in job https://hydra.nixos.org/build/233222588 at 2023-09-02
   - corenlp-types # failure in job https://hydra.nixos.org/build/243808366 at 2024-01-01
   - core-warn # failure in job https://hydra.nixos.org/build/233204404 at 2023-09-02
+  - cornelis # failure in job https://hydra.nixos.org/build/259604220 at 2024-05-15
   - Coroutine # failure in job https://hydra.nixos.org/build/233211213 at 2023-09-02
   - coroutine-object # failure in job https://hydra.nixos.org/build/233220413 at 2023-09-02
   - couchdb-conduit # failure in job https://hydra.nixos.org/build/233227244 at 2023-09-02
@@ -1233,7 +1231,6 @@ broken-packages:
   - dense-int-set # failure in job https://hydra.nixos.org/build/233214797 at 2023-09-02
   - dependency # failure in job https://hydra.nixos.org/build/252727325 at 2024-03-16
   - dependent-hashmap # failure in job https://hydra.nixos.org/build/233202881 at 2023-09-02
-  - dependent-monoidal-map # failure in job https://hydra.nixos.org/build/233212829 at 2023-09-02
   - dep-t # failure in job https://hydra.nixos.org/build/233217847 at 2023-09-02
   - deptrack-core # failure in job https://hydra.nixos.org/build/233239143 at 2023-09-02
   - derangement # failure in job https://hydra.nixos.org/build/233209660 at 2023-09-02
@@ -1305,6 +1302,7 @@ broken-packages:
   - dijkstra-simple # failure in job https://hydra.nixos.org/build/233218373 at 2023-09-02
   - DimensionalHash # failure in job https://hydra.nixos.org/build/233230945 at 2023-09-02
   - dino # failure in job https://hydra.nixos.org/build/252725815 at 2024-03-16
+  - diohsc # failure in job https://hydra.nixos.org/build/259625302 at 2024-05-15
   - diophantine # failure in job https://hydra.nixos.org/build/233229215 at 2023-09-02
   - diplomacy # failure in job https://hydra.nixos.org/build/233207895 at 2023-09-02
   - direct-binary-files # failure in job https://hydra.nixos.org/build/233246387 at 2023-09-02
@@ -1548,6 +1546,7 @@ broken-packages:
   - erlang # failure in job https://hydra.nixos.org/build/233195837 at 2023-09-02
   - erlang-ffi # failure in job https://hydra.nixos.org/build/233233314 at 2023-09-02
   - eros # failure in job https://hydra.nixos.org/build/233247983 at 2023-09-02
+  - errata # failure in job https://hydra.nixos.org/build/259627186 at 2024-05-15
   - errno # failure in job https://hydra.nixos.org/build/252725782 at 2024-03-16
   - error-context # failure in job https://hydra.nixos.org/build/233245027 at 2023-09-02
   - error-continuations # failure in job https://hydra.nixos.org/build/233232357 at 2023-09-02
@@ -1570,7 +1569,6 @@ broken-packages:
   - ethereum-analyzer-deps # failure in job https://hydra.nixos.org/build/252732846 at 2024-03-16
   - ethereum-rlp # failure in job https://hydra.nixos.org/build/233236392 at 2023-09-02
   - eurofxref # failure in job https://hydra.nixos.org/build/233230942 at 2023-09-02
-  - evdev # failure in job https://hydra.nixos.org/build/236692293 at 2023-10-04
   - eve-cli # failure in job https://hydra.nixos.org/build/233254555 at 2023-09-02
   - eved # failure in job https://hydra.nixos.org/build/233194319 at 2023-09-02
   - eve # failure in job https://hydra.nixos.org/build/252715362 at 2024-03-16
@@ -1900,7 +1898,6 @@ broken-packages:
   - gang-of-threads # failure in job https://hydra.nixos.org/build/252716251 at 2024-03-16
   - Ganymede # failure in job https://hydra.nixos.org/build/233248892 at 2023-09-02
   - garepinoh # failure in job https://hydra.nixos.org/build/233238111 at 2023-09-02
-  - gargoyle # failure in job https://hydra.nixos.org/build/233196445 at 2023-09-02
   - gas # failure in job https://hydra.nixos.org/build/233233966 at 2023-09-02
   - gasp # failure in job https://hydra.nixos.org/build/252731457 at 2024-03-16
   - gather # failure in job https://hydra.nixos.org/build/233208848 at 2023-09-02
@@ -2410,7 +2407,6 @@ broken-packages:
   - hat # failure in job https://hydra.nixos.org/build/233243655 at 2023-09-02
   - hats # failure in job https://hydra.nixos.org/build/233256724 at 2023-09-02
   - hatt # failure in job https://hydra.nixos.org/build/233195039 at 2023-09-02
-  - haveibeenpwned # failure in job https://hydra.nixos.org/build/233253058 at 2023-09-02
   - haven # failure in job https://hydra.nixos.org/build/233216806 at 2023-09-02
   - haverer # failure in job https://hydra.nixos.org/build/233210491 at 2023-09-02
   - hax # failure in job https://hydra.nixos.org/build/233212147 at 2023-09-02
@@ -3208,8 +3204,6 @@ broken-packages:
   - jort # failure in job https://hydra.nixos.org/build/233195250 at 2023-09-02
   - joy-rewrite # failure in job https://hydra.nixos.org/build/233201002 at 2023-09-02
   - jpeg # failure in job https://hydra.nixos.org/build/233204056 at 2023-09-02
-  - jsaddle-clib # failure in job https://hydra.nixos.org/build/233203899 at 2023-09-02
-  - jsaddle-wkwebview # failure in job https://hydra.nixos.org/build/233242986 at 2023-09-02
   - js-good-parts # failure in job https://hydra.nixos.org/build/233198958 at 2023-09-02
   - json2 # failure in job https://hydra.nixos.org/build/233242447 at 2023-09-02
   - json-alt # failure in job https://hydra.nixos.org/build/233242230 at 2023-09-02
@@ -3392,7 +3386,7 @@ broken-packages:
   - language-webidl # failure in job https://hydra.nixos.org/build/233194656 at 2023-09-02
   - laop # failure in job https://hydra.nixos.org/build/233204106 at 2023-09-02
   - LargeCardinalHierarchy # failure in job https://hydra.nixos.org/build/233250339 at 2023-09-02
-  - large-generics # failure in job https://hydra.nixos.org/build/233210324 at 2023-09-02
+  - large-records
   - Lastik # failure in job https://hydra.nixos.org/build/233194460 at 2023-09-02
   - latest-npm-version # failure in job https://hydra.nixos.org/build/233239108 at 2023-09-02
   - latex-formulae-image # failure in job https://hydra.nixos.org/build/233251243 at 2023-09-02
@@ -3435,7 +3429,6 @@ broken-packages:
   - lens-process # failure in job https://hydra.nixos.org/build/233242948 at 2023-09-02
   - lensref # failure in job https://hydra.nixos.org/build/233205479 at 2023-09-02
   - lens-simple # failure in job https://hydra.nixos.org/build/233245452 at 2023-09-02
-  - lens-sop # failure in job https://hydra.nixos.org/build/252721754 at 2024-03-16
   - lens-tell # failure in job https://hydra.nixos.org/build/233234619 at 2023-09-02
   - lens-text-encoding # failure in job https://hydra.nixos.org/build/233222713 at 2023-09-02
   - lens-th-rewrite # failure in job https://hydra.nixos.org/build/233201025 at 2023-09-02
@@ -4198,6 +4191,7 @@ broken-packages:
   - op2 # failure in job https://hydra.nixos.org/build/255683846 at 2024-04-16
   - opaleye-classy # failure in job https://hydra.nixos.org/build/233214120 at 2023-09-02
   - opaleye-sqlite # failure in job https://hydra.nixos.org/build/233191474 at 2023-09-02
+  - opaleye-textsearch # failure in job https://hydra.nixos.org/build/259602432 at 2024-05-15
   - opaleye-trans # failure in job https://hydra.nixos.org/build/233210536 at 2023-09-02
   - open-adt # failure in job https://hydra.nixos.org/build/233201191 at 2023-09-02
   - OpenAFP # failure in job https://hydra.nixos.org/build/233249295 at 2023-09-02
@@ -4737,6 +4731,7 @@ broken-packages:
   - process-sequential # failure in job https://hydra.nixos.org/build/233221064 at 2023-09-02
   - procrastinating-variable # failure in job https://hydra.nixos.org/build/233229350 at 2023-09-02
   - procstat # failure in job https://hydra.nixos.org/build/233256320 at 2023-09-02
+  - prodapi # failure in job https://hydra.nixos.org/build/259624456 at 2024-05-15
   - product-isomorphic # failure in job https://hydra.nixos.org/build/233230736 at 2023-09-02
   - prof2pretty # failure in job https://hydra.nixos.org/build/233240665 at 2023-09-02
   - prof-flamegraph # failure in job https://hydra.nixos.org/build/233254675 at 2023-09-02
@@ -4766,11 +4761,9 @@ broken-packages:
   - pro-source # failure in job https://hydra.nixos.org/build/233226793 at 2023-09-02
   - prosper # failure in job https://hydra.nixos.org/build/233244079 at 2023-09-02
   - proteaaudio # failure in job https://hydra.nixos.org/build/233225498 at 2023-09-02
-  - proto3-wire # failure in job https://hydra.nixos.org/build/233208217 at 2023-09-02
   - protocol-buffers # failure in job https://hydra.nixos.org/build/233220653 at 2023-09-02
   - protocol-buffers-fork # failure in job https://hydra.nixos.org/build/233228361 at 2023-09-02
   - protocol # failure in job https://hydra.nixos.org/build/233224436 at 2023-09-02
-  - proto-lens-arbitrary # failure in job https://hydra.nixos.org/build/233239393 at 2023-09-02
   - proto-lens-combinators # failure in job https://hydra.nixos.org/build/252726979 at 2024-03-16
   - protolude-lifted # failure in job https://hydra.nixos.org/build/233196312 at 2023-09-02
   - proton-haskell # failure in job https://hydra.nixos.org/build/233214383 at 2023-09-02
@@ -4937,7 +4930,6 @@ broken-packages:
   - record-encode # failure in job https://hydra.nixos.org/build/233216156 at 2023-09-02
   - record # failure in job https://hydra.nixos.org/build/233242406 at 2023-09-02
   - records # failure in job https://hydra.nixos.org/build/233254822 at 2023-09-02
-  - records-sop # failure in job https://hydra.nixos.org/build/233251652 at 2023-09-02
   - record-wrangler # failure in job https://hydra.nixos.org/build/233212838 at 2023-09-02
   - rec-smallarray # failure in job https://hydra.nixos.org/build/233258592 at 2023-09-02
   - recursive-line-count # failure in job https://hydra.nixos.org/build/252736942 at 2024-03-16
@@ -5684,6 +5676,7 @@ broken-packages:
   - stm-firehose # failure in job https://hydra.nixos.org/build/233220943 at 2023-09-02
   - stm-lifted # failure in job https://hydra.nixos.org/build/252726872 at 2024-03-16
   - stm-promise # failure in job https://hydra.nixos.org/build/233204293 at 2023-09-02
+  - stm-queue # failure in job https://hydra.nixos.org/build/259624889 at 2024-05-15
   - stm-stats # failure in job https://hydra.nixos.org/build/233214914 at 2023-09-02
   - stochastic # failure in job https://hydra.nixos.org/build/233242019 at 2023-09-02
   - Stomp # failure in job https://hydra.nixos.org/build/233252583 at 2023-09-02
@@ -5794,7 +5787,6 @@ broken-packages:
   - SVD2HS # failure in job https://hydra.nixos.org/build/233248575 at 2023-09-02
   - svfactor # failure in job https://hydra.nixos.org/build/233256743 at 2023-09-02
   - svg-builder-fork # failure in job https://hydra.nixos.org/build/233224461 at 2023-09-02
-  - svgsym # failure in job https://hydra.nixos.org/build/233255287 at 2023-09-02
   - svgutils # failure in job https://hydra.nixos.org/build/233193438 at 2023-09-02
   - svm-light-utils # failure in job https://hydra.nixos.org/build/233219138 at 2023-09-02
   - svm-simple # failure in job https://hydra.nixos.org/build/233235871 at 2023-09-02
@@ -6291,7 +6283,6 @@ broken-packages:
   - universal-binary # failure in job https://hydra.nixos.org/build/233240583 at 2023-09-02
   - universe-instances-base # failure in job https://hydra.nixos.org/build/233197845 at 2023-09-02
   - universe-instances-trans # failure in job https://hydra.nixos.org/build/233235623 at 2023-09-02
-  - universe-some # failure in job https://hydra.nixos.org/build/233254356 at 2023-09-02
   - unix-handle # failure in job https://hydra.nixos.org/build/233233273 at 2023-09-02
   - unix-memory # failure in job https://hydra.nixos.org/build/252735802 at 2024-03-16
   - unix-process-conduit # failure in job https://hydra.nixos.org/build/233191509 at 2023-09-02
diff --git a/pkgs/development/haskell-modules/configuration-hackage2nix/main.yaml b/pkgs/development/haskell-modules/configuration-hackage2nix/main.yaml
index e03097739a82..2294abaea138 100644
--- a/pkgs/development/haskell-modules/configuration-hackage2nix/main.yaml
+++ b/pkgs/development/haskell-modules/configuration-hackage2nix/main.yaml
@@ -28,13 +28,17 @@ default-package-overrides:
   - gi-gdkx11 < 4
   # 2021-11-09: ghc-bignum is bundled starting with 9.0.1; only 1.0 builds with GHCs prior to 9.2.1
   - ghc-bignum == 1.0
+  - hie-bios == 0.13.1
+  # 2024-05-10: need to match hlegder from stackage
+  - hledger-ui < 1.33
 
 extra-packages:
   - Cabal-syntax == 3.6.*               # Dummy package that ensures packages depending on Cabal-syntax can work for Cabal < 3.8
   - Cabal == 3.2.*                      # Used for packages needing newer Cabal on ghc 8.6 and 8.8
   - Cabal == 3.6.*                      # used for packages needing newer Cabal on ghc 8.10 and 9.0
   - Cabal-syntax == 3.8.*               # version required for ormolu and fourmolu on ghc 9.2 and 9.0
-  - Cabal-syntax == 3.10.*              # newest version required for cabal-install and other packages
+  - Cabal-syntax == 3.10.*              # version required for cabal-install and other packages
+  - Cabal == 3.10.*                     # version required for cabal-install and other packages
   - directory == 1.3.7.*                # required to build cabal-install 3.10.* with GHC 9.2
   - Diff < 0.4                          # required by liquidhaskell-0.8.10.2: https://github.com/ucsd-progsys/liquidhaskell/issues/1729
   - aeson < 2                           # required by pantry-0.5.2
@@ -43,7 +47,6 @@ extra-packages:
   - attoparsec == 0.13.*                # 2022-02-23: Needed to compile elm for now
   - base16-bytestring < 1               # required for cabal-install etc.
   - basement < 0.0.15                   # 2022-08-30: last version to support GHC < 8.10
-  - bower-json == 1.0.0.1               # 2022-05-21: Needed for spago 0.20.9
   - brick == 0.70.*                     # 2022-08-13: needed by taskell
   - brittany == 0.13.1.2                # 2022-09-20: needed for hls on ghc 8.8
   - crackNum < 3.0                      # 2021-05-21: 3.0 removed the lib which sbv 7.13 uses
@@ -110,6 +113,8 @@ extra-packages:
   - algebraic-graphs < 0.7              # 2023-08-14: Needed for building weeder < 2.6.0
   - fuzzyset == 0.2.4                   # 2023-12-20: Needed for building postgrest > 10
   - ShellCheck == 0.9.0                 # 2024-03-21: pinned by haskell-ci
+  - versions < 6                        # 2024-04-22: required by spago-0.21
+  - fsnotify < 0.4                      # 2024-04-22: required by spago-0.21
 
 package-maintainers:
   abbradar:
@@ -648,7 +653,6 @@ unsupported-platforms:
   monomer:                                      [ platforms.darwin ] # depends on mesa
   monomer-hagrid:                               [ platforms.darwin ] # depends on mesa
   mptcp-pm:                                     [ platforms.darwin ]
-  mueval:                                       [ aarch64-linux ] # https://hydra.nixos.org/build/257076117/nixlog/2 https://gitlab.haskell.org/ghc/ghc/-/issues/24432
   nanovg:                                       [ platforms.darwin ] # depends on mesa
   netlink:                                      [ platforms.darwin ]
   notifications-tray-icon:                      [ platforms.darwin ] # depends on gi-dbusmenu
@@ -734,6 +738,7 @@ supported-platforms:
   htune:                                        [ platforms.linux ] # depends on alsa-pcm
   hw-prim-bits:                                 [ platforms.x86 ] # x86 assembler
   inline-asm:                                   [ platforms.x86 ] # x86 assembler
+  jsaddle-wkwebview:                            [ platforms.darwin ]
   keid-core:                                    [ x86_64-linux ] # geomancy (only x86), vulkan (no i686, no darwin, …)
   keid-frp-banana:                              [ x86_64-linux ] # geomancy (only x86), vulkan (no i686, no darwin, …)
   keid-geometry:                                [ x86_64-linux ] # geomancy (only x86), vulkan (no i686, no darwin, …)
diff --git a/pkgs/development/haskell-modules/configuration-hackage2nix/stackage.yaml b/pkgs/development/haskell-modules/configuration-hackage2nix/stackage.yaml
index 6b9818daebe1..c1d2610360c2 100644
--- a/pkgs/development/haskell-modules/configuration-hackage2nix/stackage.yaml
+++ b/pkgs/development/haskell-modules/configuration-hackage2nix/stackage.yaml
@@ -1,4 +1,4 @@
-# Stackage LTS 22.17
+# Stackage LTS 22.22
 # This file is auto-generated by
 # maintainers/scripts/haskell/update-stackage.sh
 default-package-overrides:
@@ -11,7 +11,7 @@ default-package-overrides:
   - acid-state ==0.16.1.3
   - action-permutations ==0.0.0.1
   - active ==0.2.1
-  - ad ==4.5.5
+  - ad ==4.5.6
   - ad-delcont ==0.5.0.0
   - adjunctions ==4.4.2
   - adler32 ==0.1.2.0
@@ -384,7 +384,7 @@ default-package-overrides:
   - asn1-parse ==0.9.5
   - asn1-types ==0.3.4
   - assert-failure ==0.1.3.0
-  - assoc ==1.1
+  - assoc ==1.1.1
   - astro ==0.4.3.0
   - async ==2.2.5
   - async-extra ==0.2.0.0
@@ -394,7 +394,7 @@ default-package-overrides:
   - atom-basic ==0.2.5
   - atom-conduit ==0.9.0.1
   - atomic-counter ==0.1.2.1
-  - atomic-primops ==0.8.5
+  - atomic-primops ==0.8.7
   - atomic-write ==0.2.0.7
   - attoparsec ==0.14.4
   - attoparsec-aeson ==2.1.0.0
@@ -442,7 +442,7 @@ default-package-overrides:
   - base-compat ==0.13.1
   - base-compat-batteries ==0.13.1
   - basement ==0.0.16
-  - base-orphans ==0.9.1
+  - base-orphans ==0.9.2
   - base-prelude ==1.6.1.1
   - base-unicode-symbols ==0.2.4.2
   - basic-prelude ==0.7.0
@@ -453,8 +453,8 @@ default-package-overrides:
   - bcp47-orphans ==0.1.0.6
   - bcrypt ==0.0.11
   - beam-core ==0.10.1.0
-  - bech32 ==1.1.5
-  - bech32-th ==1.1.5
+  - bech32 ==1.1.6
+  - bech32-th ==1.1.6
   - benchpress ==0.2.2.23
   - bencode ==0.6.1.1
   - benri-hspec ==0.1.0.2
@@ -487,9 +487,10 @@ default-package-overrides:
   - bits ==0.6
   - bitset-word8 ==0.1.1.2
   - bitvec ==1.1.5.0
+  - bitwise ==1.0.0.1
   - bitwise-enum ==1.0.1.2
   - blake2 ==0.3.0.1
-  - Blammo ==1.1.2.2
+  - Blammo ==1.1.2.3
   - blank-canvas ==0.7.4
   - blanks ==0.5.0
   - blas-carray ==0.1.0.2
@@ -515,7 +516,7 @@ default-package-overrides:
   - boltzmann-samplers ==0.1.1.0
   - Boolean ==0.2.4
   - boolsimplifier ==0.1.8
-  - boomerang ==1.4.9.1
+  - boomerang ==1.4.9.2
   - boomwhacker ==0.0.1
   - bordacount ==0.1.0.0
   - boring ==0.2.1
@@ -543,9 +544,10 @@ default-package-overrides:
   - bugsnag-wai ==1.0.0.1
   - bugsnag-yesod ==1.0.1.0
   - bugzilla-redhat ==1.0.1.1
-  - burrito ==2.0.1.8
+  - burrito ==2.0.1.9
   - bv ==0.5
   - bv-little ==1.3.2
+  - bv-sized ==1.0.5
   - byteable ==0.1.1
   - bytebuild ==0.3.16.2
   - byte-count-reader ==0.10.1.11
@@ -559,11 +561,11 @@ default-package-overrides:
   - bytesmith ==0.3.11.1
   - bytestring-builder ==0.10.8.2.0
   - bytestring-conversion ==0.3.2
-  - bytestring-lexing ==0.5.0.11
+  - bytestring-lexing ==0.5.0.12
   - bytestring-strict-builder ==0.4.5.7
   - bytestring-to-vector ==0.3.0.1
   - bytestring-tree-builder ==0.2.7.12
-  - bytestring-trie ==0.2.7.2
+  - bytestring-trie ==0.2.7.3
   - bz2 ==1.0.1.2
   - bzip2-clib ==1.0.8
   - bzlib ==0.5.2.0
@@ -571,7 +573,7 @@ default-package-overrides:
   - c14n ==0.1.0.3
   - c2hs ==0.28.8
   - cabal2spec ==2.7.1
-  - cabal-appimage ==0.4.0.2
+  - cabal-appimage ==0.4.0.4
   - cabal-clean ==0.2.20230609
   - cabal-debian ==5.2.3
   - cabal-doctest ==1.0.9
@@ -600,7 +602,7 @@ default-package-overrides:
   - case-insensitive ==1.2.1.0
   - cases ==0.1.4.3
   - casing ==0.1.4.1
-  - cassava ==0.5.3.0
+  - cassava ==0.5.3.1
   - cassava-conduit ==0.6.6
   - cassava-megaparsec ==2.0.4
   - cast ==0.1.0.2
@@ -624,7 +626,7 @@ default-package-overrides:
   - Chart-cairo ==1.9.4.1
   - Chart-diagrams ==1.9.5.1
   - chart-svg ==0.5.2.0
-  - ChasingBottoms ==1.3.1.13
+  - ChasingBottoms ==1.3.1.14
   - check-email ==1.0.2
   - checkers ==0.6.0
   - checksum ==0.0.0.1
@@ -687,7 +689,7 @@ default-package-overrides:
   - commutative-semigroups ==0.1.1.0
   - comonad ==5.0.8
   - compact ==0.2.0.0
-  - compactmap ==0.1.4.3
+  - compactmap ==0.1.4.4
   - companion ==0.1.0
   - compdata ==0.13.1
   - compensated ==0.8.3
@@ -706,7 +708,7 @@ default-package-overrides:
   - concise ==0.1.0.1
   - concurrency ==1.11.0.3
   - concurrent-extra ==0.7.0.12
-  - concurrent-output ==1.10.20
+  - concurrent-output ==1.10.21
   - concurrent-split ==0.0.1.1
   - concurrent-supply ==0.1.8
   - cond ==0.5.1
@@ -725,7 +727,8 @@ default-package-overrides:
   - configurator ==0.3.0.0
   - configurator-export ==0.1.0.1
   - configurator-pg ==0.2.10
-  - constraints ==0.14
+  - config-value ==0.8.3
+  - constraints ==0.14.2
   - constraints-extras ==0.4.0.0
   - constraint-tuples ==0.1.2
   - construct ==0.3.1.2
@@ -742,6 +745,14 @@ default-package-overrides:
   - control-monad-omega ==0.3.2
   - convertible ==1.1.1.1
   - cookie ==0.4.6
+  - copilot ==3.19.1
+  - copilot-c99 ==3.19.1
+  - copilot-core ==3.19.1
+  - copilot-interpreter ==3.19.1
+  - copilot-language ==3.19.1
+  - copilot-libraries ==3.19.1
+  - copilot-prettyprinter ==3.19.1
+  - copilot-theorem ==3.19.1
   - copr-api ==0.2.0
   - core-data ==0.3.9.1
   - core-program ==0.7.0.0
@@ -759,7 +770,7 @@ default-package-overrides:
   - crc32c ==0.1.0
   - credential-store ==0.1.2
   - criterion ==1.6.3.0
-  - criterion-measurement ==0.2.1.0
+  - criterion-measurement ==0.2.2.0
   - crypto-api ==0.13.3
   - crypto-api-tests ==0.3
   - crypto-cipher-tests ==0.0.11
@@ -783,7 +794,7 @@ default-package-overrides:
   - crypton-x509-validation ==1.6.12
   - crypto-pubkey-types ==0.4.3
   - crypto-random-api ==0.2.0
-  - cryptostore ==0.3.0.1
+  - cryptostore ==0.3.1.0
   - crypt-sha512 ==0
   - csp ==1.4.0
   - css-syntax ==0.1.0.1
@@ -826,7 +837,7 @@ default-package-overrides:
   - datadog ==0.3.0.0
   - data-dword ==0.3.2.1
   - data-endian ==0.1.1
-  - data-fix ==0.3.2
+  - data-fix ==0.3.3
   - data-forest ==0.1.0.12
   - data-functor-logistic ==0.0
   - data-has ==0.4.0.0
@@ -849,7 +860,7 @@ default-package-overrides:
   - DAV ==1.3.4
   - dbcleaner ==0.1.3
   - DBFunctor ==0.1.2.1
-  - dbus ==1.3.2
+  - dbus ==1.3.3
   - dbus-hslogger ==0.1.0.1
   - debian ==4.0.5
   - debian-build ==0.10.2.1
@@ -873,7 +884,7 @@ default-package-overrides:
   - deriving-compat ==0.6.6
   - deriving-trans ==0.9.1.0
   - detour-via-sci ==1.0.0
-  - df1 ==0.4.2
+  - df1 ==0.4.3
   - dhall ==1.42.1
   - dhall-bash ==1.0.41
   - di ==1.3
@@ -885,7 +896,7 @@ default-package-overrides:
   - diagrams-core ==1.5.1.1
   - diagrams-gtk ==1.4
   - diagrams-html5 ==1.4.2
-  - diagrams-lib ==1.4.6.1
+  - diagrams-lib ==1.4.6.2
   - diagrams-postscript ==1.5.1.1
   - diagrams-rasterific ==1.4.2.3
   - diagrams-solve ==0.1.3
@@ -928,8 +939,8 @@ default-package-overrides:
   - doctest-driver-gen ==0.3.0.8
   - doctest-exitcode-stdio ==0.0
   - doctest-extract ==0.1.2
-  - doctest-lib ==0.1.1
-  - doctest-parallel ==0.3.1
+  - doctest-lib ==0.1.1.1
+  - doctest-parallel ==0.3.1.1
   - doldol ==0.4.1.2
   - do-list ==1.0.1
   - domain ==0.1.1.5
@@ -1039,7 +1050,7 @@ default-package-overrides:
   - extensible ==0.9
   - extensible-effects ==5.0.0.1
   - extensible-exceptions ==0.1.1.4
-  - extra ==1.7.14
+  - extra ==1.7.16
   - extractable-singleton ==0.0.1
   - extra-data-yj ==0.1.0.0
   - extrapolate ==0.4.6
@@ -1212,13 +1223,13 @@ default-package-overrides:
   - ghc-core ==0.5.6
   - ghc-events ==0.19.0.1
   - ghc-exactprint ==1.7.1.0
-  - ghc-hs-meta ==0.1.3.0
+  - ghc-hs-meta ==0.1.4.0
   - ghcid ==0.8.9
   - ghci-hexcalc ==0.1.1.0
   - ghcjs-codemirror ==0.0.0.2
   - ghcjs-perch ==0.3.3.3
-  - ghc-lib ==9.6.4.20240109
-  - ghc-lib-parser ==9.6.4.20240109
+  - ghc-lib ==9.6.5.20240423
+  - ghc-lib-parser ==9.6.5.20240423
   - ghc-lib-parser-ex ==9.6.0.2
   - ghc-parser ==0.2.6.0
   - ghc-paths ==0.1.0.12
@@ -1345,16 +1356,16 @@ default-package-overrides:
   - haskoin-node ==1.0.1
   - haskoin-store-data ==1.2.5
   - hasktags ==0.73.0
-  - hasql ==1.6.4.3
+  - hasql ==1.6.4.4
   - hasql-dynamic-statements ==0.3.1.5
-  - hasql-implicits ==0.1.1.2
-  - hasql-interpolate ==0.2.1.0
+  - hasql-implicits ==0.1.1.3
+  - hasql-interpolate ==0.2.2.0
   - hasql-listen-notify ==0.1.0.1
   - hasql-migration ==0.3.0
-  - hasql-notifications ==0.2.1.1
+  - hasql-notifications ==0.2.2.0
   - hasql-optparse-applicative ==0.7.1.3
   - hasql-pool ==0.10.1
-  - hasql-th ==0.4.0.19
+  - hasql-th ==0.4.0.21
   - hasql-transaction ==1.0.1.4
   - has-transformers ==0.1.0.4
   - hasty-hamiltonian ==1.3.4
@@ -1400,7 +1411,7 @@ default-package-overrides:
   - histogram-fill ==0.9.1.0
   - hjsmin ==0.2.1
   - hkd-default ==1.1.0.0
-  - hkgr ==0.4.3.2
+  - hkgr ==0.4.4
   - hledger ==1.32.3
   - hledger-iadd ==1.3.20
   - hledger-interest ==1.6.6
@@ -1457,7 +1468,7 @@ default-package-overrides:
   - hsini ==0.5.2.2
   - hsinstall ==2.8
   - HSlippyMap ==3.0.1
-  - hslogger ==1.3.1.0
+  - hslogger ==1.3.1.1
   - hslua ==2.3.1
   - hslua-aeson ==2.3.1
   - hslua-classes ==2.3.1
@@ -1470,7 +1481,7 @@ default-package-overrides:
   - hslua-module-system ==1.1.1
   - hslua-module-text ==1.1.1
   - hslua-module-version ==1.1.1
-  - hslua-module-zip ==1.1.1
+  - hslua-module-zip ==1.1.3
   - hslua-objectorientation ==2.3.1
   - hslua-packaging ==2.3.1
   - hslua-repl ==0.1.2
@@ -1479,13 +1490,13 @@ default-package-overrides:
   - hsndfile-vector ==0.5.2
   - HsOpenSSL ==0.11.7.6
   - HsOpenSSL-x509-system ==0.1.0.4
-  - hspec ==2.11.7
-  - hspec-api ==2.11.7
+  - hspec ==2.11.8
+  - hspec-api ==2.11.8
   - hspec-attoparsec ==0.1.0.2
   - hspec-checkers ==0.1.0.2
   - hspec-contrib ==0.5.2
-  - hspec-core ==2.11.7
-  - hspec-discover ==2.11.7
+  - hspec-core ==2.11.8
+  - hspec-discover ==2.11.8
   - hspec-expectations ==0.8.4
   - hspec-expectations-json ==1.0.2.1
   - hspec-expectations-lifted ==0.10.0
@@ -1496,7 +1507,7 @@ default-package-overrides:
   - hspec-junit-formatter ==1.1.0.2
   - hspec-leancheck ==0.0.6
   - hspec-megaparsec ==2.2.1
-  - hspec-meta ==2.11.7
+  - hspec-meta ==2.11.8
   - hspec-parsec ==0
   - hspec-smallcheck ==0.5.3
   - hspec-tmp-proc ==0.5.2.0
@@ -1507,16 +1518,17 @@ default-package-overrides:
   - hstatistics ==0.3.1
   - HStringTemplate ==0.8.8
   - HSvm ==0.1.2.3.32
-  - HsYAML ==0.2.1.3
+  - HsYAML ==0.2.1.4
   - HsYAML-aeson ==0.2.0.1
   - hsyslog ==5.0.2
   - htaglib ==1.2.1
-  - HTF ==0.15.0.1
+  - HTF ==0.15.0.2
   - html ==1.0.1.2
   - html-conduit ==1.3.2.2
   - html-email-validate ==0.2.0.0
   - html-entities ==1.1.4.7
   - html-entity-map ==0.1.0.0
+  - html-parse ==0.2.1.0
   - http2 ==5.0.1
   - HTTP ==4000.4.1
   - http-api-data ==0.5.1
@@ -1684,7 +1696,7 @@ default-package-overrides:
   - junit-xml ==0.1.0.3
   - justified-containers ==0.3.0.0
   - jwt ==0.11.0
-  - kan-extensions ==5.2.5
+  - kan-extensions ==5.2.6
   - kansas-comet ==0.4.2
   - katip ==0.8.8.0
   - katip-logstash ==0.1.0.2
@@ -1709,6 +1721,7 @@ default-package-overrides:
   - knob ==0.2.2
   - koji ==0.0.2
   - koji-tool ==1.1.1
+  - kvitable ==1.0.3.0
   - labels ==0.3.3
   - lackey ==2.0.0.7
   - lambdabot-core ==5.3.1.2
@@ -1717,13 +1730,16 @@ default-package-overrides:
   - lame ==0.2.2
   - language-avro ==0.1.4.0
   - language-c ==0.9.3
+  - language-c99 ==0.2.0
+  - language-c99-simple ==0.3.0
+  - language-c99-util ==0.2.0
   - language-c-quote ==0.13.0.1
   - language-docker ==12.1.0
   - language-dot ==0.1.2
   - language-glsl ==0.3.0
   - language-java ==0.2.9
   - language-javascript ==0.7.1.0
-  - language-lua ==0.11.0.1
+  - language-lua ==0.11.0.2
   - language-protobuf ==1.0.1
   - language-python ==0.5.8
   - lapack ==0.5.1.1
@@ -1743,7 +1759,6 @@ default-package-overrides:
   - leancheck ==1.0.2
   - leancheck-instances ==0.0.5
   - leapseconds-announced ==2017.1.0.1
-  - learn-physics ==0.6.6
   - leb128-cereal ==1.2
   - lens ==5.2.3
   - lens-action ==0.2.6
@@ -1808,16 +1823,16 @@ default-package-overrides:
   - logstash ==0.1.0.4
   - loop ==0.3.0
   - lpeg ==1.0.4
-  - LPFP ==1.1.1
   - LPFP-core ==1.1.1
   - lrucache ==1.2.0.1
   - lua ==2.3.2
   - lua-arbitrary ==1.0.1.1
-  - lucid2 ==0.0.20230706
+  - lucid2 ==0.0.20240424
   - lucid ==2.11.20230408
   - lucid-cdn ==0.2.2.0
   - lucid-extras ==0.2.2
   - lukko ==0.1.1.3
+  - lumberjack ==1.0.3.0
   - lz4 ==0.2.3.1
   - lz4-frame-conduit ==0.1.0.1
   - lzma ==0.0.1.0
@@ -1881,10 +1896,10 @@ default-package-overrides:
   - microlens ==0.4.13.1
   - microlens-aeson ==2.5.2
   - microlens-contra ==0.1.0.3
-  - microlens-ghc ==0.4.14.2
+  - microlens-ghc ==0.4.14.3
   - microlens-mtl ==0.2.0.3
   - microlens-platform ==0.4.3.5
-  - microlens-th ==0.4.3.14
+  - microlens-th ==0.4.3.15
   - microspec ==0.2.1.3
   - microstache ==1.0.2.3
   - midair ==0.2.0.1
@@ -1903,7 +1918,7 @@ default-package-overrides:
   - min-max-pqueue ==0.1.0.2
   - mintty ==0.1.4
   - misfortune ==0.1.2.1
-  - miso ==1.8.3.0
+  - miso ==1.8.4.0
   - missing-foreign ==0.1.1
   - MissingH ==1.6.0.1
   - mixed-types-num ==0.5.12
@@ -2031,7 +2046,7 @@ default-package-overrides:
   - network-messagepack-rpc ==0.1.2.0
   - network-messagepack-rpc-websocket ==0.1.1.1
   - network-multicast ==0.3.2
-  - network-run ==0.2.7
+  - network-run ==0.2.8
   - network-simple ==0.4.5
   - network-transport ==0.5.7
   - network-uri ==2.6.4.2
@@ -2085,7 +2100,7 @@ default-package-overrides:
   - once ==0.4
   - one-liner ==2.1
   - one-liner-instances ==0.1.3.0
-  - OneTuple ==0.4.1.1
+  - OneTuple ==0.4.2
   - Only ==0.1
   - oo-prototypes ==0.1.0.0
   - oops ==0.2.0.1
@@ -2123,28 +2138,30 @@ default-package-overrides:
   - OrderedBits ==0.0.2.0
   - ordered-containers ==0.2.3
   - ormolu ==0.7.2.0
-  - os-string ==2.0.2
+  - os-string ==2.0.2.2
   - overhang ==1.0.0
   - packcheck ==0.6.0
   - pager ==0.1.1.0
   - pagination ==0.2.2
-  - pagure ==0.1.1
+  - pagure ==0.1.2
   - pagure-cli ==0.2.1
   - palette ==0.3.0.3
   - pandoc ==3.1.11.1
   - pandoc-cli ==3.1.11.1
   - pandoc-dhall-decoder ==0.1.0.1
   - pandoc-lua-engine ==0.2.1.2
-  - pandoc-lua-marshal ==0.2.6
+  - pandoc-lua-marshal ==0.2.7
   - pandoc-plot ==1.8.0
   - pandoc-server ==0.1.0.5
   - pandoc-throw ==0.1.0.0
   - pandoc-types ==1.23.1
   - pango ==0.13.10.0
+  - panic ==0.4.0.1
   - pantry ==0.9.3.2
   - parallel ==3.2.2.0
   - parallel-io ==0.3.5
   - parameterized ==0.5.0.0
+  - parameterized-utils ==2.1.8.0
   - park-bench ==0.1.1.0
   - parseargs ==0.2.0.9
   - parsec-class ==1.0.1.0
@@ -2281,7 +2298,7 @@ default-package-overrides:
   - pretty-hex ==1.1
   - prettyprinter ==1.7.1
   - prettyprinter-ansi-terminal ==1.1.3
-  - prettyprinter-combinators ==0.1.2
+  - prettyprinter-combinators ==0.1.3
   - prettyprinter-compat-annotated-wl-pprint ==1.1
   - prettyprinter-compat-ansi-wl-pprint ==1.0.2
   - prettyprinter-compat-wl-pprint ==1.0.1
@@ -2295,7 +2312,7 @@ default-package-overrides:
   - primes ==0.2.1.0
   - primitive ==0.8.0.0
   - primitive-addr ==0.1.0.3
-  - primitive-extras ==0.10.1.10
+  - primitive-extras ==0.10.2
   - primitive-offset ==0.2.0.1
   - primitive-serial ==0.1
   - primitive-unaligned ==0.1.1.2
@@ -2323,7 +2340,7 @@ default-package-overrides:
   - proto-lens-optparse ==0.1.1.12
   - proto-lens-runtime ==0.7.0.6
   - protolude ==0.3.4
-  - proxied ==0.3.1
+  - proxied ==0.3.2
   - psql-helpers ==0.1.0.0
   - PSQueue ==1.2.0
   - psqueues ==0.2.8.0
@@ -2350,11 +2367,11 @@ default-package-overrides:
   - quickcheck-assertions ==0.3.0
   - quickcheck-classes ==0.6.5.0
   - quickcheck-classes-base ==0.6.2.0
-  - quickcheck-groups ==0.0.1.1
+  - quickcheck-groups ==0.0.1.2
   - quickcheck-higherorder ==0.1.0.1
   - quickcheck-instances ==0.3.30
   - quickcheck-io ==0.2.0
-  - quickcheck-monoid-subclasses ==0.3.0.2
+  - quickcheck-monoid-subclasses ==0.3.0.3
   - quickcheck-simple ==0.1.1.1
   - quickcheck-special ==0.1.0.6
   - quickcheck-state-machine ==0.8.0
@@ -2420,8 +2437,8 @@ default-package-overrides:
   - reducers ==3.12.4
   - refact ==0.3.0.2
   - ref-fd ==0.5.0.1
-  - refined ==0.8.1
-  - reflection ==2.1.7
+  - refined ==0.8.2
+  - reflection ==2.1.8
   - RefSerialize ==0.4.0
   - ref-tf ==0.5.0.1
   - regex ==1.1.0.2
@@ -2468,7 +2485,7 @@ default-package-overrides:
   - rio-orphans ==0.1.2.0
   - rio-prettyprint ==0.1.8.0
   - rng-utils ==0.3.1
-  - roc-id ==0.2.0.1
+  - roc-id ==0.2.0.2
   - rocksdb-haskell ==1.0.1
   - rocksdb-haskell-jprupp ==2.1.6
   - rocksdb-query ==0.4.2
@@ -2524,6 +2541,7 @@ default-package-overrides:
   - scalpel-core ==0.6.2.2
   - scanf ==0.1.0.0
   - scanner ==0.3.1
+  - s-cargot ==0.1.6.0
   - scheduler ==2.0.0.1
   - SciBaseTypes ==0.1.1.0
   - scientific ==0.3.7.0
@@ -2539,9 +2557,9 @@ default-package-overrides:
   - secp256k1-haskell ==1.1.0
   - securemem ==0.1.10
   - selections ==0.3.0.0
-  - selective ==0.7
+  - selective ==0.7.0.1
   - semialign ==1.3
-  - semigroupoids ==6.0.0.1
+  - semigroupoids ==6.0.1
   - semigroups ==0.20
   - semirings ==0.6
   - semiring-simple ==1.0.0.1
@@ -2642,7 +2660,7 @@ default-package-overrides:
   - since ==0.0.0
   - singleton-bool ==0.1.7
   - singleton-nats ==0.4.7
-  - singletons ==3.0.2
+  - singletons ==3.0.3
   - singletons-base ==3.2
   - singletons-presburger ==0.7.3.0
   - singletons-th ==3.2
@@ -2653,8 +2671,8 @@ default-package-overrides:
   - skein ==1.0.9.4
   - skews ==0.1.0.3
   - skip-var ==0.1.1.0
-  - skylighting ==0.14.1.1
-  - skylighting-core ==0.14.1.1
+  - skylighting ==0.14.1.2
+  - skylighting-core ==0.14.1.2
   - skylighting-format-ansi ==0.1
   - skylighting-format-blaze-html ==0.1.1.2
   - skylighting-format-context ==0.1.0.2
@@ -2720,10 +2738,10 @@ default-package-overrides:
   - stitch ==0.6.0.0
   - stm-chans ==3.0.0.9
   - stm-conduit ==4.0.1
-  - stm-containers ==1.2.0.3
+  - stm-containers ==1.2.1
   - stm-delay ==0.1.1.1
   - stm-extras ==0.1.0.3
-  - stm-hamt ==1.2.0.14
+  - stm-hamt ==1.2.1
   - STMonadTrans ==0.4.8
   - stm-split ==0.0.2.1
   - stm-supply ==0.2.0.0
@@ -2751,7 +2769,7 @@ default-package-overrides:
   - strict-lens ==0.4.0.3
   - strict-list ==0.1.7.4
   - strict-tuple ==0.1.5.3
-  - strict-wrapper ==0.0.0.0
+  - strict-wrapper ==0.0.1.0
   - stringable ==0.1.3
   - stringbuilder ==0.5.1
   - string-class ==0.1.7.1
@@ -2778,7 +2796,7 @@ default-package-overrides:
   - SVGFonts ==1.8.0.1
   - svg-tree ==0.6.2.4
   - swagger2 ==2.8.8
-  - swish ==0.10.7.0
+  - swish ==0.10.8.0
   - syb ==0.7.2.4
   - sydtest ==0.15.1.1
   - sydtest-aeson ==0.1.0.0
@@ -2804,7 +2822,7 @@ default-package-overrides:
   - symengine ==0.1.2.0
   - symmetry-operations-symbols ==0.0.2.1
   - synthesizer-alsa ==0.5.0.6
-  - synthesizer-core ==0.8.3
+  - synthesizer-core ==0.8.4
   - synthesizer-dimensional ==0.8.1.1
   - synthesizer-midi ==0.6.1.2
   - sysinfo ==0.1.1
@@ -2832,6 +2850,7 @@ default-package-overrides:
   - tasty-autocollect ==0.4.2
   - tasty-bench ==0.3.5
   - tasty-bench-fit ==0.1
+  - tasty-checklist ==1.0.6.0
   - tasty-dejafu ==2.1.0.1
   - tasty-discover ==5.0.0
   - tasty-expected-failure ==0.12.3
@@ -2853,6 +2872,7 @@ default-package-overrides:
   - tasty-rerun ==1.1.19
   - tasty-silver ==3.3.1.3
   - tasty-smallcheck ==0.8.2
+  - tasty-sugar ==2.2.1.0
   - tasty-tap ==0.1.0
   - tasty-th ==0.1.7
   - tasty-wai ==0.1.2.0
@@ -2903,9 +2923,9 @@ default-package-overrides:
   - text-printer ==0.5.0.2
   - text-regex-replace ==0.1.1.5
   - text-rope ==0.2
-  - text-short ==0.1.5
-  - text-show ==3.10.4
-  - text-show-instances ==3.9.7
+  - text-short ==0.1.6
+  - text-show ==3.10.5
+  - text-show-instances ==3.9.8
   - text-zipper ==0.13
   - tfp ==1.0.2
   - tf-random ==0.5
@@ -2919,7 +2939,7 @@ default-package-overrides:
   - these ==1.2
   - these-lens ==1.0.1.3
   - these-optics ==1.0.1.2
-  - these-skinny ==0.7.5
+  - these-skinny ==0.7.6
   - th-expand-syns ==0.4.11.0
   - th-extras ==0.0.0.8
   - th-lego ==0.3.0.3
@@ -2944,7 +2964,7 @@ default-package-overrides:
   - tidal-link ==1.0.3
   - tile ==0.3.0.0
   - time-compat ==1.9.6.1
-  - time-domain ==0.1.0.3
+  - time-domain ==0.1.0.4
   - timeit ==2.0
   - timelens ==0.2.0.2
   - time-lens ==0.4.0.2
@@ -3009,7 +3029,7 @@ default-package-overrides:
   - typecheck-plugin-nat-simple ==0.1.0.9
   - typed-process ==0.2.11.1
   - typed-uuid ==0.2.0.0
-  - type-equality ==1
+  - type-equality ==1.0.1
   - type-errors ==0.2.0.2
   - type-flip ==0.1.0.0
   - type-fun ==0.1.3
@@ -3059,6 +3079,8 @@ default-package-overrides:
   - unique-logic ==0.4.0.1
   - unique-logic-tf ==0.5.1
   - unit-constraint ==0.0.0
+  - units ==2.4.1.5
+  - units-defs ==2.2.1
   - units-parser ==0.1.1.5
   - universe ==1.2.2
   - universe-base ==1.1.3.1
@@ -3122,7 +3144,7 @@ default-package-overrides:
   - vector-builder ==0.3.8.5
   - vector-bytes-instances ==0.1.1
   - vector-extras ==0.2.8.1
-  - vector-hashtables ==0.1.1.4
+  - vector-hashtables ==0.1.2.0
   - vector-instances ==3.4.2
   - vector-mmap ==0.0.3
   - vector-rotcev ==0.1.0.2
@@ -3139,7 +3161,7 @@ default-package-overrides:
   - ViennaRNAParser ==1.3.3
   - vinyl ==0.14.3
   - vinyl-loeb ==0.0.1.0
-  - Vis ==0.7.7.0
+  - Vis ==0.7.7.1
   - vivid-osc ==0.5.0.0
   - vivid-supercollider ==0.4.1.2
   - void ==0.7.3
@@ -3179,7 +3201,7 @@ default-package-overrides:
   - wai-websockets ==3.0.1.2
   - wakame ==0.1.0.0
   - warp ==3.3.31
-  - warp-tls ==3.4.4
+  - warp-tls ==3.4.5
   - wave ==0.2.1
   - wcwidth ==0.0.2
   - webdriver ==0.12.0.0
@@ -3192,6 +3214,7 @@ default-package-overrides:
   - websockets-snap ==0.10.3.1
   - weigh ==0.0.17
   - welford-online-mean-variance ==0.2.0.0
+  - what4 ==1.5.1
   - wide-word ==0.1.6.0
   - Win32-notify ==0.3.0.3
   - windns ==0.1.0.1
@@ -3218,7 +3241,7 @@ default-package-overrides:
   - writer-cps-transformers ==0.5.6.1
   - ws ==0.0.6
   - wss-client ==0.3.0.0
-  - wuss ==2.0.1.7
+  - wuss ==2.0.1.8
   - X11 ==1.10.3
   - X11-xft ==0.3.4
   - x11-xim ==0.0.9.0
@@ -3230,7 +3253,7 @@ default-package-overrides:
   - xdg-basedir ==0.2.2
   - xdg-userdirs ==0.1.0.2
   - xeno ==0.6
-  - xlsx ==1.1.2.1
+  - xlsx ==1.1.2.2
   - xml ==1.3.14
   - xml-basic ==0.1.3.2
   - xmlbf ==0.7
@@ -3268,7 +3291,7 @@ default-package-overrides:
   - yesod-form-bootstrap4 ==3.0.1.1
   - yesod-gitrepo ==0.3.0
   - yesod-gitrev ==0.2.2
-  - yesod-markdown ==0.12.6.13
+  - yesod-markdown ==0.12.6.14
   - yesod-middleware-csp ==1.2.0
   - yesod-newsfeed ==1.7.0.0
   - yesod-page-cursor ==2.0.1.0
@@ -3288,11 +3311,12 @@ default-package-overrides:
   - youtube ==0.2.1.1
   - zenacy-html ==2.1.0
   - zenacy-unicode ==1.0.2
+  - zenc ==0.1.2
   - zeromq4-haskell ==0.8.0
   - zeromq4-patterns ==0.3.1.0
   - zigzag ==0.0.1.0
   - zim-parser ==0.2.1.0
-  - zip ==2.0.0
+  - zip ==2.0.1
   - zip-archive ==0.4.3.2
   - zippers ==0.3.2
   - zip-stream ==0.2.2.0
diff --git a/pkgs/development/haskell-modules/configuration-hackage2nix/transitive-broken.yaml b/pkgs/development/haskell-modules/configuration-hackage2nix/transitive-broken.yaml
index b58da3ac10b6..7b358dd11351 100644
--- a/pkgs/development/haskell-modules/configuration-hackage2nix/transitive-broken.yaml
+++ b/pkgs/development/haskell-modules/configuration-hackage2nix/transitive-broken.yaml
@@ -633,12 +633,11 @@ dont-distribute-packages:
  - bdcs-api
  - beam-automigrate
  - beam-postgres
- - beam-sqlite
  - beam-th
  - bearriver
  - beautifHOL
  - bech32-th
- - beeminder-api
+ - bech32-th_1_1_6
  - bein
  - belka
  - bff
@@ -875,8 +874,6 @@ dont-distribute-packages:
  - cleff-plugin
  - cless
  - cleveland
- - cli-git
- - cli-nix
  - click-clack
  - clickhouse-haskell
  - clifford
@@ -1476,7 +1473,6 @@ dont-distribute-packages:
  - funion
  - funnyprint
  - funsat
- - fused-effects-squeal
  - fwgl-glfw
  - fwgl-javascript
  - fxpak
@@ -1487,9 +1483,6 @@ dont-distribute-packages:
  - galois-fft
  - galois-field
  - gamma
- - gargoyle-postgresql
- - gargoyle-postgresql-connect
- - gargoyle-postgresql-nix
  - gbs-downloader
  - gbu
  - gdax
@@ -1918,7 +1911,6 @@ dont-distribute-packages:
  - haskanoid
  - haskdeep
  - haskeem
- - haskell-abci
  - haskell-admin
  - haskell-admin-health
  - haskell-admin-managed-functions
@@ -2430,7 +2422,6 @@ dont-distribute-packages:
  - json-query
  - json-rpc-client
  - json-schema
- - json-sop
  - json-spec-elm
  - json-spec-elm-servant
  - json-spec-openapi
@@ -2539,7 +2530,6 @@ dont-distribute-packages:
  - language-qux
  - language-spelling
  - large-anon
- - large-records
  - lat
  - latex-formulae-hakyll
  - latex-formulae-pandoc
@@ -2661,6 +2651,7 @@ dont-distribute-packages:
  - lol-typing
  - loli
  - longshot
+ - looksee
  - looksee-trip
  - loop-effin
  - lorentz
@@ -2751,6 +2742,7 @@ dont-distribute-packages:
  - metar-http
  - metronome
  - micro-gateway
+ - microdns
  - microformats2-types
  - midimory
  - mighttpd
@@ -2940,7 +2932,6 @@ dont-distribute-packages:
  - ngx-export-tools-extra
  - nikepub
  - nirum
- - nix-thunk
  - nkjp
  - nlp-scores-scripts
  - nom
@@ -3229,6 +3220,8 @@ dont-distribute-packages:
  - process-qq
  - process-streaming
  - procrastinating-structure
+ - prodapi-proxy
+ - prodapi-userauth
  - producer
  - product
  - prof2dot
@@ -3372,7 +3365,6 @@ dont-distribute-packages:
  - reflex-backend-wai
  - reflex-dom-colonnade
  - reflex-dynamic-containers
- - reflex-gadt-api
  - reflex-gloss-scene
  - reflex-libtelnet
  - reflex-localize
@@ -3671,7 +3663,6 @@ dont-distribute-packages:
  - si-clock
  - sibe
  - sigma-ij
- - signable
  - signals
  - signature
  - silvi
@@ -3781,6 +3772,7 @@ dont-distribute-packages:
  - sproxy
  - sproxy-web
  - sproxy2
+ - sq
  - sql-simple-mysql
  - sql-simple-pool
  - sql-simple-postgresql
@@ -3788,9 +3780,6 @@ dont-distribute-packages:
  - sqlcli-odbc
  - sqlite-simple-interpolate
  - sqlite-simple-typed
- - squeal-postgresql
- - squeal-postgresql-ltree
- - squeal-postgresql-uuid-ossp
  - squeeze
  - sr-extra
  - srt-dhall
@@ -4100,8 +4089,6 @@ dont-distribute-packages:
  - unitym-servant
  - unitym-yesod
  - universal
- - universe
- - universe-dependent-sum
  - universe-th
  - unix-fcntl
  - unpacked-these
@@ -4164,14 +4151,12 @@ dont-distribute-packages:
  - verifiable-expressions
  - verismith
  - versioning-servant
- - vessel
  - vflow-types
  - vformat-aeson
  - vformat-time
  - vfr-waypoints
  - vigilance
  - vimeta
- - vinyl-generics
  - vinyl-operational
  - vision
  - visual-graphrewrite
diff --git a/pkgs/development/haskell-modules/configuration-nix.nix b/pkgs/development/haskell-modules/configuration-nix.nix
index fb4afdde5bba..6b49a4ec25aa 100644
--- a/pkgs/development/haskell-modules/configuration-nix.nix
+++ b/pkgs/development/haskell-modules/configuration-nix.nix
@@ -444,7 +444,7 @@ self: super: builtins.intersectAttrs super {
   leksah = dontCheck (overrideCabal (drv: {
     executableSystemDepends = (drv.executableSystemDepends or []) ++ (with pkgs; [
       gnome.adwaita-icon-theme # Fix error: Icon 'window-close' not present in theme ...
-      wrapGAppsHook           # Fix error: GLib-GIO-ERROR **: No GSettings schemas are installed on the system
+      wrapGAppsHook3           # Fix error: GLib-GIO-ERROR **: No GSettings schemas are installed on the system
       gtk3                    # Fix error: GLib-GIO-ERROR **: Settings schema 'org.gtk.Settings.FileChooser' is not installed
     ]);
     postPatch = (drv.postPatch or "") + ''
@@ -849,8 +849,12 @@ self: super: builtins.intersectAttrs super {
         url = "https://github.com/purescript/purescript-docs-search/releases/download/v0.0.11/purescript-docs-search";
         sha256 = "1hjdprm990vyxz86fgq14ajn0lkams7i00h8k2i2g1a0hjdwppq6";
       };
-
-      spagoDocs = overrideCabal (drv: {
+    in
+    lib.pipe (super.spago.override {
+      versions = self.versions_5_0_5;
+      fsnotify = self.fsnotify_0_3_0_1;
+    }) [
+      (overrideCabal (drv: {
         postUnpack = (drv.postUnpack or "") + ''
           # Spago includes the following two files directly into the binary
           # with Template Haskell.  They are fetched at build-time from the
@@ -875,21 +879,17 @@ self: super: builtins.intersectAttrs super {
             "$sourceRoot/templates/docs-search-app-0.0.11.js" \
             "$sourceRoot/templates/purescript-docs-search-0.0.11"
         '';
-      }) super.spago;
-
-      spagoOldAeson = spagoDocs.overrideScope (hfinal: hprev: {
-        # spago is not yet updated for aeson 2.0
-        aeson = hfinal.aeson_1_5_6_0;
-        # bower-json 1.1.0.0 only supports aeson 2.0, so we pull in the older version here.
-        bower-json = hprev.bower-json_1_0_0_1;
-      });
+      }))
 
       # Tests require network access.
-      spagoWithoutChecks = dontCheck spagoOldAeson;
-    in
-    # spago doesn't currently build with ghc92.  Top-level spago is pulled from
-    # ghc90 and explicitly marked unbroken.
-    markBroken spagoWithoutChecks;
+      dontCheck
+
+      # Overly strict upper bound on text
+      doJailbreak
+
+      # Generate shell completion for spago
+      (self.generateOptparseApplicativeCompletions [ "spago" ])
+    ];
 
   # checks SQL statements at compile time, and so requires a running PostgreSQL
   # database to run it's test suite
@@ -1377,4 +1377,6 @@ self: super: builtins.intersectAttrs super {
   pvar = dontCheck super.pvar;
 
   kmonad = enableSeparateBinOutput super.kmonad;
+
+  xmobar = enableSeparateBinOutput super.xmobar;
 }
diff --git a/pkgs/development/haskell-modules/hackage-packages.nix b/pkgs/development/haskell-modules/hackage-packages.nix
index 66ebf73ce793..be1785dc5262 100644
--- a/pkgs/development/haskell-modules/hackage-packages.nix
+++ b/pkgs/development/haskell-modules/hackage-packages.nix
@@ -2107,8 +2107,8 @@ self: {
      }:
      mkDerivation {
        pname = "Blammo";
-       version = "1.1.2.2";
-       sha256 = "1yk670v8qiri7ivxjmpbbbs447ayspmq382qh5ag31yb23wwq5f4";
+       version = "1.1.2.3";
+       sha256 = "1qiya1wd0crisjxcnjbxadkbb6ll3zzb102w4q82ga0mglxx5i4r";
        libraryHaskellDepends = [
          aeson base bytestring case-insensitive clock containers dlist
          envparse exceptions fast-logger http-types lens monad-logger-aeson
@@ -2878,6 +2878,26 @@ self: {
        hydraPlatforms = lib.platforms.none;
      }) {};
 
+  "Cabal_3_12_0_0" = callPackage
+    ({ mkDerivation, array, base, bytestring, Cabal-syntax, containers
+     , deepseq, directory, filepath, mtl, parsec, pretty, process, time
+     , transformers, unix
+     }:
+     mkDerivation {
+       pname = "Cabal";
+       version = "3.12.0.0";
+       sha256 = "0cqs1i4qyf4y2xyq8wgk1xbjy5ra9bk5pc8y9bhl82cvqm625qpp";
+       setupHaskellDepends = [ mtl parsec ];
+       libraryHaskellDepends = [
+         array base bytestring Cabal-syntax containers deepseq directory
+         filepath mtl parsec pretty process time transformers unix
+       ];
+       doCheck = false;
+       description = "A framework for packaging Haskell software";
+       license = lib.licenses.bsd3;
+       hydraPlatforms = lib.platforms.none;
+     }) {};
+
   "Cabal-ide-backend" = callPackage
     ({ mkDerivation, array, base, binary, bytestring, Cabal, containers
      , deepseq, directory, extensible-exceptions, filepath, HUnit
@@ -2955,6 +2975,27 @@ self: {
        hydraPlatforms = lib.platforms.none;
      }) {};
 
+  "Cabal-syntax_3_12_0_0" = callPackage
+    ({ mkDerivation, alex, array, base, binary, bytestring, containers
+     , deepseq, directory, filepath, mtl, parsec, pretty, text, time
+     , transformers
+     }:
+     mkDerivation {
+       pname = "Cabal-syntax";
+       version = "3.12.0.0";
+       sha256 = "090zv977zp85q6kwa2nwyh0plrb73dhss2wx00jdxz7v8zl2masp";
+       revision = "1";
+       editedCabalFile = "1sm453m6ba2k1jdqvag53sakifkjy3c4rrcbx6n7z8lxp0cdzbgh";
+       libraryHaskellDepends = [
+         array base binary bytestring containers deepseq directory filepath
+         mtl parsec pretty text time transformers
+       ];
+       libraryToolDepends = [ alex ];
+       description = "A library for working with .cabal files";
+       license = lib.licenses.bsd3;
+       hydraPlatforms = lib.platforms.none;
+     }) {};
+
   "CabalSearch" = callPackage
     ({ mkDerivation, base, bytestring, directory, filepath, HDBC
      , HDBC-sqlite3, process, unix
@@ -3264,8 +3305,8 @@ self: {
      }:
      mkDerivation {
        pname = "ChasingBottoms";
-       version = "1.3.1.13";
-       sha256 = "1kpzvx7dwzsw4jj4r4sk0vdhj0kcsfflkbq3acvp2wyvlq343as6";
+       version = "1.3.1.14";
+       sha256 = "0rmpi7n0b9spvx84645z2zcnnvg75s40zl05c8iigzciyjax3v5y";
        libraryHaskellDepends = [
          base containers mtl QuickCheck random syb
        ];
@@ -5988,8 +6029,8 @@ self: {
     ({ mkDerivation, base, containers, deepseq, mtl, transformers }:
      mkDerivation {
        pname = "FULE";
-       version = "0.3.1";
-       sha256 = "0h2dcnkxnwsczjlp6bwa38lzwdwkihgj2xmj2f46dz91npfjk9xg";
+       version = "0.3.1.1";
+       sha256 = "04hmq6hv6wbs51ckbdia1jrd8a3qw645x9g550m4iwhy89gs0dnq";
        libraryHaskellDepends = [
          base containers deepseq mtl transformers
        ];
@@ -9904,19 +9945,18 @@ self: {
 
   "HTF" = callPackage
     ({ mkDerivation, aeson, aeson-pretty, array, base
-     , base64-bytestring, bytestring, Cabal, containers, cpphs, Diff
-     , directory, filepath, haskell-src, HUnit, lifted-base
-     , monad-control, mtl, old-time, pretty, process, QuickCheck, random
-     , regex-compat, template-haskell, temporary, text, time, unix
+     , base64-bytestring, bytestring, containers, cpphs, Diff, directory
+     , filepath, haskell-src, HUnit, lifted-base, monad-control, mtl
+     , old-time, pretty, process, QuickCheck, random, regex-compat
+     , template-haskell, temporary, text, time, unix
      , unordered-containers, vector, xmlgen
      }:
      mkDerivation {
        pname = "HTF";
-       version = "0.15.0.1";
-       sha256 = "0mlqsfc0b4gvinq7nrq42smdl0gagznhwiw86dkkzc1npmcaj5mw";
+       version = "0.15.0.2";
+       sha256 = "019md1csrncdmddbyg2lxra9qqsspdnc0jq1x8v99q0lzabc3ix8";
        isLibrary = true;
        isExecutable = true;
-       setupHaskellDepends = [ base Cabal process ];
        libraryHaskellDepends = [
          aeson array base base64-bytestring bytestring containers cpphs Diff
          directory haskell-src HUnit lifted-base monad-control mtl old-time
@@ -11530,8 +11570,8 @@ self: {
      }:
      mkDerivation {
        pname = "HsYAML";
-       version = "0.2.1.3";
-       sha256 = "144xixvi6nfhg1rjq5aglj0vmvpf482rxzn5vlv19n4gbfnaj9p0";
+       version = "0.2.1.4";
+       sha256 = "09hsva1qnnnyvbf7860wqpi5b3i6hbshf3wmhx3fm4hi7i3ak05m";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -12896,21 +12936,20 @@ self: {
 
   "LPFP" = callPackage
     ({ mkDerivation, base, containers, diagrams-cairo, diagrams-lib
-     , gloss, gnuplot, linear, SpatialMath, Vis
+     , gloss, gnuplot, linear, Vis
      }:
      mkDerivation {
        pname = "LPFP";
-       version = "1.1.1";
-       sha256 = "1j4jhkrwpvzj5dr3j63l78g0y555vcgdcp6kqk2s8nm4ja7apysi";
+       version = "1.1.4";
+       sha256 = "1g86ajibry5ssz3nqnqvnd0w6psyr9gl6wsp6ijaa6r6y1izw1fa";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
          base containers diagrams-cairo diagrams-lib gloss gnuplot linear
-         SpatialMath Vis
+         Vis
        ];
        executableHaskellDepends = [
-         base diagrams-cairo diagrams-lib gloss gnuplot linear SpatialMath
-         Vis
+         base diagrams-cairo diagrams-lib gloss gnuplot linear Vis
        ];
        description = "Code for the book Learn Physics with Functional Programming";
        license = lib.licenses.bsd3;
@@ -15949,10 +15988,8 @@ self: {
     ({ mkDerivation, base, ghc-prim, hashable, template-haskell }:
      mkDerivation {
        pname = "OneTuple";
-       version = "0.4.1.1";
-       sha256 = "0axv63061gzjg6b31h9zg6v54fms6ggd1m8v6kcclmqyxva69ry9";
-       revision = "1";
-       editedCabalFile = "10p6wvv3z8xp2zgai9ay2dnzp8zzry5mglr61sgzp1i02znzsbb3";
+       version = "0.4.2";
+       sha256 = "0mdbga3a5pjzszlq9bny3zgfbz25w2q2bjw2h6q1fk80yjhahk8p";
        libraryHaskellDepends = [ base ghc-prim template-haskell ];
        testHaskellDepends = [ base hashable template-haskell ];
        description = "Singleton Tuple";
@@ -17507,6 +17544,24 @@ self: {
        license = lib.licenses.bsd3;
      }) {};
 
+  "QuickCheck_2_15" = callPackage
+    ({ mkDerivation, base, containers, deepseq, process, random
+     , splitmix, template-haskell, transformers
+     }:
+     mkDerivation {
+       pname = "QuickCheck";
+       version = "2.15";
+       sha256 = "10hd896c8vb19aj3q0dg90aymsiq73ffxgx8z1p39w7x21m2vdnc";
+       libraryHaskellDepends = [
+         base containers deepseq random splitmix template-haskell
+         transformers
+       ];
+       testHaskellDepends = [ base containers deepseq process ];
+       description = "Automatic testing of Haskell programs";
+       license = lib.licenses.bsd3;
+       hydraPlatforms = lib.platforms.none;
+     }) {};
+
   "QuickCheck-GenT" = callPackage
     ({ mkDerivation, base, mmorph, QuickCheck, random, transformers }:
      mkDerivation {
@@ -20186,8 +20241,8 @@ self: {
        pname = "SpatialMath";
        version = "0.2.7.1";
        sha256 = "0ikl4yzrp3blhrw6i29xympvw6s6wfkbmq446gnkbnfv455xmdgw";
-       revision = "1";
-       editedCabalFile = "1jc32ff5005hjhi72jc8qb7r2lvzi5dq54yk102pq4015kr4n5q6";
+       revision = "2";
+       editedCabalFile = "1sql0b4kgxi9m8pifl3hdnhzhwq94cqi9z1vcf8kr9ziv70l76n1";
        libraryHaskellDepends = [
          base binary cereal ghc-prim lens linear
        ];
@@ -22097,18 +22152,33 @@ self: {
      }) {};
 
   "Vis" = callPackage
-    ({ mkDerivation, base, binary, bmp, bytestring, GLUT, OpenGL
-     , OpenGLRaw, SpatialMath, time, vector, vector-binary-instances
+    ({ mkDerivation, base, binary, bmp, bytestring, GLUT, linear
+     , OpenGL, OpenGLRaw, time, vector, vector-binary-instances
      }:
      mkDerivation {
        pname = "Vis";
-       version = "0.7.7.0";
-       sha256 = "1qsk7qc1d5j4wbn65ah1p33k548q68sd7w0sv4i3c7qj61hpmh09";
-       revision = "2";
-       editedCabalFile = "0ipr0qq2szrck21akrip2ib82xxsys84y4hdm2mk1cvs3vy1f8mm";
+       version = "0.7.7.1";
+       sha256 = "1nm2gzyckbfrghlnx6g421wllkq5r7hb9ps0mi0dwwfshbfz7pr7";
        libraryHaskellDepends = [
-         base binary bmp bytestring GLUT OpenGL OpenGLRaw SpatialMath time
-         vector vector-binary-instances
+         base binary bmp bytestring GLUT linear OpenGL OpenGLRaw time vector
+         vector-binary-instances
+       ];
+       description = "Painless 3D graphics, no affiliation with gloss";
+       license = lib.licenses.bsd3;
+       hydraPlatforms = lib.platforms.none;
+     }) {};
+
+  "Vis_1_0_0" = callPackage
+    ({ mkDerivation, base, binary, bmp, bytestring, GLUT, linear
+     , OpenGL, OpenGLRaw, time, vector, vector-binary-instances
+     }:
+     mkDerivation {
+       pname = "Vis";
+       version = "1.0.0";
+       sha256 = "1ackm8k1ggkhyn6s6z6y0h5hvimp6q9wsc2vdyfw21824vppkpsk";
+       libraryHaskellDepends = [
+         base binary bmp bytestring GLUT linear OpenGL OpenGLRaw time vector
+         vector-binary-instances
        ];
        description = "Painless 3D graphics, no affiliation with gloss";
        license = lib.licenses.bsd3;
@@ -24548,6 +24618,8 @@ self: {
        pname = "acid-state";
        version = "0.16.1.3";
        sha256 = "0vmggxzp6alv92ycwc9bc53vn73s1cbn8rhmbcb2jvcglyakvws5";
+       revision = "1";
+       editedCabalFile = "17m2071y2vam37ixgqa4rgfmcrwvc4x0k6a89hz70fmpzx52hhad";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -24992,6 +25064,24 @@ self: {
        broken = true;
      }) {};
 
+  "acme-not-a-joke" = callPackage
+    ({ mkDerivation, aeson, base, base16-bytestring, bytestring
+     , cryptohash-sha256, filepath, jose, lens, text, time, wreq
+     }:
+     mkDerivation {
+       pname = "acme-not-a-joke";
+       version = "0.1.0.0";
+       sha256 = "016zaz5mlbj9v1mwx8208azgvazdz7ng2g6971kjmsp3jxdp27v5";
+       libraryHaskellDepends = [
+         aeson base base16-bytestring bytestring cryptohash-sha256 filepath
+         jose lens text time wreq
+       ];
+       description = "implements ACME clients (rfc-8555)";
+       license = lib.licenses.bsd3;
+       hydraPlatforms = lib.platforms.none;
+       broken = true;
+     }) {};
+
   "acme-now" = callPackage
     ({ mkDerivation, base, time }:
      mkDerivation {
@@ -25202,8 +25292,8 @@ self: {
     ({ mkDerivation, base, criterion, time }:
      mkDerivation {
        pname = "acme-year";
-       version = "2019";
-       sha256 = "011vpap3j0riw6y23j8c4h7610yhjq00jpcfjg2g7lagb62gmkpa";
+       version = "2024";
+       sha256 = "03lr3risfh1fz546krx16776wfxavygbm8d6yaqaa36caa1s05k2";
        libraryHaskellDepends = [ base ];
        testHaskellDepends = [ base time ];
        benchmarkHaskellDepends = [ base criterion ];
@@ -25296,6 +25386,8 @@ self: {
        pname = "active";
        version = "0.2.1";
        sha256 = "150kwir36aj9q219qi80mlqd0vxm4941dh6x4xp58rbd5a3mhmv1";
+       revision = "2";
+       editedCabalFile = "16gc6vksf5gn5v6m9zbiphb2bd2chbypk8iykn1y7ak3f8g30asn";
        libraryHaskellDepends = [
          base lens linear semigroupoids semigroups vector
        ];
@@ -25415,8 +25507,8 @@ self: {
      }:
      mkDerivation {
        pname = "ad";
-       version = "4.5.5";
-       sha256 = "15sncm5rm2aryyyngwjqadx6czjgbjlw4ksx5w5jrfr02rs2yrbq";
+       version = "4.5.6";
+       sha256 = "1v3ax1m0adsnc1bcjqkppxykv1di73bcv2jby90w8yiawyfay24x";
        libraryHaskellDepends = [
          adjunctions array base comonad containers data-reify erf free nats
          reflection semigroups transformers
@@ -26419,9 +26511,7 @@ self: {
        ];
        description = "Derivation of Aeson instances for GADTs";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
        mainProgram = "readme";
-       broken = true;
      }) {};
 
   "aeson-generic-compat" = callPackage
@@ -26603,6 +26693,8 @@ self: {
        pname = "aeson-optics";
        version = "1.2.1";
        sha256 = "0sbx55ns7jjwwkz49587vnkx4jirbh7xflaf0jwxxf0lq91216ja";
+       revision = "1";
+       editedCabalFile = "1h31qdvg6r5jycl6ria6xs7a6k8ccghr3jp3jgpddbivlbxhzp7h";
        libraryHaskellDepends = [
          aeson base bytestring optics-core optics-extra scientific text
          text-short vector
@@ -27590,6 +27682,44 @@ self: {
        broken = true;
      }) {};
 
+  "airgql" = callPackage
+    ({ mkDerivation, aeson, base, blaze-markup, bytestring, cmdargs
+     , conduit, directory, double-x-encoding, exceptions, extra
+     , filepath, githash, graphql, graphql-spice, hspec, http-client
+     , http-types, process, protolude, scientific, servant
+     , servant-blaze, servant-docs, servant-multipart, servant-server
+     , simple-sql-parser, sqlite-simple, template-haskell, text, time
+     , typed-process, unix, unordered-containers, wai, wai-cors
+     , wai-extra, warp
+     }:
+     mkDerivation {
+       pname = "airgql";
+       version = "0.7.1.2";
+       sha256 = "1fcin7c223xfgyksa50dw8vnxvs0rkwzi16ia5x0rrnfsjv83jwm";
+       isLibrary = true;
+       isExecutable = true;
+       libraryHaskellDepends = [
+         aeson base blaze-markup bytestring conduit directory
+         double-x-encoding exceptions extra filepath graphql graphql-spice
+         http-types process protolude scientific servant servant-blaze
+         servant-docs servant-multipart servant-server simple-sql-parser
+         sqlite-simple template-haskell text time typed-process unix
+         unordered-containers wai wai-extra
+       ];
+       executableHaskellDepends = [
+         base cmdargs githash http-client protolude sqlite-simple text wai
+         wai-cors warp
+       ];
+       testHaskellDepends = [
+         aeson base bytestring directory exceptions filepath graphql
+         graphql-spice hspec protolude servant-server sqlite-simple text
+         unix unordered-containers
+       ];
+       description = "Automatically generate a GraphQL API for an SQLite database";
+       license = lib.licenses.agpl3Plus;
+       mainProgram = "airgql";
+     }) {};
+
   "airship" = callPackage
     ({ mkDerivation, attoparsec, base, base64-bytestring, blaze-builder
      , bytestring, bytestring-trie, case-insensitive, containers
@@ -28007,8 +28137,8 @@ self: {
        pname = "alex-tools";
        version = "0.6.1";
        sha256 = "1nh8qbsv4sn6gxc7j8cbp2pb85cajilzhp8rchlwnk7bv8lzf8ji";
-       revision = "1";
-       editedCabalFile = "0s2gc18i5kvlwxnjkcwc3c5hmj9mg8bpj09wkl8hddmjscdlrjyk";
+       revision = "2";
+       editedCabalFile = "1ykm6ycxahwjkjdadcifay94c4mmp9lp3mgrca1150cvv0ff30f8";
        libraryHaskellDepends = [
          base bytestring deepseq template-haskell text
        ];
@@ -29160,6 +29290,8 @@ self: {
        pname = "amazonka";
        version = "2.0";
        sha256 = "044ypj06rg6vb6yfdnfjk0piwpwgqchryskzhws6knjf7qag67g0";
+       revision = "1";
+       editedCabalFile = "0z4isy5149x8bbg4bdss12abr9kw03cpks4vzcdiscxvjj8aq0fl";
        libraryHaskellDepends = [
          aeson amazonka-core amazonka-sso amazonka-sts base bytestring
          conduit directory exceptions http-client http-conduit http-types
@@ -29179,6 +29311,8 @@ self: {
        pname = "amazonka-accessanalyzer";
        version = "2.0";
        sha256 = "0d95kxjq0b6lfqnz4lkihmsnxkvia7v6889mbg2hjl2b6d8gq9hf";
+       revision = "1";
+       editedCabalFile = "007ibhzk8k25yck04s8bmrw3sd38f1wwfbj7kxzvxwv06cgjd5z1";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -29197,6 +29331,8 @@ self: {
        pname = "amazonka-account";
        version = "2.0";
        sha256 = "05d5428jya57w6s798mynd31wdp1bwi0gmqr2n6wvbxrwjxjvn2g";
+       revision = "1";
+       editedCabalFile = "18zfv47znh9zhvy5j2920wic014l8xx87mpwa3wgx36nhb1bwamb";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -29215,6 +29351,8 @@ self: {
        pname = "amazonka-alexa-business";
        version = "2.0";
        sha256 = "03jfkwvzkl168hnn3vz53l4jgv59q8k2w8q5awnz2fzzm5i0vg5j";
+       revision = "1";
+       editedCabalFile = "1mbxggwjsh6i81nxlhdg5n9zpdm7l4n5ak1rhx9qfrw22lzk5whw";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -29233,6 +29371,8 @@ self: {
        pname = "amazonka-amp";
        version = "2.0";
        sha256 = "151k7wshjifnypywvq6nkbpfq3bsyfpxayqnnxqk88zcgp52b2i5";
+       revision = "1";
+       editedCabalFile = "1g02kadmxsmfr6jpvj11vndf2qzj7d0gsdavpmmfqxx6mn1c69hr";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -29251,6 +29391,8 @@ self: {
        pname = "amazonka-amplify";
        version = "2.0";
        sha256 = "0k2nvz7dw9j2cwh24a4c5bmzp25lyn362mgqlbk5n0576v2yqdkh";
+       revision = "1";
+       editedCabalFile = "1gm2v1c06i38c43zrii6vyx4mrfhzbj7qim68rzc2ncisqxyq4wi";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -29269,6 +29411,8 @@ self: {
        pname = "amazonka-amplifybackend";
        version = "2.0";
        sha256 = "1jmar2yzlmcdw869a4bih64z6h31yj3llkg7h2lqhk3n231xlxx7";
+       revision = "1";
+       editedCabalFile = "119gg7lvwrk1rfqckd9gbhyhxn9r5wik2qvmz7r87lr0lxkvvmgl";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -29287,6 +29431,8 @@ self: {
        pname = "amazonka-amplifyuibuilder";
        version = "2.0";
        sha256 = "1jw75bi3r3myd05l5v22w5mmj7iyihmgp35zncr1n6b07jm8ig8l";
+       revision = "1";
+       editedCabalFile = "1igkj5q76v1c3x00db0zy4mwz1pblgvxnh5wvwig2xp19k0ymrx2";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -29305,6 +29451,8 @@ self: {
        pname = "amazonka-apigateway";
        version = "2.0";
        sha256 = "17m30b7wdvvf859aai64h71hxwz6w432n6ck1i9b11fcxf03sdlf";
+       revision = "1";
+       editedCabalFile = "16rcwx2mzrzwf8j18a4mcv91svixdpik11wzjf3w4fsb3h2p10sf";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -29323,6 +29471,8 @@ self: {
        pname = "amazonka-apigatewaymanagementapi";
        version = "2.0";
        sha256 = "15yx8ljfvidx7xm7i5iwdyqdrdw0b9qzi5s1pw2d5q7xbgdsg8wj";
+       revision = "1";
+       editedCabalFile = "0x1gkij7s0hmcrrnzkaw4hyxg4wjshpl345aszipp9aqhi0b5xmm";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -29341,6 +29491,8 @@ self: {
        pname = "amazonka-apigatewayv2";
        version = "2.0";
        sha256 = "1b48a8zbr1d44zvvbmyfwcqn548vwq4qh94wdllxiizsszb8aq6k";
+       revision = "1";
+       editedCabalFile = "06w1dwimjirn45n308jb0ll7x3whxddw06f79zw4r6ajy0cmrymv";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -29359,6 +29511,8 @@ self: {
        pname = "amazonka-appconfig";
        version = "2.0";
        sha256 = "1dqmaq0ysl4ki792zh4bmsvjf6fh628r7l5fhsqa6s1lrmn746mn";
+       revision = "1";
+       editedCabalFile = "0w935mckqrdkyb25bfdz8gl4a2zcq3jsrw8i0k0axiax2g9sg4lx";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -29377,6 +29531,8 @@ self: {
        pname = "amazonka-appconfigdata";
        version = "2.0";
        sha256 = "12yrh69ixicgh3gnz9viw0w8fgcz1l81inclh4cq2gz1pjyasp17";
+       revision = "1";
+       editedCabalFile = "1p2ngrq274i4f4wk9dl9k74bimfqvx9i631yahcai5silw66iv2g";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -29395,6 +29551,8 @@ self: {
        pname = "amazonka-appflow";
        version = "2.0";
        sha256 = "02374a03lifbg1y7zzvg4v91r0k1mji7ad9nm2c6v8k45791f4d0";
+       revision = "1";
+       editedCabalFile = "0pnxwk8rah3wizmh7qi7911dmqnyy4fl95qah258g5lv9ialm9qy";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -29413,6 +29571,8 @@ self: {
        pname = "amazonka-appintegrations";
        version = "2.0";
        sha256 = "0yi057njjx38xy03ic7dkjdmkyk4wh3wiv7zbgz77xq2yjnv6gjy";
+       revision = "1";
+       editedCabalFile = "0wy7fjj4iriasbwj15ky361v8w36jl2sihwgzynh1nfkk81jgqiz";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -29431,6 +29591,8 @@ self: {
        pname = "amazonka-application-autoscaling";
        version = "2.0";
        sha256 = "1za4q19j9157q11y3k32p3xkj94bbb92q440gn1c7m55m6caskm0";
+       revision = "1";
+       editedCabalFile = "1jfscvldcqj5h3d0hlia63bafaqbcf4syrj1gmbi32paqcxy0kb4";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -29449,6 +29611,8 @@ self: {
        pname = "amazonka-application-insights";
        version = "2.0";
        sha256 = "198h6phfxdcwcp6k7nfjwjjxpv271j8xrgcl30bg4jqswp47hy1x";
+       revision = "1";
+       editedCabalFile = "1yywc7acx1p6xvvknpm8qmvbb0v44saf4n17k1kqdxpkjygvgxc1";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -29467,6 +29631,8 @@ self: {
        pname = "amazonka-applicationcostprofiler";
        version = "2.0";
        sha256 = "1kqzw2553sllyh17svckzl65i45r0n6sjm3ap3f9s3z1x946hdlx";
+       revision = "1";
+       editedCabalFile = "1wh9rk8mk8zx91z8nag36baxzqbqjkbiyvy10f5bxarrbfhkg7y2";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -29485,6 +29651,8 @@ self: {
        pname = "amazonka-appmesh";
        version = "2.0";
        sha256 = "1dr3nq9imivwb4z183vgylcp740bhhpc29cpjkzn8zxm5hnf7lqr";
+       revision = "1";
+       editedCabalFile = "1yr10w760rs6bjjmpyja94irlapyi5jzdgxklzhyv5fi0b7zwziz";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -29503,6 +29671,8 @@ self: {
        pname = "amazonka-apprunner";
        version = "2.0";
        sha256 = "1g5j1jhdxj3ra9z7qjcnhiszxv9rq2w8g4qjzdjdd54v7lnwb5v5";
+       revision = "1";
+       editedCabalFile = "0w901z51gr6k3zafi1773843gcrlsy63p3la3syi7lkbcv4v2hwb";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -29521,6 +29691,8 @@ self: {
        pname = "amazonka-appstream";
        version = "2.0";
        sha256 = "0nbvdkaml27jscrxw9raydqfg79zczhm47lirdgq7jm58r6pn3w5";
+       revision = "1";
+       editedCabalFile = "0w91q5d15srd2n13rk79mkabn9q8gv57r8rq1lamrbamgbh20w4f";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -29539,6 +29711,8 @@ self: {
        pname = "amazonka-appsync";
        version = "2.0";
        sha256 = "08n4yy2wilfyp92i7nlmn3gib53fwsxiia2igbnr2mlmvb1vm67r";
+       revision = "1";
+       editedCabalFile = "12gc1rj37rx44qw4s2r916p7rzfhx7xcc6l2x5pla7hmsjd3z95a";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -29557,6 +29731,8 @@ self: {
        pname = "amazonka-arc-zonal-shift";
        version = "2.0";
        sha256 = "0wbzxm1an9kcd4k4s76h1mp412rdca9nwl3xib04kkkkzd3bkggd";
+       revision = "1";
+       editedCabalFile = "190vjvvaqpignijkycfqp1a2s2frhjlgicinp9jkc89ncx3k9vcw";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -29575,6 +29751,8 @@ self: {
        pname = "amazonka-athena";
        version = "2.0";
        sha256 = "0hcww9mr096ys1imba8zhvyy4g9vaskh8gs4bd8hb0nh8gsaa2sh";
+       revision = "1";
+       editedCabalFile = "1k1csmwiz41qx5mpqj9zl61wi0pjskarzyll4niibxv09nyp1vjw";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -29593,6 +29771,8 @@ self: {
        pname = "amazonka-auditmanager";
        version = "2.0";
        sha256 = "1182nz5rzlsx97lczhh78lxv7nrnh1rdw3c202jvsla9f6hr7hi7";
+       revision = "1";
+       editedCabalFile = "17fbqg4pjl8v5nr185lxdc0mfbcshf8lbw177ivhlynskyip0jc9";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -29611,6 +29791,8 @@ self: {
        pname = "amazonka-autoscaling";
        version = "2.0";
        sha256 = "043j4anckd05j5bz259f1gpkcacdinsscf06avbcbq08r8cqf8wf";
+       revision = "1";
+       editedCabalFile = "1q1x2vlz0scrjy1hpz7s7k1zmy4m4jpa5avb3b08vsjcvyjyg18h";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -29629,6 +29811,8 @@ self: {
        pname = "amazonka-autoscaling-plans";
        version = "2.0";
        sha256 = "10bwadh8rdqnrdwy1skc3xsmc2c5ikawi83l8b9liapcyb81r7j1";
+       revision = "1";
+       editedCabalFile = "1idvh2mms3gpqlk5xm1j6jvp736920z5fyc1k6gx5749lfklfr8n";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -29647,6 +29831,8 @@ self: {
        pname = "amazonka-backup";
        version = "2.0";
        sha256 = "1m2zjz3zs8kw84ph0hi88q1zrshs24n8dr3xpcy84ir9xgpl37lq";
+       revision = "1";
+       editedCabalFile = "0g0vmladxnfz6rbd1vrgmws267vw50rdqvd5dmza9kd1x0gqfm18";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -29665,6 +29851,8 @@ self: {
        pname = "amazonka-backup-gateway";
        version = "2.0";
        sha256 = "13wqbdjq6ippm64cy8c2465vzx3g4g8q8lfymp2lajk1vvp02nyh";
+       revision = "1";
+       editedCabalFile = "1qh8r8vwnf04ksg0ibadfiycgcnnkx3fn1pj36v6sb5rlpliqqjj";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -29683,6 +29871,8 @@ self: {
        pname = "amazonka-backupstorage";
        version = "2.0";
        sha256 = "08fkx40xzi6fhbpid93zp0hpll71qy8w84jm38zb4i1phwsb466y";
+       revision = "1";
+       editedCabalFile = "0gg79hqkpxj260kyi1ng1mrhpd0vhj470l6ym0pixsn1dkbfhckn";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -29701,6 +29891,8 @@ self: {
        pname = "amazonka-batch";
        version = "2.0";
        sha256 = "1m0gh0jamvs493raqg3id2kag68sjws15f4d1qshzp5gahsc6a08";
+       revision = "1";
+       editedCabalFile = "03q03wn393pjsz3ckf446jvp8033pwrxbzs4vfvgsxdf173hvzhh";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -29719,6 +29911,8 @@ self: {
        pname = "amazonka-billingconductor";
        version = "2.0";
        sha256 = "0cx2dccf1symgn9nzi0d27hnfgxhhjcd56g3x7j57y8h05dg1lmn";
+       revision = "1";
+       editedCabalFile = "04hx6x0m5rh7pvbvwp4m3z9f9zxdcvhsma8gi2ycsfkqkr8f6jb7";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -29737,6 +29931,8 @@ self: {
        pname = "amazonka-braket";
        version = "2.0";
        sha256 = "09dp4n8gjs5cmq1a1hq1ng9ndd43gslmcy5idkrabs4as4piqr9d";
+       revision = "1";
+       editedCabalFile = "04k15vz5xvr36rzs215375i9zi8riwphf1v7x4r25834w8zakrjk";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -29755,6 +29951,8 @@ self: {
        pname = "amazonka-budgets";
        version = "2.0";
        sha256 = "0mqlxh126i6qprjsz753hp0ir4i47442v943fzhddcw41cyrdchk";
+       revision = "1";
+       editedCabalFile = "1xi7xcb4dhwjpv1yz8j25wshd1sq1n4vmnr8mm8bxrrb4hfgh7iy";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -29773,6 +29971,8 @@ self: {
        pname = "amazonka-certificatemanager";
        version = "2.0";
        sha256 = "0xqq13gjxy5czh7xz1bdr57hd2rykgh36vriw5mgfrhs09vry6zn";
+       revision = "1";
+       editedCabalFile = "0i5lsj0z2wy51nyrxmngwa7gbj65ss2h5ja1nl4savpmb8aa83c3";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -29791,6 +29991,8 @@ self: {
        pname = "amazonka-certificatemanager-pca";
        version = "2.0";
        sha256 = "1gwzb5lq1ms62m8l1c3fqfkpz2y2l1fsij7hradiic6zp55xsy4p";
+       revision = "1";
+       editedCabalFile = "137ikpgypnm2chl6pcqpbayb3w8rngcxlzxg80ydvaj9k774wb6l";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -29809,6 +30011,8 @@ self: {
        pname = "amazonka-chime";
        version = "2.0";
        sha256 = "0bysdxbqsq9657854hdhzvcjwnfqpg4k31chwfvldilnyid2w9l1";
+       revision = "1";
+       editedCabalFile = "0y9d2snrxnscc4lgxwm9yhkgjm0q9bmr935ah5bdirg76mdnm5g6";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -29827,6 +30031,8 @@ self: {
        pname = "amazonka-chime-sdk-identity";
        version = "2.0";
        sha256 = "0j6yx3rprfmj7l41yjrz9qd59jlpy79ksrmqv55lb8n5s4zl9ar4";
+       revision = "1";
+       editedCabalFile = "0ynd3wd8vp0552qp7r5db1kvc3j16rg89yci06ih7wdx17zks9hx";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -29845,6 +30051,8 @@ self: {
        pname = "amazonka-chime-sdk-media-pipelines";
        version = "2.0";
        sha256 = "1b5s8krabpcw8sywxm2nf7jlmblzz7rvnvm1pxy9xc9vd3m760sd";
+       revision = "1";
+       editedCabalFile = "1nis9a5npjmqyzbnn7bs81rmx2c6fi5z4vf2fx4x8b8kcy21s0hp";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -29863,6 +30071,8 @@ self: {
        pname = "amazonka-chime-sdk-meetings";
        version = "2.0";
        sha256 = "1v1khlbbisdbdz7iap4gx0gc6b3l2qcqnv53jskwmq3qy7a2ys7s";
+       revision = "1";
+       editedCabalFile = "12g98smwrqynqjh0bch326k26hmv0jqgqhm1ff95nhws2czdcrp5";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -29881,6 +30091,8 @@ self: {
        pname = "amazonka-chime-sdk-messaging";
        version = "2.0";
        sha256 = "0zr6wyr97ss9r245i56cffkk4rb0jshrbzp7jnkgh9qqkbry8pal";
+       revision = "1";
+       editedCabalFile = "1q42xyqrrcb8480bks2r2262ndrymbmp8fpbnh486pbap98pdmgj";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -29899,6 +30111,8 @@ self: {
        pname = "amazonka-chime-sdk-voice";
        version = "2.0";
        sha256 = "1ym5c3ckk9p08ypyfbh5s9ajj74pyvcwj45j90nb3fgzi8gvv2cp";
+       revision = "1";
+       editedCabalFile = "0k6b81wd1r9jlsj9i40r066d2bi8kgaydk8ngv27zqrf1if0xxqi";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -29917,6 +30131,8 @@ self: {
        pname = "amazonka-cloud9";
        version = "2.0";
        sha256 = "0javf3vmlmskprjrlj353hhkaprkc8g7cgpqm6vp4vgzqiln46bf";
+       revision = "1";
+       editedCabalFile = "0nmrdm8f7mvhv1c7bk27c4g4nzcvm37p19pjp8bgldjij7w000mk";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -29935,6 +30151,8 @@ self: {
        pname = "amazonka-cloudcontrol";
        version = "2.0";
        sha256 = "13nh5mm8sdckmyn7cmykli6l3kbrxg77ycnfpd9i3y28lyycp3mx";
+       revision = "1";
+       editedCabalFile = "0bp5kwlyh2iq8ndnnq9sdg4wilkw49w0m6kcx9xf0iw3z8l8jgr4";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -29953,6 +30171,8 @@ self: {
        pname = "amazonka-clouddirectory";
        version = "2.0";
        sha256 = "02iiam1i2cyafmhl7gbd02s03lx4r0p0g6ccl3k3rz853sp6jqw8";
+       revision = "1";
+       editedCabalFile = "1fyi92qrb0dvpawsm5nq2fp7whs1mq0gpf74iwi8n5j4yc73gi1v";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -29971,6 +30191,8 @@ self: {
        pname = "amazonka-cloudformation";
        version = "2.0";
        sha256 = "01gw438fw7b87ibdgnjl3hqxx8s1ckkmaj0b12b4plqsdjsx6h1b";
+       revision = "1";
+       editedCabalFile = "0j65pzbdq3rrkjyzn7dq0r9cb90cia91c4bglys1q98wqc2bms65";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -29989,6 +30211,8 @@ self: {
        pname = "amazonka-cloudfront";
        version = "2.0";
        sha256 = "1zsn0avbhc789gvk8ylgawjpdkxvdj71n96bd66xmmwizqb5vqsw";
+       revision = "1";
+       editedCabalFile = "06wdhi5i0xnpwrxlay8lhghv0l1dfds5ysgi9yh6zhbh4paynzlb";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -30007,6 +30231,8 @@ self: {
        pname = "amazonka-cloudhsm";
        version = "2.0";
        sha256 = "0xpvvgk3nnkmjbbx34ancq2l1ij7621qww0fxpa2vgdmn4qg9m7a";
+       revision = "1";
+       editedCabalFile = "17grs1gi6szvc2f8ihrhsz9x9d0k0xxsl574rbdjg794vgyxlzrq";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -30025,6 +30251,8 @@ self: {
        pname = "amazonka-cloudhsmv2";
        version = "2.0";
        sha256 = "03sbrqpw3lh9b3rz1f8r1y368cax6k9ywi4apl3cdaqsq8k6mpp0";
+       revision = "1";
+       editedCabalFile = "0ngyzcfxf87bhwir0l87a17w9aa0bal0fa44wjfcm30ikns7wi94";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -30043,6 +30271,8 @@ self: {
        pname = "amazonka-cloudsearch";
        version = "2.0";
        sha256 = "07xpfkfr229i1lh6v9fi4j1gmv9aqiwy709nbczaph6nsln9hjb2";
+       revision = "1";
+       editedCabalFile = "0l86jay4mkmxsazzwl4c800gapp6yyvmqxzbz0vy2qg0c92n09qd";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -30061,6 +30291,8 @@ self: {
        pname = "amazonka-cloudsearch-domains";
        version = "2.0";
        sha256 = "0is587zw0v71q3njaf8092s0dlrlgax9k72jk21whrlw2hcwmp53";
+       revision = "1";
+       editedCabalFile = "1559sn1g87hs0l0akpnz3hjwwfp9mri6wg2bjg0smlcwgycxlsyb";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -30079,6 +30311,8 @@ self: {
        pname = "amazonka-cloudtrail";
        version = "2.0";
        sha256 = "03cm69j3g8s0d6s8gdx3p1d3rwz0ph0qyx76fv1l5cn27phm8mbn";
+       revision = "1";
+       editedCabalFile = "0l2nf1g83smanki4asqiycb1lvahw450i89c25fkfc8cs01ira53";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -30097,6 +30331,8 @@ self: {
        pname = "amazonka-cloudwatch";
        version = "2.0";
        sha256 = "1h8mnjskkr4lkb2bvww0nhp9xn0cqjab0hqgl1ncv6p61jf1zw5g";
+       revision = "1";
+       editedCabalFile = "1d995kz45ysh9vb8izv80sg1pbdah1q7p3dydrfp74qjq3l9w0j1";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -30115,6 +30351,8 @@ self: {
        pname = "amazonka-cloudwatch-events";
        version = "2.0";
        sha256 = "1dipj5gl92q6339246kz8m9f5x7h0vlhnp665h6d5mzcnbvz97b9";
+       revision = "1";
+       editedCabalFile = "1wg1i1hlnr5ydflzsi1nr3vk0f4nrf6ni299v3hx3f5ixmsfs9rr";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -30133,6 +30371,8 @@ self: {
        pname = "amazonka-cloudwatch-logs";
        version = "2.0";
        sha256 = "0gpwvz8kwd908n28zvbk5vmx4jrmqx8jybypddlysk223rcfzb82";
+       revision = "1";
+       editedCabalFile = "19k5bcxsb90zayhqfq914z8a1arfb7kzxnsh24azgw562jywc62n";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -30151,6 +30391,8 @@ self: {
        pname = "amazonka-codeartifact";
        version = "2.0";
        sha256 = "14913n9qlalp0bmnzdsfcfi20xdxa64j826dn10lx0wmpg138inv";
+       revision = "1";
+       editedCabalFile = "1pjd50rnb9qczqcqg5a9gf007wjn1jbwl89hnlyi3hc1jkg9cgvg";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -30169,6 +30411,8 @@ self: {
        pname = "amazonka-codebuild";
        version = "2.0";
        sha256 = "13yx256hk14f8gaawgnvfxjw3ai8r5ldy1j0d51iknd95qbdg2yp";
+       revision = "1";
+       editedCabalFile = "1adgglz9hyydpyrinzlswasjvndm5pn9hb766wkmgmha5pssc9x9";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -30187,6 +30431,8 @@ self: {
        pname = "amazonka-codecommit";
        version = "2.0";
        sha256 = "1c50c249cxnw4wlcfbwh74k3qy9csmnf92nm99gsb8c8smhhsxxf";
+       revision = "1";
+       editedCabalFile = "1jsxgi42gxrmfg9pglpa6s98gcfmz9f03l1kzl4qbi5k84z6jdjx";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -30205,6 +30451,8 @@ self: {
        pname = "amazonka-codedeploy";
        version = "2.0";
        sha256 = "0pppzrwv2b5qnh4xw90c21imqwa8wrzjqjmmfcym5805qj5c1fhp";
+       revision = "1";
+       editedCabalFile = "05dq6n1rw64h6va801g30540qy4dyiph4pg4sbfpkwkkl0wmq0sh";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -30223,6 +30471,8 @@ self: {
        pname = "amazonka-codeguru-reviewer";
        version = "2.0";
        sha256 = "1k1bcv2gxdzc6qp2r5n6q5wfr628i3xq5nkdck1i01rd5sswjbrw";
+       revision = "1";
+       editedCabalFile = "0g6m2mh59db6cpmxrb0r3rklh631d3as4b8754q6r0kglvk6hrdi";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -30241,6 +30491,8 @@ self: {
        pname = "amazonka-codeguruprofiler";
        version = "2.0";
        sha256 = "07jjql6lfv02wwx7ydqqwrlsicg4gprarn5kwjsk76464p6p893i";
+       revision = "1";
+       editedCabalFile = "1f4h8ypv3vkp8qbnnvd0x088zb99c9vy376yd0vaqp4bc2wdppz4";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -30259,6 +30511,8 @@ self: {
        pname = "amazonka-codepipeline";
        version = "2.0";
        sha256 = "1pbd4f6w7c6nlgxcq1xacg94jpx3m8srr1l9jzsgam4s6wf3ixp1";
+       revision = "1";
+       editedCabalFile = "025l007idjv5aa84r5cf5lzdc4bly9r1j47bgfy1wry1h6sfw40h";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -30277,6 +30531,8 @@ self: {
        pname = "amazonka-codestar";
        version = "2.0";
        sha256 = "1spjb2h4da1fypx9wj82ha5277zk1qqnnphrsd56ak7mlar1shpq";
+       revision = "1";
+       editedCabalFile = "07h5gl4pa7kn7szfvgnhdp38bnyv64sicq6v3arbxd52wdyzsf68";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -30295,6 +30551,8 @@ self: {
        pname = "amazonka-codestar-connections";
        version = "2.0";
        sha256 = "19vddgc61mm0ypvzfkwgn7m37dnkha30pa3ry6sphw9aynv9agla";
+       revision = "1";
+       editedCabalFile = "1ky5877a1sqx9fsx1jy1pf66g6z0n33pj8akbdqvyvslkix1gczf";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -30313,6 +30571,8 @@ self: {
        pname = "amazonka-codestar-notifications";
        version = "2.0";
        sha256 = "1djib5ksv63adng9s6n04ldvxi0i2kmyl6zkz4im3703xcjii7l9";
+       revision = "1";
+       editedCabalFile = "1hkbkg5dizjq6vrvj09k29fvqzndhgw3iafjfx4z52mk91imwmbv";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -30331,6 +30591,8 @@ self: {
        pname = "amazonka-cognito-identity";
        version = "2.0";
        sha256 = "1wwbna3iarjqsglqwpbrjg6x5ib4rsbh2lx5fwdh414r25710yls";
+       revision = "1";
+       editedCabalFile = "07s907kxawgw7k2mgdw8fqk06xsxnihxj3qcqsznrs6rpf60fjjr";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -30349,6 +30611,8 @@ self: {
        pname = "amazonka-cognito-idp";
        version = "2.0";
        sha256 = "0p99w1fpvm68rldw28bjq7q9ah1ad50dz50vic4552nhpqvw07kb";
+       revision = "1";
+       editedCabalFile = "1cpjchs89b7xnqq6pjp9r9rsr66kpy6vzg60n6sh2lb3b8b1a6z1";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -30367,6 +30631,8 @@ self: {
        pname = "amazonka-cognito-sync";
        version = "2.0";
        sha256 = "15hslp7zp91392asl9p5bif2dspbjjhwmaa47i1b0kmarl2haq1z";
+       revision = "1";
+       editedCabalFile = "1i7xvpdcppskqn3azqxv1gc1870gy94zys59zncm4sxnv5gda6pp";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -30385,6 +30651,8 @@ self: {
        pname = "amazonka-comprehend";
        version = "2.0";
        sha256 = "1ll364vazv1rjp37wng6g9fqw40rirhj040p4yky31py0gj8k3fm";
+       revision = "1";
+       editedCabalFile = "1mjm56ilzs7acbvls78wy5431vwlrvxqr524b6whmjv1r4mryx9x";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -30403,6 +30671,8 @@ self: {
        pname = "amazonka-comprehendmedical";
        version = "2.0";
        sha256 = "0kk10v1dxnkqf8xz2rik0x7mm08ivwy9ccbahwmfhzwk5427vqf5";
+       revision = "1";
+       editedCabalFile = "0pam4ag4921s1h58df83z537f5pcf7ky9gqscxzg1xk0lyqci6fx";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -30421,6 +30691,8 @@ self: {
        pname = "amazonka-compute-optimizer";
        version = "2.0";
        sha256 = "02501c0xnyc7vdf97156a0fxmysy7r7vlgj6azgr1jd98j110i8v";
+       revision = "1";
+       editedCabalFile = "0zsxcg97fg7v6k7981hqdy1pd3bl4j0k7sf6k4i93lddc13i32md";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -30439,6 +30711,8 @@ self: {
        pname = "amazonka-config";
        version = "2.0";
        sha256 = "1ccxay3qpmll5fy03qcwwbx2b23g609w4zxsqvdny86pb97p6ij9";
+       revision = "1";
+       editedCabalFile = "1fgal8v3z15k8ppw3a1xx0gb32z3lm16r68bdgdda9wp4cgd7izj";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -30457,6 +30731,8 @@ self: {
        pname = "amazonka-connect";
        version = "2.0";
        sha256 = "03jj3qjsj7qx3gm8ryh01lxa3glg1rqz289xmnbl9qv8gb0f8bfs";
+       revision = "1";
+       editedCabalFile = "151cldg839z9wnsss087h6acncnrq9iq5545pbfwqh11ik73xz0d";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -30475,6 +30751,8 @@ self: {
        pname = "amazonka-connect-contact-lens";
        version = "2.0";
        sha256 = "1m9dkadljs33any7f3rlwxs49h5qgd5l5xxhxfh5srcwsf5lzd4j";
+       revision = "1";
+       editedCabalFile = "13mw5gqb10ylkxkfr3gg8c8dam2whfsrr8b78i7spmdcan7db0ly";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -30493,6 +30771,8 @@ self: {
        pname = "amazonka-connectcampaigns";
        version = "2.0";
        sha256 = "00x539dzx6kb50ifhjcwc8490di72bcbqwwp8zm7sr74pjx1jq8s";
+       revision = "1";
+       editedCabalFile = "041c4icsy0yxsahp8lnshvwk1dzl5wxi7rngfwxn4qmgldkwf763";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -30511,6 +30791,8 @@ self: {
        pname = "amazonka-connectcases";
        version = "2.0";
        sha256 = "19sfbqg46s02wnbpw9lw46vbw8m8pdmsvc125akxli8vjpg8rkir";
+       revision = "1";
+       editedCabalFile = "134c1ispivn3r12jznk4ah4lgv7p5mggz5wcwkm3fp3z8d4cpm1k";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -30529,6 +30811,8 @@ self: {
        pname = "amazonka-connectparticipant";
        version = "2.0";
        sha256 = "1hy1wlni7czid4qm48jdqyfy2gfb1x973khc4bj0g8nx99qspkms";
+       revision = "1";
+       editedCabalFile = "036d0n8srd9wfgr9jzngcz1girbckjddb27anzh0kn8k6794w1l4";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -30570,6 +30854,8 @@ self: {
        pname = "amazonka-controltower";
        version = "2.0";
        sha256 = "1n8hh292q7l6j5ljbbnf339lvp0gf2h6fh9mxymglhsagc0gzpj9";
+       revision = "1";
+       editedCabalFile = "0kspbyfrw29gzqglgkzkrqvvsvy2ih3aznhgggfr4x8xd91631s0";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -30592,8 +30878,8 @@ self: {
        pname = "amazonka-core";
        version = "2.0";
        sha256 = "1lsd9nzyvwwp7j4kii6fp7n98x1qa6999ggwwia5sa06fgqz39bm";
-       revision = "1";
-       editedCabalFile = "1w8il9lg9nm71zjh050apiwvwjflmas13mp4n66g8xwpbc5wm0gp";
+       revision = "3";
+       editedCabalFile = "05sfrpwyvb6wkazaw044j2acf3pfq1aahi4mnrpww18xg6i0f1dn";
        libraryHaskellDepends = [
          aeson attoparsec base bytestring case-insensitive conduit
          conduit-extra containers crypton deepseq hashable http-client
@@ -30619,6 +30905,8 @@ self: {
        pname = "amazonka-cost-explorer";
        version = "2.0";
        sha256 = "0xl3xs502qh74h10m32zbcjp4n1dadfwhh6gqmsjns6zy92xr0v1";
+       revision = "1";
+       editedCabalFile = "19yc5jxd3xxhgvzdxdjp43rpvjafi1savwxa4ikgypnq18pk59i7";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -30637,6 +30925,8 @@ self: {
        pname = "amazonka-cur";
        version = "2.0";
        sha256 = "0ki316fhwm9fsk8pfiwm7z9wkjdknjlf6jz07hg9zg3x5jiix28p";
+       revision = "1";
+       editedCabalFile = "18zi6mzzy0shpnki5c9fbj44x5vpv837qg44jghif0ipy2lk4f22";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -30655,6 +30945,8 @@ self: {
        pname = "amazonka-customer-profiles";
        version = "2.0";
        sha256 = "1whk66pzqdrfaw8clz6xfjayjzmabmbh42w0gvqy5gsl15f3sz7d";
+       revision = "1";
+       editedCabalFile = "16ppnijd50k9kxj3brwarir0lrq21d7gg8i8kqnxzwncswkjczga";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -30673,6 +30965,8 @@ self: {
        pname = "amazonka-databrew";
        version = "2.0";
        sha256 = "18ciw2y284jfl4z9mvp6bk91x92zplrwkic6i634nvvadw25m0vz";
+       revision = "1";
+       editedCabalFile = "0s5mphd3rf7hibkaa1w70ms28a35m38pywiv2vzgxgppx2xkq84m";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -30691,6 +30985,8 @@ self: {
        pname = "amazonka-dataexchange";
        version = "2.0";
        sha256 = "1s4nlfrvv6fr6wkkawzqmy6cc25ma8hls32pnqib9ipf1z77h8mj";
+       revision = "1";
+       editedCabalFile = "0kaq32ripkn896dh9yv0hrl7i9nivqlzsxknxvvdfjpd513nr87d";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -30709,6 +31005,8 @@ self: {
        pname = "amazonka-datapipeline";
        version = "2.0";
        sha256 = "12qz9yxsxfjwkz6dm77c7li5zb20407swwmvpqhmzykmi3wjcjai";
+       revision = "1";
+       editedCabalFile = "1c0ijavg9a2w1mvdnrfnaqa1fkxx5snrjhs9a8rx1ln1gcqfl5s0";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -30727,6 +31025,8 @@ self: {
        pname = "amazonka-datasync";
        version = "2.0";
        sha256 = "05r8zbajk6vdvh96p3v0ml53gg5jhfrck3ph9sh81wfc3dhb8bpl";
+       revision = "1";
+       editedCabalFile = "1iknjr929i9hxp3680cpy7g124x9jqkis2zq1b1v35wdbwfpw09c";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -30745,6 +31045,8 @@ self: {
        pname = "amazonka-detective";
        version = "2.0";
        sha256 = "1j7zipg23v09jhfi1x07ppfahx5aqmrn8gbcyy53nf49i49w7c1i";
+       revision = "1";
+       editedCabalFile = "0qrzfm9zmc952blviz629s3ffi3smkm10savh4nlh0l57p1mdwd3";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -30763,6 +31065,8 @@ self: {
        pname = "amazonka-devicefarm";
        version = "2.0";
        sha256 = "1hfpvygp1mbazax2bp7bg6wan1scp188fjymby0lk7v7px4inmpg";
+       revision = "1";
+       editedCabalFile = "1kgd199npf0li36925m9lc48mb1801czxg9ldanqcj1k3y4irz3r";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -30781,6 +31085,8 @@ self: {
        pname = "amazonka-devops-guru";
        version = "2.0";
        sha256 = "005qvd82mg6waz64p3q8scyy07yn7c1ary8b3wrd5whp9km8jfqf";
+       revision = "1";
+       editedCabalFile = "102h2hacbpfa3ffzlacq6pi3l3k2xynhi7nw1x49yw89ma1b21fv";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -30799,6 +31105,8 @@ self: {
        pname = "amazonka-directconnect";
        version = "2.0";
        sha256 = "00k10jwba9by8insnn8frrgki3s9frw104lw8k0vqaapnk1jprql";
+       revision = "1";
+       editedCabalFile = "0a8ks46b6chz6lwxy16m5sidv21x4wwyykvw023wnhc4jqwf2r0r";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -30817,6 +31125,8 @@ self: {
        pname = "amazonka-discovery";
        version = "2.0";
        sha256 = "19jqwyyqyw7qv08m01y4ag48l7ixnirq31jbyz5r13jhsd5ala0b";
+       revision = "1";
+       editedCabalFile = "0afz4gzy62wcpbd8h2wc2lyhn206nmjzh0zq1ilmkj383jkdlsbd";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -30835,6 +31145,8 @@ self: {
        pname = "amazonka-dlm";
        version = "2.0";
        sha256 = "0kn6n1l94f9i74h4b9mjiz9i1rk3j62gfzxdr88qsdc73ax7pbpp";
+       revision = "1";
+       editedCabalFile = "05b9iid9xahj7vwkw92jb3v001jgamd8clb2vz5vfp4ff0g4cmf5";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -30853,6 +31165,8 @@ self: {
        pname = "amazonka-dms";
        version = "2.0";
        sha256 = "09kww8bspyi0ajvzsxn6wkfgip44fbzlkpbp73zfwf6qyb8hqmw7";
+       revision = "1";
+       editedCabalFile = "1hhqq7a1ycpzhzki7fj08kqddzlp5bfq1yba69pz8l6qslm84lfn";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -30871,6 +31185,8 @@ self: {
        pname = "amazonka-docdb";
        version = "2.0";
        sha256 = "13jwf2hh6azv8kqgdygvdns6g1h0048ymlq046yxg23hd3nxnp9q";
+       revision = "1";
+       editedCabalFile = "1z84xk8qcr9qjmw6sqs9ay18avh49ha0z92nqr2xncz77lmi0qqn";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -30889,6 +31205,8 @@ self: {
        pname = "amazonka-docdb-elastic";
        version = "2.0";
        sha256 = "009h8yw2p9cs8chflbfiqrcy8rhmc9385jyxig3lhx7i9dxgkqgy";
+       revision = "1";
+       editedCabalFile = "024p1s9wmc2lsk4langrhcy3f3xjz0cxkzjvb63vy6lvfjsmar74";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -30907,6 +31225,8 @@ self: {
        pname = "amazonka-drs";
        version = "2.0";
        sha256 = "0f3fh71irj9ka5znmjn4z2pgnqqj8f8qzd1bma43cwvp8b6ay7ai";
+       revision = "1";
+       editedCabalFile = "1pyblnlbddn3kx51pmqfrnzhd9695c1bd12fx6js668giq5gcilg";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -30925,6 +31245,8 @@ self: {
        pname = "amazonka-ds";
        version = "2.0";
        sha256 = "1xz7iah24729fgcqn5zm7r66kgmgaash7irkch78brac032n77d9";
+       revision = "1";
+       editedCabalFile = "04bv6hxm3gbxlbw76wdvvp1lmyzhq88agv02gmxpvsggsm2spmik";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -30943,6 +31265,8 @@ self: {
        pname = "amazonka-dynamodb";
        version = "2.0";
        sha256 = "1clxhxv3dmk8amhqp0iwglr5xw90krkr4gyqssl7wzapsdq5ka2p";
+       revision = "1";
+       editedCabalFile = "0djh1vwi72nxj9qrs4lv9l5jnifydbgmna3g4ldwwq9bvbq9sl7h";
        libraryHaskellDepends = [
          aeson amazonka-core base containers hashable unordered-containers
          vector
@@ -30964,6 +31288,8 @@ self: {
        pname = "amazonka-dynamodb-dax";
        version = "2.0";
        sha256 = "11davhsjds7waqgnh0rp7jq7jrsb2817144ca0b9s93ac06c09wj";
+       revision = "1";
+       editedCabalFile = "0l2rwfjajr8z0cv4a9krvmg30ph7ryva2sy6kpwnpwnx5ab63q14";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -30982,6 +31308,8 @@ self: {
        pname = "amazonka-dynamodb-streams";
        version = "2.0";
        sha256 = "0rmr4xd7p08wmkggd1mxrhiqz3nkr46xdj8zhi4kk8nzppjmzv2l";
+       revision = "1";
+       editedCabalFile = "1yf6si2sbv3fxyl6f8czj7hfs2kbn4zkqj7hykg8v1z98rwhwd1d";
        libraryHaskellDepends = [
          aeson amazonka-core base containers hashable unordered-containers
          vector
@@ -31003,6 +31331,8 @@ self: {
        pname = "amazonka-ebs";
        version = "2.0";
        sha256 = "0dkfyldlr0nr0h8mpiqbv3gs6p9q94sa7gkwdc5hzcwrbhkmqs2h";
+       revision = "1";
+       editedCabalFile = "1vxhcn4kgab7l068b6jshdr0k24dvaslgl0iyji8xpimhp4qjswr";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -31021,6 +31351,8 @@ self: {
        pname = "amazonka-ec2";
        version = "2.0";
        sha256 = "1ki3x2j6gz4szsgi5k22cidn7qhhbyx16s6gvxihaq42776q29wg";
+       revision = "1";
+       editedCabalFile = "1f998x6a7081dd1rslg0i3pw56bg3xh75zv16r93qnkpgag1q7qz";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -31039,6 +31371,8 @@ self: {
        pname = "amazonka-ec2-instance-connect";
        version = "2.0";
        sha256 = "08pzb7f5450ji7l57b8c7arl7fq91h1an78h9gsvhayfmn1hd04n";
+       revision = "1";
+       editedCabalFile = "1p7y1hp6290qwwqnrf8j3b3h273xdadd9nl4gd0v8l7g18hgdcf8";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -31057,6 +31391,8 @@ self: {
        pname = "amazonka-ecr";
        version = "2.0";
        sha256 = "1sy8a0dspw3d4skkqba05ay0g2s0iywar1fdddl9cv7zfd2mlp03";
+       revision = "1";
+       editedCabalFile = "0rjw161ljyawjfgrknswbifbhvnnxmjz3mi4w5dhgl0b9fl8bhns";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -31075,6 +31411,8 @@ self: {
        pname = "amazonka-ecr-public";
        version = "2.0";
        sha256 = "005gj4m5fi42ckqln763pxdw54kjcci9167hw6k7asf2mgzg5kbn";
+       revision = "1";
+       editedCabalFile = "11lbyfpabbnyxj0ld2czcwpnw1pyx572snxy5jch76lgamq6jx8q";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -31093,6 +31431,8 @@ self: {
        pname = "amazonka-ecs";
        version = "2.0";
        sha256 = "0vwnbrknr2f7fb03frdpr9hq82rkdyn4amfbyic2hfa630nq0q49";
+       revision = "1";
+       editedCabalFile = "13drg3avlpaxj999f12819lk85dngcbv76vd1mz4r2sbvz3yhib1";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -31111,6 +31451,8 @@ self: {
        pname = "amazonka-efs";
        version = "2.0";
        sha256 = "1f9jv7szg0i3w5v86bjkwfhxj29058fx6493aa1xndd1iaa5wk19";
+       revision = "1";
+       editedCabalFile = "1m4c4virai3fi3a0f414fnv1hjcr4230g7bnhwcdmwzf6gyy8n2s";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -31129,6 +31471,8 @@ self: {
        pname = "amazonka-eks";
        version = "2.0";
        sha256 = "0yq0gbg4b6xxgziy9ixwfn4gmvw8yllriadyl3bgyadxigxwbx2r";
+       revision = "1";
+       editedCabalFile = "1cws813npx7rwrx91r43yxni737pzbziy40yn3rs5airdlag3wkc";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -31147,6 +31491,8 @@ self: {
        pname = "amazonka-elastic-inference";
        version = "2.0";
        sha256 = "1sw9fjqbyzkbp6sh9p2qgl7q3id1nni16sb009bzs2w8q58cbzq8";
+       revision = "1";
+       editedCabalFile = "0k8mbhj3fv8f43lnyc8z8sa5kyrah2bvfrdpi862zvr4jfcx7ipd";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -31165,6 +31511,8 @@ self: {
        pname = "amazonka-elasticache";
        version = "2.0";
        sha256 = "1ksrcpnv5i718ibmz4qhghkm8a9y96jlmdfgrc97zkdpw0pcy4wx";
+       revision = "1";
+       editedCabalFile = "0cfam8zb19af4yf249fn61qyspz9r34kk2c1avwa7qmvxswhj09k";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -31183,6 +31531,8 @@ self: {
        pname = "amazonka-elasticbeanstalk";
        version = "2.0";
        sha256 = "1w4lqgsrsnrnjwla7jwby1lnh4fan0rklgzvpp653ayavmmd9hr2";
+       revision = "1";
+       editedCabalFile = "0fs4n5zg1kaaapnf9c2n8kw9h1crcq2dfxkx2zmyghglmwdkm0y0";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -31201,6 +31551,8 @@ self: {
        pname = "amazonka-elasticsearch";
        version = "2.0";
        sha256 = "01wpyp2hz83njjk8kk4bvvpwb6a381gdqi48637bpzsslxim3zhr";
+       revision = "1";
+       editedCabalFile = "04zxvn74siza88x84rkxz7ig67yjwalkw2v3wgx64vj6mdcly1lq";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -31219,6 +31571,8 @@ self: {
        pname = "amazonka-elastictranscoder";
        version = "2.0";
        sha256 = "1xzx1w6mn1m33mnb7r4a4mspllvfhm1dnv46hvs07zxlp2ggdm43";
+       revision = "1";
+       editedCabalFile = "1r0hrkwc6hwipj9c7q1jjra2vd55w6s4zri1hnsc5ym4qafqd200";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -31237,6 +31591,8 @@ self: {
        pname = "amazonka-elb";
        version = "2.0";
        sha256 = "1vazcpz651x2s7zwfkpyiwh84aa9rfrs7aa3h1s7jnvf59flqvzw";
+       revision = "1";
+       editedCabalFile = "0hp5m27782a23i8bvnq0099c23084rawvpzbbf0y34j7fm8dm67f";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -31255,6 +31611,8 @@ self: {
        pname = "amazonka-elbv2";
        version = "2.0";
        sha256 = "1h5822vhy4wx5ddrqwv73vi9mfx0jljyqizilpr313wv5f9f0mq0";
+       revision = "1";
+       editedCabalFile = "0n9p0gmfksg3wjq1ng736ya0wwix0dp2ji374l776ynmf3zxsyna";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -31273,6 +31631,8 @@ self: {
        pname = "amazonka-emr";
        version = "2.0";
        sha256 = "1mjljrxvixgpb8xl3i2knik1zr871n221gxh3xj3pxly8zi9sdck";
+       revision = "1";
+       editedCabalFile = "1jfimspy4hljz7mf97h5rnnvf892cngdxpzyh0kl26ngib6m9qs3";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -31291,6 +31651,8 @@ self: {
        pname = "amazonka-emr-containers";
        version = "2.0";
        sha256 = "0mlddzrrp5qmgvpi45brdf5vhp0099m5ka6s7ggp1bwnizmi2is2";
+       revision = "1";
+       editedCabalFile = "0ppb0nw97fi240pnk31f9arp3zx58bmazahgl0f9im7xi0gk13qx";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -31309,6 +31671,8 @@ self: {
        pname = "amazonka-emr-serverless";
        version = "2.0";
        sha256 = "1ay9hyi4x4d5x6183njbr0b8plnmp2apgnfnksfmmjz5vinirxx5";
+       revision = "1";
+       editedCabalFile = "1n5jxdckqwkv2i7114f0a0c5lnjvc6rbrkbgz3l18sprpimrk19l";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -31327,6 +31691,8 @@ self: {
        pname = "amazonka-evidently";
        version = "2.0";
        sha256 = "05s3d16f00fhrnsvgvcb05y1w63fwimg5d9sl34qsx92n6glzd6w";
+       revision = "1";
+       editedCabalFile = "174cm1ls555wcsdhaz55dy7xp9aggd0cr62bc92a0gd5pv8k579b";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -31345,6 +31711,8 @@ self: {
        pname = "amazonka-finspace";
        version = "2.0";
        sha256 = "16wkklbwjsz344hrva4b8iilg3qmbpfrvag98jdvlv7i60r9s24h";
+       revision = "1";
+       editedCabalFile = "19ms2qfqvhxqjdi39rm4az5rcghqcs24gj1hdkx0y2h4qgd4fnrc";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -31363,6 +31731,8 @@ self: {
        pname = "amazonka-finspace-data";
        version = "2.0";
        sha256 = "0fv90rzpa0cxjk5kdx19z4xcnww330zqdzyzxmdkxi2gvbgwhkkq";
+       revision = "1";
+       editedCabalFile = "12594rv5mwgqihs9fqsasn0bck7rh8gcx44shyk1kmz7ix194r0l";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -31381,6 +31751,8 @@ self: {
        pname = "amazonka-fis";
        version = "2.0";
        sha256 = "1f4rf1k1ln6v9v949bd5rq7xcz68qy608d1r3lkkmaajkawxvagy";
+       revision = "1";
+       editedCabalFile = "0xg4326r48064sim5y66242wkc93klwly3pfnxnpjnl4sycgv1as";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -31399,6 +31771,8 @@ self: {
        pname = "amazonka-fms";
        version = "2.0";
        sha256 = "1flrwdvpclal957dxli05y2yvacrhl8a9j32w3ywkg2sach9cv47";
+       revision = "1";
+       editedCabalFile = "08sxsckfi9qlgcw60x766a3vdy0yi0zyz7mfpc021y469wxrzgzp";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -31417,6 +31791,8 @@ self: {
        pname = "amazonka-forecast";
        version = "2.0";
        sha256 = "02m9haxqrwyrmqr0bz6s8sn82aq3da1zhdcqqij79kp2r5q27kxc";
+       revision = "1";
+       editedCabalFile = "1fwp4kn0x192lwxiz9hhknp0bh1ad5gp16zhj7qcwmqqrm7xfflj";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -31435,6 +31811,8 @@ self: {
        pname = "amazonka-forecastquery";
        version = "2.0";
        sha256 = "0qf1pkmwypk1vdx23nvf6cya4xbs2wjd8i2qrl2brlg3cav1pm57";
+       revision = "1";
+       editedCabalFile = "05nl2wli2m5njbf1sk0yprv0cw4pm1r5021ch8yncjnrazg8bw8a";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -31453,6 +31831,8 @@ self: {
        pname = "amazonka-frauddetector";
        version = "2.0";
        sha256 = "0m7sb4az8c9yfyibfanbj1w5j7nn670hdqqqvs9gbcmckqp91z1s";
+       revision = "1";
+       editedCabalFile = "0l6dzzljg1lzanlmcsanmgn6giaj1ziy07alpjsw0ymhqqazaf2b";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -31471,6 +31851,8 @@ self: {
        pname = "amazonka-fsx";
        version = "2.0";
        sha256 = "1yxadzl3j7h6jfiz6dahgf3zl79na9rmi2v35kynmy0hpdfsjd75";
+       revision = "1";
+       editedCabalFile = "0xs35qyfss75fkblbjffi4312bsasapz3gcmbqglmz00511xii5l";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -31489,6 +31871,8 @@ self: {
        pname = "amazonka-gamelift";
        version = "2.0";
        sha256 = "0llz8kz31hgmyqxniqlbz9avbdpg77fn0fnlnldvm86xmg95752w";
+       revision = "1";
+       editedCabalFile = "0b4l26vmaf1fji0k0a7vm12g691kg3awzsvm0x0bgcgym280pl9k";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -31507,6 +31891,8 @@ self: {
        pname = "amazonka-gamesparks";
        version = "2.0";
        sha256 = "0hpg224x6nlpcpkvsg3r8vm0ga2p8rwdl1ajyvf9pa2i7fjvh5ya";
+       revision = "1";
+       editedCabalFile = "1wmrnmdrl142y96rbx2yijag00k4h6sazi2vi67jbrjx3y7958gv";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -31525,6 +31911,8 @@ self: {
        pname = "amazonka-glacier";
        version = "2.0";
        sha256 = "0wnvnw71rp6ls3flq50dkskb2yp4hkzv4jrssv93zfl41479h4p6";
+       revision = "1";
+       editedCabalFile = "1rw92bbvi1a0w7mwd6k38fpz9fvzqh1bsgnylc2sfqgn6xxr2qxy";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -31543,6 +31931,8 @@ self: {
        pname = "amazonka-globalaccelerator";
        version = "2.0";
        sha256 = "01hamd5m9sdv6g8s532mj1w6jymaz88virbk8zxj4q55v5g18g8h";
+       revision = "1";
+       editedCabalFile = "0znnz4x4a0zp9n3d6k3by8ym35zba6z07vz83ii0ivbjdhxqy4m1";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -31561,6 +31951,8 @@ self: {
        pname = "amazonka-glue";
        version = "2.0";
        sha256 = "0cfdf4x3xi7n3ar273ih6hlc4grad8anzvhk0b9rf4ipxqwspp1p";
+       revision = "1";
+       editedCabalFile = "0yl6hnxgki08xd98gdf402snfb9ci0im6dy7qkxfkg7k2ljn48pr";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -31579,6 +31971,8 @@ self: {
        pname = "amazonka-grafana";
        version = "2.0";
        sha256 = "0n1iibjfczapwq063615yx5pkddinml53cw45fgmdvq3frsvrqn8";
+       revision = "1";
+       editedCabalFile = "0dzbb7h48vr66xwnp50n6lwvk55pwnkfjl2z8rcqn0frzdc6kr5n";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -31597,6 +31991,8 @@ self: {
        pname = "amazonka-greengrass";
        version = "2.0";
        sha256 = "0qf67zygrq6vv8inmxx295hh6r6dq3i8h468qrrgf8fibgpmj6qn";
+       revision = "1";
+       editedCabalFile = "0lgc9lflq4h7cksaf8k64b8dc06qs1804rhcj58saisg05vp0mij";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -31615,6 +32011,8 @@ self: {
        pname = "amazonka-greengrassv2";
        version = "2.0";
        sha256 = "1hjmbs7aj6cckya6nqyx3v7hjw2fgdr2k4qhy5drsvdkp5fjm9fx";
+       revision = "1";
+       editedCabalFile = "0ahbghj2kpfigprvj9njnb3n84ywkygx7mrymsmpq2jisn07njjx";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -31633,6 +32031,8 @@ self: {
        pname = "amazonka-groundstation";
        version = "2.0";
        sha256 = "1cbwgk4lr5m6i39ppa56dkgfwfi04dq5ryf03f9a27n3p603lv30";
+       revision = "1";
+       editedCabalFile = "1ynhijhf5sx8ady7wj9ba36a3nadn0mvghwj05s9hk4hw2fcr2is";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -31651,6 +32051,8 @@ self: {
        pname = "amazonka-guardduty";
        version = "2.0";
        sha256 = "07pmy62xml7sry2m69rp8xslyppb78mqdlddbggzqbi7crc1icdw";
+       revision = "1";
+       editedCabalFile = "162jgif608f9isywxkrci29w58ylqybs50ikcq2i7pc9v7ll8sgg";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -31669,6 +32071,8 @@ self: {
        pname = "amazonka-health";
        version = "2.0";
        sha256 = "0191klmixd3r4hzqkpajp9zwzalx0z480qqn96v9snhw7hp4kbsr";
+       revision = "1";
+       editedCabalFile = "0ccnszzhpy89wcqynidrr74cw88ir4ijc99fdxfkwxy1yjy4b5lm";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -31687,6 +32091,8 @@ self: {
        pname = "amazonka-healthlake";
        version = "2.0";
        sha256 = "1yhixqmfz1q0m3ny1vr3qxzxz9zwgfw7xpf66r2aspb2nwj9c33b";
+       revision = "1";
+       editedCabalFile = "0pyxpzsrhwsy6sn0cr04hm0bnbmsmpgq83xszvgp6hxns9arnjyc";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -31705,6 +32111,8 @@ self: {
        pname = "amazonka-honeycode";
        version = "2.0";
        sha256 = "0fg1x2s3xyf5rp69vl48cdkyaq4k00878zqbkr9zr70laqq78ri7";
+       revision = "1";
+       editedCabalFile = "1dy7q0lh1x3i228m25b7i7j24n0bacjpz1zggibcak2674j29klp";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -31723,6 +32131,8 @@ self: {
        pname = "amazonka-iam";
        version = "2.0";
        sha256 = "0pflcnb7ar2d7z9zvrd9sid08n4d99h40k69lirkd408kzw66dwf";
+       revision = "1";
+       editedCabalFile = "1csj673ry5pzhrd7ja9jy34kqklif2x46dk0mdij83j4h8bapqid";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -31764,6 +32174,8 @@ self: {
        pname = "amazonka-identitystore";
        version = "2.0";
        sha256 = "02l3nk7xz39iawdq9kycsf3szl3jq7wfh8f003mgxd2xz0a3d1ji";
+       revision = "1";
+       editedCabalFile = "1mw1j6zyfpnky1v7wkpq80wzhdq2y2jh2d73dmkmjf6hkisv3ry7";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -31782,6 +32194,8 @@ self: {
        pname = "amazonka-imagebuilder";
        version = "2.0";
        sha256 = "1xxcgm41830bf82zvswqmhv6snkx74vb7n4ic9zmivxc1qh0sj8w";
+       revision = "1";
+       editedCabalFile = "1j0g2mc2z2yqfy2y3r7282g6ik17m77fi51r4vg4ii0bcqnzwzpi";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -31800,6 +32214,8 @@ self: {
        pname = "amazonka-importexport";
        version = "2.0";
        sha256 = "1xwvy6sm1y579yx83gaif2khn6xfsy8w4vkp9sxb9mh2pgvc22sp";
+       revision = "1";
+       editedCabalFile = "046r7b5sfb5yw8vdd3xqm7cydv751qpmzwv1rq11blh6xsm71x54";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -31818,6 +32234,8 @@ self: {
        pname = "amazonka-inspector";
        version = "2.0";
        sha256 = "02fbgk11c1p7k91b1sf61yig7rpw84mpnhjjg9sqiws84hk8v2vw";
+       revision = "1";
+       editedCabalFile = "1hklvgvpmhc5qbba0rj6qim47fkd1rqi3yw4aql1zld12n949w41";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -31836,6 +32254,8 @@ self: {
        pname = "amazonka-inspector2";
        version = "2.0";
        sha256 = "0ngvgr2gd6s2smch1nmd9gp6dw1fw54xwn8yhh2fg1jk5388d3a9";
+       revision = "1";
+       editedCabalFile = "0fdw1h9vwarkf52xny98x1nw978ywvyf8nrfmb8xbschcsav4kcn";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -31854,6 +32274,8 @@ self: {
        pname = "amazonka-iot";
        version = "2.0";
        sha256 = "0a4h32drks4bpg5n2syp2lm58j03vxr529q0c8gvky8lhv0w34sr";
+       revision = "1";
+       editedCabalFile = "1hqcz3pwaqvb1xgzhhjxvhh04c0bq9xp0v842vn9fwhki6n2kj11";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -31872,6 +32294,8 @@ self: {
        pname = "amazonka-iot-analytics";
        version = "2.0";
        sha256 = "0r1nrm7k5jq2f6h113mwsbx1xphhzzvm2aqqvb876xyw7sylx02r";
+       revision = "1";
+       editedCabalFile = "1r7kxnq0knw5lsq6m1x3imrwngqaxg9cqwzg25jlj470ygxx319q";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -31890,6 +32314,8 @@ self: {
        pname = "amazonka-iot-dataplane";
        version = "2.0";
        sha256 = "0hvlmbdnn27y01cb6410vd80hw9aqf8aabbz2y2ajbfgj7bbqw9w";
+       revision = "1";
+       editedCabalFile = "1vkraa5r18p6lznc7d0867b1p7rpw8699si5war80xg5g540rm7p";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -31908,6 +32334,8 @@ self: {
        pname = "amazonka-iot-jobs-dataplane";
        version = "2.0";
        sha256 = "064vhx1dyvh2m0is2vnibg5baacr70sfn2xjgyhscjbzya7max3s";
+       revision = "1";
+       editedCabalFile = "03r3p70hlm9ajan393lc18si5hl6y1kl5w7inm7k9sa4956ja2ds";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -31926,6 +32354,8 @@ self: {
        pname = "amazonka-iot-roborunner";
        version = "2.0";
        sha256 = "1yr0j6gzivvlmh10g6nsdm2jdgndw84nxn910ggcp6mf067f82if";
+       revision = "1";
+       editedCabalFile = "16cgbckks5vk142zz7cs57qsy9jfdx2wi4z091y33jqb91d8yc6k";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -31944,6 +32374,8 @@ self: {
        pname = "amazonka-iot1click-devices";
        version = "2.0";
        sha256 = "14lxx0lbl3fqih8x7h46z7vvh0fp729d3wnq1fjd5b8s1ysjg103";
+       revision = "1";
+       editedCabalFile = "0gi4v9qm68in9g1jw8585m06jjjp7kk4dpp4n6sycfshdyj8z2f1";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -31962,6 +32394,8 @@ self: {
        pname = "amazonka-iot1click-projects";
        version = "2.0";
        sha256 = "15bff8l2g5zri03k790dnil9pkg33n98hmq8skk2xmfdzwrcnm73";
+       revision = "1";
+       editedCabalFile = "06dhqhrlxji9kcsfz2jn5mbb4x5hk9p9cxbqqwxxmi0787dj7dka";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -31980,6 +32414,8 @@ self: {
        pname = "amazonka-iotdeviceadvisor";
        version = "2.0";
        sha256 = "0xlybvyyfp6irfv3aqh21irzj9r6kvq1656a36aky7m0gknrfpp5";
+       revision = "1";
+       editedCabalFile = "0f0n470a7fhxggvc1vkiv942xnyh1wp6ms1njlyn9vb1mnxw1y52";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -31998,6 +32434,8 @@ self: {
        pname = "amazonka-iotevents";
        version = "2.0";
        sha256 = "0r822sfb0vh8bi7g860h82x9cd0p3myb9gq9s59sm4r6727kzirx";
+       revision = "1";
+       editedCabalFile = "00i4w5xlpich64advwrz233k8w8mh6vyag3v0z8mc8qpk0pihxch";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -32016,6 +32454,8 @@ self: {
        pname = "amazonka-iotevents-data";
        version = "2.0";
        sha256 = "04cf0853sqmgdw4362j79z80xpijgbpqgn7fp8sjbgmdkiyfkrng";
+       revision = "1";
+       editedCabalFile = "19apqfjzyn69nk5n349sgqral75wgjrvdrbcn8m9wbpcndkwxr6d";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -32034,6 +32474,8 @@ self: {
        pname = "amazonka-iotfleethub";
        version = "2.0";
        sha256 = "0ra5f8acfwc8dgijb9g790qh94g0dywr85yz4pv182gsw6z2gk5f";
+       revision = "1";
+       editedCabalFile = "1ajbfwqpdkn37ir8ljg28s6zj8k7c35naj0kw03bpi0dxcv3cpaq";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -32052,6 +32494,8 @@ self: {
        pname = "amazonka-iotfleetwise";
        version = "2.0";
        sha256 = "1j1k0zrq50w68v1wgi7viwqcxah1cm16sglypfw3c0izqjcd0k5f";
+       revision = "1";
+       editedCabalFile = "02k9784ikk48gg5f1mmjbh3d7wd1rfydd6xpm5a8rk9sd89949d7";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -32070,6 +32514,8 @@ self: {
        pname = "amazonka-iotsecuretunneling";
        version = "2.0";
        sha256 = "0hir6wlidp4jl10hsli1b1mmgkzya3yn9bs31slahg2prcd7rigm";
+       revision = "1";
+       editedCabalFile = "1ljwp6k0jh98mf2nvzgwal9jxid3mgq23nbrk9yzhgj2iqq2qyg9";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -32088,6 +32534,8 @@ self: {
        pname = "amazonka-iotsitewise";
        version = "2.0";
        sha256 = "1izjz5ayh66g1m0i5g0mnwqmk5k131vi417z0h44g6dm1d770m1d";
+       revision = "1";
+       editedCabalFile = "0dcwa33w7wfhmb8yk2iqs7jaacndq6rl3g1129nlxbrrng5kd09l";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -32106,6 +32554,8 @@ self: {
        pname = "amazonka-iotthingsgraph";
        version = "2.0";
        sha256 = "0vz10z4jlfmqx4pjwj4qmbvr1cfbqq3435vzjphq1jrii9sqdb63";
+       revision = "1";
+       editedCabalFile = "04j0wvm4fiikr3a54ljy4iaxd359fzabc7l2r20g0pih0xrl5lph";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -32124,6 +32574,8 @@ self: {
        pname = "amazonka-iottwinmaker";
        version = "2.0";
        sha256 = "08hlmxry9z9z521nanjvl61q11d8zyqql6fbx71cpc1xvbjzrnpw";
+       revision = "1";
+       editedCabalFile = "0ly3d98q5i2zdn4rfbzd5nll5qv4jkfzy3912f5807rmbim4ssjg";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -32142,6 +32594,8 @@ self: {
        pname = "amazonka-iotwireless";
        version = "2.0";
        sha256 = "02dcjjpk223dmqmsk315dg8nplihbhvs4af6cbr5nmk9xwv5amsf";
+       revision = "1";
+       editedCabalFile = "1gx7y57x0a4vh5c7y9v1acajanm0jx0zrgc989c1x3lmcwqyx74s";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -32160,6 +32614,8 @@ self: {
        pname = "amazonka-ivs";
        version = "2.0";
        sha256 = "0j4m5v0mldjgcg2jm5hr6gm6hbxr0ss9gjdjp41hc0g5j52khws5";
+       revision = "1";
+       editedCabalFile = "1i71makjc91mw2qhlifa3bw0d3vw6ia1fswrwy4692zw4b6p04fx";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -32178,6 +32634,8 @@ self: {
        pname = "amazonka-ivschat";
        version = "2.0";
        sha256 = "1c5rlij31pk1ww150ii3fppnamsnvlw21vaalp78i1b9gnlhr0zi";
+       revision = "1";
+       editedCabalFile = "0y5kbqnnlsyrqiix4s3v9y1b8cq9jp7r9pn7faa7iz16r561556r";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -32196,6 +32654,8 @@ self: {
        pname = "amazonka-kafka";
        version = "2.0";
        sha256 = "0mv10gxxmcfwv57wcq1d75k77wlv0v56150wrfz8nvqqiyw04qcf";
+       revision = "1";
+       editedCabalFile = "04r95br3mkai4fbcmajx7syq3bck101ryxrqsa46rq7d8s1cnqv4";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -32214,6 +32674,8 @@ self: {
        pname = "amazonka-kafkaconnect";
        version = "2.0";
        sha256 = "0hk5qngygshjy5hsv1qqk7c4vq0zw1kp2g0drlsbai46sqv9s3l9";
+       revision = "1";
+       editedCabalFile = "0ykm79dvsfmb91jq5g3pmvakgi8s7ixpmcz4jrs87q3ckb57xdp2";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -32232,6 +32694,8 @@ self: {
        pname = "amazonka-kendra";
        version = "2.0";
        sha256 = "18znxnxdfdcg7mdyxvhxgdj8vbnkqs414f8qr11wzl3dydhhfmv3";
+       revision = "1";
+       editedCabalFile = "1z8nacn3x0dyvqzzj156l3sjmydkairkjjr1p3wrzw4s0svmab6g";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -32250,6 +32714,8 @@ self: {
        pname = "amazonka-keyspaces";
        version = "2.0";
        sha256 = "01d2bicrxnl5vb7imaayqdan821ji8n14gk630npjw704ycmxa0b";
+       revision = "1";
+       editedCabalFile = "0g2gawikiyiqrhimfwnipail6d6c2m01mrbvi563yr3nkysbizz4";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -32268,6 +32734,8 @@ self: {
        pname = "amazonka-kinesis";
        version = "2.0";
        sha256 = "1m1i5lfhaq167f1igh3hbzmg9i6f3ybd157qa1yivj6rfrd9b0j1";
+       revision = "1";
+       editedCabalFile = "17578yvb07h9c2grnzz2vs1k46fmbw02wziy7dy74agdkrl4a4q1";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -32286,6 +32754,8 @@ self: {
        pname = "amazonka-kinesis-analytics";
        version = "2.0";
        sha256 = "0nv896vparpc4dkgz2bdby29kpxpa3afgnsl1yq9kmlyj0jdckpn";
+       revision = "1";
+       editedCabalFile = "0l20pshvb82bfisi4z5jhbm1h1rrgfm7hxfjmw231r1dfn6rpjqs";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -32304,6 +32774,8 @@ self: {
        pname = "amazonka-kinesis-firehose";
        version = "2.0";
        sha256 = "1m5za58l7j380z6dz5md3i7lvzhspdcsw8ggwdnf0df4s4kjmzqz";
+       revision = "1";
+       editedCabalFile = "1bbx9hd20fa4h9fv81islj14fnkijrr6q713fr891b4iik433rxd";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -32322,6 +32794,8 @@ self: {
        pname = "amazonka-kinesis-video";
        version = "2.0";
        sha256 = "0cjx1vg1ccrchbq21zn7zi4wvpcfk5498fkic3m6ncvflvzff6jl";
+       revision = "1";
+       editedCabalFile = "1hzx0fb80jbjypnmd880wynxpixaqd55mi9jf0jd9kr957wk8j1z";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -32340,6 +32814,8 @@ self: {
        pname = "amazonka-kinesis-video-archived-media";
        version = "2.0";
        sha256 = "0fci6d1x8qr8gg0qj0wf1a66dvj4p7xhfjb16iy1cs17a49zaqcb";
+       revision = "1";
+       editedCabalFile = "1s4k3q43a8s0x56q6lnba2wdypw6ysd73pagl1w316jm2vqcq64r";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -32358,6 +32834,8 @@ self: {
        pname = "amazonka-kinesis-video-media";
        version = "2.0";
        sha256 = "05d8mxihr6br50jsd4lilda4bm5ql56jsshyn0b5y48fxqx5v53a";
+       revision = "1";
+       editedCabalFile = "1hisxrzczzchgywlcqnfdaqwc0rnv6vhhna3j60ih46xm4zxx3xl";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -32376,6 +32854,8 @@ self: {
        pname = "amazonka-kinesis-video-signaling";
        version = "2.0";
        sha256 = "0xj25p33m9h06bvr4n6c5nj3lf77q94nj76nj72kniv27akghbln";
+       revision = "1";
+       editedCabalFile = "0gi6y6c6ckm9ylgipqi0v34n9wzxlrsz86mnqyvp7klqg23dmms2";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -32394,6 +32874,8 @@ self: {
        pname = "amazonka-kinesis-video-webrtc-storage";
        version = "2.0";
        sha256 = "0sxb2w02783lpgfs3bp39xqwkas87055rwkzgr0587nk8qr9fa4l";
+       revision = "1";
+       editedCabalFile = "1yj9ki58p58s2b0mbx6rgalg3vpw75r53b96qk2n3hmmhibwm646";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -32412,6 +32894,8 @@ self: {
        pname = "amazonka-kinesisanalyticsv2";
        version = "2.0";
        sha256 = "0s5y24bxlpi3w432rgymzpb07bkf0h6w3q2aq38bwk1nwaj9kxbi";
+       revision = "1";
+       editedCabalFile = "1s1y9rbdz6qsx10p9ah7pxymnvnbh85qxxxzg6z77450w0zw5aky";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -32430,6 +32914,8 @@ self: {
        pname = "amazonka-kms";
        version = "2.0";
        sha256 = "0xklk7xis0jqbr32byz5jv0gjmspfbs03h7pd96gyn8q8s4anf4z";
+       revision = "1";
+       editedCabalFile = "16ahcsjdvkgmadqnyw1nk3nsc305k620yw5zzl6ahyc8jr7flijk";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -32448,6 +32934,8 @@ self: {
        pname = "amazonka-lakeformation";
        version = "2.0";
        sha256 = "1hhc7s55vd25w2azi83mr99fdldkgxn2559yl0b2nqyiimv3xv8g";
+       revision = "1";
+       editedCabalFile = "061nni1vkhwcnf42g3hrhqw61wniv9a9pc4fr1lvz93vf4wjkw88";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -32466,6 +32954,8 @@ self: {
        pname = "amazonka-lambda";
        version = "2.0";
        sha256 = "1ddibc2bhrzyx1mj41rmnp4c9gf7rackvgga3246j25dkqdqn7nh";
+       revision = "1";
+       editedCabalFile = "1m54jkfchazrc6p8hxgr2vzngzha12c2fs10jwyijmx0pg3321y2";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -32484,6 +32974,8 @@ self: {
        pname = "amazonka-lex-models";
        version = "2.0";
        sha256 = "016f4pq23q8g2w9hwyf8b45lplxzl449ylm1rfxl9pgx1i1p2l74";
+       revision = "1";
+       editedCabalFile = "14jhhr6g1mnb7asnxfprrww40wpa8ykshfa6nvmr25qxpi9zc9yf";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -32502,6 +32994,8 @@ self: {
        pname = "amazonka-lex-runtime";
        version = "2.0";
        sha256 = "0zfmhqhgklp950zlqwbi9064hfz5ls66wjfsjf4j588v1rmdpa23";
+       revision = "1";
+       editedCabalFile = "16djvyz6w6gpzkk7hgawq113vqlwz2h20n53f61pzk0psgcx6xrp";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -32520,6 +33014,8 @@ self: {
        pname = "amazonka-lexv2-models";
        version = "2.0";
        sha256 = "03sgrsdv9jaiqrnkckcz5538qlkn9xqr0xqh78phj6amfsp5l9j6";
+       revision = "1";
+       editedCabalFile = "0lyaam0drqf19pxzknid5kpq1s0mpcyy5qwljcrdf8sa4ndbwz4j";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -32538,6 +33034,8 @@ self: {
        pname = "amazonka-license-manager";
        version = "2.0";
        sha256 = "0ln5khvs14wxg6z6km77a1j8qrln8y1yw3syv1dxzdvxvj1z259r";
+       revision = "1";
+       editedCabalFile = "19f6aivlmxv78i8q4v4716frcbr3ydl791gaqxnld9vfqi7d0p10";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -32556,6 +33054,8 @@ self: {
        pname = "amazonka-license-manager-linux-subscriptions";
        version = "2.0";
        sha256 = "0zwz1i594xlams4608az6qwdal1jwhmfyq82y8jgl1wvwni8asvs";
+       revision = "1";
+       editedCabalFile = "19bjrjydin8d1pipkvpfn45f3hjqw3gvgpraayqmpq4ys580ax9k";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -32574,6 +33074,8 @@ self: {
        pname = "amazonka-license-manager-user-subscriptions";
        version = "2.0";
        sha256 = "0albn38qsn9bwrgzw12naxfrw3an2pj4azfs69zlqbryg6wyhn4n";
+       revision = "1";
+       editedCabalFile = "0dfzmdwnhmpprn77l84d69w8fr3zv9pa1a11h8d0w8q26q2azf2r";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -32592,6 +33094,8 @@ self: {
        pname = "amazonka-lightsail";
        version = "2.0";
        sha256 = "0lx41dmg4hg6p50hvm7ji1f3i9vfsd2a98h0a0v0kx6gp9fy1404";
+       revision = "1";
+       editedCabalFile = "1bkkvx7l2q04pjjjznqapmpf3d427blw4jzjxhsk99fa7568r8y5";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -32610,6 +33114,8 @@ self: {
        pname = "amazonka-location";
        version = "2.0";
        sha256 = "0cbjz3wqjjfksmy938zby1nylajq3f1k7xndmjyp1yz10d8hiys6";
+       revision = "1";
+       editedCabalFile = "0p617sgl8llw8hj2gfcvn5ma7midas9igng20jv7yv9dpa0jxbnj";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -32628,6 +33134,8 @@ self: {
        pname = "amazonka-lookoutequipment";
        version = "2.0";
        sha256 = "0rlchl8vc1k0082h8w76hbis8dkxkqhkxqfjr3ndzdba3h3j8pfk";
+       revision = "1";
+       editedCabalFile = "1a8ddh93m03gmhkw85yfj96azcf410ikqw7gip16kigs6aw5bmgs";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -32646,6 +33154,8 @@ self: {
        pname = "amazonka-lookoutmetrics";
        version = "2.0";
        sha256 = "0gr60r1ix2z9c372allxki2n290n7kcw2488l9azlg343rqr58fx";
+       revision = "1";
+       editedCabalFile = "1ry21sx6913bml8wsyn2zm0cb3yj45nrhn7mbvg51ly8crm1xmw1";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -32664,6 +33174,8 @@ self: {
        pname = "amazonka-lookoutvision";
        version = "2.0";
        sha256 = "1ylkwkvrxvnh46dscj31fda40sfm0isf60mh55w16y610lavac9i";
+       revision = "1";
+       editedCabalFile = "1qz4s3lqb6qshd2gqdbc67f2nvqiy668gl8la4w4f34b882cyx1x";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -32682,6 +33194,8 @@ self: {
        pname = "amazonka-m2";
        version = "2.0";
        sha256 = "00vhq64l12v1n1063w4drcwskkap53y5180knh2h0gj79c968rsk";
+       revision = "1";
+       editedCabalFile = "0mqwg7h9x9dqlxhhcs4x8s741amjvgxx054mw15zf5d7yxjqkgag";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -32700,6 +33214,8 @@ self: {
        pname = "amazonka-macie";
        version = "2.0";
        sha256 = "1vylyn951bk03k1n28whha7gp3mbmfam3y65snk0nvlybxhbmsxl";
+       revision = "1";
+       editedCabalFile = "1isclf1ib7z82p03yfs3qh5wqpjs9gq7sn64zy54pgmb28r0mx2k";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -32718,6 +33234,8 @@ self: {
        pname = "amazonka-maciev2";
        version = "2.0";
        sha256 = "1ym618fifpivnbwv1zznxl3xgi61ssq6hpd1h6sz4bzczik7ybvx";
+       revision = "1";
+       editedCabalFile = "1nfb7sh7wlhanmdwhkyi4x4z8pxngb6ql85lqhrf8fhf1jc6lh01";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -32736,6 +33254,8 @@ self: {
        pname = "amazonka-managedblockchain";
        version = "2.0";
        sha256 = "059m7vvj1h3zaikb11ydcshh9bmib6z4hwppbs4z46hvlml9y24g";
+       revision = "1";
+       editedCabalFile = "0j3qqfncnmr9vpfjgpxfvkrqz2sslxps30nbyzznram40499007j";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -32754,6 +33274,8 @@ self: {
        pname = "amazonka-marketplace-analytics";
        version = "2.0";
        sha256 = "188f4bhbhijm3ha1avs8pikyl624hcyd4iks2smyfrm2hcn1nldh";
+       revision = "1";
+       editedCabalFile = "0cl4qfqjgqa2cmdxwfkb7mhfl17b0856dfiw02lasdnn27w478a0";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -32772,6 +33294,8 @@ self: {
        pname = "amazonka-marketplace-catalog";
        version = "2.0";
        sha256 = "0vrbk0rjsbrli12jynkraigyc35f9wr2w5bslli8xiqb7j0b7yr8";
+       revision = "1";
+       editedCabalFile = "0x1k6qjs1apfbryb62rrmaq8bpxvbi19wzpqs06yfqsg2gr40h9l";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -32790,6 +33314,8 @@ self: {
        pname = "amazonka-marketplace-entitlement";
        version = "2.0";
        sha256 = "0xhi9gh0cf4gxcd9k13h5nxlxll3hs200lllan23376f53g28j3s";
+       revision = "1";
+       editedCabalFile = "0awqhc031yz7kk51vd2wksfvpgf5ng6ha7y3f51f5rlv17wf9d0w";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -32808,6 +33334,8 @@ self: {
        pname = "amazonka-marketplace-metering";
        version = "2.0";
        sha256 = "1jsnfykpa2n7l6rfp12zdxjcyamdps0xx836ngnn5xrj1wzqsh9j";
+       revision = "1";
+       editedCabalFile = "0a30sy1c8kd0kqi74zmqxyss06c63qfskyd6hdwdg9fw95jzmyx9";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -32826,6 +33354,8 @@ self: {
        pname = "amazonka-mechanicalturk";
        version = "2.0";
        sha256 = "02mbpyq5c8qbdznpgz1gd9i6na845ppldizpxlr2cd5iqxc8nc1a";
+       revision = "1";
+       editedCabalFile = "1vgaanv1n7fdhklrcxl28xzdrjdbw03fp09bicbi5dvwnnw3p3bc";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -32844,6 +33374,8 @@ self: {
        pname = "amazonka-mediaconnect";
        version = "2.0";
        sha256 = "0lxcfys8rncijcdwpj75zwjgid5x284dsm0hp5n2vvcm4dlz0cgz";
+       revision = "1";
+       editedCabalFile = "1s50iyk6kp7yq9gh0bj9z5yhxcq9hdlxx7ky3s2zy1gik6hv732y";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -32862,6 +33394,8 @@ self: {
        pname = "amazonka-mediaconvert";
        version = "2.0";
        sha256 = "0k2ci77r3ynv60s96yjyla4al0vkaxf1byhlxgkwq4admzw17krs";
+       revision = "1";
+       editedCabalFile = "17brx9l7cb7vavx4ypf049jp8xn2z40cpf2m9hsyxsfjqg4h7zz8";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -32880,6 +33414,8 @@ self: {
        pname = "amazonka-medialive";
        version = "2.0";
        sha256 = "0a79i51bcsc1b99nswqjhdi6kcxa81xp8rn8xsn2d0zmliv8pcbw";
+       revision = "1";
+       editedCabalFile = "0lm9r1fnz38phbdmfzg6h8ljdp8bzvy6j6zijshwbkm58i004vc1";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -32898,6 +33434,8 @@ self: {
        pname = "amazonka-mediapackage";
        version = "2.0";
        sha256 = "0qyqlw1jww9yzd0a4l91x2qdbfy7m97pn8n4dsxg5mwbicww74m7";
+       revision = "1";
+       editedCabalFile = "0853prpjibk8h1bpx34g6rmah0z1sa1qxk1hhgbn72widq7pwf9q";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -32916,6 +33454,8 @@ self: {
        pname = "amazonka-mediapackage-vod";
        version = "2.0";
        sha256 = "0d0wg954pdb62sm5j8j9pypn6nmgs7lp818ymnjd3fh89fql0wq3";
+       revision = "1";
+       editedCabalFile = "0dqsjdqrizz1chdgam3yplj23b3hpcpk2qc4acf1a54h4x12r5xq";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -32934,6 +33474,8 @@ self: {
        pname = "amazonka-mediastore";
        version = "2.0";
        sha256 = "12r10krbj4x8cp4bgjngpwnb4qlq43cf3g0z2zrkn6v660cr7yas";
+       revision = "1";
+       editedCabalFile = "1qssswdhw5lvzps9bviy3frbjxvvr81880lflgmzz0j88sl0bcm2";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -32952,6 +33494,8 @@ self: {
        pname = "amazonka-mediastore-dataplane";
        version = "2.0";
        sha256 = "0vxcbbqqk6w155i1r0hzxjp90l5kqjcz290qldamapw75y4ypxkf";
+       revision = "1";
+       editedCabalFile = "0c2nzwagh22h4p3ki306r7gbgwlfv564r6qpwphhilanj8dh3kfg";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -32970,6 +33514,8 @@ self: {
        pname = "amazonka-mediatailor";
        version = "2.0";
        sha256 = "0iw75yhz5fl013lqynzhvigzr59k3cw1q6z0p4l8078356dv4v9c";
+       revision = "1";
+       editedCabalFile = "0wlf1mqcfnkbkhamh4idxvyw3f3l649si4kjxmf6z3gx0lrqlrwy";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -32988,6 +33534,8 @@ self: {
        pname = "amazonka-memorydb";
        version = "2.0";
        sha256 = "034gjsc8gnwyi80h9w4a24fksb1vy8jh07nqwyjyxpzn69yvv8jv";
+       revision = "1";
+       editedCabalFile = "0q6lb2xyvl0b56rp7sy90xvdpzr85ngmxi7jxkj81vgq7zrnzxk8";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -33006,6 +33554,8 @@ self: {
        pname = "amazonka-mgn";
        version = "2.0";
        sha256 = "18njvfhb589vkmpbpgi13p7vw808bl8aff55736wj96lx6403c91";
+       revision = "1";
+       editedCabalFile = "10j40pcyyymjqilrk4r322vn4138nrccm4wwym509vr47lb22jn5";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -33024,6 +33574,8 @@ self: {
        pname = "amazonka-migration-hub-refactor-spaces";
        version = "2.0";
        sha256 = "10lhwaf6fr6d505dwa3cm5x3k67bnlfnrrjf11i23p0833fsnj6k";
+       revision = "1";
+       editedCabalFile = "14z7nr93mfnfnhngdxi37p0029sj0wscn6hhqf0cnqz7d6srx2nr";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -33042,6 +33594,8 @@ self: {
        pname = "amazonka-migrationhub";
        version = "2.0";
        sha256 = "1wahzyhvyf2xf3wvwnc8z3wj4b2cl9zv3cigfcqq6q2m8qhd7ph7";
+       revision = "1";
+       editedCabalFile = "0hml9n090z6cmssy9h8axw1fybscav42y2k8yghawr9v055j5779";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -33060,6 +33614,8 @@ self: {
        pname = "amazonka-migrationhub-config";
        version = "2.0";
        sha256 = "1f225q3c1gl0js2lwcqz2i74cp36a24f2qlsabkb3bc5d5p7d3yw";
+       revision = "1";
+       editedCabalFile = "06q412ra814c0jvlswpap7sgjfkgn5w4pg9lzzx0ynlfb0l1svs3";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -33078,6 +33634,8 @@ self: {
        pname = "amazonka-migrationhuborchestrator";
        version = "2.0";
        sha256 = "1ndhx53nb9jshvlwmj5k7g2gvfvliqz9c6lnj74fsdn8ajg5cgyn";
+       revision = "1";
+       editedCabalFile = "1cbzjrgfzfj7wqv7cbiwp2j9l2hg35a2z12ciqpyf9hi77hv0ja9";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -33096,6 +33654,8 @@ self: {
        pname = "amazonka-migrationhubstrategy";
        version = "2.0";
        sha256 = "1iw123rkgn7jhdpmm4cslb619ch0gfbyqnm2va6r181k25f52hsy";
+       revision = "1";
+       editedCabalFile = "1262jvkgqbdg8miv7m6wc88im5cf2wkrs9my4lr7y7n8n66m6rss";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -33114,6 +33674,8 @@ self: {
        pname = "amazonka-ml";
        version = "2.0";
        sha256 = "1fs6rzww4c1d3gz2gbxf214i1mbj97irfvxw925pjpxnaclviv6q";
+       revision = "1";
+       editedCabalFile = "01sx60z5m5dq6p1ipm48b3v7w4bsrx1m0vaz7ldfkzsnhyxfxb4f";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -33132,6 +33694,8 @@ self: {
        pname = "amazonka-mobile";
        version = "2.0";
        sha256 = "0zsdlxlrrl5cmmxpvcbkg2izd8m0f213l8fdjbdigfmrppr2kird";
+       revision = "1";
+       editedCabalFile = "04vdfvnga3ibwcw5xxmcvbilgvzpcp6xhlnliqaj57z7pp0xdzlb";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -33150,6 +33714,8 @@ self: {
        pname = "amazonka-mq";
        version = "2.0";
        sha256 = "0hlw8x1rqbicv3gkngdv9bh3im2r3rjrwd6p6240x5kaviy00gsi";
+       revision = "1";
+       editedCabalFile = "10r05lwagi71q40la0f1cxziy7l46bqj3s28k3fjf7asys9mlnbr";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -33192,6 +33758,8 @@ self: {
        pname = "amazonka-mwaa";
        version = "2.0";
        sha256 = "02jr13r5plhdxjbv8w1j90brkqxpjwq75s4gpbgyq8v831y9a2fj";
+       revision = "1";
+       editedCabalFile = "09rpd1csm9pjwx49y64j73mp3qlas4gcl2l3562m4vjrc7kkc22k";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -33210,6 +33778,8 @@ self: {
        pname = "amazonka-neptune";
        version = "2.0";
        sha256 = "14znb9mn4ln9xnsb2s1qf2361gm2jxxj30i1p9qjxv0bm3r9g02q";
+       revision = "1";
+       editedCabalFile = "00ad4787yp5nhhnk22ryz4jhaj5hiv3ib1nqxzcgpbsrymjdhd90";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -33228,6 +33798,8 @@ self: {
        pname = "amazonka-network-firewall";
        version = "2.0";
        sha256 = "03vn5rgp0pzjj3f7jydkpn7fdbhbfk6hci1kg5ljbyg9q5zs2qj1";
+       revision = "1";
+       editedCabalFile = "176fw6iv2q955mbv45qd64nig502dhwrg43zzffmif070pwmy8xr";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -33246,6 +33818,8 @@ self: {
        pname = "amazonka-networkmanager";
        version = "2.0";
        sha256 = "1n05xp135xxkbjd0c7rcm1xj47lvdbd7cpclkv6hifxlldqr7hwg";
+       revision = "1";
+       editedCabalFile = "1fdf21q2f2f76vhhgx2by90n4zivvdh69c1spla96nqmg15ap93s";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -33264,6 +33838,8 @@ self: {
        pname = "amazonka-nimble";
        version = "2.0";
        sha256 = "1vjkypkjhf40xk00smjrzqpg333cpgq8jyri66z9s7604vhcsiff";
+       revision = "1";
+       editedCabalFile = "04srzq9pc4292439am2f149pq9x0232z4jpw5rb414zr1hrfg25k";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -33282,6 +33858,8 @@ self: {
        pname = "amazonka-oam";
        version = "2.0";
        sha256 = "0xhkgf513rk1zw4dvmr85xaa27d4ybvpbbbpq8j44y55d3jw2r20";
+       revision = "1";
+       editedCabalFile = "1w703g85wvq6imj83anz3q3qv4pn5d1143p88w0ji2xg2743hqd2";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -33300,6 +33878,8 @@ self: {
        pname = "amazonka-omics";
        version = "2.0";
        sha256 = "1y7xnzg81s941zmvf2vadd9iss0wkxsrk426n8m7gazgz340nqan";
+       revision = "1";
+       editedCabalFile = "1g8imfikx3w56pndswh6r2qdz6mbivii9yqm8myaalyfrfgblcly";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -33318,6 +33898,8 @@ self: {
        pname = "amazonka-opensearch";
        version = "2.0";
        sha256 = "14hgcp7wxnk8xp3xapsmkxdr2lni37ls4wg88larbkzx8kr10la6";
+       revision = "1";
+       editedCabalFile = "0zdc4sqbymwgj0zdlrkxp2n6agjy7pp1hla81wjv6z6azcis8cnq";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -33336,6 +33918,8 @@ self: {
        pname = "amazonka-opensearchserverless";
        version = "2.0";
        sha256 = "1phydxi9sqylmqnxv4shy556x959na84yyf9i7k3aknjd9p41gvr";
+       revision = "1";
+       editedCabalFile = "0p3a9papc5vqx942008rixy3hc7k3skifs52bhhfkc0rwfdvj43y";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -33354,6 +33938,8 @@ self: {
        pname = "amazonka-opsworks";
        version = "2.0";
        sha256 = "0rk6jwcpaqnnz812hxiqwh7d0c7qc1115vsljdhh08id21rvc76y";
+       revision = "1";
+       editedCabalFile = "0k254dfaw6a2xpbqxajyhld7zaxf5jaf1ps8zjj6z18zinmdxyxs";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -33372,6 +33958,8 @@ self: {
        pname = "amazonka-opsworks-cm";
        version = "2.0";
        sha256 = "1cnh2mjl3n2wgdq2rykc7ya0m4x3rvc3xaxbp3hm68xmryb185r8";
+       revision = "1";
+       editedCabalFile = "0jabvns8rmjfq7k5ad4sla0yk5gpnmzj2pvqqgadday53g4swzz2";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -33390,6 +33978,8 @@ self: {
        pname = "amazonka-organizations";
        version = "2.0";
        sha256 = "1q0y81cp5xn87yw1dj15nqbmvfzvv8sjzsllr73h4cplcqx47rfm";
+       revision = "1";
+       editedCabalFile = "10rpklmvgi2dyj8dxdqrwwjf1hvv2kzwda69jw4hj5lsirigk4y7";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -33408,6 +33998,8 @@ self: {
        pname = "amazonka-outposts";
        version = "2.0";
        sha256 = "0pd6r5xpa5dxp47nhxsn2v9sx47xnm9z9961qqlm4a9m7zmlc5ff";
+       revision = "1";
+       editedCabalFile = "07y1ylyizjgxhagbdbav6spr17rj1fvm873fcbbx5lhybmhyw8g4";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -33426,6 +34018,8 @@ self: {
        pname = "amazonka-panorama";
        version = "2.0";
        sha256 = "11jii4fq77slfy7x00gg0l7fn925rfmp8yzqy4jjl7pmh8s1gbm0";
+       revision = "1";
+       editedCabalFile = "00wxs22din4qf8zq6l4cggiz68gi9gbpcarnzv9swkzrxj5c8dai";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -33444,6 +34038,8 @@ self: {
        pname = "amazonka-personalize";
        version = "2.0";
        sha256 = "1l6h1273pgwk0jdqd910wqqjv9inm278klhagihfywi31jm8lrnj";
+       revision = "1";
+       editedCabalFile = "1cjg9vsn5g0sqdzb3wynnlmarx86s2ikaj0ld7vhd1hxm55nzlfl";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -33462,6 +34058,8 @@ self: {
        pname = "amazonka-personalize-events";
        version = "2.0";
        sha256 = "17nrk0j4xml8wsd332yqa3mw6kyrd2wax3vhsvz6akmsz3mqymcn";
+       revision = "1";
+       editedCabalFile = "0q7n6sriqmkwjglwffi37z2mvxwaj60h2q9haj7hxnkyr0iri2lh";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -33480,6 +34078,8 @@ self: {
        pname = "amazonka-personalize-runtime";
        version = "2.0";
        sha256 = "0xrpf2lqvjdqqfgl160dhd6gpq07815jl0nymz2x6wyrj19bm9ah";
+       revision = "1";
+       editedCabalFile = "18md8c26wk6h5qi159q8axixjswlh64np4mmqdw12zvz270vkd4h";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -33498,6 +34098,8 @@ self: {
        pname = "amazonka-pi";
        version = "2.0";
        sha256 = "1mpqj1mwp63ifyk260lscg3rffilmlya4yk3rjsc3fb7wv5qvklm";
+       revision = "1";
+       editedCabalFile = "07vgpjlwizv69q261nn2n038v37zq6j9ll1x407qpy171mrxvp46";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -33516,6 +34118,8 @@ self: {
        pname = "amazonka-pinpoint";
        version = "2.0";
        sha256 = "09iwgl9wb40jv35djxxgn1d3k6r1gw0k2ra875f9zgqj0vay5b0w";
+       revision = "1";
+       editedCabalFile = "1nn08q70nwz44hz2vg23vv1k7wj67lbxhxmvsadj788djpql56bk";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -33534,6 +34138,8 @@ self: {
        pname = "amazonka-pinpoint-email";
        version = "2.0";
        sha256 = "1b56zm0wss0da7mnd8bidgcl1w4pdrzmdsdwqcf8b8kjnqwvsql4";
+       revision = "1";
+       editedCabalFile = "0wffxf4am4f16d3841n18airk1bb5dxsd9gsi5dbnlimdvfkq7qm";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -33552,6 +34158,8 @@ self: {
        pname = "amazonka-pinpoint-sms-voice";
        version = "2.0";
        sha256 = "16qb4jkpicpb9rf4a2k0zxrlapxficir36i8mpp544xhnz2mdf5z";
+       revision = "1";
+       editedCabalFile = "128sawli7i8l2bfpqpvs4lqxc90vjr8a72gl9slnk3hjrim9kwvl";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -33570,6 +34178,8 @@ self: {
        pname = "amazonka-pinpoint-sms-voice-v2";
        version = "2.0";
        sha256 = "00rjz3lxc63xxarkjxz4gbmb49xr23jqnn7i3n45fl4w3w8dxqvn";
+       revision = "1";
+       editedCabalFile = "147n1f9b0zfyv63x61hq62286gz52hrfmcf79sra95glkrrmd944";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -33588,6 +34198,8 @@ self: {
        pname = "amazonka-pipes";
        version = "2.0";
        sha256 = "1hq2g003jsgydi4ak8m8brdgji2d0kar9glanyag52hgya0cdwf0";
+       revision = "1";
+       editedCabalFile = "0ikqq7x7nkbd77dr5y96f4l2q4pd1yz0qmcjprxcn4pwmaipacx8";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -33606,6 +34218,8 @@ self: {
        pname = "amazonka-polly";
        version = "2.0";
        sha256 = "066hzqm18cjm0jv268zsgfgj71wc065slilb83vin1w1wymdbpnh";
+       revision = "1";
+       editedCabalFile = "1n2iwnk1g332ss34s4026wv0h4y42ngp1yw7qsrp5k1ksdzg5cki";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -33624,6 +34238,8 @@ self: {
        pname = "amazonka-pricing";
        version = "2.0";
        sha256 = "0sa2z8m09jrhnlq1ns60x1g0anqdfg4kffgiz8928dda97icix4i";
+       revision = "1";
+       editedCabalFile = "1194qi8f8la7rnahvw6gf0czbyfw9c3ic387zg4iw0mb10qndkk4";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -33642,6 +34258,8 @@ self: {
        pname = "amazonka-privatenetworks";
        version = "2.0";
        sha256 = "028y9cs8rgmyg16lvfsnzy2lzlf89wm7jf36ipyvi5gjcrpz6yl1";
+       revision = "1";
+       editedCabalFile = "0jvsjsgahmn0vlmrjsw4jlcyqr83hd8cin6n98wbpxnnry17sfs0";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -33660,6 +34278,8 @@ self: {
        pname = "amazonka-proton";
        version = "2.0";
        sha256 = "1sb8b61ck7c3pdw78vc69yqyavxfqdqcdbngi8g2w9ynj312wqgv";
+       revision = "1";
+       editedCabalFile = "0mzp6wr29hbnmfqbldj4q64q4zsclvzmbp750gffmc1bywl369m0";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -33678,6 +34298,8 @@ self: {
        pname = "amazonka-qldb";
        version = "2.0";
        sha256 = "0yw300mj7h0bgk18qwjqbnvc0ffdi2jllqxsikn346c1c2xbkvcc";
+       revision = "1";
+       editedCabalFile = "0dkk8iv4l2gx0dcsddasy6nzganjgj4zbhzbfk0sf9pm77nnzqh3";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -33696,6 +34318,8 @@ self: {
        pname = "amazonka-qldb-session";
        version = "2.0";
        sha256 = "0hsbbd19z1zm89zqgz37m86mcmadjki9ah7z82wjjzd6ndckxf5g";
+       revision = "1";
+       editedCabalFile = "1aizr5d11b2iqhwzrf1pv9abnzsfml19mw1abnn40n56xjibwx7m";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -33714,6 +34338,8 @@ self: {
        pname = "amazonka-quicksight";
        version = "2.0";
        sha256 = "1iq02m726lrymnga5j03fvx4jx0a18w19vy9wnpdaxb669s12y7n";
+       revision = "1";
+       editedCabalFile = "1073bj7f01q3d9v6vxy7m35vdakr8rzrzyylv649n9i61x9fyaqc";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -33732,6 +34358,8 @@ self: {
        pname = "amazonka-ram";
        version = "2.0";
        sha256 = "0zlyh5qzjx2nbfkli9qsy4j5fc1lal78swa595dsmbif6jn63zbz";
+       revision = "1";
+       editedCabalFile = "0j1i5cr01azg3m0b80i53yv379ri6prn0zwl2a91ziwf705bhc3i";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -33750,6 +34378,8 @@ self: {
        pname = "amazonka-rbin";
        version = "2.0";
        sha256 = "1l8rsbw9j1i7xbav207ys616qyfkq25rc69f3j8kr9hifmjlx34b";
+       revision = "1";
+       editedCabalFile = "0vca56cj8aw02h65k0axzw2l98kmddqfcnap1fr4bglk42w2d7ak";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -33768,6 +34398,8 @@ self: {
        pname = "amazonka-rds";
        version = "2.0";
        sha256 = "02bw1qg0h6xcgp09f72xvc4kls6hl4qirz7sbs90p4vlmq4jsmz9";
+       revision = "1";
+       editedCabalFile = "1rhsmnmhvrclp48zbgwc8lzclirj7fr5qlx0qxm9rdgx24wgiby6";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -33786,6 +34418,8 @@ self: {
        pname = "amazonka-rds-data";
        version = "2.0";
        sha256 = "1bzz40i00cg2yyj9iqhxw9rnq243dcs65m4xx3zlcjwdg55lzbla";
+       revision = "1";
+       editedCabalFile = "1dfdxyg8wkrk2r8hvw240arcbp0iakijiwj1dm9a8d13jlw1m35a";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -33804,6 +34438,8 @@ self: {
        pname = "amazonka-redshift";
        version = "2.0";
        sha256 = "1prq0mh73lzvaq4np7r3h7qw8pgf3nszvqvk9bzcdkccc4iy1j26";
+       revision = "1";
+       editedCabalFile = "1cd8lnwzkmg4w5ggi7awwx2685pgdbyym895fxkd05viyk87rivz";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -33822,6 +34458,8 @@ self: {
        pname = "amazonka-redshift-data";
        version = "2.0";
        sha256 = "0d1vmlk15j1rxhqr3h86admm6y351p862jpyd1wb1lws4rlk0nf6";
+       revision = "1";
+       editedCabalFile = "03hdy6qb2sa1c46f2v4ws1h56h647h5qp9hb02z9452mr4vl35zq";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -33840,6 +34478,8 @@ self: {
        pname = "amazonka-redshift-serverless";
        version = "2.0";
        sha256 = "0glv2yjibpzqmags776g79lcn9wvwcs7nzxl1hp80gjcwlm7g3sr";
+       revision = "1";
+       editedCabalFile = "0gynrnlqjs8vghszfzcplpy8hig1iw86889nrcl9z4hwx10459yg";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -33858,6 +34498,8 @@ self: {
        pname = "amazonka-rekognition";
        version = "2.0";
        sha256 = "0z83n96pyx4fyh142zm0djjppiih2wf07l2x22c3gv6i4zk3m4ch";
+       revision = "1";
+       editedCabalFile = "1dlr4na5g85q261zag90k46pm92spqfdvwrsf91mi4cnz90n3ndw";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -33876,6 +34518,8 @@ self: {
        pname = "amazonka-resiliencehub";
        version = "2.0";
        sha256 = "11r66h0lww1bqpnav1r9cz9zbsymggky8ck13nijq84dg2j0bgip";
+       revision = "1";
+       editedCabalFile = "0hggag6ccpcdkaaq6i1756l6s4j30y52yvd5hvri7ajpbg28jx9h";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -33894,6 +34538,8 @@ self: {
        pname = "amazonka-resource-explorer-v2";
        version = "2.0";
        sha256 = "0z4vlvd2fxj0l26i76m8zim5j5gilsir6r7d58387ishxhfxn8wb";
+       revision = "1";
+       editedCabalFile = "0rsciyiprkxjwjkafa0slx0xdcxcngdk23x7dlrf6nqvwzc01jdh";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -33912,6 +34558,8 @@ self: {
        pname = "amazonka-resourcegroups";
        version = "2.0";
        sha256 = "0fbfcs3aaizgw9564chvnxnvh57k8chdzq21ml2f4m46f2c64isj";
+       revision = "1";
+       editedCabalFile = "0zbcjcmrwgx409k854hl0s056ai2s7h3s21j9x0vlf8prxi9hpfz";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -33930,6 +34578,8 @@ self: {
        pname = "amazonka-resourcegroupstagging";
        version = "2.0";
        sha256 = "0m5wi3alfd21jc53ndn97riys39yn1pyxljlq2c32slv90q9a1bi";
+       revision = "1";
+       editedCabalFile = "0jsjm7azpjwchpqs074df1wsvh6k06q2ynpcr2j8c83mgsnwgxgc";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -33948,6 +34598,8 @@ self: {
        pname = "amazonka-robomaker";
        version = "2.0";
        sha256 = "0ykip8v9lkzg56rnsmx4jq832d82m8ylpb6vl5nr2al7dz0xmli3";
+       revision = "1";
+       editedCabalFile = "0q46dm1ymv79bbyxi48gcy3rx4m05fdigq7ixgimlspfbmdvy0yg";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -33966,6 +34618,8 @@ self: {
        pname = "amazonka-rolesanywhere";
        version = "2.0";
        sha256 = "16kqsyx0a8rwb5153c6h4i7m5207vkl78bh0r88g49qgh2xbjkjv";
+       revision = "1";
+       editedCabalFile = "09vc8k0nh5rp9i3bjgvjp5rmk9rl6m3c1kfwmykh2zqv5xpmjs53";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -33984,6 +34638,8 @@ self: {
        pname = "amazonka-route53";
        version = "2.0";
        sha256 = "04h4rwfxv0br8i28b9n3q3rzbgr575diadvqqjv9141824xn6yfz";
+       revision = "1";
+       editedCabalFile = "0aiw7q60chnaai1bfkfn9ri1w8lq74jm7izj1l7gljr345v8raml";
        libraryHaskellDepends = [ amazonka-core base text ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -34002,6 +34658,8 @@ self: {
        pname = "amazonka-route53-autonaming";
        version = "2.0";
        sha256 = "0wzcxi3w4ipscsqv4qmjh72nfkbza1izym3aysy1pradhjb1hdml";
+       revision = "1";
+       editedCabalFile = "145rhpf6jkybr6vahji1hfwsk3x24d9ijqfgbplm0flrl0w608gs";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -34020,6 +34678,8 @@ self: {
        pname = "amazonka-route53-domains";
        version = "2.0";
        sha256 = "1cjz4fyncdvk1w25lp1sc4d5npd4mk2z411lpk8h8aa5lv38af4b";
+       revision = "1";
+       editedCabalFile = "1038g4saz4b74lr53gg3rqa7xk50kibr0fcjl98dyq8rxpc5jc1m";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -34038,6 +34698,8 @@ self: {
        pname = "amazonka-route53-recovery-cluster";
        version = "2.0";
        sha256 = "05ir57rm7js42zjwimq79vhg4fbmiinplpql8brn2jszl9bsl7vm";
+       revision = "1";
+       editedCabalFile = "1w6snq9nh0vwkpw21d66j017r1zdrk6aqkbxbivg0ychr0fj4byn";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -34056,6 +34718,8 @@ self: {
        pname = "amazonka-route53-recovery-control-config";
        version = "2.0";
        sha256 = "19bfykab16789mpcigk7mcjhn654b9mmri4649x533yl6532278b";
+       revision = "1";
+       editedCabalFile = "0ay92i3vdaay886sb0vbmpjrkhmb552sn5s25fcr28p0r3jak068";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -34074,6 +34738,8 @@ self: {
        pname = "amazonka-route53-recovery-readiness";
        version = "2.0";
        sha256 = "0x5nlylc6rlp4c6d1l18nhdw91h78cxrs6h6nzg89jf7i095gmbj";
+       revision = "1";
+       editedCabalFile = "0hq09vzbg1b1brgv687zkkccgpyiil3ai0x745marbywpgr6rvmc";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -34092,6 +34758,8 @@ self: {
        pname = "amazonka-route53resolver";
        version = "2.0";
        sha256 = "00wilssrk2gfqxr1f8afw9jj7f68ssq186q402bqwqb02ynig76x";
+       revision = "1";
+       editedCabalFile = "1gl5p616bmmbv3qmy1wl9lgchj9mp8b4d2dd7xs5l3mhra8ykpdh";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -34110,6 +34778,8 @@ self: {
        pname = "amazonka-rum";
        version = "2.0";
        sha256 = "0qwp2fynaf27p7zj1b9npbg7x6c3m2pnkan9sdi4m4agp0pa649y";
+       revision = "1";
+       editedCabalFile = "1lx4qd86vdx21p169h846yvdc0103pkjqzf20xr3qxjav1yk4yrz";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -34128,6 +34798,8 @@ self: {
        pname = "amazonka-s3";
        version = "2.0";
        sha256 = "1iyrbh5j8yk3z2p55qgvicgi59lfvvn0yh3i2mccr8rfi9spkmjs";
+       revision = "1";
+       editedCabalFile = "00lqz4ixkaiifw3wsnmgsfpn0jn722qfwfn4awxbrj8g7v2bx4qx";
        libraryHaskellDepends = [ amazonka-core base lens text ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -34148,8 +34820,8 @@ self: {
        pname = "amazonka-s3-encryption";
        version = "2.0";
        sha256 = "1cxv36nkaqp30dm89f9bfqmh7dh0nyw4i4n0apdj7p3gckhl3jb9";
-       revision = "1";
-       editedCabalFile = "0b8xbcjrdh9v304i94mdkhvlhg61zmylhf6jq88kjbavlc3g2q0x";
+       revision = "3";
+       editedCabalFile = "0mb2n0idzns2zhxd5b0mq6g1w6i076wfkcbal8vwq6gvr1aslrg2";
        libraryHaskellDepends = [
          aeson amazonka amazonka-core amazonka-kms amazonka-s3 base
          bytestring case-insensitive conduit crypton http-client lens memory
@@ -34192,6 +34864,8 @@ self: {
        pname = "amazonka-s3outposts";
        version = "2.0";
        sha256 = "05wx2kb7w3ikdm4862izjg9h0mmi2f5fkx7ljbacljxwdmkmbd1m";
+       revision = "1";
+       editedCabalFile = "1x766gyflxjf2jinywlf37p92j9r88r1d16ilcpm6n1r8c6ky6cb";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -34210,6 +34884,8 @@ self: {
        pname = "amazonka-sagemaker";
        version = "2.0";
        sha256 = "0qaz8vmncvvl3kq3v8i70cgf4ryq7sc3phyrdn1igf0rva9wkpjg";
+       revision = "1";
+       editedCabalFile = "0bjczl5ngyjannfcn5zg6hy47zjz7irww48c9pg7f020qg847sk7";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -34228,6 +34904,8 @@ self: {
        pname = "amazonka-sagemaker-a2i-runtime";
        version = "2.0";
        sha256 = "0fw6fi53sg7mjbzmc2s9s8znvb484ycdbbbw5l45gcb0n8k1jp9m";
+       revision = "1";
+       editedCabalFile = "1q3c22ixmpkm636lls0d8jvfwkwvs6cx0rgwmsfw8kb134c2vah3";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -34246,6 +34924,8 @@ self: {
        pname = "amazonka-sagemaker-edge";
        version = "2.0";
        sha256 = "1ffrs0bbi600wqykd67kd5xxdqf2cq6wi8nsf1kfqwyqsfzi6189";
+       revision = "1";
+       editedCabalFile = "0f285vj95xq03cx00rxnai84p47yb4rdf1iy07w557p0bsys0lia";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -34264,6 +34944,8 @@ self: {
        pname = "amazonka-sagemaker-featurestore-runtime";
        version = "2.0";
        sha256 = "0mcgbyvi8kr1yv1x1rgpmwq772p24yi8hc2x2ja7lwnfl6pfr49g";
+       revision = "1";
+       editedCabalFile = "1byx4mmq2isvp4igp5i22w0nkf8smxvfcpd7amgrxlx5czkwi625";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -34282,6 +34964,8 @@ self: {
        pname = "amazonka-sagemaker-geospatial";
        version = "2.0";
        sha256 = "0g09ip095m2ngr1cwry84zls966dvggsz28msxlzi777hjgf47zq";
+       revision = "1";
+       editedCabalFile = "086v5gjh8vkpqsl800p1n8afw6qlf8ganhlhhdm6w85wxhgdxiv3";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -34300,6 +34984,8 @@ self: {
        pname = "amazonka-sagemaker-metrics";
        version = "2.0";
        sha256 = "0yysfk8y3isk2mcddnzk0r8bss6sqjrjrgjcy591177z0wjqdx6h";
+       revision = "1";
+       editedCabalFile = "14grv2vjmc5ki612wyxcpll3w1zq0cl34z18qja1qmz7970wffmw";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -34318,6 +35004,8 @@ self: {
        pname = "amazonka-sagemaker-runtime";
        version = "2.0";
        sha256 = "0q5hl25sxby785dcailgmlxzzy9517qz9a87ahvgakpc1casrsyy";
+       revision = "1";
+       editedCabalFile = "1fyarkj5n1g4l7g82ik0pnzyd6xxyhlnx2zk4cqqibz3nlgb51j1";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -34336,6 +35024,8 @@ self: {
        pname = "amazonka-savingsplans";
        version = "2.0";
        sha256 = "0i6969lyfd40dnrjh2fap5yw8m8y9cvxx7f71skpwvw17d9gdvlx";
+       revision = "1";
+       editedCabalFile = "1s76l73z67b9d6iwnwr7f3dh7pqsy9rkp443j79xmcrmrhp97rsh";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -34354,6 +35044,8 @@ self: {
        pname = "amazonka-scheduler";
        version = "2.0";
        sha256 = "0j9y4gy214df0qv05vmpxgh73adqpcvqzxciazmrvzr85kc9vf3g";
+       revision = "1";
+       editedCabalFile = "1b70l2pckjcyz3fa6ykabmlh2gnci3xg9gjswsqccqamk7pixnqh";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -34372,6 +35064,8 @@ self: {
        pname = "amazonka-schemas";
        version = "2.0";
        sha256 = "0fpmbc9h8x2imqj2mb503y4h4ndnw4gbajiwmw7d4bxn2wmvfh74";
+       revision = "1";
+       editedCabalFile = "1fa734y0s1qzc20mqmiv0bk558xcdvw4ffz5x5774fphcsk5fyl6";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -34390,6 +35084,8 @@ self: {
        pname = "amazonka-sdb";
        version = "2.0";
        sha256 = "0qp6kwllm86hf1l78mmzbrrpw47sk6bs0845xdmcx27i08jjjhyq";
+       revision = "1";
+       editedCabalFile = "18ff5m1r1h0z094q0kjl0gfy71mhm2jjm9lm6p2xjgrbssagz4d8";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -34408,6 +35104,8 @@ self: {
        pname = "amazonka-secretsmanager";
        version = "2.0";
        sha256 = "1wndb54k81qw3q2077fkjwyclh9adrbkhl0nh72ybyb7ws7mlygh";
+       revision = "1";
+       editedCabalFile = "1dnbh26vpqmiprg41j94xs4y5rb2r7q5vgv806gi99505gzydjks";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -34426,6 +35124,8 @@ self: {
        pname = "amazonka-securityhub";
        version = "2.0";
        sha256 = "1pffrv28fk31dzz7a2rqibvs8vpjpax80nk2512xasyg72xvig5q";
+       revision = "1";
+       editedCabalFile = "0iymr1lqkgid8zldhw6bmn9j9sb0l4a45qg712l2bip7zvx8p7kz";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -34444,6 +35144,8 @@ self: {
        pname = "amazonka-securitylake";
        version = "2.0";
        sha256 = "0iy0fj926q7imnzxgzwfynwrbijm4zdxvkibcwbi6q6x132208fn";
+       revision = "1";
+       editedCabalFile = "18gxbz8hl3wg2hykngb90dv7jiql610zhiyw7nfsscnxgz76as92";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -34462,6 +35164,8 @@ self: {
        pname = "amazonka-serverlessrepo";
        version = "2.0";
        sha256 = "1dnfy4b4xmz9gr04hlr2pdx72j7dv49jran80fsg5qz60shffqrj";
+       revision = "1";
+       editedCabalFile = "1bmhjqn66bv9j3y0nwjpra8nncf6vilynilkl5qpnl6xm0c73gr1";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -34480,6 +35184,8 @@ self: {
        pname = "amazonka-service-quotas";
        version = "2.0";
        sha256 = "19rfl0gfvbkfh46k9vrx87xala4mjjfnaf4ixwxaabhgnsrz4ssl";
+       revision = "1";
+       editedCabalFile = "1lx7wj00s9inyxhp80w5k2fxw8sf7cw45haz9ssvs91pw2ffr42k";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -34498,6 +35204,8 @@ self: {
        pname = "amazonka-servicecatalog";
        version = "2.0";
        sha256 = "1ivvn19hvgv1k1nll81y6svfmyi7q54mhprdy3x1yszsjpgyvqqd";
+       revision = "1";
+       editedCabalFile = "1407yfxwijnyddxk5by8jd6cgx5563sz5lnfzyshjnjwa8d7q0g2";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -34516,6 +35224,8 @@ self: {
        pname = "amazonka-servicecatalog-appregistry";
        version = "2.0";
        sha256 = "05ac16apjk1rk60sxnj6f18g3mgjxp3m2sz7w2w9g0df83sqdf16";
+       revision = "1";
+       editedCabalFile = "0mrvhk0m3h3zx3h72l7mfc5lsn1ghjngn5bibyd8vp2p9jnks9z2";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -34534,6 +35244,8 @@ self: {
        pname = "amazonka-ses";
        version = "2.0";
        sha256 = "0pziw21bmsjfj0qn5xrwvyi8jk0z93qmyg81awaic4wanhyij5xx";
+       revision = "1";
+       editedCabalFile = "1qync1wmz2p9dylriadvn5nhr4kdyghgvmnw547zzi13ypxgimbd";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -34552,6 +35264,8 @@ self: {
        pname = "amazonka-sesv2";
        version = "2.0";
        sha256 = "11li9frp2pxwh7hlcdb29l8d2vx4522jrd2rns8ca3bf39pq421q";
+       revision = "1";
+       editedCabalFile = "04x7knmdq1alpfhni2r0d25cswrya4zy74xgyd1iwbvkhwiraiy4";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -34570,6 +35284,8 @@ self: {
        pname = "amazonka-shield";
        version = "2.0";
        sha256 = "0vpx0inr71wwi4i2dd92r1ba7x6bnssqar3g610mmjw5cxgfnsjr";
+       revision = "1";
+       editedCabalFile = "1fk3pj8ydwpgvhq56rbmy347wbczqm4zf29jbhbwqywk000h4gzj";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -34588,6 +35304,8 @@ self: {
        pname = "amazonka-signer";
        version = "2.0";
        sha256 = "0ga5ncb8mwfcgskvvqwrli6bhmjgmc1i4n6fvrkmgzfb5vk9g24g";
+       revision = "1";
+       editedCabalFile = "0j1fl782h5bkw3n8jfg6jc48rkn63jvqknji5idpr0hvas4qh3gq";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -34606,6 +35324,8 @@ self: {
        pname = "amazonka-simspaceweaver";
        version = "2.0";
        sha256 = "013xd9qr3a8j16a0zzqhydj3yvcd6g1hyrq69llr0iichjyjpbij";
+       revision = "1";
+       editedCabalFile = "1mq31yp4zagyvrjpal60bdx8n8p2av0g5smmsxfp523mffjf99xb";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -34624,6 +35344,8 @@ self: {
        pname = "amazonka-sms";
        version = "2.0";
        sha256 = "1pvmnv3bsbhbndmqk9wq1c1n66ysdnbclfshs2dyrph8p12nndgp";
+       revision = "1";
+       editedCabalFile = "0wscr18vkgz9hm6kn7612czvwd89x094g6dlzqcayq1v3qfm3cvx";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -34642,6 +35364,8 @@ self: {
        pname = "amazonka-sms-voice";
        version = "2.0";
        sha256 = "1vvp27qm1jb3wm8nh4jzcgjjlcqv6j49jjlp1grwfxnc3f7j17sg";
+       revision = "1";
+       editedCabalFile = "0xbg3k0x9h4z4fbg1x8lafb1r37q63nnfnpwycv4pswggrcyv0km";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -34660,6 +35384,8 @@ self: {
        pname = "amazonka-snow-device-management";
        version = "2.0";
        sha256 = "0jiv8rnrn3mc8rknig71hw2pcqdzyzrs5nhdnj5y6zdn0yv2zx0d";
+       revision = "1";
+       editedCabalFile = "1lxfd07zrx6pb61n44v4qrlc7mmxmri8h9i38443qkvwv147m7f5";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -34678,6 +35404,8 @@ self: {
        pname = "amazonka-snowball";
        version = "2.0";
        sha256 = "0851jxkysdjyam3mwllhzjfgwkwndflfq0v4bmnr5pgl2x2yih6c";
+       revision = "1";
+       editedCabalFile = "14ykxhlfr2ll6yc6c3lbaqc2w089d14k92n3ix5mnxn28bb593yi";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -34696,6 +35424,8 @@ self: {
        pname = "amazonka-sns";
        version = "2.0";
        sha256 = "0vpk2z8rmkpbm3lg27mnqiffhspbx0zwixplwbgl73imigjzgc6p";
+       revision = "1";
+       editedCabalFile = "0c24hbg1rcfcjqplyaad3ridh1fj3mvr9wd1zd9rqlm0nr48mbif";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -34714,6 +35444,8 @@ self: {
        pname = "amazonka-sqs";
        version = "2.0";
        sha256 = "0w8psnfqv78kazjyw06wdsmm6hlfy01wa2pimc4yiwczy7h4js31";
+       revision = "1";
+       editedCabalFile = "1i76awjx2gclcfnzwqpm5isjgfn1ski0a3hmrvgi2zrq3f6r2xw1";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -34732,6 +35464,8 @@ self: {
        pname = "amazonka-ssm";
        version = "2.0";
        sha256 = "0hzay415v1xlcvjmgwya431bi1y4i3kq41szp40nm7ahxcmgylxn";
+       revision = "1";
+       editedCabalFile = "02mhx3k388h9iigkfng52fqr92c3vbphkv47ch1wy2d7gwwh8fr7";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -34750,6 +35484,8 @@ self: {
        pname = "amazonka-ssm-contacts";
        version = "2.0";
        sha256 = "14m08gp8c1zif9brdi4cip4lw4p3hi3ck7ddpffv1ixfmdxwg1fn";
+       revision = "1";
+       editedCabalFile = "1rzmbgydxs2n4hhndq4vk95q1l4dwxhz9sa0fk7wkb7w7nydjnms";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -34768,6 +35504,8 @@ self: {
        pname = "amazonka-ssm-incidents";
        version = "2.0";
        sha256 = "0c98w5r4r3kwsg03gf2q3hg5izc4b3rkazsc79p8r8kf5i5z2qik";
+       revision = "1";
+       editedCabalFile = "14r8i68l9h7wks6k720q28vmh4g11p1jhqdfi3mkms58w4ldfwzr";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -34786,6 +35524,8 @@ self: {
        pname = "amazonka-ssm-sap";
        version = "2.0";
        sha256 = "1f832y679fnaq5gx1fcfrf5smxdir0qvjg4k48j5kfc8hbbzfv0x";
+       revision = "1";
+       editedCabalFile = "0npfw2vjljm3glzrqhs325n1jd527cmclvc0mhj0sigdilz3vn3b";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -34804,6 +35544,8 @@ self: {
        pname = "amazonka-sso";
        version = "2.0";
        sha256 = "0x4g24vr92rqk55vf2v3dwka94p949cvryl1hy3lxcvpqk52v0bi";
+       revision = "1";
+       editedCabalFile = "0kywvrwwb3ig22sm3d1sri4mcjgaaspxv99syq9akhpscqnj7ffz";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -34822,6 +35564,8 @@ self: {
        pname = "amazonka-sso-admin";
        version = "2.0";
        sha256 = "0cn4ksyd8slvb8p7y7bg1f39wij690grnblkfyabw0m9w1s6nwi6";
+       revision = "1";
+       editedCabalFile = "1liggniyk0is93n8hjb2qrn0gjk5s5vg3knypzs26f812y8az5pa";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -34840,6 +35584,8 @@ self: {
        pname = "amazonka-sso-oidc";
        version = "2.0";
        sha256 = "1q44fb70r5m68dpwkj8r1jza05kpy97bvn0s20xnhfi8drfsifsl";
+       revision = "1";
+       editedCabalFile = "1b2iyg57rjf1j0whxvcyln3l907mxn6w3kyd41gmxz0gma9l0hn4";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -34858,6 +35604,8 @@ self: {
        pname = "amazonka-stepfunctions";
        version = "2.0";
        sha256 = "11ny95ki54sz8id3xck8r6x1ik2b2kwvz7mi5yhm4g1nhkpcacmc";
+       revision = "1";
+       editedCabalFile = "03bml48d7ib830vsmbfl7xf7a658r2qnh9abw4gbqhv741vxkkjv";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -34876,6 +35624,8 @@ self: {
        pname = "amazonka-storagegateway";
        version = "2.0";
        sha256 = "184pm7d4hyb7lic1hhlr7m428whp0nvsmp2a6k445wswrmlg49b7";
+       revision = "1";
+       editedCabalFile = "1ijhccifh5s6qpkhaldfv31hw339vg6c479d93vdsqz5n4vc08nl";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -34894,6 +35644,8 @@ self: {
        pname = "amazonka-sts";
        version = "2.0";
        sha256 = "1bhky6ajxyykz983wi22g0j3pj4xbwiqkjgw6z8hh2pdsgisg6cx";
+       revision = "1";
+       editedCabalFile = "04jxklmsqfk6vzp6c0vgqgishpaqlmfpnlimh1mkl0ny7d36i6cl";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -34912,6 +35664,8 @@ self: {
        pname = "amazonka-support";
        version = "2.0";
        sha256 = "1hacdj5xxp58zmldj1pwn7dbgxadsg98x9gd6kxz3p9hdckrmfqw";
+       revision = "1";
+       editedCabalFile = "0chgk6kqpq6mc9vvybrcvnbb99iqyzzb2kd13q3j2rs6vdfp96f0";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -34930,6 +35684,8 @@ self: {
        pname = "amazonka-support-app";
        version = "2.0";
        sha256 = "18sszvq0vyfwk0fasfi4f9cvgiypjvy7ig0z5i7s1scvv5n12vgy";
+       revision = "1";
+       editedCabalFile = "0a1ddxdv1d099xjs04y4sn3appplaab3mxrjkhww6kpaiwqacpc2";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -34948,6 +35704,8 @@ self: {
        pname = "amazonka-swf";
        version = "2.0";
        sha256 = "1fn159acy0xvy4al5xx73lyb4wjkvr4vsn9hbj0dd0xiblwwd2i3";
+       revision = "1";
+       editedCabalFile = "0x0ps52fv6asw1ri9csa7gd8hzvm4dc9zsr8hidlc3alhrvnbdav";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -34966,6 +35724,8 @@ self: {
        pname = "amazonka-synthetics";
        version = "2.0";
        sha256 = "1l2pf38xhmn2gp80ldj8bqr4szm411am5dj3cf0i2szw4r4xg2v0";
+       revision = "1";
+       editedCabalFile = "0mb6xykl4rzl57q1bqdjks16cbpyl7kfma6jhzh5l3i06vrs9r06";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -35005,6 +35765,8 @@ self: {
        pname = "amazonka-textract";
        version = "2.0";
        sha256 = "1n8dqwk92fs16hn80n34vp22wrs8kv89awy7hlf8z1b9ymgrl71y";
+       revision = "1";
+       editedCabalFile = "1xsrnm0hf7ibffyxyvrn516l8v30gjfw69kryhv1gczmcjx220i0";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -35023,6 +35785,8 @@ self: {
        pname = "amazonka-timestream-query";
        version = "2.0";
        sha256 = "0acq22hwn7zmcfq6rh2y0fxn25adg9sn4nq6shj0vf15fdm2vwja";
+       revision = "1";
+       editedCabalFile = "02w7sh89is6d6fv8p96cky7hifmic50h1sgfcqcviqjn9vhiyysv";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -35041,6 +35805,8 @@ self: {
        pname = "amazonka-timestream-write";
        version = "2.0";
        sha256 = "0hqyyxzgsg57l8wf2vyp5s8lrhjv4003vwd4jsin0gy95pjc398n";
+       revision = "1";
+       editedCabalFile = "03kv4nl2ixc5nwii783fsz4yvarxmdn49w33ld5xg32xp43j09nn";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -35059,6 +35825,8 @@ self: {
        pname = "amazonka-transcribe";
        version = "2.0";
        sha256 = "1kjnpqr36hv446aa7mvjx795zz4skx5zk759lhfj300cla2n9s6w";
+       revision = "1";
+       editedCabalFile = "0yvckwf2nr4l7wlpm86x4ygxs79kr7wyyxypsklzlvqcpxh3yiml";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -35077,6 +35845,8 @@ self: {
        pname = "amazonka-transfer";
        version = "2.0";
        sha256 = "154zjxmj2l5za6wy48a4zq6ij3gldbw333hdvxyqqpwqzfybai2y";
+       revision = "1";
+       editedCabalFile = "11fhwb7iqmyj8l2b2c5n8g2vp3albhlwnwnpnr3vh0w81z396bba";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -35095,6 +35865,8 @@ self: {
        pname = "amazonka-translate";
        version = "2.0";
        sha256 = "0k2m54bn35xfi7m91k65afzfw2166rklmlgm67zcg5kaygz2i9w6";
+       revision = "1";
+       editedCabalFile = "1s92drx11qaxc1k7yh6whmm1a0pxpipf97cckhq7c0hkkwyxs3cb";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -35113,6 +35885,8 @@ self: {
        pname = "amazonka-voice-id";
        version = "2.0";
        sha256 = "0v9qrgarrvi0zjsk7d80kididg96svd4j9bfyid1wc82bg7jgd0z";
+       revision = "1";
+       editedCabalFile = "02mmb4bacsmmaqjynfmpy4i7bkvl8cv0gyfykidr0fir3zdp3q2k";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -35131,6 +35905,8 @@ self: {
        pname = "amazonka-waf";
        version = "2.0";
        sha256 = "09439v5q6493nqa25dz8s2syvrm0qpxi8b7yxj24mb6kkppvl62k";
+       revision = "1";
+       editedCabalFile = "1lamlz59kjd02js43rzibyy1zm65kdq6fk9g91xvpg2dassrsd6h";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -35149,6 +35925,8 @@ self: {
        pname = "amazonka-waf-regional";
        version = "2.0";
        sha256 = "0rbchz42g5mqy9i2w58galylp2ma4yqd7dk2c2ww2wy9q747fsbg";
+       revision = "1";
+       editedCabalFile = "1n9ks0bzfn1xjw5p3lv5bvl1gd5wbhnmfsd6pal42fnj1037g9q9";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -35167,6 +35945,8 @@ self: {
        pname = "amazonka-wafv2";
        version = "2.0";
        sha256 = "0i5w9pb2anqlp79zr43cp7v4lqjd2qvxfhswa4zv82l2sjr151nj";
+       revision = "1";
+       editedCabalFile = "0ns9lss22bzr87ggwl74y7wighzl4ssrprmhgv0ihzxrf17z0w72";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -35185,6 +35965,8 @@ self: {
        pname = "amazonka-wellarchitected";
        version = "2.0";
        sha256 = "03696yd3w42cjdwphgxpl2ai5kn5gz3rm563h37jybk6pv4zii7j";
+       revision = "1";
+       editedCabalFile = "02c7gmdnb2nh5g3b3sr3yzspym8pkninlkmkrkklc5mmcnm61gnj";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -35203,6 +35985,8 @@ self: {
        pname = "amazonka-wisdom";
        version = "2.0";
        sha256 = "0cf2ynan4ws42acjlj56n8dd38n9kvvp4z41n07cjs50744mj56b";
+       revision = "1";
+       editedCabalFile = "1d9ih9x95w6cvihhzghpvlf6n78krb1r60lvilpdzd3i894qrxc9";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -35221,6 +36005,8 @@ self: {
        pname = "amazonka-workdocs";
        version = "2.0";
        sha256 = "1p21x9v2fkip1gbmq39cwp7y5cpvi60gadls35g01rv775la8vh3";
+       revision = "1";
+       editedCabalFile = "1yxg6iwa6il4vj2z37bbf6j9nvrx8jzv74x092skfw8gkx6c2l3l";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -35239,6 +36025,8 @@ self: {
        pname = "amazonka-worklink";
        version = "2.0";
        sha256 = "1k1bbmzxf4gfsaqc7fcvr2gb8hnmgw2cnpqvfnvppsczy65xs397";
+       revision = "1";
+       editedCabalFile = "1a0q03r9jqv7jdfpz00n3hxigwqff7x6vspdgra3a57jsjlyf9gg";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -35257,6 +36045,8 @@ self: {
        pname = "amazonka-workmail";
        version = "2.0";
        sha256 = "0ndc34s6lpk5xmrc3miaa5y09sg9v6k200h22mzixcy3zsbf5ljm";
+       revision = "1";
+       editedCabalFile = "1vw64fb64ich9bpyswf96xqvdfx14ka1phjkx68ic10kirpgv9yr";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -35275,6 +36065,8 @@ self: {
        pname = "amazonka-workmailmessageflow";
        version = "2.0";
        sha256 = "0yqqs52cswxx7q3jxqdlnzg10h3jh262ajwp4b7s9xj3xb8jc6pw";
+       revision = "1";
+       editedCabalFile = "10kxbd85c5j1ismd05ygx7v59hd84xvmcddih2ngjjbx30aw98zv";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -35293,6 +36085,8 @@ self: {
        pname = "amazonka-workspaces";
        version = "2.0";
        sha256 = "14acs6jg1i8a1kl2flssr2dz7a9hgwf656wkag82il3jshh4gw3a";
+       revision = "1";
+       editedCabalFile = "1d9gbmr4is5kc38cgacn6736lk66hj1sgpv6ks85lvcqfmpj1chc";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -35311,6 +36105,8 @@ self: {
        pname = "amazonka-workspaces-web";
        version = "2.0";
        sha256 = "17z2s2i7mq96hfdhz7cscayfijl4dj8ldx8h6yr08s2jfydd21p9";
+       revision = "1";
+       editedCabalFile = "0b5mhaahxravn1ilmf2kkgkq6f7immga1lrckhgpcp0a1b7ishbd";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -35329,6 +36125,8 @@ self: {
        pname = "amazonka-xray";
        version = "2.0";
        sha256 = "1dcxfv7bvznq31alyzlbfym5jynp6y008lv95xg6687d1jydxhq4";
+       revision = "1";
+       editedCabalFile = "0knb1315a3n2aw3xbylhpmq7j6n2blmysv74iarh65qfci6jsyw1";
        libraryHaskellDepends = [ amazonka-core base ];
        testHaskellDepends = [
          amazonka-core amazonka-test base bytestring case-insensitive tasty
@@ -36160,12 +36958,12 @@ self: {
        license = lib.licenses.bsd3;
      }) {};
 
-  "ansi-terminal_1_1" = callPackage
+  "ansi-terminal_1_1_1" = callPackage
     ({ mkDerivation, ansi-terminal-types, base, colour }:
      mkDerivation {
        pname = "ansi-terminal";
-       version = "1.1";
-       sha256 = "0lxjf546x2b382hhg8ws2ay9yhva9kk07ki8lmgpbndsprbn4paj";
+       version = "1.1.1";
+       sha256 = "0k5wl5b9bzvkgplg4rgsz92rkps18s1qy5p560ypzad5z36qyi3y";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [ ansi-terminal-types base colour ];
@@ -36184,6 +36982,8 @@ self: {
        pname = "ansi-terminal-game";
        version = "1.9.3.0";
        sha256 = "1yy7hzdcawdmwl8wqzabbamzjdg260xbwryj0hdjn7b0n6qlqymk";
+       revision = "1";
+       editedCabalFile = "0r2jm1yrprhh7wy06xxf3xw6m56wx5w4x3flig6cwgvgqk08py0s";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -37898,21 +38698,25 @@ self: {
      }) {};
 
   "apply-merge" = callPackage
-    ({ mkDerivation, base, containers, falsify, pqueue, tasty
-     , tasty-bench, tasty-expected-failure, tasty-hunit, transformers
-     , vector
+    ({ mkDerivation, base, containers, data-ordlist, pqueue, reflection
+     , tasty, tasty-bench, tasty-expected-failure, tasty-hunit
+     , tasty-quickcheck, transformers, vector
      }:
      mkDerivation {
        pname = "apply-merge";
-       version = "0.1.0.0";
-       sha256 = "1wkm96jhy9z0k3nyzba6x33r9nv69chsyd44srwpp3qryzm3884k";
-       libraryHaskellDepends = [ base containers pqueue ];
+       version = "0.1.1.0";
+       sha256 = "1snm9m35r3px9vgn64ygcqq37ay6jvwc5jsi3s62rxrh8biy8ir8";
+       revision = "1";
+       editedCabalFile = "0xlwl7ya683pf1zi478s0p10zn8pks56gmvfdagbxk8hapy4n6lp";
+       libraryHaskellDepends = [ base containers pqueue reflection ];
        testHaskellDepends = [
-         base containers falsify pqueue tasty tasty-expected-failure
-         tasty-hunit transformers vector
+         base containers data-ordlist pqueue reflection tasty
+         tasty-expected-failure tasty-hunit tasty-quickcheck transformers
+         vector
        ];
        benchmarkHaskellDepends = [
-         base containers pqueue tasty-bench transformers vector
+         base containers data-ordlist pqueue reflection tasty-bench
+         transformers vector
        ];
        description = "Lift a binary, non-decreasing function onto ordered lists and order the output";
        license = lib.licenses.bsd3;
@@ -40393,14 +41197,12 @@ self: {
      }) {inherit (pkgs) assimp;};
 
   "assoc" = callPackage
-    ({ mkDerivation, base, tagged }:
+    ({ mkDerivation, base }:
      mkDerivation {
        pname = "assoc";
-       version = "1.1";
-       sha256 = "1x0dyv2kg1yrhkbkw4a62ixc9xmag6a6685chsi4k79xidafd8ks";
-       revision = "1";
-       editedCabalFile = "0li6d6mm2cavdmabs9l1z3bjhq8qzrdbl6dzh672dxma2wfgvl2n";
-       libraryHaskellDepends = [ base tagged ];
+       version = "1.1.1";
+       sha256 = "1xhg7fqs8i067q2wmpma1yynsa9vbrhjh4pmbbcmv7zhzsvlj493";
+       libraryHaskellDepends = [ base ];
        description = "swap and assoc: Symmetric and Semigroupy Bifunctors";
        license = lib.licenses.bsd3;
      }) {};
@@ -41152,23 +41954,11 @@ self: {
     ({ mkDerivation, base, ghc-prim, primitive }:
      mkDerivation {
        pname = "atomic-primops";
-       version = "0.8.5";
-       sha256 = "07wbza3xrgxbbdajgayyvbdki69v12rz2z3yfiy0gf5dqfa5g98w";
-       libraryHaskellDepends = [ base ghc-prim primitive ];
-       description = "A safe approach to CAS and other atomic ops in Haskell";
-       license = lib.licenses.bsd3;
-     }) {};
-
-  "atomic-primops_0_8_6" = callPackage
-    ({ mkDerivation, base, ghc-prim, primitive }:
-     mkDerivation {
-       pname = "atomic-primops";
-       version = "0.8.6";
-       sha256 = "1cas7m0v94fkd1s7hqpl5vf270z5yjd4rnq0glkcz4gy44h06jyl";
+       version = "0.8.7";
+       sha256 = "1xwws46hwb0m2zqyllkb9rb0jjiqq0xp128dv03w3l5kz0ixk9jv";
        libraryHaskellDepends = [ base ghc-prim primitive ];
        description = "A safe approach to CAS and other atomic ops in Haskell";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
      }) {};
 
   "atomic-primops-foreign" = callPackage
@@ -42269,6 +43059,22 @@ self: {
        license = lib.licenses.mit;
      }) {};
 
+  "auto-update_0_2_0" = callPackage
+    ({ mkDerivation, base, exceptions, hspec, hspec-discover, HUnit
+     , retry
+     }:
+     mkDerivation {
+       pname = "auto-update";
+       version = "0.2.0";
+       sha256 = "13z0h0zjccf8fj0lfcbjhrzfpq1cw9kc9aciycs97lrr6iz7y6m2";
+       libraryHaskellDepends = [ base ];
+       testHaskellDepends = [ base exceptions hspec HUnit retry ];
+       testToolDepends = [ hspec-discover ];
+       description = "Efficiently run periodic, on-demand actions";
+       license = lib.licenses.mit;
+       hydraPlatforms = lib.platforms.none;
+     }) {};
+
   "autoapply" = callPackage
     ({ mkDerivation, base, Cabal, cabal-doctest, doctest, logict, mtl
      , template-haskell, th-desugar, transformers, unification-fd
@@ -42450,6 +43256,28 @@ self: {
        hydraPlatforms = lib.platforms.none;
      }) {};
 
+  "automaton" = callPackage
+    ({ mkDerivation, base, mmorph, MonadRandom, mtl, profunctors
+     , QuickCheck, selective, semialign, simple-affine-space, tasty
+     , tasty-hunit, tasty-quickcheck, these, transformers
+     }:
+     mkDerivation {
+       pname = "automaton";
+       version = "1.3";
+       sha256 = "04mgsc9cg1w9afica540mgxykdnid4d88j1dn3lnlsm2z3gkh2gx";
+       libraryHaskellDepends = [
+         base mmorph MonadRandom mtl profunctors selective semialign
+         simple-affine-space these transformers
+       ];
+       testHaskellDepends = [
+         base mmorph MonadRandom mtl profunctors QuickCheck selective
+         semialign simple-affine-space tasty tasty-hunit tasty-quickcheck
+         these transformers
+       ];
+       description = "Effectful streams and automata in initial encoding";
+       license = lib.licenses.mit;
+     }) {};
+
   "automitive-cse" = callPackage
     ({ mkDerivation, base, bytestring, cereal, cryptonite, memory
      , quickcheck-simple
@@ -44663,8 +45491,8 @@ self: {
        pname = "ban-instance";
        version = "0.1.0.1";
        sha256 = "0504qsjbqbrdf9avfrhs290baszc9dickx7wknbyxwrzpzzbpggk";
-       revision = "3";
-       editedCabalFile = "0lhzv5hvqahgqqdjmjfdd3qi2m5q48nf389d3xd96465dfmk1q39";
+       revision = "4";
+       editedCabalFile = "1ip2abbxnj2cwc3b0l88s0014zakx4g84ifnnaqq8rg6mcn5ppik";
        libraryHaskellDepends = [ base template-haskell ];
        testHaskellDepends = [ base ];
        description = "For when a type should never be an instance of a class";
@@ -44681,6 +45509,8 @@ self: {
        pname = "bank-holiday-germany";
        version = "1.3.0.0";
        sha256 = "1agf4flql5xkj2rpdbdxpmvajhigcwzbxsmrh76bckmcj2b38k9f";
+       revision = "1";
+       editedCabalFile = "15hkd2s9hd7xml0r8cq3apsnzh1a9k34vyljz7bfl811krx01f0j";
        libraryHaskellDepends = [ base time ];
        testHaskellDepends = [
          base doctest hedgehog hspec hspec-hedgehog time
@@ -44788,6 +45618,8 @@ self: {
        pname = "barbies-th";
        version = "0.1.11";
        sha256 = "0sg3c8m3jl1vifd60a5yac7lm4mygmdgg77z0idjik3cndijxdd8";
+       revision = "1";
+       editedCabalFile = "0h0hgs1wqqmhpigs2nwjflvvam3m7f9cmqpscrvpzadj4fp4i5nz";
        libraryHaskellDepends = [ barbies base split template-haskell ];
        testHaskellDepends = [ barbies base ];
        description = "Create strippable HKD via TH";
@@ -44977,6 +45809,18 @@ self: {
        license = lib.licenses.mit;
      }) {};
 
+  "base-compat_0_14_0" = callPackage
+    ({ mkDerivation, base, ghc-prim, unix }:
+     mkDerivation {
+       pname = "base-compat";
+       version = "0.14.0";
+       sha256 = "0l4wg4xna7dnphlzslbxvi4h2rm35pw0sdn9ivhynf6899kdwipi";
+       libraryHaskellDepends = [ base ghc-prim unix ];
+       description = "A compatibility layer for base";
+       license = lib.licenses.mit;
+       hydraPlatforms = lib.platforms.none;
+     }) {};
+
   "base-compat-batteries" = callPackage
     ({ mkDerivation, base, base-compat, ghc-prim, hspec, hspec-discover
      , QuickCheck
@@ -44992,6 +45836,22 @@ self: {
        license = lib.licenses.mit;
      }) {};
 
+  "base-compat-batteries_0_14_0" = callPackage
+    ({ mkDerivation, base, base-compat, ghc-prim, hspec, hspec-discover
+     , QuickCheck
+     }:
+     mkDerivation {
+       pname = "base-compat-batteries";
+       version = "0.14.0";
+       sha256 = "1qxbv7ywdr79bbi7py97k2ph1x6i9flw7kk6hmqrk00nzpqsbs1s";
+       libraryHaskellDepends = [ base base-compat ghc-prim ];
+       testHaskellDepends = [ base hspec QuickCheck ];
+       testToolDepends = [ hspec-discover ];
+       description = "base-compat with extra batteries";
+       license = lib.licenses.mit;
+       hydraPlatforms = lib.platforms.none;
+     }) {};
+
   "base-compat-migrate" = callPackage
     ({ mkDerivation, base, base-compat }:
      mkDerivation {
@@ -45083,8 +45943,8 @@ self: {
      }:
      mkDerivation {
        pname = "base-orphans";
-       version = "0.9.1";
-       sha256 = "0wpi3q4y9rhk5k9mz8bjy8qbl3pfxm4qqbxym3b15cn5haijvgsv";
+       version = "0.9.2";
+       sha256 = "14xsjwydcvghjdx6n24n398hw4ffk3xf9db1gil88nwm2q4r04b2";
        libraryHaskellDepends = [ base ghc-prim ];
        testHaskellDepends = [ base hspec QuickCheck ];
        testToolDepends = [ hspec-discover ];
@@ -45201,6 +46061,8 @@ self: {
        pname = "base32";
        version = "0.4";
        sha256 = "1m08m51d49lfs5rfc5kjj0g19xq53c2ldngcykld6a4ma0fqdrws";
+       revision = "1";
+       editedCabalFile = "080i61y2mzahrkvj27llybgc4g0kwf53j552y8g5pcpl45dshgvh";
        libraryHaskellDepends = [
          base bytestring deepseq text text-short
        ];
@@ -45769,8 +46631,6 @@ self: {
        ];
        description = "Basic examples and functions for generics-sop";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "basics" = callPackage
@@ -46481,8 +47341,6 @@ self: {
        ];
        description = "SQL DDL support and migrations support library for Beam";
        license = lib.licenses.mit;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "beam-mysql" = callPackage
@@ -46571,7 +47429,6 @@ self: {
        ];
        description = "Beam driver for SQLite";
        license = lib.licenses.mit;
-       hydraPlatforms = lib.platforms.none;
      }) {};
 
   "beam-th" = callPackage
@@ -46628,8 +47485,8 @@ self: {
      }:
      mkDerivation {
        pname = "bearriver";
-       version = "0.14.7";
-       sha256 = "1yxjqsy24af1i36haax1bqizmwgimqkgygwimqrcmbazmrjdcfj2";
+       version = "0.14.8";
+       sha256 = "06wnlshgf2anp3xg3vf0cz6lxjn0rpfvnjfn568dj007km8y2n9p";
        libraryHaskellDepends = [
          base deepseq dunai MonadRandom mtl simple-affine-space transformers
        ];
@@ -46661,8 +47518,8 @@ self: {
      }:
      mkDerivation {
        pname = "bech32";
-       version = "1.1.5";
-       sha256 = "0hcckmb09svpyk5wrb05vl144ap1dml17khb1bsr5jyp01yjdr7x";
+       version = "1.1.6";
+       sha256 = "03a0xf1c7zjirg4y3rv0frrqifzqsqx327hdcvxzbpgflwgs225h";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -46690,8 +47547,8 @@ self: {
      }:
      mkDerivation {
        pname = "bech32-th";
-       version = "1.1.5";
-       sha256 = "15k2ak8nkxanzcgl8wbsyan9aph5ci0f51zrzhyrrk1hnk70yj6w";
+       version = "1.1.6";
+       sha256 = "0y1hw7419sw84gs13wh40qj9m1snyz0ly5aasmkynjpb9ixhn54k";
        libraryHaskellDepends = [ base bech32 template-haskell text ];
        testHaskellDepends = [ base bech32 hspec template-haskell ];
        testToolDepends = [ hspec-discover ];
@@ -46739,7 +47596,6 @@ self: {
        ];
        description = "Bindings to the beeminder.com JSON API";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
      }) {};
 
   "bein" = callPackage
@@ -47852,6 +48708,8 @@ self: {
        pname = "binary-ext";
        version = "2.0.4";
        sha256 = "026y58an12p6cmpxhs3qrwl6w4q3i6i47svcj5qz5mi6vsdy2n3f";
+       revision = "1";
+       editedCabalFile = "174lqifn6j76rxrh3iv0ymvwa1j5p27xx6gjv30kknn5rfz4ph64";
        libraryHaskellDepends = [
          attoparsec base binary bytestring conduit conduit-combinators
          data-binary-ieee754 errors exceptions monad-control monad-loops
@@ -49696,8 +50554,8 @@ self: {
      }:
      mkDerivation {
        pname = "biscuit-haskell";
-       version = "0.3.0.0";
-       sha256 = "07n5s6rlalxq12ha8fk8j2ghq015p56n23pdp4y5ba3ax58lgg9b";
+       version = "0.3.0.1";
+       sha256 = "18fsm822zim0695aipnaq5h07j9gqwa1k30sgm36656j60m4rzk3";
        libraryHaskellDepends = [
          async base base16 base64 bytestring cereal containers cryptonite
          megaparsec memory mtl parser-combinators protobuf random regex-tdfa
@@ -49723,8 +50581,8 @@ self: {
      }:
      mkDerivation {
        pname = "biscuit-servant";
-       version = "0.3.0.0";
-       sha256 = "1dky9skcfd25pf0plfd5x7framqsvw98ab96xxmnsy6825h6qazd";
+       version = "0.3.0.1";
+       sha256 = "1fbsihvnw0nxq03mdgfv5jiypwvz2l43cmimn0nw48qdd9xc1922";
        libraryHaskellDepends = [
          base biscuit-haskell bytestring mtl servant-server text wai
        ];
@@ -50933,8 +51791,8 @@ self: {
        pname = "blank-canvas";
        version = "0.7.4";
        sha256 = "1qm0ms3jk8m5zv81lh3pn5n04afyq7bpn9lc137ddmm9blnkzndi";
-       revision = "2";
-       editedCabalFile = "1ksinbzz47750ka0cfam41v3pfqyw2dvzj8xypq6q317zjliicab";
+       revision = "4";
+       editedCabalFile = "0a74klkqfy2d9q7chvxwf0n2778wqgdw320rr7ivixlz6bjbwpqg";
        enableSeparateDataOutput = true;
        libraryHaskellDepends = [
          aeson base base-compat-batteries base64-bytestring bytestring
@@ -51035,6 +51893,8 @@ self: {
        pname = "blas-hs";
        version = "0.1.1.0";
        sha256 = "11mhjvqjnap4lj70f6lxjrjrdlkw8gnmd1lz4cfkjawq4w4npq40";
+       revision = "1";
+       editedCabalFile = "0q9rykvhw179vvdg361kkp7g6xw4139r3v4g06d3j4wyq3070m4j";
        libraryHaskellDepends = [ base storable-complex ];
        librarySystemDepends = [ blas ];
        testHaskellDepends = [ base vector ];
@@ -51735,6 +52595,24 @@ self: {
        broken = true;
      }) {};
 
+  "bloohm" = callPackage
+    ({ mkDerivation, base, bytestring, crypton, hedgehog, memory
+     , ReadArgs, serialport
+     }:
+     mkDerivation {
+       pname = "bloohm";
+       version = "1.0.0.2";
+       sha256 = "0jx3mrv9fzrybmz9szzxwwgzl85n1rn2gcjfdm3w5pr20x2lcgyg";
+       isLibrary = true;
+       isExecutable = true;
+       libraryHaskellDepends = [ base bytestring crypton memory ];
+       executableHaskellDepends = [ base bytestring ReadArgs serialport ];
+       testHaskellDepends = [ base hedgehog ];
+       description = "visual bloom filter for neotrellis m4 output";
+       license = lib.licenses.bsd3;
+       mainProgram = "bloohm";
+     }) {};
+
   "bloomfilter" = callPackage
     ({ mkDerivation, array, base, bytestring, deepseq, QuickCheck
      , random, test-framework, test-framework-quickcheck2
@@ -51918,22 +52796,40 @@ self: {
     ({ mkDerivation, bluefin-internal }:
      mkDerivation {
        pname = "bluefin";
-       version = "0.0.4.2";
-       sha256 = "08r1xma5kg7kcc88lflq59kz3qs1qix2pg4hq882pabis0lnwr64";
+       version = "0.0.6.0";
+       sha256 = "17w2830azxwals84hza77rpglz4bq6q3109h7wxnbvc9vcjy39ya";
        libraryHaskellDepends = [ bluefin-internal ];
        description = "The Bluefin effect system";
        license = lib.licenses.mit;
        maintainers = [ lib.maintainers.maralorn ];
      }) {};
 
+  "bluefin-algae" = callPackage
+    ({ mkDerivation, base, bluefin, bluefin-internal, tasty
+     , tasty-bench, tasty-hunit
+     }:
+     mkDerivation {
+       pname = "bluefin-algae";
+       version = "0.1.0.1";
+       sha256 = "1mf7sfa6fj18sdbi78imxr7p90m4aqsi22c4pk1g7spb1wgp9aw5";
+       libraryHaskellDepends = [ base bluefin bluefin-internal ];
+       testHaskellDepends = [
+         base bluefin tasty tasty-bench tasty-hunit
+       ];
+       description = "Algebraic effects and named handlers in Bluefin";
+       license = lib.licenses.mit;
+     }) {};
+
   "bluefin-internal" = callPackage
     ({ mkDerivation, base, monad-control, transformers
      , transformers-base, unliftio-core
      }:
      mkDerivation {
        pname = "bluefin-internal";
-       version = "0.0.4.2";
-       sha256 = "1jgql7bvv4zaqigafbrk3bydp2fyab0za5rpw7nz6fxvnxn3w9aj";
+       version = "0.0.6.0";
+       sha256 = "0z7c7aalgs02asqp2nz9f0hcdxgwyxd3qnklq5h73f2lkyy4qi3p";
+       revision = "1";
+       editedCabalFile = "0miyxxmdsyaq740na4z7a3qqjgcy8yvmx6sn9fjydlgsban37kdr";
        libraryHaskellDepends = [
          base monad-control transformers transformers-base unliftio-core
        ];
@@ -52046,8 +52942,8 @@ self: {
        pname = "bm";
        version = "0.2.0.0";
        sha256 = "17dnv1vdsh43nc8b0p92d01nz1zvxd9bfcghlz0w6c8wc5yflg31";
-       revision = "3";
-       editedCabalFile = "0nz83kp7gymlvnsap29ki2m6gy3aal902bazal5232slmsg49d7a";
+       revision = "4";
+       editedCabalFile = "11mj69y43chqr50m9g8shqdyc3q31hha9gjqx05dn1dnkz3xgzxb";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -52680,8 +53576,8 @@ self: {
      }:
      mkDerivation {
        pname = "boomerang";
-       version = "1.4.9.1";
-       sha256 = "0hcs9gwwmsq7m3hkk6akjdv6wiqdj2h6nmyjps6ilrcn14qbk5dp";
+       version = "1.4.9.2";
+       sha256 = "15y098dsbaxk6hyjziwc24yrhv0276jpr3ahp4zlgcyl3axpsncq";
        libraryHaskellDepends = [
          base mtl semigroups template-haskell text th-abstraction
        ];
@@ -53232,27 +54128,6 @@ self: {
        license = lib.licenses.bsd3;
      }) {};
 
-  "bower-json_1_0_0_1" = callPackage
-    ({ mkDerivation, aeson, aeson-better-errors, base, bytestring
-     , deepseq, ghc-prim, mtl, scientific, tasty, tasty-hunit, text
-     , transformers, unordered-containers, vector
-     }:
-     mkDerivation {
-       pname = "bower-json";
-       version = "1.0.0.1";
-       sha256 = "0wvygg3rdbxzrmr61a9w6ddv9pfric85ih8hnxyk0ydzn7i59abs";
-       libraryHaskellDepends = [
-         aeson aeson-better-errors base bytestring deepseq ghc-prim mtl
-         scientific text transformers unordered-containers vector
-       ];
-       testHaskellDepends = [
-         aeson base bytestring tasty tasty-hunit text unordered-containers
-       ];
-       description = "Read bower.json from Haskell";
-       license = lib.licenses.mit;
-       hydraPlatforms = lib.platforms.none;
-     }) {};
-
   "bower-json" = callPackage
     ({ mkDerivation, aeson, aeson-better-errors, base, bytestring
      , deepseq, ghc-prim, mtl, scientific, tasty, tasty-hunit, text
@@ -53292,17 +54167,17 @@ self: {
      }) {};
 
   "bowtie" = callPackage
-    ({ mkDerivation, base, bifunctors, comonad, mtl
-     , nonempty-containers, prettyprinter, recursion-schemes
-     , semigroupoids
+    ({ mkDerivation, base, bifunctors, comonad, dependent-map, mtl
+     , nonempty-containers, optics, prettyprinter, recursion-schemes
+     , semigroupoids, some
      }:
      mkDerivation {
        pname = "bowtie";
-       version = "0.3.1";
-       sha256 = "04g44lfvbnh84vqwf3mvqwgnxfbc4w8lhx2a6g9jxl79fbsdzpwa";
+       version = "0.4.0";
+       sha256 = "1azsd73srpq0ly25dj1in0fgv8ja1b0sx0q23hbw43af5y885k7s";
        libraryHaskellDepends = [
-         base bifunctors comonad mtl nonempty-containers prettyprinter
-         recursion-schemes semigroupoids
+         base bifunctors comonad dependent-map mtl nonempty-containers
+         optics prettyprinter recursion-schemes semigroupoids some
        ];
        description = "Tying knots in polynomial functors";
        license = lib.licenses.bsd3;
@@ -54249,8 +55124,8 @@ self: {
        pname = "brotli";
        version = "0.0.0.1";
        sha256 = "0fp8vhqzl6i1vvb4fw4zya6cgkzmj0yaaw94jdf2kggm3gn8zwfc";
-       revision = "4";
-       editedCabalFile = "1p6zr2yr1hd6k9vkpgwdidrkiykv09av2q77f37bfg0985b0xwpx";
+       revision = "5";
+       editedCabalFile = "06a4fsqw1xz4jmvfz4kybf1xg0l5w5klr77c5mibl39aafa0wnf5";
        libraryHaskellDepends = [ base bytestring transformers ];
        libraryPkgconfigDepends = [ brotli ];
        testHaskellDepends = [
@@ -54291,8 +55166,8 @@ self: {
        pname = "brotli-streams";
        version = "0.0.0.0";
        sha256 = "14jc1nhm50razsl99d95amdf4njf75dnzx8vqkihgrgp7qisyz3z";
-       revision = "8";
-       editedCabalFile = "05ri1yv1q2h0zlbcqgk1rpyb7p36zb6asrj6f3w0yyr4s5hsqwww";
+       revision = "9";
+       editedCabalFile = "1rhy0d1jy3v9r1skg3bdlnjj5avxy968ih1cyg9x9yb7rbyf3za5";
        libraryHaskellDepends = [ base brotli bytestring io-streams ];
        testHaskellDepends = [
          base bytestring HUnit io-streams QuickCheck test-framework
@@ -55239,8 +56114,8 @@ self: {
      }:
      mkDerivation {
        pname = "burrito";
-       version = "2.0.1.8";
-       sha256 = "0hr70nh6jqykm4shklgm58jv83xpna2x2k2d1lcyj1p3h5npsh5w";
+       version = "2.0.1.9";
+       sha256 = "0sz9j9yv7whwvxrnh4v3r5fz8z4v9c7c2s45kpvsgvshds9vbr7f";
        libraryHaskellDepends = [
          base bytestring containers parsec template-haskell text
          transformers
@@ -56187,8 +57062,8 @@ self: {
      }:
      mkDerivation {
        pname = "bytestring-lexing";
-       version = "0.5.0.11";
-       sha256 = "16qvykzai61dyc403cplxar8frd0p4x3681zrl874ck3c19qj0jw";
+       version = "0.5.0.12";
+       sha256 = "09g5x7jwz9kby578rlj8c6f6zi0pzs169rsqd1vsn3q9gimkpj3j";
        libraryHaskellDepends = [ base bytestring ];
        testHaskellDepends = [
          base bytestring tasty tasty-quickcheck tasty-smallcheck
@@ -56413,8 +57288,8 @@ self: {
      }:
      mkDerivation {
        pname = "bytestring-trie";
-       version = "0.2.7.2";
-       sha256 = "1xgm57s92x6n4vdlr8fyqjs5n3i30g4xq59sqygcr079h2qqy7l9";
+       version = "0.2.7.3";
+       sha256 = "0cxhsczvfn0cxh4mmhv70rskrc023gy0gl57xiggbf64ng5c60f7";
        libraryHaskellDepends = [ base binary bytestring deepseq ];
        testHaskellDepends = [
          base binary bytestring deepseq QuickCheck smallcheck tasty
@@ -56986,8 +57861,8 @@ self: {
     ({ mkDerivation, base, Cabal, filepath }:
      mkDerivation {
        pname = "cabal-appimage";
-       version = "0.4.0.2";
-       sha256 = "0hgf5zbidg0nwiyxiskjxpn1dll6zabry4miy06awqwx8zjf24hn";
+       version = "0.4.0.4";
+       sha256 = "02d1cdhcqk4mpx0wy9rxfr9wsh1a7pjjdq5l1p2r5l5f0rnhkrbs";
        libraryHaskellDepends = [ base Cabal filepath ];
        description = "Cabal support for creating AppImage applications";
        license = lib.licenses.agpl3Only;
@@ -57449,8 +58324,8 @@ self: {
      }:
      mkDerivation {
        pname = "cabal-fmt";
-       version = "0.1.11";
-       sha256 = "0ncgicdvajw83h1542vrw574ih3bx3j4pxk5fzjlxhhy2rfzwdvm";
+       version = "0.1.12";
+       sha256 = "0winl8dv8z0wp8jxh8fz05hb0dxndrn358vsrn5r08c4286v50g2";
        isLibrary = false;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -57506,13 +58381,13 @@ self: {
 
   "cabal-gild" = callPackage
     ({ mkDerivation, base, bytestring, Cabal-syntax, containers
-     , directory, exceptions, filepath, hspec, parsec, pretty, text
-     , transformers
+     , directory, exceptions, filepath, hspec, parsec, pretty, temporary
+     , text, transformers
      }:
      mkDerivation {
        pname = "cabal-gild";
-       version = "1.3.0.1";
-       sha256 = "18sa7c3rniczb218lzi9iizfi1czllp9hy4ai1djz4hvqvbmlh9r";
+       version = "1.3.1.0";
+       sha256 = "1ghrzw1fqslyhy9hmsmwwyv7kfbzf3bm9d0bzvf2k62s7yihrs4p";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -57521,7 +58396,8 @@ self: {
        ];
        executableHaskellDepends = [ base ];
        testHaskellDepends = [
-         base bytestring containers exceptions filepath hspec transformers
+         base bytestring containers directory exceptions filepath hspec
+         temporary transformers
        ];
        description = "Formats package descriptions";
        license = lib.licenses.mit;
@@ -57978,8 +58854,8 @@ self: {
      }:
      mkDerivation {
        pname = "cabal-plan-bounds";
-       version = "0.1.5.1";
-       sha256 = "11b0k5hm9hf4bnlyapb7a5r3gi1lgfn9pmsvb7b9asbkqyllf01a";
+       version = "0.1.6.1";
+       sha256 = "1xdn15k0crfvpfis3s8f0j6nqg2p3sbk0p0hqa2kmjvwnan274l4";
        isLibrary = false;
        isExecutable = true;
        executableHaskellDepends = [
@@ -58129,6 +59005,8 @@ self: {
        pname = "cabal-sort";
        version = "0.1.2";
        sha256 = "1pvqnviv1dv9fdaghj1rzyhjnbjymprypn595w1svl2x8ylzw871";
+       revision = "1";
+       editedCabalFile = "0d3744rxxi3l7csbkbcvc4npp9w5dp84p5wxiybpwh111pfhb4fx";
        isLibrary = false;
        isExecutable = true;
        executableHaskellDepends = [
@@ -58833,6 +59711,8 @@ self: {
        pname = "cacophony";
        version = "0.10.1";
        sha256 = "1w9v04mdyzvwndqfb8my9a82b51avgwfnl6g7w89xj37ax9ariaj";
+       revision = "1";
+       editedCabalFile = "0462qjh4qirgkr9v4fhjy28gc8pgnig1kmnrazfm2if2pqgbj0n7";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -59344,6 +60224,31 @@ self: {
        broken = true;
      }) {};
 
+  "call-alloy_0_5_0_1" = callPackage
+    ({ mkDerivation, async, base, bytestring, containers, directory
+     , exceptions, extra, file-embed, filepath, hspec, process, split
+     , string-interpolate, transformers, trifecta, unix
+     }:
+     mkDerivation {
+       pname = "call-alloy";
+       version = "0.5.0.1";
+       sha256 = "0c34yd6l0650qk760mmgsfgmwvhqhs43nzm7nhzkps5z1p966wmc";
+       enableSeparateDataOutput = true;
+       libraryHaskellDepends = [
+         async base bytestring containers directory exceptions extra
+         filepath process split transformers trifecta unix
+       ];
+       testHaskellDepends = [
+         async base bytestring containers directory exceptions extra
+         file-embed filepath hspec process split string-interpolate
+         transformers 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
@@ -59554,8 +60459,8 @@ self: {
      }:
      mkDerivation {
        pname = "candid";
-       version = "0.5.0.1";
-       sha256 = "1jml5q7ka7jcp9cy8s8zd126lk06c7g5qbgi58s70jypkilh552w";
+       version = "0.5.0.2";
+       sha256 = "1xj5p9qjwn24xrm2wkp2bz5wrkljrjzvqsfd8az09r0x1d3v62b7";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -60854,10 +61759,8 @@ self: {
      }:
      mkDerivation {
        pname = "cassava";
-       version = "0.5.3.0";
-       sha256 = "1gp954w05bj83z4i6isq2qxi1flqwppsgxxrp1f75mrs8cglbj5l";
-       revision = "5";
-       editedCabalFile = "081c6gzskkdvajc38f8ng8471d58a25k7wpl3azjviqm6vzfl2c4";
+       version = "0.5.3.1";
+       sha256 = "14kz47i6f9c747h2mf8cf6r22gib4a2ggh57fviz0z9sr6y760av";
        configureFlags = [ "-f-bytestring--lt-0_10_4" ];
        libraryHaskellDepends = [
          array attoparsec base bytestring containers deepseq hashable Only
@@ -61432,8 +62335,8 @@ self: {
      }:
      mkDerivation {
        pname = "cayley-client";
-       version = "0.4.19.3";
-       sha256 = "1qdjd20axridvb55x3j7bmqmfj4qkbpvz917lb10rxm2fzkyiyvn";
+       version = "0.4.19.4";
+       sha256 = "06lhiyk6a77dy1cw7q240yz4yj8x3haqyp1sqdqz5z20pw1a3340";
        libraryHaskellDepends = [
          aeson attoparsec base binary bytestring exceptions http-client
          http-conduit lens lens-aeson mtl text transformers
@@ -61502,9 +62405,7 @@ self: {
        ];
        description = "A tool for manipulating CBOR";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
        mainProgram = "cbor-tool";
-       broken = true;
      }) {};
 
   "cborg" = callPackage
@@ -63517,7 +64418,7 @@ self: {
        license = lib.licenses.bsd3;
      }) {};
 
-  "chimera_0_4_0_0" = callPackage
+  "chimera_0_4_1_0" = callPackage
     ({ mkDerivation, adjunctions, base, distributive, infinite-list
      , mtl, primitive, QuickCheck, random, tasty, tasty-bench
      , tasty-hunit, tasty-quickcheck, tasty-smallcheck, transformers
@@ -63525,15 +64426,15 @@ self: {
      }:
      mkDerivation {
        pname = "chimera";
-       version = "0.4.0.0";
-       sha256 = "0fwwirx911421d48p0hsd8r2hhik1hsf8z7gqysd0cr2riz4b6q7";
+       version = "0.4.1.0";
+       sha256 = "1wxw0d9dq7q3a9rn3h69yjiyi94xhyip1ssii982rm35jsywak49";
        libraryHaskellDepends = [
          adjunctions base distributive infinite-list mtl primitive
          transformers vector
        ];
        testHaskellDepends = [
-         base QuickCheck tasty tasty-hunit tasty-quickcheck tasty-smallcheck
-         vector
+         base infinite-list QuickCheck tasty tasty-hunit tasty-quickcheck
+         tasty-smallcheck vector
        ];
        benchmarkHaskellDepends = [
          base mtl random tasty tasty-bench vector
@@ -63941,10 +64842,8 @@ self: {
     ({ mkDerivation, base, Cabal, chs-deps }:
      mkDerivation {
        pname = "chs-cabal";
-       version = "0.1.1.1";
-       sha256 = "0fvf26394rpn9g4f3rp13bq8rrhzs9d95k7nbcpayzml2j9rsv3l";
-       revision = "2";
-       editedCabalFile = "1vv61klw11fhnn5ki0z2x0k6d7vvj622bjj05mdlx8sdjqijlbgd";
+       version = "0.1.1.2";
+       sha256 = "1qh234dx3d3l3nxb67alv0ggwqipp1502krq11fgq3hp0jhcm8b8";
        libraryHaskellDepends = [ base Cabal chs-deps ];
        description = "Cabal with c2hs dependencies";
        license = lib.licenses.bsd3;
@@ -65017,8 +65916,8 @@ self: {
        pname = "clash-ghc";
        version = "1.8.1";
        sha256 = "1xjf3z043sn7r35pkbpyxl4agyl2hz3mj7iikridxsddjqrmr5y4";
-       revision = "1";
-       editedCabalFile = "19pknfpjzp8bazxqdrdbbrz4dcrzrryps063x0ga7zfiw25xrjg0";
+       revision = "2";
+       editedCabalFile = "1lfmpcrysy7sbgmmls8f1mf6imdccdjhnvscvxg9nh329jp7gpxh";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -65055,8 +65954,8 @@ self: {
        pname = "clash-lib";
        version = "1.8.1";
        sha256 = "1s31d0pdzm5zk62gz4g1xp2yalyal2gk3n46y2rwpxl440mchyy5";
-       revision = "1";
-       editedCabalFile = "02iy7jxsixgzl8kpjvpz2zc5aiy9ran9lgmslyadw8wvw9x9l7ri";
+       revision = "2";
+       editedCabalFile = "1b096jx3hqhfhp21y00ayn6l04c29bskb6c96jnn4nckx9gpvq25";
        isLibrary = true;
        isExecutable = true;
        enableSeparateDataOutput = true;
@@ -65142,8 +66041,8 @@ self: {
        pname = "clash-prelude";
        version = "1.8.1";
        sha256 = "13y43lsw55jpmr04x6yrrppma9qdqzlvrwbs4jkvc3g7jmydnb3y";
-       revision = "1";
-       editedCabalFile = "0jxlb59ln47gzwmrwl777rr0mcrlhg964l2q454qvbhfvv15iny0";
+       revision = "2";
+       editedCabalFile = "1c5sj63rsdb29d837j0y9r6m1zlycnl7m70984a2wz2kyl15wcw5";
        libraryHaskellDepends = [
          array arrows base binary bytestring constraints containers
          data-binary-ieee754 data-default-class deepseq extra ghc-bignum
@@ -65279,8 +66178,8 @@ self: {
      }:
      mkDerivation {
        pname = "clashilator";
-       version = "0.1.3";
-       sha256 = "00w9jm0pq2sxd1pv3fgxflbv7gwawiqicmf8q5jx7l3lwccha718";
+       version = "0.1.4";
+       sha256 = "1221csxfv7m95c782l85aww9mjxfj7x7snpc451j13qv37ia62cn";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -66114,8 +67013,6 @@ self: {
        ];
        description = "Miscellaneous utilities for building and working with command line interfaces";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "cli-git" = callPackage
@@ -66132,7 +67029,6 @@ self: {
        ];
        description = "Bindings to the git command-line interface";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
      }) {};
 
   "cli-nix" = callPackage
@@ -66149,7 +67045,6 @@ self: {
        ];
        description = "Bindings to the nix command-line interface";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
      }) {};
 
   "cli-setup" = callPackage
@@ -68817,8 +69712,8 @@ self: {
        pname = "colourista";
        version = "0.1.0.2";
        sha256 = "0g06116kjg9pbp0l7n33agqbks3kw5z4rjqyhylha8miah5sxbwn";
-       revision = "4";
-       editedCabalFile = "18g0am78dw8h3xpl01ilzii0hdrm2a4hc7qnn6pwag9wasbc1dl7";
+       revision = "5";
+       editedCabalFile = "1388d2hd4kv6d99mfvif8iivb9kwai4dcnm3s9a6x91sz4zkzj2y";
        libraryHaskellDepends = [ ansi-terminal base bytestring text ];
        testHaskellDepends = [ base bytestring hspec text ];
        description = "Convenient interface for printing colourful messages";
@@ -69899,8 +70794,8 @@ self: {
     ({ mkDerivation, base, containers, hspec, QuickCheck, vector }:
      mkDerivation {
        pname = "compactmap";
-       version = "0.1.4.3";
-       sha256 = "0c02gkshlm1dppqzws3yg96h3k8jpkvbqi461509b1hbxzg04m27";
+       version = "0.1.4.4";
+       sha256 = "0ipa92sidhj154mslis6s33sn55x2n6kqqfnd9qgxlns0srsr75n";
        libraryHaskellDepends = [ base vector ];
        testHaskellDepends = [ base containers hspec QuickCheck ];
        description = "A read-only memory-efficient key-value store";
@@ -71354,8 +72249,8 @@ self: {
      }:
      mkDerivation {
        pname = "concurrent-output";
-       version = "1.10.20";
-       sha256 = "1ji1fh0dd2wl9vi9y9205hr49wjakrx5iwkk84idb7pvjnmba8wf";
+       version = "1.10.21";
+       sha256 = "04mmlfgamhki4fgi8cxjdqlmxif32d5dkrimzlwka0m18fpz682a";
        libraryHaskellDepends = [
          ansi-terminal async base directory exceptions process stm
          terminal-size text transformers unix
@@ -73295,17 +74190,28 @@ self: {
        license = lib.licenses.bsd3;
      }) {};
 
+  "constraint-tuples_0_2" = callPackage
+    ({ mkDerivation, base, ghc-prim }:
+     mkDerivation {
+       pname = "constraint-tuples";
+       version = "0.2";
+       sha256 = "0zysck5pz4yd3dpdhr2c5z0r251915vbphilzpcfhys4g79gi47n";
+       libraryHaskellDepends = [ base ghc-prim ];
+       description = "Partially applicable constraint tuples";
+       license = lib.licenses.bsd3;
+       hydraPlatforms = lib.platforms.none;
+     }) {};
+
   "constraints" = callPackage
     ({ mkDerivation, base, binary, boring, deepseq, ghc-prim, hashable
-     , hspec, hspec-discover, mtl, transformers, type-equality
+     , hspec, hspec-discover, mtl, transformers
      }:
      mkDerivation {
        pname = "constraints";
-       version = "0.14";
-       sha256 = "19f4rprxzlddc2w66ib612lfvz9vh979xvffyimnn3zdphm342dq";
+       version = "0.14.2";
+       sha256 = "1y0rzl41wwkr3gqzf3ymf0mns86qkafamqindvcfq1qqbn09y92g";
        libraryHaskellDepends = [
          base binary boring deepseq ghc-prim hashable mtl transformers
-         type-equality
        ];
        testHaskellDepends = [ base hspec ];
        testToolDepends = [ hspec-discover ];
@@ -74584,8 +75490,8 @@ self: {
      }:
      mkDerivation {
        pname = "copilot";
-       version = "3.19";
-       sha256 = "0xk31la8rkar6kigb0naydi120gibsq75qgi138xhr8nw8ckafci";
+       version = "3.19.1";
+       sha256 = "0gwlfp4zb2zg1kqcy3j255c0cl1b956h1725c6kpfrs5ix3pgiyw";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -74629,8 +75535,8 @@ self: {
      }:
      mkDerivation {
        pname = "copilot-c99";
-       version = "3.19";
-       sha256 = "1k7ahd0wc5g30xw2aj17wqmias7dnlpq7lwix6y1gjlmly6qk23d";
+       version = "3.19.1";
+       sha256 = "10xyanmvvzbmp06xh8mj33xdxicalzbfjb7zjflw24xsq37c6798";
        libraryHaskellDepends = [
          base copilot-core directory filepath language-c99
          language-c99-simple mtl pretty
@@ -74668,8 +75574,8 @@ self: {
      }:
      mkDerivation {
        pname = "copilot-core";
-       version = "3.19";
-       sha256 = "1iczns7vz2fdx0x8g0ipkzpq8pfwc5866rd2v4rj8hi61z19rzwj";
+       version = "3.19.1";
+       sha256 = "177gnfsrrlrw44faxdfi4v25j9i697b5p9k8mqx8qya7hg780xh6";
        libraryHaskellDepends = [ base ];
        testHaskellDepends = [
          base HUnit QuickCheck test-framework test-framework-hunit
@@ -74703,8 +75609,8 @@ self: {
      }:
      mkDerivation {
        pname = "copilot-interpreter";
-       version = "3.19";
-       sha256 = "0fqcybvdfnzhnf3lifzzhc1pl8y63pf518hpp9i3gms4a6742hqq";
+       version = "3.19.1";
+       sha256 = "1f3qgh2ixsycbwql82yj6zr63n0j82cdq8vn2pfngaxncbqh9y7i";
        libraryHaskellDepends = [ base copilot-core pretty ];
        testHaskellDepends = [
          base copilot-core copilot-prettyprinter pretty QuickCheck
@@ -74722,8 +75628,8 @@ self: {
      }:
      mkDerivation {
        pname = "copilot-language";
-       version = "3.19";
-       sha256 = "1xjdzbs6m7rkggl4wnziq54wz8vc98d4y3zaalh2mynvnf8crjy7";
+       version = "3.19.1";
+       sha256 = "1617msbq9vap7j615rjh81iyajdjnmxpcbw9fsfvlnchx5mgy5vk";
        libraryHaskellDepends = [
          array base containers copilot-core copilot-interpreter
          copilot-theorem data-reify mtl
@@ -74744,8 +75650,8 @@ self: {
      }:
      mkDerivation {
        pname = "copilot-libraries";
-       version = "3.19";
-       sha256 = "06qxwxh17bfnp4mmak29894ynmhcvwj665pqkfs4wrzby2kc6rnm";
+       version = "3.19.1";
+       sha256 = "0fa5k7igvrcn7fwwmngb160kyc4acn60zpknj5rb4yp1x4qrcl3w";
        libraryHaskellDepends = [
          base containers copilot-language mtl parsec
        ];
@@ -74762,8 +75668,8 @@ self: {
     ({ mkDerivation, base, copilot-core, pretty }:
      mkDerivation {
        pname = "copilot-prettyprinter";
-       version = "3.19";
-       sha256 = "1mznr0g2fnxgy1igjc3vhgg8wjazvfvwkycq5ymcq9fwf6np6v54";
+       version = "3.19.1";
+       sha256 = "1z0yrxx43jvigqikrkmxpxpw3vhgxrkyq87rplx9gzkwaz9dspa1";
        libraryHaskellDepends = [ base copilot-core pretty ];
        description = "A prettyprinter of Copilot Specifications";
        license = lib.licenses.bsd3;
@@ -74794,8 +75700,8 @@ self: {
      }:
      mkDerivation {
        pname = "copilot-theorem";
-       version = "3.19";
-       sha256 = "1iwigl5q5b5mjdqchb3p62cak2gfbii673ildxndrrgwss5ldga8";
+       version = "3.19.1";
+       sha256 = "0qqf301rngcgqp7pwlc6h9sp9ysy1n9jy3shdnzp0qdxgl3w49rh";
        libraryHaskellDepends = [
          base bimap bv-sized containers copilot-core copilot-prettyprinter
          data-default directory libBF mtl panic parameterized-utils parsec
@@ -75223,6 +76129,44 @@ self: {
        license = "BSD-2-Clause-Patent";
      }) {};
 
+  "cornelis" = callPackage
+    ({ mkDerivation, aeson, async, base, bytestring, containers
+     , diff-loc, directory, filepath, fingertree, generic-lens, hspec
+     , lens, levenshtein, megaparsec, mtl, nvim-hs, nvim-hs-contrib
+     , prettyprinter, process, QuickCheck, random, resourcet, temporary
+     , text, transformers, unagi-chan, unliftio-core, vector
+     }:
+     mkDerivation {
+       pname = "cornelis";
+       version = "0.2.0.0";
+       sha256 = "10frpbc0944pv5vc4qlh5blww8z5y6318gb5lhlrm3pm28sbxy1k";
+       isLibrary = true;
+       isExecutable = true;
+       libraryHaskellDepends = [
+         aeson async base bytestring containers diff-loc directory filepath
+         fingertree generic-lens hspec lens levenshtein megaparsec mtl
+         nvim-hs nvim-hs-contrib prettyprinter process QuickCheck random
+         resourcet text transformers unagi-chan unliftio-core vector
+       ];
+       executableHaskellDepends = [
+         aeson async base bytestring containers diff-loc directory filepath
+         fingertree generic-lens hspec lens levenshtein megaparsec mtl
+         nvim-hs nvim-hs-contrib prettyprinter process QuickCheck random
+         resourcet text transformers unagi-chan unliftio-core vector
+       ];
+       testHaskellDepends = [
+         aeson async base bytestring containers diff-loc directory filepath
+         fingertree generic-lens hspec lens levenshtein megaparsec mtl
+         nvim-hs nvim-hs-contrib prettyprinter process QuickCheck random
+         resourcet temporary text transformers unagi-chan unliftio-core
+         vector
+       ];
+       license = lib.licenses.bsd3;
+       hydraPlatforms = lib.platforms.none;
+       mainProgram = "cornelis";
+       broken = true;
+     }) {};
+
   "coroutine-enumerator" = callPackage
     ({ mkDerivation, base, enumerator, monad-coroutine }:
      mkDerivation {
@@ -76167,6 +77111,28 @@ self: {
        mainProgram = "crackNum";
      }) {};
 
+  "cradle" = callPackage
+    ({ mkDerivation, base, bytestring, directory, filepath, hspec
+     , hspec-discover, interpolate, markdown-unlit, mockery, process
+     , silently, string-conversions, text, transformers
+     }:
+     mkDerivation {
+       pname = "cradle";
+       version = "0.0.0.0";
+       sha256 = "0jg55pw46wwgvl8aq76x31da67jm295m9ja06m27ryyviji6dz1s";
+       libraryHaskellDepends = [
+         base bytestring process string-conversions text
+       ];
+       testHaskellDepends = [
+         base bytestring directory filepath hspec hspec-discover interpolate
+         markdown-unlit mockery process silently string-conversions text
+         transformers
+       ];
+       testToolDepends = [ hspec-discover markdown-unlit ];
+       description = "A simpler process library";
+       license = lib.licenses.bsd3;
+     }) {};
+
   "craft" = callPackage
     ({ mkDerivation, aeson, aeson-pretty, ansi-terminal, async, base
      , bytestring, conduit, conduit-combinators, conduit-extra
@@ -76361,14 +77327,14 @@ self: {
        broken = true;
      }) {};
 
-  "crc32c_0_2_0" = callPackage
+  "crc32c_0_2_1" = callPackage
     ({ mkDerivation, base, bytestring, criterion, hspec, hspec-core
      , QuickCheck
      }:
      mkDerivation {
        pname = "crc32c";
-       version = "0.2.0";
-       sha256 = "00k8mrlzhxmc8v0vz98ykq3p475896bnkfawb19xw7kjb6i3ygz0";
+       version = "0.2.1";
+       sha256 = "1w0zp11l6dd5harn3g3hv1zhcdd7wrx005cvwvf2c652k8dl42wf";
        libraryHaskellDepends = [ base bytestring ];
        testHaskellDepends = [
          base bytestring hspec hspec-core QuickCheck
@@ -76667,6 +77633,8 @@ self: {
        pname = "criterion";
        version = "1.6.3.0";
        sha256 = "18lvvsgd9wwffmq00hqspjqk71njaw9ia6j5n930rpvab7i125y3";
+       revision = "1";
+       editedCabalFile = "1576v10909fxizrjzszfj6h8r0j3vlsxpnm5ldarihv8xmnikyb2";
        isLibrary = true;
        isExecutable = true;
        enableSeparateDataOutput = true;
@@ -76742,8 +77710,8 @@ self: {
      }:
      mkDerivation {
        pname = "criterion-measurement";
-       version = "0.2.1.0";
-       sha256 = "19gd7rqyibl2fhh6i0kj8d3y0pxc8wl7ag6bq5maaj5y24p85knx";
+       version = "0.2.2.0";
+       sha256 = "1kcy8n80kinf8ypan25q61ah99h8v9xrcm6fimp46ky0civ8c089";
        libraryHaskellDepends = [
          aeson base base-compat binary containers deepseq ghc-prim vector
        ];
@@ -77716,8 +78684,8 @@ self: {
        pname = "cryptohash-md5";
        version = "0.11.101.0";
        sha256 = "018g13hkmq5782i24b4518hcd926fl6x6fh5hd7b9wlxwc5dn21v";
-       revision = "3";
-       editedCabalFile = "1v7gv0xa9yfkxq3g9j79ppzn6hjf467aajzb4x5882yflibfi9ki";
+       revision = "4";
+       editedCabalFile = "1m077jax8jz68i9c0nl27465qmcww97wziwmy8apxcfkgfifzlx6";
        libraryHaskellDepends = [ base bytestring ];
        testHaskellDepends = [
          base base16-bytestring bytestring pureMD5 tasty tasty-hunit
@@ -77736,8 +78704,8 @@ self: {
        pname = "cryptohash-sha1";
        version = "0.11.101.0";
        sha256 = "0h9jl9v38gj0vnscqx7xdklk634p05fa6z2pcvknisq2mnbjq154";
-       revision = "3";
-       editedCabalFile = "08f68cjmdrwx76id4hcyp3jxs8dsnb1jv9pfkm5x7gsvxmrk6pdw";
+       revision = "4";
+       editedCabalFile = "1m0q2zmljjxr1v5szzb7xlbf2gnmaxnsgbvr9v3lgy3az192gdjr";
        libraryHaskellDepends = [ base bytestring ];
        testHaskellDepends = [
          base base16-bytestring bytestring SHA tasty tasty-hunit
@@ -77756,8 +78724,8 @@ self: {
        pname = "cryptohash-sha256";
        version = "0.11.102.1";
        sha256 = "1xkb7iqplbw4fy1122p79xf1zcb7k44rl0wmfj1q06l7cdqxr9vk";
-       revision = "3";
-       editedCabalFile = "1204ybm4685yc78mpyriwbplg3ppciid3g1b79562zwqc58hdnq3";
+       revision = "4";
+       editedCabalFile = "1gdc6clkyx5dlf8g9pn8gbknvwjjhbnm1sy6pai7rarvgdm7a390";
        configureFlags = [ "-fuse-cbits" ];
        isLibrary = true;
        isExecutable = true;
@@ -77779,8 +78747,8 @@ self: {
        pname = "cryptohash-sha512";
        version = "0.11.102.0";
        sha256 = "0b48qwgyn68rfbq4fh6fmsk1kc07n8qq95217n8gjnlzvsh2395z";
-       revision = "2";
-       editedCabalFile = "1v1d8bv54vwwz31z8pdni6pa5lzm5zaxkzdg0857jzghzkdzg7d5";
+       revision = "3";
+       editedCabalFile = "0n2b0q0a45vrklg69qa4rblijg9j87lqm1v4r3rwkqgl9y2f5bq1";
        libraryHaskellDepends = [ base bytestring ];
        testHaskellDepends = [
          base base16-bytestring bytestring SHA tasty tasty-hunit
@@ -77908,6 +78876,29 @@ self: {
        license = lib.licenses.bsd3;
      }) {};
 
+  "crypton_1_0_0" = callPackage
+    ({ mkDerivation, base, basement, bytestring, deepseq, gauge
+     , ghc-prim, integer-gmp, memory, random, tasty, tasty-hunit
+     , tasty-kat, tasty-quickcheck
+     }:
+     mkDerivation {
+       pname = "crypton";
+       version = "1.0.0";
+       sha256 = "1q1kv37hv8cl6hykvssbd4hsd0zj8a562q42jr2gwk59lnwklhcx";
+       libraryHaskellDepends = [
+         base basement bytestring deepseq ghc-prim integer-gmp memory
+       ];
+       testHaskellDepends = [
+         base bytestring memory tasty tasty-hunit tasty-kat tasty-quickcheck
+       ];
+       benchmarkHaskellDepends = [
+         base bytestring deepseq gauge memory random
+       ];
+       description = "Cryptography Primitives sink";
+       license = lib.licenses.bsd3;
+       hydraPlatforms = lib.platforms.none;
+     }) {};
+
   "crypton-conduit" = callPackage
     ({ mkDerivation, base, bytestring, conduit, conduit-combinators
      , conduit-extra, crypton, exceptions, memory, resourcet, tasty
@@ -77956,8 +78947,8 @@ self: {
        pname = "crypton-x509";
        version = "1.7.6";
        sha256 = "1zyaz0krf08g36g30zr5wn8f2x51l4dj2zcjnhpiw9h05p54mdzb";
-       revision = "1";
-       editedCabalFile = "10a2x47znhbayyfr6fqgq27623akpycyjbfxz4hnavavf1x6ary5";
+       revision = "2";
+       editedCabalFile = "1bbn2yv2ldld1cszmq5bq6wplj53ssw2s24xb44c8lirlwrz59hr";
        libraryHaskellDepends = [
          asn1-encoding asn1-parse asn1-types base bytestring containers
          crypton hourglass memory pem transformers
@@ -78128,8 +79119,8 @@ self: {
      }:
      mkDerivation {
        pname = "cryptostore";
-       version = "0.3.0.1";
-       sha256 = "0f88shhy9b0yxvifb5jpk2jywqdafz4r1djihwqaia6q6k0mjvi8";
+       version = "0.3.1.0";
+       sha256 = "0fqwzhk2zqfl6313sd77a9rkx98f5q8582ay0qkkjqx1ni719kvi";
        libraryHaskellDepends = [
          asn1-encoding asn1-types base basement bytestring cryptonite
          hourglass memory pem x509 x509-validation
@@ -79033,8 +80024,8 @@ self: {
     ({ mkDerivation, base, parsec, text }:
      mkDerivation {
        pname = "curly-expander";
-       version = "0.3.0.2";
-       sha256 = "0ag6yqg260y9hal6kzp3phsfa3rwj6lxd8g6k85x81s2lilxgynx";
+       version = "0.3.0.4";
+       sha256 = "1rj50nyf50723cxb3sglz6dzh2f8sdww57p09wbj8z52ggvr0asi";
        libraryHaskellDepends = [ base parsec text ];
        testHaskellDepends = [ base parsec text ];
        description = "Curly braces (brackets) expanding";
@@ -79951,6 +80942,23 @@ self: {
        broken = true;
      }) {};
 
+  "dani-servant-lucid2" = callPackage
+    ({ mkDerivation, base, http-media, http-types, lucid2, servant
+     , servant-server
+     }:
+     mkDerivation {
+       pname = "dani-servant-lucid2";
+       version = "0.1.0.0";
+       sha256 = "0zgxzc6gfkhfv873bdvwqaw2f7fqyqk94ayacnnbi4ml55mypx3v";
+       libraryHaskellDepends = [
+         base http-media http-types lucid2 servant servant-server
+       ];
+       testHaskellDepends = [ base http-media lucid2 servant-server ];
+       doHaddock = false;
+       description = "Servant support for lucid2";
+       license = lib.licenses.bsd3;
+     }) {};
+
   "danibot" = callPackage
     ({ mkDerivation, aeson, async, attoparsec, base, bytestring
      , conceit, containers, foldl, lens, lens-aeson, monoid-subclasses
@@ -81338,10 +82346,8 @@ self: {
     ({ mkDerivation, base, deepseq, hashable }:
      mkDerivation {
        pname = "data-fix";
-       version = "0.3.2";
-       sha256 = "1k0rcbb6dzv0ggdxqa2bh4jr829y0bczjrg98mrk5733q0xjs5rs";
-       revision = "5";
-       editedCabalFile = "1waspjvz1r21r7ax6b2ni5wmbg6diky70s0iv18kpjlanvw6yzfd";
+       version = "0.3.3";
+       sha256 = "0bnalsgmc6z6l5dbhb2zrs78jsybf10rsw9zqi808h2mwvcnv6qp";
        libraryHaskellDepends = [ base deepseq hashable ];
        description = "Fixpoint data types";
        license = lib.licenses.bsd3;
@@ -81966,8 +82972,8 @@ self: {
        pname = "data-reify";
        version = "0.6.3";
        sha256 = "1sacbil9xn1n2085wpa0dq7ikf1wvh2kkddnvmwsp22ssx059h55";
-       revision = "2";
-       editedCabalFile = "1ajrndp9251b3pnfm2g56pdp4jynlgbyd8i3qjlsi3wqpngwlhw6";
+       revision = "3";
+       editedCabalFile = "0mr1926a4jniy16lsj8a3s8irxlihi0j9vnbpzggfxidxys6z93w";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -83164,8 +84170,8 @@ self: {
      }:
      mkDerivation {
        pname = "dbus";
-       version = "1.3.2";
-       sha256 = "0g73fps81nibg9y2lnakrg57ndk4gpcjw3cnqfcns085h8d6dmxg";
+       version = "1.3.3";
+       sha256 = "13jbsdpkhscb017hpy24xsqwqjjphyw6pdvamr6qf2d5pdzi2rm2";
        libraryHaskellDepends = [
          base bytestring cereal conduit containers deepseq exceptions
          filepath lens network parsec random split template-haskell text
@@ -83182,6 +84188,34 @@ self: {
        license = lib.licenses.asl20;
      }) {};
 
+  "dbus_1_3_5" = callPackage
+    ({ mkDerivation, base, bytestring, cereal, conduit, containers
+     , criterion, deepseq, directory, exceptions, extra, filepath, lens
+     , network, parsec, process, QuickCheck, random, resourcet, split
+     , tasty, tasty-hunit, tasty-quickcheck, template-haskell, temporary
+     , text, th-lift, transformers, unix, vector, xml-conduit, xml-types
+     }:
+     mkDerivation {
+       pname = "dbus";
+       version = "1.3.5";
+       sha256 = "1w44asxpvgxpn0rmqagyy25b9in0dy6vis6930q7188pzxlz8q9f";
+       libraryHaskellDepends = [
+         base bytestring cereal conduit containers deepseq exceptions
+         filepath lens network parsec random split template-haskell text
+         th-lift transformers unix vector xml-conduit xml-types
+       ];
+       testHaskellDepends = [
+         base bytestring cereal containers directory extra filepath network
+         parsec process QuickCheck random resourcet tasty tasty-hunit
+         tasty-quickcheck temporary text transformers unix vector
+       ];
+       benchmarkHaskellDepends = [ base criterion ];
+       doCheck = false;
+       description = "A client library for the D-Bus IPC system";
+       license = lib.licenses.asl20;
+       hydraPlatforms = lib.platforms.none;
+     }) {};
+
   "dbus-app-launcher" = callPackage
     ({ mkDerivation, base, containers, dbus, extra, unix }:
      mkDerivation {
@@ -84861,8 +85895,8 @@ self: {
      }:
      mkDerivation {
        pname = "demangler";
-       version = "1.2.0.0";
-       sha256 = "1pv4qhmn5hmksrv868f2mdln938hin917s856xmfpmlnc9zgp6ml";
+       version = "1.3.2.0";
+       sha256 = "1fabcnvdbsy4q2phz4w06qj1wwabczg4ha25za8fr8jqfgl5zpqh";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -85195,8 +86229,6 @@ self: {
        ];
        description = "Dependent map that uses semigroup mappend";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "dependent-state" = callPackage
@@ -85278,6 +86310,8 @@ self: {
        pname = "dependent-sum-template";
        version = "0.2.0.1";
        sha256 = "0rba7jf9hpn73gcqqkxvfk8j5mifb49glp6gjc8k93pg78zy7yqf";
+       revision = "1";
+       editedCabalFile = "16z72slamnghhqik23qvkyp2v5hv5w9wqvi0n8h0640sp1s80r4q";
        libraryHaskellDepends = [
          base containers mtl some template-haskell th-abstraction
        ];
@@ -85569,6 +86603,18 @@ self: {
        broken = true;
      }) {};
 
+  "derive-prim" = callPackage
+    ({ mkDerivation, base, primitive, primitive-unaligned }:
+     mkDerivation {
+       pname = "derive-prim";
+       version = "0.1.0.1";
+       sha256 = "1vi1l4kilc9pscmfrv3ggqh6b959xj3p5pyim1dpylmdy1ij2a6c";
+       libraryHaskellDepends = [ base primitive primitive-unaligned ];
+       testHaskellDepends = [ base primitive primitive-unaligned ];
+       description = "Derive Prim and PrimUnaligned";
+       license = lib.licenses.gpl3Plus;
+     }) {};
+
   "derive-storable" = callPackage
     ({ mkDerivation, base, criterion, deepseq, hspec, QuickCheck }:
      mkDerivation {
@@ -85637,6 +86683,8 @@ self: {
        pname = "deriveJsonNoPrefix";
        version = "0.1.0.1";
        sha256 = "1zwk181c8fv0cv6w3daz3gyb0rwp2cm56piv19iz2vfv3jk9rqqs";
+       revision = "1";
+       editedCabalFile = "0c07ayv0x9135id9frrc5fsfgbb2m37kyw01vp4a9piykwmw96nl";
        libraryHaskellDepends = [ aeson base template-haskell ];
        testHaskellDepends = [
          aeson base hspec template-haskell text unordered-containers
@@ -86106,19 +87154,19 @@ self: {
      }) {};
 
   "df1" = callPackage
-    ({ mkDerivation, attoparsec, base, bytestring, containers
-     , QuickCheck, tasty, tasty-quickcheck, text, time
+    ({ mkDerivation, attoparsec, base, bytestring, containers, HUnit
+     , QuickCheck, tasty, tasty-hunit, tasty-quickcheck, text, time
      }:
      mkDerivation {
        pname = "df1";
-       version = "0.4.2";
-       sha256 = "038bk9qaa1qx4c7g2g7m5vqfbmcbpm0ybm64znhdc63dpyzninm8";
+       version = "0.4.3";
+       sha256 = "126n12x3sgk28d39mbrnv2lmii8rmi9sjq30jgayd05wk61spzdm";
        libraryHaskellDepends = [
          attoparsec base bytestring containers text time
        ];
        testHaskellDepends = [
-         attoparsec base bytestring QuickCheck tasty tasty-quickcheck text
-         time
+         attoparsec base bytestring HUnit QuickCheck tasty tasty-hunit
+         tasty-quickcheck text time
        ];
        description = "Type, render and parse the df1 hierarchical structured log format";
        license = lib.licenses.bsd3;
@@ -86146,6 +87194,19 @@ self: {
        broken = true;
      }) {};
 
+  "df1-wai" = callPackage
+    ({ mkDerivation, base, bytestring, df1, http-types, text, wai }:
+     mkDerivation {
+       pname = "df1-wai";
+       version = "0.1";
+       sha256 = "1dhhyfyry13vp1c9l0kkn41vikr0dssvjyxy0j6hwys0q8psanqw";
+       libraryHaskellDepends = [
+         base bytestring df1 http-types text wai
+       ];
+       description = "Df1 log formatting for WAI requests and responses";
+       license = lib.licenses.bsd3;
+     }) {};
+
   "dfinity-radix-tree" = callPackage
     ({ mkDerivation, aeson, base, base16-bytestring, BoundedChan
      , bytestring, clock, concurrent-extra, conduit, containers
@@ -86972,6 +88033,17 @@ self: {
        license = lib.licenses.mit;
      }) {};
 
+  "di-wai" = callPackage
+    ({ mkDerivation, base, clock, df1-wai, di-df1, wai }:
+     mkDerivation {
+       pname = "di-wai";
+       version = "0.2";
+       sha256 = "0h6w5snasayyq3z5vwzrrxg9r6fwzp3a922zgxsp4zlkkkf9f3rr";
+       libraryHaskellDepends = [ base clock df1-wai di-df1 wai ];
+       description = "Di logging for WAI requests and responses";
+       license = lib.licenses.bsd3;
+     }) {};
+
   "dia-base" = callPackage
     ({ mkDerivation, base, deepseq }:
      mkDerivation {
@@ -87195,6 +88267,8 @@ self: {
        pname = "diagrams-core";
        version = "1.5.1.1";
        sha256 = "168kjikw3x21pjgfy3lmxmrm89g9zlhbypkmzdg5xz9rl7acn7rc";
+       revision = "1";
+       editedCabalFile = "1ii5qcwdzaljzq39vrvrsjf06ydnvvyr5q44ks566c347vna7igb";
        libraryHaskellDepends = [
          adjunctions base containers distributive dual-tree lens linear
          monoid-extras mtl profunctors semigroups unordered-containers
@@ -87363,8 +88437,8 @@ self: {
      }:
      mkDerivation {
        pname = "diagrams-lib";
-       version = "1.4.6.1";
-       sha256 = "13f64di88dz8vx4pfh5lxnp1k1vz5077pbakifiw9p72wmi4kbsv";
+       version = "1.4.6.2";
+       sha256 = "0qz5yrrg4k4f72fg20b1rq5mk7n7q531qmj0irpg9lmrr596bdh9";
        libraryHaskellDepends = [
          active adjunctions array base bytestring cereal colour containers
          data-default-class diagrams-core diagrams-solve directory
@@ -88568,8 +89642,8 @@ self: {
      }:
      mkDerivation {
        pname = "diohsc";
-       version = "0.1.14.6";
-       sha256 = "00856rbgk7xq6mq1q58ibzbbkag6jh3zqvyzapjw6baj83gd4br3";
+       version = "0.1.15";
+       sha256 = "03wvdphxc2csxs7h56lg5zz9cp15bv5ac3y1wp9z7q3zkmwla68c";
        isLibrary = false;
        isExecutable = true;
        executableHaskellDepends = [
@@ -88582,7 +89656,9 @@ self: {
        ];
        description = "Gemini client";
        license = lib.licenses.gpl3Only;
+       hydraPlatforms = lib.platforms.none;
        mainProgram = "diohsc";
+       broken = true;
      }) {};
 
   "diophantine" = callPackage
@@ -89146,20 +90222,20 @@ self: {
 
   "discord-haskell" = callPackage
     ({ mkDerivation, aeson, async, base, base64-bytestring, bytestring
-     , containers, data-default, emojis, http-api-data, http-client
-     , iso8601-time, MonadRandom, mtl, network, req, safe-exceptions
-     , scientific, text, time, unliftio, unordered-containers
-     , websockets, wuss
+     , containers, data-default, emojis, hashable, http-api-data
+     , http-client, iso8601-time, MonadRandom, mtl, network, req
+     , safe-exceptions, scientific, text, time, unliftio
+     , unordered-containers, websockets, wuss
      }:
      mkDerivation {
        pname = "discord-haskell";
-       version = "1.16.1";
-       sha256 = "055mr98x8x0z9a20k5k75fwikjrv5837j97klca8lndfbkk8m6h5";
+       version = "1.17.0";
+       sha256 = "0xmfrv50h07sz3hcv96j6nih00gmd0jk6w4d8bprnds2hdzjxsj0";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
          aeson async base base64-bytestring bytestring containers
-         data-default emojis http-api-data http-client iso8601-time
+         data-default emojis hashable http-api-data http-client iso8601-time
          MonadRandom mtl network req safe-exceptions scientific text time
          unliftio unordered-containers websockets wuss
        ];
@@ -89672,6 +90748,8 @@ self: {
        pname = "distributed-process";
        version = "0.7.6";
        sha256 = "0kfgz8nrg8pdnw56msdkdlc1y894giz6jmgss6gxmhrr929rsnlz";
+       revision = "2";
+       editedCabalFile = "1l9sq9xfz7wv6grkmlv3wd0i8vbabvl1ldbavcnqr2gna4q36vqi";
        libraryHaskellDepends = [
          base binary bytestring containers data-accessor deepseq
          distributed-static exceptions hashable mtl network-transport random
@@ -90449,20 +91527,18 @@ self: {
   "djot" = callPackage
     ({ mkDerivation, base, bytestring, containers, directory, doclayout
      , filepath, mtl, tasty, tasty-bench, tasty-hunit, tasty-quickcheck
-     , text
+     , template-haskell, text
      }:
      mkDerivation {
        pname = "djot";
-       version = "0.1.1.3";
-       sha256 = "086z91c6pmh1d6mwz6faddc4nb0h8pdynykhflnr6w3lip49bhbh";
+       version = "0.1.2";
+       sha256 = "11hd8axafpn07pk48lvppmw8rbwyrziirga6lw42x5rl0js1j5wx";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
-         base bytestring containers doclayout mtl text
-       ];
-       executableHaskellDepends = [
-         base bytestring containers doclayout text
+         base bytestring containers doclayout mtl template-haskell text
        ];
+       executableHaskellDepends = [ base bytestring doclayout text ];
        testHaskellDepends = [
          base bytestring directory doclayout filepath tasty tasty-hunit
          tasty-quickcheck text
@@ -90665,23 +91741,23 @@ self: {
      }) {};
 
   "dnf-repo" = callPackage
-    ({ mkDerivation, base, directory, extra, filepath, Glob
+    ({ mkDerivation, base, curl, directory, extra, filepath, Glob
      , http-directory, simple-cmd, simple-cmd-args, simple-prompt
      }:
      mkDerivation {
        pname = "dnf-repo";
-       version = "0.5.5";
-       sha256 = "0yj0dizzdhrb44hzr7b6pa5wy5bik4m8pz6ckx4r3lg9rkgqhjfk";
+       version = "0.6";
+       sha256 = "1420jj5kmvj2h3ix8v6hmf4fdkzn1ixbvxg9fi7zfdfll7831gk0";
        isLibrary = false;
        isExecutable = true;
        enableSeparateDataOutput = true;
        executableHaskellDepends = [
-         base directory extra filepath Glob http-directory simple-cmd
+         base curl directory extra filepath Glob http-directory simple-cmd
          simple-cmd-args simple-prompt
        ];
        testHaskellDepends = [ base simple-cmd ];
-       description = "DNF wrapper tool to control repos";
-       license = lib.licenses.bsd3;
+       description = "A dnf wrapper with fine control of enabled repos";
+       license = lib.licenses.gpl3Only;
        hydraPlatforms = lib.platforms.none;
        mainProgram = "dnf-repo";
      }) {};
@@ -91489,12 +92565,12 @@ self: {
      }) {};
 
   "doctest-lib" = callPackage
-    ({ mkDerivation, base, utility-ht }:
+    ({ mkDerivation, base }:
      mkDerivation {
        pname = "doctest-lib";
-       version = "0.1.1";
-       sha256 = "01ppm5qvp77j87l4829fly5mpb3b8c9s2rr6xg19nbygd8jl6g6r";
-       libraryHaskellDepends = [ base utility-ht ];
+       version = "0.1.1.1";
+       sha256 = "1hb3zx1xzib3v41blnwcbhc2v0rzwdzq7gm4sajqndimwjkkxc67";
+       libraryHaskellDepends = [ base ];
        description = "Parts of doctest exposed as library";
        license = lib.licenses.mit;
        maintainers = [ lib.maintainers.thielema ];
@@ -91509,32 +92585,6 @@ self: {
      }:
      mkDerivation {
        pname = "doctest-parallel";
-       version = "0.3.1";
-       sha256 = "0lbiwi2jc6d68hhkvsgwhrwrbhw9f56r2mqnp7l6i779gpzdriqd";
-       libraryHaskellDepends = [
-         base base-compat Cabal code-page containers deepseq directory
-         exceptions filepath ghc ghc-paths Glob process random syb
-         template-haskell transformers unordered-containers
-       ];
-       testHaskellDepends = [
-         base base-compat code-page containers deepseq directory exceptions
-         filepath ghc ghc-paths hspec hspec-core HUnit mockery process
-         QuickCheck setenv silently stringbuilder syb transformers
-       ];
-       doHaddock = false;
-       description = "Test interactive Haskell examples";
-       license = lib.licenses.mit;
-     }) {};
-
-  "doctest-parallel_0_3_1_1" = callPackage
-    ({ mkDerivation, base, base-compat, Cabal, code-page, containers
-     , deepseq, directory, exceptions, filepath, ghc, ghc-paths, Glob
-     , hspec, hspec-core, HUnit, mockery, process, QuickCheck, random
-     , setenv, silently, stringbuilder, syb, template-haskell
-     , transformers, unordered-containers
-     }:
-     mkDerivation {
-       pname = "doctest-parallel";
        version = "0.3.1.1";
        sha256 = "1xpk020024vsqh27sp225hx50i1hn5fkhxiyww6wqnhrkxypjkwa";
        libraryHaskellDepends = [
@@ -91550,7 +92600,6 @@ self: {
        doHaddock = false;
        description = "Test interactive Haskell examples";
        license = lib.licenses.mit;
-       hydraPlatforms = lib.platforms.none;
      }) {};
 
   "doctest-prop" = callPackage
@@ -93697,8 +94746,8 @@ self: {
      }:
      mkDerivation {
        pname = "dunai";
-       version = "0.12.2";
-       sha256 = "07qij8dmfawdhzd3aldg2kwy0rrma2yybiwd3w989kfih4mf6mbp";
+       version = "0.12.3";
+       sha256 = "10262cqc6ynbpvqpa3ijfacwyid4fxqxks6rm68brmqrzdqyh6wk";
        libraryHaskellDepends = [
          base MonadRandom simple-affine-space transformers transformers-base
        ];
@@ -93731,8 +94780,8 @@ self: {
     ({ mkDerivation, base, dunai, normaldistribution, QuickCheck }:
      mkDerivation {
        pname = "dunai-test";
-       version = "0.12.2";
-       sha256 = "093p31bcbpwn4bsz1id946d5mxk2an2akxm2xvpls9vydvm255zw";
+       version = "0.12.3";
+       sha256 = "0whmsiixv1iid1cd3faz0zib8hv4v09yclq6a7ypz4zyvjyk0szh";
        libraryHaskellDepends = [
          base dunai normaldistribution QuickCheck
        ];
@@ -96130,8 +97179,8 @@ self: {
        pname = "either";
        version = "5.0.2";
        sha256 = "1gl748ia68bldbqb2fl7vjv44g0y8ivn659fjmy1qyypgyb5p95z";
-       revision = "1";
-       editedCabalFile = "1w2rxrj0gc3a7p74pybji8yy2zsjnhxyi4zhlmx4qsyz6w616ggv";
+       revision = "2";
+       editedCabalFile = "1lx6ls938vssg75ib2fr1ww4nsig2rkhjc6x57yfinx1yb9r62vz";
        libraryHaskellDepends = [
          base bifunctors mtl profunctors semigroupoids
        ];
@@ -96690,17 +97739,15 @@ self: {
        hydraPlatforms = lib.platforms.none;
      }) {};
 
-  "eliminators_0_9_4" = callPackage
+  "eliminators_0_9_5" = callPackage
     ({ mkDerivation, base, extra, hspec, hspec-discover, singleton-nats
      , singletons-base, template-haskell, text, th-abstraction
      , th-desugar
      }:
      mkDerivation {
        pname = "eliminators";
-       version = "0.9.4";
-       sha256 = "1qr02xlmb6nfd505z0iw7bj7kpha8wyvcr31rm92r1a78pwvysaf";
-       revision = "1";
-       editedCabalFile = "1rd0qixjgsm5dk9r8dmdk31i0dvsd57mg212k2c0pxh553lggq1q";
+       version = "0.9.5";
+       sha256 = "17pl2mg9bpagzkw50mydls883bj4mm7glmgnm59r57prky9h55gs";
        libraryHaskellDepends = [
          base extra singleton-nats singletons-base template-haskell text
          th-abstraction th-desugar
@@ -99145,8 +100192,8 @@ self: {
      }:
      mkDerivation {
        pname = "erebos";
-       version = "0.1.2";
-       sha256 = "13sxi7h08i81krg7x3pkgijirczh4y78vz3qajcyv0fqq42i6qs0";
+       version = "0.1.3";
+       sha256 = "1zlvaf33w1xc6cg6xklws510inh8lnyn5hfmqgl43hs7rhy4qj96";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -99167,6 +100214,28 @@ self: {
        broken = true;
      }) {libpjproject = null;};
 
+  "erebos-tester" = callPackage
+    ({ mkDerivation, base, bytestring, containers, directory, filepath
+     , generic-deriving, Glob, haskeline, HsYAML, lens, linux-namespaces
+     , megaparsec, mtl, parser-combinators, process, regex-tdfa
+     , scientific, stm, template-haskell, text, th-compat, unix
+     }:
+     mkDerivation {
+       pname = "erebos-tester";
+       version = "0.2.1";
+       sha256 = "19k77irlgihhrq3zzyp2nvny5xqbgy140hr0d9jwd4cwmb3czidd";
+       isLibrary = false;
+       isExecutable = true;
+       executableHaskellDepends = [
+         base bytestring containers directory filepath generic-deriving Glob
+         haskeline HsYAML lens linux-namespaces megaparsec mtl
+         parser-combinators process regex-tdfa scientific stm
+         template-haskell text th-compat unix
+       ];
+       description = "Test framework with virtual network using Linux namespaces";
+       license = lib.licenses.gpl3Only;
+     }) {};
+
   "erf" = callPackage
     ({ mkDerivation, base }:
      mkDerivation {
@@ -99299,7 +100368,9 @@ self: {
        testToolDepends = [ hspec-discover ];
        description = "Source code error pretty printing";
        license = lib.licenses.mit;
+       hydraPlatforms = lib.platforms.none;
        mainProgram = "errata-example";
+       broken = true;
      }) {};
 
   "errno" = callPackage
@@ -99832,6 +100903,8 @@ self: {
        pname = "esqueleto-compat";
        version = "0.0.2.0";
        sha256 = "0r76i5597lmd31384k0961hvps57xcf9dadscvd729yrf0plahvk";
+       revision = "2";
+       editedCabalFile = "15nam3lvr8vq7m2f76by5bsdzlhgraz2dhbiw88hfmxbfs38bwrj";
        libraryHaskellDepends = [
          base conduit esqueleto persistent resourcet transformers
        ];
@@ -100588,8 +101661,6 @@ self: {
        description = "Bindings to libevdev";
        license = lib.licenses.bsd3;
        platforms = lib.platforms.linux;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {inherit (pkgs) libevdev;};
 
   "evdev-streamly" = callPackage
@@ -101392,6 +102463,22 @@ self: {
        broken = true;
      }) {};
 
+  "exact-kantorovich" = callPackage
+    ({ mkDerivation, base, containers, extra, matrix, monad-logger
+     , simplex-method, tasty, tasty-hunit
+     }:
+     mkDerivation {
+       pname = "exact-kantorovich";
+       version = "0.1.0.0";
+       sha256 = "0w410cfffq79b1l70nawa0lq82awh0bjicag3x5blz7c0c8wa9f7";
+       libraryHaskellDepends = [
+         base containers extra matrix monad-logger simplex-method
+       ];
+       testHaskellDepends = [ base containers tasty tasty-hunit ];
+       description = "Exact Kantorovich distance between finite probability measures";
+       license = lib.licenses.bsd3;
+     }) {};
+
   "exact-pi" = callPackage
     ({ mkDerivation, base, numtype-dk, QuickCheck, tasty, tasty-hunit
      , tasty-quickcheck
@@ -101603,17 +102690,17 @@ self: {
        broken = true;
      }) {};
 
-  "exceptions_0_10_7" = callPackage
+  "exceptions_0_10_8" = callPackage
     ({ mkDerivation, base, mtl, QuickCheck, stm, template-haskell
      , test-framework, test-framework-hunit, test-framework-quickcheck2
      , transformers
      }:
      mkDerivation {
        pname = "exceptions";
-       version = "0.10.7";
-       sha256 = "0jb0ah5k2mb4clhb34c59f615vzl54lhx3hf6njqsgdmr3jashls";
-       revision = "2";
-       editedCabalFile = "14zz1abaj62p7f0gmnxr2ss1cpciin64zy7yz3vhkcvy1k00ynm8";
+       version = "0.10.8";
+       sha256 = "125mgcw94x7d47ps0lkiq0g2hzzfjkmcq3gfkbi7w78az0sdjq4d";
+       revision = "1";
+       editedCabalFile = "0rxaahjp8zmp3xhdvvfgkb9qz1j9vsjgr9gz2jxnq69nbnrxj7y3";
        libraryHaskellDepends = [
          base mtl stm template-haskell transformers
        ];
@@ -101632,8 +102719,8 @@ self: {
      }:
      mkDerivation {
        pname = "exceptiot";
-       version = "0.0.1.0";
-       sha256 = "1ss78y1has7yy3ypm29s3k345h8nmxgaqw63r4ahbn0icmi52lys";
+       version = "0.0.1.1";
+       sha256 = "0bmjvfabx3garz2vqkwmv5gjlmvp1mkwli74pp6m0myms4rgk7zc";
        libraryHaskellDepends = [
          base exceptions mtl unliftio unliftio-core
        ];
@@ -102535,8 +103622,8 @@ self: {
      }:
      mkDerivation {
        pname = "exploring-interpreters";
-       version = "1.5.0.0";
-       sha256 = "07g32qwv5nfpzs5c7hni2mhzaaryjy3swmarxbc8hdlb4nlysbj5";
+       version = "1.5.0.1";
+       sha256 = "11n58j4i432z9y2glyii178safnbr2ij1dpp8x6c0nh3sigclnzg";
        libraryHaskellDepends = [
          aeson attoparsec base bytestring containers exceptions fgl
          haskeline http-types mtl network scientific text transformers
@@ -102947,10 +104034,10 @@ self: {
      }:
      mkDerivation {
        pname = "extensions";
-       version = "0.1.0.1";
-       sha256 = "1rf6jhmms6ll7mn9rh81amzb7nd4zjqcnxdzivw50dxcrcfmdiq2";
-       revision = "1";
-       editedCabalFile = "1ixf5bpxy840zdlg3gsl3whzii03fc5j16i591pakprsvprp04hk";
+       version = "0.1.0.2";
+       sha256 = "1ra1qfrsc3icv6lgm06pgrhv77shwb8r7ci2whgnj3hs692ld7gd";
+       revision = "3";
+       editedCabalFile = "0ajnch6ykri1xl091yh48m8hf572d2i1aw34r5z9s9rk6bj7xxi4";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -102991,8 +104078,8 @@ self: {
      }:
      mkDerivation {
        pname = "extism";
-       version = "1.2.0.3";
-       sha256 = "12kaar2jhhxg7pkq5hll7w2iqrahp4d8qw76qypzhqnhzv4s9zmc";
+       version = "1.2.1.0";
+       sha256 = "0x2vwc5r812i3jk7z9y8qfkxlq3acqv560y1z97fsahkb1frydqy";
        libraryHaskellDepends = [
          base binary bytestring extism-manifest json uuid
        ];
@@ -103008,8 +104095,8 @@ self: {
     ({ mkDerivation, base, base64-bytestring, bytestring, json }:
      mkDerivation {
        pname = "extism-manifest";
-       version = "1.2.0.3";
-       sha256 = "07ypncyml5p1p0yy3x45s8gj5vz8z0xjzpcy2q8mdxpk5qgaa6z1";
+       version = "1.2.1.0";
+       sha256 = "1jxv93grdvr02q7gqg1gg9vqjirn3z84x8992zz3spgf4p1h2f2i";
        libraryHaskellDepends = [ base base64-bytestring bytestring json ];
        description = "Extism manifest bindings";
        license = lib.licenses.bsd3;
@@ -103021,8 +104108,8 @@ self: {
      }:
      mkDerivation {
        pname = "extism-pdk";
-       version = "1.0.0.0";
-       sha256 = "1fw9jypdxwpx3b4zgdjx6qk24mjdcxsa3zk4rhqlzsz5ga64z65f";
+       version = "1.0.0.1";
+       sha256 = "0gsc1ygrylgq85cbnj4chxikqx0gv7g10nzgmciwkimby94sl64r";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -103042,8 +104129,8 @@ self: {
      }:
      mkDerivation {
        pname = "extra";
-       version = "1.7.14";
-       sha256 = "0rzm3r3rc16hyikm4gg8q6lg10m72m4d7d2k2rm0gf74y3w0kadn";
+       version = "1.7.16";
+       sha256 = "0w3wwwnf96ax70lrb0fkfich7b23kvk112j9rzr72b0bqd1ns315";
        libraryHaskellDepends = [
          base clock directory filepath process time unix
        ];
@@ -104527,8 +105614,8 @@ self: {
      }:
      mkDerivation {
        pname = "fbrnch";
-       version = "1.3.3";
-       sha256 = "1j4g4q37ly0np6zyyswfx79i5hn3pj4zzby0y5k62jin2v6xvq3n";
+       version = "1.4";
+       sha256 = "0zcwqihcmvpd3vbbzrn9qy41hd4yapdv7b405gqpz10fbil5w5mq";
        isLibrary = false;
        isExecutable = true;
        executableHaskellDepends = [
@@ -106313,6 +107400,8 @@ self: {
        pname = "filepath";
        version = "1.5.2.0";
        sha256 = "19vq749100f1nfjn9cpw99wx392x6rf439ly5lm965w5zas6sq6j";
+       revision = "1";
+       editedCabalFile = "16j1jjkf1rlyqwndpv6kphyc5s3ffqmh155f8j6xrvd7rd1sixwa";
        libraryHaskellDepends = [
          base bytestring deepseq exceptions os-string template-haskell
        ];
@@ -106447,8 +107536,8 @@ self: {
        pname = "filestore";
        version = "0.6.5";
        sha256 = "0z29273vdqjsrj4vby0gp7d12wg9nkzq9zgqg18db0p5948jw1dh";
-       revision = "1";
-       editedCabalFile = "1v9xqm0112knv6za05qf310ldndrc0h3xhajgwjaycbzkrknz4n7";
+       revision = "2";
+       editedCabalFile = "1m6qi647v475gcim8nfb6cgahhc99rszc8k1z2mpzm797qxg9xbs";
        libraryHaskellDepends = [
          base bytestring containers Diff directory filepath old-locale
          parsec process split time utf8-string xml
@@ -106812,8 +107901,8 @@ self: {
      }:
      mkDerivation {
        pname = "finitary";
-       version = "2.1.1.1";
-       sha256 = "006zyb0lna9w4n1yqm2c7k2lpk6aidj4cmf5kx8pcl4r9vkwafgk";
+       version = "2.1.3.0";
+       sha256 = "14b7qjqya36yk19qivcf4lir0pd89mvrh52pd54niq5sx0c8nxj9";
        libraryHaskellDepends = [
          base bitvec finite-typelits ghc-typelits-knownnat
          ghc-typelits-natnormalise primitive template-haskell
@@ -109243,8 +110332,8 @@ self: {
        pname = "foldable1-classes-compat";
        version = "0.1";
        sha256 = "04pzjppmb195ffgxdzh8dh39z5dalr5wd6sifcnbg9p1b3rw6myh";
-       revision = "4";
-       editedCabalFile = "0kpsp659y563h2vanhrdnbza9skq1j9sm6y3fg2j4p1xsgnkqjzv";
+       revision = "6";
+       editedCabalFile = "13g7igqcq6nr0sqschzm7scrpq90nhjjkjq1866ww8ikkq7w9wgj";
        libraryHaskellDepends = [ base ghc-prim tagged ];
        testHaskellDepends = [
          base containers QuickCheck quickcheck-instances test-framework
@@ -110486,6 +111575,8 @@ self: {
        pname = "fourmolu";
        version = "0.15.0.0";
        sha256 = "11xy0k5zkhd0dz7ify0m466l90j8sblm9rzzwkc0nn0d8pxyizfq";
+       revision = "1";
+       editedCabalFile = "1a0wnrvygipxivjzjbbvl1vm4pc45p5p239z741xj9jj5kipjh9c";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -110909,8 +112000,8 @@ self: {
      }:
      mkDerivation {
        pname = "freckle-app";
-       version = "1.15.2.0";
-       sha256 = "0vgc4awccws31a0dq8l76114l4xmyys03zqa6l56844hr3pcd755";
+       version = "1.15.3.0";
+       sha256 = "1d31s4zzazxvsiswavw1yxddm5c8krx5b1sf99sjlj8m3wwf7skz";
        libraryHaskellDepends = [
          aeson annotated-exception autodocodec autodocodec-openapi3
          aws-xray-client-persistent aws-xray-client-wai base bcp47 Blammo
@@ -110989,8 +112080,8 @@ self: {
     ({ mkDerivation, base }:
      mkDerivation {
        pname = "free-alacarte";
-       version = "0.1.0.4";
-       sha256 = "0zv3rsbacjh055spn77q3yz9f7mrsdw5kdbmynxv9hrpg584218x";
+       version = "1.0.0.2";
+       sha256 = "1zshviy7a1apyg6v24qmf65dg2jh6c7ix0vpp1xi6ahkhcqbsnip";
        libraryHaskellDepends = [ base ];
        description = "Free monads based on intuitions from the Data types à la Carte";
        license = lib.licenses.gpl3Only;
@@ -112162,6 +113253,30 @@ self: {
        broken = true;
      }) {};
 
+  "fsnotify_0_3_0_1" = callPackage
+    ({ mkDerivation, async, base, bytestring, containers, directory
+     , filepath, hinotify, random, shelly, tasty, tasty-hunit, temporary
+     , text, time, unix, unix-compat
+     }:
+     mkDerivation {
+       pname = "fsnotify";
+       version = "0.3.0.1";
+       sha256 = "19bdbz9wb9jvln6yg6qm0hz0w84bypvkxf0wjhgrgd52f9gidlny";
+       revision = "2";
+       editedCabalFile = "12m0y5583plk9pikvwqy1rc0yyvicxf8j5nz0nwxb4grsgfqrv7v";
+       libraryHaskellDepends = [
+         async base bytestring containers directory filepath hinotify shelly
+         text time unix unix-compat
+       ];
+       testHaskellDepends = [
+         async base directory filepath random tasty tasty-hunit temporary
+         unix-compat
+       ];
+       description = "Cross platform library for file change notification";
+       license = lib.licenses.bsd3;
+       hydraPlatforms = lib.platforms.none;
+     }) {};
+
   "fsnotify" = callPackage
     ({ mkDerivation, async, base, bytestring, containers, directory
      , exceptions, filepath, hinotify, monad-control, random, retry
@@ -112354,8 +113469,8 @@ self: {
        pname = "ftp-client";
        version = "0.5.1.5";
        sha256 = "08sxbk4s3prh22b1c19cv571fgdc5k9347i17jqmvfwjl3lkv5w7";
-       revision = "1";
-       editedCabalFile = "09ri1dqkmy1hipssy3shy15lb0gyswc2r6ji71mbvy3lv71n4wjh";
+       revision = "2";
+       editedCabalFile = "0lhm04d5msi9k6v2fiaiwl99bxc024rgggjjg8lm8kpsxq2wx11i";
        libraryHaskellDepends = [
          attoparsec base bytestring containers crypton-connection exceptions
          network transformers
@@ -113161,6 +114276,8 @@ self: {
        pname = "fused-effects";
        version = "1.1.2.2";
        sha256 = "00m1lnn8zsb6iniyjmmbgiz7kd5c5kl7rxqqxlc2dkb4hpyrm4v5";
+       revision = "1";
+       editedCabalFile = "0ckc63n04kjlk4m3zjz0ynsc0b4rvz6ikpxcrbx8p9lj132ck6d7";
        libraryHaskellDepends = [ base transformers unliftio-core ];
        testHaskellDepends = [
          base containers hedgehog hedgehog-fn inspection-testing
@@ -113295,7 +114412,6 @@ self: {
        ];
        description = "A fused-effects adapter for squeal-postgresql";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
      }) {};
 
   "fused-effects-th" = callPackage
@@ -113377,8 +114493,8 @@ self: {
      }:
      mkDerivation {
        pname = "futhark";
-       version = "0.25.15";
-       sha256 = "0v95d883xhaa1ffn78p3p4fx0sbcjb0d2yl51h22n1wzlkqawdmj";
+       version = "0.25.16";
+       sha256 = "0yvn01d5mvahp26vhqil7m900didh5hqc2gaxa1wjg1bn0lz99ah";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -113396,7 +114512,7 @@ self: {
        libraryToolDepends = [ alex happy ];
        executableHaskellDepends = [ base ];
        testHaskellDepends = [
-         base containers free megaparsec QuickCheck tasty tasty-hunit
+         base containers free megaparsec mtl QuickCheck tasty tasty-hunit
          tasty-quickcheck text
        ];
        description = "An optimising compiler for a functional, array-oriented language";
@@ -113548,6 +114664,18 @@ self: {
        license = lib.licenses.bsd3;
      }) {};
 
+  "fuzzily" = callPackage
+    ({ mkDerivation, base, HUnit, monoid-subclasses, protolude }:
+     mkDerivation {
+       pname = "fuzzily";
+       version = "0.2.0.0";
+       sha256 = "10xa34441fwjk4pabw98lgrfi3iw4yb03rxnjlir0lp38cfxgqvi";
+       libraryHaskellDepends = [ base monoid-subclasses protolude ];
+       testHaskellDepends = [ base HUnit protolude ];
+       description = "Filters a list based on a fuzzy string search";
+       license = lib.licenses.isc;
+     }) {};
+
   "fuzzy" = callPackage
     ({ mkDerivation, base, HUnit, monoid-subclasses }:
      mkDerivation {
@@ -114208,8 +115336,6 @@ self: {
        ];
        description = "Automatically spin up and spin down local daemons";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "gargoyle-postgresql" = callPackage
@@ -114231,7 +115357,6 @@ self: {
        ];
        description = "Manage PostgreSQL servers with gargoyle";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
      }) {};
 
   "gargoyle-postgresql-connect" = callPackage
@@ -114249,7 +115374,6 @@ self: {
        ];
        description = "Connect to gargoyle-managed postgresql instances";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
      }) {};
 
   "gargoyle-postgresql-nix" = callPackage
@@ -114270,7 +115394,6 @@ self: {
        ];
        description = "Manage PostgreSQL servers with gargoyle and nix";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
      }) {};
 
   "garlic-bread" = callPackage
@@ -114343,6 +115466,8 @@ self: {
        pname = "gauge";
        version = "0.2.5";
        sha256 = "19zmnyyx7x6gf95dphqi1118avcp7w01scq12qmvzhchg1kzs86m";
+       revision = "2";
+       editedCabalFile = "1xpbqr5bdk5p33iljy329fhfbfik03m8p669d80g35q1x256fmij";
        libraryHaskellDepends = [
          base basement deepseq directory process vector
        ];
@@ -115988,6 +117113,8 @@ self: {
        pname = "generics-sop";
        version = "0.5.1.4";
        sha256 = "0zkri1w7qdqlxcfx0kzld7ai5g7xzxwxjxjfa7wnjx09fqhiqsk1";
+       revision = "1";
+       editedCabalFile = "10i6k2j47jh0f40gssg5nh4cw6agfjpjryizrhyykg6c0c006yfr";
        libraryHaskellDepends = [
          base ghc-prim sop-core template-haskell th-abstraction
        ];
@@ -118201,8 +119328,8 @@ self: {
      }:
      mkDerivation {
        pname = "ghc-hs-meta";
-       version = "0.1.3.0";
-       sha256 = "1w1l7l3c96k30v715sbf4vhzw7q86p4piwq91i9zqijgy0wl9rz6";
+       version = "0.1.4.0";
+       sha256 = "08jx4cmwg0wd36pp915qf8gzb80fpsjnh8f4md4i4a6nj4nzz1hk";
        libraryHaskellDepends = [
          base bytestring ghc ghc-boot template-haskell
        ];
@@ -118316,8 +119443,8 @@ self: {
      }:
      mkDerivation {
        pname = "ghc-lib";
-       version = "9.6.4.20240109";
-       sha256 = "0iny2fpbq8xjsrcxpn0qvxc4z7kga4b7c32nznypcwysp60vrzl8";
+       version = "9.6.5.20240423";
+       sha256 = "0jmi0c9pl69q8ydgmkjv4b5lxwkjiq8ys1zbl1g9rg2cv5d6w4in";
        enableSeparateDataOutput = true;
        libraryHaskellDepends = [
          array base binary bytestring containers deepseq directory
@@ -118329,7 +119456,7 @@ self: {
        license = lib.licenses.bsd3;
      }) {};
 
-  "ghc-lib_9_8_2_20240223" = callPackage
+  "ghc-lib_9_10_1_20240511" = callPackage
     ({ mkDerivation, alex, array, base, binary, bytestring, containers
      , deepseq, directory, exceptions, filepath, ghc-lib-parser
      , ghc-prim, happy, hpc, parsec, pretty, process, rts
@@ -118337,8 +119464,8 @@ self: {
      }:
      mkDerivation {
        pname = "ghc-lib";
-       version = "9.8.2.20240223";
-       sha256 = "12lmk3ipd1pyiwzmnb0zgbw86yy7mhsy530dnackwidg3ww07nia";
+       version = "9.10.1.20240511";
+       sha256 = "1z8xpzkwp2abb8azhjsnmq0cyyvvc3xqm5dgs7vmrfj3yq72j6ys";
        enableSeparateDataOutput = true;
        libraryHaskellDepends = [
          array base binary bytestring containers deepseq directory
@@ -118379,8 +119506,8 @@ self: {
      }:
      mkDerivation {
        pname = "ghc-lib-parser";
-       version = "9.6.4.20240109";
-       sha256 = "1p89bavaqhyl8vmg83c944c9rj5j5qngnckml16wmd5xrbjlj9dh";
+       version = "9.6.5.20240423";
+       sha256 = "1kr4xb0bz24w0nb1mnf71lzhx8yly8vrixcn7dy01l09j3jmps2w";
        enableSeparateDataOutput = true;
        libraryHaskellDepends = [
          array base binary bytestring containers deepseq directory
@@ -118392,15 +119519,15 @@ self: {
        license = lib.licenses.bsd3;
      }) {};
 
-  "ghc-lib-parser_9_8_2_20240223" = callPackage
+  "ghc-lib-parser_9_10_1_20240511" = callPackage
     ({ mkDerivation, alex, array, base, binary, bytestring, containers
      , deepseq, directory, exceptions, filepath, ghc-prim, happy, parsec
      , pretty, process, time, transformers, unix
      }:
      mkDerivation {
        pname = "ghc-lib-parser";
-       version = "9.8.2.20240223";
-       sha256 = "05k5grbh3s0ywm8y6cp9hqfj4bbq0nh1bx1ysgfv88df5hgg47r9";
+       version = "9.10.1.20240511";
+       sha256 = "0fgissqfbgx5ra6gvfywxn76q16v5i97riaxqs1l9pa3zrfdzl9p";
        enableSeparateDataOutput = true;
        libraryHaskellDepends = [
          array base binary bytestring containers deepseq directory
@@ -118452,22 +119579,22 @@ self: {
        license = lib.licenses.bsd3;
      }) {};
 
-  "ghc-lib-parser-ex_9_8_0_2" = callPackage
+  "ghc-lib-parser-ex_9_10_0_0" = callPackage
     ({ mkDerivation, base, bytestring, containers, directory, extra
      , filepath, ghc-lib-parser, tasty, tasty-hunit, uniplate
      }:
      mkDerivation {
        pname = "ghc-lib-parser-ex";
-       version = "9.8.0.2";
-       sha256 = "1s4ibjdzrflb2r88srmdnslj09h78xqwdn6djcnirmnka7qrf09v";
+       version = "9.10.0.0";
+       sha256 = "1v4nq8nvg9bpdnqgpy8pkzb05h7f9f6m2a6bcqj3j2i9jzqv7sb6";
        libraryHaskellDepends = [
          base bytestring containers ghc-lib-parser uniplate
        ];
        testHaskellDepends = [
-         base directory extra filepath ghc-lib-parser tasty tasty-hunit
-         uniplate
+         base bytestring containers directory extra filepath ghc-lib-parser
+         tasty tasty-hunit uniplate
        ];
-       description = "Algorithms on GHC parse trees";
+       description = "Programming with GHC parse trees";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
      }) {};
@@ -119521,23 +120648,21 @@ self: {
      , binary, bytestring, case-insensitive, co-log-core, containers
      , cryptohash-sha1, data-default, deepseq, dependent-map
      , dependent-sum, Diff, directory, dlist, enummapset, exceptions
-     , extra, filepath, fingertree, focus, fuzzy, ghc, ghc-boot
-     , ghc-boot-th, ghc-check, ghc-paths, ghc-trace-events, gitrev, Glob
+     , extra, filepath, fingertree, focus, ghc, ghc-boot, ghc-boot-th
+     , ghc-check, ghc-paths, ghc-trace-events, gitrev, Glob
      , haddock-library, hashable, hie-bios, hie-compat, hiedb, hls-graph
      , hls-plugin-api, implicit-hie, lens, list-t, lsp, lsp-test
-     , lsp-types, monoid-subclasses, mtl, network-uri, opentelemetry
-     , optparse-applicative, parallel, prettyprinter
-     , prettyprinter-ansi-terminal, QuickCheck, random, regex-tdfa
-     , row-types, safe-exceptions, shake, sorted-list, sqlite-simple
-     , stm, stm-containers, syb, tasty, tasty-expected-failure
-     , tasty-hunit, tasty-quickcheck, tasty-rerun, text, text-rope, time
+     , lsp-types, mtl, opentelemetry, optparse-applicative, parallel
+     , prettyprinter, prettyprinter-ansi-terminal, random, regex-tdfa
+     , row-types, safe-exceptions, sorted-list, sqlite-simple, stm
+     , stm-containers, syb, tasty-hunit, text, text-rope, time
      , transformers, unix, unliftio, unliftio-core, unordered-containers
      , vector
      }:
      mkDerivation {
        pname = "ghcide";
-       version = "2.7.0.0";
-       sha256 = "0k4pqpbz32xi2qqp47g04wx76yahqpzzg4q1nmshl6xm4nggag49";
+       version = "2.8.0.0";
+       sha256 = "1mjqbh7dmgx9q90pqs6qyqy0mgxj9vcwn5ww6hqcw9i2p847mvgy";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -119558,15 +120683,6 @@ self: {
          base data-default extra gitrev hls-plugin-api lsp lsp-types
          optparse-applicative
        ];
-       testHaskellDepends = [
-         aeson async base containers data-default directory enummapset extra
-         filepath fuzzy hls-plugin-api lens list-t lsp lsp-test lsp-types
-         monoid-subclasses mtl network-uri QuickCheck random regex-tdfa
-         row-types shake sqlite-simple stm stm-containers tasty
-         tasty-expected-failure tasty-hunit tasty-quickcheck tasty-rerun
-         text text-rope unordered-containers
-       ];
-       testToolDepends = [ implicit-hie ];
        doHaddock = false;
        description = "The core of an IDE";
        license = lib.licenses.asl20;
@@ -119575,15 +120691,14 @@ self: {
   "ghcide-bench" = callPackage
     ({ mkDerivation, aeson, async, base, binary, bytestring, containers
      , data-default, deepseq, directory, extra, filepath, ghcide
-     , hashable, hls-graph, hls-plugin-api, implicit-hie, lens, lsp-test
-     , lsp-types, optparse-applicative, parser-combinators, process
-     , row-types, safe-exceptions, shake, tasty, tasty-hunit
-     , tasty-rerun, text
+     , hashable, hls-graph, hls-plugin-api, lens, lsp-test, lsp-types
+     , optparse-applicative, parser-combinators, process, row-types
+     , safe-exceptions, shake, tasty, tasty-hunit, tasty-rerun, text
      }:
      mkDerivation {
        pname = "ghcide-bench";
-       version = "2.7.0.0";
-       sha256 = "1028d8hglqx3yxcf8idsjaf47m4f3ms6qzhqs3g8l6fcb5l3vlnj";
+       version = "2.8.0.0";
+       sha256 = "1m248y924nnq70k6pnikn53z3vawgc0vg9pc6m6qjrcryhs1p4i9";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -119599,7 +120714,7 @@ self: {
        testHaskellDepends = [
          base extra lsp-test tasty tasty-hunit tasty-rerun
        ];
-       testToolDepends = [ ghcide implicit-hie ];
+       testToolDepends = [ ghcide ];
        description = "An LSP client for running performance experiments on HLS";
        license = lib.licenses.asl20;
        mainProgram = "ghcide-bench";
@@ -119663,15 +120778,14 @@ self: {
        license = lib.licenses.mit;
      }) {};
 
-  "ghcjs-base_0_8_0_0" = callPackage
+  "ghcjs-base" = callPackage
     ({ mkDerivation }:
      mkDerivation {
        pname = "ghcjs-base";
-       version = "0.8.0.0";
-       sha256 = "1bbgvyw4vbwi7whidldrxi46hjx9hsg3hp6l2py30528n7hfdpdp";
+       version = "0.8.0.1";
+       sha256 = "1cx9jqpbr6b30qckp2zpsfk3swa58snjb79pq0l6485nvrxa9mls";
        description = "base library for GHCJS";
        license = lib.licenses.mit;
-       hydraPlatforms = lib.platforms.none;
      }) {};
 
   "ghcjs-base-stub" = callPackage
@@ -119711,8 +120825,8 @@ self: {
      }:
      mkDerivation {
        pname = "ghcjs-dom";
-       version = "0.9.9.0";
-       sha256 = "11zc5p7d74c5q3rq3vzczf16y7r0lci3ddvq1nry6jsfrxkklziy";
+       version = "0.9.9.1";
+       sha256 = "0fjf0l1yaml24ipdxc72fscn1f8az663yx31rwxhq6kj2p7j1jg1";
        libraryHaskellDepends = [
          base containers ghcjs-dom-jsaddle text transformers
        ];
@@ -119746,8 +120860,8 @@ self: {
     ({ mkDerivation }:
      mkDerivation {
        pname = "ghcjs-dom-javascript";
-       version = "0.9.9.0";
-       sha256 = "0vhk1gjr5g5cp6rzkr9p0km4mrdi61kfwk8jc0w97wkwmi030qcb";
+       version = "0.9.9.1";
+       sha256 = "0im7wn7bn43rhkblh0wn9angadbdvywsalfz0adr9pkwv6hvc8qs";
        description = "DOM library using JSFFI and GHCJS";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
@@ -120194,6 +121308,8 @@ self: {
        pname = "gi-cairo-connector";
        version = "0.1.1";
        sha256 = "0jkca1x0dlyfwyywn6gmsnxhyad3j7vfwa0c4hpvx8k8m350dn3c";
+       revision = "1";
+       editedCabalFile = "0h2xi7yq6whwzpydzbcf87qvmzg57c7frj48pm47vwjvxmccabrm";
        libraryHaskellDepends = [
          base gi-cairo gi-cairo-render haskell-gi-base mtl
        ];
@@ -121930,15 +123046,15 @@ self: {
      , random, regex-tdfa, resourcet, SafeSemaphore, sandi, securemem
      , shakespeare, socks, split, stm, stm-chans, tagsoup, tasty
      , tasty-hunit, tasty-quickcheck, tasty-rerun, template-haskell
-     , text, time, torrent, transformers, unix, unix-compat
-     , unliftio-core, unordered-containers, utf8-string, uuid, vector
-     , wai, wai-extra, warp, warp-tls, yesod, yesod-core, yesod-form
-     , yesod-static
+     , text, time, torrent, transformers, unbounded-delays, unix
+     , unix-compat, unliftio-core, unordered-containers, utf8-string
+     , uuid, vector, wai, wai-extra, warp, warp-tls, yesod, yesod-core
+     , yesod-form, yesod-static
      }:
      mkDerivation {
        pname = "git-annex";
-       version = "10.20240227";
-       sha256 = "07py6xfss8jpw5yhvj203g4yd7qqx600j20hz0kqk80dpn7i3nqq";
+       version = "10.20240430";
+       sha256 = "1p32fccxgk6nkp187cazc8cs0fmb92l7v0bdqipihj9wpw8xr4s0";
        configureFlags = [
          "-fassistant" "-f-benchmark" "-fcrypton" "-fdbus" "-f-debuglocks"
          "-fmagicmime" "-fpairing" "-fproduction" "-ftorrentparser"
@@ -121964,9 +123080,9 @@ self: {
          regex-tdfa resourcet SafeSemaphore sandi securemem shakespeare
          socks split stm stm-chans tagsoup tasty tasty-hunit
          tasty-quickcheck tasty-rerun template-haskell text time torrent
-         transformers unix unix-compat unliftio-core unordered-containers
-         utf8-string uuid vector wai wai-extra warp warp-tls yesod
-         yesod-core yesod-form yesod-static
+         transformers unbounded-delays unix unix-compat unliftio-core
+         unordered-containers utf8-string uuid vector wai wai-extra warp
+         warp-tls yesod yesod-core yesod-form yesod-static
        ];
        description = "manage files with git, without checking their contents into git";
        license = lib.licenses.agpl3Only;
@@ -128666,6 +129782,31 @@ self: {
        license = "MPL-2.0 AND BSD-3-Clause";
      }) {};
 
+  "graphql_1_3_0_0" = callPackage
+    ({ mkDerivation, base, conduit, containers, exceptions, hspec
+     , hspec-discover, hspec-expectations, hspec-megaparsec, megaparsec
+     , parser-combinators, QuickCheck, template-haskell, text
+     , transformers, unordered-containers, vector
+     }:
+     mkDerivation {
+       pname = "graphql";
+       version = "1.3.0.0";
+       sha256 = "0clzpnwvy9h71jn2ik0jxghlr7344hgwlxgff0h2imr7mq532adv";
+       libraryHaskellDepends = [
+         base conduit containers exceptions megaparsec parser-combinators
+         template-haskell text transformers unordered-containers vector
+       ];
+       testHaskellDepends = [
+         base conduit containers exceptions hspec hspec-expectations
+         hspec-megaparsec megaparsec QuickCheck text unordered-containers
+         vector
+       ];
+       testToolDepends = [ hspec-discover ];
+       description = "Haskell GraphQL implementation";
+       license = "MPL-2.0 AND BSD-3-Clause";
+       hydraPlatforms = lib.platforms.none;
+     }) {};
+
   "graphql-api" = callPackage
     ({ mkDerivation, aeson, attoparsec, base, containers, criterion
      , directory, doctest, exceptions, ghc-prim, hspec, protolude
@@ -129386,10 +130527,10 @@ self: {
      }:
      mkDerivation {
        pname = "grisette";
-       version = "0.4.1.0";
-       sha256 = "00nkg8mz0mi5d0zvjxn7jj149nvjpzcflpqv2f4p8kbis95iccm8";
+       version = "0.5.0.1";
+       sha256 = "0wrvasr5kbz27ddwlmpxwzda4ya5phyn21hwi2ci7xgcfb0q3szh";
        revision = "2";
-       editedCabalFile = "0jkilmbz5drg1vrzc6zy6d6axw4fcq7bgqwsrdf6c917pmciip6q";
+       editedCabalFile = "0sihj9hivxc3w3fr8yc8bp6wnphjspvm1fwgzx3iimsw26vb21cd";
        libraryHaskellDepends = [
          array async base bytestring deepseq generic-deriving hashable
          hashtables intern loch-th mtl parallel prettyprinter QuickCheck sbv
@@ -133389,8 +134530,8 @@ self: {
        pname = "hakyll";
        version = "4.16.2.0";
        sha256 = "1p3x9f1ha6dkis71nzbxh1h7mzldsj4qvmfx3f0vng7y1ydlcw0z";
-       revision = "5";
-       editedCabalFile = "01ny9jsz0drdh497pvhlnwxn946db8a1qc1fxy96l3pjc6plvxcb";
+       revision = "6";
+       editedCabalFile = "1pdasij9bz7pzfb9f3lvvixzch7ac3xhqqx5cd3wjl40annawsaw";
        isLibrary = true;
        isExecutable = true;
        enableSeparateDataOutput = true;
@@ -133974,8 +135115,8 @@ self: {
        pname = "half";
        version = "0.3.1";
        sha256 = "1l8m2spqg0ac50qys2jk5b32v6wxklbbk5ypjp3ga6z14hkw7bz2";
-       revision = "1";
-       editedCabalFile = "0z0sdic28ji6lq9hz9fh534igy6g3g7b1q799cmwkga23dkicgzl";
+       revision = "2";
+       editedCabalFile = "01yv2wdiljx7nsija2dgxim0h9fca7c47nw3jrhy2n3gpcnsrfdn";
        libraryHaskellDepends = [ base binary deepseq template-haskell ];
        testHaskellDepends = [
          base binary bytestring QuickCheck test-framework
@@ -137053,7 +138194,6 @@ self: {
        ];
        description = "Haskell Application BlockChain Interface (ABCI) Server Library";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
        mainProgram = "haskell-abci-counter";
      }) {};
 
@@ -137860,27 +139000,29 @@ self: {
      }) {};
 
   "haskell-language-server" = callPackage
-    ({ mkDerivation, aeson, aeson-pretty, apply-refact, array, base
-     , bytestring, Cabal-syntax, containers, data-default, deepseq, Diff
-     , directory, dlist, extra, filepath, floskell, foldl, fourmolu
-     , fuzzy, ghc, ghc-boot, ghc-boot-th, ghc-exactprint, ghc-lib-parser
-     , ghc-lib-parser-ex, ghcide, githash, hashable, hie-bios
-     , hie-compat, hiedb, hlint, hls-graph, hls-plugin-api
-     , hls-test-utils, lens, lsp, lsp-test, lsp-types, megaparsec, mod
-     , mtl, optparse-applicative, optparse-simple, ormolu
-     , parser-combinators, prettyprinter, process, process-extras
+    ({ mkDerivation, aeson, aeson-pretty, apply-refact, array, async
+     , base, bytestring, Cabal-syntax, containers, data-default, deepseq
+     , Diff, directory, dlist, enummapset, extra, filepath, floskell
+     , foldl, fourmolu, fuzzy, ghc, ghc-boot, ghc-boot-th
+     , ghc-exactprint, ghc-lib-parser, ghc-lib-parser-ex, ghcide
+     , ghcide-bench, githash, hashable, hie-bios, hie-compat, hiedb
+     , hlint, hls-graph, hls-plugin-api, hls-test-utils, hp2pretty
+     , implicit-hie, lens, lens-aeson, list-t, lsp, lsp-test, lsp-types
+     , megaparsec, mod, monoid-subclasses, mtl, network-uri
+     , optparse-applicative, optparse-simple, ormolu, parser-combinators
+     , prettyprinter, process, process-extras, QuickCheck, random
      , refact, regex-applicative, regex-tdfa, retrie, row-types
-     , safe-exceptions, semigroupoids, shake, sqlite-simple, stan, stm
-     , stm-containers, stylish-haskell, syb, tasty
+     , safe-exceptions, semigroupoids, shake, shake-bench, sqlite-simple
+     , stan, stm, stm-containers, stylish-haskell, syb, tasty
      , tasty-expected-failure, tasty-hunit, tasty-quickcheck
-     , template-haskell, temporary, text, text-rope, time, transformers
-     , trial, unix, unliftio, unliftio-core, unordered-containers
-     , vector
+     , tasty-rerun, template-haskell, temporary, text, text-rope, time
+     , transformers, trial, unix, unliftio, unliftio-core
+     , unordered-containers, vector, yaml
      }:
      mkDerivation {
        pname = "haskell-language-server";
-       version = "2.7.0.0";
-       sha256 = "04ai12wb4b9s202zi2vwwxr4ncdzf9k1z044n8jprn7yxfqpz9cm";
+       version = "2.8.0.0";
+       sha256 = "0nzqwm913s0d1m5irq4b65d2bl83qr916x44c9x35m7x04d78hrm";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -137891,7 +139033,7 @@ self: {
          hashable hie-bios hie-compat hiedb hlint hls-graph hls-plugin-api
          lens lsp lsp-types megaparsec mod mtl optparse-applicative
          optparse-simple ormolu parser-combinators prettyprinter process
-         process-extras refact regex-applicative regex-tdfa retrie
+         process-extras refact regex-applicative regex-tdfa retrie row-types
          safe-exceptions semigroupoids sqlite-simple stan stm stm-containers
          stylish-haskell syb template-haskell temporary text text-rope time
          transformers trial unliftio unliftio-core unordered-containers
@@ -137903,14 +139045,22 @@ self: {
          transformers unix unliftio-core
        ];
        testHaskellDepends = [
-         aeson base bytestring Cabal-syntax containers data-default deepseq
-         directory extra filepath ghcide hashable hls-plugin-api
-         hls-test-utils lens lsp lsp-test lsp-types ormolu
-         parser-combinators process regex-tdfa row-types shake tasty
-         tasty-expected-failure tasty-hunit tasty-quickcheck text text-rope
-         transformers unordered-containers vector
+         aeson async base bytestring Cabal-syntax containers data-default
+         deepseq directory enummapset extra filepath fuzzy ghcide hashable
+         hls-plugin-api hls-test-utils lens list-t lsp lsp-test lsp-types
+         monoid-subclasses mtl network-uri ormolu parser-combinators process
+         QuickCheck random regex-tdfa row-types shake sqlite-simple stm
+         stm-containers tasty tasty-expected-failure tasty-hunit
+         tasty-quickcheck tasty-rerun text text-rope transformers
+         unordered-containers vector
        ];
-       testToolDepends = [ fourmolu ghcide ormolu ];
+       testToolDepends = [ fourmolu ghcide implicit-hie ormolu ];
+       benchmarkHaskellDepends = [
+         aeson base containers data-default directory extra filepath
+         ghcide-bench hls-plugin-api lens lens-aeson shake shake-bench text
+         yaml
+       ];
+       benchmarkToolDepends = [ ghcide-bench hp2pretty ];
        doHaddock = false;
        description = "LSP server for GHC";
        license = lib.licenses.asl20;
@@ -139156,15 +140306,15 @@ self: {
      }:
      mkDerivation {
        pname = "haskell-updater";
-       version = "1.3.2";
-       sha256 = "0z1f6qajg191fqfnkh3g2c1iq802yh1plxzvzwl822bzd49m32j9";
+       version = "1.3.3";
+       sha256 = "06hh9lpib410spa65c2qva714v8ci07jdckhn9p38r9002ps8fp3";
        isLibrary = false;
        isExecutable = true;
        executableHaskellDepends = [
          base bytestring Cabal containers directory filepath process
        ];
        description = "Rebuild Haskell dependencies in Gentoo";
-       license = "GPL";
+       license = lib.licenses.gpl3Plus;
        mainProgram = "haskell-updater";
      }) {};
 
@@ -139637,8 +140787,8 @@ self: {
      }:
      mkDerivation {
        pname = "haskellish";
-       version = "0.3.2.2";
-       sha256 = "07h421qychchii79s2cbpcfvh6h8qipd6wl9qn5jkdg9d2gycc34";
+       version = "0.3.2.3";
+       sha256 = "0hvnyrh5i6iwzlisdqv0cw952w2kxs1k9c9yc7qmvwr01wfm88lr";
        libraryHaskellDepends = [
          base containers haskell-src-exts mtl template-haskell text
        ];
@@ -140219,8 +141369,8 @@ self: {
      }:
      mkDerivation {
        pname = "haskoin-store";
-       version = "1.5.0";
-       sha256 = "01lrrbz6811jcj47bj2ah0i23jkx2gdl326s2hx03rvfnygbz1bq";
+       version = "1.5.4";
+       sha256 = "0g2rl50q29rp65lggjggrjx6i3c9glblfl5z4psqmjcqmlbijg20";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -141180,23 +142330,55 @@ self: {
      }:
      mkDerivation {
        pname = "hasql";
-       version = "1.6.4.3";
-       sha256 = "1qy50xnpbikvqqv82wqy9491fgvnl8721xszvjyfhw4r7bf0gn3n";
+       version = "1.6.4.4";
+       sha256 = "1mwr9v5q5wvf1bk4lc7pdyyqf26snw23mxsz0j4mnrk7ybk6daad";
        libraryHaskellDepends = [
          aeson attoparsec base bytestring bytestring-strict-builder
          contravariant dlist hashable hashtables mtl network-ip
-         postgresql-binary postgresql-libpq profunctors scientific text
-         text-builder time transformers uuid vector
+         postgresql-binary postgresql-libpq profunctors rerebase scientific
+         text text-builder time transformers uuid vector
        ];
        testHaskellDepends = [
          contravariant-extras quickcheck-instances rerebase tasty
          tasty-hunit tasty-quickcheck
        ];
        benchmarkHaskellDepends = [ criterion rerebase ];
+       doHaddock = false;
        description = "An efficient PostgreSQL driver with a flexible mapping API";
        license = lib.licenses.mit;
      }) {};
 
+  "hasql_1_7_0_2" = callPackage
+    ({ mkDerivation, aeson, attoparsec, base, bytestring
+     , bytestring-strict-builder, contravariant, contravariant-extras
+     , criterion, dlist, hashable, hashtables, hspec, hspec-discover
+     , mtl, network-ip, postgresql-binary, postgresql-libpq, profunctors
+     , quickcheck-instances, rerebase, scientific, tasty, tasty-hunit
+     , tasty-quickcheck, text, text-builder, time, transformers, uuid
+     , vector
+     }:
+     mkDerivation {
+       pname = "hasql";
+       version = "1.7.0.2";
+       sha256 = "1cqvwkbclcwa122jj321sg5l3rs0aiyfmh99q7rd09ycfq1khk13";
+       libraryHaskellDepends = [
+         aeson attoparsec base bytestring bytestring-strict-builder
+         contravariant dlist hashable hashtables mtl network-ip
+         postgresql-binary postgresql-libpq profunctors scientific text
+         text-builder time transformers uuid vector
+       ];
+       testHaskellDepends = [
+         contravariant-extras hspec quickcheck-instances rerebase tasty
+         tasty-hunit tasty-quickcheck
+       ];
+       testToolDepends = [ hspec-discover ];
+       benchmarkHaskellDepends = [ criterion rerebase ];
+       doHaddock = false;
+       description = "Fast PostgreSQL driver with a flexible mapping API";
+       license = lib.licenses.mit;
+       hydraPlatforms = lib.platforms.none;
+     }) {};
+
   "hasql-backend" = callPackage
     ({ mkDerivation, base, base-prelude, bytestring, either, free
      , list-t, text, transformers, vector
@@ -141297,6 +142479,23 @@ self: {
        license = lib.licenses.mit;
      }) {};
 
+  "hasql-dynamic-statements_0_3_1_6" = callPackage
+    ({ mkDerivation, base, bytestring, containers, hasql
+     , hasql-implicits, ptr, rerebase, tasty, tasty-hunit
+     }:
+     mkDerivation {
+       pname = "hasql-dynamic-statements";
+       version = "0.3.1.6";
+       sha256 = "0w38g53kycz6bpd4cgj9aaciwv7gkzpxhzk1rwqn7nwrhmb1gglm";
+       libraryHaskellDepends = [
+         base bytestring containers hasql hasql-implicits ptr
+       ];
+       testHaskellDepends = [ hasql rerebase tasty tasty-hunit ];
+       description = "Toolkit for constructing Hasql statements dynamically";
+       license = lib.licenses.mit;
+       hydraPlatforms = lib.platforms.none;
+     }) {};
+
   "hasql-effectful" = callPackage
     ({ mkDerivation, base, bytestring, effectful, hasql, hasql-pool
      , hasql-transaction, text
@@ -141363,8 +142562,8 @@ self: {
      }:
      mkDerivation {
        pname = "hasql-implicits";
-       version = "0.1.1.2";
-       sha256 = "0vdis92v2riw7bnxgpaif05rb3gkikpavs7w10rayzcf3sx3r6pp";
+       version = "0.1.1.3";
+       sha256 = "1kd77zyn5wshbmrl64csxcgn09h2l20ys7v2232gvcp2lzm93dhi";
        libraryHaskellDepends = [
          aeson base bytestring containers hasql network-ip scientific text
          time uuid vector
@@ -141381,10 +142580,8 @@ self: {
      }:
      mkDerivation {
        pname = "hasql-interpolate";
-       version = "0.2.1.0";
-       sha256 = "1gmi552pkjbsxxqjprnq6696xqzh1swcib73p6892q65irgnhd5x";
-       revision = "1";
-       editedCabalFile = "08hr4fgxpyr663s12ihs77cqnn3hh2hlxy2n47gqp72jxj8ih8kj";
+       version = "0.2.2.0";
+       sha256 = "1rs8v5ndpxp1l6j5qknrg8jpnnx2hn2pbh03sl7qz1j8i20d4rbi";
        libraryHaskellDepends = [
          aeson array base bytestring containers haskell-src-meta hasql
          megaparsec mtl scientific template-haskell text time transformers
@@ -141405,6 +142602,8 @@ self: {
        pname = "hasql-listen-notify";
        version = "0.1.0.1";
        sha256 = "00pcbps2hdjd3i1xxsfgai81hgzc24cpj8n1iqg4xf7pd2c6cps4";
+       revision = "1";
+       editedCabalFile = "09007w68nvlknihp3020vyj1n9arr1l88bpmy3m032m400ww6qq0";
        libraryHaskellDepends = [
          base bytestring hasql mtl postgresql-libpq text
        ];
@@ -141432,14 +142631,33 @@ self: {
        license = lib.licenses.bsd3;
      }) {};
 
+  "hasql-mover" = callPackage
+    ({ mkDerivation, base, hasql, hasql-th, hasql-transaction
+     , megaparsec, optparse-applicative, prettyprinter
+     , prettyprinter-ansi-terminal, resourcet, sop-core
+     , template-haskell, text, time, transformers
+     }:
+     mkDerivation {
+       pname = "hasql-mover";
+       version = "0.1.1";
+       sha256 = "1cldrbqwp5hmyxz8f8751vqliq58cyn9pq6kyds87syksj3m55zv";
+       libraryHaskellDepends = [
+         base hasql hasql-th hasql-transaction megaparsec
+         optparse-applicative prettyprinter prettyprinter-ansi-terminal
+         resourcet sop-core template-haskell text time transformers
+       ];
+       description = "Hasql migrations library";
+       license = lib.licenses.bsd3;
+     }) {};
+
   "hasql-notifications" = callPackage
     ({ mkDerivation, base, bytestring, hasql, hasql-pool, hspec
      , postgresql-libpq, QuickCheck, text
      }:
      mkDerivation {
        pname = "hasql-notifications";
-       version = "0.2.1.1";
-       sha256 = "0pw9m72b2rxg9yiirz48260ypgqzn8icarq0rj3sdzs7b255s6m5";
+       version = "0.2.2.0";
+       sha256 = "060fz6mwnb7q68v8aah455wmzfgk03a7bnr57zq5dm4wfm8cycaz";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -141452,6 +142670,27 @@ self: {
        mainProgram = "hasql-notifications";
      }) {};
 
+  "hasql-notifications_0_2_3_0" = callPackage
+    ({ mkDerivation, base, bytestring, hasql, hasql-pool, hspec
+     , postgresql-libpq, QuickCheck, text
+     }:
+     mkDerivation {
+       pname = "hasql-notifications";
+       version = "0.2.3.0";
+       sha256 = "1wr6wgsmgkk834mzadgvpdfj9w9nap262kzaiadhvgy58ffapc4y";
+       isLibrary = true;
+       isExecutable = true;
+       libraryHaskellDepends = [
+         base bytestring hasql hasql-pool postgresql-libpq text
+       ];
+       executableHaskellDepends = [ base hasql ];
+       testHaskellDepends = [ base bytestring hasql hspec QuickCheck ];
+       description = "LISTEN/NOTIFY support for Hasql";
+       license = lib.licenses.bsd3;
+       hydraPlatforms = lib.platforms.none;
+       mainProgram = "hasql-notifications";
+     }) {};
+
   "hasql-optparse-applicative" = callPackage
     ({ mkDerivation, attoparsec, attoparsec-time, base, hasql
      , hasql-pool, optparse-applicative
@@ -141468,14 +142707,14 @@ self: {
        license = lib.licenses.mit;
      }) {};
 
-  "hasql-optparse-applicative_0_8" = callPackage
+  "hasql-optparse-applicative_0_8_0_1" = callPackage
     ({ mkDerivation, attoparsec, attoparsec-time, base, bytestring
      , hasql, hasql-pool, optparse-applicative, time
      }:
      mkDerivation {
        pname = "hasql-optparse-applicative";
-       version = "0.8";
-       sha256 = "1fpw4rzj4z305wjnwzg9kiln3x4qcxxks47p9gb32zzyd93c7r9a";
+       version = "0.8.0.1";
+       sha256 = "0xxli8ln3kpwci7iksy6za3pmnds6blw0y349c76ibfjb69d412k";
        libraryHaskellDepends = [
          attoparsec attoparsec-time base bytestring hasql hasql-pool
          optparse-applicative time
@@ -141514,14 +142753,14 @@ self: {
        license = lib.licenses.mit;
      }) {};
 
-  "hasql-pool_1_0_1" = callPackage
+  "hasql-pool_1_2_0_1" = callPackage
     ({ mkDerivation, async, base, bytestring, hasql, hspec, random
      , rerebase, stm, text, time, uuid
      }:
      mkDerivation {
        pname = "hasql-pool";
-       version = "1.0.1";
-       sha256 = "1z14fdpw1vjr07xz9mjv04i4implk71l61b1p3b1kl34zgvllg1y";
+       version = "1.2.0.1";
+       sha256 = "0kn5m4nx06zrwrb9ybz7hz24c73zn5lnjyvdxkvjqfhg3my5a8ch";
        libraryHaskellDepends = [
          base bytestring hasql stm text time uuid
        ];
@@ -141766,8 +143005,8 @@ self: {
      }:
      mkDerivation {
        pname = "hasql-th";
-       version = "0.4.0.19";
-       sha256 = "170cs69747kxnbj67acl2had47656i0bslvagh0f0mfdya1lsrmc";
+       version = "0.4.0.21";
+       sha256 = "1agllfk5zrpbccxr0wa9q81fmymfsa4alinj4hvqid1szzijsghl";
        libraryHaskellDepends = [
          base bytestring containers contravariant foldl hasql
          postgresql-syntax template-haskell template-haskell-compat-v0208
@@ -141795,15 +143034,15 @@ self: {
        license = lib.licenses.mit;
      }) {};
 
-  "hasql-transaction_1_1_0_1" = callPackage
+  "hasql-transaction_1_1_1" = callPackage
     ({ mkDerivation, async, base, bytestring, bytestring-tree-builder
      , contravariant, contravariant-extras, hasql, mtl, rerebase
      , transformers
      }:
      mkDerivation {
        pname = "hasql-transaction";
-       version = "1.1.0.1";
-       sha256 = "1b59lrr046hs7g01n5lq9g0si2cfc2zhz5r92g31b4c3cr8va3hv";
+       version = "1.1.1";
+       sha256 = "1fwk6ngwwpv992lbndxjbjzh7zvz3szijdcw4nnaahpf1w7iw96p";
        libraryHaskellDepends = [
          base bytestring bytestring-tree-builder contravariant
          contravariant-extras hasql mtl transformers
@@ -142283,9 +143522,7 @@ self: {
        ];
        description = "Library for checking for weak/compromised passwords";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
        mainProgram = "readme";
-       broken = true;
      }) {};
 
   "haven" = callPackage
@@ -142493,8 +143730,8 @@ self: {
        pname = "haxr";
        version = "3000.11.5";
        sha256 = "1n2q7r0a6c24xbvdnl7ql5cc25sbbalmdc75rmlpazhkazq8jy99";
-       revision = "2";
-       editedCabalFile = "0nra68lczd019nxcgdxh82k6h846dwjd14k9ql1ngh6g35sq9hdq";
+       revision = "4";
+       editedCabalFile = "14cmszqfr4c8zp9zzz1729m3a4fhiglp3h04zqza4capf2cw5mr5";
        libraryHaskellDepends = [
          array base base-compat base64-bytestring blaze-builder bytestring
          HaXml HsOpenSSL http-streams http-types io-streams mtl mtl-compat
@@ -144241,13 +145478,14 @@ self: {
     ({ mkDerivation, aeson, aeson-pretty, async, base, bytestring
      , deepseq, Diff, directory, exceptions, filepath, hedgehog
      , http-conduit, lifted-async, lifted-base, mmorph, monad-control
-     , mtl, network, process, resourcet, stm, tar, temporary, text, time
-     , transformers, transformers-base, unliftio, yaml, zlib
+     , mtl, network, process, resourcet, stm, tar, tasty, tasty-discover
+     , tasty-hedgehog, temporary, text, time, transformers
+     , transformers-base, unliftio, yaml, zlib
      }:
      mkDerivation {
        pname = "hedgehog-extras";
-       version = "0.6.1.0";
-       sha256 = "1j0b78l1dbffwgmkjlxcycccgl62gglc0cmmbdmgaxr75hmdcm2d";
+       version = "0.6.3.0";
+       sha256 = "0zh01kd50130jnvcc0azk9b44645gakmg2mahvvw0h3xhnzxvy0v";
        libraryHaskellDepends = [
          aeson aeson-pretty async base bytestring deepseq Diff directory
          exceptions filepath hedgehog http-conduit lifted-async lifted-base
@@ -144255,6 +145493,11 @@ self: {
          temporary text time transformers transformers-base unliftio yaml
          zlib
        ];
+       testHaskellDepends = [
+         base hedgehog network process resourcet tasty tasty-hedgehog time
+         transformers
+       ];
+       testToolDepends = [ tasty-discover ];
        description = "Supplemental library for hedgehog";
        license = lib.licenses.asl20;
      }) {};
@@ -144396,8 +145639,8 @@ self: {
        pname = "hedgehog-quickcheck";
        version = "0.1.1";
        sha256 = "1z2ja63wqz83qhwzh0zs98k502v8fjdpnsnhqk3srypx2nw5vdlp";
-       revision = "6";
-       editedCabalFile = "0ymfpbnywq83xbz1rmp8w3piikgvzriczwcvhir125nk50mgp0xz";
+       revision = "7";
+       editedCabalFile = "02zcrmyvlby7g0sld73a6wdmzzl6kjvx365n0r38lw5hg015r3d4";
        libraryHaskellDepends = [ base hedgehog QuickCheck transformers ];
        description = "Use QuickCheck generators in Hedgehog and vice versa";
        license = lib.licenses.bsd3;
@@ -144757,6 +146000,8 @@ self: {
        pname = "heist";
        version = "1.1.1.2";
        sha256 = "1377740si611j0szp64axy0xj1fi2a6w8i9s3xij89h34m7rb3rz";
+       revision = "1";
+       editedCabalFile = "0glg856n9w1pf74d0kr3v10saw26z54j32mb12hd3xqh8xq34lf6";
        libraryHaskellDepends = [
          aeson attoparsec base blaze-builder blaze-html bytestring
          containers directory directory-tree dlist filepath hashable
@@ -145357,8 +146602,8 @@ self: {
      }:
      mkDerivation {
        pname = "hercules-ci-agent";
-       version = "0.10.1";
-       sha256 = "1mclrxy2cxa2qcswk95klpp45n59ngw0sdwqgl9r7i2hwsg1nzm8";
+       version = "0.10.2";
+       sha256 = "08j5pp0a8nhm74qs0wnymiyg5kmqd8vr9bxf713jq6m0czw6rw3j";
        isLibrary = true;
        isExecutable = true;
        enableSeparateDataOutput = true;
@@ -145416,8 +146661,8 @@ self: {
      }:
      mkDerivation {
        pname = "hercules-ci-api";
-       version = "0.8.2.0";
-       sha256 = "0mnjhz0jg9rzgdp5pp0i4gfi5il995a5dv8sw58h4kb15kww1rfp";
+       version = "0.8.3.0";
+       sha256 = "02lkh7dwcr0am9dk1v38p8jad2hfxh453i5f6073jnmpgwca0gv5";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -145485,8 +146730,8 @@ self: {
      }:
      mkDerivation {
        pname = "hercules-ci-api-core";
-       version = "0.1.6.0";
-       sha256 = "14qxg92j7pq0v0qd2rva8gk11dazwnll88flhgjkv69349ww01q7";
+       version = "0.1.7.0";
+       sha256 = "1l9bap3dhfvkwd8si3cbgmhi6ywl4k2vm2x2jmg5h1s25mgki0sk";
        libraryHaskellDepends = [
          aeson base bytestring containers cookie deepseq exceptions hashable
          http-api-data http-media katip lens lifted-base memory
@@ -145556,8 +146801,8 @@ self: {
      }:
      mkDerivation {
        pname = "hercules-ci-cnix-expr";
-       version = "0.3.6.1";
-       sha256 = "19bawyynxb19gr9ndy3a0f88d62ivxqk316qavrbxam7azdf0rzr";
+       version = "0.3.6.2";
+       sha256 = "07alrxwxlkwlz9z6jp9c1n2fcq1bw8426gv031hpvfmdw22n0byz";
        enableSeparateDataOutput = true;
        setupHaskellDepends = [ base Cabal cabal-pkg-config-version-hook ];
        libraryHaskellDepends = [
@@ -145586,8 +146831,8 @@ self: {
      }:
      mkDerivation {
        pname = "hercules-ci-cnix-store";
-       version = "0.3.5.0";
-       sha256 = "103jgh27lxh81iszn9a7268s0lmiadxgdh5df6zj2ldb2hak2nir";
+       version = "0.3.5.1";
+       sha256 = "1mmcmnh6bwfxyrwkn294zypj2z8qcdla60cym2xnyap6siv389f1";
        setupHaskellDepends = [ base Cabal cabal-pkg-config-version-hook ];
        libraryHaskellDepends = [
          base bytestring conduit containers inline-c inline-c-cpp protolude
@@ -147611,6 +148856,41 @@ self: {
        mainProgram = "hie-bios";
      }) {};
 
+  "hie-bios_0_14_0" = callPackage
+    ({ mkDerivation, aeson, base, base16-bytestring, bytestring
+     , co-log-core, conduit, conduit-extra, cryptohash-sha1, deepseq
+     , directory, exceptions, extra, file-embed, filepath, ghc
+     , optparse-applicative, prettyprinter, tasty
+     , tasty-expected-failure, tasty-hunit, template-haskell, temporary
+     , text, time, transformers, unix-compat, unordered-containers, yaml
+     }:
+     mkDerivation {
+       pname = "hie-bios";
+       version = "0.14.0";
+       sha256 = "1caszgj3x3l13q6w26snx49yqyzjfgiik4403gl3mfalkrgbvk2g";
+       isLibrary = true;
+       isExecutable = true;
+       libraryHaskellDepends = [
+         aeson base base16-bytestring bytestring co-log-core conduit
+         conduit-extra cryptohash-sha1 deepseq directory exceptions extra
+         file-embed filepath ghc prettyprinter template-haskell temporary
+         text time transformers unix-compat unordered-containers yaml
+       ];
+       executableHaskellDepends = [
+         base co-log-core directory filepath optparse-applicative
+         prettyprinter
+       ];
+       testHaskellDepends = [
+         aeson base co-log-core directory extra filepath ghc prettyprinter
+         tasty tasty-expected-failure tasty-hunit temporary transformers
+         yaml
+       ];
+       description = "Set up a GHC API session";
+       license = lib.licenses.bsd3;
+       hydraPlatforms = lib.platforms.none;
+       mainProgram = "hie-bios";
+     }) {};
+
   "hie-compat" = callPackage
     ({ mkDerivation, array, base, bytestring, containers, directory
      , filepath, ghc, ghc-boot, transformers
@@ -149515,18 +150795,18 @@ self: {
 
   "hkgr" = callPackage
     ({ mkDerivation, base, bytestring, directory, extra, filepath
-     , simple-cabal, simple-cmd-args, simple-prompt, typed-process
-     , xdg-basedir
+     , simple-cabal, simple-cmd, simple-cmd-args, simple-prompt
+     , typed-process, xdg-basedir
      }:
      mkDerivation {
        pname = "hkgr";
-       version = "0.4.3.2";
-       sha256 = "1c87hpd4p4mq3cx5m52c7hkwp18f5klkkfx342q2zmkks97lf1zb";
+       version = "0.4.4";
+       sha256 = "03vz4f7jjklbjsmh17kljnnbpk5m5a0r1q67g1r23vhpx2dkk7vk";
        isLibrary = false;
        isExecutable = true;
        enableSeparateDataOutput = true;
        executableHaskellDepends = [
-         base bytestring directory extra filepath simple-cabal
+         base bytestring directory extra filepath simple-cabal simple-cmd
          simple-cmd-args simple-prompt typed-process xdg-basedir
        ];
        description = "Simple Hackage release workflow for package maintainers";
@@ -149686,6 +150966,54 @@ self: {
        ];
      }) {};
 
+  "hledger_1_33_1" = callPackage
+    ({ mkDerivation, aeson, ansi-terminal, base, bytestring, cmdargs
+     , containers, data-default, Decimal, Diff, directory, extra
+     , filepath, githash, hashable, haskeline, hledger-lib, lucid
+     , math-functions, megaparsec, microlens, mtl, process, regex-tdfa
+     , safe, shakespeare, split, tabular, tasty, temporary, terminfo
+     , text, text-ansi, time, timeit, transformers, unordered-containers
+     , utf8-string, utility-ht, wizards
+     }:
+     mkDerivation {
+       pname = "hledger";
+       version = "1.33.1";
+       sha256 = "14vx74c1lj4kj81p9qrdi9ln8fs15dk3xz0yy3aaq7xp979jj21f";
+       isLibrary = true;
+       isExecutable = true;
+       libraryHaskellDepends = [
+         aeson ansi-terminal base bytestring cmdargs containers data-default
+         Decimal Diff directory extra filepath githash hashable haskeline
+         hledger-lib lucid math-functions megaparsec microlens mtl process
+         regex-tdfa safe shakespeare split tabular tasty temporary terminfo
+         text text-ansi time timeit transformers unordered-containers
+         utf8-string utility-ht wizards
+       ];
+       executableHaskellDepends = [
+         aeson ansi-terminal base bytestring cmdargs containers data-default
+         Decimal directory extra filepath githash haskeline hledger-lib
+         math-functions megaparsec microlens mtl process regex-tdfa safe
+         shakespeare split tabular tasty temporary terminfo text text-ansi
+         time timeit transformers unordered-containers utf8-string
+         utility-ht wizards
+       ];
+       testHaskellDepends = [
+         aeson ansi-terminal base bytestring cmdargs containers data-default
+         Decimal directory extra filepath githash haskeline hledger-lib
+         math-functions megaparsec microlens mtl process regex-tdfa safe
+         shakespeare split tabular tasty temporary terminfo text text-ansi
+         time timeit transformers unordered-containers utf8-string
+         utility-ht wizards
+       ];
+       description = "Command-line interface for the hledger accounting system";
+       license = lib.licenses.gpl3Only;
+       hydraPlatforms = lib.platforms.none;
+       mainProgram = "hledger";
+       maintainers = [
+         lib.maintainers.maralorn lib.maintainers.sternenseemann
+       ];
+     }) {};
+
   "hledger-api" = callPackage
     ({ mkDerivation, aeson, base, bytestring, containers, data-default
      , Decimal, docopt, either, hledger, hledger-lib, microlens
@@ -149813,6 +151141,42 @@ self: {
        broken = true;
      }) {};
 
+  "hledger-iadd_1_3_21" = callPackage
+    ({ mkDerivation, base, brick, containers, directory, free
+     , hledger-lib, hspec, hspec-discover, megaparsec, microlens
+     , microlens-mtl, microlens-th, optparse-applicative, QuickCheck
+     , quickcheck-instances, text, text-zipper, time, transformers
+     , unordered-containers, vector, vty, xdg-basedir
+     }:
+     mkDerivation {
+       pname = "hledger-iadd";
+       version = "1.3.21";
+       sha256 = "00x0vbfp08kqs1nbknndk9h56hcidf6xnrk0ldz45dvjrmgcv3w2";
+       isLibrary = true;
+       isExecutable = true;
+       libraryHaskellDepends = [
+         base brick containers directory free hledger-lib megaparsec
+         microlens microlens-mtl microlens-th optparse-applicative text
+         text-zipper time transformers unordered-containers vector vty
+         xdg-basedir
+       ];
+       executableHaskellDepends = [
+         base brick directory free hledger-lib megaparsec microlens
+         microlens-mtl microlens-th optparse-applicative text text-zipper
+         time transformers unordered-containers vector vty xdg-basedir
+       ];
+       testHaskellDepends = [
+         base free hledger-lib hspec megaparsec QuickCheck
+         quickcheck-instances text text-zipper time transformers vector
+       ];
+       testToolDepends = [ hspec-discover ];
+       description = "A terminal UI as drop-in replacement for hledger add";
+       license = lib.licenses.bsd3;
+       hydraPlatforms = lib.platforms.none;
+       mainProgram = "hledger-iadd";
+       broken = true;
+     }) {};
+
   "hledger-interest" = callPackage
     ({ mkDerivation, base, Cabal, Decimal, hledger-lib, mtl, text, time
      }:
@@ -149820,8 +151184,8 @@ self: {
        pname = "hledger-interest";
        version = "1.6.6";
        sha256 = "0hklpg9sgghrcvkrgz7kfr8jc6kwsv8zzpbbg0c3idhbdxwg74d8";
-       revision = "2";
-       editedCabalFile = "0bb1bhybiaih7fc54y3n24xrcpxv6k6iccv2c6byypbcv4jx8m8d";
+       revision = "3";
+       editedCabalFile = "0yywynp3yrdssh2vr7jwp0izr890hfn9kjy6cl9ad8mx1qfyg771";
        isLibrary = false;
        isExecutable = true;
        executableHaskellDepends = [
@@ -149893,6 +151257,46 @@ self: {
        license = lib.licenses.gpl3Only;
      }) {};
 
+  "hledger-lib_1_33_1" = callPackage
+    ({ mkDerivation, aeson, aeson-pretty, ansi-terminal, array, base
+     , base-compat, blaze-markup, bytestring, call-stack, cassava
+     , cassava-megaparsec, cmdargs, colour, containers, data-default
+     , Decimal, deepseq, directory, doclayout, doctest, extra
+     , file-embed, filepath, Glob, hashtables, megaparsec, microlens
+     , microlens-th, mtl, pager, parser-combinators, pretty-simple
+     , regex-tdfa, safe, tabular, tasty, tasty-hunit, template-haskell
+     , terminal-size, text, text-ansi, time, timeit, transformers
+     , uglymemo, unordered-containers, utf8-string
+     }:
+     mkDerivation {
+       pname = "hledger-lib";
+       version = "1.33.1";
+       sha256 = "12l3c6ixmfb65c566vgrfksggrpgab11f1v658dk5gy482p994vb";
+       libraryHaskellDepends = [
+         aeson aeson-pretty ansi-terminal array base base-compat
+         blaze-markup bytestring call-stack cassava cassava-megaparsec
+         cmdargs colour containers data-default Decimal deepseq directory
+         doclayout extra file-embed filepath Glob hashtables megaparsec
+         microlens microlens-th mtl pager parser-combinators pretty-simple
+         regex-tdfa safe tabular tasty tasty-hunit template-haskell
+         terminal-size text text-ansi time timeit transformers uglymemo
+         unordered-containers utf8-string
+       ];
+       testHaskellDepends = [
+         aeson aeson-pretty ansi-terminal array base base-compat
+         blaze-markup bytestring call-stack cassava cassava-megaparsec
+         cmdargs colour containers data-default Decimal deepseq directory
+         doclayout doctest extra file-embed filepath Glob hashtables
+         megaparsec microlens microlens-th mtl pager parser-combinators
+         pretty-simple regex-tdfa safe tabular tasty tasty-hunit
+         template-haskell terminal-size text text-ansi time timeit
+         transformers uglymemo unordered-containers utf8-string
+       ];
+       description = "A library providing the core functionality of hledger";
+       license = lib.licenses.gpl3Only;
+       hydraPlatforms = lib.platforms.none;
+     }) {};
+
   "hledger-makeitso" = callPackage
     ({ mkDerivation, base, containers, foldl, HUnit, stm, text, time
      , turtle
@@ -149973,6 +151377,33 @@ self: {
        maintainers = [ lib.maintainers.maralorn ];
      }) {};
 
+  "hledger-ui_1_33_1" = callPackage
+    ({ mkDerivation, ansi-terminal, async, base, brick, cmdargs
+     , containers, data-default, directory, doclayout, extra, filepath
+     , fsnotify, hledger, hledger-lib, megaparsec, microlens
+     , microlens-platform, mtl, process, safe, split, text, text-zipper
+     , time, transformers, unix, vector, vty, vty-crossplatform
+     }:
+     mkDerivation {
+       pname = "hledger-ui";
+       version = "1.33.1";
+       sha256 = "1x05jdm6aargcnghvmdayzacigc8is5ra8xpnava499kwqk5x66i";
+       isLibrary = true;
+       isExecutable = true;
+       libraryHaskellDepends = [
+         ansi-terminal async base brick cmdargs containers data-default
+         directory doclayout extra filepath fsnotify hledger hledger-lib
+         megaparsec microlens microlens-platform mtl process safe split text
+         text-zipper time transformers unix vector vty vty-crossplatform
+       ];
+       executableHaskellDepends = [ base ];
+       description = "Terminal interface for the hledger accounting system";
+       license = lib.licenses.gpl3Only;
+       hydraPlatforms = lib.platforms.none;
+       mainProgram = "hledger-ui";
+       maintainers = [ lib.maintainers.maralorn ];
+     }) {};
+
   "hledger-vty" = callPackage
     ({ mkDerivation, base, cmdargs, hledger, hledger-lib, HUnit, safe
      , time, vty
@@ -150030,6 +151461,42 @@ self: {
        maintainers = [ lib.maintainers.maralorn ];
      }) {};
 
+  "hledger-web_1_33_1" = callPackage
+    ({ mkDerivation, aeson, base, base64, blaze-html, blaze-markup
+     , bytestring, case-insensitive, clientsession, cmdargs, conduit
+     , conduit-extra, containers, data-default, Decimal, directory
+     , extra, filepath, hjsmin, hledger, hledger-lib, hspec, http-client
+     , http-conduit, http-types, megaparsec, mtl, network, safe
+     , shakespeare, template-haskell, text, time, transformers
+     , unix-compat, unordered-containers, utf8-string, wai, wai-cors
+     , wai-extra, wai-handler-launch, warp, yaml, yesod, yesod-core
+     , yesod-form, yesod-static, yesod-test
+     }:
+     mkDerivation {
+       pname = "hledger-web";
+       version = "1.33.1";
+       sha256 = "1f5xk0s93n2r8ar0l3hxfxxvi5gbb2sn1fhlg8mvkjbh93krywqr";
+       isLibrary = true;
+       isExecutable = true;
+       libraryHaskellDepends = [
+         aeson base base64 blaze-html blaze-markup bytestring
+         case-insensitive clientsession cmdargs conduit conduit-extra
+         containers data-default Decimal directory extra filepath hjsmin
+         hledger hledger-lib hspec http-client http-conduit http-types
+         megaparsec mtl network safe shakespeare template-haskell text time
+         transformers unix-compat unordered-containers utf8-string wai
+         wai-cors wai-extra wai-handler-launch warp yaml yesod yesod-core
+         yesod-form yesod-static yesod-test
+       ];
+       executableHaskellDepends = [ base ];
+       testHaskellDepends = [ base ];
+       description = "Web user interface for the hledger accounting system";
+       license = lib.licenses.gpl3Only;
+       hydraPlatforms = lib.platforms.none;
+       mainProgram = "hledger-web";
+       maintainers = [ lib.maintainers.maralorn ];
+     }) {};
+
   "hlex" = callPackage
     ({ mkDerivation, base, HUnit, regex-tdfa }:
      mkDerivation {
@@ -150760,8 +152227,8 @@ self: {
      }:
      mkDerivation {
        pname = "hls-graph";
-       version = "2.7.0.0";
-       sha256 = "0xrcmzz4545rzm3a3clm6flhy653ba56s5cdsd2x31spkir10hg7";
+       version = "2.8.0.0";
+       sha256 = "0s8igxwbg7r0yjz6975vz7zw4yj9ik8733p0n7zcyvcv87ankxkd";
        enableSeparateDataOutput = true;
        libraryHaskellDepends = [
          aeson async base bytestring containers deepseq directory exceptions
@@ -150898,8 +152365,8 @@ self: {
      }:
      mkDerivation {
        pname = "hls-plugin-api";
-       version = "2.7.0.0";
-       sha256 = "0akvd9bg6i6v7xsidalg4nm4pqs5z6mbjbklacdcznifwyvcsf1v";
+       version = "2.8.0.0";
+       sha256 = "0s5jywzafd1dyhya4n80w1i7si4br7wmxwp6q3f11f787qqbv5xs";
        libraryHaskellDepends = [
          aeson base co-log-core containers data-default dependent-map
          dependent-sum Diff dlist extra filepath ghc hashable hls-graph
@@ -151197,19 +152664,19 @@ self: {
   "hls-test-utils" = callPackage
     ({ mkDerivation, aeson, async, base, bytestring, containers
      , data-default, directory, extra, filepath, ghcide, hls-plugin-api
-     , lens, lsp-test, lsp-types, row-types, tasty
+     , lens, lsp-test, lsp-types, row-types, safe-exceptions, tasty
      , tasty-expected-failure, tasty-golden, tasty-hunit, tasty-rerun
      , temporary, text
      }:
      mkDerivation {
        pname = "hls-test-utils";
-       version = "2.7.0.0";
-       sha256 = "1gmhfg8357hka2mnb3rpzv941nfqlwf5nk29gqhh1vmschsc95h8";
+       version = "2.8.0.0";
+       sha256 = "1fk6n88g9z4yihvimzwi0bnmysr77qv3zdlcpr62lczl8pvm89d2";
        libraryHaskellDepends = [
          aeson async base bytestring containers data-default directory extra
          filepath ghcide hls-plugin-api lens lsp-test lsp-types row-types
-         tasty tasty-expected-failure tasty-golden tasty-hunit tasty-rerun
-         temporary text
+         safe-exceptions tasty tasty-expected-failure tasty-golden
+         tasty-hunit tasty-rerun temporary text
        ];
        description = "Utilities used in the tests of Haskell Language Server";
        license = lib.licenses.asl20;
@@ -152735,14 +154202,12 @@ self: {
      }) {OIS = null;};
 
   "hoist-error" = callPackage
-    ({ mkDerivation, base, either, mtl }:
+    ({ mkDerivation, base, mtl }:
      mkDerivation {
        pname = "hoist-error";
-       version = "0.2.1.0";
-       sha256 = "028lczd80nhj3yj5dq9qixzdzkyisl34qpi6bb28r8b9nj2i2nss";
-       revision = "6";
-       editedCabalFile = "0wlicjvc2w2vjbnxr3fc417hp1bb4iqvq7pww8wn8b1j8mij60yp";
-       libraryHaskellDepends = [ base either mtl ];
+       version = "0.3.0.0";
+       sha256 = "160967zsp8rzsvs12crsxh3854lnhxiidv8adixb4nf9hxvdnka6";
+       libraryHaskellDepends = [ base mtl ];
        description = "Some convenience facilities for hoisting errors into a monad";
        license = lib.licenses.mit;
        hydraPlatforms = lib.platforms.none;
@@ -153852,8 +155317,8 @@ self: {
        pname = "horizontal-rule";
        version = "0.6.0.0";
        sha256 = "03rh58znaghcf1gicbwbxkx5ya4lv7qi8b2lq5nawi35ljars02x";
-       revision = "3";
-       editedCabalFile = "06jfn80vrss7vz4g3wxbn2cz5x77sm8mw03d9lvchsnxmpw1yhxc";
+       revision = "4";
+       editedCabalFile = "0bax92xg4rd92y7fv332bqfl6k2wk8k1dbmrgr6a5p4vx36l58f0";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [ base terminal-size text ];
@@ -154580,14 +156045,14 @@ self: {
        license = lib.licenses.bsd3;
      }) {};
 
-  "hpc_0_7_0_1" = callPackage
+  "hpc_0_7_0_2" = callPackage
     ({ mkDerivation, base, containers, deepseq, directory, filepath
      , time
      }:
      mkDerivation {
        pname = "hpc";
-       version = "0.7.0.1";
-       sha256 = "1h8vifsx310zqf0sxh63a9z4lv7ymyncrlbba46si37mb75if66s";
+       version = "0.7.0.2";
+       sha256 = "17dnfs7wllcivxyl49gqn9xj1q94l43sbk57x8b690yjxh5ki0gh";
        libraryHaskellDepends = [
          base containers deepseq directory filepath time
        ];
@@ -154618,6 +156083,29 @@ self: {
        mainProgram = "hpc-codecov";
      }) {};
 
+  "hpc-codecov_0_6_0_0" = callPackage
+    ({ mkDerivation, array, base, bytestring, containers, directory
+     , filepath, hpc, process, tasty, tasty-golden, tasty-hunit, time
+     }:
+     mkDerivation {
+       pname = "hpc-codecov";
+       version = "0.6.0.0";
+       sha256 = "1if8nmqv6pcv92ww8ncaxkvaawdr9shmsdsnr9xvzfmhqjq83q7w";
+       isLibrary = true;
+       isExecutable = true;
+       libraryHaskellDepends = [
+         array base bytestring containers directory filepath hpc time
+       ];
+       executableHaskellDepends = [ base ];
+       testHaskellDepends = [
+         base directory filepath hpc process tasty tasty-golden tasty-hunit
+       ];
+       description = "Generate reports from hpc data";
+       license = lib.licenses.bsd3;
+       hydraPlatforms = lib.platforms.none;
+       mainProgram = "hpc-codecov";
+     }) {};
+
   "hpc-coveralls" = callPackage
     ({ mkDerivation, aeson, async, base, bytestring, Cabal, cmdargs
      , containers, curl, directory, directory-tree, hpc, HUnit, process
@@ -155604,6 +157092,8 @@ self: {
        pname = "hs-captcha";
        version = "1.0";
        sha256 = "02dd7kli8nm01jxs0p8imqvbdr4yzqizi6bwyyr228p3wscbdsn8";
+       revision = "1";
+       editedCabalFile = "1471bpysxaghakm24isharvclj6fkv1yb1g28zkw1jp3143shmj6";
        libraryHaskellDepends = [ base bytestring gd random ];
        description = "Generate images suitable for use as CAPTCHAs in online web-form security";
        license = lib.licenses.bsd3;
@@ -158712,25 +160202,6 @@ self: {
      }:
      mkDerivation {
        pname = "hslogger";
-       version = "1.3.1.0";
-       sha256 = "0nyar9xcblx5jwks85y8f4jfy9k1h4ss6rvj4mdbiidrq3v688vz";
-       revision = "9";
-       editedCabalFile = "1isrz8a09n88fww66qdrq76xlglai8sq14jk2ibv79g045qapj1g";
-       libraryHaskellDepends = [
-         base bytestring containers deepseq network network-bsd old-locale
-         time unix
-       ];
-       testHaskellDepends = [ base HUnit ];
-       description = "Versatile logging framework";
-       license = lib.licenses.bsd3;
-     }) {};
-
-  "hslogger_1_3_1_1" = callPackage
-    ({ mkDerivation, base, bytestring, containers, deepseq, HUnit
-     , network, network-bsd, old-locale, time, unix
-     }:
-     mkDerivation {
-       pname = "hslogger";
        version = "1.3.1.1";
        sha256 = "0k8imyj2531j6k3c2bn0bavr175km2vwjlwg89vjvl00gdb107c4";
        libraryHaskellDepends = [
@@ -158740,7 +160211,6 @@ self: {
        testHaskellDepends = [ base HUnit ];
        description = "Versatile logging framework";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
      }) {};
 
   "hslogger-reader" = callPackage
@@ -159071,8 +160541,8 @@ self: {
      }:
      mkDerivation {
        pname = "hslua-module-zip";
-       version = "1.1.1";
-       sha256 = "0cpfric0c5isb8nk6137iwl40x0w0lrynx5rzjyhrcjxawkz1hbx";
+       version = "1.1.3";
+       sha256 = "1fws5jwf1zwqilgm05y28ywgxavygnjpdlj43nhfg8cmng1p0kyq";
        libraryHaskellDepends = [
          base bytestring filepath hslua-core hslua-list hslua-marshalling
          hslua-packaging hslua-typing text time zip-archive
@@ -159548,8 +161018,8 @@ self: {
      }:
      mkDerivation {
        pname = "hspec";
-       version = "2.11.7";
-       sha256 = "15ihdrs1jiy1skk7gcr5y7rpfk2fbqpg470kjqzi794vpn510gia";
+       version = "2.11.8";
+       sha256 = "1w0ryyr9h1f87jgz56yl09x3yvd9zm2w1bj70k5p6pzdyz984cjr";
        libraryHaskellDepends = [
          base hspec-core hspec-discover hspec-expectations QuickCheck
        ];
@@ -159563,8 +161033,8 @@ self: {
      }:
      mkDerivation {
        pname = "hspec-api";
-       version = "2.11.7";
-       sha256 = "1i9i9hislxh6drza9ban2xg0vby2bcnvfwzhzijpipcj450qi7mj";
+       version = "2.11.8";
+       sha256 = "02hhmxgd4vz5jakp3nd6cwslh8qmqnlg6j3fq7my8lbdim95wnf6";
        libraryHaskellDepends = [ base hspec-core transformers ];
        testHaskellDepends = [ base hspec hspec-core transformers ];
        testToolDepends = [ hspec-discover ];
@@ -159640,8 +161110,8 @@ self: {
        pname = "hspec-core";
        version = "2.7.10";
        sha256 = "12k9yp5gznrda449ir60d5wv3xl7nnyffkb5mhfc0svw9f8lxlv1";
-       revision = "1";
-       editedCabalFile = "0g6x70fqwblf2dzjgq6hp4nj5vqrbfvzphl3j8a73h1966zhrxy9";
+       revision = "2";
+       editedCabalFile = "0l16mgxgapnihrvbwvhbz9i60v5fx68mhpv6zww9b68bdj6cpbsk";
        libraryHaskellDepends = [
          ansi-terminal array base call-stack clock deepseq directory
          filepath hspec-expectations HUnit QuickCheck quickcheck-io random
@@ -159669,8 +161139,8 @@ self: {
      }:
      mkDerivation {
        pname = "hspec-core";
-       version = "2.11.7";
-       sha256 = "0d5i67vm1skqyign9mi711vhyl72l98cii27vvlbg6x7p239pykg";
+       version = "2.11.8";
+       sha256 = "18zaiac5s830q01hq9ai67z5sk0ilvhz471vxabraif3rznrsmla";
        libraryHaskellDepends = [
          ansi-terminal array base call-stack deepseq directory filepath
          haskell-lexer hspec-expectations HUnit process QuickCheck
@@ -159737,8 +161207,8 @@ self: {
      }:
      mkDerivation {
        pname = "hspec-discover";
-       version = "2.11.7";
-       sha256 = "0anq2b6sg9jmhlwqivgld7w9ipl2nj0rnrc5v46k5ss5pcqb4qi8";
+       version = "2.11.8";
+       sha256 = "0s81mjb7an628c0gr3g74navnxzfahdl92zixdgys2is5rbd6yqf";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [ base directory filepath ];
@@ -160106,8 +161576,8 @@ self: {
      }:
      mkDerivation {
        pname = "hspec-meta";
-       version = "2.11.7";
-       sha256 = "0vfwcrg9iydb2mhjgvysmzmrmw7jy4r12f05sggdk7wpiivy4n6x";
+       version = "2.11.8";
+       sha256 = "0diwxrp6rkf0pchfnfhc5xdbhv9arbbmpgl8hyw5afbfmqjsd4kv";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -160426,12 +161896,12 @@ self: {
        license = lib.licenses.bsd3;
      }) {};
 
-  "hspec-tmp-proc_0_6_0_0" = callPackage
+  "hspec-tmp-proc_0_7_0_0" = callPackage
     ({ mkDerivation, base, hspec, tmp-proc }:
      mkDerivation {
        pname = "hspec-tmp-proc";
-       version = "0.6.0.0";
-       sha256 = "09qigl93brpsw2h043xjah7rfmibv1a2762i4qf7lpki84sjg6d5";
+       version = "0.7.0.0";
+       sha256 = "1jymv68nrxdfkk1p5j14nqvxvmxnrgvqiq0c7ljyfcf74gqc5hkx";
        libraryHaskellDepends = [ base hspec tmp-proc ];
        description = "Simplify use of tmp-proc from hspec tests";
        license = lib.licenses.bsd3;
@@ -160557,21 +162027,23 @@ self: {
      }) {};
 
   "hspray" = callPackage
-    ({ mkDerivation, base, containers, hashable, matrix
+    ({ mkDerivation, base, containers, extra, hashable, matrix
      , numeric-prelude, tasty, tasty-bench, tasty-hunit, text
      , unordered-containers
      }:
      mkDerivation {
        pname = "hspray";
-       version = "0.2.6.0";
-       sha256 = "1g9qm69bwf8cz5ly9jy1yflqya8nabkgbm64irdvl99vs4ry59vc";
+       version = "0.5.2.0";
+       sha256 = "05fkyvb9h5hnv44nkk7ykhmhcajfc393rmn2a7dzqqgam44wpydl";
        libraryHaskellDepends = [
-         base containers hashable matrix numeric-prelude text
+         base containers extra hashable matrix numeric-prelude text
          unordered-containers
        ];
-       testHaskellDepends = [ base numeric-prelude tasty tasty-hunit ];
-       benchmarkHaskellDepends = [ base tasty-bench ];
-       description = "Multivariate polynomials";
+       testHaskellDepends = [
+         base matrix numeric-prelude tasty tasty-hunit unordered-containers
+       ];
+       benchmarkHaskellDepends = [ base numeric-prelude tasty-bench ];
+       description = "Multivariate polynomials and fractions of multivariate polynomials";
        license = lib.licenses.gpl3Only;
      }) {};
 
@@ -161029,6 +162501,8 @@ self: {
        pname = "hstar";
        version = "0.1.0.6";
        sha256 = "0fcb37yi81059r2nqmq1809q5mdx8q2fyvs7b9fsj3j2fqmgnai6";
+       revision = "2";
+       editedCabalFile = "0ncj58a8rkwkwlcv50q5i6c9szss0kp0gbx8z38ycx1fhniig5qv";
        isLibrary = false;
        isExecutable = true;
        enableSeparateDataOutput = true;
@@ -161527,8 +163001,8 @@ self: {
      }:
      mkDerivation {
        pname = "htalkat";
-       version = "0.1.2.4";
-       sha256 = "0ckqri1ilkjgr71774y7hsdp3w9if5yr99lldxsprmz5k30csrnx";
+       version = "0.1.2.5";
+       sha256 = "043y9pmjqd7b45bmiddnc4dv8vk5mgl3gz8xc3aqmg8vf2drmvp5";
        isLibrary = false;
        isExecutable = true;
        executableHaskellDepends = [
@@ -163281,6 +164755,23 @@ self: {
        broken = true;
      }) {};
 
+  "http-semantics" = callPackage
+    ({ mkDerivation, array, base, bytestring, case-insensitive
+     , http-types, network, network-byte-order, time-manager
+     , utf8-string
+     }:
+     mkDerivation {
+       pname = "http-semantics";
+       version = "0.0.0";
+       sha256 = "04wi14c0hy2dpzazv6v49100dc4r16rzkii14625xkijcgjlcx7w";
+       libraryHaskellDepends = [
+         array base bytestring case-insensitive http-types network
+         network-byte-order time-manager utf8-string
+       ];
+       description = "HTTP senmatics libarry";
+       license = lib.licenses.bsd3;
+     }) {};
+
   "http-server" = callPackage
     ({ mkDerivation, base, HTTP, mime, network, network-uri, text, unix
      , url, utf8-string
@@ -163502,29 +164993,31 @@ self: {
        license = lib.licenses.bsd3;
      }) {};
 
-  "http2_5_1_4" = callPackage
+  "http2_5_2_1" = callPackage
     ({ mkDerivation, aeson, aeson-pretty, array, async, base
      , base16-bytestring, bytestring, case-insensitive, containers
      , crypton, directory, filepath, gauge, Glob, hspec, hspec-discover
-     , http-types, network, network-byte-order, network-control
-     , network-run, random, stm, text, time-manager, typed-process
-     , unix-time, unliftio, unordered-containers, utf8-string, vector
+     , http-semantics, http-types, network, network-byte-order
+     , network-control, network-run, random, stm, text, time-manager
+     , typed-process, unix-time, unliftio, unordered-containers
+     , utf8-string, vector
      }:
      mkDerivation {
        pname = "http2";
-       version = "5.1.4";
-       sha256 = "0asf51bfzbn0nxp0zn58089ym1c4wkcmh67qdd0s094r1qh9d5x2";
+       version = "5.2.1";
+       sha256 = "0qgyykw866m06d8br6ppwwq3dxzm028gssjq402qfs46axxkxzdf";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
-         array async base bytestring case-insensitive containers http-types
-         network network-byte-order network-control stm time-manager
-         unix-time unliftio utf8-string
+         array async base bytestring case-insensitive containers
+         http-semantics http-types network network-byte-order
+         network-control stm time-manager unix-time unliftio utf8-string
        ];
        testHaskellDepends = [
          aeson aeson-pretty async base base16-bytestring bytestring crypton
-         directory filepath Glob hspec http-types network network-byte-order
-         network-run random text typed-process unordered-containers vector
+         directory filepath Glob hspec http-semantics http-types network
+         network-byte-order network-run random text typed-process unliftio
+         unordered-containers vector
        ];
        testToolDepends = [ hspec-discover ];
        benchmarkHaskellDepends = [
@@ -163543,10 +165036,8 @@ self: {
      }:
      mkDerivation {
        pname = "http2-client";
-       version = "0.10.0.1";
-       sha256 = "1051qcnnigxyq20067r26gm3wp61p4ipga2pzjymd2wvnndx56hg";
-       revision = "1";
-       editedCabalFile = "1kh14m7r59lssxjrjdasrxbw6fh5ngbq0amn41863vsfff3rh1sq";
+       version = "0.10.0.2";
+       sha256 = "02hif41iiwjkh952jp03dbhpkm6zr4khcz8drzizmihsn3lm5pmk";
        libraryHaskellDepends = [
          async base bytestring containers deepseq http2 lifted-async
          lifted-base mtl network stm time tls transformers-base
@@ -163605,8 +165096,8 @@ self: {
      }:
      mkDerivation {
        pname = "http2-grpc-proto-lens";
-       version = "0.1.0.0";
-       sha256 = "0nhygkv1z7qrhnrgms3kzzay5h5qqrdi4081v896prwjl2xd2p4f";
+       version = "0.1.1.0";
+       sha256 = "07x1qv819sh5axw3irdam07j00pfhrh7c5f9fl9dqj3sq60ssvkn";
        libraryHaskellDepends = [
          base binary bytestring case-insensitive http2-grpc-types proto-lens
          zlib
@@ -163624,8 +165115,8 @@ self: {
        pname = "http2-grpc-proto3-wire";
        version = "0.1.0.0";
        sha256 = "00k7sm7z0q8k1zr3lcsyaciylk03c18cpdciqq33rfj6p7jwyphv";
-       revision = "1";
-       editedCabalFile = "0454bzkjf63avp8rckl5pp3l30nc41d3ixzbh9diaml70hkhsv2g";
+       revision = "2";
+       editedCabalFile = "141gxfhdy2dchxy7mymp6fp7iwf8ww0gsn7p1d0kcc5qr62my31f";
        libraryHaskellDepends = [
          base binary bytestring case-insensitive http2-grpc-types
          proto3-wire zlib
@@ -163659,8 +165150,8 @@ self: {
      }:
      mkDerivation {
        pname = "http2-tls";
-       version = "0.2.8";
-       sha256 = "0zb9wgwlyd4lac3ivcm9s49xjx226fiqxnx11rb39fnkyvldw01w";
+       version = "0.2.11";
+       sha256 = "1vi55fk0n168j42n83mdiifqksh7d2fq3pyg3fq06b7bj1597khm";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -163677,24 +165168,25 @@ self: {
   "http3" = callPackage
     ({ mkDerivation, array, attoparsec, base, base16-bytestring
      , bytestring, case-insensitive, conduit, conduit-extra, containers
-     , crypton, hspec, hspec-discover, http-types, http2, iproute
-     , network, network-byte-order, quic, QuickCheck, sockaddr, stm
-     , time-manager, tls, unliftio
+     , crypton, hspec, hspec-discover, http-semantics, http-types, http2
+     , iproute, network, network-byte-order, quic, QuickCheck, sockaddr
+     , stm, time-manager, tls, unliftio
      }:
      mkDerivation {
        pname = "http3";
-       version = "0.0.10";
-       sha256 = "0azhvf92wxxx9rlj2l8xc77ch7n52jpd7yjilzjfd55v06v9k2hz";
+       version = "0.0.11";
+       sha256 = "1z3hqalylraxmx18h82gljpbaslzd8mz2ndv8g15mhfac6jjz4rd";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
-         array base bytestring case-insensitive containers http-types http2
-         network network-byte-order quic sockaddr stm time-manager unliftio
+         array base bytestring case-insensitive containers http-semantics
+         http-types http2 network network-byte-order quic sockaddr stm
+         time-manager unliftio
        ];
        testHaskellDepends = [
          attoparsec base base16-bytestring bytestring conduit conduit-extra
-         crypton hspec http-types http2 iproute network quic QuickCheck stm
-         tls unliftio
+         crypton hspec http-semantics http-types http2 iproute network quic
+         QuickCheck stm tls unliftio
        ];
        testToolDepends = [ hspec-discover ];
        description = "HTTP/3 library";
@@ -165516,6 +167008,31 @@ self: {
        broken = true;
      }) {};
 
+  "hw-polysemy" = callPackage
+    ({ mkDerivation, base, bytestring, contravariant, Diff, directory
+     , filepath, ghc-prim, polysemy, polysemy-log, polysemy-plugin
+     , polysemy-time, process, stm, tasty, tasty-discover
+     , tasty-hedgehog, text, time
+     }:
+     mkDerivation {
+       pname = "hw-polysemy";
+       version = "0.2.0.0";
+       sha256 = "15y9qy5sb35x52cczabrkc4dc9z1sz8mipmi1wqc8z37x91py840";
+       libraryHaskellDepends = [
+         base bytestring contravariant Diff directory filepath ghc-prim
+         polysemy polysemy-log polysemy-plugin polysemy-time process stm
+         text time
+       ];
+       testHaskellDepends = [
+         base filepath polysemy polysemy-log polysemy-plugin tasty
+         tasty-hedgehog text
+       ];
+       testToolDepends = [ tasty-discover ];
+       doHaddock = false;
+       description = "Opinionated polysemy library";
+       license = lib.licenses.asl20;
+     }) {};
+
   "hw-prim" = callPackage
     ({ mkDerivation, base, bytestring, criterion, deepseq, directory
      , doctest, doctest-discover, exceptions, ghc-prim, hedgehog, hspec
@@ -165747,8 +167264,8 @@ self: {
        pname = "hw-string-parse";
        version = "0.0.0.5";
        sha256 = "0sg5s84pqyl93wm052ifrqv90cyc28awh4i6vcd8zbq746wdqz4k";
-       revision = "2";
-       editedCabalFile = "0580mz2gr11jc6lyyrnp5jxijzbir8qcsq979bc91jwcvc99kc5r";
+       revision = "3";
+       editedCabalFile = "1vsr2b5j8iz28h163ymv3cm03f975qhjbw5jfzzs6f4j4m53dh49";
        libraryHaskellDepends = [ base ];
        testHaskellDepends = [
          base bytestring doctest doctest-discover hspec QuickCheck vector
@@ -168657,8 +170174,8 @@ self: {
      }:
      mkDerivation {
        pname = "ihp-hsx";
-       version = "1.1.0";
-       sha256 = "0jzibardrljskif47x30z4nyxd4zw94lfg4cqhhp9jw8sgrk1vpp";
+       version = "1.3.0";
+       sha256 = "1d9hb87anx45xsv2s7xrhbq32vs3yh2834ziivgw6ycy6jznigpd";
        libraryHaskellDepends = [
          base blaze-html blaze-markup bytestring containers ghc megaparsec
          string-conversions template-haskell text
@@ -169350,6 +170867,17 @@ self: {
        broken = true;
      }) {};
 
+  "import-style-plugin" = callPackage
+    ({ mkDerivation, aeson, base, containers, ghc, yaml }:
+     mkDerivation {
+       pname = "import-style-plugin";
+       version = "0.1.0.0";
+       sha256 = "0fqqf2zb316m1vgspqirbi6nbysra4pz2bvkpxhh8qd7bjhda7m7";
+       libraryHaskellDepends = [ aeson base containers ghc yaml ];
+       description = "Helps maintain consistency of imports";
+       license = lib.licenses.mit;
+     }) {};
+
   "importify" = callPackage
     ({ mkDerivation, aeson, aeson-pretty, autoexporter, base
      , bytestring, Cabal, containers, filepath, fmt, foldl, hashable
@@ -169603,8 +171131,8 @@ self: {
        pname = "inchworm";
        version = "1.1.1.2";
        sha256 = "1dsrx48srmrqcw4y60prgnzxzr7nc7vyzjv0nnr2vaay3j6pxkii";
-       revision = "1";
-       editedCabalFile = "0xdak2ngj44p0p40k7pavq52f9x6yfglpixz2dp4a7sjw9hk1cxy";
+       revision = "2";
+       editedCabalFile = "0mgyipf3qc0f1k65l1qncs40r7cmgjvd40q5l10q94mr6hsvx58a";
        libraryHaskellDepends = [ base ];
        description = "Simple parser combinators for lexical analysis";
        license = lib.licenses.mit;
@@ -170070,6 +171598,19 @@ self: {
        license = lib.licenses.bsd3;
      }) {};
 
+  "indexed-state" = callPackage
+    ({ mkDerivation, base, lens, mtl, profunctors, semigroupoids }:
+     mkDerivation {
+       pname = "indexed-state";
+       version = "0.0.5";
+       sha256 = "0daf65wbpk3b11y6kk1fyrsm2xvrqxncz115g4cc8inwxgf9ca46";
+       libraryHaskellDepends = [
+         base lens mtl profunctors semigroupoids
+       ];
+       description = "Indexed State";
+       license = lib.licenses.bsd3;
+     }) {};
+
   "indexed-transformers" = callPackage
     ({ mkDerivation, base, free, mtl, transformers }:
      mkDerivation {
@@ -171468,6 +173009,24 @@ self: {
        license = lib.licenses.bsd3;
      }) {};
 
+  "integer-conversion_0_1_1" = callPackage
+    ({ mkDerivation, base, bytestring, primitive, QuickCheck, tasty
+     , tasty-bench, tasty-quickcheck, text
+     }:
+     mkDerivation {
+       pname = "integer-conversion";
+       version = "0.1.1";
+       sha256 = "0nhm487gdg17w02wwqwr56wa8lkv0g4n9g1y6pv10cq792h690f1";
+       libraryHaskellDepends = [ base bytestring primitive text ];
+       testHaskellDepends = [
+         base bytestring QuickCheck tasty tasty-quickcheck text
+       ];
+       benchmarkHaskellDepends = [ base bytestring tasty-bench text ];
+       description = "Conversion from strings to Integer";
+       license = lib.licenses.bsd3;
+       hydraPlatforms = lib.platforms.none;
+     }) {};
+
   "integer-gmp_1_1" = callPackage
     ({ mkDerivation, base, ghc-bignum, ghc-prim }:
      mkDerivation {
@@ -172183,19 +173742,20 @@ self: {
 
   "interval-patterns" = callPackage
     ({ mkDerivation, base, containers, deepseq, groups, hashable, heaps
-     , hspec, lattices, QuickCheck, semirings, time, time-compat
+     , hspec, lattices, parsec, QuickCheck, semirings, text, time
+     , time-compat
      }:
      mkDerivation {
        pname = "interval-patterns";
-       version = "0.7.2";
-       sha256 = "1cwv7yfc64zffa05mq300bb6zwdkgk85mjh10dzgnj1g1rd5z593";
+       version = "0.8.0";
+       sha256 = "1paciwq4wzl0kqkl5zzj486dsq5pg6275nj15gicv1czj7m9ncg9";
        libraryHaskellDepends = [
          base containers deepseq groups hashable heaps lattices semirings
          time time-compat
        ];
        testHaskellDepends = [
-         base containers deepseq groups hashable heaps hspec lattices
-         QuickCheck semirings time time-compat
+         base containers deepseq groups hashable heaps hspec lattices parsec
+         QuickCheck semirings text time time-compat
        ];
        description = "Intervals, and monoids thereof";
        license = lib.licenses.bsd3;
@@ -172248,8 +173808,8 @@ self: {
      }:
      mkDerivation {
        pname = "intricacy";
-       version = "0.8.2";
-       sha256 = "0k419xvh98ydpfmb0h1lr6k31gwh15370fbsfllcnzdvk3gqvbx8";
+       version = "0.8.2.1";
+       sha256 = "0aqjz6p83f79s1xwlaq6pn8581zzd669614im3j1jbn48h18bw1d";
        isLibrary = false;
        isExecutable = true;
        enableSeparateDataOutput = true;
@@ -172734,8 +174294,8 @@ self: {
        pname = "io-streams";
        version = "1.5.2.2";
        sha256 = "1zn4iyd18g9jc1qdgixp6hi56nj7czy4jdz2xca59hcn2q2xarfk";
-       revision = "4";
-       editedCabalFile = "12xc9y7ynxrw9gbqgr6kxslcdssbgkb361qiw3bgvimngjspjqzj";
+       revision = "5";
+       editedCabalFile = "0zwqb5wlwjs85j28z4znxpmf4m4svjbgzq8djybwvdhgniansyic";
        configureFlags = [ "-fnointeractivetests" ];
        libraryHaskellDepends = [
          attoparsec base bytestring network primitive process text time
@@ -172759,8 +174319,8 @@ self: {
        pname = "io-streams-haproxy";
        version = "1.0.1.0";
        sha256 = "1dcn5hd4fiwyq7m01r6fi93vfvygca5s6mz87c78m0zyj29clkmp";
-       revision = "8";
-       editedCabalFile = "03gzlz7hg2jvnx2355r65201680lcm59ln7azzb118abirl460s6";
+       revision = "9";
+       editedCabalFile = "1waziyv0f1iap83abgn4ax1zwbdbhfhzh72smzm1azqzl6ggcdq2";
        libraryHaskellDepends = [
          attoparsec base bytestring io-streams network transformers
        ];
@@ -174867,8 +176427,8 @@ self: {
      }:
      mkDerivation {
        pname = "jacinda";
-       version = "2.0.2.0";
-       sha256 = "0kinsb3cnz1s49fi2snaa9vink05hxcpjqzyx0ll948qfcb3gwkr";
+       version = "3.0.1.0";
+       sha256 = "0s0zsxh9jvdg9ya6qy99psazixgsmplajwbccpg2mn33rv2lfccf";
        isLibrary = false;
        isExecutable = true;
        enableSeparateDataOutput = true;
@@ -174941,18 +176501,20 @@ self: {
 
   "jackpolynomials" = callPackage
     ({ mkDerivation, array, base, combinat, containers, hspray
-     , hypergeomatrix, ilist, lens, numeric-prelude, tasty, tasty-hunit
+     , hypergeomatrix, ilist, lens, miniterion, numeric-prelude, tasty
+     , tasty-hunit
      }:
      mkDerivation {
        pname = "jackpolynomials";
-       version = "1.2.1.0";
-       sha256 = "1iwzsld7xxrlzsx5vs84lgbgdjrds316fryf1y40l6pb57cli582";
+       version = "1.4.0.0";
+       sha256 = "1h23lhcxvv5yymircn9wqapyjv19wvp2fvd0gvyq8a35s98y289q";
        libraryHaskellDepends = [
          array base combinat containers hspray ilist lens numeric-prelude
        ];
        testHaskellDepends = [
-         base hspray hypergeomatrix tasty tasty-hunit
+         base combinat hspray hypergeomatrix tasty tasty-hunit
        ];
+       benchmarkHaskellDepends = [ base hspray miniterion ];
        description = "Jack, zonal, Schur and skew Schur polynomials";
        license = lib.licenses.gpl3Only;
        hydraPlatforms = lib.platforms.none;
@@ -175441,6 +177003,8 @@ self: {
        pname = "javelin";
        version = "0.1.2.0";
        sha256 = "12xzs05dkkbn93yh1f5l7m64j3rifcz9qnd5nqqd62cj6nic10xl";
+       revision = "1";
+       editedCabalFile = "03pdxr80s9ah2yv3kxs76r1dz0j75zvcaylskm203c3cqg1f7scx";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -175470,6 +177034,8 @@ self: {
        pname = "javelin-io";
        version = "0.1.1.1";
        sha256 = "1c6w0p7yjbc3yw12f5bflgacvivzc1n0dxgmz2qn06yiraw6jyv6";
+       revision = "1";
+       editedCabalFile = "0z25nvwh5wzsaa022gp4pc5bxk1xqrfj98q6ni3mh4r3kydcm50g";
        libraryHaskellDepends = [
          base bytestring cassava containers javelin unordered-containers
          vector
@@ -176466,8 +178032,6 @@ self: {
        ];
        description = "Interface for JavaScript that works with GHCJS and GHC";
        license = lib.licenses.mit;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "jsaddle-dom" = callPackage
@@ -176476,8 +178040,8 @@ self: {
      }:
      mkDerivation {
        pname = "jsaddle-dom";
-       version = "0.9.9.0";
-       sha256 = "0jvvxwr7984aizh1n59q2m12y5x3ahy5nwfir47s6q48n4pi0l9z";
+       version = "0.9.9.1";
+       sha256 = "0gpr98p6wsj32vp029mdliclkkk5rf2bg6mv1jbkncskrvn40aqg";
        libraryHaskellDepends = [
          base base-compat exceptions jsaddle lens text transformers
        ];
@@ -176575,8 +178139,7 @@ self: {
        sha256 = "0r8payj72akz951jmv7frllj8cxpwgjyci7gad7250s7nmnd9f1s";
        description = "Interface for JavaScript that works with GHCJS and GHC";
        license = lib.licenses.mit;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
+       platforms = lib.platforms.darwin;
      }) {};
 
   "jsc" = callPackage
@@ -177328,7 +178891,6 @@ self: {
        ];
        description = "Generics JSON (de)serialization using generics-sop";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
      }) {};
 
   "json-spec" = callPackage
@@ -177337,8 +178899,8 @@ self: {
      }:
      mkDerivation {
        pname = "json-spec";
-       version = "0.3.0.1";
-       sha256 = "1gyg378y7s9yc6vkjgl8zydjpkl86qlywwbs6kvrfip9a3hvj3p7";
+       version = "0.4.0.0";
+       sha256 = "07484bh8f9cnv60h5g0h1mgpic105cwq9v3m4pww57m8wg28a0sk";
        libraryHaskellDepends = [
          aeson base containers scientific text time vector
        ];
@@ -178778,18 +180340,16 @@ self: {
   "kan-extensions" = callPackage
     ({ mkDerivation, adjunctions, array, base, comonad, containers
      , contravariant, distributive, free, invariant, mtl, profunctors
-     , semigroupoids, tagged, transformers, transformers-compat
+     , semigroupoids, tagged, transformers
      }:
      mkDerivation {
        pname = "kan-extensions";
-       version = "5.2.5";
-       sha256 = "08mddsk9v75mahp1jqn28vglygmdil1g37drcj3ivbqc0k6dq55r";
-       revision = "2";
-       editedCabalFile = "1kwqhslcw4clcngjs24arsv1wdrvrisafi5h2pszlh2zarksgnzv";
+       version = "5.2.6";
+       sha256 = "1k7cxqj9hl1b4axlw5903hrxh4vg5rdrzjmpa44xrhws3hy2i0ps";
        libraryHaskellDepends = [
          adjunctions array base comonad containers contravariant
          distributive free invariant mtl profunctors semigroupoids tagged
-         transformers transformers-compat
+         transformers
        ];
        description = "Kan extensions, Kan lifts, the Yoneda lemma, and (co)density (co)monads";
        license = lib.licenses.bsd3;
@@ -178837,8 +180397,8 @@ self: {
        pname = "kansas-comet";
        version = "0.4.2";
        sha256 = "01g30ck1nhj8qwz475mvwvmd8nc1yqxl5qi84c957gp116kig2v7";
-       revision = "2";
-       editedCabalFile = "1qila4mpczr0wrg4wn7pi65s7243w1flpdmj6v80684r33knspzc";
+       revision = "3";
+       editedCabalFile = "00wy4v9xdnp4801qww61gpqfshnbymmh4571rs56lq2f1apzifgv";
        enableSeparateDataOutput = true;
        libraryHaskellDepends = [
          aeson base containers data-default-class scotty stm text time
@@ -180280,14 +181840,13 @@ self: {
      }) {};
 
   "keuringsdienst" = callPackage
-    ({ mkDerivation, aeson, base, containers, HTF, text }:
+    ({ mkDerivation, aeson, base, containers, HUnit, text }:
      mkDerivation {
        pname = "keuringsdienst";
-       version = "0.1.1.0";
-       sha256 = "0nwkwpm5c4na8yr0m18drd5g3si0f0kkvrc0v3kphnva0l3j1c4l";
+       version = "1.0.0.5";
+       sha256 = "1n44yr8r0gassyidr7ika4p421295a8c1z66m0dkm2aqw82hcim3";
        libraryHaskellDepends = [ aeson base containers text ];
-       testHaskellDepends = [ aeson base containers HTF text ];
-       description = "Data validation in Haskell made easy";
+       testHaskellDepends = [ aeson base containers HUnit text ];
        license = lib.licenses.gpl3Only;
      }) {};
 
@@ -180404,8 +181963,8 @@ self: {
        pname = "keycode";
        version = "0.2.2";
        sha256 = "046k8d1h5wwadf5z4pppjkc3g7v2zxlzb06s1xgixc42y5y41yan";
-       revision = "10";
-       editedCabalFile = "1k2vh3pyxvhfxcx8ra16dl6jrgc5hz0wc4hn9w20z347v1hr51nq";
+       revision = "11";
+       editedCabalFile = "0il646ra0nb0fy1310im1y82w9gh08j6vwi7hw7kpxy1h9q6jp4j";
        libraryHaskellDepends = [
          base containers ghc-prim template-haskell
        ];
@@ -181713,8 +183272,8 @@ self: {
     ({ mkDerivation, base, hedgehog, hpc, leancheck, QuickCheck }:
      mkDerivation {
        pname = "kudzu";
-       version = "0.1.0.0";
-       sha256 = "19324i7scjpi5xq8978hn18n2vyyiczqzv5109yn2wisprnklv8f";
+       version = "0.1.1.0";
+       sha256 = "0v9pc8qkys79zs3dz8adv0p3i5qbqxz4gy8r1c6ncr7fszc54s3y";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [ base hedgehog hpc leancheck QuickCheck ];
@@ -183078,8 +184637,8 @@ self: {
      }:
      mkDerivation {
        pname = "language-Modula2";
-       version = "0.1.4";
-       sha256 = "06rqi2g0rbypjj6d11n1lw6vk6xfqf2i7zarwaiy9ay7csgclq9k";
+       version = "0.1.4.1";
+       sha256 = "1b3kx6yl4267y67x6iq455v6hvfa6683bm37zb3vln3ajxd6vy8w";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -183521,6 +185080,30 @@ self: {
        license = lib.licenses.gpl3Only;
      }) {};
 
+  "language-docker_13_0_0" = callPackage
+    ({ mkDerivation, base, bytestring, containers, data-default
+     , data-default-class, hspec, hspec-discover, hspec-megaparsec
+     , HUnit, megaparsec, prettyprinter, QuickCheck, split, text, time
+     }:
+     mkDerivation {
+       pname = "language-docker";
+       version = "13.0.0";
+       sha256 = "16ywhy8bah81x9agckqbkad0h7k6gzxgds5frbj4nvs7x8xp6vh8";
+       libraryHaskellDepends = [
+         base bytestring containers data-default data-default-class
+         megaparsec prettyprinter split text time
+       ];
+       testHaskellDepends = [
+         base bytestring containers data-default data-default-class hspec
+         hspec-megaparsec HUnit megaparsec prettyprinter QuickCheck split
+         text time
+       ];
+       testToolDepends = [ hspec-discover ];
+       description = "Dockerfile parser, pretty-printer and embedded DSL";
+       license = lib.licenses.gpl3Only;
+       hydraPlatforms = lib.platforms.none;
+     }) {};
+
   "language-dockerfile" = callPackage
     ({ mkDerivation, aeson, base, bytestring, directory, filepath, free
      , Glob, hspec, HUnit, mtl, parsec, pretty, process, QuickCheck
@@ -183906,10 +185489,8 @@ self: {
      }:
      mkDerivation {
        pname = "language-lua";
-       version = "0.11.0.1";
-       sha256 = "0712xbijag03n61d80bnd9xw94fzywc76l8ya9ijv684ls0qymy2";
-       revision = "1";
-       editedCabalFile = "185q2xk8q17q29hcph3s94gy7jpzm46s4qls589jsicvas7gnl4d";
+       version = "0.11.0.2";
+       sha256 = "147hpjk3nn3mzzjz7l8i4jlaajba34cd9hzvbyscm7kb3c7a2r5m";
        libraryHaskellDepends = [
          alex-tools array base bytestring deepseq text
        ];
@@ -184053,8 +185634,8 @@ self: {
      }:
      mkDerivation {
        pname = "language-oberon";
-       version = "0.3.3";
-       sha256 = "0w59dqpwafrlxn6ff7icgd7qsb9nyjmd1cc5ficxc701w8b20yli";
+       version = "0.3.3.1";
+       sha256 = "16c9nr7kwsb6lnqx0fqqhww231c2npblzdnjm68qwzqkbbkx26fv";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -184470,21 +186051,22 @@ self: {
      }) {};
 
   "language-toolkit" = callPackage
-    ({ mkDerivation, base, containers, deepseq, directory, filepath
-     , haskeline, parallel, process, transformers
+    ({ mkDerivation, array, base, containers, deepseq, directory
+     , exceptions, filepath, finite-semigroups, haskeline, parallel
+     , process, transformers
      }:
      mkDerivation {
        pname = "language-toolkit";
-       version = "1.1.0.0";
-       sha256 = "0ffr53jggh3c01v802xywy387jv5wa5vwwyvipiqpxwqcspr4nd7";
-       revision = "4";
-       editedCabalFile = "13m1qsn04yc4q04xihjivb6pz73gv0sn9d5qxb9q1a4cg63k21c8";
+       version = "1.2.0.1";
+       sha256 = "0ar2h4ch0rk4ify3rd4p414qx9gn6jv61ig1jainn2p92p0hnhni";
        isLibrary = true;
        isExecutable = true;
-       libraryHaskellDepends = [ base containers deepseq parallel ];
+       libraryHaskellDepends = [
+         array base containers deepseq finite-semigroups parallel
+       ];
        executableHaskellDepends = [
-         base containers deepseq directory filepath haskeline parallel
-         process transformers
+         base containers deepseq directory exceptions filepath
+         finite-semigroups haskeline parallel process transformers
        ];
        description = "A set of tools for analyzing languages via logic and automata";
        license = lib.licenses.mit;
@@ -184721,8 +186303,6 @@ self: {
        ];
        description = "Generic programming API for large-records and large-anon";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "large-hashable" = callPackage
@@ -184782,6 +186362,7 @@ self: {
        description = "Efficient compilation for large records, linear in the size of the record";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
+       broken = true;
      }) {};
 
   "largeword" = callPackage
@@ -186077,19 +187658,19 @@ self: {
      }) {};
 
   "learn-physics" = callPackage
-    ({ mkDerivation, base, gloss, gnuplot, hmatrix, SpatialMath
+    ({ mkDerivation, base, gloss, gnuplot, hmatrix, linear
      , vector-space, Vis
      }:
      mkDerivation {
        pname = "learn-physics";
-       version = "0.6.6";
-       sha256 = "175sbdinjvf8sp3z597ql49zpvab6gllygv1nrygln3xfsk23d97";
+       version = "0.6.7";
+       sha256 = "05lizs5vyknx5krprc7q12kb7nszy6qxf4zb7b2zzwv8r04ll23h";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
-         base gloss gnuplot hmatrix SpatialMath vector-space Vis
+         base gloss gnuplot hmatrix linear vector-space Vis
        ];
-       executableHaskellDepends = [ base gloss gnuplot SpatialMath Vis ];
+       executableHaskellDepends = [ base gloss gnuplot Vis ];
        description = "Haskell code for learning physics";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
@@ -186428,8 +188009,8 @@ self: {
        pname = "lens";
        version = "5.2.3";
        sha256 = "0kcr1dqvnjmi05yd9m9ylipk5210jwd7d00c9scq9n49vnl8q7nz";
-       revision = "4";
-       editedCabalFile = "0j0ga11zqgj19nsk9nyd6l23chdixc5cd2v7vgjj7flwy5vc97kn";
+       revision = "5";
+       editedCabalFile = "097hszlfb1rjhn5rd8has3injxmip1mrs21jd5gifgzslcdfix08";
        libraryHaskellDepends = [
          array assoc base base-orphans bifunctors bytestring call-stack
          comonad containers contravariant distributive exceptions filepath
@@ -186452,6 +188033,45 @@ self: {
        license = lib.licenses.bsd2;
      }) {};
 
+  "lens_5_3_2" = callPackage
+    ({ mkDerivation, array, assoc, base, base-orphans, bifunctors
+     , bytestring, call-stack, comonad, containers, contravariant
+     , criterion, deepseq, distributive, exceptions, filepath, free
+     , generic-deriving, ghc-prim, hashable, HUnit, indexed-traversable
+     , indexed-traversable-instances, kan-extensions, mtl, parallel
+     , profunctors, QuickCheck, reflection, semigroupoids
+     , simple-reflect, strict, tagged, template-haskell, test-framework
+     , test-framework-hunit, test-framework-quickcheck2, text
+     , th-abstraction, these, transformers, transformers-compat
+     , unordered-containers, vector
+     }:
+     mkDerivation {
+       pname = "lens";
+       version = "5.3.2";
+       sha256 = "1629gyy38l48ifhlwxlbjbrzahphcqgmad5sz2qlr2z2cq3bq4zz";
+       libraryHaskellDepends = [
+         array assoc base base-orphans bifunctors bytestring call-stack
+         comonad containers contravariant distributive exceptions filepath
+         free ghc-prim hashable indexed-traversable
+         indexed-traversable-instances kan-extensions mtl parallel
+         profunctors reflection semigroupoids strict tagged template-haskell
+         text th-abstraction these transformers transformers-compat
+         unordered-containers vector
+       ];
+       testHaskellDepends = [
+         base bytestring containers deepseq HUnit mtl QuickCheck
+         simple-reflect test-framework test-framework-hunit
+         test-framework-quickcheck2 text transformers
+       ];
+       benchmarkHaskellDepends = [
+         base bytestring comonad containers criterion deepseq
+         generic-deriving transformers unordered-containers vector
+       ];
+       description = "Lenses, Folds and Traversals";
+       license = lib.licenses.bsd2;
+       hydraPlatforms = lib.platforms.none;
+     }) {};
+
   "lens-accelerate" = callPackage
     ({ mkDerivation, accelerate, base, lens }:
      mkDerivation {
@@ -186714,8 +188334,8 @@ self: {
        pname = "lens-properties";
        version = "4.11.1";
        sha256 = "1caciyn75na3f25q9qxjl7ibjam22xlhl5k2pqfiak10lxsmnz2g";
-       revision = "6";
-       editedCabalFile = "10c8phmf4znr6a9gkzvi2b9q9b9qc8cmslaxlx2hv59j62216h0f";
+       revision = "7";
+       editedCabalFile = "14n9yzar4zfqigyayxhi11a0g954nb4jcz0fahgpxyl2vbg7h1ch";
        libraryHaskellDepends = [ base lens QuickCheck transformers ];
        description = "QuickCheck properties for lens";
        license = lib.licenses.bsd3;
@@ -186788,13 +188408,13 @@ self: {
        pname = "lens-sop";
        version = "0.3.0";
        sha256 = "145yplksxyk15fyhjssjy5f4z18h1d8bgf25pb1vqdfr10rnffi1";
+       revision = "1";
+       editedCabalFile = "0gnjfk3na3pk3zm2bppmic7adfpaic051wf6hlfyaysg4acwpxvm";
        libraryHaskellDepends = [
          base generics-sop optics-core transformers
        ];
        description = "Computing lenses generically using generics-sop";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "lens-tell" = callPackage
@@ -186874,10 +188494,8 @@ self: {
     ({ mkDerivation, base, doctest, lens }:
      mkDerivation {
        pname = "lens-tutorial";
-       version = "1.0.4";
-       sha256 = "1xcadr4ynnpdm1sdv1idvs15f7d2gbr75565csvwaid2a1hz6agj";
-       revision = "1";
-       editedCabalFile = "184ssnwdc5xddjv1ijlwmwknp0vw1sl7jsh5mba3kq7176qry6li";
+       version = "1.0.5";
+       sha256 = "0cjjj0m32nksc1jch8myb4v8rfsl68vigwphfc070fvz4jj5hks3";
        libraryHaskellDepends = [ base lens ];
        testHaskellDepends = [ base doctest ];
        description = "Tutorial for the lens library";
@@ -188266,8 +189884,8 @@ self: {
      }:
      mkDerivation {
        pname = "libsecp256k1";
-       version = "0.1.5";
-       sha256 = "1x9f9ym6ssxbk404argf2y455bv2qxrcyy7brkql1fpqphl6g1dp";
+       version = "0.2.1";
+       sha256 = "15kz61px1xpf80c6jaj7qmfs1274ad05kp61y1b1vybxiqbzrig1";
        libraryHaskellDepends = [
          base bytestring deepseq entropy hashable hedgehog memory
          transformers
@@ -188599,14 +190217,14 @@ self: {
 
   "libyaml-streamly" = callPackage
     ({ mkDerivation, base, bytestring, deepseq, libyaml
-     , safe-exceptions, streamly
+     , safe-exceptions, streamly-core
      }:
      mkDerivation {
        pname = "libyaml-streamly";
-       version = "0.2.2.1";
-       sha256 = "01dq36mwp7kpkn05hs7dhn9lxnjy9gp2p39ync01d73x7a1ic548";
+       version = "0.2.3.0";
+       sha256 = "1jmrxnxh3qps3wa8b0hjlwxgc36j0hk2b6jkxsaymx03rjvml2zn";
        libraryHaskellDepends = [
-         base bytestring deepseq safe-exceptions streamly
+         base bytestring deepseq safe-exceptions streamly-core
        ];
        libraryPkgconfigDepends = [ libyaml ];
        description = "Low-level, streaming YAML interface via streamly";
@@ -188750,8 +190368,8 @@ self: {
        pname = "lift-generics";
        version = "0.2.1";
        sha256 = "1qkzq8hcb6j15cslv577bmhjcxmljzsrryysdgd7r99kr3q445b4";
-       revision = "6";
-       editedCabalFile = "0px8gjhzw1fvzbd1jha8kcc3p603hc8ki4kwi26vhg7n3ldy5nay";
+       revision = "7";
+       editedCabalFile = "1v61s0fhl87q6rvnw4qz0bvl75mpa2ag3yvjji6lbs9g6b8lh23q";
        libraryHaskellDepends = [
          base generic-deriving ghc-prim template-haskell th-compat
        ];
@@ -188796,6 +190414,8 @@ self: {
        pname = "lifted-async";
        version = "0.10.2.5";
        sha256 = "1lhyjv32plqs0r2gi7ca8b527z5qas7xgjkh680lqwi0l81xd80n";
+       revision = "1";
+       editedCabalFile = "18z12n6v3n810qp7hxanixwhznphpw69jz9ahwxfknww51dj2jx0";
        libraryHaskellDepends = [
          async base constraints lifted-base monad-control transformers-base
        ];
@@ -191226,8 +192846,8 @@ self: {
        pname = "literatex";
        version = "0.3.0.0";
        sha256 = "0ph3s26hxvnkdqc3s09d3ka1p224zmgwc3k6zi7jmma0sgrmnm9x";
-       revision = "6";
-       editedCabalFile = "0kg4sqfjqx3abd0y0qhakaabpz62x6j535gkqgiz3zkkbkc0drpz";
+       revision = "7";
+       editedCabalFile = "0w03xl8i6j47li8cp0issjf6k2n5kwkhp461pp5spsw0hkb4gl3i";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -193469,6 +195089,7 @@ self: {
        ];
        description = "A simple text parser with decent errors";
        license = lib.licenses.bsd3;
+       hydraPlatforms = lib.platforms.none;
      }) {};
 
   "looksee-trip" = callPackage
@@ -194067,25 +195688,26 @@ self: {
   "lsp" = callPackage
     ({ mkDerivation, aeson, async, attoparsec, base, bytestring
      , co-log-core, containers, data-default, directory, exceptions
-     , filepath, hashable, hspec, hspec-discover, lens, lens-aeson
-     , lsp-types, mtl, prettyprinter, random, row-types, sorted-list
-     , stm, text, text-rope, transformers, unliftio-core
+     , extra, filepath, hashable, hspec, hspec-discover, lens
+     , lens-aeson, lsp-types, mtl, prettyprinter, random, sorted-list
+     , stm, text, text-rope, transformers, unliftio, unliftio-core
      , unordered-containers, uuid
      }:
      mkDerivation {
        pname = "lsp";
-       version = "2.4.0.0";
-       sha256 = "1ggfw2wp9g9fpg9x3kj9zh6l6p2yiw4q0v1gzxjg0mcmvp4aad8w";
+       version = "2.6.0.0";
+       sha256 = "1wimb5y1757l8k1kinlv1y43n7kmjzdh18gayarfm32dsmllahi5";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
          aeson async attoparsec base bytestring co-log-core containers
-         data-default directory exceptions filepath hashable lens lens-aeson
-         lsp-types mtl prettyprinter random row-types sorted-list stm text
-         text-rope transformers unliftio-core unordered-containers uuid
+         data-default directory exceptions extra filepath hashable lens
+         lens-aeson lsp-types mtl prettyprinter random sorted-list stm text
+         text-rope transformers unliftio unliftio-core unordered-containers
+         uuid
        ];
        testHaskellDepends = [
-         base containers hspec row-types sorted-list text text-rope
+         base containers hspec sorted-list text text-rope
          unordered-containers
        ];
        testToolDepends = [ hspec-discover ];
@@ -194125,21 +195747,17 @@ self: {
      , bytestring, co-log-core, conduit, conduit-parse, containers
      , data-default, Diff, directory, exceptions, extra, filepath, Glob
      , hspec, lens, lens-aeson, lsp, lsp-types, mtl, parser-combinators
-     , process, row-types, some, text, time, transformers, unix
-     , unliftio
+     , process, some, text, time, transformers, unix, unliftio
      }:
      mkDerivation {
        pname = "lsp-test";
-       version = "0.17.0.0";
-       sha256 = "1jjzqp7dbvaxysfa765zlcmb8h973242fb7a6b17cab3bjc12laq";
-       revision = "1";
-       editedCabalFile = "07090b7n5a02s1npzmwn6yfk4jnxwi98j1hqflcihni48ylx3b4g";
+       version = "0.17.0.2";
+       sha256 = "1nyqv66rqs316dx1yl1n3ydcxl1lkdvxri8chgvw88c67p84ss45";
        libraryHaskellDepends = [
          aeson aeson-pretty ansi-terminal async base bytestring co-log-core
          conduit conduit-parse containers data-default Diff directory
          exceptions extra filepath Glob lens lens-aeson lsp lsp-types mtl
-         parser-combinators process row-types some text time transformers
-         unix
+         parser-combinators process some text time transformers unix
        ];
        testHaskellDepends = [
          aeson base co-log-core containers data-default directory extra
@@ -194193,30 +195811,30 @@ self: {
     ({ mkDerivation, aeson, base, binary, containers, data-default
      , deepseq, Diff, directory, dlist, exceptions, file-embed, filepath
      , generic-arbitrary, hashable, hspec, hspec-discover
-     , indexed-traversable, indexed-traversable-instances, lens
-     , lens-aeson, mod, mtl, network-uri, prettyprinter, QuickCheck
-     , quickcheck-instances, regex, row-types, safe, some
-     , template-haskell, text
+     , indexed-traversable, indexed-traversable-instances, lens, mod
+     , mtl, network-uri, prettyprinter, QuickCheck, quickcheck-instances
+     , regex, row-types, safe, some, template-haskell, text, witherable
      }:
      mkDerivation {
        pname = "lsp-types";
-       version = "2.1.1.0";
-       sha256 = "0gsr0v11xfav7dnq4d433y9ca0snmqaax4pp5sgmf33zl8qhi6s0";
+       version = "2.2.0.0";
+       sha256 = "0h3mdnilhk6mg4vnhmnynq18vhj9kfbw5k9bsqa7mrgr8rjsy7jy";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
          aeson base binary containers data-default deepseq Diff dlist
          exceptions file-embed filepath generic-arbitrary hashable
-         indexed-traversable indexed-traversable-instances lens lens-aeson
-         mod mtl network-uri prettyprinter QuickCheck quickcheck-instances
-         row-types safe some template-haskell text
+         indexed-traversable indexed-traversable-instances lens mod mtl
+         network-uri prettyprinter QuickCheck quickcheck-instances row-types
+         safe some template-haskell text
        ];
        executableHaskellDepends = [
          base containers directory filepath mtl prettyprinter regex text
+         witherable
        ];
        testHaskellDepends = [
          aeson base filepath hspec lens network-uri QuickCheck
-         quickcheck-instances row-types text
+         quickcheck-instances text
        ];
        testToolDepends = [ hspec-discover ];
        doHaddock = false;
@@ -194229,8 +195847,8 @@ self: {
     ({ mkDerivation, base, containers, Glob, parsec, text }:
      mkDerivation {
        pname = "lsql-csv";
-       version = "0.1.0.2";
-       sha256 = "1ja2xbjl11i1cc77qszgphy9v859rzxc87z6l6kp8cz58095qb4v";
+       version = "0.1.0.6";
+       sha256 = "0rrcwvs2c2z89mzivvl358bci02f91glrpq347h0l1ndhv9nckv4";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [ base containers Glob parsec text ];
@@ -194677,10 +196295,8 @@ self: {
      }:
      mkDerivation {
        pname = "lucid2";
-       version = "0.0.20230706";
-       sha256 = "165bar5kgdrldg46f743jhf0p2krvrrpsg0my7zbgxyjayrwf8bd";
-       revision = "1";
-       editedCabalFile = "0h6s6mdvb0n7b8nx5cwks6s9lglazmy8qigbrmnzfm4zbmh7r58m";
+       version = "0.0.20240424";
+       sha256 = "1ccpcbq84y53dxna700rfn6gaxn6xywqfdn27xpvbrl79w5x5p1j";
        libraryHaskellDepends = [
          base bytestring containers mtl text transformers
        ];
@@ -195298,6 +196914,8 @@ self: {
        pname = "lzma-static";
        version = "5.2.5.5";
        sha256 = "1qq0lzyfpnjdl9mh8qrr5lhhby8gxzgi1a8wiwpf3vkrziz5hh23";
+       revision = "1";
+       editedCabalFile = "0y7wc1aa7w6amw3glyqs8bqfkm6r6s96p1lxvgdmdcfg178j8bmp";
        libraryHaskellDepends = [ base bytestring ];
        testHaskellDepends = [
          base bytestring HUnit QuickCheck tasty tasty-hunit tasty-quickcheck
@@ -199545,6 +201163,8 @@ self: {
        pname = "megaparsec-tests";
        version = "9.6.1";
        sha256 = "1l3rmg4ymw4czqkkb3502g322ijdg11c1img9l4p6ipy7hdzw52n";
+       revision = "1";
+       editedCabalFile = "0vycmn3c32z1bk19612277df41in55rkyk23gk3m007drsaq3xdl";
        libraryHaskellDepends = [
          base bytestring containers hspec hspec-megaparsec megaparsec mtl
          QuickCheck text transformers
@@ -201005,8 +202625,8 @@ self: {
        pname = "microaeson";
        version = "0.1.0.1";
        sha256 = "0rx5gm7apazc0sm65v687ab5106ximka9khizxq1lbckd2x0cq3q";
-       revision = "8";
-       editedCabalFile = "1w9pm69vm0r3zkmcls3zd6b0vc3ifvsjmwj2wk7gc23pj4bwzwlb";
+       revision = "9";
+       editedCabalFile = "0w43nprqacq6vx645263x7sirnv4jkw985gyynhxfldyp3yw895h";
        libraryHaskellDepends = [
          array base bytestring containers deepseq fail text
        ];
@@ -201060,6 +202680,31 @@ self: {
        mainProgram = "microc-exe";
      }) {};
 
+  "microdns" = callPackage
+    ({ mkDerivation, aeson, async, base, base16-bytestring, bytestring
+     , case-insensitive, cryptohash-sha256, dns, ip, iproute, megaparsec
+     , network, optparse-generic, prodapi, prometheus-client, servant
+     , servant-server, streaming-commons, text, wai-extra, warp
+     , warp-tls
+     }:
+     mkDerivation {
+       pname = "microdns";
+       version = "0.1.0.0";
+       sha256 = "0wr24630jqhfnnngrnvbc5zd96jj4rgc02g2gd24vywdspk2nk56";
+       isLibrary = false;
+       isExecutable = true;
+       executableHaskellDepends = [
+         aeson async base base16-bytestring bytestring case-insensitive
+         cryptohash-sha256 dns ip iproute megaparsec network
+         optparse-generic prodapi prometheus-client servant servant-server
+         streaming-commons text wai-extra warp warp-tls
+       ];
+       description = "a minimalistic DNS-authoritative server";
+       license = lib.licenses.bsd3;
+       hydraPlatforms = lib.platforms.none;
+       mainProgram = "microdns";
+     }) {};
+
   "microformats2-parser" = callPackage
     ({ mkDerivation, aeson, aeson-qq, attoparsec, base, base-compat
      , blaze-markup, bytestring, case-insensitive, containers
@@ -201188,8 +202833,8 @@ self: {
      }:
      mkDerivation {
        pname = "microlens-ghc";
-       version = "0.4.14.2";
-       sha256 = "17fdc5jpqlq3q61mf6qia7a18kqq4nfpbrv2j2n4a4cx62kcbraq";
+       version = "0.4.14.3";
+       sha256 = "13sczn286n6yjjhnf3nsjq1l43rgxawr61ma1f4pmwd4aj1ihdcp";
        libraryHaskellDepends = [
          array base bytestring containers microlens transformers
        ];
@@ -201238,8 +202883,8 @@ self: {
      }:
      mkDerivation {
        pname = "microlens-pro";
-       version = "0.2.0";
-       sha256 = "03vadipi3qkyz6xyf2by8jqq453gvpisqhwvrhaykbwx6pxrzwnj";
+       version = "0.2.0.1";
+       sha256 = "16bb5myflaxwksqkl890vg3349sd5lcr6g2iaq8kn82k3wkq0ynm";
        libraryHaskellDepends = [
          base containers microlens microlens-contra microlens-platform
          microlens-th mtl profunctors tagged template-haskell text
@@ -201276,8 +202921,8 @@ self: {
      }:
      mkDerivation {
        pname = "microlens-th";
-       version = "0.4.3.14";
-       sha256 = "0sjvzywcar5fxmpbdj5ili4m4pcz77hnk27i99qsdrxjzmmwkycj";
+       version = "0.4.3.15";
+       sha256 = "1ja59samyqng78v9lhrwa6x4vd5vvr9jkrm3pyi2kbcp28kv7khg";
        libraryHaskellDepends = [
          base containers microlens template-haskell th-abstraction
          transformers
@@ -202767,8 +204412,8 @@ self: {
      }:
      mkDerivation {
        pname = "miso";
-       version = "1.8.3.0";
-       sha256 = "0ghbaph24jdkxjixyvgzkmav5y765nm4jngd0nym7syk19marqbx";
+       version = "1.8.4.0";
+       sha256 = "113gm3rqc17aa3s2hxzdm3q78c7jlf728lqggl5khya1kh2i3yl2";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -203549,8 +205194,8 @@ self: {
      }:
      mkDerivation {
        pname = "mmzk-typeid";
-       version = "0.5.0.2";
-       sha256 = "0ricw68ymglh4nh1ncyfhcwaw82apc8wi4nsqas7y1a9fk4pbgp2";
+       version = "0.6.0.1";
+       sha256 = "0dcwa97whwwk267cvbmvixya465v7hyc45i0s1jvgxqjhmpy3p6d";
        libraryHaskellDepends = [
          aeson array base binary bytestring entropy hashable random text
          time uuid uuid-types
@@ -204348,12 +205993,12 @@ self: {
      , monad-coroutine, monad-extras, mtl, mwc-random
      , optparse-applicative, pipes, pretty-simple, primitive, process
      , QuickCheck, random, safe, scientific, statistics, text, time
-     , transformers, typed-process, vector, vty
+     , transformers, typed-process, vector, vty, vty-unix
      }:
      mkDerivation {
        pname = "monad-bayes";
-       version = "1.3.0";
-       sha256 = "0hchkj0ybx76z3grha8844jw79kp94amgy30xm89jkqz09z9m1kq";
+       version = "1.3.0.1";
+       sha256 = "1dlafvvf087l9afdyvwl9zhza9ycccgd30jgd2230ak30hwbvgmk";
        isLibrary = true;
        isExecutable = true;
        enableSeparateDataOutput = true;
@@ -204361,7 +206006,7 @@ self: {
          base brick containers foldl free histogram-fill ieee754 integration
          lens linear log-domain math-functions matrix monad-coroutine
          monad-extras mtl mwc-random pipes pretty-simple primitive random
-         safe scientific statistics text transformers vector vty
+         safe scientific statistics text transformers vector vty vty-unix
        ];
        executableHaskellDepends = [
          abstract-par base brick containers criterion directory foldl free
@@ -204369,7 +206014,7 @@ self: {
          math-functions matrix monad-coroutine monad-extras mtl mwc-random
          optparse-applicative pipes pretty-simple primitive process
          QuickCheck random safe scientific statistics text time transformers
-         typed-process vector vty
+         typed-process vector vty vty-unix
        ];
        testHaskellDepends = [
          abstract-par base brick containers criterion directory foldl free
@@ -204377,7 +206022,7 @@ self: {
          math-functions matrix monad-coroutine monad-extras mtl mwc-random
          optparse-applicative pipes pretty-simple primitive process
          QuickCheck random safe scientific statistics text time transformers
-         typed-process vector vty
+         typed-process vector vty vty-unix
        ];
        benchmarkHaskellDepends = [
          abstract-par base brick containers criterion directory foldl free
@@ -204385,7 +206030,7 @@ self: {
          math-functions matrix monad-coroutine monad-extras mtl mwc-random
          optparse-applicative pipes pretty-simple primitive process
          QuickCheck random safe scientific statistics text time transformers
-         typed-process vector vty
+         typed-process vector vty vty-unix
        ];
        description = "A library for probabilistic programming";
        license = lib.licenses.mit;
@@ -204713,6 +206358,22 @@ self: {
        hydraPlatforms = lib.platforms.none;
      }) {};
 
+  "monad-ideals" = callPackage
+    ({ mkDerivation, base, bifunctor-classes-compat, comonad
+     , semigroupoids
+     }:
+     mkDerivation {
+       pname = "monad-ideals";
+       version = "0.1.0.0";
+       sha256 = "03mhgdww1yrw1cglq6rxx2crhlkiylxyk0wsj5qncc4yhbb5him8";
+       libraryHaskellDepends = [
+         base bifunctor-classes-compat comonad semigroupoids
+       ];
+       testHaskellDepends = [ base comonad ];
+       description = "Ideal Monads and coproduct of them";
+       license = lib.licenses.bsd3;
+     }) {};
+
   "monad-interleave" = callPackage
     ({ mkDerivation, base }:
      mkDerivation {
@@ -205998,6 +207659,8 @@ self: {
        pname = "monads-tf";
        version = "0.3.0.1";
        sha256 = "00jzz9lqpz3s5xwvmc5xi300jkkjv9bk62k0jgwnqfv6py9x5g11";
+       revision = "1";
+       editedCabalFile = "1036p9bn11xmm7hdwbr9dxz8fr9bqsbw0sma5fbqlyzp18b0qz2v";
        libraryHaskellDepends = [ base transformers ];
        description = "Monad classes, using type families";
        license = lib.licenses.bsd3;
@@ -206502,8 +208165,8 @@ self: {
      }:
      mkDerivation {
        pname = "monoidmap";
-       version = "0.0.1.2";
-       sha256 = "1gva15h7jkll43529c6q7w4z27cbx8rpddda1gg27w6i7i9rv4dh";
+       version = "0.0.1.3";
+       sha256 = "1hi4sqky1wwgx5i9cjn6dsf5dim9k5lw74j8a0wghq2rwab7b2ng";
        libraryHaskellDepends = [
          base containers deepseq groups monoid-subclasses
          nonempty-containers nothunks
@@ -209338,6 +211001,8 @@ self: {
        pname = "mueval";
        version = "0.9.4";
        sha256 = "1r6gm1drfkblf6vl36z1kbjpvz5dmcjn4hnlm8r59m794palwzzk";
+       revision = "1";
+       editedCabalFile = "141maqz3b1d877fxnispbbcsc3yg7iil0smgdmw1zjb2cdrlmqh2";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -209354,7 +211019,6 @@ self: {
        ];
        description = "Safely evaluate pure Haskell expressions";
        license = lib.licenses.bsd3;
-       badPlatforms = [ "aarch64-linux" ];
        mainProgram = "mueval";
      }) {};
 
@@ -212387,8 +214051,8 @@ self: {
      }:
      mkDerivation {
        pname = "national-australia-bank";
-       version = "0.0.3";
-       sha256 = "11jh9lap1763qhpybylhsjvnqsiba1757rlcddqp391j4n2pmb51";
+       version = "0.0.8";
+       sha256 = "1z4bdd8xwxivb4n07jxgk905r8vk1zhg9ik6k3rqqd5rlc0xa0di";
        libraryHaskellDepends = [
          base bytestring containers digit directory filepath lens mtl parsec
          sv time transformers utf8-string validation
@@ -213778,8 +215442,8 @@ self: {
      }:
      mkDerivation {
        pname = "netw";
-       version = "0.1.0.0";
-       sha256 = "1w42pmm8ydf087wmlrhznkmz3r93qw4dzn1laqyd52103q6fjnl8";
+       version = "0.1.1.0";
+       sha256 = "0giva1zj3jwlvxjfnm7z6b8w1q9mx6ja6zqpclgbbnimycsgfa44";
        libraryHaskellDepends = [
          base primitive primitive-unaligned template-haskell unix
        ];
@@ -214031,8 +215695,8 @@ self: {
      }:
      mkDerivation {
        pname = "network-arbitrary";
-       version = "0.7.0.0";
-       sha256 = "0n3c9hm8p404diksx23l4afa7i4lcl92m2zp2aw4zy8n9vhpz8sv";
+       version = "1.0.0.0";
+       sha256 = "00h1qwnk2clybf06d172pjmf87qb7jwsdn2l1a08hszq1pxyb9ch";
        libraryHaskellDepends = [
          base bytestring http-media http-types network-uri QuickCheck
        ];
@@ -214640,23 +216304,11 @@ self: {
     ({ mkDerivation, base, bytestring, network, time-manager }:
      mkDerivation {
        pname = "network-run";
-       version = "0.2.7";
-       sha256 = "14x55n79cg74xbjcii00nyi0y7zxh7lw03qdkl4inm1smfsm7zjl";
-       libraryHaskellDepends = [ base bytestring network time-manager ];
-       description = "Simple network runner library";
-       license = lib.licenses.bsd3;
-     }) {};
-
-  "network-run_0_2_8" = callPackage
-    ({ mkDerivation, base, bytestring, network, time-manager }:
-     mkDerivation {
-       pname = "network-run";
        version = "0.2.8";
        sha256 = "1yqqvb9l17n2r4giigppj12xdpvx0m13yyhlx5ss3r4qkdj2b962";
        libraryHaskellDepends = [ base bytestring network time-manager ];
        description = "Simple network runner library";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
      }) {};
 
   "network-server" = callPackage
@@ -215437,8 +217089,8 @@ self: {
      }:
      mkDerivation {
        pname = "newsynth";
-       version = "0.4.0.0";
-       sha256 = "1whipzp8gw08kgy3jyf4bvvjc69nbh2wpm4bv4ymf5m4fb0ikrvh";
+       version = "0.4.1.0";
+       sha256 = "0b8pmg7ch40g9vnckfqf6g3q1n37l2pvx5l8xs93bvw5wn6jcxll";
        isLibrary = true;
        isExecutable = true;
        setupHaskellDepends = [ base Cabal superdoc ];
@@ -215510,8 +217162,8 @@ self: {
        pname = "newtype-generics";
        version = "0.6.2";
        sha256 = "0km7cp041bgdgrxrbrawz611mcylxp943880a2yg228a09961b51";
-       revision = "2";
-       editedCabalFile = "1sys4nr905q5wxxyq0bv4mvaagm2qdx42q5v2316l60s4ivz7jw1";
+       revision = "4";
+       editedCabalFile = "1489zmir2l591y7k9rik6khj6vf9zjnkxyhnpmpr4djpdzk6pcin";
        libraryHaskellDepends = [ base ];
        testHaskellDepends = [ base hspec ];
        testToolDepends = [ hspec-discover ];
@@ -215684,8 +217336,8 @@ self: {
      }:
      mkDerivation {
        pname = "ngx-export-distribution";
-       version = "0.5.4.0";
-       sha256 = "0w7pvv44l4kllfgvsmszxja8wzimiskkqa1nna21cfhfkfc78h03";
+       version = "0.5.4.2";
+       sha256 = "1ihv8mpgwxkhbx0rg3fl3vwvc4qyqjrf2j8hsvca3bpvii4xm5yz";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [ base Cabal directory filepath ];
@@ -216295,7 +217947,6 @@ self: {
        ];
        description = "Lightweight dependency management with Nix";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
        mainProgram = "nix-thunk";
      }) {};
 
@@ -220988,6 +222639,8 @@ self: {
        pname = "opaleye";
        version = "0.10.3.0";
        sha256 = "1zq2d8rb1zwrvg0civh2a6r01nv1v2ini9rykf63px00srs98p67";
+       revision = "1";
+       editedCabalFile = "1wd2jgvrlbnma5z3zxa709svcm06clhx8gh9gs1jxscdd6lr6sh7";
        libraryHaskellDepends = [
          aeson base base16-bytestring bytestring case-insensitive
          contravariant postgresql-simple pretty product-profunctors
@@ -221005,6 +222658,36 @@ self: {
        license = lib.licenses.bsd3;
      }) {};
 
+  "opaleye_0_10_3_1" = callPackage
+    ({ mkDerivation, aeson, base, base16-bytestring, bytestring
+     , case-insensitive, containers, contravariant, dotenv, hspec
+     , hspec-discover, multiset, postgresql-simple, pretty
+     , product-profunctors, profunctors, QuickCheck, scientific
+     , semigroups, text, time, time-compat, time-locale-compat
+     , transformers, uuid, void
+     }:
+     mkDerivation {
+       pname = "opaleye";
+       version = "0.10.3.1";
+       sha256 = "1cv9p6kpb5i4x9bc8ak9vyfvhnqmycf8gbhaf4f6xb6rzwvllvd9";
+       libraryHaskellDepends = [
+         aeson base base16-bytestring bytestring case-insensitive
+         contravariant postgresql-simple pretty product-profunctors
+         profunctors scientific semigroups text time-compat
+         time-locale-compat transformers uuid void
+       ];
+       testHaskellDepends = [
+         aeson base bytestring containers contravariant dotenv hspec
+         hspec-discover multiset postgresql-simple product-profunctors
+         profunctors QuickCheck semigroups text time time-compat
+         transformers uuid
+       ];
+       testToolDepends = [ hspec-discover ];
+       description = "An SQL-generating DSL targeting PostgreSQL";
+       license = lib.licenses.bsd3;
+       hydraPlatforms = lib.platforms.none;
+     }) {};
+
   "opaleye-classy" = callPackage
     ({ mkDerivation, base, bytestring, lens, mtl, opaleye
      , postgresql-simple, product-profunctors, transformers
@@ -221051,6 +222734,20 @@ self: {
        broken = true;
      }) {};
 
+  "opaleye-textsearch" = callPackage
+    ({ mkDerivation, base, opaleye }:
+     mkDerivation {
+       pname = "opaleye-textsearch";
+       version = "0.1.0.0";
+       sha256 = "01wck3d21if4fnna3xj5k75g2yn6443jd3aq30nvb8p7sdvj6019";
+       libraryHaskellDepends = [ base opaleye ];
+       testHaskellDepends = [ base ];
+       description = "Text search utilities for Opaleye";
+       license = lib.licenses.agpl3Plus;
+       hydraPlatforms = lib.platforms.none;
+       broken = true;
+     }) {};
+
   "opaleye-trans" = callPackage
     ({ mkDerivation, base, exceptions, mtl, opaleye, postgresql-simple
      , product-profunctors, transformers
@@ -222614,8 +224311,8 @@ self: {
      }:
      mkDerivation {
        pname = "oplang";
-       version = "0.4.0.1";
-       sha256 = "091ddmgcmddij837x9waff5lf05ik72nwfld79g68ysysbb94q89";
+       version = "0.5.0.0";
+       sha256 = "0psk8jyxdhx2spzrx6k3hka7pyb2mhhsdwwk1g4bzgd3hmxnhh5l";
        isLibrary = false;
        isExecutable = true;
        executableHaskellDepends = [
@@ -222700,6 +224397,8 @@ self: {
        pname = "optics";
        version = "0.4.2.1";
        sha256 = "0sszgi7xw8k57y6w16w80rp7zbcmx0h44bxb46n4yibmp9mdhlz6";
+       revision = "1";
+       editedCabalFile = "1qq3a7laqhs2xc3jpvh2vys620vvl24l6pskm6pc754553xhzzcz";
        libraryHaskellDepends = [
          array base containers mtl optics-core optics-extra optics-th
          transformers
@@ -222726,6 +224425,8 @@ self: {
        pname = "optics-core";
        version = "0.4.1.1";
        sha256 = "1yxkgdxnjk2gjzrnapvwn87qqpxpb7k91mxnnk20l4m0cqy7x09y";
+       revision = "1";
+       editedCabalFile = "1jrkfh40zsjd0jgwpc98fmid66zfkh1jl3dqsivwxaiazy76cfa6";
        libraryHaskellDepends = [
          array base containers indexed-profunctors indexed-traversable
          transformers
@@ -222743,8 +224444,8 @@ self: {
        pname = "optics-extra";
        version = "0.4.2.1";
        sha256 = "0hfa5yb7l3l310lfxkii13fjzb69g619agadc5a86i734nisf8vy";
-       revision = "2";
-       editedCabalFile = "0w7am7pvwg4mx0nrksxgr2rvnk99nhqfpj80ig21m9xbpxsh22x4";
+       revision = "3";
+       editedCabalFile = "1dh1w543nkhy09rndmcx5qmm5j9a76p4hcyqqafq8yz5fm60hmzs";
        libraryHaskellDepends = [
          array base bytestring containers hashable indexed-profunctors
          indexed-traversable-instances mtl optics-core text transformers
@@ -222780,8 +224481,8 @@ self: {
        pname = "optics-th";
        version = "0.4.1";
        sha256 = "05zxljfqmhr5if7l8gld5s864nql6kqjfizsf1z7r3ydknvmff6p";
-       revision = "7";
-       editedCabalFile = "1zlx9xs8dpr3xbxsbi7pgrqkl6avs4ss2bdq8f3p2dxibr8xi4bz";
+       revision = "8";
+       editedCabalFile = "0ny8avgki1hakrfrmg848v5s4s39ql5shs4zd2clg1fsfshqljjw";
        libraryHaskellDepends = [
          base containers mtl optics-core template-haskell th-abstraction
          transformers
@@ -222953,6 +224654,8 @@ self: {
        pname = "options";
        version = "1.2.1.2";
        sha256 = "0jjz7b69qrsrbfz07xq43v70habxk8sj2gdlbkwh0gbifyhqykbf";
+       revision = "1";
+       editedCabalFile = "134r6x7m7sdp9f594ydb6l0q5rgym7psg3sh20klv2vwfq3fm1ic";
        libraryHaskellDepends = [ base containers monads-tf ];
        testHaskellDepends = [ base containers hspec monads-tf patience ];
        doHaddock = false;
@@ -223971,8 +225674,8 @@ self: {
      }:
      mkDerivation {
        pname = "os-string";
-       version = "2.0.2";
-       sha256 = "18fay8gmlwskfhdikkhb21za1zpmjvsp33f9afbp2ri9jrp14lq9";
+       version = "2.0.2.2";
+       sha256 = "0715lza6wr1gbsvv6a5xkcag38msqms4m6g8bkj5wz90axv0vk1z";
        libraryHaskellDepends = [
          base bytestring deepseq exceptions template-haskell
        ];
@@ -225045,11 +226748,23 @@ self: {
     ({ mkDerivation, aeson, base, http-query, text }:
      mkDerivation {
        pname = "pagure";
-       version = "0.1.1";
-       sha256 = "02212akphmldpnbih2zip750iavappzlqs5hf9mamzjaramx2bsy";
+       version = "0.1.2";
+       sha256 = "0xipzf25glfslz8xkc2qkb2jhsvpfmpz62h330siimxp8rk16r8z";
+       libraryHaskellDepends = [ aeson base http-query text ];
+       description = "Pagure REST client library";
+       license = lib.licenses.gpl2Only;
+     }) {};
+
+  "pagure_0_2_1" = callPackage
+    ({ mkDerivation, aeson, base, http-query, text }:
+     mkDerivation {
+       pname = "pagure";
+       version = "0.2.1";
+       sha256 = "19v1a98k3xpqfs9f65wggvqh3myfbqnn9csxf8j9qfidqpbnn0zk";
        libraryHaskellDepends = [ aeson base http-query text ];
        description = "Pagure REST client library";
        license = lib.licenses.gpl2Only;
+       hydraPlatforms = lib.platforms.none;
      }) {};
 
   "pagure-cli" = callPackage
@@ -225072,6 +226787,28 @@ self: {
        mainProgram = "pagure";
      }) {};
 
+  "pagure-cli_0_2_2" = callPackage
+    ({ mkDerivation, aeson, aeson-pretty, base, bytestring, filepath
+     , http-query, optparse-applicative, pagure, simple-cmd
+     , simple-cmd-args, text, unordered-containers, yaml
+     }:
+     mkDerivation {
+       pname = "pagure-cli";
+       version = "0.2.2";
+       sha256 = "14kmhy8fkh32ixhfd48brfhzlhdh55yhnm5x4qwg7syxp94y26gc";
+       isLibrary = false;
+       isExecutable = true;
+       executableHaskellDepends = [
+         aeson aeson-pretty base bytestring filepath http-query
+         optparse-applicative pagure simple-cmd simple-cmd-args text
+         unordered-containers yaml
+       ];
+       description = "A Pagure gitforge query tool";
+       license = lib.licenses.gpl2Only;
+       hydraPlatforms = lib.platforms.none;
+       mainProgram = "pagure";
+     }) {};
+
   "pagure-hook-receiver" = callPackage
     ({ mkDerivation, base, containers, scotty, shelly, text
      , transformers, unix
@@ -225268,7 +227005,7 @@ self: {
        ];
      }) {};
 
-  "pandoc_3_1_13" = callPackage
+  "pandoc_3_2" = callPackage
     ({ mkDerivation, aeson, aeson-pretty, array, attoparsec, base
      , base64-bytestring, binary, blaze-html, blaze-markup, bytestring
      , case-insensitive, citeproc, commonmark, commonmark-extensions
@@ -225287,8 +227024,8 @@ self: {
      }:
      mkDerivation {
        pname = "pandoc";
-       version = "3.1.13";
-       sha256 = "1l3mlqhwvma6q3dam41xik8waw6ri578q5lc8n9js2yg3kpnq5sr";
+       version = "3.2";
+       sha256 = "1630lmia6pwm1c8kb7h0j65vcs65yxkv9j8d7ys9iiazcmrpv1hp";
        configureFlags = [ "-f-trypandoc" ];
        enableSeparateDataOutput = true;
        libraryHaskellDepends = [
@@ -225410,14 +227147,14 @@ self: {
        maintainers = [ lib.maintainers.maralorn ];
      }) {};
 
-  "pandoc-cli_3_1_13" = callPackage
+  "pandoc-cli_3_2" = callPackage
     ({ mkDerivation, base, hslua-cli, pandoc, pandoc-lua-engine
      , pandoc-server, safe, temporary, text, wai-extra, warp
      }:
      mkDerivation {
        pname = "pandoc-cli";
-       version = "3.1.13";
-       sha256 = "0809x6338hcm5lih3y7rjq9pzx4pp567qdhp4w6nx9lyxg56i65g";
+       version = "3.2";
+       sha256 = "03nibp6m9nv91h9f6kvj73w7qhbz74qva787zlk7p3m8ayldjwa5";
        isLibrary = false;
        isExecutable = true;
        executableHaskellDepends = [
@@ -225457,10 +227194,8 @@ self: {
      }:
      mkDerivation {
        pname = "pandoc-crossref";
-       version = "0.3.17.0";
-       sha256 = "16kgnwylczhs126ivps56r667acln441srdasavvnk35hsvgmccf";
-       revision = "1";
-       editedCabalFile = "1kqiy98xzdk1x5ga8ci9z23kpq7jlbc4v1zqbfkbs71av0r7cl44";
+       version = "0.3.17.1";
+       sha256 = "0md7i54rnvgn0yll7mwhi124nak0pfmpga34vnd996r6fgmnq5fb";
        isLibrary = true;
        isExecutable = true;
        enableSeparateDataOutput = true;
@@ -225798,7 +227533,7 @@ self: {
        license = lib.licenses.gpl2Plus;
      }) {};
 
-  "pandoc-lua-engine_0_2_1_4" = callPackage
+  "pandoc-lua-engine_0_2_1_5" = callPackage
     ({ mkDerivation, aeson, base, bytestring, citeproc, containers
      , data-default, directory, doclayout, doctemplates, exceptions
      , filepath, hslua, hslua-module-doclayout, hslua-module-path
@@ -225809,8 +227544,10 @@ self: {
      }:
      mkDerivation {
        pname = "pandoc-lua-engine";
-       version = "0.2.1.4";
-       sha256 = "1r288fyqqqcfz3qam3rii2pjyy37ny1bfcpd1c31gp06mhy8yiwx";
+       version = "0.2.1.5";
+       sha256 = "0d2l14889rlac4022j0xzyz2nn17mr84mjd48apz93y2k7r4mcn5";
+       revision = "1";
+       editedCabalFile = "1fzv8386ra3xsg9d2nzazz5s3crsl8l3p4vhn6vc3js3dzf49hnp";
        libraryHaskellDepends = [
          aeson base bytestring citeproc containers data-default doclayout
          doctemplates exceptions hslua hslua-module-doclayout
@@ -225834,8 +227571,8 @@ self: {
      }:
      mkDerivation {
        pname = "pandoc-lua-marshal";
-       version = "0.2.6";
-       sha256 = "029wqihgkcdfyy21pdc4gj8hh2av9c29nypcabxch8bfkz6lq0lw";
+       version = "0.2.7";
+       sha256 = "1n25xpjaf5fcs275xm64qzsfqy7k5hq5vjblxvighzv2n3yxd27n";
        libraryHaskellDepends = [
          aeson base bytestring containers exceptions hslua hslua-list
          hslua-marshalling pandoc-types safe text
@@ -226060,8 +227797,8 @@ self: {
      }:
      mkDerivation {
        pname = "pandoc-stylefrommeta";
-       version = "0.3.0.0";
-       sha256 = "1r7i22d4jkhd11srzxbchl9bx337800pliyvwa59i9n6hhqkycvg";
+       version = "0.4.0.0";
+       sha256 = "0a1qd02908h466fha3ndiygigzzkjxhqyrmkxcp5wzm38ldkpm7n";
        isLibrary = false;
        isExecutable = true;
        executableHaskellDepends = [
@@ -226123,8 +227860,8 @@ self: {
        pname = "pandoc-types";
        version = "1.23.1";
        sha256 = "1hd18l1c5yh7x24gsligkbraadq12hn7mim16xyjnicdsa1s03xd";
-       revision = "1";
-       editedCabalFile = "02yaziq3xyz9zqr4qrqm4drlqpa3xnxmm5x0ci52c5p5dr3c3b3d";
+       revision = "2";
+       editedCabalFile = "1whymq4w5z08l5ng829kn8aslczda6svi6c6q72cnv200mlq7d1c";
        libraryHaskellDepends = [
          aeson base bytestring containers deepseq ghc-prim QuickCheck syb
          text transformers
@@ -226180,8 +227917,8 @@ self: {
      }:
      mkDerivation {
        pname = "pandoc-vimhl";
-       version = "0.2.0.1";
-       sha256 = "03zbf9php7rhw1n4yb3a3zwvi92b19ydldkj0fbagwlx0xy2b4wb";
+       version = "0.3.2.0";
+       sha256 = "0ssq2ckcnnbp4mig9h788lyk164zb5rj2byqmk5vv10y86zbp3nr";
        isLibrary = false;
        isExecutable = true;
        executableHaskellDepends = [
@@ -227789,6 +229526,8 @@ self: {
        pname = "parser-combinators-tests";
        version = "1.3.0";
        sha256 = "0sw6ws7za93y3lbmxp6jp1k17zi3wdg7698ab133kcw82f6mzba2";
+       revision = "1";
+       editedCabalFile = "0h6lwj0mdlirlwcadjvyblvgqg6yksw2bnp77qkjxm2kk3rw56hn";
        isLibrary = false;
        isExecutable = false;
        testHaskellDepends = [
@@ -229546,16 +231285,18 @@ self: {
 
   "pcubature" = callPackage
     ({ mkDerivation, base, containers, delaunayNd, hspray
-     , numeric-prelude, scubature, vector, vertexenum
+     , numeric-prelude, scubature, tasty, tasty-hunit, vector
+     , vertexenum
      }:
      mkDerivation {
        pname = "pcubature";
-       version = "0.1.0.0";
-       sha256 = "1jx3av5fz5g9rgn2b4n3520bvk739nvy79pnj4ipazgchasbgccl";
+       version = "0.2.0.0";
+       sha256 = "0hrdvnkrnlmsygj1jzg93mli23rd7pibcjfhnpagrrg386cs0vvg";
        libraryHaskellDepends = [
          base containers delaunayNd hspray numeric-prelude scubature vector
          vertexenum
        ];
+       testHaskellDepends = [ base hspray tasty tasty-hunit ];
        description = "Integration over convex polytopes";
        license = lib.licenses.gpl3Only;
        hydraPlatforms = lib.platforms.none;
@@ -232216,8 +233957,8 @@ self: {
        pname = "phatsort";
        version = "0.6.0.0";
        sha256 = "1cjmamla9383fk9715jxzlw87qnd26hpkcqhk4vvgld51nraf2pl";
-       revision = "3";
-       editedCabalFile = "0fjd37sigkccr9dw70z3yy8hjn7p210b5nn52lj1hf0jlks81q0a";
+       revision = "4";
+       editedCabalFile = "0q5ilnq24n4zwhavvp2qxr5j91p3msj7ssb7qfbxvkzdml879bp7";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -234397,8 +236138,8 @@ self: {
        pname = "pipes-extras";
        version = "1.0.15";
        sha256 = "1cyb05bv5xkarab3090ikpjiqm79lr46n3nalplliz8jr4x67a82";
-       revision = "7";
-       editedCabalFile = "1mhhm4k605p6qb8m7zn97as4fj4kzy386i8k47lghlh806w7lghn";
+       revision = "8";
+       editedCabalFile = "1lh58slrw21gm799zp963k34ypcqhxz36j15qzhh1nh5zazasq8m";
        libraryHaskellDepends = [ base foldl lens pipes transformers ];
        testHaskellDepends = [
          base HUnit pipes test-framework test-framework-hunit transformers
@@ -234654,6 +236395,8 @@ self: {
        pname = "pipes-misc";
        version = "0.5.0.0";
        sha256 = "09ldpgza3yanpbsd6g2nlm352fwynq38sf226yp5kip0dqwpwbjf";
+       revision = "1";
+       editedCabalFile = "050zw0hgxcvhgfmlidaslzqwhq0p88v941zxjirm8kcaj8vv0wqj";
        libraryHaskellDepends = [
          base clock Decimal lens mmorph mtl pipes pipes-category
          pipes-concurrency semigroups stm transformers
@@ -236460,8 +238203,8 @@ self: {
      }:
      mkDerivation {
        pname = "pointfree";
-       version = "1.1.1.11";
-       sha256 = "17xaxmyys7x1l3v3a72fdkb8klr0xp0mnh6aspfa7ysakagblnf0";
+       version = "1.1.1.12";
+       sha256 = "0mrrdmslcdk2ld8g78i00jwidn765w3l7la0qdlawc2lc17w2ili";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -237200,6 +238943,25 @@ self: {
        hydraPlatforms = lib.platforms.none;
      }) {};
 
+  "polysemy-blockfrost" = callPackage
+    ({ mkDerivation, base, blockfrost-api, blockfrost-client, polysemy
+     , polysemy-plugin, tasty, tasty-discover, text
+     }:
+     mkDerivation {
+       pname = "polysemy-blockfrost";
+       version = "0.1.0.0";
+       sha256 = "1lykz8gqgj7kwkr9rp3cvwk2ak469h023ga0dlzz1azmmm8gbabn";
+       revision = "1";
+       editedCabalFile = "0mqa48iib7jn1y6xipfx0mvjmqxbgj1g6gxw5l239mbvg0mh0616";
+       libraryHaskellDepends = [
+         base blockfrost-api blockfrost-client polysemy polysemy-plugin text
+       ];
+       testHaskellDepends = [ base polysemy polysemy-plugin tasty ];
+       testToolDepends = [ tasty-discover ];
+       description = "Polysemy wrapper around the Blockfrost client";
+       license = lib.licenses.asl20;
+     }) {};
+
   "polysemy-check" = callPackage
     ({ mkDerivation, base, containers, hspec, hspec-discover
      , kind-generics, kind-generics-th, polysemy, polysemy-plugin
@@ -239350,6 +241112,23 @@ self: {
        license = lib.licenses.bsd3;
      }) {inherit (pkgs) postgresql;};
 
+  "postgresql-libpq_0_10_1_0" = callPackage
+    ({ mkDerivation, base, bytestring, Cabal, postgresql, tasty
+     , tasty-hunit, unix
+     }:
+     mkDerivation {
+       pname = "postgresql-libpq";
+       version = "0.10.1.0";
+       sha256 = "1w49zp3izxi3s4mq71i93i4s08kwcv1j0j6m5cfpxcp5s4h12pwq";
+       setupHaskellDepends = [ base Cabal ];
+       libraryHaskellDepends = [ base bytestring unix ];
+       librarySystemDepends = [ postgresql ];
+       testHaskellDepends = [ base bytestring tasty tasty-hunit ];
+       description = "low-level binding to libpq";
+       license = lib.licenses.bsd3;
+       hydraPlatforms = lib.platforms.none;
+     }) {inherit (pkgs) postgresql;};
+
   "postgresql-libpq-notify" = callPackage
     ({ mkDerivation, async, base, hspec, postgres-options
      , postgresql-libpq, stm, text, tmp-postgres
@@ -241720,16 +243499,16 @@ self: {
 
   "prettyprinter-combinators" = callPackage
     ({ mkDerivation, base, bimap, bytestring, containers, dlist
-     , pretty-show, prettyprinter, syb, template-haskell, text
-     , unordered-containers, vector
+     , enummapset, pretty-show, prettyprinter, syb, template-haskell
+     , text, unordered-containers, vector
      }:
      mkDerivation {
        pname = "prettyprinter-combinators";
-       version = "0.1.2";
-       sha256 = "1kmvzczb9g3m2q7glrhwwaklbjs225xgq61vcp5qbysnyhdbxydi";
+       version = "0.1.3";
+       sha256 = "061vir3nm2df3xrxsm87a8fydmagfvw1y9izhx04j2pas8p5adnx";
        libraryHaskellDepends = [
-         base bimap bytestring containers dlist pretty-show prettyprinter
-         syb template-haskell text unordered-containers vector
+         base bimap bytestring containers dlist enummapset pretty-show
+         prettyprinter syb template-haskell text unordered-containers vector
        ];
        description = "Some useful combinators for the prettyprinter package";
        license = lib.licenses.asl20;
@@ -242205,8 +243984,8 @@ self: {
      }:
      mkDerivation {
        pname = "primitive-extras";
-       version = "0.10.1.10";
-       sha256 = "1b83m53dwd2wagqzf0sy6wzsh3kj8prwdkkh6xbm6x0sqmr5ky8l";
+       version = "0.10.2";
+       sha256 = "0z7xgd42dg5dq2ikjdbxjq39acv98s0p0sk3fincapw9vnxicnqy";
        libraryHaskellDepends = [
          base bytestring cereal deferred-folds focus foldl list-t primitive
          primitive-unlifted profunctors vector
@@ -242850,16 +244629,13 @@ self: {
        license = lib.licenses.mit;
      }) {};
 
-  "process_1_6_19_0" = callPackage
-    ({ mkDerivation, base, bytestring, deepseq, directory, filepath
-     , unix
-     }:
+  "process_1_6_20_0" = callPackage
+    ({ mkDerivation, base, deepseq, directory, filepath, unix }:
      mkDerivation {
        pname = "process";
-       version = "1.6.19.0";
-       sha256 = "15nbbn7zcs1pwicqdhzg5s6wrym1l29mbvbin5z56rk9nid3as5l";
+       version = "1.6.20.0";
+       sha256 = "16prkmaj4dz394pg40w5xgbxlh5kbhhliwawdcqs57q0qchs5zff";
        libraryHaskellDepends = [ base deepseq directory filepath unix ];
-       testHaskellDepends = [ base bytestring directory ];
        description = "Process libraries";
        license = lib.licenses.bsd3;
        hydraPlatforms = lib.platforms.none;
@@ -243170,6 +244946,67 @@ self: {
        mainProgram = "example-netcat-test";
      }) {};
 
+  "prodapi" = callPackage
+    ({ mkDerivation, aeson, async, base, bytestring, containers
+     , contravariant, directory, http-api-data, http-client, http-media
+     , lucid, process-extras, prometheus-client, prometheus-metrics-ghc
+     , servant, servant-client, servant-server, text, time, uuid, wai
+     }:
+     mkDerivation {
+       pname = "prodapi";
+       version = "0.1.0.0";
+       sha256 = "0hqfxkg2il8sbbav5qwpydqvvj5zd9r9i2x7jlqxbdfg9jz2fr16";
+       libraryHaskellDepends = [
+         aeson async base bytestring containers contravariant directory
+         http-api-data http-client http-media lucid process-extras
+         prometheus-client prometheus-metrics-ghc servant servant-client
+         servant-server text time uuid wai
+       ];
+       description = "Some curated and opinionated packages for building Haskell services";
+       license = lib.licenses.bsd3;
+       hydraPlatforms = lib.platforms.none;
+       broken = true;
+     }) {};
+
+  "prodapi-proxy" = callPackage
+    ({ mkDerivation, aeson, base, bytestring, containers, http-client
+     , http-reverse-proxy, http-types, prodapi, prometheus-client
+     , random-shuffle, servant, servant-server, text, time, tls, wai
+     , warp-tls
+     }:
+     mkDerivation {
+       pname = "prodapi-proxy";
+       version = "0.1.0.0";
+       sha256 = "14zhvfwvkdxa2pi0p4nzn30001xsdmgx7dg3rnbv2b319jjq5pbm";
+       libraryHaskellDepends = [
+         aeson base bytestring containers http-client http-reverse-proxy
+         http-types prodapi prometheus-client random-shuffle servant
+         servant-server text time tls wai warp-tls
+       ];
+       description = "write an HTTP proxy with prodapi counters";
+       license = lib.licenses.bsd3;
+       hydraPlatforms = lib.platforms.none;
+     }) {};
+
+  "prodapi-userauth" = callPackage
+    ({ mkDerivation, aeson, base, bytestring, containers, cookie
+     , http-api-data, jwt, lucid, postgresql-simple, prodapi
+     , prometheus-client, servant, servant-server, text, time, uuid, wai
+     }:
+     mkDerivation {
+       pname = "prodapi-userauth";
+       version = "0.1.0.0";
+       sha256 = "0xmizx7xrh3hqxddnh699bhz1k8jy157n3rzn35akczp75d7gv1h";
+       libraryHaskellDepends = [
+         aeson base bytestring containers cookie http-api-data jwt lucid
+         postgresql-simple prodapi prometheus-client servant servant-server
+         text time uuid wai
+       ];
+       description = "a base lib for performing user-authentication in prodapi services";
+       license = lib.licenses.bsd3;
+       hydraPlatforms = lib.platforms.none;
+     }) {};
+
   "producer" = callPackage
     ({ mkDerivation, base, checkers, QuickCheck, tasty, tasty-auto
      , tasty-hunit, tasty-quickcheck
@@ -243224,8 +245061,8 @@ self: {
        pname = "product-profunctors";
        version = "0.11.1.1";
        sha256 = "1nhwpfjz4iz30h8q7d40hlibqqymvmcf6wmbl6h3212d54hqdgiz";
-       revision = "4";
-       editedCabalFile = "18jc284wsvv8kjxb36j7i1iashpizs5yrqjzq1i1r2yzzq9zplll";
+       revision = "5";
+       editedCabalFile = "137m8dvcyldiqf3d6vgxc2dv33kkj3x7r5w5yvfif4yja59vfvkw";
        libraryHaskellDepends = [
          base bifunctors contravariant profunctors tagged template-haskell
          th-abstraction
@@ -244387,8 +246224,6 @@ self: {
        ];
        description = "Arbitrary instances for proto-lens";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "proto-lens-combinators" = callPackage
@@ -244580,19 +246415,19 @@ self: {
 
   "proto3-wire" = callPackage
     ({ mkDerivation, base, bytestring, cereal, containers, criterion
-     , deepseq, doctest, ghc-prim, hashable, parameterized, primitive
-     , QuickCheck, random, safe, tasty, tasty-hunit, tasty-quickcheck
+     , deepseq, doctest, hashable, parameterized, primitive, QuickCheck
+     , random, safe, tasty, tasty-hunit, tasty-quickcheck
      , template-haskell, text, text-short, transformers
      , unordered-containers, vector, word-compat
      }:
      mkDerivation {
        pname = "proto3-wire";
-       version = "1.4.1";
-       sha256 = "0liy2qnx9y10ad79nfw0idp2c5mz37pwb1h07f82g4rbg66qn465";
+       version = "1.4.2";
+       sha256 = "0ly8nc5z6ri1bj5l8h0r23kwsjr0m7nrwbyzxscp5q4880rqx492";
        libraryHaskellDepends = [
-         base bytestring cereal containers deepseq ghc-prim hashable
-         parameterized primitive QuickCheck safe template-haskell text
-         text-short transformers unordered-containers vector word-compat
+         base bytestring cereal containers deepseq hashable parameterized
+         primitive QuickCheck safe template-haskell text text-short
+         transformers unordered-containers vector word-compat
        ];
        testHaskellDepends = [
          base bytestring cereal doctest QuickCheck tasty tasty-hunit
@@ -244601,8 +246436,6 @@ self: {
        benchmarkHaskellDepends = [ base bytestring criterion random ];
        description = "A low-level implementation of the Protocol Buffers (version 3) wire format";
        license = lib.licenses.asl20;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "protobuf" = callPackage
@@ -244942,8 +246775,8 @@ self: {
     ({ mkDerivation, base }:
      mkDerivation {
        pname = "proxied";
-       version = "0.3.1";
-       sha256 = "0ldcyvzg5i4axkn5qwgkc8vrc0f0715842ca41d7237p1bh98s4r";
+       version = "0.3.2";
+       sha256 = "137g3xwjan292ablfqz32g7kbjyj43nvwq0ah9syq1ivz1w71ay2";
        libraryHaskellDepends = [ base ];
        description = "Make functions consume Proxy instead of undefined";
        license = lib.licenses.bsd3;
@@ -247797,6 +249630,8 @@ self: {
        pname = "quic";
        version = "0.1.20";
        sha256 = "0zzpdb07xrgx3bcvnfmn778yamk6q86lqmj1ir1h3g82gcknzfxm";
+       revision = "1";
+       editedCabalFile = "0nnl78qiczrsqzjhfvwc89m6v1kyvaysph5v1m9bi37ainvy8222";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -247948,8 +249783,8 @@ self: {
        pname = "quickcheck-classes";
        version = "0.6.5.0";
        sha256 = "19iw15mvb7gws3ljdxqwsbb4pmfc0sfflf8szgmrhiqr3k82mqv2";
-       revision = "2";
-       editedCabalFile = "0gldr9kcij41b8imsyf11q26kd1nf8vhfh8wd9i1fn01jbxzgi37";
+       revision = "3";
+       editedCabalFile = "1pawam5rsdcdv21fqc87khzqjm0ixwzklfxd6gk3b2qrr5q66bn5";
        libraryHaskellDepends = [
          aeson base containers primitive primitive-addr QuickCheck
          quickcheck-classes-base semigroupoids semirings transformers vector
@@ -248031,8 +249866,8 @@ self: {
      }:
      mkDerivation {
        pname = "quickcheck-groups";
-       version = "0.0.1.1";
-       sha256 = "0da5x8hdfm5v1ab8zx11nvxc54jcmrv8gpf02vd0w2c95lgazvqi";
+       version = "0.0.1.2";
+       sha256 = "0pv1j93g4cmfsh4yijrcc7qgrkggk92jmhl1qjj83yzszm4fb80p";
        libraryHaskellDepends = [
          base groups pretty-show QuickCheck quickcheck-classes
          quickcheck-instances semigroupoids
@@ -248128,8 +249963,8 @@ self: {
      }:
      mkDerivation {
        pname = "quickcheck-monoid-subclasses";
-       version = "0.3.0.2";
-       sha256 = "1baxylj4kh1vx5vfy8dcschzr9bfaby7y3m6m1kjpb4qdj8vlbk3";
+       version = "0.3.0.3";
+       sha256 = "0z7i93f9r6f0c8xvyja8v4gwm4ydhymir9lzncails53v2aw1g71";
        libraryHaskellDepends = [
          base containers monoid-subclasses pretty-show QuickCheck
          quickcheck-classes quickcheck-instances semigroupoids
@@ -248206,8 +250041,8 @@ self: {
      }:
      mkDerivation {
        pname = "quickcheck-quid";
-       version = "0.0.1.2";
-       sha256 = "1chdbkd1as9ln6cgcv62w3vqw821ybmyh500k80a3c244ipwf8ny";
+       version = "0.0.1.3";
+       sha256 = "0f2y91znim4745fdgl37y2lgv1qf3isn698w2ix15ibcs6yvkczy";
        libraryHaskellDepends = [
          base containers deepseq extra hashable QuickCheck text
        ];
@@ -249355,26 +251190,20 @@ self: {
      }) {};
 
   "radix-tree" = callPackage
-    ({ mkDerivation, base, bytestring, containers, deepseq, gauge
-     , hashtables, HUnit, primitive, QuickCheck, tasty, tasty-hunit
-     , tasty-quickcheck, text, unordered-containers
+    ({ mkDerivation, base, bytestring, containers, deepseq, hspec
+     , primitive, random, template-haskell, text
      }:
      mkDerivation {
        pname = "radix-tree";
-       version = "0.1";
-       sha256 = "0hdlj97gzqb5rgyj5ybb4kki9b6xrlavcbz7i9w8q81vwjyv8cka";
+       version = "1.0.0.0";
+       sha256 = "1cyh6fqrl175mzl2g2565r0wv2jay0xgmv8fih91jqg5rrvgs4hq";
        libraryHaskellDepends = [
-         base bytestring containers deepseq primitive
+         base bytestring deepseq primitive template-haskell text
        ];
        testHaskellDepends = [
-         base bytestring containers HUnit QuickCheck tasty tasty-hunit
-         tasty-quickcheck
-       ];
-       benchmarkHaskellDepends = [
-         base bytestring containers deepseq gauge hashtables text
-         unordered-containers
+         base bytestring containers hspec primitive random text
        ];
-       description = "Radix tree data structive over short byte-strings";
+       description = "Radix trees";
        license = lib.licenses.bsd3;
      }) {};
 
@@ -250837,6 +252666,29 @@ self: {
        broken = true;
      }) {};
 
+  "rattletrap_13_0_2" = callPackage
+    ({ mkDerivation, aeson, aeson-pretty, array, base, bytestring
+     , containers, filepath, http-client, http-client-tls, text
+     }:
+     mkDerivation {
+       pname = "rattletrap";
+       version = "13.0.2";
+       sha256 = "0yrq5ydwp3p1mw5srk2x4rsv4x466xlkb7468v1mgvhnbd9i85cf";
+       isLibrary = true;
+       isExecutable = true;
+       libraryHaskellDepends = [
+         aeson aeson-pretty array base bytestring containers filepath
+         http-client http-client-tls text
+       ];
+       executableHaskellDepends = [ base ];
+       testHaskellDepends = [ base bytestring filepath ];
+       description = "Parse and generate Rocket League replays";
+       license = lib.licenses.mit;
+       hydraPlatforms = lib.platforms.none;
+       mainProgram = "rattletrap";
+       broken = true;
+     }) {};
+
   "raven-haskell" = callPackage
     ({ mkDerivation, aeson, base, bytestring, http-conduit, mtl
      , network, random, resourcet, text, time, unordered-containers
@@ -252463,8 +254315,6 @@ self: {
        ];
        description = "Record subtyping and record utilities with generics-sop";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "records-th" = callPackage
@@ -252637,18 +254487,13 @@ self: {
      }) {};
 
   "red-black-record" = callPackage
-    ({ mkDerivation, aeson, base, bytestring, doctest, profunctors
-     , sop-core, tasty, tasty-hunit, text
-     }:
+    ({ mkDerivation, base, sop-core, tasty, tasty-hunit }:
      mkDerivation {
        pname = "red-black-record";
-       version = "2.1.4.0";
-       sha256 = "1yc5nfkfq40gkwmbi29077c3kl9zqzliw9srpp7qv1qgq6sppmfi";
+       version = "2.1.6.0";
+       sha256 = "089fbazh6q0x4q07cda5msn143l2zz5a70vgc63xm0r3f0n1qybp";
        libraryHaskellDepends = [ base sop-core ];
-       testHaskellDepends = [
-         aeson base bytestring doctest profunctors sop-core tasty
-         tasty-hunit text
-       ];
+       testHaskellDepends = [ base sop-core tasty tasty-hunit ];
        doHaddock = false;
        description = "Extensible records and variants indexed by a type-level Red-Black tree";
        license = lib.licenses.bsd3;
@@ -253201,8 +255046,8 @@ self: {
      }:
      mkDerivation {
        pname = "refined";
-       version = "0.8.1";
-       sha256 = "0d971w7g6qcsczv3b4i4v5mjsfjv8ajm76vfvnxsszda5bq45bim";
+       version = "0.8.2";
+       sha256 = "1ifwph2f9yka0qac73vfw5lxdbj6n7fji4zlfg1423n860nghp6m";
        libraryHaskellDepends = [
          aeson base bytestring deepseq exceptions hashable mtl QuickCheck
          template-haskell text these-skinny
@@ -253300,10 +255145,8 @@ self: {
      }:
      mkDerivation {
        pname = "reflection";
-       version = "2.1.7";
-       sha256 = "1z8mwkqb0ljxpc45hkj0jiyhjfl1frpxqhdnp0xm6w98n2l1ifvc";
-       revision = "1";
-       editedCabalFile = "011s5ci385yccv576d1mh0n7v5k2pbmqkx1swlb5sq1sk3qb7dgj";
+       version = "2.1.8";
+       sha256 = "1kc9857qwj2kb26h3sbmywp1blry2mcrs2h03751pvaqg7v9yblj";
        libraryHaskellDepends = [ base template-haskell ];
        testHaskellDepends = [ base containers hspec QuickCheck ];
        testToolDepends = [ hspec-discover ];
@@ -253788,7 +255631,6 @@ self: {
        ];
        description = "Interact with a GADT API in your reflex-dom application";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
        mainProgram = "readme";
      }) {};
 
@@ -255873,8 +257715,8 @@ self: {
        pname = "relude";
        version = "1.2.1.0";
        sha256 = "09fp8n2z6nz2yqkn8pgq56s6d971b4mgcaldkhc0ih3bz9dp8kvq";
-       revision = "1";
-       editedCabalFile = "1dqgl50rlrq0d84x5ffm5d4sp275wfm3f03k25ryq0ni1prhrarc";
+       revision = "2";
+       editedCabalFile = "1vplhnkcgsxfnmg145chxclzqdgaqr9cc5687sgd9qbbisqz7gm1";
        libraryHaskellDepends = [
          base bytestring containers deepseq ghc-prim hashable mtl stm text
          transformers unordered-containers
@@ -256986,6 +258828,22 @@ self: {
        license = lib.licenses.mit;
      }) {};
 
+  "rerefined" = callPackage
+    ({ mkDerivation, base, mono-traversable, QuickCheck
+     , template-haskell, text, text-builder-linear, type-level-show
+     }:
+     mkDerivation {
+       pname = "rerefined";
+       version = "0.4.0";
+       sha256 = "1x7k3s45k9g7g62y5spg52m64fjqxa4bh6dy6d71p6fa2qyhxf2b";
+       libraryHaskellDepends = [
+         base mono-traversable QuickCheck template-haskell text
+         text-builder-linear type-level-show
+       ];
+       description = "Refinement types, again";
+       license = lib.licenses.mit;
+     }) {};
+
   "reroute" = callPackage
     ({ mkDerivation, base, criterion, deepseq, graph-core, hashable
      , hspec, http-api-data, hvect, mtl, random, regex-compat, text
@@ -257350,8 +259208,8 @@ self: {
      }:
      mkDerivation {
        pname = "resourcet-extra";
-       version = "0.1.0";
-       sha256 = "1vmb0yh94vj507gw8narrwv9vh1imlq4s7373zh9zrpd4x4h9d15";
+       version = "0.1.1";
+       sha256 = "09da35ik9ic0dx82w1wss4dainp96dzk7lc0cvjyfyzarsyig5z1";
        libraryHaskellDepends = [
          async base containers resourcet safe-exceptions unliftio-core
        ];
@@ -258472,21 +260330,30 @@ self: {
      }) {};
 
   "rhine" = callPackage
-    ({ mkDerivation, base, containers, deepseq, dunai, free
-     , monad-schedule, MonadRandom, random, simple-affine-space, tasty
-     , tasty-hunit, text, time, time-domain, transformers, vector-sized
+    ({ mkDerivation, automaton, base, containers, criterion, deepseq
+     , free, mmorph, monad-schedule, MonadRandom, mtl, profunctors
+     , QuickCheck, random, selective, simple-affine-space, sop-core
+     , tasty, tasty-hunit, tasty-quickcheck, text, time, time-domain
+     , transformers, vector-sized
      }:
      mkDerivation {
        pname = "rhine";
-       version = "1.2";
-       sha256 = "1r9a1psakkq1mzmlq5qcfv8kp45p5br1p5pfs0pzlh2g0qhy3wng";
+       version = "1.3";
+       sha256 = "0n6pa29sxkr1vchyayr8sq8akc5jpr8kbn9l2dr9k24y9x55m8jr";
+       enableSeparateDataOutput = true;
        libraryHaskellDepends = [
-         base containers deepseq dunai free monad-schedule MonadRandom
-         random simple-affine-space text time time-domain transformers
-         vector-sized
+         automaton base containers deepseq free mmorph monad-schedule
+         MonadRandom mtl profunctors random selective simple-affine-space
+         sop-core text time time-domain transformers vector-sized
        ];
        testHaskellDepends = [
-         base monad-schedule tasty tasty-hunit vector-sized
+         automaton base criterion monad-schedule mtl QuickCheck selective
+         tasty tasty-hunit tasty-quickcheck text time transformers
+         vector-sized
+       ];
+       benchmarkHaskellDepends = [
+         automaton base criterion monad-schedule mtl selective text time
+         transformers vector-sized
        ];
        description = "Functional Reactive Programming with type-level clocks";
        license = lib.licenses.bsd3;
@@ -258519,17 +260386,17 @@ self: {
      }) {};
 
   "rhine-gloss" = callPackage
-    ({ mkDerivation, base, dunai, gloss, mmorph, monad-schedule, rhine
-     , transformers
+    ({ mkDerivation, automaton, base, gloss, mmorph, monad-schedule
+     , rhine, transformers
      }:
      mkDerivation {
        pname = "rhine-gloss";
-       version = "1.2";
-       sha256 = "1nxqggdjikn6qr89z1pn4pfqf392dnpxz6hlb07kdfaxa2rgcrp9";
+       version = "1.3";
+       sha256 = "1x21mjaiy4adfph7wk85xh3fv037zvfgzmh8ng2bima4i1brn11h";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
-         base dunai gloss mmorph monad-schedule rhine transformers
+         automaton base gloss mmorph monad-schedule rhine transformers
        ];
        executableHaskellDepends = [ base ];
        description = "Gloss backend for Rhine";
@@ -258540,18 +260407,17 @@ self: {
      }) {};
 
   "rhine-terminal" = callPackage
-    ({ mkDerivation, base, dunai, exceptions, hspec, monad-schedule
-     , rhine, stm, terminal, text, time, transformers
+    ({ mkDerivation, base, exceptions, hspec, monad-schedule, rhine
+     , stm, terminal, text, time, transformers
      }:
      mkDerivation {
        pname = "rhine-terminal";
-       version = "1.2";
-       sha256 = "1kpicaw7snk0hh84rmym3jm7difwvrmv368lya20jc4margrrjhg";
+       version = "1.3";
+       sha256 = "0jafqyg7ipfhnxwk4k9q6r3w72amrx9ir0w4r3mfzjq1bxgclzxr";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
-         base dunai exceptions monad-schedule rhine terminal time
-         transformers
+         base exceptions monad-schedule rhine terminal time transformers
        ];
        executableHaskellDepends = [ base rhine terminal text time ];
        testHaskellDepends = [
@@ -258947,16 +260813,16 @@ self: {
      }) {};
 
   "ridley-extras" = callPackage
-    ({ mkDerivation, base, ekg-prometheus-adapter, microlens, mtl
-     , prometheus, ridley, shelly, text, transformers
+    ({ mkDerivation, base, ekg-prometheus-adapter, katip, microlens
+     , mtl, prometheus, ridley, shelly, text, transformers
      }:
      mkDerivation {
        pname = "ridley-extras";
-       version = "0.1.3.0";
-       sha256 = "0afzwmd5arvxdsjcz2kwfr715ayn5dlz2mk9wh01wq92z3d5gd04";
+       version = "0.1.4.0";
+       sha256 = "1zmbaw3wj0ii8z0i991wr4b9s08ch082x76ay0mbx305rj1jw28z";
        libraryHaskellDepends = [
-         base ekg-prometheus-adapter microlens mtl prometheus ridley shelly
-         text transformers
+         base ekg-prometheus-adapter katip microlens mtl prometheus ridley
+         shelly text transformers
        ];
        testHaskellDepends = [ base ];
        description = "Handy metrics that don't belong to ridley";
@@ -259778,8 +261644,8 @@ self: {
      }:
      mkDerivation {
        pname = "roc-id";
-       version = "0.2.0.1";
-       sha256 = "03969sm3ia1mi4i2v9z4sclsa911h3myhwqgiygnncyxbwpawsmd";
+       version = "0.2.0.2";
+       sha256 = "1sx66ixilvfzwnic16balzfdynpc891b3lj8gsyp9xd6z059pa61";
        libraryHaskellDepends = [
          base MonadRandom Only text vector-sized
        ];
@@ -262232,6 +264098,8 @@ self: {
        pname = "safe-json";
        version = "1.2.0.1";
        sha256 = "1y03smd9fjxqfs5q2zi8138k3aafwx691327xavsa2b7q27bvi5b";
+       revision = "1";
+       editedCabalFile = "1f2fax632djf5vq502ms7qj5jagfw8lz7f0vg53acj9qsnx8pkhp";
        libraryHaskellDepends = [
          aeson base bytestring containers dlist hashable scientific tasty
          tasty-hunit tasty-quickcheck text time unordered-containers
@@ -262479,8 +264347,8 @@ self: {
        pname = "safecopy";
        version = "0.10.4.2";
        sha256 = "0r2mf0p82gf8vnldx477b5ykrj1x7hyg13nqfn6gzb50japs6h3i";
-       revision = "8";
-       editedCabalFile = "03w9x2p5cnwngwl698p12vm62gbbd5n3ckw6p9hm0j177jdhsynr";
+       revision = "10";
+       editedCabalFile = "09v9lsa5qgy4p9bigrc2jflgzgn7mfpwjln3n370zgffyas3wryr";
        libraryHaskellDepends = [
          array base bytestring cereal containers generic-data old-time
          template-haskell text time transformers vector
@@ -262700,18 +264568,18 @@ self: {
 
   "sak" = callPackage
     ({ mkDerivation, base, bytestring, bz2, cpphs, directory, filepath
-     , lz4-hs, lzlib, lzma, lzo, optparse-applicative, parallel-io
-     , unix-compat, zlib, zstd
+     , lz4-hs, lzlib, lzma-static, lzo, optparse-applicative
+     , parallel-io, unix-compat, zlib, zstd
      }:
      mkDerivation {
        pname = "sak";
-       version = "0.1.3.1";
-       sha256 = "12vharmp5f0ffxy4j5kjwqnffc87y4wmzvgcfvp6prqyjfh87qfy";
+       version = "0.1.3.2";
+       sha256 = "00l01hl0biy4dhs11j2wsd7lqvg3pp20lyppdvf1fjyh2k1jlyiw";
        isLibrary = false;
        isExecutable = true;
        enableSeparateDataOutput = true;
        executableHaskellDepends = [
-         base bytestring bz2 directory filepath lz4-hs lzlib lzma lzo
+         base bytestring bz2 directory filepath lz4-hs lzlib lzma-static lzo
          optparse-applicative parallel-io unix-compat zlib zstd
        ];
        executableToolDepends = [ cpphs ];
@@ -263037,6 +264905,22 @@ self: {
        license = lib.licenses.mit;
      }) {};
 
+  "samsort" = callPackage
+    ({ mkDerivation, base, primitive, QuickCheck, tasty
+     , tasty-quickcheck
+     }:
+     mkDerivation {
+       pname = "samsort";
+       version = "0.1.0.0";
+       sha256 = "08whiyjx63yikrbwpccwxbcgigrlqqzkw8papp91g85cl03xpni7";
+       libraryHaskellDepends = [ base ];
+       testHaskellDepends = [
+         base primitive QuickCheck tasty tasty-quickcheck
+       ];
+       description = "A stable adaptive mergesort implementation";
+       license = lib.licenses.bsd3;
+     }) {};
+
   "samtools" = callPackage
     ({ mkDerivation, base, bytestring, c2hs, seqloc, vector, zlib }:
      mkDerivation {
@@ -263161,6 +265045,33 @@ self: {
        broken = true;
      }) {};
 
+  "sandwatch" = callPackage
+    ({ mkDerivation, aeson, atomic-write, base, bytestring
+     , criterion-measurement, directory, process, text, time
+     }:
+     mkDerivation {
+       pname = "sandwatch";
+       version = "0.1.1.0";
+       sha256 = "0bj38m648r8wsc18037q9kp3sgcqdg4gwxag4g676nvc25ys7l7p";
+       isLibrary = true;
+       isExecutable = true;
+       libraryHaskellDepends = [
+         aeson atomic-write base bytestring criterion-measurement directory
+         process text time
+       ];
+       executableHaskellDepends = [
+         aeson atomic-write base bytestring criterion-measurement directory
+         process text time
+       ];
+       testHaskellDepends = [
+         aeson atomic-write base bytestring criterion-measurement directory
+         process text time
+       ];
+       description = "record historical command runtimes for later prediction";
+       license = lib.licenses.bsd3;
+       mainProgram = "sandwatch";
+     }) {};
+
   "sandwich" = callPackage
     ({ mkDerivation, aeson, ansi-terminal, async, base, brick
      , bytestring, colour, containers, deepseq, directory, exceptions
@@ -263749,6 +265660,34 @@ self: {
        license = lib.licenses.mit;
      }) {};
 
+  "sbp_6_0_0" = callPackage
+    ({ mkDerivation, aeson, aeson-pretty, array, base
+     , base64-bytestring, basic-prelude, binary, binary-conduit
+     , bytestring, cmdargs, conduit, conduit-extra, data-binary-ieee754
+     , lens, lens-aeson, monad-loops, resourcet, tasty, tasty-hunit
+     , template-haskell, text, time, yaml
+     }:
+     mkDerivation {
+       pname = "sbp";
+       version = "6.0.0";
+       sha256 = "0g6s3ga93y2khs8mvjrqk3v7wzgfjg9y2g6clz0ng57129n579lp";
+       isLibrary = true;
+       isExecutable = true;
+       libraryHaskellDepends = [
+         aeson array base base64-bytestring basic-prelude binary bytestring
+         data-binary-ieee754 lens lens-aeson monad-loops template-haskell
+         text
+       ];
+       executableHaskellDepends = [
+         aeson aeson-pretty base basic-prelude binary-conduit bytestring
+         cmdargs conduit conduit-extra lens resourcet time yaml
+       ];
+       testHaskellDepends = [ base basic-prelude tasty tasty-hunit ];
+       description = "SwiftNav's SBP Library";
+       license = lib.licenses.mit;
+       hydraPlatforms = lib.platforms.none;
+     }) {};
+
   "sbp2udp" = callPackage
     ({ mkDerivation, base, basic-prelude, binary, binary-conduit
      , bytestring, conduit, conduit-extra, network, optparse-generic
@@ -263834,7 +265773,7 @@ self: {
        broken = true;
      }) {inherit (pkgs) z3;};
 
-  "sbv_10_9" = callPackage
+  "sbv_10_10" = callPackage
     ({ mkDerivation, array, async, base, bytestring, containers
      , deepseq, directory, filepath, libBF, mtl, pretty, process
      , QuickCheck, random, syb, tasty, tasty-bench, tasty-golden
@@ -263843,8 +265782,8 @@ self: {
      }:
      mkDerivation {
        pname = "sbv";
-       version = "10.9";
-       sha256 = "043l5akpdqrz5lzgs7m5dscy64cidgkpijf82wd4qwhs838qp8m0";
+       version = "10.10";
+       sha256 = "0kd40q869vzhrsi8wgmwc98z91r5lrz4hg76qkpfbkmcnvi76kv8";
        enableSeparateDataOutput = true;
        libraryHaskellDepends = [
          array async base containers deepseq directory filepath libBF mtl
@@ -264767,6 +266706,30 @@ self: {
        license = lib.licenses.bsd3;
      }) {};
 
+  "scientific_0_3_8_0" = callPackage
+    ({ mkDerivation, base, binary, bytestring, containers, criterion
+     , deepseq, hashable, integer-logarithms, primitive, QuickCheck
+     , smallcheck, tasty, tasty-hunit, tasty-quickcheck
+     , tasty-smallcheck, template-haskell, text
+     }:
+     mkDerivation {
+       pname = "scientific";
+       version = "0.3.8.0";
+       sha256 = "1kqqf8hyffrkqp6cgjxgxm9nc18ql7jj5rjjirqxf9mam2y47cqk";
+       libraryHaskellDepends = [
+         base binary bytestring containers deepseq hashable
+         integer-logarithms primitive template-haskell text
+       ];
+       testHaskellDepends = [
+         base binary bytestring QuickCheck smallcheck tasty tasty-hunit
+         tasty-quickcheck tasty-smallcheck text
+       ];
+       benchmarkHaskellDepends = [ base criterion ];
+       description = "Numbers represented using scientific notation";
+       license = lib.licenses.bsd3;
+       hydraPlatforms = lib.platforms.none;
+     }) {};
+
   "scientific-notation" = callPackage
     ({ mkDerivation, attoparsec, attoparsec-aeson, base, bytebuild
      , byteslice, bytesmith, bytestring, gauge, natural-arithmetic
@@ -266698,11 +268661,9 @@ self: {
     ({ mkDerivation, base, containers, QuickCheck, transformers }:
      mkDerivation {
        pname = "selective";
-       version = "0.7";
-       sha256 = "0dhwfhfp57fmg86h5hkizchnk94zdgbpxxfv0r3xp65a7aq546fg";
-       revision = "2";
-       editedCabalFile = "1lrbw2ii7361hwijfaaw8zrlfqz14dik7wjb23bvn2749kvxms1s";
-       libraryHaskellDepends = [ base containers transformers ];
+       version = "0.7.0.1";
+       sha256 = "1qxfnqidlqw5hbsqs80i77nrkanz73jzyd4w157gamkr3kklpyyv";
+       libraryHaskellDepends = [ base transformers ];
        testHaskellDepends = [ base containers QuickCheck transformers ];
        description = "Selective applicative functors";
        license = lib.licenses.mit;
@@ -267021,10 +268982,8 @@ self: {
      }:
      mkDerivation {
        pname = "semigroupoids";
-       version = "6.0.0.1";
-       sha256 = "0d3rsxby1j4m0ak3v62jbjzw1f2n55qxnb2jsrgj1y5xj6c8m8vx";
-       revision = "1";
-       editedCabalFile = "1ia31jmv4m228j7mwcl58ala7z18d3iqygki3qv6akhi3i2kp8j7";
+       version = "6.0.1";
+       sha256 = "07yc5759y4njlb2f7s2yy3ji9akp7xw03w7nybaga514hqq20lqx";
        libraryHaskellDepends = [
          base base-orphans bifunctors comonad containers contravariant
          distributive hashable tagged template-haskell transformers
@@ -271722,8 +273681,8 @@ self: {
        pname = "setlocale";
        version = "1.0.0.10";
        sha256 = "19rv89jkhq5ic7j5rzpygnmsbzim2mn8ip0m292za613q88gywir";
-       revision = "4";
-       editedCabalFile = "0lpr3lrn28ig0q2cd5xgggzgf917xdpx1zq2q523r0qin6vbb44n";
+       revision = "5";
+       editedCabalFile = "16p23y8hkixxm9z1plnrsql0x264vkcrfgw516z05axc4l3xbkhg";
        libraryHaskellDepends = [ base ];
        description = "Haskell bindings to setlocale";
        license = lib.licenses.bsd3;
@@ -273374,6 +275333,8 @@ self: {
        pname = "shelly";
        version = "1.12.1";
        sha256 = "0xqcz0105cvvhngnlzbn2pfrh17vx5p20a1c4c9rp3124922cnhk";
+       revision = "1";
+       editedCabalFile = "0f71dbh0a3xb82y578z95wchspm2r4i38wiv1s5ls6p6vchk7phm";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -274225,7 +276186,6 @@ self: {
        ];
        description = "Deterministic serialisation and signatures with proto-lens support";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
      }) {};
 
   "signable-haskell-protoc" = callPackage
@@ -275982,6 +277942,8 @@ self: {
        pname = "singleton-nats";
        version = "0.4.7";
        sha256 = "18n2p5cl75rl2afvq4qy3vilcvbyx8wz0qh4w4m9aqakk3lyv87i";
+       revision = "1";
+       editedCabalFile = "12kmgh1fjb0mjs21wviq9p14q7bjdrbr1njs7csdc3ixkffysqqs";
        libraryHaskellDepends = [ base singletons singletons-base ];
        description = "Unary natural numbers relying on the singletons infrastructure";
        license = lib.licenses.bsd3;
@@ -276005,10 +277967,8 @@ self: {
     ({ mkDerivation, base }:
      mkDerivation {
        pname = "singletons";
-       version = "3.0.2";
-       sha256 = "10jy9phwx3gnl5dx6by7chsln1x3lizz2igi4m1qlhznkq9fws7m";
-       revision = "2";
-       editedCabalFile = "040hwa1r4vx64v62ffw2nfn29h91ns082zqc47jsp5ciwl69821p";
+       version = "3.0.3";
+       sha256 = "0zhw1b59nq1aai3k0g6l469kjjsw5g7bhinm1wgk7n2gch808q4r";
        libraryHaskellDepends = [ base ];
        testHaskellDepends = [ base ];
        description = "Basic singleton types and definitions";
@@ -276039,15 +277999,15 @@ self: {
        broken = true;
      }) {};
 
-  "singletons-base_3_3" = callPackage
+  "singletons-base_3_4" = callPackage
     ({ mkDerivation, base, bytestring, Cabal, deepseq, directory
      , filepath, pretty, process, singletons, singletons-th, tasty
      , tasty-golden, template-haskell, text, th-desugar, turtle
      }:
      mkDerivation {
        pname = "singletons-base";
-       version = "3.3";
-       sha256 = "1h879yy50g6pldnshjh3syvw8qvqzkm8vxsrj237fk76n56x0iq8";
+       version = "3.4";
+       sha256 = "1cypbpfg0xlh9dy3rwa9yhs2k007x34z7v5h3qd3ncwrvy0f450d";
        setupHaskellDepends = [ base Cabal directory filepath ];
        libraryHaskellDepends = [
          base pretty singletons singletons-th template-haskell text
@@ -276098,14 +278058,14 @@ self: {
        license = lib.licenses.bsd3;
      }) {};
 
-  "singletons-th_3_3" = callPackage
+  "singletons-th_3_4" = callPackage
     ({ mkDerivation, base, containers, ghc-boot-th, mtl, singletons
      , syb, template-haskell, th-desugar, th-orphans, transformers
      }:
      mkDerivation {
        pname = "singletons-th";
-       version = "3.3";
-       sha256 = "131v6gfx43mwxaqxx4m1lkyb1cxybwpd02m91r83i1phkxmla2qv";
+       version = "3.4";
+       sha256 = "1fkfaj04g03sw6zsz553a3zyjrhdv7cw1m2dsqb1plk10fj7zi51";
        libraryHaskellDepends = [
          base containers ghc-boot-th mtl singletons syb template-haskell
          th-desugar th-orphans transformers
@@ -276846,8 +278806,8 @@ self: {
      }:
      mkDerivation {
        pname = "skylighting";
-       version = "0.14.1.1";
-       sha256 = "0x1yq3891ssq7mfhcb4909a1553a2pj2rf3wr4y49q76p4r8jx3k";
+       version = "0.14.1.2";
+       sha256 = "12zdnbn22dwchd6zslxf0hyvf2jn0wnyr51q5mr00436pchp93qp";
        configureFlags = [ "-fexecutable" ];
        isLibrary = true;
        isExecutable = true;
@@ -276873,8 +278833,8 @@ self: {
      }:
      mkDerivation {
        pname = "skylighting-core";
-       version = "0.14.1.1";
-       sha256 = "112wmgyzs3x939rk1i7fs604ijs25zmbk85r98xnqf7d3hmdjxjq";
+       version = "0.14.1.2";
+       sha256 = "13y1jliy330byvpq8gvqm6xk2nqilxyc6kcsvwbm25gvv8xzqcp5";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -277937,31 +279897,27 @@ self: {
 
   "smcdel" = callPackage
     ({ mkDerivation, alex, ansi-terminal, array, base, bytestring
-     , cassava, containers, criterion, cudd, deepseq, directory
-     , file-embed, filepath, graphviz, happy, HasCacBDD, hspec
-     , js-jquery, process, QuickCheck, sandwich, sandwich-webdriver
-     , scientific, scotty, split, tagged, template-haskell, temporary
-     , text, time, vector, warp, webdriver
+     , cassava, containers, criterion, decision-diagrams, directory
+     , filepath, graphviz, happy, HasCacBDD, hspec, process, QuickCheck
+     , scientific, split, tagged, temporary, text, time, vector
      }:
      mkDerivation {
        pname = "smcdel";
-       version = "1.2.0";
-       sha256 = "0ssijqlfnd1nx6w8j1sl4bhwhw78dsbipxlbdknwx340np7rmx11";
+       version = "1.3.0";
+       sha256 = "09hc0i5v685fsa9slrqmfpqw353x0814r9x5bgw9qjvyrmjqdz2l";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
-         array base containers cudd directory graphviz HasCacBDD process
-         QuickCheck tagged temporary text time
+         array base containers decision-diagrams directory filepath graphviz
+         HasCacBDD process QuickCheck tagged temporary text time
        ];
        libraryToolDepends = [ alex happy ];
        executableHaskellDepends = [
-         ansi-terminal base deepseq directory file-embed filepath HasCacBDD
-         js-jquery process scotty template-haskell text warp
+         ansi-terminal base directory filepath process
        ];
        executableToolDepends = [ alex happy ];
        testHaskellDepends = [
-         base containers HasCacBDD hspec process QuickCheck sandwich
-         sandwich-webdriver text webdriver
+         base containers HasCacBDD hspec QuickCheck
        ];
        testToolDepends = [ alex happy ];
        benchmarkHaskellDepends = [
@@ -277972,6 +279928,7 @@ self: {
        description = "Symbolic Model Checking for Dynamic Epistemic Logic";
        license = lib.licenses.gpl2Only;
        hydraPlatforms = lib.platforms.none;
+       mainProgram = "smcdel";
      }) {};
 
   "sme" = callPackage
@@ -278564,6 +280521,8 @@ self: {
        pname = "snap";
        version = "1.1.3.3";
        sha256 = "1mqckzm9gasa04ls691zgw4c6m53mgcj86yd2p5qvy07mpn9rdvx";
+       revision = "1";
+       editedCabalFile = "06f9xcj6s7ci01v5gkrd1qhrhnnpwijiac83m6nhjpsisx1d11g3";
        libraryHaskellDepends = [
          aeson attoparsec attoparsec-aeson base bytestring cereal
          clientsession configurator containers directory directory-tree
@@ -278690,8 +280649,8 @@ self: {
        pname = "snap-core";
        version = "1.0.5.1";
        sha256 = "00h5xijkjvnhcgxpw3vmkpf5nwfpknqflvxgig6gvsy4wahc2157";
-       revision = "4";
-       editedCabalFile = "11rgmi28yhdpmzc72zxql70q6zrxnihkrv5lvabggyc9008dhyj8";
+       revision = "5";
+       editedCabalFile = "02szs3kljcfzg9kvnv6m8mykrm5big6ki4a7hzian5bb2jpjw4f1";
        libraryHaskellDepends = [
          attoparsec base bytestring bytestring-builder case-insensitive
          containers directory filepath hashable HUnit io-streams lifted-base
@@ -278897,8 +280856,8 @@ self: {
        pname = "snap-server";
        version = "1.1.2.1";
        sha256 = "0znadz0av6k31s8d175904d2kajxayl38sva3dqh5ckdfkymfx54";
-       revision = "3";
-       editedCabalFile = "0adjcah7hx47cg066jbjjgn7wz8pvkm0fc87fyz8c7lc0sdmp84f";
+       revision = "4";
+       editedCabalFile = "02h1gdhd4wi57145s3jjnrghszzry624q55kjry0d54mmxrzgsh1";
        configureFlags = [ "-fopenssl" ];
        isLibrary = true;
        isExecutable = true;
@@ -280762,6 +282721,8 @@ self: {
        pname = "some";
        version = "1.0.6";
        sha256 = "1fdzhi2rmcigb1c727dyzfak8rgb77bzfr33k1cp987lbnnhd9pp";
+       revision = "1";
+       editedCabalFile = "0awhdjzvgrnq37m0c9hy5sya1capi3asns9xf3bjyfgv4zf2cb7i";
        libraryHaskellDepends = [ base base-orphans deepseq ];
        testHaskellDepends = [ base ];
        description = "Existential type: Some";
@@ -280809,8 +282770,8 @@ self: {
        pname = "sop-core";
        version = "0.5.0.2";
        sha256 = "0rbj56icbaqlcxx5xwvbx4n4vmyv6cfcv7s45n1fv3drahigvgw7";
-       revision = "3";
-       editedCabalFile = "0rlrf4whfkqf200916d02r0s4zqlimb3d4z6gd3f5czayncp31cx";
+       revision = "4";
+       editedCabalFile = "1z2rp9k9rq9ya94rn313ay2p1i5zqbz1hhn9xswvlgvzsf77kk7d";
        libraryHaskellDepends = [ base deepseq ];
        description = "True Sums of Products";
        license = lib.licenses.bsd3;
@@ -282872,6 +284833,40 @@ self: {
        broken = true;
      }) {};
 
+  "sq" = callPackage
+    ({ mkDerivation, aeson, async, async-pool, attoparsec, base, binary
+     , bytestring, clock, containers, contravariant, criterion, deepseq
+     , df1, di, di-core, di-df1, direct-sqlite, directory, exceptions
+     , filepath, foldl, hedgehog, profunctors, ref-tf, resource-pool
+     , resourcet, resourcet-extra, safe-exceptions, stm, streaming
+     , tasty, tasty-hedgehog, tasty-hunit, template-haskell, text, time
+     , transformers
+     }:
+     mkDerivation {
+       pname = "sq";
+       version = "0.0.2";
+       sha256 = "0ar5ga9n390r8jc5njm6mdrag73xx25xd02ld76zybjd2y78v8w4";
+       libraryHaskellDepends = [
+         aeson async attoparsec base binary bytestring clock containers
+         contravariant deepseq di-core di-df1 direct-sqlite directory
+         exceptions filepath foldl profunctors ref-tf resource-pool
+         resourcet resourcet-extra safe-exceptions stm streaming
+         template-haskell text time transformers
+       ];
+       testHaskellDepends = [
+         aeson async base binary bytestring df1 di di-core hedgehog ref-tf
+         resourcet resourcet-extra safe-exceptions tasty tasty-hedgehog
+         tasty-hunit text time
+       ];
+       benchmarkHaskellDepends = [
+         async async-pool base containers criterion df1 di di-core resourcet
+         resourcet-extra safe-exceptions stm
+       ];
+       description = "High-level SQLite client";
+       license = lib.licenses.asl20;
+       hydraPlatforms = lib.platforms.none;
+     }) {};
+
   "sqel" = callPackage
     ({ mkDerivation, aeson, base, chronos, composition, containers
      , contravariant, exon, extra, first-class-families, generic-lens
@@ -283260,7 +285255,6 @@ self: {
        ];
        description = "Squeal PostgreSQL Library";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
        mainProgram = "example";
      }) {};
 
@@ -283278,7 +285272,6 @@ self: {
        ];
        description = "LTree extension for Squeal";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
      }) {};
 
   "squeal-postgresql-uuid-ossp" = callPackage
@@ -283290,7 +285283,6 @@ self: {
        libraryHaskellDepends = [ base squeal-postgresql ];
        description = "UUID OSSP extension for Squeal";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
      }) {};
 
   "squeather" = callPackage
@@ -283896,10 +285888,8 @@ self: {
      }:
      mkDerivation {
        pname = "stack";
-       version = "2.15.5";
-       sha256 = "0q4jyaj8gn74i5sm5dqnwz9ppbih33jd2axbz3yijvv8m1dbn1cd";
-       revision = "1";
-       editedCabalFile = "01bfnvsn079hl6cmc6ccmwc3ash45g556jkr1i0mkkc8ij42zny1";
+       version = "2.15.7";
+       sha256 = "0wl6s7z2qx41aaiajhd1sg2mn1g3l860yl18i2mqpwagghns5g5g";
        configureFlags = [
          "-fdisable-git-info" "-fhide-dependency-versions"
          "-fsupported-build"
@@ -283980,15 +285970,15 @@ self: {
        mainProgram = "stack-all";
      }) {};
 
-  "stack-all_0_5_1" = callPackage
+  "stack-all_0_5_2" = callPackage
     ({ mkDerivation, aeson, base, cached-json-file, config-ini
      , directory, extra, filepath, http-query, process, simple-cmd
      , simple-cmd-args, text
      }:
      mkDerivation {
        pname = "stack-all";
-       version = "0.5.1";
-       sha256 = "0s1kxilmzrdwf44gx7wrpxd443kyfwx435ps68hzv0qyz5q8k5nw";
+       version = "0.5.2";
+       sha256 = "0ih25r2avwl6f2nqxa7sqaf070mnr27baw9wxfyr2pvv9i9nv6an";
        isLibrary = false;
        isExecutable = true;
        executableHaskellDepends = [
@@ -284782,8 +286772,8 @@ self: {
      }:
      mkDerivation {
        pname = "stackctl";
-       version = "1.6.1.1";
-       sha256 = "01q5zmgb6z85v9agbi1q3gwqygbljmf0rw09r2hw099340vyfklb";
+       version = "1.7.0.0";
+       sha256 = "1v0c2kzkwkd85hq4ffr4pm438lxa5ylg2amcxhz6y6fc8853ihcv";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -286197,8 +288187,8 @@ self: {
      }:
      mkDerivation {
        pname = "stm-containers";
-       version = "1.2.0.3";
-       sha256 = "1cchysjykxiq3s85xaafxkz8kg1czygjs17jlk6ic3ihv2ybr34j";
+       version = "1.2.1";
+       sha256 = "1vd8rkxm5xn30nh6fkvlgqac4qg3if5kp61ly33rs6mjv9wqdc4g";
        libraryHaskellDepends = [
          base deferred-folds focus hashable list-t stm-hamt transformers
        ];
@@ -286262,8 +288252,8 @@ self: {
      }:
      mkDerivation {
        pname = "stm-hamt";
-       version = "1.2.0.14";
-       sha256 = "0rhqndyy3xq3xn408r17zshvjkibjc2562yzxx5qmjq8qsnlnjxd";
+       version = "1.2.1";
+       sha256 = "1k4s3l0098bkx03wxnzqaypdnydafwsk1h6hrf4hbcp3pkrccf4k";
        libraryHaskellDepends = [
          base deferred-folds focus hashable list-t primitive
          primitive-extras transformers
@@ -286365,6 +288355,8 @@ self: {
        ];
        description = "An implementation of a real-time concurrent queue";
        license = lib.licenses.mit;
+       hydraPlatforms = lib.platforms.none;
+       broken = true;
      }) {};
 
   "stm-queue-extras" = callPackage
@@ -288320,8 +290312,8 @@ self: {
     ({ mkDerivation, base }:
      mkDerivation {
        pname = "strict-wrapper";
-       version = "0.0.0.0";
-       sha256 = "0vbix0pg17qgnjvyqjahrig7lsf1rwrc4jah5nw84gai768j32qc";
+       version = "0.0.1.0";
+       sha256 = "06g79nq6mdbvp8cskdmnxbza4fj1bh0xk4hdvijnx3cljv2rnq7g";
        libraryHaskellDepends = [ base ];
        testHaskellDepends = [ base ];
        description = "Lightweight strict types";
@@ -288503,6 +290495,8 @@ self: {
        pname = "string-interpolate";
        version = "0.3.3.0";
        sha256 = "1m4m9ivi29q90fvrinigqwz4qmnxnbi895l1gmsrp7j0bmwjxhrb";
+       revision = "1";
+       editedCabalFile = "1xys5lmy4xj9z2yj3lnhcv43wi4yqgchkbkd0adr8m6snfpabbcl";
        libraryHaskellDepends = [
          base bytestring haskell-src-exts haskell-src-meta split
          template-haskell text text-conversions utf8-string
@@ -289134,20 +291128,20 @@ self: {
      }) {};
 
   "strongweak" = callPackage
-    ({ mkDerivation, acc, base, either, generic-random, hspec
-     , hspec-discover, prettyprinter, QuickCheck, quickcheck-instances
-     , refined1, text, vector, vector-sized
+    ({ mkDerivation, base, either, generic-random, hspec
+     , hspec-discover, QuickCheck, quickcheck-instances, rerefined, text
+     , text-builder-linear, vector, vector-sized
      }:
      mkDerivation {
        pname = "strongweak";
-       version = "0.6.1";
-       sha256 = "0pyfxq7p5viq7agka8pw67br08czg3xs4d2wh5zkf7zahamy4kic";
+       version = "0.7.0";
+       sha256 = "0gy6y2dlk2zy7dizyccjb77wf8dzyjx5qi1rxg7xajagpm5nxpzw";
        libraryHaskellDepends = [
-         acc base either prettyprinter refined1 text vector vector-sized
+         base either rerefined text text-builder-linear vector vector-sized
        ];
        testHaskellDepends = [
-         acc base either generic-random hspec prettyprinter QuickCheck
-         quickcheck-instances refined1 text vector vector-sized
+         base either generic-random hspec QuickCheck quickcheck-instances
+         rerefined text text-builder-linear vector vector-sized
        ];
        testToolDepends = [ hspec-discover ];
        description = "Convert between strong and weak representations of types";
@@ -289199,8 +291193,8 @@ self: {
        pname = "structs";
        version = "0.1.9";
        sha256 = "033vx729k9jn4w4hs3kp8nlnf0ylsqgg3q4cmb7zjfpgk4bk511w";
-       revision = "1";
-       editedCabalFile = "1kqpzh7grxz0any100sk42v54idmvh27zh8k9q0yq684frmwf4mh";
+       revision = "2";
+       editedCabalFile = "1lkx7hflya4v5pkwrf3n01rx6z9rficy2s8k2b3xx8fsch932a4s";
        libraryHaskellDepends = [
          base deepseq ghc-prim primitive template-haskell th-abstraction
        ];
@@ -290817,8 +292811,10 @@ self: {
      }:
      mkDerivation {
        pname = "sv2v";
-       version = "0.0.11";
-       sha256 = "1417kf2z17da9q7zajdplxvqlfcgd4g9g17pg9bi0hl214wd2fcr";
+       version = "0.0.12";
+       sha256 = "1sqcwvpm9c48fpghlb8bi1k3f4hm2mljcyszk5xl6b6wnh3qpql6";
+       revision = "1";
+       editedCabalFile = "1b9zamqkw21vqwxxv7cqnml4waq74gir6gcxk2g0ljn76ayaqfpr";
        isLibrary = false;
        isExecutable = true;
        executableHaskellDepends = [
@@ -291012,9 +293008,7 @@ self: {
        ];
        description = "A tool to prune unused symbols from icon SVG files";
        license = lib.licenses.gpl3Plus;
-       hydraPlatforms = lib.platforms.none;
        mainProgram = "svgsym";
-       broken = true;
      }) {};
 
   "svgutils" = callPackage
@@ -291365,8 +293359,8 @@ self: {
      }:
      mkDerivation {
        pname = "swish";
-       version = "0.10.7.0";
-       sha256 = "0b783gir0zm248skrhjbnxn50wgyp9114lzn1ah5l047yr0cac63";
+       version = "0.10.8.0";
+       sha256 = "14kjclrdfymrb5ad4s0g4k8b7zrazjppgc5rgm5wa3b4wc13x18z";
        isLibrary = true;
        isExecutable = true;
        enableSeparateDataOutput = true;
@@ -292415,6 +294409,18 @@ self: {
        license = lib.licenses.bsd3;
      }) {};
 
+  "symbol-parser" = callPackage
+    ({ mkDerivation, base, defun-core, type-spec }:
+     mkDerivation {
+       pname = "symbol-parser";
+       version = "0.3.0";
+       sha256 = "08p1zr1v6rfba0k36zppl2hgz08n9nibxbc4vwj8b59f47m39k9q";
+       libraryHaskellDepends = [ base defun-core ];
+       testHaskellDepends = [ base defun-core type-spec ];
+       description = "Type level string parser combinators";
+       license = lib.licenses.mit;
+     }) {};
+
   "symbolic-link" = callPackage
     ({ mkDerivation, base, directory, tasty, tasty-hunit, unix }:
      mkDerivation {
@@ -292546,6 +294552,18 @@ self: {
        mainProgram = "symon-ansi";
      }) {};
 
+  "symparsec" = callPackage
+    ({ mkDerivation, base, defun-core, type-spec }:
+     mkDerivation {
+       pname = "symparsec";
+       version = "0.4.0";
+       sha256 = "0ap3j2163vqpr27rij8ld3m6jyd7jnbndx8s7ix6xzjyhdijmkjw";
+       libraryHaskellDepends = [ base defun-core ];
+       testHaskellDepends = [ base defun-core type-spec ];
+       description = "Type level string parser combinators";
+       license = lib.licenses.mit;
+     }) {};
+
   "sync" = callPackage
     ({ mkDerivation, base, stm }:
      mkDerivation {
@@ -292918,41 +294936,6 @@ self: {
      }:
      mkDerivation {
        pname = "synthesizer-core";
-       version = "0.8.3";
-       sha256 = "0a12qmr7fdlz5mbrki9nd1fl07670hll3wrdpp1apvf6zd36h7mn";
-       revision = "4";
-       editedCabalFile = "0xacplyxilmrly1nxdiz42divjiky7lz5aq5lizn7ax2n0jy1sdg";
-       libraryHaskellDepends = [
-         array base binary bytestring containers deepseq event-list
-         explicit-exception filepath non-empty non-negative numeric-prelude
-         numeric-quest process QuickCheck random sample-frame-np semigroups
-         sox storable-record storable-tuple storablevector transformers
-         utility-ht
-       ];
-       testHaskellDepends = [
-         base containers event-list non-empty non-negative numeric-prelude
-         QuickCheck random storable-tuple storablevector transformers
-         utility-ht
-       ];
-       benchmarkHaskellDepends = [
-         array base binary bytestring directory numeric-prelude old-time
-         storable-tuple storablevector timeit utility-ht
-       ];
-       description = "Audio signal processing coded in Haskell: Low level part";
-       license = "GPL";
-       maintainers = [ lib.maintainers.thielema ];
-     }) {};
-
-  "synthesizer-core_0_8_4" = callPackage
-    ({ mkDerivation, array, base, binary, bytestring, containers
-     , deepseq, directory, event-list, explicit-exception, filepath
-     , non-empty, non-negative, numeric-prelude, numeric-quest, old-time
-     , process, QuickCheck, random, sample-frame-np, semigroups, sox
-     , storable-record, storable-tuple, storablevector, timeit
-     , transformers, utility-ht
-     }:
-     mkDerivation {
-       pname = "synthesizer-core";
        version = "0.8.4";
        sha256 = "11m5zvnwzrsd5ylyc6xd4k56ypmmwzyhixvzc55hgjfpsx9snks9";
        revision = "1";
@@ -292975,7 +294958,6 @@ self: {
        ];
        description = "Audio signal processing coded in Haskell: Low level part";
        license = "GPL";
-       hydraPlatforms = lib.platforms.none;
        maintainers = [ lib.maintainers.thielema ];
      }) {};
 
@@ -293878,7 +295860,7 @@ self: {
 
   "taffybar" = callPackage
     ({ mkDerivation, aeson, ansi-terminal, base, broadcast-chan
-     , bytestring, conduit, ConfigFile, containers, data-default, dbus
+     , bytestring, conduit, containers, data-default, dbus
      , dbus-hslogger, directory, dyre, either, enclosed-exceptions
      , filepath, gi-cairo, gi-cairo-connector, gi-cairo-render, gi-gdk
      , gi-gdkpixbuf, gi-gdkx11, gi-glib, gi-gtk, gi-gtk-hs, gi-pango
@@ -293893,17 +295875,17 @@ self: {
      }:
      mkDerivation {
        pname = "taffybar";
-       version = "4.0.1";
-       sha256 = "0lbviimazjc65j05hmncv2idd096yj7mgrk4r3q9vws2b8d9sww8";
+       version = "4.0.2";
+       sha256 = "1w1lsz8bk4xq4dzsfi2yf3x036a8y6b14jpil74c1xbicjc74gmg";
        isLibrary = true;
        isExecutable = true;
        enableSeparateDataOutput = true;
        libraryHaskellDepends = [
          aeson ansi-terminal base broadcast-chan bytestring conduit
-         ConfigFile containers data-default dbus dbus-hslogger directory
-         dyre either enclosed-exceptions filepath gi-cairo
-         gi-cairo-connector gi-cairo-render gi-gdk gi-gdkpixbuf gi-gdkx11
-         gi-glib gi-gtk gi-gtk-hs gi-pango gtk-sni-tray gtk-strut haskell-gi
+         containers data-default dbus dbus-hslogger directory dyre either
+         enclosed-exceptions filepath gi-cairo gi-cairo-connector
+         gi-cairo-render gi-gdk gi-gdkpixbuf gi-gdkx11 gi-glib gi-gtk
+         gi-gtk-hs gi-pango gtk-sni-tray gtk-strut haskell-gi
          haskell-gi-base hslogger HStringTemplate http-client
          http-client-tls http-conduit http-types multimap old-locale parsec
          process rate-limit regex-compat safe scotty split
@@ -295243,6 +297225,64 @@ self: {
        broken = true;
      }) {};
 
+  "tasklite" = callPackage
+    ({ mkDerivation, base, directory, filepath, hspec
+     , optparse-applicative, protolude, tasklite-core, text, yaml
+     }:
+     mkDerivation {
+       pname = "tasklite";
+       version = "0.3.0.0";
+       sha256 = "0zmpf1b6k6xlypvv04gwwqkmghsxpqii2zci361whfsy3qyyy0hs";
+       isLibrary = false;
+       isExecutable = true;
+       enableSeparateDataOutput = true;
+       executableHaskellDepends = [
+         base directory filepath protolude tasklite-core text yaml
+       ];
+       testHaskellDepends = [
+         base hspec optparse-applicative protolude tasklite-core
+       ];
+       description = "CLI task / todo list manager with SQLite backend";
+       license = lib.licenses.agpl3Plus;
+       mainProgram = "tasklite";
+     }) {};
+
+  "tasklite-core" = callPackage
+    ({ mkDerivation, aeson, airgql, ansi-terminal, base, bytestring
+     , cassava, colour, criterion, directory, editor-open, exceptions
+     , file-embed, filepath, fuzzily, generic-random, githash, hourglass
+     , hsemail, hspec, iso8601-duration, neat-interpolation
+     , optparse-applicative, parsec, portable-lines, prettyprinter
+     , prettyprinter-ansi-terminal, process, protolude, QuickCheck
+     , quickcheck-instances, random, servant, servant-blaze
+     , servant-multipart, servant-server, simple-sql-parser
+     , sqlite-simple, syb, text, time, ulid, unix, vector, wai
+     , wai-app-static, wai-cors, wai-extra, warp, yaml
+     }:
+     mkDerivation {
+       pname = "tasklite-core";
+       version = "0.3.0.0";
+       sha256 = "1did4b3gh4pfrwawi2g2ka7d6mg7xcg7vgbdwyfdvwzva5ynrx99";
+       enableSeparateDataOutput = true;
+       libraryHaskellDepends = [
+         aeson airgql ansi-terminal base bytestring cassava colour directory
+         editor-open exceptions file-embed filepath fuzzily generic-random
+         githash hourglass hsemail iso8601-duration optparse-applicative
+         parsec portable-lines prettyprinter prettyprinter-ansi-terminal
+         process protolude QuickCheck quickcheck-instances random servant
+         servant-blaze servant-multipart servant-server simple-sql-parser
+         sqlite-simple syb text time ulid unix vector wai wai-app-static
+         wai-cors wai-extra warp yaml
+       ];
+       testHaskellDepends = [
+         aeson base hourglass hspec neat-interpolation protolude
+         sqlite-simple text yaml
+       ];
+       benchmarkHaskellDepends = [ base criterion protolude ];
+       description = "CLI task / todo list manager with SQLite backend";
+       license = lib.licenses.agpl3Plus;
+     }) {};
+
   "taskpool" = callPackage
     ({ mkDerivation, async, base, containers, fgl, hspec, stm
      , transformers
@@ -295718,8 +297758,8 @@ self: {
        pname = "tasty-hspec";
        version = "1.2.0.4";
        sha256 = "1hk1nkjvhp89xxgzj6dhbgw0fknnghpng6afq4i39hjkwv5p78ni";
-       revision = "2";
-       editedCabalFile = "17q4xwj2glc8d482r33kq472yhkx7nai987x80nw3ilmp942bxzd";
+       revision = "3";
+       editedCabalFile = "1ky8lis1bxig6zc213azb4nkg9hjzhsrk7p4hw28dang0x91x3wy";
        libraryHaskellDepends = [
          base hspec hspec-api hspec-core QuickCheck tasty tasty-quickcheck
          tasty-smallcheck
@@ -295967,6 +298007,8 @@ self: {
        pname = "tasty-lua";
        version = "1.1.1";
        sha256 = "186322a9gwndnpis4r7nzlca4iymrz712bbbxpm0pxsw63xary06";
+       revision = "1";
+       editedCabalFile = "180jy8dhr7mdfgj5xgnwddm5lh8ahbvs78y07g9zgpsxkdnm5ghn";
        libraryHaskellDepends = [
          base bytestring file-embed hslua-core hslua-marshalling
          lua-arbitrary QuickCheck tasty text
@@ -296101,8 +298143,8 @@ self: {
        pname = "tasty-quickcheck";
        version = "0.10.3";
        sha256 = "02lw6gk83b6wc9dwd3shin58zqy9isgx4zh7z0whs0wkzwzkpyyg";
-       revision = "1";
-       editedCabalFile = "0rk57yzsrw8lbzjwcsd3pnfwic12cvnpv245g2dsw50dvqd2922k";
+       revision = "2";
+       editedCabalFile = "0j2g1cngc5xk190jsm2k7kh25y1afmbr37abi09wvlyq8ja4n59r";
        libraryHaskellDepends = [
          base optparse-applicative QuickCheck random tagged tasty
        ];
@@ -296385,12 +298427,12 @@ self: {
      }) {};
 
   "tax-ato" = callPackage
-    ({ mkDerivation, base, lens, tax, time }:
+    ({ mkDerivation, base, lens, pretty, tax, time }:
      mkDerivation {
        pname = "tax-ato";
-       version = "2023.2";
-       sha256 = "0gycqjcswlh5gcrxjrkcvib7af8w2n5biy9yrwzmd6hvd4dj97dz";
-       libraryHaskellDepends = [ base lens tax time ];
+       version = "2024.1";
+       sha256 = "0f8may1hhjvigahz2n8dy3wd2c8161s6a9x8lam3vri6zc6zjl4v";
+       libraryHaskellDepends = [ base lens pretty tax time ];
        description = "Tax types and computations for Australia";
        license = lib.licenses.agpl3Plus;
      }) {};
@@ -299217,15 +301259,15 @@ self: {
        license = lib.licenses.gpl2Only;
      }) {};
 
-  "texmath_0_12_8_8" = callPackage
+  "texmath_0_12_8_9" = callPackage
     ({ mkDerivation, base, bytestring, containers, directory, filepath
      , mtl, pandoc-types, parsec, pretty-show, split, syb, tagged, tasty
      , tasty-golden, text, typst-symbols, xml
      }:
      mkDerivation {
        pname = "texmath";
-       version = "0.12.8.8";
-       sha256 = "0wh98gfsh70v7lzrig3v9fhjhgd25yiqsh45b0qnpz6mbwd7pibc";
+       version = "0.12.8.9";
+       sha256 = "0qm68ib9immfykf5p7jkk3l8h4ifss8ys7k8ppzaaygagc4s8zpw";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -300093,10 +302135,10 @@ self: {
      }:
      mkDerivation {
        pname = "text-short";
-       version = "0.1.5";
-       sha256 = "1nid00c1rg5c1z7l9mwk3f2izc2sps2mip2hl30q985dwb6wcpm3";
-       revision = "3";
-       editedCabalFile = "1471cn6gd4kgqk4cr0nqcz8qq1qwbd8qyxg35klrx9ic334wjwww";
+       version = "0.1.6";
+       sha256 = "1avfamw6sig6r5zpm2hbas373qbrdszi4q33gds9ihvxil9ylww1";
+       revision = "1";
+       editedCabalFile = "0ir38dm5n8a398lbn0alk9g03cncnxjlqx9jg0qp0dhckgrrqwm6";
        libraryHaskellDepends = [
          base binary bytestring deepseq ghc-prim hashable template-haskell
          text
@@ -300119,10 +302161,10 @@ self: {
      }:
      mkDerivation {
        pname = "text-show";
-       version = "3.10.4";
-       sha256 = "0kjpl9wbvn5zcpwjyrvdnkcp260rizff598cmqh4py8225fl5bmz";
-       revision = "3";
-       editedCabalFile = "0zsds6226kymk9a6jq9hc45knp3rjwc3rmiar0kccjzd6khf7s9c";
+       version = "3.10.5";
+       sha256 = "0sn8mgj7f6jric4zyfigkf8abwwx3j9k0l9jy1lhrc5ih7w6xffm";
+       revision = "2";
+       editedCabalFile = "0an6k80s03ffz3y4xy717j0arbhz2sff75qa7927g9m28rrjglal";
        libraryHaskellDepends = [
          array base base-compat-batteries bifunctors bytestring
          bytestring-builder containers generic-deriving ghc-boot-th ghc-prim
@@ -300153,8 +302195,10 @@ self: {
      }:
      mkDerivation {
        pname = "text-show-instances";
-       version = "3.9.7";
-       sha256 = "1rxsg0i304wanzgd792nj7pgkmw3iq0n7pwsg27h55vi7kp2rmiw";
+       version = "3.9.8";
+       sha256 = "13h2nfbmqzll9glifi7n9dkmaxks72w8ciwzwk106iygzpbrnw3c";
+       revision = "1";
+       editedCabalFile = "17nzy1wr318m90bdmj37rrzwsfhri28azgaqrvpl5igllc4d0480";
        libraryHaskellDepends = [
          aeson base base-compat bifunctors binary containers directory
          ghc-boot-th haskeline hpc nonempty-vector old-locale old-time
@@ -300621,6 +302665,8 @@ self: {
        pname = "th-compat";
        version = "0.1.5";
        sha256 = "07ia72hl6c1rqx1gl3zpvig7d8sw2ssbgf4wq1ipgbdgqypmzxc1";
+       revision = "2";
+       editedCabalFile = "0bhx6ahf89v7pm3s05b98rm2gbhi4yg8knnn5wchdkfg7jx5k6hj";
        libraryHaskellDepends = [ base template-haskell ];
        testHaskellDepends = [
          base base-compat hspec mtl template-haskell
@@ -300721,17 +302767,15 @@ self: {
        license = lib.licenses.bsd3;
      }) {};
 
-  "th-desugar_1_16" = callPackage
+  "th-desugar_1_17" = callPackage
     ({ mkDerivation, base, containers, ghc-prim, hspec, HUnit, mtl
      , ordered-containers, syb, template-haskell, th-abstraction
      , th-orphans, transformers-compat
      }:
      mkDerivation {
        pname = "th-desugar";
-       version = "1.16";
-       sha256 = "0442hqc2b0a1rqcwdlng63bfqa80b2sws414lr08q9v1sgh8gjsf";
-       revision = "1";
-       editedCabalFile = "18qjikbyjzbhickq11hrn5ill89jdfdzbdx3q2s3630k4g8g2qzi";
+       version = "1.17";
+       sha256 = "0a00l9r7qyhl30bizrydcsjcraia2vq3r4jc7papab4mdv59z1wz";
        libraryHaskellDepends = [
          base containers ghc-prim mtl ordered-containers syb
          template-haskell th-abstraction th-orphans transformers-compat
@@ -300780,8 +302824,8 @@ self: {
        pname = "th-expand-syns";
        version = "0.4.11.0";
        sha256 = "1l7pkc16vnjgiam31745av14j7ngnr5mqmgp77xwd3h7fg75kkca";
-       revision = "3";
-       editedCabalFile = "1wgylchq9q30yf1f19rr6pvh7mkpwzdy4ij2r7174fjb1wkgnnx7";
+       revision = "4";
+       editedCabalFile = "0vjznxgzzvlr39hq0pqvachaihsbp0m2fwrii89rjzhx0mlfy4l7";
        libraryHaskellDepends = [
          base containers syb template-haskell th-abstraction
        ];
@@ -301022,8 +303066,8 @@ self: {
        pname = "th-orphans";
        version = "0.13.14";
        sha256 = "0z07qcbbsj2b3j9p1qr4jvlpa7qgjfjvymkjd6vbizka1wd2mnwx";
-       revision = "2";
-       editedCabalFile = "1kjb7ik4js6bpsdb32sna8xcxamia02fhx1wcbg831mnf2qfpp6w";
+       revision = "3";
+       editedCabalFile = "19gh8f082ia27ch7xjj41vwlp7234sv545hhb3kcwkmw9brc67aj";
        libraryHaskellDepends = [
          base mtl template-haskell th-compat th-lift th-reify-many
        ];
@@ -301460,10 +303504,8 @@ self: {
     ({ mkDerivation, base, deepseq, ghc-prim }:
      mkDerivation {
        pname = "these-skinny";
-       version = "0.7.5";
-       sha256 = "1nbcfkjs7cn3gnyypxdf1gxm52gzqc3lqygdl8qrfgdk7cck6sbj";
-       revision = "2";
-       editedCabalFile = "158rp41bdzzz2hc17vn5c1j6llcmbirajv0hsq2d76j38nyh7d94";
+       version = "0.7.6";
+       sha256 = "07plgrl3kzl482ih1hyq2qj441nlmnd02yzrqfbylnwn47r58lyp";
        libraryHaskellDepends = [ base deepseq ghc-prim ];
        description = "A fork of the 'these' package without the dependency bloat";
        license = lib.licenses.bsd3;
@@ -302504,6 +304546,8 @@ self: {
        pname = "time";
        version = "1.14";
        sha256 = "0gkzffnvi33ksw4zln0d31dpmqiyl8gicrx04g8j13kjr5ygx86z";
+       revision = "1";
+       editedCabalFile = "13brg65cvava8w5wlfp3jwn7mpkprad1chws2v14jw1lgzh5b14i";
        libraryHaskellDepends = [ base deepseq template-haskell ];
        testHaskellDepends = [
          base deepseq QuickCheck random tasty tasty-hunit tasty-quickcheck
@@ -302552,12 +304596,32 @@ self: {
        license = lib.licenses.bsd3;
      }) {};
 
+  "time-compat_1_9_7" = callPackage
+    ({ mkDerivation, base, base-orphans, deepseq, hashable, HUnit
+     , QuickCheck, tagged, tasty, tasty-hunit, tasty-quickcheck, time
+     }:
+     mkDerivation {
+       pname = "time-compat";
+       version = "1.9.7";
+       sha256 = "1k0xcd73wx4l6wsj3c2ksdxch9c4kdbg0v8qmxik4v033nibx3y9";
+       libraryHaskellDepends = [
+         base base-orphans deepseq hashable time
+       ];
+       testHaskellDepends = [
+         base deepseq hashable HUnit QuickCheck tagged tasty tasty-hunit
+         tasty-quickcheck time
+       ];
+       description = "Compatibility package for time";
+       license = lib.licenses.bsd3;
+       hydraPlatforms = lib.platforms.none;
+     }) {};
+
   "time-domain" = callPackage
     ({ mkDerivation, base, time }:
      mkDerivation {
        pname = "time-domain";
-       version = "0.1.0.3";
-       sha256 = "1wwhqgg0fv8c55fzpwvk57xhgm0ir54zkchrzijjbia5591pzb81";
+       version = "0.1.0.4";
+       sha256 = "0ldknnh15xmjk08v8f24is0j7fib810hf2bssjfbz8h7r0h2prir";
        libraryHaskellDepends = [ base time ];
        description = "A library for time domains and durations";
        license = lib.licenses.mit;
@@ -302704,6 +304768,18 @@ self: {
        license = lib.licenses.mit;
      }) {};
 
+  "time-manager_0_1_0" = callPackage
+    ({ mkDerivation, auto-update, base, unliftio }:
+     mkDerivation {
+       pname = "time-manager";
+       version = "0.1.0";
+       sha256 = "1r2wgi160nkky220bdwknld1ymfpq4541pzbhmkna670r1ahzcb2";
+       libraryHaskellDepends = [ auto-update base unliftio ];
+       description = "Scalable timer";
+       license = lib.licenses.mit;
+       hydraPlatforms = lib.platforms.none;
+     }) {};
+
   "time-out" = callPackage
     ({ mkDerivation, base, data-default-class, exceptions
      , time-interval, time-units, transformers
@@ -303230,6 +305306,8 @@ self: {
        pname = "timers-tick";
        version = "0.5.0.4";
        sha256 = "0q10njbdkiknqyvp276qpac7286z204f0a7qm7hafxzn7wrrp9mn";
+       revision = "1";
+       editedCabalFile = "1l4fcrdkmf96a962a5rhv7r1hbxzq7258d1qr25j8bsyci1jrzcd";
        libraryHaskellDepends = [ base ];
        testHaskellDepends = [ base hspec QuickCheck ];
        description = "tick based timers";
@@ -304072,7 +306150,7 @@ self: {
        license = lib.licenses.bsd3;
      }) {};
 
-  "tls_2_0_2" = callPackage
+  "tls_2_0_5" = callPackage
     ({ mkDerivation, asn1-encoding, asn1-types, async, base
      , base16-bytestring, bytestring, cereal, crypton, crypton-x509
      , crypton-x509-store, crypton-x509-validation, data-default-class
@@ -304081,8 +306159,10 @@ self: {
      }:
      mkDerivation {
        pname = "tls";
-       version = "2.0.2";
-       sha256 = "188m4p63h3wl0rjh8w99amyl6y0r3camk76f5ivnd56vxf3cx74g";
+       version = "2.0.5";
+       sha256 = "1qgwgbhp19a28ibb73h1ahkrwsjnv3hndfj3bsp9fb1s4856vn6z";
+       revision = "1";
+       editedCabalFile = "0717sfkj6jzpnp0r5013m3z6s25fnnrcd07lfdlpzxhs5fdjnk36";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -304166,8 +306246,8 @@ self: {
        pname = "tls-session-manager";
        version = "0.0.5";
        sha256 = "0zfls8ckskip43vrjvvqafv0c9wb5a6j507j2fjjczb0gm9gdq5m";
-       revision = "1";
-       editedCabalFile = "109d07s6gp5flhhnsy96fnz1i0y9r7j2c06ql7k9gv8xaa8pa9s9";
+       revision = "2";
+       editedCabalFile = "1qlm2y0zjcf3dsqnv0pi730bmbl4nqk3r0a826fydpaphv1xgh6v";
        libraryHaskellDepends = [
          auto-update base basement bytestring clock crypto-token memory
          psqueues serialise tls
@@ -304248,6 +306328,8 @@ self: {
        pname = "tmp-postgres";
        version = "1.34.1.0";
        sha256 = "18ivdhcp2d19z2xb36h3is2qq5n6i7gk16nbck27qlmgxll48lcq";
+       revision = "1";
+       editedCabalFile = "1jr75m0f2c9jjw0sqcwncqbv4sj593dxnnxj7kprvqfgak2mz2m0";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -304298,25 +306380,28 @@ self: {
        license = lib.licenses.bsd3;
      }) {};
 
-  "tmp-proc_0_6_1_0" = callPackage
-    ({ mkDerivation, async, base, bytestring, data-default, hspec
-     , http-client, http-types, mtl, network, process, text, tls
+  "tmp-proc_0_7_0_0" = callPackage
+    ({ mkDerivation, async, base, bytestring, crypton-connection
+     , crypton-x509-system, data-default, directory, filepath, fmt
+     , hspec, http-client, http-client-tls, http-types, mtl, mustache
+     , network, process, random, temporary, test-certs, text, tls, unix
      , unliftio, wai, warp, warp-tls
      }:
      mkDerivation {
        pname = "tmp-proc";
-       version = "0.6.1.0";
-       sha256 = "0qhapmpwlslcr0b4r4031arhixmfm5dwhjz6qhcbjdf1q7jq68lr";
+       version = "0.7.0.0";
+       sha256 = "1vfaid9x5mcnn2r1h7a788rxrgds631adwzhmhn6fqzivysmqk6g";
        isLibrary = true;
        isExecutable = true;
        enableSeparateDataOutput = true;
        libraryHaskellDepends = [
-         async base bytestring mtl network process text tls unliftio wai
-         warp warp-tls
+         async base bytestring fmt mtl network process random text tls
+         unliftio wai warp warp-tls
        ];
        testHaskellDepends = [
-         base bytestring data-default hspec http-client http-types text wai
-         warp
+         base bytestring crypton-connection crypton-x509-system data-default
+         directory filepath hspec http-client http-client-tls http-types
+         mustache temporary test-certs text tls unix wai warp warp-tls
        ];
        description = "Run 'tmp' processes in integration tests";
        license = lib.licenses.bsd3;
@@ -304325,21 +306410,21 @@ self: {
 
   "tmp-proc-example" = callPackage
     ({ mkDerivation, aeson, base, bytestring, exceptions, hedis, hspec
-     , hspec-tmp-proc, http-client, http-client-tls, monad-logger, mtl
-     , persistent, persistent-postgresql, persistent-template
-     , postgresql-simple, servant, servant-client, servant-server, tasty
-     , tasty-hunit, text, time, tmp-proc, tmp-proc-postgres
-     , tmp-proc-redis, transformers, wai, warp
+     , hspec-tmp-proc, http-client, monad-logger, mtl, persistent
+     , persistent-postgresql, persistent-template, postgresql-simple
+     , servant, servant-client, servant-server, tasty, tasty-hunit, text
+     , time, tmp-proc, tmp-proc-postgres, tmp-proc-redis, transformers
+     , wai, warp
      }:
      mkDerivation {
        pname = "tmp-proc-example";
-       version = "0.6.0.0";
-       sha256 = "0rk9rh2hpzx5hi6jpybwbbfmiqsgadb3gahhyvdiakzikbfjcn6y";
+       version = "0.7.0.0";
+       sha256 = "0dflnl4jy9x27jwg9zak77mv025myvhqg0drbf7jc1pbawr5vcg0";
        libraryHaskellDepends = [
          aeson base bytestring exceptions hedis hspec hspec-tmp-proc
-         http-client http-client-tls monad-logger mtl persistent
-         persistent-postgresql persistent-template postgresql-simple servant
-         servant-client servant-server tasty tasty-hunit text time tmp-proc
+         http-client monad-logger mtl persistent persistent-postgresql
+         persistent-template postgresql-simple servant servant-client
+         servant-server tasty tasty-hunit text time tmp-proc
          tmp-proc-postgres tmp-proc-redis transformers wai warp
        ];
        testHaskellDepends = [ base hspec ];
@@ -304368,14 +306453,14 @@ self: {
        license = lib.licenses.bsd3;
      }) {};
 
-  "tmp-proc-postgres_0_6_0_1" = callPackage
+  "tmp-proc-postgres_0_7_0_0" = callPackage
     ({ mkDerivation, base, bytestring, hspec, hspec-tmp-proc
      , postgresql-simple, text, tmp-proc
      }:
      mkDerivation {
        pname = "tmp-proc-postgres";
-       version = "0.6.0.1";
-       sha256 = "0xlrk8idis8wdvv6wkv36yjf1hw023236340j6g6j4nh51pn3wan";
+       version = "0.7.0.0";
+       sha256 = "1nqwvrg53l4x29bjkp7b2g6lakm4lvfl7d85phd81v3p6zk62azk";
        libraryHaskellDepends = [
          base bytestring postgresql-simple text tmp-proc
        ];
@@ -304404,14 +306489,14 @@ self: {
        license = lib.licenses.bsd3;
      }) {};
 
-  "tmp-proc-rabbitmq_0_6_0_1" = callPackage
+  "tmp-proc-rabbitmq_0_7_0_0" = callPackage
     ({ mkDerivation, amqp, base, bytestring, hspec, hspec-tmp-proc
      , text, tmp-proc
      }:
      mkDerivation {
        pname = "tmp-proc-rabbitmq";
-       version = "0.6.0.1";
-       sha256 = "0yw6j5fw1l35q1b0x25kksw3g1b5v97yzmi3s4snkljmf45wlfh6";
+       version = "0.7.0.0";
+       sha256 = "1jb47zgisv2zh397hbf81gkhc5f7qla5yhah778p02cnjnxlxqdc";
        libraryHaskellDepends = [ amqp base bytestring text tmp-proc ];
        testHaskellDepends = [
          amqp base bytestring hspec hspec-tmp-proc text tmp-proc
@@ -304437,14 +306522,14 @@ self: {
        license = lib.licenses.bsd3;
      }) {};
 
-  "tmp-proc-redis_0_6_0_1" = callPackage
+  "tmp-proc-redis_0_7_0_0" = callPackage
     ({ mkDerivation, base, bytestring, hedis, hspec, hspec-tmp-proc
      , text, tmp-proc
      }:
      mkDerivation {
        pname = "tmp-proc-redis";
-       version = "0.6.0.1";
-       sha256 = "1nwcw55rb9gcr36611vnw4vxcqqbppn6vxkwpviyv18lilsdpm22";
+       version = "0.7.0.0";
+       sha256 = "13xzpfifl5ay5vbny53d49hh38ma33r02hc659p7pyp571m6mal1";
        libraryHaskellDepends = [ base bytestring hedis text tmp-proc ];
        testHaskellDepends = [
          base bytestring hedis hspec hspec-tmp-proc text tmp-proc
@@ -304460,8 +306545,8 @@ self: {
      }:
      mkDerivation {
        pname = "tmp-proc-zipkin";
-       version = "0.6.0.1";
-       sha256 = "1zpqjfn9bi72cq7bbfgixbckpg37jnkbklxha15gdx49qmxi2jhm";
+       version = "0.7.0.0";
+       sha256 = "1piplhqnjhnxar4v2cgp290dkxbwy8as2bbi122csgmb0pk853kr";
        libraryHaskellDepends = [
          base bytestring http-client text tmp-proc tracing
        ];
@@ -304986,8 +307071,8 @@ self: {
        pname = "toml-parser";
        version = "2.0.0.0";
        sha256 = "1nvrmlgmdvm7p16fywds4wnpyavyq7sk0p3zlqy9dci33qb3kzc7";
-       revision = "1";
-       editedCabalFile = "0dkwkz9mq6y3cs7c4knifxqcbgjd48ji0qh4062kql10gdm9glm8";
+       revision = "2";
+       editedCabalFile = "027xradr3xivfb68nljplrj6qr8kr32k0ifdl8bwki442rkbhfqv";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -305076,8 +307161,8 @@ self: {
        pname = "tomland";
        version = "1.3.3.2";
        sha256 = "152jqjv6n7n2hdysn903wfhpwh6vp8wmjiymzasazprasdcxpywm";
-       revision = "2";
-       editedCabalFile = "03xx2wqwyp11yxdnlwxi110wkm6shwpfgzdnzjwdw6cqijdc6zc8";
+       revision = "5";
+       editedCabalFile = "1y42r0wkzjnjinld9jh01gjxs9mw8qv200nq4dj6prp5d2rbgdd3";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -307463,8 +309548,8 @@ self: {
        pname = "trial";
        version = "0.0.0.0";
        sha256 = "0lnq80983bg2cjim3fy8rwisn55f6acqwp67w7791kzfdwshxkww";
-       revision = "3";
-       editedCabalFile = "1ny7j9m0y6ry298032f2hnibxv961x86p93g8bl0qzyxhls3zngb";
+       revision = "4";
+       editedCabalFile = "08sdqn830rfpsd5czm11899lgzs2bvyiq8zhkqaaj10by4ms5vza";
        libraryHaskellDepends = [ base colourista dlist ];
        testHaskellDepends = [
          base dlist doctest hedgehog hspec hspec-hedgehog splitmix
@@ -307479,8 +309564,8 @@ self: {
        pname = "trial-optparse-applicative";
        version = "0.0.0.0";
        sha256 = "1h8pfznf1dp9z3r2kl2ljgmxxkfp3va9yqba00fyvw85lna2aggn";
-       revision = "2";
-       editedCabalFile = "0f1azyhbj2816aylcfp0jcm3k9j5xhxskg6pabxx8j9886zqv1zf";
+       revision = "3";
+       editedCabalFile = "01kcmcizi6jahxxj2kcmwgkg59fwihbqxnxqa8x64fqs6vqpd8rw";
        libraryHaskellDepends = [ base optparse-applicative trial ];
        description = "Trial helper functions for optparse-applicative";
        license = lib.licenses.mpl20;
@@ -307492,8 +309577,8 @@ self: {
        pname = "trial-tomland";
        version = "0.0.0.0";
        sha256 = "12klfq5ajn4bjrws633pfdc2zhpkwvwmrm7269xfh252fjwk1x23";
-       revision = "3";
-       editedCabalFile = "0xz9gp83c1h3l8gzkbwn2lwdaxyf59l71kv69anzrp73jhzmq361";
+       revision = "4";
+       editedCabalFile = "1zbp0njb82gmslaki2wb7vm1q33sxdv6ac8f2xjlbj1x03a2phsx";
        libraryHaskellDepends = [ base text tomland trial ];
        description = "Trial helper functions for tomland";
        license = lib.licenses.mpl20;
@@ -309213,8 +311298,8 @@ self: {
      }:
      mkDerivation {
        pname = "twitchapi";
-       version = "0.0.4";
-       sha256 = "0mbsajf5sz305ym0j3wlilvw74qpd3rn0pr9l9cvwb8lvbwvbyb8";
+       version = "0.0.5";
+       sha256 = "0w0mmcplvpazak4srsl2x4qhwxf5flzlip7i650r5p7xqpankq6y";
        libraryHaskellDepends = [
          aeson base bytestring hoauth2 http-client text time timerep
          uri-bytestring
@@ -309640,10 +311725,8 @@ self: {
     ({ mkDerivation, base }:
      mkDerivation {
        pname = "type-equality";
-       version = "1";
-       sha256 = "1s4cl11rvvv7n95i3pq9lmmx08kwh4z7l3d1hbv4wi8il81baa27";
-       revision = "6";
-       editedCabalFile = "1992xb0qnn7jzc42q9dmkkqw0ddnz0cjl4anmga4dfc172pkxxgb";
+       version = "1.0.1";
+       sha256 = "1jfdm0g5r285bbarqc6pb6nmjg03m1s6jdh5lq0zr7xasd8q429b";
        libraryHaskellDepends = [ base ];
        description = "Data.Type.Equality compat package";
        license = lib.licenses.bsd3;
@@ -309834,13 +311917,13 @@ self: {
      }) {};
 
   "type-level-bytestrings" = callPackage
-    ({ mkDerivation, base, type-spec }:
+    ({ mkDerivation, base, defun-core, type-spec }:
      mkDerivation {
        pname = "type-level-bytestrings";
-       version = "0.1.0";
-       sha256 = "06iw0plkkwl514w4nx5188v35x22abxmqfg1alnlqr1ihssmgf63";
-       libraryHaskellDepends = [ base ];
-       testHaskellDepends = [ base type-spec ];
+       version = "0.2.0";
+       sha256 = "14cp48llfbfspayi3qngacslfam7iq05hfhrspyx5pwidfql3jba";
+       libraryHaskellDepends = [ base defun-core ];
+       testHaskellDepends = [ base defun-core type-spec ];
        description = "Tools for manipulating type-level bytes and bytestrings";
        license = lib.licenses.mit;
      }) {};
@@ -309959,6 +312042,17 @@ self: {
        broken = true;
      }) {};
 
+  "type-level-show" = callPackage
+    ({ mkDerivation, base, defun-core }:
+     mkDerivation {
+       pname = "type-level-show";
+       version = "0.1.0";
+       sha256 = "0k73cl28lrws6ys1xkrrh47yh89a2k3ddfzjpp47gsz1p3048cqs";
+       libraryHaskellDepends = [ base defun-core ];
+       description = "Utilities for writing Show-like type families";
+       license = lib.licenses.mit;
+     }) {};
+
   "type-level-tf" = callPackage
     ({ mkDerivation, base, syb, template-haskell }:
      mkDerivation {
@@ -310350,6 +312444,17 @@ self: {
        broken = true;
      }) {};
 
+  "typeably" = callPackage
+    ({ mkDerivation, base }:
+     mkDerivation {
+       pname = "typeably";
+       version = "0.1.0";
+       sha256 = "1fz0yblkw304fvg138h31am930f4kdvsrf9r3nxnxcc21jzy18ps";
+       libraryHaskellDepends = [ base ];
+       description = "DerivingVia Typeable counterpart to Generically";
+       license = lib.licenses.mit;
+     }) {};
+
   "typechain" = callPackage
     ({ mkDerivation, aeson, base, bytestring, exceptions, http-conduit
      , lens, mtl, split, template-haskell, unordered-containers
@@ -310945,6 +313050,23 @@ self: {
        license = "GPL";
      }) {};
 
+  "typist" = callPackage
+    ({ mkDerivation, base, deepseq, tasty, tasty-bench, tasty-hunit
+     , text, text-show
+     }:
+     mkDerivation {
+       pname = "typist";
+       version = "0.1.0.1";
+       sha256 = "12mcm0i9vb1q2p1805zikm8k5kwa0yb8msh9yj2scv37xx52qn0c";
+       libraryHaskellDepends = [ base text text-show ];
+       testHaskellDepends = [ base tasty tasty-hunit text-show ];
+       benchmarkHaskellDepends = [
+         base deepseq tasty tasty-bench text text-show
+       ];
+       description = "Typelevel printf";
+       license = lib.licenses.mit;
+     }) {};
+
   "typograffiti" = callPackage
     ({ mkDerivation, base, bytestring, containers, freetype2, gl
      , harfbuzz-pure, linear, mtl, sdl2, stm, text, vector
@@ -313059,8 +315181,10 @@ self: {
     ({ mkDerivation, array, base, mtl }:
      mkDerivation {
        pname = "union-find-array";
-       version = "0.1.0.3";
-       sha256 = "1nfvgmgvins9gq5ba9vf9yqj9svj2c22xgvvfq03ls9wm62vj1xw";
+       version = "0.1.0.4";
+       sha256 = "0c5lbw3x0y4cihkymzihsdpg7cw2nmamy2izmhl56gwwb0z0rnm6";
+       revision = "1";
+       editedCabalFile = "089nkg7f3jm3v7fjz7ij0gvlp9fjxb3q02yaal2385jgyfwdj8hm";
        libraryHaskellDepends = [ array base mtl ];
        description = "union find data structure";
        license = lib.licenses.mit;
@@ -313621,7 +315745,6 @@ self: {
        ];
        description = "A class for finite and recursively enumerable types";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
      }) {};
 
   "universe-base" = callPackage
@@ -313650,7 +315773,6 @@ self: {
        libraryHaskellDepends = [ base universe-some ];
        description = "Universe instances for types from dependent-sum";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
      }) {};
 
   "universe-instances-base" = callPackage
@@ -313730,8 +315852,6 @@ self: {
        testHaskellDepends = [ base some template-haskell universe-base ];
        description = "Universe instances for Some from some";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
-       broken = true;
      }) {};
 
   "universe-th" = callPackage
@@ -314270,8 +316390,8 @@ self: {
        pname = "unordered-containers";
        version = "0.2.20";
        sha256 = "07gij1y9zhqg2dq8wy815j7s0zk2k65sqg4wvhwjsn80ry3v5kyr";
-       revision = "1";
-       editedCabalFile = "1zswa1qp1995mkyb25cqbw81ahwyss14xr894gji7jwk7yr34v3l";
+       revision = "2";
+       editedCabalFile = "1xfhwqib5dznxfxk47p53pifvpk7mwbpbv2hq0p0yr28nl7p6gjs";
        libraryHaskellDepends = [ base deepseq hashable template-haskell ];
        testHaskellDepends = [
          base ChasingBottoms containers hashable HUnit nothunks QuickCheck
@@ -315872,8 +317992,8 @@ self: {
      }:
      mkDerivation {
        pname = "utxorpc";
-       version = "0.0.4.4";
-       sha256 = "0is31qp6vbbbs4qnbbyh2wlcwrh2jkjq4ffml2nb4sbb47cl459z";
+       version = "0.0.5.1";
+       sha256 = "1k46h256vdzwqbg7g44la8k41rlwwa4xjpzl1506zr3dsxvjgab2";
        libraryHaskellDepends = [
          base proto-lens proto-lens-protobuf-types proto-lens-runtime
        ];
@@ -315889,10 +318009,8 @@ self: {
      }:
      mkDerivation {
        pname = "utxorpc-client";
-       version = "0.0.1.1";
-       sha256 = "1l588nhg9ssqdwdx6pvqsj4mgl88rp4fbnba8ph4hf9jqf9j81ci";
-       revision = "1";
-       editedCabalFile = "1lqarn3bycipy6rbqy9p4ypsq0xvpm0qwmjpgkqs0ivr6wp9vnas";
+       version = "0.0.2.0";
+       sha256 = "1i9gzr4dlhy3j0x2mx9idgc16r0yz7qw72z6gc10s4vlbbrc1mnb";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -315921,10 +318039,8 @@ self: {
      }:
      mkDerivation {
        pname = "utxorpc-server";
-       version = "0.0.1.1";
-       sha256 = "025lrc650b0kjw1z5vsjqg1ylb8zjv4bm5jrlk8dilb5yipk3zjq";
-       revision = "1";
-       editedCabalFile = "06hxrc4d93v814yiv09x6f7pjphx9hk3jbgv6cnwi4bx9ryp7sak";
+       version = "0.0.2.0";
+       sha256 = "1sbbyhf4av2vrqnz2g7gzm0q28bchw2jqnyqr42az7jddki9r93l";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -316690,6 +318806,8 @@ self: {
        pname = "validation";
        version = "1.1.3";
        sha256 = "159pvlzs5caabay4irs6dgrxpyhrcakyxqv7fvhs8cnarlafjhbv";
+       revision = "1";
+       editedCabalFile = "0lmrs8yrb075l91r7iq8yk7hy2scdd3z1335wmackhcfw8z5bp1z";
        libraryHaskellDepends = [
          assoc base bifunctors deepseq lens semigroupoids semigroups
        ];
@@ -316719,8 +318837,8 @@ self: {
        pname = "validation-selective";
        version = "0.2.0.0";
        sha256 = "11s9qsp5w19lbk6vg6psr3864xdsx2kmx3gcmnn2qkx6wsblx24s";
-       revision = "2";
-       editedCabalFile = "1lzx925znym2jx0qwicx7cv9ixy5qw4r3819sxvgd2yyvs159az1";
+       revision = "3";
+       editedCabalFile = "079g21xgk02pcw2bfwmr0nx1vaaig7062qxr4zj6i7v12pgnvg35";
        libraryHaskellDepends = [ base deepseq selective ];
        testHaskellDepends = [
          base doctest hedgehog hspec hspec-hedgehog selective text
@@ -317917,8 +320035,8 @@ self: {
      }:
      mkDerivation {
        pname = "vector-hashtables";
-       version = "0.1.1.4";
-       sha256 = "0nvi9j18v8xfb3p2q65bi9f3rzrw2bc2nz2q096flxjf72ipapac";
+       version = "0.1.2.0";
+       sha256 = "1s0c3d4f61rgvb0i8c2m3lazxbxg2cpv1pq4k4lnr7nga7sama9r";
        libraryHaskellDepends = [ base hashable primitive vector ];
        testHaskellDepends = [
          base containers hashable hspec primitive QuickCheck
@@ -318242,8 +320360,8 @@ self: {
        pname = "vector-th-unbox";
        version = "0.2.2";
        sha256 = "0j81m09xxv24zziv0nanfppckzmas5184jr3npjhc9w49r3cm94a";
-       revision = "5";
-       editedCabalFile = "1mw2ssj6a772cvw2mf0r5qvz4blaq8k194p6bj0wnl1plr16r90b";
+       revision = "6";
+       editedCabalFile = "1pdl1xvr1b4zg32b9d8jv4jakjnd5id5wdj2czgzajr6xlkvyhir";
        libraryHaskellDepends = [ base template-haskell vector ];
        testHaskellDepends = [ base data-default vector ];
        description = "Deriver for Data.Vector.Unboxed using Template Haskell";
@@ -318589,6 +320707,27 @@ self: {
        hydraPlatforms = lib.platforms.none;
      }) {};
 
+  "versions_5_0_5" = callPackage
+    ({ mkDerivation, base, deepseq, hashable, megaparsec, microlens
+     , parser-combinators, QuickCheck, tasty, tasty-hunit
+     , tasty-quickcheck, text
+     }:
+     mkDerivation {
+       pname = "versions";
+       version = "5.0.5";
+       sha256 = "01kn3ilizzm5n05nz0qry1vjb6bj8dzinyqn3mbshds298acn70c";
+       libraryHaskellDepends = [
+         base deepseq hashable megaparsec parser-combinators text
+       ];
+       testHaskellDepends = [
+         base megaparsec microlens QuickCheck tasty tasty-hunit
+         tasty-quickcheck text
+       ];
+       description = "Types and parsers for software version numbers";
+       license = lib.licenses.bsd3;
+       hydraPlatforms = lib.platforms.none;
+     }) {};
+
   "versions" = callPackage
     ({ mkDerivation, base, deepseq, hashable, megaparsec, microlens
      , parser-combinators, tasty, tasty-hunit, template-haskell, text
@@ -318609,15 +320748,15 @@ self: {
      }) {};
 
   "vertexenum" = callPackage
-    ({ mkDerivation, base, containers, hmatrix-glpk, tasty, tasty-hunit
-     , vector-space
+    ({ mkDerivation, base, containers, extra, monad-logger
+     , simplex-method, tasty, tasty-hunit, vector-space
      }:
      mkDerivation {
        pname = "vertexenum";
-       version = "0.1.1.0";
-       sha256 = "1b213zl5psrlibcpi27vw7fm9lwj0jgb22k18z13qwk6xykvip8q";
+       version = "1.0.0.0";
+       sha256 = "14rxkjqzm5n7qf1phkhmd4sn9kh7znxd7qdxpcv5wyz1gialxym6";
        libraryHaskellDepends = [
-         base containers hmatrix-glpk vector-space
+         base containers extra monad-logger simplex-method vector-space
        ];
        testHaskellDepends = [ base tasty tasty-hunit ];
        description = "Vertex enumeration";
@@ -318651,7 +320790,6 @@ self: {
        doHaddock = false;
        description = "Functor-parametric containers";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
      }) {};
 
   "vflow-types" = callPackage
@@ -319046,7 +321184,6 @@ self: {
        ];
        description = "Convert plain records to vinyl (and vice versa), generically";
        license = lib.licenses.bsd3;
-       hydraPlatforms = lib.platforms.none;
      }) {};
 
   "vinyl-gl" = callPackage
@@ -319892,8 +322029,8 @@ self: {
      }:
      mkDerivation {
        pname = "vty-windows";
-       version = "0.2.0.2";
-       sha256 = "12dd00lp5vx8fijj6i3ihd5553k9b127lh25li50dimkxf5vrwjv";
+       version = "0.2.0.3";
+       sha256 = "12f91izwg4r18zvdbnkwd8jk7agdyy3w3bcljrm92hib43i210id";
        libraryHaskellDepends = [
          base blaze-builder bytestring containers deepseq directory filepath
          microlens microlens-mtl microlens-th mtl parsec stm transformers
@@ -320241,6 +322378,26 @@ self: {
        license = lib.licenses.mit;
      }) {};
 
+  "wai-cryptocookie" = callPackage
+    ({ mkDerivation, aeson, base, binary, bytestring, cookie, crypton
+     , directory, filepath, http-types, memory, stm, text, time, wai
+     , wai-extra
+     }:
+     mkDerivation {
+       pname = "wai-cryptocookie";
+       version = "0.1";
+       sha256 = "1h1ajlwpgsjx4liril1zcnwnx51b6idm4vg5d2226ibcn5v67478";
+       libraryHaskellDepends = [
+         aeson base binary bytestring cookie crypton http-types memory stm
+         text time wai
+       ];
+       testHaskellDepends = [
+         aeson base binary directory filepath http-types stm wai wai-extra
+       ];
+       description = "Encrypted cookies for WAI";
+       license = lib.licenses.asl20;
+     }) {};
+
   "wai-devel" = callPackage
     ({ mkDerivation, array, base, blaze-html, bytestring
      , Cabal-ide-backend, directory, file-embed, filepath, fsnotify, ghc
@@ -320374,6 +322531,38 @@ self: {
        license = lib.licenses.mit;
      }) {};
 
+  "wai-extra_3_1_15" = callPackage
+    ({ mkDerivation, aeson, ansi-terminal, base, base64-bytestring
+     , bytestring, call-stack, case-insensitive, containers, cookie
+     , data-default-class, directory, fast-logger, hspec, hspec-discover
+     , http-types, HUnit, iproute, network, resourcet, streaming-commons
+     , temporary, text, time, transformers, unix, vault, wai, wai-logger
+     , warp, word8, zlib
+     }:
+     mkDerivation {
+       pname = "wai-extra";
+       version = "3.1.15";
+       sha256 = "0n786h3ck3ik9s3p1wmfgy47j9hdzwkgjmcmjhjgyxrvsvnzn6mx";
+       isLibrary = true;
+       isExecutable = true;
+       libraryHaskellDepends = [
+         aeson ansi-terminal base base64-bytestring bytestring call-stack
+         case-insensitive containers cookie data-default-class directory
+         fast-logger http-types HUnit iproute network resourcet
+         streaming-commons text time transformers unix vault wai wai-logger
+         warp word8
+       ];
+       testHaskellDepends = [
+         aeson base bytestring case-insensitive cookie directory fast-logger
+         hspec http-types HUnit iproute resourcet temporary text time wai
+         warp word8 zlib
+       ];
+       testToolDepends = [ hspec-discover ];
+       description = "Provides some basic WAI handlers and middleware";
+       license = lib.licenses.mit;
+       hydraPlatforms = lib.platforms.none;
+     }) {};
+
   "wai-feature-flags" = callPackage
     ({ mkDerivation, aeson, base, bytestring, splitmix, text
      , unordered-containers, wai, warp
@@ -321364,8 +323553,8 @@ self: {
        pname = "wai-middleware-static";
        version = "0.9.2";
        sha256 = "1ynm0xcr3pj5bbph78p1kpyxvd0n3a0gfdbm6yb7i004ixaqf33c";
-       revision = "4";
-       editedCabalFile = "0kmy18qq2mc5mlmnx6xaj1wkk63jl0s4fn16zbd6cyb6jb8n2lq4";
+       revision = "5";
+       editedCabalFile = "059vp0ipdgfpldzmqqhkayak6dicj8qhpb2qcwdk8y31bcg7895m";
        libraryHaskellDepends = [
          base base16-bytestring bytestring containers cryptohash-sha1
          directory expiring-cache-map filepath http-types mime-types
@@ -322326,7 +324515,7 @@ self: {
        license = lib.licenses.mit;
      }) {};
 
-  "warp_3_4_0" = callPackage
+  "warp_3_4_1" = callPackage
     ({ mkDerivation, array, auto-update, base, bsb-http-chunked
      , bytestring, case-insensitive, containers, crypton-x509, directory
      , gauge, ghc-prim, hashable, hspec, hspec-discover, http-client
@@ -322336,8 +324525,8 @@ self: {
      }:
      mkDerivation {
        pname = "warp";
-       version = "3.4.0";
-       sha256 = "0p68qzap25na55gnc521c8yvdf4zfy86l2x8cqfw9kmr28f71s75";
+       version = "3.4.1";
+       sha256 = "0f4cs9qb3cpagryijzw46r5y5bd2srvb4b3phffydj5aim253jfp";
        libraryHaskellDepends = [
          array auto-update base bsb-http-chunked bytestring case-insensitive
          containers crypton-x509 ghc-prim hashable http-date http-types
@@ -322465,8 +324654,8 @@ self: {
      }:
      mkDerivation {
        pname = "warp-tls";
-       version = "3.4.4";
-       sha256 = "1l8lxqakz5c060sif6qz3nz019xan5zhdf5l8xmwy00aq8ccs6ba";
+       version = "3.4.5";
+       sha256 = "0j4m5idjg7fa8snc46lhf5gwwdgq004pjmqzfcb78pf1px1y0gwy";
        libraryHaskellDepends = [
          base bytestring data-default-class network recv streaming-commons
          tls tls-session-manager unliftio wai warp
@@ -327392,8 +329581,8 @@ self: {
      }:
      mkDerivation {
        pname = "wuss";
-       version = "2.0.1.7";
-       sha256 = "09ad7bxkg46kgmkf49n86wqkzpsz277kiiwhw81awgivfacqkcvy";
+       version = "2.0.1.8";
+       sha256 = "1pdh44r11yxyjgyb8la28crsm7sk09fshmqcgxyxczwfjsa85dpk";
        libraryHaskellDepends = [
          base bytestring crypton-connection exceptions network websockets
        ];
@@ -327952,17 +330141,19 @@ self: {
      }) {};
 
   "xdg-desktop-entry" = callPackage
-    ({ mkDerivation, base, ConfigFile, directory, either, filepath
-     , multimap, safe, transformers, unix
+    ({ mkDerivation, base, directory, either, filepath, hspec, ini
+     , multimap, safe, temporary, text, transformers, unix
+     , unordered-containers
      }:
      mkDerivation {
        pname = "xdg-desktop-entry";
-       version = "0.1.1.1";
-       sha256 = "0xlniirgj01v02dp6wx8iw038p4mx2pa3rmwfv3g7k5raa7gzapb";
+       version = "0.1.1.2";
+       sha256 = "185ngzawaxnd9vihd5879am0ifjnnnzjf77z4mx92p31mb341q6g";
        libraryHaskellDepends = [
-         base ConfigFile directory either filepath multimap safe
-         transformers unix
+         base directory either filepath ini multimap safe text transformers
+         unix unordered-containers
        ];
+       testHaskellDepends = [ base filepath hspec temporary unix ];
        description = "Parse files conforming to the xdg desktop entry spec";
        license = lib.licenses.bsd3;
      }) {};
@@ -328390,8 +330581,8 @@ self: {
      }:
      mkDerivation {
        pname = "xlsx";
-       version = "1.1.2.1";
-       sha256 = "12xadpj9anbkm170y54l8qc5mabwhf0i91fmckf995d8p2san8vy";
+       version = "1.1.2.2";
+       sha256 = "11swc66aql6ywd8cvk00939bha7rfnvq2i4xmkkqhh0bxif7hi5d";
        libraryHaskellDepends = [
          attoparsec base base64-bytestring binary-search bytestring conduit
          containers data-default deepseq dlist errors exceptions extra
@@ -329398,8 +331589,8 @@ self: {
      }:
      mkDerivation {
        pname = "xmobar";
-       version = "0.48";
-       sha256 = "0k0vzfvz46lx4lpq2yi3jpr7l5mpl50rvqlnvsx9gqnm0dsac14s";
+       version = "0.48.1";
+       sha256 = "1infcisv7l00a4z4byjwjisg4yndk0cymibfii1c7yzyzrlvavhl";
        configureFlags = [
          "-fwith_alsa" "-fwith_conduit" "-fwith_datezone" "-fwith_dbus"
          "-fwith_inotify" "-fwith_iwlib" "-fwith_mpd" "-fwith_mpris"
@@ -329788,8 +331979,8 @@ self: {
        pname = "xor";
        version = "0.0.1.2";
        sha256 = "0c0a1zg0kwp3jdlgw6y1l6qp00680khxa3sizx5wafdv09rwmrxc";
-       revision = "2";
-       editedCabalFile = "160vvj5icka4i76b7x2qg3l9gvxib0shgs5zrvj27r587vd81rl5";
+       revision = "3";
+       editedCabalFile = "0lj7kp8119cbl5g3ndnkr4fjgcwk6liar79j4rvrf1zyr5xflknr";
        libraryHaskellDepends = [ base bytestring ghc-byteorder ];
        testHaskellDepends = [
          base bytestring ghc-byteorder QuickCheck tasty tasty-hunit
@@ -330862,24 +333053,25 @@ self: {
     ({ mkDerivation, aeson, attoparsec, base, base-compat, bytestring
      , containers, criterion, deepseq, directory, filepath, hspec
      , hspec-discover, HUnit, libyaml-streamly, megaparsec, mockery, mtl
-     , raw-strings-qq, safe-exceptions, scientific, streamly, strict
-     , template-haskell, temporary, text, transformers
+     , raw-strings-qq, safe-exceptions, scientific, streamly-core
+     , strict, template-haskell, temporary, text, transformers
      , unordered-containers, vector, versions
      }:
      mkDerivation {
        pname = "yaml-streamly";
-       version = "0.12.4";
-       sha256 = "06cr9qqxxck6qgdc0lizjlkzm9j0mhyj4p64wymhkwd70dyhlfmz";
+       version = "0.12.5";
+       sha256 = "0gkgbqki58snxzsd1wa0gs22bwx6fax0b32zc3dy53n9fyivbwiz";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
          aeson attoparsec base bytestring containers deepseq directory
-         filepath libyaml-streamly mtl safe-exceptions scientific streamly
-         template-haskell text transformers unordered-containers vector
+         filepath libyaml-streamly mtl safe-exceptions scientific
+         streamly-core template-haskell text transformers
+         unordered-containers vector
        ];
        testHaskellDepends = [
          aeson base base-compat bytestring directory hspec HUnit
-         libyaml-streamly mockery raw-strings-qq scientific streamly
+         libyaml-streamly mockery raw-strings-qq scientific streamly-core
          temporary text unordered-containers vector
        ];
        testToolDepends = [ hspec-discover ];
@@ -331013,8 +333205,8 @@ self: {
        pname = "yampa-canvas";
        version = "0.2.3";
        sha256 = "0a1pq1psmc4490isr19z4prnqq1w3374vkfmzpw9s20s2p6k5y7r";
-       revision = "12";
-       editedCabalFile = "0j9n3xd4hxir1x46yrr8vwrbr8yziw5xfjzvn2j57jrx0qs9c0fb";
+       revision = "13";
+       editedCabalFile = "1401zbwg52q3y277h60c0ahwz105iakxfqpvi50bc8q6w56g7jbq";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [ base blank-canvas stm time Yampa ];
@@ -333039,8 +335231,8 @@ self: {
      }:
      mkDerivation {
        pname = "yesod-markdown";
-       version = "0.12.6.13";
-       sha256 = "0wk7pmg0rxb28vkplm3npcrr2mkxaailvvf7scgsggczqslfszq9";
+       version = "0.12.6.14";
+       sha256 = "0nx43b4v64kmz86bfig5h35g920dk4wyncdwxqlv9k8aadifrdfq";
        libraryHaskellDepends = [
          base blaze-html blaze-markup bytestring directory pandoc persistent
          shakespeare text xss-sanitize yesod-core yesod-form
@@ -335807,10 +337999,8 @@ self: {
      }:
      mkDerivation {
        pname = "zip";
-       version = "2.0.0";
-       sha256 = "1j3gwhgcn2j2jsdg4dw7a5y1pw0n273zkfk782pvzjqmccaywbdp";
-       revision = "3";
-       editedCabalFile = "1b6izcvvrhdra0jxp2s7xk9xv41iwq3yc9bpi44nmc2fj4ra4r2v";
+       version = "2.0.1";
+       sha256 = "0djjj1r30hfair0qq9vzla4qlaw60gmg2963vwch9pgiylzm2f5h";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -335821,8 +338011,8 @@ self: {
        ];
        executableHaskellDepends = [ base filepath ];
        testHaskellDepends = [
-         base bytestring conduit containers directory dlist exceptions
-         filepath hspec QuickCheck temporary text time transformers
+         base bytestring conduit containers directory dlist filepath hspec
+         QuickCheck temporary text time
        ];
        description = "Operations on zip archives";
        license = lib.licenses.bsd3;
@@ -336075,16 +338265,14 @@ self: {
        license = lib.licenses.bsd3;
      }) {inherit (pkgs) zlib;};
 
-  "zlib_0_7_0_0" = callPackage
+  "zlib_0_7_1_0" = callPackage
     ({ mkDerivation, base, bytestring, QuickCheck, tasty
      , tasty-quickcheck, zlib
      }:
      mkDerivation {
        pname = "zlib";
-       version = "0.7.0.0";
-       sha256 = "0ivszx31jw560axchxz9g646baw2rs6fr1ih0d5mmzz1w42w4hvy";
-       revision = "1";
-       editedCabalFile = "1fiwhzs7sp3ck75ii176pakmwjqcjlv0fiqcqka6r8p9jdf958b4";
+       version = "0.7.1.0";
+       sha256 = "1g2md8z0ijcbrqlx9q9i49myi2lnlvzmma1ajmsd5y0xp2v3ipbf";
        libraryHaskellDepends = [ base bytestring ];
        libraryPkgconfigDepends = [ zlib ];
        testHaskellDepends = [
@@ -336129,6 +338317,17 @@ self: {
        broken = true;
      }) {};
 
+  "zlib-clib" = callPackage
+    ({ mkDerivation }:
+     mkDerivation {
+       pname = "zlib-clib";
+       version = "1.3.1";
+       sha256 = "153aldw8vqy6wzz7knbzyfkxsr3gsv5hjf4y84s12ifx2fi8zfkn";
+       doHaddock = false;
+       description = "zlib C library bits";
+       license = lib.licenses.zlib;
+     }) {};
+
   "zlib-conduit" = callPackage
     ({ mkDerivation, base, conduit }:
      mkDerivation {
diff --git a/pkgs/development/haskell-modules/make-package-set.nix b/pkgs/development/haskell-modules/make-package-set.nix
index 52d0af869cec..50dc7414ca93 100644
--- a/pkgs/development/haskell-modules/make-package-set.nix
+++ b/pkgs/development/haskell-modules/make-package-set.nix
@@ -211,15 +211,21 @@ in package-set { inherit pkgs lib callPackage; } self // {
       }) firstRevision;
 
     # Creates a Haskell package from a source package by calling cabal2nix on the source.
-    callCabal2nixWithOptions = name: src: extraCabal2nixOptions: args:
+    callCabal2nixWithOptions = name: src: opts: args:
       let
-        filter = path: type:
+        extraCabal2nixOptions = if builtins.isString opts
+                                then opts
+                                else opts.extraCabal2nixOptions or "";
+        srcModifier = opts.srcModifier or null;
+        defaultFilter = path: type:
                    pkgs.lib.hasSuffix ".cabal" path ||
                    baseNameOf path == "package.yaml";
         expr = self.haskellSrc2nix {
           inherit name extraCabal2nixOptions;
-          src = if pkgs.lib.canCleanSource src
-                  then pkgs.lib.cleanSourceWith { inherit src filter; }
+          src = if srcModifier != null
+                then srcModifier src
+                else if pkgs.lib.canCleanSource src
+                then pkgs.lib.cleanSourceWith { inherit src; filter = defaultFilter; }
                 else src;
         };
       in overrideCabal (orig: {
diff --git a/pkgs/development/interpreters/clojure/default.nix b/pkgs/development/interpreters/clojure/default.nix
index b440e56812ad..8fd965874fae 100644
--- a/pkgs/development/interpreters/clojure/default.nix
+++ b/pkgs/development/interpreters/clojure/default.nix
@@ -2,12 +2,12 @@
 
 stdenv.mkDerivation (finalAttrs: {
   pname = "clojure";
-  version = "1.11.3.1456";
+  version = "1.11.3.1463";
 
   src = fetchurl {
     # https://github.com/clojure/brew-install/releases
     url = "https://github.com/clojure/brew-install/releases/download/${finalAttrs.version}/clojure-tools-${finalAttrs.version}.tar.gz";
-    hash = "sha256-ymOkUUDSj5KzFMBY1D7gErjPAK5E/QjFDGcwDo5fzW0=";
+    hash = "sha256-26QZ3j54XztpW2WJ1xg0Gc+OwrsvmfK4iv0GsLV8FIc=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/interpreters/emilua/default.nix b/pkgs/development/interpreters/emilua/default.nix
index 03ba8d81cfcd..e71c47ae59cb 100644
--- a/pkgs/development/interpreters/emilua/default.nix
+++ b/pkgs/development/interpreters/emilua/default.nix
@@ -1,45 +1,47 @@
-{ lib
-, stdenv
-, meson
-, ninja
-, fetchFromGitHub
-, fetchFromGitLab
-, re2c
-, gperf
-, gawk
-, pkg-config
-, boost182
-, fmt
-, luajit_openresty
-, ncurses
-, serd
-, sord
-, libcap
-, liburing
-, openssl
-, cereal
-, cmake
-, asciidoctor
+{
+  lib,
+  stdenv,
+  meson,
+  ninja,
+  fetchFromGitHub,
+  fetchFromGitLab,
+  re2c,
+  gperf,
+  gawk,
+  pkg-config,
+  boost182,
+  fmt,
+  luajit_openresty,
+  ncurses,
+  serd,
+  sord,
+  libcap,
+  liburing,
+  openssl,
+  cereal,
+  cmake,
+  asciidoctor,
+  makeWrapper,
 }:
 
 let
   trial-protocol-wrap = fetchFromGitHub {
-      owner = "breese";
-      repo = "trial.protocol";
-      rev = "79149f604a49b8dfec57857ca28aaf508069b669";
-      name = "trial-protocol";
-      hash = "sha256-Xd8bX3z9PZWU17N9R95HXdj6qo9at5FBL/+PTVaJgkw=";
+    owner = "breese";
+    repo = "trial.protocol";
+    rev = "79149f604a49b8dfec57857ca28aaf508069b669";
+    name = "trial-protocol";
+    hash = "sha256-Xd8bX3z9PZWU17N9R95HXdj6qo9at5FBL/+PTVaJgkw=";
   };
 in
 stdenv.mkDerivation rec {
   pname = "emilua";
-  version = "0.6.0";
+  version = "0.7.3";
 
   src = fetchFromGitLab {
-      owner = "emilua";
-      repo = "emilua";
-      rev = "v${version}";
-      hash = "sha256-cW2b+jUQT60hCCirBzxZltzA7KvBihnzWNPkKDID6kU=";
+    owner = "emilua";
+    repo = "emilua";
+    rev = "v${version}";
+    hash = "sha256-j8ohhqHjSBgc4Xk9PcQNrbADmsz4VH2zCv+UNqiCv4I=";
   };
 
   buildInputs = [
@@ -64,6 +66,7 @@ stdenv.mkDerivation rec {
     meson
     cmake
     ninja
+    makeWrapper
   ];
 
   dontUseCmakeConfigure = true;
@@ -90,7 +93,17 @@ stdenv.mkDerivation rec {
     cp "packagefiles/trial.protocol/meson.build" "trial-protocol/"
     popd
 
-    substituteInPlace src/emilua_gperf.awk  --replace '#!/usr/bin/env -S gawk --file' '#!${gawk}/bin/gawk -f'
+    patchShebangs src/emilua_gperf.awk --interpreter '${lib.getExe gawk} -f'
+  '';
+
+  doCheck = true;
+
+  # Skipped test: libpsx
+  # Known issue with no-new-privs disabled in the Nix build environment.
+  checkPhase = ''
+    runHook preCheck
+    meson test --print-errorlogs --no-suite libpsx
+    runHook postCheck
   '';
 
   meta = with lib; {
diff --git a/pkgs/development/interpreters/erlang/25.nix b/pkgs/development/interpreters/erlang/25.nix
index 441d12d747c5..57de6e35dcf2 100644
--- a/pkgs/development/interpreters/erlang/25.nix
+++ b/pkgs/development/interpreters/erlang/25.nix
@@ -1,6 +1,6 @@
 { mkDerivation }:
 
 mkDerivation {
-  version = "25.3.2.11";
-  sha256 = "sha256-GeYDTgUcU//KjEw8jX/zR5OagHQLqpYLitn1PVmcIi0=";
+  version = "25.3.2.12";
+  sha256 = "sha256-ZqyJtKr0QdzuuzKnJ/S6Z4cGLWolVMVWcMuAHyOGzkQ=";
 }
diff --git a/pkgs/development/interpreters/erlang/26.nix b/pkgs/development/interpreters/erlang/26.nix
index 1de18ab10154..a17facb1c114 100644
--- a/pkgs/development/interpreters/erlang/26.nix
+++ b/pkgs/development/interpreters/erlang/26.nix
@@ -1,6 +1,6 @@
 { mkDerivation }:
 
 mkDerivation {
-  version = "26.2.4";
-  sha256 = "sha256-gTyBS5Q5V+bjwQQz+C55ZfYf8iAivn3V5qtvmfCo1XM=";
+  version = "26.2.5";
+  sha256 = "sha256-tUAvzkTE51gT4kS7voEZZpsMKVyBQR+wgk6mI0s1Vac=";
 }
diff --git a/pkgs/development/interpreters/erlang/generic-builder.nix b/pkgs/development/interpreters/erlang/generic-builder.nix
index 32d1466f326e..2f3b6de7d11c 100644
--- a/pkgs/development/interpreters/erlang/generic-builder.nix
+++ b/pkgs/development/interpreters/erlang/generic-builder.nix
@@ -29,7 +29,7 @@
 , common-updater-scripts
 , coreutils
 , git
-, wrapGAppsHook
+, wrapGAppsHook3
 }:
 { baseName ? "erlang"
 , version
@@ -46,7 +46,7 @@
 , odbcSupport ? false
 , odbcPackages ? [ unixODBC ]
 , opensslPackage ? openssl
-, wxPackages ? [ libGL libGLU wxGTK xorg.libX11 wrapGAppsHook ]
+, wxPackages ? [ libGL libGLU wxGTK xorg.libX11 wrapGAppsHook3 ]
 , preUnpack ? ""
 , postUnpack ? ""
 , patches ? [ ]
diff --git a/pkgs/development/interpreters/femtolisp/default.nix b/pkgs/development/interpreters/femtolisp/default.nix
index ecd3bc1f8fd7..34efdc91ac6d 100644
--- a/pkgs/development/interpreters/femtolisp/default.nix
+++ b/pkgs/development/interpreters/femtolisp/default.nix
@@ -6,7 +6,7 @@
 
 stdenv.mkDerivation {
   pname = "femtolisp";
-  version = "unstable-2023-07-12";
+  version = "0-unstable-2023-07-12";
 
   src = fetchFromSourcehut {
     owner = "~ft";
diff --git a/pkgs/development/interpreters/gnudatalanguage/default.nix b/pkgs/development/interpreters/gnudatalanguage/default.nix
index 54b5c5898c87..41f15afbee30 100644
--- a/pkgs/development/interpreters/gnudatalanguage/default.nix
+++ b/pkgs/development/interpreters/gnudatalanguage/default.nix
@@ -2,7 +2,7 @@
 , lib
 , fetchFromGitHub
 , cmake
-, wrapGAppsHook
+, wrapGAppsHook3
 , readline
 , ncurses
 , zlib
@@ -157,7 +157,7 @@ stdenv.mkDerivation rec {
 
   nativeBuildInputs = [
     cmake
-  ] ++ lib.optional enableWX wrapGAppsHook;
+  ] ++ lib.optional enableWX wrapGAppsHook3;
 
   cmakeFlags = lib.optional (!enableHDF4) "-DHDF=OFF"
     ++ [ (if enableHDF5 then "-DHDF5DIR=${hdf5-custom}" else "-DHDF5=OFF") ]
diff --git a/pkgs/development/interpreters/gtk-server/default.nix b/pkgs/development/interpreters/gtk-server/default.nix
index e6d32f40c40e..d97c94fbd885 100644
--- a/pkgs/development/interpreters/gtk-server/default.nix
+++ b/pkgs/development/interpreters/gtk-server/default.nix
@@ -5,7 +5,7 @@
 , gtk3
 , libffcall
 , pkg-config
-, wrapGAppsHook
+, wrapGAppsHook3
 }:
 
 stdenv.mkDerivation rec {
@@ -21,7 +21,7 @@ stdenv.mkDerivation rec {
     cd src
   '';
 
-  nativeBuildInputs = [ pkg-config wrapGAppsHook ];
+  nativeBuildInputs = [ pkg-config wrapGAppsHook3 ];
   buildInputs = [ libffcall glib gtk3 ];
 
   configureOptions = [ "--with-gtk3" ];
diff --git a/pkgs/development/interpreters/jruby/default.nix b/pkgs/development/interpreters/jruby/default.nix
index 5f31e8ef29ee..8758c88b9c01 100644
--- a/pkgs/development/interpreters/jruby/default.nix
+++ b/pkgs/development/interpreters/jruby/default.nix
@@ -6,11 +6,11 @@ let
 in
 stdenv.mkDerivation (finalAttrs: {
   pname = "jruby";
-  version = "9.4.6.0";
+  version = "9.4.7.0";
 
   src = fetchurl {
     url = "https://s3.amazonaws.com/jruby.org/downloads/${finalAttrs.version}/jruby-bin-${finalAttrs.version}.tar.gz";
-    hash = "sha256-LaFN5BUrcf2/o1ukaHpG7xLNRldAM3tUnMH+bHwTmBM=";
+    hash = "sha256-8cOfgldQUwClKP+D/kch++YahVq7JePSfVLUOsl6TYA=";
   };
 
   nativeBuildInputs = [ makeBinaryWrapper ];
diff --git a/pkgs/development/interpreters/lua-5/build-luarocks-package.nix b/pkgs/development/interpreters/lua-5/build-luarocks-package.nix
index 97ac535c9303..b4eec6d8ff2d 100644
--- a/pkgs/development/interpreters/lua-5/build-luarocks-package.nix
+++ b/pkgs/development/interpreters/lua-5/build-luarocks-package.nix
@@ -89,6 +89,7 @@ let
   generatedRockspecFilename = "./${self.pname}-${self.rockspecVersion}.rockspec";
 
   nativeBuildInputs = [
+    lua  # for lua.h
     wrapLua
     luarocks
   ];
@@ -167,6 +168,7 @@ let
   buildPhase = ''
     runHook preBuild
 
+    source ${lua}/nix-support/utils.sh
     nix_debug "Using LUAROCKS_CONFIG=$LUAROCKS_CONFIG"
 
     LUAROCKS_EXTRA_ARGS=""
diff --git a/pkgs/development/interpreters/lua-5/hooks/default.nix b/pkgs/development/interpreters/lua-5/hooks/default.nix
index ca9c15e8a3b1..02716568acfd 100644
--- a/pkgs/development/interpreters/lua-5/hooks/default.nix
+++ b/pkgs/development/interpreters/lua-5/hooks/default.nix
@@ -10,19 +10,6 @@ let
   callPackage = lua.pkgs.callPackage;
 in {
 
-  lua-setup-hook = LuaPathSearchPaths: LuaCPathSearchPaths:
-    let
-      hook = ./setup-hook.sh;
-    in runCommand "lua-setup-hook.sh" {
-      # hum doesn't seem to like caps !! BUG ?
-      luapathsearchpaths=lib.escapeShellArgs LuaPathSearchPaths;
-      luacpathsearchpaths=lib.escapeShellArgs LuaCPathSearchPaths;
-    } ''
-      cp ${hook} hook.sh
-      substituteAllInPlace hook.sh
-      mv hook.sh $out
-    '';
-
   luarocksCheckHook = callPackage ({ luarocks }:
     makeSetupHook {
       name = "luarocks-check-hook";
diff --git a/pkgs/development/interpreters/lua-5/hooks/setup-hook.sh b/pkgs/development/interpreters/lua-5/hooks/setup-hook.sh
index 302702166139..0e9aa689706e 100644
--- a/pkgs/development/interpreters/lua-5/hooks/setup-hook.sh
+++ b/pkgs/development/interpreters/lua-5/hooks/setup-hook.sh
@@ -1,56 +1,4 @@
 # set -e
 
-nix_print() {
-  if [ ${NIX_DEBUG:-0} -ge $1 ]; then
-    echo "$2"
-  fi
-}
-
-nix_debug() {
-  nix_print 3 "$1"
-}
-
-addToLuaSearchPathWithCustomDelimiter() {
-  local varName="$1"
-  local absPattern="$2"
-
-  # export only if we haven't already got this dir in the search path
-  if [[ ${!varName-} == *"$absPattern"* ]]; then return; fi
-
-  # if the path variable has not yet been set, initialize it to ";;"
-  # this is a magic value that will be replaced by the default,
-  # allowing relative modules to be used even when there are system modules.
-  if [[ ! -v "${varName}" ]]; then export "${varName}=;;"; fi
-
-  # export only if the folder contains lua files
-  shopt -s globstar
-
-  local adjustedPattern="${absPattern/\?/\*\*\/\*}"
-  for _file in $adjustedPattern; do
-    export "${varName}=${!varName:+${!varName};}${absPattern}"
-    shopt -u globstar
-    return;
-  done
-  shopt -u globstar
-}
-
-addToLuaPath() {
-  local dir="$1"
-
-  if [[ ! -d "$dir" ]]; then
-    nix_debug "$dir not a directory abort"
-    return 0
-  fi
-  cd "$dir"
-  for pattern in @luapathsearchpaths@; do
-    addToLuaSearchPathWithCustomDelimiter LUA_PATH "$PWD/$pattern"
-  done
-
-  # LUA_CPATH
-  for pattern in @luacpathsearchpaths@; do
-    addToLuaSearchPathWithCustomDelimiter LUA_CPATH "$PWD/$pattern"
-  done
-  cd - >/dev/null
-}
-
+source ./utils.sh
 addEnvHooks "$hostOffset" addToLuaPath
diff --git a/pkgs/development/interpreters/lua-5/interpreter.nix b/pkgs/development/interpreters/lua-5/interpreter.nix
index 2856951d9fbd..7775fa5c8493 100644
--- a/pkgs/development/interpreters/lua-5/interpreter.nix
+++ b/pkgs/development/interpreters/lua-5/interpreter.nix
@@ -3,6 +3,7 @@
 , makeWrapper
 , self
 , packageOverrides ? (final: prev: {})
+, substituteAll
 , pkgsBuildBuild
 , pkgsBuildHost
 , pkgsBuildTarget
@@ -51,9 +52,10 @@ stdenv.mkDerivation (finalAttrs:
 
   LuaPathSearchPaths  = luaPackages.luaLib.luaPathList;
   LuaCPathSearchPaths = luaPackages.luaLib.luaCPathList;
-  setupHook = luaPackages.lua-setup-hook
-    finalAttrs.LuaPathSearchPaths
-    finalAttrs.LuaCPathSearchPaths;
+  setupHook = builtins.toFile "lua-setup-hook" ''
+      source @out@/nix-support/utils.sh
+      addEnvHooks "$hostOffset" addToLuaPath
+      '';
 
   nativeBuildInputs = [ makeWrapper ];
   buildInputs = [ readline ];
@@ -107,7 +109,12 @@ stdenv.mkDerivation (finalAttrs:
   inherit postBuild;
 
   postInstall = ''
-    mkdir -p "$out/share/doc/lua" "$out/lib/pkgconfig"
+    mkdir -p "$out/nix-support" "$out/share/doc/lua" "$out/lib/pkgconfig"
+    cp ${substituteAll {
+      src = ./utils.sh;
+      luapathsearchpaths=lib.escapeShellArgs finalAttrs.LuaPathSearchPaths;
+      luacpathsearchpaths=lib.escapeShellArgs finalAttrs.LuaCPathSearchPaths;
+    }} $out/nix-support/utils.sh
     mv "doc/"*.{gif,png,css,html} "$out/share/doc/lua/"
     rmdir $out/{share,lib}/lua/${luaversion} $out/{share,lib}/lua
     mkdir -p "$out/lib/pkgconfig"
diff --git a/pkgs/development/interpreters/lua-5/utils.sh b/pkgs/development/interpreters/lua-5/utils.sh
new file mode 100644
index 000000000000..5491f8f7ad2d
--- /dev/null
+++ b/pkgs/development/interpreters/lua-5/utils.sh
@@ -0,0 +1,54 @@
+#!/bin/sh
+nix_print() {
+  if [ ${NIX_DEBUG:-0} -ge $1 ]; then
+    echo "$2"
+  fi
+}
+
+nix_debug() {
+  nix_print 3 "$1"
+}
+
+addToLuaSearchPathWithCustomDelimiter() {
+  local varName="$1"
+  local absPattern="$2"
+
+  # export only if we haven't already got this dir in the search path
+  if [[ ${!varName-} == *"$absPattern"* ]]; then return; fi
+
+  # if the path variable has not yet been set, initialize it to ";;"
+  # this is a magic value that will be replaced by the default,
+  # allowing relative modules to be used even when there are system modules.
+  if [[ ! -v "${varName}" ]]; then export "${varName}=;;"; fi
+
+  # export only if the folder contains lua files
+  shopt -s globstar
+
+  local adjustedPattern="${absPattern/\?/\*\*\/\*}"
+  for _file in $adjustedPattern; do
+    export "${varName}=${!varName:+${!varName};}${absPattern}"
+    shopt -u globstar
+    return;
+  done
+  shopt -u globstar
+}
+
+addToLuaPath() {
+  local dir="$1"
+
+  if [[ ! -d "$dir" ]]; then
+    nix_debug "$dir not a directory abort"
+    return 0
+  fi
+  cd "$dir"
+  for pattern in @luapathsearchpaths@; do
+    addToLuaSearchPathWithCustomDelimiter LUA_PATH "$PWD/$pattern"
+  done
+
+  # LUA_CPATH
+  for pattern in @luacpathsearchpaths@; do
+    addToLuaSearchPathWithCustomDelimiter LUA_CPATH "$PWD/$pattern"
+  done
+  cd - >/dev/null
+}
+
diff --git a/pkgs/development/interpreters/lua-5/wrap-lua.nix b/pkgs/development/interpreters/lua-5/wrap-lua.nix
index b6e24a44ee65..c5e7c806cd17 100644
--- a/pkgs/development/interpreters/lua-5/wrap-lua.nix
+++ b/pkgs/development/interpreters/lua-5/wrap-lua.nix
@@ -11,6 +11,4 @@ makeSetupHook {
   propagatedBuildInputs = [ makeWrapper ];
   substitutions.executable = lua.interpreter;
   substitutions.lua = lua;
-  substitutions.LuaPathSearchPaths = lib.escapeShellArgs lua.LuaPathSearchPaths;
-  substitutions.LuaCPathSearchPaths = lib.escapeShellArgs lua.LuaPathSearchPaths;
 } ./wrap.sh
diff --git a/pkgs/development/interpreters/lua-5/wrap.sh b/pkgs/development/interpreters/lua-5/wrap.sh
index 5941ff4a6b98..7d59cf609577 100644
--- a/pkgs/development/interpreters/lua-5/wrap.sh
+++ b/pkgs/development/interpreters/lua-5/wrap.sh
@@ -3,6 +3,8 @@
 # variable is passed in from the buildLuarocksPackage function.
 set -e
 
+source @lua@/nix-support/utils.sh
+
 wrapLuaPrograms() {
   wrapLuaProgramsIn "$out/bin" "$out $luaPath"
 }
diff --git a/pkgs/development/interpreters/lua-5/wrapper.nix b/pkgs/development/interpreters/lua-5/wrapper.nix
index bd97e7186b97..07ea75605c0f 100644
--- a/pkgs/development/interpreters/lua-5/wrapper.nix
+++ b/pkgs/development/interpreters/lua-5/wrapper.nix
@@ -10,7 +10,7 @@
 # Create a lua executable that knows about additional packages.
 let
   env = let
-    paths =  requiredLuaModules (extraLibs ++ [ lua ] );
+    paths = [ lua ] ++ requiredLuaModules extraLibs;
   in buildEnv {
     name = "${lua.name}-env";
 
@@ -20,11 +20,11 @@ let
 
     nativeBuildInputs = [
       makeWrapper
-      (lua.pkgs.lua-setup-hook lua.LuaPathSearchPaths lua.LuaCPathSearchPaths)
     ];
 
     # we create wrapper for the binaries in the different packages
     postBuild = ''
+      source ${lua}/nix-support/utils.sh
       if [ -L "$out/bin" ]; then
           unlink "$out/bin"
       fi
diff --git a/pkgs/development/interpreters/luajit/default.nix b/pkgs/development/interpreters/luajit/default.nix
index 15bcfee3a44c..3b98e8c79014 100644
--- a/pkgs/development/interpreters/luajit/default.nix
+++ b/pkgs/development/interpreters/luajit/default.nix
@@ -3,6 +3,7 @@
 , buildPackages
 , version
 , src
+, substituteAll
 , extraMeta ? { }
 , self
 , packageOverrides ? (final: prev: {})
@@ -73,7 +74,7 @@ stdenv.mkDerivation (finalAttrs: {
     if test -n "''${dontStrip-}"; then
       # CCDEBUG must be non-empty or everything will be stripped, -g being
       # passed by nixpkgs CC wrapper is insufficient on its own
-      substituteInPlace src/Makefile --replace "#CCDEBUG= -g" "CCDEBUG= -g"
+      substituteInPlace src/Makefile --replace-fail "#CCDEBUG= -g" "CCDEBUG= -g"
     fi
   '';
 
@@ -95,6 +96,12 @@ stdenv.mkDerivation (finalAttrs: {
   env.NIX_CFLAGS_COMPILE = toString XCFLAGS;
 
   postInstall = ''
+    mkdir -p $out/nix-support
+    cp ${substituteAll {
+      src = ../lua-5/utils.sh;
+      luapathsearchpaths=lib.escapeShellArgs finalAttrs.LuaPathSearchPaths;
+      luacpathsearchpaths=lib.escapeShellArgs finalAttrs.LuaCPathSearchPaths;
+    }} $out/nix-support/utils.sh
     ( cd "$out/include"; ln -s luajit-*/* . )
     ln -s "$out"/bin/luajit-* "$out"/bin/lua
     if [[ ! -e "$out"/bin/luajit ]]; then
@@ -105,7 +112,10 @@ stdenv.mkDerivation (finalAttrs: {
   LuaPathSearchPaths    = luaPackages.luaLib.luaPathList;
   LuaCPathSearchPaths   = luaPackages.luaLib.luaCPathList;
 
-  setupHook = luaPackages.lua-setup-hook luaPackages.luaLib.luaPathList luaPackages.luaLib.luaCPathList;
+  setupHook = builtins.toFile "lua-setup-hook" ''
+      source @out@/nix-support/utils.sh
+      addEnvHooks "$hostOffset" addToLuaPath
+      '';
 
   # copied from python
   passthru = let
diff --git a/pkgs/development/interpreters/nelua/default.nix b/pkgs/development/interpreters/nelua/default.nix
index fd57cc4b46ee..07494f121b02 100644
--- a/pkgs/development/interpreters/nelua/default.nix
+++ b/pkgs/development/interpreters/nelua/default.nix
@@ -2,7 +2,7 @@
 
 stdenv.mkDerivation rec {
   pname = "nelua";
-  version = "unstable-2024-04-20";
+  version = "0-unstable-2024-04-20";
 
   src = fetchFromGitHub {
     owner = "edubart";
@@ -14,7 +14,7 @@ stdenv.mkDerivation rec {
   postPatch = ''
     substituteInPlace lualib/nelua/version.lua \
       --replace "NELUA_GIT_HASH = nil" "NELUA_GIT_HASH = '${src.rev}'" \
-      --replace "NELUA_GIT_DATE = nil" "NELUA_GIT_DATE = '${lib.removePrefix "unstable-" version}'"
+      --replace "NELUA_GIT_DATE = nil" "NELUA_GIT_DATE = '${lib.removePrefix "0-unstable-" version}'"
   '';
 
   makeFlags = [ "PREFIX=$(out)" ];
@@ -23,7 +23,10 @@ stdenv.mkDerivation rec {
 
   doCheck = true;
 
-  passthru.updateScript = unstableGitUpdater { };
+  passthru.updateScript = unstableGitUpdater {
+    # no releases, only stale "latest" tag
+    hardcodeZeroVersion = true;
+  };
 
   meta = with lib; {
     description = "Minimal, efficient, statically-typed and meta-programmable systems programming language heavily inspired by Lua, which compiles to C and native code";
diff --git a/pkgs/development/interpreters/octave/build-env.nix b/pkgs/development/interpreters/octave/build-env.nix
index 59575f95fc4b..e7da04b38144 100644
--- a/pkgs/development/interpreters/octave/build-env.nix
+++ b/pkgs/development/interpreters/octave/build-env.nix
@@ -63,6 +63,14 @@ in buildEnv {
       addPkgLocalList $out ${octave}
 
       wrapOctavePrograms "${lib.concatStringsSep " " packages}"
+      # We also need to modify the Exec= line of the desktop file, so it will point
+      # to the wrapper we generated above.
+      rm $out/share/applications # should be a symlink to ${octave}/share/applications
+      mkdir $out/share/applications
+      substitute \
+        ${octave}/share/applications/org.octave.Octave.desktop \
+        $out/share/applications/org.octave.Octave.desktop \
+        --replace-fail ${octave}/bin/octave $out/bin/octave
      '' + postBuild;
 
   inherit (octave) meta;
diff --git a/pkgs/development/interpreters/php/8.2.nix b/pkgs/development/interpreters/php/8.2.nix
index d839e372570a..a63f1391616d 100644
--- a/pkgs/development/interpreters/php/8.2.nix
+++ b/pkgs/development/interpreters/php/8.2.nix
@@ -2,8 +2,8 @@
 
 let
   base = callPackage ./generic.nix (_args // {
-    version = "8.2.18";
-    hash = "sha256-ygsHwlQgAyD1GKxbPfVAqc8U2GbzyT7cMBO1Lgb6x5Y=";
+    version = "8.2.19";
+    hash = "sha256-PBj3zlG3x7JreX4flwedOGswNH6wToF/XmyOmydeKmo=";
   });
 in
 base.withExtensions ({ all, ... }: with all; ([
diff --git a/pkgs/development/interpreters/php/8.3.nix b/pkgs/development/interpreters/php/8.3.nix
index d7ac07c1fb55..1da9841f7894 100644
--- a/pkgs/development/interpreters/php/8.3.nix
+++ b/pkgs/development/interpreters/php/8.3.nix
@@ -2,8 +2,8 @@
 
 let
   base = callPackage ./generic.nix (_args // {
-    version = "8.3.6";
-    hash = "sha256-YySx3djrMCWwQQNLiNwrwLSBmwAiEp7q66N+R4AxCLw=";
+    version = "8.3.7";
+    hash = "sha256-AcIM3hxaVpZlGHXtIvUHhJZ5+6dA+MQhYWt9Q9f3l9o=";
   });
 in
 base.withExtensions ({ all, ... }: with all; ([
diff --git a/pkgs/development/interpreters/picoc/default.nix b/pkgs/development/interpreters/picoc/default.nix
index 51bf82aafbbe..d27efe1f2b82 100644
--- a/pkgs/development/interpreters/picoc/default.nix
+++ b/pkgs/development/interpreters/picoc/default.nix
@@ -1,40 +1,43 @@
-{ lib, stdenv, fetchFromGitHub, readline }:
+{ lib, stdenv, fetchFromGitLab, readline }:
 
-stdenv.mkDerivation rec {
+stdenv.mkDerivation {
   pname = "picoc";
-  version = "2015-05-04";
+  version = "2.1-unstable-2018-06-05";
 
-  src = fetchFromGitHub {
-    sha256 = "01w3jwl0vn9fsmh7p20ad4nl9ljzgfn576yvncd9pk9frx3pd8y4";
-    rev = "4555e8456f020554bcac50751fbb9b36c7d8c13b";
-    repo = "picoc";
+  src = fetchFromGitLab {
     owner = "zsaleeba";
+    repo = "picoc";
+    rev = "dc85a51e9211cfb644f0a85ea9546e15dc1141c3";
+    hash = "sha256-yWPRbJLT09E7pqqs9E2k48ECoRR2nhcgTgK5pumkrxo=";
   };
 
   buildInputs = [ readline ];
 
   makeFlags = [ "CC=${stdenv.cc.targetPrefix}cc" ];
 
-  postPatch = ''
-    substituteInPlace Makefile --replace '`svnversion -n`' "${version}"
-  '';
+  env.NIX_CFLAGS_COMPILE = toString (lib.optionals stdenv.isDarwin [
+    "-Wno-error=implicit-function-declaration"
+  ]);
 
   enableParallelBuilding = true;
 
   # Tests are currently broken on i686 see
   # https://hydra.nixos.org/build/24003763/nixlog/1
-  doCheck = if stdenv.isi686 then false else true;
+  doCheck = !stdenv.isi686 && !stdenv.isAarch64;
   checkTarget = "test";
 
   installPhase = ''
+    runHook preInstall
+
     install -Dm755 picoc $out/bin/picoc
 
     mkdir -p $out/include
     install -m644 *.h $out/include
+
+    runHook postInstall
   '';
 
   meta = with lib; {
-    broken = (stdenv.isLinux && stdenv.isAarch64);
     description = "Very small C interpreter for scripting";
     mainProgram = "picoc";
     longDescription = ''
@@ -47,7 +50,7 @@ stdenv.mkDerivation rec {
       very sparing of data space. This means it can work well in small embedded
       devices.
     '';
-    homepage = "https://github.com/zsaleeba/picoc";
+    homepage = "https://gitlab.com/zsaleeba/picoc";
     downloadPage = "https://code.google.com/p/picoc/downloads/list";
     license = licenses.bsd3;
     platforms = platforms.unix;
diff --git a/pkgs/development/interpreters/python/default.nix b/pkgs/development/interpreters/python/default.nix
index 4cc3f6f4e59e..86eaf142d920 100644
--- a/pkgs/development/interpreters/python/default.nix
+++ b/pkgs/development/interpreters/python/default.nix
@@ -93,9 +93,9 @@ in {
       major = "3";
       minor = "13";
       patch = "0";
-      suffix = "a6";
+      suffix = "b1";
     };
-    hash = "sha256-S+85PXKygaz4HTnXRV8AA26GYZPfohpO05cP0PTLoEg=";
+    hash = "sha256-unFqxWsDm1Ra1KkM5Yaleql4aTZFU3Ru8kRXKM7sGY4=";
     inherit (darwin) configd;
     inherit passthruFun;
   };
diff --git a/pkgs/development/interpreters/python/pypy/default.nix b/pkgs/development/interpreters/python/pypy/default.nix
index 9b414944bba5..0380c29e9e75 100644
--- a/pkgs/development/interpreters/python/pypy/default.nix
+++ b/pkgs/development/interpreters/python/pypy/default.nix
@@ -42,7 +42,7 @@ let
   };
   pname = passthru.executable;
   version = with sourceVersion; "${major}.${minor}.${patch}";
-  pythonForPypy = python.withPackages (ppkgs: [ ppkgs.pycparser ]);
+  pythonForPypy = python.withPackages (ppkgs: [ ]);
 
 in with passthru; stdenv.mkDerivation rec {
   inherit pname version;
diff --git a/pkgs/development/interpreters/python/python-packages-base.nix b/pkgs/development/interpreters/python/python-packages-base.nix
index e2bd6cd5a5ab..2306292eb8c8 100644
--- a/pkgs/development/interpreters/python/python-packages-base.nix
+++ b/pkgs/development/interpreters/python/python-packages-base.nix
@@ -68,7 +68,10 @@ let
       passthru = (oldAttrs.passthru or {})// {
         pythonModule = python;
         pythonPath = [ ]; # Deprecated, for compatibility.
-        requiredPythonModules = requiredPythonModules drv.propagatedBuildInputs;
+        requiredPythonModules =
+          builtins.addErrorContext
+          "while calculating requiredPythonModules for ${drv.name or drv.pname}:"
+          (requiredPythonModules drv.propagatedBuildInputs);
       };
     });
 
diff --git a/pkgs/development/interpreters/python/rustpython/Cargo.lock b/pkgs/development/interpreters/python/rustpython/Cargo.lock
index 36335bb395d1..01118ff8a98e 100644
--- a/pkgs/development/interpreters/python/rustpython/Cargo.lock
+++ b/pkgs/development/interpreters/python/rustpython/Cargo.lock
@@ -22,13 +22,15 @@ checksum = "aae1277d39aeec15cb388266ecc24b11c80469deae6067e17a1a7aa9e5c1f234"
 
 [[package]]
 name = "ahash"
-version = "0.7.6"
+version = "0.8.11"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "fcb51a0695d8f838b1ee009b3fbf66bda078cd64590202a864a8f3e8c4315c47"
+checksum = "e89da841a80418a9b391ebaea17f5c112ffaaa96f621d2c285b5174da76b9011"
 dependencies = [
- "getrandom 0.2.8",
+ "cfg-if",
+ "getrandom",
  "once_cell",
  "version_check",
+ "zerocopy",
 ]
 
 [[package]]
@@ -41,6 +43,12 @@ dependencies = [
 ]
 
 [[package]]
+name = "android-tzdata"
+version = "0.1.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "e999941b234f3131b00bc13c22d06e8c5ff726d1b6318ac7eb276997bbb4fef0"
+
+[[package]]
 name = "android_system_properties"
 version = "0.1.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -125,9 +133,9 @@ checksum = "bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a"
 
 [[package]]
 name = "bitflags"
-version = "2.3.1"
+version = "2.5.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6776fc96284a0bb647b615056fc496d1fe1644a7ab01829818a6d91cae888b84"
+checksum = "cf4b9d6a944f767f8e5e0db018570623c85f3d925ac718db4e06d0187adb21c1"
 
 [[package]]
 name = "blake2"
@@ -135,17 +143,7 @@ version = "0.10.6"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "46502ad458c9a52b69d4d4d32775c788b7a1b85e8bc9d482d92250fc0e3f8efe"
 dependencies = [
- "digest 0.10.6",
-]
-
-[[package]]
-name = "block-buffer"
-version = "0.9.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4152116fd6e9dadb291ae18fc1ec3575ed6d84c29642d97890f4b4a3417297e4"
-dependencies = [
- "block-padding",
- "generic-array",
+ "digest",
 ]
 
 [[package]]
@@ -158,12 +156,6 @@ dependencies = [
 ]
 
 [[package]]
-name = "block-padding"
-version = "0.2.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8d696c370c750c948ada61c69a0ee2cbbb9c50b1019ddb86d9317157a99c2cae"
-
-[[package]]
 name = "bstr"
 version = "0.2.17"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -236,18 +228,23 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd"
 
 [[package]]
+name = "cfg_aliases"
+version = "0.1.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "fd16c4719339c4530435d38e511904438d07cce7950afa3718a84ac36c10e89e"
+
+[[package]]
 name = "chrono"
-version = "0.4.23"
+version = "0.4.37"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "16b0a3d9ed01224b22057780a37bb8c5dbfe1be8ba48678e7bf57ec4b385411f"
+checksum = "8a0d04d43504c61aa6c7531f1871dd0d418d91130162063b789da00fd7057a5e"
 dependencies = [
+ "android-tzdata",
  "iana-time-zone",
  "js-sys",
- "num-integer",
  "num-traits",
- "time",
  "wasm-bindgen",
- "winapi",
+ "windows-targets 0.52.0",
 ]
 
 [[package]]
@@ -267,13 +264,11 @@ dependencies = [
 
 [[package]]
 name = "clipboard-win"
-version = "4.5.0"
+version = "5.0.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7191c27c2357d9b7ef96baac1773290d4ca63b24205b82a3fd8a0637afcf0362"
+checksum = "c57002a5d9be777c1ef967e33674dac9ebd310d8893e4e3437b14d5f0f6372cc"
 dependencies = [
  "error-code",
- "str-buf",
- "winapi",
 ]
 
 [[package]]
@@ -340,18 +335,6 @@ dependencies = [
 ]
 
 [[package]]
-name = "cpython"
-version = "0.7.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3052106c29da7390237bc2310c1928335733b286287754ea85e6093d2495280e"
-dependencies = [
- "libc",
- "num-traits",
- "paste",
- "python3-sys",
-]
-
-[[package]]
 name = "cranelift"
 version = "0.88.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -548,12 +531,9 @@ dependencies = [
 
 [[package]]
 name = "crossbeam-utils"
-version = "0.8.16"
+version = "0.8.19"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5a22b2d63d4d1dc0b7f1b6b2747dd0088008a9be28b6ddf0b1e7d335e3037294"
-dependencies = [
- "cfg-if",
-]
+checksum = "248e3bacc7dc6baa3b21e405ee045c3047101a49145e7e9eca583ab4c2ca5345"
 
 [[package]]
 name = "crunchy"
@@ -616,7 +596,7 @@ dependencies = [
  "proc-macro2",
  "quote",
  "scratch",
- "syn",
+ "syn 1.0.109",
 ]
 
 [[package]]
@@ -633,7 +613,7 @@ checksum = "086c685979a698443656e5cf7856c95c642295a38599f12fb1ff76fb28d19892"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn",
+ "syn 1.0.109",
 ]
 
 [[package]]
@@ -646,16 +626,7 @@ dependencies = [
  "proc-macro2",
  "quote",
  "rustc_version",
- "syn",
-]
-
-[[package]]
-name = "digest"
-version = "0.9.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d3dd60d1080a57a05ab032377049e0591415d2b31afd7028356dbf3cc6dcb066"
-dependencies = [
- "generic-array",
+ "syn 1.0.109",
 ]
 
 [[package]]
@@ -664,7 +635,7 @@ version = "0.10.6"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "8168378f4e5023e7218c89c891c0fd8ecdb5e5e4f18cb78f38cf245dd021e76f"
 dependencies = [
- "block-buffer 0.10.3",
+ "block-buffer",
  "crypto-common",
  "subtle",
 ]
@@ -692,14 +663,14 @@ dependencies = [
 
 [[package]]
 name = "dns-lookup"
-version = "1.0.8"
+version = "2.0.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "53ecafc952c4528d9b51a458d1a8904b81783feff9fde08ab6ed2545ff396872"
+checksum = "e5766087c2235fec47fafa4cfecc81e494ee679d0fd4a59887ea0919bfb0e4fc"
 dependencies = [
  "cfg-if",
  "libc",
  "socket2",
- "winapi",
+ "windows-sys 0.48.0",
 ]
 
 [[package]]
@@ -723,7 +694,7 @@ dependencies = [
  "base64",
  "proc-macro2",
  "quote",
- "syn",
+ "syn 1.0.109",
 ]
 
 [[package]]
@@ -750,35 +721,26 @@ dependencies = [
 ]
 
 [[package]]
-name = "errno"
-version = "0.3.1"
+name = "equivalent"
+version = "1.0.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4bcfec3a70f97c962c307b2d2c56e358cf1d00b558d74262b5f929ee8cc7e73a"
-dependencies = [
- "errno-dragonfly",
- "libc",
- "windows-sys 0.48.0",
-]
+checksum = "5443807d6dff69373d433ab9ef5378ad8df50ca6298caf15de6e52e24aaf54d5"
 
 [[package]]
-name = "errno-dragonfly"
-version = "0.1.2"
+name = "errno"
+version = "0.3.8"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "aa68f1b12764fab894d2755d2518754e71b4fd80ecfb822714a1206c2aab39bf"
+checksum = "a258e46cdc063eb8519c00b9fc845fc47bcfca4130e2f08e88665ceda8474245"
 dependencies = [
- "cc",
  "libc",
+ "windows-sys 0.52.0",
 ]
 
 [[package]]
 name = "error-code"
-version = "2.3.1"
+version = "3.0.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "64f18991e7bf11e7ffee451b5318b5c1a73c52d0d0ada6e5a3017c8c1ced6a21"
-dependencies = [
- "libc",
- "str-buf",
-]
+checksum = "281e452d3bad4005426416cdba5ccfd4f5c1280e10099e21db27f7c1c28347fc"
 
 [[package]]
 name = "exitcode"
@@ -788,13 +750,13 @@ checksum = "de853764b47027c2e862a995c34978ffa63c1501f2e15f987ba11bd4f9bba193"
 
 [[package]]
 name = "fd-lock"
-version = "3.0.12"
+version = "4.0.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "39ae6b3d9530211fb3b12a95374b8b0823be812f53d09e18c5675c0146b09642"
+checksum = "7e5768da2206272c81ef0b5e951a41862938a6070da63bcea197899942d3b947"
 dependencies = [
  "cfg-if",
  "rustix",
- "windows-sys 0.48.0",
+ "windows-sys 0.52.0",
 ]
 
 [[package]]
@@ -818,7 +780,7 @@ checksum = "36b732da54fd4ea34452f2431cf464ac7be94ca4b339c9cd3d3d12eb06fe7aab"
 dependencies = [
  "flame",
  "quote",
- "syn",
+ "syn 1.0.109",
 ]
 
 [[package]]
@@ -828,16 +790,16 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "c3cc29a6c0dfa26d3a0e80021edda5671eeed79381130897737cdd273ea18909"
 dependencies = [
  "flame",
- "indexmap",
+ "indexmap 1.9.3",
  "serde",
  "serde_json",
 ]
 
 [[package]]
 name = "flate2"
-version = "1.0.25"
+version = "1.0.28"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a8a2db397cb1c8772f31494cb8917e48cd1e64f0fa7efac59fbd741a0a8ce841"
+checksum = "46303f565772937ffe1d394a4fac6f411c6013172fadde9dcdb1e147a086940e"
 dependencies = [
  "crc32fast",
  "libz-sys",
@@ -895,26 +857,24 @@ dependencies = [
 ]
 
 [[package]]
-name = "getrandom"
-version = "0.1.16"
+name = "getopts"
+version = "0.2.21"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8fc3cb4d91f53b50155bdcfd23f6a4c39ae1969c2ae85982b135750cccaf5fce"
+checksum = "14dbbfd5c71d70241ecf9e6f13737f7b5ce823821063188d7e46c41d371eebd5"
 dependencies = [
- "cfg-if",
- "libc",
- "wasi 0.9.0+wasi-snapshot-preview1",
+ "unicode-width",
 ]
 
 [[package]]
 name = "getrandom"
-version = "0.2.8"
+version = "0.2.14"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c05aeb6a22b8f62540c194aac980f2115af067bfe15a0734d7277a768d396b31"
+checksum = "94b22e06ecb0110981051723910cbf0b5f5e09a2062dd7663334ee79a9d1286c"
 dependencies = [
  "cfg-if",
  "js-sys",
  "libc",
- "wasi 0.11.0+wasi-snapshot-preview1",
+ "wasi",
  "wasm-bindgen",
 ]
 
@@ -937,6 +897,12 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "8a9ee70c43aaf417c914396645a0fa852624801b24ebb7ae78fe8272889ac888"
 
 [[package]]
+name = "hashbrown"
+version = "0.14.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "290f1a1d9242c78d09ce40a5e87e7554ee637af1351968159f4952f028f75604"
+
+[[package]]
 name = "heck"
 version = "0.4.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -961,12 +927,6 @@ dependencies = [
 ]
 
 [[package]]
-name = "hermit-abi"
-version = "0.3.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "fed44880c466736ef9a5c5b5facefb5ed0785676d0c02d612db14e54f0d84286"
-
-[[package]]
 name = "hex"
 version = "0.4.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -979,6 +939,15 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "dfa686283ad6dd069f105e5ab091b04c62850d3e4cf5d67debad1933f55023df"
 
 [[package]]
+name = "home"
+version = "0.5.9"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "e3d1354bf6b7235cb4a0576c2619fd4ed18183f689b12b006a0ee7329eeff9a5"
+dependencies = [
+ "windows-sys 0.52.0",
+]
+
+[[package]]
 name = "iana-time-zone"
 version = "0.1.53"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -1004,65 +973,69 @@ dependencies = [
 
 [[package]]
 name = "indexmap"
-version = "1.9.2"
+version = "1.9.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1885e79c1fc4b10f0e172c475f458b7f7b93061064d98c3293e98c5ba0c8b399"
+checksum = "bd070e393353796e801d209ad339e89596eb4c8d430d18ede6a1cced8fafbd99"
 dependencies = [
  "autocfg",
- "hashbrown",
+ "hashbrown 0.12.3",
 ]
 
 [[package]]
-name = "insta"
-version = "1.28.0"
+name = "indexmap"
+version = "2.2.6"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "fea5b3894afe466b4bcf0388630fc15e11938a6074af0cd637c825ba2ec8a099"
+checksum = "168fb715dda47215e360912c096649d23d58bf392ac62f73919e831745e40f26"
 dependencies = [
- "console",
- "lazy_static 1.4.0",
- "linked-hash-map",
- "similar",
- "yaml-rust",
+ "equivalent",
+ "hashbrown 0.14.3",
 ]
 
 [[package]]
-name = "io-lifetimes"
-version = "1.0.10"
+name = "indoc"
+version = "2.0.4"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "1e186cfbae8084e513daff4240b4797e342f988cecda4fb6c939150f96315fd8"
+
+[[package]]
+name = "insta"
+version = "1.38.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9c66c74d2ae7e79a5a8f7ac924adbe38ee42a859c6539ad869eb51f0b52dc220"
+checksum = "3eab73f58e59ca6526037208f0e98851159ec1633cf17b6cd2e1f2c3fd5d53cc"
 dependencies = [
- "hermit-abi 0.3.1",
- "libc",
- "windows-sys 0.48.0",
+ "console",
+ "lazy_static 1.4.0",
+ "linked-hash-map",
+ "similar",
 ]
 
 [[package]]
 name = "is-macro"
-version = "0.2.2"
+version = "0.3.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8a7d079e129b77477a49c5c4f1cfe9ce6c2c909ef52520693e8e811a714c7b20"
+checksum = "f4467ed1321b310c2625c5aa6c1b1ffc5de4d9e42668cf697a08fb033ee8265e"
 dependencies = [
  "Inflector",
- "pmutil",
+ "pmutil 0.6.1",
  "proc-macro2",
  "quote",
- "syn",
+ "syn 2.0.32",
 ]
 
 [[package]]
 name = "itertools"
-version = "0.9.0"
+version = "0.10.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "284f18f85651fe11e8a991b2adb42cb078325c996ed026d994719efcfca1d54b"
+checksum = "b0fd2260e829bddf4cb6ea802289de2f86d6a7a690192fbe91b3f46e0f2c8473"
 dependencies = [
  "either",
 ]
 
 [[package]]
 name = "itertools"
-version = "0.10.5"
+version = "0.11.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b0fd2260e829bddf4cb6ea802289de2f86d6a7a690192fbe91b3f46e0f2c8473"
+checksum = "b1c173a5686ce8bfa551b3563d0c2170bf24ca44da99c7ca4bfdab5418c3fe57"
 dependencies = [
  "either",
 ]
@@ -1141,9 +1114,9 @@ dependencies = [
 
 [[package]]
 name = "libc"
-version = "0.2.141"
+version = "0.2.153"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3304a64d199bb964be99741b7a14d26972741915b3649639149b2479bb46f4b5"
+checksum = "9c198f91728a82281a64e1f4f9eeb25d82cb32a5de251c6bd1b5154d63a8e7bd"
 
 [[package]]
 name = "libffi"
@@ -1204,9 +1177,9 @@ checksum = "0717cef1bc8b636c6e1c1bbdefc09e6322da8a9321966e8928ef80d20f7f770f"
 
 [[package]]
 name = "linux-raw-sys"
-version = "0.3.1"
+version = "0.4.12"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d59d8c75012853d2e872fb56bc8a2e53718e2cafe1a4c823143141c6d90c322f"
+checksum = "c4cd1a83af159aa67994778be9070f0ae1bd732942279cabb14f86f986a21456"
 
 [[package]]
 name = "lock_api"
@@ -1229,18 +1202,18 @@ dependencies = [
 
 [[package]]
 name = "lz4_flex"
-version = "0.9.5"
+version = "0.11.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1a8cbbb2831780bc3b9c15a41f5b49222ef756b6730a95f3decfdd15903eb5a3"
+checksum = "3ea9b256699eda7b0387ffbc776dd625e28bde3918446381781245b7a50349d8"
 dependencies = [
  "twox-hash",
 ]
 
 [[package]]
 name = "mac_address"
-version = "1.1.4"
+version = "1.1.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b238e3235c8382b7653c6408ed1b08dd379bdb9fdf990fb0bbae3db2cc0ae963"
+checksum = "4863ee94f19ed315bf3bc00299338d857d4b5bc856af375cc97d237382ad3856"
 dependencies = [
  "nix 0.23.2",
  "winapi",
@@ -1257,9 +1230,9 @@ dependencies = [
 
 [[package]]
 name = "malachite"
-version = "0.3.2"
+version = "0.4.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f6cf7f4730c30071ba374fac86ad35b1cb7a0716f774737768667ea3fa1828e3"
+checksum = "220cb36c52aa6eff45559df497abe0e2a4c1209f92279a746a399f622d7b95c7"
 dependencies = [
  "malachite-base",
  "malachite-nz",
@@ -1268,22 +1241,19 @@ dependencies = [
 
 [[package]]
 name = "malachite-base"
-version = "0.3.2"
+version = "0.4.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2b06bfa98a4b4802af5a4263b4ad4660e28e51e8490f6354eb9336c70767e1c5"
+checksum = "6538136c5daf04126d6be4899f7fe4879b7f8de896dd1b4210fe6de5b94f2555"
 dependencies = [
- "itertools 0.9.0",
- "rand 0.7.3",
- "rand_chacha 0.2.2",
+ "itertools 0.11.0",
  "ryu",
- "sha3 0.9.1",
 ]
 
 [[package]]
 name = "malachite-bigint"
-version = "0.1.0"
+version = "0.2.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8a5110aee54537b0cef214efbebdd7df79b7408db8eef4f6a4b6db9d0d8fc01b"
+checksum = "17703a19c80bbdd0b7919f0f104f3b0597f7de4fc4e90a477c15366a5ba03faa"
 dependencies = [
  "derive_more",
  "malachite",
@@ -1294,22 +1264,22 @@ dependencies = [
 
 [[package]]
 name = "malachite-nz"
-version = "0.3.2"
+version = "0.4.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c89e21c64b7af5be3dc8cef16f786243faf59459fe4ba93b44efdeb264e5ade4"
+checksum = "5f0b05577b7a3f09433106460b10304f97fc572f0baabf6640e6cb1e23f5fc52"
 dependencies = [
  "embed-doc-image",
- "itertools 0.9.0",
+ "itertools 0.11.0",
  "malachite-base",
 ]
 
 [[package]]
 name = "malachite-q"
-version = "0.3.2"
+version = "0.4.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3755e541d5134b5016594c9043094172c4dda9259b3ce824a7b8101941850360"
+checksum = "a1cfdb4016292e6acd832eaee261175f3af8bbee62afeefe4420ebce4c440cb5"
 dependencies = [
- "itertools 0.9.0",
+ "itertools 0.11.0",
  "malachite-base",
  "malachite-nz",
 ]
@@ -1332,14 +1302,14 @@ version = "0.10.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "6365506850d44bff6e2fbcb5176cf63650e48bd45ef2fe2665ae1570e0f4b9ca"
 dependencies = [
- "digest 0.10.6",
+ "digest",
 ]
 
 [[package]]
 name = "memchr"
-version = "2.5.0"
+version = "2.7.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2dffe52ecf27772e601905b7522cb4ef790d2cc203488bbd0e2fe85fcb74566d"
+checksum = "6c8640c5d730cb13ebd907d8d04b52f55ac9a2eec55b440c8892f40d56c76c1d"
 
 [[package]]
 name = "memmap2"
@@ -1369,10 +1339,19 @@ dependencies = [
 ]
 
 [[package]]
+name = "memoffset"
+version = "0.9.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "488016bfae457b036d996092f6cb448677611ce4449e970ceaf42695203f218a"
+dependencies = [
+ "autocfg",
+]
+
+[[package]]
 name = "miniz_oxide"
-version = "0.6.2"
+version = "0.7.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b275950c28b37e794e8c55d88aeb5e139d0ce23fdbbeda68f8d7174abdf9e8fa"
+checksum = "9d811f3e15f28568be3407c8e7fdb6514c1cda3cb30683f15b6a1a1dc4ea14a7"
 dependencies = [
  "adler",
 ]
@@ -1383,7 +1362,7 @@ version = "2.0.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "12ca7f22ed370d5991a9caec16a83187e865bc8a532f889670337d5a5689e3a1"
 dependencies = [
- "rand_core 0.6.4",
+ "rand_core",
 ]
 
 [[package]]
@@ -1410,16 +1389,26 @@ dependencies = [
 
 [[package]]
 name = "nix"
-version = "0.26.2"
+version = "0.27.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "bfdda3d196821d6af13126e40375cdf7da646a96114af134d5f417a9a1dc8e1a"
+checksum = "2eb04e9c688eff1c89d72b407f168cf79bb9e867a9d3323ed6c01519eb9cc053"
 dependencies = [
- "bitflags 1.3.2",
+ "bitflags 2.5.0",
  "cfg-if",
  "libc",
- "memoffset 0.7.1",
- "pin-utils",
- "static_assertions",
+ "memoffset 0.9.1",
+]
+
+[[package]]
+name = "nix"
+version = "0.28.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "ab2156c4fce2f8df6c499cc1c763e4394b7482525bf2a9701c9d79d215f519e4"
+dependencies = [
+ "bitflags 2.5.0",
+ "cfg-if",
+ "cfg_aliases",
+ "libc",
 ]
 
 [[package]]
@@ -1471,30 +1460,30 @@ dependencies = [
 
 [[package]]
 name = "num_enum"
-version = "0.5.9"
+version = "0.7.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8d829733185c1ca374f17e52b762f24f535ec625d2cc1f070e34c8a9068f341b"
+checksum = "02339744ee7253741199f897151b38e72257d13802d4ee837285cc2990a90845"
 dependencies = [
  "num_enum_derive",
 ]
 
 [[package]]
 name = "num_enum_derive"
-version = "0.5.9"
+version = "0.7.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2be1598bf1c313dcdd12092e3f1920f463462525a21b7b4e11b4168353d0123e"
+checksum = "681030a937600a36906c185595136d26abfebb4aa9c65701cefcaf8578bb982b"
 dependencies = [
  "proc-macro-crate",
  "proc-macro2",
  "quote",
- "syn",
+ "syn 2.0.32",
 ]
 
 [[package]]
 name = "once_cell"
-version = "1.17.1"
+version = "1.19.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b7e5500299e16ebb147ae15a00a942af264cf3688f47923b8fc2cd5858f23ad3"
+checksum = "3fdb12b2476b595f9358c5161aa467c2438859caa136dec86c26fdd2efe17b92"
 
 [[package]]
 name = "oorandom"
@@ -1503,18 +1492,12 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "0ab1bc2a289d34bd04a330323ac98a1b4bc82c9d9fcb1e66b63caa84da26b575"
 
 [[package]]
-name = "opaque-debug"
-version = "0.3.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "624a8340c38c1b80fd549087862da4ba43e08858af025b236e509b6649fc13d5"
-
-[[package]]
 name = "openssl"
-version = "0.10.55"
+version = "0.10.62"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "345df152bc43501c5eb9e4654ff05f794effb78d4efe3d53abc158baddc0703d"
+checksum = "8cde4d2d9200ad5909f8dac647e29482e07c3a35de8a13fce7c9c7747ad9f671"
 dependencies = [
- "bitflags 1.3.2",
+ "bitflags 2.5.0",
  "cfg-if",
  "foreign-types",
  "libc",
@@ -1531,7 +1514,7 @@ checksum = "b501e44f11665960c7e7fcf062c7d96a14ade4aa98116c004b2e37b5be7d736c"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn",
+ "syn 1.0.109",
 ]
 
 [[package]]
@@ -1542,18 +1525,18 @@ checksum = "ff011a302c396a5197692431fc1948019154afc178baf7d8e37367442a4601cf"
 
 [[package]]
 name = "openssl-src"
-version = "111.25.0+1.1.1t"
+version = "300.2.1+3.2.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3173cd3626c43e3854b1b727422a276e568d9ec5fe8cec197822cf52cfb743d6"
+checksum = "3fe476c29791a5ca0d1273c697e96085bbabbbea2ef7afd5617e78a4b40332d3"
 dependencies = [
  "cc",
 ]
 
 [[package]]
 name = "openssl-sys"
-version = "0.9.90"
+version = "0.9.98"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "374533b0e45f3a7ced10fcaeccca020e66656bc03dac384f852e4e5a7a8104a6"
+checksum = "c1665caf8ab2dc9aef43d1c0023bd904633a6a05cb30b0ad59bec2ae986e57a7"
 dependencies = [
  "cc",
  "libc",
@@ -1633,7 +1616,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "b1181c94580fa345f50f19d738aaa39c0ed30a600d95cb2d3e23f94266f14fbf"
 dependencies = [
  "phf_shared",
- "rand 0.8.5",
+ "rand",
 ]
 
 [[package]]
@@ -1646,12 +1629,6 @@ dependencies = [
 ]
 
 [[package]]
-name = "pin-utils"
-version = "0.1.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8b870d8c151b6f2fb93e84a13146138f05d02ed11c7e7c54f8826aaaf7c9f184"
-
-[[package]]
 name = "pkg-config"
 version = "0.3.26"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -1693,7 +1670,18 @@ checksum = "3894e5d549cccbe44afecf72922f277f603cd4bb0219c8342631ef18fffbe004"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn",
+ "syn 1.0.109",
+]
+
+[[package]]
+name = "pmutil"
+version = "0.6.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "52a40bc70c2c58040d2d8b167ba9a5ff59fc9dab7ad44771cfde3dcfde7a09c6"
+dependencies = [
+ "proc-macro2",
+ "quote",
+ "syn 2.0.32",
 ]
 
 [[package]]
@@ -1714,34 +1702,85 @@ dependencies = [
 
 [[package]]
 name = "proc-macro2"
-version = "1.0.66"
+version = "1.0.79"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "18fb31db3f9bddb2ea821cde30a9f70117e3f119938b5ee630b7403aa6e2ead9"
+checksum = "e835ff2298f5721608eb1a980ecaee1aef2c132bf95ecc026a11b7bf3c01c02e"
 dependencies = [
  "unicode-ident",
 ]
 
 [[package]]
 name = "puruspe"
-version = "0.1.5"
+version = "0.2.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3b7e158a385023d209d6d5f2585c4b468f6dcb3dd5aca9b75c4f1678c05bb375"
+checksum = "06a1eed715f625eaa95fba5e049dcf7bc06fa396d6d2e55015b3764e234dfd3f"
 
 [[package]]
-name = "python3-sys"
-version = "0.7.1"
+name = "pyo3"
+version = "0.20.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "49f8b50d72fb3015735aa403eebf19bbd72c093bfeeae24ee798be5f2f1aab52"
+checksum = "9a89dc7a5850d0e983be1ec2a463a171d20990487c3cfcd68b5363f1ee3d6fe0"
 dependencies = [
+ "cfg-if",
+ "indoc",
  "libc",
- "regex",
+ "memoffset 0.9.1",
+ "parking_lot",
+ "pyo3-build-config",
+ "pyo3-ffi",
+ "pyo3-macros",
+ "unindent",
+]
+
+[[package]]
+name = "pyo3-build-config"
+version = "0.20.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "07426f0d8fe5a601f26293f300afd1a7b1ed5e78b2a705870c5f30893c5163be"
+dependencies = [
+ "once_cell",
+ "target-lexicon",
+]
+
+[[package]]
+name = "pyo3-ffi"
+version = "0.20.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "dbb7dec17e17766b46bca4f1a4215a85006b4c2ecde122076c562dd058da6cf1"
+dependencies = [
+ "libc",
+ "pyo3-build-config",
+]
+
+[[package]]
+name = "pyo3-macros"
+version = "0.20.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "05f738b4e40d50b5711957f142878cfa0f28e054aa0ebdfc3fd137a843f74ed3"
+dependencies = [
+ "proc-macro2",
+ "pyo3-macros-backend",
+ "quote",
+ "syn 2.0.32",
+]
+
+[[package]]
+name = "pyo3-macros-backend"
+version = "0.20.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "0fc910d4851847827daf9d6cdd4a823fbdaab5b8818325c5e97a86da79e8881f"
+dependencies = [
+ "heck",
+ "proc-macro2",
+ "quote",
+ "syn 2.0.32",
 ]
 
 [[package]]
 name = "quote"
-version = "1.0.23"
+version = "1.0.33"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8856d8364d252a14d474036ea1358d63c9e6965c8e5c1885c18f73d70bff9c7b"
+checksum = "5267fca4496028628a95160fc423a33e8b2e6af8a5302579e322e4b520293cae"
 dependencies = [
  "proc-macro2",
 ]
@@ -1764,36 +1803,13 @@ dependencies = [
 
 [[package]]
 name = "rand"
-version = "0.7.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6a6b1679d49b24bbfe0c803429aa1874472f50d9b363131f0e89fc356b544d03"
-dependencies = [
- "getrandom 0.1.16",
- "libc",
- "rand_chacha 0.2.2",
- "rand_core 0.5.1",
- "rand_hc",
-]
-
-[[package]]
-name = "rand"
 version = "0.8.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "34af8d1a0e25924bc5b7c43c079c942339d8f0a8b57c39049bef581b46327404"
 dependencies = [
  "libc",
- "rand_chacha 0.3.1",
- "rand_core 0.6.4",
-]
-
-[[package]]
-name = "rand_chacha"
-version = "0.2.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f4c8ed856279c9737206bf725bf36935d8666ead7aa69b52be55af369d193402"
-dependencies = [
- "ppv-lite86",
- "rand_core 0.5.1",
+ "rand_chacha",
+ "rand_core",
 ]
 
 [[package]]
@@ -1803,16 +1819,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "e6c10a63a0fa32252be49d21e7709d4d4baf8d231c2dbce1eaa8141b9b127d88"
 dependencies = [
  "ppv-lite86",
- "rand_core 0.6.4",
-]
-
-[[package]]
-name = "rand_core"
-version = "0.5.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "90bde5296fc891b0cef12a6d03ddccc162ce7b2aff54160af9338f8d40df6d19"
-dependencies = [
- "getrandom 0.1.16",
+ "rand_core",
 ]
 
 [[package]]
@@ -1821,16 +1828,7 @@ version = "0.6.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "ec0be4795e2f6a28069bec0b5ff3e2ac9bafc99e6a9a7dc3547996c5c816922c"
 dependencies = [
- "getrandom 0.2.8",
-]
-
-[[package]]
-name = "rand_hc"
-version = "0.2.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ca3129af7b92a17112d59ad498c6f81eaf463253766b90396d39ea7a39d6613c"
-dependencies = [
- "rand_core 0.5.1",
+ "getrandom",
 ]
 
 [[package]]
@@ -1876,7 +1874,7 @@ version = "0.4.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "b033d837a7cf162d7993aded9304e30a83213c648b6e389db233191f891e5c2b"
 dependencies = [
- "getrandom 0.2.8",
+ "getrandom",
  "redox_syscall 0.2.16",
  "thiserror",
 ]
@@ -1930,23 +1928,23 @@ dependencies = [
 
 [[package]]
 name = "result-like"
-version = "0.4.5"
+version = "0.4.6"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7b80fe0296795a96913be20558326b797a187bb3986ce84ed82dee0fb7414428"
+checksum = "ccc7ce6435c33898517a30e85578cd204cbb696875efb93dec19a2d31294f810"
 dependencies = [
  "result-like-derive",
 ]
 
 [[package]]
 name = "result-like-derive"
-version = "0.4.5"
+version = "0.4.6"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2a29c8a4ac7839f1dcb8b899263b501e0d6932f210300c8a0d271323727b35c1"
+checksum = "1fabf0a2e54f711c68c50d49f648a1a8a37adcb57353f518ac4df374f0788f42"
 dependencies = [
- "pmutil",
+ "pmutil 0.5.3",
  "proc-macro2",
  "quote",
- "syn",
+ "syn 1.0.109",
  "syn-ext",
 ]
 
@@ -1967,26 +1965,24 @@ dependencies = [
 
 [[package]]
 name = "rustix"
-version = "0.37.11"
+version = "0.38.28"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "85597d61f83914ddeba6a47b3b8ffe7365107221c2e557ed94426489fefb5f77"
+checksum = "72e572a5e8ca657d7366229cdde4bd14c4eb5499a9573d4d366fe1b599daa316"
 dependencies = [
- "bitflags 1.3.2",
+ "bitflags 2.5.0",
  "errno",
- "io-lifetimes",
  "libc",
  "linux-raw-sys",
- "windows-sys 0.48.0",
+ "windows-sys 0.52.0",
 ]
 
 [[package]]
 name = "rustpython"
-version = "0.3.0"
+version = "0.3.1"
 dependencies = [
  "atty",
  "cfg-if",
  "clap",
- "cpython",
  "criterion",
  "dirs-next",
  "env_logger",
@@ -1994,7 +1990,7 @@ dependencies = [
  "flamescope",
  "libc",
  "log",
- "python3-sys",
+ "pyo3",
  "rustpython-compiler",
  "rustpython-parser",
  "rustpython-pylib",
@@ -2005,8 +2001,8 @@ dependencies = [
 
 [[package]]
 name = "rustpython-ast"
-version = "0.3.0"
-source = "git+https://github.com/RustPython/Parser.git?tag=0.3.0#a1e4336f7043807eda8a5ecb15d4115172cc4a7e"
+version = "0.3.1"
+source = "git+https://github.com/RustPython/Parser.git?rev=a95045bc627b2fbf84caf4f010e521846be7b37f#a95045bc627b2fbf84caf4f010e521846be7b37f"
 dependencies = [
  "is-macro",
  "malachite-bigint",
@@ -2017,13 +2013,13 @@ dependencies = [
 
 [[package]]
 name = "rustpython-codegen"
-version = "0.3.0"
+version = "0.3.1"
 dependencies = [
  "ahash",
- "bitflags 2.3.1",
- "indexmap",
+ "bitflags 2.5.0",
+ "indexmap 2.2.6",
  "insta",
- "itertools 0.10.5",
+ "itertools 0.11.0",
  "log",
  "num-complex",
  "num-traits",
@@ -2035,13 +2031,13 @@ dependencies = [
 
 [[package]]
 name = "rustpython-common"
-version = "0.3.0"
+version = "0.3.1"
 dependencies = [
  "ascii",
- "bitflags 2.3.1",
+ "bitflags 2.5.0",
  "bstr",
  "cfg-if",
- "itertools 0.10.5",
+ "itertools 0.11.0",
  "libc",
  "lock_api",
  "malachite-base",
@@ -2052,7 +2048,7 @@ dependencies = [
  "once_cell",
  "parking_lot",
  "radium",
- "rand 0.8.5",
+ "rand",
  "rustpython-format",
  "siphasher",
  "volatile",
@@ -2061,7 +2057,7 @@ dependencies = [
 
 [[package]]
 name = "rustpython-compiler"
-version = "0.3.0"
+version = "0.3.1"
 dependencies = [
  "rustpython-codegen",
  "rustpython-compiler-core",
@@ -2070,10 +2066,10 @@ dependencies = [
 
 [[package]]
 name = "rustpython-compiler-core"
-version = "0.3.0"
+version = "0.3.1"
 dependencies = [
- "bitflags 2.3.1",
- "itertools 0.10.5",
+ "bitflags 2.5.0",
+ "itertools 0.11.0",
  "lz4_flex",
  "malachite-bigint",
  "num-complex",
@@ -2083,18 +2079,18 @@ dependencies = [
 
 [[package]]
 name = "rustpython-derive"
-version = "0.3.0"
+version = "0.3.1"
 dependencies = [
  "rustpython-compiler",
  "rustpython-derive-impl",
- "syn",
+ "syn 1.0.109",
 ]
 
 [[package]]
 name = "rustpython-derive-impl"
-version = "0.3.0"
+version = "0.3.1"
 dependencies = [
- "itertools 0.10.5",
+ "itertools 0.11.0",
  "maplit",
  "once_cell",
  "proc-macro2",
@@ -2102,7 +2098,7 @@ dependencies = [
  "rustpython-compiler-core",
  "rustpython-doc",
  "rustpython-parser-core",
- "syn",
+ "syn 1.0.109",
  "syn-ext",
  "textwrap 0.15.2",
 ]
@@ -2117,11 +2113,11 @@ dependencies = [
 
 [[package]]
 name = "rustpython-format"
-version = "0.3.0"
-source = "git+https://github.com/RustPython/Parser.git?tag=0.3.0#a1e4336f7043807eda8a5ecb15d4115172cc4a7e"
+version = "0.3.1"
+source = "git+https://github.com/RustPython/Parser.git?rev=a95045bc627b2fbf84caf4f010e521846be7b37f#a95045bc627b2fbf84caf4f010e521846be7b37f"
 dependencies = [
- "bitflags 2.3.1",
- "itertools 0.10.5",
+ "bitflags 2.5.0",
+ "itertools 0.11.0",
  "malachite-bigint",
  "num-traits",
  "rustpython-literal",
@@ -2129,7 +2125,7 @@ dependencies = [
 
 [[package]]
 name = "rustpython-jit"
-version = "0.3.0"
+version = "0.3.1"
 dependencies = [
  "approx",
  "cranelift",
@@ -2144,8 +2140,8 @@ dependencies = [
 
 [[package]]
 name = "rustpython-literal"
-version = "0.3.0"
-source = "git+https://github.com/RustPython/Parser.git?tag=0.3.0#a1e4336f7043807eda8a5ecb15d4115172cc4a7e"
+version = "0.3.1"
+source = "git+https://github.com/RustPython/Parser.git?rev=a95045bc627b2fbf84caf4f010e521846be7b37f#a95045bc627b2fbf84caf4f010e521846be7b37f"
 dependencies = [
  "hexf-parse",
  "is-macro",
@@ -2156,12 +2152,12 @@ dependencies = [
 
 [[package]]
 name = "rustpython-parser"
-version = "0.3.0"
-source = "git+https://github.com/RustPython/Parser.git?tag=0.3.0#a1e4336f7043807eda8a5ecb15d4115172cc4a7e"
+version = "0.3.1"
+source = "git+https://github.com/RustPython/Parser.git?rev=a95045bc627b2fbf84caf4f010e521846be7b37f#a95045bc627b2fbf84caf4f010e521846be7b37f"
 dependencies = [
  "anyhow",
  "is-macro",
- "itertools 0.10.5",
+ "itertools 0.11.0",
  "lalrpop-util",
  "log",
  "malachite-bigint",
@@ -2179,8 +2175,8 @@ dependencies = [
 
 [[package]]
 name = "rustpython-parser-core"
-version = "0.3.0"
-source = "git+https://github.com/RustPython/Parser.git?tag=0.3.0#a1e4336f7043807eda8a5ecb15d4115172cc4a7e"
+version = "0.3.1"
+source = "git+https://github.com/RustPython/Parser.git?rev=a95045bc627b2fbf84caf4f010e521846be7b37f#a95045bc627b2fbf84caf4f010e521846be7b37f"
 dependencies = [
  "is-macro",
  "memchr",
@@ -2189,8 +2185,8 @@ dependencies = [
 
 [[package]]
 name = "rustpython-parser-vendored"
-version = "0.3.0"
-source = "git+https://github.com/RustPython/Parser.git?tag=0.3.0#a1e4336f7043807eda8a5ecb15d4115172cc4a7e"
+version = "0.3.1"
+source = "git+https://github.com/RustPython/Parser.git?rev=a95045bc627b2fbf84caf4f010e521846be7b37f#a95045bc627b2fbf84caf4f010e521846be7b37f"
 dependencies = [
  "memchr",
  "once_cell",
@@ -2198,7 +2194,7 @@ dependencies = [
 
 [[package]]
 name = "rustpython-pylib"
-version = "0.3.0"
+version = "0.3.1"
 dependencies = [
  "glob",
  "rustpython-compiler-core",
@@ -2206,8 +2202,17 @@ dependencies = [
 ]
 
 [[package]]
+name = "rustpython-sre_engine"
+version = "0.3.1"
+dependencies = [
+ "bitflags 2.5.0",
+ "num_enum",
+ "optional",
+]
+
+[[package]]
 name = "rustpython-stdlib"
-version = "0.3.0"
+version = "0.3.1"
 dependencies = [
  "adler32",
  "ahash",
@@ -2219,14 +2224,14 @@ dependencies = [
  "crc32fast",
  "crossbeam-utils",
  "csv-core",
- "digest 0.10.6",
+ "digest",
  "dns-lookup",
  "dyn-clone",
  "flate2",
  "foreign-types-shared",
  "gethostname",
  "hex",
- "itertools 0.10.5",
+ "itertools 0.11.0",
  "libc",
  "libsqlite3-sys",
  "libz-sys",
@@ -2236,7 +2241,7 @@ dependencies = [
  "memchr",
  "memmap2",
  "mt19937",
- "nix 0.26.2",
+ "nix 0.27.1",
  "num-complex",
  "num-integer",
  "num-traits",
@@ -2249,15 +2254,15 @@ dependencies = [
  "parking_lot",
  "paste",
  "puruspe",
- "rand 0.8.5",
- "rand_core 0.6.4",
+ "rand",
+ "rand_core",
  "rustpython-common",
  "rustpython-derive",
  "rustpython-vm",
  "schannel",
  "sha-1",
  "sha2",
- "sha3 0.10.6",
+ "sha3",
  "socket2",
  "system-configuration",
  "termios",
@@ -2273,17 +2278,18 @@ dependencies = [
  "uuid",
  "widestring",
  "winapi",
+ "windows-sys 0.52.0",
  "xml-rs",
 ]
 
 [[package]]
 name = "rustpython-vm"
-version = "0.3.0"
+version = "0.3.1"
 dependencies = [
  "ahash",
  "ascii",
  "atty",
- "bitflags 2.3.1",
+ "bitflags 2.5.0",
  "bstr",
  "caseless",
  "cfg-if",
@@ -2292,19 +2298,19 @@ dependencies = [
  "exitcode",
  "flame",
  "flamer",
- "getrandom 0.2.8",
+ "getrandom",
  "glob",
  "half",
  "hex",
- "indexmap",
+ "indexmap 2.2.6",
  "is-macro",
- "itertools 0.10.5",
+ "itertools 0.11.0",
  "libc",
  "log",
  "malachite-bigint",
  "memchr",
- "memoffset 0.6.5",
- "nix 0.26.2",
+ "memoffset 0.9.1",
+ "nix 0.27.1",
  "num-complex",
  "num-integer",
  "num-traits",
@@ -2314,7 +2320,7 @@ dependencies = [
  "optional",
  "parking_lot",
  "paste",
- "rand 0.8.5",
+ "rand",
  "result-like",
  "rustc_version",
  "rustpython-ast",
@@ -2328,10 +2334,10 @@ dependencies = [
  "rustpython-literal",
  "rustpython-parser",
  "rustpython-parser-core",
+ "rustpython-sre_engine",
  "rustyline",
  "schannel",
  "serde",
- "sre-engine",
  "static_assertions",
  "strum",
  "strum_macros",
@@ -2347,14 +2353,14 @@ dependencies = [
  "wasm-bindgen",
  "which",
  "widestring",
- "winapi",
  "windows",
+ "windows-sys 0.52.0",
  "winreg",
 ]
 
 [[package]]
 name = "rustpython_wasm"
-version = "0.3.0"
+version = "0.3.1"
 dependencies = [
  "console_error_panic_hook",
  "js-sys",
@@ -2378,32 +2384,31 @@ checksum = "5583e89e108996506031660fe09baa5011b9dd0341b89029313006d1fb508d70"
 
 [[package]]
 name = "rustyline"
-version = "11.0.0"
+version = "14.0.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5dfc8644681285d1fb67a467fb3021bfea306b99b4146b166a1fe3ada965eece"
+checksum = "7803e8936da37efd9b6d4478277f4b2b9bb5cdb37a113e8d63222e58da647e63"
 dependencies = [
- "bitflags 1.3.2",
+ "bitflags 2.5.0",
  "cfg-if",
  "clipboard-win",
- "dirs-next",
  "fd-lock",
+ "home",
  "libc",
  "log",
  "memchr",
- "nix 0.26.2",
+ "nix 0.28.0",
  "radix_trie",
- "scopeguard",
  "unicode-segmentation",
  "unicode-width",
  "utf8parse",
- "winapi",
+ "windows-sys 0.52.0",
 ]
 
 [[package]]
 name = "ryu"
-version = "1.0.12"
+version = "1.0.15"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7b4b9743ed687d4b4bcedf9ff5eaa7398495ae14e61cba0a295704edbc7decde"
+checksum = "1ad4cc8da4ef723ed60bced201181d83791ad433213d8c24efffda1eec85d741"
 
 [[package]]
 name = "same-file"
@@ -2416,11 +2421,11 @@ dependencies = [
 
 [[package]]
 name = "schannel"
-version = "0.1.21"
+version = "0.1.22"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "713cfb06c7059f3588fb8044c0fad1d09e3c01d225e25b9220dbfdcf16dbb1b3"
+checksum = "0c3733bf4cf7ea0880754e19cb5a462007c4a8c1914bff372ccc95b464f1df88"
 dependencies = [
- "windows-sys 0.42.0",
+ "windows-sys 0.48.0",
 ]
 
 [[package]]
@@ -2480,7 +2485,7 @@ checksum = "af487d118eecd09402d70a5d72551860e788df87b464af30e5ea6a38c75c541e"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn",
+ "syn 1.0.109",
 ]
 
 [[package]]
@@ -2502,7 +2507,7 @@ checksum = "f5058ada175748e33390e40e872bd0fe59a19f265d0158daa551c5a88a76009c"
 dependencies = [
  "cfg-if",
  "cpufeatures",
- "digest 0.10.6",
+ "digest",
 ]
 
 [[package]]
@@ -2513,19 +2518,7 @@ checksum = "82e6b795fe2e3b1e845bafcb27aa35405c4d47cdfc92af5fc8d3002f76cebdc0"
 dependencies = [
  "cfg-if",
  "cpufeatures",
- "digest 0.10.6",
-]
-
-[[package]]
-name = "sha3"
-version = "0.9.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f81199417d4e5de3f04b1e871023acea7389672c4135918f05aa9cbf2f2fa809"
-dependencies = [
- "block-buffer 0.9.0",
- "digest 0.9.0",
- "keccak",
- "opaque-debug",
+ "digest",
 ]
 
 [[package]]
@@ -2534,7 +2527,7 @@ version = "0.10.6"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "bdf0c33fae925bdc080598b84bc15c55e7b9a4a43b3c704da051f977469691c9"
 dependencies = [
- "digest 0.10.6",
+ "digest",
  "keccak",
 ]
 
@@ -2564,23 +2557,12 @@ checksum = "a507befe795404456341dfab10cef66ead4c041f62b8b11bbb92bffe5d0953e0"
 
 [[package]]
 name = "socket2"
-version = "0.4.7"
+version = "0.5.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "02e2d2db9033d13a1567121ddd7a095ee144db4e1ca1b1bda3419bc0da294ebd"
+checksum = "7b5fac59a5cb5dd637972e5fca70daf0523c9067fcdc4842f053dae04a18f8e9"
 dependencies = [
  "libc",
- "winapi",
-]
-
-[[package]]
-name = "sre-engine"
-version = "0.4.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a490c5c46c35dba9a6f5e7ee8e4d67e775eb2d2da0f115750b8d10e1c1ac2d28"
-dependencies = [
- "bitflags 1.3.2",
- "num_enum",
- "optional",
+ "windows-sys 0.48.0",
 ]
 
 [[package]]
@@ -2590,12 +2572,6 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "a2eb9349b6444b326872e140eb1cf5e7c522154d69e7a0ffb0fb81c06b37543f"
 
 [[package]]
-name = "str-buf"
-version = "1.0.6"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9e08d8363704e6c71fc928674353e6b7c23dcea9d82d7012c8faf2a3a025f8d0"
-
-[[package]]
 name = "strsim"
 version = "0.8.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -2617,7 +2593,7 @@ dependencies = [
  "proc-macro2",
  "quote",
  "rustversion",
- "syn",
+ "syn 1.0.109",
 ]
 
 [[package]]
@@ -2628,9 +2604,20 @@ checksum = "6bdef32e8150c2a081110b42772ffe7d7c9032b606bc226c8260fd97e0976601"
 
 [[package]]
 name = "syn"
-version = "1.0.107"
+version = "1.0.109"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1f4064b5b16e03ae50984a5a8ed5d4f8803e6bc1fd170a3cda91a1be4b18e3f5"
+checksum = "72b64191b275b66ffe2469e8af2c1cfe3bafa67b529ead792a6d0160888b4237"
+dependencies = [
+ "proc-macro2",
+ "quote",
+ "unicode-ident",
+]
+
+[[package]]
+name = "syn"
+version = "2.0.32"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "239814284fd6f1a4ffe4ca893952cdd93c224b6a1571c9a9eadd670295c0c9e2"
 dependencies = [
  "proc-macro2",
  "quote",
@@ -2643,7 +2630,7 @@ version = "0.4.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "9b86cb2b68c5b3c078cac02588bc23f3c04bb828c5d3aedd17980876ec6a7be6"
 dependencies = [
- "syn",
+ "syn 1.0.109",
 ]
 
 [[package]]
@@ -2723,7 +2710,7 @@ checksum = "1fb327af4685e4d03fa8cbcf1716380da910eeb2bb8be417e7f9fd3fb164f36f"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn",
+ "syn 1.0.109",
 ]
 
 [[package]]
@@ -2749,16 +2736,21 @@ dependencies = [
 
 [[package]]
 name = "time"
-version = "0.1.45"
+version = "0.3.20"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1b797afad3f312d1c66a56d11d0316f916356d11bd158fbc6ca6389ff6bf805a"
+checksum = "cd0cbfecb4d19b5ea75bb31ad904eb5b9fa13f21079c3b92017ebdf4999a5890"
 dependencies = [
- "libc",
- "wasi 0.10.0+wasi-snapshot-preview1",
- "winapi",
+ "serde",
+ "time-core",
 ]
 
 [[package]]
+name = "time-core"
+version = "0.1.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "2e153e1f1acaef8acc537e68b44906d2db6436e2b35ac2c6b42640fff91f00fd"
+
+[[package]]
 name = "timsort"
 version = "0.1.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -2810,7 +2802,7 @@ version = "0.18.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "56c59d8dd7d0dcbc6428bf7aa2f0e823e26e43b3c9aca15bbc9475d23e5fa12b"
 dependencies = [
- "indexmap",
+ "indexmap 1.9.3",
  "nom8",
  "toml_datetime",
 ]
@@ -2997,13 +2989,34 @@ checksum = "c0edd1e5b14653f783770bce4a4dabb4a5108a5370a5f5d8cfe8710c361f6c8b"
 
 [[package]]
 name = "unicode_names2"
-version = "0.6.0"
-source = "git+https://github.com/youknowone/unicode_names2.git?rev=4ce16aa85cbcdd9cc830410f1a72ef9a235f2fde#4ce16aa85cbcdd9cc830410f1a72ef9a235f2fde"
+version = "1.1.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "38b2c0942619ae1797f999a0ce7efc6c09592ad30e68e16cdbfdcd48a98c3579"
 dependencies = [
  "phf",
+ "unicode_names2_generator",
+]
+
+[[package]]
+name = "unicode_names2_generator"
+version = "1.1.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "4d0d66ab60be9799a70f8eb227ea43da7dcc47561dd9102cbadacfe0930113f7"
+dependencies = [
+ "getopts",
+ "log",
+ "phf_codegen",
+ "rand",
+ "time",
 ]
 
 [[package]]
+name = "unindent"
+version = "0.2.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "c7de7d73e1754487cb58364ee906a499937a0dfabd86bcb980fa99ec8c8fa2ce"
+
+[[package]]
 name = "utf8parse"
 version = "0.2.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -3016,8 +3029,8 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "1674845326ee10d37ca60470760d4288a6f80f304007d92e5c53bab78c9cfd79"
 dependencies = [
  "atomic",
- "getrandom 0.2.8",
- "rand 0.8.5",
+ "getrandom",
+ "rand",
  "uuid-macro-internal",
 ]
 
@@ -3029,7 +3042,7 @@ checksum = "c1b300a878652a387d2a0de915bdae8f1a548f0c6d45e072fe2688794b656cc9"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn",
+ "syn 1.0.109",
 ]
 
 [[package]]
@@ -3069,18 +3082,6 @@ dependencies = [
 
 [[package]]
 name = "wasi"
-version = "0.9.0+wasi-snapshot-preview1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "cccddf32554fecc6acb585f82a32a72e28b48f8c4c1883ddfeeeaa96f7d8e519"
-
-[[package]]
-name = "wasi"
-version = "0.10.0+wasi-snapshot-preview1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1a143597ca7c7793eff794def352d41792a93c481eb1042423ff7ff72ba2c31f"
-
-[[package]]
-name = "wasi"
 version = "0.11.0+wasi-snapshot-preview1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "9c8d87e72b64a3b4db28d11ce29237c246188f4f51057d65a7eab63b7987e423"
@@ -3106,7 +3107,7 @@ dependencies = [
  "once_cell",
  "proc-macro2",
  "quote",
- "syn",
+ "syn 1.0.109",
  "wasm-bindgen-shared",
 ]
 
@@ -3140,7 +3141,7 @@ checksum = "2aff81306fcac3c7515ad4e177f521b5c9a15f2b08f4e32d823066102f35a5f6"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn",
+ "syn 1.0.109",
  "wasm-bindgen-backend",
  "wasm-bindgen-shared",
 ]
@@ -3174,9 +3175,9 @@ dependencies = [
 
 [[package]]
 name = "widestring"
-version = "0.5.1"
+version = "1.1.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "17882f045410753661207383517a6f62ec3dbeb6a4ed2acce01f0728238d1983"
+checksum = "7219d36b6eac893fa81e84ebe06485e7dcbb616177469b142df14f1f4deb1311"
 
 [[package]]
 name = "winapi"
@@ -3211,15 +3212,21 @@ checksum = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f"
 
 [[package]]
 name = "windows"
-version = "0.39.0"
+version = "0.52.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "e48a53791691ab099e5e2ad123536d0fff50652600abaf43bbf952894110d0be"
+dependencies = [
+ "windows-core",
+ "windows-targets 0.52.0",
+]
+
+[[package]]
+name = "windows-core"
+version = "0.52.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f1c4bd0a50ac6020f65184721f758dba47bb9fbc2133df715ec74a237b26794a"
+checksum = "33ab640c8d7e35bf8ba19b884ba838ceb4fba93a4e8c65a9059d08afcfc683d9"
 dependencies = [
- "windows_aarch64_msvc 0.39.0",
- "windows_i686_gnu 0.39.0",
- "windows_i686_msvc 0.39.0",
- "windows_x86_64_gnu 0.39.0",
- "windows_x86_64_msvc 0.39.0",
+ "windows-targets 0.52.0",
 ]
 
 [[package]]
@@ -3265,7 +3272,16 @@ version = "0.48.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "677d2418bec65e3338edb076e806bc1ec15693c5d0104683f2efe857f61056a9"
 dependencies = [
- "windows-targets 0.48.0",
+ "windows-targets 0.48.5",
+]
+
+[[package]]
+name = "windows-sys"
+version = "0.52.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "282be5f36a8ce781fad8c8ae18fa3f9beff57ec1b52cb3de0789201425d9a33d"
+dependencies = [
+ "windows-targets 0.52.0",
 ]
 
 [[package]]
@@ -3285,17 +3301,32 @@ dependencies = [
 
 [[package]]
 name = "windows-targets"
-version = "0.48.0"
+version = "0.48.5"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "9a2fa6e2155d7247be68c096456083145c183cbbbc2764150dda45a87197940c"
+dependencies = [
+ "windows_aarch64_gnullvm 0.48.5",
+ "windows_aarch64_msvc 0.48.5",
+ "windows_i686_gnu 0.48.5",
+ "windows_i686_msvc 0.48.5",
+ "windows_x86_64_gnu 0.48.5",
+ "windows_x86_64_gnullvm 0.48.5",
+ "windows_x86_64_msvc 0.48.5",
+]
+
+[[package]]
+name = "windows-targets"
+version = "0.52.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7b1eb6f0cd7c80c79759c929114ef071b87354ce476d9d94271031c0497adfd5"
+checksum = "8a18201040b24831fbb9e4eb208f8892e1f50a37feb53cc7ff887feb8f50e7cd"
 dependencies = [
- "windows_aarch64_gnullvm 0.48.0",
- "windows_aarch64_msvc 0.48.0",
- "windows_i686_gnu 0.48.0",
- "windows_i686_msvc 0.48.0",
- "windows_x86_64_gnu 0.48.0",
- "windows_x86_64_gnullvm 0.48.0",
- "windows_x86_64_msvc 0.48.0",
+ "windows_aarch64_gnullvm 0.52.0",
+ "windows_aarch64_msvc 0.52.0",
+ "windows_i686_gnu 0.52.0",
+ "windows_i686_msvc 0.52.0",
+ "windows_x86_64_gnu 0.52.0",
+ "windows_x86_64_gnullvm 0.52.0",
+ "windows_x86_64_msvc 0.52.0",
 ]
 
 [[package]]
@@ -3306,9 +3337,15 @@ checksum = "8c9864e83243fdec7fc9c5444389dcbbfd258f745e7853198f365e3c4968a608"
 
 [[package]]
 name = "windows_aarch64_gnullvm"
-version = "0.48.0"
+version = "0.48.5"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "2b38e32f0abccf9987a4e3079dfb67dcd799fb61361e53e2882c3cbaf0d905d8"
+
+[[package]]
+name = "windows_aarch64_gnullvm"
+version = "0.52.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "91ae572e1b79dba883e0d315474df7305d12f569b400fcf90581b06062f7e1bc"
+checksum = "cb7764e35d4db8a7921e09562a0304bf2f93e0a51bfccee0bd0bb0b666b015ea"
 
 [[package]]
 name = "windows_aarch64_msvc"
@@ -3318,21 +3355,21 @@ checksum = "9bb8c3fd39ade2d67e9874ac4f3db21f0d710bee00fe7cab16949ec184eeaa47"
 
 [[package]]
 name = "windows_aarch64_msvc"
-version = "0.39.0"
+version = "0.42.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ec7711666096bd4096ffa835238905bb33fb87267910e154b18b44eaabb340f2"
+checksum = "4c8b1b673ffc16c47a9ff48570a9d85e25d265735c503681332589af6253c6c7"
 
 [[package]]
 name = "windows_aarch64_msvc"
-version = "0.42.1"
+version = "0.48.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4c8b1b673ffc16c47a9ff48570a9d85e25d265735c503681332589af6253c6c7"
+checksum = "dc35310971f3b2dbbf3f0690a219f40e2d9afcf64f9ab7cc1be722937c26b4bc"
 
 [[package]]
 name = "windows_aarch64_msvc"
-version = "0.48.0"
+version = "0.52.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b2ef27e0d7bdfcfc7b868b317c1d32c641a6fe4629c171b8928c7b08d98d7cf3"
+checksum = "bbaa0368d4f1d2aaefc55b6fcfee13f41544ddf36801e793edbbfd7d7df075ef"
 
 [[package]]
 name = "windows_i686_gnu"
@@ -3342,21 +3379,21 @@ checksum = "180e6ccf01daf4c426b846dfc66db1fc518f074baa793aa7d9b9aaeffad6a3b6"
 
 [[package]]
 name = "windows_i686_gnu"
-version = "0.39.0"
+version = "0.42.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "763fc57100a5f7042e3057e7e8d9bdd7860d330070251a73d003563a3bb49e1b"
+checksum = "de3887528ad530ba7bdbb1faa8275ec7a1155a45ffa57c37993960277145d640"
 
 [[package]]
 name = "windows_i686_gnu"
-version = "0.42.1"
+version = "0.48.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "de3887528ad530ba7bdbb1faa8275ec7a1155a45ffa57c37993960277145d640"
+checksum = "a75915e7def60c94dcef72200b9a8e58e5091744960da64ec734a6c6e9b3743e"
 
 [[package]]
 name = "windows_i686_gnu"
-version = "0.48.0"
+version = "0.52.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "622a1962a7db830d6fd0a69683c80a18fda201879f0f447f065a3b7467daa241"
+checksum = "a28637cb1fa3560a16915793afb20081aba2c92ee8af57b4d5f28e4b3e7df313"
 
 [[package]]
 name = "windows_i686_msvc"
@@ -3366,21 +3403,21 @@ checksum = "e2e7917148b2812d1eeafaeb22a97e4813dfa60a3f8f78ebe204bcc88f12f024"
 
 [[package]]
 name = "windows_i686_msvc"
-version = "0.39.0"
+version = "0.42.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7bc7cbfe58828921e10a9f446fcaaf649204dcfe6c1ddd712c5eebae6bda1106"
+checksum = "bf4d1122317eddd6ff351aa852118a2418ad4214e6613a50e0191f7004372605"
 
 [[package]]
 name = "windows_i686_msvc"
-version = "0.42.1"
+version = "0.48.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "bf4d1122317eddd6ff351aa852118a2418ad4214e6613a50e0191f7004372605"
+checksum = "8f55c233f70c4b27f66c523580f78f1004e8b5a8b659e05a4eb49d4166cca406"
 
 [[package]]
 name = "windows_i686_msvc"
-version = "0.48.0"
+version = "0.52.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4542c6e364ce21bf45d69fdd2a8e455fa38d316158cfd43b3ac1c5b1b19f8e00"
+checksum = "ffe5e8e31046ce6230cc7215707b816e339ff4d4d67c65dffa206fd0f7aa7b9a"
 
 [[package]]
 name = "windows_x86_64_gnu"
@@ -3390,21 +3427,21 @@ checksum = "4dcd171b8776c41b97521e5da127a2d86ad280114807d0b2ab1e462bc764d9e1"
 
 [[package]]
 name = "windows_x86_64_gnu"
-version = "0.39.0"
+version = "0.42.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6868c165637d653ae1e8dc4d82c25d4f97dd6605eaa8d784b5c6e0ab2a252b65"
+checksum = "c1040f221285e17ebccbc2591ffdc2d44ee1f9186324dd3e84e99ac68d699c45"
 
 [[package]]
 name = "windows_x86_64_gnu"
-version = "0.42.1"
+version = "0.48.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c1040f221285e17ebccbc2591ffdc2d44ee1f9186324dd3e84e99ac68d699c45"
+checksum = "53d40abd2583d23e4718fddf1ebec84dbff8381c07cae67ff7768bbf19c6718e"
 
 [[package]]
 name = "windows_x86_64_gnu"
-version = "0.48.0"
+version = "0.52.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ca2b8a661f7628cbd23440e50b05d705db3686f894fc9580820623656af974b1"
+checksum = "3d6fa32db2bc4a2f5abeacf2b69f7992cd09dca97498da74a151a3132c26befd"
 
 [[package]]
 name = "windows_x86_64_gnullvm"
@@ -3414,9 +3451,15 @@ checksum = "628bfdf232daa22b0d64fdb62b09fcc36bb01f05a3939e20ab73aaf9470d0463"
 
 [[package]]
 name = "windows_x86_64_gnullvm"
-version = "0.48.0"
+version = "0.48.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7896dbc1f41e08872e9d5e8f8baa8fdd2677f29468c4e156210174edc7f7b953"
+checksum = "0b7b52767868a23d5bab768e390dc5f5c55825b6d30b86c844ff2dc7414044cc"
+
+[[package]]
+name = "windows_x86_64_gnullvm"
+version = "0.52.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "1a657e1e9d3f514745a572a6846d3c7aa7dbe1658c056ed9c3344c4109a6949e"
 
 [[package]]
 name = "windows_x86_64_msvc"
@@ -3426,21 +3469,21 @@ checksum = "c811ca4a8c853ef420abd8592ba53ddbbac90410fab6903b3e79972a631f7680"
 
 [[package]]
 name = "windows_x86_64_msvc"
-version = "0.39.0"
+version = "0.42.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5e4d40883ae9cae962787ca76ba76390ffa29214667a111db9e0a1ad8377e809"
+checksum = "447660ad36a13288b1db4d4248e857b510e8c3a225c822ba4fb748c0aafecffd"
 
 [[package]]
 name = "windows_x86_64_msvc"
-version = "0.42.1"
+version = "0.48.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "447660ad36a13288b1db4d4248e857b510e8c3a225c822ba4fb748c0aafecffd"
+checksum = "ed94fce61571a4006852b7389a063ab983c02eb1bb37b47f8272ce92d06d9538"
 
 [[package]]
 name = "windows_x86_64_msvc"
-version = "0.48.0"
+version = "0.52.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1a515f5799fe4961cb532f983ce2b23082366b898e52ffbce459c86f67c8378a"
+checksum = "dff9641d1cd4be8d1a070daf9e3773c5f67e78b4d9d42263020c057706765c04"
 
 [[package]]
 name = "winreg"
@@ -3458,10 +3501,21 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "52839dc911083a8ef63efa4d039d1f58b5e409f923e44c80828f206f66e5541c"
 
 [[package]]
-name = "yaml-rust"
-version = "0.4.5"
+name = "zerocopy"
+version = "0.7.32"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "56c1936c4cc7a1c9ab21a1ebb602eb942ba868cbd44a99cb7cdc5892335e1c85"
+checksum = "74d4d3961e53fa4c9a25a8637fc2bfaf2595b3d3ae34875568a5cf64787716be"
 dependencies = [
- "linked-hash-map",
+ "zerocopy-derive",
+]
+
+[[package]]
+name = "zerocopy-derive"
+version = "0.7.32"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "9ce1b18ccd8e73a9321186f97e46f9f04b778851177567b1975109d26a08d2a6"
+dependencies = [
+ "proc-macro2",
+ "quote",
+ "syn 2.0.32",
 ]
diff --git a/pkgs/development/interpreters/python/rustpython/default.nix b/pkgs/development/interpreters/python/rustpython/default.nix
index 3d10ab361ca3..febb7f5cfa24 100644
--- a/pkgs/development/interpreters/python/rustpython/default.nix
+++ b/pkgs/development/interpreters/python/rustpython/default.nix
@@ -8,21 +8,20 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "rustpython";
-  version = "0.3.0";
+  version = "0.3.1";
 
   src = fetchFromGitHub {
     owner = "RustPython";
     repo = "RustPython";
     rev = "refs/tags/${version}";
-    hash = "sha256-8tDzgsmKLjsfMT5j5HqrQ93LsGHxmC2DJu5KbR3FNXc=";
+    hash = "sha256-AtIaWwE1pEIP1SJN9dYgHRP1GX4LTmetIPztHbsBXto=";
   };
 
   cargoLock = {
     lockFile = ./Cargo.lock;
     outputHashes = {
-      "rustpython-ast-0.3.0" = "sha256-5IR/G6Y9OE0+gTvU1iTob0TxfiV3O9elA/0BUy2GA8g=";
+      "rustpython-ast-0.3.1" = "sha256-dT0x4E8k/FcSP/q0uwwBWniT1n9HGmFF/HV6hAE6bGU=";
       "rustpython-doc-0.3.0" = "sha256-34ERuLFKzUD9Xmf1zlafe42GLWZfUlw17ejf/NN6yH4=";
-      "unicode_names2-0.6.0" = "sha256-eWg9+ISm/vztB0KIdjhq5il2ZnwGJQCleCYfznCI3Wg=";
     };
   };
 
diff --git a/pkgs/development/interpreters/racket/default.nix b/pkgs/development/interpreters/racket/default.nix
index 8d4615f61cea..f75470566e2c 100644
--- a/pkgs/development/interpreters/racket/default.nix
+++ b/pkgs/development/interpreters/racket/default.nix
@@ -15,7 +15,7 @@
 , disableDocs ? false
 , CoreFoundation
 , gsettings-desktop-schemas
-, wrapGAppsHook
+, wrapGAppsHook3
 }:
 
 let
@@ -68,7 +68,7 @@ stdenv.mkDerivation rec {
     (lib.optionalString (stdenv.cc.isGNU && ! stdenv.isDarwin) "-lgcc_s")
   ];
 
-  nativeBuildInputs = [ cacert wrapGAppsHook ];
+  nativeBuildInputs = [ cacert wrapGAppsHook3 ];
 
   buildInputs = [ fontconfig libffi libtool sqlite gsettings-desktop-schemas gtk3 ncurses ]
     ++ lib.optionals stdenv.isDarwin [ libiconv CoreFoundation ];
diff --git a/pkgs/development/interpreters/racket/racket_7_9.nix b/pkgs/development/interpreters/racket/racket_7_9.nix
index 836bc879dbbc..78efe8e2914c 100644
--- a/pkgs/development/interpreters/racket/racket_7_9.nix
+++ b/pkgs/development/interpreters/racket/racket_7_9.nix
@@ -13,7 +13,7 @@
 , disableDocs ? false
 , CoreFoundation
 , gsettings-desktop-schemas
-, wrapGAppsHook
+, wrapGAppsHook3
 }:
 
 let
@@ -65,7 +65,7 @@ stdenv.mkDerivation rec {
     (lib.optionalString stdenv.isDarwin "-framework CoreFoundation")
   ];
 
-  nativeBuildInputs = [ cacert wrapGAppsHook ];
+  nativeBuildInputs = [ cacert wrapGAppsHook3 ];
 
   buildInputs = [ fontconfig libffi libtool sqlite gsettings-desktop-schemas gtk3 ]
     ++ lib.optionals stdenv.isDarwin [ libiconv CoreFoundation ];
diff --git a/pkgs/development/interpreters/risor/default.nix b/pkgs/development/interpreters/risor/default.nix
index 89b31b8aa9b0..c16eebf1e626 100644
--- a/pkgs/development/interpreters/risor/default.nix
+++ b/pkgs/development/interpreters/risor/default.nix
@@ -7,17 +7,17 @@
 
 buildGoModule rec {
   pname = "risor";
-  version = "1.5.2";
+  version = "1.6.0";
 
   src = fetchFromGitHub {
     owner = "risor-io";
     repo = "risor";
     rev = "v${version}";
-    hash = "sha256-tvEiboH5cGRpyBmmpu8A1UlDR1Y9XPe1pUNS0/Jvooc=";
+    hash = "sha256-IUmkb23Fx+bjzXrXWfKPOo0HFt7HjtjQoCRtH77HGBg=";
   };
 
   proxyVendor = true;
-  vendorHash = "sha256-eW6eSZp5Msg/u50i1+S2KSzDws0Rq8JBY1Yxzq7/hVo=";
+  vendorHash = "sha256-+XYwFYbvZvk0TWoRtCKQIzbQeznQkolB+NFqUiZMkpA=";
 
   subPackages = [
     "cmd/risor"
diff --git a/pkgs/development/interpreters/ruby/default.nix b/pkgs/development/interpreters/ruby/default.nix
index 5df1c65b3aac..ed3a06591d16 100644
--- a/pkgs/development/interpreters/ruby/default.nix
+++ b/pkgs/development/interpreters/ruby/default.nix
@@ -296,8 +296,8 @@ in {
   mkRuby = generic;
 
   ruby_3_1 = generic {
-    version = rubyVersion "3" "1" "4" "";
-    hash = "sha256-o9VYeaDfqx1xQf3xDSKgfb+OXNxEFdob3gYSfVzDx7Y=";
+    version = rubyVersion "3" "1" "5" "";
+    hash = "sha256-NoXFHu7hNSwx6gOXBtcZdvU9AKttdzEt5qoauvXNosU=";
   };
 
   ruby_3_2 = generic {
@@ -307,8 +307,8 @@ in {
   };
 
   ruby_3_3 = generic {
-    version = rubyVersion "3" "3" "0" "";
-    hash = "sha256-llGIFNmDK+zpKoVBWoGdSJOzB9tZIa4fD3Uamomla30=";
+    version = rubyVersion "3" "3" "1" "";
+    hash = "sha256-jcKvKALMcAzRgtVDByY4jM+IWz8KFPzWoPIf8knJqpk=";
     cargoHash = "sha256-GeelTMRFIyvz1QS2L+Q3KAnyQy7jc0ejhx3TdEFVEbk=";
   };
 
diff --git a/pkgs/development/interpreters/ruby/rubygems/default.nix b/pkgs/development/interpreters/ruby/rubygems/default.nix
index 6a28bbb488ee..8c0bc2208c10 100644
--- a/pkgs/development/interpreters/ruby/rubygems/default.nix
+++ b/pkgs/development/interpreters/ruby/rubygems/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   pname = "rubygems";
-  version = "3.5.7";
+  version = "3.5.9";
 
   src = fetchurl {
     url = "https://rubygems.org/rubygems/rubygems-${version}.tgz";
-    hash = "sha256-w9BKIE0vcmX+mmtDqF1tInhplHdBok1W5R1xNtRinjk=";
+    hash = "sha256-KyA2Qhkea7ns4ZB19iJ1qIUmMZsSRoTEZmdBXcpDY/E=";
   };
 
   patches = [
diff --git a/pkgs/development/interpreters/wasmtime/default.nix b/pkgs/development/interpreters/wasmtime/default.nix
index 545c176ab472..fafe521fbde1 100644
--- a/pkgs/development/interpreters/wasmtime/default.nix
+++ b/pkgs/development/interpreters/wasmtime/default.nix
@@ -2,19 +2,19 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "wasmtime";
-  version = "20.0.0";
+  version = "20.0.2";
 
   src = fetchFromGitHub {
     owner = "bytecodealliance";
     repo = pname;
     rev = "v${version}";
-    hash = "sha256-Q2CsIwYQsLnAlGyMRxNTxjZsezxhjSptBF540NtgkCc=";
+    hash = "sha256-zXBVqSBq/dLY8oEs0dNZxtjs4H1aKTJYeeazysHvh3w=";
     fetchSubmodules = true;
   };
 
   # Disable cargo-auditable until https://github.com/rust-secure-code/cargo-auditable/issues/124 is solved.
   auditable = false;
-  cargoHash = "sha256-d956DuVtLbZ/u3sAA4cQlw55CuYC7XyzeQarwyQ/hpY=";
+  cargoHash = "sha256-jFqLUWdW/UfOc843aWO7RNDx1E6sBhUWB5Xw2+A2u90=";
   cargoBuildFlags = [ "--package" "wasmtime-cli" "--package" "wasmtime-c-api" ];
 
   outputs = [ "out" "dev" ];
diff --git a/pkgs/development/julia-modules/depot.nix b/pkgs/development/julia-modules/depot.nix
index 18bac9cb46a6..5614f1427aa5 100644
--- a/pkgs/development/julia-modules/depot.nix
+++ b/pkgs/development/julia-modules/depot.nix
@@ -55,6 +55,11 @@ runCommand "julia-depot" {
   # git config --global --add safe.directory '/nix'
   export JULIA_PKG_USE_CLI_GIT="true"
 
+  # At time of writing, this appears to be the only way to turn precompiling's
+  # terminal output into standard logging, so opportunistically do that.
+  # (Note this is different from JULIA_CI).
+  export CI=true
+
   julia -e ' \
     import Pkg
     import Pkg.Types: PRESERVE_NONE
diff --git a/pkgs/development/libraries/SDL2_mixer/2_0.nix b/pkgs/development/libraries/SDL2_mixer/2_0.nix
deleted file mode 100644
index e75e0c9c5cc0..000000000000
--- a/pkgs/development/libraries/SDL2_mixer/2_0.nix
+++ /dev/null
@@ -1,34 +0,0 @@
-{ fetchurl
-, fetchpatch
-, lzwolf
-, SDL2_mixer
-, timidity
-}:
-
-SDL2_mixer.overrideAttrs(oa: rec {
-  version = "2.0.4";
-
-  src = fetchurl {
-    url = "https://www.libsdl.org/projects/SDL_mixer/release/SDL2_mixer-${version}.tar.gz";
-    sha256 = "0694vsz5bjkcdgfdra6x9fq8vpzrl8m6q96gh58df7065hw5mkxl";
-  };
-
-  patches = [
-    # These patches fix incompatible function pointer conversion errors with clang 16.
-    (fetchpatch {
-      url = "https://github.com/libsdl-org/SDL_mixer/commit/4119ec3fe838d38d2433f4432cd18926bda5d093.patch";
-      stripLen = 2;
-      hash = "sha256-Ug1EEZIRcV8+e1MeMsGHuTW7Zn6j4szqujP8IkIq2VM=";
-    })
-    # Based on https://github.com/libsdl-org/SDL_mixer/commit/64ab759111ddb1b033bcce64e1a04e0cba6e498f
-    ./SDL_mixer-2.0-incompatible-pointer-comparison-fix.patch
-  ];
-
-  # fix default path to timidity.cfg so MIDI files could be played
-  postPatch = ''
-    substituteInPlace timidity/options.h \
-      --replace "/usr/share/timidity" "${timidity}/share/timidity"
-  '';
-
-  passthru.tests.lzwolf = lzwolf;
-})
diff --git a/pkgs/development/libraries/SDL2_mixer/default.nix b/pkgs/development/libraries/SDL2_mixer/default.nix
deleted file mode 100644
index d9e8d7e774a7..000000000000
--- a/pkgs/development/libraries/SDL2_mixer/default.nix
+++ /dev/null
@@ -1,74 +0,0 @@
-{ lib, stdenv
-, fetchurl
-, pkg-config
-, AudioToolbox
-, AudioUnit
-, CoreServices
-, SDL2
-, flac
-, fluidsynth
-, libmodplug
-, libogg
-, libvorbis
-, mpg123
-, opusfile
-, smpeg2
-, timidity
-}:
-
-stdenv.mkDerivation rec {
-  pname = "SDL2_mixer";
-  version = "2.8.0";
-
-  src = fetchurl {
-    url = "https://www.libsdl.org/projects/SDL_mixer/release/${pname}-${version}.tar.gz";
-    sha256 = "sha256-HPs0yHsm29vHr9aMT1RcARarX5C7/sxa6+Kpy0uzFUk=";
-  };
-
-  configureFlags = [
-    "--disable-music-ogg-shared"
-    "--disable-music-flac-shared"
-    "--disable-music-mod-modplug-shared"
-    "--disable-music-mp3-mpg123-shared"
-    "--disable-music-opus-shared"
-    "--disable-music-midi-fluidsynth-shared"
-
-    # override default path to allow MIDI files to be played
-    "--with-timidity-cfg=${timidity}/share/timidity/timidity.cfg"
-  ] ++ lib.optionals stdenv.isDarwin [
-    "--disable-sdltest"
-    "--disable-smpegtest"
-  ];
-
-  nativeBuildInputs = [ pkg-config ];
-
-  buildInputs = lib.optionals stdenv.isDarwin [
-    AudioToolbox
-    AudioUnit
-    CoreServices
-  ];
-
-  propagatedBuildInputs = [
-    SDL2
-    flac
-    fluidsynth
-    libmodplug
-    libogg
-    libvorbis
-    mpg123
-    opusfile
-    smpeg2
-    # MIDI patterns
-    timidity
-  ];
-
-  outputs = [ "out" "dev" ];
-
-  meta = with lib; {
-    description = "SDL multi-channel audio mixer library";
-    platforms = platforms.unix;
-    homepage = "https://github.com/libsdl-org/SDL_mixer";
-    maintainers = with maintainers; [ ];
-    license = licenses.zlib;
-  };
-}
diff --git a/pkgs/development/libraries/aravis/default.nix b/pkgs/development/libraries/aravis/default.nix
index ccdc06e906fe..e279a6d6e369 100644
--- a/pkgs/development/libraries/aravis/default.nix
+++ b/pkgs/development/libraries/aravis/default.nix
@@ -13,7 +13,7 @@
 , enableViewer ? true
 , gst_all_1
 , gtk3
-, wrapGAppsHook
+, wrapGAppsHook3
 
 , enableUsb ? true
 , libusb1
@@ -25,7 +25,7 @@
 assert enableGstPlugin -> gst_all_1 != null;
 assert enableViewer -> enableGstPlugin;
 assert enableViewer -> gtk3 != null;
-assert enableViewer -> wrapGAppsHook != null;
+assert enableViewer -> wrapGAppsHook3 != null;
 
 stdenv.mkDerivation rec {
   pname = "aravis";
@@ -46,7 +46,7 @@ stdenv.mkDerivation rec {
     pkg-config
     gi-docgen
     gobject-introspection
-  ] ++ lib.optional enableViewer wrapGAppsHook;
+  ] ++ lib.optional enableViewer wrapGAppsHook3;
 
   buildInputs =
     [ glib libxml2 ]
diff --git a/pkgs/development/libraries/armadillo/default.nix b/pkgs/development/libraries/armadillo/default.nix
index f7e93699968f..4ee5baa38bed 100644
--- a/pkgs/development/libraries/armadillo/default.nix
+++ b/pkgs/development/libraries/armadillo/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   pname = "armadillo";
-  version = "12.8.2";
+  version = "12.8.3";
 
   src = fetchurl {
     url = "mirror://sourceforge/arma/armadillo-${version}.tar.xz";
-    hash = "sha256-A7YvjAnk9ddGQ7R4UgdBuOJ7VefkUll4/K4vXXkaw78=";
+    hash = "sha256-KSJYn2OHeWUEs0Daa7lUvvPYdXTCmFFYkyie3S2JAVE=";
   };
 
   nativeBuildInputs = [ cmake ];
diff --git a/pkgs/development/libraries/at-spi2-core/default.nix b/pkgs/development/libraries/at-spi2-core/default.nix
index 270f624965f6..c70044308d02 100644
--- a/pkgs/development/libraries/at-spi2-core/default.nix
+++ b/pkgs/development/libraries/at-spi2-core/default.nix
@@ -23,14 +23,14 @@
 
 stdenv.mkDerivation rec {
   pname = "at-spi2-core";
-  version = "2.50.2";
+  version = "2.52.0";
 
   outputs = [ "out" "dev" ];
   separateDebugInfo = true;
 
   src = fetchurl {
     url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
-    hash = "sha256-W4GxRhpi3Y++0aJ2+p71txEvmuX/huHjKtlkS2VP94w=";
+    hash = "sha256-CsP8gyDI0B+hR8Jyun+gOAY4nGsD08QG0II+MONf9as=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/libraries/aws-c-auth/default.nix b/pkgs/development/libraries/aws-c-auth/default.nix
index 7a7d80879558..c15cbe8bde40 100644
--- a/pkgs/development/libraries/aws-c-auth/default.nix
+++ b/pkgs/development/libraries/aws-c-auth/default.nix
@@ -14,13 +14,13 @@
 
 stdenv.mkDerivation rec {
   pname = "aws-c-auth";
-  version = "0.7.16";
+  version = "0.7.18";
 
   src = fetchFromGitHub {
     owner = "awslabs";
     repo = "aws-c-auth";
     rev = "v${version}";
-    hash = "sha256-76sBv4oChDrkv80HPktkULFNC37kfTNxjlwNg/FJiyA=";
+    hash = "sha256-JWYJz8ugYvXDvtJ5dRWVcA8F3PdjxO8aCc8l0jghYXg=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/libraries/aws-c-cal/default.nix b/pkgs/development/libraries/aws-c-cal/default.nix
index 0188c8937c90..5f4c303265d9 100644
--- a/pkgs/development/libraries/aws-c-cal/default.nix
+++ b/pkgs/development/libraries/aws-c-cal/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation (finalAttrs: {
   pname = "aws-c-cal";
-  version = "0.6.10";
+  version = "0.6.12";
 
   src = fetchFromGitHub {
     owner = "awslabs";
     repo = finalAttrs.pname;
     rev = "v${finalAttrs.version}";
-    hash = "sha256-rzJypIf0DrKI/2Wt5vFop34dL+KYTeCfWC0RflZpiMo=";
+    hash = "sha256-aegK01wYdOc6RGNVf/dZKn1HkqQr+yEblcu6hnlMZE4=";
   };
 
   patches = [
diff --git a/pkgs/development/libraries/aws-c-common/default.nix b/pkgs/development/libraries/aws-c-common/default.nix
index 360b82b6c679..5cf9de861cdf 100644
--- a/pkgs/development/libraries/aws-c-common/default.nix
+++ b/pkgs/development/libraries/aws-c-common/default.nix
@@ -7,13 +7,13 @@
 
 stdenv.mkDerivation rec {
   pname = "aws-c-common";
-  version = "0.9.14";
+  version = "0.9.17";
 
   src = fetchFromGitHub {
     owner = "awslabs";
     repo = pname;
     rev = "v${version}";
-    hash = "sha256-aeuIXqnO8divpguDpiPlYJHABYIqegpaDNGwqJ5TKZw=";
+    hash = "sha256-Ee3wkgIOTsZn2PgHoaO5HqblXuOacuKm5vUwkl4Dg+4=";
   };
 
   nativeBuildInputs = [ cmake ];
diff --git a/pkgs/development/libraries/aws-c-io/default.nix b/pkgs/development/libraries/aws-c-io/default.nix
index 65b584389761..1bc0c731a9d7 100644
--- a/pkgs/development/libraries/aws-c-io/default.nix
+++ b/pkgs/development/libraries/aws-c-io/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "aws-c-io";
-  version = "0.14.6";
+  version = "0.14.7";
 
   src = fetchFromGitHub {
     owner = "awslabs";
     repo = pname;
     rev = "v${version}";
-    hash = "sha256-fekeGghqMKbUqKWIfpZg3a6dCpgxywhmXPoGz9y4Aos=";
+    hash = "sha256-Z4o1vv/8FWp3S7GfLDsV0a8ih+IdJIUC0DL4klOXjnw=";
   };
 
   nativeBuildInputs = [ cmake ];
diff --git a/pkgs/development/libraries/aws-c-mqtt/default.nix b/pkgs/development/libraries/aws-c-mqtt/default.nix
index 2e6c6a561115..829dc76dce93 100644
--- a/pkgs/development/libraries/aws-c-mqtt/default.nix
+++ b/pkgs/development/libraries/aws-c-mqtt/default.nix
@@ -13,13 +13,13 @@
 
 stdenv.mkDerivation rec {
   pname = "aws-c-mqtt";
-  version = "0.10.3";
+  version = "0.10.4";
 
   src = fetchFromGitHub {
     owner = "awslabs";
     repo = "aws-c-mqtt";
     rev = "v${version}";
-    hash = "sha256-MWcXTMwKtFnrNp+OnHxkiYCUXc3IUhM6iTQa+F9JwsQ=";
+    hash = "sha256-i+ssZzHC8MPfyOaRqvjq0z7w772BJqIA6BwntW1fRek=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/libraries/aws-c-s3/default.nix b/pkgs/development/libraries/aws-c-s3/default.nix
index 8db5b837ba6b..895babbb4f72 100644
--- a/pkgs/development/libraries/aws-c-s3/default.nix
+++ b/pkgs/development/libraries/aws-c-s3/default.nix
@@ -14,13 +14,13 @@
 
 stdenv.mkDerivation rec {
   pname = "aws-c-s3";
-  version = "0.5.4";
+  version = "0.5.7";
 
   src = fetchFromGitHub {
     owner = "awslabs";
     repo = "aws-c-s3";
     rev = "v${version}";
-    hash = "sha256-8eKQsP7AftNDccsZHPC9PcwpbpgZSvsioUuSsiggQDs=";
+    hash = "sha256-zzsRYhLgJfd02fPgoZBf7n6dTfbLHarc1aQa0fx/uck=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/libraries/aws-c-sdkutils/default.nix b/pkgs/development/libraries/aws-c-sdkutils/default.nix
index 7ced8b5a415d..dc5dc02f6242 100644
--- a/pkgs/development/libraries/aws-c-sdkutils/default.nix
+++ b/pkgs/development/libraries/aws-c-sdkutils/default.nix
@@ -7,13 +7,13 @@
 
 stdenv.mkDerivation rec {
   pname = "aws-c-sdkutils";
-  version = "0.1.15";
+  version = "0.1.16";
 
   src = fetchFromGitHub {
     owner = "awslabs";
     repo = "aws-c-sdkutils";
     rev = "v${version}";
-    hash = "sha256-RTRDbdv+QmRG0Sk/R9qhl45WYEVyl+M0EceLFsoONTI=";
+    hash = "sha256-ih7U2uP5FrBx6or1Rp/k+HWDE6evEZyNM//wsPxH9Qo=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/libraries/aws-crt-cpp/default.nix b/pkgs/development/libraries/aws-crt-cpp/default.nix
index c41c5426d566..cbf2e22ec732 100644
--- a/pkgs/development/libraries/aws-crt-cpp/default.nix
+++ b/pkgs/development/libraries/aws-crt-cpp/default.nix
@@ -17,7 +17,7 @@
 
 stdenv.mkDerivation rec {
   pname = "aws-crt-cpp";
-  version = "0.26.4";
+  version = "0.26.8";
 
   outputs = [ "out" "dev" ];
 
@@ -25,7 +25,7 @@ stdenv.mkDerivation rec {
     owner = "awslabs";
     repo = "aws-crt-cpp";
     rev = "v${version}";
-    sha256 = "sha256-H5ms6fhhlkARn9g8S5Ma8bnisZv8mfNizP0QpzsF1tA=";
+    sha256 = "sha256-TW17Jcs9y8OqB0mnbHbOZgSWkYs70o2bhiLT/Rr1e8k=";
   };
 
   patches = [
diff --git a/pkgs/development/libraries/aws-sdk-cpp/default.nix b/pkgs/development/libraries/aws-sdk-cpp/default.nix
index 0d210abd4a15..50ec9d64bbb1 100644
--- a/pkgs/development/libraries/aws-sdk-cpp/default.nix
+++ b/pkgs/development/libraries/aws-sdk-cpp/default.nix
@@ -27,13 +27,13 @@ in
 
 stdenv.mkDerivation rec {
   pname = "aws-sdk-cpp";
-  version = "1.11.296";
+  version = "1.11.318";
 
   src = fetchFromGitHub {
     owner = "aws";
     repo = "aws-sdk-cpp";
     rev = version;
-    hash = "sha256-yg+OkeUaqwUQGQ5ThIVQUpF2rHm4FuFbcl5gE5WHHOQ=";
+    hash = "sha256-HQNtVCt8vemRVnz0v9TNjUpjYn/IlbgIOeDESt3iI4A=";
   };
 
   postPatch = ''
diff --git a/pkgs/development/libraries/bamf/default.nix b/pkgs/development/libraries/bamf/default.nix
index 99c1df8e0a39..8b1195442963 100644
--- a/pkgs/development/libraries/bamf/default.nix
+++ b/pkgs/development/libraries/bamf/default.nix
@@ -17,7 +17,7 @@
 , xorgserver
 , dbus
 , python3
-, wrapGAppsHook
+, wrapGAppsHook3
 }:
 
 stdenv.mkDerivation rec {
@@ -43,7 +43,7 @@ stdenv.mkDerivation rec {
     pkg-config
     vala
     which
-    wrapGAppsHook
+    wrapGAppsHook3
     xorgserver
   ];
 
diff --git a/pkgs/development/libraries/botan/2.0.nix b/pkgs/development/libraries/botan/2.0.nix
index 53b4e167a7d9..c9a45218dfb4 100644
--- a/pkgs/development/libraries/botan/2.0.nix
+++ b/pkgs/development/libraries/botan/2.0.nix
@@ -2,6 +2,6 @@
 
 callPackage ./generic.nix (args // {
   baseVersion = "2.19";
-  revision = "3";
-  hash = "sha256-2uBH85nFpH8IfbXT2dno8RrkmF0UySjXHaGv+AGALVU=";
+  revision = "4";
+  hash = "sha256-WjqI72Qz6XvKsO+h7WDGGX5K2p2dMLwcR0N7+JuX8nY=";
 })
diff --git a/pkgs/development/libraries/catch2/3.nix b/pkgs/development/libraries/catch2/3.nix
index 403c4f729b05..cf0a0bf70fc1 100644
--- a/pkgs/development/libraries/catch2/3.nix
+++ b/pkgs/development/libraries/catch2/3.nix
@@ -31,9 +31,12 @@ stdenv.mkDerivation rec {
     "-DCMAKE_CTEST_ARGUMENTS=-E;ApprovalTests"
   ];
 
-  # Tests fail on x86_32 if compiled with x87 floats: https://github.com/catchorg/Catch2/issues/2796
   env = lib.optionalAttrs stdenv.isx86_32 {
+    # Tests fail on x86_32 if compiled with x87 floats: https://github.com/catchorg/Catch2/issues/2796
     NIX_CFLAGS_COMPILE = "-msse2 -mfpmath=sse";
+  } // lib.optionalAttrs (stdenv.hostPlatform.isRiscV || stdenv.hostPlatform.isAarch32) {
+    # Build failure caused by -Werror: https://github.com/catchorg/Catch2/issues/2808
+    NIX_CFLAGS_COMPILE = "-Wno-error=cast-align";
   };
 
   doCheck = true;
diff --git a/pkgs/development/libraries/cegui/default.nix b/pkgs/development/libraries/cegui/default.nix
index 1e884b3d8a81..0a1fd07e2508 100644
--- a/pkgs/development/libraries/cegui/default.nix
+++ b/pkgs/development/libraries/cegui/default.nix
@@ -1,6 +1,7 @@
 { lib
 , stdenv
 , fetchFromGitHub
+, writeShellScript
 , cmake
 , ogre
 , freetype
@@ -13,7 +14,7 @@
 
 stdenv.mkDerivation {
   pname = "cegui";
-  version = "unstable-2023-03-18";
+  version = "0-unstable-2023-03-18";
 
   src = fetchFromGitHub {
     owner = "paroj";
@@ -47,6 +48,12 @@ stdenv.mkDerivation {
 
   passthru.updateScript = unstableGitUpdater {
     branch = "v0";
+    # The above branch is separate from the branch with the latest tags, so the updater doesn't pick them up
+    # This is what would be used to handle upstream's format, if it was able to see the tags
+    # tagConverter = writeShellScript "cegui-tag-converter.sh" ''
+    #   sed -e 's/^v//g' -e 's/-/./g'
+    # '';
+    hardcodeZeroVersion = true;
   };
 
   meta = with lib; {
diff --git a/pkgs/development/libraries/cjson/default.nix b/pkgs/development/libraries/cjson/default.nix
index e6e09a7ffe3b..38be1c30cd46 100644
--- a/pkgs/development/libraries/cjson/default.nix
+++ b/pkgs/development/libraries/cjson/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "cjson";
-  version = "1.7.17";
+  version = "1.7.18";
 
   src = fetchFromGitHub {
     owner = "DaveGamble";
     repo = "cJSON";
     rev = "v${version}";
-    sha256 = "sha256-jU9UbXvdXiNXFh7c9p/LppMsuqryFK40NTTyQGbNU84=";
+    sha256 = "sha256-UgUWc/+Zie2QNijxKK5GFe4Ypk97EidG8nTiiHhn5Ys=";
   };
 
   nativeBuildInputs = [ cmake ];
diff --git a/pkgs/development/libraries/cpp-utilities/default.nix b/pkgs/development/libraries/cpp-utilities/default.nix
index 49ebc34fbcf2..9a240d084f92 100644
--- a/pkgs/development/libraries/cpp-utilities/default.nix
+++ b/pkgs/development/libraries/cpp-utilities/default.nix
@@ -3,24 +3,24 @@
 , fetchFromGitHub
 , cmake
 , cppunit
-, iconv
+, libiconv
 }:
 
 stdenv.mkDerivation (finalAttrs: {
   pname = "cpp-utilities";
-  version = "5.24.7";
+  version = "5.24.8";
 
   src = fetchFromGitHub {
     owner = "Martchus";
     repo = "cpp-utilities";
     rev = "v${finalAttrs.version}";
-    sha256 = "sha256-gfyvWnvUXgjocid0nvp3lWhdPb7MYm+1GJRP5RYInEY=";
+    sha256 = "sha256-Bo7XYArkJOK/dsX+K+xadz8SCh736ZMaB29jX4X+RGw=";
   };
 
   nativeBuildInputs = [ cmake ];
   nativeCheckInputs = [ cppunit ];
   buildInputs = lib.optionals stdenv.isDarwin [
-    iconv # needed on Darwin, see https://github.com/Martchus/cpp-utilities/issues/4
+    libiconv # needed on Darwin, see https://github.com/Martchus/cpp-utilities/issues/4
   ];
 
   cmakeFlags = ["-DBUILD_SHARED_LIBS=ON"];
diff --git a/pkgs/development/libraries/criterion/default.nix b/pkgs/development/libraries/criterion/default.nix
deleted file mode 100644
index 9b3304f6012f..000000000000
--- a/pkgs/development/libraries/criterion/default.nix
+++ /dev/null
@@ -1,50 +0,0 @@
-{ lib, stdenv, fetchFromGitHub, boxfort, meson, libcsptr, pkg-config, gettext
-, cmake, ninja, protobuf, libffi, libgit2, dyncall, nanomsg, nanopbMalloc
-, python3Packages }:
-
-stdenv.mkDerivation rec {
-  pname = "criterion";
-  version = "2.4.1";
-
-  src = fetchFromGitHub {
-    owner = "Snaipe";
-    repo = "Criterion";
-    rev = "v${version}";
-    sha256 = "KT1XvhT9t07/ubsqzrVUp4iKcpVc1Z+saGF4pm2RsgQ=";
-    fetchSubmodules = true;
-  };
-
-  nativeBuildInputs = [ meson ninja cmake pkg-config protobuf ];
-
-  buildInputs = [
-    boxfort.dev
-    dyncall
-    gettext
-    libcsptr
-    nanomsg
-    nanopbMalloc
-    libgit2
-    libffi
-  ];
-
-  nativeCheckInputs = with python3Packages; [ cram ];
-
-  doCheck = true;
-
-  postPatch = ''
-    patchShebangs ci/isdir.py src/protocol/gen-pb.py
-  '';
-
-  outputs = [ "dev" "out" ];
-
-  meta = with lib; {
-    description = "A cross-platform C and C++ unit testing framework for the 21th century";
-    homepage = "https://github.com/Snaipe/Criterion";
-    license = licenses.mit;
-    maintainers = with maintainers; [
-      thesola10
-      Yumasi
-    ];
-    platforms = platforms.unix;
-  };
-}
diff --git a/pkgs/development/libraries/crossguid/default.nix b/pkgs/development/libraries/crossguid/default.nix
index e8d85ec23dd5..2b98aca1d66d 100644
--- a/pkgs/development/libraries/crossguid/default.nix
+++ b/pkgs/development/libraries/crossguid/default.nix
@@ -2,7 +2,7 @@
 
 stdenv.mkDerivation rec {
   pname = "crossguid";
-  version = "unstable-2019-05-29";
+  version = "0.2.2-unstable-2019-05-29";
 
   src = fetchFromGitHub {
     owner = "graeme-hill";
@@ -24,7 +24,9 @@ stdenv.mkDerivation rec {
   nativeBuildInputs = [ cmake ];
   buildInputs = lib.optional stdenv.isLinux libuuid;
 
-  passthru.updateScript = unstableGitUpdater { };
+  passthru.updateScript = unstableGitUpdater {
+    tagPrefix = "v";
+  };
 
   meta = with lib; {
     description = "Lightweight cross platform C++ GUID/UUID library";
diff --git a/pkgs/development/libraries/ctranslate2/default.nix b/pkgs/development/libraries/ctranslate2/default.nix
index 369630c81243..908ed390dba4 100644
--- a/pkgs/development/libraries/ctranslate2/default.nix
+++ b/pkgs/development/libraries/ctranslate2/default.nix
@@ -24,13 +24,13 @@ let
 in
 stdenv.mkDerivation rec {
   pname = "ctranslate2";
-  version = "4.2.1";
+  version = "4.3.0";
 
   src = fetchFromGitHub {
     owner = "OpenNMT";
     repo = "CTranslate2";
     rev = "v${version}";
-    hash = "sha256-Bg25HL7BDM+SHtM0m7mJ3mAdpFe4kefdiDx5Ek1pQBs=";
+    hash = "sha256-p9zpmfs1V92a+3Mxgi5eLKuCUN+26FAL4SjySZzPOW8=";
     fetchSubmodules = true;
   };
 
diff --git a/pkgs/development/libraries/ctre/default.nix b/pkgs/development/libraries/ctre/default.nix
index 0c7ef3796125..e35e2d1244c6 100644
--- a/pkgs/development/libraries/ctre/default.nix
+++ b/pkgs/development/libraries/ctre/default.nix
@@ -6,13 +6,13 @@
 
 stdenv.mkDerivation rec {
   pname = "ctre";
-  version = "3.8.1";
+  version = "3.9.0";
 
   src = fetchFromGitHub {
     owner = "hanickadot";
     repo = "compile-time-regular-expressions";
     rev = "v${version}";
-    hash = "sha256-EzAPIqdfktrZ+FTEzz52nRNnH7CG59ZE9Ww7qMkAAbY=";
+    hash = "sha256-Fmx8eKo4UHSYQa5RL70VmaogQj+ILVA1gfpaVE8+MlQ=";
   };
 
   nativeBuildInputs = [ cmake ];
diff --git a/pkgs/development/libraries/drogon/default.nix b/pkgs/development/libraries/drogon/default.nix
index 3e155d6f2d90..2cdc6cfafb36 100644
--- a/pkgs/development/libraries/drogon/default.nix
+++ b/pkgs/development/libraries/drogon/default.nix
@@ -9,13 +9,13 @@
 
 stdenv.mkDerivation (finalAttrs: {
   pname = "drogon";
-  version = "1.9.3";
+  version = "1.9.4";
 
   src = fetchFromGitHub {
     owner = "drogonframework";
     repo = "drogon";
     rev = "v${finalAttrs.version}";
-    sha256 = "sha256-en8w8kda0ijg6b6s2WHxHfuGaa+p08928Jw57UBevDU=";
+    sha256 = "sha256-P6blu3EIBzmK1zikFPiV+tvFLfiQhK+cRdClQOhcBSU=";
     fetchSubmodules = true;
   };
 
diff --git a/pkgs/development/libraries/enchant/2.x.nix b/pkgs/development/libraries/enchant/2.x.nix
index 383a157acbd1..2fa7aec062f3 100644
--- a/pkgs/development/libraries/enchant/2.x.nix
+++ b/pkgs/development/libraries/enchant/2.x.nix
@@ -13,13 +13,13 @@
 
 stdenv.mkDerivation rec {
   pname = "enchant";
-  version = "2.6.8";
+  version = "2.6.9";
 
   outputs = [ "out" "dev" ];
 
   src = fetchurl {
     url = "https://github.com/AbiWord/${pname}/releases/download/v${version}/${pname}-${version}.tar.gz";
-    hash = "sha256-9WWSMGLHfz1YhG8FWNIebQfKSkiMWIEt/e+zUgL6x64=";
+    hash = "sha256-2aWhDcmzikOzoPoix27W67fgnrU1r/YpVK/NvUDv/2s=";
   };
 
   strictDeps = true;
diff --git a/pkgs/development/libraries/faac/default.nix b/pkgs/development/libraries/faac/default.nix
index 42f1f8db59bb..c1dba7c34bda 100644
--- a/pkgs/development/libraries/faac/default.nix
+++ b/pkgs/development/libraries/faac/default.nix
@@ -1,10 +1,8 @@
 { lib, stdenv, fetchurl, autoreconfHook
-, mp4v2Support ? true, mp4v2 ? null
+, mp4v2Support ? true, mp4v2
 , drmSupport ? false # Digital Radio Mondiale
 }:
 
-assert mp4v2Support -> (mp4v2 != null);
-
 stdenv.mkDerivation rec {
   pname = "faac";
   version = "1.30";
@@ -14,21 +12,20 @@ stdenv.mkDerivation rec {
     sha256 = "1lmj0dib3mjp84jhxc5ddvydkzzhb0gfrdh3ikcidjlcb378ghxd";
   };
 
-  configureFlags = [ ]
-    ++ lib.optional mp4v2Support "--with-external-mp4v2"
+  configureFlags = lib.optional mp4v2Support "--with-external-mp4v2"
     ++ lib.optional drmSupport "--enable-drm";
 
   hardeningDisable = [ "format" ];
 
   nativeBuildInputs = [ autoreconfHook ];
 
-  buildInputs = [ ]
-    ++ lib.optional mp4v2Support mp4v2;
+  buildInputs = lib.optional mp4v2Support mp4v2;
 
   enableParallelBuilding = true;
 
   meta = with lib; {
     description = "Open source MPEG-4 and MPEG-2 AAC encoder";
+    homepage = "https://github.com/knik0/faac";
     license     = licenses.unfreeRedistributable;
     maintainers = with maintainers; [ codyopel ];
     platforms   = platforms.all;
diff --git a/pkgs/development/libraries/faudio/default.nix b/pkgs/development/libraries/faudio/default.nix
index fc71ced98101..743ef904dcdf 100644
--- a/pkgs/development/libraries/faudio/default.nix
+++ b/pkgs/development/libraries/faudio/default.nix
@@ -4,13 +4,13 @@
 
 stdenv.mkDerivation rec {
   pname = "faudio";
-  version = "24.04";
+  version = "24.05";
 
   src = fetchFromGitHub {
     owner = "FNA-XNA";
     repo = "FAudio";
     rev = version;
-    sha256 = "sha256-DuQG5AsfLtWHVun9P8iiBqp3xtb67feC5b2gveIRqpA=";
+    sha256 = "sha256-YL5JT/1JTfeKaLUEMnud6OOMk/NSCnBjohk+6qRaU60=";
   };
 
   nativeBuildInputs = [cmake];
diff --git a/pkgs/development/libraries/ffmpeg/generic.nix b/pkgs/development/libraries/ffmpeg/generic.nix
index bdc0cdd5ffa4..92a28d8a7705 100644
--- a/pkgs/development/libraries/ffmpeg/generic.nix
+++ b/pkgs/development/libraries/ffmpeg/generic.nix
@@ -40,12 +40,14 @@
 , withAss ? withHeadlessDeps && stdenv.hostPlatform == stdenv.buildPlatform # (Advanced) SubStation Alpha subtitle rendering
 , withAudioToolbox ? withHeadlessDeps && stdenv.isDarwin # Apple AudioToolbox
 , withAvFoundation ? withHeadlessDeps && stdenv.isDarwin # Apple AVFoundation framework
+, withAvisynth ? withFullDeps # AviSynth script files reading
 , withBluray ? withFullDeps # BluRay reading
 , withBs2b ? withFullDeps # bs2b DSP library
 , withBzlib ? withHeadlessDeps
 , withCaca ? withFullDeps # Textual display (ASCII art)
 , withCelt ? withFullDeps # CELT decoder
 , withChromaprint ? withFullDeps # Audio fingerprinting
+, withCodec2 ? withFullDeps # codec2 en/decoding
 , withCoreImage ? withHeadlessDeps && stdenv.isDarwin # Apple CoreImage framework
 , withCuda ? withFullDeps && withNvcodec
 , withCudaLLVM ? withFullDeps
@@ -68,6 +70,7 @@
 , withHarfbuzz ? withHeadlessDeps && lib.versionAtLeast version "6.1" # Needed for drawtext filter
 , withIconv ? withHeadlessDeps
 , withJack ? withFullDeps && !stdenv.isDarwin # Jack audio
+, withJxl ? withFullDeps && lib.versionAtLeast version "5" # JPEG XL de/encoding
 , withLadspa ? withFullDeps # LADSPA audio filtering
 , withLzma ? withHeadlessDeps # xz-utils
 , withMfx ? withFullDeps && (with stdenv.hostPlatform; isLinux && !isAarch) # Hardware acceleration via intel-media-sdk/libmfx
@@ -211,9 +214,11 @@
  *  External libraries options
  */
 , alsa-lib
+, avisynthplus
 , bzip2
 , celt
 , chromaprint
+, codec2
 , clang
 , dav1d
 , fdk_aac
@@ -243,6 +248,7 @@
 , libGLU
 , libiconv
 , libjack2
+, libjxl
 , libmodplug
 , libmysofa
 , libogg
@@ -415,6 +421,13 @@ stdenv.mkDerivation (finalAttrs: {
         '';
       }
     ]
+    ++ (lib.optionals (lib.versionAtLeast version "5" && lib.versionOlder version "6") [
+      {
+        name = "fix_build_failure_due_to_libjxl_version_to_new";
+        url = "https://git.ffmpeg.org/gitweb/ffmpeg.git/patch/75b1a555a70c178a9166629e43ec2f6250219eb2";
+        hash = "sha256-+2kzfPJf5piim+DqEgDuVEEX5HLwRsxq0dWONJ4ACrU=";
+      }
+    ])
     ++ (lib.optionals (lib.versionAtLeast version "6.1" && lib.versionOlder version "6.2") [
       { # this can be removed post 6.1
         name = "fix_build_failure_due_to_PropertyKey_EncoderID";
@@ -527,12 +540,14 @@ stdenv.mkDerivation (finalAttrs: {
     (enableFeature withAss "libass")
     (enableFeature withAudioToolbox "audiotoolbox")
     (enableFeature withAvFoundation "avfoundation")
+    (enableFeature withAvisynth "avisynth")
     (enableFeature withBluray "libbluray")
     (enableFeature withBs2b "libbs2b")
     (enableFeature withBzlib "bzlib")
     (enableFeature withCaca "libcaca")
     (enableFeature withCelt "libcelt")
     (enableFeature withChromaprint "chromaprint")
+    (enableFeature withCodec2 "libcodec2")
     (enableFeature withCoreImage "coreimage")
     (enableFeature withCuda "cuda")
     (enableFeature withCudaLLVM "cuda-llvm")
@@ -560,6 +575,9 @@ stdenv.mkDerivation (finalAttrs: {
   ] ++ [
     (enableFeature withIconv "iconv")
     (enableFeature withJack "libjack")
+  ] ++ optionals (versionAtLeast finalAttrs.version "5.0") [
+    (enableFeature withJxl "libjxl")
+  ] ++ [
     (enableFeature withLadspa "ladspa")
     (enableFeature withLzma "lzma")
     (enableFeature withMfx "libmfx")
@@ -671,12 +689,14 @@ stdenv.mkDerivation (finalAttrs: {
   ++ optionals withAss [ libass ]
   ++ optionals withAudioToolbox [ AudioToolbox ]
   ++ optionals withAvFoundation [ AVFoundation ]
+  ++ optionals withAvisynth [ avisynthplus ]
   ++ optionals withBluray [ libbluray ]
   ++ optionals withBs2b [ libbs2b ]
   ++ optionals withBzlib [ bzip2 ]
   ++ optionals withCaca [ libcaca ]
   ++ optionals withCelt [ celt ]
   ++ optionals withChromaprint [ chromaprint ]
+  ++ optionals withCodec2 [ codec2 ]
   ++ optionals withCoreImage [ CoreImage ]
   ++ optionals withDav1d [ dav1d ]
   ++ optionals withDc1394 [ libdc1394 libraw1394 ]
@@ -696,6 +716,7 @@ stdenv.mkDerivation (finalAttrs: {
   ++ optionals withHarfbuzz [ harfbuzz ]
   ++ optionals withIconv [ libiconv ] # On Linux this should be in libc, do we really need it?
   ++ optionals withJack [ libjack2 ]
+  ++ optionals withJxl [ libjxl ]
   ++ optionals withLadspa [ ladspaH ]
   ++ optionals withLzma [ xz ]
   ++ optionals withMfx [ intel-media-sdk ]
diff --git a/pkgs/development/libraries/folks/default.nix b/pkgs/development/libraries/folks/default.nix
index 8df1c9585450..0f40be439a3a 100644
--- a/pkgs/development/libraries/folks/default.nix
+++ b/pkgs/development/libraries/folks/default.nix
@@ -27,13 +27,13 @@
 
 stdenv.mkDerivation (finalAttrs: {
   pname = "folks";
-  version = "0.15.7";
+  version = "0.15.9";
 
   outputs = [ "out" "dev" "devdoc" ];
 
   src = fetchurl {
     url = "mirror://gnome/sources/folks/${lib.versions.majorMinor finalAttrs.version}/folks-${finalAttrs.version}.tar.xz";
-    sha256 = "Eg8hnvYyEsqpWuf2rrZOKZKLCxqLlFIFQwSgDQ80eHE=";
+    hash = "sha256-IxGzc1XDUfM/Fj/cOUh0oioKBoLDGUk9bYpuQgcRQV8=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/libraries/functionalplus/default.nix b/pkgs/development/libraries/functionalplus/default.nix
index 6d3092e53c35..e4eef8dfe532 100644
--- a/pkgs/development/libraries/functionalplus/default.nix
+++ b/pkgs/development/libraries/functionalplus/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "functionalplus";
-  version = "0.2.23";
+  version = "0.2.24";
 
   src = fetchFromGitHub {
     owner = "Dobiasd";
     repo = "FunctionalPlus";
     rev = "v${version}";
-    sha256 = "sha256-WDufVO0vQyu7O3w9tq+19JioRUFgYlnTbO/AQzg0FnM=";
+    sha256 = "sha256-iQGvqFiTqejSqXALgUWCBjfH9QO0cg3vnI5PphgVoms=";
   };
 
   nativeBuildInputs = [ cmake ];
diff --git a/pkgs/development/libraries/gcr/4.nix b/pkgs/development/libraries/gcr/4.nix
index ea1dbf99f273..dd860d0bc700 100644
--- a/pkgs/development/libraries/gcr/4.nix
+++ b/pkgs/development/libraries/gcr/4.nix
@@ -26,13 +26,13 @@
 
 stdenv.mkDerivation rec {
   pname = "gcr";
-  version = "4.1.0";
+  version = "4.3.0";
 
   outputs = [ "out" "bin" "dev" "devdoc" ];
 
   src = fetchurl {
     url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
-    sha256 = "nOqtKShLqRm5IW4oiMGOxnJAwsk7OkhWvFSIu8Hzo4M=";
+    hash = "sha256-w+6HKOQ2SwOX9DX6IPkvkBqxOdKyZPTgWdZ7PA9DzTY=";
   };
 
   strictDeps = true;
diff --git a/pkgs/development/libraries/gcr/default.nix b/pkgs/development/libraries/gcr/default.nix
index 11d695e77499..db31927b7a70 100644
--- a/pkgs/development/libraries/gcr/default.nix
+++ b/pkgs/development/libraries/gcr/default.nix
@@ -16,7 +16,7 @@
 , openssh
 , systemdSupport ? lib.meta.availableOn stdenv.hostPlatform systemd, systemd
 , gobject-introspection
-, wrapGAppsHook
+, wrapGAppsHook3
 , gi-docgen
 , vala
 , gnome
@@ -45,7 +45,7 @@ stdenv.mkDerivation rec {
     gettext
     gobject-introspection
     gi-docgen
-    wrapGAppsHook
+    wrapGAppsHook3
     vala
     shared-mime-info
     openssh
diff --git a/pkgs/development/libraries/gdk-pixbuf/default.nix b/pkgs/development/libraries/gdk-pixbuf/default.nix
index f77daec2ea6f..a90a2c5c9f78 100644
--- a/pkgs/development/libraries/gdk-pixbuf/default.nix
+++ b/pkgs/development/libraries/gdk-pixbuf/default.nix
@@ -25,7 +25,7 @@
 
 stdenv.mkDerivation (finalAttrs: {
   pname = "gdk-pixbuf";
-  version = "2.42.10";
+  version = "2.42.11";
 
   outputs = [ "out" "dev" "man" ]
     ++ lib.optional withIntrospection "devdoc"
@@ -35,7 +35,7 @@ stdenv.mkDerivation (finalAttrs: {
     inherit (finalAttrs) pname version;
   in fetchurl {
     url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
-    sha256 = "7ptsddE7oJaQei48aye2G80X9cfr6rWltDnS8uOf5Es=";
+    hash = "sha256-Sdy0AjiHCGR+jDIdVrb7MPIeUeUV0MWpQiaNIwUqLwA=";
   };
 
   patches = [
diff --git a/pkgs/development/libraries/geis/default.nix b/pkgs/development/libraries/geis/default.nix
index 17ef806ec9ad..9f1cc784e140 100644
--- a/pkgs/development/libraries/geis/default.nix
+++ b/pkgs/development/libraries/geis/default.nix
@@ -1,7 +1,7 @@
 { lib, stdenv, fetchurl
 , pkg-config
 , python3Packages
-, wrapGAppsHook
+, wrapGAppsHook3
 , atk
 , dbus
 , evemu
@@ -32,7 +32,7 @@ stdenv.mkDerivation rec {
   pythonPath = with python3Packages;
     [ pygobject3  ];
 
-  nativeBuildInputs = [ pkg-config wrapGAppsHook python3Packages.wrapPython gobject-introspection ];
+  nativeBuildInputs = [ pkg-config wrapGAppsHook3 python3Packages.wrapPython gobject-introspection ];
   buildInputs = [ atk dbus evemu frame gdk-pixbuf grail
     gtk3 xorg.libX11 xorg.libXext xorg.libXi xorg.libXtst pango python3Packages.python xorgserver
   ];
diff --git a/pkgs/development/libraries/geoclue/default.nix b/pkgs/development/libraries/geoclue/default.nix
index c2bf28d71045..df58e5dc9e19 100644
--- a/pkgs/development/libraries/geoclue/default.nix
+++ b/pkgs/development/libraries/geoclue/default.nix
@@ -19,7 +19,7 @@
 , avahi
 , glib-networking
 , python3
-, wrapGAppsHook
+, wrapGAppsHook3
 , gobject-introspection
 , vala
 , withDemoAgent ? false
@@ -48,7 +48,7 @@ stdenv.mkDerivation rec {
     intltool
     meson
     ninja
-    wrapGAppsHook
+    wrapGAppsHook3
     python3
     vala
     gobject-introspection
diff --git a/pkgs/development/libraries/giflib/default.nix b/pkgs/development/libraries/giflib/default.nix
index 9c24d11d4abc..677db06e5083 100644
--- a/pkgs/development/libraries/giflib/default.nix
+++ b/pkgs/development/libraries/giflib/default.nix
@@ -4,7 +4,6 @@
 , fetchpatch
 , fixDarwinDylibNames
 , pkgsStatic
-, imagemagick_light
 }:
 
 stdenv.mkDerivation rec {
@@ -29,9 +28,7 @@ stdenv.mkDerivation rec {
     ./mingw-install-exes.patch
   ];
 
-  nativeBuildInputs = [
-    imagemagick_light
-  ] ++ lib.optionals stdenv.isDarwin [
+  nativeBuildInputs = lib.optionals stdenv.isDarwin [
     fixDarwinDylibNames
   ];
 
@@ -39,7 +36,11 @@ stdenv.mkDerivation rec {
     "PREFIX=${builtins.placeholder "out"}"
   ];
 
-  postPatch = lib.optionalString stdenv.hostPlatform.isStatic ''
+  postPatch = ''
+    # we don't want to build HTML documentation
+    substituteInPlace doc/Makefile \
+      --replace-fail "all: allhtml manpages" "all: manpages"
+  '' + lib.optionalString stdenv.hostPlatform.isStatic ''
     # Upstream build system does not support NOT building shared libraries.
     sed -i '/all:/ s/$(LIBGIFSO)//' Makefile
     sed -i '/all:/ s/$(LIBUTILSO)//' Makefile
diff --git a/pkgs/development/libraries/gjs/default.nix b/pkgs/development/libraries/gjs/default.nix
index dc5f5e46975d..604435cee510 100644
--- a/pkgs/development/libraries/gjs/default.nix
+++ b/pkgs/development/libraries/gjs/default.nix
@@ -32,13 +32,13 @@ let
   ];
 in stdenv.mkDerivation (finalAttrs: {
   pname = "gjs";
-  version = "1.78.4";
+  version = "1.80.2";
 
   outputs = [ "out" "dev" "installedTests" ];
 
   src = fetchurl {
     url = "mirror://gnome/sources/gjs/${lib.versions.majorMinor finalAttrs.version}/gjs-${finalAttrs.version}.tar.xz";
-    hash = "sha256-mux6uHLCBQQEkHrpTwrnq+yKVL2ciU3bXC0PUekyuaE=";
+    hash = "sha256-E145xaxZEJYjPlV8/ld9ZAk/UFRBHUfLLiFLrX1Bmb0=";
   };
 
   patches = [
@@ -47,6 +47,10 @@ in stdenv.mkDerivation (finalAttrs: {
 
     # Allow installing installed tests to a separate output.
     ./installed-tests-path.patch
+
+    # Disable introspection test in installed tests
+    # (minijasmine:1317): GLib-GIO-WARNING **: 17:33:39.556: Error creating IO channel for /proc/self/mountinfo: No such file or directory (g-io-error-quark, 1)
+    ./disable-introspection-test.patch
   ];
 
   nativeBuildInputs = [
diff --git a/pkgs/development/libraries/gjs/disable-introspection-test.patch b/pkgs/development/libraries/gjs/disable-introspection-test.patch
new file mode 100644
index 000000000000..1c438dd6b401
--- /dev/null
+++ b/pkgs/development/libraries/gjs/disable-introspection-test.patch
@@ -0,0 +1,12 @@
+diff --git a/installed-tests/js/meson.build b/installed-tests/js/meson.build
+index 07759690..43c87c59 100644
+--- a/installed-tests/js/meson.build
++++ b/installed-tests/js/meson.build
+@@ -123,7 +123,6 @@ jasmine_tests = [
+     'GTypeClass',
+     'Importer',
+     'Importer2',
+-    'Introspection',
+     'Lang',
+     'LegacyByteArray',
+     'LegacyClass',
diff --git a/pkgs/development/libraries/gl3w/default.nix b/pkgs/development/libraries/gl3w/default.nix
index fdfb203ba12b..c0934e7d18f9 100644
--- a/pkgs/development/libraries/gl3w/default.nix
+++ b/pkgs/development/libraries/gl3w/default.nix
@@ -2,7 +2,7 @@
 
 stdenv.mkDerivation rec {
   pname = "gl3w";
-  version = "unstable-2023-10-10";
+  version = "0-unstable-2023-10-10";
 
   src = fetchFromGitHub {
     owner = "skaslev";
diff --git a/pkgs/development/libraries/glib-networking/default.nix b/pkgs/development/libraries/glib-networking/default.nix
index 39e17a894cb7..d74acc063e5c 100644
--- a/pkgs/development/libraries/glib-networking/default.nix
+++ b/pkgs/development/libraries/glib-networking/default.nix
@@ -19,13 +19,13 @@
 
 stdenv.mkDerivation rec {
   pname = "glib-networking";
-  version = "2.78.1";
+  version = "2.80.0";
 
   outputs = [ "out" "installedTests" ];
 
   src = fetchurl {
     url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
-    sha256 = "5I8t27BJgyy7CSMFKcXkXayp8N8O2jJfgy9zeYWb8J8=";
+    hash = "sha256-2PTxqrITF5rjNRYXtZ2rXea8yeeFAh7uF4mY69S7Os8=";
   };
 
   patches = [
diff --git a/pkgs/development/libraries/glib/default.nix b/pkgs/development/libraries/glib/default.nix
index cd03315c0b3c..70d24842a86e 100644
--- a/pkgs/development/libraries/glib/default.nix
+++ b/pkgs/development/libraries/glib/default.nix
@@ -2,24 +2,31 @@
 , lib
 , stdenv
 , fetchurl
-, fetchpatch
 , gettext
 , meson
 , ninja
 , pkg-config
 , perl
 , python3
-, libiconv, zlib, libffi, pcre2, elfutils, gnome, libselinux, bash, gnum4, gtk-doc, docbook_xsl, docbook_xml_dtd_45, libxslt
+, python3Packages
+, libiconv, zlib, libffi, pcre2, elfutils, gnome, libselinux, bash, gnum4, libxslt
+, docutils, gi-docgen
 # use util-linuxMinimal to avoid circular dependency (util-linux, systemd, glib)
 , util-linuxMinimal ? null
 , buildPackages
 
 # this is just for tests (not in the closure of any regular package)
-, coreutils, dbus, libxml2, tzdata
+, coreutils, dbus, tzdata
 , desktop-file-utils, shared-mime-info
 , darwin
 , makeHardcodeGsettingsPatch
 , testers
+, gobject-introspection
+, mesonEmulatorHook
+, withIntrospection ?
+  stdenv.hostPlatform.emulatorAvailable buildPackages &&
+  lib.meta.availableOn stdenv.hostPlatform gobject-introspection &&
+  stdenv.hostPlatform.isLittleEndian == stdenv.buildPlatform.isLittleEndian
 }:
 
 assert stdenv.isLinux -> util-linuxMinimal != null;
@@ -38,16 +45,26 @@ let
     ln -sr -t "''${!outputInclude}/include/" "''${!outputInclude}"/lib/*/include/* 2>/dev/null || true
   '';
 
-  buildDocs = stdenv.hostPlatform == stdenv.buildPlatform && !stdenv.hostPlatform.isStatic;
+  gobject-introspection' = buildPackages.gobject-introspection.override {
+    propagateFullGlib = false;
+    # Avoid introducing cairo, which enables gobjectSupport by default.
+    x11Support = false;
+  };
+
+  librarySuffix = if (stdenv.hostPlatform.extensions.library == ".so") then "2.0.so.0"
+                  else if (stdenv.hostPlatform.extensions.library == ".dylib") then "2.0.0.dylib"
+                  else if (stdenv.hostPlatform.extensions.library == ".a") then "2.0.a"
+                  else if (stdenv.hostPlatform.extensions.library == ".dll") then "2.0-0.dll"
+                  else "2.0-0.lib";
 in
 
 stdenv.mkDerivation (finalAttrs: {
   pname = "glib";
-  version = "2.78.4";
+  version = "2.80.0";
 
   src = fetchurl {
     url = "mirror://gnome/sources/glib/${lib.versions.majorMinor finalAttrs.version}/glib-${finalAttrs.version}.tar.xz";
-    sha256 = "sha256-JLjgZy3KEgzDLTlLzLhYROcy4E/nXRi7BXOy28dUj2M=";
+    hash = "sha256-giipL5KkEhYLE5rmi2NFvSjyRDSnta8VDr4h/1h6Vh0=";
   };
 
   patches = lib.optionals stdenv.isDarwin [
@@ -56,13 +73,19 @@ stdenv.mkDerivation (finalAttrs: {
     ./quark_init_on_demand.patch
     ./gobject_init_on_demand.patch
   ] ++ [
-    (fetchpatch {
-      name = "GLib-against-PCRE2-10.43.patch";
-      url = "https://gitlab.gnome.org/GNOME/glib/-/commit/cce3ae98a2c1966719daabff5a4ec6cf94a846f6.patch";
-      hash = "sha256-vgKzb5hQmFQGD8zxRrXnuX9Gpg/TeSrzehlOH2vA1xU=";
-    })
-
+    # This patch lets GLib's GDesktopAppInfo API watch and notice changes
+    # to the Nix user and system profiles.  That way, the list of available
+    # applications shown by the desktop environment is immediately updated
+    # when the user installs or removes any
+    # (see <https://issues.guix.gnu.org/35594>).
+
+    # It does so by monitoring /nix/var/nix/profiles (for changes to the system
+    # profile) and /nix/var/nix/profiles/per-user/USER (for changes to the user
+    # profile) as well as /etc/profiles/per-user (for chanes to the user
+    # environment profile) and crawling their share/applications sub-directory when
+    # changes happen.
     ./glib-appinfo-watch.patch
+
     ./schema-override-variable.patch
 
     # Add support for Pantheon’s terminal emulator.
@@ -91,10 +114,6 @@ stdenv.mkDerivation (finalAttrs: {
     # 3. Tools for desktop environment that cannot go to $bin due to $out depending on them ($out)
     #    * gio-launch-desktop
     ./split-dev-programs.patch
-
-    # Disable flaky test.
-    # https://gitlab.gnome.org/GNOME/glib/-/issues/820
-    ./skip-timer-test.patch
   ];
 
   outputs = [ "bin" "out" "dev" "devdoc" ];
@@ -113,48 +132,44 @@ stdenv.mkDerivation (finalAttrs: {
     util-linuxMinimal # for libmount
   ] ++ lib.optionals stdenv.isDarwin (with darwin.apple_sdk.frameworks; [
     AppKit Carbon Cocoa CoreFoundation CoreServices Foundation
-  ]) ++ lib.optionals buildDocs [
-    # Note: this needs to be both in buildInputs and nativeBuildInputs. The
-    # Meson gtkdoc module uses find_program to look it up (-> build dep), but
-    # glib's own Meson configuration uses the host pkg-config to find its
-    # version (-> host dep). We could technically go and fix this in glib, add
-    # pkg-config to depsBuildBuild, but this would be a futile exercise since
-    # Meson's gtkdoc integration does not support cross compilation[1] anyway
-    # and this derivation disables the docs build when cross compiling.
-    #
-    # [1] https://github.com/mesonbuild/meson/issues/2003
-    gtk-doc
-  ];
+  ]);
 
   strictDeps = true;
 
+  depsBuildBuild = [
+    pkg-config # required to find native gi-docgen
+  ];
+
   nativeBuildInputs = [
+    docutils # for rst2man, rst2html5
     meson
     ninja
     pkg-config
     perl
     python3
+    python3Packages.packaging # mostly used to make meson happy
+    python3Packages.wrapPython # for patchPythonScript
     gettext
     libxslt
-    docbook_xsl
-  ] ++ lib.optionals buildDocs [
-    gtk-doc
-    docbook_xml_dtd_45
-    libxml2
+  ] ++ lib.optionals withIntrospection [
+    gi-docgen
+    gobject-introspection'
+  ] ++ lib.optionals (withIntrospection && !stdenv.buildPlatform.canExecute stdenv.hostPlatform) [
+    mesonEmulatorHook
   ];
 
   propagatedBuildInputs = [ zlib libffi gettext libiconv ];
 
   mesonFlags = [
-    # Avoid the need for gobject introspection binaries in PATH in cross-compiling case.
-    # Instead we just copy them over from the native output.
-    "-Dgtk_doc=${lib.boolToString buildDocs}"
+    "-Ddocumentation=true" # gvariant specification can be built without gi-docgen
     "-Dnls=enabled"
     "-Ddevbindir=${placeholder "dev"}/bin"
+    (lib.mesonEnable "introspection" withIntrospection)
+    # FIXME: Fails when linking target glib/tests/libconstructor-helper.so
+    # relocation R_X86_64_32 against hidden symbol `__TMC_END__' can not be used when making a shared object
+    "-Dtests=${lib.boolToString (!stdenv.hostPlatform.isStatic)}"
   ] ++ lib.optionals (!lib.meta.availableOn stdenv.hostPlatform elfutils) [
     "-Dlibelf=disabled"
-  ] ++ lib.optionals (!stdenv.isDarwin) [
-    "-Dman=true"                # broken on Darwin
   ] ++ lib.optionals stdenv.isFreeBSD [
     "-Db_lundef=false"
     "-Dxattr=false"
@@ -168,14 +183,11 @@ stdenv.mkDerivation (finalAttrs: {
   ];
 
   postPatch = ''
-    chmod +x gio/tests/gengiotypefuncs.py
-    patchShebangs gio/tests/gengiotypefuncs.py
-    chmod +x docs/reference/gio/concat-files-helper.py
-    patchShebangs docs/reference/gio/concat-files-helper.py
     patchShebangs glib/gen-unicode-tables.pl
     patchShebangs glib/tests/gen-casefold-txt.py
     patchShebangs glib/tests/gen-casemap-txt.py
     patchShebangs tools/gen-visibility-macros.py
+    patchShebangs tests
 
     # Needs machine-id, comment the test
     sed -e '/\/gdbus\/codegen-peer-to-peer/ s/^\/*/\/\//' -i gio/tests/gdbus-peer.c
@@ -211,8 +223,11 @@ stdenv.mkDerivation (finalAttrs: {
     for i in $dev/bin/*; do
       moveToOutput "share/bash-completion/completions/''${i##*/}" "$dev"
     done
-  '' + lib.optionalString (!buildDocs) ''
-    cp -r ${buildPackages.glib.devdoc} $devdoc
+  '';
+
+  preFixup = lib.optionalString (!stdenv.hostPlatform.isStatic) ''
+    buildPythonPath ${python3Packages.packaging}
+    patchPythonScript "$dev/share/glib-2.0/codegen/utils.py"
   '';
 
   # Move man pages to the same output as their binaries (needs to be
@@ -222,10 +237,14 @@ stdenv.mkDerivation (finalAttrs: {
     for i in $dev/bin/*; do
       moveToOutput "share/man/man1/''${i##*/}.1.*" "$dev"
     done
+
+    # Cannot be in postInstall, otherwise _multioutDocs hook in preFixup will move right back.
+    moveToOutput "share/doc/glib-2.0" "$devdoc"
   '';
 
   nativeCheckInputs = [ tzdata desktop-file-utils shared-mime-info ];
 
+  # Conditional necessary to break infinite recursion with passthru.tests
   preCheck = lib.optionalString finalAttrs.finalPackage.doCheck or config.doCheckByDefault or false ''
     export LD_LIBRARY_PATH="$NIX_BUILD_TOP/glib-${finalAttrs.version}/glib/.libs''${LD_LIBRARY_PATH:+:}$LD_LIBRARY_PATH"
     export TZDIR="${tzdata}/share/zoneinfo"
@@ -234,8 +253,34 @@ stdenv.mkDerivation (finalAttrs: {
     export HOME="$TMP"
     export XDG_DATA_DIRS="${desktop-file-utils}/share:${shared-mime-info}/share"
     export G_TEST_DBUS_DAEMON="${dbus}/bin/dbus-daemon"
-    export PATH="$PATH:$(pwd)/gobject"
+
+    # pkg_config_tests expects a PKG_CONFIG_PATH that points to meson-private, wrapped pkg-config
+    # tries to be clever and picks up the wrong glib at the end.
+    export PATH="${buildPackages.pkg-config-unwrapped}/bin:$PATH:$(pwd)/gobject"
     echo "PATH=$PATH"
+
+    # Our gobject-introspection patches make the shared library paths absolute
+    # in the GIR files. When running tests, the library is not yet installed,
+    # though, so we need to replace the absolute path with a local one during build.
+    # We are using a symlink that we will delete before installation.
+    mkdir -p $out/lib
+    ln -s $PWD/gobject/libgobject-${librarySuffix} $out/lib/libgobject-${librarySuffix}
+    ln -s $PWD/gio/libgio-${librarySuffix} $out/lib/libgio-${librarySuffix}
+    ln -s $PWD/glib/libglib-${librarySuffix} $out/lib/libglib-${librarySuffix}
+  '';
+
+  checkPhase = ''
+    runHook preCheck
+
+    meson test --print-errorlogs
+
+    runHook postCheck
+  '';
+
+  postCheck = ''
+    rm $out/lib/libgobject-${librarySuffix}
+    rm $out/lib/libgio-${librarySuffix}
+    rm $out/lib/libglib-${librarySuffix}
   '';
 
   separateDebugInfo = stdenv.isLinux;
diff --git a/pkgs/development/libraries/glib/elementary-terminal-support.patch b/pkgs/development/libraries/glib/elementary-terminal-support.patch
index 34a56c8487ae..5178f9d016ca 100644
--- a/pkgs/development/libraries/glib/elementary-terminal-support.patch
+++ b/pkgs/development/libraries/glib/elementary-terminal-support.patch
@@ -1,8 +1,8 @@
 diff --git a/gio/gdesktopappinfo.c b/gio/gdesktopappinfo.c
-index 30fcb2937..a6a7163a7 100644
+index 87db7a97a..bf01fb6b6 100644
 --- a/gio/gdesktopappinfo.c
 +++ b/gio/gdesktopappinfo.c
-@@ -2704,6 +2704,7 @@ prepend_terminal_to_vector (int          *argc,
+@@ -2697,6 +2697,7 @@ prepend_terminal_to_vector (int          *argc,
      { "gnome-terminal", "--" },
      { "mate-terminal", "-x" },
      { "xfce4-terminal", "-x" },
diff --git a/pkgs/development/libraries/glib/glib-appinfo-watch.patch b/pkgs/development/libraries/glib/glib-appinfo-watch.patch
index cbd78a6db4a6..43641301d3ef 100644
--- a/pkgs/development/libraries/glib/glib-appinfo-watch.patch
+++ b/pkgs/development/libraries/glib/glib-appinfo-watch.patch
@@ -1,20 +1,8 @@
-This patch lets GLib's GDesktopAppInfo API watch and notice changes
-to the Nix user and system profiles.  That way, the list of available
-applications shown by the desktop environment is immediately updated
-when the user installs or removes any
-(see <https://issues.guix.gnu.org/35594>).
-
-It does so by monitoring /nix/var/nix/profiles (for changes to the system
-profile) and /nix/var/nix/profiles/per-user/USER (for changes to the user
-profile) as well as /etc/profiles/per-user (for chanes to the user
-environment profile) and crawling their share/applications sub-directory when
-changes happen.
-
 diff --git a/gio/gdesktopappinfo.c b/gio/gdesktopappinfo.c
-index b779b30..31069f7 100644
+index 87db7a97a..2e1689ed7 100644
 --- a/gio/gdesktopappinfo.c
 +++ b/gio/gdesktopappinfo.c
-@@ -150,6 +150,7 @@ typedef struct
+@@ -147,6 +147,7 @@ typedef struct
    gchar                      *alternatively_watching;
    gboolean                    is_config;
    gboolean                    is_setup;
@@ -22,7 +10,7 @@ index b779b30..31069f7 100644
    GFileMonitor               *monitor;
    GHashTable                 *app_names;
    GHashTable                 *mime_tweaks;
-@@ -181,6 +182,7 @@ desktop_file_dir_unref (DesktopFileDir *dir)
+@@ -179,6 +180,7 @@ desktop_file_dir_unref (DesktopFileDir *dir)
      {
        desktop_file_dir_reset (dir);
        g_free (dir->path);
@@ -30,7 +18,7 @@ index b779b30..31069f7 100644
        g_free (dir);
      }
  }
-@@ -205,6 +207,14 @@ desktop_file_dir_get_alternative_dir (DesktopFileDir *dir)
+@@ -203,6 +205,14 @@ desktop_file_dir_get_alternative_dir (DesktopFileDir *dir)
  {
    gchar *parent;
  
@@ -45,7 +33,7 @@ index b779b30..31069f7 100644
    /* If the directory itself exists then we need no alternative. */
    if (g_access (dir->path, R_OK | X_OK) == 0)
      return NULL;
-@@ -250,11 +260,11 @@ desktop_file_dir_changed (GFileMonitor      *monitor,
+@@ -248,11 +258,11 @@ desktop_file_dir_changed (GFileMonitor      *monitor,
     *
     * If this is a notification for a parent directory (because the
     * desktop directory didn't exist) then we shouldn't fire the signal
@@ -59,7 +47,7 @@ index b779b30..31069f7 100644
      {
        gchar *alternative_dir;
  
-@@ -1556,6 +1566,40 @@ desktop_file_dirs_lock (void)
+@@ -1650,6 +1660,40 @@ desktop_file_dirs_lock (void)
        for (i = 0; dirs[i]; i++)
          g_ptr_array_add (desktop_file_dirs, desktop_file_dir_new (dirs[i]));
  
@@ -84,7 +72,7 @@ index b779b30..31069f7 100644
 +            user_data_dir = g_build_filename (profile_dir, "profile", "share", NULL);
 +            user_profile_dir = desktop_file_dir_new (user_data_dir);
 +            user_profile_dir->nix_profile_watch_dir = profile_dir;
-+            
++
 +            env_dir = g_build_filename ("/etc/profiles/per-user", NULL);
 +            env_data_dir = g_build_filename (env_dir, user, "share", NULL);
 +            user_env_dir = desktop_file_dir_new (env_data_dir);
diff --git a/pkgs/development/libraries/glib/schema-override-variable.patch b/pkgs/development/libraries/glib/schema-override-variable.patch
index f98af04a7f24..84d3e93730a5 100644
--- a/pkgs/development/libraries/glib/schema-override-variable.patch
+++ b/pkgs/development/libraries/glib/schema-override-variable.patch
@@ -1,8 +1,8 @@
 diff --git a/gio/gsettingsschema.c b/gio/gsettingsschema.c
-index 1282c10a1..feadfe3aa 100644
+index b1918657d..504ff97c4 100644
 --- a/gio/gsettingsschema.c
 +++ b/gio/gsettingsschema.c
-@@ -360,6 +360,9 @@ initialise_schema_sources (void)
+@@ -356,6 +356,9 @@ initialise_schema_sources (void)
  
        try_prepend_data_dir (g_get_user_data_dir ());
  
diff --git a/pkgs/development/libraries/glib/skip-timer-test.patch b/pkgs/development/libraries/glib/skip-timer-test.patch
deleted file mode 100644
index 942f3e7864c4..000000000000
--- a/pkgs/development/libraries/glib/skip-timer-test.patch
+++ /dev/null
@@ -1,17 +0,0 @@
-Description: Skip test which performs some unreliable floating point comparisons
-Forwarded: https://bugzilla.gnome.org/show_bug.cgi?id=722604
-
-Index: b/glib/tests/timer.c
-===================================================================
---- a/glib/tests/timer.c
-+++ b/glib/tests/timer.c
-@@ -203,7 +203,7 @@
- {
-   g_test_init (&argc, &argv, NULL);
- 
--  g_test_add_func ("/timer/basic", test_timer_basic);
-+/*  g_test_add_func ("/timer/basic", test_timer_basic);*/
--  g_test_add_func ("/timer/stop", test_timer_stop);
-+/*  g_test_add_func ("/timer/stop", test_timer_stop);*/
-   g_test_add_func ("/timer/continue", test_timer_continue);
-   g_test_add_func ("/timer/reset", test_timer_reset);
diff --git a/pkgs/development/libraries/glib/split-dev-programs.patch b/pkgs/development/libraries/glib/split-dev-programs.patch
index 0333c5c9ca29..b32fccb8379f 100644
--- a/pkgs/development/libraries/glib/split-dev-programs.patch
+++ b/pkgs/development/libraries/glib/split-dev-programs.patch
@@ -1,5 +1,5 @@
 diff --git a/gio/gdbus-2.0/codegen/meson.build b/gio/gdbus-2.0/codegen/meson.build
-index 65faae9b2..4297513d4 100644
+index 6d19cd4ba..0205e5074 100644
 --- a/gio/gdbus-2.0/codegen/meson.build
 +++ b/gio/gdbus-2.0/codegen/meson.build
 @@ -20,7 +20,7 @@ gdbus_codegen_conf.set('DATADIR', glib_datadir)
@@ -12,13 +12,13 @@ index 65faae9b2..4297513d4 100644
    configuration : gdbus_codegen_conf
  )
 diff --git a/gio/meson.build b/gio/meson.build
-index 75686bb3e..2f1a73482 100644
+index 59c2b0fc0..87cbb8229 100644
 --- a/gio/meson.build
 +++ b/gio/meson.build
-@@ -882,14 +882,15 @@ pkg.generate(libgio,
+@@ -885,14 +885,15 @@ pkg.generate(libgio,
+   variables : [
      'schemasdir=' + '${datadir}' / schemas_subdir,
      'dtdsdir=' + '${datadir}' / dtds_subdir,
-     'bindir=' + '${prefix}' / get_option('bindir'),
 +    'devbindir=' + get_option('devbindir'),
      'giomoduledir=' + pkgconfig_giomodulesdir,
      'gio=' + '${bindir}' / 'gio',
@@ -36,7 +36,7 @@ index 75686bb3e..2f1a73482 100644
      'gsettings=' + '${bindir}' / 'gsettings',
    ],
    version : glib_version,
-@@ -992,6 +993,7 @@ executable('gio', gio_tool_sources,
+@@ -995,6 +996,7 @@ gio_tool = executable('gio', gio_tool_sources,
  
  executable('gresource', 'gresource-tool.c',
    install : true,
@@ -44,7 +44,7 @@ index 75686bb3e..2f1a73482 100644
    install_tag : 'bin',
    # intl.lib is not compatible with SAFESEH
    link_args : noseh_link_args,
-@@ -999,7 +1001,7 @@ executable('gresource', 'gresource-tool.c',
+@@ -1002,7 +1004,7 @@ executable('gresource', 'gresource-tool.c',
  
  gio_querymodules = executable('gio-querymodules', 'gio-querymodules.c', 'giomodule-priv.c',
    install : true,
@@ -53,7 +53,7 @@ index 75686bb3e..2f1a73482 100644
    install_tag : 'bin',
    c_args : gio_c_args,
    # intl.lib is not compatible with SAFESEH
-@@ -1009,7 +1011,7 @@ gio_querymodules = executable('gio-querymodules', 'gio-querymodules.c', 'giomodu
+@@ -1012,7 +1014,7 @@ gio_querymodules = executable('gio-querymodules', 'gio-querymodules.c', 'giomodu
  glib_compile_schemas = executable('glib-compile-schemas',
    ['glib-compile-schemas.c'],
    install : true,
@@ -62,7 +62,7 @@ index 75686bb3e..2f1a73482 100644
    install_tag : 'bin',
    # intl.lib is not compatible with SAFESEH
    link_args : noseh_link_args,
-@@ -1018,6 +1020,7 @@ glib_compile_schemas = executable('glib-compile-schemas',
+@@ -1021,6 +1023,7 @@ glib_compile_schemas = executable('glib-compile-schemas',
  glib_compile_resources = executable('glib-compile-resources',
    [gconstructor_as_data_h, 'glib-compile-resources.c'],
    install : true,
@@ -71,10 +71,10 @@ index 75686bb3e..2f1a73482 100644
    c_args : gio_c_args,
    # intl.lib is not compatible with SAFESEH
 diff --git a/gio/tests/meson.build b/gio/tests/meson.build
-index 4ef3343ab..2a0a6b56b 100644
+index 232ecca5e..e292927ac 100644
 --- a/gio/tests/meson.build
 +++ b/gio/tests/meson.build
-@@ -1131,16 +1131,18 @@ if have_bash and have_pkg_config
+@@ -1182,16 +1182,18 @@ if have_bash and have_pkg_config
  
    gio_binaries = [
      'gio',
@@ -97,7 +97,7 @@ index 4ef3343ab..2a0a6b56b 100644
  
    foreach binary: gio_binaries
      pkg_config_tests += [
-@@ -1149,6 +1151,13 @@ if have_bash and have_pkg_config
+@@ -1200,6 +1202,13 @@ if have_bash and have_pkg_config
          prefix / get_option('bindir') / binary)
      ]
    endforeach
@@ -112,13 +112,13 @@ index 4ef3343ab..2a0a6b56b 100644
    foreach binary: gio_multiarch_binaries
      pkg_config_tests += [
 diff --git a/glib/meson.build b/glib/meson.build
-index c26a35e42..38effe12a 100644
+index d2efebadc..eb9fa5b2f 100644
 --- a/glib/meson.build
 +++ b/glib/meson.build
 @@ -447,9 +447,10 @@ pkg.generate(libglib,
+   subdirs : ['glib-2.0'],
+   extra_cflags : ['-I${libdir}/glib-2.0/include'] + win32_cflags,
    variables : [
-     'bindir=' + '${prefix}' / get_option('bindir'),
-     'datadir=' + '${prefix}' / get_option('datadir'),
 -    'glib_genmarshal=' + '${bindir}' / 'glib-genmarshal',
 -    'gobject_query=' + '${bindir}' / 'gobject-query',
 -    'glib_mkenums=' + '${bindir}' / 'glib-mkenums',
@@ -147,10 +147,10 @@ index c26a35e42..38effe12a 100644
    configuration: report_conf,
    install_mode: 'rwxr-xr-x'
 diff --git a/glib/tests/meson.build b/glib/tests/meson.build
-index 09ecd5ab3..9748d4122 100644
+index f6efc593a..5522dcb96 100644
 --- a/glib/tests/meson.build
 +++ b/glib/tests/meson.build
-@@ -508,9 +508,9 @@ if have_bash and have_pkg_config
+@@ -568,9 +568,9 @@ if have_bash and have_pkg_config
          'test "$(pkg-config --variable=datadir glib-2.0)" = "@0@"'.format(
            prefix / get_option('datadir')),
          'test "$(pkg-config --variable=gobject_query glib-2.0)" = "@0@"'.format(
@@ -184,7 +184,7 @@ index 2129aaf8a..da8462428 100644
    dependencies : [libglib_dep, libgobject_dep])
  
 diff --git a/meson_options.txt b/meson_options.txt
-index 517d5757c..198cc1b3c 100644
+index 69a2135bc..cfe14bb09 100644
 --- a/meson_options.txt
 +++ b/meson_options.txt
 @@ -4,6 +4,11 @@ option('runtime_libdir',
diff --git a/pkgs/development/libraries/glibc/2.39-master.patch b/pkgs/development/libraries/glibc/2.39-master.patch
index 3e0815573f5e..b1d7d60411c8 100644
--- a/pkgs/development/libraries/glibc/2.39-master.patch
+++ b/pkgs/development/libraries/glibc/2.39-master.patch
@@ -6,14 +6,6 @@ Date:   Wed Jan 31 02:12:43 2024 +0100
     
     Signed-off-by: Andreas K. Hüttel <dilfridge@gentoo.org>
 
-diff --git a/ADVISORIES b/ADVISORIES
-new file mode 100644
-index 0000000000..d4e33f2df3
---- /dev/null
-+++ b/ADVISORIES
-@@ -0,0 +1,2 @@
-+For the GNU C Library Security Advisories, see the git master branch:
-+https://sourceware.org/git/?p=glibc.git;a=tree;f=advisories;hb=HEAD
 diff --git a/advisories/GLIBC-SA-2023-0001 b/advisories/GLIBC-SA-2023-0001
 deleted file mode 100644
 index 3d19c91b6a..0000000000
@@ -564,3 +556,8521 @@ index 470676ab2b..2bc7124983 100644
 -#define TEST_FUNCTION do_test ()
 -#include "../test-skeleton.c"
 +#include <support/test-driver.c>
+
+commit 1b9c1a0047fb26a65a9b2a7b8cd977243f7d353c
+Author: Jakub Jelinek <jakub@redhat.com>
+Date:   Wed Jan 31 19:17:27 2024 +0100
+
+    Use gcc __builtin_stdc_* builtins in stdbit.h if possible
+    
+    The following patch uses the GCC 14 __builtin_stdc_* builtins in stdbit.h
+    for the type-generic macros, so that when compiled with GCC 14 or later,
+    it supports not just 8/16/32/64-bit unsigned integers, but also 128-bit
+    (if target supports them) and unsigned _BitInt (any supported precision).
+    And so that the macros don't expand arguments multiple times and can be
+    evaluated in constant expressions.
+    
+    The new testcase is gcc's gcc/testsuite/gcc.dg/builtin-stdc-bit-1.c
+    adjusted to test stdbit.h and the type-generic macros in there instead
+    of the builtins and adjusted to use glibc test framework rather than
+    gcc style tests with __builtin_abort ().
+    
+    Signed-off-by: Jakub Jelinek <jakub@redhat.com>
+    Reviewed-by: Joseph Myers <josmyers@redhat.com>
+    (cherry picked from commit da89496337b97e6a2aaf1e81d55cf998f6db1070)
+
+diff --git a/manual/stdbit.texi b/manual/stdbit.texi
+index fe41c671d8..6c75ed9a20 100644
+--- a/manual/stdbit.texi
++++ b/manual/stdbit.texi
+@@ -32,7 +32,13 @@ and @code{unsigned long long int}.  In addition, there is a
+ corresponding type-generic macro (not listed below), named the same as
+ the functions but without any suffix such as @samp{_uc}.  The
+ type-generic macro can only be used with an argument of an unsigned
+-integer type with a width of 8, 16, 32 or 64 bits.
++integer type with a width of 8, 16, 32 or 64 bits, or when using
++a compiler with support for
++@uref{https://gcc.gnu.org/onlinedocs/gcc/Other-Builtins.html,@code{__builtin_stdc_bit_ceil}},
++etc.@:, built-in functions such as GCC 14.1 or later
++any unsigned integer type those built-in functions support.
++In GCC 14.1 that includes support for @code{unsigned __int128} and
++@code{unsigned _BitInt(@var{n})} if supported by the target.
+ 
+ @deftypefun {unsigned int} stdc_leading_zeros_uc (unsigned char @var{x})
+ @deftypefunx {unsigned int} stdc_leading_zeros_us (unsigned short @var{x})
+diff --git a/stdlib/Makefile b/stdlib/Makefile
+index d587f054d1..9898cc5d8a 100644
+--- a/stdlib/Makefile
++++ b/stdlib/Makefile
+@@ -308,6 +308,7 @@ tests := \
+   tst-setcontext10 \
+   tst-setcontext11 \
+   tst-stdbit-Wconversion \
++  tst-stdbit-builtins \
+   tst-stdc_bit_ceil \
+   tst-stdc_bit_floor \
+   tst-stdc_bit_width \
+diff --git a/stdlib/stdbit.h b/stdlib/stdbit.h
+index f334eb174d..2801590c63 100644
+--- a/stdlib/stdbit.h
++++ b/stdlib/stdbit.h
+@@ -64,9 +64,13 @@ extern unsigned int stdc_leading_zeros_ul (unsigned long int __x)
+ __extension__
+ extern unsigned int stdc_leading_zeros_ull (unsigned long long int __x)
+      __THROW __attribute_const__;
+-#define stdc_leading_zeros(x)				\
++#if __glibc_has_builtin (__builtin_stdc_leading_zeros)
++# define stdc_leading_zeros(x) (__builtin_stdc_leading_zeros (x))
++#else
++# define stdc_leading_zeros(x)				\
+   (stdc_leading_zeros_ull (x)				\
+    - (unsigned int) (8 * (sizeof (0ULL) - sizeof (x))))
++#endif
+ 
+ #if __GNUC_PREREQ (3, 4) || __glibc_has_builtin (__builtin_clzll)
+ static __always_inline unsigned int
+@@ -116,9 +120,13 @@ extern unsigned int stdc_leading_ones_ul (unsigned long int __x)
+ __extension__
+ extern unsigned int stdc_leading_ones_ull (unsigned long long int __x)
+      __THROW __attribute_const__;
+-#define stdc_leading_ones(x)					\
++#if __glibc_has_builtin (__builtin_stdc_leading_ones)
++# define stdc_leading_ones(x) (__builtin_stdc_leading_ones (x))
++#else
++# define stdc_leading_ones(x)					\
+   (stdc_leading_ones_ull ((unsigned long long int) (x)		\
+ 			  << 8 * (sizeof (0ULL) - sizeof (x))))
++#endif
+ 
+ #if __GNUC_PREREQ (3, 4) || __glibc_has_builtin (__builtin_clzll)
+ static __always_inline unsigned int
+@@ -168,11 +176,15 @@ extern unsigned int stdc_trailing_zeros_ul (unsigned long int __x)
+ __extension__
+ extern unsigned int stdc_trailing_zeros_ull (unsigned long long int __x)
+      __THROW __attribute_const__;
+-#define stdc_trailing_zeros(x)				\
++#if __glibc_has_builtin (__builtin_stdc_trailing_zeros)
++# define stdc_trailing_zeros(x) (__builtin_stdc_trailing_zeros (x))
++#else
++# define stdc_trailing_zeros(x)				\
+   (sizeof (x) == 8 ? stdc_trailing_zeros_ull (x)	\
+    : sizeof (x) == 4 ? stdc_trailing_zeros_ui (x)	\
+    : sizeof (x) == 2 ? stdc_trailing_zeros_us (__pacify_uint16 (x))	\
+    : stdc_trailing_zeros_uc (__pacify_uint8 (x)))
++#endif
+ 
+ #if __GNUC_PREREQ (3, 4) || __glibc_has_builtin (__builtin_ctzll)
+ static __always_inline unsigned int
+@@ -222,7 +234,11 @@ extern unsigned int stdc_trailing_ones_ul (unsigned long int __x)
+ __extension__
+ extern unsigned int stdc_trailing_ones_ull (unsigned long long int __x)
+      __THROW __attribute_const__;
+-#define stdc_trailing_ones(x) (stdc_trailing_ones_ull (x))
++#if __glibc_has_builtin (__builtin_stdc_trailing_ones)
++# define stdc_trailing_ones(x) (__builtin_stdc_trailing_ones (x))
++#else
++# define stdc_trailing_ones(x) (stdc_trailing_ones_ull (x))
++#endif
+ 
+ #if __GNUC_PREREQ (3, 4) || __glibc_has_builtin (__builtin_ctzll)
+ static __always_inline unsigned int
+@@ -272,11 +288,15 @@ extern unsigned int stdc_first_leading_zero_ul (unsigned long int __x)
+ __extension__
+ extern unsigned int stdc_first_leading_zero_ull (unsigned long long int __x)
+      __THROW __attribute_const__;
+-#define stdc_first_leading_zero(x)			\
++#if __glibc_has_builtin (__builtin_stdc_first_leading_zero)
++# define stdc_first_leading_zero(x) (__builtin_stdc_first_leading_zero (x))
++#else
++# define stdc_first_leading_zero(x)			\
+   (sizeof (x) == 8 ? stdc_first_leading_zero_ull (x)	\
+    : sizeof (x) == 4 ? stdc_first_leading_zero_ui (x)	\
+    : sizeof (x) == 2 ? stdc_first_leading_zero_us (__pacify_uint16 (x))	\
+    : stdc_first_leading_zero_uc (__pacify_uint8 (x)))
++#endif
+ 
+ #if __GNUC_PREREQ (3, 4) || __glibc_has_builtin (__builtin_clzll)
+ static __always_inline unsigned int
+@@ -326,11 +346,15 @@ extern unsigned int stdc_first_leading_one_ul (unsigned long int __x)
+ __extension__
+ extern unsigned int stdc_first_leading_one_ull (unsigned long long int __x)
+      __THROW __attribute_const__;
+-#define stdc_first_leading_one(x)			\
++#if __glibc_has_builtin (__builtin_stdc_first_leading_one)
++# define stdc_first_leading_one(x) (__builtin_stdc_first_leading_one (x))
++#else
++# define stdc_first_leading_one(x)			\
+   (sizeof (x) == 8 ? stdc_first_leading_one_ull (x)	\
+    : sizeof (x) == 4 ? stdc_first_leading_one_ui (x)	\
+    : sizeof (x) == 2 ? stdc_first_leading_one_us (__pacify_uint16 (x))	\
+    : stdc_first_leading_one_uc (__pacify_uint8 (x)))
++#endif
+ 
+ #if __GNUC_PREREQ (3, 4) || __glibc_has_builtin (__builtin_clzll)
+ static __always_inline unsigned int
+@@ -380,11 +404,15 @@ extern unsigned int stdc_first_trailing_zero_ul (unsigned long int __x)
+ __extension__
+ extern unsigned int stdc_first_trailing_zero_ull (unsigned long long int __x)
+      __THROW __attribute_const__;
+-#define stdc_first_trailing_zero(x)			\
++#if __glibc_has_builtin (__builtin_stdc_first_trailing_zero)
++# define stdc_first_trailing_zero(x) (__builtin_stdc_first_trailing_zero (x))
++#else
++# define stdc_first_trailing_zero(x)			\
+   (sizeof (x) == 8 ? stdc_first_trailing_zero_ull (x)	\
+    : sizeof (x) == 4 ? stdc_first_trailing_zero_ui (x)	\
+    : sizeof (x) == 2 ? stdc_first_trailing_zero_us (__pacify_uint16 (x)) \
+    : stdc_first_trailing_zero_uc (__pacify_uint8 (x)))
++#endif
+ 
+ #if __GNUC_PREREQ (3, 4) || __glibc_has_builtin (__builtin_ctzll)
+ static __always_inline unsigned int
+@@ -434,11 +462,15 @@ extern unsigned int stdc_first_trailing_one_ul (unsigned long int __x)
+ __extension__
+ extern unsigned int stdc_first_trailing_one_ull (unsigned long long int __x)
+      __THROW __attribute_const__;
+-#define stdc_first_trailing_one(x)			\
++#if __glibc_has_builtin (__builtin_stdc_first_trailing_one)
++# define stdc_first_trailing_one(x) (__builtin_stdc_first_trailing_one (x))
++#else
++# define stdc_first_trailing_one(x)			\
+   (sizeof (x) == 8 ? stdc_first_trailing_one_ull (x)	\
+    : sizeof (x) == 4 ? stdc_first_trailing_one_ui (x)	\
+    : sizeof (x) == 2 ? stdc_first_trailing_one_us (__pacify_uint16 (x))	\
+    : stdc_first_trailing_one_uc (__pacify_uint8 (x)))
++#endif
+ 
+ #if __GNUC_PREREQ (3, 4) || __glibc_has_builtin (__builtin_ctzll)
+ static __always_inline unsigned int
+@@ -488,9 +520,13 @@ extern unsigned int stdc_count_zeros_ul (unsigned long int __x)
+ __extension__
+ extern unsigned int stdc_count_zeros_ull (unsigned long long int __x)
+      __THROW __attribute_const__;
+-#define stdc_count_zeros(x)				\
++#if __glibc_has_builtin (__builtin_stdc_count_zeros)
++# define stdc_count_zeros(x) (__builtin_stdc_count_zeros (x))
++#else
++# define stdc_count_zeros(x)				\
+   (stdc_count_zeros_ull (x)				\
+    - (unsigned int) (8 * (sizeof (0ULL) - sizeof (x))))
++#endif
+ 
+ #if __GNUC_PREREQ (3, 4) || __glibc_has_builtin (__builtin_popcountll)
+ static __always_inline unsigned int
+@@ -540,7 +576,11 @@ extern unsigned int stdc_count_ones_ul (unsigned long int __x)
+ __extension__
+ extern unsigned int stdc_count_ones_ull (unsigned long long int __x)
+      __THROW __attribute_const__;
+-#define stdc_count_ones(x) (stdc_count_ones_ull (x))
++#if __glibc_has_builtin (__builtin_stdc_count_ones)
++# define stdc_count_ones(x) (__builtin_stdc_count_ones (x))
++#else
++# define stdc_count_ones(x) (stdc_count_ones_ull (x))
++#endif
+ 
+ #if __GNUC_PREREQ (3, 4) || __glibc_has_builtin (__builtin_popcountll)
+ static __always_inline unsigned int
+@@ -590,10 +630,14 @@ extern bool stdc_has_single_bit_ul (unsigned long int __x)
+ __extension__
+ extern bool stdc_has_single_bit_ull (unsigned long long int __x)
+      __THROW __attribute_const__;
+-#define stdc_has_single_bit(x)				\
++#if __glibc_has_builtin (__builtin_stdc_has_single_bit)
++# define stdc_has_single_bit(x) (__builtin_stdc_has_single_bit (x))
++#else
++# define stdc_has_single_bit(x)				\
+   ((bool) (sizeof (x) <= sizeof (unsigned int)		\
+ 	   ? stdc_has_single_bit_ui (x)			\
+ 	   : stdc_has_single_bit_ull (x)))
++#endif
+ 
+ static __always_inline bool
+ __hsb64_inline (uint64_t __x)
+@@ -641,7 +685,11 @@ extern unsigned int stdc_bit_width_ul (unsigned long int __x)
+ __extension__
+ extern unsigned int stdc_bit_width_ull (unsigned long long int __x)
+      __THROW __attribute_const__;
+-#define stdc_bit_width(x) (stdc_bit_width_ull (x))
++#if __glibc_has_builtin (__builtin_stdc_bit_width)
++# define stdc_bit_width(x) (__builtin_stdc_bit_width (x))
++#else
++# define stdc_bit_width(x) (stdc_bit_width_ull (x))
++#endif
+ 
+ #if __GNUC_PREREQ (3, 4) || __glibc_has_builtin (__builtin_clzll)
+ static __always_inline unsigned int
+@@ -691,7 +739,11 @@ extern unsigned long int stdc_bit_floor_ul (unsigned long int __x)
+ __extension__
+ extern unsigned long long int stdc_bit_floor_ull (unsigned long long int __x)
+      __THROW __attribute_const__;
+-#define stdc_bit_floor(x) ((__typeof (x)) stdc_bit_floor_ull (x))
++#if __glibc_has_builtin (__builtin_stdc_bit_floor)
++# define stdc_bit_floor(x) (__builtin_stdc_bit_floor (x))
++#else
++# define stdc_bit_floor(x) ((__typeof (x)) stdc_bit_floor_ull (x))
++#endif
+ 
+ #if __GNUC_PREREQ (3, 4) || __glibc_has_builtin (__builtin_clzll)
+ static __always_inline uint64_t
+@@ -743,7 +795,11 @@ extern unsigned long int stdc_bit_ceil_ul (unsigned long int __x)
+ __extension__
+ extern unsigned long long int stdc_bit_ceil_ull (unsigned long long int __x)
+      __THROW __attribute_const__;
+-#define stdc_bit_ceil(x) ((__typeof (x)) stdc_bit_ceil_ull (x))
++#if __glibc_has_builtin (__builtin_stdc_bit_ceil)
++# define stdc_bit_ceil(x) (__builtin_stdc_bit_ceil (x))
++#else
++# define stdc_bit_ceil(x) ((__typeof (x)) stdc_bit_ceil_ull (x))
++#endif
+ 
+ #if __GNUC_PREREQ (3, 4) || __glibc_has_builtin (__builtin_clzll)
+ static __always_inline uint64_t
+diff --git a/stdlib/tst-stdbit-builtins.c b/stdlib/tst-stdbit-builtins.c
+new file mode 100644
+index 0000000000..536841ca8a
+--- /dev/null
++++ b/stdlib/tst-stdbit-builtins.c
+@@ -0,0 +1,778 @@
++/* Test <stdbit.h> type-generic macros with compiler __builtin_stdc_* support.
++   Copyright (C) 2024 Free Software Foundation, Inc.
++   This file is part of the GNU C Library.
++
++   The GNU C Library is free software; you can redistribute it and/or
++   modify it under the terms of the GNU Lesser General Public
++   License as published by the Free Software Foundation; either
++   version 2.1 of the License, or (at your option) any later version.
++
++   The GNU C Library is distributed in the hope that it will be useful,
++   but WITHOUT ANY WARRANTY; without even the implied warranty of
++   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
++   Lesser General Public License for more details.
++
++   You should have received a copy of the GNU Lesser General Public
++   License along with the GNU C Library; if not, see
++   <https://www.gnu.org/licenses/>.  */
++
++#include <stdbit.h>
++#include <limits.h>
++#include <support/check.h>
++
++#if __glibc_has_builtin (__builtin_stdc_leading_zeros) \
++    && __glibc_has_builtin (__builtin_stdc_leading_ones) \
++    && __glibc_has_builtin (__builtin_stdc_trailing_zeros) \
++    && __glibc_has_builtin (__builtin_stdc_trailing_ones) \
++    && __glibc_has_builtin (__builtin_stdc_first_leading_zero) \
++    && __glibc_has_builtin (__builtin_stdc_first_leading_one) \
++    && __glibc_has_builtin (__builtin_stdc_first_trailing_zero) \
++    && __glibc_has_builtin (__builtin_stdc_first_trailing_one) \
++    && __glibc_has_builtin (__builtin_stdc_count_zeros) \
++    && __glibc_has_builtin (__builtin_stdc_count_ones) \
++    && __glibc_has_builtin (__builtin_stdc_has_single_bit) \
++    && __glibc_has_builtin (__builtin_stdc_bit_width) \
++    && __glibc_has_builtin (__builtin_stdc_bit_floor) \
++    && __glibc_has_builtin (__builtin_stdc_bit_ceil)
++
++# if !defined (BITINT_MAXWIDTH) && defined (__BITINT_MAXWIDTH__)
++#  define BITINT_MAXWIDTH __BITINT_MAXWIDTH__
++# endif
++
++typedef unsigned char uc;
++typedef unsigned short us;
++typedef unsigned int ui;
++typedef unsigned long int ul;
++typedef unsigned long long int ull;
++
++# define expr_has_type(e, t) _Generic (e, default : 0, t : 1)
++
++static int
++do_test (void)
++{
++  TEST_COMPARE (stdc_leading_zeros ((uc) 0), CHAR_BIT);
++  TEST_COMPARE (expr_has_type (stdc_leading_zeros ((uc) 0), ui), 1);
++  TEST_COMPARE (stdc_leading_zeros ((us) 0), sizeof (short) * CHAR_BIT);
++  TEST_COMPARE (expr_has_type (stdc_leading_zeros ((us) 0), ui), 1);
++  TEST_COMPARE (stdc_leading_zeros (0U), sizeof (int) * CHAR_BIT);
++  TEST_COMPARE (expr_has_type (stdc_leading_zeros (0U), ui), 1);
++  TEST_COMPARE (stdc_leading_zeros (0UL), sizeof (long int) * CHAR_BIT);
++  TEST_COMPARE (expr_has_type (stdc_leading_zeros (0UL), ui), 1);
++  TEST_COMPARE (stdc_leading_zeros (0ULL), sizeof (long long int) * CHAR_BIT);
++  TEST_COMPARE (expr_has_type (stdc_leading_zeros (0ULL), ui), 1);
++  TEST_COMPARE (stdc_leading_zeros ((uc) ~0U), 0);
++  TEST_COMPARE (stdc_leading_zeros ((us) ~0U), 0);
++  TEST_COMPARE (stdc_leading_zeros (~0U), 0);
++  TEST_COMPARE (stdc_leading_zeros (~0UL), 0);
++  TEST_COMPARE (stdc_leading_zeros (~0ULL), 0);
++  TEST_COMPARE (stdc_leading_zeros ((uc) 3), CHAR_BIT - 2);
++  TEST_COMPARE (stdc_leading_zeros ((us) 9), sizeof (short) * CHAR_BIT - 4);
++  TEST_COMPARE (stdc_leading_zeros (34U), sizeof (int) * CHAR_BIT - 6);
++  TEST_COMPARE (stdc_leading_zeros (130UL), sizeof (long int) * CHAR_BIT - 8);
++  TEST_COMPARE (stdc_leading_zeros (512ULL),
++		sizeof (long long int) * CHAR_BIT - 10);
++  TEST_COMPARE (stdc_leading_ones ((uc) 0), 0);
++  TEST_COMPARE (expr_has_type (stdc_leading_ones ((uc) 0), ui), 1);
++  TEST_COMPARE (stdc_leading_ones ((us) 0), 0);
++  TEST_COMPARE (expr_has_type (stdc_leading_ones ((us) 0), ui), 1);
++  TEST_COMPARE (stdc_leading_ones (0U), 0);
++  TEST_COMPARE (expr_has_type (stdc_leading_ones (0U), ui), 1);
++  TEST_COMPARE (stdc_leading_ones (0UL), 0);
++  TEST_COMPARE (expr_has_type (stdc_leading_ones (0UL), ui), 1);
++  TEST_COMPARE (stdc_leading_ones (0ULL), 0);
++  TEST_COMPARE (expr_has_type (stdc_leading_ones (0ULL), ui), 1);
++  TEST_COMPARE (stdc_leading_ones ((uc) ~0U), CHAR_BIT);
++  TEST_COMPARE (stdc_leading_ones ((us) ~0U), sizeof (short) * CHAR_BIT);
++  TEST_COMPARE (stdc_leading_ones (~0U), sizeof (int) * CHAR_BIT);
++  TEST_COMPARE (stdc_leading_ones (~0UL), sizeof (long int) * CHAR_BIT);
++  TEST_COMPARE (stdc_leading_ones (~0ULL), sizeof (long long int) * CHAR_BIT);
++  TEST_COMPARE (stdc_leading_ones ((uc) ~3), CHAR_BIT - 2);
++  TEST_COMPARE (stdc_leading_ones ((us) ~9), sizeof (short) * CHAR_BIT - 4);
++  TEST_COMPARE (stdc_leading_ones (~34U), sizeof (int) * CHAR_BIT - 6);
++  TEST_COMPARE (stdc_leading_ones (~130UL), sizeof (long int) * CHAR_BIT - 8);
++  TEST_COMPARE (stdc_leading_ones (~512ULL),
++		sizeof (long long int) * CHAR_BIT - 10);
++  TEST_COMPARE (stdc_trailing_zeros ((uc) 0), CHAR_BIT);
++  TEST_COMPARE (expr_has_type (stdc_trailing_zeros ((uc) 0), ui), 1);
++  TEST_COMPARE (stdc_trailing_zeros ((us) 0), sizeof (short) * CHAR_BIT);
++  TEST_COMPARE (expr_has_type (stdc_trailing_zeros ((us) 0), ui), 1);
++  TEST_COMPARE (stdc_trailing_zeros (0U), sizeof (int) * CHAR_BIT);
++  TEST_COMPARE (expr_has_type (stdc_trailing_zeros (0U), ui), 1);
++  TEST_COMPARE (stdc_trailing_zeros (0UL), sizeof (long int) * CHAR_BIT);
++  TEST_COMPARE (expr_has_type (stdc_trailing_zeros (0UL), ui), 1);
++  TEST_COMPARE (stdc_trailing_zeros (0ULL), sizeof (long long int) * CHAR_BIT);
++  TEST_COMPARE (expr_has_type (stdc_trailing_zeros (0ULL), ui), 1);
++  TEST_COMPARE (stdc_trailing_zeros ((uc) ~0U), 0);
++  TEST_COMPARE (stdc_trailing_zeros ((us) ~0U), 0);
++  TEST_COMPARE (stdc_trailing_zeros (~0U), 0);
++  TEST_COMPARE (stdc_trailing_zeros (~0UL), 0);
++  TEST_COMPARE (stdc_trailing_zeros (~0ULL), 0);
++  TEST_COMPARE (stdc_trailing_zeros ((uc) 2), 1);
++  TEST_COMPARE (stdc_trailing_zeros ((us) 24), 3);
++  TEST_COMPARE (stdc_trailing_zeros (32U), 5);
++  TEST_COMPARE (stdc_trailing_zeros (128UL), 7);
++  TEST_COMPARE (stdc_trailing_zeros (512ULL), 9);
++  TEST_COMPARE (stdc_trailing_ones ((uc) 0), 0);
++  TEST_COMPARE (expr_has_type (stdc_trailing_ones ((uc) 0), ui), 1);
++  TEST_COMPARE (stdc_trailing_ones ((us) 0), 0);
++  TEST_COMPARE (expr_has_type (stdc_trailing_ones ((us) 0), ui), 1);
++  TEST_COMPARE (stdc_trailing_ones (0U), 0);
++  TEST_COMPARE (expr_has_type (stdc_trailing_ones (0U), ui), 1);
++  TEST_COMPARE (stdc_trailing_ones (0UL), 0);
++  TEST_COMPARE (expr_has_type (stdc_trailing_ones (0UL), ui), 1);
++  TEST_COMPARE (stdc_trailing_ones (0ULL), 0);
++  TEST_COMPARE (expr_has_type (stdc_trailing_ones (0ULL), ui), 1);
++  TEST_COMPARE (stdc_trailing_ones ((uc) ~0U), CHAR_BIT);
++  TEST_COMPARE (stdc_trailing_ones ((us) ~0U), sizeof (short) * CHAR_BIT);
++  TEST_COMPARE (stdc_trailing_ones (~0U), sizeof (int) * CHAR_BIT);
++  TEST_COMPARE (stdc_trailing_ones (~0UL), sizeof (long int) * CHAR_BIT);
++  TEST_COMPARE (stdc_trailing_ones (~0ULL), sizeof (long long int) * CHAR_BIT);
++  TEST_COMPARE (stdc_trailing_ones ((uc) 5), 1);
++  TEST_COMPARE (stdc_trailing_ones ((us) 15), 4);
++  TEST_COMPARE (stdc_trailing_ones (127U), 7);
++  TEST_COMPARE (stdc_trailing_ones (511UL), 9);
++  TEST_COMPARE (stdc_trailing_ones (~0ULL >> 2),
++		sizeof (long long int) * CHAR_BIT - 2);
++  TEST_COMPARE (stdc_first_leading_zero ((uc) 0), 1);
++  TEST_COMPARE (expr_has_type (stdc_first_leading_zero ((uc) 0), ui), 1);
++  TEST_COMPARE (stdc_first_leading_zero ((us) 0), 1);
++  TEST_COMPARE (expr_has_type (stdc_first_leading_zero ((us) 0), ui), 1);
++  TEST_COMPARE (stdc_first_leading_zero (0U), 1);
++  TEST_COMPARE (expr_has_type (stdc_first_leading_zero (0U), ui), 1);
++  TEST_COMPARE (stdc_first_leading_zero (0UL), 1);
++  TEST_COMPARE (expr_has_type (stdc_first_leading_zero (0UL), ui), 1);
++  TEST_COMPARE (stdc_first_leading_zero (0ULL), 1);
++  TEST_COMPARE (expr_has_type (stdc_first_leading_zero (0ULL), ui), 1);
++  TEST_COMPARE (stdc_first_leading_zero ((uc) ~0U), 0);
++  TEST_COMPARE (stdc_first_leading_zero ((us) ~0U), 0);
++  TEST_COMPARE (stdc_first_leading_zero (~0U), 0);
++  TEST_COMPARE (stdc_first_leading_zero (~0UL), 0);
++  TEST_COMPARE (stdc_first_leading_zero (~0ULL), 0);
++  TEST_COMPARE (stdc_first_leading_zero ((uc) ~3U), CHAR_BIT - 1);
++  TEST_COMPARE (stdc_first_leading_zero ((us) ~15U),
++		sizeof (short) * CHAR_BIT - 3);
++  TEST_COMPARE (stdc_first_leading_zero (~63U), sizeof (int) * CHAR_BIT - 5);
++  TEST_COMPARE (stdc_first_leading_zero (~255UL),
++		sizeof (long int) * CHAR_BIT - 7);
++  TEST_COMPARE (stdc_first_leading_zero (~1023ULL),
++		sizeof (long long int) * CHAR_BIT - 9);
++  TEST_COMPARE (stdc_first_leading_one ((uc) 0), 0);
++  TEST_COMPARE (expr_has_type (stdc_first_leading_one ((uc) 0), ui), 1);
++  TEST_COMPARE (stdc_first_leading_one ((us) 0), 0);
++  TEST_COMPARE (expr_has_type (stdc_first_leading_one ((us) 0), ui), 1);
++  TEST_COMPARE (stdc_first_leading_one (0U), 0);
++  TEST_COMPARE (expr_has_type (stdc_first_leading_one (0U), ui), 1);
++  TEST_COMPARE (stdc_first_leading_one (0UL), 0);
++  TEST_COMPARE (expr_has_type (stdc_first_leading_one (0UL), ui), 1);
++  TEST_COMPARE (stdc_first_leading_one (0ULL), 0);
++  TEST_COMPARE (expr_has_type (stdc_first_leading_one (0ULL), ui), 1);
++  TEST_COMPARE (stdc_first_leading_one ((uc) ~0U), 1);
++  TEST_COMPARE (stdc_first_leading_one ((us) ~0U), 1);
++  TEST_COMPARE (stdc_first_leading_one (~0U), 1);
++  TEST_COMPARE (stdc_first_leading_one (~0UL), 1);
++  TEST_COMPARE (stdc_first_leading_one (~0ULL), 1);
++  TEST_COMPARE (stdc_first_leading_one ((uc) 3), CHAR_BIT - 1);
++  TEST_COMPARE (stdc_first_leading_one ((us) 9),
++		sizeof (short) * CHAR_BIT - 3);
++  TEST_COMPARE (stdc_first_leading_one (34U), sizeof (int) * CHAR_BIT - 5);
++  TEST_COMPARE (stdc_first_leading_one (130UL),
++		sizeof (long int) * CHAR_BIT - 7);
++  TEST_COMPARE (stdc_first_leading_one (512ULL),
++		sizeof (long long int) * CHAR_BIT - 9);
++  TEST_COMPARE (stdc_first_trailing_zero ((uc) 0), 1);
++  TEST_COMPARE (expr_has_type (stdc_first_trailing_zero ((uc) 0), ui), 1);
++  TEST_COMPARE (stdc_first_trailing_zero ((us) 0), 1);
++  TEST_COMPARE (expr_has_type (stdc_first_trailing_zero ((us) 0), ui), 1);
++  TEST_COMPARE (stdc_first_trailing_zero (0U), 1);
++  TEST_COMPARE (expr_has_type (stdc_first_trailing_zero (0U), ui), 1);
++  TEST_COMPARE (stdc_first_trailing_zero (0UL), 1);
++  TEST_COMPARE (expr_has_type (stdc_first_trailing_zero (0UL), ui), 1);
++  TEST_COMPARE (stdc_first_trailing_zero (0ULL), 1);
++  TEST_COMPARE (expr_has_type (stdc_first_trailing_zero (0ULL), ui), 1);
++  TEST_COMPARE (stdc_first_trailing_zero ((uc) ~0U), 0);
++  TEST_COMPARE (stdc_first_trailing_zero ((us) ~0U), 0);
++  TEST_COMPARE (stdc_first_trailing_zero (~0U), 0);
++  TEST_COMPARE (stdc_first_trailing_zero (~0UL), 0);
++  TEST_COMPARE (stdc_first_trailing_zero (~0ULL), 0);
++  TEST_COMPARE (stdc_first_trailing_zero ((uc) 2), 1);
++  TEST_COMPARE (stdc_first_trailing_zero ((us) 15), 5);
++  TEST_COMPARE (stdc_first_trailing_zero (63U), 7);
++  TEST_COMPARE (stdc_first_trailing_zero (128UL), 1);
++  TEST_COMPARE (stdc_first_trailing_zero (511ULL), 10);
++  TEST_COMPARE (stdc_first_trailing_one ((uc) 0), 0);
++  TEST_COMPARE (expr_has_type (stdc_first_trailing_one ((uc) 0), ui), 1);
++  TEST_COMPARE (stdc_first_trailing_one ((us) 0), 0);
++  TEST_COMPARE (expr_has_type (stdc_first_trailing_one ((us) 0), ui), 1);
++  TEST_COMPARE (stdc_first_trailing_one (0U), 0);
++  TEST_COMPARE (expr_has_type (stdc_first_trailing_one (0U), ui), 1);
++  TEST_COMPARE (stdc_first_trailing_one (0UL), 0);
++  TEST_COMPARE (expr_has_type (stdc_first_trailing_one (0UL), ui), 1);
++  TEST_COMPARE (stdc_first_trailing_one (0ULL), 0);
++  TEST_COMPARE (expr_has_type (stdc_first_trailing_one (0ULL), ui), 1);
++  TEST_COMPARE (stdc_first_trailing_one ((uc) ~0U), 1);
++  TEST_COMPARE (stdc_first_trailing_one ((us) ~0U), 1);
++  TEST_COMPARE (stdc_first_trailing_one (~0U), 1);
++  TEST_COMPARE (stdc_first_trailing_one (~0UL), 1);
++  TEST_COMPARE (stdc_first_trailing_one (~0ULL), 1);
++  TEST_COMPARE (stdc_first_trailing_one ((uc) 4), 3);
++  TEST_COMPARE (stdc_first_trailing_one ((us) 96), 6);
++  TEST_COMPARE (stdc_first_trailing_one (127U), 1);
++  TEST_COMPARE (stdc_first_trailing_one (511UL), 1);
++  TEST_COMPARE (stdc_first_trailing_one (~0ULL << 12), 13);
++  TEST_COMPARE (stdc_count_zeros ((uc) 0), CHAR_BIT);
++  TEST_COMPARE (expr_has_type (stdc_count_zeros ((uc) 0), ui), 1);
++  TEST_COMPARE (stdc_count_zeros ((us) 0), sizeof (short) * CHAR_BIT);
++  TEST_COMPARE (expr_has_type (stdc_count_zeros ((us) 0), ui), 1);
++  TEST_COMPARE (stdc_count_zeros (0U), sizeof (int) * CHAR_BIT);
++  TEST_COMPARE (expr_has_type (stdc_count_zeros (0U), ui), 1);
++  TEST_COMPARE (stdc_count_zeros (0UL), sizeof (long int) * CHAR_BIT);
++  TEST_COMPARE (expr_has_type (stdc_count_zeros (0UL), ui), 1);
++  TEST_COMPARE (stdc_count_zeros (0ULL), sizeof (long long int) * CHAR_BIT);
++  TEST_COMPARE (expr_has_type (stdc_count_zeros (0ULL), ui), 1);
++  TEST_COMPARE (stdc_count_zeros ((uc) ~0U), 0);
++  TEST_COMPARE (stdc_count_zeros ((us) ~0U), 0);
++  TEST_COMPARE (stdc_count_zeros (~0U), 0);
++  TEST_COMPARE (stdc_count_zeros (~0UL), 0);
++  TEST_COMPARE (stdc_count_zeros (~0ULL), 0);
++  TEST_COMPARE (stdc_count_zeros ((uc) 1U), CHAR_BIT - 1);
++  TEST_COMPARE (stdc_count_zeros ((us) 42), sizeof (short) * CHAR_BIT - 3);
++  TEST_COMPARE (stdc_count_zeros (291U), sizeof (int) * CHAR_BIT - 4);
++  TEST_COMPARE (stdc_count_zeros (~1315UL), 5);
++  TEST_COMPARE (stdc_count_zeros (3363ULL),
++		sizeof (long long int) * CHAR_BIT - 6);
++  TEST_COMPARE (stdc_count_ones ((uc) 0), 0);
++  TEST_COMPARE (expr_has_type (stdc_count_ones ((uc) 0), ui), 1);
++  TEST_COMPARE (stdc_count_ones ((us) 0), 0);
++  TEST_COMPARE (expr_has_type (stdc_count_ones ((us) 0), ui), 1);
++  TEST_COMPARE (stdc_count_ones (0U), 0);
++  TEST_COMPARE (expr_has_type (stdc_count_ones (0U), ui), 1);
++  TEST_COMPARE (stdc_count_ones (0UL), 0);
++  TEST_COMPARE (expr_has_type (stdc_count_ones (0UL), ui), 1);
++  TEST_COMPARE (stdc_count_ones (0ULL), 0);
++  TEST_COMPARE (expr_has_type (stdc_count_ones (0ULL), ui), 1);
++  TEST_COMPARE (stdc_count_ones ((uc) ~0U), CHAR_BIT);
++  TEST_COMPARE (stdc_count_ones ((us) ~0U), sizeof (short) * CHAR_BIT);
++  TEST_COMPARE (stdc_count_ones (~0U), sizeof (int) * CHAR_BIT);
++  TEST_COMPARE (stdc_count_ones (~0UL), sizeof (long int) * CHAR_BIT);
++  TEST_COMPARE (stdc_count_ones (~0ULL), sizeof (long long int) * CHAR_BIT);
++  TEST_COMPARE (stdc_count_ones ((uc) ~1U), CHAR_BIT - 1);
++  TEST_COMPARE (stdc_count_ones ((us) ~42), sizeof (short) * CHAR_BIT - 3);
++  TEST_COMPARE (stdc_count_ones (~291U), sizeof (int) * CHAR_BIT - 4);
++  TEST_COMPARE (stdc_count_ones (1315UL), 5);
++  TEST_COMPARE (stdc_count_ones (~3363ULL),
++		sizeof (long long int) * CHAR_BIT - 6);
++  TEST_COMPARE (stdc_has_single_bit ((uc) 0), 0);
++  TEST_COMPARE (expr_has_type (stdc_has_single_bit ((uc) 0), _Bool), 1);
++  TEST_COMPARE (stdc_has_single_bit ((us) 0), 0);
++  TEST_COMPARE (expr_has_type (stdc_has_single_bit ((us) 0), _Bool), 1);
++  TEST_COMPARE (stdc_has_single_bit (0U), 0);
++  TEST_COMPARE (expr_has_type (stdc_has_single_bit (0U), _Bool), 1);
++  TEST_COMPARE (stdc_has_single_bit (0UL), 0);
++  TEST_COMPARE (expr_has_type (stdc_has_single_bit (0UL), _Bool), 1);
++  TEST_COMPARE (stdc_has_single_bit (0ULL), 0);
++  TEST_COMPARE (expr_has_type (stdc_has_single_bit (0ULL), _Bool), 1);
++  TEST_COMPARE (stdc_has_single_bit ((uc) 2), 1);
++  TEST_COMPARE (stdc_has_single_bit ((us) 8), 1);
++  TEST_COMPARE (stdc_has_single_bit (32U), 1);
++  TEST_COMPARE (stdc_has_single_bit (128UL), 1);
++  TEST_COMPARE (stdc_has_single_bit (512ULL), 1);
++  TEST_COMPARE (stdc_has_single_bit ((uc) 7), 0);
++  TEST_COMPARE (stdc_has_single_bit ((us) 96), 0);
++  TEST_COMPARE (stdc_has_single_bit (513U), 0);
++  TEST_COMPARE (stdc_has_single_bit (1022UL), 0);
++  TEST_COMPARE (stdc_has_single_bit (12ULL), 0);
++  TEST_COMPARE (stdc_bit_width ((uc) 0), 0);
++  TEST_COMPARE (expr_has_type (stdc_bit_width ((uc) 0), ui), 1);
++  TEST_COMPARE (stdc_bit_width ((us) 0), 0);
++  TEST_COMPARE (expr_has_type (stdc_bit_width ((us) 0), ui), 1);
++  TEST_COMPARE (stdc_bit_width (0U), 0);
++  TEST_COMPARE (expr_has_type (stdc_bit_width (0U), ui), 1);
++  TEST_COMPARE (stdc_bit_width (0UL), 0);
++  TEST_COMPARE (expr_has_type (stdc_bit_width (0UL), ui), 1);
++  TEST_COMPARE (stdc_bit_width (0ULL), 0);
++  TEST_COMPARE (expr_has_type (stdc_bit_width (0ULL), ui), 1);
++  TEST_COMPARE (stdc_bit_width ((uc) ~0U), CHAR_BIT);
++  TEST_COMPARE (stdc_bit_width ((us) ~0U), sizeof (short) * CHAR_BIT);
++  TEST_COMPARE (stdc_bit_width (~0U), sizeof (int) * CHAR_BIT);
++  TEST_COMPARE (stdc_bit_width (~0UL), sizeof (long int) * CHAR_BIT);
++  TEST_COMPARE (stdc_bit_width (~0ULL), sizeof (long long int) * CHAR_BIT);
++  TEST_COMPARE (stdc_bit_width ((uc) ((uc) ~0U >> 1)), CHAR_BIT - 1);
++  TEST_COMPARE (stdc_bit_width ((uc) 6), 3);
++  TEST_COMPARE (stdc_bit_width ((us) 12U), 4);
++  TEST_COMPARE (stdc_bit_width ((us) ((us) ~0U >> 5)),
++		sizeof (short) * CHAR_BIT - 5);
++  TEST_COMPARE (stdc_bit_width (137U), 8);
++  TEST_COMPARE (stdc_bit_width (269U), 9);
++  TEST_COMPARE (stdc_bit_width (39UL), 6);
++  TEST_COMPARE (stdc_bit_width (~0UL >> 2), sizeof (long int) * CHAR_BIT - 2);
++  TEST_COMPARE (stdc_bit_width (1023ULL), 10);
++  TEST_COMPARE (stdc_bit_width (1024ULL), 11);
++  TEST_COMPARE (stdc_bit_floor ((uc) 0), 0);
++  TEST_COMPARE (expr_has_type (stdc_bit_floor ((uc) 0), uc), 1);
++  TEST_COMPARE (stdc_bit_floor ((us) 0), 0);
++  TEST_COMPARE (expr_has_type (stdc_bit_floor ((us) 0), us), 1);
++  TEST_COMPARE (stdc_bit_floor (0U), 0U);
++  TEST_COMPARE (expr_has_type (stdc_bit_floor (0U), ui), 1);
++  TEST_COMPARE (stdc_bit_floor (0UL), 0UL);
++  TEST_COMPARE (expr_has_type (stdc_bit_floor (0UL), ul), 1);
++  TEST_COMPARE (stdc_bit_floor (0ULL), 0ULL);
++  TEST_COMPARE (expr_has_type (stdc_bit_floor (0ULL), ull), 1);
++  TEST_COMPARE (stdc_bit_floor ((uc) ~0U), (1U << (CHAR_BIT - 1)));
++  TEST_COMPARE (stdc_bit_floor ((us) ~0U),
++		(1U << (sizeof (short) * CHAR_BIT - 1)));
++  TEST_COMPARE (stdc_bit_floor (~0U), (1U << (sizeof (int) * CHAR_BIT - 1)));
++  TEST_COMPARE (stdc_bit_floor (~0UL),
++		(1UL << (sizeof (long int) * CHAR_BIT - 1)));
++  TEST_COMPARE (stdc_bit_floor (~0ULL),
++		(1ULL << (sizeof (long long int) * CHAR_BIT - 1)));
++  TEST_COMPARE (stdc_bit_floor ((uc) 4), 4);
++  TEST_COMPARE (stdc_bit_floor ((uc) 7), 4);
++  TEST_COMPARE (stdc_bit_floor ((us) 8U), 8);
++  TEST_COMPARE (stdc_bit_floor ((us) 31U), 16);
++  TEST_COMPARE (stdc_bit_floor (137U), 128U);
++  TEST_COMPARE (stdc_bit_floor (269U), 256U);
++  TEST_COMPARE (stdc_bit_floor (511UL), 256UL);
++  TEST_COMPARE (stdc_bit_floor (512UL), 512UL);
++  TEST_COMPARE (stdc_bit_floor (513UL), 512ULL);
++  TEST_COMPARE (stdc_bit_floor (1024ULL), 1024ULL);
++  TEST_COMPARE (stdc_bit_ceil ((uc) 0), 1);
++  TEST_COMPARE (expr_has_type (stdc_bit_ceil ((uc) 0), uc), 1);
++  TEST_COMPARE (stdc_bit_ceil ((us) 0), 1);
++  TEST_COMPARE (expr_has_type (stdc_bit_ceil ((us) 0), us), 1);
++  TEST_COMPARE (stdc_bit_ceil (0U), 1U);
++  TEST_COMPARE (expr_has_type (stdc_bit_ceil (0U), ui), 1);
++  TEST_COMPARE (stdc_bit_ceil (0UL), 1UL);
++  TEST_COMPARE (expr_has_type (stdc_bit_ceil (0UL), ul), 1);
++  TEST_COMPARE (stdc_bit_ceil (0ULL), 1ULL);
++  TEST_COMPARE (expr_has_type (stdc_bit_ceil (0ULL), ull), 1);
++  TEST_COMPARE (stdc_bit_ceil ((uc) ~0U), 0);
++  TEST_COMPARE (stdc_bit_ceil ((us) ~0U), 0);
++  TEST_COMPARE (stdc_bit_ceil (~0U), 0U);
++  TEST_COMPARE (stdc_bit_ceil (~0UL), 0UL);
++  TEST_COMPARE (stdc_bit_ceil (~0ULL), 0ULL);
++  TEST_COMPARE (stdc_bit_ceil ((uc) ((uc) ~0U >> 1)), (1U << (CHAR_BIT - 1)));
++  TEST_COMPARE (stdc_bit_ceil ((uc) ((uc) ~0U >> 1)), (1U << (CHAR_BIT - 1)));
++  TEST_COMPARE (stdc_bit_ceil ((us) ((us) ~0U >> 1)),
++		(1U << (sizeof (short) * CHAR_BIT - 1)));
++  TEST_COMPARE (stdc_bit_ceil ((us) ((us) ~0U >> 1)),
++		(1U << (sizeof (short) * CHAR_BIT - 1)));
++  TEST_COMPARE (stdc_bit_ceil (~0U >> 1),
++		(1U << (sizeof (int) * CHAR_BIT - 1)));
++  TEST_COMPARE (stdc_bit_ceil (1U << (sizeof (int) * CHAR_BIT - 1)),
++		(1U << (sizeof (int) * CHAR_BIT - 1)));
++  TEST_COMPARE (stdc_bit_ceil (~0UL >> 1),
++		(1UL << (sizeof (long int) * CHAR_BIT - 1)));
++  TEST_COMPARE (stdc_bit_ceil (~0UL >> 1),
++		(1UL << (sizeof (long int) * CHAR_BIT - 1)));
++  TEST_COMPARE (stdc_bit_ceil (1ULL
++			       << (sizeof (long long int) * CHAR_BIT - 1)),
++		(1ULL << (sizeof (long long int) * CHAR_BIT - 1)));
++  TEST_COMPARE (stdc_bit_ceil (~0ULL >> 1),
++		(1ULL << (sizeof (long long int) * CHAR_BIT - 1)));
++  TEST_COMPARE (stdc_bit_ceil ((uc) 1), 1);
++  TEST_COMPARE (stdc_bit_ceil ((uc) 2), 2);
++  TEST_COMPARE (stdc_bit_ceil ((us) 3U), 4);
++  TEST_COMPARE (stdc_bit_ceil ((us) 4U), 4);
++  TEST_COMPARE (stdc_bit_ceil (5U), 8U);
++  TEST_COMPARE (stdc_bit_ceil (269U), 512U);
++  TEST_COMPARE (stdc_bit_ceil (511UL), 512UL);
++  TEST_COMPARE (stdc_bit_ceil (512UL), 512UL);
++  TEST_COMPARE (stdc_bit_ceil (513ULL), 1024ULL);
++  TEST_COMPARE (stdc_bit_ceil (1025ULL), 2048ULL);
++# ifdef __SIZEOF_INT128__
++  TEST_COMPARE (stdc_leading_zeros ((unsigned __int128) 0),
++		sizeof (__int128) * CHAR_BIT);
++  TEST_COMPARE (expr_has_type (stdc_leading_zeros ((unsigned __int128) 0), ui),
++		1);
++  TEST_COMPARE (stdc_leading_zeros (~(unsigned __int128) 0), 0);
++  TEST_COMPARE (stdc_leading_ones ((unsigned __int128) 0), 0);
++  TEST_COMPARE (expr_has_type (stdc_leading_ones ((unsigned __int128) 0), ui),
++		1);
++  TEST_COMPARE (stdc_leading_ones (~(unsigned __int128) 0),
++		sizeof (__int128) * CHAR_BIT);
++  TEST_COMPARE (stdc_trailing_zeros ((unsigned __int128) 0),
++		sizeof (__int128) * CHAR_BIT);
++  TEST_COMPARE (expr_has_type (stdc_trailing_zeros ((unsigned __int128) 0),
++			       ui), 1);
++  TEST_COMPARE (stdc_trailing_zeros (~(unsigned __int128) 0), 0);
++  TEST_COMPARE (stdc_trailing_ones ((unsigned __int128) 0), 0);
++  TEST_COMPARE (expr_has_type (stdc_trailing_ones ((unsigned __int128) 0), ui),
++		1);
++  TEST_COMPARE (stdc_trailing_ones (~(unsigned __int128) 0),
++		sizeof (__int128) * CHAR_BIT);
++  TEST_COMPARE (stdc_first_leading_zero ((unsigned __int128) 0), 1);
++  TEST_COMPARE (expr_has_type (stdc_first_leading_zero ((unsigned __int128) 0),
++			       ui), 1);
++  TEST_COMPARE (stdc_first_leading_zero (~(unsigned __int128) 0), 0);
++  TEST_COMPARE (stdc_first_leading_one ((unsigned __int128) 0), 0);
++  TEST_COMPARE (expr_has_type (stdc_first_leading_one ((unsigned __int128) 0),
++			       ui), 1);
++  TEST_COMPARE (stdc_first_leading_one (~(unsigned __int128) 0), 1);
++  TEST_COMPARE (stdc_first_trailing_zero ((unsigned __int128) 0), 1);
++  TEST_COMPARE (expr_has_type (stdc_first_trailing_zero ((unsigned __int128)
++							 0), ui), 1);
++  TEST_COMPARE (stdc_first_trailing_zero (~(unsigned __int128) 0), 0);
++  TEST_COMPARE (stdc_first_trailing_one ((unsigned __int128) 0), 0);
++  TEST_COMPARE (expr_has_type (stdc_first_trailing_one ((unsigned __int128) 0),
++			       ui), 1);
++  TEST_COMPARE (stdc_first_trailing_one (~(unsigned __int128) 0), 1);
++  TEST_COMPARE (stdc_count_zeros ((unsigned __int128) 0),
++		sizeof (__int128) * CHAR_BIT);
++  TEST_COMPARE (expr_has_type (stdc_count_zeros ((unsigned __int128) 0), ui),
++		1);
++  TEST_COMPARE (stdc_count_zeros (~(unsigned __int128) 0), 0);
++  TEST_COMPARE (stdc_count_ones ((unsigned __int128) 0), 0);
++  TEST_COMPARE (expr_has_type (stdc_count_ones ((unsigned __int128) 0), ui),
++		1);
++  TEST_COMPARE (stdc_count_ones (~(unsigned __int128) 0),
++		sizeof (__int128) * CHAR_BIT);
++  TEST_COMPARE (stdc_has_single_bit ((unsigned __int128) 0), 0);
++  TEST_COMPARE (expr_has_type (stdc_has_single_bit ((unsigned __int128) 0),
++		_Bool), 1);
++  TEST_COMPARE (stdc_has_single_bit (~(unsigned __int128) 0), 0);
++  TEST_COMPARE (stdc_bit_width ((unsigned __int128) 0), 0);
++  TEST_COMPARE (expr_has_type (stdc_bit_width ((unsigned __int128) 0), ui), 1);
++  TEST_COMPARE (stdc_bit_width (~(unsigned __int128) 0),
++		sizeof (__int128) * CHAR_BIT);
++  TEST_COMPARE (stdc_bit_floor ((unsigned __int128) 0) != 0, 0);
++  TEST_COMPARE (expr_has_type (stdc_bit_floor ((unsigned __int128) 0),
++			       unsigned __int128), 1);
++  TEST_COMPARE (stdc_bit_floor (~(unsigned __int128) 0)
++		!= ((unsigned __int128) 1) << (sizeof (__int128)
++					       * CHAR_BIT - 1), 0);
++  TEST_COMPARE (stdc_bit_ceil ((unsigned __int128) 0) != 1, 0);
++  TEST_COMPARE (expr_has_type (stdc_bit_ceil ((unsigned __int128) 0),
++			       unsigned __int128), 1);
++  TEST_COMPARE (stdc_bit_ceil ((unsigned __int128) 1) != 1, 0);
++  TEST_COMPARE (stdc_bit_ceil ((~(unsigned __int128) 0) >> 1)
++		!= ((unsigned __int128) 1) << (sizeof (__int128)
++					       * CHAR_BIT - 1), 0);
++  TEST_COMPARE (stdc_bit_ceil (~(unsigned __int128) 0) != 0, 0);
++# endif
++  uc a = 0;
++  TEST_COMPARE (stdc_bit_width (a++), 0);
++  TEST_COMPARE (a, 1);
++  ull b = 0;
++  TEST_COMPARE (stdc_bit_width (b++), 0);
++  TEST_COMPARE (b, 1);
++  TEST_COMPARE (stdc_bit_floor (a++), 1);
++  TEST_COMPARE (a, 2);
++  TEST_COMPARE (stdc_bit_floor (b++), 1);
++  TEST_COMPARE (b, 2);
++  TEST_COMPARE (stdc_bit_ceil (a++), 2);
++  TEST_COMPARE (a, 3);
++  TEST_COMPARE (stdc_bit_ceil (b++), 2);
++  TEST_COMPARE (b, 3);
++  TEST_COMPARE (stdc_leading_zeros (a++), CHAR_BIT - 2);
++  TEST_COMPARE (a, 4);
++  TEST_COMPARE (stdc_leading_zeros (b++),
++		sizeof (long long int) * CHAR_BIT - 2);
++  TEST_COMPARE (b, 4);
++  TEST_COMPARE (stdc_leading_ones (a++), 0);
++  TEST_COMPARE (a, 5);
++  TEST_COMPARE (stdc_leading_ones (b++), 0);
++  TEST_COMPARE (b, 5);
++  TEST_COMPARE (stdc_trailing_zeros (a++), 0);
++  TEST_COMPARE (a, 6);
++  TEST_COMPARE (stdc_trailing_zeros (b++), 0);
++  TEST_COMPARE (b, 6);
++  TEST_COMPARE (stdc_trailing_ones (a++), 0);
++  TEST_COMPARE (a, 7);
++  TEST_COMPARE (stdc_trailing_ones (b++), 0);
++  TEST_COMPARE (b, 7);
++  TEST_COMPARE (stdc_first_leading_zero (a++), 1);
++  TEST_COMPARE (a, 8);
++  TEST_COMPARE (stdc_first_leading_zero (b++), 1);
++  TEST_COMPARE (b, 8);
++  TEST_COMPARE (stdc_first_leading_one (a++), CHAR_BIT - 3);
++  TEST_COMPARE (a, 9);
++  TEST_COMPARE (stdc_first_leading_one (b++),
++		sizeof (long long int) * CHAR_BIT - 3);
++  TEST_COMPARE (b, 9);
++  TEST_COMPARE (stdc_first_trailing_zero (a++), 2);
++  TEST_COMPARE (a, 10);
++  TEST_COMPARE (stdc_first_trailing_zero (b++), 2);
++  TEST_COMPARE (b, 10);
++  TEST_COMPARE (stdc_first_trailing_one (a++), 2);
++  TEST_COMPARE (a, 11);
++  TEST_COMPARE (stdc_first_trailing_one (b++), 2);
++  TEST_COMPARE (b, 11);
++  TEST_COMPARE (stdc_count_zeros (a++), CHAR_BIT - 3);
++  TEST_COMPARE (a, 12);
++  TEST_COMPARE (stdc_count_zeros (b++),
++		sizeof (long long int) * CHAR_BIT - 3);
++  TEST_COMPARE (b, 12);
++  TEST_COMPARE (stdc_count_ones (a++), 2);
++  TEST_COMPARE (a, 13);
++  TEST_COMPARE (stdc_count_ones (b++), 2);
++  TEST_COMPARE (b, 13);
++  TEST_COMPARE (stdc_has_single_bit (a++), 0);
++  TEST_COMPARE (a, 14);
++  TEST_COMPARE (stdc_has_single_bit (b++), 0);
++  TEST_COMPARE (b, 14);
++# ifdef BITINT_MAXWIDTH
++#  if BITINT_MAXWIDTH >= 64
++  TEST_COMPARE (stdc_leading_zeros (0uwb), 1);
++  TEST_COMPARE (expr_has_type (stdc_leading_zeros (0uwb), ui), 1);
++  TEST_COMPARE (stdc_leading_zeros (1uwb), 0);
++  TEST_COMPARE (expr_has_type (stdc_leading_zeros (1uwb), ui), 1);
++  TEST_COMPARE (stdc_leading_ones (0uwb), 0);
++  TEST_COMPARE (expr_has_type (stdc_leading_ones (0uwb), ui), 1);
++  TEST_COMPARE (stdc_leading_ones (1uwb), 1);
++  TEST_COMPARE (expr_has_type (stdc_leading_ones (1uwb), ui), 1);
++  TEST_COMPARE (stdc_trailing_zeros (0uwb), 1);
++  TEST_COMPARE (expr_has_type (stdc_trailing_zeros (0uwb), ui), 1);
++  TEST_COMPARE (stdc_trailing_zeros (1uwb), 0);
++  TEST_COMPARE (expr_has_type (stdc_trailing_zeros (1uwb), ui), 1);
++  TEST_COMPARE (stdc_trailing_ones (0uwb), 0);
++  TEST_COMPARE (expr_has_type (stdc_trailing_ones (0uwb), ui), 1);
++  TEST_COMPARE (stdc_trailing_ones (1uwb), 1);
++  TEST_COMPARE (expr_has_type (stdc_trailing_ones (1uwb), ui), 1);
++  TEST_COMPARE (stdc_first_leading_zero (0uwb), 1);
++  TEST_COMPARE (expr_has_type (stdc_first_leading_zero (0uwb), ui), 1);
++  TEST_COMPARE (stdc_first_leading_zero (1uwb), 0);
++  TEST_COMPARE (expr_has_type (stdc_first_leading_zero (1uwb), ui), 1);
++  TEST_COMPARE (stdc_first_leading_one (0uwb), 0);
++  TEST_COMPARE (expr_has_type (stdc_first_leading_one (0uwb), ui), 1);
++  TEST_COMPARE (stdc_first_leading_one (1uwb), 1);
++  TEST_COMPARE (expr_has_type (stdc_first_leading_one (1uwb), ui), 1);
++  TEST_COMPARE (stdc_first_trailing_zero (0uwb), 1);
++  TEST_COMPARE (expr_has_type (stdc_first_trailing_zero (0uwb), ui), 1);
++  TEST_COMPARE (stdc_first_trailing_zero (1uwb), 0);
++  TEST_COMPARE (expr_has_type (stdc_first_trailing_zero (1uwb), ui), 1);
++  TEST_COMPARE (stdc_first_trailing_one (0uwb), 0);
++  TEST_COMPARE (expr_has_type (stdc_first_trailing_one (0uwb), ui), 1);
++  TEST_COMPARE (stdc_first_trailing_one (1uwb), 1);
++  TEST_COMPARE (expr_has_type (stdc_first_trailing_one (1uwb), ui), 1);
++  TEST_COMPARE (stdc_count_zeros (0uwb), 1);
++  TEST_COMPARE (expr_has_type (stdc_count_zeros (0uwb), ui), 1);
++  TEST_COMPARE (stdc_count_zeros (1uwb), 0);
++  TEST_COMPARE (expr_has_type (stdc_count_zeros (1uwb), ui), 1);
++  TEST_COMPARE (stdc_count_ones (0uwb), 0);
++  TEST_COMPARE (expr_has_type (stdc_count_ones (0uwb), ui), 1);
++  TEST_COMPARE (stdc_count_ones (1uwb), 1);
++  TEST_COMPARE (expr_has_type (stdc_count_ones (1uwb), ui), 1);
++  TEST_COMPARE (stdc_has_single_bit (0uwb), 0);
++  TEST_COMPARE (expr_has_type (stdc_has_single_bit (0uwb), _Bool), 1);
++  TEST_COMPARE (stdc_has_single_bit (1uwb), 1);
++  TEST_COMPARE (expr_has_type (stdc_has_single_bit (1uwb), _Bool), 1);
++  TEST_COMPARE (stdc_bit_width (0uwb), 0);
++  TEST_COMPARE (expr_has_type (stdc_bit_width (0uwb), ui), 1);
++  TEST_COMPARE (stdc_bit_width (1uwb), 1);
++  TEST_COMPARE (expr_has_type (stdc_bit_width (1uwb), ui), 1);
++  TEST_COMPARE (stdc_bit_floor (0uwb), 0);
++  TEST_COMPARE (expr_has_type (stdc_bit_floor (0uwb), unsigned _BitInt(1)), 1);
++  TEST_COMPARE (stdc_bit_floor (1uwb), 1);
++  TEST_COMPARE (expr_has_type (stdc_bit_floor (1uwb), unsigned _BitInt(1)), 1);
++  TEST_COMPARE (stdc_bit_ceil (0uwb), 1);
++  TEST_COMPARE (expr_has_type (stdc_bit_ceil (0uwb), unsigned _BitInt(1)), 1);
++  TEST_COMPARE (stdc_bit_ceil (1uwb), 1);
++  TEST_COMPARE (expr_has_type (stdc_bit_ceil (1uwb), unsigned _BitInt(1)), 1);
++  unsigned _BitInt(1) c = 0;
++  TEST_COMPARE (stdc_bit_floor (c++), 0);
++  TEST_COMPARE (c, 1);
++  TEST_COMPARE (stdc_bit_floor (c++), 1);
++  TEST_COMPARE (c, 0);
++  TEST_COMPARE (stdc_bit_ceil (c++), 1);
++  TEST_COMPARE (c, 1);
++  TEST_COMPARE (stdc_bit_ceil (c++), 1);
++  TEST_COMPARE (c, 0);
++#  endif
++#  if BITINT_MAXWIDTH >= 512
++  TEST_COMPARE (stdc_leading_zeros ((unsigned _BitInt(512)) 0), 512);
++  TEST_COMPARE (expr_has_type (stdc_leading_zeros ((unsigned _BitInt(512)) 0),
++			       ui), 1);
++  TEST_COMPARE (stdc_leading_zeros ((unsigned _BitInt(373)) 0), 373);
++  TEST_COMPARE (expr_has_type (stdc_leading_zeros ((unsigned _BitInt(373)) 0),
++			       ui), 1);
++  TEST_COMPARE (stdc_leading_zeros (~(unsigned _BitInt(512)) 0), 0);
++  TEST_COMPARE (stdc_leading_zeros (~(unsigned _BitInt(373)) 0), 0);
++  TEST_COMPARE (stdc_leading_zeros ((unsigned _BitInt(512)) 275), 512 - 9);
++  TEST_COMPARE (stdc_leading_zeros ((unsigned _BitInt(373)) 512), 373 - 10);
++  TEST_COMPARE (stdc_leading_ones ((unsigned _BitInt(512)) 0), 0);
++  TEST_COMPARE (expr_has_type (stdc_leading_ones ((unsigned _BitInt(512)) 0),
++			       ui), 1);
++  TEST_COMPARE (stdc_leading_ones ((unsigned _BitInt(373)) 0), 0);
++  TEST_COMPARE (expr_has_type (stdc_leading_ones ((unsigned _BitInt(373)) 0),
++			       ui), 1);
++  TEST_COMPARE (stdc_leading_ones (~(unsigned _BitInt(512)) 0), 512);
++  TEST_COMPARE (stdc_leading_ones (~(unsigned _BitInt(373)) 0), 373);
++  TEST_COMPARE (stdc_leading_ones (~(unsigned _BitInt(512)) 275), 512 - 9);
++  TEST_COMPARE (stdc_leading_ones (~(unsigned _BitInt(373)) 512), 373 - 10);
++  TEST_COMPARE (stdc_trailing_zeros ((unsigned _BitInt(512)) 0), 512);
++  TEST_COMPARE (expr_has_type (stdc_trailing_zeros ((unsigned _BitInt(512)) 0),
++			       ui), 1);
++  TEST_COMPARE (stdc_trailing_zeros ((unsigned _BitInt(373)) 0), 373);
++  TEST_COMPARE (expr_has_type (stdc_trailing_zeros ((unsigned _BitInt(373)) 0),
++			       ui), 1);
++  TEST_COMPARE (stdc_trailing_zeros (~(unsigned _BitInt(512)) 0), 0);
++  TEST_COMPARE (stdc_trailing_zeros (~(unsigned _BitInt(373)) 0), 0);
++  TEST_COMPARE (stdc_trailing_zeros ((unsigned _BitInt(512)) 256), 8);
++  TEST_COMPARE (stdc_trailing_zeros ((unsigned _BitInt(373)) 512), 9);
++  TEST_COMPARE (stdc_trailing_ones ((unsigned _BitInt(512)) 0), 0);
++  TEST_COMPARE (expr_has_type (stdc_trailing_ones ((unsigned _BitInt(512)) 0),
++			       ui), 1);
++  TEST_COMPARE (stdc_trailing_ones ((unsigned _BitInt(373)) 0), 0);
++  TEST_COMPARE (expr_has_type (stdc_trailing_ones ((unsigned _BitInt(373)) 0),
++			       ui), 1);
++  TEST_COMPARE (stdc_trailing_ones (~(unsigned _BitInt(512)) 0), 512);
++  TEST_COMPARE (stdc_trailing_ones (~(unsigned _BitInt(373)) 0), 373);
++  TEST_COMPARE (stdc_trailing_ones ((unsigned _BitInt(512)) 255), 8);
++  TEST_COMPARE (stdc_trailing_ones ((~(unsigned _BitInt(373)) 0) >> 2),
++		373 - 2);
++  TEST_COMPARE (stdc_first_leading_zero ((unsigned _BitInt(512)) 0), 1);
++  TEST_COMPARE (expr_has_type (stdc_first_leading_zero ((unsigned _BitInt(512))
++							0), ui), 1);
++  TEST_COMPARE (stdc_first_leading_zero ((unsigned _BitInt(373)) 0), 1);
++  TEST_COMPARE (expr_has_type (stdc_first_leading_zero ((unsigned _BitInt(373))
++							0), ui), 1);
++  TEST_COMPARE (stdc_first_leading_zero (~(unsigned _BitInt(512)) 0), 0);
++  TEST_COMPARE (stdc_first_leading_zero (~(unsigned _BitInt(373)) 0), 0);
++  TEST_COMPARE (stdc_first_leading_zero (~(unsigned _BitInt(512)) 511),
++		512 - 8);
++  TEST_COMPARE (stdc_first_leading_zero (~(unsigned _BitInt(373)) 1023),
++		373 - 9);
++  TEST_COMPARE (stdc_first_leading_one ((unsigned _BitInt(512)) 0), 0);
++  TEST_COMPARE (expr_has_type (stdc_first_leading_one ((unsigned _BitInt(512))
++						       0), ui), 1);
++  TEST_COMPARE (stdc_first_leading_one ((unsigned _BitInt(373)) 0), 0);
++  TEST_COMPARE (expr_has_type (stdc_first_leading_one ((unsigned _BitInt(373))
++						       0), ui), 1);
++  TEST_COMPARE (stdc_first_leading_one (~(unsigned _BitInt(512)) 0), 1);
++  TEST_COMPARE (stdc_first_leading_one (~(unsigned _BitInt(373)) 0), 1);
++  TEST_COMPARE (stdc_first_leading_one ((unsigned _BitInt(512)) 275), 512 - 8);
++  TEST_COMPARE (stdc_first_leading_one ((unsigned _BitInt(373)) 512), 373 - 9);
++  TEST_COMPARE (stdc_first_trailing_zero ((unsigned _BitInt(512)) 0), 1);
++  TEST_COMPARE (expr_has_type (stdc_first_trailing_zero ((unsigned
++							  _BitInt(512)) 0),
++			       ui), 1);
++  TEST_COMPARE (stdc_first_trailing_zero ((unsigned _BitInt(373)) 0), 1);
++  TEST_COMPARE (expr_has_type (stdc_first_trailing_zero ((unsigned
++							  _BitInt(373)) 0),
++			       ui), 1);
++  TEST_COMPARE (stdc_first_trailing_zero (~(unsigned _BitInt(512)) 0), 0);
++  TEST_COMPARE (stdc_first_trailing_zero (~(unsigned _BitInt(373)) 0), 0);
++  TEST_COMPARE (stdc_first_trailing_zero ((unsigned _BitInt(512)) 255), 9);
++  TEST_COMPARE (stdc_first_trailing_zero ((unsigned _BitInt(373)) 511), 10);
++  TEST_COMPARE (stdc_first_trailing_one ((unsigned _BitInt(512)) 0), 0);
++  TEST_COMPARE (expr_has_type (stdc_first_trailing_one ((unsigned _BitInt(512))
++							0), ui), 1);
++  TEST_COMPARE (stdc_first_trailing_one ((unsigned _BitInt(373)) 0), 0);
++  TEST_COMPARE (expr_has_type (stdc_first_trailing_one ((unsigned _BitInt(373))
++							0), ui), 1);
++  TEST_COMPARE (stdc_first_trailing_one (~(unsigned _BitInt(512)) 0), 1);
++  TEST_COMPARE (stdc_first_trailing_one (~(unsigned _BitInt(373)) 0), 1);
++  TEST_COMPARE (stdc_first_trailing_one (((unsigned _BitInt(512)) 255) << 175),
++		176);
++  TEST_COMPARE (stdc_first_trailing_one ((~(unsigned _BitInt(373)) 0) << 311),
++		312);
++  TEST_COMPARE (stdc_count_zeros ((unsigned _BitInt(512)) 0), 512);
++  TEST_COMPARE (expr_has_type (stdc_count_zeros ((unsigned _BitInt(512)) 0),
++			       ui), 1);
++  TEST_COMPARE (stdc_count_zeros ((unsigned _BitInt(373)) 0), 373);
++  TEST_COMPARE (expr_has_type (stdc_count_zeros ((unsigned _BitInt(373)) 0),
++			       ui), 1);
++  TEST_COMPARE (stdc_count_zeros (~(unsigned _BitInt(512)) 0), 0);
++  TEST_COMPARE (stdc_count_zeros (~(unsigned _BitInt(373)) 0), 0);
++  TEST_COMPARE (stdc_count_zeros ((unsigned _BitInt(512)) 1315), 512 - 5);
++  TEST_COMPARE (stdc_count_zeros ((unsigned _BitInt(373)) 3363), 373 - 6);
++  TEST_COMPARE (stdc_count_ones ((unsigned _BitInt(512)) 0), 0);
++  TEST_COMPARE (expr_has_type (stdc_count_ones ((unsigned _BitInt(512)) 0),
++			       ui), 1);
++  TEST_COMPARE (stdc_count_ones ((unsigned _BitInt(373)) 0), 0);
++  TEST_COMPARE (expr_has_type (stdc_count_ones ((unsigned _BitInt(373)) 0),
++			       ui), 1);
++  TEST_COMPARE (stdc_count_ones (~(unsigned _BitInt(512)) 0), 512);
++  TEST_COMPARE (stdc_count_ones (~(unsigned _BitInt(373)) 0), 373);
++  TEST_COMPARE (stdc_count_ones (~(unsigned _BitInt(512)) 1315), 512 - 5);
++  TEST_COMPARE (stdc_count_ones (~(unsigned _BitInt(373)) 3363), 373 - 6);
++  TEST_COMPARE (stdc_has_single_bit ((unsigned _BitInt(512)) 0), 0);
++  TEST_COMPARE (expr_has_type (stdc_has_single_bit ((unsigned _BitInt(512)) 0),
++			       _Bool), 1);
++  TEST_COMPARE (stdc_has_single_bit ((unsigned _BitInt(373)) 0), 0);
++  TEST_COMPARE (expr_has_type (stdc_has_single_bit ((unsigned _BitInt(373)) 0),
++			       _Bool), 1);
++  TEST_COMPARE (stdc_has_single_bit (~(unsigned _BitInt(512)) 0), 0);
++  TEST_COMPARE (stdc_has_single_bit (~(unsigned _BitInt(373)) 0), 0);
++  TEST_COMPARE (stdc_has_single_bit (((unsigned _BitInt(512)) 1022) << 279),
++		0);
++  TEST_COMPARE (stdc_has_single_bit (((unsigned _BitInt(373)) 12) << 305), 0);
++  TEST_COMPARE (stdc_bit_width ((unsigned _BitInt(512)) 0), 0);
++  TEST_COMPARE (expr_has_type (stdc_bit_width ((unsigned _BitInt(512)) 0),
++			       ui), 1);
++  TEST_COMPARE (stdc_bit_width ((unsigned _BitInt(373)) 0), 0);
++  TEST_COMPARE (expr_has_type (stdc_bit_width ((unsigned _BitInt(373)) 0),
++			       ui), 1);
++  TEST_COMPARE (stdc_bit_width (~(unsigned _BitInt(512)) 0), 512);
++  TEST_COMPARE (stdc_bit_width (~(unsigned _BitInt(373)) 0), 373);
++  TEST_COMPARE (stdc_bit_width (((unsigned _BitInt(512)) 1023) << 405),
++		405 + 10);
++  TEST_COMPARE (stdc_bit_width (((unsigned _BitInt(373)) 1024) << 242),
++		242 + 11);
++  TEST_COMPARE (stdc_bit_floor ((unsigned _BitInt(512)) 0) != 0, 0);
++  TEST_COMPARE (expr_has_type (stdc_bit_floor ((unsigned _BitInt(512)) 0),
++			       unsigned _BitInt(512)), 1);
++  TEST_COMPARE (stdc_bit_floor ((unsigned _BitInt(373)) 0) != 0, 0);
++  TEST_COMPARE (expr_has_type (stdc_bit_floor ((unsigned _BitInt(373)) 0),
++			       unsigned _BitInt(373)), 1);
++  TEST_COMPARE (stdc_bit_floor (~(unsigned _BitInt(512)) 0)
++		!= ((unsigned _BitInt(512)) 1) << (512 - 1), 0);
++  TEST_COMPARE (stdc_bit_floor (~(unsigned _BitInt(373)) 0)
++		!= ((unsigned _BitInt(373)) 1) << (373 - 1), 0);
++  TEST_COMPARE (stdc_bit_floor (((unsigned _BitInt(512)) 511) << 405)
++		!= (((unsigned _BitInt(512)) 256) << 405), 0);
++  TEST_COMPARE (stdc_bit_floor (((unsigned _BitInt(373)) 512) << 242)
++		!= (((unsigned _BitInt(512)) 512) << 242), 0);
++  TEST_COMPARE (stdc_bit_ceil ((unsigned _BitInt(512)) 0) != 1, 0);
++  TEST_COMPARE (expr_has_type (stdc_bit_ceil ((unsigned _BitInt(512)) 0),
++			       unsigned _BitInt(512)), 1);
++  TEST_COMPARE (stdc_bit_ceil ((unsigned _BitInt(373)) 0) != 1, 0);
++  TEST_COMPARE (expr_has_type (stdc_bit_ceil ((unsigned _BitInt(373)) 0),
++			       unsigned _BitInt(373)), 1);
++  TEST_COMPARE (stdc_bit_ceil (~(unsigned _BitInt(512)) 0) != 0, 0);
++  TEST_COMPARE (stdc_bit_ceil (~(unsigned _BitInt(373)) 0) != 0, 0);
++  TEST_COMPARE (stdc_bit_ceil (((unsigned _BitInt(512)) 1) << (512 - 1))
++		!= ((unsigned _BitInt(512)) 1) << (512 - 1), 0);
++  TEST_COMPARE (stdc_bit_ceil ((~(unsigned _BitInt(373)) 0) >> 1)
++		!= ((unsigned _BitInt(373)) 1) << (373 - 1), 0);
++  TEST_COMPARE (stdc_bit_ceil (((unsigned _BitInt(512)) 512) << 405)
++		!= (((unsigned _BitInt(512)) 512) << 405), 0);
++  TEST_COMPARE (stdc_bit_ceil (((unsigned _BitInt(373)) 513) << 242)
++		!= (((unsigned _BitInt(512)) 1024) << 242), 0);
++  TEST_COMPARE (stdc_bit_floor ((unsigned _BitInt(BITINT_MAXWIDTH)) 0) != 0,
++		0);
++  TEST_COMPARE (stdc_bit_floor (~(unsigned _BitInt(BITINT_MAXWIDTH)) 0)
++		!= ((unsigned _BitInt(BITINT_MAXWIDTH)) 1) << (BITINT_MAXWIDTH
++							       - 1), 0);
++  TEST_COMPARE (stdc_bit_floor (((unsigned _BitInt(BITINT_MAXWIDTH)) 511)
++				<< 405)
++		!= (((unsigned _BitInt(BITINT_MAXWIDTH)) 256) << 405), 0);
++  TEST_COMPARE (stdc_bit_floor (((unsigned _BitInt(BITINT_MAXWIDTH)) 512)
++				<< 405)
++		!= (((unsigned _BitInt(BITINT_MAXWIDTH)) 512) << 405), 0);
++  TEST_COMPARE (stdc_bit_ceil ((unsigned _BitInt(BITINT_MAXWIDTH)) 0) != 1, 0);
++  TEST_COMPARE (stdc_bit_ceil (~(unsigned _BitInt(BITINT_MAXWIDTH)) 0) != 0,
++		0);
++  TEST_COMPARE (stdc_bit_ceil (((unsigned _BitInt(BITINT_MAXWIDTH)) 1)
++			       << (BITINT_MAXWIDTH - 1))
++		!= ((unsigned _BitInt(BITINT_MAXWIDTH)) 1) << (BITINT_MAXWIDTH
++							       - 1), 0);
++  TEST_COMPARE (stdc_bit_ceil (((unsigned _BitInt(BITINT_MAXWIDTH)) 512)
++			       << 405)
++		!= (((unsigned _BitInt(BITINT_MAXWIDTH)) 512) << 405), 0);
++  TEST_COMPARE (stdc_bit_ceil (((unsigned _BitInt(BITINT_MAXWIDTH)) 513)
++			       << 405)
++		!= (((unsigned _BitInt(BITINT_MAXWIDTH)) 1024) << 405), 0);
++#  endif
++# endif
++  return 0;
++}
++#else
++static int
++do_test (void)
++{
++  return 0;
++}
++#endif
++
++#include <support/test-driver.c>
+
+commit 71fcdba577884627c3ee4e43beb915da752efb1f
+Author: Florian Weimer <fweimer@redhat.com>
+Date:   Fri Mar 15 19:08:24 2024 +0100
+
+    linux: Use rseq area unconditionally in sched_getcpu (bug 31479)
+    
+    Originally, nptl/descr.h included <sys/rseq.h>, but we removed that
+    in commit 2c6b4b272e6b4d07303af25709051c3e96288f2d ("nptl:
+    Unconditionally use a 32-byte rseq area").  After that, it was
+    not ensured that the RSEQ_SIG macro was defined during sched_getcpu.c
+    compilation that provided a definition.  This commit always checks
+    the rseq area for CPU number information before using the other
+    approaches.
+    
+    This adds an unnecessary (but well-predictable) branch on
+    architectures which do not define RSEQ_SIG, but its cost is small
+    compared to the system call.  Most architectures that have vDSO
+    acceleration for getcpu also have rseq support.
+    
+    Fixes: 2c6b4b272e6b4d07303af25709051c3e96288f2d
+    Fixes: 1d350aa06091211863e41169729cee1bca39f72f
+    Reviewed-by: Arjun Shankar <arjun@redhat.com>
+    (cherry picked from commit 7a76f218677d149d8b7875b336722108239f7ee9)
+
+diff --git a/sysdeps/unix/sysv/linux/sched_getcpu.c b/sysdeps/unix/sysv/linux/sched_getcpu.c
+index dfb884568d..72a3360550 100644
+--- a/sysdeps/unix/sysv/linux/sched_getcpu.c
++++ b/sysdeps/unix/sysv/linux/sched_getcpu.c
+@@ -33,17 +33,9 @@ vsyscall_sched_getcpu (void)
+   return r == -1 ? r : cpu;
+ }
+ 
+-#ifdef RSEQ_SIG
+ int
+ sched_getcpu (void)
+ {
+   int cpu_id = THREAD_GETMEM_VOLATILE (THREAD_SELF, rseq_area.cpu_id);
+   return __glibc_likely (cpu_id >= 0) ? cpu_id : vsyscall_sched_getcpu ();
+ }
+-#else /* RSEQ_SIG */
+-int
+-sched_getcpu (void)
+-{
+-  return vsyscall_sched_getcpu ();
+-}
+-#endif /* RSEQ_SIG */
+
+commit ee7f4c54e19738c2c27d3846e1e9b3595c89221f
+Author: Manjunath Matti <mmatti@linux.ibm.com>
+Date:   Tue Mar 19 15:29:48 2024 -0500
+
+    powerpc: Add HWCAP3/HWCAP4 data to TCB for Power Architecture.
+    
+    This patch adds a new feature for powerpc.  In order to get faster
+    access to the HWCAP3/HWCAP4 masks, similar to HWCAP/HWCAP2 (i.e. for
+    implementing __builtin_cpu_supports() in GCC) without the overhead of
+    reading them from the auxiliary vector, we now reserve space for them
+    in the TCB.
+    
+    Suggested-by: Peter Bergner <bergner@linux.ibm.com>
+    Reviewed-by: Peter Bergner <bergner@linux.ibm.com>
+    (cherry picked from commit 3ab9b88e2ac91062b6d493fe32bd101a55006c6a)
+
+diff --git a/elf/dl-diagnostics.c b/elf/dl-diagnostics.c
+index 7345ebc4e5..aaf67b87e8 100644
+--- a/elf/dl-diagnostics.c
++++ b/elf/dl-diagnostics.c
+@@ -235,6 +235,8 @@ _dl_print_diagnostics (char **environ)
+   _dl_diagnostics_print_labeled_value ("dl_hwcap", GLRO (dl_hwcap));
+   _dl_diagnostics_print_labeled_value ("dl_hwcap_important", HWCAP_IMPORTANT);
+   _dl_diagnostics_print_labeled_value ("dl_hwcap2", GLRO (dl_hwcap2));
++  _dl_diagnostics_print_labeled_value ("dl_hwcap3", GLRO (dl_hwcap3));
++  _dl_diagnostics_print_labeled_value ("dl_hwcap4", GLRO (dl_hwcap4));
+   _dl_diagnostics_print_labeled_string
+     ("dl_hwcaps_subdirs", _dl_hwcaps_subdirs);
+   _dl_diagnostics_print_labeled_value
+diff --git a/elf/dl-support.c b/elf/dl-support.c
+index 2f502c8b0d..451932dd03 100644
+--- a/elf/dl-support.c
++++ b/elf/dl-support.c
+@@ -158,6 +158,8 @@ const ElfW(Phdr) *_dl_phdr;
+ size_t _dl_phnum;
+ uint64_t _dl_hwcap;
+ uint64_t _dl_hwcap2;
++uint64_t _dl_hwcap3;
++uint64_t _dl_hwcap4;
+ 
+ enum dso_sort_algorithm _dl_dso_sort_algo;
+ 
+diff --git a/elf/elf.h b/elf/elf.h
+index 455731663c..1c394c64cd 100644
+--- a/elf/elf.h
++++ b/elf/elf.h
+@@ -1234,6 +1234,10 @@ typedef struct
+ #define AT_RSEQ_FEATURE_SIZE	27	/* rseq supported feature size.  */
+ #define AT_RSEQ_ALIGN	28		/* rseq allocation alignment.  */
+ 
++/* More machine-dependent hints about processor capabilities.  */
++#define AT_HWCAP3	29		/* extension of AT_HWCAP.  */
++#define AT_HWCAP4	30		/* extension of AT_HWCAP.  */
++
+ #define AT_EXECFN	31		/* Filename of executable.  */
+ 
+ /* Pointer to the global system page used for system calls and other
+diff --git a/sysdeps/generic/ldsodefs.h b/sysdeps/generic/ldsodefs.h
+index 117c901ccc..50f58a60e3 100644
+--- a/sysdeps/generic/ldsodefs.h
++++ b/sysdeps/generic/ldsodefs.h
+@@ -646,6 +646,8 @@ struct rtld_global_ro
+   /* Mask for more hardware capabilities that are available on some
+      platforms.  */
+   EXTERN uint64_t _dl_hwcap2;
++  EXTERN uint64_t _dl_hwcap3;
++  EXTERN uint64_t _dl_hwcap4;
+ 
+   EXTERN enum dso_sort_algorithm _dl_dso_sort_algo;
+ 
+diff --git a/sysdeps/powerpc/dl-procinfo.c b/sysdeps/powerpc/dl-procinfo.c
+index a76bb6e5b0..8cf00aa7e3 100644
+--- a/sysdeps/powerpc/dl-procinfo.c
++++ b/sysdeps/powerpc/dl-procinfo.c
+@@ -38,6 +38,10 @@
+        needed.
+   */
+ 
++/* The total number of available bits (including those prior to
++   _DL_HWCAP_FIRST).  Some of these bits might not be used.  */
++#define _DL_HWCAP_COUNT         128
++
+ #ifndef PROCINFO_CLASS
+ # define PROCINFO_CLASS
+ #endif
+@@ -61,7 +65,7 @@ PROCINFO_CLASS struct cpu_features _dl_powerpc_cpu_features
+ #if !defined PROCINFO_DECL && defined SHARED
+   ._dl_powerpc_cap_flags
+ #else
+-PROCINFO_CLASS const char _dl_powerpc_cap_flags[64][15]
++PROCINFO_CLASS const char _dl_powerpc_cap_flags[_DL_HWCAP_COUNT][15]
+ #endif
+ #ifndef PROCINFO_DECL
+ = {
+diff --git a/sysdeps/powerpc/dl-procinfo.h b/sysdeps/powerpc/dl-procinfo.h
+index 68f4241095..f8cb343877 100644
+--- a/sysdeps/powerpc/dl-procinfo.h
++++ b/sysdeps/powerpc/dl-procinfo.h
+@@ -22,16 +22,17 @@
+ #include <ldsodefs.h>
+ #include <sysdep.h>	/* This defines the PPC_FEATURE[2]_* macros.  */
+ 
+-/* The total number of available bits (including those prior to
+-   _DL_HWCAP_FIRST).  Some of these bits might not be used.  */
+-#define _DL_HWCAP_COUNT		64
++/* Feature masks are all 32-bits in size.  */
++#define _DL_HWCAP_SIZE		32
+ 
+-/* Features started at bit 31 and decremented as new features were added.  */
+-#define _DL_HWCAP_LAST		31
++/* AT_HWCAP2 feature strings follow the AT_HWCAP feature strings.  */
++#define _DL_HWCAP2_OFFSET	_DL_HWCAP_SIZE
+ 
+-/* AT_HWCAP2 features started at bit 31 and decremented as new features were
+-   added.  HWCAP2 feature bits start at bit 0.  */
+-#define _DL_HWCAP2_LAST		31
++/* AT_HWCAP3 feature strings follow the AT_HWCAP2 feature strings.  */
++#define _DL_HWCAP3_OFFSET	(_DL_HWCAP2_OFFSET + _DL_HWCAP_SIZE)
++
++/* AT_HWCAP4 feature strings follow the AT_HWCAP3 feature strings.  */
++#define _DL_HWCAP4_OFFSET	(_DL_HWCAP3_OFFSET + _DL_HWCAP_SIZE)
+ 
+ /* These bits influence library search.  */
+ #define HWCAP_IMPORTANT		(PPC_FEATURE_HAS_ALTIVEC \
+@@ -187,21 +188,42 @@ _dl_procinfo (unsigned int type, unsigned long int word)
+     case AT_HWCAP:
+       _dl_printf ("AT_HWCAP:            ");
+ 
+-      for (int i = 0; i <= _DL_HWCAP_LAST; ++i)
++      for (int i = 0; i < _DL_HWCAP_SIZE; ++i)
+        if (word & (1 << i))
+          _dl_printf (" %s", _dl_hwcap_string (i));
+       break;
+     case AT_HWCAP2:
+       {
+-       unsigned int offset = _DL_HWCAP_LAST + 1;
+ 
+        _dl_printf ("AT_HWCAP2:           ");
+ 
+-        /* We have to go through them all because the kernel added the
+-          AT_HWCAP2 features starting with the high bits.  */
+-       for (int i = 0; i <= _DL_HWCAP2_LAST; ++i)
+-         if (word & (1 << i))
+-           _dl_printf (" %s", _dl_hwcap_string (offset + i));
++       /* We have to go through them all because the kernel added the
++	  AT_HWCAP2 features starting with the high bits.  */
++       for (int i = 0; i < _DL_HWCAP_SIZE; ++i)
++	 if (word & (1 << i))
++	   _dl_printf (" %s", _dl_hwcap_string (_DL_HWCAP2_OFFSET + i));
++       break;
++      }
++    case AT_HWCAP3:
++      {
++       _dl_printf ("AT_HWCAP3:           ");
++
++       /* We have to go through them all because the kernel added the
++	  AT_HWCAP3 features starting with the high bits.  */
++       for (int i = 0; i < _DL_HWCAP_SIZE; ++i)
++	 if (word & (1 << i))
++	   _dl_printf (" %s", _dl_hwcap_string (_DL_HWCAP3_OFFSET + i));
++       break;
++      }
++    case AT_HWCAP4:
++      {
++       _dl_printf ("AT_HWCAP4:           ");
++
++       /* We have to go through them all because the kernel added the
++	  AT_HWCAP4 features starting with the high bits.  */
++       for (int i = 0; i <= _DL_HWCAP_SIZE; ++i)
++	 if (word & (1 << i))
++	   _dl_printf (" %s", _dl_hwcap_string (_DL_HWCAP4_OFFSET + i));
+        break;
+       }
+     case AT_L1I_CACHEGEOMETRY:
+diff --git a/sysdeps/powerpc/hwcapinfo.c b/sysdeps/powerpc/hwcapinfo.c
+index 76344f285a..f6fede15a7 100644
+--- a/sysdeps/powerpc/hwcapinfo.c
++++ b/sysdeps/powerpc/hwcapinfo.c
+@@ -31,7 +31,7 @@ void
+ __tcb_parse_hwcap_and_convert_at_platform (void)
+ {
+ 
+-  uint64_t h1, h2;
++  uint64_t h1, h2, h3, h4;
+ 
+   /* Read AT_PLATFORM string from auxv and convert it to a number.  */
+   __tcb.at_platform = _dl_string_platform (GLRO (dl_platform));
+@@ -39,6 +39,8 @@ __tcb_parse_hwcap_and_convert_at_platform (void)
+   /* Read HWCAP and HWCAP2 from auxv.  */
+   h1 = GLRO (dl_hwcap);
+   h2 = GLRO (dl_hwcap2);
++  h3 = GLRO (dl_hwcap3);
++  h4 = GLRO (dl_hwcap4);
+ 
+   /* hwcap contains only the latest supported ISA, the code checks which is
+      and fills the previous supported ones.  */
+@@ -64,13 +66,16 @@ __tcb_parse_hwcap_and_convert_at_platform (void)
+   else if (h1 & PPC_FEATURE_POWER5)
+     h1 |= PPC_FEATURE_POWER4;
+ 
+-  uint64_t array_hwcaps[] = { h1, h2 };
++  uint64_t array_hwcaps[] = { h1, h2, h3, h4 };
+   init_cpu_features (&GLRO(dl_powerpc_cpu_features), array_hwcaps);
+ 
+   /* Consolidate both HWCAP and HWCAP2 into a single doubleword so that
+      we can read both in a single load later.  */
+   __tcb.hwcap = (h1 << 32) | (h2 & 0xffffffff);
+-  __tcb.hwcap_extn = 0x0;
++
++  /* Consolidate both HWCAP3 and HWCAP4 into a single doubleword so that
++     we can read both in a single load later.  */
++  __tcb.hwcap_extn = (h3 << 32) | (h4 & 0xffffffff);
+ 
+ }
+ #if IS_IN (rtld)
+diff --git a/sysdeps/unix/sysv/linux/dl-parse_auxv.h b/sysdeps/unix/sysv/linux/dl-parse_auxv.h
+index e3d758b163..ea2a58ecb1 100644
+--- a/sysdeps/unix/sysv/linux/dl-parse_auxv.h
++++ b/sysdeps/unix/sysv/linux/dl-parse_auxv.h
+@@ -47,6 +47,8 @@ void _dl_parse_auxv (ElfW(auxv_t) *av, dl_parse_auxv_t auxv_values)
+   GLRO(dl_platform) = (void *) auxv_values[AT_PLATFORM];
+   GLRO(dl_hwcap) = auxv_values[AT_HWCAP];
+   GLRO(dl_hwcap2) = auxv_values[AT_HWCAP2];
++  GLRO(dl_hwcap3) = auxv_values[AT_HWCAP3];
++  GLRO(dl_hwcap4) = auxv_values[AT_HWCAP4];
+   GLRO(dl_clktck) = auxv_values[AT_CLKTCK];
+   GLRO(dl_fpu_control) = auxv_values[AT_FPUCW];
+   _dl_random = (void *) auxv_values[AT_RANDOM];
+diff --git a/sysdeps/unix/sysv/linux/dl-sysdep.c b/sysdeps/unix/sysv/linux/dl-sysdep.c
+index ad3692d738..e1b14e9eb3 100644
+--- a/sysdeps/unix/sysv/linux/dl-sysdep.c
++++ b/sysdeps/unix/sysv/linux/dl-sysdep.c
+@@ -197,6 +197,8 @@ _dl_show_auxv (void)
+ 	  [AT_SYSINFO_EHDR - 2] =	{ "SYSINFO_EHDR:      0x", hex },
+ 	  [AT_RANDOM - 2] =		{ "RANDOM:            0x", hex },
+ 	  [AT_HWCAP2 - 2] =		{ "HWCAP2:            0x", hex },
++	  [AT_HWCAP3 - 2] =		{ "HWCAP3:            0x", hex },
++	  [AT_HWCAP4 - 2] =		{ "HWCAP4:            0x", hex },
+ 	  [AT_MINSIGSTKSZ - 2] =	{ "MINSIGSTKSZ:       ", dec },
+ 	  [AT_L1I_CACHESIZE - 2] =	{ "L1I_CACHESIZE:     ", dec },
+ 	  [AT_L1I_CACHEGEOMETRY - 2] =	{ "L1I_CACHEGEOMETRY: 0x", hex },
+diff --git a/sysdeps/unix/sysv/linux/powerpc/cpu-features.c b/sysdeps/unix/sysv/linux/powerpc/cpu-features.c
+index 8e8a5ec2ea..a947d62db6 100644
+--- a/sysdeps/unix/sysv/linux/powerpc/cpu-features.c
++++ b/sysdeps/unix/sysv/linux/powerpc/cpu-features.c
+@@ -94,6 +94,8 @@ init_cpu_features (struct cpu_features *cpu_features, uint64_t hwcaps[])
+      which are set by __tcb_parse_hwcap_and_convert_at_platform.  */
+   cpu_features->hwcap = hwcaps[0];
+   cpu_features->hwcap2 = hwcaps[1];
++  cpu_features->hwcap3 = hwcaps[2];
++  cpu_features->hwcap4 = hwcaps[3];
+   /* Default is to use aligned memory access on optimized function unless
+      tunables is enable, since for this case user can explicit disable
+      unaligned optimizations.  */
+diff --git a/sysdeps/unix/sysv/linux/powerpc/cpu-features.h b/sysdeps/unix/sysv/linux/powerpc/cpu-features.h
+index 1294f0b601..e9eb6a13c8 100644
+--- a/sysdeps/unix/sysv/linux/powerpc/cpu-features.h
++++ b/sysdeps/unix/sysv/linux/powerpc/cpu-features.h
+@@ -26,6 +26,8 @@ struct cpu_features
+   bool use_cached_memopt;
+   unsigned long int hwcap;
+   unsigned long int hwcap2;
++  unsigned long int hwcap3;
++  unsigned long int hwcap4;
+ };
+ 
+ static const char hwcap_names[] = {
+diff --git a/sysdeps/unix/sysv/linux/powerpc/libc-start.c b/sysdeps/unix/sysv/linux/powerpc/libc-start.c
+index a4705daf1c..6a00cd88cd 100644
+--- a/sysdeps/unix/sysv/linux/powerpc/libc-start.c
++++ b/sysdeps/unix/sysv/linux/powerpc/libc-start.c
+@@ -87,6 +87,12 @@ __libc_start_main_impl (int argc, char **argv,
+       case AT_HWCAP2:
+ 	_dl_hwcap2 = (unsigned long int) av->a_un.a_val;
+ 	break;
++      case AT_HWCAP3:
++	_dl_hwcap3 = (unsigned long int) av->a_un.a_val;
++	break;
++      case AT_HWCAP4:
++	_dl_hwcap4 = (unsigned long int) av->a_un.a_val;
++	break;
+       case AT_PLATFORM:
+ 	_dl_platform = (void *) av->a_un.a_val;
+ 	break;
+
+commit aad45c8ac30aa1072e54903ce6aead22702f244a
+Author: Amrita H S <amritahs@linux.ibm.com>
+Date:   Tue Mar 19 19:08:47 2024 -0500
+
+    powerpc: Placeholder and infrastructure/build support to add Power11 related changes.
+    
+    The following three changes have been added to provide initial Power11 support.
+        1. Add the directories to hold Power11 files.
+        2. Add support to select Power11 libraries based on AT_PLATFORM.
+        3. Let submachine=power11 be set automatically.
+    
+    Reviewed-by: Florian Weimer <fweimer@redhat.com>
+    Reviewed-by: Peter Bergner <bergner@linux.ibm.com>
+    (cherry picked from commit 1ea051145612f199d8716ecdf78b084b00b5a727)
+
+diff --git a/sysdeps/powerpc/dl-procinfo.h b/sysdeps/powerpc/dl-procinfo.h
+index f8cb343877..b36697ba44 100644
+--- a/sysdeps/powerpc/dl-procinfo.h
++++ b/sysdeps/powerpc/dl-procinfo.h
+@@ -38,7 +38,7 @@
+ #define HWCAP_IMPORTANT		(PPC_FEATURE_HAS_ALTIVEC \
+ 				+ PPC_FEATURE_HAS_DFP)
+ 
+-#define _DL_PLATFORMS_COUNT	16
++#define _DL_PLATFORMS_COUNT	17
+ 
+ #define _DL_FIRST_PLATFORM	32
+ /* Mask to filter out platforms.  */
+@@ -62,6 +62,7 @@
+ #define PPC_PLATFORM_POWER8		13
+ #define PPC_PLATFORM_POWER9		14
+ #define PPC_PLATFORM_POWER10		15
++#define PPC_PLATFORM_POWER11		16
+ 
+ static inline const char *
+ __attribute__ ((unused))
+@@ -89,6 +90,11 @@ _dl_string_platform (const char *str)
+ 	      ret = _DL_FIRST_PLATFORM + PPC_PLATFORM_POWER10;
+ 	      str++;
+ 	    }
++	  else if (str[1] == '1')
++	    {
++	      ret = _DL_FIRST_PLATFORM + PPC_PLATFORM_POWER11;
++	      str++;
++	    }
+ 	  else
+ 	    return -1;
+ 	  break;
+diff --git a/sysdeps/powerpc/powerpc32/power11/Implies b/sysdeps/powerpc/powerpc32/power11/Implies
+new file mode 100644
+index 0000000000..051cbe0f79
+--- /dev/null
++++ b/sysdeps/powerpc/powerpc32/power11/Implies
+@@ -0,0 +1,2 @@
++powerpc/powerpc32/power10/fpu
++powerpc/powerpc32/power10
+diff --git a/sysdeps/powerpc/powerpc32/power11/fpu/multiarch/Implies b/sysdeps/powerpc/powerpc32/power11/fpu/multiarch/Implies
+new file mode 100644
+index 0000000000..58edb2861d
+--- /dev/null
++++ b/sysdeps/powerpc/powerpc32/power11/fpu/multiarch/Implies
+@@ -0,0 +1 @@
++powerpc/powerpc32/power10/fpu/multiarch
+diff --git a/sysdeps/powerpc/powerpc32/power11/multiarch/Implies b/sysdeps/powerpc/powerpc32/power11/multiarch/Implies
+new file mode 100644
+index 0000000000..c70f0428ba
+--- /dev/null
++++ b/sysdeps/powerpc/powerpc32/power11/multiarch/Implies
+@@ -0,0 +1 @@
++powerpc/powerpc32/power10/multiarch
+diff --git a/sysdeps/powerpc/powerpc64/be/power11/Implies b/sysdeps/powerpc/powerpc64/be/power11/Implies
+new file mode 100644
+index 0000000000..de481d1c13
+--- /dev/null
++++ b/sysdeps/powerpc/powerpc64/be/power11/Implies
+@@ -0,0 +1,2 @@
++powerpc/powerpc64/be/power10/fpu
++powerpc/powerpc64/be/power10
+diff --git a/sysdeps/powerpc/powerpc64/be/power11/fpu/Implies b/sysdeps/powerpc/powerpc64/be/power11/fpu/Implies
+new file mode 100644
+index 0000000000..dff0e13064
+--- /dev/null
++++ b/sysdeps/powerpc/powerpc64/be/power11/fpu/Implies
+@@ -0,0 +1 @@
++powerpc/powerpc64/be/power10/fpu
+diff --git a/sysdeps/powerpc/powerpc64/be/power11/fpu/multiarch/Implies b/sysdeps/powerpc/powerpc64/be/power11/fpu/multiarch/Implies
+new file mode 100644
+index 0000000000..c3f259e009
+--- /dev/null
++++ b/sysdeps/powerpc/powerpc64/be/power11/fpu/multiarch/Implies
+@@ -0,0 +1 @@
++powerpc/powerpc64/be/power10/fpu/multiarch
+diff --git a/sysdeps/powerpc/powerpc64/be/power11/multiarch/Implies b/sysdeps/powerpc/powerpc64/be/power11/multiarch/Implies
+new file mode 100644
+index 0000000000..9491a394c9
+--- /dev/null
++++ b/sysdeps/powerpc/powerpc64/be/power11/multiarch/Implies
+@@ -0,0 +1 @@
++powerpc/powerpc64/be/power10/multiarch
+diff --git a/sysdeps/powerpc/powerpc64/le/power11/Implies b/sysdeps/powerpc/powerpc64/le/power11/Implies
+new file mode 100644
+index 0000000000..e18182dcc1
+--- /dev/null
++++ b/sysdeps/powerpc/powerpc64/le/power11/Implies
+@@ -0,0 +1,2 @@
++powerpc/powerpc64/le/power10/fpu
++powerpc/powerpc64/le/power10
+diff --git a/sysdeps/powerpc/powerpc64/le/power11/fpu/Implies b/sysdeps/powerpc/powerpc64/le/power11/fpu/Implies
+new file mode 100644
+index 0000000000..e41bd55684
+--- /dev/null
++++ b/sysdeps/powerpc/powerpc64/le/power11/fpu/Implies
+@@ -0,0 +1 @@
++powerpc/powerpc64/le/power10/fpu
+diff --git a/sysdeps/powerpc/powerpc64/le/power11/fpu/multiarch/Implies b/sysdeps/powerpc/powerpc64/le/power11/fpu/multiarch/Implies
+new file mode 100644
+index 0000000000..c838d50931
+--- /dev/null
++++ b/sysdeps/powerpc/powerpc64/le/power11/fpu/multiarch/Implies
+@@ -0,0 +1 @@
++powerpc/powerpc64/le/power10/fpu/multiarch
+diff --git a/sysdeps/powerpc/powerpc64/le/power11/multiarch/Implies b/sysdeps/powerpc/powerpc64/le/power11/multiarch/Implies
+new file mode 100644
+index 0000000000..687248c3c2
+--- /dev/null
++++ b/sysdeps/powerpc/powerpc64/le/power11/multiarch/Implies
+@@ -0,0 +1 @@
++powerpc/powerpc64/le/power10/multiarch
+diff --git a/sysdeps/powerpc/powerpc64/le/tst-glibc-hwcaps.c b/sysdeps/powerpc/powerpc64/le/tst-glibc-hwcaps.c
+index 77465d9133..65d3e69303 100644
+--- a/sysdeps/powerpc/powerpc64/le/tst-glibc-hwcaps.c
++++ b/sysdeps/powerpc/powerpc64/le/tst-glibc-hwcaps.c
+@@ -36,9 +36,11 @@ compute_level (void)
+     return 9;
+   if (strcmp (platform, "power10") == 0)
+     return 10;
++  if (strcmp (platform, "power11") == 0)
++    return 11;
+   printf ("warning: unrecognized AT_PLATFORM value: %s\n", platform);
+-  /* Assume that the new platform supports POWER10.  */
+-  return 10;
++  /* Assume that the new platform supports POWER11.  */
++  return 11;
+ }
+ 
+ static int
+diff --git a/sysdeps/powerpc/preconfigure b/sysdeps/powerpc/preconfigure
+index 4de94089a3..9e5a07ab6d 100644
+--- a/sysdeps/powerpc/preconfigure
++++ b/sysdeps/powerpc/preconfigure
+@@ -58,7 +58,7 @@ fi
+ 
+     ;;
+ 
+-  a2|970|power[4-9]|power5x|power6+|power10)
++  a2|970|power[4-9]|power5x|power6+|power10|power11)
+     submachine=${archcpu}
+     if test ${libc_cv_cc_submachine+y}
+ then :
+diff --git a/sysdeps/powerpc/preconfigure.ac b/sysdeps/powerpc/preconfigure.ac
+index 6c63bd8257..14b6dafd4a 100644
+--- a/sysdeps/powerpc/preconfigure.ac
++++ b/sysdeps/powerpc/preconfigure.ac
+@@ -46,7 +46,7 @@ case "${machine}:${submachine}" in
+     AC_CACHE_VAL(libc_cv_cc_submachine,libc_cv_cc_submachine="")
+     ;;
+ 
+-  a2|970|power[[4-9]]|power5x|power6+|power10)
++  a2|970|power[[4-9]]|power5x|power6+|power10|power11)
+     submachine=${archcpu}
+     AC_CACHE_VAL(libc_cv_cc_submachine,libc_cv_cc_submachine="")
+     ;;
+
+commit 983f34a1252de3ca6f2305c211d86530ea42010e
+Author: caiyinyu <caiyinyu@loongson.cn>
+Date:   Mon Mar 11 16:07:48 2024 +0800
+
+    LoongArch: Correct {__ieee754, _}_scalb -> {__ieee754, _}_scalbf
+
+diff --git a/sysdeps/loongarch/fpu/e_scalbf.c b/sysdeps/loongarch/fpu/e_scalbf.c
+index 9f05485236..7c0395fbb5 100644
+--- a/sysdeps/loongarch/fpu/e_scalbf.c
++++ b/sysdeps/loongarch/fpu/e_scalbf.c
+@@ -57,4 +57,4 @@ __ieee754_scalbf (float x, float fn)
+ 
+   return x;
+ }
+-libm_alias_finite (__ieee754_scalb, __scalb)
++libm_alias_finite (__ieee754_scalbf, __scalbf)
+
+commit 7fc8242bf87828c935ac5df5cafb9dc7ab635fd9
+Author: H.J. Lu <hjl.tools@gmail.com>
+Date:   Fri Feb 16 07:17:10 2024 -0800
+
+    x86-64: Save APX registers in ld.so trampoline
+    
+    Add APX registers to STATE_SAVE_MASK so that APX registers are saved in
+    ld.so trampoline.  This fixes BZ #31371.
+    
+    Also update STATE_SAVE_OFFSET and STATE_SAVE_MASK for i386 which will
+    be used by i386 _dl_tlsdesc_dynamic.
+    Reviewed-by: Noah Goldstein <goldstein.w.n@gmail.com>
+    
+    (cherry picked from commit dfb05f8e704edac70db38c4c8ee700769d91a413)
+
+diff --git a/sysdeps/x86/sysdep.h b/sysdeps/x86/sysdep.h
+index 85d0a8c943..837fd28734 100644
+--- a/sysdeps/x86/sysdep.h
++++ b/sysdeps/x86/sysdep.h
+@@ -21,14 +21,54 @@
+ 
+ #include <sysdeps/generic/sysdep.h>
+ 
++/* The extended state feature IDs in the state component bitmap.  */
++#define X86_XSTATE_X87_ID	0
++#define X86_XSTATE_SSE_ID	1
++#define X86_XSTATE_AVX_ID	2
++#define X86_XSTATE_BNDREGS_ID	3
++#define X86_XSTATE_BNDCFG_ID	4
++#define X86_XSTATE_K_ID		5
++#define X86_XSTATE_ZMM_H_ID	6
++#define X86_XSTATE_ZMM_ID	7
++#define X86_XSTATE_PKRU_ID	9
++#define X86_XSTATE_TILECFG_ID	17
++#define X86_XSTATE_TILEDATA_ID	18
++#define X86_XSTATE_APX_F_ID	19
++
++#ifdef __x86_64__
+ /* Offset for fxsave/xsave area used by _dl_runtime_resolve.  Also need
+    space to preserve RCX, RDX, RSI, RDI, R8, R9 and RAX.  It must be
+-   aligned to 16 bytes for fxsave and 64 bytes for xsave.  */
+-#define STATE_SAVE_OFFSET (8 * 7 + 8)
+-
+-/* Save SSE, AVX, AVX512, mask and bound registers.  */
+-#define STATE_SAVE_MASK \
+-  ((1 << 1) | (1 << 2) | (1 << 3) | (1 << 5) | (1 << 6) | (1 << 7))
++   aligned to 16 bytes for fxsave and 64 bytes for xsave.
++
++   NB: Is is non-zero because of the 128-byte red-zone.  Some registers
++   are saved on stack without adjusting stack pointer first.  When we
++   update stack pointer to allocate more space, we need to take the
++   red-zone into account.  */
++# define STATE_SAVE_OFFSET (8 * 7 + 8)
++
++/* Save SSE, AVX, AVX512, mask, bound and APX registers.  Bound and APX
++   registers are mutually exclusive.  */
++# define STATE_SAVE_MASK		\
++  ((1 << X86_XSTATE_SSE_ID)		\
++   | (1 << X86_XSTATE_AVX_ID)		\
++   | (1 << X86_XSTATE_BNDREGS_ID)	\
++   | (1 << X86_XSTATE_K_ID)		\
++   | (1 << X86_XSTATE_ZMM_H_ID) 	\
++   | (1 << X86_XSTATE_ZMM_ID)		\
++   | (1 << X86_XSTATE_APX_F_ID))
++#else
++/* Offset for fxsave/xsave area used by _dl_tlsdesc_dynamic.  Since i386
++   doesn't have red-zone, use 0 here.  */
++# define STATE_SAVE_OFFSET 0
++
++/* Save SSE, AVX, AXV512, mask and bound registers.   */
++# define STATE_SAVE_MASK		\
++  ((1 << X86_XSTATE_SSE_ID)		\
++   | (1 << X86_XSTATE_AVX_ID)		\
++   | (1 << X86_XSTATE_BNDREGS_ID)	\
++   | (1 << X86_XSTATE_K_ID)		\
++   | (1 << X86_XSTATE_ZMM_H_ID))
++#endif
+ 
+ /* Constants for bits in __x86_string_control:  */
+ 
+
+commit a364304718725a31ab141936322855c76c73e35e
+Author: H.J. Lu <hjl.tools@gmail.com>
+Date:   Mon Feb 26 06:37:03 2024 -0800
+
+    x86: Update _dl_tlsdesc_dynamic to preserve caller-saved registers
+    
+    Compiler generates the following instruction sequence for GNU2 dynamic
+    TLS access:
+    
+            leaq    tls_var@TLSDESC(%rip), %rax
+            call    *tls_var@TLSCALL(%rax)
+    
+    or
+    
+            leal    tls_var@TLSDESC(%ebx), %eax
+            call    *tls_var@TLSCALL(%eax)
+    
+    CALL instruction is transparent to compiler which assumes all registers,
+    except for EFLAGS and RAX/EAX, are unchanged after CALL.  When
+    _dl_tlsdesc_dynamic is called, it calls __tls_get_addr on the slow
+    path.  __tls_get_addr is a normal function which doesn't preserve any
+    caller-saved registers.  _dl_tlsdesc_dynamic saved and restored integer
+    caller-saved registers, but didn't preserve any other caller-saved
+    registers.  Add _dl_tlsdesc_dynamic IFUNC functions for FNSAVE, FXSAVE,
+    XSAVE and XSAVEC to save and restore all caller-saved registers.  This
+    fixes BZ #31372.
+    
+    Add GLRO(dl_x86_64_runtime_resolve) with GLRO(dl_x86_tlsdesc_dynamic)
+    to optimize elf_machine_runtime_setup.
+    Reviewed-by: Noah Goldstein <goldstein.w.n@gmail.com>
+    
+    (cherry picked from commit 0aac205a814a8511e98d02b91a8dc908f1c53cde)
+
+diff --git a/elf/Makefile b/elf/Makefile
+index 5d78b659ce..c5c37a9147 100644
+--- a/elf/Makefile
++++ b/elf/Makefile
+@@ -424,6 +424,7 @@ tests += \
+   tst-glibc-hwcaps-prepend \
+   tst-global1 \
+   tst-global2 \
++  tst-gnu2-tls2 \
+   tst-initfinilazyfail \
+   tst-initorder \
+   tst-initorder2 \
+@@ -846,6 +847,9 @@ modules-names += \
+   tst-filterobj-flt \
+   tst-finilazyfailmod \
+   tst-globalmod2 \
++  tst-gnu2-tls2mod0 \
++  tst-gnu2-tls2mod1 \
++  tst-gnu2-tls2mod2 \
+   tst-initlazyfailmod \
+   tst-initorder2a \
+   tst-initorder2b \
+@@ -3044,8 +3048,22 @@ $(objpfx)tst-tlsgap.out: \
+   $(objpfx)tst-tlsgap-mod0.so \
+   $(objpfx)tst-tlsgap-mod1.so \
+   $(objpfx)tst-tlsgap-mod2.so
++
++$(objpfx)tst-gnu2-tls2: $(shared-thread-library)
++$(objpfx)tst-gnu2-tls2.out: \
++  $(objpfx)tst-gnu2-tls2mod0.so \
++  $(objpfx)tst-gnu2-tls2mod1.so \
++  $(objpfx)tst-gnu2-tls2mod2.so
++
+ ifeq (yes,$(have-mtls-dialect-gnu2))
++# This test fails if dl_tlsdesc_dynamic doesn't preserve all caller-saved
++# registers.  See https://sourceware.org/bugzilla/show_bug.cgi?id=31372
++test-xfail-tst-gnu2-tls2 = yes
++
+ CFLAGS-tst-tlsgap-mod0.c += -mtls-dialect=gnu2
+ CFLAGS-tst-tlsgap-mod1.c += -mtls-dialect=gnu2
+ CFLAGS-tst-tlsgap-mod2.c += -mtls-dialect=gnu2
++CFLAGS-tst-gnu2-tls2mod0.c += -mtls-dialect=gnu2
++CFLAGS-tst-gnu2-tls2mod1.c += -mtls-dialect=gnu2
++CFLAGS-tst-gnu2-tls2mod2.c += -mtls-dialect=gnu2
+ endif
+diff --git a/elf/tst-gnu2-tls2.c b/elf/tst-gnu2-tls2.c
+new file mode 100644
+index 0000000000..7ac04d7f33
+--- /dev/null
++++ b/elf/tst-gnu2-tls2.c
+@@ -0,0 +1,122 @@
++/* Test TLSDESC relocation.
++   Copyright (C) 2024 Free Software Foundation, Inc.
++   This file is part of the GNU C Library.
++
++   The GNU C Library is free software; you can redistribute it and/or
++   modify it under the terms of the GNU Lesser General Public
++   License as published by the Free Software Foundation; either
++   version 2.1 of the License, or (at your option) any later version.
++
++   The GNU C Library is distributed in the hope that it will be useful,
++   but WITHOUT ANY WARRANTY; without even the implied warranty of
++   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
++   Lesser General Public License for more details.
++
++   You should have received a copy of the GNU Lesser General Public
++   License along with the GNU C Library; if not, see
++   <http://www.gnu.org/licenses/>.  */
++
++#include <stdio.h>
++#include <stdlib.h>
++#include <string.h>
++#include <dlfcn.h>
++#include <pthread.h>
++#include <support/xdlfcn.h>
++#include <support/xthread.h>
++#include <support/check.h>
++#include <support/test-driver.h>
++#include "tst-gnu2-tls2.h"
++
++#ifndef IS_SUPPORTED
++# define IS_SUPPORTED() true
++#endif
++
++/* An architecture can define it to clobber caller-saved registers in
++   malloc below to verify that the implicit TLSDESC call won't change
++   caller-saved registers.  */
++#ifndef PREPARE_MALLOC
++# define PREPARE_MALLOC()
++#endif
++
++extern void * __libc_malloc (size_t);
++
++size_t malloc_counter = 0;
++
++void *
++malloc (size_t n)
++{
++  PREPARE_MALLOC ();
++  malloc_counter++;
++  return __libc_malloc (n);
++}
++
++static void *mod[3];
++#ifndef MOD
++# define MOD(i) "tst-gnu2-tls2mod" #i ".so"
++#endif
++static const char *modname[3] = { MOD(0), MOD(1), MOD(2) };
++#undef MOD
++
++static void
++open_mod (int i)
++{
++  mod[i] = xdlopen (modname[i], RTLD_LAZY);
++  printf ("open %s\n", modname[i]);
++}
++
++static void
++close_mod (int i)
++{
++  xdlclose (mod[i]);
++  mod[i] = NULL;
++  printf ("close %s\n", modname[i]);
++}
++
++static void
++access_mod (int i, const char *sym)
++{
++  struct tls var = { -1, -1, -1, -1 };
++  struct tls *(*f) (struct tls *) = xdlsym (mod[i], sym);
++  /* Check that our malloc is called.  */
++  malloc_counter = 0;
++  struct tls *p = f (&var);
++  TEST_VERIFY (malloc_counter != 0);
++  printf ("access %s: %s() = %p\n", modname[i], sym, p);
++  TEST_VERIFY_EXIT (memcmp (p, &var, sizeof (var)) == 0);
++  ++(p->a);
++}
++
++static void *
++start (void *arg)
++{
++  /* The DTV generation is at the last dlopen of mod0 and the
++     entry for mod1 is NULL.  */
++
++  open_mod (1); /* Reuse modid of mod1. Uses dynamic TLS.  */
++
++  /* Force the slow path in GNU2 TLS descriptor call.  */
++  access_mod (1, "apply_tls");
++
++  return arg;
++}
++
++static int
++do_test (void)
++{
++  if (!IS_SUPPORTED ())
++    return EXIT_UNSUPPORTED;
++
++  open_mod (0);
++  open_mod (1);
++  open_mod (2);
++  close_mod (0);
++  close_mod (1); /* Create modid gap at mod1.  */
++  open_mod (0); /* Reuse modid of mod0, bump generation count.  */
++
++  /* Create a thread where DTV of mod1 is NULL.  */
++  pthread_t t = xpthread_create (NULL, start, NULL);
++  xpthread_join (t);
++  return 0;
++}
++
++#include <support/test-driver.c>
+diff --git a/elf/tst-gnu2-tls2.h b/elf/tst-gnu2-tls2.h
+new file mode 100644
+index 0000000000..77964a57a3
+--- /dev/null
++++ b/elf/tst-gnu2-tls2.h
+@@ -0,0 +1,36 @@
++/* Test TLSDESC relocation.
++   Copyright (C) 2024 Free Software Foundation, Inc.
++   This file is part of the GNU C Library.
++
++   The GNU C Library is free software; you can redistribute it and/or
++   modify it under the terms of the GNU Lesser General Public
++   License as published by the Free Software Foundation; either
++   version 2.1 of the License, or (at your option) any later version.
++
++   The GNU C Library is distributed in the hope that it will be useful,
++   but WITHOUT ANY WARRANTY; without even the implied warranty of
++   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
++   Lesser General Public License for more details.
++
++   You should have received a copy of the GNU Lesser General Public
++   License along with the GNU C Library; if not, see
++   <https://www.gnu.org/licenses/>.  */
++
++#include <stdint.h>
++
++struct tls
++{
++  int64_t a, b, c, d;
++};
++
++extern struct tls *apply_tls (struct tls *);
++
++/* An architecture can define them to verify that clobber caller-saved
++   registers aren't changed by the implicit TLSDESC call.  */
++#ifndef BEFORE_TLSDESC_CALL
++# define BEFORE_TLSDESC_CALL()
++#endif
++
++#ifndef AFTER_TLSDESC_CALL
++# define AFTER_TLSDESC_CALL()
++#endif
+diff --git a/elf/tst-gnu2-tls2mod0.c b/elf/tst-gnu2-tls2mod0.c
+new file mode 100644
+index 0000000000..45556a0e17
+--- /dev/null
++++ b/elf/tst-gnu2-tls2mod0.c
+@@ -0,0 +1,31 @@
++/* DSO used by tst-gnu2-tls2.
++   Copyright (C) 2024 Free Software Foundation, Inc.
++   This file is part of the GNU C Library.
++
++   The GNU C Library is free software; you can redistribute it and/or
++   modify it under the terms of the GNU Lesser General Public
++   License as published by the Free Software Foundation; either
++   version 2.1 of the License, or (at your option) any later version.
++
++   The GNU C Library is distributed in the hope that it will be useful,
++   but WITHOUT ANY WARRANTY; without even the implied warranty of
++   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
++   Lesser General Public License for more details.
++
++   You should have received a copy of the GNU Lesser General Public
++   License along with the GNU C Library; if not, see
++   <https://www.gnu.org/licenses/>.  */
++
++#include "tst-gnu2-tls2.h"
++
++__thread struct tls tls_var0 __attribute__ ((visibility ("hidden")));
++
++struct tls *
++apply_tls (struct tls *p)
++{
++  BEFORE_TLSDESC_CALL ();
++  tls_var0 = *p;
++  struct tls *ret = &tls_var0;
++  AFTER_TLSDESC_CALL ();
++  return ret;
++}
+diff --git a/elf/tst-gnu2-tls2mod1.c b/elf/tst-gnu2-tls2mod1.c
+new file mode 100644
+index 0000000000..e10b9dbc0a
+--- /dev/null
++++ b/elf/tst-gnu2-tls2mod1.c
+@@ -0,0 +1,31 @@
++/* DSO used by tst-gnu2-tls2.
++   Copyright (C) 2024 Free Software Foundation, Inc.
++   This file is part of the GNU C Library.
++
++   The GNU C Library is free software; you can redistribute it and/or
++   modify it under the terms of the GNU Lesser General Public
++   License as published by the Free Software Foundation; either
++   version 2.1 of the License, or (at your option) any later version.
++
++   The GNU C Library is distributed in the hope that it will be useful,
++   but WITHOUT ANY WARRANTY; without even the implied warranty of
++   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
++   Lesser General Public License for more details.
++
++   You should have received a copy of the GNU Lesser General Public
++   License along with the GNU C Library; if not, see
++   <https://www.gnu.org/licenses/>.  */
++
++#include "tst-gnu2-tls2.h"
++
++__thread struct tls tls_var1[100] __attribute__ ((visibility ("hidden")));
++
++struct tls *
++apply_tls (struct tls *p)
++{
++  BEFORE_TLSDESC_CALL ();
++  tls_var1[1] = *p;
++  struct tls *ret = &tls_var1[1];
++  AFTER_TLSDESC_CALL ();
++  return ret;
++}
+diff --git a/elf/tst-gnu2-tls2mod2.c b/elf/tst-gnu2-tls2mod2.c
+new file mode 100644
+index 0000000000..141af51e55
+--- /dev/null
++++ b/elf/tst-gnu2-tls2mod2.c
+@@ -0,0 +1,31 @@
++/* DSO used by tst-gnu2-tls2.
++   Copyright (C) 2024 Free Software Foundation, Inc.
++   This file is part of the GNU C Library.
++
++   The GNU C Library is free software; you can redistribute it and/or
++   modify it under the terms of the GNU Lesser General Public
++   License as published by the Free Software Foundation; either
++   version 2.1 of the License, or (at your option) any later version.
++
++   The GNU C Library is distributed in the hope that it will be useful,
++   but WITHOUT ANY WARRANTY; without even the implied warranty of
++   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
++   Lesser General Public License for more details.
++
++   You should have received a copy of the GNU Lesser General Public
++   License along with the GNU C Library; if not, see
++   <https://www.gnu.org/licenses/>.  */
++
++#include "tst-gnu2-tls2.h"
++
++__thread struct tls tls_var2 __attribute__ ((visibility ("hidden")));
++
++struct tls *
++apply_tls (struct tls *p)
++{
++  BEFORE_TLSDESC_CALL ();
++  tls_var2 = *p;
++  struct tls *ret = &tls_var2;
++  AFTER_TLSDESC_CALL ();
++  return ret;
++}
+diff --git a/sysdeps/i386/dl-machine.h b/sysdeps/i386/dl-machine.h
+index fc1ef96587..50d74fe6e9 100644
+--- a/sysdeps/i386/dl-machine.h
++++ b/sysdeps/i386/dl-machine.h
+@@ -347,7 +347,7 @@ and creates an unsatisfiable circular dependency.\n",
+ 		  {
+ 		    td->arg = _dl_make_tlsdesc_dynamic
+ 		      (sym_map, sym->st_value + (ElfW(Word))td->arg);
+-		    td->entry = _dl_tlsdesc_dynamic;
++		    td->entry = GLRO(dl_x86_tlsdesc_dynamic);
+ 		  }
+ 		else
+ #  endif
+diff --git a/sysdeps/i386/dl-tlsdesc-dynamic.h b/sysdeps/i386/dl-tlsdesc-dynamic.h
+new file mode 100644
+index 0000000000..3627028577
+--- /dev/null
++++ b/sysdeps/i386/dl-tlsdesc-dynamic.h
+@@ -0,0 +1,190 @@
++/* Thread-local storage handling in the ELF dynamic linker.  i386 version.
++   Copyright (C) 2004-2024 Free Software Foundation, Inc.
++   This file is part of the GNU C Library.
++
++   The GNU C Library is free software; you can redistribute it and/or
++   modify it under the terms of the GNU Lesser General Public
++   License as published by the Free Software Foundation; either
++   version 2.1 of the License, or (at your option) any later version.
++
++   The GNU C Library is distributed in the hope that it will be useful,
++   but WITHOUT ANY WARRANTY; without even the implied warranty of
++   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
++   Lesser General Public License for more details.
++
++   You should have received a copy of the GNU Lesser General Public
++   License along with the GNU C Library; if not, see
++   <https://www.gnu.org/licenses/>.  */
++
++#undef REGISTER_SAVE_AREA
++
++#if !defined USE_FNSAVE && (STATE_SAVE_ALIGNMENT % 16) != 0
++# error STATE_SAVE_ALIGNMENT must be multiple of 16
++#endif
++
++#if DL_RUNTIME_RESOLVE_REALIGN_STACK
++# ifdef USE_FNSAVE
++#  error USE_FNSAVE shouldn't be defined
++# endif
++# ifdef USE_FXSAVE
++/* Use fxsave to save all registers.  */
++#  define REGISTER_SAVE_AREA	512
++# endif
++#else
++# ifdef USE_FNSAVE
++/* Use fnsave to save x87 FPU stack registers.  */
++#  define REGISTER_SAVE_AREA	108
++# else
++#  ifndef USE_FXSAVE
++#   error USE_FXSAVE must be defined
++#  endif
++/* Use fxsave to save all registers.  Add 12 bytes to align the stack
++   to 16 bytes.  */
++#  define REGISTER_SAVE_AREA	(512 + 12)
++# endif
++#endif
++
++	.hidden _dl_tlsdesc_dynamic
++	.global	_dl_tlsdesc_dynamic
++	.type	_dl_tlsdesc_dynamic,@function
++
++     /* This function is used for symbols that need dynamic TLS.
++
++	%eax points to the TLS descriptor, such that 0(%eax) points to
++	_dl_tlsdesc_dynamic itself, and 4(%eax) points to a struct
++	tlsdesc_dynamic_arg object.  It must return in %eax the offset
++	between the thread pointer and the object denoted by the
++	argument, without clobbering any registers.
++
++	The assembly code that follows is a rendition of the following
++	C code, hand-optimized a little bit.
++
++ptrdiff_t
++__attribute__ ((__regparm__ (1)))
++_dl_tlsdesc_dynamic (struct tlsdesc *tdp)
++{
++  struct tlsdesc_dynamic_arg *td = tdp->arg;
++  dtv_t *dtv = *(dtv_t **)((char *)__thread_pointer + DTV_OFFSET);
++  if (__builtin_expect (td->gen_count <= dtv[0].counter
++			&& (dtv[td->tlsinfo.ti_module].pointer.val
++			    != TLS_DTV_UNALLOCATED),
++			1))
++    return dtv[td->tlsinfo.ti_module].pointer.val + td->tlsinfo.ti_offset
++      - __thread_pointer;
++
++  return ___tls_get_addr (&td->tlsinfo) - __thread_pointer;
++}
++*/
++	cfi_startproc
++	.align 16
++_dl_tlsdesc_dynamic:
++	/* Like all TLS resolvers, preserve call-clobbered registers.
++	   We need two scratch regs anyway.  */
++	subl	$32, %esp
++	cfi_adjust_cfa_offset (32)
++	movl	%ecx, 20(%esp)
++	movl	%edx, 24(%esp)
++	movl	TLSDESC_ARG(%eax), %eax
++	movl	%gs:DTV_OFFSET, %edx
++	movl	TLSDESC_GEN_COUNT(%eax), %ecx
++	cmpl	(%edx), %ecx
++	ja	2f
++	movl	TLSDESC_MODID(%eax), %ecx
++	movl	(%edx,%ecx,8), %edx
++	cmpl	$-1, %edx
++	je	2f
++	movl	TLSDESC_MODOFF(%eax), %eax
++	addl	%edx, %eax
++1:
++	movl	20(%esp), %ecx
++	subl	%gs:0, %eax
++	movl	24(%esp), %edx
++	addl	$32, %esp
++	cfi_adjust_cfa_offset (-32)
++	ret
++	.p2align 4,,7
++2:
++	cfi_adjust_cfa_offset (32)
++#if DL_RUNTIME_RESOLVE_REALIGN_STACK
++	movl	%ebx, -28(%esp)
++	movl	%esp, %ebx
++	cfi_def_cfa_register(%ebx)
++	and	$-STATE_SAVE_ALIGNMENT, %esp
++#endif
++#ifdef REGISTER_SAVE_AREA
++	subl	$REGISTER_SAVE_AREA, %esp
++# if !DL_RUNTIME_RESOLVE_REALIGN_STACK
++	cfi_adjust_cfa_offset(REGISTER_SAVE_AREA)
++# endif
++#else
++# if !DL_RUNTIME_RESOLVE_REALIGN_STACK
++#  error DL_RUNTIME_RESOLVE_REALIGN_STACK must be true
++# endif
++	/* Allocate stack space of the required size to save the state.  */
++	LOAD_PIC_REG (cx)
++	subl	RTLD_GLOBAL_RO_DL_X86_CPU_FEATURES_OFFSET+XSAVE_STATE_SIZE_OFFSET+_rtld_local_ro@GOTOFF(%ecx), %esp
++#endif
++#ifdef USE_FNSAVE
++	fnsave	(%esp)
++#elif defined USE_FXSAVE
++	fxsave	(%esp)
++#else
++	/* Save the argument for ___tls_get_addr in EAX.  */
++	movl	%eax, %ecx
++	movl	$TLSDESC_CALL_STATE_SAVE_MASK, %eax
++	xorl	%edx, %edx
++	/* Clear the XSAVE Header.  */
++# ifdef USE_XSAVE
++	movl	%edx, (512)(%esp)
++	movl	%edx, (512 + 4 * 1)(%esp)
++	movl	%edx, (512 + 4 * 2)(%esp)
++	movl	%edx, (512 + 4 * 3)(%esp)
++# endif
++	movl	%edx, (512 + 4 * 4)(%esp)
++	movl	%edx, (512 + 4 * 5)(%esp)
++	movl	%edx, (512 + 4 * 6)(%esp)
++	movl	%edx, (512 + 4 * 7)(%esp)
++	movl	%edx, (512 + 4 * 8)(%esp)
++	movl	%edx, (512 + 4 * 9)(%esp)
++	movl	%edx, (512 + 4 * 10)(%esp)
++	movl	%edx, (512 + 4 * 11)(%esp)
++	movl	%edx, (512 + 4 * 12)(%esp)
++	movl	%edx, (512 + 4 * 13)(%esp)
++	movl	%edx, (512 + 4 * 14)(%esp)
++	movl	%edx, (512 + 4 * 15)(%esp)
++# ifdef USE_XSAVE
++	xsave	(%esp)
++# else
++	xsavec	(%esp)
++# endif
++	/* Restore the argument for ___tls_get_addr in EAX.  */
++	movl	%ecx, %eax
++#endif
++	call	HIDDEN_JUMPTARGET (___tls_get_addr)
++	/* Get register content back.  */
++#ifdef USE_FNSAVE
++	frstor	(%esp)
++#elif defined USE_FXSAVE
++	fxrstor	(%esp)
++#else
++	/* Save and retore ___tls_get_addr return value stored in EAX.  */
++	movl	%eax, %ecx
++	movl	$TLSDESC_CALL_STATE_SAVE_MASK, %eax
++	xorl	%edx, %edx
++	xrstor	(%esp)
++	movl	%ecx, %eax
++#endif
++#if DL_RUNTIME_RESOLVE_REALIGN_STACK
++	mov	%ebx, %esp
++	cfi_def_cfa_register(%esp)
++	movl	-28(%esp), %ebx
++	cfi_restore(%ebx)
++#else
++	addl	$REGISTER_SAVE_AREA, %esp
++	cfi_adjust_cfa_offset(-REGISTER_SAVE_AREA)
++#endif
++	jmp	1b
++	cfi_endproc
++	.size	_dl_tlsdesc_dynamic, .-_dl_tlsdesc_dynamic
++
++#undef STATE_SAVE_ALIGNMENT
+diff --git a/sysdeps/i386/dl-tlsdesc.S b/sysdeps/i386/dl-tlsdesc.S
+index 90d93caa0c..f002feee56 100644
+--- a/sysdeps/i386/dl-tlsdesc.S
++++ b/sysdeps/i386/dl-tlsdesc.S
+@@ -18,8 +18,27 @@
+ 
+ #include <sysdep.h>
+ #include <tls.h>
++#include <cpu-features-offsets.h>
++#include <features-offsets.h>
+ #include "tlsdesc.h"
+ 
++#ifndef DL_STACK_ALIGNMENT
++/* Due to GCC bug:
++
++   https://gcc.gnu.org/bugzilla/show_bug.cgi?id=58066
++
++   __tls_get_addr may be called with 4-byte stack alignment.  Although
++   this bug has been fixed in GCC 4.9.4, 5.3 and 6, we can't assume
++   that stack will be always aligned at 16 bytes.  */
++# define DL_STACK_ALIGNMENT 4
++#endif
++
++/* True if _dl_tlsdesc_dynamic should align stack for STATE_SAVE or align
++   stack to MINIMUM_ALIGNMENT bytes before calling ___tls_get_addr.  */
++#define DL_RUNTIME_RESOLVE_REALIGN_STACK \
++  (STATE_SAVE_ALIGNMENT > DL_STACK_ALIGNMENT \
++   || MINIMUM_ALIGNMENT > DL_STACK_ALIGNMENT)
++
+ 	.text
+ 
+      /* This function is used to compute the TP offset for symbols in
+@@ -65,69 +84,35 @@ _dl_tlsdesc_undefweak:
+ 	.size	_dl_tlsdesc_undefweak, .-_dl_tlsdesc_undefweak
+ 
+ #ifdef SHARED
+-	.hidden _dl_tlsdesc_dynamic
+-	.global	_dl_tlsdesc_dynamic
+-	.type	_dl_tlsdesc_dynamic,@function
+-
+-     /* This function is used for symbols that need dynamic TLS.
+-
+-	%eax points to the TLS descriptor, such that 0(%eax) points to
+-	_dl_tlsdesc_dynamic itself, and 4(%eax) points to a struct
+-	tlsdesc_dynamic_arg object.  It must return in %eax the offset
+-	between the thread pointer and the object denoted by the
+-	argument, without clobbering any registers.
+-
+-	The assembly code that follows is a rendition of the following
+-	C code, hand-optimized a little bit.
+-
+-ptrdiff_t
+-__attribute__ ((__regparm__ (1)))
+-_dl_tlsdesc_dynamic (struct tlsdesc *tdp)
+-{
+-  struct tlsdesc_dynamic_arg *td = tdp->arg;
+-  dtv_t *dtv = *(dtv_t **)((char *)__thread_pointer + DTV_OFFSET);
+-  if (__builtin_expect (td->gen_count <= dtv[0].counter
+-			&& (dtv[td->tlsinfo.ti_module].pointer.val
+-			    != TLS_DTV_UNALLOCATED),
+-			1))
+-    return dtv[td->tlsinfo.ti_module].pointer.val + td->tlsinfo.ti_offset
+-      - __thread_pointer;
+-
+-  return ___tls_get_addr (&td->tlsinfo) - __thread_pointer;
+-}
+-*/
+-	cfi_startproc
+-	.align 16
+-_dl_tlsdesc_dynamic:
+-	/* Like all TLS resolvers, preserve call-clobbered registers.
+-	   We need two scratch regs anyway.  */
+-	subl	$28, %esp
+-	cfi_adjust_cfa_offset (28)
+-	movl	%ecx, 20(%esp)
+-	movl	%edx, 24(%esp)
+-	movl	TLSDESC_ARG(%eax), %eax
+-	movl	%gs:DTV_OFFSET, %edx
+-	movl	TLSDESC_GEN_COUNT(%eax), %ecx
+-	cmpl	(%edx), %ecx
+-	ja	.Lslow
+-	movl	TLSDESC_MODID(%eax), %ecx
+-	movl	(%edx,%ecx,8), %edx
+-	cmpl	$-1, %edx
+-	je	.Lslow
+-	movl	TLSDESC_MODOFF(%eax), %eax
+-	addl	%edx, %eax
+-.Lret:
+-	movl	20(%esp), %ecx
+-	subl	%gs:0, %eax
+-	movl	24(%esp), %edx
+-	addl	$28, %esp
+-	cfi_adjust_cfa_offset (-28)
+-	ret
+-	.p2align 4,,7
+-.Lslow:
+-	cfi_adjust_cfa_offset (28)
+-	call	HIDDEN_JUMPTARGET (___tls_get_addr)
+-	jmp	.Lret
+-	cfi_endproc
+-	.size	_dl_tlsdesc_dynamic, .-_dl_tlsdesc_dynamic
++# define USE_FNSAVE
++# define MINIMUM_ALIGNMENT	4
++# define STATE_SAVE_ALIGNMENT	4
++# define _dl_tlsdesc_dynamic	_dl_tlsdesc_dynamic_fnsave
++# include "dl-tlsdesc-dynamic.h"
++# undef _dl_tlsdesc_dynamic
++# undef MINIMUM_ALIGNMENT
++# undef USE_FNSAVE
++
++# define MINIMUM_ALIGNMENT	16
++
++# define USE_FXSAVE
++# define STATE_SAVE_ALIGNMENT	16
++# define _dl_tlsdesc_dynamic	_dl_tlsdesc_dynamic_fxsave
++# include "dl-tlsdesc-dynamic.h"
++# undef _dl_tlsdesc_dynamic
++# undef USE_FXSAVE
++
++# define USE_XSAVE
++# define STATE_SAVE_ALIGNMENT	64
++# define _dl_tlsdesc_dynamic	_dl_tlsdesc_dynamic_xsave
++# include "dl-tlsdesc-dynamic.h"
++# undef _dl_tlsdesc_dynamic
++# undef USE_XSAVE
++
++# define USE_XSAVEC
++# define STATE_SAVE_ALIGNMENT	64
++# define _dl_tlsdesc_dynamic	_dl_tlsdesc_dynamic_xsavec
++# include "dl-tlsdesc-dynamic.h"
++# undef _dl_tlsdesc_dynamic
++# undef USE_XSAVEC
+ #endif /* SHARED */
+diff --git a/sysdeps/x86/Makefile b/sysdeps/x86/Makefile
+index 4d50b327b5..992aabe43e 100644
+--- a/sysdeps/x86/Makefile
++++ b/sysdeps/x86/Makefile
+@@ -1,5 +1,5 @@
+ ifeq ($(subdir),csu)
+-gen-as-const-headers += cpu-features-offsets.sym
++gen-as-const-headers += cpu-features-offsets.sym features-offsets.sym
+ endif
+ 
+ ifeq ($(subdir),elf)
+@@ -86,6 +86,11 @@ endif
+ tst-ifunc-isa-2-ENV = GLIBC_TUNABLES=glibc.cpu.hwcaps=-SSE4_2,-AVX,-AVX2,-AVX512F
+ tst-ifunc-isa-2-static-ENV = $(tst-ifunc-isa-2-ENV)
+ tst-hwcap-tunables-ARGS = -- $(host-test-program-cmd)
++
++CFLAGS-tst-gnu2-tls2.c += -msse
++CFLAGS-tst-gnu2-tls2mod0.c += -msse2 -mtune=haswell
++CFLAGS-tst-gnu2-tls2mod1.c += -msse2 -mtune=haswell
++CFLAGS-tst-gnu2-tls2mod2.c += -msse2 -mtune=haswell
+ endif
+ 
+ ifeq ($(subdir),math)
+diff --git a/sysdeps/x86/cpu-features.c b/sysdeps/x86/cpu-features.c
+index 25e6622a79..835113b42f 100644
+--- a/sysdeps/x86/cpu-features.c
++++ b/sysdeps/x86/cpu-features.c
+@@ -27,8 +27,13 @@
+ extern void TUNABLE_CALLBACK (set_hwcaps) (tunable_val_t *)
+   attribute_hidden;
+ 
+-#if defined SHARED && defined __x86_64__
+-# include <dl-plt-rewrite.h>
++#if defined SHARED
++extern void _dl_tlsdesc_dynamic_fxsave (void) attribute_hidden;
++extern void _dl_tlsdesc_dynamic_xsave (void) attribute_hidden;
++extern void _dl_tlsdesc_dynamic_xsavec (void) attribute_hidden;
++
++# ifdef __x86_64__
++#  include <dl-plt-rewrite.h>
+ 
+ static void
+ TUNABLE_CALLBACK (set_plt_rewrite) (tunable_val_t *valp)
+@@ -47,6 +52,15 @@ TUNABLE_CALLBACK (set_plt_rewrite) (tunable_val_t *valp)
+ 		 : plt_rewrite_jmp);
+     }
+ }
++# else
++extern void _dl_tlsdesc_dynamic_fnsave (void) attribute_hidden;
++# endif
++#endif
++
++#ifdef __x86_64__
++extern void _dl_runtime_resolve_fxsave (void) attribute_hidden;
++extern void _dl_runtime_resolve_xsave (void) attribute_hidden;
++extern void _dl_runtime_resolve_xsavec (void) attribute_hidden;
+ #endif
+ 
+ #ifdef __LP64__
+@@ -1130,6 +1144,44 @@ no_cpuid:
+ 	       TUNABLE_CALLBACK (set_x86_shstk));
+ #endif
+ 
++  if (GLRO(dl_x86_cpu_features).xsave_state_size != 0)
++    {
++      if (CPU_FEATURE_USABLE_P (cpu_features, XSAVEC))
++	{
++#ifdef __x86_64__
++	  GLRO(dl_x86_64_runtime_resolve) = _dl_runtime_resolve_xsavec;
++#endif
++#ifdef SHARED
++	  GLRO(dl_x86_tlsdesc_dynamic) = _dl_tlsdesc_dynamic_xsavec;
++#endif
++	}
++      else
++	{
++#ifdef __x86_64__
++	  GLRO(dl_x86_64_runtime_resolve) = _dl_runtime_resolve_xsave;
++#endif
++#ifdef SHARED
++	  GLRO(dl_x86_tlsdesc_dynamic) = _dl_tlsdesc_dynamic_xsave;
++#endif
++	}
++    }
++  else
++    {
++#ifdef __x86_64__
++      GLRO(dl_x86_64_runtime_resolve) = _dl_runtime_resolve_fxsave;
++# ifdef SHARED
++      GLRO(dl_x86_tlsdesc_dynamic) = _dl_tlsdesc_dynamic_fxsave;
++# endif
++#else
++# ifdef SHARED
++      if (CPU_FEATURE_USABLE_P (cpu_features, FXSR))
++	GLRO(dl_x86_tlsdesc_dynamic) = _dl_tlsdesc_dynamic_fxsave;
++      else
++	GLRO(dl_x86_tlsdesc_dynamic) = _dl_tlsdesc_dynamic_fnsave;
++# endif
++#endif
++    }
++
+ #ifdef SHARED
+ # ifdef __x86_64__
+   TUNABLE_GET (plt_rewrite, tunable_val_t *,
+diff --git a/sysdeps/x86/dl-procinfo.c b/sysdeps/x86/dl-procinfo.c
+index ee957b4d70..5920d4b320 100644
+--- a/sysdeps/x86/dl-procinfo.c
++++ b/sysdeps/x86/dl-procinfo.c
+@@ -86,3 +86,19 @@ PROCINFO_CLASS const char _dl_x86_platforms[4][9]
+ #else
+ ,
+ #endif
++
++#if defined SHARED && !IS_IN (ldconfig)
++# if !defined PROCINFO_DECL
++  ._dl_x86_tlsdesc_dynamic
++# else
++PROCINFO_CLASS void * _dl_x86_tlsdesc_dynamic
++# endif
++# ifndef PROCINFO_DECL
++= NULL
++# endif
++# ifdef PROCINFO_DECL
++;
++# else
++,
++# endif
++#endif
+diff --git a/sysdeps/x86_64/features-offsets.sym b/sysdeps/x86/features-offsets.sym
+similarity index 89%
+rename from sysdeps/x86_64/features-offsets.sym
+rename to sysdeps/x86/features-offsets.sym
+index 9e4be3393a..77e990c705 100644
+--- a/sysdeps/x86_64/features-offsets.sym
++++ b/sysdeps/x86/features-offsets.sym
+@@ -3,4 +3,6 @@
+ #include <ldsodefs.h>
+ 
+ RTLD_GLOBAL_RO_DL_X86_CPU_FEATURES_OFFSET offsetof (struct rtld_global_ro, _dl_x86_cpu_features)
++#ifdef __x86_64__
+ RTLD_GLOBAL_DL_X86_FEATURE_1_OFFSET offsetof (struct rtld_global, _dl_x86_feature_1)
++#endif
+diff --git a/sysdeps/x86/sysdep.h b/sysdeps/x86/sysdep.h
+index 837fd28734..485cad9c02 100644
+--- a/sysdeps/x86/sysdep.h
++++ b/sysdeps/x86/sysdep.h
+@@ -70,6 +70,12 @@
+    | (1 << X86_XSTATE_ZMM_H_ID))
+ #endif
+ 
++/* States which should be saved for TLSDESC_CALL and TLS_DESC_CALL.
++   Compiler assumes that all registers, including x87 FPU stack registers,
++   are unchanged after CALL, except for EFLAGS and RAX/EAX.  */
++#define TLSDESC_CALL_STATE_SAVE_MASK	\
++  (STATE_SAVE_MASK | (1 << X86_XSTATE_X87_ID))
++
+ /* Constants for bits in __x86_string_control:  */
+ 
+ /* Avoid short distance REP MOVSB.  */
+diff --git a/sysdeps/x86/tst-gnu2-tls2.c b/sysdeps/x86/tst-gnu2-tls2.c
+new file mode 100644
+index 0000000000..de900a423b
+--- /dev/null
++++ b/sysdeps/x86/tst-gnu2-tls2.c
+@@ -0,0 +1,20 @@
++#ifndef __x86_64__
++#include <sys/platform/x86.h>
++
++#define IS_SUPPORTED() CPU_FEATURE_ACTIVE (SSE2)
++#endif
++
++/* Clear XMM0...XMM7  */
++#define PREPARE_MALLOC()				\
++{							\
++  asm volatile ("xorps %%xmm0, %%xmm0" : : : "xmm0" );	\
++  asm volatile ("xorps %%xmm1, %%xmm1" : : : "xmm1" );	\
++  asm volatile ("xorps %%xmm2, %%xmm2" : : : "xmm2" );	\
++  asm volatile ("xorps %%xmm3, %%xmm3" : : : "xmm3" );	\
++  asm volatile ("xorps %%xmm4, %%xmm4" : : : "xmm4" );	\
++  asm volatile ("xorps %%xmm5, %%xmm5" : : : "xmm5" );	\
++  asm volatile ("xorps %%xmm6, %%xmm6" : : : "xmm6" );	\
++  asm volatile ("xorps %%xmm7, %%xmm7" : : : "xmm7" );	\
++}
++
++#include <elf/tst-gnu2-tls2.c>
+diff --git a/sysdeps/x86_64/Makefile b/sysdeps/x86_64/Makefile
+index 90f4ecfd26..e8babc9a4e 100644
+--- a/sysdeps/x86_64/Makefile
++++ b/sysdeps/x86_64/Makefile
+@@ -10,7 +10,7 @@ LDFLAGS-rtld += -Wl,-z,nomark-plt
+ endif
+ 
+ ifeq ($(subdir),csu)
+-gen-as-const-headers += features-offsets.sym link-defines.sym
++gen-as-const-headers += link-defines.sym
+ endif
+ 
+ ifeq ($(subdir),gmon)
+diff --git a/sysdeps/x86_64/dl-machine.h b/sysdeps/x86_64/dl-machine.h
+index 6d605d0d32..ff5d45f7cb 100644
+--- a/sysdeps/x86_64/dl-machine.h
++++ b/sysdeps/x86_64/dl-machine.h
+@@ -71,9 +71,6 @@ elf_machine_runtime_setup (struct link_map *l, struct r_scope_elem *scope[],
+ 			   int lazy, int profile)
+ {
+   Elf64_Addr *got;
+-  extern void _dl_runtime_resolve_fxsave (ElfW(Word)) attribute_hidden;
+-  extern void _dl_runtime_resolve_xsave (ElfW(Word)) attribute_hidden;
+-  extern void _dl_runtime_resolve_xsavec (ElfW(Word)) attribute_hidden;
+   extern void _dl_runtime_profile_sse (ElfW(Word)) attribute_hidden;
+   extern void _dl_runtime_profile_avx (ElfW(Word)) attribute_hidden;
+   extern void _dl_runtime_profile_avx512 (ElfW(Word)) attribute_hidden;
+@@ -96,8 +93,6 @@ elf_machine_runtime_setup (struct link_map *l, struct r_scope_elem *scope[],
+       /* Identify this shared object.  */
+       *(ElfW(Addr) *) (got + 1) = (ElfW(Addr)) l;
+ 
+-      const struct cpu_features* cpu_features = __get_cpu_features ();
+-
+ #ifdef SHARED
+       /* The got[2] entry contains the address of a function which gets
+ 	 called to get the address of a so far unresolved function and
+@@ -107,6 +102,7 @@ elf_machine_runtime_setup (struct link_map *l, struct r_scope_elem *scope[],
+ 	 end in this function.  */
+       if (__glibc_unlikely (profile))
+ 	{
++	  const struct cpu_features* cpu_features = __get_cpu_features ();
+ 	  if (X86_ISA_CPU_FEATURE_USABLE_P (cpu_features, AVX512F))
+ 	    *(ElfW(Addr) *) (got + 2) = (ElfW(Addr)) &_dl_runtime_profile_avx512;
+ 	  else if (X86_ISA_CPU_FEATURE_USABLE_P (cpu_features, AVX))
+@@ -126,15 +122,8 @@ elf_machine_runtime_setup (struct link_map *l, struct r_scope_elem *scope[],
+ 	  /* This function will get called to fix up the GOT entry
+ 	     indicated by the offset on the stack, and then jump to
+ 	     the resolved address.  */
+-	  if (MINIMUM_X86_ISA_LEVEL >= AVX_X86_ISA_LEVEL
+-	      || GLRO(dl_x86_cpu_features).xsave_state_size != 0)
+-	    *(ElfW(Addr) *) (got + 2)
+-	      = (CPU_FEATURE_USABLE_P (cpu_features, XSAVEC)
+-		 ? (ElfW(Addr)) &_dl_runtime_resolve_xsavec
+-		 : (ElfW(Addr)) &_dl_runtime_resolve_xsave);
+-	  else
+-	    *(ElfW(Addr) *) (got + 2)
+-	      = (ElfW(Addr)) &_dl_runtime_resolve_fxsave;
++	  *(ElfW(Addr) *) (got + 2)
++	    = (ElfW(Addr)) GLRO(dl_x86_64_runtime_resolve);
+ 	}
+     }
+ 
+@@ -383,7 +372,7 @@ and creates an unsatisfiable circular dependency.\n",
+ 		  {
+ 		    td->arg = _dl_make_tlsdesc_dynamic
+ 		      (sym_map, sym->st_value + reloc->r_addend);
+-		    td->entry = _dl_tlsdesc_dynamic;
++		    td->entry = GLRO(dl_x86_tlsdesc_dynamic);
+ 		  }
+ 		else
+ #  endif
+diff --git a/sysdeps/x86_64/dl-procinfo.c b/sysdeps/x86_64/dl-procinfo.c
+index 4d1d790fbb..06637a8154 100644
+--- a/sysdeps/x86_64/dl-procinfo.c
++++ b/sysdeps/x86_64/dl-procinfo.c
+@@ -41,5 +41,21 @@
+ 
+ #include <sysdeps/x86/dl-procinfo.c>
+ 
++#if !IS_IN (ldconfig)
++# if !defined PROCINFO_DECL && defined SHARED
++  ._dl_x86_64_runtime_resolve
++# else
++PROCINFO_CLASS void * _dl_x86_64_runtime_resolve
++# endif
++# ifndef PROCINFO_DECL
++= NULL
++# endif
++# if !defined SHARED || defined PROCINFO_DECL
++;
++# else
++,
++# endif
++#endif
++
+ #undef PROCINFO_DECL
+ #undef PROCINFO_CLASS
+diff --git a/sysdeps/x86_64/dl-tlsdesc-dynamic.h b/sysdeps/x86_64/dl-tlsdesc-dynamic.h
+new file mode 100644
+index 0000000000..0c2e8d5320
+--- /dev/null
++++ b/sysdeps/x86_64/dl-tlsdesc-dynamic.h
+@@ -0,0 +1,166 @@
++/* Thread-local storage handling in the ELF dynamic linker.  x86_64 version.
++   Copyright (C) 2004-2024 Free Software Foundation, Inc.
++   This file is part of the GNU C Library.
++
++   The GNU C Library is free software; you can redistribute it and/or
++   modify it under the terms of the GNU Lesser General Public
++   License as published by the Free Software Foundation; either
++   version 2.1 of the License, or (at your option) any later version.
++
++   The GNU C Library is distributed in the hope that it will be useful,
++   but WITHOUT ANY WARRANTY; without even the implied warranty of
++   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
++   Lesser General Public License for more details.
++
++   You should have received a copy of the GNU Lesser General Public
++   License along with the GNU C Library; if not, see
++   <https://www.gnu.org/licenses/>.  */
++
++#ifndef SECTION
++# define SECTION(p)	p
++#endif
++
++#undef REGISTER_SAVE_AREA
++#undef LOCAL_STORAGE_AREA
++#undef BASE
++
++#include "dl-trampoline-state.h"
++
++	.section SECTION(.text),"ax",@progbits
++
++	.hidden _dl_tlsdesc_dynamic
++	.global	_dl_tlsdesc_dynamic
++	.type	_dl_tlsdesc_dynamic,@function
++
++     /* %rax points to the TLS descriptor, such that 0(%rax) points to
++	_dl_tlsdesc_dynamic itself, and 8(%rax) points to a struct
++	tlsdesc_dynamic_arg object.  It must return in %rax the offset
++	between the thread pointer and the object denoted by the
++	argument, without clobbering any registers.
++
++	The assembly code that follows is a rendition of the following
++	C code, hand-optimized a little bit.
++
++ptrdiff_t
++_dl_tlsdesc_dynamic (register struct tlsdesc *tdp asm ("%rax"))
++{
++  struct tlsdesc_dynamic_arg *td = tdp->arg;
++  dtv_t *dtv = *(dtv_t **)((char *)__thread_pointer + DTV_OFFSET);
++  if (__builtin_expect (td->gen_count <= dtv[0].counter
++			&& (dtv[td->tlsinfo.ti_module].pointer.val
++			    != TLS_DTV_UNALLOCATED),
++			1))
++    return dtv[td->tlsinfo.ti_module].pointer.val + td->tlsinfo.ti_offset
++      - __thread_pointer;
++
++  return __tls_get_addr_internal (&td->tlsinfo) - __thread_pointer;
++}
++*/
++	cfi_startproc
++	.align 16
++_dl_tlsdesc_dynamic:
++	_CET_ENDBR
++	/* Preserve call-clobbered registers that we modify.
++	   We need two scratch regs anyway.  */
++	movq	%rsi, -16(%rsp)
++	mov	%fs:DTV_OFFSET, %RSI_LP
++	movq	%rdi, -8(%rsp)
++	movq	TLSDESC_ARG(%rax), %rdi
++	movq	(%rsi), %rax
++	cmpq	%rax, TLSDESC_GEN_COUNT(%rdi)
++	ja	2f
++	movq	TLSDESC_MODID(%rdi), %rax
++	salq	$4, %rax
++	movq	(%rax,%rsi), %rax
++	cmpq	$-1, %rax
++	je	2f
++	addq	TLSDESC_MODOFF(%rdi), %rax
++1:
++	movq	-16(%rsp), %rsi
++	sub	%fs:0, %RAX_LP
++	movq	-8(%rsp), %rdi
++	ret
++2:
++#if DL_RUNTIME_RESOLVE_REALIGN_STACK
++	movq	%rbx, -24(%rsp)
++	mov	%RSP_LP, %RBX_LP
++	cfi_def_cfa_register(%rbx)
++	and	$-STATE_SAVE_ALIGNMENT, %RSP_LP
++#endif
++#ifdef REGISTER_SAVE_AREA
++# if DL_RUNTIME_RESOLVE_REALIGN_STACK
++	/* STATE_SAVE_OFFSET has space for 8 integer registers.  But we
++	   need space for RCX, RDX, RSI, RDI, R8, R9, R10 and R11, plus
++	   RBX above.  */
++	sub	$(REGISTER_SAVE_AREA + STATE_SAVE_ALIGNMENT), %RSP_LP
++# else
++	sub	$REGISTER_SAVE_AREA, %RSP_LP
++	cfi_adjust_cfa_offset(REGISTER_SAVE_AREA)
++# endif
++#else
++	/* Allocate stack space of the required size to save the state.  */
++	sub	_rtld_local_ro+RTLD_GLOBAL_RO_DL_X86_CPU_FEATURES_OFFSET+XSAVE_STATE_SIZE_OFFSET(%rip), %RSP_LP
++#endif
++	/* Besides rdi and rsi, saved above, save rcx, rdx, r8, r9,
++	   r10 and r11.  */
++	movq	%rcx, REGISTER_SAVE_RCX(%rsp)
++	movq	%rdx, REGISTER_SAVE_RDX(%rsp)
++	movq	%r8, REGISTER_SAVE_R8(%rsp)
++	movq	%r9, REGISTER_SAVE_R9(%rsp)
++	movq	%r10, REGISTER_SAVE_R10(%rsp)
++	movq	%r11, REGISTER_SAVE_R11(%rsp)
++#ifdef USE_FXSAVE
++	fxsave	STATE_SAVE_OFFSET(%rsp)
++#else
++	movl	$TLSDESC_CALL_STATE_SAVE_MASK, %eax
++	xorl	%edx, %edx
++	/* Clear the XSAVE Header.  */
++# ifdef USE_XSAVE
++	movq	%rdx, (STATE_SAVE_OFFSET + 512)(%rsp)
++	movq	%rdx, (STATE_SAVE_OFFSET + 512 + 8)(%rsp)
++# endif
++	movq	%rdx, (STATE_SAVE_OFFSET + 512 + 8 * 2)(%rsp)
++	movq	%rdx, (STATE_SAVE_OFFSET + 512 + 8 * 3)(%rsp)
++	movq	%rdx, (STATE_SAVE_OFFSET + 512 + 8 * 4)(%rsp)
++	movq	%rdx, (STATE_SAVE_OFFSET + 512 + 8 * 5)(%rsp)
++	movq	%rdx, (STATE_SAVE_OFFSET + 512 + 8 * 6)(%rsp)
++	movq	%rdx, (STATE_SAVE_OFFSET + 512 + 8 * 7)(%rsp)
++# ifdef USE_XSAVE
++	xsave	STATE_SAVE_OFFSET(%rsp)
++# else
++	xsavec	STATE_SAVE_OFFSET(%rsp)
++# endif
++#endif
++	/* %rdi already points to the tlsinfo data structure.  */
++	call	HIDDEN_JUMPTARGET (__tls_get_addr)
++	# Get register content back.
++#ifdef USE_FXSAVE
++	fxrstor	STATE_SAVE_OFFSET(%rsp)
++#else
++	/* Save and retore __tls_get_addr return value stored in RAX.  */
++	mov	%RAX_LP, %RCX_LP
++	movl	$TLSDESC_CALL_STATE_SAVE_MASK, %eax
++	xorl	%edx, %edx
++	xrstor	STATE_SAVE_OFFSET(%rsp)
++	mov	%RCX_LP, %RAX_LP
++#endif
++	movq	REGISTER_SAVE_R11(%rsp), %r11
++	movq	REGISTER_SAVE_R10(%rsp), %r10
++	movq	REGISTER_SAVE_R9(%rsp), %r9
++	movq	REGISTER_SAVE_R8(%rsp), %r8
++	movq	REGISTER_SAVE_RDX(%rsp), %rdx
++	movq	REGISTER_SAVE_RCX(%rsp), %rcx
++#if DL_RUNTIME_RESOLVE_REALIGN_STACK
++	mov	%RBX_LP, %RSP_LP
++	cfi_def_cfa_register(%rsp)
++	movq	-24(%rsp), %rbx
++	cfi_restore(%rbx)
++#else
++	add	$REGISTER_SAVE_AREA, %RSP_LP
++	cfi_adjust_cfa_offset(-REGISTER_SAVE_AREA)
++#endif
++	jmp	1b
++	cfi_endproc
++	.size	_dl_tlsdesc_dynamic, .-_dl_tlsdesc_dynamic
++
++#undef STATE_SAVE_ALIGNMENT
+diff --git a/sysdeps/x86_64/dl-tlsdesc.S b/sysdeps/x86_64/dl-tlsdesc.S
+index f748af2ece..ea69f5223a 100644
+--- a/sysdeps/x86_64/dl-tlsdesc.S
++++ b/sysdeps/x86_64/dl-tlsdesc.S
+@@ -18,7 +18,19 @@
+ 
+ #include <sysdep.h>
+ #include <tls.h>
++#include <cpu-features-offsets.h>
++#include <features-offsets.h>
+ #include "tlsdesc.h"
++#include "dl-trampoline-save.h"
++
++/* Area on stack to save and restore registers used for parameter
++   passing when calling _dl_tlsdesc_dynamic.  */
++#define REGISTER_SAVE_RCX	0
++#define REGISTER_SAVE_RDX	(REGISTER_SAVE_RCX + 8)
++#define REGISTER_SAVE_R8	(REGISTER_SAVE_RDX + 8)
++#define REGISTER_SAVE_R9	(REGISTER_SAVE_R8 + 8)
++#define REGISTER_SAVE_R10	(REGISTER_SAVE_R9 + 8)
++#define REGISTER_SAVE_R11	(REGISTER_SAVE_R10 + 8)
+ 
+ 	.text
+ 
+@@ -67,80 +79,24 @@ _dl_tlsdesc_undefweak:
+ 	.size	_dl_tlsdesc_undefweak, .-_dl_tlsdesc_undefweak
+ 
+ #ifdef SHARED
+-	.hidden _dl_tlsdesc_dynamic
+-	.global	_dl_tlsdesc_dynamic
+-	.type	_dl_tlsdesc_dynamic,@function
+-
+-     /* %rax points to the TLS descriptor, such that 0(%rax) points to
+-	_dl_tlsdesc_dynamic itself, and 8(%rax) points to a struct
+-	tlsdesc_dynamic_arg object.  It must return in %rax the offset
+-	between the thread pointer and the object denoted by the
+-	argument, without clobbering any registers.
+-
+-	The assembly code that follows is a rendition of the following
+-	C code, hand-optimized a little bit.
+-
+-ptrdiff_t
+-_dl_tlsdesc_dynamic (register struct tlsdesc *tdp asm ("%rax"))
+-{
+-  struct tlsdesc_dynamic_arg *td = tdp->arg;
+-  dtv_t *dtv = *(dtv_t **)((char *)__thread_pointer + DTV_OFFSET);
+-  if (__builtin_expect (td->gen_count <= dtv[0].counter
+-			&& (dtv[td->tlsinfo.ti_module].pointer.val
+-			    != TLS_DTV_UNALLOCATED),
+-			1))
+-    return dtv[td->tlsinfo.ti_module].pointer.val + td->tlsinfo.ti_offset
+-      - __thread_pointer;
+-
+-  return __tls_get_addr_internal (&td->tlsinfo) - __thread_pointer;
+-}
+-*/
+-	cfi_startproc
+-	.align 16
+-_dl_tlsdesc_dynamic:
+-	_CET_ENDBR
+-	/* Preserve call-clobbered registers that we modify.
+-	   We need two scratch regs anyway.  */
+-	movq	%rsi, -16(%rsp)
+-	mov	%fs:DTV_OFFSET, %RSI_LP
+-	movq	%rdi, -8(%rsp)
+-	movq	TLSDESC_ARG(%rax), %rdi
+-	movq	(%rsi), %rax
+-	cmpq	%rax, TLSDESC_GEN_COUNT(%rdi)
+-	ja	.Lslow
+-	movq	TLSDESC_MODID(%rdi), %rax
+-	salq	$4, %rax
+-	movq	(%rax,%rsi), %rax
+-	cmpq	$-1, %rax
+-	je	.Lslow
+-	addq	TLSDESC_MODOFF(%rdi), %rax
+-.Lret:
+-	movq	-16(%rsp), %rsi
+-	sub	%fs:0, %RAX_LP
+-	movq	-8(%rsp), %rdi
+-	ret
+-.Lslow:
+-	/* Besides rdi and rsi, saved above, save rdx, rcx, r8, r9,
+-	   r10 and r11.  Also, align the stack, that's off by 8 bytes.	*/
+-	subq	$72, %rsp
+-	cfi_adjust_cfa_offset (72)
+-	movq	%rdx, 8(%rsp)
+-	movq	%rcx, 16(%rsp)
+-	movq	%r8, 24(%rsp)
+-	movq	%r9, 32(%rsp)
+-	movq	%r10, 40(%rsp)
+-	movq	%r11, 48(%rsp)
+-	/* %rdi already points to the tlsinfo data structure.  */
+-	call	HIDDEN_JUMPTARGET (__tls_get_addr)
+-	movq	8(%rsp), %rdx
+-	movq	16(%rsp), %rcx
+-	movq	24(%rsp), %r8
+-	movq	32(%rsp), %r9
+-	movq	40(%rsp), %r10
+-	movq	48(%rsp), %r11
+-	addq	$72, %rsp
+-	cfi_adjust_cfa_offset (-72)
+-	jmp	.Lret
+-	cfi_endproc
+-	.size	_dl_tlsdesc_dynamic, .-_dl_tlsdesc_dynamic
++# define USE_FXSAVE
++# define STATE_SAVE_ALIGNMENT	16
++# define _dl_tlsdesc_dynamic	_dl_tlsdesc_dynamic_fxsave
++# include "dl-tlsdesc-dynamic.h"
++# undef _dl_tlsdesc_dynamic
++# undef USE_FXSAVE
++
++# define USE_XSAVE
++# define STATE_SAVE_ALIGNMENT	64
++# define _dl_tlsdesc_dynamic	_dl_tlsdesc_dynamic_xsave
++# include "dl-tlsdesc-dynamic.h"
++# undef _dl_tlsdesc_dynamic
++# undef USE_XSAVE
++
++# define USE_XSAVEC
++# define STATE_SAVE_ALIGNMENT	64
++# define _dl_tlsdesc_dynamic	_dl_tlsdesc_dynamic_xsavec
++# include "dl-tlsdesc-dynamic.h"
++# undef _dl_tlsdesc_dynamic
++# undef USE_XSAVEC
+ #endif /* SHARED */
+diff --git a/sysdeps/x86_64/dl-trampoline-save.h b/sysdeps/x86_64/dl-trampoline-save.h
+new file mode 100644
+index 0000000000..84eac4a8ac
+--- /dev/null
++++ b/sysdeps/x86_64/dl-trampoline-save.h
+@@ -0,0 +1,34 @@
++/* x86-64 PLT trampoline register save macros.
++   Copyright (C) 2024 Free Software Foundation, Inc.
++   This file is part of the GNU C Library.
++
++   The GNU C Library is free software; you can redistribute it and/or
++   modify it under the terms of the GNU Lesser General Public
++   License as published by the Free Software Foundation; either
++   version 2.1 of the License, or (at your option) any later version.
++
++   The GNU C Library is distributed in the hope that it will be useful,
++   but WITHOUT ANY WARRANTY; without even the implied warranty of
++   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
++   Lesser General Public License for more details.
++
++   You should have received a copy of the GNU Lesser General Public
++   License along with the GNU C Library; if not, see
++   <https://www.gnu.org/licenses/>.  */
++
++#ifndef DL_STACK_ALIGNMENT
++/* Due to GCC bug:
++
++   https://gcc.gnu.org/bugzilla/show_bug.cgi?id=58066
++
++   __tls_get_addr may be called with 8-byte stack alignment.  Although
++   this bug has been fixed in GCC 4.9.4, 5.3 and 6, we can't assume
++   that stack will be always aligned at 16 bytes.  */
++# define DL_STACK_ALIGNMENT 8
++#endif
++
++/* True if _dl_runtime_resolve should align stack for STATE_SAVE or align
++   stack to 16 bytes before calling _dl_fixup.  */
++#define DL_RUNTIME_RESOLVE_REALIGN_STACK \
++  (STATE_SAVE_ALIGNMENT > DL_STACK_ALIGNMENT \
++   || 16 > DL_STACK_ALIGNMENT)
+diff --git a/sysdeps/x86_64/dl-trampoline-state.h b/sysdeps/x86_64/dl-trampoline-state.h
+new file mode 100644
+index 0000000000..575f120797
+--- /dev/null
++++ b/sysdeps/x86_64/dl-trampoline-state.h
+@@ -0,0 +1,51 @@
++/* x86-64 PLT dl-trampoline state macros.
++   Copyright (C) 2024 Free Software Foundation, Inc.
++   This file is part of the GNU C Library.
++
++   The GNU C Library is free software; you can redistribute it and/or
++   modify it under the terms of the GNU Lesser General Public
++   License as published by the Free Software Foundation; either
++   version 2.1 of the License, or (at your option) any later version.
++
++   The GNU C Library is distributed in the hope that it will be useful,
++   but WITHOUT ANY WARRANTY; without even the implied warranty of
++   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
++   Lesser General Public License for more details.
++
++   You should have received a copy of the GNU Lesser General Public
++   License along with the GNU C Library; if not, see
++   <https://www.gnu.org/licenses/>.  */
++
++#if (STATE_SAVE_ALIGNMENT % 16) != 0
++# error STATE_SAVE_ALIGNMENT must be multiple of 16
++#endif
++
++#if (STATE_SAVE_OFFSET % STATE_SAVE_ALIGNMENT) != 0
++# error STATE_SAVE_OFFSET must be multiple of STATE_SAVE_ALIGNMENT
++#endif
++
++#if DL_RUNTIME_RESOLVE_REALIGN_STACK
++/* Local stack area before jumping to function address: RBX.  */
++# define LOCAL_STORAGE_AREA	8
++# define BASE			rbx
++# ifdef USE_FXSAVE
++/* Use fxsave to save XMM registers.  */
++#  define REGISTER_SAVE_AREA	(512 + STATE_SAVE_OFFSET)
++#  if (REGISTER_SAVE_AREA % 16) != 0
++#   error REGISTER_SAVE_AREA must be multiple of 16
++#  endif
++# endif
++#else
++# ifndef USE_FXSAVE
++#  error USE_FXSAVE must be defined
++# endif
++/* Use fxsave to save XMM registers.  */
++# define REGISTER_SAVE_AREA	(512 + STATE_SAVE_OFFSET + 8)
++/* Local stack area before jumping to function address:  All saved
++   registers.  */
++# define LOCAL_STORAGE_AREA	REGISTER_SAVE_AREA
++# define BASE			rsp
++# if (REGISTER_SAVE_AREA % 16) != 8
++#  error REGISTER_SAVE_AREA must be odd multiple of 8
++# endif
++#endif
+diff --git a/sysdeps/x86_64/dl-trampoline.S b/sysdeps/x86_64/dl-trampoline.S
+index b2e7e0f69b..87c5137837 100644
+--- a/sysdeps/x86_64/dl-trampoline.S
++++ b/sysdeps/x86_64/dl-trampoline.S
+@@ -22,25 +22,7 @@
+ #include <features-offsets.h>
+ #include <link-defines.h>
+ #include <isa-level.h>
+-
+-#ifndef DL_STACK_ALIGNMENT
+-/* Due to GCC bug:
+-
+-   https://gcc.gnu.org/bugzilla/show_bug.cgi?id=58066
+-
+-   __tls_get_addr may be called with 8-byte stack alignment.  Although
+-   this bug has been fixed in GCC 4.9.4, 5.3 and 6, we can't assume
+-   that stack will be always aligned at 16 bytes.  We use unaligned
+-   16-byte move to load and store SSE registers, which has no penalty
+-   on modern processors if stack is 16-byte aligned.  */
+-# define DL_STACK_ALIGNMENT 8
+-#endif
+-
+-/* True if _dl_runtime_resolve should align stack for STATE_SAVE or align
+-   stack to 16 bytes before calling _dl_fixup.  */
+-#define DL_RUNTIME_RESOLVE_REALIGN_STACK \
+-  (STATE_SAVE_ALIGNMENT > DL_STACK_ALIGNMENT \
+-   || 16 > DL_STACK_ALIGNMENT)
++#include "dl-trampoline-save.h"
+ 
+ /* Area on stack to save and restore registers used for parameter
+    passing when calling _dl_fixup.  */
+diff --git a/sysdeps/x86_64/dl-trampoline.h b/sysdeps/x86_64/dl-trampoline.h
+index f55c6ea040..d9ccfb40d4 100644
+--- a/sysdeps/x86_64/dl-trampoline.h
++++ b/sysdeps/x86_64/dl-trampoline.h
+@@ -27,39 +27,7 @@
+ # undef LOCAL_STORAGE_AREA
+ # undef BASE
+ 
+-# if (STATE_SAVE_ALIGNMENT % 16) != 0
+-#  error STATE_SAVE_ALIGNMENT must be multiple of 16
+-# endif
+-
+-# if (STATE_SAVE_OFFSET % STATE_SAVE_ALIGNMENT) != 0
+-#  error STATE_SAVE_OFFSET must be multiple of STATE_SAVE_ALIGNMENT
+-# endif
+-
+-# if DL_RUNTIME_RESOLVE_REALIGN_STACK
+-/* Local stack area before jumping to function address: RBX.  */
+-#  define LOCAL_STORAGE_AREA	8
+-#  define BASE			rbx
+-#  ifdef USE_FXSAVE
+-/* Use fxsave to save XMM registers.  */
+-#   define REGISTER_SAVE_AREA	(512 + STATE_SAVE_OFFSET)
+-#   if (REGISTER_SAVE_AREA % 16) != 0
+-#    error REGISTER_SAVE_AREA must be multiple of 16
+-#   endif
+-#  endif
+-# else
+-#  ifndef USE_FXSAVE
+-#   error USE_FXSAVE must be defined
+-#  endif
+-/* Use fxsave to save XMM registers.  */
+-#  define REGISTER_SAVE_AREA	(512 + STATE_SAVE_OFFSET + 8)
+-/* Local stack area before jumping to function address:  All saved
+-   registers.  */
+-#  define LOCAL_STORAGE_AREA	REGISTER_SAVE_AREA
+-#  define BASE			rsp
+-#  if (REGISTER_SAVE_AREA % 16) != 8
+-#   error REGISTER_SAVE_AREA must be odd multiple of 8
+-#  endif
+-# endif
++# include "dl-trampoline-state.h"
+ 
+ 	.globl _dl_runtime_resolve
+ 	.hidden _dl_runtime_resolve
+
+commit 853e915fdd6ae6c5f1a7a68d2594ec8dbfef1286
+Author: H.J. Lu <hjl.tools@gmail.com>
+Date:   Wed Feb 28 12:08:03 2024 -0800
+
+    x86-64: Update _dl_tlsdesc_dynamic to preserve AMX registers
+    
+    _dl_tlsdesc_dynamic should also preserve AMX registers which are
+    caller-saved.  Add X86_XSTATE_TILECFG_ID and X86_XSTATE_TILEDATA_ID
+    to x86-64 TLSDESC_CALL_STATE_SAVE_MASK.  Compute the AMX state size
+    and save it in xsave_state_full_size which is only used by
+    _dl_tlsdesc_dynamic_xsave and _dl_tlsdesc_dynamic_xsavec.  This fixes
+    the AMX part of BZ #31372.  Tested on AMX processor.
+    
+    AMX test is enabled only for compilers with the fix for
+    
+    https://gcc.gnu.org/bugzilla/show_bug.cgi?id=114098
+    
+    GCC 14 and GCC 11/12/13 branches have the bug fix.
+    Reviewed-by: Sunil K Pandey <skpgkp2@gmail.com>
+    
+    (cherry picked from commit 9b7091415af47082664717210ac49d51551456ab)
+
+diff --git a/sysdeps/unix/sysv/linux/x86_64/Makefile b/sysdeps/unix/sysv/linux/x86_64/Makefile
+index 4223feb95f..9a1e7aa646 100644
+--- a/sysdeps/unix/sysv/linux/x86_64/Makefile
++++ b/sysdeps/unix/sysv/linux/x86_64/Makefile
+@@ -63,6 +63,33 @@ $(objpfx)libx86-64-isa-level%.os: $(..)/sysdeps/unix/sysv/linux/x86_64/x86-64-is
+ $(objpfx)libx86-64-isa-level.so: $(objpfx)libx86-64-isa-level-1.so
+ 	cp $< $@
+ endif
++
++ifeq (yes,$(have-mamx-tile))
++tests += \
++  tst-gnu2-tls2-amx \
++# tests
++
++modules-names += \
++  tst-gnu2-tls2-amx-mod0 \
++  tst-gnu2-tls2-amx-mod1 \
++  tst-gnu2-tls2-amx-mod2 \
++# modules-names
++
++$(objpfx)tst-gnu2-tls2-amx: $(shared-thread-library)
++$(objpfx)tst-gnu2-tls2-amx.out: \
++  $(objpfx)tst-gnu2-tls2-amx-mod0.so \
++  $(objpfx)tst-gnu2-tls2-amx-mod1.so \
++  $(objpfx)tst-gnu2-tls2-amx-mod2.so
++$(objpfx)tst-gnu2-tls2-amx-mod0.so: $(libsupport)
++$(objpfx)tst-gnu2-tls2-amx-mod1.so: $(libsupport)
++$(objpfx)tst-gnu2-tls2-amx-mod2.so: $(libsupport)
++
++CFLAGS-tst-gnu2-tls2-amx.c += -mamx-tile
++CFLAGS-tst-gnu2-tls2-amx-mod0.c += -mamx-tile -mtls-dialect=gnu2
++CFLAGS-tst-gnu2-tls2-amx-mod1.c += -mamx-tile -mtls-dialect=gnu2
++CFLAGS-tst-gnu2-tls2-amx-mod2.c += -mamx-tile -mtls-dialect=gnu2
++endif
++
+ endif # $(subdir) == elf
+ 
+ ifneq ($(enable-cet),no)
+diff --git a/sysdeps/unix/sysv/linux/x86_64/include/asm/prctl.h b/sysdeps/unix/sysv/linux/x86_64/include/asm/prctl.h
+index 2f511321ad..ef4631bf4b 100644
+--- a/sysdeps/unix/sysv/linux/x86_64/include/asm/prctl.h
++++ b/sysdeps/unix/sysv/linux/x86_64/include/asm/prctl.h
+@@ -20,3 +20,8 @@
+ # define ARCH_SHSTK_SHSTK		0x1
+ # define ARCH_SHSTK_WRSS		0x2
+ #endif
++
++#ifndef ARCH_GET_XCOMP_PERM
++# define ARCH_GET_XCOMP_PERM		0x1022
++# define ARCH_REQ_XCOMP_PERM		0x1023
++#endif
+diff --git a/sysdeps/unix/sysv/linux/x86_64/tst-gnu2-tls2-amx-mod0.c b/sysdeps/unix/sysv/linux/x86_64/tst-gnu2-tls2-amx-mod0.c
+new file mode 100644
+index 0000000000..2e0c7b91b7
+--- /dev/null
++++ b/sysdeps/unix/sysv/linux/x86_64/tst-gnu2-tls2-amx-mod0.c
+@@ -0,0 +1,2 @@
++#include "tst-gnu2-tls2-amx.h"
++#include <tst-gnu2-tls2mod0.c>
+diff --git a/sysdeps/unix/sysv/linux/x86_64/tst-gnu2-tls2-amx-mod1.c b/sysdeps/unix/sysv/linux/x86_64/tst-gnu2-tls2-amx-mod1.c
+new file mode 100644
+index 0000000000..b8a8ccf1c1
+--- /dev/null
++++ b/sysdeps/unix/sysv/linux/x86_64/tst-gnu2-tls2-amx-mod1.c
+@@ -0,0 +1,2 @@
++#include "tst-gnu2-tls2-amx.h"
++#include <tst-gnu2-tls2mod1.c>
+diff --git a/sysdeps/unix/sysv/linux/x86_64/tst-gnu2-tls2-amx-mod2.c b/sysdeps/unix/sysv/linux/x86_64/tst-gnu2-tls2-amx-mod2.c
+new file mode 100644
+index 0000000000..cdf4a8f363
+--- /dev/null
++++ b/sysdeps/unix/sysv/linux/x86_64/tst-gnu2-tls2-amx-mod2.c
+@@ -0,0 +1,2 @@
++#include "tst-gnu2-tls2-amx.h"
++#include <tst-gnu2-tls2mod2.c>
+diff --git a/sysdeps/unix/sysv/linux/x86_64/tst-gnu2-tls2-amx.c b/sysdeps/unix/sysv/linux/x86_64/tst-gnu2-tls2-amx.c
+new file mode 100644
+index 0000000000..ae4dd82556
+--- /dev/null
++++ b/sysdeps/unix/sysv/linux/x86_64/tst-gnu2-tls2-amx.c
+@@ -0,0 +1,83 @@
++/* Test TLSDESC relocation with AMX.
++   Copyright (C) 2024 Free Software Foundation, Inc.
++   This file is part of the GNU C Library.
++
++   The GNU C Library is free software; you can redistribute it and/or
++   modify it under the terms of the GNU Lesser General Public
++   License as published by the Free Software Foundation; either
++   version 2.1 of the License, or (at your option) any later version.
++
++   The GNU C Library is distributed in the hope that it will be useful,
++   but WITHOUT ANY WARRANTY; without even the implied warranty of
++   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
++   Lesser General Public License for more details.
++
++   You should have received a copy of the GNU Lesser General Public
++   License along with the GNU C Library; if not, see
++   <http://www.gnu.org/licenses/>.  */
++
++#include <stdbool.h>
++#include <asm/prctl.h>
++#include <support/check.h>
++#include "tst-gnu2-tls2-amx.h"
++
++extern int arch_prctl (int, ...);
++
++#define X86_XSTATE_TILECFG_ID	17
++#define X86_XSTATE_TILEDATA_ID	18
++
++/* Initialize tile config.  */
++__attribute__ ((noinline, noclone))
++static void
++init_tile_config (__tilecfg *tileinfo)
++{
++  int i;
++  tileinfo->palette_id = 1;
++  tileinfo->start_row = 0;
++
++  tileinfo->colsb[0] = MAX_ROWS;
++  tileinfo->rows[0] = MAX_ROWS;
++
++  for (i = 1; i < 4; ++i)
++  {
++    tileinfo->colsb[i] = MAX_COLS;
++    tileinfo->rows[i] = MAX_ROWS;
++  }
++
++  _tile_loadconfig (tileinfo);
++}
++
++static bool
++enable_amx (void)
++{
++  uint64_t bitmask;
++  if (arch_prctl (ARCH_GET_XCOMP_PERM, &bitmask) != 0)
++    return false;
++
++  if ((bitmask & (1 << X86_XSTATE_TILECFG_ID)) == 0)
++    return false;
++
++  if (arch_prctl (ARCH_REQ_XCOMP_PERM, X86_XSTATE_TILEDATA_ID) != 0)
++    return false;
++
++  /* Load tile configuration.  */
++  __tilecfg tile_data = { 0 };
++  init_tile_config (&tile_data);
++
++  return true;
++}
++
++/* An architecture can define it to clobber caller-saved registers in
++   malloc below to verify that the implicit TLSDESC call won't change
++   caller-saved registers.  */
++static void
++clear_tile_register (void)
++{
++  _tile_zero (2);
++}
++
++#define MOD(i) "tst-gnu2-tls2-amx-mod" #i ".so"
++#define IS_SUPPORTED()	enable_amx ()
++#define PREPARE_MALLOC() clear_tile_register ()
++
++#include <elf/tst-gnu2-tls2.c>
+diff --git a/sysdeps/unix/sysv/linux/x86_64/tst-gnu2-tls2-amx.h b/sysdeps/unix/sysv/linux/x86_64/tst-gnu2-tls2-amx.h
+new file mode 100644
+index 0000000000..1845a3caba
+--- /dev/null
++++ b/sysdeps/unix/sysv/linux/x86_64/tst-gnu2-tls2-amx.h
+@@ -0,0 +1,63 @@
++/* Test TLSDESC relocation with AMX.
++   Copyright (C) 2024 Free Software Foundation, Inc.
++   This file is part of the GNU C Library.
++
++   The GNU C Library is free software; you can redistribute it and/or
++   modify it under the terms of the GNU Lesser General Public
++   License as published by the Free Software Foundation; either
++   version 2.1 of the License, or (at your option) any later version.
++
++   The GNU C Library is distributed in the hope that it will be useful,
++   but WITHOUT ANY WARRANTY; without even the implied warranty of
++   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
++   Lesser General Public License for more details.
++
++   You should have received a copy of the GNU Lesser General Public
++   License along with the GNU C Library; if not, see
++   <http://www.gnu.org/licenses/>.  */
++
++#include <stdint.h>
++#include <string.h>
++#include <x86intrin.h>
++#include <support/check.h>
++
++#define MAX_ROWS 16
++#define MAX_COLS 64
++#define MAX 1024
++#define STRIDE 64
++
++typedef struct __tile_config
++{
++  uint8_t palette_id;
++  uint8_t start_row;
++  uint8_t reserved_0[14];
++  uint16_t colsb[16];
++  uint8_t rows[16];
++} __tilecfg __attribute__ ((aligned (64)));
++
++/* Initialize int8_t buffer */
++static inline void
++init_buffer (int8_t *buf, int8_t value)
++{
++  int rows, colsb, i, j;
++  rows  = MAX_ROWS;
++  colsb = MAX_COLS;
++
++  for (i = 0; i < rows; i++)
++    for (j = 0; j < colsb; j++)
++      buf[i * colsb + j] = value;
++}
++
++#define BEFORE_TLSDESC_CALL()					\
++  int8_t src[MAX];						\
++  int8_t res[MAX];						\
++  /* Initialize src with data  */				\
++  init_buffer (src, 2);						\
++  /* Load tile rows from memory.  */				\
++  _tile_loadd (2, src, STRIDE);
++
++#define AFTER_TLSDESC_CALL()					\
++  /* Store the tile data to memory.  */				\
++  _tile_stored (2, res, STRIDE);				\
++  _tile_release ();						\
++  TEST_VERIFY_EXIT (memcmp (src, res, sizeof (res)) == 0);
+diff --git a/sysdeps/x86/cpu-features-offsets.sym b/sysdeps/x86/cpu-features-offsets.sym
+index 6a8fd29813..21fc88d651 100644
+--- a/sysdeps/x86/cpu-features-offsets.sym
++++ b/sysdeps/x86/cpu-features-offsets.sym
+@@ -3,3 +3,4 @@
+ #include <ldsodefs.h>
+ 
+ XSAVE_STATE_SIZE_OFFSET	offsetof (struct cpu_features, xsave_state_size)
++XSAVE_STATE_FULL_SIZE_OFFSET offsetof (struct cpu_features, xsave_state_full_size)
+diff --git a/sysdeps/x86/cpu-features.c b/sysdeps/x86/cpu-features.c
+index 835113b42f..d71e8d3d2e 100644
+--- a/sysdeps/x86/cpu-features.c
++++ b/sysdeps/x86/cpu-features.c
+@@ -307,6 +307,8 @@ update_active (struct cpu_features *cpu_features)
+ 	  __cpuid_count (0xd, 0, eax, ebx, ecx, edx);
+ 	  if (ebx != 0)
+ 	    {
++	      /* NB: On AMX capable processors, ebx always includes AMX
++		 states.  */
+ 	      unsigned int xsave_state_full_size
+ 		= ALIGN_UP (ebx + STATE_SAVE_OFFSET, 64);
+ 
+@@ -320,6 +322,11 @@ update_active (struct cpu_features *cpu_features)
+ 		{
+ 		  unsigned int xstate_comp_offsets[32];
+ 		  unsigned int xstate_comp_sizes[32];
++#ifdef __x86_64__
++		  unsigned int xstate_amx_comp_offsets[32];
++		  unsigned int xstate_amx_comp_sizes[32];
++		  unsigned int amx_ecx;
++#endif
+ 		  unsigned int i;
+ 
+ 		  xstate_comp_offsets[0] = 0;
+@@ -327,16 +334,39 @@ update_active (struct cpu_features *cpu_features)
+ 		  xstate_comp_offsets[2] = 576;
+ 		  xstate_comp_sizes[0] = 160;
+ 		  xstate_comp_sizes[1] = 256;
++#ifdef __x86_64__
++		  xstate_amx_comp_offsets[0] = 0;
++		  xstate_amx_comp_offsets[1] = 160;
++		  xstate_amx_comp_offsets[2] = 576;
++		  xstate_amx_comp_sizes[0] = 160;
++		  xstate_amx_comp_sizes[1] = 256;
++#endif
+ 
+ 		  for (i = 2; i < 32; i++)
+ 		    {
+-		      if ((STATE_SAVE_MASK & (1 << i)) != 0)
++		      if ((FULL_STATE_SAVE_MASK & (1 << i)) != 0)
+ 			{
+ 			  __cpuid_count (0xd, i, eax, ebx, ecx, edx);
+-			  xstate_comp_sizes[i] = eax;
++#ifdef __x86_64__
++			  /* Include this in xsave_state_full_size.  */
++			  amx_ecx = ecx;
++			  xstate_amx_comp_sizes[i] = eax;
++			  if ((AMX_STATE_SAVE_MASK & (1 << i)) != 0)
++			    {
++			      /* Exclude this from xsave_state_size.  */
++			      ecx = 0;
++			      xstate_comp_sizes[i] = 0;
++			    }
++			  else
++#endif
++			    xstate_comp_sizes[i] = eax;
+ 			}
+ 		      else
+ 			{
++#ifdef __x86_64__
++			  amx_ecx = 0;
++			  xstate_amx_comp_sizes[i] = 0;
++#endif
+ 			  ecx = 0;
+ 			  xstate_comp_sizes[i] = 0;
+ 			}
+@@ -349,6 +379,15 @@ update_active (struct cpu_features *cpu_features)
+ 			  if ((ecx & (1 << 1)) != 0)
+ 			    xstate_comp_offsets[i]
+ 			      = ALIGN_UP (xstate_comp_offsets[i], 64);
++#ifdef __x86_64__
++			  xstate_amx_comp_offsets[i]
++			    = (xstate_amx_comp_offsets[i - 1]
++			       + xstate_amx_comp_sizes[i - 1]);
++			  if ((amx_ecx & (1 << 1)) != 0)
++			    xstate_amx_comp_offsets[i]
++			      = ALIGN_UP (xstate_amx_comp_offsets[i],
++					  64);
++#endif
+ 			}
+ 		    }
+ 
+@@ -357,6 +396,18 @@ update_active (struct cpu_features *cpu_features)
+ 		    = xstate_comp_offsets[31] + xstate_comp_sizes[31];
+ 		  if (size)
+ 		    {
++#ifdef __x86_64__
++		      unsigned int amx_size
++			= (xstate_amx_comp_offsets[31]
++			   + xstate_amx_comp_sizes[31]);
++		      amx_size = ALIGN_UP (amx_size + STATE_SAVE_OFFSET,
++					   64);
++		      /* Set xsave_state_full_size to the compact AMX
++			 state size for XSAVEC.  NB: xsave_state_full_size
++			 is only used in _dl_tlsdesc_dynamic_xsave and
++			 _dl_tlsdesc_dynamic_xsavec.  */
++		      cpu_features->xsave_state_full_size = amx_size;
++#endif
+ 		      cpu_features->xsave_state_size
+ 			= ALIGN_UP (size + STATE_SAVE_OFFSET, 64);
+ 		      CPU_FEATURE_SET (cpu_features, XSAVEC);
+diff --git a/sysdeps/x86/include/cpu-features.h b/sysdeps/x86/include/cpu-features.h
+index b9bf3115b6..cd7bd27cf3 100644
+--- a/sysdeps/x86/include/cpu-features.h
++++ b/sysdeps/x86/include/cpu-features.h
+@@ -934,6 +934,8 @@ struct cpu_features
+   /* The full state size for XSAVE when XSAVEC is disabled by
+ 
+      GLIBC_TUNABLES=glibc.cpu.hwcaps=-XSAVEC
++
++     and the AMX state size when XSAVEC is available.
+    */
+   unsigned int xsave_state_full_size;
+   /* Data cache size for use in memory and string routines, typically
+diff --git a/sysdeps/x86/sysdep.h b/sysdeps/x86/sysdep.h
+index 485cad9c02..db8e576e91 100644
+--- a/sysdeps/x86/sysdep.h
++++ b/sysdeps/x86/sysdep.h
+@@ -56,6 +56,14 @@
+    | (1 << X86_XSTATE_ZMM_H_ID) 	\
+    | (1 << X86_XSTATE_ZMM_ID)		\
+    | (1 << X86_XSTATE_APX_F_ID))
++
++/* AMX state mask.  */
++# define AMX_STATE_SAVE_MASK		\
++  ((1 << X86_XSTATE_TILECFG_ID) | (1 << X86_XSTATE_TILEDATA_ID))
++
++/* States to be included in xsave_state_full_size.  */
++# define FULL_STATE_SAVE_MASK		\
++  (STATE_SAVE_MASK | AMX_STATE_SAVE_MASK)
+ #else
+ /* Offset for fxsave/xsave area used by _dl_tlsdesc_dynamic.  Since i386
+    doesn't have red-zone, use 0 here.  */
+@@ -68,13 +76,17 @@
+    | (1 << X86_XSTATE_BNDREGS_ID)	\
+    | (1 << X86_XSTATE_K_ID)		\
+    | (1 << X86_XSTATE_ZMM_H_ID))
++
++/* States to be included in xsave_state_size.  */
++# define FULL_STATE_SAVE_MASK		STATE_SAVE_MASK
+ #endif
+ 
+ /* States which should be saved for TLSDESC_CALL and TLS_DESC_CALL.
+-   Compiler assumes that all registers, including x87 FPU stack registers,
+-   are unchanged after CALL, except for EFLAGS and RAX/EAX.  */
++   Compiler assumes that all registers, including AMX and x87 FPU
++   stack registers, are unchanged after CALL, except for EFLAGS and
++   RAX/EAX.  */
+ #define TLSDESC_CALL_STATE_SAVE_MASK	\
+-  (STATE_SAVE_MASK | (1 << X86_XSTATE_X87_ID))
++  (FULL_STATE_SAVE_MASK | (1 << X86_XSTATE_X87_ID))
+ 
+ /* Constants for bits in __x86_string_control:  */
+ 
+diff --git a/sysdeps/x86_64/configure b/sysdeps/x86_64/configure
+index 418cc4a9b8..04a534fa12 100755
+--- a/sysdeps/x86_64/configure
++++ b/sysdeps/x86_64/configure
+@@ -134,6 +134,34 @@ fi
+ config_vars="$config_vars
+ enable-cet = $enable_cet"
+ 
++# Check if -mamx-tile works properly.
++{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether -mamx-tile works properly" >&5
++printf %s "checking whether -mamx-tile works properly... " >&6; }
++if test ${libc_cv_x86_have_amx_tile+y}
++then :
++  printf %s "(cached) " >&6
++else $as_nop
++  cat > conftest.c <<EOF
++#include <x86intrin.h>
++EOF
++	       libc_cv_x86_have_amx_tile=no
++	       if { ac_try='${CC-cc} -E $CFLAGS -mamx-tile conftest.c > conftest.i'
++  { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_try\""; } >&5
++  (eval $ac_try) 2>&5
++  ac_status=$?
++  printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
++  test $ac_status = 0; }; }; then
++		 if grep -q __builtin_ia32_ldtilecfg conftest.i; then
++		   libc_cv_x86_have_amx_tile=yes
++	         fi
++	       fi
++	       rm -rf conftest*
++fi
++{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $libc_cv_x86_have_amx_tile" >&5
++printf "%s\n" "$libc_cv_x86_have_amx_tile" >&6; }
++config_vars="$config_vars
++have-mamx-tile = $libc_cv_x86_have_amx_tile"
++
+ test -n "$critic_missing" && as_fn_error $? "
+ *** $critic_missing" "$LINENO" 5
+ 
+diff --git a/sysdeps/x86_64/configure.ac b/sysdeps/x86_64/configure.ac
+index d1f803c02e..c714c47351 100644
+--- a/sysdeps/x86_64/configure.ac
++++ b/sysdeps/x86_64/configure.ac
+@@ -61,5 +61,20 @@ elif test $enable_cet = permissive; then
+ fi
+ LIBC_CONFIG_VAR([enable-cet], [$enable_cet])
+ 
++# Check if -mamx-tile works properly.
++AC_CACHE_CHECK(whether -mamx-tile works properly,
++	       libc_cv_x86_have_amx_tile, [dnl
++cat > conftest.c <<EOF
++#include <x86intrin.h>
++EOF
++	       libc_cv_x86_have_amx_tile=no
++	       if AC_TRY_COMMAND(${CC-cc} -E $CFLAGS -mamx-tile conftest.c > conftest.i); then
++		 if grep -q __builtin_ia32_ldtilecfg conftest.i; then
++		   libc_cv_x86_have_amx_tile=yes
++	         fi
++	       fi
++	       rm -rf conftest*])
++LIBC_CONFIG_VAR([have-mamx-tile], [$libc_cv_x86_have_amx_tile])
++
+ test -n "$critic_missing" && AC_MSG_ERROR([
+ *** $critic_missing])
+diff --git a/sysdeps/x86_64/dl-tlsdesc-dynamic.h b/sysdeps/x86_64/dl-tlsdesc-dynamic.h
+index 0c2e8d5320..9f02cfc3eb 100644
+--- a/sysdeps/x86_64/dl-tlsdesc-dynamic.h
++++ b/sysdeps/x86_64/dl-tlsdesc-dynamic.h
+@@ -99,7 +99,7 @@ _dl_tlsdesc_dynamic:
+ # endif
+ #else
+ 	/* Allocate stack space of the required size to save the state.  */
+-	sub	_rtld_local_ro+RTLD_GLOBAL_RO_DL_X86_CPU_FEATURES_OFFSET+XSAVE_STATE_SIZE_OFFSET(%rip), %RSP_LP
++	sub	_rtld_local_ro+RTLD_GLOBAL_RO_DL_X86_CPU_FEATURES_OFFSET+XSAVE_STATE_FULL_SIZE_OFFSET(%rip), %RSP_LP
+ #endif
+ 	/* Besides rdi and rsi, saved above, save rcx, rdx, r8, r9,
+ 	   r10 and r11.  */
+
+commit 354cabcb2634abe16da7a2ba5e648aac1204b58e
+Author: H.J. Lu <hjl.tools@gmail.com>
+Date:   Mon Mar 18 06:40:16 2024 -0700
+
+    x86-64: Allocate state buffer space for RDI, RSI and RBX
+    
+    _dl_tlsdesc_dynamic preserves RDI, RSI and RBX before realigning stack.
+    After realigning stack, it saves RCX, RDX, R8, R9, R10 and R11.  Define
+    TLSDESC_CALL_REGISTER_SAVE_AREA to allocate space for RDI, RSI and RBX
+    to avoid clobbering saved RDI, RSI and RBX values on stack by xsave to
+    STATE_SAVE_OFFSET(%rsp).
+    
+       +==================+<- stack frame start aligned at 8 or 16 bytes
+       |                  |<- RDI saved in the red zone
+       |                  |<- RSI saved in the red zone
+       |                  |<- RBX saved in the red zone
+       |                  |<- paddings for stack realignment of 64 bytes
+       |------------------|<- xsave buffer end aligned at 64 bytes
+       |                  |<-
+       |                  |<-
+       |                  |<-
+       |------------------|<- xsave buffer start at STATE_SAVE_OFFSET(%rsp)
+       |                  |<- 8-byte padding for 64-byte alignment
+       |                  |<- 8-byte padding for 64-byte alignment
+       |                  |<- R11
+       |                  |<- R10
+       |                  |<- R9
+       |                  |<- R8
+       |                  |<- RDX
+       |                  |<- RCX
+       +==================+<- RSP aligned at 64 bytes
+    
+    Define TLSDESC_CALL_REGISTER_SAVE_AREA, the total register save area size
+    for all integer registers by adding 24 to STATE_SAVE_OFFSET since RDI, RSI
+    and RBX are saved onto stack without adjusting stack pointer first, using
+    the red-zone.  This fixes BZ #31501.
+    Reviewed-by: Sunil K Pandey <skpgkp2@gmail.com>
+    
+    (cherry picked from commit 717ebfa85c8240d32d0d19d86a484c31c55c9617)
+
+diff --git a/sysdeps/x86/cpu-features.c b/sysdeps/x86/cpu-features.c
+index d71e8d3d2e..6fe1b728c6 100644
+--- a/sysdeps/x86/cpu-features.c
++++ b/sysdeps/x86/cpu-features.c
+@@ -310,7 +310,7 @@ update_active (struct cpu_features *cpu_features)
+ 	      /* NB: On AMX capable processors, ebx always includes AMX
+ 		 states.  */
+ 	      unsigned int xsave_state_full_size
+-		= ALIGN_UP (ebx + STATE_SAVE_OFFSET, 64);
++		= ALIGN_UP (ebx + TLSDESC_CALL_REGISTER_SAVE_AREA, 64);
+ 
+ 	      cpu_features->xsave_state_size
+ 		= xsave_state_full_size;
+@@ -400,8 +400,10 @@ update_active (struct cpu_features *cpu_features)
+ 		      unsigned int amx_size
+ 			= (xstate_amx_comp_offsets[31]
+ 			   + xstate_amx_comp_sizes[31]);
+-		      amx_size = ALIGN_UP (amx_size + STATE_SAVE_OFFSET,
+-					   64);
++		      amx_size
++			= ALIGN_UP ((amx_size
++				     + TLSDESC_CALL_REGISTER_SAVE_AREA),
++				    64);
+ 		      /* Set xsave_state_full_size to the compact AMX
+ 			 state size for XSAVEC.  NB: xsave_state_full_size
+ 			 is only used in _dl_tlsdesc_dynamic_xsave and
+@@ -409,7 +411,8 @@ update_active (struct cpu_features *cpu_features)
+ 		      cpu_features->xsave_state_full_size = amx_size;
+ #endif
+ 		      cpu_features->xsave_state_size
+-			= ALIGN_UP (size + STATE_SAVE_OFFSET, 64);
++			= ALIGN_UP (size + TLSDESC_CALL_REGISTER_SAVE_AREA,
++				    64);
+ 		      CPU_FEATURE_SET (cpu_features, XSAVEC);
+ 		    }
+ 		}
+diff --git a/sysdeps/x86/sysdep.h b/sysdeps/x86/sysdep.h
+index db8e576e91..7359149e17 100644
+--- a/sysdeps/x86/sysdep.h
++++ b/sysdeps/x86/sysdep.h
+@@ -38,14 +38,59 @@
+ #ifdef __x86_64__
+ /* Offset for fxsave/xsave area used by _dl_runtime_resolve.  Also need
+    space to preserve RCX, RDX, RSI, RDI, R8, R9 and RAX.  It must be
+-   aligned to 16 bytes for fxsave and 64 bytes for xsave.
+-
+-   NB: Is is non-zero because of the 128-byte red-zone.  Some registers
+-   are saved on stack without adjusting stack pointer first.  When we
+-   update stack pointer to allocate more space, we need to take the
+-   red-zone into account.  */
++   aligned to 16 bytes for fxsave and 64 bytes for xsave.  It is non-zero
++   because MOV, instead of PUSH, is used to save registers onto stack.
++
++   +==================+<- stack frame start aligned at 8 or 16 bytes
++   |                  |<- paddings for stack realignment of 64 bytes
++   |------------------|<- xsave buffer end aligned at 64 bytes
++   |                  |<-
++   |                  |<-
++   |                  |<-
++   |------------------|<- xsave buffer start at STATE_SAVE_OFFSET(%rsp)
++   |                  |<- 8-byte padding for 64-byte alignment
++   |                  |<- R9
++   |                  |<- R8
++   |                  |<- RDI
++   |                  |<- RSI
++   |                  |<- RDX
++   |                  |<- RCX
++   |                  |<- RAX
++   +==================+<- RSP aligned at 64 bytes
++
++ */
+ # define STATE_SAVE_OFFSET (8 * 7 + 8)
+ 
++/* _dl_tlsdesc_dynamic preserves RDI, RSI and RBX before realigning
++   stack.  After realigning stack, it saves RCX, RDX, R8, R9, R10 and
++   R11.  Allocate space for RDI, RSI and RBX to avoid clobbering saved
++   RDI, RSI and RBX values on stack by xsave.
++
++   +==================+<- stack frame start aligned at 8 or 16 bytes
++   |                  |<- RDI saved in the red zone
++   |                  |<- RSI saved in the red zone
++   |                  |<- RBX saved in the red zone
++   |                  |<- paddings for stack realignment of 64 bytes
++   |------------------|<- xsave buffer end aligned at 64 bytes
++   |                  |<-
++   |                  |<-
++   |                  |<-
++   |------------------|<- xsave buffer start at STATE_SAVE_OFFSET(%rsp)
++   |                  |<- 8-byte padding for 64-byte alignment
++   |                  |<- 8-byte padding for 64-byte alignment
++   |                  |<- R11
++   |                  |<- R10
++   |                  |<- R9
++   |                  |<- R8
++   |                  |<- RDX
++   |                  |<- RCX
++   +==================+<- RSP aligned at 64 bytes
++
++   Define the total register save area size for all integer registers by
++   adding 24 to STATE_SAVE_OFFSET since RDI, RSI and RBX are saved onto
++   stack without adjusting stack pointer first, using the red-zone.  */
++# define TLSDESC_CALL_REGISTER_SAVE_AREA (STATE_SAVE_OFFSET + 24)
++
+ /* Save SSE, AVX, AVX512, mask, bound and APX registers.  Bound and APX
+    registers are mutually exclusive.  */
+ # define STATE_SAVE_MASK		\
+@@ -66,8 +111,9 @@
+   (STATE_SAVE_MASK | AMX_STATE_SAVE_MASK)
+ #else
+ /* Offset for fxsave/xsave area used by _dl_tlsdesc_dynamic.  Since i386
+-   doesn't have red-zone, use 0 here.  */
++   uses PUSH to save registers onto stack, use 0 here.  */
+ # define STATE_SAVE_OFFSET 0
++# define TLSDESC_CALL_REGISTER_SAVE_AREA 0
+ 
+ /* Save SSE, AVX, AXV512, mask and bound registers.   */
+ # define STATE_SAVE_MASK		\
+diff --git a/sysdeps/x86_64/tst-gnu2-tls2mod1.S b/sysdeps/x86_64/tst-gnu2-tls2mod1.S
+new file mode 100644
+index 0000000000..1d636669ba
+--- /dev/null
++++ b/sysdeps/x86_64/tst-gnu2-tls2mod1.S
+@@ -0,0 +1,87 @@
++/* Check if TLSDESC relocation preserves %rdi, %rsi and %rbx.
++   Copyright (C) 2024 Free Software Foundation, Inc.
++   This file is part of the GNU C Library.
++
++   The GNU C Library is free software; you can redistribute it and/or
++   modify it under the terms of the GNU Lesser General Public
++   License as published by the Free Software Foundation; either
++   version 2.1 of the License, or (at your option) any later version.
++
++   The GNU C Library is distributed in the hope that it will be useful,
++   but WITHOUT ANY WARRANTY; without even the implied warranty of
++   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
++   Lesser General Public License for more details.
++
++   You should have received a copy of the GNU Lesser General Public
++   License along with the GNU C Library; if not, see
++   <http://www.gnu.org/licenses/>.  */
++
++#include <sysdep.h>
++
++/* On AVX512 machines, OFFSET == 40 caused _dl_tlsdesc_dynamic_xsavec
++   to clobber %rdi, %rsi and %rbx.  On Intel AVX CPUs, the state size
++   is 960 bytes and this test didn't fail.  It may be due to the unused
++   last 128 bytes.  On AMD AVX CPUs, the state size is 832 bytes and
++   this test might fail without the fix.  */
++#ifndef OFFSET
++# define OFFSET 40
++#endif
++
++	.text
++	.p2align 4
++	.globl	apply_tls
++	.type	apply_tls, @function
++apply_tls:
++	cfi_startproc
++	_CET_ENDBR
++	pushq	%rbp
++	cfi_def_cfa_offset (16)
++	cfi_offset (6, -16)
++	movdqu	(%RDI_LP), %xmm0
++	lea	tls_var1@TLSDESC(%rip), %RAX_LP
++	mov	%RSP_LP, %RBP_LP
++	cfi_def_cfa_register (6)
++	/* Align stack to 64 bytes.  */
++	and	$-64, %RSP_LP
++	sub	$OFFSET, %RSP_LP
++	pushq	%rbx
++	/* Set %ebx to 0xbadbeef.  */
++	movl	$0xbadbeef, %ebx
++	movl	$0xbadbeef, %esi
++	movq	%rdi, saved_rdi(%rip)
++	movq	%rsi, saved_rsi(%rip)
++	call	*tls_var1@TLSCALL(%RAX_LP)
++	/* Check if _dl_tlsdesc_dynamic preserves %rdi, %rsi and %rbx.  */
++	cmpq	saved_rdi(%rip), %rdi
++	jne	L(hlt)
++	cmpq	saved_rsi(%rip), %rsi
++	jne	L(hlt)
++	cmpl	$0xbadbeef, %ebx
++	jne	L(hlt)
++	add	%fs:0, %RAX_LP
++	movups	%xmm0, 32(%RAX_LP)
++	movdqu	16(%RDI_LP), %xmm1
++	mov	%RAX_LP, %RBX_LP
++	movups	%xmm1, 48(%RAX_LP)
++	lea	32(%RBX_LP), %RAX_LP
++	pop	%rbx
++	leave
++	cfi_def_cfa (7, 8)
++	ret
++L(hlt):
++	hlt
++	cfi_endproc
++	.size	apply_tls, .-apply_tls
++	.hidden	tls_var1
++	.globl	tls_var1
++	.section	.tbss,"awT",@nobits
++	.align 16
++	.type	tls_var1, @object
++	.size	tls_var1, 3200
++tls_var1:
++	.zero	3200
++	.local	saved_rdi
++	.comm	saved_rdi,8,8
++	.local	saved_rsi
++	.comm	saved_rsi,8,8
++	.section	.note.GNU-stack,"",@progbits
+
+commit 15aebdbada54098787715448c94701f17033fc92
+Author: Adhemerval Zanella <adhemerval.zanella@linaro.org>
+Date:   Tue Mar 12 13:21:18 2024 -0300
+
+    Ignore undefined symbols for -mtls-dialect=gnu2
+    
+    So it does not fail for arm config that defaults to -mtp=soft (which
+    issues a call to __aeabi_read_tp).
+    Reviewed-by: H.J. Lu <hjl.tools@gmail.com>
+    
+    (cherry picked from commit 968b0ca9440040a2b31248a572891f0e55c1ab10)
+
+diff --git a/configure b/configure
+index 59ff1e415d..117b48a421 100755
+--- a/configure
++++ b/configure
+@@ -7020,7 +7020,7 @@ void foo (void)
+ }
+ EOF
+ if { ac_try='${CC-cc} $CFLAGS $CPPFLAGS -fPIC -mtls-dialect=gnu2 -nostdlib -nostartfiles
+-		   conftest.c -o conftest 1>&5'
++		   -shared conftest.c -o conftest 1>&5'
+   { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_try\""; } >&5
+   (eval $ac_try) 2>&5
+   ac_status=$?
+diff --git a/configure.ac b/configure.ac
+index 65799e5685..19b88a47a5 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -1297,7 +1297,7 @@ void foo (void)
+ }
+ EOF
+ if AC_TRY_COMMAND([${CC-cc} $CFLAGS $CPPFLAGS -fPIC -mtls-dialect=gnu2 -nostdlib -nostartfiles
+-		   conftest.c -o conftest 1>&AS_MESSAGE_LOG_FD])
++		   -shared conftest.c -o conftest 1>&AS_MESSAGE_LOG_FD])
+ then
+   libc_cv_mtls_dialect_gnu2=yes
+ else
+
+commit a8ba52bde58c69f2b31da62ad2311f119adf6cb9
+Author: Adhemerval Zanella <adhemerval.zanella@linaro.org>
+Date:   Tue Mar 12 13:21:19 2024 -0300
+
+    arm: Update _dl_tlsdesc_dynamic to preserve caller-saved registers (BZ 31372)
+    
+    ARM _dl_tlsdesc_dynamic slow path has two issues:
+    
+      * The ip/r12 is defined by AAPCS as a scratch register, and gcc is
+        used to save the stack pointer before on some function calls.  So it
+        should also be saved/restored as well.  It fixes the tst-gnu2-tls2.
+    
+      * None of the possible VFP registers are saved/restored.  ARM has the
+        additional complexity to have different VFP bank sizes (depending of
+        VFP support by the chip).
+    
+    The tst-gnu2-tls2 test is extended to check for VFP registers, although
+    only for hardfp builds.  Different than setcontext, _dl_tlsdesc_dynamic
+    does not have  HWCAP_ARM_IWMMXT (I don't have a way to properly test
+    it and it is almost a decade since newer hardware was released).
+    
+    With this patch there is no need to mark tst-gnu2-tls2 as XFAIL.
+    
+    Checked on arm-linux-gnueabihf.
+    Reviewed-by: H.J. Lu <hjl.tools@gmail.com>
+    
+    (cherry picked from commit 64c7e344289ed085517c2227d8e3b06388242c13)
+
+diff --git a/config.h.in b/config.h.in
+index 44a34072a4..4d33c63a84 100644
+--- a/config.h.in
++++ b/config.h.in
+@@ -141,6 +141,9 @@
+ /* LOONGARCH floating-point ABI for ld.so.  */
+ #undef LOONGARCH_ABI_FRLEN
+ 
++/* Define whether ARM used hard-float and support VFPvX-D32.  */
++#undef HAVE_ARM_PCS_VFP_D32
++
+ /* Linux specific: minimum supported kernel version.  */
+ #undef	__LINUX_KERNEL_VERSION
+ 
+diff --git a/elf/Makefile b/elf/Makefile
+index c5c37a9147..030db4d207 100644
+--- a/elf/Makefile
++++ b/elf/Makefile
+@@ -3056,10 +3056,6 @@ $(objpfx)tst-gnu2-tls2.out: \
+   $(objpfx)tst-gnu2-tls2mod2.so
+ 
+ ifeq (yes,$(have-mtls-dialect-gnu2))
+-# This test fails if dl_tlsdesc_dynamic doesn't preserve all caller-saved
+-# registers.  See https://sourceware.org/bugzilla/show_bug.cgi?id=31372
+-test-xfail-tst-gnu2-tls2 = yes
+-
+ CFLAGS-tst-tlsgap-mod0.c += -mtls-dialect=gnu2
+ CFLAGS-tst-tlsgap-mod1.c += -mtls-dialect=gnu2
+ CFLAGS-tst-tlsgap-mod2.c += -mtls-dialect=gnu2
+diff --git a/elf/tst-gnu2-tls2.h b/elf/tst-gnu2-tls2.h
+index 77964a57a3..1ade8151e2 100644
+--- a/elf/tst-gnu2-tls2.h
++++ b/elf/tst-gnu2-tls2.h
+@@ -27,6 +27,10 @@ extern struct tls *apply_tls (struct tls *);
+ 
+ /* An architecture can define them to verify that clobber caller-saved
+    registers aren't changed by the implicit TLSDESC call.  */
++#ifndef INIT_TLSDESC_CALL
++# define INIT_TLSDESC_CALL()
++#endif
++
+ #ifndef BEFORE_TLSDESC_CALL
+ # define BEFORE_TLSDESC_CALL()
+ #endif
+diff --git a/elf/tst-gnu2-tls2mod0.c b/elf/tst-gnu2-tls2mod0.c
+index 45556a0e17..3fe3c14277 100644
+--- a/elf/tst-gnu2-tls2mod0.c
++++ b/elf/tst-gnu2-tls2mod0.c
+@@ -16,13 +16,14 @@
+    License along with the GNU C Library; if not, see
+    <https://www.gnu.org/licenses/>.  */
+ 
+-#include "tst-gnu2-tls2.h"
++#include <tst-gnu2-tls2.h>
+ 
+ __thread struct tls tls_var0 __attribute__ ((visibility ("hidden")));
+ 
+ struct tls *
+ apply_tls (struct tls *p)
+ {
++  INIT_TLSDESC_CALL ();
+   BEFORE_TLSDESC_CALL ();
+   tls_var0 = *p;
+   struct tls *ret = &tls_var0;
+diff --git a/elf/tst-gnu2-tls2mod1.c b/elf/tst-gnu2-tls2mod1.c
+index e10b9dbc0a..e210538468 100644
+--- a/elf/tst-gnu2-tls2mod1.c
++++ b/elf/tst-gnu2-tls2mod1.c
+@@ -16,13 +16,14 @@
+    License along with the GNU C Library; if not, see
+    <https://www.gnu.org/licenses/>.  */
+ 
+-#include "tst-gnu2-tls2.h"
++#include <tst-gnu2-tls2.h>
+ 
+ __thread struct tls tls_var1[100] __attribute__ ((visibility ("hidden")));
+ 
+ struct tls *
+ apply_tls (struct tls *p)
+ {
++  INIT_TLSDESC_CALL ();
+   BEFORE_TLSDESC_CALL ();
+   tls_var1[1] = *p;
+   struct tls *ret = &tls_var1[1];
+diff --git a/elf/tst-gnu2-tls2mod2.c b/elf/tst-gnu2-tls2mod2.c
+index 141af51e55..6d3031dc5f 100644
+--- a/elf/tst-gnu2-tls2mod2.c
++++ b/elf/tst-gnu2-tls2mod2.c
+@@ -16,13 +16,14 @@
+    License along with the GNU C Library; if not, see
+    <https://www.gnu.org/licenses/>.  */
+ 
+-#include "tst-gnu2-tls2.h"
++#include <tst-gnu2-tls2.h>
+ 
+ __thread struct tls tls_var2 __attribute__ ((visibility ("hidden")));
+ 
+ struct tls *
+ apply_tls (struct tls *p)
+ {
++  INIT_TLSDESC_CALL ();
+   BEFORE_TLSDESC_CALL ();
+   tls_var2 = *p;
+   struct tls *ret = &tls_var2;
+diff --git a/sysdeps/arm/configure b/sysdeps/arm/configure
+index 35e2918922..4ef4d46cbd 100644
+--- a/sysdeps/arm/configure
++++ b/sysdeps/arm/configure
+@@ -187,6 +187,38 @@ else
+ default-abi = soft"
+ fi
+ 
++{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether VFP supports 32 registers" >&5
++printf %s "checking whether VFP supports 32 registers... " >&6; }
++if test ${libc_cv_arm_pcs_vfp_d32+y}
++then :
++  printf %s "(cached) " >&6
++else $as_nop
++
++cat confdefs.h - <<_ACEOF >conftest.$ac_ext
++/* end confdefs.h.  */
++
++void foo (void)
++{
++  asm volatile ("vldr d16,=17" : : : "d16");
++}
++
++_ACEOF
++if ac_fn_c_try_compile "$LINENO"
++then :
++  libc_cv_arm_pcs_vfp_d32=yes
++else $as_nop
++  libc_cv_arm_pcs_vfp_d32=no
++fi
++rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
++fi
++{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $libc_cv_arm_pcs_vfp_d32" >&5
++printf "%s\n" "$libc_cv_arm_pcs_vfp_d32" >&6; }
++if test "$libc_cv_arm_pcs_vfp_d32" = yes ;
++then
++  printf "%s\n" "#define HAVE_ARM_PCS_VFP_D32 1" >>confdefs.h
++
++fi
++
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether PC-relative relocs in movw/movt work properly" >&5
+ printf %s "checking whether PC-relative relocs in movw/movt work properly... " >&6; }
+ if test ${libc_cv_arm_pcrel_movw+y}
+diff --git a/sysdeps/arm/configure.ac b/sysdeps/arm/configure.ac
+index 5172e30bbe..cd00ddc9d9 100644
+--- a/sysdeps/arm/configure.ac
++++ b/sysdeps/arm/configure.ac
+@@ -21,6 +21,21 @@ else
+   LIBC_CONFIG_VAR([default-abi], [soft])
+ fi
+ 
++AC_CACHE_CHECK([whether VFP supports 32 registers],
++		libc_cv_arm_pcs_vfp_d32, [
++AC_COMPILE_IFELSE([AC_LANG_SOURCE([[
++void foo (void)
++{
++  asm volatile ("vldr d16,=17" : : : "d16");
++}
++]])],
++                [libc_cv_arm_pcs_vfp_d32=yes],
++                [libc_cv_arm_pcs_vfp_d32=no])])
++if test "$libc_cv_arm_pcs_vfp_d32" = yes ;
++then
++  AC_DEFINE(HAVE_ARM_PCS_VFP_D32)
++fi
++
+ AC_CACHE_CHECK([whether PC-relative relocs in movw/movt work properly],
+ 	       libc_cv_arm_pcrel_movw, [
+ cat > conftest.s <<\EOF
+diff --git a/sysdeps/arm/dl-tlsdesc.S b/sysdeps/arm/dl-tlsdesc.S
+index 764c56e70f..ada106521d 100644
+--- a/sysdeps/arm/dl-tlsdesc.S
++++ b/sysdeps/arm/dl-tlsdesc.S
+@@ -19,6 +19,7 @@
+ #include <sysdep.h>
+ #include <arm-features.h>
+ #include <tls.h>
++#include <rtld-global-offsets.h>
+ #include "tlsdesc.h"
+ 
+ 	.text
+@@ -83,14 +84,20 @@ _dl_tlsdesc_dynamic(struct tlsdesc *tdp)
+ 	.align 2
+ _dl_tlsdesc_dynamic:
+ 	/* Our calling convention is to clobber r0, r1 and the processor
+-	   flags.  All others that are modified must be saved */
+-	eabi_save ({r2,r3,r4,lr})
+-	push	{r2,r3,r4,lr}
+-	cfi_adjust_cfa_offset (16)
++	   flags.  All others that are modified must be saved.  r5 is
++	   used as the hwcap value to avoid reload after __tls_get_addr
++	   call.  If required we will save the vector register on the slow
++	   path.  */
++	eabi_save ({r2,r3,r4,r5,ip,lr})
++	push	{r2,r3,r4,r5,ip,lr}
++	cfi_adjust_cfa_offset (24)
+ 	cfi_rel_offset (r2,0)
+ 	cfi_rel_offset (r3,4)
+ 	cfi_rel_offset (r4,8)
+-	cfi_rel_offset (lr,12)
++	cfi_rel_offset (r5,12)
++	cfi_rel_offset (ip,16)
++	cfi_rel_offset (lr,20)
++
+ 	ldr	r1, [r0] /* td */
+ 	GET_TLS (lr)
+ 	mov	r4, r0 /* r4 = tp */
+@@ -113,22 +120,69 @@ _dl_tlsdesc_dynamic:
+ 	rsbne	r0, r4, r3
+ 	bne	2f
+ 1:	mov	r0, r1
++
++	/* Load the hwcap to check for vector support.  */
++	ldr     r2, 3f
++	ldr     r1, .Lrtld_global_ro
++0:	add     r2, pc, r2
++	ldr     r2, [r2, r1]
++	ldr     r5, [r2, #RTLD_GLOBAL_RO_DL_HWCAP_OFFSET]
++
++#ifdef __SOFTFP__
++	tst     r5, #HWCAP_ARM_VFP
++	beq     .Lno_vfp
++#endif
++
++	/* Store the VFP registers.  Don't use VFP instructions directly
++	   because this code is used in non-VFP multilibs.  */
++#define VFP_STACK_REQ (32*8 + 8)
++	sub	sp, sp, VFP_STACK_REQ
++	cfi_adjust_cfa_offset (VFP_STACK_REQ)
++	mov	r3, sp
++	.inst	0xeca30b20	/* vstmia r3!, {d0-d15} */
++	tst	r5, #HWCAP_ARM_VFPD32
++	beq	4f
++	.inst	0xece30b20	/* vstmia r3!, {d16-d31}  */
++	/* Store the floating-point status register.  */
++4:	.inst	0xeef12a10	/* vmrs	r2, fpscr */
++	str	r2, [r3]
++.Lno_vfp:
+ 	bl	__tls_get_addr
+ 	rsb	r0, r4, r0
++#ifdef __SOFTFP__
++	tst     r5, #HWCAP_ARM_VFP
++	beq     2f
++#endif
++	mov	r3, sp
++	.inst	0xecb30b20	/* vldmia r3!, {d0-d15}  */
++	tst	r5, #HWCAP_ARM_VFPD32
++	beq	5f
++	.inst	0xecf30b20	/* vldmia r3!, {d16-d31}  */
++	ldr	r4, [r3]
++5:	.inst	0xeee14a10	/* vmsr	fpscr, r4  */
++	add	sp, sp, VFP_STACK_REQ
++	cfi_adjust_cfa_offset (-VFP_STACK_REQ)
++
+ 2:
+ #if ((defined (__ARM_ARCH_4T__) && defined (__THUMB_INTERWORK__)) \
+      || defined (ARM_ALWAYS_BX))
+-	pop	{r2,r3,r4, lr}
+-	cfi_adjust_cfa_offset (-16)
++	pop	{r2,r3,r4,r5,ip, lr}
++	cfi_adjust_cfa_offset (-20)
+ 	cfi_restore (lr)
++	cfi_restore (ip)
++	cfi_restore (r5)
+ 	cfi_restore (r4)
+ 	cfi_restore (r3)
+ 	cfi_restore (r2)
+ 	bx	lr
+ #else
+-	pop	{r2,r3,r4, pc}
++	pop	{r2,r3,r4,r5,ip, pc}
+ #endif
+ 	eabi_fnend
+ 	cfi_endproc
+ 	.size	_dl_tlsdesc_dynamic, .-_dl_tlsdesc_dynamic
++
++3:      .long   _GLOBAL_OFFSET_TABLE_ - 0b - PC_OFS
++.Lrtld_global_ro:
++	.long   C_SYMBOL_NAME(_rtld_global_ro)(GOT)
+ #endif /* SHARED */
+diff --git a/sysdeps/arm/tst-gnu2-tls2.h b/sysdeps/arm/tst-gnu2-tls2.h
+new file mode 100644
+index 0000000000..e413ac21fb
+--- /dev/null
++++ b/sysdeps/arm/tst-gnu2-tls2.h
+@@ -0,0 +1,128 @@
++/* Test TLSDESC relocation.  ARM version.
++   Copyright (C) 2024 Free Software Foundation, Inc.
++   This file is part of the GNU C Library.
++
++   The GNU C Library is free software; you can redistribute it and/or
++   modify it under the terms of the GNU Lesser General Public
++   License as published by the Free Software Foundation; either
++   version 2.1 of the License, or (at your option) any later version.
++
++   The GNU C Library is distributed in the hope that it will be useful,
++   but WITHOUT ANY WARRANTY; without even the implied warranty of
++   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
++   Lesser General Public License for more details.
++
++   You should have received a copy of the GNU Lesser General Public
++   License along with the GNU C Library; if not, see
++   <https://www.gnu.org/licenses/>.  */
++
++#include <config.h>
++#include <sys/auxv.h>
++#include <string.h>
++#include <stdlib.h>
++#include <endian.h>
++
++#ifndef __SOFTFP__
++
++# ifdef HAVE_ARM_PCS_VFP_D32
++#  define SAVE_VFP_D32					\
++      asm volatile ("vldr d16,=17" : : : "d16");	\
++      asm volatile ("vldr d17,=18" : : : "d17");	\
++      asm volatile ("vldr d18,=19" : : : "d18");	\
++      asm volatile ("vldr d19,=20" : : : "d19");	\
++      asm volatile ("vldr d20,=21" : : : "d20");	\
++      asm volatile ("vldr d21,=22" : : : "d21");	\
++      asm volatile ("vldr d22,=23" : : : "d22");	\
++      asm volatile ("vldr d23,=24" : : : "d23");	\
++      asm volatile ("vldr d24,=25" : : : "d24");	\
++      asm volatile ("vldr d25,=26" : : : "d25");	\
++      asm volatile ("vldr d26,=27" : : : "d26");	\
++      asm volatile ("vldr d27,=28" : : : "d27");	\
++      asm volatile ("vldr d28,=29" : : : "d28");	\
++      asm volatile ("vldr d29,=30" : : : "d29");	\
++      asm volatile ("vldr d30,=31" : : : "d30");	\
++      asm volatile ("vldr d31,=32" : : : "d31");
++# else
++#  define SAVE_VFP_D32
++# endif
++
++# define INIT_TLSDESC_CALL()				\
++  unsigned long hwcap = getauxval (AT_HWCAP)
++
++/* Set each vector register to a value from 1 to 32 before the TLS access,
++   dump to memory after TLS access, and compare with the expected values.  */
++
++# define BEFORE_TLSDESC_CALL()				\
++  if (hwcap & HWCAP_ARM_VFP)				\
++    {							\
++      asm volatile ("vldr  d0,=1" : : : "d0");		\
++      asm volatile ("vldr  d1,=2" : : : "d1");		\
++      asm volatile ("vldr  d2,=3" : : : "d1");		\
++      asm volatile ("vldr  d3,=4" : : : "d3");		\
++      asm volatile ("vldr  d4,=5" : : : "d4");		\
++      asm volatile ("vldr  d5,=6" : : : "d5");		\
++      asm volatile ("vldr  d6,=7" : : : "d6");		\
++      asm volatile ("vldr  d7,=8" : : : "d7");		\
++      asm volatile ("vldr  d8,=9" : : : "d8");		\
++      asm volatile ("vldr  d9,=10" : : : "d9");		\
++      asm volatile ("vldr d10,=11" : : : "d10");	\
++      asm volatile ("vldr d11,=12" : : : "d11");	\
++      asm volatile ("vldr d12,=13" : : : "d12");	\
++      asm volatile ("vldr d13,=14" : : : "d13");	\
++      asm volatile ("vldr d14,=15" : : : "d14");	\
++      asm volatile ("vldr d15,=16" : : : "d15");	\
++    }							\
++  if (hwcap & HWCAP_ARM_VFPD32)				\
++    {							\
++      SAVE_VFP_D32					\
++    }
++
++# define VFP_STACK_REQ (16*8)
++# if __BYTE_ORDER == __BIG_ENDIAN
++#  define DISP 7
++# else
++#  define DISP 0
++# endif
++
++# ifdef HAVE_ARM_PCS_VFP_D32
++#  define CHECK_VFP_D32							\
++      char vfp[VFP_STACK_REQ];						\
++      asm volatile ("vstmia %0, {d16-d31}\n"				\
++		    :							\
++		    : "r" (vfp)						\
++		    : "memory");					\
++									\
++      char expected[VFP_STACK_REQ] = { 0 };				\
++      for (int i = 0; i < 16; ++i)					\
++	expected[i * 8 + DISP] = i + 17;				\
++									\
++      if (memcmp (vfp, expected, VFP_STACK_REQ) != 0)			\
++        abort ();
++# else
++#  define CHECK_VFP_D32
++# endif
++
++# define AFTER_TLSDESC_CALL()						\
++  if (hwcap & HWCAP_ARM_VFP)						\
++    {									\
++      char vfp[VFP_STACK_REQ];						\
++      asm volatile ("vstmia %0, {d0-d15}\n"				\
++		    :							\
++		    : "r" (vfp)						\
++		    : "memory");					\
++									\
++      char expected[VFP_STACK_REQ] = { 0 };				\
++      for (int i = 0; i < 16; ++i)					\
++	expected[i * 8 + DISP] = i + 1;					\
++									\
++      if (memcmp (vfp, expected, VFP_STACK_REQ) != 0)			\
++        abort ();							\
++    }									\
++  if (hwcap & HWCAP_ARM_VFPD32)						\
++    {									\
++      CHECK_VFP_D32							\
++    }
++
++#endif /* __SOFTFP__ */
++
++#include_next <tst-gnu2-tls2.h>
+
+commit aded2fc004e7ee85cf0b45b1382552d41e555a23
+Author: Adhemerval Zanella <adhemerval.zanella@linaro.org>
+Date:   Tue Mar 12 13:21:20 2024 -0300
+
+    elf: Enable TLS descriptor tests on aarch64
+    
+    The aarch64 uses 'trad' for traditional tls and 'desc' for tls
+    descriptors, but unlike other targets it defaults to 'desc'.  The
+    gnutls2 configure check does not set aarch64 as an ABI that uses
+    TLS descriptors, which then disable somes stests.
+    
+    Also rename the internal machinery fron gnu2 to tls descriptors.
+    
+    Checked on aarch64-linux-gnu.
+    Reviewed-by: H.J. Lu <hjl.tools@gmail.com>
+    
+    (cherry picked from commit 3d53d18fc71c5d9ef4773b8bce04d54b80181926)
+
+diff --git a/configure b/configure
+index 117b48a421..432e40a592 100755
+--- a/configure
++++ b/configure
+@@ -653,7 +653,7 @@ LIBGD
+ libc_cv_cc_loop_to_function
+ libc_cv_cc_submachine
+ libc_cv_cc_nofma
+-libc_cv_mtls_dialect_gnu2
++libc_cv_mtls_descriptor
+ libc_cv_has_glob_dat
+ libc_cv_fpie
+ libc_cv_z_execstack
+@@ -4760,6 +4760,9 @@ libc_config_ok=no
+ # whether to use such directories.
+ with_fp_cond=1
+ 
++# A preconfigure script may define another name to TLS descriptor variant
++mtls_descriptor=gnu2
++
+ if frags=`ls -d $srcdir/sysdeps/*/preconfigure 2> /dev/null`
+ then
+   { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for sysdeps preconfigure fragments" >&5
+@@ -7006,9 +7009,9 @@ fi
+ printf "%s\n" "$libc_cv_has_glob_dat" >&6; }
+ 
+ 
+-{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for -mtls-dialect=gnu2" >&5
+-printf %s "checking for -mtls-dialect=gnu2... " >&6; }
+-if test ${libc_cv_mtls_dialect_gnu2+y}
++{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for tls descriptor support" >&5
++printf %s "checking for tls descriptor support... " >&6; }
++if test ${libc_cv_mtls_descriptor+y}
+ then :
+   printf %s "(cached) " >&6
+ else $as_nop
+@@ -7019,7 +7022,7 @@ void foo (void)
+   i = 10;
+ }
+ EOF
+-if { ac_try='${CC-cc} $CFLAGS $CPPFLAGS -fPIC -mtls-dialect=gnu2 -nostdlib -nostartfiles
++if { ac_try='${CC-cc} $CFLAGS $CPPFLAGS -fPIC -mtls-dialect=$mtls_descriptor -nostdlib -nostartfiles
+ 		   -shared conftest.c -o conftest 1>&5'
+   { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_try\""; } >&5
+   (eval $ac_try) 2>&5
+@@ -7027,17 +7030,17 @@ if { ac_try='${CC-cc} $CFLAGS $CPPFLAGS -fPIC -mtls-dialect=gnu2 -nostdlib -nost
+   printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+   test $ac_status = 0; }; }
+ then
+-  libc_cv_mtls_dialect_gnu2=yes
++  libc_cv_mtls_descriptor=$mtls_descriptor
+ else
+-  libc_cv_mtls_dialect_gnu2=no
++  libc_cv_mtls_descriptor=no
+ fi
+ rm -f conftest*
+ fi
+-{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $libc_cv_mtls_dialect_gnu2" >&5
+-printf "%s\n" "$libc_cv_mtls_dialect_gnu2" >&6; }
++{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $libc_cv_mtls_descriptor" >&5
++printf "%s\n" "$libc_cv_mtls_descriptor" >&6; }
+ 
+ config_vars="$config_vars
+-have-mtls-dialect-gnu2 = $libc_cv_mtls_dialect_gnu2"
++have-mtls-descriptor = $libc_cv_mtls_descriptor"
+ 
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if -Wno-ignored-attributes is required for aliases" >&5
+ printf %s "checking if -Wno-ignored-attributes is required for aliases... " >&6; }
+diff --git a/configure.ac b/configure.ac
+index 19b88a47a5..bdc385d03c 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -442,6 +442,9 @@ libc_config_ok=no
+ # whether to use such directories.
+ with_fp_cond=1
+ 
++# A preconfigure script may define another name to TLS descriptor variant
++mtls_descriptor=gnu2
++
+ dnl Let sysdeps/*/preconfigure act here.
+ LIBC_PRECONFIGURE([$srcdir], [for sysdeps])
+ 
+@@ -1287,7 +1290,7 @@ fi
+ rm -f conftest*])
+ AC_SUBST(libc_cv_has_glob_dat)
+ 
+-AC_CACHE_CHECK([for -mtls-dialect=gnu2], libc_cv_mtls_dialect_gnu2,
++AC_CACHE_CHECK([for tls descriptor support], libc_cv_mtls_descriptor,
+ [dnl
+ cat > conftest.c <<EOF
+ __thread int i;
+@@ -1296,16 +1299,16 @@ void foo (void)
+   i = 10;
+ }
+ EOF
+-if AC_TRY_COMMAND([${CC-cc} $CFLAGS $CPPFLAGS -fPIC -mtls-dialect=gnu2 -nostdlib -nostartfiles
++if AC_TRY_COMMAND([${CC-cc} $CFLAGS $CPPFLAGS -fPIC -mtls-dialect=$mtls_descriptor -nostdlib -nostartfiles
+ 		   -shared conftest.c -o conftest 1>&AS_MESSAGE_LOG_FD])
+ then
+-  libc_cv_mtls_dialect_gnu2=yes
++  libc_cv_mtls_descriptor=$mtls_descriptor
+ else
+-  libc_cv_mtls_dialect_gnu2=no
++  libc_cv_mtls_descriptor=no
+ fi
+ rm -f conftest*])
+-AC_SUBST(libc_cv_mtls_dialect_gnu2)
+-LIBC_CONFIG_VAR([have-mtls-dialect-gnu2], [$libc_cv_mtls_dialect_gnu2])
++AC_SUBST(libc_cv_mtls_descriptor)
++LIBC_CONFIG_VAR([have-mtls-descriptor], [$libc_cv_mtls_descriptor])
+ 
+ dnl clang emits an warning for a double alias redirection, to warn the
+ dnl original symbol is sed even when weak definition overrides it.
+diff --git a/elf/Makefile b/elf/Makefile
+index 030db4d207..69aa423c4b 100644
+--- a/elf/Makefile
++++ b/elf/Makefile
+@@ -999,13 +999,13 @@ modules-names-tests = $(filter-out ifuncmod% tst-tlsmod%,\
+ # For +depfiles in Makerules.
+ extra-test-objs += tst-auditmod17.os
+ 
+-ifeq (yes,$(have-mtls-dialect-gnu2))
++ifneq (no,$(have-mtls-descriptor))
+ tests += tst-gnu2-tls1
+ modules-names += tst-gnu2-tls1mod
+ $(objpfx)tst-gnu2-tls1: $(objpfx)tst-gnu2-tls1mod.so
+ tst-gnu2-tls1mod.so-no-z-defs = yes
+-CFLAGS-tst-gnu2-tls1mod.c += -mtls-dialect=gnu2
+-endif # $(have-mtls-dialect-gnu2)
++CFLAGS-tst-gnu2-tls1mod.c += -mtls-dialect=$(have-mtls-descriptor)
++endif # $(have-mtls-descriptor)
+ 
+ ifeq (yes,$(have-protected-data))
+ modules-names += tst-protected1moda tst-protected1modb
+@@ -2972,11 +2972,11 @@ $(objpfx)tst-tls-allocation-failure-static-patched.out: \
+ $(objpfx)tst-audit-tlsdesc: $(objpfx)tst-audit-tlsdesc-mod1.so \
+ 			    $(objpfx)tst-audit-tlsdesc-mod2.so \
+ 			    $(shared-thread-library)
+-ifeq (yes,$(have-mtls-dialect-gnu2))
++ifneq (no,$(have-mtls-descriptor))
+ # The test is valid for all TLS types, but we want to exercise GNU2
+ # TLS if possible.
+-CFLAGS-tst-audit-tlsdesc-mod1.c += -mtls-dialect=gnu2
+-CFLAGS-tst-audit-tlsdesc-mod2.c += -mtls-dialect=gnu2
++CFLAGS-tst-audit-tlsdesc-mod1.c += -mtls-dialect=$(have-mtls-descriptor)
++CFLAGS-tst-audit-tlsdesc-mod2.c += -mtls-dialect=$(have-mtls-descriptor)
+ endif
+ $(objpfx)tst-audit-tlsdesc-dlopen: $(shared-thread-library)
+ $(objpfx)tst-audit-tlsdesc-dlopen.out: $(objpfx)tst-audit-tlsdesc-mod1.so \
+@@ -3055,11 +3055,11 @@ $(objpfx)tst-gnu2-tls2.out: \
+   $(objpfx)tst-gnu2-tls2mod1.so \
+   $(objpfx)tst-gnu2-tls2mod2.so
+ 
+-ifeq (yes,$(have-mtls-dialect-gnu2))
+-CFLAGS-tst-tlsgap-mod0.c += -mtls-dialect=gnu2
+-CFLAGS-tst-tlsgap-mod1.c += -mtls-dialect=gnu2
+-CFLAGS-tst-tlsgap-mod2.c += -mtls-dialect=gnu2
+-CFLAGS-tst-gnu2-tls2mod0.c += -mtls-dialect=gnu2
+-CFLAGS-tst-gnu2-tls2mod1.c += -mtls-dialect=gnu2
+-CFLAGS-tst-gnu2-tls2mod2.c += -mtls-dialect=gnu2
++ifneq (no,$(have-mtls-descriptor))
++CFLAGS-tst-tlsgap-mod0.c += -mtls-dialect=$(have-mtls-descriptor)
++CFLAGS-tst-tlsgap-mod1.c += -mtls-dialect=$(have-mtls-descriptor)
++CFLAGS-tst-tlsgap-mod2.c += -mtls-dialect=$(have-mtls-descriptor)
++CFLAGS-tst-gnu2-tls2mod0.c += -mtls-dialect=$(have-mtls-descriptor)
++CFLAGS-tst-gnu2-tls2mod1.c += -mtls-dialect=$(have-mtls-descriptor)
++CFLAGS-tst-gnu2-tls2mod2.c += -mtls-dialect=$(have-mtls-descriptor)
+ endif
+diff --git a/sysdeps/aarch64/preconfigure b/sysdeps/aarch64/preconfigure
+index d9bd1f8558..19657b627b 100644
+--- a/sysdeps/aarch64/preconfigure
++++ b/sysdeps/aarch64/preconfigure
+@@ -2,5 +2,6 @@ case "$machine" in
+ aarch64*)
+ 	base_machine=aarch64
+ 	machine=aarch64
++	mtls_descriptor=desc
+ 	;;
+ esac
+diff --git a/sysdeps/arm/Makefile b/sysdeps/arm/Makefile
+index d5cea717a9..619474eca9 100644
+--- a/sysdeps/arm/Makefile
++++ b/sysdeps/arm/Makefile
+@@ -13,15 +13,15 @@ $(objpfx)libgcc-stubs.a: $(objpfx)aeabi_unwind_cpp_pr1.os
+ lib-noranlib: $(objpfx)libgcc-stubs.a
+ 
+ ifeq ($(build-shared),yes)
+-ifeq (yes,$(have-mtls-dialect-gnu2))
++ifneq (no,$(have-mtls-descriptor))
+ tests += tst-armtlsdescloc tst-armtlsdescextnow tst-armtlsdescextlazy
+ modules-names += tst-armtlsdesclocmod
+ modules-names += tst-armtlsdescextlazymod tst-armtlsdescextnowmod
+ CPPFLAGS-tst-armtlsdescextnowmod.c += -Dstatic=
+ CPPFLAGS-tst-armtlsdescextlazymod.c += -Dstatic=
+-CFLAGS-tst-armtlsdesclocmod.c += -mtls-dialect=gnu2
+-CFLAGS-tst-armtlsdescextnowmod.c += -mtls-dialect=gnu2
+-CFLAGS-tst-armtlsdescextlazymod.c += -mtls-dialect=gnu2
++CFLAGS-tst-armtlsdesclocmod.c += -mtls-dialect=$(have-mtls-descriptor)
++CFLAGS-tst-armtlsdescextnowmod.c += -mtls-dialect=$(have-mtls-descriptor)
++CFLAGS-tst-armtlsdescextlazymod.c += -mtls-dialect=$(have-mtls-descriptor)
+ LDFLAGS-tst-armtlsdescextnowmod.so += -Wl,-z,now
+ tst-armtlsdescloc-ENV = LD_BIND_NOW=1
+ tst-armtlsdescextnow-ENV = LD_BIND_NOW=1
+
+commit 5a461f2949ded98d8211939f84988bc464c7b4fe
+Author: Andreas Schwab <schwab@suse.de>
+Date:   Tue Mar 19 13:49:50 2024 +0100
+
+    Add tst-gnu2-tls2mod1 to test-internal-extras
+    
+    That allows sysdeps/x86_64/tst-gnu2-tls2mod1.S to use internal headers.
+    
+    Fixes: 717ebfa85c ("x86-64: Allocate state buffer space for RDI, RSI and RBX")
+    (cherry picked from commit fd7ee2e6c5eb49e4a630a9978b4d668bff6354ee)
+
+diff --git a/sysdeps/x86_64/Makefile b/sysdeps/x86_64/Makefile
+index e8babc9a4e..9d374a3299 100644
+--- a/sysdeps/x86_64/Makefile
++++ b/sysdeps/x86_64/Makefile
+@@ -210,6 +210,8 @@ tst-plt-rewrite2-ENV = GLIBC_TUNABLES=glibc.cpu.plt_rewrite=2
+ $(objpfx)tst-plt-rewrite2: $(objpfx)tst-plt-rewritemod2.so
+ endif
+ 
++test-internal-extras += tst-gnu2-tls2mod1
++
+ endif # $(subdir) == elf
+ 
+ ifeq ($(subdir),csu)
+
+commit aa4249266e9906c4bc833e4847f4d8feef59504f
+Author: Adhemerval Zanella <adhemerval.zanella@linaro.org>
+Date:   Thu Feb 8 10:08:38 2024 -0300
+
+    x86: Fix Zen3/Zen4 ERMS selection (BZ 30994)
+    
+    The REP MOVSB usage on memcpy/memmove does not show much performance
+    improvement on Zen3/Zen4 cores compared to the vectorized loops.  Also,
+    as from BZ 30994, if the source is aligned and the destination is not
+    the performance can be 20x slower.
+    
+    The performance difference is noticeable with small buffer sizes, closer
+    to the lower bounds limits when memcpy/memmove starts to use ERMS.  The
+    performance of REP MOVSB is similar to vectorized instruction on the
+    size limit (the L2 cache).  Also, there is no drawback to multiple cores
+    sharing the cache.
+    
+    Checked on x86_64-linux-gnu on Zen3.
+    Reviewed-by: H.J. Lu <hjl.tools@gmail.com>
+    
+    (cherry picked from commit 0c0d39fe4aeb0f69b26e76337c5dfd5530d5d44e)
+
+diff --git a/sysdeps/x86/dl-cacheinfo.h b/sysdeps/x86/dl-cacheinfo.h
+index d5101615e3..f34d12846c 100644
+--- a/sysdeps/x86/dl-cacheinfo.h
++++ b/sysdeps/x86/dl-cacheinfo.h
+@@ -791,7 +791,6 @@ dl_init_cacheinfo (struct cpu_features *cpu_features)
+   long int data = -1;
+   long int shared = -1;
+   long int shared_per_thread = -1;
+-  long int core = -1;
+   unsigned int threads = 0;
+   unsigned long int level1_icache_size = -1;
+   unsigned long int level1_icache_linesize = -1;
+@@ -809,7 +808,6 @@ dl_init_cacheinfo (struct cpu_features *cpu_features)
+   if (cpu_features->basic.kind == arch_kind_intel)
+     {
+       data = handle_intel (_SC_LEVEL1_DCACHE_SIZE, cpu_features);
+-      core = handle_intel (_SC_LEVEL2_CACHE_SIZE, cpu_features);
+       shared = handle_intel (_SC_LEVEL3_CACHE_SIZE, cpu_features);
+       shared_per_thread = shared;
+ 
+@@ -822,7 +820,8 @@ dl_init_cacheinfo (struct cpu_features *cpu_features)
+ 	= handle_intel (_SC_LEVEL1_DCACHE_ASSOC, cpu_features);
+       level1_dcache_linesize
+ 	= handle_intel (_SC_LEVEL1_DCACHE_LINESIZE, cpu_features);
+-      level2_cache_size = core;
++      level2_cache_size
++	= handle_intel (_SC_LEVEL2_CACHE_SIZE, cpu_features);
+       level2_cache_assoc
+ 	= handle_intel (_SC_LEVEL2_CACHE_ASSOC, cpu_features);
+       level2_cache_linesize
+@@ -835,12 +834,12 @@ dl_init_cacheinfo (struct cpu_features *cpu_features)
+       level4_cache_size
+ 	= handle_intel (_SC_LEVEL4_CACHE_SIZE, cpu_features);
+ 
+-      get_common_cache_info (&shared, &shared_per_thread, &threads, core);
++      get_common_cache_info (&shared, &shared_per_thread, &threads,
++			     level2_cache_size);
+     }
+   else if (cpu_features->basic.kind == arch_kind_zhaoxin)
+     {
+       data = handle_zhaoxin (_SC_LEVEL1_DCACHE_SIZE);
+-      core = handle_zhaoxin (_SC_LEVEL2_CACHE_SIZE);
+       shared = handle_zhaoxin (_SC_LEVEL3_CACHE_SIZE);
+       shared_per_thread = shared;
+ 
+@@ -849,19 +848,19 @@ dl_init_cacheinfo (struct cpu_features *cpu_features)
+       level1_dcache_size = data;
+       level1_dcache_assoc = handle_zhaoxin (_SC_LEVEL1_DCACHE_ASSOC);
+       level1_dcache_linesize = handle_zhaoxin (_SC_LEVEL1_DCACHE_LINESIZE);
+-      level2_cache_size = core;
++      level2_cache_size = handle_zhaoxin (_SC_LEVEL2_CACHE_SIZE);
+       level2_cache_assoc = handle_zhaoxin (_SC_LEVEL2_CACHE_ASSOC);
+       level2_cache_linesize = handle_zhaoxin (_SC_LEVEL2_CACHE_LINESIZE);
+       level3_cache_size = shared;
+       level3_cache_assoc = handle_zhaoxin (_SC_LEVEL3_CACHE_ASSOC);
+       level3_cache_linesize = handle_zhaoxin (_SC_LEVEL3_CACHE_LINESIZE);
+ 
+-      get_common_cache_info (&shared, &shared_per_thread, &threads, core);
++      get_common_cache_info (&shared, &shared_per_thread, &threads,
++			     level2_cache_size);
+     }
+   else if (cpu_features->basic.kind == arch_kind_amd)
+     {
+       data = handle_amd (_SC_LEVEL1_DCACHE_SIZE);
+-      core = handle_amd (_SC_LEVEL2_CACHE_SIZE);
+       shared = handle_amd (_SC_LEVEL3_CACHE_SIZE);
+ 
+       level1_icache_size = handle_amd (_SC_LEVEL1_ICACHE_SIZE);
+@@ -869,7 +868,7 @@ dl_init_cacheinfo (struct cpu_features *cpu_features)
+       level1_dcache_size = data;
+       level1_dcache_assoc = handle_amd (_SC_LEVEL1_DCACHE_ASSOC);
+       level1_dcache_linesize = handle_amd (_SC_LEVEL1_DCACHE_LINESIZE);
+-      level2_cache_size = core;
++      level2_cache_size = handle_amd (_SC_LEVEL2_CACHE_SIZE);;
+       level2_cache_assoc = handle_amd (_SC_LEVEL2_CACHE_ASSOC);
+       level2_cache_linesize = handle_amd (_SC_LEVEL2_CACHE_LINESIZE);
+       level3_cache_size = shared;
+@@ -880,12 +879,12 @@ dl_init_cacheinfo (struct cpu_features *cpu_features)
+       if (shared <= 0)
+         {
+            /* No shared L3 cache.  All we have is the L2 cache.  */
+-           shared = core;
++           shared = level2_cache_size;
+         }
+       else if (cpu_features->basic.family < 0x17)
+         {
+            /* Account for exclusive L2 and L3 caches.  */
+-           shared += core;
++           shared += level2_cache_size;
+         }
+ 
+       shared_per_thread = shared;
+@@ -987,6 +986,12 @@ dl_init_cacheinfo (struct cpu_features *cpu_features)
+   if (CPU_FEATURE_USABLE_P (cpu_features, FSRM))
+     rep_movsb_threshold = 2112;
+ 
++   /* For AMD CPUs that support ERMS (Zen3+), REP MOVSB is in a lot of
++      cases slower than the vectorized path (and for some alignments,
++      it is really slow, check BZ #30994).  */
++  if (cpu_features->basic.kind == arch_kind_amd)
++    rep_movsb_threshold = non_temporal_threshold;
++
+   /* The default threshold to use Enhanced REP STOSB.  */
+   unsigned long int rep_stosb_threshold = 2048;
+ 
+@@ -1028,16 +1033,9 @@ dl_init_cacheinfo (struct cpu_features *cpu_features)
+ 			   SIZE_MAX);
+ 
+   unsigned long int rep_movsb_stop_threshold;
+-  /* ERMS feature is implemented from AMD Zen3 architecture and it is
+-     performing poorly for data above L2 cache size. Henceforth, adding
+-     an upper bound threshold parameter to limit the usage of Enhanced
+-     REP MOVSB operations and setting its value to L2 cache size.  */
+-  if (cpu_features->basic.kind == arch_kind_amd)
+-    rep_movsb_stop_threshold = core;
+   /* Setting the upper bound of ERMS to the computed value of
+-     non-temporal threshold for architectures other than AMD.  */
+-  else
+-    rep_movsb_stop_threshold = non_temporal_threshold;
++     non-temporal threshold for all architectures.  */
++  rep_movsb_stop_threshold = non_temporal_threshold;
+ 
+   cpu_features->data_cache_size = data;
+   cpu_features->shared_cache_size = shared;
+
+commit 6484a92698039c4a7a510f0214e22d067b0d78b3
+Author: Adhemerval Zanella <adhemerval.zanella@linaro.org>
+Date:   Thu Feb 8 10:08:39 2024 -0300
+
+    x86: Do not prefer ERMS for memset on Zen3+
+    
+    For AMD Zen3+ architecture, the performance of the vectorized loop is
+    slightly better than ERMS.
+    
+    Checked on x86_64-linux-gnu on Zen3.
+    Reviewed-by: H.J. Lu <hjl.tools@gmail.com>
+    
+    (cherry picked from commit 272708884cb750f12f5c74a00e6620c19dc6d567)
+
+diff --git a/sysdeps/x86/dl-cacheinfo.h b/sysdeps/x86/dl-cacheinfo.h
+index f34d12846c..5a98f70364 100644
+--- a/sysdeps/x86/dl-cacheinfo.h
++++ b/sysdeps/x86/dl-cacheinfo.h
+@@ -1021,6 +1021,11 @@ dl_init_cacheinfo (struct cpu_features *cpu_features)
+      minimum value is fixed.  */
+   rep_stosb_threshold = TUNABLE_GET (x86_rep_stosb_threshold,
+ 				     long int, NULL);
++  if (cpu_features->basic.kind == arch_kind_amd
++      && !TUNABLE_IS_INITIALIZED (x86_rep_stosb_threshold))
++    /* For AMD Zen3+ architecture, the performance of the vectorized loop is
++       slightly better than ERMS.  */
++    rep_stosb_threshold = SIZE_MAX;
+ 
+   TUNABLE_SET_WITH_BOUNDS (x86_data_cache_size, data, 0, SIZE_MAX);
+   TUNABLE_SET_WITH_BOUNDS (x86_shared_cache_size, shared, 0, SIZE_MAX);
+
+commit 5d070d12b3a52bc44dd1b71743abc4b6243862ae
+Author: Adhemerval Zanella <adhemerval.zanella@linaro.org>
+Date:   Thu Feb 8 10:08:40 2024 -0300
+
+    x86: Expand the comment on when REP STOSB is used on memset
+    
+    Reviewed-by: H.J. Lu <hjl.tools@gmail.com>
+    (cherry picked from commit 491e55beab7457ed310a4a47496f4a333c5d1032)
+
+diff --git a/sysdeps/x86_64/multiarch/memset-vec-unaligned-erms.S b/sysdeps/x86_64/multiarch/memset-vec-unaligned-erms.S
+index 9984c3ca0f..97839a2248 100644
+--- a/sysdeps/x86_64/multiarch/memset-vec-unaligned-erms.S
++++ b/sysdeps/x86_64/multiarch/memset-vec-unaligned-erms.S
+@@ -21,7 +21,9 @@
+    2. If size is less than VEC, use integer register stores.
+    3. If size is from VEC_SIZE to 2 * VEC_SIZE, use 2 VEC stores.
+    4. If size is from 2 * VEC_SIZE to 4 * VEC_SIZE, use 4 VEC stores.
+-   5. If size is more to 4 * VEC_SIZE, align to 4 * VEC_SIZE with
++   5. On machines ERMS feature, if size is greater or equal than
++      __x86_rep_stosb_threshold then REP STOSB will be used.
++   6. If size is more to 4 * VEC_SIZE, align to 4 * VEC_SIZE with
+       4 VEC stores and store 4 * VEC at a time until done.  */
+ 
+ #include <sysdep.h>
+
+commit 31c7d69af59da0da80caa74b2ec6ae149013384d
+Author: Florian Weimer <fweimer@redhat.com>
+Date:   Fri Feb 16 07:40:37 2024 +0100
+
+    i386: Use generic memrchr in libc (bug 31316)
+    
+    Before this change, we incorrectly used the SSE2 variant in the
+    implementation, without checking that the system actually supports
+    SSE2.
+    
+    Tested-by: Sam James <sam@gentoo.org>
+    (cherry picked from commit 0d9166c2245cad4ac520b337dee40c9a583872b6)
+
+diff --git a/sysdeps/i386/i686/multiarch/memrchr-c.c b/sysdeps/i386/i686/multiarch/memrchr-c.c
+index ef7bbbe792..20bfdf3af3 100644
+--- a/sysdeps/i386/i686/multiarch/memrchr-c.c
++++ b/sysdeps/i386/i686/multiarch/memrchr-c.c
+@@ -5,3 +5,4 @@ extern void *__memrchr_ia32 (const void *, int, size_t);
+ #endif
+ 
+ #include "string/memrchr.c"
++strong_alias (__memrchr_ia32, __GI___memrchr)
+diff --git a/sysdeps/i386/i686/multiarch/memrchr-sse2.S b/sysdeps/i386/i686/multiarch/memrchr-sse2.S
+index d9dae04171..e123f87435 100644
+--- a/sysdeps/i386/i686/multiarch/memrchr-sse2.S
++++ b/sysdeps/i386/i686/multiarch/memrchr-sse2.S
+@@ -720,5 +720,4 @@ L(ret_null):
+ 	ret
+ 
+ END (__memrchr_sse2)
+-strong_alias (__memrchr_sse2, __GI___memrchr)
+ #endif
+
+commit b0e0a07018098c2c5927796be5681a298c312626
+Author: Joe Ramsay <Joe.Ramsay@arm.com>
+Date:   Tue Feb 20 16:44:13 2024 +0000
+
+    aarch64/fpu: Sync libmvec routines from 2.39 and before with AOR
+    
+    This includes a fix for big-endian in AdvSIMD log, some cosmetic
+    changes, and numerous small optimisations mainly around inlining and
+    using indexed variants of MLA intrinsics.
+    Reviewed-by: Adhemerval Zanella  <adhemerval.zanella@linaro.org>
+    
+    (cherry picked from commit e302e1021391d13a9611ba3a910df128830bd19e)
+
+diff --git a/sysdeps/aarch64/fpu/acos_advsimd.c b/sysdeps/aarch64/fpu/acos_advsimd.c
+index a8eabb5e71..0a86c9823a 100644
+--- a/sysdeps/aarch64/fpu/acos_advsimd.c
++++ b/sysdeps/aarch64/fpu/acos_advsimd.c
+@@ -40,8 +40,8 @@ static const struct data
+ };
+ 
+ #define AllMask v_u64 (0xffffffffffffffff)
+-#define Oneu (0x3ff0000000000000)
+-#define Small (0x3e50000000000000) /* 2^-53.  */
++#define Oneu 0x3ff0000000000000
++#define Small 0x3e50000000000000 /* 2^-53.  */
+ 
+ #if WANT_SIMD_EXCEPT
+ static float64x2_t VPCS_ATTR NOINLINE
+diff --git a/sysdeps/aarch64/fpu/asin_advsimd.c b/sysdeps/aarch64/fpu/asin_advsimd.c
+index 141646e954..2de6eff407 100644
+--- a/sysdeps/aarch64/fpu/asin_advsimd.c
++++ b/sysdeps/aarch64/fpu/asin_advsimd.c
+@@ -39,8 +39,8 @@ static const struct data
+ };
+ 
+ #define AllMask v_u64 (0xffffffffffffffff)
+-#define One (0x3ff0000000000000)
+-#define Small (0x3e50000000000000) /* 2^-12.  */
++#define One 0x3ff0000000000000
++#define Small 0x3e50000000000000 /* 2^-12.  */
+ 
+ #if WANT_SIMD_EXCEPT
+ static float64x2_t VPCS_ATTR NOINLINE
+diff --git a/sysdeps/aarch64/fpu/atan2_sve.c b/sysdeps/aarch64/fpu/atan2_sve.c
+index 09a4c559b8..04fa71fa37 100644
+--- a/sysdeps/aarch64/fpu/atan2_sve.c
++++ b/sysdeps/aarch64/fpu/atan2_sve.c
+@@ -37,9 +37,6 @@ static const struct data
+   .pi_over_2 = 0x1.921fb54442d18p+0,
+ };
+ 
+-/* Useful constants.  */
+-#define SignMask sv_u64 (0x8000000000000000)
+-
+ /* Special cases i.e. 0, infinity, nan (fall back to scalar calls).  */
+ static svfloat64_t NOINLINE
+ special_case (svfloat64_t y, svfloat64_t x, svfloat64_t ret,
+@@ -72,14 +69,15 @@ svfloat64_t SV_NAME_D2 (atan2) (svfloat64_t y, svfloat64_t x, const svbool_t pg)
+   svbool_t cmp_y = zeroinfnan (iy, pg);
+   svbool_t cmp_xy = svorr_z (pg, cmp_x, cmp_y);
+ 
+-  svuint64_t sign_x = svand_x (pg, ix, SignMask);
+-  svuint64_t sign_y = svand_x (pg, iy, SignMask);
+-  svuint64_t sign_xy = sveor_x (pg, sign_x, sign_y);
+-
+   svfloat64_t ax = svabs_x (pg, x);
+   svfloat64_t ay = svabs_x (pg, y);
++  svuint64_t iax = svreinterpret_u64 (ax);
++  svuint64_t iay = svreinterpret_u64 (ay);
++
++  svuint64_t sign_x = sveor_x (pg, ix, iax);
++  svuint64_t sign_y = sveor_x (pg, iy, iay);
++  svuint64_t sign_xy = sveor_x (pg, sign_x, sign_y);
+ 
+-  svbool_t pred_xlt0 = svcmplt (pg, x, 0.0);
+   svbool_t pred_aygtax = svcmpgt (pg, ay, ax);
+ 
+   /* Set up z for call to atan.  */
+@@ -88,8 +86,9 @@ svfloat64_t SV_NAME_D2 (atan2) (svfloat64_t y, svfloat64_t x, const svbool_t pg)
+   svfloat64_t z = svdiv_x (pg, n, d);
+ 
+   /* Work out the correct shift.  */
+-  svfloat64_t shift = svsel (pred_xlt0, sv_f64 (-2.0), sv_f64 (0.0));
+-  shift = svsel (pred_aygtax, svadd_x (pg, shift, 1.0), shift);
++  svfloat64_t shift = svreinterpret_f64 (svlsr_x (pg, sign_x, 1));
++  shift = svsel (pred_aygtax, sv_f64 (1.0), shift);
++  shift = svreinterpret_f64 (svorr_x (pg, sign_x, svreinterpret_u64 (shift)));
+   shift = svmul_x (pg, shift, data_ptr->pi_over_2);
+ 
+   /* Use split Estrin scheme for P(z^2) with deg(P)=19.  */
+@@ -109,10 +108,10 @@ svfloat64_t SV_NAME_D2 (atan2) (svfloat64_t y, svfloat64_t x, const svbool_t pg)
+   ret = svadd_m (pg, ret, shift);
+ 
+   /* Account for the sign of x and y.  */
+-  ret = svreinterpret_f64 (sveor_x (pg, svreinterpret_u64 (ret), sign_xy));
+-
+   if (__glibc_unlikely (svptest_any (pg, cmp_xy)))
+-    return special_case (y, x, ret, cmp_xy);
+-
+-  return ret;
++    return special_case (
++	y, x,
++	svreinterpret_f64 (sveor_x (pg, svreinterpret_u64 (ret), sign_xy)),
++	cmp_xy);
++  return svreinterpret_f64 (sveor_x (pg, svreinterpret_u64 (ret), sign_xy));
+ }
+diff --git a/sysdeps/aarch64/fpu/atan2f_sve.c b/sysdeps/aarch64/fpu/atan2f_sve.c
+index b92f83cdea..9ea197147c 100644
+--- a/sysdeps/aarch64/fpu/atan2f_sve.c
++++ b/sysdeps/aarch64/fpu/atan2f_sve.c
+@@ -32,10 +32,8 @@ static const struct data
+   .pi_over_2 = 0x1.921fb6p+0f,
+ };
+ 
+-#define SignMask sv_u32 (0x80000000)
+-
+ /* Special cases i.e. 0, infinity, nan (fall back to scalar calls).  */
+-static inline svfloat32_t
++static svfloat32_t NOINLINE
+ special_case (svfloat32_t y, svfloat32_t x, svfloat32_t ret,
+ 	      const svbool_t cmp)
+ {
+@@ -67,14 +65,15 @@ svfloat32_t SV_NAME_F2 (atan2) (svfloat32_t y, svfloat32_t x, const svbool_t pg)
+   svbool_t cmp_y = zeroinfnan (iy, pg);
+   svbool_t cmp_xy = svorr_z (pg, cmp_x, cmp_y);
+ 
+-  svuint32_t sign_x = svand_x (pg, ix, SignMask);
+-  svuint32_t sign_y = svand_x (pg, iy, SignMask);
+-  svuint32_t sign_xy = sveor_x (pg, sign_x, sign_y);
+-
+   svfloat32_t ax = svabs_x (pg, x);
+   svfloat32_t ay = svabs_x (pg, y);
++  svuint32_t iax = svreinterpret_u32 (ax);
++  svuint32_t iay = svreinterpret_u32 (ay);
++
++  svuint32_t sign_x = sveor_x (pg, ix, iax);
++  svuint32_t sign_y = sveor_x (pg, iy, iay);
++  svuint32_t sign_xy = sveor_x (pg, sign_x, sign_y);
+ 
+-  svbool_t pred_xlt0 = svcmplt (pg, x, 0.0);
+   svbool_t pred_aygtax = svcmpgt (pg, ay, ax);
+ 
+   /* Set up z for call to atan.  */
+@@ -83,11 +82,12 @@ svfloat32_t SV_NAME_F2 (atan2) (svfloat32_t y, svfloat32_t x, const svbool_t pg)
+   svfloat32_t z = svdiv_x (pg, n, d);
+ 
+   /* Work out the correct shift.  */
+-  svfloat32_t shift = svsel (pred_xlt0, sv_f32 (-2.0), sv_f32 (0.0));
+-  shift = svsel (pred_aygtax, svadd_x (pg, shift, 1.0), shift);
++  svfloat32_t shift = svreinterpret_f32 (svlsr_x (pg, sign_x, 1));
++  shift = svsel (pred_aygtax, sv_f32 (1.0), shift);
++  shift = svreinterpret_f32 (svorr_x (pg, sign_x, svreinterpret_u32 (shift)));
+   shift = svmul_x (pg, shift, sv_f32 (data_ptr->pi_over_2));
+ 
+-  /* Use split Estrin scheme for P(z^2) with deg(P)=7.  */
++  /* Use pure Estrin scheme for P(z^2) with deg(P)=7.  */
+   svfloat32_t z2 = svmul_x (pg, z, z);
+   svfloat32_t z4 = svmul_x (pg, z2, z2);
+   svfloat32_t z8 = svmul_x (pg, z4, z4);
+@@ -101,10 +101,12 @@ svfloat32_t SV_NAME_F2 (atan2) (svfloat32_t y, svfloat32_t x, const svbool_t pg)
+   ret = svadd_m (pg, ret, shift);
+ 
+   /* Account for the sign of x and y.  */
+-  ret = svreinterpret_f32 (sveor_x (pg, svreinterpret_u32 (ret), sign_xy));
+ 
+   if (__glibc_unlikely (svptest_any (pg, cmp_xy)))
+-    return special_case (y, x, ret, cmp_xy);
++    return special_case (
++	y, x,
++	svreinterpret_f32 (sveor_x (pg, svreinterpret_u32 (ret), sign_xy)),
++	cmp_xy);
+ 
+-  return ret;
++  return svreinterpret_f32 (sveor_x (pg, svreinterpret_u32 (ret), sign_xy));
+ }
+diff --git a/sysdeps/aarch64/fpu/cos_advsimd.c b/sysdeps/aarch64/fpu/cos_advsimd.c
+index 2897e8b909..3924c9ce44 100644
+--- a/sysdeps/aarch64/fpu/cos_advsimd.c
++++ b/sysdeps/aarch64/fpu/cos_advsimd.c
+@@ -63,8 +63,7 @@ float64x2_t VPCS_ATTR V_NAME_D1 (cos) (float64x2_t x)
+        special-case handler later.  */
+     r = vbslq_f64 (cmp, v_f64 (1.0), r);
+ #else
+-  cmp = vcageq_f64 (d->range_val, x);
+-  cmp = vceqzq_u64 (cmp); /* cmp = ~cmp.  */
++  cmp = vcageq_f64 (x, d->range_val);
+   r = x;
+ #endif
+ 
+diff --git a/sysdeps/aarch64/fpu/cosf_advsimd.c b/sysdeps/aarch64/fpu/cosf_advsimd.c
+index 60abc8dfcf..d0c285b03a 100644
+--- a/sysdeps/aarch64/fpu/cosf_advsimd.c
++++ b/sysdeps/aarch64/fpu/cosf_advsimd.c
+@@ -64,8 +64,7 @@ float32x4_t VPCS_ATTR NOINLINE V_NAME_F1 (cos) (float32x4_t x)
+        special-case handler later.  */
+     r = vbslq_f32 (cmp, v_f32 (1.0f), r);
+ #else
+-  cmp = vcageq_f32 (d->range_val, x);
+-  cmp = vceqzq_u32 (cmp); /* cmp = ~cmp.  */
++  cmp = vcageq_f32 (x, d->range_val);
+   r = x;
+ #endif
+ 
+diff --git a/sysdeps/aarch64/fpu/exp10_advsimd.c b/sysdeps/aarch64/fpu/exp10_advsimd.c
+index fe7149b191..eeb31ca839 100644
+--- a/sysdeps/aarch64/fpu/exp10_advsimd.c
++++ b/sysdeps/aarch64/fpu/exp10_advsimd.c
+@@ -57,7 +57,7 @@ const static struct data
+ # define BigBound v_u64 (0x4070000000000000)  /* asuint64 (0x1p8).  */
+ # define Thres v_u64 (0x2070000000000000)     /* BigBound - TinyBound.  */
+ 
+-static inline float64x2_t VPCS_ATTR
++static float64x2_t VPCS_ATTR NOINLINE
+ special_case (float64x2_t x, float64x2_t y, uint64x2_t cmp)
+ {
+   /* If fenv exceptions are to be triggered correctly, fall back to the scalar
+@@ -72,7 +72,7 @@ special_case (float64x2_t x, float64x2_t y, uint64x2_t cmp)
+ # define SpecialBias1 v_u64 (0x7000000000000000)  /* 0x1p769.  */
+ # define SpecialBias2 v_u64 (0x3010000000000000)  /* 0x1p-254.  */
+ 
+-static float64x2_t VPCS_ATTR NOINLINE
++static inline float64x2_t VPCS_ATTR
+ special_case (float64x2_t s, float64x2_t y, float64x2_t n,
+ 	      const struct data *d)
+ {
+diff --git a/sysdeps/aarch64/fpu/exp10f_advsimd.c b/sysdeps/aarch64/fpu/exp10f_advsimd.c
+index 7ee0c90948..ab117b69da 100644
+--- a/sysdeps/aarch64/fpu/exp10f_advsimd.c
++++ b/sysdeps/aarch64/fpu/exp10f_advsimd.c
+@@ -25,7 +25,8 @@
+ static const struct data
+ {
+   float32x4_t poly[5];
+-  float32x4_t shift, log10_2, log2_10_hi, log2_10_lo;
++  float32x4_t log10_2_and_inv, shift;
++
+ #if !WANT_SIMD_EXCEPT
+   float32x4_t scale_thresh;
+ #endif
+@@ -38,9 +39,9 @@ static const struct data
+   .poly = { V4 (0x1.26bb16p+1f), V4 (0x1.5350d2p+1f), V4 (0x1.04744ap+1f),
+ 	    V4 (0x1.2d8176p+0f), V4 (0x1.12b41ap-1f) },
+   .shift = V4 (0x1.8p23f),
+-  .log10_2 = V4 (0x1.a934fp+1),
+-  .log2_10_hi = V4 (0x1.344136p-2),
+-  .log2_10_lo = V4 (-0x1.ec10cp-27),
++
++  /* Stores constants 1/log10(2), log10(2)_high, log10(2)_low, 0.  */
++  .log10_2_and_inv = { 0x1.a934fp+1, 0x1.344136p-2, -0x1.ec10cp-27, 0 },
+ #if !WANT_SIMD_EXCEPT
+   .scale_thresh = V4 (ScaleBound)
+ #endif
+@@ -98,24 +99,22 @@ float32x4_t VPCS_ATTR NOINLINE V_NAME_F1 (exp10) (float32x4_t x)
+ #if WANT_SIMD_EXCEPT
+   /* asuint(x) - TinyBound >= BigBound - TinyBound.  */
+   uint32x4_t cmp = vcgeq_u32 (
+-      vsubq_u32 (vandq_u32 (vreinterpretq_u32_f32 (x), v_u32 (0x7fffffff)),
+-		 TinyBound),
+-      Thres);
++      vsubq_u32 (vreinterpretq_u32_f32 (vabsq_f32 (x)), TinyBound), Thres);
+   float32x4_t xm = x;
+   /* If any lanes are special, mask them with 1 and retain a copy of x to allow
+      special case handler to fix special lanes later. This is only necessary if
+      fenv exceptions are to be triggered correctly.  */
+   if (__glibc_unlikely (v_any_u32 (cmp)))
+-    x = vbslq_f32 (cmp, v_f32 (1), x);
++    x = v_zerofy_f32 (x, cmp);
+ #endif
+ 
+   /* exp10(x) = 2^n * 10^r = 2^n * (1 + poly (r)),
+      with poly(r) in [1/sqrt(2), sqrt(2)] and
+      x = r + n * log10 (2), with r in [-log10(2)/2, log10(2)/2].  */
+-  float32x4_t z = vfmaq_f32 (d->shift, x, d->log10_2);
++  float32x4_t z = vfmaq_laneq_f32 (d->shift, x, d->log10_2_and_inv, 0);
+   float32x4_t n = vsubq_f32 (z, d->shift);
+-  float32x4_t r = vfmsq_f32 (x, n, d->log2_10_hi);
+-  r = vfmsq_f32 (r, n, d->log2_10_lo);
++  float32x4_t r = vfmsq_laneq_f32 (x, n, d->log10_2_and_inv, 1);
++  r = vfmsq_laneq_f32 (r, n, d->log10_2_and_inv, 2);
+   uint32x4_t e = vshlq_n_u32 (vreinterpretq_u32_f32 (z), 23);
+ 
+   float32x4_t scale = vreinterpretq_f32_u32 (vaddq_u32 (e, ExponentBias));
+diff --git a/sysdeps/aarch64/fpu/exp2_advsimd.c b/sysdeps/aarch64/fpu/exp2_advsimd.c
+index 391a93180c..ae1e63d503 100644
+--- a/sysdeps/aarch64/fpu/exp2_advsimd.c
++++ b/sysdeps/aarch64/fpu/exp2_advsimd.c
+@@ -24,6 +24,7 @@
+ #define IndexMask (N - 1)
+ #define BigBound 1022.0
+ #define UOFlowBound 1280.0
++#define TinyBound 0x2000000000000000 /* asuint64(0x1p-511).  */
+ 
+ static const struct data
+ {
+@@ -48,14 +49,13 @@ lookup_sbits (uint64x2_t i)
+ 
+ #if WANT_SIMD_EXCEPT
+ 
+-# define TinyBound 0x2000000000000000 /* asuint64(0x1p-511).  */
+ # define Thres 0x2080000000000000     /* asuint64(512.0) - TinyBound.  */
+ 
+ /* Call scalar exp2 as a fallback.  */
+ static float64x2_t VPCS_ATTR NOINLINE
+-special_case (float64x2_t x)
++special_case (float64x2_t x, float64x2_t y, uint64x2_t is_special)
+ {
+-  return v_call_f64 (exp2, x, x, v_u64 (0xffffffffffffffff));
++  return v_call_f64 (exp2, x, y, is_special);
+ }
+ 
+ #else
+@@ -65,7 +65,7 @@ special_case (float64x2_t x)
+ # define SpecialBias1 0x7000000000000000 /* 0x1p769.  */
+ # define SpecialBias2 0x3010000000000000 /* 0x1p-254.  */
+ 
+-static float64x2_t VPCS_ATTR
++static inline float64x2_t VPCS_ATTR
+ special_case (float64x2_t s, float64x2_t y, float64x2_t n,
+ 	      const struct data *d)
+ {
+@@ -94,10 +94,10 @@ float64x2_t V_NAME_D1 (exp2) (float64x2_t x)
+ #if WANT_SIMD_EXCEPT
+   uint64x2_t ia = vreinterpretq_u64_f64 (vabsq_f64 (x));
+   cmp = vcgeq_u64 (vsubq_u64 (ia, v_u64 (TinyBound)), v_u64 (Thres));
+-  /* If any special case (inf, nan, small and large x) is detected,
+-     fall back to scalar for all lanes.  */
+-  if (__glibc_unlikely (v_any_u64 (cmp)))
+-    return special_case (x);
++  /* Mask special lanes and retain a copy of x for passing to special-case
++     handler.  */
++  float64x2_t xc = x;
++  x = v_zerofy_f64 (x, cmp);
+ #else
+   cmp = vcagtq_f64 (x, d->scale_big_bound);
+ #endif
+@@ -120,9 +120,11 @@ float64x2_t V_NAME_D1 (exp2) (float64x2_t x)
+   float64x2_t y = v_pairwise_poly_3_f64 (r, r2, d->poly);
+   y = vmulq_f64 (r, y);
+ 
+-#if !WANT_SIMD_EXCEPT
+   if (__glibc_unlikely (v_any_u64 (cmp)))
++#if !WANT_SIMD_EXCEPT
+     return special_case (s, y, n, d);
++#else
++    return special_case (xc, vfmaq_f64 (s, s, y), cmp);
+ #endif
+   return vfmaq_f64 (s, s, y);
+ }
+diff --git a/sysdeps/aarch64/fpu/exp2f_sve.c b/sysdeps/aarch64/fpu/exp2f_sve.c
+index 9a5a523a10..8a686e3e05 100644
+--- a/sysdeps/aarch64/fpu/exp2f_sve.c
++++ b/sysdeps/aarch64/fpu/exp2f_sve.c
+@@ -20,6 +20,8 @@
+ #include "sv_math.h"
+ #include "poly_sve_f32.h"
+ 
++#define Thres 0x1.5d5e2ap+6f
++
+ static const struct data
+ {
+   float poly[5];
+@@ -33,7 +35,7 @@ static const struct data
+   .shift = 0x1.903f8p17f,
+   /* Roughly 87.3. For x < -Thres, the result is subnormal and not handled
+      correctly by FEXPA.  */
+-  .thres = 0x1.5d5e2ap+6f,
++  .thres = Thres,
+ };
+ 
+ static svfloat32_t NOINLINE
+diff --git a/sysdeps/aarch64/fpu/exp_advsimd.c b/sysdeps/aarch64/fpu/exp_advsimd.c
+index fd215f1d2c..5e3a9a0d44 100644
+--- a/sysdeps/aarch64/fpu/exp_advsimd.c
++++ b/sysdeps/aarch64/fpu/exp_advsimd.c
+@@ -54,7 +54,7 @@ const static volatile struct
+ # define BigBound v_u64 (0x4080000000000000) /* asuint64 (0x1p9).  */
+ # define SpecialBound v_u64 (0x2080000000000000) /* BigBound - TinyBound.  */
+ 
+-static inline float64x2_t VPCS_ATTR
++static float64x2_t VPCS_ATTR NOINLINE
+ special_case (float64x2_t x, float64x2_t y, uint64x2_t cmp)
+ {
+   /* If fenv exceptions are to be triggered correctly, fall back to the scalar
+@@ -69,7 +69,7 @@ special_case (float64x2_t x, float64x2_t y, uint64x2_t cmp)
+ # define SpecialBias1 v_u64 (0x7000000000000000) /* 0x1p769.  */
+ # define SpecialBias2 v_u64 (0x3010000000000000) /* 0x1p-254.  */
+ 
+-static float64x2_t VPCS_ATTR NOINLINE
++static inline float64x2_t VPCS_ATTR
+ special_case (float64x2_t s, float64x2_t y, float64x2_t n)
+ {
+   /* 2^(n/N) may overflow, break it up into s1*s2.  */
+diff --git a/sysdeps/aarch64/fpu/expm1_advsimd.c b/sysdeps/aarch64/fpu/expm1_advsimd.c
+index 0b85bd06f3..3628398674 100644
+--- a/sysdeps/aarch64/fpu/expm1_advsimd.c
++++ b/sysdeps/aarch64/fpu/expm1_advsimd.c
+@@ -23,7 +23,7 @@
+ static const struct data
+ {
+   float64x2_t poly[11];
+-  float64x2_t invln2, ln2_lo, ln2_hi, shift;
++  float64x2_t invln2, ln2, shift;
+   int64x2_t exponent_bias;
+ #if WANT_SIMD_EXCEPT
+   uint64x2_t thresh, tiny_bound;
+@@ -38,8 +38,7 @@ static const struct data
+ 	    V2 (0x1.71ddf82db5bb4p-19), V2 (0x1.27e517fc0d54bp-22),
+ 	    V2 (0x1.af5eedae67435p-26), V2 (0x1.1f143d060a28ap-29) },
+   .invln2 = V2 (0x1.71547652b82fep0),
+-  .ln2_hi = V2 (0x1.62e42fefa39efp-1),
+-  .ln2_lo = V2 (0x1.abc9e3b39803fp-56),
++  .ln2 = { 0x1.62e42fefa39efp-1, 0x1.abc9e3b39803fp-56 },
+   .shift = V2 (0x1.8p52),
+   .exponent_bias = V2 (0x3ff0000000000000),
+ #if WANT_SIMD_EXCEPT
+@@ -83,7 +82,7 @@ float64x2_t VPCS_ATTR V_NAME_D1 (expm1) (float64x2_t x)
+     x = v_zerofy_f64 (x, special);
+ #else
+   /* Large input, NaNs and Infs.  */
+-  uint64x2_t special = vceqzq_u64 (vcaltq_f64 (x, d->oflow_bound));
++  uint64x2_t special = vcageq_f64 (x, d->oflow_bound);
+ #endif
+ 
+   /* Reduce argument to smaller range:
+@@ -93,8 +92,8 @@ float64x2_t VPCS_ATTR V_NAME_D1 (expm1) (float64x2_t x)
+      where 2^i is exact because i is an integer.  */
+   float64x2_t n = vsubq_f64 (vfmaq_f64 (d->shift, d->invln2, x), d->shift);
+   int64x2_t i = vcvtq_s64_f64 (n);
+-  float64x2_t f = vfmsq_f64 (x, n, d->ln2_hi);
+-  f = vfmsq_f64 (f, n, d->ln2_lo);
++  float64x2_t f = vfmsq_laneq_f64 (x, n, d->ln2, 0);
++  f = vfmsq_laneq_f64 (f, n, d->ln2, 1);
+ 
+   /* Approximate expm1(f) using polynomial.
+      Taylor expansion for expm1(x) has the form:
+diff --git a/sysdeps/aarch64/fpu/expm1f_advsimd.c b/sysdeps/aarch64/fpu/expm1f_advsimd.c
+index 8d4c9a2193..93db200f61 100644
+--- a/sysdeps/aarch64/fpu/expm1f_advsimd.c
++++ b/sysdeps/aarch64/fpu/expm1f_advsimd.c
+@@ -23,7 +23,8 @@
+ static const struct data
+ {
+   float32x4_t poly[5];
+-  float32x4_t invln2, ln2_lo, ln2_hi, shift;
++  float32x4_t invln2_and_ln2;
++  float32x4_t shift;
+   int32x4_t exponent_bias;
+ #if WANT_SIMD_EXCEPT
+   uint32x4_t thresh;
+@@ -34,9 +35,8 @@ static const struct data
+   /* Generated using fpminimax with degree=5 in [-log(2)/2, log(2)/2].  */
+   .poly = { V4 (0x1.fffffep-2), V4 (0x1.5554aep-3), V4 (0x1.555736p-5),
+ 	    V4 (0x1.12287cp-7), V4 (0x1.6b55a2p-10) },
+-  .invln2 = V4 (0x1.715476p+0f),
+-  .ln2_hi = V4 (0x1.62e4p-1f),
+-  .ln2_lo = V4 (0x1.7f7d1cp-20f),
++  /* Stores constants: invln2, ln2_hi, ln2_lo, 0.  */
++  .invln2_and_ln2 = { 0x1.715476p+0f, 0x1.62e4p-1f, 0x1.7f7d1cp-20f, 0 },
+   .shift = V4 (0x1.8p23f),
+   .exponent_bias = V4 (0x3f800000),
+ #if !WANT_SIMD_EXCEPT
+@@ -80,7 +80,7 @@ float32x4_t VPCS_ATTR NOINLINE V_NAME_F1 (expm1) (float32x4_t x)
+     x = v_zerofy_f32 (x, special);
+ #else
+   /* Handles very large values (+ve and -ve), +/-NaN, +/-Inf.  */
+-  uint32x4_t special = vceqzq_u32 (vcaltq_f32 (x, d->oflow_bound));
++  uint32x4_t special = vcagtq_f32 (x, d->oflow_bound);
+ #endif
+ 
+   /* Reduce argument to smaller range:
+@@ -88,10 +88,11 @@ float32x4_t VPCS_ATTR NOINLINE V_NAME_F1 (expm1) (float32x4_t x)
+      and f = x - i * ln2, then f is in [-ln2/2, ln2/2].
+      exp(x) - 1 = 2^i * (expm1(f) + 1) - 1
+      where 2^i is exact because i is an integer.  */
+-  float32x4_t j = vsubq_f32 (vfmaq_f32 (d->shift, d->invln2, x), d->shift);
++  float32x4_t j = vsubq_f32 (
++      vfmaq_laneq_f32 (d->shift, x, d->invln2_and_ln2, 0), d->shift);
+   int32x4_t i = vcvtq_s32_f32 (j);
+-  float32x4_t f = vfmsq_f32 (x, j, d->ln2_hi);
+-  f = vfmsq_f32 (f, j, d->ln2_lo);
++  float32x4_t f = vfmsq_laneq_f32 (x, j, d->invln2_and_ln2, 1);
++  f = vfmsq_laneq_f32 (f, j, d->invln2_and_ln2, 2);
+ 
+   /* Approximate expm1(f) using polynomial.
+      Taylor expansion for expm1(x) has the form:
+diff --git a/sysdeps/aarch64/fpu/log_advsimd.c b/sysdeps/aarch64/fpu/log_advsimd.c
+index 067ae79613..21df61728c 100644
+--- a/sysdeps/aarch64/fpu/log_advsimd.c
++++ b/sysdeps/aarch64/fpu/log_advsimd.c
+@@ -58,8 +58,13 @@ lookup (uint64x2_t i)
+   uint64_t i1 = (i[1] >> (52 - V_LOG_TABLE_BITS)) & IndexMask;
+   float64x2_t e0 = vld1q_f64 (&__v_log_data.table[i0].invc);
+   float64x2_t e1 = vld1q_f64 (&__v_log_data.table[i1].invc);
++#if __BYTE_ORDER == __LITTLE_ENDIAN
+   e.invc = vuzp1q_f64 (e0, e1);
+   e.logc = vuzp2q_f64 (e0, e1);
++#else
++  e.invc = vuzp1q_f64 (e1, e0);
++  e.logc = vuzp2q_f64 (e1, e0);
++#endif
+   return e;
+ }
+ 
+diff --git a/sysdeps/aarch64/fpu/sin_advsimd.c b/sysdeps/aarch64/fpu/sin_advsimd.c
+index efce183e86..a0d9d3b819 100644
+--- a/sysdeps/aarch64/fpu/sin_advsimd.c
++++ b/sysdeps/aarch64/fpu/sin_advsimd.c
+@@ -75,8 +75,7 @@ float64x2_t VPCS_ATTR V_NAME_D1 (sin) (float64x2_t x)
+   r = vbslq_f64 (cmp, vreinterpretq_f64_u64 (cmp), x);
+ #else
+   r = x;
+-  cmp = vcageq_f64 (d->range_val, x);
+-  cmp = vceqzq_u64 (cmp); /* cmp = ~cmp.  */
++  cmp = vcageq_f64 (x, d->range_val);
+ #endif
+ 
+   /* n = rint(|x|/pi).  */
+diff --git a/sysdeps/aarch64/fpu/sinf_advsimd.c b/sysdeps/aarch64/fpu/sinf_advsimd.c
+index 60cf3f2ca1..375dfc3331 100644
+--- a/sysdeps/aarch64/fpu/sinf_advsimd.c
++++ b/sysdeps/aarch64/fpu/sinf_advsimd.c
+@@ -67,8 +67,7 @@ float32x4_t VPCS_ATTR NOINLINE V_NAME_F1 (sin) (float32x4_t x)
+   r = vbslq_f32 (cmp, vreinterpretq_f32_u32 (cmp), x);
+ #else
+   r = x;
+-  cmp = vcageq_f32 (d->range_val, x);
+-  cmp = vceqzq_u32 (cmp); /* cmp = ~cmp.  */
++  cmp = vcageq_f32 (x, d->range_val);
+ #endif
+ 
+   /* n = rint(|x|/pi) */
+diff --git a/sysdeps/aarch64/fpu/tan_advsimd.c b/sysdeps/aarch64/fpu/tan_advsimd.c
+index d7e5ba7b1a..0459821ab2 100644
+--- a/sysdeps/aarch64/fpu/tan_advsimd.c
++++ b/sysdeps/aarch64/fpu/tan_advsimd.c
+@@ -23,7 +23,7 @@
+ static const struct data
+ {
+   float64x2_t poly[9];
+-  float64x2_t half_pi_hi, half_pi_lo, two_over_pi, shift;
++  float64x2_t half_pi, two_over_pi, shift;
+ #if !WANT_SIMD_EXCEPT
+   float64x2_t range_val;
+ #endif
+@@ -34,8 +34,7 @@ static const struct data
+ 	    V2 (0x1.226e5e5ecdfa3p-7), V2 (0x1.d6c7ddbf87047p-9),
+ 	    V2 (0x1.7ea75d05b583ep-10), V2 (0x1.289f22964a03cp-11),
+ 	    V2 (0x1.4e4fd14147622p-12) },
+-  .half_pi_hi = V2 (0x1.921fb54442d18p0),
+-  .half_pi_lo = V2 (0x1.1a62633145c07p-54),
++  .half_pi = { 0x1.921fb54442d18p0, 0x1.1a62633145c07p-54 },
+   .two_over_pi = V2 (0x1.45f306dc9c883p-1),
+   .shift = V2 (0x1.8p52),
+ #if !WANT_SIMD_EXCEPT
+@@ -56,15 +55,15 @@ special_case (float64x2_t x)
+ 
+ /* Vector approximation for double-precision tan.
+    Maximum measured error is 3.48 ULP:
+-   __v_tan(0x1.4457047ef78d8p+20) got -0x1.f6ccd8ecf7dedp+37
+-				 want -0x1.f6ccd8ecf7deap+37.   */
++   _ZGVnN2v_tan(0x1.4457047ef78d8p+20) got -0x1.f6ccd8ecf7dedp+37
++				      want -0x1.f6ccd8ecf7deap+37.  */
+ float64x2_t VPCS_ATTR V_NAME_D1 (tan) (float64x2_t x)
+ {
+   const struct data *dat = ptr_barrier (&data);
+-  /* Our argument reduction cannot calculate q with sufficient accuracy for very
+-     large inputs. Fall back to scalar routine for all lanes if any are too
+-     large, or Inf/NaN. If fenv exceptions are expected, also fall back for tiny
+-     input to avoid underflow.  */
++  /* Our argument reduction cannot calculate q with sufficient accuracy for
++     very large inputs. Fall back to scalar routine for all lanes if any are
++     too large, or Inf/NaN. If fenv exceptions are expected, also fall back for
++     tiny input to avoid underflow.  */
+ #if WANT_SIMD_EXCEPT
+   uint64x2_t iax = vreinterpretq_u64_f64 (vabsq_f64 (x));
+   /* iax - tiny_bound > range_val - tiny_bound.  */
+@@ -82,8 +81,8 @@ float64x2_t VPCS_ATTR V_NAME_D1 (tan) (float64x2_t x)
+   /* Use q to reduce x to r in [-pi/4, pi/4], by:
+      r = x - q * pi/2, in extended precision.  */
+   float64x2_t r = x;
+-  r = vfmsq_f64 (r, q, dat->half_pi_hi);
+-  r = vfmsq_f64 (r, q, dat->half_pi_lo);
++  r = vfmsq_laneq_f64 (r, q, dat->half_pi, 0);
++  r = vfmsq_laneq_f64 (r, q, dat->half_pi, 1);
+   /* Further reduce r to [-pi/8, pi/8], to be reconstructed using double angle
+      formula.  */
+   r = vmulq_n_f64 (r, 0.5);
+@@ -106,14 +105,15 @@ float64x2_t VPCS_ATTR V_NAME_D1 (tan) (float64x2_t x)
+      and reciprocity around pi/2:
+      tan(x) = 1 / (tan(pi/2 - x))
+      to assemble result using change-of-sign and conditional selection of
+-     numerator/denominator, dependent on odd/even-ness of q (hence quadrant). */
++     numerator/denominator, dependent on odd/even-ness of q (hence quadrant).
++   */
+   float64x2_t n = vfmaq_f64 (v_f64 (-1), p, p);
+   float64x2_t d = vaddq_f64 (p, p);
+ 
+   uint64x2_t no_recip = vtstq_u64 (vreinterpretq_u64_s64 (qi), v_u64 (1));
+ 
+ #if !WANT_SIMD_EXCEPT
+-  uint64x2_t special = vceqzq_u64 (vcaleq_f64 (x, dat->range_val));
++  uint64x2_t special = vcageq_f64 (x, dat->range_val);
+   if (__glibc_unlikely (v_any_u64 (special)))
+     return special_case (x);
+ #endif
+diff --git a/sysdeps/aarch64/fpu/tanf_advsimd.c b/sysdeps/aarch64/fpu/tanf_advsimd.c
+index 1f16103f8a..5a7489390a 100644
+--- a/sysdeps/aarch64/fpu/tanf_advsimd.c
++++ b/sysdeps/aarch64/fpu/tanf_advsimd.c
+@@ -23,7 +23,8 @@
+ static const struct data
+ {
+   float32x4_t poly[6];
+-  float32x4_t neg_half_pi_1, neg_half_pi_2, neg_half_pi_3, two_over_pi, shift;
++  float32x4_t pi_consts;
++  float32x4_t shift;
+ #if !WANT_SIMD_EXCEPT
+   float32x4_t range_val;
+ #endif
+@@ -31,10 +32,9 @@ static const struct data
+   /* Coefficients generated using FPMinimax.  */
+   .poly = { V4 (0x1.55555p-2f), V4 (0x1.11166p-3f), V4 (0x1.b88a78p-5f),
+ 	    V4 (0x1.7b5756p-6f), V4 (0x1.4ef4cep-8f), V4 (0x1.0e1e74p-7f) },
+-  .neg_half_pi_1 = V4 (-0x1.921fb6p+0f),
+-  .neg_half_pi_2 = V4 (0x1.777a5cp-25f),
+-  .neg_half_pi_3 = V4 (0x1.ee59dap-50f),
+-  .two_over_pi = V4 (0x1.45f306p-1f),
++  /* Stores constants: (-pi/2)_high, (-pi/2)_mid, (-pi/2)_low, and 2/pi.  */
++  .pi_consts
++  = { -0x1.921fb6p+0f, 0x1.777a5cp-25f, 0x1.ee59dap-50f, 0x1.45f306p-1f },
+   .shift = V4 (0x1.8p+23f),
+ #if !WANT_SIMD_EXCEPT
+   .range_val = V4 (0x1p15f),
+@@ -58,10 +58,11 @@ eval_poly (float32x4_t z, const struct data *d)
+ {
+   float32x4_t z2 = vmulq_f32 (z, z);
+ #if WANT_SIMD_EXCEPT
+-  /* Tiny z (<= 0x1p-31) will underflow when calculating z^4. If fp exceptions
+-     are to be triggered correctly, sidestep this by fixing such lanes to 0.  */
++  /* Tiny z (<= 0x1p-31) will underflow when calculating z^4.
++     If fp exceptions are to be triggered correctly,
++     sidestep this by fixing such lanes to 0.  */
+   uint32x4_t will_uflow
+-    = vcleq_u32 (vreinterpretq_u32_f32 (vabsq_f32 (z)), TinyBound);
++      = vcleq_u32 (vreinterpretq_u32_f32 (vabsq_f32 (z)), TinyBound);
+   if (__glibc_unlikely (v_any_u32 (will_uflow)))
+     z2 = vbslq_f32 (will_uflow, v_f32 (0), z2);
+ #endif
+@@ -94,16 +95,16 @@ float32x4_t VPCS_ATTR NOINLINE V_NAME_F1 (tan) (float32x4_t x)
+ #endif
+ 
+   /* n = rint(x/(pi/2)).  */
+-  float32x4_t q = vfmaq_f32 (d->shift, d->two_over_pi, x);
++  float32x4_t q = vfmaq_laneq_f32 (d->shift, x, d->pi_consts, 3);
+   float32x4_t n = vsubq_f32 (q, d->shift);
+   /* Determine if x lives in an interval, where |tan(x)| grows to infinity.  */
+   uint32x4_t pred_alt = vtstq_u32 (vreinterpretq_u32_f32 (q), v_u32 (1));
+ 
+   /* r = x - n * (pi/2)  (range reduction into -pi./4 .. pi/4).  */
+   float32x4_t r;
+-  r = vfmaq_f32 (x, d->neg_half_pi_1, n);
+-  r = vfmaq_f32 (r, d->neg_half_pi_2, n);
+-  r = vfmaq_f32 (r, d->neg_half_pi_3, n);
++  r = vfmaq_laneq_f32 (x, n, d->pi_consts, 0);
++  r = vfmaq_laneq_f32 (r, n, d->pi_consts, 1);
++  r = vfmaq_laneq_f32 (r, n, d->pi_consts, 2);
+ 
+   /* If x lives in an interval, where |tan(x)|
+      - is finite, then use a polynomial approximation of the form
+
+commit 395a89f61e19fa916ae4cc93fc10d81a28ce3039
+Author: Szabolcs Nagy <szabolcs.nagy@arm.com>
+Date:   Wed Mar 13 14:34:14 2024 +0000
+
+    aarch64: fix check for SVE support in assembler
+    
+    Due to GCC bug 110901 -mcpu can override -march setting when compiling
+    asm code and thus a compiler targetting a specific cpu can fail the
+    configure check even when binutils gas supports SVE.
+    
+    The workaround is that explicit .arch directive overrides both -mcpu
+    and -march, and since that's what the actual SVE memcpy uses the
+    configure check should use that too even if the GCC issue is fixed
+    independently.
+    
+    Reviewed-by: Florian Weimer <fweimer@redhat.com>
+    (cherry picked from commit 73c26018ed0ecd9c807bb363cc2c2ab4aca66a82)
+
+diff --git a/sysdeps/aarch64/configure b/sysdeps/aarch64/configure
+old mode 100644
+new mode 100755
+index ca57edce47..9606137e8d
+--- a/sysdeps/aarch64/configure
++++ b/sysdeps/aarch64/configure
+@@ -325,9 +325,10 @@ then :
+   printf %s "(cached) " >&6
+ else $as_nop
+   cat > conftest.s <<\EOF
+-        ptrue p0.b
++	.arch armv8.2-a+sve
++	ptrue p0.b
+ EOF
+-if { ac_try='${CC-cc} -c -march=armv8.2-a+sve conftest.s 1>&5'
++if { ac_try='${CC-cc} -c conftest.s 1>&5'
+   { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_try\""; } >&5
+   (eval $ac_try) 2>&5
+   ac_status=$?
+diff --git a/sysdeps/aarch64/configure.ac b/sysdeps/aarch64/configure.ac
+index 27874eceb4..56d12d661d 100644
+--- a/sysdeps/aarch64/configure.ac
++++ b/sysdeps/aarch64/configure.ac
+@@ -90,9 +90,10 @@ LIBC_CONFIG_VAR([aarch64-variant-pcs], [$libc_cv_aarch64_variant_pcs])
+ # Check if asm support armv8.2-a+sve
+ AC_CACHE_CHECK([for SVE support in assembler], [libc_cv_aarch64_sve_asm], [dnl
+ cat > conftest.s <<\EOF
+-        ptrue p0.b
++	.arch armv8.2-a+sve
++	ptrue p0.b
+ EOF
+-if AC_TRY_COMMAND(${CC-cc} -c -march=armv8.2-a+sve conftest.s 1>&AS_MESSAGE_LOG_FD); then
++if AC_TRY_COMMAND(${CC-cc} -c conftest.s 1>&AS_MESSAGE_LOG_FD); then
+   libc_cv_aarch64_sve_asm=yes
+ else
+   libc_cv_aarch64_sve_asm=no
+
+commit 9d92452c70805a2e2dbbdb2b1ffc34bd86e1c8df
+Author: Wilco Dijkstra <wilco.dijkstra@arm.com>
+Date:   Thu Mar 21 16:48:33 2024 +0000
+
+    AArch64: Check kernel version for SVE ifuncs
+    
+    Old Linux kernels disable SVE after every system call.  Calling the
+    SVE-optimized memcpy afterwards will then cause a trap to reenable SVE.
+    As a result, applications with a high use of syscalls may run slower with
+    the SVE memcpy.  This is true for kernels between 4.15.0 and before 6.2.0,
+    except for 5.14.0 which was patched.  Avoid this by checking the kernel
+    version and selecting the SVE ifunc on modern kernels.
+    
+    Parse the kernel version reported by uname() into a 24-bit kernel.major.minor
+    value without calling any library functions.  If uname() is not supported or
+    if the version format is not recognized, assume the kernel is modern.
+    
+    Tested-by: Florian Weimer <fweimer@redhat.com>
+    Reviewed-by: Szabolcs Nagy <szabolcs.nagy@arm.com>
+    (cherry picked from commit 2e94e2f5d2bf2de124c8ad7da85463355e54ccb2)
+
+diff --git a/sysdeps/aarch64/cpu-features.h b/sysdeps/aarch64/cpu-features.h
+index 77a782422a..5f2da91ebb 100644
+--- a/sysdeps/aarch64/cpu-features.h
++++ b/sysdeps/aarch64/cpu-features.h
+@@ -71,6 +71,7 @@ struct cpu_features
+   /* Currently, the GLIBC memory tagging tunable only defines 8 bits.  */
+   uint8_t mte_state;
+   bool sve;
++  bool prefer_sve_ifuncs;
+   bool mops;
+ };
+ 
+diff --git a/sysdeps/aarch64/multiarch/init-arch.h b/sysdeps/aarch64/multiarch/init-arch.h
+index c52860efb2..61dc40088f 100644
+--- a/sysdeps/aarch64/multiarch/init-arch.h
++++ b/sysdeps/aarch64/multiarch/init-arch.h
+@@ -36,5 +36,7 @@
+     MTE_ENABLED ();							      \
+   bool __attribute__((unused)) sve =					      \
+     GLRO(dl_aarch64_cpu_features).sve;					      \
++  bool __attribute__((unused)) prefer_sve_ifuncs =			      \
++    GLRO(dl_aarch64_cpu_features).prefer_sve_ifuncs;			      \
+   bool __attribute__((unused)) mops =					      \
+     GLRO(dl_aarch64_cpu_features).mops;
+diff --git a/sysdeps/aarch64/multiarch/memcpy.c b/sysdeps/aarch64/multiarch/memcpy.c
+index d12eccfca5..ce53567dab 100644
+--- a/sysdeps/aarch64/multiarch/memcpy.c
++++ b/sysdeps/aarch64/multiarch/memcpy.c
+@@ -47,7 +47,7 @@ select_memcpy_ifunc (void)
+     {
+       if (IS_A64FX (midr))
+ 	return __memcpy_a64fx;
+-      return __memcpy_sve;
++      return prefer_sve_ifuncs ? __memcpy_sve : __memcpy_generic;
+     }
+ 
+   if (IS_THUNDERX (midr))
+diff --git a/sysdeps/aarch64/multiarch/memmove.c b/sysdeps/aarch64/multiarch/memmove.c
+index 2081eeb4d4..fe95037be3 100644
+--- a/sysdeps/aarch64/multiarch/memmove.c
++++ b/sysdeps/aarch64/multiarch/memmove.c
+@@ -47,7 +47,7 @@ select_memmove_ifunc (void)
+     {
+       if (IS_A64FX (midr))
+ 	return __memmove_a64fx;
+-      return __memmove_sve;
++      return prefer_sve_ifuncs ? __memmove_sve : __memmove_generic;
+     }
+ 
+   if (IS_THUNDERX (midr))
+diff --git a/sysdeps/unix/sysv/linux/aarch64/cpu-features.c b/sysdeps/unix/sysv/linux/aarch64/cpu-features.c
+index b1a3f673f0..c0b047bc0d 100644
+--- a/sysdeps/unix/sysv/linux/aarch64/cpu-features.c
++++ b/sysdeps/unix/sysv/linux/aarch64/cpu-features.c
+@@ -21,6 +21,7 @@
+ #include <sys/auxv.h>
+ #include <elf/dl-hwcaps.h>
+ #include <sys/prctl.h>
++#include <sys/utsname.h>
+ #include <dl-tunables-parse.h>
+ 
+ #define DCZID_DZP_MASK (1 << 4)
+@@ -62,6 +63,46 @@ get_midr_from_mcpu (const struct tunable_str_t *mcpu)
+   return UINT64_MAX;
+ }
+ 
++#if __LINUX_KERNEL_VERSION < 0x060200
++
++/* Return true if we prefer using SVE in string ifuncs.  Old kernels disable
++   SVE after every system call which results in unnecessary traps if memcpy
++   uses SVE.  This is true for kernels between 4.15.0 and before 6.2.0, except
++   for 5.14.0 which was patched.  For these versions return false to avoid using
++   SVE ifuncs.
++   Parse the kernel version into a 24-bit kernel.major.minor value without
++   calling any library functions.  If uname() is not supported or if the version
++   format is not recognized, assume the kernel is modern and return true.  */
++
++static inline bool
++prefer_sve_ifuncs (void)
++{
++  struct utsname buf;
++  const char *p = &buf.release[0];
++  int kernel = 0;
++  int val;
++
++  if (__uname (&buf) < 0)
++    return true;
++
++  for (int shift = 16; shift >= 0; shift -= 8)
++    {
++      for (val = 0; *p >= '0' && *p <= '9'; p++)
++	val = val * 10 + *p - '0';
++      kernel |= (val & 255) << shift;
++      if (*p++ != '.')
++	break;
++    }
++
++  if (kernel >= 0x060200 || kernel == 0x050e00)
++    return true;
++  if (kernel >= 0x040f00)
++    return false;
++  return true;
++}
++
++#endif
++
+ static inline void
+ init_cpu_features (struct cpu_features *cpu_features)
+ {
+@@ -126,6 +167,13 @@ init_cpu_features (struct cpu_features *cpu_features)
+   /* Check if SVE is supported.  */
+   cpu_features->sve = GLRO (dl_hwcap) & HWCAP_SVE;
+ 
++  cpu_features->prefer_sve_ifuncs = cpu_features->sve;
++
++#if __LINUX_KERNEL_VERSION < 0x060200
++  if (cpu_features->sve)
++    cpu_features->prefer_sve_ifuncs = prefer_sve_ifuncs ();
++#endif
++
+   /* Check if MOPS is supported.  */
+   cpu_features->mops = GLRO (dl_hwcap2) & HWCAP2_MOPS;
+ }
+
+commit 9883f4304cfb1558d0f1e6d9f48c4ab0a35355fe
+Author: H.J. Lu <hjl.tools@gmail.com>
+Date:   Wed Feb 28 09:51:14 2024 -0800
+
+    x86-64: Don't use SSE resolvers for ISA level 3 or above
+    
+    When glibc is built with ISA level 3 or above enabled, SSE resolvers
+    aren't available and glibc fails to build:
+    
+    ld: .../elf/librtld.os: in function `init_cpu_features':
+    .../elf/../sysdeps/x86/cpu-features.c:1200:(.text+0x1445f): undefined reference to `_dl_runtime_resolve_fxsave'
+    ld: .../elf/librtld.os: relocation R_X86_64_PC32 against undefined hidden symbol `_dl_runtime_resolve_fxsave' can not be used when making a shared object
+    /usr/local/bin/ld: final link failed: bad value
+    
+    For ISA level 3 or above, don't use _dl_runtime_resolve_fxsave nor
+    _dl_tlsdesc_dynamic_fxsave.
+    
+    This fixes BZ #31429.
+    Reviewed-by: Noah Goldstein <goldstein.w.n@gmail.com>
+    
+    (cherry picked from commit befe2d3c4dec8be2cdd01a47132e47bdb7020922)
+
+diff --git a/sysdeps/x86/cpu-features.c b/sysdeps/x86/cpu-features.c
+index 6fe1b728c6..b8abe733ab 100644
+--- a/sysdeps/x86/cpu-features.c
++++ b/sysdeps/x86/cpu-features.c
+@@ -18,6 +18,7 @@
+ 
+ #include <dl-hwcap.h>
+ #include <libc-pointer-arith.h>
++#include <isa-level.h>
+ #include <get-isa-level.h>
+ #include <cacheinfo.h>
+ #include <dl-cacheinfo.h>
+@@ -1198,7 +1199,9 @@ no_cpuid:
+ 	       TUNABLE_CALLBACK (set_x86_shstk));
+ #endif
+ 
++#if MINIMUM_X86_ISA_LEVEL < AVX_X86_ISA_LEVEL
+   if (GLRO(dl_x86_cpu_features).xsave_state_size != 0)
++#endif
+     {
+       if (CPU_FEATURE_USABLE_P (cpu_features, XSAVEC))
+ 	{
+@@ -1219,22 +1222,24 @@ no_cpuid:
+ #endif
+ 	}
+     }
++#if MINIMUM_X86_ISA_LEVEL < AVX_X86_ISA_LEVEL
+   else
+     {
+-#ifdef __x86_64__
++# ifdef __x86_64__
+       GLRO(dl_x86_64_runtime_resolve) = _dl_runtime_resolve_fxsave;
+-# ifdef SHARED
++#  ifdef SHARED
+       GLRO(dl_x86_tlsdesc_dynamic) = _dl_tlsdesc_dynamic_fxsave;
+-# endif
+-#else
+-# ifdef SHARED
++#  endif
++# else
++#  ifdef SHARED
+       if (CPU_FEATURE_USABLE_P (cpu_features, FXSR))
+ 	GLRO(dl_x86_tlsdesc_dynamic) = _dl_tlsdesc_dynamic_fxsave;
+       else
+ 	GLRO(dl_x86_tlsdesc_dynamic) = _dl_tlsdesc_dynamic_fnsave;
++#  endif
+ # endif
+-#endif
+     }
++#endif
+ 
+ #ifdef SHARED
+ # ifdef __x86_64__
+diff --git a/sysdeps/x86_64/dl-tlsdesc.S b/sysdeps/x86_64/dl-tlsdesc.S
+index ea69f5223a..057a10862a 100644
+--- a/sysdeps/x86_64/dl-tlsdesc.S
++++ b/sysdeps/x86_64/dl-tlsdesc.S
+@@ -20,6 +20,7 @@
+ #include <tls.h>
+ #include <cpu-features-offsets.h>
+ #include <features-offsets.h>
++#include <isa-level.h>
+ #include "tlsdesc.h"
+ #include "dl-trampoline-save.h"
+ 
+@@ -79,12 +80,14 @@ _dl_tlsdesc_undefweak:
+ 	.size	_dl_tlsdesc_undefweak, .-_dl_tlsdesc_undefweak
+ 
+ #ifdef SHARED
+-# define USE_FXSAVE
+-# define STATE_SAVE_ALIGNMENT	16
+-# define _dl_tlsdesc_dynamic	_dl_tlsdesc_dynamic_fxsave
+-# include "dl-tlsdesc-dynamic.h"
+-# undef _dl_tlsdesc_dynamic
+-# undef USE_FXSAVE
++# if MINIMUM_X86_ISA_LEVEL < AVX_X86_ISA_LEVEL
++#  define USE_FXSAVE
++#  define STATE_SAVE_ALIGNMENT	16
++#  define _dl_tlsdesc_dynamic	_dl_tlsdesc_dynamic_fxsave
++#  include "dl-tlsdesc-dynamic.h"
++#  undef _dl_tlsdesc_dynamic
++#  undef USE_FXSAVE
++# endif
+ 
+ # define USE_XSAVE
+ # define STATE_SAVE_ALIGNMENT	64
+
+commit 7b92f46f04c6cbce19d19ae1099628431858996c
+Author: Sunil K Pandey <skpgkp2@gmail.com>
+Date:   Thu Feb 29 17:57:02 2024 -0800
+
+    x86-64: Simplify minimum ISA check ifdef conditional with if
+    
+    Replace minimum ISA check ifdef conditional with if.  Since
+    MINIMUM_X86_ISA_LEVEL and AVX_X86_ISA_LEVEL are compile time constants,
+    compiler will perform constant folding optimization, getting same
+    results.
+    
+    Reviewed-by: H.J. Lu <hjl.tools@gmail.com>
+    (cherry picked from commit b6e3898194bbae78910bbe9cd086937014961e45)
+
+diff --git a/sysdeps/x86/cpu-features.c b/sysdeps/x86/cpu-features.c
+index b8abe733ab..3d7c2819d7 100644
+--- a/sysdeps/x86/cpu-features.c
++++ b/sysdeps/x86/cpu-features.c
+@@ -1199,9 +1199,8 @@ no_cpuid:
+ 	       TUNABLE_CALLBACK (set_x86_shstk));
+ #endif
+ 
+-#if MINIMUM_X86_ISA_LEVEL < AVX_X86_ISA_LEVEL
+-  if (GLRO(dl_x86_cpu_features).xsave_state_size != 0)
+-#endif
++  if (MINIMUM_X86_ISA_LEVEL >= AVX_X86_ISA_LEVEL
++      || (GLRO(dl_x86_cpu_features).xsave_state_size != 0))
+     {
+       if (CPU_FEATURE_USABLE_P (cpu_features, XSAVEC))
+ 	{
+@@ -1222,24 +1221,22 @@ no_cpuid:
+ #endif
+ 	}
+     }
+-#if MINIMUM_X86_ISA_LEVEL < AVX_X86_ISA_LEVEL
+   else
+     {
+-# ifdef __x86_64__
++#ifdef __x86_64__
+       GLRO(dl_x86_64_runtime_resolve) = _dl_runtime_resolve_fxsave;
+-#  ifdef SHARED
++# ifdef SHARED
+       GLRO(dl_x86_tlsdesc_dynamic) = _dl_tlsdesc_dynamic_fxsave;
+-#  endif
+-# else
+-#  ifdef SHARED
++# endif
++#else
++# ifdef SHARED
+       if (CPU_FEATURE_USABLE_P (cpu_features, FXSR))
+ 	GLRO(dl_x86_tlsdesc_dynamic) = _dl_tlsdesc_dynamic_fxsave;
+       else
+ 	GLRO(dl_x86_tlsdesc_dynamic) = _dl_tlsdesc_dynamic_fnsave;
+-#  endif
+ # endif
+-    }
+ #endif
++    }
+ 
+ #ifdef SHARED
+ # ifdef __x86_64__
+
+commit edb9a76e3008725e9dc035d38a58e849a3bde0f1
+Author: Florian Weimer <fweimer@redhat.com>
+Date:   Sun Apr 14 08:24:51 2024 +0200
+
+    powerpc: Fix ld.so address determination for PCREL mode (bug 31640)
+    
+    This seems to have stopped working with some GCC 14 versions,
+    which clobber r2.  With other compilers, the kernel-provided
+    r2 value is still available at this point.
+    
+    Reviewed-by: Peter Bergner <bergner@linux.ibm.com>
+    (cherry picked from commit 14e56bd4ce15ac2d1cc43f762eb2e6b83fec1afe)
+
+diff --git a/sysdeps/powerpc/powerpc64/dl-machine.h b/sysdeps/powerpc/powerpc64/dl-machine.h
+index c6682f3445..2b6f5d2b08 100644
+--- a/sysdeps/powerpc/powerpc64/dl-machine.h
++++ b/sysdeps/powerpc/powerpc64/dl-machine.h
+@@ -78,6 +78,7 @@ elf_host_tolerates_class (const Elf64_Ehdr *ehdr)
+ static inline Elf64_Addr
+ elf_machine_load_address (void) __attribute__ ((const));
+ 
++#ifndef __PCREL__
+ static inline Elf64_Addr
+ elf_machine_load_address (void)
+ {
+@@ -105,6 +106,24 @@ elf_machine_dynamic (void)
+   /* Then subtract off the load address offset.  */
+   return runtime_dynamic - elf_machine_load_address() ;
+ }
++#else /* __PCREL__ */
++/* In PCREL mode, r2 may have been clobbered.  Rely on relative
++   relocations instead.  */
++
++static inline ElfW(Addr)
++elf_machine_load_address (void)
++{
++  extern const ElfW(Ehdr) __ehdr_start attribute_hidden;
++  return (ElfW(Addr)) &__ehdr_start;
++}
++
++static inline ElfW(Addr)
++elf_machine_dynamic (void)
++{
++  extern ElfW(Dyn) _DYNAMIC[] attribute_hidden;
++  return (ElfW(Addr)) _DYNAMIC - elf_machine_load_address ();
++}
++#endif /* __PCREL__ */
+ 
+ /* The PLT uses Elf64_Rela relocs.  */
+ #define elf_machine_relplt elf_machine_rela
+
+commit 04df8652eb1919da18d54b3dcd6db1675993d45d
+Author: H.J. Lu <hjl.tools@gmail.com>
+Date:   Thu Feb 15 11:19:56 2024 -0800
+
+    Apply the Makefile sorting fix
+    
+    Apply the Makefile sorting fix generated by sort-makefile-lines.py.
+    
+    (cherry picked from commit ef7f4b1fef67430a8f3cfc77fa6aada2add851d7)
+
+diff --git a/sysdeps/loongarch/lp64/multiarch/Makefile b/sysdeps/loongarch/lp64/multiarch/Makefile
+index fe863e1ba4..01762ef526 100644
+--- a/sysdeps/loongarch/lp64/multiarch/Makefile
++++ b/sysdeps/loongarch/lp64/multiarch/Makefile
+@@ -1,52 +1,52 @@
+ ifeq ($(subdir),string)
+ sysdep_routines += \
+-  strlen-aligned \
+-  strlen-lsx \
+-  strlen-lasx \
+-  strnlen-aligned \
+-  strnlen-lsx \
+-  strnlen-lasx \
++  memchr-aligned \
++  memchr-lasx \
++  memchr-lsx \
++  memcmp-aligned \
++  memcmp-lasx \
++  memcmp-lsx \
++  memcpy-aligned \
++  memcpy-unaligned \
++  memmove-lasx \
++  memmove-lsx \
++  memmove-unaligned \
++  memrchr-generic \
++  memrchr-lasx \
++  memrchr-lsx \
++  memset-aligned \
++  memset-lasx \
++  memset-lsx \
++  memset-unaligned \
++  rawmemchr-aligned \
++  rawmemchr-lasx \
++  rawmemchr-lsx \
++  stpcpy-aligned \
++  stpcpy-lasx \
++  stpcpy-lsx \
++  stpcpy-unaligned \
+   strchr-aligned \
+-  strchr-lsx \
+   strchr-lasx \
+-  strrchr-aligned \
+-  strrchr-lsx \
+-  strrchr-lasx \
++  strchr-lsx \
+   strchrnul-aligned \
+-  strchrnul-lsx \
+   strchrnul-lasx \
++  strchrnul-lsx \
+   strcmp-aligned \
+   strcmp-lsx \
+-  strncmp-aligned \
+-  strncmp-lsx \
+   strcpy-aligned \
+-  strcpy-unaligned \
+-  strcpy-lsx \
+   strcpy-lasx \
+-  stpcpy-aligned \
+-  stpcpy-unaligned \
+-  stpcpy-lsx \
+-  stpcpy-lasx \
+-  memcpy-aligned \
+-  memcpy-unaligned \
+-  memmove-unaligned \
+-  memmove-lsx \
+-  memmove-lasx \
+-  rawmemchr-aligned \
+-  rawmemchr-lsx \
+-  rawmemchr-lasx \
+-  memchr-aligned \
+-  memchr-lsx \
+-  memchr-lasx \
+-  memrchr-generic \
+-  memrchr-lsx \
+-  memrchr-lasx \
+-  memset-aligned \
+-  memset-unaligned \
+-  memset-lsx \
+-  memset-lasx \
+-  memcmp-aligned \
+-  memcmp-lsx \
+-  memcmp-lasx \
++  strcpy-lsx \
++  strcpy-unaligned \
++  strlen-aligned \
++  strlen-lasx \
++  strlen-lsx \
++  strncmp-aligned \
++  strncmp-lsx \
++  strnlen-aligned \
++  strnlen-lasx \
++  strnlen-lsx \
++  strrchr-aligned \
++  strrchr-lasx \
++  strrchr-lsx \
+ # sysdep_routines
+ endif
+diff --git a/sysdeps/x86/Makefile b/sysdeps/x86/Makefile
+index 992aabe43e..5311b594af 100644
+--- a/sysdeps/x86/Makefile
++++ b/sysdeps/x86/Makefile
+@@ -15,18 +15,18 @@ CFLAGS-dl-get-cpu-features.os += $(rtld-early-cflags)
+ CFLAGS-get-cpuid-feature-leaf.o += $(no-stack-protector)
+ 
+ tests += \
+-  tst-get-cpu-features \
+-  tst-get-cpu-features-static \
+   tst-cpu-features-cpuinfo \
+   tst-cpu-features-cpuinfo-static \
+   tst-cpu-features-supports \
+   tst-cpu-features-supports-static \
++  tst-get-cpu-features \
++  tst-get-cpu-features-static \
+   tst-hwcap-tunables \
+ # tests
+ tests-static += \
+-  tst-get-cpu-features-static \
+   tst-cpu-features-cpuinfo-static \
+   tst-cpu-features-supports-static \
++  tst-get-cpu-features-static \
+ # tests-static
+ ifeq (yes,$(have-ifunc))
+ ifeq (yes,$(have-gcc-ifunc))
+diff --git a/sysdeps/x86_64/Makefile b/sysdeps/x86_64/Makefile
+index 9d374a3299..0ede447405 100644
+--- a/sysdeps/x86_64/Makefile
++++ b/sysdeps/x86_64/Makefile
+@@ -252,6 +252,10 @@ sysdep-dl-routines += dl-cet
+ 
+ tests += \
+   tst-cet-legacy-1 \
++  tst-cet-legacy-10 \
++  tst-cet-legacy-10-static \
++  tst-cet-legacy-10a \
++  tst-cet-legacy-10a-static \
+   tst-cet-legacy-1a \
+   tst-cet-legacy-2 \
+   tst-cet-legacy-2a \
+@@ -263,15 +267,11 @@ tests += \
+   tst-cet-legacy-8 \
+   tst-cet-legacy-9 \
+   tst-cet-legacy-9-static \
+-  tst-cet-legacy-10 \
+-  tst-cet-legacy-10-static \
+-  tst-cet-legacy-10a \
+-  tst-cet-legacy-10a-static \
+ # tests
+ tests-static += \
+-  tst-cet-legacy-9-static \
+   tst-cet-legacy-10-static \
+   tst-cet-legacy-10a-static \
++  tst-cet-legacy-9-static \
+ # tests-static
+ tst-cet-legacy-1a-ARGS = -- $(host-test-program-cmd)
+ 
+diff --git a/sysdeps/x86_64/fpu/multiarch/Makefile b/sysdeps/x86_64/fpu/multiarch/Makefile
+index ea81753b70..e1a490dd98 100644
+--- a/sysdeps/x86_64/fpu/multiarch/Makefile
++++ b/sysdeps/x86_64/fpu/multiarch/Makefile
+@@ -4,10 +4,10 @@ libm-sysdep_routines += \
+   s_ceilf-c \
+   s_floor-c \
+   s_floorf-c \
+-  s_rint-c \
+-  s_rintf-c \
+   s_nearbyint-c \
+   s_nearbyintf-c \
++  s_rint-c \
++  s_rintf-c \
+   s_roundeven-c \
+   s_roundevenf-c \
+   s_trunc-c \
+@@ -21,10 +21,10 @@ libm-sysdep_routines += \
+   s_floorf-sse4_1 \
+   s_nearbyint-sse4_1 \
+   s_nearbyintf-sse4_1 \
+-  s_roundeven-sse4_1 \
+-  s_roundevenf-sse4_1 \
+   s_rint-sse4_1 \
+   s_rintf-sse4_1 \
++  s_roundeven-sse4_1 \
++  s_roundevenf-sse4_1 \
+   s_trunc-sse4_1 \
+   s_truncf-sse4_1 \
+ # libm-sysdep_routines
+@@ -84,12 +84,12 @@ CFLAGS-s_cosf-fma.c = -mfma -mavx2
+ CFLAGS-s_sincosf-fma.c = -mfma -mavx2
+ 
+ libm-sysdep_routines += \
++  e_asin-fma4 \
++  e_atan2-fma4 \
+   e_exp-fma4 \
+   e_log-fma4 \
+   e_pow-fma4 \
+-  e_asin-fma4 \
+   s_atan-fma4 \
+-  e_atan2-fma4 \
+   s_sin-fma4 \
+   s_sincos-fma4 \
+   s_tan-fma4 \
+@@ -106,10 +106,10 @@ CFLAGS-s_tan-fma4.c = -mfma4
+ CFLAGS-s_sincos-fma4.c = -mfma4
+ 
+ libm-sysdep_routines += \
++  e_atan2-avx \
+   e_exp-avx \
+   e_log-avx \
+   s_atan-avx \
+-  e_atan2-avx \
+   s_sin-avx \
+   s_sincos-avx \
+   s_tan-avx \
+diff --git a/sysdeps/x86_64/multiarch/Makefile b/sysdeps/x86_64/multiarch/Makefile
+index e1e894c963..d3d2270394 100644
+--- a/sysdeps/x86_64/multiarch/Makefile
++++ b/sysdeps/x86_64/multiarch/Makefile
+@@ -4,8 +4,8 @@ sysdep_routines += \
+   memchr-avx2 \
+   memchr-avx2-rtm \
+   memchr-evex \
+-  memchr-evex512 \
+   memchr-evex-rtm \
++  memchr-evex512 \
+   memchr-sse2 \
+   memcmp-avx2-movbe \
+   memcmp-avx2-movbe-rtm \
+@@ -37,8 +37,8 @@ sysdep_routines += \
+   rawmemchr-avx2 \
+   rawmemchr-avx2-rtm \
+   rawmemchr-evex \
+-  rawmemchr-evex512 \
+   rawmemchr-evex-rtm \
++  rawmemchr-evex512 \
+   rawmemchr-sse2 \
+   stpcpy-avx2 \
+   stpcpy-avx2-rtm \
+
+commit 423099a03264ea28298f47355d7811b8efe03c97
+Author: Sunil K Pandey <skpgkp2@gmail.com>
+Date:   Tue Feb 13 12:23:14 2024 -0800
+
+    x86_64: Exclude SSE, AVX and FMA4 variants in libm multiarch
+    
+    When glibc is built with ISA level 3 or higher by default, the resulting
+    glibc binaries won't run on SSE or FMA4 processors.  Exclude SSE, AVX and
+    FMA4 variants in libm multiarch when ISA level 3 or higher is enabled by
+    default.
+    
+    When glibc is built with ISA level 2 enabled by default, only keep SSE4.1
+    variant.
+    
+    Fixes BZ 31335.
+    
+    NB: elf/tst-valgrind-smoke test fails with ISA level 4, because valgrind
+    doesn't support AVX512 instructions:
+    
+    https://bugs.kde.org/show_bug.cgi?id=383010
+    
+    Reviewed-by: H.J. Lu <hjl.tools@gmail.com>
+    (cherry picked from commit 9f78a7c1d0963282608da836b840f0d5ae1c478e)
+
+diff --git a/sysdeps/x86/configure b/sysdeps/x86/configure
+index 1f4c2d67fd..2a5421bb31 100644
+--- a/sysdeps/x86/configure
++++ b/sysdeps/x86/configure
+@@ -98,6 +98,7 @@ printf "%s\n" "$libc_cv_have_x86_lahf_sahf" >&6; }
+   if test $libc_cv_have_x86_lahf_sahf = yes; then
+     printf "%s\n" "#define HAVE_X86_LAHF_SAHF 1" >>confdefs.h
+ 
++    ISAFLAG="-DHAVE_X86_LAHF_SAHF"
+   fi
+   { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for MOVBE instruction support" >&5
+ printf %s "checking for MOVBE instruction support... " >&6; }
+@@ -120,9 +121,41 @@ printf "%s\n" "$libc_cv_have_x86_movbe" >&6; }
+   if test $libc_cv_have_x86_movbe = yes; then
+     printf "%s\n" "#define HAVE_X86_MOVBE 1" >>confdefs.h
+ 
++    ISAFLAG="$ISAFLAG -DHAVE_X86_MOVBE"
+   fi
++
++  # Check for ISA level support.
++  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for ISA level support" >&5
++printf %s "checking for ISA level support... " >&6; }
++if test ${libc_cv_have_x86_isa_level+y}
++then :
++  printf %s "(cached) " >&6
++else $as_nop
++  cat > conftest.c <<EOF
++#include <sysdeps/x86/isa-level.h>
++#if MINIMUM_X86_ISA_LEVEL >= 4
++libc_cv_have_x86_isa_level=4
++#elif MINIMUM_X86_ISA_LEVEL == 3
++libc_cv_have_x86_isa_level=3
++#elif MINIMUM_X86_ISA_LEVEL == 2
++libc_cv_have_x86_isa_level=2
++#else
++libc_cv_have_x86_isa_level=baseline
++#endif
++EOF
++		 eval `${CC-cc} $CFLAGS $CPPFLAGS $ISAFLAG -I$srcdir -E conftest.c | grep libc_cv_have_x86_isa_level`
++		 rm -rf conftest*
++fi
++{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $libc_cv_have_x86_isa_level" >&5
++printf "%s\n" "$libc_cv_have_x86_isa_level" >&6; }
++else
++  libc_cv_have_x86_isa_level=baseline
+ fi
+ config_vars="$config_vars
++have-x86-isa-level = $libc_cv_have_x86_isa_level"
++config_vars="$config_vars
++x86-isa-level-3-or-above = 3 4"
++config_vars="$config_vars
+ enable-x86-isa-level = $libc_cv_include_x86_isa_level"
+ 
+ printf "%s\n" "#define SUPPORT_STATIC_PIE 1" >>confdefs.h
+diff --git a/sysdeps/x86/configure.ac b/sysdeps/x86/configure.ac
+index 437a50623b..78ff7c8f41 100644
+--- a/sysdeps/x86/configure.ac
++++ b/sysdeps/x86/configure.ac
+@@ -72,6 +72,7 @@ if test $libc_cv_include_x86_isa_level = yes; then
+     fi])
+   if test $libc_cv_have_x86_lahf_sahf = yes; then
+     AC_DEFINE(HAVE_X86_LAHF_SAHF)
++    ISAFLAG="-DHAVE_X86_LAHF_SAHF"
+   fi
+   AC_CACHE_CHECK([for MOVBE instruction support],
+ 		 libc_cv_have_x86_movbe, [dnl
+@@ -81,8 +82,31 @@ if test $libc_cv_include_x86_isa_level = yes; then
+     fi])
+   if test $libc_cv_have_x86_movbe = yes; then
+     AC_DEFINE(HAVE_X86_MOVBE)
++    ISAFLAG="$ISAFLAG -DHAVE_X86_MOVBE"
+   fi
++
++  # Check for ISA level support.
++  AC_CACHE_CHECK([for ISA level support],
++		 libc_cv_have_x86_isa_level, [dnl
++cat > conftest.c <<EOF
++#include <sysdeps/x86/isa-level.h>
++#if MINIMUM_X86_ISA_LEVEL >= 4
++libc_cv_have_x86_isa_level=4
++#elif MINIMUM_X86_ISA_LEVEL == 3
++libc_cv_have_x86_isa_level=3
++#elif MINIMUM_X86_ISA_LEVEL == 2
++libc_cv_have_x86_isa_level=2
++#else
++libc_cv_have_x86_isa_level=baseline
++#endif
++EOF
++		 eval `${CC-cc} $CFLAGS $CPPFLAGS $ISAFLAG -I$srcdir -E conftest.c | grep libc_cv_have_x86_isa_level`
++		 rm -rf conftest*])
++else
++  libc_cv_have_x86_isa_level=baseline
+ fi
++LIBC_CONFIG_VAR([have-x86-isa-level], [$libc_cv_have_x86_isa_level])
++LIBC_CONFIG_VAR([x86-isa-level-3-or-above], [3 4])
+ LIBC_CONFIG_VAR([enable-x86-isa-level], [$libc_cv_include_x86_isa_level])
+ 
+ dnl Static PIE is supported.
+diff --git a/sysdeps/x86_64/fpu/multiarch/Makefile b/sysdeps/x86_64/fpu/multiarch/Makefile
+index e1a490dd98..6ddd50240c 100644
+--- a/sysdeps/x86_64/fpu/multiarch/Makefile
++++ b/sysdeps/x86_64/fpu/multiarch/Makefile
+@@ -1,49 +1,4 @@
+ ifeq ($(subdir),math)
+-libm-sysdep_routines += \
+-  s_ceil-c \
+-  s_ceilf-c \
+-  s_floor-c \
+-  s_floorf-c \
+-  s_nearbyint-c \
+-  s_nearbyintf-c \
+-  s_rint-c \
+-  s_rintf-c \
+-  s_roundeven-c \
+-  s_roundevenf-c \
+-  s_trunc-c \
+-  s_truncf-c \
+-# libm-sysdep_routines
+-
+-libm-sysdep_routines += \
+-  s_ceil-sse4_1 \
+-  s_ceilf-sse4_1 \
+-  s_floor-sse4_1 \
+-  s_floorf-sse4_1 \
+-  s_nearbyint-sse4_1 \
+-  s_nearbyintf-sse4_1 \
+-  s_rint-sse4_1 \
+-  s_rintf-sse4_1 \
+-  s_roundeven-sse4_1 \
+-  s_roundevenf-sse4_1 \
+-  s_trunc-sse4_1 \
+-  s_truncf-sse4_1 \
+-# libm-sysdep_routines
+-
+-libm-sysdep_routines += \
+-  e_asin-fma \
+-  e_atan2-fma \
+-  e_exp-fma \
+-  e_log-fma \
+-  e_log2-fma \
+-  e_pow-fma \
+-  s_atan-fma \
+-  s_expm1-fma \
+-  s_log1p-fma \
+-  s_sin-fma \
+-  s_sincos-fma \
+-  s_tan-fma \
+-# libm-sysdep_routines
+-
+ CFLAGS-e_asin-fma.c = -mfma -mavx2
+ CFLAGS-e_atan2-fma.c = -mfma -mavx2
+ CFLAGS-e_exp-fma.c = -mfma -mavx2
+@@ -57,23 +12,6 @@ CFLAGS-s_sin-fma.c = -mfma -mavx2
+ CFLAGS-s_tan-fma.c = -mfma -mavx2
+ CFLAGS-s_sincos-fma.c = -mfma -mavx2
+ 
+-libm-sysdep_routines += \
+-  s_cosf-sse2 \
+-  s_sincosf-sse2 \
+-  s_sinf-sse2 \
+-# libm-sysdep_routines
+-
+-libm-sysdep_routines += \
+-  e_exp2f-fma \
+-  e_expf-fma \
+-  e_log2f-fma \
+-  e_logf-fma \
+-  e_powf-fma \
+-  s_cosf-fma \
+-  s_sincosf-fma \
+-  s_sinf-fma \
+-# libm-sysdep_routines
+-
+ CFLAGS-e_exp2f-fma.c = -mfma -mavx2
+ CFLAGS-e_expf-fma.c = -mfma -mavx2
+ CFLAGS-e_log2f-fma.c = -mfma -mavx2
+@@ -83,17 +21,93 @@ CFLAGS-s_sinf-fma.c = -mfma -mavx2
+ CFLAGS-s_cosf-fma.c = -mfma -mavx2
+ CFLAGS-s_sincosf-fma.c = -mfma -mavx2
+ 
++# Check if ISA level is 3 or above.
++ifneq (,$(filter $(have-x86-isa-level),$(x86-isa-level-3-or-above)))
+ libm-sysdep_routines += \
++  s_ceil-avx \
++  s_ceilf-avx \
++  s_floor-avx \
++  s_floorf-avx \
++  s_nearbyint-avx \
++  s_nearbyintf-avx \
++  s_rint-avx \
++  s_rintf-avx \
++  s_roundeven-avx \
++  s_roundevenf-avx \
++  s_trunc-avx \
++  s_truncf-avx \
++# libm-sysdep_routines
++else
++libm-sysdep_routines += \
++  e_asin-fma \
+   e_asin-fma4 \
++  e_atan2-avx \
++  e_atan2-fma \
+   e_atan2-fma4 \
++  e_exp-avx \
++  e_exp-fma \
+   e_exp-fma4 \
++  e_exp2f-fma \
++  e_expf-fma \
++  e_log-avx \
++  e_log-fma \
+   e_log-fma4 \
++  e_log2-fma \
++  e_log2f-fma \
++  e_logf-fma \
++  e_pow-fma \
+   e_pow-fma4 \
++  e_powf-fma \
++  s_atan-avx \
++  s_atan-fma \
+   s_atan-fma4 \
++  s_ceil-sse4_1 \
++  s_ceilf-sse4_1 \
++  s_cosf-fma \
++  s_cosf-sse2 \
++  s_expm1-fma \
++  s_floor-sse4_1 \
++  s_floorf-sse4_1 \
++  s_log1p-fma \
++  s_nearbyint-sse4_1 \
++  s_nearbyintf-sse4_1 \
++  s_rint-sse4_1 \
++  s_rintf-sse4_1 \
++  s_roundeven-sse4_1 \
++  s_roundevenf-sse4_1 \
++  s_sin-avx \
++  s_sin-fma \
+   s_sin-fma4 \
++  s_sincos-avx \
++  s_sincos-fma \
+   s_sincos-fma4 \
++  s_sincosf-fma \
++  s_sincosf-sse2 \
++  s_sinf-fma \
++  s_sinf-sse2 \
++  s_tan-avx \
++  s_tan-fma \
+   s_tan-fma4 \
++  s_trunc-sse4_1 \
++  s_truncf-sse4_1 \
+ # libm-sysdep_routines
++ifeq ($(have-x86-isa-level),baseline)
++libm-sysdep_routines += \
++  s_ceil-c \
++  s_ceilf-c \
++  s_floor-c \
++  s_floorf-c \
++  s_nearbyint-c \
++  s_nearbyintf-c \
++  s_rint-c \
++  s_rintf-c \
++  s_roundeven-c \
++  s_roundevenf-c \
++  s_trunc-c \
++  s_truncf-c \
++# libm-sysdep_routines
++endif
++endif
+ 
+ CFLAGS-e_asin-fma4.c = -mfma4
+ CFLAGS-e_atan2-fma4.c = -mfma4
+@@ -105,16 +119,6 @@ CFLAGS-s_sin-fma4.c = -mfma4
+ CFLAGS-s_tan-fma4.c = -mfma4
+ CFLAGS-s_sincos-fma4.c = -mfma4
+ 
+-libm-sysdep_routines += \
+-  e_atan2-avx \
+-  e_exp-avx \
+-  e_log-avx \
+-  s_atan-avx \
+-  s_sin-avx \
+-  s_sincos-avx \
+-  s_tan-avx \
+-# libm-sysdep_routines
+-
+ CFLAGS-e_atan2-avx.c = -msse2avx -DSSE2AVX
+ CFLAGS-e_exp-avx.c = -msse2avx -DSSE2AVX
+ CFLAGS-e_log-avx.c = -msse2avx -DSSE2AVX
+diff --git a/sysdeps/x86_64/fpu/multiarch/e_asin.c b/sysdeps/x86_64/fpu/multiarch/e_asin.c
+index 2eaa6c2c04..d64fca2586 100644
+--- a/sysdeps/x86_64/fpu/multiarch/e_asin.c
++++ b/sysdeps/x86_64/fpu/multiarch/e_asin.c
+@@ -16,26 +16,29 @@
+    License along with the GNU C Library; if not, see
+    <https://www.gnu.org/licenses/>.  */
+ 
+-#include <libm-alias-finite.h>
++#include <sysdeps/x86/isa-level.h>
++#if MINIMUM_X86_ISA_LEVEL < AVX2_X86_ISA_LEVEL
++# include <libm-alias-finite.h>
+ 
+ extern double __redirect_ieee754_asin (double);
+ extern double __redirect_ieee754_acos (double);
+ 
+-#define SYMBOL_NAME ieee754_asin
+-#include "ifunc-fma4.h"
++# define SYMBOL_NAME ieee754_asin
++# include "ifunc-fma4.h"
+ 
+ libc_ifunc_redirected (__redirect_ieee754_asin, __ieee754_asin,
+ 		       IFUNC_SELECTOR ());
+ libm_alias_finite (__ieee754_asin, __asin)
+ 
+-#undef SYMBOL_NAME
+-#define SYMBOL_NAME ieee754_acos
+-#include "ifunc-fma4.h"
++# undef SYMBOL_NAME
++# define SYMBOL_NAME ieee754_acos
++# include "ifunc-fma4.h"
+ 
+ libc_ifunc_redirected (__redirect_ieee754_acos, __ieee754_acos,
+ 		       IFUNC_SELECTOR ());
+ libm_alias_finite (__ieee754_acos, __acos)
+ 
+-#define __ieee754_acos __ieee754_acos_sse2
+-#define __ieee754_asin __ieee754_asin_sse2
++# define __ieee754_acos __ieee754_acos_sse2
++# define __ieee754_asin __ieee754_asin_sse2
++#endif
+ #include <sysdeps/ieee754/dbl-64/e_asin.c>
+diff --git a/sysdeps/x86_64/fpu/multiarch/e_atan2.c b/sysdeps/x86_64/fpu/multiarch/e_atan2.c
+index 17ee4f3c36..8a86c14ded 100644
+--- a/sysdeps/x86_64/fpu/multiarch/e_atan2.c
++++ b/sysdeps/x86_64/fpu/multiarch/e_atan2.c
+@@ -16,16 +16,19 @@
+    License along with the GNU C Library; if not, see
+    <https://www.gnu.org/licenses/>.  */
+ 
+-#include <libm-alias-finite.h>
++#include <sysdeps/x86/isa-level.h>
++#if MINIMUM_X86_ISA_LEVEL < AVX2_X86_ISA_LEVEL
++# include <libm-alias-finite.h>
+ 
+ extern double __redirect_ieee754_atan2 (double, double);
+ 
+-#define SYMBOL_NAME ieee754_atan2
+-#include "ifunc-avx-fma4.h"
++# define SYMBOL_NAME ieee754_atan2
++# include "ifunc-avx-fma4.h"
+ 
+ libc_ifunc_redirected (__redirect_ieee754_atan2,
+ 		       __ieee754_atan2, IFUNC_SELECTOR ());
+ libm_alias_finite (__ieee754_atan2, __atan2)
+ 
+-#define __ieee754_atan2 __ieee754_atan2_sse2
++# define __ieee754_atan2 __ieee754_atan2_sse2
++#endif
+ #include <sysdeps/ieee754/dbl-64/e_atan2.c>
+diff --git a/sysdeps/x86_64/fpu/multiarch/e_exp.c b/sysdeps/x86_64/fpu/multiarch/e_exp.c
+index 406b7ebd44..d56329291a 100644
+--- a/sysdeps/x86_64/fpu/multiarch/e_exp.c
++++ b/sysdeps/x86_64/fpu/multiarch/e_exp.c
+@@ -16,17 +16,20 @@
+    License along with the GNU C Library; if not, see
+    <https://www.gnu.org/licenses/>.  */
+ 
+-#include <math.h>
+-#include <libm-alias-finite.h>
++#include <sysdeps/x86/isa-level.h>
++#if MINIMUM_X86_ISA_LEVEL < AVX2_X86_ISA_LEVEL
++# include <math.h>
++# include <libm-alias-finite.h>
+ 
+ extern double __redirect_ieee754_exp (double);
+ 
+-#define SYMBOL_NAME ieee754_exp
+-#include "ifunc-avx-fma4.h"
++# define SYMBOL_NAME ieee754_exp
++# include "ifunc-avx-fma4.h"
+ 
+ libc_ifunc_redirected (__redirect_ieee754_exp, __ieee754_exp,
+ 		       IFUNC_SELECTOR ());
+ libm_alias_finite (__ieee754_exp, __exp)
+ 
+-#define __exp __ieee754_exp_sse2
++# define __exp __ieee754_exp_sse2
++#endif
+ #include <sysdeps/ieee754/dbl-64/e_exp.c>
+diff --git a/sysdeps/x86_64/fpu/multiarch/e_exp2f.c b/sysdeps/x86_64/fpu/multiarch/e_exp2f.c
+index 804fd6be85..06fe5028d6 100644
+--- a/sysdeps/x86_64/fpu/multiarch/e_exp2f.c
++++ b/sysdeps/x86_64/fpu/multiarch/e_exp2f.c
+@@ -16,25 +16,28 @@
+    License along with the GNU C Library; if not, see
+    <https://www.gnu.org/licenses/>.  */
+ 
+-#include <libm-alias-float.h>
+-#include <libm-alias-finite.h>
++#include <sysdeps/x86/isa-level.h>
++#if MINIMUM_X86_ISA_LEVEL < AVX2_X86_ISA_LEVEL
++# include <libm-alias-float.h>
++# include <libm-alias-finite.h>
+ 
+ extern float __redirect_exp2f (float);
+ 
+-#define SYMBOL_NAME exp2f
+-#include "ifunc-fma.h"
++# define SYMBOL_NAME exp2f
++# include "ifunc-fma.h"
+ 
+ libc_ifunc_redirected (__redirect_exp2f, __exp2f, IFUNC_SELECTOR ());
+ 
+-#ifdef SHARED
++# ifdef SHARED
+ versioned_symbol (libm, __ieee754_exp2f, exp2f, GLIBC_2_27);
+ libm_alias_float_other (__exp2, exp2)
+-#else
++# else
+ libm_alias_float (__exp2, exp2)
+-#endif
++# endif
+ 
+ strong_alias (__exp2f, __ieee754_exp2f)
+ libm_alias_finite (__exp2f, __exp2f)
+ 
+-#define __exp2f __exp2f_sse2
++# define __exp2f __exp2f_sse2
++#endif
+ #include <sysdeps/ieee754/flt-32/e_exp2f.c>
+diff --git a/sysdeps/x86_64/fpu/multiarch/e_expf.c b/sysdeps/x86_64/fpu/multiarch/e_expf.c
+index 4a7e2a5bce..19d767f636 100644
+--- a/sysdeps/x86_64/fpu/multiarch/e_expf.c
++++ b/sysdeps/x86_64/fpu/multiarch/e_expf.c
+@@ -16,28 +16,31 @@
+    License along with the GNU C Library; if not, see
+    <https://www.gnu.org/licenses/>.  */
+ 
+-#include <libm-alias-float.h>
+-#include <libm-alias-finite.h>
++#include <sysdeps/x86/isa-level.h>
++#if MINIMUM_X86_ISA_LEVEL < AVX2_X86_ISA_LEVEL
++# include <libm-alias-float.h>
++# include <libm-alias-finite.h>
+ 
+ extern float __redirect_expf (float);
+ 
+-#define SYMBOL_NAME expf
+-#include "ifunc-fma.h"
++# define SYMBOL_NAME expf
++# include "ifunc-fma.h"
+ 
+ libc_ifunc_redirected (__redirect_expf, __expf, IFUNC_SELECTOR ());
+ 
+-#ifdef SHARED
++# ifdef SHARED
+ __hidden_ver1 (__expf, __GI___expf, __redirect_expf)
+   __attribute__ ((visibility ("hidden")));
+ 
+ versioned_symbol (libm, __ieee754_expf, expf, GLIBC_2_27);
+ libm_alias_float_other (__exp, exp)
+-#else
++# else
+ libm_alias_float (__exp, exp)
+-#endif
++# endif
+ 
+ strong_alias (__expf, __ieee754_expf)
+ libm_alias_finite (__expf, __expf)
+ 
+-#define __expf __expf_sse2
++# define __expf __expf_sse2
++#endif
+ #include <sysdeps/ieee754/flt-32/e_expf.c>
+diff --git a/sysdeps/x86_64/fpu/multiarch/e_log.c b/sysdeps/x86_64/fpu/multiarch/e_log.c
+index 067fbf58c3..d80c1b1463 100644
+--- a/sysdeps/x86_64/fpu/multiarch/e_log.c
++++ b/sysdeps/x86_64/fpu/multiarch/e_log.c
+@@ -16,17 +16,20 @@
+    License along with the GNU C Library; if not, see
+    <https://www.gnu.org/licenses/>.  */
+ 
+-#include <math.h>
+-#include <libm-alias-finite.h>
++#include <sysdeps/x86/isa-level.h>
++#if MINIMUM_X86_ISA_LEVEL < AVX2_X86_ISA_LEVEL
++# include <math.h>
++# include <libm-alias-finite.h>
+ 
+ extern double __redirect_ieee754_log (double);
+ 
+-#define SYMBOL_NAME ieee754_log
+-#include "ifunc-avx-fma4.h"
++# define SYMBOL_NAME ieee754_log
++# include "ifunc-avx-fma4.h"
+ 
+ libc_ifunc_redirected (__redirect_ieee754_log, __ieee754_log,
+ 		       IFUNC_SELECTOR ());
+ libm_alias_finite (__ieee754_log, __log)
+ 
+-#define __log __ieee754_log_sse2
++# define __log __ieee754_log_sse2
++#endif
+ #include <sysdeps/ieee754/dbl-64/e_log.c>
+diff --git a/sysdeps/x86_64/fpu/multiarch/e_log2.c b/sysdeps/x86_64/fpu/multiarch/e_log2.c
+index 9c57a2f6cc..9686782c09 100644
+--- a/sysdeps/x86_64/fpu/multiarch/e_log2.c
++++ b/sysdeps/x86_64/fpu/multiarch/e_log2.c
+@@ -16,28 +16,31 @@
+    License along with the GNU C Library; if not, see
+    <https://www.gnu.org/licenses/>.  */
+ 
+-#include <libm-alias-double.h>
+-#include <libm-alias-finite.h>
++#include <sysdeps/x86/isa-level.h>
++#if MINIMUM_X86_ISA_LEVEL < AVX2_X86_ISA_LEVEL
++# include <libm-alias-double.h>
++# include <libm-alias-finite.h>
+ 
+ extern double __redirect_log2 (double);
+ 
+-#define SYMBOL_NAME log2
+-#include "ifunc-fma.h"
++# define SYMBOL_NAME log2
++# include "ifunc-fma.h"
+ 
+ libc_ifunc_redirected (__redirect_log2, __log2, IFUNC_SELECTOR ());
+ 
+-#ifdef SHARED
++# ifdef SHARED
+ __hidden_ver1 (__log2, __GI___log2, __redirect_log2)
+   __attribute__ ((visibility ("hidden")));
+ 
+ versioned_symbol (libm, __ieee754_log2, log2, GLIBC_2_29);
+ libm_alias_double_other (__log2, log2)
+-#else
++# else
+ libm_alias_double (__log2, log2)
+-#endif
++# endif
+ 
+ strong_alias (__log2, __ieee754_log2)
+ libm_alias_finite (__log2, __log2)
+ 
+-#define __log2 __log2_sse2
++# define __log2 __log2_sse2
++#endif
+ #include <sysdeps/ieee754/dbl-64/e_log2.c>
+diff --git a/sysdeps/x86_64/fpu/multiarch/e_log2f.c b/sysdeps/x86_64/fpu/multiarch/e_log2f.c
+index 2b45c87f38..8ada46e11e 100644
+--- a/sysdeps/x86_64/fpu/multiarch/e_log2f.c
++++ b/sysdeps/x86_64/fpu/multiarch/e_log2f.c
+@@ -16,28 +16,31 @@
+    License along with the GNU C Library; if not, see
+    <https://www.gnu.org/licenses/>.  */
+ 
+-#include <libm-alias-float.h>
+-#include <libm-alias-finite.h>
++#include <sysdeps/x86/isa-level.h>
++#if MINIMUM_X86_ISA_LEVEL < AVX2_X86_ISA_LEVEL
++# include <libm-alias-float.h>
++# include <libm-alias-finite.h>
+ 
+ extern float __redirect_log2f (float);
+ 
+-#define SYMBOL_NAME log2f
+-#include "ifunc-fma.h"
++# define SYMBOL_NAME log2f
++# include "ifunc-fma.h"
+ 
+ libc_ifunc_redirected (__redirect_log2f, __log2f, IFUNC_SELECTOR ());
+ 
+-#ifdef SHARED
++# ifdef SHARED
+ __hidden_ver1 (__log2f, __GI___log2f, __redirect_log2f)
+   __attribute__ ((visibility ("hidden")));
+ 
+ versioned_symbol (libm, __ieee754_log2f, log2f, GLIBC_2_27);
+ libm_alias_float_other (__log2, log2)
+-#else
++# else
+ libm_alias_float (__log2, log2)
+-#endif
++# endif
+ 
+ strong_alias (__log2f, __ieee754_log2f)
+ libm_alias_finite (__log2f, __log2f)
+ 
+-#define __log2f __log2f_sse2
++# define __log2f __log2f_sse2
++#endif
+ #include <sysdeps/ieee754/flt-32/e_log2f.c>
+diff --git a/sysdeps/x86_64/fpu/multiarch/e_logf.c b/sysdeps/x86_64/fpu/multiarch/e_logf.c
+index 97e23c8fea..a3978d9a8e 100644
+--- a/sysdeps/x86_64/fpu/multiarch/e_logf.c
++++ b/sysdeps/x86_64/fpu/multiarch/e_logf.c
+@@ -16,28 +16,31 @@
+    License along with the GNU C Library; if not, see
+    <https://www.gnu.org/licenses/>.  */
+ 
+-#include <libm-alias-float.h>
+-#include <libm-alias-finite.h>
++#include <sysdeps/x86/isa-level.h>
++#if MINIMUM_X86_ISA_LEVEL < AVX2_X86_ISA_LEVEL
++# include <libm-alias-float.h>
++# include <libm-alias-finite.h>
+ 
+ extern float __redirect_logf (float);
+ 
+-#define SYMBOL_NAME logf
+-#include "ifunc-fma.h"
++# define SYMBOL_NAME logf
++# include "ifunc-fma.h"
+ 
+ libc_ifunc_redirected (__redirect_logf, __logf, IFUNC_SELECTOR ());
+ 
+-#ifdef SHARED
++# ifdef SHARED
+ __hidden_ver1 (__logf, __GI___logf, __redirect_logf)
+   __attribute__ ((visibility ("hidden")));
+ 
+ versioned_symbol (libm, __ieee754_logf, logf, GLIBC_2_27);
+ libm_alias_float_other (__log, log)
+-#else
++# else
+ libm_alias_float (__log, log)
+-#endif
++# endif
+ 
+ strong_alias (__logf, __ieee754_logf)
+ libm_alias_finite (__logf, __logf)
+ 
+-#define __logf __logf_sse2
++# define __logf __logf_sse2
++#endif
+ #include <sysdeps/ieee754/flt-32/e_logf.c>
+diff --git a/sysdeps/x86_64/fpu/multiarch/e_pow.c b/sysdeps/x86_64/fpu/multiarch/e_pow.c
+index 42618e7112..f8f17aff9f 100644
+--- a/sysdeps/x86_64/fpu/multiarch/e_pow.c
++++ b/sysdeps/x86_64/fpu/multiarch/e_pow.c
+@@ -16,17 +16,20 @@
+    License along with the GNU C Library; if not, see
+    <https://www.gnu.org/licenses/>.  */
+ 
+-#include <math.h>
+-#include <libm-alias-finite.h>
++#include <sysdeps/x86/isa-level.h>
++#if MINIMUM_X86_ISA_LEVEL < AVX2_X86_ISA_LEVEL
++# include <math.h>
++# include <libm-alias-finite.h>
+ 
+ extern double __redirect_ieee754_pow (double, double);
+ 
+-#define SYMBOL_NAME ieee754_pow
+-#include "ifunc-fma4.h"
++# define SYMBOL_NAME ieee754_pow
++# include "ifunc-fma4.h"
+ 
+ libc_ifunc_redirected (__redirect_ieee754_pow,
+ 		       __ieee754_pow, IFUNC_SELECTOR ());
+ libm_alias_finite (__ieee754_pow, __pow)
+ 
+-#define __pow __ieee754_pow_sse2
++# define __pow __ieee754_pow_sse2
++#endif
+ #include <sysdeps/ieee754/dbl-64/e_pow.c>
+diff --git a/sysdeps/x86_64/fpu/multiarch/e_powf.c b/sysdeps/x86_64/fpu/multiarch/e_powf.c
+index 8e6ce13cc1..8b1a4c7d04 100644
+--- a/sysdeps/x86_64/fpu/multiarch/e_powf.c
++++ b/sysdeps/x86_64/fpu/multiarch/e_powf.c
+@@ -16,31 +16,34 @@
+    License along with the GNU C Library; if not, see
+    <https://www.gnu.org/licenses/>.  */
+ 
+-#include <libm-alias-float.h>
+-#include <libm-alias-finite.h>
++#include <sysdeps/x86/isa-level.h>
++#if MINIMUM_X86_ISA_LEVEL < AVX2_X86_ISA_LEVEL
++# include <libm-alias-float.h>
++# include <libm-alias-finite.h>
+ 
+-#define powf __redirect_powf
+-#define __DECL_SIMD___redirect_powf
+-#include <math.h>
+-#undef powf
++# define powf __redirect_powf
++# define __DECL_SIMD___redirect_powf
++# include <math.h>
++# undef powf
+ 
+-#define SYMBOL_NAME powf
+-#include "ifunc-fma.h"
++# define SYMBOL_NAME powf
++# include "ifunc-fma.h"
+ 
+ libc_ifunc_redirected (__redirect_powf, __powf, IFUNC_SELECTOR ());
+ 
+-#ifdef SHARED
++# ifdef SHARED
+ __hidden_ver1 (__powf, __GI___powf, __redirect_powf)
+   __attribute__ ((visibility ("hidden")));
+ 
+ versioned_symbol (libm, __ieee754_powf, powf, GLIBC_2_27);
+ libm_alias_float_other (__pow, pow)
+-#else
++# else
+ libm_alias_float (__pow, pow)
+-#endif
++# endif
+ 
+ strong_alias (__powf, __ieee754_powf)
+ libm_alias_finite (__powf, __powf)
+ 
+-#define __powf __powf_sse2
++# define __powf __powf_sse2
++#endif
+ #include <sysdeps/ieee754/flt-32/e_powf.c>
+diff --git a/sysdeps/x86_64/fpu/multiarch/s_atan.c b/sysdeps/x86_64/fpu/multiarch/s_atan.c
+index 71bad096a9..4d2c6ce006 100644
+--- a/sysdeps/x86_64/fpu/multiarch/s_atan.c
++++ b/sysdeps/x86_64/fpu/multiarch/s_atan.c
+@@ -16,15 +16,18 @@
+    License along with the GNU C Library; if not, see
+    <https://www.gnu.org/licenses/>.  */
+ 
+-#include <libm-alias-double.h>
++#include <sysdeps/x86/isa-level.h>
++#if MINIMUM_X86_ISA_LEVEL < AVX2_X86_ISA_LEVEL
++# include <libm-alias-double.h>
+ 
+ extern double __redirect_atan (double);
+ 
+-#define SYMBOL_NAME atan
+-#include "ifunc-avx-fma4.h"
++# define SYMBOL_NAME atan
++# include "ifunc-avx-fma4.h"
+ 
+ libc_ifunc_redirected (__redirect_atan, __atan, IFUNC_SELECTOR ());
+ libm_alias_double (__atan, atan)
+ 
+-#define __atan __atan_sse2
++# define __atan __atan_sse2
++#endif
+ #include <sysdeps/ieee754/dbl-64/s_atan.c>
+diff --git a/sysdeps/x86_64/fpu/multiarch/s_ceil-avx.S b/sysdeps/x86_64/fpu/multiarch/s_ceil-avx.S
+new file mode 100644
+index 0000000000..e6c1106753
+--- /dev/null
++++ b/sysdeps/x86_64/fpu/multiarch/s_ceil-avx.S
+@@ -0,0 +1,28 @@
++/* AVX implementation of ceil function.
++   Copyright (C) 2024 Free Software Foundation, Inc.
++   This file is part of the GNU C Library.
++
++   The GNU C Library is free software; you can redistribute it and/or
++   modify it under the terms of the GNU Lesser General Public
++   License as published by the Free Software Foundation; either
++   version 2.1 of the License, or (at your option) any later version.
++
++   The GNU C Library is distributed in the hope that it will be useful,
++   but WITHOUT ANY WARRANTY; without even the implied warranty of
++   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
++   Lesser General Public License for more details.
++
++   You should have received a copy of the GNU Lesser General Public
++   License along with the GNU C Library; if not, see
++   <https://www.gnu.org/licenses/>.  */
++
++#include <sysdep.h>
++#include <libm-alias-double.h>
++
++	.text
++ENTRY(__ceil)
++	vroundsd $10, %xmm0, %xmm0, %xmm0
++	ret
++END(__ceil)
++
++libm_alias_double (__ceil, ceil)
+diff --git a/sysdeps/x86_64/fpu/multiarch/s_ceil-sse4_1.S b/sysdeps/x86_64/fpu/multiarch/s_ceil-sse4_1.S
+index 64119011ad..dba756c38f 100644
+--- a/sysdeps/x86_64/fpu/multiarch/s_ceil-sse4_1.S
++++ b/sysdeps/x86_64/fpu/multiarch/s_ceil-sse4_1.S
+@@ -17,8 +17,20 @@
+ 
+ #include <sysdep.h>
+ 
++#include <sysdeps/x86/isa-level.h>
++#if MINIMUM_X86_ISA_LEVEL == SSE4_1_X86_ISA_LEVEL
++# include <libm-alias-double.h>
++# define __ceil_sse41 __ceil
++	.text
++#else
+ 	.section .text.sse4.1,"ax",@progbits
++#endif
++
+ ENTRY(__ceil_sse41)
+ 	roundsd	$10, %xmm0, %xmm0
+ 	ret
+ END(__ceil_sse41)
++
++#if MINIMUM_X86_ISA_LEVEL == SSE4_1_X86_ISA_LEVEL
++libm_alias_double (__ceil, ceil)
++#endif
+diff --git a/sysdeps/x86_64/fpu/multiarch/s_ceil.c b/sysdeps/x86_64/fpu/multiarch/s_ceil.c
+index cc028addee..46c8e91e19 100644
+--- a/sysdeps/x86_64/fpu/multiarch/s_ceil.c
++++ b/sysdeps/x86_64/fpu/multiarch/s_ceil.c
+@@ -16,17 +16,20 @@
+    License along with the GNU C Library; if not, see
+    <https://www.gnu.org/licenses/>.  */
+ 
+-#define NO_MATH_REDIRECT
+-#include <libm-alias-double.h>
++#include <sysdeps/x86/isa-level.h>
++#if MINIMUM_X86_ISA_LEVEL < SSE4_1_X86_ISA_LEVEL
++# define NO_MATH_REDIRECT
++# include <libm-alias-double.h>
+ 
+-#define ceil __redirect_ceil
+-#define __ceil __redirect___ceil
+-#include <math.h>
+-#undef ceil
+-#undef __ceil
++# define ceil __redirect_ceil
++# define __ceil __redirect___ceil
++# include <math.h>
++# undef ceil
++# undef __ceil
+ 
+-#define SYMBOL_NAME ceil
+-#include "ifunc-sse4_1.h"
++# define SYMBOL_NAME ceil
++# include "ifunc-sse4_1.h"
+ 
+ libc_ifunc_redirected (__redirect_ceil, __ceil, IFUNC_SELECTOR ());
+ libm_alias_double (__ceil, ceil)
++#endif
+diff --git a/sysdeps/x86_64/fpu/multiarch/s_ceilf-avx.S b/sysdeps/x86_64/fpu/multiarch/s_ceilf-avx.S
+new file mode 100644
+index 0000000000..b4d8ac0455
+--- /dev/null
++++ b/sysdeps/x86_64/fpu/multiarch/s_ceilf-avx.S
+@@ -0,0 +1,28 @@
++/* AVX implementation of ceilf function.
++   Copyright (C) 2024 Free Software Foundation, Inc.
++   This file is part of the GNU C Library.
++
++   The GNU C Library is free software; you can redistribute it and/or
++   modify it under the terms of the GNU Lesser General Public
++   License as published by the Free Software Foundation; either
++   version 2.1 of the License, or (at your option) any later version.
++
++   The GNU C Library is distributed in the hope that it will be useful,
++   but WITHOUT ANY WARRANTY; without even the implied warranty of
++   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
++   Lesser General Public License for more details.
++
++   You should have received a copy of the GNU Lesser General Public
++   License along with the GNU C Library; if not, see
++   <https://www.gnu.org/licenses/>.  */
++
++#include <sysdep.h>
++#include <libm-alias-float.h>
++
++	.text
++ENTRY(__ceilf)
++	vroundss $10, %xmm0, %xmm0, %xmm0
++	ret
++END(__ceilf)
++
++libm_alias_float (__ceil, ceil)
+diff --git a/sysdeps/x86_64/fpu/multiarch/s_ceilf-sse4_1.S b/sysdeps/x86_64/fpu/multiarch/s_ceilf-sse4_1.S
+index dd9a9f6b71..9abc87b91a 100644
+--- a/sysdeps/x86_64/fpu/multiarch/s_ceilf-sse4_1.S
++++ b/sysdeps/x86_64/fpu/multiarch/s_ceilf-sse4_1.S
+@@ -17,8 +17,20 @@
+ 
+ #include <sysdep.h>
+ 
++#include <sysdeps/x86/isa-level.h>
++#if MINIMUM_X86_ISA_LEVEL == SSE4_1_X86_ISA_LEVEL
++# include <libm-alias-float.h>
++# define __ceilf_sse41 __ceilf
++	.text
++#else
+ 	.section .text.sse4.1,"ax",@progbits
++#endif
++
+ ENTRY(__ceilf_sse41)
+ 	roundss	$10, %xmm0, %xmm0
+ 	ret
+ END(__ceilf_sse41)
++
++#if MINIMUM_X86_ISA_LEVEL == SSE4_1_X86_ISA_LEVEL
++libm_alias_float (__ceil, ceil)
++#endif
+diff --git a/sysdeps/x86_64/fpu/multiarch/s_ceilf.c b/sysdeps/x86_64/fpu/multiarch/s_ceilf.c
+index 97a0ca7d19..bb53108f73 100644
+--- a/sysdeps/x86_64/fpu/multiarch/s_ceilf.c
++++ b/sysdeps/x86_64/fpu/multiarch/s_ceilf.c
+@@ -16,17 +16,20 @@
+    License along with the GNU C Library; if not, see
+    <https://www.gnu.org/licenses/>.  */
+ 
+-#define NO_MATH_REDIRECT
+-#include <libm-alias-float.h>
++#include <sysdeps/x86/isa-level.h>
++#if MINIMUM_X86_ISA_LEVEL < SSE4_1_X86_ISA_LEVEL
++# define NO_MATH_REDIRECT
++# include <libm-alias-float.h>
+ 
+-#define ceilf __redirect_ceilf
+-#define __ceilf __redirect___ceilf
+-#include <math.h>
+-#undef ceilf
+-#undef __ceilf
++# define ceilf __redirect_ceilf
++# define __ceilf __redirect___ceilf
++# include <math.h>
++# undef ceilf
++# undef __ceilf
+ 
+-#define SYMBOL_NAME ceilf
+-#include "ifunc-sse4_1.h"
++# define SYMBOL_NAME ceilf
++# include "ifunc-sse4_1.h"
+ 
+ libc_ifunc_redirected (__redirect_ceilf, __ceilf, IFUNC_SELECTOR ());
+ libm_alias_float (__ceil, ceil)
++#endif
+diff --git a/sysdeps/x86_64/fpu/multiarch/s_cosf.c b/sysdeps/x86_64/fpu/multiarch/s_cosf.c
+index 2703c576df..8a02e04538 100644
+--- a/sysdeps/x86_64/fpu/multiarch/s_cosf.c
++++ b/sysdeps/x86_64/fpu/multiarch/s_cosf.c
+@@ -16,13 +16,18 @@
+    License along with the GNU C Library; if not, see
+    <https://www.gnu.org/licenses/>.  */
+ 
+-#include <libm-alias-float.h>
++#include <sysdeps/x86/isa-level.h>
++#if MINIMUM_X86_ISA_LEVEL < AVX2_X86_ISA_LEVEL
++# include <libm-alias-float.h>
+ 
+ extern float __redirect_cosf (float);
+ 
+-#define SYMBOL_NAME cosf
+-#include "ifunc-fma.h"
++# define SYMBOL_NAME cosf
++# include "ifunc-fma.h"
+ 
+ libc_ifunc_redirected (__redirect_cosf, __cosf, IFUNC_SELECTOR ());
+ 
+ libm_alias_float (__cos, cos)
++#else
++# include <sysdeps/ieee754/flt-32/s_cosf.c>
++#endif
+diff --git a/sysdeps/x86_64/fpu/multiarch/s_expm1.c b/sysdeps/x86_64/fpu/multiarch/s_expm1.c
+index 8a2d69f9b2..d58ef3d8f5 100644
+--- a/sysdeps/x86_64/fpu/multiarch/s_expm1.c
++++ b/sysdeps/x86_64/fpu/multiarch/s_expm1.c
+@@ -16,21 +16,24 @@
+    License along with the GNU C Library; if not, see
+    <https://www.gnu.org/licenses/>.  */
+ 
+-#include <libm-alias-double.h>
++#include <sysdeps/x86/isa-level.h>
++#if MINIMUM_X86_ISA_LEVEL < AVX2_X86_ISA_LEVEL
++# include <libm-alias-double.h>
+ 
+ extern double __redirect_expm1 (double);
+ 
+-#define SYMBOL_NAME expm1
+-#include "ifunc-fma.h"
++# define SYMBOL_NAME expm1
++# include "ifunc-fma.h"
+ 
+ libc_ifunc_redirected (__redirect_expm1, __expm1, IFUNC_SELECTOR ());
+ libm_alias_double (__expm1, expm1)
+ 
+-#define __expm1 __expm1_sse2
++# define __expm1 __expm1_sse2
+ 
+ /* NB: __expm1 may be expanded to __expm1_sse2 in the following
+    prototypes.  */
+ extern long double __expm1l (long double);
+ extern long double __expm1f128 (long double);
+ 
++#endif
+ #include <sysdeps/ieee754/dbl-64/s_expm1.c>
+diff --git a/sysdeps/x86_64/fpu/multiarch/s_floor-avx.S b/sysdeps/x86_64/fpu/multiarch/s_floor-avx.S
+new file mode 100644
+index 0000000000..ff74b5a8bf
+--- /dev/null
++++ b/sysdeps/x86_64/fpu/multiarch/s_floor-avx.S
+@@ -0,0 +1,28 @@
++/* AVX implementation of floor function.
++   Copyright (C) 2024 Free Software Foundation, Inc.
++   This file is part of the GNU C Library.
++
++   The GNU C Library is free software; you can redistribute it and/or
++   modify it under the terms of the GNU Lesser General Public
++   License as published by the Free Software Foundation; either
++   version 2.1 of the License, or (at your option) any later version.
++
++   The GNU C Library is distributed in the hope that it will be useful,
++   but WITHOUT ANY WARRANTY; without even the implied warranty of
++   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
++   Lesser General Public License for more details.
++
++   You should have received a copy of the GNU Lesser General Public
++   License along with the GNU C Library; if not, see
++   <https://www.gnu.org/licenses/>.  */
++
++#include <sysdep.h>
++#include <libm-alias-double.h>
++
++	.text
++ENTRY(__floor)
++	vroundsd $9, %xmm0, %xmm0, %xmm0
++	ret
++END(__floor)
++
++libm_alias_double (__floor, floor)
+diff --git a/sysdeps/x86_64/fpu/multiarch/s_floor-sse4_1.S b/sysdeps/x86_64/fpu/multiarch/s_floor-sse4_1.S
+index 2f7521f39f..c9b9b0639b 100644
+--- a/sysdeps/x86_64/fpu/multiarch/s_floor-sse4_1.S
++++ b/sysdeps/x86_64/fpu/multiarch/s_floor-sse4_1.S
+@@ -17,8 +17,20 @@
+ 
+ #include <sysdep.h>
+ 
++#include <sysdeps/x86/isa-level.h>
++#if MINIMUM_X86_ISA_LEVEL == SSE4_1_X86_ISA_LEVEL
++# include <libm-alias-double.h>
++# define __floor_sse41 __floor
++	.text
++#else
+ 	.section .text.sse4.1,"ax",@progbits
++#endif
++
+ ENTRY(__floor_sse41)
+ 	roundsd	$9, %xmm0, %xmm0
+ 	ret
+ END(__floor_sse41)
++
++#if MINIMUM_X86_ISA_LEVEL == SSE4_1_X86_ISA_LEVEL
++libm_alias_double (__floor, floor)
++#endif
+diff --git a/sysdeps/x86_64/fpu/multiarch/s_floor.c b/sysdeps/x86_64/fpu/multiarch/s_floor.c
+index 8cebd48e10..2c87dd0056 100644
+--- a/sysdeps/x86_64/fpu/multiarch/s_floor.c
++++ b/sysdeps/x86_64/fpu/multiarch/s_floor.c
+@@ -16,17 +16,20 @@
+    License along with the GNU C Library; if not, see
+    <https://www.gnu.org/licenses/>.  */
+ 
+-#define NO_MATH_REDIRECT
+-#include <libm-alias-double.h>
++#include <sysdeps/x86/isa-level.h>
++#if MINIMUM_X86_ISA_LEVEL < SSE4_1_X86_ISA_LEVEL
++# define NO_MATH_REDIRECT
++# include <libm-alias-double.h>
+ 
+-#define floor __redirect_floor
+-#define __floor __redirect___floor
+-#include <math.h>
+-#undef floor
+-#undef __floor
++# define floor __redirect_floor
++# define __floor __redirect___floor
++# include <math.h>
++# undef floor
++# undef __floor
+ 
+-#define SYMBOL_NAME floor
+-#include "ifunc-sse4_1.h"
++# define SYMBOL_NAME floor
++# include "ifunc-sse4_1.h"
+ 
+ libc_ifunc_redirected (__redirect_floor, __floor, IFUNC_SELECTOR ());
+ libm_alias_double (__floor, floor)
++#endif
+diff --git a/sysdeps/x86_64/fpu/multiarch/s_floorf-avx.S b/sysdeps/x86_64/fpu/multiarch/s_floorf-avx.S
+new file mode 100644
+index 0000000000..c378baae8e
+--- /dev/null
++++ b/sysdeps/x86_64/fpu/multiarch/s_floorf-avx.S
+@@ -0,0 +1,28 @@
++/* AVX implementation of floorf function.
++   Copyright (C) 2024 Free Software Foundation, Inc.
++   This file is part of the GNU C Library.
++
++   The GNU C Library is free software; you can redistribute it and/or
++   modify it under the terms of the GNU Lesser General Public
++   License as published by the Free Software Foundation; either
++   version 2.1 of the License, or (at your option) any later version.
++
++   The GNU C Library is distributed in the hope that it will be useful,
++   but WITHOUT ANY WARRANTY; without even the implied warranty of
++   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
++   Lesser General Public License for more details.
++
++   You should have received a copy of the GNU Lesser General Public
++   License along with the GNU C Library; if not, see
++   <https://www.gnu.org/licenses/>.  */
++
++#include <sysdep.h>
++#include <libm-alias-float.h>
++
++	.text
++ENTRY(__floorf)
++	vroundss $9, %xmm0, %xmm0, %xmm0
++	ret
++END(__floorf)
++
++libm_alias_float (__floor, floor)
+diff --git a/sysdeps/x86_64/fpu/multiarch/s_floorf-sse4_1.S b/sysdeps/x86_64/fpu/multiarch/s_floorf-sse4_1.S
+index 5f6020d27d..c2216899db 100644
+--- a/sysdeps/x86_64/fpu/multiarch/s_floorf-sse4_1.S
++++ b/sysdeps/x86_64/fpu/multiarch/s_floorf-sse4_1.S
+@@ -17,8 +17,20 @@
+ 
+ #include <sysdep.h>
+ 
++#include <sysdeps/x86/isa-level.h>
++#if MINIMUM_X86_ISA_LEVEL == SSE4_1_X86_ISA_LEVEL
++# include <libm-alias-float.h>
++# define __floorf_sse41 __floorf
++	.text
++#else
+ 	.section .text.sse4.1,"ax",@progbits
++#endif
++
+ ENTRY(__floorf_sse41)
+ 	roundss	$9, %xmm0, %xmm0
+ 	ret
+ END(__floorf_sse41)
++
++#if MINIMUM_X86_ISA_LEVEL == SSE4_1_X86_ISA_LEVEL
++libm_alias_float (__floor, floor)
++#endif
+diff --git a/sysdeps/x86_64/fpu/multiarch/s_floorf.c b/sysdeps/x86_64/fpu/multiarch/s_floorf.c
+index a14e18b03c..a277802b6d 100644
+--- a/sysdeps/x86_64/fpu/multiarch/s_floorf.c
++++ b/sysdeps/x86_64/fpu/multiarch/s_floorf.c
+@@ -16,17 +16,20 @@
+    License along with the GNU C Library; if not, see
+    <https://www.gnu.org/licenses/>.  */
+ 
+-#define NO_MATH_REDIRECT
+-#include <libm-alias-float.h>
++#include <sysdeps/x86/isa-level.h>
++#if MINIMUM_X86_ISA_LEVEL < SSE4_1_X86_ISA_LEVEL
++# define NO_MATH_REDIRECT
++# include <libm-alias-float.h>
+ 
+-#define floorf __redirect_floorf
+-#define __floorf __redirect___floorf
+-#include <math.h>
+-#undef floorf
+-#undef __floorf
++# define floorf __redirect_floorf
++# define __floorf __redirect___floorf
++# include <math.h>
++# undef floorf
++# undef __floorf
+ 
+-#define SYMBOL_NAME floorf
+-#include "ifunc-sse4_1.h"
++# define SYMBOL_NAME floorf
++# include "ifunc-sse4_1.h"
+ 
+ libc_ifunc_redirected (__redirect_floorf, __floorf, IFUNC_SELECTOR ());
+ libm_alias_float (__floor, floor)
++#endif
+diff --git a/sysdeps/x86_64/fpu/multiarch/s_log1p.c b/sysdeps/x86_64/fpu/multiarch/s_log1p.c
+index a8e1a3f21b..3fa1185d81 100644
+--- a/sysdeps/x86_64/fpu/multiarch/s_log1p.c
++++ b/sysdeps/x86_64/fpu/multiarch/s_log1p.c
+@@ -16,14 +16,17 @@
+    License along with the GNU C Library; if not, see
+    <https://www.gnu.org/licenses/>.  */
+ 
+-#include <libm-alias-double.h>
++#include <sysdeps/x86/isa-level.h>
++#if MINIMUM_X86_ISA_LEVEL < AVX2_X86_ISA_LEVEL
++# include <libm-alias-double.h>
+ 
+ extern double __redirect_log1p (double);
+ 
+-#define SYMBOL_NAME log1p
+-#include "ifunc-fma.h"
++# define SYMBOL_NAME log1p
++# include "ifunc-fma.h"
+ 
+ libc_ifunc_redirected (__redirect_log1p, __log1p, IFUNC_SELECTOR ());
+ 
+-#define __log1p __log1p_sse2
++# define __log1p __log1p_sse2
++#endif
+ #include <sysdeps/ieee754/dbl-64/s_log1p.c>
+diff --git a/sysdeps/x86_64/fpu/multiarch/s_nearbyint-avx.S b/sysdeps/x86_64/fpu/multiarch/s_nearbyint-avx.S
+new file mode 100644
+index 0000000000..5bfdf73c28
+--- /dev/null
++++ b/sysdeps/x86_64/fpu/multiarch/s_nearbyint-avx.S
+@@ -0,0 +1,28 @@
++/* AVX implementation of nearbyint function.
++   Copyright (C) 2024 Free Software Foundation, Inc.
++   This file is part of the GNU C Library.
++
++   The GNU C Library is free software; you can redistribute it and/or
++   modify it under the terms of the GNU Lesser General Public
++   License as published by the Free Software Foundation; either
++   version 2.1 of the License, or (at your option) any later version.
++
++   The GNU C Library is distributed in the hope that it will be useful,
++   but WITHOUT ANY WARRANTY; without even the implied warranty of
++   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
++   Lesser General Public License for more details.
++
++   You should have received a copy of the GNU Lesser General Public
++   License along with the GNU C Library; if not, see
++   <https://www.gnu.org/licenses/>.  */
++
++#include <sysdep.h>
++#include <libm-alias-double.h>
++
++	.text
++ENTRY(__nearbyint)
++	vroundsd $0xc, %xmm0, %xmm0, %xmm0
++	ret
++END(__nearbyint)
++
++libm_alias_double (__nearbyint, nearbyint)
+diff --git a/sysdeps/x86_64/fpu/multiarch/s_nearbyint-sse4_1.S b/sysdeps/x86_64/fpu/multiarch/s_nearbyint-sse4_1.S
+index 674f7eb40a..9d84410a1f 100644
+--- a/sysdeps/x86_64/fpu/multiarch/s_nearbyint-sse4_1.S
++++ b/sysdeps/x86_64/fpu/multiarch/s_nearbyint-sse4_1.S
+@@ -17,8 +17,20 @@
+ 
+ #include <sysdep.h>
+ 
++#include <sysdeps/x86/isa-level.h>
++#if MINIMUM_X86_ISA_LEVEL == SSE4_1_X86_ISA_LEVEL
++# include <libm-alias-double.h>
++# define __nearbyint_sse41 __nearbyint
++	.text
++#else
+ 	.section .text.sse4.1,"ax",@progbits
++#endif
++
+ ENTRY(__nearbyint_sse41)
+ 	roundsd	$0xc, %xmm0, %xmm0
+ 	ret
+ END(__nearbyint_sse41)
++
++#if MINIMUM_X86_ISA_LEVEL == SSE4_1_X86_ISA_LEVEL
++libm_alias_double (__nearbyint, nearbyint)
++#endif
+diff --git a/sysdeps/x86_64/fpu/multiarch/s_nearbyint.c b/sysdeps/x86_64/fpu/multiarch/s_nearbyint.c
+index 693e42dd4e..057a7ca60f 100644
+--- a/sysdeps/x86_64/fpu/multiarch/s_nearbyint.c
++++ b/sysdeps/x86_64/fpu/multiarch/s_nearbyint.c
+@@ -16,17 +16,20 @@
+    License along with the GNU C Library; if not, see
+    <https://www.gnu.org/licenses/>.  */
+ 
+-#include <libm-alias-double.h>
++#include <sysdeps/x86/isa-level.h>
++#if MINIMUM_X86_ISA_LEVEL < SSE4_1_X86_ISA_LEVEL
++# include <libm-alias-double.h>
+ 
+-#define nearbyint __redirect_nearbyint
+-#define __nearbyint __redirect___nearbyint
+-#include <math.h>
+-#undef nearbyint
+-#undef __nearbyint
++# define nearbyint __redirect_nearbyint
++# define __nearbyint __redirect___nearbyint
++# include <math.h>
++# undef nearbyint
++# undef __nearbyint
+ 
+-#define SYMBOL_NAME nearbyint
+-#include "ifunc-sse4_1.h"
++# define SYMBOL_NAME nearbyint
++# include "ifunc-sse4_1.h"
+ 
+ libc_ifunc_redirected (__redirect_nearbyint, __nearbyint,
+ 		       IFUNC_SELECTOR ());
+ libm_alias_double (__nearbyint, nearbyint)
++#endif
+diff --git a/sysdeps/x86_64/fpu/multiarch/s_nearbyintf-avx.S b/sysdeps/x86_64/fpu/multiarch/s_nearbyintf-avx.S
+new file mode 100644
+index 0000000000..1dbaed0324
+--- /dev/null
++++ b/sysdeps/x86_64/fpu/multiarch/s_nearbyintf-avx.S
+@@ -0,0 +1,28 @@
++/* AVX implmentation of nearbyintf function.
++   Copyright (C) 2024 Free Software Foundation, Inc.
++   This file is part of the GNU C Library.
++
++   The GNU C Library is free software; you can redistribute it and/or
++   modify it under the terms of the GNU Lesser General Public
++   License as published by the Free Software Foundation; either
++   version 2.1 of the License, or (at your option) any later version.
++
++   The GNU C Library is distributed in the hope that it will be useful,
++   but WITHOUT ANY WARRANTY; without even the implied warranty of
++   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
++   Lesser General Public License for more details.
++
++   You should have received a copy of the GNU Lesser General Public
++   License along with the GNU C Library; if not, see
++   <https://www.gnu.org/licenses/>.  */
++
++#include <sysdep.h>
++#include <libm-alias-float.h>
++
++	.text
++ENTRY(__nearbyintf)
++	vroundss $0xc, %xmm0, %xmm0, %xmm0
++	ret
++END(__nearbyintf)
++
++libm_alias_float (__nearbyint, nearbyint)
+diff --git a/sysdeps/x86_64/fpu/multiarch/s_nearbyintf-sse4_1.S b/sysdeps/x86_64/fpu/multiarch/s_nearbyintf-sse4_1.S
+index 5892bd7563..3cf35f92d6 100644
+--- a/sysdeps/x86_64/fpu/multiarch/s_nearbyintf-sse4_1.S
++++ b/sysdeps/x86_64/fpu/multiarch/s_nearbyintf-sse4_1.S
+@@ -17,8 +17,20 @@
+ 
+ #include <sysdep.h>
+ 
++#include <sysdeps/x86/isa-level.h>
++#if MINIMUM_X86_ISA_LEVEL == SSE4_1_X86_ISA_LEVEL
++# include <libm-alias-float.h>
++# define __nearbyintf_sse41 __nearbyintf
++	.text
++#else
+ 	.section .text.sse4.1,"ax",@progbits
++#endif
++
+ ENTRY(__nearbyintf_sse41)
+ 	roundss	$0xc, %xmm0, %xmm0
+ 	ret
+ END(__nearbyintf_sse41)
++
++#if MINIMUM_X86_ISA_LEVEL == SSE4_1_X86_ISA_LEVEL
++libm_alias_float (__nearbyint, nearbyint)
++#endif
+diff --git a/sysdeps/x86_64/fpu/multiarch/s_nearbyintf.c b/sysdeps/x86_64/fpu/multiarch/s_nearbyintf.c
+index a0ac009f4b..41f374ba72 100644
+--- a/sysdeps/x86_64/fpu/multiarch/s_nearbyintf.c
++++ b/sysdeps/x86_64/fpu/multiarch/s_nearbyintf.c
+@@ -16,17 +16,20 @@
+    License along with the GNU C Library; if not, see
+    <https://www.gnu.org/licenses/>.  */
+ 
+-#include <libm-alias-float.h>
++#include <sysdeps/x86/isa-level.h>
++#if MINIMUM_X86_ISA_LEVEL < SSE4_1_X86_ISA_LEVEL
++# include <libm-alias-float.h>
+ 
+-#define nearbyintf __redirect_nearbyintf
+-#define __nearbyintf __redirect___nearbyintf
+-#include <math.h>
+-#undef nearbyintf
+-#undef __nearbyintf
++# define nearbyintf __redirect_nearbyintf
++# define __nearbyintf __redirect___nearbyintf
++# include <math.h>
++# undef nearbyintf
++# undef __nearbyintf
+ 
+-#define SYMBOL_NAME nearbyintf
+-#include "ifunc-sse4_1.h"
++# define SYMBOL_NAME nearbyintf
++# include "ifunc-sse4_1.h"
+ 
+ libc_ifunc_redirected (__redirect_nearbyintf, __nearbyintf,
+ 		       IFUNC_SELECTOR ());
+ libm_alias_float (__nearbyint, nearbyint)
++#endif
+diff --git a/sysdeps/x86_64/fpu/multiarch/s_rint-avx.S b/sysdeps/x86_64/fpu/multiarch/s_rint-avx.S
+new file mode 100644
+index 0000000000..2b403b331f
+--- /dev/null
++++ b/sysdeps/x86_64/fpu/multiarch/s_rint-avx.S
+@@ -0,0 +1,28 @@
++/* AVX implementation of rint function.
++   Copyright (C) 2024 Free Software Foundation, Inc.
++   This file is part of the GNU C Library.
++
++   The GNU C Library is free software; you can redistribute it and/or
++   modify it under the terms of the GNU Lesser General Public
++   License as published by the Free Software Foundation; either
++   version 2.1 of the License, or (at your option) any later version.
++
++   The GNU C Library is distributed in the hope that it will be useful,
++   but WITHOUT ANY WARRANTY; without even the implied warranty of
++   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
++   Lesser General Public License for more details.
++
++   You should have received a copy of the GNU Lesser General Public
++   License along with the GNU C Library; if not, see
++   <https://www.gnu.org/licenses/>.  */
++
++#include <sysdep.h>
++#include <libm-alias-double.h>
++
++	.text
++ENTRY(__rint)
++	vroundsd $4, %xmm0, %xmm0, %xmm0
++	ret
++END(__rint)
++
++libm_alias_double (__rint, rint)
+diff --git a/sysdeps/x86_64/fpu/multiarch/s_rint-sse4_1.S b/sysdeps/x86_64/fpu/multiarch/s_rint-sse4_1.S
+index 405372991b..8cd9cf759f 100644
+--- a/sysdeps/x86_64/fpu/multiarch/s_rint-sse4_1.S
++++ b/sysdeps/x86_64/fpu/multiarch/s_rint-sse4_1.S
+@@ -17,8 +17,20 @@
+ 
+ #include <sysdep.h>
+ 
++#include <sysdeps/x86/isa-level.h>
++#if MINIMUM_X86_ISA_LEVEL == SSE4_1_X86_ISA_LEVEL
++# include <libm-alias-double.h>
++# define __rint_sse41 __rint
++	.text
++#else
+ 	.section .text.sse4.1,"ax",@progbits
++#endif
++
+ ENTRY(__rint_sse41)
+ 	roundsd	$4, %xmm0, %xmm0
+ 	ret
+ END(__rint_sse41)
++
++#if MINIMUM_X86_ISA_LEVEL == SSE4_1_X86_ISA_LEVEL
++libm_alias_double (__rint, rint)
++#endif
+diff --git a/sysdeps/x86_64/fpu/multiarch/s_rint.c b/sysdeps/x86_64/fpu/multiarch/s_rint.c
+index 754c87e004..18623b7d99 100644
+--- a/sysdeps/x86_64/fpu/multiarch/s_rint.c
++++ b/sysdeps/x86_64/fpu/multiarch/s_rint.c
+@@ -16,17 +16,20 @@
+    License along with the GNU C Library; if not, see
+    <https://www.gnu.org/licenses/>.  */
+ 
+-#define NO_MATH_REDIRECT
+-#include <libm-alias-double.h>
++#include <sysdeps/x86/isa-level.h>
++#if MINIMUM_X86_ISA_LEVEL < SSE4_1_X86_ISA_LEVEL
++# define NO_MATH_REDIRECT
++# include <libm-alias-double.h>
+ 
+-#define rint __redirect_rint
+-#define __rint __redirect___rint
+-#include <math.h>
+-#undef rint
+-#undef __rint
++# define rint __redirect_rint
++# define __rint __redirect___rint
++# include <math.h>
++# undef rint
++# undef __rint
+ 
+-#define SYMBOL_NAME rint
+-#include "ifunc-sse4_1.h"
++# define SYMBOL_NAME rint
++# include "ifunc-sse4_1.h"
+ 
+ libc_ifunc_redirected (__redirect_rint, __rint, IFUNC_SELECTOR ());
+ libm_alias_double (__rint, rint)
++#endif
+diff --git a/sysdeps/x86_64/fpu/multiarch/s_rintf-avx.S b/sysdeps/x86_64/fpu/multiarch/s_rintf-avx.S
+new file mode 100644
+index 0000000000..171c2867f4
+--- /dev/null
++++ b/sysdeps/x86_64/fpu/multiarch/s_rintf-avx.S
+@@ -0,0 +1,28 @@
++/* AVX implementation of rintf function.
++   Copyright (C) 2024 Free Software Foundation, Inc.
++   This file is part of the GNU C Library.
++
++   The GNU C Library is free software; you can redistribute it and/or
++   modify it under the terms of the GNU Lesser General Public
++   License as published by the Free Software Foundation; either
++   version 2.1 of the License, or (at your option) any later version.
++
++   The GNU C Library is distributed in the hope that it will be useful,
++   but WITHOUT ANY WARRANTY; without even the implied warranty of
++   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
++   Lesser General Public License for more details.
++
++   You should have received a copy of the GNU Lesser General Public
++   License along with the GNU C Library; if not, see
++   <https://www.gnu.org/licenses/>.  */
++
++#include <sysdep.h>
++#include <libm-alias-float.h>
++
++	.text
++ENTRY(__rintf)
++	vroundss $4, %xmm0, %xmm0, %xmm0
++	ret
++END(__rintf)
++
++libm_alias_float (__rint, rint)
+diff --git a/sysdeps/x86_64/fpu/multiarch/s_rintf-sse4_1.S b/sysdeps/x86_64/fpu/multiarch/s_rintf-sse4_1.S
+index 8ac67ce767..fc1e70f0c9 100644
+--- a/sysdeps/x86_64/fpu/multiarch/s_rintf-sse4_1.S
++++ b/sysdeps/x86_64/fpu/multiarch/s_rintf-sse4_1.S
+@@ -17,8 +17,20 @@
+ 
+ #include <sysdep.h>
+ 
++#include <sysdeps/x86/isa-level.h>
++#if MINIMUM_X86_ISA_LEVEL == SSE4_1_X86_ISA_LEVEL
++# include <libm-alias-float.h>
++# define __rintf_sse41 __rintf
++	.text
++#else
+ 	.section .text.sse4.1,"ax",@progbits
++#endif
++
+ ENTRY(__rintf_sse41)
+ 	roundss	$4, %xmm0, %xmm0
+ 	ret
+ END(__rintf_sse41)
++
++#if MINIMUM_X86_ISA_LEVEL == SSE4_1_X86_ISA_LEVEL
++libm_alias_float (__rint, rint)
++#endif
+diff --git a/sysdeps/x86_64/fpu/multiarch/s_rintf.c b/sysdeps/x86_64/fpu/multiarch/s_rintf.c
+index e9d6b7a5f2..e275368dec 100644
+--- a/sysdeps/x86_64/fpu/multiarch/s_rintf.c
++++ b/sysdeps/x86_64/fpu/multiarch/s_rintf.c
+@@ -16,17 +16,20 @@
+    License along with the GNU C Library; if not, see
+    <https://www.gnu.org/licenses/>.  */
+ 
+-#define NO_MATH_REDIRECT
+-#include <libm-alias-float.h>
++#include <sysdeps/x86/isa-level.h>
++#if MINIMUM_X86_ISA_LEVEL < SSE4_1_X86_ISA_LEVEL
++# define NO_MATH_REDIRECT
++# include <libm-alias-float.h>
+ 
+-#define rintf __redirect_rintf
+-#define __rintf __redirect___rintf
+-#include <math.h>
+-#undef rintf
+-#undef __rintf
++# define rintf __redirect_rintf
++# define __rintf __redirect___rintf
++# include <math.h>
++# undef rintf
++# undef __rintf
+ 
+-#define SYMBOL_NAME rintf
+-#include "ifunc-sse4_1.h"
++# define SYMBOL_NAME rintf
++# include "ifunc-sse4_1.h"
+ 
+ libc_ifunc_redirected (__redirect_rintf, __rintf, IFUNC_SELECTOR ());
+ libm_alias_float (__rint, rint)
++#endif
+diff --git a/sysdeps/x86_64/fpu/multiarch/s_roundeven-avx.S b/sysdeps/x86_64/fpu/multiarch/s_roundeven-avx.S
+new file mode 100644
+index 0000000000..576790355c
+--- /dev/null
++++ b/sysdeps/x86_64/fpu/multiarch/s_roundeven-avx.S
+@@ -0,0 +1,28 @@
++/* AVX implementation of roundeven function.
++   Copyright (C) 2024 Free Software Foundation, Inc.
++   This file is part of the GNU C Library.
++
++   The GNU C Library is free software; you can redistribute it and/or
++   modify it under the terms of the GNU Lesser General Public
++   License as published by the Free Software Foundation; either
++   version 2.1 of the License, or (at your option) any later version.
++
++   The GNU C Library is distributed in the hope that it will be useful,
++   but WITHOUT ANY WARRANTY; without even the implied warranty of
++   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
++   Lesser General Public License for more details.
++
++   You should have received a copy of the GNU Lesser General Public
++   License along with the GNU C Library; if not, see
++   <https://www.gnu.org/licenses/>.  */
++
++#include <sysdep.h>
++#include <libm-alias-double.h>
++
++	.text
++ENTRY(__roundeven)
++	vroundsd $8, %xmm0, %xmm0, %xmm0
++	ret
++END(__roundeven)
++
++libm_alias_double (__roundeven, roundeven)
+diff --git a/sysdeps/x86_64/fpu/multiarch/s_roundeven-sse4_1.S b/sysdeps/x86_64/fpu/multiarch/s_roundeven-sse4_1.S
+index 5ef102336b..f00be56c59 100644
+--- a/sysdeps/x86_64/fpu/multiarch/s_roundeven-sse4_1.S
++++ b/sysdeps/x86_64/fpu/multiarch/s_roundeven-sse4_1.S
+@@ -17,8 +17,20 @@
+ 
+ #include <sysdep.h>
+ 
++#include <sysdeps/x86/isa-level.h>
++#if MINIMUM_X86_ISA_LEVEL == SSE4_1_X86_ISA_LEVEL
++# include <libm-alias-double.h>
++# define __roundeven_sse41 __roundeven
++	.text
++#else
+ 	.section .text.sse4.1,"ax",@progbits
++#endif
++
+ ENTRY(__roundeven_sse41)
+ 	roundsd	$8, %xmm0, %xmm0
+ 	ret
+ END(__roundeven_sse41)
++
++#if MINIMUM_X86_ISA_LEVEL == SSE4_1_X86_ISA_LEVEL
++libm_alias_double (__roundeven, roundeven)
++#endif
+diff --git a/sysdeps/x86_64/fpu/multiarch/s_roundeven.c b/sysdeps/x86_64/fpu/multiarch/s_roundeven.c
+index 8737b32e26..139aad088f 100644
+--- a/sysdeps/x86_64/fpu/multiarch/s_roundeven.c
++++ b/sysdeps/x86_64/fpu/multiarch/s_roundeven.c
+@@ -16,16 +16,19 @@
+    License along with the GNU C Library; if not, see
+    <https://www.gnu.org/licenses/>.  */
+ 
+-#include <libm-alias-double.h>
++#include <sysdeps/x86/isa-level.h>
++#if MINIMUM_X86_ISA_LEVEL < SSE4_1_X86_ISA_LEVEL
++# include <libm-alias-double.h>
+ 
+-#define roundeven __redirect_roundeven
+-#define __roundeven __redirect___roundeven
+-#include <math.h>
+-#undef roundeven
+-#undef __roundeven
++# define roundeven __redirect_roundeven
++# define __roundeven __redirect___roundeven
++# include <math.h>
++# undef roundeven
++# undef __roundeven
+ 
+-#define SYMBOL_NAME roundeven
+-#include "ifunc-sse4_1.h"
++# define SYMBOL_NAME roundeven
++# include "ifunc-sse4_1.h"
+ 
+ libc_ifunc_redirected (__redirect_roundeven, __roundeven, IFUNC_SELECTOR ());
+ libm_alias_double (__roundeven, roundeven)
++#endif
+diff --git a/sysdeps/x86_64/fpu/multiarch/s_roundevenf-avx.S b/sysdeps/x86_64/fpu/multiarch/s_roundevenf-avx.S
+new file mode 100644
+index 0000000000..42c359f4cd
+--- /dev/null
++++ b/sysdeps/x86_64/fpu/multiarch/s_roundevenf-avx.S
+@@ -0,0 +1,28 @@
++/* AVX implementation of roundevenf function.
++   Copyright (C) 2024 Free Software Foundation, Inc.
++   This file is part of the GNU C Library.
++
++   The GNU C Library is free software; you can redistribute it and/or
++   modify it under the terms of the GNU Lesser General Public
++   License as published by the Free Software Foundation; either
++   version 2.1 of the License, or (at your option) any later version.
++
++   The GNU C Library is distributed in the hope that it will be useful,
++   but WITHOUT ANY WARRANTY; without even the implied warranty of
++   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
++   Lesser General Public License for more details.
++
++   You should have received a copy of the GNU Lesser General Public
++   License along with the GNU C Library; if not, see
++   <https://www.gnu.org/licenses/>.  */
++
++#include <sysdep.h>
++#include <libm-alias-float.h>
++
++	.text
++ENTRY(__roundevenf)
++	vroundss $8, %xmm0, %xmm0, %xmm0
++	ret
++END(__roundevenf)
++
++libm_alias_float (__roundeven, roundeven)
+diff --git a/sysdeps/x86_64/fpu/multiarch/s_roundevenf-sse4_1.S b/sysdeps/x86_64/fpu/multiarch/s_roundevenf-sse4_1.S
+index 792c90ba07..6b148e4353 100644
+--- a/sysdeps/x86_64/fpu/multiarch/s_roundevenf-sse4_1.S
++++ b/sysdeps/x86_64/fpu/multiarch/s_roundevenf-sse4_1.S
+@@ -17,8 +17,20 @@
+ 
+ #include <sysdep.h>
+ 
++#include <sysdeps/x86/isa-level.h>
++#if MINIMUM_X86_ISA_LEVEL == SSE4_1_X86_ISA_LEVEL
++# include <libm-alias-float.h>
++# define __roundevenf_sse41 __roundevenf
++	.text
++#else
+ 	.section .text.sse4.1,"ax",@progbits
++#endif
++
+ ENTRY(__roundevenf_sse41)
+ 	roundss	$8, %xmm0, %xmm0
+ 	ret
+ END(__roundevenf_sse41)
++
++#if MINIMUM_X86_ISA_LEVEL == SSE4_1_X86_ISA_LEVEL
++libm_alias_float (__roundeven, roundeven)
++#endif
+diff --git a/sysdeps/x86_64/fpu/multiarch/s_roundevenf.c b/sysdeps/x86_64/fpu/multiarch/s_roundevenf.c
+index e96016a4d5..2fb090075d 100644
+--- a/sysdeps/x86_64/fpu/multiarch/s_roundevenf.c
++++ b/sysdeps/x86_64/fpu/multiarch/s_roundevenf.c
+@@ -16,16 +16,19 @@
+    License along with the GNU C Library; if not, see
+    <https://www.gnu.org/licenses/>.  */
+ 
+-#include <libm-alias-float.h>
++#include <sysdeps/x86/isa-level.h>
++#if MINIMUM_X86_ISA_LEVEL < SSE4_1_X86_ISA_LEVEL
++# include <libm-alias-float.h>
+ 
+-#define roundevenf __redirect_roundevenf
+-#define __roundevenf __redirect___roundevenf
+-#include <math.h>
+-#undef roundevenf
+-#undef __roundevenf
++# define roundevenf __redirect_roundevenf
++# define __roundevenf __redirect___roundevenf
++# include <math.h>
++# undef roundevenf
++# undef __roundevenf
+ 
+-#define SYMBOL_NAME roundevenf
+-#include "ifunc-sse4_1.h"
++# define SYMBOL_NAME roundevenf
++# include "ifunc-sse4_1.h"
+ 
+ libc_ifunc_redirected (__redirect_roundevenf, __roundevenf, IFUNC_SELECTOR ());
+ libm_alias_float (__roundeven, roundeven)
++#endif
+diff --git a/sysdeps/x86_64/fpu/multiarch/s_sin.c b/sysdeps/x86_64/fpu/multiarch/s_sin.c
+index 355cc0092e..21e77943a3 100644
+--- a/sysdeps/x86_64/fpu/multiarch/s_sin.c
++++ b/sysdeps/x86_64/fpu/multiarch/s_sin.c
+@@ -16,24 +16,27 @@
+    License along with the GNU C Library; if not, see
+    <https://www.gnu.org/licenses/>.  */
+ 
+-#include <libm-alias-double.h>
++#include <sysdeps/x86/isa-level.h>
++#if MINIMUM_X86_ISA_LEVEL < AVX2_X86_ISA_LEVEL
++# include <libm-alias-double.h>
+ 
+ extern double __redirect_sin (double);
+ extern double __redirect_cos (double);
+ 
+-#define SYMBOL_NAME sin
+-#include "ifunc-avx-fma4.h"
++# define SYMBOL_NAME sin
++# include "ifunc-avx-fma4.h"
+ 
+ libc_ifunc_redirected (__redirect_sin, __sin, IFUNC_SELECTOR ());
+ libm_alias_double (__sin, sin)
+ 
+-#undef SYMBOL_NAME
+-#define SYMBOL_NAME cos
+-#include "ifunc-avx-fma4.h"
++# undef SYMBOL_NAME
++# define SYMBOL_NAME cos
++# include "ifunc-avx-fma4.h"
+ 
+ libc_ifunc_redirected (__redirect_cos, __cos, IFUNC_SELECTOR ());
+ libm_alias_double (__cos, cos)
+ 
+-#define __cos __cos_sse2
+-#define __sin __sin_sse2
++# define __cos __cos_sse2
++# define __sin __sin_sse2
++#endif
+ #include <sysdeps/ieee754/dbl-64/s_sin.c>
+diff --git a/sysdeps/x86_64/fpu/multiarch/s_sincos.c b/sysdeps/x86_64/fpu/multiarch/s_sincos.c
+index 70107e999c..b35757f8de 100644
+--- a/sysdeps/x86_64/fpu/multiarch/s_sincos.c
++++ b/sysdeps/x86_64/fpu/multiarch/s_sincos.c
+@@ -16,15 +16,18 @@
+    License along with the GNU C Library; if not, see
+    <https://www.gnu.org/licenses/>.  */
+ 
+-#include <libm-alias-double.h>
++#include <sysdeps/x86/isa-level.h>
++#if MINIMUM_X86_ISA_LEVEL < AVX2_X86_ISA_LEVEL
++# include <libm-alias-double.h>
+ 
+ extern void __redirect_sincos (double, double *, double *);
+ 
+-#define SYMBOL_NAME sincos
+-#include "ifunc-fma4.h"
++# define SYMBOL_NAME sincos
++# include "ifunc-fma4.h"
+ 
+ libc_ifunc_redirected (__redirect_sincos, __sincos, IFUNC_SELECTOR ());
+ libm_alias_double (__sincos, sincos)
+ 
+-#define __sincos __sincos_sse2
++# define __sincos __sincos_sse2
++#endif
+ #include <sysdeps/ieee754/dbl-64/s_sincos.c>
+diff --git a/sysdeps/x86_64/fpu/multiarch/s_sincosf.c b/sysdeps/x86_64/fpu/multiarch/s_sincosf.c
+index 80bc028451..0ea9b40e84 100644
+--- a/sysdeps/x86_64/fpu/multiarch/s_sincosf.c
++++ b/sysdeps/x86_64/fpu/multiarch/s_sincosf.c
+@@ -16,13 +16,18 @@
+    License along with the GNU C Library; if not, see
+    <https://www.gnu.org/licenses/>.  */
+ 
+-#include <libm-alias-float.h>
++#include <sysdeps/x86/isa-level.h>
++#if MINIMUM_X86_ISA_LEVEL < AVX2_X86_ISA_LEVEL
++# include <libm-alias-float.h>
+ 
+ extern void __redirect_sincosf (float, float *, float *);
+ 
+-#define SYMBOL_NAME sincosf
+-#include "ifunc-fma.h"
++# define SYMBOL_NAME sincosf
++# include "ifunc-fma.h"
+ 
+ libc_ifunc_redirected (__redirect_sincosf, __sincosf, IFUNC_SELECTOR ());
+ 
+ libm_alias_float (__sincos, sincos)
++#else
++# include <sysdeps/ieee754/flt-32/s_sincosf.c>
++#endif
+diff --git a/sysdeps/x86_64/fpu/multiarch/s_sinf.c b/sysdeps/x86_64/fpu/multiarch/s_sinf.c
+index a32b9e9550..c61624e3ee 100644
+--- a/sysdeps/x86_64/fpu/multiarch/s_sinf.c
++++ b/sysdeps/x86_64/fpu/multiarch/s_sinf.c
+@@ -16,13 +16,18 @@
+    License along with the GNU C Library; if not, see
+    <https://www.gnu.org/licenses/>.  */
+ 
+-#include <libm-alias-float.h>
++#include <sysdeps/x86/isa-level.h>
++#if MINIMUM_X86_ISA_LEVEL < AVX2_X86_ISA_LEVEL
++# include <libm-alias-float.h>
+ 
+ extern float __redirect_sinf (float);
+ 
+-#define SYMBOL_NAME sinf
+-#include "ifunc-fma.h"
++# define SYMBOL_NAME sinf
++# include "ifunc-fma.h"
+ 
+ libc_ifunc_redirected (__redirect_sinf, __sinf, IFUNC_SELECTOR ());
+ 
+ libm_alias_float (__sin, sin)
++#else
++# include <sysdeps/ieee754/flt-32/s_sinf.c>
++#endif
+diff --git a/sysdeps/x86_64/fpu/multiarch/s_tan.c b/sysdeps/x86_64/fpu/multiarch/s_tan.c
+index f9a2474a13..125d992ba1 100644
+--- a/sysdeps/x86_64/fpu/multiarch/s_tan.c
++++ b/sysdeps/x86_64/fpu/multiarch/s_tan.c
+@@ -16,15 +16,18 @@
+    License along with the GNU C Library; if not, see
+    <https://www.gnu.org/licenses/>.  */
+ 
+-#include <libm-alias-double.h>
++#include <sysdeps/x86/isa-level.h>
++#if MINIMUM_X86_ISA_LEVEL < AVX2_X86_ISA_LEVEL
++# include <libm-alias-double.h>
+ 
+ extern double __redirect_tan (double);
+ 
+-#define SYMBOL_NAME tan
+-#include "ifunc-avx-fma4.h"
++# define SYMBOL_NAME tan
++# include "ifunc-avx-fma4.h"
+ 
+ libc_ifunc_redirected (__redirect_tan, __tan, IFUNC_SELECTOR ());
+ libm_alias_double (__tan, tan)
+ 
+-#define __tan __tan_sse2
++# define __tan __tan_sse2
++#endif
+ #include <sysdeps/ieee754/dbl-64/s_tan.c>
+diff --git a/sysdeps/x86_64/fpu/multiarch/s_trunc-avx.S b/sysdeps/x86_64/fpu/multiarch/s_trunc-avx.S
+new file mode 100644
+index 0000000000..b3e87e9606
+--- /dev/null
++++ b/sysdeps/x86_64/fpu/multiarch/s_trunc-avx.S
+@@ -0,0 +1,28 @@
++/* AVX implementation of trunc function.
++   Copyright (C) 2024 Free Software Foundation, Inc.
++   This file is part of the GNU C Library.
++
++   The GNU C Library is free software; you can redistribute it and/or
++   modify it under the terms of the GNU Lesser General Public
++   License as published by the Free Software Foundation; either
++   version 2.1 of the License, or (at your option) any later version.
++
++   The GNU C Library is distributed in the hope that it will be useful,
++   but WITHOUT ANY WARRANTY; without even the implied warranty of
++   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
++   Lesser General Public License for more details.
++
++   You should have received a copy of the GNU Lesser General Public
++   License along with the GNU C Library; if not, see
++   <https://www.gnu.org/licenses/>.  */
++
++#include <sysdep.h>
++#include <libm-alias-double.h>
++
++	.text
++ENTRY(__trunc)
++	vroundsd $11, %xmm0, %xmm0, %xmm0
++	ret
++END(__trunc)
++
++libm_alias_double (__trunc, trunc)
+diff --git a/sysdeps/x86_64/fpu/multiarch/s_trunc-sse4_1.S b/sysdeps/x86_64/fpu/multiarch/s_trunc-sse4_1.S
+index b496a6ef49..2b79174eed 100644
+--- a/sysdeps/x86_64/fpu/multiarch/s_trunc-sse4_1.S
++++ b/sysdeps/x86_64/fpu/multiarch/s_trunc-sse4_1.S
+@@ -18,8 +18,20 @@
+ 
+ #include <sysdep.h>
+ 
++#include <sysdeps/x86/isa-level.h>
++#if MINIMUM_X86_ISA_LEVEL == SSE4_1_X86_ISA_LEVEL
++# include <libm-alias-double.h>
++# define __trunc_sse41 __trunc
++	.text
++#else
+ 	.section .text.sse4.1,"ax",@progbits
++#endif
++
+ ENTRY(__trunc_sse41)
+ 	roundsd	$11, %xmm0, %xmm0
+ 	ret
+ END(__trunc_sse41)
++
++#if MINIMUM_X86_ISA_LEVEL == SSE4_1_X86_ISA_LEVEL
++libm_alias_double (__trunc, trunc)
++#endif
+diff --git a/sysdeps/x86_64/fpu/multiarch/s_trunc.c b/sysdeps/x86_64/fpu/multiarch/s_trunc.c
+index 9bc9df8744..ea89c4f85d 100644
+--- a/sysdeps/x86_64/fpu/multiarch/s_trunc.c
++++ b/sysdeps/x86_64/fpu/multiarch/s_trunc.c
+@@ -16,17 +16,20 @@
+    License along with the GNU C Library; if not, see
+    <https://www.gnu.org/licenses/>.  */
+ 
+-#define NO_MATH_REDIRECT
+-#include <libm-alias-double.h>
++#include <sysdeps/x86/isa-level.h>
++#if MINIMUM_X86_ISA_LEVEL < SSE4_1_X86_ISA_LEVEL
++# define NO_MATH_REDIRECT
++# include <libm-alias-double.h>
+ 
+-#define trunc __redirect_trunc
+-#define __trunc __redirect___trunc
+-#include <math.h>
+-#undef trunc
+-#undef __trunc
++# define trunc __redirect_trunc
++# define __trunc __redirect___trunc
++# include <math.h>
++# undef trunc
++# undef __trunc
+ 
+-#define SYMBOL_NAME trunc
+-#include "ifunc-sse4_1.h"
++# define SYMBOL_NAME trunc
++# include "ifunc-sse4_1.h"
+ 
+ libc_ifunc_redirected (__redirect_trunc, __trunc, IFUNC_SELECTOR ());
+ libm_alias_double (__trunc, trunc)
++#endif
+diff --git a/sysdeps/x86_64/fpu/multiarch/s_truncf-avx.S b/sysdeps/x86_64/fpu/multiarch/s_truncf-avx.S
+new file mode 100644
+index 0000000000..f31ac7d7f7
+--- /dev/null
++++ b/sysdeps/x86_64/fpu/multiarch/s_truncf-avx.S
+@@ -0,0 +1,28 @@
++/* AVX implementation of truncf function.
++   Copyright (C) 2024 Free Software Foundation, Inc.
++   This file is part of the GNU C Library.
++
++   The GNU C Library is free software; you can redistribute it and/or
++   modify it under the terms of the GNU Lesser General Public
++   License as published by the Free Software Foundation; either
++   version 2.1 of the License, or (at your option) any later version.
++
++   The GNU C Library is distributed in the hope that it will be useful,
++   but WITHOUT ANY WARRANTY; without even the implied warranty of
++   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
++   Lesser General Public License for more details.
++
++   You should have received a copy of the GNU Lesser General Public
++   License along with the GNU C Library; if not, see
++   <https://www.gnu.org/licenses/>.  */
++
++#include <sysdep.h>
++#include <libm-alias-float.h>
++
++	.text
++ENTRY(__truncf)
++	vroundss $11, %xmm0, %xmm0, %xmm0
++	ret
++END(__truncf)
++
++libm_alias_float (__trunc, trunc)
+diff --git a/sysdeps/x86_64/fpu/multiarch/s_truncf-sse4_1.S b/sysdeps/x86_64/fpu/multiarch/s_truncf-sse4_1.S
+index 22e9a83307..60498b2cb2 100644
+--- a/sysdeps/x86_64/fpu/multiarch/s_truncf-sse4_1.S
++++ b/sysdeps/x86_64/fpu/multiarch/s_truncf-sse4_1.S
+@@ -18,8 +18,20 @@
+ 
+ #include <sysdep.h>
+ 
++#include <sysdeps/x86/isa-level.h>
++#if MINIMUM_X86_ISA_LEVEL == SSE4_1_X86_ISA_LEVEL
++# include <libm-alias-float.h>
++# define __truncf_sse41 __truncf
++	.text
++#else
+ 	.section .text.sse4.1,"ax",@progbits
++#endif
++
+ ENTRY(__truncf_sse41)
+ 	roundss	$11, %xmm0, %xmm0
+ 	ret
+ END(__truncf_sse41)
++
++#if MINIMUM_X86_ISA_LEVEL == SSE4_1_X86_ISA_LEVEL
++libm_alias_float (__trunc, trunc)
++#endif
+diff --git a/sysdeps/x86_64/fpu/multiarch/s_truncf.c b/sysdeps/x86_64/fpu/multiarch/s_truncf.c
+index dae01d166a..92435ce39d 100644
+--- a/sysdeps/x86_64/fpu/multiarch/s_truncf.c
++++ b/sysdeps/x86_64/fpu/multiarch/s_truncf.c
+@@ -16,17 +16,20 @@
+    License along with the GNU C Library; if not, see
+    <https://www.gnu.org/licenses/>.  */
+ 
+-#define NO_MATH_REDIRECT
+-#include <libm-alias-float.h>
++#include <sysdeps/x86/isa-level.h>
++#if MINIMUM_X86_ISA_LEVEL < SSE4_1_X86_ISA_LEVEL
++# define NO_MATH_REDIRECT
++# include <libm-alias-float.h>
+ 
+-#define truncf __redirect_truncf
+-#define __truncf __redirect___truncf
+-#include <math.h>
+-#undef truncf
+-#undef __truncf
++# define truncf __redirect_truncf
++# define __truncf __redirect___truncf
++# include <math.h>
++# undef truncf
++# undef __truncf
+ 
+-#define SYMBOL_NAME truncf
+-#include "ifunc-sse4_1.h"
++# define SYMBOL_NAME truncf
++# include "ifunc-sse4_1.h"
+ 
+ libc_ifunc_redirected (__redirect_truncf, __truncf, IFUNC_SELECTOR ());
+ libm_alias_float (__trunc, trunc)
++#endif
+diff --git a/sysdeps/x86_64/fpu/multiarch/w_exp.c b/sysdeps/x86_64/fpu/multiarch/w_exp.c
+index 27eee98a0a..3584187e0e 100644
+--- a/sysdeps/x86_64/fpu/multiarch/w_exp.c
++++ b/sysdeps/x86_64/fpu/multiarch/w_exp.c
+@@ -1 +1,6 @@
+-#include <sysdeps/../math/w_exp.c>
++#include <sysdeps/x86/isa-level.h>
++#if MINIMUM_X86_ISA_LEVEL >= AVX2_X86_ISA_LEVEL
++# include <sysdeps/ieee754/dbl-64/w_exp.c>
++#else
++# include <sysdeps/../math/w_exp.c>
++#endif
+diff --git a/sysdeps/x86_64/fpu/multiarch/w_log.c b/sysdeps/x86_64/fpu/multiarch/w_log.c
+index 9b2b018711..414ca3ca3d 100644
+--- a/sysdeps/x86_64/fpu/multiarch/w_log.c
++++ b/sysdeps/x86_64/fpu/multiarch/w_log.c
+@@ -1 +1,6 @@
+-#include <sysdeps/../math/w_log.c>
++#include <sysdeps/x86/isa-level.h>
++#if MINIMUM_X86_ISA_LEVEL >= AVX2_X86_ISA_LEVEL
++# include <sysdeps/ieee754/dbl-64/w_log.c>
++#else
++# include <sysdeps/../math/w_log.c>
++#endif
+diff --git a/sysdeps/x86_64/fpu/multiarch/w_pow.c b/sysdeps/x86_64/fpu/multiarch/w_pow.c
+index b50c1988de..d5fcc4f871 100644
+--- a/sysdeps/x86_64/fpu/multiarch/w_pow.c
++++ b/sysdeps/x86_64/fpu/multiarch/w_pow.c
+@@ -1 +1,6 @@
+-#include <sysdeps/../math/w_pow.c>
++#include <sysdeps/x86/isa-level.h>
++#if MINIMUM_X86_ISA_LEVEL >= AVX2_X86_ISA_LEVEL
++# include <sysdeps/ieee754/dbl-64/w_pow.c>
++#else
++# include <sysdeps/../math/w_pow.c>
++#endif
+
+commit 31da30f23cddd36db29d5b6a1c7619361b271fb4
+Author: Charles Fol <folcharles@gmail.com>
+Date:   Thu Mar 28 12:25:38 2024 -0300
+
+    iconv: ISO-2022-CN-EXT: fix out-of-bound writes when writing escape sequence (CVE-2024-2961)
+    
+    ISO-2022-CN-EXT uses escape sequences to indicate character set changes
+    (as specified by RFC 1922).  While the SOdesignation has the expected
+    bounds checks, neither SS2designation nor SS3designation have its;
+    allowing a write overflow of 1, 2, or 3 bytes with fixed values:
+    '$+I', '$+J', '$+K', '$+L', '$+M', or '$*H'.
+    
+    Checked on aarch64-linux-gnu.
+    
+    Co-authored-by: Adhemerval Zanella  <adhemerval.zanella@linaro.org>
+    Reviewed-by: Carlos O'Donell <carlos@redhat.com>
+    Tested-by: Carlos O'Donell <carlos@redhat.com>
+    
+    (cherry picked from commit f9dc609e06b1136bb0408be9605ce7973a767ada)
+
+diff --git a/iconvdata/Makefile b/iconvdata/Makefile
+index ea019ce5c0..7196a8744b 100644
+--- a/iconvdata/Makefile
++++ b/iconvdata/Makefile
+@@ -75,7 +75,8 @@ ifeq (yes,$(build-shared))
+ tests = bug-iconv1 bug-iconv2 tst-loading tst-e2big tst-iconv4 bug-iconv4 \
+ 	tst-iconv6 bug-iconv5 bug-iconv6 tst-iconv7 bug-iconv8 bug-iconv9 \
+ 	bug-iconv10 bug-iconv11 bug-iconv12 tst-iconv-big5-hkscs-to-2ucs4 \
+-	bug-iconv13 bug-iconv14 bug-iconv15
++	bug-iconv13 bug-iconv14 bug-iconv15 \
++	tst-iconv-iso-2022-cn-ext
+ ifeq ($(have-thread-library),yes)
+ tests += bug-iconv3
+ endif
+@@ -330,6 +331,8 @@ $(objpfx)bug-iconv14.out: $(addprefix $(objpfx), $(gconv-modules)) \
+ 			  $(addprefix $(objpfx),$(modules.so))
+ $(objpfx)bug-iconv15.out: $(addprefix $(objpfx), $(gconv-modules)) \
+ 			  $(addprefix $(objpfx),$(modules.so))
++$(objpfx)tst-iconv-iso-2022-cn-ext.out: $(addprefix $(objpfx), $(gconv-modules)) \
++					$(addprefix $(objpfx),$(modules.so))
+ 
+ $(objpfx)iconv-test.out: run-iconv-test.sh \
+ 			 $(addprefix $(objpfx), $(gconv-modules)) \
+diff --git a/iconvdata/iso-2022-cn-ext.c b/iconvdata/iso-2022-cn-ext.c
+index b34c8a36f4..cce29b1969 100644
+--- a/iconvdata/iso-2022-cn-ext.c
++++ b/iconvdata/iso-2022-cn-ext.c
+@@ -574,6 +574,12 @@ DIAG_IGNORE_Os_NEEDS_COMMENT (5, "-Wmaybe-uninitialized");
+ 	      {								      \
+ 		const char *escseq;					      \
+ 									      \
++		if (outptr + 4 > outend)				      \
++		  {							      \
++		    result = __GCONV_FULL_OUTPUT;			      \
++		    break;						      \
++		  }							      \
++									      \
+ 		assert (used == CNS11643_2_set); /* XXX */		      \
+ 		escseq = "*H";						      \
+ 		*outptr++ = ESC;					      \
+@@ -587,6 +593,12 @@ DIAG_IGNORE_Os_NEEDS_COMMENT (5, "-Wmaybe-uninitialized");
+ 	      {								      \
+ 		const char *escseq;					      \
+ 									      \
++		if (outptr + 4 > outend)				      \
++		  {							      \
++		    result = __GCONV_FULL_OUTPUT;			      \
++		    break;						      \
++		  }							      \
++									      \
+ 		assert ((used >> 5) >= 3 && (used >> 5) <= 7);		      \
+ 		escseq = "+I+J+K+L+M" + ((used >> 5) - 3) * 2;		      \
+ 		*outptr++ = ESC;					      \
+diff --git a/iconvdata/tst-iconv-iso-2022-cn-ext.c b/iconvdata/tst-iconv-iso-2022-cn-ext.c
+new file mode 100644
+index 0000000000..96a8765fd5
+--- /dev/null
++++ b/iconvdata/tst-iconv-iso-2022-cn-ext.c
+@@ -0,0 +1,128 @@
++/* Verify ISO-2022-CN-EXT does not write out of the bounds.
++   Copyright (C) 2024 Free Software Foundation, Inc.
++   This file is part of the GNU C Library.
++
++   The GNU C Library is free software; you can redistribute it and/or
++   modify it under the terms of the GNU Lesser General Public
++   License as published by the Free Software Foundation; either
++   version 2.1 of the License, or (at your option) any later version.
++
++   The GNU C Library is distributed in the hope that it will be useful,
++   but WITHOUT ANY WARRANTY; without even the implied warranty of
++   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
++   Lesser General Public License for more details.
++
++   You should have received a copy of the GNU Lesser General Public
++   License along with the GNU C Library; if not, see
++   <https://www.gnu.org/licenses/>.  */
++
++#include <stdio.h>
++#include <string.h>
++
++#include <errno.h>
++#include <iconv.h>
++#include <sys/mman.h>
++
++#include <support/xunistd.h>
++#include <support/check.h>
++#include <support/support.h>
++
++/* The test sets up a two memory page buffer with the second page marked
++   PROT_NONE to trigger a fault if the conversion writes beyond the exact
++   expected amount.  Then we carry out various conversions and precisely
++   place the start of the output buffer in order to trigger a SIGSEGV if the
++   process writes anywhere between 1 and page sized bytes more (only one
++   PROT_NONE page is setup as a canary) than expected.  These tests exercise
++   all three of the cases in ISO-2022-CN-EXT where the converter must switch
++   character sets and may run out of buffer space while doing the
++   operation.  */
++
++static int
++do_test (void)
++{
++  iconv_t cd = iconv_open ("ISO-2022-CN-EXT", "UTF-8");
++  TEST_VERIFY_EXIT (cd != (iconv_t) -1);
++
++  char *ntf;
++  size_t ntfsize;
++  char *outbufbase;
++  {
++    int pgz = getpagesize ();
++    TEST_VERIFY_EXIT (pgz > 0);
++    ntfsize = 2 * pgz;
++
++    ntf = xmmap (NULL, ntfsize, PROT_READ | PROT_WRITE, MAP_PRIVATE
++		 | MAP_ANONYMOUS, -1);
++    xmprotect (ntf + pgz, pgz, PROT_NONE);
++
++    outbufbase = ntf + pgz;
++  }
++
++  /* Check if SOdesignation escape sequence does not trigger an OOB write.  */
++  {
++    char inbuf[] = "\xe4\xba\xa4\xe6\x8d\xa2";
++
++    for (int i = 0; i < 9; i++)
++      {
++	char *inp = inbuf;
++	size_t inleft = sizeof (inbuf) - 1;
++
++	char *outp = outbufbase - i;
++	size_t outleft = i;
++
++	TEST_VERIFY_EXIT (iconv (cd, &inp, &inleft, &outp, &outleft)
++			  == (size_t) -1);
++	TEST_COMPARE (errno, E2BIG);
++
++	TEST_VERIFY_EXIT (iconv (cd, NULL, NULL, NULL, NULL) == 0);
++      }
++  }
++
++  /* Same as before for SS2designation.  */
++  {
++    char inbuf[] = "㴽 \xe3\xb4\xbd";
++
++    for (int i = 0; i < 14; i++)
++      {
++	char *inp = inbuf;
++	size_t inleft = sizeof (inbuf) - 1;
++
++	char *outp = outbufbase - i;
++	size_t outleft = i;
++
++	TEST_VERIFY_EXIT (iconv (cd, &inp, &inleft, &outp, &outleft)
++			  == (size_t) -1);
++	TEST_COMPARE (errno, E2BIG);
++
++	TEST_VERIFY_EXIT (iconv (cd, NULL, NULL, NULL, NULL) == 0);
++      }
++  }
++
++  /* Same as before for SS3designation.  */
++  {
++    char inbuf[] = "劄 \xe5\x8a\x84";
++
++    for (int i = 0; i < 14; i++)
++      {
++	char *inp = inbuf;
++	size_t inleft = sizeof (inbuf) - 1;
++
++	char *outp = outbufbase - i;
++	size_t outleft = i;
++
++	TEST_VERIFY_EXIT (iconv (cd, &inp, &inleft, &outp, &outleft)
++			  == (size_t) -1);
++	TEST_COMPARE (errno, E2BIG);
++
++	TEST_VERIFY_EXIT (iconv (cd, NULL, NULL, NULL, NULL) == 0);
++      }
++  }
++
++  TEST_VERIFY_EXIT (iconv_close (cd) != -1);
++
++  xmunmap (ntf, ntfsize);
++
++  return 0;
++}
++
++#include <support/test-driver.c>
diff --git a/pkgs/development/libraries/glibc/common.nix b/pkgs/development/libraries/glibc/common.nix
index 4d6fb5a54b39..7418abaa1ba5 100644
--- a/pkgs/development/libraries/glibc/common.nix
+++ b/pkgs/development/libraries/glibc/common.nix
@@ -36,6 +36,7 @@
 , withLinuxHeaders ? false
 , profilingLibraries ? false
 , withGd ? false
+, enableCET ? false
 , extraBuildInputs ? []
 , extraNativeBuildInputs ? []
 , ...
@@ -43,7 +44,7 @@
 
 let
   version = "2.39";
-  patchSuffix = "-5";
+  patchSuffix = "-31";
   sha256 = "sha256-93vUfPgXDFc2Wue/hmlsEYrbOxINMlnGTFAtPcHi2SY=";
 in
 
@@ -59,11 +60,15 @@ stdenv.mkDerivation ({
     [
       /* No tarballs for stable upstream branch, only https://sourceware.org/git/glibc.git and using git would complicate bootstrapping.
           $ git fetch --all -p && git checkout origin/release/2.39/master && git describe
-          glibc-2.39-5-ge0910f1d32
-          $ git show --minimal --reverse glibc-2.39.. > 2.39-master.patch
+          glibc-2.39-31-g31da30f23c
+          $ git show --minimal --reverse glibc-2.39.. ':!ADVISORIES' > 2.39-master.patch
 
          To compare the archive contents zdiff can be used.
           $ diff -u 2.39-master.patch ../nixpkgs/pkgs/development/libraries/glibc/2.39-master.patch
+
+         Please note that each commit has changes to the file ADVISORIES excluded since
+         that conflicts with the directory advisories/ making cross-builds from
+         hosts with case-insensitive file-systems impossible.
        */
       ./2.39-master.patch
 
@@ -154,9 +159,9 @@ stdenv.mkDerivation ({
       # and on aarch64 with binutils 2.30 or later.
       # https://sourceware.org/glibc/wiki/PortStatus
       "--enable-static-pie"
-    ] ++ lib.optionals stdenv.hostPlatform.isx86_64 [
+    ] ++ lib.optionals (enableCET != false) [
       # Enable Intel Control-flow Enforcement Technology (CET) support
-      "--enable-cet"
+      "--enable-cet${if builtins.isString enableCET then "=${enableCET}"  else ""}"
     ] ++ lib.optionals withLinuxHeaders [
       "--enable-kernel=3.10.0" # RHEL 7 and derivatives, seems oldest still supported kernel
     ] ++ lib.optionals (stdenv.hostPlatform != stdenv.buildPlatform) [
@@ -208,7 +213,7 @@ stdenv.mkDerivation ({
   passthru = { inherit version; minorRelease = version; };
 }
 
-// (removeAttrs args [ "withLinuxHeaders" "withGd" "postInstall" "makeFlags" ]) //
+// (removeAttrs args [ "withLinuxHeaders" "withGd" "enableCET" "postInstall" "makeFlags" ]) //
 
 {
   src = fetchurl {
diff --git a/pkgs/development/libraries/glibc/default.nix b/pkgs/development/libraries/glibc/default.nix
index 3f7331461fea..e07c354aa4e0 100644
--- a/pkgs/development/libraries/glibc/default.nix
+++ b/pkgs/development/libraries/glibc/default.nix
@@ -2,6 +2,7 @@
 , withLinuxHeaders ? true
 , profilingLibraries ? false
 , withGd ? false
+, enableCET ? if stdenv.hostPlatform.isx86_64 then "permissive" else false
 , pkgsBuildBuild
 , libgcc
 }:
@@ -15,7 +16,7 @@ let
 in
 
 (callPackage ./common.nix { inherit stdenv; } {
-  inherit withLinuxHeaders withGd profilingLibraries;
+  inherit withLinuxHeaders withGd profilingLibraries enableCET;
   pname = "glibc" + lib.optionalString withGd "-gd" + lib.optionalString (stdenv.cc.isGNU && libgcc==null) "-nolibgcc";
 }).overrideAttrs(previousAttrs: {
 
diff --git a/pkgs/development/libraries/glibmm/2.68.nix b/pkgs/development/libraries/glibmm/2.68.nix
index c3c444f407e0..acace1c6a5bf 100644
--- a/pkgs/development/libraries/glibmm/2.68.nix
+++ b/pkgs/development/libraries/glibmm/2.68.nix
@@ -13,13 +13,13 @@
 
 stdenv.mkDerivation rec {
   pname = "glibmm";
-  version = "2.78.1";
+  version = "2.80.0";
 
   outputs = [ "out" "dev" ];
 
   src = fetchurl {
     url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
-    sha256 = "sha256-9HPyl10mw0CeES7RHtNkBvs4Q/qXXfV1wi1MuEMIX2E=";
+    hash = "sha256-U5sKKeFalmdsTwWUVBJQVmxcpE2l1Nh6NzL6LQeQnko=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/libraries/glibmm/default.nix b/pkgs/development/libraries/glibmm/default.nix
index 8800070ab61f..f9f8a4568a57 100644
--- a/pkgs/development/libraries/glibmm/default.nix
+++ b/pkgs/development/libraries/glibmm/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   pname = "glibmm";
-  version = "2.66.6";
+  version = "2.66.7";
 
   src = fetchurl {
     url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
-    sha256 = "sha256-U1h0JZgYHlNR17+NoHK/k+bdXxeNJ2QNTkYryPFOFS8=";
+    hash = "sha256-/gLB5fWCWUDYK1a27DGhLAbAXBWDz+Yvk00HY+HlQrM=";
   };
 
   outputs = [ "out" "dev" ];
diff --git a/pkgs/development/libraries/gmime/3.nix b/pkgs/development/libraries/gmime/3.nix
index 8f20d756c1f9..b7cca3b156b9 100644
--- a/pkgs/development/libraries/gmime/3.nix
+++ b/pkgs/development/libraries/gmime/3.nix
@@ -1,18 +1,38 @@
-{ lib, stdenv, fetchurl, pkg-config, glib, zlib, gnupg, gpgme, libidn2, libunistring, gobject-introspection
-, vala }:
+{
+  lib,
+  stdenv,
+  fetchurl,
+  pkg-config,
+  glib,
+  zlib,
+  gnupg,
+  gpgme,
+  libidn2,
+  libunistring,
+  gobject-introspection,
+  vala,
+}:
 
 stdenv.mkDerivation rec {
   version = "3.2.14";
   pname = "gmime";
 
-  src = fetchurl { # https://github.com/jstedfast/gmime/releases
+  src = fetchurl {
+    # https://github.com/jstedfast/gmime/releases
     url = "https://github.com/jstedfast/gmime/releases/download/${version}/gmime-${version}.tar.xz";
     sha256 = "sha256-pes91nX3LlRci8HNEhB+Sq0ursGQXre0ATzbH75eIxc=";
   };
 
-  outputs = [ "out" "dev" ];
+  outputs = [
+    "out"
+    "dev"
+  ];
 
-  nativeBuildInputs = [ pkg-config gobject-introspection vala ];
+  nativeBuildInputs = [
+    pkg-config
+    gobject-introspection
+    vala
+  ];
   buildInputs = [
     zlib
     gpgme
@@ -21,22 +41,34 @@ stdenv.mkDerivation rec {
     vala # for share/vala/Makefile.vapigen
   ];
   propagatedBuildInputs = [ glib ];
-  configureFlags = [
-    "--enable-introspection=yes"
-    "--enable-vala=yes"
-  ] ++ lib.optionals (stdenv.buildPlatform != stdenv.hostPlatform) [ "ac_cv_have_iconv_detect_h=yes" ];
-
-  postPatch = ''
-    substituteInPlace tests/testsuite.c \
-      --replace /bin/rm rm
-  '';
-
-  preConfigure = ''
-    PKG_CONFIG_VAPIGEN_VAPIGEN="$(type -p vapigen)"
-    export PKG_CONFIG_VAPIGEN_VAPIGEN
-  '' + lib.optionalString (stdenv.buildPlatform != stdenv.hostPlatform) ''
-    cp ${if stdenv.hostPlatform.isMusl then ./musl-iconv-detect.h else ./iconv-detect.h} ./iconv-detect.h
-  '';
+  configureFlags =
+    [
+      "--enable-introspection=yes"
+      "--enable-vala=yes"
+    ]
+    ++ lib.optionals (stdenv.buildPlatform != stdenv.hostPlatform) [ "ac_cv_have_iconv_detect_h=yes" ];
+
+  postPatch =
+    ''
+      substituteInPlace tests/testsuite.c \
+        --replace /bin/rm rm
+    ''
+    + lib.optionalString stdenv.isDarwin ''
+      # This specific test fails on darwin for some unknown reason
+      substituteInPlace tests/test-filters.c \
+        --replace-fail 'test_charset_conversion (datadir, "japanese", "utf-8", "iso-2022-jp");' ""
+    '';
+
+  preConfigure =
+    ''
+      PKG_CONFIG_VAPIGEN_VAPIGEN="$(type -p vapigen)"
+      export PKG_CONFIG_VAPIGEN_VAPIGEN
+    ''
+    + lib.optionalString (stdenv.buildPlatform != stdenv.hostPlatform) ''
+      cp ${
+        if stdenv.hostPlatform.isMusl then ./musl-iconv-detect.h else ./iconv-detect.h
+      } ./iconv-detect.h
+    '';
 
   nativeCheckInputs = [ gnupg ];
 
@@ -44,11 +76,11 @@ stdenv.mkDerivation rec {
 
   enableParallelBuilding = true;
 
-  meta = with lib; {
+  meta = {
     homepage = "https://github.com/jstedfast/gmime/";
     description = "A C/C++ library for creating, editing and parsing MIME messages and structures";
-    license = licenses.lgpl21Plus;
-    maintainers = with maintainers; [ ];
-    platforms = platforms.unix;
+    license = lib.licenses.lgpl21Plus;
+    maintainers = with lib.maintainers; [ ];
+    platforms = lib.platforms.unix;
   };
 }
diff --git a/pkgs/development/libraries/gnome-online-accounts/default.nix b/pkgs/development/libraries/gnome-online-accounts/default.nix
index c06e45356ac8..740f7d94f1d9 100644
--- a/pkgs/development/libraries/gnome-online-accounts/default.nix
+++ b/pkgs/development/libraries/gnome-online-accounts/default.nix
@@ -7,38 +7,37 @@
 , meson
 , ninja
 , libxslt
-, gtk3
+, gtk4
 , enableBackend ? stdenv.isLinux
-, webkitgtk_4_1
 , json-glib
+, libadwaita
 , librest_1_0
 , libxml2
 , libsecret
 , gtk-doc
 , gobject-introspection
 , gettext
-, icu
 , glib-networking
 , libsoup_3
 , docbook-xsl-nons
 , docbook_xml_dtd_412
 , gnome
-, gcr
+, gcr_4
 , libkrb5
 , gvfs
 , dbus
-, wrapGAppsHook
+, wrapGAppsHook4
 }:
 
 stdenv.mkDerivation (finalAttrs: {
   pname = "gnome-online-accounts";
-  version = "3.48.1";
+  version = "3.50.1";
 
   outputs = [ "out" "dev" ] ++ lib.optionals enableBackend [ "man" "devdoc" ];
 
   src = fetchurl {
     url = "mirror://gnome/sources/gnome-online-accounts/${lib.versions.majorMinor finalAttrs.version}/gnome-online-accounts-${finalAttrs.version}.tar.xz";
-    hash = "sha256-PqDHEIS/WVzOXKo3zv8uhT0OyWRLsB/UZDMArblRf4o=";
+    hash = "sha256-Qu5D/R4pQrn/YQYlLM3INGAoFVCL96OlLAvf/6Vur0A=";
   };
 
   mesonFlags = [
@@ -46,7 +45,7 @@ stdenv.mkDerivation (finalAttrs: {
     "-Dgoabackend=${lib.boolToString enableBackend}"
     "-Dgtk_doc=${lib.boolToString enableBackend}"
     "-Dman=${lib.boolToString enableBackend}"
-    "-Dmedia_server=true"
+    "-Dwebdav=true"
   ];
 
   nativeBuildInputs = [
@@ -61,28 +60,24 @@ stdenv.mkDerivation (finalAttrs: {
     ninja
     pkg-config
     vala
-    wrapGAppsHook
+    wrapGAppsHook4
   ];
 
   buildInputs = [
-    gcr
+    gcr_4
     glib
     glib-networking
-    gtk3
+    gtk4
+    libadwaita
     gvfs # OwnCloud, Google Drive
-    icu
     json-glib
     libkrb5
     librest_1_0
     libxml2
     libsecret
     libsoup_3
-  ] ++ lib.optionals enableBackend [
-    webkitgtk_4_1
   ];
 
-  env.NIX_CFLAGS_COMPILE = "-I${glib.dev}/include/gio-unix-2.0";
-
   separateDebugInfo = true;
 
   passthru = {
diff --git a/pkgs/development/libraries/gnu-efi/default.nix b/pkgs/development/libraries/gnu-efi/default.nix
index 3f832ad5d577..171eb5742713 100644
--- a/pkgs/development/libraries/gnu-efi/default.nix
+++ b/pkgs/development/libraries/gnu-efi/default.nix
@@ -3,11 +3,11 @@
 
 stdenv.mkDerivation rec {
   pname = "gnu-efi";
-  version = "3.0.18";
+  version = "3.0.15";
 
   src = fetchurl {
     url = "mirror://sourceforge/gnu-efi/${pname}-${version}.tar.bz2";
-    hash = "sha256-fyEslu5mVH7u+1MSZ7ZB5Uc9fYUp8L2Mze/TPPdBP1w=";
+    hash = "sha256-kxole5xcG6Zf9Rnxg3PEOKJoJfLbeGaxY+ltGxaPIOo=";
   };
 
   buildInputs = [ pciutils ];
diff --git a/pkgs/development/libraries/gnutls/default.nix b/pkgs/development/libraries/gnutls/default.nix
index 728d4a82b23c..13bdb921ef71 100644
--- a/pkgs/development/libraries/gnutls/default.nix
+++ b/pkgs/development/libraries/gnutls/default.nix
@@ -44,6 +44,8 @@
 , rsyslog
 , openconnect
 , samba
+
+, gitUpdater
 }:
 
 let
@@ -58,11 +60,11 @@ in
 
 stdenv.mkDerivation rec {
   pname = "gnutls";
-  version = "3.8.4";
+  version = "3.8.5";
 
   src = fetchurl {
     url = "mirror://gnupg/gnutls/v${lib.versions.majorMinor version}/gnutls-${version}.tar.xz";
-    hash = "sha256-K+pOFUeU8/ABgPoqXFH+iwBax6Mc1YvUTN+n8268Ops=";
+    hash = "sha256-ZiaaLP4OHC2r7Ie9u9irZW85bt2aQN0AaXjgA8+lK/w=";
   };
 
   outputs = [ "bin" "dev" "out" ]
@@ -97,12 +99,6 @@ stdenv.mkDerivation rec {
     sed 's:/usr/lib64/pkcs11/ /usr/lib/pkcs11/ /usr/lib/x86_64-linux-gnu/pkcs11/:`pkg-config --variable=p11_module_path p11-kit-1`:' -i tests/p11-kit-trust.sh
   '' + lib.optionalString stdenv.hostPlatform.isMusl '' # See https://gitlab.com/gnutls/gnutls/-/issues/945
     sed '2iecho "certtool tests skipped in musl build"\nexit 0' -i tests/cert-tests/certtool.sh
-  '' + lib.optionalString stdenv.hostPlatform.isStatic ''
-    # Adapted from https://gitlab.com/gnutls/gnutls/-/commit/d214cd4570fb1559a20e941bb7ceac7df52e96d3
-    # Can be removed with 3.8.5+.
-    sed -i lib/nettle/backport/rsa-sign-tr.c -e \
-      '/^#include <nettle\/rsa\.h>/i\
-    #define nettle_rsa_compute_root_tr _gnutls_nettle_backport_rsa_compute_root_tr'
   '';
 
   preConfigure = "patchShebangs .";
@@ -153,6 +149,11 @@ stdenv.mkDerivation rec {
       --replace "-lunistring" ""
   '';
 
+
+  passthru.updateScript = gitUpdater {
+    url = "https://gitlab.com/gnutls/gnutls.git";
+  };
+
   passthru.tests = {
     inherit ngtcp2-gnutls curlWithGnuTls ffmpeg emacs qemu knot-resolver samba openconnect;
     inherit (ocamlPackages) ocamlnet;
diff --git a/pkgs/development/libraries/gobject-introspection/default.nix b/pkgs/development/libraries/gobject-introspection/default.nix
index 3817d8bb9ced..23f1e2262d12 100644
--- a/pkgs/development/libraries/gobject-introspection/default.nix
+++ b/pkgs/development/libraries/gobject-introspection/default.nix
@@ -22,6 +22,7 @@
 , nixStoreDir ? builtins.storeDir
 , x11Support ? true
 , testers
+, propagateFullGlib ? true
 }:
 
 # now that gobject-introspection creates large .gir files (eg gtk3 case)
@@ -33,10 +34,13 @@ let
     pp.mako
     pp.markdown
   ];
+
+  # https://discourse.gnome.org/t/dealing-with-glib-and-gobject-introspection-circular-dependency/18701
+  glib' = glib.override { withIntrospection = false; };
 in
 stdenv.mkDerivation (finalAttrs: {
   pname = "gobject-introspection";
-  version = "1.78.1";
+  version = "1.80.1";
 
   # outputs TODO: share/gobject-introspection-1.0/tests is needed during build
   # by pygobject3 (and maybe others), but it's only searched in $out
@@ -45,7 +49,7 @@ stdenv.mkDerivation (finalAttrs: {
 
   src = fetchurl {
     url = "mirror://gnome/sources/gobject-introspection/${lib.versions.majorMinor finalAttrs.version}/gobject-introspection-${finalAttrs.version}.tar.xz";
-    sha256 = "vXur2Zr3JY52gZ5Fukprw5lgj+di2D/ePKwDPFCEG7Q=";
+    hash = "sha256-od98Qk4VvaGrY5wA6QUbmt9c6hqeUS+KYDtTzRmbxtg=";
   };
 
   patches = [
@@ -92,7 +96,7 @@ stdenv.mkDerivation (finalAttrs: {
 
   propagatedBuildInputs = [
     libffi
-    glib
+    (if propagateFullGlib then glib else glib')
   ];
 
   mesonFlags = [
diff --git a/pkgs/development/libraries/gsettings-desktop-schemas/default.nix b/pkgs/development/libraries/gsettings-desktop-schemas/default.nix
index f898f3d3bcd8..c33011f4b01d 100644
--- a/pkgs/development/libraries/gsettings-desktop-schemas/default.nix
+++ b/pkgs/development/libraries/gsettings-desktop-schemas/default.nix
@@ -13,11 +13,11 @@
 
 stdenv.mkDerivation rec {
   pname = "gsettings-desktop-schemas";
-  version = "45.0";
+  version = "46.0";
 
   src = fetchurl {
     url = "mirror://gnome/sources/${pname}/${lib.versions.major version}/${pname}-${version}.tar.xz";
-    sha256 = "NlyNBNr3mzjIs9yWJjSaAk+eS+/dMf7edLQvep++CuI=";
+    hash = "sha256-STpGoRYbY4jVeqcvYyp5zpbELV/70dCwD0luxYdvhXU=";
   };
 
   strictDeps = true;
diff --git a/pkgs/development/libraries/gstreamer/bad/default.nix b/pkgs/development/libraries/gstreamer/bad/default.nix
index bec1cb762ce4..b94769af76f4 100644
--- a/pkgs/development/libraries/gstreamer/bad/default.nix
+++ b/pkgs/development/libraries/gstreamer/bad/default.nix
@@ -18,13 +18,14 @@
 , opencv4
 , faad2
 , ldacbt
+, liblc3
 , libass
 , libkate
 , lrdf
 , ladspaH
 , lcms2
 , libnice
-, webrtc-audio-processing
+, webrtc-audio-processing_1
 , lilv
 , lv2
 , serd
@@ -44,6 +45,7 @@
 , flite
 , gsm
 , json-glib
+, libajantv2
 , libaom
 , libdc1394
 , libde265
@@ -68,6 +70,7 @@
 , zbar
 , wayland-protocols
 , wildmidi
+, svt-av1
 , fluidsynth
 , libva
 , libvdpau
@@ -109,13 +112,13 @@
 
 stdenv.mkDerivation rec {
   pname = "gst-plugins-bad";
-  version = "1.22.9";
+  version = "1.24.2";
 
   outputs = [ "out" "dev" ];
 
   src = fetchurl {
     url = "https://gstreamer.freedesktop.org/src/${pname}/${pname}-${version}.tar.xz";
-    hash = "sha256-G8ZdD9X1OjY2Vk79P88xjD7c3sOcQQmlA8H8ggOECh0=";
+    hash = "sha256-RI4yeHvIK1hsbLL4HJqO9AT+pPd/JVZv4G5Zej9ZE2s=";
   };
 
   patches = [
@@ -147,10 +150,10 @@ stdenv.mkDerivation rec {
     json-glib
     lcms2
     ldacbt
+    liblc3
     libass
     libkate
-    webrtc-audio-processing # required by webrtcdsp
-    #webrtc-audio-processing_1 # required by isac
+    webrtc-audio-processing_1
     libbs2b
     libmodplug
     openjpeg
@@ -192,6 +195,7 @@ stdenv.mkDerivation rec {
     zxing-cpp
     usrsctp
     wildmidi
+    svt-av1
   ] ++ lib.optionals opencvSupport [
     opencv4
   ] ++ lib.optionals enableZbar [
@@ -217,6 +221,7 @@ stdenv.mkDerivation rec {
 
     chromaprint
     flite
+    libajantv2
     libdrm
     libgudev
     sbc
@@ -260,6 +265,7 @@ stdenv.mkDerivation rec {
     "-Damfcodec=disabled" # Windows-only
     "-Davtp=disabled"
     "-Ddirectshow=disabled" # Windows-only
+    "-Dqt6d3d11=disabled" # Windows-only
     "-Ddts=disabled" # required `libdca` library not packaged in nixpkgs as of writing, and marked as "BIG FAT WARNING: libdca is still in early development"
     "-Dzbar=${if enableZbar then "enabled" else "disabled"}"
     "-Dfaac=${if faacSupport then "enabled" else "disabled"}"
@@ -287,11 +293,11 @@ stdenv.mkDerivation rec {
     "-Dwasapi=disabled" # not packaged in nixpkgs as of writing / no Windows support
     "-Dwasapi2=disabled" # not packaged in nixpkgs as of writing / no Windows support
     "-Dwpe=disabled" # required `wpe-webkit` library not packaged in nixpkgs as of writing
-    "-Disac=disabled" # depends on `webrtc-audio-coding-1` not compatible with 0.3
     "-Dgs=disabled" # depends on `google-cloud-cpp`
     "-Donnx=disabled" # depends on `libonnxruntime` not packaged in nixpkgs as of writing
     "-Dopenaptx=enabled" # since gstreamer-1.20.1 `libfreeaptx` is supported for circumventing the dubious license conflict with `libopenaptx`
     "-Dopencv=${if opencvSupport then "enabled" else "disabled"}" # Reduces rebuild size when `config.cudaSupport = true`
+    "-Daja=disabled" # should pass libajantv2 via aja-sdk-dir instead
     "-Dmicrodns=${if microdnsSupport then "enabled" else "disabled"}"
     "-Dbluez=${if bluezSupport then "enabled" else "disabled"}"
     (lib.mesonEnable "doc" enableDocumentation)
@@ -302,8 +308,8 @@ stdenv.mkDerivation rec {
     "-Dva=disabled" # see comment on `libva` in `buildInputs`
   ] ++ lib.optionals (!stdenv.isLinux || !guiSupport) [
     "-Ddirectfb=disabled"
-  ]
-  ++ lib.optionals stdenv.isDarwin [
+  ] ++ lib.optionals stdenv.isDarwin [
+    "-Daja=disabled"
     "-Dchromaprint=disabled"
     "-Dflite=disabled"
     "-Dkms=disabled" # renders to libdrm output
@@ -312,6 +318,7 @@ stdenv.mkDerivation rec {
     "-Dspandsp=disabled"
     "-Ddvb=disabled"
     "-Dfbdev=disabled"
+    "-Duvcgadget=disabled" # requires gudev
     "-Duvch264=disabled" # requires gudev
     "-Dv4l2codecs=disabled" # requires gudev
     "-Dladspa=disabled" # requires lrdf
@@ -319,7 +326,7 @@ stdenv.mkDerivation rec {
     "-Dqsv=disabled" # Linux (and Windows) x86 only
   ] ++ lib.optionals (!gst-plugins-base.glEnabled) [
     "-Dgl=disabled"
-  ] ++ lib.optionals (!gst-plugins-base.waylandEnabled) [
+  ] ++ lib.optionals (!gst-plugins-base.waylandEnabled || !guiSupport) [
     "-Dgtk3=disabled" # Wayland-based GTK sink
     "-Dwayland=disabled"
   ] ++ lib.optionals (!gst-plugins-base.glEnabled) [
diff --git a/pkgs/development/libraries/gstreamer/bad/fix-paths.patch b/pkgs/development/libraries/gstreamer/bad/fix-paths.patch
index ea832cc9f60b..207ed16aa0b0 100644
--- a/pkgs/development/libraries/gstreamer/bad/fix-paths.patch
+++ b/pkgs/development/libraries/gstreamer/bad/fix-paths.patch
@@ -1,24 +1,24 @@
-diff --git a/gst-libs/gst/cuda/gstcudaloader.c b/gst-libs/gst/cuda/gstcudaloader.c
-index fffcbefd2b..6f738d3af3 100644
---- a/gst-libs/gst/cuda/gstcudaloader.c
-+++ b/gst-libs/gst/cuda/gstcudaloader.c
-@@ -165,6 +165,11 @@ gst_cuda_load_library (void)
-     return TRUE;
+diff --git a/gst-libs/gst/cuda/gstcudaloader.cpp b/gst-libs/gst/cuda/gstcudaloader.cpp
+index 11718b8..d4144c1 100644
+--- a/gst-libs/gst/cuda/gstcudaloader.cpp
++++ b/gst-libs/gst/cuda/gstcudaloader.cpp
+@@ -229,6 +229,11 @@ gst_cuda_load_library_once_func (void)
+       "CUDA plugin loader");
  
    module = g_module_open (filename, G_MODULE_BIND_LAZY);
 +
-+  if (module == NULL) {
++  if (module == nullptr) {
 +    module = g_module_open ("@driverLink@/lib/" CUDA_LIBNAME, G_MODULE_BIND_LAZY);
 +  }
 +
-   if (module == NULL) {
+   if (module == nullptr) {
      GST_WARNING ("Could not open library %s, %s", filename, g_module_error ());
-     return FALSE;
+     return;
 diff --git a/sys/nvcodec/gstcuvidloader.c b/sys/nvcodec/gstcuvidloader.c
-index e957e062e0..004ec2dcd5 100644
+index c51a428..ea0e1b5 100644
 --- a/sys/nvcodec/gstcuvidloader.c
 +++ b/sys/nvcodec/gstcuvidloader.c
-@@ -85,6 +85,11 @@ gst_cuvid_load_library (guint api_major_ver, guint api_minor_ver)
+@@ -87,6 +87,11 @@ gst_cuvid_load_library (guint api_major_ver, guint api_minor_ver)
      return TRUE;
  
    module = g_module_open (filename, G_MODULE_BIND_LAZY);
@@ -31,10 +31,10 @@ index e957e062e0..004ec2dcd5 100644
      GST_WARNING ("Could not open library %s, %s", filename, g_module_error ());
      return FALSE;
 diff --git a/sys/nvcodec/gstnvenc.c b/sys/nvcodec/gstnvenc.c
-index 106857a954..3bab9989f0 100644
+index c65c85a..57232bb 100644
 --- a/sys/nvcodec/gstnvenc.c
 +++ b/sys/nvcodec/gstnvenc.c
-@@ -907,6 +907,11 @@ gst_nvenc_load_library (guint * api_major_ver, guint * api_minor_ver)
+@@ -919,6 +919,11 @@ gst_nvenc_load_library (guint * api_major_ver, guint * api_minor_ver)
    };
  
    module = g_module_open (NVENC_LIBRARY_NAME, G_MODULE_BIND_LAZY);
diff --git a/pkgs/development/libraries/gstreamer/base/default.nix b/pkgs/development/libraries/gstreamer/base/default.nix
index 066ffbc1308e..72dbef5c6dee 100644
--- a/pkgs/development/libraries/gstreamer/base/default.nix
+++ b/pkgs/development/libraries/gstreamer/base/default.nix
@@ -24,6 +24,7 @@
 , libXext
 , libXi
 , libXv
+, libdrm
 , enableWayland ? stdenv.isLinux
 , wayland
 , wayland-protocols
@@ -45,7 +46,7 @@
 
 stdenv.mkDerivation (finalAttrs: {
   pname = "gst-plugins-base";
-  version = "1.22.9";
+  version = "1.24.2";
 
   outputs = [ "out" "dev" ];
 
@@ -53,7 +54,7 @@ stdenv.mkDerivation (finalAttrs: {
     inherit (finalAttrs) pname version;
   in fetchurl {
     url = "https://gstreamer.freedesktop.org/src/${pname}/${pname}-${version}.tar.xz";
-    hash = "sha256-+sPg3S2Ok3A4izS/jCG4nV9jvDz8Es1/3I/GwcugMzQ=";
+    hash = "sha256-KC8cyAZcm2Lragog+56DKPjlKW3yRYtyNtqnKcQa52k=";
   };
 
   strictDeps = true;
@@ -88,6 +89,7 @@ stdenv.mkDerivation (finalAttrs: {
     tremor
     pango
   ] ++ lib.optionals (!stdenv.isDarwin) [
+    libdrm
     libGL
     libvisual
   ] ++ lib.optionals stdenv.isDarwin [
@@ -106,6 +108,8 @@ stdenv.mkDerivation (finalAttrs: {
 
   propagatedBuildInputs = [
     gstreamer
+  ] ++ lib.optionals (!stdenv.isDarwin) [
+    libdrm
   ];
 
   mesonFlags = [
@@ -122,6 +126,7 @@ stdenv.mkDerivation (finalAttrs: {
   ++ lib.optional (!enableAlsa) "-Dalsa=disabled"
   ++ lib.optional (!enableCdparanoia) "-Dcdparanoia=disabled"
   ++ lib.optionals stdenv.isDarwin [
+    "-Ddrm=disabled"
     "-Dlibvisual=disabled"
   ];
 
diff --git a/pkgs/development/libraries/gstreamer/core/default.nix b/pkgs/development/libraries/gstreamer/core/default.nix
index be56527ec47b..eb9231155b80 100644
--- a/pkgs/development/libraries/gstreamer/core/default.nix
+++ b/pkgs/development/libraries/gstreamer/core/default.nix
@@ -17,6 +17,7 @@
 , Cocoa
 , CoreServices
 , gobject-introspection
+, rustc
 , testers
 # Checks meson.is_cross_build(), so even canExecute isn't enough.
 , enableDocumentation ? stdenv.hostPlatform == stdenv.buildPlatform, hotdoc
@@ -24,7 +25,7 @@
 
 stdenv.mkDerivation (finalAttrs: {
   pname = "gstreamer";
-  version = "1.22.9";
+  version = "1.24.2";
 
   outputs = [
     "bin"
@@ -36,7 +37,7 @@ stdenv.mkDerivation (finalAttrs: {
     inherit (finalAttrs) pname version;
   in fetchurl {
     url = "https://gstreamer.freedesktop.org/src/${pname}/${pname}-${version}.tar.xz";
-    hash = "sha256-HnEk00fozcgPCOwdNwwgG+UTACrxECuyDoPFJ5y0jr0=";
+    hash = "sha256-nK/dI70YDxaBxWzTpoeahJfM8k2m9CKmtvNW+gdKhIE=";
   };
 
   depsBuildBuild = [
@@ -56,6 +57,7 @@ stdenv.mkDerivation (finalAttrs: {
     glib
     bash-completion
     gobject-introspection
+    rustc
   ] ++ lib.optionals stdenv.isLinux [
     libcap # for setcap binary
   ] ++ lib.optionals enableDocumentation [
@@ -94,7 +96,8 @@ stdenv.mkDerivation (finalAttrs: {
       gst/parse/gen_grammar.py.in \
       gst/parse/gen_lex.py.in \
       libs/gst/helpers/ptp_helper_post_install.sh \
-      scripts/extract-release-date-from-doap-file.py
+      scripts/extract-release-date-from-doap-file.py \
+      docs/gst-plugins-doc-cache-generator.py
   '';
 
   postInstall = ''
diff --git a/pkgs/development/libraries/gstreamer/default.nix b/pkgs/development/libraries/gstreamer/default.nix
index 1bfdf5b24de3..4020193e0ae1 100644
--- a/pkgs/development/libraries/gstreamer/default.nix
+++ b/pkgs/development/libraries/gstreamer/default.nix
@@ -12,6 +12,7 @@
 , MediaToolbox
 , OpenGL
 , Security
+, SystemConfiguration
 , VideoToolbox
 , ipu6ep-camera-hal
 , ipu6epmtl-camera-hal
@@ -32,7 +33,7 @@
 
   gst-plugins-viperfx = callPackage ./viperfx { };
 
-  gst-plugins-rs = callPackage ./rs { inherit Security; };
+  gst-plugins-rs = callPackage ./rs { inherit Security SystemConfiguration; };
 
   gst-rtsp-server = callPackage ./rtsp-server { };
 
diff --git a/pkgs/development/libraries/gstreamer/devtools/default.nix b/pkgs/development/libraries/gstreamer/devtools/default.nix
index 343f161cc3d4..5b1d4c8618ce 100644
--- a/pkgs/development/libraries/gstreamer/devtools/default.nix
+++ b/pkgs/development/libraries/gstreamer/devtools/default.nix
@@ -17,11 +17,11 @@
 
 stdenv.mkDerivation rec {
   pname = "gst-devtools";
-  version = "1.22.9";
+  version = "1.24.2";
 
   src = fetchurl {
     url = "https://gstreamer.freedesktop.org/src/${pname}/${pname}-${version}.tar.xz";
-    hash = "sha256-AuKUALROnMYDqmRE3uVya1ftq+9kVebQkh/+1vE4QO4=";
+    hash = "sha256-/dfDDBqhuweADdmKUeVSEQZWGYNeSIn1yS/oI7hs2PQ=";
   };
 
   outputs = [
diff --git a/pkgs/development/libraries/gstreamer/ges/default.nix b/pkgs/development/libraries/gstreamer/ges/default.nix
index adb737bb1be7..0838dec0fdb0 100644
--- a/pkgs/development/libraries/gstreamer/ges/default.nix
+++ b/pkgs/development/libraries/gstreamer/ges/default.nix
@@ -18,7 +18,7 @@
 
 stdenv.mkDerivation rec {
   pname = "gst-editing-services";
-  version = "1.22.9";
+  version = "1.24.2";
 
   outputs = [
     "out"
@@ -27,7 +27,7 @@ stdenv.mkDerivation rec {
 
   src = fetchurl {
     url = "https://gstreamer.freedesktop.org/src/${pname}/${pname}-${version}.tar.xz";
-    hash = "sha256-NVOtOALczeDA7xRhiBrNm1W934rfdR3ky1G3+MtQRA0=";
+    hash = "sha256-cgF3jqXZN0QMU9dDndEqpaxoQGiK8fBJmFInUHS5kHM=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/libraries/gstreamer/good/default.nix b/pkgs/development/libraries/gstreamer/good/default.nix
index 19b786a86063..1cf3fef79f08 100644
--- a/pkgs/development/libraries/gstreamer/good/default.nix
+++ b/pkgs/development/libraries/gstreamer/good/default.nix
@@ -16,7 +16,9 @@
 , libavc1394
 , libiec61883
 , libvpx
+, libdrm
 , speex
+, opencore-amr
 , flac
 , taglib
 , libshout
@@ -56,13 +58,13 @@ assert raspiCameraSupport -> (stdenv.isLinux && stdenv.isAarch32);
 
 stdenv.mkDerivation rec {
   pname = "gst-plugins-good";
-  version = "1.22.9";
+  version = "1.24.2";
 
   outputs = [ "out" "dev" ];
 
   src = fetchurl {
     url = "https://gstreamer.freedesktop.org/src/${pname}/${pname}-${version}.tar.xz";
-    hash = "sha256-JpWfz+v/9jfU6gjvQDFrrzG2G7dymCCwaE6ADDoUeLY=";
+    hash = "sha256-bjR8ctS4sohtiQ/+n2dnqe2wLyAViOjDpXLc0I2YUr0=";
   };
 
   patches = [
@@ -106,6 +108,7 @@ stdenv.mkDerivation rec {
     libdv
     libvpx
     speex
+    opencore-amr
     flac
     taglib
     cairo
@@ -128,6 +131,8 @@ stdenv.mkDerivation rec {
     xorg.libXext
     xorg.libXfixes
     xorg.libXdamage
+    xorg.libXtst
+    xorg.libXi
   ] ++ lib.optionals gtkSupport [
     # for gtksink
     gtk3
@@ -143,6 +148,7 @@ stdenv.mkDerivation rec {
   ]) ++ lib.optionals stdenv.isDarwin [
     Cocoa
   ] ++ lib.optionals stdenv.isLinux [
+    libdrm
     libGL
     libv4l
     libpulseaudio
diff --git a/pkgs/development/libraries/gstreamer/icamerasrc/default.nix b/pkgs/development/libraries/gstreamer/icamerasrc/default.nix
index 4d6c5671f0e2..da74ec243cef 100644
--- a/pkgs/development/libraries/gstreamer/icamerasrc/default.nix
+++ b/pkgs/development/libraries/gstreamer/icamerasrc/default.nix
@@ -54,7 +54,7 @@ stdenv.mkDerivation {
     description = "GStreamer Plugin for MIPI camera support through the IPU6/IPU6EP/IPU6SE on Intel Tigerlake/Alderlake/Jasperlake platforms";
     homepage = "https://github.com/intel/icamerasrc/tree/icamerasrc_slim_api";
     license = licenses.lgpl21Plus;
-    maintainers = with maintainers; [ hexa ];
+    maintainers = with maintainers; [ ];
     platforms = [ "x86_64-linux" ];
   };
 }
diff --git a/pkgs/development/libraries/gstreamer/libav/default.nix b/pkgs/development/libraries/gstreamer/libav/default.nix
index ae54995a1c3e..35d0b461d9bc 100644
--- a/pkgs/development/libraries/gstreamer/libav/default.nix
+++ b/pkgs/development/libraries/gstreamer/libav/default.nix
@@ -18,11 +18,11 @@
 
 stdenv.mkDerivation rec {
   pname = "gst-libav";
-  version = "1.22.9";
+  version = "1.24.2";
 
   src = fetchurl {
     url = "https://gstreamer.freedesktop.org/src/${pname}/${pname}-${version}.tar.xz";
-    hash = "sha256-GS99J9IcHnxywzmiZHqbDCR/7cYupQKRFfjD4i67h9g=";
+    hash = "sha256-lig4ZI4Uzop4Miqxb4TH2E2Gpte+u2V0rAXeqEp8fJs=";
   };
 
   outputs = [ "out" "dev" ];
diff --git a/pkgs/development/libraries/gstreamer/rs/Cargo.lock b/pkgs/development/libraries/gstreamer/rs/Cargo.lock
index 6a3ecc43d739..52c6518bd51f 100644
--- a/pkgs/development/libraries/gstreamer/rs/Cargo.lock
+++ b/pkgs/development/libraries/gstreamer/rs/Cargo.lock
@@ -4,9 +4,9 @@ version = 3
 
 [[package]]
 name = "addr2line"
-version = "0.20.0"
+version = "0.21.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f4fa78e18c64fce05e902adecd7a5eed15a5e0a3439f7b0e169f0252214865e3"
+checksum = "8a30b2e23b9e17a9f90641c7ab1549cd9b44f296d3ccbf309d2863cfe398a0cb"
 dependencies = [
  "gimli",
 ]
@@ -61,15 +61,40 @@ dependencies = [
 ]
 
 [[package]]
+name = "ahash"
+version = "0.8.11"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "e89da841a80418a9b391ebaea17f5c112ffaaa96f621d2c285b5174da76b9011"
+dependencies = [
+ "cfg-if",
+ "getrandom",
+ "once_cell",
+ "version_check",
+ "zerocopy 0.7.32",
+]
+
+[[package]]
 name = "aho-corasick"
-version = "1.0.3"
+version = "1.1.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "86b8f9420f797f2d9e935edf629310eb938a0d839f984e25327f3c7eed22300c"
+checksum = "8e60d3430d3a69478ad0993f19238d2df97c507009a52b3c10addcd7f6bcb916"
 dependencies = [
  "memchr",
 ]
 
 [[package]]
+name = "aligned-vec"
+version = "0.5.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "4aa90d7ce82d4be67b64039a3d588d38dbcc6736577de4a847025ce5b0c468d1"
+
+[[package]]
+name = "allocator-api2"
+version = "0.2.16"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "0942ffc6dcaadf03badf6e6a2d0228460359d5e34b57ccdc720b7382dfbd5ec5"
+
+[[package]]
 name = "android-tzdata"
 version = "0.1.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -86,74 +111,73 @@ dependencies = [
 
 [[package]]
 name = "anstream"
-version = "0.3.2"
+version = "0.6.13"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0ca84f3628370c59db74ee214b3263d58f9aadd9b4fe7e711fd87dc452b7f163"
+checksum = "d96bd03f33fe50a863e394ee9718a706f988b9079b20c3784fb726e7678b62fb"
 dependencies = [
  "anstyle",
  "anstyle-parse",
  "anstyle-query",
  "anstyle-wincon",
  "colorchoice",
- "is-terminal",
  "utf8parse",
 ]
 
 [[package]]
 name = "anstyle"
-version = "1.0.1"
+version = "1.0.6"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3a30da5c5f2d5e72842e00bcb57657162cdabef0931f40e2deb9b4140440cecd"
+checksum = "8901269c6307e8d93993578286ac0edf7f195079ffff5ebdeea6a59ffb7e36bc"
 
 [[package]]
 name = "anstyle-parse"
-version = "0.2.1"
+version = "0.2.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "938874ff5980b03a87c5524b3ae5b59cf99b1d6bc836848df7bc5ada9643c333"
+checksum = "c75ac65da39e5fe5ab759307499ddad880d724eed2f6ce5b5e8a26f4f387928c"
 dependencies = [
  "utf8parse",
 ]
 
 [[package]]
 name = "anstyle-query"
-version = "1.0.0"
+version = "1.0.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5ca11d4be1bab0c8bc8734a9aa7bf4ee8316d462a08c6ac5052f888fef5b494b"
+checksum = "e28923312444cdd728e4738b3f9c9cac739500909bb3d3c94b43551b16517648"
 dependencies = [
- "windows-sys",
+ "windows-sys 0.52.0",
 ]
 
 [[package]]
 name = "anstyle-wincon"
-version = "1.0.2"
+version = "3.0.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c677ab05e09154296dd37acecd46420c17b9713e8366facafa8fc0885167cf4c"
+checksum = "1cd54b81ec8d6180e24654d0b371ad22fc3dd083b6ff8ba325b72e00c87660a7"
 dependencies = [
  "anstyle",
- "windows-sys",
+ "windows-sys 0.52.0",
 ]
 
 [[package]]
 name = "anyhow"
-version = "1.0.72"
+version = "1.0.81"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3b13c32d80ecc7ab747b80c3784bce54ee8a7a0cc4fbda9bf4cda2cf6fe90854"
+checksum = "0952808a6c2afd1aa8947271f3a60f1a6763c7b912d210184c5149b5cf147247"
 
 [[package]]
 name = "arbitrary"
-version = "0.4.7"
+version = "1.3.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "db55d72333851e17d572bec876e390cd3b11eb1ef53ae821dd9f3b653d2b4569"
+checksum = "7d5a26814d8dcb93b0e5a0ff3c6d80a8843bafb21b39e8e18a6f05471870e110"
 
 [[package]]
 name = "arg_enum_proc_macro"
-version = "0.3.2"
+version = "0.3.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d7c29b43ee8654590587cd033b3eca2f9c4f8cdff945ec0e6ee91ceb057d87f3"
+checksum = "0ae92a5119aa49cdbcf6b9f893fe4e1d98b04ccbf82ee0584ad948a44a734dea"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 1.0.109",
+ "syn 2.0.58",
 ]
 
 [[package]]
@@ -161,15 +185,25 @@ name = "arrayvec"
 version = "0.7.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "96d30a06541fbafbc7f82ed10c06164cfbd2c401138f6addd8404629c4b16711"
+
+[[package]]
+name = "async-channel"
+version = "2.2.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "f28243a43d821d11341ab73c80bed182dc015c514b951616cf79bd4af39af0c3"
 dependencies = [
- "serde",
+ "concurrent-queue",
+ "event-listener",
+ "event-listener-strategy",
+ "futures-core",
+ "pin-project-lite",
 ]
 
 [[package]]
 name = "async-compression"
-version = "0.4.1"
+version = "0.4.8"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "62b74f44609f0f91493e3082d3734d98497e094777144380ea4db9f9905dd5b6"
+checksum = "07dbbf24db18d609b1462965249abdf49129ccad073ec257da372adc83259c60"
 dependencies = [
  "flate2",
  "futures-core",
@@ -180,13 +214,13 @@ dependencies = [
 
 [[package]]
 name = "async-recursion"
-version = "1.0.4"
+version = "1.1.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0e97ce7de6cf12de5d7226c73f5ba9811622f4db3a5b91b55c53e987e5f91cba"
+checksum = "30c5ef0ede93efbf733c1a727f3b6b5a1060bbedd5600183e66f6e4be4af0ec5"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.28",
+ "syn 2.0.58",
 ]
 
 [[package]]
@@ -208,31 +242,31 @@ checksum = "16e62a023e7c117e27523144c5d2459f4397fcc3cab0085af8e2224f643a0193"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.28",
+ "syn 2.0.58",
 ]
 
 [[package]]
 name = "async-task"
-version = "4.4.0"
+version = "4.7.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ecc7ab41815b3c653ccd2978ec3255c81349336702dfdf62ee6f7069b12a3aae"
+checksum = "fbb36e985947064623dbd357f727af08ffd077f93d696782f3c56365fa2e2799"
 
 [[package]]
 name = "async-trait"
-version = "0.1.72"
+version = "0.1.79"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "cc6dde6e4ed435a4c1ee4e73592f5ba9da2151af10076cc04858746af9352d09"
+checksum = "a507401cad91ec6a857ed5513a2073c82a9b9048762b885bb98655b306964681"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.28",
+ "syn 2.0.58",
 ]
 
 [[package]]
 name = "async-tungstenite"
-version = "0.23.0"
+version = "0.25.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a1e9efbe14612da0a19fb983059a0b621e9cf6225d7018ecab4f9988215540dc"
+checksum = "2cca750b12e02c389c1694d35c16539f88b8bbaa5945934fdc1b41a776688589"
 dependencies = [
  "futures-io",
  "futures-util",
@@ -241,14 +275,14 @@ dependencies = [
  "pin-project-lite",
  "tokio",
  "tokio-native-tls",
- "tungstenite 0.20.0",
+ "tungstenite 0.21.0",
 ]
 
 [[package]]
 name = "atomic_refcell"
-version = "0.1.10"
+version = "0.1.13"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "79d6dc922a2792b006573f60b2648076355daeae5ce9cb59507e5908c9625d31"
+checksum = "41e67cd8309bbd06cd603a9e693a784ac2e5d1e955f11286e355089fcab3047c"
 
 [[package]]
 name = "atty"
@@ -263,97 +297,74 @@ dependencies = [
 
 [[package]]
 name = "autocfg"
-version = "1.1.0"
+version = "1.2.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d468802bab17cbc0cc575e9b053f41e72aa36bfa6b7f55e3529ffa43161b97fa"
+checksum = "f1fdabc7756949593fe60f30ec81974b613357de856987752631dea1e3394c80"
 
 [[package]]
 name = "av1-grain"
-version = "0.2.2"
+version = "0.2.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6f6ca6f0c18c02c2fbfc119df551b8aeb8a385f6d5980f1475ba0255f1e97f1e"
+checksum = "6678909d8c5d46a42abcf571271e15fdbc0a225e3646cf23762cd415046c78bf"
 dependencies = [
  "anyhow",
  "arrayvec",
- "itertools 0.10.5",
  "log",
  "nom",
  "num-rational",
- "serde",
  "v_frame",
 ]
 
 [[package]]
 name = "aws-config"
-version = "0.56.0"
+version = "1.1.9"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "de3d533e0263bf453cc80af4c8bcc4d64e2aca293bd16f81633a36f1bf4a97cb"
+checksum = "297b64446175a73987cedc3c438d79b2a654d0fff96f65ff530fbe039347644c"
 dependencies = [
  "aws-credential-types",
- "aws-http",
+ "aws-runtime",
  "aws-sdk-sso",
+ "aws-sdk-ssooidc",
  "aws-sdk-sts",
  "aws-smithy-async",
- "aws-smithy-client",
  "aws-smithy-http",
- "aws-smithy-http-tower",
  "aws-smithy-json",
+ "aws-smithy-runtime",
+ "aws-smithy-runtime-api",
  "aws-smithy-types",
  "aws-types",
  "bytes",
  "fastrand",
  "hex",
- "http",
- "hyper",
+ "http 0.2.12",
+ "hyper 0.14.28",
  "ring",
- "time 0.3.25",
+ "time",
  "tokio",
- "tower",
  "tracing",
+ "url",
  "zeroize",
 ]
 
 [[package]]
 name = "aws-credential-types"
-version = "0.56.0"
+version = "1.1.8"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e4834ba01c5ad1ed9740aa222de62190e3c565d11ab7e72cc68314a258994567"
+checksum = "fa8587ae17c8e967e4b05a62d495be2fb7701bec52a97f7acfe8a29f938384c8"
 dependencies = [
  "aws-smithy-async",
+ "aws-smithy-runtime-api",
  "aws-smithy-types",
- "fastrand",
- "tokio",
- "tracing",
  "zeroize",
 ]
 
 [[package]]
-name = "aws-http"
-version = "0.56.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "72badf9de83cc7d66b21b004f09241836823b8302afb25a24708769e576a8d8f"
-dependencies = [
- "aws-credential-types",
- "aws-smithy-http",
- "aws-smithy-types",
- "aws-types",
- "bytes",
- "http",
- "http-body",
- "lazy_static",
- "percent-encoding",
- "pin-project-lite",
- "tracing",
-]
-
-[[package]]
 name = "aws-runtime"
-version = "0.56.0"
+version = "1.1.8"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "cf832f522111225c02547e1e1c28137e840e4b082399d93a236e4b29193a4667"
+checksum = "b13dc54b4b49f8288532334bba8f87386a40571c47c37b1304979b556dc613c8"
 dependencies = [
  "aws-credential-types",
- "aws-http",
  "aws-sigv4",
  "aws-smithy-async",
  "aws-smithy-eventstream",
@@ -361,24 +372,25 @@ dependencies = [
  "aws-smithy-runtime-api",
  "aws-smithy-types",
  "aws-types",
+ "bytes",
  "fastrand",
- "http",
+ "http 0.2.12",
+ "http-body 0.4.6",
  "percent-encoding",
+ "pin-project-lite",
  "tracing",
  "uuid",
 ]
 
 [[package]]
 name = "aws-sdk-kinesisvideo"
-version = "0.29.0"
+version = "1.19.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5d12ca8af73af5453ecde2a4cc3df43eb6d623552bd3899692bfc92c6ddd1463"
+checksum = "9c3d7de7e417e5007e6f12e435557b46aaaa1df3fdb51a036bbab99e666376e4"
 dependencies = [
  "aws-credential-types",
- "aws-http",
  "aws-runtime",
  "aws-smithy-async",
- "aws-smithy-client",
  "aws-smithy-http",
  "aws-smithy-json",
  "aws-smithy-runtime",
@@ -386,23 +398,21 @@ dependencies = [
  "aws-smithy-types",
  "aws-types",
  "bytes",
- "http",
- "regex",
- "tokio-stream",
+ "http 0.2.12",
+ "once_cell",
+ "regex-lite",
  "tracing",
 ]
 
 [[package]]
 name = "aws-sdk-kinesisvideosignaling"
-version = "0.29.0"
+version = "1.18.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e4d880336d747d5207a74b656d8a229401142598fa36cab9163ac221946d517d"
+checksum = "551e1b19fd1e74614788f842209704f6a588c076e4fd1fbf7ac37a387247fb7f"
 dependencies = [
  "aws-credential-types",
- "aws-http",
  "aws-runtime",
  "aws-smithy-async",
- "aws-smithy-client",
  "aws-smithy-http",
  "aws-smithy-json",
  "aws-smithy-runtime",
@@ -410,24 +420,24 @@ dependencies = [
  "aws-smithy-types",
  "aws-types",
  "bytes",
- "http",
- "regex",
+ "http 0.2.12",
+ "once_cell",
+ "regex-lite",
  "tracing",
 ]
 
 [[package]]
 name = "aws-sdk-s3"
-version = "0.29.0"
+version = "1.21.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1e30370b61599168d38190ad272bb91842cd81870a6ca035c05dd5726d22832c"
+checksum = "bc075ffee2a40cb1590bed35d7ec953589a564e768fa91947c565425cd569269"
 dependencies = [
+ "ahash",
  "aws-credential-types",
- "aws-http",
  "aws-runtime",
  "aws-sigv4",
  "aws-smithy-async",
  "aws-smithy-checksums",
- "aws-smithy-client",
  "aws-smithy-eventstream",
  "aws-smithy-http",
  "aws-smithy-json",
@@ -437,27 +447,29 @@ dependencies = [
  "aws-smithy-xml",
  "aws-types",
  "bytes",
- "http",
- "http-body",
+ "fastrand",
+ "hex",
+ "hmac 0.12.1",
+ "http 0.2.12",
+ "http-body 0.4.6",
+ "lru",
  "once_cell",
  "percent-encoding",
- "regex",
- "tokio-stream",
+ "regex-lite",
+ "sha2",
  "tracing",
  "url",
 ]
 
 [[package]]
 name = "aws-sdk-sso"
-version = "0.29.0"
+version = "1.18.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f41bf2c28d32dbb9894a8fcfcb148265d034d3f4a170552a47553a09de890895"
+checksum = "019a07902c43b03167ea5df0182f0cb63fae89f9a9682c44d18cf2e4a042cb34"
 dependencies = [
  "aws-credential-types",
- "aws-http",
  "aws-runtime",
  "aws-smithy-async",
- "aws-smithy-client",
  "aws-smithy-http",
  "aws-smithy-json",
  "aws-smithy-runtime",
@@ -465,73 +477,68 @@ dependencies = [
  "aws-smithy-types",
  "aws-types",
  "bytes",
- "http",
- "regex",
- "tokio-stream",
+ "http 0.2.12",
+ "once_cell",
+ "regex-lite",
  "tracing",
 ]
 
 [[package]]
-name = "aws-sdk-sts"
-version = "0.29.0"
+name = "aws-sdk-ssooidc"
+version = "1.18.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "79e21aa1a5b0853969a1ef96ccfaa8ff5d57c761549786a4d5f86c1902b2586a"
+checksum = "04c46ee08a48a7f4eaa4ad201dcc1dd537b49c50859d14d4510e00ad9d3f9af2"
 dependencies = [
  "aws-credential-types",
- "aws-http",
  "aws-runtime",
  "aws-smithy-async",
- "aws-smithy-client",
  "aws-smithy-http",
  "aws-smithy-json",
- "aws-smithy-query",
  "aws-smithy-runtime",
  "aws-smithy-runtime-api",
  "aws-smithy-types",
- "aws-smithy-xml",
  "aws-types",
- "http",
- "regex",
+ "bytes",
+ "http 0.2.12",
+ "once_cell",
+ "regex-lite",
  "tracing",
 ]
 
 [[package]]
-name = "aws-sdk-transcribestreaming"
-version = "0.29.0"
+name = "aws-sdk-sts"
+version = "1.18.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "12669c64c03c04e207ff14994791a3a508ae4dc55b0b73f31182171d19b04989"
+checksum = "f752ac730125ca6017f72f9db5ec1772c9ecc664f87aa7507a7d81b023c23713"
 dependencies = [
  "aws-credential-types",
- "aws-http",
  "aws-runtime",
- "aws-sigv4",
  "aws-smithy-async",
- "aws-smithy-client",
- "aws-smithy-eventstream",
  "aws-smithy-http",
  "aws-smithy-json",
+ "aws-smithy-query",
  "aws-smithy-runtime",
  "aws-smithy-runtime-api",
  "aws-smithy-types",
+ "aws-smithy-xml",
  "aws-types",
- "bytes",
- "http",
- "hyper",
- "regex",
+ "http 0.2.12",
+ "once_cell",
+ "regex-lite",
  "tracing",
 ]
 
 [[package]]
-name = "aws-sdk-translate"
-version = "0.29.0"
+name = "aws-sdk-transcribestreaming"
+version = "1.18.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "336147dbb8f9d406dea0bbe5ef057ec4761d4134e7c8eb915db503d7081c6da7"
+checksum = "b18fdcacc5e1b61dfc34df6df1dee21e0da0e7564558ace1d0e1905e68e21b0c"
 dependencies = [
  "aws-credential-types",
- "aws-http",
  "aws-runtime",
+ "aws-sigv4",
  "aws-smithy-async",
- "aws-smithy-client",
+ "aws-smithy-eventstream",
  "aws-smithy-http",
  "aws-smithy-json",
  "aws-smithy-runtime",
@@ -539,66 +546,81 @@ dependencies = [
  "aws-smithy-types",
  "aws-types",
  "bytes",
- "fastrand",
- "http",
- "regex",
- "tokio-stream",
+ "http 0.2.12",
+ "hyper 0.14.28",
+ "once_cell",
+ "regex-lite",
  "tracing",
 ]
 
 [[package]]
-name = "aws-sig-auth"
-version = "0.56.0"
+name = "aws-sdk-translate"
+version = "1.18.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d861c220cd86e3d3e84b8fabddd6b7c29fbd8234715ebb71e063a64689d66bc0"
+checksum = "c9929a0172d8358a66308f2bc48cc77a8f87940649b77132f367cafa0a1414be"
 dependencies = [
  "aws-credential-types",
- "aws-sigv4",
+ "aws-runtime",
  "aws-smithy-async",
  "aws-smithy-http",
+ "aws-smithy-json",
+ "aws-smithy-runtime",
+ "aws-smithy-runtime-api",
+ "aws-smithy-types",
  "aws-types",
- "http",
+ "bytes",
+ "fastrand",
+ "http 0.2.12",
+ "once_cell",
+ "regex-lite",
  "tracing",
 ]
 
 [[package]]
 name = "aws-sigv4"
-version = "0.56.0"
+version = "1.2.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2cb40a93429794065f41f0581734fc56a345f6a38d8e2e3c25c7448d930cd132"
+checksum = "11d6f29688a4be9895c0ba8bef861ad0c0dac5c15e9618b9b7a6c233990fc263"
 dependencies = [
+ "aws-credential-types",
  "aws-smithy-eventstream",
  "aws-smithy-http",
+ "aws-smithy-runtime-api",
+ "aws-smithy-types",
  "bytes",
+ "crypto-bigint 0.5.5",
  "form_urlencoded",
  "hex",
  "hmac 0.12.1",
- "http",
+ "http 0.2.12",
+ "http 1.1.0",
  "once_cell",
+ "p256",
  "percent-encoding",
- "regex",
+ "ring",
  "sha2",
- "time 0.3.25",
+ "subtle",
+ "time",
  "tracing",
+ "zeroize",
 ]
 
 [[package]]
 name = "aws-smithy-async"
-version = "0.56.0"
+version = "1.2.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6ee6d17d487c8b579423067718b3580c0908d0f01d7461813f94ec4323bad623"
+checksum = "62220bc6e97f946ddd51b5f1361f78996e704677afc518a4ff66b7a72ea1378c"
 dependencies = [
  "futures-util",
  "pin-project-lite",
  "tokio",
- "tokio-stream",
 ]
 
 [[package]]
 name = "aws-smithy-checksums"
-version = "0.56.0"
+version = "0.60.7"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0d1849fd5916904513fb0862543b36f8faab43c07984dbc476132b7da1aed056"
+checksum = "83fa43bc04a6b2441968faeab56e68da3812f978a670a5db32accbdcafddd12f"
 dependencies = [
  "aws-smithy-http",
  "aws-smithy-types",
@@ -606,8 +628,8 @@ dependencies = [
  "crc32c",
  "crc32fast",
  "hex",
- "http",
- "http-body",
+ "http 0.2.12",
+ "http-body 0.4.6",
  "md-5",
  "pin-project-lite",
  "sha1",
@@ -616,34 +638,10 @@ dependencies = [
 ]
 
 [[package]]
-name = "aws-smithy-client"
-version = "0.56.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "bdbe0a3ad15283cc5f863a68cb6adc8e256e7c109c43c01bdd09be407219a1e9"
-dependencies = [
- "aws-smithy-async",
- "aws-smithy-http",
- "aws-smithy-http-tower",
- "aws-smithy-types",
- "bytes",
- "fastrand",
- "http",
- "http-body",
- "hyper",
- "hyper-rustls",
- "lazy_static",
- "pin-project-lite",
- "rustls",
- "tokio",
- "tower",
- "tracing",
-]
-
-[[package]]
 name = "aws-smithy-eventstream"
-version = "0.56.0"
+version = "0.60.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a56afef1aa766f512b4970b4c3150b9bf2df8035939723830df4b30267e2d7cb"
+checksum = "e6363078f927f612b970edf9d1903ef5cef9a64d1e8423525ebb1f0a1633c858"
 dependencies = [
  "aws-smithy-types",
  "bytes",
@@ -652,57 +650,39 @@ dependencies = [
 
 [[package]]
 name = "aws-smithy-http"
-version = "0.56.0"
+version = "0.60.7"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "34dc313472d727f5ef44fdda93e668ebfe17380c99dee512c403e3ca51863bb9"
+checksum = "3f10fa66956f01540051b0aa7ad54574640f748f9839e843442d99b970d3aff9"
 dependencies = [
  "aws-smithy-eventstream",
+ "aws-smithy-runtime-api",
  "aws-smithy-types",
  "bytes",
  "bytes-utils",
  "futures-core",
- "http",
- "http-body",
- "hyper",
+ "http 0.2.12",
+ "http-body 0.4.6",
  "once_cell",
  "percent-encoding",
  "pin-project-lite",
  "pin-utils",
- "tokio",
- "tokio-util",
- "tracing",
-]
-
-[[package]]
-name = "aws-smithy-http-tower"
-version = "0.56.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1dd50fca5a4ea4ec3771689ee93bf06b32de02a80af01ed93a8f8a4ed90e8483"
-dependencies = [
- "aws-smithy-http",
- "aws-smithy-types",
- "bytes",
- "http",
- "http-body",
- "pin-project-lite",
- "tower",
  "tracing",
 ]
 
 [[package]]
 name = "aws-smithy-json"
-version = "0.56.0"
+version = "0.60.7"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3591dd7c2fe01ab8025e4847a0a0f6d0c2b2269714688ffb856f9cf6c6d465cf"
+checksum = "4683df9469ef09468dad3473d129960119a0d3593617542b7d52086c8486f2d6"
 dependencies = [
  "aws-smithy-types",
 ]
 
 [[package]]
 name = "aws-smithy-query"
-version = "0.56.0"
+version = "0.60.7"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "dbabb1145e65dd57ae72d91a2619d3f5fba40b68a5f40ba009c30571dfd60aff"
+checksum = "f2fbd61ceb3fe8a1cb7352e42689cec5335833cd9f94103a61e98f9bb61c64bb"
 dependencies = [
  "aws-smithy-types",
  "urlencoding",
@@ -710,85 +690,102 @@ dependencies = [
 
 [[package]]
 name = "aws-smithy-runtime"
-version = "0.56.0"
+version = "1.2.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3687fb838d4ad1c883b62eb59115bc9fb02c4f308aac49a7df89627067f6eb0d"
+checksum = "c53572b4cd934ee5e8461ad53caa36e9d246aaef42166e3ac539e206a925d330"
 dependencies = [
  "aws-smithy-async",
- "aws-smithy-client",
  "aws-smithy-http",
  "aws-smithy-runtime-api",
  "aws-smithy-types",
  "bytes",
  "fastrand",
- "http",
- "http-body",
+ "h2 0.3.26",
+ "http 0.2.12",
+ "http-body 0.4.6",
+ "http-body 1.0.0",
+ "hyper 0.14.28",
+ "hyper-rustls",
  "once_cell",
  "pin-project-lite",
  "pin-utils",
+ "rustls",
  "tokio",
  "tracing",
 ]
 
 [[package]]
 name = "aws-smithy-runtime-api"
-version = "0.56.0"
+version = "1.3.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5cfbf1e5c2108b41f5ca607cde40dd5109fecc448f5d30c8e614b61f36dce704"
+checksum = "ccb2b3a7030dc9a3c9a08ce0b25decea5130e9db19619d4dffbbff34f75fe850"
 dependencies = [
  "aws-smithy-async",
- "aws-smithy-http",
  "aws-smithy-types",
  "bytes",
- "http",
+ "http 0.2.12",
+ "http 1.1.0",
+ "pin-project-lite",
  "tokio",
  "tracing",
+ "zeroize",
 ]
 
 [[package]]
 name = "aws-smithy-types"
-version = "0.56.0"
+version = "1.1.8"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "eed0a94eefd845a2a78677f1b72f02fa75802d38f7f59be675add140279aa8bf"
+checksum = "abe14dceea1e70101d38fbf2a99e6a34159477c0fb95e68e05c66bd7ae4c3729"
 dependencies = [
  "base64-simd",
+ "bytes",
+ "bytes-utils",
+ "futures-core",
+ "http 0.2.12",
+ "http 1.1.0",
+ "http-body 0.4.6",
+ "http-body 1.0.0",
+ "http-body-util",
  "itoa",
  "num-integer",
+ "pin-project-lite",
+ "pin-utils",
  "ryu",
  "serde",
- "time 0.3.25",
+ "time",
+ "tokio",
+ "tokio-util",
 ]
 
 [[package]]
 name = "aws-smithy-xml"
-version = "0.56.0"
+version = "0.60.7"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c88052c812f696143ad7ba729c63535209ff0e0f49e31a6d2b1205208ea6ea79"
+checksum = "872c68cf019c0e4afc5de7753c4f7288ce4b71663212771bf5e4542eb9346ca9"
 dependencies = [
  "xmlparser",
 ]
 
 [[package]]
 name = "aws-types"
-version = "0.56.0"
+version = "1.1.8"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6bceb8cf724ad057ad7f327d0d256d7147b3eac777b39849a26189e003dc9782"
+checksum = "0dbf2f3da841a8930f159163175cf6a3d16ddde517c1b0fba7aa776822800f40"
 dependencies = [
  "aws-credential-types",
  "aws-smithy-async",
- "aws-smithy-client",
- "aws-smithy-http",
+ "aws-smithy-runtime-api",
  "aws-smithy-types",
- "http",
+ "http 0.2.12",
  "rustc_version",
  "tracing",
 ]
 
 [[package]]
 name = "backtrace"
-version = "0.3.68"
+version = "0.3.71"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4319208da049c43661739c5fade2ba182f09d1dc2299b32298d3a31692b17e12"
+checksum = "26b05800d2e817c8b3b4b54abd461726265fa9789ae34330622f2db9ee696f9d"
 dependencies = [
  "addr2line",
  "cc",
@@ -800,6 +797,12 @@ dependencies = [
 ]
 
 [[package]]
+name = "base16ct"
+version = "0.1.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "349a06037c7bf932dd7e7d1f653678b2038b9ad46a74102f1fc7bd7872678cce"
+
+[[package]]
 name = "base32"
 version = "0.4.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -813,9 +816,15 @@ checksum = "9e1b586273c5702936fe7b7d6896644d8be71e6314cfe09d3167c95f712589e8"
 
 [[package]]
 name = "base64"
-version = "0.21.2"
+version = "0.21.7"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "9d297deb1925b89f2ccc13d7635fa0714f12c87adce1c75356b39ca9b7178567"
+
+[[package]]
+name = "base64"
+version = "0.22.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "604178f6c5c21f02dc555784810edfb88d34ac2c73b2eae109655649ee73ce3d"
+checksum = "9475866fec1451be56a3c2400fd081ff546538961565ccb5b7142cbd22bc7a51"
 
 [[package]]
 name = "base64-serde"
@@ -823,7 +832,7 @@ version = "0.7.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "ba368df5de76a5bea49aaf0cf1b39ccfbbef176924d1ba5db3e4135216cbe3c7"
 dependencies = [
- "base64 0.21.2",
+ "base64 0.21.7",
  "serde",
 ]
 
@@ -838,6 +847,12 @@ dependencies = [
 ]
 
 [[package]]
+name = "base64ct"
+version = "1.6.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "8c3c1a368f70d6cf7302d78f8f7093da241fb8e8807c05cc9e51a125895a6d5b"
+
+[[package]]
 name = "bincode"
 version = "1.3.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -854,15 +869,15 @@ checksum = "bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a"
 
 [[package]]
 name = "bitflags"
-version = "2.3.3"
+version = "2.5.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "630be753d4e58660abd17930c71b647fe46c27ea6b63cc59e1e3851406972e42"
+checksum = "cf4b9d6a944f767f8e5e0db018570623c85f3d925ac718db4e06d0187adb21c1"
 
 [[package]]
 name = "bitstream-io"
-version = "1.7.0"
+version = "2.2.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "82704769cb85a22df2c54d6bdd6a158b7931d256cf3248a07d6ecbe9d58b31d7"
+checksum = "06c9989a51171e2e81038ab168b6ae22886fe9ded214430dbb4f41c28cf176da"
 
 [[package]]
 name = "block-buffer"
@@ -883,6 +898,15 @@ dependencies = [
 ]
 
 [[package]]
+name = "bstr"
+version = "1.9.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "05efc5cfd9110c8416e471df0e96702d58690178e206e61b7173706673c93706"
+dependencies = [
+ "memchr",
+]
+
+[[package]]
 name = "build_const"
 version = "0.2.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -890,18 +914,15 @@ checksum = "b4ae4235e6dac0694637c763029ecea1a2ec9e4e06ec2729bd21ba4d9c863eb7"
 
 [[package]]
 name = "built"
-version = "0.5.2"
+version = "0.7.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5b9c056b9ed43aee5e064b683aa1ec783e19c6acec7559e3ae931b7490472fbe"
-dependencies = [
- "cargo-lock",
-]
+checksum = "38d17f4d6e4dc36d1a02fbedc2753a096848e7c1b0772f7654eab8e2c927dd53"
 
 [[package]]
 name = "bumpalo"
-version = "3.13.0"
+version = "3.15.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a3e2c3daef883ecc1b5d58c15adae93470a91d425f3532ba1695849656af3fc1"
+checksum = "7ff69b9dd49fd426c69a0db9fc04dd934cdb6645ff000864d98f7e2af8830eaa"
 
 [[package]]
 name = "byte-slice-cast"
@@ -911,27 +932,27 @@ checksum = "c3ac9f8b63eca6fd385229b3675f6cc0dc5c8a5c8a54a59d4f52ffd670d87b0c"
 
 [[package]]
 name = "bytemuck"
-version = "1.13.1"
+version = "1.15.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "17febce684fd15d89027105661fec94afb475cb995fbc59d2865198446ba2eea"
+checksum = "5d6d68c57235a3a081186990eca2867354726650f42f7516ca50c28d6281fd15"
 
 [[package]]
 name = "byteorder"
-version = "1.4.3"
+version = "1.5.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "14c189c53d098945499cdfa7ecc63567cf3886b3332b312a5b4585d8d3a6a610"
+checksum = "1fd0f2584146f6f2ef48085050886acf353beff7305ebd1ae69500e27c67f64b"
 
 [[package]]
 name = "bytes"
-version = "1.4.0"
+version = "1.6.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "89b2fd2a0dcf38d7971e2194b6b6eebab45ae01067456a7fd93d5547a61b70be"
+checksum = "514de17de45fdb8dc022b1a7975556c53c86f9f0aa5f534b98977b171857c2c9"
 
 [[package]]
 name = "bytes-utils"
-version = "0.1.3"
+version = "0.1.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e47d3a8076e283f3acd27400535992edb3ba4b5bb72f8891ad8fbe7932a7d4b9"
+checksum = "7dafe3a8757b027e2be6e4e5601ed563c55989fcf1546e933c66c8eb3a058d35"
 dependencies = [
  "bytes",
  "either",
@@ -939,21 +960,20 @@ dependencies = [
 
 [[package]]
 name = "cairo-rs"
-version = "0.18.1"
-source = "git+https://github.com/gtk-rs/gtk-rs-core?branch=0.18#854c9b0592fb3a3865caa3e8538a5dda98399c0c"
+version = "0.19.3"
+source = "git+https://github.com/gtk-rs/gtk-rs-core?branch=0.19#5e944f2eff8b344591666754f7ea3b359943ee8c"
 dependencies = [
- "bitflags 2.3.3",
+ "bitflags 2.5.0",
  "cairo-sys-rs",
  "glib",
  "libc",
- "once_cell",
  "thiserror",
 ]
 
 [[package]]
 name = "cairo-sys-rs"
-version = "0.18.1"
-source = "git+https://github.com/gtk-rs/gtk-rs-core?branch=0.18#854c9b0592fb3a3865caa3e8538a5dda98399c0c"
+version = "0.19.3"
+source = "git+https://github.com/gtk-rs/gtk-rs-core?branch=0.19#5e944f2eff8b344591666754f7ea3b359943ee8c"
 dependencies = [
  "glib-sys",
  "libc",
@@ -961,22 +981,10 @@ dependencies = [
 ]
 
 [[package]]
-name = "cargo-lock"
-version = "8.0.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "031718ddb8f78aa5def78a09e90defe30151d1f6c672f937af4dd916429ed996"
-dependencies = [
- "semver",
- "serde",
- "toml 0.5.11",
- "url",
-]
-
-[[package]]
 name = "cc"
-version = "1.0.82"
+version = "1.0.91"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "305fe645edc1442a0fa8b6726ba61d422798d37a52e12eaecf4b022ebbb88f01"
+checksum = "1fd97381a8cc6493395a5afc4c691c1084b3768db713b73aa215217aa245d153"
 dependencies = [
  "jobserver",
  "libc",
@@ -1000,20 +1008,22 @@ dependencies = [
 
 [[package]]
 name = "cea708-types"
-version = "0.1.0"
+version = "0.3.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3a23ec736ab2aafb861ef6f22c662cbc18c85e73945f86bd9e936a20be7cc958"
+checksum = "fd7f33493cb6f19aa19c6e688708f66bf792bc2c75137da2a03c7ebbdf7a44f9"
 dependencies = [
+ "env_logger 0.10.2",
+ "log",
+ "muldiv",
  "once_cell",
- "tracing",
- "tracing-subscriber",
+ "thiserror",
 ]
 
 [[package]]
 name = "cfg-expr"
-version = "0.15.4"
+version = "0.15.7"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b40ccee03b5175c18cde8f37e7d2a33bcef6f8ec8f7cc0d81090d1bb380949c9"
+checksum = "fa50868b64a9a6fda9d593ce778849ea8715cd2a3d2cc17ffdb4a2f2f2f1961d"
 dependencies = [
  "smallvec",
  "target-lexicon",
@@ -1027,18 +1037,17 @@ checksum = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd"
 
 [[package]]
 name = "chrono"
-version = "0.4.26"
+version = "0.4.37"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ec837a71355b28f6556dbd569b37b3f363091c0bd4b2e735674521b4c5fd9bc5"
+checksum = "8a0d04d43504c61aa6c7531f1871dd0d418d91130162063b789da00fd7057a5e"
 dependencies = [
  "android-tzdata",
  "iana-time-zone",
  "js-sys",
  "num-traits",
  "serde",
- "time 0.1.45",
  "wasm-bindgen",
- "winapi",
+ "windows-targets 0.52.4",
 ]
 
 [[package]]
@@ -1052,20 +1061,19 @@ dependencies = [
 
 [[package]]
 name = "clap"
-version = "4.3.21"
+version = "4.4.18"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c27cdf28c0f604ba3f512b0c9a409f8de8513e4816705deb0498b627e7c3a3fd"
+checksum = "1e578d6ec4194633722ccf9544794b71b1385c3c027efe0c55db226fc880865c"
 dependencies = [
  "clap_builder",
  "clap_derive",
- "once_cell",
 ]
 
 [[package]]
 name = "clap_builder"
-version = "4.3.21"
+version = "4.4.18"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "08a9f1ab5e9f01a9b81f202e8562eb9a10de70abf9eaeac1be465c28b75aa4aa"
+checksum = "4df4df40ec50c46000231c914968278b1eb05098cf8f1b3a518a95030e71d1c7"
 dependencies = [
  "anstream",
  "anstyle",
@@ -1075,21 +1083,21 @@ dependencies = [
 
 [[package]]
 name = "clap_derive"
-version = "4.3.12"
+version = "4.4.7"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "54a9bb5758fc5dfe728d1019941681eccaf0cf8a4189b692a0ee2f2ecf90a050"
+checksum = "cf9804afaaf59a91e75b022a30fb7229a7901f60c755489cc61c9b423b836442"
 dependencies = [
- "heck",
+ "heck 0.4.1",
  "proc-macro2",
  "quote",
- "syn 2.0.28",
+ "syn 2.0.58",
 ]
 
 [[package]]
 name = "clap_lex"
-version = "0.5.0"
+version = "0.6.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2da6da31387c7e4ef160ffab6d5e7f00c42626fe39aea70a7b0f1773f7dd6c1b"
+checksum = "702fc72eb24e5a1e48ce58027a675bc24edd52096d5397d4aea7c6dd9eca0bd1"
 
 [[package]]
 name = "claxon"
@@ -1125,46 +1133,61 @@ checksum = "acbf1af155f9b9ef647e42cdc158db4b64a1b61f743629225fde6f3e0be2a7c7"
 
 [[package]]
 name = "concurrent-queue"
-version = "2.2.0"
+version = "2.4.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "62ec6771ecfa0762d24683ee5a32ad78487a3d3afdc0fb8cae19d2c5deb50b7c"
+checksum = "d16048cd947b08fa32c24458a22f5dc5e835264f689f4f5653210c69fd107363"
 dependencies = [
  "crossbeam-utils",
 ]
 
 [[package]]
+name = "const-oid"
+version = "0.9.6"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "c2459377285ad874054d797f3ccebf984978aa39129f6eafde5cdc8315b612f8"
+
+[[package]]
 name = "cookie"
-version = "0.16.2"
+version = "0.17.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e859cd57d0710d9e06c381b550c06e76992472a8c6d527aecd2fc673dcc231fb"
+checksum = "7efb37c3e1ccb1ff97164ad95ac1606e8ccd35b3fa0a7d99a304c7f4a428cc24"
 dependencies = [
  "percent-encoding",
- "time 0.3.25",
+ "time",
  "version_check",
 ]
 
 [[package]]
+name = "cookie-factory"
+version = "0.3.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "9885fa71e26b8ab7855e2ec7cae6e9b380edff76cd052e07c683a0319d51b3a2"
+dependencies = [
+ "futures",
+]
+
+[[package]]
 name = "cookie_store"
-version = "0.16.2"
+version = "0.20.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d606d0fba62e13cf04db20536c05cb7f13673c161cb47a47a82b9b9e7d3f1daa"
+checksum = "387461abbc748185c3a6e1673d826918b450b87ff22639429c694619a83b6cf6"
 dependencies = [
  "cookie",
- "idna 0.2.3",
+ "idna 0.3.0",
  "log",
  "publicsuffix",
  "serde",
  "serde_derive",
  "serde_json",
- "time 0.3.25",
+ "time",
  "url",
 ]
 
 [[package]]
 name = "core-foundation"
-version = "0.9.3"
+version = "0.9.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "194a7a9e6de53fa55116934067c844d9d749312f75c6f6d0980e8c252f8c2146"
+checksum = "91e195e091a93c46f7102ec7818a2aa394e1e1771c3ab4825963fa03e45afb8f"
 dependencies = [
  "core-foundation-sys",
  "libc",
@@ -1172,15 +1195,15 @@ dependencies = [
 
 [[package]]
 name = "core-foundation-sys"
-version = "0.8.4"
+version = "0.8.6"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e496a50fda8aacccc86d7529e2c1e0892dbd0f898a6b5645b5561b89c3210efa"
+checksum = "06ea2b9bc92be3c2baa9334a323ebca2d6f074ff852cd1d7b11064035cd3868f"
 
 [[package]]
 name = "cpufeatures"
-version = "0.2.9"
+version = "0.2.12"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a17b76ff3a4162b0b27f354a0c87015ddad39d35f9c0c36607a3bdd175dde1f1"
+checksum = "53fe5e26ff1b7aef8bca9c6080520cfb8d9333c7568e1829cef191a9723e5504"
 dependencies = [
  "libc",
 ]
@@ -1196,63 +1219,76 @@ dependencies = [
 
 [[package]]
 name = "crc32c"
-version = "0.6.4"
+version = "0.6.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d8f48d60e5b4d2c53d5c2b1d8a58c849a70ae5e5509b08a48d047e3b65714a74"
+checksum = "89254598aa9b9fa608de44b3ae54c810f0f06d755e24c50177f1f8f31ff50ce2"
 dependencies = [
  "rustc_version",
 ]
 
 [[package]]
 name = "crc32fast"
-version = "1.3.2"
+version = "1.4.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b540bd8bc810d3885c6ea91e2018302f68baba2129ab3e88f32389ee9370880d"
+checksum = "b3855a8a784b474f333699ef2bbca9db2c4a1f6d9088a90a2d25b1eb53111eaa"
 dependencies = [
  "cfg-if",
 ]
 
 [[package]]
 name = "crossbeam-channel"
-version = "0.5.8"
+version = "0.5.12"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a33c2bf77f2df06183c3aa30d1e96c0695a313d4f9c453cc3762a6db39f99200"
+checksum = "ab3db02a9c5b5121e1e42fbdb1aeb65f5e02624cc58c43f2884c6ccac0b82f95"
 dependencies = [
- "cfg-if",
  "crossbeam-utils",
 ]
 
 [[package]]
 name = "crossbeam-deque"
-version = "0.8.3"
+version = "0.8.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ce6fd6f855243022dcecf8702fef0c297d4338e226845fe067f6341ad9fa0cef"
+checksum = "613f8cc01fe9cf1a3eb3d7f488fd2fa8388403e97039e2f73692932e291a770d"
 dependencies = [
- "cfg-if",
  "crossbeam-epoch",
  "crossbeam-utils",
 ]
 
 [[package]]
 name = "crossbeam-epoch"
-version = "0.9.15"
+version = "0.9.18"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ae211234986c545741a7dc064309f67ee1e5ad243d0e48335adc0484d960bcc7"
+checksum = "5b82ac4a3c2ca9c3460964f020e1402edd5753411d7737aa39c3714ad1b5420e"
 dependencies = [
- "autocfg",
- "cfg-if",
  "crossbeam-utils",
- "memoffset 0.9.0",
- "scopeguard",
 ]
 
 [[package]]
 name = "crossbeam-utils"
-version = "0.8.16"
+version = "0.8.19"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5a22b2d63d4d1dc0b7f1b6b2747dd0088008a9be28b6ddf0b1e7d335e3037294"
+checksum = "248e3bacc7dc6baa3b21e405ee045c3047101a49145e7e9eca583ab4c2ca5345"
+
+[[package]]
+name = "crypto-bigint"
+version = "0.4.9"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "ef2b4b23cddf68b89b8f8069890e8c270d54e2d5fe1b143820234805e4cb17ef"
 dependencies = [
- "cfg-if",
+ "generic-array",
+ "rand_core",
+ "subtle",
+ "zeroize",
+]
+
+[[package]]
+name = "crypto-bigint"
+version = "0.5.5"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "0dc92fb57ca44df6db8059111ab3af99a63d5d0f8375d9972e319a379c6bab76"
+dependencies = [
+ "rand_core",
+ "subtle",
 ]
 
 [[package]]
@@ -1267,9 +1303,9 @@ dependencies = [
 
 [[package]]
 name = "crypto-mac"
-version = "0.11.1"
+version = "0.11.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b1d1a86f49236c215f271d40892d5fc950490551400b02ef360692c29815c714"
+checksum = "25fab6889090c8133f3deb8f73ba3c65a7f456f66436fc012a1b1e272b1e103e"
 dependencies = [
  "generic-array",
  "subtle",
@@ -1308,9 +1344,9 @@ dependencies = [
 
 [[package]]
 name = "darling"
-version = "0.20.3"
+version = "0.20.8"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0209d94da627ab5605dcccf08bb18afa5009cfbef48d8a8b7d7bdbc79be25c5e"
+checksum = "54e36fcd13ed84ffdfda6f5be89b31287cbb80c439841fe69e04841435464391"
 dependencies = [
  "darling_core",
  "darling_macro",
@@ -1318,52 +1354,67 @@ dependencies = [
 
 [[package]]
 name = "darling_core"
-version = "0.20.3"
+version = "0.20.8"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "177e3443818124b357d8e76f53be906d60937f0d3a90773a664fa63fa253e621"
+checksum = "9c2cf1c23a687a1feeb728783b993c4e1ad83d99f351801977dd809b48d0a70f"
 dependencies = [
  "fnv",
  "ident_case",
  "proc-macro2",
  "quote",
  "strsim",
- "syn 2.0.28",
+ "syn 2.0.58",
 ]
 
 [[package]]
 name = "darling_macro"
-version = "0.20.3"
+version = "0.20.8"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "836a9bbc7ad63342d6d6e7b815ccab164bc77a2d95d84bc3117a8c0d5c98e2d5"
+checksum = "a668eda54683121533a393014d8692171709ff57a7d61f187b6e782719f8933f"
 dependencies = [
  "darling_core",
  "quote",
- "syn 2.0.28",
+ "syn 2.0.58",
 ]
 
 [[package]]
 name = "dash-mpd"
-version = "0.13.0"
+version = "0.16.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5d0c74b03285fe95649f588140b6009dc10bc4f747bd774818ed8e9cc6b5cbb6"
+checksum = "6cafa2c33eff2857e1a14c38aa9a432aa565a01e77804a541fce7aec3affb8f8"
 dependencies = [
- "base64 0.21.2",
+ "base64 0.22.0",
  "base64-serde",
  "chrono",
  "fs-err",
  "iso8601",
- "log",
+ "lazy_static",
  "num-traits",
  "quick-xml",
  "regex",
  "serde",
+ "serde_path_to_error",
  "serde_with",
  "thiserror",
- "tokio",
+ "tracing",
+ "url",
  "xattr",
 ]
 
 [[package]]
+name = "dashmap"
+version = "5.5.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "978747c1d849a7d2ee5e8adc0159961c48fb7e5db2f06af6723b80123bb53856"
+dependencies = [
+ "cfg-if",
+ "hashbrown 0.14.3",
+ "lock_api",
+ "once_cell",
+ "parking_lot_core",
+]
+
+[[package]]
 name = "dasp_frame"
 version = "0.11.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -1380,36 +1431,47 @@ checksum = "0c87e182de0887fd5361989c677c4e8f5000cd9491d6d563161a8f3a5519fc7f"
 
 [[package]]
 name = "data-encoding"
-version = "2.4.0"
+version = "2.5.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c2e66c9d817f1720209181c316d28635c050fa304f9c79e47a520882661b7308"
+checksum = "7e962a19be5cfc3f3bf6dd8f61eb50107f356ad6270fbb3ed41476571db78be5"
 
 [[package]]
 name = "dav1d"
-version = "0.9.4"
+version = "0.9.6"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "87ca43c8e58ee931086b5fd9a4b6a8cc40c1346592246c4fe3d299eca1684c75"
+checksum = "96be853ae81fdc81d4fbd921866ba6272147c34f75a8ee5d25781ea0f1bcadc8"
 dependencies = [
- "bitflags 2.3.3",
+ "bitflags 2.5.0",
  "dav1d-sys",
 ]
 
 [[package]]
 name = "dav1d-sys"
-version = "0.7.1"
+version = "0.7.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "615542bb14c18b795f46aba92258902168218d714090f5fff47e68c9a352ea2d"
+checksum = "3a49fd89ad2b234b606f942e8759390fd7176e9b2b50438f516dd232dcc6e58f"
 dependencies = [
  "libc",
  "system-deps",
 ]
 
 [[package]]
+name = "der"
+version = "0.6.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "f1a467a65c5e759bce6e65eaf91cc29f466cdc57cb65777bd646872a8a1fd4de"
+dependencies = [
+ "const-oid",
+ "zeroize",
+]
+
+[[package]]
 name = "deranged"
-version = "0.3.7"
+version = "0.3.11"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7684a49fb1af197853ef7b2ee694bc1f5b4179556f1e5710e1760c5db6f5e929"
+checksum = "b42b6fa04a440b495c8b04d0e71b707c585f83cb9cb28cf8cd0d976c315e31b4"
 dependencies = [
+ "powerfmt",
  "serde",
 ]
 
@@ -1441,12 +1503,12 @@ dependencies = [
 
 [[package]]
 name = "dssim-core"
-version = "3.2.7"
+version = "3.2.8"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1388544389475fcfd718b35a286af17cb215202af26bf2067d0e1024adbc3fe9"
+checksum = "fafad37c1f4f168243f3ac1b4cae0d358c528ac695670100337314e38d54b486"
 dependencies = [
  "imgref",
- "itertools 0.11.0",
+ "itertools 0.12.1",
  "rayon",
  "rgb",
 ]
@@ -1464,6 +1526,18 @@ dependencies = [
 ]
 
 [[package]]
+name = "ecdsa"
+version = "0.14.8"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "413301934810f597c1d19ca71c8710e99a3f1ba28a0d2ebc01551a2daeea3c5c"
+dependencies = [
+ "der",
+ "elliptic-curve",
+ "rfc6979",
+ "signature",
+]
+
+[[package]]
 name = "ed25519"
 version = "1.5.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -1474,15 +1548,35 @@ dependencies = [
 
 [[package]]
 name = "either"
-version = "1.9.0"
+version = "1.10.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "11157ac094ffbdde99aa67b23417ebdd801842852b500e395a45a9c0aac03e4a"
+
+[[package]]
+name = "elliptic-curve"
+version = "0.12.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a26ae43d7bcc3b814de94796a5e736d4029efb0ee900c12e2d54c993ad1a1e07"
+checksum = "e7bb888ab5300a19b8e5bceef25ac745ad065f3c9f7efc6de1b91958110891d3"
+dependencies = [
+ "base16ct",
+ "crypto-bigint 0.4.9",
+ "der",
+ "digest 0.10.7",
+ "ff",
+ "generic-array",
+ "group",
+ "pkcs8",
+ "rand_core",
+ "sec1",
+ "subtle",
+ "zeroize",
+]
 
 [[package]]
 name = "encoding_rs"
-version = "0.8.32"
+version = "0.8.33"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "071a31f4ee85403370b58aca746f01041ede6f0da2730960ad001edc2b71b394"
+checksum = "7268b386296a025e474d5140678f75d6de9493ae55a5d709eeb9dd08149945e1"
 dependencies = [
  "cfg-if",
 ]
@@ -1501,9 +1595,9 @@ dependencies = [
 
 [[package]]
 name = "env_logger"
-version = "0.10.0"
+version = "0.10.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "85cdab6a89accf66733ad5a1693a4dcced6aeff64602b634530dd73c1f3ee9f0"
+checksum = "4cd405aab171cb85d6735e5c8d9db038c17d3ca007a4d2c25f337935c3d90580"
 dependencies = [
  "humantime",
  "is-terminal",
@@ -1520,41 +1614,67 @@ checksum = "5443807d6dff69373d433ab9ef5378ad8df50ca6298caf15de6e52e24aaf54d5"
 
 [[package]]
 name = "errno"
-version = "0.3.2"
+version = "0.3.8"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6b30f669a7961ef1631673d2766cc92f52d64f7ef354d4fe0ddfd30ed52f0f4f"
+checksum = "a258e46cdc063eb8519c00b9fc845fc47bcfca4130e2f08e88665ceda8474245"
 dependencies = [
- "errno-dragonfly",
  "libc",
- "windows-sys",
+ "windows-sys 0.52.0",
 ]
 
 [[package]]
-name = "errno-dragonfly"
-version = "0.1.2"
+name = "event-listener"
+version = "5.3.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "aa68f1b12764fab894d2755d2518754e71b4fd80ecfb822714a1206c2aab39bf"
+checksum = "6d9944b8ca13534cdfb2800775f8dd4902ff3fc75a50101466decadfdf322a24"
 dependencies = [
- "cc",
- "libc",
+ "concurrent-queue",
+ "parking",
+ "pin-project-lite",
 ]
 
 [[package]]
+name = "event-listener-strategy"
+version = "0.5.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "332f51cb23d20b0de8458b86580878211da09bcd4503cb579c225b3d124cabb3"
+dependencies = [
+ "event-listener",
+ "pin-project-lite",
+]
+
+[[package]]
+name = "fallible-iterator"
+version = "0.3.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "2acce4a10f12dc2fb14a218589d4f1f62ef011b2d0cc4b3cb1bba8e94da14649"
+
+[[package]]
 name = "fastrand"
-version = "2.0.0"
+version = "2.0.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6999dc1837253364c2ebb0704ba97994bd874e8f195d665c50b7548f6ea92764"
+checksum = "658bd65b1cf4c852a3cc96f18a8ce7b5640f6b703f905c7d74532294c2a63984"
 
 [[package]]
 name = "fdeflate"
-version = "0.3.0"
+version = "0.3.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d329bdeac514ee06249dabc27877490f17f5d371ec693360768b838e19f3ae10"
+checksum = "4f9bfee30e4dedf0ab8b422f03af778d9612b63f502710fc500a334ebe2de645"
 dependencies = [
  "simd-adler32",
 ]
 
 [[package]]
+name = "ff"
+version = "0.12.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "d013fc25338cc558c5c2cfbad646908fb23591e2404481826742b651c9af7160"
+dependencies = [
+ "rand_core",
+ "subtle",
+]
+
+[[package]]
 name = "ffv1"
 version = "0.0.0"
 source = "git+https://github.com/rust-av/ffv1.git?rev=2afb025a327173ce891954c052e804d0f880368a#2afb025a327173ce891954c052e804d0f880368a"
@@ -1570,7 +1690,7 @@ version = "0.3.6"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "38e2275cc4e4fc009b0669731a1e5ab7ebf11f469eaede2bab9309a5b4d6057f"
 dependencies = [
- "memoffset 0.9.0",
+ "memoffset 0.9.1",
  "rustc_version",
 ]
 
@@ -1582,9 +1702,9 @@ checksum = "0ce7134b9999ecaf8bcd65542e436736ef32ddca1b3e06094cb6ec5755203b80"
 
 [[package]]
 name = "flate2"
-version = "1.0.26"
+version = "1.0.28"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3b9429470923de8e8cbd4d2dc513535400b4b3fef0319fb5c4e1f520a7bef743"
+checksum = "46303f565772937ffe1d394a4fac6f411c6013172fadde9dcdb1e147a086940e"
 dependencies = [
  "crc32fast",
  "miniz_oxide",
@@ -1600,15 +1720,14 @@ dependencies = [
 
 [[package]]
 name = "flume"
-version = "0.10.14"
+version = "0.11.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1657b4441c3403d9f7b3409e47575237dac27b1b5726df654a6ecbf92f0f7577"
+checksum = "55ac459de2512911e4b674ce33cf20befaba382d05b62b008afc1c8b57cbf181"
 dependencies = [
  "futures-core",
  "futures-sink",
  "nanorand",
- "pin-project",
- "spin 0.9.8",
+ "spin",
 ]
 
 [[package]]
@@ -1634,18 +1753,21 @@ checksum = "00b0228411908ca8685dba7fc2cdd70ec9990a6e753e89b6ac91a84c40fbaf4b"
 
 [[package]]
 name = "form_urlencoded"
-version = "1.2.0"
+version = "1.2.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a62bc1cf6f830c2ec14a513a9fb124d0a213a629668a4186f329db21fe045652"
+checksum = "e13624c2627564efccf4934284bdd98cbaa14e79b0b5a141218e507b3a823456"
 dependencies = [
  "percent-encoding",
 ]
 
 [[package]]
 name = "fs-err"
-version = "2.9.0"
+version = "2.11.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0845fa252299212f0389d64ba26f34fa32cfe41588355f21ed507c59a0f64541"
+checksum = "88a41f105fe1d5b6b34b2055e3dc59bb79b46b48b2040b9e6c7b4b5de097aa41"
+dependencies = [
+ "autocfg",
+]
 
 [[package]]
 name = "fst"
@@ -1655,9 +1777,9 @@ checksum = "7ab85b9b05e3978cc9a9cf8fea7f01b494e1a09ed3037e16ba39edc7a29eb61a"
 
 [[package]]
 name = "futures"
-version = "0.3.28"
+version = "0.3.30"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "23342abe12aba583913b2e62f22225ff9c950774065e4bfb61a19cd9770fec40"
+checksum = "645c6916888f6cb6350d2550b80fb63e734897a8498abe35cfb732b6487804b0"
 dependencies = [
  "futures-channel",
  "futures-core",
@@ -1670,9 +1792,9 @@ dependencies = [
 
 [[package]]
 name = "futures-channel"
-version = "0.3.28"
+version = "0.3.30"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "955518d47e09b25bbebc7a18df10b81f0c766eaf4c4f1cccef2fca5f2a4fb5f2"
+checksum = "eac8f7d7865dcb88bd4373ab671c8cf4508703796caa2b1985a9ca867b3fcb78"
 dependencies = [
  "futures-core",
  "futures-sink",
@@ -1680,15 +1802,15 @@ dependencies = [
 
 [[package]]
 name = "futures-core"
-version = "0.3.28"
+version = "0.3.30"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4bca583b7e26f571124fe5b7561d49cb2868d79116cfa0eefce955557c6fee8c"
+checksum = "dfc6580bb841c5a68e9ef15c77ccc837b40a7504914d52e47b8b0e9bbda25a1d"
 
 [[package]]
 name = "futures-executor"
-version = "0.3.28"
+version = "0.3.30"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ccecee823288125bd88b4d7f565c9e58e41858e47ab72e8ea2d64e93624386e0"
+checksum = "a576fc72ae164fca6b9db127eaa9a9dda0d61316034f33a0a0d4eda41f02b01d"
 dependencies = [
  "futures-core",
  "futures-task",
@@ -1697,38 +1819,38 @@ dependencies = [
 
 [[package]]
 name = "futures-io"
-version = "0.3.28"
+version = "0.3.30"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4fff74096e71ed47f8e023204cfd0aa1289cd54ae5430a9523be060cdb849964"
+checksum = "a44623e20b9681a318efdd71c299b6b222ed6f231972bfe2f224ebad6311f0c1"
 
 [[package]]
 name = "futures-macro"
-version = "0.3.28"
+version = "0.3.30"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "89ca545a94061b6365f2c7355b4b32bd20df3ff95f02da9329b34ccc3bd6ee72"
+checksum = "87750cf4b7a4c0625b1529e4c543c2182106e4dedc60a2a6455e00d212c489ac"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.28",
+ "syn 2.0.58",
 ]
 
 [[package]]
 name = "futures-sink"
-version = "0.3.28"
+version = "0.3.30"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f43be4fe21a13b9781a69afa4985b0f6ee0e1afab2c6f454a8cf30e2b2237b6e"
+checksum = "9fb8e00e87438d937621c1c6269e53f536c14d3fbd6a042bb24879e57d474fb5"
 
 [[package]]
 name = "futures-task"
-version = "0.3.28"
+version = "0.3.30"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "76d3d132be6c0e6aa1534069c705a74a5997a356c0dc2f86a47765e5617c5b65"
+checksum = "38d84fa142264698cdce1a9f9172cf383a0c82de1bddcf3092901442c4097004"
 
 [[package]]
 name = "futures-util"
-version = "0.3.28"
+version = "0.3.30"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "26b01e40b772d54cf6c6d721c1d1abd0647a0106a12ecaa1c186273392a69533"
+checksum = "3d6401deb83407ab3da39eba7e33987a73c3df0c82b4bb5813ee871c19c41d48"
 dependencies = [
  "futures-channel",
  "futures-core",
@@ -1744,20 +1866,19 @@ dependencies = [
 
 [[package]]
 name = "gdk-pixbuf"
-version = "0.18.1"
-source = "git+https://github.com/gtk-rs/gtk-rs-core?branch=0.18#854c9b0592fb3a3865caa3e8538a5dda98399c0c"
+version = "0.19.3"
+source = "git+https://github.com/gtk-rs/gtk-rs-core?branch=0.19#5e944f2eff8b344591666754f7ea3b359943ee8c"
 dependencies = [
  "gdk-pixbuf-sys",
  "gio",
  "glib",
  "libc",
- "once_cell",
 ]
 
 [[package]]
 name = "gdk-pixbuf-sys"
-version = "0.18.1"
-source = "git+https://github.com/gtk-rs/gtk-rs-core?branch=0.18#854c9b0592fb3a3865caa3e8538a5dda98399c0c"
+version = "0.19.3"
+source = "git+https://github.com/gtk-rs/gtk-rs-core?branch=0.19#5e944f2eff8b344591666754f7ea3b359943ee8c"
 dependencies = [
  "gio-sys",
  "glib-sys",
@@ -1768,8 +1889,8 @@ dependencies = [
 
 [[package]]
 name = "gdk4"
-version = "0.7.1"
-source = "git+https://github.com/gtk-rs/gtk4-rs?branch=0.7#9cf490a3afcad0a61233d4f65cfc2f5d2d369e9f"
+version = "0.8.1"
+source = "git+https://github.com/gtk-rs/gtk4-rs?branch=0.8#05d26f6a97a0ccf856b565b4fd796cdf57059084"
 dependencies = [
  "cairo-rs",
  "gdk-pixbuf",
@@ -1782,8 +1903,8 @@ dependencies = [
 
 [[package]]
 name = "gdk4-sys"
-version = "0.7.1"
-source = "git+https://github.com/gtk-rs/gtk4-rs?branch=0.7#9cf490a3afcad0a61233d4f65cfc2f5d2d369e9f"
+version = "0.8.1"
+source = "git+https://github.com/gtk-rs/gtk4-rs?branch=0.8#05d26f6a97a0ccf856b565b4fd796cdf57059084"
 dependencies = [
  "cairo-sys-rs",
  "gdk-pixbuf-sys",
@@ -1798,8 +1919,8 @@ dependencies = [
 
 [[package]]
 name = "gdk4-wayland"
-version = "0.7.1"
-source = "git+https://github.com/gtk-rs/gtk4-rs?branch=0.7#9cf490a3afcad0a61233d4f65cfc2f5d2d369e9f"
+version = "0.8.1"
+source = "git+https://github.com/gtk-rs/gtk4-rs?branch=0.8#05d26f6a97a0ccf856b565b4fd796cdf57059084"
 dependencies = [
  "gdk4",
  "gdk4-wayland-sys",
@@ -1810,8 +1931,8 @@ dependencies = [
 
 [[package]]
 name = "gdk4-wayland-sys"
-version = "0.7.1"
-source = "git+https://github.com/gtk-rs/gtk4-rs?branch=0.7#9cf490a3afcad0a61233d4f65cfc2f5d2d369e9f"
+version = "0.8.1"
+source = "git+https://github.com/gtk-rs/gtk4-rs?branch=0.8#05d26f6a97a0ccf856b565b4fd796cdf57059084"
 dependencies = [
  "glib-sys",
  "libc",
@@ -1820,8 +1941,8 @@ dependencies = [
 
 [[package]]
 name = "gdk4-win32"
-version = "0.7.1"
-source = "git+https://github.com/gtk-rs/gtk4-rs?branch=0.7#9cf490a3afcad0a61233d4f65cfc2f5d2d369e9f"
+version = "0.8.1"
+source = "git+https://github.com/gtk-rs/gtk4-rs?branch=0.8#05d26f6a97a0ccf856b565b4fd796cdf57059084"
 dependencies = [
  "gdk4",
  "gdk4-win32-sys",
@@ -1829,15 +1950,13 @@ dependencies = [
  "glib",
  "khronos-egl",
  "libc",
- "system-deps",
 ]
 
 [[package]]
 name = "gdk4-win32-sys"
-version = "0.7.1"
-source = "git+https://github.com/gtk-rs/gtk4-rs?branch=0.7#9cf490a3afcad0a61233d4f65cfc2f5d2d369e9f"
+version = "0.8.1"
+source = "git+https://github.com/gtk-rs/gtk4-rs?branch=0.8#05d26f6a97a0ccf856b565b4fd796cdf57059084"
 dependencies = [
- "gdk-pixbuf-sys",
  "gdk4-sys",
  "glib-sys",
  "libc",
@@ -1846,8 +1965,8 @@ dependencies = [
 
 [[package]]
 name = "gdk4-x11"
-version = "0.7.1"
-source = "git+https://github.com/gtk-rs/gtk4-rs?branch=0.7#9cf490a3afcad0a61233d4f65cfc2f5d2d369e9f"
+version = "0.8.1"
+source = "git+https://github.com/gtk-rs/gtk4-rs?branch=0.8#05d26f6a97a0ccf856b565b4fd796cdf57059084"
 dependencies = [
  "gdk4",
  "gdk4-x11-sys",
@@ -1858,8 +1977,8 @@ dependencies = [
 
 [[package]]
 name = "gdk4-x11-sys"
-version = "0.7.1"
-source = "git+https://github.com/gtk-rs/gtk4-rs?branch=0.7#9cf490a3afcad0a61233d4f65cfc2f5d2d369e9f"
+version = "0.8.1"
+source = "git+https://github.com/gtk-rs/gtk4-rs?branch=0.8#05d26f6a97a0ccf856b565b4fd796cdf57059084"
 dependencies = [
  "gdk4-sys",
  "glib-sys",
@@ -1888,22 +2007,22 @@ dependencies = [
 
 [[package]]
 name = "getrandom"
-version = "0.2.10"
+version = "0.2.14"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "be4136b2a15dd319360be1c07d9933517ccf0be8f16bf62a3bee4f0d618df427"
+checksum = "94b22e06ecb0110981051723910cbf0b5f5e09a2062dd7663334ee79a9d1286c"
 dependencies = [
  "cfg-if",
  "js-sys",
  "libc",
- "wasi 0.11.0+wasi-snapshot-preview1",
+ "wasi",
  "wasm-bindgen",
 ]
 
 [[package]]
 name = "gif"
-version = "0.12.0"
+version = "0.13.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "80792593675e051cf94a4b111980da2ba60d4a83e43e0048c5693baab3977045"
+checksum = "3fb2d69b19215e18bb912fa30f7ce15846e301408695e44e0ef719f1da9e19f2"
 dependencies = [
  "color_quant",
  "weezl",
@@ -1911,14 +2030,14 @@ dependencies = [
 
 [[package]]
 name = "gimli"
-version = "0.27.3"
+version = "0.28.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b6c80984affa11d98d1b88b66ac8853f143217b399d3c74116778ff8fdb4ed2e"
+checksum = "4271d37baee1b8c7e4b708028c57d816cf9d2434acb33a549475f78c181f6253"
 
 [[package]]
 name = "gio"
-version = "0.18.1"
-source = "git+https://github.com/gtk-rs/gtk-rs-core?branch=0.18#854c9b0592fb3a3865caa3e8538a5dda98399c0c"
+version = "0.19.3"
+source = "git+https://github.com/gtk-rs/gtk-rs-core?branch=0.19#5e944f2eff8b344591666754f7ea3b359943ee8c"
 dependencies = [
  "futures-channel",
  "futures-core",
@@ -1927,7 +2046,6 @@ dependencies = [
  "gio-sys",
  "glib",
  "libc",
- "once_cell",
  "pin-project-lite",
  "smallvec",
  "thiserror",
@@ -1935,22 +2053,22 @@ dependencies = [
 
 [[package]]
 name = "gio-sys"
-version = "0.18.1"
-source = "git+https://github.com/gtk-rs/gtk-rs-core?branch=0.18#854c9b0592fb3a3865caa3e8538a5dda98399c0c"
+version = "0.19.3"
+source = "git+https://github.com/gtk-rs/gtk-rs-core?branch=0.19#5e944f2eff8b344591666754f7ea3b359943ee8c"
 dependencies = [
  "glib-sys",
  "gobject-sys",
  "libc",
  "system-deps",
- "winapi",
+ "windows-sys 0.52.0",
 ]
 
 [[package]]
 name = "glib"
-version = "0.18.1"
-source = "git+https://github.com/gtk-rs/gtk-rs-core?branch=0.18#854c9b0592fb3a3865caa3e8538a5dda98399c0c"
+version = "0.19.3"
+source = "git+https://github.com/gtk-rs/gtk-rs-core?branch=0.19#5e944f2eff8b344591666754f7ea3b359943ee8c"
 dependencies = [
- "bitflags 2.3.3",
+ "bitflags 2.5.0",
  "futures-channel",
  "futures-core",
  "futures-executor",
@@ -1962,28 +2080,26 @@ dependencies = [
  "gobject-sys",
  "libc",
  "memchr",
- "once_cell",
  "smallvec",
  "thiserror",
 ]
 
 [[package]]
 name = "glib-macros"
-version = "0.18.1"
-source = "git+https://github.com/gtk-rs/gtk-rs-core?branch=0.18#854c9b0592fb3a3865caa3e8538a5dda98399c0c"
+version = "0.19.3"
+source = "git+https://github.com/gtk-rs/gtk-rs-core?branch=0.19#5e944f2eff8b344591666754f7ea3b359943ee8c"
 dependencies = [
- "heck",
+ "heck 0.5.0",
  "proc-macro-crate",
- "proc-macro-error",
  "proc-macro2",
  "quote",
- "syn 2.0.28",
+ "syn 2.0.58",
 ]
 
 [[package]]
 name = "glib-sys"
-version = "0.18.1"
-source = "git+https://github.com/gtk-rs/gtk-rs-core?branch=0.18#854c9b0592fb3a3865caa3e8538a5dda98399c0c"
+version = "0.19.3"
+source = "git+https://github.com/gtk-rs/gtk-rs-core?branch=0.19#5e944f2eff8b344591666754f7ea3b359943ee8c"
 dependencies = [
  "libc",
  "system-deps",
@@ -1997,8 +2113,8 @@ checksum = "d2fabcfbdc87f4758337ca535fb41a6d701b65693ce38287d856d1674551ec9b"
 
 [[package]]
 name = "gobject-sys"
-version = "0.18.1"
-source = "git+https://github.com/gtk-rs/gtk-rs-core?branch=0.18#854c9b0592fb3a3865caa3e8538a5dda98399c0c"
+version = "0.19.3"
+source = "git+https://github.com/gtk-rs/gtk-rs-core?branch=0.19#5e944f2eff8b344591666754f7ea3b359943ee8c"
 dependencies = [
  "glib-sys",
  "libc",
@@ -2007,8 +2123,8 @@ dependencies = [
 
 [[package]]
 name = "graphene-rs"
-version = "0.18.1"
-source = "git+https://github.com/gtk-rs/gtk-rs-core?branch=0.18#854c9b0592fb3a3865caa3e8538a5dda98399c0c"
+version = "0.19.3"
+source = "git+https://github.com/gtk-rs/gtk-rs-core?branch=0.19#5e944f2eff8b344591666754f7ea3b359943ee8c"
 dependencies = [
  "glib",
  "graphene-sys",
@@ -2017,8 +2133,8 @@ dependencies = [
 
 [[package]]
 name = "graphene-sys"
-version = "0.18.1"
-source = "git+https://github.com/gtk-rs/gtk-rs-core?branch=0.18#854c9b0592fb3a3865caa3e8538a5dda98399c0c"
+version = "0.19.3"
+source = "git+https://github.com/gtk-rs/gtk-rs-core?branch=0.19#5e944f2eff8b344591666754f7ea3b359943ee8c"
 dependencies = [
  "glib-sys",
  "libc",
@@ -2027,9 +2143,20 @@ dependencies = [
 ]
 
 [[package]]
+name = "group"
+version = "0.12.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "5dfbfb3a6cfbd390d5c9564ab283a0349b9b9fcd46a706c1eb10e0db70bfbac7"
+dependencies = [
+ "ff",
+ "rand_core",
+ "subtle",
+]
+
+[[package]]
 name = "gsk4"
-version = "0.7.1"
-source = "git+https://github.com/gtk-rs/gtk4-rs?branch=0.7#9cf490a3afcad0a61233d4f65cfc2f5d2d369e9f"
+version = "0.8.1"
+source = "git+https://github.com/gtk-rs/gtk4-rs?branch=0.8#05d26f6a97a0ccf856b565b4fd796cdf57059084"
 dependencies = [
  "cairo-rs",
  "gdk4",
@@ -2042,8 +2169,8 @@ dependencies = [
 
 [[package]]
 name = "gsk4-sys"
-version = "0.7.1"
-source = "git+https://github.com/gtk-rs/gtk4-rs?branch=0.7#9cf490a3afcad0a61233d4f65cfc2f5d2d369e9f"
+version = "0.8.1"
+source = "git+https://github.com/gtk-rs/gtk4-rs?branch=0.8#05d26f6a97a0ccf856b565b4fd796cdf57059084"
 dependencies = [
  "cairo-sys-rs",
  "gdk4-sys",
@@ -2057,7 +2184,7 @@ dependencies = [
 
 [[package]]
 name = "gst-plugin-audiofx"
-version = "0.11.0"
+version = "0.12.4"
 dependencies = [
  "anyhow",
  "atomic_refcell",
@@ -2072,13 +2199,14 @@ dependencies = [
  "hrtf",
  "nnnoiseless",
  "num-traits",
+ "once_cell",
  "rayon",
  "smallvec",
 ]
 
 [[package]]
 name = "gst-plugin-aws"
-version = "0.11.0"
+version = "0.12.4"
 dependencies = [
  "async-stream",
  "aws-config",
@@ -2086,14 +2214,11 @@ dependencies = [
  "aws-sdk-s3",
  "aws-sdk-transcribestreaming",
  "aws-sdk-translate",
- "aws-sig-auth",
- "aws-smithy-http",
- "aws-smithy-types",
  "aws-types",
  "base32",
  "bytes",
  "chrono",
- "env_logger 0.10.0",
+ "env_logger 0.10.2",
  "futures",
  "gio",
  "gst-plugin-version-helper",
@@ -2101,7 +2226,7 @@ dependencies = [
  "gstreamer-audio",
  "gstreamer-base",
  "gstreamer-check",
- "http",
+ "once_cell",
  "percent-encoding",
  "rand",
  "serde",
@@ -2114,7 +2239,7 @@ dependencies = [
 
 [[package]]
 name = "gst-plugin-cdg"
-version = "0.11.0"
+version = "0.12.4"
 dependencies = [
  "cdg",
  "cdg_renderer",
@@ -2124,12 +2249,12 @@ dependencies = [
  "gstreamer-base",
  "gstreamer-video",
  "image",
- "muldiv",
+ "once_cell",
 ]
 
 [[package]]
 name = "gst-plugin-claxon"
-version = "0.11.0"
+version = "0.12.4"
 dependencies = [
  "atomic_refcell",
  "byte-slice-cast",
@@ -2143,7 +2268,7 @@ dependencies = [
 
 [[package]]
 name = "gst-plugin-closedcaption"
-version = "0.11.0"
+version = "0.12.4"
 dependencies = [
  "anyhow",
  "atomic_refcell",
@@ -2159,6 +2284,7 @@ dependencies = [
  "gstreamer-check",
  "gstreamer-video",
  "nom",
+ "once_cell",
  "pango",
  "pangocairo",
  "pretty_assertions",
@@ -2170,7 +2296,7 @@ dependencies = [
 
 [[package]]
 name = "gst-plugin-csound"
-version = "0.11.0"
+version = "0.12.4"
 dependencies = [
  "byte-slice-cast",
  "csound",
@@ -2179,11 +2305,12 @@ dependencies = [
  "gstreamer-audio",
  "gstreamer-base",
  "gstreamer-check",
+ "once_cell",
 ]
 
 [[package]]
 name = "gst-plugin-dav1d"
-version = "0.11.0"
+version = "0.12.4"
 dependencies = [
  "dav1d",
  "gst-plugin-version-helper",
@@ -2191,11 +2318,12 @@ dependencies = [
  "gstreamer-base",
  "gstreamer-video",
  "num_cpus",
+ "once_cell",
 ]
 
 [[package]]
 name = "gst-plugin-fallbackswitch"
-version = "0.11.0"
+version = "0.12.4"
 dependencies = [
  "gio",
  "gst-plugin-gtk4",
@@ -2207,12 +2335,13 @@ dependencies = [
  "gstreamer-check",
  "gstreamer-video",
  "gtk4",
+ "once_cell",
  "parking_lot",
 ]
 
 [[package]]
 name = "gst-plugin-ffv1"
-version = "0.11.0"
+version = "0.12.4"
 dependencies = [
  "byte-slice-cast",
  "ffv1",
@@ -2220,21 +2349,23 @@ dependencies = [
  "gstreamer",
  "gstreamer-check",
  "gstreamer-video",
+ "once_cell",
 ]
 
 [[package]]
 name = "gst-plugin-file"
-version = "0.11.0"
+version = "0.12.4"
 dependencies = [
  "gst-plugin-version-helper",
  "gstreamer",
  "gstreamer-base",
+ "once_cell",
  "url",
 ]
 
 [[package]]
 name = "gst-plugin-flavors"
-version = "0.11.0"
+version = "0.12.4"
 dependencies = [
  "byteorder",
  "flavors",
@@ -2242,15 +2373,15 @@ dependencies = [
  "gstreamer",
  "gstreamer-audio",
  "gstreamer-base",
- "muldiv",
  "nom",
  "num-rational",
+ "once_cell",
  "smallvec",
 ]
 
 [[package]]
 name = "gst-plugin-fmp4"
-version = "0.11.0"
+version = "0.12.4"
 dependencies = [
  "anyhow",
  "chrono",
@@ -2264,13 +2395,14 @@ dependencies = [
  "gstreamer-pbutils",
  "gstreamer-video",
  "m3u8-rs",
+ "once_cell",
  "quick-xml",
  "serde",
 ]
 
 [[package]]
 name = "gst-plugin-gif"
-version = "0.11.0"
+version = "0.12.4"
 dependencies = [
  "atomic_refcell",
  "gif",
@@ -2283,8 +2415,9 @@ dependencies = [
 
 [[package]]
 name = "gst-plugin-gtk4"
-version = "0.11.0"
+version = "0.12.4"
 dependencies = [
+ "async-channel",
  "gdk4-wayland",
  "gdk4-win32",
  "gdk4-x11",
@@ -2297,28 +2430,32 @@ dependencies = [
  "gstreamer-gl-x11",
  "gstreamer-video",
  "gtk4",
- "windows-sys",
+ "once_cell",
+ "windows-sys 0.52.0",
 ]
 
 [[package]]
 name = "gst-plugin-hlssink3"
-version = "0.11.0"
+version = "0.12.4"
 dependencies = [
+ "anyhow",
+ "chrono",
  "gio",
- "glib",
  "gst-plugin-version-helper",
  "gstreamer",
+ "gstreamer-app",
  "gstreamer-audio",
- "gstreamer-base",
  "gstreamer-check",
+ "gstreamer-pbutils",
+ "gstreamer-video",
  "m3u8-rs",
  "once_cell",
- "regex",
+ "sprintf",
 ]
 
 [[package]]
 name = "gst-plugin-hsv"
-version = "0.11.0"
+version = "0.12.4"
 dependencies = [
  "byte-slice-cast",
  "gst-plugin-version-helper",
@@ -2328,22 +2465,42 @@ dependencies = [
  "gstreamer-check",
  "gstreamer-video",
  "num-traits",
+ "once_cell",
+]
+
+[[package]]
+name = "gst-plugin-inter"
+version = "0.12.4"
+dependencies = [
+ "anyhow",
+ "futures",
+ "gst-plugin-version-helper",
+ "gstreamer",
+ "gstreamer-app",
+ "gstreamer-check",
+ "gstreamer-utils",
+ "once_cell",
+ "pretty_assertions",
+ "serial_test",
+ "tokio",
+ "tokio-stream",
 ]
 
 [[package]]
 name = "gst-plugin-json"
-version = "0.11.0"
+version = "0.12.4"
 dependencies = [
  "gst-plugin-version-helper",
  "gstreamer",
  "gstreamer-check",
+ "once_cell",
  "serde",
  "serde_json",
 ]
 
 [[package]]
 name = "gst-plugin-lewton"
-version = "0.11.0"
+version = "0.12.4"
 dependencies = [
  "atomic_refcell",
  "byte-slice-cast",
@@ -2352,11 +2509,12 @@ dependencies = [
  "gstreamer-audio",
  "gstreamer-check",
  "lewton",
+ "once_cell",
 ]
 
 [[package]]
 name = "gst-plugin-livesync"
-version = "0.11.0"
+version = "0.12.4"
 dependencies = [
  "gio",
  "gst-plugin-gtk4",
@@ -2365,14 +2523,14 @@ dependencies = [
  "gstreamer-audio",
  "gstreamer-check",
  "gtk4",
- "muldiv",
  "num-rational",
+ "once_cell",
  "parking_lot",
 ]
 
 [[package]]
 name = "gst-plugin-mp4"
-version = "0.11.0"
+version = "0.12.4"
 dependencies = [
  "anyhow",
  "gst-plugin-version-helper",
@@ -2381,17 +2539,20 @@ dependencies = [
  "gstreamer-base",
  "gstreamer-pbutils",
  "gstreamer-video",
+ "once_cell",
  "tempfile",
  "url",
 ]
 
 [[package]]
 name = "gst-plugin-ndi"
-version = "0.11.0"
+version = "0.12.4"
 dependencies = [
+ "anyhow",
  "atomic_refcell",
  "byte-slice-cast",
  "byteorder",
+ "data-encoding",
  "glib",
  "gst-plugin-version-helper",
  "gstreamer",
@@ -2399,11 +2560,15 @@ dependencies = [
  "gstreamer-base",
  "gstreamer-video",
  "libloading",
+ "once_cell",
+ "quick-xml",
+ "smallvec",
+ "thiserror",
 ]
 
 [[package]]
 name = "gst-plugin-onvif"
-version = "0.11.0"
+version = "0.12.4"
 dependencies = [
  "cairo-rs",
  "chrono",
@@ -2412,6 +2577,7 @@ dependencies = [
  "gstreamer-base",
  "gstreamer-rtp",
  "gstreamer-video",
+ "once_cell",
  "pango",
  "pangocairo",
  "xmlparser",
@@ -2420,7 +2586,7 @@ dependencies = [
 
 [[package]]
 name = "gst-plugin-png"
-version = "0.11.0"
+version = "0.12.4"
 dependencies = [
  "gst-plugin-version-helper",
  "gstreamer",
@@ -2433,70 +2599,103 @@ dependencies = [
 
 [[package]]
 name = "gst-plugin-raptorq"
-version = "0.11.0"
+version = "0.12.4"
 dependencies = [
  "gst-plugin-version-helper",
  "gstreamer",
  "gstreamer-base",
  "gstreamer-check",
  "gstreamer-rtp",
+ "once_cell",
  "rand",
  "raptorq",
 ]
 
 [[package]]
 name = "gst-plugin-rav1e"
-version = "0.11.0"
+version = "0.12.4"
 dependencies = [
  "atomic_refcell",
  "gst-plugin-version-helper",
  "gstreamer",
  "gstreamer-check",
  "gstreamer-video",
+ "once_cell",
  "rav1e",
 ]
 
 [[package]]
 name = "gst-plugin-regex"
-version = "0.11.0"
+version = "0.12.4"
 dependencies = [
  "gst-plugin-version-helper",
  "gstreamer",
  "gstreamer-check",
+ "once_cell",
  "regex",
 ]
 
 [[package]]
 name = "gst-plugin-reqwest"
-version = "0.11.0"
+version = "0.12.4"
 dependencies = [
+ "bytes",
  "futures",
  "gst-plugin-version-helper",
  "gstreamer",
  "gstreamer-base",
- "headers",
- "hyper",
+ "headers 0.4.0",
+ "http-body-util",
+ "hyper 1.2.0",
  "mime",
- "reqwest",
+ "once_cell",
+ "pin-project-lite",
+ "reqwest 0.12.3",
  "tokio",
  "url",
 ]
 
 [[package]]
 name = "gst-plugin-rtp"
-version = "0.11.0"
+version = "0.12.4"
 dependencies = [
  "bitstream-io",
- "chrono",
  "gst-plugin-version-helper",
  "gstreamer",
  "gstreamer-check",
  "gstreamer-rtp",
+ "once_cell",
+ "smallvec",
+ "time",
+]
+
+[[package]]
+name = "gst-plugin-rtsp"
+version = "0.12.4"
+dependencies = [
+ "anyhow",
+ "atomic_refcell",
+ "data-encoding",
+ "futures",
+ "gst-plugin-version-helper",
+ "gstreamer",
+ "gstreamer-app",
+ "gstreamer-net",
+ "gstreamer-pbutils",
+ "lru",
+ "once_cell",
+ "rtsp-types",
+ "sdp-types",
+ "socket2 0.5.6",
+ "thiserror",
+ "tokio",
+ "tokio-stream",
+ "url",
 ]
 
 [[package]]
 name = "gst-plugin-sodium"
-version = "0.11.0"
+version = "0.12.4"
 dependencies = [
  "clap",
  "gst-plugin-version-helper",
@@ -2516,7 +2715,7 @@ dependencies = [
 
 [[package]]
 name = "gst-plugin-spotify"
-version = "0.11.0"
+version = "0.12.4"
 dependencies = [
  "anyhow",
  "futures",
@@ -2524,35 +2723,39 @@ dependencies = [
  "gstreamer",
  "gstreamer-base",
  "librespot",
+ "once_cell",
  "tokio",
  "url",
 ]
 
 [[package]]
 name = "gst-plugin-textahead"
-version = "0.11.0"
+version = "0.12.4"
 dependencies = [
  "gst-plugin-version-helper",
  "gstreamer",
+ "once_cell",
 ]
 
 [[package]]
 name = "gst-plugin-textwrap"
-version = "0.11.0"
+version = "0.12.4"
 dependencies = [
  "gst-plugin-version-helper",
  "gstreamer",
  "gstreamer-check",
  "hyphenation",
+ "once_cell",
  "textwrap",
 ]
 
 [[package]]
 name = "gst-plugin-threadshare"
-version = "0.11.0"
+version = "0.12.4"
 dependencies = [
  "async-task",
  "cc",
+ "cfg-if",
  "clap",
  "concurrent-queue",
  "flume",
@@ -2565,21 +2768,21 @@ dependencies = [
  "gstreamer-check",
  "gstreamer-net",
  "gstreamer-rtp",
- "libc",
  "once_cell",
  "pin-project-lite",
  "pkg-config",
  "polling",
  "rand",
+ "rustix",
  "slab",
- "socket2 0.5.3",
+ "socket2 0.5.6",
  "waker-fn",
  "winapi",
 ]
 
 [[package]]
 name = "gst-plugin-togglerecord"
-version = "0.11.0"
+version = "0.12.4"
 dependencies = [
  "either",
  "gio",
@@ -2590,23 +2793,25 @@ dependencies = [
  "gstreamer-check",
  "gstreamer-video",
  "gtk4",
+ "once_cell",
  "parking_lot",
 ]
 
 [[package]]
 name = "gst-plugin-tracers"
-version = "0.11.0"
+version = "0.12.4"
 dependencies = [
  "anyhow",
  "gst-plugin-version-helper",
  "gstreamer",
+ "once_cell",
  "regex",
  "signal-hook",
 ]
 
 [[package]]
 name = "gst-plugin-tutorial"
-version = "0.11.0"
+version = "0.12.4"
 dependencies = [
  "byte-slice-cast",
  "gst-plugin-version-helper",
@@ -2615,11 +2820,12 @@ dependencies = [
  "gstreamer-base",
  "gstreamer-video",
  "num-traits",
+ "once_cell",
 ]
 
 [[package]]
 name = "gst-plugin-uriplaylistbin"
-version = "0.11.0"
+version = "0.12.4"
 dependencies = [
  "anyhow",
  "clap",
@@ -2627,20 +2833,22 @@ dependencies = [
  "gstreamer",
  "gstreamer-app",
  "more-asserts",
+ "once_cell",
  "thiserror",
  "url",
 ]
 
 [[package]]
 name = "gst-plugin-version-helper"
-version = "0.7.5"
+version = "0.8.2"
 dependencies = [
  "chrono",
+ "toml_edit 0.22.9",
 ]
 
 [[package]]
 name = "gst-plugin-videofx"
-version = "0.11.0"
+version = "0.12.4"
 dependencies = [
  "atomic_refcell",
  "cairo-rs",
@@ -2654,24 +2862,26 @@ dependencies = [
  "gstreamer-video",
  "image",
  "image_hasher",
+ "once_cell",
  "rgb",
 ]
 
 [[package]]
 name = "gst-plugin-webp"
-version = "0.11.0"
+version = "0.12.4"
 dependencies = [
  "gst-plugin-version-helper",
  "gstreamer",
  "gstreamer-check",
  "gstreamer-video",
  "libwebp-sys2",
+ "once_cell",
  "pretty_assertions",
 ]
 
 [[package]]
 name = "gst-plugin-webrtc"
-version = "0.11.0"
+version = "0.12.4"
 dependencies = [
  "anyhow",
  "async-recursion",
@@ -2680,12 +2890,13 @@ dependencies = [
  "aws-credential-types",
  "aws-sdk-kinesisvideo",
  "aws-sdk-kinesisvideosignaling",
- "aws-sig-auth",
+ "aws-sigv4",
  "aws-smithy-http",
  "aws-smithy-types",
  "aws-types",
  "chrono",
  "clap",
+ "crossbeam-channel",
  "data-encoding",
  "fastrand",
  "futures",
@@ -2693,19 +2904,22 @@ dependencies = [
  "gst-plugin-webrtc-signalling-protocol",
  "gstreamer",
  "gstreamer-app",
+ "gstreamer-audio",
  "gstreamer-base",
  "gstreamer-rtp",
  "gstreamer-sdp",
  "gstreamer-utils",
  "gstreamer-video",
  "gstreamer-webrtc",
- "http",
+ "http 1.1.0",
  "human_bytes",
  "livekit-api",
  "livekit-protocol",
+ "once_cell",
  "parse_link_header",
+ "rand",
  "regex",
- "reqwest",
+ "reqwest 0.11.27",
  "serde",
  "serde_json",
  "thiserror",
@@ -2718,11 +2932,12 @@ dependencies = [
  "url",
  "url-escape",
  "uuid",
+ "warp",
 ]
 
 [[package]]
 name = "gst-plugin-webrtc-signalling"
-version = "0.11.0"
+version = "0.12.4"
 dependencies = [
  "anyhow",
  "async-tungstenite",
@@ -2744,7 +2959,7 @@ dependencies = [
 
 [[package]]
 name = "gst-plugin-webrtc-signalling-protocol"
-version = "0.11.0"
+version = "0.12.4"
 dependencies = [
  "serde",
  "serde_json",
@@ -2752,7 +2967,7 @@ dependencies = [
 
 [[package]]
 name = "gst-plugin-webrtchttp"
-version = "0.11.0"
+version = "0.12.4"
 dependencies = [
  "async-recursion",
  "bytes",
@@ -2761,15 +2976,16 @@ dependencies = [
  "gstreamer",
  "gstreamer-sdp",
  "gstreamer-webrtc",
+ "once_cell",
  "parse_link_header",
- "reqwest",
+ "reqwest 0.12.3",
  "tokio",
 ]
 
 [[package]]
 name = "gstreamer"
-version = "0.21.0"
-source = "git+https://gitlab.freedesktop.org/gstreamer/gstreamer-rs?branch=0.21#5022d85b8385814669aa797249dce94193eeccc0"
+version = "0.22.4"
+source = "git+https://gitlab.freedesktop.org/gstreamer/gstreamer-rs?branch=0.22#f2d3128bf9d0170288ce479bea021f0886617fac"
 dependencies = [
  "cfg-if",
  "futures-channel",
@@ -2777,14 +2993,15 @@ dependencies = [
  "futures-util",
  "glib",
  "gstreamer-sys",
- "itertools 0.11.0",
+ "itertools 0.12.1",
  "libc",
  "muldiv",
  "num-integer",
  "num-rational",
+ "once_cell",
  "option-operations",
  "paste",
- "pretty-hex",
+ "pin-project-lite",
  "serde",
  "serde_bytes",
  "smallvec",
@@ -2793,8 +3010,8 @@ dependencies = [
 
 [[package]]
 name = "gstreamer-app"
-version = "0.21.0"
-source = "git+https://gitlab.freedesktop.org/gstreamer/gstreamer-rs?branch=0.21#5022d85b8385814669aa797249dce94193eeccc0"
+version = "0.22.4"
+source = "git+https://gitlab.freedesktop.org/gstreamer/gstreamer-rs?branch=0.22#f2d3128bf9d0170288ce479bea021f0886617fac"
 dependencies = [
  "futures-core",
  "futures-sink",
@@ -2807,8 +3024,8 @@ dependencies = [
 
 [[package]]
 name = "gstreamer-app-sys"
-version = "0.21.0"
-source = "git+https://gitlab.freedesktop.org/gstreamer/gstreamer-rs?branch=0.21#5022d85b8385814669aa797249dce94193eeccc0"
+version = "0.22.4"
+source = "git+https://gitlab.freedesktop.org/gstreamer/gstreamer-rs?branch=0.22#f2d3128bf9d0170288ce479bea021f0886617fac"
 dependencies = [
  "glib-sys",
  "gstreamer-base-sys",
@@ -2819,8 +3036,8 @@ dependencies = [
 
 [[package]]
 name = "gstreamer-audio"
-version = "0.21.0"
-source = "git+https://gitlab.freedesktop.org/gstreamer/gstreamer-rs?branch=0.21#5022d85b8385814669aa797249dce94193eeccc0"
+version = "0.22.4"
+source = "git+https://gitlab.freedesktop.org/gstreamer/gstreamer-rs?branch=0.22#f2d3128bf9d0170288ce479bea021f0886617fac"
 dependencies = [
  "cfg-if",
  "glib",
@@ -2828,12 +3045,15 @@ dependencies = [
  "gstreamer-audio-sys",
  "gstreamer-base",
  "libc",
+ "once_cell",
+ "serde",
+ "smallvec",
 ]
 
 [[package]]
 name = "gstreamer-audio-sys"
-version = "0.21.0"
-source = "git+https://gitlab.freedesktop.org/gstreamer/gstreamer-rs?branch=0.21#5022d85b8385814669aa797249dce94193eeccc0"
+version = "0.22.4"
+source = "git+https://gitlab.freedesktop.org/gstreamer/gstreamer-rs?branch=0.22#f2d3128bf9d0170288ce479bea021f0886617fac"
 dependencies = [
  "glib-sys",
  "gobject-sys",
@@ -2845,8 +3065,8 @@ dependencies = [
 
 [[package]]
 name = "gstreamer-base"
-version = "0.21.0"
-source = "git+https://gitlab.freedesktop.org/gstreamer/gstreamer-rs?branch=0.21#5022d85b8385814669aa797249dce94193eeccc0"
+version = "0.22.4"
+source = "git+https://gitlab.freedesktop.org/gstreamer/gstreamer-rs?branch=0.22#f2d3128bf9d0170288ce479bea021f0886617fac"
 dependencies = [
  "atomic_refcell",
  "cfg-if",
@@ -2858,8 +3078,8 @@ dependencies = [
 
 [[package]]
 name = "gstreamer-base-sys"
-version = "0.21.0"
-source = "git+https://gitlab.freedesktop.org/gstreamer/gstreamer-rs?branch=0.21#5022d85b8385814669aa797249dce94193eeccc0"
+version = "0.22.4"
+source = "git+https://gitlab.freedesktop.org/gstreamer/gstreamer-rs?branch=0.22#f2d3128bf9d0170288ce479bea021f0886617fac"
 dependencies = [
  "glib-sys",
  "gobject-sys",
@@ -2870,8 +3090,8 @@ dependencies = [
 
 [[package]]
 name = "gstreamer-check"
-version = "0.21.0"
-source = "git+https://gitlab.freedesktop.org/gstreamer/gstreamer-rs?branch=0.21#5022d85b8385814669aa797249dce94193eeccc0"
+version = "0.22.4"
+source = "git+https://gitlab.freedesktop.org/gstreamer/gstreamer-rs?branch=0.22#f2d3128bf9d0170288ce479bea021f0886617fac"
 dependencies = [
  "glib",
  "gstreamer",
@@ -2880,8 +3100,8 @@ dependencies = [
 
 [[package]]
 name = "gstreamer-check-sys"
-version = "0.21.0"
-source = "git+https://gitlab.freedesktop.org/gstreamer/gstreamer-rs?branch=0.21#5022d85b8385814669aa797249dce94193eeccc0"
+version = "0.22.4"
+source = "git+https://gitlab.freedesktop.org/gstreamer/gstreamer-rs?branch=0.22#f2d3128bf9d0170288ce479bea021f0886617fac"
 dependencies = [
  "glib-sys",
  "gobject-sys",
@@ -2892,8 +3112,8 @@ dependencies = [
 
 [[package]]
 name = "gstreamer-gl"
-version = "0.21.0"
-source = "git+https://gitlab.freedesktop.org/gstreamer/gstreamer-rs?branch=0.21#5022d85b8385814669aa797249dce94193eeccc0"
+version = "0.22.4"
+source = "git+https://gitlab.freedesktop.org/gstreamer/gstreamer-rs?branch=0.22#f2d3128bf9d0170288ce479bea021f0886617fac"
 dependencies = [
  "glib",
  "gstreamer",
@@ -2901,12 +3121,13 @@ dependencies = [
  "gstreamer-gl-sys",
  "gstreamer-video",
  "libc",
+ "once_cell",
 ]
 
 [[package]]
 name = "gstreamer-gl-egl"
-version = "0.21.0"
-source = "git+https://gitlab.freedesktop.org/gstreamer/gstreamer-rs?branch=0.21#5022d85b8385814669aa797249dce94193eeccc0"
+version = "0.22.4"
+source = "git+https://gitlab.freedesktop.org/gstreamer/gstreamer-rs?branch=0.22#f2d3128bf9d0170288ce479bea021f0886617fac"
 dependencies = [
  "glib",
  "gstreamer",
@@ -2917,8 +3138,8 @@ dependencies = [
 
 [[package]]
 name = "gstreamer-gl-egl-sys"
-version = "0.21.0"
-source = "git+https://gitlab.freedesktop.org/gstreamer/gstreamer-rs?branch=0.21#5022d85b8385814669aa797249dce94193eeccc0"
+version = "0.22.4"
+source = "git+https://gitlab.freedesktop.org/gstreamer/gstreamer-rs?branch=0.22#f2d3128bf9d0170288ce479bea021f0886617fac"
 dependencies = [
  "glib-sys",
  "gstreamer-gl-sys",
@@ -2928,8 +3149,8 @@ dependencies = [
 
 [[package]]
 name = "gstreamer-gl-sys"
-version = "0.21.0"
-source = "git+https://gitlab.freedesktop.org/gstreamer/gstreamer-rs?branch=0.21#5022d85b8385814669aa797249dce94193eeccc0"
+version = "0.22.4"
+source = "git+https://gitlab.freedesktop.org/gstreamer/gstreamer-rs?branch=0.22#f2d3128bf9d0170288ce479bea021f0886617fac"
 dependencies = [
  "glib-sys",
  "gobject-sys",
@@ -2942,8 +3163,8 @@ dependencies = [
 
 [[package]]
 name = "gstreamer-gl-wayland"
-version = "0.21.0"
-source = "git+https://gitlab.freedesktop.org/gstreamer/gstreamer-rs?branch=0.21#5022d85b8385814669aa797249dce94193eeccc0"
+version = "0.22.4"
+source = "git+https://gitlab.freedesktop.org/gstreamer/gstreamer-rs?branch=0.22#f2d3128bf9d0170288ce479bea021f0886617fac"
 dependencies = [
  "glib",
  "gstreamer",
@@ -2954,8 +3175,8 @@ dependencies = [
 
 [[package]]
 name = "gstreamer-gl-wayland-sys"
-version = "0.21.0"
-source = "git+https://gitlab.freedesktop.org/gstreamer/gstreamer-rs?branch=0.21#5022d85b8385814669aa797249dce94193eeccc0"
+version = "0.22.4"
+source = "git+https://gitlab.freedesktop.org/gstreamer/gstreamer-rs?branch=0.22#f2d3128bf9d0170288ce479bea021f0886617fac"
 dependencies = [
  "glib-sys",
  "gstreamer-gl-sys",
@@ -2965,8 +3186,8 @@ dependencies = [
 
 [[package]]
 name = "gstreamer-gl-x11"
-version = "0.21.0"
-source = "git+https://gitlab.freedesktop.org/gstreamer/gstreamer-rs?branch=0.21#5022d85b8385814669aa797249dce94193eeccc0"
+version = "0.22.4"
+source = "git+https://gitlab.freedesktop.org/gstreamer/gstreamer-rs?branch=0.22#f2d3128bf9d0170288ce479bea021f0886617fac"
 dependencies = [
  "glib",
  "gstreamer",
@@ -2977,8 +3198,8 @@ dependencies = [
 
 [[package]]
 name = "gstreamer-gl-x11-sys"
-version = "0.21.0"
-source = "git+https://gitlab.freedesktop.org/gstreamer/gstreamer-rs?branch=0.21#5022d85b8385814669aa797249dce94193eeccc0"
+version = "0.22.4"
+source = "git+https://gitlab.freedesktop.org/gstreamer/gstreamer-rs?branch=0.22#f2d3128bf9d0170288ce479bea021f0886617fac"
 dependencies = [
  "glib-sys",
  "gstreamer-gl-sys",
@@ -2988,8 +3209,8 @@ dependencies = [
 
 [[package]]
 name = "gstreamer-net"
-version = "0.21.0"
-source = "git+https://gitlab.freedesktop.org/gstreamer/gstreamer-rs?branch=0.21#5022d85b8385814669aa797249dce94193eeccc0"
+version = "0.22.4"
+source = "git+https://gitlab.freedesktop.org/gstreamer/gstreamer-rs?branch=0.22#f2d3128bf9d0170288ce479bea021f0886617fac"
 dependencies = [
  "gio",
  "glib",
@@ -2999,8 +3220,8 @@ dependencies = [
 
 [[package]]
 name = "gstreamer-net-sys"
-version = "0.21.0"
-source = "git+https://gitlab.freedesktop.org/gstreamer/gstreamer-rs?branch=0.21#5022d85b8385814669aa797249dce94193eeccc0"
+version = "0.22.4"
+source = "git+https://gitlab.freedesktop.org/gstreamer/gstreamer-rs?branch=0.22#f2d3128bf9d0170288ce479bea021f0886617fac"
 dependencies = [
  "gio-sys",
  "glib-sys",
@@ -3011,8 +3232,8 @@ dependencies = [
 
 [[package]]
 name = "gstreamer-pbutils"
-version = "0.21.0"
-source = "git+https://gitlab.freedesktop.org/gstreamer/gstreamer-rs?branch=0.21#5022d85b8385814669aa797249dce94193eeccc0"
+version = "0.22.4"
+source = "git+https://gitlab.freedesktop.org/gstreamer/gstreamer-rs?branch=0.22#f2d3128bf9d0170288ce479bea021f0886617fac"
 dependencies = [
  "glib",
  "gstreamer",
@@ -3025,8 +3246,8 @@ dependencies = [
 
 [[package]]
 name = "gstreamer-pbutils-sys"
-version = "0.21.0"
-source = "git+https://gitlab.freedesktop.org/gstreamer/gstreamer-rs?branch=0.21#5022d85b8385814669aa797249dce94193eeccc0"
+version = "0.22.4"
+source = "git+https://gitlab.freedesktop.org/gstreamer/gstreamer-rs?branch=0.22#f2d3128bf9d0170288ce479bea021f0886617fac"
 dependencies = [
  "glib-sys",
  "gobject-sys",
@@ -3039,8 +3260,8 @@ dependencies = [
 
 [[package]]
 name = "gstreamer-rtp"
-version = "0.21.0"
-source = "git+https://gitlab.freedesktop.org/gstreamer/gstreamer-rs?branch=0.21#5022d85b8385814669aa797249dce94193eeccc0"
+version = "0.22.4"
+source = "git+https://gitlab.freedesktop.org/gstreamer/gstreamer-rs?branch=0.22#f2d3128bf9d0170288ce479bea021f0886617fac"
 dependencies = [
  "glib",
  "gstreamer",
@@ -3050,8 +3271,8 @@ dependencies = [
 
 [[package]]
 name = "gstreamer-rtp-sys"
-version = "0.21.0"
-source = "git+https://gitlab.freedesktop.org/gstreamer/gstreamer-rs?branch=0.21#5022d85b8385814669aa797249dce94193eeccc0"
+version = "0.22.4"
+source = "git+https://gitlab.freedesktop.org/gstreamer/gstreamer-rs?branch=0.22#f2d3128bf9d0170288ce479bea021f0886617fac"
 dependencies = [
  "glib-sys",
  "gstreamer-base-sys",
@@ -3062,8 +3283,8 @@ dependencies = [
 
 [[package]]
 name = "gstreamer-sdp"
-version = "0.21.0"
-source = "git+https://gitlab.freedesktop.org/gstreamer/gstreamer-rs?branch=0.21#5022d85b8385814669aa797249dce94193eeccc0"
+version = "0.22.4"
+source = "git+https://gitlab.freedesktop.org/gstreamer/gstreamer-rs?branch=0.22#f2d3128bf9d0170288ce479bea021f0886617fac"
 dependencies = [
  "glib",
  "gstreamer",
@@ -3072,8 +3293,8 @@ dependencies = [
 
 [[package]]
 name = "gstreamer-sdp-sys"
-version = "0.21.0"
-source = "git+https://gitlab.freedesktop.org/gstreamer/gstreamer-rs?branch=0.21#5022d85b8385814669aa797249dce94193eeccc0"
+version = "0.22.4"
+source = "git+https://gitlab.freedesktop.org/gstreamer/gstreamer-rs?branch=0.22#f2d3128bf9d0170288ce479bea021f0886617fac"
 dependencies = [
  "glib-sys",
  "gstreamer-sys",
@@ -3083,8 +3304,8 @@ dependencies = [
 
 [[package]]
 name = "gstreamer-sys"
-version = "0.21.0"
-source = "git+https://gitlab.freedesktop.org/gstreamer/gstreamer-rs?branch=0.21#5022d85b8385814669aa797249dce94193eeccc0"
+version = "0.22.4"
+source = "git+https://gitlab.freedesktop.org/gstreamer/gstreamer-rs?branch=0.22#f2d3128bf9d0170288ce479bea021f0886617fac"
 dependencies = [
  "glib-sys",
  "gobject-sys",
@@ -3094,19 +3315,20 @@ dependencies = [
 
 [[package]]
 name = "gstreamer-utils"
-version = "0.21.0"
-source = "git+https://gitlab.freedesktop.org/gstreamer/gstreamer-rs?branch=0.21#5022d85b8385814669aa797249dce94193eeccc0"
+version = "0.22.4"
+source = "git+https://gitlab.freedesktop.org/gstreamer/gstreamer-rs?branch=0.22#f2d3128bf9d0170288ce479bea021f0886617fac"
 dependencies = [
  "gstreamer",
  "gstreamer-app",
  "gstreamer-video",
+ "once_cell",
  "thiserror",
 ]
 
 [[package]]
 name = "gstreamer-video"
-version = "0.21.0"
-source = "git+https://gitlab.freedesktop.org/gstreamer/gstreamer-rs?branch=0.21#5022d85b8385814669aa797249dce94193eeccc0"
+version = "0.22.4"
+source = "git+https://gitlab.freedesktop.org/gstreamer/gstreamer-rs?branch=0.22#f2d3128bf9d0170288ce479bea021f0886617fac"
 dependencies = [
  "cfg-if",
  "futures-channel",
@@ -3115,13 +3337,15 @@ dependencies = [
  "gstreamer-base",
  "gstreamer-video-sys",
  "libc",
+ "once_cell",
  "serde",
+ "thiserror",
 ]
 
 [[package]]
 name = "gstreamer-video-sys"
-version = "0.21.0"
-source = "git+https://gitlab.freedesktop.org/gstreamer/gstreamer-rs?branch=0.21#5022d85b8385814669aa797249dce94193eeccc0"
+version = "0.22.4"
+source = "git+https://gitlab.freedesktop.org/gstreamer/gstreamer-rs?branch=0.22#f2d3128bf9d0170288ce479bea021f0886617fac"
 dependencies = [
  "glib-sys",
  "gobject-sys",
@@ -3133,8 +3357,8 @@ dependencies = [
 
 [[package]]
 name = "gstreamer-webrtc"
-version = "0.21.0"
-source = "git+https://gitlab.freedesktop.org/gstreamer/gstreamer-rs?branch=0.21#5022d85b8385814669aa797249dce94193eeccc0"
+version = "0.22.4"
+source = "git+https://gitlab.freedesktop.org/gstreamer/gstreamer-rs?branch=0.22#f2d3128bf9d0170288ce479bea021f0886617fac"
 dependencies = [
  "glib",
  "gstreamer",
@@ -3145,8 +3369,8 @@ dependencies = [
 
 [[package]]
 name = "gstreamer-webrtc-sys"
-version = "0.21.0"
-source = "git+https://gitlab.freedesktop.org/gstreamer/gstreamer-rs?branch=0.21#5022d85b8385814669aa797249dce94193eeccc0"
+version = "0.22.4"
+source = "git+https://gitlab.freedesktop.org/gstreamer/gstreamer-rs?branch=0.22#f2d3128bf9d0170288ce479bea021f0886617fac"
 dependencies = [
  "glib-sys",
  "gstreamer-sdp-sys",
@@ -3157,8 +3381,8 @@ dependencies = [
 
 [[package]]
 name = "gtk4"
-version = "0.7.1"
-source = "git+https://github.com/gtk-rs/gtk4-rs?branch=0.7#9cf490a3afcad0a61233d4f65cfc2f5d2d369e9f"
+version = "0.8.1"
+source = "git+https://github.com/gtk-rs/gtk4-rs?branch=0.8#05d26f6a97a0ccf856b565b4fd796cdf57059084"
 dependencies = [
  "cairo-rs",
  "field-offset",
@@ -3177,8 +3401,8 @@ dependencies = [
 
 [[package]]
 name = "gtk4-macros"
-version = "0.7.1"
-source = "git+https://github.com/gtk-rs/gtk4-rs?branch=0.7#9cf490a3afcad0a61233d4f65cfc2f5d2d369e9f"
+version = "0.8.1"
+source = "git+https://github.com/gtk-rs/gtk4-rs?branch=0.8#05d26f6a97a0ccf856b565b4fd796cdf57059084"
 dependencies = [
  "anyhow",
  "proc-macro-crate",
@@ -3190,8 +3414,8 @@ dependencies = [
 
 [[package]]
 name = "gtk4-sys"
-version = "0.7.1"
-source = "git+https://github.com/gtk-rs/gtk4-rs?branch=0.7#9cf490a3afcad0a61233d4f65cfc2f5d2d369e9f"
+version = "0.8.1"
+source = "git+https://github.com/gtk-rs/gtk4-rs?branch=0.8#05d26f6a97a0ccf856b565b4fd796cdf57059084"
 dependencies = [
  "cairo-sys-rs",
  "gdk-pixbuf-sys",
@@ -3208,17 +3432,36 @@ dependencies = [
 
 [[package]]
 name = "h2"
-version = "0.3.20"
+version = "0.3.26"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "97ec8491ebaf99c8eaa73058b045fe58073cd6be7f596ac993ced0b0a0c01049"
+checksum = "81fe527a889e1532da5c525686d96d4c2e74cdd345badf8dfef9f6b39dd5f5e8"
 dependencies = [
  "bytes",
  "fnv",
  "futures-core",
  "futures-sink",
  "futures-util",
- "http",
- "indexmap 1.9.3",
+ "http 0.2.12",
+ "indexmap 2.2.6",
+ "slab",
+ "tokio",
+ "tokio-util",
+ "tracing",
+]
+
+[[package]]
+name = "h2"
+version = "0.4.4"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "816ec7294445779408f36fe57bc5b7fc1cf59664059096c65f905c1c61f58069"
+dependencies = [
+ "bytes",
+ "fnv",
+ "futures-core",
+ "futures-sink",
+ "futures-util",
+ "http 1.1.0",
+ "indexmap 2.2.6",
  "slab",
  "tokio",
  "tokio-util",
@@ -3233,21 +3476,39 @@ checksum = "8a9ee70c43aaf417c914396645a0fa852624801b24ebb7ae78fe8272889ac888"
 
 [[package]]
 name = "hashbrown"
-version = "0.14.0"
+version = "0.14.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2c6201b9ff9fd90a5a3bac2e56a830d0caa509576f0e503818ee82c181b3437a"
+checksum = "290f1a1d9242c78d09ce40a5e87e7554ee637af1351968159f4952f028f75604"
+dependencies = [
+ "ahash",
+ "allocator-api2",
+]
 
 [[package]]
 name = "headers"
-version = "0.3.8"
+version = "0.3.9"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f3e372db8e5c0d213e0cd0b9be18be2aca3d44cf2fe30a9d46a65581cd454584"
+checksum = "06683b93020a07e3dbcf5f8c0f6d40080d725bea7936fc01ad345c01b97dc270"
 dependencies = [
- "base64 0.13.1",
- "bitflags 1.3.2",
+ "base64 0.21.7",
  "bytes",
- "headers-core",
- "http",
+ "headers-core 0.2.0",
+ "http 0.2.12",
+ "httpdate",
+ "mime",
+ "sha1",
+]
+
+[[package]]
+name = "headers"
+version = "0.4.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "322106e6bd0cba2d5ead589ddb8150a13d7c4217cf80d7c4f682ca994ccc6aa9"
+dependencies = [
+ "base64 0.21.7",
+ "bytes",
+ "headers-core 0.3.0",
+ "http 1.1.0",
  "httpdate",
  "mime",
  "sha1",
@@ -3259,7 +3520,16 @@ version = "0.2.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "e7f66481bfee273957b1f20485a4ff3362987f85b2c236580d81b4eb7a326429"
 dependencies = [
- "http",
+ "http 0.2.12",
+]
+
+[[package]]
+name = "headers-core"
+version = "0.3.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "54b4a22553d4242c49fddb9ba998a99962b5cc6f22cb5a3482bec22522403ce4"
+dependencies = [
+ "http 1.1.0",
 ]
 
 [[package]]
@@ -3269,6 +3539,12 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "95505c38b4572b2d910cecb0281560f54b440a19336cbbcb27bf6ce6adc6f5a8"
 
 [[package]]
+name = "heck"
+version = "0.5.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "2304e00983f87ffb38b55b444b5e3b60a884b5d30c0fca7d82fe33449bbe55ea"
+
+[[package]]
 name = "hermit-abi"
 version = "0.1.19"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -3279,9 +3555,9 @@ dependencies = [
 
 [[package]]
 name = "hermit-abi"
-version = "0.3.2"
+version = "0.3.9"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "443144c8cdadd93ebf52ddb4056d257f5b52c04d3c804e657d19eb73fc33668b"
+checksum = "d231dfb89cfffdbc30e7fc41579ed6066ad03abda9e567ccafae602b97ec5024"
 
 [[package]]
 name = "hex"
@@ -3321,9 +3597,9 @@ dependencies = [
 
 [[package]]
 name = "hrtf"
-version = "0.8.0"
+version = "0.8.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "73088c4a5d7c9d21ee942a54611696f247c4bafc85e9261bf8c409b6857e75be"
+checksum = "0f4de47a84fd55fa33aa5ef337016814fdc869fdad23e7898b5322fa290248e6"
 dependencies = [
  "byteorder",
  "rubato",
@@ -3332,9 +3608,20 @@ dependencies = [
 
 [[package]]
 name = "http"
-version = "0.2.9"
+version = "0.2.12"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "bd6effc99afb63425aff9b05836f029929e345a6148a14b7ecd5ab67af944482"
+checksum = "601cbb57e577e2f5ef5be8e7b83f0f63994f25aa94d673e54a92d5c516d101f1"
+dependencies = [
+ "bytes",
+ "fnv",
+ "itoa",
+]
+
+[[package]]
+name = "http"
+version = "1.1.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "21b9ddb458710bc376481b842f5da65cdf31522de232c1ca8146abce2a358258"
 dependencies = [
  "bytes",
  "fnv",
@@ -3343,12 +3630,35 @@ dependencies = [
 
 [[package]]
 name = "http-body"
-version = "0.4.5"
+version = "0.4.6"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d5f38f16d184e36f2408a55281cd658ecbd3ca05cce6d6510a176eca393e26d1"
+checksum = "7ceab25649e9960c0311ea418d17bee82c0dcec1bd053b5f9a66e265a693bed2"
 dependencies = [
  "bytes",
- "http",
+ "http 0.2.12",
+ "pin-project-lite",
+]
+
+[[package]]
+name = "http-body"
+version = "1.0.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "1cac85db508abc24a2e48553ba12a996e87244a0395ce011e62b37158745d643"
+dependencies = [
+ "bytes",
+ "http 1.1.0",
+]
+
+[[package]]
+name = "http-body-util"
+version = "0.1.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "0475f8b2ac86659c21b64320d5d653f9efe42acd2a4e560073ec61a155a34f1d"
+dependencies = [
+ "bytes",
+ "futures-core",
+ "http 1.1.0",
+ "http-body 1.0.0",
  "pin-project-lite",
 ]
 
@@ -3360,15 +3670,15 @@ checksum = "d897f394bad6a705d5f4104762e116a75639e470d80901eed05a860a95cb1904"
 
 [[package]]
 name = "httpdate"
-version = "1.0.2"
+version = "1.0.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c4a1e36c821dbe04574f602848a19f742f4fb3c98d40449f11bcad18d6b17421"
+checksum = "df3b46402a9d5adb4c86a0cf463f42e19994e3ee891101b1841f30a545cb49a9"
 
 [[package]]
 name = "human_bytes"
-version = "0.4.2"
+version = "0.4.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "27e2b089f28ad15597b48d8c0a8fe94eeb1c1cb26ca99b6f66ac9582ae10c5e6"
+checksum = "91f255a4535024abf7640cb288260811fc14794f62b063652ed349f9a6c2348e"
 
 [[package]]
 name = "humantime"
@@ -3378,22 +3688,22 @@ checksum = "9a3a5bfb195931eeb336b2a7b4d761daec841b97f947d34394601737a7bba5e4"
 
 [[package]]
 name = "hyper"
-version = "0.14.27"
+version = "0.14.28"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ffb1cfd654a8219eaef89881fdb3bb3b1cdc5fa75ded05d6933b2b382e395468"
+checksum = "bf96e135eb83a2a8ddf766e426a841d8ddd7449d5f00d34ea02b41d2f19eef80"
 dependencies = [
  "bytes",
  "futures-channel",
  "futures-core",
  "futures-util",
- "h2",
- "http",
- "http-body",
+ "h2 0.3.26",
+ "http 0.2.12",
+ "http-body 0.4.6",
  "httparse",
  "httpdate",
  "itoa",
  "pin-project-lite",
- "socket2 0.4.9",
+ "socket2 0.5.6",
  "tokio",
  "tower-service",
  "tracing",
@@ -3401,6 +3711,27 @@ dependencies = [
 ]
 
 [[package]]
+name = "hyper"
+version = "1.2.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "186548d73ac615b32a73aafe38fb4f56c0d340e110e5a200bcadbaf2e199263a"
+dependencies = [
+ "bytes",
+ "futures-channel",
+ "futures-util",
+ "h2 0.4.4",
+ "http 1.1.0",
+ "http-body 1.0.0",
+ "httparse",
+ "httpdate",
+ "itoa",
+ "pin-project-lite",
+ "smallvec",
+ "tokio",
+ "want",
+]
+
+[[package]]
 name = "hyper-proxy"
 version = "0.9.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -3408,22 +3739,22 @@ checksum = "ca815a891b24fdfb243fa3239c86154392b0953ee584aa1a2a1f66d20cbe75cc"
 dependencies = [
  "bytes",
  "futures",
- "headers",
- "http",
- "hyper",
+ "headers 0.3.9",
+ "http 0.2.12",
+ "hyper 0.14.28",
  "tokio",
  "tower-service",
 ]
 
 [[package]]
 name = "hyper-rustls"
-version = "0.24.1"
+version = "0.24.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8d78e1e73ec14cf7375674f74d7dde185c8206fd9dea6fb6295e8a98098aaa97"
+checksum = "ec3efd23720e2049821a693cbc7e65ea87c72f1c58ff2f9522ff332b1491e590"
 dependencies = [
  "futures-util",
- "http",
- "hyper",
+ "http 0.2.12",
+ "hyper 0.14.28",
  "log",
  "rustls",
  "rustls-native-certs",
@@ -3438,13 +3769,49 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "d6183ddfa99b85da61a140bea0efc93fdf56ceaa041b37d553518030827f9905"
 dependencies = [
  "bytes",
- "hyper",
+ "hyper 0.14.28",
  "native-tls",
  "tokio",
  "tokio-native-tls",
 ]
 
 [[package]]
+name = "hyper-tls"
+version = "0.6.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "70206fc6890eaca9fde8a0bf71caa2ddfc9fe045ac9e5c70df101a7dbde866e0"
+dependencies = [
+ "bytes",
+ "http-body-util",
+ "hyper 1.2.0",
+ "hyper-util",
+ "native-tls",
+ "tokio",
+ "tokio-native-tls",
+ "tower-service",
+]
+
+[[package]]
+name = "hyper-util"
+version = "0.1.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "ca38ef113da30126bbff9cd1705f9273e15d45498615d138b0c20279ac7a76aa"
+dependencies = [
+ "bytes",
+ "futures-channel",
+ "futures-util",
+ "http 1.1.0",
+ "http-body 1.0.0",
+ "hyper 1.2.0",
+ "pin-project-lite",
+ "socket2 0.5.6",
+ "tokio",
+ "tower",
+ "tower-service",
+ "tracing",
+]
+
+[[package]]
 name = "hyphenation"
 version = "0.8.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -3469,16 +3836,16 @@ dependencies = [
 
 [[package]]
 name = "iana-time-zone"
-version = "0.1.57"
+version = "0.1.60"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2fad5b825842d2b38bd206f3e81d6957625fd7f0a361e345c30e01a0ae2dd613"
+checksum = "e7ffbb5a1b541ea2561f8c41c087286cc091e21e556a4f09a8f6cbf17b69b141"
 dependencies = [
  "android_system_properties",
  "core-foundation-sys",
  "iana-time-zone-haiku",
  "js-sys",
  "wasm-bindgen",
- "windows",
+ "windows-core",
 ]
 
 [[package]]
@@ -3498,17 +3865,6 @@ checksum = "b9e0384b61958566e926dc50660321d12159025e767c18e043daf26b70104c39"
 
 [[package]]
 name = "idna"
-version = "0.2.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "418a0a6fab821475f634efe3ccc45c013f742efe03d853e8d3355d5cb850ecf8"
-dependencies = [
- "matches",
- "unicode-bidi",
- "unicode-normalization",
-]
-
-[[package]]
-name = "idna"
 version = "0.3.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "e14ddfc70884202db2244c223200c204c2bda1bc6e0998d11b5e024d657209e6"
@@ -3519,9 +3875,9 @@ dependencies = [
 
 [[package]]
 name = "idna"
-version = "0.4.0"
+version = "0.5.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7d20d6b07bfbc108882d88ed8e37d39636dcc260e15e30c45e6ba089610b917c"
+checksum = "634d9b1461af396cad843f47fdba5597a4f9e6ddd4bfb6ff5d85028c25cb12f6"
 dependencies = [
  "unicode-bidi",
  "unicode-normalization",
@@ -3539,14 +3895,13 @@ dependencies = [
 
 [[package]]
 name = "image"
-version = "0.24.7"
+version = "0.24.9"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6f3dfdbdd72063086ff443e297b61695500514b1e41095b6fb9a5ab48a70a711"
+checksum = "5690139d2f55868e080017335e4b94cb7414274c74f1669c84fb5feba2c9f69d"
 dependencies = [
  "bytemuck",
  "byteorder",
  "color_quant",
- "num-rational",
  "num-traits",
 ]
 
@@ -3556,7 +3911,7 @@ version = "1.2.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "8f9e64a8c472ea9f81ac448e3b488fd82dcdfce6434cf880882bf36bfb5c268a"
 dependencies = [
- "base64 0.21.2",
+ "base64 0.21.7",
  "image",
  "rustdct",
  "serde",
@@ -3565,9 +3920,9 @@ dependencies = [
 
 [[package]]
 name = "imgref"
-version = "1.9.4"
+version = "1.10.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b2cf49df1085dcfb171460e4592597b84abe50d900fb83efb6e41b20fefd6c2c"
+checksum = "44feda355f4159a7c757171a77de25daf6411e217b4cabd03bd6650690468126"
 
 [[package]]
 name = "indexmap"
@@ -3582,41 +3937,41 @@ dependencies = [
 
 [[package]]
 name = "indexmap"
-version = "2.0.0"
+version = "2.2.6"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d5477fe2230a79769d8dc68e0eabf5437907c0457a5614a9e8dddb67f65eb65d"
+checksum = "168fb715dda47215e360912c096649d23d58bf392ac62f73919e831745e40f26"
 dependencies = [
  "equivalent",
- "hashbrown 0.14.0",
+ "hashbrown 0.14.3",
  "serde",
 ]
 
 [[package]]
 name = "interpolate_name"
-version = "0.2.3"
+version = "0.2.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b4b35f4a811037cfdcd44c5db40678464b2d5d248fc1abeeaaa125b370d47f17"
+checksum = "c34819042dc3d3971c46c2190835914dfbe0c3c13f61449b2997f4e9722dfa60"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 1.0.109",
+ "syn 2.0.58",
 ]
 
 [[package]]
 name = "ipnet"
-version = "2.8.0"
+version = "2.9.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "28b29a3cd74f0f4598934efe3aeba42bae0eb4680554128851ebbecb02af14e6"
+checksum = "8f518f335dce6725a761382244631d86cf0ccb2863413590b31338feb467f9c3"
 
 [[package]]
 name = "is-terminal"
-version = "0.4.9"
+version = "0.4.12"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "cb0889898416213fab133e1d33a0e5858a48177452750691bde3666d0fdbaf8b"
+checksum = "f23ff5ef2b80d608d61efee834934d862cd92461afc0560dedf493e4c033738b"
 dependencies = [
- "hermit-abi 0.3.2",
- "rustix",
- "windows-sys",
+ "hermit-abi 0.3.9",
+ "libc",
+ "windows-sys 0.52.0",
 ]
 
 [[package]]
@@ -3630,53 +3985,54 @@ dependencies = [
 
 [[package]]
 name = "itertools"
-version = "0.10.5"
+version = "0.11.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b0fd2260e829bddf4cb6ea802289de2f86d6a7a690192fbe91b3f46e0f2c8473"
+checksum = "b1c173a5686ce8bfa551b3563d0c2170bf24ca44da99c7ca4bfdab5418c3fe57"
 dependencies = [
  "either",
 ]
 
 [[package]]
 name = "itertools"
-version = "0.11.0"
+version = "0.12.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b1c173a5686ce8bfa551b3563d0c2170bf24ca44da99c7ca4bfdab5418c3fe57"
+checksum = "ba291022dbbd398a455acf126c1e341954079855bc60dfdda641363bd6922569"
 dependencies = [
  "either",
 ]
 
 [[package]]
 name = "itoa"
-version = "1.0.9"
+version = "1.0.11"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "af150ab688ff2122fcef229be89cb50dd66af9e01a4ff320cc137eecc9bacc38"
+checksum = "49f1f14873335454500d59611f1cf4a4b0f786f9ac11f4312a78e4cf2566695b"
 
 [[package]]
 name = "jobserver"
-version = "0.1.26"
+version = "0.1.28"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "936cfd212a0155903bcbc060e316fb6cc7cbf2e1907329391ebadc1fe0ce77c2"
+checksum = "ab46a6e9526ddef3ae7f787c06f0f2600639ba80ea3eade3d8e670a2230f51d6"
 dependencies = [
  "libc",
 ]
 
 [[package]]
 name = "js-sys"
-version = "0.3.64"
+version = "0.3.69"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c5f195fe497f702db0f318b07fdd68edb16955aed830df8363d837542f8f935a"
+checksum = "29c15563dc2726973df627357ce0c9ddddbea194836909d655df6a75d2cf296d"
 dependencies = [
  "wasm-bindgen",
 ]
 
 [[package]]
 name = "jsonwebtoken"
-version = "8.3.0"
+version = "9.2.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6971da4d9c3aa03c3d8f3ff0f4155b534aad021292003895a469716b2a230378"
+checksum = "5c7ea04a7c5c055c175f189b6dc6ba036fd62306b58c66c9f6389036c503a3f4"
 dependencies = [
- "base64 0.21.2",
+ "base64 0.21.7",
+ "js-sys",
  "ring",
  "serde",
  "serde_json",
@@ -3684,9 +4040,9 @@ dependencies = [
 
 [[package]]
 name = "khronos-egl"
-version = "5.0.0"
+version = "6.0.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d1382b16c04aeb821453d6215a3c80ba78f24c6595c5aa85653378aabe0c83e3"
+checksum = "6aae1df220ece3c0ada96b8153459b67eebe9ae9212258bb0134ae60416fdf76"
 dependencies = [
  "libc",
 ]
@@ -3710,35 +4066,36 @@ dependencies = [
 
 [[package]]
 name = "libc"
-version = "0.2.147"
+version = "0.2.153"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b4668fb0ea861c1df094127ac5f1da3409a82116a4ba74fca2e58ef927159bb3"
+checksum = "9c198f91728a82281a64e1f4f9eeb25d82cb32a5de251c6bd1b5154d63a8e7bd"
 
 [[package]]
 name = "libfuzzer-sys"
-version = "0.3.5"
+version = "0.4.7"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "fcf184a4b6b274f82a5df6b357da6055d3e82272327bba281c28bbba6f1664ef"
+checksum = "a96cfd5557eb82f2b83fed4955246c988d331975a002961b07c81584d107e7f7"
 dependencies = [
  "arbitrary",
  "cc",
+ "once_cell",
 ]
 
 [[package]]
 name = "libloading"
-version = "0.8.0"
+version = "0.8.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d580318f95776505201b28cf98eb1fa5e4be3b689633ba6a3e6cd880ff22d8cb"
+checksum = "0c2a198fb6b0eada2a8df47933734e6d35d350665a33a3593d7164fa52c75c19"
 dependencies = [
  "cfg-if",
- "windows-sys",
+ "windows-targets 0.48.5",
 ]
 
 [[package]]
 name = "libm"
-version = "0.2.7"
+version = "0.2.8"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f7012b1bbb0719e1097c47611d3898568c546d597c2e74d66f6087edd5233ff4"
+checksum = "4ec2a862134d2a7d32d7983ddcdd1c4923530833c9f2ea1a44fc5fa473989058"
 
 [[package]]
 name = "libmdns"
@@ -3751,10 +4108,10 @@ dependencies = [
  "hostname",
  "if-addrs",
  "log",
- "multimap",
+ "multimap 0.8.3",
  "nix",
  "rand",
- "socket2 0.4.9",
+ "socket2 0.4.10",
  "thiserror",
  "tokio",
  "winapi",
@@ -3771,7 +4128,7 @@ dependencies = [
  "futures-util",
  "getopts",
  "hex",
- "hyper",
+ "hyper 0.14.28",
  "librespot-audio",
  "librespot-connect",
  "librespot-core",
@@ -3838,9 +4195,9 @@ dependencies = [
  "futures-core",
  "futures-util",
  "hmac 0.11.0",
- "http",
+ "http 0.2.12",
  "httparse",
- "hyper",
+ "hyper 0.14.28",
  "hyper-proxy",
  "librespot-protocol",
  "log",
@@ -3876,7 +4233,7 @@ dependencies = [
  "form_urlencoded",
  "futures-core",
  "hmac 0.11.0",
- "hyper",
+ "hyper 0.14.28",
  "libmdns",
  "librespot-core",
  "log",
@@ -3922,7 +4279,7 @@ dependencies = [
  "shell-words",
  "thiserror",
  "tokio",
- "zerocopy",
+ "zerocopy 0.6.6",
 ]
 
 [[package]]
@@ -3950,9 +4307,9 @@ dependencies = [
 
 [[package]]
 name = "libwebp-sys2"
-version = "0.1.7"
+version = "0.1.9"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "74f9c6964201c51319f16a796dc947a73961646eba49f584187b12de9970d077"
+checksum = "0e2ae528b6c8f543825990b24c00cfd8fe64dde126c8288f4972b18e3d558072"
 dependencies = [
  "cc",
  "cfg-if",
@@ -3963,15 +4320,15 @@ dependencies = [
 
 [[package]]
 name = "linux-raw-sys"
-version = "0.4.5"
+version = "0.4.13"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "57bcfdad1b858c2db7c38303a6d2ad4dfaf5eb53dfeb0910128b2c26d6158503"
+checksum = "01cda141df6706de531b6c46c3a33ecca755538219bd484262fa09410c13539c"
 
 [[package]]
 name = "livekit-api"
-version = "0.1.3"
+version = "0.3.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e0d4c5d731bb0da7b313c982ee32300e7caf1ee0595c0d1e57d00f43248c0c47"
+checksum = "e20c3fc3de5944ce6b5c8da4084cf828bbae7216671e32e83b767ce61feeb7e0"
 dependencies = [
  "futures-util",
  "jsonwebtoken",
@@ -3979,34 +4336,38 @@ dependencies = [
  "log",
  "parking_lot",
  "prost",
- "reqwest",
+ "reqwest 0.11.27",
+ "scopeguard",
  "serde",
- "serde_json",
  "sha2",
  "thiserror",
  "tokio",
- "tokio-tungstenite",
+ "tokio-tungstenite 0.20.1",
  "url",
 ]
 
 [[package]]
 name = "livekit-protocol"
-version = "0.1.3"
+version = "0.3.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "81bd731959a8dccc17248499b9952693f593bee4bb79186bf60d180b4097be59"
+checksum = "1a1bd23257110be29d024d8d816adff70df18ea1d22ceb1aab6f3ad4aab0d523"
 dependencies = [
  "futures-util",
  "parking_lot",
+ "pbjson",
+ "pbjson-types",
  "prost",
  "prost-types",
+ "serde",
+ "thiserror",
  "tokio",
 ]
 
 [[package]]
 name = "lock_api"
-version = "0.4.10"
+version = "0.4.11"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c1cc9717a20b1bb222f333e6a92fd32f7d8a18ddc5a3191a11af45dcbf4dcd16"
+checksum = "3c168f8615b12bc01f9c17e2eb0cc07dcae1940121185446edc3744920e8ef45"
 dependencies = [
  "autocfg",
  "scopeguard",
@@ -4014,15 +4375,24 @@ dependencies = [
 
 [[package]]
 name = "log"
-version = "0.4.19"
+version = "0.4.21"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b06a4cde4c0f271a446782e3eff8de789548ce57dbc8eca9292c27f4a42004b4"
+checksum = "90ed8c1e510134f979dbc4f070f87d4313098b704861a105fe34231c70a3901c"
+
+[[package]]
+name = "lru"
+version = "0.12.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "d3262e75e648fce39813cb56ac41f3c3e3f65217ebf3844d818d1f9398cfb0dc"
+dependencies = [
+ "hashbrown 0.14.3",
+]
 
 [[package]]
 name = "m3u8-rs"
-version = "5.0.4"
+version = "5.0.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d39af8845edca961e3286dcbafeb9e6407d3df6a616ef086847162d46f438d75"
+checksum = "0c1d7ba86f7ea62f17f4310c55e93244619ddc7dadfc7e565de1967e4e41e6e7"
 dependencies = [
  "chrono",
  "nom",
@@ -4044,12 +4414,6 @@ dependencies = [
 ]
 
 [[package]]
-name = "matches"
-version = "0.1.10"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2532096657941c2fea9c289d370a250971c689d4f143798ff67113ec042024a5"
-
-[[package]]
 name = "maybe-rayon"
 version = "0.1.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -4061,18 +4425,19 @@ dependencies = [
 
 [[package]]
 name = "md-5"
-version = "0.10.5"
+version = "0.10.6"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6365506850d44bff6e2fbcb5176cf63650e48bd45ef2fe2665ae1570e0f4b9ca"
+checksum = "d89e7ee0cfbedfc4da3340218492196241d89eefb6dab27de5df917a6d2e78cf"
 dependencies = [
+ "cfg-if",
  "digest 0.10.7",
 ]
 
 [[package]]
 name = "memchr"
-version = "2.5.0"
+version = "2.7.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2dffe52ecf27772e601905b7522cb4ef790d2cc203488bbd0e2fe85fcb74566d"
+checksum = "6c8640c5d730cb13ebd907d8d04b52f55ac9a2eec55b440c8892f40d56c76c1d"
 
 [[package]]
 name = "memoffset"
@@ -4085,9 +4450,9 @@ dependencies = [
 
 [[package]]
 name = "memoffset"
-version = "0.9.0"
+version = "0.9.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5a634b1c61a95585bd15607c6ab0c4e5b226e695ff2800ba0cdccddf208c406c"
+checksum = "488016bfae457b036d996092f6cb448677611ce4449e970ceaf42695203f218a"
 dependencies = [
  "autocfg",
 ]
@@ -4099,6 +4464,16 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "6877bb514081ee2a7ff5ef9de3281f14a4dd4bceac4c09388074a6b5df8a139a"
 
 [[package]]
+name = "mime_guess"
+version = "2.0.4"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "4192263c238a5f0d0c6bfd21f336a313a4ce1c450542449ca191bb657b4642ef"
+dependencies = [
+ "mime",
+ "unicase",
+]
+
+[[package]]
 name = "minimal-lexical"
 version = "0.2.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -4106,9 +4481,9 @@ checksum = "68354c5c6bd36d73ff3feceb05efa59b6acb7626617f4962be322a825e61f79a"
 
 [[package]]
 name = "miniz_oxide"
-version = "0.7.1"
+version = "0.7.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e7810e0be55b428ada41041c41f32c9f1a42817901b4ccf45fa3d4b6561e74c7"
+checksum = "9d811f3e15f28568be3407c8e7fdb6514c1cda3cb30683f15b6a1a1dc4ea14a7"
 dependencies = [
  "adler",
  "simd-adler32",
@@ -4116,13 +4491,13 @@ dependencies = [
 
 [[package]]
 name = "mio"
-version = "0.8.8"
+version = "0.8.11"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "927a765cd3fc26206e66b296465fa9d3e5ab003e651c1b3c060e7956d96b19d2"
+checksum = "a4a650543ca06a924e8b371db273b2756685faae30f8487da1b56505a8f78b0c"
 dependencies = [
  "libc",
- "wasi 0.11.0+wasi-snapshot-preview1",
- "windows-sys",
+ "wasi",
+ "windows-sys 0.48.0",
 ]
 
 [[package]]
@@ -4138,6 +4513,24 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "956787520e75e9bd233246045d19f42fb73242759cc57fba9611d940ae96d4b0"
 
 [[package]]
+name = "multer"
+version = "2.1.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "01acbdc23469fd8fe07ab135923371d5f5a422fbf9c522158677c8eb15bc51c2"
+dependencies = [
+ "bytes",
+ "encoding_rs",
+ "futures-util",
+ "http 0.2.12",
+ "httparse",
+ "log",
+ "memchr",
+ "mime",
+ "spin",
+ "version_check",
+]
+
+[[package]]
 name = "multimap"
 version = "0.8.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -4147,6 +4540,12 @@ dependencies = [
 ]
 
 [[package]]
+name = "multimap"
+version = "0.10.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "defc4c55412d89136f966bbb339008b474350e5e6e78d2714439c386b3137a03"
+
+[[package]]
 name = "nanorand"
 version = "0.7.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -4184,9 +4583,9 @@ dependencies = [
 
 [[package]]
 name = "new_debug_unreachable"
-version = "1.0.4"
+version = "1.0.6"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e4a24736216ec316047a1fc4252e27dabb04218aa4a3f37c6e7ddbf1f9782b54"
+checksum = "650eef8c711430f1a879fdd01d4745a7deea475becfb90269c06775983bbf086"
 
 [[package]]
 name = "nix"
@@ -4239,9 +4638,9 @@ dependencies = [
 
 [[package]]
 name = "num-bigint"
-version = "0.4.3"
+version = "0.4.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f93ab6289c7b344a8a9f60f88d80aa20032336fe78da341afc91c8a2341fc75f"
+checksum = "608e7659b5c3d7cba262d894801b9ec9d00de989e8a82bd4bef91d08da45cdc0"
 dependencies = [
  "autocfg",
  "num-integer",
@@ -4251,42 +4650,36 @@ dependencies = [
 
 [[package]]
 name = "num-complex"
-version = "0.4.3"
+version = "0.4.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "02e0d21255c828d6f128a1e41534206671e8c3ea0c62f32291e808dc82cff17d"
+checksum = "23c6602fda94a57c990fe0df199a035d83576b496aa29f4e634a8ac6004e68a6"
 dependencies = [
  "num-traits",
 ]
 
 [[package]]
-name = "num-derive"
-version = "0.3.3"
+name = "num-conv"
+version = "0.1.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "876a53fff98e03a936a674b29568b0e605f06b29372c2489ff4de23f1949743d"
-dependencies = [
- "proc-macro2",
- "quote",
- "syn 1.0.109",
-]
+checksum = "51d515d32fb182ee37cda2ccdcb92950d6a3c2893aa280e540671c2cd0f3b1d9"
 
 [[package]]
 name = "num-derive"
-version = "0.4.0"
+version = "0.4.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9e6a0fd4f737c707bd9086cc16c925f294943eb62eb71499e9fd4cf71f8b9f4e"
+checksum = "ed3955f1a9c7c0c15e092f9c887db08b1fc683305fdf6eb6684f22555355e202"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.28",
+ "syn 2.0.58",
 ]
 
 [[package]]
 name = "num-integer"
-version = "0.1.45"
+version = "0.1.46"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "225d3389fb3509a24c93f5c29eb6bde2586b98d9f016636dff58d7c6f7569cd9"
+checksum = "7969661fd2958a5cb096e56c8e1ad0444ac2bbcd0061bd28660485a44879858f"
 dependencies = [
- "autocfg",
  "num-traits",
 ]
 
@@ -4305,9 +4698,9 @@ dependencies = [
 
 [[package]]
 name = "num-traits"
-version = "0.2.16"
+version = "0.2.18"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f30b0abd723be7e2ffca1272140fac1a2f084c77ec3e123c192b66af1ee9e6c2"
+checksum = "da0df0e5185db44f69b44f26786fe401b6c293d1907744beaa7fa62b2e5a517a"
 dependencies = [
  "autocfg",
  "libm",
@@ -4319,15 +4712,15 @@ version = "1.16.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "4161fcb6d602d4d2081af7c3a45852d875a03dd337a6bfdd6e06407b61342a43"
 dependencies = [
- "hermit-abi 0.3.2",
+ "hermit-abi 0.3.9",
  "libc",
 ]
 
 [[package]]
 name = "object"
-version = "0.31.1"
+version = "0.32.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8bda667d9f2b5051b8833f59f3bf748b28ef54f850f4fcb389a252aa383866d1"
+checksum = "a6a622008b6e321afc04970976f62ee297fdbaa6f95318ca343e3eebb9648441"
 dependencies = [
  "memchr",
 ]
@@ -4343,23 +4736,23 @@ dependencies = [
 
 [[package]]
 name = "once_cell"
-version = "1.18.0"
+version = "1.19.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "dd8b5dd2ae5ed71462c540258bedcb51965123ad7e7ccf4b9a8cafaa4a63576d"
+checksum = "3fdb12b2476b595f9358c5161aa467c2438859caa136dec86c26fdd2efe17b92"
 
 [[package]]
 name = "opaque-debug"
-version = "0.3.0"
+version = "0.3.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "624a8340c38c1b80fd549087862da4ba43e08858af025b236e509b6649fc13d5"
+checksum = "c08d65885ee38876c4f86fa503fb49d7b507c2b62552df7c70b2fce627e06381"
 
 [[package]]
 name = "openssl"
-version = "0.10.56"
+version = "0.10.64"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "729b745ad4a5575dd06a3e1af1414bd330ee561c01b3899eb584baeaa8def17e"
+checksum = "95a0481286a310808298130d22dd1fef0fa571e05a8f44ec801801e84b216b1f"
 dependencies = [
- "bitflags 1.3.2",
+ "bitflags 2.5.0",
  "cfg-if",
  "foreign-types",
  "libc",
@@ -4376,7 +4769,7 @@ checksum = "a948666b637a0f465e8564c73e89d4dde00d72d4d473cc972f390fc3dcee7d9c"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.28",
+ "syn 2.0.58",
 ]
 
 [[package]]
@@ -4387,9 +4780,9 @@ checksum = "ff011a302c396a5197692431fc1948019154afc178baf7d8e37367442a4601cf"
 
 [[package]]
 name = "openssl-sys"
-version = "0.9.91"
+version = "0.9.102"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "866b5f16f90776b9bb8dc1e1802ac6f0513de3a7a7465867bfbc563dc737faac"
+checksum = "c597637d56fbc83893a35eb0dd04b2b8e7a50c91e64e9493e398b5df4fb45fa2"
 dependencies = [
  "cc",
  "libc",
@@ -4419,21 +4812,31 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "b15813163c1d831bf4a13c3610c05c0d03b39feb07f7e09fa234dac9b15aaf39"
 
 [[package]]
+name = "p256"
+version = "0.11.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "51f44edd08f51e2ade572f141051021c5af22677e42b7dd28a88155151c33594"
+dependencies = [
+ "ecdsa",
+ "elliptic-curve",
+ "sha2",
+]
+
+[[package]]
 name = "pango"
-version = "0.18.1"
-source = "git+https://github.com/gtk-rs/gtk-rs-core?branch=0.18#854c9b0592fb3a3865caa3e8538a5dda98399c0c"
+version = "0.19.3"
+source = "git+https://github.com/gtk-rs/gtk-rs-core?branch=0.19#5e944f2eff8b344591666754f7ea3b359943ee8c"
 dependencies = [
  "gio",
  "glib",
  "libc",
- "once_cell",
  "pango-sys",
 ]
 
 [[package]]
 name = "pango-sys"
-version = "0.18.1"
-source = "git+https://github.com/gtk-rs/gtk-rs-core?branch=0.18#854c9b0592fb3a3865caa3e8538a5dda98399c0c"
+version = "0.19.3"
+source = "git+https://github.com/gtk-rs/gtk-rs-core?branch=0.19#5e944f2eff8b344591666754f7ea3b359943ee8c"
 dependencies = [
  "glib-sys",
  "gobject-sys",
@@ -4443,8 +4846,8 @@ dependencies = [
 
 [[package]]
 name = "pangocairo"
-version = "0.18.1"
-source = "git+https://github.com/gtk-rs/gtk-rs-core?branch=0.18#854c9b0592fb3a3865caa3e8538a5dda98399c0c"
+version = "0.19.3"
+source = "git+https://github.com/gtk-rs/gtk-rs-core?branch=0.19#5e944f2eff8b344591666754f7ea3b359943ee8c"
 dependencies = [
  "cairo-rs",
  "glib",
@@ -4455,8 +4858,8 @@ dependencies = [
 
 [[package]]
 name = "pangocairo-sys"
-version = "0.18.1"
-source = "git+https://github.com/gtk-rs/gtk-rs-core?branch=0.18#854c9b0592fb3a3865caa3e8538a5dda98399c0c"
+version = "0.19.3"
+source = "git+https://github.com/gtk-rs/gtk-rs-core?branch=0.19#5e944f2eff8b344591666754f7ea3b359943ee8c"
 dependencies = [
  "cairo-sys-rs",
  "glib-sys",
@@ -4466,6 +4869,12 @@ dependencies = [
 ]
 
 [[package]]
+name = "parking"
+version = "2.2.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "bb813b8af86854136c6922af0598d719255ecb2179515e6e7730d468f05c9cae"
+
+[[package]]
 name = "parking_lot"
 version = "0.12.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -4477,18 +4886,18 @@ dependencies = [
 
 [[package]]
 name = "parking_lot_core"
-version = "0.9.8"
+version = "0.9.9"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "93f00c865fe7cabf650081affecd3871070f26767e7b2070a3ffae14c654b447"
+checksum = "4c42a9226546d68acdd9c0a280d17ce19bfe27a46bf68784e4066115788d008e"
 dependencies = [
  "backtrace",
  "cfg-if",
  "libc",
  "petgraph",
- "redox_syscall 0.3.5",
+ "redox_syscall",
  "smallvec",
  "thread-id",
- "windows-targets",
+ "windows-targets 0.48.5",
 ]
 
 [[package]]
@@ -4497,7 +4906,7 @@ version = "0.3.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "3687fe9debbbf2a019f381a8bc6b42049b22647449b39af54b3013985c0cf6de"
 dependencies = [
- "http",
+ "http 0.2.12",
  "lazy_static",
  "regex",
  "url",
@@ -4510,6 +4919,43 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "de3145af08024dea9fa9914f381a17b8fc6034dfb00f3a84013f7ff43f29ed4c"
 
 [[package]]
+name = "pbjson"
+version = "0.6.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "1030c719b0ec2a2d25a5df729d6cff1acf3cc230bf766f4f97833591f7577b90"
+dependencies = [
+ "base64 0.21.7",
+ "serde",
+]
+
+[[package]]
+name = "pbjson-build"
+version = "0.6.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "2580e33f2292d34be285c5bc3dba5259542b083cfad6037b6d70345f24dcb735"
+dependencies = [
+ "heck 0.4.1",
+ "itertools 0.11.0",
+ "prost",
+ "prost-types",
+]
+
+[[package]]
+name = "pbjson-types"
+version = "0.6.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "18f596653ba4ac51bdecbb4ef6773bc7f56042dc13927910de1684ad3d32aa12"
+dependencies = [
+ "bytes",
+ "chrono",
+ "pbjson",
+ "pbjson-build",
+ "prost",
+ "prost-build",
+ "serde",
+]
+
+[[package]]
 name = "pbkdf2"
 version = "0.8.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -4521,45 +4967,45 @@ dependencies = [
 
 [[package]]
 name = "percent-encoding"
-version = "2.3.0"
+version = "2.3.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9b2a4787296e9989611394c33f193f676704af1686e70b8f8033ab5ba9a35a94"
+checksum = "e3148f5046208a5d56bcfc03053e3ca6334e51da8dfb19b6cdc8b306fae3283e"
 
 [[package]]
 name = "petgraph"
-version = "0.6.3"
+version = "0.6.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4dd7d28ee937e54fe3080c91faa1c3a46c06de6252988a7f4592ba2310ef22a4"
+checksum = "e1d3afd2628e69da2be385eb6f2fd57c8ac7977ceeff6dc166ff1657b0e386a9"
 dependencies = [
  "fixedbitset",
- "indexmap 1.9.3",
+ "indexmap 2.2.6",
 ]
 
 [[package]]
 name = "pin-project"
-version = "1.1.3"
+version = "1.1.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "fda4ed1c6c173e3fc7a83629421152e01d7b1f9b7f65fb301e490e8cfc656422"
+checksum = "b6bf43b791c5b9e34c3d182969b4abb522f9343702850a2e57f460d00d09b4b3"
 dependencies = [
  "pin-project-internal",
 ]
 
 [[package]]
 name = "pin-project-internal"
-version = "1.1.3"
+version = "1.1.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4359fd9c9171ec6e8c62926d6faaf553a8dc3f64e1507e76da7911b4f6a04405"
+checksum = "2f38a4412a78282e09a2cf38d195ea5420d15ba0602cb375210efbc877243965"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.28",
+ "syn 2.0.58",
 ]
 
 [[package]]
 name = "pin-project-lite"
-version = "0.2.12"
+version = "0.2.14"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "12cc1b0bf1727a77a54b6654e7b5f1af8604923edc8b81885f8ec92f9e3f0a05"
+checksum = "bda66fc9667c18cb2758a2ac84d1167245054bcf85d5d1aaa6923f45801bdd02"
 
 [[package]]
 name = "pin-utils"
@@ -4568,16 +5014,26 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "8b870d8c151b6f2fb93e84a13146138f05d02ed11c7e7c54f8826aaaf7c9f184"
 
 [[package]]
+name = "pkcs8"
+version = "0.9.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "9eca2c590a5f85da82668fa685c09ce2888b9430e83299debf1f34b65fd4a4ba"
+dependencies = [
+ "der",
+ "spki",
+]
+
+[[package]]
 name = "pkg-config"
-version = "0.3.27"
+version = "0.3.30"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "26072860ba924cbfa98ea39c8c19b4dd6a4a25423dbdf219c1eca91aa0cf6964"
+checksum = "d231b230927b5e4ad203db57bbcbee2802f6bce620b1e4a9024a07d94e2907ec"
 
 [[package]]
 name = "png"
-version = "0.17.9"
+version = "0.17.13"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "59871cc5b6cce7eaccca5a802b4173377a1c2ba90654246789a8fa2334426d11"
+checksum = "06e4b0d3d1312775e782c86c91a111aa1f910cbb65e1337f9975b5f9a554b5e1"
 dependencies = [
  "bitflags 1.3.2",
  "crc32fast",
@@ -4594,31 +5050,30 @@ checksum = "c135f38778ad324d9e9ee68690bac2c1a51f340fdf96ca13e2ab3914eb2e51d8"
 
 [[package]]
 name = "polling"
-version = "2.8.0"
+version = "3.6.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4b2d323e8ca7996b3e23126511a523f7e62924d93ecd5ae73b333815b0eb3dce"
+checksum = "e0c976a60b2d7e99d6f229e414670a9b85d13ac305cc6d1e9c134de58c5aaaf6"
 dependencies = [
- "autocfg",
- "bitflags 1.3.2",
  "cfg-if",
  "concurrent-queue",
- "libc",
- "log",
+ "hermit-abi 0.3.9",
  "pin-project-lite",
- "windows-sys",
+ "rustix",
+ "tracing",
+ "windows-sys 0.52.0",
 ]
 
 [[package]]
-name = "ppv-lite86"
-version = "0.2.17"
+name = "powerfmt"
+version = "0.2.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5b40af805b3121feab8a3c29f04d8ad262fa8e0561883e7653e024ae4479e6de"
+checksum = "439ee305def115ba05938db6eb1644ff94165c5ab5e9420d1c1bcedbba909391"
 
 [[package]]
-name = "pretty-hex"
-version = "0.3.0"
+name = "ppv-lite86"
+version = "0.2.17"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c6fa0831dd7cc608c38a5e323422a0077678fa5744aa2be4ad91c4ece8eec8d5"
+checksum = "5b40af805b3121feab8a3c29f04d8ad262fa8e0561883e7653e024ae4479e6de"
 
 [[package]]
 name = "pretty_assertions"
@@ -4631,6 +5086,16 @@ dependencies = [
 ]
 
 [[package]]
+name = "prettyplease"
+version = "0.2.17"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "8d3928fb5db768cb86f891ff014f0144589297e3c6a1aba6ed7cecfdace270c7"
+dependencies = [
+ "proc-macro2",
+ "syn 2.0.58",
+]
+
+[[package]]
 name = "primal-check"
 version = "0.3.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -4641,9 +5106,9 @@ dependencies = [
 
 [[package]]
 name = "priority-queue"
-version = "1.3.2"
+version = "1.4.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "fff39edfcaec0d64e8d0da38564fad195d2d51b680940295fcc307366e101e61"
+checksum = "a0bda9164fe05bc9225752d54aae413343c36f684380005398a6a8fde95fe785"
 dependencies = [
  "autocfg",
  "indexmap 1.9.3",
@@ -4651,12 +5116,11 @@ dependencies = [
 
 [[package]]
 name = "proc-macro-crate"
-version = "1.3.1"
+version = "3.1.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7f4c021e1093a56626774e81216a4ce732a735e5bad4868a03f3ed65ca0c3919"
+checksum = "6d37c51ca738a55da99dc0c4a34860fd675453b8b36209178c2249bb13651284"
 dependencies = [
- "once_cell",
- "toml_edit",
+ "toml_edit 0.21.1",
 ]
 
 [[package]]
@@ -4685,41 +5149,81 @@ dependencies = [
 
 [[package]]
 name = "proc-macro2"
-version = "1.0.66"
+version = "1.0.79"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "18fb31db3f9bddb2ea821cde30a9f70117e3f119938b5ee630b7403aa6e2ead9"
+checksum = "e835ff2298f5721608eb1a980ecaee1aef2c132bf95ecc026a11b7bf3c01c02e"
 dependencies = [
  "unicode-ident",
 ]
 
 [[package]]
+name = "profiling"
+version = "1.0.15"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "43d84d1d7a6ac92673717f9f6d1518374ef257669c24ebc5ac25d5033828be58"
+dependencies = [
+ "profiling-procmacros",
+]
+
+[[package]]
+name = "profiling-procmacros"
+version = "1.0.15"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "8021cf59c8ec9c432cfc2526ac6b8aa508ecaf29cd415f271b8406c1b851c3fd"
+dependencies = [
+ "quote",
+ "syn 2.0.58",
+]
+
+[[package]]
 name = "prost"
-version = "0.11.9"
+version = "0.12.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0b82eaa1d779e9a4bc1c3217db8ffbeabaae1dca241bf70183242128d48681cd"
+checksum = "d0f5d036824e4761737860779c906171497f6d55681139d8312388f8fe398922"
 dependencies = [
  "bytes",
  "prost-derive",
 ]
 
 [[package]]
+name = "prost-build"
+version = "0.12.4"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "80b776a1b2dc779f5ee0641f8ade0125bc1298dd41a9a0c16d8bd57b42d222b1"
+dependencies = [
+ "bytes",
+ "heck 0.4.1",
+ "itertools 0.12.1",
+ "log",
+ "multimap 0.10.0",
+ "once_cell",
+ "petgraph",
+ "prettyplease",
+ "prost",
+ "prost-types",
+ "regex",
+ "syn 2.0.58",
+ "tempfile",
+]
+
+[[package]]
 name = "prost-derive"
-version = "0.11.9"
+version = "0.12.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e5d2d8d10f3c6ded6da8b05b5fb3b8a5082514344d56c9f871412d29b4e075b4"
+checksum = "19de2de2a00075bf566bee3bd4db014b11587e84184d3f7a791bc17f1a8e9e48"
 dependencies = [
  "anyhow",
- "itertools 0.10.5",
+ "itertools 0.12.1",
  "proc-macro2",
  "quote",
- "syn 1.0.109",
+ "syn 2.0.58",
 ]
 
 [[package]]
 name = "prost-types"
-version = "0.11.9"
+version = "0.12.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "213622a1460818959ac1181aaeb2dc9c7f63df720db7d788b3e24eacd1983e13"
+checksum = "3235c33eb02c1f1e212abdbe34c78b264b038fb58ca612664343271e36e55ffe"
 dependencies = [
  "prost",
 ]
@@ -4767,9 +5271,9 @@ dependencies = [
 
 [[package]]
 name = "quick-xml"
-version = "0.30.0"
+version = "0.31.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "eff6510e86862b57b210fd8cbe8ed3f0d7d600b9c2863cd4549a2e033c66e956"
+checksum = "1004a344b30a54e2ee58d66a71b32d2db2feb0a31f9a2d302bf0536f15de2a33"
 dependencies = [
  "memchr",
  "serde",
@@ -4777,9 +5281,9 @@ dependencies = [
 
 [[package]]
 name = "quote"
-version = "1.0.32"
+version = "1.0.35"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "50f3b39ccfb720540debaa0164757101c08ecb8d326b15358ce76a62c7e85965"
+checksum = "291ec9ab5efd934aaf503a6466c5d5251535d108ee747472c3977cc5acc868ef"
 dependencies = [
  "proc-macro2",
 ]
@@ -4826,15 +5330,15 @@ dependencies = [
 
 [[package]]
 name = "raptorq"
-version = "1.7.0"
+version = "1.8.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "655b020bbf5c89791160a30f0d4706d8ec7aa5718d6a198f6df19c400e4f4470"
+checksum = "7cc8cd0bcb2d520fff368264b5a6295e064c60955349517d09b14473afae4856"
 
 [[package]]
 name = "rav1e"
-version = "0.6.6"
+version = "0.7.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "16c383692a5e7abd9f6d1eddb1a5e0269f859392387883361bb09e5555852ec1"
+checksum = "cd87ce80a7665b1cce111f8a16c1f3929f6547ce91ade6addf4ec86a8dda5ce9"
 dependencies = [
  "arbitrary",
  "arg_enum_proc_macro",
@@ -4845,7 +5349,7 @@ dependencies = [
  "cc",
  "cfg-if",
  "interpolate_name",
- "itertools 0.10.5",
+ "itertools 0.12.1",
  "libc",
  "libfuzzer-sys",
  "log",
@@ -4853,14 +5357,13 @@ dependencies = [
  "nasm-rs",
  "new_debug_unreachable",
  "noop_proc_macro",
- "num-derive 0.3.3",
+ "num-derive",
  "num-traits",
  "once_cell",
  "paste",
+ "profiling",
  "rand",
  "rand_chacha",
- "rust_hawktracer",
- "rustc_version",
  "simd_helpers",
  "system-deps",
  "thiserror",
@@ -4869,9 +5372,9 @@ dependencies = [
 
 [[package]]
 name = "rayon"
-version = "1.7.0"
+version = "1.10.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1d2df5196e37bcc87abebc0053e20787d73847bb33134a69841207dd0a47f03b"
+checksum = "b418a60154510ca1a002a752ca9714984e21e4241e804d32555251faf8b78ffa"
 dependencies = [
  "either",
  "rayon-core",
@@ -4879,53 +5382,42 @@ dependencies = [
 
 [[package]]
 name = "rayon-core"
-version = "1.11.0"
+version = "1.12.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4b8f95bd6966f5c87776639160a66bd8ab9895d9d4ab01ddba9fc60661aebe8d"
+checksum = "1465873a3dfdaa8ae7cb14b4383657caab0b3e8a0aa9ae8e04b044854c8dfce2"
 dependencies = [
- "crossbeam-channel",
  "crossbeam-deque",
  "crossbeam-utils",
- "num_cpus",
 ]
 
 [[package]]
 name = "realfft"
-version = "2.0.1"
+version = "3.3.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d7695c87f31dc3644760f23fb59a3fed47659703abf76cf2d111f03b9e712342"
+checksum = "953d9f7e5cdd80963547b456251296efc2626ed4e3cbf36c869d9564e0220571"
 dependencies = [
  "rustfft",
 ]
 
 [[package]]
 name = "redox_syscall"
-version = "0.2.16"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "fb5a58c1855b4b6819d59012155603f0b22ad30cad752600aadfcb695265519a"
-dependencies = [
- "bitflags 1.3.2",
-]
-
-[[package]]
-name = "redox_syscall"
-version = "0.3.5"
+version = "0.4.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "567664f262709473930a4bf9e51bf2ebf3348f2e748ccc50dea20646858f8f29"
+checksum = "4722d768eff46b75989dd134e5c353f0d6296e5aaa3132e776cbdb56be7731aa"
 dependencies = [
  "bitflags 1.3.2",
 ]
 
 [[package]]
 name = "regex"
-version = "1.9.3"
+version = "1.10.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "81bc1d4caf89fac26a70747fe603c130093b53c773888797a6329091246d651a"
+checksum = "c117dbdfde9c8308975b6a18d71f3f385c89461f7b3fb054288ecf2a2058ba4c"
 dependencies = [
  "aho-corasick",
  "memchr",
- "regex-automata 0.3.6",
- "regex-syntax 0.7.4",
+ "regex-automata 0.4.6",
+ "regex-syntax 0.8.3",
 ]
 
 [[package]]
@@ -4939,16 +5431,22 @@ dependencies = [
 
 [[package]]
 name = "regex-automata"
-version = "0.3.6"
+version = "0.4.6"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "fed1ceff11a1dddaee50c9dc8e4938bd106e9d89ae372f192311e7da498e3b69"
+checksum = "86b83b8b9847f9bf95ef68afb0b8e6cdb80f498442f5179a29fad448fcc1eaea"
 dependencies = [
  "aho-corasick",
  "memchr",
- "regex-syntax 0.7.4",
+ "regex-syntax 0.8.3",
 ]
 
 [[package]]
+name = "regex-lite"
+version = "0.1.5"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "30b661b2f27137bdbc16f00eda72866a92bb28af1753ffbd56744fb6e2e9cd8e"
+
+[[package]]
 name = "regex-syntax"
 version = "0.6.29"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -4956,29 +5454,71 @@ checksum = "f162c6dd7b008981e4d40210aca20b4bd0f9b60ca9271061b07f78537722f2e1"
 
 [[package]]
 name = "regex-syntax"
-version = "0.7.4"
+version = "0.8.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "adad44e29e4c806119491a7f06f03de4d1af22c3a680dd47f1e6e179439d1f56"
+
+[[package]]
+name = "reqwest"
+version = "0.11.27"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e5ea92a5b6195c6ef2a0295ea818b312502c6fc94dde986c5553242e18fd4ce2"
+checksum = "dd67538700a17451e7cba03ac727fb961abb7607553461627b97de0b89cf4a62"
+dependencies = [
+ "base64 0.21.7",
+ "bytes",
+ "encoding_rs",
+ "futures-core",
+ "futures-util",
+ "h2 0.3.26",
+ "http 0.2.12",
+ "http-body 0.4.6",
+ "hyper 0.14.28",
+ "hyper-tls 0.5.0",
+ "ipnet",
+ "js-sys",
+ "log",
+ "mime",
+ "native-tls",
+ "once_cell",
+ "percent-encoding",
+ "pin-project-lite",
+ "rustls-pemfile 1.0.4",
+ "serde",
+ "serde_json",
+ "serde_urlencoded",
+ "sync_wrapper",
+ "system-configuration",
+ "tokio",
+ "tokio-native-tls",
+ "tower-service",
+ "url",
+ "wasm-bindgen",
+ "wasm-bindgen-futures",
+ "web-sys",
+ "winreg 0.50.0",
+]
 
 [[package]]
 name = "reqwest"
-version = "0.11.18"
+version = "0.12.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "cde824a14b7c14f85caff81225f411faacc04a2013f41670f41443742b1c1c55"
+checksum = "3e6cc1e89e689536eb5aeede61520e874df5a4707df811cd5da4aa5fbb2aae19"
 dependencies = [
  "async-compression",
- "base64 0.21.2",
+ "base64 0.22.0",
  "bytes",
  "cookie",
  "cookie_store",
  "encoding_rs",
  "futures-core",
  "futures-util",
- "h2",
- "http",
- "http-body",
- "hyper",
- "hyper-tls",
+ "h2 0.4.4",
+ "http 1.1.0",
+ "http-body 1.0.0",
+ "http-body-util",
+ "hyper 1.2.0",
+ "hyper-tls 0.6.0",
+ "hyper-util",
  "ipnet",
  "js-sys",
  "log",
@@ -4987,9 +5527,12 @@ dependencies = [
  "once_cell",
  "percent-encoding",
  "pin-project-lite",
+ "rustls-pemfile 2.1.2",
  "serde",
  "serde_json",
  "serde_urlencoded",
+ "sync_wrapper",
+ "system-configuration",
  "tokio",
  "tokio-native-tls",
  "tokio-util",
@@ -4998,31 +5541,42 @@ dependencies = [
  "wasm-bindgen",
  "wasm-bindgen-futures",
  "web-sys",
- "winreg",
+ "winreg 0.52.0",
+]
+
+[[package]]
+name = "rfc6979"
+version = "0.3.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "7743f17af12fa0b03b803ba12cd6a8d9483a587e89c69445e3909655c0b9fabb"
+dependencies = [
+ "crypto-bigint 0.4.9",
+ "hmac 0.12.1",
+ "zeroize",
 ]
 
 [[package]]
 name = "rgb"
-version = "0.8.36"
+version = "0.8.37"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "20ec2d3e3fc7a92ced357df9cebd5a10b6fb2aa1ee797bf7e9ce2f17dffc8f59"
+checksum = "05aaa8004b64fd573fc9d002f4e632d51ad4f026c2b5ba95fcb6c2f32c2c47d8"
 dependencies = [
  "bytemuck",
 ]
 
 [[package]]
 name = "ring"
-version = "0.16.20"
+version = "0.17.8"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3053cf52e236a3ed746dfc745aa9cacf1b791d846bdaf412f60a8d7d6e17c8fc"
+checksum = "c17fa4cb658e3583423e915b9f3acc01cceaee1860e33d59ebae66adc3a2dc0d"
 dependencies = [
  "cc",
+ "cfg-if",
+ "getrandom",
  "libc",
- "once_cell",
- "spin 0.5.2",
+ "spin",
  "untrusted",
- "web-sys",
- "winapi",
+ "windows-sys 0.52.0",
 ]
 
 [[package]]
@@ -5038,41 +5592,30 @@ dependencies = [
 ]
 
 [[package]]
-name = "rubato"
-version = "0.10.1"
+name = "rtsp-types"
+version = "0.1.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "610bbefcfef7f43cbe275995b6077b74f34480efce293c30327bf44fdad871ed"
+checksum = "6c5c11e0af63f1ac6057f9029f7ddf1c677bade51e449f75be25c8b29f59474c"
 dependencies = [
- "log",
- "num-complex",
- "num-integer",
- "num-traits",
- "realfft",
+ "cookie-factory",
+ "nom",
+ "tinyvec",
+ "url",
 ]
 
 [[package]]
-name = "rust_hawktracer"
-version = "0.7.0"
+name = "rubato"
+version = "0.14.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e3480a29b927f66c6e06527be7f49ef4d291a01d694ec1fe85b0de71d6b02ac1"
+checksum = "e6dd52e80cfc21894deadf554a5673002938ae4625f7a283e536f9cf7c17b0d5"
 dependencies = [
- "rust_hawktracer_normal_macro",
- "rust_hawktracer_proc_macro",
+ "num-complex",
+ "num-integer",
+ "num-traits",
+ "realfft",
 ]
 
 [[package]]
-name = "rust_hawktracer_normal_macro"
-version = "0.4.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8a570059949e1dcdc6f35228fa389f54c2c84dfe0c94c05022baacd56eacd2e9"
-
-[[package]]
-name = "rust_hawktracer_proc_macro"
-version = "0.4.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "cb626abdbed5e93f031baae60d72032f56bc964e11ac2ff65f2ba3ed98d6d3e1"
-
-[[package]]
 name = "rustc-demangle"
 version = "0.1.23"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -5098,9 +5641,9 @@ dependencies = [
 
 [[package]]
 name = "rustfft"
-version = "6.1.0"
+version = "6.2.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e17d4f6cbdb180c9f4b2a26bbf01c4e647f1e1dea22fe8eb9db54198b32f9434"
+checksum = "43806561bc506d0c5d160643ad742e3161049ac01027b5e6d7524091fd401d86"
 dependencies = [
  "num-complex",
  "num-integer",
@@ -5113,22 +5656,22 @@ dependencies = [
 
 [[package]]
 name = "rustix"
-version = "0.38.7"
+version = "0.38.32"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "172891ebdceb05aa0005f533a6cbfca599ddd7d966f6f5d4d9b2e70478e70399"
+checksum = "65e04861e65f21776e67888bfbea442b3642beaa0138fdb1dd7a84a52dffdb89"
 dependencies = [
- "bitflags 2.3.3",
+ "bitflags 2.5.0",
  "errno",
  "libc",
  "linux-raw-sys",
- "windows-sys",
+ "windows-sys 0.52.0",
 ]
 
 [[package]]
 name = "rustls"
-version = "0.21.6"
+version = "0.21.10"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1d1feddffcfcc0b33f5c6ce9a29e341e4cd59c3f78e7ee45f4a40c038b1d6cbb"
+checksum = "f9d5a6813c0759e4609cd494e8e725babae6a2ca7b62a5536a13daaec6fcb7ba"
 dependencies = [
  "log",
  "ring",
@@ -5143,25 +5686,41 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "a9aace74cb666635c918e9c12bc0d348266037aa8eb599b5cba565709a8dff00"
 dependencies = [
  "openssl-probe",
- "rustls-pemfile",
+ "rustls-pemfile 1.0.4",
  "schannel",
  "security-framework",
 ]
 
 [[package]]
 name = "rustls-pemfile"
-version = "1.0.3"
+version = "1.0.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2d3987094b1d07b653b7dfdc3f70ce9a1da9c51ac18c1b06b662e4f9a0e9f4b2"
+checksum = "1c74cae0a4cf6ccbbf5f359f08efdf8ee7e1dc532573bf0db71968cb56b1448c"
 dependencies = [
- "base64 0.21.2",
+ "base64 0.21.7",
 ]
 
 [[package]]
+name = "rustls-pemfile"
+version = "2.1.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "29993a25686778eb88d4189742cd713c9bce943bc54251a33509dc63cbacf73d"
+dependencies = [
+ "base64 0.22.0",
+ "rustls-pki-types",
+]
+
+[[package]]
+name = "rustls-pki-types"
+version = "1.4.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "ecd36cc4259e3e4514335c4a138c6b43171a8d61d8f5c9348f9fc7529416f247"
+
+[[package]]
 name = "rustls-webpki"
-version = "0.101.3"
+version = "0.101.7"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "261e9e0888cba427c3316e6322805653c9425240b6fd96cee7cb671ab70ab8d0"
+checksum = "8b6275d1ee7a1cd780b64aca7726599a1dbc893b1e64144529e55c3c2f745765"
 dependencies = [
  "ring",
  "untrusted",
@@ -5169,9 +5728,9 @@ dependencies = [
 
 [[package]]
 name = "ryu"
-version = "1.0.15"
+version = "1.0.17"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1ad4cc8da4ef723ed60bced201181d83791ad433213d8c24efffda1eec85d741"
+checksum = "e86697c916019a8588c99b5fac3cead74ec0b4b819707a682fd4d23fa0ce1ba1"
 
 [[package]]
 name = "same-file"
@@ -5184,14 +5743,20 @@ dependencies = [
 
 [[package]]
 name = "schannel"
-version = "0.1.22"
+version = "0.1.23"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0c3733bf4cf7ea0880754e19cb5a462007c4a8c1914bff372ccc95b464f1df88"
+checksum = "fbc91545643bcf3a0bbb6569265615222618bdf33ce4ffbbd13c4bbd4c093534"
 dependencies = [
- "windows-sys",
+ "windows-sys 0.52.0",
 ]
 
 [[package]]
+name = "scoped-tls"
+version = "1.0.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "e1cf6437eb19a8f4a6cc0f7dca544973b0b78843adbfeb3683d1a94a0024a294"
+
+[[package]]
 name = "scopeguard"
 version = "1.2.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -5199,19 +5764,43 @@ checksum = "94143f37725109f92c262ed2cf5e59bce7498c01bcc1502d7b9afe439a4e9f49"
 
 [[package]]
 name = "sct"
-version = "0.7.0"
+version = "0.7.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d53dcdb7c9f8158937a7981b48accfd39a43af418591a5d008c7b22b5e1b7ca4"
+checksum = "da046153aa2352493d6cb7da4b6e5c0c057d8a1d0a9aa8560baffdd945acd414"
 dependencies = [
  "ring",
  "untrusted",
 ]
 
 [[package]]
+name = "sdp-types"
+version = "0.1.6"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "3bc1e17b07a224c21a31b5f7ed74cbbb189d26a0b8cdbfc8b57fa5940c89f086"
+dependencies = [
+ "bstr",
+ "fallible-iterator",
+]
+
+[[package]]
+name = "sec1"
+version = "0.3.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "3be24c1842290c45df0a7bf069e0c268a747ad05a192f2fd7dcfdbc1cba40928"
+dependencies = [
+ "base16ct",
+ "der",
+ "generic-array",
+ "pkcs8",
+ "subtle",
+ "zeroize",
+]
+
+[[package]]
 name = "security-framework"
-version = "2.9.2"
+version = "2.10.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "05b64fb303737d99b81884b2c63433e9ae28abebe5eb5045dcdd175dc2ecf4de"
+checksum = "770452e37cad93e0a50d5abc3990d2bc351c36d0328f86cefec2f2fb206eaef6"
 dependencies = [
  "bitflags 1.3.2",
  "core-foundation",
@@ -5222,9 +5811,9 @@ dependencies = [
 
 [[package]]
 name = "security-framework-sys"
-version = "2.9.1"
+version = "2.10.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e932934257d3b408ed8f30db49d85ea163bfe74961f017f405b025af298f0c7a"
+checksum = "41f3cc463c0ef97e11c3461a9d3787412d30e8e7eb907c79180c4a57bf7c04ef"
 dependencies = [
  "core-foundation-sys",
  "libc",
@@ -5232,47 +5821,44 @@ dependencies = [
 
 [[package]]
 name = "semver"
-version = "1.0.18"
+version = "1.0.22"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b0293b4b29daaf487284529cc2f5675b8e57c61f70167ba415a463651fd6a918"
-dependencies = [
- "serde",
-]
+checksum = "92d43fe69e652f3df9bdc2b85b2854a0825b86e4fb76bc44d945137d053639ca"
 
 [[package]]
 name = "serde"
-version = "1.0.183"
+version = "1.0.197"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "32ac8da02677876d532745a130fc9d8e6edfa81a269b107c5b00829b91d8eb3c"
+checksum = "3fb1c873e1b9b056a4dc4c0c198b24c3ffa059243875552b2bd0933b1aee4ce2"
 dependencies = [
  "serde_derive",
 ]
 
 [[package]]
 name = "serde_bytes"
-version = "0.11.12"
+version = "0.11.14"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ab33ec92f677585af6d88c65593ae2375adde54efdbf16d597f2cbc7a6d368ff"
+checksum = "8b8497c313fd43ab992087548117643f6fcd935cbf36f176ffda0aacf9591734"
 dependencies = [
  "serde",
 ]
 
 [[package]]
 name = "serde_derive"
-version = "1.0.183"
+version = "1.0.197"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "aafe972d60b0b9bee71a91b92fee2d4fb3c9d7e8f6b179aa99f27203d99a4816"
+checksum = "7eb0b34b42edc17f6b7cac84a52a1c5f0e1bb2227e997ca9011ea3dd34e8610b"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.28",
+ "syn 2.0.58",
 ]
 
 [[package]]
 name = "serde_json"
-version = "1.0.104"
+version = "1.0.115"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "076066c5f1078eac5b722a31827a8832fe108bed65dfa75e233c89f8206e976c"
+checksum = "12dc5c46daa8e9fdf4f5e71b6cf9a53f2487da0e86e55808e2d35539666497dd"
 dependencies = [
  "itoa",
  "ryu",
@@ -5280,10 +5866,20 @@ dependencies = [
 ]
 
 [[package]]
+name = "serde_path_to_error"
+version = "0.1.16"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "af99884400da37c88f5e9146b7f1fd0fbcae8f6eec4e9da38b67d05486f814a6"
+dependencies = [
+ "itoa",
+ "serde",
+]
+
+[[package]]
 name = "serde_spanned"
-version = "0.6.3"
+version = "0.6.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "96426c9936fd7a0124915f9185ea1d20aa9445cc9821142f0a73bc9207a2e186"
+checksum = "eb3622f419d1296904700073ea6cc23ad690adbd66f13ea683df73298736f0c1"
 dependencies = [
  "serde",
 ]
@@ -5302,31 +5898,57 @@ dependencies = [
 
 [[package]]
 name = "serde_with"
-version = "3.2.0"
+version = "3.7.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1402f54f9a3b9e2efe71c1cea24e648acce55887983553eeb858cf3115acfd49"
+checksum = "ee80b0e361bbf88fd2f6e242ccd19cfda072cb0faa6ae694ecee08199938569a"
 dependencies = [
- "base64 0.21.2",
+ "base64 0.21.7",
  "chrono",
  "hex",
  "indexmap 1.9.3",
- "indexmap 2.0.0",
+ "indexmap 2.2.6",
  "serde",
+ "serde_derive",
  "serde_json",
  "serde_with_macros",
- "time 0.3.25",
+ "time",
 ]
 
 [[package]]
 name = "serde_with_macros"
-version = "3.2.0"
+version = "3.7.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9197f1ad0e3c173a0222d3c4404fb04c3afe87e962bcb327af73e8301fa203c7"
+checksum = "6561dc161a9224638a31d876ccdfefbc1df91d3f3a8342eddb35f055d48c7655"
 dependencies = [
  "darling",
  "proc-macro2",
  "quote",
- "syn 2.0.28",
+ "syn 2.0.58",
+]
+
+[[package]]
+name = "serial_test"
+version = "3.0.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "953ad9342b3aaca7cb43c45c097dd008d4907070394bd0751a0aa8817e5a018d"
+dependencies = [
+ "dashmap",
+ "futures",
+ "lazy_static",
+ "log",
+ "parking_lot",
+ "serial_test_derive",
+]
+
+[[package]]
+name = "serial_test_derive"
+version = "3.0.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "b93fb4adc70021ac1b47f7d45e8cc4169baaa7ea58483bc5b721d19a26202212"
+dependencies = [
+ "proc-macro2",
+ "quote",
+ "syn 2.0.58",
 ]
 
 [[package]]
@@ -5344,9 +5966,9 @@ dependencies = [
 
 [[package]]
 name = "sha1"
-version = "0.10.5"
+version = "0.10.6"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f04293dc80c3993519f2d7f6f511707ee7094fe0c6d3406feb330cdb3540eba3"
+checksum = "e3bf829a2d51ab4a5ddf1352d8470c140cadc8301b2ae1789db023f01cedd6ba"
 dependencies = [
  "cfg-if",
  "cpufeatures",
@@ -5355,9 +5977,9 @@ dependencies = [
 
 [[package]]
 name = "sha2"
-version = "0.10.7"
+version = "0.10.8"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "479fb9d862239e610720565ca91403019f2f00410f1864c5aa7479b950a76ed8"
+checksum = "793db75ad2bcafc3ffa7c68b215fee268f537982cd901d132f89c6343f3a3dc8"
 dependencies = [
  "cfg-if",
  "cpufeatures",
@@ -5375,9 +5997,9 @@ dependencies = [
 
 [[package]]
 name = "sharded-slab"
-version = "0.1.4"
+version = "0.1.7"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "900fba806f70c630b0a382d0d825e17a0f19fcd059a2ade1ff237bcddf446b31"
+checksum = "f40ca3c46823713e0d4209592e8d6e826aa57e928f09752619fc696c499637f6"
 dependencies = [
  "lazy_static",
 ]
@@ -5412,6 +6034,10 @@ name = "signature"
 version = "1.6.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "74233d3b3b2f6d4b006dc19dee745e73e2a6bfb6f93607cd3b02bd5b00797d7c"
+dependencies = [
+ "digest 0.10.7",
+ "rand_core",
+]
 
 [[package]]
 name = "simd-adler32"
@@ -5430,30 +6056,30 @@ dependencies = [
 
 [[package]]
 name = "slab"
-version = "0.4.8"
+version = "0.4.9"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6528351c9bc8ab22353f9d776db39a20288e8d6c37ef8cfe3317cf875eecfc2d"
+checksum = "8f92a496fb766b417c996b9c5e57daf2f7ad3b0bebe1ccfca4856390e3d3bb67"
 dependencies = [
  "autocfg",
 ]
 
 [[package]]
 name = "smallvec"
-version = "1.11.0"
+version = "1.13.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "62bb4feee49fdd9f707ef802e22365a35de4b7b299de4763d44bfea899442ff9"
+checksum = "3c5e1a9a646d36c3599cd173a41282daf47c44583ad367b8e6837255952e5c67"
 
 [[package]]
 name = "smawk"
-version = "0.3.1"
+version = "0.3.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f67ad224767faa3c7d8b6d91985b78e70a1324408abcb1cfcc2be4c06bc06043"
+checksum = "b7c388c1b5e93756d0c740965c41e8822f866621d41acbdf6336a6a168f8840c"
 
 [[package]]
 name = "socket2"
-version = "0.4.9"
+version = "0.4.10"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "64a4a911eed85daf18834cfaa86a79b7d266ff93ff5ba14005426219480ed662"
+checksum = "9f7916fc008ca5542385b89a3d3ce689953c143e9304a9bf8beec1de48994c0d"
 dependencies = [
  "libc",
  "winapi",
@@ -5461,12 +6087,12 @@ dependencies = [
 
 [[package]]
 name = "socket2"
-version = "0.5.3"
+version = "0.5.6"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2538b18701741680e0322a2302176d3253a35388e2e62f172f64f4f16605f877"
+checksum = "05ffd9c0a93b7543e062e759284fcf5f5e3b098501104bfbdde4d404db792871"
 dependencies = [
  "libc",
- "windows-sys",
+ "windows-sys 0.52.0",
 ]
 
 [[package]]
@@ -5483,12 +6109,6 @@ dependencies = [
 
 [[package]]
 name = "spin"
-version = "0.5.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6e63cff320ae2c57904679ba7cb63280a3dc4613885beafb148ee7bf9aa9042d"
-
-[[package]]
-name = "spin"
 version = "0.9.8"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "6980e8d7511241f8acf4aebddbb1ff938df5eebe98691418c4468d0b72a96a67"
@@ -5497,6 +6117,22 @@ dependencies = [
 ]
 
 [[package]]
+name = "spki"
+version = "0.6.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "67cf02bbac7a337dc36e4f5a693db6c21e7863f45070f7064577eb4367a3212b"
+dependencies = [
+ "base64ct",
+ "der",
+]
+
+[[package]]
+name = "sprintf"
+version = "0.1.4"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "6c0cdea5a20a06e7c57f627094e7b1618e5665592cd88f2d45fa4014e348db58"
+
+[[package]]
 name = "strength_reduce"
 version = "0.2.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -5510,9 +6146,9 @@ checksum = "73473c0e59e6d5812c5dfe2a064a6444949f089e20eec9a2e5506596494e4623"
 
 [[package]]
 name = "subtle"
-version = "2.4.1"
+version = "2.5.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6bdef32e8150c2a081110b42772ffe7d7c9032b606bc226c8260fd97e0976601"
+checksum = "81cdd64d312baedb58e21336b31bc043b77e01cc99033ce76ef539f78e965ebc"
 
 [[package]]
 name = "syn"
@@ -5527,9 +6163,9 @@ dependencies = [
 
 [[package]]
 name = "syn"
-version = "2.0.28"
+version = "2.0.58"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "04361975b3f5e348b2189d8dc55bc942f278b2d482a6a0365de5bdd62d351567"
+checksum = "44cfb93f38070beee36b3fef7d4f5a16f27751d94b187b666a5cc5e9b0d30687"
 dependencies = [
  "proc-macro2",
  "quote",
@@ -5537,75 +6173,111 @@ dependencies = [
 ]
 
 [[package]]
+name = "sync_wrapper"
+version = "0.1.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "2047c6ded9c721764247e62cd3b03c09ffc529b2ba5b10ec482ae507a4a70160"
+
+[[package]]
+name = "system-configuration"
+version = "0.5.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "ba3a3adc5c275d719af8cb4272ea1c4a6d668a777f37e115f6d11ddbc1c8e0e7"
+dependencies = [
+ "bitflags 1.3.2",
+ "core-foundation",
+ "system-configuration-sys",
+]
+
+[[package]]
+name = "system-configuration-sys"
+version = "0.5.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "a75fb188eb626b924683e3b95e3a48e63551fcfb51949de2f06a9d91dbee93c9"
+dependencies = [
+ "core-foundation-sys",
+ "libc",
+]
+
+[[package]]
 name = "system-deps"
-version = "6.1.1"
+version = "6.2.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "30c2de8a4d8f4b823d634affc9cd2a74ec98c53a756f317e529a48046cbf71f3"
+checksum = "a3e535eb8dded36d55ec13eddacd30dec501792ff23a0b1682c38601b8cf2349"
 dependencies = [
  "cfg-expr",
- "heck",
+ "heck 0.5.0",
  "pkg-config",
- "toml 0.7.6",
+ "toml",
  "version-compare",
 ]
 
 [[package]]
 name = "target-lexicon"
-version = "0.12.11"
+version = "0.12.14"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9d0e916b1148c8e263850e1ebcbd046f333e0683c724876bb0da63ea4373dc8a"
+checksum = "e1fc403891a21bcfb7c37834ba66a547a8f402146eba7265b5a6d88059c9ff2f"
 
 [[package]]
 name = "tempfile"
-version = "3.7.1"
+version = "3.10.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "dc02fddf48964c42031a0b3fe0428320ecf3a73c401040fc0096f97794310651"
+checksum = "85b77fafb263dd9d05cbeac119526425676db3784113aa9295c88498cbf8bff1"
 dependencies = [
  "cfg-if",
  "fastrand",
- "redox_syscall 0.3.5",
  "rustix",
- "windows-sys",
+ "windows-sys 0.52.0",
 ]
 
 [[package]]
 name = "termcolor"
-version = "1.2.0"
+version = "1.4.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "be55cf8942feac5c765c2c993422806843c9a9a45d4d5c407ad6dd2ea95eb9b6"
+checksum = "06794f8f6c5c898b3275aebefa6b8a1cb24cd2c6c79397ab15774837a0bc5755"
 dependencies = [
  "winapi-util",
 ]
 
 [[package]]
 name = "test-log"
-version = "0.2.12"
+version = "0.2.14"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d9601d162c1d77e62c1ea0bc8116cd1caf143ce3af947536c3c9052a1677fe0c"
+checksum = "6159ab4116165c99fc88cce31f99fa2c9dbe08d3691cb38da02fc3b45f357d2b"
+dependencies = [
+ "test-log-macros",
+ "tracing-subscriber",
+]
+
+[[package]]
+name = "test-log-macros"
+version = "0.2.14"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "7ba277e77219e9eea169e8508942db1bf5d8a41ff2db9b20aab5a5aadc9fa25d"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 1.0.109",
+ "syn 2.0.58",
 ]
 
 [[package]]
 name = "test-with"
-version = "0.10.0"
+version = "0.12.6"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5ea821854cf861c2bd28c19253b5b036fa4a6990745897bdb18a511b787c0187"
+checksum = "5a3a0c1b477619de2a1bf72990195561a06f7b68bbf272cea676236ad7cfb9e8"
 dependencies = [
  "proc-macro-error",
  "proc-macro2",
  "quote",
  "regex",
- "syn 2.0.28",
+ "syn 2.0.58",
 ]
 
 [[package]]
 name = "textwrap"
-version = "0.16.0"
+version = "0.16.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "222a222a5bfe1bba4a77b45ec488a741b3cb8872e5e499451fd7d0129c9c7c3d"
+checksum = "23d434d3f8967a09480fb04132ebe0a3e088c173e6d0ee7897abbdf4eab0f8b9"
 dependencies = [
  "hyphenation",
  "smawk",
@@ -5615,40 +6287,39 @@ dependencies = [
 
 [[package]]
 name = "thiserror"
-version = "1.0.44"
+version = "1.0.58"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "611040a08a0439f8248d1990b111c95baa9c704c805fa1f62104b39655fd7f90"
+checksum = "03468839009160513471e86a034bb2c5c0e4baae3b43f79ffc55c4a5427b3297"
 dependencies = [
  "thiserror-impl",
 ]
 
 [[package]]
 name = "thiserror-impl"
-version = "1.0.44"
+version = "1.0.58"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "090198534930841fab3a5d1bb637cde49e339654e606195f8d9c76eeb081dc96"
+checksum = "c61f3ba182994efc43764a46c018c347bc492c79f024e705f46567b418f6d4f7"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.28",
+ "syn 2.0.58",
 ]
 
 [[package]]
 name = "thread-id"
-version = "4.1.0"
+version = "4.2.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3ee93aa2b8331c0fec9091548843f2c90019571814057da3b783f9de09349d73"
+checksum = "f0ec81c46e9eb50deaa257be2f148adf052d1fb7701cfd55ccfab2525280b70b"
 dependencies = [
  "libc",
- "redox_syscall 0.2.16",
  "winapi",
 ]
 
 [[package]]
 name = "thread_local"
-version = "1.1.7"
+version = "1.1.8"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3fdd6f064ccff2d6567adcb3873ca630700f00b5ad3f060c25b5dcfd9a4ce152"
+checksum = "8b9ef9bad013ada3808854ceac7b46812a6465ba368859a37e2100283d2d719c"
 dependencies = [
  "cfg-if",
  "once_cell",
@@ -5656,23 +6327,14 @@ dependencies = [
 
 [[package]]
 name = "time"
-version = "0.1.45"
+version = "0.3.34"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1b797afad3f312d1c66a56d11d0316f916356d11bd158fbc6ca6389ff6bf805a"
-dependencies = [
- "libc",
- "wasi 0.10.0+wasi-snapshot-preview1",
- "winapi",
-]
-
-[[package]]
-name = "time"
-version = "0.3.25"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b0fdd63d58b18d663fbdf70e049f00a22c8e42be082203be7f26589213cd75ea"
+checksum = "c8248b6521bb14bc45b4067159b9b6ad792e2d6d754d6c41fb50e29fefe38749"
 dependencies = [
  "deranged",
  "itoa",
+ "num-conv",
+ "powerfmt",
  "serde",
  "time-core",
  "time-macros",
@@ -5680,16 +6342,17 @@ dependencies = [
 
 [[package]]
 name = "time-core"
-version = "0.1.1"
+version = "0.1.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7300fbefb4dadc1af235a9cef3737cea692a9d97e1b9cbcd4ebdae6f8868e6fb"
+checksum = "ef927ca75afb808a4d64dd374f00a2adf8d0fcff8e7b184af886c3c87ec4a3f3"
 
 [[package]]
 name = "time-macros"
-version = "0.2.11"
+version = "0.2.17"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "eb71511c991639bb078fd5bf97757e03914361c48100d52878b8e52b46fb92cd"
+checksum = "7ba3a3ef41e6672a2f0f001392bb5dcd3ff0a9992d618ca761a11c3121547774"
 dependencies = [
+ "num-conv",
  "time-core",
 ]
 
@@ -5710,9 +6373,9 @@ checksum = "1f3ccbac311fea05f86f61904b462b55fb3df8837a366dfc601a0161d0532f20"
 
 [[package]]
 name = "tokio"
-version = "1.30.0"
+version = "1.37.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2d3ce25f50619af8b0aec2eb23deebe84249e19e2ddd393a6e16e3300a6dadfd"
+checksum = "1adbebffeca75fcfd058afa480fb6c0b81e165a0323f9c9d39c9697e37c46787"
 dependencies = [
  "backtrace",
  "bytes",
@@ -5722,20 +6385,20 @@ dependencies = [
  "parking_lot",
  "pin-project-lite",
  "signal-hook-registry",
- "socket2 0.5.3",
+ "socket2 0.5.6",
  "tokio-macros",
- "windows-sys",
+ "windows-sys 0.48.0",
 ]
 
 [[package]]
 name = "tokio-macros"
-version = "2.1.0"
+version = "2.2.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "630bdcf245f78637c13ec01ffae6187cca34625e8c63150d424b59e55af2675e"
+checksum = "5b8a1e28f2deaa14e508979454cb3a223b10b938b45af148bc0986de36f1923b"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.28",
+ "syn 2.0.58",
 ]
 
 [[package]]
@@ -5760,9 +6423,9 @@ dependencies = [
 
 [[package]]
 name = "tokio-stream"
-version = "0.1.14"
+version = "0.1.15"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "397c988d37662c7dda6d2208364a706264bf3d6138b11d436cbac0ad38832842"
+checksum = "267ac89e0bec6e691e5813911606935d77c476ff49024f98abcea3e7b15e37af"
 dependencies = [
  "futures-core",
  "pin-project-lite",
@@ -5771,23 +6434,35 @@ dependencies = [
 
 [[package]]
 name = "tokio-tungstenite"
-version = "0.19.0"
+version = "0.20.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ec509ac96e9a0c43427c74f003127d953a265737636129424288d27cb5c4b12c"
+checksum = "212d5dcb2a1ce06d81107c3d0ffa3121fe974b73f068c8282cb1c32328113b6c"
 dependencies = [
  "futures-util",
  "log",
  "native-tls",
  "tokio",
  "tokio-native-tls",
- "tungstenite 0.19.0",
+ "tungstenite 0.20.1",
+]
+
+[[package]]
+name = "tokio-tungstenite"
+version = "0.21.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "c83b561d025642014097b66e6c1bb422783339e0909e4429cde4749d1990bc38"
+dependencies = [
+ "futures-util",
+ "log",
+ "tokio",
+ "tungstenite 0.21.0",
 ]
 
 [[package]]
 name = "tokio-util"
-version = "0.7.8"
+version = "0.7.10"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "806fe8c2c87eccc8b3267cbae29ed3ab2d0bd37fca70ab622e46aaa9375ddb7d"
+checksum = "5419f34732d9eb6ee4c3578b7989078579b7f039cbbb9ca2c4da015749371e15"
 dependencies = [
  "bytes",
  "futures-core",
@@ -5799,45 +6474,47 @@ dependencies = [
 
 [[package]]
 name = "toml"
-version = "0.5.11"
+version = "0.8.12"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f4f7f0dd8d50a853a531c426359045b1998f04219d88799810762cd4ad314234"
+checksum = "e9dd1545e8208b4a5af1aa9bbd0b4cf7e9ea08fabc5d0a5c67fcaafa17433aa3"
 dependencies = [
  "serde",
+ "serde_spanned",
+ "toml_datetime",
+ "toml_edit 0.22.9",
 ]
 
 [[package]]
-name = "toml"
-version = "0.7.6"
+name = "toml_datetime"
+version = "0.6.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c17e963a819c331dcacd7ab957d80bc2b9a9c1e71c804826d2f283dd65306542"
+checksum = "3550f4e9685620ac18a50ed434eb3aec30db8ba93b0287467bca5826ea25baf1"
 dependencies = [
  "serde",
- "serde_spanned",
- "toml_datetime",
- "toml_edit",
 ]
 
 [[package]]
-name = "toml_datetime"
-version = "0.6.3"
+name = "toml_edit"
+version = "0.21.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7cda73e2f1397b1262d6dfdcef8aafae14d1de7748d66822d3bfeeb6d03e5e4b"
+checksum = "6a8534fd7f78b5405e860340ad6575217ce99f38d4d5c8f2442cb5ecb50090e1"
 dependencies = [
- "serde",
+ "indexmap 2.2.6",
+ "toml_datetime",
+ "winnow 0.5.40",
 ]
 
 [[package]]
 name = "toml_edit"
-version = "0.19.14"
+version = "0.22.9"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f8123f27e969974a3dfba720fdb560be359f57b44302d280ba72e76a74480e8a"
+checksum = "8e40bb779c5187258fd7aad0eb68cb8706a0a81fa712fbea808ab43c4b8374c4"
 dependencies = [
- "indexmap 2.0.0",
+ "indexmap 2.2.6",
  "serde",
  "serde_spanned",
  "toml_datetime",
- "winnow",
+ "winnow 0.6.5",
 ]
 
 [[package]]
@@ -5870,11 +6547,10 @@ checksum = "b6bc1c9ce2b5135ac7f93c72918fc37feb872bdc6a5533a8b85eb4b86bfdae52"
 
 [[package]]
 name = "tracing"
-version = "0.1.37"
+version = "0.1.40"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8ce8c33a8d48bd45d624a6e523445fd21ec13d3653cd51f681abf67418f54eb8"
+checksum = "c3523ab5a71916ccf420eebdf5521fcef02141234bbc0b8a49f2fdc4544364ef"
 dependencies = [
- "cfg-if",
  "log",
  "pin-project-lite",
  "tracing-attributes",
@@ -5883,20 +6559,20 @@ dependencies = [
 
 [[package]]
 name = "tracing-attributes"
-version = "0.1.26"
+version = "0.1.27"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5f4f31f56159e98206da9efd823404b79b6ef3143b4a7ab76e67b1751b25a4ab"
+checksum = "34704c8d6ebcbc939824180af020566b01a7c01f80641264eba0999f6c2b6be7"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.28",
+ "syn 2.0.58",
 ]
 
 [[package]]
 name = "tracing-core"
-version = "0.1.31"
+version = "0.1.32"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0955b8137a1df6f1a2e9a37d8a6656291ff0297c1a97c24e0d8425fe2312f79a"
+checksum = "c06d3da6113f116aaee68e4d601191614c9053067f9ab7f6edbcb161237daa54"
 dependencies = [
  "once_cell",
  "valuable",
@@ -5904,20 +6580,20 @@ dependencies = [
 
 [[package]]
 name = "tracing-log"
-version = "0.1.3"
+version = "0.2.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "78ddad33d2d10b1ed7eb9d1f518a5674713876e97e5bb9b7345a7984fbb4f922"
+checksum = "ee855f1f400bd0e5c02d150ae5de3840039a3f54b025156404e34c23c03f47c3"
 dependencies = [
- "lazy_static",
  "log",
+ "once_cell",
  "tracing-core",
 ]
 
 [[package]]
 name = "tracing-subscriber"
-version = "0.3.17"
+version = "0.3.18"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "30a651bc37f915e81f087d86e62a18eec5f79550c7faff886f7090b4ea757c77"
+checksum = "ad0f048c97dbd9faa9b7df56362b8ebcaa52adb06b498c050d2f4e32f90a7a8b"
 dependencies = [
  "matchers",
  "nu-ansi-term",
@@ -5933,9 +6609,9 @@ dependencies = [
 
 [[package]]
 name = "transpose"
-version = "0.2.2"
+version = "0.2.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e6522d49d03727ffb138ae4cbc1283d3774f0d10aa7f9bf52e6784c45daf9b23"
+checksum = "1ad61aed86bc3faea4300c7aee358b4c6d0c8d6ccc36524c96e4c92ccf26e77e"
 dependencies = [
  "num-integer",
  "strength_reduce",
@@ -5943,20 +6619,20 @@ dependencies = [
 
 [[package]]
 name = "try-lock"
-version = "0.2.4"
+version = "0.2.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3528ecfd12c466c6f163363caf2d02a71161dd5e1cc6ae7b34207ea2d42d81ed"
+checksum = "e421abadd41a4225275504ea4d6566923418b7f05506fbc9c0fe86ba7396114b"
 
 [[package]]
 name = "tungstenite"
-version = "0.19.0"
+version = "0.20.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "15fba1a6d6bb030745759a9a2a588bfe8490fc8b4751a277db3a0be1c9ebbf67"
+checksum = "9e3dac10fd62eaf6617d3a904ae222845979aec67c615d1c842b4002c7666fb9"
 dependencies = [
  "byteorder",
  "bytes",
  "data-encoding",
- "http",
+ "http 0.2.12",
  "httparse",
  "log",
  "native-tls",
@@ -5969,14 +6645,14 @@ dependencies = [
 
 [[package]]
 name = "tungstenite"
-version = "0.20.0"
+version = "0.21.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e862a1c4128df0112ab625f55cd5c934bcb4312ba80b39ae4b4835a3fd58e649"
+checksum = "9ef1a641ea34f399a848dea702823bbecfb4c486f911735368f1f137cb8257e1"
 dependencies = [
  "byteorder",
  "bytes",
  "data-encoding",
- "http",
+ "http 1.1.0",
  "httparse",
  "log",
  "native-tls",
@@ -5989,21 +6665,30 @@ dependencies = [
 
 [[package]]
 name = "typenum"
-version = "1.16.0"
+version = "1.17.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "42ff0bf0c66b8238c6f3b578df37d0b7848e55df8577b3f74f92a69acceeb825"
+
+[[package]]
+name = "unicase"
+version = "2.7.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "497961ef93d974e23eb6f433eb5fe1b7930b659f06d12dec6fc44a8f554c0bba"
+checksum = "f7d2d4dafb69621809a81864c9c1b864479e1235c0dd4e199924b9742439ed89"
+dependencies = [
+ "version_check",
+]
 
 [[package]]
 name = "unicode-bidi"
-version = "0.3.13"
+version = "0.3.15"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "92888ba5573ff080736b3648696b70cafad7d250551175acbaa4e0385b3e1460"
+checksum = "08f95100a766bf4f8f28f90d77e0a5461bbdb219042e7679bebe79004fed8d75"
 
 [[package]]
 name = "unicode-ident"
-version = "1.0.11"
+version = "1.0.12"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "301abaae475aa91687eb82514b328ab47a211a533026cb25fc3e519b86adfc3c"
+checksum = "3354b9ac3fae1ff6755cb6db53683adb661634f67557942dea4facebec0fee4b"
 
 [[package]]
 name = "unicode-linebreak"
@@ -6013,33 +6698,33 @@ checksum = "3b09c83c3c29d37506a3e260c08c03743a6bb66a9cd432c6934ab501a190571f"
 
 [[package]]
 name = "unicode-normalization"
-version = "0.1.22"
+version = "0.1.23"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5c5713f0fc4b5db668a2ac63cdb7bb4469d8c9fed047b1d0292cc7b0ce2ba921"
+checksum = "a56d1686db2308d901306f92a263857ef59ea39678a5458e7cb17f01415101f5"
 dependencies = [
  "tinyvec",
 ]
 
 [[package]]
 name = "unicode-width"
-version = "0.1.10"
+version = "0.1.11"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c0edd1e5b14653f783770bce4a4dabb4a5108a5370a5f5d8cfe8710c361f6c8b"
+checksum = "e51733f11c9c4f72aa0c160008246859e340b00807569a0da0e7a1079b27ba85"
 
 [[package]]
 name = "untrusted"
-version = "0.7.1"
+version = "0.9.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a156c684c91ea7d62626509bce3cb4e1d9ed5c4d978f7b4352658f96a4c26b4a"
+checksum = "8ecb6da28b8a351d773b68d5825ac39017e680750f980f3a1a85cd8dd28a47c1"
 
 [[package]]
 name = "url"
-version = "2.4.0"
+version = "2.5.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "50bff7831e19200a85b17131d085c25d7811bc4e186efdaf54bbd132994a88cb"
+checksum = "31e6302e3bb753d46e83516cae55ae196fc0c309407cf11ab35cc51a4c2a4633"
 dependencies = [
  "form_urlencoded",
- "idna 0.4.0",
+ "idna 0.5.0",
  "percent-encoding",
 ]
 
@@ -6072,24 +6757,22 @@ checksum = "711b9620af191e0cdc7468a8d14e709c3dcdb115b36f838e601583af800a370a"
 
 [[package]]
 name = "uuid"
-version = "1.4.1"
+version = "1.8.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "79daa5ed5740825c40b389c5e50312b9c86df53fccd33f281df655642b43869d"
+checksum = "a183cf7feeba97b4dd1c0d46788634f6221d87fa961b305bed08c851829efcc0"
 dependencies = [
  "getrandom",
 ]
 
 [[package]]
 name = "v_frame"
-version = "0.3.6"
+version = "0.3.8"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "85db69f33d00031c1b07f7292e56317d5aa9475bdbd3d27ef18f3633438a697e"
+checksum = "d6f32aaa24bacd11e488aa9ba66369c7cd514885742c9fe08cfe85884db3e92b"
 dependencies = [
- "cfg-if",
- "noop_proc_macro",
- "num-derive 0.4.0",
+ "aligned-vec",
  "num-traits",
- "rust_hawktracer",
+ "wasm-bindgen",
 ]
 
 [[package]]
@@ -6123,9 +6806,9 @@ dependencies = [
 
 [[package]]
 name = "version-compare"
-version = "0.1.1"
+version = "0.2.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "579a42fc0b8e0c63b76519a339be31bed574929511fa53c1a3acae26eb258f29"
+checksum = "852e951cb7832cb45cb1169900d19760cfa39b82bc0ea9c0e5a14ae88411c98b"
 
 [[package]]
 name = "version_check"
@@ -6141,15 +6824,15 @@ checksum = "5c3082ca00d5a5ef149bb8b555a72ae84c9c59f7250f013ac822ac2e49b19c64"
 
 [[package]]
 name = "waker-fn"
-version = "1.1.0"
+version = "1.1.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9d5b2c62b4012a3e1eca5a7e077d13b3bf498c4073e33ccd58626607748ceeca"
+checksum = "f3c4517f54858c779bbcbf228f4fca63d121bf85fbecb2dc578cdf4a39395690"
 
 [[package]]
 name = "walkdir"
-version = "2.3.3"
+version = "2.5.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "36df944cda56c7d8d8b7496af378e6b16de9284591917d307c9b4d313c44e698"
+checksum = "29790946404f91d9c5d06f9874efddea1dc06c5efe94541a7d6863108e3a5e4b"
 dependencies = [
  "same-file",
  "winapi-util",
@@ -6165,10 +6848,33 @@ dependencies = [
 ]
 
 [[package]]
-name = "wasi"
-version = "0.10.0+wasi-snapshot-preview1"
+name = "warp"
+version = "0.3.7"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1a143597ca7c7793eff794def352d41792a93c481eb1042423ff7ff72ba2c31f"
+checksum = "4378d202ff965b011c64817db11d5829506d3404edeadb61f190d111da3f231c"
+dependencies = [
+ "bytes",
+ "futures-channel",
+ "futures-util",
+ "headers 0.3.9",
+ "http 0.2.12",
+ "hyper 0.14.28",
+ "log",
+ "mime",
+ "mime_guess",
+ "multer",
+ "percent-encoding",
+ "pin-project",
+ "scoped-tls",
+ "serde",
+ "serde_json",
+ "serde_urlencoded",
+ "tokio",
+ "tokio-tungstenite 0.21.0",
+ "tokio-util",
+ "tower-service",
+ "tracing",
+]
 
 [[package]]
 name = "wasi"
@@ -6178,9 +6884,9 @@ checksum = "9c8d87e72b64a3b4db28d11ce29237c246188f4f51057d65a7eab63b7987e423"
 
 [[package]]
 name = "wasm-bindgen"
-version = "0.2.87"
+version = "0.2.92"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7706a72ab36d8cb1f80ffbf0e071533974a60d0a308d01a5d0375bf60499a342"
+checksum = "4be2531df63900aeb2bca0daaaddec08491ee64ceecbee5076636a3b026795a8"
 dependencies = [
  "cfg-if",
  "wasm-bindgen-macro",
@@ -6188,24 +6894,24 @@ dependencies = [
 
 [[package]]
 name = "wasm-bindgen-backend"
-version = "0.2.87"
+version = "0.2.92"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5ef2b6d3c510e9625e5fe6f509ab07d66a760f0885d858736483c32ed7809abd"
+checksum = "614d787b966d3989fa7bb98a654e369c762374fd3213d212cfc0251257e747da"
 dependencies = [
  "bumpalo",
  "log",
  "once_cell",
  "proc-macro2",
  "quote",
- "syn 2.0.28",
+ "syn 2.0.58",
  "wasm-bindgen-shared",
 ]
 
 [[package]]
 name = "wasm-bindgen-futures"
-version = "0.4.37"
+version = "0.4.42"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c02dbc21516f9f1f04f187958890d7e6026df8d16540b7ad9492bc34a67cea03"
+checksum = "76bc14366121efc8dbb487ab05bcc9d346b3b5ec0eaa76e46594cabbe51762c0"
 dependencies = [
  "cfg-if",
  "js-sys",
@@ -6215,9 +6921,9 @@ dependencies = [
 
 [[package]]
 name = "wasm-bindgen-macro"
-version = "0.2.87"
+version = "0.2.92"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "dee495e55982a3bd48105a7b947fd2a9b4a8ae3010041b9e0faab3f9cd028f1d"
+checksum = "a1f8823de937b71b9460c0c34e25f3da88250760bec0ebac694b49997550d726"
 dependencies = [
  "quote",
  "wasm-bindgen-macro-support",
@@ -6225,28 +6931,28 @@ dependencies = [
 
 [[package]]
 name = "wasm-bindgen-macro-support"
-version = "0.2.87"
+version = "0.2.92"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "54681b18a46765f095758388f2d0cf16eb8d4169b639ab575a8f5693af210c7b"
+checksum = "e94f17b526d0a461a191c78ea52bbce64071ed5c04c9ffe424dcb38f74171bb7"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.28",
+ "syn 2.0.58",
  "wasm-bindgen-backend",
  "wasm-bindgen-shared",
 ]
 
 [[package]]
 name = "wasm-bindgen-shared"
-version = "0.2.87"
+version = "0.2.92"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ca6ad05a4870b2bf5fe995117d3728437bd27d7cd5f06f13c17443ef369775a1"
+checksum = "af190c94f2773fdb3729c55b007a722abb5384da03bc0986df4c289bf5567e96"
 
 [[package]]
 name = "web-sys"
-version = "0.3.64"
+version = "0.3.69"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9b85cbef8c220a6abc02aefd892dfc0fc23afb1c6a426316ec33253a3877249b"
+checksum = "77afa9a11836342370f4817622a2f0f418b134426d91a82dfb48f532d2ec13ef"
 dependencies = [
  "js-sys",
  "wasm-bindgen",
@@ -6254,9 +6960,9 @@ dependencies = [
 
 [[package]]
 name = "weezl"
-version = "0.1.7"
+version = "0.1.8"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9193164d4de03a926d909d3bc7c30543cecb35400c02114792c2cae20d5e2dbb"
+checksum = "53a85b86a771b1c87058196170769dd264f66c0782acf1ae6cc51bfd64b39082"
 
 [[package]]
 name = "winapi"
@@ -6276,9 +6982,9 @@ checksum = "ac3b87c63620426dd9b991e5ce0329eff545bccbbb34f3be09ff6fb6ab51b7b6"
 
 [[package]]
 name = "winapi-util"
-version = "0.1.5"
+version = "0.1.6"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "70ec6ce85bb158151cae5e5c87f95a8e97d2c0c4b001223f33a334e3ce5de178"
+checksum = "f29e6f9198ba0d26b4c9f07dbe6f9ed633e1f3d5b8b414090084349e46a52596"
 dependencies = [
  "winapi",
 ]
@@ -6290,12 +6996,12 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f"
 
 [[package]]
-name = "windows"
-version = "0.48.0"
+name = "windows-core"
+version = "0.52.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e686886bc078bc1b0b600cac0147aadb815089b6e4da64016cbd754b6342700f"
+checksum = "33ab640c8d7e35bf8ba19b884ba838ceb4fba93a4e8c65a9059d08afcfc683d9"
 dependencies = [
- "windows-targets",
+ "windows-targets 0.52.4",
 ]
 
 [[package]]
@@ -6304,104 +7010,192 @@ version = "0.48.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "677d2418bec65e3338edb076e806bc1ec15693c5d0104683f2efe857f61056a9"
 dependencies = [
- "windows-targets",
+ "windows-targets 0.48.5",
+]
+
+[[package]]
+name = "windows-sys"
+version = "0.52.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "282be5f36a8ce781fad8c8ae18fa3f9beff57ec1b52cb3de0789201425d9a33d"
+dependencies = [
+ "windows-targets 0.52.4",
 ]
 
 [[package]]
 name = "windows-targets"
-version = "0.48.1"
+version = "0.48.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "05d4b17490f70499f20b9e791dcf6a299785ce8af4d709018206dc5b4953e95f"
+checksum = "9a2fa6e2155d7247be68c096456083145c183cbbbc2764150dda45a87197940c"
 dependencies = [
- "windows_aarch64_gnullvm",
- "windows_aarch64_msvc",
- "windows_i686_gnu",
- "windows_i686_msvc",
- "windows_x86_64_gnu",
- "windows_x86_64_gnullvm",
- "windows_x86_64_msvc",
+ "windows_aarch64_gnullvm 0.48.5",
+ "windows_aarch64_msvc 0.48.5",
+ "windows_i686_gnu 0.48.5",
+ "windows_i686_msvc 0.48.5",
+ "windows_x86_64_gnu 0.48.5",
+ "windows_x86_64_gnullvm 0.48.5",
+ "windows_x86_64_msvc 0.48.5",
+]
+
+[[package]]
+name = "windows-targets"
+version = "0.52.4"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "7dd37b7e5ab9018759f893a1952c9420d060016fc19a472b4bb20d1bdd694d1b"
+dependencies = [
+ "windows_aarch64_gnullvm 0.52.4",
+ "windows_aarch64_msvc 0.52.4",
+ "windows_i686_gnu 0.52.4",
+ "windows_i686_msvc 0.52.4",
+ "windows_x86_64_gnu 0.52.4",
+ "windows_x86_64_gnullvm 0.52.4",
+ "windows_x86_64_msvc 0.52.4",
 ]
 
 [[package]]
 name = "windows_aarch64_gnullvm"
-version = "0.48.0"
+version = "0.48.5"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "2b38e32f0abccf9987a4e3079dfb67dcd799fb61361e53e2882c3cbaf0d905d8"
+
+[[package]]
+name = "windows_aarch64_gnullvm"
+version = "0.52.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "91ae572e1b79dba883e0d315474df7305d12f569b400fcf90581b06062f7e1bc"
+checksum = "bcf46cf4c365c6f2d1cc93ce535f2c8b244591df96ceee75d8e83deb70a9cac9"
 
 [[package]]
 name = "windows_aarch64_msvc"
-version = "0.48.0"
+version = "0.48.5"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "dc35310971f3b2dbbf3f0690a219f40e2d9afcf64f9ab7cc1be722937c26b4bc"
+
+[[package]]
+name = "windows_aarch64_msvc"
+version = "0.52.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b2ef27e0d7bdfcfc7b868b317c1d32c641a6fe4629c171b8928c7b08d98d7cf3"
+checksum = "da9f259dd3bcf6990b55bffd094c4f7235817ba4ceebde8e6d11cd0c5633b675"
 
 [[package]]
 name = "windows_i686_gnu"
-version = "0.48.0"
+version = "0.48.5"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "a75915e7def60c94dcef72200b9a8e58e5091744960da64ec734a6c6e9b3743e"
+
+[[package]]
+name = "windows_i686_gnu"
+version = "0.52.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "622a1962a7db830d6fd0a69683c80a18fda201879f0f447f065a3b7467daa241"
+checksum = "b474d8268f99e0995f25b9f095bc7434632601028cf86590aea5c8a5cb7801d3"
 
 [[package]]
 name = "windows_i686_msvc"
-version = "0.48.0"
+version = "0.48.5"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "8f55c233f70c4b27f66c523580f78f1004e8b5a8b659e05a4eb49d4166cca406"
+
+[[package]]
+name = "windows_i686_msvc"
+version = "0.52.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4542c6e364ce21bf45d69fdd2a8e455fa38d316158cfd43b3ac1c5b1b19f8e00"
+checksum = "1515e9a29e5bed743cb4415a9ecf5dfca648ce85ee42e15873c3cd8610ff8e02"
 
 [[package]]
 name = "windows_x86_64_gnu"
-version = "0.48.0"
+version = "0.48.5"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "53d40abd2583d23e4718fddf1ebec84dbff8381c07cae67ff7768bbf19c6718e"
+
+[[package]]
+name = "windows_x86_64_gnu"
+version = "0.52.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ca2b8a661f7628cbd23440e50b05d705db3686f894fc9580820623656af974b1"
+checksum = "5eee091590e89cc02ad514ffe3ead9eb6b660aedca2183455434b93546371a03"
 
 [[package]]
 name = "windows_x86_64_gnullvm"
-version = "0.48.0"
+version = "0.48.5"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "0b7b52767868a23d5bab768e390dc5f5c55825b6d30b86c844ff2dc7414044cc"
+
+[[package]]
+name = "windows_x86_64_gnullvm"
+version = "0.52.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7896dbc1f41e08872e9d5e8f8baa8fdd2677f29468c4e156210174edc7f7b953"
+checksum = "77ca79f2451b49fa9e2af39f0747fe999fcda4f5e241b2898624dca97a1f2177"
 
 [[package]]
 name = "windows_x86_64_msvc"
-version = "0.48.0"
+version = "0.48.5"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "ed94fce61571a4006852b7389a063ab983c02eb1bb37b47f8272ce92d06d9538"
+
+[[package]]
+name = "windows_x86_64_msvc"
+version = "0.52.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1a515f5799fe4961cb532f983ce2b23082366b898e52ffbce459c86f67c8378a"
+checksum = "32b752e52a2da0ddfbdbcc6fceadfeede4c939ed16d13e648833a61dfb611ed8"
 
 [[package]]
 name = "winnow"
-version = "0.5.4"
+version = "0.5.40"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "acaaa1190073b2b101e15083c38ee8ec891b5e05cbee516521e94ec008f61e64"
+checksum = "f593a95398737aeed53e489c785df13f3618e41dbcd6718c6addbf1395aa6876"
+dependencies = [
+ "memchr",
+]
+
+[[package]]
+name = "winnow"
+version = "0.6.5"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "dffa400e67ed5a4dd237983829e66475f0a4a26938c4b04c21baede6262215b8"
 dependencies = [
  "memchr",
 ]
 
 [[package]]
 name = "winreg"
-version = "0.10.1"
+version = "0.50.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "80d0f4e272c85def139476380b12f9ac60926689dd2e01d4923222f40580869d"
+checksum = "524e57b2c537c0f9b1e69f1965311ec12182b4122e45035b1508cd24d2adadb1"
 dependencies = [
- "winapi",
+ "cfg-if",
+ "windows-sys 0.48.0",
+]
+
+[[package]]
+name = "winreg"
+version = "0.52.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "a277a57398d4bfa075df44f501a17cfdf8542d224f0d36095a2adc7aee4ef0a5"
+dependencies = [
+ "cfg-if",
+ "windows-sys 0.48.0",
 ]
 
 [[package]]
 name = "xattr"
-version = "1.0.1"
+version = "1.3.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f4686009f71ff3e5c4dbcf1a282d0a44db3f021ba69350cd42086b3e5f1c6985"
+checksum = "8da84f1a25939b27f6820d92aed108f83ff920fdf11a7b19366c27c4cda81d4f"
 dependencies = [
  "libc",
+ "linux-raw-sys",
+ "rustix",
 ]
 
 [[package]]
 name = "xml-rs"
-version = "0.8.16"
+version = "0.8.20"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "47430998a7b5d499ccee752b41567bc3afc57e1327dc855b1a2aa44ce29b5fa1"
+checksum = "791978798f0597cfc70478424c2b4fdc2b7a8024aaff78497ef00f24ef674193"
 
 [[package]]
 name = "xmlparser"
-version = "0.13.5"
+version = "0.13.6"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4d25c75bf9ea12c4040a97f829154768bbbce366287e2dc044af160cd79a13fd"
+checksum = "66fee0b777b0f5ac1c69bb06d361268faafa61cd4682ae064a171c16c433e9e4"
 
 [[package]]
 name = "xmltree"
@@ -6420,27 +7214,47 @@ checksum = "09041cd90cf85f7f8b2df60c646f853b7f535ce68f85244eb6731cf89fa498ec"
 
 [[package]]
 name = "zerocopy"
-version = "0.6.3"
+version = "0.6.6"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f3b9c234616391070b0b173963ebc65a9195068e7ed3731c6edac2ec45ebe106"
+checksum = "854e949ac82d619ee9a14c66a1b674ac730422372ccb759ce0c39cabcf2bf8e6"
 dependencies = [
  "byteorder",
- "zerocopy-derive",
+ "zerocopy-derive 0.6.6",
+]
+
+[[package]]
+name = "zerocopy"
+version = "0.7.32"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "74d4d3961e53fa4c9a25a8637fc2bfaf2595b3d3ae34875568a5cf64787716be"
+dependencies = [
+ "zerocopy-derive 0.7.32",
 ]
 
 [[package]]
 name = "zerocopy-derive"
-version = "0.6.3"
+version = "0.6.6"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8f7f3a471f98d0a61c34322fbbfd10c384b07687f680d4119813713f72308d91"
+checksum = "125139de3f6b9d625c39e2efdd73d41bdac468ccd556556440e322be0e1bbd91"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.28",
+ "syn 2.0.58",
+]
+
+[[package]]
+name = "zerocopy-derive"
+version = "0.7.32"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "9ce1b18ccd8e73a9321186f97e46f9f04b778851177567b1975109d26a08d2a6"
+dependencies = [
+ "proc-macro2",
+ "quote",
+ "syn 2.0.58",
 ]
 
 [[package]]
 name = "zeroize"
-version = "1.6.0"
+version = "1.7.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2a0956f1ba7c7909bfb66c2e9e4124ab6f6482560f6628b5aaeba39207c9aad9"
+checksum = "525b4ec142c6b68a2d10f01f7bbf6755599ca3f81ea53b8431b7dd348f5fdb2d"
diff --git a/pkgs/development/libraries/gstreamer/rs/default.nix b/pkgs/development/libraries/gstreamer/rs/default.nix
index eeef11e9a464..d1f1259635fa 100644
--- a/pkgs/development/libraries/gstreamer/rs/default.nix
+++ b/pkgs/development/libraries/gstreamer/rs/default.nix
@@ -1,6 +1,7 @@
 { lib
 , stdenv
 , fetchFromGitLab
+, fetchFromGitHub
 , fetchpatch
 , rustPlatform
 , meson
@@ -23,6 +24,7 @@
 , openssl
 , pango
 , Security
+, SystemConfiguration
 , gst-plugins-good
 , nix-update-script
 # specifies a limited subset of plugins to build (the default `null` means all plugins supported on the stdenv platform)
@@ -60,8 +62,8 @@ let
     raptorq = [ ];
     reqwest = [ openssl ] ++ lib.optionals stdenv.isDarwin [ Security ];
     rtp = [ ];
-    webrtc = [ gst-plugins-bad openssl ] ++ lib.optionals stdenv.isDarwin [ Security ];
-    webrtchttp = [ gst-plugins-bad openssl ] ++ lib.optionals stdenv.isDarwin [ Security ];
+    webrtc = [ gst-plugins-bad openssl ] ++ lib.optionals stdenv.isDarwin [ Security SystemConfiguration ];
+    webrtchttp = [ gst-plugins-bad openssl ] ++ lib.optionals stdenv.isDarwin [ Security SystemConfiguration ];
 
     # text
     textahead = [ ];
@@ -79,7 +81,19 @@ let
     # video
     cdg = [ ];
     closedcaption = [ pango ];
-    dav1d = [ dav1d ];
+    dav1d = [
+      # Only dav1d < 1.3 is supported for now.
+      # https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1393
+      (dav1d.overrideAttrs rec {
+        version = "1.2.1";
+        src = fetchFromGitHub {
+          owner = "videolan";
+          repo = "dav1d";
+          rev = version;
+          hash = "sha256-RrEim3HXXjx2RUU7K3wPH3QbhNTRN9ZX/oAcyE9aV8I=";
+        };
+      })
+    ];
     ffv1 = [ ];
     gif = [ ];
     gtk4 = [ gtk4 ];
@@ -126,9 +140,9 @@ in
   assert lib.assertMsg (invalidPlugins == [])
     "Invalid gst-plugins-rs plugin${lib.optionalString (lib.length invalidPlugins > 1) "s"}: ${lib.concatStringsSep ", " invalidPlugins}";
 
-stdenv.mkDerivation rec {
+stdenv.mkDerivation (finalAttrs: {
   pname = "gst-plugins-rs";
-  version = "0.11.0+fixup";
+  version = "0.12.4";
 
   outputs = [ "out" "dev" ];
 
@@ -136,8 +150,8 @@ stdenv.mkDerivation rec {
     domain = "gitlab.freedesktop.org";
     owner = "gstreamer";
     repo = "gst-plugins-rs";
-    rev = version;
-    hash = "sha256-nvDvcY/WyVhcxitcoqgEUT8A1synZqxG2e51ct7Fgss=";
+    rev = finalAttrs.version;
+    hash = "sha256-Qnp+e1Vww2kWjDG0x2tcigwDdG67I4xnm8+QrBI+o08=";
     # TODO: temporary workaround for case-insensitivity problems with color-name crate - https://github.com/annymosse/color-name/pull/2
     postFetch = ''
       sedSearch="$(cat <<\EOF | sed -ze 's/\n/\\n/g'
@@ -162,12 +176,12 @@ stdenv.mkDerivation rec {
   cargoDeps = rustPlatform.importCargoLock {
     lockFile = ./Cargo.lock;
     outputHashes = {
-      "cairo-rs-0.18.1" = "sha256-k+YIAZXxejbxPQqbUU91qbx2AR98gTrseknLHtNZDEE=";
+      "cairo-rs-0.19.3" = "sha256-TjVXdnlYEfPLbUx1pC84rCC2MlNecECMK2Yo9XKwz9M=";
       "color-name-1.1.0" = "sha256-RfMStbe2wX5qjPARHIFHlSDKjzx8DwJ+RjzyltM5K7A=";
       "ffv1-0.0.0" = "sha256-af2VD00tMf/hkfvrtGrHTjVJqbl+VVpLaR0Ry+2niJE=";
       "flavors-0.2.0" = "sha256-zBa0X75lXnASDBam9Kk6w7K7xuH9fP6rmjWZBUB5hxk=";
-      "gdk4-0.7.1" = "sha256-UMGmZivVdvmKRAjIGlj6pjDxwfNJyz8/6C0eYH1OOw4=";
-      "gstreamer-0.21.0" = "sha256-2uilK8wYG8e59fdL3q+kmixc1zw+EBwqvGs/EgfCGhk=";
+      "gdk4-0.8.1" = "sha256-VPmegFZ/bC8x1vkl3YU208jQ8FCEKLwe6ZDatz4mIvM=";
+      "gstreamer-0.22.4" = "sha256-r5+wOEhTVztDMEu6t47yJ9HIlbXyjdvswUND4l7kPl8=";
     };
   };
 
@@ -202,36 +216,26 @@ stdenv.mkDerivation rec {
     map (plugin: lib.mesonEnable plugin true) selectedPlugins
   ) ++ [
     (lib.mesonOption "sodium-source" "system")
+    (lib.mesonEnable "tests" finalAttrs.finalPackage.doCheck)
     (lib.mesonEnable "doc" enableDocumentation)
   ];
 
   # turn off all auto plugins since we use a list of plugins we generate
   mesonAutoFeatures = "disabled";
 
-  doCheck = true;
+  doCheck = stdenv.buildPlatform.canExecute stdenv.hostPlatform;
 
   # csound lib dir must be manually specified for it to build
-  # webrtc and webrtchttp plugins are the only that need gstreamer-webrtc (from gst-plugins-bad, a heavy set)
   preConfigure = ''
     export CARGO_BUILD_JOBS=$NIX_BUILD_CORES
 
     patchShebangs dependencies.py
   '' + lib.optionalString (lib.elem "csound" selectedPlugins) ''
     export CSOUND_LIB_DIR=${lib.getLib csound}/lib
-  '' + lib.optionalString (lib.mutuallyExclusive [ "webrtc" "webrtchttp" ] selectedPlugins) ''
-    sed -i "/\['gstreamer-webrtc-1\.0', 'gst-plugins-bad', 'gstwebrtc_dep', 'gstwebrtc'\]/d" meson.build
-  '' + lib.optionalString (!gst-plugins-base.glEnabled) ''
-    sed -i "/\['gstreamer-gl-1\.0', 'gst-plugins-base', 'gst_gl_dep', 'gstgl'\]/d" meson.build
   '';
 
-  # run tests ourselves to avoid meson timing out by default
-  checkPhase = ''
-    runHook preCheck
-
-    meson test --no-rebuild --verbose --timeout-multiplier 12
-
-    runHook postCheck
-  '';
+  # give meson longer before timing out for tests
+  mesonCheckFlags = [ "--verbose" "--timeout-multiplier" "12" ];
 
   doInstallCheck = (lib.elem "webp" selectedPlugins) && !stdenv.hostPlatform.isStatic &&
     stdenv.hostPlatform.isElf;
@@ -243,6 +247,7 @@ stdenv.mkDerivation rec {
 
   passthru.updateScript = nix-update-script {
     # use numbered releases rather than gstreamer-* releases
+    # this matches upstream's recommendation: https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/issues/470#note_2202772
     extraArgs = [ "--version-regex" "([0-9.]+)" ];
   };
 
@@ -254,4 +259,4 @@ stdenv.mkDerivation rec {
     platforms = platforms.unix;
     maintainers = with maintainers; [ lilyinstarlight ];
   };
-}
+})
diff --git a/pkgs/development/libraries/gstreamer/rtsp-server/default.nix b/pkgs/development/libraries/gstreamer/rtsp-server/default.nix
index b49da94955e3..cb848efca39f 100644
--- a/pkgs/development/libraries/gstreamer/rtsp-server/default.nix
+++ b/pkgs/development/libraries/gstreamer/rtsp-server/default.nix
@@ -15,11 +15,11 @@
 
 stdenv.mkDerivation rec {
   pname = "gst-rtsp-server";
-  version = "1.22.9";
+  version = "1.24.2";
 
   src = fetchurl {
     url = "https://gstreamer.freedesktop.org/src/${pname}/${pname}-${version}.tar.xz";
-    hash = "sha256-gIrxSPiUBP90hQ+MpScr7Uv+Z/liAjHcRRT9B+sm0KQ=";
+    hash = "sha256-5MhKeGdefv7zsm6cueLkJzGEIbStnuS1E2767rtrugw=";
   };
 
   outputs = [
diff --git a/pkgs/development/libraries/gstreamer/ugly/default.nix b/pkgs/development/libraries/gstreamer/ugly/default.nix
index d64fcae68965..40b6e169c225 100644
--- a/pkgs/development/libraries/gstreamer/ugly/default.nix
+++ b/pkgs/development/libraries/gstreamer/ugly/default.nix
@@ -15,7 +15,6 @@
 , x264
 , libintl
 , lib
-, opencore-amr
 , IOKit
 , CoreFoundation
 , DiskArbitration
@@ -26,13 +25,13 @@
 
 stdenv.mkDerivation rec {
   pname = "gst-plugins-ugly";
-  version = "1.22.9";
+  version = "1.24.2";
 
   outputs = [ "out" "dev" ];
 
   src = fetchurl {
     url = "https://gstreamer.freedesktop.org/src/${pname}/${pname}-${version}.tar.xz";
-    hash = "sha256-C/aF1mAVoB3T/BZxtkocissyHdnUq54Fopqxl4KqYjY=";
+    hash = "sha256-RdqYvxBAyUcv1Z9icSgt4lo3IauFt4qq+BBJSVUPvvU=";
   };
 
   nativeBuildInputs = [
@@ -49,7 +48,6 @@ stdenv.mkDerivation rec {
     gst-plugins-base
     orc
     libintl
-    opencore-amr
   ] ++ lib.optionals enableGplPlugins [
     a52dec
     libcdio
diff --git a/pkgs/development/libraries/gstreamer/vaapi/default.nix b/pkgs/development/libraries/gstreamer/vaapi/default.nix
index 1a6358839707..a5cd9cace4e7 100644
--- a/pkgs/development/libraries/gstreamer/vaapi/default.nix
+++ b/pkgs/development/libraries/gstreamer/vaapi/default.nix
@@ -24,11 +24,11 @@
 
 stdenv.mkDerivation rec {
   pname = "gstreamer-vaapi";
-  version = "1.22.9";
+  version = "1.24.2";
 
   src = fetchurl {
     url = "https://gstreamer.freedesktop.org/src/${pname}/${pname}-${version}.tar.xz";
-    hash = "sha256-i6INqMTL9bKVPbqQRnLEJ10AU+FSj5f9+OWZQseIPKg=";
+    hash = "sha256-zFq4yIRD4PW/I9YRC0qsM99Z5K5ib1NtlosWBcx7li8=";
   };
 
   outputs = [
diff --git a/pkgs/development/libraries/gstreamer/viperfx/default.nix b/pkgs/development/libraries/gstreamer/viperfx/default.nix
index 83c7d75e98c1..0f8e8914e2e9 100644
--- a/pkgs/development/libraries/gstreamer/viperfx/default.nix
+++ b/pkgs/development/libraries/gstreamer/viperfx/default.nix
@@ -2,7 +2,7 @@
 , stdenv
 , fetchFromGitHub
 , pkg-config
-, wrapGAppsHook
+, wrapGAppsHook3
 , gst_all_1
 , cmake
 }:
@@ -17,7 +17,7 @@ stdenv.mkDerivation rec {
     sha256 = "sha256-0so4jV56nl3tZHuZpvtyMrpOZ4tNJ59Pyj6zbV5bJ5Y=";
   };
 
-  nativeBuildInputs = [ cmake pkg-config wrapGAppsHook ];
+  nativeBuildInputs = [ cmake pkg-config wrapGAppsHook3 ];
 
   propagatedBuildInputs = [
     gst_all_1.gstreamer
diff --git a/pkgs/development/libraries/gtk-frdp/default.nix b/pkgs/development/libraries/gtk-frdp/default.nix
index 72cefea7e59a..b3edf0ba4853 100644
--- a/pkgs/development/libraries/gtk-frdp/default.nix
+++ b/pkgs/development/libraries/gtk-frdp/default.nix
@@ -8,21 +8,21 @@
 , gobject-introspection
 , glib
 , gtk3
-, freerdp
+, freerdp3
 , fuse3
 , unstableGitUpdater
 }:
 
 stdenv.mkDerivation rec {
   pname = "gtk-frdp";
-  version = "unstable-2023-09-16";
+  version = "3.37.1-unstable-2024-03-01";
 
   src = fetchFromGitLab {
     domain = "gitlab.gnome.org";
     owner = "GNOME";
     repo = pname;
-    rev = "62fc62c5ccb7634f0bc87c57a4673877c24c94ed";
-    sha256 = "H+ebFWjpmp4Ua22Bd6K3LsxNHqEbtpawnzA5ry8+XFc=";
+    rev = "11e9fcbee8ca5ec70456dd5b616b2560d7f73adc";
+    sha256 = "2e/bAZFRTbBU4ZfgMFHiN9JwVm4qXSRtirPvbC3oT5s=";
   };
 
   nativeBuildInputs = [
@@ -36,12 +36,14 @@ stdenv.mkDerivation rec {
   buildInputs = [
     glib
     gtk3
-    freerdp
+    freerdp3
     fuse3
   ];
 
   passthru = {
-    updateScript = unstableGitUpdater { };
+    updateScript = unstableGitUpdater {
+      tagPrefix = "v";
+    };
   };
 
   env.NIX_CFLAGS_COMPILE = toString (lib.optionals stdenv.isDarwin [
diff --git a/pkgs/development/libraries/gtk/4.x.nix b/pkgs/development/libraries/gtk/4.x.nix
index 036d1ab0d49d..34a5582ffa67 100644
--- a/pkgs/development/libraries/gtk/4.x.nix
+++ b/pkgs/development/libraries/gtk/4.x.nix
@@ -39,10 +39,11 @@
 , waylandSupport ? stdenv.isLinux
 , libGL
 # experimental and can cause crashes in inspector
-, vulkanSupport ? false
+, vulkanSupport ? stdenv.isLinux
 , shaderc
 , vulkan-loader
 , vulkan-headers
+, libdrm
 , wayland
 , wayland-protocols
 , wayland-scanner
@@ -69,7 +70,7 @@ in
 
 stdenv.mkDerivation (finalAttrs: {
   pname = "gtk4";
-  version = "4.12.5";
+  version = "4.14.3";
 
   outputs = [ "out" "dev" ] ++ lib.optionals x11Support [ "devdoc" ];
   outputBin = "dev";
@@ -81,7 +82,7 @@ stdenv.mkDerivation (finalAttrs: {
 
   src = fetchurl {
     url = with finalAttrs; "mirror://gnome/sources/gtk/${lib.versions.majorMinor version}/gtk-${version}.tar.xz";
-    sha256 = "KLNW1ZDuaO9ibi75ggst0hRBSEqaBCpaPwxA6d/E9Pg=";
+    hash = "sha256-K+XIWL3vEQTTeEjJd5wIk3LI0xUD9u/EuU5TtUb8mkM=";
   };
 
   depsBuildBuild = [
@@ -116,6 +117,7 @@ stdenv.mkDerivation (finalAttrs: {
     isocodes
   ] ++ lib.optionals vulkanSupport [
     vulkan-headers
+    libdrm
   ] ++ [
     gst_all_1.gst-plugins-base
     gst_all_1.gst-plugins-bad
@@ -161,24 +163,21 @@ stdenv.mkDerivation (finalAttrs: {
     vulkan-loader
   ] ++ [
     # Required for GSettings schemas at runtime.
-    # Will be picked up by wrapGAppsHook.
+    # Will be picked up by wrapGAppsHook4.
     gsettings-desktop-schemas
   ];
 
   mesonFlags = [
     # ../docs/tools/shooter.c:4:10: fatal error: 'cairo-xlib.h' file not found
-    "-Ddocumentation=${lib.boolToString x11Support}"
+    (lib.mesonBool "documentation" x11Support)
     "-Dbuild-tests=false"
-    "-Dtracker=${if trackerSupport then "enabled" else "disabled"}"
-    "-Dbroadway-backend=${lib.boolToString broadwaySupport}"
-  ] ++ lib.optionals vulkanSupport [
-    "-Dvulkan=enabled"
-  ] ++ lib.optionals (!cupsSupport) [
-    "-Dprint-cups=disabled"
+    (lib.mesonEnable "tracker" trackerSupport)
+    (lib.mesonBool "broadway-backend" broadwaySupport)
+    (lib.mesonEnable "vulkan" vulkanSupport)
+    (lib.mesonEnable "print-cups" cupsSupport)
+    (lib.mesonBool "x11-backend" x11Support)
   ] ++ lib.optionals (stdenv.isDarwin && !stdenv.isAarch64) [
     "-Dmedia-gstreamer=disabled" # requires gstreamer-gl
-  ] ++ lib.optionals (!x11Support) [
-    "-Dx11-backend=false"
   ];
 
   doCheck = false; # needs X11
@@ -199,7 +198,7 @@ stdenv.mkDerivation (finalAttrs: {
       --replace 'if not meson.is_cross_build()' 'if ${lib.boolToString compileSchemas}'
 
     files=(
-      build-aux/meson/gen-demo-header.py
+      build-aux/meson/gen-profile-conf.py
       build-aux/meson/gen-visibility-macros.py
       demos/gtk-demo/geninclude.py
       gdk/broadway/gen-c-array.py
diff --git a/pkgs/development/libraries/gtkmm/4.x.nix b/pkgs/development/libraries/gtkmm/4.x.nix
index 21bfdd858c29..36ff98d9f165 100644
--- a/pkgs/development/libraries/gtkmm/4.x.nix
+++ b/pkgs/development/libraries/gtkmm/4.x.nix
@@ -18,13 +18,13 @@
 
 stdenv.mkDerivation rec {
   pname = "gtkmm";
-  version = "4.12.0";
+  version = "4.14.0";
 
   outputs = [ "out" "dev" ];
 
   src = fetchurl {
     url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
-    sha256 = "+8PnYYEjNFwBSO9xq7ZUjUIfUrsiT72jSHW2d9wDLJI=";
+    hash = "sha256-k1CgREt0TKPcaVhuvRtnB1IJIrbZ9PIyEDzmA6Jx7No=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/libraries/gtksourceview/5.x.nix b/pkgs/development/libraries/gtksourceview/5.x.nix
index c54017312e1e..4b5f52c22b77 100644
--- a/pkgs/development/libraries/gtksourceview/5.x.nix
+++ b/pkgs/development/libraries/gtksourceview/5.x.nix
@@ -24,7 +24,7 @@
 
 stdenv.mkDerivation (finalAttrs: {
   pname = "gtksourceview";
-  version = "5.10.0";
+  version = "5.12.0";
 
   outputs = [ "out" "dev" "devdoc" ];
 
@@ -32,7 +32,7 @@ stdenv.mkDerivation (finalAttrs: {
     inherit (finalAttrs) pname version;
   in fetchurl {
     url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
-    sha256 = "s4owEMNPWeE7BRdenSDKAqMRBEP+wrHldHQTgBvJwj8=";
+    hash = "sha256-2vMv9dMVDWOFkX01A6hbngR7oViysDB5MUycAIE/oB8=";
   };
 
   patches = [
@@ -75,7 +75,7 @@ stdenv.mkDerivation (finalAttrs: {
   ];
 
   mesonFlags = [
-    "-Dgtk_doc=true"
+    "-Ddocumentation=true"
   ];
 
   doCheck = stdenv.isLinux;
@@ -115,5 +115,7 @@ stdenv.mkDerivation (finalAttrs: {
     platforms = platforms.unix;
     license = licenses.lgpl21Plus;
     maintainers = teams.gnome.members;
+    # https://hydra.nixos.org/build/258191535/nixlog/1
+    broken = stdenv.isDarwin && stdenv.isx86_64;
   };
 })
diff --git a/pkgs/development/libraries/gvfs/default.nix b/pkgs/development/libraries/gvfs/default.nix
index 20278435cedf..aba944becf76 100644
--- a/pkgs/development/libraries/gvfs/default.nix
+++ b/pkgs/development/libraries/gvfs/default.nix
@@ -29,10 +29,10 @@
 , libmtp
 , gnomeSupport ? false
 , gnome
-, gcr
+, gcr_4
 , glib-networking
 , gnome-online-accounts
-, wrapGAppsHook
+, wrapGAppsHook3
 , libimobiledevice
 , libbluray
 , libcdio-paranoia
@@ -40,17 +40,19 @@
 , openssh
 , libsecret
 , libgdata
+, libmsgraph
 , python3
+, python3Packages
 , gsettings-desktop-schemas
 }:
 
 stdenv.mkDerivation rec {
   pname = "gvfs";
-  version = "1.52.2";
+  version = "1.54.0";
 
   src = fetchurl {
     url = "mirror://gnome/sources/gvfs/${lib.versions.majorMinor version}/gvfs-${version}.tar.xz";
-    hash = "sha256-pkOs6qBTyqwNjv+aAV9jbkvRuwnP4nhk40fbZ0YOe5E=";
+    hash = "sha256-9T2B34bC6GzdJRgsLYpmmiI3HoNiPe0bnVQW3Pxt42Y=";
   };
 
   patches = [
@@ -70,7 +72,7 @@ stdenv.mkDerivation rec {
     python3
     pkg-config
     gettext
-    wrapGAppsHook
+    wrapGAppsHook3
     libxslt
     docbook_xsl
     docbook_xml_dtd_42
@@ -100,11 +102,12 @@ stdenv.mkDerivation rec {
     polkit
     libcdio-paranoia
   ] ++ lib.optionals gnomeSupport [
-    gcr
+    gcr_4
     glib-networking # TLS support
     gnome-online-accounts
     libsecret
     libgdata
+    libmsgraph
   ];
 
   mesonFlags = [
@@ -126,6 +129,7 @@ stdenv.mkDerivation rec {
     "-Dgoa=false"
     "-Dkeyring=false"
     "-Dgoogle=false"
+    "-Donedrive=false"
   ] ++ lib.optionals (avahi == null) [
     "-Ddnssd=false"
   ] ++ lib.optionals (samba == null) [
diff --git a/pkgs/development/libraries/hax11/default.nix b/pkgs/development/libraries/hax11/default.nix
index 42851f0cf300..fba0a560e993 100644
--- a/pkgs/development/libraries/hax11/default.nix
+++ b/pkgs/development/libraries/hax11/default.nix
@@ -9,7 +9,7 @@
 
 multiStdenv.mkDerivation (finalAttrs: {
   pname = "hax11";
-  version = "unstable-2023-09-25";
+  version = "0-unstable-2023-09-25";
 
   src = fetchFromGitHub {
     owner = "CyberShadow";
diff --git a/pkgs/development/libraries/icu/make-icu.nix b/pkgs/development/libraries/icu/make-icu.nix
index 836a7e3c73a6..3e65e80ef7c4 100644
--- a/pkgs/development/libraries/icu/make-icu.nix
+++ b/pkgs/development/libraries/icu/make-icu.nix
@@ -1,6 +1,6 @@
 { stdenv, lib, buildPackages, fetchurl, fixDarwinDylibNames, testers }:
 
-{ version, hash, patches ? [], patchFlags ? [] }:
+{ version, hash, patches ? [], patchFlags ? [], withStatic ? stdenv.hostPlatform.isStatic }:
 
 let
   # Cross-compiled icu4c requires a build-root of a native compile
@@ -36,9 +36,12 @@ let
       sed -e 's/LDFLAGSICUDT=-nodefaultlibs -nostdlib/LDFLAGSICUDT=/' -i config/mh-linux
     '';
 
+    dontDisableStatic = withStatic;
+
     configureFlags = [ "--disable-debug" ]
       ++ lib.optional (stdenv.isFreeBSD || stdenv.isDarwin) "--enable-rpath"
-      ++ lib.optional (stdenv.buildPlatform != stdenv.hostPlatform) "--with-cross-build=${nativeBuildRoot}";
+      ++ lib.optional (stdenv.buildPlatform != stdenv.hostPlatform) "--with-cross-build=${nativeBuildRoot}"
+      ++ lib.optional withStatic "--enable-static";
 
     enableParallelBuilding = true;
 
@@ -58,7 +61,7 @@ let
   realAttrs = baseAttrs // {
     name = pname + "-" + version;
 
-    outputs = [ "out" "dev" ];
+    outputs = [ "out" "dev" ] ++ lib.optional withStatic "static";
     outputBin = "dev";
 
     # FIXME: This fixes dylib references in the dylibs themselves, but
@@ -66,7 +69,10 @@ let
     nativeBuildInputs = lib.optional stdenv.hostPlatform.isDarwin fixDarwinDylibNames;
 
     # remove dependency on bootstrap-tools in early stdenv build
-    postInstall = lib.optionalString stdenv.isDarwin ''
+    postInstall = lib.optionalString withStatic ''
+      mkdir -p $static/lib
+      mv -v lib/*.a $static/lib
+    '' + lib.optionalString stdenv.isDarwin ''
       sed -i 's/INSTALL_CMD=.*install/INSTALL_CMD=install/' $out/lib/icu/${version}/pkgdata.inc
     '' + (let
       replacements = [
@@ -75,6 +81,8 @@ let
         { from = "\${pkglibdir}/pkgdata.inc"; to = "${placeholder "dev"}/lib/icu/pkgdata.inc"; } # --incpkgdatafile
       ];
     in ''
+      rm $out/share/icu/${version}/install-sh $out/share/icu/${version}/mkinstalldirs # Avoid having a runtime dependency on bash
+
       substituteInPlace "$dev/bin/icu-config" \
         ${lib.concatMapStringsSep " " (r: "--replace '${r.from}' '${r.to}'") replacements}
     '');
diff --git a/pkgs/development/libraries/imgui/default.nix b/pkgs/development/libraries/imgui/default.nix
index ed15d6229d9e..8ea1a79a1a66 100644
--- a/pkgs/development/libraries/imgui/default.nix
+++ b/pkgs/development/libraries/imgui/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "imgui";
-  version = "1.90.5";
+  version = "1.90.6";
 
   src = fetchFromGitHub {
     owner = "ocornut";
     repo = "imgui";
     rev = "v${version}";
-    sha256 = "sha256-iTs8bcCAR8lvN1tcKmwyB3CcFmqR1QpqdGqdER920rM=";
+    sha256 = "sha256-FSob6FPfg0tF0n72twA5/moLvEaB251BPkIDJUXhYbg=";
   };
 
   dontBuild = true;
diff --git a/pkgs/development/libraries/ipu6-camera-hal/default.nix b/pkgs/development/libraries/ipu6-camera-hal/default.nix
index 3ec63fd0807d..ff490414da85 100644
--- a/pkgs/development/libraries/ipu6-camera-hal/default.nix
+++ b/pkgs/development/libraries/ipu6-camera-hal/default.nix
@@ -82,7 +82,7 @@ stdenv.mkDerivation {
     description = "HAL for processing of images in userspace";
     homepage = "https://github.com/intel/ipu6-camera-hal";
     license = licenses.asl20;
-    maintainers = with maintainers; [ hexa ];
+    maintainers = with maintainers; [ ];
     platforms = [ "x86_64-linux" ];
   };
 }
diff --git a/pkgs/development/libraries/java/commons/bcel/default.nix b/pkgs/development/libraries/java/commons/bcel/default.nix
index f25f4a552b7c..0387b5dd9e30 100644
--- a/pkgs/development/libraries/java/commons/bcel/default.nix
+++ b/pkgs/development/libraries/java/commons/bcel/default.nix
@@ -1,12 +1,12 @@
 {lib, stdenv, fetchurl}:
 
 stdenv.mkDerivation rec {
-  version = "6.8.1";
+  version = "6.8.2";
   pname = "commons-bcel";
 
   src = fetchurl {
     url    = "mirror://apache/commons/bcel/binaries/bcel-${version}-bin.tar.gz";
-    hash   = "sha256-a7PqcVvS+7tHSU2uXi5gLpl82ZN9hA03VEnCnc5cnRc=";
+    hash   = "sha256-VRCRxy+P3uPW9gWy9xHfJ35muhWCHtXNimRmTfba+04=";
   };
 
   installPhase = ''
diff --git a/pkgs/development/libraries/java/commons/io/default.nix b/pkgs/development/libraries/java/commons/io/default.nix
index 4c010829c6ff..254709052348 100644
--- a/pkgs/development/libraries/java/commons/io/default.nix
+++ b/pkgs/development/libraries/java/commons/io/default.nix
@@ -1,12 +1,12 @@
 { lib, stdenv, fetchurl }:
 
 stdenv.mkDerivation rec {
-  version = "2.15.1";
+  version = "2.16.1";
   pname = "commons-io";
 
   src = fetchurl {
     url    = "mirror://apache/commons/io/binaries/${pname}-${version}-bin.tar.gz";
-    sha256 = "sha256-nYoYGHetdd3vFryFXLxuvvSUCIs6VZyPwWb8s0h+edg=";
+    sha256 = "sha256-4+YYSDyCHwUwlw71nAnGy4g9GOl1Z8qr3gHQEyv8EPo=";
   };
 
   installPhase = ''
diff --git a/pkgs/development/libraries/java/commons/logging/default.nix b/pkgs/development/libraries/java/commons/logging/default.nix
index 085efc6e52b5..f7debe8a7bdc 100644
--- a/pkgs/development/libraries/java/commons/logging/default.nix
+++ b/pkgs/development/libraries/java/commons/logging/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   pname = "commons-logging";
-  version = "1.3.0";
+  version = "1.3.1";
 
   src = fetchurl {
     url    = "mirror://apache/commons/logging/binaries/commons-logging-${version}-bin.tar.gz";
-    sha256 = "sha256-ij6jOi1Y/iQ/9Ht41nKtmOdZCvf0NmNseFGxBpyq1fg=";
+    sha256 = "sha256-mM85vfWDc88fNwwflvnRvoh/tb+jDH3o+96RZa9Sp7w=";
   };
 
   installPhase = ''
diff --git a/pkgs/development/libraries/jellyfin-ffmpeg/default.nix b/pkgs/development/libraries/jellyfin-ffmpeg/default.nix
index 1b2bd8a3e866..4498a995a4d7 100644
--- a/pkgs/development/libraries/jellyfin-ffmpeg/default.nix
+++ b/pkgs/development/libraries/jellyfin-ffmpeg/default.nix
@@ -1,10 +1,11 @@
 { ffmpeg_6-full
 , fetchFromGitHub
+, fetchpatch
 , lib
 }:
 
 let
-  version = "6.0.1-5";
+  version = "6.0.1-6";
 in
 
 (ffmpeg_6-full.override {
@@ -13,13 +14,19 @@ in
     owner = "jellyfin";
     repo = "jellyfin-ffmpeg";
     rev = "v${version}";
-    hash = "sha256-y/J4iBbqtyyMnTb6R3lTVSOQD8oPo8liyVA5GQ5BvmM=";
+    hash = "sha256-jy5LPurjuSIMZlzVZcuaqAwAZunbYc9/6aJf+hna0Kw=";
   };
 }).overrideAttrs (old: {
   pname = "jellyfin-ffmpeg";
 
   # Clobber upstream patches as they don't apply to the Jellyfin fork
-  patches = [];
+  patches = [
+    (fetchpatch {
+      name = "fix_build_failure_due_to_libjxl_version_to_new";
+      url = "https://git.ffmpeg.org/gitweb/ffmpeg.git/patch/75b1a555a70c178a9166629e43ec2f6250219eb2";
+      hash = "sha256-+2kzfPJf5piim+DqEgDuVEEX5HLwRsxq0dWONJ4ACrU=";
+    })
+  ];
 
   configureFlags = old.configureFlags ++ [
     "--extra-version=Jellyfin"
diff --git a/pkgs/development/libraries/kde-frameworks/kded.nix b/pkgs/development/libraries/kde-frameworks/kded.nix
index 02364ba72f36..e369b8fbae41 100644
--- a/pkgs/development/libraries/kde-frameworks/kded.nix
+++ b/pkgs/development/libraries/kde-frameworks/kded.nix
@@ -1,5 +1,5 @@
 {
-  mkDerivation, lib, propagate, wrapGAppsHook,
+  mkDerivation, lib, propagate, wrapGAppsHook3,
   extra-cmake-modules, kdoctools,
   gsettings-desktop-schemas, kconfig, kcoreaddons, kcrash, kdbusaddons,
   kservice, qtbase,
@@ -7,7 +7,7 @@
 
 mkDerivation {
   pname = "kded";
-  nativeBuildInputs = [ extra-cmake-modules kdoctools wrapGAppsHook ];
+  nativeBuildInputs = [ extra-cmake-modules kdoctools wrapGAppsHook3 ];
   buildInputs = [
     gsettings-desktop-schemas kconfig kcoreaddons kcrash kdbusaddons
     kservice qtbase
diff --git a/pkgs/development/libraries/kerberos/krb5.nix b/pkgs/development/libraries/kerberos/krb5.nix
index bfa2974bdc5b..9f3fbdbf7eb0 100644
--- a/pkgs/development/libraries/kerberos/krb5.nix
+++ b/pkgs/development/libraries/kerberos/krb5.nix
@@ -46,7 +46,7 @@ stdenv.mkDerivation rec {
     ++ lib.optionals staticOnly [ "--enable-static" "--disable-shared" ]
     ++ lib.optional withLdap "--with-ldap"
     ++ lib.optional withVerto "--with-system-verto"
-    ++ lib.optional stdenv.isFreeBSD ''WARN_CFLAGS=""''
+    ++ lib.optional stdenv.isFreeBSD ''WARN_CFLAGS=''
     ++ lib.optionals (stdenv.buildPlatform != stdenv.hostPlatform)
        [ "krb5_cv_attr_constructor_destructor=yes,yes"
          "ac_cv_func_regcomp=yes"
diff --git a/pkgs/development/libraries/ldutils/default.nix b/pkgs/development/libraries/ldutils/default.nix
index 0268aa8ce62d..157c86ec553e 100644
--- a/pkgs/development/libraries/ldutils/default.nix
+++ b/pkgs/development/libraries/ldutils/default.nix
@@ -1,41 +1,41 @@
-{ mkDerivation
-, lib
-, fetchFromGitLab
-, qtcharts
-, qtsvg
-, qmake
+{
+  mkDerivation,
+  lib,
+  fetchFromGitLab,
+  libsForQt5,
+  cmake,
 }:
-
 mkDerivation rec {
   pname = "ldutils";
-  version = "1.10";
+  version = "1.15";
 
   src = fetchFromGitLab {
     owner = "ldutils-projects";
     repo = pname;
-    rev = "v_${version}";
-    sha256 = "sha256-fP+tZY+ayaeuxPvywO/639sNE+IwrxaEJ245q9HTOCU=";
+    rev = "4fc416f694ce888c5bd4c4432a7730bb6260475c";
+    #rev = "v_${version}";
+    sha256 = "sha256-UMDayvz9RlcR4HVJNn7tN4FKbiKAFRSPaK0osA6OGTI=";
   };
 
-  buildInputs = [
+  buildInputs = with libsForQt5.qt5; [
     qtcharts
     qtsvg
   ];
 
   nativeBuildInputs = [
-    qmake
+    cmake
   ];
 
-  qmakeFlags = [ "ldutils.pro" ];
+  qmakeFlags = ["ldutils.pro"];
 
-  LDUTILS_LIB=placeholder "out";
-  LDUTILS_INCLUDE=placeholder "out";
+  LDUTILS_LIB = placeholder "out";
+  LDUTILS_INCLUDE = placeholder "out";
 
   meta = with lib; {
     description = "Headers and link library for other ldutils projects";
     homepage = "https://gitlab.com/ldutils-projects/ldutils";
     license = licenses.gpl3Plus;
-    maintainers = with maintainers; [ sohalt ];
+    maintainers = with maintainers; [sohalt];
     platforms = platforms.linux;
   };
 }
diff --git a/pkgs/development/libraries/libadwaita/default.nix b/pkgs/development/libraries/libadwaita/default.nix
index bb520e7c2274..1301f9fe923d 100644
--- a/pkgs/development/libraries/libadwaita/default.nix
+++ b/pkgs/development/libraries/libadwaita/default.nix
@@ -22,7 +22,7 @@
 
 stdenv.mkDerivation (finalAttrs: {
   pname = "libadwaita";
-  version = "1.4.4";
+  version = "1.5.0";
 
   outputs = [ "out" "dev" "devdoc" ];
   outputBin = "devdoc"; # demo app
@@ -32,7 +32,7 @@ stdenv.mkDerivation (finalAttrs: {
     owner = "GNOME";
     repo = "libadwaita";
     rev = finalAttrs.version;
-    hash = "sha256-AZP5OH/LIroBeKioe7AIVx0FvFdTpWJ1INdRPZcjmHQ=";
+    hash = "sha256-uEaBI2jHlMdVprMGRZe/8HszO3nEBUJaJtvJjrMOjE4=";
   };
 
   depsBuildBuild = [
diff --git a/pkgs/development/libraries/libajantv2/default.nix b/pkgs/development/libraries/libajantv2/default.nix
index 89d609b327ab..278752b18738 100644
--- a/pkgs/development/libraries/libajantv2/default.nix
+++ b/pkgs/development/libraries/libajantv2/default.nix
@@ -28,6 +28,21 @@ stdenv.mkDerivation rec {
     pkg-config
   ];
 
+  postInstall = ''
+    mkdir -p "$out/lib/pkgconfig"
+    cat >"$out/lib/pkgconfig/libajantv2.pc" <<EOF
+    prefix=$out
+    libdir=\''${prefix}/lib
+    includedir=\''${prefix}/include/ajalibraries
+
+    Name: libajantv2
+    Description: Library for controlling AJA NTV2 video devices
+    Version: ${version}
+    Libs: -L\''${libdir} -lajantv2
+    Cflags: -I\''${includedir} -I\''${includedir}/ajantv2/includes
+    EOF
+  '';
+
   meta = with lib; {
     description = "AJA NTV2 Open Source Static Libs and Headers for building applications that only wish to statically link against";
     homepage = "https://github.com/aja-video/ntv2";
diff --git a/pkgs/development/libraries/libaom/default.nix b/pkgs/development/libraries/libaom/default.nix
index ffac6412ef95..474b1664fbe9 100644
--- a/pkgs/development/libraries/libaom/default.nix
+++ b/pkgs/development/libraries/libaom/default.nix
@@ -1,6 +1,11 @@
 { lib, stdenv, fetchzip, yasm, perl, cmake, pkg-config, python3
 , enableVmaf ? true, libvmaf
 , gitUpdater
+
+# for passthru.tests
+, ffmpeg
+, libavif
+, libheif
 }:
 
 let
@@ -8,11 +13,11 @@ let
 in
 stdenv.mkDerivation rec {
   pname = "libaom";
-  version = "3.8.2";
+  version = "3.9.0";
 
   src = fetchzip {
     url = "https://aomedia.googlesource.com/aom/+archive/v${version}.tar.gz";
-    hash = "sha256-x152jIe7QxeprFEFJnXBfou8yHuW0oHImLIVkSxByWw=";
+    hash = "sha256-ON/BWCO2k7fADW3ZANKjnRE8SrQZpjdyUF1N0fD/xnc=";
     stripRoot = false;
   };
 
@@ -67,6 +72,10 @@ stdenv.mkDerivation rec {
       rev-prefix = "v";
       ignoredVersions = "(alpha|beta|rc).*";
     };
+    tests = {
+      inherit libavif libheif;
+      ffmpeg = ffmpeg.override { withAom = true; };
+    };
   };
 
   meta = with lib; {
diff --git a/pkgs/development/libraries/libarchive/default.nix b/pkgs/development/libraries/libarchive/default.nix
index ac8ebcb3eb1c..5e37255d235b 100644
--- a/pkgs/development/libraries/libarchive/default.nix
+++ b/pkgs/development/libraries/libarchive/default.nix
@@ -1,12 +1,12 @@
 { lib
 , stdenv
 , fetchFromGitHub
-, fetchpatch
 , acl
 , attr
 , autoreconfHook
 , bzip2
 , e2fsprogs
+, glibcLocalesUtf8
 , lzo
 , openssl
 , pkg-config
@@ -28,29 +28,15 @@
 assert xarSupport -> libxml2 != null;
 stdenv.mkDerivation (finalAttrs: {
   pname = "libarchive";
-  version = "3.7.2";
+  version = "3.7.4";
 
   src = fetchFromGitHub {
     owner = "libarchive";
     repo = "libarchive";
     rev = "v${finalAttrs.version}";
-    hash = "sha256-p2JgJ/rvqaQ6yyXSh+ehScUH565ud5bQncl+lOnsWfc=";
+    hash = "sha256-czNKXHoEn1x4deNErnqp/NZfCglF1CxNoLtZ8tcl394=";
   };
 
-  patches = [
-    # Pull fix for test failure on 32-bit systems:
-    (fetchpatch {
-      name = "32-bit-tests-fix.patch";
-      url = "https://github.com/libarchive/libarchive/commit/3bd918d92f8c34ba12de9c6604d96f9e262a59fc.patch";
-      hash = "sha256-RM3xFM6S2DkM5DJ0kAba8eLzEXuY5/7AaU06maHJ6rM=";
-    })
-    (fetchpatch {
-      name = "fix-suspicious-commit-from-known-bad-actor.patch";
-      url = "https://github.com/libarchive/libarchive/commit/6110e9c82d8ba830c3440f36b990483ceaaea52c.patch";
-      hash = "sha256-/j6rJ0xWhtXU0YCu1LOokxxNppy5Of6Q0XyO4U6la7M=";
-    })
-  ];
-
   outputs = [ "out" "lib" "dev" ];
 
   postPatch = let
@@ -70,17 +56,18 @@ stdenv.mkDerivation (finalAttrs: {
       "cpio/test/test_format_newc.c"
     ];
     removeTest = testPath: ''
-      substituteInPlace Makefile.am --replace "${testPath}" ""
+      substituteInPlace Makefile.am --replace-fail "${testPath}" ""
       rm "${testPath}"
     '';
   in ''
-    substituteInPlace Makefile.am --replace '/bin/pwd' "$(type -P pwd)"
+    substituteInPlace Makefile.am --replace-fail '/bin/pwd' "$(type -P pwd)"
 
     ${lib.concatStringsSep "\n" (map removeTest skipTestPaths)}
   '';
 
   nativeBuildInputs = [
     autoreconfHook
+    glibcLocalesUtf8 # test_I test requires an UTF-8 locale
     pkg-config
   ];
 
@@ -107,6 +94,11 @@ stdenv.mkDerivation (finalAttrs: {
   # https://github.com/libarchive/libarchive/issues/1475
   doCheck = !stdenv.hostPlatform.isMusl;
 
+  preCheck = ''
+    # Need an UTF-8 locale for test_I test.
+    export LANG=en_US.UTF-8
+  '';
+
   preFixup = ''
     sed -i $lib/lib/libarchive.la \
       -e 's|-lcrypto|-L${lib.getLib openssl}/lib -lcrypto|' \
diff --git a/pkgs/development/libraries/libcifpp/default.nix b/pkgs/development/libraries/libcifpp/default.nix
index a41736004ecb..a5dbf01492a5 100644
--- a/pkgs/development/libraries/libcifpp/default.nix
+++ b/pkgs/development/libraries/libcifpp/default.nix
@@ -3,20 +3,19 @@
 , boost
 , cmake
 , fetchFromGitHub
-, fetchpatch
 , eigen
 , zlib
 }:
 
 stdenv.mkDerivation (finalAttrs: {
   pname = "libcifpp";
-  version = "7.0.3";
+  version = "7.0.4";
 
   src = fetchFromGitHub {
     owner = "PDB-REDO";
     repo = "libcifpp";
     rev = "refs/tags/v${finalAttrs.version}";
-    hash = "sha256-YRK648gJ2UlgeG5GHMjTid1At0lYt7Zqu4/+O5WG/OM=";
+    hash = "sha256-/dX77KRYmTIj8jxRzQRlpG/ktqDL1jjySux/JqHnE3I=";
   };
 
   nativeBuildInputs = [
@@ -34,6 +33,11 @@ stdenv.mkDerivation (finalAttrs: {
     zlib
   ];
 
+  # cmake requires the existence of this directory when building dssp
+  postInstall = ''
+    mkdir -p $out/share/libcifpp
+  '';
+
   meta = with lib; {
     description = "Manipulate mmCIF and PDB files";
     homepage = "https://github.com/PDB-REDO/libcifpp";
diff --git a/pkgs/development/libraries/libcloudproviders/default.nix b/pkgs/development/libraries/libcloudproviders/default.nix
index 6161ea78174d..8b6722d9cde7 100644
--- a/pkgs/development/libraries/libcloudproviders/default.nix
+++ b/pkgs/development/libraries/libcloudproviders/default.nix
@@ -21,7 +21,7 @@ stdenv.mkDerivation rec {
 
   src = fetchurl {
     url = "mirror://gnome/sources/libcloudproviders/${lib.versions.majorMinor version}/libcloudproviders-${version}.tar.xz";
-    sha256 = "O3URCzpP3vTFxaRA5IcB/gVNKuBh0VbIkTa7W6BedLc=";
+    hash = "sha256-O3URCzpP3vTFxaRA5IcB/gVNKuBh0VbIkTa7W6BedLc=";
   };
 
   outputs = [ "out" "dev" "devdoc" ];
diff --git a/pkgs/development/libraries/libcxxrt/default.nix b/pkgs/development/libraries/libcxxrt/default.nix
index cd9e7778a80b..b9c3f82558a4 100644
--- a/pkgs/development/libraries/libcxxrt/default.nix
+++ b/pkgs/development/libraries/libcxxrt/default.nix
@@ -2,7 +2,7 @@
 
 stdenv.mkDerivation {
   pname = "libcxxrt";
-  version = "unstable-2024-04-15";
+  version = "4.0.10-unstable-2024-04-15";
 
   src = fetchFromGitHub {
     owner = "libcxxrt";
@@ -13,9 +13,11 @@ stdenv.mkDerivation {
 
   nativeBuildInputs = [ cmake ];
 
+  outputs = [ "out" "dev" ];
+
   installPhase = ''
-    mkdir -p $out/include $out/lib
-    cp ../src/cxxabi.h $out/include
+    mkdir -p $dev/include $out/lib
+    cp ../src/cxxabi.h $dev/include
     cp lib/libcxxrt${stdenv.hostPlatform.extensions.library} $out/lib
   '';
 
diff --git a/pkgs/development/libraries/libdatachannel/default.nix b/pkgs/development/libraries/libdatachannel/default.nix
index 62fdba7ba66a..cc6a340355ba 100644
--- a/pkgs/development/libraries/libdatachannel/default.nix
+++ b/pkgs/development/libraries/libdatachannel/default.nix
@@ -14,13 +14,13 @@
 
 stdenv.mkDerivation rec {
   pname = "libdatachannel";
-  version = "0.21.0";
+  version = "0.21.1";
 
   src = fetchFromGitHub {
     owner = "paullouisageneau";
     repo = "libdatachannel";
     rev = "v${version}";
-    hash = "sha256-hxXDovJAmuh15jFaxY9aESoTVVJ3u2twsX31U3txans=";
+    hash = "sha256-sTdA4kCIdY3l/YUNKbXzRDS1O0AFx90k94W3cJpfLIY=";
   };
 
   outputs = [ "out" "dev" ];
diff --git a/pkgs/development/libraries/libdevil/default.nix b/pkgs/development/libraries/libdevil/default.nix
index 36bd2f9ef12f..26c30227f549 100644
--- a/pkgs/development/libraries/libdevil/default.nix
+++ b/pkgs/development/libraries/libdevil/default.nix
@@ -35,6 +35,8 @@ stdenv.mkDerivation (finalAttrs: {
 
   configureFlags = [ "--enable-ILU" "--enable-ILUT" ];
 
+  CXXFLAGS = lib.optionalString stdenv.cc.isClang "-Wno-register";
+
   preConfigure = ''
     sed -i 's, -std=gnu99,,g' configure
     sed -i 's,malloc.h,stdlib.h,g' src-ILU/ilur/ilur.c
diff --git a/pkgs/development/libraries/libdex/default.nix b/pkgs/development/libraries/libdex/default.nix
index 283708693421..a81cc2669529 100644
--- a/pkgs/development/libraries/libdex/default.nix
+++ b/pkgs/development/libraries/libdex/default.nix
@@ -1,6 +1,6 @@
 { stdenv
 , lib
-, fetchFromGitLab
+, fetchurl
 , gi-docgen
 , gobject-introspection
 , meson
@@ -14,16 +14,13 @@
 
 stdenv.mkDerivation rec {
   pname = "libdex";
-  version = "0.4.3";
+  version = "0.6.0";
 
   outputs = [ "out" "dev" "devdoc" ];
 
-  src = fetchFromGitLab {
-    domain = "gitlab.gnome.org";
-    owner = "GNOME";
-    repo = "libdex";
-    rev = version;
-    sha256 = "0GNlgJgAOE3JGwu/6Zsh4sjFapA7nUcGD3lgZZJ0BfQ=";
+  src = fetchurl {
+    url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
+    hash = "sha256-HojSsAYo5Ya3I7f7pRXM6XUvrxISLN5aPA1biDmYUio=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/libraries/libdigidocpp/default.nix b/pkgs/development/libraries/libdigidocpp/default.nix
index 90a169df7734..7f706a220afc 100644
--- a/pkgs/development/libraries/libdigidocpp/default.nix
+++ b/pkgs/development/libraries/libdigidocpp/default.nix
@@ -2,12 +2,12 @@
 , xercesc, xml-security-c, pkg-config, xsd, zlib, xalanc, xxd }:
 
 stdenv.mkDerivation rec {
-  version = "3.16.0";
+  version = "3.17.1";
   pname = "libdigidocpp";
 
   src = fetchurl {
      url = "https://github.com/open-eid/libdigidocpp/releases/download/v${version}/libdigidocpp-${version}.tar.gz";
-     hash = "sha256-XgObeVQJ2X7hNIelGK55RTtkKvU6D+RkLMc24/PZCzY=";
+     hash = "sha256-3qDsIAOiWMZDj2zLE+Os7BoeCPeC4JQ6p8jSBd7PdV0=";
   };
 
   nativeBuildInputs = [ cmake pkg-config xxd ];
diff --git a/pkgs/development/libraries/libeatmydata/default.nix b/pkgs/development/libraries/libeatmydata/default.nix
index 9e8d5970431c..2a76731829a7 100644
--- a/pkgs/development/libraries/libeatmydata/default.nix
+++ b/pkgs/development/libraries/libeatmydata/default.nix
@@ -1,8 +1,6 @@
 { lib
 , stdenv
 , fetchFromGitHub
-, fetchpatch2
-, fetchurl
 , autoreconfHook
 , strace
 , which
@@ -19,24 +17,6 @@ stdenv.mkDerivation rec {
     sha256 = "sha256-0lrYDW51/KSr809whGwg9FYhzcLRfmoxipIgrK1zFCc=";
   };
 
-  patches = [
-    # Fixes "error: redefinition of 'open'" on musl
-    (fetchpatch2 {
-      url = "https://raw.githubusercontent.com/void-linux/void-packages/861ac185a6b60134292ff93d40e40b5391d0aa8e/srcpkgs/libeatmydata/patches/musl.patch";
-      hash = "sha256-MZfTgf2Qn94UpPlYNRM2zK99iKQorKQrlbU5/1WJhJM=";
-    })
-
-    # Don't use transitional LFS64 API, removed in musl 1.2.4.
-    (fetchurl {
-      url = "https://git.alpinelinux.org/aports/plain/main/libeatmydata/lfs64.patch?id=f87f2c59384cc4a8a1b71aaa875be2b3ae2dbce0";
-      hash = "sha256-5Jhy9gunKcbrSmLh0DoP/uwJLgaLd+zKV2iVxiDwiHs=";
-    })
-  ];
-
-  configureFlags = [
-    "CFLAGS=-D_FILE_OFFSET_BITS=64"
-  ];
-
   postPatch = ''
     patchShebangs .
   '';
diff --git a/pkgs/development/libraries/libgbinder/default.nix b/pkgs/development/libraries/libgbinder/default.nix
index 3f30a443e094..cfdfd7482b42 100644
--- a/pkgs/development/libraries/libgbinder/default.nix
+++ b/pkgs/development/libraries/libgbinder/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "libgbinder";
-  version = "1.1.38";
+  version = "1.1.39";
 
   src = fetchFromGitHub {
     owner = "mer-hybris";
     repo = pname;
     rev = version;
-    sha256 = "sha256-k5oCwi1KvyRVawH0d4Kp+MCxkymAtl6zVk7DVRXFVMg=";
+    sha256 = "sha256-O+Fg6NtWdBe0k+XhE/h62C1tvC6Y1BQZWva63sXJDfY=";
   };
 
   outputs = [ "out" "dev" ];
diff --git a/pkgs/development/libraries/libglibutil/default.nix b/pkgs/development/libraries/libglibutil/default.nix
index 66fa722573fd..d96b3505bcb9 100644
--- a/pkgs/development/libraries/libglibutil/default.nix
+++ b/pkgs/development/libraries/libglibutil/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "libglibutil";
-  version = "1.0.77";
+  version = "1.0.79";
 
   src = fetchFromGitHub {
     owner = "sailfishos";
     repo = pname;
     rev = version;
-    sha256 = "sha256-SLpyQsRl7yfCAgK3udSSQo8OZOf6FRCzFKIDDUKg1gs=";
+    sha256 = "sha256-UJsKjvigZuwDL4DyjUE6fXEecgoHrTE+5pO0hVyCwP4=";
   };
 
   outputs = [ "out" "dev" ];
diff --git a/pkgs/development/libraries/libgnomekbd/default.nix b/pkgs/development/libraries/libgnomekbd/default.nix
index fc9924b50834..a5c278956f2d 100644
--- a/pkgs/development/libraries/libgnomekbd/default.nix
+++ b/pkgs/development/libraries/libgnomekbd/default.nix
@@ -8,7 +8,7 @@
 , glib
 , gtk3
 , libxklavier
-, wrapGAppsHook
+, wrapGAppsHook3
 , gnome
 }:
 
@@ -27,7 +27,7 @@ stdenv.mkDerivation rec {
     meson
     ninja
     pkg-config
-    wrapGAppsHook
+    wrapGAppsHook3
     glib
     gobject-introspection
   ];
diff --git a/pkgs/development/libraries/libgnt/default.nix b/pkgs/development/libraries/libgnt/default.nix
index 33ce7fbaa113..3a781a261b8b 100644
--- a/pkgs/development/libraries/libgnt/default.nix
+++ b/pkgs/development/libraries/libgnt/default.nix
@@ -2,20 +2,24 @@
 , gtk-doc, docbook-xsl-nons
 , glib, ncurses, libxml2
 , buildDocs ? true
+, mesonEmulatorHook
 }:
 stdenv.mkDerivation rec {
   pname = "libgnt";
-  version = "2.14.1";
+  version = "2.14.3";
 
   outputs = [ "out" "dev" ] ++ lib.optional buildDocs "devdoc";
 
   src = fetchurl {
     url = "mirror://sourceforge/pidgin/${pname}-${version}.tar.xz";
-    sha256 = "1n2bxg0ignn53c08cp69pj4sdg53kwlqn23rincyjmpr327fdhsy";
+    hash = "sha256-V/VFf3KZnQuxoTmjfydG7BtaAsCU8nEKM52LzqQjYSM=";
   };
 
-  nativeBuildInputs = [ meson ninja pkg-config ]
-    ++ lib.optionals buildDocs [ gtk-doc docbook-xsl-nons ];
+  nativeBuildInputs = [ glib meson ninja pkg-config ]
+    ++ lib.optionals buildDocs [ gtk-doc docbook-xsl-nons ]
+    ++ lib.optionals (buildDocs && !stdenv.buildPlatform.canExecute stdenv.hostPlatform) [
+      mesonEmulatorHook
+    ];
 
   buildInputs = [ glib ncurses libxml2 ];
 
@@ -23,9 +27,11 @@ stdenv.mkDerivation rec {
     substituteInPlace meson.build --replace \
       "ncurses_sys_prefix = '/usr'" \
       "ncurses_sys_prefix = '${lib.getDev ncurses}'"
-  '' + lib.optionalString (!buildDocs) ''
-    sed "/^subdir('doc')$/d" -i meson.build
   '';
+  mesonFlags = [
+    (lib.mesonBool "doc" buildDocs)
+    (lib.mesonBool "python2" false)
+  ];
 
   meta = with lib; {
     description = "An ncurses toolkit for creating text-mode graphical user interfaces";
diff --git a/pkgs/development/libraries/libgpiod/default.nix b/pkgs/development/libraries/libgpiod/default.nix
index 519448b72e3d..fe131f469f0b 100644
--- a/pkgs/development/libraries/libgpiod/default.nix
+++ b/pkgs/development/libraries/libgpiod/default.nix
@@ -3,11 +3,11 @@
 
 stdenv.mkDerivation rec {
   pname = "libgpiod";
-  version = "2.1.1";
+  version = "2.1.2";
 
   src = fetchurl {
     url = "https://git.kernel.org/pub/scm/libs/libgpiod/libgpiod.git/snapshot/libgpiod-${version}.tar.gz";
-    hash = "sha256-CvQ6YInWn50HXPZ8oq5ZcrkIHjjms9Rs6jfWfi32+5s=";
+    hash = "sha256-sb3x4/dSOGlfk+RCBiuvwGkXDyv08M1LjgScpnExofA=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/libraries/libgweather/default.nix b/pkgs/development/libraries/libgweather/default.nix
index 58fb14167bd3..971b23436470 100644
--- a/pkgs/development/libraries/libgweather/default.nix
+++ b/pkgs/development/libraries/libgweather/default.nix
@@ -21,13 +21,13 @@
 
 stdenv.mkDerivation rec {
   pname = "libgweather";
-  version = "4.4.0";
+  version = "4.4.2";
 
   outputs = [ "out" "dev" ] ++ lib.optional withIntrospection "devdoc";
 
   src = fetchurl {
     url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
-    sha256 = "Nm6Gb/KnCLiUz+qUdbjo/1TLPitHfqcqit4Nq+5fSKQ=";
+    hash = "sha256-puQntHcK2kiUXzqpBq9xD8gzz/DULfkfGCgwJ0DXlOw=";
   };
 
   patches = [
diff --git a/pkgs/development/libraries/libhandy/default.nix b/pkgs/development/libraries/libhandy/default.nix
index 19dcb4248f9b..a43ee0986be8 100644
--- a/pkgs/development/libraries/libhandy/default.nix
+++ b/pkgs/development/libraries/libhandy/default.nix
@@ -39,7 +39,7 @@ stdenv.mkDerivation rec {
 
   src = fetchurl {
     url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
-    sha256 = "sha256-BbSXIpBz/1V/ELMm4HTFBm+HQ6MC1IIKuXvLXNLasIc=";
+    hash = "sha256-BbSXIpBz/1V/ELMm4HTFBm+HQ6MC1IIKuXvLXNLasIc=";
   };
 
   depsBuildBuild = [
diff --git a/pkgs/development/libraries/libical/default.nix b/pkgs/development/libraries/libical/default.nix
index 9cfe47fcb4d5..45ca2faf30b9 100644
--- a/pkgs/development/libraries/libical/default.nix
+++ b/pkgs/development/libraries/libical/default.nix
@@ -81,6 +81,14 @@ stdenv.mkDerivation rec {
     ./respect-env-tzdir.patch
   ];
 
+  postPatch = ''
+    # Fix typo in test env setup
+    # https://github.com/libical/libical/commit/03c02ced21494413920744a400c638b0cb5d493f
+    substituteInPlace src/test/libical-glib/CMakeLists.txt \
+      --replace-fail "''${CMAKE_BINARY_DIR}/src/libical-glib;\$ENV{GI_TYPELIB_PATH}" "''${CMAKE_BINARY_DIR}/src/libical-glib:\$ENV{GI_TYPELIB_PATH}" \
+      --replace-fail "''${LIBRARY_OUTPUT_PATH};\$ENV{LD_LIBRARY_PATH}" "''${LIBRARY_OUTPUT_PATH}:\$ENV{LD_LIBRARY_PATH}"
+  '';
+
   # Using install check so we do not have to manually set
   # LD_LIBRARY_PATH and GI_TYPELIB_PATH variables
   # Musl does not support TZDIR.
diff --git a/pkgs/development/libraries/libiconv/default.nix b/pkgs/development/libraries/libiconv/default.nix
index ed162d115298..d8339ba086ad 100644
--- a/pkgs/development/libraries/libiconv/default.nix
+++ b/pkgs/development/libraries/libiconv/default.nix
@@ -63,6 +63,8 @@ stdenv.mkDerivation rec {
     (lib.enableFeature enableShared "shared")
   ] ++ lib.optional stdenv.isFreeBSD "--with-pic";
 
+  passthru = { inherit setupHooks; };
+
   meta = {
     description = "An iconv(3) implementation";
 
diff --git a/pkgs/development/libraries/libirecovery/default.nix b/pkgs/development/libraries/libirecovery/default.nix
index c2a8e16e1d48..45a4a2b93acf 100644
--- a/pkgs/development/libraries/libirecovery/default.nix
+++ b/pkgs/development/libraries/libirecovery/default.nix
@@ -10,7 +10,7 @@
 
 stdenv.mkDerivation rec {
   pname = "libirecovery";
-  version = "1.1.0";
+  version = "1.2.0";
 
   outputs = [ "out" "dev" ];
 
@@ -18,7 +18,7 @@ stdenv.mkDerivation rec {
     owner = "libimobiledevice";
     repo = pname;
     rev = version;
-    hash = "sha256-84xwSOLwPU2Py6X2r6FYESxdc1EuuD6xHEXTUUEdvTE=";
+    hash = "sha256-3C66oNjIZA6Byf1Y2cVQUSLz6Css1y4xFZuQmo7QxMo=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/libraries/libjwt/default.nix b/pkgs/development/libraries/libjwt/default.nix
index 3d26d6a090c6..5643efb7079f 100644
--- a/pkgs/development/libraries/libjwt/default.nix
+++ b/pkgs/development/libraries/libjwt/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "libjwt";
-  version = "1.17.0";
+  version = "1.17.1";
 
   src = fetchFromGitHub {
     owner = "benmcollins";
     repo = "libjwt";
     rev = "v${version}";
-    sha256 = "sha256-ZMmXn/vKARz9Erg3XS2YICSq5u38NZFMDAafXXzE1Ss=";
+    sha256 = "sha256-yMnk4gfUa5c6Inppz9I1h6it41nuJ4By3eDO0YrdB2Y=";
   };
 
   buildInputs = [ jansson openssl ];
diff --git a/pkgs/development/libraries/libjxl/default.nix b/pkgs/development/libraries/libjxl/default.nix
index c91ae27f6805..ab9ff488b351 100644
--- a/pkgs/development/libraries/libjxl/default.nix
+++ b/pkgs/development/libraries/libjxl/default.nix
@@ -27,7 +27,7 @@ in
 
 stdenv.mkDerivation rec {
   pname = "libjxl";
-  version = "0.9.1";
+  version = "0.10.2";
 
   outputs = [ "out" "dev" ];
 
@@ -35,7 +35,7 @@ stdenv.mkDerivation rec {
     owner = "libjxl";
     repo = "libjxl";
     rev = "v${version}";
-    hash = "sha256-n5KNbbw6NQRROEM7Cojla/igRCFNawUq7nfhzJlMlPI=";
+    hash = "sha256-Ip/5fbzt6OfIrHJajnxEe14ppvX1hJ1FSJUBEE/h5YQ=";
     # There are various submodules in `third_party/`.
     fetchSubmodules = true;
   };
diff --git a/pkgs/development/libraries/liblc3/default.nix b/pkgs/development/libraries/liblc3/default.nix
index bcefd8311fbf..3e1be4ba272e 100644
--- a/pkgs/development/libraries/liblc3/default.nix
+++ b/pkgs/development/libraries/liblc3/default.nix
@@ -7,7 +7,7 @@
 
 let
   name = "liblc3";
-  version = "1.1.0";
+  version = "1.1.1";
 in
 stdenv.mkDerivation {
   pname = name;
@@ -17,7 +17,7 @@ stdenv.mkDerivation {
     owner = "google";
     repo = "liblc3";
     rev = "v${version}";
-    sha256 = "sha256-pKd9wOrDjKhWX8vTsg6qkE71FQlsC7VM/uq0ss1vsAQ=";
+    sha256 = "sha256-h9qy04FqlHXp0bOUoP4+WqI0yrM78e56S+DEn3HztYo=";
   };
 
   outputs = [ "out" "dev" ];
@@ -27,11 +27,14 @@ stdenv.mkDerivation {
     ninja
   ];
 
+  # LTO does not work on Darwin: https://github.com/NixOS/nixpkgs/issues/19098
+  mesonFlags = lib.optionals stdenv.isDarwin [ "-Db_lto=false" ];
+
   meta = with lib; {
     description = "LC3 (Low Complexity Communication Codec) is an efficient low latency audio codec";
     homepage = "https://github.com/google/liblc3";
     license = licenses.asl20;
-    platforms = platforms.linux;
+    platforms = platforms.unix;
     maintainers = with maintainers; [ jansol ];
   };
 }
diff --git a/pkgs/development/libraries/libmad/default.nix b/pkgs/development/libraries/libmad/default.nix
index b9096fce9ef0..eee6b4faa5d3 100644
--- a/pkgs/development/libraries/libmad/default.nix
+++ b/pkgs/development/libraries/libmad/default.nix
@@ -7,7 +7,6 @@
 # for passthru.tests
 , audacity
 , mpd
-, mpg321
 , normalize
 , ocamlPackages
 , streamripper
@@ -70,7 +69,7 @@ stdenv.mkDerivation rec {
   preConfigure = "autoconf";
 
   passthru.tests = {
-    inherit audacity mpd mpg321 normalize streamripper vlc;
+    inherit audacity mpd normalize streamripper vlc;
     ocaml-mad = ocamlPackages.mad;
   };
 
diff --git a/pkgs/development/libraries/libmodulemd/default.nix b/pkgs/development/libraries/libmodulemd/default.nix
index ce16753cf540..93e7eb9933fc 100644
--- a/pkgs/development/libraries/libmodulemd/default.nix
+++ b/pkgs/development/libraries/libmodulemd/default.nix
@@ -1,6 +1,7 @@
-{ lib, stdenv
-, substituteAll
+{ stdenv
+, lib
 , fetchFromGitHub
+, fetchpatch2
 , pkg-config
 , meson
 , ninja
@@ -29,10 +30,15 @@ stdenv.mkDerivation rec {
   };
 
   patches = [
-    # Use proper glib devdoc path.
-    (substituteAll {
-      src = ./glib-devdoc.patch;
-      glib_devdoc = glib.devdoc;
+    # Adapt to GLib 2.79 documentation
+    # https://github.com/fedora-modularity/libmodulemd/pull/612
+    (fetchpatch2 {
+      url = "https://github.com/fedora-modularity/libmodulemd/commit/9d2809090cc0cccd7bab67453dc00cf43a289082.patch";
+      hash = "sha256-dMtc6GN6lIDjUReFUhEFJ/8wosASo3tLu4ve72BCXQ8=";
+    })
+    (fetchpatch2 {
+      url = "https://github.com/fedora-modularity/libmodulemd/commit/29c339a31b1c753dcdef041e5c2e0e600e48b59d.patch";
+      hash = "sha256-uniHrQdbcXlJk2hq106SgV/E330LfxDc07E4FbOMLr0=";
     })
   ];
 
@@ -57,6 +63,12 @@ stdenv.mkDerivation rec {
     "-Dgobject_overrides_dir_py3=${placeholder "py"}/${python3.sitePackages}/gi/overrides"
   ];
 
+  postPatch = ''
+    # Use proper glib devdoc path
+    substituteInPlace meson.build --replace-fail \
+      "glib_docpath = join_paths(glib_prefix," "glib_docpath = join_paths('${lib.getOutput "devdoc" glib}',"
+  '';
+
   postFixup = ''
     # Python overrides depend our own typelibs and other packages
     mkdir -p "$py/nix-support"
@@ -69,6 +81,6 @@ stdenv.mkDerivation rec {
     homepage = "https://github.com/fedora-modularity/libmodulemd";
     license = licenses.mit;
     maintainers = with maintainers; [ ];
-    platforms = platforms.linux ++ platforms.darwin ;
+    platforms = platforms.linux ++ platforms.darwin;
   };
 }
diff --git a/pkgs/development/libraries/libmodulemd/glib-devdoc.patch b/pkgs/development/libraries/libmodulemd/glib-devdoc.patch
deleted file mode 100644
index cde42d8e0b2e..000000000000
--- a/pkgs/development/libraries/libmodulemd/glib-devdoc.patch
+++ /dev/null
@@ -1,13 +0,0 @@
-diff --git a/meson.build b/meson.build
-index a8b02b4..dd31a76 100644
---- a/meson.build
-+++ b/meson.build
-@@ -67,7 +67,7 @@ test = find_program('test')
- with_docs = get_option('with_docs')
- if with_docs
-   gtkdoc = dependency('gtk-doc')
--  glib_docpath = join_paths(glib_prefix, 'share', 'gtk-doc', 'html')
-+  glib_docpath = join_paths('@glib_devdoc@', 'share', 'gtk-doc', 'html')
- 
-   ret = run_command ([test, '-e', join_paths(glib_docpath, 'glib/index.html')])
-   if ret.returncode() != 0
diff --git a/pkgs/development/libraries/libopus/default.nix b/pkgs/development/libraries/libopus/default.nix
index 3592c537ac44..d247b8b0efa6 100644
--- a/pkgs/development/libraries/libopus/default.nix
+++ b/pkgs/development/libraries/libopus/default.nix
@@ -18,15 +18,14 @@
 
 stdenv.mkDerivation (finalAttrs: {
   pname = "libopus";
-  version = "1.5.1";
+  version = "1.5.2";
 
   src = fetchurl {
     url = "https://downloads.xiph.org/releases/opus/opus-${finalAttrs.version}.tar.gz";
-    hash = "sha256-uEYQlZuNQXthGqEqIlZeCjcyCXxjidGQmNhEVD40D4U=";
+    hash = "sha256-ZcHS94ufL7IAgsOMvkfJUa1YOTRYduRpQWEu6H+afOE=";
   };
 
   patches = [
-    ./fix-pkg-config-paths.patch
     # Some tests time out easily on slower machines
     ./test-timeout.patch
   ];
diff --git a/pkgs/development/libraries/libopus/fix-pkg-config-paths.patch b/pkgs/development/libraries/libopus/fix-pkg-config-paths.patch
deleted file mode 100644
index d54b7f5558c9..000000000000
--- a/pkgs/development/libraries/libopus/fix-pkg-config-paths.patch
+++ /dev/null
@@ -1,13 +0,0 @@
---- i/meson.build
-+++ w/meson.build
-@@ -591,8 +591,8 @@ pkgconf = configuration_data()
- 
- pkgconf.set('prefix', join_paths(get_option('prefix')))
- pkgconf.set('exec_prefix', '${prefix}')
--pkgconf.set('libdir', '${prefix}/@0@'.format(get_option('libdir')))
--pkgconf.set('includedir', '${prefix}/@0@'.format(get_option('includedir')))
-+pkgconf.set('libdir', '${prefix}' / get_option('libdir'))
-+pkgconf.set('includedir', '${prefix}' / get_option('includedir'))
- pkgconf.set('VERSION', opus_version)
- pkgconf.set('PC_BUILD', pc_build)
- pkgconf.set('LIBM', libm.found() ? '-lm' : '')
diff --git a/pkgs/development/libraries/libowlevelzs/default.nix b/pkgs/development/libraries/libowlevelzs/default.nix
index 7bf8386f252f..e3a4ffb11e8e 100644
--- a/pkgs/development/libraries/libowlevelzs/default.nix
+++ b/pkgs/development/libraries/libowlevelzs/default.nix
@@ -21,7 +21,7 @@ stdenv.mkDerivation rec {
     description = "Zscheile Lowlevel (utility) library";
     homepage = "https://github.com/fogti/libowlevelzs";
     license = licenses.mit;
-    maintainers = [ ];
+    maintainers = with lib.maintainers; [ sigmanificient ];
     platforms = platforms.all;
   };
 }
diff --git a/pkgs/development/libraries/libpanel/default.nix b/pkgs/development/libraries/libpanel/default.nix
index 05b863ad2011..55faa7e62860 100644
--- a/pkgs/development/libraries/libpanel/default.nix
+++ b/pkgs/development/libraries/libpanel/default.nix
@@ -15,14 +15,14 @@
 
 stdenv.mkDerivation rec {
   pname = "libpanel";
-  version = "1.4.1";
+  version = "1.6.0";
 
   outputs = [ "out" "dev" "devdoc" ];
   outputBin = "dev";
 
   src = fetchurl {
     url = "mirror://gnome/sources/libpanel/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
-    sha256 = "mEENAOc0hX7N8zuaIN17D7ONi20x1Dabr8HGc5Krud4=";
+    hash = "sha256-t3NJSjxpMANFzY4nAnRI0RiRgwJswTeAL4hkF8bqMLY=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/libraries/libpeas/2.x.nix b/pkgs/development/libraries/libpeas/2.x.nix
index 61fe424e2c22..141114f0f34c 100644
--- a/pkgs/development/libraries/libpeas/2.x.nix
+++ b/pkgs/development/libraries/libpeas/2.x.nix
@@ -17,13 +17,13 @@
 
 stdenv.mkDerivation rec {
   pname = "libpeas";
-  version = "2.0.1";
+  version = "2.0.2";
 
   outputs = [ "out" "dev" "devdoc" ];
 
   src = fetchurl {
     url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
-    hash = "sha256-ndwdUfOGY9pN9SFjBRt7LOo6JCz67p9afhQPB4TIqnc=";
+    hash = "sha256-8w3/7WPKL0BHe0DhccCjH4DZFCW6Hh5HMg7mQlSA7MM=";
   };
 
   patches = [
diff --git a/pkgs/development/libraries/libpeas/default.nix b/pkgs/development/libraries/libpeas/default.nix
index 922bfba9ad23..9a94b2aa9326 100644
--- a/pkgs/development/libraries/libpeas/default.nix
+++ b/pkgs/development/libraries/libpeas/default.nix
@@ -13,7 +13,7 @@
 , gobject-introspection
 , python3
 , ncurses
-, wrapGAppsHook
+, wrapGAppsHook3
 }:
 
 stdenv.mkDerivation rec {
@@ -48,7 +48,7 @@ stdenv.mkDerivation rec {
     gettext
     gi-docgen
     gobject-introspection
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
diff --git a/pkgs/development/libraries/libproxy/default.nix b/pkgs/development/libraries/libproxy/default.nix
index 340cfafee327..28b4ac66004d 100644
--- a/pkgs/development/libraries/libproxy/default.nix
+++ b/pkgs/development/libraries/libproxy/default.nix
@@ -4,7 +4,6 @@
 , darwin
 , duktape
 , fetchFromGitHub
-, fetchpatch
 , gi-docgen
 , gitUpdater
 , glib
@@ -21,7 +20,7 @@
 
 stdenv.mkDerivation (finalAttrs: {
   pname = "libproxy";
-  version = "0.5.3";
+  version = "0.5.6";
 
   outputs = [ "out" "dev" "devdoc" ];
 
@@ -29,18 +28,10 @@ stdenv.mkDerivation (finalAttrs: {
     owner = "libproxy";
     repo = "libproxy";
     rev = finalAttrs.version;
-    hash = "sha256-qdYB6HJkgboS8kkTvTqLy6Z3JYY5SOJsRl6nZM0iuvw=";
+    hash = "sha256-2uDlKjxzrKlyZKV0BSUDzmLSo2voJKDerbZZkamgNYk=";
   };
 
   patches = [
-    # Minor refactoring. Allows the following patches to apply without rebasing.
-    (fetchpatch {
-      url = "https://github.com/libproxy/libproxy/commit/397f4dc72607cc1bb3b584ffd3de49f8ba80491a.patch";
-      hash = "sha256-iUMBMpcVOLG+NxEj8Nd7JtKZFmoGXn0t6A2r2ayiteg=";
-      includes = [
-        "src/backend/plugins/config-gnome/config-gnome.c"
-      ];
-    })
   ]
   ++ lib.optionals (!stdenv.hostPlatform.isDarwin) [
     # Disable schema presence detection, it would fail because it cannot be autopatched,
@@ -87,7 +78,11 @@ stdenv.mkDerivation (finalAttrs: {
     gsettings-desktop-schemas
   ]);
 
-  mesonFlags = lib.optionals stdenv.hostPlatform.isDarwin [
+  mesonFlags = [
+    # Prevent installing commit hook.
+    "-Drelease=true"
+  ]
+  ++ lib.optionals stdenv.hostPlatform.isDarwin [
     "-Dconfig-gnome=false"
   ];
 
diff --git a/pkgs/development/libraries/libqalculate/default.nix b/pkgs/development/libraries/libqalculate/default.nix
index 34e34a7eeebf..a99b27d38d8c 100644
--- a/pkgs/development/libraries/libqalculate/default.nix
+++ b/pkgs/development/libraries/libqalculate/default.nix
@@ -18,13 +18,13 @@
 
 stdenv.mkDerivation (finalAttrs: {
   pname = "libqalculate";
-  version = "5.0.0";
+  version = "5.1.1";
 
   src = fetchFromGitHub {
     owner = "qalculate";
     repo = "libqalculate";
     rev = "v${finalAttrs.version}";
-    hash = "sha256-VhaGgtSU6+7eMY7ksQMpybmt2JBI80Nwgu7PCKrTorA=";
+    hash = "sha256-cmH92gdQ+fmtOLgx5ibKqLZaQFzx2z+GuXhR62dtftk=";
   };
 
   outputs = [ "out" "dev" "doc" ];
diff --git a/pkgs/development/libraries/librecast/default.nix b/pkgs/development/libraries/librecast/default.nix
index 563a77f3a29c..045b0bb309db 100644
--- a/pkgs/development/libraries/librecast/default.nix
+++ b/pkgs/development/libraries/librecast/default.nix
@@ -7,14 +7,14 @@
 }:
 stdenv.mkDerivation (finalAttrs: {
   name = "librecast";
-  version = "0.7.0";
+  version = "0.8.0";
 
   src = fetchFromGitea {
     domain = "codeberg.org";
     owner = "librecast";
     repo = "librecast";
     rev = "v${finalAttrs.version}";
-    hash = "sha256-NlwYJJn1yewx92y6UKJcj6R2MnPn+XuEiKOmsR2oE3g=";
+    hash = "sha256-8Qit1KFazVG+2TEmSGXiBNawvpc7Ihr/0mx4KCzBoAY=";
   };
   buildInputs = [ lcrq libsodium ];
   installFlags = [ "PREFIX=$(out)" ];
diff --git a/pkgs/development/libraries/libressl/default.nix b/pkgs/development/libraries/libressl/default.nix
index 59bcae1cd87a..b2617cb77444 100644
--- a/pkgs/development/libraries/libressl/default.nix
+++ b/pkgs/development/libraries/libressl/default.nix
@@ -116,7 +116,7 @@ in {
   };
 
   libressl_3_9 = generic {
-    version = "3.9.1";
-    hash = "sha256-baC5VGlffuYrA/ZCAKik8Cr5Nxe2DM4Eq2yN8mLAelE=";
+    version = "3.9.2";
+    hash = "sha256-ewMdrGSlnrbuMwT3/7ddrTOrjJ0nnIR/ksifuEYGj5c=";
   };
 }
diff --git a/pkgs/development/libraries/librsvg/default.nix b/pkgs/development/libraries/librsvg/default.nix
index ee840b8e7f39..a682b39bbcd8 100644
--- a/pkgs/development/libraries/librsvg/default.nix
+++ b/pkgs/development/libraries/librsvg/default.nix
@@ -217,7 +217,7 @@ stdenv.mkDerivation (finalAttrs: {
 
   meta = with lib; {
     description = "A small library to render SVG images to Cairo surfaces";
-    homepage = "hhttps://gitlab.gnome.org/GNOME/librsvg";
+    homepage = "https://gitlab.gnome.org/GNOME/librsvg";
     license = licenses.lgpl2Plus;
     maintainers = teams.gnome.members;
     mainProgram = "rsvg-convert";
diff --git a/pkgs/development/libraries/libsecret/default.nix b/pkgs/development/libraries/libsecret/default.nix
index 040722ea406e..10eee1a6bbb0 100644
--- a/pkgs/development/libraries/libsecret/default.nix
+++ b/pkgs/development/libraries/libsecret/default.nix
@@ -1,6 +1,7 @@
 { stdenv
 , lib
 , fetchurl
+, fetchpatch2
 , glib
 , meson
 , ninja
@@ -33,6 +34,14 @@ stdenv.mkDerivation rec {
     hash = "sha256-Fj0I14O+bUq5qXnOtaT+y8HZZg08NBaMWBMBzVORKyA=";
   };
 
+  patches = [
+    # https://gitlab.gnome.org/GNOME/libsecret/-/merge_requests/141
+    (fetchpatch2 {
+      url = "https://gitlab.gnome.org/GNOME/libsecret/-/commit/208989323211c756dff690115e5cbde5ef7491ce.patch";
+      hash = "sha256-DtRbqyyoMttEYf6B16m9O72Yjurv6rpbnqH7AlrAU4k=";
+    })
+  ];
+
   depsBuildBuild = [
     pkg-config
   ];
diff --git a/pkgs/development/libraries/libsegfault/default.nix b/pkgs/development/libraries/libsegfault/default.nix
index 721570f330b3..58896c3e2bc2 100644
--- a/pkgs/development/libraries/libsegfault/default.nix
+++ b/pkgs/development/libraries/libsegfault/default.nix
@@ -10,7 +10,7 @@
 
 stdenv.mkDerivation rec {
   pname = "libsegfault";
-  version = "unstable-2022-11-13";
+  version = "0-unstable-2022-11-13";
 
   src = fetchFromGitHub {
     owner = "jonathanpoelen";
diff --git a/pkgs/development/libraries/libshumate/default.nix b/pkgs/development/libraries/libshumate/default.nix
index 6306fd2a5548..cc6723162a08 100644
--- a/pkgs/development/libraries/libshumate/default.nix
+++ b/pkgs/development/libraries/libshumate/default.nix
@@ -1,37 +1,46 @@
 { lib
 , stdenv
-, fetchFromGitLab
+, fetchurl
+, fetchpatch2
 , gi-docgen
 , meson
 , ninja
 , pkg-config
 , vala
 , gobject-introspection
+, gperf
 , glib
 , cairo
 , sqlite
 , libsoup_3
 , gtk4
 , libsysprof-capture
+, json-glib
+, protobufc
 , xvfb-run
 , gnome
 }:
 
 stdenv.mkDerivation rec {
   pname = "libshumate";
-  version = "1.1.3";
+  version = "1.2.1";
 
   outputs = [ "out" "dev" "devdoc" ];
   outputBin = "devdoc"; # demo app
 
-  src = fetchFromGitLab {
-    domain = "gitlab.gnome.org";
-    owner = "GNOME";
-    repo = "libshumate";
-    rev = version;
-    sha256 = "+h0dKLECtvfsxwD5aRTIgiNI9jG/tortUJYFiYMe60g=";
+  src = fetchurl {
+    url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
+    hash = "sha256-EQXuB34hR/KgOc3fphb6XLlDiIPdlAQn4RaZ3NZUnBE=";
   };
 
+  patches = [
+    (fetchpatch2 {
+      # Fix tests https://gitlab.gnome.org/GNOME/libshumate/-/merge_requests/236
+      url = "https://gitlab.gnome.org/GNOME/libshumate/-/commit/852615b0df2252ea67f4f82e9ace2fc2794467b3.patch";
+      hash = "sha256-Ksye3zNNYmzP4O+QFDVODXUkFJOLDVMEZNfGXwbxWhs=";
+    })
+  ];
+
   depsBuildBuild = [
     # required to find native gi-docgen when cross compiling
     pkg-config
@@ -44,6 +53,7 @@ stdenv.mkDerivation rec {
     pkg-config
     vala
     gobject-introspection
+    gperf
   ];
 
   buildInputs = [
@@ -53,6 +63,8 @@ stdenv.mkDerivation rec {
     libsoup_3
     gtk4
     libsysprof-capture
+    json-glib
+    protobufc
   ];
 
   nativeCheckInputs = [
diff --git a/pkgs/development/libraries/libsolv/default.nix b/pkgs/development/libraries/libsolv/default.nix
index 60e7da290726..e044037eb79d 100644
--- a/pkgs/development/libraries/libsolv/default.nix
+++ b/pkgs/development/libraries/libsolv/default.nix
@@ -17,14 +17,14 @@
 }:
 
 stdenv.mkDerivation rec {
-  version = "0.7.28";
+  version = "0.7.29";
   pname = "libsolv";
 
   src = fetchFromGitHub {
     owner = "openSUSE";
     repo = "libsolv";
     rev = version;
-    hash = "sha256-cL7SDwCzXM2qJQfiu/3nfAiFbcFNn1YXD23Sl3n9nzY=";
+    hash = "sha256-867sCGFvKib1As9BCiCi6LYVrLUK0pjtM5Bw9Yuu0D8=";
   };
 
   cmakeFlags = [
diff --git a/pkgs/development/libraries/libubox/default.nix b/pkgs/development/libraries/libubox/default.nix
index 09837cd0c1d8..e48748308bb2 100644
--- a/pkgs/development/libraries/libubox/default.nix
+++ b/pkgs/development/libraries/libubox/default.nix
@@ -22,6 +22,10 @@ stdenv.mkDerivation {
     done
   '';
 
+  env.NIX_CFLAGS_COMPILE = toString (lib.optionals (stdenv.isDarwin && stdenv.isx86_64) [
+    "-Wno-error=gnu-folding-constant"
+  ]);
+
   meta = with lib; {
     description = "C utility functions for OpenWrt";
     homepage = "https://git.openwrt.org/?p=project/libubox.git;a=summary";
diff --git a/pkgs/development/libraries/liburcu/default.nix b/pkgs/development/libraries/liburcu/default.nix
index 722a1534e92c..b1a091d12b3d 100644
--- a/pkgs/development/libraries/liburcu/default.nix
+++ b/pkgs/development/libraries/liburcu/default.nix
@@ -21,7 +21,8 @@ stdenv.mkDerivation rec {
     homepage = "https://lttng.org/urcu";
     changelog = "https://github.com/urcu/userspace-rcu/raw/v${version}/ChangeLog";
     license = licenses.lgpl21Plus;
-    platforms = platforms.unix;
+    # https://git.liburcu.org/?p=userspace-rcu.git;a=blob;f=include/urcu/arch.h
+    platforms = intersectLists platforms.unix (platforms.x86 ++ platforms.power ++ platforms.s390 ++ platforms.arm ++ platforms.aarch64 ++ platforms.mips ++ platforms.m68k ++ platforms.riscv);
     maintainers = [ maintainers.bjornfor ];
   };
 
diff --git a/pkgs/development/libraries/libusb1/default.nix b/pkgs/development/libraries/libusb1/default.nix
index 910368954617..9114fe5ec47f 100644
--- a/pkgs/development/libraries/libusb1/default.nix
+++ b/pkgs/development/libraries/libusb1/default.nix
@@ -3,6 +3,7 @@
 , fetchFromGitHub
 , fetchpatch
 , autoreconfHook
+, doxygen
 , pkg-config
 , enableUdev ? stdenv.isLinux && !stdenv.hostPlatform.isStatic
 , udev
@@ -11,6 +12,7 @@
 , Security
 , withExamples ? false
 , withStatic ? false
+, withDocs ? stdenv.buildPlatform.canExecute stdenv.hostPlatform
 }:
 
 stdenv.mkDerivation rec {
@@ -24,9 +26,12 @@ stdenv.mkDerivation rec {
     sha256 = "sha256-OtzYxWwiba0jRK9X+4deWWDDTeZWlysEt0qMyGUarDo=";
   };
 
-  outputs = [ "out" "dev" ];
+  outputs = [ "out" "dev" ] ++ lib.optionals withDocs [ "doc" ];
 
-  nativeBuildInputs = [ pkg-config autoreconfHook ];
+  nativeBuildInputs = [
+    pkg-config
+    autoreconfHook
+  ] ++ lib.optionals withDocs [ doxygen ];
   propagatedBuildInputs =
     lib.optional enableUdev udev ++
     lib.optionals stdenv.isDarwin [ libobjc IOKit Security ];
@@ -40,6 +45,12 @@ stdenv.mkDerivation rec {
     lib.optional (!enableUdev) "--disable-udev"
     ++ lib.optional (withExamples) "--enable-examples-build";
 
+  postBuild = lib.optionalString withDocs ''
+    make -C doc
+    mkdir -p "$doc/share/doc/libusb"
+    cp -r doc/api-1.0/* "$doc/share/doc/libusb/"
+  '';
+
   preFixup = lib.optionalString enableUdev ''
     sed 's,-ludev,-L${lib.getLib udev}/lib -ludev,' -i $out/lib/libusb-1.0.la
   '';
diff --git a/pkgs/development/libraries/libuv/default.nix b/pkgs/development/libraries/libuv/default.nix
index fcfeaa81d1ec..4099d53f87bf 100644
--- a/pkgs/development/libraries/libuv/default.nix
+++ b/pkgs/development/libraries/libuv/default.nix
@@ -11,7 +11,7 @@
 , bind
 , cmake
 , knot-resolver
-, lispPackages
+, sbclPackages
 , luajitPackages
 , mosquitto
 , neovim
@@ -105,7 +105,7 @@ stdenv.mkDerivation (finalAttrs: {
 
   passthru.tests = {
     inherit bind cmake knot-resolver mosquitto neovim nodejs;
-    inherit (lispPackages) cl-libuv;
+    inherit (sbclPackages) cl-libuv;
     luajit-libluv = luajitPackages.libluv;
     luajit-luv = luajitPackages.luv;
     ocaml-luv = ocamlPackages.luv;
diff --git a/pkgs/development/libraries/libva/default.nix b/pkgs/development/libraries/libva/default.nix
index e9faec42cd31..9b53b7cc138e 100644
--- a/pkgs/development/libraries/libva/default.nix
+++ b/pkgs/development/libraries/libva/default.nix
@@ -61,5 +61,9 @@ stdenv.mkDerivation (finalAttrs: {
       "libva-glx" "libva-wayland" "libva-x11"
     ];
     platforms = platforms.unix;
+    badPlatforms = [
+      # Mandatory libva shared library.
+      lib.systems.inspect.platformPatterns.isStatic
+    ];
   };
 })
diff --git a/pkgs/development/libraries/libvgm/default.nix b/pkgs/development/libraries/libvgm/default.nix
index 0f45c39e0aeb..0b07548d073a 100644
--- a/pkgs/development/libraries/libvgm/default.nix
+++ b/pkgs/development/libraries/libvgm/default.nix
@@ -42,7 +42,7 @@ let
 in
 stdenv.mkDerivation {
   pname = "libvgm";
-  version = "unstable-2024-04-24";
+  version = "0-unstable-2024-04-24";
 
   src = fetchFromGitHub {
     owner = "ValleyBell";
diff --git a/pkgs/development/libraries/libwacom/default.nix b/pkgs/development/libraries/libwacom/default.nix
index 8e9840325bb9..58c9b7c7f666 100644
--- a/pkgs/development/libraries/libwacom/default.nix
+++ b/pkgs/development/libraries/libwacom/default.nix
@@ -15,7 +15,7 @@
 
 stdenv.mkDerivation rec {
   pname = "libwacom";
-  version = "2.10.0";
+  version = "2.11.0";
 
   outputs = [ "out" "dev" ];
 
@@ -23,7 +23,7 @@ stdenv.mkDerivation rec {
     owner = "linuxwacom";
     repo = "libwacom";
     rev = "libwacom-${version}";
-    hash = "sha256-mH0aBDXeaz0tZLwNPSWUepHu52DnlvPyQFw3EByIwys=";
+    hash = "sha256-TQOe954Zos3VpAG5M/O5je9dr8d4gOXIwy4xl3o+e1g=";
   };
 
   postPatch = ''
diff --git a/pkgs/development/libraries/libwebp/default.nix b/pkgs/development/libraries/libwebp/default.nix
index 2605dabf125a..2662d4e94008 100644
--- a/pkgs/development/libraries/libwebp/default.nix
+++ b/pkgs/development/libraries/libwebp/default.nix
@@ -27,13 +27,13 @@
 
 stdenv.mkDerivation rec {
   pname = "libwebp";
-  version = "1.3.2";
+  version = "1.4.0";
 
   src = fetchFromGitHub {
     owner  = "webmproject";
     repo   = pname;
     rev    = "v${version}";
-    hash   = "sha256-UYO2Fmm8nzQR8VBC26wEwWd3qZTD+6MHKcmKBoNcpEE=";
+    hash   = "sha256-OR/VzKNn3mnwjf+G+RkEGAaaKrhVlAu1e2oTRwdsPj8=";
   };
 
   configureFlags = [
@@ -62,7 +62,7 @@ stdenv.mkDerivation rec {
   enableParallelBuilding = true;
 
   passthru.tests = {
-    inherit freeimage gd graphicsmagick imagemagick imlib2 libjxl opencv vips;
+    inherit gd graphicsmagick imagemagick imlib2 libjxl opencv vips;
     inherit (python3.pkgs) pillow imread;
     haskell-webp = haskellPackages.webp;
   };
diff --git a/pkgs/development/libraries/libxcrypt/default.nix b/pkgs/development/libraries/libxcrypt/default.nix
index 067141883977..d71cb7027570 100644
--- a/pkgs/development/libraries/libxcrypt/default.nix
+++ b/pkgs/development/libraries/libxcrypt/default.nix
@@ -28,8 +28,18 @@ stdenv.mkDerivation (finalAttrs: {
     "--disable-werror"
   ];
 
-  # fixes: can't build x86_64-w64-mingw32 shared library unless -no-undefined is specified
-  makeFlags = lib.optionals stdenv.hostPlatform.isWindows [ "LDFLAGS=-no-undefined"] ;
+  makeFlags = let
+    lld17Plus = stdenv.cc.bintools.isLLVM
+      && lib.versionAtLeast stdenv.cc.bintools.version "17";
+  in []
+    # fixes: can't build x86_64-w64-mingw32 shared library unless -no-undefined is specified
+    ++ lib.optionals stdenv.hostPlatform.isWindows [ "LDFLAGS+=-no-undefined" ]
+
+    # lld 17 sets `--no-undefined-version` by default and `libxcrypt`'s
+    # version script unconditionally lists legacy compatibility symbols, even
+    # when not exported: https://github.com/besser82/libxcrypt/issues/181
+    ++ lib.optionals lld17Plus [ "LDFLAGS+=-Wl,--undefined-version" ]
+  ;
 
   nativeBuildInputs = [
     perl
diff --git a/pkgs/development/libraries/libxkbcommon/default.nix b/pkgs/development/libraries/libxkbcommon/default.nix
index 03064a7e7b2a..67dbb0c4d8cd 100644
--- a/pkgs/development/libraries/libxkbcommon/default.nix
+++ b/pkgs/development/libraries/libxkbcommon/default.nix
@@ -13,6 +13,7 @@
 , libX11
   # To enable the "interactive-wayland" subcommand of xkbcli. This is the
   # wayland equivalent of `xev` on X11.
+, xorgserver # for Xvfb in tests
 , withWaylandTools ? stdenv.isLinux
 , wayland
 , wayland-protocols
@@ -22,17 +23,22 @@
 
 stdenv.mkDerivation (finalAttrs: {
   pname = "libxkbcommon";
-  version = "1.5.0";
+  version = "1.7.0";
 
   src = fetchurl {
     url = with finalAttrs; "https://xkbcommon.org/download/${pname}-${version}.tar.xz";
-    sha256 = "sha256-Vg8RxLu8oQ9JXz7306aqTKYrT4+wtS59RZ0Yom5G4Bc=";
+    hash = "sha256-ZXgvChCktFWvnGuqtwQOL1N1IMqi7CCSgFzf02hjskc=";
   };
 
+  patches = [
+    # Disable one Xvfb test as it fails for permission checks.
+    ./disable-x11com.patch
+  ];
+
   outputs = [ "out" "dev" "doc" ];
 
   depsBuildBuild = [ pkg-config ];
-  nativeBuildInputs = [ meson ninja pkg-config bison doxygen ]
+  nativeBuildInputs = [ meson ninja pkg-config bison doxygen xorgserver ]
     ++ lib.optional withWaylandTools wayland-scanner;
   buildInputs = [ xkeyboard_config libxcb libxml2 ]
     ++ lib.optionals withWaylandTools [ wayland wayland-protocols ];
@@ -42,6 +48,7 @@ stdenv.mkDerivation (finalAttrs: {
     "-Dxkb-config-root=${xkeyboard_config}/etc/X11/xkb"
     "-Dxkb-config-extra-path=/etc/xkb" # default=$sysconfdir/xkb ($out/etc)
     "-Dx-locale-root=${libX11.out}/share/X11/locale"
+    "-Denable-docs=true"
     "-Denable-wayland=${lib.boolToString withWaylandTools}"
   ];
 
diff --git a/pkgs/development/libraries/libxkbcommon/disable-x11com.patch b/pkgs/development/libraries/libxkbcommon/disable-x11com.patch
new file mode 100644
index 000000000000..fb5c8458b5dd
--- /dev/null
+++ b/pkgs/development/libraries/libxkbcommon/disable-x11com.patch
@@ -0,0 +1,17 @@
+On nixpkgs /tmp/.X11-unix is not compatible with Xvfb requirement and the
+test fails.
+--- a/meson.build
++++ b/meson.build
+@@ -775,12 +775,6 @@ if get_option('enable-x11')
+         env: test_env,
+         is_parallel : false,
+     )
+-    test(
+-        'x11comp',
+-        executable('test-x11comp', 'test/x11comp.c', dependencies: x11_test_dep),
+-        env: test_env,
+-        is_parallel : false,
+-    )
+ endif
+ if get_option('enable-xkbregistry')
+     test(
diff --git a/pkgs/development/libraries/libxlsxwriter/default.nix b/pkgs/development/libraries/libxlsxwriter/default.nix
index 3716090a30d7..6859caff61aa 100644
--- a/pkgs/development/libraries/libxlsxwriter/default.nix
+++ b/pkgs/development/libraries/libxlsxwriter/default.nix
@@ -8,19 +8,15 @@
 
 stdenv.mkDerivation rec {
   pname = "libxlsxwriter";
-  version = "1.1.5";
+  version = "1.1.7";
 
   src = fetchFromGitHub {
     owner = "jmcnamara";
     repo = "libxlsxwriter";
     rev = "RELEASE_${version}";
-    hash = "sha256-fC03LwZIUkEsAs9TN0n2z0iSOGPAtVCeuW5rxC7Ek7Q=";
+    hash = "sha256-bJ0NMbK9c21YYdcg/TW3ePSDVi5hly6lSW7wXFskI8M=";
   };
 
-  nativeBuildInputs = [
-    python3.pkgs.pytest
-  ];
-
   buildInputs = [
     minizip
     zlib
@@ -36,6 +32,10 @@ stdenv.mkDerivation rec {
 
   doCheck = true;
 
+  nativeCheckInputs = [
+    python3.pkgs.pytest
+  ];
+
   checkTarget = "test";
 
   meta = with lib; {
diff --git a/pkgs/development/libraries/libxmlb/default.nix b/pkgs/development/libraries/libxmlb/default.nix
index d3f6f311df94..c26807a67952 100644
--- a/pkgs/development/libraries/libxmlb/default.nix
+++ b/pkgs/development/libraries/libxmlb/default.nix
@@ -18,7 +18,7 @@
 
 stdenv.mkDerivation rec {
   pname = "libxmlb";
-  version = "0.3.15";
+  version = "0.3.19";
 
   outputs = [ "out" "lib" "dev" "devdoc" "installedTests" ];
 
@@ -26,7 +26,7 @@ stdenv.mkDerivation rec {
     owner = "hughsie";
     repo = "libxmlb";
     rev = version;
-    hash = "sha256-S0wBVhfRa81mAmqpYYAKAyKLnfnVsXJEcGA21i5tdzo=";
+    hash = "sha256-gXLWHkT+h/wvmmi7PyIx16gbeYznVOT7CwuBgF3bjOY=";
   };
 
   patches = [
diff --git a/pkgs/development/libraries/libxmlb/installed-tests-path.patch b/pkgs/development/libraries/libxmlb/installed-tests-path.patch
index e9bd27e1fff1..b35c8dfc8cdf 100644
--- a/pkgs/development/libraries/libxmlb/installed-tests-path.patch
+++ b/pkgs/development/libraries/libxmlb/installed-tests-path.patch
@@ -15,6 +15,5 @@
 @@ -3,4 +3,5 @@ option('introspection', type : 'boolean', value : true, description : 'generate
  option('tests', type : 'boolean', value : true, description : 'enable tests')
  option('stemmer', type : 'boolean', value : false, description : 'enable stemmer support')
- option('cli', type : 'boolean', value : true, description : 'build and install the xb-tool CLI')
- option('zstd', type : 'boolean', value : true, description : 'enable zstd support')
 +option('installed_test_prefix', type: 'string', value: '', description: 'Prefix for installed tests')
+ option('cli', type : 'boolean', value : true, description : 'build and install the xb-tool CLI')
diff --git a/pkgs/development/libraries/libz/default.nix b/pkgs/development/libraries/libz/default.nix
index 6b3e1dacdc00..b9ee7f96b421 100644
--- a/pkgs/development/libraries/libz/default.nix
+++ b/pkgs/development/libraries/libz/default.nix
@@ -6,7 +6,7 @@
 
 stdenv.mkDerivation (finalAttrs: {
   pname = "libz";
-  version = "unstable-2018-03-31";
+  version = "1.2.8.2015.12.26-unstable-2018-03-31";
 
   src = fetchFromGitLab {
     owner = "sortix";
@@ -18,7 +18,9 @@ stdenv.mkDerivation (finalAttrs: {
   outputs = [ "out" "dev" ];
   outputDoc = "dev"; # single tiny man3 page
 
-  passthru.updateScript = unstableGitUpdater { };
+  passthru.updateScript = unstableGitUpdater {
+    tagPrefix = "libz-";
+  };
 
   meta = {
     homepage = "https://sortix.org/libz/";
diff --git a/pkgs/development/libraries/llhttp/default.nix b/pkgs/development/libraries/llhttp/default.nix
index 8bd80151c094..dfdd8200b556 100644
--- a/pkgs/development/libraries/llhttp/default.nix
+++ b/pkgs/development/libraries/llhttp/default.nix
@@ -1,14 +1,14 @@
-{ lib, stdenv, fetchFromGitHub, cmake, testers }:
+{ lib, stdenv, fetchFromGitHub, cmake, testers, python3 }:
 
 stdenv.mkDerivation (finalAttrs: {
   pname = "llhttp";
-  version = "9.2.0";
+  version = "9.2.1";
 
   src = fetchFromGitHub {
     owner = "nodejs";
     repo = "llhttp";
     rev = "release/v${finalAttrs.version}";
-    hash = "sha256-DX/CuTyvc2OfAVWvlJr6wVHwSuqWmqQt34vM1FEazwE=";
+    hash = "sha256-cnEp7Ds32bqu3jeUU/rqJOr/VW3KNmJU4pmNNaTpXRs=";
   };
 
   outputs = [ "out" "dev" ];
@@ -21,8 +21,13 @@ stdenv.mkDerivation (finalAttrs: {
     "-DBUILD_STATIC_LIBS=ON"
   ];
 
-  passthru.tests.pkg-config = testers.hasPkgConfigModules {
-    package = finalAttrs.finalPackage;
+  passthru.tests = {
+    inherit (python3.pkgs) aiohttp;
+
+    pkg-config = testers.hasPkgConfigModules {
+      package = finalAttrs.finalPackage;
+      moduleNames = [ "libllhttp" ];
+    };
   };
 
   meta = with lib; {
@@ -30,7 +35,6 @@ stdenv.mkDerivation (finalAttrs: {
     homepage = "https://llhttp.org/";
     changelog = "https://github.com/nodejs/llhttp/releases/tag/release/v${finalAttrs.version}";
     license = licenses.mit;
-    pkgConfigModules = [ "libllhttp" ];
     maintainers = [ ];
     platforms = platforms.all;
   };
diff --git a/pkgs/development/libraries/malcontent/default.nix b/pkgs/development/libraries/malcontent/default.nix
index 34d1731e8a09..f346906eadc2 100644
--- a/pkgs/development/libraries/malcontent/default.nix
+++ b/pkgs/development/libraries/malcontent/default.nix
@@ -19,7 +19,7 @@
 
 stdenv.mkDerivation rec {
   pname = "malcontent";
-  version = "0.11.1";
+  version = "0.12.0";
 
   outputs = [ "bin" "out" "lib" "pam" "dev" "man" "installedTests" ];
 
@@ -28,7 +28,7 @@ stdenv.mkDerivation rec {
     owner = "pwithnall";
     repo = "malcontent";
     rev = version;
-    hash = "sha256-NZwVCnQrEG2gecUjuWe1+cyWFR3OdYJCmj87V14Uwjw=";
+    hash = "sha256-UK/WVqDMkwIqkTFFjzh7PRCA/Ej8Iyu33FasnAEApRs=";
   };
 
   patches = [
diff --git a/pkgs/development/libraries/mdk-sdk/default.nix b/pkgs/development/libraries/mdk-sdk/default.nix
index 1dd85da49538..89038628f2f9 100644
--- a/pkgs/development/libraries/mdk-sdk/default.nix
+++ b/pkgs/development/libraries/mdk-sdk/default.nix
@@ -5,11 +5,11 @@
 
 stdenv.mkDerivation rec {
   pname = "mdk-sdk";
-  version = "0.26.0";
+  version = "0.27.0";
 
   src = fetchurl {
     url = "https://github.com/wang-bin/mdk-sdk/releases/download/v${version}/mdk-sdk-linux-x64.tar.xz";
-    hash = "sha256-DZiipuGXhzrlm49doNeFExApHMDI7ILfOumgXA8useA=";
+    hash = "sha256-JGYZ+Rodvyo/PkQfuW7xM0aIa3Gql75TwRUU1yZHJJ8=";
   };
 
   nativeBuildInputs = [ autoPatchelfHook ];
diff --git a/pkgs/development/libraries/mesa/default.nix b/pkgs/development/libraries/mesa/default.nix
index a544e1b25466..d27707d91e88 100644
--- a/pkgs/development/libraries/mesa/default.nix
+++ b/pkgs/development/libraries/mesa/default.nix
@@ -1,88 +1,118 @@
-{ stdenv, lib, fetchurl, fetchpatch, fetchCrate, buildPackages
-, meson, pkg-config, ninja
-, intltool, bison, flex, file, python3Packages, wayland-scanner
-, expat, libdrm, xorg, wayland, wayland-protocols, openssl
-, llvmPackages, libffi, libomxil-bellagio, libva-minimal
-, elfutils, libvdpau
-, libglvnd, libunwind, lm_sensors
-, vulkan-loader, glslang
-, galliumDrivers ?
-  if stdenv.isLinux then
-    [
-      "d3d12" # WSL emulated GPU (aka Dozen)
-      "kmsro" # special "render only" driver for GPUs without a display controller
-      "nouveau" # Nvidia
-      "radeonsi" # new AMD (GCN+)
-      "r300" # very old AMD
-      "r600" # less old AMD
-      "swrast" # software renderer (aka LLVMPipe)
-      "svga" # VMWare virtualized GPU
-      "virgl" # QEMU virtualized GPU (aka VirGL)
-      "zink" # generic OpenGL over Vulkan, experimental
-    ] ++ lib.optionals (stdenv.isAarch64 || stdenv.isAarch32) [
-      "etnaviv" # Vivante GPU designs (mostly NXP/Marvell SoCs)
-      "freedreno" # Qualcomm Adreno (all Qualcomm SoCs)
-      "lima" # ARM Mali 4xx
-      "panfrost" # ARM Mali Midgard and up (T/G series)
-      "vc4" # Broadcom VC4 (Raspberry Pi 0-3)
-    ] ++ lib.optionals stdenv.isAarch64 [
-      "tegra" # Nvidia Tegra SoCs
-      "v3d" # Broadcom VC5 (Raspberry Pi 4)
-    ] ++ lib.optionals stdenv.hostPlatform.isx86 [
-      "iris" # new Intel, could work on non-x86 with PCIe cards, but doesn't build as of 22.3.4
-      "crocus" # Intel legacy, x86 only
-      "i915" # Intel extra legacy, x86 only
-    ]
-  else [ "auto" ]
-, vulkanDrivers ?
-  if stdenv.isLinux then
-    [
-      "amd" # AMD (aka RADV)
-      "microsoft-experimental" # WSL virtualized GPU (aka DZN/Dozen)
-      "nouveau-experimental" # Nouveau (aka NVK)
-      "swrast" # software renderer (aka Lavapipe)
-    ]
-    ++ lib.optionals (stdenv.hostPlatform.isAarch -> lib.versionAtLeast stdenv.hostPlatform.parsed.cpu.version "6") [
-      # QEMU virtualized GPU (aka VirGL)
-      # Requires ATOMIC_INT_LOCK_FREE == 2.
-      "virtio"
-    ]
-    ++ lib.optionals stdenv.isAarch64 [
-      "broadcom" # Broadcom VC5 (Raspberry Pi 4, aka V3D)
-      "freedreno" # Qualcomm Adreno (all Qualcomm SoCs)
-      "imagination-experimental" # PowerVR Rogue (currently N/A)
-      "panfrost" # ARM Mali Midgard and up (T/G series)
-    ]
-    ++ lib.optionals stdenv.hostPlatform.isx86 [
-      "intel" # Intel (aka ANV), could work on non-x86 with PCIe cards, but doesn't build
-      "intel_hasvk" # Intel Haswell/Broadwell, "legacy" Vulkan driver (https://www.phoronix.com/news/Intel-HasVK-Drop-Dead-Code)
-    ]
-  else [ "auto" ]
-, eglPlatforms ? [ "x11" ] ++ lib.optionals stdenv.isLinux [ "wayland" ]
-, vulkanLayers ? lib.optionals (!stdenv.isDarwin) [ "device-select" "overlay" "intel-nullhw" ] # No Vulkan support on Darwin
-, OpenGL, Xplugin
-, withValgrind ? lib.meta.availableOn stdenv.hostPlatform valgrind-light && !valgrind-light.meta.broken, valgrind-light
-, withLibunwind ? lib.meta.availableOn stdenv.hostPlatform libunwind
-, enableGalliumNine ? stdenv.isLinux
-, enableOSMesa ? stdenv.isLinux
-, enableOpenCL ? stdenv.isLinux && stdenv.isx86_64
-, enablePatentEncumberedCodecs ? true
+{ lib
+, OpenGL
+, Xplugin
+, bison
+, buildPackages
+, directx-headers
+, elfutils
+, expat
+, fetchCrate
+, fetchpatch
+, fetchurl
+, file
+, flex
+, glslang
+, intltool
 , jdupes
-, rustPlatform
+, libdrm
+, libffi
+, libglvnd
+, libomxil-bellagio
+, libunwind
+, libva-minimal
+, libvdpau
+, llvmPackages
+, lm_sensors
+, meson
+, ninja
+, openssl
+, pkg-config
+, python3Packages
 , rust-bindgen
+, rustPlatform
 , rustc
 , spirv-llvm-translator
-, zstd
-, directx-headers
+, stdenv
 , udev
+, valgrind-light
+, vulkan-loader
+, wayland
+, wayland-protocols
+, wayland-scanner
+, xorg
+, zstd
+, withValgrind ?
+  lib.meta.availableOn stdenv.hostPlatform valgrind-light
+  && !valgrind-light.meta.broken
+, withLibunwind ? lib.meta.availableOn stdenv.hostPlatform libunwind
+, enableGalliumNine ? stdenv.isLinux
+, enableOSMesa ? stdenv.isLinux
+, enableOpenCL ? stdenv.isLinux && stdenv.isx86_64
+, enablePatentEncumberedCodecs ? true
+
+, galliumDrivers ?
+  if stdenv.isLinux
+  then [
+    "d3d12" # WSL emulated GPU (aka Dozen)
+    "kmsro" # special "render only" driver for GPUs without a display controller
+    "nouveau" # Nvidia
+    "radeonsi" # new AMD (GCN+)
+    "r300" # very old AMD
+    "r600" # less old AMD
+    "swrast" # software renderer (aka LLVMPipe)
+    "svga" # VMWare virtualized GPU
+    "virgl" # QEMU virtualized GPU (aka VirGL)
+    "zink" # generic OpenGL over Vulkan, experimental
+  ] ++ lib.optionals (stdenv.isAarch64 || stdenv.isAarch32) [
+    "etnaviv" # Vivante GPU designs (mostly NXP/Marvell SoCs)
+    "freedreno" # Qualcomm Adreno (all Qualcomm SoCs)
+    "lima" # ARM Mali 4xx
+    "panfrost" # ARM Mali Midgard and up (T/G series)
+    "vc4" # Broadcom VC4 (Raspberry Pi 0-3)
+  ] ++ lib.optionals stdenv.isAarch64 [
+    "tegra" # Nvidia Tegra SoCs
+    "v3d" # Broadcom VC5 (Raspberry Pi 4)
+  ] ++ lib.optionals stdenv.hostPlatform.isx86 [
+    "iris" # new Intel, could work on non-x86 with PCIe cards, but doesn't build as of 22.3.4
+    "crocus" # Intel legacy, x86 only
+    "i915" # Intel extra legacy, x86 only
+  ]
+  else [ "auto" ]
+, vulkanDrivers ?
+  if stdenv.isLinux
+  then [
+    "amd" # AMD (aka RADV)
+    "microsoft-experimental" # WSL virtualized GPU (aka DZN/Dozen)
+    "nouveau-experimental" # Nouveau (aka NVK)
+    "swrast" # software renderer (aka Lavapipe)
+  ] ++ lib.optionals (stdenv.hostPlatform.isAarch -> lib.versionAtLeast stdenv.hostPlatform.parsed.cpu.version "6") [
+    # QEMU virtualized GPU (aka VirGL)
+    # Requires ATOMIC_INT_LOCK_FREE == 2.
+    "virtio"
+  ] ++ lib.optionals stdenv.isAarch64 [
+    "broadcom" # Broadcom VC5 (Raspberry Pi 4, aka V3D)
+    "freedreno" # Qualcomm Adreno (all Qualcomm SoCs)
+    "imagination-experimental" # PowerVR Rogue (currently N/A)
+    "panfrost" # ARM Mali Midgard and up (T/G series)
+  ] ++ lib.optionals stdenv.hostPlatform.isx86 [
+    "intel" # Intel (aka ANV), could work on non-x86 with PCIe cards, but doesn't build
+    "intel_hasvk" # Intel Haswell/Broadwell, "legacy" Vulkan driver (https://www.phoronix.com/news/Intel-HasVK-Drop-Dead-Code)
+  ]
+  else [ "auto" ]
+, eglPlatforms ? [ "x11" ] ++ lib.optionals stdenv.isLinux [ "wayland" ]
+, vulkanLayers ? lib.optionals (!stdenv.isDarwin) [ # No Vulkan support on Darwin
+  "device-select"
+  "overlay"
+  "intel-nullhw"
+]
 }:
 
 # When updating this package, please verify at least these build (assuming x86_64-linux):
 # nix build .#mesa .#pkgsi686Linux.mesa .#pkgsCross.aarch64-multiplatform.mesa .#pkgsMusl.mesa
 
 let
-  version = "24.0.5";
-  hash = "sha256-OMwkXKj6o8adptJof4kGN3AB9jNlNIpizG9/r7HowBg=";
+  version = "24.0.6";
+  hash = "sha256-i3qS2+ZGjBjyODcAE1tf6d6DbN8MyP19uuPHEQI31gQ=";
 
   # Release calendar: https://www.mesa3d.org/release-calendar.html
   # Release frequency: https://www.mesa3d.org/releasing.html#schedule
@@ -106,7 +136,7 @@ let
       hash = "sha256-VWRCZJO0/DJbNu0/V9TLaqlwMot65YjInWT9VWg57DY=";
     }
     {
-    pname = "syn";
+      pname = "syn";
       version = "2.0.39";
       hash = "sha256-Mjen2L/omhVbhU/+Ao65mogs3BP3fY+Bodab3uU63EI=";
     }
@@ -157,14 +187,20 @@ self = stdenv.mkDerivation {
     ${copyRustDeps}
   '';
 
-  outputs = [ "out" "dev" "drivers" ]
-    ++ lib.optional enableOSMesa "osmesa"
-    ++ lib.optional stdenv.isLinux "driversdev"
-    ++ lib.optional enableOpenCL "opencl"
+  outputs = [
+    "out" "dev" "drivers"
+  ] ++ lib.optionals enableOSMesa [
+    "osmesa"
+  ] ++ lib.optionals stdenv.isLinux [
+    "driversdev"
+  ] ++ lib.optionals enableOpenCL [
+    "opencl"
+  ] ++ lib.optionals haveDozen [
     # the Dozen drivers depend on libspirv2dxil, but link it statically, and
-    # libspirv2dxil itself is pretty chonky, so relocate it to its own output
-    # in case anything wants to use it at some point
-    ++ lib.optional haveDozen "spirv2dxil";
+    # libspirv2dxil itself is pretty chonky, so relocate it to its own output in
+    # case anything wants to use it at some point
+    "spirv2dxil"
+  ];
 
   # Keep build-ids so drivers can use them for caching, etc.
   # Also some drivers segfault without this.
@@ -181,101 +217,152 @@ self = stdenv.mkDerivation {
 
     # Don't build in debug mode
     # https://gitlab.freedesktop.org/mesa/mesa/blob/master/docs/meson.html#L327
-    "-Db_ndebug=true"
+    (lib.mesonBool "b_ndebug" true)
 
-    "-Ddri-search-path=${libglvnd.driverLink}/lib/dri"
+    (lib.mesonOption "dri-search-path" "${libglvnd.driverLink}/lib/dri")
 
-    "-Dplatforms=${lib.concatStringsSep "," eglPlatforms}"
-    "-Dgallium-drivers=${lib.concatStringsSep "," galliumDrivers}"
-    "-Dvulkan-drivers=${lib.concatStringsSep "," vulkanDrivers}"
+    (lib.mesonOption "platforms" (lib.concatStringsSep "," eglPlatforms))
+    (lib.mesonOption "gallium-drivers" (lib.concatStringsSep "," galliumDrivers))
+    (lib.mesonOption "vulkan-drivers" (lib.concatStringsSep "," vulkanDrivers))
 
-    "-Ddri-drivers-path=${placeholder "drivers"}/lib/dri"
-    "-Dvdpau-libs-path=${placeholder "drivers"}/lib/vdpau"
-    "-Domx-libs-path=${placeholder "drivers"}/lib/bellagio"
-    "-Dva-libs-path=${placeholder "drivers"}/lib/dri"
-    "-Dd3d-drivers-path=${placeholder "drivers"}/lib/d3d"
+    (lib.mesonOption "dri-drivers-path" "${placeholder "drivers"}/lib/dri")
+    (lib.mesonOption "vdpau-libs-path" "${placeholder "drivers"}/lib/vdpau")
+    (lib.mesonOption "omx-libs-path" "${placeholder "drivers"}/lib/bellagio")
+    (lib.mesonOption "va-libs-path" "${placeholder "drivers"}/lib/dri")
+    (lib.mesonOption "d3d-drivers-path" "${placeholder "drivers"}/lib/d3d")
 
-    "-Dgallium-nine=${lib.boolToString enableGalliumNine}" # Direct3D in Wine
-    "-Dosmesa=${lib.boolToString enableOSMesa}" # used by wine
-    "-Dmicrosoft-clc=disabled" # Only relevant on Windows (OpenCL 1.2 API on top of D3D12)
+    (lib.mesonBool "gallium-nine" enableGalliumNine) # Direct3D in Wine
+    (lib.mesonBool "osmesa" enableOSMesa) # used by wine
+    (lib.mesonEnable "microsoft-clc" false) # Only relevant on Windows (OpenCL 1.2 API on top of D3D12)
 
     # To enable non-mesa gbm backends to be found (e.g. Nvidia)
-    "-Dgbm-backends-path=${libglvnd.driverLink}/lib/gbm:${placeholder "out"}/lib/gbm"
+    (lib.mesonOption "gbm-backends-path" "${libglvnd.driverLink}/lib/gbm:${placeholder "out"}/lib/gbm")
 
     # meson auto_features enables these features, but we do not want them
-    "-Dandroid-libbacktrace=disabled"
-
+    (lib.mesonEnable "android-libbacktrace" false)
   ] ++ lib.optionals stdenv.isLinux [
-    "-Dglvnd=true"
+    (lib.mesonBool "glvnd" true)
 
     # Enable RT for Intel hardware
     # https://gitlab.freedesktop.org/mesa/mesa/-/issues/9080
     (lib.mesonEnable "intel-clc" (stdenv.buildPlatform == stdenv.hostPlatform))
   ] ++ lib.optionals stdenv.isDarwin [
     # Disable features that are explicitly unsupported on the platform
-    "-Dgbm=disabled"
-    "-Dxlib-lease=disabled"
-    "-Degl=disabled"
-    "-Dgallium-vdpau=disabled"
-    "-Dgallium-va=disabled"
-    "-Dgallium-xa=disabled"
-    "-Dlmsensors=disabled"
+    (lib.mesonEnable "gbm" false)
+    (lib.mesonEnable "xlib-lease" false)
+    (lib.mesonEnable "egl" false)
+    (lib.mesonEnable "gallium-vdpau" false)
+    (lib.mesonEnable "gallium-va" false)
+    (lib.mesonEnable "gallium-xa" false)
+    (lib.mesonEnable "lmsensors" false)
   ] ++ lib.optionals enableOpenCL [
     # Clover, old OpenCL frontend
-    "-Dgallium-opencl=icd"
-    "-Dopencl-spirv=true"
+    (lib.mesonOption "gallium-opencl" "icd")
+    (lib.mesonBool "opencl-spirv" true)
 
     # Rusticl, new OpenCL frontend
-    "-Dgallium-rusticl=true"
-    "-Dclang-libdir=${llvmPackages.clang-unwrapped.lib}/lib"
-  ]  ++ lib.optionals (!withValgrind) [
-    "-Dvalgrind=disabled"
-  ]  ++ lib.optionals (!withLibunwind) [
-    "-Dlibunwind=disabled"
-  ] ++ lib.optional enablePatentEncumberedCodecs
-    "-Dvideo-codecs=all"
-  ++ lib.optional (vulkanLayers != []) "-D vulkan-layers=${builtins.concatStringsSep "," vulkanLayers}";
+    (lib.mesonBool "gallium-rusticl" true)
+    (lib.mesonOption "clang-libdir" "${llvmPackages.clang-unwrapped.lib}/lib")
+  ] ++ lib.optionals (!withValgrind) [
+    (lib.mesonEnable "valgrind" false)
+  ] ++ lib.optionals (!withLibunwind) [
+    (lib.mesonEnable "libunwind" false)
+  ]
+  ++ lib.optionals enablePatentEncumberedCodecs [
+    (lib.mesonOption "video-codecs" "all")
+  ] ++ lib.optionals (vulkanLayers != []) [
+    (lib.mesonOption "vulkan-layers" (builtins.concatStringsSep "," vulkanLayers))
+  ];
 
   strictDeps = true;
 
   buildInputs = with xorg; [
-    expat glslang llvmPackages.libllvm libglvnd xorgproto
-    libX11 libXext libxcb libXt libXfixes libxshmfence libXrandr
-    libffi libvdpau libXvMC
-    libpthreadstubs openssl
+    expat
+    glslang
+    libffi
+    libglvnd
+    libvdpau
+    llvmPackages.libllvm
+    openssl
     zstd
-  ] ++ lib.optionals withLibunwind [
+  ] ++ (with xorg; [
+    libX11
+    libXext
+    libXfixes
+    libXrandr
+    libXt
+    libXvMC
+    libpthreadstubs
+    libxcb
+    libxshmfence
+    xorgproto
+  ]) ++ lib.optionals withLibunwind [
     libunwind
   ] ++ [
     python3Packages.python # for shebang
-  ] ++ lib.optionals haveWayland [ wayland wayland-protocols ]
-    ++ lib.optionals stdenv.isLinux [ libomxil-bellagio libva-minimal udev lm_sensors ]
-    ++ lib.optionals (lib.meta.availableOn stdenv.hostPlatform elfutils) [ elfutils ]
-    ++ lib.optionals enableOpenCL [ llvmPackages.libclc llvmPackages.clang llvmPackages.clang-unwrapped spirv-llvm-translator ]
-    ++ lib.optional withValgrind valgrind-light
-    ++ lib.optional haveZink vulkan-loader
-    ++ lib.optional haveDozen directx-headers;
-
-  depsBuildBuild = [ pkg-config ]
-    # Adding this unconditionally makes x86_64-darwin pick up an older toolchain, as
-    # we explicitly call Mesa with 11.0 stdenv, but buildPackages is still 10.something,
-    # and Mesa can't build with that.
+  ] ++ lib.optionals haveWayland [
+    wayland
+    wayland-protocols
+  ] ++ lib.optionals stdenv.isLinux [
+    libomxil-bellagio
+    libva-minimal
+    lm_sensors
+    udev
+  ] ++ lib.optionals (lib.meta.availableOn stdenv.hostPlatform elfutils) [
+    elfutils
+  ] ++ lib.optionals enableOpenCL [
+    llvmPackages.libclc
+    llvmPackages.clang
+    llvmPackages.clang-unwrapped
+    spirv-llvm-translator
+  ] ++ lib.optionals withValgrind [
+    valgrind-light
+  ] ++ lib.optionals haveZink [
+    vulkan-loader
+  ] ++ lib.optionals haveDozen [
+    directx-headers
+  ];
+
+  depsBuildBuild = [
+    pkg-config
+  ] ++ lib.optionals (!stdenv.isDarwin) [
+    # Adding this unconditionally makes x86_64-darwin pick up an older
+    # toolchain, as we explicitly call Mesa with 11.0 stdenv, but buildPackages
+    # is still 10.something, and Mesa can't build with that.
     # FIXME: figure this out, or figure out how to get rid of Mesa on Darwin,
     # whichever is easier.
-    ++ lib.optional (!stdenv.isDarwin) buildPackages.stdenv.cc;
+    buildPackages.stdenv.cc
+  ];
 
   nativeBuildInputs = [
-    meson pkg-config ninja
-    intltool bison flex file
-    python3Packages.python python3Packages.mako python3Packages.ply
-    jdupes glslang
-    rustc rust-bindgen rustPlatform.bindgenHook
-  ] ++ lib.optional haveWayland wayland-scanner;
-
-  propagatedBuildInputs = with xorg; [
-    libXdamage libXxf86vm
-  ] ++ lib.optional withLibdrm libdrm
-    ++ lib.optionals stdenv.isDarwin [ OpenGL Xplugin ];
+    meson
+    pkg-config
+    ninja
+    intltool
+    bison
+    flex
+    file
+    python3Packages.python
+    python3Packages.mako
+    python3Packages.ply
+    jdupes
+    glslang
+    rustc
+    rust-bindgen
+    rustPlatform.bindgenHook
+  ] ++ lib.optionals haveWayland [
+    wayland-scanner
+  ];
+
+  propagatedBuildInputs = (with xorg; [
+    libXdamage
+    libXxf86vm
+  ]) ++ lib.optionals withLibdrm [
+    libdrm
+  ] ++ lib.optionals stdenv.isDarwin [
+    OpenGL
+    Xplugin
+  ];
 
   doCheck = false;
 
@@ -373,9 +460,12 @@ self = stdenv.mkDerivation {
     ''}
   '';
 
-  env.NIX_CFLAGS_COMPILE = toString (lib.optionals stdenv.isDarwin [ "-fno-common" ] ++ lib.optionals enableOpenCL [
-    "-UPIPE_SEARCH_DIR"
-    "-DPIPE_SEARCH_DIR=\"${placeholder "opencl"}/lib/gallium-pipe\""
+  env.NIX_CFLAGS_COMPILE = toString (
+    lib.optionals stdenv.isDarwin [
+      "-fno-common"
+    ] ++ lib.optionals enableOpenCL [
+      "-UPIPE_SEARCH_DIR"
+      "-DPIPE_SEARCH_DIR=\"${placeholder "opencl"}/lib/gallium-pipe\""
   ]);
 
   passthru = {
@@ -395,7 +485,7 @@ self = stdenv.mkDerivation {
     };
   };
 
-  meta = with lib; {
+  meta = {
     description = "An open source 3D graphics library";
     longDescription = ''
       The Mesa project began as an open-source implementation of the OpenGL
@@ -408,9 +498,9 @@ self = stdenv.mkDerivation {
     '';
     homepage = "https://www.mesa3d.org/";
     changelog = "https://www.mesa3d.org/relnotes/${version}.html";
-    license = licenses.mit; # X11 variant, in most files
-    platforms = platforms.mesaPlatforms;
-    maintainers = with maintainers; [ primeos vcunat ]; # Help is welcome :)
+    license = with lib.licenses; [ mit ]; # X11 variant, in most files
+    platforms = lib.platforms.mesaPlatforms;
+    maintainers = with lib.maintainers; [ primeos vcunat ]; # Help is welcome :)
   };
 };
 
diff --git a/pkgs/development/libraries/mimalloc/default.nix b/pkgs/development/libraries/mimalloc/default.nix
index e0e1421c476e..27d6d1dd48ab 100644
--- a/pkgs/development/libraries/mimalloc/default.nix
+++ b/pkgs/development/libraries/mimalloc/default.nix
@@ -7,13 +7,13 @@ let
 in
 stdenv.mkDerivation rec {
   pname   = "mimalloc";
-  version = "2.1.2";
+  version = "2.1.6";
 
   src = fetchFromGitHub {
     owner  = "microsoft";
     repo   = pname;
     rev    = "v${version}";
-    sha256 = "sha256-kYhfufffM4r+ZVgcjnulqFlf1756pirlPysGZnUBzt8=";
+    sha256 = "sha256-Ff3+RP+lAXCOeHJ87oG3c02rPP4WQIbg5L/CVe6gA3M=";
   };
 
   doCheck = !stdenv.hostPlatform.isStatic;
diff --git a/pkgs/development/libraries/minilibx/default.nix b/pkgs/development/libraries/minilibx/default.nix
index 0551993e438a..41a422e3a2a2 100644
--- a/pkgs/development/libraries/minilibx/default.nix
+++ b/pkgs/development/libraries/minilibx/default.nix
@@ -9,7 +9,7 @@
 
 stdenv.mkDerivation {
   pname = "minilibx";
-  version = "unstable-2021-10-30";
+  version = "0-unstable-2021-10-30";
 
   src = fetchFromGitHub {
     owner = "42Paris";
diff --git a/pkgs/development/libraries/miniz/default.nix b/pkgs/development/libraries/miniz/default.nix
index 0c4d902f40bb..0cb5087c4f7a 100644
--- a/pkgs/development/libraries/miniz/default.nix
+++ b/pkgs/development/libraries/miniz/default.nix
@@ -28,7 +28,10 @@ stdenv.mkDerivation (finalAttrs: {
       --replace-fail '=''${exec_prefix}//' '=/'
   '';
 
-  passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
+  passthru.tests.pkg-config = testers.hasPkgConfigModules {
+    package = finalAttrs.finalPackage;
+    versionCheck = true;
+  };
 
   meta = with lib; {
     description = "Single C source file zlib-replacement library";
diff --git a/pkgs/development/libraries/mongoc/default.nix b/pkgs/development/libraries/mongoc/default.nix
index 082c0d9b308f..8a344a08fb7a 100644
--- a/pkgs/development/libraries/mongoc/default.nix
+++ b/pkgs/development/libraries/mongoc/default.nix
@@ -14,13 +14,13 @@
 
 stdenv.mkDerivation rec {
   pname = "mongoc";
-  version = "1.27.0";
+  version = "1.27.1";
 
   src = fetchFromGitHub {
     owner = "mongodb";
     repo = "mongo-c-driver";
     rev = "refs/tags/${version}";
-    hash = "sha256-P0Mavs09FUmHxRYx/70wtjswWnrkQIo0+NrYtW4KJXo=";
+    hash = "sha256-3+7JfgT1hZHyTiLDqYioI5GJYnqN9crE5CrXOvit0ew=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/libraries/msgpack-c/default.nix b/pkgs/development/libraries/msgpack-c/default.nix
index 41d174bce7d9..63a712b0881e 100644
--- a/pkgs/development/libraries/msgpack-c/default.nix
+++ b/pkgs/development/libraries/msgpack-c/default.nix
@@ -8,13 +8,13 @@
 
 stdenv.mkDerivation (finalAttrs: {
   pname = "msgpack-c";
-  version = "6.0.0";
+  version = "6.0.1";
 
   src = fetchFromGitHub {
     owner = "msgpack";
     repo = "msgpack-c";
     rev = "refs/tags/c-${finalAttrs.version}";
-    hash = "sha256-TfC37QKwqvHxsLPgsEqJYkb7mpRQekbntbBPV4v4FO8=";
+    hash = "sha256-BXnK7xNRdZvbSz7tERf/PDJkmxbqAC6trH+h36O/v6k=";
   };
 
   strictDeps = true;
@@ -24,8 +24,9 @@ stdenv.mkDerivation (finalAttrs: {
   ];
 
   cmakeFlags = [
-    "-DMSGPACK_BUILD_EXAMPLES=OFF" # examples are not installed even if built
-  ] ++ lib.optional (!finalAttrs.finalPackage.doCheck) "-DMSGPACK_BUILD_TESTS=OFF";
+    (lib.cmakeBool "MSGPACK_BUILD_EXAMPLES" false) # examples are not installed even if built
+    (lib.cmakeBool "MSGPACK_BUILD_TESTS" finalAttrs.finalPackage.doCheck)
+  ];
 
   checkInputs = [
     gtest
diff --git a/pkgs/development/libraries/ngtcp2/default.nix b/pkgs/development/libraries/ngtcp2/default.nix
index 6a0e15dfcd9c..ada0ab55dfd6 100644
--- a/pkgs/development/libraries/ngtcp2/default.nix
+++ b/pkgs/development/libraries/ngtcp2/default.nix
@@ -8,13 +8,13 @@
 
 stdenv.mkDerivation rec {
   pname = "ngtcp2";
-  version = "1.4.0";
+  version = "1.5.0";
 
   src = fetchFromGitHub {
     owner = "ngtcp2";
     repo = pname;
     rev = "v${version}";
-    hash = "sha256-te/kFt7/09QpmkHZ7dJxyKvvxP+mHtIQIgESkJATR38=";
+    hash = "sha256-Ez97uFzXvI7cE2TIk4/RCAwbAf+vXG1PlPaSvdSrcnE=";
     fetchSubmodules = true;
   };
 
diff --git a/pkgs/development/libraries/ngtcp2/gnutls.nix b/pkgs/development/libraries/ngtcp2/gnutls.nix
index b52156977411..d0e060c64058 100644
--- a/pkgs/development/libraries/ngtcp2/gnutls.nix
+++ b/pkgs/development/libraries/ngtcp2/gnutls.nix
@@ -6,13 +6,13 @@
 
 stdenv.mkDerivation rec {
   pname = "ngtcp2";
-  version = "1.4.0";
+  version = "1.5.0";
 
   src = fetchFromGitHub {
     owner = "ngtcp2";
     repo = "ngtcp2";
     rev = "v${version}";
-    hash = "sha256-C1Rk0KzTvFpwCz8vXvhSqGjYmGyLZxmnzZhPLZiL97M=";
+    hash = "sha256-3tB1AvwGJJiujZEc5Uc2NSAETop4LFEgiml/v68oheM=";
   };
 
   outputs = [ "out" "dev" ];
diff --git a/pkgs/development/libraries/nss/latest.nix b/pkgs/development/libraries/nss/latest.nix
index 8ac5a3b23a85..3b3a672e87f7 100644
--- a/pkgs/development/libraries/nss/latest.nix
+++ b/pkgs/development/libraries/nss/latest.nix
@@ -5,6 +5,6 @@
 #       Example: nix-shell ./maintainers/scripts/update.nix --argstr package cacert
 
 import ./generic.nix {
-  version = "3.99";
-  hash = "sha256-6JocWJpA+VjEPZOxmD74toyEBLOTzCxSWUzrxPi52bU=";
+  version = "3.100";
+  hash = "sha256-PlMCvSN4DMKY7u/7cr7kArrRve8YIfdycjgpik72bhA=";
 }
diff --git a/pkgs/development/libraries/nsync/default.nix b/pkgs/development/libraries/nsync/default.nix
index a984058e9b10..b54691a45bf2 100644
--- a/pkgs/development/libraries/nsync/default.nix
+++ b/pkgs/development/libraries/nsync/default.nix
@@ -6,13 +6,13 @@
 
 stdenv.mkDerivation rec {
   pname = "nsync";
-  version = "1.26.0";
+  version = "1.27.0";
 
   src = fetchFromGitHub {
     owner = "google";
     repo = pname;
     rev = version;
-    hash = "sha256-pE9waDI+6LQwbyPJ4zROoF93Vt6+SETxxJ/UxeZE5WE=";
+    hash = "sha256-5pd2IpnPB7lEmy44OJjcwfE+yUQBS0fZVG18VUe/3C8=";
   };
 
   nativeBuildInputs = [ cmake ];
diff --git a/pkgs/development/libraries/nvidia-vaapi-driver/default.nix b/pkgs/development/libraries/nvidia-vaapi-driver/default.nix
index 60ef649ec5ad..876ff8c13c64 100644
--- a/pkgs/development/libraries/nvidia-vaapi-driver/default.nix
+++ b/pkgs/development/libraries/nvidia-vaapi-driver/default.nix
@@ -14,13 +14,13 @@
 
 stdenv.mkDerivation rec {
   pname = "nvidia-vaapi-driver";
-  version = "0.0.11";
+  version = "0.0.12";
 
   src = fetchFromGitHub {
     owner = "elFarto";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-mVVRpCyT374P1Vql0yPY0e5tNktHNJ8XHoixvxp3b20=";
+    sha256 = "sha256-ETdHbPI3rZR4026rOT5K9/pjKTZxD5+RioKzUVGMwsA=";
   };
 
   patches = [
diff --git a/pkgs/development/libraries/ogre/default.nix b/pkgs/development/libraries/ogre/default.nix
index 890170c28808..fa0535ef8e9a 100644
--- a/pkgs/development/libraries/ogre/default.nix
+++ b/pkgs/development/libraries/ogre/default.nix
@@ -112,9 +112,9 @@ let
 in
 {
   ogre_14 = common {
-    version = "14.2.4";
-    hash = "sha256-Gr72KNjxZPZtFrgsbevPYiVog/fQNvJHvQEH0WA2DW4=";
-    # https://github.com/OGRECave/ogre/blob/v14.2.2/Components/Overlay/CMakeLists.txt
+    version = "14.2.5";
+    hash = "sha256-FldHoMU8akRF6/vjwley9nJOTioE5nQXnTdQqyNlI2M=";
+    # https://github.com/OGRECave/ogre/blob/v14.2.5/Components/Overlay/CMakeLists.txt
     imguiVersion = "1.90.4";
     imguiHash = "sha256-7+Ay7H97tIO6CUsEyaQv4i9q2FCw98eQUq/KYZyfTAw=";
   };
diff --git a/pkgs/development/libraries/onnxruntime/default.nix b/pkgs/development/libraries/onnxruntime/default.nix
index 43a7f7950473..b3117364984e 100644
--- a/pkgs/development/libraries/onnxruntime/default.nix
+++ b/pkgs/development/libraries/onnxruntime/default.nix
@@ -15,7 +15,7 @@
 , re2
 , zlib
 , microsoft-gsl
-, iconv
+, libiconv
 , protobuf_21
 , pythonSupport ? true
 , cudaSupport ? config.cudaSupport
@@ -138,7 +138,7 @@ effectiveStdenv.mkDerivation rec {
     packaging
   ]) ++ lib.optionals effectiveStdenv.isDarwin [
     Foundation
-    iconv
+    libiconv
   ] ++ lib.optionals cudaSupport (with cudaPackages; [
     cuda_cccl # cub/cub.cuh
     libcublas # cublas_v2.h
diff --git a/pkgs/development/libraries/openbabel/2.nix b/pkgs/development/libraries/openbabel/2.nix
index 0cc752d993fb..b69efd866467 100644
--- a/pkgs/development/libraries/openbabel/2.nix
+++ b/pkgs/development/libraries/openbabel/2.nix
@@ -25,6 +25,8 @@ stdenv.mkDerivation rec {
 
   buildInputs = [ zlib libxml2 eigen python3 cairo pcre ];
 
+  cmakeFlags = [ "-DCMAKE_CXX_STANDARD=14" ];
+
   nativeBuildInputs = [ cmake pkg-config ];
 
   meta = with lib; {
diff --git a/pkgs/development/libraries/opencascade-occt/default.nix b/pkgs/development/libraries/opencascade-occt/default.nix
index 2a8d49d9d134..664968de6432 100644
--- a/pkgs/development/libraries/opencascade-occt/default.nix
+++ b/pkgs/development/libraries/opencascade-occt/default.nix
@@ -1,20 +1,44 @@
-{ lib, stdenv, fetchurl, fetchpatch, cmake, ninja, tcl, tk,
-  libGL, libGLU, libXext, libXmu, libXi, darwin }:
+{ lib
+, stdenv
+, fetchurl
+, fetchpatch
+, cmake
+, ninja
+, tcl
+, tk
+, libGL
+, libGLU
+, libXext
+, libXmu
+, libXi
+, darwin
+}:
 
 stdenv.mkDerivation rec {
   pname = "opencascade-occt";
-  version = "7.6.2";
+  version = "7.8.1";
   commit = "V${builtins.replaceStrings ["."] ["_"] version}";
 
   src = fetchurl {
     name = "occt-${commit}.tar.gz";
     url = "https://git.dev.opencascade.org/gitweb/?p=occt.git;a=snapshot;h=${commit};sf=tgz";
-    sha256 = "sha256-n3KFrN/mN1SVXfuhEUAQ1fJzrCvhiclxfEIouyj9Z18=";
+    hash = "sha256-AGMZqTLLjXbzJFW/RSTsohAGV8sMxlUmdU/Y2oOzkk8=";
   };
 
-  nativeBuildInputs = [ cmake ninja ];
-  buildInputs = [ tcl tk libGL libGLU libXext libXmu libXi ]
-    ++ lib.optional stdenv.isDarwin darwin.apple_sdk.frameworks.Cocoa;
+  nativeBuildInputs = [
+    cmake
+    ninja
+  ];
+
+  buildInputs = [
+    tcl
+    tk
+    libGL
+    libGLU
+    libXext
+    libXmu
+    libXi
+  ] ++ lib.optional stdenv.isDarwin darwin.apple_sdk.frameworks.Cocoa;
 
   meta = with lib; {
     description = "Open CASCADE Technology, libraries for 3D modeling and numerical simulation";
diff --git a/pkgs/development/libraries/opendht/default.nix b/pkgs/development/libraries/opendht/default.nix
index 7209c2d2e253..ea568cdfa52a 100644
--- a/pkgs/development/libraries/opendht/default.nix
+++ b/pkgs/development/libraries/opendht/default.nix
@@ -21,13 +21,13 @@
 
 stdenv.mkDerivation rec {
   pname = "opendht";
-  version = "3.1.4";
+  version = "3.1.11";
 
   src = fetchFromGitHub {
     owner = "savoirfairelinux";
     repo = "opendht";
     rev = "v${version}";
-    hash = "sha256-KtsQ25uStmlf7RZLAcabhPMyGbxKxvpR6Vm632+EBvw=";
+    hash = "sha256-lJaQGkhpKfSSNVbP+NqommagtoWyi8CdauVxEhiI9Bc=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/libraries/openimagedenoise/default.nix b/pkgs/development/libraries/openimagedenoise/default.nix
index e2d9b66004ed..ad68505ad609 100644
--- a/pkgs/development/libraries/openimagedenoise/default.nix
+++ b/pkgs/development/libraries/openimagedenoise/default.nix
@@ -3,34 +3,54 @@
   config,
   cudaPackages,
   cudaSupport ? config.cudaSupport,
+  darwin,
   fetchzip,
   ispc,
   lib,
   python3,
   stdenv,
   tbb,
+  xcodebuild,
 }:
 
-stdenv.mkDerivation rec {
+let
+  stdenv' = if stdenv.isDarwin then darwin.apple_sdk_11_0.stdenv else stdenv;
+in
+stdenv'.mkDerivation (finalAttrs: {
   pname = "openimagedenoise";
   version = "2.2.2";
 
   # The release tarballs include pretrained weights, which would otherwise need to be fetched with git-lfs
   src = fetchzip {
-    url = "https://github.com/OpenImageDenoise/oidn/releases/download/v${version}/oidn-${version}.src.tar.gz";
+    url = "https://github.com/OpenImageDenoise/oidn/releases/download/v${finalAttrs.version}/oidn-${finalAttrs.version}.src.tar.gz";
     sha256 = "sha256-ZIrs4oEb+PzdMh2x2BUFXKyu/HBlFb3CJX24ciEHy3Q=";
   };
 
   patches = lib.optional cudaSupport ./cuda.patch;
 
+  postPatch =
+    ''
+      substituteInPlace devices/metal/CMakeLists.txt \
+        --replace-fail "AppleClang" "Clang"
+    '';
+
   nativeBuildInputs = [
     cmake
     python3
     ispc
-  ] ++ lib.optional cudaSupport cudaPackages.cuda_nvcc;
+  ] ++ lib.optional cudaSupport cudaPackages.cuda_nvcc
+    ++ lib.optionals stdenv.isDarwin [ xcodebuild ];
 
   buildInputs =
     [ tbb ]
+    ++ lib.optionals stdenv.isDarwin (
+      with darwin.apple_sdk_11_0.frameworks;
+      [
+        Accelerate
+        MetalKit
+        MetalPerformanceShadersGraph
+      ]
+    )
     ++ lib.optionals cudaSupport [
       cudaPackages.cuda_cudart
       cudaPackages.cuda_cccl
@@ -50,4 +70,4 @@ stdenv.mkDerivation rec {
     platforms = platforms.unix;
     changelog = "https://github.com/OpenImageDenoise/oidn/blob/v${version}/CHANGELOG.md";
   };
-}
+})
diff --git a/pkgs/development/libraries/opensaml-cpp/default.nix b/pkgs/development/libraries/opensaml-cpp/default.nix
index 7e44f2a50eeb..09c2be979a82 100644
--- a/pkgs/development/libraries/opensaml-cpp/default.nix
+++ b/pkgs/development/libraries/opensaml-cpp/default.nix
@@ -1,5 +1,5 @@
 { lib, stdenv, fetchgit, autoreconfHook, pkg-config
-, boost, openssl, log4shib, xercesc, xml-security-c, xml-tooling-c, zlib
+, darwin, boost, openssl, log4shib, xercesc, xml-security-c, xml-tooling-c, zlib
 }:
 
 stdenv.mkDerivation rec {
@@ -14,7 +14,10 @@ stdenv.mkDerivation rec {
 
   buildInputs = [
     boost openssl log4shib xercesc xml-security-c xml-tooling-c zlib
-  ];
+  ] ++ lib.optionals stdenv.isDarwin (with darwin.apple_sdk.frameworks; [
+    CoreServices
+    SystemConfiguration
+  ]);
   nativeBuildInputs = [ autoreconfHook pkg-config ];
 
   configureFlags = [ "--with-xmltooling=${xml-tooling-c}" ];
diff --git a/pkgs/development/libraries/openssl/default.nix b/pkgs/development/libraries/openssl/default.nix
index 359ed2832d24..0e144726cf85 100644
--- a/pkgs/development/libraries/openssl/default.nix
+++ b/pkgs/development/libraries/openssl/default.nix
@@ -237,6 +237,8 @@ let
 in {
   # intended version "policy":
   # - 1.1 as long as some package exists, which does not build without it
+  #   (tracking issue: https://github.com/NixOS/nixpkgs/issues/269713)
+  #   try to remove in 24.05 for the first time, if possible then
   # - latest 3.x LTS
   # - latest 3.x non-LTS as preview/for development
   #
@@ -245,7 +247,7 @@ in {
 
   # If you do upgrade here, please update in pkgs/top-level/release.nix
   # the permitted insecure version to ensure it gets cached for our users
-  # and backport this to stable release (23.05).
+  # and backport this to stable release (at time of writing this 23.11).
   openssl_1_1 = common {
     version = "1.1.1w";
     hash = "sha256-zzCYlQy02FOtlcCEHx+cbT3BAtzPys1SHZOSUgi3asg=";
@@ -259,7 +261,7 @@ in {
     withDocs = true;
     extraMeta = {
       knownVulnerabilities = [
-        "OpenSSL 1.1 is reaching its end of life on 2023/09/11 and cannot be supported through the NixOS 23.05 release cycle. https://www.openssl.org/blog/blog/2023/03/28/1.1.1-EOL/"
+        "OpenSSL 1.1 is reaching its end of life on 2023/09/11 and cannot be supported through the NixOS 23.11 release cycle. https://www.openssl.org/blog/blog/2023/03/28/1.1.1-EOL/"
       ];
     };
   };
diff --git a/pkgs/development/libraries/openturns/default.nix b/pkgs/development/libraries/openturns/default.nix
deleted file mode 100644
index a2fa42caea60..000000000000
--- a/pkgs/development/libraries/openturns/default.nix
+++ /dev/null
@@ -1,82 +0,0 @@
-{ lib
-, stdenv
-, fetchFromGitHub
-, fetchpatch
-, cmake
-, swig
-, boost
-, spectra
-, libxml2
-, tbb
-, hmat-oss
-, nlopt
-, cminpack
-, ceres-solver
-, dlib
-, hdf5
-, primesieve
-, pagmo2
-, ipopt
-, Accelerate
-# tests take an hour to build on a 48-core machine
-, runTests ? false
-, enablePython ? false
-, python3Packages
-}:
-
-stdenv.mkDerivation rec {
-  pname = "openturns";
-  version = "1.22";
-
-  src = fetchFromGitHub {
-    owner = "openturns";
-    repo = "openturns";
-    rev = "v${version}";
-    sha256 = "sha256-ku3/mPoa1YJVJB99R/kWlOubIO+OZAiKfPqS/DrtJQk=";
-  };
-
-  nativeBuildInputs = [ cmake ] ++ lib.optional enablePython python3Packages.sphinx;
-  buildInputs = [
-    swig
-    boost
-    spectra
-    libxml2
-    tbb
-    hmat-oss
-    nlopt
-    cminpack
-    ceres-solver
-    dlib
-    hdf5
-    primesieve
-    pagmo2
-    ipopt
-  ] ++ lib.optionals enablePython [
-    python3Packages.python
-    python3Packages.matplotlib
-    python3Packages.psutil
-    python3Packages.dill
-  ] ++ lib.optional stdenv.isDarwin Accelerate;
-
-  cmakeFlags = [
-    "-DOPENTURNS_SYSCONFIG_PATH=$out/etc"
-    "-DCMAKE_UNITY_BUILD=ON"
-    "-DCMAKE_UNITY_BUILD_BATCH_SIZE=32"
-    "-DSWIG_COMPILE_FLAGS='-O1'"
-    "-DUSE_SPHINX=${if enablePython then "ON" else "OFF"}"
-    "-DBUILD_PYTHON=${if enablePython then "ON" else "OFF"}"
-  ];
-
-  doCheck = runTests;
-
-  checkTarget = "tests check";
-
-  meta = with lib; {
-    description = "Multivariate probabilistic modeling and uncertainty treatment library";
-    license = with licenses; [ lgpl3 gpl3 ];
-    homepage = "https://openturns.github.io/www/";
-    changelog = "https://github.com/openturns/openturns/raw/v${version}/ChangeLog";
-    maintainers = with maintainers; [ gdinh ];
-    platforms = platforms.unix;
-  };
-}
diff --git a/pkgs/development/libraries/openvdb/default.nix b/pkgs/development/libraries/openvdb/default.nix
index 5af5a27f34f5..bbb8aa47a35d 100644
--- a/pkgs/development/libraries/openvdb/default.nix
+++ b/pkgs/development/libraries/openvdb/default.nix
@@ -18,7 +18,7 @@ stdenv.mkDerivation rec
 
   buildInputs = [ boost tbb jemalloc c-blosc zlib ];
 
-  cmakeFlags = [ "-DOPENVDB_CORE_STATIC=OFF" ];
+  cmakeFlags = [ "-DOPENVDB_CORE_STATIC=OFF" "-DOPENVDB_BUILD_NANOVDB=ON"];
 
   # error: aligned deallocation function of type 'void (void *, std::align_val_t) noexcept' is only available on macOS 10.13 or newer
   env = lib.optionalAttrs (stdenv.isDarwin && lib.versionOlder stdenv.hostPlatform.darwinMinVersion "10.13" && lib.versionAtLeast tbb.version "2021.8.0") {
diff --git a/pkgs/development/libraries/openvino/default.nix b/pkgs/development/libraries/openvino/default.nix
index a4ce0fe60c1e..280c1b7ef934 100644
--- a/pkgs/development/libraries/openvino/default.nix
+++ b/pkgs/development/libraries/openvino/default.nix
@@ -17,6 +17,7 @@
 
 # runtime
 , flatbuffers
+, level-zero
 , libusb1
 , libxml2
 , ocl-icd
@@ -53,14 +54,14 @@ in
 
 stdenv.mkDerivation rec {
   pname = "openvino";
-  version = "2024.0.0";
+  version = "2024.1.0";
 
   src = fetchFromGitHub {
     owner = "openvinotoolkit";
     repo = "openvino";
     rev = "refs/tags/${version}";
     fetchSubmodules = true;
-    hash = "sha256-Xsrmc1EynkjgPgiQ+ESyVJRJT9Afqyob0/uH+Is4TYA=";
+    hash = "sha256-OOSxXpLjmhOgKvrSO6SmY7xLhJSzGXT8w/Y4FnfwTqU=";
   };
 
   outputs = [
@@ -132,6 +133,7 @@ stdenv.mkDerivation rec {
 
   buildInputs = [
     flatbuffers
+    level-zero
     libusb1
     libxml2
     ocl-icd
diff --git a/pkgs/development/libraries/p11-kit/default.nix b/pkgs/development/libraries/p11-kit/default.nix
index ab9bfcbc1d97..32ee1dced38e 100644
--- a/pkgs/development/libraries/p11-kit/default.nix
+++ b/pkgs/development/libraries/p11-kit/default.nix
@@ -9,7 +9,6 @@
 , docbook-xsl-nons
 , docbook_xml_dtd_43
 , gettext
-, mesonEmulatorHook
 , libffi
 , libintl
 }:
@@ -39,10 +38,6 @@ stdenv.mkDerivation rec {
     docbook-xsl-nons
     docbook_xml_dtd_43
     gettext
-  ] ++ lib.optionals
-    (!stdenv.buildPlatform.canExecute stdenv.hostPlatform
-      && !stdenv.hostPlatform.isMinGW) [
-    mesonEmulatorHook
   ];
 
   buildInputs = [
diff --git a/pkgs/development/libraries/pango/default.nix b/pkgs/development/libraries/pango/default.nix
index 34288773705a..70408877fe0e 100644
--- a/pkgs/development/libraries/pango/default.nix
+++ b/pkgs/development/libraries/pango/default.nix
@@ -24,13 +24,13 @@
 
 stdenv.mkDerivation (finalAttrs: {
   pname = "pango";
-  version = "1.51.2";
+  version = "1.52.2";
 
   outputs = [ "bin" "out" "dev" ] ++ lib.optional withIntrospection "devdoc";
 
   src = fetchurl {
     url = with finalAttrs; "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
-    sha256 = "sha256-PbpAfytfwRfhkvMCXwocyO3B/ZuTSxxXiyuXNCE5QVo=";
+    hash = "sha256-0Adq/gEIKBS4U97smfk0ns5fLOg5CLjlj/c2tB94qWs=";
   };
 
   depsBuildBuild = [
diff --git a/pkgs/development/libraries/pangomm/2.48.nix b/pkgs/development/libraries/pangomm/2.48.nix
index 0e8bbe80dd84..fa4148e06aa0 100644
--- a/pkgs/development/libraries/pangomm/2.48.nix
+++ b/pkgs/development/libraries/pangomm/2.48.nix
@@ -14,13 +14,13 @@
 
 stdenv.mkDerivation rec {
   pname = "pangomm";
-  version= "2.50.2";
+  version= "2.52.0";
 
   outputs = [ "out" "dev" ];
 
   src = fetchurl {
     url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
-    sha256 = "sha256-G8WrTqMoBEJYDWgxgibas2zu38Moj52DcRz3z6tQqfs=";
+    hash = "sha256-NKE0EmpkhP8S93Q1jDbsxE0OnfCU4bg3ltl3S7fSSUc=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/libraries/parson/default.nix b/pkgs/development/libraries/parson/default.nix
index 6ba47491ecb4..3ee5c73290a1 100644
--- a/pkgs/development/libraries/parson/default.nix
+++ b/pkgs/development/libraries/parson/default.nix
@@ -18,6 +18,6 @@ stdenv.mkDerivation {
     homepage = "https://github.com/kgabis/parson";
     license = licenses.mit;
     platforms = platforms.all;
-    maintainers = [ ];
+    maintainers = with lib.maintainers; [ sigmanificient ];
   };
 }
diff --git a/pkgs/development/libraries/pcre/default.nix b/pkgs/development/libraries/pcre/default.nix
index 52219152845b..e488ebe1f464 100644
--- a/pkgs/development/libraries/pcre/default.nix
+++ b/pkgs/development/libraries/pcre/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetchurl
+{ lib, stdenv, fetchurl, fetchpatch
 , pcre, windows ? null
 , variant ? null
 }:
@@ -25,8 +25,17 @@ stdenv.mkDerivation rec {
   ]
     ++ lib.optional (variant != null) "--enable-${variant}";
 
-  # https://bugs.exim.org/show_bug.cgi?id=2173
-  patches = [ ./stacksize-detection.patch ];
+  patches = [
+    # https://bugs.exim.org/show_bug.cgi?id=2173
+    ./stacksize-detection.patch
+
+    # Fix segfaults & tests on powerpc64
+    (fetchpatch {
+      name = "sljit-ppc-icache-flush.patch";
+      url = "https://github.com/void-linux/void-packages/raw/d286e231ee680875ad8e80f90ea62e46f5edd812/srcpkgs/pcre/patches/ppc-icache-flush.patch";
+      hash = "sha256-pttmKwihLzKrAV6O4qVLp2pu4NwNJEFS/9Id8/b3nAU=";
+    })
+  ];
 
   preCheck = ''
     patchShebangs RunGrepTest
diff --git a/pkgs/development/libraries/pcre2/default.nix b/pkgs/development/libraries/pcre2/default.nix
index 23234c40e3f8..c30a3c379d1d 100644
--- a/pkgs/development/libraries/pcre2/default.nix
+++ b/pkgs/development/libraries/pcre2/default.nix
@@ -27,7 +27,7 @@ stdenv.mkDerivation rec {
     "--enable-pcre2-16"
     "--enable-pcre2-32"
     # only enable jit on supported platforms which excludes Apple Silicon, see https://github.com/zherczeg/sljit/issues/51
-    "--enable-jit=${if stdenv.hostPlatform.isS390x then "no" else "auto"}"
+    "--enable-jit=${if stdenv.hostPlatform.isS390x || stdenv.hostPlatform.isLoongArch64 then "no" else "auto"}"
   ]
   # fix pcre jit in systemd units that set MemoryDenyWriteExecute=true like gitea
   ++ lib.optional withJitSealloc "--enable-jit-sealloc";
diff --git a/pkgs/development/libraries/physics/fastnlo-toolkit/default.nix b/pkgs/development/libraries/physics/fastnlo-toolkit/default.nix
index 66a3bf5128f5..3c781689bbf8 100644
--- a/pkgs/development/libraries/physics/fastnlo-toolkit/default.nix
+++ b/pkgs/development/libraries/physics/fastnlo-toolkit/default.nix
@@ -60,6 +60,10 @@ stdenv.mkDerivation rec {
   '';
   enableParallelChecking = false;
 
+  # None of our currently packaged versions of swig are C++17-friendly
+  # Use a workaround from https://github.com/swig/swig/issues/1538
+  env.CXXFLAGS="-D_LIBCPP_ENABLE_CXX17_REMOVED_FEATURES";
+
   meta = with lib; {
     homepage = "http://fastnlo.hepforge.org";
     description = "Fast pQCD calculations for hadron-induced processes";
diff --git a/pkgs/development/libraries/physics/nlojet/default.nix b/pkgs/development/libraries/physics/nlojet/default.nix
index c477f98ae7b9..4e2d878db00c 100644
--- a/pkgs/development/libraries/physics/nlojet/default.nix
+++ b/pkgs/development/libraries/physics/nlojet/default.nix
@@ -13,6 +13,8 @@ stdenv.mkDerivation rec {
     ./nlojet_clang_fix.patch
   ];
 
+  env.CXXFLAGS="-std=c++11";
+
   # error: no member named 'finite' in the global namespace; did you mean simply 'finite'?
   env.NIX_CFLAGS_COMPILE = lib.optionalString (stdenv.isDarwin && stdenv.isAarch64) "-Dfinite=isfinite";
 
diff --git a/pkgs/development/libraries/pinocchio/default.nix b/pkgs/development/libraries/pinocchio/default.nix
index add7ef6fde22..86f0c891b2a9 100644
--- a/pkgs/development/libraries/pinocchio/default.nix
+++ b/pkgs/development/libraries/pinocchio/default.nix
@@ -4,7 +4,9 @@
 , cmake
 , boost
 , eigen
+, example-robot-data
 , collisionSupport ? !stdenv.isDarwin
+, jrl-cmakemodules
 , hpp-fcl
 , urdfdom
 , pythonSupport ? false
@@ -13,16 +15,22 @@
 
 stdenv.mkDerivation (finalAttrs: {
   pname = "pinocchio";
-  version = "2.7.0";
+  version = "2.7.1";
 
   src = fetchFromGitHub {
     owner = "stack-of-tasks";
     repo = finalAttrs.pname;
     rev = "v${finalAttrs.version}";
-    fetchSubmodules = true;
-    hash = "sha256-yhrG+MilGJkvwLUNTAgNhDqUWGjPswjrbg38yOLsmHc=";
+    hash = "sha256-Ks5dvKi5iutjM+iovDOYGx3vsr45JWRqGOXV8+Ko4gg=";
   };
 
+  # example-robot-data models are used in checks.
+  # Upstream provide them as git submodule, but we can use our own version instead.
+  postPatch = ''
+    rmdir models/example-robot-data
+    ln -s ${example-robot-data.src} models/example-robot-data
+  '';
+
   strictDeps = true;
 
   nativeBuildInputs = [
@@ -30,6 +38,7 @@ stdenv.mkDerivation (finalAttrs: {
   ];
 
   propagatedBuildInputs = [
+    jrl-cmakemodules
     urdfdom
   ] ++ lib.optionals (!pythonSupport) [
     boost
@@ -43,15 +52,13 @@ stdenv.mkDerivation (finalAttrs: {
     python3Packages.hpp-fcl
   ];
 
-  cmakeFlags = lib.optionals collisionSupport [
-    "-DBUILD_WITH_COLLISION_SUPPORT=ON"
-  ] ++ lib.optionals pythonSupport [
-    "-DBUILD_WITH_LIBPYTHON=ON"
+  cmakeFlags = [
+    (lib.cmakeBool "BUILD_PYTHON_INTERFACE" pythonSupport)
+    (lib.cmakeBool "BUILD_WITH_LIBPYTHON" pythonSupport)
+    (lib.cmakeBool "BUILD_WITH_COLLISION_SUPPORT" collisionSupport)
   ] ++ lib.optionals (pythonSupport && stdenv.isDarwin) [
     # AssertionError: '.' != '/tmp/nix-build-pinocchio-2.7.0.drv/sou[84 chars].dae'
     "-DCMAKE_CTEST_ARGUMENTS='--exclude-regex;test-py-bindings_geometry_model_urdf'"
-  ] ++ lib.optionals (!pythonSupport) [
-    "-DBUILD_PYTHON_INTERFACE=OFF"
   ];
 
   doCheck = true;
@@ -60,11 +67,11 @@ stdenv.mkDerivation (finalAttrs: {
     "pinocchio"
   ];
 
-  meta = with lib; {
+  meta = {
     description = "A fast and flexible implementation of Rigid Body Dynamics algorithms and their analytical derivatives";
     homepage = "https://github.com/stack-of-tasks/pinocchio";
-    license = licenses.bsd2;
-    maintainers = with maintainers; [ nim65s wegank ];
-    platforms = platforms.unix;
+    license = lib.licenses.bsd2;
+    maintainers = with lib.maintainers; [ nim65s wegank ];
+    platforms = lib.platforms.unix;
   };
 })
diff --git a/pkgs/development/libraries/poco/default.nix b/pkgs/development/libraries/poco/default.nix
index 029767aaa608..097edd0953c7 100644
--- a/pkgs/development/libraries/poco/default.nix
+++ b/pkgs/development/libraries/poco/default.nix
@@ -3,12 +3,12 @@
 stdenv.mkDerivation rec {
   pname = "poco";
 
-  version = "1.13.2";
+  version = "1.13.3";
 
   src = fetchFromGitHub {
     owner = "pocoproject";
     repo = "poco";
-    sha256 = "sha256-GcwkGiui9j9RzMQyEEmqq8dxWzKpv5xWxJgvJpSMdbw=";
+    sha256 = "sha256-ryBQjzg1DyYd/LBZzjHxq8m/7ZXRSKNNGRkIII0eHK0=";
     rev = "poco-${version}-release";
   };
 
diff --git a/pkgs/development/libraries/qmenumodel/default.nix b/pkgs/development/libraries/qmenumodel/default.nix
index 7d1384df364b..c2b5e61b9d3b 100644
--- a/pkgs/development/libraries/qmenumodel/default.nix
+++ b/pkgs/development/libraries/qmenumodel/default.nix
@@ -12,6 +12,7 @@
 , python3
 , qtbase
 , qtdeclarative
+, gobject-introspection
 }:
 
 stdenv.mkDerivation (finalAttrs: {
@@ -55,6 +56,7 @@ stdenv.mkDerivation (finalAttrs: {
   nativeCheckInputs = [
     dbus
     dbus-test-runner
+    gobject-introspection
     (python3.withPackages (ps: with ps; [
       dbus-python
       pygobject3
diff --git a/pkgs/development/libraries/qt-5/5.15/default.nix b/pkgs/development/libraries/qt-5/5.15/default.nix
index 80d75b8cf880..a8885fc5647b 100644
--- a/pkgs/development/libraries/qt-5/5.15/default.nix
+++ b/pkgs/development/libraries/qt-5/5.15/default.nix
@@ -284,7 +284,11 @@ let
       qtnetworkauth = callPackage ../modules/qtnetworkauth.nix {};
       qtpim = callPackage ../modules/qtpim.nix {};
       qtpositioning = callPackage ../modules/qtpositioning.nix {};
+      qtpurchasing = callPackage ../modules/qtpurchasing.nix {
+        inherit (darwin.apple_sdk_11_0.frameworks) Foundation StoreKit;
+      };
       qtquick1 = null;
+      qtquick3d = callPackage ../modules/qtquick3d.nix { };
       qtquickcontrols = callPackage ../modules/qtquickcontrols.nix {};
       qtquickcontrols2 = callPackage ../modules/qtquickcontrols2.nix {};
       qtremoteobjects = callPackage ../modules/qtremoteobjects.nix {};
diff --git a/pkgs/development/libraries/qt-5/modules/qtpurchasing.nix b/pkgs/development/libraries/qt-5/modules/qtpurchasing.nix
new file mode 100644
index 000000000000..3c1661c7b000
--- /dev/null
+++ b/pkgs/development/libraries/qt-5/modules/qtpurchasing.nix
@@ -0,0 +1,14 @@
+{ stdenv
+, lib
+, qtModule
+, qtbase
+, qtdeclarative
+, StoreKit
+, Foundation
+}:
+
+qtModule {
+  pname = "qtpurchasing";
+  propagatedBuildInputs = [ qtbase qtdeclarative ];
+  buildInputs = lib.optionals stdenv.hostPlatform.isDarwin [ Foundation StoreKit ];
+}
diff --git a/pkgs/development/libraries/qt-5/modules/qtquick3d.nix b/pkgs/development/libraries/qt-5/modules/qtquick3d.nix
new file mode 100644
index 000000000000..1c84856c0c12
--- /dev/null
+++ b/pkgs/development/libraries/qt-5/modules/qtquick3d.nix
@@ -0,0 +1,11 @@
+{ qtModule
+, qtbase
+, qtdeclarative
+, openssl
+}:
+
+qtModule {
+  pname = "qtquick3d";
+  propagatedBuildInputs = [ qtbase qtdeclarative ];
+  buildInputs = [ openssl ];
+}
diff --git a/pkgs/development/libraries/qtkeychain/default.nix b/pkgs/development/libraries/qtkeychain/default.nix
index 564eb31a7139..9007129cecf5 100644
--- a/pkgs/development/libraries/qtkeychain/default.nix
+++ b/pkgs/development/libraries/qtkeychain/default.nix
@@ -12,20 +12,17 @@
 
 stdenv.mkDerivation rec {
   pname = "qtkeychain";
-  version = "0.14.2";
+  version = "0.14.3";
 
   src = fetchFromGitHub {
     owner = "frankosterfeld";
     repo = "qtkeychain";
     rev = version;
-    sha256 = "sha256-aRBhg4RwK2jUQWW/OmzNSMUScaFUPdbWbApD37CXPoI=";
+    sha256 = "sha256-+1WX3ARH+jWeDiaJnX+ZlRMj+l3qvgBwcGKjB9QEJNI=";
   };
 
   dontWrapQtApps = true;
 
-  # HACK `propagatedSandboxProfile` does not appear to actually propagate the sandbox profile from `qtbase`
-  sandboxProfile = toString qtbase.__propagatedSandboxProfile or null;
-
   cmakeFlags = [
     "-DBUILD_WITH_QT6=${if lib.versions.major qtbase.version == "6" then "ON" else "OFF"}"
     "-DQT_TRANSLATIONS_DIR=share/qt/translations"
diff --git a/pkgs/development/libraries/qxlsx/default.nix b/pkgs/development/libraries/qxlsx/default.nix
index 2626eefa8cd4..45324d97e5a7 100644
--- a/pkgs/development/libraries/qxlsx/default.nix
+++ b/pkgs/development/libraries/qxlsx/default.nix
@@ -7,13 +7,13 @@
 
 stdenv.mkDerivation rec {
   pname = "qxlsx";
-  version = "1.4.7";
+  version = "1.4.8";
 
   src = fetchFromGitHub {
     owner = "QtExcel";
     repo = "QXlsx";
     rev = "v${version}";
-    hash = "sha256-E3x2IUPMRmPSTRN01sXJ0PZaN7iBzatr2vwan2sZxf0=";
+    hash = "sha256-mMhe4yztU9I/zJFbj/0GNiIoSy7U4rQ1Y3mDvvHNKXk=";
   };
 
   nativeBuildInputs = [ cmake ];
diff --git a/pkgs/development/libraries/qxmpp/default.nix b/pkgs/development/libraries/qxmpp/default.nix
index a2e80d415d18..f22f9860d9cd 100644
--- a/pkgs/development/libraries/qxmpp/default.nix
+++ b/pkgs/development/libraries/qxmpp/default.nix
@@ -12,13 +12,13 @@
 
 mkDerivation rec {
   pname = "qxmpp";
-  version = "1.6.0";
+  version = "1.6.1";
 
   src = fetchFromGitHub {
     owner = "qxmpp-project";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-5NPqNQuVuRz9GfrJULSmTiYHUMe6VxoaQZDHhYCguWQ=";
+    sha256 = "sha256-y27rTJc2taFGOjDmy0KKQQxSdXOwteLunHwICh5pSEc=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/libraries/rapidcheck/default.nix b/pkgs/development/libraries/rapidcheck/default.nix
index 68f2e5e096a8..880f1706b299 100644
--- a/pkgs/development/libraries/rapidcheck/default.nix
+++ b/pkgs/development/libraries/rapidcheck/default.nix
@@ -8,7 +8,7 @@
 
 stdenv.mkDerivation (finalAttrs: {
   pname = "rapidcheck";
-  version = "unstable-2023-12-14";
+  version = "0-unstable-2023-12-14";
 
   src = fetchFromGitHub {
     owner = "emil-e";
diff --git a/pkgs/development/libraries/rapidyaml/default.nix b/pkgs/development/libraries/rapidyaml/default.nix
index 68449479278f..1275f2fa5452 100644
--- a/pkgs/development/libraries/rapidyaml/default.nix
+++ b/pkgs/development/libraries/rapidyaml/default.nix
@@ -7,14 +7,14 @@
 
 stdenv.mkDerivation rec {
   pname = "rapidyaml";
-  version = "0.5.0";
+  version = "0.6.0";
 
   src = fetchFromGitHub {
     owner = "biojppm";
     repo = pname;
     fetchSubmodules = true;
     rev = "v${version}";
-    sha256 = "sha256-1/P6Szgng94UU8cPFAtOKMS+EmiwfW/IJl2UTolDU5s=";
+    sha256 = "sha256-p9XaMsrOgnEdb0yl52HXhNzz6YxuvTD5GCaq1a+l1bQ=";
   };
 
   nativeBuildInputs = [ cmake git ];
@@ -24,5 +24,6 @@ stdenv.mkDerivation rec {
     homepage = "https://github.com/biojppm/rapidyaml";
     license = licenses.mit;
     maintainers = with maintainers; [ martfont ];
+    platforms = platforms.all;
   };
 }
diff --git a/pkgs/development/libraries/re2/default.nix b/pkgs/development/libraries/re2/default.nix
index d1223811c686..9a9e1f634df8 100644
--- a/pkgs/development/libraries/re2/default.nix
+++ b/pkgs/development/libraries/re2/default.nix
@@ -13,13 +13,13 @@
 
 stdenv.mkDerivation rec {
   pname = "re2";
-  version = "2024-03-01";
+  version = "2024-05-01";
 
   src = fetchFromGitHub {
     owner = "google";
     repo = "re2";
     rev = version;
-    hash = "sha256-VuI9OsfGTdVywdyVfBrSzXSjbSfevne+YQ2oOz4R3DM=";
+    hash = "sha256-p4MdHjTk0SQsBPVkEy+EceAN/QTyzBDe7Pd1hJwOs3A=";
   };
 
   outputs = [ "out" "dev" ];
diff --git a/pkgs/development/libraries/rocksdb/default.nix b/pkgs/development/libraries/rocksdb/default.nix
index e1518b6662f6..c584ef2976d1 100644
--- a/pkgs/development/libraries/rocksdb/default.nix
+++ b/pkgs/development/libraries/rocksdb/default.nix
@@ -18,13 +18,13 @@
 
 stdenv.mkDerivation (finalAttrs: {
   pname = "rocksdb";
-  version = "9.1.0";
+  version = "9.1.1";
 
   src = fetchFromGitHub {
     owner = "facebook";
     repo = finalAttrs.pname;
     rev = "v${finalAttrs.version}";
-    hash = "sha256-vRPyrXkXVVhP56n5FVYef8zbIsnnanQSpElmQLZ7mh8=";
+    hash = "sha256-/Xf0bzNJPclH9IP80QNaABfhj4IAR5LycYET18VFCXc=";
   };
 
   nativeBuildInputs = [ cmake ninja ];
diff --git a/pkgs/development/libraries/rutabaga_gfx/default.nix b/pkgs/development/libraries/rutabaga_gfx/default.nix
index 687500272735..9b8f5bec42f3 100644
--- a/pkgs/development/libraries/rutabaga_gfx/default.nix
+++ b/pkgs/development/libraries/rutabaga_gfx/default.nix
@@ -54,15 +54,23 @@ stdenv.mkDerivation (finalAttrs: {
     hash = "sha256-wuF3Isrp+u5J8jPQoPsIOWYGNKLSNa2pLfvladAWkLs=";
   };
 
-  # make install always rebuilds
-  dontBuild = true;
+  CARGO_BUILD_TARGET = stdenv.hostPlatform.rust.rustcTargetSpec;
+  "CARGO_TARGET_${stdenv.hostPlatform.rust.cargoEnvVarTarget}_LINKER" =
+    "${stdenv.cc.targetPrefix}cc";
 
-  makeFlags = [ "prefix=$(out)" ];
-
-  preInstall = ''
+  postConfigure = ''
     cd rutabaga_gfx/ffi
+    substituteInPlace Makefile --replace-fail pkg-config "$PKG_CONFIG"
   '';
 
+  # make install always rebuilds
+  dontBuild = true;
+
+  makeFlags = [
+    "prefix=$(out)"
+    "OUT=target/${stdenv.hostPlatform.rust.cargoShortTarget}/release"
+  ];
+
   meta = with lib; {
     homepage = "https://crosvm.dev/book/appendix/rutabaga_gfx.html";
     description = "cross-platform abstraction for GPU and display virtualization";
diff --git a/pkgs/development/libraries/s2n-tls/default.nix b/pkgs/development/libraries/s2n-tls/default.nix
index 8ef3df499261..36f11372775d 100644
--- a/pkgs/development/libraries/s2n-tls/default.nix
+++ b/pkgs/development/libraries/s2n-tls/default.nix
@@ -8,13 +8,13 @@
 
 stdenv.mkDerivation rec {
   pname = "s2n-tls";
-  version = "1.4.9";
+  version = "1.4.12";
 
   src = fetchFromGitHub {
     owner = "aws";
     repo = pname;
     rev = "v${version}";
-    hash = "sha256-YH35+kCvPjeBYMMJi7YdAGk/ds3YPm5SSKpoWfbCI3M=";
+    hash = "sha256-gOCnRuJ1YM+SkrOJ/5TGANl442e7Umh3HK5DFNLJi/A=";
   };
 
   nativeBuildInputs = [ cmake ];
diff --git a/pkgs/development/libraries/science/astronomy/wcslib/default.nix b/pkgs/development/libraries/science/astronomy/wcslib/default.nix
index a2bcdfdb7c34..f51b70604bec 100644
--- a/pkgs/development/libraries/science/astronomy/wcslib/default.nix
+++ b/pkgs/development/libraries/science/astronomy/wcslib/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   pname = "wcslib";
-  version = "8.2.2";
+  version = "8.3";
 
   src = fetchurl {
     url = "ftp://ftp.atnf.csiro.au/pub/software/wcslib/${pname}-${version}.tar.bz2";
-    sha256 = "sha256-YpgiCugX9OVSJkOsTD2iYjvnCjSEsaTzcGC+4+S9eDM=";
+    sha256 = "sha256-Qx6jQXknu8Arib+jQV3AtGaLDyGjtG+4o1JeL89hRQg=";
   };
 
   nativeBuildInputs = [ flex ];
diff --git a/pkgs/development/libraries/science/biology/bicpl/default.nix b/pkgs/development/libraries/science/biology/bicpl/default.nix
index c15689aa606a..fd9e4f4003e0 100644
--- a/pkgs/development/libraries/science/biology/bicpl/default.nix
+++ b/pkgs/development/libraries/science/biology/bicpl/default.nix
@@ -1,19 +1,29 @@
-{ lib, stdenv, fetchFromGitHub, cmake, libminc, netpbm }:
+{
+  lib,
+  stdenv,
+  fetchFromGitHub,
+  cmake,
+  libminc,
+  netpbm,
+}:
 
 stdenv.mkDerivation rec {
   pname = "bicpl";
-  version = "unstable-2020-10-15";
+  version = "unstable-2024-05-14";
 
-  # current master is significantly ahead of most recent release, so use Git version:
+  # master is not actively maintained, using develop and develop-apple branches
   src = fetchFromGitHub {
-    owner  = "BIC-MNI";
-    repo   = pname;
-    rev    = "a58af912a71a4c62014975b89ef37a8e72de3c9d";
-    sha256 = "0iw0pmr8xrifbx5l8a0xidfqbm1v8hwzqrw0lcmimxlzdihyri0g";
+    owner = "BIC-MNI";
+    repo = pname;
+    rev = "7e1e791483cf135fe29b8eecd7a360aa892823ae";
+    hash = "sha256-SvbtPUfEYp3IGivG+5yFdJF904miyMk+s15zwW7e7b4=";
   };
 
   nativeBuildInputs = [ cmake ];
-  buildInputs = [ libminc netpbm ];
+  buildInputs = [
+    libminc
+    netpbm
+  ];
 
   cmakeFlags = [ "-DLIBMINC_DIR=${libminc}/lib/cmake" ];
 
@@ -25,6 +35,9 @@ stdenv.mkDerivation rec {
     description = "Brain Imaging Centre programming library";
     maintainers = with maintainers; [ bcdarwin ];
     platforms = platforms.unix;
-    license   = with licenses; [ hpndUc gpl3Plus ];
+    license = with licenses; [
+      hpndUc
+      gpl3Plus
+    ];
   };
 }
diff --git a/pkgs/development/libraries/science/chemistry/libvdwxc/default.nix b/pkgs/development/libraries/science/chemistry/libvdwxc/default.nix
index c0da65e7c788..c843d443e81e 100644
--- a/pkgs/development/libraries/science/chemistry/libvdwxc/default.nix
+++ b/pkgs/development/libraries/science/chemistry/libvdwxc/default.nix
@@ -21,7 +21,7 @@ stdenv.mkDerivation rec {
 
   nativeBuildInputs = [ autoreconfHook gfortran ];
 
-  propagatedBuildInputs = [ mpi fftwMpi ];
+  buildInputs = [ mpi fftwMpi ];
 
   preConfigure = ''
     mkdir build && cd build
diff --git a/pkgs/development/libraries/science/math/blis/default.nix b/pkgs/development/libraries/science/math/blis/default.nix
index c32379f26592..b31de4b84a70 100644
--- a/pkgs/development/libraries/science/math/blis/default.nix
+++ b/pkgs/development/libraries/science/math/blis/default.nix
@@ -17,13 +17,13 @@ let
   blasIntSize = if blas64 then "64" else "32";
 in stdenv.mkDerivation rec {
   pname = "blis";
-  version = "0.9.0";
+  version = "1.0";
 
   src = fetchFromGitHub {
     owner = "flame";
     repo = "blis";
     rev = version;
-    sha256 = "sha256-1aHIdt5wCDrT1hBPnaUVThwjwDkJQ0G0+tao2iFXYpM=";
+    sha256 = "sha256-lAo6C34QQvXr3LmcsnTp4+Imi/lKxzcWu3EJkVgLvDI=";
   };
 
   inherit blas64;
diff --git a/pkgs/development/libraries/science/math/clblas/default.nix b/pkgs/development/libraries/science/math/clblas/default.nix
index a87d107b3a17..dfa157d05d65 100644
--- a/pkgs/development/libraries/science/math/clblas/default.nix
+++ b/pkgs/development/libraries/science/math/clblas/default.nix
@@ -1,5 +1,6 @@
 { lib, stdenv
 , fetchFromGitHub
+, fetchpatch
 , cmake
 , gfortran
 , blas
@@ -21,7 +22,13 @@ stdenv.mkDerivation rec {
     sha256 = "154mz52r5hm0jrp5fqrirzzbki14c1jkacj75flplnykbl36ibjs";
   };
 
-  patches = [ ./platform.patch ];
+  patches = [
+    ./platform.patch
+    (fetchpatch {
+      url = "https://github.com/clMathLibraries/clBLAS/commit/68ce5f0b824d7cf9d71b09bb235cf219defcc7b4.patch";
+      hash = "sha256-XoVcHgJ0kTPysZbM83mUX4/lvXVHKbl7s2Q8WWiUnMs=";
+    })
+  ];
 
   postPatch = ''
     sed -i -re 's/(set\(\s*Boost_USE_STATIC_LIBS\s+).*/\1OFF\ \)/g' src/CMakeLists.txt
diff --git a/pkgs/development/libraries/science/math/ipopt/default.nix b/pkgs/development/libraries/science/math/ipopt/default.nix
index a76c2f878ba7..286a630f4b41 100644
--- a/pkgs/development/libraries/science/math/ipopt/default.nix
+++ b/pkgs/development/libraries/science/math/ipopt/default.nix
@@ -12,13 +12,13 @@ assert (!blas.isILP64) && (!lapack.isILP64);
 
 stdenv.mkDerivation rec {
   pname = "ipopt";
-  version = "3.14.14";
+  version = "3.14.16";
 
   src = fetchFromGitHub {
     owner = "coin-or";
     repo = "Ipopt";
     rev = "releases/${version}";
-    sha256 = "sha256-qMPdJVLIXFePhTA6qRr1Pth/BjJ62cj9y8C1HKQJGDQ=";
+    sha256 = "sha256-ZuiZZMq7NzOm6CCJgMBgEWs8PEfM3pVr2yOWbS42l8U=";
   };
 
   CXXDEFS = [ "-DHAVE_RAND" "-DHAVE_CSTRING" "-DHAVE_CSTDIO" ];
diff --git a/pkgs/development/libraries/science/math/libtorch/bin.nix b/pkgs/development/libraries/science/math/libtorch/bin.nix
index 47a6249ebdc6..5b08cfa7dcf0 100644
--- a/pkgs/development/libraries/science/math/libtorch/bin.nix
+++ b/pkgs/development/libraries/science/math/libtorch/bin.nix
@@ -3,6 +3,7 @@
 , fetchzip
 , lib
 , libcxx
+, llvmPackages
 
 , addOpenGLRunpath
 , patchelf
@@ -17,11 +18,11 @@ let
   # this derivation. However, we should ensure on version bumps
   # that the CUDA toolkit for `passthru.tests` is still
   # up-to-date.
-  version = "2.0.0";
+  version = "2.3.0";
   device = if cudaSupport then "cuda" else "cpu";
   srcs = import ./binary-hashes.nix version;
   unavailable = throw "libtorch is not available for this platform";
-  libcxx-for-libtorch = if stdenv.hostPlatform.system == "x86_64-darwin" then libcxx else stdenv.cc.cc.lib;
+  libcxx-for-libtorch = if stdenv.isDarwin then libcxx else stdenv.cc.cc.lib;
 in stdenv.mkDerivation {
   inherit version;
   pname = "libtorch";
@@ -71,6 +72,9 @@ in stdenv.mkDerivation {
         otool -L $f
     done
     for f in $out/lib/*.dylib; do
+      if otool -L $f | grep "@rpath/libomp.dylib" >& /dev/null; then
+        install_name_tool -change "@rpath/libomp.dylib" ${llvmPackages.openmp}/lib/libomp.dylib $f
+      fi
       install_name_tool -id $out/lib/$(basename $f) $f || true
       for rpath in $(otool -L $f | grep rpath | awk '{print $1}');do
         install_name_tool -change $rpath $out/lib/$(basename $rpath) $f
@@ -99,6 +103,9 @@ in stdenv.mkDerivation {
     # https://www.intel.com/content/www/us/en/developer/articles/license/onemkl-license-faq.html
     license = licenses.bsd3;
     maintainers = with maintainers; [ junjihashimoto ];
-    platforms = platforms.unix;
+    platforms = [
+      "aarch64-darwin"
+      "x86_64-linux"
+    ];
   };
 }
diff --git a/pkgs/development/libraries/science/math/libtorch/binary-hashes.nix b/pkgs/development/libraries/science/math/libtorch/binary-hashes.nix
index 83533d89b1e8..dd8104ad5f0d 100644
--- a/pkgs/development/libraries/science/math/libtorch/binary-hashes.nix
+++ b/pkgs/development/libraries/science/math/libtorch/binary-hashes.nix
@@ -1,19 +1,19 @@
-version : builtins.getAttr version {
-  "2.0.0" = {
-    x86_64-darwin-cpu = {
-      name = "libtorch-macos-2.0.0.zip";
-      url = "https://download.pytorch.org/libtorch/cpu/libtorch-macos-2.0.0.zip";
-      hash = "sha256-u6y5IeYoiOC0yQ/k6JCChDs9lXWccLxUorgR8L62lkM=";
+version: builtins.getAttr version {
+ "2.3.0" = {
+     aarch64-darwin-cpu = {
+      name = "libtorch-macos-arm64-2.3.0.zip";
+      url = "https://download.pytorch.org/libtorch/cpu/libtorch-macos-arm64-2.3.0.zip";
+      hash = "sha256-l4qY1jbsECN5qm7dWJ2jSvKuQwQ/HI6G6Vq1Kh2rxkM=";
     };
     x86_64-linux-cpu = {
-      name = "libtorch-cxx11-abi-shared-with-deps-2.0.0-cpu.zip";
-      url = "https://download.pytorch.org/libtorch/cpu/libtorch-cxx11-abi-shared-with-deps-2.0.0%2Bcpu.zip";
-      hash = "sha256-BoZQ2MC1CDVVGfX3SHC3mEpLGWO8XK7AcLcHJXDsXuc=";
+      name = "libtorch-cxx11-abi-shared-with-deps-2.3.0-cpu.zip";
+      url = "https://download.pytorch.org/libtorch/cpu/libtorch-cxx11-abi-shared-with-deps-2.3.0%2Bcpu.zip";
+      hash = "sha256-dKAk6UusK2eQIcP0oMXh9cnufMpy5Ph4SGPkIPPV6ds=";
     };
     x86_64-linux-cuda = {
-      name = "libtorch-cxx11-abi-shared-with-deps-2.0.0-cu118.zip";
-      url = "https://download.pytorch.org/libtorch/cu118/libtorch-cxx11-abi-shared-with-deps-2.0.0%2Bcu118.zip";
-      hash = "sha256-Dpw9kQdA1NI9EOT7JBKwQP4wZT6lizcnKKTQ8WVJCZc=";
+      name = "libtorch-cxx11-abi-shared-with-deps-2.3.0-cu121.zip";
+      url = "https://download.pytorch.org/libtorch/cu121/libtorch-cxx11-abi-shared-with-deps-2.3.0%2Bcu121.zip";
+      hash = "sha256-6B+NF6q78I2WKFudn8bK+eNYDi1zQ7mdgv06fZbm2rE=";
     };
   };
 }
diff --git a/pkgs/development/libraries/science/math/libtorch/prefetch.sh b/pkgs/development/libraries/science/math/libtorch/prefetch.sh
index 5c6d60ae8b20..2682fe677976 100755
--- a/pkgs/development/libraries/science/math/libtorch/prefetch.sh
+++ b/pkgs/development/libraries/science/math/libtorch/prefetch.sh
@@ -6,10 +6,11 @@ set -eou pipefail
 version=$1
 
 bucket="https://download.pytorch.org/libtorch"
-CUDA_VERSION=cu116
+CUDA_VERSION=cu121
 
 url_and_key_list=(
-  "x86_64-darwin-cpu $bucket/cpu/libtorch-macos-${version}.zip libtorch-macos-${version}.zip"
+  "aarch64-darwin-cpu $bucket/cpu/libtorch-macos-arm64-${version}.zip libtorch-macos-arm64-${version}.zip"
+  "x86_64-darwin-cpu $bucket/cpu/libtorch-macos-x86_64-${version}.zip libtorch-macos-x86_64-${version}.zip"
   "x86_64-linux-cpu $bucket/cpu/libtorch-cxx11-abi-shared-with-deps-${version}%2Bcpu.zip libtorch-cxx11-abi-shared-with-deps-${version}-cpu.zip"
   "x86_64-linux-cuda $bucket/${CUDA_VERSION}/libtorch-cxx11-abi-shared-with-deps-${version}%2B${CUDA_VERSION}.zip libtorch-cxx11-abi-shared-with-deps-${version}-${CUDA_VERSION}.zip"
 )
diff --git a/pkgs/development/libraries/science/math/openblas/default.nix b/pkgs/development/libraries/science/math/openblas/default.nix
index 7ecd6a88d13c..842bc3af9834 100644
--- a/pkgs/development/libraries/science/math/openblas/default.nix
+++ b/pkgs/development/libraries/science/math/openblas/default.nix
@@ -142,7 +142,7 @@ let
 in
 stdenv.mkDerivation rec {
   pname = "openblas";
-  version = "0.3.26";
+  version = "0.3.27";
 
   outputs = [ "out" "dev" ];
 
@@ -150,9 +150,17 @@ stdenv.mkDerivation rec {
     owner = "OpenMathLib";
     repo = "OpenBLAS";
     rev = "v${version}";
-    hash = "sha256-AA3+x3SXkcg3g7bROZYLpWAbxnRedmQBZPe+rBJKxJ8=";
+    hash = "sha256-VKDFSPwHGZMa2DoOXbSKNQRsl07LatMLK1lHVcEep8U=";
   };
 
+  patches = [
+    (fetchpatch {
+      name = "no-gemm3m-tests-static.patch";
+      url = "https://github.com/OpenMathLib/OpenBLAS/commit/48e017de095018c60d83355804a3075658b4970c.patch";
+      hash = "sha256-Wa6EE0M1H0efVn26pOKpi0dFGLuPuzmvAzpBLrAYe5k=";
+    })
+  ];
+
   postPatch = ''
     # cc1: error: invalid feature modifier 'sve2' in '-march=armv8.5-a+sve+sve2+bf16'
     substituteInPlace Makefile.arm64 --replace "+sve2+bf16" ""
@@ -255,7 +263,7 @@ EOF
   '';
 
   passthru.tests = {
-    inherit (python3.pkgs) numpy scipy;
+    inherit (python3.pkgs) numpy scipy scikit-learn;
     inherit ceres-solver giac octave opencv;
   };
 
diff --git a/pkgs/development/libraries/science/math/openspecfun/default.nix b/pkgs/development/libraries/science/math/openspecfun/default.nix
index 14befd6d11fe..53a613522bb0 100644
--- a/pkgs/development/libraries/science/math/openspecfun/default.nix
+++ b/pkgs/development/libraries/science/math/openspecfun/default.nix
@@ -2,12 +2,12 @@
 
 stdenv.mkDerivation rec {
   pname = "openspecfun";
-  version = "0.5.6";
+  version = "0.5.7";
   src = fetchFromGitHub {
     owner = "JuliaLang";
     repo = "openspecfun";
     rev = "v${version}";
-    sha256 = "sha256-4MPoRMtDTkdvDfhNXKk/80pZjXRNEPcysLNTb5ohxWk=";
+    sha256 = "sha256-fx9z6bbU2V4x6Pr7/vmlSxkWxZ6qTYuPxnfqKLv08CA=";
   };
 
   makeFlags = [ "prefix=$(out)" ];
diff --git a/pkgs/development/libraries/science/math/osi/default.nix b/pkgs/development/libraries/science/math/osi/default.nix
index a6bc5a086251..485c5322cacd 100644
--- a/pkgs/development/libraries/science/math/osi/default.nix
+++ b/pkgs/development/libraries/science/math/osi/default.nix
@@ -5,13 +5,13 @@
 
 stdenv.mkDerivation rec {
   pname = "osi";
-  version = "0.108.9";
+  version = "0.108.10";
 
   src = fetchFromGitHub {
     owner = "coin-or";
     repo = "Osi";
     rev = "releases/${version}";
-    hash = "sha256-ueIa9CL4K5ygKpkMRvfuWR0emEG6omg65ZKCsConWsw=";
+    hash = "sha256-rHNGnnDFU9UrszjjkZQkgWCfjjBIQba6vVbK/HLpRsQ=";
   };
 
   buildInputs =
diff --git a/pkgs/development/libraries/simdjson/default.nix b/pkgs/development/libraries/simdjson/default.nix
index b836220efaff..410ef47b1bc3 100644
--- a/pkgs/development/libraries/simdjson/default.nix
+++ b/pkgs/development/libraries/simdjson/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "simdjson";
-  version = "3.9.1";
+  version = "3.9.2";
 
   src = fetchFromGitHub {
     owner = "simdjson";
     repo = "simdjson";
     rev = "v${version}";
-    sha256 = "sha256-Az5QZNnzLYpEE7O+1/VceIT6vykkg8vMuAuN9u8OseM=";
+    sha256 = "sha256-7YW0ylYQMi6D7YyRQGWRv980skjZ2t//QoZb8rRDHGk=";
   };
 
   nativeBuildInputs = [ cmake ];
diff --git a/pkgs/development/libraries/snappy/default.nix b/pkgs/development/libraries/snappy/default.nix
index 004dd388385f..869c56ed7300 100644
--- a/pkgs/development/libraries/snappy/default.nix
+++ b/pkgs/development/libraries/snappy/default.nix
@@ -5,13 +5,13 @@
 
 stdenv.mkDerivation rec {
   pname = "snappy";
-  version = "1.1.10";
+  version = "1.2.0";
 
   src = fetchFromGitHub {
     owner = "google";
     repo = "snappy";
     rev = version;
-    hash = "sha256-wYZkKVDXKCugycx/ZYhjV0BjM/NrEM0R6A4WFhs/WPU=";
+    hash = "sha256-mpEeUoJs+lGlqh1m6Mmr8UnbtQDn/8kfkeQdFwo2rQ0=";
   };
 
   patches = [
@@ -23,11 +23,6 @@ stdenv.mkDerivation rec {
       url = "https://build.opensuse.org/public/source/openSUSE:Factory/snappy/reenable-rtti.patch?rev=a759aa6fba405cd40025e3f0ab89941d";
       sha256 = "sha256-RMuM5yd6zP1eekN/+vfS54EyY4cFbGDVor1E1vj3134=";
     })
-    # Fix -Wsign-compare warning on clang.
-    (fetchpatch {
-      url = "https://github.com/google/snappy/commit/27f34a580be4a3becf5f8c0cba13433f53c21337.patch";
-      sha256 = "sha256-eq6ueeMAkd2bYmPJcKAZZzd5QlXyeWOrsxFIwR8KOpQ=";
-    })
   ];
 
   outputs = [ "out" "dev" ];
diff --git a/pkgs/development/libraries/spice-gtk/default.nix b/pkgs/development/libraries/spice-gtk/default.nix
index d160a6a5f6dc..fd7428213fc9 100644
--- a/pkgs/development/libraries/spice-gtk/default.nix
+++ b/pkgs/development/libraries/spice-gtk/default.nix
@@ -36,7 +36,7 @@
 , wayland-protocols
 , wayland-scanner
 , zlib
-, wrapGAppsHook
+, wrapGAppsHook3
 , withPolkit ? stdenv.isLinux
 }:
 
@@ -89,7 +89,7 @@ stdenv.mkDerivation rec {
     python3.pkgs.pyparsing
     python3.pkgs.six
     vala
-    wrapGAppsHook
+    wrapGAppsHook3
   ] ++ lib.optionals (stdenv.buildPlatform != stdenv.hostPlatform) [
     mesonEmulatorHook
   ] ++ lib.optionals stdenv.isLinux [
diff --git a/pkgs/development/libraries/sqlite/default.nix b/pkgs/development/libraries/sqlite/default.nix
index d172d75e011b..fe39cac8a25f 100644
--- a/pkgs/development/libraries/sqlite/default.nix
+++ b/pkgs/development/libraries/sqlite/default.nix
@@ -15,13 +15,13 @@ in
 
 stdenv.mkDerivation rec {
   pname = "sqlite${lib.optionalString interactive "-interactive"}";
-  version = "3.45.2";
+  version = "3.45.3";
 
   # nixpkgs-update: no auto update
   # NB! Make sure to update ./tools.nix src (in the same directory).
   src = fetchurl {
     url = "https://sqlite.org/2024/sqlite-autoconf-${archiveVersion version}.tar.gz";
-    hash = "sha256-vJBnRC7t8905mJtcXPv/83rmbMnJknTgwwUtxNSo9q4=";
+    hash = "sha256-soCcpTEkwZxg9Cv2J3NurgEa/cwgW7SCcKXumjgZFTE=";
   };
 
   outputs = [ "bin" "dev" "out" ];
diff --git a/pkgs/development/libraries/sqlite/tools.nix b/pkgs/development/libraries/sqlite/tools.nix
index 94ac07df9d40..d988a71e54e8 100644
--- a/pkgs/development/libraries/sqlite/tools.nix
+++ b/pkgs/development/libraries/sqlite/tools.nix
@@ -4,12 +4,12 @@ let
   archiveVersion = import ./archive-version.nix lib;
   mkTool = { pname, makeTarget, description, homepage, mainProgram }: stdenv.mkDerivation rec {
     inherit pname;
-    version = "3.45.2";
+    version = "3.45.3";
 
     # nixpkgs-update: no auto update
     src = assert version == sqlite.version; fetchurl {
       url = "https://sqlite.org/2024/sqlite-src-${archiveVersion version}.zip";
-      hash = "sha256-SkWjV3zIr2g8S9TG6Bp8eCxbfV2qBhdeosuXHKcWkbE=";
+      hash = "sha256-7AyVnkLLXxgEE10FVfjqMr5v8gSOsYG8zTZ8j1PxhdE=";
     };
 
     nativeBuildInputs = [ unzip ];
diff --git a/pkgs/development/libraries/template-glib/default.nix b/pkgs/development/libraries/template-glib/default.nix
index fae25d959d3d..71960010d56d 100644
--- a/pkgs/development/libraries/template-glib/default.nix
+++ b/pkgs/development/libraries/template-glib/default.nix
@@ -18,13 +18,13 @@
 
 stdenv.mkDerivation rec {
   pname = "template-glib";
-  version = "3.36.1";
+  version = "3.36.2";
 
   outputs = [ "out" "dev" "devdoc" ];
 
   src = fetchurl {
     url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
-    sha256 = "OxZ6Fzha10WvviD634EGxm0wxb10bVqh2b236AP2pQM=";
+    hash = "sha256-ACDzpAGIjOdjs6F1CML1jpGXKkg6DFR6/bfMviVhmUg=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/libraries/tkrzw/default.nix b/pkgs/development/libraries/tkrzw/default.nix
index 694225d9e3ba..1d57c8164c03 100644
--- a/pkgs/development/libraries/tkrzw/default.nix
+++ b/pkgs/development/libraries/tkrzw/default.nix
@@ -2,12 +2,12 @@
 
 stdenv.mkDerivation rec {
   pname = "tkrzw";
-  version = "1.0.27";
+  version = "1.0.29";
   # TODO: defeat multi-output reference cycles
 
   src = fetchurl {
     url = "https://dbmx.net/tkrzw/pkg/tkrzw-${version}.tar.gz";
-    hash = "sha256-DxLtDtscTPR1yzeOENyQPylKo+VxJTswUAE/MieEoXQ=";
+    hash = "sha256-q6q9b8iaGe2KICrDcRvDsHY9kovDqO7upzo2effn95A=";
   };
 
   postPatch = ''
diff --git a/pkgs/development/libraries/tpm2-tss/default.nix b/pkgs/development/libraries/tpm2-tss/default.nix
index 628f32a91c69..3fa8800abfa5 100644
--- a/pkgs/development/libraries/tpm2-tss/default.nix
+++ b/pkgs/development/libraries/tpm2-tss/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, lib, fetchFromGitHub, fetchurl
+{ stdenv, lib, fetchFromGitHub
 , autoreconfHook, autoconf-archive, pkg-config, doxygen, perl
 , openssl, json_c, curl, libgcrypt
 , cmocka, uthash, ibm-sw-tpm2, iproute2, procps, which
@@ -15,13 +15,13 @@ in
 
 stdenv.mkDerivation rec {
   pname = "tpm2-tss";
-  version = "4.0.1";
+  version = "4.1.0";
 
   src = fetchFromGitHub {
     owner = "tpm2-software";
     repo = pname;
     rev = version;
-    sha256 = "sha256-75yiKVZrR1vcCwKp4tDO4A9JB0KDM0MXPJ1N85kAaRk=";
+    hash = "sha256-cQdIPQNZzy5CisWw5yifPXC7FqaZxj4VKWpvtPOffE8=";
   };
 
   outputs = [ "out" "man" "dev" ];
@@ -53,11 +53,6 @@ stdenv.mkDerivation rec {
     # Do not rely on dynamic loader path
     # TCTI loader relies on dlopen(), this patch prefixes all calls with the output directory
     ./no-dynamic-loader-path.patch
-    (fetchurl {
-      name = "skip-test-fapi-fix-provisioning-with-template-if-no-certificate-available.patch";
-      url = "https://github.com/tpm2-software/tpm2-tss/commit/218c0da8d9f675766b1de502a52e23a3aa52648e.patch";
-      sha256 = "sha256-dnl9ZAknCdmvix2TdQvF0fHoYeWp+jfCTg8Uc7h0voA=";
-    })
   ];
 
   postPatch = ''
@@ -65,7 +60,7 @@ stdenv.mkDerivation rec {
     substituteInPlace src/tss2-tcti/tctildr-dl.c \
       --replace '@PREFIX@' $out/lib/
     substituteInPlace ./test/unit/tctildr-dl.c \
-      --replace '@PREFIX@' $out/lib
+      --replace '@PREFIX@' $out/lib/
     substituteInPlace ./bootstrap \
       --replace 'git describe --tags --always --dirty' 'echo "${version}"'
   '';
diff --git a/pkgs/development/libraries/tpm2-tss/no-dynamic-loader-path.patch b/pkgs/development/libraries/tpm2-tss/no-dynamic-loader-path.patch
index 60f8c91bae85..fcbfaca299fd 100644
--- a/pkgs/development/libraries/tpm2-tss/no-dynamic-loader-path.patch
+++ b/pkgs/development/libraries/tpm2-tss/no-dynamic-loader-path.patch
@@ -1,232 +1,503 @@
 diff --git a/src/tss2-tcti/tctildr-dl.c b/src/tss2-tcti/tctildr-dl.c
-index 622637dc..88fc3d8f 100644
+index d26219d2..92d2b6a3 100644
 --- a/src/tss2-tcti/tctildr-dl.c
 +++ b/src/tss2-tcti/tctildr-dl.c
-@@ -92,7 +92,7 @@ handle_from_name(const char *file,
-         LOG_DEBUG("Could not load TCTI file: \"%s\": %s", file, dlerror());
-     }
- 
--    len = snprintf(NULL, 0, TCTI_NAME_TEMPLATE_0, file);
-+    len = snprintf(NULL, 0, "@PREFIX@" TCTI_NAME_TEMPLATE_0, file);
-     if (len >= PATH_MAX) {
-         LOG_ERROR("TCTI name truncated in transform.");
-         return TSS2_TCTI_RC_BAD_VALUE;
-@@ -129,6 +129,50 @@ handle_from_name(const char *file,
-         return TSS2_TCTI_RC_BAD_VALUE;
-     }
-     *handle = dlopen(file_xfrm, RTLD_NOW);
-+    if (*handle != NULL) {
-+        return TSS2_RC_SUCCESS;
-+    } else {
-+        LOG_DEBUG("Failed to load TCTI for name \"%s\": %s", file, dlerror());
-+    }
-+    size = snprintf(file_xfrm,
-+                    len + 1,
-+                    "@PREFIX@%s",
-+                    file);
-+    if (size >= len + 1) {
-+        LOG_ERROR("TCTI name truncated in transform.");
-+        return TSS2_TCTI_RC_BAD_VALUE;
-+    }
-+    *handle = dlopen(file_xfrm, RTLD_NOW);
-+    if (*handle != NULL) {
-+        return TSS2_RC_SUCCESS;
-+    } else {
-+        LOG_DEBUG("Could not load TCTI file: \"%s\": %s", file, dlerror());
-+    }
-+    /* 'name' alone didn't work, try libtss2-tcti-<name>.so.0 */
-+    size = snprintf(file_xfrm,
-+                    len + 1,
-+                    "@PREFIX@" TCTI_NAME_TEMPLATE_0,
-+                    file);
-+    if (size >= len + 1) {
-+        LOG_ERROR("TCTI name truncated in transform.");
-+        return TSS2_TCTI_RC_BAD_VALUE;
-+    }
-+    *handle = dlopen(file_xfrm, RTLD_NOW);
-+    if (*handle != NULL) {
-+        return TSS2_RC_SUCCESS;
-+    } else {
-+        LOG_DEBUG("Could not load TCTI file \"%s\": %s", file, dlerror());
-+    }
-+    /* libtss2-tcti-<name>.so.0 didn't work, try libtss2-tcti-<name>.so */
-+    size = snprintf(file_xfrm,
-+                    len + 1,
-+                    "@PREFIX@" TCTI_NAME_TEMPLATE,
-+                    file);
-+    if (size >= len + 1) {
-+        LOG_ERROR("TCTI name truncated in transform.");
-+        return TSS2_TCTI_RC_BAD_VALUE;
-+    }
-+    *handle = dlopen(file_xfrm, RTLD_NOW);
-     if (*handle == NULL) {
-         LOG_DEBUG("Failed to load TCTI for name \"%s\": %s", file, dlerror());
-         SAFE_FREE(file_xfrm);
+@@ -88,14 +88,24 @@ handle_from_name(const char *file,
+     const char *formats[] = {
+         /* <name> */
+         "%s",
++        /* <name> */
++        "@PREFIX@" "%s",
+         /* libtss2-tcti-<name>.so.0 */
+         FMT_TCTI_PREFIX "%s" FMT_LIB_SUFFIX_0,
++        /* libtss2-tcti-<name>.so.0 */
++        "@PREFIX@" FMT_TCTI_PREFIX "%s" FMT_LIB_SUFFIX_0,
+         /* libtss2-tcti-<name>.so */
+         FMT_TCTI_PREFIX "%s" FMT_LIB_SUFFIX,
++        /* libtss2-tcti-<name>.so */
++        "@PREFIX@" FMT_TCTI_PREFIX "%s" FMT_LIB_SUFFIX,
+         /* libtss2-<name>.so.0 */
+         FMT_TSS_PREFIX "%s" FMT_LIB_SUFFIX_0,
++        /* libtss2-<name>.so.0 */
++        "@PREFIX@" FMT_TSS_PREFIX "%s" FMT_LIB_SUFFIX_0,
+         /* libtss2-<name>.so */
+         FMT_TSS_PREFIX "%s" FMT_LIB_SUFFIX,
++        /* libtss2-<name>.so */
++        "@PREFIX@" FMT_TSS_PREFIX "%s" FMT_LIB_SUFFIX,
+     };
+ 
+     if (handle == NULL) {
 diff --git a/test/unit/tctildr-dl.c b/test/unit/tctildr-dl.c
-index 4279baee..6685c811 100644
+index 135e1b14..7d654d1f 100644
 --- a/test/unit/tctildr-dl.c
 +++ b/test/unit/tctildr-dl.c
-@@ -229,6 +229,18 @@ test_get_info_default_success (void **state)
+@@ -168,6 +168,10 @@ test_handle_from_name_second_dlopen_success (void **state)
+     expect_value(__wrap_dlopen, flags, RTLD_NOW);
+     will_return(__wrap_dlopen, NULL);
+ 
++    expect_string(__wrap_dlopen, filename, "@PREFIX@" TEST_TCTI_TRY_A);
++    expect_value(__wrap_dlopen, flags, RTLD_NOW);
++    will_return(__wrap_dlopen, NULL);
++
+     expect_string(__wrap_dlopen, filename, TEST_TCTI_TRY_B);
+     expect_value(__wrap_dlopen, flags, RTLD_NOW);
+     will_return(__wrap_dlopen, TEST_HANDLE);
+@@ -186,10 +190,18 @@ test_handle_from_name_third_dlopen_success (void **state)
+     expect_value(__wrap_dlopen, flags, RTLD_NOW);
+     will_return(__wrap_dlopen, NULL);
+ 
++    expect_string(__wrap_dlopen, filename, "@PREFIX@" TEST_TCTI_TRY_A);
++    expect_value(__wrap_dlopen, flags, RTLD_NOW);
++    will_return(__wrap_dlopen, NULL);
++
+     expect_string(__wrap_dlopen, filename, TEST_TCTI_TRY_B);
+     expect_value(__wrap_dlopen, flags, RTLD_NOW);
+     will_return(__wrap_dlopen, NULL);
+ 
++    expect_string(__wrap_dlopen, filename, "@PREFIX@" TEST_TCTI_TRY_B);
++    expect_value(__wrap_dlopen, flags, RTLD_NOW);
++    will_return(__wrap_dlopen, NULL);
++
+     expect_string(__wrap_dlopen, filename, TEST_TCTI_TRY_C);
+     expect_value(__wrap_dlopen, flags, RTLD_NOW);
+     will_return(__wrap_dlopen, TEST_HANDLE);
+@@ -208,14 +220,26 @@ test_handle_from_name_fourth_dlopen_success (void **state)
+     expect_value(__wrap_dlopen, flags, RTLD_NOW);
+     will_return(__wrap_dlopen, NULL);
+ 
++    expect_string(__wrap_dlopen, filename, "@PREFIX@" TEST_TCTI_TRY_A);
++    expect_value(__wrap_dlopen, flags, RTLD_NOW);
++    will_return(__wrap_dlopen, NULL);
++
+     expect_string(__wrap_dlopen, filename, TEST_TCTI_TRY_B);
+     expect_value(__wrap_dlopen, flags, RTLD_NOW);
+     will_return(__wrap_dlopen, NULL);
+ 
++    expect_string(__wrap_dlopen, filename, "@PREFIX@" TEST_TCTI_TRY_B);
++    expect_value(__wrap_dlopen, flags, RTLD_NOW);
++    will_return(__wrap_dlopen, NULL);
++
+     expect_string(__wrap_dlopen, filename, TEST_TCTI_TRY_C);
+     expect_value(__wrap_dlopen, flags, RTLD_NOW);
+     will_return(__wrap_dlopen, NULL);
+ 
++    expect_string(__wrap_dlopen, filename, "@PREFIX@" TEST_TCTI_TRY_C);
++    expect_value(__wrap_dlopen, flags, RTLD_NOW);
++    will_return(__wrap_dlopen, NULL);
++
+     expect_string(__wrap_dlopen, filename, TEST_TCTI_TRY_D);
+     expect_value(__wrap_dlopen, flags, RTLD_NOW);
+     will_return(__wrap_dlopen, TEST_HANDLE);
+@@ -234,18 +258,34 @@ test_handle_from_name_fifth_dlopen_success (void **state)
+     expect_value(__wrap_dlopen, flags, RTLD_NOW);
+     will_return(__wrap_dlopen, NULL);
+ 
++    expect_string(__wrap_dlopen, filename, "@PREFIX@" TEST_TCTI_TRY_A);
++    expect_value(__wrap_dlopen, flags, RTLD_NOW);
++    will_return(__wrap_dlopen, NULL);
++
+     expect_string(__wrap_dlopen, filename, TEST_TCTI_TRY_B);
      expect_value(__wrap_dlopen, flags, RTLD_NOW);
      will_return(__wrap_dlopen, NULL);
  
-+    expect_string(__wrap_dlopen, filename, "@PREFIX@/libtss2-tcti-default.so");
++    expect_string(__wrap_dlopen, filename, "@PREFIX@" TEST_TCTI_TRY_B);
 +    expect_value(__wrap_dlopen, flags, RTLD_NOW);
 +    will_return(__wrap_dlopen, NULL);
 +
-+    expect_string(__wrap_dlopen, filename, "@PREFIX@/libtss2-tcti-libtss2-tcti-default.so.so.0");
+     expect_string(__wrap_dlopen, filename, TEST_TCTI_TRY_C);
+     expect_value(__wrap_dlopen, flags, RTLD_NOW);
+     will_return(__wrap_dlopen, NULL);
+ 
++    expect_string(__wrap_dlopen, filename, "@PREFIX@" TEST_TCTI_TRY_C);
 +    expect_value(__wrap_dlopen, flags, RTLD_NOW);
 +    will_return(__wrap_dlopen, NULL);
 +
-+    expect_string(__wrap_dlopen, filename, "@PREFIX@/libtss2-tcti-libtss2-tcti-default.so.so");
+     expect_string(__wrap_dlopen, filename, TEST_TCTI_TRY_D);
+     expect_value(__wrap_dlopen, flags, RTLD_NOW);
+     will_return(__wrap_dlopen, NULL);
+ 
++    expect_string(__wrap_dlopen, filename, "@PREFIX@" TEST_TCTI_TRY_D);
++    expect_value(__wrap_dlopen, flags, RTLD_NOW);
++    will_return(__wrap_dlopen, NULL);
++
+     expect_string(__wrap_dlopen, filename, TEST_TCTI_TRY_E);
+     expect_value(__wrap_dlopen, flags, RTLD_NOW);
+     will_return(__wrap_dlopen, TEST_HANDLE);
+@@ -281,22 +321,42 @@ test_get_info_default_success (void **state)
+     expect_value(__wrap_dlopen, flags, RTLD_NOW);
+     will_return(__wrap_dlopen, NULL);
+ 
++    expect_string(__wrap_dlopen, filename, "@PREFIX@" "libtss2-tcti-default.so");
++    expect_value(__wrap_dlopen, flags, RTLD_NOW);
++    will_return(__wrap_dlopen, NULL);
++
+     expect_string(__wrap_dlopen, filename, "libtss2-tcti-libtss2-tcti-default.so.so.0");
+     expect_value(__wrap_dlopen, flags, RTLD_NOW);
+     will_return(__wrap_dlopen, NULL);
+ 
++    expect_string(__wrap_dlopen, filename, "@PREFIX@" "libtss2-tcti-libtss2-tcti-default.so.so.0");
++    expect_value(__wrap_dlopen, flags, RTLD_NOW);
++    will_return(__wrap_dlopen, NULL);
++
+     expect_string(__wrap_dlopen, filename, "libtss2-tcti-libtss2-tcti-default.so.so");
+     expect_value(__wrap_dlopen, flags, RTLD_NOW);
+     will_return(__wrap_dlopen, NULL);
+ 
++    expect_string(__wrap_dlopen, filename, "@PREFIX@" "libtss2-tcti-libtss2-tcti-default.so.so");
++    expect_value(__wrap_dlopen, flags, RTLD_NOW);
++    will_return(__wrap_dlopen, NULL);
++
+     expect_string(__wrap_dlopen, filename, "libtss2-libtss2-tcti-default.so.so.0");
+     expect_value(__wrap_dlopen, flags, RTLD_NOW);
+     will_return(__wrap_dlopen, NULL);
+ 
++    expect_string(__wrap_dlopen, filename, "@PREFIX@" "libtss2-libtss2-tcti-default.so.so.0");
++    expect_value(__wrap_dlopen, flags, RTLD_NOW);
++    will_return(__wrap_dlopen, NULL);
++
+     expect_string(__wrap_dlopen, filename, "libtss2-libtss2-tcti-default.so.so");
+     expect_value(__wrap_dlopen, flags, RTLD_NOW);
+     will_return(__wrap_dlopen, NULL);
+ 
++    expect_string(__wrap_dlopen, filename, "@PREFIX@" "libtss2-libtss2-tcti-default.so.so");
 +    expect_value(__wrap_dlopen, flags, RTLD_NOW);
 +    will_return(__wrap_dlopen, NULL);
 +
      expect_string(__wrap_dlopen, filename, "libtss2-tcti-tabrmd.so.0");
      expect_value(__wrap_dlopen, flags, RTLD_NOW);
      will_return(__wrap_dlopen, HANDLE);
-@@ -261,6 +273,18 @@ test_get_info_default_info_fail (void **state)
+@@ -321,22 +381,42 @@ test_get_info_default_info_fail (void **state)
      expect_value(__wrap_dlopen, flags, RTLD_NOW);
      will_return(__wrap_dlopen, NULL);
  
-+    expect_string(__wrap_dlopen, filename, "@PREFIX@/libtss2-tcti-default.so");
++    expect_string(__wrap_dlopen, filename, "@PREFIX@" "libtss2-tcti-default.so");
 +    expect_value(__wrap_dlopen, flags, RTLD_NOW);
 +    will_return(__wrap_dlopen, NULL);
 +
-+    expect_string(__wrap_dlopen, filename, "@PREFIX@/libtss2-tcti-libtss2-tcti-default.so.so.0");
+     expect_string(__wrap_dlopen, filename, "libtss2-tcti-libtss2-tcti-default.so.so.0");
+     expect_value(__wrap_dlopen, flags, RTLD_NOW);
+     will_return(__wrap_dlopen, NULL);
+ 
++    expect_string(__wrap_dlopen, filename, "@PREFIX@" "libtss2-tcti-libtss2-tcti-default.so.so.0");
++    expect_value(__wrap_dlopen, flags, RTLD_NOW);
++    will_return(__wrap_dlopen, NULL);
++
+     expect_string(__wrap_dlopen, filename, "libtss2-tcti-libtss2-tcti-default.so.so");
+     expect_value(__wrap_dlopen, flags, RTLD_NOW);
+     will_return(__wrap_dlopen, NULL);
+ 
++    expect_string(__wrap_dlopen, filename, "@PREFIX@" "libtss2-tcti-libtss2-tcti-default.so.so");
 +    expect_value(__wrap_dlopen, flags, RTLD_NOW);
 +    will_return(__wrap_dlopen, NULL);
 +
-+    expect_string(__wrap_dlopen, filename, "@PREFIX@/libtss2-tcti-libtss2-tcti-default.so.so");
+     expect_string(__wrap_dlopen, filename, "libtss2-libtss2-tcti-default.so.so.0");
+     expect_value(__wrap_dlopen, flags, RTLD_NOW);
+     will_return(__wrap_dlopen, NULL);
+ 
++    expect_string(__wrap_dlopen, filename, "@PREFIX@" "libtss2-libtss2-tcti-default.so.so.0");
++    expect_value(__wrap_dlopen, flags, RTLD_NOW);
++    will_return(__wrap_dlopen, NULL);
++
+     expect_string(__wrap_dlopen, filename, "libtss2-libtss2-tcti-default.so.so");
+     expect_value(__wrap_dlopen, flags, RTLD_NOW);
+     will_return(__wrap_dlopen, NULL);
+ 
++    expect_string(__wrap_dlopen, filename, "@PREFIX@" "libtss2-libtss2-tcti-default.so.so");
 +    expect_value(__wrap_dlopen, flags, RTLD_NOW);
 +    will_return(__wrap_dlopen, NULL);
 +
      expect_string(__wrap_dlopen, filename, "libtss2-tcti-tabrmd.so.0");
      expect_value(__wrap_dlopen, flags, RTLD_NOW);
      will_return(__wrap_dlopen, HANDLE);
-@@ -413,6 +437,15 @@ test_tcti_fail_all (void **state)
+@@ -483,120 +563,225 @@ test_tcti_fail_all (void **state)
+     expect_string(__wrap_dlopen, filename, "libtss2-tcti-default.so");
+     expect_value(__wrap_dlopen, flags, RTLD_NOW);
+     will_return(__wrap_dlopen, NULL);
++    expect_string(__wrap_dlopen, filename, "@PREFIX@" "libtss2-tcti-default.so");
++    expect_value(__wrap_dlopen, flags, RTLD_NOW);
++    will_return(__wrap_dlopen, NULL);
+     expect_string(__wrap_dlopen, filename, "libtss2-tcti-libtss2-tcti-default.so.so.0");
+     expect_value(__wrap_dlopen, flags, RTLD_NOW);
+     will_return(__wrap_dlopen, NULL);
++    expect_string(__wrap_dlopen, filename, "@PREFIX@" "libtss2-tcti-libtss2-tcti-default.so.so.0");
++    expect_value(__wrap_dlopen, flags, RTLD_NOW);
++    will_return(__wrap_dlopen, NULL);
      expect_string(__wrap_dlopen, filename, "libtss2-tcti-libtss2-tcti-default.so.so");
      expect_value(__wrap_dlopen, flags, RTLD_NOW);
      will_return(__wrap_dlopen, NULL);
-+    expect_string(__wrap_dlopen, filename, "@PREFIX@/libtss2-tcti-default.so");
++    expect_string(__wrap_dlopen, filename, "@PREFIX@" "libtss2-tcti-libtss2-tcti-default.so.so");
 +    expect_value(__wrap_dlopen, flags, RTLD_NOW);
 +    will_return(__wrap_dlopen, NULL);
-+    expect_string(__wrap_dlopen, filename, "@PREFIX@/libtss2-tcti-libtss2-tcti-default.so.so.0");
+     expect_string(__wrap_dlopen, filename, "libtss2-libtss2-tcti-default.so.so.0");
+     expect_value(__wrap_dlopen, flags, RTLD_NOW);
+     will_return(__wrap_dlopen, NULL);
++    expect_string(__wrap_dlopen, filename, "@PREFIX@" "libtss2-libtss2-tcti-default.so.so.0");
 +    expect_value(__wrap_dlopen, flags, RTLD_NOW);
 +    will_return(__wrap_dlopen, NULL);
-+    expect_string(__wrap_dlopen, filename, "@PREFIX@/libtss2-tcti-libtss2-tcti-default.so.so");
+     expect_string(__wrap_dlopen, filename, "libtss2-libtss2-tcti-default.so.so");
+     expect_value(__wrap_dlopen, flags, RTLD_NOW);
+     will_return(__wrap_dlopen, NULL);
++    expect_string(__wrap_dlopen, filename, "@PREFIX@" "libtss2-libtss2-tcti-default.so.so");
 +    expect_value(__wrap_dlopen, flags, RTLD_NOW);
 +    will_return(__wrap_dlopen, NULL);
  
      /* Skip over libtss2-tcti-tabrmd.so */
      expect_string(__wrap_dlopen, filename, "libtss2-tcti-tabrmd.so.0");
-@@ -424,6 +457,15 @@ test_tcti_fail_all (void **state)
+     expect_value(__wrap_dlopen, flags, RTLD_NOW);
+     will_return(__wrap_dlopen, NULL);
++    expect_string(__wrap_dlopen, filename, "@PREFIX@" "libtss2-tcti-tabrmd.so.0");
++    expect_value(__wrap_dlopen, flags, RTLD_NOW);
++    will_return(__wrap_dlopen, NULL);
+     expect_string(__wrap_dlopen, filename, "libtss2-tcti-libtss2-tcti-tabrmd.so.0.so.0");
+     expect_value(__wrap_dlopen, flags, RTLD_NOW);
+     will_return(__wrap_dlopen, NULL);
++    expect_string(__wrap_dlopen, filename, "@PREFIX@" "libtss2-tcti-libtss2-tcti-tabrmd.so.0.so.0");
++    expect_value(__wrap_dlopen, flags, RTLD_NOW);
++    will_return(__wrap_dlopen, NULL);
      expect_string(__wrap_dlopen, filename, "libtss2-tcti-libtss2-tcti-tabrmd.so.0.so");
      expect_value(__wrap_dlopen, flags, RTLD_NOW);
      will_return(__wrap_dlopen, NULL);
-+    expect_string(__wrap_dlopen, filename, "@PREFIX@/libtss2-tcti-tabrmd.so.0");
++    expect_string(__wrap_dlopen, filename, "@PREFIX@" "libtss2-tcti-libtss2-tcti-tabrmd.so.0.so");
 +    expect_value(__wrap_dlopen, flags, RTLD_NOW);
 +    will_return(__wrap_dlopen, NULL);
-+    expect_string(__wrap_dlopen, filename, "@PREFIX@/libtss2-tcti-libtss2-tcti-tabrmd.so.0.so.0");
+     expect_string(__wrap_dlopen, filename, "libtss2-libtss2-tcti-tabrmd.so.0.so.0");
+     expect_value(__wrap_dlopen, flags, RTLD_NOW);
+     will_return(__wrap_dlopen, NULL);
++    expect_string(__wrap_dlopen, filename, "@PREFIX@" "libtss2-libtss2-tcti-tabrmd.so.0.so.0");
 +    expect_value(__wrap_dlopen, flags, RTLD_NOW);
 +    will_return(__wrap_dlopen, NULL);
-+    expect_string(__wrap_dlopen, filename, "@PREFIX@/libtss2-tcti-libtss2-tcti-tabrmd.so.0.so");
+     expect_string(__wrap_dlopen, filename, "libtss2-libtss2-tcti-tabrmd.so.0.so");
+     expect_value(__wrap_dlopen, flags, RTLD_NOW);
+     will_return(__wrap_dlopen, NULL);
++    expect_string(__wrap_dlopen, filename, "@PREFIX@" "libtss2-libtss2-tcti-tabrmd.so.0.so");
 +    expect_value(__wrap_dlopen, flags, RTLD_NOW);
 +    will_return(__wrap_dlopen, NULL);
  
      /* Skip over libtss2-tcti-device.so, /dev/tpmrm0 */
      expect_string(__wrap_dlopen, filename, "libtss2-tcti-device.so.0");
-@@ -435,6 +477,15 @@ test_tcti_fail_all (void **state)
+     expect_value(__wrap_dlopen, flags, RTLD_NOW);
+     will_return(__wrap_dlopen, NULL);
++    expect_string(__wrap_dlopen, filename, "@PREFIX@" "libtss2-tcti-device.so.0");
++    expect_value(__wrap_dlopen, flags, RTLD_NOW);
++    will_return(__wrap_dlopen, NULL);
+     expect_string(__wrap_dlopen, filename, "libtss2-tcti-libtss2-tcti-device.so.0.so.0");
+     expect_value(__wrap_dlopen, flags, RTLD_NOW);
+     will_return(__wrap_dlopen, NULL);
++    expect_string(__wrap_dlopen, filename, "@PREFIX@" "libtss2-tcti-libtss2-tcti-device.so.0.so.0");
++    expect_value(__wrap_dlopen, flags, RTLD_NOW);
++    will_return(__wrap_dlopen, NULL);
      expect_string(__wrap_dlopen, filename, "libtss2-tcti-libtss2-tcti-device.so.0.so");
      expect_value(__wrap_dlopen, flags, RTLD_NOW);
      will_return(__wrap_dlopen, NULL);
-+    expect_string(__wrap_dlopen, filename, "@PREFIX@/libtss2-tcti-device.so.0");
++    expect_string(__wrap_dlopen, filename, "@PREFIX@" "libtss2-tcti-libtss2-tcti-device.so.0.so");
 +    expect_value(__wrap_dlopen, flags, RTLD_NOW);
 +    will_return(__wrap_dlopen, NULL);
-+    expect_string(__wrap_dlopen, filename, "@PREFIX@/libtss2-tcti-libtss2-tcti-device.so.0.so.0");
+     expect_string(__wrap_dlopen, filename, "libtss2-libtss2-tcti-device.so.0.so.0");
+     expect_value(__wrap_dlopen, flags, RTLD_NOW);
+     will_return(__wrap_dlopen, NULL);
++    expect_string(__wrap_dlopen, filename, "@PREFIX@" "libtss2-libtss2-tcti-device.so.0.so.0");
 +    expect_value(__wrap_dlopen, flags, RTLD_NOW);
 +    will_return(__wrap_dlopen, NULL);
-+    expect_string(__wrap_dlopen, filename, "@PREFIX@/libtss2-tcti-libtss2-tcti-device.so.0.so");
+     expect_string(__wrap_dlopen, filename, "libtss2-libtss2-tcti-device.so.0.so");
+     expect_value(__wrap_dlopen, flags, RTLD_NOW);
+     will_return(__wrap_dlopen, NULL);
++    expect_string(__wrap_dlopen, filename, "@PREFIX@" "libtss2-libtss2-tcti-device.so.0.so");
 +    expect_value(__wrap_dlopen, flags, RTLD_NOW);
 +    will_return(__wrap_dlopen, NULL);
  
      /* Skip over libtss2-tcti-device.so, /dev/tpm0 */
      expect_string(__wrap_dlopen, filename, "libtss2-tcti-device.so.0");
-@@ -446,6 +497,15 @@ test_tcti_fail_all (void **state)
+     expect_value(__wrap_dlopen, flags, RTLD_NOW);
+     will_return(__wrap_dlopen, NULL);
++    expect_string(__wrap_dlopen, filename, "@PREFIX@" "libtss2-tcti-device.so.0");
++    expect_value(__wrap_dlopen, flags, RTLD_NOW);
++    will_return(__wrap_dlopen, NULL);
+     expect_string(__wrap_dlopen, filename, "libtss2-tcti-libtss2-tcti-device.so.0.so.0");
+     expect_value(__wrap_dlopen, flags, RTLD_NOW);
+     will_return(__wrap_dlopen, NULL);
++    expect_string(__wrap_dlopen, filename, "@PREFIX@" "libtss2-tcti-libtss2-tcti-device.so.0.so.0");
++    expect_value(__wrap_dlopen, flags, RTLD_NOW);
++    will_return(__wrap_dlopen, NULL);
      expect_string(__wrap_dlopen, filename, "libtss2-tcti-libtss2-tcti-device.so.0.so");
      expect_value(__wrap_dlopen, flags, RTLD_NOW);
      will_return(__wrap_dlopen, NULL);
-+    expect_string(__wrap_dlopen, filename, "@PREFIX@/libtss2-tcti-device.so.0");
++    expect_string(__wrap_dlopen, filename, "@PREFIX@" "libtss2-tcti-libtss2-tcti-device.so.0.so");
 +    expect_value(__wrap_dlopen, flags, RTLD_NOW);
 +    will_return(__wrap_dlopen, NULL);
-+    expect_string(__wrap_dlopen, filename, "@PREFIX@/libtss2-tcti-libtss2-tcti-device.so.0.so.0");
+     expect_string(__wrap_dlopen, filename, "libtss2-libtss2-tcti-device.so.0.so.0");
+     expect_value(__wrap_dlopen, flags, RTLD_NOW);
+     will_return(__wrap_dlopen, NULL);
++    expect_string(__wrap_dlopen, filename, "@PREFIX@" "libtss2-libtss2-tcti-device.so.0.so.0");
 +    expect_value(__wrap_dlopen, flags, RTLD_NOW);
 +    will_return(__wrap_dlopen, NULL);
-+    expect_string(__wrap_dlopen, filename, "@PREFIX@/libtss2-tcti-libtss2-tcti-device.so.0.so");
+     expect_string(__wrap_dlopen, filename, "libtss2-libtss2-tcti-device.so.0.so");
+     expect_value(__wrap_dlopen, flags, RTLD_NOW);
+     will_return(__wrap_dlopen, NULL);
++    expect_string(__wrap_dlopen, filename, "@PREFIX@" "libtss2-libtss2-tcti-device.so.0.so");
++    expect_value(__wrap_dlopen, flags, RTLD_NOW);
++    will_return(__wrap_dlopen, NULL);
+ 
+     /* Skip over libtss2-tcti-device.so, /dev/tcm0 */
+     expect_string(__wrap_dlopen, filename, "libtss2-tcti-device.so.0");
+     expect_value(__wrap_dlopen, flags, RTLD_NOW);
+     will_return(__wrap_dlopen, NULL);
++    expect_string(__wrap_dlopen, filename, "@PREFIX@" "libtss2-tcti-device.so.0");
++    expect_value(__wrap_dlopen, flags, RTLD_NOW);
++    will_return(__wrap_dlopen, NULL);
+     expect_string(__wrap_dlopen, filename, "libtss2-tcti-libtss2-tcti-device.so.0.so.0");
+     expect_value(__wrap_dlopen, flags, RTLD_NOW);
+     will_return(__wrap_dlopen, NULL);
++    expect_string(__wrap_dlopen, filename, "@PREFIX@" "libtss2-tcti-libtss2-tcti-device.so.0.so.0");
++    expect_value(__wrap_dlopen, flags, RTLD_NOW);
++    will_return(__wrap_dlopen, NULL);
+     expect_string(__wrap_dlopen, filename, "libtss2-tcti-libtss2-tcti-device.so.0.so");
+     expect_value(__wrap_dlopen, flags, RTLD_NOW);
+     will_return(__wrap_dlopen, NULL);
++    expect_string(__wrap_dlopen, filename, "@PREFIX@" "libtss2-tcti-libtss2-tcti-device.so.0.so");
++    expect_value(__wrap_dlopen, flags, RTLD_NOW);
++    will_return(__wrap_dlopen, NULL);
+     expect_string(__wrap_dlopen, filename, "libtss2-libtss2-tcti-device.so.0.so.0");
+     expect_value(__wrap_dlopen, flags, RTLD_NOW);
+     will_return(__wrap_dlopen, NULL);
++    expect_string(__wrap_dlopen, filename, "@PREFIX@" "libtss2-libtss2-tcti-device.so.0.so.0");
++    expect_value(__wrap_dlopen, flags, RTLD_NOW);
++    will_return(__wrap_dlopen, NULL);
+     expect_string(__wrap_dlopen, filename, "libtss2-libtss2-tcti-device.so.0.so");
+     expect_value(__wrap_dlopen, flags, RTLD_NOW);
+     will_return(__wrap_dlopen, NULL);
++    expect_string(__wrap_dlopen, filename, "@PREFIX@" "libtss2-libtss2-tcti-device.so.0.so");
 +    expect_value(__wrap_dlopen, flags, RTLD_NOW);
 +    will_return(__wrap_dlopen, NULL);
  
      /* Skip over libtss2-tcti-swtpm.so */
      expect_string(__wrap_dlopen, filename, "libtss2-tcti-swtpm.so.0");
-@@ -457,6 +517,15 @@ test_tcti_fail_all (void **state)
+     expect_value(__wrap_dlopen, flags, RTLD_NOW);
+     will_return(__wrap_dlopen, NULL);
++    expect_string(__wrap_dlopen, filename, "@PREFIX@" "libtss2-tcti-swtpm.so.0");
++    expect_value(__wrap_dlopen, flags, RTLD_NOW);
++    will_return(__wrap_dlopen, NULL);
+     expect_string(__wrap_dlopen, filename, "libtss2-tcti-libtss2-tcti-swtpm.so.0.so.0");
+     expect_value(__wrap_dlopen, flags, RTLD_NOW);
+     will_return(__wrap_dlopen, NULL);
++    expect_string(__wrap_dlopen, filename, "@PREFIX@" "libtss2-tcti-libtss2-tcti-swtpm.so.0.so.0");
++    expect_value(__wrap_dlopen, flags, RTLD_NOW);
++    will_return(__wrap_dlopen, NULL);
      expect_string(__wrap_dlopen, filename, "libtss2-tcti-libtss2-tcti-swtpm.so.0.so");
      expect_value(__wrap_dlopen, flags, RTLD_NOW);
      will_return(__wrap_dlopen, NULL);
-+    expect_string(__wrap_dlopen, filename, "@PREFIX@/libtss2-tcti-swtpm.so.0");
++    expect_string(__wrap_dlopen, filename, "@PREFIX@" "libtss2-tcti-libtss2-tcti-swtpm.so.0.so");
 +    expect_value(__wrap_dlopen, flags, RTLD_NOW);
 +    will_return(__wrap_dlopen, NULL);
-+    expect_string(__wrap_dlopen, filename, "@PREFIX@/libtss2-tcti-libtss2-tcti-swtpm.so.0.so.0");
+     expect_string(__wrap_dlopen, filename, "libtss2-libtss2-tcti-swtpm.so.0.so.0");
+     expect_value(__wrap_dlopen, flags, RTLD_NOW);
+     will_return(__wrap_dlopen, NULL);
++    expect_string(__wrap_dlopen, filename, "@PREFIX@" "libtss2-libtss2-tcti-swtpm.so.0.so.0");
 +    expect_value(__wrap_dlopen, flags, RTLD_NOW);
 +    will_return(__wrap_dlopen, NULL);
-+    expect_string(__wrap_dlopen, filename, "@PREFIX@/libtss2-tcti-libtss2-tcti-swtpm.so.0.so");
+     expect_string(__wrap_dlopen, filename, "libtss2-libtss2-tcti-swtpm.so.0.so");
+     expect_value(__wrap_dlopen, flags, RTLD_NOW);
+     will_return(__wrap_dlopen, NULL);
++    expect_string(__wrap_dlopen, filename, "@PREFIX@" "libtss2-libtss2-tcti-swtpm.so.0.so");
 +    expect_value(__wrap_dlopen, flags, RTLD_NOW);
 +    will_return(__wrap_dlopen, NULL);
  
      /* Skip over libtss2-tcti-mssim.so */
      expect_string(__wrap_dlopen, filename, "libtss2-tcti-mssim.so.0");
-@@ -468,6 +537,15 @@ test_tcti_fail_all (void **state)
+     expect_value(__wrap_dlopen, flags, RTLD_NOW);
+     will_return(__wrap_dlopen, NULL);
++    expect_string(__wrap_dlopen, filename, "@PREFIX@" "libtss2-tcti-mssim.so.0");
++    expect_value(__wrap_dlopen, flags, RTLD_NOW);
++    will_return(__wrap_dlopen, NULL);
+     expect_string(__wrap_dlopen, filename, "libtss2-tcti-libtss2-tcti-mssim.so.0.so.0");
+     expect_value(__wrap_dlopen, flags, RTLD_NOW);
+     will_return(__wrap_dlopen, NULL);
++    expect_string(__wrap_dlopen, filename, "@PREFIX@" "libtss2-tcti-libtss2-tcti-mssim.so.0.so.0");
++    expect_value(__wrap_dlopen, flags, RTLD_NOW);
++    will_return(__wrap_dlopen, NULL);
      expect_string(__wrap_dlopen, filename, "libtss2-tcti-libtss2-tcti-mssim.so.0.so");
      expect_value(__wrap_dlopen, flags, RTLD_NOW);
      will_return(__wrap_dlopen, NULL);
-+    expect_string(__wrap_dlopen, filename, "@PREFIX@/libtss2-tcti-mssim.so.0");
++    expect_string(__wrap_dlopen, filename, "@PREFIX@" "libtss2-tcti-libtss2-tcti-mssim.so.0.so");
 +    expect_value(__wrap_dlopen, flags, RTLD_NOW);
 +    will_return(__wrap_dlopen, NULL);
-+    expect_string(__wrap_dlopen, filename, "@PREFIX@/libtss2-tcti-libtss2-tcti-mssim.so.0.so.0");
+     expect_string(__wrap_dlopen, filename, "libtss2-libtss2-tcti-mssim.so.0.so.0");
+     expect_value(__wrap_dlopen, flags, RTLD_NOW);
+     will_return(__wrap_dlopen, NULL);
++    expect_string(__wrap_dlopen, filename, "@PREFIX@" "libtss2-libtss2-tcti-mssim.so.0.so.0");
 +    expect_value(__wrap_dlopen, flags, RTLD_NOW);
 +    will_return(__wrap_dlopen, NULL);
-+    expect_string(__wrap_dlopen, filename, "@PREFIX@/libtss2-tcti-libtss2-tcti-mssim.so.0.so");
+     expect_string(__wrap_dlopen, filename, "libtss2-libtss2-tcti-mssim.so.0.so");
+     expect_value(__wrap_dlopen, flags, RTLD_NOW);
+     will_return(__wrap_dlopen, NULL);
++    expect_string(__wrap_dlopen, filename, "@PREFIX@" "libtss2-libtss2-tcti-mssim.so.0.so");
 +    expect_value(__wrap_dlopen, flags, RTLD_NOW);
 +    will_return(__wrap_dlopen, NULL);
  
      TSS2_RC r;
      TSS2_TCTI_CONTEXT *tcti;
-@@ -496,6 +574,15 @@ test_info_from_name_handle_fail (void **state)
+@@ -619,18 +804,33 @@ test_info_from_name_handle_fail (void **state)
+     expect_string(__wrap_dlopen, filename, "foo");
+     expect_value(__wrap_dlopen, flags, RTLD_NOW);
+     will_return(__wrap_dlopen, NULL);
++    expect_string(__wrap_dlopen, filename, "@PREFIX@" "foo");
++    expect_value(__wrap_dlopen, flags, RTLD_NOW);
++    will_return(__wrap_dlopen, NULL);
+     expect_string(__wrap_dlopen, filename, "libtss2-tcti-foo.so.0");
+     expect_value(__wrap_dlopen, flags, RTLD_NOW);
+     will_return(__wrap_dlopen, NULL);
++    expect_string(__wrap_dlopen, filename, "@PREFIX@" "libtss2-tcti-foo.so.0");
++    expect_value(__wrap_dlopen, flags, RTLD_NOW);
++    will_return(__wrap_dlopen, NULL);
      expect_string(__wrap_dlopen, filename, "libtss2-tcti-foo.so");
      expect_value(__wrap_dlopen, flags, RTLD_NOW);
      will_return(__wrap_dlopen, NULL);
-+    expect_string(__wrap_dlopen, filename, "@PREFIX@/foo");
++    expect_string(__wrap_dlopen, filename, "@PREFIX@" "libtss2-tcti-foo.so");
 +    expect_value(__wrap_dlopen, flags, RTLD_NOW);
 +    will_return(__wrap_dlopen, NULL);
-+    expect_string(__wrap_dlopen, filename, "@PREFIX@/libtss2-tcti-foo.so.0");
+     expect_string(__wrap_dlopen, filename, "libtss2-foo.so.0");
+     expect_value(__wrap_dlopen, flags, RTLD_NOW);
+     will_return(__wrap_dlopen, NULL);
++    expect_string(__wrap_dlopen, filename, "@PREFIX@" "libtss2-foo.so.0");
 +    expect_value(__wrap_dlopen, flags, RTLD_NOW);
 +    will_return(__wrap_dlopen, NULL);
-+    expect_string(__wrap_dlopen, filename, "@PREFIX@/libtss2-tcti-foo.so");
+     expect_string(__wrap_dlopen, filename, "libtss2-foo.so");
+     expect_value(__wrap_dlopen, flags, RTLD_NOW);
+     will_return(__wrap_dlopen, NULL);
++    expect_string(__wrap_dlopen, filename, "@PREFIX@" "libtss2-foo.so");
 +    expect_value(__wrap_dlopen, flags, RTLD_NOW);
 +    will_return(__wrap_dlopen, NULL);
  
      TSS2_RC rc = info_from_name ("foo", &info, &data);
      assert_int_equal (rc, TSS2_TCTI_RC_NOT_SUPPORTED);
-@@ -612,6 +699,15 @@ test_tctildr_get_info_from_name (void **state)
+@@ -741,18 +941,33 @@ test_tctildr_get_info_from_name (void **state)
+     expect_string(__wrap_dlopen, filename, "foo");
+     expect_value(__wrap_dlopen, flags, RTLD_NOW);
+     will_return(__wrap_dlopen, NULL);
++    expect_string(__wrap_dlopen, filename, "@PREFIX@" "foo");
++    expect_value(__wrap_dlopen, flags, RTLD_NOW);
++    will_return(__wrap_dlopen, NULL);
+     expect_string(__wrap_dlopen, filename, "libtss2-tcti-foo.so.0");
+     expect_value(__wrap_dlopen, flags, RTLD_NOW);
+     will_return(__wrap_dlopen, NULL);
++    expect_string(__wrap_dlopen, filename, "@PREFIX@" "libtss2-tcti-foo.so.0");
++    expect_value(__wrap_dlopen, flags, RTLD_NOW);
++    will_return(__wrap_dlopen, NULL);
      expect_string(__wrap_dlopen, filename, "libtss2-tcti-foo.so");
      expect_value(__wrap_dlopen, flags, RTLD_NOW);
      will_return(__wrap_dlopen, NULL);
-+    expect_string(__wrap_dlopen, filename, "@PREFIX@/foo");
++    expect_string(__wrap_dlopen, filename, "@PREFIX@" "libtss2-tcti-foo.so");
 +    expect_value(__wrap_dlopen, flags, RTLD_NOW);
 +    will_return(__wrap_dlopen, NULL);
-+    expect_string(__wrap_dlopen, filename, "@PREFIX@/libtss2-tcti-foo.so.0");
+     expect_string(__wrap_dlopen, filename, "libtss2-foo.so.0");
+     expect_value(__wrap_dlopen, flags, RTLD_NOW);
+     will_return(__wrap_dlopen, NULL);
++    expect_string(__wrap_dlopen, filename, "@PREFIX@" "libtss2-foo.so.0");
 +    expect_value(__wrap_dlopen, flags, RTLD_NOW);
 +    will_return(__wrap_dlopen, NULL);
-+    expect_string(__wrap_dlopen, filename, "@PREFIX@/libtss2-tcti-foo.so");
+     expect_string(__wrap_dlopen, filename, "libtss2-foo.so");
+     expect_value(__wrap_dlopen, flags, RTLD_NOW);
+     will_return(__wrap_dlopen, NULL);
++    expect_string(__wrap_dlopen, filename, "@PREFIX@" "libtss2-foo.so");
 +    expect_value(__wrap_dlopen, flags, RTLD_NOW);
 +    will_return(__wrap_dlopen, NULL);
  
diff --git a/pkgs/development/libraries/tracker/default.nix b/pkgs/development/libraries/tracker/default.nix
index 48fc561ddd13..67400eaee929 100644
--- a/pkgs/development/libraries/tracker/default.nix
+++ b/pkgs/development/libraries/tracker/default.nix
@@ -25,6 +25,7 @@
 , libsoup
 , libsoup_3
 , json-glib
+, avahi
 , systemd
 , dbus
 , writeText
@@ -33,13 +34,13 @@
 
 stdenv.mkDerivation (finalAttrs: {
   pname = "tracker";
-  version = "3.6.0";
+  version = "3.7.2";
 
   outputs = [ "out" "dev" "devdoc" ];
 
   src = fetchurl {
     url = with finalAttrs; "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
-    sha256 = "Ulks/hm6/9FtvkdHW+fadQ29C2Mz/XrLYPqp2lvEDfI=";
+    hash = "sha256-3ryqKR5Gr63Bz2olHxfvsCRAqki/9kPXjGESOAfc4A8=";
   };
 
   strictDeps = true;
@@ -75,6 +76,7 @@ stdenv.mkDerivation (finalAttrs: {
     libsoup_3
     libuuid
     json-glib
+    avahi
     libstemmer
     dbus
   ] ++ lib.optionals stdenv.isLinux [
diff --git a/pkgs/development/libraries/ubus/default.nix b/pkgs/development/libraries/ubus/default.nix
index 2150ed7b0e82..662ec1c7b035 100644
--- a/pkgs/development/libraries/ubus/default.nix
+++ b/pkgs/development/libraries/ubus/default.nix
@@ -14,6 +14,10 @@ stdenv.mkDerivation {
   buildInputs = [ libubox libjson ];
   nativeBuildInputs = [ cmake ];
 
+  env.NIX_CFLAGS_COMPILE = toString (lib.optionals (stdenv.isDarwin && stdenv.isx86_64) [
+    "-Wno-error=gnu-folding-constant"
+  ]);
+
   meta = with lib; {
     description = "OpenWrt system message/RPC bus";
     homepage = "https://git.openwrt.org/?p=project/ubus.git;a=summary";
diff --git a/pkgs/development/libraries/ucl/default.nix b/pkgs/development/libraries/ucl/default.nix
index 048f35868cda..d8e05e9374bf 100644
--- a/pkgs/development/libraries/ucl/default.nix
+++ b/pkgs/development/libraries/ucl/default.nix
@@ -9,8 +9,9 @@ stdenv.mkDerivation rec {
     sha256 = "b865299ffd45d73412293369c9754b07637680e5c826915f097577cd27350348";
   };
 
-  # needed to successfully compile with gcc 6
-  env.NIX_CFLAGS_COMPILE = lib.optionalString stdenv.cc.isGNU "-std=c90";
+  # needed to successfully compile with gcc 6+ and modern clang versions where
+  # `-Wimplicit-function-declaration` is otherwise on and errors by default
+  env.CFLAGS = "-std=c89";
 
   meta = {
     homepage = "http://www.oberhumer.com/opensource/ucl/";
diff --git a/pkgs/development/libraries/uclient/default.nix b/pkgs/development/libraries/uclient/default.nix
index 63a31c2bfbe9..7206b6ad98fc 100644
--- a/pkgs/development/libraries/uclient/default.nix
+++ b/pkgs/development/libraries/uclient/default.nix
@@ -26,5 +26,6 @@ stdenv.mkDerivation {
     maintainers = with maintainers; [ mkg20001 ];
     mainProgram = "uclient-fetch";
     platforms = platforms.all;
+    broken = stdenv.isDarwin;
   };
 }
diff --git a/pkgs/development/libraries/uriparser/default.nix b/pkgs/development/libraries/uriparser/default.nix
index 01ab983e1d6e..dd93f49f5946 100644
--- a/pkgs/development/libraries/uriparser/default.nix
+++ b/pkgs/development/libraries/uriparser/default.nix
@@ -2,12 +2,12 @@
 
 stdenv.mkDerivation rec {
   pname = "uriparser";
-  version = "0.9.7";
+  version = "0.9.8";
 
   # Release tarball differs from source tarball
   src = fetchurl {
     url = "https://github.com/uriparser/uriparser/releases/download/${pname}-${version}/${pname}-${version}.tar.bz2";
-    sha256 = "sha256-0n3qDItvb7l5jwfK7e8c2WpuP8XGGJWWd04Zr6fd3tc=";
+    hash = "sha256-ctG1Wb46GAb3iKPZvjShsGPUKqI4spuk7mM9bv/NM70=";
   };
 
   nativeBuildInputs = [ cmake ];
@@ -20,6 +20,7 @@ stdenv.mkDerivation rec {
   doCheck = stdenv.buildPlatform == stdenv.hostPlatform;
 
   meta = with lib; {
+    changelog = "https://github.com/uriparser/uriparser/blob/uriparser-${version}/ChangeLog";
     description = "Strictly RFC 3986 compliant URI parsing library";
     longDescription = ''
       uriparser is a strictly RFC 3986 compliant URI parsing and handling library written in C.
diff --git a/pkgs/development/libraries/ustr/default.nix b/pkgs/development/libraries/ustr/default.nix
deleted file mode 100644
index 598e5e7c76a1..000000000000
--- a/pkgs/development/libraries/ustr/default.nix
+++ /dev/null
@@ -1,43 +0,0 @@
-{ lib, stdenv, fetchurl }:
-
-stdenv.mkDerivation rec {
-  pname = "ustr";
-  version = "1.0.4";
-
-  src = fetchurl {
-    url = "http://www.and.org/ustr/${version}/${pname}-${version}.tar.bz2";
-    sha256 = "1i623ygdj7rkizj7985q9d6vj5amwg686aqb5j3ixpkqkyp6xbrx";
-  };
-
-  # Fixes bogus warnings that failed libsemanage
-  patches = [ ./va_args.patch ];
-
-  # Work around gcc5 switch to gnu11
-  env.NIX_CFLAGS_COMPILE = "-std=gnu89";
-
-  # Fix detection of stdint.h
-  postPatch = ''
-    sed -i 's,\(have_stdint_h\)=0,\1=1,g' Makefile
-    sed -i 's,\(USTR_CONF_HAVE_STDINT_H\) 0,\1 1,g' ustr-import.in
-  '';
-
-  preBuild = ''
-    makeFlagsArray+=("prefix=$out")
-    makeFlagsArray+=("LDCONFIG=echo")
-    makeFlagsArray+=("HIDE=")
-  '';
-
-  # Remove debug libraries
-  postInstall = ''
-    find $out/lib -name \*debug\* -delete
-  '';
-
-  meta = with lib; {
-    homepage = "http://www.and.org/ustr/";
-    description = "Micro String API for C language";
-    mainProgram = "ustr-import";
-    license = licenses.bsd2;
-    maintainers = [ ];
-    platforms = platforms.linux;
-  };
-}
diff --git a/pkgs/development/libraries/ustream-ssl/default.nix b/pkgs/development/libraries/ustream-ssl/default.nix
index 638685434463..4bee9d4f3155 100644
--- a/pkgs/development/libraries/ustream-ssl/default.nix
+++ b/pkgs/development/libraries/ustream-ssl/default.nix
@@ -10,12 +10,12 @@
 
 stdenv.mkDerivation {
   pname = "ustream-ssl";
-  version = "unstable-2023-11-11";
+  version = "0-unstable-2024-03-26";
 
   src = fetchgit {
     url = "https://git.openwrt.org/project/ustream-ssl.git";
-    rev = "263b9a97cf7e1e2467319c23832b705fc01190b5";
-    hash = "sha256-RLHU6swNbS3DL3QbKnwU4BbD0EFGKCrHHp0hbnoSssw=";
+    rev = "7621339d7694abef5da5e5353ac440f2d39dcecb";
+    hash = "sha256-No0Pk8KbkT7W4Rav7W3rMKEJISbp7RRoRx7t6LPMxlk=";
   };
 
   preConfigure = ''
diff --git a/pkgs/development/libraries/vte/default.nix b/pkgs/development/libraries/vte/default.nix
index be55952fe2e1..89af6e847a88 100644
--- a/pkgs/development/libraries/vte/default.nix
+++ b/pkgs/development/libraries/vte/default.nix
@@ -22,23 +22,24 @@
 , pcre2
 , cairo
 , fribidi
-, zlib
+, lz4
 , icu
 , systemd
 , systemdSupport ? lib.meta.availableOn stdenv.hostPlatform systemd
 , nixosTests
+, blackbox-terminal
 }:
 
 stdenv.mkDerivation (finalAttrs: {
   pname = "vte";
-  version = "0.74.2";
+  version = "0.76.1";
 
   outputs = [ "out" "dev" ]
     ++ lib.optional (gtkVersion != null) "devdoc";
 
   src = fetchurl {
     url = "mirror://gnome/sources/vte/${lib.versions.majorMinor finalAttrs.version}/vte-${finalAttrs.version}.tar.xz";
-    sha256 = "sha256-pTX7Kpj+qKJEnNGgLMz1GQEx3d/1LnFa/azj/rU26uc=";
+    hash = "sha256-CE6D73ZXdCaaSynfl8oi7cNDuaHYFDPTALjLLQh6HsI=";
   };
 
   patches = [
@@ -48,7 +49,7 @@ stdenv.mkDerivation (finalAttrs: {
     (fetchpatch {
       name = "0001-Add-W_EXITCODE-macro-for-non-glibc-systems.patch";
       url = "https://git.alpinelinux.org/aports/plain/community/vte3/fix-W_EXITCODE.patch?id=4d35c076ce77bfac7655f60c4c3e4c86933ab7dd";
-      sha256 = "FkVyhsM0mRUzZmS2Gh172oqwcfXv6PyD6IEgjBhy2uU=";
+      hash = "sha256-FkVyhsM0mRUzZmS2Gh172oqwcfXv6PyD6IEgjBhy2uU=";
     })
   ];
 
@@ -71,7 +72,7 @@ stdenv.mkDerivation (finalAttrs: {
     gnutls
     pango # duplicated with propagatedBuildInputs to support gtkVersion == null
     pcre2
-    zlib
+    lz4
     icu
   ] ++ lib.optionals systemdSupport [
     systemd
@@ -97,11 +98,11 @@ stdenv.mkDerivation (finalAttrs: {
   ];
 
   # error: argument unused during compilation: '-pie' [-Werror,-Wunused-command-line-argument]
-  env.NIX_CFLAGS_COMPILE = lib.optionalString stdenv.hostPlatform.isMusl "-Wno-unused-command-line-argument";
+  env.NIX_CFLAGS_COMPILE = toString (lib.optional stdenv.hostPlatform.isMusl "-Wno-unused-command-line-argument"
+    ++ lib.optional stdenv.cc.isClang "-Wno-cast-function-type-strict");
 
   postPatch = ''
     patchShebangs perf/*
-    patchShebangs src/box_drawing_generate.sh
     patchShebangs src/parser-seq.py
     patchShebangs src/modes.py
   '';
@@ -118,6 +119,7 @@ stdenv.mkDerivation (finalAttrs: {
     };
     tests = {
       inherit (nixosTests.terminal-emulators) gnome-terminal lxterminal mlterm roxterm sakura stupidterm terminator termite xfce4-terminal;
+      blackbox-terminal = blackbox-terminal.override { sixelSupport = true; };
     };
   };
 
diff --git a/pkgs/development/libraries/wayland/protocols.nix b/pkgs/development/libraries/wayland/protocols.nix
index e150c87c15d1..a260b2b63b92 100644
--- a/pkgs/development/libraries/wayland/protocols.nix
+++ b/pkgs/development/libraries/wayland/protocols.nix
@@ -6,14 +6,14 @@
 
 stdenv.mkDerivation rec {
   pname = "wayland-protocols";
-  version = "1.34";
+  version = "1.35";
 
   # https://gitlab.freedesktop.org/wayland/wayland-protocols/-/issues/48
   doCheck = stdenv.hostPlatform == stdenv.buildPlatform && stdenv.hostPlatform.linker == "bfd" && wayland.withLibraries;
 
   src = fetchurl {
     url = "https://gitlab.freedesktop.org/wayland/${pname}/-/releases/${version}/downloads/${pname}-${version}.tar.xz";
-    hash = "sha256-xZsnys2F9guvTuX4DfXA0Vdg6taiQysAq34uBXTcr+s=";
+    hash = "sha256-N6JxaigTPcgZNBxWiinSHoy3ITDlwSah/PyfQsI9las=";
   };
 
   postPatch = lib.optionalString doCheck ''
diff --git a/pkgs/development/libraries/webrtc-audio-processing/0.3.nix b/pkgs/development/libraries/webrtc-audio-processing/0.3.nix
index 30e2a343e2d0..b7887bce3e1b 100644
--- a/pkgs/development/libraries/webrtc-audio-processing/0.3.nix
+++ b/pkgs/development/libraries/webrtc-audio-processing/0.3.nix
@@ -26,7 +26,7 @@ stdenv.mkDerivation rec {
     homepage = "https://www.freedesktop.org/software/pulseaudio/webrtc-audio-processing";
     description = "A more Linux packaging friendly copy of the AudioProcessing module from the WebRTC project";
     license = licenses.bsd3;
-    # https://gitlab.freedesktop.org/pulseaudio/webrtc-audio-processing/-/blob/v0.3.1/webrtc/rtc_base/system/arch.h
+    # https://gitlab.freedesktop.org/pulseaudio/webrtc-audio-processing/-/blob/v0.3.1/webrtc/typedefs.h
     # + our patches
     platforms = intersectLists platforms.unix (platforms.arm ++ platforms.aarch64 ++ platforms.mips ++ platforms.power ++ platforms.riscv ++ platforms.x86);
   };
diff --git a/pkgs/development/libraries/webrtc-audio-processing/default.nix b/pkgs/development/libraries/webrtc-audio-processing/default.nix
index 7e9fe3fa4a39..b40089306735 100644
--- a/pkgs/development/libraries/webrtc-audio-processing/default.nix
+++ b/pkgs/development/libraries/webrtc-audio-processing/default.nix
@@ -53,7 +53,8 @@ stdenv.mkDerivation rec {
     homepage = "https://www.freedesktop.org/software/pulseaudio/webrtc-audio-processing";
     description = "A more Linux packaging friendly copy of the AudioProcessing module from the WebRTC project";
     license = licenses.bsd3;
-    platforms = platforms.unix;
+    # https://gitlab.freedesktop.org/pulseaudio/webrtc-audio-processing/-/blob/master/webrtc/rtc_base/system/arch.h
+    platforms = intersectLists platforms.unix (platforms.arm ++ platforms.aarch64 ++ platforms.mips ++ platforms.power ++ platforms.riscv ++ platforms.x86);
     # BE platforms are unsupported
     # https://gitlab.freedesktop.org/pulseaudio/webrtc-audio-processing/-/issues/31
     badPlatforms = platforms.bigEndian;
diff --git a/pkgs/development/libraries/wildmidi/default.nix b/pkgs/development/libraries/wildmidi/default.nix
index c09ee248d211..19a8ae3d3957 100644
--- a/pkgs/development/libraries/wildmidi/default.nix
+++ b/pkgs/development/libraries/wildmidi/default.nix
@@ -1,17 +1,17 @@
-{ lib, stdenv, fetchFromGitHub, writeTextFile, cmake, alsa-lib, OpenAL, freepats }:
+{ lib, stdenv, fetchFromGitHub, writeTextFile, cmake, alsa-lib, OpenAL, CoreAudioKit, freepats }:
 
 let
   defaultCfgPath = "${placeholder "out"}/etc/wildmidi/wildmidi.cfg";
 in
 stdenv.mkDerivation rec {
   pname = "wildmidi";
-  version = "0.4.5";
+  version = "0.4.6";
 
   src = fetchFromGitHub {
     owner = "Mindwerks";
     repo = "wildmidi";
     rev = "${pname}-${version}";
-    sha256 = "sha256-5El8aDpAgjrW0/4lphZEF+Hfv9Xr7J4DMk1b/Tb+0TU=";
+    sha256 = "sha256-syjs8y75M2ul7whiZxnWMSskRJd0ixFqnep7qsTbiDE=";
   };
 
   nativeBuildInputs = [ cmake ];
@@ -19,7 +19,7 @@ stdenv.mkDerivation rec {
   buildInputs = lib.optionals stdenv.buildPlatform.isLinux [
     alsa-lib stdenv.cc.libc/*couldn't find libm*/
   ] ++ lib.optionals stdenv.buildPlatform.isDarwin [
-    OpenAL
+    OpenAL CoreAudioKit
   ];
 
   preConfigure = ''
diff --git a/pkgs/development/libraries/wlroots/protocols.nix b/pkgs/development/libraries/wlroots/protocols.nix
index fa69879ae97e..c928da147e12 100644
--- a/pkgs/development/libraries/wlroots/protocols.nix
+++ b/pkgs/development/libraries/wlroots/protocols.nix
@@ -1,6 +1,6 @@
 { lib, stdenv, fetchFromGitLab, wayland-scanner }:
 
-stdenv.mkDerivation rec {
+stdenv.mkDerivation {
   pname = "wlr-protocols";
   version = "unstable-2022-09-05";
 
@@ -38,6 +38,6 @@ stdenv.mkDerivation rec {
     homepage    = "https://gitlab.freedesktop.org/wlroots/wlr-protocols";
     license     = licenses.mit; # See file headers
     platforms   = platforms.linux;
-    maintainers = with maintainers; [ ];
+    maintainers = with maintainers; [ Scrumplex ];
   };
 }
diff --git a/pkgs/development/libraries/xdg-desktop-portal-gnome/default.nix b/pkgs/development/libraries/xdg-desktop-portal-gnome/default.nix
index 966109fa0086..e28ea0da6b0a 100644
--- a/pkgs/development/libraries/xdg-desktop-portal-gnome/default.nix
+++ b/pkgs/development/libraries/xdg-desktop-portal-gnome/default.nix
@@ -21,11 +21,11 @@
 
 stdenv.mkDerivation rec {
   pname = "xdg-desktop-portal-gnome";
-  version = "45.1";
+  version = "46.1";
 
   src = fetchurl {
     url = "mirror://gnome/sources/${pname}/${lib.versions.major version}/${pname}-${version}.tar.xz";
-    sha256 = "PpyoIQRABfs3vWjr5K0Zb8PQcoNVgUZ6IqSHnax7X90=";
+    hash = "sha256-fo2WI+nZaonAiXYWgnzUQdzygykn048TXHIlUrEXKqE=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/libraries/xdg-desktop-portal-gtk/default.nix b/pkgs/development/libraries/xdg-desktop-portal-gtk/default.nix
index e44ffe1ec1d2..e1a51284927a 100644
--- a/pkgs/development/libraries/xdg-desktop-portal-gtk/default.nix
+++ b/pkgs/development/libraries/xdg-desktop-portal-gtk/default.nix
@@ -9,7 +9,7 @@
 , gnome
 , gnome-desktop
 , glib
-, wrapGAppsHook
+, wrapGAppsHook3
 , gsettings-desktop-schemas
 , buildPortalsInGnome ? true
 }:
@@ -29,7 +29,7 @@ stdenv.mkDerivation (finalAttrs: {
     meson
     ninja
     pkg-config
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
diff --git a/pkgs/development/libraries/xdg-desktop-portal-xapp/default.nix b/pkgs/development/libraries/xdg-desktop-portal-xapp/default.nix
index e2d12c250171..d614627a0749 100644
--- a/pkgs/development/libraries/xdg-desktop-portal-xapp/default.nix
+++ b/pkgs/development/libraries/xdg-desktop-portal-xapp/default.nix
@@ -4,7 +4,7 @@
 , meson
 , ninja
 , pkg-config
-, wrapGAppsHook
+, wrapGAppsHook3
 , cinnamon
 , glib
 , gsettings-desktop-schemas
@@ -27,7 +27,7 @@ stdenv.mkDerivation rec {
     meson
     ninja
     pkg-config
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
diff --git a/pkgs/development/libraries/xdg-desktop-portal/default.nix b/pkgs/development/libraries/xdg-desktop-portal/default.nix
index 626c40f3bb33..53a0d3b617e8 100644
--- a/pkgs/development/libraries/xdg-desktop-portal/default.nix
+++ b/pkgs/development/libraries/xdg-desktop-portal/default.nix
@@ -20,11 +20,12 @@
 , pipewire
 , gdk-pixbuf
 , librsvg
+, gobject-introspection
 , python3
 , pkg-config
 , stdenv
 , runCommand
-, wrapGAppsHook
+, wrapGAppsHook3
 , xmlto
 , enableGeoLocation ? true
 }:
@@ -69,7 +70,7 @@ stdenv.mkDerivation (finalAttrs: {
     meson
     ninja
     pkg-config
-    wrapGAppsHook
+    wrapGAppsHook3
     xmlto
   ];
 
@@ -97,6 +98,7 @@ stdenv.mkDerivation (finalAttrs: {
   ];
 
   nativeCheckInputs = [
+    gobject-introspection
     python3.pkgs.pytest
     python3.pkgs.python-dbusmock
     python3.pkgs.pygobject3
diff --git a/pkgs/development/libraries/xml-security-c/default.nix b/pkgs/development/libraries/xml-security-c/default.nix
index 6be958d7d24d..c9e4c5874aef 100644
--- a/pkgs/development/libraries/xml-security-c/default.nix
+++ b/pkgs/development/libraries/xml-security-c/default.nix
@@ -1,12 +1,24 @@
-{ lib, stdenv, fetchurl, xalanc, xercesc, openssl, pkg-config }:
+{
+  lib,
+  stdenv,
+  fetchurl,
+  pkg-config,
+  xalanc,
+  xercesc,
+  openssl,
+  darwin,
+}:
 
-stdenv.mkDerivation rec {
+let
+  inherit (darwin.apple_sdk.frameworks) CoreFoundation CoreServices SystemConfiguration;
+in
+stdenv.mkDerivation (finalAttrs: {
   pname = "xml-security-c";
   version = "2.0.4";
 
   src = fetchurl {
-    url = "mirror://apache/santuario/c-library/${pname}-${version}.tar.gz";
-    sha256 = "sha256-p42mcg9sK6FBANJCYTHg0z6sWi26XMEb3QSXS364kAM=";
+    url = "mirror://apache/santuario/c-library/xml-security-c-${finalAttrs.version}.tar.gz";
+    hash = "sha256-p42mcg9sK6FBANJCYTHg0z6sWi26XMEb3QSXS364kAM=";
   };
 
   configureFlags = [
@@ -16,7 +28,18 @@ stdenv.mkDerivation rec {
   ];
 
   nativeBuildInputs = [ pkg-config ];
-  buildInputs = [ xalanc xercesc openssl ];
+
+  buildInputs =
+    [
+      xalanc
+      xercesc
+      openssl
+    ]
+    ++ lib.optionals stdenv.isDarwin [
+      CoreFoundation
+      CoreServices
+      SystemConfiguration
+    ];
 
   meta = {
     homepage = "https://santuario.apache.org/";
@@ -25,4 +48,4 @@ stdenv.mkDerivation rec {
     platforms = lib.platforms.unix;
     maintainers = [ lib.maintainers.jagajaga ];
   };
-}
+})
diff --git a/pkgs/development/libraries/yyjson/default.nix b/pkgs/development/libraries/yyjson/default.nix
index 82d4e1322f20..e1d42ccce7b6 100644
--- a/pkgs/development/libraries/yyjson/default.nix
+++ b/pkgs/development/libraries/yyjson/default.nix
@@ -24,7 +24,7 @@ stdenv.mkDerivation (finalAttrs: {
     homepage = "https://github.com/ibireme/yyjson";
     changelog = "https://github.com/ibireme/yyjson/blob/${finalAttrs.src.rev}/CHANGELOG.md";
     license = lib.licenses.mit;
-    maintainers = with lib.maintainers; [ ];
+    maintainers = with lib.maintainers; [ sigmanificient ];
     platforms = lib.platforms.all;
   };
 })
diff --git a/pkgs/development/lisp-modules-new-obsolete/.gitattributes b/pkgs/development/lisp-modules-new-obsolete/.gitattributes
deleted file mode 100644
index d885ece18ad1..000000000000
--- a/pkgs/development/lisp-modules-new-obsolete/.gitattributes
+++ /dev/null
@@ -1 +0,0 @@
-imported.nix linguist-vendored
diff --git a/pkgs/development/lisp-modules-new-obsolete/.gitignore b/pkgs/development/lisp-modules-new-obsolete/.gitignore
deleted file mode 100644
index 7936f6a73a80..000000000000
--- a/pkgs/development/lisp-modules-new-obsolete/.gitignore
+++ /dev/null
@@ -1,3 +0,0 @@
-result
-*.sqlite
-*.fasl
diff --git a/pkgs/development/lisp-modules-new-obsolete/doc/api.md b/pkgs/development/lisp-modules-new-obsolete/doc/api.md
deleted file mode 100644
index f5aed70de72a..000000000000
--- a/pkgs/development/lisp-modules-new-obsolete/doc/api.md
+++ /dev/null
@@ -1,197 +0,0 @@
-## The API
-
-This page documents the Nix API of nix-cl.
-
-## Overview
-
-The core API functions are `build-asdf-system` and
-`lispWithPackagesInternal`.
-
-They are considered more low-level that the rest of the API, which
-builds on top of them to provide a more convenient interface with sane
-defaults.
-
-The higher-level API provides a lot of pre-configured packages,
-including all of Quicklisp, and consists of the functions:
-
-- `lispPackagesFor`
-- `lispWithPackages`
-
-Finally, there are functions that provide pre-defined Lisps, for
-people who don't need to customize that:
-
-- `abclPackages`, `eclPackages`, `cclPackages`, `claspPackages`, `sbclPackages`
-- `abclWithPackages`, `eclWithPackages`, `cclWithPackages`, `claspWithPackages`, `sbclWithPackages`
-
-The following is an attempt to document all of this.
-
-## Packaging systems - `build-asdf-system`
-
-Packages are declared using `build-asdf-system`. This function takes
-the following arguments and returns a `derivation`.
-
-#### Required arguments
-
-##### `pname`
-Name of the package/library
-
-##### `version`
-Version of the package/library
-
-##### `src`
-Source of the package/library (`fetchzip`, `fetchgit`, `fetchhg` etc.)
-
-##### `lisp`
-This command must load the provided file (`$buildScript`) then exit
-immediately. For example, SBCL's --script flag does just that.
-
-#### Optional arguments
-
-##### `patches ? []`
-
-Patches to apply to the source code before compiling it. This is a
-list of files.
-
-##### `nativeLibs ? []`
-
-Native libraries, will be appended to the library
-path. (`pkgs.openssl` etc.)
-
-##### `javaLibs ? []`
-
-Java libraries for ABCL, will be appended to the class path.
-
-##### `lispLibs ? []`
-
-Lisp dependencies These must themselves be packages built with
-`build-asdf-system`
-
-##### `systems ? [ pname ]`
-
-Some libraries have multiple systems under one project, for example,
-[cffi] has `cffi-grovel`, `cffi-toolchain` etc.  By default, only the
-`pname` system is build.
-
-`.asd's` not listed in `systems` are removed before saving the library
-to the Nix store. This prevents ASDF from referring to uncompiled
-systems on run time.
-
-Also useful when the `pname` is different than the system name, such
-as when using [reverse domain naming]. (see `jzon` ->
-`com.inuoe.jzon`)
-
-[cffi]: https://cffi.common-lisp.dev/
-[reverse domain naming]: https://en.wikipedia.org/wiki/Reverse_domain_name_notation
-
-##### `asds ? systems`
-
-The .asd files that this package provides. By default, same as
-`systems`.
-
-#### Return value
-
-A `derivation` that, when built, contains the sources and pre-compiled
-FASL files (Lisp implementation dependent) alongside any other
-artifacts generated during compilation.
-
-#### Example
-
-[bordeaux-threads.nix] contains a simple example of packaging
-`alexandria` and `bordeaux-threads`.
-
-[bordeaux-threads.nix]: /examples/bordeaux-threads.nix
-
-## Building a Lisp with packages: `lispWithPackagesInternal`
-
-Generators of Lisps configured to be able to `asdf:load-system`
-pre-compiled libraries on run-time are built with
-`lispWithPackagesInternal`.
-
-#### Required Arguments
-
-##### `clpkgs`
-
-An attribute set of `derivation`s returned by `build-asdf-system`
-
-#### Return value
-
-`lispWithPackagesInternal` returns a function that takes one argument:
-a function `(lambda (clpkgs) packages)`, that, given a set of
-packages, returns a list of package `derivation`s to be included in
-the closure.
-
-#### Example
-
-The [sbcl-with-bt.nix] example creates a runnable Lisp where the
-`bordeaux-threads` defined in the previous section is precompiled and
-loadable via `asdf:load-system`:
-
-[sbcl-with-bt.nix]: /examples/sbcl-with-bt.nix
-
-## Reusing pre-packaged Lisp libraries: `lispPackagesFor`
-
-`lispPackagesFor` is a higher level version of
-`lispPackagesForInternal`: it only takes one argument - a Lisp command
-to use for compiling packages. It then provides a bunch of ready to
-use packages.
-
-#### Required Arguments
-
-##### `lisp`
-
-The Lisp command to use in calls to `build-asdf-system` while building
-the library-provided Lisp package declarations.
-
-#### Return value
-
-A set of packages built with `build-asdf-system`.
-
-#### Example
-
-The [abcl-package-set.nix] example generates a set of thousands of packages for ABCL.
-
-[abcl-package-set.nix]: /examples/abcl-package-set.nix
-
-## Reusing pre-packaged Lisp libraries, part 2: `lispWithPackages`
-
-This is simply a helper function to avoid having to call
-`lispPackagesFor` if all you want is a Lisp-with-packages wrapper.
-
-#### Required Arguments
-
-##### `lisp`
-
-The Lisp command to pass to `lispPackagesFor` in order for it to
-generate a package set. That set is then passed to
-`lispWithPackagesInternal`.
-
-#### Return value
-
-A Lisp-with-packages function (see sections above).
-
-#### Example
-
-The [abcl-with-packages.nix] example creates an `abclWithPackages` function.
-
-[abcl-with-packages.nix]: /examples/abcl-with-packages.nix
-
-## Using the default Lisp implementations
-
-This is the easiest way to get going with `nix-cl` in general. Choose
-the CL implementation of interest and a set of libraries, and get a
-lisp-with-packages wrapper with those libraries pre-compiled.
-
-#### `abclPackages`, `eclPackages`, `cclPackages`, `claspPackages`, `sbclPackages`
-
-Ready to use package sets.
-
-#### `abclWithPackages`, `eclWithPackages`, `cclWithPackages`, `claspWithPackages`, `sbclWithPackages`
-
-Ready to use wrapper generators.
-
-#### Example
-
-For example, to open a shell with SBCL + hunchentoot + sqlite in PATH:
-```
-nix-shell -p 'with import ./. {}; sbclWithPackages (ps: [ ps.hunchentoot ps.sqlite ])'
-```
diff --git a/pkgs/development/lisp-modules-new-obsolete/doc/nix-cl.md b/pkgs/development/lisp-modules-new-obsolete/doc/nix-cl.md
deleted file mode 100644
index eb84ed43777c..000000000000
--- a/pkgs/development/lisp-modules-new-obsolete/doc/nix-cl.md
+++ /dev/null
@@ -1,98 +0,0 @@
-## Use cases
-
-This page lists some possible use cases for nix-cl.
-
-## Pinning down the exact commits of libraries
-
-Sometimes, a bug is fixed upstream but is not yet available in package
-repositories such as Quicklisp or Ultralisp. The users have to wait
-for the repository maintainer to update it, or download and compile
-the patched sources themselves.
-
-This is a manual and hard to reproduce process. By leveraging Nix,
-users of `nix-cl` can essentially "run their own package repository",
-written as Nix code, with all the benefits of that (shareability,
-cacheability, reproducibility, version-controllable etc.)
-
-
-## Modifying libraries with patches
-
-Other times, a bug in a library is not fixed upstream, but you fixed
-it yourself. Or, you would like a change to the internals that the
-maintainers don't like.
-
-Sure, you could fork the code or maintain patches manually, but that
-becomes hard to manage with a lot of patches. It also doesn't have the
-benefits mentioned in the previous section.
-
-`nix-cl` provides a way of applying version-controlled patches to any
-package.
-
-
-## Using libraries not available in repositories
-
-There are useful and working libraries out there, that are nonetheless
-unavailable to users of package managers such as Quicklisp or
-Ultralisp. Two real-world examples are [jzon] and [cl-tar].
-
-`nix-cl` is not tied to any particular package source: instead,
-packages are written as a Nix expression, which can be done manually
-or generated/imported.
-
-This frees the user to have any package they want, and not be
-constrained by a central repository.
-
-## Reproducible environments
-
-The usual way to develop a project involves several steps, such as:
-
-1. Installing a Lisp implementation
-2. Installing a package manager
-3. Installing the chosen libraries
-
-This is not necessarily reproducible. It's unlikely to come back a
-year later and develop the project using the exact same versions of
-the dependencies.
-
-Things can break between attempts at different points in time. The
-repository could have updated versions in the meantime. The source
-tarballs could become unreachable.
-
-With `nix-cl` you can have your own binary cache for Lisp libraries
-and not be affected by downtime of other central repositories.
-
-## Testing across CL implementations
-
-One can manually download different Lisp implementations and run tests
-of a package. This works well in most cases, but it is limited in how
-you can tweak the software. Some practical examples are:
-
-- Statically compiling [zlib] into [SBCL]
-- Building SBCL with the `--fancy` flag
-- Compiling [ECL] as a static library
-
-These are usually hard to do manually, unless you have the necessary
-compilers already configured. These combinations are usually not
-available from package managers as well.
-
-With Nix it's easier, because it will set up the build environment
-automatically. It could be useful to, for example:
-
-- Test against all possible compiler flag combinations
-- Libc versions (ECL)
-- JDK versions ([ABCL])
-
-[zlib]: https://zlib.net
-[SBCL]: https://sbcl.org
-[ECL]: https://ecl.common-lisp.dev/
-[Ultralisp]: https://ultralisp.org/
-[jzon]: https://github.com/Zulu-Inuoe/jzon
-[cl-tar]: https://gitlab.common-lisp.net/cl-tar/cl-tar
-[bootstrap tools]: https://github.com/NixOS/nixpkgs/tree/master/pkgs/stdenv/linux/bootstrap-files
-[nixpkgs]: https://github.com/NixOS/nixpkgs
-
-## Windows note
-
-Note that all of this still only applies to Unix systems - primarily because Nix doesn't work on Windows.
-
-If you have an idea how to port some of the functionality to Windows, get in touch.
diff --git a/pkgs/development/lisp-modules-new-obsolete/doc/quicklisp.md b/pkgs/development/lisp-modules-new-obsolete/doc/quicklisp.md
deleted file mode 100644
index 964cacec9bac..000000000000
--- a/pkgs/development/lisp-modules-new-obsolete/doc/quicklisp.md
+++ /dev/null
@@ -1,54 +0,0 @@
-## Importing package definitions from Quicklisp
-
-This page documents how to import packages from Quicklisp.
-
-## Nix dumper
-
-Run:
-
-```
-$ nix-shell
-$ sbcl --script ql-import.lisp
-```
-
-This command runs a program that dumps a `imported.nix` file
-containing Nix expressions for all packages in Quicklisp. They will be
-automatically picked up by the `lispPackagesFor` and
-`lispWithPackages` API functions.
-
-It also creates a 'packages.sqlite' file. It's used during the
-generation of the 'imported.nix' file and can be safely removed. It
-contains the full information of Quicklisp packages, so you can use it
-to query the dependency graphs using SQL, if you're interested.
-
-## Tarball hashes
-
-The Nix dumper program will re-use hashes from "imported.nix" if it
-detects that it's being run for the first time. This saves a lot of
-bandwidth by not having to download each tarball again.
-
-But when upgrading the Quicklisp release URL, this can take a while
-because it needs to fetch the source code of each new system to
-compute its SHA256 hash. This is because Quicklisp only provides a
-SHA1 , and Nix's `builtins.fetchTarball` requires a SHA256.
-
-Later on, the hashes are cached in `packages.sqlite`, and are reused
-in subsequent invocations. Therefore you might want to keep the
-'packages.sqlite' file around if you'd like to keep hashes of
-historical Quicklisp tarballs, for example for archival purposes.
-
-## Choosing a Quicklisp release
-
-Quicklisp release url's are currently hard-coded and can be changed
-directly in the source code. See the `import` directory.
-
-## Native and Java libraries
-
-At the moment, native and Java libraries need to be added manually to
-imported systems in `ql.nix` on an as-needed basis.
-
-## Dependencies from packages.nix
-
-Also worth noting is that systems imported from Quicklisp will prefer
-packages from `packages.nix` as dependencies, so that custom versions
-can be provided or broken versions replaced.
diff --git a/pkgs/development/lisp-modules-new-obsolete/doc/quirks.md b/pkgs/development/lisp-modules-new-obsolete/doc/quirks.md
deleted file mode 100644
index 4e6e383d0a0d..000000000000
--- a/pkgs/development/lisp-modules-new-obsolete/doc/quirks.md
+++ /dev/null
@@ -1,5 +0,0 @@
-## Quirks
-
-- `+` in names are converted to `_plus{_,}`: `cl+ssl`->`cl_plus_ssl`, `alexandria+`->`alexandria_plus`
-- `.` to `_dot_`: `iolib.base`->`iolib_dot_base`
-- names starting with a number have a `_` prepended (`3d-vectors`->`_3d-vectors`)
diff --git a/pkgs/development/lisp-modules-new-obsolete/examples/abcl-package-set.nix b/pkgs/development/lisp-modules-new-obsolete/examples/abcl-package-set.nix
deleted file mode 100644
index ffb93e6ba1f0..000000000000
--- a/pkgs/development/lisp-modules-new-obsolete/examples/abcl-package-set.nix
+++ /dev/null
@@ -1,24 +0,0 @@
-# To run this example from a nix repl, run:
-#  $ nix repl
-#  nix-repl> abcl-packages = import ./abcl-package-set.nix
-#  nix-repl> builtins.attrNames abcl-packages
-#  nix-repl> builtins.length (builtins.attrNames abcl-packages)
-#
-# The import returns a package set, which you can use for example to
-# discover what packages are available in lispWithPackages:
-#
-#  nix-repl> abcl-packages.cl-op<TAB>
-#  nix-repl> abcl-packages.cl-opengl
-#  nix-repl> # cool, we can use cl-opengl
-#  nix-repl> # some-abcl-with-packages (p: [ p.cl-opengl ])
-
-
-let
-
-  pkgs = import ../../../../default.nix {};
-
-  abcl = "${pkgs.abcl}/bin/abcl --batch --load";
-
-  abcl-packages = pkgs.lispPackages_new.lispPackagesFor abcl;
-
-in abcl-packages
diff --git a/pkgs/development/lisp-modules-new-obsolete/examples/abcl-with-packages.nix b/pkgs/development/lisp-modules-new-obsolete/examples/abcl-with-packages.nix
deleted file mode 100644
index d93bcbd669ae..000000000000
--- a/pkgs/development/lisp-modules-new-obsolete/examples/abcl-with-packages.nix
+++ /dev/null
@@ -1,23 +0,0 @@
-# To run this example from a nix repl, run:
-#  $ nix repl
-#  nix-repl> abcl-with-packages = import ./abcl-with-packages.nix
-#  nix-repl> :b abcl-with-packages (p: [ p.cffi ])
-#
-# The import returns a function, which you can call to get access to
-# thousands of libraries, like, cffi. This works in ABCL by closing
-# over the JNA dependency:
-#
-#  nix-repl> awp = abcl-with-packages (p: [ p.cffi ])
-#  nix-repl> awp.CLASSPATH
-#  nix-repl> cffi = builtins.head (awp.lispLibs)
-#  nix-repl> cffi.javaLibs
-
-let
-
-  pkgs = import ../../../../default.nix {};
-
-  abcl = "${pkgs.abcl}/bin/abcl --batch --load";
-
-  abcl-with-packages = pkgs.lispPackages_new.lispWithPackages abcl;
-
-in abcl-with-packages
diff --git a/pkgs/development/lisp-modules-new-obsolete/examples/bordeaux-threads.nix b/pkgs/development/lisp-modules-new-obsolete/examples/bordeaux-threads.nix
deleted file mode 100644
index 31a53b0f949b..000000000000
--- a/pkgs/development/lisp-modules-new-obsolete/examples/bordeaux-threads.nix
+++ /dev/null
@@ -1,43 +0,0 @@
-# To run this example from the command line, run this command:
-#
-# $ nix-build ./bordeaux-threads.nix
-# $ ls ./result/
-#
-# To run from a nix repl, run:
-# $ nix repl
-# nix-repl> bt = import ./bordeaux-threads.nix
-# nix-repl> :b bt
-#
-# In the `result` directory you can find .fasl files of the
-# bordeaux-threads library:
-#
-#  $ ls -l ./result/src/
-
-let
-
-  pkgs = import ../../../../default.nix {};
-
-  sbcl = "${pkgs.sbcl}/bin/sbcl --script";
-
-  alexandria = pkgs.lispPackages_new.build-asdf-system {
-    pname = "alexandria";
-    version = "v1.4";
-    src = pkgs.fetchzip {
-      url = "https://gitlab.common-lisp.net/alexandria/alexandria/-/archive/v1.4/alexandria-v1.4.tar.gz";
-      sha256 = "0r1adhvf98h0104vq14q7y99h0hsa8wqwqw92h7ghrjxmsvz2z6l";
-    };
-    lisp = sbcl;
-  };
-
-  bordeaux-threads = pkgs.lispPackages_new.build-asdf-system {
-    pname = "bordeaux-threads";
-    version = "0.8.8";
-    src = pkgs.fetchzip {
-      url = "https://github.com/sionescu/bordeaux-threads/archive/v0.8.8.tar.gz";
-      sha256 = "19i443fz3488v1pbbr9x24y8h8vlyhny9vj6c9jk5prm702awrp6";
-    };
-    lisp = sbcl;
-    lispLibs = [ alexandria ];
-  };
-
-in bordeaux-threads
diff --git a/pkgs/development/lisp-modules-new-obsolete/examples/sbcl-with-bt.nix b/pkgs/development/lisp-modules-new-obsolete/examples/sbcl-with-bt.nix
deleted file mode 100644
index c817a6838d9f..000000000000
--- a/pkgs/development/lisp-modules-new-obsolete/examples/sbcl-with-bt.nix
+++ /dev/null
@@ -1,31 +0,0 @@
-# To run this example from the command line, run this command:
-#  $ nix-build ./sbcl-with-bt.nix
-#  $ ls ./result/
-#
-# To run from a nix repl, run:
-#  $ nix repl
-#  nix-repl> sbcl-bt = import ./sbcl-with-bt.nix
-#  nix-repl> :b sbcl-bt
-#
-# In the `result/bin` directory you can find an `sbcl` executable
-# that, when started, is able to load the pre-compiled
-# bordeaux-threads from the Nix store:
-#  $ ./result/bin/sbcl
-#  * (require :asdf)
-#  * (asdf:load-system :bordeaux-threads)
-
-let
-
-  pkgs = import ../../../../default.nix {};
-
-  sbcl = "${pkgs.sbcl}/bin/sbcl --script";
-
-  bordeaux-threads = import ./bordeaux-threads.nix;
-
-  sbclPackages = { inherit bordeaux-threads; };
-
-  sbclWithPackages = pkgs.lispPackages_new.lispWithPackagesInternal sbclPackages;
-
-  sbcl-bt = sbclWithPackages (p: [ p.bordeaux-threads ]);
-
-in sbcl-bt
diff --git a/pkgs/development/lisp-modules-new-obsolete/import/api.lisp b/pkgs/development/lisp-modules-new-obsolete/import/api.lisp
deleted file mode 100644
index ea5f3bcc1934..000000000000
--- a/pkgs/development/lisp-modules-new-obsolete/import/api.lisp
+++ /dev/null
@@ -1,18 +0,0 @@
-(defpackage org.lispbuilds.nix/api
-  (:documentation "Public interface of org.lispbuilds.nix")
-  (:use :cl)
-  (:export
-   :import-lisp-packages
-   :database->nix-expression))
-
-(in-package org.lispbuilds.nix/api)
-
-(defgeneric import-lisp-packages (repository database)
-  (:documentation
-   "Import Lisp packages (ASDF systems) from repository (Quicklisp,
-   Ultralisp etc.) into a package database."))
-
-(defgeneric database->nix-expression (database outfile)
-  (:documentation
-   "Generate a nix expression from the package database and write it
-   into outfile."))
diff --git a/pkgs/development/lisp-modules-new-obsolete/import/database/sqlite.lisp b/pkgs/development/lisp-modules-new-obsolete/import/database/sqlite.lisp
deleted file mode 100644
index 0fd0807fc6b9..000000000000
--- a/pkgs/development/lisp-modules-new-obsolete/import/database/sqlite.lisp
+++ /dev/null
@@ -1,162 +0,0 @@
-(defpackage org.lispbuilds.nix/database/sqlite
-  (:use :cl)
-  (:import-from :str)
-  (:import-from :sqlite)
-  (:import-from :alexandria :read-file-into-string)
-  (:import-from :arrow-macros :->>)
-  (:import-from
-   :org.lispbuilds.nix/util
-   :replace-regexes)
-  (:import-from
-   :org.lispbuilds.nix/nix
-   :nix-eval
-   :system-master
-   :nixify-symbol
-   :make-pname
-   :*nix-attrs-depth*)
-  (:import-from
-   :org.lispbuilds.nix/api
-   :database->nix-expression)
-  (:export :sqlite-database :init-db)
-  (:local-nicknames
-   (:json :com.inuoe.jzon)))
-
-(in-package org.lispbuilds.nix/database/sqlite)
-
-(defclass sqlite-database ()
-  ((url :initarg :url
-        :reader database-url
-        :initform (error "url required"))
-   (init-file :initarg :init-file
-              :reader init-file
-              :initform (error "init file required"))))
-
-(defun init-db (db init-file)
-  (let ((statements (->> (read-file-into-string init-file)
-                         (replace-regexes '(".*--.*") '(""))
-                         (substitute #\Space #\Newline)
-                         (str:collapse-whitespaces)
-                         (str:split #\;)
-                         (mapcar #'str:trim)
-                         (remove-if #'str:emptyp))))
-    (sqlite:with-transaction db
-      (dolist (s statements)
-        (sqlite:execute-non-query db s)))))
-
-
-;; Writing Nix
-
-(defparameter prelude "
-# This file was auto-generated by nix-quicklisp.lisp
-
-{ runCommand, fetchzip, pkgs, ... }:
-
-# Ensures that every non-slashy `system` exists in a unique .asd file.
-# (Think cl-async-base being declared in cl-async.asd upstream)
-#
-# This is required because we're building and loading a system called
-# `system`, not `asd`, so otherwise `system` would not be loadable
-# without building and loading `asd` first.
-#
-let createAsd = { url, sha256, asd, system }:
-   let
-     src = fetchzip { inherit url sha256; };
-   in runCommand \"source\" {} ''
-      mkdir -pv $out
-      cp -r ${src}/* $out
-      find $out -name \"${asd}.asd\" | while read f; do mv -fv $f $(dirname $f)/${system}.asd || true; done
-  '';
-
-getAttr = builtins.getAttr;
-
-in {")
-
-;; Random compilation errors
-(defparameter +broken-packages+
-  (list
-   ;; no dispatch function defined for #\t
-   "hu.dwim.logger"
-   "hu.dwim.serializer"
-   "hu.dwim.quasi-quote"
-   ;; Tries to write in $HOME
-   "ubiquitous"
-   "math"
-   ;; Upstream bad packaging, multiple systems in clml.blas.asd
-   "clml.blas.hompack"
-   ;; Fails on SBCL due to heap exhaustion
-   "magicl"
-   ;; Probably missing dependency in QL data
-   "mcclim-bezier"
-   ;; Missing dependency on c2ffi cffi extension
-   "hu.dwim.zlib"
-   ;; Missing libgvc.so native library
-   "hu.dwim.graphviz"
-   ;; These require libRmath.so, but I don't know where to get it from
-   "cl-random"
-   "cl-random-tests"
-   ))
-
-(defmethod database->nix-expression ((database sqlite-database) outfile)
-  (sqlite:with-open-database (db (database-url database))
-    (with-open-file (f outfile
-                       :direction :output
-                       :if-exists :supersede)
-
-      ;; Fix known problematic packages before dumping the nix file.
-      (sqlite:execute-non-query db
-       "create temp table fixed_systems as select * from system_view")
-
-      (sqlite:execute-non-query db
-       "alter table fixed_systems add column systems")
-
-      (sqlite:execute-non-query db
-       "update fixed_systems set systems = json_array(name)")
-
-      (sqlite:execute-non-query db
-       "alter table fixed_systems add column asds")
-
-      (sqlite:execute-non-query db
-       "update fixed_systems set asds = json_array(name)")
-
-      (format f prelude)
-
-      (dolist (p (sqlite:execute-to-list db "select * from fixed_systems"))
-        (destructuring-bind (name version asd url sha256 deps systems asds) p
-          (format f "~%  ")
-          (let ((*nix-attrs-depth* 1))
-            (format
-             f
-             "~a = ~a;"
-             (nix-eval `(:symbol ,name))
-             (nix-eval
-              `(:attrs
-                ("pname" (:string ,(make-pname name)))
-                ("version" (:string ,version))
-                ("asds" (:list
-                         ,@(mapcar (lambda (asd)
-                                     `(:string ,(system-master asd)))
-                                   (coerce (json:parse asds) 'list))))
-                ("src" (:funcall
-                        "createAsd"
-                        (:attrs
-                         ("url" (:string ,url))
-                         ("sha256" (:string ,sha256))
-                         ("system" (:string ,(system-master name)))
-                         ("asd" (:string ,asd)))))
-                ("systems" (:list
-                            ,@(mapcar (lambda (sys)
-                                        `(:string ,sys))
-                                      (coerce (json:parse systems) 'list))))
-                ("lispLibs" (:list
-                             ,@(mapcar (lambda (dep)
-                                         `(:funcall
-                                           "getAttr"
-                                           (:string ,(nixify-symbol dep))
-                                           (:symbol "pkgs")))
-                                       (remove "asdf"
-                                               (str:split-omit-nulls #\, deps)
-                                               :test #'string=))))
-                ,@(when (or (find #\/ name)
-                            (find name +broken-packages+ :test #'string=))
-                    '(("meta" (:attrs ("broken" (:symbol "true"))))))))))))
-      (format f "~%}~%"))))
diff --git a/pkgs/development/lisp-modules-new-obsolete/import/init.sql b/pkgs/development/lisp-modules-new-obsolete/import/init.sql
deleted file mode 100644
index 872d51d598ff..000000000000
--- a/pkgs/development/lisp-modules-new-obsolete/import/init.sql
+++ /dev/null
@@ -1,41 +0,0 @@
-CREATE TABLE IF NOT EXISTS sha256 (
-       id        integer PRIMARY KEY AUTOINCREMENT,
-       url       text    UNIQUE,
-       hash      text    NOT NULL,
-       created   real    DEFAULT (julianday('now'))
-);
-
-CREATE TABLE IF NOT EXISTS system (
-       id        integer PRIMARY KEY AUTOINCREMENT,
-       name      text NOT NULL,
-       version   text NOT NULL,
-       asd       text NOT NULL,
-       created   real    DEFAULT (julianday('now')),
-       UNIQUE(name, version)
-);
-
-CREATE TABLE IF NOT EXISTS dep (
-       system_id integer NOT NULL REFERENCES system(id),
-       dep_id    integer NOT NULL REFERENCES system(id),
-       PRIMARY KEY (system_id, dep_id)
-);
-
-CREATE TABLE IF NOT EXISTS src (
-       sha256_id integer REFERENCES sha256(id),
-       system_id integer UNIQUE REFERENCES system(id)
-);
-
-DROP VIEW IF EXISTS system_view;
-CREATE VIEW IF NOT EXISTS system_view AS
-  SELECT
-    sys.name,
-    sys.version,
-    sys.asd,
-    sha.url,
-    sha.hash,
-    group_concat((SELECT name FROM system WHERE id = dep.dep_id)) as deps
-  FROM system sys
-  JOIN src ON src.system_id = sys.id
-  JOIN sha256 sha ON sha.id = src.sha256_id
-  LEFT JOIN dep ON dep.system_id = sys.id
-  GROUP BY sys.name;
diff --git a/pkgs/development/lisp-modules-new-obsolete/import/main.lisp b/pkgs/development/lisp-modules-new-obsolete/import/main.lisp
deleted file mode 100644
index c36db3731c8a..000000000000
--- a/pkgs/development/lisp-modules-new-obsolete/import/main.lisp
+++ /dev/null
@@ -1,40 +0,0 @@
-(defpackage org.lispbuilds.nix/main
-  (:use :common-lisp
-        :org.lispbuilds.nix/database/sqlite
-        :org.lispbuilds.nix/repository/quicklisp
-        :org.lispbuilds.nix/api))
-
-(in-package org.lispbuilds.nix/main)
-
-(defun resource (name type)
-  (make-pathname
-   :defaults (asdf:system-source-directory :org.lispbuilds.nix)
-   :name name
-   :type type))
-
-(defvar *sqlite*
-  (make-instance
-   'sqlite-database
-   :init-file (resource "init" "sql")
-   :url "packages.sqlite"))
-
-(defvar *quicklisp*
-  (make-instance
-   'quicklisp-repository
-   :dist-url
-   "https://beta.quicklisp.org/dist/quicklisp/2022-11-07/"))
-
-(defun run-importers ()
-  (import-lisp-packages *quicklisp* *sqlite*)
-  (format t "Imported packages from quicklisp to ~A~%"
-          (truename "packages.sqlite")))
-
-(defun gen-nix-file ()
-  (database->nix-expression *sqlite* "imported.nix")
-  (format t "Dumped nix file to ~a~%"
-          (truename "imported.nix")))
-
-(defun main ()
-  (format t "~%")
-  (run-importers)
-  (gen-nix-file))
diff --git a/pkgs/development/lisp-modules-new-obsolete/import/nix.lisp b/pkgs/development/lisp-modules-new-obsolete/import/nix.lisp
deleted file mode 100644
index c6de5a4c9932..000000000000
--- a/pkgs/development/lisp-modules-new-obsolete/import/nix.lisp
+++ /dev/null
@@ -1,81 +0,0 @@
-(defpackage org.lispbuilds.nix/nix
-  (:documentation "Utilities for generating Nix code")
-  (:use :cl)
-  (:import-from :str)
-  (:import-from :ppcre)
-  (:import-from :arrow-macros :->>)
-  (:import-from :org.lispbuilds.nix/util :replace-regexes)
-  (:export
-   :nix-eval
-   :system-master
-   :nixify-symbol
-   :make-pname
-   :*nix-attrs-depth*))
-
-(in-package org.lispbuilds.nix/nix)
-
-;; Path names are alphanumeric and can include the symbols +-._?= and
-;; must not begin with a period.
-(defun make-pname (string)
-  (replace-regexes '("^[.]" "[^a-zA-Z0-9+-._?=]")
-                   '("_" "_")
-                   string))
-
-(defun system-master (system)
-  (first (str:split "/" system)))
-
-;;;; Nix generation
-
-(defun nix-eval (exp)
-  (assert (consp exp))
-  (ecase (car exp)
-    (:string (nix-string (cadr exp)))
-    (:list (apply #'nix-list (rest exp)))
-    (:funcall (apply #'nix-funcall (rest exp)))
-    (:attrs (nix-attrs (cdr exp)))
-    (:merge (apply #'nix-merge (cdr exp)))
-    (:symbol (nix-symbol (cadr exp)))))
-
-(defun nix-string (object)
-  (format nil "\"~a\"" object))
-
-(defun nixify-symbol (string)
-  (flet ((fix-special-chars (str)
-           (replace-regexes '("[+]$" "[+][/]" "[+]" "[.]" "[/]")
-                            '("_plus" "_plus/" "_plus_" "_dot_" "_slash_")
-                            str)))
-    (if (ppcre:scan "^[0-9]" string)
-        (str:concat "_" (fix-special-chars string))
-        (fix-special-chars string))))
-
-
-(defun nix-symbol (object)
-  (nixify-symbol (format nil "~a" object)))
-
-(defun nix-list (&rest things)
-  (format nil "[ ~{~A~^ ~} ]" (mapcar 'nix-eval things)))
-(defvar *nix-attrs-depth* 0)
-
-(defun nix-attrs (keyvals)
-  (let ((*nix-attrs-depth* (1+ *nix-attrs-depth*)))
-    (format
-     nil
-     (->> "{~%*depth*~{~{~A = ~A;~}~^~%*depth*~}~%*depth-1*}"
-          (str:replace-all "*depth*" (str:repeat *nix-attrs-depth* "  "))
-          (str:replace-all "*depth-1*" (str:repeat (1- *nix-attrs-depth*) "  ")))
-     (mapcar (lambda (keyval)
-               (let ((key (car keyval))
-                     (val (cadr keyval)))
-                 (list (nix-symbol key)
-                       (nix-eval val))))
-             keyvals))))
-
-(defun nix-funcall (fun &rest args)
-  (format nil "(~a ~{~a~^ ~})"
-          (nixify-symbol fun)
-          (mapcar 'nix-eval args)))
-
-(defun nix-merge (a b)
-  (format nil "(~a // ~b)"
-          (nix-eval a)
-          (nix-eval b)))
diff --git a/pkgs/development/lisp-modules-new-obsolete/import/org.lispbuilds.nix.asd b/pkgs/development/lisp-modules-new-obsolete/import/org.lispbuilds.nix.asd
deleted file mode 100644
index 1a67452312d4..000000000000
--- a/pkgs/development/lisp-modules-new-obsolete/import/org.lispbuilds.nix.asd
+++ /dev/null
@@ -1,24 +0,0 @@
-(defsystem org.lispbuilds.nix
-  :class :package-inferred-system
-  :description "Utilities for importing ASDF systems into Nix"
-  :depends-on (
-               :alexandria
-               :str
-               :cl-ppcre
-               :sqlite
-               :dexador
-               :arrow-macros
-               :com.inuoe.jzon
-               :org.lispbuilds.nix/api
-               :org.lispbuilds.nix/repository/quicklisp
-               :org.lispbuilds.nix/database/sqlite
-               ))
-
-
-(register-system-packages
- "cl-ppcre"
- '(:ppcre))
-
-(register-system-packages
- "dexador"
- '(:dex))
diff --git a/pkgs/development/lisp-modules-new-obsolete/import/repository/quicklisp.lisp b/pkgs/development/lisp-modules-new-obsolete/import/repository/quicklisp.lisp
deleted file mode 100644
index 3a45e06c3aa3..000000000000
--- a/pkgs/development/lisp-modules-new-obsolete/import/repository/quicklisp.lisp
+++ /dev/null
@@ -1,199 +0,0 @@
-(defpackage org.lispbuilds.nix/repository/quicklisp
-  (:use :cl)
-  (:import-from :dex)
-  (:import-from :alexandria :read-file-into-string :ensure-list)
-  (:import-from :arrow-macros :->>)
-  (:import-from :str)
-  (:import-from
-   :org.lispbuilds.nix/database/sqlite
-   :sqlite-database
-   :init-db
-   :database-url
-   :init-file)
-  (:import-from
-   :org.lispbuilds.nix/api
-   :import-lisp-packages)
-  (:import-from
-   :org.lispbuilds.nix/util
-   :replace-regexes)
-  (:export :quicklisp-repository)
-  (:local-nicknames
-   (:json :com.inuoe.jzon)))
-
-(in-package org.lispbuilds.nix/repository/quicklisp)
-
-(defclass quicklisp-repository ()
-  ((dist-url :initarg :dist-url
-             :reader dist-url
-             :initform (error "dist url required"))))
-
-(defun clear-line ()
-  (write-char #\Return *error-output*)
-  (write-char #\Escape *error-output*)
-  (write-char #\[ *error-output*)
-  (write-char #\K *error-output*))
-
-(defun status (&rest format-args)
-  (clear-line)
-  (apply #'format (list* *error-output* format-args))
-  (force-output *error-output*))
-
-;; TODO: This should not know about the imported.nix file.
-(defun init-tarball-hashes (database)
-  (status "no packages.sqlite - will pre-fill tarball hashes from ~A to save time~%"
-          (truename "imported.nix"))
-  (let* ((lines (uiop:read-file-lines "imported.nix"))
-         (lines (remove-if-not
-                  (lambda (line)
-                    (let ((trimmed (str:trim-left line)))
-                      (or (str:starts-with-p "url = " trimmed)
-                          (str:starts-with-p "sha256 = " trimmed))))
-                  lines))
-         (lines (mapcar
-                 (lambda (line)
-                   (multiple-value-bind (whole groups)
-                       (ppcre:scan-to-strings "\"\(.*\)\"" line)
-                     (declare (ignore whole))
-                     (svref groups 0)))
-                 lines)))
-    (sqlite:with-open-database (db (database-url database))
-      (init-db db (init-file database))
-      (sqlite:with-transaction db
-        (loop while lines do
-          (sqlite:execute-non-query db
-            "insert or ignore into sha256(url,hash) values (?,?)"
-            (prog1 (first lines) (setf lines (rest lines)))
-            (prog1 (first lines) (setf lines (rest lines))))))
-      (status "OK, imported ~A hashes into DB.~%"
-              (sqlite:execute-single db
-                 "select count(*) from sha256")))))
-
-(defmethod import-lisp-packages ((repository quicklisp-repository)
-                                 (database sqlite-database))
-
-  ;; If packages.sqlite is missing, we should populate the sha256
-  ;; table to speed things up.
-  (unless (probe-file (database-url database))
-    (init-tarball-hashes database))
-
-  (let* ((db (sqlite:connect (database-url database)))
-         (systems-url (str:concat (dist-url repository) "systems.txt"))
-         (releases-url (str:concat (dist-url repository) "releases.txt"))
-         (systems-lines (rest (butlast (str:split #\Newline (dex:get systems-url)))))
-         (releases-lines (rest (butlast (str:split #\Newline (dex:get releases-url))))))
-
-    (flet ((sql-query (sql &rest params)
-             (apply #'sqlite:execute-to-list (list* db sql params))))
-
-      ;; Ensure database schema
-      (init-db db (init-file database))
-
-      ;; Prepare temporary tables for efficient access
-      (sql-query "create temp table if not exists quicklisp_system
-                  (project, asd, name unique, deps)")
-
-      (sql-query "create temp table if not exists quicklisp_release
-                  (project unique, url, size, md5, sha1, prefix not null, asds)")
-
-      (sqlite:with-transaction db
-        (dolist (line systems-lines)
-          (destructuring-bind (project asd name &rest deps)
-              (str:words line)
-            (sql-query
-             "insert or ignore into quicklisp_system values(?,?,?,?)"
-             project asd name (json:stringify (coerce deps 'vector))))))
-
-      (sqlite:with-transaction db
-        (dolist (line releases-lines)
-          (destructuring-bind (project url size md5 sha1 prefix &rest asds)
-              (str:words line)
-            (sql-query
-             "insert or ignore into quicklisp_release values(?,?,?,?,?,?,?)"
-             project url size md5 sha1 prefix (json:stringify (coerce
-                                                               asds
-                                                               'vector))))))
-
-      (sqlite:with-transaction db
-        ;; Should these be temp tables, that then get queried by
-        ;; system name? This looks like it uses a lot of memory.
-        (let ((systems
-                (sql-query
-                 "with pkg as (
-                    select
-                      name, asd, url, deps,
-                      ltrim(replace(prefix, r.project, ''), '-_') as version
-                    from quicklisp_system s, quicklisp_release r
-                    where s.project = r.project
-                  )
-                  select
-                    name, version, asd, url,
-                    (select json_group_array(
-                       json_array(value, (select version from pkg where name=value))
-                     )
-                     from json_each(deps)) as deps
-                  from pkg"
-                 )))
-
-          ;; First pass: insert system and source tarball informaton.
-          ;; Can't insert dependency information, because this works
-          ;; on system ids in the database and they don't exist
-          ;; yet. Could it be better to just base dependencies on
-          ;; names? But then ACID is lost.
-          (dolist (system systems)
-            (destructuring-bind (name version asd url deps) system
-              (declare (ignore deps))
-              (status "importing system '~a-~a'" name version)
-              (let ((hash (nix-prefetch-tarball url db)))
-                (sql-query
-                 "insert or ignore into system(name,version,asd) values (?,?,?)"
-                 name version asd)
-                (sql-query
-                 "insert or ignore into sha256(url,hash) values (?,?)"
-                 url hash)
-                (sql-query
-                 "insert or ignore into src values
-                  ((select id from sha256 where url=?),
-                   (select id from system where name=? and version=?))"
-                 url name version))))
-
-          ;; Second pass: connect the in-database systems with
-          ;; dependency information
-          (dolist (system systems)
-            (destructuring-bind (name version asd url deps) system
-              (declare (ignore asd url))
-              (dolist (dep (coerce (json:parse deps) 'list))
-                (destructuring-bind (dep-name dep-version) (coerce dep 'list)
-                  (if (eql dep-version 'NULL)
-                    (warn "Bad data in Quicklisp: ~a has no version" dep-name)
-                  (sql-query
-                    "insert or ignore into dep values
-                     ((select id from system where name=? and version=?),
-                      (select id from system where name=? and version=?))"
-                    name version
-                    dep-name dep-version))))))))))
-
-  (write-char #\Newline *error-output*))
-
-(defun shell-command-to-string (cmd)
-  ;; Clearing the library path is needed to prevent a bug, where the
-  ;; called subprocess uses a different glibc than the SBCL process
-  ;; is. In that case, the call to execve attempts to load the
-  ;; libraries used by SBCL from LD_LIBRARY_PATH using a different
-  ;; glibc than they expect, which errors out.
-  (let ((ld-library-path  (uiop:getenv "LD_LIBRARY_PATH")))
-    (setf (uiop:getenv "LD_LIBRARY_PATH") "")
-    (unwind-protect
-         (uiop:run-program cmd :output '(:string :stripped t))
-      (setf (uiop:getenv "LD_LIBRARY_PATH") ld-library-path))))
-
-(defun nix-prefetch-tarball (url db)
-  (restart-case
-      (compute-sha256 url db)
-    (try-again ()
-      :report "Try downloading again"
-      (nix-prefetch-tarball url db))))
-
-(defun compute-sha256 (url db)
-  (or (sqlite:execute-single db "select hash from sha256 where url=?" url)
-      (let ((sha256 (shell-command-to-string (str:concat "nix-prefetch-url --unpack " url))))
-        sha256)))
diff --git a/pkgs/development/lisp-modules-new-obsolete/import/util.lisp b/pkgs/development/lisp-modules-new-obsolete/import/util.lisp
deleted file mode 100644
index 043276305e02..000000000000
--- a/pkgs/development/lisp-modules-new-obsolete/import/util.lisp
+++ /dev/null
@@ -1,16 +0,0 @@
-(defpackage org.lispbuilds.nix/util
-  (:use :cl)
-  (:import-from :ppcre)
-  (:export
-   :replace-regexes))
-
-(in-package org.lispbuilds.nix/util)
-
-(defun replace-regexes (from to str)
-  (assert (= (length from) (length to)))
-  (if (null from)
-      str
-      (replace-regexes
-       (rest from)
-       (rest to)
-       (ppcre:regex-replace-all (first from) str (first to)))))
diff --git a/pkgs/development/lisp-modules-new-obsolete/imported.nix b/pkgs/development/lisp-modules-new-obsolete/imported.nix
deleted file mode 100644
index a592eb845075..000000000000
--- a/pkgs/development/lisp-modules-new-obsolete/imported.nix
+++ /dev/null
@@ -1,72088 +0,0 @@
-
-# This file was auto-generated by nix-quicklisp.lisp
-
-{ runCommand, fetchzip, pkgs, ... }:
-
-# Ensures that every non-slashy `system` exists in a unique .asd file.
-# (Think cl-async-base being declared in cl-async.asd upstream)
-#
-# This is required because we're building and loading a system called
-# `system`, not `asd`, so otherwise `system` would not be loadable
-# without building and loading `asd` first.
-#
-let createAsd = { url, sha256, asd, system }:
-   let
-     src = fetchzip { inherit url sha256; };
-   in runCommand "source" {} ''
-      mkdir -pv $out
-      cp -r ${src}/* $out
-      find $out -name "${asd}.asd" | while read f; do mv -fv $f $(dirname $f)/${system}.asd || true; done
-  '';
-
-getAttr = builtins.getAttr;
-
-in {
-  _1am = {
-    pname = "1am";
-    version = "20141106-git";
-    asds = [ "1am" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/1am/2014-11-06/1am-20141106-git.tgz";
-      sha256 = "05ss4nz1jb9kb796295482b62w5cj29msfj8zis33sp2rw2vmv2g";
-      system = "1am";
-      asd = "1am";
-    });
-    systems = [ "1am" ];
-    lispLibs = [  ];
-  };
-  _2d-array = {
-    pname = "2d-array";
-    version = "export-to-quicklisp-502a46e2-git";
-    asds = [ "2d-array" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/regular-type-expression/2020-02-18/regular-type-expression-export-to-quicklisp-502a46e2-git.tgz";
-      sha256 = "1im07p7sbbhdjx9v8fx3v1xdqx1085lra6fsb4sh2bssw7m5xfxi";
-      system = "2d-array";
-      asd = "2d-array";
-    });
-    systems = [ "2d-array" ];
-    lispLibs = [  ];
-  };
-  _2d-array-test = {
-    pname = "2d-array-test";
-    version = "export-to-quicklisp-502a46e2-git";
-    asds = [ "2d-array-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/regular-type-expression/2020-02-18/regular-type-expression-export-to-quicklisp-502a46e2-git.tgz";
-      sha256 = "1im07p7sbbhdjx9v8fx3v1xdqx1085lra6fsb4sh2bssw7m5xfxi";
-      system = "2d-array-test";
-      asd = "2d-array-test";
-    });
-    systems = [ "2d-array-test" ];
-    lispLibs = [ (getAttr "_2d-array" pkgs) (getAttr "scrutiny" pkgs) ];
-  };
-  _3b-bmfont = {
-    pname = "3b-bmfont";
-    version = "20220331-git";
-    asds = [ "3b-bmfont" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/3b-bmfont/2022-03-31/3b-bmfont-20220331-git.tgz";
-      sha256 = "0v4lcrlpx60ayg0g5b10q2hjh1iaanln4ck0hm1rvjxm39gl2d86";
-      system = "3b-bmfont";
-      asd = "3b-bmfont";
-    });
-    systems = [ "3b-bmfont" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "split-sequence" pkgs) ];
-  };
-  _3b-bmfont_slash_common = {
-    pname = "3b-bmfont_common";
-    version = "20220331-git";
-    asds = [ "3b-bmfont" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/3b-bmfont/2022-03-31/3b-bmfont-20220331-git.tgz";
-      sha256 = "0v4lcrlpx60ayg0g5b10q2hjh1iaanln4ck0hm1rvjxm39gl2d86";
-      system = "3b-bmfont";
-      asd = "3b-bmfont";
-    });
-    systems = [ "3b-bmfont/common" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "split-sequence" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  _3b-bmfont_slash_json = {
-    pname = "3b-bmfont_json";
-    version = "20220331-git";
-    asds = [ "3b-bmfont" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/3b-bmfont/2022-03-31/3b-bmfont-20220331-git.tgz";
-      sha256 = "0v4lcrlpx60ayg0g5b10q2hjh1iaanln4ck0hm1rvjxm39gl2d86";
-      system = "3b-bmfont";
-      asd = "3b-bmfont";
-    });
-    systems = [ "3b-bmfont/json" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "jsown" pkgs) (getAttr "split-sequence" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  _3b-bmfont_slash_text = {
-    pname = "3b-bmfont_text";
-    version = "20220331-git";
-    asds = [ "3b-bmfont" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/3b-bmfont/2022-03-31/3b-bmfont-20220331-git.tgz";
-      sha256 = "0v4lcrlpx60ayg0g5b10q2hjh1iaanln4ck0hm1rvjxm39gl2d86";
-      system = "3b-bmfont";
-      asd = "3b-bmfont";
-    });
-    systems = [ "3b-bmfont/text" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "split-sequence" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  _3b-bmfont_slash_xml = {
-    pname = "3b-bmfont_xml";
-    version = "20220331-git";
-    asds = [ "3b-bmfont" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/3b-bmfont/2022-03-31/3b-bmfont-20220331-git.tgz";
-      sha256 = "0v4lcrlpx60ayg0g5b10q2hjh1iaanln4ck0hm1rvjxm39gl2d86";
-      system = "3b-bmfont";
-      asd = "3b-bmfont";
-    });
-    systems = [ "3b-bmfont/xml" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cxml" pkgs) (getAttr "flexi-streams" pkgs) (getAttr "split-sequence" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  _3b-hdr = {
-    pname = "3b-hdr";
-    version = "20200925-git";
-    asds = [ "3b-hdr" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/3b-hdr/2020-09-25/3b-hdr-20200925-git.tgz";
-      sha256 = "0bvpdzz88xjwvqapjnkdr44ds3gh5xl3r6r1c2y7x9d6lnvc38jq";
-      system = "3b-hdr";
-      asd = "3b-hdr";
-    });
-    systems = [ "3b-hdr" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "babel" pkgs) (getAttr "parse-number" pkgs) (getAttr "split-sequence" pkgs) ];
-  };
-  _3b-hdr_slash_test = {
-    pname = "3b-hdr_test";
-    version = "20200925-git";
-    asds = [ "3b-hdr" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/3b-hdr/2020-09-25/3b-hdr-20200925-git.tgz";
-      sha256 = "0bvpdzz88xjwvqapjnkdr44ds3gh5xl3r6r1c2y7x9d6lnvc38jq";
-      system = "3b-hdr";
-      asd = "3b-hdr";
-    });
-    systems = [ "3b-hdr/test" ];
-    lispLibs = [ (getAttr "_3b-hdr" pkgs) (getAttr "nibbles" pkgs) (getAttr "parachute" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  _3b-swf = {
-    pname = "3b-swf";
-    version = "20120107-git";
-    asds = [ "3b-swf" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/3b-swf/2012-01-07/3b-swf-20120107-git.tgz";
-      sha256 = "1d74045b6zfxjf0as8n5ji14j5cxsdi3qkqkzcdy3i83whbxkcbm";
-      system = "3b-swf";
-      asd = "3b-swf";
-    });
-    systems = [ "3b-swf" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "chipz" pkgs) (getAttr "cl-jpeg" pkgs) (getAttr "cxml" pkgs) (getAttr "flexi-streams" pkgs) (getAttr "ieee-floats" pkgs) (getAttr "salza2" pkgs) (getAttr "vecto" pkgs) (getAttr "zpng" pkgs) ];
-  };
-  _3b-swf-swc = {
-    pname = "3b-swf-swc";
-    version = "20120107-git";
-    asds = [ "3b-swf-swc" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/3b-swf/2012-01-07/3b-swf-20120107-git.tgz";
-      sha256 = "1d74045b6zfxjf0as8n5ji14j5cxsdi3qkqkzcdy3i83whbxkcbm";
-      system = "3b-swf-swc";
-      asd = "3b-swf-swc";
-    });
-    systems = [ "3b-swf-swc" ];
-    lispLibs = [ (getAttr "_3b-swf" pkgs) (getAttr "cxml" pkgs) (getAttr "zip" pkgs) ];
-  };
-  _3bgl-shader = {
-    pname = "3bgl-shader";
-    version = "20200427-git";
-    asds = [ "3bgl-shader" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/3bgl-shader/2020-04-27/3bgl-shader-20200427-git.tgz";
-      sha256 = "0ykfylmmpcc1kh617c4zbq26r5nf1kgf7cb426fnffhp31pp2xkw";
-      system = "3bgl-shader";
-      asd = "3bgl-shader";
-    });
-    systems = [ "3bgl-shader" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "bordeaux-threads" pkgs) (getAttr "cl-opengl" pkgs) ];
-  };
-  _3bgl-shader-example = {
-    pname = "3bgl-shader-example";
-    version = "20200427-git";
-    asds = [ "3bgl-shader-example" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/3bgl-shader/2020-04-27/3bgl-shader-20200427-git.tgz";
-      sha256 = "0ykfylmmpcc1kh617c4zbq26r5nf1kgf7cb426fnffhp31pp2xkw";
-      system = "3bgl-shader-example";
-      asd = "3bgl-shader-example";
-    });
-    systems = [ "3bgl-shader-example" ];
-    lispLibs = [ (getAttr "_3bgl-shader" pkgs) (getAttr "cl-glu" pkgs) (getAttr "cl-glut" pkgs) (getAttr "mathkit" pkgs) ];
-  };
-  _3bmd = {
-    pname = "3bmd";
-    version = "20220707-git";
-    asds = [ "3bmd" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/3bmd/2022-07-07/3bmd-20220707-git.tgz";
-      sha256 = "14q2csgmxy5ddmmcrp9wqx7dkzk6685zby9qc04yr9y3c1szvdlr";
-      system = "3bmd";
-      asd = "3bmd";
-    });
-    systems = [ "3bmd" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "esrap" pkgs) (getAttr "split-sequence" pkgs) ];
-  };
-  _3bmd-ext-code-blocks = {
-    pname = "3bmd-ext-code-blocks";
-    version = "20220707-git";
-    asds = [ "3bmd-ext-code-blocks" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/3bmd/2022-07-07/3bmd-20220707-git.tgz";
-      sha256 = "14q2csgmxy5ddmmcrp9wqx7dkzk6685zby9qc04yr9y3c1szvdlr";
-      system = "3bmd-ext-code-blocks";
-      asd = "3bmd-ext-code-blocks";
-    });
-    systems = [ "3bmd-ext-code-blocks" ];
-    lispLibs = [ (getAttr "_3bmd" pkgs) (getAttr "alexandria" pkgs) (getAttr "colorize" pkgs) (getAttr "split-sequence" pkgs) ];
-  };
-  _3bmd-ext-definition-lists = {
-    pname = "3bmd-ext-definition-lists";
-    version = "20220707-git";
-    asds = [ "3bmd-ext-definition-lists" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/3bmd/2022-07-07/3bmd-20220707-git.tgz";
-      sha256 = "14q2csgmxy5ddmmcrp9wqx7dkzk6685zby9qc04yr9y3c1szvdlr";
-      system = "3bmd-ext-definition-lists";
-      asd = "3bmd-ext-definition-lists";
-    });
-    systems = [ "3bmd-ext-definition-lists" ];
-    lispLibs = [ (getAttr "_3bmd" pkgs) (getAttr "alexandria" pkgs) (getAttr "colorize" pkgs) ];
-  };
-  _3bmd-ext-math = {
-    pname = "3bmd-ext-math";
-    version = "20220707-git";
-    asds = [ "3bmd-ext-math" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/3bmd/2022-07-07/3bmd-20220707-git.tgz";
-      sha256 = "14q2csgmxy5ddmmcrp9wqx7dkzk6685zby9qc04yr9y3c1szvdlr";
-      system = "3bmd-ext-math";
-      asd = "3bmd-ext-math";
-    });
-    systems = [ "3bmd-ext-math" ];
-    lispLibs = [ (getAttr "_3bmd" pkgs) (getAttr "esrap" pkgs) ];
-  };
-  _3bmd-ext-tables = {
-    pname = "3bmd-ext-tables";
-    version = "20220707-git";
-    asds = [ "3bmd-ext-tables" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/3bmd/2022-07-07/3bmd-20220707-git.tgz";
-      sha256 = "14q2csgmxy5ddmmcrp9wqx7dkzk6685zby9qc04yr9y3c1szvdlr";
-      system = "3bmd-ext-tables";
-      asd = "3bmd-ext-tables";
-    });
-    systems = [ "3bmd-ext-tables" ];
-    lispLibs = [ (getAttr "_3bmd" pkgs) ];
-  };
-  _3bmd-ext-wiki-links = {
-    pname = "3bmd-ext-wiki-links";
-    version = "20220707-git";
-    asds = [ "3bmd-ext-wiki-links" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/3bmd/2022-07-07/3bmd-20220707-git.tgz";
-      sha256 = "14q2csgmxy5ddmmcrp9wqx7dkzk6685zby9qc04yr9y3c1szvdlr";
-      system = "3bmd-ext-wiki-links";
-      asd = "3bmd-ext-wiki-links";
-    });
-    systems = [ "3bmd-ext-wiki-links" ];
-    lispLibs = [ (getAttr "_3bmd" pkgs) ];
-  };
-  _3bmd-youtube = {
-    pname = "3bmd-youtube";
-    version = "20220707-git";
-    asds = [ "3bmd-youtube" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/3bmd/2022-07-07/3bmd-20220707-git.tgz";
-      sha256 = "14q2csgmxy5ddmmcrp9wqx7dkzk6685zby9qc04yr9y3c1szvdlr";
-      system = "3bmd-youtube";
-      asd = "3bmd-youtube";
-    });
-    systems = [ "3bmd-youtube" ];
-    lispLibs = [ (getAttr "_3bmd" pkgs) (getAttr "esrap" pkgs) ];
-  };
-  _3bmd-youtube-tests = {
-    pname = "3bmd-youtube-tests";
-    version = "20220707-git";
-    asds = [ "3bmd-youtube-tests" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/3bmd/2022-07-07/3bmd-20220707-git.tgz";
-      sha256 = "14q2csgmxy5ddmmcrp9wqx7dkzk6685zby9qc04yr9y3c1szvdlr";
-      system = "3bmd-youtube-tests";
-      asd = "3bmd-youtube-tests";
-    });
-    systems = [ "3bmd-youtube-tests" ];
-    lispLibs = [ (getAttr "_3bmd-youtube" pkgs) (getAttr "fiasco" pkgs) ];
-  };
-  _3bz = {
-    pname = "3bz";
-    version = "20201220-git";
-    asds = [ "3bz" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/3bz/2020-12-20/3bz-20201220-git.tgz";
-      sha256 = "0kvvlvf50jhhw1s510f3clpr1a68632bq6d698yxcrx722igcrg4";
-      system = "3bz";
-      asd = "3bz";
-    });
-    systems = [ "3bz" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "babel" pkgs) (getAttr "cffi" pkgs) (getAttr "mmap" pkgs) (getAttr "nibbles" pkgs) (getAttr "trivial-features" pkgs) ];
-  };
-  _3d-matrices = {
-    pname = "3d-matrices";
-    version = "20220331-git";
-    asds = [ "3d-matrices" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/3d-matrices/2022-03-31/3d-matrices-20220331-git.tgz";
-      sha256 = "1s8b4zlmqwyplghs73riz1khf0c5sk64w6b12jd599091d5nr6sr";
-      system = "3d-matrices";
-      asd = "3d-matrices";
-    });
-    systems = [ "3d-matrices" ];
-    lispLibs = [ (getAttr "_3d-vectors" pkgs) (getAttr "documentation-utils" pkgs) ];
-  };
-  _3d-matrices-test = {
-    pname = "3d-matrices-test";
-    version = "20220331-git";
-    asds = [ "3d-matrices-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/3d-matrices/2022-03-31/3d-matrices-20220331-git.tgz";
-      sha256 = "1s8b4zlmqwyplghs73riz1khf0c5sk64w6b12jd599091d5nr6sr";
-      system = "3d-matrices-test";
-      asd = "3d-matrices-test";
-    });
-    systems = [ "3d-matrices-test" ];
-    lispLibs = [ (getAttr "_3d-matrices" pkgs) (getAttr "parachute" pkgs) ];
-  };
-  _3d-quaternions = {
-    pname = "3d-quaternions";
-    version = "20221106-git";
-    asds = [ "3d-quaternions" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/3d-quaternions/2022-11-06/3d-quaternions-20221106-git.tgz";
-      sha256 = "1mrq6yhb90mhvxdkg3fx58ci5yj5xlixbbzf1q6p76wyq40qjv76";
-      system = "3d-quaternions";
-      asd = "3d-quaternions";
-    });
-    systems = [ "3d-quaternions" ];
-    lispLibs = [ (getAttr "_3d-matrices" pkgs) (getAttr "_3d-vectors" pkgs) (getAttr "documentation-utils" pkgs) ];
-  };
-  _3d-quaternions-test = {
-    pname = "3d-quaternions-test";
-    version = "20221106-git";
-    asds = [ "3d-quaternions-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/3d-quaternions/2022-11-06/3d-quaternions-20221106-git.tgz";
-      sha256 = "1mrq6yhb90mhvxdkg3fx58ci5yj5xlixbbzf1q6p76wyq40qjv76";
-      system = "3d-quaternions-test";
-      asd = "3d-quaternions-test";
-    });
-    systems = [ "3d-quaternions-test" ];
-    lispLibs = [ (getAttr "_3d-quaternions" pkgs) (getAttr "parachute" pkgs) ];
-  };
-  _3d-transforms = {
-    pname = "3d-transforms";
-    version = "20220331-git";
-    asds = [ "3d-transforms" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/3d-transforms/2022-03-31/3d-transforms-20220331-git.tgz";
-      sha256 = "1j7rvkj30z303f875l4qa4b79f9ckc0gr83wclmpvsk2gwiqmwwq";
-      system = "3d-transforms";
-      asd = "3d-transforms";
-    });
-    systems = [ "3d-transforms" ];
-    lispLibs = [ (getAttr "_3d-matrices" pkgs) (getAttr "_3d-quaternions" pkgs) (getAttr "_3d-vectors" pkgs) (getAttr "documentation-utils" pkgs) ];
-  };
-  _3d-transforms-test = {
-    pname = "3d-transforms-test";
-    version = "20220331-git";
-    asds = [ "3d-transforms-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/3d-transforms/2022-03-31/3d-transforms-20220331-git.tgz";
-      sha256 = "1j7rvkj30z303f875l4qa4b79f9ckc0gr83wclmpvsk2gwiqmwwq";
-      system = "3d-transforms-test";
-      asd = "3d-transforms-test";
-    });
-    systems = [ "3d-transforms-test" ];
-    lispLibs = [ (getAttr "_3d-transforms" pkgs) (getAttr "parachute" pkgs) ];
-  };
-  _3d-vectors = {
-    pname = "3d-vectors";
-    version = "20221106-git";
-    asds = [ "3d-vectors" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/3d-vectors/2022-11-06/3d-vectors-20221106-git.tgz";
-      sha256 = "0vmf7nycc49ydcy0dfs25cgs655kwjc6jcjvpwxw61jq4gl2fh7x";
-      system = "3d-vectors";
-      asd = "3d-vectors";
-    });
-    systems = [ "3d-vectors" ];
-    lispLibs = [ (getAttr "documentation-utils" pkgs) ];
-  };
-  _3d-vectors-test = {
-    pname = "3d-vectors-test";
-    version = "20221106-git";
-    asds = [ "3d-vectors-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/3d-vectors/2022-11-06/3d-vectors-20221106-git.tgz";
-      sha256 = "0vmf7nycc49ydcy0dfs25cgs655kwjc6jcjvpwxw61jq4gl2fh7x";
-      system = "3d-vectors-test";
-      asd = "3d-vectors-test";
-    });
-    systems = [ "3d-vectors-test" ];
-    lispLibs = [ (getAttr "_3d-vectors" pkgs) (getAttr "parachute" pkgs) ];
-  };
-  _40ants-asdf-system = {
-    pname = "40ants-asdf-system";
-    version = "20221106-git";
-    asds = [ "40ants-asdf-system" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/40ants-asdf-system/2022-11-06/40ants-asdf-system-20221106-git.tgz";
-      sha256 = "11k1pa1mpcm63n5acqb805266xs8wb4nxm00ac8i8abbp2pflama";
-      system = "40ants-asdf-system";
-      asd = "40ants-asdf-system";
-    });
-    systems = [ "40ants-asdf-system" ];
-    lispLibs = [ (getAttr "_40ants-doc" pkgs) (getAttr "uiop" pkgs) ];
-  };
-  _40ants-ci = {
-    pname = "40ants-ci";
-    version = "20221106-git";
-    asds = [ "40ants-ci" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/ci/2022-11-06/ci-20221106-git.tgz";
-      sha256 = "0m735ciq3nkr928d5kfa9x9dv3w0yprj8i0xznih4pzkjvj93f5c";
-      system = "40ants-ci";
-      asd = "40ants-ci";
-    });
-    systems = [ "40ants-ci" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "str" pkgs) (getAttr "_40ants-doc" pkgs) (getAttr "docs-config" pkgs) (getAttr "yason" pkgs) ];
-  };
-  _40ants-ci-test = {
-    pname = "40ants-ci-test";
-    version = "20221106-git";
-    asds = [ "40ants-ci-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/ci/2022-11-06/ci-20221106-git.tgz";
-      sha256 = "0m735ciq3nkr928d5kfa9x9dv3w0yprj8i0xznih4pzkjvj93f5c";
-      system = "40ants-ci-test";
-      asd = "40ants-ci-test";
-    });
-    systems = [ "40ants-ci-test" ];
-    lispLibs = [ (getAttr "hamcrest" pkgs) (getAttr "rove" pkgs) ];
-  };
-  _40ants-doc = {
-    pname = "40ants-doc";
-    version = "20221106-git";
-    asds = [ "40ants-doc" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/doc/2022-11-06/doc-20221106-git.tgz";
-      sha256 = "1myf27502i7mkwb9dqywdbwlpprx7zwp4l7a6vc654h6f1zf65xv";
-      system = "40ants-doc";
-      asd = "40ants-doc";
-    });
-    systems = [ "40ants-doc" ];
-    lispLibs = [ (getAttr "named-readtables" pkgs) (getAttr "pythonic-string-reader" pkgs) (getAttr "uiop" pkgs) ];
-  };
-  _40ants-doc-full = {
-    pname = "40ants-doc-full";
-    version = "20221106-git";
-    asds = [ "40ants-doc-full" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/doc/2022-11-06/doc-20221106-git.tgz";
-      sha256 = "1myf27502i7mkwb9dqywdbwlpprx7zwp4l7a6vc654h6f1zf65xv";
-      system = "40ants-doc-full";
-      asd = "40ants-doc-full";
-    });
-    systems = [ "40ants-doc-full" ];
-    lispLibs = [  ];
-  };
-  _40ants-doc-test = {
-    pname = "40ants-doc-test";
-    version = "20221106-git";
-    asds = [ "40ants-doc-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/doc/2022-11-06/doc-20221106-git.tgz";
-      sha256 = "1myf27502i7mkwb9dqywdbwlpprx7zwp4l7a6vc654h6f1zf65xv";
-      system = "40ants-doc-test";
-      asd = "40ants-doc-test";
-    });
-    systems = [ "40ants-doc-test" ];
-    lispLibs = [ (getAttr "common-doc" pkgs) (getAttr "_40ants-doc" pkgs) (getAttr "rove" pkgs) ];
-  };
-  a-cl-cairo2-loader = {
-    pname = "a-cl-cairo2-loader";
-    version = "20211020-git";
-    asds = [ "a-cl-cairo2-loader" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-cairo2/2021-10-20/cl-cairo2-20211020-git.tgz";
-      sha256 = "0cpfgyxw6pz7y033dlya8c4vjmkpw127zdq3a9xclp9q8jbdlb7q";
-      system = "a-cl-cairo2-loader";
-      asd = "a-cl-cairo2-loader";
-    });
-    systems = [ "a-cl-cairo2-loader" ];
-    lispLibs = [ (getAttr "cl-cairo2" pkgs) ];
-  };
-  a-cl-logger = {
-    pname = "a-cl-logger";
-    version = "20220331-git";
-    asds = [ "a-cl-logger" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/a-cl-logger/2022-03-31/a-cl-logger-20220331-git.tgz";
-      sha256 = "0vhhbnh4akxh0ivqh8r0f2djv2nbf3l9hbbi0b5fdk9bdpziqkb4";
-      system = "a-cl-logger";
-      asd = "a-cl-logger";
-    });
-    systems = [ "a-cl-logger" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cl-interpol" pkgs) (getAttr "cl-json" pkgs) (getAttr "closer-mop" pkgs) (getAttr "exit-hooks" pkgs) (getAttr "iterate" pkgs) (getAttr "local-time" pkgs) (getAttr "osicat" pkgs) (getAttr "symbol-munger" pkgs) ];
-  };
-  a-cl-logger-logstash = {
-    pname = "a-cl-logger-logstash";
-    version = "20220331-git";
-    asds = [ "a-cl-logger-logstash" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/a-cl-logger/2022-03-31/a-cl-logger-20220331-git.tgz";
-      sha256 = "0vhhbnh4akxh0ivqh8r0f2djv2nbf3l9hbbi0b5fdk9bdpziqkb4";
-      system = "a-cl-logger-logstash";
-      asd = "a-cl-logger-logstash";
-    });
-    systems = [ "a-cl-logger-logstash" ];
-    lispLibs = [ (getAttr "a-cl-logger" pkgs) (getAttr "cl-json" pkgs) (getAttr "zmq" pkgs) ];
-  };
-  a-cl-logger-tests = {
-    pname = "a-cl-logger-tests";
-    version = "20220331-git";
-    asds = [ "a-cl-logger-tests" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/a-cl-logger/2022-03-31/a-cl-logger-20220331-git.tgz";
-      sha256 = "0vhhbnh4akxh0ivqh8r0f2djv2nbf3l9hbbi0b5fdk9bdpziqkb4";
-      system = "a-cl-logger-tests";
-      asd = "a-cl-logger";
-    });
-    systems = [ "a-cl-logger-tests" ];
-    lispLibs = [ (getAttr "a-cl-logger" pkgs) (getAttr "lisp-unit2" pkgs) ];
-  };
-  aabbcc = {
-    pname = "aabbcc";
-    version = "20200427-git";
-    asds = [ "aabbcc" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/sucle/2020-04-27/sucle-20200427-git.tgz";
-      sha256 = "033akkn9zxc6qdgycgxgybx3v23638245xrx29x2cbwnvg3i1q34";
-      system = "aabbcc";
-      asd = "aabbcc";
-    });
-    systems = [ "aabbcc" ];
-    lispLibs = [ (getAttr "quads" pkgs) (getAttr "utility" pkgs) ];
-  };
-  able = {
-    pname = "able";
-    version = "20171227-git";
-    asds = [ "able" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/able/2017-12-27/able-20171227-git.tgz";
-      sha256 = "1fbcmr6hy7bwlnsnrml3j4b2jkkj8ddxw27l8hr2z6l3fi3qw4hh";
-      system = "able";
-      asd = "able";
-    });
-    systems = [ "able" ];
-    lispLibs = [ (getAttr "cl-fad" pkgs) (getAttr "ltk" pkgs) (getAttr "trivial-gray-streams" pkgs) ];
-  };
-  abnf = {
-    pname = "abnf";
-    version = "20200325-git";
-    asds = [ "abnf" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-abnf/2020-03-25/cl-abnf-20200325-git.tgz";
-      sha256 = "0f09nsndxa90acm71zd4qdnp40v705a4sqm04mnv9x76h6dlggmz";
-      system = "abnf";
-      asd = "abnf";
-    });
-    systems = [ "abnf" ];
-    lispLibs = [ (getAttr "cl-ppcre" pkgs) (getAttr "esrap" pkgs) ];
-  };
-  abstract-arrays = {
-    pname = "abstract-arrays";
-    version = "20221106-git";
-    asds = [ "abstract-arrays" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/abstract-arrays/2022-11-06/abstract-arrays-20221106-git.tgz";
-      sha256 = "0rz09fywsrg23g1l9mm0g4y8bw4hdff67wqs7nj5b352g9l9f0xa";
-      system = "abstract-arrays";
-      asd = "abstract-arrays";
-    });
-    systems = [ "abstract-arrays" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "closer-mop" pkgs) (getAttr "introspect-environment" pkgs) (getAttr "polymorphic-functions" pkgs) (getAttr "trivial-types" pkgs) ];
-  };
-  abstract-classes = {
-    pname = "abstract-classes";
-    version = "20190307-hg";
-    asds = [ "abstract-classes" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-abstract-classes/2019-03-07/cl-abstract-classes-20190307-hg.tgz";
-      sha256 = "0q03j3ksgn56j9xvs3d3hhasplj3hvg488f4cx1z97nlyqxr5w1d";
-      system = "abstract-classes";
-      asd = "abstract-classes";
-    });
-    systems = [ "abstract-classes" ];
-    lispLibs = [ (getAttr "closer-mop" pkgs) ];
-  };
-  access = {
-    pname = "access";
-    version = "20220707-git";
-    asds = [ "access" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/access/2022-07-07/access-20220707-git.tgz";
-      sha256 = "0jgq4xz4pmi7wrgiqvvpkl9k89dhnhsaac68x6mw0w2v7h31vzph";
-      system = "access";
-      asd = "access";
-    });
-    systems = [ "access" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cl-ppcre" pkgs) (getAttr "closer-mop" pkgs) (getAttr "iterate" pkgs) ];
-  };
-  access_slash_test = {
-    pname = "access_test";
-    version = "20220707-git";
-    asds = [ "access" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/access/2022-07-07/access-20220707-git.tgz";
-      sha256 = "0jgq4xz4pmi7wrgiqvvpkl9k89dhnhsaac68x6mw0w2v7h31vzph";
-      system = "access";
-      asd = "access";
-    });
-    systems = [ "access/test" ];
-    lispLibs = [ (getAttr "access" pkgs) (getAttr "lisp-unit2" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  acclimation = {
-    pname = "acclimation";
-    version = "20221106-git";
-    asds = [ "acclimation" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/acclimation/2022-11-06/acclimation-20221106-git.tgz";
-      sha256 = "04bk389p4fddh4vf9apry4a40ryfhcdf5fq23gh1ihvfdpv3b957";
-      system = "acclimation";
-      asd = "acclimation";
-    });
-    systems = [ "acclimation" ];
-    lispLibs = [  ];
-  };
-  acclimation-temperature = {
-    pname = "acclimation-temperature";
-    version = "20221106-git";
-    asds = [ "acclimation-temperature" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/acclimation/2022-11-06/acclimation-20221106-git.tgz";
-      sha256 = "04bk389p4fddh4vf9apry4a40ryfhcdf5fq23gh1ihvfdpv3b957";
-      system = "acclimation-temperature";
-      asd = "acclimation-temperature";
-    });
-    systems = [ "acclimation-temperature" ];
-    lispLibs = [  ];
-  };
-  acl-compat = {
-    pname = "acl-compat";
-    version = "20190813-git";
-    asds = [ "acl-compat" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/portableaserve/2019-08-13/portableaserve-20190813-git.tgz";
-      sha256 = "0ak6mqp84sjr0a7h5svr16vra4bf4fcx6wpir0n88dc1vjwy5xqa";
-      system = "acl-compat";
-      asd = "acl-compat";
-    });
-    systems = [ "acl-compat" ];
-    lispLibs = [ (getAttr "cl-fad" pkgs) (getAttr "cl-ppcre" pkgs) (getAttr "ironclad" pkgs) (getAttr "puri" pkgs) ];
-  };
-  acm-random = {
-    pname = "acm-random";
-    version = "20191007-git";
-    asds = [ "acm-random" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/random/2019-10-07/random-20191007-git.tgz";
-      sha256 = "1fb4mnp85jm9s667y4dgz07klhkr9pvi5xbxws28lbb8iip75y2p";
-      system = "acm-random";
-      asd = "acm-random";
-    });
-    systems = [ "acm-random" ];
-    lispLibs = [ (getAttr "com_dot_google_dot_base" pkgs) (getAttr "random" pkgs) ];
-  };
-  acm-random-test = {
-    pname = "acm-random-test";
-    version = "20191007-git";
-    asds = [ "acm-random-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/random/2019-10-07/random-20191007-git.tgz";
-      sha256 = "1fb4mnp85jm9s667y4dgz07klhkr9pvi5xbxws28lbb8iip75y2p";
-      system = "acm-random-test";
-      asd = "acm-random-test";
-    });
-    systems = [ "acm-random-test" ];
-    lispLibs = [ (getAttr "hu_dot_dwim_dot_stefil" pkgs) (getAttr "acm-random" pkgs) ];
-  };
-  action-list = {
-    pname = "action-list";
-    version = "20221106-git";
-    asds = [ "action-list" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/action-list/2022-11-06/action-list-20221106-git.tgz";
-      sha256 = "0w42wsk077lcv9hw62s8303fj4rpmrrx1xwsv1jachzd9alwnfcl";
-      system = "action-list";
-      asd = "action-list";
-    });
-    systems = [ "action-list" ];
-    lispLibs = [ (getAttr "documentation-utils" pkgs) (getAttr "trivial-extensible-sequences" pkgs) ];
-  };
-  adhoc = {
-    pname = "adhoc";
-    version = "20220331-git";
-    asds = [ "adhoc" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/adhoc/2022-03-31/adhoc-20220331-git.tgz";
-      sha256 = "1plpxrb41y0hpj9ai6g5cyw6p2v0md3gk35xvryq5mmkxnjfzyzj";
-      system = "adhoc";
-      asd = "adhoc";
-    });
-    systems = [ "adhoc" ];
-    lispLibs = [ (getAttr "closer-mop" pkgs) ];
-  };
-  adhoc-tests = {
-    pname = "adhoc-tests";
-    version = "20220331-git";
-    asds = [ "adhoc-tests" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/adhoc/2022-03-31/adhoc-20220331-git.tgz";
-      sha256 = "1plpxrb41y0hpj9ai6g5cyw6p2v0md3gk35xvryq5mmkxnjfzyzj";
-      system = "adhoc-tests";
-      asd = "adhoc-tests";
-    });
-    systems = [ "adhoc-tests" ];
-    lispLibs = [ (getAttr "adhoc" pkgs) (getAttr "fiveam" pkgs) ];
-  };
-  adjuvant = {
-    pname = "adjuvant";
-    version = "export-to-quicklisp-502a46e2-git";
-    asds = [ "adjuvant" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/regular-type-expression/2020-02-18/regular-type-expression-export-to-quicklisp-502a46e2-git.tgz";
-      sha256 = "1im07p7sbbhdjx9v8fx3v1xdqx1085lra6fsb4sh2bssw7m5xfxi";
-      system = "adjuvant";
-      asd = "adjuvant";
-    });
-    systems = [ "adjuvant" ];
-    lispLibs = [  ];
-  };
-  adjuvant-test = {
-    pname = "adjuvant-test";
-    version = "export-to-quicklisp-502a46e2-git";
-    asds = [ "adjuvant-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/regular-type-expression/2020-02-18/regular-type-expression-export-to-quicklisp-502a46e2-git.tgz";
-      sha256 = "1im07p7sbbhdjx9v8fx3v1xdqx1085lra6fsb4sh2bssw7m5xfxi";
-      system = "adjuvant-test";
-      asd = "adjuvant-test";
-    });
-    systems = [ "adjuvant-test" ];
-    lispLibs = [ (getAttr "adjuvant" pkgs) (getAttr "scrutiny" pkgs) ];
-  };
-  adopt = {
-    pname = "adopt";
-    version = "20220331-hg";
-    asds = [ "adopt" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/adopt/2022-03-31/adopt-20220331-hg.tgz";
-      sha256 = "0lfg12crl68nz0avdyx4j0x0p8vrysr2bl1817iaaa48jp6qp588";
-      system = "adopt";
-      asd = "adopt";
-    });
-    systems = [ "adopt" ];
-    lispLibs = [ (getAttr "bobbin" pkgs) (getAttr "split-sequence" pkgs) ];
-  };
-  adopt-subcommands = {
-    pname = "adopt-subcommands";
-    version = "v0.2.2";
-    asds = [ "adopt-subcommands" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/adopt-subcommands/2021-05-31/adopt-subcommands-v0.2.2.tgz";
-      sha256 = "0q35s3ihhlshakjalq5pgf14x502qnj8jimim8yf7bp1p9sn83h8";
-      system = "adopt-subcommands";
-      asd = "adopt-subcommands";
-    });
-    systems = [ "adopt-subcommands" ];
-    lispLibs = [ (getAttr "adopt" pkgs) (getAttr "bobbin" pkgs) (getAttr "split-sequence" pkgs) (getAttr "uiop" pkgs) ];
-  };
-  adopt-subcommands-test = {
-    pname = "adopt-subcommands-test";
-    version = "v0.2.2";
-    asds = [ "adopt-subcommands-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/adopt-subcommands/2021-05-31/adopt-subcommands-v0.2.2.tgz";
-      sha256 = "0q35s3ihhlshakjalq5pgf14x502qnj8jimim8yf7bp1p9sn83h8";
-      system = "adopt-subcommands-test";
-      asd = "adopt-subcommands-test";
-    });
-    systems = [ "adopt-subcommands-test" ];
-    lispLibs = [ (getAttr "adopt-subcommands" pkgs) (getAttr "fiveam" pkgs) ];
-  };
-  adopt_slash_test = {
-    pname = "adopt_test";
-    version = "20220331-hg";
-    asds = [ "adopt" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/adopt/2022-03-31/adopt-20220331-hg.tgz";
-      sha256 = "0lfg12crl68nz0avdyx4j0x0p8vrysr2bl1817iaaa48jp6qp588";
-      system = "adopt";
-      asd = "adopt";
-    });
-    systems = [ "adopt/test" ];
-    lispLibs = [ (getAttr "_1am" pkgs) (getAttr "adopt" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  adp = {
-    pname = "adp";
-    version = "20221106-git";
-    asds = [ "adp" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/adp/2022-11-06/adp-20221106-git.tgz";
-      sha256 = "1g6mdcv4kprx111m1glppqd23n12bsca3q6bm0v25hp4qb08l1my";
-      system = "adp";
-      asd = "adp";
-    });
-    systems = [ "adp" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "hyperspec" pkgs) ];
-  };
-  adp_slash_doc = {
-    pname = "adp_doc";
-    version = "20221106-git";
-    asds = [ "adp" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/adp/2022-11-06/adp-20221106-git.tgz";
-      sha256 = "1g6mdcv4kprx111m1glppqd23n12bsca3q6bm0v25hp4qb08l1my";
-      system = "adp";
-      asd = "adp";
-    });
-    systems = [ "adp/doc" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "hyperspec" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  adp_slash_github-md = {
-    pname = "adp_github-md";
-    version = "20221106-git";
-    asds = [ "adp" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/adp/2022-11-06/adp-20221106-git.tgz";
-      sha256 = "1g6mdcv4kprx111m1glppqd23n12bsca3q6bm0v25hp4qb08l1my";
-      system = "adp";
-      asd = "adp";
-    });
-    systems = [ "adp/github-md" ];
-    lispLibs = [ (getAttr "adp" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  advanced = {
-    pname = "advanced";
-    version = "clon-1.0b25";
-    asds = [ "advanced" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-clon/2021-04-11/clon-1.0b25.tgz";
-      sha256 = "0nj47xl2fwj7z31wiaad8dw97fpq3zpwxlgmpvppawz0z3hgf8d0";
-      system = "advanced";
-      asd = "advanced";
-    });
-    systems = [ "advanced" ];
-    lispLibs = [ (getAttr "net_dot_didierverna_dot_clon" pkgs) ];
-  };
-  advanced-readtable = {
-    pname = "advanced-readtable";
-    version = "20130720-git";
-    asds = [ "advanced-readtable" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/advanced-readtable/2013-07-20/advanced-readtable-20130720-git.tgz";
-      sha256 = "0dgm3lp9s6792g22swcb085f67q68jsyqj71vicb1wdr9qslvgwm";
-      system = "advanced-readtable";
-      asd = "advanced-readtable";
-    });
-    systems = [ "advanced-readtable" ];
-    lispLibs = [ (getAttr "named-readtables" pkgs) ];
-  };
-  aether = {
-    pname = "aether";
-    version = "v1.1.0";
-    asds = [ "aether" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/aether/2021-12-09/aether-v1.1.0.tgz";
-      sha256 = "0q60gc4lsxpvv4g572mnhpzkziq1412k1q0xm4y2d1zigryg30bb";
-      system = "aether";
-      asd = "aether";
-    });
-    systems = [ "aether" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cl-heap" pkgs) (getAttr "global-vars" pkgs) (getAttr "policy-cond" pkgs) ];
-  };
-  aether-tests = {
-    pname = "aether-tests";
-    version = "v1.1.0";
-    asds = [ "aether-tests" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/aether/2021-12-09/aether-v1.1.0.tgz";
-      sha256 = "0q60gc4lsxpvv4g572mnhpzkziq1412k1q0xm4y2d1zigryg30bb";
-      system = "aether-tests";
-      asd = "aether-tests";
-    });
-    systems = [ "aether-tests" ];
-    lispLibs = [ (getAttr "aether" pkgs) (getAttr "fiasco" pkgs) (getAttr "uiop" pkgs) ];
-  };
-  agnostic-lizard = {
-    pname = "agnostic-lizard";
-    version = "20221106-git";
-    asds = [ "agnostic-lizard" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/agnostic-lizard/2022-11-06/agnostic-lizard-20221106-git.tgz";
-      sha256 = "13r1pzxkhci0pd8grhvim09lgvaykjyspnj58xq1rp1c017xnpmf";
-      system = "agnostic-lizard";
-      asd = "agnostic-lizard";
-    });
-    systems = [ "agnostic-lizard" ];
-    lispLibs = [  ];
-  };
-  agnostic-lizard-debugger-prototype = {
-    pname = "agnostic-lizard-debugger-prototype";
-    version = "20221106-git";
-    asds = [ "agnostic-lizard-debugger-prototype" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/agnostic-lizard/2022-11-06/agnostic-lizard-20221106-git.tgz";
-      sha256 = "13r1pzxkhci0pd8grhvim09lgvaykjyspnj58xq1rp1c017xnpmf";
-      system = "agnostic-lizard-debugger-prototype";
-      asd = "agnostic-lizard-debugger-prototype";
-    });
-    systems = [ "agnostic-lizard-debugger-prototype" ];
-    lispLibs = [ (getAttr "agnostic-lizard" pkgs) (getAttr "bordeaux-threads" pkgs) ];
-  };
-  agutil = {
-    pname = "agutil";
-    version = "20210531-git";
-    asds = [ "agutil" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/agutil/2021-05-31/agutil-20210531-git.tgz";
-      sha256 = "10lccrqkaqq0h1p79gjqsqk1nqa6c25n0w7pj39y2gs14s5qr5q9";
-      system = "agutil";
-      asd = "agutil";
-    });
-    systems = [ "agutil" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "optima" pkgs) ];
-  };
-  ahungry-fleece = {
-    pname = "ahungry-fleece";
-    version = "20200610-git";
-    asds = [ "ahungry-fleece" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/ahungry-fleece/2020-06-10/ahungry-fleece-20200610-git.tgz";
-      sha256 = "1l2rsy5qn5n456cxbd6kj0hpniy5vf35xcixzfj4j7lv00j0c5lz";
-      system = "ahungry-fleece";
-      asd = "ahungry-fleece";
-    });
-    systems = [ "ahungry-fleece" ];
-    lispLibs = [ (getAttr "archive" pkgs) (getAttr "chipz" pkgs) (getAttr "cl-json" pkgs) (getAttr "cl-yaml" pkgs) (getAttr "md5" pkgs) (getAttr "split-sequence" pkgs) ];
-  };
-  alexa = {
-    pname = "alexa";
-    version = "20180831-git";
-    asds = [ "alexa" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/alexa/2018-08-31/alexa-20180831-git.tgz";
-      sha256 = "1y9jyz9gfmd02h492kf7v3mmpbhc0yfh4ka2rzd1vczq6fl8qgqv";
-      system = "alexa";
-      asd = "alexa";
-    });
-    systems = [ "alexa" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cl-ppcre" pkgs) ];
-  };
-  alexa-tests = {
-    pname = "alexa-tests";
-    version = "20180831-git";
-    asds = [ "alexa-tests" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/alexa/2018-08-31/alexa-20180831-git.tgz";
-      sha256 = "1y9jyz9gfmd02h492kf7v3mmpbhc0yfh4ka2rzd1vczq6fl8qgqv";
-      system = "alexa-tests";
-      asd = "alexa-tests";
-    });
-    systems = [ "alexa-tests" ];
-    lispLibs = [ (getAttr "alexa" pkgs) (getAttr "fiasco" pkgs) (getAttr "uiop" pkgs) ];
-  };
-  alexandria = {
-    pname = "alexandria";
-    version = "20220707-git";
-    asds = [ "alexandria" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/alexandria/2022-07-07/alexandria-20220707-git.tgz";
-      sha256 = "1l3jb61in7gs3fihlvmcap51ij9s9j4p77n0rwc2c6qd43cv90ah";
-      system = "alexandria";
-      asd = "alexandria";
-    });
-    systems = [ "alexandria" ];
-    lispLibs = [  ];
-  };
-  alexandria_plus = {
-    pname = "alexandria+";
-    version = "20221106-git";
-    asds = [ "alexandria+" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/alexandria-plus/2022-11-06/alexandria-plus-20221106-git.tgz";
-      sha256 = "1w9r19610h599303gqlx2x5n8mmdynss2gyl7xilg5h6v8z3hkfl";
-      system = "alexandria+";
-      asd = "alexandria+";
-    });
-    systems = [ "alexandria+" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) ];
-  };
-  alexandria_plus_slash_tests = {
-    pname = "alexandria+_tests";
-    version = "20221106-git";
-    asds = [ "alexandria+" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/alexandria-plus/2022-11-06/alexandria-plus-20221106-git.tgz";
-      sha256 = "1w9r19610h599303gqlx2x5n8mmdynss2gyl7xilg5h6v8z3hkfl";
-      system = "alexandria+";
-      asd = "alexandria+";
-    });
-    systems = [ "alexandria+/tests" ];
-    lispLibs = [ (getAttr "alexandria_plus" pkgs) (getAttr "parachute" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  alexandria_slash_tests = {
-    pname = "alexandria_tests";
-    version = "20220707-git";
-    asds = [ "alexandria" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/alexandria/2022-07-07/alexandria-20220707-git.tgz";
-      sha256 = "1l3jb61in7gs3fihlvmcap51ij9s9j4p77n0rwc2c6qd43cv90ah";
-      system = "alexandria";
-      asd = "alexandria";
-    });
-    systems = [ "alexandria/tests" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  algebraic-data-library = {
-    pname = "algebraic-data-library";
-    version = "20180831-git";
-    asds = [ "algebraic-data-library" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/algebraic-data-library/2018-08-31/algebraic-data-library-20180831-git.tgz";
-      sha256 = "0mmakfdwgfjl812ydzbbl81lkv41zfnqhw9ydjk1w63lq8c11cmn";
-      system = "algebraic-data-library";
-      asd = "algebraic-data-library";
-    });
-    systems = [ "algebraic-data-library" ];
-    lispLibs = [ (getAttr "cl-algebraic-data-type" pkgs) ];
-  };
-  also-alsa = {
-    pname = "also-alsa";
-    version = "20220707-git";
-    asds = [ "also-alsa" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/also-alsa/2022-07-07/also-alsa-20220707-git.tgz";
-      sha256 = "1az5agb5gmjjsp3sbpqnw20k46yss1d7d5xymy2mi1al5ksxyqmc";
-      system = "also-alsa";
-      asd = "also-alsa";
-    });
-    systems = [ "also-alsa" ];
-    lispLibs = [ (getAttr "cffi" pkgs) ];
-  };
-  amazon-ecs = {
-    pname = "amazon-ecs";
-    version = "20110418-git";
-    asds = [ "amazon-ecs" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/amazon-ecs/2011-04-18/amazon-ecs-20110418-git.tgz";
-      sha256 = "1gi3ybfkdfqvgmwgf0l77xpp5xgmkbycdpz6kn79vm0iga3kd2mz";
-      system = "amazon-ecs";
-      asd = "amazon-ecs";
-    });
-    systems = [ "amazon-ecs" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "bordeaux-threads" pkgs) (getAttr "cl-ppcre" pkgs) (getAttr "drakma" pkgs) (getAttr "hunchentoot" pkgs) (getAttr "ironclad" pkgs) (getAttr "net-telent-date" pkgs) (getAttr "parse-number" pkgs) (getAttr "trivial-http" pkgs) (getAttr "xml-mop" pkgs) ];
-  };
-  amb = {
-    pname = "amb";
-    version = "20220220-git";
-    asds = [ "amb" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/amb/2022-02-20/amb-20220220-git.tgz";
-      sha256 = "1klh1aakklj1famrff0sccnwlv8238b1q446288aqnqgxxw6pf21";
-      system = "amb";
-      asd = "amb";
-    });
-    systems = [ "amb" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) ];
-  };
-  amb_slash_test = {
-    pname = "amb_test";
-    version = "20220220-git";
-    asds = [ "amb" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/amb/2022-02-20/amb-20220220-git.tgz";
-      sha256 = "1klh1aakklj1famrff0sccnwlv8238b1q446288aqnqgxxw6pf21";
-      system = "amb";
-      asd = "amb";
-    });
-    systems = [ "amb/test" ];
-    lispLibs = [ (getAttr "amb" pkgs) (getAttr "parachute" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  anaphora = {
-    pname = "anaphora";
-    version = "20220220-git";
-    asds = [ "anaphora" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/anaphora/2022-02-20/anaphora-20220220-git.tgz";
-      sha256 = "1ds5ab0rzkrhfl29xpvmvyxmkdyj9mi19p330pz603lx95njjc0b";
-      system = "anaphora";
-      asd = "anaphora";
-    });
-    systems = [ "anaphora" ];
-    lispLibs = [  ];
-  };
-  anaphora_slash_test = {
-    pname = "anaphora_test";
-    version = "20220220-git";
-    asds = [ "anaphora" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/anaphora/2022-02-20/anaphora-20220220-git.tgz";
-      sha256 = "1ds5ab0rzkrhfl29xpvmvyxmkdyj9mi19p330pz603lx95njjc0b";
-      system = "anaphora";
-      asd = "anaphora";
-    });
-    systems = [ "anaphora/test" ];
-    lispLibs = [ (getAttr "anaphora" pkgs) (getAttr "rt" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  anaphoric-variants = {
-    pname = "anaphoric-variants";
-    version = "1.0.1";
-    asds = [ "anaphoric-variants" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/anaphoric-variants/2012-10-13/anaphoric-variants-1.0.1.tgz";
-      sha256 = "02ms01w09b9bzsdsr0icd3ggyl86kyxk164kf0759k2k9y6kjsp5";
-      system = "anaphoric-variants";
-      asd = "anaphoric-variants";
-    });
-    systems = [ "anaphoric-variants" ];
-    lispLibs = [ (getAttr "map-bind" pkgs) ];
-  };
-  anatevka = {
-    pname = "anatevka";
-    version = "v1.0.0";
-    asds = [ "anatevka" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/anatevka/2022-11-06/anatevka-v1.0.0.tgz";
-      sha256 = "1c8y91nv1jln22j7b82qiad861zfjs9a8nxm18r1dxblszpyygsk";
-      system = "anatevka";
-      asd = "anatevka";
-    });
-    systems = [ "anatevka" ];
-    lispLibs = [ (getAttr "aether" pkgs) (getAttr "alexandria" pkgs) ];
-  };
-  anatevka-tests = {
-    pname = "anatevka-tests";
-    version = "v1.0.0";
-    asds = [ "anatevka-tests" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/anatevka/2022-11-06/anatevka-v1.0.0.tgz";
-      sha256 = "1c8y91nv1jln22j7b82qiad861zfjs9a8nxm18r1dxblszpyygsk";
-      system = "anatevka-tests";
-      asd = "anatevka-tests";
-    });
-    systems = [ "anatevka-tests" ];
-    lispLibs = [ (getAttr "anatevka" pkgs) (getAttr "closer-mop" pkgs) (getAttr "fiasco" pkgs) (getAttr "uiop" pkgs) ];
-  };
-  ansi-escape = {
-    pname = "ansi-escape";
-    version = "20221106-git";
-    asds = [ "ansi-escape" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/croatoan/2022-11-06/croatoan-20221106-git.tgz";
-      sha256 = "0zfwcc40dpj88jvkm45d4snxjfxdsncd5pj10zrbj7lm4awm9b5s";
-      system = "ansi-escape";
-      asd = "ansi-escape";
-    });
-    systems = [ "ansi-escape" ];
-    lispLibs = [  ];
-  };
-  ansi-escape-test = {
-    pname = "ansi-escape-test";
-    version = "20221106-git";
-    asds = [ "ansi-escape-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/croatoan/2022-11-06/croatoan-20221106-git.tgz";
-      sha256 = "0zfwcc40dpj88jvkm45d4snxjfxdsncd5pj10zrbj7lm4awm9b5s";
-      system = "ansi-escape-test";
-      asd = "ansi-escape-test";
-    });
-    systems = [ "ansi-escape-test" ];
-    lispLibs = [ (getAttr "ansi-escape" pkgs) ];
-  };
-  antik = {
-    pname = "antik";
-    version = "master-df14cb8c-git";
-    asds = [ "antik" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/antik/2019-10-08/antik-master-df14cb8c-git.tgz";
-      sha256 = "1n08cx4n51z8v4bxyak166lp495xda3x7llfxcdpxndxqxcammr0";
-      system = "antik";
-      asd = "antik";
-    });
-    systems = [ "antik" ];
-    lispLibs = [ (getAttr "physical-dimension" pkgs) (getAttr "gsll" pkgs) ];
-  };
-  antik-base = {
-    pname = "antik-base";
-    version = "master-df14cb8c-git";
-    asds = [ "antik-base" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/antik/2019-10-08/antik-master-df14cb8c-git.tgz";
-      sha256 = "1n08cx4n51z8v4bxyak166lp495xda3x7llfxcdpxndxqxcammr0";
-      system = "antik-base";
-      asd = "antik-base";
-    });
-    systems = [ "antik-base" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cl-ppcre" pkgs) (getAttr "iterate" pkgs) (getAttr "lisp-unit" pkgs) (getAttr "metabang-bind" pkgs) (getAttr "named-readtables" pkgs) (getAttr "split-sequence" pkgs) ];
-  };
-  anypool = {
-    pname = "anypool";
-    version = "20210531-git";
-    asds = [ "anypool" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/anypool/2021-05-31/anypool-20210531-git.tgz";
-      sha256 = "0dr904m0qb0xf12x0rrhw0ipw3fdqyihwr59l87prqmkv23y7aig";
-      system = "anypool";
-      asd = "anypool";
-    });
-    systems = [ "anypool" ];
-    lispLibs = [ (getAttr "bordeaux-threads" pkgs) (getAttr "cl-speedy-queue" pkgs) ];
-  };
-  anypool_slash_middleware = {
-    pname = "anypool_middleware";
-    version = "20210531-git";
-    asds = [ "anypool" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/anypool/2021-05-31/anypool-20210531-git.tgz";
-      sha256 = "0dr904m0qb0xf12x0rrhw0ipw3fdqyihwr59l87prqmkv23y7aig";
-      system = "anypool";
-      asd = "anypool";
-    });
-    systems = [ "anypool/middleware" ];
-    lispLibs = [ (getAttr "anypool" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  anypool_slash_tests = {
-    pname = "anypool_tests";
-    version = "20210531-git";
-    asds = [ "anypool" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/anypool/2021-05-31/anypool-20210531-git.tgz";
-      sha256 = "0dr904m0qb0xf12x0rrhw0ipw3fdqyihwr59l87prqmkv23y7aig";
-      system = "anypool";
-      asd = "anypool";
-    });
-    systems = [ "anypool/tests" ];
-    lispLibs = [ (getAttr "anypool" pkgs) (getAttr "rove" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  aplesque = {
-    pname = "aplesque";
-    version = "20220707-git";
-    asds = [ "aplesque" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/april/2022-07-07/april-20220707-git.tgz";
-      sha256 = "016mfldk98j1kbj8fpqwzhvdkfbmqsfbzjaawnlz9q5pr6srv26r";
-      system = "aplesque";
-      asd = "aplesque";
-    });
-    systems = [ "aplesque" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "array-operations" pkgs) (getAttr "cl-ppcre" pkgs) (getAttr "lparallel" pkgs) (getAttr "parse-number" pkgs) (getAttr "symbol-munger" pkgs) ];
-  };
-  application = {
-    pname = "application";
-    version = "20200427-git";
-    asds = [ "application" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/sucle/2020-04-27/sucle-20200427-git.tgz";
-      sha256 = "033akkn9zxc6qdgycgxgybx3v23638245xrx29x2cbwnvg3i1q34";
-      system = "application";
-      asd = "application";
-    });
-    systems = [ "application" ];
-    lispLibs = [ (getAttr "bordeaux-threads" pkgs) (getAttr "cl-opengl" pkgs) (getAttr "deflazy" pkgs) (getAttr "glhelp" pkgs) (getAttr "scratch-buffer" pkgs) (getAttr "window" pkgs) (getAttr "utility" pkgs) ];
-  };
-  apply-argv = {
-    pname = "apply-argv";
-    version = "20150608-git";
-    asds = [ "apply-argv" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/apply-argv/2015-06-08/apply-argv-20150608-git.tgz";
-      sha256 = "19qj847vyawjgm5iwk96469c0plnxj37948ac1bcd86hgpbm75w0";
-      system = "apply-argv";
-      asd = "apply-argv";
-    });
-    systems = [ "apply-argv" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) ];
-  };
-  apply-argv-tests = {
-    pname = "apply-argv-tests";
-    version = "20150608-git";
-    asds = [ "apply-argv-tests" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/apply-argv/2015-06-08/apply-argv-20150608-git.tgz";
-      sha256 = "19qj847vyawjgm5iwk96469c0plnxj37948ac1bcd86hgpbm75w0";
-      system = "apply-argv-tests";
-      asd = "apply-argv";
-    });
-    systems = [ "apply-argv-tests" ];
-    lispLibs = [ (getAttr "apply-argv" pkgs) (getAttr "fiveam" pkgs) ];
-  };
-  april = {
-    pname = "april";
-    version = "20220707-git";
-    asds = [ "april" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/april/2022-07-07/april-20220707-git.tgz";
-      sha256 = "016mfldk98j1kbj8fpqwzhvdkfbmqsfbzjaawnlz9q5pr6srv26r";
-      system = "april";
-      asd = "april";
-    });
-    systems = [ "april" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "aplesque" pkgs) (getAttr "vex" pkgs) (getAttr "array-operations" pkgs) (getAttr "cl-ppcre" pkgs) (getAttr "cl-unicode" pkgs) (getAttr "lparallel" pkgs) (getAttr "parse-number" pkgs) (getAttr "prove" pkgs) (getAttr "random-state" pkgs) (getAttr "simple-date-time" pkgs) (getAttr "symbol-munger" pkgs) (getAttr "trivia" pkgs) ];
-  };
-  april-demo_dot_cnn = {
-    pname = "april-demo.cnn";
-    version = "20220707-git";
-    asds = [ "april-demo.cnn" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/april/2022-07-07/april-20220707-git.tgz";
-      sha256 = "016mfldk98j1kbj8fpqwzhvdkfbmqsfbzjaawnlz9q5pr6srv26r";
-      system = "april-demo.cnn";
-      asd = "april-demo.cnn";
-    });
-    systems = [ "april-demo.cnn" ];
-    lispLibs = [ (getAttr "april" pkgs) (getAttr "lisp-binary" pkgs) ];
-  };
-  april-demo_dot_ncurses = {
-    pname = "april-demo.ncurses";
-    version = "20220707-git";
-    asds = [ "april-demo.ncurses" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/april/2022-07-07/april-20220707-git.tgz";
-      sha256 = "016mfldk98j1kbj8fpqwzhvdkfbmqsfbzjaawnlz9q5pr6srv26r";
-      system = "april-demo.ncurses";
-      asd = "april-demo.ncurses";
-    });
-    systems = [ "april-demo.ncurses" ];
-    lispLibs = [ (getAttr "april" pkgs) (getAttr "croatoan" pkgs) (getAttr "lparallel" pkgs) ];
-  };
-  april-lib_dot_dfns_dot_array = {
-    pname = "april-lib.dfns.array";
-    version = "20220707-git";
-    asds = [ "april-lib.dfns.array" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/april/2022-07-07/april-20220707-git.tgz";
-      sha256 = "016mfldk98j1kbj8fpqwzhvdkfbmqsfbzjaawnlz9q5pr6srv26r";
-      system = "april-lib.dfns.array";
-      asd = "april-lib.dfns.array";
-    });
-    systems = [ "april-lib.dfns.array" ];
-    lispLibs = [ (getAttr "april" pkgs) ];
-  };
-  april-lib_dot_dfns_dot_graph = {
-    pname = "april-lib.dfns.graph";
-    version = "20220707-git";
-    asds = [ "april-lib.dfns.graph" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/april/2022-07-07/april-20220707-git.tgz";
-      sha256 = "016mfldk98j1kbj8fpqwzhvdkfbmqsfbzjaawnlz9q5pr6srv26r";
-      system = "april-lib.dfns.graph";
-      asd = "april-lib.dfns.graph";
-    });
-    systems = [ "april-lib.dfns.graph" ];
-    lispLibs = [ (getAttr "april" pkgs) (getAttr "april-lib_dot_dfns_dot_array" pkgs) ];
-  };
-  april-lib_dot_dfns_dot_numeric = {
-    pname = "april-lib.dfns.numeric";
-    version = "20220707-git";
-    asds = [ "april-lib.dfns.numeric" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/april/2022-07-07/april-20220707-git.tgz";
-      sha256 = "016mfldk98j1kbj8fpqwzhvdkfbmqsfbzjaawnlz9q5pr6srv26r";
-      system = "april-lib.dfns.numeric";
-      asd = "april-lib.dfns.numeric";
-    });
-    systems = [ "april-lib.dfns.numeric" ];
-    lispLibs = [ (getAttr "april" pkgs) ];
-  };
-  april-lib_dot_dfns_dot_power = {
-    pname = "april-lib.dfns.power";
-    version = "20220707-git";
-    asds = [ "april-lib.dfns.power" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/april/2022-07-07/april-20220707-git.tgz";
-      sha256 = "016mfldk98j1kbj8fpqwzhvdkfbmqsfbzjaawnlz9q5pr6srv26r";
-      system = "april-lib.dfns.power";
-      asd = "april-lib.dfns.power";
-    });
-    systems = [ "april-lib.dfns.power" ];
-    lispLibs = [ (getAttr "april" pkgs) (getAttr "april-lib_dot_dfns_dot_array" pkgs) ];
-  };
-  april-lib_dot_dfns_dot_string = {
-    pname = "april-lib.dfns.string";
-    version = "20220707-git";
-    asds = [ "april-lib.dfns.string" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/april/2022-07-07/april-20220707-git.tgz";
-      sha256 = "016mfldk98j1kbj8fpqwzhvdkfbmqsfbzjaawnlz9q5pr6srv26r";
-      system = "april-lib.dfns.string";
-      asd = "april-lib.dfns.string";
-    });
-    systems = [ "april-lib.dfns.string" ];
-    lispLibs = [ (getAttr "april" pkgs) (getAttr "april-lib_dot_dfns_dot_array" pkgs) ];
-  };
-  april-lib_dot_dfns_dot_tree = {
-    pname = "april-lib.dfns.tree";
-    version = "20220707-git";
-    asds = [ "april-lib.dfns.tree" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/april/2022-07-07/april-20220707-git.tgz";
-      sha256 = "016mfldk98j1kbj8fpqwzhvdkfbmqsfbzjaawnlz9q5pr6srv26r";
-      system = "april-lib.dfns.tree";
-      asd = "april-lib.dfns.tree";
-    });
-    systems = [ "april-lib.dfns.tree" ];
-    lispLibs = [ (getAttr "april" pkgs) (getAttr "april-lib_dot_dfns_dot_array" pkgs) (getAttr "april-lib_dot_dfns_dot_power" pkgs) ];
-  };
-  arc-compat = {
-    pname = "arc-compat";
-    version = "20220331-git";
-    asds = [ "arc-compat" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/arc-compat/2022-03-31/arc-compat-20220331-git.tgz";
-      sha256 = "0jdab12ywxk82ii9clwrcl9afp08yqzq5mgj099ykmad6m3q02lm";
-      system = "arc-compat";
-      asd = "arc-compat";
-    });
-    systems = [ "arc-compat" ];
-    lispLibs = [ (getAttr "babel" pkgs) (getAttr "bordeaux-threads" pkgs) (getAttr "cl-fad" pkgs) (getAttr "fiveam" pkgs) (getAttr "ironclad" pkgs) (getAttr "named-readtables" pkgs) ];
-  };
-  architecture_dot_builder-protocol = {
-    pname = "architecture.builder-protocol";
-    version = "20221106-git";
-    asds = [ "architecture.builder-protocol" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/architecture.builder-protocol/2022-11-06/architecture.builder-protocol-20221106-git.tgz";
-      sha256 = "0nv5wmcf7nvh44148cvq6fvz8zjm212rzzn5r3bi72phpywjxc9v";
-      system = "architecture.builder-protocol";
-      asd = "architecture.builder-protocol";
-    });
-    systems = [ "architecture.builder-protocol" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) ];
-  };
-  architecture_dot_builder-protocol_dot_inspection = {
-    pname = "architecture.builder-protocol.inspection";
-    version = "20221106-git";
-    asds = [ "architecture.builder-protocol.inspection" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/architecture.builder-protocol/2022-11-06/architecture.builder-protocol-20221106-git.tgz";
-      sha256 = "0nv5wmcf7nvh44148cvq6fvz8zjm212rzzn5r3bi72phpywjxc9v";
-      system = "architecture.builder-protocol.inspection";
-      asd = "architecture.builder-protocol.inspection";
-    });
-    systems = [ "architecture.builder-protocol.inspection" ];
-    lispLibs = [ (getAttr "architecture_dot_builder-protocol" pkgs) (getAttr "clouseau" pkgs) ];
-  };
-  architecture_dot_builder-protocol_dot_json = {
-    pname = "architecture.builder-protocol.json";
-    version = "20221106-git";
-    asds = [ "architecture.builder-protocol.json" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/architecture.builder-protocol/2022-11-06/architecture.builder-protocol-20221106-git.tgz";
-      sha256 = "0nv5wmcf7nvh44148cvq6fvz8zjm212rzzn5r3bi72phpywjxc9v";
-      system = "architecture.builder-protocol.json";
-      asd = "architecture.builder-protocol.json";
-    });
-    systems = [ "architecture.builder-protocol.json" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "architecture_dot_builder-protocol" pkgs) (getAttr "cl-json" pkgs) ];
-  };
-  architecture_dot_builder-protocol_dot_json_slash_test = {
-    pname = "architecture.builder-protocol.json_test";
-    version = "20221106-git";
-    asds = [ "architecture.builder-protocol.json" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/architecture.builder-protocol/2022-11-06/architecture.builder-protocol-20221106-git.tgz";
-      sha256 = "0nv5wmcf7nvh44148cvq6fvz8zjm212rzzn5r3bi72phpywjxc9v";
-      system = "architecture.builder-protocol.json";
-      asd = "architecture.builder-protocol.json";
-    });
-    systems = [ "architecture.builder-protocol.json/test" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "architecture_dot_builder-protocol" pkgs) (getAttr "architecture_dot_builder-protocol_dot_json" pkgs) (getAttr "fiveam" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  architecture_dot_builder-protocol_dot_print-tree = {
-    pname = "architecture.builder-protocol.print-tree";
-    version = "20221106-git";
-    asds = [ "architecture.builder-protocol.print-tree" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/architecture.builder-protocol/2022-11-06/architecture.builder-protocol-20221106-git.tgz";
-      sha256 = "0nv5wmcf7nvh44148cvq6fvz8zjm212rzzn5r3bi72phpywjxc9v";
-      system = "architecture.builder-protocol.print-tree";
-      asd = "architecture.builder-protocol.print-tree";
-    });
-    systems = [ "architecture.builder-protocol.print-tree" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "architecture_dot_builder-protocol" pkgs) (getAttr "utilities_dot_print-tree" pkgs) ];
-  };
-  architecture_dot_builder-protocol_dot_print-tree_slash_test = {
-    pname = "architecture.builder-protocol.print-tree_test";
-    version = "20221106-git";
-    asds = [ "architecture.builder-protocol.print-tree" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/architecture.builder-protocol/2022-11-06/architecture.builder-protocol-20221106-git.tgz";
-      sha256 = "0nv5wmcf7nvh44148cvq6fvz8zjm212rzzn5r3bi72phpywjxc9v";
-      system = "architecture.builder-protocol.print-tree";
-      asd = "architecture.builder-protocol.print-tree";
-    });
-    systems = [ "architecture.builder-protocol.print-tree/test" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "architecture_dot_builder-protocol_dot_print-tree" pkgs) (getAttr "fiveam" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  architecture_dot_builder-protocol_dot_universal-builder = {
-    pname = "architecture.builder-protocol.universal-builder";
-    version = "20221106-git";
-    asds = [ "architecture.builder-protocol.universal-builder" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/architecture.builder-protocol/2022-11-06/architecture.builder-protocol-20221106-git.tgz";
-      sha256 = "0nv5wmcf7nvh44148cvq6fvz8zjm212rzzn5r3bi72phpywjxc9v";
-      system = "architecture.builder-protocol.universal-builder";
-      asd = "architecture.builder-protocol.universal-builder";
-    });
-    systems = [ "architecture.builder-protocol.universal-builder" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "architecture_dot_builder-protocol" pkgs) (getAttr "closer-mop" pkgs) ];
-  };
-  architecture_dot_builder-protocol_dot_universal-builder_slash_test = {
-    pname = "architecture.builder-protocol.universal-builder_test";
-    version = "20221106-git";
-    asds = [ "architecture.builder-protocol.universal-builder" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/architecture.builder-protocol/2022-11-06/architecture.builder-protocol-20221106-git.tgz";
-      sha256 = "0nv5wmcf7nvh44148cvq6fvz8zjm212rzzn5r3bi72phpywjxc9v";
-      system = "architecture.builder-protocol.universal-builder";
-      asd = "architecture.builder-protocol.universal-builder";
-    });
-    systems = [ "architecture.builder-protocol.universal-builder/test" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "architecture_dot_builder-protocol" pkgs) (getAttr "architecture_dot_builder-protocol_dot_universal-builder" pkgs) (getAttr "fiveam" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  architecture_dot_builder-protocol_dot_xpath = {
-    pname = "architecture.builder-protocol.xpath";
-    version = "20221106-git";
-    asds = [ "architecture.builder-protocol.xpath" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/architecture.builder-protocol/2022-11-06/architecture.builder-protocol-20221106-git.tgz";
-      sha256 = "0nv5wmcf7nvh44148cvq6fvz8zjm212rzzn5r3bi72phpywjxc9v";
-      system = "architecture.builder-protocol.xpath";
-      asd = "architecture.builder-protocol.xpath";
-    });
-    systems = [ "architecture.builder-protocol.xpath" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "architecture_dot_builder-protocol" pkgs) (getAttr "xpath" pkgs) ];
-  };
-  architecture_dot_builder-protocol_dot_xpath_slash_test = {
-    pname = "architecture.builder-protocol.xpath_test";
-    version = "20221106-git";
-    asds = [ "architecture.builder-protocol.xpath" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/architecture.builder-protocol/2022-11-06/architecture.builder-protocol-20221106-git.tgz";
-      sha256 = "0nv5wmcf7nvh44148cvq6fvz8zjm212rzzn5r3bi72phpywjxc9v";
-      system = "architecture.builder-protocol.xpath";
-      asd = "architecture.builder-protocol.xpath";
-    });
-    systems = [ "architecture.builder-protocol.xpath/test" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "architecture_dot_builder-protocol_dot_xpath" pkgs) (getAttr "fiveam" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  architecture_dot_builder-protocol_slash_test = {
-    pname = "architecture.builder-protocol_test";
-    version = "20221106-git";
-    asds = [ "architecture.builder-protocol" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/architecture.builder-protocol/2022-11-06/architecture.builder-protocol-20221106-git.tgz";
-      sha256 = "0nv5wmcf7nvh44148cvq6fvz8zjm212rzzn5r3bi72phpywjxc9v";
-      system = "architecture.builder-protocol";
-      asd = "architecture.builder-protocol";
-    });
-    systems = [ "architecture.builder-protocol/test" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "architecture_dot_builder-protocol" pkgs) (getAttr "fiveam" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  architecture_dot_service-provider = {
-    pname = "architecture.service-provider";
-    version = "20191007-git";
-    asds = [ "architecture.service-provider" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/architecture.service-provider/2019-10-07/architecture.service-provider-20191007-git.tgz";
-      sha256 = "0n4a299md5z0wvk6j3my4ii6cs198fqgizz1swic89p1qz5n2fjm";
-      system = "architecture.service-provider";
-      asd = "architecture.service-provider";
-    });
-    systems = [ "architecture.service-provider" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "let-plus" pkgs) (getAttr "more-conditions" pkgs) (getAttr "utilities_dot_print-items" pkgs) ];
-  };
-  architecture_dot_service-provider-and-hooks = {
-    pname = "architecture.service-provider-and-hooks";
-    version = "20191007-git";
-    asds = [ "architecture.service-provider-and-hooks" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/architecture.service-provider/2019-10-07/architecture.service-provider-20191007-git.tgz";
-      sha256 = "0n4a299md5z0wvk6j3my4ii6cs198fqgizz1swic89p1qz5n2fjm";
-      system = "architecture.service-provider-and-hooks";
-      asd = "architecture.service-provider-and-hooks";
-    });
-    systems = [ "architecture.service-provider-and-hooks" ];
-    lispLibs = [ (getAttr "cl-hooks" pkgs) (getAttr "architecture_dot_service-provider" pkgs) ];
-  };
-  architecture_dot_service-provider-and-hooks_slash_test = {
-    pname = "architecture.service-provider-and-hooks_test";
-    version = "20191007-git";
-    asds = [ "architecture.service-provider-and-hooks" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/architecture.service-provider/2019-10-07/architecture.service-provider-20191007-git.tgz";
-      sha256 = "0n4a299md5z0wvk6j3my4ii6cs198fqgizz1swic89p1qz5n2fjm";
-      system = "architecture.service-provider-and-hooks";
-      asd = "architecture.service-provider-and-hooks";
-    });
-    systems = [ "architecture.service-provider-and-hooks/test" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "architecture_dot_service-provider" pkgs) (getAttr "architecture_dot_service-provider-and-hooks" pkgs) (getAttr "fiveam" pkgs) (getAttr "let-plus" pkgs) (getAttr "more-conditions" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  architecture_dot_service-provider_slash_test = {
-    pname = "architecture.service-provider_test";
-    version = "20191007-git";
-    asds = [ "architecture.service-provider" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/architecture.service-provider/2019-10-07/architecture.service-provider-20191007-git.tgz";
-      sha256 = "0n4a299md5z0wvk6j3my4ii6cs198fqgizz1swic89p1qz5n2fjm";
-      system = "architecture.service-provider";
-      asd = "architecture.service-provider";
-    });
-    systems = [ "architecture.service-provider/test" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "architecture_dot_service-provider" pkgs) (getAttr "fiveam" pkgs) (getAttr "let-plus" pkgs) (getAttr "more-conditions" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  archive = {
-    pname = "archive";
-    version = "20160318-git";
-    asds = [ "archive" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/archive/2016-03-18/archive-20160318-git.tgz";
-      sha256 = "0pvsc9fmybx7rxd0kmzq4shi6hszdpwdc1sfy7jwyfxf8n3hnv4p";
-      system = "archive";
-      asd = "archive";
-    });
-    systems = [ "archive" ];
-    lispLibs = [ (getAttr "cl-fad" pkgs) (getAttr "trivial-gray-streams" pkgs) ];
-  };
-  arith = {
-    pname = "arith";
-    version = "20170830-git";
-    asds = [ "arith" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/paren-test/2017-08-30/paren-test-20170830-git.tgz";
-      sha256 = "0b2d3kcv3n4b0dm67pzhxx8wxjsgnb32bw2dsprblc7149gaczdr";
-      system = "arith";
-      asd = "arith";
-    });
-    systems = [ "arith" ];
-    lispLibs = [ (getAttr "paren-files" pkgs) (getAttr "paren-test" pkgs) (getAttr "parenscript" pkgs) ];
-  };
-  arithmetic-operators-as-words = {
-    pname = "arithmetic-operators-as-words";
-    version = "20200610-git";
-    asds = [ "arithmetic-operators-as-words" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/arithmetic-operators-as-words/2020-06-10/arithmetic-operators-as-words-20200610-git.tgz";
-      sha256 = "1bcfkbq3kqns2ng0cdmj81c72j63641pqlskg4xrzkgkh25bhkks";
-      system = "arithmetic-operators-as-words";
-      asd = "arithmetic-operators-as-words";
-    });
-    systems = [ "arithmetic-operators-as-words" ];
-    lispLibs = [  ];
-  };
-  arnesi = {
-    pname = "arnesi";
-    version = "20170403-git";
-    asds = [ "arnesi" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/arnesi/2017-04-03/arnesi-20170403-git.tgz";
-      sha256 = "0jgj2xgd1gq6rf8ia43lkmbrbxnp8rgs053br9azfa25ygk3ikbh";
-      system = "arnesi";
-      asd = "arnesi";
-    });
-    systems = [ "arnesi" ];
-    lispLibs = [ (getAttr "collectors" pkgs) ];
-  };
-  arnesi_slash_cl-ppcre-extras = {
-    pname = "arnesi_cl-ppcre-extras";
-    version = "20170403-git";
-    asds = [ "arnesi" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/arnesi/2017-04-03/arnesi-20170403-git.tgz";
-      sha256 = "0jgj2xgd1gq6rf8ia43lkmbrbxnp8rgs053br9azfa25ygk3ikbh";
-      system = "arnesi";
-      asd = "arnesi";
-    });
-    systems = [ "arnesi/cl-ppcre-extras" ];
-    lispLibs = [ (getAttr "arnesi" pkgs) (getAttr "cl-ppcre" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  arnesi_slash_slime-extras = {
-    pname = "arnesi_slime-extras";
-    version = "20170403-git";
-    asds = [ "arnesi" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/arnesi/2017-04-03/arnesi-20170403-git.tgz";
-      sha256 = "0jgj2xgd1gq6rf8ia43lkmbrbxnp8rgs053br9azfa25ygk3ikbh";
-      system = "arnesi";
-      asd = "arnesi";
-    });
-    systems = [ "arnesi/slime-extras" ];
-    lispLibs = [ (getAttr "arnesi" pkgs) (getAttr "swank" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  array-operations = {
-    pname = "array-operations";
-    version = "1.0.0";
-    asds = [ "array-operations" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/array-operations/2022-07-07/array-operations-1.0.0.tgz";
-      sha256 = "12rmijvz5gpri5f5vi5j49bngiy2c01f5755rl39kxpv1b886gvy";
-      system = "array-operations";
-      asd = "array-operations";
-    });
-    systems = [ "array-operations" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "let-plus" pkgs) ];
-  };
-  array-operations_slash_tests = {
-    pname = "array-operations_tests";
-    version = "1.0.0";
-    asds = [ "array-operations" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/array-operations/2022-07-07/array-operations-1.0.0.tgz";
-      sha256 = "12rmijvz5gpri5f5vi5j49bngiy2c01f5755rl39kxpv1b886gvy";
-      system = "array-operations";
-      asd = "array-operations";
-    });
-    systems = [ "array-operations/tests" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "array-operations" pkgs) (getAttr "clunit2" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  array-utils = {
-    pname = "array-utils";
-    version = "20221106-git";
-    asds = [ "array-utils" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/array-utils/2022-11-06/array-utils-20221106-git.tgz";
-      sha256 = "0d7nddak8h2aa82z11vdbd97srk5bdgq41pzmibsz3ymspnndicd";
-      system = "array-utils";
-      asd = "array-utils";
-    });
-    systems = [ "array-utils" ];
-    lispLibs = [  ];
-  };
-  array-utils-test = {
-    pname = "array-utils-test";
-    version = "20221106-git";
-    asds = [ "array-utils-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/array-utils/2022-11-06/array-utils-20221106-git.tgz";
-      sha256 = "0d7nddak8h2aa82z11vdbd97srk5bdgq41pzmibsz3ymspnndicd";
-      system = "array-utils-test";
-      asd = "array-utils-test";
-    });
-    systems = [ "array-utils-test" ];
-    lispLibs = [ (getAttr "array-utils" pkgs) (getAttr "parachute" pkgs) ];
-  };
-  arrival = {
-    pname = "arrival";
-    version = "20211209-git";
-    asds = [ "arrival" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/arrival/2021-12-09/arrival-20211209-git.tgz";
-      sha256 = "1iwdk5fdismw91ln5wdnn8c8xv06fbgiwbvdj2gy2hpp8f3qk00b";
-      system = "arrival";
-      asd = "arrival";
-    });
-    systems = [ "arrival" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "iterate" pkgs) (getAttr "log4cl" pkgs) (getAttr "trivia" pkgs) (getAttr "trivia_dot_quasiquote" pkgs) ];
-  };
-  arrow-macros = {
-    pname = "arrow-macros";
-    version = "20201220-git";
-    asds = [ "arrow-macros" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/arrow-macros/2020-12-20/arrow-macros-20201220-git.tgz";
-      sha256 = "1b7vldvhn8zx60h010573gmqv2igarpnb6h3pq8qydhwfza0xd4g";
-      system = "arrow-macros";
-      asd = "arrow-macros";
-    });
-    systems = [ "arrow-macros" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) ];
-  };
-  arrow-macros-test = {
-    pname = "arrow-macros-test";
-    version = "20201220-git";
-    asds = [ "arrow-macros-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/arrow-macros/2020-12-20/arrow-macros-20201220-git.tgz";
-      sha256 = "1b7vldvhn8zx60h010573gmqv2igarpnb6h3pq8qydhwfza0xd4g";
-      system = "arrow-macros-test";
-      asd = "arrow-macros-test";
-    });
-    systems = [ "arrow-macros-test" ];
-    lispLibs = [ (getAttr "arrow-macros" pkgs) (getAttr "fiveam" pkgs) ];
-  };
-  arrows = {
-    pname = "arrows";
-    version = "20181018-git";
-    asds = [ "arrows" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/arrows/2018-10-18/arrows-20181018-git.tgz";
-      sha256 = "042k9vkssrqx9nhp14wdzm942zgdxvp35mba0p2syz98i75im2yy";
-      system = "arrows";
-      asd = "arrows";
-    });
-    systems = [ "arrows" ];
-    lispLibs = [  ];
-  };
-  arrows_slash_test = {
-    pname = "arrows_test";
-    version = "20181018-git";
-    asds = [ "arrows" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/arrows/2018-10-18/arrows-20181018-git.tgz";
-      sha256 = "042k9vkssrqx9nhp14wdzm942zgdxvp35mba0p2syz98i75im2yy";
-      system = "arrows";
-      asd = "arrows";
-    });
-    systems = [ "arrows/test" ];
-    lispLibs = [ (getAttr "arrows" pkgs) (getAttr "hu_dot_dwim_dot_stefil" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  ascii-strings = {
-    pname = "ascii-strings";
-    version = "20211209-git";
-    asds = [ "ascii-strings" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-string-match/2021-12-09/cl-string-match-20211209-git.tgz";
-      sha256 = "0zndlkw3qy3vw4px4qv884z6232w8zfaliyc88irjwizdv35wcq9";
-      system = "ascii-strings";
-      asd = "ascii-strings";
-    });
-    systems = [ "ascii-strings" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "babel" pkgs) ];
-  };
-  asd-generator = {
-    pname = "asd-generator";
-    version = "20190107-git";
-    asds = [ "asd-generator" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/asd-generator/2019-01-07/asd-generator-20190107-git.tgz";
-      sha256 = "0yiybl7b9x1f85v0drj0yw9821y3yfhya4n6gycnv5vvx6jp9by4";
-      system = "asd-generator";
-      asd = "asd-generator";
-    });
-    systems = [ "asd-generator" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cl-fad" pkgs) (getAttr "iterate" pkgs) (getAttr "trivia" pkgs) ];
-  };
-  asd-generator-test = {
-    pname = "asd-generator-test";
-    version = "20190107-git";
-    asds = [ "asd-generator-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/asd-generator/2019-01-07/asd-generator-20190107-git.tgz";
-      sha256 = "0yiybl7b9x1f85v0drj0yw9821y3yfhya4n6gycnv5vvx6jp9by4";
-      system = "asd-generator-test";
-      asd = "asd-generator-test";
-    });
-    systems = [ "asd-generator-test" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cl-fad" pkgs) (getAttr "iterate" pkgs) ];
-  };
-  asdf = {
-    pname = "asdf";
-    version = "3.3.6";
-    asds = [ "asdf" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/uiop/2022-11-06/uiop-3.3.6.tgz";
-      sha256 = "080lcdw90j30gg2vv9bnwj21aq08mp1kk4nax3ffkjssnrnjwhmr";
-      system = "asdf";
-      asd = "uiop";
-    });
-    systems = [ "asdf" ];
-    lispLibs = [  ];
-  };
-  asdf-dependency-grovel = {
-    pname = "asdf-dependency-grovel";
-    version = "20170403-git";
-    asds = [ "asdf-dependency-grovel" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/asdf-dependency-grovel/2017-04-03/asdf-dependency-grovel-20170403-git.tgz";
-      sha256 = "1y4kdqsda4ira4r9dws6kxzzv6mg45q3lkmb2c9mg9q7ksc5glif";
-      system = "asdf-dependency-grovel";
-      asd = "asdf-dependency-grovel";
-    });
-    systems = [ "asdf-dependency-grovel" ];
-    lispLibs = [  ];
-  };
-  asdf-driver = {
-    pname = "asdf-driver";
-    version = "3.3.6";
-    asds = [ "asdf-driver" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/uiop/2022-11-06/uiop-3.3.6.tgz";
-      sha256 = "080lcdw90j30gg2vv9bnwj21aq08mp1kk4nax3ffkjssnrnjwhmr";
-      system = "asdf-driver";
-      asd = "asdf-driver";
-    });
-    systems = [ "asdf-driver" ];
-    lispLibs = [ (getAttr "uiop" pkgs) ];
-  };
-  asdf-encodings = {
-    pname = "asdf-encodings";
-    version = "20191007-git";
-    asds = [ "asdf-encodings" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/asdf-encodings/2019-10-07/asdf-encodings-20191007-git.tgz";
-      sha256 = "1yn77nhrz5w2s7nlafxjnk9j8fsrz7ivrm7nbj4r726bwc5knky6";
-      system = "asdf-encodings";
-      asd = "asdf-encodings";
-    });
-    systems = [ "asdf-encodings" ];
-    lispLibs = [  ];
-  };
-  asdf-encodings_slash_test = {
-    pname = "asdf-encodings_test";
-    version = "20191007-git";
-    asds = [ "asdf-encodings" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/asdf-encodings/2019-10-07/asdf-encodings-20191007-git.tgz";
-      sha256 = "1yn77nhrz5w2s7nlafxjnk9j8fsrz7ivrm7nbj4r726bwc5knky6";
-      system = "asdf-encodings";
-      asd = "asdf-encodings";
-    });
-    systems = [ "asdf-encodings/test" ];
-    lispLibs = [ (getAttr "asdf-encodings" pkgs) (getAttr "fare-utils" pkgs) (getAttr "hu_dot_dwim_dot_stefil" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  asdf-finalizers = {
-    pname = "asdf-finalizers";
-    version = "20221106-git";
-    asds = [ "asdf-finalizers" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/asdf-finalizers/2022-11-06/asdf-finalizers-20221106-git.tgz";
-      sha256 = "1w56c9yjjydjshsgqxz57qlp2v3r4ilbisnsgiqphvxnhvd41y0v";
-      system = "asdf-finalizers";
-      asd = "asdf-finalizers";
-    });
-    systems = [ "asdf-finalizers" ];
-    lispLibs = [  ];
-  };
-  asdf-linguist = {
-    pname = "asdf-linguist";
-    version = "20150923-git";
-    asds = [ "asdf-linguist" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/asdf-linguist/2015-09-23/asdf-linguist-20150923-git.tgz";
-      sha256 = "14jaqmxxh70f1jf58mxb117951iql2sjxymmbjyqniqwazznbd9a";
-      system = "asdf-linguist";
-      asd = "asdf-linguist";
-    });
-    systems = [ "asdf-linguist" ];
-    lispLibs = [ (getAttr "inferior-shell" pkgs) (getAttr "parenscript" pkgs) ];
-  };
-  asdf-manager = {
-    pname = "asdf-manager";
-    version = "20160208-git";
-    asds = [ "asdf-manager" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/asdf-manager/2016-02-08/asdf-manager-20160208-git.tgz";
-      sha256 = "0jw7d0vg13v1l1fwwhsw04n6w3c49vsbmq6vrlrkh95aayc5413w";
-      system = "asdf-manager";
-      asd = "asdf-manager";
-    });
-    systems = [ "asdf-manager" ];
-    lispLibs = [ (getAttr "trivial-download" pkgs) (getAttr "trivial-extract" pkgs) (getAttr "uiop" pkgs) ];
-  };
-  asdf-manager-test = {
-    pname = "asdf-manager-test";
-    version = "20160208-git";
-    asds = [ "asdf-manager-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/asdf-manager/2016-02-08/asdf-manager-20160208-git.tgz";
-      sha256 = "0jw7d0vg13v1l1fwwhsw04n6w3c49vsbmq6vrlrkh95aayc5413w";
-      system = "asdf-manager-test";
-      asd = "asdf-manager-test";
-    });
-    systems = [ "asdf-manager-test" ];
-    lispLibs = [ (getAttr "asdf-manager" pkgs) (getAttr "fiveam" pkgs) ];
-  };
-  asdf-nst = {
-    pname = "asdf-nst";
-    version = "20210807-git";
-    asds = [ "asdf-nst" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-nst/2021-08-07/cl-nst-20210807-git.tgz";
-      sha256 = "1hf3r6pqbnd9vsd1i24qmz928kia72hdgmiafiwb6jw1hmj3r6ga";
-      system = "asdf-nst";
-      asd = "asdf-nst";
-    });
-    systems = [ "asdf-nst" ];
-    lispLibs = [  ];
-  };
-  asdf-package-system = {
-    pname = "asdf-package-system";
-    version = "20150608-git";
-    asds = [ "asdf-package-system" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/asdf-package-system/2015-06-08/asdf-package-system-20150608-git.tgz";
-      sha256 = "1q4qgvbl64c4zdbq91by1la8licdgam7ybnhvg2bixdhq4v693sj";
-      system = "asdf-package-system";
-      asd = "asdf-package-system";
-    });
-    systems = [ "asdf-package-system" ];
-    lispLibs = [  ];
-  };
-  asdf-system-connections = {
-    pname = "asdf-system-connections";
-    version = "20170124-git";
-    asds = [ "asdf-system-connections" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/asdf-system-connections/2017-01-24/asdf-system-connections-20170124-git.tgz";
-      sha256 = "06kg0m8bv383qq3r34x0f8hz6p6zxcw02qn7kj960vcnrp5a5b3y";
-      system = "asdf-system-connections";
-      asd = "asdf-system-connections";
-    });
-    systems = [ "asdf-system-connections" ];
-    lispLibs = [  ];
-  };
-  asdf-viz = {
-    pname = "asdf-viz";
-    version = "20200610-git";
-    asds = [ "asdf-viz" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/asdf-viz/2020-06-10/asdf-viz-20200610-git.tgz";
-      sha256 = "1hj9ac1m2kz8x65n62gd1s2k2x9pip9a85pnmib53qsks3a9sc4z";
-      system = "asdf-viz";
-      asd = "asdf-viz";
-    });
-    systems = [ "asdf-viz" ];
-    lispLibs = [ (getAttr "cl-dot" pkgs) (getAttr "closer-mop" pkgs) (getAttr "iterate" pkgs) (getAttr "swank" pkgs) (getAttr "trivia" pkgs) ];
-  };
-  aserve = {
-    pname = "aserve";
-    version = "20190813-git";
-    asds = [ "aserve" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/portableaserve/2019-08-13/portableaserve-20190813-git.tgz";
-      sha256 = "0ak6mqp84sjr0a7h5svr16vra4bf4fcx6wpir0n88dc1vjwy5xqa";
-      system = "aserve";
-      asd = "aserve";
-    });
-    systems = [ "aserve" ];
-    lispLibs = [ (getAttr "acl-compat" pkgs) (getAttr "htmlgen" pkgs) ];
-  };
-  asn1 = {
-    pname = "asn1";
-    version = "20220331-git";
-    asds = [ "asn1" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/asn1/2022-03-31/asn1-20220331-git.tgz";
-      sha256 = "16gs4xznmg19ii0cg7g2yxrk9ls5vah8ynjj80s99rv8wi3789z1";
-      system = "asn1";
-      asd = "asn1";
-    });
-    systems = [ "asn1" ];
-    lispLibs = [ (getAttr "fast-io" pkgs) (getAttr "ironclad" pkgs) (getAttr "trivia" pkgs) ];
-  };
-  asn1_slash_tests = {
-    pname = "asn1_tests";
-    version = "20220331-git";
-    asds = [ "asn1" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/asn1/2022-03-31/asn1-20220331-git.tgz";
-      sha256 = "16gs4xznmg19ii0cg7g2yxrk9ls5vah8ynjj80s99rv8wi3789z1";
-      system = "asn1";
-      asd = "asn1";
-    });
-    systems = [ "asn1/tests" ];
-    lispLibs = [  ];
-    meta = {
-      broken = true;
-    };
-  };
-  assert-p = {
-    pname = "assert-p";
-    version = "20200610-git";
-    asds = [ "assert-p" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/assert-p/2020-06-10/assert-p-20200610-git.tgz";
-      sha256 = "1x24rkqkqiw8zd26swi9rmhfplkmr5scz3bhjwccah9d2s36b1xs";
-      system = "assert-p";
-      asd = "assert-p";
-    });
-    systems = [ "assert-p" ];
-    lispLibs = [ (getAttr "assertion-error" pkgs) (getAttr "simplet-asdf" pkgs) ];
-  };
-  assert-p_slash_test = {
-    pname = "assert-p_test";
-    version = "20200610-git";
-    asds = [ "assert-p" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/assert-p/2020-06-10/assert-p-20200610-git.tgz";
-      sha256 = "1x24rkqkqiw8zd26swi9rmhfplkmr5scz3bhjwccah9d2s36b1xs";
-      system = "assert-p";
-      asd = "assert-p";
-    });
-    systems = [ "assert-p/test" ];
-    lispLibs = [ (getAttr "assert-p" pkgs) (getAttr "simplet" pkgs) (getAttr "simplet-asdf" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  assertion-error = {
-    pname = "assertion-error";
-    version = "20191227-git";
-    asds = [ "assertion-error" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/assertion-error/2019-12-27/assertion-error-20191227-git.tgz";
-      sha256 = "0ix23kkakmf4nwx852zsssb831jvajr3qyppqfyks7y1ls617svn";
-      system = "assertion-error";
-      asd = "assertion-error";
-    });
-    systems = [ "assertion-error" ];
-    lispLibs = [ (getAttr "dissect" pkgs) ];
-  };
-  assertion-error_slash_test = {
-    pname = "assertion-error_test";
-    version = "20191227-git";
-    asds = [ "assertion-error" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/assertion-error/2019-12-27/assertion-error-20191227-git.tgz";
-      sha256 = "0ix23kkakmf4nwx852zsssb831jvajr3qyppqfyks7y1ls617svn";
-      system = "assertion-error";
-      asd = "assertion-error";
-    });
-    systems = [ "assertion-error/test" ];
-    lispLibs = [ (getAttr "assertion-error" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  assoc-utils = {
-    pname = "assoc-utils";
-    version = "20221106-git";
-    asds = [ "assoc-utils" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/assoc-utils/2022-11-06/assoc-utils-20221106-git.tgz";
-      sha256 = "0mqb5iw4qwga66y7flifb1n0y5hp4gc3x8xfg4cild46x7mjqxws";
-      system = "assoc-utils";
-      asd = "assoc-utils";
-    });
-    systems = [ "assoc-utils" ];
-    lispLibs = [  ];
-  };
-  assoc-utils-test = {
-    pname = "assoc-utils-test";
-    version = "20221106-git";
-    asds = [ "assoc-utils-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/assoc-utils/2022-11-06/assoc-utils-20221106-git.tgz";
-      sha256 = "0mqb5iw4qwga66y7flifb1n0y5hp4gc3x8xfg4cild46x7mjqxws";
-      system = "assoc-utils-test";
-      asd = "assoc-utils-test";
-    });
-    systems = [ "assoc-utils-test" ];
-    lispLibs = [ (getAttr "assoc-utils" pkgs) (getAttr "prove" pkgs) (getAttr "prove-asdf" pkgs) ];
-  };
-  asteroids = {
-    pname = "asteroids";
-    version = "20191007-git";
-    asds = [ "asteroids" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/asteroids/2019-10-07/asteroids-20191007-git.tgz";
-      sha256 = "1wdzwpizgy477ny6pxjshj3q25phdxsjfq8cvrbx0x7k5w8fkg50";
-      system = "asteroids";
-      asd = "asteroids";
-    });
-    systems = [ "asteroids" ];
-    lispLibs = [ (getAttr "lispbuilder-sdl" pkgs) (getAttr "lispbuilder-sdl-gfx" pkgs) (getAttr "lispbuilder-sdl-mixer" pkgs) ];
-  };
-  astonish = {
-    pname = "astonish";
-    version = "20210124-git";
-    asds = [ "astonish" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/astonish/2021-01-24/astonish-20210124-git.tgz";
-      sha256 = "14qphx97q4gqcc71figc6r3cgy89rn9c43sh35fzxkln9ydk2pr6";
-      system = "astonish";
-      asd = "astonish";
-    });
-    systems = [ "astonish" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "uiop" pkgs) ];
-  };
-  astonish_slash_tests = {
-    pname = "astonish_tests";
-    version = "20210124-git";
-    asds = [ "astonish" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/astonish/2021-01-24/astonish-20210124-git.tgz";
-      sha256 = "14qphx97q4gqcc71figc6r3cgy89rn9c43sh35fzxkln9ydk2pr6";
-      system = "astonish";
-      asd = "astonish";
-    });
-    systems = [ "astonish/tests" ];
-    lispLibs = [ (getAttr "astonish" pkgs) (getAttr "rove" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  async-process = {
-    pname = "async-process";
-    version = "20210531-git";
-    asds = [ "async-process" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/async-process/2021-05-31/async-process-20210531-git.tgz";
-      sha256 = "0vlhyj4rrkb1bhl1xjf25d1nv09hzpfl6hwymqkn7h6gr2fdp8m1";
-      system = "async-process";
-      asd = "async-process";
-    });
-    systems = [ "async-process" ];
-    lispLibs = [ (getAttr "cffi" pkgs) ];
-  };
-  atdoc = {
-    pname = "atdoc";
-    version = "20120305-git";
-    asds = [ "atdoc" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/atdoc/2012-03-05/atdoc-20120305-git.tgz";
-      sha256 = "1w54phadjj00sy5qz5n0hmhzyjrx26h9hw06756zdpfbzk4f5il6";
-      system = "atdoc";
-      asd = "atdoc";
-    });
-    systems = [ "atdoc" ];
-    lispLibs = [ (getAttr "cl-ppcre" pkgs) (getAttr "closer-mop" pkgs) (getAttr "cxml" pkgs) (getAttr "swank" pkgs) (getAttr "split-sequence" pkgs) (getAttr "xuriella" pkgs) ];
-  };
-  atomics = {
-    pname = "atomics";
-    version = "20210630-git";
-    asds = [ "atomics" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/atomics/2021-06-30/atomics-20210630-git.tgz";
-      sha256 = "0mp5jdqq0aamdhgnvw149cqqi3zg7dkkibp25qi4rafw1fnpd40z";
-      system = "atomics";
-      asd = "atomics";
-    });
-    systems = [ "atomics" ];
-    lispLibs = [ (getAttr "documentation-utils" pkgs) ];
-  };
-  atomics-test = {
-    pname = "atomics-test";
-    version = "20210630-git";
-    asds = [ "atomics-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/atomics/2021-06-30/atomics-20210630-git.tgz";
-      sha256 = "0mp5jdqq0aamdhgnvw149cqqi3zg7dkkibp25qi4rafw1fnpd40z";
-      system = "atomics-test";
-      asd = "atomics-test";
-    });
-    systems = [ "atomics-test" ];
-    lispLibs = [ (getAttr "atomics" pkgs) (getAttr "parachute" pkgs) ];
-  };
-  audio-tag = {
-    pname = "audio-tag";
-    version = "20210531-git";
-    asds = [ "audio-tag" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/audio-tag/2021-05-31/audio-tag-20210531-git.tgz";
-      sha256 = "1k9152wakazr34q4q5x8zzv3mjjkf0n9xdg7c2qqwigwws0ysgzh";
-      system = "audio-tag";
-      asd = "audio-tag";
-    });
-    systems = [ "audio-tag" ];
-    lispLibs = [ (getAttr "flexi-streams" pkgs) (getAttr "osicat" pkgs) ];
-  };
-  audio-tag_slash_tests = {
-    pname = "audio-tag_tests";
-    version = "20210531-git";
-    asds = [ "audio-tag" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/audio-tag/2021-05-31/audio-tag-20210531-git.tgz";
-      sha256 = "1k9152wakazr34q4q5x8zzv3mjjkf0n9xdg7c2qqwigwws0ysgzh";
-      system = "audio-tag";
-      asd = "audio-tag";
-    });
-    systems = [ "audio-tag/tests" ];
-    lispLibs = [ (getAttr "audio-tag" pkgs) (getAttr "rove" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  authenticated-encryption = {
-    pname = "authenticated-encryption";
-    version = "20181018-git";
-    asds = [ "authenticated-encryption" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/authenticated-encryption/2018-10-18/authenticated-encryption-20181018-git.tgz";
-      sha256 = "0cvl4g0g59z5dicg7q3f9hhqshz2m0a6l2fzic75c3yv28q8m2vr";
-      system = "authenticated-encryption";
-      asd = "authenticated-encryption";
-    });
-    systems = [ "authenticated-encryption" ];
-    lispLibs = [ (getAttr "ironclad" pkgs) ];
-  };
-  authenticated-encryption-test = {
-    pname = "authenticated-encryption-test";
-    version = "20181018-git";
-    asds = [ "authenticated-encryption-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/authenticated-encryption/2018-10-18/authenticated-encryption-20181018-git.tgz";
-      sha256 = "0cvl4g0g59z5dicg7q3f9hhqshz2m0a6l2fzic75c3yv28q8m2vr";
-      system = "authenticated-encryption-test";
-      asd = "authenticated-encryption-test";
-    });
-    systems = [ "authenticated-encryption-test" ];
-    lispLibs = [ (getAttr "_1am" pkgs) (getAttr "authenticated-encryption" pkgs) ];
-  };
-  auto-restart = {
-    pname = "auto-restart";
-    version = "20221106-git";
-    asds = [ "auto-restart" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/auto-restart/2022-11-06/auto-restart-20221106-git.tgz";
-      sha256 = "1kzcxq57s3qfshvlp9w2yxs6kiyrvssrl94pa3vdf3x7644swrzi";
-      system = "auto-restart";
-      asd = "auto-restart";
-    });
-    systems = [ "auto-restart" ];
-    lispLibs = [ (getAttr "iterate" pkgs) ];
-  };
-  auto-restart_slash_tests = {
-    pname = "auto-restart_tests";
-    version = "20221106-git";
-    asds = [ "auto-restart" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/auto-restart/2022-11-06/auto-restart-20221106-git.tgz";
-      sha256 = "1kzcxq57s3qfshvlp9w2yxs6kiyrvssrl94pa3vdf3x7644swrzi";
-      system = "auto-restart";
-      asd = "auto-restart";
-    });
-    systems = [ "auto-restart/tests" ];
-    lispLibs = [ (getAttr "auto-restart" pkgs) (getAttr "fiveam" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  autoexport = {
-    pname = "autoexport";
-    version = "20211020-git";
-    asds = [ "autoexport" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/autoexport/2021-10-20/autoexport-20211020-git.tgz";
-      sha256 = "15kzq4hfsracxapxik3i6sxqqnwl7cb9lisgk9krrsk13d97l844";
-      system = "autoexport";
-      asd = "autoexport";
-    });
-    systems = [ "autoexport" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "closer-mop" pkgs) ];
-  };
-  automaton = {
-    pname = "automaton";
-    version = "20221106-git";
-    asds = [ "automaton" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/mcclim/2022-11-06/mcclim-20221106-git.tgz";
-      sha256 = "0hz6vz4c0xv8bjx02hf3rbnp66c7ifx2ld4y6nxdz6i70wyhwbdf";
-      system = "automaton";
-      asd = "automaton";
-    });
-    systems = [ "automaton" ];
-    lispLibs = [  ];
-  };
-  avatar-api = {
-    pname = "avatar-api";
-    version = "20150608-git";
-    asds = [ "avatar-api" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/avatar-api/2015-06-08/avatar-api-20150608-git.tgz";
-      sha256 = "026s8m0bl13iqyakfxc6zwacvpj2bxxipms1kl3k9ql99yn8imvr";
-      system = "avatar-api";
-      asd = "avatar-api";
-    });
-    systems = [ "avatar-api" ];
-    lispLibs = [ (getAttr "cl-json" pkgs) (getAttr "crypto-shortcuts" pkgs) (getAttr "drakma" pkgs) ];
-  };
-  avatar-api-test = {
-    pname = "avatar-api-test";
-    version = "20150608-git";
-    asds = [ "avatar-api-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/avatar-api/2015-06-08/avatar-api-20150608-git.tgz";
-      sha256 = "026s8m0bl13iqyakfxc6zwacvpj2bxxipms1kl3k9ql99yn8imvr";
-      system = "avatar-api-test";
-      asd = "avatar-api-test";
-    });
-    systems = [ "avatar-api-test" ];
-    lispLibs = [ (getAttr "avatar-api" pkgs) (getAttr "fiveam" pkgs) ];
-  };
-  avl-tree = {
-    pname = "avl-tree";
-    version = "20220707-git";
-    asds = [ "avl-tree" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/avl-tree/2022-07-07/avl-tree-20220707-git.tgz";
-      sha256 = "1xvh5rpz0kwzx42jrnh3kgqa87z5kmgd7f3fkkydiqj04hknsj7k";
-      system = "avl-tree";
-      asd = "avl-tree";
-    });
-    systems = [ "avl-tree" ];
-    lispLibs = [ (getAttr "mfiano-utils" pkgs) ];
-  };
-  aws-foundation = {
-    pname = "aws-foundation";
-    version = "20180711-git";
-    asds = [ "aws-foundation" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/aws-foundation/2018-07-11/aws-foundation-20180711-git.tgz";
-      sha256 = "1f5af22qw583frqjhnkf9wcccdkkpjiv0bbnlqqk7fxzm9pqpvhb";
-      system = "aws-foundation";
-      asd = "aws-foundation";
-    });
-    systems = [ "aws-foundation" ];
-    lispLibs = [ (getAttr "babel" pkgs) (getAttr "cl-json" pkgs) (getAttr "cl-json-helper" pkgs) (getAttr "dexador" pkgs) (getAttr "ironclad" pkgs) (getAttr "local-time" pkgs) ];
-  };
-  aws-sign4 = {
-    pname = "aws-sign4";
-    version = "20201220-git";
-    asds = [ "aws-sign4" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/aws-sign4/2020-12-20/aws-sign4-20201220-git.tgz";
-      sha256 = "1bwqmy9vlq0ilwhp48y05cdfav9inwv4kai8mjj1a95776xjmjnk";
-      system = "aws-sign4";
-      asd = "aws-sign4";
-    });
-    systems = [ "aws-sign4" ];
-    lispLibs = [ (getAttr "cl-ppcre" pkgs) (getAttr "flexi-streams" pkgs) (getAttr "ironclad" pkgs) (getAttr "local-time" pkgs) (getAttr "secret-values" pkgs) (getAttr "split-sequence" pkgs) ];
-  };
-  aws-sign4-example = {
-    pname = "aws-sign4-example";
-    version = "20201220-git";
-    asds = [ "aws-sign4-example" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/aws-sign4/2020-12-20/aws-sign4-20201220-git.tgz";
-      sha256 = "1bwqmy9vlq0ilwhp48y05cdfav9inwv4kai8mjj1a95776xjmjnk";
-      system = "aws-sign4-example";
-      asd = "aws-sign4";
-    });
-    systems = [ "aws-sign4-example" ];
-    lispLibs = [ (getAttr "aws-sign4" pkgs) (getAttr "drakma" pkgs) ];
-  };
-  aws-sign4-tests = {
-    pname = "aws-sign4-tests";
-    version = "20201220-git";
-    asds = [ "aws-sign4-tests" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/aws-sign4/2020-12-20/aws-sign4-20201220-git.tgz";
-      sha256 = "1bwqmy9vlq0ilwhp48y05cdfav9inwv4kai8mjj1a95776xjmjnk";
-      system = "aws-sign4-tests";
-      asd = "aws-sign4";
-    });
-    systems = [ "aws-sign4-tests" ];
-    lispLibs = [ (getAttr "aws-sign4" pkgs) ];
-  };
-  ayah-captcha = {
-    pname = "ayah-captcha";
-    version = "20180228-git";
-    asds = [ "ayah-captcha" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/ayah-captcha/2018-02-28/ayah-captcha-20180228-git.tgz";
-      sha256 = "1l9zg0hj5cd1yda1nnab7byrgkakh5vn3qcd4lmfidbijk6kiamw";
-      system = "ayah-captcha";
-      asd = "ayah-captcha";
-    });
-    systems = [ "ayah-captcha" ];
-    lispLibs = [ (getAttr "cl-json" pkgs) (getAttr "drakma" pkgs) ];
-  };
-  ayah-captcha-demo = {
-    pname = "ayah-captcha-demo";
-    version = "20180228-git";
-    asds = [ "ayah-captcha-demo" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/ayah-captcha/2018-02-28/ayah-captcha-20180228-git.tgz";
-      sha256 = "1l9zg0hj5cd1yda1nnab7byrgkakh5vn3qcd4lmfidbijk6kiamw";
-      system = "ayah-captcha-demo";
-      asd = "ayah-captcha-demo";
-    });
-    systems = [ "ayah-captcha-demo" ];
-    lispLibs = [ (getAttr "ayah-captcha" pkgs) (getAttr "cl-who" pkgs) (getAttr "hunchentoot" pkgs) ];
-  };
-  babel = {
-    pname = "babel";
-    version = "20200925-git";
-    asds = [ "babel" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/babel/2020-09-25/babel-20200925-git.tgz";
-      sha256 = "04frn19mngvsh8bh7fb1rfjm8mqk8bgzx5c43dg7z02nfsxkqqak";
-      system = "babel";
-      asd = "babel";
-    });
-    systems = [ "babel" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "trivial-features" pkgs) ];
-  };
-  babel-streams = {
-    pname = "babel-streams";
-    version = "20200925-git";
-    asds = [ "babel-streams" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/babel/2020-09-25/babel-20200925-git.tgz";
-      sha256 = "04frn19mngvsh8bh7fb1rfjm8mqk8bgzx5c43dg7z02nfsxkqqak";
-      system = "babel-streams";
-      asd = "babel-streams";
-    });
-    systems = [ "babel-streams" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "babel" pkgs) (getAttr "trivial-gray-streams" pkgs) ];
-  };
-  babel-tests = {
-    pname = "babel-tests";
-    version = "20200925-git";
-    asds = [ "babel-tests" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/babel/2020-09-25/babel-20200925-git.tgz";
-      sha256 = "04frn19mngvsh8bh7fb1rfjm8mqk8bgzx5c43dg7z02nfsxkqqak";
-      system = "babel-tests";
-      asd = "babel-tests";
-    });
-    systems = [ "babel-tests" ];
-    lispLibs = [ (getAttr "babel" pkgs) (getAttr "hu_dot_dwim_dot_stefil" pkgs) ];
-  };
-  base = {
-    pname = "base";
-    version = "master-1a957fb2-git";
-    asds = [ "base" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/gendl/2022-07-07/gendl-master-1a957fb2-git.tgz";
-      sha256 = "0j47qnvvfx3vnh3pll6rkya5m142hi93bd5jk65rv43vbc94sv30";
-      system = "base";
-      asd = "base";
-    });
-    systems = [ "base" ];
-    lispLibs = [  ];
-  };
-  base-blobs = {
-    pname = "base-blobs";
-    version = "stable-git";
-    asds = [ "base-blobs" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/base-blobs/2020-10-16/base-blobs-stable-git.tgz";
-      sha256 = "06m8rvczj309wq8by697gvrklhff5mnn5n5sky7i11bnszrxysys";
-      system = "base-blobs";
-      asd = "base-blobs";
-    });
-    systems = [ "base-blobs" ];
-    lispLibs = [ (getAttr "bodge-blobs-support" pkgs) (getAttr "trivial-features" pkgs) ];
-  };
-  base64 = {
-    pname = "base64";
-    version = "20181018-git";
-    asds = [ "base64" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/base64/2018-10-18/base64-20181018-git.tgz";
-      sha256 = "0qkqcrgmcqshcsnzn4pcyk8d1j9c7pks2qf51p1hfybz5shxkqkh";
-      system = "base64";
-      asd = "base64";
-    });
-    systems = [ "base64" ];
-    lispLibs = [  ];
-  };
-  basic-binary-ipc = {
-    pname = "basic-binary-ipc";
-    version = "20211209-git";
-    asds = [ "basic-binary-ipc" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/basic-binary-ipc/2021-12-09/basic-binary-ipc-20211209-git.tgz";
-      sha256 = "0bsxy27mnmzr6vys96cs2is57zvk0n9hlif9llnp4q9m2wzycbwm";
-      system = "basic-binary-ipc";
-      asd = "basic-binary-ipc";
-    });
-    systems = [ "basic-binary-ipc" ];
-    lispLibs = [ (getAttr "cffi-grovel" pkgs) ];
-  };
-  basic-binary-ipc-tests = {
-    pname = "basic-binary-ipc-tests";
-    version = "20211209-git";
-    asds = [ "basic-binary-ipc-tests" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/basic-binary-ipc/2021-12-09/basic-binary-ipc-20211209-git.tgz";
-      sha256 = "0bsxy27mnmzr6vys96cs2is57zvk0n9hlif9llnp4q9m2wzycbwm";
-      system = "basic-binary-ipc-tests";
-      asd = "basic-binary-ipc-tests";
-    });
-    systems = [ "basic-binary-ipc-tests" ];
-    lispLibs = [ (getAttr "basic-binary-ipc" pkgs) (getAttr "bordeaux-threads" pkgs) (getAttr "lisp-unit" pkgs) ];
-  };
-  bdef = {
-    pname = "bdef";
-    version = "20221106-git";
-    asds = [ "bdef" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/bdef/2022-11-06/bdef-20221106-git.tgz";
-      sha256 = "1zqal3xhbcrbq182h15a5qxpqsxm82400xyq34svzmsrk2nfrh08";
-      system = "bdef";
-      asd = "bdef";
-    });
-    systems = [ "bdef" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "eager-future2" pkgs) (getAttr "jsown" pkgs) (getAttr "mutility" pkgs) (getAttr "parse-float" pkgs) ];
-  };
-  bdef_slash_cl-collider = {
-    pname = "bdef_cl-collider";
-    version = "20221106-git";
-    asds = [ "bdef" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/bdef/2022-11-06/bdef-20221106-git.tgz";
-      sha256 = "1zqal3xhbcrbq182h15a5qxpqsxm82400xyq34svzmsrk2nfrh08";
-      system = "bdef";
-      asd = "bdef";
-    });
-    systems = [ "bdef/cl-collider" ];
-    lispLibs = [ (getAttr "bdef" pkgs) (getAttr "cl-collider" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  bdef_slash_cl-patterns = {
-    pname = "bdef_cl-patterns";
-    version = "20221106-git";
-    asds = [ "bdef" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/bdef/2022-11-06/bdef-20221106-git.tgz";
-      sha256 = "1zqal3xhbcrbq182h15a5qxpqsxm82400xyq34svzmsrk2nfrh08";
-      system = "bdef";
-      asd = "bdef";
-    });
-    systems = [ "bdef/cl-patterns" ];
-    lispLibs = [ (getAttr "bdef" pkgs) (getAttr "cl-patterns" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  bdef_slash_tests = {
-    pname = "bdef_tests";
-    version = "20221106-git";
-    asds = [ "bdef" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/bdef/2022-11-06/bdef-20221106-git.tgz";
-      sha256 = "1zqal3xhbcrbq182h15a5qxpqsxm82400xyq34svzmsrk2nfrh08";
-      system = "bdef";
-      asd = "bdef";
-    });
-    systems = [ "bdef/tests" ];
-    lispLibs = [ (getAttr "bdef" pkgs) (getAttr "cl-patterns" pkgs) (getAttr "fiveam" pkgs) (getAttr "mutility" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  beast = {
-    pname = "beast";
-    version = "20211020-hg";
-    asds = [ "beast" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/beast/2021-10-20/beast-20211020-hg.tgz";
-      sha256 = "0rb7yxr4clsdbgyjz9d8inxgj7zs0knrngl7gb6b8ky1vyrv12k4";
-      system = "beast";
-      asd = "beast";
-    });
-    systems = [ "beast" ];
-    lispLibs = [  ];
-  };
-  beast_slash_test = {
-    pname = "beast_test";
-    version = "20211020-hg";
-    asds = [ "beast" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/beast/2021-10-20/beast-20211020-hg.tgz";
-      sha256 = "0rb7yxr4clsdbgyjz9d8inxgj7zs0knrngl7gb6b8ky1vyrv12k4";
-      system = "beast";
-      asd = "beast";
-    });
-    systems = [ "beast/test" ];
-    lispLibs = [ (getAttr "_1am" pkgs) (getAttr "beast" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  beirc = {
-    pname = "beirc";
-    version = "20150505-git";
-    asds = [ "beirc" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/beirc/2015-05-05/beirc-20150505-git.tgz";
-      sha256 = "1jmxihxln51vxy85r3zx0gfrzs9ng8nmj87j5ws1fg8bwv8b2zc4";
-      system = "beirc";
-      asd = "beirc";
-    });
-    systems = [ "beirc" ];
-    lispLibs = [ (getAttr "cl-fad" pkgs) (getAttr "cl-irc" pkgs) (getAttr "cl-ppcre" pkgs) (getAttr "mcclim" pkgs) (getAttr "split-sequence" pkgs) ];
-  };
-  bencode = {
-    pname = "bencode";
-    version = "20180228-git";
-    asds = [ "bencode" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-bencode/2018-02-28/cl-bencode-20180228-git.tgz";
-      sha256 = "02n9cv5jbgzjwmw11c1a557r62m4i4gmmx38csscbq0cv6vzys1j";
-      system = "bencode";
-      asd = "bencode";
-    });
-    systems = [ "bencode" ];
-    lispLibs = [ (getAttr "flexi-streams" pkgs) ];
-  };
-  bencode-test = {
-    pname = "bencode-test";
-    version = "20180228-git";
-    asds = [ "bencode-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-bencode/2018-02-28/cl-bencode-20180228-git.tgz";
-      sha256 = "02n9cv5jbgzjwmw11c1a557r62m4i4gmmx38csscbq0cv6vzys1j";
-      system = "bencode-test";
-      asd = "bencode";
-    });
-    systems = [ "bencode-test" ];
-    lispLibs = [ (getAttr "check-it" pkgs) (getAttr "bencode" pkgs) (getAttr "hu_dot_dwim_dot_stefil" pkgs) ];
-  };
-  bermuda = {
-    pname = "bermuda";
-    version = "20150608-git";
-    asds = [ "bermuda" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/pal/2015-06-08/pal-20150608-git.tgz";
-      sha256 = "0kn6jxirrn7wzqymzsi0kx2ivl0nrrcgbl4dm1714s48qw0jwhcw";
-      system = "bermuda";
-      asd = "bermuda";
-    });
-    systems = [ "bermuda" ];
-    lispLibs = [ (getAttr "pal" pkgs) ];
-  };
-  bert = {
-    pname = "bert";
-    version = "20141106-git";
-    asds = [ "bert" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-bert/2014-11-06/cl-bert-20141106-git.tgz";
-      sha256 = "18cyk63dmcqqwsld4h65mzscgjsc085ws69z097naqm1r70kkygr";
-      system = "bert";
-      asd = "bert";
-    });
-    systems = [ "bert" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "erlang-term" pkgs) ];
-  };
-  bibtex = {
-    pname = "bibtex";
-    version = "20181210-git";
-    asds = [ "bibtex" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-bibtex/2018-12-10/cl-bibtex-20181210-git.tgz";
-      sha256 = "1rb4yf1z0vvl6z4kyj0s81kq1pvxwpvbgiaraqllgj1wpf51m78h";
-      system = "bibtex";
-      asd = "bibtex";
-    });
-    systems = [ "bibtex" ];
-    lispLibs = [ (getAttr "split-sequence" pkgs) ];
-  };
-  big-string = {
-    pname = "big-string";
-    version = "20190307-hg";
-    asds = [ "big-string" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/big-string/2019-03-07/big-string-20190307-hg.tgz";
-      sha256 = "1aqjs2l7wlkkgkz1wlqx3xbnk3iy0sy43kcxqi9a35fg6h223nyy";
-      system = "big-string";
-      asd = "big-string";
-    });
-    systems = [ "big-string" ];
-    lispLibs = [  ];
-  };
-  bike = {
-    pname = "bike";
-    version = "20220707-git";
-    asds = [ "bike" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/bike/2022-07-07/bike-20220707-git.tgz";
-      sha256 = "0slzgfi0yw45j238rhjsnw6vh8yvwzzsmz6vmia58fycf8p0vlc4";
-      system = "bike";
-      asd = "bike";
-    });
-    systems = [ "bike" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "bike-internals" pkgs) (getAttr "bordeaux-threads" pkgs) (getAttr "cffi" pkgs) (getAttr "cl-ppcre" pkgs) (getAttr "flexi-streams" pkgs) (getAttr "named-readtables" pkgs) (getAttr "split-sequence" pkgs) (getAttr "trivial-features" pkgs) (getAttr "trivial-garbage" pkgs) (getAttr "uiop" pkgs) ];
-  };
-  bike-examples = {
-    pname = "bike-examples";
-    version = "20220707-git";
-    asds = [ "bike-examples" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/bike/2022-07-07/bike-20220707-git.tgz";
-      sha256 = "0slzgfi0yw45j238rhjsnw6vh8yvwzzsmz6vmia58fycf8p0vlc4";
-      system = "bike-examples";
-      asd = "bike-examples";
-    });
-    systems = [ "bike-examples" ];
-    lispLibs = [ (getAttr "bike" pkgs) ];
-  };
-  bike-internals = {
-    pname = "bike-internals";
-    version = "20220707-git";
-    asds = [ "bike-internals" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/bike/2022-07-07/bike-20220707-git.tgz";
-      sha256 = "0slzgfi0yw45j238rhjsnw6vh8yvwzzsmz6vmia58fycf8p0vlc4";
-      system = "bike-internals";
-      asd = "bike-internals";
-    });
-    systems = [ "bike-internals" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "bordeaux-threads" pkgs) (getAttr "cffi" pkgs) (getAttr "cl-ppcre" pkgs) (getAttr "flexi-streams" pkgs) (getAttr "split-sequence" pkgs) (getAttr "trivial-features" pkgs) (getAttr "trivial-garbage" pkgs) (getAttr "uiop" pkgs) ];
-  };
-  bike-tests = {
-    pname = "bike-tests";
-    version = "20220707-git";
-    asds = [ "bike-tests" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/bike/2022-07-07/bike-20220707-git.tgz";
-      sha256 = "0slzgfi0yw45j238rhjsnw6vh8yvwzzsmz6vmia58fycf8p0vlc4";
-      system = "bike-tests";
-      asd = "bike-tests";
-    });
-    systems = [ "bike-tests" ];
-    lispLibs = [ (getAttr "bike" pkgs) (getAttr "fiveam" pkgs) ];
-  };
-  binary-io = {
-    pname = "binary-io";
-    version = "20201016-git";
-    asds = [ "binary-io" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/binary-io/2020-10-16/binary-io-20201016-git.tgz";
-      sha256 = "0gxnl12nydh8aslw78jc4cmq8licj342y2f04jalqb4d9m9jbri2";
-      system = "binary-io";
-      asd = "binary-io";
-    });
-    systems = [ "binary-io" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "ieee-floats" pkgs) ];
-  };
-  binary-io_slash_test = {
-    pname = "binary-io_test";
-    version = "20201016-git";
-    asds = [ "binary-io" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/binary-io/2020-10-16/binary-io-20201016-git.tgz";
-      sha256 = "0gxnl12nydh8aslw78jc4cmq8licj342y2f04jalqb4d9m9jbri2";
-      system = "binary-io";
-      asd = "binary-io";
-    });
-    systems = [ "binary-io/test" ];
-    lispLibs = [ (getAttr "_1am" pkgs) (getAttr "binary-io" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  binary-lass = {
-    pname = "binary-lass";
-    version = "20211020-git";
-    asds = [ "binary-lass" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/lass/2021-10-20/lass-20211020-git.tgz";
-      sha256 = "06wds1qzj8s862pmmza1427n7gdpplqplxqnxyqkrr0hgxdl4xbf";
-      system = "binary-lass";
-      asd = "binary-lass";
-    });
-    systems = [ "binary-lass" ];
-    lispLibs = [ (getAttr "lass" pkgs) ];
-  };
-  binary-parser = {
-    pname = "binary-parser";
-    version = "20220707-git";
-    asds = [ "binary-parser" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/binary-parser/2022-07-07/binary-parser-20220707-git.tgz";
-      sha256 = "0h94jjid2a5fq5w6n2jx572q7alljmrs84p3xhsjnax3cmzqjr78";
-      system = "binary-parser";
-      asd = "binary-parser";
-    });
-    systems = [ "binary-parser" ];
-    lispLibs = [ (getAttr "babel" pkgs) (getAttr "bitio" pkgs) (getAttr "chipz" pkgs) (getAttr "fast-io" pkgs) ];
-  };
-  binary-search-tree = {
-    pname = "binary-search-tree";
-    version = "20220707-git";
-    asds = [ "binary-search-tree" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/binary-search-tree/2022-07-07/binary-search-tree-20220707-git.tgz";
-      sha256 = "1k7p5dgziwni5yma7q3sbnr23kk2730vzb7ap6knnazpp0smgclf";
-      system = "binary-search-tree";
-      asd = "binary-search-tree";
-    });
-    systems = [ "binary-search-tree" ];
-    lispLibs = [ (getAttr "mfiano-utils" pkgs) ];
-  };
-  binary-types = {
-    pname = "binary-types";
-    version = "20130615-git";
-    asds = [ "binary-types" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/binary-types/2013-06-15/binary-types-20130615-git.tgz";
-      sha256 = "1bh65p9vg2kgh4m8q1a4jiyncnp5prdzh0d0l4pzh3jvfhgbm0gh";
-      system = "binary-types";
-      asd = "binary-types";
-    });
-    systems = [ "binary-types" ];
-    lispLibs = [  ];
-  };
-  binascii = {
-    pname = "binascii";
-    version = "20150709-git";
-    asds = [ "binascii" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/binascii/2015-07-09/binascii-20150709-git.tgz";
-      sha256 = "000rcdl8qshr7n48zq9bzrc4lkjx4ylb3r3w9x9syhiwfla9j4b7";
-      system = "binascii";
-      asd = "binascii";
-    });
-    systems = [ "binascii" ];
-    lispLibs = [  ];
-  };
-  binascii-tests = {
-    pname = "binascii-tests";
-    version = "20150709-git";
-    asds = [ "binascii-tests" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/binascii/2015-07-09/binascii-20150709-git.tgz";
-      sha256 = "000rcdl8qshr7n48zq9bzrc4lkjx4ylb3r3w9x9syhiwfla9j4b7";
-      system = "binascii-tests";
-      asd = "binascii";
-    });
-    systems = [ "binascii-tests" ];
-    lispLibs = [ (getAttr "binascii" pkgs) ];
-  };
-  binding-arrows = {
-    pname = "binding-arrows";
-    version = "20210630-git";
-    asds = [ "binding-arrows" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/binding-arrows/2021-06-30/binding-arrows-20210630-git.tgz";
-      sha256 = "0hqikgzic7kjq2n1d924yldfm30qz67cmsk6gghi9cbmxkwdlwp8";
-      system = "binding-arrows";
-      asd = "binding-arrows";
-    });
-    systems = [ "binding-arrows" ];
-    lispLibs = [  ];
-  };
-  binding-arrows_slash_test = {
-    pname = "binding-arrows_test";
-    version = "20210630-git";
-    asds = [ "binding-arrows" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/binding-arrows/2021-06-30/binding-arrows-20210630-git.tgz";
-      sha256 = "0hqikgzic7kjq2n1d924yldfm30qz67cmsk6gghi9cbmxkwdlwp8";
-      system = "binding-arrows";
-      asd = "binding-arrows";
-    });
-    systems = [ "binding-arrows/test" ];
-    lispLibs = [ (getAttr "binding-arrows" pkgs) (getAttr "hu_dot_dwim_dot_stefil" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  binfix = {
-    pname = "binfix";
-    version = "20190813-git";
-    asds = [ "binfix" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/binfix/2019-08-13/binfix-20190813-git.tgz";
-      sha256 = "07925kj32y7ppwmz62c08gd0s6yp12s6nz1wh0pzh0ccq9nwgzhz";
-      system = "binfix";
-      asd = "binfix";
-    });
-    systems = [ "binfix" ];
-    lispLibs = [  ];
-  };
-  binfix_slash_5am = {
-    pname = "binfix_5am";
-    version = "20190813-git";
-    asds = [ "binfix" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/binfix/2019-08-13/binfix-20190813-git.tgz";
-      sha256 = "07925kj32y7ppwmz62c08gd0s6yp12s6nz1wh0pzh0ccq9nwgzhz";
-      system = "binfix";
-      asd = "binfix";
-    });
-    systems = [ "binfix/5am" ];
-    lispLibs = [ (getAttr "binfix" pkgs) (getAttr "fiveam" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  binomial-heap = {
-    pname = "binomial-heap";
-    version = "20130420-git";
-    asds = [ "binomial-heap" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/binomial-heap/2013-04-20/binomial-heap-20130420-git.tgz";
-      sha256 = "1d4jrlkdjdppnvqpqkr7i7djpgmrvrbky4pc1pxvqci5jx7xlkk6";
-      system = "binomial-heap";
-      asd = "binomial-heap";
-    });
-    systems = [ "binomial-heap" ];
-    lispLibs = [  ];
-  };
-  binpack = {
-    pname = "binpack";
-    version = "20220707-git";
-    asds = [ "binpack" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/binpack/2022-07-07/binpack-20220707-git.tgz";
-      sha256 = "1pcnsg60pqywd3k72m5pwimq01sm3jyvc1c3rbkij740r7grdxi1";
-      system = "binpack";
-      asd = "binpack";
-    });
-    systems = [ "binpack" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) ];
-  };
-  binpack-test = {
-    pname = "binpack-test";
-    version = "20220707-git";
-    asds = [ "binpack-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/binpack/2022-07-07/binpack-20220707-git.tgz";
-      sha256 = "1pcnsg60pqywd3k72m5pwimq01sm3jyvc1c3rbkij740r7grdxi1";
-      system = "binpack-test";
-      asd = "binpack-test";
-    });
-    systems = [ "binpack-test" ];
-    lispLibs = [ (getAttr "binpack" pkgs) (getAttr "parachute" pkgs) ];
-  };
-  binpack-test_slash_2 = {
-    pname = "binpack-test_2";
-    version = "20220707-git";
-    asds = [ "binpack-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/binpack/2022-07-07/binpack-20220707-git.tgz";
-      sha256 = "1pcnsg60pqywd3k72m5pwimq01sm3jyvc1c3rbkij740r7grdxi1";
-      system = "binpack-test";
-      asd = "binpack-test";
-    });
-    systems = [ "binpack-test/2" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "parachute" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  binpack-test_slash_common = {
-    pname = "binpack-test_common";
-    version = "20220707-git";
-    asds = [ "binpack-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/binpack/2022-07-07/binpack-20220707-git.tgz";
-      sha256 = "1pcnsg60pqywd3k72m5pwimq01sm3jyvc1c3rbkij740r7grdxi1";
-      system = "binpack-test";
-      asd = "binpack-test";
-    });
-    systems = [ "binpack-test/common" ];
-    lispLibs = [ (getAttr "binpack" pkgs) (getAttr "parachute" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  binpack_slash_2 = {
-    pname = "binpack_2";
-    version = "20220707-git";
-    asds = [ "binpack" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/binpack/2022-07-07/binpack-20220707-git.tgz";
-      sha256 = "1pcnsg60pqywd3k72m5pwimq01sm3jyvc1c3rbkij740r7grdxi1";
-      system = "binpack";
-      asd = "binpack";
-    });
-    systems = [ "binpack/2" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  birch = {
-    pname = "birch";
-    version = "20220220-git";
-    asds = [ "birch" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/birch/2022-02-20/birch-20220220-git.tgz";
-      sha256 = "0b2wh1n9b5r1dyvgg9hhh97plbj4j5anasfbii92s2g8h2ilb4yb";
-      system = "birch";
-      asd = "birch";
-    });
-    systems = [ "birch" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cl_plus_ssl" pkgs) (getAttr "flexi-streams" pkgs) (getAttr "split-sequence" pkgs) (getAttr "usocket" pkgs) ];
-  };
-  birch_dot_test = {
-    pname = "birch.test";
-    version = "20220220-git";
-    asds = [ "birch.test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/birch/2022-02-20/birch-20220220-git.tgz";
-      sha256 = "0b2wh1n9b5r1dyvgg9hhh97plbj4j5anasfbii92s2g8h2ilb4yb";
-      system = "birch.test";
-      asd = "birch.test";
-    });
-    systems = [ "birch.test" ];
-    lispLibs = [ (getAttr "birch" pkgs) (getAttr "flexi-streams" pkgs) (getAttr "prove" pkgs) ];
-  };
-  bit-ops = {
-    pname = "bit-ops";
-    version = "20180228-git";
-    asds = [ "bit-ops" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/bit-ops/2018-02-28/bit-ops-20180228-git.tgz";
-      sha256 = "0rwmm438bgxfl5ab1vnrsxgimxnr3d5kjv9a0yzmlnbg9i2hyhz7";
-      system = "bit-ops";
-      asd = "bit-ops";
-    });
-    systems = [ "bit-ops" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "immutable-struct" pkgs) (getAttr "iterate" pkgs) (getAttr "lisp-namespace" pkgs) (getAttr "trivia" pkgs) ];
-  };
-  bit-ops_dot_test = {
-    pname = "bit-ops.test";
-    version = "20180228-git";
-    asds = [ "bit-ops.test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/bit-ops/2018-02-28/bit-ops-20180228-git.tgz";
-      sha256 = "0rwmm438bgxfl5ab1vnrsxgimxnr3d5kjv9a0yzmlnbg9i2hyhz7";
-      system = "bit-ops.test";
-      asd = "bit-ops.test";
-    });
-    systems = [ "bit-ops.test" ];
-    lispLibs = [ (getAttr "bit-ops" pkgs) (getAttr "fiveam" pkgs) ];
-  };
-  bit-smasher = {
-    pname = "bit-smasher";
-    version = "20221106-git";
-    asds = [ "bit-smasher" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/bit-smasher/2022-11-06/bit-smasher-20221106-git.tgz";
-      sha256 = "1dad4x9sjq45zz8rys6rflsklmw77631r3k4g248ynmaqkdaqjyd";
-      system = "bit-smasher";
-      asd = "bit-smasher";
-    });
-    systems = [ "bit-smasher" ];
-    lispLibs = [ (getAttr "cl-base58" pkgs) (getAttr "cl-base64" pkgs) ];
-  };
-  bit-smasher-test = {
-    pname = "bit-smasher-test";
-    version = "20221106-git";
-    asds = [ "bit-smasher-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/bit-smasher/2022-11-06/bit-smasher-20221106-git.tgz";
-      sha256 = "1dad4x9sjq45zz8rys6rflsklmw77631r3k4g248ynmaqkdaqjyd";
-      system = "bit-smasher-test";
-      asd = "bit-smasher-test";
-    });
-    systems = [ "bit-smasher-test" ];
-    lispLibs = [ (getAttr "bit-smasher" pkgs) (getAttr "prove" pkgs) (getAttr "prove-asdf" pkgs) ];
-  };
-  bitfield = {
-    pname = "bitfield";
-    version = "20211230-git";
-    asds = [ "bitfield" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/bitfield/2021-12-30/bitfield-20211230-git.tgz";
-      sha256 = "1137kdj5imc5gj9g6hj4w6ksqnqppgm3knzv7j2f8r5qpfl8rfl2";
-      system = "bitfield";
-      asd = "bitfield";
-    });
-    systems = [ "bitfield" ];
-    lispLibs = [  ];
-  };
-  bitfield-schema = {
-    pname = "bitfield-schema";
-    version = "20120107-git";
-    asds = [ "bitfield-schema" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/bitfield-schema/2012-01-07/bitfield-schema-20120107-git.tgz";
-      sha256 = "08xkl7rbfhrx8vj98zj1lmhv6pfg2f5gk14xj7qys7mkj2iv4li6";
-      system = "bitfield-schema";
-      asd = "bitfield-schema";
-    });
-    systems = [ "bitfield-schema" ];
-    lispLibs = [ (getAttr "iterate" pkgs) ];
-  };
-  bitio = {
-    pname = "bitio";
-    version = "20220220-git";
-    asds = [ "bitio" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/bitio/2022-02-20/bitio-20220220-git.tgz";
-      sha256 = "0z2yn19nxg46j274nxzry255z86p0y3p68s1f2sg7rx9y2nx3rjg";
-      system = "bitio";
-      asd = "bitio";
-    });
-    systems = [ "bitio" ];
-    lispLibs = [ (getAttr "checkl" pkgs) (getAttr "cl-package-locks" pkgs) (getAttr "fast-io" pkgs) (getAttr "trivial-gray-streams" pkgs) ];
-  };
-  bk-tree = {
-    pname = "bk-tree";
-    version = "20130420-git";
-    asds = [ "bk-tree" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/bk-tree/2013-04-20/bk-tree-20130420-git.tgz";
-      sha256 = "1nrz6fwzvkzvs6ipc5rgas77p5hv5bnaw2in5760v240gg7lxqzz";
-      system = "bk-tree";
-      asd = "bk-tree";
-    });
-    systems = [ "bk-tree" ];
-    lispLibs = [  ];
-  };
-  bknr_dot_data_dot_impex = {
-    pname = "bknr.data.impex";
-    version = "20220220-git";
-    asds = [ "bknr.data.impex" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/bknr-datastore/2022-02-20/bknr-datastore-20220220-git.tgz";
-      sha256 = "1vi3w65fnczqvswkm381n6liqfrzjrg40y698qvj7skj28dm5vrm";
-      system = "bknr.data.impex";
-      asd = "bknr.data.impex";
-    });
-    systems = [ "bknr.data.impex" ];
-    lispLibs = [ (getAttr "bknr_dot_datastore" pkgs) (getAttr "bknr_dot_impex" pkgs) (getAttr "bknr_dot_indices" pkgs) (getAttr "bknr_dot_utils" pkgs) (getAttr "cl-interpol" pkgs) (getAttr "unit-test" pkgs) ];
-  };
-  bknr_dot_datastore = {
-    pname = "bknr.datastore";
-    version = "20220220-git";
-    asds = [ "bknr.datastore" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/bknr-datastore/2022-02-20/bknr-datastore-20220220-git.tgz";
-      sha256 = "1vi3w65fnczqvswkm381n6liqfrzjrg40y698qvj7skj28dm5vrm";
-      system = "bknr.datastore";
-      asd = "bknr.datastore";
-    });
-    systems = [ "bknr.datastore" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "bknr_dot_indices" pkgs) (getAttr "bknr_dot_utils" pkgs) (getAttr "cl-interpol" pkgs) (getAttr "closer-mop" pkgs) (getAttr "trivial-utf-8" pkgs) (getAttr "unit-test" pkgs) (getAttr "yason" pkgs) ];
-  };
-  bknr_dot_impex = {
-    pname = "bknr.impex";
-    version = "20220220-git";
-    asds = [ "bknr.impex" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/bknr-datastore/2022-02-20/bknr-datastore-20220220-git.tgz";
-      sha256 = "1vi3w65fnczqvswkm381n6liqfrzjrg40y698qvj7skj28dm5vrm";
-      system = "bknr.impex";
-      asd = "bknr.impex";
-    });
-    systems = [ "bknr.impex" ];
-    lispLibs = [ (getAttr "bknr_dot_indices" pkgs) (getAttr "bknr_dot_utils" pkgs) (getAttr "bknr_dot_xml" pkgs) (getAttr "cl-interpol" pkgs) (getAttr "closer-mop" pkgs) (getAttr "cxml" pkgs) ];
-  };
-  bknr_dot_indices = {
-    pname = "bknr.indices";
-    version = "20220220-git";
-    asds = [ "bknr.indices" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/bknr-datastore/2022-02-20/bknr-datastore-20220220-git.tgz";
-      sha256 = "1vi3w65fnczqvswkm381n6liqfrzjrg40y698qvj7skj28dm5vrm";
-      system = "bknr.indices";
-      asd = "bknr.indices";
-    });
-    systems = [ "bknr.indices" ];
-    lispLibs = [ (getAttr "bknr_dot_skip-list" pkgs) (getAttr "bknr_dot_utils" pkgs) (getAttr "cl-interpol" pkgs) (getAttr "closer-mop" pkgs) ];
-  };
-  bknr_dot_modules = {
-    pname = "bknr.modules";
-    version = "20140713-git";
-    asds = [ "bknr.modules" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/bknr-web/2014-07-13/bknr-web-20140713-git.tgz";
-      sha256 = "1m73z0hv7qsc9yddrg8zs7n3zmn9h64v4d62239wrvfnmzqk75x2";
-      system = "bknr.modules";
-      asd = "bknr.modules";
-    });
-    systems = [ "bknr.modules" ];
-    lispLibs = [ (getAttr "bknr_dot_utils" pkgs) (getAttr "bknr_dot_web" pkgs) (getAttr "cl-gd" pkgs) (getAttr "cl-interpol" pkgs) (getAttr "cl-ppcre" pkgs) (getAttr "cl-smtp" pkgs) (getAttr "closer-mop" pkgs) (getAttr "cxml" pkgs) (getAttr "md5" pkgs) (getAttr "parenscript" pkgs) (getAttr "puri" pkgs) (getAttr "stem" pkgs) (getAttr "unit-test" pkgs) ];
-  };
-  bknr_dot_skip-list = {
-    pname = "bknr.skip-list";
-    version = "20220220-git";
-    asds = [ "bknr.skip-list" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/bknr-datastore/2022-02-20/bknr-datastore-20220220-git.tgz";
-      sha256 = "1vi3w65fnczqvswkm381n6liqfrzjrg40y698qvj7skj28dm5vrm";
-      system = "bknr.skip-list";
-      asd = "bknr.skip-list";
-    });
-    systems = [ "bknr.skip-list" ];
-    lispLibs = [  ];
-  };
-  bknr_dot_skip-list_dot_test = {
-    pname = "bknr.skip-list.test";
-    version = "20220220-git";
-    asds = [ "bknr.skip-list.test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/bknr-datastore/2022-02-20/bknr-datastore-20220220-git.tgz";
-      sha256 = "1vi3w65fnczqvswkm381n6liqfrzjrg40y698qvj7skj28dm5vrm";
-      system = "bknr.skip-list.test";
-      asd = "bknr.skip-list";
-    });
-    systems = [ "bknr.skip-list.test" ];
-    lispLibs = [ (getAttr "bknr_dot_skip-list" pkgs) (getAttr "unit-test" pkgs) ];
-  };
-  bknr_dot_utils = {
-    pname = "bknr.utils";
-    version = "20220220-git";
-    asds = [ "bknr.utils" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/bknr-datastore/2022-02-20/bknr-datastore-20220220-git.tgz";
-      sha256 = "1vi3w65fnczqvswkm381n6liqfrzjrg40y698qvj7skj28dm5vrm";
-      system = "bknr.utils";
-      asd = "bknr.utils";
-    });
-    systems = [ "bknr.utils" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "bordeaux-threads" pkgs) (getAttr "cl-interpol" pkgs) (getAttr "cl-ppcre" pkgs) (getAttr "flexi-streams" pkgs) (getAttr "md5" pkgs) ];
-  };
-  bknr_dot_web = {
-    pname = "bknr.web";
-    version = "20140713-git";
-    asds = [ "bknr.web" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/bknr-web/2014-07-13/bknr-web-20140713-git.tgz";
-      sha256 = "1m73z0hv7qsc9yddrg8zs7n3zmn9h64v4d62239wrvfnmzqk75x2";
-      system = "bknr.web";
-      asd = "bknr.web";
-    });
-    systems = [ "bknr.web" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "bknr_dot_data_dot_impex" pkgs) (getAttr "bknr_dot_datastore" pkgs) (getAttr "bknr_dot_utils" pkgs) (getAttr "bknr_dot_xml" pkgs) (getAttr "cl-gd" pkgs) (getAttr "cl-interpol" pkgs) (getAttr "cl-ppcre" pkgs) (getAttr "cxml" pkgs) (getAttr "drakma" pkgs) (getAttr "hunchentoot" pkgs) (getAttr "md5" pkgs) (getAttr "parenscript" pkgs) (getAttr "puri" pkgs) (getAttr "unit-test" pkgs) (getAttr "usocket" pkgs) (getAttr "xhtmlgen" pkgs) (getAttr "yason" pkgs) ];
-  };
-  bknr_dot_xml = {
-    pname = "bknr.xml";
-    version = "20220220-git";
-    asds = [ "bknr.xml" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/bknr-datastore/2022-02-20/bknr-datastore-20220220-git.tgz";
-      sha256 = "1vi3w65fnczqvswkm381n6liqfrzjrg40y698qvj7skj28dm5vrm";
-      system = "bknr.xml";
-      asd = "bknr.xml";
-    });
-    systems = [ "bknr.xml" ];
-    lispLibs = [ (getAttr "cl-interpol" pkgs) (getAttr "cxml" pkgs) ];
-  };
-  black-tie = {
-    pname = "black-tie";
-    version = "20220707-git";
-    asds = [ "black-tie" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/black-tie/2022-07-07/black-tie-20220707-git.tgz";
-      sha256 = "0a1zczxp4wkqs4cmwc4rnsgwwc2h4zqmg58cjykfzz4jh31fa43a";
-      system = "black-tie";
-      asd = "black-tie";
-    });
-    systems = [ "black-tie" ];
-    lispLibs = [  ];
-  };
-  blackbird = {
-    pname = "blackbird";
-    version = "20221106-git";
-    asds = [ "blackbird" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/blackbird/2022-11-06/blackbird-20221106-git.tgz";
-      sha256 = "1r0f9473akzm6zyj494ma5p39hfkixa8aj17dhcdfa4kmqf9f6al";
-      system = "blackbird";
-      asd = "blackbird";
-    });
-    systems = [ "blackbird" ];
-    lispLibs = [ (getAttr "vom" pkgs) ];
-  };
-  blackbird-test = {
-    pname = "blackbird-test";
-    version = "20221106-git";
-    asds = [ "blackbird-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/blackbird/2022-11-06/blackbird-20221106-git.tgz";
-      sha256 = "1r0f9473akzm6zyj494ma5p39hfkixa8aj17dhcdfa4kmqf9f6al";
-      system = "blackbird-test";
-      asd = "blackbird-test";
-    });
-    systems = [ "blackbird-test" ];
-    lispLibs = [ (getAttr "blackbird" pkgs) (getAttr "cl-async" pkgs) (getAttr "fiveam" pkgs) ];
-  };
-  blas = {
-    pname = "blas";
-    version = "20200925-git";
-    asds = [ "blas" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/f2cl/2020-09-25/f2cl-20200925-git.tgz";
-      sha256 = "0kq1lrz0sg4kj64w0ysihnfwi65pami362fs2mvpyf1yhgxmq08y";
-      system = "blas";
-      asd = "blas";
-    });
-    systems = [ "blas" ];
-    lispLibs = [ (getAttr "blas-complex" pkgs) (getAttr "blas-package" pkgs) (getAttr "blas-real" pkgs) ];
-  };
-  blas-complex = {
-    pname = "blas-complex";
-    version = "20200925-git";
-    asds = [ "blas-complex" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/f2cl/2020-09-25/f2cl-20200925-git.tgz";
-      sha256 = "0kq1lrz0sg4kj64w0ysihnfwi65pami362fs2mvpyf1yhgxmq08y";
-      system = "blas-complex";
-      asd = "blas-complex";
-    });
-    systems = [ "blas-complex" ];
-    lispLibs = [ (getAttr "blas-real" pkgs) (getAttr "f2cl" pkgs) ];
-  };
-  blas-hompack = {
-    pname = "blas-hompack";
-    version = "20200925-git";
-    asds = [ "blas-hompack" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/f2cl/2020-09-25/f2cl-20200925-git.tgz";
-      sha256 = "0kq1lrz0sg4kj64w0ysihnfwi65pami362fs2mvpyf1yhgxmq08y";
-      system = "blas-hompack";
-      asd = "blas-hompack";
-    });
-    systems = [ "blas-hompack" ];
-    lispLibs = [ (getAttr "blas-package" pkgs) (getAttr "f2cl" pkgs) ];
-  };
-  blas-package = {
-    pname = "blas-package";
-    version = "20200925-git";
-    asds = [ "blas-package" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/f2cl/2020-09-25/f2cl-20200925-git.tgz";
-      sha256 = "0kq1lrz0sg4kj64w0ysihnfwi65pami362fs2mvpyf1yhgxmq08y";
-      system = "blas-package";
-      asd = "blas-package";
-    });
-    systems = [ "blas-package" ];
-    lispLibs = [  ];
-  };
-  blas-real = {
-    pname = "blas-real";
-    version = "20200925-git";
-    asds = [ "blas-real" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/f2cl/2020-09-25/f2cl-20200925-git.tgz";
-      sha256 = "0kq1lrz0sg4kj64w0ysihnfwi65pami362fs2mvpyf1yhgxmq08y";
-      system = "blas-real";
-      asd = "blas-real";
-    });
-    systems = [ "blas-real" ];
-    lispLibs = [ (getAttr "blas-hompack" pkgs) (getAttr "f2cl" pkgs) ];
-  };
-  blocks-world = {
-    pname = "blocks-world";
-    version = "20120305-git";
-    asds = [ "blocks-world" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/atdoc/2012-03-05/atdoc-20120305-git.tgz";
-      sha256 = "1w54phadjj00sy5qz5n0hmhzyjrx26h9hw06756zdpfbzk4f5il6";
-      system = "blocks-world";
-      asd = "blocks-world";
-    });
-    systems = [ "blocks-world" ];
-    lispLibs = [  ];
-  };
-  bmas = {
-    pname = "bmas";
-    version = "20221106-git";
-    asds = [ "bmas" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-bmas/2022-11-06/cl-bmas-20221106-git.tgz";
-      sha256 = "1z167v5hh4cawms8khpm76q8g0pk1xlkh97gxdbwym0sz27qb81j";
-      system = "bmas";
-      asd = "bmas";
-    });
-    systems = [ "bmas" ];
-    lispLibs = [ (getAttr "cffi" pkgs) (getAttr "cl-autowrap" pkgs) (getAttr "uiop" pkgs) ];
-  };
-  bmp-test = {
-    pname = "bmp-test";
-    version = "20211020-git";
-    asds = [ "bmp-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-png/2021-10-20/cl-png-20211020-git.tgz";
-      sha256 = "17xcb9ps5vf3if61blmx7cpfrz3gsw7jk8d5zv3f4cq8jrriqdx4";
-      system = "bmp-test";
-      asd = "bmp-test";
-    });
-    systems = [ "bmp-test" ];
-    lispLibs = [ (getAttr "png" pkgs) ];
-  };
-  bnf = {
-    pname = "bnf";
-    version = "20220220-git";
-    asds = [ "bnf" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/bnf/2022-02-20/bnf-20220220-git.tgz";
-      sha256 = "1kr6k9qs9bbza591hi1c2mlxqd5yz3nrvyd3cw7139iz1z2m7dbg";
-      system = "bnf";
-      asd = "bnf";
-    });
-    systems = [ "bnf" ];
-    lispLibs = [ (getAttr "trestrul" pkgs) (getAttr "uiop" pkgs) ];
-  };
-  bnf_dot_test = {
-    pname = "bnf.test";
-    version = "20220220-git";
-    asds = [ "bnf.test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/bnf/2022-02-20/bnf-20220220-git.tgz";
-      sha256 = "1kr6k9qs9bbza591hi1c2mlxqd5yz3nrvyd3cw7139iz1z2m7dbg";
-      system = "bnf.test";
-      asd = "bnf.test";
-    });
-    systems = [ "bnf.test" ];
-    lispLibs = [ (getAttr "bnf" pkgs) (getAttr "jingoh" pkgs) ];
-  };
-  bobbin = {
-    pname = "bobbin";
-    version = "20201016-hg";
-    asds = [ "bobbin" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/bobbin/2020-10-16/bobbin-20201016-hg.tgz";
-      sha256 = "1yvx7d0cx5b119r4aays2rck33088bp7spaydnvkc329hfq1ahc2";
-      system = "bobbin";
-      asd = "bobbin";
-    });
-    systems = [ "bobbin" ];
-    lispLibs = [ (getAttr "split-sequence" pkgs) ];
-  };
-  bobbin_slash_test = {
-    pname = "bobbin_test";
-    version = "20201016-hg";
-    asds = [ "bobbin" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/bobbin/2020-10-16/bobbin-20201016-hg.tgz";
-      sha256 = "1yvx7d0cx5b119r4aays2rck33088bp7spaydnvkc329hfq1ahc2";
-      system = "bobbin";
-      asd = "bobbin";
-    });
-    systems = [ "bobbin/test" ];
-    lispLibs = [ (getAttr "_1am" pkgs) (getAttr "bobbin" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  bodge-blobs-support = {
-    pname = "bodge-blobs-support";
-    version = "stable-git";
-    asds = [ "bodge-blobs-support" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/bodge-blobs-support/2020-10-16/bodge-blobs-support-stable-git.tgz";
-      sha256 = "02nd1x6y1akp1ymv1y4z9ympwbnpd1drwi4f86xbjszxqff6jyj8";
-      system = "bodge-blobs-support";
-      asd = "bodge-blobs-support";
-    });
-    systems = [ "bodge-blobs-support" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cffi" pkgs) (getAttr "trivial-features" pkgs) (getAttr "uiop" pkgs) ];
-  };
-  bodge-chipmunk = {
-    pname = "bodge-chipmunk";
-    version = "stable-git";
-    asds = [ "bodge-chipmunk" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/bodge-chipmunk/2020-10-16/bodge-chipmunk-stable-git.tgz";
-      sha256 = "06zkia7rrhn1961jmayyvdbbbnf2rnr84lbd1x6gq8psfb2rif2f";
-      system = "bodge-chipmunk";
-      asd = "bodge-chipmunk";
-    });
-    systems = [ "bodge-chipmunk" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cffi" pkgs) (getAttr "cffi-c-ref" pkgs) (getAttr "claw" pkgs) (getAttr "claw-utils" pkgs) ];
-  };
-  bodge-chipmunk_slash_example = {
-    pname = "bodge-chipmunk_example";
-    version = "stable-git";
-    asds = [ "bodge-chipmunk" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/bodge-chipmunk/2020-10-16/bodge-chipmunk-stable-git.tgz";
-      sha256 = "06zkia7rrhn1961jmayyvdbbbnf2rnr84lbd1x6gq8psfb2rif2f";
-      system = "bodge-chipmunk";
-      asd = "bodge-chipmunk";
-    });
-    systems = [ "bodge-chipmunk/example" ];
-    lispLibs = [ (getAttr "bodge-chipmunk" pkgs) (getAttr "chipmunk-blob" pkgs) (getAttr "float-features" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  bodge-concurrency = {
-    pname = "bodge-concurrency";
-    version = "stable-git";
-    asds = [ "bodge-concurrency" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/bodge-concurrency/2020-10-16/bodge-concurrency-stable-git.tgz";
-      sha256 = "06v2h7vassp5v50qsqxkmshcrlrzlhqaga4z7lnidfniw7f8d5vd";
-      system = "bodge-concurrency";
-      asd = "bodge-concurrency";
-    });
-    systems = [ "bodge-concurrency" ];
-    lispLibs = [ (getAttr "bodge-memory" pkgs) (getAttr "bodge-queue" pkgs) (getAttr "bodge-utilities" pkgs) (getAttr "bordeaux-threads" pkgs) (getAttr "cl-flow" pkgs) (getAttr "cl-muth" pkgs) (getAttr "simple-flow-dispatcher" pkgs) (getAttr "trivial-main-thread" pkgs) ];
-  };
-  bodge-glad = {
-    pname = "bodge-glad";
-    version = "stable-git";
-    asds = [ "bodge-glad" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/bodge-glad/2020-10-16/bodge-glad-stable-git.tgz";
-      sha256 = "0ghrg0z5pj36igp5wpvp1iwnvjbca3wfb60kvirhv3l9ww51jg9g";
-      system = "bodge-glad";
-      asd = "bodge-glad";
-    });
-    systems = [ "bodge-glad" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cffi" pkgs) ];
-  };
-  bodge-glfw = {
-    pname = "bodge-glfw";
-    version = "stable-git";
-    asds = [ "bodge-glfw" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/bodge-glfw/2020-10-16/bodge-glfw-stable-git.tgz";
-      sha256 = "1xjg75grndl2mbfql1g2qgx810kg6wxrnhxb406m9lisd112i0m8";
-      system = "bodge-glfw";
-      asd = "bodge-glfw";
-    });
-    systems = [ "bodge-glfw" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cffi" pkgs) (getAttr "cffi-c-ref" pkgs) (getAttr "claw" pkgs) (getAttr "claw-utils" pkgs) ];
-  };
-  bodge-glfw_slash_example = {
-    pname = "bodge-glfw_example";
-    version = "stable-git";
-    asds = [ "bodge-glfw" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/bodge-glfw/2020-10-16/bodge-glfw-stable-git.tgz";
-      sha256 = "1xjg75grndl2mbfql1g2qgx810kg6wxrnhxb406m9lisd112i0m8";
-      system = "bodge-glfw";
-      asd = "bodge-glfw";
-    });
-    systems = [ "bodge-glfw/example" ];
-    lispLibs = [ (getAttr "bodge-glfw" pkgs) (getAttr "cl-opengl" pkgs) (getAttr "claw" pkgs) (getAttr "glfw-blob" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  bodge-heap = {
-    pname = "bodge-heap";
-    version = "stable-git";
-    asds = [ "bodge-heap" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/bodge-heap/2020-10-16/bodge-heap-stable-git.tgz";
-      sha256 = "1ngi9ccr9iz93mm3b4hgh2fj39vqpjrpkcfza5vly16z3r7gxca4";
-      system = "bodge-heap";
-      asd = "bodge-heap";
-    });
-    systems = [ "bodge-heap" ];
-    lispLibs = [  ];
-  };
-  bodge-heap_slash_tests = {
-    pname = "bodge-heap_tests";
-    version = "stable-git";
-    asds = [ "bodge-heap" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/bodge-heap/2020-10-16/bodge-heap-stable-git.tgz";
-      sha256 = "1ngi9ccr9iz93mm3b4hgh2fj39vqpjrpkcfza5vly16z3r7gxca4";
-      system = "bodge-heap";
-      asd = "bodge-heap";
-    });
-    systems = [ "bodge-heap/tests" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "bodge-heap" pkgs) (getAttr "fiveam" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  bodge-host = {
-    pname = "bodge-host";
-    version = "stable-git";
-    asds = [ "bodge-host" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/bodge-host/2021-12-09/bodge-host-stable-git.tgz";
-      sha256 = "0piayirpbh91klrk3pg0g1vxhlk8yxvbr2wv923awdalwy0fn73n";
-      system = "bodge-host";
-      asd = "bodge-host";
-    });
-    systems = [ "bodge-host" ];
-    lispLibs = [ (getAttr "bodge-concurrency" pkgs) (getAttr "bodge-glfw" pkgs) (getAttr "bodge-libc-essentials" pkgs) (getAttr "bodge-math" pkgs) (getAttr "bodge-utilities" pkgs) (getAttr "cffi-c-ref" pkgs) (getAttr "float-features" pkgs) (getAttr "glfw-blob" pkgs) ];
-  };
-  bodge-libc-essentials = {
-    pname = "bodge-libc-essentials";
-    version = "stable-git";
-    asds = [ "bodge-libc-essentials" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/bodge-libc-essentials/2020-10-16/bodge-libc-essentials-stable-git.tgz";
-      sha256 = "1nkjhkaap78xk9rkvnnnkchphiz0qwrsfp4jsvcl6mvv3rb4gp2k";
-      system = "bodge-libc-essentials";
-      asd = "bodge-libc-essentials";
-    });
-    systems = [ "bodge-libc-essentials" ];
-    lispLibs = [ (getAttr "claw" pkgs) ];
-  };
-  bodge-math = {
-    pname = "bodge-math";
-    version = "stable-git";
-    asds = [ "bodge-math" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/bodge-math/2020-10-16/bodge-math-stable-git.tgz";
-      sha256 = "0r3vnl9lywn4ksy34apcv6j825qp7l1naddawr14v4lwacndb80v";
-      system = "bodge-math";
-      asd = "bodge-math";
-    });
-    systems = [ "bodge-math" ];
-    lispLibs = [ (getAttr "bodge-utilities" pkgs) (getAttr "rtg-math" pkgs) ];
-  };
-  bodge-memory = {
-    pname = "bodge-memory";
-    version = "stable-git";
-    asds = [ "bodge-memory" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/bodge-memory/2020-10-16/bodge-memory-stable-git.tgz";
-      sha256 = "19fn3dw5z6f2kpar0jx7ysy5zvqjv7yv0ca7njgaam3p891yy2j9";
-      system = "bodge-memory";
-      asd = "bodge-memory";
-    });
-    systems = [ "bodge-memory" ];
-    lispLibs = [ (getAttr "bodge-utilities" pkgs) (getAttr "trivial-garbage" pkgs) ];
-  };
-  bodge-nanovg = {
-    pname = "bodge-nanovg";
-    version = "stable-git";
-    asds = [ "bodge-nanovg" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/bodge-nanovg/2020-10-16/bodge-nanovg-stable-git.tgz";
-      sha256 = "0cg4rlsddjrn0ps891n29xnd14xiis20ka5gafbz9npbj6nrc4v1";
-      system = "bodge-nanovg";
-      asd = "bodge-nanovg";
-    });
-    systems = [ "bodge-nanovg" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cffi" pkgs) (getAttr "cffi-c-ref" pkgs) (getAttr "claw" pkgs) (getAttr "claw-utils" pkgs) (getAttr "uiop" pkgs) ];
-  };
-  bodge-nanovg_slash_example = {
-    pname = "bodge-nanovg_example";
-    version = "stable-git";
-    asds = [ "bodge-nanovg" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/bodge-nanovg/2020-10-16/bodge-nanovg-stable-git.tgz";
-      sha256 = "0cg4rlsddjrn0ps891n29xnd14xiis20ka5gafbz9npbj6nrc4v1";
-      system = "bodge-nanovg";
-      asd = "bodge-nanovg";
-    });
-    systems = [ "bodge-nanovg/example" ];
-    lispLibs = [ (getAttr "bodge-glad" pkgs) (getAttr "bodge-glfw" pkgs) (getAttr "bodge-nanovg" pkgs) (getAttr "cffi" pkgs) (getAttr "cffi-c-ref" pkgs) (getAttr "cl-opengl" pkgs) (getAttr "claw" pkgs) (getAttr "float-features" pkgs) (getAttr "glad-blob" pkgs) (getAttr "glfw-blob" pkgs) (getAttr "nanovg-blob" pkgs) (getAttr "trivial-main-thread" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  bodge-nuklear = {
-    pname = "bodge-nuklear";
-    version = "stable-git";
-    asds = [ "bodge-nuklear" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/bodge-nuklear/2020-10-16/bodge-nuklear-stable-git.tgz";
-      sha256 = "15q89dz2zi99yyxhb90wyydy24y2lj5xm2mzh1mrw4v8rz9aqhc2";
-      system = "bodge-nuklear";
-      asd = "bodge-nuklear";
-    });
-    systems = [ "bodge-nuklear" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cffi" pkgs) (getAttr "cffi-c-ref" pkgs) (getAttr "claw" pkgs) (getAttr "claw-utils" pkgs) ];
-  };
-  bodge-ode = {
-    pname = "bodge-ode";
-    version = "stable-git";
-    asds = [ "bodge-ode" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/bodge-ode/2020-10-16/bodge-ode-stable-git.tgz";
-      sha256 = "1c051ljn5x7ssysia7lil0ykjdnbx8dfkr45ck77plv39acgicbs";
-      system = "bodge-ode";
-      asd = "bodge-ode";
-    });
-    systems = [ "bodge-ode" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cffi" pkgs) (getAttr "cffi-c-ref" pkgs) (getAttr "claw" pkgs) (getAttr "claw-utils" pkgs) (getAttr "float-features" pkgs) ];
-  };
-  bodge-ode_slash_example = {
-    pname = "bodge-ode_example";
-    version = "stable-git";
-    asds = [ "bodge-ode" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/bodge-ode/2020-10-16/bodge-ode-stable-git.tgz";
-      sha256 = "1c051ljn5x7ssysia7lil0ykjdnbx8dfkr45ck77plv39acgicbs";
-      system = "bodge-ode";
-      asd = "bodge-ode";
-    });
-    systems = [ "bodge-ode/example" ];
-    lispLibs = [ (getAttr "bodge-ode" pkgs) (getAttr "cffi-c-ref" pkgs) (getAttr "claw" pkgs) (getAttr "ode-blob" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  bodge-openal = {
-    pname = "bodge-openal";
-    version = "stable-git";
-    asds = [ "bodge-openal" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/bodge-openal/2020-10-16/bodge-openal-stable-git.tgz";
-      sha256 = "0051pwifygj1ijv5b39ldmfrka2yrj8rpap04bw3w9cckbkp6bnw";
-      system = "bodge-openal";
-      asd = "bodge-openal";
-    });
-    systems = [ "bodge-openal" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cffi" pkgs) (getAttr "claw" pkgs) (getAttr "claw-utils" pkgs) ];
-  };
-  bodge-openal_slash_example = {
-    pname = "bodge-openal_example";
-    version = "stable-git";
-    asds = [ "bodge-openal" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/bodge-openal/2020-10-16/bodge-openal-stable-git.tgz";
-      sha256 = "0051pwifygj1ijv5b39ldmfrka2yrj8rpap04bw3w9cckbkp6bnw";
-      system = "bodge-openal";
-      asd = "bodge-openal";
-    });
-    systems = [ "bodge-openal/example" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "bodge-openal" pkgs) (getAttr "cffi-c-ref" pkgs) (getAttr "claw" pkgs) (getAttr "float-features" pkgs) (getAttr "openal-blob" pkgs) (getAttr "static-vectors" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  bodge-queue = {
-    pname = "bodge-queue";
-    version = "stable-git";
-    asds = [ "bodge-queue" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/bodge-queue/2020-10-16/bodge-queue-stable-git.tgz";
-      sha256 = "0f4252i8pfy5s4v7w1bpjawysn4cw7di405mqsx2h7skv27hvpz6";
-      system = "bodge-queue";
-      asd = "bodge-queue";
-    });
-    systems = [ "bodge-queue" ];
-    lispLibs = [  ];
-  };
-  bodge-queue_slash_tests = {
-    pname = "bodge-queue_tests";
-    version = "stable-git";
-    asds = [ "bodge-queue" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/bodge-queue/2020-10-16/bodge-queue-stable-git.tgz";
-      sha256 = "0f4252i8pfy5s4v7w1bpjawysn4cw7di405mqsx2h7skv27hvpz6";
-      system = "bodge-queue";
-      asd = "bodge-queue";
-    });
-    systems = [ "bodge-queue/tests" ];
-    lispLibs = [ (getAttr "bodge-queue" pkgs) (getAttr "fiveam" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  bodge-sndfile = {
-    pname = "bodge-sndfile";
-    version = "stable-git";
-    asds = [ "bodge-sndfile" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/bodge-sndfile/2020-10-16/bodge-sndfile-stable-git.tgz";
-      sha256 = "0chdasp4zvr5n34x037lhymh90wg5xwbpr5flwj8aw0cw2nlg485";
-      system = "bodge-sndfile";
-      asd = "bodge-sndfile";
-    });
-    systems = [ "bodge-sndfile" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "bodge-libc-essentials" pkgs) (getAttr "cffi" pkgs) (getAttr "cffi-c-ref" pkgs) (getAttr "claw" pkgs) (getAttr "claw-utils" pkgs) (getAttr "static-vectors" pkgs) ];
-  };
-  bodge-sndfile_slash_example = {
-    pname = "bodge-sndfile_example";
-    version = "stable-git";
-    asds = [ "bodge-sndfile" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/bodge-sndfile/2020-10-16/bodge-sndfile-stable-git.tgz";
-      sha256 = "0chdasp4zvr5n34x037lhymh90wg5xwbpr5flwj8aw0cw2nlg485";
-      system = "bodge-sndfile";
-      asd = "bodge-sndfile";
-    });
-    systems = [ "bodge-sndfile/example" ];
-    lispLibs = [ (getAttr "bodge-sndfile" pkgs) (getAttr "cffi-c-ref" pkgs) (getAttr "sndfile-blob" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  bodge-utilities = {
-    pname = "bodge-utilities";
-    version = "stable-git";
-    asds = [ "bodge-utilities" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/bodge-utilities/2022-07-07/bodge-utilities-stable-git.tgz";
-      sha256 = "0jmz7zb5ahg2kfd5nrh9nb7dda5szamjv7iv9skgcvf7rwn8qf0g";
-      system = "bodge-utilities";
-      asd = "bodge-utilities";
-    });
-    systems = [ "bodge-utilities" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cffi" pkgs) (getAttr "claw" pkgs) (getAttr "dissect" pkgs) (getAttr "local-time" pkgs) (getAttr "log4cl" pkgs) (getAttr "split-sequence" pkgs) (getAttr "static-vectors" pkgs) (getAttr "trivial-gray-streams" pkgs) (getAttr "uiop" pkgs) ];
-  };
-  boondoggle = {
-    pname = "boondoggle";
-    version = "v1.26.0";
-    asds = [ "boondoggle" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/quilc/2021-12-09/quilc-v1.26.0.tgz";
-      sha256 = "09qp2d6xgq4cmg6nfsdz0gbs3rvz3ln0kawmry6cls14lxnljjrr";
-      system = "boondoggle";
-      asd = "boondoggle";
-    });
-    systems = [ "boondoggle" ];
-    lispLibs = [ (getAttr "command-line-arguments" pkgs) (getAttr "drakma" pkgs) (getAttr "cl-quil" pkgs) (getAttr "uiop" pkgs) ];
-  };
-  boondoggle-tests = {
-    pname = "boondoggle-tests";
-    version = "v1.26.0";
-    asds = [ "boondoggle-tests" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/quilc/2021-12-09/quilc-v1.26.0.tgz";
-      sha256 = "09qp2d6xgq4cmg6nfsdz0gbs3rvz3ln0kawmry6cls14lxnljjrr";
-      system = "boondoggle-tests";
-      asd = "boondoggle-tests";
-    });
-    systems = [ "boondoggle-tests" ];
-    lispLibs = [ (getAttr "fiasco" pkgs) (getAttr "boondoggle" pkgs) (getAttr "cl-quil" pkgs) (getAttr "sapaclisp" pkgs) (getAttr "uiop" pkgs) ];
-  };
-  bordeaux-fft = {
-    pname = "bordeaux-fft";
-    version = "20150608-http";
-    asds = [ "bordeaux-fft" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/bordeaux-fft/2015-06-08/bordeaux-fft-20150608-http.tgz";
-      sha256 = "0kmz0wv34p8wixph5i6vj6p60xa48fflh9aq6kismlb0q4a1amp3";
-      system = "bordeaux-fft";
-      asd = "bordeaux-fft";
-    });
-    systems = [ "bordeaux-fft" ];
-    lispLibs = [  ];
-  };
-  bordeaux-threads = {
-    pname = "bordeaux-threads";
-    version = "v0.8.8";
-    asds = [ "bordeaux-threads" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/bordeaux-threads/2022-07-07/bordeaux-threads-v0.8.8.tgz";
-      sha256 = "0h1b177fhwhv75p4jjxjffp334n8jbk93zm33vk78mv44v7jgxdm";
-      system = "bordeaux-threads";
-      asd = "bordeaux-threads";
-    });
-    systems = [ "bordeaux-threads" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) ];
-  };
-  bordeaux-threads_slash_test = {
-    pname = "bordeaux-threads_test";
-    version = "v0.8.8";
-    asds = [ "bordeaux-threads" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/bordeaux-threads/2022-07-07/bordeaux-threads-v0.8.8.tgz";
-      sha256 = "0h1b177fhwhv75p4jjxjffp334n8jbk93zm33vk78mv44v7jgxdm";
-      system = "bordeaux-threads";
-      asd = "bordeaux-threads";
-    });
-    systems = [ "bordeaux-threads/test" ];
-    lispLibs = [ (getAttr "bordeaux-threads" pkgs) (getAttr "fiveam" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  bourbaki = {
-    pname = "bourbaki";
-    version = "20110110-http";
-    asds = [ "bourbaki" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/bourbaki/2011-01-10/bourbaki-20110110-http.tgz";
-      sha256 = "0d222kjk1h60467bkjpxglds3gykily5pyrnb45yvx86shkiv4lp";
-      system = "bourbaki";
-      asd = "bourbaki";
-    });
-    systems = [ "bourbaki" ];
-    lispLibs = [  ];
-  };
-  bp = {
-    pname = "bp";
-    version = "20221106-git";
-    asds = [ "bp" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/bp/2022-11-06/bp-20221106-git.tgz";
-      sha256 = "127gw3pyfx2vxprkbxc821923y6qmv3jd6r824m6zhalfya13w6k";
-      system = "bp";
-      asd = "bp";
-    });
-    systems = [ "bp" ];
-    lispLibs = [ (getAttr "cffi" pkgs) (getAttr "ironclad" pkgs) (getAttr "jsown" pkgs) (getAttr "aserve" pkgs) (getAttr "usocket" pkgs) ];
-  };
-  bp_slash_tests = {
-    pname = "bp_tests";
-    version = "20221106-git";
-    asds = [ "bp" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/bp/2022-11-06/bp-20221106-git.tgz";
-      sha256 = "127gw3pyfx2vxprkbxc821923y6qmv3jd6r824m6zhalfya13w6k";
-      system = "bp";
-      asd = "bp";
-    });
-    systems = [ "bp/tests" ];
-    lispLibs = [ (getAttr "bp" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  bst = {
-    pname = "bst";
-    version = "20221106-git";
-    asds = [ "bst" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/bst/2022-11-06/bst-20221106-git.tgz";
-      sha256 = "0y052jf3gkqhb7rfx72961kg42dnqhmizk7cxlv87d1jr2906d1d";
-      system = "bst";
-      asd = "bst";
-    });
-    systems = [ "bst" ];
-    lispLibs = [  ];
-  };
-  bst_slash_test = {
-    pname = "bst_test";
-    version = "20221106-git";
-    asds = [ "bst" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/bst/2022-11-06/bst-20221106-git.tgz";
-      sha256 = "0y052jf3gkqhb7rfx72961kg42dnqhmizk7cxlv87d1jr2906d1d";
-      system = "bst";
-      asd = "bst";
-    });
-    systems = [ "bst/test" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "bst" pkgs) (getAttr "fiveam" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  bt-semaphore = {
-    pname = "bt-semaphore";
-    version = "20180711-git";
-    asds = [ "bt-semaphore" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/bt-semaphore/2018-07-11/bt-semaphore-20180711-git.tgz";
-      sha256 = "0rl7yp36225z975hg069pywwlpchwn4086cgxwsi2db5mhghpr7l";
-      system = "bt-semaphore";
-      asd = "bt-semaphore";
-    });
-    systems = [ "bt-semaphore" ];
-    lispLibs = [ (getAttr "bordeaux-threads" pkgs) ];
-  };
-  bt-semaphore-test = {
-    pname = "bt-semaphore-test";
-    version = "20180711-git";
-    asds = [ "bt-semaphore-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/bt-semaphore/2018-07-11/bt-semaphore-20180711-git.tgz";
-      sha256 = "0rl7yp36225z975hg069pywwlpchwn4086cgxwsi2db5mhghpr7l";
-      system = "bt-semaphore-test";
-      asd = "bt-semaphore-test";
-    });
-    systems = [ "bt-semaphore-test" ];
-    lispLibs = [ (getAttr "bt-semaphore" pkgs) (getAttr "clunit" pkgs) ];
-  };
-  btrie = {
-    pname = "btrie";
-    version = "20140713-git";
-    asds = [ "btrie" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/btrie/2014-07-13/btrie-20140713-git.tgz";
-      sha256 = "0f1rs2zlpi2bcyba951h3cnyz2mfsxr2i6icmqbam5acqjdrmp30";
-      system = "btrie";
-      asd = "btrie";
-    });
-    systems = [ "btrie" ];
-    lispLibs = [ (getAttr "arnesi" pkgs) (getAttr "lift" pkgs) (getAttr "split-sequence" pkgs) ];
-  };
-  btrie-tests = {
-    pname = "btrie-tests";
-    version = "20140713-git";
-    asds = [ "btrie-tests" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/btrie/2014-07-13/btrie-20140713-git.tgz";
-      sha256 = "0f1rs2zlpi2bcyba951h3cnyz2mfsxr2i6icmqbam5acqjdrmp30";
-      system = "btrie-tests";
-      asd = "btrie";
-    });
-    systems = [ "btrie-tests" ];
-    lispLibs = [ (getAttr "btrie" pkgs) (getAttr "lift" pkgs) (getAttr "metabang-bind" pkgs) ];
-  };
-  bubble-operator-upwards = {
-    pname = "bubble-operator-upwards";
-    version = "1.0";
-    asds = [ "bubble-operator-upwards" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/bubble-operator-upwards/2012-11-25/bubble-operator-upwards-1.0.tgz";
-      sha256 = "0hni8j17z3aqk67r3my1nkkjafaixvdm3cdmg89hb8hhgv0rm2x7";
-      system = "bubble-operator-upwards";
-      asd = "bubble-operator-upwards";
-    });
-    systems = [ "bubble-operator-upwards" ];
-    lispLibs = [  ];
-  };
-  buildapp = {
-    pname = "buildapp";
-    version = "1.5.6";
-    asds = [ "buildapp" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/buildapp/2015-12-18/buildapp-1.5.6.tgz";
-      sha256 = "020ipjfqa3l8skd97cj5kq837wgpj28ygfxnkv64cnjrlbnzh161";
-      system = "buildapp";
-      asd = "buildapp";
-    });
-    systems = [ "buildapp" ];
-    lispLibs = [  ];
-  };
-  buildnode = {
-    pname = "buildnode";
-    version = "20170403-git";
-    asds = [ "buildnode" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/buildnode/2017-04-03/buildnode-20170403-git.tgz";
-      sha256 = "09pd3mkjd278dl1hq30mxh6m2iyyfha4byadyb9drw4n7ncnjggs";
-      system = "buildnode";
-      asd = "buildnode";
-    });
-    systems = [ "buildnode" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cl-interpol" pkgs) (getAttr "cl-ppcre" pkgs) (getAttr "closure-html" pkgs) (getAttr "collectors" pkgs) (getAttr "cxml" pkgs) (getAttr "flexi-streams" pkgs) (getAttr "iterate" pkgs) (getAttr "swank" pkgs) (getAttr "split-sequence" pkgs) (getAttr "symbol-munger" pkgs) ];
-  };
-  buildnode-excel = {
-    pname = "buildnode-excel";
-    version = "20170403-git";
-    asds = [ "buildnode-excel" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/buildnode/2017-04-03/buildnode-20170403-git.tgz";
-      sha256 = "09pd3mkjd278dl1hq30mxh6m2iyyfha4byadyb9drw4n7ncnjggs";
-      system = "buildnode-excel";
-      asd = "buildnode-excel";
-    });
-    systems = [ "buildnode-excel" ];
-    lispLibs = [ (getAttr "buildnode" pkgs) ];
-  };
-  buildnode-html5 = {
-    pname = "buildnode-html5";
-    version = "20170403-git";
-    asds = [ "buildnode-html5" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/buildnode/2017-04-03/buildnode-20170403-git.tgz";
-      sha256 = "09pd3mkjd278dl1hq30mxh6m2iyyfha4byadyb9drw4n7ncnjggs";
-      system = "buildnode-html5";
-      asd = "buildnode-html5";
-    });
-    systems = [ "buildnode-html5" ];
-    lispLibs = [ (getAttr "buildnode" pkgs) ];
-  };
-  buildnode-kml = {
-    pname = "buildnode-kml";
-    version = "20170403-git";
-    asds = [ "buildnode-kml" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/buildnode/2017-04-03/buildnode-20170403-git.tgz";
-      sha256 = "09pd3mkjd278dl1hq30mxh6m2iyyfha4byadyb9drw4n7ncnjggs";
-      system = "buildnode-kml";
-      asd = "buildnode-kml";
-    });
-    systems = [ "buildnode-kml" ];
-    lispLibs = [ (getAttr "buildnode" pkgs) ];
-  };
-  buildnode-test = {
-    pname = "buildnode-test";
-    version = "20170403-git";
-    asds = [ "buildnode-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/buildnode/2017-04-03/buildnode-20170403-git.tgz";
-      sha256 = "09pd3mkjd278dl1hq30mxh6m2iyyfha4byadyb9drw4n7ncnjggs";
-      system = "buildnode-test";
-      asd = "buildnode";
-    });
-    systems = [ "buildnode-test" ];
-    lispLibs = [ (getAttr "buildnode" pkgs) (getAttr "buildnode-xhtml" pkgs) (getAttr "lisp-unit2" pkgs) ];
-  };
-  buildnode-xhtml = {
-    pname = "buildnode-xhtml";
-    version = "20170403-git";
-    asds = [ "buildnode-xhtml" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/buildnode/2017-04-03/buildnode-20170403-git.tgz";
-      sha256 = "09pd3mkjd278dl1hq30mxh6m2iyyfha4byadyb9drw4n7ncnjggs";
-      system = "buildnode-xhtml";
-      asd = "buildnode-xhtml";
-    });
-    systems = [ "buildnode-xhtml" ];
-    lispLibs = [ (getAttr "buildnode" pkgs) ];
-  };
-  buildnode-xul = {
-    pname = "buildnode-xul";
-    version = "20170403-git";
-    asds = [ "buildnode-xul" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/buildnode/2017-04-03/buildnode-20170403-git.tgz";
-      sha256 = "09pd3mkjd278dl1hq30mxh6m2iyyfha4byadyb9drw4n7ncnjggs";
-      system = "buildnode-xul";
-      asd = "buildnode-xul";
-    });
-    systems = [ "buildnode-xul" ];
-    lispLibs = [ (getAttr "buildnode" pkgs) ];
-  };
-  burgled-batteries = {
-    pname = "burgled-batteries";
-    version = "20160825-git";
-    asds = [ "burgled-batteries" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/burgled-batteries/2016-08-25/burgled-batteries-20160825-git.tgz";
-      sha256 = "080ff1yrmfb87pqq1jqr35djjkh3fh8i6cbhv3d1md5qy7hhgdaj";
-      system = "burgled-batteries";
-      asd = "burgled-batteries";
-    });
-    systems = [ "burgled-batteries" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cffi" pkgs) (getAttr "cffi-grovel" pkgs) (getAttr "cl-fad" pkgs) (getAttr "parse-declarations-1_dot_0" pkgs) (getAttr "trivial-garbage" pkgs) ];
-  };
-  burgled-batteries-tests = {
-    pname = "burgled-batteries-tests";
-    version = "20160825-git";
-    asds = [ "burgled-batteries-tests" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/burgled-batteries/2016-08-25/burgled-batteries-20160825-git.tgz";
-      sha256 = "080ff1yrmfb87pqq1jqr35djjkh3fh8i6cbhv3d1md5qy7hhgdaj";
-      system = "burgled-batteries-tests";
-      asd = "burgled-batteries-tests";
-    });
-    systems = [ "burgled-batteries-tests" ];
-    lispLibs = [ (getAttr "burgled-batteries" pkgs) (getAttr "cl-quickcheck" pkgs) (getAttr "lift" pkgs) ];
-  };
-  burgled-batteries_dot_syntax = {
-    pname = "burgled-batteries.syntax";
-    version = "20210531-git";
-    asds = [ "burgled-batteries.syntax" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/burgled-batteries.syntax/2021-05-31/burgled-batteries.syntax-20210531-git.tgz";
-      sha256 = "1hx8w74cgx1qbk6r2p7lzygjqxs5mzxh7w73zrmdibny64akir9a";
-      system = "burgled-batteries.syntax";
-      asd = "burgled-batteries.syntax";
-    });
-    systems = [ "burgled-batteries.syntax" ];
-    lispLibs = [ (getAttr "burgled-batteries" pkgs) (getAttr "esrap" pkgs) (getAttr "named-readtables" pkgs) ];
-  };
-  burgled-batteries_dot_syntax-test = {
-    pname = "burgled-batteries.syntax-test";
-    version = "20210531-git";
-    asds = [ "burgled-batteries.syntax-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/burgled-batteries.syntax/2021-05-31/burgled-batteries.syntax-20210531-git.tgz";
-      sha256 = "1hx8w74cgx1qbk6r2p7lzygjqxs5mzxh7w73zrmdibny64akir9a";
-      system = "burgled-batteries.syntax-test";
-      asd = "burgled-batteries.syntax-test";
-    });
-    systems = [ "burgled-batteries.syntax-test" ];
-    lispLibs = [ (getAttr "burgled-batteries_dot_syntax" pkgs) (getAttr "lift" pkgs) ];
-  };
-  bus = {
-    pname = "bus";
-    version = "master-1a957fb2-git";
-    asds = [ "bus" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/gendl/2022-07-07/gendl-master-1a957fb2-git.tgz";
-      sha256 = "0j47qnvvfx3vnh3pll6rkya5m142hi93bd5jk65rv43vbc94sv30";
-      system = "bus";
-      asd = "bus";
-    });
-    systems = [ "bus" ];
-    lispLibs = [ (getAttr "gwl-graphics" pkgs) ];
-  };
-  bytecurry_dot_asdf-ext = {
-    pname = "bytecurry.asdf-ext";
-    version = "20150505-git";
-    asds = [ "bytecurry.asdf-ext" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/bytecurry.asdf-ext/2015-05-05/bytecurry.asdf-ext-20150505-git.tgz";
-      sha256 = "07w2lz9mq35sgzzvmz9084l1sia40zkhlvfblkpzxfwyzr6cxrxa";
-      system = "bytecurry.asdf-ext";
-      asd = "bytecurry.asdf-ext";
-    });
-    systems = [ "bytecurry.asdf-ext" ];
-    lispLibs = [ (getAttr "asdf-package-system" pkgs) ];
-  };
-  bytecurry_dot_mocks = {
-    pname = "bytecurry.mocks";
-    version = "20200325-git";
-    asds = [ "bytecurry.mocks" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/bytecurry.mocks/2020-03-25/bytecurry.mocks-20200325-git.tgz";
-      sha256 = "0md2j6iggmfm1v7nzcmz7f0xy2jxrsg77iszpisdzmwnijfy8ks0";
-      system = "bytecurry.mocks";
-      asd = "bytecurry.mocks";
-    });
-    systems = [ "bytecurry.mocks" ];
-    lispLibs = [ (getAttr "asdf-package-system" pkgs) (getAttr "bytecurry_dot_asdf-ext" pkgs) ];
-  };
-  bytecurry_dot_mocks_slash_test = {
-    pname = "bytecurry.mocks_test";
-    version = "20200325-git";
-    asds = [ "bytecurry.mocks" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/bytecurry.mocks/2020-03-25/bytecurry.mocks-20200325-git.tgz";
-      sha256 = "0md2j6iggmfm1v7nzcmz7f0xy2jxrsg77iszpisdzmwnijfy8ks0";
-      system = "bytecurry.mocks";
-      asd = "bytecurry.mocks";
-    });
-    systems = [ "bytecurry.mocks/test" ];
-    lispLibs = [ (getAttr "bytecurry_dot_mocks" pkgs) (getAttr "fiveam" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  c2ffi-blob = {
-    pname = "c2ffi-blob";
-    version = "stable-git";
-    asds = [ "c2ffi-blob" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/c2ffi-blob/2020-10-16/c2ffi-blob-stable-git.tgz";
-      sha256 = "1rk89nycdvcb4a50zm3wdmrbz8w5xk4jgvjg2wib1dnslwnwdivc";
-      system = "c2ffi-blob";
-      asd = "c2ffi-blob";
-    });
-    systems = [ "c2ffi-blob" ];
-    lispLibs = [ (getAttr "claw-support" pkgs) (getAttr "trivial-features" pkgs) ];
-  };
-  cacau = {
-    pname = "cacau";
-    version = "20200610-git";
-    asds = [ "cacau" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cacau/2020-06-10/cacau-20200610-git.tgz";
-      sha256 = "0m8v1xw68cr5ldv045rxgvnhigr4iahh7v6v32z6xlq2sj6r55x0";
-      system = "cacau";
-      asd = "cacau";
-    });
-    systems = [ "cacau" ];
-    lispLibs = [ (getAttr "assertion-error" pkgs) (getAttr "eventbus" pkgs) ];
-  };
-  cacau-asdf = {
-    pname = "cacau-asdf";
-    version = "20200610-git";
-    asds = [ "cacau-asdf" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cacau/2020-06-10/cacau-20200610-git.tgz";
-      sha256 = "0m8v1xw68cr5ldv045rxgvnhigr4iahh7v6v32z6xlq2sj6r55x0";
-      system = "cacau-asdf";
-      asd = "cacau-asdf";
-    });
-    systems = [ "cacau-asdf" ];
-    lispLibs = [  ];
-  };
-  cacau-examples-asdf-integration = {
-    pname = "cacau-examples-asdf-integration";
-    version = "20200610-git";
-    asds = [ "cacau-examples-asdf-integration" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cacau/2020-06-10/cacau-20200610-git.tgz";
-      sha256 = "0m8v1xw68cr5ldv045rxgvnhigr4iahh7v6v32z6xlq2sj6r55x0";
-      system = "cacau-examples-asdf-integration";
-      asd = "cacau-examples-asdf-integration";
-    });
-    systems = [ "cacau-examples-asdf-integration" ];
-    lispLibs = [  ];
-  };
-  cacau-examples-asdf-integration-test = {
-    pname = "cacau-examples-asdf-integration-test";
-    version = "20200610-git";
-    asds = [ "cacau-examples-asdf-integration-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cacau/2020-06-10/cacau-20200610-git.tgz";
-      sha256 = "0m8v1xw68cr5ldv045rxgvnhigr4iahh7v6v32z6xlq2sj6r55x0";
-      system = "cacau-examples-asdf-integration-test";
-      asd = "cacau-examples-asdf-integration-test";
-    });
-    systems = [ "cacau-examples-asdf-integration-test" ];
-    lispLibs = [ (getAttr "assert-p" pkgs) (getAttr "cacau" pkgs) (getAttr "cacau-asdf" pkgs) (getAttr "cacau-examples-asdf-integration" pkgs) ];
-  };
-  cacau-test = {
-    pname = "cacau-test";
-    version = "20200610-git";
-    asds = [ "cacau-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cacau/2020-06-10/cacau-20200610-git.tgz";
-      sha256 = "0m8v1xw68cr5ldv045rxgvnhigr4iahh7v6v32z6xlq2sj6r55x0";
-      system = "cacau-test";
-      asd = "cacau-test";
-    });
-    systems = [ "cacau-test" ];
-    lispLibs = [ (getAttr "assert-p" pkgs) (getAttr "cacau" pkgs) (getAttr "cacau-asdf" pkgs) ];
-  };
-  cache-while = {
-    pname = "cache-while";
-    version = "20210807-git";
-    asds = [ "cache-while" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cache-while/2021-08-07/cache-while-20210807-git.tgz";
-      sha256 = "1qil68rfn5irmkb0jk1f6g1zy80wgc3skl8cr4rfgh7ywgm5izx3";
-      system = "cache-while";
-      asd = "cache-while";
-    });
-    systems = [ "cache-while" ];
-    lispLibs = [  ];
-  };
-  cacle = {
-    pname = "cacle";
-    version = "20190521-git";
-    asds = [ "cacle" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cacle/2019-05-21/cacle-20190521-git.tgz";
-      sha256 = "0h0dk0sfkfl8g0sbrs76ydb9l4znssqhx8nc5k1sg7zxpni5a4qy";
-      system = "cacle";
-      asd = "cacle";
-    });
-    systems = [ "cacle" ];
-    lispLibs = [ (getAttr "bordeaux-threads" pkgs) ];
-  };
-  calispel = {
-    pname = "calispel";
-    version = "20170830-git";
-    asds = [ "calispel" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/calispel/2017-08-30/calispel-20170830-git.tgz";
-      sha256 = "08bmf3pi7n5hadpmqqkg65cxcj6kbvm997wcs1f53ml1nb79d9z8";
-      system = "calispel";
-      asd = "calispel";
-    });
-    systems = [ "calispel" ];
-    lispLibs = [ (getAttr "bordeaux-threads" pkgs) (getAttr "jpl-util" pkgs) (getAttr "jpl-queues" pkgs) ];
-  };
-  calispel-test = {
-    pname = "calispel-test";
-    version = "20170830-git";
-    asds = [ "calispel-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/calispel/2017-08-30/calispel-20170830-git.tgz";
-      sha256 = "08bmf3pi7n5hadpmqqkg65cxcj6kbvm997wcs1f53ml1nb79d9z8";
-      system = "calispel-test";
-      asd = "calispel";
-    });
-    systems = [ "calispel-test" ];
-    lispLibs = [ (getAttr "calispel" pkgs) (getAttr "eager-future2" pkgs) ];
-  };
-  cambl = {
-    pname = "cambl";
-    version = "20181210-git";
-    asds = [ "cambl" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cambl/2018-12-10/cambl-20181210-git.tgz";
-      sha256 = "103mry04j2k9vznsxm7wcvccgxkil92cdrv52miwcmxl8daa4jiz";
-      system = "cambl";
-      asd = "cambl";
-    });
-    systems = [ "cambl" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "fprog" pkgs) (getAttr "cl-containers" pkgs) (getAttr "local-time" pkgs) (getAttr "periods" pkgs) ];
-  };
-  cambl-test = {
-    pname = "cambl-test";
-    version = "20181210-git";
-    asds = [ "cambl-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cambl/2018-12-10/cambl-20181210-git.tgz";
-      sha256 = "103mry04j2k9vznsxm7wcvccgxkil92cdrv52miwcmxl8daa4jiz";
-      system = "cambl-test";
-      asd = "cambl-test";
-    });
-    systems = [ "cambl-test" ];
-    lispLibs = [ (getAttr "cambl" pkgs) (getAttr "uiop" pkgs) (getAttr "xlunit" pkgs) ];
-  };
-  camera-matrix = {
-    pname = "camera-matrix";
-    version = "20200427-git";
-    asds = [ "camera-matrix" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/sucle/2020-04-27/sucle-20200427-git.tgz";
-      sha256 = "033akkn9zxc6qdgycgxgybx3v23638245xrx29x2cbwnvg3i1q34";
-      system = "camera-matrix";
-      asd = "camera-matrix";
-    });
-    systems = [ "camera-matrix" ];
-    lispLibs = [ (getAttr "nsb-cga" pkgs) (getAttr "uncommon-lisp" pkgs) ];
-  };
-  can = {
-    pname = "can";
-    version = "20180328-git";
-    asds = [ "can" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/can/2018-03-28/can-20180328-git.tgz";
-      sha256 = "0m3lqc56aw46cj2z379a19fh7f1h0vaxn78xpvbxq3bwar46jzqh";
-      system = "can";
-      asd = "can";
-    });
-    systems = [ "can" ];
-    lispLibs = [  ];
-  };
-  can-test = {
-    pname = "can-test";
-    version = "20180328-git";
-    asds = [ "can-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/can/2018-03-28/can-20180328-git.tgz";
-      sha256 = "0m3lqc56aw46cj2z379a19fh7f1h0vaxn78xpvbxq3bwar46jzqh";
-      system = "can-test";
-      asd = "can-test";
-    });
-    systems = [ "can-test" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "can" pkgs) (getAttr "mito" pkgs) (getAttr "prove" pkgs) (getAttr "prove-asdf" pkgs) ];
-  };
-  canonicalized-initargs = {
-    pname = "canonicalized-initargs";
-    version = "2.0";
-    asds = [ "canonicalized-initargs" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/canonicalized-initargs/2021-04-11/canonicalized-initargs_2.0.tgz";
-      sha256 = "0jmmjw86x9mmlfla4kdmdqf1fjrj0p2fmv1lc4k555mcf67mj2fq";
-      system = "canonicalized-initargs";
-      asd = "canonicalized-initargs";
-    });
-    systems = [ "canonicalized-initargs" ];
-    lispLibs = [ (getAttr "cesdi" pkgs) (getAttr "closer-mop" pkgs) (getAttr "compatible-metaclasses" pkgs) (getAttr "enhanced-defclass" pkgs) (getAttr "enhanced-typep" pkgs) (getAttr "object-class" pkgs) ];
-  };
-  canonicalized-initargs_tests = {
-    pname = "canonicalized-initargs_tests";
-    version = "2.0";
-    asds = [ "canonicalized-initargs_tests" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/canonicalized-initargs/2021-04-11/canonicalized-initargs_2.0.tgz";
-      sha256 = "0jmmjw86x9mmlfla4kdmdqf1fjrj0p2fmv1lc4k555mcf67mj2fq";
-      system = "canonicalized-initargs_tests";
-      asd = "canonicalized-initargs_tests";
-    });
-    systems = [ "canonicalized-initargs_tests" ];
-    lispLibs = [ (getAttr "canonicalized-initargs" pkgs) (getAttr "enhanced-boolean" pkgs) (getAttr "enhanced-eval-when" pkgs) (getAttr "parachute" pkgs) ];
-  };
-  capstone = {
-    pname = "capstone";
-    version = "20220331-git";
-    asds = [ "capstone" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-capstone/2022-03-31/cl-capstone-20220331-git.tgz";
-      sha256 = "1jbhp1sf7mr6yrqkdyjl93m1dl901ka6gkgdj20nv2bgp400ycmp";
-      system = "capstone";
-      asd = "capstone";
-    });
-    systems = [ "capstone" ];
-    lispLibs = [ (getAttr "cffi" pkgs) (getAttr "cffi-grovel" pkgs) (getAttr "gt" pkgs) (getAttr "static-vectors" pkgs) (getAttr "trivial-features" pkgs) ];
-  };
-  capstone_slash_raw = {
-    pname = "capstone_raw";
-    version = "20220331-git";
-    asds = [ "capstone" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-capstone/2022-03-31/cl-capstone-20220331-git.tgz";
-      sha256 = "1jbhp1sf7mr6yrqkdyjl93m1dl901ka6gkgdj20nv2bgp400ycmp";
-      system = "capstone";
-      asd = "capstone";
-    });
-    systems = [ "capstone/raw" ];
-    lispLibs = [ (getAttr "cffi" pkgs) (getAttr "cffi-grovel" pkgs) (getAttr "gt" pkgs) (getAttr "static-vectors" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  capstone_slash_raw-test = {
-    pname = "capstone_raw-test";
-    version = "20220331-git";
-    asds = [ "capstone" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-capstone/2022-03-31/cl-capstone-20220331-git.tgz";
-      sha256 = "1jbhp1sf7mr6yrqkdyjl93m1dl901ka6gkgdj20nv2bgp400ycmp";
-      system = "capstone";
-      asd = "capstone";
-    });
-    systems = [ "capstone/raw-test" ];
-    lispLibs = [ (getAttr "cffi" pkgs) (getAttr "cffi-grovel" pkgs) (getAttr "gt" pkgs) (getAttr "static-vectors" pkgs) (getAttr "stefil" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  capstone_slash_test = {
-    pname = "capstone_test";
-    version = "20220331-git";
-    asds = [ "capstone" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-capstone/2022-03-31/cl-capstone-20220331-git.tgz";
-      sha256 = "1jbhp1sf7mr6yrqkdyjl93m1dl901ka6gkgdj20nv2bgp400ycmp";
-      system = "capstone";
-      asd = "capstone";
-    });
-    systems = [ "capstone/test" ];
-    lispLibs = [ (getAttr "cffi" pkgs) (getAttr "cffi-grovel" pkgs) (getAttr "capstone" pkgs) (getAttr "gt" pkgs) (getAttr "static-vectors" pkgs) (getAttr "stefil" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  caramel = {
-    pname = "caramel";
-    version = "20130420-git";
-    asds = [ "caramel" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/caramel/2013-04-20/caramel-20130420-git.tgz";
-      sha256 = "08kyjxd8hyk5xnnq0p0w4aqpvisv278h38pqjkz04a032dn5b87a";
-      system = "caramel";
-      asd = "caramel";
-    });
-    systems = [ "caramel" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "buildnode" pkgs) (getAttr "closure-html" pkgs) (getAttr "css-selectors" pkgs) (getAttr "cxml" pkgs) (getAttr "cxml-dom" pkgs) (getAttr "iterate" pkgs) ];
-  };
-  cardioex = {
-    pname = "cardioex";
-    version = "20211020-git";
-    asds = [ "cardioex" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cardiogram/2021-10-20/cardiogram-20211020-git.tgz";
-      sha256 = "08kqcj3c4vkx5s6ba9m67xh7w7paaavp2ds072crp1x7pjkh4n5i";
-      system = "cardioex";
-      asd = "cardioex";
-    });
-    systems = [ "cardioex" ];
-    lispLibs = [ (getAttr "cardiogram" pkgs) ];
-  };
-  cardiogram = {
-    pname = "cardiogram";
-    version = "20211020-git";
-    asds = [ "cardiogram" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cardiogram/2021-10-20/cardiogram-20211020-git.tgz";
-      sha256 = "08kqcj3c4vkx5s6ba9m67xh7w7paaavp2ds072crp1x7pjkh4n5i";
-      system = "cardiogram";
-      asd = "cardiogram";
-    });
-    systems = [ "cardiogram" ];
-    lispLibs = [ (getAttr "cl-annot" pkgs) (getAttr "closer-mop" pkgs) ];
-  };
-  cari3s = {
-    pname = "cari3s";
-    version = "20200325-git";
-    asds = [ "cari3s" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cari3s/2020-03-25/cari3s-20200325-git.tgz";
-      sha256 = "1adwrlwq48l1g9syi0nnm77x1rxv53x9zdhbr91nqqy8b8sxr674";
-      system = "cari3s";
-      asd = "cari3s";
-    });
-    systems = [ "cari3s" ];
-    lispLibs = [ (getAttr "cffi" pkgs) (getAttr "closer-mop" pkgs) (getAttr "documentation-utils" pkgs) (getAttr "drakma" pkgs) (getAttr "pango-markup" pkgs) (getAttr "usocket" pkgs) (getAttr "yason" pkgs) ];
-  };
-  carrier = {
-    pname = "carrier";
-    version = "20181210-git";
-    asds = [ "carrier" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/carrier/2018-12-10/carrier-20181210-git.tgz";
-      sha256 = "1xry7alc9x86y1g5k417vhvlgkwgfrl80zpsyfdwdsz7hrwff41d";
-      system = "carrier";
-      asd = "carrier";
-    });
-    systems = [ "carrier" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "babel" pkgs) (getAttr "blackbird" pkgs) (getAttr "cl-async" pkgs) (getAttr "cl-async-ssl" pkgs) (getAttr "cl-cookie" pkgs) (getAttr "fast-http" pkgs) (getAttr "fast-io" pkgs) (getAttr "quri" pkgs) ];
-  };
-  cartesian-product-switch = {
-    pname = "cartesian-product-switch";
-    version = "2.0";
-    asds = [ "cartesian-product-switch" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cartesian-product-switch/2012-09-09/cartesian-product-switch-2.0.tgz";
-      sha256 = "18cxslj2753k6h666j0mmzg0h0z9l6ddi24gqls6h5d5svd7l3xk";
-      system = "cartesian-product-switch";
-      asd = "cartesian-product-switch";
-    });
-    systems = [ "cartesian-product-switch" ];
-    lispLibs = [ (getAttr "map-bind" pkgs) ];
-  };
-  caveman-middleware-dbimanager = {
-    pname = "caveman-middleware-dbimanager";
-    version = "20221106-git";
-    asds = [ "caveman-middleware-dbimanager" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/caveman/2022-11-06/caveman-20221106-git.tgz";
-      sha256 = "041i1g78cn6mjv8ba4bylw57f3px2rp5a0jnj17rwkfhfcvc76md";
-      system = "caveman-middleware-dbimanager";
-      asd = "caveman-middleware-dbimanager";
-    });
-    systems = [ "caveman-middleware-dbimanager" ];
-    lispLibs = [ (getAttr "dbi" pkgs) ];
-  };
-  caveman2 = {
-    pname = "caveman2";
-    version = "20221106-git";
-    asds = [ "caveman2" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/caveman/2022-11-06/caveman-20221106-git.tgz";
-      sha256 = "041i1g78cn6mjv8ba4bylw57f3px2rp5a0jnj17rwkfhfcvc76md";
-      system = "caveman2";
-      asd = "caveman2";
-    });
-    systems = [ "caveman2" ];
-    lispLibs = [ (getAttr "dbi" pkgs) (getAttr "cl-project" pkgs) (getAttr "cl-syntax-annot" pkgs) (getAttr "lack-request" pkgs) (getAttr "lack-response" pkgs) (getAttr "myway" pkgs) (getAttr "ningle" pkgs) (getAttr "quri" pkgs) ];
-  };
-  caveman2-db = {
-    pname = "caveman2-db";
-    version = "20221106-git";
-    asds = [ "caveman2-db" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/caveman/2022-11-06/caveman-20221106-git.tgz";
-      sha256 = "041i1g78cn6mjv8ba4bylw57f3px2rp5a0jnj17rwkfhfcvc76md";
-      system = "caveman2-db";
-      asd = "caveman2-db";
-    });
-    systems = [ "caveman2-db" ];
-    lispLibs = [ (getAttr "caveman-middleware-dbimanager" pkgs) (getAttr "dbi" pkgs) (getAttr "sxql" pkgs) ];
-  };
-  caveman2-test = {
-    pname = "caveman2-test";
-    version = "20221106-git";
-    asds = [ "caveman2-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/caveman/2022-11-06/caveman-20221106-git.tgz";
-      sha256 = "041i1g78cn6mjv8ba4bylw57f3px2rp5a0jnj17rwkfhfcvc76md";
-      system = "caveman2-test";
-      asd = "caveman2-test";
-    });
-    systems = [ "caveman2-test" ];
-    lispLibs = [ (getAttr "caveman2" pkgs) (getAttr "dexador" pkgs) (getAttr "lack-component" pkgs) (getAttr "prove" pkgs) (getAttr "prove-asdf" pkgs) (getAttr "trivial-types" pkgs) (getAttr "uiop" pkgs) (getAttr "usocket" pkgs) ];
-  };
-  caveman2-widgets = {
-    pname = "caveman2-widgets";
-    version = "20180228-git";
-    asds = [ "caveman2-widgets" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/caveman2-widgets/2018-02-28/caveman2-widgets-20180228-git.tgz";
-      sha256 = "1rzb868m3f28z1hcr3nzlprgqqq1kwg3qyh24p36fv76b4g96wkq";
-      system = "caveman2-widgets";
-      asd = "caveman2-widgets";
-    });
-    systems = [ "caveman2-widgets" ];
-    lispLibs = [ (getAttr "caveman2" pkgs) (getAttr "moptilities" pkgs) (getAttr "trivial-garbage" pkgs) ];
-  };
-  caveman2-widgets-bootstrap = {
-    pname = "caveman2-widgets-bootstrap";
-    version = "20180228-git";
-    asds = [ "caveman2-widgets-bootstrap" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/caveman2-widgets-bootstrap/2018-02-28/caveman2-widgets-bootstrap-20180228-git.tgz";
-      sha256 = "1xh3x7r7givxxyrkh4ngx098s35qz98gcz7yjyf4dp0psfkk65xj";
-      system = "caveman2-widgets-bootstrap";
-      asd = "caveman2-widgets-bootstrap";
-    });
-    systems = [ "caveman2-widgets-bootstrap" ];
-    lispLibs = [ (getAttr "caveman2" pkgs) (getAttr "caveman2-widgets" pkgs) ];
-  };
-  caveman2-widgets-bootstrap-test = {
-    pname = "caveman2-widgets-bootstrap-test";
-    version = "20180228-git";
-    asds = [ "caveman2-widgets-bootstrap-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/caveman2-widgets-bootstrap/2018-02-28/caveman2-widgets-bootstrap-20180228-git.tgz";
-      sha256 = "1xh3x7r7givxxyrkh4ngx098s35qz98gcz7yjyf4dp0psfkk65xj";
-      system = "caveman2-widgets-bootstrap-test";
-      asd = "caveman2-widgets-bootstrap-test";
-    });
-    systems = [ "caveman2-widgets-bootstrap-test" ];
-    lispLibs = [ (getAttr "caveman2-widgets-bootstrap" pkgs) (getAttr "prove" pkgs) (getAttr "prove-asdf" pkgs) ];
-  };
-  caveman2-widgets-test = {
-    pname = "caveman2-widgets-test";
-    version = "20180228-git";
-    asds = [ "caveman2-widgets-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/caveman2-widgets/2018-02-28/caveman2-widgets-20180228-git.tgz";
-      sha256 = "1rzb868m3f28z1hcr3nzlprgqqq1kwg3qyh24p36fv76b4g96wkq";
-      system = "caveman2-widgets-test";
-      asd = "caveman2-widgets-test";
-    });
-    systems = [ "caveman2-widgets-test" ];
-    lispLibs = [ (getAttr "caveman2-widgets" pkgs) (getAttr "prove" pkgs) (getAttr "prove-asdf" pkgs) ];
-  };
-  cblas = {
-    pname = "cblas";
-    version = "20221106-git";
-    asds = [ "cblas" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-cblas/2022-11-06/cl-cblas-20221106-git.tgz";
-      sha256 = "1bd2w51r71pgm6sc6m2fms4j1bbnli023j4w3rbxw9cln0g7badp";
-      system = "cblas";
-      asd = "cblas";
-    });
-    systems = [ "cblas" ];
-    lispLibs = [ (getAttr "cffi" pkgs) (getAttr "cl-autowrap" pkgs) (getAttr "uiop" pkgs) ];
-  };
-  ccl-compat = {
-    pname = "ccl-compat";
-    version = "20171130-git";
-    asds = [ "ccl-compat" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/ccl-compat/2017-11-30/ccl-compat-20171130-git.tgz";
-      sha256 = "15402373wprmyx4l7zgpv64vj3c11xvxnnpzqbmq4j6rljpb40da";
-      system = "ccl-compat";
-      asd = "ccl-compat";
-    });
-    systems = [ "ccl-compat" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "bordeaux-threads" pkgs) (getAttr "closer-mop" pkgs) ];
-  };
-  ccldoc = {
-    pname = "ccldoc";
-    version = "20200427-git";
-    asds = [ "ccldoc" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/ccldoc/2020-04-27/ccldoc-20200427-git.tgz";
-      sha256 = "0pxjk07drvxrk65g46lbpz2y0xgxgn04k6yvirl0hk2dry0myinp";
-      system = "ccldoc";
-      asd = "ccldoc";
-    });
-    systems = [ "ccldoc" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "ccl-compat" pkgs) (getAttr "cl-who" pkgs) (getAttr "s-xml" pkgs) (getAttr "split-sequence" pkgs) ];
-  };
-  ccldoc-libraries = {
-    pname = "ccldoc-libraries";
-    version = "20200427-git";
-    asds = [ "ccldoc-libraries" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/ccldoc/2020-04-27/ccldoc-20200427-git.tgz";
-      sha256 = "0pxjk07drvxrk65g46lbpz2y0xgxgn04k6yvirl0hk2dry0myinp";
-      system = "ccldoc-libraries";
-      asd = "ccldoc-libraries";
-    });
-    systems = [ "ccldoc-libraries" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "s-xml" pkgs) (getAttr "split-sequence" pkgs) ];
-  };
-  cells = {
-    pname = "cells";
-    version = "20211020-git";
-    asds = [ "cells" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cells/2021-10-20/cells-20211020-git.tgz";
-      sha256 = "0rkzvwq38lwb1045w54kw020pb9i63hxiawwhqkf8k1inhak3fdk";
-      system = "cells";
-      asd = "cells";
-    });
-    systems = [ "cells" ];
-    lispLibs = [ (getAttr "utils-kt" pkgs) ];
-  };
-  cephes = {
-    pname = "cephes";
-    version = "20221106-git";
-    asds = [ "cephes" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cephes.cl/2022-11-06/cephes.cl-20221106-git.tgz";
-      sha256 = "07krprq23i9ncdkdq69lsvzswshhrfmjds4sk1kgicjxhm37l25h";
-      system = "cephes";
-      asd = "cephes";
-    });
-    systems = [ "cephes" ];
-    lispLibs = [ (getAttr "cffi" pkgs) ];
-  };
-  cepl = {
-    pname = "cepl";
-    version = "release-quicklisp-d1a10b6c-git";
-    asds = [ "cepl" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cepl/2021-02-28/cepl-release-quicklisp-d1a10b6c-git.tgz";
-      sha256 = "0izbw2advqm3wailj3dpq6zqfrfirwn14pw5qmqh8i71r51xwmm2";
-      system = "cepl";
-      asd = "cepl";
-    });
-    systems = [ "cepl" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "bordeaux-threads" pkgs) (getAttr "cepl_dot_build" pkgs) (getAttr "cffi" pkgs) (getAttr "cl-opengl" pkgs) (getAttr "cl-ppcre" pkgs) (getAttr "documentation-utils" pkgs) (getAttr "float-features" pkgs) (getAttr "ieee-floats" pkgs) (getAttr "split-sequence" pkgs) (getAttr "uiop" pkgs) (getAttr "varjo" pkgs) ];
-  };
-  cepl_dot_build = {
-    pname = "cepl.build";
-    version = "release-quicklisp-d1a10b6c-git";
-    asds = [ "cepl.build" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cepl/2021-02-28/cepl-release-quicklisp-d1a10b6c-git.tgz";
-      sha256 = "0izbw2advqm3wailj3dpq6zqfrfirwn14pw5qmqh8i71r51xwmm2";
-      system = "cepl.build";
-      asd = "cepl.build";
-    });
-    systems = [ "cepl.build" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) ];
-  };
-  cepl_dot_camera = {
-    pname = "cepl.camera";
-    version = "release-quicklisp-1292212a-git";
-    asds = [ "cepl.camera" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cepl.camera/2018-02-28/cepl.camera-release-quicklisp-1292212a-git.tgz";
-      sha256 = "0z73f95bxr2vn47g8qrvf9gzy1my25mkg7hl7kpib21yahfpzzvb";
-      system = "cepl.camera";
-      asd = "cepl.camera";
-    });
-    systems = [ "cepl.camera" ];
-    lispLibs = [ (getAttr "cepl" pkgs) (getAttr "cepl_dot_spaces" pkgs) (getAttr "rtg-math" pkgs) ];
-  };
-  cepl_dot_devil = {
-    pname = "cepl.devil";
-    version = "release-quicklisp-ea5f8514-git";
-    asds = [ "cepl.devil" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cepl.devil/2018-02-28/cepl.devil-release-quicklisp-ea5f8514-git.tgz";
-      sha256 = "1b64vfjchkwppcp3j4krwx2x9nj29llisqy1yc9ncbnmi9xs38a0";
-      system = "cepl.devil";
-      asd = "cepl.devil";
-    });
-    systems = [ "cepl.devil" ];
-    lispLibs = [ (getAttr "cepl" pkgs) (getAttr "cl-devil" pkgs) ];
-  };
-  cepl_dot_drm-gbm = {
-    pname = "cepl.drm-gbm";
-    version = "20190521-git";
-    asds = [ "cepl.drm-gbm" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cepl.drm-gbm/2019-05-21/cepl.drm-gbm-20190521-git.tgz";
-      sha256 = "00csd2f6z13rjqipaf02w87phn2xynmzf1jcrrshbibs204m4nmy";
-      system = "cepl.drm-gbm";
-      asd = "cepl.drm-gbm";
-    });
-    systems = [ "cepl.drm-gbm" ];
-    lispLibs = [ (getAttr "cepl" pkgs) (getAttr "cl-drm" pkgs) (getAttr "cl-egl" pkgs) (getAttr "cl-gbm" pkgs) (getAttr "osicat" pkgs) ];
-  };
-  cepl_dot_glop = {
-    pname = "cepl.glop";
-    version = "release-quicklisp-8ec09801-git";
-    asds = [ "cepl.glop" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cepl.glop/2018-02-28/cepl.glop-release-quicklisp-8ec09801-git.tgz";
-      sha256 = "1dq727v2s22yna6ycxxs79pg13b0cyh1lfrk6hsb6vizgiks20jw";
-      system = "cepl.glop";
-      asd = "cepl.glop";
-    });
-    systems = [ "cepl.glop" ];
-    lispLibs = [ (getAttr "cepl" pkgs) (getAttr "glop" pkgs) ];
-  };
-  cepl_dot_sdl2 = {
-    pname = "cepl.sdl2";
-    version = "release-quicklisp-6da5a030-git";
-    asds = [ "cepl.sdl2" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cepl.sdl2/2018-02-28/cepl.sdl2-release-quicklisp-6da5a030-git.tgz";
-      sha256 = "0lz8yxm1g2ch0w779lhrs2xkfciy3iz6viz7cdgyd2824isvinjf";
-      system = "cepl.sdl2";
-      asd = "cepl.sdl2";
-    });
-    systems = [ "cepl.sdl2" ];
-    lispLibs = [ (getAttr "cepl" pkgs) (getAttr "sdl2" pkgs) ];
-  };
-  cepl_dot_sdl2-image = {
-    pname = "cepl.sdl2-image";
-    version = "release-quicklisp-94a77649-git";
-    asds = [ "cepl.sdl2-image" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cepl.sdl2-image/2018-02-28/cepl.sdl2-image-release-quicklisp-94a77649-git.tgz";
-      sha256 = "16dzjk2q658xr1v9rk2iny70rjhxbgi4lcp59s5mkdfs2k3a2637";
-      system = "cepl.sdl2-image";
-      asd = "cepl.sdl2-image";
-    });
-    systems = [ "cepl.sdl2-image" ];
-    lispLibs = [ (getAttr "cepl" pkgs) (getAttr "sdl2" pkgs) (getAttr "sdl2-image" pkgs) ];
-  };
-  cepl_dot_sdl2-ttf = {
-    pname = "cepl.sdl2-ttf";
-    version = "release-quicklisp-11b498a3-git";
-    asds = [ "cepl.sdl2-ttf" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cepl.sdl2-ttf/2018-01-31/cepl.sdl2-ttf-release-quicklisp-11b498a3-git.tgz";
-      sha256 = "1fxj3rdv2rlyks00h18dpd42xywgnydgyvb1s4d67hjk7fl19a5p";
-      system = "cepl.sdl2-ttf";
-      asd = "cepl.sdl2-ttf";
-    });
-    systems = [ "cepl.sdl2-ttf" ];
-    lispLibs = [ (getAttr "cepl_dot_sdl2" pkgs) (getAttr "sdl2-ttf" pkgs) (getAttr "rtg-math" pkgs) ];
-  };
-  cepl_dot_skitter_dot_glop = {
-    pname = "cepl.skitter.glop";
-    version = "release-quicklisp-f52b9240-git";
-    asds = [ "cepl.skitter.glop" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cepl.skitter/2018-02-28/cepl.skitter-release-quicklisp-f52b9240-git.tgz";
-      sha256 = "1xz53q8klzrd7cr586jd16pypxgpy68vlvfirqhlv6jc7k99sjvs";
-      system = "cepl.skitter.glop";
-      asd = "cepl.skitter.glop";
-    });
-    systems = [ "cepl.skitter.glop" ];
-    lispLibs = [ (getAttr "cepl_dot_glop" pkgs) (getAttr "skitter_dot_glop" pkgs) ];
-  };
-  cepl_dot_skitter_dot_sdl2 = {
-    pname = "cepl.skitter.sdl2";
-    version = "release-quicklisp-f52b9240-git";
-    asds = [ "cepl.skitter.sdl2" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cepl.skitter/2018-02-28/cepl.skitter-release-quicklisp-f52b9240-git.tgz";
-      sha256 = "1xz53q8klzrd7cr586jd16pypxgpy68vlvfirqhlv6jc7k99sjvs";
-      system = "cepl.skitter.sdl2";
-      asd = "cepl.skitter.sdl2";
-    });
-    systems = [ "cepl.skitter.sdl2" ];
-    lispLibs = [ (getAttr "cepl_dot_sdl2" pkgs) (getAttr "skitter_dot_sdl2" pkgs) ];
-  };
-  cepl_dot_spaces = {
-    pname = "cepl.spaces";
-    version = "release-quicklisp-c7f83f26-git";
-    asds = [ "cepl.spaces" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cepl.spaces/2018-03-28/cepl.spaces-release-quicklisp-c7f83f26-git.tgz";
-      sha256 = "0z74ipd4j2spjwl6h625azdczpds3v44iin77q685ldx9rwx3k8y";
-      system = "cepl.spaces";
-      asd = "cepl.spaces";
-    });
-    systems = [ "cepl.spaces" ];
-    lispLibs = [ (getAttr "cepl" pkgs) (getAttr "documentation-utils" pkgs) (getAttr "fn" pkgs) (getAttr "rtg-math" pkgs) (getAttr "rtg-math_dot_vari" pkgs) (getAttr "varjo" pkgs) ];
-  };
-  ceramic = {
-    pname = "ceramic";
-    version = "20210807-git";
-    asds = [ "ceramic" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/ceramic/2021-08-07/ceramic-20210807-git.tgz";
-      sha256 = "0hd553gj4cwmli45pfwhqpz7sg6kzn31iv8akaxr5ba3hssa1aap";
-      system = "ceramic";
-      asd = "ceramic";
-    });
-    systems = [ "ceramic" ];
-    lispLibs = [ (getAttr "cl-json" pkgs) (getAttr "clack-handler-hunchentoot" pkgs) (getAttr "copy-directory" pkgs) (getAttr "electron-tools" pkgs) (getAttr "external-program" pkgs) (getAttr "remote-js" pkgs) (getAttr "trivial-build" pkgs) (getAttr "trivial-compress" pkgs) (getAttr "trivial-download" pkgs) (getAttr "trivial-exe" pkgs) (getAttr "trivial-extract" pkgs) (getAttr "uiop" pkgs) (getAttr "uuid" pkgs) ];
-  };
-  ceramic-test-app = {
-    pname = "ceramic-test-app";
-    version = "20210807-git";
-    asds = [ "ceramic-test-app" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/ceramic/2021-08-07/ceramic-20210807-git.tgz";
-      sha256 = "0hd553gj4cwmli45pfwhqpz7sg6kzn31iv8akaxr5ba3hssa1aap";
-      system = "ceramic-test-app";
-      asd = "ceramic-test-app";
-    });
-    systems = [ "ceramic-test-app" ];
-    lispLibs = [ (getAttr "ceramic" pkgs) (getAttr "drakma" pkgs) ];
-  };
-  cerberus = {
-    pname = "cerberus";
-    version = "20221106-git";
-    asds = [ "cerberus" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cerberus/2022-11-06/cerberus-20221106-git.tgz";
-      sha256 = "04yi0wqykx5v8drdw7ln382gxdklv60mg4aqrxg2j5wlsyacs0kb";
-      system = "cerberus";
-      asd = "cerberus";
-    });
-    systems = [ "cerberus" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "babel" pkgs) (getAttr "flexi-streams" pkgs) (getAttr "glass" pkgs) (getAttr "ironclad" pkgs) (getAttr "nibbles" pkgs) (getAttr "usocket" pkgs) ];
-  };
-  cerberus-kdc = {
-    pname = "cerberus-kdc";
-    version = "20221106-git";
-    asds = [ "cerberus-kdc" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cerberus/2022-11-06/cerberus-20221106-git.tgz";
-      sha256 = "04yi0wqykx5v8drdw7ln382gxdklv60mg4aqrxg2j5wlsyacs0kb";
-      system = "cerberus-kdc";
-      asd = "cerberus";
-    });
-    systems = [ "cerberus-kdc" ];
-    lispLibs = [ (getAttr "cerberus" pkgs) (getAttr "frpc" pkgs) (getAttr "pounds" pkgs) ];
-  };
-  cesdi = {
-    pname = "cesdi";
-    version = "1.0.1";
-    asds = [ "cesdi" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cesdi/2020-07-15/cesdi_1.0.1.tgz";
-      sha256 = "02f2pz5rw79ljkkx1ywh8nkpjj4g3z3s1lyvzqb8krbnx11wl0q9";
-      system = "cesdi";
-      asd = "cesdi";
-    });
-    systems = [ "cesdi" ];
-    lispLibs = [ (getAttr "closer-mop" pkgs) ];
-  };
-  cesdi_tests = {
-    pname = "cesdi_tests";
-    version = "1.0.1";
-    asds = [ "cesdi_tests" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cesdi/2020-07-15/cesdi_1.0.1.tgz";
-      sha256 = "02f2pz5rw79ljkkx1ywh8nkpjj4g3z3s1lyvzqb8krbnx11wl0q9";
-      system = "cesdi_tests";
-      asd = "cesdi_tests";
-    });
-    systems = [ "cesdi_tests" ];
-    lispLibs = [ (getAttr "cesdi" pkgs) (getAttr "parachute" pkgs) ];
-  };
-  cffi = {
-    pname = "cffi";
-    version = "20221106-git";
-    asds = [ "cffi" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cffi/2022-11-06/cffi-20221106-git.tgz";
-      sha256 = "0199hzvvsflisp79zv6dpyfkm3d91h8f0ds8mkpijd5li5h17206";
-      system = "cffi";
-      asd = "cffi";
-    });
-    systems = [ "cffi" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "babel" pkgs) (getAttr "trivial-features" pkgs) (getAttr "uiop" pkgs) ];
-  };
-  cffi-c-ref = {
-    pname = "cffi-c-ref";
-    version = "stable-git";
-    asds = [ "cffi-c-ref" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cffi-c-ref/2020-10-16/cffi-c-ref-stable-git.tgz";
-      sha256 = "1a3pp6xcisabqir3rp1gvvjfdxcvpm8yr35p38nri9azsinmmc7z";
-      system = "cffi-c-ref";
-      asd = "cffi-c-ref";
-    });
-    systems = [ "cffi-c-ref" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cffi" pkgs) ];
-  };
-  cffi-c-ref_slash_tests = {
-    pname = "cffi-c-ref_tests";
-    version = "stable-git";
-    asds = [ "cffi-c-ref" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cffi-c-ref/2020-10-16/cffi-c-ref-stable-git.tgz";
-      sha256 = "1a3pp6xcisabqir3rp1gvvjfdxcvpm8yr35p38nri9azsinmmc7z";
-      system = "cffi-c-ref";
-      asd = "cffi-c-ref";
-    });
-    systems = [ "cffi-c-ref/tests" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "bodge-libc-essentials" pkgs) (getAttr "cffi-c-ref" pkgs) (getAttr "fiveam" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  cffi-examples = {
-    pname = "cffi-examples";
-    version = "20221106-git";
-    asds = [ "cffi-examples" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cffi/2022-11-06/cffi-20221106-git.tgz";
-      sha256 = "0199hzvvsflisp79zv6dpyfkm3d91h8f0ds8mkpijd5li5h17206";
-      system = "cffi-examples";
-      asd = "cffi-examples";
-    });
-    systems = [ "cffi-examples" ];
-    lispLibs = [ (getAttr "cffi" pkgs) ];
-  };
-  cffi-grovel = {
-    pname = "cffi-grovel";
-    version = "20221106-git";
-    asds = [ "cffi-grovel" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cffi/2022-11-06/cffi-20221106-git.tgz";
-      sha256 = "0199hzvvsflisp79zv6dpyfkm3d91h8f0ds8mkpijd5li5h17206";
-      system = "cffi-grovel";
-      asd = "cffi-grovel";
-    });
-    systems = [ "cffi-grovel" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cffi" pkgs) (getAttr "cffi-toolchain" pkgs) ];
-  };
-  cffi-libffi = {
-    pname = "cffi-libffi";
-    version = "20221106-git";
-    asds = [ "cffi-libffi" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cffi/2022-11-06/cffi-20221106-git.tgz";
-      sha256 = "0199hzvvsflisp79zv6dpyfkm3d91h8f0ds8mkpijd5li5h17206";
-      system = "cffi-libffi";
-      asd = "cffi-libffi";
-    });
-    systems = [ "cffi-libffi" ];
-    lispLibs = [ (getAttr "cffi" pkgs) (getAttr "cffi-grovel" pkgs) (getAttr "trivial-features" pkgs) ];
-  };
-  cffi-tests = {
-    pname = "cffi-tests";
-    version = "20221106-git";
-    asds = [ "cffi-tests" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cffi/2022-11-06/cffi-20221106-git.tgz";
-      sha256 = "0199hzvvsflisp79zv6dpyfkm3d91h8f0ds8mkpijd5li5h17206";
-      system = "cffi-tests";
-      asd = "cffi-tests";
-    });
-    systems = [ "cffi-tests" ];
-    lispLibs = [ (getAttr "bordeaux-threads" pkgs) (getAttr "cffi-grovel" pkgs) (getAttr "cffi-libffi" pkgs) (getAttr "rt" pkgs) (getAttr "trivial-features" pkgs) ];
-  };
-  cffi-tests_slash_example = {
-    pname = "cffi-tests_example";
-    version = "20221106-git";
-    asds = [ "cffi-tests" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cffi/2022-11-06/cffi-20221106-git.tgz";
-      sha256 = "0199hzvvsflisp79zv6dpyfkm3d91h8f0ds8mkpijd5li5h17206";
-      system = "cffi-tests";
-      asd = "cffi-tests";
-    });
-    systems = [ "cffi-tests/example" ];
-    lispLibs = [ (getAttr "cffi-grovel" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  cffi-toolchain = {
-    pname = "cffi-toolchain";
-    version = "20221106-git";
-    asds = [ "cffi-toolchain" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cffi/2022-11-06/cffi-20221106-git.tgz";
-      sha256 = "0199hzvvsflisp79zv6dpyfkm3d91h8f0ds8mkpijd5li5h17206";
-      system = "cffi-toolchain";
-      asd = "cffi-toolchain";
-    });
-    systems = [ "cffi-toolchain" ];
-    lispLibs = [ (getAttr "cffi" pkgs) ];
-  };
-  cffi-uffi-compat = {
-    pname = "cffi-uffi-compat";
-    version = "20221106-git";
-    asds = [ "cffi-uffi-compat" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cffi/2022-11-06/cffi-20221106-git.tgz";
-      sha256 = "0199hzvvsflisp79zv6dpyfkm3d91h8f0ds8mkpijd5li5h17206";
-      system = "cffi-uffi-compat";
-      asd = "cffi-uffi-compat";
-    });
-    systems = [ "cffi-uffi-compat" ];
-    lispLibs = [ (getAttr "cffi" pkgs) ];
-  };
-  cffi_slash_c2ffi = {
-    pname = "cffi_c2ffi";
-    version = "20221106-git";
-    asds = [ "cffi" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cffi/2022-11-06/cffi-20221106-git.tgz";
-      sha256 = "0199hzvvsflisp79zv6dpyfkm3d91h8f0ds8mkpijd5li5h17206";
-      system = "cffi";
-      asd = "cffi";
-    });
-    systems = [ "cffi/c2ffi" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cffi" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  cffi_slash_c2ffi-generator = {
-    pname = "cffi_c2ffi-generator";
-    version = "20221106-git";
-    asds = [ "cffi" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cffi/2022-11-06/cffi-20221106-git.tgz";
-      sha256 = "0199hzvvsflisp79zv6dpyfkm3d91h8f0ds8mkpijd5li5h17206";
-      system = "cffi";
-      asd = "cffi";
-    });
-    systems = [ "cffi/c2ffi-generator" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cffi" pkgs) (getAttr "cl-json" pkgs) (getAttr "cl-ppcre" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  chain = {
-    pname = "chain";
-    version = "20211209-git";
-    asds = [ "chain" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/chain/2021-12-09/chain-20211209-git.tgz";
-      sha256 = "0x8b2cbp1xq61fpbk0mqwbksnfynlgai3782rafsywka8rgfhmjh";
-      system = "chain";
-      asd = "chain";
-    });
-    systems = [ "chain" ];
-    lispLibs = [ (getAttr "metabang-bind" pkgs) ];
-  };
-  chameleon = {
-    pname = "chameleon";
-    version = "v2.1.1";
-    asds = [ "chameleon" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/chameleon/2022-02-20/chameleon-v2.1.1.tgz";
-      sha256 = "1bqminvhx3hlqzxvy2a105gm9d2dxl5cy6ls5rm9wmkvw7gyza6c";
-      system = "chameleon";
-      asd = "chameleon";
-    });
-    systems = [ "chameleon" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) ];
-  };
-  chameleon_slash_tests = {
-    pname = "chameleon_tests";
-    version = "v2.1.1";
-    asds = [ "chameleon" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/chameleon/2022-02-20/chameleon-v2.1.1.tgz";
-      sha256 = "1bqminvhx3hlqzxvy2a105gm9d2dxl5cy6ls5rm9wmkvw7gyza6c";
-      system = "chameleon";
-      asd = "chameleon";
-    });
-    systems = [ "chameleon/tests" ];
-    lispLibs = [ (getAttr "chameleon" pkgs) (getAttr "fiveam" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  chancery = {
-    pname = "chancery";
-    version = "20201016-hg";
-    asds = [ "chancery" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/chancery/2020-10-16/chancery-20201016-hg.tgz";
-      sha256 = "1g0jgrih7q14gizy481j9z2s15pmv6iwymnpddbyqfja9miv61lw";
-      system = "chancery";
-      asd = "chancery";
-    });
-    systems = [ "chancery" ];
-    lispLibs = [ (getAttr "named-readtables" pkgs) ];
-  };
-  chancery_dot_test = {
-    pname = "chancery.test";
-    version = "20201016-hg";
-    asds = [ "chancery.test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/chancery/2020-10-16/chancery-20201016-hg.tgz";
-      sha256 = "1g0jgrih7q14gizy481j9z2s15pmv6iwymnpddbyqfja9miv61lw";
-      system = "chancery.test";
-      asd = "chancery.test";
-    });
-    systems = [ "chancery.test" ];
-    lispLibs = [ (getAttr "_1am" pkgs) (getAttr "chancery" pkgs) ];
-  };
-  changed-stream = {
-    pname = "changed-stream";
-    version = "20130128-git";
-    asds = [ "changed-stream" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/changed-stream/2013-01-28/changed-stream-20130128-git.tgz";
-      sha256 = "1cll7xclg9jr55swhi3g6z567bxvb9kmljh67091xazcfacz732i";
-      system = "changed-stream";
-      asd = "changed-stream";
-    });
-    systems = [ "changed-stream" ];
-    lispLibs = [  ];
-  };
-  changed-stream_dot_test = {
-    pname = "changed-stream.test";
-    version = "20130128-git";
-    asds = [ "changed-stream.test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/changed-stream/2013-01-28/changed-stream-20130128-git.tgz";
-      sha256 = "1cll7xclg9jr55swhi3g6z567bxvb9kmljh67091xazcfacz732i";
-      system = "changed-stream.test";
-      asd = "changed-stream.test";
-    });
-    systems = [ "changed-stream.test" ];
-    lispLibs = [ (getAttr "changed-stream" pkgs) ];
-  };
-  chanl = {
-    pname = "chanl";
-    version = "20210411-git";
-    asds = [ "chanl" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/chanl/2021-04-11/chanl-20210411-git.tgz";
-      sha256 = "1faljdamw09fp5154i7vhqnipm1awn2q3712ir41j2yh05djhm0y";
-      system = "chanl";
-      asd = "chanl";
-    });
-    systems = [ "chanl" ];
-    lispLibs = [ (getAttr "bordeaux-threads" pkgs) ];
-  };
-  chanl_slash_examples = {
-    pname = "chanl_examples";
-    version = "20210411-git";
-    asds = [ "chanl" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/chanl/2021-04-11/chanl-20210411-git.tgz";
-      sha256 = "1faljdamw09fp5154i7vhqnipm1awn2q3712ir41j2yh05djhm0y";
-      system = "chanl";
-      asd = "chanl";
-    });
-    systems = [ "chanl/examples" ];
-    lispLibs = [ (getAttr "chanl" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  chanl_slash_tests = {
-    pname = "chanl_tests";
-    version = "20210411-git";
-    asds = [ "chanl" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/chanl/2021-04-11/chanl-20210411-git.tgz";
-      sha256 = "1faljdamw09fp5154i7vhqnipm1awn2q3712ir41j2yh05djhm0y";
-      system = "chanl";
-      asd = "chanl";
-    });
-    systems = [ "chanl/tests" ];
-    lispLibs = [ (getAttr "chanl" pkgs) (getAttr "fiveam" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  character-modifier-bits = {
-    pname = "character-modifier-bits";
-    version = "20200427-git";
-    asds = [ "character-modifier-bits" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/sucle/2020-04-27/sucle-20200427-git.tgz";
-      sha256 = "033akkn9zxc6qdgycgxgybx3v23638245xrx29x2cbwnvg3i1q34";
-      system = "character-modifier-bits";
-      asd = "character-modifier-bits";
-    });
-    systems = [ "character-modifier-bits" ];
-    lispLibs = [  ];
-  };
-  cheat-js = {
-    pname = "cheat-js";
-    version = "20121013-git";
-    asds = [ "cheat-js" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cheat-js/2012-10-13/cheat-js-20121013-git.tgz";
-      sha256 = "1h73kx0iii4y4gslz6f8kvf980bnypsras6xj38apm0fcwm93w03";
-      system = "cheat-js";
-      asd = "cheat-js";
-    });
-    systems = [ "cheat-js" ];
-    lispLibs = [ (getAttr "cl-uglify-js" pkgs) (getAttr "fiveam" pkgs) ];
-  };
-  check-bnf = {
-    pname = "check-bnf";
-    version = "20220707-git";
-    asds = [ "check-bnf" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/check-bnf/2022-07-07/check-bnf-20220707-git.tgz";
-      sha256 = "1dpp0xzj51a7fg9yw0xsipnsa54xj1axvkk55n0yxq9yv9ih3rb0";
-      system = "check-bnf";
-      asd = "check-bnf";
-    });
-    systems = [ "check-bnf" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "closer-mop" pkgs) (getAttr "jingoh_dot_documentizer" pkgs) (getAttr "matrix-case" pkgs) (getAttr "millet" pkgs) ];
-  };
-  check-bnf_dot_test = {
-    pname = "check-bnf.test";
-    version = "20220707-git";
-    asds = [ "check-bnf.test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/check-bnf/2022-07-07/check-bnf-20220707-git.tgz";
-      sha256 = "1dpp0xzj51a7fg9yw0xsipnsa54xj1axvkk55n0yxq9yv9ih3rb0";
-      system = "check-bnf.test";
-      asd = "check-bnf.test";
-    });
-    systems = [ "check-bnf.test" ];
-    lispLibs = [ (getAttr "check-bnf" pkgs) (getAttr "jingoh" pkgs) ];
-  };
-  check-it = {
-    pname = "check-it";
-    version = "20150709-git";
-    asds = [ "check-it" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/check-it/2015-07-09/check-it-20150709-git.tgz";
-      sha256 = "1kbjwpniffdpv003igmlz5r0vy65m7wpfnhg54fhwirp1227hgg7";
-      system = "check-it";
-      asd = "check-it";
-    });
-    systems = [ "check-it" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "closer-mop" pkgs) (getAttr "optima" pkgs) ];
-  };
-  check-it-test = {
-    pname = "check-it-test";
-    version = "20150709-git";
-    asds = [ "check-it-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/check-it/2015-07-09/check-it-20150709-git.tgz";
-      sha256 = "1kbjwpniffdpv003igmlz5r0vy65m7wpfnhg54fhwirp1227hgg7";
-      system = "check-it-test";
-      asd = "check-it";
-    });
-    systems = [ "check-it-test" ];
-    lispLibs = [ (getAttr "check-it" pkgs) (getAttr "stefil" pkgs) ];
-  };
-  checkl = {
-    pname = "checkl";
-    version = "20180328-git";
-    asds = [ "checkl" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/checkl/2018-03-28/checkl-20180328-git.tgz";
-      sha256 = "0bpisihx1gay44xmyr1dmhlwh00j0zzi04rp9fy35i95l2r4xdlx";
-      system = "checkl";
-      asd = "checkl";
-    });
-    systems = [ "checkl" ];
-    lispLibs = [ (getAttr "marshal" pkgs) ];
-  };
-  checkl-docs = {
-    pname = "checkl-docs";
-    version = "20180328-git";
-    asds = [ "checkl-docs" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/checkl/2018-03-28/checkl-20180328-git.tgz";
-      sha256 = "0bpisihx1gay44xmyr1dmhlwh00j0zzi04rp9fy35i95l2r4xdlx";
-      system = "checkl-docs";
-      asd = "checkl-docs";
-    });
-    systems = [ "checkl-docs" ];
-    lispLibs = [ (getAttr "checkl" pkgs) (getAttr "cl-gendoc" pkgs) ];
-  };
-  checkl-test = {
-    pname = "checkl-test";
-    version = "20180328-git";
-    asds = [ "checkl-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/checkl/2018-03-28/checkl-20180328-git.tgz";
-      sha256 = "0bpisihx1gay44xmyr1dmhlwh00j0zzi04rp9fy35i95l2r4xdlx";
-      system = "checkl-test";
-      asd = "checkl-test";
-    });
-    systems = [ "checkl-test" ];
-    lispLibs = [ (getAttr "checkl" pkgs) (getAttr "fiveam" pkgs) ];
-  };
-  chemical-compounds = {
-    pname = "chemical-compounds";
-    version = "1.0.2";
-    asds = [ "chemical-compounds" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/chemical-compounds/2011-10-01/chemical-compounds-1.0.2.tgz";
-      sha256 = "047z1lab08y4nsb32rnzqfpb6akyhibzjgmmr1bnwrh9pmhv3s2k";
-      system = "chemical-compounds";
-      asd = "chemical-compounds";
-    });
-    systems = [ "chemical-compounds" ];
-    lispLibs = [ (getAttr "periodic-table" pkgs) ];
-  };
-  chillax = {
-    pname = "chillax";
-    version = "20150302-git";
-    asds = [ "chillax" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/chillax/2015-03-02/chillax-20150302-git.tgz";
-      sha256 = "1is3qm68wyfi3rmpn8mw0x9861951a2w60snsdippikygm3smzr1";
-      system = "chillax";
-      asd = "chillax";
-    });
-    systems = [ "chillax" ];
-    lispLibs = [ (getAttr "chillax_dot_core" pkgs) (getAttr "chillax_dot_yason" pkgs) ];
-  };
-  chillax_dot_core = {
-    pname = "chillax.core";
-    version = "20150302-git";
-    asds = [ "chillax.core" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/chillax/2015-03-02/chillax-20150302-git.tgz";
-      sha256 = "1is3qm68wyfi3rmpn8mw0x9861951a2w60snsdippikygm3smzr1";
-      system = "chillax.core";
-      asd = "chillax.core";
-    });
-    systems = [ "chillax.core" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "drakma" pkgs) (getAttr "flexi-streams" pkgs) ];
-  };
-  chillax_dot_jsown = {
-    pname = "chillax.jsown";
-    version = "20150302-git";
-    asds = [ "chillax.jsown" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/chillax/2015-03-02/chillax-20150302-git.tgz";
-      sha256 = "1is3qm68wyfi3rmpn8mw0x9861951a2w60snsdippikygm3smzr1";
-      system = "chillax.jsown";
-      asd = "chillax.jsown";
-    });
-    systems = [ "chillax.jsown" ];
-    lispLibs = [ (getAttr "chillax_dot_core" pkgs) (getAttr "jsown" pkgs) ];
-  };
-  chillax_dot_view-server = {
-    pname = "chillax.view-server";
-    version = "20150302-git";
-    asds = [ "chillax.view-server" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/chillax/2015-03-02/chillax-20150302-git.tgz";
-      sha256 = "1is3qm68wyfi3rmpn8mw0x9861951a2w60snsdippikygm3smzr1";
-      system = "chillax.view-server";
-      asd = "chillax.view-server";
-    });
-    systems = [ "chillax.view-server" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "yason" pkgs) ];
-  };
-  chillax_dot_yason = {
-    pname = "chillax.yason";
-    version = "20150302-git";
-    asds = [ "chillax.yason" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/chillax/2015-03-02/chillax-20150302-git.tgz";
-      sha256 = "1is3qm68wyfi3rmpn8mw0x9861951a2w60snsdippikygm3smzr1";
-      system = "chillax.yason";
-      asd = "chillax.yason";
-    });
-    systems = [ "chillax.yason" ];
-    lispLibs = [ (getAttr "chillax_dot_core" pkgs) (getAttr "yason" pkgs) ];
-  };
-  chipmunk-blob = {
-    pname = "chipmunk-blob";
-    version = "stable-git";
-    asds = [ "chipmunk-blob" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/chipmunk-blob/2020-10-16/chipmunk-blob-stable-git.tgz";
-      sha256 = "0kdi1al1cn90hzjfnjhkxp3k5ibp6l73k3m04mkpzkzpjy7jc80d";
-      system = "chipmunk-blob";
-      asd = "chipmunk-blob";
-    });
-    systems = [ "chipmunk-blob" ];
-    lispLibs = [ (getAttr "bodge-blobs-support" pkgs) (getAttr "trivial-features" pkgs) ];
-  };
-  chipz = {
-    pname = "chipz";
-    version = "20220220-git";
-    asds = [ "chipz" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/chipz/2022-02-20/chipz-20220220-git.tgz";
-      sha256 = "1n4f22i9j8iapjd6yx1z348rggcybvg9h794kx9libjgz4bs371h";
-      system = "chipz";
-      asd = "chipz";
-    });
-    systems = [ "chipz" ];
-    lispLibs = [  ];
-  };
-  chirp = {
-    pname = "chirp";
-    version = "20211020-git";
-    asds = [ "chirp" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/chirp/2021-10-20/chirp-20211020-git.tgz";
-      sha256 = "0j12qbv6jd7rmk8zmb9pk54406hqk9vn9s83v3fy7amq84kghsvz";
-      system = "chirp";
-      asd = "chirp";
-    });
-    systems = [ "chirp" ];
-    lispLibs = [ (getAttr "chirp-drakma" pkgs) ];
-  };
-  chirp-core = {
-    pname = "chirp-core";
-    version = "20211020-git";
-    asds = [ "chirp-core" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/chirp/2021-10-20/chirp-20211020-git.tgz";
-      sha256 = "0j12qbv6jd7rmk8zmb9pk54406hqk9vn9s83v3fy7amq84kghsvz";
-      system = "chirp-core";
-      asd = "chirp-core";
-    });
-    systems = [ "chirp-core" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "babel" pkgs) (getAttr "cl-base64" pkgs) (getAttr "cl-ppcre" pkgs) (getAttr "flexi-streams" pkgs) (getAttr "ironclad" pkgs) (getAttr "local-time" pkgs) (getAttr "split-sequence" pkgs) (getAttr "uuid" pkgs) (getAttr "yason" pkgs) ];
-  };
-  chirp-dexador = {
-    pname = "chirp-dexador";
-    version = "20211020-git";
-    asds = [ "chirp-dexador" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/chirp/2021-10-20/chirp-20211020-git.tgz";
-      sha256 = "0j12qbv6jd7rmk8zmb9pk54406hqk9vn9s83v3fy7amq84kghsvz";
-      system = "chirp-dexador";
-      asd = "chirp-dexador";
-    });
-    systems = [ "chirp-dexador" ];
-    lispLibs = [ (getAttr "chirp-core" pkgs) (getAttr "dexador" pkgs) ];
-  };
-  chirp-drakma = {
-    pname = "chirp-drakma";
-    version = "20211020-git";
-    asds = [ "chirp-drakma" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/chirp/2021-10-20/chirp-20211020-git.tgz";
-      sha256 = "0j12qbv6jd7rmk8zmb9pk54406hqk9vn9s83v3fy7amq84kghsvz";
-      system = "chirp-drakma";
-      asd = "chirp-drakma";
-    });
-    systems = [ "chirp-drakma" ];
-    lispLibs = [ (getAttr "chirp-core" pkgs) (getAttr "drakma" pkgs) ];
-  };
-  chrome-native-messaging = {
-    pname = "chrome-native-messaging";
-    version = "20150302-git";
-    asds = [ "chrome-native-messaging" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/chrome-native-messaging/2015-03-02/chrome-native-messaging-20150302-git.tgz";
-      sha256 = "1fw02w5brpwa0kl7sx5b13fbcfv1ny8rwcj11ayj2q528i2xmpx5";
-      system = "chrome-native-messaging";
-      asd = "chrome-native-messaging";
-    });
-    systems = [ "chrome-native-messaging" ];
-    lispLibs = [ (getAttr "trivial-utf-8" pkgs) ];
-  };
-  chronicity = {
-    pname = "chronicity";
-    version = "20190202-git";
-    asds = [ "chronicity" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/chronicity/2019-02-02/chronicity-20190202-git.tgz";
-      sha256 = "1h5dlgvccffd8sqszqwilscysklzfcp374zl48rq14ywgv3rnwhl";
-      system = "chronicity";
-      asd = "chronicity";
-    });
-    systems = [ "chronicity" ];
-    lispLibs = [ (getAttr "cl-interpol" pkgs) (getAttr "cl-ppcre" pkgs) (getAttr "local-time" pkgs) ];
-  };
-  chronicity-test = {
-    pname = "chronicity-test";
-    version = "20190202-git";
-    asds = [ "chronicity-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/chronicity/2019-02-02/chronicity-20190202-git.tgz";
-      sha256 = "1h5dlgvccffd8sqszqwilscysklzfcp374zl48rq14ywgv3rnwhl";
-      system = "chronicity-test";
-      asd = "chronicity-test";
-    });
-    systems = [ "chronicity-test" ];
-    lispLibs = [ (getAttr "chronicity" pkgs) (getAttr "lisp-unit" pkgs) ];
-  };
-  chtml-matcher = {
-    pname = "chtml-matcher";
-    version = "20111001-git";
-    asds = [ "chtml-matcher" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/chtml-matcher/2011-10-01/chtml-matcher-20111001-git.tgz";
-      sha256 = "1q1ksy2w0c4dcmq8543scl11x4crh1m5w29p1wjpqhxk826jx7fd";
-      system = "chtml-matcher";
-      asd = "chtml-matcher";
-    });
-    systems = [ "chtml-matcher" ];
-    lispLibs = [ (getAttr "cl-ppcre" pkgs) (getAttr "stdutils" pkgs) (getAttr "closure-html" pkgs) (getAttr "f-underscore" pkgs) ];
-  };
-  chunga = {
-    pname = "chunga";
-    version = "20221106-git";
-    asds = [ "chunga" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/chunga/2022-11-06/chunga-20221106-git.tgz";
-      sha256 = "117qvvfszi4s6zfcxi7mpwx14dpgamir7n124p4whwyam04b0y1b";
-      system = "chunga";
-      asd = "chunga";
-    });
-    systems = [ "chunga" ];
-    lispLibs = [ (getAttr "trivial-gray-streams" pkgs) ];
-  };
-  ci-utils = {
-    pname = "ci-utils";
-    version = "20221106-git";
-    asds = [ "ci-utils" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/ci-utils/2022-11-06/ci-utils-20221106-git.tgz";
-      sha256 = "0srypwhcfwmy6ppv724y0vhm0icninv2zzb2f8h1985zch73cqw3";
-      system = "ci-utils";
-      asd = "ci-utils";
-    });
-    systems = [ "ci-utils" ];
-    lispLibs = [ (getAttr "ci-utils-features" pkgs) ];
-  };
-  ci-utils-features = {
-    pname = "ci-utils-features";
-    version = "20221106-git";
-    asds = [ "ci-utils-features" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/ci-utils/2022-11-06/ci-utils-20221106-git.tgz";
-      sha256 = "0srypwhcfwmy6ppv724y0vhm0icninv2zzb2f8h1985zch73cqw3";
-      system = "ci-utils-features";
-      asd = "ci-utils-features";
-    });
-    systems = [ "ci-utils-features" ];
-    lispLibs = [  ];
-  };
-  ci-utils_slash_coveralls = {
-    pname = "ci-utils_coveralls";
-    version = "20221106-git";
-    asds = [ "ci-utils" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/ci-utils/2022-11-06/ci-utils-20221106-git.tgz";
-      sha256 = "0srypwhcfwmy6ppv724y0vhm0icninv2zzb2f8h1985zch73cqw3";
-      system = "ci-utils";
-      asd = "ci-utils";
-    });
-    systems = [ "ci-utils/coveralls" ];
-    lispLibs = [ (getAttr "ci-utils" pkgs) (getAttr "ci-utils-features" pkgs) (getAttr "split-sequence" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  ci-utils_slash_test = {
-    pname = "ci-utils_test";
-    version = "20221106-git";
-    asds = [ "ci-utils" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/ci-utils/2022-11-06/ci-utils-20221106-git.tgz";
-      sha256 = "0srypwhcfwmy6ppv724y0vhm0icninv2zzb2f8h1985zch73cqw3";
-      system = "ci-utils";
-      asd = "ci-utils";
-    });
-    systems = [ "ci-utils/test" ];
-    lispLibs = [ (getAttr "ci-utils" pkgs) (getAttr "ci-utils-features" pkgs) (getAttr "fiveam" pkgs) (getAttr "split-sequence" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  circular-streams = {
-    pname = "circular-streams";
-    version = "20161204-git";
-    asds = [ "circular-streams" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/circular-streams/2016-12-04/circular-streams-20161204-git.tgz";
-      sha256 = "1wpw6d5cciyqcf92f7mvihak52pd5s47kk4qq6f0r2z2as68p5rs";
-      system = "circular-streams";
-      asd = "circular-streams";
-    });
-    systems = [ "circular-streams" ];
-    lispLibs = [ (getAttr "fast-io" pkgs) (getAttr "trivial-gray-streams" pkgs) ];
-  };
-  circular-streams-test = {
-    pname = "circular-streams-test";
-    version = "20161204-git";
-    asds = [ "circular-streams-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/circular-streams/2016-12-04/circular-streams-20161204-git.tgz";
-      sha256 = "1wpw6d5cciyqcf92f7mvihak52pd5s47kk4qq6f0r2z2as68p5rs";
-      system = "circular-streams-test";
-      asd = "circular-streams-test";
-    });
-    systems = [ "circular-streams-test" ];
-    lispLibs = [ (getAttr "circular-streams" pkgs) (getAttr "flexi-streams" pkgs) (getAttr "cl-test-more" pkgs) ];
-  };
-  city-hash = {
-    pname = "city-hash";
-    version = "20200925-git";
-    asds = [ "city-hash" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/city-hash/2020-09-25/city-hash-20200925-git.tgz";
-      sha256 = "10ksl402aa37sn78hnvlvpqibr66qzpjvf2x4a789gnl411cf44a";
-      system = "city-hash";
-      asd = "city-hash";
-    });
-    systems = [ "city-hash" ];
-    lispLibs = [ (getAttr "com_dot_google_dot_base" pkgs) (getAttr "nibbles" pkgs) (getAttr "swap-bytes" pkgs) ];
-  };
-  city-hash-test = {
-    pname = "city-hash-test";
-    version = "20200925-git";
-    asds = [ "city-hash-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/city-hash/2020-09-25/city-hash-20200925-git.tgz";
-      sha256 = "10ksl402aa37sn78hnvlvpqibr66qzpjvf2x4a789gnl411cf44a";
-      system = "city-hash-test";
-      asd = "city-hash-test";
-    });
-    systems = [ "city-hash-test" ];
-    lispLibs = [ (getAttr "city-hash" pkgs) (getAttr "hu_dot_dwim_dot_stefil" pkgs) ];
-  };
-  ckr-tables = {
-    pname = "ckr-tables";
-    version = "20221106-git";
-    asds = [ "ckr-tables" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/lisp-critic/2022-11-06/lisp-critic-20221106-git.tgz";
-      sha256 = "000vp8jsvpw80by7c7nb5394akfcr6rzzpzw049am67fh5qk89rn";
-      system = "ckr-tables";
-      asd = "ckr-tables";
-    });
-    systems = [ "ckr-tables" ];
-    lispLibs = [  ];
-  };
-  cl_plus_ssl = {
-    pname = "cl+ssl";
-    version = "20221106-git";
-    asds = [ "cl+ssl" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl+ssl/2022-11-06/cl+ssl-20221106-git.tgz";
-      sha256 = "19v19mkkwnbd73aim7az8ciahz7x39k6l3f2acxnpps35kqx2ipq";
-      system = "cl+ssl";
-      asd = "cl+ssl";
-    });
-    systems = [ "cl+ssl" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "bordeaux-threads" pkgs) (getAttr "cffi" pkgs) (getAttr "flexi-streams" pkgs) (getAttr "trivial-features" pkgs) (getAttr "trivial-garbage" pkgs) (getAttr "trivial-gray-streams" pkgs) (getAttr "uiop" pkgs) (getAttr "usocket" pkgs) ];
-  };
-  cl_plus_ssl_dot_test = {
-    pname = "cl+ssl.test";
-    version = "20221106-git";
-    asds = [ "cl+ssl.test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl+ssl/2022-11-06/cl+ssl-20221106-git.tgz";
-      sha256 = "19v19mkkwnbd73aim7az8ciahz7x39k6l3f2acxnpps35kqx2ipq";
-      system = "cl+ssl.test";
-      asd = "cl+ssl.test";
-    });
-    systems = [ "cl+ssl.test" ];
-    lispLibs = [ (getAttr "bordeaux-threads" pkgs) (getAttr "cl_plus_ssl" pkgs) (getAttr "cl-coveralls" pkgs) (getAttr "fiveam" pkgs) (getAttr "trivial-sockets" pkgs) (getAttr "usocket" pkgs) ];
-  };
-  cl_plus_ssl_slash_config = {
-    pname = "cl+ssl_config";
-    version = "20221106-git";
-    asds = [ "cl+ssl" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl+ssl/2022-11-06/cl+ssl-20221106-git.tgz";
-      sha256 = "19v19mkkwnbd73aim7az8ciahz7x39k6l3f2acxnpps35kqx2ipq";
-      system = "cl+ssl";
-      asd = "cl+ssl";
-    });
-    systems = [ "cl+ssl/config" ];
-    lispLibs = [ (getAttr "cffi" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  cl-6502 = {
-    pname = "cl-6502";
-    version = "20211020-git";
-    asds = [ "cl-6502" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-6502/2021-10-20/cl-6502-20211020-git.tgz";
-      sha256 = "1mzdx141ad1rf0di09glyibxbizbmhzd9l3cqd7r3cvrvf5gkj49";
-      system = "cl-6502";
-      asd = "cl-6502";
-    });
-    systems = [ "cl-6502" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cl-ppcre" pkgs) ];
-  };
-  cl-aa = {
-    pname = "cl-aa";
-    version = "20180228-git";
-    asds = [ "cl-aa" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-vectors/2018-02-28/cl-vectors-20180228-git.tgz";
-      sha256 = "0nckw4zb6s96hll8hrxzvgs2an3bfm0pxcywshbm4bq4rn7niqg4";
-      system = "cl-aa";
-      asd = "cl-aa";
-    });
-    systems = [ "cl-aa" ];
-    lispLibs = [  ];
-  };
-  cl-aa-misc = {
-    pname = "cl-aa-misc";
-    version = "20180228-git";
-    asds = [ "cl-aa-misc" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-vectors/2018-02-28/cl-vectors-20180228-git.tgz";
-      sha256 = "0nckw4zb6s96hll8hrxzvgs2an3bfm0pxcywshbm4bq4rn7niqg4";
-      system = "cl-aa-misc";
-      asd = "cl-aa-misc";
-    });
-    systems = [ "cl-aa-misc" ];
-    lispLibs = [  ];
-  };
-  cl-acronyms = {
-    pname = "cl-acronyms";
-    version = "20150302-git";
-    asds = [ "cl-acronyms" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-acronyms/2015-03-02/cl-acronyms-20150302-git.tgz";
-      sha256 = "1b827g6n87i81wbqzvmlq0yn41kfa502v5ssbh2wh1b4xznhn8cc";
-      system = "cl-acronyms";
-      asd = "cl-acronyms";
-    });
-    systems = [ "cl-acronyms" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "split-sequence" pkgs) ];
-  };
-  cl-actors = {
-    pname = "cl-actors";
-    version = "20191130-git";
-    asds = [ "cl-actors" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/common-lisp-actors/2019-11-30/common-lisp-actors-20191130-git.tgz";
-      sha256 = "0snf91yivxq6jcbvm3l6b05lcka7jrzciqd4m841amghfw32clfn";
-      system = "cl-actors";
-      asd = "cl-actors";
-    });
-    systems = [ "cl-actors" ];
-    lispLibs = [ (getAttr "bordeaux-threads" pkgs) ];
-  };
-  cl-advice = {
-    pname = "cl-advice";
-    version = "20220707-git";
-    asds = [ "cl-advice" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-advice/2022-07-07/cl-advice-20220707-git.tgz";
-      sha256 = "1cxfdzlgh5vflc8yb9nv5diz6mg7xsc75897qdv9i562773khzaw";
-      system = "cl-advice";
-      asd = "cl-advice";
-    });
-    systems = [ "cl-advice" ];
-    lispLibs = [ (getAttr "closer-mop" pkgs) ];
-  };
-  cl-advice-tests = {
-    pname = "cl-advice-tests";
-    version = "20220707-git";
-    asds = [ "cl-advice-tests" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-advice/2022-07-07/cl-advice-20220707-git.tgz";
-      sha256 = "1cxfdzlgh5vflc8yb9nv5diz6mg7xsc75897qdv9i562773khzaw";
-      system = "cl-advice-tests";
-      asd = "cl-advice-tests";
-    });
-    systems = [ "cl-advice-tests" ];
-    lispLibs = [ (getAttr "cl-advice" pkgs) (getAttr "fiveam" pkgs) ];
-  };
-  cl-alc = {
-    pname = "cl-alc";
-    version = "20221106-git";
-    asds = [ "cl-alc" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-openal/2022-11-06/cl-openal-20221106-git.tgz";
-      sha256 = "0jmp81mf23ckcm4knnh0q7zpmyls5220imaqbmnl0xvvra10b1zy";
-      system = "cl-alc";
-      asd = "cl-alc";
-    });
-    systems = [ "cl-alc" ];
-    lispLibs = [ (getAttr "cffi" pkgs) (getAttr "cl-openal" pkgs) ];
-  };
-  cl-algebraic-data-type = {
-    pname = "cl-algebraic-data-type";
-    version = "20191007-git";
-    asds = [ "cl-algebraic-data-type" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-algebraic-data-type/2019-10-07/cl-algebraic-data-type-20191007-git.tgz";
-      sha256 = "1lnqxcv8pd5z8n0g5p2l0dbljx9pqiv18hxl0vhsh7ldhkrjv2jx";
-      system = "cl-algebraic-data-type";
-      asd = "cl-algebraic-data-type";
-    });
-    systems = [ "cl-algebraic-data-type" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "global-vars" pkgs) ];
-  };
-  cl-all = {
-    pname = "cl-all";
-    version = "20221106-git";
-    asds = [ "cl-all" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-all/2022-11-06/cl-all-20221106-git.tgz";
-      sha256 = "0rvl5zhza5fz91spk308glsnh50waz0iri8brl1ij74bb30rwlgc";
-      system = "cl-all";
-      asd = "cl-all";
-    });
-    systems = [ "cl-all" ];
-    lispLibs = [  ];
-  };
-  cl-alut = {
-    pname = "cl-alut";
-    version = "20221106-git";
-    asds = [ "cl-alut" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-openal/2022-11-06/cl-openal-20221106-git.tgz";
-      sha256 = "0jmp81mf23ckcm4knnh0q7zpmyls5220imaqbmnl0xvvra10b1zy";
-      system = "cl-alut";
-      asd = "cl-alut";
-    });
-    systems = [ "cl-alut" ];
-    lispLibs = [ (getAttr "cffi" pkgs) (getAttr "cl-openal" pkgs) ];
-  };
-  cl-amqp = {
-    pname = "cl-amqp";
-    version = "v0.4.1";
-    asds = [ "cl-amqp" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-amqp/2019-10-08/cl-amqp-v0.4.1.tgz";
-      sha256 = "1ggd77ckfr54z7z5yi8d04k310x2dhf53qija8dzjhk1r9py20vz";
-      system = "cl-amqp";
-      asd = "cl-amqp";
-    });
-    systems = [ "cl-amqp" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cl-interpol" pkgs) (getAttr "collectors" pkgs) (getAttr "fast-io" pkgs) (getAttr "local-time" pkgs) (getAttr "log4cl" pkgs) (getAttr "nibbles" pkgs) (getAttr "trivial-utf-8" pkgs) (getAttr "wu-decimal" pkgs) ];
-  };
-  cl-amqp_dot_test = {
-    pname = "cl-amqp.test";
-    version = "v0.4.1";
-    asds = [ "cl-amqp.test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-amqp/2019-10-08/cl-amqp-v0.4.1.tgz";
-      sha256 = "1ggd77ckfr54z7z5yi8d04k310x2dhf53qija8dzjhk1r9py20vz";
-      system = "cl-amqp.test";
-      asd = "cl-amqp.test";
-    });
-    systems = [ "cl-amqp.test" ];
-    lispLibs = [ (getAttr "cl-amqp" pkgs) (getAttr "cl-interpol" pkgs) (getAttr "log4cl" pkgs) (getAttr "mw-equiv" pkgs) (getAttr "prove" pkgs) (getAttr "prove-asdf" pkgs) ];
-  };
-  cl-ana = {
-    pname = "cl-ana";
-    version = "20220707-git";
-    asds = [ "cl-ana" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-ana/2022-07-07/cl-ana-20220707-git.tgz";
-      sha256 = "1dg8wkc2bv66lykr2fjgn91jw7aa9xnpk20h0g8pp2xr6981gfl9";
-      system = "cl-ana";
-      asd = "cl-ana";
-    });
-    systems = [ "cl-ana" ];
-    lispLibs = [ (getAttr "cl-ana_dot_array-utils" pkgs) (getAttr "cl-ana_dot_binary-tree" pkgs) (getAttr "cl-ana_dot_calculus" pkgs) (getAttr "cl-ana_dot_clos-utils" pkgs) (getAttr "cl-ana_dot_columnar-table" pkgs) (getAttr "cl-ana_dot_csv-table" pkgs) (getAttr "cl-ana_dot_error-propogation" pkgs) (getAttr "cl-ana_dot_file-utils" pkgs) (getAttr "cl-ana_dot_fitting" pkgs) (getAttr "cl-ana_dot_generic-math" pkgs) (getAttr "cl-ana_dot_hash-table-utils" pkgs) (getAttr "cl-ana_dot_hdf-table" pkgs) (getAttr "cl-ana_dot_histogram" pkgs) (getAttr "cl-ana_dot_int-char" pkgs) (getAttr "cl-ana_dot_linear-algebra" pkgs) (getAttr "cl-ana_dot_list-utils" pkgs) (getAttr "cl-ana_dot_lorentz" pkgs) (getAttr "cl-ana_dot_makeres" pkgs) (getAttr "cl-ana_dot_makeres-block" pkgs) (getAttr "cl-ana_dot_makeres-branch" pkgs) (getAttr "cl-ana_dot_makeres-graphviz" pkgs) (getAttr "cl-ana_dot_makeres-macro" pkgs) (getAttr "cl-ana_dot_makeres-progress" pkgs) (getAttr "cl-ana_dot_makeres-table" pkgs) (getAttr "cl-ana_dot_makeres-utils" pkgs) (getAttr "cl-ana_dot_map" pkgs) (getAttr "cl-ana_dot_math-functions" pkgs) (getAttr "cl-ana_dot_ntuple-table" pkgs) (getAttr "cl-ana_dot_package-utils" pkgs) (getAttr "cl-ana_dot_pathname-utils" pkgs) (getAttr "cl-ana_dot_plotting" pkgs) (getAttr "cl-ana_dot_quantity" pkgs) (getAttr "cl-ana_dot_reusable-table" pkgs) (getAttr "cl-ana_dot_serialization" pkgs) (getAttr "cl-ana_dot_spline" pkgs) (getAttr "cl-ana_dot_statistical-learning" pkgs) (getAttr "cl-ana_dot_statistics" pkgs) (getAttr "cl-ana_dot_table" pkgs) (getAttr "cl-ana_dot_table-utils" pkgs) (getAttr "cl-ana_dot_table-viewing" pkgs) (getAttr "cl-ana_dot_tensor" pkgs) ];
-  };
-  cl-ana_dot_array-utils = {
-    pname = "cl-ana.array-utils";
-    version = "20220707-git";
-    asds = [ "cl-ana.array-utils" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-ana/2022-07-07/cl-ana-20220707-git.tgz";
-      sha256 = "1dg8wkc2bv66lykr2fjgn91jw7aa9xnpk20h0g8pp2xr6981gfl9";
-      system = "cl-ana.array-utils";
-      asd = "cl-ana.array-utils";
-    });
-    systems = [ "cl-ana.array-utils" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) ];
-  };
-  cl-ana_dot_binary-tree = {
-    pname = "cl-ana.binary-tree";
-    version = "20220707-git";
-    asds = [ "cl-ana.binary-tree" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-ana/2022-07-07/cl-ana-20220707-git.tgz";
-      sha256 = "1dg8wkc2bv66lykr2fjgn91jw7aa9xnpk20h0g8pp2xr6981gfl9";
-      system = "cl-ana.binary-tree";
-      asd = "cl-ana.binary-tree";
-    });
-    systems = [ "cl-ana.binary-tree" ];
-    lispLibs = [ (getAttr "cl-ana_dot_functional-utils" pkgs) (getAttr "cl-ana_dot_list-utils" pkgs) (getAttr "cl-ana_dot_macro-utils" pkgs) ];
-  };
-  cl-ana_dot_calculus = {
-    pname = "cl-ana.calculus";
-    version = "20220707-git";
-    asds = [ "cl-ana.calculus" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-ana/2022-07-07/cl-ana-20220707-git.tgz";
-      sha256 = "1dg8wkc2bv66lykr2fjgn91jw7aa9xnpk20h0g8pp2xr6981gfl9";
-      system = "cl-ana.calculus";
-      asd = "cl-ana.calculus";
-    });
-    systems = [ "cl-ana.calculus" ];
-    lispLibs = [ (getAttr "cl-ana_dot_generic-math" pkgs) (getAttr "cl-ana_dot_linear-algebra" pkgs) ];
-  };
-  cl-ana_dot_clos-utils = {
-    pname = "cl-ana.clos-utils";
-    version = "20220707-git";
-    asds = [ "cl-ana.clos-utils" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-ana/2022-07-07/cl-ana-20220707-git.tgz";
-      sha256 = "1dg8wkc2bv66lykr2fjgn91jw7aa9xnpk20h0g8pp2xr6981gfl9";
-      system = "cl-ana.clos-utils";
-      asd = "cl-ana.clos-utils";
-    });
-    systems = [ "cl-ana.clos-utils" ];
-    lispLibs = [ (getAttr "cl-ana_dot_list-utils" pkgs) (getAttr "cl-ana_dot_symbol-utils" pkgs) (getAttr "cl-ana_dot_tensor" pkgs) (getAttr "closer-mop" pkgs) ];
-  };
-  cl-ana_dot_columnar-table = {
-    pname = "cl-ana.columnar-table";
-    version = "20220707-git";
-    asds = [ "cl-ana.columnar-table" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-ana/2022-07-07/cl-ana-20220707-git.tgz";
-      sha256 = "1dg8wkc2bv66lykr2fjgn91jw7aa9xnpk20h0g8pp2xr6981gfl9";
-      system = "cl-ana.columnar-table";
-      asd = "cl-ana.columnar-table";
-    });
-    systems = [ "cl-ana.columnar-table" ];
-    lispLibs = [ (getAttr "cl-ana_dot_reusable-table" pkgs) (getAttr "cl-ana_dot_table" pkgs) ];
-  };
-  cl-ana_dot_csv-table = {
-    pname = "cl-ana.csv-table";
-    version = "20220707-git";
-    asds = [ "cl-ana.csv-table" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-ana/2022-07-07/cl-ana-20220707-git.tgz";
-      sha256 = "1dg8wkc2bv66lykr2fjgn91jw7aa9xnpk20h0g8pp2xr6981gfl9";
-      system = "cl-ana.csv-table";
-      asd = "cl-ana.csv-table";
-    });
-    systems = [ "cl-ana.csv-table" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "antik" pkgs) (getAttr "cl-ana_dot_list-utils" pkgs) (getAttr "cl-ana_dot_table" pkgs) (getAttr "cl-csv" pkgs) (getAttr "iterate" pkgs) ];
-  };
-  cl-ana_dot_error-propogation = {
-    pname = "cl-ana.error-propogation";
-    version = "20220707-git";
-    asds = [ "cl-ana.error-propogation" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-ana/2022-07-07/cl-ana-20220707-git.tgz";
-      sha256 = "1dg8wkc2bv66lykr2fjgn91jw7aa9xnpk20h0g8pp2xr6981gfl9";
-      system = "cl-ana.error-propogation";
-      asd = "cl-ana.error-propogation";
-    });
-    systems = [ "cl-ana.error-propogation" ];
-    lispLibs = [ (getAttr "cl-ana_dot_generic-math" pkgs) (getAttr "cl-ana_dot_math-functions" pkgs) ];
-  };
-  cl-ana_dot_file-utils = {
-    pname = "cl-ana.file-utils";
-    version = "20220707-git";
-    asds = [ "cl-ana.file-utils" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-ana/2022-07-07/cl-ana-20220707-git.tgz";
-      sha256 = "1dg8wkc2bv66lykr2fjgn91jw7aa9xnpk20h0g8pp2xr6981gfl9";
-      system = "cl-ana.file-utils";
-      asd = "cl-ana.file-utils";
-    });
-    systems = [ "cl-ana.file-utils" ];
-    lispLibs = [ (getAttr "external-program" pkgs) (getAttr "split-sequence" pkgs) ];
-  };
-  cl-ana_dot_fitting = {
-    pname = "cl-ana.fitting";
-    version = "20220707-git";
-    asds = [ "cl-ana.fitting" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-ana/2022-07-07/cl-ana-20220707-git.tgz";
-      sha256 = "1dg8wkc2bv66lykr2fjgn91jw7aa9xnpk20h0g8pp2xr6981gfl9";
-      system = "cl-ana.fitting";
-      asd = "cl-ana.fitting";
-    });
-    systems = [ "cl-ana.fitting" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cl-ana_dot_error-propogation" pkgs) (getAttr "cl-ana_dot_generic-math" pkgs) (getAttr "cl-ana_dot_map" pkgs) (getAttr "cl-ana_dot_math-functions" pkgs) (getAttr "gsll" pkgs) ];
-  };
-  cl-ana_dot_functional-utils = {
-    pname = "cl-ana.functional-utils";
-    version = "20220707-git";
-    asds = [ "cl-ana.functional-utils" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-ana/2022-07-07/cl-ana-20220707-git.tgz";
-      sha256 = "1dg8wkc2bv66lykr2fjgn91jw7aa9xnpk20h0g8pp2xr6981gfl9";
-      system = "cl-ana.functional-utils";
-      asd = "cl-ana.functional-utils";
-    });
-    systems = [ "cl-ana.functional-utils" ];
-    lispLibs = [  ];
-  };
-  cl-ana_dot_generic-math = {
-    pname = "cl-ana.generic-math";
-    version = "20220707-git";
-    asds = [ "cl-ana.generic-math" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-ana/2022-07-07/cl-ana-20220707-git.tgz";
-      sha256 = "1dg8wkc2bv66lykr2fjgn91jw7aa9xnpk20h0g8pp2xr6981gfl9";
-      system = "cl-ana.generic-math";
-      asd = "cl-ana.generic-math";
-    });
-    systems = [ "cl-ana.generic-math" ];
-    lispLibs = [ (getAttr "cl-ana_dot_list-utils" pkgs) (getAttr "cl-ana_dot_package-utils" pkgs) ];
-  };
-  cl-ana_dot_gnuplot-interface = {
-    pname = "cl-ana.gnuplot-interface";
-    version = "20220707-git";
-    asds = [ "cl-ana.gnuplot-interface" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-ana/2022-07-07/cl-ana-20220707-git.tgz";
-      sha256 = "1dg8wkc2bv66lykr2fjgn91jw7aa9xnpk20h0g8pp2xr6981gfl9";
-      system = "cl-ana.gnuplot-interface";
-      asd = "cl-ana.gnuplot-interface";
-    });
-    systems = [ "cl-ana.gnuplot-interface" ];
-    lispLibs = [ (getAttr "external-program" pkgs) ];
-  };
-  cl-ana_dot_gsl-cffi = {
-    pname = "cl-ana.gsl-cffi";
-    version = "20220707-git";
-    asds = [ "cl-ana.gsl-cffi" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-ana/2022-07-07/cl-ana-20220707-git.tgz";
-      sha256 = "1dg8wkc2bv66lykr2fjgn91jw7aa9xnpk20h0g8pp2xr6981gfl9";
-      system = "cl-ana.gsl-cffi";
-      asd = "cl-ana.gsl-cffi";
-    });
-    systems = [ "cl-ana.gsl-cffi" ];
-    lispLibs = [ (getAttr "cffi" pkgs) ];
-  };
-  cl-ana_dot_hash-table-utils = {
-    pname = "cl-ana.hash-table-utils";
-    version = "20220707-git";
-    asds = [ "cl-ana.hash-table-utils" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-ana/2022-07-07/cl-ana-20220707-git.tgz";
-      sha256 = "1dg8wkc2bv66lykr2fjgn91jw7aa9xnpk20h0g8pp2xr6981gfl9";
-      system = "cl-ana.hash-table-utils";
-      asd = "cl-ana.hash-table-utils";
-    });
-    systems = [ "cl-ana.hash-table-utils" ];
-    lispLibs = [  ];
-  };
-  cl-ana_dot_hdf-cffi = {
-    pname = "cl-ana.hdf-cffi";
-    version = "20220707-git";
-    asds = [ "cl-ana.hdf-cffi" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-ana/2022-07-07/cl-ana-20220707-git.tgz";
-      sha256 = "1dg8wkc2bv66lykr2fjgn91jw7aa9xnpk20h0g8pp2xr6981gfl9";
-      system = "cl-ana.hdf-cffi";
-      asd = "cl-ana.hdf-cffi";
-    });
-    systems = [ "cl-ana.hdf-cffi" ];
-    lispLibs = [ (getAttr "cffi" pkgs) (getAttr "cffi-grovel" pkgs) ];
-  };
-  cl-ana_dot_hdf-table = {
-    pname = "cl-ana.hdf-table";
-    version = "20220707-git";
-    asds = [ "cl-ana.hdf-table" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-ana/2022-07-07/cl-ana-20220707-git.tgz";
-      sha256 = "1dg8wkc2bv66lykr2fjgn91jw7aa9xnpk20h0g8pp2xr6981gfl9";
-      system = "cl-ana.hdf-table";
-      asd = "cl-ana.hdf-table";
-    });
-    systems = [ "cl-ana.hdf-table" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cl-ana_dot_binary-tree" pkgs) (getAttr "cl-ana_dot_hdf-typespec" pkgs) (getAttr "cl-ana_dot_hdf-utils" pkgs) (getAttr "cl-ana_dot_list-utils" pkgs) (getAttr "cl-ana_dot_memoization" pkgs) (getAttr "cl-ana_dot_table" pkgs) (getAttr "cl-ana_dot_typed-table" pkgs) (getAttr "cl-ana_dot_typespec" pkgs) ];
-  };
-  cl-ana_dot_hdf-typespec = {
-    pname = "cl-ana.hdf-typespec";
-    version = "20220707-git";
-    asds = [ "cl-ana.hdf-typespec" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-ana/2022-07-07/cl-ana-20220707-git.tgz";
-      sha256 = "1dg8wkc2bv66lykr2fjgn91jw7aa9xnpk20h0g8pp2xr6981gfl9";
-      system = "cl-ana.hdf-typespec";
-      asd = "cl-ana.hdf-typespec";
-    });
-    systems = [ "cl-ana.hdf-typespec" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cffi" pkgs) (getAttr "cl-ana_dot_hdf-cffi" pkgs) (getAttr "cl-ana_dot_list-utils" pkgs) (getAttr "cl-ana_dot_memoization" pkgs) (getAttr "cl-ana_dot_string-utils" pkgs) (getAttr "cl-ana_dot_symbol-utils" pkgs) (getAttr "cl-ana_dot_typespec" pkgs) ];
-  };
-  cl-ana_dot_hdf-utils = {
-    pname = "cl-ana.hdf-utils";
-    version = "20220707-git";
-    asds = [ "cl-ana.hdf-utils" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-ana/2022-07-07/cl-ana-20220707-git.tgz";
-      sha256 = "1dg8wkc2bv66lykr2fjgn91jw7aa9xnpk20h0g8pp2xr6981gfl9";
-      system = "cl-ana.hdf-utils";
-      asd = "cl-ana.hdf-utils";
-    });
-    systems = [ "cl-ana.hdf-utils" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cffi" pkgs) (getAttr "cl-ana_dot_hdf-cffi" pkgs) (getAttr "cl-ana_dot_hdf-typespec" pkgs) (getAttr "cl-ana_dot_macro-utils" pkgs) (getAttr "cl-ana_dot_memoization" pkgs) (getAttr "cl-ana_dot_pathname-utils" pkgs) (getAttr "cl-ana_dot_string-utils" pkgs) (getAttr "cl-ana_dot_typespec" pkgs) ];
-  };
-  cl-ana_dot_histogram = {
-    pname = "cl-ana.histogram";
-    version = "20220707-git";
-    asds = [ "cl-ana.histogram" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-ana/2022-07-07/cl-ana-20220707-git.tgz";
-      sha256 = "1dg8wkc2bv66lykr2fjgn91jw7aa9xnpk20h0g8pp2xr6981gfl9";
-      system = "cl-ana.histogram";
-      asd = "cl-ana.histogram";
-    });
-    systems = [ "cl-ana.histogram" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cl-ana_dot_binary-tree" pkgs) (getAttr "cl-ana_dot_clos-utils" pkgs) (getAttr "cl-ana_dot_fitting" pkgs) (getAttr "cl-ana_dot_functional-utils" pkgs) (getAttr "cl-ana_dot_generic-math" pkgs) (getAttr "cl-ana_dot_hash-table-utils" pkgs) (getAttr "cl-ana_dot_list-utils" pkgs) (getAttr "cl-ana_dot_macro-utils" pkgs) (getAttr "cl-ana_dot_map" pkgs) (getAttr "cl-ana_dot_symbol-utils" pkgs) (getAttr "cl-ana_dot_tensor" pkgs) (getAttr "iterate" pkgs) ];
-  };
-  cl-ana_dot_int-char = {
-    pname = "cl-ana.int-char";
-    version = "20220707-git";
-    asds = [ "cl-ana.int-char" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-ana/2022-07-07/cl-ana-20220707-git.tgz";
-      sha256 = "1dg8wkc2bv66lykr2fjgn91jw7aa9xnpk20h0g8pp2xr6981gfl9";
-      system = "cl-ana.int-char";
-      asd = "cl-ana.int-char";
-    });
-    systems = [ "cl-ana.int-char" ];
-    lispLibs = [  ];
-  };
-  cl-ana_dot_linear-algebra = {
-    pname = "cl-ana.linear-algebra";
-    version = "20220707-git";
-    asds = [ "cl-ana.linear-algebra" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-ana/2022-07-07/cl-ana-20220707-git.tgz";
-      sha256 = "1dg8wkc2bv66lykr2fjgn91jw7aa9xnpk20h0g8pp2xr6981gfl9";
-      system = "cl-ana.linear-algebra";
-      asd = "cl-ana.linear-algebra";
-    });
-    systems = [ "cl-ana.linear-algebra" ];
-    lispLibs = [ (getAttr "cl-ana_dot_generic-math" pkgs) (getAttr "cl-ana_dot_list-utils" pkgs) (getAttr "cl-ana_dot_math-functions" pkgs) (getAttr "cl-ana_dot_tensor" pkgs) (getAttr "gsll" pkgs) ];
-  };
-  cl-ana_dot_list-utils = {
-    pname = "cl-ana.list-utils";
-    version = "20220707-git";
-    asds = [ "cl-ana.list-utils" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-ana/2022-07-07/cl-ana-20220707-git.tgz";
-      sha256 = "1dg8wkc2bv66lykr2fjgn91jw7aa9xnpk20h0g8pp2xr6981gfl9";
-      system = "cl-ana.list-utils";
-      asd = "cl-ana.list-utils";
-    });
-    systems = [ "cl-ana.list-utils" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cl-ana_dot_functional-utils" pkgs) (getAttr "cl-ana_dot_string-utils" pkgs) ];
-  };
-  cl-ana_dot_lorentz = {
-    pname = "cl-ana.lorentz";
-    version = "20220707-git";
-    asds = [ "cl-ana.lorentz" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-ana/2022-07-07/cl-ana-20220707-git.tgz";
-      sha256 = "1dg8wkc2bv66lykr2fjgn91jw7aa9xnpk20h0g8pp2xr6981gfl9";
-      system = "cl-ana.lorentz";
-      asd = "cl-ana.lorentz";
-    });
-    systems = [ "cl-ana.lorentz" ];
-    lispLibs = [ (getAttr "cl-ana_dot_generic-math" pkgs) (getAttr "cl-ana_dot_linear-algebra" pkgs) (getAttr "cl-ana_dot_tensor" pkgs) (getAttr "iterate" pkgs) ];
-  };
-  cl-ana_dot_macro-utils = {
-    pname = "cl-ana.macro-utils";
-    version = "20220707-git";
-    asds = [ "cl-ana.macro-utils" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-ana/2022-07-07/cl-ana-20220707-git.tgz";
-      sha256 = "1dg8wkc2bv66lykr2fjgn91jw7aa9xnpk20h0g8pp2xr6981gfl9";
-      system = "cl-ana.macro-utils";
-      asd = "cl-ana.macro-utils";
-    });
-    systems = [ "cl-ana.macro-utils" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cl-ana_dot_list-utils" pkgs) (getAttr "cl-ana_dot_string-utils" pkgs) (getAttr "cl-ana_dot_symbol-utils" pkgs) (getAttr "split-sequence" pkgs) ];
-  };
-  cl-ana_dot_makeres = {
-    pname = "cl-ana.makeres";
-    version = "20220707-git";
-    asds = [ "cl-ana.makeres" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-ana/2022-07-07/cl-ana-20220707-git.tgz";
-      sha256 = "1dg8wkc2bv66lykr2fjgn91jw7aa9xnpk20h0g8pp2xr6981gfl9";
-      system = "cl-ana.makeres";
-      asd = "cl-ana.makeres";
-    });
-    systems = [ "cl-ana.makeres" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cl-ana_dot_error-propogation" pkgs) (getAttr "cl-ana_dot_file-utils" pkgs) (getAttr "cl-ana_dot_functional-utils" pkgs) (getAttr "cl-ana_dot_generic-math" pkgs) (getAttr "cl-ana_dot_hash-table-utils" pkgs) (getAttr "cl-ana_dot_hdf-utils" pkgs) (getAttr "cl-ana_dot_histogram" pkgs) (getAttr "cl-ana_dot_list-utils" pkgs) (getAttr "cl-ana_dot_macro-utils" pkgs) (getAttr "cl-ana_dot_map" pkgs) (getAttr "cl-ana_dot_memoization" pkgs) (getAttr "cl-ana_dot_pathname-utils" pkgs) (getAttr "cl-ana_dot_plotting" pkgs) (getAttr "cl-ana_dot_reusable-table" pkgs) (getAttr "cl-ana_dot_serialization" pkgs) (getAttr "cl-ana_dot_string-utils" pkgs) (getAttr "cl-ana_dot_symbol-utils" pkgs) (getAttr "cl-ana_dot_table" pkgs) (getAttr "cl-fad" pkgs) (getAttr "external-program" pkgs) (getAttr "uiop" pkgs) ];
-  };
-  cl-ana_dot_makeres-block = {
-    pname = "cl-ana.makeres-block";
-    version = "20220707-git";
-    asds = [ "cl-ana.makeres-block" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-ana/2022-07-07/cl-ana-20220707-git.tgz";
-      sha256 = "1dg8wkc2bv66lykr2fjgn91jw7aa9xnpk20h0g8pp2xr6981gfl9";
-      system = "cl-ana.makeres-block";
-      asd = "cl-ana.makeres-block";
-    });
-    systems = [ "cl-ana.makeres-block" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cl-ana_dot_list-utils" pkgs) (getAttr "cl-ana_dot_macro-utils" pkgs) (getAttr "cl-ana_dot_makeres" pkgs) ];
-  };
-  cl-ana_dot_makeres-branch = {
-    pname = "cl-ana.makeres-branch";
-    version = "20220707-git";
-    asds = [ "cl-ana.makeres-branch" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-ana/2022-07-07/cl-ana-20220707-git.tgz";
-      sha256 = "1dg8wkc2bv66lykr2fjgn91jw7aa9xnpk20h0g8pp2xr6981gfl9";
-      system = "cl-ana.makeres-branch";
-      asd = "cl-ana.makeres-branch";
-    });
-    systems = [ "cl-ana.makeres-branch" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cl-ana_dot_generic-math" pkgs) (getAttr "cl-ana_dot_hash-table-utils" pkgs) (getAttr "cl-ana_dot_list-utils" pkgs) (getAttr "cl-ana_dot_makeres" pkgs) (getAttr "cl-ana_dot_map" pkgs) ];
-  };
-  cl-ana_dot_makeres-graphviz = {
-    pname = "cl-ana.makeres-graphviz";
-    version = "20220707-git";
-    asds = [ "cl-ana.makeres-graphviz" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-ana/2022-07-07/cl-ana-20220707-git.tgz";
-      sha256 = "1dg8wkc2bv66lykr2fjgn91jw7aa9xnpk20h0g8pp2xr6981gfl9";
-      system = "cl-ana.makeres-graphviz";
-      asd = "cl-ana.makeres-graphviz";
-    });
-    systems = [ "cl-ana.makeres-graphviz" ];
-    lispLibs = [ (getAttr "cl-ana_dot_makeres" pkgs) (getAttr "external-program" pkgs) ];
-  };
-  cl-ana_dot_makeres-macro = {
-    pname = "cl-ana.makeres-macro";
-    version = "20220707-git";
-    asds = [ "cl-ana.makeres-macro" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-ana/2022-07-07/cl-ana-20220707-git.tgz";
-      sha256 = "1dg8wkc2bv66lykr2fjgn91jw7aa9xnpk20h0g8pp2xr6981gfl9";
-      system = "cl-ana.makeres-macro";
-      asd = "cl-ana.makeres-macro";
-    });
-    systems = [ "cl-ana.makeres-macro" ];
-    lispLibs = [ (getAttr "cl-ana_dot_list-utils" pkgs) (getAttr "cl-ana_dot_makeres" pkgs) ];
-  };
-  cl-ana_dot_makeres-progress = {
-    pname = "cl-ana.makeres-progress";
-    version = "20220707-git";
-    asds = [ "cl-ana.makeres-progress" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-ana/2022-07-07/cl-ana-20220707-git.tgz";
-      sha256 = "1dg8wkc2bv66lykr2fjgn91jw7aa9xnpk20h0g8pp2xr6981gfl9";
-      system = "cl-ana.makeres-progress";
-      asd = "cl-ana.makeres-progress";
-    });
-    systems = [ "cl-ana.makeres-progress" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cl-ana_dot_generic-math" pkgs) (getAttr "cl-ana_dot_makeres" pkgs) ];
-  };
-  cl-ana_dot_makeres-table = {
-    pname = "cl-ana.makeres-table";
-    version = "20220707-git";
-    asds = [ "cl-ana.makeres-table" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-ana/2022-07-07/cl-ana-20220707-git.tgz";
-      sha256 = "1dg8wkc2bv66lykr2fjgn91jw7aa9xnpk20h0g8pp2xr6981gfl9";
-      system = "cl-ana.makeres-table";
-      asd = "cl-ana.makeres-table";
-    });
-    systems = [ "cl-ana.makeres-table" ];
-    lispLibs = [ (getAttr "cl-ana_dot_csv-table" pkgs) (getAttr "cl-ana_dot_hash-table-utils" pkgs) (getAttr "cl-ana_dot_hdf-table" pkgs) (getAttr "cl-ana_dot_hdf-utils" pkgs) (getAttr "cl-ana_dot_list-utils" pkgs) (getAttr "cl-ana_dot_macro-utils" pkgs) (getAttr "cl-ana_dot_makeres" pkgs) (getAttr "cl-ana_dot_makeres-macro" pkgs) (getAttr "cl-ana_dot_memoization" pkgs) (getAttr "cl-ana_dot_ntuple-table" pkgs) (getAttr "cl-ana_dot_reusable-table" pkgs) (getAttr "cl-ana_dot_string-utils" pkgs) (getAttr "cl-ana_dot_table" pkgs) ];
-  };
-  cl-ana_dot_makeres-utils = {
-    pname = "cl-ana.makeres-utils";
-    version = "20220707-git";
-    asds = [ "cl-ana.makeres-utils" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-ana/2022-07-07/cl-ana-20220707-git.tgz";
-      sha256 = "1dg8wkc2bv66lykr2fjgn91jw7aa9xnpk20h0g8pp2xr6981gfl9";
-      system = "cl-ana.makeres-utils";
-      asd = "cl-ana.makeres-utils";
-    });
-    systems = [ "cl-ana.makeres-utils" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cl-ana_dot_file-utils" pkgs) (getAttr "cl-ana_dot_fitting" pkgs) (getAttr "cl-ana_dot_functional-utils" pkgs) (getAttr "cl-ana_dot_generic-math" pkgs) (getAttr "cl-ana_dot_histogram" pkgs) (getAttr "cl-ana_dot_list-utils" pkgs) (getAttr "cl-ana_dot_macro-utils" pkgs) (getAttr "cl-ana_dot_makeres" pkgs) (getAttr "cl-ana_dot_map" pkgs) (getAttr "cl-ana_dot_pathname-utils" pkgs) (getAttr "cl-ana_dot_plotting" pkgs) (getAttr "cl-ana_dot_reusable-table" pkgs) (getAttr "cl-ana_dot_string-utils" pkgs) (getAttr "cl-ana_dot_symbol-utils" pkgs) (getAttr "cl-ana_dot_table" pkgs) ];
-  };
-  cl-ana_dot_map = {
-    pname = "cl-ana.map";
-    version = "20220707-git";
-    asds = [ "cl-ana.map" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-ana/2022-07-07/cl-ana-20220707-git.tgz";
-      sha256 = "1dg8wkc2bv66lykr2fjgn91jw7aa9xnpk20h0g8pp2xr6981gfl9";
-      system = "cl-ana.map";
-      asd = "cl-ana.map";
-    });
-    systems = [ "cl-ana.map" ];
-    lispLibs = [ (getAttr "cl-ana_dot_hash-table-utils" pkgs) ];
-  };
-  cl-ana_dot_math-functions = {
-    pname = "cl-ana.math-functions";
-    version = "20220707-git";
-    asds = [ "cl-ana.math-functions" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-ana/2022-07-07/cl-ana-20220707-git.tgz";
-      sha256 = "1dg8wkc2bv66lykr2fjgn91jw7aa9xnpk20h0g8pp2xr6981gfl9";
-      system = "cl-ana.math-functions";
-      asd = "cl-ana.math-functions";
-    });
-    systems = [ "cl-ana.math-functions" ];
-    lispLibs = [ (getAttr "cl-ana_dot_generic-math" pkgs) (getAttr "gsll" pkgs) ];
-  };
-  cl-ana_dot_memoization = {
-    pname = "cl-ana.memoization";
-    version = "20220707-git";
-    asds = [ "cl-ana.memoization" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-ana/2022-07-07/cl-ana-20220707-git.tgz";
-      sha256 = "1dg8wkc2bv66lykr2fjgn91jw7aa9xnpk20h0g8pp2xr6981gfl9";
-      system = "cl-ana.memoization";
-      asd = "cl-ana.memoization";
-    });
-    systems = [ "cl-ana.memoization" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) ];
-  };
-  cl-ana_dot_ntuple-table = {
-    pname = "cl-ana.ntuple-table";
-    version = "20220707-git";
-    asds = [ "cl-ana.ntuple-table" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-ana/2022-07-07/cl-ana-20220707-git.tgz";
-      sha256 = "1dg8wkc2bv66lykr2fjgn91jw7aa9xnpk20h0g8pp2xr6981gfl9";
-      system = "cl-ana.ntuple-table";
-      asd = "cl-ana.ntuple-table";
-    });
-    systems = [ "cl-ana.ntuple-table" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cffi" pkgs) (getAttr "cl-ana_dot_gsl-cffi" pkgs) (getAttr "cl-ana_dot_list-utils" pkgs) (getAttr "cl-ana_dot_table" pkgs) (getAttr "cl-ana_dot_typed-table" pkgs) (getAttr "cl-ana_dot_typespec" pkgs) (getAttr "gsll" pkgs) ];
-  };
-  cl-ana_dot_package-utils = {
-    pname = "cl-ana.package-utils";
-    version = "20220707-git";
-    asds = [ "cl-ana.package-utils" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-ana/2022-07-07/cl-ana-20220707-git.tgz";
-      sha256 = "1dg8wkc2bv66lykr2fjgn91jw7aa9xnpk20h0g8pp2xr6981gfl9";
-      system = "cl-ana.package-utils";
-      asd = "cl-ana.package-utils";
-    });
-    systems = [ "cl-ana.package-utils" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) ];
-  };
-  cl-ana_dot_pathname-utils = {
-    pname = "cl-ana.pathname-utils";
-    version = "20220707-git";
-    asds = [ "cl-ana.pathname-utils" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-ana/2022-07-07/cl-ana-20220707-git.tgz";
-      sha256 = "1dg8wkc2bv66lykr2fjgn91jw7aa9xnpk20h0g8pp2xr6981gfl9";
-      system = "cl-ana.pathname-utils";
-      asd = "cl-ana.pathname-utils";
-    });
-    systems = [ "cl-ana.pathname-utils" ];
-    lispLibs = [  ];
-  };
-  cl-ana_dot_plotting = {
-    pname = "cl-ana.plotting";
-    version = "20220707-git";
-    asds = [ "cl-ana.plotting" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-ana/2022-07-07/cl-ana-20220707-git.tgz";
-      sha256 = "1dg8wkc2bv66lykr2fjgn91jw7aa9xnpk20h0g8pp2xr6981gfl9";
-      system = "cl-ana.plotting";
-      asd = "cl-ana.plotting";
-    });
-    systems = [ "cl-ana.plotting" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cl-ana_dot_error-propogation" pkgs) (getAttr "cl-ana_dot_functional-utils" pkgs) (getAttr "cl-ana_dot_generic-math" pkgs) (getAttr "cl-ana_dot_gnuplot-interface" pkgs) (getAttr "cl-ana_dot_histogram" pkgs) (getAttr "cl-ana_dot_list-utils" pkgs) (getAttr "cl-ana_dot_macro-utils" pkgs) (getAttr "cl-ana_dot_map" pkgs) (getAttr "cl-ana_dot_math-functions" pkgs) (getAttr "cl-ana_dot_pathname-utils" pkgs) (getAttr "cl-ana_dot_string-utils" pkgs) (getAttr "cl-ana_dot_tensor" pkgs) (getAttr "external-program" pkgs) (getAttr "split-sequence" pkgs) (getAttr "uiop" pkgs) ];
-  };
-  cl-ana_dot_quantity = {
-    pname = "cl-ana.quantity";
-    version = "20220707-git";
-    asds = [ "cl-ana.quantity" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-ana/2022-07-07/cl-ana-20220707-git.tgz";
-      sha256 = "1dg8wkc2bv66lykr2fjgn91jw7aa9xnpk20h0g8pp2xr6981gfl9";
-      system = "cl-ana.quantity";
-      asd = "cl-ana.quantity";
-    });
-    systems = [ "cl-ana.quantity" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cl-ana_dot_error-propogation" pkgs) (getAttr "cl-ana_dot_generic-math" pkgs) (getAttr "cl-ana_dot_list-utils" pkgs) (getAttr "cl-ana_dot_macro-utils" pkgs) (getAttr "cl-ana_dot_math-functions" pkgs) (getAttr "cl-ana_dot_symbol-utils" pkgs) ];
-  };
-  cl-ana_dot_reusable-table = {
-    pname = "cl-ana.reusable-table";
-    version = "20220707-git";
-    asds = [ "cl-ana.reusable-table" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-ana/2022-07-07/cl-ana-20220707-git.tgz";
-      sha256 = "1dg8wkc2bv66lykr2fjgn91jw7aa9xnpk20h0g8pp2xr6981gfl9";
-      system = "cl-ana.reusable-table";
-      asd = "cl-ana.reusable-table";
-    });
-    systems = [ "cl-ana.reusable-table" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cl-ana_dot_table" pkgs) ];
-  };
-  cl-ana_dot_serialization = {
-    pname = "cl-ana.serialization";
-    version = "20220707-git";
-    asds = [ "cl-ana.serialization" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-ana/2022-07-07/cl-ana-20220707-git.tgz";
-      sha256 = "1dg8wkc2bv66lykr2fjgn91jw7aa9xnpk20h0g8pp2xr6981gfl9";
-      system = "cl-ana.serialization";
-      asd = "cl-ana.serialization";
-    });
-    systems = [ "cl-ana.serialization" ];
-    lispLibs = [ (getAttr "cl-ana_dot_error-propogation" pkgs) (getAttr "cl-ana_dot_hdf-table" pkgs) (getAttr "cl-ana_dot_hdf-utils" pkgs) (getAttr "cl-ana_dot_histogram" pkgs) (getAttr "cl-ana_dot_int-char" pkgs) (getAttr "cl-ana_dot_macro-utils" pkgs) (getAttr "cl-ana_dot_typespec" pkgs) ];
-  };
-  cl-ana_dot_spline = {
-    pname = "cl-ana.spline";
-    version = "20220707-git";
-    asds = [ "cl-ana.spline" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-ana/2022-07-07/cl-ana-20220707-git.tgz";
-      sha256 = "1dg8wkc2bv66lykr2fjgn91jw7aa9xnpk20h0g8pp2xr6981gfl9";
-      system = "cl-ana.spline";
-      asd = "cl-ana.spline";
-    });
-    systems = [ "cl-ana.spline" ];
-    lispLibs = [ (getAttr "cffi" pkgs) (getAttr "cl-ana_dot_fitting" pkgs) (getAttr "cl-ana_dot_generic-math" pkgs) (getAttr "cl-ana_dot_list-utils" pkgs) (getAttr "cl-ana_dot_macro-utils" pkgs) (getAttr "cl-ana_dot_math-functions" pkgs) (getAttr "cl-ana_dot_tensor" pkgs) (getAttr "gsll" pkgs) ];
-  };
-  cl-ana_dot_statistical-learning = {
-    pname = "cl-ana.statistical-learning";
-    version = "20220707-git";
-    asds = [ "cl-ana.statistical-learning" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-ana/2022-07-07/cl-ana-20220707-git.tgz";
-      sha256 = "1dg8wkc2bv66lykr2fjgn91jw7aa9xnpk20h0g8pp2xr6981gfl9";
-      system = "cl-ana.statistical-learning";
-      asd = "cl-ana.statistical-learning";
-    });
-    systems = [ "cl-ana.statistical-learning" ];
-    lispLibs = [ (getAttr "cl-ana_dot_functional-utils" pkgs) (getAttr "cl-ana_dot_generic-math" pkgs) (getAttr "cl-ana_dot_histogram" pkgs) (getAttr "cl-ana_dot_linear-algebra" pkgs) (getAttr "cl-ana_dot_list-utils" pkgs) (getAttr "cl-ana_dot_macro-utils" pkgs) (getAttr "cl-ana_dot_map" pkgs) (getAttr "cl-ana_dot_math-functions" pkgs) (getAttr "cl-ana_dot_statistics" pkgs) ];
-  };
-  cl-ana_dot_statistics = {
-    pname = "cl-ana.statistics";
-    version = "20220707-git";
-    asds = [ "cl-ana.statistics" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-ana/2022-07-07/cl-ana-20220707-git.tgz";
-      sha256 = "1dg8wkc2bv66lykr2fjgn91jw7aa9xnpk20h0g8pp2xr6981gfl9";
-      system = "cl-ana.statistics";
-      asd = "cl-ana.statistics";
-    });
-    systems = [ "cl-ana.statistics" ];
-    lispLibs = [ (getAttr "cl-ana_dot_generic-math" pkgs) (getAttr "cl-ana_dot_histogram" pkgs) (getAttr "cl-ana_dot_list-utils" pkgs) (getAttr "cl-ana_dot_macro-utils" pkgs) (getAttr "cl-ana_dot_map" pkgs) (getAttr "cl-ana_dot_math-functions" pkgs) ];
-  };
-  cl-ana_dot_string-utils = {
-    pname = "cl-ana.string-utils";
-    version = "20220707-git";
-    asds = [ "cl-ana.string-utils" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-ana/2022-07-07/cl-ana-20220707-git.tgz";
-      sha256 = "1dg8wkc2bv66lykr2fjgn91jw7aa9xnpk20h0g8pp2xr6981gfl9";
-      system = "cl-ana.string-utils";
-      asd = "cl-ana.string-utils";
-    });
-    systems = [ "cl-ana.string-utils" ];
-    lispLibs = [ (getAttr "split-sequence" pkgs) ];
-  };
-  cl-ana_dot_symbol-utils = {
-    pname = "cl-ana.symbol-utils";
-    version = "20220707-git";
-    asds = [ "cl-ana.symbol-utils" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-ana/2022-07-07/cl-ana-20220707-git.tgz";
-      sha256 = "1dg8wkc2bv66lykr2fjgn91jw7aa9xnpk20h0g8pp2xr6981gfl9";
-      system = "cl-ana.symbol-utils";
-      asd = "cl-ana.symbol-utils";
-    });
-    systems = [ "cl-ana.symbol-utils" ];
-    lispLibs = [ (getAttr "cl-ana_dot_list-utils" pkgs) ];
-  };
-  cl-ana_dot_table = {
-    pname = "cl-ana.table";
-    version = "20220707-git";
-    asds = [ "cl-ana.table" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-ana/2022-07-07/cl-ana-20220707-git.tgz";
-      sha256 = "1dg8wkc2bv66lykr2fjgn91jw7aa9xnpk20h0g8pp2xr6981gfl9";
-      system = "cl-ana.table";
-      asd = "cl-ana.table";
-    });
-    systems = [ "cl-ana.table" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cl-ana_dot_functional-utils" pkgs) (getAttr "cl-ana_dot_list-utils" pkgs) (getAttr "cl-ana_dot_macro-utils" pkgs) (getAttr "cl-ana_dot_string-utils" pkgs) (getAttr "cl-ana_dot_symbol-utils" pkgs) ];
-  };
-  cl-ana_dot_table-utils = {
-    pname = "cl-ana.table-utils";
-    version = "20220707-git";
-    asds = [ "cl-ana.table-utils" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-ana/2022-07-07/cl-ana-20220707-git.tgz";
-      sha256 = "1dg8wkc2bv66lykr2fjgn91jw7aa9xnpk20h0g8pp2xr6981gfl9";
-      system = "cl-ana.table-utils";
-      asd = "cl-ana.table-utils";
-    });
-    systems = [ "cl-ana.table-utils" ];
-    lispLibs = [ (getAttr "cl-ana_dot_generic-math" pkgs) (getAttr "cl-ana_dot_hash-table-utils" pkgs) (getAttr "cl-ana_dot_statistics" pkgs) (getAttr "cl-ana_dot_string-utils" pkgs) (getAttr "cl-ana_dot_symbol-utils" pkgs) (getAttr "cl-ana_dot_table" pkgs) ];
-  };
-  cl-ana_dot_table-viewing = {
-    pname = "cl-ana.table-viewing";
-    version = "20220707-git";
-    asds = [ "cl-ana.table-viewing" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-ana/2022-07-07/cl-ana-20220707-git.tgz";
-      sha256 = "1dg8wkc2bv66lykr2fjgn91jw7aa9xnpk20h0g8pp2xr6981gfl9";
-      system = "cl-ana.table-viewing";
-      asd = "cl-ana.table-viewing";
-    });
-    systems = [ "cl-ana.table-viewing" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cl-ana_dot_generic-math" pkgs) (getAttr "cl-ana_dot_histogram" pkgs) (getAttr "cl-ana_dot_macro-utils" pkgs) (getAttr "cl-ana_dot_plotting" pkgs) (getAttr "cl-ana_dot_string-utils" pkgs) (getAttr "cl-ana_dot_table" pkgs) ];
-  };
-  cl-ana_dot_tensor = {
-    pname = "cl-ana.tensor";
-    version = "20220707-git";
-    asds = [ "cl-ana.tensor" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-ana/2022-07-07/cl-ana-20220707-git.tgz";
-      sha256 = "1dg8wkc2bv66lykr2fjgn91jw7aa9xnpk20h0g8pp2xr6981gfl9";
-      system = "cl-ana.tensor";
-      asd = "cl-ana.tensor";
-    });
-    systems = [ "cl-ana.tensor" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cl-ana_dot_generic-math" pkgs) (getAttr "cl-ana_dot_list-utils" pkgs) (getAttr "cl-ana_dot_macro-utils" pkgs) (getAttr "cl-ana_dot_symbol-utils" pkgs) ];
-  };
-  cl-ana_dot_typed-table = {
-    pname = "cl-ana.typed-table";
-    version = "20220707-git";
-    asds = [ "cl-ana.typed-table" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-ana/2022-07-07/cl-ana-20220707-git.tgz";
-      sha256 = "1dg8wkc2bv66lykr2fjgn91jw7aa9xnpk20h0g8pp2xr6981gfl9";
-      system = "cl-ana.typed-table";
-      asd = "cl-ana.typed-table";
-    });
-    systems = [ "cl-ana.typed-table" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cl-ana_dot_list-utils" pkgs) (getAttr "cl-ana_dot_string-utils" pkgs) (getAttr "cl-ana_dot_symbol-utils" pkgs) (getAttr "cl-ana_dot_table" pkgs) (getAttr "cl-ana_dot_typespec" pkgs) ];
-  };
-  cl-ana_dot_typespec = {
-    pname = "cl-ana.typespec";
-    version = "20220707-git";
-    asds = [ "cl-ana.typespec" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-ana/2022-07-07/cl-ana-20220707-git.tgz";
-      sha256 = "1dg8wkc2bv66lykr2fjgn91jw7aa9xnpk20h0g8pp2xr6981gfl9";
-      system = "cl-ana.typespec";
-      asd = "cl-ana.typespec";
-    });
-    systems = [ "cl-ana.typespec" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cffi" pkgs) (getAttr "cl-ana_dot_int-char" pkgs) (getAttr "cl-ana_dot_list-utils" pkgs) (getAttr "cl-ana_dot_memoization" pkgs) (getAttr "cl-ana_dot_string-utils" pkgs) (getAttr "cl-ana_dot_symbol-utils" pkgs) (getAttr "cl-ana_dot_tensor" pkgs) ];
-  };
-  cl-android = {
-    pname = "cl-android";
-    version = "20150804-git";
-    asds = [ "cl-android" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-sl4a/2015-08-04/cl-sl4a-20150804-git.tgz";
-      sha256 = "0lqla60apkc8xfiyi43w18dldf0m8z5q290wv3d89qf0n9gwk3cr";
-      system = "cl-android";
-      asd = "cl-android";
-    });
-    systems = [ "cl-android" ];
-    lispLibs = [ (getAttr "cl-json" pkgs) (getAttr "usocket" pkgs) ];
-  };
-  cl-annot = {
-    pname = "cl-annot";
-    version = "20150608-git";
-    asds = [ "cl-annot" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-annot/2015-06-08/cl-annot-20150608-git.tgz";
-      sha256 = "1wq1gs9jjd5m6iwrv06c2d7i5dvqsfjcljgbspfbc93cg5xahk4n";
-      system = "cl-annot";
-      asd = "cl-annot";
-    });
-    systems = [ "cl-annot" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) ];
-  };
-  cl-annot-prove = {
-    pname = "cl-annot-prove";
-    version = "20150923-git";
-    asds = [ "cl-annot-prove" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-annot-prove/2015-09-23/cl-annot-prove-20150923-git.tgz";
-      sha256 = "000nlxxs1id1pccp3y5s9xnm76fc5r87q0bxmjrpklxwwf5y8wwy";
-      system = "cl-annot-prove";
-      asd = "cl-annot-prove";
-    });
-    systems = [ "cl-annot-prove" ];
-    lispLibs = [ (getAttr "cl-fad" pkgs) (getAttr "cl-ppcre" pkgs) (getAttr "cl-syntax" pkgs) (getAttr "cl-syntax-annot" pkgs) (getAttr "prove" pkgs) (getAttr "trivial-types" pkgs) ];
-  };
-  cl-annot-prove-test = {
-    pname = "cl-annot-prove-test";
-    version = "20150923-git";
-    asds = [ "cl-annot-prove-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-annot-prove/2015-09-23/cl-annot-prove-20150923-git.tgz";
-      sha256 = "000nlxxs1id1pccp3y5s9xnm76fc5r87q0bxmjrpklxwwf5y8wwy";
-      system = "cl-annot-prove-test";
-      asd = "cl-annot-prove-test";
-    });
-    systems = [ "cl-annot-prove-test" ];
-    lispLibs = [ (getAttr "cl-annot-prove" pkgs) (getAttr "prove" pkgs) (getAttr "prove-asdf" pkgs) ];
-  };
-  cl-annot-revisit = {
-    pname = "cl-annot-revisit";
-    version = "20221106-git";
-    asds = [ "cl-annot-revisit" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-annot-revisit/2022-11-06/cl-annot-revisit-20221106-git.tgz";
-      sha256 = "0jlllgq14bi1rddzlmq9wfs4vb24apgqz17wfd79kjjcmnzzjp4m";
-      system = "cl-annot-revisit";
-      asd = "cl-annot-revisit";
-    });
-    systems = [ "cl-annot-revisit" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "named-readtables" pkgs) ];
-  };
-  cl-annot-revisit-compat = {
-    pname = "cl-annot-revisit-compat";
-    version = "20221106-git";
-    asds = [ "cl-annot-revisit-compat" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-annot-revisit/2022-11-06/cl-annot-revisit-20221106-git.tgz";
-      sha256 = "0jlllgq14bi1rddzlmq9wfs4vb24apgqz17wfd79kjjcmnzzjp4m";
-      system = "cl-annot-revisit-compat";
-      asd = "cl-annot-revisit-compat";
-    });
-    systems = [ "cl-annot-revisit-compat" ];
-    lispLibs = [ (getAttr "cl-annot-revisit" pkgs) ];
-  };
-  cl-annot-revisit-test = {
-    pname = "cl-annot-revisit-test";
-    version = "20221106-git";
-    asds = [ "cl-annot-revisit-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-annot-revisit/2022-11-06/cl-annot-revisit-20221106-git.tgz";
-      sha256 = "0jlllgq14bi1rddzlmq9wfs4vb24apgqz17wfd79kjjcmnzzjp4m";
-      system = "cl-annot-revisit-test";
-      asd = "cl-annot-revisit-test";
-    });
-    systems = [ "cl-annot-revisit-test" ];
-    lispLibs = [ (getAttr "_1am" pkgs) (getAttr "cl-annot-revisit" pkgs) (getAttr "cl-annot-revisit-compat" pkgs) (getAttr "trivial-macroexpand-all" pkgs) ];
-  };
-  cl-anonfun = {
-    pname = "cl-anonfun";
-    version = "20111203-git";
-    asds = [ "cl-anonfun" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-anonfun/2011-12-03/cl-anonfun-20111203-git.tgz";
-      sha256 = "086x2vjvasdy9bhikvdzx34nrq008c0sfkq3ncv0i9mhfk5xwp2j";
-      system = "cl-anonfun";
-      asd = "cl-anonfun";
-    });
-    systems = [ "cl-anonfun" ];
-    lispLibs = [  ];
-  };
-  cl-ansi-term = {
-    pname = "cl-ansi-term";
-    version = "20211020-git";
-    asds = [ "cl-ansi-term" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-ansi-term/2021-10-20/cl-ansi-term-20211020-git.tgz";
-      sha256 = "1wz8xx1dk5v1v5cvfh4a5cf5mdrn8lnz8mpf55c34inb0bxjlx87";
-      system = "cl-ansi-term";
-      asd = "cl-ansi-term";
-    });
-    systems = [ "cl-ansi-term" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "anaphora" pkgs) (getAttr "str" pkgs) ];
-  };
-  cl-ansi-text = {
-    pname = "cl-ansi-text";
-    version = "20211020-git";
-    asds = [ "cl-ansi-text" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-ansi-text/2021-10-20/cl-ansi-text-20211020-git.tgz";
-      sha256 = "0nk7ajqfa937w1iy3zy86jjbw8yffm05cqs4wxkgl97v6kmmya14";
-      system = "cl-ansi-text";
-      asd = "cl-ansi-text";
-    });
-    systems = [ "cl-ansi-text" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cl-colors2" pkgs) ];
-  };
-  cl-ansi-text_dot_test = {
-    pname = "cl-ansi-text.test";
-    version = "20211020-git";
-    asds = [ "cl-ansi-text.test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-ansi-text/2021-10-20/cl-ansi-text-20211020-git.tgz";
-      sha256 = "0nk7ajqfa937w1iy3zy86jjbw8yffm05cqs4wxkgl97v6kmmya14";
-      system = "cl-ansi-text.test";
-      asd = "cl-ansi-text.test";
-    });
-    systems = [ "cl-ansi-text.test" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cl-ansi-text" pkgs) (getAttr "cl-colors2" pkgs) (getAttr "fiveam" pkgs) ];
-  };
-  cl-apertium-stream = {
-    pname = "cl-apertium-stream";
-    version = "20220331-git";
-    asds = [ "cl-apertium-stream" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-apertium-stream-parser/2022-03-31/cl-apertium-stream-parser-20220331-git.tgz";
-      sha256 = "1pyr6xppfly84y5662swgh43jchd56n1dwmdm6kr10gllms7lica";
-      system = "cl-apertium-stream";
-      asd = "cl-apertium-stream";
-    });
-    systems = [ "cl-apertium-stream" ];
-    lispLibs = [ (getAttr "cl-ppcre" pkgs) (getAttr "esrap" pkgs) ];
-  };
-  cl-apple-plist = {
-    pname = "cl-apple-plist";
-    version = "20111105-git";
-    asds = [ "cl-apple-plist" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-apple-plist/2011-11-05/cl-apple-plist-20111105-git.tgz";
-      sha256 = "104j5lvvp7apdx59kbwc6kpa8b82y20w03627ml91lpbqk9bq63f";
-      system = "cl-apple-plist";
-      asd = "cl-apple-plist";
-    });
-    systems = [ "cl-apple-plist" ];
-    lispLibs = [ (getAttr "html-encode" pkgs) ];
-  };
-  cl-arff-parser = {
-    pname = "cl-arff-parser";
-    version = "20130421-git";
-    asds = [ "cl-arff-parser" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-arff-parser/2013-04-21/cl-arff-parser-20130421-git.tgz";
-      sha256 = "0rn76r48b2y2richfy3si4r8kbwkvm7q15g34sxi0fkfmx15z4jx";
-      system = "cl-arff-parser";
-      asd = "cl-arff-parser";
-    });
-    systems = [ "cl-arff-parser" ];
-    lispLibs = [  ];
-  };
-  cl-argparse = {
-    pname = "cl-argparse";
-    version = "20210531-git";
-    asds = [ "cl-argparse" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-argparse/2021-05-31/cl-argparse-20210531-git.tgz";
-      sha256 = "05vy2iaqr7yiaw0ykzwm0ml0mil5qagy87b8hqx4vvb3lq1qpn14";
-      system = "cl-argparse";
-      asd = "cl-argparse";
-    });
-    systems = [ "cl-argparse" ];
-    lispLibs = [  ];
-  };
-  cl-aristid = {
-    pname = "cl-aristid";
-    version = "20200925-git";
-    asds = [ "cl-aristid" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-aristid/2020-09-25/cl-aristid-20200925-git.tgz";
-      sha256 = "0k573k3wydy6dd5pmvqdxmlwk0n5kq2wsk86syddhqyjgx2jmw98";
-      system = "cl-aristid";
-      asd = "cl-aristid";
-    });
-    systems = [ "cl-aristid" ];
-    lispLibs = [ (getAttr "cl-colors" pkgs) (getAttr "cl-svg" pkgs) ];
-  };
-  cl-arxiv-api = {
-    pname = "cl-arxiv-api";
-    version = "20170403-git";
-    asds = [ "cl-arxiv-api" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-arxiv-api/2017-04-03/cl-arxiv-api-20170403-git.tgz";
-      sha256 = "1id95gszqxmmjydv1vjv2vyxz0svqvnx74bmgy63xnajb4kfnpq3";
-      system = "cl-arxiv-api";
-      asd = "cl-arxiv-api";
-    });
-    systems = [ "cl-arxiv-api" ];
-    lispLibs = [ (getAttr "cl-interpol" pkgs) (getAttr "cl-ppcre" pkgs) (getAttr "cxml" pkgs) (getAttr "iterate" pkgs) (getAttr "trivial-http" pkgs) ];
-  };
-  cl-ascii-art = {
-    pname = "cl-ascii-art";
-    version = "20171019-git";
-    asds = [ "cl-ascii-art" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-ascii-art/2017-10-19/cl-ascii-art-20171019-git.tgz";
-      sha256 = "03d3bd8m7dd2l4170vky8y8ini3giqhjpd06rlswz287mkvzq8aa";
-      system = "cl-ascii-art";
-      asd = "cl-ascii-art";
-    });
-    systems = [ "cl-ascii-art" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cl-ansi-text" pkgs) (getAttr "cl-ppcre" pkgs) (getAttr "inferior-shell" pkgs) (getAttr "iterate" pkgs) (getAttr "split-sequence" pkgs) ];
-  };
-  cl-ascii-table = {
-    pname = "cl-ascii-table";
-    version = "20200610-git";
-    asds = [ "cl-ascii-table" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-ascii-table/2020-06-10/cl-ascii-table-20200610-git.tgz";
-      sha256 = "1nclyypd2p06hyfydcv16m9lbj1xmrpmf00wp8mfyhwimv021zlp";
-      system = "cl-ascii-table";
-      asd = "cl-ascii-table";
-    });
-    systems = [ "cl-ascii-table" ];
-    lispLibs = [  ];
-  };
-  cl-association-rules = {
-    pname = "cl-association-rules";
-    version = "20170403-git";
-    asds = [ "cl-association-rules" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-association-rules/2017-04-03/cl-association-rules-20170403-git.tgz";
-      sha256 = "1d4sg9j30ydk1m17byacww8l2x9ggb82iay507g08ij0jxdky86z";
-      system = "cl-association-rules";
-      asd = "cl-association-rules";
-    });
-    systems = [ "cl-association-rules" ];
-    lispLibs = [  ];
-  };
-  cl-association-rules-tests = {
-    pname = "cl-association-rules-tests";
-    version = "20170403-git";
-    asds = [ "cl-association-rules-tests" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-association-rules/2017-04-03/cl-association-rules-20170403-git.tgz";
-      sha256 = "1d4sg9j30ydk1m17byacww8l2x9ggb82iay507g08ij0jxdky86z";
-      system = "cl-association-rules-tests";
-      asd = "cl-association-rules";
-    });
-    systems = [ "cl-association-rules-tests" ];
-    lispLibs = [ (getAttr "cl-association-rules" pkgs) (getAttr "prove" pkgs) ];
-  };
-  cl-async = {
-    pname = "cl-async";
-    version = "20221106-git";
-    asds = [ "cl-async" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-async/2022-11-06/cl-async-20221106-git.tgz";
-      sha256 = "1xl5dfq91dqx57hclq3m8kcndbfv5bbb4kissggmmmmrlnkd32cn";
-      system = "cl-async";
-      asd = "cl-async";
-    });
-    systems = [ "cl-async" ];
-    lispLibs = [ (getAttr "babel" pkgs) (getAttr "cffi" pkgs) (getAttr "cl-async-base" pkgs) (getAttr "cl-async-util" pkgs) (getAttr "cl-libuv" pkgs) (getAttr "cl-ppcre" pkgs) (getAttr "static-vectors" pkgs) (getAttr "trivial-features" pkgs) (getAttr "trivial-gray-streams" pkgs) (getAttr "uiop" pkgs) ];
-  };
-  cl-async-await = {
-    pname = "cl-async-await";
-    version = "20201016-git";
-    asds = [ "cl-async-await" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-async-await/2020-10-16/cl-async-await-20201016-git.tgz";
-      sha256 = "1slhn9z4hljvad3hd8jmvw4q4m6310s04yh3212wvbfar8q0yasj";
-      system = "cl-async-await";
-      asd = "cl-async-await";
-    });
-    systems = [ "cl-async-await" ];
-    lispLibs = [ (getAttr "bordeaux-threads" pkgs) (getAttr "closer-mop" pkgs) (getAttr "simple-actors" pkgs) ];
-  };
-  cl-async-base = {
-    pname = "cl-async-base";
-    version = "20221106-git";
-    asds = [ "cl-async-base" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-async/2022-11-06/cl-async-20221106-git.tgz";
-      sha256 = "1xl5dfq91dqx57hclq3m8kcndbfv5bbb4kissggmmmmrlnkd32cn";
-      system = "cl-async-base";
-      asd = "cl-async";
-    });
-    systems = [ "cl-async-base" ];
-    lispLibs = [ (getAttr "bordeaux-threads" pkgs) (getAttr "cffi" pkgs) (getAttr "cl-libuv" pkgs) ];
-  };
-  cl-async-future = {
-    pname = "cl-async-future";
-    version = "20150113-git";
-    asds = [ "cl-async-future" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-async-future/2015-01-13/cl-async-future-20150113-git.tgz";
-      sha256 = "0z0sc7qlzzxk99f4l26zp6rai9kv0kj0f599sxai5s44p17zbbvh";
-      system = "cl-async-future";
-      asd = "cl-async-future";
-    });
-    systems = [ "cl-async-future" ];
-    lispLibs = [ (getAttr "blackbird" pkgs) ];
-  };
-  cl-async-repl = {
-    pname = "cl-async-repl";
-    version = "20221106-git";
-    asds = [ "cl-async-repl" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-async/2022-11-06/cl-async-20221106-git.tgz";
-      sha256 = "1xl5dfq91dqx57hclq3m8kcndbfv5bbb4kissggmmmmrlnkd32cn";
-      system = "cl-async-repl";
-      asd = "cl-async-repl";
-    });
-    systems = [ "cl-async-repl" ];
-    lispLibs = [ (getAttr "bordeaux-threads" pkgs) (getAttr "cl-async" pkgs) ];
-  };
-  cl-async-ssl = {
-    pname = "cl-async-ssl";
-    version = "20221106-git";
-    asds = [ "cl-async-ssl" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-async/2022-11-06/cl-async-20221106-git.tgz";
-      sha256 = "1xl5dfq91dqx57hclq3m8kcndbfv5bbb4kissggmmmmrlnkd32cn";
-      system = "cl-async-ssl";
-      asd = "cl-async-ssl";
-    });
-    systems = [ "cl-async-ssl" ];
-    lispLibs = [ (getAttr "cffi" pkgs) (getAttr "cl-async" pkgs) (getAttr "vom" pkgs) ];
-  };
-  cl-async-test = {
-    pname = "cl-async-test";
-    version = "20221106-git";
-    asds = [ "cl-async-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-async/2022-11-06/cl-async-20221106-git.tgz";
-      sha256 = "1xl5dfq91dqx57hclq3m8kcndbfv5bbb4kissggmmmmrlnkd32cn";
-      system = "cl-async-test";
-      asd = "cl-async-test";
-    });
-    systems = [ "cl-async-test" ];
-    lispLibs = [ (getAttr "bordeaux-threads" pkgs) (getAttr "cffi" pkgs) (getAttr "cl-async" pkgs) (getAttr "cl-async-ssl" pkgs) (getAttr "fiveam" pkgs) (getAttr "flexi-streams" pkgs) (getAttr "ironclad" pkgs) (getAttr "usocket" pkgs) ];
-  };
-  cl-async-util = {
-    pname = "cl-async-util";
-    version = "20221106-git";
-    asds = [ "cl-async-util" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-async/2022-11-06/cl-async-20221106-git.tgz";
-      sha256 = "1xl5dfq91dqx57hclq3m8kcndbfv5bbb4kissggmmmmrlnkd32cn";
-      system = "cl-async-util";
-      asd = "cl-async";
-    });
-    systems = [ "cl-async-util" ];
-    lispLibs = [ (getAttr "cffi" pkgs) (getAttr "cl-async-base" pkgs) (getAttr "cl-libuv" pkgs) (getAttr "cl-ppcre" pkgs) (getAttr "fast-io" pkgs) (getAttr "vom" pkgs) ];
-  };
-  cl-aubio = {
-    pname = "cl-aubio";
-    version = "20200427-git";
-    asds = [ "cl-aubio" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-aubio/2020-04-27/cl-aubio-20200427-git.tgz";
-      sha256 = "1xyflxy46z4487dbnizhv058y2mdka9iyikl097m60w42blidpn3";
-      system = "cl-aubio";
-      asd = "cl-aubio";
-    });
-    systems = [ "cl-aubio" ];
-    lispLibs = [ (getAttr "cffi" pkgs) (getAttr "cffi-libffi" pkgs) (getAttr "closer-mop" pkgs) ];
-  };
-  cl-aubio_slash_examples = {
-    pname = "cl-aubio_examples";
-    version = "20200427-git";
-    asds = [ "cl-aubio" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-aubio/2020-04-27/cl-aubio-20200427-git.tgz";
-      sha256 = "1xyflxy46z4487dbnizhv058y2mdka9iyikl097m60w42blidpn3";
-      system = "cl-aubio";
-      asd = "cl-aubio";
-    });
-    systems = [ "cl-aubio/examples" ];
-    lispLibs = [ (getAttr "cl-aubio" pkgs) (getAttr "vgplot" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  cl-aubio_slash_tests = {
-    pname = "cl-aubio_tests";
-    version = "20200427-git";
-    asds = [ "cl-aubio" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-aubio/2020-04-27/cl-aubio-20200427-git.tgz";
-      sha256 = "1xyflxy46z4487dbnizhv058y2mdka9iyikl097m60w42blidpn3";
-      system = "cl-aubio";
-      asd = "cl-aubio";
-    });
-    systems = [ "cl-aubio/tests" ];
-    lispLibs = [ (getAttr "cl-aubio" pkgs) (getAttr "fiveam" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  cl-authorize-net = {
-    pname = "cl-authorize-net";
-    version = "20150113-git";
-    asds = [ "cl-authorize-net" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-creditcard/2015-01-13/cl-creditcard-20150113-git.tgz";
-      sha256 = "1qq9r7q50k7jw6sv65aqi9xalaw8m6aqsbb0cgpjxv8wdhy934cr";
-      system = "cl-authorize-net";
-      asd = "cl-authorize-net";
-    });
-    systems = [ "cl-authorize-net" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cl-creditcard" pkgs) (getAttr "drakma" pkgs) (getAttr "split-sequence" pkgs) (getAttr "symbol-munger" pkgs) ];
-  };
-  cl-authorize-net-tests = {
-    pname = "cl-authorize-net-tests";
-    version = "20150113-git";
-    asds = [ "cl-authorize-net-tests" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-creditcard/2015-01-13/cl-creditcard-20150113-git.tgz";
-      sha256 = "1qq9r7q50k7jw6sv65aqi9xalaw8m6aqsbb0cgpjxv8wdhy934cr";
-      system = "cl-authorize-net-tests";
-      asd = "cl-authorize-net";
-    });
-    systems = [ "cl-authorize-net-tests" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cl-authorize-net" pkgs) (getAttr "lisp-unit" pkgs) ];
-  };
-  cl-autorepo = {
-    pname = "cl-autorepo";
-    version = "20180711-git";
-    asds = [ "cl-autorepo" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-autorepo/2018-07-11/cl-autorepo-20180711-git.tgz";
-      sha256 = "01hpg3r3493mri44kxp8sjy8i5kfvjklmnksvm0727i6bhpf8cz9";
-      system = "cl-autorepo";
-      asd = "cl-autorepo";
-    });
-    systems = [ "cl-autorepo" ];
-    lispLibs = [  ];
-  };
-  cl-autowrap = {
-    pname = "cl-autowrap";
-    version = "20221106-git";
-    asds = [ "cl-autowrap" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-autowrap/2022-11-06/cl-autowrap-20221106-git.tgz";
-      sha256 = "0pbabpmg61bflx6kxllqvhbvxqwjsik3nnynqdhgzzkgzk6jlixv";
-      system = "cl-autowrap";
-      asd = "cl-autowrap";
-    });
-    systems = [ "cl-autowrap" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cffi" pkgs) (getAttr "cl-json" pkgs) (getAttr "cl-ppcre" pkgs) (getAttr "defpackage-plus" pkgs) (getAttr "trivial-features" pkgs) (getAttr "uiop" pkgs) ];
-  };
-  cl-autowrap-test = {
-    pname = "cl-autowrap-test";
-    version = "20221106-git";
-    asds = [ "cl-autowrap-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-autowrap/2022-11-06/cl-autowrap-20221106-git.tgz";
-      sha256 = "0pbabpmg61bflx6kxllqvhbvxqwjsik3nnynqdhgzzkgzk6jlixv";
-      system = "cl-autowrap-test";
-      asd = "cl-autowrap-test";
-    });
-    systems = [ "cl-autowrap-test" ];
-    lispLibs = [ (getAttr "cl-autowrap" pkgs) ];
-  };
-  cl-autowrap_slash_libffi = {
-    pname = "cl-autowrap_libffi";
-    version = "20221106-git";
-    asds = [ "cl-autowrap" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-autowrap/2022-11-06/cl-autowrap-20221106-git.tgz";
-      sha256 = "0pbabpmg61bflx6kxllqvhbvxqwjsik3nnynqdhgzzkgzk6jlixv";
-      system = "cl-autowrap";
-      asd = "cl-autowrap";
-    });
-    systems = [ "cl-autowrap/libffi" ];
-    lispLibs = [ (getAttr "cl-autowrap" pkgs) (getAttr "cl-plus-c" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  cl-azure = {
-    pname = "cl-azure";
-    version = "20160825-git";
-    asds = [ "cl-azure" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-azure/2016-08-25/cl-azure-20160825-git.tgz";
-      sha256 = "19sgzbvgs1f1h3qhx11xhpia2x3n8x729h9fsqkc7fap0ak1h31d";
-      system = "cl-azure";
-      asd = "cl-azure";
-    });
-    systems = [ "cl-azure" ];
-    lispLibs = [ (getAttr "babel" pkgs) (getAttr "cl-base64" pkgs) (getAttr "cl-json" pkgs) (getAttr "cl-ppcre" pkgs) (getAttr "cxml" pkgs) (getAttr "drakma" pkgs) (getAttr "ironclad" pkgs) (getAttr "puri" pkgs) (getAttr "rt" pkgs) ];
-  };
-  cl-base16 = {
-    pname = "cl-base16";
-    version = "20200925-git";
-    asds = [ "cl-base16" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-base16/2020-09-25/cl-base16-20200925-git.tgz";
-      sha256 = "0m7ndmk4xhizn3q3ywjvw8sg4pfgp6lrd0wac5d1bf7wbw6afh5q";
-      system = "cl-base16";
-      asd = "cl-base16";
-    });
-    systems = [ "cl-base16" ];
-    lispLibs = [ (getAttr "cl-mustache" pkgs) (getAttr "cl-slug" pkgs) (getAttr "cl-yaml" pkgs) (getAttr "trivial-shell" pkgs) (getAttr "uiop" pkgs) ];
-  };
-  cl-base32 = {
-    pname = "cl-base32";
-    version = "20130420-git";
-    asds = [ "cl-base32" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-base32/2013-04-20/cl-base32-20130420-git.tgz";
-      sha256 = "17jrng8jb05d64ggyd11hp308c2fl5drvf9g175blgrkkl8l4mf8";
-      system = "cl-base32";
-      asd = "cl-base32";
-    });
-    systems = [ "cl-base32" ];
-    lispLibs = [  ];
-  };
-  cl-base32-tests = {
-    pname = "cl-base32-tests";
-    version = "20130420-git";
-    asds = [ "cl-base32-tests" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-base32/2013-04-20/cl-base32-20130420-git.tgz";
-      sha256 = "17jrng8jb05d64ggyd11hp308c2fl5drvf9g175blgrkkl8l4mf8";
-      system = "cl-base32-tests";
-      asd = "cl-base32";
-    });
-    systems = [ "cl-base32-tests" ];
-    lispLibs = [ (getAttr "cl-base32" pkgs) (getAttr "lisp-unit" pkgs) ];
-  };
-  cl-base58 = {
-    pname = "cl-base58";
-    version = "20150113-git";
-    asds = [ "cl-base58" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-base58/2015-01-13/cl-base58-20150113-git.tgz";
-      sha256 = "01wiiyz1jzxx3zhxi2hpq5n8hv28g1mn0adk793vwjzh4v5bi5zz";
-      system = "cl-base58";
-      asd = "cl-base58";
-    });
-    systems = [ "cl-base58" ];
-    lispLibs = [  ];
-  };
-  cl-base58-test = {
-    pname = "cl-base58-test";
-    version = "20150113-git";
-    asds = [ "cl-base58-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-base58/2015-01-13/cl-base58-20150113-git.tgz";
-      sha256 = "01wiiyz1jzxx3zhxi2hpq5n8hv28g1mn0adk793vwjzh4v5bi5zz";
-      system = "cl-base58-test";
-      asd = "cl-base58-test";
-    });
-    systems = [ "cl-base58-test" ];
-    lispLibs = [ (getAttr "cl-base58" pkgs) (getAttr "cl-test-more" pkgs) ];
-  };
-  cl-base64 = {
-    pname = "cl-base64";
-    version = "20201016-git";
-    asds = [ "cl-base64" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-base64/2020-10-16/cl-base64-20201016-git.tgz";
-      sha256 = "12jj54h0fs6n237cvnp8v6hn0imfksammq22ys6pi0gwz2w47rbj";
-      system = "cl-base64";
-      asd = "cl-base64";
-    });
-    systems = [ "cl-base64" ];
-    lispLibs = [  ];
-  };
-  cl-base64_slash_test = {
-    pname = "cl-base64_test";
-    version = "20201016-git";
-    asds = [ "cl-base64" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-base64/2020-10-16/cl-base64-20201016-git.tgz";
-      sha256 = "12jj54h0fs6n237cvnp8v6hn0imfksammq22ys6pi0gwz2w47rbj";
-      system = "cl-base64";
-      asd = "cl-base64";
-    });
-    systems = [ "cl-base64/test" ];
-    lispLibs = [ (getAttr "cl-base64" pkgs) (getAttr "kmrcl" pkgs) (getAttr "ptester" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  cl-bayesnet = {
-    pname = "cl-bayesnet";
-    version = "20130420-git";
-    asds = [ "cl-bayesnet" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-bayesnet/2013-04-20/cl-bayesnet-20130420-git.tgz";
-      sha256 = "02as2isvgm89qpyj49ccs1cg4fl9iswxi26w4j0svsha0q1dh5m8";
-      system = "cl-bayesnet";
-      asd = "cl-bayesnet";
-    });
-    systems = [ "cl-bayesnet" ];
-    lispLibs = [ (getAttr "cffi" pkgs) (getAttr "s-xml" pkgs) (getAttr "trivial-shell" pkgs) ];
-  };
-  cl-bcrypt = {
-    pname = "cl-bcrypt";
-    version = "20200925-git";
-    asds = [ "cl-bcrypt" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-bcrypt/2020-09-25/cl-bcrypt-20200925-git.tgz";
-      sha256 = "0hx9pzn5l1jx09j4pnsvd99byhz7izfn78i2aqr3hvq9indfjlxy";
-      system = "cl-bcrypt";
-      asd = "cl-bcrypt";
-    });
-    systems = [ "cl-bcrypt" ];
-    lispLibs = [ (getAttr "binascii" pkgs) (getAttr "cl-ppcre" pkgs) (getAttr "ironclad" pkgs) ];
-  };
-  cl-bcrypt_dot_test = {
-    pname = "cl-bcrypt.test";
-    version = "20200925-git";
-    asds = [ "cl-bcrypt.test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-bcrypt/2020-09-25/cl-bcrypt-20200925-git.tgz";
-      sha256 = "0hx9pzn5l1jx09j4pnsvd99byhz7izfn78i2aqr3hvq9indfjlxy";
-      system = "cl-bcrypt.test";
-      asd = "cl-bcrypt.test";
-    });
-    systems = [ "cl-bcrypt.test" ];
-    lispLibs = [ (getAttr "cl-bcrypt" pkgs) (getAttr "rove" pkgs) ];
-  };
-  cl-beanstalk = {
-    pname = "cl-beanstalk";
-    version = "20220707-git";
-    asds = [ "cl-beanstalk" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-beanstalk/2022-07-07/cl-beanstalk-20220707-git.tgz";
-      sha256 = "0vca8dw2l765m7g7xcpzi80m8f3145hhshh8ym602336fhiz61q1";
-      system = "cl-beanstalk";
-      asd = "cl-beanstalk";
-    });
-    systems = [ "cl-beanstalk" ];
-    lispLibs = [ (getAttr "flexi-streams" pkgs) (getAttr "split-sequence" pkgs) (getAttr "usocket" pkgs) ];
-  };
-  cl-bip39 = {
-    pname = "cl-bip39";
-    version = "20180711-git";
-    asds = [ "cl-bip39" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-bip39/2018-07-11/cl-bip39-20180711-git.tgz";
-      sha256 = "04h4lhppvavvqknp11gaj4ka2wpn9i883w1w27llblkg2vnn0816";
-      system = "cl-bip39";
-      asd = "cl-bip39";
-    });
-    systems = [ "cl-bip39" ];
-    lispLibs = [ (getAttr "ironclad" pkgs) (getAttr "secure-random" pkgs) (getAttr "split-sequence" pkgs) (getAttr "trivial-utf-8" pkgs) ];
-  };
-  cl-bloggy = {
-    pname = "cl-bloggy";
-    version = "20211020-git";
-    asds = [ "cl-bloggy" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-bloggy/2021-10-20/cl-bloggy-20211020-git.tgz";
-      sha256 = "1clz2a0s3g3jbsrpypb4byb432l0yb4658riqs6ckin57c4bzxc8";
-      system = "cl-bloggy";
-      asd = "cl-bloggy";
-    });
-    systems = [ "cl-bloggy" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "str" pkgs) (getAttr "closer-mop" pkgs) (getAttr "do-urlencode" pkgs) (getAttr "hunchentoot" pkgs) (getAttr "lass" pkgs) (getAttr "local-time" pkgs) (getAttr "lorem-ipsum" pkgs) (getAttr "spinneret" pkgs) (getAttr "xml-emitter" pkgs) ];
-  };
-  cl-bloom = {
-    pname = "cl-bloom";
-    version = "20180228-git";
-    asds = [ "cl-bloom" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-bloom/2018-02-28/cl-bloom-20180228-git.tgz";
-      sha256 = "1ircc5sa0a2xlx0fca0is6inwrk311hbj8jx6r4sas5pfv78k4am";
-      system = "cl-bloom";
-      asd = "cl-bloom";
-    });
-    systems = [ "cl-bloom" ];
-    lispLibs = [ (getAttr "cl-murmurhash" pkgs) (getAttr "static-vectors" pkgs) ];
-  };
-  cl-bloom-filter = {
-    pname = "cl-bloom-filter";
-    version = "20221106-git";
-    asds = [ "cl-bloom-filter" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-bloom-filter/2022-11-06/cl-bloom-filter-20221106-git.tgz";
-      sha256 = "1s9m617fh3krh2klc2nx7jf89nk43cvvrnvqrhvw9jprw7gqanvq";
-      system = "cl-bloom-filter";
-      asd = "cl-bloom-filter";
-    });
-    systems = [ "cl-bloom-filter" ];
-    lispLibs = [  ];
-  };
-  cl-bloom-filter_slash_tests = {
-    pname = "cl-bloom-filter_tests";
-    version = "20221106-git";
-    asds = [ "cl-bloom-filter" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-bloom-filter/2022-11-06/cl-bloom-filter-20221106-git.tgz";
-      sha256 = "1s9m617fh3krh2klc2nx7jf89nk43cvvrnvqrhvw9jprw7gqanvq";
-      system = "cl-bloom-filter";
-      asd = "cl-bloom-filter";
-    });
-    systems = [ "cl-bloom-filter/tests" ];
-    lispLibs = [ (getAttr "cl-bloom-filter" pkgs) (getAttr "rove" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  cl-bnf = {
-    pname = "cl-bnf";
-    version = "20200925-git";
-    asds = [ "cl-bnf" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-bnf/2020-09-25/cl-bnf-20200925-git.tgz";
-      sha256 = "0z8qcywbyr1fdx122vpp0sdqywaqcwy2393ygqqznm5j3jv5dxii";
-      system = "cl-bnf";
-      asd = "cl-bnf";
-    });
-    systems = [ "cl-bnf" ];
-    lispLibs = [  ];
-  };
-  cl-bnf-examples = {
-    pname = "cl-bnf-examples";
-    version = "20200925-git";
-    asds = [ "cl-bnf-examples" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-bnf/2020-09-25/cl-bnf-20200925-git.tgz";
-      sha256 = "0z8qcywbyr1fdx122vpp0sdqywaqcwy2393ygqqznm5j3jv5dxii";
-      system = "cl-bnf-examples";
-      asd = "cl-bnf-examples";
-    });
-    systems = [ "cl-bnf-examples" ];
-    lispLibs = [ (getAttr "cl-bnf" pkgs) ];
-  };
-  cl-bnf-tests = {
-    pname = "cl-bnf-tests";
-    version = "20200925-git";
-    asds = [ "cl-bnf-tests" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-bnf/2020-09-25/cl-bnf-20200925-git.tgz";
-      sha256 = "0z8qcywbyr1fdx122vpp0sdqywaqcwy2393ygqqznm5j3jv5dxii";
-      system = "cl-bnf-tests";
-      asd = "cl-bnf-tests";
-    });
-    systems = [ "cl-bnf-tests" ];
-    lispLibs = [ (getAttr "cl-bnf" pkgs) (getAttr "fiveam" pkgs) ];
-  };
-  cl-bootstrap = {
-    pname = "cl-bootstrap";
-    version = "20180831-git";
-    asds = [ "cl-bootstrap" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-bootstrap/2018-08-31/cl-bootstrap-20180831-git.tgz";
-      sha256 = "0pk7wx4arsljxlnbx1hzcgxwsvhdp3gn22wv43xls2jv1rdi2xry";
-      system = "cl-bootstrap";
-      asd = "cl-bootstrap";
-    });
-    systems = [ "cl-bootstrap" ];
-    lispLibs = [ (getAttr "cl-who" pkgs) (getAttr "parenscript" pkgs) ];
-  };
-  cl-bootstrap-demo = {
-    pname = "cl-bootstrap-demo";
-    version = "20180831-git";
-    asds = [ "cl-bootstrap-demo" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-bootstrap/2018-08-31/cl-bootstrap-20180831-git.tgz";
-      sha256 = "0pk7wx4arsljxlnbx1hzcgxwsvhdp3gn22wv43xls2jv1rdi2xry";
-      system = "cl-bootstrap-demo";
-      asd = "cl-bootstrap-demo";
-    });
-    systems = [ "cl-bootstrap-demo" ];
-    lispLibs = [ (getAttr "cl-bootstrap" pkgs) (getAttr "cl-who" pkgs) (getAttr "hunchentoot" pkgs) (getAttr "parenscript" pkgs) ];
-  };
-  cl-bootstrap-test = {
-    pname = "cl-bootstrap-test";
-    version = "20180831-git";
-    asds = [ "cl-bootstrap-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-bootstrap/2018-08-31/cl-bootstrap-20180831-git.tgz";
-      sha256 = "0pk7wx4arsljxlnbx1hzcgxwsvhdp3gn22wv43xls2jv1rdi2xry";
-      system = "cl-bootstrap-test";
-      asd = "cl-bootstrap-test";
-    });
-    systems = [ "cl-bootstrap-test" ];
-    lispLibs = [ (getAttr "cl-bootstrap" pkgs) (getAttr "fiveam" pkgs) ];
-  };
-  cl-bplustree = {
-    pname = "cl-bplustree";
-    version = "20180328-git";
-    asds = [ "cl-bplustree" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-bplustree/2018-03-28/cl-bplustree-20180328-git.tgz";
-      sha256 = "1d9pm9fi9bhh73bhcgig0wq5i4fvc4551kxvny3di6x6yr7j2kbl";
-      system = "cl-bplustree";
-      asd = "cl-bplustree";
-    });
-    systems = [ "cl-bplustree" ];
-    lispLibs = [  ];
-  };
-  cl-bplustree-test = {
-    pname = "cl-bplustree-test";
-    version = "20180328-git";
-    asds = [ "cl-bplustree-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-bplustree/2018-03-28/cl-bplustree-20180328-git.tgz";
-      sha256 = "1d9pm9fi9bhh73bhcgig0wq5i4fvc4551kxvny3di6x6yr7j2kbl";
-      system = "cl-bplustree-test";
-      asd = "cl-bplustree";
-    });
-    systems = [ "cl-bplustree-test" ];
-    lispLibs = [ (getAttr "cl-bplustree" pkgs) ];
-  };
-  cl-bson = {
-    pname = "cl-bson";
-    version = "20170403-git";
-    asds = [ "cl-bson" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-bson/2017-04-03/cl-bson-20170403-git.tgz";
-      sha256 = "107mx5kvqw7f7q9mw3qa120gz1z153fwv8jmn5qi2sbfnglkz2gy";
-      system = "cl-bson";
-      asd = "cl-bson";
-    });
-    systems = [ "cl-bson" ];
-    lispLibs = [ (getAttr "arrow-macros" pkgs) (getAttr "babel" pkgs) (getAttr "cl-intbytes" pkgs) (getAttr "fast-io" pkgs) (getAttr "ieee-floats" pkgs) (getAttr "let-over-lambda" pkgs) (getAttr "local-time" pkgs) (getAttr "named-readtables" pkgs) (getAttr "rutils" pkgs) (getAttr "trivial-shell" pkgs) ];
-  };
-  cl-bson-test = {
-    pname = "cl-bson-test";
-    version = "20170403-git";
-    asds = [ "cl-bson-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-bson/2017-04-03/cl-bson-20170403-git.tgz";
-      sha256 = "107mx5kvqw7f7q9mw3qa120gz1z153fwv8jmn5qi2sbfnglkz2gy";
-      system = "cl-bson-test";
-      asd = "cl-bson-test";
-    });
-    systems = [ "cl-bson-test" ];
-    lispLibs = [ (getAttr "cl-bson" pkgs) (getAttr "prove" pkgs) (getAttr "prove-asdf" pkgs) ];
-  };
-  cl-buchberger = {
-    pname = "cl-buchberger";
-    version = "20201016-git";
-    asds = [ "cl-buchberger" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-buchberger/2020-10-16/cl-buchberger-20201016-git.tgz";
-      sha256 = "105kwri3hjla1cydc323y8dfi4cjg0g4hxjzdh13inmvxwcf049w";
-      system = "cl-buchberger";
-      asd = "cl-buchberger";
-    });
-    systems = [ "cl-buchberger" ];
-    lispLibs = [  ];
-  };
-  cl-bus = {
-    pname = "cl-bus";
-    version = "20211209-git";
-    asds = [ "cl-bus" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-bus/2021-12-09/cl-bus-20211209-git.tgz";
-      sha256 = "1galzqm1qv2slibn3awfyxnmlslxmzw09a8fidmbdy1r0ppp5r7z";
-      system = "cl-bus";
-      asd = "cl-bus";
-    });
-    systems = [ "cl-bus" ];
-    lispLibs = [  ];
-  };
-  cl-ca = {
-    pname = "cl-ca";
-    version = "20161204-git";
-    asds = [ "cl-ca" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-ca/2016-12-04/cl-ca-20161204-git.tgz";
-      sha256 = "0kpwpxw3c8q7b2ajyj9rzhs1r1h6kipdm9qjkgsn0sqrmx9acfnz";
-      system = "cl-ca";
-      asd = "cl-ca";
-    });
-    systems = [ "cl-ca" ];
-    lispLibs = [  ];
-  };
-  cl-cache-tables = {
-    pname = "cl-cache-tables";
-    version = "20171019-git";
-    asds = [ "cl-cache-tables" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-cache-tables/2017-10-19/cl-cache-tables-20171019-git.tgz";
-      sha256 = "008m7v39mq2475y1f4if5iazb15rm02g22id4q4qgig1zx2vfpg1";
-      system = "cl-cache-tables";
-      asd = "cl-cache-tables";
-    });
-    systems = [ "cl-cache-tables" ];
-    lispLibs = [  ];
-  };
-  cl-cache-tables-tests = {
-    pname = "cl-cache-tables-tests";
-    version = "20171019-git";
-    asds = [ "cl-cache-tables-tests" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-cache-tables/2017-10-19/cl-cache-tables-20171019-git.tgz";
-      sha256 = "008m7v39mq2475y1f4if5iazb15rm02g22id4q4qgig1zx2vfpg1";
-      system = "cl-cache-tables-tests";
-      asd = "cl-cache-tables";
-    });
-    systems = [ "cl-cache-tables-tests" ];
-    lispLibs = [ (getAttr "cl-cache-tables" pkgs) (getAttr "prove" pkgs) ];
-  };
-  cl-cairo2 = {
-    pname = "cl-cairo2";
-    version = "20211020-git";
-    asds = [ "cl-cairo2" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-cairo2/2021-10-20/cl-cairo2-20211020-git.tgz";
-      sha256 = "0cpfgyxw6pz7y033dlya8c4vjmkpw127zdq3a9xclp9q8jbdlb7q";
-      system = "cl-cairo2";
-      asd = "cl-cairo2";
-    });
-    systems = [ "cl-cairo2" ];
-    lispLibs = [ (getAttr "cffi" pkgs) (getAttr "cl-colors" pkgs) (getAttr "cl-utilities" pkgs) (getAttr "metabang-bind" pkgs) (getAttr "trivial-features" pkgs) (getAttr "trivial-garbage" pkgs) ];
-  };
-  cl-cairo2-demos = {
-    pname = "cl-cairo2-demos";
-    version = "20211020-git";
-    asds = [ "cl-cairo2-demos" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-cairo2/2021-10-20/cl-cairo2-20211020-git.tgz";
-      sha256 = "0cpfgyxw6pz7y033dlya8c4vjmkpw127zdq3a9xclp9q8jbdlb7q";
-      system = "cl-cairo2-demos";
-      asd = "cl-cairo2-demos";
-    });
-    systems = [ "cl-cairo2-demos" ];
-    lispLibs = [ (getAttr "cl-cairo2" pkgs) ];
-  };
-  cl-cairo2-xlib = {
-    pname = "cl-cairo2-xlib";
-    version = "20211020-git";
-    asds = [ "cl-cairo2-xlib" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-cairo2/2021-10-20/cl-cairo2-20211020-git.tgz";
-      sha256 = "0cpfgyxw6pz7y033dlya8c4vjmkpw127zdq3a9xclp9q8jbdlb7q";
-      system = "cl-cairo2-xlib";
-      asd = "cl-cairo2-xlib";
-    });
-    systems = [ "cl-cairo2-xlib" ];
-    lispLibs = [ (getAttr "cl-cairo2" pkgs) (getAttr "cl-freetype2" pkgs) ];
-  };
-  cl-case-control = {
-    pname = "cl-case-control";
-    version = "20141106-git";
-    asds = [ "cl-case-control" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-case-control/2014-11-06/cl-case-control-20141106-git.tgz";
-      sha256 = "0510m1dfz4abw3s7w0axr1b1nsmi72avr850r0sn6p2pq091pc71";
-      system = "cl-case-control";
-      asd = "cl-case-control";
-    });
-    systems = [ "cl-case-control" ];
-    lispLibs = [ (getAttr "trivial-types" pkgs) ];
-  };
-  cl-catmull-rom-spline = {
-    pname = "cl-catmull-rom-spline";
-    version = "20220220-git";
-    asds = [ "cl-catmull-rom-spline" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-catmull-rom-spline/2022-02-20/cl-catmull-rom-spline-20220220-git.tgz";
-      sha256 = "0702swja11zpfdx04l0901ipvi0acg17mk9ryvhibnbzq70npyjs";
-      system = "cl-catmull-rom-spline";
-      asd = "cl-catmull-rom-spline";
-    });
-    systems = [ "cl-catmull-rom-spline" ];
-    lispLibs = [  ];
-  };
-  cl-catmull-rom-spline_slash_example = {
-    pname = "cl-catmull-rom-spline_example";
-    version = "20220220-git";
-    asds = [ "cl-catmull-rom-spline" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-catmull-rom-spline/2022-02-20/cl-catmull-rom-spline-20220220-git.tgz";
-      sha256 = "0702swja11zpfdx04l0901ipvi0acg17mk9ryvhibnbzq70npyjs";
-      system = "cl-catmull-rom-spline";
-      asd = "cl-catmull-rom-spline";
-    });
-    systems = [ "cl-catmull-rom-spline/example" ];
-    lispLibs = [ (getAttr "bordeaux-threads" pkgs) (getAttr "cl-catmull-rom-spline" pkgs) (getAttr "lispbuilder-sdl" pkgs) (getAttr "lispbuilder-sdl-gfx" pkgs) (getAttr "lispbuilder-sdl-ttf" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  cl-catmull-rom-spline_slash_test = {
-    pname = "cl-catmull-rom-spline_test";
-    version = "20220220-git";
-    asds = [ "cl-catmull-rom-spline" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-catmull-rom-spline/2022-02-20/cl-catmull-rom-spline-20220220-git.tgz";
-      sha256 = "0702swja11zpfdx04l0901ipvi0acg17mk9ryvhibnbzq70npyjs";
-      system = "cl-catmull-rom-spline";
-      asd = "cl-catmull-rom-spline";
-    });
-    systems = [ "cl-catmull-rom-spline/test" ];
-    lispLibs = [ (getAttr "arrow-macros" pkgs) (getAttr "cl-catmull-rom-spline" pkgs) (getAttr "fiveam" pkgs) (getAttr "uiop" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  cl-cerf = {
-    pname = "cl-cerf";
-    version = "20210531-git";
-    asds = [ "cl-cerf" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-cerf/2021-05-31/cl-cerf-20210531-git.tgz";
-      sha256 = "0n1b6ig1d0dqkjn06iqsk0m4y7j7msi2gcq7niivcwc4s0ry0ljn";
-      system = "cl-cerf";
-      asd = "cl-cerf";
-    });
-    systems = [ "cl-cerf" ];
-    lispLibs = [ (getAttr "cffi" pkgs) (getAttr "cffi-libffi" pkgs) ];
-  };
-  cl-cffi-gtk = {
-    pname = "cl-cffi-gtk";
-    version = "20201220-git";
-    asds = [ "cl-cffi-gtk" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-cffi-gtk/2020-12-20/cl-cffi-gtk-20201220-git.tgz";
-      sha256 = "1rcxv8abpvfbfvrq27h48rbhsvmp26cq7b27pcp8205mxvkdzam5";
-      system = "cl-cffi-gtk";
-      asd = "cl-cffi-gtk";
-    });
-    systems = [ "cl-cffi-gtk" ];
-    lispLibs = [ (getAttr "cl-cffi-gtk-cairo" pkgs) (getAttr "cl-cffi-gtk-gdk" pkgs) (getAttr "cl-cffi-gtk-gdk-pixbuf" pkgs) (getAttr "cl-cffi-gtk-gio" pkgs) (getAttr "cl-cffi-gtk-glib" pkgs) (getAttr "cl-cffi-gtk-gobject" pkgs) (getAttr "cl-cffi-gtk-pango" pkgs) ];
-  };
-  cl-cffi-gtk-cairo = {
-    pname = "cl-cffi-gtk-cairo";
-    version = "20201220-git";
-    asds = [ "cl-cffi-gtk-cairo" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-cffi-gtk/2020-12-20/cl-cffi-gtk-20201220-git.tgz";
-      sha256 = "1rcxv8abpvfbfvrq27h48rbhsvmp26cq7b27pcp8205mxvkdzam5";
-      system = "cl-cffi-gtk-cairo";
-      asd = "cl-cffi-gtk-cairo";
-    });
-    systems = [ "cl-cffi-gtk-cairo" ];
-    lispLibs = [ (getAttr "cl-cffi-gtk-glib" pkgs) ];
-  };
-  cl-cffi-gtk-demo-cairo = {
-    pname = "cl-cffi-gtk-demo-cairo";
-    version = "20201220-git";
-    asds = [ "cl-cffi-gtk-demo-cairo" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-cffi-gtk/2020-12-20/cl-cffi-gtk-20201220-git.tgz";
-      sha256 = "1rcxv8abpvfbfvrq27h48rbhsvmp26cq7b27pcp8205mxvkdzam5";
-      system = "cl-cffi-gtk-demo-cairo";
-      asd = "cl-cffi-gtk-demo-cairo";
-    });
-    systems = [ "cl-cffi-gtk-demo-cairo" ];
-    lispLibs = [ (getAttr "cl-cffi-gtk" pkgs) ];
-  };
-  cl-cffi-gtk-demo-glib = {
-    pname = "cl-cffi-gtk-demo-glib";
-    version = "20201220-git";
-    asds = [ "cl-cffi-gtk-demo-glib" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-cffi-gtk/2020-12-20/cl-cffi-gtk-20201220-git.tgz";
-      sha256 = "1rcxv8abpvfbfvrq27h48rbhsvmp26cq7b27pcp8205mxvkdzam5";
-      system = "cl-cffi-gtk-demo-glib";
-      asd = "cl-cffi-gtk-demo-glib";
-    });
-    systems = [ "cl-cffi-gtk-demo-glib" ];
-    lispLibs = [ (getAttr "cl-cffi-gtk" pkgs) ];
-  };
-  cl-cffi-gtk-demo-gobject = {
-    pname = "cl-cffi-gtk-demo-gobject";
-    version = "20201220-git";
-    asds = [ "cl-cffi-gtk-demo-gobject" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-cffi-gtk/2020-12-20/cl-cffi-gtk-20201220-git.tgz";
-      sha256 = "1rcxv8abpvfbfvrq27h48rbhsvmp26cq7b27pcp8205mxvkdzam5";
-      system = "cl-cffi-gtk-demo-gobject";
-      asd = "cl-cffi-gtk-demo-gobject";
-    });
-    systems = [ "cl-cffi-gtk-demo-gobject" ];
-    lispLibs = [ (getAttr "cl-cffi-gtk-gobject" pkgs) ];
-  };
-  cl-cffi-gtk-example-gtk = {
-    pname = "cl-cffi-gtk-example-gtk";
-    version = "20201220-git";
-    asds = [ "cl-cffi-gtk-example-gtk" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-cffi-gtk/2020-12-20/cl-cffi-gtk-20201220-git.tgz";
-      sha256 = "1rcxv8abpvfbfvrq27h48rbhsvmp26cq7b27pcp8205mxvkdzam5";
-      system = "cl-cffi-gtk-example-gtk";
-      asd = "cl-cffi-gtk-example-gtk";
-    });
-    systems = [ "cl-cffi-gtk-example-gtk" ];
-    lispLibs = [ (getAttr "cl-cffi-gtk" pkgs) ];
-  };
-  cl-cffi-gtk-gdk = {
-    pname = "cl-cffi-gtk-gdk";
-    version = "20201220-git";
-    asds = [ "cl-cffi-gtk-gdk" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-cffi-gtk/2020-12-20/cl-cffi-gtk-20201220-git.tgz";
-      sha256 = "1rcxv8abpvfbfvrq27h48rbhsvmp26cq7b27pcp8205mxvkdzam5";
-      system = "cl-cffi-gtk-gdk";
-      asd = "cl-cffi-gtk-gdk";
-    });
-    systems = [ "cl-cffi-gtk-gdk" ];
-    lispLibs = [ (getAttr "cl-cffi-gtk-cairo" pkgs) (getAttr "cl-cffi-gtk-gdk-pixbuf" pkgs) (getAttr "cl-cffi-gtk-gio" pkgs) (getAttr "cl-cffi-gtk-glib" pkgs) (getAttr "cl-cffi-gtk-gobject" pkgs) (getAttr "cl-cffi-gtk-pango" pkgs) ];
-  };
-  cl-cffi-gtk-gdk-pixbuf = {
-    pname = "cl-cffi-gtk-gdk-pixbuf";
-    version = "20201220-git";
-    asds = [ "cl-cffi-gtk-gdk-pixbuf" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-cffi-gtk/2020-12-20/cl-cffi-gtk-20201220-git.tgz";
-      sha256 = "1rcxv8abpvfbfvrq27h48rbhsvmp26cq7b27pcp8205mxvkdzam5";
-      system = "cl-cffi-gtk-gdk-pixbuf";
-      asd = "cl-cffi-gtk-gdk-pixbuf";
-    });
-    systems = [ "cl-cffi-gtk-gdk-pixbuf" ];
-    lispLibs = [ (getAttr "cl-cffi-gtk-glib" pkgs) (getAttr "cl-cffi-gtk-gobject" pkgs) ];
-  };
-  cl-cffi-gtk-gio = {
-    pname = "cl-cffi-gtk-gio";
-    version = "20201220-git";
-    asds = [ "cl-cffi-gtk-gio" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-cffi-gtk/2020-12-20/cl-cffi-gtk-20201220-git.tgz";
-      sha256 = "1rcxv8abpvfbfvrq27h48rbhsvmp26cq7b27pcp8205mxvkdzam5";
-      system = "cl-cffi-gtk-gio";
-      asd = "cl-cffi-gtk-gio";
-    });
-    systems = [ "cl-cffi-gtk-gio" ];
-    lispLibs = [ (getAttr "cl-cffi-gtk-glib" pkgs) (getAttr "cl-cffi-gtk-gobject" pkgs) ];
-  };
-  cl-cffi-gtk-glib = {
-    pname = "cl-cffi-gtk-glib";
-    version = "20201220-git";
-    asds = [ "cl-cffi-gtk-glib" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-cffi-gtk/2020-12-20/cl-cffi-gtk-20201220-git.tgz";
-      sha256 = "1rcxv8abpvfbfvrq27h48rbhsvmp26cq7b27pcp8205mxvkdzam5";
-      system = "cl-cffi-gtk-glib";
-      asd = "cl-cffi-gtk-glib";
-    });
-    systems = [ "cl-cffi-gtk-glib" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "bordeaux-threads" pkgs) (getAttr "cffi" pkgs) (getAttr "iterate" pkgs) (getAttr "trivial-features" pkgs) ];
-  };
-  cl-cffi-gtk-gobject = {
-    pname = "cl-cffi-gtk-gobject";
-    version = "20201220-git";
-    asds = [ "cl-cffi-gtk-gobject" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-cffi-gtk/2020-12-20/cl-cffi-gtk-20201220-git.tgz";
-      sha256 = "1rcxv8abpvfbfvrq27h48rbhsvmp26cq7b27pcp8205mxvkdzam5";
-      system = "cl-cffi-gtk-gobject";
-      asd = "cl-cffi-gtk-gobject";
-    });
-    systems = [ "cl-cffi-gtk-gobject" ];
-    lispLibs = [ (getAttr "cl-cffi-gtk-glib" pkgs) (getAttr "closer-mop" pkgs) (getAttr "trivial-garbage" pkgs) ];
-  };
-  cl-cffi-gtk-opengl-demo = {
-    pname = "cl-cffi-gtk-opengl-demo";
-    version = "20201220-git";
-    asds = [ "cl-cffi-gtk-opengl-demo" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-cffi-gtk/2020-12-20/cl-cffi-gtk-20201220-git.tgz";
-      sha256 = "1rcxv8abpvfbfvrq27h48rbhsvmp26cq7b27pcp8205mxvkdzam5";
-      system = "cl-cffi-gtk-opengl-demo";
-      asd = "cl-cffi-gtk-opengl-demo";
-    });
-    systems = [ "cl-cffi-gtk-opengl-demo" ];
-    lispLibs = [ (getAttr "cl-cffi-gtk" pkgs) (getAttr "cl-opengl" pkgs) ];
-  };
-  cl-cffi-gtk-pango = {
-    pname = "cl-cffi-gtk-pango";
-    version = "20201220-git";
-    asds = [ "cl-cffi-gtk-pango" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-cffi-gtk/2020-12-20/cl-cffi-gtk-20201220-git.tgz";
-      sha256 = "1rcxv8abpvfbfvrq27h48rbhsvmp26cq7b27pcp8205mxvkdzam5";
-      system = "cl-cffi-gtk-pango";
-      asd = "cl-cffi-gtk-pango";
-    });
-    systems = [ "cl-cffi-gtk-pango" ];
-    lispLibs = [ (getAttr "cl-cffi-gtk-cairo" pkgs) (getAttr "cl-cffi-gtk-glib" pkgs) (getAttr "cl-cffi-gtk-gobject" pkgs) ];
-  };
-  cl-change-case = {
-    pname = "cl-change-case";
-    version = "20210411-git";
-    asds = [ "cl-change-case" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-change-case/2021-04-11/cl-change-case-20210411-git.tgz";
-      sha256 = "027qvcx261g0gwjvwn2n4w0biw1xq3c5s41smbb3ppxszyax82dx";
-      system = "cl-change-case";
-      asd = "cl-change-case";
-    });
-    systems = [ "cl-change-case" ];
-    lispLibs = [ (getAttr "cl-ppcre" pkgs) (getAttr "cl-ppcre-unicode" pkgs) ];
-  };
-  cl-change-case_slash_test = {
-    pname = "cl-change-case_test";
-    version = "20210411-git";
-    asds = [ "cl-change-case" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-change-case/2021-04-11/cl-change-case-20210411-git.tgz";
-      sha256 = "027qvcx261g0gwjvwn2n4w0biw1xq3c5s41smbb3ppxszyax82dx";
-      system = "cl-change-case";
-      asd = "cl-change-case";
-    });
-    systems = [ "cl-change-case/test" ];
-    lispLibs = [ (getAttr "cl-change-case" pkgs) (getAttr "fiveam" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  cl-charms = {
-    pname = "cl-charms";
-    version = "20221106-git";
-    asds = [ "cl-charms" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-charms/2022-11-06/cl-charms-20221106-git.tgz";
-      sha256 = "1xi2q3xl756wyallfbyfp2v0zvf8mhfkwb59y11ny9jj5cdhgwdh";
-      system = "cl-charms";
-      asd = "cl-charms";
-    });
-    systems = [ "cl-charms" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cffi" pkgs) (getAttr "cffi-grovel" pkgs) ];
-  };
-  cl-charms-paint = {
-    pname = "cl-charms-paint";
-    version = "20221106-git";
-    asds = [ "cl-charms-paint" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-charms/2022-11-06/cl-charms-20221106-git.tgz";
-      sha256 = "1xi2q3xl756wyallfbyfp2v0zvf8mhfkwb59y11ny9jj5cdhgwdh";
-      system = "cl-charms-paint";
-      asd = "cl-charms-paint";
-    });
-    systems = [ "cl-charms-paint" ];
-    lispLibs = [ (getAttr "cl-charms" pkgs) ];
-  };
-  cl-charms-timer = {
-    pname = "cl-charms-timer";
-    version = "20221106-git";
-    asds = [ "cl-charms-timer" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-charms/2022-11-06/cl-charms-20221106-git.tgz";
-      sha256 = "1xi2q3xl756wyallfbyfp2v0zvf8mhfkwb59y11ny9jj5cdhgwdh";
-      system = "cl-charms-timer";
-      asd = "cl-charms-timer";
-    });
-    systems = [ "cl-charms-timer" ];
-    lispLibs = [ (getAttr "cl-charms" pkgs) ];
-  };
-  cl-cheshire-cat = {
-    pname = "cl-cheshire-cat";
-    version = "20121125-git";
-    asds = [ "cl-cheshire-cat" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-cheshire-cat/2012-11-25/cl-cheshire-cat-20121125-git.tgz";
-      sha256 = "1kgm1pa2c4r90nfs38x7fsw730nw13z7p6f11rv67hdjcydh2f11";
-      system = "cl-cheshire-cat";
-      asd = "cl-cheshire-cat";
-    });
-    systems = [ "cl-cheshire-cat" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cl-fad" pkgs) (getAttr "cl-ppcre" pkgs) (getAttr "cl-store" pkgs) (getAttr "hunchentoot" pkgs) (getAttr "split-sequence" pkgs) (getAttr "usocket" pkgs) ];
-  };
-  cl-clblas = {
-    pname = "cl-clblas";
-    version = "20181018-git";
-    asds = [ "cl-clblas" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-clblas/2018-10-18/cl-clblas-20181018-git.tgz";
-      sha256 = "0cn4hvywaw97ccnj2wxjf20lh7h7n5fs6rq6kgjyfs9cxcixmvrj";
-      system = "cl-clblas";
-      asd = "cl-clblas";
-    });
-    systems = [ "cl-clblas" ];
-    lispLibs = [ (getAttr "cffi" pkgs) ];
-  };
-  cl-clblas-test = {
-    pname = "cl-clblas-test";
-    version = "20181018-git";
-    asds = [ "cl-clblas-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-clblas/2018-10-18/cl-clblas-20181018-git.tgz";
-      sha256 = "0cn4hvywaw97ccnj2wxjf20lh7h7n5fs6rq6kgjyfs9cxcixmvrj";
-      system = "cl-clblas-test";
-      asd = "cl-clblas-test";
-    });
-    systems = [ "cl-clblas-test" ];
-    lispLibs = [ (getAttr "cffi" pkgs) (getAttr "cl-clblas" pkgs) (getAttr "cl-oclapi" pkgs) (getAttr "prove" pkgs) (getAttr "prove-asdf" pkgs) ];
-  };
-  cl-cli = {
-    pname = "cl-cli";
-    version = "20151218-git";
-    asds = [ "cl-cli" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-cli/2015-12-18/cl-cli-20151218-git.tgz";
-      sha256 = "0zlifq55r78vfdlqf8jy6rkny73438f1i9cp9a8vybmila5dij3q";
-      system = "cl-cli";
-      asd = "cl-cli";
-    });
-    systems = [ "cl-cli" ];
-    lispLibs = [ (getAttr "split-sequence" pkgs) ];
-  };
-  cl-clsparse = {
-    pname = "cl-clsparse";
-    version = "20190813-git";
-    asds = [ "cl-clsparse" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-clsparse/2019-08-13/cl-clsparse-20190813-git.tgz";
-      sha256 = "0cmmwx2ka1jp5711x21knw3zi6kcpkpcs39dm62w82s97bv794gz";
-      system = "cl-clsparse";
-      asd = "cl-clsparse";
-    });
-    systems = [ "cl-clsparse" ];
-    lispLibs = [ (getAttr "cffi" pkgs) (getAttr "cffi-libffi" pkgs) ];
-  };
-  cl-cognito = {
-    pname = "cl-cognito";
-    version = "20181210-git";
-    asds = [ "cl-cognito" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-cognito/2018-12-10/cl-cognito-20181210-git.tgz";
-      sha256 = "0zy4yg4zggvxwbvkjkd89d2ps236kz6pvz90zn6gzq812wnidsd3";
-      system = "cl-cognito";
-      asd = "cl-cognito";
-    });
-    systems = [ "cl-cognito" ];
-    lispLibs = [ (getAttr "aws-foundation" pkgs) (getAttr "cl-base64" pkgs) (getAttr "cl-json-helper" pkgs) (getAttr "ironclad" pkgs) (getAttr "local-time" pkgs) ];
-  };
-  cl-coinpayments = {
-    pname = "cl-coinpayments";
-    version = "20210807-git";
-    asds = [ "cl-coinpayments" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-coinpayments/2021-08-07/cl-coinpayments-20210807-git.tgz";
-      sha256 = "1vgsh95vjqqg0a6lqg1ivs36yjx6ck8cqhsmlr5l3ldfd8yr65q7";
-      system = "cl-coinpayments";
-      asd = "cl-coinpayments";
-    });
-    systems = [ "cl-coinpayments" ];
-    lispLibs = [ (getAttr "babel" pkgs) (getAttr "str" pkgs) (getAttr "closer-mop" pkgs) (getAttr "dexador" pkgs) (getAttr "ironclad" pkgs) (getAttr "jonathan" pkgs) ];
-  };
-  cl-collider = {
-    pname = "cl-collider";
-    version = "20221106-git";
-    asds = [ "cl-collider" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-collider/2022-11-06/cl-collider-20221106-git.tgz";
-      sha256 = "03z11hcjvbawkli0bw90h4za7vvpm9pk7rh9gi6m2k7wwq2rsxk5";
-      system = "cl-collider";
-      asd = "cl-collider";
-    });
-    systems = [ "cl-collider" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "bordeaux-threads" pkgs) (getAttr "cffi" pkgs) (getAttr "sc-osc" pkgs) (getAttr "cl-ppcre" pkgs) (getAttr "flexi-streams" pkgs) (getAttr "named-readtables" pkgs) (getAttr "pileup" pkgs) (getAttr "simple-inferiors" pkgs) (getAttr "split-sequence" pkgs) ];
-  };
-  cl-colors = {
-    pname = "cl-colors";
-    version = "20180328-git";
-    asds = [ "cl-colors" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-colors/2018-03-28/cl-colors-20180328-git.tgz";
-      sha256 = "0l446lday4hybsm9bq3jli97fvv8jb1d33abg79vbylpwjmf3y9a";
-      system = "cl-colors";
-      asd = "cl-colors";
-    });
-    systems = [ "cl-colors" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "let-plus" pkgs) ];
-  };
-  cl-colors-tests = {
-    pname = "cl-colors-tests";
-    version = "20180328-git";
-    asds = [ "cl-colors-tests" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-colors/2018-03-28/cl-colors-20180328-git.tgz";
-      sha256 = "0l446lday4hybsm9bq3jli97fvv8jb1d33abg79vbylpwjmf3y9a";
-      system = "cl-colors-tests";
-      asd = "cl-colors";
-    });
-    systems = [ "cl-colors-tests" ];
-    lispLibs = [ (getAttr "cl-colors" pkgs) (getAttr "lift" pkgs) ];
-  };
-  cl-colors2 = {
-    pname = "cl-colors2";
-    version = "20211020-git";
-    asds = [ "cl-colors2" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-colors2/2021-10-20/cl-colors2-20211020-git.tgz";
-      sha256 = "0cpphlsscr1ks4fmji913xi9k3wcm2ndjb5923yjwx93ld1vfyhr";
-      system = "cl-colors2";
-      asd = "cl-colors2";
-    });
-    systems = [ "cl-colors2" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cl-ppcre" pkgs) ];
-  };
-  cl-colors2_slash_tests = {
-    pname = "cl-colors2_tests";
-    version = "20211020-git";
-    asds = [ "cl-colors2" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-colors2/2021-10-20/cl-colors2-20211020-git.tgz";
-      sha256 = "0cpphlsscr1ks4fmji913xi9k3wcm2ndjb5923yjwx93ld1vfyhr";
-      system = "cl-colors2";
-      asd = "cl-colors2";
-    });
-    systems = [ "cl-colors2/tests" ];
-    lispLibs = [ (getAttr "cl-colors2" pkgs) (getAttr "clunit2" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  cl-conllu = {
-    pname = "cl-conllu";
-    version = "20211209-git";
-    asds = [ "cl-conllu" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-conllu/2021-12-09/cl-conllu-20211209-git.tgz";
-      sha256 = "0n69k0apifnirs2g3rfdsxiwy6dimd9qqxaqywaingvbd7yn42jn";
-      system = "cl-conllu";
-      asd = "cl-conllu";
-    });
-    systems = [ "cl-conllu" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cl-log" pkgs) (getAttr "cl-markup" pkgs) (getAttr "cl-ppcre" pkgs) (getAttr "wilbur" pkgs) (getAttr "lispbuilder-lexer" pkgs) (getAttr "optima_dot_ppcre" pkgs) (getAttr "split-sequence" pkgs) (getAttr "uuid" pkgs) (getAttr "xmls" pkgs) (getAttr "yason" pkgs) ];
-  };
-  cl-conspack = {
-    pname = "cl-conspack";
-    version = "20170403-git";
-    asds = [ "cl-conspack" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-conspack/2017-04-03/cl-conspack-20170403-git.tgz";
-      sha256 = "0b7qzvsrpvnw12hqhjmz0b02sigj0kdjy55j4k7xzmj8684cs8bx";
-      system = "cl-conspack";
-      asd = "cl-conspack";
-    });
-    systems = [ "cl-conspack" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "closer-mop" pkgs) (getAttr "fast-io" pkgs) (getAttr "ieee-floats" pkgs) (getAttr "trivial-garbage" pkgs) (getAttr "trivial-utf-8" pkgs) ];
-  };
-  cl-conspack-test = {
-    pname = "cl-conspack-test";
-    version = "20170403-git";
-    asds = [ "cl-conspack-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-conspack/2017-04-03/cl-conspack-20170403-git.tgz";
-      sha256 = "0b7qzvsrpvnw12hqhjmz0b02sigj0kdjy55j4k7xzmj8684cs8bx";
-      system = "cl-conspack-test";
-      asd = "cl-conspack-test";
-    });
-    systems = [ "cl-conspack-test" ];
-    lispLibs = [ (getAttr "checkl" pkgs) (getAttr "cl-conspack" pkgs) (getAttr "fiveam" pkgs) ];
-  };
-  cl-cont = {
-    pname = "cl-cont";
-    version = "20110219-darcs";
-    asds = [ "cl-cont" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-cont/2011-02-19/cl-cont-20110219-darcs.tgz";
-      sha256 = "1zf8zvb0i6jm3hhfks4w74hibm6avgc6f9s1qwgjrn2bcik8lrvz";
-      system = "cl-cont";
-      asd = "cl-cont";
-    });
-    systems = [ "cl-cont" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "closer-mop" pkgs) ];
-  };
-  cl-cont-test = {
-    pname = "cl-cont-test";
-    version = "20110219-darcs";
-    asds = [ "cl-cont-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-cont/2011-02-19/cl-cont-20110219-darcs.tgz";
-      sha256 = "1zf8zvb0i6jm3hhfks4w74hibm6avgc6f9s1qwgjrn2bcik8lrvz";
-      system = "cl-cont-test";
-      asd = "cl-cont-test";
-    });
-    systems = [ "cl-cont-test" ];
-    lispLibs = [ (getAttr "cl-cont" pkgs) (getAttr "rt" pkgs) ];
-  };
-  cl-containers = {
-    pname = "cl-containers";
-    version = "20200427-git";
-    asds = [ "cl-containers" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-containers/2020-04-27/cl-containers-20200427-git.tgz";
-      sha256 = "18s6jfq11n8nv9k4biz32pm1s7y9zl054ry1gmdbcf39nisy377y";
-      system = "cl-containers";
-      asd = "cl-containers";
-    });
-    systems = [ "cl-containers" ];
-    lispLibs = [ (getAttr "asdf-system-connections" pkgs) (getAttr "metatilities-base" pkgs) ];
-  };
-  cl-containers-test = {
-    pname = "cl-containers-test";
-    version = "20200427-git";
-    asds = [ "cl-containers-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-containers/2020-04-27/cl-containers-20200427-git.tgz";
-      sha256 = "18s6jfq11n8nv9k4biz32pm1s7y9zl054ry1gmdbcf39nisy377y";
-      system = "cl-containers-test";
-      asd = "cl-containers-test";
-    });
-    systems = [ "cl-containers-test" ];
-    lispLibs = [ (getAttr "cl-containers" pkgs) (getAttr "lift" pkgs) ];
-  };
-  cl-containers_slash_with-moptilities = {
-    pname = "cl-containers_with-moptilities";
-    version = "20200427-git";
-    asds = [ "cl-containers" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-containers/2020-04-27/cl-containers-20200427-git.tgz";
-      sha256 = "18s6jfq11n8nv9k4biz32pm1s7y9zl054ry1gmdbcf39nisy377y";
-      system = "cl-containers";
-      asd = "cl-containers";
-    });
-    systems = [ "cl-containers/with-moptilities" ];
-    lispLibs = [ (getAttr "cl-containers" pkgs) (getAttr "moptilities" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  cl-containers_slash_with-utilities = {
-    pname = "cl-containers_with-utilities";
-    version = "20200427-git";
-    asds = [ "cl-containers" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-containers/2020-04-27/cl-containers-20200427-git.tgz";
-      sha256 = "18s6jfq11n8nv9k4biz32pm1s7y9zl054ry1gmdbcf39nisy377y";
-      system = "cl-containers";
-      asd = "cl-containers";
-    });
-    systems = [ "cl-containers/with-utilities" ];
-    lispLibs = [ (getAttr "cl-containers" pkgs) (getAttr "metatilities-base" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  cl-cookie = {
-    pname = "cl-cookie";
-    version = "20220707-git";
-    asds = [ "cl-cookie" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-cookie/2022-07-07/cl-cookie-20220707-git.tgz";
-      sha256 = "07hqamcdpdxmx2j7prawgl6cdr13b2jbrhrrhfik5n00ah4yw524";
-      system = "cl-cookie";
-      asd = "cl-cookie";
-    });
-    systems = [ "cl-cookie" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cl-ppcre" pkgs) (getAttr "local-time" pkgs) (getAttr "proc-parse" pkgs) (getAttr "quri" pkgs) ];
-  };
-  cl-cookie-test = {
-    pname = "cl-cookie-test";
-    version = "20220707-git";
-    asds = [ "cl-cookie-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-cookie/2022-07-07/cl-cookie-20220707-git.tgz";
-      sha256 = "07hqamcdpdxmx2j7prawgl6cdr13b2jbrhrrhfik5n00ah4yw524";
-      system = "cl-cookie-test";
-      asd = "cl-cookie-test";
-    });
-    systems = [ "cl-cookie-test" ];
-    lispLibs = [ (getAttr "cl-cookie" pkgs) (getAttr "prove" pkgs) (getAttr "prove-asdf" pkgs) ];
-  };
-  cl-coroutine = {
-    pname = "cl-coroutine";
-    version = "20160929-git";
-    asds = [ "cl-coroutine" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-coroutine/2016-09-29/cl-coroutine-20160929-git.tgz";
-      sha256 = "1cqdhdjxffgfs116l1swjlsmcbly0xgcgrckvaajd566idj9yj4l";
-      system = "cl-coroutine";
-      asd = "cl-coroutine";
-    });
-    systems = [ "cl-coroutine" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cl-cont" pkgs) ];
-  };
-  cl-coroutine-test = {
-    pname = "cl-coroutine-test";
-    version = "20160929-git";
-    asds = [ "cl-coroutine-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-coroutine/2016-09-29/cl-coroutine-20160929-git.tgz";
-      sha256 = "1cqdhdjxffgfs116l1swjlsmcbly0xgcgrckvaajd566idj9yj4l";
-      system = "cl-coroutine-test";
-      asd = "cl-coroutine-test";
-    });
-    systems = [ "cl-coroutine-test" ];
-    lispLibs = [ (getAttr "cl-coroutine" pkgs) (getAttr "cl-test-more" pkgs) ];
-  };
-  cl-coveralls = {
-    pname = "cl-coveralls";
-    version = "20210411-git";
-    asds = [ "cl-coveralls" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-coveralls/2021-04-11/cl-coveralls-20210411-git.tgz";
-      sha256 = "1n4jks92827xbi2zzy6gsx3r2gl97difl04da9wz94n9rjj3bcz0";
-      system = "cl-coveralls";
-      asd = "cl-coveralls";
-    });
-    systems = [ "cl-coveralls" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cl-ppcre" pkgs) (getAttr "dexador" pkgs) (getAttr "flexi-streams" pkgs) (getAttr "ironclad" pkgs) (getAttr "jonathan" pkgs) (getAttr "lquery" pkgs) (getAttr "split-sequence" pkgs) (getAttr "uiop" pkgs) ];
-  };
-  cl-coveralls-test = {
-    pname = "cl-coveralls-test";
-    version = "20210411-git";
-    asds = [ "cl-coveralls-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-coveralls/2021-04-11/cl-coveralls-20210411-git.tgz";
-      sha256 = "1n4jks92827xbi2zzy6gsx3r2gl97difl04da9wz94n9rjj3bcz0";
-      system = "cl-coveralls-test";
-      asd = "cl-coveralls-test";
-    });
-    systems = [ "cl-coveralls-test" ];
-    lispLibs = [ (getAttr "cl-coveralls" pkgs) (getAttr "prove" pkgs) (getAttr "prove-asdf" pkgs) ];
-  };
-  cl-covid19 = {
-    pname = "cl-covid19";
-    version = "20220331-git";
-    asds = [ "cl-covid19" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-covid19/2022-03-31/cl-covid19-20220331-git.tgz";
-      sha256 = "0nxdharz29nrdylrwnhgdayfsfwm0vd5g487mi4i5lly8q0i9vl0";
-      system = "cl-covid19";
-      asd = "cl-covid19";
-    });
-    systems = [ "cl-covid19" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cl-ascii-table" pkgs) (getAttr "cl-csv" pkgs) (getAttr "cl-migratum" pkgs) (getAttr "cl-migratum_dot_driver_dot_dbi" pkgs) (getAttr "cl-migratum_dot_provider_dot_local-path" pkgs) (getAttr "dexador" pkgs) (getAttr "djula" pkgs) (getAttr "jonathan" pkgs) (getAttr "quri" pkgs) (getAttr "tmpdir" pkgs) ];
-  };
-  cl-cpu-affinity = {
-    pname = "cl-cpu-affinity";
-    version = "20210411-git";
-    asds = [ "cl-cpu-affinity" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/femlisp/2021-04-11/femlisp-20210411-git.tgz";
-      sha256 = "08l2x1jq3vfhh8m14wijd8c78n589cy5hd2py2jfj3yfiqyipasa";
-      system = "cl-cpu-affinity";
-      asd = "cl-cpu-affinity";
-    });
-    systems = [ "cl-cpu-affinity" ];
-    lispLibs = [ (getAttr "cffi" pkgs) ];
-  };
-  cl-cpus = {
-    pname = "cl-cpus";
-    version = "20180430-git";
-    asds = [ "cl-cpus" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-cpus/2018-04-30/cl-cpus-20180430-git.tgz";
-      sha256 = "0sdaff9hpsx7bpkkkqavmxmrrlc2d61gmqjjgn8xchncng4a0rf8";
-      system = "cl-cpus";
-      asd = "cl-cpus";
-    });
-    systems = [ "cl-cpus" ];
-    lispLibs = [ (getAttr "cffi" pkgs) ];
-  };
-  cl-cram = {
-    pname = "cl-cram";
-    version = "20220707-git";
-    asds = [ "cl-cram" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-cram/2022-07-07/cl-cram-20220707-git.tgz";
-      sha256 = "1j2a3jw01dyyc8wp4y1rhwafsl7l0sq78r4gh846f57wflcbvxvk";
-      system = "cl-cram";
-      asd = "cl-cram";
-    });
-    systems = [ "cl-cram" ];
-    lispLibs = [  ];
-  };
-  cl-crc64 = {
-    pname = "cl-crc64";
-    version = "20140713-git";
-    asds = [ "cl-crc64" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-crc64/2014-07-13/cl-crc64-20140713-git.tgz";
-      sha256 = "1cqky5ps28r49z6ib4vjwfjpq3ml81p2ayf0nqppf2lc4vf3kb20";
-      system = "cl-crc64";
-      asd = "cl-crc64";
-    });
-    systems = [ "cl-crc64" ];
-    lispLibs = [  ];
-  };
-  cl-creditcard = {
-    pname = "cl-creditcard";
-    version = "20150113-git";
-    asds = [ "cl-creditcard" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-creditcard/2015-01-13/cl-creditcard-20150113-git.tgz";
-      sha256 = "1qq9r7q50k7jw6sv65aqi9xalaw8m6aqsbb0cgpjxv8wdhy934cr";
-      system = "cl-creditcard";
-      asd = "cl-creditcard";
-    });
-    systems = [ "cl-creditcard" ];
-    lispLibs = [ (getAttr "iterate" pkgs) ];
-  };
-  cl-cron = {
-    pname = "cl-cron";
-    version = "20221106-git";
-    asds = [ "cl-cron" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-cron/2022-11-06/cl-cron-20221106-git.tgz";
-      sha256 = "1yl7ajy8b2mf5i9f8x3458s4y00rkkpy70xbzz3fi08l9rp2sp3z";
-      system = "cl-cron";
-      asd = "cl-cron";
-    });
-    systems = [ "cl-cron" ];
-    lispLibs = [ (getAttr "bordeaux-threads" pkgs) ];
-  };
-  cl-css = {
-    pname = "cl-css";
-    version = "20140914-git";
-    asds = [ "cl-css" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-css/2014-09-14/cl-css-20140914-git.tgz";
-      sha256 = "1lc42zi2sw11fl2589sc19nr5sd2p0wy7wgvgwaggxa5f3ajhsmd";
-      system = "cl-css";
-      asd = "cl-css";
-    });
-    systems = [ "cl-css" ];
-    lispLibs = [  ];
-  };
-  cl-csv = {
-    pname = "cl-csv";
-    version = "20201016-git";
-    asds = [ "cl-csv" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-csv/2020-10-16/cl-csv-20201016-git.tgz";
-      sha256 = "0gcmlbwx5m3kwgk12qi80w08ak8fgdnvyia429fz6gnxmhg0k54x";
-      system = "cl-csv";
-      asd = "cl-csv";
-    });
-    systems = [ "cl-csv" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cl-interpol" pkgs) (getAttr "iterate" pkgs) ];
-  };
-  cl-csv-clsql = {
-    pname = "cl-csv-clsql";
-    version = "20201016-git";
-    asds = [ "cl-csv-clsql" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-csv/2020-10-16/cl-csv-20201016-git.tgz";
-      sha256 = "0gcmlbwx5m3kwgk12qi80w08ak8fgdnvyia429fz6gnxmhg0k54x";
-      system = "cl-csv-clsql";
-      asd = "cl-csv-clsql";
-    });
-    systems = [ "cl-csv-clsql" ];
-    lispLibs = [ (getAttr "cl-csv" pkgs) (getAttr "clsql-helper" pkgs) (getAttr "data-table-clsql" pkgs) ];
-  };
-  cl-csv-data-table = {
-    pname = "cl-csv-data-table";
-    version = "20201016-git";
-    asds = [ "cl-csv-data-table" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-csv/2020-10-16/cl-csv-20201016-git.tgz";
-      sha256 = "0gcmlbwx5m3kwgk12qi80w08ak8fgdnvyia429fz6gnxmhg0k54x";
-      system = "cl-csv-data-table";
-      asd = "cl-csv-data-table";
-    });
-    systems = [ "cl-csv-data-table" ];
-    lispLibs = [ (getAttr "cl-csv" pkgs) (getAttr "data-table" pkgs) ];
-  };
-  cl-csv_slash_speed-test = {
-    pname = "cl-csv_speed-test";
-    version = "20201016-git";
-    asds = [ "cl-csv" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-csv/2020-10-16/cl-csv-20201016-git.tgz";
-      sha256 = "0gcmlbwx5m3kwgk12qi80w08ak8fgdnvyia429fz6gnxmhg0k54x";
-      system = "cl-csv";
-      asd = "cl-csv";
-    });
-    systems = [ "cl-csv/speed-test" ];
-    lispLibs = [ (getAttr "cl-csv" pkgs) (getAttr "lisp-unit2" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  cl-csv_slash_test = {
-    pname = "cl-csv_test";
-    version = "20201016-git";
-    asds = [ "cl-csv" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-csv/2020-10-16/cl-csv-20201016-git.tgz";
-      sha256 = "0gcmlbwx5m3kwgk12qi80w08ak8fgdnvyia429fz6gnxmhg0k54x";
-      system = "cl-csv";
-      asd = "cl-csv";
-    });
-    systems = [ "cl-csv/test" ];
-    lispLibs = [ (getAttr "cl-csv" pkgs) (getAttr "lisp-unit2" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  cl-cuda = {
-    pname = "cl-cuda";
-    version = "20210807-git";
-    asds = [ "cl-cuda" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-cuda/2021-08-07/cl-cuda-20210807-git.tgz";
-      sha256 = "019m2khbiadm0yxfhbbfsidnmxq9spn3hn8r6vx4cw3i22jin0hg";
-      system = "cl-cuda";
-      asd = "cl-cuda";
-    });
-    systems = [ "cl-cuda" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cffi" pkgs) (getAttr "cffi-grovel" pkgs) (getAttr "cl-pattern" pkgs) (getAttr "cl-ppcre" pkgs) (getAttr "cl-reexport" pkgs) (getAttr "external-program" pkgs) (getAttr "osicat" pkgs) (getAttr "split-sequence" pkgs) ];
-  };
-  cl-cuda-examples = {
-    pname = "cl-cuda-examples";
-    version = "20210807-git";
-    asds = [ "cl-cuda-examples" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-cuda/2021-08-07/cl-cuda-20210807-git.tgz";
-      sha256 = "019m2khbiadm0yxfhbbfsidnmxq9spn3hn8r6vx4cw3i22jin0hg";
-      system = "cl-cuda-examples";
-      asd = "cl-cuda-examples";
-    });
-    systems = [ "cl-cuda-examples" ];
-    lispLibs = [ (getAttr "cl-cuda" pkgs) (getAttr "imago" pkgs) ];
-  };
-  cl-cuda-interop = {
-    pname = "cl-cuda-interop";
-    version = "20210807-git";
-    asds = [ "cl-cuda-interop" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-cuda/2021-08-07/cl-cuda-20210807-git.tgz";
-      sha256 = "019m2khbiadm0yxfhbbfsidnmxq9spn3hn8r6vx4cw3i22jin0hg";
-      system = "cl-cuda-interop";
-      asd = "cl-cuda-interop";
-    });
-    systems = [ "cl-cuda-interop" ];
-    lispLibs = [ (getAttr "cl-cuda" pkgs) (getAttr "cl-glu" pkgs) (getAttr "cl-glut" pkgs) (getAttr "cl-opengl" pkgs) ];
-  };
-  cl-cuda-interop-examples = {
-    pname = "cl-cuda-interop-examples";
-    version = "20210807-git";
-    asds = [ "cl-cuda-interop-examples" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-cuda/2021-08-07/cl-cuda-20210807-git.tgz";
-      sha256 = "019m2khbiadm0yxfhbbfsidnmxq9spn3hn8r6vx4cw3i22jin0hg";
-      system = "cl-cuda-interop-examples";
-      asd = "cl-cuda-interop-examples";
-    });
-    systems = [ "cl-cuda-interop-examples" ];
-    lispLibs = [ (getAttr "cl-cuda-interop" pkgs) ];
-  };
-  cl-cuda-misc = {
-    pname = "cl-cuda-misc";
-    version = "20210807-git";
-    asds = [ "cl-cuda-misc" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-cuda/2021-08-07/cl-cuda-20210807-git.tgz";
-      sha256 = "019m2khbiadm0yxfhbbfsidnmxq9spn3hn8r6vx4cw3i22jin0hg";
-      system = "cl-cuda-misc";
-      asd = "cl-cuda-misc";
-    });
-    systems = [ "cl-cuda-misc" ];
-    lispLibs = [ (getAttr "cl-emb" pkgs) (getAttr "local-time" pkgs) ];
-  };
-  cl-custom-hash-table = {
-    pname = "cl-custom-hash-table";
-    version = "20201220-git";
-    asds = [ "cl-custom-hash-table" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-custom-hash-table/2020-12-20/cl-custom-hash-table-20201220-git.tgz";
-      sha256 = "1lyp3lhqq3p2n04agaar5v50ai3vd6zvi6yq4phw3fcl2jzdjhk3";
-      system = "cl-custom-hash-table";
-      asd = "cl-custom-hash-table";
-    });
-    systems = [ "cl-custom-hash-table" ];
-    lispLibs = [  ];
-  };
-  cl-custom-hash-table-test = {
-    pname = "cl-custom-hash-table-test";
-    version = "20201220-git";
-    asds = [ "cl-custom-hash-table-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-custom-hash-table/2020-12-20/cl-custom-hash-table-20201220-git.tgz";
-      sha256 = "1lyp3lhqq3p2n04agaar5v50ai3vd6zvi6yq4phw3fcl2jzdjhk3";
-      system = "cl-custom-hash-table-test";
-      asd = "cl-custom-hash-table-test";
-    });
-    systems = [ "cl-custom-hash-table-test" ];
-    lispLibs = [ (getAttr "cl-custom-hash-table" pkgs) (getAttr "hu_dot_dwim_dot_stefil" pkgs) ];
-  };
-  cl-darksky = {
-    pname = "cl-darksky";
-    version = "20180711-git";
-    asds = [ "cl-darksky" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-darksky/2018-07-11/cl-darksky-20180711-git.tgz";
-      sha256 = "049rziv10z0ygvm0fi98jlxdd5xcqf9gp6ah7jwn9bcxwg5y0wcf";
-      system = "cl-darksky";
-      asd = "cl-darksky";
-    });
-    systems = [ "cl-darksky" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "dexador" pkgs) (getAttr "jonathan" pkgs) ];
-  };
-  cl-darksky-test = {
-    pname = "cl-darksky-test";
-    version = "20180711-git";
-    asds = [ "cl-darksky-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-darksky/2018-07-11/cl-darksky-20180711-git.tgz";
-      sha256 = "049rziv10z0ygvm0fi98jlxdd5xcqf9gp6ah7jwn9bcxwg5y0wcf";
-      system = "cl-darksky-test";
-      asd = "cl-darksky-test";
-    });
-    systems = [ "cl-darksky-test" ];
-    lispLibs = [ (getAttr "cl-darksky" pkgs) (getAttr "prove" pkgs) (getAttr "prove-asdf" pkgs) ];
-  };
-  cl-data-frame = {
-    pname = "cl-data-frame";
-    version = "20210531-git";
-    asds = [ "cl-data-frame" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-data-frame/2021-05-31/cl-data-frame-20210531-git.tgz";
-      sha256 = "04x5xqf7kyvpm1qdmklp3hgpifl86nw5rjr0qd7r5d4lz6vh9da9";
-      system = "cl-data-frame";
-      asd = "cl-data-frame";
-    });
-    systems = [ "cl-data-frame" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "anaphora" pkgs) (getAttr "array-operations" pkgs) (getAttr "cl-num-utils" pkgs) (getAttr "cl-slice" pkgs) (getAttr "let-plus" pkgs) ];
-  };
-  cl-data-frame-tests = {
-    pname = "cl-data-frame-tests";
-    version = "20210531-git";
-    asds = [ "cl-data-frame-tests" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-data-frame/2021-05-31/cl-data-frame-20210531-git.tgz";
-      sha256 = "04x5xqf7kyvpm1qdmklp3hgpifl86nw5rjr0qd7r5d4lz6vh9da9";
-      system = "cl-data-frame-tests";
-      asd = "cl-data-frame";
-    });
-    systems = [ "cl-data-frame-tests" ];
-    lispLibs = [ (getAttr "cl-data-frame" pkgs) (getAttr "clunit" pkgs) ];
-  };
-  cl-data-structures = {
-    pname = "cl-data-structures";
-    version = "20221106-git";
-    asds = [ "cl-data-structures" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-data-structures/2022-11-06/cl-data-structures-20221106-git.tgz";
-      sha256 = "04m537pdkjcpr1fhkmdvn0bh77ilwqa2sf43s6gv52s63drfws3l";
-      system = "cl-data-structures";
-      asd = "cl-data-structures";
-    });
-    systems = [ "cl-data-structures" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "bordeaux-threads" pkgs) (getAttr "cl-ppcre" pkgs) (getAttr "closer-mop" pkgs) (getAttr "documentation-utils-extensions" pkgs) (getAttr "flexichain" pkgs) (getAttr "iterate" pkgs) (getAttr "lparallel" pkgs) (getAttr "metabang-bind" pkgs) (getAttr "more-conditions" pkgs) (getAttr "serapeum" pkgs) (getAttr "trivial-garbage" pkgs) (getAttr "uiop" pkgs) ];
-  };
-  cl-data-structures-tests = {
-    pname = "cl-data-structures-tests";
-    version = "20221106-git";
-    asds = [ "cl-data-structures-tests" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-data-structures/2022-11-06/cl-data-structures-20221106-git.tgz";
-      sha256 = "04m537pdkjcpr1fhkmdvn0bh77ilwqa2sf43s6gv52s63drfws3l";
-      system = "cl-data-structures-tests";
-      asd = "cl-data-structures-tests";
-    });
-    systems = [ "cl-data-structures-tests" ];
-    lispLibs = [ (getAttr "cl-data-structures" pkgs) (getAttr "prove" pkgs) (getAttr "prove-asdf" pkgs) ];
-  };
-  cl-date-time-parser = {
-    pname = "cl-date-time-parser";
-    version = "20140713-git";
-    asds = [ "cl-date-time-parser" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-date-time-parser/2014-07-13/cl-date-time-parser-20140713-git.tgz";
-      sha256 = "0dswpbbb57jm609xxfah25dxxhjzc7qh5lr1a1ffkpms84l0r7m5";
-      system = "cl-date-time-parser";
-      asd = "cl-date-time-parser";
-    });
-    systems = [ "cl-date-time-parser" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "anaphora" pkgs) (getAttr "cl-ppcre" pkgs) (getAttr "local-time" pkgs) (getAttr "parse-float" pkgs) (getAttr "split-sequence" pkgs) ];
-  };
-  cl-dbi = {
-    pname = "cl-dbi";
-    version = "20211020-git";
-    asds = [ "cl-dbi" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-dbi/2021-10-20/cl-dbi-20211020-git.tgz";
-      sha256 = "0f8z7an8ssg8mdf9k781r4ygdppv798v6f08ibgpd8mv8a6491fg";
-      system = "cl-dbi";
-      asd = "cl-dbi";
-    });
-    systems = [ "cl-dbi" ];
-    lispLibs = [ (getAttr "dbi" pkgs) ];
-  };
-  cl-debug-print = {
-    pname = "cl-debug-print";
-    version = "20210807-git";
-    asds = [ "cl-debug-print" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-debug-print/2021-08-07/cl-debug-print-20210807-git.tgz";
-      sha256 = "1cm5nybmv0pq9s4lrwhd01rjj1wlcj1sjcrcakabi7w7b5zw4cyh";
-      system = "cl-debug-print";
-      asd = "cl-debug-print";
-    });
-    systems = [ "cl-debug-print" ];
-    lispLibs = [ (getAttr "cl-syntax" pkgs) ];
-  };
-  cl-debug-print-test = {
-    pname = "cl-debug-print-test";
-    version = "20210807-git";
-    asds = [ "cl-debug-print-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-debug-print/2021-08-07/cl-debug-print-20210807-git.tgz";
-      sha256 = "1cm5nybmv0pq9s4lrwhd01rjj1wlcj1sjcrcakabi7w7b5zw4cyh";
-      system = "cl-debug-print-test";
-      asd = "cl-debug-print-test";
-    });
-    systems = [ "cl-debug-print-test" ];
-    lispLibs = [ (getAttr "cl-debug-print" pkgs) (getAttr "prove" pkgs) (getAttr "prove-asdf" pkgs) ];
-  };
-  cl-dejavu = {
-    pname = "cl-dejavu";
-    version = "20210124-git";
-    asds = [ "cl-dejavu" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-dejavu/2021-01-24/cl-dejavu-20210124-git.tgz";
-      sha256 = "1lbxiq21bxj8r11c58cqskgn8gnl2p8q1ydkhdsv7i7xnhv2y7r0";
-      system = "cl-dejavu";
-      asd = "cl-dejavu";
-    });
-    systems = [ "cl-dejavu" ];
-    lispLibs = [  ];
-  };
-  cl-devil = {
-    pname = "cl-devil";
-    version = "20150302-git";
-    asds = [ "cl-devil" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-devil/2015-03-02/cl-devil-20150302-git.tgz";
-      sha256 = "1qdjb7xwzjkv99s8q0834lfdq4ch5j2ymrmqsvwzhg47ys17pvvf";
-      system = "cl-devil";
-      asd = "cl-devil";
-    });
-    systems = [ "cl-devil" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cffi" pkgs) ];
-  };
-  cl-diceware = {
-    pname = "cl-diceware";
-    version = "20150923-git";
-    asds = [ "cl-diceware" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-diceware/2015-09-23/cl-diceware-20150923-git.tgz";
-      sha256 = "0560ji51ksp8kngn2pyi41vw9zlnwiqj64ici43lzjx0qgv5v84l";
-      system = "cl-diceware";
-      asd = "cl-diceware";
-    });
-    systems = [ "cl-diceware" ];
-    lispLibs = [  ];
-  };
-  cl-difflib = {
-    pname = "cl-difflib";
-    version = "20130128-git";
-    asds = [ "cl-difflib" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-difflib/2013-01-28/cl-difflib-20130128-git.tgz";
-      sha256 = "08if0abhqg191xcz9s7xv8faqq51nswzp8hw423fkqjzr24pmq48";
-      system = "cl-difflib";
-      asd = "cl-difflib";
-    });
-    systems = [ "cl-difflib" ];
-    lispLibs = [  ];
-  };
-  cl-difflib-tests = {
-    pname = "cl-difflib-tests";
-    version = "20130128-git";
-    asds = [ "cl-difflib-tests" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-difflib/2013-01-28/cl-difflib-20130128-git.tgz";
-      sha256 = "08if0abhqg191xcz9s7xv8faqq51nswzp8hw423fkqjzr24pmq48";
-      system = "cl-difflib-tests";
-      asd = "cl-difflib-tests";
-    });
-    systems = [ "cl-difflib-tests" ];
-    lispLibs = [ (getAttr "cl-difflib" pkgs) ];
-  };
-  cl-digraph = {
-    pname = "cl-digraph";
-    version = "20211020-hg";
-    asds = [ "cl-digraph" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-digraph/2021-10-20/cl-digraph-20211020-hg.tgz";
-      sha256 = "1xzfrk86bp5k1d2kh4npnhmm8v4jy9dh0g0d2qcbz3n43j606zdp";
-      system = "cl-digraph";
-      asd = "cl-digraph";
-    });
-    systems = [ "cl-digraph" ];
-    lispLibs = [  ];
-  };
-  cl-digraph_dot_dot = {
-    pname = "cl-digraph.dot";
-    version = "20211020-hg";
-    asds = [ "cl-digraph.dot" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-digraph/2021-10-20/cl-digraph-20211020-hg.tgz";
-      sha256 = "1xzfrk86bp5k1d2kh4npnhmm8v4jy9dh0g0d2qcbz3n43j606zdp";
-      system = "cl-digraph.dot";
-      asd = "cl-digraph.dot";
-    });
-    systems = [ "cl-digraph.dot" ];
-    lispLibs = [ (getAttr "cl-digraph" pkgs) (getAttr "cl-dot" pkgs) ];
-  };
-  cl-digraph_dot_test = {
-    pname = "cl-digraph.test";
-    version = "20211020-hg";
-    asds = [ "cl-digraph.test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-digraph/2021-10-20/cl-digraph-20211020-hg.tgz";
-      sha256 = "1xzfrk86bp5k1d2kh4npnhmm8v4jy9dh0g0d2qcbz3n43j606zdp";
-      system = "cl-digraph.test";
-      asd = "cl-digraph.test";
-    });
-    systems = [ "cl-digraph.test" ];
-    lispLibs = [ (getAttr "_1am" pkgs) (getAttr "alexandria" pkgs) (getAttr "cl-digraph" pkgs) ];
-  };
-  cl-diskspace = {
-    pname = "cl-diskspace";
-    version = "20220331-git";
-    asds = [ "cl-diskspace" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-diskspace/2022-03-31/cl-diskspace-20220331-git.tgz";
-      sha256 = "0l19hxqw6b8i5i1jdbr45k1xib9axcwdagsp3y8wkb35g6wwc0s7";
-      system = "cl-diskspace";
-      asd = "cl-diskspace";
-    });
-    systems = [ "cl-diskspace" ];
-    lispLibs = [ (getAttr "cffi" pkgs) (getAttr "cffi-grovel" pkgs) (getAttr "cl-ppcre" pkgs) (getAttr "uiop" pkgs) ];
-  };
-  cl-disque = {
-    pname = "cl-disque";
-    version = "20171227-git";
-    asds = [ "cl-disque" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-disque/2017-12-27/cl-disque-20171227-git.tgz";
-      sha256 = "0z26ls9vzlq43fwn307nb7xvqck5h3l9yygf93b0filki83krg3s";
-      system = "cl-disque";
-      asd = "cl-disque";
-    });
-    systems = [ "cl-disque" ];
-    lispLibs = [ (getAttr "babel" pkgs) (getAttr "cl-ppcre" pkgs) (getAttr "flexi-streams" pkgs) (getAttr "rutils" pkgs) (getAttr "usocket" pkgs) ];
-  };
-  cl-disque-test = {
-    pname = "cl-disque-test";
-    version = "20171227-git";
-    asds = [ "cl-disque-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-disque/2017-12-27/cl-disque-20171227-git.tgz";
-      sha256 = "0z26ls9vzlq43fwn307nb7xvqck5h3l9yygf93b0filki83krg3s";
-      system = "cl-disque-test";
-      asd = "cl-disque-test";
-    });
-    systems = [ "cl-disque-test" ];
-    lispLibs = [ (getAttr "cl-disque" pkgs) (getAttr "prove" pkgs) (getAttr "prove-asdf" pkgs) ];
-  };
-  cl-djula-svg = {
-    pname = "cl-djula-svg";
-    version = "20221106-git";
-    asds = [ "cl-djula-svg" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-djula-svg/2022-11-06/cl-djula-svg-20221106-git.tgz";
-      sha256 = "1jxgngr51ars234by4vnczfqmkwi2iy94sdxnj3pkjrdximy5any";
-      system = "cl-djula-svg";
-      asd = "cl-djula-svg";
-    });
-    systems = [ "cl-djula-svg" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "xmls" pkgs) ];
-  };
-  cl-djula-svg_slash_tests = {
-    pname = "cl-djula-svg_tests";
-    version = "20221106-git";
-    asds = [ "cl-djula-svg" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-djula-svg/2022-11-06/cl-djula-svg-20221106-git.tgz";
-      sha256 = "1jxgngr51ars234by4vnczfqmkwi2iy94sdxnj3pkjrdximy5any";
-      system = "cl-djula-svg";
-      asd = "cl-djula-svg";
-    });
-    systems = [ "cl-djula-svg/tests" ];
-    lispLibs = [ (getAttr "cl-djula-svg" pkgs) (getAttr "rove" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  cl-djula-tailwind = {
-    pname = "cl-djula-tailwind";
-    version = "20221106-git";
-    asds = [ "cl-djula-tailwind" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-djula-tailwind/2022-11-06/cl-djula-tailwind-20221106-git.tgz";
-      sha256 = "059mfgh53gpj74rgr7b61fnm24bwx8hdrw15mjk687y9sna3avda";
-      system = "cl-djula-tailwind";
-      asd = "cl-djula-tailwind";
-    });
-    systems = [ "cl-djula-tailwind" ];
-    lispLibs = [ (getAttr "cl-css" pkgs) (getAttr "cl-minify-css" pkgs) (getAttr "cl-ppcre" pkgs) (getAttr "djula" pkgs) ];
-  };
-  cl-djula-tailwind_slash_tests = {
-    pname = "cl-djula-tailwind_tests";
-    version = "20221106-git";
-    asds = [ "cl-djula-tailwind" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-djula-tailwind/2022-11-06/cl-djula-tailwind-20221106-git.tgz";
-      sha256 = "059mfgh53gpj74rgr7b61fnm24bwx8hdrw15mjk687y9sna3avda";
-      system = "cl-djula-tailwind";
-      asd = "cl-djula-tailwind";
-    });
-    systems = [ "cl-djula-tailwind/tests" ];
-    lispLibs = [ (getAttr "cl-djula-tailwind" pkgs) (getAttr "rove" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  cl-dot = {
-    pname = "cl-dot";
-    version = "20220707-git";
-    asds = [ "cl-dot" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-dot/2022-07-07/cl-dot-20220707-git.tgz";
-      sha256 = "0mcvzqfcg5rzr8rz8aa2yr2jl3ifflaksvps08zj71hbhiacqpxa";
-      system = "cl-dot";
-      asd = "cl-dot";
-    });
-    systems = [ "cl-dot" ];
-    lispLibs = [ (getAttr "uiop" pkgs) ];
-  };
-  cl-dotenv = {
-    pname = "cl-dotenv";
-    version = "20181018-git";
-    asds = [ "cl-dotenv" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-dotenv/2018-10-18/cl-dotenv-20181018-git.tgz";
-      sha256 = "0cdbk886aizsnqqs3z4jfn8nyrnxj4yb3y00av49xc4h83h6xn53";
-      system = "cl-dotenv";
-      asd = "cl-dotenv";
-    });
-    systems = [ "cl-dotenv" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "serapeum" pkgs) ];
-  };
-  cl-dotenv-test = {
-    pname = "cl-dotenv-test";
-    version = "20181018-git";
-    asds = [ "cl-dotenv-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-dotenv/2018-10-18/cl-dotenv-20181018-git.tgz";
-      sha256 = "0cdbk886aizsnqqs3z4jfn8nyrnxj4yb3y00av49xc4h83h6xn53";
-      system = "cl-dotenv-test";
-      asd = "cl-dotenv-test";
-    });
-    systems = [ "cl-dotenv-test" ];
-    lispLibs = [ (getAttr "cl-dotenv" pkgs) (getAttr "prove" pkgs) (getAttr "prove-asdf" pkgs) ];
-  };
-  cl-drawille = {
-    pname = "cl-drawille";
-    version = "20210807-git";
-    asds = [ "cl-drawille" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-drawille/2021-08-07/cl-drawille-20210807-git.tgz";
-      sha256 = "0wmiz0c7h2zsfj7inzzn8jivnfsc94rq8pczfi44h36n2jg6hdys";
-      system = "cl-drawille";
-      asd = "cl-drawille";
-    });
-    systems = [ "cl-drawille" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cffi" pkgs) (getAttr "osicat" pkgs) ];
-  };
-  cl-drawille_slash_examples = {
-    pname = "cl-drawille_examples";
-    version = "20210807-git";
-    asds = [ "cl-drawille" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-drawille/2021-08-07/cl-drawille-20210807-git.tgz";
-      sha256 = "0wmiz0c7h2zsfj7inzzn8jivnfsc94rq8pczfi44h36n2jg6hdys";
-      system = "cl-drawille";
-      asd = "cl-drawille";
-    });
-    systems = [ "cl-drawille/examples" ];
-    lispLibs = [ (getAttr "cl-drawille" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  cl-drawille_slash_examples-animations = {
-    pname = "cl-drawille_examples-animations";
-    version = "20210807-git";
-    asds = [ "cl-drawille" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-drawille/2021-08-07/cl-drawille-20210807-git.tgz";
-      sha256 = "0wmiz0c7h2zsfj7inzzn8jivnfsc94rq8pczfi44h36n2jg6hdys";
-      system = "cl-drawille";
-      asd = "cl-drawille";
-    });
-    systems = [ "cl-drawille/examples-animations" ];
-    lispLibs = [ (getAttr "cl-charms" pkgs) (getAttr "cl-drawille" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  cl-drm = {
-    pname = "cl-drm";
-    version = "20161204-git";
-    asds = [ "cl-drm" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-drm/2016-12-04/cl-drm-20161204-git.tgz";
-      sha256 = "018jsdi9hs71x14mq18k08hwrgdvvbc2yqbqww6gara0bg9cl3l6";
-      system = "cl-drm";
-      asd = "cl-drm";
-    });
-    systems = [ "cl-drm" ];
-    lispLibs = [ (getAttr "cffi" pkgs) ];
-  };
-  cl-dropbox = {
-    pname = "cl-dropbox";
-    version = "20150608-git";
-    asds = [ "cl-dropbox" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-dropbox/2015-06-08/cl-dropbox-20150608-git.tgz";
-      sha256 = "09giwr1wlz42flrpy71gv60p53nixjk9jaj4lirgf59dkh718f9x";
-      system = "cl-dropbox";
-      asd = "cl-dropbox";
-    });
-    systems = [ "cl-dropbox" ];
-    lispLibs = [ (getAttr "cl-json" pkgs) (getAttr "cl-oauth" pkgs) (getAttr "cl-ppcre" pkgs) (getAttr "drakma" pkgs) ];
-  };
-  cl-dsl = {
-    pname = "cl-dsl";
-    version = "20130720-git";
-    asds = [ "cl-dsl" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-dsl/2013-07-20/cl-dsl-20130720-git.tgz";
-      sha256 = "1bj5yp20r8z6gi6rpf88kpy4i06c8i2d3cg5sjlq7d1ninkb4gg4";
-      system = "cl-dsl";
-      asd = "cl-dsl";
-    });
-    systems = [ "cl-dsl" ];
-    lispLibs = [  ];
-  };
-  cl-dsl-tests = {
-    pname = "cl-dsl-tests";
-    version = "20130720-git";
-    asds = [ "cl-dsl-tests" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-dsl/2013-07-20/cl-dsl-20130720-git.tgz";
-      sha256 = "1bj5yp20r8z6gi6rpf88kpy4i06c8i2d3cg5sjlq7d1ninkb4gg4";
-      system = "cl-dsl-tests";
-      asd = "cl-dsl";
-    });
-    systems = [ "cl-dsl-tests" ];
-    lispLibs = [ (getAttr "cl-dsl" pkgs) (getAttr "eos" pkgs) ];
-  };
-  cl-durian = {
-    pname = "cl-durian";
-    version = "20150608-git";
-    asds = [ "cl-durian" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-durian/2015-06-08/cl-durian-20150608-git.tgz";
-      sha256 = "0s89gr5gwwkyirrv7l5fzk9ws7fhy087c3myksblsh00z1xcrvng";
-      system = "cl-durian";
-      asd = "cl-durian";
-    });
-    systems = [ "cl-durian" ];
-    lispLibs = [  ];
-  };
-  cl-earley-parser = {
-    pname = "cl-earley-parser";
-    version = "20211020-git";
-    asds = [ "cl-earley-parser" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-earley-parser/2021-10-20/cl-earley-parser-20211020-git.tgz";
-      sha256 = "1pkry3ynxn2y3nf13lc3zjqgf4hx43d9zb0w0m34s51xd4xp2h1x";
-      system = "cl-earley-parser";
-      asd = "cl-earley-parser";
-    });
-    systems = [ "cl-earley-parser" ];
-    lispLibs = [ (getAttr "split-sequence" pkgs) ];
-  };
-  cl-ecma-48 = {
-    pname = "cl-ecma-48";
-    version = "20200218-http";
-    asds = [ "cl-ecma-48" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-ecma-48/2020-02-18/cl-ecma-48-20200218-http.tgz";
-      sha256 = "1y3srzahci25qp959b87m82d1i1i8jmq039yp9nf0hifxyhw6dgy";
-      system = "cl-ecma-48";
-      asd = "cl-ecma-48";
-    });
-    systems = [ "cl-ecma-48" ];
-    lispLibs = [  ];
-  };
-  cl-egl = {
-    pname = "cl-egl";
-    version = "20190521-git";
-    asds = [ "cl-egl" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-egl/2019-05-21/cl-egl-20190521-git.tgz";
-      sha256 = "19shhzmdc9f1128slc9m4ns6zraka99awqgb4dkrwzgv7w3miqfl";
-      system = "cl-egl";
-      asd = "cl-egl";
-    });
-    systems = [ "cl-egl" ];
-    lispLibs = [ (getAttr "cffi" pkgs) ];
-  };
-  cl-elastic = {
-    pname = "cl-elastic";
-    version = "20200218-git";
-    asds = [ "cl-elastic" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-elastic/2020-02-18/cl-elastic-20200218-git.tgz";
-      sha256 = "107ha226n3mxzvm0cp8kvgybcv4rr0b4lwik4f4j7lrhz6xvnncq";
-      system = "cl-elastic";
-      asd = "cl-elastic";
-    });
-    systems = [ "cl-elastic" ];
-    lispLibs = [ (getAttr "drakma" pkgs) (getAttr "named-readtables" pkgs) (getAttr "yason" pkgs) ];
-  };
-  cl-elastic-test = {
-    pname = "cl-elastic-test";
-    version = "20200218-git";
-    asds = [ "cl-elastic-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-elastic/2020-02-18/cl-elastic-20200218-git.tgz";
-      sha256 = "107ha226n3mxzvm0cp8kvgybcv4rr0b4lwik4f4j7lrhz6xvnncq";
-      system = "cl-elastic-test";
-      asd = "cl-elastic-test";
-    });
-    systems = [ "cl-elastic-test" ];
-    lispLibs = [ (getAttr "cl-elastic" pkgs) (getAttr "named-readtables" pkgs) (getAttr "parachute" pkgs) ];
-  };
-  cl-emacs-if = {
-    pname = "cl-emacs-if";
-    version = "20120305-git";
-    asds = [ "cl-emacs-if" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-emacs-if/2012-03-05/cl-emacs-if-20120305-git.tgz";
-      sha256 = "0br3jvihq24ymqjn2r2qnl3l099r329bsqh18nmkk3yw3kclrcfv";
-      system = "cl-emacs-if";
-      asd = "cl-emacs-if";
-    });
-    systems = [ "cl-emacs-if" ];
-    lispLibs = [  ];
-  };
-  cl-emb = {
-    pname = "cl-emb";
-    version = "20190521-git";
-    asds = [ "cl-emb" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-emb/2019-05-21/cl-emb-20190521-git.tgz";
-      sha256 = "1xcm31n7afh5316lwz8iqbjx7kn5lw0l11arg8mhdmkx42aj4gkk";
-      system = "cl-emb";
-      asd = "cl-emb";
-    });
-    systems = [ "cl-emb" ];
-    lispLibs = [ (getAttr "cl-ppcre" pkgs) ];
-  };
-  cl-emoji = {
-    pname = "cl-emoji";
-    version = "20200218-git";
-    asds = [ "cl-emoji" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-emoji/2020-02-18/cl-emoji-20200218-git.tgz";
-      sha256 = "1v91kzx42qyjm936frvfsr0cgnj9g197x78xlda6x7x6xri2r9gm";
-      system = "cl-emoji";
-      asd = "cl-emoji";
-    });
-    systems = [ "cl-emoji" ];
-    lispLibs = [  ];
-  };
-  cl-emoji-test = {
-    pname = "cl-emoji-test";
-    version = "20200218-git";
-    asds = [ "cl-emoji-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-emoji/2020-02-18/cl-emoji-20200218-git.tgz";
-      sha256 = "1v91kzx42qyjm936frvfsr0cgnj9g197x78xlda6x7x6xri2r9gm";
-      system = "cl-emoji-test";
-      asd = "cl-emoji-test";
-    });
-    systems = [ "cl-emoji-test" ];
-    lispLibs = [ (getAttr "cl-emoji" pkgs) (getAttr "prove" pkgs) (getAttr "prove-asdf" pkgs) ];
-  };
-  cl-env = {
-    pname = "cl-env";
-    version = "20180430-git";
-    asds = [ "cl-env" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-env/2018-04-30/cl-env-20180430-git.tgz";
-      sha256 = "1r0d004gr1za9ib53jhxkx315wd4av0ar2063dcvs9g4nahk2d07";
-      system = "cl-env";
-      asd = "cl-env";
-    });
-    systems = [ "cl-env" ];
-    lispLibs = [  ];
-  };
-  cl-env_slash_test = {
-    pname = "cl-env_test";
-    version = "20180430-git";
-    asds = [ "cl-env" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-env/2018-04-30/cl-env-20180430-git.tgz";
-      sha256 = "1r0d004gr1za9ib53jhxkx315wd4av0ar2063dcvs9g4nahk2d07";
-      system = "cl-env";
-      asd = "cl-env";
-    });
-    systems = [ "cl-env/test" ];
-    lispLibs = [ (getAttr "cl-env" pkgs) (getAttr "lisp-unit" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  cl-environments = {
-    pname = "cl-environments";
-    version = "20211020-git";
-    asds = [ "cl-environments" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-environments/2021-10-20/cl-environments-20211020-git.tgz";
-      sha256 = "0k3f1sldd6nwphz80vc4k28z9g56rylln4admag628cyswx4qz99";
-      system = "cl-environments";
-      asd = "cl-environments";
-    });
-    systems = [ "cl-environments" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "anaphora" pkgs) (getAttr "collectors" pkgs) (getAttr "optima" pkgs) (getAttr "parse-declarations-1_dot_0" pkgs) ];
-  };
-  cl-environments_slash_test = {
-    pname = "cl-environments_test";
-    version = "20211020-git";
-    asds = [ "cl-environments" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-environments/2021-10-20/cl-environments-20211020-git.tgz";
-      sha256 = "0k3f1sldd6nwphz80vc4k28z9g56rylln4admag628cyswx4qz99";
-      system = "cl-environments";
-      asd = "cl-environments";
-    });
-    systems = [ "cl-environments/test" ];
-    lispLibs = [ (getAttr "cl-environments" pkgs) (getAttr "fiveam" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  cl-epoch = {
-    pname = "cl-epoch";
-    version = "20181210-git";
-    asds = [ "cl-epoch" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-epoch/2018-12-10/cl-epoch-20181210-git.tgz";
-      sha256 = "091p6j5l85afzcm3m9myxzr8j3hiwh0iyj8w0sgld85n2ykbbird";
-      system = "cl-epoch";
-      asd = "cl-epoch";
-    });
-    systems = [ "cl-epoch" ];
-    lispLibs = [  ];
-  };
-  cl-etcd = {
-    pname = "cl-etcd";
-    version = "20220707-git";
-    asds = [ "cl-etcd" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-etcd/2022-07-07/cl-etcd-20220707-git.tgz";
-      sha256 = "0g4lkmzddg5hbdxc407w5y7z71p1swrifih9hf3g9jx3hbj3ci37";
-      system = "cl-etcd";
-      asd = "cl-etcd";
-    });
-    systems = [ "cl-etcd" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "async-process" pkgs) (getAttr "bordeaux-threads" pkgs) (getAttr "cl-base64" pkgs) (getAttr "cl-json" pkgs) (getAttr "cl-ppcre" pkgs) (getAttr "str" pkgs) (getAttr "drakma" pkgs) (getAttr "flexi-streams" pkgs) (getAttr "split-sequence" pkgs) ];
-  };
-  cl-events = {
-    pname = "cl-events";
-    version = "20160318-git";
-    asds = [ "cl-events" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-events/2016-03-18/cl-events-20160318-git.tgz";
-      sha256 = "1r847q1bwblnb2395dsydylr9nxgjx7gdwc9dx1051zhvi9in36g";
-      system = "cl-events";
-      asd = "cl-events";
-    });
-    systems = [ "cl-events" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "blackbird" pkgs) (getAttr "iterate" pkgs) (getAttr "log4cl" pkgs) (getAttr "lparallel" pkgs) ];
-  };
-  cl-events_dot_test = {
-    pname = "cl-events.test";
-    version = "20160318-git";
-    asds = [ "cl-events.test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-events/2016-03-18/cl-events-20160318-git.tgz";
-      sha256 = "1r847q1bwblnb2395dsydylr9nxgjx7gdwc9dx1051zhvi9in36g";
-      system = "cl-events.test";
-      asd = "cl-events.test";
-    });
-    systems = [ "cl-events.test" ];
-    lispLibs = [ (getAttr "cl-events" pkgs) (getAttr "log4cl" pkgs) (getAttr "mw-equiv" pkgs) (getAttr "prove" pkgs) (getAttr "prove-asdf" pkgs) ];
-  };
-  cl-ewkb = {
-    pname = "cl-ewkb";
-    version = "20110619-git";
-    asds = [ "cl-ewkb" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-ewkb/2011-06-19/cl-ewkb-20110619-git.tgz";
-      sha256 = "1mk5j34m9gkwl7c4d464l42gclxlrcpifp2nq41z3fsfl8badn6w";
-      system = "cl-ewkb";
-      asd = "cl-ewkb";
-    });
-    systems = [ "cl-ewkb" ];
-    lispLibs = [ (getAttr "flexi-streams" pkgs) (getAttr "ieee-floats" pkgs) ];
-  };
-  cl-ewkb-tests = {
-    pname = "cl-ewkb-tests";
-    version = "20110619-git";
-    asds = [ "cl-ewkb-tests" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-ewkb/2011-06-19/cl-ewkb-20110619-git.tgz";
-      sha256 = "1mk5j34m9gkwl7c4d464l42gclxlrcpifp2nq41z3fsfl8badn6w";
-      system = "cl-ewkb-tests";
-      asd = "cl-ewkb";
-    });
-    systems = [ "cl-ewkb-tests" ];
-    lispLibs = [ (getAttr "cl-ewkb" pkgs) (getAttr "postmodern" pkgs) ];
-  };
-  cl-factoring = {
-    pname = "cl-factoring";
-    version = "20221106-git";
-    asds = [ "cl-factoring" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-factoring/2022-11-06/cl-factoring-20221106-git.tgz";
-      sha256 = "0vn3kb8mmi93pr76lx1mbwp7qc2krzb0ayzcrffwq2aw2q201fhd";
-      system = "cl-factoring";
-      asd = "cl-factoring";
-    });
-    systems = [ "cl-factoring" ];
-    lispLibs = [ (getAttr "cl-primality" pkgs) (getAttr "iterate" pkgs) ];
-  };
-  cl-fad = {
-    pname = "cl-fad";
-    version = "20220220-git";
-    asds = [ "cl-fad" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-fad/2022-02-20/cl-fad-20220220-git.tgz";
-      sha256 = "0a1xqldrq170lflnns3xp6swpnvsvllf5vq0h7sz8jqh4riqlny6";
-      system = "cl-fad";
-      asd = "cl-fad";
-    });
-    systems = [ "cl-fad" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "bordeaux-threads" pkgs) ];
-  };
-  cl-fad_slash_test = {
-    pname = "cl-fad_test";
-    version = "20220220-git";
-    asds = [ "cl-fad" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-fad/2022-02-20/cl-fad-20220220-git.tgz";
-      sha256 = "0a1xqldrq170lflnns3xp6swpnvsvllf5vq0h7sz8jqh4riqlny6";
-      system = "cl-fad";
-      asd = "cl-fad";
-    });
-    systems = [ "cl-fad/test" ];
-    lispLibs = [ (getAttr "cl-fad" pkgs) (getAttr "cl-ppcre" pkgs) (getAttr "unit-test" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  cl-fam = {
-    pname = "cl-fam";
-    version = "20121125-git";
-    asds = [ "cl-fam" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-fam/2012-11-25/cl-fam-20121125-git.tgz";
-      sha256 = "1imv87imhxvigghx3l28kbsldz6hpqd32280wjwffqwvadhx0gng";
-      system = "cl-fam";
-      asd = "cl-fam";
-    });
-    systems = [ "cl-fam" ];
-    lispLibs = [ (getAttr "cffi" pkgs) (getAttr "cffi-grovel" pkgs) (getAttr "trivial-garbage" pkgs) ];
-  };
-  cl-fastcgi = {
-    pname = "cl-fastcgi";
-    version = "20210124-git";
-    asds = [ "cl-fastcgi" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-fastcgi/2021-01-24/cl-fastcgi-20210124-git.tgz";
-      sha256 = "0xgmhx766q4nmrvn5z7ag3ikpr9phlh8ypi8b14azshq9lqbq0m7";
-      system = "cl-fastcgi";
-      asd = "cl-fastcgi";
-    });
-    systems = [ "cl-fastcgi" ];
-    lispLibs = [ (getAttr "cffi" pkgs) (getAttr "usocket" pkgs) ];
-  };
-  cl-fbclient = {
-    pname = "cl-fbclient";
-    version = "20140113-git";
-    asds = [ "cl-fbclient" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-fbclient/2014-01-13/cl-fbclient-20140113-git.tgz";
-      sha256 = "1q2dwizrjnal3fdcdgim4kdq0dma71p3s8w6i8bjkg4fs49k5p9j";
-      system = "cl-fbclient";
-      asd = "cl-fbclient";
-    });
-    systems = [ "cl-fbclient" ];
-    lispLibs = [ (getAttr "cffi" pkgs) ];
-  };
-  cl-feedparser = {
-    pname = "cl-feedparser";
-    version = "20211020-git";
-    asds = [ "cl-feedparser" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-feedparser/2021-10-20/cl-feedparser-20211020-git.tgz";
-      sha256 = "1g84w89c04d1r734bmrrmy0kazm8d5di85434byf319dq8zma29v";
-      system = "cl-feedparser";
-      asd = "cl-feedparser";
-    });
-    systems = [ "cl-feedparser" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "anaphora" pkgs) (getAttr "asdf-package-system" pkgs) (getAttr "cl-html5-parser" pkgs) (getAttr "cl-ppcre" pkgs) (getAttr "fset" pkgs) (getAttr "fxml" pkgs) (getAttr "local-time" pkgs) (getAttr "net-telent-date" pkgs) (getAttr "plump" pkgs) (getAttr "quri" pkgs) (getAttr "serapeum" pkgs) ];
-  };
-  cl-feedparser-tests = {
-    pname = "cl-feedparser-tests";
-    version = "20211020-git";
-    asds = [ "cl-feedparser-tests" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-feedparser/2021-10-20/cl-feedparser-20211020-git.tgz";
-      sha256 = "1g84w89c04d1r734bmrrmy0kazm8d5di85434byf319dq8zma29v";
-      system = "cl-feedparser-tests";
-      asd = "cl-feedparser-tests";
-    });
-    systems = [ "cl-feedparser-tests" ];
-    lispLibs = [ (getAttr "cl-feedparser" pkgs) (getAttr "fiveam" pkgs) (getAttr "fxml" pkgs) (getAttr "local-time" pkgs) ];
-  };
-  cl-feedparser_slash_test = {
-    pname = "cl-feedparser_test";
-    version = "20211020-git";
-    asds = [ "cl-feedparser" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-feedparser/2021-10-20/cl-feedparser-20211020-git.tgz";
-      sha256 = "1g84w89c04d1r734bmrrmy0kazm8d5di85434byf319dq8zma29v";
-      system = "cl-feedparser";
-      asd = "cl-feedparser";
-    });
-    systems = [ "cl-feedparser/test" ];
-    lispLibs = [ (getAttr "cl-feedparser" pkgs) (getAttr "fiveam" pkgs) (getAttr "fxml" pkgs) (getAttr "local-time" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  cl-fix = {
-    pname = "cl-fix";
-    version = "20220220-git";
-    asds = [ "cl-fix" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-fix/2022-02-20/cl-fix-20220220-git.tgz";
-      sha256 = "19mfvv4d88nw8x0zmqdpaa98cc6w19ksi4ayxkkzgd7i6azknm8n";
-      system = "cl-fix";
-      asd = "cl-fix";
-    });
-    systems = [ "cl-fix" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "arrow-macros" pkgs) (getAttr "bordeaux-threads" pkgs) (getAttr "cl-ppcre" pkgs) (getAttr "local-time" pkgs) (getAttr "log4cl" pkgs) (getAttr "parse-number" pkgs) (getAttr "usocket" pkgs) ];
-  };
-  cl-fix_slash_fix44 = {
-    pname = "cl-fix_fix44";
-    version = "20220220-git";
-    asds = [ "cl-fix" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-fix/2022-02-20/cl-fix-20220220-git.tgz";
-      sha256 = "19mfvv4d88nw8x0zmqdpaa98cc6w19ksi4ayxkkzgd7i6azknm8n";
-      system = "cl-fix";
-      asd = "cl-fix";
-    });
-    systems = [ "cl-fix/fix44" ];
-    lispLibs = [ (getAttr "cl-fix" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  cl-fix_slash_test = {
-    pname = "cl-fix_test";
-    version = "20220220-git";
-    asds = [ "cl-fix" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-fix/2022-02-20/cl-fix-20220220-git.tgz";
-      sha256 = "19mfvv4d88nw8x0zmqdpaa98cc6w19ksi4ayxkkzgd7i6azknm8n";
-      system = "cl-fix";
-      asd = "cl-fix";
-    });
-    systems = [ "cl-fix/test" ];
-    lispLibs = [ (getAttr "cl-fix" pkgs) (getAttr "fiveam" pkgs) (getAttr "trivial-gray-streams" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  cl-fixtures = {
-    pname = "cl-fixtures";
-    version = "20200325-git";
-    asds = [ "cl-fixtures" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-fixtures/2020-03-25/cl-fixtures-20200325-git.tgz";
-      sha256 = "01z8brw32lv8lqn6r9srwrna5gkd4cyncpbpg6pc0khgdxzpzaag";
-      system = "cl-fixtures";
-      asd = "cl-fixtures";
-    });
-    systems = [ "cl-fixtures" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) ];
-  };
-  cl-fixtures-test = {
-    pname = "cl-fixtures-test";
-    version = "20200325-git";
-    asds = [ "cl-fixtures-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-fixtures/2020-03-25/cl-fixtures-20200325-git.tgz";
-      sha256 = "01z8brw32lv8lqn6r9srwrna5gkd4cyncpbpg6pc0khgdxzpzaag";
-      system = "cl-fixtures-test";
-      asd = "cl-fixtures-test";
-    });
-    systems = [ "cl-fixtures-test" ];
-    lispLibs = [ (getAttr "cl-fixtures" pkgs) (getAttr "incf-cl" pkgs) (getAttr "prove" pkgs) (getAttr "prove-asdf" pkgs) (getAttr "rutils" pkgs) ];
-  };
-  cl-flac = {
-    pname = "cl-flac";
-    version = "20190710-git";
-    asds = [ "cl-flac" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-flac/2019-07-10/cl-flac-20190710-git.tgz";
-      sha256 = "1dgr5xqf175hzq3sxpbixxia2k2g3rz0pn6msch4dnvk7a1naqlc";
-      system = "cl-flac";
-      asd = "cl-flac";
-    });
-    systems = [ "cl-flac" ];
-    lispLibs = [ (getAttr "cffi" pkgs) (getAttr "documentation-utils" pkgs) (getAttr "trivial-features" pkgs) (getAttr "trivial-garbage" pkgs) ];
-  };
-  cl-flow = {
-    pname = "cl-flow";
-    version = "stable-git";
-    asds = [ "cl-flow" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-flow/2022-07-07/cl-flow-stable-git.tgz";
-      sha256 = "0mh9g0zj2kwnsq31zg4af5k9jvfbwp28zx02f0r1jlg2rha87vlg";
-      system = "cl-flow";
-      asd = "cl-flow";
-    });
-    systems = [ "cl-flow" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cl-muth" pkgs) ];
-  };
-  cl-flow_slash_tests = {
-    pname = "cl-flow_tests";
-    version = "stable-git";
-    asds = [ "cl-flow" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-flow/2022-07-07/cl-flow-stable-git.tgz";
-      sha256 = "0mh9g0zj2kwnsq31zg4af5k9jvfbwp28zx02f0r1jlg2rha87vlg";
-      system = "cl-flow";
-      asd = "cl-flow";
-    });
-    systems = [ "cl-flow/tests" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cl-flow" pkgs) (getAttr "cl-muth" pkgs) (getAttr "fiveam" pkgs) (getAttr "simple-flow-dispatcher" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  cl-flowd = {
-    pname = "cl-flowd";
-    version = "20140713-git";
-    asds = [ "cl-flowd" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-flowd/2014-07-13/cl-flowd-20140713-git.tgz";
-      sha256 = "0qppiqgy4fgvkm519bqjrw1mfp90q8fs1spvawf24d1nzslf51pj";
-      system = "cl-flowd";
-      asd = "cl-flowd";
-    });
-    systems = [ "cl-flowd" ];
-    lispLibs = [ (getAttr "cl-annot" pkgs) ];
-  };
-  cl-fluent-logger = {
-    pname = "cl-fluent-logger";
-    version = "20211020-git";
-    asds = [ "cl-fluent-logger" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-fluent-logger/2021-10-20/cl-fluent-logger-20211020-git.tgz";
-      sha256 = "14q7ymdg3hsri2z2c8fb1syqgdlk8b288v4gw645dbaxfpava2qq";
-      system = "cl-fluent-logger";
-      asd = "cl-fluent-logger";
-    });
-    systems = [ "cl-fluent-logger" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "bordeaux-threads" pkgs) (getAttr "cl-messagepack" pkgs) (getAttr "jonathan" pkgs) (getAttr "local-time" pkgs) (getAttr "pack" pkgs) (getAttr "usocket" pkgs) ];
-  };
-  cl-fluiddb = {
-    pname = "cl-fluiddb";
-    version = "20130312-git";
-    asds = [ "cl-fluiddb" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-fluidinfo/2013-03-12/cl-fluidinfo-20130312-git.tgz";
-      sha256 = "0npkkp2w88f6vb9pckjp4q4d4idx9p2s4s4imljs2vfym2j3w0wb";
-      system = "cl-fluiddb";
-      asd = "cl-fluiddb";
-    });
-    systems = [ "cl-fluiddb" ];
-    lispLibs = [ (getAttr "bordeaux-threads" pkgs) (getAttr "cl-json" pkgs) (getAttr "drakma" pkgs) (getAttr "flexi-streams" pkgs) (getAttr "split-sequence" pkgs) ];
-  };
-  cl-fluiddb-test = {
-    pname = "cl-fluiddb-test";
-    version = "20130312-git";
-    asds = [ "cl-fluiddb-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-fluidinfo/2013-03-12/cl-fluidinfo-20130312-git.tgz";
-      sha256 = "0npkkp2w88f6vb9pckjp4q4d4idx9p2s4s4imljs2vfym2j3w0wb";
-      system = "cl-fluiddb-test";
-      asd = "cl-fluiddb-test";
-    });
-    systems = [ "cl-fluiddb-test" ];
-    lispLibs = [ (getAttr "cl-fluiddb" pkgs) (getAttr "lift" pkgs) ];
-  };
-  cl-fluidinfo = {
-    pname = "cl-fluidinfo";
-    version = "20130312-git";
-    asds = [ "cl-fluidinfo" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-fluidinfo/2013-03-12/cl-fluidinfo-20130312-git.tgz";
-      sha256 = "0npkkp2w88f6vb9pckjp4q4d4idx9p2s4s4imljs2vfym2j3w0wb";
-      system = "cl-fluidinfo";
-      asd = "cl-fluidinfo";
-    });
-    systems = [ "cl-fluidinfo" ];
-    lispLibs = [ (getAttr "cl-fluiddb" pkgs) ];
-  };
-  cl-fond = {
-    pname = "cl-fond";
-    version = "20191130-git";
-    asds = [ "cl-fond" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-fond/2019-11-30/cl-fond-20191130-git.tgz";
-      sha256 = "03ygcw1azb44bhdsqcq99xi4ci0by76ap5jf5l2d1vfxq04v8grq";
-      system = "cl-fond";
-      asd = "cl-fond";
-    });
-    systems = [ "cl-fond" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cffi" pkgs) (getAttr "cl-opengl" pkgs) (getAttr "documentation-utils" pkgs) (getAttr "trivial-features" pkgs) (getAttr "trivial-garbage" pkgs) ];
-  };
-  cl-form-types = {
-    pname = "cl-form-types";
-    version = "20221106-git";
-    asds = [ "cl-form-types" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-form-types/2022-11-06/cl-form-types-20221106-git.tgz";
-      sha256 = "063yylsdy9zp3gr3l1mw0rbhfy853m1x4yv3s8y3qwmxsxdfjs10";
-      system = "cl-form-types";
-      asd = "cl-form-types";
-    });
-    systems = [ "cl-form-types" ];
-    lispLibs = [ (getAttr "agutil" pkgs) (getAttr "alexandria" pkgs) (getAttr "anaphora" pkgs) (getAttr "arrows" pkgs) (getAttr "cl-environments" pkgs) (getAttr "introspect-environment" pkgs) (getAttr "optima" pkgs) ];
-  };
-  cl-form-types_slash_test = {
-    pname = "cl-form-types_test";
-    version = "20221106-git";
-    asds = [ "cl-form-types" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-form-types/2022-11-06/cl-form-types-20221106-git.tgz";
-      sha256 = "063yylsdy9zp3gr3l1mw0rbhfy853m1x4yv3s8y3qwmxsxdfjs10";
-      system = "cl-form-types";
-      asd = "cl-form-types";
-    });
-    systems = [ "cl-form-types/test" ];
-    lispLibs = [ (getAttr "cl-form-types" pkgs) (getAttr "fiveam" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  cl-forms = {
-    pname = "cl-forms";
-    version = "20221106-git";
-    asds = [ "cl-forms" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-forms/2022-11-06/cl-forms-20221106-git.tgz";
-      sha256 = "11vcmi96x93npdga9hmpbhxi260bccgrllz6bzd0spkzazr3q0ap";
-      system = "cl-forms";
-      asd = "cl-forms";
-    });
-    systems = [ "cl-forms" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cl-ppcre" pkgs) (getAttr "clavier" pkgs) (getAttr "fmt" pkgs) (getAttr "hunchentoot" pkgs) (getAttr "ironclad" pkgs) (getAttr "uuid" pkgs) ];
-  };
-  cl-forms_dot_demo = {
-    pname = "cl-forms.demo";
-    version = "20221106-git";
-    asds = [ "cl-forms.demo" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-forms/2022-11-06/cl-forms-20221106-git.tgz";
-      sha256 = "11vcmi96x93npdga9hmpbhxi260bccgrllz6bzd0spkzazr3q0ap";
-      system = "cl-forms.demo";
-      asd = "cl-forms.demo";
-    });
-    systems = [ "cl-forms.demo" ];
-    lispLibs = [ (getAttr "cl-css" pkgs) (getAttr "cl-forms" pkgs) (getAttr "cl-forms_dot_djula" pkgs) (getAttr "cl-forms_dot_test" pkgs) (getAttr "cl-forms_dot_who" pkgs) (getAttr "cl-forms_dot_who_dot_bootstrap" pkgs) (getAttr "cl-who" pkgs) (getAttr "djula" pkgs) (getAttr "hunchentoot" pkgs) ];
-  };
-  cl-forms_dot_djula = {
-    pname = "cl-forms.djula";
-    version = "20221106-git";
-    asds = [ "cl-forms.djula" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-forms/2022-11-06/cl-forms-20221106-git.tgz";
-      sha256 = "11vcmi96x93npdga9hmpbhxi260bccgrllz6bzd0spkzazr3q0ap";
-      system = "cl-forms.djula";
-      asd = "cl-forms.djula";
-    });
-    systems = [ "cl-forms.djula" ];
-    lispLibs = [ (getAttr "cl-forms" pkgs) (getAttr "cl-forms_dot_who" pkgs) (getAttr "djula" pkgs) ];
-  };
-  cl-forms_dot_peppol = {
-    pname = "cl-forms.peppol";
-    version = "20221106-git";
-    asds = [ "cl-forms.peppol" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-forms/2022-11-06/cl-forms-20221106-git.tgz";
-      sha256 = "11vcmi96x93npdga9hmpbhxi260bccgrllz6bzd0spkzazr3q0ap";
-      system = "cl-forms.peppol";
-      asd = "cl-forms.peppol";
-    });
-    systems = [ "cl-forms.peppol" ];
-    lispLibs = [ (getAttr "cl-forms" pkgs) (getAttr "peppol" pkgs) ];
-  };
-  cl-forms_dot_test = {
-    pname = "cl-forms.test";
-    version = "20221106-git";
-    asds = [ "cl-forms.test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-forms/2022-11-06/cl-forms-20221106-git.tgz";
-      sha256 = "11vcmi96x93npdga9hmpbhxi260bccgrllz6bzd0spkzazr3q0ap";
-      system = "cl-forms.test";
-      asd = "cl-forms.test";
-    });
-    systems = [ "cl-forms.test" ];
-    lispLibs = [ (getAttr "cl-forms" pkgs) (getAttr "fiveam" pkgs) ];
-  };
-  cl-forms_dot_who = {
-    pname = "cl-forms.who";
-    version = "20221106-git";
-    asds = [ "cl-forms.who" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-forms/2022-11-06/cl-forms-20221106-git.tgz";
-      sha256 = "11vcmi96x93npdga9hmpbhxi260bccgrllz6bzd0spkzazr3q0ap";
-      system = "cl-forms.who";
-      asd = "cl-forms.who";
-    });
-    systems = [ "cl-forms.who" ];
-    lispLibs = [ (getAttr "cl-forms" pkgs) (getAttr "cl-who" pkgs) ];
-  };
-  cl-forms_dot_who_dot_bootstrap = {
-    pname = "cl-forms.who.bootstrap";
-    version = "20221106-git";
-    asds = [ "cl-forms.who.bootstrap" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-forms/2022-11-06/cl-forms-20221106-git.tgz";
-      sha256 = "11vcmi96x93npdga9hmpbhxi260bccgrllz6bzd0spkzazr3q0ap";
-      system = "cl-forms.who.bootstrap";
-      asd = "cl-forms.who.bootstrap";
-    });
-    systems = [ "cl-forms.who.bootstrap" ];
-    lispLibs = [ (getAttr "cl-forms_dot_who" pkgs) ];
-  };
-  cl-freeimage = {
-    pname = "cl-freeimage";
-    version = "20170403-git";
-    asds = [ "cl-freeimage" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-freeimage/2017-04-03/cl-freeimage-20170403-git.tgz";
-      sha256 = "1333i8sh670nkb0c35xp511xjlafn5zh8a6gk3wnh19gffvj63hq";
-      system = "cl-freeimage";
-      asd = "cl-freeimage";
-    });
-    systems = [ "cl-freeimage" ];
-    lispLibs = [ (getAttr "cffi" pkgs) ];
-  };
-  cl-freetype2 = {
-    pname = "cl-freetype2";
-    version = "20220707-git";
-    asds = [ "cl-freetype2" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-freetype2/2022-07-07/cl-freetype2-20220707-git.tgz";
-      sha256 = "1nhq3qslja0bcgpbmzfycqhd4vw1l58zh4ia15m1h6535qxliy0q";
-      system = "cl-freetype2";
-      asd = "cl-freetype2";
-    });
-    systems = [ "cl-freetype2" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cffi" pkgs) (getAttr "cffi-grovel" pkgs) (getAttr "trivial-garbage" pkgs) ];
-  };
-  cl-freetype2-tests = {
-    pname = "cl-freetype2-tests";
-    version = "20220707-git";
-    asds = [ "cl-freetype2-tests" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-freetype2/2022-07-07/cl-freetype2-20220707-git.tgz";
-      sha256 = "1nhq3qslja0bcgpbmzfycqhd4vw1l58zh4ia15m1h6535qxliy0q";
-      system = "cl-freetype2-tests";
-      asd = "cl-freetype2-tests";
-    });
-    systems = [ "cl-freetype2-tests" ];
-    lispLibs = [ (getAttr "cl-freetype2" pkgs) (getAttr "fiveam" pkgs) ];
-  };
-  cl-fsnotify = {
-    pname = "cl-fsnotify";
-    version = "20150302-git";
-    asds = [ "cl-fsnotify" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-fsnotify/2015-03-02/cl-fsnotify-20150302-git.tgz";
-      sha256 = "0693ga1xqcvi89j3aw0lmyi3a1yl3hrfwli2jiwxv0mgpcaxz0yr";
-      system = "cl-fsnotify";
-      asd = "cl-fsnotify";
-    });
-    systems = [ "cl-fsnotify" ];
-    lispLibs = [ (getAttr "cffi" pkgs) (getAttr "cffi-grovel" pkgs) ];
-  };
-  cl-ftp = {
-    pname = "cl-ftp";
-    version = "20150608-http";
-    asds = [ "cl-ftp" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-ftp/2015-06-08/cl-ftp-20150608-http.tgz";
-      sha256 = "1m955rjpaynybzmb9q631mll764hm06lydvhra50mfjj75ynwsvw";
-      system = "cl-ftp";
-      asd = "cl-ftp";
-    });
-    systems = [ "cl-ftp" ];
-    lispLibs = [ (getAttr "split-sequence" pkgs) (getAttr "usocket" pkgs) ];
-  };
-  cl-fuse = {
-    pname = "cl-fuse";
-    version = "20200925-git";
-    asds = [ "cl-fuse" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-fuse/2020-09-25/cl-fuse-20200925-git.tgz";
-      sha256 = "1qxvf8ybn0v1hiaz11k1h47y0dksj8ah9v8jdfrjp9ad1rrrnxqs";
-      system = "cl-fuse";
-      asd = "cl-fuse";
-    });
-    systems = [ "cl-fuse" ];
-    lispLibs = [ (getAttr "bordeaux-threads" pkgs) (getAttr "cffi" pkgs) (getAttr "cffi-grovel" pkgs) (getAttr "cl-utilities" pkgs) (getAttr "iterate" pkgs) (getAttr "trivial-backtrace" pkgs) (getAttr "trivial-utf-8" pkgs) ];
-  };
-  cl-fuse-meta-fs = {
-    pname = "cl-fuse-meta-fs";
-    version = "20190710-git";
-    asds = [ "cl-fuse-meta-fs" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-fuse-meta-fs/2019-07-10/cl-fuse-meta-fs-20190710-git.tgz";
-      sha256 = "1wbi7lvczfn09qb72rg1bps9w51mz42dwa7lyjl2hp8lbwc2a5a9";
-      system = "cl-fuse-meta-fs";
-      asd = "cl-fuse-meta-fs";
-    });
-    systems = [ "cl-fuse-meta-fs" ];
-    lispLibs = [ (getAttr "bordeaux-threads" pkgs) (getAttr "cl-fuse" pkgs) (getAttr "iterate" pkgs) (getAttr "pcall" pkgs) ];
-  };
-  cl-fuzz = {
-    pname = "cl-fuzz";
-    version = "20181018-git";
-    asds = [ "cl-fuzz" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-fuzz/2018-10-18/cl-fuzz-20181018-git.tgz";
-      sha256 = "1zvlh0nh4iip75p6dblx5kajqaa3hhv6mdjbx9cids8491r388rz";
-      system = "cl-fuzz";
-      asd = "cl-fuzz";
-    });
-    systems = [ "cl-fuzz" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) ];
-  };
-  cl-fxml = {
-    pname = "cl-fxml";
-    version = "20220331-git";
-    asds = [ "cl-fxml" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-fxml/2022-03-31/cl-fxml-20220331-git.tgz";
-      sha256 = "0i5w3z0rgyi42rlhvf92k95w6bajf3m1x9g4zprwf602kp7abr3c";
-      system = "cl-fxml";
-      asd = "cl-fxml";
-    });
-    systems = [ "cl-fxml" ];
-    lispLibs = [ (getAttr "agnostic-lizard" pkgs) (getAttr "alexandria" pkgs) (getAttr "named-readtables" pkgs) ];
-  };
-  cl-gamepad = {
-    pname = "cl-gamepad";
-    version = "20221106-git";
-    asds = [ "cl-gamepad" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-gamepad/2022-11-06/cl-gamepad-20221106-git.tgz";
-      sha256 = "00rd483p063wf8m18mpgbk09fxass2zfc6vmkx0c26f690g6a14z";
-      system = "cl-gamepad";
-      asd = "cl-gamepad";
-    });
-    systems = [ "cl-gamepad" ];
-    lispLibs = [ (getAttr "cffi" pkgs) (getAttr "documentation-utils" pkgs) (getAttr "trivial-features" pkgs) ];
-  };
-  cl-gap-buffer = {
-    pname = "cl-gap-buffer";
-    version = "20190307-hg";
-    asds = [ "cl-gap-buffer" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-gap-buffer/2019-03-07/cl-gap-buffer-20190307-hg.tgz";
-      sha256 = "0n46vbjsqva0ik5m4bh9k9vzzvixw755vql2bagq0sdxchmri2gw";
-      system = "cl-gap-buffer";
-      asd = "cl-gap-buffer";
-    });
-    systems = [ "cl-gap-buffer" ];
-    lispLibs = [  ];
-  };
-  cl-gbm = {
-    pname = "cl-gbm";
-    version = "20180430-git";
-    asds = [ "cl-gbm" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-gbm/2018-04-30/cl-gbm-20180430-git.tgz";
-      sha256 = "14bshi7q1hhyag8va9javjjn5cnhmwyjlw8vvvb4fyzfspz3kpdx";
-      system = "cl-gbm";
-      asd = "cl-gbm";
-    });
-    systems = [ "cl-gbm" ];
-    lispLibs = [ (getAttr "cffi" pkgs) ];
-  };
-  cl-gcrypt = {
-    pname = "cl-gcrypt";
-    version = "20211209-git";
-    asds = [ "cl-gcrypt" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-gcrypt/2021-12-09/cl-gcrypt-20211209-git.tgz";
-      sha256 = "1f4gx5ssirr4f3n68i2da6ad7hbhgsk18zv0gfqy3q635zai0z3w";
-      system = "cl-gcrypt";
-      asd = "cl-gcrypt";
-    });
-    systems = [ "cl-gcrypt" ];
-    lispLibs = [ (getAttr "cffi" pkgs) ];
-  };
-  cl-gcrypt-test = {
-    pname = "cl-gcrypt-test";
-    version = "20211209-git";
-    asds = [ "cl-gcrypt-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-gcrypt/2021-12-09/cl-gcrypt-20211209-git.tgz";
-      sha256 = "1f4gx5ssirr4f3n68i2da6ad7hbhgsk18zv0gfqy3q635zai0z3w";
-      system = "cl-gcrypt-test";
-      asd = "cl-gcrypt-test";
-    });
-    systems = [ "cl-gcrypt-test" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "babel" pkgs) (getAttr "cffi" pkgs) (getAttr "cl-gcrypt" pkgs) (getAttr "fiveam" pkgs) ];
-  };
-  cl-gd = {
-    pname = "cl-gd";
-    version = "20201220-git";
-    asds = [ "cl-gd" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-gd/2020-12-20/cl-gd-20201220-git.tgz";
-      sha256 = "1wa6nv5bdf0v38hzr6cfadkk6mhvvnj9lpl9igcxygdjbnn2a3y6";
-      system = "cl-gd";
-      asd = "cl-gd";
-    });
-    systems = [ "cl-gd" ];
-    lispLibs = [ (getAttr "uffi" pkgs) ];
-  };
-  cl-gd-test = {
-    pname = "cl-gd-test";
-    version = "20201220-git";
-    asds = [ "cl-gd-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-gd/2020-12-20/cl-gd-20201220-git.tgz";
-      sha256 = "1wa6nv5bdf0v38hzr6cfadkk6mhvvnj9lpl9igcxygdjbnn2a3y6";
-      system = "cl-gd-test";
-      asd = "cl-gd-test";
-    });
-    systems = [ "cl-gd-test" ];
-    lispLibs = [ (getAttr "cl-gd" pkgs) ];
-  };
-  cl-gdata = {
-    pname = "cl-gdata";
-    version = "20171130-git";
-    asds = [ "cl-gdata" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-gdata/2017-11-30/cl-gdata-20171130-git.tgz";
-      sha256 = "0x2sq03nacjbq7p9baxlhr7bb0xg7v1ljq7qj1b3xrd4rbcibxi9";
-      system = "cl-gdata";
-      asd = "cl-gdata";
-    });
-    systems = [ "cl-gdata" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cl-fad" pkgs) (getAttr "cl-json" pkgs) (getAttr "cl-ppcre" pkgs) (getAttr "closer-mop" pkgs) (getAttr "cxml" pkgs) (getAttr "drakma" pkgs) (getAttr "flexi-streams" pkgs) (getAttr "gzip-stream" pkgs) (getAttr "local-time" pkgs) (getAttr "parse-number" pkgs) (getAttr "xpath" pkgs) (getAttr "split-sequence" pkgs) (getAttr "string-case" pkgs) (getAttr "trivial-utf-8" pkgs) (getAttr "url-rewrite" pkgs) ];
-  };
-  cl-gearman = {
-    pname = "cl-gearman";
-    version = "20211020-git";
-    asds = [ "cl-gearman" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-gearman/2021-10-20/cl-gearman-20211020-git.tgz";
-      sha256 = "0cnkpqn43p55xlhdi8bws2ssa1ahvzbgggh3pam0zbqma2m525j6";
-      system = "cl-gearman";
-      asd = "cl-gearman";
-    });
-    systems = [ "cl-gearman" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "babel" pkgs) (getAttr "split-sequence" pkgs) (getAttr "usocket" pkgs) ];
-  };
-  cl-gearman-test = {
-    pname = "cl-gearman-test";
-    version = "20211020-git";
-    asds = [ "cl-gearman-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-gearman/2021-10-20/cl-gearman-20211020-git.tgz";
-      sha256 = "0cnkpqn43p55xlhdi8bws2ssa1ahvzbgggh3pam0zbqma2m525j6";
-      system = "cl-gearman-test";
-      asd = "cl-gearman-test";
-    });
-    systems = [ "cl-gearman-test" ];
-    lispLibs = [ (getAttr "cl-gearman" pkgs) (getAttr "cl-test-more" pkgs) ];
-  };
-  cl-gendoc = {
-    pname = "cl-gendoc";
-    version = "20180831-git";
-    asds = [ "cl-gendoc" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-gendoc/2018-08-31/cl-gendoc-20180831-git.tgz";
-      sha256 = "19f8fmz2hj332kh3y3fbil2dchpckdsqci6ljhadymd8p2h6w4ws";
-      system = "cl-gendoc";
-      asd = "cl-gendoc";
-    });
-    systems = [ "cl-gendoc" ];
-    lispLibs = [ (getAttr "_3bmd" pkgs) (getAttr "_3bmd-ext-code-blocks" pkgs) (getAttr "cl-who" pkgs) ];
-  };
-  cl-gendoc-docs = {
-    pname = "cl-gendoc-docs";
-    version = "20180831-git";
-    asds = [ "cl-gendoc-docs" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-gendoc/2018-08-31/cl-gendoc-20180831-git.tgz";
-      sha256 = "19f8fmz2hj332kh3y3fbil2dchpckdsqci6ljhadymd8p2h6w4ws";
-      system = "cl-gendoc-docs";
-      asd = "cl-gendoc";
-    });
-    systems = [ "cl-gendoc-docs" ];
-    lispLibs = [ (getAttr "cl-gendoc" pkgs) ];
-  };
-  cl-gene-searcher = {
-    pname = "cl-gene-searcher";
-    version = "20111001-git";
-    asds = [ "cl-gene-searcher" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-gene-searcher/2011-10-01/cl-gene-searcher-20111001-git.tgz";
-      sha256 = "0n8p6yk600h7m050bjxazmcxdrcfrkcklrcj8ncflyshm72qv1yk";
-      system = "cl-gene-searcher";
-      asd = "cl-gene-searcher";
-    });
-    systems = [ "cl-gene-searcher" ];
-    lispLibs = [ (getAttr "clsql-sqlite3" pkgs) ];
-  };
-  cl-generator = {
-    pname = "cl-generator";
-    version = "20221106-git";
-    asds = [ "cl-generator" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-generator/2022-11-06/cl-generator-20221106-git.tgz";
-      sha256 = "0aa5prw6f4fqw9j8m6kvdb3h3lqyvi15dd1l6437p9408mmyxk30";
-      system = "cl-generator";
-      asd = "cl-generator";
-    });
-    systems = [ "cl-generator" ];
-    lispLibs = [ (getAttr "cl-cont" pkgs) ];
-  };
-  cl-generator-test = {
-    pname = "cl-generator-test";
-    version = "20221106-git";
-    asds = [ "cl-generator-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-generator/2022-11-06/cl-generator-20221106-git.tgz";
-      sha256 = "0aa5prw6f4fqw9j8m6kvdb3h3lqyvi15dd1l6437p9408mmyxk30";
-      system = "cl-generator-test";
-      asd = "cl-generator-test";
-    });
-    systems = [ "cl-generator-test" ];
-    lispLibs = [ (getAttr "cl-generator" pkgs) (getAttr "lisp-unit" pkgs) ];
-  };
-  cl-geocode = {
-    pname = "cl-geocode";
-    version = "20190813-git";
-    asds = [ "cl-geocode" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-geocode/2019-08-13/cl-geocode-20190813-git.tgz";
-      sha256 = "17z0v29rrhsfjikg4sn9ynxckh5i3ahjn7c8qs381n1p9fbd668l";
-      system = "cl-geocode";
-      asd = "cl-geocode";
-    });
-    systems = [ "cl-geocode" ];
-    lispLibs = [ (getAttr "cl-ppcre" pkgs) (getAttr "acl-compat" pkgs) (getAttr "aserve" pkgs) ];
-  };
-  cl-geoip = {
-    pname = "cl-geoip";
-    version = "20130615-git";
-    asds = [ "cl-geoip" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-geoip/2013-06-15/cl-geoip-20130615-git.tgz";
-      sha256 = "0ys8wysppx06j3s0dc9lc9zjizr1fmj388fiigyn1wrdyyka41y2";
-      system = "cl-geoip";
-      asd = "cl-geoip";
-    });
-    systems = [ "cl-geoip" ];
-    lispLibs = [ (getAttr "cffi" pkgs) ];
-  };
-  cl-geometry = {
-    pname = "cl-geometry";
-    version = "20160531-git";
-    asds = [ "cl-geometry" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-geometry/2016-05-31/cl-geometry-20160531-git.tgz";
-      sha256 = "188xrd8plvc34gz7q01zmkdrzxbpwzln103l5dl78pa4a6vzz34h";
-      system = "cl-geometry";
-      asd = "cl-geometry";
-    });
-    systems = [ "cl-geometry" ];
-    lispLibs = [ (getAttr "iterate" pkgs) (getAttr "trees" pkgs) ];
-  };
-  cl-geometry-tests = {
-    pname = "cl-geometry-tests";
-    version = "20160531-git";
-    asds = [ "cl-geometry-tests" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-geometry/2016-05-31/cl-geometry-20160531-git.tgz";
-      sha256 = "188xrd8plvc34gz7q01zmkdrzxbpwzln103l5dl78pa4a6vzz34h";
-      system = "cl-geometry-tests";
-      asd = "cl-geometry-tests";
-    });
-    systems = [ "cl-geometry-tests" ];
-    lispLibs = [ (getAttr "cl-geometry" pkgs) (getAttr "iterate" pkgs) (getAttr "vecto" pkgs) ];
-  };
-  cl-geos = {
-    pname = "cl-geos";
-    version = "20180711-git";
-    asds = [ "cl-geos" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-geos/2018-07-11/cl-geos-20180711-git.tgz";
-      sha256 = "0igq2c1p82pbkyc7zg90fm3lbsmhwnfmb3q8jc8baklb958555ck";
-      system = "cl-geos";
-      asd = "cl-geos";
-    });
-    systems = [ "cl-geos" ];
-    lispLibs = [ (getAttr "cffi" pkgs) (getAttr "trivial-garbage" pkgs) (getAttr "uiop" pkgs) (getAttr "xarray" pkgs) ];
-  };
-  cl-geos_slash_test = {
-    pname = "cl-geos_test";
-    version = "20180711-git";
-    asds = [ "cl-geos" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-geos/2018-07-11/cl-geos-20180711-git.tgz";
-      sha256 = "0igq2c1p82pbkyc7zg90fm3lbsmhwnfmb3q8jc8baklb958555ck";
-      system = "cl-geos";
-      asd = "cl-geos";
-    });
-    systems = [ "cl-geos/test" ];
-    lispLibs = [ (getAttr "cl-geos" pkgs) (getAttr "fiveam" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  cl-getopt = {
-    pname = "cl-getopt";
-    version = "20211209-git";
-    asds = [ "cl-getopt" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-getopt/2021-12-09/cl-getopt-20211209-git.tgz";
-      sha256 = "16qkpg2qln7q9j5614py00zwsnmxcy3xcmhb4m8f0w0zbnpvkjxl";
-      system = "cl-getopt";
-      asd = "cl-getopt";
-    });
-    systems = [ "cl-getopt" ];
-    lispLibs = [ (getAttr "cffi" pkgs) (getAttr "cffi-grovel" pkgs) ];
-  };
-  cl-getx = {
-    pname = "cl-getx";
-    version = "20200925-git";
-    asds = [ "cl-getx" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-getx/2020-09-25/cl-getx-20200925-git.tgz";
-      sha256 = "07gi346vqrhnbkdk4l6g06z4shhnx7f4l44jgayzfdd0xkv02brv";
-      system = "cl-getx";
-      asd = "cl-getx";
-    });
-    systems = [ "cl-getx" ];
-    lispLibs = [  ];
-  };
-  cl-gimei = {
-    pname = "cl-gimei";
-    version = "20211020-git";
-    asds = [ "cl-gimei" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-gimei/2021-10-20/cl-gimei-20211020-git.tgz";
-      sha256 = "1405qbqrrrmanmg2dl7yfdj8z4vcsj1silpsa7i1y00pd18xgk8q";
-      system = "cl-gimei";
-      asd = "cl-gimei";
-    });
-    systems = [ "cl-gimei" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cl-yaml" pkgs) ];
-  };
-  cl-gimei_slash_test = {
-    pname = "cl-gimei_test";
-    version = "20211020-git";
-    asds = [ "cl-gimei" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-gimei/2021-10-20/cl-gimei-20211020-git.tgz";
-      sha256 = "1405qbqrrrmanmg2dl7yfdj8z4vcsj1silpsa7i1y00pd18xgk8q";
-      system = "cl-gimei";
-      asd = "cl-gimei";
-    });
-    systems = [ "cl-gimei/test" ];
-    lispLibs = [ (getAttr "cl-gimei" pkgs) (getAttr "rove" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  cl-gists = {
-    pname = "cl-gists";
-    version = "20180228-git";
-    asds = [ "cl-gists" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-gists/2018-02-28/cl-gists-20180228-git.tgz";
-      sha256 = "1ipwapb71ls0gy4prg1j9x5ki4frf6l1f9iphjnsis7kdpbm2mi7";
-      system = "cl-gists";
-      asd = "cl-gists";
-    });
-    systems = [ "cl-gists" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "babel" pkgs) (getAttr "cl-syntax" pkgs) (getAttr "cl-syntax-annot" pkgs) (getAttr "dexador" pkgs) (getAttr "jonathan" pkgs) (getAttr "local-time" pkgs) (getAttr "quri" pkgs) (getAttr "trivial-types" pkgs) (getAttr "uiop" pkgs) ];
-  };
-  cl-gists-test = {
-    pname = "cl-gists-test";
-    version = "20180228-git";
-    asds = [ "cl-gists-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-gists/2018-02-28/cl-gists-20180228-git.tgz";
-      sha256 = "1ipwapb71ls0gy4prg1j9x5ki4frf6l1f9iphjnsis7kdpbm2mi7";
-      system = "cl-gists-test";
-      asd = "cl-gists-test";
-    });
-    systems = [ "cl-gists-test" ];
-    lispLibs = [ (getAttr "cl-gists" pkgs) (getAttr "closer-mop" pkgs) (getAttr "prove" pkgs) (getAttr "prove-asdf" pkgs) ];
-  };
-  cl-git = {
-    pname = "cl-git";
-    version = "20221106-git";
-    asds = [ "cl-git" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-git/2022-11-06/cl-git-20221106-git.tgz";
-      sha256 = "0pk8pnsndkp3mcxknbq41crdv75djz5s4f40i1j9xkl6a39q0arf";
-      system = "cl-git";
-      asd = "cl-git";
-    });
-    systems = [ "cl-git" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "anaphora" pkgs) (getAttr "cffi" pkgs) (getAttr "cffi-grovel" pkgs) (getAttr "cl-fad" pkgs) (getAttr "closer-mop" pkgs) (getAttr "flexi-streams" pkgs) (getAttr "local-time" pkgs) (getAttr "trivial-garbage" pkgs) (getAttr "uiop" pkgs) ];
-  };
-  cl-git_slash_tests = {
-    pname = "cl-git_tests";
-    version = "20221106-git";
-    asds = [ "cl-git" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-git/2022-11-06/cl-git-20221106-git.tgz";
-      sha256 = "0pk8pnsndkp3mcxknbq41crdv75djz5s4f40i1j9xkl6a39q0arf";
-      system = "cl-git";
-      asd = "cl-git";
-    });
-    systems = [ "cl-git/tests" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cl-fad" pkgs) (getAttr "cl-git" pkgs) (getAttr "fiveam" pkgs) (getAttr "flexi-streams" pkgs) (getAttr "inferior-shell" pkgs) (getAttr "local-time" pkgs) (getAttr "unix-options" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  cl-github-v3 = {
-    pname = "cl-github-v3";
-    version = "20191227-git";
-    asds = [ "cl-github-v3" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-github-v3/2019-12-27/cl-github-v3-20191227-git.tgz";
-      sha256 = "1xwfw6y3vm7236rd6pdmb5akk63gpzhllx99mv4r7ia3yyf9d4f8";
-      system = "cl-github-v3";
-      asd = "cl-github-v3";
-    });
-    systems = [ "cl-github-v3" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cl-ppcre" pkgs) (getAttr "drakma" pkgs) (getAttr "yason" pkgs) ];
-  };
-  cl-glfw = {
-    pname = "cl-glfw";
-    version = "20150302-git";
-    asds = [ "cl-glfw" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw";
-      asd = "cl-glfw";
-    });
-    systems = [ "cl-glfw" ];
-    lispLibs = [ (getAttr "cffi" pkgs) (getAttr "cl-glfw-types" pkgs) ];
-  };
-  cl-glfw-ftgl = {
-    pname = "cl-glfw-ftgl";
-    version = "20150302-git";
-    asds = [ "cl-glfw-ftgl" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-ftgl";
-      asd = "cl-glfw-ftgl";
-    });
-    systems = [ "cl-glfw-ftgl" ];
-    lispLibs = [ (getAttr "cffi" pkgs) ];
-  };
-  cl-glfw-glu = {
-    pname = "cl-glfw-glu";
-    version = "20150302-git";
-    asds = [ "cl-glfw-glu" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-glu";
-      asd = "cl-glfw-glu";
-    });
-    systems = [ "cl-glfw-glu" ];
-    lispLibs = [ (getAttr "cffi" pkgs) (getAttr "cl-glfw-types" pkgs) ];
-  };
-  cl-glfw-opengl-3dfx_multisample = {
-    pname = "cl-glfw-opengl-3dfx_multisample";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-3dfx_multisample" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-3dfx_multisample";
-      asd = "cl-glfw-opengl-3dfx_multisample";
-    });
-    systems = [ "cl-glfw-opengl-3dfx_multisample" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-3dfx_tbuffer = {
-    pname = "cl-glfw-opengl-3dfx_tbuffer";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-3dfx_tbuffer" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-3dfx_tbuffer";
-      asd = "cl-glfw-opengl-3dfx_tbuffer";
-    });
-    systems = [ "cl-glfw-opengl-3dfx_tbuffer" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-3dfx_texture_compression_fxt1 = {
-    pname = "cl-glfw-opengl-3dfx_texture_compression_fxt1";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-3dfx_texture_compression_fxt1" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-3dfx_texture_compression_fxt1";
-      asd = "cl-glfw-opengl-3dfx_texture_compression_fxt1";
-    });
-    systems = [ "cl-glfw-opengl-3dfx_texture_compression_fxt1" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-amd_blend_minmax_factor = {
-    pname = "cl-glfw-opengl-amd_blend_minmax_factor";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-amd_blend_minmax_factor" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-amd_blend_minmax_factor";
-      asd = "cl-glfw-opengl-amd_blend_minmax_factor";
-    });
-    systems = [ "cl-glfw-opengl-amd_blend_minmax_factor" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-amd_depth_clamp_separate = {
-    pname = "cl-glfw-opengl-amd_depth_clamp_separate";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-amd_depth_clamp_separate" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-amd_depth_clamp_separate";
-      asd = "cl-glfw-opengl-amd_depth_clamp_separate";
-    });
-    systems = [ "cl-glfw-opengl-amd_depth_clamp_separate" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-amd_draw_buffers_blend = {
-    pname = "cl-glfw-opengl-amd_draw_buffers_blend";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-amd_draw_buffers_blend" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-amd_draw_buffers_blend";
-      asd = "cl-glfw-opengl-amd_draw_buffers_blend";
-    });
-    systems = [ "cl-glfw-opengl-amd_draw_buffers_blend" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-amd_multi_draw_indirect = {
-    pname = "cl-glfw-opengl-amd_multi_draw_indirect";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-amd_multi_draw_indirect" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-amd_multi_draw_indirect";
-      asd = "cl-glfw-opengl-amd_multi_draw_indirect";
-    });
-    systems = [ "cl-glfw-opengl-amd_multi_draw_indirect" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-amd_name_gen_delete = {
-    pname = "cl-glfw-opengl-amd_name_gen_delete";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-amd_name_gen_delete" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-amd_name_gen_delete";
-      asd = "cl-glfw-opengl-amd_name_gen_delete";
-    });
-    systems = [ "cl-glfw-opengl-amd_name_gen_delete" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-amd_performance_monitor = {
-    pname = "cl-glfw-opengl-amd_performance_monitor";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-amd_performance_monitor" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-amd_performance_monitor";
-      asd = "cl-glfw-opengl-amd_performance_monitor";
-    });
-    systems = [ "cl-glfw-opengl-amd_performance_monitor" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-amd_sample_positions = {
-    pname = "cl-glfw-opengl-amd_sample_positions";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-amd_sample_positions" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-amd_sample_positions";
-      asd = "cl-glfw-opengl-amd_sample_positions";
-    });
-    systems = [ "cl-glfw-opengl-amd_sample_positions" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-amd_seamless_cubemap_per_texture = {
-    pname = "cl-glfw-opengl-amd_seamless_cubemap_per_texture";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-amd_seamless_cubemap_per_texture" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-amd_seamless_cubemap_per_texture";
-      asd = "cl-glfw-opengl-amd_seamless_cubemap_per_texture";
-    });
-    systems = [ "cl-glfw-opengl-amd_seamless_cubemap_per_texture" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-amd_vertex_shader_tesselator = {
-    pname = "cl-glfw-opengl-amd_vertex_shader_tesselator";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-amd_vertex_shader_tesselator" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-amd_vertex_shader_tesselator";
-      asd = "cl-glfw-opengl-amd_vertex_shader_tesselator";
-    });
-    systems = [ "cl-glfw-opengl-amd_vertex_shader_tesselator" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-apple_aux_depth_stencil = {
-    pname = "cl-glfw-opengl-apple_aux_depth_stencil";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-apple_aux_depth_stencil" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-apple_aux_depth_stencil";
-      asd = "cl-glfw-opengl-apple_aux_depth_stencil";
-    });
-    systems = [ "cl-glfw-opengl-apple_aux_depth_stencil" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-apple_client_storage = {
-    pname = "cl-glfw-opengl-apple_client_storage";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-apple_client_storage" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-apple_client_storage";
-      asd = "cl-glfw-opengl-apple_client_storage";
-    });
-    systems = [ "cl-glfw-opengl-apple_client_storage" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-apple_element_array = {
-    pname = "cl-glfw-opengl-apple_element_array";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-apple_element_array" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-apple_element_array";
-      asd = "cl-glfw-opengl-apple_element_array";
-    });
-    systems = [ "cl-glfw-opengl-apple_element_array" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-apple_fence = {
-    pname = "cl-glfw-opengl-apple_fence";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-apple_fence" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-apple_fence";
-      asd = "cl-glfw-opengl-apple_fence";
-    });
-    systems = [ "cl-glfw-opengl-apple_fence" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-apple_float_pixels = {
-    pname = "cl-glfw-opengl-apple_float_pixels";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-apple_float_pixels" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-apple_float_pixels";
-      asd = "cl-glfw-opengl-apple_float_pixels";
-    });
-    systems = [ "cl-glfw-opengl-apple_float_pixels" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-apple_flush_buffer_range = {
-    pname = "cl-glfw-opengl-apple_flush_buffer_range";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-apple_flush_buffer_range" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-apple_flush_buffer_range";
-      asd = "cl-glfw-opengl-apple_flush_buffer_range";
-    });
-    systems = [ "cl-glfw-opengl-apple_flush_buffer_range" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-apple_object_purgeable = {
-    pname = "cl-glfw-opengl-apple_object_purgeable";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-apple_object_purgeable" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-apple_object_purgeable";
-      asd = "cl-glfw-opengl-apple_object_purgeable";
-    });
-    systems = [ "cl-glfw-opengl-apple_object_purgeable" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-apple_rgb_422 = {
-    pname = "cl-glfw-opengl-apple_rgb_422";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-apple_rgb_422" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-apple_rgb_422";
-      asd = "cl-glfw-opengl-apple_rgb_422";
-    });
-    systems = [ "cl-glfw-opengl-apple_rgb_422" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-apple_row_bytes = {
-    pname = "cl-glfw-opengl-apple_row_bytes";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-apple_row_bytes" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-apple_row_bytes";
-      asd = "cl-glfw-opengl-apple_row_bytes";
-    });
-    systems = [ "cl-glfw-opengl-apple_row_bytes" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-apple_specular_vector = {
-    pname = "cl-glfw-opengl-apple_specular_vector";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-apple_specular_vector" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-apple_specular_vector";
-      asd = "cl-glfw-opengl-apple_specular_vector";
-    });
-    systems = [ "cl-glfw-opengl-apple_specular_vector" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-apple_texture_range = {
-    pname = "cl-glfw-opengl-apple_texture_range";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-apple_texture_range" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-apple_texture_range";
-      asd = "cl-glfw-opengl-apple_texture_range";
-    });
-    systems = [ "cl-glfw-opengl-apple_texture_range" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-apple_transform_hint = {
-    pname = "cl-glfw-opengl-apple_transform_hint";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-apple_transform_hint" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-apple_transform_hint";
-      asd = "cl-glfw-opengl-apple_transform_hint";
-    });
-    systems = [ "cl-glfw-opengl-apple_transform_hint" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-apple_vertex_array_object = {
-    pname = "cl-glfw-opengl-apple_vertex_array_object";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-apple_vertex_array_object" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-apple_vertex_array_object";
-      asd = "cl-glfw-opengl-apple_vertex_array_object";
-    });
-    systems = [ "cl-glfw-opengl-apple_vertex_array_object" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-apple_vertex_array_range = {
-    pname = "cl-glfw-opengl-apple_vertex_array_range";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-apple_vertex_array_range" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-apple_vertex_array_range";
-      asd = "cl-glfw-opengl-apple_vertex_array_range";
-    });
-    systems = [ "cl-glfw-opengl-apple_vertex_array_range" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-apple_vertex_program_evaluators = {
-    pname = "cl-glfw-opengl-apple_vertex_program_evaluators";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-apple_vertex_program_evaluators" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-apple_vertex_program_evaluators";
-      asd = "cl-glfw-opengl-apple_vertex_program_evaluators";
-    });
-    systems = [ "cl-glfw-opengl-apple_vertex_program_evaluators" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-apple_ycbcr_422 = {
-    pname = "cl-glfw-opengl-apple_ycbcr_422";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-apple_ycbcr_422" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-apple_ycbcr_422";
-      asd = "cl-glfw-opengl-apple_ycbcr_422";
-    });
-    systems = [ "cl-glfw-opengl-apple_ycbcr_422" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-arb_blend_func_extended = {
-    pname = "cl-glfw-opengl-arb_blend_func_extended";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-arb_blend_func_extended" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-arb_blend_func_extended";
-      asd = "cl-glfw-opengl-arb_blend_func_extended";
-    });
-    systems = [ "cl-glfw-opengl-arb_blend_func_extended" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-arb_color_buffer_float = {
-    pname = "cl-glfw-opengl-arb_color_buffer_float";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-arb_color_buffer_float" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-arb_color_buffer_float";
-      asd = "cl-glfw-opengl-arb_color_buffer_float";
-    });
-    systems = [ "cl-glfw-opengl-arb_color_buffer_float" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-arb_copy_buffer = {
-    pname = "cl-glfw-opengl-arb_copy_buffer";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-arb_copy_buffer" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-arb_copy_buffer";
-      asd = "cl-glfw-opengl-arb_copy_buffer";
-    });
-    systems = [ "cl-glfw-opengl-arb_copy_buffer" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-arb_depth_buffer_float = {
-    pname = "cl-glfw-opengl-arb_depth_buffer_float";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-arb_depth_buffer_float" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-arb_depth_buffer_float";
-      asd = "cl-glfw-opengl-arb_depth_buffer_float";
-    });
-    systems = [ "cl-glfw-opengl-arb_depth_buffer_float" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-arb_depth_clamp = {
-    pname = "cl-glfw-opengl-arb_depth_clamp";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-arb_depth_clamp" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-arb_depth_clamp";
-      asd = "cl-glfw-opengl-arb_depth_clamp";
-    });
-    systems = [ "cl-glfw-opengl-arb_depth_clamp" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-arb_depth_texture = {
-    pname = "cl-glfw-opengl-arb_depth_texture";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-arb_depth_texture" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-arb_depth_texture";
-      asd = "cl-glfw-opengl-arb_depth_texture";
-    });
-    systems = [ "cl-glfw-opengl-arb_depth_texture" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-arb_draw_buffers = {
-    pname = "cl-glfw-opengl-arb_draw_buffers";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-arb_draw_buffers" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-arb_draw_buffers";
-      asd = "cl-glfw-opengl-arb_draw_buffers";
-    });
-    systems = [ "cl-glfw-opengl-arb_draw_buffers" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-arb_draw_buffers_blend = {
-    pname = "cl-glfw-opengl-arb_draw_buffers_blend";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-arb_draw_buffers_blend" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-arb_draw_buffers_blend";
-      asd = "cl-glfw-opengl-arb_draw_buffers_blend";
-    });
-    systems = [ "cl-glfw-opengl-arb_draw_buffers_blend" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-arb_draw_elements_base_vertex = {
-    pname = "cl-glfw-opengl-arb_draw_elements_base_vertex";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-arb_draw_elements_base_vertex" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-arb_draw_elements_base_vertex";
-      asd = "cl-glfw-opengl-arb_draw_elements_base_vertex";
-    });
-    systems = [ "cl-glfw-opengl-arb_draw_elements_base_vertex" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-arb_draw_indirect = {
-    pname = "cl-glfw-opengl-arb_draw_indirect";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-arb_draw_indirect" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-arb_draw_indirect";
-      asd = "cl-glfw-opengl-arb_draw_indirect";
-    });
-    systems = [ "cl-glfw-opengl-arb_draw_indirect" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-arb_draw_instanced = {
-    pname = "cl-glfw-opengl-arb_draw_instanced";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-arb_draw_instanced" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-arb_draw_instanced";
-      asd = "cl-glfw-opengl-arb_draw_instanced";
-    });
-    systems = [ "cl-glfw-opengl-arb_draw_instanced" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-arb_es2_compatibility = {
-    pname = "cl-glfw-opengl-arb_es2_compatibility";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-arb_es2_compatibility" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-arb_es2_compatibility";
-      asd = "cl-glfw-opengl-arb_es2_compatibility";
-    });
-    systems = [ "cl-glfw-opengl-arb_es2_compatibility" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-arb_fragment_program = {
-    pname = "cl-glfw-opengl-arb_fragment_program";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-arb_fragment_program" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-arb_fragment_program";
-      asd = "cl-glfw-opengl-arb_fragment_program";
-    });
-    systems = [ "cl-glfw-opengl-arb_fragment_program" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-arb_fragment_shader = {
-    pname = "cl-glfw-opengl-arb_fragment_shader";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-arb_fragment_shader" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-arb_fragment_shader";
-      asd = "cl-glfw-opengl-arb_fragment_shader";
-    });
-    systems = [ "cl-glfw-opengl-arb_fragment_shader" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-arb_framebuffer_object = {
-    pname = "cl-glfw-opengl-arb_framebuffer_object";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-arb_framebuffer_object" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-arb_framebuffer_object";
-      asd = "cl-glfw-opengl-arb_framebuffer_object";
-    });
-    systems = [ "cl-glfw-opengl-arb_framebuffer_object" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-arb_framebuffer_object_deprecated = {
-    pname = "cl-glfw-opengl-arb_framebuffer_object_deprecated";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-arb_framebuffer_object_deprecated" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-arb_framebuffer_object_deprecated";
-      asd = "cl-glfw-opengl-arb_framebuffer_object_deprecated";
-    });
-    systems = [ "cl-glfw-opengl-arb_framebuffer_object_deprecated" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-arb_framebuffer_srgb = {
-    pname = "cl-glfw-opengl-arb_framebuffer_srgb";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-arb_framebuffer_srgb" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-arb_framebuffer_srgb";
-      asd = "cl-glfw-opengl-arb_framebuffer_srgb";
-    });
-    systems = [ "cl-glfw-opengl-arb_framebuffer_srgb" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-arb_geometry_shader4 = {
-    pname = "cl-glfw-opengl-arb_geometry_shader4";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-arb_geometry_shader4" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-arb_geometry_shader4";
-      asd = "cl-glfw-opengl-arb_geometry_shader4";
-    });
-    systems = [ "cl-glfw-opengl-arb_geometry_shader4" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-arb_get_program_binary = {
-    pname = "cl-glfw-opengl-arb_get_program_binary";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-arb_get_program_binary" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-arb_get_program_binary";
-      asd = "cl-glfw-opengl-arb_get_program_binary";
-    });
-    systems = [ "cl-glfw-opengl-arb_get_program_binary" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-arb_gpu_shader5 = {
-    pname = "cl-glfw-opengl-arb_gpu_shader5";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-arb_gpu_shader5" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-arb_gpu_shader5";
-      asd = "cl-glfw-opengl-arb_gpu_shader5";
-    });
-    systems = [ "cl-glfw-opengl-arb_gpu_shader5" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-arb_gpu_shader_fp64 = {
-    pname = "cl-glfw-opengl-arb_gpu_shader_fp64";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-arb_gpu_shader_fp64" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-arb_gpu_shader_fp64";
-      asd = "cl-glfw-opengl-arb_gpu_shader_fp64";
-    });
-    systems = [ "cl-glfw-opengl-arb_gpu_shader_fp64" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-arb_half_float_pixel = {
-    pname = "cl-glfw-opengl-arb_half_float_pixel";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-arb_half_float_pixel" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-arb_half_float_pixel";
-      asd = "cl-glfw-opengl-arb_half_float_pixel";
-    });
-    systems = [ "cl-glfw-opengl-arb_half_float_pixel" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-arb_half_float_vertex = {
-    pname = "cl-glfw-opengl-arb_half_float_vertex";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-arb_half_float_vertex" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-arb_half_float_vertex";
-      asd = "cl-glfw-opengl-arb_half_float_vertex";
-    });
-    systems = [ "cl-glfw-opengl-arb_half_float_vertex" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-arb_imaging = {
-    pname = "cl-glfw-opengl-arb_imaging";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-arb_imaging" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-arb_imaging";
-      asd = "cl-glfw-opengl-arb_imaging";
-    });
-    systems = [ "cl-glfw-opengl-arb_imaging" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-arb_imaging_deprecated = {
-    pname = "cl-glfw-opengl-arb_imaging_deprecated";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-arb_imaging_deprecated" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-arb_imaging_deprecated";
-      asd = "cl-glfw-opengl-arb_imaging_deprecated";
-    });
-    systems = [ "cl-glfw-opengl-arb_imaging_deprecated" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-arb_instanced_arrays = {
-    pname = "cl-glfw-opengl-arb_instanced_arrays";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-arb_instanced_arrays" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-arb_instanced_arrays";
-      asd = "cl-glfw-opengl-arb_instanced_arrays";
-    });
-    systems = [ "cl-glfw-opengl-arb_instanced_arrays" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-arb_map_buffer_range = {
-    pname = "cl-glfw-opengl-arb_map_buffer_range";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-arb_map_buffer_range" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-arb_map_buffer_range";
-      asd = "cl-glfw-opengl-arb_map_buffer_range";
-    });
-    systems = [ "cl-glfw-opengl-arb_map_buffer_range" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-arb_matrix_palette = {
-    pname = "cl-glfw-opengl-arb_matrix_palette";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-arb_matrix_palette" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-arb_matrix_palette";
-      asd = "cl-glfw-opengl-arb_matrix_palette";
-    });
-    systems = [ "cl-glfw-opengl-arb_matrix_palette" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-arb_multisample = {
-    pname = "cl-glfw-opengl-arb_multisample";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-arb_multisample" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-arb_multisample";
-      asd = "cl-glfw-opengl-arb_multisample";
-    });
-    systems = [ "cl-glfw-opengl-arb_multisample" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-arb_multitexture = {
-    pname = "cl-glfw-opengl-arb_multitexture";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-arb_multitexture" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-arb_multitexture";
-      asd = "cl-glfw-opengl-arb_multitexture";
-    });
-    systems = [ "cl-glfw-opengl-arb_multitexture" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-arb_occlusion_query = {
-    pname = "cl-glfw-opengl-arb_occlusion_query";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-arb_occlusion_query" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-arb_occlusion_query";
-      asd = "cl-glfw-opengl-arb_occlusion_query";
-    });
-    systems = [ "cl-glfw-opengl-arb_occlusion_query" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-arb_occlusion_query2 = {
-    pname = "cl-glfw-opengl-arb_occlusion_query2";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-arb_occlusion_query2" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-arb_occlusion_query2";
-      asd = "cl-glfw-opengl-arb_occlusion_query2";
-    });
-    systems = [ "cl-glfw-opengl-arb_occlusion_query2" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-arb_pixel_buffer_object = {
-    pname = "cl-glfw-opengl-arb_pixel_buffer_object";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-arb_pixel_buffer_object" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-arb_pixel_buffer_object";
-      asd = "cl-glfw-opengl-arb_pixel_buffer_object";
-    });
-    systems = [ "cl-glfw-opengl-arb_pixel_buffer_object" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-arb_point_parameters = {
-    pname = "cl-glfw-opengl-arb_point_parameters";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-arb_point_parameters" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-arb_point_parameters";
-      asd = "cl-glfw-opengl-arb_point_parameters";
-    });
-    systems = [ "cl-glfw-opengl-arb_point_parameters" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-arb_point_sprite = {
-    pname = "cl-glfw-opengl-arb_point_sprite";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-arb_point_sprite" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-arb_point_sprite";
-      asd = "cl-glfw-opengl-arb_point_sprite";
-    });
-    systems = [ "cl-glfw-opengl-arb_point_sprite" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-arb_provoking_vertex = {
-    pname = "cl-glfw-opengl-arb_provoking_vertex";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-arb_provoking_vertex" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-arb_provoking_vertex";
-      asd = "cl-glfw-opengl-arb_provoking_vertex";
-    });
-    systems = [ "cl-glfw-opengl-arb_provoking_vertex" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-arb_robustness = {
-    pname = "cl-glfw-opengl-arb_robustness";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-arb_robustness" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-arb_robustness";
-      asd = "cl-glfw-opengl-arb_robustness";
-    });
-    systems = [ "cl-glfw-opengl-arb_robustness" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-arb_sample_shading = {
-    pname = "cl-glfw-opengl-arb_sample_shading";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-arb_sample_shading" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-arb_sample_shading";
-      asd = "cl-glfw-opengl-arb_sample_shading";
-    });
-    systems = [ "cl-glfw-opengl-arb_sample_shading" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-arb_sampler_objects = {
-    pname = "cl-glfw-opengl-arb_sampler_objects";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-arb_sampler_objects" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-arb_sampler_objects";
-      asd = "cl-glfw-opengl-arb_sampler_objects";
-    });
-    systems = [ "cl-glfw-opengl-arb_sampler_objects" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-arb_seamless_cube_map = {
-    pname = "cl-glfw-opengl-arb_seamless_cube_map";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-arb_seamless_cube_map" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-arb_seamless_cube_map";
-      asd = "cl-glfw-opengl-arb_seamless_cube_map";
-    });
-    systems = [ "cl-glfw-opengl-arb_seamless_cube_map" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-arb_separate_shader_objects = {
-    pname = "cl-glfw-opengl-arb_separate_shader_objects";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-arb_separate_shader_objects" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-arb_separate_shader_objects";
-      asd = "cl-glfw-opengl-arb_separate_shader_objects";
-    });
-    systems = [ "cl-glfw-opengl-arb_separate_shader_objects" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-arb_shader_objects = {
-    pname = "cl-glfw-opengl-arb_shader_objects";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-arb_shader_objects" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-arb_shader_objects";
-      asd = "cl-glfw-opengl-arb_shader_objects";
-    });
-    systems = [ "cl-glfw-opengl-arb_shader_objects" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-arb_shader_subroutine = {
-    pname = "cl-glfw-opengl-arb_shader_subroutine";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-arb_shader_subroutine" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-arb_shader_subroutine";
-      asd = "cl-glfw-opengl-arb_shader_subroutine";
-    });
-    systems = [ "cl-glfw-opengl-arb_shader_subroutine" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-arb_shading_language_100 = {
-    pname = "cl-glfw-opengl-arb_shading_language_100";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-arb_shading_language_100" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-arb_shading_language_100";
-      asd = "cl-glfw-opengl-arb_shading_language_100";
-    });
-    systems = [ "cl-glfw-opengl-arb_shading_language_100" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-arb_shading_language_include = {
-    pname = "cl-glfw-opengl-arb_shading_language_include";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-arb_shading_language_include" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-arb_shading_language_include";
-      asd = "cl-glfw-opengl-arb_shading_language_include";
-    });
-    systems = [ "cl-glfw-opengl-arb_shading_language_include" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-arb_shadow = {
-    pname = "cl-glfw-opengl-arb_shadow";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-arb_shadow" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-arb_shadow";
-      asd = "cl-glfw-opengl-arb_shadow";
-    });
-    systems = [ "cl-glfw-opengl-arb_shadow" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-arb_shadow_ambient = {
-    pname = "cl-glfw-opengl-arb_shadow_ambient";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-arb_shadow_ambient" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-arb_shadow_ambient";
-      asd = "cl-glfw-opengl-arb_shadow_ambient";
-    });
-    systems = [ "cl-glfw-opengl-arb_shadow_ambient" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-arb_tessellation_shader = {
-    pname = "cl-glfw-opengl-arb_tessellation_shader";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-arb_tessellation_shader" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-arb_tessellation_shader";
-      asd = "cl-glfw-opengl-arb_tessellation_shader";
-    });
-    systems = [ "cl-glfw-opengl-arb_tessellation_shader" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-arb_texture_border_clamp = {
-    pname = "cl-glfw-opengl-arb_texture_border_clamp";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-arb_texture_border_clamp" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-arb_texture_border_clamp";
-      asd = "cl-glfw-opengl-arb_texture_border_clamp";
-    });
-    systems = [ "cl-glfw-opengl-arb_texture_border_clamp" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-arb_texture_buffer_object = {
-    pname = "cl-glfw-opengl-arb_texture_buffer_object";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-arb_texture_buffer_object" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-arb_texture_buffer_object";
-      asd = "cl-glfw-opengl-arb_texture_buffer_object";
-    });
-    systems = [ "cl-glfw-opengl-arb_texture_buffer_object" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-arb_texture_buffer_object_rgb32 = {
-    pname = "cl-glfw-opengl-arb_texture_buffer_object_rgb32";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-arb_texture_buffer_object_rgb32" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-arb_texture_buffer_object_rgb32";
-      asd = "cl-glfw-opengl-arb_texture_buffer_object_rgb32";
-    });
-    systems = [ "cl-glfw-opengl-arb_texture_buffer_object_rgb32" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-arb_texture_compression = {
-    pname = "cl-glfw-opengl-arb_texture_compression";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-arb_texture_compression" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-arb_texture_compression";
-      asd = "cl-glfw-opengl-arb_texture_compression";
-    });
-    systems = [ "cl-glfw-opengl-arb_texture_compression" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-arb_texture_compression_bptc = {
-    pname = "cl-glfw-opengl-arb_texture_compression_bptc";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-arb_texture_compression_bptc" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-arb_texture_compression_bptc";
-      asd = "cl-glfw-opengl-arb_texture_compression_bptc";
-    });
-    systems = [ "cl-glfw-opengl-arb_texture_compression_bptc" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-arb_texture_compression_rgtc = {
-    pname = "cl-glfw-opengl-arb_texture_compression_rgtc";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-arb_texture_compression_rgtc" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-arb_texture_compression_rgtc";
-      asd = "cl-glfw-opengl-arb_texture_compression_rgtc";
-    });
-    systems = [ "cl-glfw-opengl-arb_texture_compression_rgtc" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-arb_texture_cube_map = {
-    pname = "cl-glfw-opengl-arb_texture_cube_map";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-arb_texture_cube_map" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-arb_texture_cube_map";
-      asd = "cl-glfw-opengl-arb_texture_cube_map";
-    });
-    systems = [ "cl-glfw-opengl-arb_texture_cube_map" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-arb_texture_cube_map_array = {
-    pname = "cl-glfw-opengl-arb_texture_cube_map_array";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-arb_texture_cube_map_array" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-arb_texture_cube_map_array";
-      asd = "cl-glfw-opengl-arb_texture_cube_map_array";
-    });
-    systems = [ "cl-glfw-opengl-arb_texture_cube_map_array" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-arb_texture_env_combine = {
-    pname = "cl-glfw-opengl-arb_texture_env_combine";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-arb_texture_env_combine" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-arb_texture_env_combine";
-      asd = "cl-glfw-opengl-arb_texture_env_combine";
-    });
-    systems = [ "cl-glfw-opengl-arb_texture_env_combine" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-arb_texture_env_dot3 = {
-    pname = "cl-glfw-opengl-arb_texture_env_dot3";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-arb_texture_env_dot3" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-arb_texture_env_dot3";
-      asd = "cl-glfw-opengl-arb_texture_env_dot3";
-    });
-    systems = [ "cl-glfw-opengl-arb_texture_env_dot3" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-arb_texture_float = {
-    pname = "cl-glfw-opengl-arb_texture_float";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-arb_texture_float" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-arb_texture_float";
-      asd = "cl-glfw-opengl-arb_texture_float";
-    });
-    systems = [ "cl-glfw-opengl-arb_texture_float" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-arb_texture_gather = {
-    pname = "cl-glfw-opengl-arb_texture_gather";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-arb_texture_gather" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-arb_texture_gather";
-      asd = "cl-glfw-opengl-arb_texture_gather";
-    });
-    systems = [ "cl-glfw-opengl-arb_texture_gather" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-arb_texture_mirrored_repeat = {
-    pname = "cl-glfw-opengl-arb_texture_mirrored_repeat";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-arb_texture_mirrored_repeat" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-arb_texture_mirrored_repeat";
-      asd = "cl-glfw-opengl-arb_texture_mirrored_repeat";
-    });
-    systems = [ "cl-glfw-opengl-arb_texture_mirrored_repeat" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-arb_texture_multisample = {
-    pname = "cl-glfw-opengl-arb_texture_multisample";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-arb_texture_multisample" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-arb_texture_multisample";
-      asd = "cl-glfw-opengl-arb_texture_multisample";
-    });
-    systems = [ "cl-glfw-opengl-arb_texture_multisample" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-arb_texture_rectangle = {
-    pname = "cl-glfw-opengl-arb_texture_rectangle";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-arb_texture_rectangle" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-arb_texture_rectangle";
-      asd = "cl-glfw-opengl-arb_texture_rectangle";
-    });
-    systems = [ "cl-glfw-opengl-arb_texture_rectangle" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-arb_texture_rg = {
-    pname = "cl-glfw-opengl-arb_texture_rg";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-arb_texture_rg" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-arb_texture_rg";
-      asd = "cl-glfw-opengl-arb_texture_rg";
-    });
-    systems = [ "cl-glfw-opengl-arb_texture_rg" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-arb_texture_rgb10_a2ui = {
-    pname = "cl-glfw-opengl-arb_texture_rgb10_a2ui";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-arb_texture_rgb10_a2ui" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-arb_texture_rgb10_a2ui";
-      asd = "cl-glfw-opengl-arb_texture_rgb10_a2ui";
-    });
-    systems = [ "cl-glfw-opengl-arb_texture_rgb10_a2ui" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-arb_texture_swizzle = {
-    pname = "cl-glfw-opengl-arb_texture_swizzle";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-arb_texture_swizzle" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-arb_texture_swizzle";
-      asd = "cl-glfw-opengl-arb_texture_swizzle";
-    });
-    systems = [ "cl-glfw-opengl-arb_texture_swizzle" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-arb_timer_query = {
-    pname = "cl-glfw-opengl-arb_timer_query";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-arb_timer_query" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-arb_timer_query";
-      asd = "cl-glfw-opengl-arb_timer_query";
-    });
-    systems = [ "cl-glfw-opengl-arb_timer_query" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-arb_transform_feedback2 = {
-    pname = "cl-glfw-opengl-arb_transform_feedback2";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-arb_transform_feedback2" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-arb_transform_feedback2";
-      asd = "cl-glfw-opengl-arb_transform_feedback2";
-    });
-    systems = [ "cl-glfw-opengl-arb_transform_feedback2" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-arb_transpose_matrix = {
-    pname = "cl-glfw-opengl-arb_transpose_matrix";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-arb_transpose_matrix" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-arb_transpose_matrix";
-      asd = "cl-glfw-opengl-arb_transpose_matrix";
-    });
-    systems = [ "cl-glfw-opengl-arb_transpose_matrix" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-arb_uniform_buffer_object = {
-    pname = "cl-glfw-opengl-arb_uniform_buffer_object";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-arb_uniform_buffer_object" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-arb_uniform_buffer_object";
-      asd = "cl-glfw-opengl-arb_uniform_buffer_object";
-    });
-    systems = [ "cl-glfw-opengl-arb_uniform_buffer_object" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-arb_vertex_array_bgra = {
-    pname = "cl-glfw-opengl-arb_vertex_array_bgra";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-arb_vertex_array_bgra" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-arb_vertex_array_bgra";
-      asd = "cl-glfw-opengl-arb_vertex_array_bgra";
-    });
-    systems = [ "cl-glfw-opengl-arb_vertex_array_bgra" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-arb_vertex_array_object = {
-    pname = "cl-glfw-opengl-arb_vertex_array_object";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-arb_vertex_array_object" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-arb_vertex_array_object";
-      asd = "cl-glfw-opengl-arb_vertex_array_object";
-    });
-    systems = [ "cl-glfw-opengl-arb_vertex_array_object" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-arb_vertex_attrib_64bit = {
-    pname = "cl-glfw-opengl-arb_vertex_attrib_64bit";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-arb_vertex_attrib_64bit" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-arb_vertex_attrib_64bit";
-      asd = "cl-glfw-opengl-arb_vertex_attrib_64bit";
-    });
-    systems = [ "cl-glfw-opengl-arb_vertex_attrib_64bit" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-arb_vertex_blend = {
-    pname = "cl-glfw-opengl-arb_vertex_blend";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-arb_vertex_blend" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-arb_vertex_blend";
-      asd = "cl-glfw-opengl-arb_vertex_blend";
-    });
-    systems = [ "cl-glfw-opengl-arb_vertex_blend" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-arb_vertex_buffer_object = {
-    pname = "cl-glfw-opengl-arb_vertex_buffer_object";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-arb_vertex_buffer_object" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-arb_vertex_buffer_object";
-      asd = "cl-glfw-opengl-arb_vertex_buffer_object";
-    });
-    systems = [ "cl-glfw-opengl-arb_vertex_buffer_object" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-arb_vertex_program = {
-    pname = "cl-glfw-opengl-arb_vertex_program";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-arb_vertex_program" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-arb_vertex_program";
-      asd = "cl-glfw-opengl-arb_vertex_program";
-    });
-    systems = [ "cl-glfw-opengl-arb_vertex_program" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-arb_vertex_shader = {
-    pname = "cl-glfw-opengl-arb_vertex_shader";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-arb_vertex_shader" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-arb_vertex_shader";
-      asd = "cl-glfw-opengl-arb_vertex_shader";
-    });
-    systems = [ "cl-glfw-opengl-arb_vertex_shader" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-arb_vertex_type_2_10_10_10_rev = {
-    pname = "cl-glfw-opengl-arb_vertex_type_2_10_10_10_rev";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-arb_vertex_type_2_10_10_10_rev" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-arb_vertex_type_2_10_10_10_rev";
-      asd = "cl-glfw-opengl-arb_vertex_type_2_10_10_10_rev";
-    });
-    systems = [ "cl-glfw-opengl-arb_vertex_type_2_10_10_10_rev" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-arb_viewport_array = {
-    pname = "cl-glfw-opengl-arb_viewport_array";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-arb_viewport_array" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-arb_viewport_array";
-      asd = "cl-glfw-opengl-arb_viewport_array";
-    });
-    systems = [ "cl-glfw-opengl-arb_viewport_array" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-arb_window_pos = {
-    pname = "cl-glfw-opengl-arb_window_pos";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-arb_window_pos" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-arb_window_pos";
-      asd = "cl-glfw-opengl-arb_window_pos";
-    });
-    systems = [ "cl-glfw-opengl-arb_window_pos" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-ati_draw_buffers = {
-    pname = "cl-glfw-opengl-ati_draw_buffers";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-ati_draw_buffers" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-ati_draw_buffers";
-      asd = "cl-glfw-opengl-ati_draw_buffers";
-    });
-    systems = [ "cl-glfw-opengl-ati_draw_buffers" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-ati_element_array = {
-    pname = "cl-glfw-opengl-ati_element_array";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-ati_element_array" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-ati_element_array";
-      asd = "cl-glfw-opengl-ati_element_array";
-    });
-    systems = [ "cl-glfw-opengl-ati_element_array" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-ati_envmap_bumpmap = {
-    pname = "cl-glfw-opengl-ati_envmap_bumpmap";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-ati_envmap_bumpmap" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-ati_envmap_bumpmap";
-      asd = "cl-glfw-opengl-ati_envmap_bumpmap";
-    });
-    systems = [ "cl-glfw-opengl-ati_envmap_bumpmap" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-ati_fragment_shader = {
-    pname = "cl-glfw-opengl-ati_fragment_shader";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-ati_fragment_shader" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-ati_fragment_shader";
-      asd = "cl-glfw-opengl-ati_fragment_shader";
-    });
-    systems = [ "cl-glfw-opengl-ati_fragment_shader" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-ati_map_object_buffer = {
-    pname = "cl-glfw-opengl-ati_map_object_buffer";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-ati_map_object_buffer" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-ati_map_object_buffer";
-      asd = "cl-glfw-opengl-ati_map_object_buffer";
-    });
-    systems = [ "cl-glfw-opengl-ati_map_object_buffer" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-ati_meminfo = {
-    pname = "cl-glfw-opengl-ati_meminfo";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-ati_meminfo" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-ati_meminfo";
-      asd = "cl-glfw-opengl-ati_meminfo";
-    });
-    systems = [ "cl-glfw-opengl-ati_meminfo" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-ati_pixel_format_float = {
-    pname = "cl-glfw-opengl-ati_pixel_format_float";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-ati_pixel_format_float" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-ati_pixel_format_float";
-      asd = "cl-glfw-opengl-ati_pixel_format_float";
-    });
-    systems = [ "cl-glfw-opengl-ati_pixel_format_float" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-ati_pn_triangles = {
-    pname = "cl-glfw-opengl-ati_pn_triangles";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-ati_pn_triangles" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-ati_pn_triangles";
-      asd = "cl-glfw-opengl-ati_pn_triangles";
-    });
-    systems = [ "cl-glfw-opengl-ati_pn_triangles" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-ati_separate_stencil = {
-    pname = "cl-glfw-opengl-ati_separate_stencil";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-ati_separate_stencil" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-ati_separate_stencil";
-      asd = "cl-glfw-opengl-ati_separate_stencil";
-    });
-    systems = [ "cl-glfw-opengl-ati_separate_stencil" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-ati_text_fragment_shader = {
-    pname = "cl-glfw-opengl-ati_text_fragment_shader";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-ati_text_fragment_shader" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-ati_text_fragment_shader";
-      asd = "cl-glfw-opengl-ati_text_fragment_shader";
-    });
-    systems = [ "cl-glfw-opengl-ati_text_fragment_shader" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-ati_texture_env_combine3 = {
-    pname = "cl-glfw-opengl-ati_texture_env_combine3";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-ati_texture_env_combine3" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-ati_texture_env_combine3";
-      asd = "cl-glfw-opengl-ati_texture_env_combine3";
-    });
-    systems = [ "cl-glfw-opengl-ati_texture_env_combine3" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-ati_texture_float = {
-    pname = "cl-glfw-opengl-ati_texture_float";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-ati_texture_float" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-ati_texture_float";
-      asd = "cl-glfw-opengl-ati_texture_float";
-    });
-    systems = [ "cl-glfw-opengl-ati_texture_float" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-ati_texture_mirror_once = {
-    pname = "cl-glfw-opengl-ati_texture_mirror_once";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-ati_texture_mirror_once" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-ati_texture_mirror_once";
-      asd = "cl-glfw-opengl-ati_texture_mirror_once";
-    });
-    systems = [ "cl-glfw-opengl-ati_texture_mirror_once" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-ati_vertex_array_object = {
-    pname = "cl-glfw-opengl-ati_vertex_array_object";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-ati_vertex_array_object" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-ati_vertex_array_object";
-      asd = "cl-glfw-opengl-ati_vertex_array_object";
-    });
-    systems = [ "cl-glfw-opengl-ati_vertex_array_object" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-ati_vertex_attrib_array_object = {
-    pname = "cl-glfw-opengl-ati_vertex_attrib_array_object";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-ati_vertex_attrib_array_object" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-ati_vertex_attrib_array_object";
-      asd = "cl-glfw-opengl-ati_vertex_attrib_array_object";
-    });
-    systems = [ "cl-glfw-opengl-ati_vertex_attrib_array_object" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-ati_vertex_streams = {
-    pname = "cl-glfw-opengl-ati_vertex_streams";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-ati_vertex_streams" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-ati_vertex_streams";
-      asd = "cl-glfw-opengl-ati_vertex_streams";
-    });
-    systems = [ "cl-glfw-opengl-ati_vertex_streams" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-core = {
-    pname = "cl-glfw-opengl-core";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-core" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-core";
-      asd = "cl-glfw-opengl-core";
-    });
-    systems = [ "cl-glfw-opengl-core" ];
-    lispLibs = [ (getAttr "cffi" pkgs) (getAttr "cl-glfw-types" pkgs) ];
-  };
-  cl-glfw-opengl-ext_422_pixels = {
-    pname = "cl-glfw-opengl-ext_422_pixels";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-ext_422_pixels" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-ext_422_pixels";
-      asd = "cl-glfw-opengl-ext_422_pixels";
-    });
-    systems = [ "cl-glfw-opengl-ext_422_pixels" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-ext_abgr = {
-    pname = "cl-glfw-opengl-ext_abgr";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-ext_abgr" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-ext_abgr";
-      asd = "cl-glfw-opengl-ext_abgr";
-    });
-    systems = [ "cl-glfw-opengl-ext_abgr" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-ext_bgra = {
-    pname = "cl-glfw-opengl-ext_bgra";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-ext_bgra" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-ext_bgra";
-      asd = "cl-glfw-opengl-ext_bgra";
-    });
-    systems = [ "cl-glfw-opengl-ext_bgra" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-ext_bindable_uniform = {
-    pname = "cl-glfw-opengl-ext_bindable_uniform";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-ext_bindable_uniform" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-ext_bindable_uniform";
-      asd = "cl-glfw-opengl-ext_bindable_uniform";
-    });
-    systems = [ "cl-glfw-opengl-ext_bindable_uniform" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-ext_blend_color = {
-    pname = "cl-glfw-opengl-ext_blend_color";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-ext_blend_color" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-ext_blend_color";
-      asd = "cl-glfw-opengl-ext_blend_color";
-    });
-    systems = [ "cl-glfw-opengl-ext_blend_color" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-ext_blend_equation_separate = {
-    pname = "cl-glfw-opengl-ext_blend_equation_separate";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-ext_blend_equation_separate" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-ext_blend_equation_separate";
-      asd = "cl-glfw-opengl-ext_blend_equation_separate";
-    });
-    systems = [ "cl-glfw-opengl-ext_blend_equation_separate" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-ext_blend_func_separate = {
-    pname = "cl-glfw-opengl-ext_blend_func_separate";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-ext_blend_func_separate" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-ext_blend_func_separate";
-      asd = "cl-glfw-opengl-ext_blend_func_separate";
-    });
-    systems = [ "cl-glfw-opengl-ext_blend_func_separate" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-ext_blend_minmax = {
-    pname = "cl-glfw-opengl-ext_blend_minmax";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-ext_blend_minmax" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-ext_blend_minmax";
-      asd = "cl-glfw-opengl-ext_blend_minmax";
-    });
-    systems = [ "cl-glfw-opengl-ext_blend_minmax" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-ext_blend_subtract = {
-    pname = "cl-glfw-opengl-ext_blend_subtract";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-ext_blend_subtract" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-ext_blend_subtract";
-      asd = "cl-glfw-opengl-ext_blend_subtract";
-    });
-    systems = [ "cl-glfw-opengl-ext_blend_subtract" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-ext_clip_volume_hint = {
-    pname = "cl-glfw-opengl-ext_clip_volume_hint";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-ext_clip_volume_hint" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-ext_clip_volume_hint";
-      asd = "cl-glfw-opengl-ext_clip_volume_hint";
-    });
-    systems = [ "cl-glfw-opengl-ext_clip_volume_hint" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-ext_cmyka = {
-    pname = "cl-glfw-opengl-ext_cmyka";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-ext_cmyka" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-ext_cmyka";
-      asd = "cl-glfw-opengl-ext_cmyka";
-    });
-    systems = [ "cl-glfw-opengl-ext_cmyka" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-ext_color_subtable = {
-    pname = "cl-glfw-opengl-ext_color_subtable";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-ext_color_subtable" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-ext_color_subtable";
-      asd = "cl-glfw-opengl-ext_color_subtable";
-    });
-    systems = [ "cl-glfw-opengl-ext_color_subtable" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-ext_compiled_vertex_array = {
-    pname = "cl-glfw-opengl-ext_compiled_vertex_array";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-ext_compiled_vertex_array" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-ext_compiled_vertex_array";
-      asd = "cl-glfw-opengl-ext_compiled_vertex_array";
-    });
-    systems = [ "cl-glfw-opengl-ext_compiled_vertex_array" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-ext_convolution = {
-    pname = "cl-glfw-opengl-ext_convolution";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-ext_convolution" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-ext_convolution";
-      asd = "cl-glfw-opengl-ext_convolution";
-    });
-    systems = [ "cl-glfw-opengl-ext_convolution" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-ext_coordinate_frame = {
-    pname = "cl-glfw-opengl-ext_coordinate_frame";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-ext_coordinate_frame" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-ext_coordinate_frame";
-      asd = "cl-glfw-opengl-ext_coordinate_frame";
-    });
-    systems = [ "cl-glfw-opengl-ext_coordinate_frame" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-ext_copy_texture = {
-    pname = "cl-glfw-opengl-ext_copy_texture";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-ext_copy_texture" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-ext_copy_texture";
-      asd = "cl-glfw-opengl-ext_copy_texture";
-    });
-    systems = [ "cl-glfw-opengl-ext_copy_texture" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-ext_cull_vertex = {
-    pname = "cl-glfw-opengl-ext_cull_vertex";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-ext_cull_vertex" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-ext_cull_vertex";
-      asd = "cl-glfw-opengl-ext_cull_vertex";
-    });
-    systems = [ "cl-glfw-opengl-ext_cull_vertex" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-ext_depth_bounds_test = {
-    pname = "cl-glfw-opengl-ext_depth_bounds_test";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-ext_depth_bounds_test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-ext_depth_bounds_test";
-      asd = "cl-glfw-opengl-ext_depth_bounds_test";
-    });
-    systems = [ "cl-glfw-opengl-ext_depth_bounds_test" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-ext_direct_state_access = {
-    pname = "cl-glfw-opengl-ext_direct_state_access";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-ext_direct_state_access" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-ext_direct_state_access";
-      asd = "cl-glfw-opengl-ext_direct_state_access";
-    });
-    systems = [ "cl-glfw-opengl-ext_direct_state_access" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-ext_draw_buffers2 = {
-    pname = "cl-glfw-opengl-ext_draw_buffers2";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-ext_draw_buffers2" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-ext_draw_buffers2";
-      asd = "cl-glfw-opengl-ext_draw_buffers2";
-    });
-    systems = [ "cl-glfw-opengl-ext_draw_buffers2" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-ext_draw_instanced = {
-    pname = "cl-glfw-opengl-ext_draw_instanced";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-ext_draw_instanced" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-ext_draw_instanced";
-      asd = "cl-glfw-opengl-ext_draw_instanced";
-    });
-    systems = [ "cl-glfw-opengl-ext_draw_instanced" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-ext_draw_range_elements = {
-    pname = "cl-glfw-opengl-ext_draw_range_elements";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-ext_draw_range_elements" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-ext_draw_range_elements";
-      asd = "cl-glfw-opengl-ext_draw_range_elements";
-    });
-    systems = [ "cl-glfw-opengl-ext_draw_range_elements" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-ext_fog_coord = {
-    pname = "cl-glfw-opengl-ext_fog_coord";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-ext_fog_coord" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-ext_fog_coord";
-      asd = "cl-glfw-opengl-ext_fog_coord";
-    });
-    systems = [ "cl-glfw-opengl-ext_fog_coord" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-ext_framebuffer_blit = {
-    pname = "cl-glfw-opengl-ext_framebuffer_blit";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-ext_framebuffer_blit" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-ext_framebuffer_blit";
-      asd = "cl-glfw-opengl-ext_framebuffer_blit";
-    });
-    systems = [ "cl-glfw-opengl-ext_framebuffer_blit" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-ext_framebuffer_multisample = {
-    pname = "cl-glfw-opengl-ext_framebuffer_multisample";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-ext_framebuffer_multisample" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-ext_framebuffer_multisample";
-      asd = "cl-glfw-opengl-ext_framebuffer_multisample";
-    });
-    systems = [ "cl-glfw-opengl-ext_framebuffer_multisample" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-ext_framebuffer_object = {
-    pname = "cl-glfw-opengl-ext_framebuffer_object";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-ext_framebuffer_object" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-ext_framebuffer_object";
-      asd = "cl-glfw-opengl-ext_framebuffer_object";
-    });
-    systems = [ "cl-glfw-opengl-ext_framebuffer_object" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-ext_framebuffer_srgb = {
-    pname = "cl-glfw-opengl-ext_framebuffer_srgb";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-ext_framebuffer_srgb" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-ext_framebuffer_srgb";
-      asd = "cl-glfw-opengl-ext_framebuffer_srgb";
-    });
-    systems = [ "cl-glfw-opengl-ext_framebuffer_srgb" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-ext_geometry_shader4 = {
-    pname = "cl-glfw-opengl-ext_geometry_shader4";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-ext_geometry_shader4" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-ext_geometry_shader4";
-      asd = "cl-glfw-opengl-ext_geometry_shader4";
-    });
-    systems = [ "cl-glfw-opengl-ext_geometry_shader4" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-ext_gpu_program_parameters = {
-    pname = "cl-glfw-opengl-ext_gpu_program_parameters";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-ext_gpu_program_parameters" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-ext_gpu_program_parameters";
-      asd = "cl-glfw-opengl-ext_gpu_program_parameters";
-    });
-    systems = [ "cl-glfw-opengl-ext_gpu_program_parameters" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-ext_gpu_shader4 = {
-    pname = "cl-glfw-opengl-ext_gpu_shader4";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-ext_gpu_shader4" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-ext_gpu_shader4";
-      asd = "cl-glfw-opengl-ext_gpu_shader4";
-    });
-    systems = [ "cl-glfw-opengl-ext_gpu_shader4" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-ext_histogram = {
-    pname = "cl-glfw-opengl-ext_histogram";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-ext_histogram" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-ext_histogram";
-      asd = "cl-glfw-opengl-ext_histogram";
-    });
-    systems = [ "cl-glfw-opengl-ext_histogram" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-ext_index_array_formats = {
-    pname = "cl-glfw-opengl-ext_index_array_formats";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-ext_index_array_formats" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-ext_index_array_formats";
-      asd = "cl-glfw-opengl-ext_index_array_formats";
-    });
-    systems = [ "cl-glfw-opengl-ext_index_array_formats" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-ext_index_func = {
-    pname = "cl-glfw-opengl-ext_index_func";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-ext_index_func" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-ext_index_func";
-      asd = "cl-glfw-opengl-ext_index_func";
-    });
-    systems = [ "cl-glfw-opengl-ext_index_func" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-ext_index_material = {
-    pname = "cl-glfw-opengl-ext_index_material";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-ext_index_material" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-ext_index_material";
-      asd = "cl-glfw-opengl-ext_index_material";
-    });
-    systems = [ "cl-glfw-opengl-ext_index_material" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-ext_light_texture = {
-    pname = "cl-glfw-opengl-ext_light_texture";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-ext_light_texture" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-ext_light_texture";
-      asd = "cl-glfw-opengl-ext_light_texture";
-    });
-    systems = [ "cl-glfw-opengl-ext_light_texture" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-ext_multi_draw_arrays = {
-    pname = "cl-glfw-opengl-ext_multi_draw_arrays";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-ext_multi_draw_arrays" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-ext_multi_draw_arrays";
-      asd = "cl-glfw-opengl-ext_multi_draw_arrays";
-    });
-    systems = [ "cl-glfw-opengl-ext_multi_draw_arrays" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-ext_multisample = {
-    pname = "cl-glfw-opengl-ext_multisample";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-ext_multisample" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-ext_multisample";
-      asd = "cl-glfw-opengl-ext_multisample";
-    });
-    systems = [ "cl-glfw-opengl-ext_multisample" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-ext_packed_depth_stencil = {
-    pname = "cl-glfw-opengl-ext_packed_depth_stencil";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-ext_packed_depth_stencil" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-ext_packed_depth_stencil";
-      asd = "cl-glfw-opengl-ext_packed_depth_stencil";
-    });
-    systems = [ "cl-glfw-opengl-ext_packed_depth_stencil" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-ext_packed_float = {
-    pname = "cl-glfw-opengl-ext_packed_float";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-ext_packed_float" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-ext_packed_float";
-      asd = "cl-glfw-opengl-ext_packed_float";
-    });
-    systems = [ "cl-glfw-opengl-ext_packed_float" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-ext_packed_pixels = {
-    pname = "cl-glfw-opengl-ext_packed_pixels";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-ext_packed_pixels" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-ext_packed_pixels";
-      asd = "cl-glfw-opengl-ext_packed_pixels";
-    });
-    systems = [ "cl-glfw-opengl-ext_packed_pixels" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-ext_paletted_texture = {
-    pname = "cl-glfw-opengl-ext_paletted_texture";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-ext_paletted_texture" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-ext_paletted_texture";
-      asd = "cl-glfw-opengl-ext_paletted_texture";
-    });
-    systems = [ "cl-glfw-opengl-ext_paletted_texture" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-ext_pixel_buffer_object = {
-    pname = "cl-glfw-opengl-ext_pixel_buffer_object";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-ext_pixel_buffer_object" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-ext_pixel_buffer_object";
-      asd = "cl-glfw-opengl-ext_pixel_buffer_object";
-    });
-    systems = [ "cl-glfw-opengl-ext_pixel_buffer_object" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-ext_pixel_transform = {
-    pname = "cl-glfw-opengl-ext_pixel_transform";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-ext_pixel_transform" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-ext_pixel_transform";
-      asd = "cl-glfw-opengl-ext_pixel_transform";
-    });
-    systems = [ "cl-glfw-opengl-ext_pixel_transform" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-ext_point_parameters = {
-    pname = "cl-glfw-opengl-ext_point_parameters";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-ext_point_parameters" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-ext_point_parameters";
-      asd = "cl-glfw-opengl-ext_point_parameters";
-    });
-    systems = [ "cl-glfw-opengl-ext_point_parameters" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-ext_polygon_offset = {
-    pname = "cl-glfw-opengl-ext_polygon_offset";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-ext_polygon_offset" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-ext_polygon_offset";
-      asd = "cl-glfw-opengl-ext_polygon_offset";
-    });
-    systems = [ "cl-glfw-opengl-ext_polygon_offset" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-ext_provoking_vertex = {
-    pname = "cl-glfw-opengl-ext_provoking_vertex";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-ext_provoking_vertex" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-ext_provoking_vertex";
-      asd = "cl-glfw-opengl-ext_provoking_vertex";
-    });
-    systems = [ "cl-glfw-opengl-ext_provoking_vertex" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-ext_secondary_color = {
-    pname = "cl-glfw-opengl-ext_secondary_color";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-ext_secondary_color" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-ext_secondary_color";
-      asd = "cl-glfw-opengl-ext_secondary_color";
-    });
-    systems = [ "cl-glfw-opengl-ext_secondary_color" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-ext_separate_shader_objects = {
-    pname = "cl-glfw-opengl-ext_separate_shader_objects";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-ext_separate_shader_objects" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-ext_separate_shader_objects";
-      asd = "cl-glfw-opengl-ext_separate_shader_objects";
-    });
-    systems = [ "cl-glfw-opengl-ext_separate_shader_objects" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-ext_separate_specular_color = {
-    pname = "cl-glfw-opengl-ext_separate_specular_color";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-ext_separate_specular_color" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-ext_separate_specular_color";
-      asd = "cl-glfw-opengl-ext_separate_specular_color";
-    });
-    systems = [ "cl-glfw-opengl-ext_separate_specular_color" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-ext_shader_image_load_store = {
-    pname = "cl-glfw-opengl-ext_shader_image_load_store";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-ext_shader_image_load_store" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-ext_shader_image_load_store";
-      asd = "cl-glfw-opengl-ext_shader_image_load_store";
-    });
-    systems = [ "cl-glfw-opengl-ext_shader_image_load_store" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-ext_stencil_clear_tag = {
-    pname = "cl-glfw-opengl-ext_stencil_clear_tag";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-ext_stencil_clear_tag" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-ext_stencil_clear_tag";
-      asd = "cl-glfw-opengl-ext_stencil_clear_tag";
-    });
-    systems = [ "cl-glfw-opengl-ext_stencil_clear_tag" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-ext_stencil_two_side = {
-    pname = "cl-glfw-opengl-ext_stencil_two_side";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-ext_stencil_two_side" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-ext_stencil_two_side";
-      asd = "cl-glfw-opengl-ext_stencil_two_side";
-    });
-    systems = [ "cl-glfw-opengl-ext_stencil_two_side" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-ext_stencil_wrap = {
-    pname = "cl-glfw-opengl-ext_stencil_wrap";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-ext_stencil_wrap" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-ext_stencil_wrap";
-      asd = "cl-glfw-opengl-ext_stencil_wrap";
-    });
-    systems = [ "cl-glfw-opengl-ext_stencil_wrap" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-ext_subtexture = {
-    pname = "cl-glfw-opengl-ext_subtexture";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-ext_subtexture" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-ext_subtexture";
-      asd = "cl-glfw-opengl-ext_subtexture";
-    });
-    systems = [ "cl-glfw-opengl-ext_subtexture" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-ext_texture = {
-    pname = "cl-glfw-opengl-ext_texture";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-ext_texture" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-ext_texture";
-      asd = "cl-glfw-opengl-ext_texture";
-    });
-    systems = [ "cl-glfw-opengl-ext_texture" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-ext_texture3d = {
-    pname = "cl-glfw-opengl-ext_texture3d";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-ext_texture3d" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-ext_texture3d";
-      asd = "cl-glfw-opengl-ext_texture3d";
-    });
-    systems = [ "cl-glfw-opengl-ext_texture3d" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-ext_texture_array = {
-    pname = "cl-glfw-opengl-ext_texture_array";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-ext_texture_array" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-ext_texture_array";
-      asd = "cl-glfw-opengl-ext_texture_array";
-    });
-    systems = [ "cl-glfw-opengl-ext_texture_array" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-ext_texture_buffer_object = {
-    pname = "cl-glfw-opengl-ext_texture_buffer_object";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-ext_texture_buffer_object" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-ext_texture_buffer_object";
-      asd = "cl-glfw-opengl-ext_texture_buffer_object";
-    });
-    systems = [ "cl-glfw-opengl-ext_texture_buffer_object" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-ext_texture_compression_latc = {
-    pname = "cl-glfw-opengl-ext_texture_compression_latc";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-ext_texture_compression_latc" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-ext_texture_compression_latc";
-      asd = "cl-glfw-opengl-ext_texture_compression_latc";
-    });
-    systems = [ "cl-glfw-opengl-ext_texture_compression_latc" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-ext_texture_compression_rgtc = {
-    pname = "cl-glfw-opengl-ext_texture_compression_rgtc";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-ext_texture_compression_rgtc" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-ext_texture_compression_rgtc";
-      asd = "cl-glfw-opengl-ext_texture_compression_rgtc";
-    });
-    systems = [ "cl-glfw-opengl-ext_texture_compression_rgtc" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-ext_texture_compression_s3tc = {
-    pname = "cl-glfw-opengl-ext_texture_compression_s3tc";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-ext_texture_compression_s3tc" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-ext_texture_compression_s3tc";
-      asd = "cl-glfw-opengl-ext_texture_compression_s3tc";
-    });
-    systems = [ "cl-glfw-opengl-ext_texture_compression_s3tc" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-ext_texture_cube_map = {
-    pname = "cl-glfw-opengl-ext_texture_cube_map";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-ext_texture_cube_map" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-ext_texture_cube_map";
-      asd = "cl-glfw-opengl-ext_texture_cube_map";
-    });
-    systems = [ "cl-glfw-opengl-ext_texture_cube_map" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-ext_texture_env_combine = {
-    pname = "cl-glfw-opengl-ext_texture_env_combine";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-ext_texture_env_combine" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-ext_texture_env_combine";
-      asd = "cl-glfw-opengl-ext_texture_env_combine";
-    });
-    systems = [ "cl-glfw-opengl-ext_texture_env_combine" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-ext_texture_env_dot3 = {
-    pname = "cl-glfw-opengl-ext_texture_env_dot3";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-ext_texture_env_dot3" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-ext_texture_env_dot3";
-      asd = "cl-glfw-opengl-ext_texture_env_dot3";
-    });
-    systems = [ "cl-glfw-opengl-ext_texture_env_dot3" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-ext_texture_filter_anisotropic = {
-    pname = "cl-glfw-opengl-ext_texture_filter_anisotropic";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-ext_texture_filter_anisotropic" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-ext_texture_filter_anisotropic";
-      asd = "cl-glfw-opengl-ext_texture_filter_anisotropic";
-    });
-    systems = [ "cl-glfw-opengl-ext_texture_filter_anisotropic" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-ext_texture_integer = {
-    pname = "cl-glfw-opengl-ext_texture_integer";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-ext_texture_integer" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-ext_texture_integer";
-      asd = "cl-glfw-opengl-ext_texture_integer";
-    });
-    systems = [ "cl-glfw-opengl-ext_texture_integer" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-ext_texture_lod_bias = {
-    pname = "cl-glfw-opengl-ext_texture_lod_bias";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-ext_texture_lod_bias" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-ext_texture_lod_bias";
-      asd = "cl-glfw-opengl-ext_texture_lod_bias";
-    });
-    systems = [ "cl-glfw-opengl-ext_texture_lod_bias" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-ext_texture_mirror_clamp = {
-    pname = "cl-glfw-opengl-ext_texture_mirror_clamp";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-ext_texture_mirror_clamp" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-ext_texture_mirror_clamp";
-      asd = "cl-glfw-opengl-ext_texture_mirror_clamp";
-    });
-    systems = [ "cl-glfw-opengl-ext_texture_mirror_clamp" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-ext_texture_object = {
-    pname = "cl-glfw-opengl-ext_texture_object";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-ext_texture_object" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-ext_texture_object";
-      asd = "cl-glfw-opengl-ext_texture_object";
-    });
-    systems = [ "cl-glfw-opengl-ext_texture_object" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-ext_texture_perturb_normal = {
-    pname = "cl-glfw-opengl-ext_texture_perturb_normal";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-ext_texture_perturb_normal" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-ext_texture_perturb_normal";
-      asd = "cl-glfw-opengl-ext_texture_perturb_normal";
-    });
-    systems = [ "cl-glfw-opengl-ext_texture_perturb_normal" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-ext_texture_shared_exponent = {
-    pname = "cl-glfw-opengl-ext_texture_shared_exponent";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-ext_texture_shared_exponent" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-ext_texture_shared_exponent";
-      asd = "cl-glfw-opengl-ext_texture_shared_exponent";
-    });
-    systems = [ "cl-glfw-opengl-ext_texture_shared_exponent" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-ext_texture_snorm = {
-    pname = "cl-glfw-opengl-ext_texture_snorm";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-ext_texture_snorm" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-ext_texture_snorm";
-      asd = "cl-glfw-opengl-ext_texture_snorm";
-    });
-    systems = [ "cl-glfw-opengl-ext_texture_snorm" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-ext_texture_srgb = {
-    pname = "cl-glfw-opengl-ext_texture_srgb";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-ext_texture_srgb" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-ext_texture_srgb";
-      asd = "cl-glfw-opengl-ext_texture_srgb";
-    });
-    systems = [ "cl-glfw-opengl-ext_texture_srgb" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-ext_texture_srgb_decode = {
-    pname = "cl-glfw-opengl-ext_texture_srgb_decode";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-ext_texture_srgb_decode" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-ext_texture_srgb_decode";
-      asd = "cl-glfw-opengl-ext_texture_srgb_decode";
-    });
-    systems = [ "cl-glfw-opengl-ext_texture_srgb_decode" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-ext_texture_swizzle = {
-    pname = "cl-glfw-opengl-ext_texture_swizzle";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-ext_texture_swizzle" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-ext_texture_swizzle";
-      asd = "cl-glfw-opengl-ext_texture_swizzle";
-    });
-    systems = [ "cl-glfw-opengl-ext_texture_swizzle" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-ext_timer_query = {
-    pname = "cl-glfw-opengl-ext_timer_query";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-ext_timer_query" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-ext_timer_query";
-      asd = "cl-glfw-opengl-ext_timer_query";
-    });
-    systems = [ "cl-glfw-opengl-ext_timer_query" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-ext_transform_feedback = {
-    pname = "cl-glfw-opengl-ext_transform_feedback";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-ext_transform_feedback" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-ext_transform_feedback";
-      asd = "cl-glfw-opengl-ext_transform_feedback";
-    });
-    systems = [ "cl-glfw-opengl-ext_transform_feedback" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-ext_vertex_array = {
-    pname = "cl-glfw-opengl-ext_vertex_array";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-ext_vertex_array" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-ext_vertex_array";
-      asd = "cl-glfw-opengl-ext_vertex_array";
-    });
-    systems = [ "cl-glfw-opengl-ext_vertex_array" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-ext_vertex_array_bgra = {
-    pname = "cl-glfw-opengl-ext_vertex_array_bgra";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-ext_vertex_array_bgra" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-ext_vertex_array_bgra";
-      asd = "cl-glfw-opengl-ext_vertex_array_bgra";
-    });
-    systems = [ "cl-glfw-opengl-ext_vertex_array_bgra" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-ext_vertex_attrib_64bit = {
-    pname = "cl-glfw-opengl-ext_vertex_attrib_64bit";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-ext_vertex_attrib_64bit" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-ext_vertex_attrib_64bit";
-      asd = "cl-glfw-opengl-ext_vertex_attrib_64bit";
-    });
-    systems = [ "cl-glfw-opengl-ext_vertex_attrib_64bit" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-ext_vertex_shader = {
-    pname = "cl-glfw-opengl-ext_vertex_shader";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-ext_vertex_shader" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-ext_vertex_shader";
-      asd = "cl-glfw-opengl-ext_vertex_shader";
-    });
-    systems = [ "cl-glfw-opengl-ext_vertex_shader" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-ext_vertex_weighting = {
-    pname = "cl-glfw-opengl-ext_vertex_weighting";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-ext_vertex_weighting" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-ext_vertex_weighting";
-      asd = "cl-glfw-opengl-ext_vertex_weighting";
-    });
-    systems = [ "cl-glfw-opengl-ext_vertex_weighting" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-gremedy_frame_terminator = {
-    pname = "cl-glfw-opengl-gremedy_frame_terminator";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-gremedy_frame_terminator" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-gremedy_frame_terminator";
-      asd = "cl-glfw-opengl-gremedy_frame_terminator";
-    });
-    systems = [ "cl-glfw-opengl-gremedy_frame_terminator" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-gremedy_string_marker = {
-    pname = "cl-glfw-opengl-gremedy_string_marker";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-gremedy_string_marker" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-gremedy_string_marker";
-      asd = "cl-glfw-opengl-gremedy_string_marker";
-    });
-    systems = [ "cl-glfw-opengl-gremedy_string_marker" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-hp_convolution_border_modes = {
-    pname = "cl-glfw-opengl-hp_convolution_border_modes";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-hp_convolution_border_modes" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-hp_convolution_border_modes";
-      asd = "cl-glfw-opengl-hp_convolution_border_modes";
-    });
-    systems = [ "cl-glfw-opengl-hp_convolution_border_modes" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-hp_image_transform = {
-    pname = "cl-glfw-opengl-hp_image_transform";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-hp_image_transform" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-hp_image_transform";
-      asd = "cl-glfw-opengl-hp_image_transform";
-    });
-    systems = [ "cl-glfw-opengl-hp_image_transform" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-hp_occlusion_test = {
-    pname = "cl-glfw-opengl-hp_occlusion_test";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-hp_occlusion_test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-hp_occlusion_test";
-      asd = "cl-glfw-opengl-hp_occlusion_test";
-    });
-    systems = [ "cl-glfw-opengl-hp_occlusion_test" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-hp_texture_lighting = {
-    pname = "cl-glfw-opengl-hp_texture_lighting";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-hp_texture_lighting" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-hp_texture_lighting";
-      asd = "cl-glfw-opengl-hp_texture_lighting";
-    });
-    systems = [ "cl-glfw-opengl-hp_texture_lighting" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-ibm_cull_vertex = {
-    pname = "cl-glfw-opengl-ibm_cull_vertex";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-ibm_cull_vertex" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-ibm_cull_vertex";
-      asd = "cl-glfw-opengl-ibm_cull_vertex";
-    });
-    systems = [ "cl-glfw-opengl-ibm_cull_vertex" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-ibm_multimode_draw_arrays = {
-    pname = "cl-glfw-opengl-ibm_multimode_draw_arrays";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-ibm_multimode_draw_arrays" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-ibm_multimode_draw_arrays";
-      asd = "cl-glfw-opengl-ibm_multimode_draw_arrays";
-    });
-    systems = [ "cl-glfw-opengl-ibm_multimode_draw_arrays" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-ibm_rasterpos_clip = {
-    pname = "cl-glfw-opengl-ibm_rasterpos_clip";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-ibm_rasterpos_clip" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-ibm_rasterpos_clip";
-      asd = "cl-glfw-opengl-ibm_rasterpos_clip";
-    });
-    systems = [ "cl-glfw-opengl-ibm_rasterpos_clip" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-ibm_texture_mirrored_repeat = {
-    pname = "cl-glfw-opengl-ibm_texture_mirrored_repeat";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-ibm_texture_mirrored_repeat" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-ibm_texture_mirrored_repeat";
-      asd = "cl-glfw-opengl-ibm_texture_mirrored_repeat";
-    });
-    systems = [ "cl-glfw-opengl-ibm_texture_mirrored_repeat" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-ibm_vertex_array_lists = {
-    pname = "cl-glfw-opengl-ibm_vertex_array_lists";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-ibm_vertex_array_lists" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-ibm_vertex_array_lists";
-      asd = "cl-glfw-opengl-ibm_vertex_array_lists";
-    });
-    systems = [ "cl-glfw-opengl-ibm_vertex_array_lists" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-ingr_blend_func_separate = {
-    pname = "cl-glfw-opengl-ingr_blend_func_separate";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-ingr_blend_func_separate" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-ingr_blend_func_separate";
-      asd = "cl-glfw-opengl-ingr_blend_func_separate";
-    });
-    systems = [ "cl-glfw-opengl-ingr_blend_func_separate" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-ingr_color_clamp = {
-    pname = "cl-glfw-opengl-ingr_color_clamp";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-ingr_color_clamp" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-ingr_color_clamp";
-      asd = "cl-glfw-opengl-ingr_color_clamp";
-    });
-    systems = [ "cl-glfw-opengl-ingr_color_clamp" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-ingr_interlace_read = {
-    pname = "cl-glfw-opengl-ingr_interlace_read";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-ingr_interlace_read" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-ingr_interlace_read";
-      asd = "cl-glfw-opengl-ingr_interlace_read";
-    });
-    systems = [ "cl-glfw-opengl-ingr_interlace_read" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-intel_parallel_arrays = {
-    pname = "cl-glfw-opengl-intel_parallel_arrays";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-intel_parallel_arrays" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-intel_parallel_arrays";
-      asd = "cl-glfw-opengl-intel_parallel_arrays";
-    });
-    systems = [ "cl-glfw-opengl-intel_parallel_arrays" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-mesa_pack_invert = {
-    pname = "cl-glfw-opengl-mesa_pack_invert";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-mesa_pack_invert" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-mesa_pack_invert";
-      asd = "cl-glfw-opengl-mesa_pack_invert";
-    });
-    systems = [ "cl-glfw-opengl-mesa_pack_invert" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-mesa_packed_depth_stencil = {
-    pname = "cl-glfw-opengl-mesa_packed_depth_stencil";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-mesa_packed_depth_stencil" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-mesa_packed_depth_stencil";
-      asd = "cl-glfw-opengl-mesa_packed_depth_stencil";
-    });
-    systems = [ "cl-glfw-opengl-mesa_packed_depth_stencil" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-mesa_program_debug = {
-    pname = "cl-glfw-opengl-mesa_program_debug";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-mesa_program_debug" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-mesa_program_debug";
-      asd = "cl-glfw-opengl-mesa_program_debug";
-    });
-    systems = [ "cl-glfw-opengl-mesa_program_debug" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-mesa_resize_buffers = {
-    pname = "cl-glfw-opengl-mesa_resize_buffers";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-mesa_resize_buffers" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-mesa_resize_buffers";
-      asd = "cl-glfw-opengl-mesa_resize_buffers";
-    });
-    systems = [ "cl-glfw-opengl-mesa_resize_buffers" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-mesa_shader_debug = {
-    pname = "cl-glfw-opengl-mesa_shader_debug";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-mesa_shader_debug" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-mesa_shader_debug";
-      asd = "cl-glfw-opengl-mesa_shader_debug";
-    });
-    systems = [ "cl-glfw-opengl-mesa_shader_debug" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-mesa_trace = {
-    pname = "cl-glfw-opengl-mesa_trace";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-mesa_trace" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-mesa_trace";
-      asd = "cl-glfw-opengl-mesa_trace";
-    });
-    systems = [ "cl-glfw-opengl-mesa_trace" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-mesa_window_pos = {
-    pname = "cl-glfw-opengl-mesa_window_pos";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-mesa_window_pos" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-mesa_window_pos";
-      asd = "cl-glfw-opengl-mesa_window_pos";
-    });
-    systems = [ "cl-glfw-opengl-mesa_window_pos" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-mesa_ycbcr_texture = {
-    pname = "cl-glfw-opengl-mesa_ycbcr_texture";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-mesa_ycbcr_texture" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-mesa_ycbcr_texture";
-      asd = "cl-glfw-opengl-mesa_ycbcr_texture";
-    });
-    systems = [ "cl-glfw-opengl-mesa_ycbcr_texture" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-mesax_texture_stack = {
-    pname = "cl-glfw-opengl-mesax_texture_stack";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-mesax_texture_stack" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-mesax_texture_stack";
-      asd = "cl-glfw-opengl-mesax_texture_stack";
-    });
-    systems = [ "cl-glfw-opengl-mesax_texture_stack" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-nv_conditional_render = {
-    pname = "cl-glfw-opengl-nv_conditional_render";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-nv_conditional_render" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-nv_conditional_render";
-      asd = "cl-glfw-opengl-nv_conditional_render";
-    });
-    systems = [ "cl-glfw-opengl-nv_conditional_render" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-nv_copy_depth_to_color = {
-    pname = "cl-glfw-opengl-nv_copy_depth_to_color";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-nv_copy_depth_to_color" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-nv_copy_depth_to_color";
-      asd = "cl-glfw-opengl-nv_copy_depth_to_color";
-    });
-    systems = [ "cl-glfw-opengl-nv_copy_depth_to_color" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-nv_copy_image = {
-    pname = "cl-glfw-opengl-nv_copy_image";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-nv_copy_image" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-nv_copy_image";
-      asd = "cl-glfw-opengl-nv_copy_image";
-    });
-    systems = [ "cl-glfw-opengl-nv_copy_image" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-nv_depth_buffer_float = {
-    pname = "cl-glfw-opengl-nv_depth_buffer_float";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-nv_depth_buffer_float" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-nv_depth_buffer_float";
-      asd = "cl-glfw-opengl-nv_depth_buffer_float";
-    });
-    systems = [ "cl-glfw-opengl-nv_depth_buffer_float" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-nv_depth_clamp = {
-    pname = "cl-glfw-opengl-nv_depth_clamp";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-nv_depth_clamp" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-nv_depth_clamp";
-      asd = "cl-glfw-opengl-nv_depth_clamp";
-    });
-    systems = [ "cl-glfw-opengl-nv_depth_clamp" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-nv_evaluators = {
-    pname = "cl-glfw-opengl-nv_evaluators";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-nv_evaluators" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-nv_evaluators";
-      asd = "cl-glfw-opengl-nv_evaluators";
-    });
-    systems = [ "cl-glfw-opengl-nv_evaluators" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-nv_explicit_multisample = {
-    pname = "cl-glfw-opengl-nv_explicit_multisample";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-nv_explicit_multisample" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-nv_explicit_multisample";
-      asd = "cl-glfw-opengl-nv_explicit_multisample";
-    });
-    systems = [ "cl-glfw-opengl-nv_explicit_multisample" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-nv_fence = {
-    pname = "cl-glfw-opengl-nv_fence";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-nv_fence" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-nv_fence";
-      asd = "cl-glfw-opengl-nv_fence";
-    });
-    systems = [ "cl-glfw-opengl-nv_fence" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-nv_float_buffer = {
-    pname = "cl-glfw-opengl-nv_float_buffer";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-nv_float_buffer" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-nv_float_buffer";
-      asd = "cl-glfw-opengl-nv_float_buffer";
-    });
-    systems = [ "cl-glfw-opengl-nv_float_buffer" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-nv_fog_distance = {
-    pname = "cl-glfw-opengl-nv_fog_distance";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-nv_fog_distance" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-nv_fog_distance";
-      asd = "cl-glfw-opengl-nv_fog_distance";
-    });
-    systems = [ "cl-glfw-opengl-nv_fog_distance" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-nv_fragment_program = {
-    pname = "cl-glfw-opengl-nv_fragment_program";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-nv_fragment_program" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-nv_fragment_program";
-      asd = "cl-glfw-opengl-nv_fragment_program";
-    });
-    systems = [ "cl-glfw-opengl-nv_fragment_program" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-nv_fragment_program2 = {
-    pname = "cl-glfw-opengl-nv_fragment_program2";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-nv_fragment_program2" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-nv_fragment_program2";
-      asd = "cl-glfw-opengl-nv_fragment_program2";
-    });
-    systems = [ "cl-glfw-opengl-nv_fragment_program2" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-nv_framebuffer_multisample_coverage = {
-    pname = "cl-glfw-opengl-nv_framebuffer_multisample_coverage";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-nv_framebuffer_multisample_coverage" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-nv_framebuffer_multisample_coverage";
-      asd = "cl-glfw-opengl-nv_framebuffer_multisample_coverage";
-    });
-    systems = [ "cl-glfw-opengl-nv_framebuffer_multisample_coverage" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-nv_geometry_program4 = {
-    pname = "cl-glfw-opengl-nv_geometry_program4";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-nv_geometry_program4" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-nv_geometry_program4";
-      asd = "cl-glfw-opengl-nv_geometry_program4";
-    });
-    systems = [ "cl-glfw-opengl-nv_geometry_program4" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-nv_gpu_program4 = {
-    pname = "cl-glfw-opengl-nv_gpu_program4";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-nv_gpu_program4" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-nv_gpu_program4";
-      asd = "cl-glfw-opengl-nv_gpu_program4";
-    });
-    systems = [ "cl-glfw-opengl-nv_gpu_program4" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-nv_gpu_program5 = {
-    pname = "cl-glfw-opengl-nv_gpu_program5";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-nv_gpu_program5" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-nv_gpu_program5";
-      asd = "cl-glfw-opengl-nv_gpu_program5";
-    });
-    systems = [ "cl-glfw-opengl-nv_gpu_program5" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-nv_gpu_shader5 = {
-    pname = "cl-glfw-opengl-nv_gpu_shader5";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-nv_gpu_shader5" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-nv_gpu_shader5";
-      asd = "cl-glfw-opengl-nv_gpu_shader5";
-    });
-    systems = [ "cl-glfw-opengl-nv_gpu_shader5" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-nv_half_float = {
-    pname = "cl-glfw-opengl-nv_half_float";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-nv_half_float" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-nv_half_float";
-      asd = "cl-glfw-opengl-nv_half_float";
-    });
-    systems = [ "cl-glfw-opengl-nv_half_float" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-nv_light_max_exponent = {
-    pname = "cl-glfw-opengl-nv_light_max_exponent";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-nv_light_max_exponent" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-nv_light_max_exponent";
-      asd = "cl-glfw-opengl-nv_light_max_exponent";
-    });
-    systems = [ "cl-glfw-opengl-nv_light_max_exponent" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-nv_multisample_coverage = {
-    pname = "cl-glfw-opengl-nv_multisample_coverage";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-nv_multisample_coverage" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-nv_multisample_coverage";
-      asd = "cl-glfw-opengl-nv_multisample_coverage";
-    });
-    systems = [ "cl-glfw-opengl-nv_multisample_coverage" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-nv_multisample_filter_hint = {
-    pname = "cl-glfw-opengl-nv_multisample_filter_hint";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-nv_multisample_filter_hint" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-nv_multisample_filter_hint";
-      asd = "cl-glfw-opengl-nv_multisample_filter_hint";
-    });
-    systems = [ "cl-glfw-opengl-nv_multisample_filter_hint" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-nv_occlusion_query = {
-    pname = "cl-glfw-opengl-nv_occlusion_query";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-nv_occlusion_query" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-nv_occlusion_query";
-      asd = "cl-glfw-opengl-nv_occlusion_query";
-    });
-    systems = [ "cl-glfw-opengl-nv_occlusion_query" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-nv_packed_depth_stencil = {
-    pname = "cl-glfw-opengl-nv_packed_depth_stencil";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-nv_packed_depth_stencil" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-nv_packed_depth_stencil";
-      asd = "cl-glfw-opengl-nv_packed_depth_stencil";
-    });
-    systems = [ "cl-glfw-opengl-nv_packed_depth_stencil" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-nv_parameter_buffer_object = {
-    pname = "cl-glfw-opengl-nv_parameter_buffer_object";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-nv_parameter_buffer_object" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-nv_parameter_buffer_object";
-      asd = "cl-glfw-opengl-nv_parameter_buffer_object";
-    });
-    systems = [ "cl-glfw-opengl-nv_parameter_buffer_object" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-nv_pixel_data_range = {
-    pname = "cl-glfw-opengl-nv_pixel_data_range";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-nv_pixel_data_range" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-nv_pixel_data_range";
-      asd = "cl-glfw-opengl-nv_pixel_data_range";
-    });
-    systems = [ "cl-glfw-opengl-nv_pixel_data_range" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-nv_point_sprite = {
-    pname = "cl-glfw-opengl-nv_point_sprite";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-nv_point_sprite" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-nv_point_sprite";
-      asd = "cl-glfw-opengl-nv_point_sprite";
-    });
-    systems = [ "cl-glfw-opengl-nv_point_sprite" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-nv_present_video = {
-    pname = "cl-glfw-opengl-nv_present_video";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-nv_present_video" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-nv_present_video";
-      asd = "cl-glfw-opengl-nv_present_video";
-    });
-    systems = [ "cl-glfw-opengl-nv_present_video" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-nv_primitive_restart = {
-    pname = "cl-glfw-opengl-nv_primitive_restart";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-nv_primitive_restart" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-nv_primitive_restart";
-      asd = "cl-glfw-opengl-nv_primitive_restart";
-    });
-    systems = [ "cl-glfw-opengl-nv_primitive_restart" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-nv_register_combiners = {
-    pname = "cl-glfw-opengl-nv_register_combiners";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-nv_register_combiners" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-nv_register_combiners";
-      asd = "cl-glfw-opengl-nv_register_combiners";
-    });
-    systems = [ "cl-glfw-opengl-nv_register_combiners" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-nv_register_combiners2 = {
-    pname = "cl-glfw-opengl-nv_register_combiners2";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-nv_register_combiners2" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-nv_register_combiners2";
-      asd = "cl-glfw-opengl-nv_register_combiners2";
-    });
-    systems = [ "cl-glfw-opengl-nv_register_combiners2" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-nv_shader_buffer_load = {
-    pname = "cl-glfw-opengl-nv_shader_buffer_load";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-nv_shader_buffer_load" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-nv_shader_buffer_load";
-      asd = "cl-glfw-opengl-nv_shader_buffer_load";
-    });
-    systems = [ "cl-glfw-opengl-nv_shader_buffer_load" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-nv_shader_buffer_store = {
-    pname = "cl-glfw-opengl-nv_shader_buffer_store";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-nv_shader_buffer_store" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-nv_shader_buffer_store";
-      asd = "cl-glfw-opengl-nv_shader_buffer_store";
-    });
-    systems = [ "cl-glfw-opengl-nv_shader_buffer_store" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-nv_tessellation_program5 = {
-    pname = "cl-glfw-opengl-nv_tessellation_program5";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-nv_tessellation_program5" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-nv_tessellation_program5";
-      asd = "cl-glfw-opengl-nv_tessellation_program5";
-    });
-    systems = [ "cl-glfw-opengl-nv_tessellation_program5" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-nv_texgen_emboss = {
-    pname = "cl-glfw-opengl-nv_texgen_emboss";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-nv_texgen_emboss" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-nv_texgen_emboss";
-      asd = "cl-glfw-opengl-nv_texgen_emboss";
-    });
-    systems = [ "cl-glfw-opengl-nv_texgen_emboss" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-nv_texgen_reflection = {
-    pname = "cl-glfw-opengl-nv_texgen_reflection";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-nv_texgen_reflection" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-nv_texgen_reflection";
-      asd = "cl-glfw-opengl-nv_texgen_reflection";
-    });
-    systems = [ "cl-glfw-opengl-nv_texgen_reflection" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-nv_texture_barrier = {
-    pname = "cl-glfw-opengl-nv_texture_barrier";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-nv_texture_barrier" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-nv_texture_barrier";
-      asd = "cl-glfw-opengl-nv_texture_barrier";
-    });
-    systems = [ "cl-glfw-opengl-nv_texture_barrier" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-nv_texture_env_combine4 = {
-    pname = "cl-glfw-opengl-nv_texture_env_combine4";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-nv_texture_env_combine4" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-nv_texture_env_combine4";
-      asd = "cl-glfw-opengl-nv_texture_env_combine4";
-    });
-    systems = [ "cl-glfw-opengl-nv_texture_env_combine4" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-nv_texture_expand_normal = {
-    pname = "cl-glfw-opengl-nv_texture_expand_normal";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-nv_texture_expand_normal" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-nv_texture_expand_normal";
-      asd = "cl-glfw-opengl-nv_texture_expand_normal";
-    });
-    systems = [ "cl-glfw-opengl-nv_texture_expand_normal" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-nv_texture_multisample = {
-    pname = "cl-glfw-opengl-nv_texture_multisample";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-nv_texture_multisample" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-nv_texture_multisample";
-      asd = "cl-glfw-opengl-nv_texture_multisample";
-    });
-    systems = [ "cl-glfw-opengl-nv_texture_multisample" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-nv_texture_rectangle = {
-    pname = "cl-glfw-opengl-nv_texture_rectangle";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-nv_texture_rectangle" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-nv_texture_rectangle";
-      asd = "cl-glfw-opengl-nv_texture_rectangle";
-    });
-    systems = [ "cl-glfw-opengl-nv_texture_rectangle" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-nv_texture_shader = {
-    pname = "cl-glfw-opengl-nv_texture_shader";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-nv_texture_shader" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-nv_texture_shader";
-      asd = "cl-glfw-opengl-nv_texture_shader";
-    });
-    systems = [ "cl-glfw-opengl-nv_texture_shader" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-nv_texture_shader2 = {
-    pname = "cl-glfw-opengl-nv_texture_shader2";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-nv_texture_shader2" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-nv_texture_shader2";
-      asd = "cl-glfw-opengl-nv_texture_shader2";
-    });
-    systems = [ "cl-glfw-opengl-nv_texture_shader2" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-nv_texture_shader3 = {
-    pname = "cl-glfw-opengl-nv_texture_shader3";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-nv_texture_shader3" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-nv_texture_shader3";
-      asd = "cl-glfw-opengl-nv_texture_shader3";
-    });
-    systems = [ "cl-glfw-opengl-nv_texture_shader3" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-nv_transform_feedback = {
-    pname = "cl-glfw-opengl-nv_transform_feedback";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-nv_transform_feedback" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-nv_transform_feedback";
-      asd = "cl-glfw-opengl-nv_transform_feedback";
-    });
-    systems = [ "cl-glfw-opengl-nv_transform_feedback" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-nv_transform_feedback2 = {
-    pname = "cl-glfw-opengl-nv_transform_feedback2";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-nv_transform_feedback2" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-nv_transform_feedback2";
-      asd = "cl-glfw-opengl-nv_transform_feedback2";
-    });
-    systems = [ "cl-glfw-opengl-nv_transform_feedback2" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-nv_vertex_array_range = {
-    pname = "cl-glfw-opengl-nv_vertex_array_range";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-nv_vertex_array_range" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-nv_vertex_array_range";
-      asd = "cl-glfw-opengl-nv_vertex_array_range";
-    });
-    systems = [ "cl-glfw-opengl-nv_vertex_array_range" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-nv_vertex_array_range2 = {
-    pname = "cl-glfw-opengl-nv_vertex_array_range2";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-nv_vertex_array_range2" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-nv_vertex_array_range2";
-      asd = "cl-glfw-opengl-nv_vertex_array_range2";
-    });
-    systems = [ "cl-glfw-opengl-nv_vertex_array_range2" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-nv_vertex_attrib_integer_64bit = {
-    pname = "cl-glfw-opengl-nv_vertex_attrib_integer_64bit";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-nv_vertex_attrib_integer_64bit" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-nv_vertex_attrib_integer_64bit";
-      asd = "cl-glfw-opengl-nv_vertex_attrib_integer_64bit";
-    });
-    systems = [ "cl-glfw-opengl-nv_vertex_attrib_integer_64bit" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-nv_vertex_buffer_unified_memory = {
-    pname = "cl-glfw-opengl-nv_vertex_buffer_unified_memory";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-nv_vertex_buffer_unified_memory" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-nv_vertex_buffer_unified_memory";
-      asd = "cl-glfw-opengl-nv_vertex_buffer_unified_memory";
-    });
-    systems = [ "cl-glfw-opengl-nv_vertex_buffer_unified_memory" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-nv_vertex_program = {
-    pname = "cl-glfw-opengl-nv_vertex_program";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-nv_vertex_program" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-nv_vertex_program";
-      asd = "cl-glfw-opengl-nv_vertex_program";
-    });
-    systems = [ "cl-glfw-opengl-nv_vertex_program" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-nv_vertex_program2_option = {
-    pname = "cl-glfw-opengl-nv_vertex_program2_option";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-nv_vertex_program2_option" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-nv_vertex_program2_option";
-      asd = "cl-glfw-opengl-nv_vertex_program2_option";
-    });
-    systems = [ "cl-glfw-opengl-nv_vertex_program2_option" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-nv_vertex_program3 = {
-    pname = "cl-glfw-opengl-nv_vertex_program3";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-nv_vertex_program3" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-nv_vertex_program3";
-      asd = "cl-glfw-opengl-nv_vertex_program3";
-    });
-    systems = [ "cl-glfw-opengl-nv_vertex_program3" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-nv_vertex_program4 = {
-    pname = "cl-glfw-opengl-nv_vertex_program4";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-nv_vertex_program4" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-nv_vertex_program4";
-      asd = "cl-glfw-opengl-nv_vertex_program4";
-    });
-    systems = [ "cl-glfw-opengl-nv_vertex_program4" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-oes_read_format = {
-    pname = "cl-glfw-opengl-oes_read_format";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-oes_read_format" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-oes_read_format";
-      asd = "cl-glfw-opengl-oes_read_format";
-    });
-    systems = [ "cl-glfw-opengl-oes_read_format" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-oml_interlace = {
-    pname = "cl-glfw-opengl-oml_interlace";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-oml_interlace" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-oml_interlace";
-      asd = "cl-glfw-opengl-oml_interlace";
-    });
-    systems = [ "cl-glfw-opengl-oml_interlace" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-oml_resample = {
-    pname = "cl-glfw-opengl-oml_resample";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-oml_resample" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-oml_resample";
-      asd = "cl-glfw-opengl-oml_resample";
-    });
-    systems = [ "cl-glfw-opengl-oml_resample" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-oml_subsample = {
-    pname = "cl-glfw-opengl-oml_subsample";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-oml_subsample" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-oml_subsample";
-      asd = "cl-glfw-opengl-oml_subsample";
-    });
-    systems = [ "cl-glfw-opengl-oml_subsample" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-pgi_misc_hints = {
-    pname = "cl-glfw-opengl-pgi_misc_hints";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-pgi_misc_hints" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-pgi_misc_hints";
-      asd = "cl-glfw-opengl-pgi_misc_hints";
-    });
-    systems = [ "cl-glfw-opengl-pgi_misc_hints" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-pgi_vertex_hints = {
-    pname = "cl-glfw-opengl-pgi_vertex_hints";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-pgi_vertex_hints" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-pgi_vertex_hints";
-      asd = "cl-glfw-opengl-pgi_vertex_hints";
-    });
-    systems = [ "cl-glfw-opengl-pgi_vertex_hints" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-rend_screen_coordinates = {
-    pname = "cl-glfw-opengl-rend_screen_coordinates";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-rend_screen_coordinates" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-rend_screen_coordinates";
-      asd = "cl-glfw-opengl-rend_screen_coordinates";
-    });
-    systems = [ "cl-glfw-opengl-rend_screen_coordinates" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-s3_s3tc = {
-    pname = "cl-glfw-opengl-s3_s3tc";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-s3_s3tc" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-s3_s3tc";
-      asd = "cl-glfw-opengl-s3_s3tc";
-    });
-    systems = [ "cl-glfw-opengl-s3_s3tc" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-sgi_color_table = {
-    pname = "cl-glfw-opengl-sgi_color_table";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-sgi_color_table" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-sgi_color_table";
-      asd = "cl-glfw-opengl-sgi_color_table";
-    });
-    systems = [ "cl-glfw-opengl-sgi_color_table" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-sgi_depth_pass_instrument = {
-    pname = "cl-glfw-opengl-sgi_depth_pass_instrument";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-sgi_depth_pass_instrument" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-sgi_depth_pass_instrument";
-      asd = "cl-glfw-opengl-sgi_depth_pass_instrument";
-    });
-    systems = [ "cl-glfw-opengl-sgi_depth_pass_instrument" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-sgis_detail_texture = {
-    pname = "cl-glfw-opengl-sgis_detail_texture";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-sgis_detail_texture" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-sgis_detail_texture";
-      asd = "cl-glfw-opengl-sgis_detail_texture";
-    });
-    systems = [ "cl-glfw-opengl-sgis_detail_texture" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-sgis_fog_function = {
-    pname = "cl-glfw-opengl-sgis_fog_function";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-sgis_fog_function" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-sgis_fog_function";
-      asd = "cl-glfw-opengl-sgis_fog_function";
-    });
-    systems = [ "cl-glfw-opengl-sgis_fog_function" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-sgis_multisample = {
-    pname = "cl-glfw-opengl-sgis_multisample";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-sgis_multisample" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-sgis_multisample";
-      asd = "cl-glfw-opengl-sgis_multisample";
-    });
-    systems = [ "cl-glfw-opengl-sgis_multisample" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-sgis_pixel_texture = {
-    pname = "cl-glfw-opengl-sgis_pixel_texture";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-sgis_pixel_texture" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-sgis_pixel_texture";
-      asd = "cl-glfw-opengl-sgis_pixel_texture";
-    });
-    systems = [ "cl-glfw-opengl-sgis_pixel_texture" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-sgis_point_parameters = {
-    pname = "cl-glfw-opengl-sgis_point_parameters";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-sgis_point_parameters" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-sgis_point_parameters";
-      asd = "cl-glfw-opengl-sgis_point_parameters";
-    });
-    systems = [ "cl-glfw-opengl-sgis_point_parameters" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-sgis_sharpen_texture = {
-    pname = "cl-glfw-opengl-sgis_sharpen_texture";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-sgis_sharpen_texture" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-sgis_sharpen_texture";
-      asd = "cl-glfw-opengl-sgis_sharpen_texture";
-    });
-    systems = [ "cl-glfw-opengl-sgis_sharpen_texture" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-sgis_texture4d = {
-    pname = "cl-glfw-opengl-sgis_texture4d";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-sgis_texture4d" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-sgis_texture4d";
-      asd = "cl-glfw-opengl-sgis_texture4d";
-    });
-    systems = [ "cl-glfw-opengl-sgis_texture4d" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-sgis_texture_color_mask = {
-    pname = "cl-glfw-opengl-sgis_texture_color_mask";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-sgis_texture_color_mask" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-sgis_texture_color_mask";
-      asd = "cl-glfw-opengl-sgis_texture_color_mask";
-    });
-    systems = [ "cl-glfw-opengl-sgis_texture_color_mask" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-sgis_texture_filter4 = {
-    pname = "cl-glfw-opengl-sgis_texture_filter4";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-sgis_texture_filter4" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-sgis_texture_filter4";
-      asd = "cl-glfw-opengl-sgis_texture_filter4";
-    });
-    systems = [ "cl-glfw-opengl-sgis_texture_filter4" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-sgis_texture_select = {
-    pname = "cl-glfw-opengl-sgis_texture_select";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-sgis_texture_select" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-sgis_texture_select";
-      asd = "cl-glfw-opengl-sgis_texture_select";
-    });
-    systems = [ "cl-glfw-opengl-sgis_texture_select" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-sgix_async = {
-    pname = "cl-glfw-opengl-sgix_async";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-sgix_async" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-sgix_async";
-      asd = "cl-glfw-opengl-sgix_async";
-    });
-    systems = [ "cl-glfw-opengl-sgix_async" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-sgix_depth_texture = {
-    pname = "cl-glfw-opengl-sgix_depth_texture";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-sgix_depth_texture" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-sgix_depth_texture";
-      asd = "cl-glfw-opengl-sgix_depth_texture";
-    });
-    systems = [ "cl-glfw-opengl-sgix_depth_texture" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-sgix_flush_raster = {
-    pname = "cl-glfw-opengl-sgix_flush_raster";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-sgix_flush_raster" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-sgix_flush_raster";
-      asd = "cl-glfw-opengl-sgix_flush_raster";
-    });
-    systems = [ "cl-glfw-opengl-sgix_flush_raster" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-sgix_fog_scale = {
-    pname = "cl-glfw-opengl-sgix_fog_scale";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-sgix_fog_scale" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-sgix_fog_scale";
-      asd = "cl-glfw-opengl-sgix_fog_scale";
-    });
-    systems = [ "cl-glfw-opengl-sgix_fog_scale" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-sgix_fragment_lighting = {
-    pname = "cl-glfw-opengl-sgix_fragment_lighting";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-sgix_fragment_lighting" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-sgix_fragment_lighting";
-      asd = "cl-glfw-opengl-sgix_fragment_lighting";
-    });
-    systems = [ "cl-glfw-opengl-sgix_fragment_lighting" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-sgix_framezoom = {
-    pname = "cl-glfw-opengl-sgix_framezoom";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-sgix_framezoom" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-sgix_framezoom";
-      asd = "cl-glfw-opengl-sgix_framezoom";
-    });
-    systems = [ "cl-glfw-opengl-sgix_framezoom" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-sgix_igloo_interface = {
-    pname = "cl-glfw-opengl-sgix_igloo_interface";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-sgix_igloo_interface" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-sgix_igloo_interface";
-      asd = "cl-glfw-opengl-sgix_igloo_interface";
-    });
-    systems = [ "cl-glfw-opengl-sgix_igloo_interface" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-sgix_instruments = {
-    pname = "cl-glfw-opengl-sgix_instruments";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-sgix_instruments" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-sgix_instruments";
-      asd = "cl-glfw-opengl-sgix_instruments";
-    });
-    systems = [ "cl-glfw-opengl-sgix_instruments" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-sgix_line_quality_hint = {
-    pname = "cl-glfw-opengl-sgix_line_quality_hint";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-sgix_line_quality_hint" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-sgix_line_quality_hint";
-      asd = "cl-glfw-opengl-sgix_line_quality_hint";
-    });
-    systems = [ "cl-glfw-opengl-sgix_line_quality_hint" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-sgix_list_priority = {
-    pname = "cl-glfw-opengl-sgix_list_priority";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-sgix_list_priority" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-sgix_list_priority";
-      asd = "cl-glfw-opengl-sgix_list_priority";
-    });
-    systems = [ "cl-glfw-opengl-sgix_list_priority" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-sgix_pixel_texture = {
-    pname = "cl-glfw-opengl-sgix_pixel_texture";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-sgix_pixel_texture" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-sgix_pixel_texture";
-      asd = "cl-glfw-opengl-sgix_pixel_texture";
-    });
-    systems = [ "cl-glfw-opengl-sgix_pixel_texture" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-sgix_polynomial_ffd = {
-    pname = "cl-glfw-opengl-sgix_polynomial_ffd";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-sgix_polynomial_ffd" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-sgix_polynomial_ffd";
-      asd = "cl-glfw-opengl-sgix_polynomial_ffd";
-    });
-    systems = [ "cl-glfw-opengl-sgix_polynomial_ffd" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-sgix_reference_plane = {
-    pname = "cl-glfw-opengl-sgix_reference_plane";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-sgix_reference_plane" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-sgix_reference_plane";
-      asd = "cl-glfw-opengl-sgix_reference_plane";
-    });
-    systems = [ "cl-glfw-opengl-sgix_reference_plane" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-sgix_resample = {
-    pname = "cl-glfw-opengl-sgix_resample";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-sgix_resample" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-sgix_resample";
-      asd = "cl-glfw-opengl-sgix_resample";
-    });
-    systems = [ "cl-glfw-opengl-sgix_resample" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-sgix_scalebias_hint = {
-    pname = "cl-glfw-opengl-sgix_scalebias_hint";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-sgix_scalebias_hint" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-sgix_scalebias_hint";
-      asd = "cl-glfw-opengl-sgix_scalebias_hint";
-    });
-    systems = [ "cl-glfw-opengl-sgix_scalebias_hint" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-sgix_shadow = {
-    pname = "cl-glfw-opengl-sgix_shadow";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-sgix_shadow" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-sgix_shadow";
-      asd = "cl-glfw-opengl-sgix_shadow";
-    });
-    systems = [ "cl-glfw-opengl-sgix_shadow" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-sgix_shadow_ambient = {
-    pname = "cl-glfw-opengl-sgix_shadow_ambient";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-sgix_shadow_ambient" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-sgix_shadow_ambient";
-      asd = "cl-glfw-opengl-sgix_shadow_ambient";
-    });
-    systems = [ "cl-glfw-opengl-sgix_shadow_ambient" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-sgix_slim = {
-    pname = "cl-glfw-opengl-sgix_slim";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-sgix_slim" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-sgix_slim";
-      asd = "cl-glfw-opengl-sgix_slim";
-    });
-    systems = [ "cl-glfw-opengl-sgix_slim" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-sgix_sprite = {
-    pname = "cl-glfw-opengl-sgix_sprite";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-sgix_sprite" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-sgix_sprite";
-      asd = "cl-glfw-opengl-sgix_sprite";
-    });
-    systems = [ "cl-glfw-opengl-sgix_sprite" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-sgix_tag_sample_buffer = {
-    pname = "cl-glfw-opengl-sgix_tag_sample_buffer";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-sgix_tag_sample_buffer" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-sgix_tag_sample_buffer";
-      asd = "cl-glfw-opengl-sgix_tag_sample_buffer";
-    });
-    systems = [ "cl-glfw-opengl-sgix_tag_sample_buffer" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-sgix_texture_coordinate_clamp = {
-    pname = "cl-glfw-opengl-sgix_texture_coordinate_clamp";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-sgix_texture_coordinate_clamp" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-sgix_texture_coordinate_clamp";
-      asd = "cl-glfw-opengl-sgix_texture_coordinate_clamp";
-    });
-    systems = [ "cl-glfw-opengl-sgix_texture_coordinate_clamp" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-sgix_texture_lod_bias = {
-    pname = "cl-glfw-opengl-sgix_texture_lod_bias";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-sgix_texture_lod_bias" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-sgix_texture_lod_bias";
-      asd = "cl-glfw-opengl-sgix_texture_lod_bias";
-    });
-    systems = [ "cl-glfw-opengl-sgix_texture_lod_bias" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-sgix_texture_multi_buffer = {
-    pname = "cl-glfw-opengl-sgix_texture_multi_buffer";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-sgix_texture_multi_buffer" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-sgix_texture_multi_buffer";
-      asd = "cl-glfw-opengl-sgix_texture_multi_buffer";
-    });
-    systems = [ "cl-glfw-opengl-sgix_texture_multi_buffer" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-sgix_ycrcba = {
-    pname = "cl-glfw-opengl-sgix_ycrcba";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-sgix_ycrcba" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-sgix_ycrcba";
-      asd = "cl-glfw-opengl-sgix_ycrcba";
-    });
-    systems = [ "cl-glfw-opengl-sgix_ycrcba" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-sun_convolution_border_modes = {
-    pname = "cl-glfw-opengl-sun_convolution_border_modes";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-sun_convolution_border_modes" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-sun_convolution_border_modes";
-      asd = "cl-glfw-opengl-sun_convolution_border_modes";
-    });
-    systems = [ "cl-glfw-opengl-sun_convolution_border_modes" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-sun_global_alpha = {
-    pname = "cl-glfw-opengl-sun_global_alpha";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-sun_global_alpha" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-sun_global_alpha";
-      asd = "cl-glfw-opengl-sun_global_alpha";
-    });
-    systems = [ "cl-glfw-opengl-sun_global_alpha" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-sun_mesh_array = {
-    pname = "cl-glfw-opengl-sun_mesh_array";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-sun_mesh_array" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-sun_mesh_array";
-      asd = "cl-glfw-opengl-sun_mesh_array";
-    });
-    systems = [ "cl-glfw-opengl-sun_mesh_array" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-sun_slice_accum = {
-    pname = "cl-glfw-opengl-sun_slice_accum";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-sun_slice_accum" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-sun_slice_accum";
-      asd = "cl-glfw-opengl-sun_slice_accum";
-    });
-    systems = [ "cl-glfw-opengl-sun_slice_accum" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-sun_triangle_list = {
-    pname = "cl-glfw-opengl-sun_triangle_list";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-sun_triangle_list" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-sun_triangle_list";
-      asd = "cl-glfw-opengl-sun_triangle_list";
-    });
-    systems = [ "cl-glfw-opengl-sun_triangle_list" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-sun_vertex = {
-    pname = "cl-glfw-opengl-sun_vertex";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-sun_vertex" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-sun_vertex";
-      asd = "cl-glfw-opengl-sun_vertex";
-    });
-    systems = [ "cl-glfw-opengl-sun_vertex" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-sunx_constant_data = {
-    pname = "cl-glfw-opengl-sunx_constant_data";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-sunx_constant_data" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-sunx_constant_data";
-      asd = "cl-glfw-opengl-sunx_constant_data";
-    });
-    systems = [ "cl-glfw-opengl-sunx_constant_data" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-version_1_0 = {
-    pname = "cl-glfw-opengl-version_1_0";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-version_1_0" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-version_1_0";
-      asd = "cl-glfw-opengl-version_1_0";
-    });
-    systems = [ "cl-glfw-opengl-version_1_0" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-version_1_1 = {
-    pname = "cl-glfw-opengl-version_1_1";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-version_1_1" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-version_1_1";
-      asd = "cl-glfw-opengl-version_1_1";
-    });
-    systems = [ "cl-glfw-opengl-version_1_1" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-version_1_2 = {
-    pname = "cl-glfw-opengl-version_1_2";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-version_1_2" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-version_1_2";
-      asd = "cl-glfw-opengl-version_1_2";
-    });
-    systems = [ "cl-glfw-opengl-version_1_2" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-version_1_3 = {
-    pname = "cl-glfw-opengl-version_1_3";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-version_1_3" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-version_1_3";
-      asd = "cl-glfw-opengl-version_1_3";
-    });
-    systems = [ "cl-glfw-opengl-version_1_3" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-version_1_4 = {
-    pname = "cl-glfw-opengl-version_1_4";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-version_1_4" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-version_1_4";
-      asd = "cl-glfw-opengl-version_1_4";
-    });
-    systems = [ "cl-glfw-opengl-version_1_4" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-version_1_5 = {
-    pname = "cl-glfw-opengl-version_1_5";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-version_1_5" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-version_1_5";
-      asd = "cl-glfw-opengl-version_1_5";
-    });
-    systems = [ "cl-glfw-opengl-version_1_5" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-version_2_0 = {
-    pname = "cl-glfw-opengl-version_2_0";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-version_2_0" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-version_2_0";
-      asd = "cl-glfw-opengl-version_2_0";
-    });
-    systems = [ "cl-glfw-opengl-version_2_0" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-version_2_1 = {
-    pname = "cl-glfw-opengl-version_2_1";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-version_2_1" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-version_2_1";
-      asd = "cl-glfw-opengl-version_2_1";
-    });
-    systems = [ "cl-glfw-opengl-version_2_1" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-win_phong_shading = {
-    pname = "cl-glfw-opengl-win_phong_shading";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-win_phong_shading" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-win_phong_shading";
-      asd = "cl-glfw-opengl-win_phong_shading";
-    });
-    systems = [ "cl-glfw-opengl-win_phong_shading" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-opengl-win_specular_fog = {
-    pname = "cl-glfw-opengl-win_specular_fog";
-    version = "20150302-git";
-    asds = [ "cl-glfw-opengl-win_specular_fog" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-opengl-win_specular_fog";
-      asd = "cl-glfw-opengl-win_specular_fog";
-    });
-    systems = [ "cl-glfw-opengl-win_specular_fog" ];
-    lispLibs = [ (getAttr "cl-glfw-opengl-core" pkgs) ];
-  };
-  cl-glfw-types = {
-    pname = "cl-glfw-types";
-    version = "20150302-git";
-    asds = [ "cl-glfw-types" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw/2015-03-02/cl-glfw-20150302-git.tgz";
-      sha256 = "07zgrvv480h1xid1f50vj61d1xcrick2dqw04swac4137w9rwpj6";
-      system = "cl-glfw-types";
-      asd = "cl-glfw-types";
-    });
-    systems = [ "cl-glfw-types" ];
-    lispLibs = [ (getAttr "cffi" pkgs) ];
-  };
-  cl-glfw3 = {
-    pname = "cl-glfw3";
-    version = "20210531-git";
-    asds = [ "cl-glfw3" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw3/2021-05-31/cl-glfw3-20210531-git.tgz";
-      sha256 = "1wzr43nckdx4rlgxzhm1r4kfc264q969mc43y0js9ramh7l8gba5";
-      system = "cl-glfw3";
-      asd = "cl-glfw3";
-    });
-    systems = [ "cl-glfw3" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cffi" pkgs) ];
-  };
-  cl-glfw3-examples = {
-    pname = "cl-glfw3-examples";
-    version = "20210531-git";
-    asds = [ "cl-glfw3-examples" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glfw3/2021-05-31/cl-glfw3-20210531-git.tgz";
-      sha256 = "1wzr43nckdx4rlgxzhm1r4kfc264q969mc43y0js9ramh7l8gba5";
-      system = "cl-glfw3-examples";
-      asd = "cl-glfw3-examples";
-    });
-    systems = [ "cl-glfw3-examples" ];
-    lispLibs = [ (getAttr "cl-glfw3" pkgs) (getAttr "cl-opengl" pkgs) (getAttr "trivial-main-thread" pkgs) ];
-  };
-  cl-glib = {
-    pname = "cl-glib";
-    version = "20221106-git";
-    asds = [ "cl-glib" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glib/2022-11-06/cl-glib-20221106-git.tgz";
-      sha256 = "189w4flgjr6asqlb2zzm0c6b1ngdws4dkhq4ap458h5al33sxphg";
-      system = "cl-glib";
-      asd = "cl-glib";
-    });
-    systems = [ "cl-glib" ];
-    lispLibs = [ (getAttr "bordeaux-threads" pkgs) (getAttr "cl-gobject-introspection-wrapper" pkgs) ];
-  };
-  cl-glib_dot_gio = {
-    pname = "cl-glib.gio";
-    version = "20221106-git";
-    asds = [ "cl-glib.gio" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glib/2022-11-06/cl-glib-20221106-git.tgz";
-      sha256 = "189w4flgjr6asqlb2zzm0c6b1ngdws4dkhq4ap458h5al33sxphg";
-      system = "cl-glib.gio";
-      asd = "cl-glib.gio";
-    });
-    systems = [ "cl-glib.gio" ];
-    lispLibs = [ (getAttr "cl-gobject-introspection-wrapper" pkgs) ];
-  };
-  cl-glib_dot_gobject = {
-    pname = "cl-glib.gobject";
-    version = "20221106-git";
-    asds = [ "cl-glib.gobject" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-glib/2022-11-06/cl-glib-20221106-git.tgz";
-      sha256 = "189w4flgjr6asqlb2zzm0c6b1ngdws4dkhq4ap458h5al33sxphg";
-      system = "cl-glib.gobject";
-      asd = "cl-glib.gobject";
-    });
-    systems = [ "cl-glib.gobject" ];
-    lispLibs = [ (getAttr "cl-gobject-introspection-wrapper" pkgs) ];
-  };
-  cl-gltf = {
-    pname = "cl-gltf";
-    version = "20220331-git";
-    asds = [ "cl-gltf" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-gltf/2022-03-31/cl-gltf-20220331-git.tgz";
-      sha256 = "1v5ki3bjd2sa9apna26faagqwf92bx54815zvsn5nq6dhckrz4mw";
-      system = "cl-gltf";
-      asd = "cl-gltf";
-    });
-    systems = [ "cl-gltf" ];
-    lispLibs = [ (getAttr "cffi" pkgs) (getAttr "documentation-utils" pkgs) (getAttr "mmap" pkgs) (getAttr "nibbles" pkgs) (getAttr "qbase64" pkgs) (getAttr "shasht" pkgs) (getAttr "static-vectors" pkgs) (getAttr "trivial-extensible-sequences" pkgs) ];
-  };
-  cl-glu = {
-    pname = "cl-glu";
-    version = "20191130-git";
-    asds = [ "cl-glu" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-opengl/2019-11-30/cl-opengl-20191130-git.tgz";
-      sha256 = "0mhqmll09f079pnd6mgswz9nvr6h5n27d4q7zpmm2igf1v460id7";
-      system = "cl-glu";
-      asd = "cl-glu";
-    });
-    systems = [ "cl-glu" ];
-    lispLibs = [ (getAttr "cffi" pkgs) (getAttr "cl-opengl" pkgs) ];
-  };
-  cl-glut = {
-    pname = "cl-glut";
-    version = "20191130-git";
-    asds = [ "cl-glut" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-opengl/2019-11-30/cl-opengl-20191130-git.tgz";
-      sha256 = "0mhqmll09f079pnd6mgswz9nvr6h5n27d4q7zpmm2igf1v460id7";
-      system = "cl-glut";
-      asd = "cl-glut";
-    });
-    systems = [ "cl-glut" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cffi" pkgs) (getAttr "cl-opengl" pkgs) ];
-  };
-  cl-glut-examples = {
-    pname = "cl-glut-examples";
-    version = "20191130-git";
-    asds = [ "cl-glut-examples" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-opengl/2019-11-30/cl-opengl-20191130-git.tgz";
-      sha256 = "0mhqmll09f079pnd6mgswz9nvr6h5n27d4q7zpmm2igf1v460id7";
-      system = "cl-glut-examples";
-      asd = "cl-glut-examples";
-    });
-    systems = [ "cl-glut-examples" ];
-    lispLibs = [ (getAttr "cffi" pkgs) (getAttr "cl-glu" pkgs) (getAttr "cl-glut" pkgs) (getAttr "cl-opengl" pkgs) ];
-  };
-  cl-gobject-introspection = {
-    pname = "cl-gobject-introspection";
-    version = "20210124-git";
-    asds = [ "cl-gobject-introspection" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-gobject-introspection/2021-01-24/cl-gobject-introspection-20210124-git.tgz";
-      sha256 = "0dz0r73pq7yhz2iq2jnkq977awx2zws2qfxdcy33329sys1ii32p";
-      system = "cl-gobject-introspection";
-      asd = "cl-gobject-introspection";
-    });
-    systems = [ "cl-gobject-introspection" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cffi" pkgs) (getAttr "iterate" pkgs) (getAttr "trivial-garbage" pkgs) ];
-  };
-  cl-gobject-introspection-test = {
-    pname = "cl-gobject-introspection-test";
-    version = "20210124-git";
-    asds = [ "cl-gobject-introspection-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-gobject-introspection/2021-01-24/cl-gobject-introspection-20210124-git.tgz";
-      sha256 = "0dz0r73pq7yhz2iq2jnkq977awx2zws2qfxdcy33329sys1ii32p";
-      system = "cl-gobject-introspection-test";
-      asd = "cl-gobject-introspection-test";
-    });
-    systems = [ "cl-gobject-introspection-test" ];
-    lispLibs = [ (getAttr "cl-gobject-introspection" pkgs) (getAttr "fiveam" pkgs) (getAttr "iterate" pkgs) ];
-  };
-  cl-gobject-introspection-wrapper = {
-    pname = "cl-gobject-introspection-wrapper";
-    version = "20221106-git";
-    asds = [ "cl-gobject-introspection-wrapper" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-gobject-introspection-wrapper/2022-11-06/cl-gobject-introspection-wrapper-20221106-git.tgz";
-      sha256 = "1bxb0cs8b92ixigw1lmza8dm75hhc6qdcdkmz6rk77aq7zsp25w4";
-      system = "cl-gobject-introspection-wrapper";
-      asd = "cl-gobject-introspection-wrapper";
-    });
-    systems = [ "cl-gobject-introspection-wrapper" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cl-gobject-introspection" pkgs) (getAttr "cl-ppcre" pkgs) ];
-  };
-  cl-gopher = {
-    pname = "cl-gopher";
-    version = "20220331-git";
-    asds = [ "cl-gopher" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-gopher/2022-03-31/cl-gopher-20220331-git.tgz";
-      sha256 = "1ky4s33m5d0wvdaqji12pxr93qqfl5x62zjp3m4ihbdj0ws3yw2f";
-      system = "cl-gopher";
-      asd = "cl-gopher";
-    });
-    systems = [ "cl-gopher" ];
-    lispLibs = [ (getAttr "bordeaux-threads" pkgs) (getAttr "drakma" pkgs) (getAttr "flexi-streams" pkgs) (getAttr "quri" pkgs) (getAttr "usocket" pkgs) ];
-  };
-  cl-gpio = {
-    pname = "cl-gpio";
-    version = "20211209-git";
-    asds = [ "cl-gpio" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-gpio/2021-12-09/cl-gpio-20211209-git.tgz";
-      sha256 = "0kc8vi0rb9c3952p3qmc3c23pdb6yfg21bbrg4jrgdar0k0ldz5a";
-      system = "cl-gpio";
-      asd = "cl-gpio";
-    });
-    systems = [ "cl-gpio" ];
-    lispLibs = [ (getAttr "cffi" pkgs) (getAttr "documentation-utils" pkgs) ];
-  };
-  cl-graph = {
-    pname = "cl-graph";
-    version = "20171227-git";
-    asds = [ "cl-graph" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-graph/2017-12-27/cl-graph-20171227-git.tgz";
-      sha256 = "1748rj52f2jmd5jvsy9jwhn0zf73sjzjhwhnljvq6yi2kdqr30kl";
-      system = "cl-graph";
-      asd = "cl-graph";
-    });
-    systems = [ "cl-graph" ];
-    lispLibs = [ (getAttr "asdf-system-connections" pkgs) (getAttr "cl-containers" pkgs) (getAttr "metabang-bind" pkgs) (getAttr "metatilities-base" pkgs) ];
-  };
-  cl-graph_plus_hu_dot_dwim_dot_graphviz = {
-    pname = "cl-graph+hu.dwim.graphviz";
-    version = "20171227-git";
-    asds = [ "cl-graph+hu.dwim.graphviz" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-graph/2017-12-27/cl-graph-20171227-git.tgz";
-      sha256 = "1748rj52f2jmd5jvsy9jwhn0zf73sjzjhwhnljvq6yi2kdqr30kl";
-      system = "cl-graph+hu.dwim.graphviz";
-      asd = "cl-graph+hu.dwim.graphviz";
-    });
-    systems = [ "cl-graph+hu.dwim.graphviz" ];
-    lispLibs = [ (getAttr "cl-graph" pkgs) (getAttr "hu_dot_dwim_dot_graphviz" pkgs) ];
-  };
-  cl-graph_slash_with-cl-mathstats = {
-    pname = "cl-graph_with-cl-mathstats";
-    version = "20171227-git";
-    asds = [ "cl-graph" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-graph/2017-12-27/cl-graph-20171227-git.tgz";
-      sha256 = "1748rj52f2jmd5jvsy9jwhn0zf73sjzjhwhnljvq6yi2kdqr30kl";
-      system = "cl-graph";
-      asd = "cl-graph";
-    });
-    systems = [ "cl-graph/with-cl-mathstats" ];
-    lispLibs = [ (getAttr "cl-graph" pkgs) (getAttr "cl-mathstats" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  cl-graph_slash_with-dynamic-classes = {
-    pname = "cl-graph_with-dynamic-classes";
-    version = "20171227-git";
-    asds = [ "cl-graph" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-graph/2017-12-27/cl-graph-20171227-git.tgz";
-      sha256 = "1748rj52f2jmd5jvsy9jwhn0zf73sjzjhwhnljvq6yi2kdqr30kl";
-      system = "cl-graph";
-      asd = "cl-graph";
-    });
-    systems = [ "cl-graph/with-dynamic-classes" ];
-    lispLibs = [ (getAttr "cl-graph" pkgs) (getAttr "dynamic-classes" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  cl-graph_slash_with-metacopy = {
-    pname = "cl-graph_with-metacopy";
-    version = "20171227-git";
-    asds = [ "cl-graph" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-graph/2017-12-27/cl-graph-20171227-git.tgz";
-      sha256 = "1748rj52f2jmd5jvsy9jwhn0zf73sjzjhwhnljvq6yi2kdqr30kl";
-      system = "cl-graph";
-      asd = "cl-graph";
-    });
-    systems = [ "cl-graph/with-metacopy" ];
-    lispLibs = [ (getAttr "cl-graph" pkgs) (getAttr "metacopy" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  cl-graph_slash_with-moptilities = {
-    pname = "cl-graph_with-moptilities";
-    version = "20171227-git";
-    asds = [ "cl-graph" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-graph/2017-12-27/cl-graph-20171227-git.tgz";
-      sha256 = "1748rj52f2jmd5jvsy9jwhn0zf73sjzjhwhnljvq6yi2kdqr30kl";
-      system = "cl-graph";
-      asd = "cl-graph";
-    });
-    systems = [ "cl-graph/with-moptilities" ];
-    lispLibs = [ (getAttr "cl-graph" pkgs) (getAttr "moptilities" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  cl-grip = {
-    pname = "cl-grip";
-    version = "20211020-git";
-    asds = [ "cl-grip" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-grip/2021-10-20/cl-grip-20211020-git.tgz";
-      sha256 = "1qplxq5082wai2blmq29a852jv5kdzwc8n9qlv0kqysjppph0hqz";
-      system = "cl-grip";
-      asd = "cl-grip";
-    });
-    systems = [ "cl-grip" ];
-    lispLibs = [ (getAttr "cl-strings" pkgs) (getAttr "local-time" pkgs) (getAttr "trivial-types" pkgs) ];
-  };
-  cl-grnm = {
-    pname = "cl-grnm";
-    version = "20180131-git";
-    asds = [ "cl-grnm" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-grnm/2018-01-31/cl-grnm-20180131-git.tgz";
-      sha256 = "1hb5n37n3x2ylrghcqsia2g9a6f5wg24l659jiz4ncpi5bsv4m3s";
-      system = "cl-grnm";
-      asd = "cl-grnm";
-    });
-    systems = [ "cl-grnm" ];
-    lispLibs = [  ];
-  };
-  cl-growl = {
-    pname = "cl-growl";
-    version = "20161208-git";
-    asds = [ "cl-growl" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-growl/2016-12-08/cl-growl-20161208-git.tgz";
-      sha256 = "1qgj3sq22dznwxj1b3rw0099fsf6wgfbc63r376pab74kdnji3n6";
-      system = "cl-growl";
-      asd = "cl-growl";
-    });
-    systems = [ "cl-growl" ];
-    lispLibs = [ (getAttr "flexi-streams" pkgs) (getAttr "ironclad" pkgs) (getAttr "trivial-utf-8" pkgs) (getAttr "usocket" pkgs) ];
-  };
-  cl-gss = {
-    pname = "cl-gss";
-    version = "20180228-git";
-    asds = [ "cl-gss" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-gss/2018-02-28/cl-gss-20180228-git.tgz";
-      sha256 = "0zhxxn3zarird255s9i56bz0fm6dkv00mn8bbsjrhskg3wpcg4pb";
-      system = "cl-gss";
-      asd = "cl-gss";
-    });
-    systems = [ "cl-gss" ];
-    lispLibs = [ (getAttr "cffi" pkgs) (getAttr "cffi-grovel" pkgs) (getAttr "trivial-garbage" pkgs) (getAttr "trivial-utf-8" pkgs) ];
-  };
-  cl-gtk2-gdk = {
-    pname = "cl-gtk2-gdk";
-    version = "20211020-git";
-    asds = [ "cl-gtk2-gdk" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-gtk2/2021-10-20/cl-gtk2-20211020-git.tgz";
-      sha256 = "1lnrwd7s47cmksllim56mcg9l5m6jrwv6f0q1hq5lr8xpi5ix9vx";
-      system = "cl-gtk2-gdk";
-      asd = "cl-gtk2-gdk";
-    });
-    systems = [ "cl-gtk2-gdk" ];
-    lispLibs = [ (getAttr "cffi" pkgs) (getAttr "cl-gtk2-glib" pkgs) (getAttr "cl-gtk2-pango" pkgs) ];
-  };
-  cl-gtk2-glib = {
-    pname = "cl-gtk2-glib";
-    version = "20211020-git";
-    asds = [ "cl-gtk2-glib" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-gtk2/2021-10-20/cl-gtk2-20211020-git.tgz";
-      sha256 = "1lnrwd7s47cmksllim56mcg9l5m6jrwv6f0q1hq5lr8xpi5ix9vx";
-      system = "cl-gtk2-glib";
-      asd = "cl-gtk2-glib";
-    });
-    systems = [ "cl-gtk2-glib" ];
-    lispLibs = [ (getAttr "bordeaux-threads" pkgs) (getAttr "cffi" pkgs) (getAttr "closer-mop" pkgs) (getAttr "iterate" pkgs) (getAttr "trivial-garbage" pkgs) ];
-  };
-  cl-gtk2-pango = {
-    pname = "cl-gtk2-pango";
-    version = "20211020-git";
-    asds = [ "cl-gtk2-pango" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-gtk2/2021-10-20/cl-gtk2-20211020-git.tgz";
-      sha256 = "1lnrwd7s47cmksllim56mcg9l5m6jrwv6f0q1hq5lr8xpi5ix9vx";
-      system = "cl-gtk2-pango";
-      asd = "cl-gtk2-pango";
-    });
-    systems = [ "cl-gtk2-pango" ];
-    lispLibs = [ (getAttr "cl-gtk2-glib" pkgs) (getAttr "iterate" pkgs) ];
-  };
-  cl-haml = {
-    pname = "cl-haml";
-    version = "20180228-git";
-    asds = [ "cl-haml" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-haml/2018-02-28/cl-haml-20180228-git.tgz";
-      sha256 = "017qr3509ha2680h3c8ip5rqyfaz7v9hfjmx0pg1wrjqw8vyjyb5";
-      system = "cl-haml";
-      asd = "cl-haml";
-    });
-    systems = [ "cl-haml" ];
-    lispLibs = [ (getAttr "cl-who" pkgs) ];
-  };
-  cl-haml-test = {
-    pname = "cl-haml-test";
-    version = "20180228-git";
-    asds = [ "cl-haml-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-haml/2018-02-28/cl-haml-20180228-git.tgz";
-      sha256 = "017qr3509ha2680h3c8ip5rqyfaz7v9hfjmx0pg1wrjqw8vyjyb5";
-      system = "cl-haml-test";
-      asd = "cl-haml";
-    });
-    systems = [ "cl-haml-test" ];
-    lispLibs = [ (getAttr "cl-haml" pkgs) (getAttr "cl-test-more" pkgs) ];
-  };
-  cl-hamt = {
-    pname = "cl-hamt";
-    version = "20200325-git";
-    asds = [ "cl-hamt" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-hamt/2020-03-25/cl-hamt-20200325-git.tgz";
-      sha256 = "1ycbd73ykfj5j9sdhlzamyv18qbjj6xqf7fhm4fa0nsyr6sr3rf5";
-      system = "cl-hamt";
-      asd = "cl-hamt";
-    });
-    systems = [ "cl-hamt" ];
-    lispLibs = [ (getAttr "cl-murmurhash" pkgs) ];
-  };
-  cl-hamt-examples = {
-    pname = "cl-hamt-examples";
-    version = "20200325-git";
-    asds = [ "cl-hamt-examples" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-hamt/2020-03-25/cl-hamt-20200325-git.tgz";
-      sha256 = "1ycbd73ykfj5j9sdhlzamyv18qbjj6xqf7fhm4fa0nsyr6sr3rf5";
-      system = "cl-hamt-examples";
-      asd = "cl-hamt-examples";
-    });
-    systems = [ "cl-hamt-examples" ];
-    lispLibs = [ (getAttr "cl-hamt" pkgs) (getAttr "cl-ppcre" pkgs) (getAttr "drakma" pkgs) ];
-  };
-  cl-hamt-test = {
-    pname = "cl-hamt-test";
-    version = "20200325-git";
-    asds = [ "cl-hamt-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-hamt/2020-03-25/cl-hamt-20200325-git.tgz";
-      sha256 = "1ycbd73ykfj5j9sdhlzamyv18qbjj6xqf7fhm4fa0nsyr6sr3rf5";
-      system = "cl-hamt-test";
-      asd = "cl-hamt-test";
-    });
-    systems = [ "cl-hamt-test" ];
-    lispLibs = [ (getAttr "cl-hamt" pkgs) (getAttr "fiveam" pkgs) ];
-  };
-  cl-hash-table-destructuring = {
-    pname = "cl-hash-table-destructuring";
-    version = "20160531-git";
-    asds = [ "cl-hash-table-destructuring" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-hash-table-destructuring/2016-05-31/cl-hash-table-destructuring-20160531-git.tgz";
-      sha256 = "0za8jlqfvsilmnidk429509vbdd18w7ykcycni411pjpz0lxrh1v";
-      system = "cl-hash-table-destructuring";
-      asd = "cl-hash-table-destructuring";
-    });
-    systems = [ "cl-hash-table-destructuring" ];
-    lispLibs = [ (getAttr "prove-asdf" pkgs) ];
-  };
-  cl-hash-table-destructuring-test = {
-    pname = "cl-hash-table-destructuring-test";
-    version = "20160531-git";
-    asds = [ "cl-hash-table-destructuring-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-hash-table-destructuring/2016-05-31/cl-hash-table-destructuring-20160531-git.tgz";
-      sha256 = "0za8jlqfvsilmnidk429509vbdd18w7ykcycni411pjpz0lxrh1v";
-      system = "cl-hash-table-destructuring-test";
-      asd = "cl-hash-table-destructuring";
-    });
-    systems = [ "cl-hash-table-destructuring-test" ];
-    lispLibs = [ (getAttr "cl-hash-table-destructuring" pkgs) (getAttr "prove" pkgs) (getAttr "prove-asdf" pkgs) ];
-  };
-  cl-hash-util = {
-    pname = "cl-hash-util";
-    version = "20190107-git";
-    asds = [ "cl-hash-util" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-hash-util/2019-01-07/cl-hash-util-20190107-git.tgz";
-      sha256 = "0dnd0405d81w25cqq4g8gk2r5wm03cis965c1pmb2f5p4ifwq87a";
-      system = "cl-hash-util";
-      asd = "cl-hash-util";
-    });
-    systems = [ "cl-hash-util" ];
-    lispLibs = [  ];
-  };
-  cl-hash-util-test = {
-    pname = "cl-hash-util-test";
-    version = "20190107-git";
-    asds = [ "cl-hash-util-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-hash-util/2019-01-07/cl-hash-util-20190107-git.tgz";
-      sha256 = "0dnd0405d81w25cqq4g8gk2r5wm03cis965c1pmb2f5p4ifwq87a";
-      system = "cl-hash-util-test";
-      asd = "cl-hash-util-test";
-    });
-    systems = [ "cl-hash-util-test" ];
-    lispLibs = [ (getAttr "cl-hash-util" pkgs) (getAttr "fiveam" pkgs) ];
-  };
-  cl-heap = {
-    pname = "cl-heap";
-    version = "0.1.6";
-    asds = [ "cl-heap" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-heap/2013-03-12/cl-heap-0.1.6.tgz";
-      sha256 = "01bss182x9i167lfv0lr8ylavk2m42s84vz6629kspgjhczm52w7";
-      system = "cl-heap";
-      asd = "cl-heap";
-    });
-    systems = [ "cl-heap" ];
-    lispLibs = [  ];
-  };
-  cl-heap-tests = {
-    pname = "cl-heap-tests";
-    version = "0.1.6";
-    asds = [ "cl-heap-tests" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-heap/2013-03-12/cl-heap-0.1.6.tgz";
-      sha256 = "01bss182x9i167lfv0lr8ylavk2m42s84vz6629kspgjhczm52w7";
-      system = "cl-heap-tests";
-      asd = "cl-heap-tests";
-    });
-    systems = [ "cl-heap-tests" ];
-    lispLibs = [ (getAttr "cl-heap" pkgs) (getAttr "xlunit" pkgs) ];
-  };
-  cl-heredoc = {
-    pname = "cl-heredoc";
-    version = "20220707-git";
-    asds = [ "cl-heredoc" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-heredoc/2022-07-07/cl-heredoc-20220707-git.tgz";
-      sha256 = "0hj9y6drd93nwcbmwwhnc30flm48ppw4rhfgfyqfc02fq2wnc83z";
-      system = "cl-heredoc";
-      asd = "cl-heredoc";
-    });
-    systems = [ "cl-heredoc" ];
-    lispLibs = [  ];
-  };
-  cl-heredoc-test = {
-    pname = "cl-heredoc-test";
-    version = "20220707-git";
-    asds = [ "cl-heredoc-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-heredoc/2022-07-07/cl-heredoc-20220707-git.tgz";
-      sha256 = "0hj9y6drd93nwcbmwwhnc30flm48ppw4rhfgfyqfc02fq2wnc83z";
-      system = "cl-heredoc-test";
-      asd = "cl-heredoc-test";
-    });
-    systems = [ "cl-heredoc-test" ];
-    lispLibs = [ (getAttr "cl-heredoc" pkgs) (getAttr "stefil" pkgs) ];
-  };
-  cl-hooks = {
-    pname = "cl-hooks";
-    version = "20181210-git";
-    asds = [ "cl-hooks" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/architecture.hooks/2018-12-10/architecture.hooks-20181210-git.tgz";
-      sha256 = "0bg3l0a28lw5gqqjp6p6b5nhwqk46sgkb7184w5qbfngw1hk8x9y";
-      system = "cl-hooks";
-      asd = "cl-hooks";
-    });
-    systems = [ "cl-hooks" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "closer-mop" pkgs) (getAttr "let-plus" pkgs) (getAttr "trivial-garbage" pkgs) ];
-  };
-  cl-hooks_slash_test = {
-    pname = "cl-hooks_test";
-    version = "20181210-git";
-    asds = [ "cl-hooks" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/architecture.hooks/2018-12-10/architecture.hooks-20181210-git.tgz";
-      sha256 = "0bg3l0a28lw5gqqjp6p6b5nhwqk46sgkb7184w5qbfngw1hk8x9y";
-      system = "cl-hooks";
-      asd = "cl-hooks";
-    });
-    systems = [ "cl-hooks/test" ];
-    lispLibs = [ (getAttr "cl-hooks" pkgs) (getAttr "fiveam" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  cl-html-diff = {
-    pname = "cl-html-diff";
-    version = "20130128-git";
-    asds = [ "cl-html-diff" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-html-diff/2013-01-28/cl-html-diff-20130128-git.tgz";
-      sha256 = "1varnijivzd4jpimn1cz8p5ks713zzha5cgl4vmb0xr8ahravwzb";
-      system = "cl-html-diff";
-      asd = "cl-html-diff";
-    });
-    systems = [ "cl-html-diff" ];
-    lispLibs = [ (getAttr "cl-difflib" pkgs) ];
-  };
-  cl-html-parse = {
-    pname = "cl-html-parse";
-    version = "20200925-git";
-    asds = [ "cl-html-parse" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-html-parse/2020-09-25/cl-html-parse-20200925-git.tgz";
-      sha256 = "0d78slyqw6zshh72ppmxc85xdnd0jfhaqkzrf1cn7yjxl6h4lp7s";
-      system = "cl-html-parse";
-      asd = "cl-html-parse";
-    });
-    systems = [ "cl-html-parse" ];
-    lispLibs = [  ];
-  };
-  cl-html-readme = {
-    pname = "cl-html-readme";
-    version = "quicklisp-current-release-fa304a63-git";
-    asds = [ "cl-html-readme" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-html-readme/2021-02-28/cl-html-readme-quicklisp-current-release-fa304a63-git.tgz";
-      sha256 = "01z2ykfhg7wx7sz4kp1c6cj9ffbpppnfgfd2jpizd7f5id2wi3cb";
-      system = "cl-html-readme";
-      asd = "cl-html-readme";
-    });
-    systems = [ "cl-html-readme" ];
-    lispLibs = [  ];
-  };
-  cl-html-readme_slash_doc = {
-    pname = "cl-html-readme_doc";
-    version = "quicklisp-current-release-fa304a63-git";
-    asds = [ "cl-html-readme" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-html-readme/2021-02-28/cl-html-readme-quicklisp-current-release-fa304a63-git.tgz";
-      sha256 = "01z2ykfhg7wx7sz4kp1c6cj9ffbpppnfgfd2jpizd7f5id2wi3cb";
-      system = "cl-html-readme";
-      asd = "cl-html-readme";
-    });
-    systems = [ "cl-html-readme/doc" ];
-    lispLibs = [ (getAttr "docparser" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  cl-html-readme_slash_test = {
-    pname = "cl-html-readme_test";
-    version = "quicklisp-current-release-fa304a63-git";
-    asds = [ "cl-html-readme" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-html-readme/2021-02-28/cl-html-readme-quicklisp-current-release-fa304a63-git.tgz";
-      sha256 = "01z2ykfhg7wx7sz4kp1c6cj9ffbpppnfgfd2jpizd7f5id2wi3cb";
-      system = "cl-html-readme";
-      asd = "cl-html-readme";
-    });
-    systems = [ "cl-html-readme/test" ];
-    lispLibs = [ (getAttr "lisp-unit" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  cl-html5-parser = {
-    pname = "cl-html5-parser";
-    version = "20190521-git";
-    asds = [ "cl-html5-parser" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-html5-parser/2019-05-21/cl-html5-parser-20190521-git.tgz";
-      sha256 = "04if61wigylsmn996rbfl8ylsd0d9hzdmg7p2wiglncibjzcl5k9";
-      system = "cl-html5-parser";
-      asd = "cl-html5-parser";
-    });
-    systems = [ "cl-html5-parser" ];
-    lispLibs = [ (getAttr "cl-ppcre" pkgs) (getAttr "flexi-streams" pkgs) (getAttr "string-case" pkgs) ];
-  };
-  cl-html5-parser-cxml = {
-    pname = "cl-html5-parser-cxml";
-    version = "20190521-git";
-    asds = [ "cl-html5-parser-cxml" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-html5-parser/2019-05-21/cl-html5-parser-20190521-git.tgz";
-      sha256 = "04if61wigylsmn996rbfl8ylsd0d9hzdmg7p2wiglncibjzcl5k9";
-      system = "cl-html5-parser-cxml";
-      asd = "cl-html5-parser-cxml";
-    });
-    systems = [ "cl-html5-parser-cxml" ];
-    lispLibs = [ (getAttr "cl-html5-parser" pkgs) (getAttr "cxml" pkgs) ];
-  };
-  cl-html5-parser-tests = {
-    pname = "cl-html5-parser-tests";
-    version = "20190521-git";
-    asds = [ "cl-html5-parser-tests" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-html5-parser/2019-05-21/cl-html5-parser-20190521-git.tgz";
-      sha256 = "04if61wigylsmn996rbfl8ylsd0d9hzdmg7p2wiglncibjzcl5k9";
-      system = "cl-html5-parser-tests";
-      asd = "cl-html5-parser-tests";
-    });
-    systems = [ "cl-html5-parser-tests" ];
-    lispLibs = [ (getAttr "cl-html5-parser" pkgs) (getAttr "json-streams" pkgs) (getAttr "split-sequence" pkgs) (getAttr "stefil" pkgs) ];
-  };
-  cl-htmlprag = {
-    pname = "cl-htmlprag";
-    version = "20160628-git";
-    asds = [ "cl-htmlprag" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-htmlprag/2016-06-28/cl-htmlprag-20160628-git.tgz";
-      sha256 = "1akfy9rldx5a2h34vf7y02pj2j7b5anbxja53m41ism4vklgqg1c";
-      system = "cl-htmlprag";
-      asd = "cl-htmlprag";
-    });
-    systems = [ "cl-htmlprag" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "optima" pkgs) (getAttr "parse-number" pkgs) ];
-  };
-  cl-httpsqs = {
-    pname = "cl-httpsqs";
-    version = "20180228-git";
-    asds = [ "cl-httpsqs" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-httpsqs/2018-02-28/cl-httpsqs-20180228-git.tgz";
-      sha256 = "14nhr03lm8012crczjpgsmf0ydipqf3kggayshm7w72vkyf0haj7";
-      system = "cl-httpsqs";
-      asd = "cl-httpsqs";
-    });
-    systems = [ "cl-httpsqs" ];
-    lispLibs = [ (getAttr "drakma" pkgs) ];
-  };
-  cl-hue = {
-    pname = "cl-hue";
-    version = "20150113-git";
-    asds = [ "cl-hue" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-hue/2015-01-13/cl-hue-20150113-git.tgz";
-      sha256 = "0d2qv60pih1xmk0zzbdwcsyk8k9abjzilcmhz3jdicinl8jinfr4";
-      system = "cl-hue";
-      asd = "cl-hue";
-    });
-    systems = [ "cl-hue" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "drakma" pkgs) (getAttr "yason" pkgs) ];
-  };
-  cl-i18n = {
-    pname = "cl-i18n";
-    version = "20221106-git";
-    asds = [ "cl-i18n" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-i18n/2022-11-06/cl-i18n-20221106-git.tgz";
-      sha256 = "0kj1wfvlbi7qwq61b0rcdxa0bmb4sfsnh1bj3n5jxp24sdib73w2";
-      system = "cl-i18n";
-      asd = "cl-i18n";
-    });
-    systems = [ "cl-i18n" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "babel" pkgs) (getAttr "cl-ppcre-unicode" pkgs) ];
-  };
-  cl-ilu = {
-    pname = "cl-ilu";
-    version = "20150302-git";
-    asds = [ "cl-ilu" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-devil/2015-03-02/cl-devil-20150302-git.tgz";
-      sha256 = "1qdjb7xwzjkv99s8q0834lfdq4ch5j2ymrmqsvwzhg47ys17pvvf";
-      system = "cl-ilu";
-      asd = "cl-ilu";
-    });
-    systems = [ "cl-ilu" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cffi" pkgs) (getAttr "cl-devil" pkgs) ];
-  };
-  cl-ilut = {
-    pname = "cl-ilut";
-    version = "20150302-git";
-    asds = [ "cl-ilut" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-devil/2015-03-02/cl-devil-20150302-git.tgz";
-      sha256 = "1qdjb7xwzjkv99s8q0834lfdq4ch5j2ymrmqsvwzhg47ys17pvvf";
-      system = "cl-ilut";
-      asd = "cl-ilut";
-    });
-    systems = [ "cl-ilut" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cffi" pkgs) (getAttr "cl-devil" pkgs) ];
-  };
-  cl-incognia = {
-    pname = "cl-incognia";
-    version = "20211230-git";
-    asds = [ "cl-incognia" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-incognia/2021-12-30/cl-incognia-20211230-git.tgz";
-      sha256 = "0c5v7vqh26vg4mzzz7rkq3r29ygj2q4fw6v56pi79bbszyklfs21";
-      system = "cl-incognia";
-      asd = "cl-incognia";
-    });
-    systems = [ "cl-incognia" ];
-    lispLibs = [ (getAttr "dexador" pkgs) (getAttr "jonathan" pkgs) ];
-  };
-  cl-incognia_slash_tests = {
-    pname = "cl-incognia_tests";
-    version = "20211230-git";
-    asds = [ "cl-incognia" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-incognia/2021-12-30/cl-incognia-20211230-git.tgz";
-      sha256 = "0c5v7vqh26vg4mzzz7rkq3r29ygj2q4fw6v56pi79bbszyklfs21";
-      system = "cl-incognia";
-      asd = "cl-incognia";
-    });
-    systems = [ "cl-incognia/tests" ];
-    lispLibs = [ (getAttr "cl-incognia" pkgs) (getAttr "rove" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  cl-indentify = {
-    pname = "cl-indentify";
-    version = "20200925-git";
-    asds = [ "cl-indentify" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-indentify/2020-09-25/cl-indentify-20200925-git.tgz";
-      sha256 = "0ha36bhg474vr76vfhr13szc8cfdj1ickg92k1icz791bqaqg67p";
-      system = "cl-indentify";
-      asd = "cl-indentify";
-    });
-    systems = [ "cl-indentify" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "trivial-gray-streams" pkgs) (getAttr "uiop" pkgs) ];
-  };
-  cl-indentify_slash_cli = {
-    pname = "cl-indentify_cli";
-    version = "20200925-git";
-    asds = [ "cl-indentify" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-indentify/2020-09-25/cl-indentify-20200925-git.tgz";
-      sha256 = "0ha36bhg474vr76vfhr13szc8cfdj1ickg92k1icz791bqaqg67p";
-      system = "cl-indentify";
-      asd = "cl-indentify";
-    });
-    systems = [ "cl-indentify/cli" ];
-    lispLibs = [ (getAttr "cl-indentify" pkgs) (getAttr "command-line-arguments" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  cl-indentify_slash_tests = {
-    pname = "cl-indentify_tests";
-    version = "20200925-git";
-    asds = [ "cl-indentify" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-indentify/2020-09-25/cl-indentify-20200925-git.tgz";
-      sha256 = "0ha36bhg474vr76vfhr13szc8cfdj1ickg92k1icz791bqaqg67p";
-      system = "cl-indentify";
-      asd = "cl-indentify";
-    });
-    systems = [ "cl-indentify/tests" ];
-    lispLibs = [ (getAttr "cl-indentify" pkgs) (getAttr "rove" pkgs) (getAttr "trivial-escapes" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  cl-inflector = {
-    pname = "cl-inflector";
-    version = "20150113-git";
-    asds = [ "cl-inflector" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-inflector/2015-01-13/cl-inflector-20150113-git.tgz";
-      sha256 = "1xwwlhik1la4fp984qnx2dqq24v012qv4x0y49sngfpwg7n0ya7y";
-      system = "cl-inflector";
-      asd = "cl-inflector";
-    });
-    systems = [ "cl-inflector" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cl-ppcre" pkgs) ];
-  };
-  cl-inflector-test = {
-    pname = "cl-inflector-test";
-    version = "20150113-git";
-    asds = [ "cl-inflector-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-inflector/2015-01-13/cl-inflector-20150113-git.tgz";
-      sha256 = "1xwwlhik1la4fp984qnx2dqq24v012qv4x0y49sngfpwg7n0ya7y";
-      system = "cl-inflector-test";
-      asd = "cl-inflector";
-    });
-    systems = [ "cl-inflector-test" ];
-    lispLibs = [ (getAttr "cl-inflector" pkgs) (getAttr "lisp-unit2" pkgs) ];
-  };
-  cl-influxdb = {
-    pname = "cl-influxdb";
-    version = "20180131-git";
-    asds = [ "cl-influxdb" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-influxdb/2018-01-31/cl-influxdb-20180131-git.tgz";
-      sha256 = "0fqnsdw6x79qsvw7l6xp1gxgzcj6jwpa4mn0z2gbbipff4g7k527";
-      system = "cl-influxdb";
-      asd = "cl-influxdb";
-    });
-    systems = [ "cl-influxdb" ];
-    lispLibs = [ (getAttr "cl-annot" pkgs) (getAttr "cl-json" pkgs) (getAttr "do-urlencode" pkgs) (getAttr "drakma" pkgs) (getAttr "flexi-streams" pkgs) (getAttr "usocket" pkgs) ];
-  };
-  cl-info = {
-    pname = "cl-info";
-    version = "20221106-git";
-    asds = [ "cl-info" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-info/2022-11-06/cl-info-20221106-git.tgz";
-      sha256 = "1mg58n6qizssm8wqxnxgkrxaabmjzbrfjh9qld69y5z60zrybg1f";
-      system = "cl-info";
-      asd = "cl-info";
-    });
-    systems = [ "cl-info" ];
-    lispLibs = [ (getAttr "_40ants-doc" pkgs) (getAttr "docs-config" pkgs) ];
-  };
-  cl-info-test = {
-    pname = "cl-info-test";
-    version = "20221106-git";
-    asds = [ "cl-info-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-info/2022-11-06/cl-info-20221106-git.tgz";
-      sha256 = "1mg58n6qizssm8wqxnxgkrxaabmjzbrfjh9qld69y5z60zrybg1f";
-      system = "cl-info-test";
-      asd = "cl-info-test";
-    });
-    systems = [ "cl-info-test" ];
-    lispLibs = [ (getAttr "hamcrest" pkgs) (getAttr "cl-info" pkgs) (getAttr "rove" pkgs) ];
-  };
-  cl-ini = {
-    pname = "cl-ini";
-    version = "20201220-git";
-    asds = [ "cl-ini" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-ini/2020-12-20/cl-ini-20201220-git.tgz";
-      sha256 = "12vy3gspqn0wmkyz5id1xrgv1scgb16m7pkvmbmi19vlpj2iyq7p";
-      system = "cl-ini";
-      asd = "cl-ini";
-    });
-    systems = [ "cl-ini" ];
-    lispLibs = [ (getAttr "str" pkgs) ];
-  };
-  cl-ini-test = {
-    pname = "cl-ini-test";
-    version = "20201220-git";
-    asds = [ "cl-ini-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-ini/2020-12-20/cl-ini-20201220-git.tgz";
-      sha256 = "12vy3gspqn0wmkyz5id1xrgv1scgb16m7pkvmbmi19vlpj2iyq7p";
-      system = "cl-ini-test";
-      asd = "cl-ini-test";
-    });
-    systems = [ "cl-ini-test" ];
-    lispLibs = [ (getAttr "cl-ini" pkgs) (getAttr "prove" pkgs) ];
-  };
-  cl-inotify = {
-    pname = "cl-inotify";
-    version = "20220707-git";
-    asds = [ "cl-inotify" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-inotify/2022-07-07/cl-inotify-20220707-git.tgz";
-      sha256 = "0d3bvp5lqnddzhk1w9yyli03njbkhc8d129a058g0j49kgd47c7v";
-      system = "cl-inotify";
-      asd = "cl-inotify";
-    });
-    systems = [ "cl-inotify" ];
-    lispLibs = [ (getAttr "binary-types" pkgs) (getAttr "cffi" pkgs) (getAttr "cffi-grovel" pkgs) (getAttr "iolib" pkgs) (getAttr "iolib_dot_asdf" pkgs) (getAttr "iolib_dot_base" pkgs) (getAttr "iolib_dot_conf" pkgs) (getAttr "osicat" pkgs) (getAttr "trivial-utf-8" pkgs) ];
-  };
-  cl-inotify-tests = {
-    pname = "cl-inotify-tests";
-    version = "20220707-git";
-    asds = [ "cl-inotify-tests" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-inotify/2022-07-07/cl-inotify-20220707-git.tgz";
-      sha256 = "0d3bvp5lqnddzhk1w9yyli03njbkhc8d129a058g0j49kgd47c7v";
-      system = "cl-inotify-tests";
-      asd = "cl-inotify-tests";
-    });
-    systems = [ "cl-inotify-tests" ];
-    lispLibs = [ (getAttr "cl-inotify" pkgs) (getAttr "fiveam" pkgs) ];
-  };
-  cl-intbytes = {
-    pname = "cl-intbytes";
-    version = "20150923-git";
-    asds = [ "cl-intbytes" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-intbytes/2015-09-23/cl-intbytes-20150923-git.tgz";
-      sha256 = "0chwfda7pi8mrgwj31li7f0x0hr5yrp4csiq8hwkgd4c1ag1z9fx";
-      system = "cl-intbytes";
-      asd = "cl-intbytes";
-    });
-    systems = [ "cl-intbytes" ];
-    lispLibs = [ (getAttr "fast-io" pkgs) ];
-  };
-  cl-intbytes-test = {
-    pname = "cl-intbytes-test";
-    version = "20150923-git";
-    asds = [ "cl-intbytes-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-intbytes/2015-09-23/cl-intbytes-20150923-git.tgz";
-      sha256 = "0chwfda7pi8mrgwj31li7f0x0hr5yrp4csiq8hwkgd4c1ag1z9fx";
-      system = "cl-intbytes-test";
-      asd = "cl-intbytes-test";
-    });
-    systems = [ "cl-intbytes-test" ];
-    lispLibs = [ (getAttr "cl-intbytes" pkgs) (getAttr "prove" pkgs) (getAttr "prove-asdf" pkgs) ];
-  };
-  cl-interpol = {
-    pname = "cl-interpol";
-    version = "20221106-git";
-    asds = [ "cl-interpol" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-interpol/2022-11-06/cl-interpol-20221106-git.tgz";
-      sha256 = "1nkjn8byyfdxhi84rbpqs87bb5m478lvphfgxqqv0q37rn75c946";
-      system = "cl-interpol";
-      asd = "cl-interpol";
-    });
-    systems = [ "cl-interpol" ];
-    lispLibs = [ (getAttr "cl-unicode" pkgs) (getAttr "named-readtables" pkgs) ];
-  };
-  cl-interpol_slash_test = {
-    pname = "cl-interpol_test";
-    version = "20221106-git";
-    asds = [ "cl-interpol" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-interpol/2022-11-06/cl-interpol-20221106-git.tgz";
-      sha256 = "1nkjn8byyfdxhi84rbpqs87bb5m478lvphfgxqqv0q37rn75c946";
-      system = "cl-interpol";
-      asd = "cl-interpol";
-    });
-    systems = [ "cl-interpol/test" ];
-    lispLibs = [ (getAttr "cl-interpol" pkgs) (getAttr "flexi-streams" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  cl-interval = {
-    pname = "cl-interval";
-    version = "20200715-git";
-    asds = [ "cl-interval" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-interval/2020-07-15/cl-interval-20200715-git.tgz";
-      sha256 = "1425l6xmrqadjqgqb5qasisf14pbr6zpj30bpxfv8hhnxs5njq4p";
-      system = "cl-interval";
-      asd = "cl-interval";
-    });
-    systems = [ "cl-interval" ];
-    lispLibs = [  ];
-  };
-  cl-interval-docs = {
-    pname = "cl-interval-docs";
-    version = "20200715-git";
-    asds = [ "cl-interval-docs" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-interval/2020-07-15/cl-interval-20200715-git.tgz";
-      sha256 = "1425l6xmrqadjqgqb5qasisf14pbr6zpj30bpxfv8hhnxs5njq4p";
-      system = "cl-interval-docs";
-      asd = "cl-interval-docs";
-    });
-    systems = [ "cl-interval-docs" ];
-    lispLibs = [ (getAttr "cl-gendoc" pkgs) (getAttr "cl-interval" pkgs) ];
-  };
-  cl-ipfs-api2 = {
-    pname = "cl-ipfs-api2";
-    version = "20210630-git";
-    asds = [ "cl-ipfs-api2" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-ipfs-api2/2021-06-30/cl-ipfs-api2-20210630-git.tgz";
-      sha256 = "1h0csxk4db1hid793mk5kz3nbjyl7z4ic1zk2wy46k1vz5lnnsph";
-      system = "cl-ipfs-api2";
-      asd = "cl-ipfs-api2";
-    });
-    systems = [ "cl-ipfs-api2" ];
-    lispLibs = [ (getAttr "arnesi" pkgs) (getAttr "drakma" pkgs) (getAttr "uiop" pkgs) (getAttr "yason" pkgs) ];
-  };
-  cl-irc = {
-    pname = "cl-irc";
-    version = "0.9.2";
-    asds = [ "cl-irc" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-irc/2015-09-23/cl-irc-0.9.2.tgz";
-      sha256 = "15h3ram8b6vyg4718ad2m92xgilda2x3zmkzbjnijk69kkqsq01r";
-      system = "cl-irc";
-      asd = "cl-irc";
-    });
-    systems = [ "cl-irc" ];
-    lispLibs = [ (getAttr "flexi-streams" pkgs) (getAttr "split-sequence" pkgs) (getAttr "usocket" pkgs) ];
-  };
-  cl-irc-test = {
-    pname = "cl-irc-test";
-    version = "0.9.2";
-    asds = [ "cl-irc-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-irc/2015-09-23/cl-irc-0.9.2.tgz";
-      sha256 = "15h3ram8b6vyg4718ad2m92xgilda2x3zmkzbjnijk69kkqsq01r";
-      system = "cl-irc-test";
-      asd = "cl-irc-test";
-    });
-    systems = [ "cl-irc-test" ];
-    lispLibs = [ (getAttr "cl-irc" pkgs) (getAttr "rt" pkgs) (getAttr "split-sequence" pkgs) ];
-  };
-  cl-irregsexp = {
-    pname = "cl-irregsexp";
-    version = "20160825-git";
-    asds = [ "cl-irregsexp" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-irregsexp/2016-08-25/cl-irregsexp-20160825-git.tgz";
-      sha256 = "09pf3jlqskcs32shbj9q3m0zww5pxyrizbvk2nxiwwnbl1rdb406";
-      system = "cl-irregsexp";
-      asd = "cl-irregsexp";
-    });
-    systems = [ "cl-irregsexp" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) ];
-  };
-  cl-isaac = {
-    pname = "cl-isaac";
-    version = "20221106-git";
-    asds = [ "cl-isaac" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-isaac/2022-11-06/cl-isaac-20221106-git.tgz";
-      sha256 = "0ig1mf8iridfr7vci9gy499194h0hda0xki5s6g0y04g85ibnpw9";
-      system = "cl-isaac";
-      asd = "cl-isaac";
-    });
-    systems = [ "cl-isaac" ];
-    lispLibs = [  ];
-  };
-  cl-iterative = {
-    pname = "cl-iterative";
-    version = "20160318-git";
-    asds = [ "cl-iterative" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-iterative/2016-03-18/cl-iterative-20160318-git.tgz";
-      sha256 = "01h2fs7nq2wivjwh9swsmfdvsdmd7j9dvzgrq0ijbq456zm8vilq";
-      system = "cl-iterative";
-      asd = "cl-iterative";
-    });
-    systems = [ "cl-iterative" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "optima" pkgs) ];
-  };
-  cl-iterative-tests = {
-    pname = "cl-iterative-tests";
-    version = "20160318-git";
-    asds = [ "cl-iterative-tests" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-iterative/2016-03-18/cl-iterative-20160318-git.tgz";
-      sha256 = "01h2fs7nq2wivjwh9swsmfdvsdmd7j9dvzgrq0ijbq456zm8vilq";
-      system = "cl-iterative-tests";
-      asd = "cl-iterative-tests";
-    });
-    systems = [ "cl-iterative-tests" ];
-    lispLibs = [ (getAttr "cl-iterative" pkgs) (getAttr "fiveam" pkgs) ];
-  };
-  cl-itertools = {
-    pname = "cl-itertools";
-    version = "20160421-git";
-    asds = [ "cl-itertools" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-itertools/2016-04-21/cl-itertools-20160421-git.tgz";
-      sha256 = "0m1g7nxqnz03bcj46skcr2d50pi3lb4hwizna5d4mvl5hk4zwbxr";
-      system = "cl-itertools";
-      asd = "cl-itertools";
-    });
-    systems = [ "cl-itertools" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cl-coroutine" pkgs) (getAttr "iterate" pkgs) ];
-  };
-  cl-itertools-tests = {
-    pname = "cl-itertools-tests";
-    version = "20160421-git";
-    asds = [ "cl-itertools-tests" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-itertools/2016-04-21/cl-itertools-20160421-git.tgz";
-      sha256 = "0m1g7nxqnz03bcj46skcr2d50pi3lb4hwizna5d4mvl5hk4zwbxr";
-      system = "cl-itertools-tests";
-      asd = "cl-itertools";
-    });
-    systems = [ "cl-itertools-tests" ];
-    lispLibs = [ (getAttr "cl-itertools" pkgs) (getAttr "fiveam" pkgs) (getAttr "iterate" pkgs) ];
-  };
-  cl-jpeg = {
-    pname = "cl-jpeg";
-    version = "20170630-git";
-    asds = [ "cl-jpeg" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-jpeg/2017-06-30/cl-jpeg-20170630-git.tgz";
-      sha256 = "1bkkiqz8fqldlj1wbmrccjsvxcwj98h6s4b6gslr3cg2wmdv5xmy";
-      system = "cl-jpeg";
-      asd = "cl-jpeg";
-    });
-    systems = [ "cl-jpeg" ];
-    lispLibs = [  ];
-  };
-  cl-js = {
-    pname = "cl-js";
-    version = "20180131-git";
-    asds = [ "cl-js" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/js/2018-01-31/js-20180131-git.tgz";
-      sha256 = "0f717358ax5sma53h4hzxx7l00r6ndv2zdpd5rhqv3v7dqqvl8h5";
-      system = "cl-js";
-      asd = "cl-js";
-    });
-    systems = [ "cl-js" ];
-    lispLibs = [ (getAttr "cl-ppcre" pkgs) (getAttr "local-time" pkgs) (getAttr "parse-js" pkgs) ];
-  };
-  cl-json = {
-    pname = "cl-json";
-    version = "20220707-git";
-    asds = [ "cl-json" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-json/2022-07-07/cl-json-20220707-git.tgz";
-      sha256 = "12vakz47d1i7pywgb9cm2364fzykidc9m7l7b6n9lx0gn2qx9ar5";
-      system = "cl-json";
-      asd = "cl-json";
-    });
-    systems = [ "cl-json" ];
-    lispLibs = [  ];
-  };
-  cl-json-helper = {
-    pname = "cl-json-helper";
-    version = "20181210-git";
-    asds = [ "cl-json-helper" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-json-helper/2018-12-10/cl-json-helper-20181210-git.tgz";
-      sha256 = "1dhv5lh514m7bvl77xjhb4ky7nf4bskgpld7rqg3rq24k4y0c79a";
-      system = "cl-json-helper";
-      asd = "cl-json-helper";
-    });
-    systems = [ "cl-json-helper" ];
-    lispLibs = [ (getAttr "cl-json" pkgs) ];
-  };
-  cl-json-pointer = {
-    pname = "cl-json-pointer";
-    version = "20221106-git";
-    asds = [ "cl-json-pointer" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-json-pointer/2022-11-06/cl-json-pointer-20221106-git.tgz";
-      sha256 = "0b7a755wc2ghsd1pv7d32877b21h4nssp41xs017anbmj55czb2h";
-      system = "cl-json-pointer";
-      asd = "cl-json-pointer";
-    });
-    systems = [ "cl-json-pointer" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "closer-mop" pkgs) (getAttr "st-json" pkgs) ];
-  };
-  cl-json-pointer_slash_core = {
-    pname = "cl-json-pointer_core";
-    version = "20221106-git";
-    asds = [ "cl-json-pointer" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-json-pointer/2022-11-06/cl-json-pointer-20221106-git.tgz";
-      sha256 = "0b7a755wc2ghsd1pv7d32877b21h4nssp41xs017anbmj55czb2h";
-      system = "cl-json-pointer";
-      asd = "cl-json-pointer";
-    });
-    systems = [ "cl-json-pointer/core" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "closer-mop" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  cl-json-pointer_slash_st-json-support = {
-    pname = "cl-json-pointer_st-json-support";
-    version = "20221106-git";
-    asds = [ "cl-json-pointer" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-json-pointer/2022-11-06/cl-json-pointer-20221106-git.tgz";
-      sha256 = "0b7a755wc2ghsd1pv7d32877b21h4nssp41xs017anbmj55czb2h";
-      system = "cl-json-pointer";
-      asd = "cl-json-pointer";
-    });
-    systems = [ "cl-json-pointer/st-json-support" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "closer-mop" pkgs) (getAttr "st-json" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  cl-json-pointer_slash_synonyms = {
-    pname = "cl-json-pointer_synonyms";
-    version = "20221106-git";
-    asds = [ "cl-json-pointer" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-json-pointer/2022-11-06/cl-json-pointer-20221106-git.tgz";
-      sha256 = "0b7a755wc2ghsd1pv7d32877b21h4nssp41xs017anbmj55czb2h";
-      system = "cl-json-pointer";
-      asd = "cl-json-pointer";
-    });
-    systems = [ "cl-json-pointer/synonyms" ];
-    lispLibs = [ (getAttr "cl-json-pointer" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  cl-json-schema = {
-    pname = "cl-json-schema";
-    version = "20210228-git";
-    asds = [ "cl-json-schema" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-json-schema/2021-02-28/cl-json-schema-20210228-git.tgz";
-      sha256 = "1c90c9j6d2b02zyyqd07200waqa4saq0svps7vfy5a3lxp9vag9i";
-      system = "cl-json-schema";
-      asd = "cl-json-schema";
-    });
-    systems = [ "cl-json-schema" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cl-ppcre" pkgs) (getAttr "trivial-do" pkgs) (getAttr "yason" pkgs) ];
-  };
-  cl-json-schema-tests = {
-    pname = "cl-json-schema-tests";
-    version = "20210228-git";
-    asds = [ "cl-json-schema-tests" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-json-schema/2021-02-28/cl-json-schema-20210228-git.tgz";
-      sha256 = "1c90c9j6d2b02zyyqd07200waqa4saq0svps7vfy5a3lxp9vag9i";
-      system = "cl-json-schema-tests";
-      asd = "cl-json-schema-tests";
-    });
-    systems = [ "cl-json-schema-tests" ];
-    lispLibs = [ (getAttr "cl-json-schema" pkgs) (getAttr "cl-ppcre" pkgs) (getAttr "fiasco" pkgs) ];
-  };
-  cl-json_slash_test = {
-    pname = "cl-json_test";
-    version = "20220707-git";
-    asds = [ "cl-json" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-json/2022-07-07/cl-json-20220707-git.tgz";
-      sha256 = "12vakz47d1i7pywgb9cm2364fzykidc9m7l7b6n9lx0gn2qx9ar5";
-      system = "cl-json";
-      asd = "cl-json";
-    });
-    systems = [ "cl-json/test" ];
-    lispLibs = [ (getAttr "cl-json" pkgs) (getAttr "fiveam" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  cl-jsx = {
-    pname = "cl-jsx";
-    version = "20160208-git";
-    asds = [ "cl-jsx" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-jsx/2016-02-08/cl-jsx-20160208-git.tgz";
-      sha256 = "1vkqs65sqnfkfka2p93ibfrgg3wps3qhlcgcd8j40h0bv3phcjp7";
-      system = "cl-jsx";
-      asd = "cl-jsx";
-    });
-    systems = [ "cl-jsx" ];
-    lispLibs = [ (getAttr "cl-who" pkgs) (getAttr "esrap" pkgs) (getAttr "named-readtables" pkgs) ];
-  };
-  cl-jsx-test = {
-    pname = "cl-jsx-test";
-    version = "20160208-git";
-    asds = [ "cl-jsx-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-jsx/2016-02-08/cl-jsx-20160208-git.tgz";
-      sha256 = "1vkqs65sqnfkfka2p93ibfrgg3wps3qhlcgcd8j40h0bv3phcjp7";
-      system = "cl-jsx-test";
-      asd = "cl-jsx-test";
-    });
-    systems = [ "cl-jsx-test" ];
-    lispLibs = [ (getAttr "cl-jsx" pkgs) (getAttr "prove" pkgs) (getAttr "prove-asdf" pkgs) ];
-  };
-  cl-junit-xml = {
-    pname = "cl-junit-xml";
-    version = "20150113-git";
-    asds = [ "cl-junit-xml" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-junit-xml/2015-01-13/cl-junit-xml-20150113-git.tgz";
-      sha256 = "1ssrcgw5bhfsb5lk7jb8jyz77mj6sg23wc3gmnw747iqvpikwakr";
-      system = "cl-junit-xml";
-      asd = "cl-junit-xml";
-    });
-    systems = [ "cl-junit-xml" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cxml" pkgs) (getAttr "iterate" pkgs) ];
-  };
-  cl-junit-xml_dot_lisp-unit = {
-    pname = "cl-junit-xml.lisp-unit";
-    version = "20150113-git";
-    asds = [ "cl-junit-xml.lisp-unit" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-junit-xml/2015-01-13/cl-junit-xml-20150113-git.tgz";
-      sha256 = "1ssrcgw5bhfsb5lk7jb8jyz77mj6sg23wc3gmnw747iqvpikwakr";
-      system = "cl-junit-xml.lisp-unit";
-      asd = "cl-junit-xml.lisp-unit";
-    });
-    systems = [ "cl-junit-xml.lisp-unit" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cl-junit-xml" pkgs) (getAttr "cl-ppcre" pkgs) (getAttr "iterate" pkgs) (getAttr "lisp-unit" pkgs) ];
-  };
-  cl-junit-xml_dot_lisp-unit2 = {
-    pname = "cl-junit-xml.lisp-unit2";
-    version = "20150113-git";
-    asds = [ "cl-junit-xml.lisp-unit2" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-junit-xml/2015-01-13/cl-junit-xml-20150113-git.tgz";
-      sha256 = "1ssrcgw5bhfsb5lk7jb8jyz77mj6sg23wc3gmnw747iqvpikwakr";
-      system = "cl-junit-xml.lisp-unit2";
-      asd = "cl-junit-xml.lisp-unit2";
-    });
-    systems = [ "cl-junit-xml.lisp-unit2" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cl-junit-xml" pkgs) (getAttr "cl-ppcre" pkgs) (getAttr "iterate" pkgs) (getAttr "lisp-unit2" pkgs) ];
-  };
-  cl-junit-xml_dot_test = {
-    pname = "cl-junit-xml.test";
-    version = "20150113-git";
-    asds = [ "cl-junit-xml.test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-junit-xml/2015-01-13/cl-junit-xml-20150113-git.tgz";
-      sha256 = "1ssrcgw5bhfsb5lk7jb8jyz77mj6sg23wc3gmnw747iqvpikwakr";
-      system = "cl-junit-xml.test";
-      asd = "cl-junit-xml";
-    });
-    systems = [ "cl-junit-xml.test" ];
-    lispLibs = [ (getAttr "cl-junit-xml" pkgs) (getAttr "lisp-unit2" pkgs) ];
-  };
-  cl-k8055 = {
-    pname = "cl-k8055";
-    version = "20190710-git";
-    asds = [ "cl-k8055" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-k8055/2019-07-10/cl-k8055-20190710-git.tgz";
-      sha256 = "069j5hrcpcm9vlh2f0myqwggp30inycxn61ivi1ppa97f8f1rrig";
-      system = "cl-k8055";
-      asd = "cl-k8055";
-    });
-    systems = [ "cl-k8055" ];
-    lispLibs = [ (getAttr "cffi" pkgs) (getAttr "cl-ppcre" pkgs) (getAttr "documentation-utils" pkgs) (getAttr "trivial-features" pkgs) ];
-  };
-  cl-kanren = {
-    pname = "cl-kanren";
-    version = "20191007-git";
-    asds = [ "cl-kanren" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-kanren/2019-10-07/cl-kanren-20191007-git.tgz";
-      sha256 = "1r0qzvs92d7kgl83fx8c27jmsh17agr7jpb1nmmc56phjvq0z7ll";
-      system = "cl-kanren";
-      asd = "cl-kanren";
-    });
-    systems = [ "cl-kanren" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) ];
-  };
-  cl-kanren-test = {
-    pname = "cl-kanren-test";
-    version = "20191007-git";
-    asds = [ "cl-kanren-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-kanren/2019-10-07/cl-kanren-20191007-git.tgz";
-      sha256 = "1r0qzvs92d7kgl83fx8c27jmsh17agr7jpb1nmmc56phjvq0z7ll";
-      system = "cl-kanren-test";
-      asd = "cl-kanren-test";
-    });
-    systems = [ "cl-kanren-test" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cl-kanren" pkgs) (getAttr "clunit" pkgs) ];
-  };
-  cl-keycloak = {
-    pname = "cl-keycloak";
-    version = "20190710-git";
-    asds = [ "cl-keycloak" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-keycloak/2019-07-10/cl-keycloak-20190710-git.tgz";
-      sha256 = "052x10xj951061xa80kp1ziwrr8hskjsr7q2ni1d1ab26rkmhb9q";
-      system = "cl-keycloak";
-      asd = "cl-keycloak";
-    });
-    systems = [ "cl-keycloak" ];
-    lispLibs = [ (getAttr "drakma" pkgs) (getAttr "flexi-streams" pkgs) (getAttr "yason" pkgs) ];
-  };
-  cl-kraken = {
-    pname = "cl-kraken";
-    version = "20220331-git";
-    asds = [ "cl-kraken" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-kraken/2022-03-31/cl-kraken-20220331-git.tgz";
-      sha256 = "07a9a7yqii0gsiaf4r6jfz2nb2m8766rv4acqcdjm8zmsllwx7jz";
-      system = "cl-kraken";
-      asd = "cl-kraken";
-    });
-    systems = [ "cl-kraken" ];
-    lispLibs = [ (getAttr "cl-base64" pkgs) (getAttr "dexador" pkgs) (getAttr "ironclad" pkgs) (getAttr "jsown" pkgs) (getAttr "quri" pkgs) ];
-  };
-  cl-kraken_slash_tests = {
-    pname = "cl-kraken_tests";
-    version = "20220331-git";
-    asds = [ "cl-kraken" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-kraken/2022-03-31/cl-kraken-20220331-git.tgz";
-      sha256 = "07a9a7yqii0gsiaf4r6jfz2nb2m8766rv4acqcdjm8zmsllwx7jz";
-      system = "cl-kraken";
-      asd = "cl-kraken";
-    });
-    systems = [ "cl-kraken/tests" ];
-    lispLibs = [ (getAttr "rove" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  cl-ksuid = {
-    pname = "cl-ksuid";
-    version = "20170830-git";
-    asds = [ "cl-ksuid" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-ksuid/2017-08-30/cl-ksuid-20170830-git.tgz";
-      sha256 = "142fr8l6aa6wxnjxv04f61hy9504cx9x1r10byhmj475s5pfr6gl";
-      system = "cl-ksuid";
-      asd = "cl-ksuid";
-    });
-    systems = [ "cl-ksuid" ];
-    lispLibs = [ (getAttr "babel" pkgs) (getAttr "ironclad" pkgs) (getAttr "prove" pkgs) (getAttr "prove-asdf" pkgs) ];
-  };
-  cl-ksuid-test = {
-    pname = "cl-ksuid-test";
-    version = "20170830-git";
-    asds = [ "cl-ksuid-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-ksuid/2017-08-30/cl-ksuid-20170830-git.tgz";
-      sha256 = "142fr8l6aa6wxnjxv04f61hy9504cx9x1r10byhmj475s5pfr6gl";
-      system = "cl-ksuid-test";
-      asd = "cl-ksuid";
-    });
-    systems = [ "cl-ksuid-test" ];
-    lispLibs = [ (getAttr "cl-ksuid" pkgs) (getAttr "prove" pkgs) (getAttr "prove-asdf" pkgs) ];
-  };
-  cl-kyoto-cabinet = {
-    pname = "cl-kyoto-cabinet";
-    version = "20191130-git";
-    asds = [ "cl-kyoto-cabinet" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-kyoto-cabinet/2019-11-30/cl-kyoto-cabinet-20191130-git.tgz";
-      sha256 = "0ayp87ggayaf8d1dblpv90a87fmgh9vhhcah3ch6jvcw6zzb9lcr";
-      system = "cl-kyoto-cabinet";
-      asd = "cl-kyoto-cabinet";
-    });
-    systems = [ "cl-kyoto-cabinet" ];
-    lispLibs = [ (getAttr "cffi" pkgs) ];
-  };
-  cl-l10n = {
-    pname = "cl-l10n";
-    version = "20211209-git";
-    asds = [ "cl-l10n" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-l10n/2021-12-09/cl-l10n-20211209-git.tgz";
-      sha256 = "10yknvjcbgc82a6k6yzj2diki2z2s04q5kg642f2gfj2rl3bjyz7";
-      system = "cl-l10n";
-      asd = "cl-l10n";
-    });
-    systems = [ "cl-l10n" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cl-fad" pkgs) (getAttr "cl-l10n-cldr" pkgs) (getAttr "cl-ppcre" pkgs) (getAttr "closer-mop" pkgs) (getAttr "cxml" pkgs) (getAttr "flexi-streams" pkgs) (getAttr "iterate" pkgs) (getAttr "local-time" pkgs) (getAttr "metabang-bind" pkgs) ];
-  };
-  cl-l10n-cldr = {
-    pname = "cl-l10n-cldr";
-    version = "20120909-darcs";
-    asds = [ "cl-l10n-cldr" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-l10n-cldr/2012-09-09/cl-l10n-cldr-20120909-darcs.tgz";
-      sha256 = "1mwkjdc51158v9rpdpsc1qzqqs0x8hb9k1k7b0pm8q7dp9rrb53v";
-      system = "cl-l10n-cldr";
-      asd = "cl-l10n-cldr";
-    });
-    systems = [ "cl-l10n-cldr" ];
-    lispLibs = [  ];
-  };
-  cl-l10n_slash_test = {
-    pname = "cl-l10n_test";
-    version = "20211209-git";
-    asds = [ "cl-l10n" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-l10n/2021-12-09/cl-l10n-20211209-git.tgz";
-      sha256 = "10yknvjcbgc82a6k6yzj2diki2z2s04q5kg642f2gfj2rl3bjyz7";
-      system = "cl-l10n";
-      asd = "cl-l10n";
-    });
-    systems = [ "cl-l10n/test" ];
-    lispLibs = [ (getAttr "cl-l10n" pkgs) (getAttr "hu_dot_dwim_dot_stefil" pkgs) (getAttr "parse-number" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  cl-lambdacalc = {
-    pname = "cl-lambdacalc";
-    version = "20220331-git";
-    asds = [ "cl-lambdacalc" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-lambdacalc/2022-03-31/cl-lambdacalc-20220331-git.tgz";
-      sha256 = "0k2df6i5zrl9v1qx5cvznkzch1wc100zw5289zbl3vlq545z88gc";
-      system = "cl-lambdacalc";
-      asd = "cl-lambdacalc";
-    });
-    systems = [ "cl-lambdacalc" ];
-    lispLibs = [ (getAttr "cl-ppcre" pkgs) ];
-  };
-  cl-lambdacalc-test = {
-    pname = "cl-lambdacalc-test";
-    version = "20220331-git";
-    asds = [ "cl-lambdacalc-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-lambdacalc/2022-03-31/cl-lambdacalc-20220331-git.tgz";
-      sha256 = "0k2df6i5zrl9v1qx5cvznkzch1wc100zw5289zbl3vlq545z88gc";
-      system = "cl-lambdacalc-test";
-      asd = "cl-lambdacalc-test";
-    });
-    systems = [ "cl-lambdacalc-test" ];
-    lispLibs = [ (getAttr "cl-lambdacalc" pkgs) (getAttr "lisp-unit" pkgs) ];
-  };
-  cl-las = {
-    pname = "cl-las";
-    version = "20221106-git";
-    asds = [ "cl-las" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-las/2022-11-06/cl-las-20221106-git.tgz";
-      sha256 = "119v5mrvxhz8b3alqj9gzfbzhigdm1n1hmwyylncn5w5dkq3jc9k";
-      system = "cl-las";
-      asd = "cl-las";
-    });
-    systems = [ "cl-las" ];
-    lispLibs = [ (getAttr "binary-io" pkgs) ];
-  };
-  cl-lastfm = {
-    pname = "cl-lastfm";
-    version = "0.2.1";
-    asds = [ "cl-lastfm" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-lastfm/2014-07-13/cl-lastfm-0.2.1.tgz";
-      sha256 = "0f37b8swgfz57bffcypjhcgzj5dhanssiraahkianj65a6zbindl";
-      system = "cl-lastfm";
-      asd = "cl-lastfm";
-    });
-    systems = [ "cl-lastfm" ];
-    lispLibs = [ (getAttr "cxml-stp" pkgs) (getAttr "drakma" pkgs) (getAttr "trivial-utf-8" pkgs) (getAttr "url-rewrite" pkgs) ];
-  };
-  cl-lastfm-test = {
-    pname = "cl-lastfm-test";
-    version = "0.2.1";
-    asds = [ "cl-lastfm-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-lastfm/2014-07-13/cl-lastfm-0.2.1.tgz";
-      sha256 = "0f37b8swgfz57bffcypjhcgzj5dhanssiraahkianj65a6zbindl";
-      system = "cl-lastfm-test";
-      asd = "cl-lastfm-test";
-    });
-    systems = [ "cl-lastfm-test" ];
-    lispLibs = [ (getAttr "cl-lastfm" pkgs) (getAttr "lisp-unit" pkgs) ];
-  };
-  cl-launch = {
-    pname = "cl-launch";
-    version = "4.1.4.1";
-    asds = [ "cl-launch" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-launch/2015-10-31/cl-launch-4.1.4.1.tgz";
-      sha256 = "041nh1sh9rqdk9c1kr63n3g2pn11i68x9plzyfq36wmyhz2aypnr";
-      system = "cl-launch";
-      asd = "cl-launch";
-    });
-    systems = [ "cl-launch" ];
-    lispLibs = [  ];
-  };
-  cl-ledger = {
-    pname = "cl-ledger";
-    version = "20200218-git";
-    asds = [ "cl-ledger" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-ledger/2020-02-18/cl-ledger-20200218-git.tgz";
-      sha256 = "1dpxna9s0rgshqbc58h698ihwyk34a3napb8zrm8vbq8aigjrrzs";
-      system = "cl-ledger";
-      asd = "cl-ledger";
-    });
-    systems = [ "cl-ledger" ];
-    lispLibs = [ (getAttr "cambl" pkgs) (getAttr "cl-ppcre" pkgs) (getAttr "local-time" pkgs) (getAttr "periods-series" pkgs) ];
-  };
-  cl-lex = {
-    pname = "cl-lex";
-    version = "20160929-git";
-    asds = [ "cl-lex" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-lex/2016-09-29/cl-lex-20160929-git.tgz";
-      sha256 = "1kg50f76bfpfxcv4dfivq1n9a0xlsra2ajb0vd68lxwgbidgyc2y";
-      system = "cl-lex";
-      asd = "cl-lex";
-    });
-    systems = [ "cl-lex" ];
-    lispLibs = [ (getAttr "cl-ppcre" pkgs) ];
-  };
-  cl-lexer = {
-    pname = "cl-lexer";
-    version = "20191007-git";
-    asds = [ "cl-lexer" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-lexer/2019-10-07/cl-lexer-20191007-git.tgz";
-      sha256 = "182fnmazfmc3zdp14lvpxlaxrwwsjp8mbjn8sdzywjxcnvlpkdmk";
-      system = "cl-lexer";
-      asd = "cl-lexer";
-    });
-    systems = [ "cl-lexer" ];
-    lispLibs = [ (getAttr "regex" pkgs) ];
-  };
-  cl-liballegro = {
-    pname = "cl-liballegro";
-    version = "20221106-git";
-    asds = [ "cl-liballegro" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-liballegro/2022-11-06/cl-liballegro-20221106-git.tgz";
-      sha256 = "0x2q91s2242gw03w50l227llfb3hrsvjsyhjbc6dqarf1n1y3kw3";
-      system = "cl-liballegro";
-      asd = "cl-liballegro";
-    });
-    systems = [ "cl-liballegro" ];
-    lispLibs = [ (getAttr "cffi" pkgs) (getAttr "cffi-libffi" pkgs) (getAttr "float-features" pkgs) (getAttr "trivial-garbage" pkgs) (getAttr "trivial-main-thread" pkgs) ];
-  };
-  cl-liballegro-nuklear = {
-    pname = "cl-liballegro-nuklear";
-    version = "20221106-git";
-    asds = [ "cl-liballegro-nuklear" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-liballegro-nuklear/2022-11-06/cl-liballegro-nuklear-20221106-git.tgz";
-      sha256 = "196lyp469rdjkpkcqpy4h860nsjqfifrvm798xip93sxzcg9zkba";
-      system = "cl-liballegro-nuklear";
-      asd = "cl-liballegro-nuklear";
-    });
-    systems = [ "cl-liballegro-nuklear" ];
-    lispLibs = [ (getAttr "cffi" pkgs) (getAttr "cffi-libffi" pkgs) (getAttr "trivial-features" pkgs) ];
-  };
-  cl-libevent2 = {
-    pname = "cl-libevent2";
-    version = "20190107-git";
-    asds = [ "cl-libevent2" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-libevent2/2019-01-07/cl-libevent2-20190107-git.tgz";
-      sha256 = "18c8cxlh0vmyca7ihj8dz3f1j31h7y0kcis6qr6mpkzyi0k2cf0g";
-      system = "cl-libevent2";
-      asd = "cl-libevent2";
-    });
-    systems = [ "cl-libevent2" ];
-    lispLibs = [ (getAttr "cffi" pkgs) ];
-  };
-  cl-libevent2-ssl = {
-    pname = "cl-libevent2-ssl";
-    version = "20190107-git";
-    asds = [ "cl-libevent2-ssl" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-libevent2/2019-01-07/cl-libevent2-20190107-git.tgz";
-      sha256 = "18c8cxlh0vmyca7ihj8dz3f1j31h7y0kcis6qr6mpkzyi0k2cf0g";
-      system = "cl-libevent2-ssl";
-      asd = "cl-libevent2-ssl";
-    });
-    systems = [ "cl-libevent2-ssl" ];
-    lispLibs = [ (getAttr "cffi" pkgs) (getAttr "cl-libevent2" pkgs) ];
-  };
-  cl-libfarmhash = {
-    pname = "cl-libfarmhash";
-    version = "20161031-git";
-    asds = [ "cl-libfarmhash" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-libfarmhash/2016-10-31/cl-libfarmhash-20161031-git.tgz";
-      sha256 = "1r8rhwh4jdvvby15nzaxikzhd1q8ipsfylqbsq2m9q482vcxs6sb";
-      system = "cl-libfarmhash";
-      asd = "cl-libfarmhash";
-    });
-    systems = [ "cl-libfarmhash" ];
-    lispLibs = [ (getAttr "cffi" pkgs) (getAttr "cffi-libffi" pkgs) ];
-  };
-  cl-libhoedown = {
-    pname = "cl-libhoedown";
-    version = "20161031-git";
-    asds = [ "cl-libhoedown" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-libhoedown/2016-10-31/cl-libhoedown-20161031-git.tgz";
-      sha256 = "1bm8iganj8533m5y46zjvai1fb0dw32hdfx22jjp5k31kyv9d42c";
-      system = "cl-libhoedown";
-      asd = "cl-libhoedown";
-    });
-    systems = [ "cl-libhoedown" ];
-    lispLibs = [ (getAttr "cffi" pkgs) ];
-  };
-  cl-libiio = {
-    pname = "cl-libiio";
-    version = "20191130-git";
-    asds = [ "cl-libiio" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-libiio/2019-11-30/cl-libiio-20191130-git.tgz";
-      sha256 = "1z1jslm303c22imhshr92j1mq7g3j81xa5rk5psj3x00papncwmr";
-      system = "cl-libiio";
-      asd = "cl-libiio";
-    });
-    systems = [ "cl-libiio" ];
-    lispLibs = [ (getAttr "cffi" pkgs) ];
-  };
-  cl-libinput = {
-    pname = "cl-libinput";
-    version = "20220707-git";
-    asds = [ "cl-libinput" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-libinput/2022-07-07/cl-libinput-20220707-git.tgz";
-      sha256 = "18c3rl3d2bizbp3607gnn9j50x84f2mkypj9rqbry56i5gcw8zkh";
-      system = "cl-libinput";
-      asd = "cl-libinput";
-    });
-    systems = [ "cl-libinput" ];
-    lispLibs = [ (getAttr "cffi" pkgs) (getAttr "osicat" pkgs) ];
-  };
-  cl-liblinear = {
-    pname = "cl-liblinear";
-    version = "20211020-git";
-    asds = [ "cl-liblinear" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-libsvm/2021-10-20/cl-libsvm-20211020-git.tgz";
-      sha256 = "0fpcw82hz6bp2hicjhvhxwcj4azprcl911n8q941lk8xcld3pmi0";
-      system = "cl-liblinear";
-      asd = "cl-liblinear";
-    });
-    systems = [ "cl-liblinear" ];
-    lispLibs = [ (getAttr "cffi" pkgs) (getAttr "trivial-garbage" pkgs) ];
-  };
-  cl-libpuzzle = {
-    pname = "cl-libpuzzle";
-    version = "20150608-git";
-    asds = [ "cl-libpuzzle" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-libpuzzle/2015-06-08/cl-libpuzzle-20150608-git.tgz";
-      sha256 = "0qgpdg4lni4sq6jp23qcd1jldsnrsn4h5b14ddmc8mb7va4qshlp";
-      system = "cl-libpuzzle";
-      asd = "cl-libpuzzle";
-    });
-    systems = [ "cl-libpuzzle" ];
-    lispLibs = [ (getAttr "cffi" pkgs) ];
-  };
-  cl-libpuzzle-test = {
-    pname = "cl-libpuzzle-test";
-    version = "20150608-git";
-    asds = [ "cl-libpuzzle-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-libpuzzle/2015-06-08/cl-libpuzzle-20150608-git.tgz";
-      sha256 = "0qgpdg4lni4sq6jp23qcd1jldsnrsn4h5b14ddmc8mb7va4qshlp";
-      system = "cl-libpuzzle-test";
-      asd = "cl-libpuzzle-test";
-    });
-    systems = [ "cl-libpuzzle-test" ];
-    lispLibs = [ (getAttr "cl-libpuzzle" pkgs) (getAttr "cl-test-more" pkgs) ];
-  };
-  cl-libsvm = {
-    pname = "cl-libsvm";
-    version = "20211020-git";
-    asds = [ "cl-libsvm" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-libsvm/2021-10-20/cl-libsvm-20211020-git.tgz";
-      sha256 = "0fpcw82hz6bp2hicjhvhxwcj4azprcl911n8q941lk8xcld3pmi0";
-      system = "cl-libsvm";
-      asd = "cl-libsvm";
-    });
-    systems = [ "cl-libsvm" ];
-    lispLibs = [ (getAttr "cffi" pkgs) (getAttr "trivial-garbage" pkgs) ];
-  };
-  cl-libsvm-format = {
-    pname = "cl-libsvm-format";
-    version = "20180711-git";
-    asds = [ "cl-libsvm-format" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-libsvm-format/2018-07-11/cl-libsvm-format-20180711-git.tgz";
-      sha256 = "0284aj84xszhkhlivaigf9qj855fxad3mzmv3zfr0qzb5k0nzwrg";
-      system = "cl-libsvm-format";
-      asd = "cl-libsvm-format";
-    });
-    systems = [ "cl-libsvm-format" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) ];
-  };
-  cl-libsvm-format-test = {
-    pname = "cl-libsvm-format-test";
-    version = "20180711-git";
-    asds = [ "cl-libsvm-format-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-libsvm-format/2018-07-11/cl-libsvm-format-20180711-git.tgz";
-      sha256 = "0284aj84xszhkhlivaigf9qj855fxad3mzmv3zfr0qzb5k0nzwrg";
-      system = "cl-libsvm-format-test";
-      asd = "cl-libsvm-format-test";
-    });
-    systems = [ "cl-libsvm-format-test" ];
-    lispLibs = [ (getAttr "cl-libsvm-format" pkgs) (getAttr "prove" pkgs) (getAttr "prove-asdf" pkgs) ];
-  };
-  cl-libusb = {
-    pname = "cl-libusb";
-    version = "20210228-git";
-    asds = [ "cl-libusb" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-libusb/2021-02-28/cl-libusb-20210228-git.tgz";
-      sha256 = "0kyzgcflwb85q58fgn82sp0bipnq5bprg5i4h0h3jxafqqyagbnk";
-      system = "cl-libusb";
-      asd = "cl-libusb";
-    });
-    systems = [ "cl-libusb" ];
-    lispLibs = [ (getAttr "libusb-ffi" pkgs) (getAttr "trivial-garbage" pkgs) ];
-  };
-  cl-libuv = {
-    pname = "cl-libuv";
-    version = "20221106-git";
-    asds = [ "cl-libuv" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-libuv/2022-11-06/cl-libuv-20221106-git.tgz";
-      sha256 = "0rdcg0grxmylxf547n1m8qn87zspld7aswz7bvajxjryhfq7hqxh";
-      system = "cl-libuv";
-      asd = "cl-libuv";
-    });
-    systems = [ "cl-libuv" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cffi" pkgs) (getAttr "cffi-grovel" pkgs) ];
-  };
-  cl-libuv-config = {
-    pname = "cl-libuv-config";
-    version = "20221106-git";
-    asds = [ "cl-libuv-config" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-libuv/2022-11-06/cl-libuv-20221106-git.tgz";
-      sha256 = "0rdcg0grxmylxf547n1m8qn87zspld7aswz7bvajxjryhfq7hqxh";
-      system = "cl-libuv-config";
-      asd = "cl-libuv-config";
-    });
-    systems = [ "cl-libuv-config" ];
-    lispLibs = [ (getAttr "cffi-grovel" pkgs) ];
-  };
-  cl-libxml2 = {
-    pname = "cl-libxml2";
-    version = "20130615-git";
-    asds = [ "cl-libxml2" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-libxml2/2013-06-15/cl-libxml2-20130615-git.tgz";
-      sha256 = "09049c13cfp5sc6x9lrw762jd7a9qkfq5jgngqgrzn4kn9qscarw";
-      system = "cl-libxml2";
-      asd = "cl-libxml2";
-    });
-    systems = [ "cl-libxml2" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cffi" pkgs) (getAttr "flexi-streams" pkgs) (getAttr "garbage-pools" pkgs) (getAttr "iterate" pkgs) (getAttr "metabang-bind" pkgs) (getAttr "puri" pkgs) ];
-  };
-  cl-libxml2-test = {
-    pname = "cl-libxml2-test";
-    version = "20130615-git";
-    asds = [ "cl-libxml2-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-libxml2/2013-06-15/cl-libxml2-20130615-git.tgz";
-      sha256 = "09049c13cfp5sc6x9lrw762jd7a9qkfq5jgngqgrzn4kn9qscarw";
-      system = "cl-libxml2-test";
-      asd = "cl-libxml2";
-    });
-    systems = [ "cl-libxml2-test" ];
-    lispLibs = [ (getAttr "cl-libxml2" pkgs) (getAttr "lift" pkgs) ];
-  };
-  cl-libyaml = {
-    pname = "cl-libyaml";
-    version = "20201220-git";
-    asds = [ "cl-libyaml" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-libyaml/2020-12-20/cl-libyaml-20201220-git.tgz";
-      sha256 = "06pvmackyhq03rjmihpx6w63m6cy8wx78ll5xpwwvd85bgrqq817";
-      system = "cl-libyaml";
-      asd = "cl-libyaml";
-    });
-    systems = [ "cl-libyaml" ];
-    lispLibs = [ (getAttr "cffi" pkgs) ];
-  };
-  cl-libyaml-test = {
-    pname = "cl-libyaml-test";
-    version = "20201220-git";
-    asds = [ "cl-libyaml-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-libyaml/2020-12-20/cl-libyaml-20201220-git.tgz";
-      sha256 = "06pvmackyhq03rjmihpx6w63m6cy8wx78ll5xpwwvd85bgrqq817";
-      system = "cl-libyaml-test";
-      asd = "cl-libyaml-test";
-    });
-    systems = [ "cl-libyaml-test" ];
-    lispLibs = [ (getAttr "cl-libyaml" pkgs) (getAttr "fiveam" pkgs) ];
-  };
-  cl-lite = {
-    pname = "cl-lite";
-    version = "master-1a957fb2-git";
-    asds = [ "cl-lite" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/gendl/2022-07-07/gendl-master-1a957fb2-git.tgz";
-      sha256 = "0j47qnvvfx3vnh3pll6rkya5m142hi93bd5jk65rv43vbc94sv30";
-      system = "cl-lite";
-      asd = "cl-lite";
-    });
-    systems = [ "cl-lite" ];
-    lispLibs = [ (getAttr "glisp" pkgs) ];
-  };
-  cl-locale = {
-    pname = "cl-locale";
-    version = "20151031-git";
-    asds = [ "cl-locale" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-locale/2015-10-31/cl-locale-20151031-git.tgz";
-      sha256 = "1rhannhpsw1yg1fpflam483a3w9qb1izgyvmnmiddv3dn4qsmn9p";
-      system = "cl-locale";
-      asd = "cl-locale";
-    });
-    systems = [ "cl-locale" ];
-    lispLibs = [ (getAttr "anaphora" pkgs) (getAttr "arnesi" pkgs) (getAttr "cl-annot" pkgs) (getAttr "cl-syntax" pkgs) (getAttr "cl-syntax-annot" pkgs) ];
-  };
-  cl-locale-syntax = {
-    pname = "cl-locale-syntax";
-    version = "20151031-git";
-    asds = [ "cl-locale-syntax" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-locale/2015-10-31/cl-locale-20151031-git.tgz";
-      sha256 = "1rhannhpsw1yg1fpflam483a3w9qb1izgyvmnmiddv3dn4qsmn9p";
-      system = "cl-locale-syntax";
-      asd = "cl-locale-syntax";
-    });
-    systems = [ "cl-locale-syntax" ];
-    lispLibs = [ (getAttr "cl-locale" pkgs) (getAttr "cl-syntax" pkgs) ];
-  };
-  cl-locale-test = {
-    pname = "cl-locale-test";
-    version = "20151031-git";
-    asds = [ "cl-locale-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-locale/2015-10-31/cl-locale-20151031-git.tgz";
-      sha256 = "1rhannhpsw1yg1fpflam483a3w9qb1izgyvmnmiddv3dn4qsmn9p";
-      system = "cl-locale-test";
-      asd = "cl-locale-test";
-    });
-    systems = [ "cl-locale-test" ];
-    lispLibs = [ (getAttr "cl-locale" pkgs) (getAttr "cl-syntax" pkgs) (getAttr "flexi-streams" pkgs) (getAttr "prove" pkgs) (getAttr "prove-asdf" pkgs) ];
-  };
-  cl-locatives = {
-    pname = "cl-locatives";
-    version = "20190307-hg";
-    asds = [ "cl-locatives" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-locatives/2019-03-07/cl-locatives-20190307-hg.tgz";
-      sha256 = "0f1fqqdpxbyl1cshmz26g3bgnyi7g6nixfrqjab5sxwihk844yd6";
-      system = "cl-locatives";
-      asd = "cl-locatives";
-    });
-    systems = [ "cl-locatives" ];
-    lispLibs = [  ];
-  };
-  cl-log = {
-    pname = "cl-log";
-    version = ".1.0.1";
-    asds = [ "cl-log" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-log/2013-01-28/cl-log.1.0.1.tgz";
-      sha256 = "0lfy3sxr2shhv8qpyry9kk9gcwwl6bhfgzv0pczibl70mgraqnys";
-      system = "cl-log";
-      asd = "cl-log";
-    });
-    systems = [ "cl-log" ];
-    lispLibs = [  ];
-  };
-  cl-log-test = {
-    pname = "cl-log-test";
-    version = ".1.0.1";
-    asds = [ "cl-log-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-log/2013-01-28/cl-log.1.0.1.tgz";
-      sha256 = "0lfy3sxr2shhv8qpyry9kk9gcwwl6bhfgzv0pczibl70mgraqnys";
-      system = "cl-log-test";
-      asd = "cl-log-test";
-    });
-    systems = [ "cl-log-test" ];
-    lispLibs = [ (getAttr "cl-log" pkgs) (getAttr "eos" pkgs) ];
-  };
-  cl-logic = {
-    pname = "cl-logic";
-    version = "20141217-git";
-    asds = [ "cl-logic" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-logic/2014-12-17/cl-logic-20141217-git.tgz";
-      sha256 = "17n2wzqali3j6b7pqbydipwlxgwdrj4mdnsgwjdyz32n8jvfyjwh";
-      system = "cl-logic";
-      asd = "cl-logic";
-    });
-    systems = [ "cl-logic" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "quine-mccluskey" pkgs) ];
-  };
-  cl-ltsv = {
-    pname = "cl-ltsv";
-    version = "20140713-git";
-    asds = [ "cl-ltsv" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-ltsv/2014-07-13/cl-ltsv-20140713-git.tgz";
-      sha256 = "1bjvnwxyaaw3yrq5hws2fr4qmk5938hdh2np2bqpm4m3b2c94n22";
-      system = "cl-ltsv";
-      asd = "cl-ltsv";
-    });
-    systems = [ "cl-ltsv" ];
-    lispLibs = [  ];
-  };
-  cl-ltsv-test = {
-    pname = "cl-ltsv-test";
-    version = "20140713-git";
-    asds = [ "cl-ltsv-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-ltsv/2014-07-13/cl-ltsv-20140713-git.tgz";
-      sha256 = "1bjvnwxyaaw3yrq5hws2fr4qmk5938hdh2np2bqpm4m3b2c94n22";
-      system = "cl-ltsv-test";
-      asd = "cl-ltsv-test";
-    });
-    systems = [ "cl-ltsv-test" ];
-    lispLibs = [ (getAttr "cl-ltsv" pkgs) (getAttr "cl-test-more" pkgs) ];
-  };
-  cl-lzma = {
-    pname = "cl-lzma";
-    version = "20191130-git";
-    asds = [ "cl-lzma" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-lzma/2019-11-30/cl-lzma-20191130-git.tgz";
-      sha256 = "17fdinmi2ffdga17slv86van0sp9gkvlmjprfdwak2jzziz6fxx6";
-      system = "cl-lzma";
-      asd = "cl-lzma";
-    });
-    systems = [ "cl-lzma" ];
-    lispLibs = [ (getAttr "cffi" pkgs) (getAttr "cl-autowrap" pkgs) (getAttr "fast-io" pkgs) (getAttr "static-vectors" pkgs) ];
-  };
-  cl-m4 = {
-    pname = "cl-m4";
-    version = "20130312-git";
-    asds = [ "cl-m4" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-m4/2013-03-12/cl-m4-20130312-git.tgz";
-      sha256 = "1dqdhxb45j4vqmx38xkq32gsckldca8rxpf2idg4b61wd21c0ci6";
-      system = "cl-m4";
-      asd = "cl-m4";
-    });
-    systems = [ "cl-m4" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cffi" pkgs) (getAttr "cffi-grovel" pkgs) (getAttr "cl-fad" pkgs) (getAttr "cl-ppcre" pkgs) (getAttr "external-program" pkgs) (getAttr "graylex" pkgs) ];
-  };
-  cl-m4-test = {
-    pname = "cl-m4-test";
-    version = "20130312-git";
-    asds = [ "cl-m4-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-m4/2013-03-12/cl-m4-20130312-git.tgz";
-      sha256 = "1dqdhxb45j4vqmx38xkq32gsckldca8rxpf2idg4b61wd21c0ci6";
-      system = "cl-m4-test";
-      asd = "cl-m4-test";
-    });
-    systems = [ "cl-m4-test" ];
-    lispLibs = [ (getAttr "cl-heredoc" pkgs) (getAttr "cl-m4" pkgs) (getAttr "hu_dot_dwim_dot_stefil" pkgs) ];
-  };
-  cl-mango = {
-    pname = "cl-mango";
-    version = "20200925-git";
-    asds = [ "cl-mango" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-mango/2020-09-25/cl-mango-20200925-git.tgz";
-      sha256 = "0ipa1azakzqigq103m1j2z597bp2i34kx4z1418kp2jn8zwbdz5s";
-      system = "cl-mango";
-      asd = "cl-mango";
-    });
-    systems = [ "cl-mango" ];
-    lispLibs = [ (getAttr "drakma" pkgs) (getAttr "json-mop" pkgs) (getAttr "yason" pkgs) ];
-  };
-  cl-markdown = {
-    pname = "cl-markdown";
-    version = "20191227-git";
-    asds = [ "cl-markdown" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-markdown/2019-12-27/cl-markdown-20191227-git.tgz";
-      sha256 = "1wksi765nk8kf5qm2chh7dcn6k562kvc108dzdb9y5iwp97lqqvg";
-      system = "cl-markdown";
-      asd = "cl-markdown";
-    });
-    systems = [ "cl-markdown" ];
-    lispLibs = [ (getAttr "anaphora" pkgs) (getAttr "cl-containers" pkgs) (getAttr "cl-ppcre" pkgs) (getAttr "dynamic-classes" pkgs) (getAttr "metabang-bind" pkgs) (getAttr "metatilities-base" pkgs) ];
-  };
-  cl-markdown-comparisons = {
-    pname = "cl-markdown-comparisons";
-    version = "20191227-git";
-    asds = [ "cl-markdown-comparisons" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-markdown/2019-12-27/cl-markdown-20191227-git.tgz";
-      sha256 = "1wksi765nk8kf5qm2chh7dcn6k562kvc108dzdb9y5iwp97lqqvg";
-      system = "cl-markdown-comparisons";
-      asd = "cl-markdown-comparisons";
-    });
-    systems = [ "cl-markdown-comparisons" ];
-    lispLibs = [ (getAttr "cl-html-diff" pkgs) (getAttr "cl-markdown" pkgs) (getAttr "html-encode" pkgs) (getAttr "lift" pkgs) (getAttr "lml2" pkgs) (getAttr "trivial-shell" pkgs) ];
-  };
-  cl-markdown-test = {
-    pname = "cl-markdown-test";
-    version = "20191227-git";
-    asds = [ "cl-markdown-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-markdown/2019-12-27/cl-markdown-20191227-git.tgz";
-      sha256 = "1wksi765nk8kf5qm2chh7dcn6k562kvc108dzdb9y5iwp97lqqvg";
-      system = "cl-markdown-test";
-      asd = "cl-markdown-test";
-    });
-    systems = [ "cl-markdown-test" ];
-    lispLibs = [ (getAttr "cl-markdown" pkgs) (getAttr "lift" pkgs) (getAttr "trivial-shell" pkgs) ];
-  };
-  cl-markless = {
-    pname = "cl-markless";
-    version = "20220707-git";
-    asds = [ "cl-markless" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-markless/2022-07-07/cl-markless-20220707-git.tgz";
-      sha256 = "0v1h1sgn180ffhbnld7kwh6s33mls6p0iby4pdh32pj1py7ayw0l";
-      system = "cl-markless";
-      asd = "cl-markless";
-    });
-    systems = [ "cl-markless" ];
-    lispLibs = [ (getAttr "documentation-utils" pkgs) (getAttr "trivial-indent" pkgs) ];
-  };
-  cl-markless-epub = {
-    pname = "cl-markless-epub";
-    version = "20220707-git";
-    asds = [ "cl-markless-epub" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-markless/2022-07-07/cl-markless-20220707-git.tgz";
-      sha256 = "0v1h1sgn180ffhbnld7kwh6s33mls6p0iby4pdh32pj1py7ayw0l";
-      system = "cl-markless-epub";
-      asd = "cl-markless-epub";
-    });
-    systems = [ "cl-markless-epub" ];
-    lispLibs = [ (getAttr "babel" pkgs) (getAttr "cl-markless-plump" pkgs) (getAttr "trivial-gray-streams" pkgs) (getAttr "trivial-indent" pkgs) (getAttr "trivial-mimes" pkgs) (getAttr "uiop" pkgs) (getAttr "zip" pkgs) ];
-  };
-  cl-markless-markdown = {
-    pname = "cl-markless-markdown";
-    version = "20220707-git";
-    asds = [ "cl-markless-markdown" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-markless/2022-07-07/cl-markless-20220707-git.tgz";
-      sha256 = "0v1h1sgn180ffhbnld7kwh6s33mls6p0iby4pdh32pj1py7ayw0l";
-      system = "cl-markless-markdown";
-      asd = "cl-markless-markdown";
-    });
-    systems = [ "cl-markless-markdown" ];
-    lispLibs = [ (getAttr "_3bmd" pkgs) (getAttr "_3bmd-ext-code-blocks" pkgs) (getAttr "cl-markless" pkgs) ];
-  };
-  cl-markless-plump = {
-    pname = "cl-markless-plump";
-    version = "20220707-git";
-    asds = [ "cl-markless-plump" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-markless/2022-07-07/cl-markless-20220707-git.tgz";
-      sha256 = "0v1h1sgn180ffhbnld7kwh6s33mls6p0iby4pdh32pj1py7ayw0l";
-      system = "cl-markless-plump";
-      asd = "cl-markless-plump";
-    });
-    systems = [ "cl-markless-plump" ];
-    lispLibs = [ (getAttr "cl-markless" pkgs) (getAttr "plump-dom" pkgs) ];
-  };
-  cl-markless-standalone = {
-    pname = "cl-markless-standalone";
-    version = "20220707-git";
-    asds = [ "cl-markless-standalone" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-markless/2022-07-07/cl-markless-20220707-git.tgz";
-      sha256 = "0v1h1sgn180ffhbnld7kwh6s33mls6p0iby4pdh32pj1py7ayw0l";
-      system = "cl-markless-standalone";
-      asd = "cl-markless-standalone";
-    });
-    systems = [ "cl-markless-standalone" ];
-    lispLibs = [ (getAttr "cl-markless" pkgs) (getAttr "cl-markless-epub" pkgs) (getAttr "cl-markless-markdown" pkgs) (getAttr "cl-markless-plump" pkgs) (getAttr "command-line-arguments" pkgs) ];
-  };
-  cl-markless-test = {
-    pname = "cl-markless-test";
-    version = "20220707-git";
-    asds = [ "cl-markless-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-markless/2022-07-07/cl-markless-20220707-git.tgz";
-      sha256 = "0v1h1sgn180ffhbnld7kwh6s33mls6p0iby4pdh32pj1py7ayw0l";
-      system = "cl-markless-test";
-      asd = "cl-markless-test";
-    });
-    systems = [ "cl-markless-test" ];
-    lispLibs = [ (getAttr "cl-markless" pkgs) (getAttr "parachute" pkgs) ];
-  };
-  cl-marklogic = {
-    pname = "cl-marklogic";
-    version = "20210124-git";
-    asds = [ "cl-marklogic" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-marklogic/2021-01-24/cl-marklogic-20210124-git.tgz";
-      sha256 = "0baq2ccb88zyr2dqdvpm32lsin4zalv11w48x4xm80cr4kw45fk5";
-      system = "cl-marklogic";
-      asd = "cl-marklogic";
-    });
-    systems = [ "cl-marklogic" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "drakma" pkgs) (getAttr "fiveam" pkgs) (getAttr "local-time" pkgs) ];
-  };
-  cl-markup = {
-    pname = "cl-markup";
-    version = "20131003-git";
-    asds = [ "cl-markup" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-markup/2013-10-03/cl-markup-20131003-git.tgz";
-      sha256 = "10l6k45971dl13fkdmva7zc6i453lmq9j4xax2ci6pjzlc6xjhp7";
-      system = "cl-markup";
-      asd = "cl-markup";
-    });
-    systems = [ "cl-markup" ];
-    lispLibs = [  ];
-  };
-  cl-markup-test = {
-    pname = "cl-markup-test";
-    version = "20131003-git";
-    asds = [ "cl-markup-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-markup/2013-10-03/cl-markup-20131003-git.tgz";
-      sha256 = "10l6k45971dl13fkdmva7zc6i453lmq9j4xax2ci6pjzlc6xjhp7";
-      system = "cl-markup-test";
-      asd = "cl-markup-test";
-    });
-    systems = [ "cl-markup-test" ];
-    lispLibs = [ (getAttr "cl-markup" pkgs) (getAttr "cl-test-more" pkgs) ];
-  };
-  cl-match = {
-    pname = "cl-match";
-    version = "20121125-git";
-    asds = [ "cl-match" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-match/2012-11-25/cl-match-20121125-git.tgz";
-      sha256 = "1qc8gzp7f4phgyi5whkxacrqzdqs0y1hvkf71m8n7l303jly9wjf";
-      system = "cl-match";
-      asd = "cl-match";
-    });
-    systems = [ "cl-match" ];
-    lispLibs = [ (getAttr "standard-cl" pkgs) ];
-  };
-  cl-match-test = {
-    pname = "cl-match-test";
-    version = "20121125-git";
-    asds = [ "cl-match-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-match/2012-11-25/cl-match-20121125-git.tgz";
-      sha256 = "1qc8gzp7f4phgyi5whkxacrqzdqs0y1hvkf71m8n7l303jly9wjf";
-      system = "cl-match-test";
-      asd = "cl-match-test";
-    });
-    systems = [ "cl-match-test" ];
-    lispLibs = [ (getAttr "cl-match" pkgs) (getAttr "pcl-unit-test" pkgs) ];
-  };
-  cl-mathstats = {
-    pname = "cl-mathstats";
-    version = "20220220-git";
-    asds = [ "cl-mathstats" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-mathstats/2022-02-20/cl-mathstats-20220220-git.tgz";
-      sha256 = "0gsjvmkmnxc4hp5z9mkm5vsllywqyg7kx8jgz88vnx47yj3va1s8";
-      system = "cl-mathstats";
-      asd = "cl-mathstats";
-    });
-    systems = [ "cl-mathstats" ];
-    lispLibs = [ (getAttr "cl-containers" pkgs) (getAttr "metatilities-base" pkgs) ];
-  };
-  cl-mathstats-test = {
-    pname = "cl-mathstats-test";
-    version = "20220220-git";
-    asds = [ "cl-mathstats-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-mathstats/2022-02-20/cl-mathstats-20220220-git.tgz";
-      sha256 = "0gsjvmkmnxc4hp5z9mkm5vsllywqyg7kx8jgz88vnx47yj3va1s8";
-      system = "cl-mathstats-test";
-      asd = "cl-mathstats-test";
-    });
-    systems = [ "cl-mathstats-test" ];
-    lispLibs = [ (getAttr "cl-mathstats" pkgs) (getAttr "lift" pkgs) ];
-  };
-  cl-maxminddb = {
-    pname = "cl-maxminddb";
-    version = "20210630-git";
-    asds = [ "cl-maxminddb" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-maxminddb/2021-06-30/cl-maxminddb-20210630-git.tgz";
-      sha256 = "1mm7cpiygcka39pj4a0rvhayfl4wh0zfjkda60yshq24xmml84pw";
-      system = "cl-maxminddb";
-      asd = "cl-maxminddb";
-    });
-    systems = [ "cl-maxminddb" ];
-    lispLibs = [ (getAttr "babel" pkgs) (getAttr "cffi" pkgs) (getAttr "cffi-libffi" pkgs) (getAttr "ieee-floats" pkgs) (getAttr "iterate" pkgs) (getAttr "metabang-bind" pkgs) (getAttr "mmap" pkgs) ];
-  };
-  cl-maxsat = {
-    pname = "cl-maxsat";
-    version = "20200218-git";
-    asds = [ "cl-maxsat" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-maxsat/2020-02-18/cl-maxsat-20200218-git.tgz";
-      sha256 = "0qy4hhi8y3wv88x3s88g2hl2cz25cjp26xapd3z4h7lrx7cy786i";
-      system = "cl-maxsat";
-      asd = "cl-maxsat";
-    });
-    systems = [ "cl-maxsat" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cl-sat" pkgs) (getAttr "iterate" pkgs) (getAttr "trivia" pkgs) ];
-  };
-  cl-maxsat_dot_test = {
-    pname = "cl-maxsat.test";
-    version = "20200218-git";
-    asds = [ "cl-maxsat.test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-maxsat/2020-02-18/cl-maxsat-20200218-git.tgz";
-      sha256 = "0qy4hhi8y3wv88x3s88g2hl2cz25cjp26xapd3z4h7lrx7cy786i";
-      system = "cl-maxsat.test";
-      asd = "cl-maxsat.test";
-    });
-    systems = [ "cl-maxsat.test" ];
-    lispLibs = [ (getAttr "cl-maxsat" pkgs) (getAttr "fiveam" pkgs) ];
-  };
-  cl-mdb = {
-    pname = "cl-mdb";
-    version = "20220707-git";
-    asds = [ "cl-mdb" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-mdb/2022-07-07/cl-mdb-20220707-git.tgz";
-      sha256 = "1xkhk39485yv3j9bshnnv74c95asf9704g80wb8vwvwsvqi7ym2a";
-      system = "cl-mdb";
-      asd = "cl-mdb";
-    });
-    systems = [ "cl-mdb" ];
-    lispLibs = [ (getAttr "cffi" pkgs) ];
-  };
-  cl-mecab = {
-    pname = "cl-mecab";
-    version = "20181018-git";
-    asds = [ "cl-mecab" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-mecab/2018-10-18/cl-mecab-20181018-git.tgz";
-      sha256 = "0lfan9p8dsniyp60g6n8awfjvv8lyickc40qdxiry6kmp65636ps";
-      system = "cl-mecab";
-      asd = "cl-mecab";
-    });
-    systems = [ "cl-mecab" ];
-    lispLibs = [ (getAttr "cffi" pkgs) (getAttr "split-sequence" pkgs) ];
-  };
-  cl-mecab-test = {
-    pname = "cl-mecab-test";
-    version = "20181018-git";
-    asds = [ "cl-mecab-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-mecab/2018-10-18/cl-mecab-20181018-git.tgz";
-      sha256 = "0lfan9p8dsniyp60g6n8awfjvv8lyickc40qdxiry6kmp65636ps";
-      system = "cl-mecab-test";
-      asd = "cl-mecab-test";
-    });
-    systems = [ "cl-mecab-test" ];
-    lispLibs = [ (getAttr "cl-mecab" pkgs) (getAttr "prove" pkgs) (getAttr "prove-asdf" pkgs) ];
-  };
-  cl-mechanize = {
-    pname = "cl-mechanize";
-    version = "20180711-git";
-    asds = [ "cl-mechanize" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-mechanize/2018-07-11/cl-mechanize-20180711-git.tgz";
-      sha256 = "0y86sdi2nl3jv6n535cd62jax0mpc0cckrhffaqacbgbdjc875sn";
-      system = "cl-mechanize";
-      asd = "cl-mechanize";
-    });
-    systems = [ "cl-mechanize" ];
-    lispLibs = [ (getAttr "cl-ppcre" pkgs) (getAttr "closure-html" pkgs) (getAttr "cxml-stp" pkgs) (getAttr "drakma" pkgs) (getAttr "puri" pkgs) ];
-  };
-  cl-mediawiki = {
-    pname = "cl-mediawiki";
-    version = "20161204-git";
-    asds = [ "cl-mediawiki" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-mediawiki/2016-12-04/cl-mediawiki-20161204-git.tgz";
-      sha256 = "1wrysj9l64k3xx152yw1arvn1glnx60j730qvj8prm65iid95xgm";
-      system = "cl-mediawiki";
-      asd = "cl-mediawiki";
-    });
-    systems = [ "cl-mediawiki" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cxml" pkgs) (getAttr "drakma" pkgs) ];
-  };
-  cl-mediawiki-test = {
-    pname = "cl-mediawiki-test";
-    version = "20161204-git";
-    asds = [ "cl-mediawiki-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-mediawiki/2016-12-04/cl-mediawiki-20161204-git.tgz";
-      sha256 = "1wrysj9l64k3xx152yw1arvn1glnx60j730qvj8prm65iid95xgm";
-      system = "cl-mediawiki-test";
-      asd = "cl-mediawiki-test";
-    });
-    systems = [ "cl-mediawiki-test" ];
-    lispLibs = [ (getAttr "cl-mediawiki" pkgs) (getAttr "lisp-unit2" pkgs) ];
-  };
-  cl-megolm = {
-    pname = "cl-megolm";
-    version = "20211020-git";
-    asds = [ "cl-megolm" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-megolm/2021-10-20/cl-megolm-20211020-git.tgz";
-      sha256 = "1wxri9md61xl6bf9p9pm4hjsyd0mz6nf2lzwzbwsqy808s2w0xw6";
-      system = "cl-megolm";
-      asd = "cl-megolm";
-    });
-    systems = [ "cl-megolm" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cffi" pkgs) (getAttr "str" pkgs) (getAttr "claw-olm" pkgs) (getAttr "ironclad" pkgs) (getAttr "jonathan" pkgs) (getAttr "lisp-unit" pkgs) (getAttr "s-base64" pkgs) ];
-  };
-  cl-megolm_slash_tests = {
-    pname = "cl-megolm_tests";
-    version = "20211020-git";
-    asds = [ "cl-megolm" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-megolm/2021-10-20/cl-megolm-20211020-git.tgz";
-      sha256 = "1wxri9md61xl6bf9p9pm4hjsyd0mz6nf2lzwzbwsqy808s2w0xw6";
-      system = "cl-megolm";
-      asd = "cl-megolm";
-    });
-    systems = [ "cl-megolm/tests" ];
-    lispLibs = [ (getAttr "cl-megolm" pkgs) (getAttr "lisp-unit" pkgs) (getAttr "s-base64" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  cl-memcached = {
-    pname = "cl-memcached";
-    version = "20150608-git";
-    asds = [ "cl-memcached" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-memcached/2015-06-08/cl-memcached-20150608-git.tgz";
-      sha256 = "0g66m0yiazzh0447qbmgxjn4kxjcx9bk2l8cimyzmriz5d0j2q3i";
-      system = "cl-memcached";
-      asd = "cl-memcached";
-    });
-    systems = [ "cl-memcached" ];
-    lispLibs = [ (getAttr "babel" pkgs) (getAttr "pooler" pkgs) (getAttr "split-sequence" pkgs) (getAttr "usocket" pkgs) ];
-  };
-  cl-messagepack = {
-    pname = "cl-messagepack";
-    version = "20201016-git";
-    asds = [ "cl-messagepack" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-messagepack/2020-10-16/cl-messagepack-20201016-git.tgz";
-      sha256 = "0lhw8wz45q9jgh7fn5ihj7ccl3wm2c2x3vb4cijgg6vhbrwlw2qh";
-      system = "cl-messagepack";
-      asd = "cl-messagepack";
-    });
-    systems = [ "cl-messagepack" ];
-    lispLibs = [ (getAttr "babel" pkgs) (getAttr "closer-mop" pkgs) (getAttr "flexi-streams" pkgs) ];
-  };
-  cl-messagepack-rpc = {
-    pname = "cl-messagepack-rpc";
-    version = "20171227-git";
-    asds = [ "cl-messagepack-rpc" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-messagepack-rpc/2017-12-27/cl-messagepack-rpc-20171227-git.tgz";
-      sha256 = "02nrnhav28v5vwig9mmmmax59nl0sbjkmdzwakzpj6y1gafiqgy9";
-      system = "cl-messagepack-rpc";
-      asd = "cl-messagepack-rpc";
-    });
-    systems = [ "cl-messagepack-rpc" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cffi" pkgs) (getAttr "cl-async" pkgs) (getAttr "cl-libuv" pkgs) (getAttr "cl-messagepack" pkgs) (getAttr "flexi-streams" pkgs) (getAttr "trivial-backtrace" pkgs) ];
-  };
-  cl-messagepack-rpc-tests = {
-    pname = "cl-messagepack-rpc-tests";
-    version = "20171227-git";
-    asds = [ "cl-messagepack-rpc-tests" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-messagepack-rpc/2017-12-27/cl-messagepack-rpc-20171227-git.tgz";
-      sha256 = "02nrnhav28v5vwig9mmmmax59nl0sbjkmdzwakzpj6y1gafiqgy9";
-      system = "cl-messagepack-rpc-tests";
-      asd = "cl-messagepack-rpc-tests";
-    });
-    systems = [ "cl-messagepack-rpc-tests" ];
-    lispLibs = [ (getAttr "cl-messagepack-rpc" pkgs) (getAttr "fiveam" pkgs) ];
-  };
-  cl-messagepack-tests = {
-    pname = "cl-messagepack-tests";
-    version = "20201016-git";
-    asds = [ "cl-messagepack-tests" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-messagepack/2020-10-16/cl-messagepack-20201016-git.tgz";
-      sha256 = "0lhw8wz45q9jgh7fn5ihj7ccl3wm2c2x3vb4cijgg6vhbrwlw2qh";
-      system = "cl-messagepack-tests";
-      asd = "cl-messagepack-tests";
-    });
-    systems = [ "cl-messagepack-tests" ];
-    lispLibs = [ (getAttr "cl-json" pkgs) (getAttr "cl-messagepack" pkgs) (getAttr "fiveam" pkgs) ];
-  };
-  cl-migrations = {
-    pname = "cl-migrations";
-    version = "20110110-http";
-    asds = [ "cl-migrations" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-migrations/2011-01-10/cl-migrations-20110110-http.tgz";
-      sha256 = "0mq3ir1kffw921q5a878964ghnrhcrh79p6yxsrb25bzkwpnfx02";
-      system = "cl-migrations";
-      asd = "cl-migrations";
-    });
-    systems = [ "cl-migrations" ];
-    lispLibs = [ (getAttr "clsql" pkgs) ];
-  };
-  cl-migratum = {
-    pname = "cl-migratum";
-    version = "20221106-git";
-    asds = [ "cl-migratum" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-migratum/2022-11-06/cl-migratum-20221106-git.tgz";
-      sha256 = "1f4lhj168garrncmif4i2zdvg3458ylihw6khayz1m1gyzb8v7fx";
-      system = "cl-migratum";
-      asd = "cl-migratum";
-    });
-    systems = [ "cl-migratum" ];
-    lispLibs = [ (getAttr "cl-ascii-table" pkgs) (getAttr "cl-reexport" pkgs) (getAttr "local-time" pkgs) (getAttr "log4cl" pkgs) ];
-  };
-  cl-migratum_dot_cli = {
-    pname = "cl-migratum.cli";
-    version = "20221106-git";
-    asds = [ "cl-migratum.cli" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-migratum/2022-11-06/cl-migratum-20221106-git.tgz";
-      sha256 = "1f4lhj168garrncmif4i2zdvg3458ylihw6khayz1m1gyzb8v7fx";
-      system = "cl-migratum.cli";
-      asd = "cl-migratum.cli";
-    });
-    systems = [ "cl-migratum.cli" ];
-    lispLibs = [ (getAttr "cl-migratum" pkgs) (getAttr "cl-migratum_dot_driver_dot_dbi" pkgs) (getAttr "cl-migratum_dot_driver_dot_rdbms-postgresql" pkgs) (getAttr "cl-migratum_dot_provider_dot_local-path" pkgs) (getAttr "clingon" pkgs) ];
-  };
-  cl-migratum_dot_driver_dot_dbi = {
-    pname = "cl-migratum.driver.dbi";
-    version = "20221106-git";
-    asds = [ "cl-migratum.driver.dbi" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-migratum/2022-11-06/cl-migratum-20221106-git.tgz";
-      sha256 = "1f4lhj168garrncmif4i2zdvg3458ylihw6khayz1m1gyzb8v7fx";
-      system = "cl-migratum.driver.dbi";
-      asd = "cl-migratum.driver.dbi";
-    });
-    systems = [ "cl-migratum.driver.dbi" ];
-    lispLibs = [ (getAttr "cl-dbi" pkgs) (getAttr "cl-migratum" pkgs) (getAttr "cl-migratum_dot_driver_dot_mixins" pkgs) (getAttr "cl-ppcre" pkgs) (getAttr "log4cl" pkgs) ];
-  };
-  cl-migratum_dot_driver_dot_mixins = {
-    pname = "cl-migratum.driver.mixins";
-    version = "20221106-git";
-    asds = [ "cl-migratum.driver.mixins" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-migratum/2022-11-06/cl-migratum-20221106-git.tgz";
-      sha256 = "1f4lhj168garrncmif4i2zdvg3458ylihw6khayz1m1gyzb8v7fx";
-      system = "cl-migratum.driver.mixins";
-      asd = "cl-migratum.driver.mixins";
-    });
-    systems = [ "cl-migratum.driver.mixins" ];
-    lispLibs = [ (getAttr "cl-migratum" pkgs) ];
-  };
-  cl-migratum_dot_driver_dot_rdbms-postgresql = {
-    pname = "cl-migratum.driver.rdbms-postgresql";
-    version = "20221106-git";
-    asds = [ "cl-migratum.driver.rdbms-postgresql" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-migratum/2022-11-06/cl-migratum-20221106-git.tgz";
-      sha256 = "1f4lhj168garrncmif4i2zdvg3458ylihw6khayz1m1gyzb8v7fx";
-      system = "cl-migratum.driver.rdbms-postgresql";
-      asd = "cl-migratum.driver.rdbms-postgresql";
-    });
-    systems = [ "cl-migratum.driver.rdbms-postgresql" ];
-    lispLibs = [ (getAttr "cl-migratum" pkgs) (getAttr "cl-migratum_dot_driver_dot_mixins" pkgs) (getAttr "cl-ppcre" pkgs) (getAttr "hu_dot_dwim_dot_logger" pkgs) (getAttr "hu_dot_dwim_dot_rdbms_dot_postgresql" pkgs) (getAttr "log4cl" pkgs) ];
-  };
-  cl-migratum_dot_provider_dot_local-path = {
-    pname = "cl-migratum.provider.local-path";
-    version = "20221106-git";
-    asds = [ "cl-migratum.provider.local-path" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-migratum/2022-11-06/cl-migratum-20221106-git.tgz";
-      sha256 = "1f4lhj168garrncmif4i2zdvg3458ylihw6khayz1m1gyzb8v7fx";
-      system = "cl-migratum.provider.local-path";
-      asd = "cl-migratum.provider.local-path";
-    });
-    systems = [ "cl-migratum.provider.local-path" ];
-    lispLibs = [ (getAttr "cl-migratum" pkgs) (getAttr "cl-ppcre" pkgs) (getAttr "log4cl" pkgs) ];
-  };
-  cl-migratum_dot_test = {
-    pname = "cl-migratum.test";
-    version = "20221106-git";
-    asds = [ "cl-migratum.test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-migratum/2022-11-06/cl-migratum-20221106-git.tgz";
-      sha256 = "1f4lhj168garrncmif4i2zdvg3458ylihw6khayz1m1gyzb8v7fx";
-      system = "cl-migratum.test";
-      asd = "cl-migratum.test";
-    });
-    systems = [ "cl-migratum.test" ];
-    lispLibs = [ (getAttr "dbd-sqlite3" pkgs) (getAttr "cl-migratum" pkgs) (getAttr "cl-migratum_dot_driver_dot_dbi" pkgs) (getAttr "cl-migratum_dot_driver_dot_rdbms-postgresql" pkgs) (getAttr "cl-migratum_dot_provider_dot_local-path" pkgs) (getAttr "rove" pkgs) (getAttr "tmpdir" pkgs) ];
-  };
-  cl-mime = {
-    pname = "cl-mime";
-    version = "20201220-git";
-    asds = [ "cl-mime" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-mime/2020-12-20/cl-mime-20201220-git.tgz";
-      sha256 = "0i2vyc1d4qp36f3c3qfpx9rkp3d2ka80r40wc9lsvhqn1hjxa2gv";
-      system = "cl-mime";
-      asd = "cl-mime";
-    });
-    systems = [ "cl-mime" ];
-    lispLibs = [ (getAttr "cl-base64" pkgs) (getAttr "cl-ppcre" pkgs) (getAttr "cl-qprint" pkgs) ];
-  };
-  cl-mime-from-string = {
-    pname = "cl-mime-from-string";
-    version = "20200427-git";
-    asds = [ "cl-mime-from-string" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-mime-from-string/2020-04-27/cl-mime-from-string-20200427-git.tgz";
-      sha256 = "1pzhfbv6j3b0vvf4rxxd56v54lh6v7cs16nq2d64cawn6qzmk4bp";
-      system = "cl-mime-from-string";
-      asd = "cl-mime-from-string";
-    });
-    systems = [ "cl-mime-from-string" ];
-    lispLibs = [  ];
-  };
-  cl-mime-test = {
-    pname = "cl-mime-test";
-    version = "20201220-git";
-    asds = [ "cl-mime-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-mime/2020-12-20/cl-mime-20201220-git.tgz";
-      sha256 = "0i2vyc1d4qp36f3c3qfpx9rkp3d2ka80r40wc9lsvhqn1hjxa2gv";
-      system = "cl-mime-test";
-      asd = "cl-mime-test";
-    });
-    systems = [ "cl-mime-test" ];
-    lispLibs = [ (getAttr "cl-mime" pkgs) (getAttr "rove" pkgs) ];
-  };
-  cl-mimeparse = {
-    pname = "cl-mimeparse";
-    version = "20210531-git";
-    asds = [ "cl-mimeparse" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-mimeparse/2021-05-31/cl-mimeparse-20210531-git.tgz";
-      sha256 = "0gdkpi3620va0a3q56svcn1q9f5w0pqfhx30lnldg8fjnrdfiwkk";
-      system = "cl-mimeparse";
-      asd = "cl-mimeparse";
-    });
-    systems = [ "cl-mimeparse" ];
-    lispLibs = [ (getAttr "cl-ppcre" pkgs) (getAttr "parse-number" pkgs) ];
-  };
-  cl-mimeparse-tests = {
-    pname = "cl-mimeparse-tests";
-    version = "20210531-git";
-    asds = [ "cl-mimeparse-tests" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-mimeparse/2021-05-31/cl-mimeparse-20210531-git.tgz";
-      sha256 = "0gdkpi3620va0a3q56svcn1q9f5w0pqfhx30lnldg8fjnrdfiwkk";
-      system = "cl-mimeparse-tests";
-      asd = "cl-mimeparse-tests";
-    });
-    systems = [ "cl-mimeparse-tests" ];
-    lispLibs = [ (getAttr "cl-mimeparse" pkgs) (getAttr "rt" pkgs) ];
-  };
-  cl-minify-css = {
-    pname = "cl-minify-css";
-    version = "20200925-git";
-    asds = [ "cl-minify-css" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-minify-css/2020-09-25/cl-minify-css-20200925-git.tgz";
-      sha256 = "1wj1mh7qzr8ybqyx7kxnpsmj3d9lylnzmq1qmycdyf2llqkcdxgd";
-      system = "cl-minify-css";
-      asd = "cl-minify-css";
-    });
-    systems = [ "cl-minify-css" ];
-    lispLibs = [  ];
-  };
-  cl-minify-css-test = {
-    pname = "cl-minify-css-test";
-    version = "20200925-git";
-    asds = [ "cl-minify-css-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-minify-css/2020-09-25/cl-minify-css-20200925-git.tgz";
-      sha256 = "1wj1mh7qzr8ybqyx7kxnpsmj3d9lylnzmq1qmycdyf2llqkcdxgd";
-      system = "cl-minify-css-test";
-      asd = "cl-minify-css-test";
-    });
-    systems = [ "cl-minify-css-test" ];
-    lispLibs = [ (getAttr "assert-p" pkgs) (getAttr "cacau" pkgs) (getAttr "cacau-asdf" pkgs) (getAttr "cl-minify-css" pkgs) ];
-  };
-  cl-mixed = {
-    pname = "cl-mixed";
-    version = "20221106-git";
-    asds = [ "cl-mixed" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-mixed/2022-11-06/cl-mixed-20221106-git.tgz";
-      sha256 = "0xl3iss8mhxsyjsr6mbbf5x75cg893f2im1hywcj1mq8adsyxcf7";
-      system = "cl-mixed";
-      asd = "cl-mixed";
-    });
-    systems = [ "cl-mixed" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cffi" pkgs) (getAttr "documentation-utils" pkgs) (getAttr "static-vectors" pkgs) (getAttr "trivial-features" pkgs) ];
-  };
-  cl-mixed-alsa = {
-    pname = "cl-mixed-alsa";
-    version = "20221106-git";
-    asds = [ "cl-mixed-alsa" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-mixed/2022-11-06/cl-mixed-20221106-git.tgz";
-      sha256 = "0xl3iss8mhxsyjsr6mbbf5x75cg893f2im1hywcj1mq8adsyxcf7";
-      system = "cl-mixed-alsa";
-      asd = "cl-mixed-alsa";
-    });
-    systems = [ "cl-mixed-alsa" ];
-    lispLibs = [ (getAttr "cffi" pkgs) (getAttr "cl-mixed" pkgs) ];
-  };
-  cl-mixed-coreaudio = {
-    pname = "cl-mixed-coreaudio";
-    version = "20221106-git";
-    asds = [ "cl-mixed-coreaudio" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-mixed/2022-11-06/cl-mixed-20221106-git.tgz";
-      sha256 = "0xl3iss8mhxsyjsr6mbbf5x75cg893f2im1hywcj1mq8adsyxcf7";
-      system = "cl-mixed-coreaudio";
-      asd = "cl-mixed-coreaudio";
-    });
-    systems = [ "cl-mixed-coreaudio" ];
-    lispLibs = [ (getAttr "bordeaux-threads" pkgs) (getAttr "cffi" pkgs) (getAttr "cl-mixed" pkgs) (getAttr "float-features" pkgs) ];
-  };
-  cl-mixed-examples = {
-    pname = "cl-mixed-examples";
-    version = "20221106-git";
-    asds = [ "cl-mixed-examples" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-mixed/2022-11-06/cl-mixed-20221106-git.tgz";
-      sha256 = "0xl3iss8mhxsyjsr6mbbf5x75cg893f2im1hywcj1mq8adsyxcf7";
-      system = "cl-mixed-examples";
-      asd = "cl-mixed-examples";
-    });
-    systems = [ "cl-mixed-examples" ];
-    lispLibs = [ (getAttr "cl-mixed" pkgs) (getAttr "cl-mixed-mpg123" pkgs) (getAttr "cl-mixed-out123" pkgs) ];
-  };
-  cl-mixed-flac = {
-    pname = "cl-mixed-flac";
-    version = "20221106-git";
-    asds = [ "cl-mixed-flac" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-mixed/2022-11-06/cl-mixed-20221106-git.tgz";
-      sha256 = "0xl3iss8mhxsyjsr6mbbf5x75cg893f2im1hywcj1mq8adsyxcf7";
-      system = "cl-mixed-flac";
-      asd = "cl-mixed-flac";
-    });
-    systems = [ "cl-mixed-flac" ];
-    lispLibs = [ (getAttr "cl-flac" pkgs) (getAttr "cl-mixed" pkgs) ];
-  };
-  cl-mixed-jack = {
-    pname = "cl-mixed-jack";
-    version = "20221106-git";
-    asds = [ "cl-mixed-jack" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-mixed/2022-11-06/cl-mixed-20221106-git.tgz";
-      sha256 = "0xl3iss8mhxsyjsr6mbbf5x75cg893f2im1hywcj1mq8adsyxcf7";
-      system = "cl-mixed-jack";
-      asd = "cl-mixed-jack";
-    });
-    systems = [ "cl-mixed-jack" ];
-    lispLibs = [ (getAttr "cffi" pkgs) (getAttr "cl-mixed" pkgs) ];
-  };
-  cl-mixed-mpg123 = {
-    pname = "cl-mixed-mpg123";
-    version = "20221106-git";
-    asds = [ "cl-mixed-mpg123" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-mixed/2022-11-06/cl-mixed-20221106-git.tgz";
-      sha256 = "0xl3iss8mhxsyjsr6mbbf5x75cg893f2im1hywcj1mq8adsyxcf7";
-      system = "cl-mixed-mpg123";
-      asd = "cl-mixed-mpg123";
-    });
-    systems = [ "cl-mixed-mpg123" ];
-    lispLibs = [ (getAttr "cl-mixed" pkgs) (getAttr "cl-mpg123" pkgs) ];
-  };
-  cl-mixed-mpt = {
-    pname = "cl-mixed-mpt";
-    version = "20221106-git";
-    asds = [ "cl-mixed-mpt" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-mixed/2022-11-06/cl-mixed-20221106-git.tgz";
-      sha256 = "0xl3iss8mhxsyjsr6mbbf5x75cg893f2im1hywcj1mq8adsyxcf7";
-      system = "cl-mixed-mpt";
-      asd = "cl-mixed-mpt";
-    });
-    systems = [ "cl-mixed-mpt" ];
-    lispLibs = [ (getAttr "cl-mixed" pkgs) (getAttr "static-vectors" pkgs) ];
-  };
-  cl-mixed-oss = {
-    pname = "cl-mixed-oss";
-    version = "20221106-git";
-    asds = [ "cl-mixed-oss" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-mixed/2022-11-06/cl-mixed-20221106-git.tgz";
-      sha256 = "0xl3iss8mhxsyjsr6mbbf5x75cg893f2im1hywcj1mq8adsyxcf7";
-      system = "cl-mixed-oss";
-      asd = "cl-mixed-oss";
-    });
-    systems = [ "cl-mixed-oss" ];
-    lispLibs = [ (getAttr "cffi" pkgs) (getAttr "cl-mixed" pkgs) ];
-  };
-  cl-mixed-out123 = {
-    pname = "cl-mixed-out123";
-    version = "20221106-git";
-    asds = [ "cl-mixed-out123" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-mixed/2022-11-06/cl-mixed-20221106-git.tgz";
-      sha256 = "0xl3iss8mhxsyjsr6mbbf5x75cg893f2im1hywcj1mq8adsyxcf7";
-      system = "cl-mixed-out123";
-      asd = "cl-mixed-out123";
-    });
-    systems = [ "cl-mixed-out123" ];
-    lispLibs = [ (getAttr "cl-mixed" pkgs) (getAttr "cl-out123" pkgs) ];
-  };
-  cl-mixed-pulse = {
-    pname = "cl-mixed-pulse";
-    version = "20221106-git";
-    asds = [ "cl-mixed-pulse" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-mixed/2022-11-06/cl-mixed-20221106-git.tgz";
-      sha256 = "0xl3iss8mhxsyjsr6mbbf5x75cg893f2im1hywcj1mq8adsyxcf7";
-      system = "cl-mixed-pulse";
-      asd = "cl-mixed-pulse";
-    });
-    systems = [ "cl-mixed-pulse" ];
-    lispLibs = [ (getAttr "cffi" pkgs) (getAttr "cl-mixed" pkgs) ];
-  };
-  cl-mixed-sdl2 = {
-    pname = "cl-mixed-sdl2";
-    version = "20221106-git";
-    asds = [ "cl-mixed-sdl2" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-mixed/2022-11-06/cl-mixed-20221106-git.tgz";
-      sha256 = "0xl3iss8mhxsyjsr6mbbf5x75cg893f2im1hywcj1mq8adsyxcf7";
-      system = "cl-mixed-sdl2";
-      asd = "cl-mixed-sdl2";
-    });
-    systems = [ "cl-mixed-sdl2" ];
-    lispLibs = [ (getAttr "cl-mixed" pkgs) (getAttr "sdl2" pkgs) ];
-  };
-  cl-mixed-vorbis = {
-    pname = "cl-mixed-vorbis";
-    version = "20221106-git";
-    asds = [ "cl-mixed-vorbis" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-mixed/2022-11-06/cl-mixed-20221106-git.tgz";
-      sha256 = "0xl3iss8mhxsyjsr6mbbf5x75cg893f2im1hywcj1mq8adsyxcf7";
-      system = "cl-mixed-vorbis";
-      asd = "cl-mixed-vorbis";
-    });
-    systems = [ "cl-mixed-vorbis" ];
-    lispLibs = [ (getAttr "cl-mixed" pkgs) (getAttr "cl-vorbis" pkgs) ];
-  };
-  cl-mixed-wasapi = {
-    pname = "cl-mixed-wasapi";
-    version = "20221106-git";
-    asds = [ "cl-mixed-wasapi" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-mixed/2022-11-06/cl-mixed-20221106-git.tgz";
-      sha256 = "0xl3iss8mhxsyjsr6mbbf5x75cg893f2im1hywcj1mq8adsyxcf7";
-      system = "cl-mixed-wasapi";
-      asd = "cl-mixed-wasapi";
-    });
-    systems = [ "cl-mixed-wasapi" ];
-    lispLibs = [ (getAttr "cffi" pkgs) (getAttr "cl-mixed" pkgs) (getAttr "com-on" pkgs) ];
-  };
-  cl-mixed-wav = {
-    pname = "cl-mixed-wav";
-    version = "20221106-git";
-    asds = [ "cl-mixed-wav" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-mixed/2022-11-06/cl-mixed-20221106-git.tgz";
-      sha256 = "0xl3iss8mhxsyjsr6mbbf5x75cg893f2im1hywcj1mq8adsyxcf7";
-      system = "cl-mixed-wav";
-      asd = "cl-mixed-wav";
-    });
-    systems = [ "cl-mixed-wav" ];
-    lispLibs = [ (getAttr "cl-mixed" pkgs) ];
-  };
-  cl-mixed-winmm = {
-    pname = "cl-mixed-winmm";
-    version = "20221106-git";
-    asds = [ "cl-mixed-winmm" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-mixed/2022-11-06/cl-mixed-20221106-git.tgz";
-      sha256 = "0xl3iss8mhxsyjsr6mbbf5x75cg893f2im1hywcj1mq8adsyxcf7";
-      system = "cl-mixed-winmm";
-      asd = "cl-mixed-winmm";
-    });
-    systems = [ "cl-mixed-winmm" ];
-    lispLibs = [ (getAttr "cffi" pkgs) (getAttr "cl-mixed" pkgs) ];
-  };
-  cl-mixed-xaudio2 = {
-    pname = "cl-mixed-xaudio2";
-    version = "20221106-git";
-    asds = [ "cl-mixed-xaudio2" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-mixed/2022-11-06/cl-mixed-20221106-git.tgz";
-      sha256 = "0xl3iss8mhxsyjsr6mbbf5x75cg893f2im1hywcj1mq8adsyxcf7";
-      system = "cl-mixed-xaudio2";
-      asd = "cl-mixed-xaudio2";
-    });
-    systems = [ "cl-mixed-xaudio2" ];
-    lispLibs = [ (getAttr "cffi" pkgs) (getAttr "cl-mixed" pkgs) (getAttr "com-on" pkgs) ];
-  };
-  cl-mock = {
-    pname = "cl-mock";
-    version = "20221106-git";
-    asds = [ "cl-mock" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-mock/2022-11-06/cl-mock-20221106-git.tgz";
-      sha256 = "19641sm3klx9yfk8lr376rfkd26vy72yp1hkpkqcw3q3m1xrf9xp";
-      system = "cl-mock";
-      asd = "cl-mock";
-    });
-    systems = [ "cl-mock" ];
-    lispLibs = [ (getAttr "cl-mock-basic" pkgs) (getAttr "trivia" pkgs) ];
-  };
-  cl-mock-basic = {
-    pname = "cl-mock-basic";
-    version = "20221106-git";
-    asds = [ "cl-mock-basic" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-mock/2022-11-06/cl-mock-20221106-git.tgz";
-      sha256 = "19641sm3klx9yfk8lr376rfkd26vy72yp1hkpkqcw3q3m1xrf9xp";
-      system = "cl-mock-basic";
-      asd = "cl-mock-basic";
-    });
-    systems = [ "cl-mock-basic" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "bordeaux-threads" pkgs) (getAttr "closer-mop" pkgs) ];
-  };
-  cl-mock-tests = {
-    pname = "cl-mock-tests";
-    version = "20221106-git";
-    asds = [ "cl-mock-tests" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-mock/2022-11-06/cl-mock-20221106-git.tgz";
-      sha256 = "19641sm3klx9yfk8lr376rfkd26vy72yp1hkpkqcw3q3m1xrf9xp";
-      system = "cl-mock-tests";
-      asd = "cl-mock-tests";
-    });
-    systems = [ "cl-mock-tests" ];
-    lispLibs = [ (getAttr "cl-mock" pkgs) (getAttr "cl-mock-tests-basic" pkgs) ];
-  };
-  cl-mock-tests-basic = {
-    pname = "cl-mock-tests-basic";
-    version = "20221106-git";
-    asds = [ "cl-mock-tests-basic" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-mock/2022-11-06/cl-mock-20221106-git.tgz";
-      sha256 = "19641sm3klx9yfk8lr376rfkd26vy72yp1hkpkqcw3q3m1xrf9xp";
-      system = "cl-mock-tests-basic";
-      asd = "cl-mock-tests-basic";
-    });
-    systems = [ "cl-mock-tests-basic" ];
-    lispLibs = [ (getAttr "cl-mock-basic" pkgs) (getAttr "fiveam" pkgs) ];
-  };
-  cl-monad-macros = {
-    pname = "cl-monad-macros";
-    version = "20110619-svn";
-    asds = [ "cl-monad-macros" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-monad-macros/2011-06-19/cl-monad-macros-20110619-svn.tgz";
-      sha256 = "184p018xb07yd04bpscrwrnwv1cdxh9hxggmrnj95lhlr6r97l1z";
-      system = "cl-monad-macros";
-      asd = "cl-monad-macros";
-    });
-    systems = [ "cl-monad-macros" ];
-    lispLibs = [  ];
-  };
-  cl-moneris = {
-    pname = "cl-moneris";
-    version = "20110418-git";
-    asds = [ "cl-moneris" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-moneris/2011-04-18/cl-moneris-20110418-git.tgz";
-      sha256 = "1jvzssjb273ijbdcpxpl6ajh02k4h6l5j4vjxkh69cnrq3dcsvfc";
-      system = "cl-moneris";
-      asd = "cl-moneris";
-    });
-    systems = [ "cl-moneris" ];
-    lispLibs = [ (getAttr "drakma" pkgs) (getAttr "s-xml" pkgs) ];
-  };
-  cl-moneris-test = {
-    pname = "cl-moneris-test";
-    version = "20110418-git";
-    asds = [ "cl-moneris-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-moneris/2011-04-18/cl-moneris-20110418-git.tgz";
-      sha256 = "1jvzssjb273ijbdcpxpl6ajh02k4h6l5j4vjxkh69cnrq3dcsvfc";
-      system = "cl-moneris-test";
-      asd = "cl-moneris-test";
-    });
-    systems = [ "cl-moneris-test" ];
-    lispLibs = [ (getAttr "cl-moneris" pkgs) (getAttr "eos" pkgs) ];
-  };
-  cl-mongo = {
-    pname = "cl-mongo";
-    version = "20160531-git";
-    asds = [ "cl-mongo" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-mongo/2016-05-31/cl-mongo-20160531-git.tgz";
-      sha256 = "1l3kydbxbxhs1z76v6qpwjnabv8wf0mff1pfjkrpjfz6bia1svx6";
-      system = "cl-mongo";
-      asd = "cl-mongo";
-    });
-    systems = [ "cl-mongo" ];
-    lispLibs = [ (getAttr "babel" pkgs) (getAttr "bordeaux-threads" pkgs) (getAttr "documentation-template" pkgs) (getAttr "lisp-unit" pkgs) (getAttr "parenscript" pkgs) (getAttr "split-sequence" pkgs) (getAttr "usocket" pkgs) (getAttr "uuid" pkgs) ];
-  };
-  cl-mongo-id = {
-    pname = "cl-mongo-id";
-    version = "20201220-git";
-    asds = [ "cl-mongo-id" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-mongo-id/2020-12-20/cl-mongo-id-20201220-git.tgz";
-      sha256 = "1bpwmh5970rpr6ayygcgdg96hq2dlrksgpa1vdmy5l6vdbw9xrys";
-      system = "cl-mongo-id";
-      asd = "cl-mongo-id";
-    });
-    systems = [ "cl-mongo-id" ];
-    lispLibs = [ (getAttr "bordeaux-threads" pkgs) (getAttr "local-time" pkgs) (getAttr "md5" pkgs) (getAttr "secure-random" pkgs) ];
-  };
-  cl-monitors = {
-    pname = "cl-monitors";
-    version = "20190710-git";
-    asds = [ "cl-monitors" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-monitors/2019-07-10/cl-monitors-20190710-git.tgz";
-      sha256 = "0arwj7san3hsjws1fj3l8iqm92fipw0bfl3gzvvx6sa3cmy3m8vj";
-      system = "cl-monitors";
-      asd = "cl-monitors";
-    });
-    systems = [ "cl-monitors" ];
-    lispLibs = [ (getAttr "cffi" pkgs) (getAttr "documentation-utils" pkgs) (getAttr "trivial-features" pkgs) (getAttr "trivial-garbage" pkgs) ];
-  };
-  cl-mop = {
-    pname = "cl-mop";
-    version = "20150113-git";
-    asds = [ "cl-mop" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-mop/2015-01-13/cl-mop-20150113-git.tgz";
-      sha256 = "0wqjbp6jr868a89hklf1ppxkdfbznafrdpriakqiraicvr9kvksg";
-      system = "cl-mop";
-      asd = "cl-mop";
-    });
-    systems = [ "cl-mop" ];
-    lispLibs = [  ];
-  };
-  cl-morse = {
-    pname = "cl-morse";
-    version = "v1.0.0";
-    asds = [ "cl-morse" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-morse/2022-07-07/cl-morse-v1.0.0.tgz";
-      sha256 = "01sh34nhbsx2dsrb2r1vkd4j8lzm9gjd5jfi8a4cs4m3djjwhh5i";
-      system = "cl-morse";
-      asd = "cl-morse";
-    });
-    systems = [ "cl-morse" ];
-    lispLibs = [ (getAttr "cl-ppcre" pkgs) ];
-  };
-  cl-morse_slash_tests = {
-    pname = "cl-morse_tests";
-    version = "v1.0.0";
-    asds = [ "cl-morse" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-morse/2022-07-07/cl-morse-v1.0.0.tgz";
-      sha256 = "01sh34nhbsx2dsrb2r1vkd4j8lzm9gjd5jfi8a4cs4m3djjwhh5i";
-      system = "cl-morse";
-      asd = "cl-morse";
-    });
-    systems = [ "cl-morse/tests" ];
-    lispLibs = [ (getAttr "cl-morse" pkgs) (getAttr "fiveam" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  cl-moss = {
-    pname = "cl-moss";
-    version = "20171019-git";
-    asds = [ "cl-moss" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-moss/2017-10-19/cl-moss-20171019-git.tgz";
-      sha256 = "1qxzppnyxc8lkhfbbp5m3dbhp4rfkyc2lfrry2448i5w5icrigzd";
-      system = "cl-moss";
-      asd = "cl-moss";
-    });
-    systems = [ "cl-moss" ];
-    lispLibs = [ (getAttr "usocket" pkgs) ];
-  };
-  cl-mount-info = {
-    pname = "cl-mount-info";
-    version = "20200218-git";
-    asds = [ "cl-mount-info" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-mount-info/2020-02-18/cl-mount-info-20200218-git.tgz";
-      sha256 = "0vza9gj9q42nzb5v8aj22lmn4aqx9vrddsb5a343nbwfz89hbh9x";
-      system = "cl-mount-info";
-      asd = "cl-mount-info";
-    });
-    systems = [ "cl-mount-info" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cffi" pkgs) (getAttr "cl-ppcre" pkgs) ];
-  };
-  cl-mpg123 = {
-    pname = "cl-mpg123";
-    version = "20211209-git";
-    asds = [ "cl-mpg123" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-mpg123/2021-12-09/cl-mpg123-20211209-git.tgz";
-      sha256 = "0hw2jpvi85cz9p1ibzycfk84j1l2m3f2hl6mifmmd1xfsajbs6l0";
-      system = "cl-mpg123";
-      asd = "cl-mpg123";
-    });
-    systems = [ "cl-mpg123" ];
-    lispLibs = [ (getAttr "cffi" pkgs) (getAttr "documentation-utils" pkgs) (getAttr "trivial-features" pkgs) (getAttr "trivial-garbage" pkgs) ];
-  };
-  cl-mpg123-example = {
-    pname = "cl-mpg123-example";
-    version = "20211209-git";
-    asds = [ "cl-mpg123-example" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-mpg123/2021-12-09/cl-mpg123-20211209-git.tgz";
-      sha256 = "0hw2jpvi85cz9p1ibzycfk84j1l2m3f2hl6mifmmd1xfsajbs6l0";
-      system = "cl-mpg123-example";
-      asd = "cl-mpg123-example";
-    });
-    systems = [ "cl-mpg123-example" ];
-    lispLibs = [ (getAttr "cl-mpg123" pkgs) (getAttr "cl-out123" pkgs) (getAttr "verbose" pkgs) ];
-  };
-  cl-mpi = {
-    pname = "cl-mpi";
-    version = "20190710-git";
-    asds = [ "cl-mpi" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-mpi/2019-07-10/cl-mpi-20190710-git.tgz";
-      sha256 = "1ykwk7acjhzpsjgm2b5svdpyw2qgrh860gkx3n2ckyrgd9l9q6jb";
-      system = "cl-mpi";
-      asd = "cl-mpi";
-    });
-    systems = [ "cl-mpi" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cffi" pkgs) (getAttr "cl-mpi-asdf-integration" pkgs) (getAttr "static-vectors" pkgs) (getAttr "uiop" pkgs) ];
-  };
-  cl-mpi-asdf-integration = {
-    pname = "cl-mpi-asdf-integration";
-    version = "20190710-git";
-    asds = [ "cl-mpi-asdf-integration" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-mpi/2019-07-10/cl-mpi-20190710-git.tgz";
-      sha256 = "1ykwk7acjhzpsjgm2b5svdpyw2qgrh860gkx3n2ckyrgd9l9q6jb";
-      system = "cl-mpi-asdf-integration";
-      asd = "cl-mpi-asdf-integration";
-    });
-    systems = [ "cl-mpi-asdf-integration" ];
-    lispLibs = [ (getAttr "cffi-grovel" pkgs) (getAttr "cffi-toolchain" pkgs) ];
-  };
-  cl-mpi-examples = {
-    pname = "cl-mpi-examples";
-    version = "20190710-git";
-    asds = [ "cl-mpi-examples" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-mpi/2019-07-10/cl-mpi-20190710-git.tgz";
-      sha256 = "1ykwk7acjhzpsjgm2b5svdpyw2qgrh860gkx3n2ckyrgd9l9q6jb";
-      system = "cl-mpi-examples";
-      asd = "cl-mpi-examples";
-    });
-    systems = [ "cl-mpi-examples" ];
-    lispLibs = [ (getAttr "cl-mpi" pkgs) (getAttr "cl-mpi-asdf-integration" pkgs) (getAttr "uiop" pkgs) ];
-  };
-  cl-mpi-extensions = {
-    pname = "cl-mpi-extensions";
-    version = "20190710-git";
-    asds = [ "cl-mpi-extensions" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-mpi/2019-07-10/cl-mpi-20190710-git.tgz";
-      sha256 = "1ykwk7acjhzpsjgm2b5svdpyw2qgrh860gkx3n2ckyrgd9l9q6jb";
-      system = "cl-mpi-extensions";
-      asd = "cl-mpi-extensions";
-    });
-    systems = [ "cl-mpi-extensions" ];
-    lispLibs = [ (getAttr "cffi" pkgs) (getAttr "cl-conspack" pkgs) (getAttr "cl-mpi" pkgs) ];
-  };
-  cl-mpi-test-suite = {
-    pname = "cl-mpi-test-suite";
-    version = "20190710-git";
-    asds = [ "cl-mpi-test-suite" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-mpi/2019-07-10/cl-mpi-20190710-git.tgz";
-      sha256 = "1ykwk7acjhzpsjgm2b5svdpyw2qgrh860gkx3n2ckyrgd9l9q6jb";
-      system = "cl-mpi-test-suite";
-      asd = "cl-mpi-test-suite";
-    });
-    systems = [ "cl-mpi-test-suite" ];
-    lispLibs = [ (getAttr "cffi" pkgs) (getAttr "cl-mpi" pkgs) (getAttr "fiveam" pkgs) ];
-  };
-  cl-mtgnet = {
-    pname = "cl-mtgnet";
-    version = "20180711-git";
-    asds = [ "cl-mtgnet" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-mtgnet/2018-07-11/cl-mtgnet-20180711-git.tgz";
-      sha256 = "08mwkfa9s51is6npn7al4rn5a65ip2bq0psb1pdvh111h5zqxdrb";
-      system = "cl-mtgnet";
-      asd = "cl-mtgnet";
-    });
-    systems = [ "cl-mtgnet" ];
-    lispLibs = [ (getAttr "blackbird" pkgs) (getAttr "cl-json" pkgs) (getAttr "cl-netstring_plus" pkgs) (getAttr "trivial-utf-8" pkgs) ];
-  };
-  cl-mtgnet-async = {
-    pname = "cl-mtgnet-async";
-    version = "20180711-git";
-    asds = [ "cl-mtgnet-async" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-mtgnet/2018-07-11/cl-mtgnet-20180711-git.tgz";
-      sha256 = "08mwkfa9s51is6npn7al4rn5a65ip2bq0psb1pdvh111h5zqxdrb";
-      system = "cl-mtgnet-async";
-      asd = "cl-mtgnet-async";
-    });
-    systems = [ "cl-mtgnet-async" ];
-    lispLibs = [ (getAttr "cl-async" pkgs) (getAttr "cl-mtgnet" pkgs) ];
-  };
-  cl-mtgnet-sync = {
-    pname = "cl-mtgnet-sync";
-    version = "20180711-git";
-    asds = [ "cl-mtgnet-sync" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-mtgnet/2018-07-11/cl-mtgnet-20180711-git.tgz";
-      sha256 = "08mwkfa9s51is6npn7al4rn5a65ip2bq0psb1pdvh111h5zqxdrb";
-      system = "cl-mtgnet-sync";
-      asd = "cl-mtgnet-sync";
-    });
-    systems = [ "cl-mtgnet-sync" ];
-    lispLibs = [ (getAttr "cl-mtgnet" pkgs) (getAttr "usocket" pkgs) ];
-  };
-  cl-murmurhash = {
-    pname = "cl-murmurhash";
-    version = "20210630-git";
-    asds = [ "cl-murmurhash" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-murmurhash/2021-06-30/cl-murmurhash-20210630-git.tgz";
-      sha256 = "0251r0mpjm0y3qsm4lm7ncvrkxvgwc53spdm1p2mpayhvkkqqsws";
-      system = "cl-murmurhash";
-      asd = "cl-murmurhash";
-    });
-    systems = [ "cl-murmurhash" ];
-    lispLibs = [ (getAttr "babel" pkgs) ];
-  };
-  cl-murmurhash_slash_test = {
-    pname = "cl-murmurhash_test";
-    version = "20210630-git";
-    asds = [ "cl-murmurhash" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-murmurhash/2021-06-30/cl-murmurhash-20210630-git.tgz";
-      sha256 = "0251r0mpjm0y3qsm4lm7ncvrkxvgwc53spdm1p2mpayhvkkqqsws";
-      system = "cl-murmurhash";
-      asd = "cl-murmurhash";
-    });
-    systems = [ "cl-murmurhash/test" ];
-    lispLibs = [ (getAttr "cl-murmurhash" pkgs) (getAttr "fiveam" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  cl-mustache = {
-    pname = "cl-mustache";
-    version = "20200325-git";
-    asds = [ "cl-mustache" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-mustache/2020-03-25/cl-mustache-20200325-git.tgz";
-      sha256 = "1wsmr46c56l0chshffk3rbvd7v2jwplmgmkkyr98n5n2qnjcqrc4";
-      system = "cl-mustache";
-      asd = "cl-mustache";
-    });
-    systems = [ "cl-mustache" ];
-    lispLibs = [ (getAttr "uiop" pkgs) ];
-  };
-  cl-mustache-test = {
-    pname = "cl-mustache-test";
-    version = "20200325-git";
-    asds = [ "cl-mustache-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-mustache/2020-03-25/cl-mustache-20200325-git.tgz";
-      sha256 = "1wsmr46c56l0chshffk3rbvd7v2jwplmgmkkyr98n5n2qnjcqrc4";
-      system = "cl-mustache-test";
-      asd = "cl-mustache-test";
-    });
-    systems = [ "cl-mustache-test" ];
-    lispLibs = [ (getAttr "cl-mustache" pkgs) (getAttr "prove" pkgs) (getAttr "prove-asdf" pkgs) ];
-  };
-  cl-muth = {
-    pname = "cl-muth";
-    version = "stable-git";
-    asds = [ "cl-muth" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-muth/2022-07-07/cl-muth-stable-git.tgz";
-      sha256 = "0409arzy51chgi9anj9s2zn0qkx9wnphlbwcdvpamr4b51b60xjz";
-      system = "cl-muth";
-      asd = "cl-muth";
-    });
-    systems = [ "cl-muth" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "bodge-heap" pkgs) (getAttr "bodge-queue" pkgs) (getAttr "bordeaux-threads" pkgs) (getAttr "trivial-features" pkgs) ];
-  };
-  cl-muth_slash_tests = {
-    pname = "cl-muth_tests";
-    version = "stable-git";
-    asds = [ "cl-muth" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-muth/2022-07-07/cl-muth-stable-git.tgz";
-      sha256 = "0409arzy51chgi9anj9s2zn0qkx9wnphlbwcdvpamr4b51b60xjz";
-      system = "cl-muth";
-      asd = "cl-muth";
-    });
-    systems = [ "cl-muth/tests" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "bordeaux-threads" pkgs) (getAttr "cl-muth" pkgs) (getAttr "fiveam" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  cl-mw = {
-    pname = "cl-mw";
-    version = "20150407-git";
-    asds = [ "cl-mw" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-mw/2015-04-07/cl-mw-20150407-git.tgz";
-      sha256 = "1bpkpb86hpp7sz9mk19rbdlfcis2npc3a7w6jlph7s8brxl1h1jn";
-      system = "cl-mw";
-      asd = "cl-mw";
-    });
-    systems = [ "cl-mw" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cffi" pkgs) (getAttr "cl-ppcre" pkgs) (getAttr "hu_dot_dwim_dot_serializer" pkgs) (getAttr "iolib" pkgs) ];
-  };
-  cl-mw_dot_examples_dot_argument-processing = {
-    pname = "cl-mw.examples.argument-processing";
-    version = "20150407-git";
-    asds = [ "cl-mw.examples.argument-processing" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-mw/2015-04-07/cl-mw-20150407-git.tgz";
-      sha256 = "1bpkpb86hpp7sz9mk19rbdlfcis2npc3a7w6jlph7s8brxl1h1jn";
-      system = "cl-mw.examples.argument-processing";
-      asd = "cl-mw.examples.argument-processing";
-    });
-    systems = [ "cl-mw.examples.argument-processing" ];
-    lispLibs = [ (getAttr "cl-mw" pkgs) ];
-  };
-  cl-mw_dot_examples_dot_hello-world = {
-    pname = "cl-mw.examples.hello-world";
-    version = "20150407-git";
-    asds = [ "cl-mw.examples.hello-world" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-mw/2015-04-07/cl-mw-20150407-git.tgz";
-      sha256 = "1bpkpb86hpp7sz9mk19rbdlfcis2npc3a7w6jlph7s8brxl1h1jn";
-      system = "cl-mw.examples.hello-world";
-      asd = "cl-mw.examples.hello-world";
-    });
-    systems = [ "cl-mw.examples.hello-world" ];
-    lispLibs = [ (getAttr "cl-mw" pkgs) ];
-  };
-  cl-mw_dot_examples_dot_higher-order = {
-    pname = "cl-mw.examples.higher-order";
-    version = "20150407-git";
-    asds = [ "cl-mw.examples.higher-order" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-mw/2015-04-07/cl-mw-20150407-git.tgz";
-      sha256 = "1bpkpb86hpp7sz9mk19rbdlfcis2npc3a7w6jlph7s8brxl1h1jn";
-      system = "cl-mw.examples.higher-order";
-      asd = "cl-mw.examples.higher-order";
-    });
-    systems = [ "cl-mw.examples.higher-order" ];
-    lispLibs = [ (getAttr "cl-mw" pkgs) ];
-  };
-  cl-mw_dot_examples_dot_monte-carlo-pi = {
-    pname = "cl-mw.examples.monte-carlo-pi";
-    version = "20150407-git";
-    asds = [ "cl-mw.examples.monte-carlo-pi" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-mw/2015-04-07/cl-mw-20150407-git.tgz";
-      sha256 = "1bpkpb86hpp7sz9mk19rbdlfcis2npc3a7w6jlph7s8brxl1h1jn";
-      system = "cl-mw.examples.monte-carlo-pi";
-      asd = "cl-mw.examples.monte-carlo-pi";
-    });
-    systems = [ "cl-mw.examples.monte-carlo-pi" ];
-    lispLibs = [ (getAttr "cl-mw" pkgs) ];
-  };
-  cl-mw_dot_examples_dot_ping = {
-    pname = "cl-mw.examples.ping";
-    version = "20150407-git";
-    asds = [ "cl-mw.examples.ping" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-mw/2015-04-07/cl-mw-20150407-git.tgz";
-      sha256 = "1bpkpb86hpp7sz9mk19rbdlfcis2npc3a7w6jlph7s8brxl1h1jn";
-      system = "cl-mw.examples.ping";
-      asd = "cl-mw.examples.ping";
-    });
-    systems = [ "cl-mw.examples.ping" ];
-    lispLibs = [ (getAttr "cl-mw" pkgs) ];
-  };
-  cl-mw_dot_examples_dot_with-task-policy = {
-    pname = "cl-mw.examples.with-task-policy";
-    version = "20150407-git";
-    asds = [ "cl-mw.examples.with-task-policy" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-mw/2015-04-07/cl-mw-20150407-git.tgz";
-      sha256 = "1bpkpb86hpp7sz9mk19rbdlfcis2npc3a7w6jlph7s8brxl1h1jn";
-      system = "cl-mw.examples.with-task-policy";
-      asd = "cl-mw.examples.with-task-policy";
-    });
-    systems = [ "cl-mw.examples.with-task-policy" ];
-    lispLibs = [ (getAttr "cl-mw" pkgs) ];
-  };
-  cl-myriam = {
-    pname = "cl-myriam";
-    version = "20220331-git";
-    asds = [ "cl-myriam" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-myriam/2022-03-31/cl-myriam-20220331-git.tgz";
-      sha256 = "0vyyyy6yj62id5m1a98rbq3pz7hm74znnawxh4apqhrff37xcs1l";
-      system = "cl-myriam";
-      asd = "cl-myriam";
-    });
-    systems = [ "cl-myriam" ];
-    lispLibs = [ (getAttr "babel" pkgs) (getAttr "bordeaux-threads" pkgs) (getAttr "cl-conspack" pkgs) (getAttr "cl-ppcre" pkgs) (getAttr "str" pkgs) (getAttr "lparallel" pkgs) (getAttr "pzmq" pkgs) (getAttr "serapeum" pkgs) (getAttr "sha3" pkgs) (getAttr "usocket" pkgs) (getAttr "uuid" pkgs) ];
-  };
-  cl-mysql = {
-    pname = "cl-mysql";
-    version = "20200610-git";
-    asds = [ "cl-mysql" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-mysql/2020-06-10/cl-mysql-20200610-git.tgz";
-      sha256 = "1jk2571w5zhrmza4mr5z4ia6g7r5hzhp8dsxnpx2ypnla9xpxv5h";
-      system = "cl-mysql";
-      asd = "cl-mysql";
-    });
-    systems = [ "cl-mysql" ];
-    lispLibs = [ (getAttr "cffi" pkgs) ];
-  };
-  cl-mysql-test = {
-    pname = "cl-mysql-test";
-    version = "20200610-git";
-    asds = [ "cl-mysql-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-mysql/2020-06-10/cl-mysql-20200610-git.tgz";
-      sha256 = "1jk2571w5zhrmza4mr5z4ia6g7r5hzhp8dsxnpx2ypnla9xpxv5h";
-      system = "cl-mysql-test";
-      asd = "cl-mysql-test";
-    });
-    systems = [ "cl-mysql-test" ];
-    lispLibs = [ (getAttr "cl-mysql" pkgs) (getAttr "stefil" pkgs) ];
-  };
-  cl-naive-store = {
-    pname = "cl-naive-store";
-    version = "20221106-git";
-    asds = [ "cl-naive-store" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-naive-store/2022-11-06/cl-naive-store-20221106-git.tgz";
-      sha256 = "0mrk64dzs9v6d2gggz8v2b6ng7f1qzkw9nsdm62qcax63p2v19v8";
-      system = "cl-naive-store";
-      asd = "cl-naive-store";
-    });
-    systems = [ "cl-naive-store" ];
-    lispLibs = [ (getAttr "cl-naive-store_dot_document-type-defs" pkgs) (getAttr "cl-naive-store_dot_document-types" pkgs) (getAttr "cl-naive-store_dot_naive-core" pkgs) (getAttr "cl-naive-store_dot_naive-documents" pkgs) (getAttr "cl-naive-store_dot_naive-indexed" pkgs) (getAttr "cl-naive-store_dot_naive-merkle" pkgs) ];
-  };
-  cl-naive-store_dot_document-type-defs = {
-    pname = "cl-naive-store.document-type-defs";
-    version = "20221106-git";
-    asds = [ "cl-naive-store.document-type-defs" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-naive-store/2022-11-06/cl-naive-store-20221106-git.tgz";
-      sha256 = "0mrk64dzs9v6d2gggz8v2b6ng7f1qzkw9nsdm62qcax63p2v19v8";
-      system = "cl-naive-store.document-type-defs";
-      asd = "cl-naive-store.document-type-defs";
-    });
-    systems = [ "cl-naive-store.document-type-defs" ];
-    lispLibs = [ (getAttr "cl-naive-store_dot_document-types" pkgs) (getAttr "cl-naive-store_dot_naive-core" pkgs) ];
-  };
-  cl-naive-store_dot_document-types = {
-    pname = "cl-naive-store.document-types";
-    version = "20221106-git";
-    asds = [ "cl-naive-store.document-types" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-naive-store/2022-11-06/cl-naive-store-20221106-git.tgz";
-      sha256 = "0mrk64dzs9v6d2gggz8v2b6ng7f1qzkw9nsdm62qcax63p2v19v8";
-      system = "cl-naive-store.document-types";
-      asd = "cl-naive-store.document-types";
-    });
-    systems = [ "cl-naive-store.document-types" ];
-    lispLibs = [ (getAttr "cl-naive-store_dot_naive-core" pkgs) ];
-  };
-  cl-naive-store_dot_naive-core = {
-    pname = "cl-naive-store.naive-core";
-    version = "20221106-git";
-    asds = [ "cl-naive-store.naive-core" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-naive-store/2022-11-06/cl-naive-store-20221106-git.tgz";
-      sha256 = "0mrk64dzs9v6d2gggz8v2b6ng7f1qzkw9nsdm62qcax63p2v19v8";
-      system = "cl-naive-store.naive-core";
-      asd = "cl-naive-store.naive-core";
-    });
-    systems = [ "cl-naive-store.naive-core" ];
-    lispLibs = [ (getAttr "bordeaux-threads" pkgs) (getAttr "cl-cpus" pkgs) (getAttr "cl-fad" pkgs) (getAttr "cl-getx" pkgs) (getAttr "cl-murmurhash" pkgs) (getAttr "ironclad" pkgs) (getAttr "local-time" pkgs) (getAttr "lparallel" pkgs) (getAttr "split-sequence" pkgs) (getAttr "uuid" pkgs) ];
-  };
-  cl-naive-store_dot_naive-documents = {
-    pname = "cl-naive-store.naive-documents";
-    version = "20221106-git";
-    asds = [ "cl-naive-store.naive-documents" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-naive-store/2022-11-06/cl-naive-store-20221106-git.tgz";
-      sha256 = "0mrk64dzs9v6d2gggz8v2b6ng7f1qzkw9nsdm62qcax63p2v19v8";
-      system = "cl-naive-store.naive-documents";
-      asd = "cl-naive-store.naive-documents";
-    });
-    systems = [ "cl-naive-store.naive-documents" ];
-    lispLibs = [ (getAttr "cl-naive-store_dot_document-type-defs" pkgs) (getAttr "cl-naive-store_dot_document-types" pkgs) (getAttr "cl-naive-store_dot_naive-core" pkgs) (getAttr "cl-naive-store_dot_naive-indexed" pkgs) ];
-  };
-  cl-naive-store_dot_naive-indexed = {
-    pname = "cl-naive-store.naive-indexed";
-    version = "20221106-git";
-    asds = [ "cl-naive-store.naive-indexed" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-naive-store/2022-11-06/cl-naive-store-20221106-git.tgz";
-      sha256 = "0mrk64dzs9v6d2gggz8v2b6ng7f1qzkw9nsdm62qcax63p2v19v8";
-      system = "cl-naive-store.naive-indexed";
-      asd = "cl-naive-store.naive-indexed";
-    });
-    systems = [ "cl-naive-store.naive-indexed" ];
-    lispLibs = [ (getAttr "cl-naive-store_dot_naive-core" pkgs) ];
-  };
-  cl-naive-store_dot_naive-merkle = {
-    pname = "cl-naive-store.naive-merkle";
-    version = "20221106-git";
-    asds = [ "cl-naive-store.naive-merkle" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-naive-store/2022-11-06/cl-naive-store-20221106-git.tgz";
-      sha256 = "0mrk64dzs9v6d2gggz8v2b6ng7f1qzkw9nsdm62qcax63p2v19v8";
-      system = "cl-naive-store.naive-merkle";
-      asd = "cl-naive-store.naive-merkle";
-    });
-    systems = [ "cl-naive-store.naive-merkle" ];
-    lispLibs = [ (getAttr "cl-naive-store_dot_naive-documents" pkgs) ];
-  };
-  cl-naive-store_dot_test = {
-    pname = "cl-naive-store.test";
-    version = "20221106-git";
-    asds = [ "cl-naive-store.test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-naive-store/2022-11-06/cl-naive-store-20221106-git.tgz";
-      sha256 = "0mrk64dzs9v6d2gggz8v2b6ng7f1qzkw9nsdm62qcax63p2v19v8";
-      system = "cl-naive-store.test";
-      asd = "cl-naive-store.test";
-    });
-    systems = [ "cl-naive-store.test" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cl-naive-store" pkgs) ];
-  };
-  cl-ncurses = {
-    pname = "cl-ncurses";
-    version = "0.1.4";
-    asds = [ "cl-ncurses" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-ncurses/2010-10-06/cl-ncurses_0.1.4.tgz";
-      sha256 = "1frcap93i4ni3d648rrbnjjpz7p4cxlv57mmzlpxpzchzbcga026";
-      system = "cl-ncurses";
-      asd = "cl-ncurses";
-    });
-    systems = [ "cl-ncurses" ];
-    lispLibs = [ (getAttr "uffi" pkgs) ];
-  };
-  cl-neo4j = {
-    pname = "cl-neo4j";
-    version = "release-b8ad637a-git";
-    asds = [ "cl-neo4j" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-neo4j/2013-01-28/cl-neo4j-release-b8ad637a-git.tgz";
-      sha256 = "061xqjn08aqynfqygk48pwjp1d1mnhcb6fnl4lcfyw261dxsp871";
-      system = "cl-neo4j";
-      asd = "cl-neo4j";
-    });
-    systems = [ "cl-neo4j" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "anaphora" pkgs) (getAttr "babel" pkgs) (getAttr "cl-json" pkgs) (getAttr "cl-ppcre" pkgs) (getAttr "drakma" pkgs) (getAttr "split-sequence" pkgs) ];
-  };
-  cl-neo4j_dot_tests = {
-    pname = "cl-neo4j.tests";
-    version = "release-b8ad637a-git";
-    asds = [ "cl-neo4j.tests" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-neo4j/2013-01-28/cl-neo4j-release-b8ad637a-git.tgz";
-      sha256 = "061xqjn08aqynfqygk48pwjp1d1mnhcb6fnl4lcfyw261dxsp871";
-      system = "cl-neo4j.tests";
-      asd = "cl-neo4j";
-    });
-    systems = [ "cl-neo4j.tests" ];
-    lispLibs = [ (getAttr "cl-neo4j" pkgs) (getAttr "fiveam" pkgs) ];
-  };
-  cl-neovim = {
-    pname = "cl-neovim";
-    version = "20190521-git";
-    asds = [ "cl-neovim" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-neovim/2019-05-21/cl-neovim-20190521-git.tgz";
-      sha256 = "06hy30px9cppqzh0c8nkbyysbpw2l247r4g43wfw96rflrdwy6ks";
-      system = "cl-neovim";
-      asd = "cl-neovim";
-    });
-    systems = [ "cl-neovim" ];
-    lispLibs = [ (getAttr "babel" pkgs) (getAttr "cl-messagepack-rpc" pkgs) (getAttr "form-fiddle" pkgs) (getAttr "split-sequence" pkgs) (getAttr "vom" pkgs) ];
-  };
-  cl-netpbm = {
-    pname = "cl-netpbm";
-    version = "20201016-hg";
-    asds = [ "cl-netpbm" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-netpbm/2020-10-16/cl-netpbm-20201016-hg.tgz";
-      sha256 = "1xhpyn7nkadvbv8n7sbjyfj9qzr90p66dhq1j9f0jj4lmarp8anp";
-      system = "cl-netpbm";
-      asd = "cl-netpbm";
-    });
-    systems = [ "cl-netpbm" ];
-    lispLibs = [  ];
-  };
-  cl-netpbm_slash_test = {
-    pname = "cl-netpbm_test";
-    version = "20201016-hg";
-    asds = [ "cl-netpbm" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-netpbm/2020-10-16/cl-netpbm-20201016-hg.tgz";
-      sha256 = "1xhpyn7nkadvbv8n7sbjyfj9qzr90p66dhq1j9f0jj4lmarp8anp";
-      system = "cl-netpbm";
-      asd = "cl-netpbm";
-    });
-    systems = [ "cl-netpbm/test" ];
-    lispLibs = [ (getAttr "_1am" pkgs) (getAttr "cl-netpbm" pkgs) (getAttr "external-program" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  cl-netstring_plus = {
-    pname = "cl-netstring+";
-    version = "20150709-git";
-    asds = [ "cl-netstring+" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-netstring-plus/2015-07-09/cl-netstring-plus-20150709-git.tgz";
-      sha256 = "03nxhgkab8lsx8mvavd4yny1894yxl5bllvqb12hyjdgg1v8whrr";
-      system = "cl-netstring+";
-      asd = "cl-netstring+";
-    });
-    systems = [ "cl-netstring+" ];
-    lispLibs = [ (getAttr "flexi-streams" pkgs) (getAttr "trivial-utf-8" pkgs) ];
-  };
-  cl-netstrings = {
-    pname = "cl-netstrings";
-    version = "20121013-git";
-    asds = [ "cl-netstrings" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-netstrings/2012-10-13/cl-netstrings-20121013-git.tgz";
-      sha256 = "1mprrb8i3fjpmw7w461ib8zrcjwx77sqwaxyqq7i8yqkbhk7p1ql";
-      system = "cl-netstrings";
-      asd = "cl-netstrings";
-    });
-    systems = [ "cl-netstrings" ];
-    lispLibs = [ (getAttr "arnesi" pkgs) (getAttr "iterate" pkgs) ];
-  };
-  cl-notebook = {
-    pname = "cl-notebook";
-    version = "20201220-git";
-    asds = [ "cl-notebook" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-notebook/2020-12-20/cl-notebook-20201220-git.tgz";
-      sha256 = "0kg5wdclz9i64gcx27z5bs739hsvjrfl9kf1awi31x4142yxrva8";
-      system = "cl-notebook";
-      asd = "cl-notebook";
-    });
-    systems = [ "cl-notebook" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "anaphora" pkgs) (getAttr "cl-css" pkgs) (getAttr "cl-fad" pkgs) (getAttr "cl-who" pkgs) (getAttr "closer-mop" pkgs) (getAttr "fact-base" pkgs) (getAttr "house" pkgs) (getAttr "parenscript" pkgs) (getAttr "prove-asdf" pkgs) (getAttr "qlot" pkgs) (getAttr "quri" pkgs) ];
-  };
-  cl-notebook_slash_test = {
-    pname = "cl-notebook_test";
-    version = "20201220-git";
-    asds = [ "cl-notebook" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-notebook/2020-12-20/cl-notebook-20201220-git.tgz";
-      sha256 = "0kg5wdclz9i64gcx27z5bs739hsvjrfl9kf1awi31x4142yxrva8";
-      system = "cl-notebook";
-      asd = "cl-notebook";
-    });
-    systems = [ "cl-notebook/test" ];
-    lispLibs = [ (getAttr "cl-notebook" pkgs) (getAttr "prove-asdf" pkgs) (getAttr "test-utils" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  cl-ntp-client = {
-    pname = "cl-ntp-client";
-    version = "20210630-git";
-    asds = [ "cl-ntp-client" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-ntp-client/2021-06-30/cl-ntp-client-20210630-git.tgz";
-      sha256 = "1mc16bvs0l8srnxjcjg4m192rw5waq291zks2jslxmxij0pa28cm";
-      system = "cl-ntp-client";
-      asd = "cl-ntp-client";
-    });
-    systems = [ "cl-ntp-client" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "usocket" pkgs) ];
-  };
-  cl-ntriples = {
-    pname = "cl-ntriples";
-    version = "20190307-hg";
-    asds = [ "cl-ntriples" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-ntriples/2019-03-07/cl-ntriples-20190307-hg.tgz";
-      sha256 = "0k8q2r2nxkgxp91398gb0iwfy9kd2mn519nxxa3zq831c433l2mq";
-      system = "cl-ntriples";
-      asd = "cl-ntriples";
-    });
-    systems = [ "cl-ntriples" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) ];
-  };
-  cl-num-utils = {
-    pname = "cl-num-utils";
-    version = "20210531-git";
-    asds = [ "cl-num-utils" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-num-utils/2021-05-31/cl-num-utils-20210531-git.tgz";
-      sha256 = "15ihsxxs76xnldmqfsbxybckqjwrxwcpphgghiwzr2mnbqjpdqkh";
-      system = "cl-num-utils";
-      asd = "cl-num-utils";
-    });
-    systems = [ "cl-num-utils" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "anaphora" pkgs) (getAttr "array-operations" pkgs) (getAttr "cl-slice" pkgs) (getAttr "let-plus" pkgs) ];
-  };
-  cl-num-utils-tests = {
-    pname = "cl-num-utils-tests";
-    version = "20210531-git";
-    asds = [ "cl-num-utils-tests" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-num-utils/2021-05-31/cl-num-utils-20210531-git.tgz";
-      sha256 = "15ihsxxs76xnldmqfsbxybckqjwrxwcpphgghiwzr2mnbqjpdqkh";
-      system = "cl-num-utils-tests";
-      asd = "cl-num-utils";
-    });
-    systems = [ "cl-num-utils-tests" ];
-    lispLibs = [ (getAttr "cl-num-utils" pkgs) (getAttr "clunit" pkgs) ];
-  };
-  cl-oauth = {
-    pname = "cl-oauth";
-    version = "20150804-git";
-    asds = [ "cl-oauth" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-oauth/2015-08-04/cl-oauth-20150804-git.tgz";
-      sha256 = "1q4r5i3099684q5x9wqddrm9g88qm16nnra9glvxngywfjc5zzkk";
-      system = "cl-oauth";
-      asd = "cl-oauth";
-    });
-    systems = [ "cl-oauth" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "anaphora" pkgs) (getAttr "babel" pkgs) (getAttr "cl-base64" pkgs) (getAttr "closer-mop" pkgs) (getAttr "drakma" pkgs) (getAttr "f-underscore" pkgs) (getAttr "hunchentoot" pkgs) (getAttr "ironclad" pkgs) (getAttr "puri" pkgs) (getAttr "split-sequence" pkgs) (getAttr "trivial-garbage" pkgs) ];
-  };
-  cl-oauth_dot_tests = {
-    pname = "cl-oauth.tests";
-    version = "20150804-git";
-    asds = [ "cl-oauth.tests" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-oauth/2015-08-04/cl-oauth-20150804-git.tgz";
-      sha256 = "1q4r5i3099684q5x9wqddrm9g88qm16nnra9glvxngywfjc5zzkk";
-      system = "cl-oauth.tests";
-      asd = "cl-oauth";
-    });
-    systems = [ "cl-oauth.tests" ];
-    lispLibs = [ (getAttr "cl-oauth" pkgs) (getAttr "fiveam" pkgs) ];
-  };
-  cl-oclapi = {
-    pname = "cl-oclapi";
-    version = "20180831-git";
-    asds = [ "cl-oclapi" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-oclapi/2018-08-31/cl-oclapi-20180831-git.tgz";
-      sha256 = "0aix5ipw98fsnvg1w7qmrjbwgn70gn7vf5av21xsgblp2sd7w2aw";
-      system = "cl-oclapi";
-      asd = "cl-oclapi";
-    });
-    systems = [ "cl-oclapi" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cffi" pkgs) (getAttr "cl-annot" pkgs) (getAttr "cl-reexport" pkgs) ];
-  };
-  cl-oclapi-test = {
-    pname = "cl-oclapi-test";
-    version = "20180831-git";
-    asds = [ "cl-oclapi-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-oclapi/2018-08-31/cl-oclapi-20180831-git.tgz";
-      sha256 = "0aix5ipw98fsnvg1w7qmrjbwgn70gn7vf5av21xsgblp2sd7w2aw";
-      system = "cl-oclapi-test";
-      asd = "cl-oclapi-test";
-    });
-    systems = [ "cl-oclapi-test" ];
-    lispLibs = [ (getAttr "cl-annot" pkgs) (getAttr "cl-oclapi" pkgs) (getAttr "prove" pkgs) (getAttr "prove-asdf" pkgs) ];
-  };
-  cl-octet-streams = {
-    pname = "cl-octet-streams";
-    version = "20201220-git";
-    asds = [ "cl-octet-streams" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-octet-streams/2020-12-20/cl-octet-streams-20201220-git.tgz";
-      sha256 = "1hffh98bv4w5yrchagzwqrc43d2p473pvw7ka4kyyvhrr52dk2f8";
-      system = "cl-octet-streams";
-      asd = "cl-octet-streams";
-    });
-    systems = [ "cl-octet-streams" ];
-    lispLibs = [ (getAttr "trivial-gray-streams" pkgs) ];
-  };
-  cl-octet-streams_slash_tests = {
-    pname = "cl-octet-streams_tests";
-    version = "20201220-git";
-    asds = [ "cl-octet-streams" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-octet-streams/2020-12-20/cl-octet-streams-20201220-git.tgz";
-      sha256 = "1hffh98bv4w5yrchagzwqrc43d2p473pvw7ka4kyyvhrr52dk2f8";
-      system = "cl-octet-streams";
-      asd = "cl-octet-streams";
-    });
-    systems = [ "cl-octet-streams/tests" ];
-    lispLibs = [ (getAttr "cl-octet-streams" pkgs) (getAttr "fiveam" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  cl-ode = {
-    pname = "cl-ode";
-    version = "20160628-git";
-    asds = [ "cl-ode" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-ode/2016-06-28/cl-ode-20160628-git.tgz";
-      sha256 = "1pxm2pq0br0rhdfnvs5jqfkxfs8bc9wdqrzwyv83l8n7pax941b0";
-      system = "cl-ode";
-      asd = "cl-ode";
-    });
-    systems = [ "cl-ode" ];
-    lispLibs = [ (getAttr "cffi" pkgs) ];
-  };
-  cl-ohm = {
-    pname = "cl-ohm";
-    version = "20180228-git";
-    asds = [ "cl-ohm" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-ohm/2018-02-28/cl-ohm-20180228-git.tgz";
-      sha256 = "00gdfsiba761gk7xw91wfnr9yv84maagf9idh55bk5bs4ws1ymyp";
-      system = "cl-ohm";
-      asd = "cl-ohm";
-    });
-    systems = [ "cl-ohm" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cl-redis" pkgs) (getAttr "closer-mop" pkgs) ];
-  };
-  cl-ohm_slash_test = {
-    pname = "cl-ohm_test";
-    version = "20180228-git";
-    asds = [ "cl-ohm" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-ohm/2018-02-28/cl-ohm-20180228-git.tgz";
-      sha256 = "00gdfsiba761gk7xw91wfnr9yv84maagf9idh55bk5bs4ws1ymyp";
-      system = "cl-ohm";
-      asd = "cl-ohm";
-    });
-    systems = [ "cl-ohm/test" ];
-    lispLibs = [ (getAttr "cl-ohm" pkgs) (getAttr "fiveam" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  cl-oju = {
-    pname = "cl-oju";
-    version = "20221106-git";
-    asds = [ "cl-oju" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-oju/2022-11-06/cl-oju-20221106-git.tgz";
-      sha256 = "0xj8csalyrcpj1r0k7l0qdqyrm8s3vw60dmg5pgi59lif98l491x";
-      system = "cl-oju";
-      asd = "cl-oju";
-    });
-    systems = [ "cl-oju" ];
-    lispLibs = [ (getAttr "_1am" pkgs) ];
-  };
-  cl-oju_slash_test = {
-    pname = "cl-oju_test";
-    version = "20221106-git";
-    asds = [ "cl-oju" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-oju/2022-11-06/cl-oju-20221106-git.tgz";
-      sha256 = "0xj8csalyrcpj1r0k7l0qdqyrm8s3vw60dmg5pgi59lif98l491x";
-      system = "cl-oju";
-      asd = "cl-oju";
-    });
-    systems = [ "cl-oju/test" ];
-    lispLibs = [ (getAttr "_1am" pkgs) (getAttr "cl-oju" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  cl-olefs = {
-    pname = "cl-olefs";
-    version = "20150709-git";
-    asds = [ "cl-olefs" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-olefs/2015-07-09/cl-olefs-20150709-git.tgz";
-      sha256 = "0cqna6zzfrjmsq17yc4wg204kr77riczqjpm1w5cj1mba43zcac7";
-      system = "cl-olefs";
-      asd = "cl-olefs";
-    });
-    systems = [ "cl-olefs" ];
-    lispLibs = [  ];
-  };
-  cl-one-time-passwords = {
-    pname = "cl-one-time-passwords";
-    version = "20171019-git";
-    asds = [ "cl-one-time-passwords" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-one-time-passwords/2017-10-19/cl-one-time-passwords-20171019-git.tgz";
-      sha256 = "1nhq2jij257cfaadh9k421qaisicxpmx3wsc4kivf1psgbrc56lg";
-      system = "cl-one-time-passwords";
-      asd = "cl-one-time-passwords";
-    });
-    systems = [ "cl-one-time-passwords" ];
-    lispLibs = [ (getAttr "ironclad" pkgs) ];
-  };
-  cl-one-time-passwords-test = {
-    pname = "cl-one-time-passwords-test";
-    version = "20171019-git";
-    asds = [ "cl-one-time-passwords-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-one-time-passwords/2017-10-19/cl-one-time-passwords-20171019-git.tgz";
-      sha256 = "1nhq2jij257cfaadh9k421qaisicxpmx3wsc4kivf1psgbrc56lg";
-      system = "cl-one-time-passwords-test";
-      asd = "cl-one-time-passwords-test";
-    });
-    systems = [ "cl-one-time-passwords-test" ];
-    lispLibs = [ (getAttr "cl-one-time-passwords" pkgs) (getAttr "fiveam" pkgs) ];
-  };
-  cl-oneliner = {
-    pname = "cl-oneliner";
-    version = "20131003-git";
-    asds = [ "cl-oneliner" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/oneliner/2013-10-03/oneliner-20131003-git.tgz";
-      sha256 = "0q9350s0r9yjmfc2360g35qi04b3867gd7hw5ada4176whinmjxb";
-      system = "cl-oneliner";
-      asd = "cl-oneliner";
-    });
-    systems = [ "cl-oneliner" ];
-    lispLibs = [ (getAttr "cl-ppcre" pkgs) (getAttr "lisp-unit" pkgs) (getAttr "split-sequence" pkgs) ];
-  };
-  cl-online-learning = {
-    pname = "cl-online-learning";
-    version = "20220331-git";
-    asds = [ "cl-online-learning" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-online-learning/2022-03-31/cl-online-learning-20220331-git.tgz";
-      sha256 = "136v9kxcy53qar2j4y38awnw2idnf0lwxqwx7wgak664w3hxs6k8";
-      system = "cl-online-learning";
-      asd = "cl-online-learning";
-    });
-    systems = [ "cl-online-learning" ];
-    lispLibs = [ (getAttr "cl-libsvm-format" pkgs) (getAttr "cl-store" pkgs) ];
-  };
-  cl-online-learning-test = {
-    pname = "cl-online-learning-test";
-    version = "20220331-git";
-    asds = [ "cl-online-learning-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-online-learning/2022-03-31/cl-online-learning-20220331-git.tgz";
-      sha256 = "136v9kxcy53qar2j4y38awnw2idnf0lwxqwx7wgak664w3hxs6k8";
-      system = "cl-online-learning-test";
-      asd = "cl-online-learning-test";
-    });
-    systems = [ "cl-online-learning-test" ];
-    lispLibs = [ (getAttr "cl-online-learning" pkgs) (getAttr "prove" pkgs) (getAttr "prove-asdf" pkgs) ];
-  };
-  cl-openal = {
-    pname = "cl-openal";
-    version = "20221106-git";
-    asds = [ "cl-openal" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-openal/2022-11-06/cl-openal-20221106-git.tgz";
-      sha256 = "0jmp81mf23ckcm4knnh0q7zpmyls5220imaqbmnl0xvvra10b1zy";
-      system = "cl-openal";
-      asd = "cl-openal";
-    });
-    systems = [ "cl-openal" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cffi" pkgs) ];
-  };
-  cl-openal-examples = {
-    pname = "cl-openal-examples";
-    version = "20221106-git";
-    asds = [ "cl-openal-examples" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-openal/2022-11-06/cl-openal-20221106-git.tgz";
-      sha256 = "0jmp81mf23ckcm4knnh0q7zpmyls5220imaqbmnl0xvvra10b1zy";
-      system = "cl-openal-examples";
-      asd = "cl-openal-examples";
-    });
-    systems = [ "cl-openal-examples" ];
-    lispLibs = [ (getAttr "cffi" pkgs) (getAttr "cl-alc" pkgs) (getAttr "cl-alut" pkgs) (getAttr "cl-openal" pkgs) ];
-  };
-  cl-opencl = {
-    pname = "cl-opencl";
-    version = "20211209-git";
-    asds = [ "cl-opencl" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-opencl/2021-12-09/cl-opencl-20211209-git.tgz";
-      sha256 = "1agg6rg7lsbq2jgarx25bwm1nw22jpl20bzhyn4ivygcgzp2mv29";
-      system = "cl-opencl";
-      asd = "cl-opencl";
-    });
-    systems = [ "cl-opencl" ];
-    lispLibs = [ (getAttr "cffi" pkgs) (getAttr "cffi-grovel" pkgs) ];
-  };
-  cl-opencl-utils = {
-    pname = "cl-opencl-utils";
-    version = "20211020-git";
-    asds = [ "cl-opencl-utils" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-opencl-utils/2021-10-20/cl-opencl-utils-20211020-git.tgz";
-      sha256 = "15q3n78b57k9hlprwh8wnga7ciq56wmcmimi32486sygl1ccg47n";
-      system = "cl-opencl-utils";
-      asd = "cl-opencl-utils";
-    });
-    systems = [ "cl-opencl-utils" ];
-    lispLibs = [ (getAttr "cl-opencl" pkgs) ];
-  };
-  cl-opengl = {
-    pname = "cl-opengl";
-    version = "20191130-git";
-    asds = [ "cl-opengl" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-opengl/2019-11-30/cl-opengl-20191130-git.tgz";
-      sha256 = "0mhqmll09f079pnd6mgswz9nvr6h5n27d4q7zpmm2igf1v460id7";
-      system = "cl-opengl";
-      asd = "cl-opengl";
-    });
-    systems = [ "cl-opengl" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cffi" pkgs) (getAttr "float-features" pkgs) ];
-  };
-  cl-opengl_slash_es2 = {
-    pname = "cl-opengl_es2";
-    version = "20191130-git";
-    asds = [ "cl-opengl" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-opengl/2019-11-30/cl-opengl-20191130-git.tgz";
-      sha256 = "0mhqmll09f079pnd6mgswz9nvr6h5n27d4q7zpmm2igf1v460id7";
-      system = "cl-opengl";
-      asd = "cl-opengl";
-    });
-    systems = [ "cl-opengl/es2" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cffi" pkgs) (getAttr "float-features" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  cl-openstack-client = {
-    pname = "cl-openstack-client";
-    version = "20191007-git";
-    asds = [ "cl-openstack-client" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-openstack-client/2019-10-07/cl-openstack-client-20191007-git.tgz";
-      sha256 = "1sak75i82vn3acg7bxx8vjbw2y35wbq1vkh1yqhs68ksnph6d097";
-      system = "cl-openstack-client";
-      asd = "cl-openstack-client";
-    });
-    systems = [ "cl-openstack-client" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cl-json" pkgs) (getAttr "drakma" pkgs) (getAttr "local-time" pkgs) (getAttr "uri-template" pkgs) ];
-  };
-  cl-openstack-client-test = {
-    pname = "cl-openstack-client-test";
-    version = "20191007-git";
-    asds = [ "cl-openstack-client-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-openstack-client/2019-10-07/cl-openstack-client-20191007-git.tgz";
-      sha256 = "1sak75i82vn3acg7bxx8vjbw2y35wbq1vkh1yqhs68ksnph6d097";
-      system = "cl-openstack-client-test";
-      asd = "cl-openstack-client-test";
-    });
-    systems = [ "cl-openstack-client-test" ];
-    lispLibs = [ (getAttr "chunga" pkgs) (getAttr "cl-openstack-client" pkgs) (getAttr "cl-ppcre" pkgs) (getAttr "drakma" pkgs) (getAttr "fiveam" pkgs) (getAttr "flexi-streams" pkgs) (getAttr "local-time" pkgs) (getAttr "trivial-gray-streams" pkgs) ];
-  };
-  cl-opsresearch = {
-    pname = "cl-opsresearch";
-    version = "20170403-git";
-    asds = [ "cl-opsresearch" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-opsresearch/2017-04-03/cl-opsresearch-20170403-git.tgz";
-      sha256 = "1fipw6qjggswzcg8ifwx5qnhnc7mmi53s6h14l0vzj6afa5rdpm7";
-      system = "cl-opsresearch";
-      asd = "cl-opsresearch";
-    });
-    systems = [ "cl-opsresearch" ];
-    lispLibs = [ (getAttr "cffi" pkgs) ];
-  };
-  cl-org-mode = {
-    pname = "cl-org-mode";
-    version = "20101207-git";
-    asds = [ "cl-org-mode" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-org-mode/2010-12-07/cl-org-mode-20101207-git.tgz";
-      sha256 = "1fvwl9jlbpd352b5zn2d45mabsim5xvzabwyz1h10hwv4gviymzf";
-      system = "cl-org-mode";
-      asd = "cl-org-mode";
-    });
-    systems = [ "cl-org-mode" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "closer-mop" pkgs) ];
-  };
-  cl-out123 = {
-    pname = "cl-out123";
-    version = "20190710-git";
-    asds = [ "cl-out123" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-out123/2019-07-10/cl-out123-20190710-git.tgz";
-      sha256 = "0mdwgfax6sq68wvdgjjp78i40ah7wqkpqnvaq8a1c509k7ghdgv1";
-      system = "cl-out123";
-      asd = "cl-out123";
-    });
-    systems = [ "cl-out123" ];
-    lispLibs = [ (getAttr "bordeaux-threads" pkgs) (getAttr "cffi" pkgs) (getAttr "documentation-utils" pkgs) (getAttr "trivial-features" pkgs) (getAttr "trivial-garbage" pkgs) ];
-  };
-  cl-pack = {
-    pname = "cl-pack";
-    version = "20200427-git";
-    asds = [ "cl-pack" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-pack/2020-04-27/cl-pack-20200427-git.tgz";
-      sha256 = "0q7gawy0cwy49m1mxgj0jqnzzckk2ps74ncfaw1pqiqilfyx7np6";
-      system = "cl-pack";
-      asd = "cl-pack";
-    });
-    systems = [ "cl-pack" ];
-    lispLibs = [ (getAttr "ieee-floats" pkgs) ];
-  };
-  cl-pack-test = {
-    pname = "cl-pack-test";
-    version = "20200427-git";
-    asds = [ "cl-pack-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-pack/2020-04-27/cl-pack-20200427-git.tgz";
-      sha256 = "0q7gawy0cwy49m1mxgj0jqnzzckk2ps74ncfaw1pqiqilfyx7np6";
-      system = "cl-pack-test";
-      asd = "cl-pack";
-    });
-    systems = [ "cl-pack-test" ];
-    lispLibs = [ (getAttr "cl-pack" pkgs) ];
-  };
-  cl-package-locks = {
-    pname = "cl-package-locks";
-    version = "20111203-git";
-    asds = [ "cl-package-locks" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-package-locks/2011-12-03/cl-package-locks-20111203-git.tgz";
-      sha256 = "0g3gfljnvpgd66ccd2sqawlkwqx4a0wsdrg5180va61w869cgxqq";
-      system = "cl-package-locks";
-      asd = "cl-package-locks";
-    });
-    systems = [ "cl-package-locks" ];
-    lispLibs = [  ];
-  };
-  cl-pango = {
-    pname = "cl-pango";
-    version = "20170403-git";
-    asds = [ "cl-pango" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-pango/2017-04-03/cl-pango-20170403-git.tgz";
-      sha256 = "0zkn4yn8nkkjr0x1vcy856cvbmnyhdidqz0in8xvd2i93jvw5w0i";
-      system = "cl-pango";
-      asd = "cl-pango";
-    });
-    systems = [ "cl-pango" ];
-    lispLibs = [ (getAttr "cffi" pkgs) (getAttr "cl-cairo2" pkgs) (getAttr "xmls" pkgs) ];
-  };
-  cl-parallel = {
-    pname = "cl-parallel";
-    version = "20130312-git";
-    asds = [ "cl-parallel" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-parallel/2013-03-12/cl-parallel-20130312-git.tgz";
-      sha256 = "1hmkcbwkj7rx8zg5wf2w06nvbabldpr7hbbg1ycj0fss86s2cx2c";
-      system = "cl-parallel";
-      asd = "cl-parallel";
-    });
-    systems = [ "cl-parallel" ];
-    lispLibs = [ (getAttr "bordeaux-threads" pkgs) ];
-  };
-  cl-pass = {
-    pname = "cl-pass";
-    version = "20201220-git";
-    asds = [ "cl-pass" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-pass/2020-12-20/cl-pass-20201220-git.tgz";
-      sha256 = "05qx4jrkxqbqi72cxgswbpnifbdvp9mh7apc7566v522899bh0hb";
-      system = "cl-pass";
-      asd = "cl-pass";
-    });
-    systems = [ "cl-pass" ];
-    lispLibs = [ (getAttr "ironclad" pkgs) (getAttr "split-sequence" pkgs) (getAttr "trivial-utf-8" pkgs) ];
-  };
-  cl-pass-test = {
-    pname = "cl-pass-test";
-    version = "20201220-git";
-    asds = [ "cl-pass-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-pass/2020-12-20/cl-pass-20201220-git.tgz";
-      sha256 = "05qx4jrkxqbqi72cxgswbpnifbdvp9mh7apc7566v522899bh0hb";
-      system = "cl-pass-test";
-      asd = "cl-pass-test";
-    });
-    systems = [ "cl-pass-test" ];
-    lispLibs = [ (getAttr "cl-pass" pkgs) (getAttr "fiveam" pkgs) ];
-  };
-  cl-paths = {
-    pname = "cl-paths";
-    version = "20180228-git";
-    asds = [ "cl-paths" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-vectors/2018-02-28/cl-vectors-20180228-git.tgz";
-      sha256 = "0nckw4zb6s96hll8hrxzvgs2an3bfm0pxcywshbm4bq4rn7niqg4";
-      system = "cl-paths";
-      asd = "cl-paths";
-    });
-    systems = [ "cl-paths" ];
-    lispLibs = [  ];
-  };
-  cl-paths-ttf = {
-    pname = "cl-paths-ttf";
-    version = "20180228-git";
-    asds = [ "cl-paths-ttf" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-vectors/2018-02-28/cl-vectors-20180228-git.tgz";
-      sha256 = "0nckw4zb6s96hll8hrxzvgs2an3bfm0pxcywshbm4bq4rn7niqg4";
-      system = "cl-paths-ttf";
-      asd = "cl-paths-ttf";
-    });
-    systems = [ "cl-paths-ttf" ];
-    lispLibs = [ (getAttr "cl-paths" pkgs) (getAttr "zpb-ttf" pkgs) ];
-  };
-  cl-pattern = {
-    pname = "cl-pattern";
-    version = "20140713-git";
-    asds = [ "cl-pattern" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-pattern/2014-07-13/cl-pattern-20140713-git.tgz";
-      sha256 = "0kc1yynn1ysa7bcaazhi1pq8l3hj3jq6p835kh5di7g1imrfkrny";
-      system = "cl-pattern";
-      asd = "cl-pattern";
-    });
-    systems = [ "cl-pattern" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cl-annot" pkgs) (getAttr "cl-syntax" pkgs) (getAttr "cl-syntax-annot" pkgs) ];
-  };
-  cl-pattern-benchmark = {
-    pname = "cl-pattern-benchmark";
-    version = "20140713-git";
-    asds = [ "cl-pattern-benchmark" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-pattern/2014-07-13/cl-pattern-20140713-git.tgz";
-      sha256 = "0kc1yynn1ysa7bcaazhi1pq8l3hj3jq6p835kh5di7g1imrfkrny";
-      system = "cl-pattern-benchmark";
-      asd = "cl-pattern-benchmark";
-    });
-    systems = [ "cl-pattern-benchmark" ];
-    lispLibs = [ (getAttr "cl-pattern" pkgs) ];
-  };
-  cl-patterns = {
-    pname = "cl-patterns";
-    version = "20221106-git";
-    asds = [ "cl-patterns" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-patterns/2022-11-06/cl-patterns-20221106-git.tgz";
-      sha256 = "0hgr6f3f3iggbacpkglqykah0xjimnbn21z4fliw3qgzzagz6hbb";
-      system = "cl-patterns";
-      asd = "cl-patterns";
-    });
-    systems = [ "cl-patterns" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "bordeaux-threads" pkgs) (getAttr "closer-mop" pkgs) (getAttr "dissect" pkgs) (getAttr "local-time" pkgs) (getAttr "mutility" pkgs) (getAttr "named-readtables" pkgs) ];
-  };
-  cl-patterns_slash_debug = {
-    pname = "cl-patterns_debug";
-    version = "20221106-git";
-    asds = [ "cl-patterns" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-patterns/2022-11-06/cl-patterns-20221106-git.tgz";
-      sha256 = "0hgr6f3f3iggbacpkglqykah0xjimnbn21z4fliw3qgzzagz6hbb";
-      system = "cl-patterns";
-      asd = "cl-patterns";
-    });
-    systems = [ "cl-patterns/debug" ];
-    lispLibs = [ (getAttr "cl-patterns" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  cl-patterns_slash_generic-cl = {
-    pname = "cl-patterns_generic-cl";
-    version = "20221106-git";
-    asds = [ "cl-patterns" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-patterns/2022-11-06/cl-patterns-20221106-git.tgz";
-      sha256 = "0hgr6f3f3iggbacpkglqykah0xjimnbn21z4fliw3qgzzagz6hbb";
-      system = "cl-patterns";
-      asd = "cl-patterns";
-    });
-    systems = [ "cl-patterns/generic-cl" ];
-    lispLibs = [ (getAttr "cl-patterns" pkgs) (getAttr "generic-cl" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  cl-patterns_slash_midifile = {
-    pname = "cl-patterns_midifile";
-    version = "20221106-git";
-    asds = [ "cl-patterns" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-patterns/2022-11-06/cl-patterns-20221106-git.tgz";
-      sha256 = "0hgr6f3f3iggbacpkglqykah0xjimnbn21z4fliw3qgzzagz6hbb";
-      system = "cl-patterns";
-      asd = "cl-patterns";
-    });
-    systems = [ "cl-patterns/midifile" ];
-    lispLibs = [ (getAttr "cl-patterns" pkgs) (getAttr "midi" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  cl-patterns_slash_sugar = {
-    pname = "cl-patterns_sugar";
-    version = "20221106-git";
-    asds = [ "cl-patterns" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-patterns/2022-11-06/cl-patterns-20221106-git.tgz";
-      sha256 = "0hgr6f3f3iggbacpkglqykah0xjimnbn21z4fliw3qgzzagz6hbb";
-      system = "cl-patterns";
-      asd = "cl-patterns";
-    });
-    systems = [ "cl-patterns/sugar" ];
-    lispLibs = [ (getAttr "cl-patterns" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  cl-patterns_slash_supercollider = {
-    pname = "cl-patterns_supercollider";
-    version = "20221106-git";
-    asds = [ "cl-patterns" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-patterns/2022-11-06/cl-patterns-20221106-git.tgz";
-      sha256 = "0hgr6f3f3iggbacpkglqykah0xjimnbn21z4fliw3qgzzagz6hbb";
-      system = "cl-patterns";
-      asd = "cl-patterns";
-    });
-    systems = [ "cl-patterns/supercollider" ];
-    lispLibs = [ (getAttr "cl-collider" pkgs) (getAttr "cl-patterns" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  cl-patterns_slash_tests = {
-    pname = "cl-patterns_tests";
-    version = "20221106-git";
-    asds = [ "cl-patterns" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-patterns/2022-11-06/cl-patterns-20221106-git.tgz";
-      sha256 = "0hgr6f3f3iggbacpkglqykah0xjimnbn21z4fliw3qgzzagz6hbb";
-      system = "cl-patterns";
-      asd = "cl-patterns";
-    });
-    systems = [ "cl-patterns/tests" ];
-    lispLibs = [ (getAttr "cl-org-mode" pkgs) (getAttr "cl-patterns" pkgs) (getAttr "cl-ppcre" pkgs) (getAttr "fiveam" pkgs) (getAttr "mutility" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  cl-paymill = {
-    pname = "cl-paymill";
-    version = "20131111-git";
-    asds = [ "cl-paymill" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-paymill/2013-11-11/cl-paymill-20131111-git.tgz";
-      sha256 = "1dhddmw7gxfxbv1vfqi6nzyh8m5n3b160ch6ianf5sn6apmi92nw";
-      system = "cl-paymill";
-      asd = "cl-paymill";
-    });
-    systems = [ "cl-paymill" ];
-    lispLibs = [ (getAttr "cl_plus_ssl" pkgs) (getAttr "drakma" pkgs) (getAttr "st-json" pkgs) ];
-  };
-  cl-paypal = {
-    pname = "cl-paypal";
-    version = "20101006-git";
-    asds = [ "cl-paypal" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-paypal/2010-10-06/cl-paypal-20101006-git.tgz";
-      sha256 = "0cc6zv17klgiyj1mbbrkbvajkr6dwsjv3iilh57vhdqd01lrhnb2";
-      system = "cl-paypal";
-      asd = "cl-paypal";
-    });
-    systems = [ "cl-paypal" ];
-    lispLibs = [ (getAttr "cl-ppcre" pkgs) (getAttr "drakma" pkgs) (getAttr "hunchentoot" pkgs) ];
-  };
-  cl-pcg = {
-    pname = "cl-pcg";
-    version = "20201016-hg";
-    asds = [ "cl-pcg" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-pcg/2020-10-16/cl-pcg-20201016-hg.tgz";
-      sha256 = "1w2b2y5fgjc6z8akvlmwasj90dnjv55nvb8pghq4xpv43hfy73mp";
-      system = "cl-pcg";
-      asd = "cl-pcg";
-    });
-    systems = [ "cl-pcg" ];
-    lispLibs = [  ];
-  };
-  cl-pcg_dot_test = {
-    pname = "cl-pcg.test";
-    version = "20201016-hg";
-    asds = [ "cl-pcg.test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-pcg/2020-10-16/cl-pcg-20201016-hg.tgz";
-      sha256 = "1w2b2y5fgjc6z8akvlmwasj90dnjv55nvb8pghq4xpv43hfy73mp";
-      system = "cl-pcg.test";
-      asd = "cl-pcg.test";
-    });
-    systems = [ "cl-pcg.test" ];
-    lispLibs = [ (getAttr "_1am" pkgs) (getAttr "cl-pcg" pkgs) ];
-  };
-  cl-pdf = {
-    pname = "cl-pdf";
-    version = "20221106-git";
-    asds = [ "cl-pdf" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-pdf/2022-11-06/cl-pdf-20221106-git.tgz";
-      sha256 = "1qk22mxmq2wxj9hc27cn51bwia9llzlxfmhl04l7kvqv9ki4z0j2";
-      system = "cl-pdf";
-      asd = "cl-pdf";
-    });
-    systems = [ "cl-pdf" ];
-    lispLibs = [ (getAttr "iterate" pkgs) (getAttr "uiop" pkgs) (getAttr "zpb-ttf" pkgs) ];
-  };
-  cl-pdf-doc = {
-    pname = "cl-pdf-doc";
-    version = "20210531-git";
-    asds = [ "cl-pdf-doc" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-typesetting/2021-05-31/cl-typesetting-20210531-git.tgz";
-      sha256 = "0fcs5mq0gxfczbrg7ay8r4bf5r4g6blvpdbjkhcl8dapcikyn35h";
-      system = "cl-pdf-doc";
-      asd = "cl-pdf-doc";
-    });
-    systems = [ "cl-pdf-doc" ];
-    lispLibs = [ (getAttr "cl-pdf" pkgs) (getAttr "cl-typesetting" pkgs) ];
-  };
-  cl-pdf-parser = {
-    pname = "cl-pdf-parser";
-    version = "20221106-git";
-    asds = [ "cl-pdf-parser" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-pdf/2022-11-06/cl-pdf-20221106-git.tgz";
-      sha256 = "1qk22mxmq2wxj9hc27cn51bwia9llzlxfmhl04l7kvqv9ki4z0j2";
-      system = "cl-pdf-parser";
-      asd = "cl-pdf-parser";
-    });
-    systems = [ "cl-pdf-parser" ];
-    lispLibs = [ (getAttr "cl-pdf" pkgs) ];
-  };
-  cl-performance-tuning-helper = {
-    pname = "cl-performance-tuning-helper";
-    version = "20130615-git";
-    asds = [ "cl-performance-tuning-helper" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-performance-tuning-helper/2013-06-15/cl-performance-tuning-helper-20130615-git.tgz";
-      sha256 = "1j0k319il271grm6hjqq2bazp5l105lazayqsmpsy8lsy4lmy0c3";
-      system = "cl-performance-tuning-helper";
-      asd = "cl-performance-tuning-helper";
-    });
-    systems = [ "cl-performance-tuning-helper" ];
-    lispLibs = [  ];
-  };
-  cl-performance-tuning-helper-test = {
-    pname = "cl-performance-tuning-helper-test";
-    version = "20130615-git";
-    asds = [ "cl-performance-tuning-helper-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-performance-tuning-helper/2013-06-15/cl-performance-tuning-helper-20130615-git.tgz";
-      sha256 = "1j0k319il271grm6hjqq2bazp5l105lazayqsmpsy8lsy4lmy0c3";
-      system = "cl-performance-tuning-helper-test";
-      asd = "cl-performance-tuning-helper-test";
-    });
-    systems = [ "cl-performance-tuning-helper-test" ];
-    lispLibs = [ (getAttr "cl-performance-tuning-helper" pkgs) (getAttr "rt" pkgs) ];
-  };
-  cl-permutation = {
-    pname = "cl-permutation";
-    version = "20211209-git";
-    asds = [ "cl-permutation" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-permutation/2021-12-09/cl-permutation-20211209-git.tgz";
-      sha256 = "0i932g0k50y24hxizni6zfya4kcw77yk3b0llivm9g50s7fxj9dk";
-      system = "cl-permutation";
-      asd = "cl-permutation";
-    });
-    systems = [ "cl-permutation" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "bordeaux-fft" pkgs) (getAttr "cl-algebraic-data-type" pkgs) (getAttr "closer-mop" pkgs) (getAttr "iterate" pkgs) (getAttr "uiop" pkgs) ];
-  };
-  cl-permutation-examples = {
-    pname = "cl-permutation-examples";
-    version = "20211209-git";
-    asds = [ "cl-permutation-examples" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-permutation/2021-12-09/cl-permutation-20211209-git.tgz";
-      sha256 = "0i932g0k50y24hxizni6zfya4kcw77yk3b0llivm9g50s7fxj9dk";
-      system = "cl-permutation-examples";
-      asd = "cl-permutation-examples";
-    });
-    systems = [ "cl-permutation-examples" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cl-permutation" pkgs) ];
-  };
-  cl-permutation-tests = {
-    pname = "cl-permutation-tests";
-    version = "20211209-git";
-    asds = [ "cl-permutation-tests" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-permutation/2021-12-09/cl-permutation-20211209-git.tgz";
-      sha256 = "0i932g0k50y24hxizni6zfya4kcw77yk3b0llivm9g50s7fxj9dk";
-      system = "cl-permutation-tests";
-      asd = "cl-permutation-tests";
-    });
-    systems = [ "cl-permutation-tests" ];
-    lispLibs = [ (getAttr "cl-permutation" pkgs) (getAttr "cl-permutation-examples" pkgs) (getAttr "fiasco" pkgs) ];
-  };
-  cl-photo = {
-    pname = "cl-photo";
-    version = "20150923-git";
-    asds = [ "cl-photo" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-photo/2015-09-23/cl-photo-20150923-git.tgz";
-      sha256 = "03rzsi1rqvlnw43z7kh5sy1h8gjxc5n0cfryfkkqnhym9q9186mj";
-      system = "cl-photo";
-      asd = "cl-photo";
-    });
-    systems = [ "cl-photo" ];
-    lispLibs = [ (getAttr "kmrcl" pkgs) ];
-  };
-  cl-photo-tests = {
-    pname = "cl-photo-tests";
-    version = "20150923-git";
-    asds = [ "cl-photo-tests" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-photo/2015-09-23/cl-photo-20150923-git.tgz";
-      sha256 = "03rzsi1rqvlnw43z7kh5sy1h8gjxc5n0cfryfkkqnhym9q9186mj";
-      system = "cl-photo-tests";
-      asd = "cl-photo-tests";
-    });
-    systems = [ "cl-photo-tests" ];
-    lispLibs = [ (getAttr "cl-photo" pkgs) (getAttr "rt" pkgs) ];
-  };
-  cl-plplot = {
-    pname = "cl-plplot";
-    version = "20180228-git";
-    asds = [ "cl-plplot" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-plplot/2018-02-28/cl-plplot-20180228-git.tgz";
-      sha256 = "0hfgq47ga2r764jfc3ywaz5ynnvp701fjhbw0s4j1mrw4gaf6y6w";
-      system = "cl-plplot";
-      asd = "cl-plplot";
-    });
-    systems = [ "cl-plplot" ];
-    lispLibs = [ (getAttr "cffi" pkgs) ];
-  };
-  cl-plumbing = {
-    pname = "cl-plumbing";
-    version = "20181018-git";
-    asds = [ "cl-plumbing" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-plumbing/2018-10-18/cl-plumbing-20181018-git.tgz";
-      sha256 = "0bc4qqj0c4hghwx8jm3vg422c3i8livv3vvzfzi0gw79khaqdiyr";
-      system = "cl-plumbing";
-      asd = "cl-plumbing";
-    });
-    systems = [ "cl-plumbing" ];
-    lispLibs = [ (getAttr "bordeaux-threads" pkgs) (getAttr "iterate" pkgs) (getAttr "trivial-gray-streams" pkgs) ];
-  };
-  cl-plumbing-test = {
-    pname = "cl-plumbing-test";
-    version = "20181018-git";
-    asds = [ "cl-plumbing-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-plumbing/2018-10-18/cl-plumbing-20181018-git.tgz";
-      sha256 = "0bc4qqj0c4hghwx8jm3vg422c3i8livv3vvzfzi0gw79khaqdiyr";
-      system = "cl-plumbing-test";
-      asd = "cl-plumbing-test";
-    });
-    systems = [ "cl-plumbing-test" ];
-    lispLibs = [ (getAttr "cl-plumbing" pkgs) (getAttr "iterate" pkgs) (getAttr "stefil" pkgs) ];
-  };
-  cl-plus-c = {
-    pname = "cl-plus-c";
-    version = "20221106-git";
-    asds = [ "cl-plus-c" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-autowrap/2022-11-06/cl-autowrap-20221106-git.tgz";
-      sha256 = "0pbabpmg61bflx6kxllqvhbvxqwjsik3nnynqdhgzzkgzk6jlixv";
-      system = "cl-plus-c";
-      asd = "cl-plus-c";
-    });
-    systems = [ "cl-plus-c" ];
-    lispLibs = [ (getAttr "cl-autowrap" pkgs) ];
-  };
-  cl-ply = {
-    pname = "cl-ply";
-    version = "20150505-git";
-    asds = [ "cl-ply" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-ply/2015-05-05/cl-ply-20150505-git.tgz";
-      sha256 = "1va3il5ahvziwm6i3f2zy3vchv0qkh1l7jci7gnfam43gf88fl12";
-      system = "cl-ply";
-      asd = "cl-ply";
-    });
-    systems = [ "cl-ply" ];
-    lispLibs = [ (getAttr "cl-pattern" pkgs) (getAttr "cl-ppcre" pkgs) ];
-  };
-  cl-ply-test = {
-    pname = "cl-ply-test";
-    version = "20150505-git";
-    asds = [ "cl-ply-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-ply/2015-05-05/cl-ply-20150505-git.tgz";
-      sha256 = "1va3il5ahvziwm6i3f2zy3vchv0qkh1l7jci7gnfam43gf88fl12";
-      system = "cl-ply-test";
-      asd = "cl-ply-test";
-    });
-    systems = [ "cl-ply-test" ];
-    lispLibs = [ (getAttr "cl-ply" pkgs) (getAttr "prove" pkgs) (getAttr "prove-asdf" pkgs) ];
-  };
-  cl-poker-eval = {
-    pname = "cl-poker-eval";
-    version = "20150804-git";
-    asds = [ "cl-poker-eval" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-poker-eval/2015-08-04/cl-poker-eval-20150804-git.tgz";
-      sha256 = "1w4dsr4j7r3n7p0jbp8ccwwk83wcjjiz1rhhfrqpsd9v263v7kw8";
-      system = "cl-poker-eval";
-      asd = "cl-poker-eval";
-    });
-    systems = [ "cl-poker-eval" ];
-    lispLibs = [  ];
-  };
-  cl-pop = {
-    pname = "cl-pop";
-    version = "20110418-http";
-    asds = [ "cl-pop" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-pop/2011-04-18/cl-pop-20110418-http.tgz";
-      sha256 = "1g47p9w2pzf7glx92cz859di9pz454xpaq97p76lcvyilxk6q819";
-      system = "cl-pop";
-      asd = "cl-pop";
-    });
-    systems = [ "cl-pop" ];
-    lispLibs = [ (getAttr "cl-ppcre" pkgs) (getAttr "usocket" pkgs) ];
-  };
-  cl-portaudio = {
-    pname = "cl-portaudio";
-    version = "20201220-git";
-    asds = [ "cl-portaudio" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-portaudio/2020-12-20/cl-portaudio-20201220-git.tgz";
-      sha256 = "177c6bgf30caj5qpzfnzhbamax7c5zm2p4911mw7fay94vjs7zyb";
-      system = "cl-portaudio";
-      asd = "cl-portaudio";
-    });
-    systems = [ "cl-portaudio" ];
-    lispLibs = [ (getAttr "cffi" pkgs) (getAttr "ffa" pkgs) ];
-  };
-  cl-portaudio_slash_doc = {
-    pname = "cl-portaudio_doc";
-    version = "20201220-git";
-    asds = [ "cl-portaudio" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-portaudio/2020-12-20/cl-portaudio-20201220-git.tgz";
-      sha256 = "177c6bgf30caj5qpzfnzhbamax7c5zm2p4911mw7fay94vjs7zyb";
-      system = "cl-portaudio";
-      asd = "cl-portaudio";
-    });
-    systems = [ "cl-portaudio/doc" ];
-    lispLibs = [ (getAttr "atdoc" pkgs) (getAttr "cl-portaudio" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  cl-portaudio_slash_tests = {
-    pname = "cl-portaudio_tests";
-    version = "20201220-git";
-    asds = [ "cl-portaudio" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-portaudio/2020-12-20/cl-portaudio-20201220-git.tgz";
-      sha256 = "177c6bgf30caj5qpzfnzhbamax7c5zm2p4911mw7fay94vjs7zyb";
-      system = "cl-portaudio";
-      asd = "cl-portaudio";
-    });
-    systems = [ "cl-portaudio/tests" ];
-    lispLibs = [ (getAttr "cl-portaudio" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  cl-postgres = {
-    pname = "cl-postgres";
-    version = "20221106-git";
-    asds = [ "cl-postgres" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/postmodern/2022-11-06/postmodern-20221106-git.tgz";
-      sha256 = "012ipwi4m5x6jhl7pd9gwvdga5hgp1l08vqdgd28rzy34s2mfv74";
-      system = "cl-postgres";
-      asd = "cl-postgres";
-    });
-    systems = [ "cl-postgres" ];
-    lispLibs = [ (getAttr "cl-base64" pkgs) (getAttr "ironclad" pkgs) (getAttr "md5" pkgs) (getAttr "split-sequence" pkgs) (getAttr "uax-15" pkgs) ];
-  };
-  cl-postgres_plus_local-time = {
-    pname = "cl-postgres+local-time";
-    version = "20220707-git";
-    asds = [ "cl-postgres+local-time" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/local-time/2022-07-07/local-time-20220707-git.tgz";
-      sha256 = "0191fxlvzi3asx145bpdgd325s6wx2gqm5ssa4f72l0smr5av671";
-      system = "cl-postgres+local-time";
-      asd = "cl-postgres+local-time";
-    });
-    systems = [ "cl-postgres+local-time" ];
-    lispLibs = [ (getAttr "local-time" pkgs) (getAttr "cl-postgres" pkgs) ];
-  };
-  cl-postgres_plus_local-time-duration = {
-    pname = "cl-postgres+local-time-duration";
-    version = "20180430-git";
-    asds = [ "cl-postgres+local-time-duration" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/local-time-duration/2018-04-30/local-time-duration-20180430-git.tgz";
-      sha256 = "0f13mg18lv31lclz9jvqyj8d85p1jj1366nlld8m3dxnnwsbbkd6";
-      system = "cl-postgres+local-time-duration";
-      asd = "cl-postgres+local-time-duration";
-    });
-    systems = [ "cl-postgres+local-time-duration" ];
-    lispLibs = [ (getAttr "local-time-duration" pkgs) (getAttr "cl-postgres" pkgs) ];
-  };
-  cl-postgres-datetime = {
-    pname = "cl-postgres-datetime";
-    version = "20190521-git";
-    asds = [ "cl-postgres-datetime" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-postgres-datetime/2019-05-21/cl-postgres-datetime-20190521-git.tgz";
-      sha256 = "1vwv5j1i968927j070bagqx9i114a8phmx7k9ankj9j5zg5dj0l3";
-      system = "cl-postgres-datetime";
-      asd = "cl-postgres-datetime";
-    });
-    systems = [ "cl-postgres-datetime" ];
-    lispLibs = [ (getAttr "local-time" pkgs) (getAttr "cl-postgres" pkgs) (getAttr "simple-date" pkgs) ];
-  };
-  cl-postgres-plus-uuid = {
-    pname = "cl-postgres-plus-uuid";
-    version = "20181018-git";
-    asds = [ "cl-postgres-plus-uuid" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-postgres-plus-uuid/2018-10-18/cl-postgres-plus-uuid-20181018-git.tgz";
-      sha256 = "1iw11v67gpwgpa5dw3d7chjmkc4d7sdwrqvnx0vg0m2qf4j7azmi";
-      system = "cl-postgres-plus-uuid";
-      asd = "cl-postgres-plus-uuid";
-    });
-    systems = [ "cl-postgres-plus-uuid" ];
-    lispLibs = [ (getAttr "cl-postgres" pkgs) (getAttr "uuid" pkgs) ];
-  };
-  cl-postgres_slash_simple-date-tests = {
-    pname = "cl-postgres_simple-date-tests";
-    version = "20221106-git";
-    asds = [ "cl-postgres" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/postmodern/2022-11-06/postmodern-20221106-git.tgz";
-      sha256 = "012ipwi4m5x6jhl7pd9gwvdga5hgp1l08vqdgd28rzy34s2mfv74";
-      system = "cl-postgres";
-      asd = "cl-postgres";
-    });
-    systems = [ "cl-postgres/simple-date-tests" ];
-    lispLibs = [ (getAttr "fiveam" pkgs) (getAttr "cl-postgres" pkgs) (getAttr "simple-date" pkgs) (getAttr "uiop" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  cl-postgres_slash_tests = {
-    pname = "cl-postgres_tests";
-    version = "20221106-git";
-    asds = [ "cl-postgres" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/postmodern/2022-11-06/postmodern-20221106-git.tgz";
-      sha256 = "012ipwi4m5x6jhl7pd9gwvdga5hgp1l08vqdgd28rzy34s2mfv74";
-      system = "cl-postgres";
-      asd = "cl-postgres";
-    });
-    systems = [ "cl-postgres/tests" ];
-    lispLibs = [ (getAttr "fiveam" pkgs) (getAttr "cl-postgres" pkgs) (getAttr "uiop" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  cl-ppcre = {
-    pname = "cl-ppcre";
-    version = "20220220-git";
-    asds = [ "cl-ppcre" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-ppcre/2022-02-20/cl-ppcre-20220220-git.tgz";
-      sha256 = "13z548s88xrz2nscq91w3i33ymxacgq3zl62i8d31hqmwr4s45zb";
-      system = "cl-ppcre";
-      asd = "cl-ppcre";
-    });
-    systems = [ "cl-ppcre" ];
-    lispLibs = [  ];
-  };
-  cl-ppcre-template = {
-    pname = "cl-ppcre-template";
-    version = "20211230-git";
-    asds = [ "cl-ppcre-template" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-unification/2021-12-30/cl-unification-20211230-git.tgz";
-      sha256 = "1k4ngdn1qycjakwl66kvxk6kjxhkamzq3yfq4qlpc0kd15p7d2xn";
-      system = "cl-ppcre-template";
-      asd = "cl-ppcre-template";
-    });
-    systems = [ "cl-ppcre-template" ];
-    lispLibs = [ (getAttr "cl-ppcre" pkgs) (getAttr "cl-unification" pkgs) ];
-  };
-  cl-ppcre-unicode = {
-    pname = "cl-ppcre-unicode";
-    version = "20220220-git";
-    asds = [ "cl-ppcre-unicode" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-ppcre/2022-02-20/cl-ppcre-20220220-git.tgz";
-      sha256 = "13z548s88xrz2nscq91w3i33ymxacgq3zl62i8d31hqmwr4s45zb";
-      system = "cl-ppcre-unicode";
-      asd = "cl-ppcre-unicode";
-    });
-    systems = [ "cl-ppcre-unicode" ];
-    lispLibs = [ (getAttr "cl-ppcre" pkgs) (getAttr "cl-unicode" pkgs) ];
-  };
-  cl-ppcre-unicode_slash_test = {
-    pname = "cl-ppcre-unicode_test";
-    version = "20220220-git";
-    asds = [ "cl-ppcre-unicode" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-ppcre/2022-02-20/cl-ppcre-20220220-git.tgz";
-      sha256 = "13z548s88xrz2nscq91w3i33ymxacgq3zl62i8d31hqmwr4s45zb";
-      system = "cl-ppcre-unicode";
-      asd = "cl-ppcre-unicode";
-    });
-    systems = [ "cl-ppcre-unicode/test" ];
-    lispLibs = [ (getAttr "cl-ppcre" pkgs) (getAttr "cl-ppcre-unicode" pkgs) (getAttr "flexi-streams" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  cl-ppcre_slash_test = {
-    pname = "cl-ppcre_test";
-    version = "20220220-git";
-    asds = [ "cl-ppcre" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-ppcre/2022-02-20/cl-ppcre-20220220-git.tgz";
-      sha256 = "13z548s88xrz2nscq91w3i33ymxacgq3zl62i8d31hqmwr4s45zb";
-      system = "cl-ppcre";
-      asd = "cl-ppcre";
-    });
-    systems = [ "cl-ppcre/test" ];
-    lispLibs = [ (getAttr "cl-ppcre" pkgs) (getAttr "flexi-streams" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  cl-prevalence = {
-    pname = "cl-prevalence";
-    version = "20210531-git";
-    asds = [ "cl-prevalence" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-prevalence/2021-05-31/cl-prevalence-20210531-git.tgz";
-      sha256 = "04bxhbrqgvpjhfffrfkl1x0m975qhnfsvqbankd7p70afw25ris7";
-      system = "cl-prevalence";
-      asd = "cl-prevalence";
-    });
-    systems = [ "cl-prevalence" ];
-    lispLibs = [ (getAttr "s-sysdeps" pkgs) (getAttr "s-xml" pkgs) ];
-  };
-  cl-prevalence-test = {
-    pname = "cl-prevalence-test";
-    version = "20210531-git";
-    asds = [ "cl-prevalence-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-prevalence/2021-05-31/cl-prevalence-20210531-git.tgz";
-      sha256 = "04bxhbrqgvpjhfffrfkl1x0m975qhnfsvqbankd7p70afw25ris7";
-      system = "cl-prevalence-test";
-      asd = "cl-prevalence-test";
-    });
-    systems = [ "cl-prevalence-test" ];
-    lispLibs = [ (getAttr "cl-prevalence" pkgs) (getAttr "find-port" pkgs) (getAttr "fiveam" pkgs) ];
-  };
-  cl-primality = {
-    pname = "cl-primality";
-    version = "20150608-git";
-    asds = [ "cl-primality" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-primality/2015-06-08/cl-primality-20150608-git.tgz";
-      sha256 = "1hvbsd5x7yrrrh7jjq0p8ign3ppzzpacmmz7nps60wgk38q1b618";
-      system = "cl-primality";
-      asd = "cl-primality";
-    });
-    systems = [ "cl-primality" ];
-    lispLibs = [ (getAttr "iterate" pkgs) ];
-  };
-  cl-primality-test = {
-    pname = "cl-primality-test";
-    version = "20150608-git";
-    asds = [ "cl-primality-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-primality/2015-06-08/cl-primality-20150608-git.tgz";
-      sha256 = "1hvbsd5x7yrrrh7jjq0p8ign3ppzzpacmmz7nps60wgk38q1b618";
-      system = "cl-primality-test";
-      asd = "cl-primality-test";
-    });
-    systems = [ "cl-primality-test" ];
-    lispLibs = [ (getAttr "cl-primality" pkgs) (getAttr "iterate" pkgs) (getAttr "stefil" pkgs) ];
-  };
-  cl-prime-maker = {
-    pname = "cl-prime-maker";
-    version = "20150302-git";
-    asds = [ "cl-prime-maker" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-prime-maker/2015-03-02/cl-prime-maker-20150302-git.tgz";
-      sha256 = "0hs95zs990aiwspss2dzmjvl18ipvlkx3p9cgmcncqxhgkizds9s";
-      system = "cl-prime-maker";
-      asd = "cl-prime-maker";
-    });
-    systems = [ "cl-prime-maker" ];
-    lispLibs = [  ];
-  };
-  cl-progress-bar = {
-    pname = "cl-progress-bar";
-    version = "20211209-git";
-    asds = [ "cl-progress-bar" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-progress-bar/2021-12-09/cl-progress-bar-20211209-git.tgz";
-      sha256 = "1y4kg4qb4bxkqnc84mczx5fhqlr6qbagxwsn93xrilv8lqg8ymiv";
-      system = "cl-progress-bar";
-      asd = "cl-progress-bar";
-    });
-    systems = [ "cl-progress-bar" ];
-    lispLibs = [ (getAttr "bordeaux-threads" pkgs) (getAttr "documentation-utils-extensions" pkgs) ];
-  };
-  cl-project = {
-    pname = "cl-project";
-    version = "20200715-git";
-    asds = [ "cl-project" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-project/2020-07-15/cl-project-20200715-git.tgz";
-      sha256 = "1rmh6s1ncv8s2yrr14ja9wisgg745sq6xibqwb341ikdicxdp26y";
-      system = "cl-project";
-      asd = "cl-project";
-    });
-    systems = [ "cl-project" ];
-    lispLibs = [ (getAttr "cl-emb" pkgs) (getAttr "cl-ppcre" pkgs) (getAttr "local-time" pkgs) (getAttr "prove" pkgs) (getAttr "uiop" pkgs) ];
-  };
-  cl-project-test = {
-    pname = "cl-project-test";
-    version = "20200715-git";
-    asds = [ "cl-project-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-project/2020-07-15/cl-project-20200715-git.tgz";
-      sha256 = "1rmh6s1ncv8s2yrr14ja9wisgg745sq6xibqwb341ikdicxdp26y";
-      system = "cl-project-test";
-      asd = "cl-project-test";
-    });
-    systems = [ "cl-project-test" ];
-    lispLibs = [ (getAttr "caveman2" pkgs) (getAttr "cl-project" pkgs) (getAttr "prove" pkgs) (getAttr "prove-asdf" pkgs) (getAttr "uiop" pkgs) ];
-  };
-  cl-prolog2 = {
-    pname = "cl-prolog2";
-    version = "20211209-git";
-    asds = [ "cl-prolog2" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-prolog2/2021-12-09/cl-prolog2-20211209-git.tgz";
-      sha256 = "15xa1i2r72ll6zfhq6gkv0h36kifqjvbsmnycd145vgd0dvh5pgg";
-      system = "cl-prolog2";
-      asd = "cl-prolog2";
-    });
-    systems = [ "cl-prolog2" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "external-program" pkgs) (getAttr "trivia" pkgs) (getAttr "trivia_dot_quasiquote" pkgs) (getAttr "trivial-garbage" pkgs) ];
-  };
-  cl-prolog2_dot_bprolog = {
-    pname = "cl-prolog2.bprolog";
-    version = "20211209-git";
-    asds = [ "cl-prolog2.bprolog" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-prolog2/2021-12-09/cl-prolog2-20211209-git.tgz";
-      sha256 = "15xa1i2r72ll6zfhq6gkv0h36kifqjvbsmnycd145vgd0dvh5pgg";
-      system = "cl-prolog2.bprolog";
-      asd = "cl-prolog2.bprolog";
-    });
-    systems = [ "cl-prolog2.bprolog" ];
-    lispLibs = [ (getAttr "cl-prolog2" pkgs) ];
-  };
-  cl-prolog2_dot_bprolog_dot_test = {
-    pname = "cl-prolog2.bprolog.test";
-    version = "20211209-git";
-    asds = [ "cl-prolog2.bprolog.test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-prolog2/2021-12-09/cl-prolog2-20211209-git.tgz";
-      sha256 = "15xa1i2r72ll6zfhq6gkv0h36kifqjvbsmnycd145vgd0dvh5pgg";
-      system = "cl-prolog2.bprolog.test";
-      asd = "cl-prolog2.bprolog.test";
-    });
-    systems = [ "cl-prolog2.bprolog.test" ];
-    lispLibs = [ (getAttr "cl-prolog2_dot_bprolog" pkgs) (getAttr "cl-prolog2_dot_test" pkgs) ];
-  };
-  cl-prolog2_dot_gprolog = {
-    pname = "cl-prolog2.gprolog";
-    version = "20211209-git";
-    asds = [ "cl-prolog2.gprolog" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-prolog2/2021-12-09/cl-prolog2-20211209-git.tgz";
-      sha256 = "15xa1i2r72ll6zfhq6gkv0h36kifqjvbsmnycd145vgd0dvh5pgg";
-      system = "cl-prolog2.gprolog";
-      asd = "cl-prolog2.gprolog";
-    });
-    systems = [ "cl-prolog2.gprolog" ];
-    lispLibs = [ (getAttr "cl-prolog2" pkgs) ];
-  };
-  cl-prolog2_dot_gprolog_dot_test = {
-    pname = "cl-prolog2.gprolog.test";
-    version = "20211209-git";
-    asds = [ "cl-prolog2.gprolog.test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-prolog2/2021-12-09/cl-prolog2-20211209-git.tgz";
-      sha256 = "15xa1i2r72ll6zfhq6gkv0h36kifqjvbsmnycd145vgd0dvh5pgg";
-      system = "cl-prolog2.gprolog.test";
-      asd = "cl-prolog2.gprolog.test";
-    });
-    systems = [ "cl-prolog2.gprolog.test" ];
-    lispLibs = [ (getAttr "cl-prolog2_dot_gprolog" pkgs) (getAttr "cl-prolog2_dot_test" pkgs) ];
-  };
-  cl-prolog2_dot_swi = {
-    pname = "cl-prolog2.swi";
-    version = "20211209-git";
-    asds = [ "cl-prolog2.swi" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-prolog2/2021-12-09/cl-prolog2-20211209-git.tgz";
-      sha256 = "15xa1i2r72ll6zfhq6gkv0h36kifqjvbsmnycd145vgd0dvh5pgg";
-      system = "cl-prolog2.swi";
-      asd = "cl-prolog2.swi";
-    });
-    systems = [ "cl-prolog2.swi" ];
-    lispLibs = [ (getAttr "cl-prolog2" pkgs) ];
-  };
-  cl-prolog2_dot_swi_dot_test = {
-    pname = "cl-prolog2.swi.test";
-    version = "20211209-git";
-    asds = [ "cl-prolog2.swi.test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-prolog2/2021-12-09/cl-prolog2-20211209-git.tgz";
-      sha256 = "15xa1i2r72ll6zfhq6gkv0h36kifqjvbsmnycd145vgd0dvh5pgg";
-      system = "cl-prolog2.swi.test";
-      asd = "cl-prolog2.swi.test";
-    });
-    systems = [ "cl-prolog2.swi.test" ];
-    lispLibs = [ (getAttr "cl-prolog2_dot_swi" pkgs) (getAttr "cl-prolog2_dot_test" pkgs) ];
-  };
-  cl-prolog2_dot_test = {
-    pname = "cl-prolog2.test";
-    version = "20211209-git";
-    asds = [ "cl-prolog2.test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-prolog2/2021-12-09/cl-prolog2-20211209-git.tgz";
-      sha256 = "15xa1i2r72ll6zfhq6gkv0h36kifqjvbsmnycd145vgd0dvh5pgg";
-      system = "cl-prolog2.test";
-      asd = "cl-prolog2.test";
-    });
-    systems = [ "cl-prolog2.test" ];
-    lispLibs = [ (getAttr "cl-prolog2" pkgs) (getAttr "fiveam" pkgs) (getAttr "iterate" pkgs) ];
-  };
-  cl-prolog2_dot_xsb = {
-    pname = "cl-prolog2.xsb";
-    version = "20211209-git";
-    asds = [ "cl-prolog2.xsb" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-prolog2/2021-12-09/cl-prolog2-20211209-git.tgz";
-      sha256 = "15xa1i2r72ll6zfhq6gkv0h36kifqjvbsmnycd145vgd0dvh5pgg";
-      system = "cl-prolog2.xsb";
-      asd = "cl-prolog2.xsb";
-    });
-    systems = [ "cl-prolog2.xsb" ];
-    lispLibs = [ (getAttr "cl-prolog2" pkgs) ];
-  };
-  cl-prolog2_dot_xsb_dot_test = {
-    pname = "cl-prolog2.xsb.test";
-    version = "20211209-git";
-    asds = [ "cl-prolog2.xsb.test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-prolog2/2021-12-09/cl-prolog2-20211209-git.tgz";
-      sha256 = "15xa1i2r72ll6zfhq6gkv0h36kifqjvbsmnycd145vgd0dvh5pgg";
-      system = "cl-prolog2.xsb.test";
-      asd = "cl-prolog2.xsb.test";
-    });
-    systems = [ "cl-prolog2.xsb.test" ];
-    lispLibs = [ (getAttr "cl-prolog2_dot_test" pkgs) (getAttr "cl-prolog2_dot_xsb" pkgs) ];
-  };
-  cl-prolog2_dot_yap = {
-    pname = "cl-prolog2.yap";
-    version = "20211209-git";
-    asds = [ "cl-prolog2.yap" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-prolog2/2021-12-09/cl-prolog2-20211209-git.tgz";
-      sha256 = "15xa1i2r72ll6zfhq6gkv0h36kifqjvbsmnycd145vgd0dvh5pgg";
-      system = "cl-prolog2.yap";
-      asd = "cl-prolog2.yap";
-    });
-    systems = [ "cl-prolog2.yap" ];
-    lispLibs = [ (getAttr "cl-prolog2" pkgs) ];
-  };
-  cl-prolog2_dot_yap_dot_test = {
-    pname = "cl-prolog2.yap.test";
-    version = "20211209-git";
-    asds = [ "cl-prolog2.yap.test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-prolog2/2021-12-09/cl-prolog2-20211209-git.tgz";
-      sha256 = "15xa1i2r72ll6zfhq6gkv0h36kifqjvbsmnycd145vgd0dvh5pgg";
-      system = "cl-prolog2.yap.test";
-      asd = "cl-prolog2.yap.test";
-    });
-    systems = [ "cl-prolog2.yap.test" ];
-    lispLibs = [ (getAttr "cl-prolog2_dot_test" pkgs) (getAttr "cl-prolog2_dot_yap" pkgs) ];
-  };
-  cl-protobufs = {
-    pname = "cl-protobufs";
-    version = "20221106-git";
-    asds = [ "cl-protobufs" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-protobufs/2022-11-06/cl-protobufs-20221106-git.tgz";
-      sha256 = "1nlxhz0xisfi8jdhh393ds2asjid4rwjddrbhyijbadaj9gl9jkf";
-      system = "cl-protobufs";
-      asd = "cl-protobufs";
-    });
-    systems = [ "cl-protobufs" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cl-base64" pkgs) (getAttr "cl-protobufs_dot_asdf" pkgs) (getAttr "closer-mop" pkgs) (getAttr "local-time" pkgs) (getAttr "trivial-garbage" pkgs) ];
-  };
-  cl-protobufs_dot_asdf = {
-    pname = "cl-protobufs.asdf";
-    version = "20221106-git";
-    asds = [ "cl-protobufs.asdf" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-protobufs/2022-11-06/cl-protobufs-20221106-git.tgz";
-      sha256 = "1nlxhz0xisfi8jdhh393ds2asjid4rwjddrbhyijbadaj9gl9jkf";
-      system = "cl-protobufs.asdf";
-      asd = "cl-protobufs.asdf";
-    });
-    systems = [ "cl-protobufs.asdf" ];
-    lispLibs = [  ];
-  };
-  cl-protobufs_slash_tests = {
-    pname = "cl-protobufs_tests";
-    version = "20221106-git";
-    asds = [ "cl-protobufs" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-protobufs/2022-11-06/cl-protobufs-20221106-git.tgz";
-      sha256 = "1nlxhz0xisfi8jdhh393ds2asjid4rwjddrbhyijbadaj9gl9jkf";
-      system = "cl-protobufs";
-      asd = "cl-protobufs";
-    });
-    systems = [ "cl-protobufs/tests" ];
-    lispLibs = [ (getAttr "babel" pkgs) (getAttr "cl-protobufs" pkgs) (getAttr "cl-protobufs_dot_asdf" pkgs) (getAttr "clunit2" pkgs) (getAttr "trivial-benchmark" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  cl-pslib = {
-    pname = "cl-pslib";
-    version = "20201016-git";
-    asds = [ "cl-pslib" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-pslib/2020-10-16/cl-pslib-20201016-git.tgz";
-      sha256 = "1l3ig57lrqdbm3kd9kbch3y3az8kryc9bqn896vz3a3w3rnwcv5a";
-      system = "cl-pslib";
-      asd = "cl-pslib";
-    });
-    systems = [ "cl-pslib" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cffi" pkgs) (getAttr "cl-colors2" pkgs) (getAttr "cl-ppcre-unicode" pkgs) ];
-  };
-  cl-pslib-barcode = {
-    pname = "cl-pslib-barcode";
-    version = "20200218-git";
-    asds = [ "cl-pslib-barcode" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-pslib-barcode/2020-02-18/cl-pslib-barcode-20200218-git.tgz";
-      sha256 = "10hmvjx03m54xyrjdw92kfpcvch0by0c8lwj899rbgxwfjsbwc49";
-      system = "cl-pslib-barcode";
-      asd = "cl-pslib-barcode";
-    });
-    systems = [ "cl-pslib-barcode" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cffi" pkgs) (getAttr "cl-colors2" pkgs) (getAttr "cl-ppcre-unicode" pkgs) (getAttr "cl-pslib" pkgs) ];
-  };
-  cl-punch = {
-    pname = "cl-punch";
-    version = "20190107-git";
-    asds = [ "cl-punch" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-punch/2019-01-07/cl-punch-20190107-git.tgz";
-      sha256 = "1sjgwn6c77n8pgs0rrw70xfl18rps6a0dlf2chfsbgk8shz6qyl2";
-      system = "cl-punch";
-      asd = "cl-punch";
-    });
-    systems = [ "cl-punch" ];
-    lispLibs = [ (getAttr "cl-syntax" pkgs) ];
-  };
-  cl-punch-test = {
-    pname = "cl-punch-test";
-    version = "20190107-git";
-    asds = [ "cl-punch-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-punch/2019-01-07/cl-punch-20190107-git.tgz";
-      sha256 = "1sjgwn6c77n8pgs0rrw70xfl18rps6a0dlf2chfsbgk8shz6qyl2";
-      system = "cl-punch-test";
-      asd = "cl-punch-test";
-    });
-    systems = [ "cl-punch-test" ];
-    lispLibs = [ (getAttr "cl-punch" pkgs) (getAttr "prove" pkgs) (getAttr "prove-asdf" pkgs) ];
-  };
-  cl-qprint = {
-    pname = "cl-qprint";
-    version = "20150804-git";
-    asds = [ "cl-qprint" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-qprint/2015-08-04/cl-qprint-20150804-git.tgz";
-      sha256 = "099h0rrdzxnlmn8avi72mg2dl0kccp7w01b2p9nwyy4b8yr32cir";
-      system = "cl-qprint";
-      asd = "cl-qprint";
-    });
-    systems = [ "cl-qprint" ];
-    lispLibs = [ (getAttr "flexi-streams" pkgs) ];
-  };
-  cl-qrencode = {
-    pname = "cl-qrencode";
-    version = "20191007-git";
-    asds = [ "cl-qrencode" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-qrencode/2019-10-07/cl-qrencode-20191007-git.tgz";
-      sha256 = "1l5k131dchbf6cj8a8xqa731790p01p3qa1kdy2wa9dawy3ymkxr";
-      system = "cl-qrencode";
-      asd = "cl-qrencode";
-    });
-    systems = [ "cl-qrencode" ];
-    lispLibs = [ (getAttr "zpng" pkgs) ];
-  };
-  cl-qrencode-test = {
-    pname = "cl-qrencode-test";
-    version = "20191007-git";
-    asds = [ "cl-qrencode-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-qrencode/2019-10-07/cl-qrencode-20191007-git.tgz";
-      sha256 = "1l5k131dchbf6cj8a8xqa731790p01p3qa1kdy2wa9dawy3ymkxr";
-      system = "cl-qrencode-test";
-      asd = "cl-qrencode-test";
-    });
-    systems = [ "cl-qrencode-test" ];
-    lispLibs = [ (getAttr "cl-qrencode" pkgs) (getAttr "lisp-unit" pkgs) ];
-  };
-  cl-quickcheck = {
-    pname = "cl-quickcheck";
-    version = "20200610-git";
-    asds = [ "cl-quickcheck" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-quickcheck/2020-06-10/cl-quickcheck-20200610-git.tgz";
-      sha256 = "0cfyxbdhklvdk3qdzyxxaq9q6cxnsvqjfi86nay1vc7h6ziysb60";
-      system = "cl-quickcheck";
-      asd = "cl-quickcheck";
-    });
-    systems = [ "cl-quickcheck" ];
-    lispLibs = [  ];
-  };
-  cl-quil = {
-    pname = "cl-quil";
-    version = "v1.26.0";
-    asds = [ "cl-quil" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/quilc/2021-12-09/quilc-v1.26.0.tgz";
-      sha256 = "09qp2d6xgq4cmg6nfsdz0gbs3rvz3ln0kawmry6cls14lxnljjrr";
-      system = "cl-quil";
-      asd = "cl-quil";
-    });
-    systems = [ "cl-quil" ];
-    lispLibs = [ (getAttr "alexa" pkgs) (getAttr "alexandria" pkgs) (getAttr "abstract-classes" pkgs) (getAttr "singleton-classes" pkgs) (getAttr "cl-algebraic-data-type" pkgs) (getAttr "cl-grnm" pkgs) (getAttr "cl-heap" pkgs) (getAttr "cl-permutation" pkgs) (getAttr "yacc" pkgs) (getAttr "closer-mop" pkgs) (getAttr "flexi-streams" pkgs) (getAttr "global-vars" pkgs) (getAttr "magicl" pkgs) (getAttr "optima" pkgs) (getAttr "parse-float" pkgs) (getAttr "queues_dot_priority-queue" pkgs) (getAttr "salza2" pkgs) (getAttr "split-sequence" pkgs) (getAttr "trivial-garbage" pkgs) (getAttr "uiop" pkgs) (getAttr "yason" pkgs) ];
-  };
-  cl-quil-benchmarking = {
-    pname = "cl-quil-benchmarking";
-    version = "v1.26.0";
-    asds = [ "cl-quil-benchmarking" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/quilc/2021-12-09/quilc-v1.26.0.tgz";
-      sha256 = "09qp2d6xgq4cmg6nfsdz0gbs3rvz3ln0kawmry6cls14lxnljjrr";
-      system = "cl-quil-benchmarking";
-      asd = "cl-quil-benchmarking";
-    });
-    systems = [ "cl-quil-benchmarking" ];
-    lispLibs = [ (getAttr "bordeaux-threads" pkgs) (getAttr "metering" pkgs) (getAttr "cl-quil" pkgs) (getAttr "qvm-app" pkgs) (getAttr "trivial-benchmark" pkgs) (getAttr "trivial-garbage" pkgs) ];
-  };
-  cl-quil-tests = {
-    pname = "cl-quil-tests";
-    version = "v1.26.0";
-    asds = [ "cl-quil-tests" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/quilc/2021-12-09/quilc-v1.26.0.tgz";
-      sha256 = "09qp2d6xgq4cmg6nfsdz0gbs3rvz3ln0kawmry6cls14lxnljjrr";
-      system = "cl-quil-tests";
-      asd = "cl-quil-tests";
-    });
-    systems = [ "cl-quil-tests" ];
-    lispLibs = [ (getAttr "alexa" pkgs) (getAttr "alexandria" pkgs) (getAttr "cl-permutation" pkgs) (getAttr "cl-ppcre" pkgs) (getAttr "yacc" pkgs) (getAttr "fiasco" pkgs) (getAttr "magicl" pkgs) (getAttr "cl-quil" pkgs) (getAttr "qvm" pkgs) (getAttr "uiop" pkgs) ];
-  };
-  cl-quil_slash_quilec = {
-    pname = "cl-quil_quilec";
-    version = "v1.26.0";
-    asds = [ "cl-quil" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/quilc/2021-12-09/quilc-v1.26.0.tgz";
-      sha256 = "09qp2d6xgq4cmg6nfsdz0gbs3rvz3ln0kawmry6cls14lxnljjrr";
-      system = "cl-quil";
-      asd = "cl-quil";
-    });
-    systems = [ "cl-quil/quilec" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "magicl" pkgs) (getAttr "cl-quil" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  cl-quil_slash_quilec-tests = {
-    pname = "cl-quil_quilec-tests";
-    version = "v1.26.0";
-    asds = [ "cl-quil" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/quilc/2021-12-09/quilc-v1.26.0.tgz";
-      sha256 = "09qp2d6xgq4cmg6nfsdz0gbs3rvz3ln0kawmry6cls14lxnljjrr";
-      system = "cl-quil";
-      asd = "cl-quil";
-    });
-    systems = [ "cl-quil/quilec-tests" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "fiasco" pkgs) (getAttr "magicl" pkgs) (getAttr "cl-quil" pkgs) (getAttr "qvm" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  cl-quil_slash_quilt = {
-    pname = "cl-quil_quilt";
-    version = "v1.26.0";
-    asds = [ "cl-quil" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/quilc/2021-12-09/quilc-v1.26.0.tgz";
-      sha256 = "09qp2d6xgq4cmg6nfsdz0gbs3rvz3ln0kawmry6cls14lxnljjrr";
-      system = "cl-quil";
-      asd = "cl-quil";
-    });
-    systems = [ "cl-quil/quilt" ];
-    lispLibs = [ (getAttr "cl-quil" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  cl-quil_slash_quilt-tests = {
-    pname = "cl-quil_quilt-tests";
-    version = "v1.26.0";
-    asds = [ "cl-quil" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/quilc/2021-12-09/quilc-v1.26.0.tgz";
-      sha256 = "09qp2d6xgq4cmg6nfsdz0gbs3rvz3ln0kawmry6cls14lxnljjrr";
-      system = "cl-quil";
-      asd = "cl-quil";
-    });
-    systems = [ "cl-quil/quilt-tests" ];
-    lispLibs = [ (getAttr "cl-quil" pkgs) (getAttr "cl-quil-tests" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  cl-quil_slash_tools = {
-    pname = "cl-quil_tools";
-    version = "v1.26.0";
-    asds = [ "cl-quil" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/quilc/2021-12-09/quilc-v1.26.0.tgz";
-      sha256 = "09qp2d6xgq4cmg6nfsdz0gbs3rvz3ln0kawmry6cls14lxnljjrr";
-      system = "cl-quil";
-      asd = "cl-quil";
-    });
-    systems = [ "cl-quil/tools" ];
-    lispLibs = [ (getAttr "common-lisp-jupyter" pkgs) (getAttr "cl-quil" pkgs) (getAttr "swank" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  cl-quil_slash_tools-tests = {
-    pname = "cl-quil_tools-tests";
-    version = "v1.26.0";
-    asds = [ "cl-quil" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/quilc/2021-12-09/quilc-v1.26.0.tgz";
-      sha256 = "09qp2d6xgq4cmg6nfsdz0gbs3rvz3ln0kawmry6cls14lxnljjrr";
-      system = "cl-quil";
-      asd = "cl-quil";
-    });
-    systems = [ "cl-quil/tools-tests" ];
-    lispLibs = [ (getAttr "common-lisp-jupyter" pkgs) (getAttr "cl-quil" pkgs) (getAttr "cl-quil-tests" pkgs) (getAttr "swank" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  cl-rabbit = {
-    pname = "cl-rabbit";
-    version = "20210411-git";
-    asds = [ "cl-rabbit" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-rabbit/2021-04-11/cl-rabbit-20210411-git.tgz";
-      sha256 = "1q1mhqxqvxbr6ak7j0ym6mjhhq6r0pqk1l7az9hfajmqmw3xfija";
-      system = "cl-rabbit";
-      asd = "cl-rabbit";
-    });
-    systems = [ "cl-rabbit" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "babel" pkgs) (getAttr "cffi" pkgs) (getAttr "cffi-grovel" pkgs) (getAttr "cffi-libffi" pkgs) (getAttr "cl-ppcre" pkgs) ];
-  };
-  cl-rabbit-tests = {
-    pname = "cl-rabbit-tests";
-    version = "20210411-git";
-    asds = [ "cl-rabbit-tests" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-rabbit/2021-04-11/cl-rabbit-20210411-git.tgz";
-      sha256 = "1q1mhqxqvxbr6ak7j0ym6mjhhq6r0pqk1l7az9hfajmqmw3xfija";
-      system = "cl-rabbit-tests";
-      asd = "cl-rabbit-tests";
-    });
-    systems = [ "cl-rabbit-tests" ];
-    lispLibs = [ (getAttr "cl-rabbit" pkgs) (getAttr "fiveam" pkgs) ];
-  };
-  cl-randist = {
-    pname = "cl-randist";
-    version = "20221106-git";
-    asds = [ "cl-randist" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-randist/2022-11-06/cl-randist-20221106-git.tgz";
-      sha256 = "1r0d76n5zjqg5fb2ypqx5i1wg4hsg5g0c126ylqb28wdaf2yjz5a";
-      system = "cl-randist";
-      asd = "cl-randist";
-    });
-    systems = [ "cl-randist" ];
-    lispLibs = [  ];
-  };
-  cl-random = {
-    pname = "cl-random";
-    version = "20180328-git";
-    asds = [ "cl-random" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-random/2018-03-28/cl-random-20180328-git.tgz";
-      sha256 = "0jn80xphyvyp2v72acr6b8a2f6dw06myr5vrjfl14brsvks7wr89";
-      system = "cl-random";
-      asd = "cl-random";
-    });
-    systems = [ "cl-random" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "anaphora" pkgs) (getAttr "array-operations" pkgs) (getAttr "cl-num-utils" pkgs) (getAttr "cl-rmath" pkgs) (getAttr "cl-slice" pkgs) (getAttr "gsll" pkgs) (getAttr "let-plus" pkgs) (getAttr "lla" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  cl-random-forest = {
-    pname = "cl-random-forest";
-    version = "20221106-git";
-    asds = [ "cl-random-forest" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-random-forest/2022-11-06/cl-random-forest-20221106-git.tgz";
-      sha256 = "0jn5f3s1zvjql35c4m67lqc0vjr7sm7kzf8w4jfbfabcnxf3y6jx";
-      system = "cl-random-forest";
-      asd = "cl-random-forest";
-    });
-    systems = [ "cl-random-forest" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cl-libsvm-format" pkgs) (getAttr "cl-online-learning" pkgs) (getAttr "lparallel" pkgs) ];
-  };
-  cl-random-forest-test = {
-    pname = "cl-random-forest-test";
-    version = "20221106-git";
-    asds = [ "cl-random-forest-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-random-forest/2022-11-06/cl-random-forest-20221106-git.tgz";
-      sha256 = "0jn5f3s1zvjql35c4m67lqc0vjr7sm7kzf8w4jfbfabcnxf3y6jx";
-      system = "cl-random-forest-test";
-      asd = "cl-random-forest-test";
-    });
-    systems = [ "cl-random-forest-test" ];
-    lispLibs = [ (getAttr "cl-random-forest" pkgs) (getAttr "prove" pkgs) (getAttr "prove-asdf" pkgs) (getAttr "trivial-garbage" pkgs) (getAttr "uiop" pkgs) ];
-  };
-  cl-random-tests = {
-    pname = "cl-random-tests";
-    version = "20180328-git";
-    asds = [ "cl-random-tests" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-random/2018-03-28/cl-random-20180328-git.tgz";
-      sha256 = "0jn80xphyvyp2v72acr6b8a2f6dw06myr5vrjfl14brsvks7wr89";
-      system = "cl-random-tests";
-      asd = "cl-random";
-    });
-    systems = [ "cl-random-tests" ];
-    lispLibs = [ (getAttr "cl-random" pkgs) (getAttr "clunit" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  cl-rdfxml = {
-    pname = "cl-rdfxml";
-    version = "20140713-git";
-    asds = [ "cl-rdfxml" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-rdfxml/2014-07-13/cl-rdfxml-20140713-git.tgz";
-      sha256 = "09v76qg6l3y1llapnkfqrfgib67h7lpkzrdmfimwk49bi80iii8v";
-      system = "cl-rdfxml";
-      asd = "cl-rdfxml";
-    });
-    systems = [ "cl-rdfxml" ];
-    lispLibs = [ (getAttr "cxml" pkgs) (getAttr "puri" pkgs) ];
-  };
-  cl-rdkafka = {
-    pname = "cl-rdkafka";
-    version = "20201220-git";
-    asds = [ "cl-rdkafka" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-rdkafka/2020-12-20/cl-rdkafka-20201220-git.tgz";
-      sha256 = "1hqgxqn3qxs2kzr1c7rrg0ixk2sxv9796wmcjmbqlnld03nikk6f";
-      system = "cl-rdkafka";
-      asd = "cl-rdkafka";
-    });
-    systems = [ "cl-rdkafka" ];
-    lispLibs = [ (getAttr "bordeaux-threads" pkgs) (getAttr "cffi" pkgs) (getAttr "cffi-grovel" pkgs) (getAttr "lparallel" pkgs) (getAttr "trivial-garbage" pkgs) ];
-  };
-  cl-rdkafka_slash_test = {
-    pname = "cl-rdkafka_test";
-    version = "20201220-git";
-    asds = [ "cl-rdkafka" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-rdkafka/2020-12-20/cl-rdkafka-20201220-git.tgz";
-      sha256 = "1hqgxqn3qxs2kzr1c7rrg0ixk2sxv9796wmcjmbqlnld03nikk6f";
-      system = "cl-rdkafka";
-      asd = "cl-rdkafka";
-    });
-    systems = [ "cl-rdkafka/test" ];
-    lispLibs = [ (getAttr "_1am" pkgs) (getAttr "babel" pkgs) (getAttr "cl-rdkafka" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  cl-readline = {
-    pname = "cl-readline";
-    version = "20220707-git";
-    asds = [ "cl-readline" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-readline/2022-07-07/cl-readline-20220707-git.tgz";
-      sha256 = "0bxvfd7hmj9yvcar3f3kd1cxxx4pqzri6sa28bp9w9bm25g4ddhf";
-      system = "cl-readline";
-      asd = "cl-readline";
-    });
-    systems = [ "cl-readline" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cffi" pkgs) ];
-  };
-  cl-recaptcha = {
-    pname = "cl-recaptcha";
-    version = "20150608-git";
-    asds = [ "cl-recaptcha" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-recaptcha/2015-06-08/cl-recaptcha-20150608-git.tgz";
-      sha256 = "09qdmzbhc5hikay31mbsfd7dps72rm4gcdbbi0b6gkb6qbia6m71";
-      system = "cl-recaptcha";
-      asd = "cl-recaptcha";
-    });
-    systems = [ "cl-recaptcha" ];
-    lispLibs = [ (getAttr "cl-ppcre" pkgs) (getAttr "drakma" pkgs) (getAttr "flexi-streams" pkgs) (getAttr "jsown" pkgs) ];
-  };
-  cl-redis = {
-    pname = "cl-redis";
-    version = "20200925-git";
-    asds = [ "cl-redis" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-redis/2020-09-25/cl-redis-20200925-git.tgz";
-      sha256 = "0x5ahxb5cx37biyn3cjycshhm1rr9p5cf1a9l5hd1n1xjxm2f8vi";
-      system = "cl-redis";
-      asd = "cl-redis";
-    });
-    systems = [ "cl-redis" ];
-    lispLibs = [ (getAttr "babel" pkgs) (getAttr "cl-ppcre" pkgs) (getAttr "flexi-streams" pkgs) (getAttr "rutils" pkgs) (getAttr "usocket" pkgs) ];
-  };
-  cl-redis-test = {
-    pname = "cl-redis-test";
-    version = "20200925-git";
-    asds = [ "cl-redis-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-redis/2020-09-25/cl-redis-20200925-git.tgz";
-      sha256 = "0x5ahxb5cx37biyn3cjycshhm1rr9p5cf1a9l5hd1n1xjxm2f8vi";
-      system = "cl-redis-test";
-      asd = "cl-redis";
-    });
-    systems = [ "cl-redis-test" ];
-    lispLibs = [ (getAttr "bordeaux-threads" pkgs) (getAttr "cl-redis" pkgs) (getAttr "flexi-streams" pkgs) (getAttr "should-test" pkgs) ];
-  };
-  cl-reexport = {
-    pname = "cl-reexport";
-    version = "20210228-git";
-    asds = [ "cl-reexport" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-reexport/2021-02-28/cl-reexport-20210228-git.tgz";
-      sha256 = "02la6z3ickhmh2m87ymm2ijh9nkn7l6slskj99l8a1rhps394qqc";
-      system = "cl-reexport";
-      asd = "cl-reexport";
-    });
-    systems = [ "cl-reexport" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) ];
-  };
-  cl-reexport-test = {
-    pname = "cl-reexport-test";
-    version = "20210228-git";
-    asds = [ "cl-reexport-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-reexport/2021-02-28/cl-reexport-20210228-git.tgz";
-      sha256 = "02la6z3ickhmh2m87ymm2ijh9nkn7l6slskj99l8a1rhps394qqc";
-      system = "cl-reexport-test";
-      asd = "cl-reexport-test";
-    });
-    systems = [ "cl-reexport-test" ];
-    lispLibs = [ (getAttr "cl-reexport" pkgs) (getAttr "prove" pkgs) ];
-  };
-  cl-renderdoc = {
-    pname = "cl-renderdoc";
-    version = "20200925-git";
-    asds = [ "cl-renderdoc" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-renderdoc/2020-09-25/cl-renderdoc-20200925-git.tgz";
-      sha256 = "0rrcp4y1f07x8h0ikvf5ncc3pbqj6vaciblab9qghmgdglnn7akx";
-      system = "cl-renderdoc";
-      asd = "cl-renderdoc";
-    });
-    systems = [ "cl-renderdoc" ];
-    lispLibs = [ (getAttr "cl-autowrap" pkgs) ];
-  };
-  cl-replica = {
-    pname = "cl-replica";
-    version = "20221106-git";
-    asds = [ "cl-replica" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-replica/2022-11-06/cl-replica-20221106-git.tgz";
-      sha256 = "1kp50xw1v0kfa8g4g2vmg5rfhpyr9phqk0rs4s36f6nwfpsasw7w";
-      system = "cl-replica";
-      asd = "cl-replica";
-    });
-    systems = [ "cl-replica" ];
-    lispLibs = [  ];
-  };
-  cl-replica_slash_test = {
-    pname = "cl-replica_test";
-    version = "20221106-git";
-    asds = [ "cl-replica" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-replica/2022-11-06/cl-replica-20221106-git.tgz";
-      sha256 = "1kp50xw1v0kfa8g4g2vmg5rfhpyr9phqk0rs4s36f6nwfpsasw7w";
-      system = "cl-replica";
-      asd = "cl-replica";
-    });
-    systems = [ "cl-replica/test" ];
-    lispLibs = [ (getAttr "cl-replica" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  cl-rethinkdb = {
-    pname = "cl-rethinkdb";
-    version = "20160825-git";
-    asds = [ "cl-rethinkdb" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-rethinkdb/2016-08-25/cl-rethinkdb-20160825-git.tgz";
-      sha256 = "0sps1p203gn7i123w96pj5ggpncmkngkfdb6zfnm5yjq544sjjf7";
-      system = "cl-rethinkdb";
-      asd = "cl-rethinkdb";
-    });
-    systems = [ "cl-rethinkdb" ];
-    lispLibs = [ (getAttr "blackbird" pkgs) (getAttr "cl-async" pkgs) (getAttr "cl-base64" pkgs) (getAttr "cl-hash-util" pkgs) (getAttr "cl-ppcre" pkgs) (getAttr "event-glue" pkgs) (getAttr "fast-io" pkgs) (getAttr "jonathan" pkgs) (getAttr "local-time" pkgs) (getAttr "vom" pkgs) ];
-  };
-  cl-rethinkdb-test = {
-    pname = "cl-rethinkdb-test";
-    version = "20160825-git";
-    asds = [ "cl-rethinkdb-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-rethinkdb/2016-08-25/cl-rethinkdb-20160825-git.tgz";
-      sha256 = "0sps1p203gn7i123w96pj5ggpncmkngkfdb6zfnm5yjq544sjjf7";
-      system = "cl-rethinkdb-test";
-      asd = "cl-rethinkdb-test";
-    });
-    systems = [ "cl-rethinkdb-test" ];
-    lispLibs = [ (getAttr "blackbird" pkgs) (getAttr "cl-async" pkgs) (getAttr "cl-ppcre" pkgs) (getAttr "cl-rethinkdb" pkgs) (getAttr "fiveam" pkgs) ];
-  };
-  cl-rfc2047 = {
-    pname = "cl-rfc2047";
-    version = "20150804-git";
-    asds = [ "cl-rfc2047" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-rfc2047/2015-08-04/cl-rfc2047-20150804-git.tgz";
-      sha256 = "1kh48p5i7lmv1hcdsddlcjavhai9gi54jndnbpm9r55a6ladi8gv";
-      system = "cl-rfc2047";
-      asd = "cl-rfc2047";
-    });
-    systems = [ "cl-rfc2047" ];
-    lispLibs = [ (getAttr "babel" pkgs) (getAttr "cl-base64" pkgs) ];
-  };
-  cl-rfc2047-test = {
-    pname = "cl-rfc2047-test";
-    version = "20150804-git";
-    asds = [ "cl-rfc2047-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-rfc2047/2015-08-04/cl-rfc2047-20150804-git.tgz";
-      sha256 = "1kh48p5i7lmv1hcdsddlcjavhai9gi54jndnbpm9r55a6ladi8gv";
-      system = "cl-rfc2047-test";
-      asd = "cl-rfc2047-test";
-    });
-    systems = [ "cl-rfc2047-test" ];
-    lispLibs = [ (getAttr "cl-ppcre" pkgs) (getAttr "cl-rfc2047" pkgs) (getAttr "lift" pkgs) ];
-  };
-  cl-rfc4251 = {
-    pname = "cl-rfc4251";
-    version = "20210531-git";
-    asds = [ "cl-rfc4251" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-rfc4251/2021-05-31/cl-rfc4251-20210531-git.tgz";
-      sha256 = "0n5aq88qnn19ng3av1h5npp2c43rl7zl8ccrz2rg0s2r57wvyjd3";
-      system = "cl-rfc4251";
-      asd = "cl-rfc4251";
-    });
-    systems = [ "cl-rfc4251" ];
-    lispLibs = [ (getAttr "trivial-gray-streams" pkgs) (getAttr "uiop" pkgs) ];
-  };
-  cl-rfc4251_dot_test = {
-    pname = "cl-rfc4251.test";
-    version = "20210531-git";
-    asds = [ "cl-rfc4251.test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-rfc4251/2021-05-31/cl-rfc4251-20210531-git.tgz";
-      sha256 = "0n5aq88qnn19ng3av1h5npp2c43rl7zl8ccrz2rg0s2r57wvyjd3";
-      system = "cl-rfc4251.test";
-      asd = "cl-rfc4251.test";
-    });
-    systems = [ "cl-rfc4251.test" ];
-    lispLibs = [ (getAttr "cl-rfc4251" pkgs) (getAttr "rove" pkgs) ];
-  };
-  cl-riff = {
-    pname = "cl-riff";
-    version = "20220707-git";
-    asds = [ "cl-riff" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-riff/2022-07-07/cl-riff-20220707-git.tgz";
-      sha256 = "0b2j6yw3xkv6611snn7cy56vmnjfgi58wyvfr9lx82xkakd9rw3z";
-      system = "cl-riff";
-      asd = "cl-riff";
-    });
-    systems = [ "cl-riff" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) ];
-  };
-  cl-rlimit = {
-    pname = "cl-rlimit";
-    version = "20150608-git";
-    asds = [ "cl-rlimit" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-rlimit/2015-06-08/cl-rlimit-20150608-git.tgz";
-      sha256 = "19p02r380qhs76qlcb3jp4lm4nsnpy7zch01fdiwn7l7xgxkzxh0";
-      system = "cl-rlimit";
-      asd = "cl-rlimit";
-    });
-    systems = [ "cl-rlimit" ];
-    lispLibs = [ (getAttr "cffi" pkgs) (getAttr "cffi-grovel" pkgs) ];
-  };
-  cl-rmath = {
-    pname = "cl-rmath";
-    version = "20180328-git";
-    asds = [ "cl-rmath" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-rmath/2018-03-28/cl-rmath-20180328-git.tgz";
-      sha256 = "1ld8vbpy10paymx2hn0mcgd21i7cjhdrayln1jx0kayqxm12mmk4";
-      system = "cl-rmath";
-      asd = "cl-rmath";
-    });
-    systems = [ "cl-rmath" ];
-    lispLibs = [ (getAttr "cffi" pkgs) ];
-  };
-  cl-robdd = {
-    pname = "cl-robdd";
-    version = "export-to-quicklisp-502a46e2-git";
-    asds = [ "cl-robdd" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/regular-type-expression/2020-02-18/regular-type-expression-export-to-quicklisp-502a46e2-git.tgz";
-      sha256 = "1im07p7sbbhdjx9v8fx3v1xdqx1085lra6fsb4sh2bssw7m5xfxi";
-      system = "cl-robdd";
-      asd = "cl-robdd";
-    });
-    systems = [ "cl-robdd" ];
-    lispLibs = [ (getAttr "adjuvant" pkgs) ];
-  };
-  cl-robdd-analysis = {
-    pname = "cl-robdd-analysis";
-    version = "export-to-quicklisp-502a46e2-git";
-    asds = [ "cl-robdd-analysis" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/regular-type-expression/2020-02-18/regular-type-expression-export-to-quicklisp-502a46e2-git.tgz";
-      sha256 = "1im07p7sbbhdjx9v8fx3v1xdqx1085lra6fsb4sh2bssw7m5xfxi";
-      system = "cl-robdd-analysis";
-      asd = "cl-robdd-analysis";
-    });
-    systems = [ "cl-robdd-analysis" ];
-    lispLibs = [ (getAttr "cl-fad" pkgs) (getAttr "adjuvant" pkgs) (getAttr "cl-robdd" pkgs) ];
-  };
-  cl-robdd-analysis-test = {
-    pname = "cl-robdd-analysis-test";
-    version = "export-to-quicklisp-502a46e2-git";
-    asds = [ "cl-robdd-analysis-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/regular-type-expression/2020-02-18/regular-type-expression-export-to-quicklisp-502a46e2-git.tgz";
-      sha256 = "1im07p7sbbhdjx9v8fx3v1xdqx1085lra6fsb4sh2bssw7m5xfxi";
-      system = "cl-robdd-analysis-test";
-      asd = "cl-robdd-analysis-test";
-    });
-    systems = [ "cl-robdd-analysis-test" ];
-    lispLibs = [ (getAttr "adjuvant" pkgs) (getAttr "cl-robdd-analysis" pkgs) (getAttr "scrutiny" pkgs) ];
-  };
-  cl-robdd-test = {
-    pname = "cl-robdd-test";
-    version = "export-to-quicklisp-502a46e2-git";
-    asds = [ "cl-robdd-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/regular-type-expression/2020-02-18/regular-type-expression-export-to-quicklisp-502a46e2-git.tgz";
-      sha256 = "1im07p7sbbhdjx9v8fx3v1xdqx1085lra6fsb4sh2bssw7m5xfxi";
-      system = "cl-robdd-test";
-      asd = "cl-robdd-test";
-    });
-    systems = [ "cl-robdd-test" ];
-    lispLibs = [ (getAttr "cl-fad" pkgs) (getAttr "adjuvant" pkgs) (getAttr "cl-robdd" pkgs) (getAttr "scrutiny" pkgs) ];
-  };
-  cl-rrd = {
-    pname = "cl-rrd";
-    version = "20130128-git";
-    asds = [ "cl-rrd" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-rrd/2013-01-28/cl-rrd-20130128-git.tgz";
-      sha256 = "0a7fs46q41qzi6k8q9lvxryn2m90vamcsw7vl9kcjivyckjqrsm2";
-      system = "cl-rrd";
-      asd = "cl-rrd";
-    });
-    systems = [ "cl-rrd" ];
-    lispLibs = [ (getAttr "cffi" pkgs) ];
-  };
-  cl-rrt = {
-    pname = "cl-rrt";
-    version = "20200925-git";
-    asds = [ "cl-rrt" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-rrt/2020-09-25/cl-rrt-20200925-git.tgz";
-      sha256 = "0lf1dvw5j9awy7ic1i4j5wd7657a170ywxihinmsdn4bwd4fynv0";
-      system = "cl-rrt";
-      asd = "cl-rrt";
-    });
-    systems = [ "cl-rrt" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "anaphora" pkgs) (getAttr "cl-syntax-annot" pkgs) (getAttr "iterate" pkgs) ];
-  };
-  cl-rrt_dot_benchmark = {
-    pname = "cl-rrt.benchmark";
-    version = "20200925-git";
-    asds = [ "cl-rrt.benchmark" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-rrt/2020-09-25/cl-rrt-20200925-git.tgz";
-      sha256 = "0lf1dvw5j9awy7ic1i4j5wd7657a170ywxihinmsdn4bwd4fynv0";
-      system = "cl-rrt.benchmark";
-      asd = "cl-rrt.benchmark";
-    });
-    systems = [ "cl-rrt.benchmark" ];
-    lispLibs = [ (getAttr "cl-rrt" pkgs) (getAttr "cl-rrt_dot_rtree" pkgs) (getAttr "cl-rrt_dot_test" pkgs) (getAttr "fiveam" pkgs) (getAttr "vecto" pkgs) ];
-  };
-  cl-rrt_dot_rtree = {
-    pname = "cl-rrt.rtree";
-    version = "20200925-git";
-    asds = [ "cl-rrt.rtree" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-rrt/2020-09-25/cl-rrt-20200925-git.tgz";
-      sha256 = "0lf1dvw5j9awy7ic1i4j5wd7657a170ywxihinmsdn4bwd4fynv0";
-      system = "cl-rrt.rtree";
-      asd = "cl-rrt.rtree";
-    });
-    systems = [ "cl-rrt.rtree" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "anaphora" pkgs) (getAttr "cl-rrt" pkgs) (getAttr "cl-syntax-annot" pkgs) (getAttr "iterate" pkgs) (getAttr "spatial-trees" pkgs) (getAttr "spatial-trees_dot_nns" pkgs) (getAttr "trivia" pkgs) ];
-  };
-  cl-rrt_dot_test = {
-    pname = "cl-rrt.test";
-    version = "20200925-git";
-    asds = [ "cl-rrt.test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-rrt/2020-09-25/cl-rrt-20200925-git.tgz";
-      sha256 = "0lf1dvw5j9awy7ic1i4j5wd7657a170ywxihinmsdn4bwd4fynv0";
-      system = "cl-rrt.test";
-      asd = "cl-rrt.test";
-    });
-    systems = [ "cl-rrt.test" ];
-    lispLibs = [ (getAttr "cl-rrt" pkgs) (getAttr "cl-rrt_dot_rtree" pkgs) (getAttr "fiveam" pkgs) (getAttr "vecto" pkgs) ];
-  };
-  cl-rsvg2 = {
-    pname = "cl-rsvg2";
-    version = "20200925-git";
-    asds = [ "cl-rsvg2" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-rsvg2/2020-09-25/cl-rsvg2-20200925-git.tgz";
-      sha256 = "1amq4q27lj0nzffvwmqrkg8v9pdcf0281zzrvxl9w6vdm9qy1v3n";
-      system = "cl-rsvg2";
-      asd = "cl-rsvg2";
-    });
-    systems = [ "cl-rsvg2" ];
-    lispLibs = [ (getAttr "cffi" pkgs) (getAttr "cl-cairo2" pkgs) (getAttr "cl-gtk2-glib" pkgs) (getAttr "trivial-gray-streams" pkgs) ];
-  };
-  cl-rsvg2-pixbuf = {
-    pname = "cl-rsvg2-pixbuf";
-    version = "20200925-git";
-    asds = [ "cl-rsvg2-pixbuf" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-rsvg2/2020-09-25/cl-rsvg2-20200925-git.tgz";
-      sha256 = "1amq4q27lj0nzffvwmqrkg8v9pdcf0281zzrvxl9w6vdm9qy1v3n";
-      system = "cl-rsvg2-pixbuf";
-      asd = "cl-rsvg2-pixbuf";
-    });
-    systems = [ "cl-rsvg2-pixbuf" ];
-    lispLibs = [ (getAttr "cl-gtk2-gdk" pkgs) (getAttr "cl-rsvg2" pkgs) ];
-  };
-  cl-rsvg2-test = {
-    pname = "cl-rsvg2-test";
-    version = "20200925-git";
-    asds = [ "cl-rsvg2-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-rsvg2/2020-09-25/cl-rsvg2-20200925-git.tgz";
-      sha256 = "1amq4q27lj0nzffvwmqrkg8v9pdcf0281zzrvxl9w6vdm9qy1v3n";
-      system = "cl-rsvg2-test";
-      asd = "cl-rsvg2-test";
-    });
-    systems = [ "cl-rsvg2-test" ];
-    lispLibs = [ (getAttr "cffi" pkgs) (getAttr "cl-rsvg2" pkgs) (getAttr "fiveam" pkgs) ];
-  };
-  cl-rules = {
-    pname = "cl-rules";
-    version = "20190710-git";
-    asds = [ "cl-rules" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-rules/2019-07-10/cl-rules-20190710-git.tgz";
-      sha256 = "0jidck62n0jkfqwrpqjn43zmjb3jlfaxxhn2lsyfwy2740i8ppr1";
-      system = "cl-rules";
-      asd = "cl-rules";
-    });
-    systems = [ "cl-rules" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cl-yaml" pkgs) ];
-  };
-  cl-rules-test = {
-    pname = "cl-rules-test";
-    version = "20190710-git";
-    asds = [ "cl-rules-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-rules/2019-07-10/cl-rules-20190710-git.tgz";
-      sha256 = "0jidck62n0jkfqwrpqjn43zmjb3jlfaxxhn2lsyfwy2740i8ppr1";
-      system = "cl-rules-test";
-      asd = "cl-rules-test";
-    });
-    systems = [ "cl-rules-test" ];
-    lispLibs = [ (getAttr "cl-rules" pkgs) (getAttr "prove" pkgs) (getAttr "prove-asdf" pkgs) ];
-  };
-  cl-s3 = {
-    pname = "cl-s3";
-    version = "20130128-git";
-    asds = [ "cl-s3" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-s3/2013-01-28/cl-s3-20130128-git.tgz";
-      sha256 = "1lbvf7phkm5vjk013p484rh4vh33i58jlqq3z4cv2yxqcw6r639d";
-      system = "cl-s3";
-      asd = "cl-s3";
-    });
-    systems = [ "cl-s3" ];
-    lispLibs = [ (getAttr "ironclad" pkgs) (getAttr "s-base64" pkgs) (getAttr "s-http-client" pkgs) (getAttr "s-utils" pkgs) (getAttr "s-xml" pkgs) ];
-  };
-  cl-sam = {
-    pname = "cl-sam";
-    version = "20150608-git";
-    asds = [ "cl-sam" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-sam/2015-06-08/cl-sam-20150608-git.tgz";
-      sha256 = "0frrxz70jin4sa5n087zm4ikckf1zdjqqpjq3llrv46753c62fc6";
-      system = "cl-sam";
-      asd = "cl-sam";
-    });
-    systems = [ "cl-sam" ];
-    lispLibs = [ (getAttr "deoxybyte-gzip" pkgs) (getAttr "deoxybyte-systems" pkgs) (getAttr "deoxybyte-unix" pkgs) ];
-  };
-  cl-sam-test = {
-    pname = "cl-sam-test";
-    version = "20150608-git";
-    asds = [ "cl-sam-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-sam/2015-06-08/cl-sam-20150608-git.tgz";
-      sha256 = "0frrxz70jin4sa5n087zm4ikckf1zdjqqpjq3llrv46753c62fc6";
-      system = "cl-sam-test";
-      asd = "cl-sam-test";
-    });
-    systems = [ "cl-sam-test" ];
-    lispLibs = [ (getAttr "cl-sam" pkgs) (getAttr "deoxybyte-io" pkgs) (getAttr "lift" pkgs) ];
-  };
-  cl-sandbox = {
-    pname = "cl-sandbox";
-    version = "20180131-git";
-    asds = [ "cl-sandbox" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-sandbox/2018-01-31/cl-sandbox-20180131-git.tgz";
-      sha256 = "053zxy3zi5jvlbg8zxlf922sxb32mq34zvwfhgpj4rcmgvgmqnxv";
-      system = "cl-sandbox";
-      asd = "cl-sandbox";
-    });
-    systems = [ "cl-sandbox" ];
-    lispLibs = [  ];
-  };
-  cl-sandbox_slash_tests = {
-    pname = "cl-sandbox_tests";
-    version = "20180131-git";
-    asds = [ "cl-sandbox" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-sandbox/2018-01-31/cl-sandbox-20180131-git.tgz";
-      sha256 = "053zxy3zi5jvlbg8zxlf922sxb32mq34zvwfhgpj4rcmgvgmqnxv";
-      system = "cl-sandbox";
-      asd = "cl-sandbox";
-    });
-    systems = [ "cl-sandbox/tests" ];
-    lispLibs = [ (getAttr "cl-sandbox" pkgs) (getAttr "fiveam" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  cl-sasl = {
-    pname = "cl-sasl";
-    version = "v0.3.2";
-    asds = [ "cl-sasl" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-sasl/2019-05-21/cl-sasl-v0.3.2.tgz";
-      sha256 = "0a05q8rls2hn46rbbk6w5km9kqvhsj365zlw6hp32724xy2nd98w";
-      system = "cl-sasl";
-      asd = "cl-sasl";
-    });
-    systems = [ "cl-sasl" ];
-    lispLibs = [ (getAttr "ironclad" pkgs) ];
-  };
-  cl-sat = {
-    pname = "cl-sat";
-    version = "20220707-git";
-    asds = [ "cl-sat" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-sat/2022-07-07/cl-sat-20220707-git.tgz";
-      sha256 = "1fcvxpmja757vyyhcpb00g150dyx90jsg9z8s596vy1nb0z81f49";
-      system = "cl-sat";
-      asd = "cl-sat";
-    });
-    systems = [ "cl-sat" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "iterate" pkgs) (getAttr "trivia" pkgs) (getAttr "trivial-features" pkgs) ];
-  };
-  cl-sat_dot_glucose = {
-    pname = "cl-sat.glucose";
-    version = "20220331-git";
-    asds = [ "cl-sat.glucose" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-sat.glucose/2022-03-31/cl-sat.glucose-20220331-git.tgz";
-      sha256 = "11hbhsjzw3xzz6i6niisk5h271kg52y3y77sl6ljnszfgp9xjfxy";
-      system = "cl-sat.glucose";
-      asd = "cl-sat.glucose";
-    });
-    systems = [ "cl-sat.glucose" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cl-sat" pkgs) (getAttr "iterate" pkgs) (getAttr "trivia" pkgs) (getAttr "trivial-package-manager" pkgs) ];
-  };
-  cl-sat_dot_glucose_dot_test = {
-    pname = "cl-sat.glucose.test";
-    version = "20220331-git";
-    asds = [ "cl-sat.glucose.test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-sat.glucose/2022-03-31/cl-sat.glucose-20220331-git.tgz";
-      sha256 = "11hbhsjzw3xzz6i6niisk5h271kg52y3y77sl6ljnszfgp9xjfxy";
-      system = "cl-sat.glucose.test";
-      asd = "cl-sat.glucose.test";
-    });
-    systems = [ "cl-sat.glucose.test" ];
-    lispLibs = [ (getAttr "cl-sat_dot_glucose" pkgs) (getAttr "fiveam" pkgs) ];
-  };
-  cl-sat_dot_minisat = {
-    pname = "cl-sat.minisat";
-    version = "20220331-git";
-    asds = [ "cl-sat.minisat" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-sat.minisat/2022-03-31/cl-sat.minisat-20220331-git.tgz";
-      sha256 = "1jrpsdalz9wd3aipfvigimzgzrlb6fylw9cxf1vhhmii46yg9mdr";
-      system = "cl-sat.minisat";
-      asd = "cl-sat.minisat";
-    });
-    systems = [ "cl-sat.minisat" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cl-sat" pkgs) (getAttr "iterate" pkgs) (getAttr "trivia" pkgs) (getAttr "trivial-package-manager" pkgs) ];
-  };
-  cl-sat_dot_minisat_dot_test = {
-    pname = "cl-sat.minisat.test";
-    version = "20220331-git";
-    asds = [ "cl-sat.minisat.test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-sat.minisat/2022-03-31/cl-sat.minisat-20220331-git.tgz";
-      sha256 = "1jrpsdalz9wd3aipfvigimzgzrlb6fylw9cxf1vhhmii46yg9mdr";
-      system = "cl-sat.minisat.test";
-      asd = "cl-sat.minisat.test";
-    });
-    systems = [ "cl-sat.minisat.test" ];
-    lispLibs = [ (getAttr "cl-sat_dot_minisat" pkgs) (getAttr "fiveam" pkgs) ];
-  };
-  cl-sat_dot_test = {
-    pname = "cl-sat.test";
-    version = "20220707-git";
-    asds = [ "cl-sat.test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-sat/2022-07-07/cl-sat-20220707-git.tgz";
-      sha256 = "1fcvxpmja757vyyhcpb00g150dyx90jsg9z8s596vy1nb0z81f49";
-      system = "cl-sat.test";
-      asd = "cl-sat.test";
-    });
-    systems = [ "cl-sat.test" ];
-    lispLibs = [ (getAttr "cl-sat" pkgs) (getAttr "fiveam" pkgs) ];
-  };
-  cl-scram = {
-    pname = "cl-scram";
-    version = "20150923-git";
-    asds = [ "cl-scram" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-scram/2015-09-23/cl-scram-20150923-git.tgz";
-      sha256 = "1absr9h9z79f1fbs4g33y2rc9jsqjs7vd2l5sl8dvqq4fyx8v6g0";
-      system = "cl-scram";
-      asd = "cl-scram";
-    });
-    systems = [ "cl-scram" ];
-    lispLibs = [ (getAttr "cl-base64" pkgs) (getAttr "cl-sasl" pkgs) (getAttr "ironclad" pkgs) (getAttr "secure-random" pkgs) (getAttr "split-sequence" pkgs) ];
-  };
-  cl-scribd = {
-    pname = "cl-scribd";
-    version = "20130312-git";
-    asds = [ "cl-scribd" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-scribd/2013-03-12/cl-scribd-20130312-git.tgz";
-      sha256 = "0r4ah3f1ndi66bm1mir3ldl31sfbmav0kdfpb16f1n9931452mry";
-      system = "cl-scribd";
-      asd = "cl-scribd";
-    });
-    systems = [ "cl-scribd" ];
-    lispLibs = [ (getAttr "cxml" pkgs) (getAttr "drakma" pkgs) (getAttr "ironclad" pkgs) ];
-  };
-  cl-scripting = {
-    pname = "cl-scripting";
-    version = "20211020-git";
-    asds = [ "cl-scripting" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-scripting/2021-10-20/cl-scripting-20211020-git.tgz";
-      sha256 = "1xi8klkn4fhmcrnhxzxvl0rj68dc7az6l2hc10560g9jvblcmmpp";
-      system = "cl-scripting";
-      asd = "cl-scripting";
-    });
-    systems = [ "cl-scripting" ];
-    lispLibs = [ (getAttr "cl-launch" pkgs) (getAttr "fare-utils" pkgs) ];
-  };
-  cl-scripting_slash_test = {
-    pname = "cl-scripting_test";
-    version = "20211020-git";
-    asds = [ "cl-scripting" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-scripting/2021-10-20/cl-scripting-20211020-git.tgz";
-      sha256 = "1xi8klkn4fhmcrnhxzxvl0rj68dc7az6l2hc10560g9jvblcmmpp";
-      system = "cl-scripting";
-      asd = "cl-scripting";
-    });
-    systems = [ "cl-scripting/test" ];
-    lispLibs = [  ];
-    meta = {
-      broken = true;
-    };
-  };
-  cl-scrobbler = {
-    pname = "cl-scrobbler";
-    version = "20111105-git";
-    asds = [ "cl-scrobbler" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-scrobbler/2011-11-05/cl-scrobbler-20111105-git.tgz";
-      sha256 = "0cd0zfmhxf5chcg7hncavfjr8m06cjbiyqylk76z8mprdsv1n062";
-      system = "cl-scrobbler";
-      asd = "cl-scrobbler";
-    });
-    systems = [ "cl-scrobbler" ];
-    lispLibs = [ (getAttr "arnesi" pkgs) (getAttr "cl-store" pkgs) (getAttr "drakma" pkgs) (getAttr "flexi-streams" pkgs) (getAttr "md5" pkgs) (getAttr "st-json" pkgs) ];
-  };
-  cl-scrobbler-tests = {
-    pname = "cl-scrobbler-tests";
-    version = "20111105-git";
-    asds = [ "cl-scrobbler-tests" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-scrobbler/2011-11-05/cl-scrobbler-20111105-git.tgz";
-      sha256 = "0cd0zfmhxf5chcg7hncavfjr8m06cjbiyqylk76z8mprdsv1n062";
-      system = "cl-scrobbler-tests";
-      asd = "cl-scrobbler";
-    });
-    systems = [ "cl-scrobbler-tests" ];
-    lispLibs = [ (getAttr "cl-scrobbler" pkgs) (getAttr "fiveam" pkgs) ];
-  };
-  cl-scsu = {
-    pname = "cl-scsu";
-    version = "20221106-git";
-    asds = [ "cl-scsu" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-scsu/2022-11-06/cl-scsu-20221106-git.tgz";
-      sha256 = "0jiqyayflyyrdks4yl894vzw2bkxkd87w4sy4n6ikjz450xk3yxf";
-      system = "cl-scsu";
-      asd = "cl-scsu";
-    });
-    systems = [ "cl-scsu" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) ];
-  };
-  cl-scsu-test = {
-    pname = "cl-scsu-test";
-    version = "20221106-git";
-    asds = [ "cl-scsu-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-scsu/2022-11-06/cl-scsu-20221106-git.tgz";
-      sha256 = "0jiqyayflyyrdks4yl894vzw2bkxkd87w4sy4n6ikjz450xk3yxf";
-      system = "cl-scsu-test";
-      asd = "cl-scsu-test";
-    });
-    systems = [ "cl-scsu-test" ];
-    lispLibs = [ (getAttr "_1am" pkgs) (getAttr "alexandria" pkgs) (getAttr "cl-scsu" pkgs) ];
-  };
-  cl-selenium = {
-    pname = "cl-selenium";
-    version = "20180328-git";
-    asds = [ "cl-selenium" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-selenium-webdriver/2018-03-28/cl-selenium-webdriver-20180328-git.tgz";
-      sha256 = "0216vqg1ax5gcqahclii7ifqpc92rbi86rfcf1qn8bdahmfjccbb";
-      system = "cl-selenium";
-      asd = "cl-selenium";
-    });
-    systems = [ "cl-selenium" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cl-json" pkgs) (getAttr "dexador" pkgs) (getAttr "quri" pkgs) (getAttr "split-sequence" pkgs) ];
-  };
-  cl-selenium-test = {
-    pname = "cl-selenium-test";
-    version = "20180328-git";
-    asds = [ "cl-selenium-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-selenium-webdriver/2018-03-28/cl-selenium-webdriver-20180328-git.tgz";
-      sha256 = "0216vqg1ax5gcqahclii7ifqpc92rbi86rfcf1qn8bdahmfjccbb";
-      system = "cl-selenium-test";
-      asd = "cl-selenium-test";
-    });
-    systems = [ "cl-selenium-test" ];
-    lispLibs = [ (getAttr "cl-selenium" pkgs) (getAttr "prove" pkgs) (getAttr "prove-asdf" pkgs) ];
-  };
-  cl-semver = {
-    pname = "cl-semver";
-    version = "20221106-git";
-    asds = [ "cl-semver" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-semver/2022-11-06/cl-semver-20221106-git.tgz";
-      sha256 = "17ghn3s5pbiahkm2i8fh460ykx7n9c4jpjazrw45ixmx832agzbz";
-      system = "cl-semver";
-      asd = "cl-semver";
-    });
-    systems = [ "cl-semver" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "esrap" pkgs) (getAttr "named-readtables" pkgs) ];
-  };
-  cl-semver-test = {
-    pname = "cl-semver-test";
-    version = "20221106-git";
-    asds = [ "cl-semver-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-semver/2022-11-06/cl-semver-20221106-git.tgz";
-      sha256 = "17ghn3s5pbiahkm2i8fh460ykx7n9c4jpjazrw45ixmx832agzbz";
-      system = "cl-semver-test";
-      asd = "cl-semver-test";
-    });
-    systems = [ "cl-semver-test" ];
-    lispLibs = [ (getAttr "cl-semver" pkgs) (getAttr "stefil" pkgs) ];
-  };
-  cl-sentiment = {
-    pname = "cl-sentiment";
-    version = "20130128-git";
-    asds = [ "cl-sentiment" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-sentiment/2013-01-28/cl-sentiment-20130128-git.tgz";
-      sha256 = "18jx6ivbzcg9bsmp1pmlqvzr4kfxzll75b4viz1hrkq78nsnpp5v";
-      system = "cl-sentiment";
-      asd = "cl-sentiment";
-    });
-    systems = [ "cl-sentiment" ];
-    lispLibs = [ (getAttr "cl-ppcre" pkgs) (getAttr "rt" pkgs) ];
-  };
-  cl-ses4 = {
-    pname = "cl-ses4";
-    version = "20221106-git";
-    asds = [ "cl-ses4" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-ses4/2022-11-06/cl-ses4-20221106-git.tgz";
-      sha256 = "1n31k81i19hx26h9wcz39fsciq92hbblnbd15krblx9g877a1598";
-      system = "cl-ses4";
-      asd = "cl-ses4";
-    });
-    systems = [ "cl-ses4" ];
-    lispLibs = [ (getAttr "arrow-macros" pkgs) (getAttr "cl-base64" pkgs) (getAttr "cl-ppcre" pkgs) (getAttr "dexador" pkgs) (getAttr "ironclad" pkgs) (getAttr "local-time" pkgs) (getAttr "quickapp" pkgs) (getAttr "quri" pkgs) ];
-  };
-  cl-ses4_slash_test = {
-    pname = "cl-ses4_test";
-    version = "20221106-git";
-    asds = [ "cl-ses4" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-ses4/2022-11-06/cl-ses4-20221106-git.tgz";
-      sha256 = "1n31k81i19hx26h9wcz39fsciq92hbblnbd15krblx9g877a1598";
-      system = "cl-ses4";
-      asd = "cl-ses4";
-    });
-    systems = [ "cl-ses4/test" ];
-    lispLibs = [ (getAttr "cl-ses4" pkgs) (getAttr "fiveam" pkgs) (getAttr "uiop" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  cl-setlocale = {
-    pname = "cl-setlocale";
-    version = "20201220-git";
-    asds = [ "cl-setlocale" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-setlocale/2020-12-20/cl-setlocale-20201220-git.tgz";
-      sha256 = "0g1b89yj6n42ayf2074krk3h9yvglqxn54a6i3sxgpsqww2ll2a1";
-      system = "cl-setlocale";
-      asd = "cl-setlocale";
-    });
-    systems = [ "cl-setlocale" ];
-    lispLibs = [ (getAttr "cffi" pkgs) (getAttr "cffi-grovel" pkgs) ];
-  };
-  cl-setlocale_slash_tests = {
-    pname = "cl-setlocale_tests";
-    version = "20201220-git";
-    asds = [ "cl-setlocale" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-setlocale/2020-12-20/cl-setlocale-20201220-git.tgz";
-      sha256 = "0g1b89yj6n42ayf2074krk3h9yvglqxn54a6i3sxgpsqww2ll2a1";
-      system = "cl-setlocale";
-      asd = "cl-setlocale";
-    });
-    systems = [ "cl-setlocale/tests" ];
-    lispLibs = [ (getAttr "cl-setlocale" pkgs) (getAttr "fiveam" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  cl-sha1 = {
-    pname = "cl-sha1";
-    version = "20210807-git";
-    asds = [ "cl-sha1" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-sha1/2021-08-07/cl-sha1-20210807-git.tgz";
-      sha256 = "16hczcr7ghah0p9fi29ddrw5c4zbb2d4765iigfx7yrgk5z5jb8p";
-      system = "cl-sha1";
-      asd = "cl-sha1";
-    });
-    systems = [ "cl-sha1" ];
-    lispLibs = [ (getAttr "cl-base64" pkgs) ];
-  };
-  cl-shellwords = {
-    pname = "cl-shellwords";
-    version = "20150923-git";
-    asds = [ "cl-shellwords" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-shellwords/2015-09-23/cl-shellwords-20150923-git.tgz";
-      sha256 = "0im8cni1ig5zaha9gbmma7zk1xxa4xajvzfgalvl2f0fhvksl4pn";
-      system = "cl-shellwords";
-      asd = "cl-shellwords";
-    });
-    systems = [ "cl-shellwords" ];
-    lispLibs = [ (getAttr "cl-ppcre" pkgs) ];
-  };
-  cl-shellwords-test = {
-    pname = "cl-shellwords-test";
-    version = "20150923-git";
-    asds = [ "cl-shellwords-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-shellwords/2015-09-23/cl-shellwords-20150923-git.tgz";
-      sha256 = "0im8cni1ig5zaha9gbmma7zk1xxa4xajvzfgalvl2f0fhvksl4pn";
-      system = "cl-shellwords-test";
-      asd = "cl-shellwords-test";
-    });
-    systems = [ "cl-shellwords-test" ];
-    lispLibs = [ (getAttr "cl-shellwords" pkgs) (getAttr "prove" pkgs) ];
-  };
-  cl-simple-concurrent-jobs = {
-    pname = "cl-simple-concurrent-jobs";
-    version = "20150505-git";
-    asds = [ "cl-simple-concurrent-jobs" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-simple-concurrent-jobs/2015-05-05/cl-simple-concurrent-jobs-20150505-git.tgz";
-      sha256 = "0mv7svsil58h8v8kq9965bpbradmhfpyrmi61dbzp5mbw8c5mrwj";
-      system = "cl-simple-concurrent-jobs";
-      asd = "cl-simple-concurrent-jobs";
-    });
-    systems = [ "cl-simple-concurrent-jobs" ];
-    lispLibs = [ (getAttr "bordeaux-threads" pkgs) (getAttr "chanl" pkgs) ];
-  };
-  cl-simple-table = {
-    pname = "cl-simple-table";
-    version = "20130312-git";
-    asds = [ "cl-simple-table" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-simple-table/2013-03-12/cl-simple-table-20130312-git.tgz";
-      sha256 = "1pnczi5hbqlyxxvzlpy6vc58qc9hh9mdm5rgq304bp3v2qajh0b7";
-      system = "cl-simple-table";
-      asd = "cl-simple-table";
-    });
-    systems = [ "cl-simple-table" ];
-    lispLibs = [  ];
-  };
-  cl-singleton-mixin = {
-    pname = "cl-singleton-mixin";
-    version = "20150505-git";
-    asds = [ "cl-singleton-mixin" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-singleton-mixin/2015-05-05/cl-singleton-mixin-20150505-git.tgz";
-      sha256 = "10dvwzx1kw9ac163i6sc8yfg3hpkn0dlq4hf6qipb46b4mcib01s";
-      system = "cl-singleton-mixin";
-      asd = "cl-singleton-mixin";
-    });
-    systems = [ "cl-singleton-mixin" ];
-    lispLibs = [ (getAttr "closer-mop" pkgs) (getAttr "metap" pkgs) ];
-  };
-  cl-singleton-mixin-test = {
-    pname = "cl-singleton-mixin-test";
-    version = "20150505-git";
-    asds = [ "cl-singleton-mixin-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-singleton-mixin/2015-05-05/cl-singleton-mixin-20150505-git.tgz";
-      sha256 = "10dvwzx1kw9ac163i6sc8yfg3hpkn0dlq4hf6qipb46b4mcib01s";
-      system = "cl-singleton-mixin-test";
-      asd = "cl-singleton-mixin-test";
-    });
-    systems = [ "cl-singleton-mixin-test" ];
-    lispLibs = [ (getAttr "cl-singleton-mixin" pkgs) (getAttr "fiveam" pkgs) ];
-  };
-  cl-skip-list = {
-    pname = "cl-skip-list";
-    version = "20220707-git";
-    asds = [ "cl-skip-list" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-skip-list/2022-07-07/cl-skip-list-20220707-git.tgz";
-      sha256 = "1k3hbi9n1yzky3hjcg48jkkkp2jx5vm7bsywhnyyb1z6hz5phakd";
-      system = "cl-skip-list";
-      asd = "cl-skip-list";
-    });
-    systems = [ "cl-skip-list" ];
-    lispLibs = [ (getAttr "cffi" pkgs) ];
-  };
-  cl-skkserv = {
-    pname = "cl-skkserv";
-    version = "20201220-git";
-    asds = [ "cl-skkserv" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-skkserv/2020-12-20/cl-skkserv-20201220-git.tgz";
-      sha256 = "1khbfsvf70dyrrkbwcblzd6bkgx1z6k9ras57inmv2lqqr93m5l4";
-      system = "cl-skkserv";
-      asd = "cl-skkserv";
-    });
-    systems = [ "cl-skkserv" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "babel" pkgs) (getAttr "cl-ppcre" pkgs) (getAttr "drakma" pkgs) (getAttr "esrap" pkgs) (getAttr "flexi-streams" pkgs) (getAttr "jp-numeral" pkgs) (getAttr "named-readtables" pkgs) (getAttr "papyrus" pkgs) (getAttr "yason" pkgs) ];
-  };
-  cl-skkserv_slash_cli = {
-    pname = "cl-skkserv_cli";
-    version = "20201220-git";
-    asds = [ "cl-skkserv" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-skkserv/2020-12-20/cl-skkserv-20201220-git.tgz";
-      sha256 = "1khbfsvf70dyrrkbwcblzd6bkgx1z6k9ras57inmv2lqqr93m5l4";
-      system = "cl-skkserv";
-      asd = "cl-skkserv";
-    });
-    systems = [ "cl-skkserv/cli" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cl-skkserv" pkgs) (getAttr "daemon" pkgs) (getAttr "unix-opts" pkgs) (getAttr "usocket" pkgs) (getAttr "usocket-server" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  cl-skkserv_slash_core = {
-    pname = "cl-skkserv_core";
-    version = "20201220-git";
-    asds = [ "cl-skkserv" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-skkserv/2020-12-20/cl-skkserv-20201220-git.tgz";
-      sha256 = "1khbfsvf70dyrrkbwcblzd6bkgx1z6k9ras57inmv2lqqr93m5l4";
-      system = "cl-skkserv";
-      asd = "cl-skkserv";
-    });
-    systems = [ "cl-skkserv/core" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "babel" pkgs) (getAttr "esrap" pkgs) (getAttr "named-readtables" pkgs) (getAttr "papyrus" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  cl-skkserv_slash_google-ime = {
-    pname = "cl-skkserv_google-ime";
-    version = "20201220-git";
-    asds = [ "cl-skkserv" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-skkserv/2020-12-20/cl-skkserv-20201220-git.tgz";
-      sha256 = "1khbfsvf70dyrrkbwcblzd6bkgx1z6k9ras57inmv2lqqr93m5l4";
-      system = "cl-skkserv";
-      asd = "cl-skkserv";
-    });
-    systems = [ "cl-skkserv/google-ime" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "babel" pkgs) (getAttr "drakma" pkgs) (getAttr "esrap" pkgs) (getAttr "flexi-streams" pkgs) (getAttr "named-readtables" pkgs) (getAttr "papyrus" pkgs) (getAttr "yason" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  cl-skkserv_slash_mixed = {
-    pname = "cl-skkserv_mixed";
-    version = "20201220-git";
-    asds = [ "cl-skkserv" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-skkserv/2020-12-20/cl-skkserv-20201220-git.tgz";
-      sha256 = "1khbfsvf70dyrrkbwcblzd6bkgx1z6k9ras57inmv2lqqr93m5l4";
-      system = "cl-skkserv";
-      asd = "cl-skkserv";
-    });
-    systems = [ "cl-skkserv/mixed" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "babel" pkgs) (getAttr "esrap" pkgs) (getAttr "named-readtables" pkgs) (getAttr "papyrus" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  cl-skkserv_slash_skk = {
-    pname = "cl-skkserv_skk";
-    version = "20201220-git";
-    asds = [ "cl-skkserv" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-skkserv/2020-12-20/cl-skkserv-20201220-git.tgz";
-      sha256 = "1khbfsvf70dyrrkbwcblzd6bkgx1z6k9ras57inmv2lqqr93m5l4";
-      system = "cl-skkserv";
-      asd = "cl-skkserv";
-    });
-    systems = [ "cl-skkserv/skk" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "babel" pkgs) (getAttr "cl-ppcre" pkgs) (getAttr "esrap" pkgs) (getAttr "jp-numeral" pkgs) (getAttr "named-readtables" pkgs) (getAttr "papyrus" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  cl-skkserv_slash_tests = {
-    pname = "cl-skkserv_tests";
-    version = "20201220-git";
-    asds = [ "cl-skkserv" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-skkserv/2020-12-20/cl-skkserv-20201220-git.tgz";
-      sha256 = "1khbfsvf70dyrrkbwcblzd6bkgx1z6k9ras57inmv2lqqr93m5l4";
-      system = "cl-skkserv";
-      asd = "cl-skkserv";
-    });
-    systems = [ "cl-skkserv/tests" ];
-    lispLibs = [ (getAttr "_1am" pkgs) (getAttr "cl-skkserv" pkgs) (getAttr "flexi-streams" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  cl-slice = {
-    pname = "cl-slice";
-    version = "20210531-git";
-    asds = [ "cl-slice" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-slice/2021-05-31/cl-slice-20210531-git.tgz";
-      sha256 = "1ybznf4y5lda6bn163jcvj281qzhm24dfcwhbgxmm5n6f27gdccl";
-      system = "cl-slice";
-      asd = "cl-slice";
-    });
-    systems = [ "cl-slice" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "anaphora" pkgs) (getAttr "let-plus" pkgs) ];
-  };
-  cl-slice-tests = {
-    pname = "cl-slice-tests";
-    version = "20210531-git";
-    asds = [ "cl-slice-tests" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-slice/2021-05-31/cl-slice-20210531-git.tgz";
-      sha256 = "1ybznf4y5lda6bn163jcvj281qzhm24dfcwhbgxmm5n6f27gdccl";
-      system = "cl-slice-tests";
-      asd = "cl-slice";
-    });
-    systems = [ "cl-slice-tests" ];
-    lispLibs = [ (getAttr "cl-slice" pkgs) (getAttr "clunit" pkgs) ];
-  };
-  cl-slp = {
-    pname = "cl-slp";
-    version = "20140826-git";
-    asds = [ "cl-slp" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-slp/2014-08-26/cl-slp-20140826-git.tgz";
-      sha256 = "10wfrw6r6w646lzx0nasnfvjpy63icxl8qm4888dpcjc57y1cd1w";
-      system = "cl-slp";
-      asd = "cl-slp";
-    });
-    systems = [ "cl-slp" ];
-    lispLibs = [ (getAttr "cffi" pkgs) ];
-  };
-  cl-slug = {
-    pname = "cl-slug";
-    version = "20180228-git";
-    asds = [ "cl-slug" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-slug/2018-02-28/cl-slug-20180228-git.tgz";
-      sha256 = "1asdq6xllmsvfw5fky9wblqcx9isac9jrrlkfl7vyxcq1wxrnflx";
-      system = "cl-slug";
-      asd = "cl-slug";
-    });
-    systems = [ "cl-slug" ];
-    lispLibs = [ (getAttr "cl-ppcre" pkgs) ];
-  };
-  cl-slug-test = {
-    pname = "cl-slug-test";
-    version = "20180228-git";
-    asds = [ "cl-slug-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-slug/2018-02-28/cl-slug-20180228-git.tgz";
-      sha256 = "1asdq6xllmsvfw5fky9wblqcx9isac9jrrlkfl7vyxcq1wxrnflx";
-      system = "cl-slug-test";
-      asd = "cl-slug-test";
-    });
-    systems = [ "cl-slug-test" ];
-    lispLibs = [ (getAttr "cl-slug" pkgs) (getAttr "prove" pkgs) (getAttr "prove-asdf" pkgs) ];
-  };
-  cl-smt-lib = {
-    pname = "cl-smt-lib";
-    version = "20220331-git";
-    asds = [ "cl-smt-lib" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-smt-lib/2022-03-31/cl-smt-lib-20220331-git.tgz";
-      sha256 = "09xqpmzd8rmp4dkj6mzwlwnhqk266abqvskz9dm6mr3cnf2r774z";
-      system = "cl-smt-lib";
-      asd = "cl-smt-lib";
-    });
-    systems = [ "cl-smt-lib" ];
-    lispLibs = [ (getAttr "asdf-package-system" pkgs) (getAttr "named-readtables" pkgs) (getAttr "trivial-gray-streams" pkgs) ];
-  };
-  cl-smtp = {
-    pname = "cl-smtp";
-    version = "20210228-git";
-    asds = [ "cl-smtp" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-smtp/2021-02-28/cl-smtp-20210228-git.tgz";
-      sha256 = "0vjjfapcrdc5671jz2d24h8zvpz7skq1x6pi9fvw6ls5sgms6fr0";
-      system = "cl-smtp";
-      asd = "cl-smtp";
-    });
-    systems = [ "cl-smtp" ];
-    lispLibs = [ (getAttr "cl_plus_ssl" pkgs) (getAttr "cl-base64" pkgs) (getAttr "flexi-streams" pkgs) (getAttr "trivial-gray-streams" pkgs) (getAttr "usocket" pkgs) ];
-  };
-  cl-soil = {
-    pname = "cl-soil";
-    version = "release-quicklisp-f27087ce-git";
-    asds = [ "cl-soil" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-soil/2018-08-31/cl-soil-release-quicklisp-f27087ce-git.tgz";
-      sha256 = "0mnz5yaw3kc14ja9g4j7dxh96kd82ifj25gy0dil7kqjd08lwcq9";
-      system = "cl-soil";
-      asd = "cl-soil";
-    });
-    systems = [ "cl-soil" ];
-    lispLibs = [ (getAttr "cffi" pkgs) (getAttr "cl-opengl" pkgs) (getAttr "documentation-utils" pkgs) ];
-  };
-  cl-soloud = {
-    pname = "cl-soloud";
-    version = "20190710-git";
-    asds = [ "cl-soloud" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-soloud/2019-07-10/cl-soloud-20190710-git.tgz";
-      sha256 = "1scdnhf052sa77zd4f250mxdqjjny2jcigwhgccrp1gldcs0ks37";
-      system = "cl-soloud";
-      asd = "cl-soloud";
-    });
-    systems = [ "cl-soloud" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cffi" pkgs) (getAttr "cl-mpg123" pkgs) (getAttr "documentation-utils" pkgs) (getAttr "trivial-features" pkgs) (getAttr "trivial-garbage" pkgs) (getAttr "trivial-indent" pkgs) ];
-  };
-  cl-sophia = {
-    pname = "cl-sophia";
-    version = "20150608-git";
-    asds = [ "cl-sophia" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-sophia/2015-06-08/cl-sophia-20150608-git.tgz";
-      sha256 = "1x027mr7lg5fs0d82n5mshnd19kan76y3zb9yxbcnq222l4j8j00";
-      system = "cl-sophia";
-      asd = "cl-sophia";
-    });
-    systems = [ "cl-sophia" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cffi" pkgs) (getAttr "cl-fad" pkgs) ];
-  };
-  cl-sophia-test = {
-    pname = "cl-sophia-test";
-    version = "20150608-git";
-    asds = [ "cl-sophia-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-sophia/2015-06-08/cl-sophia-20150608-git.tgz";
-      sha256 = "1x027mr7lg5fs0d82n5mshnd19kan76y3zb9yxbcnq222l4j8j00";
-      system = "cl-sophia-test";
-      asd = "cl-sophia";
-    });
-    systems = [ "cl-sophia-test" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cl-fad" pkgs) (getAttr "cl-sophia" pkgs) (getAttr "lisp-unit" pkgs) ];
-  };
-  cl-spark = {
-    pname = "cl-spark";
-    version = "20150709-git";
-    asds = [ "cl-spark" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-spark/2015-07-09/cl-spark-20150709-git.tgz";
-      sha256 = "0my1fsgi2rjaqkpk934f2bjy63pmnj7faza3fzvnk6k3l66y19nk";
-      system = "cl-spark";
-      asd = "cl-spark";
-    });
-    systems = [ "cl-spark" ];
-    lispLibs = [  ];
-  };
-  cl-spark-test = {
-    pname = "cl-spark-test";
-    version = "20150709-git";
-    asds = [ "cl-spark-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-spark/2015-07-09/cl-spark-20150709-git.tgz";
-      sha256 = "0my1fsgi2rjaqkpk934f2bjy63pmnj7faza3fzvnk6k3l66y19nk";
-      system = "cl-spark-test";
-      asd = "cl-spark-test";
-    });
-    systems = [ "cl-spark-test" ];
-    lispLibs = [ (getAttr "cl-spark" pkgs) (getAttr "fiveam" pkgs) ];
-  };
-  cl-sparql = {
-    pname = "cl-sparql";
-    version = "20220331-git";
-    asds = [ "cl-sparql" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-sparql/2022-03-31/cl-sparql-20220331-git.tgz";
-      sha256 = "1fjp5a25yly3l3pg07gzhz8q830fcaz0dwspigw8v90sx4insz0p";
-      system = "cl-sparql";
-      asd = "cl-sparql";
-    });
-    systems = [ "cl-sparql" ];
-    lispLibs = [ (getAttr "parser-combinators" pkgs) (getAttr "cl-ppcre" pkgs) (getAttr "puri" pkgs) (getAttr "split-sequence" pkgs) ];
-  };
-  cl-sparql-tests = {
-    pname = "cl-sparql-tests";
-    version = "20220331-git";
-    asds = [ "cl-sparql-tests" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-sparql/2022-03-31/cl-sparql-20220331-git.tgz";
-      sha256 = "1fjp5a25yly3l3pg07gzhz8q830fcaz0dwspigw8v90sx4insz0p";
-      system = "cl-sparql-tests";
-      asd = "cl-sparql-tests";
-    });
-    systems = [ "cl-sparql-tests" ];
-    lispLibs = [ (getAttr "cl-sparql" pkgs) (getAttr "fiveam" pkgs) ];
-  };
-  cl-speedy-queue = {
-    pname = "cl-speedy-queue";
-    version = "20150302-git";
-    asds = [ "cl-speedy-queue" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-speedy-queue/2015-03-02/cl-speedy-queue-20150302-git.tgz";
-      sha256 = "0czhnvxn9lvbjz9h1lb7y18nqrsq3drq5icd3lqdaa07362alriq";
-      system = "cl-speedy-queue";
-      asd = "cl-speedy-queue";
-    });
-    systems = [ "cl-speedy-queue" ];
-    lispLibs = [  ];
-  };
-  cl-spidev = {
-    pname = "cl-spidev";
-    version = "20190710-git";
-    asds = [ "cl-spidev" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-spidev/2019-07-10/cl-spidev-20190710-git.tgz";
-      sha256 = "1kif1ygpm7z7bymg86h305171vnp5jsqyq4dz8h3fbi1rzjnqfcy";
-      system = "cl-spidev";
-      asd = "cl-spidev";
-    });
-    systems = [ "cl-spidev" ];
-    lispLibs = [ (getAttr "cffi" pkgs) (getAttr "documentation-utils" pkgs) (getAttr "trivial-garbage" pkgs) ];
-  };
-  cl-ssdb = {
-    pname = "cl-ssdb";
-    version = "20210124-git";
-    asds = [ "cl-ssdb" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-ssdb/2021-01-24/cl-ssdb-20210124-git.tgz";
-      sha256 = "05l0wg4a1kxgggmg1nalq811by76lja0gpa2c4i999h74bf4n3dc";
-      system = "cl-ssdb";
-      asd = "cl-ssdb";
-    });
-    systems = [ "cl-ssdb" ];
-    lispLibs = [ (getAttr "babel" pkgs) (getAttr "cl-ppcre" pkgs) (getAttr "flexi-streams" pkgs) (getAttr "parse-number" pkgs) (getAttr "rutils" pkgs) (getAttr "usocket" pkgs) ];
-  };
-  cl-ssdb-test = {
-    pname = "cl-ssdb-test";
-    version = "20210124-git";
-    asds = [ "cl-ssdb-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-ssdb/2021-01-24/cl-ssdb-20210124-git.tgz";
-      sha256 = "05l0wg4a1kxgggmg1nalq811by76lja0gpa2c4i999h74bf4n3dc";
-      system = "cl-ssdb-test";
-      asd = "cl-ssdb-test";
-    });
-    systems = [ "cl-ssdb-test" ];
-    lispLibs = [ (getAttr "cl-ssdb" pkgs) (getAttr "prove" pkgs) (getAttr "prove-asdf" pkgs) ];
-  };
-  cl-ssh-keys = {
-    pname = "cl-ssh-keys";
-    version = "20210531-git";
-    asds = [ "cl-ssh-keys" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-ssh-keys/2021-05-31/cl-ssh-keys-20210531-git.tgz";
-      sha256 = "0v5m1mbd8v4lpz3zqzy228431vvyyqcj4968ajyfzpxdl2lsb6nv";
-      system = "cl-ssh-keys";
-      asd = "cl-ssh-keys";
-    });
-    systems = [ "cl-ssh-keys" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "binascii" pkgs) (getAttr "cl-rfc4251" pkgs) (getAttr "ironclad" pkgs) (getAttr "uiop" pkgs) ];
-  };
-  cl-ssh-keys_dot_test = {
-    pname = "cl-ssh-keys.test";
-    version = "20210531-git";
-    asds = [ "cl-ssh-keys.test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-ssh-keys/2021-05-31/cl-ssh-keys-20210531-git.tgz";
-      sha256 = "0v5m1mbd8v4lpz3zqzy228431vvyyqcj4968ajyfzpxdl2lsb6nv";
-      system = "cl-ssh-keys.test";
-      asd = "cl-ssh-keys.test";
-    });
-    systems = [ "cl-ssh-keys.test" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cl-ssh-keys" pkgs) (getAttr "rove" pkgs) ];
-  };
-  cl-statsd = {
-    pname = "cl-statsd";
-    version = "20170124-git";
-    asds = [ "cl-statsd" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-statsd/2017-01-24/cl-statsd-20170124-git.tgz";
-      sha256 = "1l2sxbzhp7wwalxn8k0k1gis9c9w462fygfw4ps0s1bnhgbvr6qb";
-      system = "cl-statsd";
-      asd = "cl-statsd";
-    });
-    systems = [ "cl-statsd" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "bordeaux-threads" pkgs) (getAttr "cl-interpol" pkgs) (getAttr "local-time" pkgs) (getAttr "log4cl" pkgs) (getAttr "safe-queue" pkgs) (getAttr "trivial-utf-8" pkgs) (getAttr "usocket" pkgs) ];
-  };
-  cl-statsd_dot_test = {
-    pname = "cl-statsd.test";
-    version = "20170124-git";
-    asds = [ "cl-statsd.test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-statsd/2017-01-24/cl-statsd-20170124-git.tgz";
-      sha256 = "1l2sxbzhp7wwalxn8k0k1gis9c9w462fygfw4ps0s1bnhgbvr6qb";
-      system = "cl-statsd.test";
-      asd = "cl-statsd.test";
-    });
-    systems = [ "cl-statsd.test" ];
-    lispLibs = [ (getAttr "cl-statsd" pkgs) (getAttr "log4cl" pkgs) (getAttr "prove" pkgs) (getAttr "prove-asdf" pkgs) ];
-  };
-  cl-steamworks = {
-    pname = "cl-steamworks";
-    version = "20221106-git";
-    asds = [ "cl-steamworks" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-steamworks/2022-11-06/cl-steamworks-20221106-git.tgz";
-      sha256 = "0vmr40fylqd3k2mbds823pxz5aprh76bc604y7cf8y7md30r1azn";
-      system = "cl-steamworks";
-      asd = "cl-steamworks";
-    });
-    systems = [ "cl-steamworks" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "babel" pkgs) (getAttr "cffi" pkgs) (getAttr "documentation-utils" pkgs) (getAttr "float-features" pkgs) (getAttr "trivial-features" pkgs) (getAttr "trivial-garbage" pkgs) (getAttr "trivial-gray-streams" pkgs) ];
-  };
-  cl-steamworks-generator = {
-    pname = "cl-steamworks-generator";
-    version = "20221106-git";
-    asds = [ "cl-steamworks-generator" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-steamworks/2022-11-06/cl-steamworks-20221106-git.tgz";
-      sha256 = "0vmr40fylqd3k2mbds823pxz5aprh76bc604y7cf8y7md30r1azn";
-      system = "cl-steamworks-generator";
-      asd = "cl-steamworks-generator";
-    });
-    systems = [ "cl-steamworks-generator" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cffi" pkgs) (getAttr "cl-ppcre" pkgs) (getAttr "parse-number" pkgs) (getAttr "pathname-utils" pkgs) (getAttr "yason" pkgs) ];
-  };
-  cl-stomp = {
-    pname = "cl-stomp";
-    version = "20200925-git";
-    asds = [ "cl-stomp" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-stomp/2020-09-25/cl-stomp-20200925-git.tgz";
-      sha256 = "180y0x53ghsvz6n0bz67aw69p962bsslarikk89rf41kcv998xvw";
-      system = "cl-stomp";
-      asd = "cl-stomp";
-    });
-    systems = [ "cl-stomp" ];
-    lispLibs = [ (getAttr "babel" pkgs) (getAttr "bordeaux-threads" pkgs) (getAttr "usocket" pkgs) ];
-  };
-  cl-stopwatch = {
-    pname = "cl-stopwatch";
-    version = "20190307-hg";
-    asds = [ "cl-stopwatch" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-stopwatch/2019-03-07/cl-stopwatch-20190307-hg.tgz";
-      sha256 = "02yi97q09sy9ypnvxp0l1m9b5w2pdcvbfd16y0kj069b8nlcwm8d";
-      system = "cl-stopwatch";
-      asd = "cl-stopwatch";
-    });
-    systems = [ "cl-stopwatch" ];
-    lispLibs = [  ];
-  };
-  cl-store = {
-    pname = "cl-store";
-    version = "20200925-git";
-    asds = [ "cl-store" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-store/2020-09-25/cl-store-20200925-git.tgz";
-      sha256 = "0b1cw495121wjz4ayndir52a5hf3fnvi99syla60mninvx7q7krl";
-      system = "cl-store";
-      asd = "cl-store";
-    });
-    systems = [ "cl-store" ];
-    lispLibs = [  ];
-  };
-  cl-store-tests = {
-    pname = "cl-store-tests";
-    version = "20200925-git";
-    asds = [ "cl-store-tests" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-store/2020-09-25/cl-store-20200925-git.tgz";
-      sha256 = "0b1cw495121wjz4ayndir52a5hf3fnvi99syla60mninvx7q7krl";
-      system = "cl-store-tests";
-      asd = "cl-store";
-    });
-    systems = [ "cl-store-tests" ];
-    lispLibs = [ (getAttr "cl-store" pkgs) (getAttr "rt" pkgs) ];
-  };
-  cl-stream = {
-    pname = "cl-stream";
-    version = "20190521-git";
-    asds = [ "cl-stream" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-stream/2019-05-21/cl-stream-20190521-git.tgz";
-      sha256 = "1r2spbcx3ifz51yq2pxkdb1n2k5fvyg3pz3w42mnw99pq78cbasv";
-      system = "cl-stream";
-      asd = "cl-stream";
-    });
-    systems = [ "cl-stream" ];
-    lispLibs = [  ];
-  };
-  cl-strftime = {
-    pname = "cl-strftime";
-    version = "20160318-git";
-    asds = [ "cl-strftime" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-strftime/2016-03-18/cl-strftime-20160318-git.tgz";
-      sha256 = "00c8hq7vzgb89ab3q7mrp60x743kiqmsk1g51ynhxlqhph2bnslf";
-      system = "cl-strftime";
-      asd = "cl-strftime";
-    });
-    systems = [ "cl-strftime" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cl-ppcre" pkgs) (getAttr "local-time" pkgs) (getAttr "serapeum" pkgs) ];
-  };
-  cl-strftime_slash_tests = {
-    pname = "cl-strftime_tests";
-    version = "20160318-git";
-    asds = [ "cl-strftime" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-strftime/2016-03-18/cl-strftime-20160318-git.tgz";
-      sha256 = "00c8hq7vzgb89ab3q7mrp60x743kiqmsk1g51ynhxlqhph2bnslf";
-      system = "cl-strftime";
-      asd = "cl-strftime";
-    });
-    systems = [ "cl-strftime/tests" ];
-    lispLibs = [ (getAttr "cffi" pkgs) (getAttr "cl-strftime" pkgs) (getAttr "fiveam" pkgs) (getAttr "uiop" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  cl-string-complete = {
-    pname = "cl-string-complete";
-    version = "20190307-hg";
-    asds = [ "cl-string-complete" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-string-complete/2019-03-07/cl-string-complete-20190307-hg.tgz";
-      sha256 = "0qycrs5d2cll62gs14qg3kwzfpnjgckrmigckgjav2ll3dghxjx6";
-      system = "cl-string-complete";
-      asd = "cl-string-complete";
-    });
-    systems = [ "cl-string-complete" ];
-    lispLibs = [  ];
-  };
-  cl-string-generator = {
-    pname = "cl-string-generator";
-    version = "20210630-git";
-    asds = [ "cl-string-generator" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-string-generator/2021-06-30/cl-string-generator-20210630-git.tgz";
-      sha256 = "0zm6lyzd205lw30fdvnhrrlv9fylpfqksqxl32zvj9vzcn8qc1vi";
-      system = "cl-string-generator";
-      asd = "cl-string-generator";
-    });
-    systems = [ "cl-string-generator" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cl-ppcre" pkgs) ];
-  };
-  cl-string-generator_slash_tests = {
-    pname = "cl-string-generator_tests";
-    version = "20210630-git";
-    asds = [ "cl-string-generator" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-string-generator/2021-06-30/cl-string-generator-20210630-git.tgz";
-      sha256 = "0zm6lyzd205lw30fdvnhrrlv9fylpfqksqxl32zvj9vzcn8qc1vi";
-      system = "cl-string-generator";
-      asd = "cl-string-generator";
-    });
-    systems = [ "cl-string-generator/tests" ];
-    lispLibs = [ (getAttr "cl-string-generator" pkgs) (getAttr "rove" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  cl-string-match = {
-    pname = "cl-string-match";
-    version = "20211209-git";
-    asds = [ "cl-string-match" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-string-match/2021-12-09/cl-string-match-20211209-git.tgz";
-      sha256 = "0zndlkw3qy3vw4px4qv884z6232w8zfaliyc88irjwizdv35wcq9";
-      system = "cl-string-match";
-      asd = "cl-string-match";
-    });
-    systems = [ "cl-string-match" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "ascii-strings" pkgs) (getAttr "yacc" pkgs) (getAttr "iterate" pkgs) (getAttr "jpl-queues" pkgs) (getAttr "mgl-pax" pkgs) ];
-  };
-  cl-string-match-test = {
-    pname = "cl-string-match-test";
-    version = "20211209-git";
-    asds = [ "cl-string-match-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-string-match/2021-12-09/cl-string-match-20211209-git.tgz";
-      sha256 = "0zndlkw3qy3vw4px4qv884z6232w8zfaliyc88irjwizdv35wcq9";
-      system = "cl-string-match-test";
-      asd = "cl-string-match-test";
-    });
-    systems = [ "cl-string-match-test" ];
-    lispLibs = [ (getAttr "ascii-strings" pkgs) (getAttr "cl-string-match" pkgs) (getAttr "simple-scanf" pkgs) (getAttr "lisp-unit" pkgs) ];
-  };
-  cl-strings = {
-    pname = "cl-strings";
-    version = "20210411-git";
-    asds = [ "cl-strings" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-strings/2021-04-11/cl-strings-20210411-git.tgz";
-      sha256 = "1j8hs54fn0wsf5zfzhhgiva47n9hsmfa74iinahz6nmcs8iy75aj";
-      system = "cl-strings";
-      asd = "cl-strings";
-    });
-    systems = [ "cl-strings" ];
-    lispLibs = [  ];
-  };
-  cl-strings-tests = {
-    pname = "cl-strings-tests";
-    version = "20210411-git";
-    asds = [ "cl-strings-tests" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-strings/2021-04-11/cl-strings-20210411-git.tgz";
-      sha256 = "1j8hs54fn0wsf5zfzhhgiva47n9hsmfa74iinahz6nmcs8iy75aj";
-      system = "cl-strings-tests";
-      asd = "cl-strings";
-    });
-    systems = [ "cl-strings-tests" ];
-    lispLibs = [ (getAttr "cl-strings" pkgs) (getAttr "prove" pkgs) ];
-  };
-  cl-svg = {
-    pname = "cl-svg";
-    version = "20180228-git";
-    asds = [ "cl-svg" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-svg/2018-02-28/cl-svg-20180228-git.tgz";
-      sha256 = "11rmzimy6j7ln7q5y1h2kw1225rsfb6fpn89qjcq7h5lc8fay0wz";
-      system = "cl-svg";
-      asd = "cl-svg";
-    });
-    systems = [ "cl-svg" ];
-    lispLibs = [  ];
-  };
-  cl-svm = {
-    pname = "cl-svm";
-    version = "20110418-git";
-    asds = [ "cl-svm" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-svm/2011-04-18/cl-svm-20110418-git.tgz";
-      sha256 = "03d070k3bl5c0b2f6bzig5gkhlj074v74f7kg8hh3znrbmwji2wv";
-      system = "cl-svm";
-      asd = "cl-svm";
-    });
-    systems = [ "cl-svm" ];
-    lispLibs = [  ];
-  };
-  cl-swagger = {
-    pname = "cl-swagger";
-    version = "20180831-git";
-    asds = [ "cl-swagger" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-swagger-codegen/2018-08-31/cl-swagger-codegen-20180831-git.tgz";
-      sha256 = "1lkp69n7wscyf2az3h2bmxmvzzppdfxcq5s0m607b1f7nfmxzjsq";
-      system = "cl-swagger";
-      asd = "cl-swagger";
-    });
-    systems = [ "cl-swagger" ];
-    lispLibs = [ (getAttr "cl-json" pkgs) (getAttr "cl-mustache" pkgs) (getAttr "cl-ppcre" pkgs) (getAttr "drakma" pkgs) ];
-  };
-  cl-sxml = {
-    pname = "cl-sxml";
-    version = "20200325-git";
-    asds = [ "cl-sxml" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-sxml/2020-03-25/cl-sxml-20200325-git.tgz";
-      sha256 = "1105s9whidq1lf0lli2wdhcfcs5gwzxa0h1x3izx4mp2p7psvciz";
-      system = "cl-sxml";
-      asd = "cl-sxml";
-    });
-    systems = [ "cl-sxml" ];
-    lispLibs = [ (getAttr "cxml" pkgs) ];
-  };
-  cl-sxml-test = {
-    pname = "cl-sxml-test";
-    version = "20200325-git";
-    asds = [ "cl-sxml-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-sxml/2020-03-25/cl-sxml-20200325-git.tgz";
-      sha256 = "1105s9whidq1lf0lli2wdhcfcs5gwzxa0h1x3izx4mp2p7psvciz";
-      system = "cl-sxml-test";
-      asd = "cl-sxml";
-    });
-    systems = [ "cl-sxml-test" ];
-    lispLibs = [ (getAttr "cl-sxml" pkgs) (getAttr "fiveam" pkgs) (getAttr "flexi-streams" pkgs) (getAttr "uiop" pkgs) ];
-  };
-  cl-syntax = {
-    pname = "cl-syntax";
-    version = "20150407-git";
-    asds = [ "cl-syntax" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-syntax/2015-04-07/cl-syntax-20150407-git.tgz";
-      sha256 = "17ran8xp77asagl31xv8w819wafh6whwfc9p6dgx22ca537gyl4y";
-      system = "cl-syntax";
-      asd = "cl-syntax";
-    });
-    systems = [ "cl-syntax" ];
-    lispLibs = [ (getAttr "named-readtables" pkgs) (getAttr "trivial-types" pkgs) ];
-  };
-  cl-syntax-annot = {
-    pname = "cl-syntax-annot";
-    version = "20150407-git";
-    asds = [ "cl-syntax-annot" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-syntax/2015-04-07/cl-syntax-20150407-git.tgz";
-      sha256 = "17ran8xp77asagl31xv8w819wafh6whwfc9p6dgx22ca537gyl4y";
-      system = "cl-syntax-annot";
-      asd = "cl-syntax-annot";
-    });
-    systems = [ "cl-syntax-annot" ];
-    lispLibs = [ (getAttr "cl-annot" pkgs) (getAttr "cl-syntax" pkgs) ];
-  };
-  cl-syntax-anonfun = {
-    pname = "cl-syntax-anonfun";
-    version = "20150407-git";
-    asds = [ "cl-syntax-anonfun" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-syntax/2015-04-07/cl-syntax-20150407-git.tgz";
-      sha256 = "17ran8xp77asagl31xv8w819wafh6whwfc9p6dgx22ca537gyl4y";
-      system = "cl-syntax-anonfun";
-      asd = "cl-syntax-anonfun";
-    });
-    systems = [ "cl-syntax-anonfun" ];
-    lispLibs = [ (getAttr "cl-anonfun" pkgs) (getAttr "cl-syntax" pkgs) ];
-  };
-  cl-syntax-clsql = {
-    pname = "cl-syntax-clsql";
-    version = "20150407-git";
-    asds = [ "cl-syntax-clsql" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-syntax/2015-04-07/cl-syntax-20150407-git.tgz";
-      sha256 = "17ran8xp77asagl31xv8w819wafh6whwfc9p6dgx22ca537gyl4y";
-      system = "cl-syntax-clsql";
-      asd = "cl-syntax-clsql";
-    });
-    systems = [ "cl-syntax-clsql" ];
-    lispLibs = [ (getAttr "cl-syntax" pkgs) (getAttr "clsql" pkgs) ];
-  };
-  cl-syntax-debug-print = {
-    pname = "cl-syntax-debug-print";
-    version = "20210807-git";
-    asds = [ "cl-syntax-debug-print" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-debug-print/2021-08-07/cl-debug-print-20210807-git.tgz";
-      sha256 = "1cm5nybmv0pq9s4lrwhd01rjj1wlcj1sjcrcakabi7w7b5zw4cyh";
-      system = "cl-syntax-debug-print";
-      asd = "cl-syntax-debug-print";
-    });
-    systems = [ "cl-syntax-debug-print" ];
-    lispLibs = [ (getAttr "cl-debug-print" pkgs) (getAttr "cl-syntax" pkgs) ];
-  };
-  cl-syntax-fare-quasiquote = {
-    pname = "cl-syntax-fare-quasiquote";
-    version = "20150407-git";
-    asds = [ "cl-syntax-fare-quasiquote" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-syntax/2015-04-07/cl-syntax-20150407-git.tgz";
-      sha256 = "17ran8xp77asagl31xv8w819wafh6whwfc9p6dgx22ca537gyl4y";
-      system = "cl-syntax-fare-quasiquote";
-      asd = "cl-syntax-fare-quasiquote";
-    });
-    systems = [ "cl-syntax-fare-quasiquote" ];
-    lispLibs = [ (getAttr "cl-syntax" pkgs) (getAttr "fare-quasiquote" pkgs) ];
-  };
-  cl-syntax-interpol = {
-    pname = "cl-syntax-interpol";
-    version = "20150407-git";
-    asds = [ "cl-syntax-interpol" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-syntax/2015-04-07/cl-syntax-20150407-git.tgz";
-      sha256 = "17ran8xp77asagl31xv8w819wafh6whwfc9p6dgx22ca537gyl4y";
-      system = "cl-syntax-interpol";
-      asd = "cl-syntax-interpol";
-    });
-    systems = [ "cl-syntax-interpol" ];
-    lispLibs = [ (getAttr "cl-interpol" pkgs) (getAttr "cl-syntax" pkgs) ];
-  };
-  cl-syntax-lsx = {
-    pname = "cl-syntax-lsx";
-    version = "20220220-git";
-    asds = [ "cl-syntax-lsx" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/lsx/2022-02-20/lsx-20220220-git.tgz";
-      sha256 = "1pdq6csr8pkzcq2zkhhm6wkp9zxx2aypjd16rcw4q43mff09y041";
-      system = "cl-syntax-lsx";
-      asd = "cl-syntax-lsx";
-    });
-    systems = [ "cl-syntax-lsx" ];
-    lispLibs = [ (getAttr "cl-syntax" pkgs) (getAttr "lsx" pkgs) ];
-  };
-  cl-syntax-markup = {
-    pname = "cl-syntax-markup";
-    version = "20150407-git";
-    asds = [ "cl-syntax-markup" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-syntax/2015-04-07/cl-syntax-20150407-git.tgz";
-      sha256 = "17ran8xp77asagl31xv8w819wafh6whwfc9p6dgx22ca537gyl4y";
-      system = "cl-syntax-markup";
-      asd = "cl-syntax-markup";
-    });
-    systems = [ "cl-syntax-markup" ];
-    lispLibs = [ (getAttr "cl-markup" pkgs) (getAttr "cl-syntax" pkgs) ];
-  };
-  cl-syslog = {
-    pname = "cl-syslog";
-    version = "20190202-git";
-    asds = [ "cl-syslog" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-syslog/2019-02-02/cl-syslog-20190202-git.tgz";
-      sha256 = "1qcz55jiqwk91b01hsahxnha884f6zf2883j2m51sqph0mvj69mh";
-      system = "cl-syslog";
-      asd = "cl-syslog";
-    });
-    systems = [ "cl-syslog" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "babel" pkgs) (getAttr "cffi" pkgs) (getAttr "global-vars" pkgs) (getAttr "local-time" pkgs) (getAttr "split-sequence" pkgs) (getAttr "usocket" pkgs) ];
-  };
-  cl-table = {
-    pname = "cl-table";
-    version = "20130128-git";
-    asds = [ "cl-table" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-table/2013-01-28/cl-table-20130128-git.tgz";
-      sha256 = "0c7bdnpi473grayycdcdh4q8fi137i3c80k05k87pvjdrl1qnkpn";
-      system = "cl-table";
-      asd = "cl-table";
-    });
-    systems = [ "cl-table" ];
-    lispLibs = [ (getAttr "iterate" pkgs) ];
-  };
-  cl-tasukete = {
-    pname = "cl-tasukete";
-    version = "20180228-git";
-    asds = [ "cl-tasukete" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-tasukete/2018-02-28/cl-tasukete-20180228-git.tgz";
-      sha256 = "0i8ibg2a33mb32vr2b70psb5dvh47r52lfhkh84rxzmcsk6ww230";
-      system = "cl-tasukete";
-      asd = "cl-tasukete";
-    });
-    systems = [ "cl-tasukete" ];
-    lispLibs = [ (getAttr "cl-annot" pkgs) (getAttr "cl-gists" pkgs) (getAttr "dissect" pkgs) (getAttr "jonathan" pkgs) (getAttr "local-time" pkgs) ];
-  };
-  cl-tasukete-test = {
-    pname = "cl-tasukete-test";
-    version = "20180228-git";
-    asds = [ "cl-tasukete-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-tasukete/2018-02-28/cl-tasukete-20180228-git.tgz";
-      sha256 = "0i8ibg2a33mb32vr2b70psb5dvh47r52lfhkh84rxzmcsk6ww230";
-      system = "cl-tasukete-test";
-      asd = "cl-tasukete-test";
-    });
-    systems = [ "cl-tasukete-test" ];
-    lispLibs = [ (getAttr "cl-tasukete" pkgs) (getAttr "dissect" pkgs) (getAttr "prove" pkgs) (getAttr "prove-asdf" pkgs) ];
-  };
-  cl-telebot = {
-    pname = "cl-telebot";
-    version = "20211020-git";
-    asds = [ "cl-telebot" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-telebot/2021-10-20/cl-telebot-20211020-git.tgz";
-      sha256 = "0nl002l4f3x6843s6h5w2iz2hganxb369k8c2hbbgqq7plb4mdf1";
-      system = "cl-telebot";
-      asd = "cl-telebot";
-    });
-    systems = [ "cl-telebot" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "dexador" pkgs) (getAttr "jonathan" pkgs) ];
-  };
-  cl-telegram-bot = {
-    pname = "cl-telegram-bot";
-    version = "20221106-git";
-    asds = [ "cl-telegram-bot" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-telegram-bot/2022-11-06/cl-telegram-bot-20221106-git.tgz";
-      sha256 = "1pvwkr2bai0l7n8mqrbcl35mlv7kic1wsd41zavmljx0fj14bwj6";
-      system = "cl-telegram-bot";
-      asd = "cl-telegram-bot";
-    });
-    systems = [ "cl-telegram-bot" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "arrows" pkgs) (getAttr "bordeaux-threads" pkgs) (getAttr "cl-ppcre" pkgs) (getAttr "cl-strings" pkgs) (getAttr "closer-mop" pkgs) (getAttr "dexador" pkgs) (getAttr "jonathan" pkgs) (getAttr "kebab" pkgs) (getAttr "log4cl" pkgs) (getAttr "serapeum" pkgs) (getAttr "trivial-backtrace" pkgs) ];
-  };
-  cl-template = {
-    pname = "cl-template";
-    version = "20130615-git";
-    asds = [ "cl-template" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-template/2013-06-15/cl-template-20130615-git.tgz";
-      sha256 = "1rhg023a2nxsk5x6abd6i0a8sh36aj0bgsh80w60m3b7xlsva2x2";
-      system = "cl-template";
-      asd = "cl-template";
-    });
-    systems = [ "cl-template" ];
-    lispLibs = [  ];
-  };
-  cl-template-tests = {
-    pname = "cl-template-tests";
-    version = "20130615-git";
-    asds = [ "cl-template-tests" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-template/2013-06-15/cl-template-20130615-git.tgz";
-      sha256 = "1rhg023a2nxsk5x6abd6i0a8sh36aj0bgsh80w60m3b7xlsva2x2";
-      system = "cl-template-tests";
-      asd = "cl-template";
-    });
-    systems = [ "cl-template-tests" ];
-    lispLibs = [ (getAttr "cl-template" pkgs) (getAttr "fiveam" pkgs) ];
-  };
-  cl-termbox = {
-    pname = "cl-termbox";
-    version = "20211020-git";
-    asds = [ "cl-termbox" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-termbox/2021-10-20/cl-termbox-20211020-git.tgz";
-      sha256 = "1igmq64zndkgchmzggp34jrmxa81dqlhz2il8qizrpfw5a39cpld";
-      system = "cl-termbox";
-      asd = "cl-termbox";
-    });
-    systems = [ "cl-termbox" ];
-    lispLibs = [ (getAttr "cffi" pkgs) ];
-  };
-  cl-tesseract = {
-    pname = "cl-tesseract";
-    version = "20171130-git";
-    asds = [ "cl-tesseract" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-tesseract/2017-11-30/cl-tesseract-20171130-git.tgz";
-      sha256 = "086627k8whbj60bpw9r3jrdifr4bigqpnp9hxsi7r6702gixz50x";
-      system = "cl-tesseract";
-      asd = "cl-tesseract";
-    });
-    systems = [ "cl-tesseract" ];
-    lispLibs = [ (getAttr "cffi" pkgs) ];
-  };
-  cl-test-more = {
-    pname = "cl-test-more";
-    version = "20200218-git";
-    asds = [ "cl-test-more" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/prove/2020-02-18/prove-20200218-git.tgz";
-      sha256 = "0ca6ha3zhmckq3ad9lxm6sbg4i0hg3m81xhan4dkxd3x9898jzpc";
-      system = "cl-test-more";
-      asd = "cl-test-more";
-    });
-    systems = [ "cl-test-more" ];
-    lispLibs = [ (getAttr "prove" pkgs) ];
-  };
-  cl-tetris3d = {
-    pname = "cl-tetris3d";
-    version = "20181210-git";
-    asds = [ "cl-tetris3d" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-tetris3d/2018-12-10/cl-tetris3d-20181210-git.tgz";
-      sha256 = "09n7344is2vfbp32cd22ynk14h4vqs4xw3plbhga8q25ghhx5y9p";
-      system = "cl-tetris3d";
-      asd = "cl-tetris3d";
-    });
-    systems = [ "cl-tetris3d" ];
-    lispLibs = [ (getAttr "cl-glu" pkgs) (getAttr "cl-opengl" pkgs) (getAttr "iterate" pkgs) (getAttr "lispbuilder-sdl" pkgs) ];
-  };
-  cl-textmagic = {
-    pname = "cl-textmagic";
-    version = "20151218-git";
-    asds = [ "cl-textmagic" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-textmagic/2015-12-18/cl-textmagic-20151218-git.tgz";
-      sha256 = "0xw6g1r5vxmnbz3kxf2q6s9dr9l2aacyri1wchzw4jx5wlcnkshw";
-      system = "cl-textmagic";
-      asd = "cl-textmagic";
-    });
-    systems = [ "cl-textmagic" ];
-    lispLibs = [ (getAttr "cl-json" pkgs) (getAttr "dexador" pkgs) ];
-  };
-  cl-textmagic-test = {
-    pname = "cl-textmagic-test";
-    version = "20151218-git";
-    asds = [ "cl-textmagic-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-textmagic/2015-12-18/cl-textmagic-20151218-git.tgz";
-      sha256 = "0xw6g1r5vxmnbz3kxf2q6s9dr9l2aacyri1wchzw4jx5wlcnkshw";
-      system = "cl-textmagic-test";
-      asd = "cl-textmagic-test";
-    });
-    systems = [ "cl-textmagic-test" ];
-    lispLibs = [ (getAttr "cl-textmagic" pkgs) (getAttr "prove" pkgs) (getAttr "prove-asdf" pkgs) ];
-  };
-  cl-tga = {
-    pname = "cl-tga";
-    version = "20160318-git";
-    asds = [ "cl-tga" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-tga/2016-03-18/cl-tga-20160318-git.tgz";
-      sha256 = "03k3npmn0xd3fd2m7vwxph82av2xrfb150imqrinlzqmzvz1v1br";
-      system = "cl-tga";
-      asd = "cl-tga";
-    });
-    systems = [ "cl-tga" ];
-    lispLibs = [  ];
-  };
-  cl-threadpool = {
-    pname = "cl-threadpool";
-    version = "quickload-current-release-86ef8a6b-git";
-    asds = [ "cl-threadpool" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-threadpool/2021-02-28/cl-threadpool-quickload-current-release-86ef8a6b-git.tgz";
-      sha256 = "0yg09fpzqbmga1vx0p956vx6fyjmrgczb108fr0djswfn1mdiq3j";
-      system = "cl-threadpool";
-      asd = "cl-threadpool";
-    });
-    systems = [ "cl-threadpool" ];
-    lispLibs = [ (getAttr "bordeaux-threads" pkgs) (getAttr "queues_dot_simple-cqueue" pkgs) ];
-  };
-  cl-threadpool_slash_doc = {
-    pname = "cl-threadpool_doc";
-    version = "quickload-current-release-86ef8a6b-git";
-    asds = [ "cl-threadpool" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-threadpool/2021-02-28/cl-threadpool-quickload-current-release-86ef8a6b-git.tgz";
-      sha256 = "0yg09fpzqbmga1vx0p956vx6fyjmrgczb108fr0djswfn1mdiq3j";
-      system = "cl-threadpool";
-      asd = "cl-threadpool";
-    });
-    systems = [ "cl-threadpool/doc" ];
-    lispLibs = [ (getAttr "cl-html-readme" pkgs) (getAttr "cl-threadpool" pkgs) (getAttr "docparser" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  cl-threadpool_slash_test = {
-    pname = "cl-threadpool_test";
-    version = "quickload-current-release-86ef8a6b-git";
-    asds = [ "cl-threadpool" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-threadpool/2021-02-28/cl-threadpool-quickload-current-release-86ef8a6b-git.tgz";
-      sha256 = "0yg09fpzqbmga1vx0p956vx6fyjmrgczb108fr0djswfn1mdiq3j";
-      system = "cl-threadpool";
-      asd = "cl-threadpool";
-    });
-    systems = [ "cl-threadpool/test" ];
-    lispLibs = [ (getAttr "cl-threadpool" pkgs) (getAttr "lisp-unit" pkgs) (getAttr "verbose" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  cl-tidy = {
-    pname = "cl-tidy";
-    version = "20170830-git";
-    asds = [ "cl-tidy" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-tidy/2017-08-30/cl-tidy-20170830-git.tgz";
-      sha256 = "13j0jgf6czb24148w2wxfwlji6vnc49qvyr5wzq5ps55b27ddlz6";
-      system = "cl-tidy";
-      asd = "cl-tidy";
-    });
-    systems = [ "cl-tidy" ];
-    lispLibs = [ (getAttr "cffi" pkgs) ];
-  };
-  cl-tiled = {
-    pname = "cl-tiled";
-    version = "20210531-git";
-    asds = [ "cl-tiled" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-tiled/2021-05-31/cl-tiled-20210531-git.tgz";
-      sha256 = "1xknfdrlghrdvsx4xclvj43irwf26np5ndpmnkwnsrhfbj8ypk48";
-      system = "cl-tiled";
-      asd = "cl-tiled";
-    });
-    systems = [ "cl-tiled" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "chipz" pkgs) (getAttr "cl-base64" pkgs) (getAttr "cl-json" pkgs) (getAttr "nibbles" pkgs) (getAttr "parse-float" pkgs) (getAttr "split-sequence" pkgs) (getAttr "uiop" pkgs) (getAttr "xmls" pkgs) ];
-  };
-  cl-tk = {
-    pname = "cl-tk";
-    version = "20150608-git";
-    asds = [ "cl-tk" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-tk/2015-06-08/cl-tk-20150608-git.tgz";
-      sha256 = "0fm4q4pkzbyxr6227vavvy4lm7rfw214lp2dylgzjzcp6f5r4n7w";
-      system = "cl-tk";
-      asd = "cl-tk";
-    });
-    systems = [ "cl-tk" ];
-    lispLibs = [ (getAttr "cffi" pkgs) ];
-  };
-  cl-tld = {
-    pname = "cl-tld";
-    version = "20220220-git";
-    asds = [ "cl-tld" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-tld/2022-02-20/cl-tld-20220220-git.tgz";
-      sha256 = "1xm471p92in5g4fcxgqshwgr2d7937jw7jv6j473slwkxjvx8dp6";
-      system = "cl-tld";
-      asd = "cl-tld";
-    });
-    systems = [ "cl-tld" ];
-    lispLibs = [  ];
-  };
-  cl-tls = {
-    pname = "cl-tls";
-    version = "20221106-git";
-    asds = [ "cl-tls" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-tls/2022-11-06/cl-tls-20221106-git.tgz";
-      sha256 = "1j6gwv21ibkk6xd1xxm54wgwp09dzqg60b8z72hivpnq8gwm0ba7";
-      system = "cl-tls";
-      asd = "cl-tls";
-    });
-    systems = [ "cl-tls" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "babel" pkgs) (getAttr "cl-base64" pkgs) (getAttr "fast-io" pkgs) (getAttr "ironclad" pkgs) ];
-  };
-  cl-tokyo-cabinet = {
-    pname = "cl-tokyo-cabinet";
-    version = "20160825-git";
-    asds = [ "cl-tokyo-cabinet" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-tokyo-cabinet/2016-08-25/cl-tokyo-cabinet-20160825-git.tgz";
-      sha256 = "07961in8fa09bjnpwkdn0w6dj37nppzmgg50kf8khspnjh1sjsr2";
-      system = "cl-tokyo-cabinet";
-      asd = "cl-tokyo-cabinet";
-    });
-    systems = [ "cl-tokyo-cabinet" ];
-    lispLibs = [ (getAttr "cffi" pkgs) (getAttr "deoxybyte-systems" pkgs) ];
-  };
-  cl-tokyo-cabinet-test = {
-    pname = "cl-tokyo-cabinet-test";
-    version = "20160825-git";
-    asds = [ "cl-tokyo-cabinet-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-tokyo-cabinet/2016-08-25/cl-tokyo-cabinet-20160825-git.tgz";
-      sha256 = "07961in8fa09bjnpwkdn0w6dj37nppzmgg50kf8khspnjh1sjsr2";
-      system = "cl-tokyo-cabinet-test";
-      asd = "cl-tokyo-cabinet-test";
-    });
-    systems = [ "cl-tokyo-cabinet-test" ];
-    lispLibs = [ (getAttr "cl-tokyo-cabinet" pkgs) (getAttr "deoxybyte-io" pkgs) (getAttr "deoxybyte-utilities" pkgs) (getAttr "lift" pkgs) ];
-  };
-  cl-toml = {
-    pname = "cl-toml";
-    version = "20191130-git";
-    asds = [ "cl-toml" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-toml/2019-11-30/cl-toml-20191130-git.tgz";
-      sha256 = "1g5i60i78s0ms608fyc6sgaaqr6jdsln75n26lmfbcaqw2g1q9dk";
-      system = "cl-toml";
-      asd = "cl-toml";
-    });
-    systems = [ "cl-toml" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "esrap" pkgs) (getAttr "local-time" pkgs) (getAttr "trivial-types" pkgs) ];
-  };
-  cl-toml-test = {
-    pname = "cl-toml-test";
-    version = "20191130-git";
-    asds = [ "cl-toml-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-toml/2019-11-30/cl-toml-20191130-git.tgz";
-      sha256 = "1g5i60i78s0ms608fyc6sgaaqr6jdsln75n26lmfbcaqw2g1q9dk";
-      system = "cl-toml-test";
-      asd = "cl-toml-test";
-    });
-    systems = [ "cl-toml-test" ];
-    lispLibs = [ (getAttr "cl-toml" pkgs) (getAttr "prove" pkgs) ];
-  };
-  cl-transmission = {
-    pname = "cl-transmission";
-    version = "20200325-git";
-    asds = [ "cl-transmission" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-transmission/2020-03-25/cl-transmission-20200325-git.tgz";
-      sha256 = "0sg3f2jqs2z3mvscjhc43hkd34vlcc4c8hq8rhh5w1gjg19z57hb";
-      system = "cl-transmission";
-      asd = "cl-transmission";
-    });
-    systems = [ "cl-transmission" ];
-    lispLibs = [ (getAttr "cl-ppcre" pkgs) (getAttr "drakma" pkgs) (getAttr "jonathan" pkgs) (getAttr "named-readtables" pkgs) (getAttr "rutils" pkgs) (getAttr "uiop" pkgs) ];
-  };
-  cl-transmission-test = {
-    pname = "cl-transmission-test";
-    version = "20200325-git";
-    asds = [ "cl-transmission-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-transmission/2020-03-25/cl-transmission-20200325-git.tgz";
-      sha256 = "0sg3f2jqs2z3mvscjhc43hkd34vlcc4c8hq8rhh5w1gjg19z57hb";
-      system = "cl-transmission-test";
-      asd = "cl-transmission-test";
-    });
-    systems = [ "cl-transmission-test" ];
-    lispLibs = [ (getAttr "cl-transmission" pkgs) (getAttr "prove" pkgs) (getAttr "prove-asdf" pkgs) ];
-  };
-  cl-trie = {
-    pname = "cl-trie";
-    version = "20180228-git";
-    asds = [ "cl-trie" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-trie/2018-02-28/cl-trie-20180228-git.tgz";
-      sha256 = "0ffd67xndmzp7lg2car25swaldi3nvcswnshgb2595gac591qjh6";
-      system = "cl-trie";
-      asd = "cl-trie";
-    });
-    systems = [ "cl-trie" ];
-    lispLibs = [  ];
-  };
-  cl-trie-examples = {
-    pname = "cl-trie-examples";
-    version = "20180228-git";
-    asds = [ "cl-trie-examples" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-trie/2018-02-28/cl-trie-20180228-git.tgz";
-      sha256 = "0ffd67xndmzp7lg2car25swaldi3nvcswnshgb2595gac591qjh6";
-      system = "cl-trie-examples";
-      asd = "cl-trie-examples";
-    });
-    systems = [ "cl-trie-examples" ];
-    lispLibs = [ (getAttr "cl-ppcre" pkgs) (getAttr "cl-trie" pkgs) ];
-  };
-  cl-trie_slash_tests = {
-    pname = "cl-trie_tests";
-    version = "20180228-git";
-    asds = [ "cl-trie" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-trie/2018-02-28/cl-trie-20180228-git.tgz";
-      sha256 = "0ffd67xndmzp7lg2car25swaldi3nvcswnshgb2595gac591qjh6";
-      system = "cl-trie";
-      asd = "cl-trie";
-    });
-    systems = [ "cl-trie/tests" ];
-    lispLibs = [ (getAttr "cl-trie" pkgs) (getAttr "fiveam" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  cl-tui = {
-    pname = "cl-tui";
-    version = "20200427-git";
-    asds = [ "cl-tui" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-tui/2020-04-27/cl-tui-20200427-git.tgz";
-      sha256 = "1s0z7sjb3p1fxypc2x9fl0y094qa1a2iqjbn5him4hs8z7xm5kz8";
-      system = "cl-tui";
-      asd = "cl-tui";
-    });
-    systems = [ "cl-tui" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "anaphora" pkgs) (getAttr "cl-charms" pkgs) (getAttr "cl-containers" pkgs) (getAttr "osicat" pkgs) (getAttr "split-sequence" pkgs) (getAttr "trivial-types" pkgs) ];
-  };
-  cl-tulip-graph = {
-    pname = "cl-tulip-graph";
-    version = "20130615-git";
-    asds = [ "cl-tulip-graph" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-tulip-graph/2013-06-15/cl-tulip-graph-20130615-git.tgz";
-      sha256 = "0zmmwqabbyzdikn8x0xqrj192wr5w87l828nwandqg59af2isxav";
-      system = "cl-tulip-graph";
-      asd = "cl-tulip-graph";
-    });
-    systems = [ "cl-tulip-graph" ];
-    lispLibs = [  ];
-  };
-  cl-tuples = {
-    pname = "cl-tuples";
-    version = "20140713-git";
-    asds = [ "cl-tuples" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-tuples/2014-07-13/cl-tuples-20140713-git.tgz";
-      sha256 = "060xmr03y8n0mnf4x4fnrirljcjk1jcir7jsjq4w9d5vzq3aqm9m";
-      system = "cl-tuples";
-      asd = "cl-tuples";
-    });
-    systems = [ "cl-tuples" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "iterate" pkgs) ];
-  };
-  cl-twit-repl = {
-    pname = "cl-twit-repl";
-    version = "20180228-git";
-    asds = [ "cl-twit-repl" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-twitter/2018-02-28/cl-twitter-20180228-git.tgz";
-      sha256 = "07l86c63ssahpz3s9f7d99mbzmh60askkpdrhjrdbzd1vxlwkhcr";
-      system = "cl-twit-repl";
-      asd = "cl-twit-repl";
-    });
-    systems = [ "cl-twit-repl" ];
-    lispLibs = [ (getAttr "cl-twitter" pkgs) ];
-  };
-  cl-twitter = {
-    pname = "cl-twitter";
-    version = "20180228-git";
-    asds = [ "cl-twitter" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-twitter/2018-02-28/cl-twitter-20180228-git.tgz";
-      sha256 = "07l86c63ssahpz3s9f7d99mbzmh60askkpdrhjrdbzd1vxlwkhcr";
-      system = "cl-twitter";
-      asd = "cl-twitter";
-    });
-    systems = [ "cl-twitter" ];
-    lispLibs = [ (getAttr "anaphora" pkgs) (getAttr "cl-json" pkgs) (getAttr "cl-oauth" pkgs) (getAttr "cl-ppcre" pkgs) (getAttr "closer-mop" pkgs) (getAttr "drakma" pkgs) (getAttr "trivial-http" pkgs) (getAttr "url-rewrite" pkgs) ];
-  };
-  cl-typesetting = {
-    pname = "cl-typesetting";
-    version = "20210531-git";
-    asds = [ "cl-typesetting" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-typesetting/2021-05-31/cl-typesetting-20210531-git.tgz";
-      sha256 = "0fcs5mq0gxfczbrg7ay8r4bf5r4g6blvpdbjkhcl8dapcikyn35h";
-      system = "cl-typesetting";
-      asd = "cl-typesetting";
-    });
-    systems = [ "cl-typesetting" ];
-    lispLibs = [ (getAttr "cl-pdf" pkgs) ];
-  };
-  cl-uglify-js = {
-    pname = "cl-uglify-js";
-    version = "20150709-git";
-    asds = [ "cl-uglify-js" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-uglify-js/2015-07-09/cl-uglify-js-20150709-git.tgz";
-      sha256 = "0k39y3c93jgxpr7gwz7w0d8yknn1fdnxrjhd03057lvk5w8js27a";
-      system = "cl-uglify-js";
-      asd = "cl-uglify-js";
-    });
-    systems = [ "cl-uglify-js" ];
-    lispLibs = [ (getAttr "cl-ppcre" pkgs) (getAttr "cl-ppcre-unicode" pkgs) (getAttr "iterate" pkgs) (getAttr "parse-js" pkgs) (getAttr "parse-number" pkgs) ];
-  };
-  cl-unicode = {
-    pname = "cl-unicode";
-    version = "20210228-git";
-    asds = [ "cl-unicode" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-unicode/2021-02-28/cl-unicode-20210228-git.tgz";
-      sha256 = "1a9gbzvi5gj3z9gcia1rgmnk0dzgc82vz47bgnfvhn4q0c7mvk31";
-      system = "cl-unicode";
-      asd = "cl-unicode";
-    });
-    systems = [ "cl-unicode" ];
-    lispLibs = [ (getAttr "cl-ppcre" pkgs) ];
-  };
-  cl-unicode_slash_base = {
-    pname = "cl-unicode_base";
-    version = "20210228-git";
-    asds = [ "cl-unicode" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-unicode/2021-02-28/cl-unicode-20210228-git.tgz";
-      sha256 = "1a9gbzvi5gj3z9gcia1rgmnk0dzgc82vz47bgnfvhn4q0c7mvk31";
-      system = "cl-unicode";
-      asd = "cl-unicode";
-    });
-    systems = [ "cl-unicode/base" ];
-    lispLibs = [ (getAttr "cl-ppcre" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  cl-unicode_slash_build = {
-    pname = "cl-unicode_build";
-    version = "20210228-git";
-    asds = [ "cl-unicode" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-unicode/2021-02-28/cl-unicode-20210228-git.tgz";
-      sha256 = "1a9gbzvi5gj3z9gcia1rgmnk0dzgc82vz47bgnfvhn4q0c7mvk31";
-      system = "cl-unicode";
-      asd = "cl-unicode";
-    });
-    systems = [ "cl-unicode/build" ];
-    lispLibs = [ (getAttr "cl-ppcre" pkgs) (getAttr "flexi-streams" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  cl-unicode_slash_test = {
-    pname = "cl-unicode_test";
-    version = "20210228-git";
-    asds = [ "cl-unicode" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-unicode/2021-02-28/cl-unicode-20210228-git.tgz";
-      sha256 = "1a9gbzvi5gj3z9gcia1rgmnk0dzgc82vz47bgnfvhn4q0c7mvk31";
-      system = "cl-unicode";
-      asd = "cl-unicode";
-    });
-    systems = [ "cl-unicode/test" ];
-    lispLibs = [ (getAttr "cl-unicode" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  cl-unification = {
-    pname = "cl-unification";
-    version = "20211230-git";
-    asds = [ "cl-unification" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-unification/2021-12-30/cl-unification-20211230-git.tgz";
-      sha256 = "1k4ngdn1qycjakwl66kvxk6kjxhkamzq3yfq4qlpc0kd15p7d2xn";
-      system = "cl-unification";
-      asd = "cl-unification";
-    });
-    systems = [ "cl-unification" ];
-    lispLibs = [  ];
-  };
-  cl-unification-lib = {
-    pname = "cl-unification-lib";
-    version = "20211230-git";
-    asds = [ "cl-unification-lib" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-unification/2021-12-30/cl-unification-20211230-git.tgz";
-      sha256 = "1k4ngdn1qycjakwl66kvxk6kjxhkamzq3yfq4qlpc0kd15p7d2xn";
-      system = "cl-unification-lib";
-      asd = "cl-unification-lib";
-    });
-    systems = [ "cl-unification-lib" ];
-    lispLibs = [ (getAttr "cl-ppcre" pkgs) (getAttr "cl-unification" pkgs) ];
-  };
-  cl-unification-test = {
-    pname = "cl-unification-test";
-    version = "20211230-git";
-    asds = [ "cl-unification-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-unification/2021-12-30/cl-unification-20211230-git.tgz";
-      sha256 = "1k4ngdn1qycjakwl66kvxk6kjxhkamzq3yfq4qlpc0kd15p7d2xn";
-      system = "cl-unification-test";
-      asd = "cl-unification-test";
-    });
-    systems = [ "cl-unification-test" ];
-    lispLibs = [ (getAttr "cl-unification" pkgs) (getAttr "ptester" pkgs) ];
-  };
-  cl-union-find = {
-    pname = "cl-union-find";
-    version = "20221106-git";
-    asds = [ "cl-union-find" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-union-find/2022-11-06/cl-union-find-20221106-git.tgz";
-      sha256 = "14xciva5v3c4zi4vzp1vfhs82a2654yhkfyllr3b0cr7x36jdm7y";
-      system = "cl-union-find";
-      asd = "cl-union-find";
-    });
-    systems = [ "cl-union-find" ];
-    lispLibs = [  ];
-  };
-  cl-utilities = {
-    pname = "cl-utilities";
-    version = "1.2.4";
-    asds = [ "cl-utilities" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-utilities/2010-10-06/cl-utilities-1.2.4.tgz";
-      sha256 = "1dmbkdr8xm2jw5yx1makqbf1ypqbm0hpkd7zyknxv3cblvz0a87w";
-      system = "cl-utilities";
-      asd = "cl-utilities";
-    });
-    systems = [ "cl-utilities" ];
-    lispLibs = [  ];
-  };
-  cl-variates = {
-    pname = "cl-variates";
-    version = "20180131-darcs";
-    asds = [ "cl-variates" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-variates/2018-01-31/cl-variates-20180131-darcs.tgz";
-      sha256 = "02pd02isfxrn3h8h5kh369rwy17hfjkmd7j24pcihfskamgcqgfx";
-      system = "cl-variates";
-      asd = "cl-variates";
-    });
-    systems = [ "cl-variates" ];
-    lispLibs = [ (getAttr "asdf-system-connections" pkgs) ];
-  };
-  cl-vectors = {
-    pname = "cl-vectors";
-    version = "20180228-git";
-    asds = [ "cl-vectors" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-vectors/2018-02-28/cl-vectors-20180228-git.tgz";
-      sha256 = "0nckw4zb6s96hll8hrxzvgs2an3bfm0pxcywshbm4bq4rn7niqg4";
-      system = "cl-vectors";
-      asd = "cl-vectors";
-    });
-    systems = [ "cl-vectors" ];
-    lispLibs = [ (getAttr "cl-aa" pkgs) (getAttr "cl-paths" pkgs) ];
-  };
-  cl-vhdl = {
-    pname = "cl-vhdl";
-    version = "20160421-git";
-    asds = [ "cl-vhdl" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-vhdl/2016-04-21/cl-vhdl-20160421-git.tgz";
-      sha256 = "0i2780ljak8kcqa2zm24dk2fk771m2mvmnbq4xd4vvx9z87lbnvi";
-      system = "cl-vhdl";
-      asd = "cl-vhdl";
-    });
-    systems = [ "cl-vhdl" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cl-interpol" pkgs) (getAttr "cl-itertools" pkgs) (getAttr "cl-ppcre" pkgs) (getAttr "esrap-liquid" pkgs) (getAttr "iterate" pkgs) ];
-  };
-  cl-vhdl-tests = {
-    pname = "cl-vhdl-tests";
-    version = "20160421-git";
-    asds = [ "cl-vhdl-tests" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-vhdl/2016-04-21/cl-vhdl-20160421-git.tgz";
-      sha256 = "0i2780ljak8kcqa2zm24dk2fk771m2mvmnbq4xd4vvx9z87lbnvi";
-      system = "cl-vhdl-tests";
-      asd = "cl-vhdl";
-    });
-    systems = [ "cl-vhdl-tests" ];
-    lispLibs = [ (getAttr "cl-interpol" pkgs) (getAttr "cl-vhdl" pkgs) (getAttr "fare-quasiquote-optima" pkgs) (getAttr "fiveam" pkgs) (getAttr "optima" pkgs) ];
-  };
-  cl-video = {
-    pname = "cl-video";
-    version = "20180228-git";
-    asds = [ "cl-video" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-video/2018-02-28/cl-video-20180228-git.tgz";
-      sha256 = "1azldcp6r0j1kw6rczicmnv4m0d7rq4m5axz48ny6r2qybha80lr";
-      system = "cl-video";
-      asd = "cl-video";
-    });
-    systems = [ "cl-video" ];
-    lispLibs = [ (getAttr "bordeaux-threads" pkgs) ];
-  };
-  cl-video-avi = {
-    pname = "cl-video-avi";
-    version = "20180228-git";
-    asds = [ "cl-video-avi" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-video/2018-02-28/cl-video-20180228-git.tgz";
-      sha256 = "1azldcp6r0j1kw6rczicmnv4m0d7rq4m5axz48ny6r2qybha80lr";
-      system = "cl-video-avi";
-      asd = "cl-video-avi";
-    });
-    systems = [ "cl-video-avi" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cl-jpeg" pkgs) (getAttr "cl-riff" pkgs) (getAttr "cl-video" pkgs) (getAttr "flexi-streams" pkgs) ];
-  };
-  cl-video-gif = {
-    pname = "cl-video-gif";
-    version = "20180228-git";
-    asds = [ "cl-video-gif" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-video/2018-02-28/cl-video-20180228-git.tgz";
-      sha256 = "1azldcp6r0j1kw6rczicmnv4m0d7rq4m5axz48ny6r2qybha80lr";
-      system = "cl-video-gif";
-      asd = "cl-video-gif";
-    });
-    systems = [ "cl-video-gif" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cl-video" pkgs) (getAttr "skippy" pkgs) ];
-  };
-  cl-video-player = {
-    pname = "cl-video-player";
-    version = "20180228-git";
-    asds = [ "cl-video-player" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-video/2018-02-28/cl-video-20180228-git.tgz";
-      sha256 = "1azldcp6r0j1kw6rczicmnv4m0d7rq4m5axz48ny6r2qybha80lr";
-      system = "cl-video-player";
-      asd = "cl-video-player";
-    });
-    systems = [ "cl-video-player" ];
-    lispLibs = [ (getAttr "bordeaux-threads" pkgs) (getAttr "cl-portaudio" pkgs) (getAttr "cl-video-avi" pkgs) (getAttr "cl-video-gif" pkgs) (getAttr "cl-video-wav" pkgs) (getAttr "clx" pkgs) ];
-  };
-  cl-video-wav = {
-    pname = "cl-video-wav";
-    version = "20180228-git";
-    asds = [ "cl-video-wav" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-video/2018-02-28/cl-video-20180228-git.tgz";
-      sha256 = "1azldcp6r0j1kw6rczicmnv4m0d7rq4m5axz48ny6r2qybha80lr";
-      system = "cl-video-wav";
-      asd = "cl-video-wav";
-    });
-    systems = [ "cl-video-wav" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cl-riff" pkgs) (getAttr "cl-video" pkgs) (getAttr "flexi-streams" pkgs) ];
-  };
-  cl-virtualbox = {
-    pname = "cl-virtualbox";
-    version = "20180831-git";
-    asds = [ "cl-virtualbox" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-virtualbox/2018-08-31/cl-virtualbox-20180831-git.tgz";
-      sha256 = "1jzn8jjn9yn9vgnn1r6h0iyxb6j17wm8lmf9j5hk4yqwdzb2nidv";
-      system = "cl-virtualbox";
-      asd = "cl-virtualbox";
-    });
-    systems = [ "cl-virtualbox" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cl-ppcre" pkgs) (getAttr "uiop" pkgs) (getAttr "usocket" pkgs) ];
-  };
-  cl-vorbis = {
-    pname = "cl-vorbis";
-    version = "20220707-git";
-    asds = [ "cl-vorbis" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-vorbis/2022-07-07/cl-vorbis-20220707-git.tgz";
-      sha256 = "1pq06aclyc6nqkdrch91vxgm19sdpvlzlcd76nsn5y7n8dsxgrbr";
-      system = "cl-vorbis";
-      asd = "cl-vorbis";
-    });
-    systems = [ "cl-vorbis" ];
-    lispLibs = [ (getAttr "cffi" pkgs) (getAttr "documentation-utils" pkgs) (getAttr "static-vectors" pkgs) (getAttr "trivial-features" pkgs) (getAttr "trivial-garbage" pkgs) ];
-  };
-  cl-voxelize = {
-    pname = "cl-voxelize";
-    version = "20150709-git";
-    asds = [ "cl-voxelize" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-voxelize/2015-07-09/cl-voxelize-20150709-git.tgz";
-      sha256 = "1sim8n175dgy0i0dxi1vsqzgjx07lgsnrgn3bizzka58ni5y8xdm";
-      system = "cl-voxelize";
-      asd = "cl-voxelize";
-    });
-    systems = [ "cl-voxelize" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) ];
-  };
-  cl-voxelize-examples = {
-    pname = "cl-voxelize-examples";
-    version = "20150709-git";
-    asds = [ "cl-voxelize-examples" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-voxelize/2015-07-09/cl-voxelize-20150709-git.tgz";
-      sha256 = "1sim8n175dgy0i0dxi1vsqzgjx07lgsnrgn3bizzka58ni5y8xdm";
-      system = "cl-voxelize-examples";
-      asd = "cl-voxelize-examples";
-    });
-    systems = [ "cl-voxelize-examples" ];
-    lispLibs = [ (getAttr "cl-ply" pkgs) (getAttr "cl-voxelize" pkgs) ];
-  };
-  cl-voxelize-test = {
-    pname = "cl-voxelize-test";
-    version = "20150709-git";
-    asds = [ "cl-voxelize-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-voxelize/2015-07-09/cl-voxelize-20150709-git.tgz";
-      sha256 = "1sim8n175dgy0i0dxi1vsqzgjx07lgsnrgn3bizzka58ni5y8xdm";
-      system = "cl-voxelize-test";
-      asd = "cl-voxelize-test";
-    });
-    systems = [ "cl-voxelize-test" ];
-    lispLibs = [ (getAttr "cl-voxelize" pkgs) (getAttr "prove" pkgs) (getAttr "prove-asdf" pkgs) ];
-  };
-  cl-wadler-pprint = {
-    pname = "cl-wadler-pprint";
-    version = "20191007-git";
-    asds = [ "cl-wadler-pprint" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-wadler-pprint/2019-10-07/cl-wadler-pprint-20191007-git.tgz";
-      sha256 = "0y5jxk7yiw8wng7hg91cwibh6d2hf1sv2mzqhkds6l4myhzxb4jr";
-      system = "cl-wadler-pprint";
-      asd = "cl-wadler-pprint";
-    });
-    systems = [ "cl-wadler-pprint" ];
-    lispLibs = [  ];
-  };
-  cl-wadler-pprint_slash_test = {
-    pname = "cl-wadler-pprint_test";
-    version = "20191007-git";
-    asds = [ "cl-wadler-pprint" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-wadler-pprint/2019-10-07/cl-wadler-pprint-20191007-git.tgz";
-      sha256 = "0y5jxk7yiw8wng7hg91cwibh6d2hf1sv2mzqhkds6l4myhzxb4jr";
-      system = "cl-wadler-pprint";
-      asd = "cl-wadler-pprint";
-    });
-    systems = [ "cl-wadler-pprint/test" ];
-    lispLibs = [ (getAttr "cl-wadler-pprint" pkgs) (getAttr "fiveam" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  cl-wav = {
-    pname = "cl-wav";
-    version = "20221106-git";
-    asds = [ "cl-wav" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-wav/2022-11-06/cl-wav-20221106-git.tgz";
-      sha256 = "1nf4zw72v0c9fl8mr4si5cr2xz753ydzv19mfzy5dqqx0k1g7wyl";
-      system = "cl-wav";
-      asd = "cl-wav";
-    });
-    systems = [ "cl-wav" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cl-riff" pkgs) ];
-  };
-  cl-wave-file-writer = {
-    pname = "cl-wave-file-writer";
-    version = "quickload-current-release-42cde6cf-git";
-    asds = [ "cl-wave-file-writer" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-wave-file-writer/2021-10-20/cl-wave-file-writer-quickload-current-release-42cde6cf-git.tgz";
-      sha256 = "0mxzp6rm7ah86vp1xj67q43al71k62x407m5vmbldvyb6pmx37fp";
-      system = "cl-wave-file-writer";
-      asd = "cl-wave-file-writer";
-    });
-    systems = [ "cl-wave-file-writer" ];
-    lispLibs = [  ];
-  };
-  cl-wave-file-writer_slash_doc = {
-    pname = "cl-wave-file-writer_doc";
-    version = "quickload-current-release-42cde6cf-git";
-    asds = [ "cl-wave-file-writer" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-wave-file-writer/2021-10-20/cl-wave-file-writer-quickload-current-release-42cde6cf-git.tgz";
-      sha256 = "0mxzp6rm7ah86vp1xj67q43al71k62x407m5vmbldvyb6pmx37fp";
-      system = "cl-wave-file-writer";
-      asd = "cl-wave-file-writer";
-    });
-    systems = [ "cl-wave-file-writer/doc" ];
-    lispLibs = [ (getAttr "cl-html-readme" pkgs) (getAttr "cl-wave-file-writer" pkgs) (getAttr "docparser" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  cl-wavelets = {
-    pname = "cl-wavelets";
-    version = "20220707-git";
-    asds = [ "cl-wavelets" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-wavelets/2022-07-07/cl-wavelets-20220707-git.tgz";
-      sha256 = "0z4r01d5mv4rachz5rr5zvnv94q7ka17138vcpsb05sz00vv03ba";
-      system = "cl-wavelets";
-      asd = "cl-wavelets";
-    });
-    systems = [ "cl-wavelets" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "serapeum" pkgs) ];
-  };
-  cl-wavelets_slash_examples = {
-    pname = "cl-wavelets_examples";
-    version = "20220707-git";
-    asds = [ "cl-wavelets" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-wavelets/2022-07-07/cl-wavelets-20220707-git.tgz";
-      sha256 = "0z4r01d5mv4rachz5rr5zvnv94q7ka17138vcpsb05sz00vv03ba";
-      system = "cl-wavelets";
-      asd = "cl-wavelets";
-    });
-    systems = [ "cl-wavelets/examples" ];
-    lispLibs = [ (getAttr "cl-jpeg" pkgs) (getAttr "cl-wavelets" pkgs) (getAttr "easy-audio" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  cl-wavelets_slash_tests = {
-    pname = "cl-wavelets_tests";
-    version = "20220707-git";
-    asds = [ "cl-wavelets" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-wavelets/2022-07-07/cl-wavelets-20220707-git.tgz";
-      sha256 = "0z4r01d5mv4rachz5rr5zvnv94q7ka17138vcpsb05sz00vv03ba";
-      system = "cl-wavelets";
-      asd = "cl-wavelets";
-    });
-    systems = [ "cl-wavelets/tests" ];
-    lispLibs = [ (getAttr "cl-wavelets" pkgs) (getAttr "fiveam" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  cl-wayland = {
-    pname = "cl-wayland";
-    version = "20190307-git";
-    asds = [ "cl-wayland" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-wayland/2019-03-07/cl-wayland-20190307-git.tgz";
-      sha256 = "1axdkdm5d2bvj674jq6ylwhfwbzzs7yjj6f04c519qbdq9sknbcn";
-      system = "cl-wayland";
-      asd = "cl-wayland";
-    });
-    systems = [ "cl-wayland" ];
-    lispLibs = [ (getAttr "cffi" pkgs) (getAttr "closer-mop" pkgs) ];
-  };
-  cl-weather-jp = {
-    pname = "cl-weather-jp";
-    version = "20160208-git";
-    asds = [ "cl-weather-jp" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-weather-jp/2016-02-08/cl-weather-jp-20160208-git.tgz";
-      sha256 = "15bp7gdk7ck9xs9lx2rrzqw6awlk6nz03cqy14wv2lvy3j84dc01";
-      system = "cl-weather-jp";
-      asd = "cl-weather-jp";
-    });
-    systems = [ "cl-weather-jp" ];
-    lispLibs = [ (getAttr "clss" pkgs) (getAttr "dexador" pkgs) (getAttr "function-cache" pkgs) (getAttr "jonathan" pkgs) (getAttr "plump" pkgs) ];
-  };
-  cl-weather-jp-test = {
-    pname = "cl-weather-jp-test";
-    version = "20160208-git";
-    asds = [ "cl-weather-jp-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-weather-jp/2016-02-08/cl-weather-jp-20160208-git.tgz";
-      sha256 = "15bp7gdk7ck9xs9lx2rrzqw6awlk6nz03cqy14wv2lvy3j84dc01";
-      system = "cl-weather-jp-test";
-      asd = "cl-weather-jp-test";
-    });
-    systems = [ "cl-weather-jp-test" ];
-    lispLibs = [ (getAttr "cl-weather-jp" pkgs) (getAttr "prove" pkgs) (getAttr "prove-asdf" pkgs) ];
-  };
-  cl-webdav = {
-    pname = "cl-webdav";
-    version = "20170830-git";
-    asds = [ "cl-webdav" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-webdav/2017-08-30/cl-webdav-20170830-git.tgz";
-      sha256 = "1cmzv763k4s5blfhx2p8s7q9gk20p8mj9p34dngydc14d2acrxmg";
-      system = "cl-webdav";
-      asd = "cl-webdav";
-    });
-    systems = [ "cl-webdav" ];
-    lispLibs = [ (getAttr "cl-fad" pkgs) (getAttr "cxml" pkgs) (getAttr "hunchentoot" pkgs) ];
-  };
-  cl-webdriver-client = {
-    pname = "cl-webdriver-client";
-    version = "20211230-git";
-    asds = [ "cl-webdriver-client" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-webdriver-client/2021-12-30/cl-webdriver-client-20211230-git.tgz";
-      sha256 = "12ackxk5glsi2dg7kjn6gr1c6r6xnmd23hwsbb9fghwjl23cqlri";
-      system = "cl-webdriver-client";
-      asd = "cl-webdriver-client";
-    });
-    systems = [ "cl-webdriver-client" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "assoc-utils" pkgs) (getAttr "cl-json" pkgs) (getAttr "dexador" pkgs) (getAttr "quri" pkgs) (getAttr "split-sequence" pkgs) ];
-  };
-  cl-webdriver-client-test = {
-    pname = "cl-webdriver-client-test";
-    version = "20211230-git";
-    asds = [ "cl-webdriver-client-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-webdriver-client/2021-12-30/cl-webdriver-client-20211230-git.tgz";
-      sha256 = "12ackxk5glsi2dg7kjn6gr1c6r6xnmd23hwsbb9fghwjl23cqlri";
-      system = "cl-webdriver-client-test";
-      asd = "cl-webdriver-client-test";
-    });
-    systems = [ "cl-webdriver-client-test" ];
-    lispLibs = [ (getAttr "cl-webdriver-client" pkgs) (getAttr "prove" pkgs) (getAttr "prove-asdf" pkgs) ];
-  };
-  cl-webkit2 = {
-    pname = "cl-webkit2";
-    version = "20221106-git";
-    asds = [ "cl-webkit2" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-webkit/2022-11-06/cl-webkit-20221106-git.tgz";
-      sha256 = "13f6s7zwnx0nvllizij4vziph8pz28xkqzfyyis1dzz7cxksf6fy";
-      system = "cl-webkit2";
-      asd = "cl-webkit2";
-    });
-    systems = [ "cl-webkit2" ];
-    lispLibs = [ (getAttr "cffi" pkgs) (getAttr "cl-cffi-gtk" pkgs) ];
-  };
-  cl-who = {
-    pname = "cl-who";
-    version = "20220331-git";
-    asds = [ "cl-who" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-who/2022-03-31/cl-who-20220331-git.tgz";
-      sha256 = "1rdvs113q6d46cblwhsv1vmm31p952wyzkyibqix0ypadpczlgp5";
-      system = "cl-who";
-      asd = "cl-who";
-    });
-    systems = [ "cl-who" ];
-    lispLibs = [  ];
-  };
-  cl-who-test = {
-    pname = "cl-who-test";
-    version = "20220331-git";
-    asds = [ "cl-who-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-who/2022-03-31/cl-who-20220331-git.tgz";
-      sha256 = "1rdvs113q6d46cblwhsv1vmm31p952wyzkyibqix0ypadpczlgp5";
-      system = "cl-who-test";
-      asd = "cl-who";
-    });
-    systems = [ "cl-who-test" ];
-    lispLibs = [ (getAttr "cl-who" pkgs) (getAttr "flexi-streams" pkgs) ];
-  };
-  cl-why = {
-    pname = "cl-why";
-    version = "20180228-git";
-    asds = [ "cl-why" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-why/2018-02-28/cl-why-20180228-git.tgz";
-      sha256 = "01xm7gj1wwd7i3r49jfdm96gwl7nvrn0h6q22kpzrb8zs48wj947";
-      system = "cl-why";
-      asd = "cl-why";
-    });
-    systems = [ "cl-why" ];
-    lispLibs = [  ];
-  };
-  cl-why-test = {
-    pname = "cl-why-test";
-    version = "20180228-git";
-    asds = [ "cl-why-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-why/2018-02-28/cl-why-20180228-git.tgz";
-      sha256 = "01xm7gj1wwd7i3r49jfdm96gwl7nvrn0h6q22kpzrb8zs48wj947";
-      system = "cl-why-test";
-      asd = "cl-why";
-    });
-    systems = [ "cl-why-test" ];
-    lispLibs = [ (getAttr "cl-why" pkgs) (getAttr "flexi-streams" pkgs) ];
-  };
-  cl-with = {
-    pname = "cl-with";
-    version = "20211020-git";
-    asds = [ "cl-with" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-with/2021-10-20/cl-with-20211020-git.tgz";
-      sha256 = "1x4laq7zi12xb28rfrh8hcy92pkfvjxsp2nn6jkmrhfynky5180w";
-      system = "cl-with";
-      asd = "cl-with";
-    });
-    systems = [ "cl-with" ];
-    lispLibs = [ (getAttr "cffi" pkgs) (getAttr "closer-mop" pkgs) ];
-  };
-  cl-wol_dot_cli = {
-    pname = "cl-wol.cli";
-    version = "20220331-git";
-    asds = [ "cl-wol.cli" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-wol/2022-03-31/cl-wol-20220331-git.tgz";
-      sha256 = "0pcg1gix6qf5c545l86swbpnjmgb0yxkwb0s52da2jnpbg6f8pkk";
-      system = "cl-wol.cli";
-      asd = "cl-wol.cli";
-    });
-    systems = [ "cl-wol.cli" ];
-    lispLibs = [ (getAttr "cl-ascii-table" pkgs) (getAttr "cl-migratum" pkgs) (getAttr "cl-migratum_dot_driver_dot_dbi" pkgs) (getAttr "cl-migratum_dot_provider_dot_local-path" pkgs) (getAttr "cl-wol_dot_core" pkgs) (getAttr "clingon" pkgs) ];
-  };
-  cl-wol_dot_core = {
-    pname = "cl-wol.core";
-    version = "20220331-git";
-    asds = [ "cl-wol.core" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-wol/2022-03-31/cl-wol-20220331-git.tgz";
-      sha256 = "0pcg1gix6qf5c545l86swbpnjmgb0yxkwb0s52da2jnpbg6f8pkk";
-      system = "cl-wol.core";
-      asd = "cl-wol.core";
-    });
-    systems = [ "cl-wol.core" ];
-    lispLibs = [ (getAttr "cl-ppcre" pkgs) (getAttr "usocket" pkgs) ];
-  };
-  cl-wol_dot_test = {
-    pname = "cl-wol.test";
-    version = "20220331-git";
-    asds = [ "cl-wol.test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-wol/2022-03-31/cl-wol-20220331-git.tgz";
-      sha256 = "0pcg1gix6qf5c545l86swbpnjmgb0yxkwb0s52da2jnpbg6f8pkk";
-      system = "cl-wol.test";
-      asd = "cl-wol.test";
-    });
-    systems = [ "cl-wol.test" ];
-    lispLibs = [ (getAttr "cl-wol_dot_core" pkgs) (getAttr "rove" pkgs) ];
-  };
-  cl-wordcut = {
-    pname = "cl-wordcut";
-    version = "20160421-git";
-    asds = [ "cl-wordcut" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-wordcut/2016-04-21/cl-wordcut-20160421-git.tgz";
-      sha256 = "1b8b3b1rgk0y87l54325ilcly8rq9qxalcsmw6rk8q6dq13lgv78";
-      system = "cl-wordcut";
-      asd = "cl-wordcut";
-    });
-    systems = [ "cl-wordcut" ];
-    lispLibs = [  ];
-  };
-  cl-wordcut_slash_test = {
-    pname = "cl-wordcut_test";
-    version = "20160421-git";
-    asds = [ "cl-wordcut" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-wordcut/2016-04-21/cl-wordcut-20160421-git.tgz";
-      sha256 = "1b8b3b1rgk0y87l54325ilcly8rq9qxalcsmw6rk8q6dq13lgv78";
-      system = "cl-wordcut";
-      asd = "cl-wordcut";
-    });
-    systems = [ "cl-wordcut/test" ];
-    lispLibs = [ (getAttr "cl-wordcut" pkgs) (getAttr "fiveam" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  cl-xdg = {
-    pname = "cl-xdg";
-    version = "20170124-git";
-    asds = [ "cl-xdg" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-xdg/2017-01-24/cl-xdg-20170124-git.tgz";
-      sha256 = "078hgsab0gl6s96wq09ibq5alzyyqh6wwc3yjs44fv18561p5jgc";
-      system = "cl-xdg";
-      asd = "cl-xdg";
-    });
-    systems = [ "cl-xdg" ];
-    lispLibs = [ (getAttr "cl-sxml" pkgs) (getAttr "cl-xmlspam" pkgs) (getAttr "flexi-streams" pkgs) (getAttr "parse-number" pkgs) (getAttr "split-sequence" pkgs) (getAttr "uiop" pkgs) ];
-  };
-  cl-xdg-test = {
-    pname = "cl-xdg-test";
-    version = "20170124-git";
-    asds = [ "cl-xdg-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-xdg/2017-01-24/cl-xdg-20170124-git.tgz";
-      sha256 = "078hgsab0gl6s96wq09ibq5alzyyqh6wwc3yjs44fv18561p5jgc";
-      system = "cl-xdg-test";
-      asd = "cl-xdg";
-    });
-    systems = [ "cl-xdg-test" ];
-    lispLibs = [ (getAttr "cl-xdg" pkgs) (getAttr "fiveam" pkgs) (getAttr "uiop" pkgs) ];
-  };
-  cl-xkb = {
-    pname = "cl-xkb";
-    version = "20221106-git";
-    asds = [ "cl-xkb" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-xkb/2022-11-06/cl-xkb-20221106-git.tgz";
-      sha256 = "08c4c4cfwq9yk09pfqir7nxyv8qbb97m0yrzind8vdlxy1lbgxgz";
-      system = "cl-xkb";
-      asd = "cl-xkb";
-    });
-    systems = [ "cl-xkb" ];
-    lispLibs = [ (getAttr "cffi" pkgs) ];
-  };
-  cl-xkeysym = {
-    pname = "cl-xkeysym";
-    version = "20140914-git";
-    asds = [ "cl-xkeysym" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-xkeysym/2014-09-14/cl-xkeysym-20140914-git.tgz";
-      sha256 = "0yxijl6xb5apb6v6qm8g3kfdr90slgg6vsnx4d1ps9z4zhrjlc6c";
-      system = "cl-xkeysym";
-      asd = "cl-xkeysym";
-    });
-    systems = [ "cl-xkeysym" ];
-    lispLibs = [  ];
-  };
-  cl-xmlspam = {
-    pname = "cl-xmlspam";
-    version = "20101006-http";
-    asds = [ "cl-xmlspam" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-xmlspam/2010-10-06/cl-xmlspam-20101006-http.tgz";
-      sha256 = "03jw57889b60nsqgb13vrf5q1g2fasah7qv7knjlx2w4mc1ci7ks";
-      system = "cl-xmlspam";
-      asd = "cl-xmlspam";
-    });
-    systems = [ "cl-xmlspam" ];
-    lispLibs = [ (getAttr "cl-ppcre" pkgs) (getAttr "cxml" pkgs) ];
-  };
-  cl-xmpp = {
-    pname = "cl-xmpp";
-    version = "0.8.1";
-    asds = [ "cl-xmpp" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-xmpp/2010-10-06/cl-xmpp-0.8.1.tgz";
-      sha256 = "1kzzq1y0625zlg83ppcpb0aqzvqbga9x3gm826grmy4rf5jrhz5f";
-      system = "cl-xmpp";
-      asd = "cl-xmpp";
-    });
-    systems = [ "cl-xmpp" ];
-    lispLibs = [ (getAttr "cxml" pkgs) (getAttr "ironclad" pkgs) (getAttr "usocket" pkgs) ];
-  };
-  cl-xmpp-sasl = {
-    pname = "cl-xmpp-sasl";
-    version = "0.8.1";
-    asds = [ "cl-xmpp-sasl" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-xmpp/2010-10-06/cl-xmpp-0.8.1.tgz";
-      sha256 = "1kzzq1y0625zlg83ppcpb0aqzvqbga9x3gm826grmy4rf5jrhz5f";
-      system = "cl-xmpp-sasl";
-      asd = "cl-xmpp-sasl";
-    });
-    systems = [ "cl-xmpp-sasl" ];
-    lispLibs = [ (getAttr "cl-base64" pkgs) (getAttr "cl-sasl" pkgs) (getAttr "cl-xmpp" pkgs) ];
-  };
-  cl-xmpp-tls = {
-    pname = "cl-xmpp-tls";
-    version = "0.8.1";
-    asds = [ "cl-xmpp-tls" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-xmpp/2010-10-06/cl-xmpp-0.8.1.tgz";
-      sha256 = "1kzzq1y0625zlg83ppcpb0aqzvqbga9x3gm826grmy4rf5jrhz5f";
-      system = "cl-xmpp-tls";
-      asd = "cl-xmpp-tls";
-    });
-    systems = [ "cl-xmpp-tls" ];
-    lispLibs = [ (getAttr "cl_plus_ssl" pkgs) (getAttr "cl-xmpp-sasl" pkgs) ];
-  };
-  cl-xul = {
-    pname = "cl-xul";
-    version = "20160318-git";
-    asds = [ "cl-xul" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-xul/2016-03-18/cl-xul-20160318-git.tgz";
-      sha256 = "0ldny4bjfndrkyqcq6klqxvqkpb0lhcqlj52y89ybl9w7dkl2d9p";
-      system = "cl-xul";
-      asd = "cl-xul";
-    });
-    systems = [ "cl-xul" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cl-fad" pkgs) (getAttr "cl-json" pkgs) (getAttr "closer-mop" pkgs) (getAttr "clws" pkgs) (getAttr "cxml" pkgs) (getAttr "log5" pkgs) (getAttr "md5" pkgs) (getAttr "parenscript" pkgs) ];
-  };
-  cl-xul-test = {
-    pname = "cl-xul-test";
-    version = "20160318-git";
-    asds = [ "cl-xul-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-xul/2016-03-18/cl-xul-20160318-git.tgz";
-      sha256 = "0ldny4bjfndrkyqcq6klqxvqkpb0lhcqlj52y89ybl9w7dkl2d9p";
-      system = "cl-xul-test";
-      asd = "cl-xul-test";
-    });
-    systems = [ "cl-xul-test" ];
-    lispLibs = [ (getAttr "cl-xul" pkgs) (getAttr "fiveam" pkgs) ];
-  };
-  cl-yaclyaml = {
-    pname = "cl-yaclyaml";
-    version = "20160825-git";
-    asds = [ "cl-yaclyaml" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-yaclyaml/2016-08-25/cl-yaclyaml-20160825-git.tgz";
-      sha256 = "1clfhz4ii2p11yc3bm23ib4rx0rfxsh18ddc2br82i7mbwks3pll";
-      system = "cl-yaclyaml";
-      asd = "cl-yaclyaml";
-    });
-    systems = [ "cl-yaclyaml" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cl-interpol" pkgs) (getAttr "cl-ppcre" pkgs) (getAttr "esrap-liquid" pkgs) (getAttr "iterate" pkgs) (getAttr "parse-number" pkgs) (getAttr "cl-test-more" pkgs) (getAttr "rutils" pkgs) ];
-  };
-  cl-yaclyaml-tests = {
-    pname = "cl-yaclyaml-tests";
-    version = "20160825-git";
-    asds = [ "cl-yaclyaml-tests" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-yaclyaml/2016-08-25/cl-yaclyaml-20160825-git.tgz";
-      sha256 = "1clfhz4ii2p11yc3bm23ib4rx0rfxsh18ddc2br82i7mbwks3pll";
-      system = "cl-yaclyaml-tests";
-      asd = "cl-yaclyaml";
-    });
-    systems = [ "cl-yaclyaml-tests" ];
-    lispLibs = [ (getAttr "cl-interpol" pkgs) (getAttr "cl-yaclyaml" pkgs) (getAttr "fiveam" pkgs) ];
-  };
-  cl-yahoo-finance = {
-    pname = "cl-yahoo-finance";
-    version = "20130312-git";
-    asds = [ "cl-yahoo-finance" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-yahoo-finance/2013-03-12/cl-yahoo-finance-20130312-git.tgz";
-      sha256 = "1qhs4j00iw1w81lx0vmyiayzqyvixaxc5j2rc89qlr1gx12mqadl";
-      system = "cl-yahoo-finance";
-      asd = "cl-yahoo-finance";
-    });
-    systems = [ "cl-yahoo-finance" ];
-    lispLibs = [ (getAttr "babel" pkgs) (getAttr "cl-csv" pkgs) (getAttr "drakma" pkgs) (getAttr "url-rewrite" pkgs) (getAttr "yason" pkgs) ];
-  };
-  cl-yaml = {
-    pname = "cl-yaml";
-    version = "20221106-git";
-    asds = [ "cl-yaml" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-yaml/2022-11-06/cl-yaml-20221106-git.tgz";
-      sha256 = "053fvrrd0p2xx4zxbz4kg9469895ypwsbjfd3nwpi7lwcll2bir5";
-      system = "cl-yaml";
-      asd = "cl-yaml";
-    });
-    systems = [ "cl-yaml" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cl-libyaml" pkgs) (getAttr "cl-ppcre" pkgs) (getAttr "parse-number" pkgs) ];
-  };
-  cl-yaml-test = {
-    pname = "cl-yaml-test";
-    version = "20221106-git";
-    asds = [ "cl-yaml-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-yaml/2022-11-06/cl-yaml-20221106-git.tgz";
-      sha256 = "053fvrrd0p2xx4zxbz4kg9469895ypwsbjfd3nwpi7lwcll2bir5";
-      system = "cl-yaml-test";
-      asd = "cl-yaml-test";
-    });
-    systems = [ "cl-yaml-test" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cl-fad" pkgs) (getAttr "cl-yaml" pkgs) (getAttr "fiveam" pkgs) (getAttr "generic-comparability" pkgs) (getAttr "trivial-benchmark" pkgs) (getAttr "yason" pkgs) ];
-  };
-  cl-yesql = {
-    pname = "cl-yesql";
-    version = "20211020-git";
-    asds = [ "cl-yesql" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-yesql/2021-10-20/cl-yesql-20211020-git.tgz";
-      sha256 = "0bg133kprbssv0z4ir2hkhf72fbmnz9v9861ncs1isqaby2d4xlj";
-      system = "cl-yesql";
-      asd = "cl-yesql";
-    });
-    systems = [ "cl-yesql" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "asdf-package-system" pkgs) (getAttr "esrap" pkgs) (getAttr "serapeum" pkgs) (getAttr "trivia" pkgs) (getAttr "vernacular" pkgs) ];
-  };
-  cl-zipper = {
-    pname = "cl-zipper";
-    version = "20200610-git";
-    asds = [ "cl-zipper" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-zipper/2020-06-10/cl-zipper-20200610-git.tgz";
-      sha256 = "1zcfy97l40ynbldxpx8nad81jlrfp0k2vic10wbkrqdfkr696xkg";
-      system = "cl-zipper";
-      asd = "cl-zipper";
-    });
-    systems = [ "cl-zipper" ];
-    lispLibs = [ (getAttr "prove-asdf" pkgs) ];
-  };
-  cl-zipper-test = {
-    pname = "cl-zipper-test";
-    version = "20200610-git";
-    asds = [ "cl-zipper-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-zipper/2020-06-10/cl-zipper-20200610-git.tgz";
-      sha256 = "1zcfy97l40ynbldxpx8nad81jlrfp0k2vic10wbkrqdfkr696xkg";
-      system = "cl-zipper-test";
-      asd = "cl-zipper";
-    });
-    systems = [ "cl-zipper-test" ];
-    lispLibs = [ (getAttr "cl-zipper" pkgs) (getAttr "prove-asdf" pkgs) (getAttr "test-utils" pkgs) ];
-  };
-  cl4store = {
-    pname = "cl4store";
-    version = "20200325-git";
-    asds = [ "cl4store" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl4store/2020-03-25/cl4store-20200325-git.tgz";
-      sha256 = "0qajxwlvmb5vd9qynnl0n62bcl1xhin49xk0p44v6pig8q2jzc26";
-      system = "cl4store";
-      asd = "cl4store";
-    });
-    systems = [ "cl4store" ];
-    lispLibs = [ (getAttr "cl-rdfxml" pkgs) (getAttr "cl-sparql" pkgs) (getAttr "drakma" pkgs) (getAttr "log5" pkgs) ];
-  };
-  clache = {
-    pname = "clache";
-    version = "20171130-git";
-    asds = [ "clache" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/clache/2017-11-30/clache-20171130-git.tgz";
-      sha256 = "0wxg004bsay58vr6xr6mlk7wj415qmvisqxvpnjsg6glfwca86ys";
-      system = "clache";
-      asd = "clache";
-    });
-    systems = [ "clache" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "babel" pkgs) (getAttr "cl-annot" pkgs) (getAttr "cl-fad" pkgs) (getAttr "cl-store" pkgs) (getAttr "cl-syntax" pkgs) (getAttr "cl-syntax-annot" pkgs) (getAttr "ironclad" pkgs) (getAttr "trivial-garbage" pkgs) ];
-  };
-  clache-test = {
-    pname = "clache-test";
-    version = "20171130-git";
-    asds = [ "clache-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/clache/2017-11-30/clache-20171130-git.tgz";
-      sha256 = "0wxg004bsay58vr6xr6mlk7wj415qmvisqxvpnjsg6glfwca86ys";
-      system = "clache-test";
-      asd = "clache-test";
-    });
-    systems = [ "clache-test" ];
-    lispLibs = [ (getAttr "clache" pkgs) (getAttr "cl-test-more" pkgs) ];
-  };
-  clack = {
-    pname = "clack";
-    version = "20221106-git";
-    asds = [ "clack" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/clack/2022-11-06/clack-20221106-git.tgz";
-      sha256 = "1vg61xfgch7lqm15kz8yr5qhqz2507qg88iqpa52mddwg91yamny";
-      system = "clack";
-      asd = "clack";
-    });
-    systems = [ "clack" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "bordeaux-threads" pkgs) (getAttr "lack" pkgs) (getAttr "lack-middleware-backtrace" pkgs) (getAttr "lack-util" pkgs) (getAttr "swank" pkgs) (getAttr "uiop" pkgs) (getAttr "usocket" pkgs) ];
-  };
-  clack-errors = {
-    pname = "clack-errors";
-    version = "20190813-git";
-    asds = [ "clack-errors" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/clack-errors/2019-08-13/clack-errors-20190813-git.tgz";
-      sha256 = "0z6jyn37phnpq02l5wml8z0593g8ps95c0c2lzkhi3is2wcj9cpf";
-      system = "clack-errors";
-      asd = "clack-errors";
-    });
-    systems = [ "clack-errors" ];
-    lispLibs = [ (getAttr "cl-ppcre" pkgs) (getAttr "clack" pkgs) (getAttr "closer-mop" pkgs) (getAttr "djula" pkgs) (getAttr "local-time" pkgs) (getAttr "trivial-backtrace" pkgs) ];
-  };
-  clack-errors-demo = {
-    pname = "clack-errors-demo";
-    version = "20190813-git";
-    asds = [ "clack-errors-demo" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/clack-errors/2019-08-13/clack-errors-20190813-git.tgz";
-      sha256 = "0z6jyn37phnpq02l5wml8z0593g8ps95c0c2lzkhi3is2wcj9cpf";
-      system = "clack-errors-demo";
-      asd = "clack-errors-demo";
-    });
-    systems = [ "clack-errors-demo" ];
-    lispLibs = [ (getAttr "cl-markup" pkgs) (getAttr "clack-errors" pkgs) ];
-  };
-  clack-errors-test = {
-    pname = "clack-errors-test";
-    version = "20190813-git";
-    asds = [ "clack-errors-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/clack-errors/2019-08-13/clack-errors-20190813-git.tgz";
-      sha256 = "0z6jyn37phnpq02l5wml8z0593g8ps95c0c2lzkhi3is2wcj9cpf";
-      system = "clack-errors-test";
-      asd = "clack-errors-test";
-    });
-    systems = [ "clack-errors-test" ];
-    lispLibs = [ (getAttr "clack" pkgs) (getAttr "clack-errors" pkgs) (getAttr "drakma" pkgs) (getAttr "fiveam" pkgs) (getAttr "hunchentoot" pkgs) ];
-  };
-  clack-handler-fcgi = {
-    pname = "clack-handler-fcgi";
-    version = "20221106-git";
-    asds = [ "clack-handler-fcgi" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/clack/2022-11-06/clack-20221106-git.tgz";
-      sha256 = "1vg61xfgch7lqm15kz8yr5qhqz2507qg88iqpa52mddwg91yamny";
-      system = "clack-handler-fcgi";
-      asd = "clack-handler-fcgi";
-    });
-    systems = [ "clack-handler-fcgi" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cl-fastcgi" pkgs) (getAttr "flexi-streams" pkgs) (getAttr "quri" pkgs) (getAttr "usocket" pkgs) ];
-  };
-  clack-handler-hunchentoot = {
-    pname = "clack-handler-hunchentoot";
-    version = "20221106-git";
-    asds = [ "clack-handler-hunchentoot" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/clack/2022-11-06/clack-20221106-git.tgz";
-      sha256 = "1vg61xfgch7lqm15kz8yr5qhqz2507qg88iqpa52mddwg91yamny";
-      system = "clack-handler-hunchentoot";
-      asd = "clack-handler-hunchentoot";
-    });
-    systems = [ "clack-handler-hunchentoot" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "bordeaux-threads" pkgs) (getAttr "clack-socket" pkgs) (getAttr "flexi-streams" pkgs) (getAttr "hunchentoot" pkgs) (getAttr "split-sequence" pkgs) ];
-  };
-  clack-handler-toot = {
-    pname = "clack-handler-toot";
-    version = "20221106-git";
-    asds = [ "clack-handler-toot" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/clack/2022-11-06/clack-20221106-git.tgz";
-      sha256 = "1vg61xfgch7lqm15kz8yr5qhqz2507qg88iqpa52mddwg91yamny";
-      system = "clack-handler-toot";
-      asd = "clack-handler-toot";
-    });
-    systems = [ "clack-handler-toot" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "bordeaux-threads" pkgs) (getAttr "cl-ppcre" pkgs) (getAttr "flexi-streams" pkgs) (getAttr "split-sequence" pkgs) (getAttr "toot" pkgs) ];
-  };
-  clack-handler-woo = {
-    pname = "clack-handler-woo";
-    version = "20220707-git";
-    asds = [ "clack-handler-woo" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/woo/2022-07-07/woo-20220707-git.tgz";
-      sha256 = "0ar7w2nfxhxirlcxxq4j1v4cnmvfkw3ip4i53b853g0pfb84m3kz";
-      system = "clack-handler-woo";
-      asd = "clack-handler-woo";
-    });
-    systems = [ "clack-handler-woo" ];
-    lispLibs = [ (getAttr "woo" pkgs) ];
-  };
-  clack-handler-wookie = {
-    pname = "clack-handler-wookie";
-    version = "20221106-git";
-    asds = [ "clack-handler-wookie" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/clack/2022-11-06/clack-20221106-git.tgz";
-      sha256 = "1vg61xfgch7lqm15kz8yr5qhqz2507qg88iqpa52mddwg91yamny";
-      system = "clack-handler-wookie";
-      asd = "clack-handler-wookie";
-    });
-    systems = [ "clack-handler-wookie" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "babel" pkgs) (getAttr "cl-async" pkgs) (getAttr "clack-socket" pkgs) (getAttr "fast-http" pkgs) (getAttr "fast-io" pkgs) (getAttr "flexi-streams" pkgs) (getAttr "quri" pkgs) (getAttr "split-sequence" pkgs) (getAttr "wookie" pkgs) ];
-  };
-  clack-pretend = {
-    pname = "clack-pretend";
-    version = "20210630-git";
-    asds = [ "clack-pretend" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/clack-pretend/2021-06-30/clack-pretend-20210630-git.tgz";
-      sha256 = "1fhbznnrfkg9n3ql97h4adaqf968gn7i9xpggb4zzszc8gwiyasg";
-      system = "clack-pretend";
-      asd = "clack-pretend";
-    });
-    systems = [ "clack-pretend" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "circular-streams" pkgs) (getAttr "cl-hash-util" pkgs) (getAttr "clack" pkgs) (getAttr "lack-request" pkgs) ];
-  };
-  clack-socket = {
-    pname = "clack-socket";
-    version = "20221106-git";
-    asds = [ "clack-socket" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/clack/2022-11-06/clack-20221106-git.tgz";
-      sha256 = "1vg61xfgch7lqm15kz8yr5qhqz2507qg88iqpa52mddwg91yamny";
-      system = "clack-socket";
-      asd = "clack-socket";
-    });
-    systems = [ "clack-socket" ];
-    lispLibs = [  ];
-  };
-  clack-static-asset-djula-helpers = {
-    pname = "clack-static-asset-djula-helpers";
-    version = "20211209-git";
-    asds = [ "clack-static-asset-djula-helpers" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/clack-static-asset-middleware/2021-12-09/clack-static-asset-middleware-20211209-git.tgz";
-      sha256 = "0fk288812sdm012knqx4qqdhggdqbfgd0zfb6mc06xig20wj02hc";
-      system = "clack-static-asset-djula-helpers";
-      asd = "clack-static-asset-djula-helpers";
-    });
-    systems = [ "clack-static-asset-djula-helpers" ];
-    lispLibs = [ (getAttr "clack-static-asset-middleware" pkgs) (getAttr "djula" pkgs) ];
-  };
-  clack-static-asset-middleware = {
-    pname = "clack-static-asset-middleware";
-    version = "20211209-git";
-    asds = [ "clack-static-asset-middleware" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/clack-static-asset-middleware/2021-12-09/clack-static-asset-middleware-20211209-git.tgz";
-      sha256 = "0fk288812sdm012knqx4qqdhggdqbfgd0zfb6mc06xig20wj02hc";
-      system = "clack-static-asset-middleware";
-      asd = "clack-static-asset-middleware";
-    });
-    systems = [ "clack-static-asset-middleware" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cl-ppcre" pkgs) (getAttr "ironclad" pkgs) (getAttr "local-time" pkgs) (getAttr "trivial-mimes" pkgs) (getAttr "uiop" pkgs) ];
-  };
-  clack-static-asset-middleware-test = {
-    pname = "clack-static-asset-middleware-test";
-    version = "20211209-git";
-    asds = [ "clack-static-asset-middleware-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/clack-static-asset-middleware/2021-12-09/clack-static-asset-middleware-20211209-git.tgz";
-      sha256 = "0fk288812sdm012knqx4qqdhggdqbfgd0zfb6mc06xig20wj02hc";
-      system = "clack-static-asset-middleware-test";
-      asd = "clack-static-asset-middleware-test";
-    });
-    systems = [ "clack-static-asset-middleware-test" ];
-    lispLibs = [ (getAttr "clack-static-asset-djula-helpers" pkgs) (getAttr "clack-static-asset-middleware" pkgs) (getAttr "lack-test" pkgs) (getAttr "prove" pkgs) (getAttr "prove-asdf" pkgs) ];
-  };
-  clack-test = {
-    pname = "clack-test";
-    version = "20221106-git";
-    asds = [ "clack-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/clack/2022-11-06/clack-20221106-git.tgz";
-      sha256 = "1vg61xfgch7lqm15kz8yr5qhqz2507qg88iqpa52mddwg91yamny";
-      system = "clack-test";
-      asd = "clack-test";
-    });
-    systems = [ "clack-test" ];
-    lispLibs = [ (getAttr "bordeaux-threads" pkgs) (getAttr "clack" pkgs) (getAttr "clack-handler-hunchentoot" pkgs) (getAttr "dexador" pkgs) (getAttr "flexi-streams" pkgs) (getAttr "http-body" pkgs) (getAttr "ironclad" pkgs) (getAttr "rove" pkgs) (getAttr "usocket" pkgs) ];
-  };
-  clad = {
-    pname = "clad";
-    version = "20211230-git";
-    asds = [ "clad" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/clad/2021-12-30/clad-20211230-git.tgz";
-      sha256 = "0g8d1nk3vwz2yhh9wh89khhps165v4zhy1lj30y589ynr1ziwpdz";
-      system = "clad";
-      asd = "clad";
-    });
-    systems = [ "clad" ];
-    lispLibs = [  ];
-  };
-  clam = {
-    pname = "clam";
-    version = "20220707-git";
-    asds = [ "clam" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cluster/2022-07-07/cluster-20220707-git.tgz";
-      sha256 = "1cb3v32ix5qiz4f1xgk6as0032xcnc7922m78ykpni0y2gpfp2c7";
-      system = "clam";
-      asd = "clam";
-    });
-    systems = [ "clam" ];
-    lispLibs = [  ];
-  };
-  class-options = {
-    pname = "class-options";
-    version = "1.0.1";
-    asds = [ "class-options" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/class-options/2020-10-16/class-options_1.0.1.tgz";
-      sha256 = "1dkgr1vbrsra44jznzz2bvdf8nlpdrrkjcqrfs8aa7axksda3bqk";
-      system = "class-options";
-      asd = "class-options";
-    });
-    systems = [ "class-options" ];
-    lispLibs = [ (getAttr "closer-mop" pkgs) ];
-  };
-  class-options_tests = {
-    pname = "class-options_tests";
-    version = "1.0.1";
-    asds = [ "class-options_tests" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/class-options/2020-10-16/class-options_1.0.1.tgz";
-      sha256 = "1dkgr1vbrsra44jznzz2bvdf8nlpdrrkjcqrfs8aa7axksda3bqk";
-      system = "class-options_tests";
-      asd = "class-options_tests";
-    });
-    systems = [ "class-options_tests" ];
-    lispLibs = [ (getAttr "class-options" pkgs) (getAttr "closer-mop" pkgs) (getAttr "enhanced-boolean" pkgs) (getAttr "parachute" pkgs) ];
-  };
-  classimp = {
-    pname = "classimp";
-    version = "20200325-git";
-    asds = [ "classimp" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/classimp/2020-03-25/classimp-20200325-git.tgz";
-      sha256 = "0pbnz6cf1zb2ayk4kbw0gphjb8nflnjns2rwhv86jz0kf0z1hqha";
-      system = "classimp";
-      asd = "classimp";
-    });
-    systems = [ "classimp" ];
-    lispLibs = [ (getAttr "cffi" pkgs) (getAttr "split-sequence" pkgs) ];
-  };
-  classimp-samples = {
-    pname = "classimp-samples";
-    version = "20200325-git";
-    asds = [ "classimp-samples" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/classimp/2020-03-25/classimp-20200325-git.tgz";
-      sha256 = "0pbnz6cf1zb2ayk4kbw0gphjb8nflnjns2rwhv86jz0kf0z1hqha";
-      system = "classimp-samples";
-      asd = "classimp-samples";
-    });
-    systems = [ "classimp-samples" ];
-    lispLibs = [ (getAttr "cl-ilut" pkgs) (getAttr "cl-fad" pkgs) (getAttr "cl-glu" pkgs) (getAttr "cl-glut" pkgs) (getAttr "classimp" pkgs) ];
-  };
-  classowary = {
-    pname = "classowary";
-    version = "20191007-git";
-    asds = [ "classowary" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/classowary/2019-10-07/classowary-20191007-git.tgz";
-      sha256 = "099vmnl3lny427c1vzqrxc2mi57lv944cwn0z9hb0fndlr30alkh";
-      system = "classowary";
-      asd = "classowary";
-    });
-    systems = [ "classowary" ];
-    lispLibs = [ (getAttr "documentation-utils" pkgs) ];
-  };
-  classowary-test = {
-    pname = "classowary-test";
-    version = "20191007-git";
-    asds = [ "classowary-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/classowary/2019-10-07/classowary-20191007-git.tgz";
-      sha256 = "099vmnl3lny427c1vzqrxc2mi57lv944cwn0z9hb0fndlr30alkh";
-      system = "classowary-test";
-      asd = "classowary-test";
-    });
-    systems = [ "classowary-test" ];
-    lispLibs = [ (getAttr "classowary" pkgs) (getAttr "parachute" pkgs) ];
-  };
-  clast = {
-    pname = "clast";
-    version = "20211230-git";
-    asds = [ "clast" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/clast/2021-12-30/clast-20211230-git.tgz";
-      sha256 = "1ayr1hq2vv1g1sfxws78hai86za5b68wpfg2lk0bazfzsbfm6nvs";
-      system = "clast";
-      asd = "clast";
-    });
-    systems = [ "clast" ];
-    lispLibs = [  ];
-  };
-  clast_slash_tests = {
-    pname = "clast_tests";
-    version = "20211230-git";
-    asds = [ "clast" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/clast/2021-12-30/clast-20211230-git.tgz";
-      sha256 = "1ayr1hq2vv1g1sfxws78hai86za5b68wpfg2lk0bazfzsbfm6nvs";
-      system = "clast";
-      asd = "clast";
-    });
-    systems = [ "clast/tests" ];
-    lispLibs = [ (getAttr "clast" pkgs) (getAttr "fiveam" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  clath = {
-    pname = "clath";
-    version = "20210531-git";
-    asds = [ "clath" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/clath/2021-05-31/clath-20210531-git.tgz";
-      sha256 = "1mdp6qnjlh698bbsqp3z0p3j9npfnrgbzinbld1fyscrlwaz8k27";
-      system = "clath";
-      asd = "clath";
-    });
-    systems = [ "clath" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cl-hash-util" pkgs) (getAttr "cl-json" pkgs) (getAttr "cl-who" pkgs) (getAttr "clack" pkgs) (getAttr "drakma" pkgs) (getAttr "flexi-streams" pkgs) (getAttr "ironclad" pkgs) (getAttr "jose" pkgs) (getAttr "ningle" pkgs) (getAttr "north" pkgs) (getAttr "ubiquitous" pkgs) ];
-  };
-  clavatar = {
-    pname = "clavatar";
-    version = "20121013-git";
-    asds = [ "clavatar" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/clavatar/2012-10-13/clavatar-20121013-git.tgz";
-      sha256 = "07r58d4dk5nr3aimrryzbf3jw6580b5gkkbpw74ax4nmm8hz6v5y";
-      system = "clavatar";
-      asd = "clavatar";
-    });
-    systems = [ "clavatar" ];
-    lispLibs = [ (getAttr "babel" pkgs) (getAttr "drakma" pkgs) (getAttr "iolib" pkgs) (getAttr "ironclad" pkgs) ];
-  };
-  clavier = {
-    pname = "clavier";
-    version = "20210531-git";
-    asds = [ "clavier" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/clavier/2021-05-31/clavier-20210531-git.tgz";
-      sha256 = "0734xia2hf7lqkm59gjhyvpsp0vl50djyhy4llwwbzbwwdkdihw4";
-      system = "clavier";
-      asd = "clavier";
-    });
-    systems = [ "clavier" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "chronicity" pkgs) (getAttr "cl-fad" pkgs) (getAttr "cl-ppcre" pkgs) (getAttr "closer-mop" pkgs) ];
-  };
-  clavier_dot_test = {
-    pname = "clavier.test";
-    version = "20210531-git";
-    asds = [ "clavier.test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/clavier/2021-05-31/clavier-20210531-git.tgz";
-      sha256 = "0734xia2hf7lqkm59gjhyvpsp0vl50djyhy4llwwbzbwwdkdihw4";
-      system = "clavier.test";
-      asd = "clavier.test";
-    });
-    systems = [ "clavier.test" ];
-    lispLibs = [ (getAttr "clavier" pkgs) (getAttr "stefil" pkgs) ];
-  };
-  claw = {
-    pname = "claw";
-    version = "stable-git";
-    asds = [ "claw" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/claw/2020-10-16/claw-stable-git.tgz";
-      sha256 = "146yv0hc4hmk72562ssj2d41143pp84dcbd1h7f4nx1c7hf2bb0d";
-      system = "claw";
-      asd = "claw";
-    });
-    systems = [ "claw" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cffi" pkgs) (getAttr "cl-json" pkgs) (getAttr "cl-ppcre" pkgs) (getAttr "claw-support" pkgs) (getAttr "local-time" pkgs) (getAttr "trivial-features" pkgs) (getAttr "uiop" pkgs) ];
-  };
-  claw-olm = {
-    pname = "claw-olm";
-    version = "20210531-git";
-    asds = [ "claw-olm" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/claw-olm/2021-05-31/claw-olm-20210531-git.tgz";
-      sha256 = "04r6d8infhcc7vz95asrvlpc0wzkzq1blaza74nd62alakr6mmrr";
-      system = "claw-olm";
-      asd = "claw-olm";
-    });
-    systems = [ "claw-olm" ];
-    lispLibs = [ (getAttr "claw-olm-bindings" pkgs) ];
-  };
-  claw-olm-bindings = {
-    pname = "claw-olm-bindings";
-    version = "20210531-git";
-    asds = [ "claw-olm-bindings" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/claw-olm/2021-05-31/claw-olm-20210531-git.tgz";
-      sha256 = "04r6d8infhcc7vz95asrvlpc0wzkzq1blaza74nd62alakr6mmrr";
-      system = "claw-olm-bindings";
-      asd = "claw-olm-bindings";
-    });
-    systems = [ "claw-olm-bindings" ];
-    lispLibs = [ (getAttr "cffi" pkgs) (getAttr "trivial-features" pkgs) (getAttr "uiop" pkgs) ];
-  };
-  claw-support = {
-    pname = "claw-support";
-    version = "stable-git";
-    asds = [ "claw-support" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/claw-support/2020-10-16/claw-support-stable-git.tgz";
-      sha256 = "1my2ka7h72ipx5n3b465g6kjkasrhsvhqlijwcg6dhlzs5yygl23";
-      system = "claw-support";
-      asd = "claw-support";
-    });
-    systems = [ "claw-support" ];
-    lispLibs = [  ];
-  };
-  claw-utils = {
-    pname = "claw-utils";
-    version = "stable-git";
-    asds = [ "claw-utils" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/claw-utils/2020-10-16/claw-utils-stable-git.tgz";
-      sha256 = "01df3kyf2qs3czi332dnz2s35x2j0fq46vgmsw7wjrrvnqc22mk5";
-      system = "claw-utils";
-      asd = "claw-utils";
-    });
-    systems = [ "claw-utils" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cffi" pkgs) (getAttr "claw" pkgs) ];
-  };
-  claw_slash_cffi = {
-    pname = "claw_cffi";
-    version = "stable-git";
-    asds = [ "claw" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/claw/2020-10-16/claw-stable-git.tgz";
-      sha256 = "146yv0hc4hmk72562ssj2d41143pp84dcbd1h7f4nx1c7hf2bb0d";
-      system = "claw";
-      asd = "claw";
-    });
-    systems = [ "claw/cffi" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cffi" pkgs) (getAttr "cl-json" pkgs) (getAttr "cl-ppcre" pkgs) (getAttr "claw-support" pkgs) (getAttr "local-time" pkgs) (getAttr "trivial-features" pkgs) (getAttr "uiop" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  claw_slash_spec = {
-    pname = "claw_spec";
-    version = "stable-git";
-    asds = [ "claw" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/claw/2020-10-16/claw-stable-git.tgz";
-      sha256 = "146yv0hc4hmk72562ssj2d41143pp84dcbd1h7f4nx1c7hf2bb0d";
-      system = "claw";
-      asd = "claw";
-    });
-    systems = [ "claw/spec" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cl-json" pkgs) (getAttr "cl-ppcre" pkgs) (getAttr "claw-support" pkgs) (getAttr "local-time" pkgs) (getAttr "uiop" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  claw_slash_util = {
-    pname = "claw_util";
-    version = "stable-git";
-    asds = [ "claw" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/claw/2020-10-16/claw-stable-git.tgz";
-      sha256 = "146yv0hc4hmk72562ssj2d41143pp84dcbd1h7f4nx1c7hf2bb0d";
-      system = "claw";
-      asd = "claw";
-    });
-    systems = [ "claw/util" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cl-ppcre" pkgs) (getAttr "local-time" pkgs) (getAttr "uiop" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  claw_slash_wrapper = {
-    pname = "claw_wrapper";
-    version = "stable-git";
-    asds = [ "claw" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/claw/2020-10-16/claw-stable-git.tgz";
-      sha256 = "146yv0hc4hmk72562ssj2d41143pp84dcbd1h7f4nx1c7hf2bb0d";
-      system = "claw";
-      asd = "claw";
-    });
-    systems = [ "claw/wrapper" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cl-json" pkgs) (getAttr "cl-ppcre" pkgs) (getAttr "claw-support" pkgs) (getAttr "local-time" pkgs) (getAttr "uiop" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  clawk = {
-    pname = "clawk";
-    version = "20200925-git";
-    asds = [ "clawk" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/clawk/2020-09-25/clawk-20200925-git.tgz";
-      sha256 = "1ph3xjqilvinvgr9q3w47zxqyz1sqnq030nlx7kgkkv8j3bnqk7a";
-      system = "clawk";
-      asd = "clawk";
-    });
-    systems = [ "clawk" ];
-    lispLibs = [ (getAttr "regex" pkgs) ];
-  };
-  claxy = {
-    pname = "claxy";
-    version = "20220220-git";
-    asds = [ "claxy" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/claxy/2022-02-20/claxy-20220220-git.tgz";
-      sha256 = "1n6zbsfp0zkndw7r3nar8srjj1wmfgngia3p7z756mmsvp1l68va";
-      system = "claxy";
-      asd = "claxy";
-    });
-    systems = [ "claxy" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "dexador" pkgs) ];
-  };
-  clazy = {
-    pname = "clazy";
-    version = "20211230-git";
-    asds = [ "clazy" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/clazy/2021-12-30/clazy-20211230-git.tgz";
-      sha256 = "1zvkfi7ddhlyckfwx47ays6gf1r0dq9ma86lvplzy58brvk920ds";
-      system = "clazy";
-      asd = "clazy";
-    });
-    systems = [ "clazy" ];
-    lispLibs = [  ];
-  };
-  clem = {
-    pname = "clem";
-    version = "20210807-git";
-    asds = [ "clem" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/clem/2021-08-07/clem-20210807-git.tgz";
-      sha256 = "0vmsgxdpxrqkx3xp9n8b0fwkzk1r2dwcwjlc8yy5w2m2sighh2rk";
-      system = "clem";
-      asd = "clem";
-    });
-    systems = [ "clem" ];
-    lispLibs = [  ];
-  };
-  clem-benchmark = {
-    pname = "clem-benchmark";
-    version = "20210807-git";
-    asds = [ "clem-benchmark" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/clem/2021-08-07/clem-20210807-git.tgz";
-      sha256 = "0vmsgxdpxrqkx3xp9n8b0fwkzk1r2dwcwjlc8yy5w2m2sighh2rk";
-      system = "clem-benchmark";
-      asd = "clem-benchmark";
-    });
-    systems = [ "clem-benchmark" ];
-    lispLibs = [ (getAttr "clem" pkgs) ];
-  };
-  clem-test = {
-    pname = "clem-test";
-    version = "20210807-git";
-    asds = [ "clem-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/clem/2021-08-07/clem-20210807-git.tgz";
-      sha256 = "0vmsgxdpxrqkx3xp9n8b0fwkzk1r2dwcwjlc8yy5w2m2sighh2rk";
-      system = "clem-test";
-      asd = "clem-test";
-    });
-    systems = [ "clem-test" ];
-    lispLibs = [ (getAttr "clem" pkgs) ];
-  };
-  cleric = {
-    pname = "cleric";
-    version = "20220220-git";
-    asds = [ "cleric" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cleric/2022-02-20/cleric-20220220-git.tgz";
-      sha256 = "0a0xqr0bpp0v62f8d13yflz3vz6j4fa9icgc134ajaqxcfa7k0vp";
-      system = "cleric";
-      asd = "cleric";
-    });
-    systems = [ "cleric" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "epmd" pkgs) (getAttr "erlang-term" pkgs) (getAttr "md5" pkgs) (getAttr "com_dot_gigamonkeys_dot_binary-data" pkgs) (getAttr "usocket" pkgs) ];
-  };
-  cleric-test = {
-    pname = "cleric-test";
-    version = "20220220-git";
-    asds = [ "cleric-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cleric/2022-02-20/cleric-20220220-git.tgz";
-      sha256 = "0a0xqr0bpp0v62f8d13yflz3vz6j4fa9icgc134ajaqxcfa7k0vp";
-      system = "cleric-test";
-      asd = "cleric-test";
-    });
-    systems = [ "cleric-test" ];
-    lispLibs = [ (getAttr "erlang-term-test" pkgs) (getAttr "cleric" pkgs) (getAttr "fiveam" pkgs) (getAttr "flexi-streams" pkgs) ];
-  };
-  clerk = {
-    pname = "clerk";
-    version = "20220220-git";
-    asds = [ "clerk" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/clerk/2022-02-20/clerk-20220220-git.tgz";
-      sha256 = "0x9rzdylgl6ingkg6g47wh7pb6k30mnl718y8ql1pg0vfd5y1hml";
-      system = "clerk";
-      asd = "clerk";
-    });
-    systems = [ "clerk" ];
-    lispLibs = [ (getAttr "bordeaux-threads" pkgs) (getAttr "cl-ppcre" pkgs) (getAttr "prove-asdf" pkgs) ];
-  };
-  clerk-test = {
-    pname = "clerk-test";
-    version = "20220220-git";
-    asds = [ "clerk-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/clerk/2022-02-20/clerk-20220220-git.tgz";
-      sha256 = "0x9rzdylgl6ingkg6g47wh7pb6k30mnl718y8ql1pg0vfd5y1hml";
-      system = "clerk-test";
-      asd = "clerk";
-    });
-    systems = [ "clerk-test" ];
-    lispLibs = [ (getAttr "prove" pkgs) (getAttr "prove-asdf" pkgs) ];
-  };
-  clesh = {
-    pname = "clesh";
-    version = "20201220-git";
-    asds = [ "clesh" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/clesh/2020-12-20/clesh-20201220-git.tgz";
-      sha256 = "012ry02djnqyvvs61wbbqj3saz621w2l9gczrywdxhi5p4ycx318";
-      system = "clesh";
-      asd = "clesh";
-    });
-    systems = [ "clesh" ];
-    lispLibs = [ (getAttr "named-readtables" pkgs) (getAttr "trivial-shell" pkgs) ];
-  };
-  clesh-tests = {
-    pname = "clesh-tests";
-    version = "20201220-git";
-    asds = [ "clesh-tests" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/clesh/2020-12-20/clesh-20201220-git.tgz";
-      sha256 = "012ry02djnqyvvs61wbbqj3saz621w2l9gczrywdxhi5p4ycx318";
-      system = "clesh-tests";
-      asd = "clesh-tests";
-    });
-    systems = [ "clesh-tests" ];
-    lispLibs = [ (getAttr "clesh" pkgs) (getAttr "lisp-unit" pkgs) ];
-  };
-  cletris = {
-    pname = "cletris";
-    version = "20211020-git";
-    asds = [ "cletris" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cletris/2021-10-20/cletris-20211020-git.tgz";
-      sha256 = "0k7j0jg4dc6q7p7h3vin3hs0f7q8d7yarg2mw0c3hng19r4q9p8v";
-      system = "cletris";
-      asd = "cletris";
-    });
-    systems = [ "cletris" ];
-    lispLibs = [ (getAttr "cl-ppcre" pkgs) (getAttr "pal" pkgs) ];
-  };
-  cletris-network = {
-    pname = "cletris-network";
-    version = "20211020-git";
-    asds = [ "cletris-network" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cletris/2021-10-20/cletris-20211020-git.tgz";
-      sha256 = "0k7j0jg4dc6q7p7h3vin3hs0f7q8d7yarg2mw0c3hng19r4q9p8v";
-      system = "cletris-network";
-      asd = "cletris-network";
-    });
-    systems = [ "cletris-network" ];
-    lispLibs = [ (getAttr "cl-log" pkgs) (getAttr "cl-ppcre" pkgs) (getAttr "cletris" pkgs) (getAttr "usocket" pkgs) ];
-  };
-  cletris-test = {
-    pname = "cletris-test";
-    version = "20211020-git";
-    asds = [ "cletris-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cletris/2021-10-20/cletris-20211020-git.tgz";
-      sha256 = "0k7j0jg4dc6q7p7h3vin3hs0f7q8d7yarg2mw0c3hng19r4q9p8v";
-      system = "cletris-test";
-      asd = "cletris-test";
-    });
-    systems = [ "cletris-test" ];
-    lispLibs = [ (getAttr "cletris" pkgs) (getAttr "prove" pkgs) (getAttr "prove-asdf" pkgs) ];
-  };
-  clfswm = {
-    pname = "clfswm";
-    version = "20161204-git";
-    asds = [ "clfswm" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/clfswm/2016-12-04/clfswm-20161204-git.tgz";
-      sha256 = "1r84cpcs74avkjw18ckz3r3836xhky2fcf5ypbfmajpjzxwn5dzc";
-      system = "clfswm";
-      asd = "clfswm";
-    });
-    systems = [ "clfswm" ];
-    lispLibs = [ (getAttr "clx" pkgs) ];
-  };
-  clgplot = {
-    pname = "clgplot";
-    version = "20221106-git";
-    asds = [ "clgplot" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/clgplot/2022-11-06/clgplot-20221106-git.tgz";
-      sha256 = "0qhhbdwahpn9ass9am9fdpvcnfpi4jrss60kip6jkkzgir9iyz0p";
-      system = "clgplot";
-      asd = "clgplot";
-    });
-    systems = [ "clgplot" ];
-    lispLibs = [ (getAttr "iterate" pkgs) (getAttr "uiop" pkgs) ];
-  };
-  clgplot-test = {
-    pname = "clgplot-test";
-    version = "20221106-git";
-    asds = [ "clgplot-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/clgplot/2022-11-06/clgplot-20221106-git.tgz";
-      sha256 = "0qhhbdwahpn9ass9am9fdpvcnfpi4jrss60kip6jkkzgir9iyz0p";
-      system = "clgplot-test";
-      asd = "clgplot-test";
-    });
-    systems = [ "clgplot-test" ];
-    lispLibs = [ (getAttr "clgplot" pkgs) (getAttr "prove" pkgs) (getAttr "prove-asdf" pkgs) ];
-  };
-  clhs = {
-    pname = "clhs";
-    version = "0.6.3";
-    asds = [ "clhs" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/clhs/2015-04-07/clhs-0.6.3.tgz";
-      sha256 = "1jffq2w9yql4cvxy2g5c2v402014306qklp4xhddjjlfvs30sfjd";
-      system = "clhs";
-      asd = "clhs";
-    });
-    systems = [ "clhs" ];
-    lispLibs = [  ];
-  };
-  cli-parser = {
-    pname = "cli-parser";
-    version = "20150608-git";
-    asds = [ "cli-parser" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-cli-parser/2015-06-08/cl-cli-parser-20150608-git.tgz";
-      sha256 = "0gnpakzakkb2j67v2wh4q87k6mmrv0c0fg56m4vx88kgpxp7f90f";
-      system = "cli-parser";
-      asd = "cli-parser";
-    });
-    systems = [ "cli-parser" ];
-    lispLibs = [  ];
-  };
-  clickr = {
-    pname = "clickr";
-    version = "20140713-git";
-    asds = [ "clickr" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/clickr/2014-07-13/clickr-20140713-git.tgz";
-      sha256 = "0sykp4aaxjf8xcyiqyqs6967f0fna8ahjqi7ij5z79fd530sxz2s";
-      system = "clickr";
-      asd = "clickr";
-    });
-    systems = [ "clickr" ];
-    lispLibs = [ (getAttr "cl-ppcre" pkgs) (getAttr "md5" pkgs) (getAttr "s-xml" pkgs) (getAttr "s-xml-rpc" pkgs) (getAttr "trivial-http" pkgs) ];
-  };
-  clim = {
-    pname = "clim";
-    version = "20221106-git";
-    asds = [ "clim" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/mcclim/2022-11-06/mcclim-20221106-git.tgz";
-      sha256 = "0hz6vz4c0xv8bjx02hf3rbnp66c7ifx2ld4y6nxdz6i70wyhwbdf";
-      system = "clim";
-      asd = "clim";
-    });
-    systems = [ "clim" ];
-    lispLibs = [ (getAttr "clim-core" pkgs) (getAttr "drei-mcclim" pkgs) ];
-  };
-  clim-core = {
-    pname = "clim-core";
-    version = "20221106-git";
-    asds = [ "clim-core" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/mcclim/2022-11-06/mcclim-20221106-git.tgz";
-      sha256 = "0hz6vz4c0xv8bjx02hf3rbnp66c7ifx2ld4y6nxdz6i70wyhwbdf";
-      system = "clim-core";
-      asd = "clim-core";
-    });
-    systems = [ "clim-core" ];
-    lispLibs = [ (getAttr "bordeaux-threads" pkgs) (getAttr "closer-mop" pkgs) (getAttr "spatial-trees" pkgs) (getAttr "trivial-features" pkgs) (getAttr "trivial-garbage" pkgs) (getAttr "trivial-gray-streams" pkgs) ];
-  };
-  clim-core_slash_frames = {
-    pname = "clim-core_frames";
-    version = "20221106-git";
-    asds = [ "clim-core" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/mcclim/2022-11-06/mcclim-20221106-git.tgz";
-      sha256 = "0hz6vz4c0xv8bjx02hf3rbnp66c7ifx2ld4y6nxdz6i70wyhwbdf";
-      system = "clim-core";
-      asd = "clim-core";
-    });
-    systems = [ "clim-core/frames" ];
-    lispLibs = [ (getAttr "bordeaux-threads" pkgs) (getAttr "closer-mop" pkgs) (getAttr "spatial-trees" pkgs) (getAttr "trivial-features" pkgs) (getAttr "trivial-garbage" pkgs) (getAttr "trivial-gray-streams" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  clim-core_slash_silex = {
-    pname = "clim-core_silex";
-    version = "20221106-git";
-    asds = [ "clim-core" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/mcclim/2022-11-06/mcclim-20221106-git.tgz";
-      sha256 = "0hz6vz4c0xv8bjx02hf3rbnp66c7ifx2ld4y6nxdz6i70wyhwbdf";
-      system = "clim-core";
-      asd = "clim-core";
-    });
-    systems = [ "clim-core/silex" ];
-    lispLibs = [ (getAttr "bordeaux-threads" pkgs) (getAttr "closer-mop" pkgs) (getAttr "spatial-trees" pkgs) (getAttr "trivial-features" pkgs) (getAttr "trivial-garbage" pkgs) (getAttr "trivial-gray-streams" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  clim-core_slash_system = {
-    pname = "clim-core_system";
-    version = "20221106-git";
-    asds = [ "clim-core" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/mcclim/2022-11-06/mcclim-20221106-git.tgz";
-      sha256 = "0hz6vz4c0xv8bjx02hf3rbnp66c7ifx2ld4y6nxdz6i70wyhwbdf";
-      system = "clim-core";
-      asd = "clim-core";
-    });
-    systems = [ "clim-core/system" ];
-    lispLibs = [ (getAttr "bordeaux-threads" pkgs) (getAttr "closer-mop" pkgs) (getAttr "trivial-features" pkgs) (getAttr "trivial-gray-streams" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  clim-debugger = {
-    pname = "clim-debugger";
-    version = "20221106-git";
-    asds = [ "clim-debugger" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/mcclim/2022-11-06/mcclim-20221106-git.tgz";
-      sha256 = "0hz6vz4c0xv8bjx02hf3rbnp66c7ifx2ld4y6nxdz6i70wyhwbdf";
-      system = "clim-debugger";
-      asd = "clim-debugger";
-    });
-    systems = [ "clim-debugger" ];
-    lispLibs = [ (getAttr "clouseau" pkgs) (getAttr "mcclim" pkgs) (getAttr "slim" pkgs) (getAttr "swank" pkgs) ];
-  };
-  clim-examples = {
-    pname = "clim-examples";
-    version = "20221106-git";
-    asds = [ "clim-examples" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/mcclim/2022-11-06/mcclim-20221106-git.tgz";
-      sha256 = "0hz6vz4c0xv8bjx02hf3rbnp66c7ifx2ld4y6nxdz6i70wyhwbdf";
-      system = "clim-examples";
-      asd = "clim-examples";
-    });
-    systems = [ "clim-examples" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "closer-mop" pkgs) (getAttr "clim" pkgs) (getAttr "mcclim" pkgs) (getAttr "mcclim-bezier" pkgs) (getAttr "mcclim-raster-image" pkgs) (getAttr "mcclim-svg" pkgs) ];
-  };
-  clim-examples_slash_superapp = {
-    pname = "clim-examples_superapp";
-    version = "20221106-git";
-    asds = [ "clim-examples" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/mcclim/2022-11-06/mcclim-20221106-git.tgz";
-      sha256 = "0hz6vz4c0xv8bjx02hf3rbnp66c7ifx2ld4y6nxdz6i70wyhwbdf";
-      system = "clim-examples";
-      asd = "clim-examples";
-    });
-    systems = [ "clim-examples/superapp" ];
-    lispLibs = [ (getAttr "bordeaux-threads" pkgs) (getAttr "mcclim" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  clim-lisp = {
-    pname = "clim-lisp";
-    version = "20221106-git";
-    asds = [ "clim-lisp" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/mcclim/2022-11-06/mcclim-20221106-git.tgz";
-      sha256 = "0hz6vz4c0xv8bjx02hf3rbnp66c7ifx2ld4y6nxdz6i70wyhwbdf";
-      system = "clim-lisp";
-      asd = "clim-lisp";
-    });
-    systems = [ "clim-lisp" ];
-    lispLibs = [ (getAttr "bordeaux-threads" pkgs) (getAttr "closer-mop" pkgs) (getAttr "trivial-features" pkgs) (getAttr "trivial-gray-streams" pkgs) ];
-  };
-  clim-listener = {
-    pname = "clim-listener";
-    version = "20221106-git";
-    asds = [ "clim-listener" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/mcclim/2022-11-06/mcclim-20221106-git.tgz";
-      sha256 = "0hz6vz4c0xv8bjx02hf3rbnp66c7ifx2ld4y6nxdz6i70wyhwbdf";
-      system = "clim-listener";
-      asd = "clim-listener";
-    });
-    systems = [ "clim-listener" ];
-    lispLibs = [ (getAttr "cl-fad" pkgs) (getAttr "clim-debugger" pkgs) (getAttr "mcclim" pkgs) (getAttr "uiop" pkgs) ];
-  };
-  clim-pdf = {
-    pname = "clim-pdf";
-    version = "20221106-git";
-    asds = [ "clim-pdf" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/mcclim/2022-11-06/mcclim-20221106-git.tgz";
-      sha256 = "0hz6vz4c0xv8bjx02hf3rbnp66c7ifx2ld4y6nxdz6i70wyhwbdf";
-      system = "clim-pdf";
-      asd = "clim-pdf";
-    });
-    systems = [ "clim-pdf" ];
-    lispLibs = [ (getAttr "cl-pdf" pkgs) (getAttr "flexi-streams" pkgs) (getAttr "clim" pkgs) (getAttr "clim-postscript" pkgs) (getAttr "clim-postscript-font" pkgs) ];
-  };
-  clim-pdf_slash_test = {
-    pname = "clim-pdf_test";
-    version = "20221106-git";
-    asds = [ "clim-pdf" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/mcclim/2022-11-06/mcclim-20221106-git.tgz";
-      sha256 = "0hz6vz4c0xv8bjx02hf3rbnp66c7ifx2ld4y6nxdz6i70wyhwbdf";
-      system = "clim-pdf";
-      asd = "clim-pdf";
-    });
-    systems = [ "clim-pdf/test" ];
-    lispLibs = [ (getAttr "fiveam" pkgs) (getAttr "clim-pdf" pkgs) (getAttr "mcclim" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  clim-postscript = {
-    pname = "clim-postscript";
-    version = "20221106-git";
-    asds = [ "clim-postscript" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/mcclim/2022-11-06/mcclim-20221106-git.tgz";
-      sha256 = "0hz6vz4c0xv8bjx02hf3rbnp66c7ifx2ld4y6nxdz6i70wyhwbdf";
-      system = "clim-postscript";
-      asd = "clim-postscript";
-    });
-    systems = [ "clim-postscript" ];
-    lispLibs = [ (getAttr "clim" pkgs) (getAttr "clim-postscript-font" pkgs) ];
-  };
-  clim-postscript-font = {
-    pname = "clim-postscript-font";
-    version = "20221106-git";
-    asds = [ "clim-postscript-font" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/mcclim/2022-11-06/mcclim-20221106-git.tgz";
-      sha256 = "0hz6vz4c0xv8bjx02hf3rbnp66c7ifx2ld4y6nxdz6i70wyhwbdf";
-      system = "clim-postscript-font";
-      asd = "clim-postscript-font";
-    });
-    systems = [ "clim-postscript-font" ];
-    lispLibs = [ (getAttr "clim" pkgs) (getAttr "mcclim-backend-common" pkgs) ];
-  };
-  clim-postscript_slash_test = {
-    pname = "clim-postscript_test";
-    version = "20221106-git";
-    asds = [ "clim-postscript" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/mcclim/2022-11-06/mcclim-20221106-git.tgz";
-      sha256 = "0hz6vz4c0xv8bjx02hf3rbnp66c7ifx2ld4y6nxdz6i70wyhwbdf";
-      system = "clim-postscript";
-      asd = "clim-postscript";
-    });
-    systems = [ "clim-postscript/test" ];
-    lispLibs = [ (getAttr "fiveam" pkgs) (getAttr "clim-postscript" pkgs) (getAttr "mcclim" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  clim-widgets = {
-    pname = "clim-widgets";
-    version = "20200715-git";
-    asds = [ "clim-widgets" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/clim-widgets/2020-07-15/clim-widgets-20200715-git.tgz";
-      sha256 = "0cpr8xn5a33sy75d06b95cfd3b1h9m5iixgg5h4isavpx3aglmy2";
-      system = "clim-widgets";
-      asd = "clim-widgets";
-    });
-    systems = [ "clim-widgets" ];
-    lispLibs = [ (getAttr "cl-fad" pkgs) (getAttr "closer-mop" pkgs) (getAttr "local-time" pkgs) (getAttr "manifest" pkgs) (getAttr "mcclim" pkgs) (getAttr "nsort" pkgs) (getAttr "perlre" pkgs) (getAttr "simple-date-time" pkgs) ];
-  };
-  climacs = {
-    pname = "climacs";
-    version = "20200925-git";
-    asds = [ "climacs" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/climacs/2020-09-25/climacs-20200925-git.tgz";
-      sha256 = "0mv8l994fvh8pg8065wwb813nmygv0p5d6pbidhbw6aj7qbmhkhy";
-      system = "climacs";
-      asd = "climacs";
-    });
-    systems = [ "climacs" ];
-    lispLibs = [ (getAttr "flexichain" pkgs) (getAttr "mcclim" pkgs) ];
-  };
-  climc = {
-    pname = "climc";
-    version = "20221106-git";
-    asds = [ "climc" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/climc/2022-11-06/climc-20221106-git.tgz";
-      sha256 = "0a05l6yzgnnijk6868r1mz13md28lbmm7hnfiz19aflndj7602cf";
-      system = "climc";
-      asd = "climc";
-    });
-    systems = [ "climc" ];
-    lispLibs = [ (getAttr "cl-ppcre" pkgs) (getAttr "cl-xmpp-tls" pkgs) (getAttr "mcclim" pkgs) ];
-  };
-  climc-test = {
-    pname = "climc-test";
-    version = "20221106-git";
-    asds = [ "climc-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/climc/2022-11-06/climc-20221106-git.tgz";
-      sha256 = "0a05l6yzgnnijk6868r1mz13md28lbmm7hnfiz19aflndj7602cf";
-      system = "climc-test";
-      asd = "climc-test";
-    });
-    systems = [ "climc-test" ];
-    lispLibs = [ (getAttr "climc" pkgs) (getAttr "lisp-unit" pkgs) ];
-  };
-  climon = {
-    pname = "climon";
-    version = "20220220-git";
-    asds = [ "climon" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/climon/2022-02-20/climon-20220220-git.tgz";
-      sha256 = "00bdxpzgvmf5yg785xc9454nv7x5n314kywjd0f12mbvrgklb818";
-      system = "climon";
-      asd = "climon";
-    });
-    systems = [ "climon" ];
-    lispLibs = [ (getAttr "pal" pkgs) ];
-  };
-  climon-test = {
-    pname = "climon-test";
-    version = "20220220-git";
-    asds = [ "climon-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/climon/2022-02-20/climon-20220220-git.tgz";
-      sha256 = "00bdxpzgvmf5yg785xc9454nv7x5n314kywjd0f12mbvrgklb818";
-      system = "climon-test";
-      asd = "climon-test";
-    });
-    systems = [ "climon-test" ];
-    lispLibs = [ (getAttr "climon" pkgs) (getAttr "prove" pkgs) (getAttr "prove-asdf" pkgs) ];
-  };
-  clinch = {
-    pname = "clinch";
-    version = "20180228-git";
-    asds = [ "clinch" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/clinch/2018-02-28/clinch-20180228-git.tgz";
-      sha256 = "0hrj3kdxnazffrax3jmr6pgfahpj94lg43lczha6xpayhl49bqik";
-      system = "clinch";
-      asd = "clinch";
-    });
-    systems = [ "clinch" ];
-    lispLibs = [ (getAttr "bordeaux-threads" pkgs) (getAttr "cl-opengl" pkgs) (getAttr "sdl2" pkgs) (getAttr "rtg-math" pkgs) (getAttr "swank" pkgs) (getAttr "trivial-channels" pkgs) (getAttr "trivial-garbage" pkgs) ];
-  };
-  clinch-cairo = {
-    pname = "clinch-cairo";
-    version = "20180228-git";
-    asds = [ "clinch-cairo" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/clinch/2018-02-28/clinch-20180228-git.tgz";
-      sha256 = "0hrj3kdxnazffrax3jmr6pgfahpj94lg43lczha6xpayhl49bqik";
-      system = "clinch-cairo";
-      asd = "clinch-cairo";
-    });
-    systems = [ "clinch-cairo" ];
-    lispLibs = [ (getAttr "cffi" pkgs) (getAttr "cl-cairo2" pkgs) (getAttr "clinch" pkgs) ];
-  };
-  clinch-classimp = {
-    pname = "clinch-classimp";
-    version = "20180228-git";
-    asds = [ "clinch-classimp" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/clinch/2018-02-28/clinch-20180228-git.tgz";
-      sha256 = "0hrj3kdxnazffrax3jmr6pgfahpj94lg43lczha6xpayhl49bqik";
-      system = "clinch-classimp";
-      asd = "clinch-classimp";
-    });
-    systems = [ "clinch-classimp" ];
-    lispLibs = [ (getAttr "cffi" pkgs) (getAttr "classimp" pkgs) (getAttr "clinch" pkgs) ];
-  };
-  clinch-freeimage = {
-    pname = "clinch-freeimage";
-    version = "20180228-git";
-    asds = [ "clinch-freeimage" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/clinch/2018-02-28/clinch-20180228-git.tgz";
-      sha256 = "0hrj3kdxnazffrax3jmr6pgfahpj94lg43lczha6xpayhl49bqik";
-      system = "clinch-freeimage";
-      asd = "clinch-freeimage";
-    });
-    systems = [ "clinch-freeimage" ];
-    lispLibs = [ (getAttr "cffi" pkgs) (getAttr "cl-freeimage" pkgs) (getAttr "clinch" pkgs) ];
-  };
-  clinch-pango = {
-    pname = "clinch-pango";
-    version = "20180228-git";
-    asds = [ "clinch-pango" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/clinch/2018-02-28/clinch-20180228-git.tgz";
-      sha256 = "0hrj3kdxnazffrax3jmr6pgfahpj94lg43lczha6xpayhl49bqik";
-      system = "clinch-pango";
-      asd = "clinch-pango";
-    });
-    systems = [ "clinch-pango" ];
-    lispLibs = [ (getAttr "cffi" pkgs) (getAttr "cl-cairo2" pkgs) (getAttr "cl-pango" pkgs) (getAttr "clinch" pkgs) (getAttr "clinch-cairo" pkgs) (getAttr "xmls" pkgs) ];
-  };
-  clinenoise = {
-    pname = "clinenoise";
-    version = "20200427-git";
-    asds = [ "clinenoise" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/clinenoise/2020-04-27/clinenoise-20200427-git.tgz";
-      sha256 = "0ydlirfk4dbpqqjwwph99v5swcrhd8v9g8q24fvs35wn2vm08lh1";
-      system = "clinenoise";
-      asd = "clinenoise";
-    });
-    systems = [ "clinenoise" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cffi" pkgs) (getAttr "cffi-grovel" pkgs) (getAttr "split-sequence" pkgs) ];
-  };
-  clingon = {
-    pname = "clingon";
-    version = "20221106-git";
-    asds = [ "clingon" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/clingon/2022-11-06/clingon-20221106-git.tgz";
-      sha256 = "1v47c7pgmvpp3wn52waj55vy6804lsswxv7sbjlpfnd67na91vn7";
-      system = "clingon";
-      asd = "clingon";
-    });
-    systems = [ "clingon" ];
-    lispLibs = [ (getAttr "bobbin" pkgs) (getAttr "cl-reexport" pkgs) (getAttr "split-sequence" pkgs) (getAttr "uiop" pkgs) (getAttr "with-user-abort" pkgs) ];
-  };
-  clingon_dot_demo = {
-    pname = "clingon.demo";
-    version = "20221106-git";
-    asds = [ "clingon.demo" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/clingon/2022-11-06/clingon-20221106-git.tgz";
-      sha256 = "1v47c7pgmvpp3wn52waj55vy6804lsswxv7sbjlpfnd67na91vn7";
-      system = "clingon.demo";
-      asd = "clingon.demo";
-    });
-    systems = [ "clingon.demo" ];
-    lispLibs = [ (getAttr "clingon" pkgs) ];
-  };
-  clingon_dot_intro = {
-    pname = "clingon.intro";
-    version = "20221106-git";
-    asds = [ "clingon.intro" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/clingon/2022-11-06/clingon-20221106-git.tgz";
-      sha256 = "1v47c7pgmvpp3wn52waj55vy6804lsswxv7sbjlpfnd67na91vn7";
-      system = "clingon.intro";
-      asd = "clingon.intro";
-    });
-    systems = [ "clingon.intro" ];
-    lispLibs = [ (getAttr "clingon" pkgs) ];
-  };
-  clingon_dot_test = {
-    pname = "clingon.test";
-    version = "20221106-git";
-    asds = [ "clingon.test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/clingon/2022-11-06/clingon-20221106-git.tgz";
-      sha256 = "1v47c7pgmvpp3wn52waj55vy6804lsswxv7sbjlpfnd67na91vn7";
-      system = "clingon.test";
-      asd = "clingon.test";
-    });
-    systems = [ "clingon.test" ];
-    lispLibs = [ (getAttr "clingon" pkgs) (getAttr "rove" pkgs) ];
-  };
-  clip = {
-    pname = "clip";
-    version = "20211209-git";
-    asds = [ "clip" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/clip/2021-12-09/clip-20211209-git.tgz";
-      sha256 = "1a3cfvyg0rlzqg872h4abdssh1wbh5v72cj1mbasmxacsiiysvrs";
-      system = "clip";
-      asd = "clip";
-    });
-    systems = [ "clip" ];
-    lispLibs = [ (getAttr "array-utils" pkgs) (getAttr "lquery" pkgs) ];
-  };
-  clipper = {
-    pname = "clipper";
-    version = "20150923-git";
-    asds = [ "clipper" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/clipper/2015-09-23/clipper-20150923-git.tgz";
-      sha256 = "0xx1z7xjy2qkb6hx4bjjxcpv180lynpxrmx0741zk0qcxf32y56n";
-      system = "clipper";
-      asd = "clipper";
-    });
-    systems = [ "clipper" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cl-fad" pkgs) (getAttr "cl-syntax-annot" pkgs) (getAttr "closer-mop" pkgs) (getAttr "dexador" pkgs) (getAttr "fast-io" pkgs) (getAttr "opticl" pkgs) (getAttr "quri" pkgs) (getAttr "split-sequence" pkgs) (getAttr "zs3" pkgs) ];
-  };
-  clipper-test = {
-    pname = "clipper-test";
-    version = "20150923-git";
-    asds = [ "clipper-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/clipper/2015-09-23/clipper-20150923-git.tgz";
-      sha256 = "0xx1z7xjy2qkb6hx4bjjxcpv180lynpxrmx0741zk0qcxf32y56n";
-      system = "clipper-test";
-      asd = "clipper-test";
-    });
-    systems = [ "clipper-test" ];
-    lispLibs = [ (getAttr "clipper" pkgs) (getAttr "integral" pkgs) (getAttr "prove" pkgs) (getAttr "prove-asdf" pkgs) ];
-  };
-  clite = {
-    pname = "clite";
-    version = "20130615-git";
-    asds = [ "clite" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/clite/2013-06-15/clite-20130615-git.tgz";
-      sha256 = "0q73vzm55i7m6in9i3fwwaqxvwm3pr7mm7gh7qsvfya61248ynrz";
-      system = "clite";
-      asd = "clite";
-    });
-    systems = [ "clite" ];
-    lispLibs = [  ];
-  };
-  clj = {
-    pname = "clj";
-    version = "20201220-git";
-    asds = [ "clj" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/clj/2020-12-20/clj-20201220-git.tgz";
-      sha256 = "0yic6w2n09w3v2r1dlg9a7z59j9rapj4hpz8whcxlw6zs4wrwib2";
-      system = "clj";
-      asd = "clj";
-    });
-    systems = [ "clj" ];
-    lispLibs = [ (getAttr "agnostic-lizard" pkgs) (getAttr "arrow-macros" pkgs) (getAttr "cl-hamt" pkgs) (getAttr "local-package-aliases" pkgs) (getAttr "named-readtables" pkgs) (getAttr "optima" pkgs) (getAttr "prove-asdf" pkgs) (getAttr "test-utils" pkgs) ];
-  };
-  clj-con = {
-    pname = "clj-con";
-    version = "20210807-git";
-    asds = [ "clj-con" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/clj-con/2021-08-07/clj-con-20210807-git.tgz";
-      sha256 = "0b996cfvl8nnjf2mh8ki4gdzrr4hhnhbmlgacw74hmfb6nqjb466";
-      system = "clj-con";
-      asd = "clj-con";
-    });
-    systems = [ "clj-con" ];
-    lispLibs = [ (getAttr "bordeaux-threads" pkgs) ];
-  };
-  clj-con-test = {
-    pname = "clj-con-test";
-    version = "20210807-git";
-    asds = [ "clj-con-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/clj-con/2021-08-07/clj-con-20210807-git.tgz";
-      sha256 = "0b996cfvl8nnjf2mh8ki4gdzrr4hhnhbmlgacw74hmfb6nqjb466";
-      system = "clj-con-test";
-      asd = "clj-con-test";
-    });
-    systems = [ "clj-con-test" ];
-    lispLibs = [ (getAttr "clj-con" pkgs) (getAttr "fiveam" pkgs) ];
-  };
-  clj-re = {
-    pname = "clj-re";
-    version = "20221106-git";
-    asds = [ "clj-re" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/clj-re/2022-11-06/clj-re-20221106-git.tgz";
-      sha256 = "1ybcf687hybq2n9vag9i90mdx3cqajdj63q7vryxamp39zmgqks6";
-      system = "clj-re";
-      asd = "clj-re";
-    });
-    systems = [ "clj-re" ];
-    lispLibs = [ (getAttr "cl-ppcre" pkgs) (getAttr "named-readtables" pkgs) ];
-  };
-  clj-re-test = {
-    pname = "clj-re-test";
-    version = "20221106-git";
-    asds = [ "clj-re-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/clj-re/2022-11-06/clj-re-20221106-git.tgz";
-      sha256 = "1ybcf687hybq2n9vag9i90mdx3cqajdj63q7vryxamp39zmgqks6";
-      system = "clj-re-test";
-      asd = "clj-re-test";
-    });
-    systems = [ "clj-re-test" ];
-    lispLibs = [ (getAttr "clj-re" pkgs) (getAttr "fiveam" pkgs) ];
-  };
-  clj_slash_test = {
-    pname = "clj_test";
-    version = "20201220-git";
-    asds = [ "clj" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/clj/2020-12-20/clj-20201220-git.tgz";
-      sha256 = "0yic6w2n09w3v2r1dlg9a7z59j9rapj4hpz8whcxlw6zs4wrwib2";
-      system = "clj";
-      asd = "clj";
-    });
-    systems = [ "clj/test" ];
-    lispLibs = [ (getAttr "clj" pkgs) (getAttr "prove-asdf" pkgs) (getAttr "test-utils" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  clml = {
-    pname = "clml";
-    version = "20220220-git";
-    asds = [ "clml" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/clml/2022-02-20/clml-20220220-git.tgz";
-      sha256 = "0m3w59c74z3wdj1g26122svljiq192xhvmx7b2lkb7bxnf4778m1";
-      system = "clml";
-      asd = "clml";
-    });
-    systems = [ "clml" ];
-    lispLibs = [ (getAttr "clml_dot_association-rule" pkgs) (getAttr "clml_dot_blas" pkgs) (getAttr "clml_dot_classifiers" pkgs) (getAttr "clml_dot_clustering" pkgs) (getAttr "clml_dot_data" pkgs) (getAttr "clml_dot_decision-tree" pkgs) (getAttr "clml_dot_graph" pkgs) (getAttr "clml_dot_hjs" pkgs) (getAttr "clml_dot_lapack" pkgs) (getAttr "clml_dot_nearest-search" pkgs) (getAttr "clml_dot_nonparametric" pkgs) (getAttr "clml_dot_numeric" pkgs) (getAttr "clml_dot_pca" pkgs) (getAttr "clml_dot_som" pkgs) (getAttr "clml_dot_statistics" pkgs) (getAttr "clml_dot_svm" pkgs) (getAttr "clml_dot_text" pkgs) (getAttr "clml_dot_time-series" pkgs) (getAttr "clml_dot_utility" pkgs) ];
-  };
-  clml_dot_association-rule = {
-    pname = "clml.association-rule";
-    version = "20220220-git";
-    asds = [ "clml.association-rule" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/clml/2022-02-20/clml-20220220-git.tgz";
-      sha256 = "0m3w59c74z3wdj1g26122svljiq192xhvmx7b2lkb7bxnf4778m1";
-      system = "clml.association-rule";
-      asd = "clml.association-rule";
-    });
-    systems = [ "clml.association-rule" ];
-    lispLibs = [ (getAttr "clml_dot_hjs" pkgs) ];
-  };
-  clml_dot_blas = {
-    pname = "clml.blas";
-    version = "20220220-git";
-    asds = [ "clml.blas" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/clml/2022-02-20/clml-20220220-git.tgz";
-      sha256 = "0m3w59c74z3wdj1g26122svljiq192xhvmx7b2lkb7bxnf4778m1";
-      system = "clml.blas";
-      asd = "clml.blas";
-    });
-    systems = [ "clml.blas" ];
-    lispLibs = [ (getAttr "clml_dot_blas_dot_complex" pkgs) (getAttr "clml_dot_blas_dot_hompack" pkgs) (getAttr "clml_dot_blas_dot_real" pkgs) ];
-  };
-  clml_dot_blas_dot_complex = {
-    pname = "clml.blas.complex";
-    version = "20220220-git";
-    asds = [ "clml.blas.complex" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/clml/2022-02-20/clml-20220220-git.tgz";
-      sha256 = "0m3w59c74z3wdj1g26122svljiq192xhvmx7b2lkb7bxnf4778m1";
-      system = "clml.blas.complex";
-      asd = "clml.blas";
-    });
-    systems = [ "clml.blas.complex" ];
-    lispLibs = [ (getAttr "f2cl-lib" pkgs) ];
-  };
-  clml_dot_blas_dot_hompack = {
-    pname = "clml.blas.hompack";
-    version = "20220220-git";
-    asds = [ "clml.blas.hompack" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/clml/2022-02-20/clml-20220220-git.tgz";
-      sha256 = "0m3w59c74z3wdj1g26122svljiq192xhvmx7b2lkb7bxnf4778m1";
-      system = "clml.blas.hompack";
-      asd = "clml.blas";
-    });
-    systems = [ "clml.blas.hompack" ];
-    lispLibs = [ (getAttr "f2cl-lib" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  clml_dot_blas_dot_real = {
-    pname = "clml.blas.real";
-    version = "20220220-git";
-    asds = [ "clml.blas.real" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/clml/2022-02-20/clml-20220220-git.tgz";
-      sha256 = "0m3w59c74z3wdj1g26122svljiq192xhvmx7b2lkb7bxnf4778m1";
-      system = "clml.blas.real";
-      asd = "clml.blas";
-    });
-    systems = [ "clml.blas.real" ];
-    lispLibs = [ (getAttr "f2cl-lib" pkgs) ];
-  };
-  clml_dot_classifiers = {
-    pname = "clml.classifiers";
-    version = "20220220-git";
-    asds = [ "clml.classifiers" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/clml/2022-02-20/clml-20220220-git.tgz";
-      sha256 = "0m3w59c74z3wdj1g26122svljiq192xhvmx7b2lkb7bxnf4778m1";
-      system = "clml.classifiers";
-      asd = "clml.classifiers";
-    });
-    systems = [ "clml.classifiers" ];
-    lispLibs = [ (getAttr "clml_dot_clustering" pkgs) (getAttr "clml_dot_hjs" pkgs) (getAttr "clml_dot_svm" pkgs) ];
-  };
-  clml_dot_clustering = {
-    pname = "clml.clustering";
-    version = "20220220-git";
-    asds = [ "clml.clustering" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/clml/2022-02-20/clml-20220220-git.tgz";
-      sha256 = "0m3w59c74z3wdj1g26122svljiq192xhvmx7b2lkb7bxnf4778m1";
-      system = "clml.clustering";
-      asd = "clml.clustering";
-    });
-    systems = [ "clml.clustering" ];
-    lispLibs = [ (getAttr "clml_dot_blas" pkgs) (getAttr "clml_dot_hjs" pkgs) (getAttr "clml_dot_nearest-search" pkgs) (getAttr "iterate" pkgs) ];
-  };
-  clml_dot_data = {
-    pname = "clml.data";
-    version = "20220220-git";
-    asds = [ "clml.data" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/clml/2022-02-20/clml-20220220-git.tgz";
-      sha256 = "0m3w59c74z3wdj1g26122svljiq192xhvmx7b2lkb7bxnf4778m1";
-      system = "clml.data";
-      asd = "clml.data";
-    });
-    systems = [ "clml.data" ];
-    lispLibs = [ (getAttr "clml_dot_data_dot_r-datasets" pkgs) ];
-  };
-  clml_dot_data_dot_r-datasets = {
-    pname = "clml.data.r-datasets";
-    version = "20220220-git";
-    asds = [ "clml.data.r-datasets" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/clml/2022-02-20/clml-20220220-git.tgz";
-      sha256 = "0m3w59c74z3wdj1g26122svljiq192xhvmx7b2lkb7bxnf4778m1";
-      system = "clml.data.r-datasets";
-      asd = "clml.data.r-datasets";
-    });
-    systems = [ "clml.data.r-datasets" ];
-    lispLibs = [ (getAttr "cl-ppcre" pkgs) (getAttr "clml_dot_hjs" pkgs) (getAttr "clml_dot_utility" pkgs) (getAttr "drakma" pkgs) ];
-  };
-  clml_dot_decision-tree = {
-    pname = "clml.decision-tree";
-    version = "20220220-git";
-    asds = [ "clml.decision-tree" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/clml/2022-02-20/clml-20220220-git.tgz";
-      sha256 = "0m3w59c74z3wdj1g26122svljiq192xhvmx7b2lkb7bxnf4778m1";
-      system = "clml.decision-tree";
-      asd = "clml.decision-tree";
-    });
-    systems = [ "clml.decision-tree" ];
-    lispLibs = [ (getAttr "clml_dot_hjs" pkgs) (getAttr "lparallel" pkgs) ];
-  };
-  clml_dot_docs = {
-    pname = "clml.docs";
-    version = "20220220-git";
-    asds = [ "clml.docs" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/clml/2022-02-20/clml-20220220-git.tgz";
-      sha256 = "0m3w59c74z3wdj1g26122svljiq192xhvmx7b2lkb7bxnf4778m1";
-      system = "clml.docs";
-      asd = "clml.docs";
-    });
-    systems = [ "clml.docs" ];
-    lispLibs = [ (getAttr "cl-ppcre" pkgs) (getAttr "clml" pkgs) (getAttr "clod" pkgs) (getAttr "iterate" pkgs) ];
-  };
-  clml_dot_graph = {
-    pname = "clml.graph";
-    version = "20220220-git";
-    asds = [ "clml.graph" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/clml/2022-02-20/clml-20220220-git.tgz";
-      sha256 = "0m3w59c74z3wdj1g26122svljiq192xhvmx7b2lkb7bxnf4778m1";
-      system = "clml.graph";
-      asd = "clml.graph";
-    });
-    systems = [ "clml.graph" ];
-    lispLibs = [ (getAttr "cl-fad" pkgs) (getAttr "clml_dot_hjs" pkgs) (getAttr "clml_dot_statistics" pkgs) (getAttr "clml_dot_time-series" pkgs) (getAttr "split-sequence" pkgs) ];
-  };
-  clml_dot_hjs = {
-    pname = "clml.hjs";
-    version = "20220220-git";
-    asds = [ "clml.hjs" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/clml/2022-02-20/clml-20220220-git.tgz";
-      sha256 = "0m3w59c74z3wdj1g26122svljiq192xhvmx7b2lkb7bxnf4778m1";
-      system = "clml.hjs";
-      asd = "clml.hjs";
-    });
-    systems = [ "clml.hjs" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "clml_dot_blas" pkgs) (getAttr "clml_dot_lapack" pkgs) (getAttr "clml_dot_statistics" pkgs) (getAttr "clml_dot_utility" pkgs) (getAttr "future" pkgs) (getAttr "introspect-environment" pkgs) (getAttr "iterate" pkgs) ];
-  };
-  clml_dot_lapack = {
-    pname = "clml.lapack";
-    version = "20220220-git";
-    asds = [ "clml.lapack" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/clml/2022-02-20/clml-20220220-git.tgz";
-      sha256 = "0m3w59c74z3wdj1g26122svljiq192xhvmx7b2lkb7bxnf4778m1";
-      system = "clml.lapack";
-      asd = "clml.lapack";
-    });
-    systems = [ "clml.lapack" ];
-    lispLibs = [ (getAttr "clml_dot_blas" pkgs) (getAttr "clml_dot_lapack-real" pkgs) (getAttr "f2cl-lib" pkgs) ];
-  };
-  clml_dot_lapack-real = {
-    pname = "clml.lapack-real";
-    version = "20220220-git";
-    asds = [ "clml.lapack-real" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/clml/2022-02-20/clml-20220220-git.tgz";
-      sha256 = "0m3w59c74z3wdj1g26122svljiq192xhvmx7b2lkb7bxnf4778m1";
-      system = "clml.lapack-real";
-      asd = "clml.lapack";
-    });
-    systems = [ "clml.lapack-real" ];
-    lispLibs = [ (getAttr "clml_dot_blas" pkgs) (getAttr "f2cl-lib" pkgs) ];
-  };
-  clml_dot_nearest-search = {
-    pname = "clml.nearest-search";
-    version = "20220220-git";
-    asds = [ "clml.nearest-search" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/clml/2022-02-20/clml-20220220-git.tgz";
-      sha256 = "0m3w59c74z3wdj1g26122svljiq192xhvmx7b2lkb7bxnf4778m1";
-      system = "clml.nearest-search";
-      asd = "clml.nearest-search";
-    });
-    systems = [ "clml.nearest-search" ];
-    lispLibs = [ (getAttr "clml_dot_hjs" pkgs) (getAttr "clml_dot_nonparametric" pkgs) (getAttr "clml_dot_pca" pkgs) ];
-  };
-  clml_dot_nonparametric = {
-    pname = "clml.nonparametric";
-    version = "20220220-git";
-    asds = [ "clml.nonparametric" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/clml/2022-02-20/clml-20220220-git.tgz";
-      sha256 = "0m3w59c74z3wdj1g26122svljiq192xhvmx7b2lkb7bxnf4778m1";
-      system = "clml.nonparametric";
-      asd = "clml.nonparametric";
-    });
-    systems = [ "clml.nonparametric" ];
-    lispLibs = [ (getAttr "clml_dot_hjs" pkgs) ];
-  };
-  clml_dot_numeric = {
-    pname = "clml.numeric";
-    version = "20220220-git";
-    asds = [ "clml.numeric" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/clml/2022-02-20/clml-20220220-git.tgz";
-      sha256 = "0m3w59c74z3wdj1g26122svljiq192xhvmx7b2lkb7bxnf4778m1";
-      system = "clml.numeric";
-      asd = "clml.numeric";
-    });
-    systems = [ "clml.numeric" ];
-    lispLibs = [ (getAttr "clml_dot_hjs" pkgs) ];
-  };
-  clml_dot_pca = {
-    pname = "clml.pca";
-    version = "20220220-git";
-    asds = [ "clml.pca" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/clml/2022-02-20/clml-20220220-git.tgz";
-      sha256 = "0m3w59c74z3wdj1g26122svljiq192xhvmx7b2lkb7bxnf4778m1";
-      system = "clml.pca";
-      asd = "clml.pca";
-    });
-    systems = [ "clml.pca" ];
-    lispLibs = [ (getAttr "clml_dot_decision-tree" pkgs) (getAttr "clml_dot_hjs" pkgs) ];
-  };
-  clml_dot_pca_dot_examples = {
-    pname = "clml.pca.examples";
-    version = "20220220-git";
-    asds = [ "clml.pca.examples" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/clml/2022-02-20/clml-20220220-git.tgz";
-      sha256 = "0m3w59c74z3wdj1g26122svljiq192xhvmx7b2lkb7bxnf4778m1";
-      system = "clml.pca.examples";
-      asd = "clml.pca";
-    });
-    systems = [ "clml.pca.examples" ];
-    lispLibs = [ (getAttr "clml_dot_hjs" pkgs) (getAttr "clml_dot_pca" pkgs) ];
-  };
-  clml_dot_som = {
-    pname = "clml.som";
-    version = "20220220-git";
-    asds = [ "clml.som" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/clml/2022-02-20/clml-20220220-git.tgz";
-      sha256 = "0m3w59c74z3wdj1g26122svljiq192xhvmx7b2lkb7bxnf4778m1";
-      system = "clml.som";
-      asd = "clml.som";
-    });
-    systems = [ "clml.som" ];
-    lispLibs = [ (getAttr "clml_dot_hjs" pkgs) (getAttr "clml_dot_statistics" pkgs) (getAttr "split-sequence" pkgs) ];
-  };
-  clml_dot_som_dot_example = {
-    pname = "clml.som.example";
-    version = "20220220-git";
-    asds = [ "clml.som.example" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/clml/2022-02-20/clml-20220220-git.tgz";
-      sha256 = "0m3w59c74z3wdj1g26122svljiq192xhvmx7b2lkb7bxnf4778m1";
-      system = "clml.som.example";
-      asd = "clml.som";
-    });
-    systems = [ "clml.som.example" ];
-    lispLibs = [ (getAttr "clml_dot_hjs" pkgs) (getAttr "clml_dot_som" pkgs) (getAttr "split-sequence" pkgs) ];
-  };
-  clml_dot_statistics = {
-    pname = "clml.statistics";
-    version = "20220220-git";
-    asds = [ "clml.statistics" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/clml/2022-02-20/clml-20220220-git.tgz";
-      sha256 = "0m3w59c74z3wdj1g26122svljiq192xhvmx7b2lkb7bxnf4778m1";
-      system = "clml.statistics";
-      asd = "clml.statistics";
-    });
-    systems = [ "clml.statistics" ];
-    lispLibs = [ (getAttr "clml_dot_statistics_dot_rand" pkgs) ];
-  };
-  clml_dot_statistics_dot_rand = {
-    pname = "clml.statistics.rand";
-    version = "20220220-git";
-    asds = [ "clml.statistics.rand" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/clml/2022-02-20/clml-20220220-git.tgz";
-      sha256 = "0m3w59c74z3wdj1g26122svljiq192xhvmx7b2lkb7bxnf4778m1";
-      system = "clml.statistics.rand";
-      asd = "clml.statistics.rand";
-    });
-    systems = [ "clml.statistics.rand" ];
-    lispLibs = [  ];
-  };
-  clml_dot_svm = {
-    pname = "clml.svm";
-    version = "20220220-git";
-    asds = [ "clml.svm" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/clml/2022-02-20/clml-20220220-git.tgz";
-      sha256 = "0m3w59c74z3wdj1g26122svljiq192xhvmx7b2lkb7bxnf4778m1";
-      system = "clml.svm";
-      asd = "clml.svm";
-    });
-    systems = [ "clml.svm" ];
-    lispLibs = [ (getAttr "clml_dot_decision-tree" pkgs) (getAttr "clml_dot_hjs" pkgs) (getAttr "future" pkgs) (getAttr "lparallel" pkgs) ];
-  };
-  clml_dot_svm_dot_examples = {
-    pname = "clml.svm.examples";
-    version = "20220220-git";
-    asds = [ "clml.svm.examples" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/clml/2022-02-20/clml-20220220-git.tgz";
-      sha256 = "0m3w59c74z3wdj1g26122svljiq192xhvmx7b2lkb7bxnf4778m1";
-      system = "clml.svm.examples";
-      asd = "clml.svm";
-    });
-    systems = [ "clml.svm.examples" ];
-    lispLibs = [ (getAttr "clml_dot_hjs" pkgs) (getAttr "clml_dot_svm" pkgs) ];
-  };
-  clml_dot_test = {
-    pname = "clml.test";
-    version = "20220220-git";
-    asds = [ "clml.test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/clml/2022-02-20/clml-20220220-git.tgz";
-      sha256 = "0m3w59c74z3wdj1g26122svljiq192xhvmx7b2lkb7bxnf4778m1";
-      system = "clml.test";
-      asd = "clml.test";
-    });
-    systems = [ "clml.test" ];
-    lispLibs = [ (getAttr "clml" pkgs) (getAttr "lisp-unit" pkgs) ];
-  };
-  clml_dot_text = {
-    pname = "clml.text";
-    version = "20220220-git";
-    asds = [ "clml.text" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/clml/2022-02-20/clml-20220220-git.tgz";
-      sha256 = "0m3w59c74z3wdj1g26122svljiq192xhvmx7b2lkb7bxnf4778m1";
-      system = "clml.text";
-      asd = "clml.text";
-    });
-    systems = [ "clml.text" ];
-    lispLibs = [ (getAttr "clml_dot_hjs" pkgs) (getAttr "clml_dot_nonparametric" pkgs) (getAttr "split-sequence" pkgs) ];
-  };
-  clml_dot_time-series = {
-    pname = "clml.time-series";
-    version = "20220220-git";
-    asds = [ "clml.time-series" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/clml/2022-02-20/clml-20220220-git.tgz";
-      sha256 = "0m3w59c74z3wdj1g26122svljiq192xhvmx7b2lkb7bxnf4778m1";
-      system = "clml.time-series";
-      asd = "clml.time-series";
-    });
-    systems = [ "clml.time-series" ];
-    lispLibs = [ (getAttr "array-operations" pkgs) (getAttr "clml_dot_hjs" pkgs) (getAttr "clml_dot_numeric" pkgs) (getAttr "iterate" pkgs) (getAttr "uiop" pkgs) ];
-  };
-  clml_dot_utility = {
-    pname = "clml.utility";
-    version = "20220220-git";
-    asds = [ "clml.utility" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/clml/2022-02-20/clml-20220220-git.tgz";
-      sha256 = "0m3w59c74z3wdj1g26122svljiq192xhvmx7b2lkb7bxnf4778m1";
-      system = "clml.utility";
-      asd = "clml.utility";
-    });
-    systems = [ "clml.utility" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cl-fad" pkgs) (getAttr "cl-ppcre" pkgs) (getAttr "drakma" pkgs) (getAttr "iterate" pkgs) (getAttr "parse-number" pkgs) (getAttr "trivial-garbage" pkgs) ];
-  };
-  clnuplot = {
-    pname = "clnuplot";
-    version = "20130128-darcs";
-    asds = [ "clnuplot" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/clnuplot/2013-01-28/clnuplot-20130128-darcs.tgz";
-      sha256 = "0yfaay5idv9lq4ilafj305sg349c960n3q400kdayr0gda6pqlqr";
-      system = "clnuplot";
-      asd = "clnuplot";
-    });
-    systems = [ "clnuplot" ];
-    lispLibs = [ (getAttr "cl-containers" pkgs) (getAttr "cl-mathstats" pkgs) (getAttr "metabang-bind" pkgs) (getAttr "trivial-shell" pkgs) ];
-  };
-  clobber = {
-    pname = "clobber";
-    version = "20221106-git";
-    asds = [ "clobber" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/clobber/2022-11-06/clobber-20221106-git.tgz";
-      sha256 = "0pqzfn2wqbzzwlwc3l84iv3i3wa9zfgnh14mq67h9qkib8wjzx3n";
-      system = "clobber";
-      asd = "clobber";
-    });
-    systems = [ "clobber" ];
-    lispLibs = [  ];
-  };
-  clod = {
-    pname = "clod";
-    version = "20190307-hg";
-    asds = [ "clod" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/clod/2019-03-07/clod-20190307-hg.tgz";
-      sha256 = "0sdlr6jlqnbiyf06648zhq8dpni3zy0n5rwjcrvm4hw7vcy8vhy1";
-      system = "clod";
-      asd = "clod";
-    });
-    systems = [ "clod" ];
-    lispLibs = [ (getAttr "cl-ppcre" pkgs) (getAttr "closer-mop" pkgs) (getAttr "iterate" pkgs) ];
-  };
-  clods-export = {
-    pname = "clods-export";
-    version = "20210411-git";
-    asds = [ "clods-export" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/clods-export/2021-04-11/clods-export-20210411-git.tgz";
-      sha256 = "1bbzrl855qjs88ni548filghb2y8fvklkik22amwzi6dbzvq48qx";
-      system = "clods-export";
-      asd = "clods-export";
-    });
-    systems = [ "clods-export" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cl-fad" pkgs) (getAttr "cxml" pkgs) (getAttr "iterate" pkgs) (getAttr "local-time" pkgs) (getAttr "zip" pkgs) ];
-  };
-  clog = {
-    pname = "clog";
-    version = "20221106-git";
-    asds = [ "clog" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/clog/2022-11-06/clog-20221106-git.tgz";
-      sha256 = "135mj69shjayml9xfwg3sccfw5r901lzmf5vj5crnp9wywjfzywx";
-      system = "clog";
-      asd = "clog";
-    });
-    systems = [ "clog" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "atomics" pkgs) (getAttr "bordeaux-threads" pkgs) (getAttr "cl-dbi" pkgs) (getAttr "cl-isaac" pkgs) (getAttr "cl-pass" pkgs) (getAttr "cl-ppcre" pkgs) (getAttr "sqlite" pkgs) (getAttr "cl-template" pkgs) (getAttr "clack" pkgs) (getAttr "closer-mop" pkgs) (getAttr "hunchentoot" pkgs) (getAttr "lack-middleware-static" pkgs) (getAttr "lack-request" pkgs) (getAttr "lack-util-writer-stream" pkgs) (getAttr "mgl-pax" pkgs) (getAttr "parse-float" pkgs) (getAttr "quri" pkgs) (getAttr "trivial-open-browser" pkgs) (getAttr "websocket-driver" pkgs) ];
-  };
-  clog-ace = {
-    pname = "clog-ace";
-    version = "20221106-git";
-    asds = [ "clog-ace" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/clog-ace/2022-11-06/clog-ace-20221106-git.tgz";
-      sha256 = "0hci7qwbnjnjiy4jr6pkn3h4l9j80mypa4fi60adsz4fqm09yr41";
-      system = "clog-ace";
-      asd = "clog-ace";
-    });
-    systems = [ "clog-ace" ];
-    lispLibs = [ (getAttr "clog" pkgs) ];
-  };
-  clog-ace_slash_tools = {
-    pname = "clog-ace_tools";
-    version = "20221106-git";
-    asds = [ "clog-ace" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/clog-ace/2022-11-06/clog-ace-20221106-git.tgz";
-      sha256 = "0hci7qwbnjnjiy4jr6pkn3h4l9j80mypa4fi60adsz4fqm09yr41";
-      system = "clog-ace";
-      asd = "clog-ace";
-    });
-    systems = [ "clog-ace/tools" ];
-    lispLibs = [ (getAttr "clog" pkgs) (getAttr "clog-ace" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  clog-plotly = {
-    pname = "clog-plotly";
-    version = "20221106-git";
-    asds = [ "clog-plotly" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/clog-plotly/2022-11-06/clog-plotly-20221106-git.tgz";
-      sha256 = "0jzpd41vchn6ag93kfrl8gd3ckds9rq6jpy34dlla6y5s2mbjbif";
-      system = "clog-plotly";
-      asd = "clog-plotly";
-    });
-    systems = [ "clog-plotly" ];
-    lispLibs = [ (getAttr "clog" pkgs) ];
-  };
-  clog-plotly_slash_tools = {
-    pname = "clog-plotly_tools";
-    version = "20221106-git";
-    asds = [ "clog-plotly" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/clog-plotly/2022-11-06/clog-plotly-20221106-git.tgz";
-      sha256 = "0jzpd41vchn6ag93kfrl8gd3ckds9rq6jpy34dlla6y5s2mbjbif";
-      system = "clog-plotly";
-      asd = "clog-plotly";
-    });
-    systems = [ "clog-plotly/tools" ];
-    lispLibs = [ (getAttr "clog" pkgs) (getAttr "clog-plotly" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  clog-terminal = {
-    pname = "clog-terminal";
-    version = "20221106-git";
-    asds = [ "clog-terminal" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/clog-terminal/2022-11-06/clog-terminal-20221106-git.tgz";
-      sha256 = "1ma7x3q4gak0ndwgbpnc1par3zcc6b02mpzwrgqmyi1251868rrq";
-      system = "clog-terminal";
-      asd = "clog-terminal";
-    });
-    systems = [ "clog-terminal" ];
-    lispLibs = [ (getAttr "clog" pkgs) ];
-  };
-  clog-terminal_slash_tools = {
-    pname = "clog-terminal_tools";
-    version = "20221106-git";
-    asds = [ "clog-terminal" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/clog-terminal/2022-11-06/clog-terminal-20221106-git.tgz";
-      sha256 = "1ma7x3q4gak0ndwgbpnc1par3zcc6b02mpzwrgqmyi1251868rrq";
-      system = "clog-terminal";
-      asd = "clog-terminal";
-    });
-    systems = [ "clog-terminal/tools" ];
-    lispLibs = [ (getAttr "clog" pkgs) (getAttr "clog-terminal" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  clog_slash_docs = {
-    pname = "clog_docs";
-    version = "20221106-git";
-    asds = [ "clog" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/clog/2022-11-06/clog-20221106-git.tgz";
-      sha256 = "135mj69shjayml9xfwg3sccfw5r901lzmf5vj5crnp9wywjfzywx";
-      system = "clog";
-      asd = "clog";
-    });
-    systems = [ "clog/docs" ];
-    lispLibs = [ (getAttr "_3bmd" pkgs) (getAttr "clog" pkgs) (getAttr "colorize" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  clog_slash_tools = {
-    pname = "clog_tools";
-    version = "20221106-git";
-    asds = [ "clog" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/clog/2022-11-06/clog-20221106-git.tgz";
-      sha256 = "135mj69shjayml9xfwg3sccfw5r901lzmf5vj5crnp9wywjfzywx";
-      system = "clog";
-      asd = "clog";
-    });
-    systems = [ "clog/tools" ];
-    lispLibs = [ (getAttr "clog" pkgs) (getAttr "clog-ace" pkgs) (getAttr "clog-terminal" pkgs) (getAttr "definitions" pkgs) (getAttr "s-base64" pkgs) (getAttr "swank" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  clonsigna = {
-    pname = "clonsigna";
-    version = "20120909-git";
-    asds = [ "clonsigna" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/clonsigna/2012-09-09/clonsigna-20120909-git.tgz";
-      sha256 = "052vdch0q07sx3j615qgw8z536fmqz8fm3qv7f298ql3wcskrj7j";
-      system = "clonsigna";
-      asd = "clonsigna";
-    });
-    systems = [ "clonsigna" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "babel" pkgs) (getAttr "cl_plus_ssl" pkgs) (getAttr "cl-base64" pkgs) (getAttr "cl-ppcre" pkgs) (getAttr "iolib" pkgs) (getAttr "split-sequence" pkgs) ];
-  };
-  clop = {
-    pname = "clop";
-    version = "v1.0.1";
-    asds = [ "clop" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/clop/2022-02-20/clop-v1.0.1.tgz";
-      sha256 = "1q7rlizr8gcbfz4a9660gdbw7d2zbld18akjpibg54j7jh5kb8gc";
-      system = "clop";
-      asd = "clop";
-    });
-    systems = [ "clop" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "str" pkgs) (getAttr "esrap" pkgs) (getAttr "local-time" pkgs) (getAttr "parse-number" pkgs) ];
-  };
-  clop-tests = {
-    pname = "clop-tests";
-    version = "v1.0.1";
-    asds = [ "clop-tests" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/clop/2022-02-20/clop-v1.0.1.tgz";
-      sha256 = "1q7rlizr8gcbfz4a9660gdbw7d2zbld18akjpibg54j7jh5kb8gc";
-      system = "clop-tests";
-      asd = "clop";
-    });
-    systems = [ "clop-tests" ];
-    lispLibs = [ (getAttr "clop" pkgs) (getAttr "fiveam" pkgs) ];
-  };
-  clos-diff = {
-    pname = "clos-diff";
-    version = "20150608-git";
-    asds = [ "clos-diff" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/clos-diff/2015-06-08/clos-diff-20150608-git.tgz";
-      sha256 = "0y6chxzqwwwkrrmxxb74wwci6i4ck6i3fq36w9gl03qbrksfyjkz";
-      system = "clos-diff";
-      asd = "clos-diff";
-    });
-    systems = [ "clos-diff" ];
-    lispLibs = [ (getAttr "closer-mop" pkgs) ];
-  };
-  clos-fixtures = {
-    pname = "clos-fixtures";
-    version = "20160825-git";
-    asds = [ "clos-fixtures" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/clos-fixtures/2016-08-25/clos-fixtures-20160825-git.tgz";
-      sha256 = "1a3yvqszdwnsnk5hr4zrdpaqxb8vlxpl2nhxjl0j97fnmfaiqjhk";
-      system = "clos-fixtures";
-      asd = "clos-fixtures";
-    });
-    systems = [ "clos-fixtures" ];
-    lispLibs = [  ];
-  };
-  clos-fixtures-test = {
-    pname = "clos-fixtures-test";
-    version = "20160825-git";
-    asds = [ "clos-fixtures-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/clos-fixtures/2016-08-25/clos-fixtures-20160825-git.tgz";
-      sha256 = "1a3yvqszdwnsnk5hr4zrdpaqxb8vlxpl2nhxjl0j97fnmfaiqjhk";
-      system = "clos-fixtures-test";
-      asd = "clos-fixtures-test";
-    });
-    systems = [ "clos-fixtures-test" ];
-    lispLibs = [ (getAttr "clos-fixtures" pkgs) (getAttr "fiveam" pkgs) ];
-  };
-  closer-mop = {
-    pname = "closer-mop";
-    version = "20221106-git";
-    asds = [ "closer-mop" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/closer-mop/2022-11-06/closer-mop-20221106-git.tgz";
-      sha256 = "15bn0v1cvv725smq66ra9yvc7b0jysrmgkalibqzngzmr3mlzqd4";
-      system = "closer-mop";
-      asd = "closer-mop";
-    });
-    systems = [ "closer-mop" ];
-    lispLibs = [  ];
-  };
-  closure-common = {
-    pname = "closure-common";
-    version = "20181018-git";
-    asds = [ "closure-common" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/closure-common/2018-10-18/closure-common-20181018-git.tgz";
-      sha256 = "0k5r2qxn122pxi301ijir3nayi9sg4d7yiy276l36qmzwhp4mg5n";
-      system = "closure-common";
-      asd = "closure-common";
-    });
-    systems = [ "closure-common" ];
-    lispLibs = [ (getAttr "babel" pkgs) (getAttr "trivial-gray-streams" pkgs) ];
-  };
-  closure-html = {
-    pname = "closure-html";
-    version = "20180711-git";
-    asds = [ "closure-html" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/closure-html/2018-07-11/closure-html-20180711-git.tgz";
-      sha256 = "105vm29qnxh6zj3rh4jwpm8dyp3b9bsva64c8a78cr270p28d032";
-      system = "closure-html";
-      asd = "closure-html";
-    });
-    systems = [ "closure-html" ];
-    lispLibs = [ (getAttr "closure-common" pkgs) (getAttr "flexi-streams" pkgs) ];
-  };
-  closure-template = {
-    pname = "closure-template";
-    version = "20150804-git";
-    asds = [ "closure-template" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-closure-template/2015-08-04/cl-closure-template-20150804-git.tgz";
-      sha256 = "16h0fs6bjjd4n9pbkwcprpgyj26vsw2akk3q08m7xmsmqi05dppv";
-      system = "closure-template";
-      asd = "closure-template";
-    });
-    systems = [ "closure-template" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "babel" pkgs) (getAttr "closer-mop" pkgs) (getAttr "esrap" pkgs) (getAttr "iterate" pkgs) (getAttr "parse-number" pkgs) (getAttr "split-sequence" pkgs) ];
-  };
-  closure-template-test = {
-    pname = "closure-template-test";
-    version = "20150804-git";
-    asds = [ "closure-template-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-closure-template/2015-08-04/cl-closure-template-20150804-git.tgz";
-      sha256 = "16h0fs6bjjd4n9pbkwcprpgyj26vsw2akk3q08m7xmsmqi05dppv";
-      system = "closure-template-test";
-      asd = "closure-template";
-    });
-    systems = [ "closure-template-test" ];
-    lispLibs = [ (getAttr "closure-template" pkgs) (getAttr "lift" pkgs) ];
-  };
-  clouchdb = {
-    pname = "clouchdb";
-    version = "0.0.16";
-    asds = [ "clouchdb" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/clouchdb/2012-04-07/clouchdb_0.0.16.tgz";
-      sha256 = "1zfk4wkz0k5gbfznnbds0gcpc2y08p47rq7mhchf27v6rqg4kd7d";
-      system = "clouchdb";
-      asd = "clouchdb";
-    });
-    systems = [ "clouchdb" ];
-    lispLibs = [ (getAttr "closer-mop" pkgs) (getAttr "drakma" pkgs) (getAttr "flexi-streams" pkgs) (getAttr "parenscript" pkgs) (getAttr "s-base64" pkgs) ];
-  };
-  clouchdb-examples = {
-    pname = "clouchdb-examples";
-    version = "0.0.16";
-    asds = [ "clouchdb-examples" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/clouchdb/2012-04-07/clouchdb_0.0.16.tgz";
-      sha256 = "1zfk4wkz0k5gbfznnbds0gcpc2y08p47rq7mhchf27v6rqg4kd7d";
-      system = "clouchdb-examples";
-      asd = "clouchdb-examples";
-    });
-    systems = [ "clouchdb-examples" ];
-    lispLibs = [ (getAttr "clouchdb" pkgs) (getAttr "parenscript" pkgs) ];
-  };
-  clouseau = {
-    pname = "clouseau";
-    version = "20221106-git";
-    asds = [ "clouseau" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/mcclim/2022-11-06/mcclim-20221106-git.tgz";
-      sha256 = "0hz6vz4c0xv8bjx02hf3rbnp66c7ifx2ld4y6nxdz6i70wyhwbdf";
-      system = "clouseau";
-      asd = "clouseau";
-    });
-    systems = [ "clouseau" ];
-    lispLibs = [ (getAttr "closer-mop" pkgs) (getAttr "mcclim" pkgs) ];
-  };
-  clouseau_slash_test = {
-    pname = "clouseau_test";
-    version = "20221106-git";
-    asds = [ "clouseau" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/mcclim/2022-11-06/mcclim-20221106-git.tgz";
-      sha256 = "0hz6vz4c0xv8bjx02hf3rbnp66c7ifx2ld4y6nxdz6i70wyhwbdf";
-      system = "clouseau";
-      asd = "clouseau";
-    });
-    systems = [ "clouseau/test" ];
-    lispLibs = [ (getAttr "fiveam" pkgs) (getAttr "clouseau" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  clpython = {
-    pname = "clpython";
-    version = "20220331-git";
-    asds = [ "clpython" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-python/2022-03-31/cl-python-20220331-git.tgz";
-      sha256 = "1liskpyfd8rbqn45xbymwvh4vic05pyvvf3hnq2ybyixwnkan9i9";
-      system = "clpython";
-      asd = "clpython";
-    });
-    systems = [ "clpython" ];
-    lispLibs = [ (getAttr "cl-fad" pkgs) (getAttr "yacc" pkgs) (getAttr "closer-mop" pkgs) ];
-  };
-  clpython_slash_basic = {
-    pname = "clpython_basic";
-    version = "20220331-git";
-    asds = [ "clpython" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-python/2022-03-31/cl-python-20220331-git.tgz";
-      sha256 = "1liskpyfd8rbqn45xbymwvh4vic05pyvvf3hnq2ybyixwnkan9i9";
-      system = "clpython";
-      asd = "clpython";
-    });
-    systems = [ "clpython/basic" ];
-    lispLibs = [ (getAttr "closer-mop" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  clpython_slash_compiler = {
-    pname = "clpython_compiler";
-    version = "20220331-git";
-    asds = [ "clpython" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-python/2022-03-31/cl-python-20220331-git.tgz";
-      sha256 = "1liskpyfd8rbqn45xbymwvh4vic05pyvvf3hnq2ybyixwnkan9i9";
-      system = "clpython";
-      asd = "clpython";
-    });
-    systems = [ "clpython/compiler" ];
-    lispLibs = [ (getAttr "cl-fad" pkgs) (getAttr "yacc" pkgs) (getAttr "closer-mop" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  clpython_slash_contrib = {
-    pname = "clpython_contrib";
-    version = "20220331-git";
-    asds = [ "clpython" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-python/2022-03-31/cl-python-20220331-git.tgz";
-      sha256 = "1liskpyfd8rbqn45xbymwvh4vic05pyvvf3hnq2ybyixwnkan9i9";
-      system = "clpython";
-      asd = "clpython";
-    });
-    systems = [ "clpython/contrib" ];
-    lispLibs = [ (getAttr "cl-fad" pkgs) (getAttr "yacc" pkgs) (getAttr "closer-mop" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  clpython_slash_lib = {
-    pname = "clpython_lib";
-    version = "20220331-git";
-    asds = [ "clpython" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-python/2022-03-31/cl-python-20220331-git.tgz";
-      sha256 = "1liskpyfd8rbqn45xbymwvh4vic05pyvvf3hnq2ybyixwnkan9i9";
-      system = "clpython";
-      asd = "clpython";
-    });
-    systems = [ "clpython/lib" ];
-    lispLibs = [ (getAttr "cl-fad" pkgs) (getAttr "yacc" pkgs) (getAttr "closer-mop" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  clpython_slash_parser = {
-    pname = "clpython_parser";
-    version = "20220331-git";
-    asds = [ "clpython" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-python/2022-03-31/cl-python-20220331-git.tgz";
-      sha256 = "1liskpyfd8rbqn45xbymwvh4vic05pyvvf3hnq2ybyixwnkan9i9";
-      system = "clpython";
-      asd = "clpython";
-    });
-    systems = [ "clpython/parser" ];
-    lispLibs = [ (getAttr "yacc" pkgs) (getAttr "closer-mop" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  clpython_slash_runtime = {
-    pname = "clpython_runtime";
-    version = "20220331-git";
-    asds = [ "clpython" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-python/2022-03-31/cl-python-20220331-git.tgz";
-      sha256 = "1liskpyfd8rbqn45xbymwvh4vic05pyvvf3hnq2ybyixwnkan9i9";
-      system = "clpython";
-      asd = "clpython";
-    });
-    systems = [ "clpython/runtime" ];
-    lispLibs = [ (getAttr "cl-fad" pkgs) (getAttr "closer-mop" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  clpython_slash_test = {
-    pname = "clpython_test";
-    version = "20220331-git";
-    asds = [ "clpython" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-python/2022-03-31/cl-python-20220331-git.tgz";
-      sha256 = "1liskpyfd8rbqn45xbymwvh4vic05pyvvf3hnq2ybyixwnkan9i9";
-      system = "clpython";
-      asd = "clpython";
-    });
-    systems = [ "clpython/test" ];
-    lispLibs = [ (getAttr "clpython" pkgs) (getAttr "ptester" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  clsql = {
-    pname = "clsql";
-    version = "20221106-git";
-    asds = [ "clsql" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/clsql/2022-11-06/clsql-20221106-git.tgz";
-      sha256 = "15kxrjv88ai9nvzxswa6rp8dbd1ad3816r4c5zb8xynsd8i5vpz0";
-      system = "clsql";
-      asd = "clsql";
-    });
-    systems = [ "clsql" ];
-    lispLibs = [ (getAttr "uffi" pkgs) ];
-  };
-  clsql-aodbc = {
-    pname = "clsql-aodbc";
-    version = "20221106-git";
-    asds = [ "clsql-aodbc" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/clsql/2022-11-06/clsql-20221106-git.tgz";
-      sha256 = "15kxrjv88ai9nvzxswa6rp8dbd1ad3816r4c5zb8xynsd8i5vpz0";
-      system = "clsql-aodbc";
-      asd = "clsql-aodbc";
-    });
-    systems = [ "clsql-aodbc" ];
-    lispLibs = [  ];
-  };
-  clsql-cffi = {
-    pname = "clsql-cffi";
-    version = "20221106-git";
-    asds = [ "clsql-cffi" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/clsql/2022-11-06/clsql-20221106-git.tgz";
-      sha256 = "15kxrjv88ai9nvzxswa6rp8dbd1ad3816r4c5zb8xynsd8i5vpz0";
-      system = "clsql-cffi";
-      asd = "clsql-cffi";
-    });
-    systems = [ "clsql-cffi" ];
-    lispLibs = [ (getAttr "clsql" pkgs) ];
-  };
-  clsql-fluid = {
-    pname = "clsql-fluid";
-    version = "20170830-git";
-    asds = [ "clsql-fluid" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/clsql-fluid/2017-08-30/clsql-fluid-20170830-git.tgz";
-      sha256 = "0i7x1xbh83wfr3k4ddsdy57yf0nqfhdxcbwv1na1ina6m5javg11";
-      system = "clsql-fluid";
-      asd = "clsql-fluid";
-    });
-    systems = [ "clsql-fluid" ];
-    lispLibs = [ (getAttr "bordeaux-threads" pkgs) (getAttr "closer-mop" pkgs) (getAttr "clsql" pkgs) ];
-  };
-  clsql-helper = {
-    pname = "clsql-helper";
-    version = "20180131-git";
-    asds = [ "clsql-helper" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/clsql-helper/2018-01-31/clsql-helper-20180131-git.tgz";
-      sha256 = "0yc6m8yh0gcark98wvjjwdq3xxy308x15pb7fzha6svxa06hf27g";
-      system = "clsql-helper";
-      asd = "clsql-helper";
-    });
-    systems = [ "clsql-helper" ];
-    lispLibs = [ (getAttr "access" pkgs) (getAttr "alexandria" pkgs) (getAttr "cl-interpol" pkgs) (getAttr "cl-ppcre" pkgs) (getAttr "closer-mop" pkgs) (getAttr "clsql" pkgs) (getAttr "collectors" pkgs) (getAttr "iterate" pkgs) (getAttr "md5" pkgs) (getAttr "symbol-munger" pkgs) ];
-  };
-  clsql-helper-slot-coercer = {
-    pname = "clsql-helper-slot-coercer";
-    version = "20180131-git";
-    asds = [ "clsql-helper-slot-coercer" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/clsql-helper/2018-01-31/clsql-helper-20180131-git.tgz";
-      sha256 = "0yc6m8yh0gcark98wvjjwdq3xxy308x15pb7fzha6svxa06hf27g";
-      system = "clsql-helper-slot-coercer";
-      asd = "clsql-helper-slot-coercer";
-    });
-    systems = [ "clsql-helper-slot-coercer" ];
-    lispLibs = [ (getAttr "closer-mop" pkgs) (getAttr "clsql-helper" pkgs) ];
-  };
-  clsql-helper-slot-coercer-test = {
-    pname = "clsql-helper-slot-coercer-test";
-    version = "20180131-git";
-    asds = [ "clsql-helper-slot-coercer-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/clsql-helper/2018-01-31/clsql-helper-20180131-git.tgz";
-      sha256 = "0yc6m8yh0gcark98wvjjwdq3xxy308x15pb7fzha6svxa06hf27g";
-      system = "clsql-helper-slot-coercer-test";
-      asd = "clsql-helper-slot-coercer";
-    });
-    systems = [ "clsql-helper-slot-coercer-test" ];
-    lispLibs = [ (getAttr "clsql-helper-slot-coercer" pkgs) (getAttr "lisp-unit2" pkgs) ];
-  };
-  clsql-helper-test = {
-    pname = "clsql-helper-test";
-    version = "20180131-git";
-    asds = [ "clsql-helper-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/clsql-helper/2018-01-31/clsql-helper-20180131-git.tgz";
-      sha256 = "0yc6m8yh0gcark98wvjjwdq3xxy308x15pb7fzha6svxa06hf27g";
-      system = "clsql-helper-test";
-      asd = "clsql-helper";
-    });
-    systems = [ "clsql-helper-test" ];
-    lispLibs = [ (getAttr "clsql-tests" pkgs) (getAttr "clsql-helper" pkgs) (getAttr "lisp-unit2" pkgs) ];
-  };
-  clsql-local-time = {
-    pname = "clsql-local-time";
-    version = "20201016-git";
-    asds = [ "clsql-local-time" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/clsql-local-time/2020-10-16/clsql-local-time-20201016-git.tgz";
-      sha256 = "1ipv6ij1md5mw44cbif31hiccrric3302rhssj8f7kg3s8n6mphv";
-      system = "clsql-local-time";
-      asd = "clsql-local-time";
-    });
-    systems = [ "clsql-local-time" ];
-    lispLibs = [ (getAttr "clsql" pkgs) (getAttr "local-time" pkgs) ];
-  };
-  clsql-mysql = {
-    pname = "clsql-mysql";
-    version = "20221106-git";
-    asds = [ "clsql-mysql" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/clsql/2022-11-06/clsql-20221106-git.tgz";
-      sha256 = "15kxrjv88ai9nvzxswa6rp8dbd1ad3816r4c5zb8xynsd8i5vpz0";
-      system = "clsql-mysql";
-      asd = "clsql-mysql";
-    });
-    systems = [ "clsql-mysql" ];
-    lispLibs = [ (getAttr "clsql" pkgs) (getAttr "clsql-uffi" pkgs) (getAttr "uffi" pkgs) ];
-  };
-  clsql-odbc = {
-    pname = "clsql-odbc";
-    version = "20221106-git";
-    asds = [ "clsql-odbc" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/clsql/2022-11-06/clsql-20221106-git.tgz";
-      sha256 = "15kxrjv88ai9nvzxswa6rp8dbd1ad3816r4c5zb8xynsd8i5vpz0";
-      system = "clsql-odbc";
-      asd = "clsql-odbc";
-    });
-    systems = [ "clsql-odbc" ];
-    lispLibs = [ (getAttr "clsql" pkgs) (getAttr "clsql-uffi" pkgs) ];
-  };
-  clsql-orm = {
-    pname = "clsql-orm";
-    version = "20160208-git";
-    asds = [ "clsql-orm" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/clsql-orm/2016-02-08/clsql-orm-20160208-git.tgz";
-      sha256 = "1y9604k0mj8h03p85l5nrjkihr3yfj5fp910db9f4ksd1ln2qkka";
-      system = "clsql-orm";
-      asd = "clsql-orm";
-    });
-    systems = [ "clsql-orm" ];
-    lispLibs = [ (getAttr "cl-inflector" pkgs) (getAttr "cl-interpol" pkgs) (getAttr "cl-ppcre" pkgs) (getAttr "clsql" pkgs) (getAttr "iterate" pkgs) (getAttr "symbol-munger" pkgs) ];
-  };
-  clsql-postgresql = {
-    pname = "clsql-postgresql";
-    version = "20221106-git";
-    asds = [ "clsql-postgresql" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/clsql/2022-11-06/clsql-20221106-git.tgz";
-      sha256 = "15kxrjv88ai9nvzxswa6rp8dbd1ad3816r4c5zb8xynsd8i5vpz0";
-      system = "clsql-postgresql";
-      asd = "clsql-postgresql";
-    });
-    systems = [ "clsql-postgresql" ];
-    lispLibs = [ (getAttr "clsql" pkgs) (getAttr "clsql-uffi" pkgs) ];
-  };
-  clsql-postgresql-socket = {
-    pname = "clsql-postgresql-socket";
-    version = "20221106-git";
-    asds = [ "clsql-postgresql-socket" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/clsql/2022-11-06/clsql-20221106-git.tgz";
-      sha256 = "15kxrjv88ai9nvzxswa6rp8dbd1ad3816r4c5zb8xynsd8i5vpz0";
-      system = "clsql-postgresql-socket";
-      asd = "clsql-postgresql-socket";
-    });
-    systems = [ "clsql-postgresql-socket" ];
-    lispLibs = [ (getAttr "clsql" pkgs) (getAttr "md5" pkgs) (getAttr "uffi" pkgs) ];
-  };
-  clsql-postgresql-socket3 = {
-    pname = "clsql-postgresql-socket3";
-    version = "20221106-git";
-    asds = [ "clsql-postgresql-socket3" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/clsql/2022-11-06/clsql-20221106-git.tgz";
-      sha256 = "15kxrjv88ai9nvzxswa6rp8dbd1ad3816r4c5zb8xynsd8i5vpz0";
-      system = "clsql-postgresql-socket3";
-      asd = "clsql-postgresql-socket3";
-    });
-    systems = [ "clsql-postgresql-socket3" ];
-    lispLibs = [ (getAttr "clsql" pkgs) (getAttr "md5" pkgs) (getAttr "cl-postgres" pkgs) ];
-  };
-  clsql-sqlite = {
-    pname = "clsql-sqlite";
-    version = "20221106-git";
-    asds = [ "clsql-sqlite" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/clsql/2022-11-06/clsql-20221106-git.tgz";
-      sha256 = "15kxrjv88ai9nvzxswa6rp8dbd1ad3816r4c5zb8xynsd8i5vpz0";
-      system = "clsql-sqlite";
-      asd = "clsql-sqlite";
-    });
-    systems = [ "clsql-sqlite" ];
-    lispLibs = [ (getAttr "clsql" pkgs) (getAttr "clsql-uffi" pkgs) ];
-  };
-  clsql-sqlite3 = {
-    pname = "clsql-sqlite3";
-    version = "20221106-git";
-    asds = [ "clsql-sqlite3" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/clsql/2022-11-06/clsql-20221106-git.tgz";
-      sha256 = "15kxrjv88ai9nvzxswa6rp8dbd1ad3816r4c5zb8xynsd8i5vpz0";
-      system = "clsql-sqlite3";
-      asd = "clsql-sqlite3";
-    });
-    systems = [ "clsql-sqlite3" ];
-    lispLibs = [ (getAttr "clsql" pkgs) (getAttr "clsql-uffi" pkgs) ];
-  };
-  clsql-tests = {
-    pname = "clsql-tests";
-    version = "20221106-git";
-    asds = [ "clsql-tests" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/clsql/2022-11-06/clsql-20221106-git.tgz";
-      sha256 = "15kxrjv88ai9nvzxswa6rp8dbd1ad3816r4c5zb8xynsd8i5vpz0";
-      system = "clsql-tests";
-      asd = "clsql-tests";
-    });
-    systems = [ "clsql-tests" ];
-    lispLibs = [ (getAttr "clsql" pkgs) (getAttr "rt" pkgs) (getAttr "uffi" pkgs) ];
-  };
-  clsql-uffi = {
-    pname = "clsql-uffi";
-    version = "20221106-git";
-    asds = [ "clsql-uffi" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/clsql/2022-11-06/clsql-20221106-git.tgz";
-      sha256 = "15kxrjv88ai9nvzxswa6rp8dbd1ad3816r4c5zb8xynsd8i5vpz0";
-      system = "clsql-uffi";
-      asd = "clsql-uffi";
-    });
-    systems = [ "clsql-uffi" ];
-    lispLibs = [ (getAttr "clsql" pkgs) (getAttr "uffi" pkgs) ];
-  };
-  clss = {
-    pname = "clss";
-    version = "20221106-git";
-    asds = [ "clss" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/clss/2022-11-06/clss-20221106-git.tgz";
-      sha256 = "1033dchpanhcgxl5qfhr80aw9adbp9bvllhzvvy5p9mrfnidd1fv";
-      system = "clss";
-      asd = "clss";
-    });
-    systems = [ "clss" ];
-    lispLibs = [ (getAttr "array-utils" pkgs) (getAttr "plump" pkgs) ];
-  };
-  cltcl = {
-    pname = "cltcl";
-    version = "20161204-git";
-    asds = [ "cltcl" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cltcl/2016-12-04/cltcl-20161204-git.tgz";
-      sha256 = "18b7fa7m9h9xfhnkxa6r3xzj86p1fvq0mh5q8vdrdv3vxfyc2l68";
-      system = "cltcl";
-      asd = "cltcl";
-    });
-    systems = [ "cltcl" ];
-    lispLibs = [  ];
-  };
-  cluffer = {
-    pname = "cluffer";
-    version = "20221106-git";
-    asds = [ "cluffer" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cluffer/2022-11-06/cluffer-20221106-git.tgz";
-      sha256 = "0z85s26gsgclql5p6iwklnddrv3l8i0pc41ircqp1zxhzdyf5jsx";
-      system = "cluffer";
-      asd = "cluffer";
-    });
-    systems = [ "cluffer" ];
-    lispLibs = [ (getAttr "cluffer-base" pkgs) (getAttr "cluffer-simple-buffer" pkgs) (getAttr "cluffer-simple-line" pkgs) (getAttr "cluffer-standard-buffer" pkgs) (getAttr "cluffer-standard-line" pkgs) ];
-  };
-  cluffer-base = {
-    pname = "cluffer-base";
-    version = "20221106-git";
-    asds = [ "cluffer-base" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cluffer/2022-11-06/cluffer-20221106-git.tgz";
-      sha256 = "0z85s26gsgclql5p6iwklnddrv3l8i0pc41ircqp1zxhzdyf5jsx";
-      system = "cluffer-base";
-      asd = "cluffer-base";
-    });
-    systems = [ "cluffer-base" ];
-    lispLibs = [ (getAttr "acclimation" pkgs) ];
-  };
-  cluffer-simple-buffer = {
-    pname = "cluffer-simple-buffer";
-    version = "20221106-git";
-    asds = [ "cluffer-simple-buffer" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cluffer/2022-11-06/cluffer-20221106-git.tgz";
-      sha256 = "0z85s26gsgclql5p6iwklnddrv3l8i0pc41ircqp1zxhzdyf5jsx";
-      system = "cluffer-simple-buffer";
-      asd = "cluffer-simple-buffer";
-    });
-    systems = [ "cluffer-simple-buffer" ];
-    lispLibs = [ (getAttr "cluffer-base" pkgs) ];
-  };
-  cluffer-simple-line = {
-    pname = "cluffer-simple-line";
-    version = "20221106-git";
-    asds = [ "cluffer-simple-line" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cluffer/2022-11-06/cluffer-20221106-git.tgz";
-      sha256 = "0z85s26gsgclql5p6iwklnddrv3l8i0pc41ircqp1zxhzdyf5jsx";
-      system = "cluffer-simple-line";
-      asd = "cluffer-simple-line";
-    });
-    systems = [ "cluffer-simple-line" ];
-    lispLibs = [ (getAttr "cluffer-base" pkgs) ];
-  };
-  cluffer-standard-buffer = {
-    pname = "cluffer-standard-buffer";
-    version = "20221106-git";
-    asds = [ "cluffer-standard-buffer" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cluffer/2022-11-06/cluffer-20221106-git.tgz";
-      sha256 = "0z85s26gsgclql5p6iwklnddrv3l8i0pc41ircqp1zxhzdyf5jsx";
-      system = "cluffer-standard-buffer";
-      asd = "cluffer-standard-buffer";
-    });
-    systems = [ "cluffer-standard-buffer" ];
-    lispLibs = [ (getAttr "cluffer-base" pkgs) (getAttr "clump" pkgs) ];
-  };
-  cluffer-standard-line = {
-    pname = "cluffer-standard-line";
-    version = "20221106-git";
-    asds = [ "cluffer-standard-line" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cluffer/2022-11-06/cluffer-20221106-git.tgz";
-      sha256 = "0z85s26gsgclql5p6iwklnddrv3l8i0pc41ircqp1zxhzdyf5jsx";
-      system = "cluffer-standard-line";
-      asd = "cluffer-standard-line";
-    });
-    systems = [ "cluffer-standard-line" ];
-    lispLibs = [ (getAttr "cluffer-base" pkgs) ];
-  };
-  cluffer-test = {
-    pname = "cluffer-test";
-    version = "20221106-git";
-    asds = [ "cluffer-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cluffer/2022-11-06/cluffer-20221106-git.tgz";
-      sha256 = "0z85s26gsgclql5p6iwklnddrv3l8i0pc41ircqp1zxhzdyf5jsx";
-      system = "cluffer-test";
-      asd = "cluffer-test";
-    });
-    systems = [ "cluffer-test" ];
-    lispLibs = [ (getAttr "cluffer" pkgs) ];
-  };
-  clump = {
-    pname = "clump";
-    version = "20160825-git";
-    asds = [ "clump" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/clump/2016-08-25/clump-20160825-git.tgz";
-      sha256 = "1639msyagsswj85gc0wd90jgh8588j3qg5q70by9s2brf2q6w4lh";
-      system = "clump";
-      asd = "clump";
-    });
-    systems = [ "clump" ];
-    lispLibs = [ (getAttr "clump-2-3-tree" pkgs) (getAttr "clump-binary-tree" pkgs) ];
-  };
-  clump-2-3-tree = {
-    pname = "clump-2-3-tree";
-    version = "20160825-git";
-    asds = [ "clump-2-3-tree" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/clump/2016-08-25/clump-20160825-git.tgz";
-      sha256 = "1639msyagsswj85gc0wd90jgh8588j3qg5q70by9s2brf2q6w4lh";
-      system = "clump-2-3-tree";
-      asd = "clump-2-3-tree";
-    });
-    systems = [ "clump-2-3-tree" ];
-    lispLibs = [ (getAttr "acclimation" pkgs) ];
-  };
-  clump-binary-tree = {
-    pname = "clump-binary-tree";
-    version = "20160825-git";
-    asds = [ "clump-binary-tree" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/clump/2016-08-25/clump-20160825-git.tgz";
-      sha256 = "1639msyagsswj85gc0wd90jgh8588j3qg5q70by9s2brf2q6w4lh";
-      system = "clump-binary-tree";
-      asd = "clump-binary-tree";
-    });
-    systems = [ "clump-binary-tree" ];
-    lispLibs = [ (getAttr "acclimation" pkgs) ];
-  };
-  clump-test = {
-    pname = "clump-test";
-    version = "20160825-git";
-    asds = [ "clump-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/clump/2016-08-25/clump-20160825-git.tgz";
-      sha256 = "1639msyagsswj85gc0wd90jgh8588j3qg5q70by9s2brf2q6w4lh";
-      system = "clump-test";
-      asd = "clump-test";
-    });
-    systems = [ "clump-test" ];
-    lispLibs = [ (getAttr "clump" pkgs) ];
-  };
-  clunit = {
-    pname = "clunit";
-    version = "20171019-git";
-    asds = [ "clunit" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/clunit/2017-10-19/clunit-20171019-git.tgz";
-      sha256 = "1idf2xnqzlhi8rbrqmzpmb3i1l6pbdzhhajkmhwbp6qjkmxa4h85";
-      system = "clunit";
-      asd = "clunit";
-    });
-    systems = [ "clunit" ];
-    lispLibs = [  ];
-  };
-  clunit2 = {
-    pname = "clunit2";
-    version = "20221106-git";
-    asds = [ "clunit2" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/clunit2/2022-11-06/clunit2-20221106-git.tgz";
-      sha256 = "094bg5r8dslcapkg1kakay5axnqal9nhq8z1cfmhmjsbrvz9vyz4";
-      system = "clunit2";
-      asd = "clunit2";
-    });
-    systems = [ "clunit2" ];
-    lispLibs = [  ];
-  };
-  clustered-intset = {
-    pname = "clustered-intset";
-    version = "20220707-git";
-    asds = [ "clustered-intset" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/clustered-intset/2022-07-07/clustered-intset-20220707-git.tgz";
-      sha256 = "035s2gn59l8389b0ypnb4qna7zplz9rxk05aw88qf8g4b7wyba1h";
-      system = "clustered-intset";
-      asd = "clustered-intset";
-    });
-    systems = [ "clustered-intset" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) ];
-  };
-  clustered-intset-test = {
-    pname = "clustered-intset-test";
-    version = "20220707-git";
-    asds = [ "clustered-intset-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/clustered-intset/2022-07-07/clustered-intset-20220707-git.tgz";
-      sha256 = "035s2gn59l8389b0ypnb4qna7zplz9rxk05aw88qf8g4b7wyba1h";
-      system = "clustered-intset-test";
-      asd = "clustered-intset-test";
-    });
-    systems = [ "clustered-intset-test" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "clustered-intset" pkgs) (getAttr "fiveam" pkgs) ];
-  };
-  clusters = {
-    pname = "clusters";
-    version = "20220331-git";
-    asds = [ "clusters" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/clusters/2022-03-31/clusters-20220331-git.tgz";
-      sha256 = "1x78ihrrah0rrb2ddxmxqcqpkswdvb3f0via56bkf1f3f5kqmsb8";
-      system = "clusters";
-      asd = "clusters";
-    });
-    systems = [ "clusters" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "bordeaux-threads" pkgs) (getAttr "cl-data-structures" pkgs) (getAttr "documentation-utils-extensions" pkgs) (getAttr "iterate" pkgs) (getAttr "lparallel" pkgs) (getAttr "metabang-bind" pkgs) (getAttr "serapeum" pkgs) ];
-  };
-  clusters-tests = {
-    pname = "clusters-tests";
-    version = "20220331-git";
-    asds = [ "clusters-tests" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/clusters/2022-03-31/clusters-20220331-git.tgz";
-      sha256 = "1x78ihrrah0rrb2ddxmxqcqpkswdvb3f0via56bkf1f3f5kqmsb8";
-      system = "clusters-tests";
-      asd = "clusters-tests";
-    });
-    systems = [ "clusters-tests" ];
-    lispLibs = [ (getAttr "clusters" pkgs) (getAttr "prove" pkgs) (getAttr "prove-asdf" pkgs) ];
-  };
-  clutter = {
-    pname = "clutter";
-    version = "v1.0.0";
-    asds = [ "clutter" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/clutter/2021-10-20/clutter-v1.0.0.tgz";
-      sha256 = "1q9mg4d0nja9ypm13i24wymhjwziw6n7r7p1dzw6xc5zhavqsni7";
-      system = "clutter";
-      asd = "clutter";
-    });
-    systems = [ "clutter" ];
-    lispLibs = [ (getAttr "closer-mop" pkgs) (getAttr "doplus" pkgs) ];
-  };
-  clutter_slash_tests = {
-    pname = "clutter_tests";
-    version = "v1.0.0";
-    asds = [ "clutter" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/clutter/2021-10-20/clutter-v1.0.0.tgz";
-      sha256 = "1q9mg4d0nja9ypm13i24wymhjwziw6n7r7p1dzw6xc5zhavqsni7";
-      system = "clutter";
-      asd = "clutter";
-    });
-    systems = [ "clutter/tests" ];
-    lispLibs = [ (getAttr "clutter" pkgs) (getAttr "dissect" pkgs) (getAttr "rove" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  clweb = {
-    pname = "clweb";
-    version = "20201220-git";
-    asds = [ "clweb" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/clweb/2020-12-20/clweb-20201220-git.tgz";
-      sha256 = "0hqyrglgsgal5s8f0n247hg0hqlw6l6w1r5i8lzf0a0xvcz49f48";
-      system = "clweb";
-      asd = "clweb";
-    });
-    systems = [ "clweb" ];
-    lispLibs = [  ];
-  };
-  clweb_slash_tests = {
-    pname = "clweb_tests";
-    version = "20201220-git";
-    asds = [ "clweb" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/clweb/2020-12-20/clweb-20201220-git.tgz";
-      sha256 = "0hqyrglgsgal5s8f0n247hg0hqlw6l6w1r5i8lzf0a0xvcz49f48";
-      system = "clweb";
-      asd = "clweb";
-    });
-    systems = [ "clweb/tests" ];
-    lispLibs = [ (getAttr "clweb" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  clws = {
-    pname = "clws";
-    version = "20130813-git";
-    asds = [ "clws" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/clws/2013-08-13/clws-20130813-git.tgz";
-      sha256 = "1svj025zwsbkb0hrbz1nj0x306hkhy9xinq0x1qdflc9vg169dh6";
-      system = "clws";
-      asd = "clws";
-    });
-    systems = [ "clws" ];
-    lispLibs = [ (getAttr "chunga" pkgs) (getAttr "cl-base64" pkgs) (getAttr "flexi-streams" pkgs) (getAttr "iolib" pkgs) (getAttr "ironclad" pkgs) (getAttr "split-sequence" pkgs) ];
-  };
-  clx = {
-    pname = "clx";
-    version = "20221106-git";
-    asds = [ "clx" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/clx/2022-11-06/clx-20221106-git.tgz";
-      sha256 = "0vjc8ii6zajqfxp0vbj5fkq125ky042w59bmkp3zvi5pwsh3y2hf";
-      system = "clx";
-      asd = "clx";
-    });
-    systems = [ "clx" ];
-    lispLibs = [  ];
-  };
-  clx_slash_test = {
-    pname = "clx_test";
-    version = "20221106-git";
-    asds = [ "clx" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/clx/2022-11-06/clx-20221106-git.tgz";
-      sha256 = "0vjc8ii6zajqfxp0vbj5fkq125ky042w59bmkp3zvi5pwsh3y2hf";
-      system = "clx";
-      asd = "clx";
-    });
-    systems = [ "clx/test" ];
-    lispLibs = [ (getAttr "clx" pkgs) (getAttr "fiasco" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  cmake-parser = {
-    pname = "cmake-parser";
-    version = "20180831-git";
-    asds = [ "cmake-parser" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cmake-parser/2018-08-31/cmake-parser-20180831-git.tgz";
-      sha256 = "1sb5pwxhg7k41202kvxj1b60c5pxnl0mfbqdz53xayddngn2brgl";
-      system = "cmake-parser";
-      asd = "cmake-parser";
-    });
-    systems = [ "cmake-parser" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "esrap" pkgs) ];
-  };
-  cmd = {
-    pname = "cmd";
-    version = "20221106-git";
-    asds = [ "cmd" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cmd/2022-11-06/cmd-20221106-git.tgz";
-      sha256 = "0y3ma71fwihn9km8jx2cdm8z2yk5zd6kk8bigp4wvrx8hll0ajxi";
-      system = "cmd";
-      asd = "cmd";
-    });
-    systems = [ "cmd" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "shlex" pkgs) (getAttr "serapeum" pkgs) (getAttr "trivia" pkgs) (getAttr "trivial-garbage" pkgs) ];
-  };
-  cmu-infix = {
-    pname = "cmu-infix";
-    version = "20180228-git";
-    asds = [ "cmu-infix" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cmu-infix/2018-02-28/cmu-infix-20180228-git.tgz";
-      sha256 = "0macs398088cfif1dkjrpmidk515sjl7ld96f9ys5cpzx8sc5gib";
-      system = "cmu-infix";
-      asd = "cmu-infix";
-    });
-    systems = [ "cmu-infix" ];
-    lispLibs = [ (getAttr "named-readtables" pkgs) ];
-  };
-  cmu-infix-tests = {
-    pname = "cmu-infix-tests";
-    version = "20180228-git";
-    asds = [ "cmu-infix-tests" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cmu-infix/2018-02-28/cmu-infix-20180228-git.tgz";
-      sha256 = "0macs398088cfif1dkjrpmidk515sjl7ld96f9ys5cpzx8sc5gib";
-      system = "cmu-infix-tests";
-      asd = "cmu-infix-tests";
-    });
-    systems = [ "cmu-infix-tests" ];
-    lispLibs = [ (getAttr "cmu-infix" pkgs) (getAttr "fiasco" pkgs) (getAttr "uiop" pkgs) ];
-  };
-  cocoahelper = {
-    pname = "cocoahelper";
-    version = "20210807-git";
-    asds = [ "cocoahelper" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/lispbuilder/2021-08-07/lispbuilder-20210807-git.tgz";
-      sha256 = "0ssm72ss4k6gjkm7nq225miisip6kvhmnnycvxn8x1z20qld03iq";
-      system = "cocoahelper";
-      asd = "cocoahelper";
-    });
-    systems = [ "cocoahelper" ];
-    lispLibs = [ (getAttr "cffi" pkgs) (getAttr "lispbuilder-sdl-binaries" pkgs) ];
-  };
-  codata-recommended-values = {
-    pname = "codata-recommended-values";
-    version = "20200218-git";
-    asds = [ "codata-recommended-values" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/codata-recommended-values/2020-02-18/codata-recommended-values-20200218-git.tgz";
-      sha256 = "0gm27bkq4ma9kc3adnbzyhchky38halb77qc30ll2097ahwy735p";
-      system = "codata-recommended-values";
-      asd = "codata-recommended-values";
-    });
-    systems = [ "codata-recommended-values" ];
-    lispLibs = [  ];
-  };
-  codex = {
-    pname = "codex";
-    version = "20181210-git";
-    asds = [ "codex" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/codex/2018-12-10/codex-20181210-git.tgz";
-      sha256 = "1fyx11h6khh1987x0linfnkl5416yfpxzkcn6g7v5ga18rv41566";
-      system = "codex";
-      asd = "codex";
-    });
-    systems = [ "codex" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cl-ppcre" pkgs) (getAttr "cl-slug" pkgs) (getAttr "codex-templates" pkgs) (getAttr "common-doc" pkgs) (getAttr "common-doc-contrib" pkgs) (getAttr "docparser" pkgs) (getAttr "pandocl" pkgs) ];
-  };
-  codex-templates = {
-    pname = "codex-templates";
-    version = "20181210-git";
-    asds = [ "codex-templates" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/codex/2018-12-10/codex-20181210-git.tgz";
-      sha256 = "1fyx11h6khh1987x0linfnkl5416yfpxzkcn6g7v5ga18rv41566";
-      system = "codex-templates";
-      asd = "codex-templates";
-    });
-    systems = [ "codex-templates" ];
-    lispLibs = [ (getAttr "common-html" pkgs) (getAttr "djula" pkgs) (getAttr "trivial-types" pkgs) ];
-  };
-  coleslaw = {
-    pname = "coleslaw";
-    version = "20221106-git";
-    asds = [ "coleslaw" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/coleslaw/2022-11-06/coleslaw-20221106-git.tgz";
-      sha256 = "1w21a272q4x7nlr4kbmwwvkjvb4hpnw869byvy47vv361y7pimws";
-      system = "coleslaw";
-      asd = "coleslaw";
-    });
-    systems = [ "coleslaw" ];
-    lispLibs = [ (getAttr "_3bmd" pkgs) (getAttr "_3bmd-ext-code-blocks" pkgs) (getAttr "alexandria" pkgs) (getAttr "closure-template" pkgs) (getAttr "cl-fad" pkgs) (getAttr "cl-ppcre" pkgs) (getAttr "cl-unicode" pkgs) (getAttr "closer-mop" pkgs) (getAttr "inferior-shell" pkgs) (getAttr "local-time" pkgs) (getAttr "uiop" pkgs) ];
-  };
-  coleslaw-cli = {
-    pname = "coleslaw-cli";
-    version = "20221106-git";
-    asds = [ "coleslaw-cli" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/coleslaw/2022-11-06/coleslaw-20221106-git.tgz";
-      sha256 = "1w21a272q4x7nlr4kbmwwvkjvb4hpnw869byvy47vv361y7pimws";
-      system = "coleslaw-cli";
-      asd = "coleslaw-cli";
-    });
-    systems = [ "coleslaw-cli" ];
-    lispLibs = [ (getAttr "clack" pkgs) (getAttr "coleslaw" pkgs) (getAttr "trivia" pkgs) (getAttr "uiop" pkgs) ];
-  };
-  coleslaw-test = {
-    pname = "coleslaw-test";
-    version = "20221106-git";
-    asds = [ "coleslaw-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/coleslaw/2022-11-06/coleslaw-20221106-git.tgz";
-      sha256 = "1w21a272q4x7nlr4kbmwwvkjvb4hpnw869byvy47vv361y7pimws";
-      system = "coleslaw-test";
-      asd = "coleslaw-test";
-    });
-    systems = [ "coleslaw-test" ];
-    lispLibs = [ (getAttr "coleslaw" pkgs) (getAttr "coleslaw-cli" pkgs) (getAttr "prove" pkgs) (getAttr "prove-asdf" pkgs) ];
-  };
-  collectors = {
-    pname = "collectors";
-    version = "20220220-git";
-    asds = [ "collectors" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/collectors/2022-02-20/collectors-20220220-git.tgz";
-      sha256 = "1mxcq7wq2jwbjd39afihpd46qkaidq76prgjbzpkv5749wf2spib";
-      system = "collectors";
-      asd = "collectors";
-    });
-    systems = [ "collectors" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "closer-mop" pkgs) (getAttr "symbol-munger" pkgs) ];
-  };
-  collectors_slash_test = {
-    pname = "collectors_test";
-    version = "20220220-git";
-    asds = [ "collectors" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/collectors/2022-02-20/collectors-20220220-git.tgz";
-      sha256 = "1mxcq7wq2jwbjd39afihpd46qkaidq76prgjbzpkv5749wf2spib";
-      system = "collectors";
-      asd = "collectors";
-    });
-    systems = [ "collectors/test" ];
-    lispLibs = [ (getAttr "collectors" pkgs) (getAttr "lisp-unit2" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  colleen = {
-    pname = "colleen";
-    version = "20181018-git";
-    asds = [ "colleen" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/colleen/2018-10-18/colleen-20181018-git.tgz";
-      sha256 = "1cm7vlqsnrbln5jmihdw8m7x1fqm2insdj4f5qasdm32iy6d8bj4";
-      system = "colleen";
-      asd = "colleen";
-    });
-    systems = [ "colleen" ];
-    lispLibs = [ (getAttr "bordeaux-threads" pkgs) (getAttr "cl-ppcre" pkgs) (getAttr "flexi-streams" pkgs) (getAttr "trivial-arguments" pkgs) (getAttr "universal-config" pkgs) (getAttr "usocket" pkgs) (getAttr "uuid" pkgs) (getAttr "verbose" pkgs) ];
-  };
-  colliflower = {
-    pname = "colliflower";
-    version = "20211020-git";
-    asds = [ "colliflower" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/colliflower/2021-10-20/colliflower-20211020-git.tgz";
-      sha256 = "1fzn9s7wm7wmffrdm21lpvry9jb320456cmmprn976a533lp704r";
-      system = "colliflower";
-      asd = "colliflower";
-    });
-    systems = [ "colliflower" ];
-    lispLibs = [ (getAttr "asdf-package-system" pkgs) (getAttr "garten" pkgs) (getAttr "liter" pkgs) (getAttr "silo" pkgs) ];
-  };
-  colliflower-fset = {
-    pname = "colliflower-fset";
-    version = "20211020-git";
-    asds = [ "colliflower-fset" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/colliflower/2021-10-20/colliflower-20211020-git.tgz";
-      sha256 = "1fzn9s7wm7wmffrdm21lpvry9jb320456cmmprn976a533lp704r";
-      system = "colliflower-fset";
-      asd = "colliflower-fset";
-    });
-    systems = [ "colliflower-fset" ];
-    lispLibs = [ (getAttr "colliflower" pkgs) (getAttr "fset" pkgs) ];
-  };
-  colliflower-test = {
-    pname = "colliflower-test";
-    version = "20211020-git";
-    asds = [ "colliflower-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/colliflower/2021-10-20/colliflower-20211020-git.tgz";
-      sha256 = "1fzn9s7wm7wmffrdm21lpvry9jb320456cmmprn976a533lp704r";
-      system = "colliflower-test";
-      asd = "colliflower-test";
-    });
-    systems = [ "colliflower-test" ];
-    lispLibs = [ (getAttr "colliflower" pkgs) (getAttr "prove" pkgs) (getAttr "prove-asdf" pkgs) ];
-  };
-  colnew = {
-    pname = "colnew";
-    version = "20200925-git";
-    asds = [ "colnew" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/f2cl/2020-09-25/f2cl-20200925-git.tgz";
-      sha256 = "0kq1lrz0sg4kj64w0ysihnfwi65pami362fs2mvpyf1yhgxmq08y";
-      system = "colnew";
-      asd = "colnew";
-    });
-    systems = [ "colnew" ];
-    lispLibs = [ (getAttr "f2cl" pkgs) ];
-  };
-  colnew_slash_test-1 = {
-    pname = "colnew_test-1";
-    version = "20200925-git";
-    asds = [ "colnew" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/f2cl/2020-09-25/f2cl-20200925-git.tgz";
-      sha256 = "0kq1lrz0sg4kj64w0ysihnfwi65pami362fs2mvpyf1yhgxmq08y";
-      system = "colnew";
-      asd = "colnew";
-    });
-    systems = [ "colnew/test-1" ];
-    lispLibs = [ (getAttr "colnew" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  colnew_slash_test-2 = {
-    pname = "colnew_test-2";
-    version = "20200925-git";
-    asds = [ "colnew" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/f2cl/2020-09-25/f2cl-20200925-git.tgz";
-      sha256 = "0kq1lrz0sg4kj64w0ysihnfwi65pami362fs2mvpyf1yhgxmq08y";
-      system = "colnew";
-      asd = "colnew";
-    });
-    systems = [ "colnew/test-2" ];
-    lispLibs = [ (getAttr "colnew" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  colnew_slash_test-3 = {
-    pname = "colnew_test-3";
-    version = "20200925-git";
-    asds = [ "colnew" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/f2cl/2020-09-25/f2cl-20200925-git.tgz";
-      sha256 = "0kq1lrz0sg4kj64w0ysihnfwi65pami362fs2mvpyf1yhgxmq08y";
-      system = "colnew";
-      asd = "colnew";
-    });
-    systems = [ "colnew/test-3" ];
-    lispLibs = [ (getAttr "colnew" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  colored = {
-    pname = "colored";
-    version = "20211020-git";
-    asds = [ "colored" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/colored/2021-10-20/colored-20211020-git.tgz";
-      sha256 = "0mpg91r6yfb9xqccd4r8z3hl2qzjhdj6daswb1cinrm8ffxrvy5k";
-      system = "colored";
-      asd = "colored";
-    });
-    systems = [ "colored" ];
-    lispLibs = [ (getAttr "documentation-utils" pkgs) ];
-  };
-  colored-test = {
-    pname = "colored-test";
-    version = "20211020-git";
-    asds = [ "colored-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/colored/2021-10-20/colored-20211020-git.tgz";
-      sha256 = "0mpg91r6yfb9xqccd4r8z3hl2qzjhdj6daswb1cinrm8ffxrvy5k";
-      system = "colored-test";
-      asd = "colored-test";
-    });
-    systems = [ "colored-test" ];
-    lispLibs = [ (getAttr "colored" pkgs) (getAttr "parachute" pkgs) ];
-  };
-  colorize = {
-    pname = "colorize";
-    version = "20180228-git";
-    asds = [ "colorize" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/colorize/2018-02-28/colorize-20180228-git.tgz";
-      sha256 = "1pdg4kiaczmr3ivffhirp7m3lbr1q27rn7dhaay0vwghmi31zcw9";
-      system = "colorize";
-      asd = "colorize";
-    });
-    systems = [ "colorize" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "html-encode" pkgs) (getAttr "split-sequence" pkgs) ];
-  };
-  com-on = {
-    pname = "com-on";
-    version = "20220331-git";
-    asds = [ "com-on" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/com-on/2022-03-31/com-on-20220331-git.tgz";
-      sha256 = "0wrqnmwbqn7krsg2yp1rjpjpkmp9mh7dp0djq086mybnd7s6n05j";
-      system = "com-on";
-      asd = "com-on";
-    });
-    systems = [ "com-on" ];
-    lispLibs = [ (getAttr "cffi" pkgs) (getAttr "documentation-utils" pkgs) ];
-  };
-  com-on-test = {
-    pname = "com-on-test";
-    version = "20220331-git";
-    asds = [ "com-on-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/com-on/2022-03-31/com-on-20220331-git.tgz";
-      sha256 = "0wrqnmwbqn7krsg2yp1rjpjpkmp9mh7dp0djq086mybnd7s6n05j";
-      system = "com-on-test";
-      asd = "com-on-test";
-    });
-    systems = [ "com-on-test" ];
-    lispLibs = [ (getAttr "com-on" pkgs) (getAttr "parachute" pkgs) ];
-  };
-  com_dot_clearly-useful_dot_generic-collection-interface = {
-    pname = "com.clearly-useful.generic-collection-interface";
-    version = "20190710-git";
-    asds = [ "com.clearly-useful.generic-collection-interface" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/com.clearly-useful.generic-collection-interface/2019-07-10/com.clearly-useful.generic-collection-interface-20190710-git.tgz";
-      sha256 = "1yfxwqgvrb1nwryymsl4s3h1lr8yskb9c76lxqy3mw5l0vwvl5zl";
-      system = "com.clearly-useful.generic-collection-interface";
-      asd = "com.clearly-useful.generic-collection-interface";
-    });
-    systems = [ "com.clearly-useful.generic-collection-interface" ];
-    lispLibs = [ (getAttr "bordeaux-threads" pkgs) (getAttr "com_dot_clearly-useful_dot_protocols" pkgs) (getAttr "lparallel" pkgs) ];
-  };
-  com_dot_clearly-useful_dot_generic-collection-interface_dot_test = {
-    pname = "com.clearly-useful.generic-collection-interface.test";
-    version = "20190710-git";
-    asds = [ "com.clearly-useful.generic-collection-interface.test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/com.clearly-useful.generic-collection-interface/2019-07-10/com.clearly-useful.generic-collection-interface-20190710-git.tgz";
-      sha256 = "1yfxwqgvrb1nwryymsl4s3h1lr8yskb9c76lxqy3mw5l0vwvl5zl";
-      system = "com.clearly-useful.generic-collection-interface.test";
-      asd = "com.clearly-useful.generic-collection-interface.test";
-    });
-    systems = [ "com.clearly-useful.generic-collection-interface.test" ];
-    lispLibs = [ (getAttr "com_dot_clearly-useful_dot_generic-collection-interface" pkgs) ];
-  };
-  com_dot_clearly-useful_dot_iterate_plus = {
-    pname = "com.clearly-useful.iterate+";
-    version = "20121013-git";
-    asds = [ "com.clearly-useful.iterate+" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/com.clearly-useful.iterate-plus/2012-10-13/com.clearly-useful.iterate-plus-20121013-git.tgz";
-      sha256 = "0fpymg6p9zglkclfn035agcs5k83fakad7dj2612v5p1snzzcika";
-      system = "com.clearly-useful.iterate+";
-      asd = "com.clearly-useful.iterate+";
-    });
-    systems = [ "com.clearly-useful.iterate+" ];
-    lispLibs = [ (getAttr "com_dot_clearly-useful_dot_generic-collection-interface" pkgs) (getAttr "com_dot_clearly-useful_dot_iterator-protocol" pkgs) (getAttr "com_dot_clearly-useful_dot_protocols" pkgs) (getAttr "iterate" pkgs) ];
-  };
-  com_dot_clearly-useful_dot_iterator-protocol = {
-    pname = "com.clearly-useful.iterator-protocol";
-    version = "20130312-git";
-    asds = [ "com.clearly-useful.iterator-protocol" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/com.clearly-useful.iterator-protocol/2013-03-12/com.clearly-useful.iterator-protocol-20130312-git.tgz";
-      sha256 = "1wgksgpck6na1ygdnln5n1y8rj2kylg3lpbkyrhdka2cgsqiqs4a";
-      system = "com.clearly-useful.iterator-protocol";
-      asd = "com.clearly-useful.iterator-protocol";
-    });
-    systems = [ "com.clearly-useful.iterator-protocol" ];
-    lispLibs = [ (getAttr "com_dot_clearly-useful_dot_generic-collection-interface" pkgs) (getAttr "com_dot_clearly-useful_dot_protocols" pkgs) ];
-  };
-  com_dot_clearly-useful_dot_protocols = {
-    pname = "com.clearly-useful.protocols";
-    version = "20130312-git";
-    asds = [ "com.clearly-useful.protocols" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/com.clearly-useful.protocols/2013-03-12/com.clearly-useful.protocols-20130312-git.tgz";
-      sha256 = "0az9rs98chjj2fdmpapqkv4sgfs84n9s7vvngcl05hcbsldm0xvn";
-      system = "com.clearly-useful.protocols";
-      asd = "com.clearly-useful.protocols";
-    });
-    systems = [ "com.clearly-useful.protocols" ];
-    lispLibs = [ (getAttr "iterate" pkgs) ];
-  };
-  com_dot_dvlsoft_dot_rcfiles = {
-    pname = "com.dvlsoft.rcfiles";
-    version = "20111203-http";
-    asds = [ "com.dvlsoft.rcfiles" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-rcfiles/2011-12-03/cl-rcfiles-20111203-http.tgz";
-      sha256 = "06ahp9jaim216k7vbya1kp8iy5yb1i7axwrsjx7gwhl2b2q63r0a";
-      system = "com.dvlsoft.rcfiles";
-      asd = "com.dvlsoft.rcfiles";
-    });
-    systems = [ "com.dvlsoft.rcfiles" ];
-    lispLibs = [  ];
-  };
-  com_dot_elbeno_dot_curve = {
-    pname = "com.elbeno.curve";
-    version = "20130128-git";
-    asds = [ "com.elbeno.curve" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/curve/2013-01-28/curve-20130128-git.tgz";
-      sha256 = "0223sxrdixjg0bmy76a9kiv7g4zjkqxs92x6kys5dnaywx7mjb6j";
-      system = "com.elbeno.curve";
-      asd = "com.elbeno.curve";
-    });
-    systems = [ "com.elbeno.curve" ];
-    lispLibs = [ (getAttr "vecto" pkgs) (getAttr "com_dot_elbeno_dot_vector" pkgs) ];
-  };
-  com_dot_elbeno_dot_vector = {
-    pname = "com.elbeno.vector";
-    version = "20130128-git";
-    asds = [ "com.elbeno.vector" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/vector/2013-01-28/vector-20130128-git.tgz";
-      sha256 = "04czvqycn9j2hzbjmrp9fgqlgns5l7vbb73dgv3zqmiwzdb66qr5";
-      system = "com.elbeno.vector";
-      asd = "com.elbeno.vector";
-    });
-    systems = [ "com.elbeno.vector" ];
-    lispLibs = [  ];
-  };
-  com_dot_gigamonkeys_dot_binary-data = {
-    pname = "com.gigamonkeys.binary-data";
-    version = "20111203-git";
-    asds = [ "com.gigamonkeys.binary-data" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/monkeylib-binary-data/2011-12-03/monkeylib-binary-data-20111203-git.tgz";
-      sha256 = "072v417vmcnvmyh8ddq9vmwwrizm7zwz9dpzi14qy9nsw8q649zw";
-      system = "com.gigamonkeys.binary-data";
-      asd = "com.gigamonkeys.binary-data";
-    });
-    systems = [ "com.gigamonkeys.binary-data" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) ];
-  };
-  com_dot_gigamonkeys_dot_json = {
-    pname = "com.gigamonkeys.json";
-    version = "20180228-git";
-    asds = [ "com.gigamonkeys.json" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/monkeylib-json/2018-02-28/monkeylib-json-20180228-git.tgz";
-      sha256 = "188717pmyhpgwg9ncc1fbqvbvw5fikbfhvchsy9gg4haxhdgpzsn";
-      system = "com.gigamonkeys.json";
-      asd = "com.gigamonkeys.json";
-    });
-    systems = [ "com.gigamonkeys.json" ];
-    lispLibs = [ (getAttr "com_dot_gigamonkeys_dot_parser" pkgs) (getAttr "com_dot_gigamonkeys_dot_utilities" pkgs) ];
-  };
-  com_dot_gigamonkeys_dot_macro-utilities = {
-    pname = "com.gigamonkeys.macro-utilities";
-    version = "20111203-git";
-    asds = [ "com.gigamonkeys.macro-utilities" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/monkeylib-macro-utilities/2011-12-03/monkeylib-macro-utilities-20111203-git.tgz";
-      sha256 = "0l3m44zlzrvyn6fyvxslga8cppp4mh8dkgqzy297nnm0vnij5r8w";
-      system = "com.gigamonkeys.macro-utilities";
-      asd = "com.gigamonkeys.macro-utilities";
-    });
-    systems = [ "com.gigamonkeys.macro-utilities" ];
-    lispLibs = [  ];
-  };
-  com_dot_gigamonkeys_dot_markup = {
-    pname = "com.gigamonkeys.markup";
-    version = "20120909-git";
-    asds = [ "com.gigamonkeys.markup" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/monkeylib-markup/2012-09-09/monkeylib-markup-20120909-git.tgz";
-      sha256 = "049zqgnprvddn2zp1a8g862m3ikll3a3lpi1k2vimjmx1bkc0vs0";
-      system = "com.gigamonkeys.markup";
-      asd = "com.gigamonkeys.markup";
-    });
-    systems = [ "com.gigamonkeys.markup" ];
-    lispLibs = [ (getAttr "cl-ppcre" pkgs) (getAttr "com_dot_gigamonkeys_dot_pathnames" pkgs) (getAttr "com_dot_gigamonkeys_dot_utilities" pkgs) ];
-  };
-  com_dot_gigamonkeys_dot_parser = {
-    pname = "com.gigamonkeys.parser";
-    version = "20120208-git";
-    asds = [ "com.gigamonkeys.parser" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/monkeylib-parser/2012-02-08/monkeylib-parser-20120208-git.tgz";
-      sha256 = "1xvzrih813311p48bzlm0z0592lx6iss3m36vz55qsw4sr397ncd";
-      system = "com.gigamonkeys.parser";
-      asd = "com.gigamonkeys.parser";
-    });
-    systems = [ "com.gigamonkeys.parser" ];
-    lispLibs = [ (getAttr "com_dot_gigamonkeys_dot_macro-utilities" pkgs) (getAttr "com_dot_gigamonkeys_dot_utilities" pkgs) ];
-  };
-  com_dot_gigamonkeys_dot_pathnames = {
-    pname = "com.gigamonkeys.pathnames";
-    version = "20120208-git";
-    asds = [ "com.gigamonkeys.pathnames" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/monkeylib-pathnames/2012-02-08/monkeylib-pathnames-20120208-git.tgz";
-      sha256 = "108cc39g7razng316df4d47zzpj2zr576wzwwrpggdkm4q599gvk";
-      system = "com.gigamonkeys.pathnames";
-      asd = "com.gigamonkeys.pathnames";
-    });
-    systems = [ "com.gigamonkeys.pathnames" ];
-    lispLibs = [  ];
-  };
-  com_dot_gigamonkeys_dot_prose-diff = {
-    pname = "com.gigamonkeys.prose-diff";
-    version = "20140713-git";
-    asds = [ "com.gigamonkeys.prose-diff" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/monkeylib-prose-diff/2014-07-13/monkeylib-prose-diff-20140713-git.tgz";
-      sha256 = "1zwaa8qmpbdpdg8zzk3as73i55c54k9m694gx4bla1xxli5f8ijc";
-      system = "com.gigamonkeys.prose-diff";
-      asd = "com.gigamonkeys.prose-diff";
-    });
-    systems = [ "com.gigamonkeys.prose-diff" ];
-    lispLibs = [ (getAttr "cl-ppcre" pkgs) (getAttr "com_dot_gigamonkeys_dot_macro-utilities" pkgs) (getAttr "com_dot_gigamonkeys_dot_markup" pkgs) (getAttr "monkeylib-markup-html" pkgs) (getAttr "com_dot_gigamonkeys_dot_pathnames" pkgs) (getAttr "com_dot_gigamonkeys_dot_utilities" pkgs) ];
-  };
-  com_dot_gigamonkeys_dot_test-framework = {
-    pname = "com.gigamonkeys.test-framework";
-    version = "20101207-git";
-    asds = [ "com.gigamonkeys.test-framework" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/monkeylib-test-framework/2010-12-07/monkeylib-test-framework-20101207-git.tgz";
-      sha256 = "1d6b8zg0vnbqxxsbbjr3b4r46d8whj84h9yqnqw3ii0bwr8hn82v";
-      system = "com.gigamonkeys.test-framework";
-      asd = "com.gigamonkeys.test-framework";
-    });
-    systems = [ "com.gigamonkeys.test-framework" ];
-    lispLibs = [ (getAttr "com_dot_gigamonkeys_dot_macro-utilities" pkgs) ];
-  };
-  com_dot_gigamonkeys_dot_utilities = {
-    pname = "com.gigamonkeys.utilities";
-    version = "20170403-git";
-    asds = [ "com.gigamonkeys.utilities" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/monkeylib-utilities/2017-04-03/monkeylib-utilities-20170403-git.tgz";
-      sha256 = "0d0h1y43mn6r8s4g9gbr02d09565p0gig21jfnk7zf1dl6rnvkvm";
-      system = "com.gigamonkeys.utilities";
-      asd = "com.gigamonkeys.utilities";
-    });
-    systems = [ "com.gigamonkeys.utilities" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "split-sequence" pkgs) ];
-  };
-  com_dot_google_dot_base = {
-    pname = "com.google.base";
-    version = "20200925-git";
-    asds = [ "com.google.base" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/com.google.base/2020-09-25/com.google.base-20200925-git.tgz";
-      sha256 = "1drc341sqmrmyvdgqpdy066f0z0ia0kl3ppq0rlxznlxhn17x3xj";
-      system = "com.google.base";
-      asd = "com.google.base";
-    });
-    systems = [ "com.google.base" ];
-    lispLibs = [  ];
-  };
-  com_dot_google_dot_base_slash_test = {
-    pname = "com.google.base_test";
-    version = "20200925-git";
-    asds = [ "com.google.base" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/com.google.base/2020-09-25/com.google.base-20200925-git.tgz";
-      sha256 = "1drc341sqmrmyvdgqpdy066f0z0ia0kl3ppq0rlxznlxhn17x3xj";
-      system = "com.google.base";
-      asd = "com.google.base";
-    });
-    systems = [ "com.google.base/test" ];
-    lispLibs = [ (getAttr "com_dot_google_dot_base" pkgs) (getAttr "hu_dot_dwim_dot_stefil" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  com_dot_google_dot_flag = {
-    pname = "com.google.flag";
-    version = "20201220-git";
-    asds = [ "com.google.flag" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/lisp-gflags/2020-12-20/lisp-gflags-20201220-git.tgz";
-      sha256 = "06p70v1wv0ynr6ng6vr6krc5773xphvkv2nfxvnschc1bzqhds5k";
-      system = "com.google.flag";
-      asd = "com.google.flag";
-    });
-    systems = [ "com.google.flag" ];
-    lispLibs = [ (getAttr "com_dot_google_dot_base" pkgs) ];
-  };
-  com_dot_google_dot_flag_slash_test = {
-    pname = "com.google.flag_test";
-    version = "20201220-git";
-    asds = [ "com.google.flag" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/lisp-gflags/2020-12-20/lisp-gflags-20201220-git.tgz";
-      sha256 = "06p70v1wv0ynr6ng6vr6krc5773xphvkv2nfxvnschc1bzqhds5k";
-      system = "com.google.flag";
-      asd = "com.google.flag";
-    });
-    systems = [ "com.google.flag/test" ];
-    lispLibs = [ (getAttr "hu_dot_dwim_dot_stefil" pkgs) (getAttr "com_dot_google_dot_flag" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  command-line-arguments = {
-    pname = "command-line-arguments";
-    version = "20210807-git";
-    asds = [ "command-line-arguments" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/command-line-arguments/2021-08-07/command-line-arguments-20210807-git.tgz";
-      sha256 = "1wbb83b559nfv65rsxz3jrixic9gndk2whj40hhwb0s13rf5a62y";
-      system = "command-line-arguments";
-      asd = "command-line-arguments";
-    });
-    systems = [ "command-line-arguments" ];
-    lispLibs = [  ];
-  };
-  command-line-arguments_slash_test = {
-    pname = "command-line-arguments_test";
-    version = "20210807-git";
-    asds = [ "command-line-arguments" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/command-line-arguments/2021-08-07/command-line-arguments-20210807-git.tgz";
-      sha256 = "1wbb83b559nfv65rsxz3jrixic9gndk2whj40hhwb0s13rf5a62y";
-      system = "command-line-arguments";
-      asd = "command-line-arguments";
-    });
-    systems = [ "command-line-arguments/test" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "command-line-arguments" pkgs) (getAttr "hu_dot_dwim_dot_stefil" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  common-doc = {
-    pname = "common-doc";
-    version = "20220707-git";
-    asds = [ "common-doc" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/common-doc/2022-07-07/common-doc-20220707-git.tgz";
-      sha256 = "03skibhp2145ismpy50jjzp1z4v368b4dkd5w8lab3ii9b6x8jpm";
-      system = "common-doc";
-      asd = "common-doc";
-    });
-    systems = [ "common-doc" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "anaphora" pkgs) (getAttr "closer-mop" pkgs) (getAttr "local-time" pkgs) (getAttr "quri" pkgs) (getAttr "trivial-types" pkgs) ];
-  };
-  common-doc-contrib = {
-    pname = "common-doc-contrib";
-    version = "20220707-git";
-    asds = [ "common-doc-contrib" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/common-doc/2022-07-07/common-doc-20220707-git.tgz";
-      sha256 = "03skibhp2145ismpy50jjzp1z4v368b4dkd5w8lab3ii9b6x8jpm";
-      system = "common-doc-contrib";
-      asd = "common-doc-contrib";
-    });
-    systems = [ "common-doc-contrib" ];
-    lispLibs = [ (getAttr "common-doc-gnuplot" pkgs) (getAttr "common-doc-graphviz" pkgs) (getAttr "common-doc-include" pkgs) (getAttr "common-doc-split-paragraphs" pkgs) (getAttr "common-doc-tex" pkgs) ];
-  };
-  common-doc-gnuplot = {
-    pname = "common-doc-gnuplot";
-    version = "20220707-git";
-    asds = [ "common-doc-gnuplot" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/common-doc/2022-07-07/common-doc-20220707-git.tgz";
-      sha256 = "03skibhp2145ismpy50jjzp1z4v368b4dkd5w8lab3ii9b6x8jpm";
-      system = "common-doc-gnuplot";
-      asd = "common-doc-gnuplot";
-    });
-    systems = [ "common-doc-gnuplot" ];
-    lispLibs = [ (getAttr "common-doc" pkgs) (getAttr "split-sequence" pkgs) ];
-  };
-  common-doc-graphviz = {
-    pname = "common-doc-graphviz";
-    version = "20220707-git";
-    asds = [ "common-doc-graphviz" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/common-doc/2022-07-07/common-doc-20220707-git.tgz";
-      sha256 = "03skibhp2145ismpy50jjzp1z4v368b4dkd5w8lab3ii9b6x8jpm";
-      system = "common-doc-graphviz";
-      asd = "common-doc-graphviz";
-    });
-    systems = [ "common-doc-graphviz" ];
-    lispLibs = [ (getAttr "common-doc" pkgs) (getAttr "trivial-shell" pkgs) ];
-  };
-  common-doc-include = {
-    pname = "common-doc-include";
-    version = "20220707-git";
-    asds = [ "common-doc-include" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/common-doc/2022-07-07/common-doc-20220707-git.tgz";
-      sha256 = "03skibhp2145ismpy50jjzp1z4v368b4dkd5w8lab3ii9b6x8jpm";
-      system = "common-doc-include";
-      asd = "common-doc-include";
-    });
-    systems = [ "common-doc-include" ];
-    lispLibs = [ (getAttr "common-doc" pkgs) (getAttr "split-sequence" pkgs) ];
-  };
-  common-doc-plump = {
-    pname = "common-doc-plump";
-    version = "20160421-git";
-    asds = [ "common-doc-plump" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/common-doc-plump/2016-04-21/common-doc-plump-20160421-git.tgz";
-      sha256 = "08h7m4c599rf2kz4wkpbj05441ax0vb3bd88a7dw5x57djf765r6";
-      system = "common-doc-plump";
-      asd = "common-doc-plump";
-    });
-    systems = [ "common-doc-plump" ];
-    lispLibs = [ (getAttr "anaphora" pkgs) (getAttr "cl-markup" pkgs) (getAttr "common-doc" pkgs) (getAttr "common-doc-split-paragraphs" pkgs) (getAttr "plump" pkgs) ];
-  };
-  common-doc-plump-test = {
-    pname = "common-doc-plump-test";
-    version = "20160421-git";
-    asds = [ "common-doc-plump-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/common-doc-plump/2016-04-21/common-doc-plump-20160421-git.tgz";
-      sha256 = "08h7m4c599rf2kz4wkpbj05441ax0vb3bd88a7dw5x57djf765r6";
-      system = "common-doc-plump-test";
-      asd = "common-doc-plump-test";
-    });
-    systems = [ "common-doc-plump-test" ];
-    lispLibs = [ (getAttr "common-doc-plump" pkgs) (getAttr "fiveam" pkgs) ];
-  };
-  common-doc-split-paragraphs = {
-    pname = "common-doc-split-paragraphs";
-    version = "20220707-git";
-    asds = [ "common-doc-split-paragraphs" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/common-doc/2022-07-07/common-doc-20220707-git.tgz";
-      sha256 = "03skibhp2145ismpy50jjzp1z4v368b4dkd5w8lab3ii9b6x8jpm";
-      system = "common-doc-split-paragraphs";
-      asd = "common-doc-split-paragraphs";
-    });
-    systems = [ "common-doc-split-paragraphs" ];
-    lispLibs = [ (getAttr "cl-ppcre" pkgs) (getAttr "common-doc" pkgs) ];
-  };
-  common-doc-test = {
-    pname = "common-doc-test";
-    version = "20220707-git";
-    asds = [ "common-doc-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/common-doc/2022-07-07/common-doc-20220707-git.tgz";
-      sha256 = "03skibhp2145ismpy50jjzp1z4v368b4dkd5w8lab3ii9b6x8jpm";
-      system = "common-doc-test";
-      asd = "common-doc-test";
-    });
-    systems = [ "common-doc-test" ];
-    lispLibs = [ (getAttr "common-doc" pkgs) (getAttr "common-doc-contrib" pkgs) (getAttr "fiveam" pkgs) ];
-  };
-  common-doc-tex = {
-    pname = "common-doc-tex";
-    version = "20220707-git";
-    asds = [ "common-doc-tex" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/common-doc/2022-07-07/common-doc-20220707-git.tgz";
-      sha256 = "03skibhp2145ismpy50jjzp1z4v368b4dkd5w8lab3ii9b6x8jpm";
-      system = "common-doc-tex";
-      asd = "common-doc-tex";
-    });
-    systems = [ "common-doc-tex" ];
-    lispLibs = [ (getAttr "common-doc" pkgs) ];
-  };
-  common-html = {
-    pname = "common-html";
-    version = "20210807-git";
-    asds = [ "common-html" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/common-html/2021-08-07/common-html-20210807-git.tgz";
-      sha256 = "1i11w4l95nybz5ibnaxrnrkfhch2s9wynqrg6kx6sl6y47khq1xz";
-      system = "common-html";
-      asd = "common-html";
-    });
-    systems = [ "common-html" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "anaphora" pkgs) (getAttr "common-doc" pkgs) (getAttr "plump" pkgs) ];
-  };
-  common-html-test = {
-    pname = "common-html-test";
-    version = "20210807-git";
-    asds = [ "common-html-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/common-html/2021-08-07/common-html-20210807-git.tgz";
-      sha256 = "1i11w4l95nybz5ibnaxrnrkfhch2s9wynqrg6kx6sl6y47khq1xz";
-      system = "common-html-test";
-      asd = "common-html-test";
-    });
-    systems = [ "common-html-test" ];
-    lispLibs = [ (getAttr "common-html" pkgs) (getAttr "fiveam" pkgs) ];
-  };
-  common-lisp-jupyter = {
-    pname = "common-lisp-jupyter";
-    version = "20221106-git";
-    asds = [ "common-lisp-jupyter" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/common-lisp-jupyter/2022-11-06/common-lisp-jupyter-20221106-git.tgz";
-      sha256 = "1zpmvjlwgvr49ha997kkwwix444x5kvaawlxq4iknzs0mqgnwczs";
-      system = "common-lisp-jupyter";
-      asd = "common-lisp-jupyter";
-    });
-    systems = [ "common-lisp-jupyter" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "babel" pkgs) (getAttr "bordeaux-threads" pkgs) (getAttr "cl-base64" pkgs) (getAttr "cl-indentify" pkgs) (getAttr "closer-mop" pkgs) (getAttr "dissect" pkgs) (getAttr "eclector" pkgs) (getAttr "ironclad" pkgs) (getAttr "multilang-documentation" pkgs) (getAttr "puri" pkgs) (getAttr "pzmq" pkgs) (getAttr "shasht" pkgs) (getAttr "static-vectors" pkgs) (getAttr "trivial-do" pkgs) (getAttr "trivial-features" pkgs) (getAttr "trivial-garbage" pkgs) (getAttr "trivial-gray-streams" pkgs) (getAttr "trivial-mimes" pkgs) ];
-  };
-  commondoc-markdown = {
-    pname = "commondoc-markdown";
-    version = "20221106-git";
-    asds = [ "commondoc-markdown" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/commondoc-markdown/2022-11-06/commondoc-markdown-20221106-git.tgz";
-      sha256 = "10mkr80jx1gpdpmhy3rzq813wnn5rsqkwcvmsdwr4d0iwk1hm48g";
-      system = "commondoc-markdown";
-      asd = "commondoc-markdown";
-    });
-    systems = [ "commondoc-markdown" ];
-    lispLibs = [ (getAttr "_3bmd" pkgs) (getAttr "_3bmd-ext-code-blocks" pkgs) (getAttr "alexandria" pkgs) (getAttr "babel" pkgs) (getAttr "str" pkgs) (getAttr "common-doc" pkgs) (getAttr "common-html" pkgs) (getAttr "esrap" pkgs) (getAttr "ironclad" pkgs) (getAttr "quri" pkgs) (getAttr "uiop" pkgs) ];
-  };
-  commondoc-markdown-docs = {
-    pname = "commondoc-markdown-docs";
-    version = "20221106-git";
-    asds = [ "commondoc-markdown-docs" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/commondoc-markdown/2022-11-06/commondoc-markdown-20221106-git.tgz";
-      sha256 = "10mkr80jx1gpdpmhy3rzq813wnn5rsqkwcvmsdwr4d0iwk1hm48g";
-      system = "commondoc-markdown-docs";
-      asd = "commondoc-markdown-docs";
-    });
-    systems = [ "commondoc-markdown-docs" ];
-    lispLibs = [ (getAttr "_40ants-doc" pkgs) (getAttr "docs-config" pkgs) (getAttr "named-readtables" pkgs) (getAttr "pythonic-string-reader" pkgs) ];
-  };
-  commondoc-markdown-test = {
-    pname = "commondoc-markdown-test";
-    version = "20221106-git";
-    asds = [ "commondoc-markdown-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/commondoc-markdown/2022-11-06/commondoc-markdown-20221106-git.tgz";
-      sha256 = "10mkr80jx1gpdpmhy3rzq813wnn5rsqkwcvmsdwr4d0iwk1hm48g";
-      system = "commondoc-markdown-test";
-      asd = "commondoc-markdown-test";
-    });
-    systems = [ "commondoc-markdown-test" ];
-    lispLibs = [ (getAttr "hamcrest" pkgs) (getAttr "common-doc" pkgs) (getAttr "commondoc-markdown" pkgs) (getAttr "rove" pkgs) ];
-  };
-  commonqt = {
-    pname = "commonqt";
-    version = "20210531-git";
-    asds = [ "commonqt" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/qt-libs/2021-05-31/qt-libs-20210531-git.tgz";
-      sha256 = "0why7cssadw20jg382k6mg2lgk5b3b3nwyyvjafaz90h0ljf0b9w";
-      system = "commonqt";
-      asd = "commonqt";
-    });
-    systems = [ "commonqt" ];
-    lispLibs = [ (getAttr "qt_plus_libs" pkgs) (getAttr "qt-libs" pkgs) (getAttr "smokebase" pkgs) ];
-  };
-  comp-set = {
-    pname = "comp-set";
-    version = "20210807-git";
-    asds = [ "comp-set" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-nst/2021-08-07/cl-nst-20210807-git.tgz";
-      sha256 = "1hf3r6pqbnd9vsd1i24qmz928kia72hdgmiafiwb6jw1hmj3r6ga";
-      system = "comp-set";
-      asd = "comp-set";
-    });
-    systems = [ "comp-set" ];
-    lispLibs = [  ];
-  };
-  compatible-metaclasses = {
-    pname = "compatible-metaclasses";
-    version = "1.0";
-    asds = [ "compatible-metaclasses" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/compatible-metaclasses/2020-09-25/compatible-metaclasses_1.0.tgz";
-      sha256 = "17cf74j400cl6sjslfhkv13lir85k705v63mx3dd4y6dl5hvsdh6";
-      system = "compatible-metaclasses";
-      asd = "compatible-metaclasses";
-    });
-    systems = [ "compatible-metaclasses" ];
-    lispLibs = [ (getAttr "class-options" pkgs) (getAttr "closer-mop" pkgs) (getAttr "enhanced-find-class" pkgs) ];
-  };
-  compatible-metaclasses_tests = {
-    pname = "compatible-metaclasses_tests";
-    version = "1.0";
-    asds = [ "compatible-metaclasses_tests" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/compatible-metaclasses/2020-09-25/compatible-metaclasses_1.0.tgz";
-      sha256 = "17cf74j400cl6sjslfhkv13lir85k705v63mx3dd4y6dl5hvsdh6";
-      system = "compatible-metaclasses_tests";
-      asd = "compatible-metaclasses_tests";
-    });
-    systems = [ "compatible-metaclasses_tests" ];
-    lispLibs = [ (getAttr "compatible-metaclasses" pkgs) (getAttr "parachute" pkgs) ];
-  };
-  compiler-macro-notes = {
-    pname = "compiler-macro-notes";
-    version = "v0.2.1";
-    asds = [ "compiler-macro-notes" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/compiler-macro-notes/2022-11-06/compiler-macro-notes-v0.2.1.tgz";
-      sha256 = "13zzygv0j0a6xacwir4yllpan8j9zh68n9kgkpppg1br8x8s78pk";
-      system = "compiler-macro-notes";
-      asd = "compiler-macro-notes";
-    });
-    systems = [ "compiler-macro-notes" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cl-environments" pkgs) ];
-  };
-  computable-reals = {
-    pname = "computable-reals";
-    version = "20210411-git";
-    asds = [ "computable-reals" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/computable-reals/2021-04-11/computable-reals-20210411-git.tgz";
-      sha256 = "0f12axi53x14l12dgf4a1lfq3p1fx7fh7sjfc0db3lk88ph9qfwl";
-      system = "computable-reals";
-      asd = "computable-reals";
-    });
-    systems = [ "computable-reals" ];
-    lispLibs = [  ];
-  };
-  concrete-syntax-tree = {
-    pname = "concrete-syntax-tree";
-    version = "20211020-git";
-    asds = [ "concrete-syntax-tree" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/concrete-syntax-tree/2021-10-20/concrete-syntax-tree-20211020-git.tgz";
-      sha256 = "169ibaz1vv7pphib28443zzk3hf1mrcarhzfm8hnbdbk529cnxyi";
-      system = "concrete-syntax-tree";
-      asd = "concrete-syntax-tree";
-    });
-    systems = [ "concrete-syntax-tree" ];
-    lispLibs = [ (getAttr "concrete-syntax-tree-base" pkgs) (getAttr "concrete-syntax-tree-lambda-list" pkgs) ];
-  };
-  concrete-syntax-tree-base = {
-    pname = "concrete-syntax-tree-base";
-    version = "20211020-git";
-    asds = [ "concrete-syntax-tree-base" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/concrete-syntax-tree/2021-10-20/concrete-syntax-tree-20211020-git.tgz";
-      sha256 = "169ibaz1vv7pphib28443zzk3hf1mrcarhzfm8hnbdbk529cnxyi";
-      system = "concrete-syntax-tree-base";
-      asd = "concrete-syntax-tree-base";
-    });
-    systems = [ "concrete-syntax-tree-base" ];
-    lispLibs = [ (getAttr "acclimation" pkgs) ];
-  };
-  concrete-syntax-tree-destructuring = {
-    pname = "concrete-syntax-tree-destructuring";
-    version = "20211020-git";
-    asds = [ "concrete-syntax-tree-destructuring" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/concrete-syntax-tree/2021-10-20/concrete-syntax-tree-20211020-git.tgz";
-      sha256 = "169ibaz1vv7pphib28443zzk3hf1mrcarhzfm8hnbdbk529cnxyi";
-      system = "concrete-syntax-tree-destructuring";
-      asd = "concrete-syntax-tree-destructuring";
-    });
-    systems = [ "concrete-syntax-tree-destructuring" ];
-    lispLibs = [ (getAttr "concrete-syntax-tree-lambda-list" pkgs) ];
-  };
-  concrete-syntax-tree-lambda-list = {
-    pname = "concrete-syntax-tree-lambda-list";
-    version = "20211020-git";
-    asds = [ "concrete-syntax-tree-lambda-list" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/concrete-syntax-tree/2021-10-20/concrete-syntax-tree-20211020-git.tgz";
-      sha256 = "169ibaz1vv7pphib28443zzk3hf1mrcarhzfm8hnbdbk529cnxyi";
-      system = "concrete-syntax-tree-lambda-list";
-      asd = "concrete-syntax-tree-lambda-list";
-    });
-    systems = [ "concrete-syntax-tree-lambda-list" ];
-    lispLibs = [ (getAttr "concrete-syntax-tree-base" pkgs) ];
-  };
-  concrete-syntax-tree-lambda-list-test = {
-    pname = "concrete-syntax-tree-lambda-list-test";
-    version = "20211020-git";
-    asds = [ "concrete-syntax-tree-lambda-list-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/concrete-syntax-tree/2021-10-20/concrete-syntax-tree-20211020-git.tgz";
-      sha256 = "169ibaz1vv7pphib28443zzk3hf1mrcarhzfm8hnbdbk529cnxyi";
-      system = "concrete-syntax-tree-lambda-list-test";
-      asd = "concrete-syntax-tree-lambda-list-test";
-    });
-    systems = [ "concrete-syntax-tree-lambda-list-test" ];
-    lispLibs = [ (getAttr "concrete-syntax-tree-lambda-list" pkgs) ];
-  };
-  concrete-syntax-tree-source-info = {
-    pname = "concrete-syntax-tree-source-info";
-    version = "20211020-git";
-    asds = [ "concrete-syntax-tree-source-info" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/concrete-syntax-tree/2021-10-20/concrete-syntax-tree-20211020-git.tgz";
-      sha256 = "169ibaz1vv7pphib28443zzk3hf1mrcarhzfm8hnbdbk529cnxyi";
-      system = "concrete-syntax-tree-source-info";
-      asd = "concrete-syntax-tree-source-info";
-    });
-    systems = [ "concrete-syntax-tree-source-info" ];
-    lispLibs = [  ];
-  };
-  concrete-syntax-tree_slash_test = {
-    pname = "concrete-syntax-tree_test";
-    version = "20211020-git";
-    asds = [ "concrete-syntax-tree" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/concrete-syntax-tree/2021-10-20/concrete-syntax-tree-20211020-git.tgz";
-      sha256 = "169ibaz1vv7pphib28443zzk3hf1mrcarhzfm8hnbdbk529cnxyi";
-      system = "concrete-syntax-tree";
-      asd = "concrete-syntax-tree";
-    });
-    systems = [ "concrete-syntax-tree/test" ];
-    lispLibs = [ (getAttr "concrete-syntax-tree" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  conditional-commands = {
-    pname = "conditional-commands";
-    version = "20221106-git";
-    asds = [ "conditional-commands" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/mcclim/2022-11-06/mcclim-20221106-git.tgz";
-      sha256 = "0hz6vz4c0xv8bjx02hf3rbnp66c7ifx2ld4y6nxdz6i70wyhwbdf";
-      system = "conditional-commands";
-      asd = "conditional-commands";
-    });
-    systems = [ "conditional-commands" ];
-    lispLibs = [ (getAttr "clim" pkgs) ];
-  };
-  conf = {
-    pname = "conf";
-    version = "20191227-git";
-    asds = [ "conf" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/conf/2019-12-27/conf-20191227-git.tgz";
-      sha256 = "0mif91gb6yqg2qrzd2p6n83w9injikm5gggzv2mgxkiyzmr5gnay";
-      system = "conf";
-      asd = "conf";
-    });
-    systems = [ "conf" ];
-    lispLibs = [ (getAttr "cl-fad" pkgs) ];
-  };
-  conf_slash_test = {
-    pname = "conf_test";
-    version = "20191227-git";
-    asds = [ "conf" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/conf/2019-12-27/conf-20191227-git.tgz";
-      sha256 = "0mif91gb6yqg2qrzd2p6n83w9injikm5gggzv2mgxkiyzmr5gnay";
-      system = "conf";
-      asd = "conf";
-    });
-    systems = [ "conf/test" ];
-    lispLibs = [ (getAttr "conf" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  configuration_dot_options = {
-    pname = "configuration.options";
-    version = "20210531-git";
-    asds = [ "configuration.options" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/configuration.options/2021-05-31/configuration.options-20210531-git.tgz";
-      sha256 = "1wh07llx4k66wwabxajdc6cy0sdxbrydxi51gs7hrsyrp9gvym9g";
-      system = "configuration.options";
-      asd = "configuration.options";
-    });
-    systems = [ "configuration.options" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cl-hooks" pkgs) (getAttr "architecture_dot_service-provider" pkgs) (getAttr "esrap" pkgs) (getAttr "let-plus" pkgs) (getAttr "log4cl" pkgs) (getAttr "more-conditions" pkgs) (getAttr "split-sequence" pkgs) (getAttr "utilities_dot_print-items" pkgs) (getAttr "utilities_dot_print-tree" pkgs) ];
-  };
-  configuration_dot_options-and-mop = {
-    pname = "configuration.options-and-mop";
-    version = "20210531-git";
-    asds = [ "configuration.options-and-mop" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/configuration.options/2021-05-31/configuration.options-20210531-git.tgz";
-      sha256 = "1wh07llx4k66wwabxajdc6cy0sdxbrydxi51gs7hrsyrp9gvym9g";
-      system = "configuration.options-and-mop";
-      asd = "configuration.options-and-mop";
-    });
-    systems = [ "configuration.options-and-mop" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "closer-mop" pkgs) (getAttr "configuration_dot_options" pkgs) (getAttr "let-plus" pkgs) ];
-  };
-  configuration_dot_options-and-mop_slash_test = {
-    pname = "configuration.options-and-mop_test";
-    version = "20210531-git";
-    asds = [ "configuration.options-and-mop" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/configuration.options/2021-05-31/configuration.options-20210531-git.tgz";
-      sha256 = "1wh07llx4k66wwabxajdc6cy0sdxbrydxi51gs7hrsyrp9gvym9g";
-      system = "configuration.options-and-mop";
-      asd = "configuration.options-and-mop";
-    });
-    systems = [ "configuration.options-and-mop/test" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "configuration_dot_options" pkgs) (getAttr "configuration_dot_options-and-mop" pkgs) (getAttr "fiveam" pkgs) (getAttr "let-plus" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  configuration_dot_options-and-puri = {
-    pname = "configuration.options-and-puri";
-    version = "20210531-git";
-    asds = [ "configuration.options-and-puri" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/configuration.options/2021-05-31/configuration.options-20210531-git.tgz";
-      sha256 = "1wh07llx4k66wwabxajdc6cy0sdxbrydxi51gs7hrsyrp9gvym9g";
-      system = "configuration.options-and-puri";
-      asd = "configuration.options-and-puri";
-    });
-    systems = [ "configuration.options-and-puri" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "configuration_dot_options" pkgs) (getAttr "let-plus" pkgs) (getAttr "puri" pkgs) ];
-  };
-  configuration_dot_options-and-puri_slash_test = {
-    pname = "configuration.options-and-puri_test";
-    version = "20210531-git";
-    asds = [ "configuration.options-and-puri" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/configuration.options/2021-05-31/configuration.options-20210531-git.tgz";
-      sha256 = "1wh07llx4k66wwabxajdc6cy0sdxbrydxi51gs7hrsyrp9gvym9g";
-      system = "configuration.options-and-puri";
-      asd = "configuration.options-and-puri";
-    });
-    systems = [ "configuration.options-and-puri/test" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "configuration_dot_options" pkgs) (getAttr "configuration_dot_options-and-puri" pkgs) (getAttr "fiveam" pkgs) (getAttr "let-plus" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  configuration_dot_options-and-quri = {
-    pname = "configuration.options-and-quri";
-    version = "20210531-git";
-    asds = [ "configuration.options-and-quri" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/configuration.options/2021-05-31/configuration.options-20210531-git.tgz";
-      sha256 = "1wh07llx4k66wwabxajdc6cy0sdxbrydxi51gs7hrsyrp9gvym9g";
-      system = "configuration.options-and-quri";
-      asd = "configuration.options-and-quri";
-    });
-    systems = [ "configuration.options-and-quri" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "configuration_dot_options" pkgs) (getAttr "let-plus" pkgs) (getAttr "quri" pkgs) ];
-  };
-  configuration_dot_options-and-quri_slash_test = {
-    pname = "configuration.options-and-quri_test";
-    version = "20210531-git";
-    asds = [ "configuration.options-and-quri" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/configuration.options/2021-05-31/configuration.options-20210531-git.tgz";
-      sha256 = "1wh07llx4k66wwabxajdc6cy0sdxbrydxi51gs7hrsyrp9gvym9g";
-      system = "configuration.options-and-quri";
-      asd = "configuration.options-and-quri";
-    });
-    systems = [ "configuration.options-and-quri/test" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "configuration_dot_options" pkgs) (getAttr "configuration_dot_options-and-quri" pkgs) (getAttr "fiveam" pkgs) (getAttr "let-plus" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  configuration_dot_options-and-service-provider = {
-    pname = "configuration.options-and-service-provider";
-    version = "20210531-git";
-    asds = [ "configuration.options-and-service-provider" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/configuration.options/2021-05-31/configuration.options-20210531-git.tgz";
-      sha256 = "1wh07llx4k66wwabxajdc6cy0sdxbrydxi51gs7hrsyrp9gvym9g";
-      system = "configuration.options-and-service-provider";
-      asd = "configuration.options-and-service-provider";
-    });
-    systems = [ "configuration.options-and-service-provider" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "architecture_dot_service-provider" pkgs) (getAttr "architecture_dot_service-provider-and-hooks" pkgs) (getAttr "configuration_dot_options" pkgs) (getAttr "configuration_dot_options-and-mop" pkgs) (getAttr "let-plus" pkgs) (getAttr "log4cl" pkgs) ];
-  };
-  configuration_dot_options-and-service-provider_slash_test = {
-    pname = "configuration.options-and-service-provider_test";
-    version = "20210531-git";
-    asds = [ "configuration.options-and-service-provider" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/configuration.options/2021-05-31/configuration.options-20210531-git.tgz";
-      sha256 = "1wh07llx4k66wwabxajdc6cy0sdxbrydxi51gs7hrsyrp9gvym9g";
-      system = "configuration.options-and-service-provider";
-      asd = "configuration.options-and-service-provider";
-    });
-    systems = [ "configuration.options-and-service-provider/test" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "architecture_dot_service-provider" pkgs) (getAttr "configuration_dot_options" pkgs) (getAttr "configuration_dot_options-and-service-provider" pkgs) (getAttr "fiveam" pkgs) (getAttr "let-plus" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  configuration_dot_options-syntax-ini = {
-    pname = "configuration.options-syntax-ini";
-    version = "20210531-git";
-    asds = [ "configuration.options-syntax-ini" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/configuration.options/2021-05-31/configuration.options-20210531-git.tgz";
-      sha256 = "1wh07llx4k66wwabxajdc6cy0sdxbrydxi51gs7hrsyrp9gvym9g";
-      system = "configuration.options-syntax-ini";
-      asd = "configuration.options-syntax-ini";
-    });
-    systems = [ "configuration.options-syntax-ini" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "configuration_dot_options" pkgs) (getAttr "let-plus" pkgs) (getAttr "parser_dot_ini" pkgs) ];
-  };
-  configuration_dot_options-syntax-ini_slash_test = {
-    pname = "configuration.options-syntax-ini_test";
-    version = "20210531-git";
-    asds = [ "configuration.options-syntax-ini" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/configuration.options/2021-05-31/configuration.options-20210531-git.tgz";
-      sha256 = "1wh07llx4k66wwabxajdc6cy0sdxbrydxi51gs7hrsyrp9gvym9g";
-      system = "configuration.options-syntax-ini";
-      asd = "configuration.options-syntax-ini";
-    });
-    systems = [ "configuration.options-syntax-ini/test" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "configuration_dot_options" pkgs) (getAttr "configuration_dot_options-syntax-ini" pkgs) (getAttr "fiveam" pkgs) (getAttr "let-plus" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  configuration_dot_options-syntax-xml = {
-    pname = "configuration.options-syntax-xml";
-    version = "20210531-git";
-    asds = [ "configuration.options-syntax-xml" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/configuration.options/2021-05-31/configuration.options-20210531-git.tgz";
-      sha256 = "1wh07llx4k66wwabxajdc6cy0sdxbrydxi51gs7hrsyrp9gvym9g";
-      system = "configuration.options-syntax-xml";
-      asd = "configuration.options-syntax-xml";
-    });
-    systems = [ "configuration.options-syntax-xml" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "configuration_dot_options" pkgs) (getAttr "let-plus" pkgs) (getAttr "xml_dot_location" pkgs) ];
-  };
-  configuration_dot_options-syntax-xml_slash_test = {
-    pname = "configuration.options-syntax-xml_test";
-    version = "20210531-git";
-    asds = [ "configuration.options-syntax-xml" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/configuration.options/2021-05-31/configuration.options-20210531-git.tgz";
-      sha256 = "1wh07llx4k66wwabxajdc6cy0sdxbrydxi51gs7hrsyrp9gvym9g";
-      system = "configuration.options-syntax-xml";
-      asd = "configuration.options-syntax-xml";
-    });
-    systems = [ "configuration.options-syntax-xml/test" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "configuration_dot_options" pkgs) (getAttr "configuration_dot_options-syntax-xml" pkgs) (getAttr "fiveam" pkgs) (getAttr "let-plus" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  configuration_dot_options_slash_test = {
-    pname = "configuration.options_test";
-    version = "20210531-git";
-    asds = [ "configuration.options" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/configuration.options/2021-05-31/configuration.options-20210531-git.tgz";
-      sha256 = "1wh07llx4k66wwabxajdc6cy0sdxbrydxi51gs7hrsyrp9gvym9g";
-      system = "configuration.options";
-      asd = "configuration.options";
-    });
-    systems = [ "configuration.options/test" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "configuration_dot_options" pkgs) (getAttr "fiveam" pkgs) (getAttr "let-plus" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  conium = {
-    pname = "conium";
-    version = "20210630-git";
-    asds = [ "conium" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/conium/2021-06-30/conium-20210630-git.tgz";
-      sha256 = "0y31za8xr8734p2pf8mrw1jd1fksh2d4y1p12wwjyn8hxxsvsx1w";
-      system = "conium";
-      asd = "conium";
-    });
-    systems = [ "conium" ];
-    lispLibs = [ (getAttr "closer-mop" pkgs) ];
-  };
-  consfigurator = {
-    pname = "consfigurator";
-    version = "v1.1.1";
-    asds = [ "consfigurator" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/consfigurator/2022-11-06/consfigurator-v1.1.1.tgz";
-      sha256 = "12k3billjgkdk9yr0a2dv2jkrggi9kgm7nncvlz5m22y3sh7f5kh";
-      system = "consfigurator";
-      asd = "consfigurator";
-    });
-    systems = [ "consfigurator" ];
-    lispLibs = [ (getAttr "agnostic-lizard" pkgs) (getAttr "alexandria" pkgs) (getAttr "anaphora" pkgs) (getAttr "babel" pkgs) (getAttr "babel-streams" pkgs) (getAttr "bordeaux-threads" pkgs) (getAttr "cffi" pkgs) (getAttr "cffi-grovel" pkgs) (getAttr "cl-heredoc" pkgs) (getAttr "cl-interpol" pkgs) (getAttr "cl-ppcre" pkgs) (getAttr "closer-mop" pkgs) (getAttr "named-readtables" pkgs) (getAttr "osicat" pkgs) (getAttr "trivial-backtrace" pkgs) ];
-  };
-  consfigurator_slash_tests = {
-    pname = "consfigurator_tests";
-    version = "v1.1.1";
-    asds = [ "consfigurator" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/consfigurator/2022-11-06/consfigurator-v1.1.1.tgz";
-      sha256 = "12k3billjgkdk9yr0a2dv2jkrggi9kgm7nncvlz5m22y3sh7f5kh";
-      system = "consfigurator";
-      asd = "consfigurator";
-    });
-    systems = [ "consfigurator/tests" ];
-    lispLibs = [ (getAttr "consfigurator" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  consix = {
-    pname = "consix";
-    version = "20201220-git";
-    asds = [ "consix" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/consix/2020-12-20/consix-20201220-git.tgz";
-      sha256 = "0zpcaxgq9jx0baj5sid8rnzq8ygsmd8yzb0x37nkaiwa67x5jjck";
-      system = "consix";
-      asd = "consix";
-    });
-    systems = [ "consix" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cl-glu" pkgs) (getAttr "cl-glut" pkgs) (getAttr "cl-opengl" pkgs) ];
-  };
-  constantfold = {
-    pname = "constantfold";
-    version = "20191227-git";
-    asds = [ "constantfold" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/constantfold/2019-12-27/constantfold-20191227-git.tgz";
-      sha256 = "153h0569z6bff1qbad0bdssplwwny75l7ilqwcfqfdvzsxf9jh06";
-      system = "constantfold";
-      asd = "constantfold";
-    });
-    systems = [ "constantfold" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "iterate" pkgs) (getAttr "lisp-namespace" pkgs) (getAttr "trivia" pkgs) ];
-  };
-  constantfold_dot_test = {
-    pname = "constantfold.test";
-    version = "20191227-git";
-    asds = [ "constantfold.test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/constantfold/2019-12-27/constantfold-20191227-git.tgz";
-      sha256 = "153h0569z6bff1qbad0bdssplwwny75l7ilqwcfqfdvzsxf9jh06";
-      system = "constantfold.test";
-      asd = "constantfold.test";
-    });
-    systems = [ "constantfold.test" ];
-    lispLibs = [ (getAttr "constantfold" pkgs) (getAttr "fiveam" pkgs) ];
-  };
-  context-lite = {
-    pname = "context-lite";
-    version = "20220331-git";
-    asds = [ "context-lite" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/context-lite/2022-03-31/context-lite-20220331-git.tgz";
-      sha256 = "16hmid3adimn10c0y4p6hg7n42al2qgsy7wxlpargk0xbn4h3km4";
-      system = "context-lite";
-      asd = "context-lite";
-    });
-    systems = [ "context-lite" ];
-    lispLibs = [ (getAttr "closer-mop" pkgs) ];
-  };
-  context-lite_slash_test = {
-    pname = "context-lite_test";
-    version = "20220331-git";
-    asds = [ "context-lite" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/context-lite/2022-03-31/context-lite-20220331-git.tgz";
-      sha256 = "16hmid3adimn10c0y4p6hg7n42al2qgsy7wxlpargk0xbn4h3km4";
-      system = "context-lite";
-      asd = "context-lite";
-    });
-    systems = [ "context-lite/test" ];
-    lispLibs = [ (getAttr "context-lite" pkgs) (getAttr "fiveam" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  contextl = {
-    pname = "contextl";
-    version = "20211230-git";
-    asds = [ "contextl" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/contextl/2021-12-30/contextl-20211230-git.tgz";
-      sha256 = "0apgznz4g6lpmd86lq7w0xddfjgnirk83ig7p0j6i93xadhy9wh0";
-      system = "contextl";
-      asd = "contextl";
-    });
-    systems = [ "contextl" ];
-    lispLibs = [ (getAttr "closer-mop" pkgs) (getAttr "lw-compat" pkgs) ];
-  };
-  control = {
-    pname = "control";
-    version = "20200427-git";
-    asds = [ "control" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/sucle/2020-04-27/sucle-20200427-git.tgz";
-      sha256 = "033akkn9zxc6qdgycgxgybx3v23638245xrx29x2cbwnvg3i1q34";
-      system = "control";
-      asd = "control";
-    });
-    systems = [ "control" ];
-    lispLibs = [ (getAttr "character-modifier-bits" pkgs) (getAttr "window" pkgs) (getAttr "utility" pkgs) ];
-  };
-  convolution-kernel = {
-    pname = "convolution-kernel";
-    version = "20220707-git";
-    asds = [ "convolution-kernel" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/convolution-kernel/2022-07-07/convolution-kernel-20220707-git.tgz";
-      sha256 = "0r2mgwl75fxcc019mxg3s32mkx6fhi8fcy5rzz1jba1wrcw380z3";
-      system = "convolution-kernel";
-      asd = "convolution-kernel";
-    });
-    systems = [ "convolution-kernel" ];
-    lispLibs = [ (getAttr "mfiano-utils" pkgs) (getAttr "tile-grid" pkgs) ];
-  };
-  copy-directory = {
-    pname = "copy-directory";
-    version = "20160628-git";
-    asds = [ "copy-directory" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/copy-directory/2016-06-28/copy-directory-20160628-git.tgz";
-      sha256 = "19wvzb046lcyifhx26ydzf7ngfa52n64nyx76k3lh02x7ahhpc93";
-      system = "copy-directory";
-      asd = "copy-directory";
-    });
-    systems = [ "copy-directory" ];
-    lispLibs = [ (getAttr "cl-fad" pkgs) (getAttr "uiop" pkgs) (getAttr "which" pkgs) ];
-  };
-  copy-directory-test = {
-    pname = "copy-directory-test";
-    version = "20160628-git";
-    asds = [ "copy-directory-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/copy-directory/2016-06-28/copy-directory-20160628-git.tgz";
-      sha256 = "19wvzb046lcyifhx26ydzf7ngfa52n64nyx76k3lh02x7ahhpc93";
-      system = "copy-directory-test";
-      asd = "copy-directory-test";
-    });
-    systems = [ "copy-directory-test" ];
-    lispLibs = [ (getAttr "copy-directory" pkgs) (getAttr "fiveam" pkgs) ];
-  };
-  core-reader = {
-    pname = "core-reader";
-    version = "20220707-git";
-    asds = [ "core-reader" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/core-reader/2022-07-07/core-reader-20220707-git.tgz";
-      sha256 = "1f2cm44r3pnahgx1b3c3psf6myaliwsrvfcgz8c9ydqi5qlx49gb";
-      system = "core-reader";
-      asd = "core-reader";
-    });
-    systems = [ "core-reader" ];
-    lispLibs = [ (getAttr "uiop" pkgs) ];
-  };
-  core-reader_dot_test = {
-    pname = "core-reader.test";
-    version = "20220707-git";
-    asds = [ "core-reader.test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/core-reader/2022-07-07/core-reader-20220707-git.tgz";
-      sha256 = "1f2cm44r3pnahgx1b3c3psf6myaliwsrvfcgz8c9ydqi5qlx49gb";
-      system = "core-reader.test";
-      asd = "core-reader.test";
-    });
-    systems = [ "core-reader.test" ];
-    lispLibs = [ (getAttr "core-reader" pkgs) (getAttr "jingoh" pkgs) ];
-  };
-  cover = {
-    pname = "cover";
-    version = "20210228-git";
-    asds = [ "cover" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cover/2021-02-28/cover-20210228-git.tgz";
-      sha256 = "1dm28xvpnkv6lyq76k6hjw37vn6zvwhn9kp7xgk5zk2i37d63b77";
-      system = "cover";
-      asd = "cover";
-    });
-    systems = [ "cover" ];
-    lispLibs = [  ];
-  };
-  cover_slash_tests = {
-    pname = "cover_tests";
-    version = "20210228-git";
-    asds = [ "cover" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cover/2021-02-28/cover-20210228-git.tgz";
-      sha256 = "1dm28xvpnkv6lyq76k6hjw37vn6zvwhn9kp7xgk5zk2i37d63b77";
-      system = "cover";
-      asd = "cover";
-    });
-    systems = [ "cover/tests" ];
-    lispLibs = [ (getAttr "cover" pkgs) (getAttr "uiop" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  cqlcl = {
-    pname = "cqlcl";
-    version = "20141106-git";
-    asds = [ "cqlcl" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cqlcl/2014-11-06/cqlcl-20141106-git.tgz";
-      sha256 = "0ppdsrrf2hz0s4y02a2p5mgms92znrj7hz7x9j6azppfkal25zid";
-      system = "cqlcl";
-      asd = "cqlcl";
-    });
-    systems = [ "cqlcl" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "bordeaux-threads" pkgs) (getAttr "fiveam" pkgs) (getAttr "flexi-streams" pkgs) (getAttr "lparallel" pkgs) (getAttr "pooler" pkgs) (getAttr "split-sequence" pkgs) (getAttr "usocket" pkgs) (getAttr "uuid" pkgs) ];
-  };
-  cqlcl-test = {
-    pname = "cqlcl-test";
-    version = "20141106-git";
-    asds = [ "cqlcl-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cqlcl/2014-11-06/cqlcl-20141106-git.tgz";
-      sha256 = "0ppdsrrf2hz0s4y02a2p5mgms92znrj7hz7x9j6azppfkal25zid";
-      system = "cqlcl-test";
-      asd = "cqlcl";
-    });
-    systems = [ "cqlcl-test" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cqlcl" pkgs) (getAttr "fiveam" pkgs) (getAttr "flexi-streams" pkgs) (getAttr "uuid" pkgs) ];
-  };
-  crane = {
-    pname = "crane";
-    version = "20160208-git";
-    asds = [ "crane" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/crane/2016-02-08/crane-20160208-git.tgz";
-      sha256 = "1wai4h7vz5i0ld1fnnbcmpz5d67dmykyxx0ay0fkclkwvpj7gh5n";
-      system = "crane";
-      asd = "crane";
-    });
-    systems = [ "crane" ];
-    lispLibs = [ (getAttr "anaphora" pkgs) (getAttr "dbi" pkgs) (getAttr "cl-fad" pkgs) (getAttr "clos-fixtures" pkgs) (getAttr "closer-mop" pkgs) (getAttr "iterate" pkgs) (getAttr "local-time" pkgs) (getAttr "sxql" pkgs) (getAttr "uiop" pkgs) ];
-  };
-  crane-test = {
-    pname = "crane-test";
-    version = "20160208-git";
-    asds = [ "crane-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/crane/2016-02-08/crane-20160208-git.tgz";
-      sha256 = "1wai4h7vz5i0ld1fnnbcmpz5d67dmykyxx0ay0fkclkwvpj7gh5n";
-      system = "crane-test";
-      asd = "crane-test";
-    });
-    systems = [ "crane-test" ];
-    lispLibs = [ (getAttr "crane" pkgs) (getAttr "fiveam" pkgs) ];
-  };
-  cricket = {
-    pname = "cricket";
-    version = "20220707-git";
-    asds = [ "cricket" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cricket/2022-07-07/cricket-20220707-git.tgz";
-      sha256 = "0wdpzdmalbnfjmd9s7yalris4i1vvc2klnhfl8g0h2ahq0mqv9p9";
-      system = "cricket";
-      asd = "cricket";
-    });
-    systems = [ "cricket" ];
-    lispLibs = [ (getAttr "arrow-macros" pkgs) (getAttr "cl-cpus" pkgs) (getAttr "lparallel" pkgs) (getAttr "mfiano-utils" pkgs) (getAttr "seedable-rng" pkgs) (getAttr "uiop" pkgs) (getAttr "zpng" pkgs) ];
-  };
-  cricket_dot_test = {
-    pname = "cricket.test";
-    version = "20220707-git";
-    asds = [ "cricket.test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cricket/2022-07-07/cricket-20220707-git.tgz";
-      sha256 = "0wdpzdmalbnfjmd9s7yalris4i1vvc2klnhfl8g0h2ahq0mqv9p9";
-      system = "cricket.test";
-      asd = "cricket.test";
-    });
-    systems = [ "cricket.test" ];
-    lispLibs = [ (getAttr "cricket" pkgs) (getAttr "mfiano-utils" pkgs) (getAttr "pngload" pkgs) (getAttr "prove" pkgs) (getAttr "prove-asdf" pkgs) ];
-  };
-  croatoan = {
-    pname = "croatoan";
-    version = "20221106-git";
-    asds = [ "croatoan" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/croatoan/2022-11-06/croatoan-20221106-git.tgz";
-      sha256 = "0zfwcc40dpj88jvkm45d4snxjfxdsncd5pj10zrbj7lm4awm9b5s";
-      system = "croatoan";
-      asd = "croatoan";
-    });
-    systems = [ "croatoan" ];
-    lispLibs = [ (getAttr "bordeaux-threads" pkgs) (getAttr "croatoan-ncurses" pkgs) (getAttr "trivial-gray-streams" pkgs) ];
-  };
-  croatoan-ncurses = {
-    pname = "croatoan-ncurses";
-    version = "20221106-git";
-    asds = [ "croatoan-ncurses" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/croatoan/2022-11-06/croatoan-20221106-git.tgz";
-      sha256 = "0zfwcc40dpj88jvkm45d4snxjfxdsncd5pj10zrbj7lm4awm9b5s";
-      system = "croatoan-ncurses";
-      asd = "croatoan-ncurses";
-    });
-    systems = [ "croatoan-ncurses" ];
-    lispLibs = [ (getAttr "cffi" pkgs) ];
-  };
-  croatoan-test = {
-    pname = "croatoan-test";
-    version = "20221106-git";
-    asds = [ "croatoan-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/croatoan/2022-11-06/croatoan-20221106-git.tgz";
-      sha256 = "0zfwcc40dpj88jvkm45d4snxjfxdsncd5pj10zrbj7lm4awm9b5s";
-      system = "croatoan-test";
-      asd = "croatoan-test";
-    });
-    systems = [ "croatoan-test" ];
-    lispLibs = [ (getAttr "croatoan" pkgs) ];
-  };
-  crud = {
-    pname = "crud";
-    version = "20200427-git";
-    asds = [ "crud" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/sucle/2020-04-27/sucle-20200427-git.tgz";
-      sha256 = "033akkn9zxc6qdgycgxgybx3v23638245xrx29x2cbwnvg3i1q34";
-      system = "crud";
-      asd = "crud";
-    });
-    systems = [ "crud" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "base64" pkgs) (getAttr "sqlite" pkgs) (getAttr "lparallel" pkgs) (getAttr "sucle-serialize" pkgs) (getAttr "uiop" pkgs) ];
-  };
-  crypt = {
-    pname = "crypt";
-    version = "20120520-git";
-    asds = [ "crypt" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-crypt/2012-05-20/cl-crypt-20120520-git.tgz";
-      sha256 = "02fc3aqfbbwjpz79a4mwffv33pnmmknpkmd1r8v9mkn9a6c1ssmh";
-      system = "crypt";
-      asd = "crypt";
-    });
-    systems = [ "crypt" ];
-    lispLibs = [  ];
-  };
-  crypto-shortcuts = {
-    pname = "crypto-shortcuts";
-    version = "20201016-git";
-    asds = [ "crypto-shortcuts" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/crypto-shortcuts/2020-10-16/crypto-shortcuts-20201016-git.tgz";
-      sha256 = "0c0m0ar04jn7qf2v8c4sivamlzki03r13rnxy8b3n27rh9r6hgin";
-      system = "crypto-shortcuts";
-      asd = "crypto-shortcuts";
-    });
-    systems = [ "crypto-shortcuts" ];
-    lispLibs = [ (getAttr "cl-base64" pkgs) (getAttr "flexi-streams" pkgs) (getAttr "ironclad" pkgs) ];
-  };
-  cserial-port = {
-    pname = "cserial-port";
-    version = "20211230-git";
-    asds = [ "cserial-port" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cserial-port/2021-12-30/cserial-port-20211230-git.tgz";
-      sha256 = "05fvzl0pd6d3pbzp6rpgv1ad8hawcy34rm88p1jf8066fl6lxikp";
-      system = "cserial-port";
-      asd = "cserial-port";
-    });
-    systems = [ "cserial-port" ];
-    lispLibs = [ (getAttr "cffi" pkgs) (getAttr "cffi-grovel" pkgs) (getAttr "osicat" pkgs) (getAttr "trivial-features" pkgs) (getAttr "trivial-gray-streams" pkgs) ];
-  };
-  css-lite = {
-    pname = "css-lite";
-    version = "20221106-git";
-    asds = [ "css-lite" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/css-lite/2022-11-06/css-lite-20221106-git.tgz";
-      sha256 = "1klfpiqbg8gg10s2dmladaq06ard5v92lzk3ck2d1nbbl3rk4m1l";
-      system = "css-lite";
-      asd = "css-lite";
-    });
-    systems = [ "css-lite" ];
-    lispLibs = [  ];
-  };
-  css-lite_slash_test = {
-    pname = "css-lite_test";
-    version = "20221106-git";
-    asds = [ "css-lite" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/css-lite/2022-11-06/css-lite-20221106-git.tgz";
-      sha256 = "1klfpiqbg8gg10s2dmladaq06ard5v92lzk3ck2d1nbbl3rk4m1l";
-      system = "css-lite";
-      asd = "css-lite";
-    });
-    systems = [ "css-lite/test" ];
-    lispLibs = [ (getAttr "css-lite" pkgs) (getAttr "fiveam" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  css-selectors = {
-    pname = "css-selectors";
-    version = "20160628-git";
-    asds = [ "css-selectors" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/css-selectors/2016-06-28/css-selectors-20160628-git.tgz";
-      sha256 = "0x0a5jq4kdw8zrkljmhijcbvjj09iyrwwgryc6kvzl5g7wzg2xr6";
-      system = "css-selectors";
-      asd = "css-selectors";
-    });
-    systems = [ "css-selectors" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "buildnode" pkgs) (getAttr "cl-interpol" pkgs) (getAttr "cl-ppcre" pkgs) (getAttr "yacc" pkgs) (getAttr "cxml" pkgs) (getAttr "iterate" pkgs) (getAttr "symbol-munger" pkgs) ];
-  };
-  css-selectors-simple-tree = {
-    pname = "css-selectors-simple-tree";
-    version = "20160628-git";
-    asds = [ "css-selectors-simple-tree" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/css-selectors/2016-06-28/css-selectors-20160628-git.tgz";
-      sha256 = "0x0a5jq4kdw8zrkljmhijcbvjj09iyrwwgryc6kvzl5g7wzg2xr6";
-      system = "css-selectors-simple-tree";
-      asd = "css-selectors-simple-tree";
-    });
-    systems = [ "css-selectors-simple-tree" ];
-    lispLibs = [ (getAttr "cl-html5-parser" pkgs) (getAttr "css-selectors" pkgs) ];
-  };
-  css-selectors-stp = {
-    pname = "css-selectors-stp";
-    version = "20160628-git";
-    asds = [ "css-selectors-stp" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/css-selectors/2016-06-28/css-selectors-20160628-git.tgz";
-      sha256 = "0x0a5jq4kdw8zrkljmhijcbvjj09iyrwwgryc6kvzl5g7wzg2xr6";
-      system = "css-selectors-stp";
-      asd = "css-selectors-stp";
-    });
-    systems = [ "css-selectors-stp" ];
-    lispLibs = [ (getAttr "css-selectors" pkgs) (getAttr "cxml-stp" pkgs) ];
-  };
-  css-selectors-test = {
-    pname = "css-selectors-test";
-    version = "20160628-git";
-    asds = [ "css-selectors-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/css-selectors/2016-06-28/css-selectors-20160628-git.tgz";
-      sha256 = "0x0a5jq4kdw8zrkljmhijcbvjj09iyrwwgryc6kvzl5g7wzg2xr6";
-      system = "css-selectors-test";
-      asd = "css-selectors";
-    });
-    systems = [ "css-selectors-test" ];
-    lispLibs = [ (getAttr "buildnode-xhtml" pkgs) (getAttr "css-selectors" pkgs) (getAttr "lisp-unit2" pkgs) ];
-  };
-  csv = {
-    pname = "csv";
-    version = "20190710-git";
-    asds = [ "csv" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/csv/2019-07-10/csv-20190710-git.tgz";
-      sha256 = "0jykv91w7anisac2aip38vnj7ywi567rcp4n8nv3lz5qb7g1dpy4";
-      system = "csv";
-      asd = "csv";
-    });
-    systems = [ "csv" ];
-    lispLibs = [  ];
-  };
-  csv-parser = {
-    pname = "csv-parser";
-    version = "20140713-git";
-    asds = [ "csv-parser" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/csv-parser/2014-07-13/csv-parser-20140713-git.tgz";
-      sha256 = "0pcp709dwxi3p2vrmx5qiy571pybfs1hpv9z8g4i1ig2l4mc3djh";
-      system = "csv-parser";
-      asd = "csv-parser";
-    });
-    systems = [ "csv-parser" ];
-    lispLibs = [  ];
-  };
-  ctype = {
-    pname = "ctype";
-    version = "20220707-git";
-    asds = [ "ctype" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/ctype/2022-07-07/ctype-20220707-git.tgz";
-      sha256 = "05smc81ml9rbcbzdhqg2mi9drnjsipq62r5q7f7qql8hbx01vl9i";
-      system = "ctype";
-      asd = "ctype";
-    });
-    systems = [ "ctype" ];
-    lispLibs = [  ];
-  };
-  ctype-tfun = {
-    pname = "ctype-tfun";
-    version = "20220707-git";
-    asds = [ "ctype-tfun" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/ctype/2022-07-07/ctype-20220707-git.tgz";
-      sha256 = "05smc81ml9rbcbzdhqg2mi9drnjsipq62r5q7f7qql8hbx01vl9i";
-      system = "ctype-tfun";
-      asd = "ctype-tfun";
-    });
-    systems = [ "ctype-tfun" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "ctype" pkgs) ];
-  };
-  cubic-bezier = {
-    pname = "cubic-bezier";
-    version = "20220707-git";
-    asds = [ "cubic-bezier" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cubic-bezier/2022-07-07/cubic-bezier-20220707-git.tgz";
-      sha256 = "08byf1pw2s5sz97bk0sp2a6gdx5dkankbbg14azafd1k0vfh7vcr";
-      system = "cubic-bezier";
-      asd = "cubic-bezier";
-    });
-    systems = [ "cubic-bezier" ];
-    lispLibs = [ (getAttr "mfiano-utils" pkgs) (getAttr "origin" pkgs) ];
-  };
-  cue-parser = {
-    pname = "cue-parser";
-    version = "20180228-git";
-    asds = [ "cue-parser" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cue-parser/2018-02-28/cue-parser-20180228-git.tgz";
-      sha256 = "1zl3a02b68yywchd1aldls07b4qgrf08xpb4xiaaw8njk2qa0lz1";
-      system = "cue-parser";
-      asd = "cue-parser";
-    });
-    systems = [ "cue-parser" ];
-    lispLibs = [ (getAttr "esrap" pkgs) (getAttr "flexi-streams" pkgs) ];
-  };
-  curly = {
-    pname = "curly";
-    version = "20120407-git";
-    asds = [ "curly" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/curly/2012-04-07/curly-20120407-git.tgz";
-      sha256 = "04gpkq6hd7wvvny0p3lgn87bfalswqc67sbg4p35j52w51mqd8vf";
-      system = "curly";
-      asd = "curly";
-    });
-    systems = [ "curly" ];
-    lispLibs = [  ];
-  };
-  curly_dot_test = {
-    pname = "curly.test";
-    version = "20120407-git";
-    asds = [ "curly.test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/curly/2012-04-07/curly-20120407-git.tgz";
-      sha256 = "04gpkq6hd7wvvny0p3lgn87bfalswqc67sbg4p35j52w51mqd8vf";
-      system = "curly.test";
-      asd = "curly";
-    });
-    systems = [ "curly.test" ];
-    lispLibs = [ (getAttr "curly" pkgs) (getAttr "fiveam" pkgs) ];
-  };
-  curry-compose-reader-macros = {
-    pname = "curry-compose-reader-macros";
-    version = "20201220-git";
-    asds = [ "curry-compose-reader-macros" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/curry-compose-reader-macros/2020-12-20/curry-compose-reader-macros-20201220-git.tgz";
-      sha256 = "0j4qfwpw4ykf5npiln54w7jcnj46p7xf9d4p3jpx4a67fdkrlxd1";
-      system = "curry-compose-reader-macros";
-      asd = "curry-compose-reader-macros";
-    });
-    systems = [ "curry-compose-reader-macros" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "named-readtables" pkgs) ];
-  };
-  curry-compose-reader-macros_slash_test = {
-    pname = "curry-compose-reader-macros_test";
-    version = "20201220-git";
-    asds = [ "curry-compose-reader-macros" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/curry-compose-reader-macros/2020-12-20/curry-compose-reader-macros-20201220-git.tgz";
-      sha256 = "0j4qfwpw4ykf5npiln54w7jcnj46p7xf9d4p3jpx4a67fdkrlxd1";
-      system = "curry-compose-reader-macros";
-      asd = "curry-compose-reader-macros";
-    });
-    systems = [ "curry-compose-reader-macros/test" ];
-    lispLibs = [ (getAttr "curry-compose-reader-macros" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  cxml = {
-    pname = "cxml";
-    version = "20200610-git";
-    asds = [ "cxml" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cxml/2020-06-10/cxml-20200610-git.tgz";
-      sha256 = "18fls3bx7vmnxfa6qara8fxp316d8kb3izar0kysvqg6l0a45a51";
-      system = "cxml";
-      asd = "cxml";
-    });
-    systems = [ "cxml" ];
-    lispLibs = [ (getAttr "closure-common" pkgs) (getAttr "puri" pkgs) (getAttr "trivial-gray-streams" pkgs) ];
-  };
-  cxml-dom = {
-    pname = "cxml-dom";
-    version = "20200610-git";
-    asds = [ "cxml-dom" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cxml/2020-06-10/cxml-20200610-git.tgz";
-      sha256 = "18fls3bx7vmnxfa6qara8fxp316d8kb3izar0kysvqg6l0a45a51";
-      system = "cxml-dom";
-      asd = "cxml-dom";
-    });
-    systems = [ "cxml-dom" ];
-    lispLibs = [ (getAttr "closure-common" pkgs) (getAttr "puri" pkgs) (getAttr "trivial-gray-streams" pkgs) ];
-  };
-  cxml-klacks = {
-    pname = "cxml-klacks";
-    version = "20200610-git";
-    asds = [ "cxml-klacks" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cxml/2020-06-10/cxml-20200610-git.tgz";
-      sha256 = "18fls3bx7vmnxfa6qara8fxp316d8kb3izar0kysvqg6l0a45a51";
-      system = "cxml-klacks";
-      asd = "cxml-klacks";
-    });
-    systems = [ "cxml-klacks" ];
-    lispLibs = [ (getAttr "closure-common" pkgs) (getAttr "puri" pkgs) (getAttr "trivial-gray-streams" pkgs) ];
-  };
-  cxml-rng = {
-    pname = "cxml-rng";
-    version = "20190710-git";
-    asds = [ "cxml-rng" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cxml-rng/2019-07-10/cxml-rng-20190710-git.tgz";
-      sha256 = "0pjb5268spiwq6b0cly8nfajr6rsh2wf6si646bzzjrxbgs51sxa";
-      system = "cxml-rng";
-      asd = "cxml-rng";
-    });
-    systems = [ "cxml-rng" ];
-    lispLibs = [ (getAttr "cl-base64" pkgs) (getAttr "cl-ppcre" pkgs) (getAttr "yacc" pkgs) (getAttr "cxml" pkgs) (getAttr "parse-number" pkgs) ];
-  };
-  cxml-rpc = {
-    pname = "cxml-rpc";
-    version = "20121013-git";
-    asds = [ "cxml-rpc" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cxml-rpc/2012-10-13/cxml-rpc-20121013-git.tgz";
-      sha256 = "1ihd8rg0shy7nykqcbvvx5px7sw8wr1nwz70jdrh6ibq74yr8flh";
-      system = "cxml-rpc";
-      asd = "cxml-rpc";
-    });
-    systems = [ "cxml-rpc" ];
-    lispLibs = [ (getAttr "cl-base64" pkgs) (getAttr "cxml" pkgs) (getAttr "drakma" pkgs) (getAttr "hunchentoot" pkgs) (getAttr "parse-number" pkgs) ];
-  };
-  cxml-stp = {
-    pname = "cxml-stp";
-    version = "20200325-git";
-    asds = [ "cxml-stp" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cxml-stp/2020-03-25/cxml-stp-20200325-git.tgz";
-      sha256 = "01yfxxvb144i2mlp06fxx410mf3phxz5qaqvk90pp4dzdl883knv";
-      system = "cxml-stp";
-      asd = "cxml-stp";
-    });
-    systems = [ "cxml-stp" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cxml" pkgs) (getAttr "xpath" pkgs) ];
-  };
-  cxml-stp_slash_test = {
-    pname = "cxml-stp_test";
-    version = "20200325-git";
-    asds = [ "cxml-stp" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cxml-stp/2020-03-25/cxml-stp-20200325-git.tgz";
-      sha256 = "01yfxxvb144i2mlp06fxx410mf3phxz5qaqvk90pp4dzdl883knv";
-      system = "cxml-stp";
-      asd = "cxml-stp";
-    });
-    systems = [ "cxml-stp/test" ];
-    lispLibs = [ (getAttr "cxml" pkgs) (getAttr "cxml-stp" pkgs) (getAttr "xpath" pkgs) (getAttr "rt" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  cxml-test = {
-    pname = "cxml-test";
-    version = "20200610-git";
-    asds = [ "cxml-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cxml/2020-06-10/cxml-20200610-git.tgz";
-      sha256 = "18fls3bx7vmnxfa6qara8fxp316d8kb3izar0kysvqg6l0a45a51";
-      system = "cxml-test";
-      asd = "cxml-test";
-    });
-    systems = [ "cxml-test" ];
-    lispLibs = [ (getAttr "closure-common" pkgs) (getAttr "puri" pkgs) (getAttr "trivial-gray-streams" pkgs) ];
-  };
-  cxml_slash_dom = {
-    pname = "cxml_dom";
-    version = "20200610-git";
-    asds = [ "cxml" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cxml/2020-06-10/cxml-20200610-git.tgz";
-      sha256 = "18fls3bx7vmnxfa6qara8fxp316d8kb3izar0kysvqg6l0a45a51";
-      system = "cxml";
-      asd = "cxml";
-    });
-    systems = [ "cxml/dom" ];
-    lispLibs = [ (getAttr "closure-common" pkgs) (getAttr "puri" pkgs) (getAttr "trivial-gray-streams" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  cxml_slash_klacks = {
-    pname = "cxml_klacks";
-    version = "20200610-git";
-    asds = [ "cxml" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cxml/2020-06-10/cxml-20200610-git.tgz";
-      sha256 = "18fls3bx7vmnxfa6qara8fxp316d8kb3izar0kysvqg6l0a45a51";
-      system = "cxml";
-      asd = "cxml";
-    });
-    systems = [ "cxml/klacks" ];
-    lispLibs = [ (getAttr "closure-common" pkgs) (getAttr "puri" pkgs) (getAttr "trivial-gray-streams" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  cxml_slash_test = {
-    pname = "cxml_test";
-    version = "20200610-git";
-    asds = [ "cxml" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cxml/2020-06-10/cxml-20200610-git.tgz";
-      sha256 = "18fls3bx7vmnxfa6qara8fxp316d8kb3izar0kysvqg6l0a45a51";
-      system = "cxml";
-      asd = "cxml";
-    });
-    systems = [ "cxml/test" ];
-    lispLibs = [ (getAttr "closure-common" pkgs) (getAttr "puri" pkgs) (getAttr "trivial-gray-streams" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  cxml_slash_xml = {
-    pname = "cxml_xml";
-    version = "20200610-git";
-    asds = [ "cxml" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cxml/2020-06-10/cxml-20200610-git.tgz";
-      sha256 = "18fls3bx7vmnxfa6qara8fxp316d8kb3izar0kysvqg6l0a45a51";
-      system = "cxml";
-      asd = "cxml";
-    });
-    systems = [ "cxml/xml" ];
-    lispLibs = [ (getAttr "closure-common" pkgs) (getAttr "puri" pkgs) (getAttr "trivial-gray-streams" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  cxx = {
-    pname = "cxx";
-    version = "20210411-git";
-    asds = [ "cxx" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-cxx/2021-04-11/cl-cxx-20210411-git.tgz";
-      sha256 = "0hvb5n1s00f8q3bnj8g28fj2k3s8qz1fn0ls77pd3w69fg5wqdsy";
-      system = "cxx";
-      asd = "cxx";
-    });
-    systems = [ "cxx" ];
-    lispLibs = [ (getAttr "cffi" pkgs) (getAttr "trivial-garbage" pkgs) ];
-  };
-  cxx-jit = {
-    pname = "cxx-jit";
-    version = "20220331-git";
-    asds = [ "cxx-jit" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-cxx-jit/2022-03-31/cl-cxx-jit-20220331-git.tgz";
-      sha256 = "0mbi5r4b4jbk50yy4pv7ngsjj50579f9c362dzh0sbrxk8vd3gkp";
-      system = "cxx-jit";
-      asd = "cxx-jit";
-    });
-    systems = [ "cxx-jit" ];
-    lispLibs = [ (getAttr "cffi" pkgs) (getAttr "trivial-garbage" pkgs) (getAttr "uiop" pkgs) ];
-  };
-  cxx-test = {
-    pname = "cxx-test";
-    version = "20210411-git";
-    asds = [ "cxx-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-cxx/2021-04-11/cl-cxx-20210411-git.tgz";
-      sha256 = "0hvb5n1s00f8q3bnj8g28fj2k3s8qz1fn0ls77pd3w69fg5wqdsy";
-      system = "cxx-test";
-      asd = "cxx-test";
-    });
-    systems = [ "cxx-test" ];
-    lispLibs = [ (getAttr "cxx" pkgs) (getAttr "prove" pkgs) (getAttr "prove-asdf" pkgs) ];
-  };
-  cytoscape-clj = {
-    pname = "cytoscape-clj";
-    version = "20221106-git";
-    asds = [ "cytoscape-clj" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cytoscape-clj/2022-11-06/cytoscape-clj-20221106-git.tgz";
-      sha256 = "0212c9aw2qpcijz2sglabbn51h93ljw1l3sj4kbff724xgc96ijh";
-      system = "cytoscape-clj";
-      asd = "cytoscape-clj";
-    });
-    systems = [ "cytoscape-clj" ];
-    lispLibs = [ (getAttr "common-lisp-jupyter" pkgs) ];
-  };
-  daemon = {
-    pname = "daemon";
-    version = "20170403-git";
-    asds = [ "daemon" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/daemon/2017-04-03/daemon-20170403-git.tgz";
-      sha256 = "1kdxfnhh9fz34j8qs7pn7mwjz3v33q4v9nh0hqkyzraq5xs2j3f4";
-      system = "daemon";
-      asd = "daemon";
-    });
-    systems = [ "daemon" ];
-    lispLibs = [ (getAttr "trivial-features" pkgs) ];
-  };
-  damn-fast-priority-queue = {
-    pname = "damn-fast-priority-queue";
-    version = "20221106-git";
-    asds = [ "damn-fast-priority-queue" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/damn-fast-priority-queue/2022-11-06/damn-fast-priority-queue-20221106-git.tgz";
-      sha256 = "14917b1z7ag3a7f88p4fk4649iy07kn9vpq6bszdxcp1irnc5a13";
-      system = "damn-fast-priority-queue";
-      asd = "damn-fast-priority-queue";
-    });
-    systems = [ "damn-fast-priority-queue" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) ];
-  };
-  damn-fast-priority-queue_slash_test = {
-    pname = "damn-fast-priority-queue_test";
-    version = "20221106-git";
-    asds = [ "damn-fast-priority-queue" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/damn-fast-priority-queue/2022-11-06/damn-fast-priority-queue-20221106-git.tgz";
-      sha256 = "14917b1z7ag3a7f88p4fk4649iy07kn9vpq6bszdxcp1irnc5a13";
-      system = "damn-fast-priority-queue";
-      asd = "damn-fast-priority-queue";
-    });
-    systems = [ "damn-fast-priority-queue/test" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "damn-fast-priority-queue" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  damn-fast-stable-priority-queue = {
-    pname = "damn-fast-stable-priority-queue";
-    version = "20221106-git";
-    asds = [ "damn-fast-stable-priority-queue" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/damn-fast-priority-queue/2022-11-06/damn-fast-priority-queue-20221106-git.tgz";
-      sha256 = "14917b1z7ag3a7f88p4fk4649iy07kn9vpq6bszdxcp1irnc5a13";
-      system = "damn-fast-stable-priority-queue";
-      asd = "damn-fast-stable-priority-queue";
-    });
-    systems = [ "damn-fast-stable-priority-queue" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) ];
-  };
-  damn-fast-stable-priority-queue_slash_test = {
-    pname = "damn-fast-stable-priority-queue_test";
-    version = "20221106-git";
-    asds = [ "damn-fast-stable-priority-queue" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/damn-fast-priority-queue/2022-11-06/damn-fast-priority-queue-20221106-git.tgz";
-      sha256 = "14917b1z7ag3a7f88p4fk4649iy07kn9vpq6bszdxcp1irnc5a13";
-      system = "damn-fast-stable-priority-queue";
-      asd = "damn-fast-stable-priority-queue";
-    });
-    systems = [ "damn-fast-stable-priority-queue/test" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "damn-fast-stable-priority-queue" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  darts_dot_lib_dot_email-address = {
-    pname = "darts.lib.email-address";
-    version = "quicklisp-release-48464635-git";
-    asds = [ "darts.lib.email-address" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/dartsclemailaddress/2016-04-21/dartsclemailaddress-quicklisp-release-48464635-git.tgz";
-      sha256 = "15155nqi9q7ilaf14p4yi4iga8203rl7fn9v2iaxcfm18gsvqcjd";
-      system = "darts.lib.email-address";
-      asd = "darts.lib.email-address";
-    });
-    systems = [ "darts.lib.email-address" ];
-    lispLibs = [  ];
-  };
-  darts_dot_lib_dot_email-address-test = {
-    pname = "darts.lib.email-address-test";
-    version = "quicklisp-release-48464635-git";
-    asds = [ "darts.lib.email-address-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/dartsclemailaddress/2016-04-21/dartsclemailaddress-quicklisp-release-48464635-git.tgz";
-      sha256 = "15155nqi9q7ilaf14p4yi4iga8203rl7fn9v2iaxcfm18gsvqcjd";
-      system = "darts.lib.email-address-test";
-      asd = "darts.lib.email-address-test";
-    });
-    systems = [ "darts.lib.email-address-test" ];
-    lispLibs = [ (getAttr "darts_dot_lib_dot_email-address" pkgs) (getAttr "stefil" pkgs) ];
-  };
-  darts_dot_lib_dot_hashtree-test = {
-    pname = "darts.lib.hashtree-test";
-    version = "20211230-git";
-    asds = [ "darts.lib.hashtree-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/dartsclhashtree/2021-12-30/dartsclhashtree-20211230-git.tgz";
-      sha256 = "17h3s6n9l1vwllcig7g385qxcrp6f68zjcb2rygs8nhs5g7iqryc";
-      system = "darts.lib.hashtree-test";
-      asd = "darts.lib.hashtree-test";
-    });
-    systems = [ "darts.lib.hashtree-test" ];
-    lispLibs = [ (getAttr "darts_dot_lib_dot_hashtrie" pkgs) (getAttr "darts_dot_lib_dot_wbtree" pkgs) (getAttr "stefil" pkgs) ];
-  };
-  darts_dot_lib_dot_hashtrie = {
-    pname = "darts.lib.hashtrie";
-    version = "20211230-git";
-    asds = [ "darts.lib.hashtrie" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/dartsclhashtree/2021-12-30/dartsclhashtree-20211230-git.tgz";
-      sha256 = "17h3s6n9l1vwllcig7g385qxcrp6f68zjcb2rygs8nhs5g7iqryc";
-      system = "darts.lib.hashtrie";
-      asd = "darts.lib.hashtrie";
-    });
-    systems = [ "darts.lib.hashtrie" ];
-    lispLibs = [  ];
-  };
-  darts_dot_lib_dot_message-pack = {
-    pname = "darts.lib.message-pack";
-    version = "20200325-git";
-    asds = [ "darts.lib.message-pack" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/dartsclmessagepack/2020-03-25/dartsclmessagepack-20200325-git.tgz";
-      sha256 = "0i9jnvq6dp5zya1ijj3z7s10803jk8rb4nrjrzcgcfhkczd5si6y";
-      system = "darts.lib.message-pack";
-      asd = "darts.lib.message-pack";
-    });
-    systems = [ "darts.lib.message-pack" ];
-    lispLibs = [ (getAttr "babel" pkgs) (getAttr "ieee-floats" pkgs) ];
-  };
-  darts_dot_lib_dot_message-pack-test = {
-    pname = "darts.lib.message-pack-test";
-    version = "20200325-git";
-    asds = [ "darts.lib.message-pack-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/dartsclmessagepack/2020-03-25/dartsclmessagepack-20200325-git.tgz";
-      sha256 = "0i9jnvq6dp5zya1ijj3z7s10803jk8rb4nrjrzcgcfhkczd5si6y";
-      system = "darts.lib.message-pack-test";
-      asd = "darts.lib.message-pack-test";
-    });
-    systems = [ "darts.lib.message-pack-test" ];
-    lispLibs = [ (getAttr "darts_dot_lib_dot_message-pack" pkgs) (getAttr "stefil" pkgs) (getAttr "trivial-octet-streams" pkgs) ];
-  };
-  darts_dot_lib_dot_sequence-metrics = {
-    pname = "darts.lib.sequence-metrics";
-    version = "20130312-git";
-    asds = [ "darts.lib.sequence-metrics" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/dartsclsequencemetrics/2013-03-12/dartsclsequencemetrics-20130312-git.tgz";
-      sha256 = "1x99gj5dfgiaraawx1nd157g5ajygfxz47cz8jgi1fh52fp1p969";
-      system = "darts.lib.sequence-metrics";
-      asd = "darts.lib.sequence-metrics";
-    });
-    systems = [ "darts.lib.sequence-metrics" ];
-    lispLibs = [  ];
-  };
-  darts_dot_lib_dot_tools = {
-    pname = "darts.lib.tools";
-    version = "20201220-git";
-    asds = [ "darts.lib.tools" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/dartscltools/2020-12-20/dartscltools-20201220-git.tgz";
-      sha256 = "0mbz7ak03qsw41fgybdw4mbibr656y9xl9bfgr2rmkdkgxbicys9";
-      system = "darts.lib.tools";
-      asd = "darts.lib.tools";
-    });
-    systems = [ "darts.lib.tools" ];
-    lispLibs = [ (getAttr "atomics" pkgs) ];
-  };
-  darts_dot_lib_dot_tools_dot_test = {
-    pname = "darts.lib.tools.test";
-    version = "20201220-git";
-    asds = [ "darts.lib.tools.test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/dartscltools/2020-12-20/dartscltools-20201220-git.tgz";
-      sha256 = "0mbz7ak03qsw41fgybdw4mbibr656y9xl9bfgr2rmkdkgxbicys9";
-      system = "darts.lib.tools.test";
-      asd = "darts.lib.tools.test";
-    });
-    systems = [ "darts.lib.tools.test" ];
-    lispLibs = [ (getAttr "bordeaux-threads" pkgs) (getAttr "darts_dot_lib_dot_tools" pkgs) (getAttr "fiveam" pkgs) ];
-  };
-  darts_dot_lib_dot_uuid = {
-    pname = "darts.lib.uuid";
-    version = "20210807-git";
-    asds = [ "darts.lib.uuid" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/dartscluuid/2021-08-07/dartscluuid-20210807-git.tgz";
-      sha256 = "068lsbjnx4bkhz7s2022jsh8zsvqak98s8hcy1rs10bgi36hrrkh";
-      system = "darts.lib.uuid";
-      asd = "darts.lib.uuid";
-    });
-    systems = [ "darts.lib.uuid" ];
-    lispLibs = [ (getAttr "cl-ppcre" pkgs) (getAttr "ironclad" pkgs) (getAttr "trivial-utf-8" pkgs) ];
-  };
-  darts_dot_lib_dot_uuid-test = {
-    pname = "darts.lib.uuid-test";
-    version = "20210807-git";
-    asds = [ "darts.lib.uuid-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/dartscluuid/2021-08-07/dartscluuid-20210807-git.tgz";
-      sha256 = "068lsbjnx4bkhz7s2022jsh8zsvqak98s8hcy1rs10bgi36hrrkh";
-      system = "darts.lib.uuid-test";
-      asd = "darts.lib.uuid-test";
-    });
-    systems = [ "darts.lib.uuid-test" ];
-    lispLibs = [ (getAttr "darts_dot_lib_dot_uuid" pkgs) (getAttr "stefil" pkgs) ];
-  };
-  darts_dot_lib_dot_wbtree = {
-    pname = "darts.lib.wbtree";
-    version = "20211230-git";
-    asds = [ "darts.lib.wbtree" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/dartsclhashtree/2021-12-30/dartsclhashtree-20211230-git.tgz";
-      sha256 = "17h3s6n9l1vwllcig7g385qxcrp6f68zjcb2rygs8nhs5g7iqryc";
-      system = "darts.lib.wbtree";
-      asd = "darts.lib.wbtree";
-    });
-    systems = [ "darts.lib.wbtree" ];
-    lispLibs = [  ];
-  };
-  data-format-validation = {
-    pname = "data-format-validation";
-    version = "20140713-git";
-    asds = [ "data-format-validation" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-data-format-validation/2014-07-13/cl-data-format-validation-20140713-git.tgz";
-      sha256 = "0zmk47xmicyqvp1impn8kgh5373ysmx3gfpqcvbi9r31qsir2nqa";
-      system = "data-format-validation";
-      asd = "data-format-validation";
-    });
-    systems = [ "data-format-validation" ];
-    lispLibs = [ (getAttr "cl-ppcre" pkgs) ];
-  };
-  data-frame = {
-    pname = "data-frame";
-    version = "20221106-git";
-    asds = [ "data-frame" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/data-frame/2022-11-06/data-frame-20221106-git.tgz";
-      sha256 = "0bs1jh66bml25bj1lxdzz8cjhj3g060yyd5ggqsnsr4l2j0zyszv";
-      system = "data-frame";
-      asd = "data-frame";
-    });
-    systems = [ "data-frame" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "alexandria_plus" pkgs) (getAttr "anaphora" pkgs) (getAttr "array-operations" pkgs) (getAttr "duologue" pkgs) (getAttr "let-plus" pkgs) (getAttr "num-utils" pkgs) (getAttr "select" pkgs) (getAttr "statistics" pkgs) ];
-  };
-  data-frame_slash_tests = {
-    pname = "data-frame_tests";
-    version = "20221106-git";
-    asds = [ "data-frame" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/data-frame/2022-11-06/data-frame-20221106-git.tgz";
-      sha256 = "0bs1jh66bml25bj1lxdzz8cjhj3g060yyd5ggqsnsr4l2j0zyszv";
-      system = "data-frame";
-      asd = "data-frame";
-    });
-    systems = [ "data-frame/tests" ];
-    lispLibs = [ (getAttr "clunit2" pkgs) (getAttr "data-frame" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  data-lens = {
-    pname = "data-lens";
-    version = "20221106-git";
-    asds = [ "data-lens" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/data-lens/2022-11-06/data-lens-20221106-git.tgz";
-      sha256 = "08h8i1y0mzhwh0nb70y448zv12plgzwbbr32hsw2vzjbas31rv02";
-      system = "data-lens";
-      asd = "data-lens";
-    });
-    systems = [ "data-lens" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cl-ppcre" pkgs) ];
-  };
-  data-lens_slash_beta_slash_transducers = {
-    pname = "data-lens_beta_transducers";
-    version = "20221106-git";
-    asds = [ "data-lens" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/data-lens/2022-11-06/data-lens-20221106-git.tgz";
-      sha256 = "08h8i1y0mzhwh0nb70y448zv12plgzwbbr32hsw2vzjbas31rv02";
-      system = "data-lens";
-      asd = "data-lens";
-    });
-    systems = [ "data-lens/beta/transducers" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "data-lens" pkgs) (getAttr "serapeum" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  data-lens_slash_test = {
-    pname = "data-lens_test";
-    version = "20221106-git";
-    asds = [ "data-lens" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/data-lens/2022-11-06/data-lens-20221106-git.tgz";
-      sha256 = "08h8i1y0mzhwh0nb70y448zv12plgzwbbr32hsw2vzjbas31rv02";
-      system = "data-lens";
-      asd = "data-lens";
-    });
-    systems = [ "data-lens/test" ];
-    lispLibs = [ (getAttr "data-lens" pkgs) (getAttr "fiveam" pkgs) (getAttr "serapeum" pkgs) (getAttr "string-case" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  data-lens_slash_transducers_slash_test = {
-    pname = "data-lens_transducers_test";
-    version = "20221106-git";
-    asds = [ "data-lens" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/data-lens/2022-11-06/data-lens-20221106-git.tgz";
-      sha256 = "08h8i1y0mzhwh0nb70y448zv12plgzwbbr32hsw2vzjbas31rv02";
-      system = "data-lens";
-      asd = "data-lens";
-    });
-    systems = [ "data-lens/transducers/test" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "data-lens" pkgs) (getAttr "fiveam" pkgs) (getAttr "serapeum" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  data-sift = {
-    pname = "data-sift";
-    version = "20130128-git";
-    asds = [ "data-sift" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/data-sift/2013-01-28/data-sift-20130128-git.tgz";
-      sha256 = "1v7gf0x4ibjzp0c56n9m77hxdgwcm9356zlk5n4l3fx4i0hj6146";
-      system = "data-sift";
-      asd = "data-sift";
-    });
-    systems = [ "data-sift" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cl-ppcre" pkgs) (getAttr "parse-number" pkgs) (getAttr "puri" pkgs) ];
-  };
-  data-sift-test = {
-    pname = "data-sift-test";
-    version = "20130128-git";
-    asds = [ "data-sift-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/data-sift/2013-01-28/data-sift-20130128-git.tgz";
-      sha256 = "1v7gf0x4ibjzp0c56n9m77hxdgwcm9356zlk5n4l3fx4i0hj6146";
-      system = "data-sift-test";
-      asd = "data-sift";
-    });
-    systems = [ "data-sift-test" ];
-    lispLibs = [ (getAttr "data-sift" pkgs) (getAttr "lift" pkgs) ];
-  };
-  data-table = {
-    pname = "data-table";
-    version = "20221106-git";
-    asds = [ "data-table" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/data-table/2022-11-06/data-table-20221106-git.tgz";
-      sha256 = "0pin7hjsniz1ls3mrsjz6jqvlbbws8s4g7a0ks00dnwdm8nca6l3";
-      system = "data-table";
-      asd = "data-table";
-    });
-    systems = [ "data-table" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cl-interpol" pkgs) (getAttr "iterate" pkgs) (getAttr "symbol-munger" pkgs) ];
-  };
-  data-table-clsql = {
-    pname = "data-table-clsql";
-    version = "20221106-git";
-    asds = [ "data-table-clsql" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/data-table/2022-11-06/data-table-20221106-git.tgz";
-      sha256 = "0pin7hjsniz1ls3mrsjz6jqvlbbws8s4g7a0ks00dnwdm8nca6l3";
-      system = "data-table-clsql";
-      asd = "data-table-clsql";
-    });
-    systems = [ "data-table-clsql" ];
-    lispLibs = [ (getAttr "clsql" pkgs) (getAttr "clsql-helper" pkgs) (getAttr "collectors" pkgs) (getAttr "data-table" pkgs) (getAttr "iterate" pkgs) ];
-  };
-  data-table-test = {
-    pname = "data-table-test";
-    version = "20221106-git";
-    asds = [ "data-table-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/data-table/2022-11-06/data-table-20221106-git.tgz";
-      sha256 = "0pin7hjsniz1ls3mrsjz6jqvlbbws8s4g7a0ks00dnwdm8nca6l3";
-      system = "data-table-test";
-      asd = "data-table";
-    });
-    systems = [ "data-table-test" ];
-    lispLibs = [ (getAttr "data-table" pkgs) (getAttr "lisp-unit2" pkgs) ];
-  };
-  database-migrations = {
-    pname = "database-migrations";
-    version = "20180831-git";
-    asds = [ "database-migrations" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/database-migrations/2018-08-31/database-migrations-20180831-git.tgz";
-      sha256 = "1rina8j4hh06zc18sxl55r2gsq6x17sn1mjaihdvjyqa7f95s8rp";
-      system = "database-migrations";
-      asd = "database-migrations";
-    });
-    systems = [ "database-migrations" ];
-    lispLibs = [ (getAttr "postmodern" pkgs) ];
-  };
-  datafly = {
-    pname = "datafly";
-    version = "20200325-git";
-    asds = [ "datafly" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/datafly/2020-03-25/datafly-20200325-git.tgz";
-      sha256 = "16b78kzmglp2a4nxlxxl7rpf5zaibsgagn0p3c56fsxvx0c4hszv";
-      system = "datafly";
-      asd = "datafly";
-    });
-    systems = [ "datafly" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "babel" pkgs) (getAttr "dbi" pkgs) (getAttr "cl-syntax-annot" pkgs) (getAttr "closer-mop" pkgs) (getAttr "function-cache" pkgs) (getAttr "iterate" pkgs) (getAttr "jonathan" pkgs) (getAttr "kebab" pkgs) (getAttr "local-time" pkgs) (getAttr "log4cl" pkgs) (getAttr "optima" pkgs) (getAttr "sxql" pkgs) (getAttr "trivial-types" pkgs) ];
-  };
-  datafly-test = {
-    pname = "datafly-test";
-    version = "20200325-git";
-    asds = [ "datafly-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/datafly/2020-03-25/datafly-20200325-git.tgz";
-      sha256 = "16b78kzmglp2a4nxlxxl7rpf5zaibsgagn0p3c56fsxvx0c4hszv";
-      system = "datafly-test";
-      asd = "datafly-test";
-    });
-    systems = [ "datafly-test" ];
-    lispLibs = [ (getAttr "datafly" pkgs) (getAttr "prove" pkgs) (getAttr "prove-asdf" pkgs) (getAttr "sxql" pkgs) ];
-  };
-  dataloader = {
-    pname = "dataloader";
-    version = "20210531-git";
-    asds = [ "dataloader" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/dataloader/2021-05-31/dataloader-20210531-git.tgz";
-      sha256 = "1a7nap2yp0jjd9r3xpkj0a6z0m3gshz73abm8kfza4kf31ipzyik";
-      system = "dataloader";
-      asd = "dataloader";
-    });
-    systems = [ "dataloader" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cl-csv" pkgs) (getAttr "cl-jpeg" pkgs) (getAttr "png" pkgs) (getAttr "cl-wav" pkgs) (getAttr "iterate" pkgs) (getAttr "magicffi" pkgs) (getAttr "numcl" pkgs) (getAttr "numpy-file-format" pkgs) (getAttr "retrospectiff" pkgs) (getAttr "trivia" pkgs) ];
-  };
-  dataloader_dot_test = {
-    pname = "dataloader.test";
-    version = "20210531-git";
-    asds = [ "dataloader.test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/dataloader/2021-05-31/dataloader-20210531-git.tgz";
-      sha256 = "1a7nap2yp0jjd9r3xpkj0a6z0m3gshz73abm8kfza4kf31ipzyik";
-      system = "dataloader.test";
-      asd = "dataloader.test";
-    });
-    systems = [ "dataloader.test" ];
-    lispLibs = [ (getAttr "dataloader" pkgs) (getAttr "fiveam" pkgs) ];
-  };
-  datamuse = {
-    pname = "datamuse";
-    version = "20221106-git";
-    asds = [ "datamuse" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/datamuse/2022-11-06/datamuse-20221106-git.tgz";
-      sha256 = "1x37rjf2gyvlq6jlflw628g299qdgzb0bwiv3qxk0nv22an50rp0";
-      system = "datamuse";
-      asd = "datamuse";
-    });
-    systems = [ "datamuse" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "drakma" pkgs) (getAttr "yason" pkgs) ];
-  };
-  date-calc = {
-    pname = "date-calc";
-    version = "20191227-git";
-    asds = [ "date-calc" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/date-calc/2019-12-27/date-calc-20191227-git.tgz";
-      sha256 = "09wmjp3ypxigcmx4mvc0yjnj56wkjjchhssdmklbaswy5mi7xc9s";
-      system = "date-calc";
-      asd = "date-calc";
-    });
-    systems = [ "date-calc" ];
-    lispLibs = [  ];
-  };
-  date-calc_slash_test = {
-    pname = "date-calc_test";
-    version = "20191227-git";
-    asds = [ "date-calc" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/date-calc/2019-12-27/date-calc-20191227-git.tgz";
-      sha256 = "09wmjp3ypxigcmx4mvc0yjnj56wkjjchhssdmklbaswy5mi7xc9s";
-      system = "date-calc";
-      asd = "date-calc";
-    });
-    systems = [ "date-calc/test" ];
-    lispLibs = [ (getAttr "date-calc" pkgs) (getAttr "fiveam" pkgs) (getAttr "serapeum" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  datum-comments = {
-    pname = "datum-comments";
-    version = "20210228-git";
-    asds = [ "datum-comments" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/datum-comments/2021-02-28/datum-comments-20210228-git.tgz";
-      sha256 = "07zzlhphcmwimp4pjckhnbjbn127lcpafi7j0l74137dz9pimjik";
-      system = "datum-comments";
-      asd = "datum-comments";
-    });
-    systems = [ "datum-comments" ];
-    lispLibs = [  ];
-  };
-  datum-comments_slash_test = {
-    pname = "datum-comments_test";
-    version = "20210228-git";
-    asds = [ "datum-comments" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/datum-comments/2021-02-28/datum-comments-20210228-git.tgz";
-      sha256 = "07zzlhphcmwimp4pjckhnbjbn127lcpafi7j0l74137dz9pimjik";
-      system = "datum-comments";
-      asd = "datum-comments";
-    });
-    systems = [ "datum-comments/test" ];
-    lispLibs = [ (getAttr "datum-comments" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  db3 = {
-    pname = "db3";
-    version = "20200218-git";
-    asds = [ "db3" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-db3/2020-02-18/cl-db3-20200218-git.tgz";
-      sha256 = "1i7j0mlri6kbklcx1lsm464s8kmyhhij5c4xh4aybrw8m4ixn1s5";
-      system = "db3";
-      asd = "db3";
-    });
-    systems = [ "db3" ];
-    lispLibs = [  ];
-  };
-  dbd-mysql = {
-    pname = "dbd-mysql";
-    version = "20211020-git";
-    asds = [ "dbd-mysql" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-dbi/2021-10-20/cl-dbi-20211020-git.tgz";
-      sha256 = "0f8z7an8ssg8mdf9k781r4ygdppv798v6f08ibgpd8mv8a6491fg";
-      system = "dbd-mysql";
-      asd = "dbd-mysql";
-    });
-    systems = [ "dbd-mysql" ];
-    lispLibs = [ (getAttr "dbi" pkgs) (getAttr "cl-mysql" pkgs) ];
-  };
-  dbd-postgres = {
-    pname = "dbd-postgres";
-    version = "20211020-git";
-    asds = [ "dbd-postgres" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-dbi/2021-10-20/cl-dbi-20211020-git.tgz";
-      sha256 = "0f8z7an8ssg8mdf9k781r4ygdppv798v6f08ibgpd8mv8a6491fg";
-      system = "dbd-postgres";
-      asd = "dbd-postgres";
-    });
-    systems = [ "dbd-postgres" ];
-    lispLibs = [ (getAttr "dbi" pkgs) (getAttr "cl-postgres" pkgs) (getAttr "trivial-garbage" pkgs) ];
-  };
-  dbd-sqlite3 = {
-    pname = "dbd-sqlite3";
-    version = "20211020-git";
-    asds = [ "dbd-sqlite3" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-dbi/2021-10-20/cl-dbi-20211020-git.tgz";
-      sha256 = "0f8z7an8ssg8mdf9k781r4ygdppv798v6f08ibgpd8mv8a6491fg";
-      system = "dbd-sqlite3";
-      asd = "dbd-sqlite3";
-    });
-    systems = [ "dbd-sqlite3" ];
-    lispLibs = [ (getAttr "dbi" pkgs) (getAttr "sqlite" pkgs) (getAttr "trivial-garbage" pkgs) ];
-  };
-  dbi = {
-    pname = "dbi";
-    version = "20211020-git";
-    asds = [ "dbi" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-dbi/2021-10-20/cl-dbi-20211020-git.tgz";
-      sha256 = "0f8z7an8ssg8mdf9k781r4ygdppv798v6f08ibgpd8mv8a6491fg";
-      system = "dbi";
-      asd = "dbi";
-    });
-    systems = [ "dbi" ];
-    lispLibs = [ (getAttr "bordeaux-threads" pkgs) (getAttr "closer-mop" pkgs) (getAttr "split-sequence" pkgs) ];
-  };
-  dbi-test = {
-    pname = "dbi-test";
-    version = "20211020-git";
-    asds = [ "dbi-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-dbi/2021-10-20/cl-dbi-20211020-git.tgz";
-      sha256 = "0f8z7an8ssg8mdf9k781r4ygdppv798v6f08ibgpd8mv8a6491fg";
-      system = "dbi-test";
-      asd = "dbi-test";
-    });
-    systems = [ "dbi-test" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "dbi" pkgs) (getAttr "rove" pkgs) (getAttr "trivial-types" pkgs) ];
-  };
-  dbi_slash_test = {
-    pname = "dbi_test";
-    version = "20211020-git";
-    asds = [ "dbi" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-dbi/2021-10-20/cl-dbi-20211020-git.tgz";
-      sha256 = "0f8z7an8ssg8mdf9k781r4ygdppv798v6f08ibgpd8mv8a6491fg";
-      system = "dbi";
-      asd = "dbi";
-    });
-    systems = [ "dbi/test" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "dbd-mysql" pkgs) (getAttr "dbd-postgres" pkgs) (getAttr "dbd-sqlite3" pkgs) (getAttr "dbi" pkgs) (getAttr "dbi-test" pkgs) (getAttr "closer-mop" pkgs) (getAttr "rove" pkgs) (getAttr "trivial-types" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  dbus = {
-    pname = "dbus";
-    version = "20211020-git";
-    asds = [ "dbus" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/dbus/2021-10-20/dbus-20211020-git.tgz";
-      sha256 = "1gw5414q7r6yi2bm1wk2fhqnvhxzc5c6812z3qh67c9dyizcjy2a";
-      system = "dbus";
-      asd = "dbus";
-    });
-    systems = [ "dbus" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "asdf-package-system" pkgs) (getAttr "babel" pkgs) (getAttr "cl-xmlspam" pkgs) (getAttr "flexi-streams" pkgs) (getAttr "ieee-floats" pkgs) (getAttr "iolib" pkgs) (getAttr "ironclad" pkgs) (getAttr "split-sequence" pkgs) (getAttr "trivial-garbage" pkgs) ];
-  };
-  dct = {
-    pname = "dct";
-    version = "20220331-git";
-    asds = [ "dct" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-dct/2022-03-31/cl-dct-20220331-git.tgz";
-      sha256 = "1rzq4vdhvr454668a3xf56mha061d27ymsgawmxikgk86wi8biin";
-      system = "dct";
-      asd = "dct";
-    });
-    systems = [ "dct" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) ];
-  };
-  dct-test = {
-    pname = "dct-test";
-    version = "20220331-git";
-    asds = [ "dct-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-dct/2022-03-31/cl-dct-20220331-git.tgz";
-      sha256 = "1rzq4vdhvr454668a3xf56mha061d27ymsgawmxikgk86wi8biin";
-      system = "dct-test";
-      asd = "dct-test";
-    });
-    systems = [ "dct-test" ];
-    lispLibs = [ (getAttr "babel" pkgs) (getAttr "cl-coveralls" pkgs) (getAttr "dct" pkgs) (getAttr "lisp-unit" pkgs) (getAttr "trivial-features" pkgs) ];
-  };
-  ddo = {
-    pname = "ddo";
-    version = "20210411-git";
-    asds = [ "ddo" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/femlisp/2021-04-11/femlisp-20210411-git.tgz";
-      sha256 = "08l2x1jq3vfhh8m14wijd8c78n589cy5hd2py2jfj3yfiqyipasa";
-      system = "ddo";
-      asd = "ddo";
-    });
-    systems = [ "ddo" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cl-mpi" pkgs) (getAttr "cl-mpi-extensions" pkgs) (getAttr "femlisp-basic" pkgs) (getAttr "femlisp-dictionary" pkgs) (getAttr "femlisp-parallel" pkgs) (getAttr "lfarm-admin" pkgs) (getAttr "lfarm-client" pkgs) (getAttr "lfarm-server" pkgs) (getAttr "trees" pkgs) (getAttr "uiop" pkgs) ];
-  };
-  de-mock-racy = {
-    pname = "de-mock-racy";
-    version = "20221106-git";
-    asds = [ "de-mock-racy" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/de-mock-racy/2022-11-06/de-mock-racy-20221106-git.tgz";
-      sha256 = "02rkg1i5r8fgyhaipb0mkz543c8r81kqmwmmvywnnw8hpyvav2xb";
-      system = "de-mock-racy";
-      asd = "de-mock-racy";
-    });
-    systems = [ "de-mock-racy" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) ];
-  };
-  dealii-tutorial = {
-    pname = "dealii-tutorial";
-    version = "20210411-git";
-    asds = [ "dealii-tutorial" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/femlisp/2021-04-11/femlisp-20210411-git.tgz";
-      sha256 = "08l2x1jq3vfhh8m14wijd8c78n589cy5hd2py2jfj3yfiqyipasa";
-      system = "dealii-tutorial";
-      asd = "dealii-tutorial";
-    });
-    systems = [ "dealii-tutorial" ];
-    lispLibs = [ (getAttr "femlisp" pkgs) ];
-  };
-  decimals = {
-    pname = "decimals";
-    version = "20211209-git";
-    asds = [ "decimals" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-decimals/2021-12-09/cl-decimals-20211209-git.tgz";
-      sha256 = "0wn5hq1pwd3wpjqqhpjzarcdk1q6416g8y447iaf55j5nbhlmbn6";
-      system = "decimals";
-      asd = "decimals";
-    });
-    systems = [ "decimals" ];
-    lispLibs = [  ];
-  };
-  deeds = {
-    pname = "deeds";
-    version = "20200715-git";
-    asds = [ "deeds" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/deeds/2020-07-15/deeds-20200715-git.tgz";
-      sha256 = "062cnb2dwli6pw3zvv46jfxyxdzcbzwsck5pa6nw03qf1j1hyg3k";
-      system = "deeds";
-      asd = "deeds";
-    });
-    systems = [ "deeds" ];
-    lispLibs = [ (getAttr "bordeaux-threads" pkgs) (getAttr "closer-mop" pkgs) (getAttr "form-fiddle" pkgs) (getAttr "lambda-fiddle" pkgs) ];
-  };
-  defclass-std = {
-    pname = "defclass-std";
-    version = "20201220-git";
-    asds = [ "defclass-std" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/defclass-std/2020-12-20/defclass-std-20201220-git.tgz";
-      sha256 = "1c0ymb49wd205lzxmnmsrpqyv0pn61snn2xvsbk5iis135r4fr18";
-      system = "defclass-std";
-      asd = "defclass-std";
-    });
-    systems = [ "defclass-std" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "anaphora" pkgs) ];
-  };
-  defclass-std-test = {
-    pname = "defclass-std-test";
-    version = "20201220-git";
-    asds = [ "defclass-std-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/defclass-std/2020-12-20/defclass-std-20201220-git.tgz";
-      sha256 = "1c0ymb49wd205lzxmnmsrpqyv0pn61snn2xvsbk5iis135r4fr18";
-      system = "defclass-std-test";
-      asd = "defclass-std-test";
-    });
-    systems = [ "defclass-std-test" ];
-    lispLibs = [ (getAttr "defclass-std" pkgs) (getAttr "prove" pkgs) (getAttr "prove-asdf" pkgs) ];
-  };
-  defconfig = {
-    pname = "defconfig";
-    version = "20211209-git";
-    asds = [ "defconfig" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/defconfig/2021-12-09/defconfig-20211209-git.tgz";
-      sha256 = "1gvgni43fxknj800k2k7jhgayzqqqp3s321sw4qmsjxpv479hcqy";
-      system = "defconfig";
-      asd = "defconfig";
-    });
-    systems = [ "defconfig" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "trivial-cltl2" pkgs) ];
-  };
-  defconfig_slash_tests = {
-    pname = "defconfig_tests";
-    version = "20211209-git";
-    asds = [ "defconfig" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/defconfig/2021-12-09/defconfig-20211209-git.tgz";
-      sha256 = "1gvgni43fxknj800k2k7jhgayzqqqp3s321sw4qmsjxpv479hcqy";
-      system = "defconfig";
-      asd = "defconfig";
-    });
-    systems = [ "defconfig/tests" ];
-    lispLibs = [ (getAttr "defconfig" pkgs) (getAttr "fiveam" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  defenum = {
-    pname = "defenum";
-    version = "20211230-git";
-    asds = [ "defenum" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/defenum/2021-12-30/defenum-20211230-git.tgz";
-      sha256 = "1pya5xqr2y8zfsv7a6k0q3s6fhz7shx8b3fxll111jq56150ls98";
-      system = "defenum";
-      asd = "defenum";
-    });
-    systems = [ "defenum" ];
-    lispLibs = [  ];
-  };
-  deferred = {
-    pname = "deferred";
-    version = "20190710-git";
-    asds = [ "deferred" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/deferred/2019-07-10/deferred-20190710-git.tgz";
-      sha256 = "1pcbzvambkqacs4pcww7wc9g7jjv0x7a8iwbk2b16l8x0rc0izx5";
-      system = "deferred";
-      asd = "deferred";
-    });
-    systems = [ "deferred" ];
-    lispLibs = [ (getAttr "named-readtables" pkgs) ];
-  };
-  define-json-expander = {
-    pname = "define-json-expander";
-    version = "20140713-git";
-    asds = [ "define-json-expander" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/define-json-expander/2014-07-13/define-json-expander-20140713-git.tgz";
-      sha256 = "193mhjcy1qnfd7r7zia3qs8p7gllvq6s0b2wcqmkh0y17aw8brkh";
-      system = "define-json-expander";
-      asd = "define-json-expander";
-    });
-    systems = [ "define-json-expander" ];
-    lispLibs = [  ];
-  };
-  definer = {
-    pname = "definer";
-    version = "20211230-git";
-    asds = [ "definer" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/definer/2021-12-30/definer-20211230-git.tgz";
-      sha256 = "0wgg6c9la1asq7hpyacyi8l3fb80hnpscygsxsg0yjk2s2h5gsk7";
-      system = "definer";
-      asd = "definer";
-    });
-    systems = [ "definer" ];
-    lispLibs = [  ];
-  };
-  definitions = {
-    pname = "definitions";
-    version = "20210531-git";
-    asds = [ "definitions" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/definitions/2021-05-31/definitions-20210531-git.tgz";
-      sha256 = "16dh9iy3v344xj4qllsp47007px3yx26fxxh9gh2cvs8dqgk3kch";
-      system = "definitions";
-      asd = "definitions";
-    });
-    systems = [ "definitions" ];
-    lispLibs = [ (getAttr "documentation-utils" pkgs) ];
-  };
-  definitions-systems = {
-    pname = "definitions-systems";
-    version = "2.0.1";
-    asds = [ "definitions-systems" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/definitions-systems/2021-04-11/definitions-systems_2.0.1.tgz";
-      sha256 = "009392mj0qdq4jy0dw5r41schnygwj286759yvyg7xja30a0psfq";
-      system = "definitions-systems";
-      asd = "definitions-systems";
-    });
-    systems = [ "definitions-systems" ];
-    lispLibs = [ (getAttr "canonicalized-initargs" pkgs) (getAttr "enhanced-defclass" pkgs) (getAttr "enhanced-find-class" pkgs) (getAttr "shared-preferences" pkgs) ];
-  };
-  definitions-systems_tests = {
-    pname = "definitions-systems_tests";
-    version = "2.0.1";
-    asds = [ "definitions-systems_tests" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/definitions-systems/2021-04-11/definitions-systems_2.0.1.tgz";
-      sha256 = "009392mj0qdq4jy0dw5r41schnygwj286759yvyg7xja30a0psfq";
-      system = "definitions-systems_tests";
-      asd = "definitions-systems_tests";
-    });
-    systems = [ "definitions-systems_tests" ];
-    lispLibs = [ (getAttr "definitions-systems" pkgs) (getAttr "parachute" pkgs) ];
-  };
-  deflate = {
-    pname = "deflate";
-    version = "20200218-git";
-    asds = [ "deflate" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/deflate/2020-02-18/deflate-20200218-git.tgz";
-      sha256 = "1jpdjnxh6cw2d8hk70r2sxn92is52s9b855irvwkdd777fdciids";
-      system = "deflate";
-      asd = "deflate";
-    });
-    systems = [ "deflate" ];
-    lispLibs = [  ];
-  };
-  deflazy = {
-    pname = "deflazy";
-    version = "20200427-git";
-    asds = [ "deflazy" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/sucle/2020-04-27/sucle-20200427-git.tgz";
-      sha256 = "033akkn9zxc6qdgycgxgybx3v23638245xrx29x2cbwnvg3i1q34";
-      system = "deflazy";
-      asd = "deflazy";
-    });
-    systems = [ "deflazy" ];
-    lispLibs = [ (getAttr "bordeaux-threads" pkgs) (getAttr "uncommon-lisp" pkgs) (getAttr "utility" pkgs) ];
-  };
-  defmain = {
-    pname = "defmain";
-    version = "20221106-git";
-    asds = [ "defmain" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/defmain/2022-11-06/defmain-20221106-git.tgz";
-      sha256 = "08mmb0rgbipmjhmpvr1889n1665309pwsa16qsrsbmgnmmaznw6a";
-      system = "defmain";
-      asd = "defmain";
-    });
-    systems = [ "defmain" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "net_dot_didierverna_dot_clon_dot_core" pkgs) (getAttr "cl-inflector" pkgs) (getAttr "cl-strings" pkgs) (getAttr "_40ants-doc" pkgs) (getAttr "docs-config" pkgs) (getAttr "named-readtables" pkgs) (getAttr "pythonic-string-reader" pkgs) (getAttr "uiop" pkgs) ];
-  };
-  defmain-test = {
-    pname = "defmain-test";
-    version = "20221106-git";
-    asds = [ "defmain-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/defmain/2022-11-06/defmain-20221106-git.tgz";
-      sha256 = "08mmb0rgbipmjhmpvr1889n1665309pwsa16qsrsbmgnmmaznw6a";
-      system = "defmain-test";
-      asd = "defmain-test";
-    });
-    systems = [ "defmain-test" ];
-    lispLibs = [ (getAttr "hamcrest" pkgs) (getAttr "defmain" pkgs) (getAttr "rove" pkgs) ];
-  };
-  defmemo = {
-    pname = "defmemo";
-    version = "20120407-git";
-    asds = [ "defmemo" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/defmemo/2012-04-07/defmemo-20120407-git.tgz";
-      sha256 = "0rkvnjfb6fajzfzislz6z372bqpkj6wfbf0sxmzhhigni4wnil27";
-      system = "defmemo";
-      asd = "defmemo";
-    });
-    systems = [ "defmemo" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "trivial-garbage" pkgs) ];
-  };
-  defmemo-test = {
-    pname = "defmemo-test";
-    version = "20120407-git";
-    asds = [ "defmemo-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/defmemo/2012-04-07/defmemo-20120407-git.tgz";
-      sha256 = "0rkvnjfb6fajzfzislz6z372bqpkj6wfbf0sxmzhhigni4wnil27";
-      system = "defmemo-test";
-      asd = "defmemo";
-    });
-    systems = [ "defmemo-test" ];
-    lispLibs = [ (getAttr "defmemo" pkgs) ];
-  };
-  defpackage-plus = {
-    pname = "defpackage-plus";
-    version = "20180131-git";
-    asds = [ "defpackage-plus" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/defpackage-plus/2018-01-31/defpackage-plus-20180131-git.tgz";
-      sha256 = "0lzljvf343xb6mlh6lni2i27hpm5qd376522mk6hr2pa20vd6rdq";
-      system = "defpackage-plus";
-      asd = "defpackage-plus";
-    });
-    systems = [ "defpackage-plus" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) ];
-  };
-  defrec = {
-    pname = "defrec";
-    version = "20190307-hg";
-    asds = [ "defrec" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/defrec/2019-03-07/defrec-20190307-hg.tgz";
-      sha256 = "1hk70y79wpdp16586yl550xh0zmybxhr25x2y2d9in65ghaz6fk0";
-      system = "defrec";
-      asd = "defrec";
-    });
-    systems = [ "defrec" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) ];
-  };
-  defrest = {
-    pname = "defrest";
-    version = "20210531-git";
-    asds = [ "defrest" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/defrest/2021-05-31/defrest-20210531-git.tgz";
-      sha256 = "14pap344a0549mb7p79jf87ibfxmymk0hf9i7galcfi4s8nqq45g";
-      system = "defrest";
-      asd = "defrest";
-    });
-    systems = [ "defrest" ];
-    lispLibs = [ (getAttr "cl-ppcre" pkgs) (getAttr "hunchentoot" pkgs) (getAttr "quri" pkgs) (getAttr "split-sequence" pkgs) ];
-  };
-  defrest_dot_test = {
-    pname = "defrest.test";
-    version = "20210531-git";
-    asds = [ "defrest.test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/defrest/2021-05-31/defrest-20210531-git.tgz";
-      sha256 = "14pap344a0549mb7p79jf87ibfxmymk0hf9i7galcfi4s8nqq45g";
-      system = "defrest.test";
-      asd = "defrest";
-    });
-    systems = [ "defrest.test" ];
-    lispLibs = [ (getAttr "defrest" pkgs) (getAttr "drakma" pkgs) (getAttr "fiveam" pkgs) ];
-  };
-  defstar = {
-    pname = "defstar";
-    version = "20140713-git";
-    asds = [ "defstar" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/defstar/2014-07-13/defstar-20140713-git.tgz";
-      sha256 = "0n6m3aqvdfnsrhlhqjcy72d1i55lbkjg13ij5c7vw003p1n78wxi";
-      system = "defstar";
-      asd = "defstar";
-    });
-    systems = [ "defstar" ];
-    lispLibs = [  ];
-  };
-  defsystem-compatibility = {
-    pname = "defsystem-compatibility";
-    version = "20101006-darcs";
-    asds = [ "defsystem-compatibility" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/defsystem-compatibility/2010-10-06/defsystem-compatibility-20101006-darcs.tgz";
-      sha256 = "0bw0c69zyika19rvzl8xplwrqsgznhnlbj40fcszfw0vxh2czj0f";
-      system = "defsystem-compatibility";
-      asd = "defsystem-compatibility";
-    });
-    systems = [ "defsystem-compatibility" ];
-    lispLibs = [ (getAttr "metatilities-base" pkgs) ];
-  };
-  defsystem-compatibility-test = {
-    pname = "defsystem-compatibility-test";
-    version = "20101006-darcs";
-    asds = [ "defsystem-compatibility-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/defsystem-compatibility/2010-10-06/defsystem-compatibility-20101006-darcs.tgz";
-      sha256 = "0bw0c69zyika19rvzl8xplwrqsgznhnlbj40fcszfw0vxh2czj0f";
-      system = "defsystem-compatibility-test";
-      asd = "defsystem-compatibility-test";
-    });
-    systems = [ "defsystem-compatibility-test" ];
-    lispLibs = [ (getAttr "defsystem-compatibility" pkgs) (getAttr "lift" pkgs) ];
-  };
-  defvariant = {
-    pname = "defvariant";
-    version = "20140713-git";
-    asds = [ "defvariant" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/defvariant/2014-07-13/defvariant-20140713-git.tgz";
-      sha256 = "0rma557l2irjyzrswcd7329iic2pjxw0jgk3m2inag39l6wyqsr1";
-      system = "defvariant";
-      asd = "defvariant";
-    });
-    systems = [ "defvariant" ];
-    lispLibs = [  ];
-  };
-  delorean = {
-    pname = "delorean";
-    version = "20130615-git";
-    asds = [ "delorean" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/delorean/2013-06-15/delorean-20130615-git.tgz";
-      sha256 = "0q11wqdlvis91i996mar72icw07yf7mwmsnlmsbsya9kaqj7n3cd";
-      system = "delorean";
-      asd = "delorean";
-    });
-    systems = [ "delorean" ];
-    lispLibs = [ (getAttr "local-time" pkgs) ];
-  };
-  delorean-test = {
-    pname = "delorean-test";
-    version = "20130615-git";
-    asds = [ "delorean-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/delorean/2013-06-15/delorean-20130615-git.tgz";
-      sha256 = "0q11wqdlvis91i996mar72icw07yf7mwmsnlmsbsya9kaqj7n3cd";
-      system = "delorean-test";
-      asd = "delorean";
-    });
-    systems = [ "delorean-test" ];
-    lispLibs = [ (getAttr "delorean" pkgs) (getAttr "fiveam" pkgs) ];
-  };
-  delta-debug = {
-    pname = "delta-debug";
-    version = "20180831-git";
-    asds = [ "delta-debug" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/delta-debug/2018-08-31/delta-debug-20180831-git.tgz";
-      sha256 = "0dm33v8ipkpr23mjb9s6z2c7gmxwjbd5khc7c1vangba18nzm7ir";
-      system = "delta-debug";
-      asd = "delta-debug";
-    });
-    systems = [ "delta-debug" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "curry-compose-reader-macros" pkgs) (getAttr "named-readtables" pkgs) ];
-  };
-  delta-debug_slash_delta = {
-    pname = "delta-debug_delta";
-    version = "20180831-git";
-    asds = [ "delta-debug" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/delta-debug/2018-08-31/delta-debug-20180831-git.tgz";
-      sha256 = "0dm33v8ipkpr23mjb9s6z2c7gmxwjbd5khc7c1vangba18nzm7ir";
-      system = "delta-debug";
-      asd = "delta-debug";
-    });
-    systems = [ "delta-debug/delta" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "curry-compose-reader-macros" pkgs) (getAttr "delta-debug" pkgs) (getAttr "diff" pkgs) (getAttr "metabang-bind" pkgs) (getAttr "split-sequence" pkgs) (getAttr "trivial-shell" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  delta-debug_slash_test = {
-    pname = "delta-debug_test";
-    version = "20180831-git";
-    asds = [ "delta-debug" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/delta-debug/2018-08-31/delta-debug-20180831-git.tgz";
-      sha256 = "0dm33v8ipkpr23mjb9s6z2c7gmxwjbd5khc7c1vangba18nzm7ir";
-      system = "delta-debug";
-      asd = "delta-debug";
-    });
-    systems = [ "delta-debug/test" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "curry-compose-reader-macros" pkgs) (getAttr "delta-debug" pkgs) (getAttr "stefil" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  dendrite = {
-    pname = "dendrite";
-    version = "release-quicklisp-409b1061-git";
-    asds = [ "dendrite" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/dendrite/2017-10-23/dendrite-release-quicklisp-409b1061-git.tgz";
-      sha256 = "1fsi77w2yamis2707f1hx09pmyjaxqpzl8s0h182vpz159lkxdy5";
-      system = "dendrite";
-      asd = "dendrite";
-    });
-    systems = [ "dendrite" ];
-    lispLibs = [ (getAttr "dendrite_dot_micro-l-system" pkgs) (getAttr "dendrite_dot_primitives" pkgs) ];
-  };
-  dendrite_dot_micro-l-system = {
-    pname = "dendrite.micro-l-system";
-    version = "release-quicklisp-409b1061-git";
-    asds = [ "dendrite.micro-l-system" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/dendrite/2017-10-23/dendrite-release-quicklisp-409b1061-git.tgz";
-      sha256 = "1fsi77w2yamis2707f1hx09pmyjaxqpzl8s0h182vpz159lkxdy5";
-      system = "dendrite.micro-l-system";
-      asd = "dendrite.micro-l-system";
-    });
-    systems = [ "dendrite.micro-l-system" ];
-    lispLibs = [  ];
-  };
-  dendrite_dot_primitives = {
-    pname = "dendrite.primitives";
-    version = "release-quicklisp-409b1061-git";
-    asds = [ "dendrite.primitives" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/dendrite/2017-10-23/dendrite-release-quicklisp-409b1061-git.tgz";
-      sha256 = "1fsi77w2yamis2707f1hx09pmyjaxqpzl8s0h182vpz159lkxdy5";
-      system = "dendrite.primitives";
-      asd = "dendrite.primitives";
-    });
-    systems = [ "dendrite.primitives" ];
-    lispLibs = [ (getAttr "cffi" pkgs) (getAttr "rtg-math" pkgs) ];
-  };
-  dense-arrays = {
-    pname = "dense-arrays";
-    version = "20221106-git";
-    asds = [ "dense-arrays" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/dense-arrays/2022-11-06/dense-arrays-20221106-git.tgz";
-      sha256 = "1601pv6ml5hljax3w5s480avrb4vrmzm8z2853kfd41mpzgk9nri";
-      system = "dense-arrays";
-      asd = "dense-arrays";
-    });
-    systems = [ "dense-arrays" ];
-    lispLibs = [ (getAttr "abstract-arrays" pkgs) (getAttr "alexandria" pkgs) (getAttr "cl-form-types" pkgs) (getAttr "closer-mop" pkgs) (getAttr "compiler-macro-notes" pkgs) (getAttr "fiveam" pkgs) (getAttr "iterate" pkgs) (getAttr "polymorphic-functions" pkgs) (getAttr "trivial-garbage" pkgs) (getAttr "trivial-types" pkgs) (getAttr "uiop" pkgs) ];
-  };
-  dense-arrays_plus_cuda = {
-    pname = "dense-arrays+cuda";
-    version = "20221106-git";
-    asds = [ "dense-arrays+cuda" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/dense-arrays/2022-11-06/dense-arrays-20221106-git.tgz";
-      sha256 = "1601pv6ml5hljax3w5s480avrb4vrmzm8z2853kfd41mpzgk9nri";
-      system = "dense-arrays+cuda";
-      asd = "dense-arrays+cuda";
-    });
-    systems = [ "dense-arrays+cuda" ];
-    lispLibs = [ (getAttr "cl-cuda" pkgs) (getAttr "dense-arrays" pkgs) ];
-  };
-  dense-arrays_plus_magicl = {
-    pname = "dense-arrays+magicl";
-    version = "20221106-git";
-    asds = [ "dense-arrays+magicl" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/dense-arrays/2022-11-06/dense-arrays-20221106-git.tgz";
-      sha256 = "1601pv6ml5hljax3w5s480avrb4vrmzm8z2853kfd41mpzgk9nri";
-      system = "dense-arrays+magicl";
-      asd = "dense-arrays+magicl";
-    });
-    systems = [ "dense-arrays+magicl" ];
-    lispLibs = [ (getAttr "dense-arrays" pkgs) (getAttr "magicl" pkgs) ];
-  };
-  dense-arrays_plus_static-vectors = {
-    pname = "dense-arrays+static-vectors";
-    version = "20221106-git";
-    asds = [ "dense-arrays+static-vectors" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/dense-arrays/2022-11-06/dense-arrays-20221106-git.tgz";
-      sha256 = "1601pv6ml5hljax3w5s480avrb4vrmzm8z2853kfd41mpzgk9nri";
-      system = "dense-arrays+static-vectors";
-      asd = "dense-arrays+static-vectors";
-    });
-    systems = [ "dense-arrays+static-vectors" ];
-    lispLibs = [ (getAttr "dense-arrays" pkgs) (getAttr "static-vectors" pkgs) ];
-  };
-  dense-arrays-plus = {
-    pname = "dense-arrays-plus";
-    version = "20221106-git";
-    asds = [ "dense-arrays-plus" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/dense-arrays/2022-11-06/dense-arrays-20221106-git.tgz";
-      sha256 = "1601pv6ml5hljax3w5s480avrb4vrmzm8z2853kfd41mpzgk9nri";
-      system = "dense-arrays-plus";
-      asd = "dense-arrays-plus";
-    });
-    systems = [ "dense-arrays-plus" ];
-    lispLibs = [ (getAttr "dense-arrays_plus_static-vectors" pkgs) (getAttr "dense-arrays-plus-lite" pkgs) (getAttr "fiveam" pkgs) (getAttr "generic-cl" pkgs) (getAttr "py4cl2" pkgs) (getAttr "reader" pkgs) ];
-  };
-  dense-arrays-plus-lite = {
-    pname = "dense-arrays-plus-lite";
-    version = "20221106-git";
-    asds = [ "dense-arrays-plus-lite" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/dense-arrays/2022-11-06/dense-arrays-20221106-git.tgz";
-      sha256 = "1601pv6ml5hljax3w5s480avrb4vrmzm8z2853kfd41mpzgk9nri";
-      system = "dense-arrays-plus-lite";
-      asd = "dense-arrays-plus-lite";
-    });
-    systems = [ "dense-arrays-plus-lite" ];
-    lispLibs = [ (getAttr "dense-arrays" pkgs) (getAttr "trivial-coerce" pkgs) (getAttr "uiop" pkgs) ];
-  };
-  dense-numericals = {
-    pname = "dense-numericals";
-    version = "2022.09.0";
-    asds = [ "dense-numericals" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/numericals/2022-11-06/numericals-2022.09.0.tgz";
-      sha256 = "0hfyd045yq7pr4sh9xgqag67yrvnfia1h8ycnxss244zrziabyci";
-      system = "dense-numericals";
-      asd = "dense-numericals";
-    });
-    systems = [ "dense-numericals" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cffi" pkgs) (getAttr "cl-autowrap" pkgs) (getAttr "bmas" pkgs) (getAttr "dense-arrays_plus_static-vectors" pkgs) (getAttr "dense-arrays-plus-lite" pkgs) (getAttr "fiveam" pkgs) (getAttr "iterate" pkgs) (getAttr "lparallel" pkgs) (getAttr "magicl" pkgs) (getAttr "numericals_dot_common" pkgs) (getAttr "policy-cond" pkgs) (getAttr "polymorphic-functions" pkgs) (getAttr "swank" pkgs) (getAttr "trivial-coerce" pkgs) (getAttr "trivial-package-local-nicknames" pkgs) (getAttr "uiop" pkgs) ];
-  };
-  deoxybyte-gzip = {
-    pname = "deoxybyte-gzip";
-    version = "20140113-git";
-    asds = [ "deoxybyte-gzip" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/deoxybyte-gzip/2014-01-13/deoxybyte-gzip-20140113-git.tgz";
-      sha256 = "0ccci902nxqhdlskw3pghcjg0vgl10xlh16cb5b631j3n2ajfa16";
-      system = "deoxybyte-gzip";
-      asd = "deoxybyte-gzip";
-    });
-    systems = [ "deoxybyte-gzip" ];
-    lispLibs = [ (getAttr "deoxybyte-io" pkgs) (getAttr "deoxybyte-systems" pkgs) (getAttr "deoxybyte-unix" pkgs) ];
-  };
-  deoxybyte-gzip-test = {
-    pname = "deoxybyte-gzip-test";
-    version = "20140113-git";
-    asds = [ "deoxybyte-gzip-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/deoxybyte-gzip/2014-01-13/deoxybyte-gzip-20140113-git.tgz";
-      sha256 = "0ccci902nxqhdlskw3pghcjg0vgl10xlh16cb5b631j3n2ajfa16";
-      system = "deoxybyte-gzip-test";
-      asd = "deoxybyte-gzip-test";
-    });
-    systems = [ "deoxybyte-gzip-test" ];
-    lispLibs = [ (getAttr "deoxybyte-gzip" pkgs) (getAttr "lift" pkgs) ];
-  };
-  deoxybyte-io = {
-    pname = "deoxybyte-io";
-    version = "20140113-git";
-    asds = [ "deoxybyte-io" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/deoxybyte-io/2014-01-13/deoxybyte-io-20140113-git.tgz";
-      sha256 = "0pjx96g50yqhdk0l1y970hc22fc1bl8ppyklhp62l41b4fb7hbbv";
-      system = "deoxybyte-io";
-      asd = "deoxybyte-io";
-    });
-    systems = [ "deoxybyte-io" ];
-    lispLibs = [ (getAttr "cl-fad" pkgs) (getAttr "deoxybyte-systems" pkgs) (getAttr "deoxybyte-utilities" pkgs) (getAttr "getopt" pkgs) ];
-  };
-  deoxybyte-io-test = {
-    pname = "deoxybyte-io-test";
-    version = "20140113-git";
-    asds = [ "deoxybyte-io-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/deoxybyte-io/2014-01-13/deoxybyte-io-20140113-git.tgz";
-      sha256 = "0pjx96g50yqhdk0l1y970hc22fc1bl8ppyklhp62l41b4fb7hbbv";
-      system = "deoxybyte-io-test";
-      asd = "deoxybyte-io-test";
-    });
-    systems = [ "deoxybyte-io-test" ];
-    lispLibs = [ (getAttr "deoxybyte-io" pkgs) (getAttr "lift" pkgs) ];
-  };
-  deoxybyte-systems = {
-    pname = "deoxybyte-systems";
-    version = "20140113-git";
-    asds = [ "deoxybyte-systems" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/deoxybyte-systems/2014-01-13/deoxybyte-systems-20140113-git.tgz";
-      sha256 = "0sbzl0ngz85mvkghcy8y94hk34v5hvi41b111mb76f2jvdq9jjr8";
-      system = "deoxybyte-systems";
-      asd = "deoxybyte-systems";
-    });
-    systems = [ "deoxybyte-systems" ];
-    lispLibs = [ (getAttr "cl-fad" pkgs) ];
-  };
-  deoxybyte-unix = {
-    pname = "deoxybyte-unix";
-    version = "20140113-git";
-    asds = [ "deoxybyte-unix" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/deoxybyte-unix/2014-01-13/deoxybyte-unix-20140113-git.tgz";
-      sha256 = "016lgb8vcnn7qwhndan1d61wbb10xmsczqp7h2kkfnhlvkr484qf";
-      system = "deoxybyte-unix";
-      asd = "deoxybyte-unix";
-    });
-    systems = [ "deoxybyte-unix" ];
-    lispLibs = [ (getAttr "cffi" pkgs) (getAttr "deoxybyte-io" pkgs) (getAttr "deoxybyte-systems" pkgs) ];
-  };
-  deoxybyte-unix-test = {
-    pname = "deoxybyte-unix-test";
-    version = "20140113-git";
-    asds = [ "deoxybyte-unix-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/deoxybyte-unix/2014-01-13/deoxybyte-unix-20140113-git.tgz";
-      sha256 = "016lgb8vcnn7qwhndan1d61wbb10xmsczqp7h2kkfnhlvkr484qf";
-      system = "deoxybyte-unix-test";
-      asd = "deoxybyte-unix-test";
-    });
-    systems = [ "deoxybyte-unix-test" ];
-    lispLibs = [ (getAttr "deoxybyte-unix" pkgs) (getAttr "lift" pkgs) ];
-  };
-  deoxybyte-utilities = {
-    pname = "deoxybyte-utilities";
-    version = "20140113-git";
-    asds = [ "deoxybyte-utilities" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/deoxybyte-utilities/2014-01-13/deoxybyte-utilities-20140113-git.tgz";
-      sha256 = "054mvn27d9xdsal87avyxzphgv6pk96a0c1icpkldqczlmzl9j0g";
-      system = "deoxybyte-utilities";
-      asd = "deoxybyte-utilities";
-    });
-    systems = [ "deoxybyte-utilities" ];
-    lispLibs = [ (getAttr "deoxybyte-systems" pkgs) ];
-  };
-  deoxybyte-utilities-test = {
-    pname = "deoxybyte-utilities-test";
-    version = "20140113-git";
-    asds = [ "deoxybyte-utilities-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/deoxybyte-utilities/2014-01-13/deoxybyte-utilities-20140113-git.tgz";
-      sha256 = "054mvn27d9xdsal87avyxzphgv6pk96a0c1icpkldqczlmzl9j0g";
-      system = "deoxybyte-utilities-test";
-      asd = "deoxybyte-utilities-test";
-    });
-    systems = [ "deoxybyte-utilities-test" ];
-    lispLibs = [ (getAttr "deoxybyte-utilities" pkgs) (getAttr "lift" pkgs) ];
-  };
-  deploy = {
-    pname = "deploy";
-    version = "20220707-git";
-    asds = [ "deploy" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/deploy/2022-07-07/deploy-20220707-git.tgz";
-      sha256 = "0d5bf92pkm33m9l3hhyqingr0dmjc7603wjpjgjibm4k53pg84mb";
-      system = "deploy";
-      asd = "deploy";
-    });
-    systems = [ "deploy" ];
-    lispLibs = [ (getAttr "cffi" pkgs) (getAttr "documentation-utils" pkgs) (getAttr "trivial-features" pkgs) ];
-  };
-  deploy-test = {
-    pname = "deploy-test";
-    version = "20220707-git";
-    asds = [ "deploy-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/deploy/2022-07-07/deploy-20220707-git.tgz";
-      sha256 = "0d5bf92pkm33m9l3hhyqingr0dmjc7603wjpjgjibm4k53pg84mb";
-      system = "deploy-test";
-      asd = "deploy-test";
-    });
-    systems = [ "deploy-test" ];
-    lispLibs = [ (getAttr "cl-mpg123" pkgs) (getAttr "cl-out123" pkgs) (getAttr "deploy" pkgs) ];
-  };
-  depot = {
-    pname = "depot";
-    version = "20221106-git";
-    asds = [ "depot" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/depot/2022-11-06/depot-20221106-git.tgz";
-      sha256 = "09q1zd74xyc86gl3l4slfv84xld9cq8i4r7n4wpzs674qvzsadbb";
-      system = "depot";
-      asd = "depot";
-    });
-    systems = [ "depot" ];
-    lispLibs = [ (getAttr "documentation-utils" pkgs) (getAttr "trivial-features" pkgs) (getAttr "trivial-gray-streams" pkgs) ];
-  };
-  depot-in-memory = {
-    pname = "depot-in-memory";
-    version = "20221106-git";
-    asds = [ "depot-in-memory" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/depot/2022-11-06/depot-20221106-git.tgz";
-      sha256 = "09q1zd74xyc86gl3l4slfv84xld9cq8i4r7n4wpzs674qvzsadbb";
-      system = "depot-in-memory";
-      asd = "depot-in-memory";
-    });
-    systems = [ "depot-in-memory" ];
-    lispLibs = [ (getAttr "atomics" pkgs) (getAttr "depot" pkgs) ];
-  };
-  depot-test = {
-    pname = "depot-test";
-    version = "20221106-git";
-    asds = [ "depot-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/depot/2022-11-06/depot-20221106-git.tgz";
-      sha256 = "09q1zd74xyc86gl3l4slfv84xld9cq8i4r7n4wpzs674qvzsadbb";
-      system = "depot-test";
-      asd = "depot-test";
-    });
-    systems = [ "depot-test" ];
-    lispLibs = [ (getAttr "depot" pkgs) (getAttr "depot-in-memory" pkgs) (getAttr "depot-zip" pkgs) (getAttr "parachute" pkgs) ];
-  };
-  depot-virtual = {
-    pname = "depot-virtual";
-    version = "20221106-git";
-    asds = [ "depot-virtual" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/depot/2022-11-06/depot-20221106-git.tgz";
-      sha256 = "09q1zd74xyc86gl3l4slfv84xld9cq8i4r7n4wpzs674qvzsadbb";
-      system = "depot-virtual";
-      asd = "depot-virtual";
-    });
-    systems = [ "depot-virtual" ];
-    lispLibs = [ (getAttr "depot" pkgs) ];
-  };
-  depot-zip = {
-    pname = "depot-zip";
-    version = "20221106-git";
-    asds = [ "depot-zip" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/depot/2022-11-06/depot-20221106-git.tgz";
-      sha256 = "09q1zd74xyc86gl3l4slfv84xld9cq8i4r7n4wpzs674qvzsadbb";
-      system = "depot-zip";
-      asd = "depot-zip";
-    });
-    systems = [ "depot-zip" ];
-    lispLibs = [ (getAttr "babel" pkgs) (getAttr "depot" pkgs) (getAttr "zippy" pkgs) ];
-  };
-  descriptions = {
-    pname = "descriptions";
-    version = "20150302-git";
-    asds = [ "descriptions" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/descriptions/2015-03-02/descriptions-20150302-git.tgz";
-      sha256 = "0h44gxilwmzk8cbxb81047cjndksvf8vw2s3pcy2diw9aqiacg7f";
-      system = "descriptions";
-      asd = "descriptions";
-    });
-    systems = [ "descriptions" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "anaphora" pkgs) (getAttr "closer-mop" pkgs) (getAttr "sheeple" pkgs) ];
-  };
-  descriptions-test = {
-    pname = "descriptions-test";
-    version = "20150302-git";
-    asds = [ "descriptions-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/descriptions/2015-03-02/descriptions-20150302-git.tgz";
-      sha256 = "0h44gxilwmzk8cbxb81047cjndksvf8vw2s3pcy2diw9aqiacg7f";
-      system = "descriptions-test";
-      asd = "descriptions-test";
-    });
-    systems = [ "descriptions-test" ];
-    lispLibs = [ (getAttr "descriptions" pkgs) (getAttr "descriptions_dot_serialization" pkgs) (getAttr "descriptions_dot_validation" pkgs) (getAttr "stefil" pkgs) ];
-  };
-  descriptions_dot_serialization = {
-    pname = "descriptions.serialization";
-    version = "20150302-git";
-    asds = [ "descriptions.serialization" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/descriptions/2015-03-02/descriptions-20150302-git.tgz";
-      sha256 = "0h44gxilwmzk8cbxb81047cjndksvf8vw2s3pcy2diw9aqiacg7f";
-      system = "descriptions.serialization";
-      asd = "descriptions.serialization";
-    });
-    systems = [ "descriptions.serialization" ];
-    lispLibs = [ (getAttr "cl-json" pkgs) (getAttr "descriptions" pkgs) ];
-  };
-  descriptions_dot_validation = {
-    pname = "descriptions.validation";
-    version = "20150302-git";
-    asds = [ "descriptions.validation" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/descriptions/2015-03-02/descriptions-20150302-git.tgz";
-      sha256 = "0h44gxilwmzk8cbxb81047cjndksvf8vw2s3pcy2diw9aqiacg7f";
-      system = "descriptions.validation";
-      asd = "descriptions.validation";
-    });
-    systems = [ "descriptions.validation" ];
-    lispLibs = [ (getAttr "clavier" pkgs) (getAttr "descriptions" pkgs) ];
-  };
-  destructuring-bind-star = {
-    pname = "destructuring-bind-star";
-    version = "20200610-git";
-    asds = [ "destructuring-bind-star" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/destructuring-bind-star/2020-06-10/destructuring-bind-star-20200610-git.tgz";
-      sha256 = "1j1xnhvb6pm9q291aawbrcwp8bgbmiij9a53gifxhr4kp934ciz2";
-      system = "destructuring-bind-star";
-      asd = "destructuring-bind-star";
-    });
-    systems = [ "destructuring-bind-star" ];
-    lispLibs = [  ];
-  };
-  destructuring-bind-star_slash_test = {
-    pname = "destructuring-bind-star_test";
-    version = "20200610-git";
-    asds = [ "destructuring-bind-star" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/destructuring-bind-star/2020-06-10/destructuring-bind-star-20200610-git.tgz";
-      sha256 = "1j1xnhvb6pm9q291aawbrcwp8bgbmiij9a53gifxhr4kp934ciz2";
-      system = "destructuring-bind-star";
-      asd = "destructuring-bind-star";
-    });
-    systems = [ "destructuring-bind-star/test" ];
-    lispLibs = [ (getAttr "destructuring-bind-star" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  dexador = {
-    pname = "dexador";
-    version = "20221106-git";
-    asds = [ "dexador" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/dexador/2022-11-06/dexador-20221106-git.tgz";
-      sha256 = "1kz1k122zgxzsvvdv467ydgggw2k16b6b3krv0gjrf6hc8v8qby9";
-      system = "dexador";
-      asd = "dexador";
-    });
-    systems = [ "dexador" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "babel" pkgs) (getAttr "bordeaux-threads" pkgs) (getAttr "chipz" pkgs) (getAttr "chunga" pkgs) (getAttr "cl_plus_ssl" pkgs) (getAttr "cl-base64" pkgs) (getAttr "cl-cookie" pkgs) (getAttr "cl-ppcre" pkgs) (getAttr "fast-http" pkgs) (getAttr "fast-io" pkgs) (getAttr "quri" pkgs) (getAttr "trivial-features" pkgs) (getAttr "trivial-garbage" pkgs) (getAttr "trivial-gray-streams" pkgs) (getAttr "trivial-mimes" pkgs) (getAttr "uiop" pkgs) (getAttr "usocket" pkgs) ];
-  };
-  dexador-test = {
-    pname = "dexador-test";
-    version = "20221106-git";
-    asds = [ "dexador-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/dexador/2022-11-06/dexador-20221106-git.tgz";
-      sha256 = "1kz1k122zgxzsvvdv467ydgggw2k16b6b3krv0gjrf6hc8v8qby9";
-      system = "dexador-test";
-      asd = "dexador-test";
-    });
-    systems = [ "dexador-test" ];
-    lispLibs = [ (getAttr "babel" pkgs) (getAttr "cl-cookie" pkgs) (getAttr "clack-test" pkgs) (getAttr "dexador" pkgs) (getAttr "lack-request" pkgs) (getAttr "rove" pkgs) ];
-  };
-  dfio = {
-    pname = "dfio";
-    version = "20221106-git";
-    asds = [ "dfio" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/dfio/2022-11-06/dfio-20221106-git.tgz";
-      sha256 = "1p53r7773939jnap518xp4b4wfvc1kbrz9jp6yd40xq0jpf9pbqg";
-      system = "dfio";
-      asd = "dfio";
-    });
-    systems = [ "dfio" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "anaphora" pkgs) (getAttr "data-frame" pkgs) (getAttr "dexador" pkgs) (getAttr "fare-csv" pkgs) (getAttr "let-plus" pkgs) ];
-  };
-  dfio_slash_tests = {
-    pname = "dfio_tests";
-    version = "20221106-git";
-    asds = [ "dfio" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/dfio/2022-11-06/dfio-20221106-git.tgz";
-      sha256 = "1p53r7773939jnap518xp4b4wfvc1kbrz9jp6yd40xq0jpf9pbqg";
-      system = "dfio";
-      asd = "dfio";
-    });
-    systems = [ "dfio/tests" ];
-    lispLibs = [ (getAttr "clunit2" pkgs) (getAttr "dfio" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  diff = {
-    pname = "diff";
-    version = "20130813-git";
-    asds = [ "diff" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/diff/2013-08-13/diff-20130813-git.tgz";
-      sha256 = "1giafck8qfvb688kx5bn9g32rfc12jjywg8vdav36aqbd6lxf5z5";
-      system = "diff";
-      asd = "diff";
-    });
-    systems = [ "diff" ];
-    lispLibs = [ (getAttr "cl-ppcre" pkgs) (getAttr "trivial-gray-streams" pkgs) ];
-  };
-  diff-match-patch = {
-    pname = "diff-match-patch";
-    version = "20210531-git";
-    asds = [ "diff-match-patch" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/diff-match-patch/2021-05-31/diff-match-patch-20210531-git.tgz";
-      sha256 = "0wxz2q9sd2v8fg521f7bzv6wi3za7saz2j2snsnw2p1kcsj6zqa4";
-      system = "diff-match-patch";
-      asd = "diff-match-patch";
-    });
-    systems = [ "diff-match-patch" ];
-    lispLibs = [ (getAttr "cl-ppcre" pkgs) (getAttr "iterate" pkgs) ];
-  };
-  diff-match-patch_slash_test = {
-    pname = "diff-match-patch_test";
-    version = "20210531-git";
-    asds = [ "diff-match-patch" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/diff-match-patch/2021-05-31/diff-match-patch-20210531-git.tgz";
-      sha256 = "0wxz2q9sd2v8fg521f7bzv6wi3za7saz2j2snsnw2p1kcsj6zqa4";
-      system = "diff-match-patch";
-      asd = "diff-match-patch";
-    });
-    systems = [ "diff-match-patch/test" ];
-    lispLibs = [ (getAttr "cl-interpol" pkgs) (getAttr "diff-match-patch" pkgs) (getAttr "fiveam" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  dirt = {
-    pname = "dirt";
-    version = "release-quicklisp-0d13ebc2-git";
-    asds = [ "dirt" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/dirt/2017-10-19/dirt-release-quicklisp-0d13ebc2-git.tgz";
-      sha256 = "1lqxfdzn9rh7rzsq97d4hp6fl4g9fs6s0n2pvf460d6ri6p40xna";
-      system = "dirt";
-      asd = "dirt";
-    });
-    systems = [ "dirt" ];
-    lispLibs = [ (getAttr "cepl" pkgs) (getAttr "cl-soil" pkgs) ];
-  };
-  dispatch = {
-    pname = "dispatch";
-    version = "export-to-quicklisp-502a46e2-git";
-    asds = [ "dispatch" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/regular-type-expression/2020-02-18/regular-type-expression-export-to-quicklisp-502a46e2-git.tgz";
-      sha256 = "1im07p7sbbhdjx9v8fx3v1xdqx1085lra6fsb4sh2bssw7m5xfxi";
-      system = "dispatch";
-      asd = "dispatch";
-    });
-    systems = [ "dispatch" ];
-    lispLibs = [ (getAttr "closer-mop" pkgs) (getAttr "adjuvant" pkgs) ];
-  };
-  dispatch-test = {
-    pname = "dispatch-test";
-    version = "export-to-quicklisp-502a46e2-git";
-    asds = [ "dispatch-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/regular-type-expression/2020-02-18/regular-type-expression-export-to-quicklisp-502a46e2-git.tgz";
-      sha256 = "1im07p7sbbhdjx9v8fx3v1xdqx1085lra6fsb4sh2bssw7m5xfxi";
-      system = "dispatch-test";
-      asd = "dispatch-test";
-    });
-    systems = [ "dispatch-test" ];
-    lispLibs = [ (getAttr "dispatch" pkgs) (getAttr "scrutiny" pkgs) ];
-  };
-  disposable = {
-    pname = "disposable";
-    version = "20160208-git";
-    asds = [ "disposable" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/disposable/2016-02-08/disposable-20160208-git.tgz";
-      sha256 = "18synnlg4b8203rgww644dj7ghb4m1j33lb4zm64850vqy5b3pz7";
-      system = "disposable";
-      asd = "disposable";
-    });
-    systems = [ "disposable" ];
-    lispLibs = [  ];
-  };
-  dissect = {
-    pname = "dissect";
-    version = "20221106-git";
-    asds = [ "dissect" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/dissect/2022-11-06/dissect-20221106-git.tgz";
-      sha256 = "10daj37ivvkcghlhl3c4nlg6rf8y968b0zy5qa2fmk8iqd7l67d7";
-      system = "dissect";
-      asd = "dissect";
-    });
-    systems = [ "dissect" ];
-    lispLibs = [  ];
-  };
-  distributions = {
-    pname = "distributions";
-    version = "20221106-git";
-    asds = [ "distributions" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/distributions/2022-11-06/distributions-20221106-git.tgz";
-      sha256 = "1fkzigd0s0s0mvszgmv04yc8jp9gm4812445hfh6kpz6cjy5zpsk";
-      system = "distributions";
-      asd = "distributions";
-    });
-    systems = [ "distributions" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "anaphora" pkgs) (getAttr "array-operations" pkgs) (getAttr "cephes" pkgs) (getAttr "float-features" pkgs) (getAttr "let-plus" pkgs) (getAttr "num-utils" pkgs) (getAttr "special-functions" pkgs) ];
-  };
-  djula = {
-    pname = "djula";
-    version = "20220707-git";
-    asds = [ "djula" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/djula/2022-07-07/djula-20220707-git.tgz";
-      sha256 = "1qqp8gmhjps2q7mdyiac6isw0hhz1rk7fx2w6imkrvbw860md2r6";
-      system = "djula";
-      asd = "djula";
-    });
-    systems = [ "djula" ];
-    lispLibs = [ (getAttr "access" pkgs) (getAttr "alexandria" pkgs) (getAttr "babel" pkgs) (getAttr "cl-locale" pkgs) (getAttr "parser-combinators" pkgs) (getAttr "cl-ppcre" pkgs) (getAttr "cl-slice" pkgs) (getAttr "closer-mop" pkgs) (getAttr "gettext" pkgs) (getAttr "iterate" pkgs) (getAttr "local-time" pkgs) (getAttr "split-sequence" pkgs) (getAttr "trivial-backtrace" pkgs) ];
-  };
-  djula-demo = {
-    pname = "djula-demo";
-    version = "20220707-git";
-    asds = [ "djula-demo" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/djula/2022-07-07/djula-20220707-git.tgz";
-      sha256 = "1qqp8gmhjps2q7mdyiac6isw0hhz1rk7fx2w6imkrvbw860md2r6";
-      system = "djula-demo";
-      asd = "djula-demo";
-    });
-    systems = [ "djula-demo" ];
-    lispLibs = [ (getAttr "djula" pkgs) (getAttr "hunchentoot" pkgs) ];
-  };
-  djula-test = {
-    pname = "djula-test";
-    version = "20220707-git";
-    asds = [ "djula-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/djula/2022-07-07/djula-20220707-git.tgz";
-      sha256 = "1qqp8gmhjps2q7mdyiac6isw0hhz1rk7fx2w6imkrvbw860md2r6";
-      system = "djula-test";
-      asd = "djula-test";
-    });
-    systems = [ "djula-test" ];
-    lispLibs = [ (getAttr "djula" pkgs) (getAttr "fiveam" pkgs) ];
-  };
-  dlist = {
-    pname = "dlist";
-    version = "20121125-git";
-    asds = [ "dlist" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/dlist/2012-11-25/dlist-20121125-git.tgz";
-      sha256 = "1ycgjmbxpj0bj95xg0x7m30yz8y73s7mnqs0dzam00rkf8g00h89";
-      system = "dlist";
-      asd = "dlist";
-    });
-    systems = [ "dlist" ];
-    lispLibs = [  ];
-  };
-  dlist-test = {
-    pname = "dlist-test";
-    version = "20121125-git";
-    asds = [ "dlist-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/dlist/2012-11-25/dlist-20121125-git.tgz";
-      sha256 = "1ycgjmbxpj0bj95xg0x7m30yz8y73s7mnqs0dzam00rkf8g00h89";
-      system = "dlist-test";
-      asd = "dlist";
-    });
-    systems = [ "dlist-test" ];
-    lispLibs = [ (getAttr "dlist" pkgs) (getAttr "lisp-unit" pkgs) ];
-  };
-  dml = {
-    pname = "dml";
-    version = "20181018-git";
-    asds = [ "dml" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/dml/2018-10-18/dml-20181018-git.tgz";
-      sha256 = "0bah55srq9n743szcnsq2szhy69ckmwk3gx6xm3g3f6i0hj5gz1r";
-      system = "dml";
-      asd = "dml";
-    });
-    systems = [ "dml" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cl-cairo2" pkgs) (getAttr "cl-ppcre" pkgs) (getAttr "donuts" pkgs) ];
-  };
-  dns-client = {
-    pname = "dns-client";
-    version = "20211020-git";
-    asds = [ "dns-client" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/dns-client/2021-10-20/dns-client-20211020-git.tgz";
-      sha256 = "1b6g2wvydwmv1k68favjyq4gfalfxfyl5i0hyh640wdaz2rfvi4n";
-      system = "dns-client";
-      asd = "dns-client";
-    });
-    systems = [ "dns-client" ];
-    lispLibs = [ (getAttr "documentation-utils" pkgs) (getAttr "usocket" pkgs) ];
-  };
-  do-urlencode = {
-    pname = "do-urlencode";
-    version = "20181018-git";
-    asds = [ "do-urlencode" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/do-urlencode/2018-10-18/do-urlencode-20181018-git.tgz";
-      sha256 = "0k2i3d4k9cpci235mwfm0c5a4yqfkijr716bjv7cdlpzx88lazm9";
-      system = "do-urlencode";
-      asd = "do-urlencode";
-    });
-    systems = [ "do-urlencode" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "babel" pkgs) ];
-  };
-  docbrowser = {
-    pname = "docbrowser";
-    version = "20200610-git";
-    asds = [ "docbrowser" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/docbrowser/2020-06-10/docbrowser-20200610-git.tgz";
-      sha256 = "0k7gkyciqfbwdmvip2s8h4k21a63h45bj3qydq3jbvkhaq4gj9x1";
-      system = "docbrowser";
-      asd = "docbrowser";
-    });
-    systems = [ "docbrowser" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "babel" pkgs) (getAttr "bordeaux-threads" pkgs) (getAttr "cl-json" pkgs) (getAttr "yacc" pkgs) (getAttr "closer-mop" pkgs) (getAttr "colorize" pkgs) (getAttr "flexi-streams" pkgs) (getAttr "hunchentoot" pkgs) (getAttr "parse-number" pkgs) (getAttr "swank" pkgs) (getAttr "split-sequence" pkgs) (getAttr "string-case" pkgs) ];
-  };
-  docparser = {
-    pname = "docparser";
-    version = "20221106-git";
-    asds = [ "docparser" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/docparser/2022-11-06/docparser-20221106-git.tgz";
-      sha256 = "0b8ipv14h8f46kf6hqmcgp3yxry9xww7957iwkzq8n1i0biq74y1";
-      system = "docparser";
-      asd = "docparser";
-    });
-    systems = [ "docparser" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "anaphora" pkgs) (getAttr "cffi" pkgs) (getAttr "trivial-types" pkgs) ];
-  };
-  docparser-test = {
-    pname = "docparser-test";
-    version = "20221106-git";
-    asds = [ "docparser-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/docparser/2022-11-06/docparser-20221106-git.tgz";
-      sha256 = "0b8ipv14h8f46kf6hqmcgp3yxry9xww7957iwkzq8n1i0biq74y1";
-      system = "docparser-test";
-      asd = "docparser-test";
-    });
-    systems = [ "docparser-test" ];
-    lispLibs = [ (getAttr "docparser" pkgs) (getAttr "docparser-test-system" pkgs) (getAttr "fiveam" pkgs) ];
-  };
-  docparser-test-system = {
-    pname = "docparser-test-system";
-    version = "20221106-git";
-    asds = [ "docparser-test-system" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/docparser/2022-11-06/docparser-20221106-git.tgz";
-      sha256 = "0b8ipv14h8f46kf6hqmcgp3yxry9xww7957iwkzq8n1i0biq74y1";
-      system = "docparser-test-system";
-      asd = "docparser-test-system";
-    });
-    systems = [ "docparser-test-system" ];
-    lispLibs = [ (getAttr "cffi" pkgs) ];
-  };
-  docs-builder = {
-    pname = "docs-builder";
-    version = "20221106-git";
-    asds = [ "docs-builder" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/docs-builder/2022-11-06/docs-builder-20221106-git.tgz";
-      sha256 = "1xqhknz74a43sk0cax7m7h5bzax6yriqczyvpzx2z3nbhq8knr9k";
-      system = "docs-builder";
-      asd = "docs-builder";
-    });
-    systems = [ "docs-builder" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "_40ants-doc" pkgs) (getAttr "docs-config" pkgs) (getAttr "log4cl" pkgs) (getAttr "uiop" pkgs) ];
-  };
-  docs-config = {
-    pname = "docs-config";
-    version = "20221106-git";
-    asds = [ "docs-config" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/docs-builder/2022-11-06/docs-builder-20221106-git.tgz";
-      sha256 = "1xqhknz74a43sk0cax7m7h5bzax6yriqczyvpzx2z3nbhq8knr9k";
-      system = "docs-config";
-      asd = "docs-config";
-    });
-    systems = [ "docs-config" ];
-    lispLibs = [  ];
-  };
-  documentation-template = {
-    pname = "documentation-template";
-    version = "0.4.4";
-    asds = [ "documentation-template" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/documentation-template/2014-12-17/documentation-template-0.4.4.tgz";
-      sha256 = "0pfcg38ws0syhg2l15nwslfyj175dq1dvjip64nx02knw26zj56y";
-      system = "documentation-template";
-      asd = "documentation-template";
-    });
-    systems = [ "documentation-template" ];
-    lispLibs = [ (getAttr "cl-who" pkgs) ];
-  };
-  documentation-utils = {
-    pname = "documentation-utils";
-    version = "20190710-git";
-    asds = [ "documentation-utils" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/documentation-utils/2019-07-10/documentation-utils-20190710-git.tgz";
-      sha256 = "098qhkqskmmrh4wix34mawf7p5c87yql28r51r75yjxj577k5idq";
-      system = "documentation-utils";
-      asd = "documentation-utils";
-    });
-    systems = [ "documentation-utils" ];
-    lispLibs = [ (getAttr "trivial-indent" pkgs) ];
-  };
-  documentation-utils-extensions = {
-    pname = "documentation-utils-extensions";
-    version = "20220707-git";
-    asds = [ "documentation-utils-extensions" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/documentation-utils-extensions/2022-07-07/documentation-utils-extensions-20220707-git.tgz";
-      sha256 = "1bv8y1hbn6fivvsanaci19k47vfdchj3argz92az3izmar9ybp4f";
-      system = "documentation-utils-extensions";
-      asd = "documentation-utils-extensions";
-    });
-    systems = [ "documentation-utils-extensions" ];
-    lispLibs = [ (getAttr "documentation-utils" pkgs) ];
-  };
-  docutils = {
-    pname = "docutils";
-    version = "20130128-git";
-    asds = [ "docutils" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-docutils/2013-01-28/cl-docutils-20130128-git.tgz";
-      sha256 = "132bxlj0jlhiabi29mygmkcbbgyb5s1yz1xdfhm3pgrf9f8605gg";
-      system = "docutils";
-      asd = "docutils";
-    });
-    systems = [ "docutils" ];
-    lispLibs = [ (getAttr "data-format-validation" pkgs) (getAttr "cl-ppcre" pkgs) (getAttr "trivial-gray-streams" pkgs) ];
-  };
-  dom = {
-    pname = "dom";
-    version = "master-1a957fb2-git";
-    asds = [ "dom" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/gendl/2022-07-07/gendl-master-1a957fb2-git.tgz";
-      sha256 = "0j47qnvvfx3vnh3pll6rkya5m142hi93bd5jk65rv43vbc94sv30";
-      system = "dom";
-      asd = "dom";
-    });
-    systems = [ "dom" ];
-    lispLibs = [ (getAttr "cl-who" pkgs) (getAttr "yadd" pkgs) ];
-  };
-  donuts = {
-    pname = "donuts";
-    version = "20120703-git";
-    asds = [ "donuts" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/donuts/2012-07-03/donuts-20120703-git.tgz";
-      sha256 = "1arjlwic0gk28ja1ql5k1r3v0pqzg42ds8vzq9266hq5lp06q3ii";
-      system = "donuts";
-      asd = "donuts";
-    });
-    systems = [ "donuts" ];
-    lispLibs = [ (getAttr "cl-ppcre" pkgs) (getAttr "trivial-shell" pkgs) ];
-  };
-  doplus = {
-    pname = "doplus";
-    version = "v1.1.0";
-    asds = [ "doplus" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/doplus/2021-10-20/doplus-v1.1.0.tgz";
-      sha256 = "1yvda9psw9m08d3bzdb8a2drvhrnr07a0rhza5ibk30v1dkwfw7c";
-      system = "doplus";
-      asd = "doplus";
-    });
-    systems = [ "doplus" ];
-    lispLibs = [ (getAttr "parse-declarations-1_dot_0" pkgs) ];
-  };
-  doplus-fset = {
-    pname = "doplus-fset";
-    version = "v1.1.0";
-    asds = [ "doplus-fset" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/doplus/2021-10-20/doplus-v1.1.0.tgz";
-      sha256 = "1yvda9psw9m08d3bzdb8a2drvhrnr07a0rhza5ibk30v1dkwfw7c";
-      system = "doplus-fset";
-      asd = "doplus-fset";
-    });
-    systems = [ "doplus-fset" ];
-    lispLibs = [ (getAttr "doplus" pkgs) (getAttr "fset" pkgs) ];
-  };
-  dotenv = {
-    pname = "dotenv";
-    version = "20211209-git";
-    asds = [ "dotenv" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/dotenv/2021-12-09/dotenv-20211209-git.tgz";
-      sha256 = "0g19svpxy2169rym532gjwsg1zybinpc99mjsy6im4n6zdd57hzh";
-      system = "dotenv";
-      asd = "dotenv";
-    });
-    systems = [ "dotenv" ];
-    lispLibs = [ (getAttr "str" pkgs) (getAttr "prove-asdf" pkgs) ];
-  };
-  dotenv-test = {
-    pname = "dotenv-test";
-    version = "20211209-git";
-    asds = [ "dotenv-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/dotenv/2021-12-09/dotenv-20211209-git.tgz";
-      sha256 = "0g19svpxy2169rym532gjwsg1zybinpc99mjsy6im4n6zdd57hzh";
-      system = "dotenv-test";
-      asd = "dotenv";
-    });
-    systems = [ "dotenv-test" ];
-    lispLibs = [ (getAttr "dotenv" pkgs) (getAttr "prove" pkgs) (getAttr "prove-asdf" pkgs) ];
-  };
-  doubly-linked-list = {
-    pname = "doubly-linked-list";
-    version = "20220707-git";
-    asds = [ "doubly-linked-list" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/doubly-linked-list/2022-07-07/doubly-linked-list-20220707-git.tgz";
-      sha256 = "073r1zyp0slzzvcyj7ibjs85bss1iqh42zn5dvkjd6ls78v2bn9f";
-      system = "doubly-linked-list";
-      asd = "doubly-linked-list";
-    });
-    systems = [ "doubly-linked-list" ];
-    lispLibs = [ (getAttr "mfiano-utils" pkgs) ];
-  };
-  drakma = {
-    pname = "drakma";
-    version = "v2.0.9";
-    asds = [ "drakma" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/drakma/2022-07-07/drakma-v2.0.9.tgz";
-      sha256 = "1y5rf9rr8drqwmh0r6k0wb80h4qwwc2jmikfzxn5mrgs860fvamh";
-      system = "drakma";
-      asd = "drakma";
-    });
-    systems = [ "drakma" ];
-    lispLibs = [ (getAttr "chipz" pkgs) (getAttr "chunga" pkgs) (getAttr "cl_plus_ssl" pkgs) (getAttr "cl-base64" pkgs) (getAttr "cl-ppcre" pkgs) (getAttr "flexi-streams" pkgs) (getAttr "puri" pkgs) (getAttr "usocket" pkgs) ];
-  };
-  drakma-async = {
-    pname = "drakma-async";
-    version = "20210807-git";
-    asds = [ "drakma-async" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/drakma-async/2021-08-07/drakma-async-20210807-git.tgz";
-      sha256 = "19cd4xrcx3mz86sl0326x5lcrh9jizrwzi6p7pd856nrmx7ynf4w";
-      system = "drakma-async";
-      asd = "drakma-async";
-    });
-    systems = [ "drakma-async" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cl-async-ssl" pkgs) (getAttr "cl-async-future" pkgs) (getAttr "drakma" pkgs) (getAttr "fast-http" pkgs) (getAttr "fast-io" pkgs) (getAttr "flexi-streams" pkgs) ];
-  };
-  drakma-test = {
-    pname = "drakma-test";
-    version = "v2.0.9";
-    asds = [ "drakma-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/drakma/2022-07-07/drakma-v2.0.9.tgz";
-      sha256 = "1y5rf9rr8drqwmh0r6k0wb80h4qwwc2jmikfzxn5mrgs860fvamh";
-      system = "drakma-test";
-      asd = "drakma-test";
-    });
-    systems = [ "drakma-test" ];
-    lispLibs = [ (getAttr "drakma" pkgs) (getAttr "fiveam" pkgs) ];
-  };
-  draw-cons-tree = {
-    pname = "draw-cons-tree";
-    version = "20131003-git";
-    asds = [ "draw-cons-tree" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/draw-cons-tree/2013-10-03/draw-cons-tree-20131003-git.tgz";
-      sha256 = "0w2khl1f51zcjvmq47h55ldfgjzi03gnmsdgd61ar3m11dp0k769";
-      system = "draw-cons-tree";
-      asd = "draw-cons-tree";
-    });
-    systems = [ "draw-cons-tree" ];
-    lispLibs = [  ];
-  };
-  drei-mcclim = {
-    pname = "drei-mcclim";
-    version = "20221106-git";
-    asds = [ "drei-mcclim" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/mcclim/2022-11-06/mcclim-20221106-git.tgz";
-      sha256 = "0hz6vz4c0xv8bjx02hf3rbnp66c7ifx2ld4y6nxdz6i70wyhwbdf";
-      system = "drei-mcclim";
-      asd = "drei-mcclim";
-    });
-    systems = [ "drei-mcclim" ];
-    lispLibs = [ (getAttr "flexichain" pkgs) (getAttr "automaton" pkgs) (getAttr "clim-core" pkgs) (getAttr "esa-mcclim" pkgs) (getAttr "persistent" pkgs) (getAttr "swank" pkgs) ];
-  };
-  drei-mcclim_slash_test = {
-    pname = "drei-mcclim_test";
-    version = "20221106-git";
-    asds = [ "drei-mcclim" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/mcclim/2022-11-06/mcclim-20221106-git.tgz";
-      sha256 = "0hz6vz4c0xv8bjx02hf3rbnp66c7ifx2ld4y6nxdz6i70wyhwbdf";
-      system = "drei-mcclim";
-      asd = "drei-mcclim";
-    });
-    systems = [ "drei-mcclim/test" ];
-    lispLibs = [ (getAttr "fiveam" pkgs) (getAttr "automaton" pkgs) (getAttr "drei-mcclim" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  dso-lex = {
-    pname = "dso-lex";
-    version = "0.3.2";
-    asds = [ "dso-lex" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/dso-lex/2011-01-10/dso-lex-0.3.2.tgz";
-      sha256 = "09vx0dsfaj1c5ivfkx9zl9s2yxmqpdc2v41fhpq75anq9ffr6qyr";
-      system = "dso-lex";
-      asd = "dso-lex";
-    });
-    systems = [ "dso-lex" ];
-    lispLibs = [ (getAttr "cl-ppcre" pkgs) (getAttr "dso-util" pkgs) ];
-  };
-  dso-util = {
-    pname = "dso-util";
-    version = "0.1.2";
-    asds = [ "dso-util" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/dso-util/2011-01-10/dso-util-0.1.2.tgz";
-      sha256 = "12w1rxxk2hi6k7ng9kqf2yb1kff78bshdfl7bwv6fz8im8vq13b3";
-      system = "dso-util";
-      asd = "dso-util";
-    });
-    systems = [ "dso-util" ];
-    lispLibs = [ (getAttr "cl-ppcre" pkgs) ];
-  };
-  dufy = {
-    pname = "dufy";
-    version = "20210531-git";
-    asds = [ "dufy" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/dufy/2021-05-31/dufy-20210531-git.tgz";
-      sha256 = "10qyrc5xkivwm6xmcfls1alad83ck7b2yyxbnhgc2vmnrk6j1012";
-      system = "dufy";
-      asd = "dufy";
-    });
-    systems = [ "dufy" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cl-ppcre" pkgs) ];
-  };
-  dufy_slash_core = {
-    pname = "dufy_core";
-    version = "20210531-git";
-    asds = [ "dufy" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/dufy/2021-05-31/dufy-20210531-git.tgz";
-      sha256 = "10qyrc5xkivwm6xmcfls1alad83ck7b2yyxbnhgc2vmnrk6j1012";
-      system = "dufy";
-      asd = "dufy";
-    });
-    systems = [ "dufy/core" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  dufy_slash_examples = {
-    pname = "dufy_examples";
-    version = "20210531-git";
-    asds = [ "dufy" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/dufy/2021-05-31/dufy-20210531-git.tgz";
-      sha256 = "10qyrc5xkivwm6xmcfls1alad83ck7b2yyxbnhgc2vmnrk6j1012";
-      system = "dufy";
-      asd = "dufy";
-    });
-    systems = [ "dufy/examples" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "dufy" pkgs) (getAttr "iterate" pkgs) (getAttr "lispbuilder-sdl" pkgs) (getAttr "lparallel" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  dufy_slash_extra-data = {
-    pname = "dufy_extra-data";
-    version = "20210531-git";
-    asds = [ "dufy" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/dufy/2021-05-31/dufy-20210531-git.tgz";
-      sha256 = "10qyrc5xkivwm6xmcfls1alad83ck7b2yyxbnhgc2vmnrk6j1012";
-      system = "dufy";
-      asd = "dufy";
-    });
-    systems = [ "dufy/extra-data" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  dufy_slash_hsluv = {
-    pname = "dufy_hsluv";
-    version = "20210531-git";
-    asds = [ "dufy" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/dufy/2021-05-31/dufy-20210531-git.tgz";
-      sha256 = "10qyrc5xkivwm6xmcfls1alad83ck7b2yyxbnhgc2vmnrk6j1012";
-      system = "dufy";
-      asd = "dufy";
-    });
-    systems = [ "dufy/hsluv" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  dufy_slash_internal = {
-    pname = "dufy_internal";
-    version = "20210531-git";
-    asds = [ "dufy" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/dufy/2021-05-31/dufy-20210531-git.tgz";
-      sha256 = "10qyrc5xkivwm6xmcfls1alad83ck7b2yyxbnhgc2vmnrk6j1012";
-      system = "dufy";
-      asd = "dufy";
-    });
-    systems = [ "dufy/internal" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  dufy_slash_munsell = {
-    pname = "dufy_munsell";
-    version = "20210531-git";
-    asds = [ "dufy" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/dufy/2021-05-31/dufy-20210531-git.tgz";
-      sha256 = "10qyrc5xkivwm6xmcfls1alad83ck7b2yyxbnhgc2vmnrk6j1012";
-      system = "dufy";
-      asd = "dufy";
-    });
-    systems = [ "dufy/munsell" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cl-ppcre" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  dufy_slash_test = {
-    pname = "dufy_test";
-    version = "20210531-git";
-    asds = [ "dufy" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/dufy/2021-05-31/dufy-20210531-git.tgz";
-      sha256 = "10qyrc5xkivwm6xmcfls1alad83ck7b2yyxbnhgc2vmnrk6j1012";
-      system = "dufy";
-      asd = "dufy";
-    });
-    systems = [ "dufy/test" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cl-csv" pkgs) (getAttr "dufy" pkgs) (getAttr "fiveam" pkgs) (getAttr "parse-float" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  dungen = {
-    pname = "dungen";
-    version = "20220707-git";
-    asds = [ "dungen" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/dungen/2022-07-07/dungen-20220707-git.tgz";
-      sha256 = "1yvkch227g0yawv2682ysdv9q2g5yyyxjvfpx3hijl0mm0awgxv5";
-      system = "dungen";
-      asd = "dungen";
-    });
-    systems = [ "dungen" ];
-    lispLibs = [ (getAttr "graph" pkgs) (getAttr "mfiano-utils" pkgs) (getAttr "seedable-rng" pkgs) ];
-  };
-  duologue = {
-    pname = "duologue";
-    version = "20220707-git";
-    asds = [ "duologue" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/duologue/2022-07-07/duologue-20220707-git.tgz";
-      sha256 = "03ypcdz4gl8i82ivvnzc5ng4m9b8rkifyl13ik2grlcl5x2wq7ih";
-      system = "duologue";
-      asd = "duologue";
-    });
-    systems = [ "duologue" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "anaphora" pkgs) (getAttr "chronicity" pkgs) (getAttr "cl-ansi-text" pkgs) (getAttr "cl-fad" pkgs) (getAttr "clavier" pkgs) ];
-  };
-  duologue-readline = {
-    pname = "duologue-readline";
-    version = "20220707-git";
-    asds = [ "duologue-readline" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/duologue/2022-07-07/duologue-20220707-git.tgz";
-      sha256 = "03ypcdz4gl8i82ivvnzc5ng4m9b8rkifyl13ik2grlcl5x2wq7ih";
-      system = "duologue-readline";
-      asd = "duologue-readline";
-    });
-    systems = [ "duologue-readline" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "anaphora" pkgs) (getAttr "chronicity" pkgs) (getAttr "cl-ansi-text" pkgs) (getAttr "cl-fad" pkgs) (getAttr "cl-readline" pkgs) (getAttr "clavier" pkgs) (getAttr "drakma" pkgs) ];
-  };
-  dweet = {
-    pname = "dweet";
-    version = "20141217-git";
-    asds = [ "dweet" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/dweet/2014-12-17/dweet-20141217-git.tgz";
-      sha256 = "1i3ab3igvdy6fhq3zlx1vaswhvm9dlp6fagzxbrqhqj6jsbhiwv7";
-      system = "dweet";
-      asd = "dweet";
-    });
-    systems = [ "dweet" ];
-    lispLibs = [ (getAttr "babel" pkgs) (getAttr "drakma" pkgs) (getAttr "com_dot_gigamonkeys_dot_json" pkgs) ];
-  };
-  dynamic-array = {
-    pname = "dynamic-array";
-    version = "20220707-git";
-    asds = [ "dynamic-array" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/dynamic-array/2022-07-07/dynamic-array-20220707-git.tgz";
-      sha256 = "02kg1m5xscg521074nasx3f04784jbm0x61a7skixbdprpg6hhnh";
-      system = "dynamic-array";
-      asd = "dynamic-array";
-    });
-    systems = [ "dynamic-array" ];
-    lispLibs = [ (getAttr "mfiano-utils" pkgs) ];
-  };
-  dynamic-classes = {
-    pname = "dynamic-classes";
-    version = "20130128-git";
-    asds = [ "dynamic-classes" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/dynamic-classes/2013-01-28/dynamic-classes-20130128-git.tgz";
-      sha256 = "0sawgz6xhsq156jcq5j9px0njs4y3sq1ypccl59zyvz31bxyaaxj";
-      system = "dynamic-classes";
-      asd = "dynamic-classes";
-    });
-    systems = [ "dynamic-classes" ];
-    lispLibs = [ (getAttr "metatilities-base" pkgs) ];
-  };
-  dynamic-classes-test = {
-    pname = "dynamic-classes-test";
-    version = "20130128-git";
-    asds = [ "dynamic-classes-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/dynamic-classes/2013-01-28/dynamic-classes-20130128-git.tgz";
-      sha256 = "0sawgz6xhsq156jcq5j9px0njs4y3sq1ypccl59zyvz31bxyaaxj";
-      system = "dynamic-classes-test";
-      asd = "dynamic-classes-test";
-    });
-    systems = [ "dynamic-classes-test" ];
-    lispLibs = [ (getAttr "dynamic-classes" pkgs) (getAttr "lift" pkgs) ];
-  };
-  dynamic-collect = {
-    pname = "dynamic-collect";
-    version = "20190307-hg";
-    asds = [ "dynamic-collect" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/dynamic-collect/2019-03-07/dynamic-collect-20190307-hg.tgz";
-      sha256 = "00h90k4zj1qv1da6q5qq6ma8ivykpzmz5mb869a6jay08jly83c4";
-      system = "dynamic-collect";
-      asd = "dynamic-collect";
-    });
-    systems = [ "dynamic-collect" ];
-    lispLibs = [  ];
-  };
-  dynamic-mixins = {
-    pname = "dynamic-mixins";
-    version = "20181018-git";
-    asds = [ "dynamic-mixins" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/dynamic-mixins/2018-10-18/dynamic-mixins-20181018-git.tgz";
-      sha256 = "00g3s509ysh2jp1qwsgb5bwl6qvhzcljwjz3z4mspbcak51484zj";
-      system = "dynamic-mixins";
-      asd = "dynamic-mixins";
-    });
-    systems = [ "dynamic-mixins" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "closer-mop" pkgs) ];
-  };
-  dynamic-wind = {
-    pname = "dynamic-wind";
-    version = "20211230-git";
-    asds = [ "dynamic-wind" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/contextl/2021-12-30/contextl-20211230-git.tgz";
-      sha256 = "0apgznz4g6lpmd86lq7w0xddfjgnirk83ig7p0j6i93xadhy9wh0";
-      system = "dynamic-wind";
-      asd = "dynamic-wind";
-    });
-    systems = [ "dynamic-wind" ];
-    lispLibs = [ (getAttr "lw-compat" pkgs) ];
-  };
-  eager-future = {
-    pname = "eager-future";
-    version = "20101006-darcs";
-    asds = [ "eager-future" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/eager-future/2010-10-06/eager-future-20101006-darcs.tgz";
-      sha256 = "0l7khqfqfchk7j24fk7rwagwanjargxsrzr6g1h4ainqjajd91jl";
-      system = "eager-future";
-      asd = "eager-future";
-    });
-    systems = [ "eager-future" ];
-    lispLibs = [ (getAttr "bordeaux-threads" pkgs) ];
-  };
-  eager-future_dot_test = {
-    pname = "eager-future.test";
-    version = "20101006-darcs";
-    asds = [ "eager-future.test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/eager-future/2010-10-06/eager-future-20101006-darcs.tgz";
-      sha256 = "0l7khqfqfchk7j24fk7rwagwanjargxsrzr6g1h4ainqjajd91jl";
-      system = "eager-future.test";
-      asd = "eager-future";
-    });
-    systems = [ "eager-future.test" ];
-    lispLibs = [ (getAttr "eager-future" pkgs) (getAttr "fiveam" pkgs) ];
-  };
-  eager-future2 = {
-    pname = "eager-future2";
-    version = "20191130-git";
-    asds = [ "eager-future2" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/eager-future2/2019-11-30/eager-future2-20191130-git.tgz";
-      sha256 = "1qs1bv3m0ki8l5czhsflxcryh22r9d9g9a3a3b0cr0pl954q5rld";
-      system = "eager-future2";
-      asd = "eager-future2";
-    });
-    systems = [ "eager-future2" ];
-    lispLibs = [ (getAttr "bordeaux-threads" pkgs) (getAttr "trivial-garbage" pkgs) ];
-  };
-  easing = {
-    pname = "easing";
-    version = "20180228-git";
-    asds = [ "easing" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/easing/2018-02-28/easing-20180228-git.tgz";
-      sha256 = "0750cs5kij8hi53960lzih57xrf92fj23i3hxzhqzcyla4wi4jv5";
-      system = "easing";
-      asd = "easing";
-    });
-    systems = [ "easing" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) ];
-  };
-  easing-demo = {
-    pname = "easing-demo";
-    version = "20180228-git";
-    asds = [ "easing-demo" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/easing/2018-02-28/easing-20180228-git.tgz";
-      sha256 = "0750cs5kij8hi53960lzih57xrf92fj23i3hxzhqzcyla4wi4jv5";
-      system = "easing-demo";
-      asd = "easing-demo";
-    });
-    systems = [ "easing-demo" ];
-    lispLibs = [ (getAttr "easing" pkgs) (getAttr "sketch" pkgs) ];
-  };
-  easing-test = {
-    pname = "easing-test";
-    version = "20180228-git";
-    asds = [ "easing-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/easing/2018-02-28/easing-20180228-git.tgz";
-      sha256 = "0750cs5kij8hi53960lzih57xrf92fj23i3hxzhqzcyla4wi4jv5";
-      system = "easing-test";
-      asd = "easing-test";
-    });
-    systems = [ "easing-test" ];
-    lispLibs = [ (getAttr "easing" pkgs) (getAttr "fiveam" pkgs) ];
-  };
-  easter-gauss = {
-    pname = "easter-gauss";
-    version = "20220707-git";
-    asds = [ "easter-gauss" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/easter-gauss/2022-07-07/easter-gauss-20220707-git.tgz";
-      sha256 = "0y3fihv00k6lxmx4pfkhg4nynpffdpvlz9b14s2bl880vj9cxjsw";
-      system = "easter-gauss";
-      asd = "easter-gauss";
-    });
-    systems = [ "easter-gauss" ];
-    lispLibs = [ (getAttr "local-time" pkgs) ];
-  };
-  easter-gauss_slash_tests = {
-    pname = "easter-gauss_tests";
-    version = "20220707-git";
-    asds = [ "easter-gauss" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/easter-gauss/2022-07-07/easter-gauss-20220707-git.tgz";
-      sha256 = "0y3fihv00k6lxmx4pfkhg4nynpffdpvlz9b14s2bl880vj9cxjsw";
-      system = "easter-gauss";
-      asd = "easter-gauss";
-    });
-    systems = [ "easter-gauss/tests" ];
-    lispLibs = [ (getAttr "clunit2" pkgs) (getAttr "easter-gauss" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  easy-audio = {
-    pname = "easy-audio";
-    version = "20220707-git";
-    asds = [ "easy-audio" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/easy-audio/2022-07-07/easy-audio-20220707-git.tgz";
-      sha256 = "157h1d5r403wyjvyv02gzd67xf01spsgx044j4a4nx2cziqr7w6k";
-      system = "easy-audio";
-      asd = "easy-audio";
-    });
-    systems = [ "easy-audio" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "flexi-streams" pkgs) (getAttr "nibbles-streams" pkgs) (getAttr "serapeum" pkgs) ];
-  };
-  easy-audio_slash_ape = {
-    pname = "easy-audio_ape";
-    version = "20220707-git";
-    asds = [ "easy-audio" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/easy-audio/2022-07-07/easy-audio-20220707-git.tgz";
-      sha256 = "157h1d5r403wyjvyv02gzd67xf01spsgx044j4a4nx2cziqr7w6k";
-      system = "easy-audio";
-      asd = "easy-audio";
-    });
-    systems = [ "easy-audio/ape" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "flexi-streams" pkgs) (getAttr "serapeum" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  easy-audio_slash_bitreader = {
-    pname = "easy-audio_bitreader";
-    version = "20220707-git";
-    asds = [ "easy-audio" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/easy-audio/2022-07-07/easy-audio-20220707-git.tgz";
-      sha256 = "157h1d5r403wyjvyv02gzd67xf01spsgx044j4a4nx2cziqr7w6k";
-      system = "easy-audio";
-      asd = "easy-audio";
-    });
-    systems = [ "easy-audio/bitreader" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "serapeum" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  easy-audio_slash_core = {
-    pname = "easy-audio_core";
-    version = "20220707-git";
-    asds = [ "easy-audio" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/easy-audio/2022-07-07/easy-audio-20220707-git.tgz";
-      sha256 = "157h1d5r403wyjvyv02gzd67xf01spsgx044j4a4nx2cziqr7w6k";
-      system = "easy-audio";
-      asd = "easy-audio";
-    });
-    systems = [ "easy-audio/core" ];
-    lispLibs = [ (getAttr "serapeum" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  easy-audio_slash_examples = {
-    pname = "easy-audio_examples";
-    version = "20220707-git";
-    asds = [ "easy-audio" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/easy-audio/2022-07-07/easy-audio-20220707-git.tgz";
-      sha256 = "157h1d5r403wyjvyv02gzd67xf01spsgx044j4a4nx2cziqr7w6k";
-      system = "easy-audio";
-      asd = "easy-audio";
-    });
-    systems = [ "easy-audio/examples" ];
-    lispLibs = [ (getAttr "easy-audio" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  easy-audio_slash_general-decoders = {
-    pname = "easy-audio_general-decoders";
-    version = "20220707-git";
-    asds = [ "easy-audio" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/easy-audio/2022-07-07/easy-audio-20220707-git.tgz";
-      sha256 = "157h1d5r403wyjvyv02gzd67xf01spsgx044j4a4nx2cziqr7w6k";
-      system = "easy-audio";
-      asd = "easy-audio";
-    });
-    systems = [ "easy-audio/general-decoders" ];
-    lispLibs = [ (getAttr "serapeum" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  easy-audio_slash_ogg = {
-    pname = "easy-audio_ogg";
-    version = "20220707-git";
-    asds = [ "easy-audio" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/easy-audio/2022-07-07/easy-audio-20220707-git.tgz";
-      sha256 = "157h1d5r403wyjvyv02gzd67xf01spsgx044j4a4nx2cziqr7w6k";
-      system = "easy-audio";
-      asd = "easy-audio";
-    });
-    systems = [ "easy-audio/ogg" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "serapeum" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  easy-audio_slash_tests = {
-    pname = "easy-audio_tests";
-    version = "20220707-git";
-    asds = [ "easy-audio" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/easy-audio/2022-07-07/easy-audio-20220707-git.tgz";
-      sha256 = "157h1d5r403wyjvyv02gzd67xf01spsgx044j4a4nx2cziqr7w6k";
-      system = "easy-audio";
-      asd = "easy-audio";
-    });
-    systems = [ "easy-audio/tests" ];
-    lispLibs = [ (getAttr "easy-audio" pkgs) (getAttr "fiveam" pkgs) (getAttr "md5" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  easy-audio_slash_wav = {
-    pname = "easy-audio_wav";
-    version = "20220707-git";
-    asds = [ "easy-audio" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/easy-audio/2022-07-07/easy-audio-20220707-git.tgz";
-      sha256 = "157h1d5r403wyjvyv02gzd67xf01spsgx044j4a4nx2cziqr7w6k";
-      system = "easy-audio";
-      asd = "easy-audio";
-    });
-    systems = [ "easy-audio/wav" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "flexi-streams" pkgs) (getAttr "nibbles-streams" pkgs) (getAttr "serapeum" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  easy-audio_slash_wv = {
-    pname = "easy-audio_wv";
-    version = "20220707-git";
-    asds = [ "easy-audio" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/easy-audio/2022-07-07/easy-audio-20220707-git.tgz";
-      sha256 = "157h1d5r403wyjvyv02gzd67xf01spsgx044j4a4nx2cziqr7w6k";
-      system = "easy-audio";
-      asd = "easy-audio";
-    });
-    systems = [ "easy-audio/wv" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "serapeum" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  easy-bind = {
-    pname = "easy-bind";
-    version = "20190202-git";
-    asds = [ "easy-bind" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/easy-bind/2019-02-02/easy-bind-20190202-git.tgz";
-      sha256 = "0z7mqm7vnk8jcsmawlyhzg81v2bmgdbxmx3jkf2m74170q78jhkl";
-      system = "easy-bind";
-      asd = "easy-bind";
-    });
-    systems = [ "easy-bind" ];
-    lispLibs = [  ];
-  };
-  easy-macros = {
-    pname = "easy-macros";
-    version = "20221106-git";
-    asds = [ "easy-macros" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/easy-macros/2022-11-06/easy-macros-20221106-git.tgz";
-      sha256 = "0mashvad1ssh2kmr0wxgas13vxs6dsfb6b1q69cpxmpmx6sc067g";
-      system = "easy-macros";
-      asd = "easy-macros";
-    });
-    systems = [ "easy-macros" ];
-    lispLibs = [  ];
-  };
-  easy-macros_slash_tests = {
-    pname = "easy-macros_tests";
-    version = "20221106-git";
-    asds = [ "easy-macros" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/easy-macros/2022-11-06/easy-macros-20221106-git.tgz";
-      sha256 = "0mashvad1ssh2kmr0wxgas13vxs6dsfb6b1q69cpxmpmx6sc067g";
-      system = "easy-macros";
-      asd = "easy-macros";
-    });
-    systems = [ "easy-macros/tests" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "easy-macros" pkgs) (getAttr "fiveam" pkgs) (getAttr "fiveam-matchers" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  easy-routes = {
-    pname = "easy-routes";
-    version = "20220707-git";
-    asds = [ "easy-routes" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/easy-routes/2022-07-07/easy-routes-20220707-git.tgz";
-      sha256 = "13h3xij5zlviag10y8qjw100i8mjncca10hf08bf30m195wrshmm";
-      system = "easy-routes";
-      asd = "easy-routes";
-    });
-    systems = [ "easy-routes" ];
-    lispLibs = [ (getAttr "routes" pkgs) (getAttr "hunchentoot" pkgs) ];
-  };
-  easy-routes_plus_djula = {
-    pname = "easy-routes+djula";
-    version = "20220707-git";
-    asds = [ "easy-routes+djula" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/easy-routes/2022-07-07/easy-routes-20220707-git.tgz";
-      sha256 = "13h3xij5zlviag10y8qjw100i8mjncca10hf08bf30m195wrshmm";
-      system = "easy-routes+djula";
-      asd = "easy-routes+djula";
-    });
-    systems = [ "easy-routes+djula" ];
-    lispLibs = [ (getAttr "djula" pkgs) (getAttr "easy-routes" pkgs) ];
-  };
-  easy-routes_plus_errors = {
-    pname = "easy-routes+errors";
-    version = "20220707-git";
-    asds = [ "easy-routes+errors" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/easy-routes/2022-07-07/easy-routes-20220707-git.tgz";
-      sha256 = "13h3xij5zlviag10y8qjw100i8mjncca10hf08bf30m195wrshmm";
-      system = "easy-routes+errors";
-      asd = "easy-routes+errors";
-    });
-    systems = [ "easy-routes+errors" ];
-    lispLibs = [ (getAttr "easy-routes" pkgs) (getAttr "hunchentoot-errors" pkgs) ];
-  };
-  eazy-documentation = {
-    pname = "eazy-documentation";
-    version = "20210411-git";
-    asds = [ "eazy-documentation" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/eazy-documentation/2021-04-11/eazy-documentation-20210411-git.tgz";
-      sha256 = "0wqd6jih98ab8qpajmcmbj0cwa3g6jjbr7v0wp5gqn1wllwn70ix";
-      system = "eazy-documentation";
-      asd = "eazy-documentation";
-    });
-    systems = [ "eazy-documentation" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cl-ppcre" pkgs) (getAttr "cl-who" pkgs) (getAttr "common-doc" pkgs) (getAttr "common-doc-split-paragraphs" pkgs) (getAttr "common-html" pkgs) (getAttr "iterate" pkgs) (getAttr "trivia" pkgs) (getAttr "trivia_dot_ppcre" pkgs) ];
-  };
-  eazy-gnuplot = {
-    pname = "eazy-gnuplot";
-    version = "20220331-git";
-    asds = [ "eazy-gnuplot" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/eazy-gnuplot/2022-03-31/eazy-gnuplot-20220331-git.tgz";
-      sha256 = "0mpkx1z52riahydzvqv7kk15p0pv2k7k5a7j65fg571kcxmssx8s";
-      system = "eazy-gnuplot";
-      asd = "eazy-gnuplot";
-    });
-    systems = [ "eazy-gnuplot" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "iterate" pkgs) (getAttr "trivia" pkgs) (getAttr "uiop" pkgs) ];
-  };
-  eazy-gnuplot_dot_test = {
-    pname = "eazy-gnuplot.test";
-    version = "20220331-git";
-    asds = [ "eazy-gnuplot.test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/eazy-gnuplot/2022-03-31/eazy-gnuplot-20220331-git.tgz";
-      sha256 = "0mpkx1z52riahydzvqv7kk15p0pv2k7k5a7j65fg571kcxmssx8s";
-      system = "eazy-gnuplot.test";
-      asd = "eazy-gnuplot.test";
-    });
-    systems = [ "eazy-gnuplot.test" ];
-    lispLibs = [ (getAttr "eazy-gnuplot" pkgs) (getAttr "fiveam" pkgs) ];
-  };
-  eazy-process = {
-    pname = "eazy-process";
-    version = "20200925-git";
-    asds = [ "eazy-process" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/eazy-process/2020-09-25/eazy-process-20200925-git.tgz";
-      sha256 = "1fvc613jg3b0kra664lbyyzvig7sm1xzaawack28c5m61yiwakiw";
-      system = "eazy-process";
-      asd = "eazy-process";
-    });
-    systems = [ "eazy-process" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cffi" pkgs) (getAttr "cl-ppcre" pkgs) (getAttr "cl-rlimit" pkgs) (getAttr "iolib" pkgs) (getAttr "iterate" pkgs) (getAttr "trivia" pkgs) (getAttr "trivia_dot_ppcre" pkgs) (getAttr "trivial-garbage" pkgs) ];
-  };
-  eazy-process_dot_test = {
-    pname = "eazy-process.test";
-    version = "20200925-git";
-    asds = [ "eazy-process.test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/eazy-process/2020-09-25/eazy-process-20200925-git.tgz";
-      sha256 = "1fvc613jg3b0kra664lbyyzvig7sm1xzaawack28c5m61yiwakiw";
-      system = "eazy-process.test";
-      asd = "eazy-process.test";
-    });
-    systems = [ "eazy-process.test" ];
-    lispLibs = [ (getAttr "eazy-process" pkgs) (getAttr "fiveam" pkgs) ];
-  };
-  eazy-project = {
-    pname = "eazy-project";
-    version = "20190710-git";
-    asds = [ "eazy-project" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/eazy-project/2019-07-10/eazy-project-20190710-git.tgz";
-      sha256 = "1dfzvsvzdwcfvynvik9kwhgil9m08jx8r0vwqj7l1m2d9zm4db3b";
-      system = "eazy-project";
-      asd = "eazy-project";
-    });
-    systems = [ "eazy-project" ];
-    lispLibs = [ (getAttr "bordeaux-threads" pkgs) (getAttr "cl-emb" pkgs) (getAttr "cl-ppcre" pkgs) (getAttr "cl-syntax" pkgs) (getAttr "cl-syntax-annot" pkgs) (getAttr "introspect-environment" pkgs) (getAttr "iterate" pkgs) (getAttr "lisp-namespace" pkgs) (getAttr "local-time" pkgs) (getAttr "trivia" pkgs) ];
-  };
-  eazy-project_dot_autoload = {
-    pname = "eazy-project.autoload";
-    version = "20190710-git";
-    asds = [ "eazy-project.autoload" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/eazy-project/2019-07-10/eazy-project-20190710-git.tgz";
-      sha256 = "1dfzvsvzdwcfvynvik9kwhgil9m08jx8r0vwqj7l1m2d9zm4db3b";
-      system = "eazy-project.autoload";
-      asd = "eazy-project.autoload";
-    });
-    systems = [ "eazy-project.autoload" ];
-    lispLibs = [ (getAttr "eazy-project" pkgs) ];
-  };
-  eazy-project_dot_test = {
-    pname = "eazy-project.test";
-    version = "20190710-git";
-    asds = [ "eazy-project.test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/eazy-project/2019-07-10/eazy-project-20190710-git.tgz";
-      sha256 = "1dfzvsvzdwcfvynvik9kwhgil9m08jx8r0vwqj7l1m2d9zm4db3b";
-      system = "eazy-project.test";
-      asd = "eazy-project.test";
-    });
-    systems = [ "eazy-project.test" ];
-    lispLibs = [ (getAttr "eazy-project" pkgs) (getAttr "fiveam" pkgs) ];
-  };
-  ec2 = {
-    pname = "ec2";
-    version = "20120909-git";
-    asds = [ "ec2" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/ec2/2012-09-09/ec2-20120909-git.tgz";
-      sha256 = "1z9yv1b8ckyvla80rha7amfhhy57kylkscf504rpfx8994fnfbsy";
-      system = "ec2";
-      asd = "ec2";
-    });
-    systems = [ "ec2" ];
-    lispLibs = [ (getAttr "drakma" pkgs) (getAttr "ironclad" pkgs) (getAttr "s-base64" pkgs) (getAttr "s-xml" pkgs) ];
-  };
-  ec2-price-finder = {
-    pname = "ec2-price-finder";
-    version = "20210531-git";
-    asds = [ "ec2-price-finder" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/ec2-price-finder/2021-05-31/ec2-price-finder-20210531-git.tgz";
-      sha256 = "1511py79fj0xpzzjlfk6fchp6lmikvhy42s3p6s85fbq4dyj4mpj";
-      system = "ec2-price-finder";
-      asd = "ec2-price-finder";
-    });
-    systems = [ "ec2-price-finder" ];
-    lispLibs = [ (getAttr "easy-routes" pkgs) (getAttr "hunchentoot" pkgs) (getAttr "lass" pkgs) (getAttr "local-time" pkgs) (getAttr "parse-float" pkgs) (getAttr "read-csv" pkgs) (getAttr "spinneret" pkgs) (getAttr "wu-decimal" pkgs) ];
-  };
-  ecclesia = {
-    pname = "ecclesia";
-    version = "20201220-git";
-    asds = [ "ecclesia" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/ecclesia/2020-12-20/ecclesia-20201220-git.tgz";
-      sha256 = "0xxs2hfvqprici6z57wx2z6rjc1f0f5mg0xxls7b8nglzx4saslm";
-      system = "ecclesia";
-      asd = "ecclesia";
-    });
-    systems = [ "ecclesia" ];
-    lispLibs = [ (getAttr "acclimation" pkgs) ];
-  };
-  eclecticse_dot_iso-8601-date = {
-    pname = "eclecticse.iso-8601-date";
-    version = "20190107-git";
-    asds = [ "eclecticse.iso-8601-date" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/iso-8601-date/2019-01-07/iso-8601-date-20190107-git.tgz";
-      sha256 = "12d6jyznglm13sb04xh5l0d0bwi4y449wdyifvfy7r03qy8wypdx";
-      system = "eclecticse.iso-8601-date";
-      asd = "eclecticse.iso-8601-date";
-    });
-    systems = [ "eclecticse.iso-8601-date" ];
-    lispLibs = [ (getAttr "local-time" pkgs) ];
-  };
-  eclecticse_dot_omer = {
-    pname = "eclecticse.omer";
-    version = "20210411-git";
-    asds = [ "eclecticse.omer" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/omer-count/2021-04-11/omer-count-20210411-git.tgz";
-      sha256 = "1rvg7rfalvi28x3jkknfdyf4y7zjrqdx073iqi2gin4amin6n7jv";
-      system = "eclecticse.omer";
-      asd = "eclecticse.omer";
-    });
-    systems = [ "eclecticse.omer" ];
-    lispLibs = [ (getAttr "local-time" pkgs) ];
-  };
-  eclecticse_dot_slk-581 = {
-    pname = "eclecticse.slk-581";
-    version = "20190107-git";
-    asds = [ "eclecticse.slk-581" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/slk-581/2019-01-07/slk-581-20190107-git.tgz";
-      sha256 = "1pxyr1gi4ppnfld399wiypqqkgm3bqd9kpizpwgll2fd10yh2qmf";
-      system = "eclecticse.slk-581";
-      asd = "eclecticse.slk-581";
-    });
-    systems = [ "eclecticse.slk-581" ];
-    lispLibs = [ (getAttr "cl-ppcre" pkgs) ];
-  };
-  eclector = {
-    pname = "eclector";
-    version = "20221106-git";
-    asds = [ "eclector" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/eclector/2022-11-06/eclector-20221106-git.tgz";
-      sha256 = "087f3z0j13fc9brb6390qsbw79lr7fhgfdc0hcrib2h5idv406xz";
-      system = "eclector";
-      asd = "eclector";
-    });
-    systems = [ "eclector" ];
-    lispLibs = [ (getAttr "acclimation" pkgs) (getAttr "alexandria" pkgs) (getAttr "closer-mop" pkgs) ];
-  };
-  eclector-concrete-syntax-tree = {
-    pname = "eclector-concrete-syntax-tree";
-    version = "20221106-git";
-    asds = [ "eclector-concrete-syntax-tree" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/eclector/2022-11-06/eclector-20221106-git.tgz";
-      sha256 = "087f3z0j13fc9brb6390qsbw79lr7fhgfdc0hcrib2h5idv406xz";
-      system = "eclector-concrete-syntax-tree";
-      asd = "eclector-concrete-syntax-tree";
-    });
-    systems = [ "eclector-concrete-syntax-tree" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "concrete-syntax-tree" pkgs) (getAttr "eclector" pkgs) ];
-  };
-  eclector-concrete-syntax-tree_slash_test = {
-    pname = "eclector-concrete-syntax-tree_test";
-    version = "20221106-git";
-    asds = [ "eclector-concrete-syntax-tree" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/eclector/2022-11-06/eclector-20221106-git.tgz";
-      sha256 = "087f3z0j13fc9brb6390qsbw79lr7fhgfdc0hcrib2h5idv406xz";
-      system = "eclector-concrete-syntax-tree";
-      asd = "eclector-concrete-syntax-tree";
-    });
-    systems = [ "eclector-concrete-syntax-tree/test" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "eclector" pkgs) (getAttr "eclector-concrete-syntax-tree" pkgs) (getAttr "fiveam" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  eclector_slash_test = {
-    pname = "eclector_test";
-    version = "20221106-git";
-    asds = [ "eclector" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/eclector/2022-11-06/eclector-20221106-git.tgz";
-      sha256 = "087f3z0j13fc9brb6390qsbw79lr7fhgfdc0hcrib2h5idv406xz";
-      system = "eclector";
-      asd = "eclector";
-    });
-    systems = [ "eclector/test" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "eclector" pkgs) (getAttr "fiveam" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  eco = {
-    pname = "eco";
-    version = "20190813-git";
-    asds = [ "eco" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/eco/2019-08-13/eco-20190813-git.tgz";
-      sha256 = "13fsv9v7fhf05p7j1hrfy2sg813wmgsp9aw4ng4cpzdss24zvf7q";
-      system = "eco";
-      asd = "eco";
-    });
-    systems = [ "eco" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cl-who" pkgs) (getAttr "esrap" pkgs) (getAttr "split-sequence" pkgs) ];
-  };
-  eco-test = {
-    pname = "eco-test";
-    version = "20190813-git";
-    asds = [ "eco-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/eco/2019-08-13/eco-20190813-git.tgz";
-      sha256 = "13fsv9v7fhf05p7j1hrfy2sg813wmgsp9aw4ng4cpzdss24zvf7q";
-      system = "eco-test";
-      asd = "eco-test";
-    });
-    systems = [ "eco-test" ];
-    lispLibs = [ (getAttr "eco" pkgs) (getAttr "fiveam" pkgs) ];
-  };
-  edit-distance = {
-    pname = "edit-distance";
-    version = "20220331-git";
-    asds = [ "edit-distance" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-editdistance/2022-03-31/cl-editdistance-20220331-git.tgz";
-      sha256 = "0nzbgq69wak18vwpk0fp68x8shdxq5vy70213dc2r0hwfzzc10v9";
-      system = "edit-distance";
-      asd = "edit-distance";
-    });
-    systems = [ "edit-distance" ];
-    lispLibs = [  ];
-  };
-  edit-distance-test = {
-    pname = "edit-distance-test";
-    version = "20220331-git";
-    asds = [ "edit-distance-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-editdistance/2022-03-31/cl-editdistance-20220331-git.tgz";
-      sha256 = "0nzbgq69wak18vwpk0fp68x8shdxq5vy70213dc2r0hwfzzc10v9";
-      system = "edit-distance-test";
-      asd = "edit-distance-test";
-    });
-    systems = [ "edit-distance-test" ];
-    lispLibs = [ (getAttr "babel" pkgs) (getAttr "cl-coveralls" pkgs) (getAttr "edit-distance" pkgs) (getAttr "lisp-unit" pkgs) (getAttr "trivial-features" pkgs) ];
-  };
-  elb-log = {
-    pname = "elb-log";
-    version = "20150923-git";
-    asds = [ "elb-log" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/elb-log/2015-09-23/elb-log-20150923-git.tgz";
-      sha256 = "1d0vkmkjr6d96j7cggw5frj50jf14brbm63is41zwfkfl9r4i6bp";
-      system = "elb-log";
-      asd = "elb-log";
-    });
-    systems = [ "elb-log" ];
-    lispLibs = [ (getAttr "cl-annot-prove" pkgs) (getAttr "cl-ppcre" pkgs) (getAttr "cl-syntax" pkgs) (getAttr "cl-syntax-annot" pkgs) (getAttr "cl-syntax-interpol" pkgs) (getAttr "local-time" pkgs) (getAttr "zs3" pkgs) ];
-  };
-  elb-log-test = {
-    pname = "elb-log-test";
-    version = "20150923-git";
-    asds = [ "elb-log-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/elb-log/2015-09-23/elb-log-20150923-git.tgz";
-      sha256 = "1d0vkmkjr6d96j7cggw5frj50jf14brbm63is41zwfkfl9r4i6bp";
-      system = "elb-log-test";
-      asd = "elb-log-test";
-    });
-    systems = [ "elb-log-test" ];
-    lispLibs = [ (getAttr "elb-log" pkgs) (getAttr "prove" pkgs) (getAttr "prove-asdf" pkgs) ];
-  };
-  electron-tools = {
-    pname = "electron-tools";
-    version = "20160421-git";
-    asds = [ "electron-tools" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/electron-tools/2016-04-21/electron-tools-20160421-git.tgz";
-      sha256 = "0fr16gsbn87vyyjpn2gndhpjg7yzsn4j7skyn0py252cvdk5ygf7";
-      system = "electron-tools";
-      asd = "electron-tools";
-    });
-    systems = [ "electron-tools" ];
-    lispLibs = [ (getAttr "osicat" pkgs) (getAttr "trivial-download" pkgs) (getAttr "trivial-exe" pkgs) (getAttr "trivial-extract" pkgs) (getAttr "uiop" pkgs) ];
-  };
-  electron-tools-test = {
-    pname = "electron-tools-test";
-    version = "20160421-git";
-    asds = [ "electron-tools-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/electron-tools/2016-04-21/electron-tools-20160421-git.tgz";
-      sha256 = "0fr16gsbn87vyyjpn2gndhpjg7yzsn4j7skyn0py252cvdk5ygf7";
-      system = "electron-tools-test";
-      asd = "electron-tools-test";
-    });
-    systems = [ "electron-tools-test" ];
-    lispLibs = [ (getAttr "electron-tools" pkgs) (getAttr "fiveam" pkgs) (getAttr "trivial-extract" pkgs) ];
-  };
-  elf = {
-    pname = "elf";
-    version = "20190710-git";
-    asds = [ "elf" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/elf/2019-07-10/elf-20190710-git.tgz";
-      sha256 = "0rd1qcczr2gx76fmxia0kix0p5b49myc9fndibkvwc94cxg085gk";
-      system = "elf";
-      asd = "elf";
-    });
-    systems = [ "elf" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cl-ppcre" pkgs) (getAttr "flexi-streams" pkgs) (getAttr "metabang-bind" pkgs) (getAttr "com_dot_gigamonkeys_dot_binary-data" pkgs) (getAttr "split-sequence" pkgs) (getAttr "trivial-shell" pkgs) ];
-  };
-  elf_slash_test = {
-    pname = "elf_test";
-    version = "20190710-git";
-    asds = [ "elf" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/elf/2019-07-10/elf-20190710-git.tgz";
-      sha256 = "0rd1qcczr2gx76fmxia0kix0p5b49myc9fndibkvwc94cxg085gk";
-      system = "elf";
-      asd = "elf";
-    });
-    systems = [ "elf/test" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "elf" pkgs) (getAttr "metabang-bind" pkgs) (getAttr "stefil" pkgs) (getAttr "trivial-timeout" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  enchant = {
-    pname = "enchant";
-    version = "20211209-git";
-    asds = [ "enchant" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-enchant/2021-12-09/cl-enchant-20211209-git.tgz";
-      sha256 = "1d0b8743g4y75jl69rq75m8csa5af2fwlxkfvs2p06rsx9dljh79";
-      system = "enchant";
-      asd = "enchant";
-    });
-    systems = [ "enchant" ];
-    lispLibs = [ (getAttr "cffi" pkgs) ];
-  };
-  enchant-autoload = {
-    pname = "enchant-autoload";
-    version = "20211209-git";
-    asds = [ "enchant-autoload" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-enchant/2021-12-09/cl-enchant-20211209-git.tgz";
-      sha256 = "1d0b8743g4y75jl69rq75m8csa5af2fwlxkfvs2p06rsx9dljh79";
-      system = "enchant-autoload";
-      asd = "enchant-autoload";
-    });
-    systems = [ "enchant-autoload" ];
-    lispLibs = [ (getAttr "enchant" pkgs) ];
-  };
-  enhanced-boolean = {
-    pname = "enhanced-boolean";
-    version = "1.0";
-    asds = [ "enhanced-boolean" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/enhanced-boolean/2020-03-25/enhanced-boolean_1.0.tgz";
-      sha256 = "17l18lz07fk2kg835vs6c3189d230n1rm9vghk3ls4i356gbq0gy";
-      system = "enhanced-boolean";
-      asd = "enhanced-boolean";
-    });
-    systems = [ "enhanced-boolean" ];
-    lispLibs = [  ];
-  };
-  enhanced-boolean_tests = {
-    pname = "enhanced-boolean_tests";
-    version = "1.0";
-    asds = [ "enhanced-boolean_tests" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/enhanced-boolean/2020-03-25/enhanced-boolean_1.0.tgz";
-      sha256 = "17l18lz07fk2kg835vs6c3189d230n1rm9vghk3ls4i356gbq0gy";
-      system = "enhanced-boolean_tests";
-      asd = "enhanced-boolean_tests";
-    });
-    systems = [ "enhanced-boolean_tests" ];
-    lispLibs = [ (getAttr "enhanced-boolean" pkgs) (getAttr "parachute" pkgs) ];
-  };
-  enhanced-defclass = {
-    pname = "enhanced-defclass";
-    version = "2.1";
-    asds = [ "enhanced-defclass" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/enhanced-defclass/2021-04-11/enhanced-defclass_2.1.tgz";
-      sha256 = "142s5c3pl3x7xdawzsj8pdxiqp4wh6fcajf4la5msvnxgf66d8wg";
-      system = "enhanced-defclass";
-      asd = "enhanced-defclass";
-    });
-    systems = [ "enhanced-defclass" ];
-    lispLibs = [ (getAttr "closer-mop" pkgs) (getAttr "compatible-metaclasses" pkgs) (getAttr "enhanced-eval-when" pkgs) (getAttr "enhanced-find-class" pkgs) (getAttr "evaled-when" pkgs) (getAttr "shared-preferences" pkgs) (getAttr "simple-guess" pkgs) ];
-  };
-  enhanced-defclass_tests = {
-    pname = "enhanced-defclass_tests";
-    version = "2.1";
-    asds = [ "enhanced-defclass_tests" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/enhanced-defclass/2021-04-11/enhanced-defclass_2.1.tgz";
-      sha256 = "142s5c3pl3x7xdawzsj8pdxiqp4wh6fcajf4la5msvnxgf66d8wg";
-      system = "enhanced-defclass_tests";
-      asd = "enhanced-defclass_tests";
-    });
-    systems = [ "enhanced-defclass_tests" ];
-    lispLibs = [ (getAttr "enhanced-defclass" pkgs) (getAttr "parachute" pkgs) ];
-  };
-  enhanced-eval-when = {
-    pname = "enhanced-eval-when";
-    version = "1.0";
-    asds = [ "enhanced-eval-when" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/enhanced-eval-when/2012-11-25/enhanced-eval-when-1.0.tgz";
-      sha256 = "1ws1v297plcbqmcvckg7vqzzgnrwfyx5kd7281r1wrhc26998rx2";
-      system = "enhanced-eval-when";
-      asd = "enhanced-eval-when";
-    });
-    systems = [ "enhanced-eval-when" ];
-    lispLibs = [  ];
-  };
-  enhanced-find-class = {
-    pname = "enhanced-find-class";
-    version = "1.0";
-    asds = [ "enhanced-find-class" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/enhanced-find-class/2020-09-25/enhanced-find-class_1.0.tgz";
-      sha256 = "1pf1mxb238zrmvgm9s0456s1x0m317ls23ls1d987riw69y3w9vx";
-      system = "enhanced-find-class";
-      asd = "enhanced-find-class";
-    });
-    systems = [ "enhanced-find-class" ];
-    lispLibs = [  ];
-  };
-  enhanced-find-class_tests = {
-    pname = "enhanced-find-class_tests";
-    version = "1.0";
-    asds = [ "enhanced-find-class_tests" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/enhanced-find-class/2020-09-25/enhanced-find-class_1.0.tgz";
-      sha256 = "1pf1mxb238zrmvgm9s0456s1x0m317ls23ls1d987riw69y3w9vx";
-      system = "enhanced-find-class_tests";
-      asd = "enhanced-find-class_tests";
-    });
-    systems = [ "enhanced-find-class_tests" ];
-    lispLibs = [ (getAttr "enhanced-find-class" pkgs) (getAttr "parachute" pkgs) ];
-  };
-  enhanced-multiple-value-bind = {
-    pname = "enhanced-multiple-value-bind";
-    version = "1.0.1";
-    asds = [ "enhanced-multiple-value-bind" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/enhanced-multiple-value-bind/2012-11-25/enhanced-multiple-value-bind-1.0.1.tgz";
-      sha256 = "1hv0g60klqzgl8vdppksrr1z5wayijx5jnmxzk5ivj884d8l2i5n";
-      system = "enhanced-multiple-value-bind";
-      asd = "enhanced-multiple-value-bind";
-    });
-    systems = [ "enhanced-multiple-value-bind" ];
-    lispLibs = [  ];
-  };
-  enhanced-typep = {
-    pname = "enhanced-typep";
-    version = "1.0";
-    asds = [ "enhanced-typep" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/enhanced-typep/2020-10-16/enhanced-typep_1.0.tgz";
-      sha256 = "0b22gddkbxnhmi71wa2h51495737lrvsqxnri7g1qdsl1hraml21";
-      system = "enhanced-typep";
-      asd = "enhanced-typep";
-    });
-    systems = [ "enhanced-typep" ];
-    lispLibs = [  ];
-  };
-  enhanced-typep_tests = {
-    pname = "enhanced-typep_tests";
-    version = "1.0";
-    asds = [ "enhanced-typep_tests" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/enhanced-typep/2020-10-16/enhanced-typep_1.0.tgz";
-      sha256 = "0b22gddkbxnhmi71wa2h51495737lrvsqxnri7g1qdsl1hraml21";
-      system = "enhanced-typep_tests";
-      asd = "enhanced-typep_tests";
-    });
-    systems = [ "enhanced-typep_tests" ];
-    lispLibs = [ (getAttr "enhanced-boolean" pkgs) (getAttr "enhanced-typep" pkgs) (getAttr "parachute" pkgs) ];
-  };
-  enumerations = {
-    pname = "enumerations";
-    version = "20211230-git";
-    asds = [ "enumerations" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-enumeration/2021-12-30/cl-enumeration-20211230-git.tgz";
-      sha256 = "04y7xizlhhsw5ajhcslkk8rzp1knvmfybf1x5x88njsssw984d73";
-      system = "enumerations";
-      asd = "enumerations";
-    });
-    systems = [ "enumerations" ];
-    lispLibs = [  ];
-  };
-  envy = {
-    pname = "envy";
-    version = "20220331-git";
-    asds = [ "envy" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/envy/2022-03-31/envy-20220331-git.tgz";
-      sha256 = "1r0wgimd7z57x8cv69sw76w3y5l70hq50882a9nq5l4v64lg55fq";
-      system = "envy";
-      asd = "envy";
-    });
-    systems = [ "envy" ];
-    lispLibs = [  ];
-  };
-  envy-test = {
-    pname = "envy-test";
-    version = "20220331-git";
-    asds = [ "envy-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/envy/2022-03-31/envy-20220331-git.tgz";
-      sha256 = "1r0wgimd7z57x8cv69sw76w3y5l70hq50882a9nq5l4v64lg55fq";
-      system = "envy-test";
-      asd = "envy-test";
-    });
-    systems = [ "envy-test" ];
-    lispLibs = [ (getAttr "envy" pkgs) (getAttr "osicat" pkgs) (getAttr "prove" pkgs) ];
-  };
-  eos = {
-    pname = "eos";
-    version = "20200925-git";
-    asds = [ "eos" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/eos/2020-09-25/eos-20200925-git.tgz";
-      sha256 = "1afllvmlnx97yzz404gycl3pa3kwx427k3hrbf37rpmjlv47knhk";
-      system = "eos";
-      asd = "eos";
-    });
-    systems = [ "eos" ];
-    lispLibs = [  ];
-  };
-  eos-tests = {
-    pname = "eos-tests";
-    version = "20200925-git";
-    asds = [ "eos-tests" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/eos/2020-09-25/eos-20200925-git.tgz";
-      sha256 = "1afllvmlnx97yzz404gycl3pa3kwx427k3hrbf37rpmjlv47knhk";
-      system = "eos-tests";
-      asd = "eos";
-    });
-    systems = [ "eos-tests" ];
-    lispLibs = [ (getAttr "eos" pkgs) ];
-  };
-  epigraph = {
-    pname = "epigraph";
-    version = "20200325-git";
-    asds = [ "epigraph" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/epigraph/2020-03-25/epigraph-20200325-git.tgz";
-      sha256 = "0gqiv23grdiz6pfly7mqyfmq4c6nwcamlvgsnixn8qi9md7b9d64";
-      system = "epigraph";
-      asd = "epigraph";
-    });
-    systems = [ "epigraph" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) ];
-  };
-  epigraph-test = {
-    pname = "epigraph-test";
-    version = "20200325-git";
-    asds = [ "epigraph-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/epigraph/2020-03-25/epigraph-20200325-git.tgz";
-      sha256 = "0gqiv23grdiz6pfly7mqyfmq4c6nwcamlvgsnixn8qi9md7b9d64";
-      system = "epigraph-test";
-      asd = "epigraph";
-    });
-    systems = [ "epigraph-test" ];
-    lispLibs = [ (getAttr "epigraph" pkgs) (getAttr "fiveam" pkgs) ];
-  };
-  epmd = {
-    pname = "epmd";
-    version = "20140211-git";
-    asds = [ "epmd" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-epmd/2014-02-11/cl-epmd-20140211-git.tgz";
-      sha256 = "1334856x7jqhv52wlab6wxmfqslj21pmryx3lwmlsn7c3ypwz4rw";
-      system = "epmd";
-      asd = "epmd";
-    });
-    systems = [ "epmd" ];
-    lispLibs = [ (getAttr "com_dot_gigamonkeys_dot_binary-data" pkgs) (getAttr "usocket" pkgs) ];
-  };
-  epmd-test = {
-    pname = "epmd-test";
-    version = "20140211-git";
-    asds = [ "epmd-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-epmd/2014-02-11/cl-epmd-20140211-git.tgz";
-      sha256 = "1334856x7jqhv52wlab6wxmfqslj21pmryx3lwmlsn7c3ypwz4rw";
-      system = "epmd-test";
-      asd = "epmd-test";
-    });
-    systems = [ "epmd-test" ];
-    lispLibs = [ (getAttr "epmd" pkgs) (getAttr "fiveam" pkgs) (getAttr "flexi-streams" pkgs) ];
-  };
-  equals = {
-    pname = "equals";
-    version = "20140826-git";
-    asds = [ "equals" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/equals/2014-08-26/equals-20140826-git.tgz";
-      sha256 = "0z80z2xb7vlwfgx4sfmj1yba8gs6cgwb86iqrby25h4h34w7kj1w";
-      system = "equals";
-      asd = "equals";
-    });
-    systems = [ "equals" ];
-    lispLibs = [  ];
-  };
-  erjoalgo-webutil = {
-    pname = "erjoalgo-webutil";
-    version = "20220707-git";
-    asds = [ "erjoalgo-webutil" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/erjoalgo-webutil/2022-07-07/erjoalgo-webutil-20220707-git.tgz";
-      sha256 = "1bfs540yx12fhsrs6xdcjssr2hc7hn1y2i1m8hqdfni13ax9j3v8";
-      system = "erjoalgo-webutil";
-      asd = "erjoalgo-webutil";
-    });
-    systems = [ "erjoalgo-webutil" ];
-    lispLibs = [ (getAttr "cl-json" pkgs) (getAttr "cl-ppcre" pkgs) (getAttr "drakma" pkgs) (getAttr "fiasco" pkgs) (getAttr "gzip-stream" pkgs) (getAttr "hunchentoot" pkgs) (getAttr "vom" pkgs) ];
-  };
-  erlang-term = {
-    pname = "erlang-term";
-    version = "20220220-git";
-    asds = [ "erlang-term" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-erlang-term/2022-02-20/cl-erlang-term-20220220-git.tgz";
-      sha256 = "1rmnbirbvwmik3j0xkkn90kzx90klrwx7hmscl0ywcbaprm71wkv";
-      system = "erlang-term";
-      asd = "erlang-term";
-    });
-    systems = [ "erlang-term" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "ieee-floats" pkgs) (getAttr "nibbles" pkgs) (getAttr "zlib" pkgs) ];
-  };
-  erlang-term-test = {
-    pname = "erlang-term-test";
-    version = "20220220-git";
-    asds = [ "erlang-term-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-erlang-term/2022-02-20/cl-erlang-term-20220220-git.tgz";
-      sha256 = "1rmnbirbvwmik3j0xkkn90kzx90klrwx7hmscl0ywcbaprm71wkv";
-      system = "erlang-term-test";
-      asd = "erlang-term-test";
-    });
-    systems = [ "erlang-term-test" ];
-    lispLibs = [ (getAttr "erlang-term" pkgs) (getAttr "fiveam" pkgs) (getAttr "nibbles" pkgs) ];
-  };
-  ernestine = {
-    pname = "ernestine";
-    version = "20220220-git";
-    asds = [ "ernestine" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/ernestine/2022-02-20/ernestine-20220220-git.tgz";
-      sha256 = "1gl8pjp44j01nfw9dzk1qdl6njnqcaccp5czcr5rq47l1aicrymn";
-      system = "ernestine";
-      asd = "ernestine";
-    });
-    systems = [ "ernestine" ];
-    lispLibs = [ (getAttr "cl-ppcre" pkgs) (getAttr "cl-prevalence" pkgs) (getAttr "drakma" pkgs) (getAttr "split-sequence" pkgs) ];
-  };
-  ernestine-tests = {
-    pname = "ernestine-tests";
-    version = "20220220-git";
-    asds = [ "ernestine-tests" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/ernestine/2022-02-20/ernestine-20220220-git.tgz";
-      sha256 = "1gl8pjp44j01nfw9dzk1qdl6njnqcaccp5czcr5rq47l1aicrymn";
-      system = "ernestine-tests";
-      asd = "ernestine-tests";
-    });
-    systems = [ "ernestine-tests" ];
-    lispLibs = [ (getAttr "ernestine" pkgs) (getAttr "lisp-unit" pkgs) ];
-  };
-  erudite = {
-    pname = "erudite";
-    version = "20221106-git";
-    asds = [ "erudite" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/erudite/2022-11-06/erudite-20221106-git.tgz";
-      sha256 = "0za0wrblmk2kclc3wvlvsjf5mkri5ndhgc5ppc9p4zac3fd7p67n";
-      system = "erudite";
-      asd = "erudite";
-    });
-    systems = [ "erudite" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cl-fad" pkgs) (getAttr "cl-ppcre" pkgs) (getAttr "cl-template" pkgs) (getAttr "log4cl" pkgs) (getAttr "split-sequence" pkgs) (getAttr "swank-client" pkgs) ];
-  };
-  erudite-test = {
-    pname = "erudite-test";
-    version = "20221106-git";
-    asds = [ "erudite-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/erudite/2022-11-06/erudite-20221106-git.tgz";
-      sha256 = "0za0wrblmk2kclc3wvlvsjf5mkri5ndhgc5ppc9p4zac3fd7p67n";
-      system = "erudite-test";
-      asd = "erudite-test";
-    });
-    systems = [ "erudite-test" ];
-    lispLibs = [ (getAttr "erudite" pkgs) (getAttr "fiveam" pkgs) ];
-  };
-  esa-mcclim = {
-    pname = "esa-mcclim";
-    version = "20221106-git";
-    asds = [ "esa-mcclim" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/mcclim/2022-11-06/mcclim-20221106-git.tgz";
-      sha256 = "0hz6vz4c0xv8bjx02hf3rbnp66c7ifx2ld4y6nxdz6i70wyhwbdf";
-      system = "esa-mcclim";
-      asd = "esa-mcclim";
-    });
-    systems = [ "esa-mcclim" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "clim-core" pkgs) ];
-  };
-  escalator = {
-    pname = "escalator";
-    version = "20200427-git";
-    asds = [ "escalator" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/escalator/2020-04-27/escalator-20200427-git.tgz";
-      sha256 = "136n4k983f90cqj6na17ff2fvk9rv4ma8l5y66q7lkbb69idipla";
-      system = "escalator";
-      asd = "escalator";
-    });
-    systems = [ "escalator" ];
-    lispLibs = [ (getAttr "iterate" pkgs) ];
-  };
-  escalator-bench = {
-    pname = "escalator-bench";
-    version = "20200427-git";
-    asds = [ "escalator-bench" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/escalator/2020-04-27/escalator-20200427-git.tgz";
-      sha256 = "136n4k983f90cqj6na17ff2fvk9rv4ma8l5y66q7lkbb69idipla";
-      system = "escalator-bench";
-      asd = "escalator-bench";
-    });
-    systems = [ "escalator-bench" ];
-    lispLibs = [ (getAttr "escalator" pkgs) (getAttr "iterate" pkgs) ];
-  };
-  esrap = {
-    pname = "esrap";
-    version = "20220331-git";
-    asds = [ "esrap" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/esrap/2022-03-31/esrap-20220331-git.tgz";
-      sha256 = "1in8a2ygfv7asw2h386sja7222b49ivzvdfc416d0sv74i7s4h8b";
-      system = "esrap";
-      asd = "esrap";
-    });
-    systems = [ "esrap" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "trivial-with-current-source-form" pkgs) ];
-  };
-  esrap-liquid = {
-    pname = "esrap-liquid";
-    version = "20161031-git";
-    asds = [ "esrap-liquid" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/esrap-liquid/2016-10-31/esrap-liquid-20161031-git.tgz";
-      sha256 = "0agsi8qx6v3c7r6ri5rp78vdb570pdgkvw80va3045crl61mkjzs";
-      system = "esrap-liquid";
-      asd = "esrap-liquid";
-    });
-    systems = [ "esrap-liquid" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cl-interpol" pkgs) (getAttr "cl-ppcre" pkgs) (getAttr "iterate" pkgs) ];
-  };
-  esrap-liquid-tests = {
-    pname = "esrap-liquid-tests";
-    version = "20161031-git";
-    asds = [ "esrap-liquid-tests" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/esrap-liquid/2016-10-31/esrap-liquid-20161031-git.tgz";
-      sha256 = "0agsi8qx6v3c7r6ri5rp78vdb570pdgkvw80va3045crl61mkjzs";
-      system = "esrap-liquid-tests";
-      asd = "esrap-liquid";
-    });
-    systems = [ "esrap-liquid-tests" ];
-    lispLibs = [ (getAttr "cl-interpol" pkgs) (getAttr "esrap-liquid" pkgs) (getAttr "fiveam" pkgs) ];
-  };
-  esrap-peg = {
-    pname = "esrap-peg";
-    version = "20191007-git";
-    asds = [ "esrap-peg" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/esrap-peg/2019-10-07/esrap-peg-20191007-git.tgz";
-      sha256 = "0540i7whx1w0n9fdakwk8rnn511xga9xfvczq9y1jcgz1hh42w53";
-      system = "esrap-peg";
-      asd = "esrap-peg";
-    });
-    systems = [ "esrap-peg" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cl-unification" pkgs) (getAttr "esrap" pkgs) (getAttr "iterate" pkgs) ];
-  };
-  esrap_slash_tests = {
-    pname = "esrap_tests";
-    version = "20220331-git";
-    asds = [ "esrap" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/esrap/2022-03-31/esrap-20220331-git.tgz";
-      sha256 = "1in8a2ygfv7asw2h386sja7222b49ivzvdfc416d0sv74i7s4h8b";
-      system = "esrap";
-      asd = "esrap";
-    });
-    systems = [ "esrap/tests" ];
-    lispLibs = [ (getAttr "esrap" pkgs) (getAttr "fiveam" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  etcd-test = {
-    pname = "etcd-test";
-    version = "20220707-git";
-    asds = [ "etcd-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-etcd/2022-07-07/cl-etcd-20220707-git.tgz";
-      sha256 = "0g4lkmzddg5hbdxc407w5y7z71p1swrifih9hf3g9jx3hbj3ci37";
-      system = "etcd-test";
-      asd = "etcd-test";
-    });
-    systems = [ "etcd-test" ];
-    lispLibs = [ (getAttr "cl-etcd" pkgs) (getAttr "cl-toml" pkgs) ];
-  };
-  ev = {
-    pname = "ev";
-    version = "20150923-git";
-    asds = [ "ev" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-ev/2015-09-23/cl-ev-20150923-git.tgz";
-      sha256 = "0qnkzkw9mn4w6b0q9y207z8ddnd5a2gn42q55yycp2qrvvv47lhp";
-      system = "ev";
-      asd = "ev";
-    });
-    systems = [ "ev" ];
-    lispLibs = [ (getAttr "cffi" pkgs) (getAttr "trivial-garbage" pkgs) ];
-  };
-  evaled-when = {
-    pname = "evaled-when";
-    version = "1.0";
-    asds = [ "evaled-when" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/evaled-when/2020-09-25/evaled-when_1.0.tgz";
-      sha256 = "0482s89nb5jyyg5wmb010p914pgq6ls8z5s12hdw7wrpy675kdkh";
-      system = "evaled-when";
-      asd = "evaled-when";
-    });
-    systems = [ "evaled-when" ];
-    lispLibs = [ (getAttr "trivial-cltl2" pkgs) ];
-  };
-  evaled-when_tests = {
-    pname = "evaled-when_tests";
-    version = "1.0";
-    asds = [ "evaled-when_tests" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/evaled-when/2020-09-25/evaled-when_1.0.tgz";
-      sha256 = "0482s89nb5jyyg5wmb010p914pgq6ls8z5s12hdw7wrpy675kdkh";
-      system = "evaled-when_tests";
-      asd = "evaled-when_tests";
-    });
-    systems = [ "evaled-when_tests" ];
-    lispLibs = [ (getAttr "enhanced-boolean" pkgs) (getAttr "evaled-when" pkgs) (getAttr "parachute" pkgs) ];
-  };
-  event-emitter = {
-    pname = "event-emitter";
-    version = "20220331-git";
-    asds = [ "event-emitter" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/event-emitter/2022-03-31/event-emitter-20220331-git.tgz";
-      sha256 = "1v1mhwypc08hiz14kg6vp4xzkhlicw29vxgawz8m5ydxl2ranwc0";
-      system = "event-emitter";
-      asd = "event-emitter";
-    });
-    systems = [ "event-emitter" ];
-    lispLibs = [  ];
-  };
-  event-emitter-test = {
-    pname = "event-emitter-test";
-    version = "20220331-git";
-    asds = [ "event-emitter-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/event-emitter/2022-03-31/event-emitter-20220331-git.tgz";
-      sha256 = "1v1mhwypc08hiz14kg6vp4xzkhlicw29vxgawz8m5ydxl2ranwc0";
-      system = "event-emitter-test";
-      asd = "event-emitter-test";
-    });
-    systems = [ "event-emitter-test" ];
-    lispLibs = [ (getAttr "event-emitter" pkgs) (getAttr "prove" pkgs) ];
-  };
-  event-glue = {
-    pname = "event-glue";
-    version = "20150608-git";
-    asds = [ "event-glue" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/event-glue/2015-06-08/event-glue-20150608-git.tgz";
-      sha256 = "1cmxdx5nawzqafz9b6nswp20d3zlaks44ln4n6bf5jxji9n3vany";
-      system = "event-glue";
-      asd = "event-glue";
-    });
-    systems = [ "event-glue" ];
-    lispLibs = [  ];
-  };
-  event-glue-test = {
-    pname = "event-glue-test";
-    version = "20150608-git";
-    asds = [ "event-glue-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/event-glue/2015-06-08/event-glue-20150608-git.tgz";
-      sha256 = "1cmxdx5nawzqafz9b6nswp20d3zlaks44ln4n6bf5jxji9n3vany";
-      system = "event-glue-test";
-      asd = "event-glue-test";
-    });
-    systems = [ "event-glue-test" ];
-    lispLibs = [ (getAttr "event-glue" pkgs) (getAttr "fiveam" pkgs) ];
-  };
-  eventbus = {
-    pname = "eventbus";
-    version = "20191227-git";
-    asds = [ "eventbus" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/eventbus/2019-12-27/eventbus-20191227-git.tgz";
-      sha256 = "0slqx3zq6sbz3rg4g79j8y25sx4405y6ff3x6l5v8v4v42m1s0p2";
-      system = "eventbus";
-      asd = "eventbus";
-    });
-    systems = [ "eventbus" ];
-    lispLibs = [ (getAttr "simplet-asdf" pkgs) ];
-  };
-  eventbus_slash_test = {
-    pname = "eventbus_test";
-    version = "20191227-git";
-    asds = [ "eventbus" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/eventbus/2019-12-27/eventbus-20191227-git.tgz";
-      sha256 = "0slqx3zq6sbz3rg4g79j8y25sx4405y6ff3x6l5v8v4v42m1s0p2";
-      system = "eventbus";
-      asd = "eventbus";
-    });
-    systems = [ "eventbus/test" ];
-    lispLibs = [ (getAttr "eventbus" pkgs) (getAttr "simplet" pkgs) (getAttr "simplet-asdf" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  eventfd = {
-    pname = "eventfd";
-    version = "20171130-git";
-    asds = [ "eventfd" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/eventfd/2017-11-30/eventfd-20171130-git.tgz";
-      sha256 = "1zwg043vqzk665k9dxgxhik20wgkl204anjna94zg6037m33vdiw";
-      system = "eventfd";
-      asd = "eventfd";
-    });
-    systems = [ "eventfd" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cffi-grovel" pkgs) (getAttr "iolib" pkgs) ];
-  };
-  everblocking-stream = {
-    pname = "everblocking-stream";
-    version = "20181018-git";
-    asds = [ "everblocking-stream" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/everblocking-stream/2018-10-18/everblocking-stream-20181018-git.tgz";
-      sha256 = "1xvfsx2ldwcprlynikn1rikxh3lfdyzl2p72glzvgh20sm93p1rz";
-      system = "everblocking-stream";
-      asd = "everblocking-stream";
-    });
-    systems = [ "everblocking-stream" ];
-    lispLibs = [ (getAttr "trivial-gray-streams" pkgs) ];
-  };
-  evol = {
-    pname = "evol";
-    version = "20101006-git";
-    asds = [ "evol" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/evol/2010-10-06/evol-20101006-git.tgz";
-      sha256 = "1hp6wygj44llkscqq721xg4a7j5faqjcfc646lvkia5xg81zbf65";
-      system = "evol";
-      asd = "evol";
-    });
-    systems = [ "evol" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "bordeaux-threads" pkgs) (getAttr "cl-fad" pkgs) (getAttr "cl-ppcre" pkgs) (getAttr "external-program" pkgs) (getAttr "patron" pkgs) (getAttr "unix-options" pkgs) ];
-  };
-  evol-test = {
-    pname = "evol-test";
-    version = "20101006-git";
-    asds = [ "evol-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/evol/2010-10-06/evol-20101006-git.tgz";
-      sha256 = "1hp6wygj44llkscqq721xg4a7j5faqjcfc646lvkia5xg81zbf65";
-      system = "evol-test";
-      asd = "evol-test";
-    });
-    systems = [ "evol-test" ];
-    lispLibs = [ (getAttr "evol" pkgs) (getAttr "stefil" pkgs) ];
-  };
-  example-bot = {
-    pname = "example-bot";
-    version = "20200925-git";
-    asds = [ "example-bot" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/lispcord/2020-09-25/lispcord-20200925-git.tgz";
-      sha256 = "1bkvsbnbv21q8xz8z2nmczznd0sllr57l3sc2wm5cjn6h3qg1sgh";
-      system = "example-bot";
-      asd = "example-bot";
-    });
-    systems = [ "example-bot" ];
-    lispLibs = [ (getAttr "lispcord" pkgs) ];
-  };
-  exit-hooks = {
-    pname = "exit-hooks";
-    version = "20170403-git";
-    asds = [ "exit-hooks" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/exit-hooks/2017-04-03/exit-hooks-20170403-git.tgz";
-      sha256 = "00rk0pr2cy3hy6giblh166b7yrg06d5lanipjcqv508gkfb0vi47";
-      system = "exit-hooks";
-      asd = "exit-hooks";
-    });
-    systems = [ "exit-hooks" ];
-    lispLibs = [  ];
-  };
-  exponential-backoff = {
-    pname = "exponential-backoff";
-    version = "20150113-git";
-    asds = [ "exponential-backoff" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/exponential-backoff/2015-01-13/exponential-backoff-20150113-git.tgz";
-      sha256 = "1389hm9hxv85s0125ja4js1bvh8ay4dsy9q1gaynjv27ynik6gmv";
-      system = "exponential-backoff";
-      asd = "exponential-backoff";
-    });
-    systems = [ "exponential-backoff" ];
-    lispLibs = [  ];
-  };
-  exscribe = {
-    pname = "exscribe";
-    version = "20200925-git";
-    asds = [ "exscribe" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/exscribe/2020-09-25/exscribe-20200925-git.tgz";
-      sha256 = "02vsavasr5nbhrk86b7d8xpr6sm8cyrg3vs2pbpkls2iypffyd2h";
-      system = "exscribe";
-      asd = "exscribe";
-    });
-    systems = [ "exscribe" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "fare-memoization" pkgs) (getAttr "fare-scripts" pkgs) (getAttr "fare-utils" pkgs) (getAttr "quri" pkgs) (getAttr "scribble" pkgs) (getAttr "trivia_dot_quasiquote" pkgs) ];
-  };
-  exscribe_slash_typeset = {
-    pname = "exscribe_typeset";
-    version = "20200925-git";
-    asds = [ "exscribe" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/exscribe/2020-09-25/exscribe-20200925-git.tgz";
-      sha256 = "02vsavasr5nbhrk86b7d8xpr6sm8cyrg3vs2pbpkls2iypffyd2h";
-      system = "exscribe";
-      asd = "exscribe";
-    });
-    systems = [ "exscribe/typeset" ];
-    lispLibs = [ (getAttr "cl-typesetting" pkgs) (getAttr "exscribe" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  ext-blog = {
-    pname = "ext-blog";
-    version = "20160825-git";
-    asds = [ "ext-blog" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/ext-blog/2016-08-25/ext-blog-20160825-git.tgz";
-      sha256 = "10qnl3p994wg12c0cn6xgkgmwfip0fk0sjyqyy0j5bdrp32gr5wg";
-      system = "ext-blog";
-      asd = "ext-blog";
-    });
-    systems = [ "ext-blog" ];
-    lispLibs = [ (getAttr "closure-template" pkgs) (getAttr "cl-fad" pkgs) (getAttr "cl-store" pkgs) (getAttr "image" pkgs) (getAttr "kl-verify" pkgs) (getAttr "local-time" pkgs) (getAttr "restas" pkgs) (getAttr "restas_dot_file-publisher" pkgs) (getAttr "s-xml-rpc" pkgs) ];
-  };
-  extended-reals = {
-    pname = "extended-reals";
-    version = "20180328-git";
-    asds = [ "extended-reals" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/extended-reals/2018-03-28/extended-reals-20180328-git.tgz";
-      sha256 = "0vq191win5sq37mrwjhvi463jqh1mkwbsa0hja69syq789pgaxmb";
-      system = "extended-reals";
-      asd = "extended-reals";
-    });
-    systems = [ "extended-reals" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) ];
-  };
-  extensible-compound-types = {
-    pname = "extensible-compound-types";
-    version = "20221106-git";
-    asds = [ "extensible-compound-types" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/extensible-compound-types/2022-11-06/extensible-compound-types-20221106-git.tgz";
-      sha256 = "02why0lajvf4iccw7xhcpsn7956i731xavq2mmyv4plwhd71rczc";
-      system = "extensible-compound-types";
-      asd = "extensible-compound-types";
-    });
-    systems = [ "extensible-compound-types" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cl-environments" pkgs) (getAttr "compiler-macro-notes" pkgs) (getAttr "fiveam" pkgs) (getAttr "in-nomine" pkgs) (getAttr "optima" pkgs) (getAttr "trivial-types" pkgs) ];
-  };
-  extensible-compound-types-cl = {
-    pname = "extensible-compound-types-cl";
-    version = "20221106-git";
-    asds = [ "extensible-compound-types-cl" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/extensible-compound-types/2022-11-06/extensible-compound-types-20221106-git.tgz";
-      sha256 = "02why0lajvf4iccw7xhcpsn7956i731xavq2mmyv4plwhd71rczc";
-      system = "extensible-compound-types-cl";
-      asd = "extensible-compound-types-cl";
-    });
-    systems = [ "extensible-compound-types-cl" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cl-form-types" pkgs) (getAttr "extensible-compound-types" pkgs) (getAttr "fiveam" pkgs) ];
-  };
-  extensible-compound-types-cl_slash_specializable-structs = {
-    pname = "extensible-compound-types-cl_specializable-structs";
-    version = "20221106-git";
-    asds = [ "extensible-compound-types-cl" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/extensible-compound-types/2022-11-06/extensible-compound-types-20221106-git.tgz";
-      sha256 = "02why0lajvf4iccw7xhcpsn7956i731xavq2mmyv4plwhd71rczc";
-      system = "extensible-compound-types-cl";
-      asd = "extensible-compound-types-cl";
-    });
-    systems = [ "extensible-compound-types-cl/specializable-structs" ];
-    lispLibs = [ (getAttr "cl-form-types" pkgs) (getAttr "cl-ppcre" pkgs) (getAttr "extensible-compound-types-cl" pkgs) (getAttr "fiveam" pkgs) (getAttr "polymorphic-functions" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  extensible-sequences = {
-    pname = "extensible-sequences";
-    version = "20130813-darcs";
-    asds = [ "extensible-sequences" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/sequence-iterators/2013-08-13/sequence-iterators-20130813-darcs.tgz";
-      sha256 = "12flvy6hysqw0fa2jfkxrgphlk6b25hg2w2dxm1ylax0gw9fh1l5";
-      system = "extensible-sequences";
-      asd = "extensible-sequences";
-    });
-    systems = [ "extensible-sequences" ];
-    lispLibs = [ (getAttr "sequence-iterators" pkgs) ];
-  };
-  external-program = {
-    pname = "external-program";
-    version = "20190307-git";
-    asds = [ "external-program" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/external-program/2019-03-07/external-program-20190307-git.tgz";
-      sha256 = "0vww1x3yilb3bjwg6k184vaj4vxyxw4vralhnlm6lk4xac67kc9z";
-      system = "external-program";
-      asd = "external-program";
-    });
-    systems = [ "external-program" ];
-    lispLibs = [ (getAttr "trivial-features" pkgs) ];
-  };
-  external-program-test = {
-    pname = "external-program-test";
-    version = "20190307-git";
-    asds = [ "external-program-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/external-program/2019-03-07/external-program-20190307-git.tgz";
-      sha256 = "0vww1x3yilb3bjwg6k184vaj4vxyxw4vralhnlm6lk4xac67kc9z";
-      system = "external-program-test";
-      asd = "external-program";
-    });
-    systems = [ "external-program-test" ];
-    lispLibs = [ (getAttr "external-program" pkgs) (getAttr "fiveam" pkgs) ];
-  };
-  external-symbol-not-found = {
-    pname = "external-symbol-not-found";
-    version = "20220220-git";
-    asds = [ "external-symbol-not-found" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/external-symbol-not-found/2022-02-20/external-symbol-not-found-20220220-git.tgz";
-      sha256 = "1wlz36y1dka4409ngvp583jafwb9z8y6ghmyb84wn9spj66kghz8";
-      system = "external-symbol-not-found";
-      asd = "external-symbol-not-found";
-    });
-    systems = [ "external-symbol-not-found" ];
-    lispLibs = [  ];
-  };
-  f-underscore = {
-    pname = "f-underscore";
-    version = "20101006-darcs";
-    asds = [ "f-underscore" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/f-underscore/2010-10-06/f-underscore-20101006-darcs.tgz";
-      sha256 = "0mqvb2rxa08y07lj6smp8gf1ig32802fxq7mw5a283f2nkrinnb5";
-      system = "f-underscore";
-      asd = "f-underscore";
-    });
-    systems = [ "f-underscore" ];
-    lispLibs = [  ];
-  };
-  f2cl = {
-    pname = "f2cl";
-    version = "20200925-git";
-    asds = [ "f2cl" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/f2cl/2020-09-25/f2cl-20200925-git.tgz";
-      sha256 = "0kq1lrz0sg4kj64w0ysihnfwi65pami362fs2mvpyf1yhgxmq08y";
-      system = "f2cl";
-      asd = "f2cl";
-    });
-    systems = [ "f2cl" ];
-    lispLibs = [ (getAttr "f2cl-asdf" pkgs) ];
-  };
-  f2cl-asdf = {
-    pname = "f2cl-asdf";
-    version = "20200925-git";
-    asds = [ "f2cl-asdf" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/f2cl/2020-09-25/f2cl-20200925-git.tgz";
-      sha256 = "0kq1lrz0sg4kj64w0ysihnfwi65pami362fs2mvpyf1yhgxmq08y";
-      system = "f2cl-asdf";
-      asd = "f2cl-asdf";
-    });
-    systems = [ "f2cl-asdf" ];
-    lispLibs = [  ];
-  };
-  f2cl-lib = {
-    pname = "f2cl-lib";
-    version = "20220220-git";
-    asds = [ "f2cl-lib" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/clml/2022-02-20/clml-20220220-git.tgz";
-      sha256 = "0m3w59c74z3wdj1g26122svljiq192xhvmx7b2lkb7bxnf4778m1";
-      system = "f2cl-lib";
-      asd = "f2cl-lib";
-    });
-    systems = [ "f2cl-lib" ];
-    lispLibs = [  ];
-  };
-  fact-base = {
-    pname = "fact-base";
-    version = "20180328-git";
-    asds = [ "fact-base" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/fact-base/2018-03-28/fact-base-20180328-git.tgz";
-      sha256 = "14i0vqqxszabhas0z9dfxhvnbsxl4iic77m4i76w7iznmrcma2ar";
-      system = "fact-base";
-      asd = "fact-base";
-    });
-    systems = [ "fact-base" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cl-fad" pkgs) (getAttr "local-time" pkgs) (getAttr "optima" pkgs) ];
-  };
-  factory-alien = {
-    pname = "factory-alien";
-    version = "20220707-git";
-    asds = [ "factory-alien" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/factory-alien/2022-07-07/factory-alien-20220707-git.tgz";
-      sha256 = "0c59d8faxim39vs0mmy7fxbl721w4vph0ndqwfj7wh6wwqcl5kvm";
-      system = "factory-alien";
-      asd = "factory-alien";
-    });
-    systems = [ "factory-alien" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "closer-mop" pkgs) ];
-  };
-  factory-alien_slash_postmodern = {
-    pname = "factory-alien_postmodern";
-    version = "20220707-git";
-    asds = [ "factory-alien" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/factory-alien/2022-07-07/factory-alien-20220707-git.tgz";
-      sha256 = "0c59d8faxim39vs0mmy7fxbl721w4vph0ndqwfj7wh6wwqcl5kvm";
-      system = "factory-alien";
-      asd = "factory-alien";
-    });
-    systems = [ "factory-alien/postmodern" ];
-    lispLibs = [ (getAttr "factory-alien" pkgs) (getAttr "postmodern" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  factory-alien_slash_test = {
-    pname = "factory-alien_test";
-    version = "20220707-git";
-    asds = [ "factory-alien" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/factory-alien/2022-07-07/factory-alien-20220707-git.tgz";
-      sha256 = "0c59d8faxim39vs0mmy7fxbl721w4vph0ndqwfj7wh6wwqcl5kvm";
-      system = "factory-alien";
-      asd = "factory-alien";
-    });
-    systems = [ "factory-alien/test" ];
-    lispLibs = [ (getAttr "factory-alien" pkgs) (getAttr "parachute" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  facts = {
-    pname = "facts";
-    version = "20221106-git";
-    asds = [ "facts" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-facts/2022-11-06/cl-facts-20221106-git.tgz";
-      sha256 = "09z1vwzjm7hlb529jl3hcjnfd11gh128lmdg51im7ar4jv4746iw";
-      system = "facts";
-      asd = "facts";
-    });
-    systems = [ "facts" ];
-    lispLibs = [ (getAttr "lessp" pkgs) (getAttr "rollback" pkgs) (getAttr "local-time" pkgs) ];
-  };
-  fakenil = {
-    pname = "fakenil";
-    version = "1.0";
-    asds = [ "fakenil" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/fakenil/2020-03-25/fakenil_1.0.tgz";
-      sha256 = "0ipqax3sgcs1dsgxz8d2pmfg324k6l35pn0nz89w5jl02fia61l3";
-      system = "fakenil";
-      asd = "fakenil";
-    });
-    systems = [ "fakenil" ];
-    lispLibs = [  ];
-  };
-  fakenil_tests = {
-    pname = "fakenil_tests";
-    version = "1.0";
-    asds = [ "fakenil_tests" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/fakenil/2020-03-25/fakenil_1.0.tgz";
-      sha256 = "0ipqax3sgcs1dsgxz8d2pmfg324k6l35pn0nz89w5jl02fia61l3";
-      system = "fakenil_tests";
-      asd = "fakenil_tests";
-    });
-    systems = [ "fakenil_tests" ];
-    lispLibs = [ (getAttr "fakenil" pkgs) (getAttr "parachute" pkgs) ];
-  };
-  fare-csv = {
-    pname = "fare-csv";
-    version = "20171227-git";
-    asds = [ "fare-csv" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/fare-csv/2017-12-27/fare-csv-20171227-git.tgz";
-      sha256 = "07y15zm2x28crfjjpcngqqmzzrm2fgj5k8hd1l39qii44wc4rm4b";
-      system = "fare-csv";
-      asd = "fare-csv";
-    });
-    systems = [ "fare-csv" ];
-    lispLibs = [  ];
-  };
-  fare-memoization = {
-    pname = "fare-memoization";
-    version = "20180430-git";
-    asds = [ "fare-memoization" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/fare-memoization/2018-04-30/fare-memoization-20180430-git.tgz";
-      sha256 = "1blmrb4c9gsxj87scz74z1s8w9d1w2r48fyxj0y1sw3vr6bsbb8f";
-      system = "fare-memoization";
-      asd = "fare-memoization";
-    });
-    systems = [ "fare-memoization" ];
-    lispLibs = [  ];
-  };
-  fare-memoization_slash_test = {
-    pname = "fare-memoization_test";
-    version = "20180430-git";
-    asds = [ "fare-memoization" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/fare-memoization/2018-04-30/fare-memoization-20180430-git.tgz";
-      sha256 = "1blmrb4c9gsxj87scz74z1s8w9d1w2r48fyxj0y1sw3vr6bsbb8f";
-      system = "fare-memoization";
-      asd = "fare-memoization";
-    });
-    systems = [ "fare-memoization/test" ];
-    lispLibs = [ (getAttr "fare-memoization" pkgs) (getAttr "hu_dot_dwim_dot_stefil" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  fare-mop = {
-    pname = "fare-mop";
-    version = "20151218-git";
-    asds = [ "fare-mop" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/fare-mop/2015-12-18/fare-mop-20151218-git.tgz";
-      sha256 = "0maxs8392953fhnaa6zwnm2mdbhxjxipp4g4rvypm06ixr6pyv1c";
-      system = "fare-mop";
-      asd = "fare-mop";
-    });
-    systems = [ "fare-mop" ];
-    lispLibs = [ (getAttr "closer-mop" pkgs) (getAttr "fare-utils" pkgs) ];
-  };
-  fare-quasiquote = {
-    pname = "fare-quasiquote";
-    version = "20200925-git";
-    asds = [ "fare-quasiquote" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/fare-quasiquote/2020-09-25/fare-quasiquote-20200925-git.tgz";
-      sha256 = "034mw3x0jv6q5nxqq8sz77c44dc115x6y52bnzk31qclib88zl7n";
-      system = "fare-quasiquote";
-      asd = "fare-quasiquote";
-    });
-    systems = [ "fare-quasiquote" ];
-    lispLibs = [ (getAttr "fare-utils" pkgs) ];
-  };
-  fare-quasiquote-extras = {
-    pname = "fare-quasiquote-extras";
-    version = "20200925-git";
-    asds = [ "fare-quasiquote-extras" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/fare-quasiquote/2020-09-25/fare-quasiquote-20200925-git.tgz";
-      sha256 = "034mw3x0jv6q5nxqq8sz77c44dc115x6y52bnzk31qclib88zl7n";
-      system = "fare-quasiquote-extras";
-      asd = "fare-quasiquote-extras";
-    });
-    systems = [ "fare-quasiquote-extras" ];
-    lispLibs = [ (getAttr "fare-quasiquote-optima" pkgs) (getAttr "fare-quasiquote-readtable" pkgs) ];
-  };
-  fare-quasiquote-optima = {
-    pname = "fare-quasiquote-optima";
-    version = "20200925-git";
-    asds = [ "fare-quasiquote-optima" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/fare-quasiquote/2020-09-25/fare-quasiquote-20200925-git.tgz";
-      sha256 = "034mw3x0jv6q5nxqq8sz77c44dc115x6y52bnzk31qclib88zl7n";
-      system = "fare-quasiquote-optima";
-      asd = "fare-quasiquote-optima";
-    });
-    systems = [ "fare-quasiquote-optima" ];
-    lispLibs = [ (getAttr "trivia_dot_quasiquote" pkgs) ];
-  };
-  fare-quasiquote-readtable = {
-    pname = "fare-quasiquote-readtable";
-    version = "20200925-git";
-    asds = [ "fare-quasiquote-readtable" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/fare-quasiquote/2020-09-25/fare-quasiquote-20200925-git.tgz";
-      sha256 = "034mw3x0jv6q5nxqq8sz77c44dc115x6y52bnzk31qclib88zl7n";
-      system = "fare-quasiquote-readtable";
-      asd = "fare-quasiquote-readtable";
-    });
-    systems = [ "fare-quasiquote-readtable" ];
-    lispLibs = [ (getAttr "fare-quasiquote" pkgs) (getAttr "named-readtables" pkgs) ];
-  };
-  fare-scripts = {
-    pname = "fare-scripts";
-    version = "20211230-git";
-    asds = [ "fare-scripts" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/fare-scripts/2021-12-30/fare-scripts-20211230-git.tgz";
-      sha256 = "0i4giia6z2ys9fp5h0ff6r7d74ysynjqar7s9cv5zsiw871rqa1j";
-      system = "fare-scripts";
-      asd = "fare-scripts";
-    });
-    systems = [ "fare-scripts" ];
-    lispLibs = [ (getAttr "babel" pkgs) (getAttr "binascii" pkgs) (getAttr "cl-launch" pkgs) (getAttr "cl-mime" pkgs) (getAttr "cl-ppcre" pkgs) (getAttr "cl-scripting" pkgs) (getAttr "cl-unicode" pkgs) (getAttr "command-line-arguments" pkgs) (getAttr "fare-utils" pkgs) (getAttr "inferior-shell" pkgs) (getAttr "optima" pkgs) (getAttr "optima_dot_ppcre" pkgs) (getAttr "swank" pkgs) ];
-  };
-  fare-utils = {
-    pname = "fare-utils";
-    version = "20170124-git";
-    asds = [ "fare-utils" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/fare-utils/2017-01-24/fare-utils-20170124-git.tgz";
-      sha256 = "01wsr1aap3jdzhn4hrqjbhsjx6qci9dbd3gh4gayv1p49rbg8aqr";
-      system = "fare-utils";
-      asd = "fare-utils";
-    });
-    systems = [ "fare-utils" ];
-    lispLibs = [  ];
-  };
-  fare-utils-test = {
-    pname = "fare-utils-test";
-    version = "20170124-git";
-    asds = [ "fare-utils-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/fare-utils/2017-01-24/fare-utils-20170124-git.tgz";
-      sha256 = "01wsr1aap3jdzhn4hrqjbhsjx6qci9dbd3gh4gayv1p49rbg8aqr";
-      system = "fare-utils-test";
-      asd = "fare-utils-test";
-    });
-    systems = [ "fare-utils-test" ];
-    lispLibs = [ (getAttr "fare-utils" pkgs) (getAttr "hu_dot_dwim_dot_stefil" pkgs) ];
-  };
-  fast-generic-functions = {
-    pname = "fast-generic-functions";
-    version = "20220220-git";
-    asds = [ "fast-generic-functions" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/fast-generic-functions/2022-02-20/fast-generic-functions-20220220-git.tgz";
-      sha256 = "16hf9bi2p5s77p3m3aqsihcd9iicqjhhxxpsarjv93c41qs54yad";
-      system = "fast-generic-functions";
-      asd = "fast-generic-functions";
-    });
-    systems = [ "fast-generic-functions" ];
-    lispLibs = [ (getAttr "closer-mop" pkgs) (getAttr "sealable-metaobjects" pkgs) (getAttr "trivial-macroexpand-all" pkgs) ];
-  };
-  fast-http = {
-    pname = "fast-http";
-    version = "20191007-git";
-    asds = [ "fast-http" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/fast-http/2019-10-07/fast-http-20191007-git.tgz";
-      sha256 = "0al2g7g219jjljsf7b23pbilpgacxy5as5gs2nqf76b5qni396mi";
-      system = "fast-http";
-      asd = "fast-http";
-    });
-    systems = [ "fast-http" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "babel" pkgs) (getAttr "cl-utilities" pkgs) (getAttr "proc-parse" pkgs) (getAttr "smart-buffer" pkgs) (getAttr "xsubseq" pkgs) ];
-  };
-  fast-http-test = {
-    pname = "fast-http-test";
-    version = "20191007-git";
-    asds = [ "fast-http-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/fast-http/2019-10-07/fast-http-20191007-git.tgz";
-      sha256 = "0al2g7g219jjljsf7b23pbilpgacxy5as5gs2nqf76b5qni396mi";
-      system = "fast-http-test";
-      asd = "fast-http-test";
-    });
-    systems = [ "fast-http-test" ];
-    lispLibs = [ (getAttr "babel" pkgs) (getAttr "cl-syntax-interpol" pkgs) (getAttr "fast-http" pkgs) (getAttr "prove" pkgs) (getAttr "prove-asdf" pkgs) (getAttr "xsubseq" pkgs) ];
-  };
-  fast-io = {
-    pname = "fast-io";
-    version = "20221106-git";
-    asds = [ "fast-io" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/fast-io/2022-11-06/fast-io-20221106-git.tgz";
-      sha256 = "0wh02yagbqahy9z6787jz5ggpagvr18qd0z13wvwq1vjf8xd2530";
-      system = "fast-io";
-      asd = "fast-io";
-    });
-    systems = [ "fast-io" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "static-vectors" pkgs) (getAttr "trivial-gray-streams" pkgs) ];
-  };
-  fast-io-test = {
-    pname = "fast-io-test";
-    version = "20221106-git";
-    asds = [ "fast-io-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/fast-io/2022-11-06/fast-io-20221106-git.tgz";
-      sha256 = "0wh02yagbqahy9z6787jz5ggpagvr18qd0z13wvwq1vjf8xd2530";
-      system = "fast-io-test";
-      asd = "fast-io-test";
-    });
-    systems = [ "fast-io-test" ];
-    lispLibs = [ (getAttr "checkl" pkgs) (getAttr "fast-io" pkgs) (getAttr "fiveam" pkgs) ];
-  };
-  fast-websocket = {
-    pname = "fast-websocket";
-    version = "20220707-git";
-    asds = [ "fast-websocket" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/fast-websocket/2022-07-07/fast-websocket-20220707-git.tgz";
-      sha256 = "1j7v00gbkzx4mq2v8y44jm4jx321hgrv9igfw23cvzzlyd3dzp6y";
-      system = "fast-websocket";
-      asd = "fast-websocket";
-    });
-    systems = [ "fast-websocket" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "babel" pkgs) (getAttr "fast-io" pkgs) ];
-  };
-  fast-websocket-test = {
-    pname = "fast-websocket-test";
-    version = "20220707-git";
-    asds = [ "fast-websocket-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/fast-websocket/2022-07-07/fast-websocket-20220707-git.tgz";
-      sha256 = "1j7v00gbkzx4mq2v8y44jm4jx321hgrv9igfw23cvzzlyd3dzp6y";
-      system = "fast-websocket-test";
-      asd = "fast-websocket-test";
-    });
-    systems = [ "fast-websocket-test" ];
-    lispLibs = [ (getAttr "fast-io" pkgs) (getAttr "fast-websocket" pkgs) (getAttr "prove" pkgs) (getAttr "prove-asdf" pkgs) (getAttr "trivial-utf-8" pkgs) ];
-  };
-  feeder = {
-    pname = "feeder";
-    version = "20210228-git";
-    asds = [ "feeder" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/feeder/2021-02-28/feeder-20210228-git.tgz";
-      sha256 = "1dpbzhycg50snl3j01c8dh8gdvhfhz0hnfl54xy55a3wbr3m6rp7";
-      system = "feeder";
-      asd = "feeder";
-    });
-    systems = [ "feeder" ];
-    lispLibs = [ (getAttr "documentation-utils" pkgs) (getAttr "local-time" pkgs) (getAttr "plump" pkgs) ];
-  };
-  femlisp = {
-    pname = "femlisp";
-    version = "20210411-git";
-    asds = [ "femlisp" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/femlisp/2021-04-11/femlisp-20210411-git.tgz";
-      sha256 = "08l2x1jq3vfhh8m14wijd8c78n589cy5hd2py2jfj3yfiqyipasa";
-      system = "femlisp";
-      asd = "femlisp";
-    });
-    systems = [ "femlisp" ];
-    lispLibs = [ (getAttr "cl-ppcre" pkgs) (getAttr "femlisp-basic" pkgs) (getAttr "femlisp-dictionary" pkgs) (getAttr "femlisp-matlisp" pkgs) (getAttr "femlisp-parallel" pkgs) (getAttr "infix" pkgs) (getAttr "flexi-streams" pkgs) ];
-  };
-  femlisp-basic = {
-    pname = "femlisp-basic";
-    version = "20210411-git";
-    asds = [ "femlisp-basic" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/femlisp/2021-04-11/femlisp-20210411-git.tgz";
-      sha256 = "08l2x1jq3vfhh8m14wijd8c78n589cy5hd2py2jfj3yfiqyipasa";
-      system = "femlisp-basic";
-      asd = "femlisp-basic";
-    });
-    systems = [ "femlisp-basic" ];
-    lispLibs = [ (getAttr "closer-mop" pkgs) (getAttr "fiveam" pkgs) ];
-  };
-  femlisp-dictionary = {
-    pname = "femlisp-dictionary";
-    version = "20210411-git";
-    asds = [ "femlisp-dictionary" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/femlisp/2021-04-11/femlisp-20210411-git.tgz";
-      sha256 = "08l2x1jq3vfhh8m14wijd8c78n589cy5hd2py2jfj3yfiqyipasa";
-      system = "femlisp-dictionary";
-      asd = "femlisp-dictionary";
-    });
-    systems = [ "femlisp-dictionary" ];
-    lispLibs = [ (getAttr "femlisp-basic" pkgs) (getAttr "femlisp-parallel" pkgs) (getAttr "trees" pkgs) ];
-  };
-  femlisp-matlisp = {
-    pname = "femlisp-matlisp";
-    version = "20210411-git";
-    asds = [ "femlisp-matlisp" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/femlisp/2021-04-11/femlisp-20210411-git.tgz";
-      sha256 = "08l2x1jq3vfhh8m14wijd8c78n589cy5hd2py2jfj3yfiqyipasa";
-      system = "femlisp-matlisp";
-      asd = "femlisp-matlisp";
-    });
-    systems = [ "femlisp-matlisp" ];
-    lispLibs = [ (getAttr "femlisp-basic" pkgs) (getAttr "femlisp-dictionary" pkgs) (getAttr "femlisp-parallel" pkgs) ];
-  };
-  femlisp-parallel = {
-    pname = "femlisp-parallel";
-    version = "20210411-git";
-    asds = [ "femlisp-parallel" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/femlisp/2021-04-11/femlisp-20210411-git.tgz";
-      sha256 = "08l2x1jq3vfhh8m14wijd8c78n589cy5hd2py2jfj3yfiqyipasa";
-      system = "femlisp-parallel";
-      asd = "femlisp-parallel";
-    });
-    systems = [ "femlisp-parallel" ];
-    lispLibs = [ (getAttr "bordeaux-threads" pkgs) (getAttr "cl-ppcre" pkgs) (getAttr "cl-cpu-affinity" pkgs) (getAttr "femlisp-basic" pkgs) (getAttr "lparallel" pkgs) ];
-  };
-  femlisp-picture = {
-    pname = "femlisp-picture";
-    version = "20210411-git";
-    asds = [ "femlisp-picture" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/femlisp/2021-04-11/femlisp-20210411-git.tgz";
-      sha256 = "08l2x1jq3vfhh8m14wijd8c78n589cy5hd2py2jfj3yfiqyipasa";
-      system = "femlisp-picture";
-      asd = "femlisp-picture";
-    });
-    systems = [ "femlisp-picture" ];
-    lispLibs = [ (getAttr "cl-gd" pkgs) (getAttr "femlisp" pkgs) ];
-  };
-  ffa = {
-    pname = "ffa";
-    version = "20101006-git";
-    asds = [ "ffa" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/ffa/2010-10-06/ffa-20101006-git.tgz";
-      sha256 = "0l7kqcjp3sn1129hpwq6zhjqc0ydx9gc53z7k13i38x3z1asap7a";
-      system = "ffa";
-      asd = "ffa";
-    });
-    systems = [ "ffa" ];
-    lispLibs = [ (getAttr "cffi" pkgs) (getAttr "cl-utilities" pkgs) (getAttr "iterate" pkgs) (getAttr "metabang-bind" pkgs) ];
-  };
-  fft = {
-    pname = "fft";
-    version = "20180711-git";
-    asds = [ "fft" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/fft/2018-07-11/fft-20180711-git.tgz";
-      sha256 = "0ymnfplap2cncw49mhq7crapgxphfwsvqdgrcckpgsvw6qsymasd";
-      system = "fft";
-      asd = "fft";
-    });
-    systems = [ "fft" ];
-    lispLibs = [  ];
-  };
-  fftpack5 = {
-    pname = "fftpack5";
-    version = "20200925-git";
-    asds = [ "fftpack5" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/f2cl/2020-09-25/f2cl-20200925-git.tgz";
-      sha256 = "0kq1lrz0sg4kj64w0ysihnfwi65pami362fs2mvpyf1yhgxmq08y";
-      system = "fftpack5";
-      asd = "fftpack5";
-    });
-    systems = [ "fftpack5" ];
-    lispLibs = [ (getAttr "f2cl" pkgs) ];
-  };
-  fftpack5-double = {
-    pname = "fftpack5-double";
-    version = "20200925-git";
-    asds = [ "fftpack5-double" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/f2cl/2020-09-25/f2cl-20200925-git.tgz";
-      sha256 = "0kq1lrz0sg4kj64w0ysihnfwi65pami362fs2mvpyf1yhgxmq08y";
-      system = "fftpack5-double";
-      asd = "fftpack5-double";
-    });
-    systems = [ "fftpack5-double" ];
-    lispLibs = [ (getAttr "f2cl" pkgs) ];
-  };
-  fiasco = {
-    pname = "fiasco";
-    version = "20200610-git";
-    asds = [ "fiasco" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/fiasco/2020-06-10/fiasco-20200610-git.tgz";
-      sha256 = "1k8i2kq57201bvy3zfpsxld530hd104dgbglxigqb6i408c1a7aw";
-      system = "fiasco";
-      asd = "fiasco";
-    });
-    systems = [ "fiasco" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "trivial-gray-streams" pkgs) ];
-  };
-  fiasco-self-tests = {
-    pname = "fiasco-self-tests";
-    version = "20200610-git";
-    asds = [ "fiasco-self-tests" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/fiasco/2020-06-10/fiasco-20200610-git.tgz";
-      sha256 = "1k8i2kq57201bvy3zfpsxld530hd104dgbglxigqb6i408c1a7aw";
-      system = "fiasco-self-tests";
-      asd = "fiasco";
-    });
-    systems = [ "fiasco-self-tests" ];
-    lispLibs = [ (getAttr "fiasco" pkgs) ];
-  };
-  file-attributes = {
-    pname = "file-attributes";
-    version = "20210807-git";
-    asds = [ "file-attributes" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/file-attributes/2021-08-07/file-attributes-20210807-git.tgz";
-      sha256 = "0wvdhwpav9kmpdr79v4i33jabzcp95k5mbz7jljkpxzfblzias77";
-      system = "file-attributes";
-      asd = "file-attributes";
-    });
-    systems = [ "file-attributes" ];
-    lispLibs = [ (getAttr "cffi" pkgs) (getAttr "documentation-utils" pkgs) (getAttr "trivial-features" pkgs) ];
-  };
-  file-local-variable = {
-    pname = "file-local-variable";
-    version = "20160318-git";
-    asds = [ "file-local-variable" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/file-local-variable/2016-03-18/file-local-variable-20160318-git.tgz";
-      sha256 = "1jsjd0g41mg76wlqjxliyrfz8fk7ihi06nq2zizmk9np0pmwsxl9";
-      system = "file-local-variable";
-      asd = "file-local-variable";
-    });
-    systems = [ "file-local-variable" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "iterate" pkgs) (getAttr "trivia" pkgs) ];
-  };
-  file-local-variable_dot_test = {
-    pname = "file-local-variable.test";
-    version = "20160318-git";
-    asds = [ "file-local-variable.test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/file-local-variable/2016-03-18/file-local-variable-20160318-git.tgz";
-      sha256 = "1jsjd0g41mg76wlqjxliyrfz8fk7ihi06nq2zizmk9np0pmwsxl9";
-      system = "file-local-variable.test";
-      asd = "file-local-variable.test";
-    });
-    systems = [ "file-local-variable.test" ];
-    lispLibs = [ (getAttr "file-local-variable" pkgs) (getAttr "fiveam" pkgs) ];
-  };
-  file-notify = {
-    pname = "file-notify";
-    version = "20220707-git";
-    asds = [ "file-notify" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/file-notify/2022-07-07/file-notify-20220707-git.tgz";
-      sha256 = "0788d98rqm1krl8nbfh8qshvyf6g336i9bqrdhkx06cfvbh0wcny";
-      system = "file-notify";
-      asd = "file-notify";
-    });
-    systems = [ "file-notify" ];
-    lispLibs = [ (getAttr "cffi" pkgs) (getAttr "documentation-utils" pkgs) (getAttr "trivial-features" pkgs) ];
-  };
-  file-select = {
-    pname = "file-select";
-    version = "20220331-git";
-    asds = [ "file-select" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/file-select/2022-03-31/file-select-20220331-git.tgz";
-      sha256 = "02xi77z6ra2kpj9gkg8kwxidhgwpalbq38hc1f806jfckidpblr3";
-      system = "file-select";
-      asd = "file-select";
-    });
-    systems = [ "file-select" ];
-    lispLibs = [ (getAttr "cffi" pkgs) (getAttr "documentation-utils" pkgs) (getAttr "float-features" pkgs) (getAttr "trivial-features" pkgs) ];
-  };
-  file-types = {
-    pname = "file-types";
-    version = "20160929-git";
-    asds = [ "file-types" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/file-types/2016-09-29/file-types-20160929-git.tgz";
-      sha256 = "09l67gzjwx7kx237grm709dsj9rkmmm8s3ya6irmcw8nh587inbs";
-      system = "file-types";
-      asd = "file-types";
-    });
-    systems = [ "file-types" ];
-    lispLibs = [  ];
-  };
-  filesystem-utils = {
-    pname = "filesystem-utils";
-    version = "20221106-git";
-    asds = [ "filesystem-utils" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/filesystem-utils/2022-11-06/filesystem-utils-20221106-git.tgz";
-      sha256 = "1lnfy1zxiixdjmy5xy4wb7xq2n6srwxiyv8ghbjb5x4hsxn5m2j7";
-      system = "filesystem-utils";
-      asd = "filesystem-utils";
-    });
-    systems = [ "filesystem-utils" ];
-    lispLibs = [ (getAttr "documentation-utils" pkgs) (getAttr "pathname-utils" pkgs) (getAttr "trivial-features" pkgs) ];
-  };
-  filesystem-utils-test = {
-    pname = "filesystem-utils-test";
-    version = "20221106-git";
-    asds = [ "filesystem-utils-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/filesystem-utils/2022-11-06/filesystem-utils-20221106-git.tgz";
-      sha256 = "1lnfy1zxiixdjmy5xy4wb7xq2n6srwxiyv8ghbjb5x4hsxn5m2j7";
-      system = "filesystem-utils-test";
-      asd = "filesystem-utils-test";
-    });
-    systems = [ "filesystem-utils-test" ];
-    lispLibs = [ (getAttr "filesystem-utils" pkgs) (getAttr "parachute" pkgs) ];
-  };
-  filter-maker = {
-    pname = "filter-maker";
-    version = "20221106-git";
-    asds = [ "filter-maker" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/filter-maker/2022-11-06/filter-maker-20221106-git.tgz";
-      sha256 = "00algyghniqsvjy5vwx39fd98nd7x4w944ahy981jlh33lzc2qmn";
-      system = "filter-maker";
-      asd = "filter-maker";
-    });
-    systems = [ "filter-maker" ];
-    lispLibs = [ (getAttr "mcclim" pkgs) ];
-  };
-  filtered-functions = {
-    pname = "filtered-functions";
-    version = "20160318-git";
-    asds = [ "filtered-functions" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/filtered-functions/2016-03-18/filtered-functions-20160318-git.tgz";
-      sha256 = "0m13k8pl0gfll8ss83c0z3gax7zrrw2i4s26451jfbka1xr4fgy9";
-      system = "filtered-functions";
-      asd = "filtered-functions";
-    });
-    systems = [ "filtered-functions" ];
-    lispLibs = [ (getAttr "closer-mop" pkgs) ];
-  };
-  find-port = {
-    pname = "find-port";
-    version = "20190710-git";
-    asds = [ "find-port" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/find-port/2019-07-10/find-port-20190710-git.tgz";
-      sha256 = "1fw6q7d2bxxb7fqk548ylq8mx4sz95yc0q5h0rwd0mnqjrbwbari";
-      system = "find-port";
-      asd = "find-port";
-    });
-    systems = [ "find-port" ];
-    lispLibs = [ (getAttr "usocket" pkgs) ];
-  };
-  find-port-test = {
-    pname = "find-port-test";
-    version = "20190710-git";
-    asds = [ "find-port-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/find-port/2019-07-10/find-port-20190710-git.tgz";
-      sha256 = "1fw6q7d2bxxb7fqk548ylq8mx4sz95yc0q5h0rwd0mnqjrbwbari";
-      system = "find-port-test";
-      asd = "find-port-test";
-    });
-    systems = [ "find-port-test" ];
-    lispLibs = [ (getAttr "find-port" pkgs) (getAttr "fiveam" pkgs) ];
-  };
-  finite-state-machine = {
-    pname = "finite-state-machine";
-    version = "20200218-git";
-    asds = [ "finite-state-machine" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-simple-fsm/2020-02-18/cl-simple-fsm-20200218-git.tgz";
-      sha256 = "1w07df7kakjq3r1v5c4gnavp08ngpn2ni85cggnnsqzc27hly07b";
-      system = "finite-state-machine";
-      asd = "finite-state-machine";
-    });
-    systems = [ "finite-state-machine" ];
-    lispLibs = [  ];
-  };
-  firephp = {
-    pname = "firephp";
-    version = "20160531-git";
-    asds = [ "firephp" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/firephp/2016-05-31/firephp-20160531-git.tgz";
-      sha256 = "1j98z73c21xcjp4f8qvmv37y9zlsnwxx88nnxc3r1ngvxv23dlgh";
-      system = "firephp";
-      asd = "firephp";
-    });
-    systems = [ "firephp" ];
-    lispLibs = [ (getAttr "cl-json" pkgs) (getAttr "hunchentoot" pkgs) ];
-  };
-  firephp-tests = {
-    pname = "firephp-tests";
-    version = "20160531-git";
-    asds = [ "firephp-tests" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/firephp/2016-05-31/firephp-20160531-git.tgz";
-      sha256 = "1j98z73c21xcjp4f8qvmv37y9zlsnwxx88nnxc3r1ngvxv23dlgh";
-      system = "firephp-tests";
-      asd = "firephp-tests";
-    });
-    systems = [ "firephp-tests" ];
-    lispLibs = [ (getAttr "cl-json" pkgs) (getAttr "firephp" pkgs) (getAttr "hu_dot_dwim_dot_stefil" pkgs) (getAttr "hunchentoot" pkgs) ];
-  };
-  first-time-value = {
-    pname = "first-time-value";
-    version = "1.0.1";
-    asds = [ "first-time-value" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/first-time-value/2018-12-10/first-time-value-1.0.1.tgz";
-      sha256 = "155mqhnw1307b18a8bv8jhqp20qv83b409mlr61m45nq3sivxxp2";
-      system = "first-time-value";
-      asd = "first-time-value";
-    });
-    systems = [ "first-time-value" ];
-    lispLibs = [  ];
-  };
-  first-time-value_tests = {
-    pname = "first-time-value_tests";
-    version = "1.0.1";
-    asds = [ "first-time-value_tests" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/first-time-value/2018-12-10/first-time-value-1.0.1.tgz";
-      sha256 = "155mqhnw1307b18a8bv8jhqp20qv83b409mlr61m45nq3sivxxp2";
-      system = "first-time-value_tests";
-      asd = "first-time-value_tests";
-    });
-    systems = [ "first-time-value_tests" ];
-    lispLibs = [ (getAttr "first-time-value" pkgs) (getAttr "parachute" pkgs) ];
-  };
-  fishpack = {
-    pname = "fishpack";
-    version = "20200925-git";
-    asds = [ "fishpack" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/f2cl/2020-09-25/f2cl-20200925-git.tgz";
-      sha256 = "0kq1lrz0sg4kj64w0ysihnfwi65pami362fs2mvpyf1yhgxmq08y";
-      system = "fishpack";
-      asd = "fishpack";
-    });
-    systems = [ "fishpack" ];
-    lispLibs = [ (getAttr "f2cl" pkgs) ];
-  };
-  fishpack_slash_test-hstcrt = {
-    pname = "fishpack_test-hstcrt";
-    version = "20200925-git";
-    asds = [ "fishpack" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/f2cl/2020-09-25/f2cl-20200925-git.tgz";
-      sha256 = "0kq1lrz0sg4kj64w0ysihnfwi65pami362fs2mvpyf1yhgxmq08y";
-      system = "fishpack";
-      asd = "fishpack";
-    });
-    systems = [ "fishpack/test-hstcrt" ];
-    lispLibs = [ (getAttr "fishpack" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  fishpack_slash_test-hstcsp = {
-    pname = "fishpack_test-hstcsp";
-    version = "20200925-git";
-    asds = [ "fishpack" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/f2cl/2020-09-25/f2cl-20200925-git.tgz";
-      sha256 = "0kq1lrz0sg4kj64w0ysihnfwi65pami362fs2mvpyf1yhgxmq08y";
-      system = "fishpack";
-      asd = "fishpack";
-    });
-    systems = [ "fishpack/test-hstcsp" ];
-    lispLibs = [ (getAttr "fishpack" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  fishpack_slash_test-hstcyl = {
-    pname = "fishpack_test-hstcyl";
-    version = "20200925-git";
-    asds = [ "fishpack" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/f2cl/2020-09-25/f2cl-20200925-git.tgz";
-      sha256 = "0kq1lrz0sg4kj64w0ysihnfwi65pami362fs2mvpyf1yhgxmq08y";
-      system = "fishpack";
-      asd = "fishpack";
-    });
-    systems = [ "fishpack/test-hstcyl" ];
-    lispLibs = [ (getAttr "fishpack" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  fishpack_slash_test-hstplr = {
-    pname = "fishpack_test-hstplr";
-    version = "20200925-git";
-    asds = [ "fishpack" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/f2cl/2020-09-25/f2cl-20200925-git.tgz";
-      sha256 = "0kq1lrz0sg4kj64w0ysihnfwi65pami362fs2mvpyf1yhgxmq08y";
-      system = "fishpack";
-      asd = "fishpack";
-    });
-    systems = [ "fishpack/test-hstplr" ];
-    lispLibs = [ (getAttr "fishpack" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  fishpack_slash_test-hstssp = {
-    pname = "fishpack_test-hstssp";
-    version = "20200925-git";
-    asds = [ "fishpack" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/f2cl/2020-09-25/f2cl-20200925-git.tgz";
-      sha256 = "0kq1lrz0sg4kj64w0ysihnfwi65pami362fs2mvpyf1yhgxmq08y";
-      system = "fishpack";
-      asd = "fishpack";
-    });
-    systems = [ "fishpack/test-hstssp" ];
-    lispLibs = [ (getAttr "fishpack" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  fishpack_slash_test-hwscrt = {
-    pname = "fishpack_test-hwscrt";
-    version = "20200925-git";
-    asds = [ "fishpack" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/f2cl/2020-09-25/f2cl-20200925-git.tgz";
-      sha256 = "0kq1lrz0sg4kj64w0ysihnfwi65pami362fs2mvpyf1yhgxmq08y";
-      system = "fishpack";
-      asd = "fishpack";
-    });
-    systems = [ "fishpack/test-hwscrt" ];
-    lispLibs = [ (getAttr "fishpack" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  fishpack_slash_test-hwscsp = {
-    pname = "fishpack_test-hwscsp";
-    version = "20200925-git";
-    asds = [ "fishpack" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/f2cl/2020-09-25/f2cl-20200925-git.tgz";
-      sha256 = "0kq1lrz0sg4kj64w0ysihnfwi65pami362fs2mvpyf1yhgxmq08y";
-      system = "fishpack";
-      asd = "fishpack";
-    });
-    systems = [ "fishpack/test-hwscsp" ];
-    lispLibs = [ (getAttr "fishpack" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  fishpack_slash_test-hwscyl = {
-    pname = "fishpack_test-hwscyl";
-    version = "20200925-git";
-    asds = [ "fishpack" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/f2cl/2020-09-25/f2cl-20200925-git.tgz";
-      sha256 = "0kq1lrz0sg4kj64w0ysihnfwi65pami362fs2mvpyf1yhgxmq08y";
-      system = "fishpack";
-      asd = "fishpack";
-    });
-    systems = [ "fishpack/test-hwscyl" ];
-    lispLibs = [ (getAttr "fishpack" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  fishpack_slash_test-hwsplr = {
-    pname = "fishpack_test-hwsplr";
-    version = "20200925-git";
-    asds = [ "fishpack" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/f2cl/2020-09-25/f2cl-20200925-git.tgz";
-      sha256 = "0kq1lrz0sg4kj64w0ysihnfwi65pami362fs2mvpyf1yhgxmq08y";
-      system = "fishpack";
-      asd = "fishpack";
-    });
-    systems = [ "fishpack/test-hwsplr" ];
-    lispLibs = [ (getAttr "fishpack" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  fishpack_slash_test-hwsssp = {
-    pname = "fishpack_test-hwsssp";
-    version = "20200925-git";
-    asds = [ "fishpack" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/f2cl/2020-09-25/f2cl-20200925-git.tgz";
-      sha256 = "0kq1lrz0sg4kj64w0ysihnfwi65pami362fs2mvpyf1yhgxmq08y";
-      system = "fishpack";
-      asd = "fishpack";
-    });
-    systems = [ "fishpack/test-hwsssp" ];
-    lispLibs = [ (getAttr "fishpack" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  fishpack_slash_test-sepx4 = {
-    pname = "fishpack_test-sepx4";
-    version = "20200925-git";
-    asds = [ "fishpack" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/f2cl/2020-09-25/f2cl-20200925-git.tgz";
-      sha256 = "0kq1lrz0sg4kj64w0ysihnfwi65pami362fs2mvpyf1yhgxmq08y";
-      system = "fishpack";
-      asd = "fishpack";
-    });
-    systems = [ "fishpack/test-sepx4" ];
-    lispLibs = [ (getAttr "fishpack" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  fiveam = {
-    pname = "fiveam";
-    version = "20220331-git";
-    asds = [ "fiveam" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/fiveam/2022-03-31/fiveam-20220331-git.tgz";
-      sha256 = "085kmrafhmhawjri76l5sc2g8xg8v4fn4xsfzbdgv2q5ffzxxd82";
-      system = "fiveam";
-      asd = "fiveam";
-    });
-    systems = [ "fiveam" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "net_dot_didierverna_dot_asdf-flv" pkgs) (getAttr "trivial-backtrace" pkgs) ];
-  };
-  fiveam-asdf = {
-    pname = "fiveam-asdf";
-    version = "20221106-git";
-    asds = [ "fiveam-asdf" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/fiveam-asdf/2022-11-06/fiveam-asdf-20221106-git.tgz";
-      sha256 = "18dhyznwl56lpp289dwg9xm9qwwv5062yawfaj6h1b2jwybqfrq7";
-      system = "fiveam-asdf";
-      asd = "fiveam-asdf";
-    });
-    systems = [ "fiveam-asdf" ];
-    lispLibs = [  ];
-  };
-  fiveam-matchers = {
-    pname = "fiveam-matchers";
-    version = "20221106-git";
-    asds = [ "fiveam-matchers" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/fiveam-matchers/2022-11-06/fiveam-matchers-20221106-git.tgz";
-      sha256 = "1l2pzr71y7x7qwwnqxirz567linxzdbjnsdlis2inxbpm1gssdc6";
-      system = "fiveam-matchers";
-      asd = "fiveam-matchers";
-    });
-    systems = [ "fiveam-matchers" ];
-    lispLibs = [ (getAttr "str" pkgs) (getAttr "fiveam" pkgs) ];
-  };
-  fiveam-matchers_slash_tests = {
-    pname = "fiveam-matchers_tests";
-    version = "20221106-git";
-    asds = [ "fiveam-matchers" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/fiveam-matchers/2022-11-06/fiveam-matchers-20221106-git.tgz";
-      sha256 = "1l2pzr71y7x7qwwnqxirz567linxzdbjnsdlis2inxbpm1gssdc6";
-      system = "fiveam-matchers";
-      asd = "fiveam-matchers";
-    });
-    systems = [ "fiveam-matchers/tests" ];
-    lispLibs = [ (getAttr "fiveam-matchers" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  fiveam_slash_test = {
-    pname = "fiveam_test";
-    version = "20220331-git";
-    asds = [ "fiveam" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/fiveam/2022-03-31/fiveam-20220331-git.tgz";
-      sha256 = "085kmrafhmhawjri76l5sc2g8xg8v4fn4xsfzbdgv2q5ffzxxd82";
-      system = "fiveam";
-      asd = "fiveam";
-    });
-    systems = [ "fiveam/test" ];
-    lispLibs = [ (getAttr "fiveam" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  fixed = {
-    pname = "fixed";
-    version = "20170124-git";
-    asds = [ "fixed" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/fixed/2017-01-24/fixed-20170124-git.tgz";
-      sha256 = "0bx8802fmlml5k5xhcm4g5r6c7ambij4gb0b37xljjn3wxgs83dc";
-      system = "fixed";
-      asd = "fixed";
-    });
-    systems = [ "fixed" ];
-    lispLibs = [  ];
-  };
-  fixed_slash_real-time = {
-    pname = "fixed_real-time";
-    version = "20170124-git";
-    asds = [ "fixed" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/fixed/2017-01-24/fixed-20170124-git.tgz";
-      sha256 = "0bx8802fmlml5k5xhcm4g5r6c7ambij4gb0b37xljjn3wxgs83dc";
-      system = "fixed";
-      asd = "fixed";
-    });
-    systems = [ "fixed/real-time" ];
-    lispLibs = [ (getAttr "fixed" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  fixed_slash_test = {
-    pname = "fixed_test";
-    version = "20170124-git";
-    asds = [ "fixed" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/fixed/2017-01-24/fixed-20170124-git.tgz";
-      sha256 = "0bx8802fmlml5k5xhcm4g5r6c7ambij4gb0b37xljjn3wxgs83dc";
-      system = "fixed";
-      asd = "fixed";
-    });
-    systems = [ "fixed/test" ];
-    lispLibs = [ (getAttr "fiveam" pkgs) (getAttr "fixed" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  flac = {
-    pname = "flac";
-    version = "20151218-git";
-    asds = [ "flac" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/mixalot/2015-12-18/mixalot-20151218-git.tgz";
-      sha256 = "0kqx933k8kly4yhzvspizzki556s1lfd4zafap42jcsqqhr4i5q9";
-      system = "flac";
-      asd = "flac";
-    });
-    systems = [ "flac" ];
-    lispLibs = [ (getAttr "cffi" pkgs) (getAttr "cffi-grovel" pkgs) ];
-  };
-  flac-metadata = {
-    pname = "flac-metadata";
-    version = "20220707-git";
-    asds = [ "flac-metadata" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/flac-metadata/2022-07-07/flac-metadata-20220707-git.tgz";
-      sha256 = "1p515ym8rwrz3mybig83z41jrbrviikp3yyqgn9qzzjcrx7x1zsg";
-      system = "flac-metadata";
-      asd = "flac-metadata";
-    });
-    systems = [ "flac-metadata" ];
-    lispLibs = [ (getAttr "binary-parser" pkgs) (getAttr "mfiano-utils" pkgs) ];
-  };
-  flare = {
-    pname = "flare";
-    version = "20221106-git";
-    asds = [ "flare" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/flare/2022-11-06/flare-20221106-git.tgz";
-      sha256 = "12scbnjqkyvaqmawfvih42vxp9nydlqh08nif9glv7nlav6dgvlp";
-      system = "flare";
-      asd = "flare";
-    });
-    systems = [ "flare" ];
-    lispLibs = [ (getAttr "_3d-vectors" pkgs) (getAttr "array-utils" pkgs) (getAttr "documentation-utils" pkgs) (getAttr "for" pkgs) (getAttr "lambda-fiddle" pkgs) (getAttr "trivial-garbage" pkgs) ];
-  };
-  flare-viewer = {
-    pname = "flare-viewer";
-    version = "20221106-git";
-    asds = [ "flare-viewer" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/flare/2022-11-06/flare-20221106-git.tgz";
-      sha256 = "12scbnjqkyvaqmawfvih42vxp9nydlqh08nif9glv7nlav6dgvlp";
-      system = "flare-viewer";
-      asd = "flare-viewer";
-    });
-    systems = [ "flare-viewer" ];
-    lispLibs = [ (getAttr "cl-opengl" pkgs) (getAttr "flare" pkgs) (getAttr "qtcore" pkgs) (getAttr "qtgui" pkgs) (getAttr "qtopengl" pkgs) (getAttr "qtools" pkgs) (getAttr "verbose" pkgs) ];
-  };
-  flat-tree = {
-    pname = "flat-tree";
-    version = "20190813-git";
-    asds = [ "flat-tree" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-flat-tree/2019-08-13/cl-flat-tree-20190813-git.tgz";
-      sha256 = "05nw1j0rr0vgz6shkjv87yn2mp0b4s7v5gxxcqcn1qi7fgbn55z7";
-      system = "flat-tree";
-      asd = "flat-tree";
-    });
-    systems = [ "flat-tree" ];
-    lispLibs = [  ];
-  };
-  flexi-streams = {
-    pname = "flexi-streams";
-    version = "20220220-git";
-    asds = [ "flexi-streams" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/flexi-streams/2022-02-20/flexi-streams-20220220-git.tgz";
-      sha256 = "04azqvz11s8dngy49bjl19hrfn0ip1b7m0szm4hlppq364msil7b";
-      system = "flexi-streams";
-      asd = "flexi-streams";
-    });
-    systems = [ "flexi-streams" ];
-    lispLibs = [ (getAttr "trivial-gray-streams" pkgs) ];
-  };
-  flexi-streams-test = {
-    pname = "flexi-streams-test";
-    version = "20220220-git";
-    asds = [ "flexi-streams-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/flexi-streams/2022-02-20/flexi-streams-20220220-git.tgz";
-      sha256 = "04azqvz11s8dngy49bjl19hrfn0ip1b7m0szm4hlppq364msil7b";
-      system = "flexi-streams-test";
-      asd = "flexi-streams-test";
-    });
-    systems = [ "flexi-streams-test" ];
-    lispLibs = [ (getAttr "flexi-streams" pkgs) ];
-  };
-  flexichain = {
-    pname = "flexichain";
-    version = "20201220-git";
-    asds = [ "flexichain" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/flexichain/2020-12-20/flexichain-20201220-git.tgz";
-      sha256 = "1ivkffnkc1iqmpl1p1rgyfbbgjmjcid4iszvdql1jjz324lq94g6";
-      system = "flexichain";
-      asd = "flexichain";
-    });
-    systems = [ "flexichain" ];
-    lispLibs = [ (getAttr "trivial-garbage" pkgs) ];
-  };
-  flexichain-doc = {
-    pname = "flexichain-doc";
-    version = "20201220-git";
-    asds = [ "flexichain-doc" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/flexichain/2020-12-20/flexichain-20201220-git.tgz";
-      sha256 = "1ivkffnkc1iqmpl1p1rgyfbbgjmjcid4iszvdql1jjz324lq94g6";
-      system = "flexichain-doc";
-      asd = "flexichain-doc";
-    });
-    systems = [ "flexichain-doc" ];
-    lispLibs = [  ];
-  };
-  float-features = {
-    pname = "float-features";
-    version = "20221106-git";
-    asds = [ "float-features" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/float-features/2022-11-06/float-features-20221106-git.tgz";
-      sha256 = "0d1n9zricjqbyxlalwwdsrhrz1cbg1wlhyr66v6rad84gscx1v29";
-      system = "float-features";
-      asd = "float-features";
-    });
-    systems = [ "float-features" ];
-    lispLibs = [ (getAttr "documentation-utils" pkgs) ];
-  };
-  float-features-tests = {
-    pname = "float-features-tests";
-    version = "20221106-git";
-    asds = [ "float-features-tests" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/float-features/2022-11-06/float-features-20221106-git.tgz";
-      sha256 = "0d1n9zricjqbyxlalwwdsrhrz1cbg1wlhyr66v6rad84gscx1v29";
-      system = "float-features-tests";
-      asd = "float-features-tests";
-    });
-    systems = [ "float-features-tests" ];
-    lispLibs = [ (getAttr "float-features" pkgs) (getAttr "parachute" pkgs) ];
-  };
-  floating-point = {
-    pname = "floating-point";
-    version = "20141106-git";
-    asds = [ "floating-point" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/floating-point/2014-11-06/floating-point-20141106-git.tgz";
-      sha256 = "1bqslmykg04innaqlp369pyjh61isj8xgv2h6pm95gsrxnf6wf7s";
-      system = "floating-point";
-      asd = "floating-point";
-    });
-    systems = [ "floating-point" ];
-    lispLibs = [  ];
-  };
-  floating-point-contractions = {
-    pname = "floating-point-contractions";
-    version = "20201220-git";
-    asds = [ "floating-point-contractions" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/floating-point-contractions/2020-12-20/floating-point-contractions-20201220-git.tgz";
-      sha256 = "0mr8bnc7hn0ii0cmlfnlwc14zkgbgdf099x5crrf9cp9wda4p082";
-      system = "floating-point-contractions";
-      asd = "floating-point-contractions";
-    });
-    systems = [ "floating-point-contractions" ];
-    lispLibs = [  ];
-  };
-  floating-point-test = {
-    pname = "floating-point-test";
-    version = "20141106-git";
-    asds = [ "floating-point-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/floating-point/2014-11-06/floating-point-20141106-git.tgz";
-      sha256 = "1bqslmykg04innaqlp369pyjh61isj8xgv2h6pm95gsrxnf6wf7s";
-      system = "floating-point-test";
-      asd = "floating-point-test";
-    });
-    systems = [ "floating-point-test" ];
-    lispLibs = [ (getAttr "floating-point" pkgs) (getAttr "lisp-unit" pkgs) ];
-  };
-  flow = {
-    pname = "flow";
-    version = "20200610-git";
-    asds = [ "flow" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/flow/2020-06-10/flow-20200610-git.tgz";
-      sha256 = "0ysw1kwiqlf8kzllhnz8v3q40dmvwf83fzq8bfkbmwy5hfjh3pxp";
-      system = "flow";
-      asd = "flow";
-    });
-    systems = [ "flow" ];
-    lispLibs = [ (getAttr "closer-mop" pkgs) (getAttr "documentation-utils" pkgs) ];
-  };
-  flow-visualizer = {
-    pname = "flow-visualizer";
-    version = "20200610-git";
-    asds = [ "flow-visualizer" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/flow/2020-06-10/flow-20200610-git.tgz";
-      sha256 = "0ysw1kwiqlf8kzllhnz8v3q40dmvwf83fzq8bfkbmwy5hfjh3pxp";
-      system = "flow-visualizer";
-      asd = "flow-visualizer";
-    });
-    systems = [ "flow-visualizer" ];
-    lispLibs = [ (getAttr "flow" pkgs) (getAttr "qtcore" pkgs) (getAttr "qtgui" pkgs) (getAttr "qtools" pkgs) ];
-  };
-  flute = {
-    pname = "flute";
-    version = "20180831-git";
-    asds = [ "flute" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/flute/2018-08-31/flute-20180831-git.tgz";
-      sha256 = "0q8jhp040cvpppyn820mm6a550yfxyr1lar298x13c42mm807f4f";
-      system = "flute";
-      asd = "flute";
-    });
-    systems = [ "flute" ];
-    lispLibs = [ (getAttr "assoc-utils" pkgs) (getAttr "let-over-lambda" pkgs) ];
-  };
-  flute-test = {
-    pname = "flute-test";
-    version = "20180831-git";
-    asds = [ "flute-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/flute/2018-08-31/flute-20180831-git.tgz";
-      sha256 = "0q8jhp040cvpppyn820mm6a550yfxyr1lar298x13c42mm807f4f";
-      system = "flute-test";
-      asd = "flute-test";
-    });
-    systems = [ "flute-test" ];
-    lispLibs = [ (getAttr "fiveam" pkgs) (getAttr "flute" pkgs) ];
-  };
-  fmarshal = {
-    pname = "fmarshal";
-    version = "20130720-git";
-    asds = [ "fmarshal" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/marshal/2013-07-20/marshal-20130720-git.tgz";
-      sha256 = "1c0hcf7i9kzgbmayhmcjg0kv5966yqlimvj67gl4mzvwhbdkc2nf";
-      system = "fmarshal";
-      asd = "fmarshal";
-    });
-    systems = [ "fmarshal" ];
-    lispLibs = [ (getAttr "closer-mop" pkgs) ];
-  };
-  fmarshal-test = {
-    pname = "fmarshal-test";
-    version = "20130720-git";
-    asds = [ "fmarshal-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/marshal/2013-07-20/marshal-20130720-git.tgz";
-      sha256 = "1c0hcf7i9kzgbmayhmcjg0kv5966yqlimvj67gl4mzvwhbdkc2nf";
-      system = "fmarshal-test";
-      asd = "fmarshal-test";
-    });
-    systems = [ "fmarshal-test" ];
-    lispLibs = [ (getAttr "fiveam" pkgs) (getAttr "fmarshal" pkgs) ];
-  };
-  fmt = {
-    pname = "fmt";
-    version = "20220331-git";
-    asds = [ "fmt" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/fmt/2022-03-31/fmt-20220331-git.tgz";
-      sha256 = "078y5yig5fw0jcsjjabaq7dlyxsd10w5k80ywx6gbm0j88al3fzp";
-      system = "fmt";
-      asd = "fmt";
-    });
-    systems = [ "fmt" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) ];
-  };
-  fmt-test = {
-    pname = "fmt-test";
-    version = "20220331-git";
-    asds = [ "fmt-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/fmt/2022-03-31/fmt-20220331-git.tgz";
-      sha256 = "078y5yig5fw0jcsjjabaq7dlyxsd10w5k80ywx6gbm0j88al3fzp";
-      system = "fmt-test";
-      asd = "fmt-test";
-    });
-    systems = [ "fmt-test" ];
-    lispLibs = [ (getAttr "fiveam" pkgs) (getAttr "fmt" pkgs) ];
-  };
-  fmt-time = {
-    pname = "fmt-time";
-    version = "20220331-git";
-    asds = [ "fmt-time" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/fmt/2022-03-31/fmt-20220331-git.tgz";
-      sha256 = "078y5yig5fw0jcsjjabaq7dlyxsd10w5k80ywx6gbm0j88al3fzp";
-      system = "fmt-time";
-      asd = "fmt-time";
-    });
-    systems = [ "fmt-time" ];
-    lispLibs = [ (getAttr "fmt" pkgs) (getAttr "local-time" pkgs) ];
-  };
-  fn = {
-    pname = "fn";
-    version = "20171019-git";
-    asds = [ "fn" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/fn/2017-10-19/fn-20171019-git.tgz";
-      sha256 = "0yyp9z6iwx476whz0n1rpjznjyqqhlylhzwpgg5xx92lxmskl752";
-      system = "fn";
-      asd = "fn";
-    });
-    systems = [ "fn" ];
-    lispLibs = [ (getAttr "named-readtables" pkgs) ];
-  };
-  fof = {
-    pname = "fof";
-    version = "20211230-git";
-    asds = [ "fof" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/fof/2021-12-30/fof-20211230-git.tgz";
-      sha256 = "0ipy51q2fw03xk9rqcyzbq2b9c32npc1gl3c53rdjywpak7zwwg6";
-      system = "fof";
-      asd = "fof";
-    });
-    systems = [ "fof" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "str" pkgs) (getAttr "hu_dot_dwim_dot_defclass-star" pkgs) (getAttr "local-time" pkgs) (getAttr "magicffi" pkgs) (getAttr "named-readtables" pkgs) (getAttr "osicat" pkgs) (getAttr "serapeum" pkgs) (getAttr "trivia" pkgs) (getAttr "trivial-package-local-nicknames" pkgs) ];
-  };
-  fof_slash_mf = {
-    pname = "fof_mf";
-    version = "20211230-git";
-    asds = [ "fof" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/fof/2021-12-30/fof-20211230-git.tgz";
-      sha256 = "0ipy51q2fw03xk9rqcyzbq2b9c32npc1gl3c53rdjywpak7zwwg6";
-      system = "fof";
-      asd = "fof";
-    });
-    systems = [ "fof/mf" ];
-    lispLibs = [  ];
-    meta = {
-      broken = true;
-    };
-  };
-  folio = {
-    pname = "folio";
-    version = "20130128-git";
-    asds = [ "folio" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/folio/2013-01-28/folio-20130128-git.tgz";
-      sha256 = "061kryjclnkp60r8vhcpzy9q0k755p1jc1vp4vj13k7piwr1bj64";
-      system = "folio";
-      asd = "folio";
-    });
-    systems = [ "folio" ];
-    lispLibs = [ (getAttr "folio_dot_as" pkgs) (getAttr "folio_dot_boxes" pkgs) (getAttr "folio_dot_collections" pkgs) (getAttr "folio_dot_functions" pkgs) ];
-  };
-  folio_dot_as = {
-    pname = "folio.as";
-    version = "20130128-git";
-    asds = [ "folio.as" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/folio/2013-01-28/folio-20130128-git.tgz";
-      sha256 = "061kryjclnkp60r8vhcpzy9q0k755p1jc1vp4vj13k7piwr1bj64";
-      system = "folio.as";
-      asd = "folio.as";
-    });
-    systems = [ "folio.as" ];
-    lispLibs = [  ];
-  };
-  folio_dot_boxes = {
-    pname = "folio.boxes";
-    version = "20130128-git";
-    asds = [ "folio.boxes" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/folio/2013-01-28/folio-20130128-git.tgz";
-      sha256 = "061kryjclnkp60r8vhcpzy9q0k755p1jc1vp4vj13k7piwr1bj64";
-      system = "folio.boxes";
-      asd = "folio.boxes";
-    });
-    systems = [ "folio.boxes" ];
-    lispLibs = [  ];
-  };
-  folio_dot_collections = {
-    pname = "folio.collections";
-    version = "20130128-git";
-    asds = [ "folio.collections" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/folio/2013-01-28/folio-20130128-git.tgz";
-      sha256 = "061kryjclnkp60r8vhcpzy9q0k755p1jc1vp4vj13k7piwr1bj64";
-      system = "folio.collections";
-      asd = "folio.collections";
-    });
-    systems = [ "folio.collections" ];
-    lispLibs = [ (getAttr "folio_dot_as" pkgs) (getAttr "folio_dot_functions" pkgs) (getAttr "fset" pkgs) ];
-  };
-  folio_dot_functions = {
-    pname = "folio.functions";
-    version = "20130128-git";
-    asds = [ "folio.functions" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/folio/2013-01-28/folio-20130128-git.tgz";
-      sha256 = "061kryjclnkp60r8vhcpzy9q0k755p1jc1vp4vj13k7piwr1bj64";
-      system = "folio.functions";
-      asd = "folio.functions";
-    });
-    systems = [ "folio.functions" ];
-    lispLibs = [  ];
-  };
-  folio2 = {
-    pname = "folio2";
-    version = "20191007-git";
-    asds = [ "folio2" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/folio2/2019-10-07/folio2-20191007-git.tgz";
-      sha256 = "0h214bhbxk229p4pyb6cb85gx6jvhzk2brbzhwhixprznilz6shd";
-      system = "folio2";
-      asd = "folio2";
-    });
-    systems = [ "folio2" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "folio2-as" pkgs) (getAttr "folio2-as-syntax" pkgs) (getAttr "folio2-boxes" pkgs) (getAttr "folio2-functions" pkgs) (getAttr "folio2-functions-syntax" pkgs) (getAttr "folio2-make" pkgs) (getAttr "folio2-maps" pkgs) (getAttr "folio2-maps-syntax" pkgs) (getAttr "folio2-pairs" pkgs) (getAttr "folio2-sequences" pkgs) (getAttr "folio2-sequences-syntax" pkgs) (getAttr "folio2-series" pkgs) (getAttr "folio2-taps" pkgs) (getAttr "fset" pkgs) (getAttr "series" pkgs) ];
-  };
-  folio2-as = {
-    pname = "folio2-as";
-    version = "20191007-git";
-    asds = [ "folio2-as" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/folio2/2019-10-07/folio2-20191007-git.tgz";
-      sha256 = "0h214bhbxk229p4pyb6cb85gx6jvhzk2brbzhwhixprznilz6shd";
-      system = "folio2-as";
-      asd = "folio2-as";
-    });
-    systems = [ "folio2-as" ];
-    lispLibs = [  ];
-  };
-  folio2-as-syntax = {
-    pname = "folio2-as-syntax";
-    version = "20191007-git";
-    asds = [ "folio2-as-syntax" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/folio2/2019-10-07/folio2-20191007-git.tgz";
-      sha256 = "0h214bhbxk229p4pyb6cb85gx6jvhzk2brbzhwhixprznilz6shd";
-      system = "folio2-as-syntax";
-      asd = "folio2-as-syntax";
-    });
-    systems = [ "folio2-as-syntax" ];
-    lispLibs = [ (getAttr "folio2-as" pkgs) ];
-  };
-  folio2-as-tests = {
-    pname = "folio2-as-tests";
-    version = "20191007-git";
-    asds = [ "folio2-as-tests" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/folio2/2019-10-07/folio2-20191007-git.tgz";
-      sha256 = "0h214bhbxk229p4pyb6cb85gx6jvhzk2brbzhwhixprznilz6shd";
-      system = "folio2-as-tests";
-      asd = "folio2-as-tests";
-    });
-    systems = [ "folio2-as-tests" ];
-    lispLibs = [ (getAttr "folio2-as" pkgs) (getAttr "folio2-as-syntax" pkgs) (getAttr "lift" pkgs) ];
-  };
-  folio2-boxes = {
-    pname = "folio2-boxes";
-    version = "20191007-git";
-    asds = [ "folio2-boxes" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/folio2/2019-10-07/folio2-20191007-git.tgz";
-      sha256 = "0h214bhbxk229p4pyb6cb85gx6jvhzk2brbzhwhixprznilz6shd";
-      system = "folio2-boxes";
-      asd = "folio2-boxes";
-    });
-    systems = [ "folio2-boxes" ];
-    lispLibs = [ (getAttr "folio2-as" pkgs) (getAttr "folio2-make" pkgs) ];
-  };
-  folio2-boxes-tests = {
-    pname = "folio2-boxes-tests";
-    version = "20191007-git";
-    asds = [ "folio2-boxes-tests" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/folio2/2019-10-07/folio2-20191007-git.tgz";
-      sha256 = "0h214bhbxk229p4pyb6cb85gx6jvhzk2brbzhwhixprznilz6shd";
-      system = "folio2-boxes-tests";
-      asd = "folio2-boxes-tests";
-    });
-    systems = [ "folio2-boxes-tests" ];
-    lispLibs = [ (getAttr "folio2-boxes" pkgs) (getAttr "lift" pkgs) ];
-  };
-  folio2-functions = {
-    pname = "folio2-functions";
-    version = "20191007-git";
-    asds = [ "folio2-functions" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/folio2/2019-10-07/folio2-20191007-git.tgz";
-      sha256 = "0h214bhbxk229p4pyb6cb85gx6jvhzk2brbzhwhixprznilz6shd";
-      system = "folio2-functions";
-      asd = "folio2-functions";
-    });
-    systems = [ "folio2-functions" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "folio2-as" pkgs) (getAttr "folio2-make" pkgs) ];
-  };
-  folio2-functions-syntax = {
-    pname = "folio2-functions-syntax";
-    version = "20191007-git";
-    asds = [ "folio2-functions-syntax" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/folio2/2019-10-07/folio2-20191007-git.tgz";
-      sha256 = "0h214bhbxk229p4pyb6cb85gx6jvhzk2brbzhwhixprznilz6shd";
-      system = "folio2-functions-syntax";
-      asd = "folio2-functions-syntax";
-    });
-    systems = [ "folio2-functions-syntax" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "folio2-functions" pkgs) ];
-  };
-  folio2-functions-tests = {
-    pname = "folio2-functions-tests";
-    version = "20191007-git";
-    asds = [ "folio2-functions-tests" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/folio2/2019-10-07/folio2-20191007-git.tgz";
-      sha256 = "0h214bhbxk229p4pyb6cb85gx6jvhzk2brbzhwhixprznilz6shd";
-      system = "folio2-functions-tests";
-      asd = "folio2-functions-tests";
-    });
-    systems = [ "folio2-functions-tests" ];
-    lispLibs = [ (getAttr "folio2-functions" pkgs) (getAttr "folio2-functions-syntax" pkgs) (getAttr "lift" pkgs) ];
-  };
-  folio2-make = {
-    pname = "folio2-make";
-    version = "20191007-git";
-    asds = [ "folio2-make" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/folio2/2019-10-07/folio2-20191007-git.tgz";
-      sha256 = "0h214bhbxk229p4pyb6cb85gx6jvhzk2brbzhwhixprznilz6shd";
-      system = "folio2-make";
-      asd = "folio2-make";
-    });
-    systems = [ "folio2-make" ];
-    lispLibs = [  ];
-  };
-  folio2-make-tests = {
-    pname = "folio2-make-tests";
-    version = "20191007-git";
-    asds = [ "folio2-make-tests" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/folio2/2019-10-07/folio2-20191007-git.tgz";
-      sha256 = "0h214bhbxk229p4pyb6cb85gx6jvhzk2brbzhwhixprznilz6shd";
-      system = "folio2-make-tests";
-      asd = "folio2-make-tests";
-    });
-    systems = [ "folio2-make-tests" ];
-    lispLibs = [ (getAttr "folio2-make" pkgs) (getAttr "lift" pkgs) ];
-  };
-  folio2-maps = {
-    pname = "folio2-maps";
-    version = "20191007-git";
-    asds = [ "folio2-maps" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/folio2/2019-10-07/folio2-20191007-git.tgz";
-      sha256 = "0h214bhbxk229p4pyb6cb85gx6jvhzk2brbzhwhixprznilz6shd";
-      system = "folio2-maps";
-      asd = "folio2-maps";
-    });
-    systems = [ "folio2-maps" ];
-    lispLibs = [ (getAttr "folio2-as" pkgs) (getAttr "folio2-make" pkgs) (getAttr "fset" pkgs) ];
-  };
-  folio2-maps-syntax = {
-    pname = "folio2-maps-syntax";
-    version = "20191007-git";
-    asds = [ "folio2-maps-syntax" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/folio2/2019-10-07/folio2-20191007-git.tgz";
-      sha256 = "0h214bhbxk229p4pyb6cb85gx6jvhzk2brbzhwhixprznilz6shd";
-      system = "folio2-maps-syntax";
-      asd = "folio2-maps-syntax";
-    });
-    systems = [ "folio2-maps-syntax" ];
-    lispLibs = [ (getAttr "folio2-maps" pkgs) ];
-  };
-  folio2-maps-tests = {
-    pname = "folio2-maps-tests";
-    version = "20191007-git";
-    asds = [ "folio2-maps-tests" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/folio2/2019-10-07/folio2-20191007-git.tgz";
-      sha256 = "0h214bhbxk229p4pyb6cb85gx6jvhzk2brbzhwhixprznilz6shd";
-      system = "folio2-maps-tests";
-      asd = "folio2-maps-tests";
-    });
-    systems = [ "folio2-maps-tests" ];
-    lispLibs = [ (getAttr "folio2-maps" pkgs) (getAttr "folio2-maps-syntax" pkgs) (getAttr "lift" pkgs) ];
-  };
-  folio2-pairs = {
-    pname = "folio2-pairs";
-    version = "20191007-git";
-    asds = [ "folio2-pairs" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/folio2/2019-10-07/folio2-20191007-git.tgz";
-      sha256 = "0h214bhbxk229p4pyb6cb85gx6jvhzk2brbzhwhixprznilz6shd";
-      system = "folio2-pairs";
-      asd = "folio2-pairs";
-    });
-    systems = [ "folio2-pairs" ];
-    lispLibs = [ (getAttr "folio2-as" pkgs) (getAttr "folio2-make" pkgs) ];
-  };
-  folio2-pairs-tests = {
-    pname = "folio2-pairs-tests";
-    version = "20191007-git";
-    asds = [ "folio2-pairs-tests" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/folio2/2019-10-07/folio2-20191007-git.tgz";
-      sha256 = "0h214bhbxk229p4pyb6cb85gx6jvhzk2brbzhwhixprznilz6shd";
-      system = "folio2-pairs-tests";
-      asd = "folio2-pairs-tests";
-    });
-    systems = [ "folio2-pairs-tests" ];
-    lispLibs = [ (getAttr "folio2-pairs" pkgs) (getAttr "lift" pkgs) ];
-  };
-  folio2-sequences = {
-    pname = "folio2-sequences";
-    version = "20191007-git";
-    asds = [ "folio2-sequences" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/folio2/2019-10-07/folio2-20191007-git.tgz";
-      sha256 = "0h214bhbxk229p4pyb6cb85gx6jvhzk2brbzhwhixprznilz6shd";
-      system = "folio2-sequences";
-      asd = "folio2-sequences";
-    });
-    systems = [ "folio2-sequences" ];
-    lispLibs = [ (getAttr "folio2-as" pkgs) (getAttr "folio2-make" pkgs) (getAttr "folio2-pairs" pkgs) (getAttr "fset" pkgs) (getAttr "series" pkgs) ];
-  };
-  folio2-sequences-syntax = {
-    pname = "folio2-sequences-syntax";
-    version = "20191007-git";
-    asds = [ "folio2-sequences-syntax" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/folio2/2019-10-07/folio2-20191007-git.tgz";
-      sha256 = "0h214bhbxk229p4pyb6cb85gx6jvhzk2brbzhwhixprznilz6shd";
-      system = "folio2-sequences-syntax";
-      asd = "folio2-sequences-syntax";
-    });
-    systems = [ "folio2-sequences-syntax" ];
-    lispLibs = [ (getAttr "folio2-sequences" pkgs) ];
-  };
-  folio2-sequences-tests = {
-    pname = "folio2-sequences-tests";
-    version = "20191007-git";
-    asds = [ "folio2-sequences-tests" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/folio2/2019-10-07/folio2-20191007-git.tgz";
-      sha256 = "0h214bhbxk229p4pyb6cb85gx6jvhzk2brbzhwhixprznilz6shd";
-      system = "folio2-sequences-tests";
-      asd = "folio2-sequences-tests";
-    });
-    systems = [ "folio2-sequences-tests" ];
-    lispLibs = [ (getAttr "folio2-sequences" pkgs) (getAttr "folio2-sequences-syntax" pkgs) (getAttr "lift" pkgs) ];
-  };
-  folio2-series = {
-    pname = "folio2-series";
-    version = "20191007-git";
-    asds = [ "folio2-series" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/folio2/2019-10-07/folio2-20191007-git.tgz";
-      sha256 = "0h214bhbxk229p4pyb6cb85gx6jvhzk2brbzhwhixprznilz6shd";
-      system = "folio2-series";
-      asd = "folio2-series";
-    });
-    systems = [ "folio2-series" ];
-    lispLibs = [ (getAttr "folio2-as" pkgs) (getAttr "folio2-make" pkgs) (getAttr "folio2-pairs" pkgs) (getAttr "folio2-sequences" pkgs) (getAttr "fset" pkgs) (getAttr "series" pkgs) ];
-  };
-  folio2-series-tests = {
-    pname = "folio2-series-tests";
-    version = "20191007-git";
-    asds = [ "folio2-series-tests" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/folio2/2019-10-07/folio2-20191007-git.tgz";
-      sha256 = "0h214bhbxk229p4pyb6cb85gx6jvhzk2brbzhwhixprznilz6shd";
-      system = "folio2-series-tests";
-      asd = "folio2-series-tests";
-    });
-    systems = [ "folio2-series-tests" ];
-    lispLibs = [ (getAttr "folio2-series" pkgs) (getAttr "lift" pkgs) ];
-  };
-  folio2-taps = {
-    pname = "folio2-taps";
-    version = "20191007-git";
-    asds = [ "folio2-taps" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/folio2/2019-10-07/folio2-20191007-git.tgz";
-      sha256 = "0h214bhbxk229p4pyb6cb85gx6jvhzk2brbzhwhixprznilz6shd";
-      system = "folio2-taps";
-      asd = "folio2-taps";
-    });
-    systems = [ "folio2-taps" ];
-    lispLibs = [ (getAttr "closer-mop" pkgs) (getAttr "folio2-as" pkgs) (getAttr "folio2-make" pkgs) (getAttr "folio2-maps" pkgs) (getAttr "folio2-pairs" pkgs) (getAttr "folio2-sequences" pkgs) (getAttr "folio2-series" pkgs) (getAttr "fset" pkgs) ];
-  };
-  folio2-taps-tests = {
-    pname = "folio2-taps-tests";
-    version = "20191007-git";
-    asds = [ "folio2-taps-tests" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/folio2/2019-10-07/folio2-20191007-git.tgz";
-      sha256 = "0h214bhbxk229p4pyb6cb85gx6jvhzk2brbzhwhixprznilz6shd";
-      system = "folio2-taps-tests";
-      asd = "folio2-taps-tests";
-    });
-    systems = [ "folio2-taps-tests" ];
-    lispLibs = [ (getAttr "folio2-taps" pkgs) (getAttr "lift" pkgs) ];
-  };
-  folio2-tests = {
-    pname = "folio2-tests";
-    version = "20191007-git";
-    asds = [ "folio2-tests" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/folio2/2019-10-07/folio2-20191007-git.tgz";
-      sha256 = "0h214bhbxk229p4pyb6cb85gx6jvhzk2brbzhwhixprznilz6shd";
-      system = "folio2-tests";
-      asd = "folio2-tests";
-    });
-    systems = [ "folio2-tests" ];
-    lispLibs = [ (getAttr "folio2" pkgs) ];
-  };
-  font-discovery = {
-    pname = "font-discovery";
-    version = "20221106-git";
-    asds = [ "font-discovery" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/font-discovery/2022-11-06/font-discovery-20221106-git.tgz";
-      sha256 = "1p9wkwc23rnif8vcjaj5ih1fmr5g57sidqjlz08qw6k0z4f6bia1";
-      system = "font-discovery";
-      asd = "font-discovery";
-    });
-    systems = [ "font-discovery" ];
-    lispLibs = [ (getAttr "cffi" pkgs) (getAttr "documentation-utils" pkgs) (getAttr "trivial-features" pkgs) (getAttr "trivial-indent" pkgs) ];
-  };
-  foo-wild = {
-    pname = "foo-wild";
-    version = "20210531-git";
-    asds = [ "foo-wild" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/wild-package-inferred-system/2021-05-31/wild-package-inferred-system-20210531-git.tgz";
-      sha256 = "0sp3j3i83aqyq9bl3djs490nilryi9sh1wjbcqd9z94d9wfbfz80";
-      system = "foo-wild";
-      asd = "foo-wild";
-    });
-    systems = [ "foo-wild" ];
-    lispLibs = [ (getAttr "wild-package-inferred-system" pkgs) ];
-  };
-  for = {
-    pname = "for";
-    version = "20221106-git";
-    asds = [ "for" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/for/2022-11-06/for-20221106-git.tgz";
-      sha256 = "1abh18767wivawcqgg8ac2hi8ss57k2fnn2y0y9b5ymk7aqw1c0m";
-      system = "for";
-      asd = "for";
-    });
-    systems = [ "for" ];
-    lispLibs = [ (getAttr "documentation-utils" pkgs) (getAttr "form-fiddle" pkgs) (getAttr "lambda-fiddle" pkgs) ];
-  };
-  foreign-array = {
-    pname = "foreign-array";
-    version = "master-df14cb8c-git";
-    asds = [ "foreign-array" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/antik/2019-10-08/antik-master-df14cb8c-git.tgz";
-      sha256 = "1n08cx4n51z8v4bxyak166lp495xda3x7llfxcdpxndxqxcammr0";
-      system = "foreign-array";
-      asd = "foreign-array";
-    });
-    systems = [ "foreign-array" ];
-    lispLibs = [ (getAttr "antik-base" pkgs) (getAttr "cffi" pkgs) (getAttr "cffi-grovel" pkgs) (getAttr "static-vectors" pkgs) (getAttr "trivial-garbage" pkgs) ];
-  };
-  fork-future = {
-    pname = "fork-future";
-    version = "20220220-git";
-    asds = [ "fork-future" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/clml/2022-02-20/clml-20220220-git.tgz";
-      sha256 = "0m3w59c74z3wdj1g26122svljiq192xhvmx7b2lkb7bxnf4778m1";
-      system = "fork-future";
-      asd = "fork-future";
-    });
-    systems = [ "fork-future" ];
-    lispLibs = [ (getAttr "cffi" pkgs) (getAttr "cl-store" pkgs) ];
-  };
-  form-fiddle = {
-    pname = "form-fiddle";
-    version = "20190710-git";
-    asds = [ "form-fiddle" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/form-fiddle/2019-07-10/form-fiddle-20190710-git.tgz";
-      sha256 = "041iznc9mpfyrl0sv5893ys9pbb2pvbn9g3clarqi7gsfj483jln";
-      system = "form-fiddle";
-      asd = "form-fiddle";
-    });
-    systems = [ "form-fiddle" ];
-    lispLibs = [ (getAttr "documentation-utils" pkgs) ];
-  };
-  format-string-builder = {
-    pname = "format-string-builder";
-    version = "20170124-git";
-    asds = [ "format-string-builder" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/format-string-builder/2017-01-24/format-string-builder-20170124-git.tgz";
-      sha256 = "1266w5wynfhamxdf8ms2236m202f6982fd9ph8fs98nqccq2pcac";
-      system = "format-string-builder";
-      asd = "format-string-builder";
-    });
-    systems = [ "format-string-builder" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "serapeum" pkgs) ];
-  };
-  formlets = {
-    pname = "formlets";
-    version = "20161204-git";
-    asds = [ "formlets" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/formlets/2016-12-04/formlets-20161204-git.tgz";
-      sha256 = "0r2afi5lwzxfb8xylx9cs44wqhla4b50k21nzg2dxn7z8m6yspfn";
-      system = "formlets";
-      asd = "formlets";
-    });
-    systems = [ "formlets" ];
-    lispLibs = [ (getAttr "cl-ppcre" pkgs) (getAttr "cl-who" pkgs) (getAttr "drakma" pkgs) (getAttr "hunchentoot" pkgs) ];
-  };
-  formlets-test = {
-    pname = "formlets-test";
-    version = "20161204-git";
-    asds = [ "formlets-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/formlets/2016-12-04/formlets-20161204-git.tgz";
-      sha256 = "0r2afi5lwzxfb8xylx9cs44wqhla4b50k21nzg2dxn7z8m6yspfn";
-      system = "formlets-test";
-      asd = "formlets-test";
-    });
-    systems = [ "formlets-test" ];
-    lispLibs = [ (getAttr "cl-ppcre" pkgs) (getAttr "cl-who" pkgs) (getAttr "drakma" pkgs) (getAttr "formlets" pkgs) (getAttr "hunchentoot" pkgs) ];
-  };
-  fprog = {
-    pname = "fprog";
-    version = "20181210-git";
-    asds = [ "fprog" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cambl/2018-12-10/cambl-20181210-git.tgz";
-      sha256 = "103mry04j2k9vznsxm7wcvccgxkil92cdrv52miwcmxl8daa4jiz";
-      system = "fprog";
-      asd = "fprog";
-    });
-    systems = [ "fprog" ];
-    lispLibs = [  ];
-  };
-  fps-independent-timestep = {
-    pname = "fps-independent-timestep";
-    version = "20200427-git";
-    asds = [ "fps-independent-timestep" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/sucle/2020-04-27/sucle-20200427-git.tgz";
-      sha256 = "033akkn9zxc6qdgycgxgybx3v23638245xrx29x2cbwnvg3i1q34";
-      system = "fps-independent-timestep";
-      asd = "fps-independent-timestep";
-    });
-    systems = [ "fps-independent-timestep" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "local-time" pkgs) ];
-  };
-  fred = {
-    pname = "fred";
-    version = "20150923-git";
-    asds = [ "fred" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/fred/2015-09-23/fred-20150923-git.tgz";
-      sha256 = "0qn2rd67haz4pvvv4yp2yvbvjhficv8xjm7ijg0r34gxllm6i373";
-      system = "fred";
-      asd = "fred";
-    });
-    systems = [ "fred" ];
-    lispLibs = [ (getAttr "drakma" pkgs) (getAttr "s-xml" pkgs) ];
-  };
-  freebsd-ffi = {
-    pname = "freebsd-ffi";
-    version = "20220707-git";
-    asds = [ "freebsd-ffi" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/freebsd-ffi/2022-07-07/freebsd-ffi-20220707-git.tgz";
-      sha256 = "0mhbkigxmkjn5pdn58pn80d1wv49zd4vq0i59pnj6wir1fnr7mva";
-      system = "freebsd-ffi";
-      asd = "freebsd-ffi";
-    });
-    systems = [ "freebsd-ffi" ];
-    lispLibs = [ (getAttr "cffi" pkgs) (getAttr "mfiano-utils" pkgs) ];
-  };
-  freebsd-sysctl = {
-    pname = "freebsd-sysctl";
-    version = "20210228-git";
-    asds = [ "freebsd-sysctl" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/freebsd-sysctl/2021-02-28/freebsd-sysctl-20210228-git.tgz";
-      sha256 = "1gzqiqz0pi273ia2q61bhr908ymbl8cll5v2h8lkicr9pff37g91";
-      system = "freebsd-sysctl";
-      asd = "freebsd-sysctl";
-    });
-    systems = [ "freebsd-sysctl" ];
-    lispLibs = [ (getAttr "cffi" pkgs) (getAttr "cffi-grovel" pkgs) ];
-  };
-  freebsd-sysctl_slash_tests = {
-    pname = "freebsd-sysctl_tests";
-    version = "20210228-git";
-    asds = [ "freebsd-sysctl" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/freebsd-sysctl/2021-02-28/freebsd-sysctl-20210228-git.tgz";
-      sha256 = "1gzqiqz0pi273ia2q61bhr908ymbl8cll5v2h8lkicr9pff37g91";
-      system = "freebsd-sysctl";
-      asd = "freebsd-sysctl";
-    });
-    systems = [ "freebsd-sysctl/tests" ];
-    lispLibs = [ (getAttr "fiveam" pkgs) (getAttr "freebsd-sysctl" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  freesound = {
-    pname = "freesound";
-    version = "20210411-git";
-    asds = [ "freesound" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/freesound/2021-04-11/freesound-20210411-git.tgz";
-      sha256 = "1nsmbz7qx9wn86860zlnw75sdgpr8qfzgqfbwxggc3zr7p83kric";
-      system = "freesound";
-      asd = "freesound";
-    });
-    systems = [ "freesound" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cl-ppcre" pkgs) (getAttr "dexador" pkgs) (getAttr "trivial-open-browser" pkgs) (getAttr "yason" pkgs) ];
-  };
-  fresnel = {
-    pname = "fresnel";
-    version = "20220707-git";
-    asds = [ "fresnel" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/fresnel/2022-07-07/fresnel-20220707-git.tgz";
-      sha256 = "005bm16x00m409jccjq36xd7319pbwhqvqvk0v2mwpi6znrq4l0c";
-      system = "fresnel";
-      asd = "fresnel";
-    });
-    systems = [ "fresnel" ];
-    lispLibs = [ (getAttr "gt" pkgs) (getAttr "fare-quasiquote-extras" pkgs) (getAttr "trivial-package-local-nicknames" pkgs) ];
-  };
-  fresnel_slash_readtable = {
-    pname = "fresnel_readtable";
-    version = "20220707-git";
-    asds = [ "fresnel" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/fresnel/2022-07-07/fresnel-20220707-git.tgz";
-      sha256 = "005bm16x00m409jccjq36xd7319pbwhqvqvk0v2mwpi6znrq4l0c";
-      system = "fresnel";
-      asd = "fresnel";
-    });
-    systems = [ "fresnel/readtable" ];
-    lispLibs = [ (getAttr "cl-interpol" pkgs) (getAttr "gt" pkgs) (getAttr "fare-quasiquote-extras" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  froute = {
-    pname = "froute";
-    version = "20180711-git";
-    asds = [ "froute" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/froute/2018-07-11/froute-20180711-git.tgz";
-      sha256 = "1q7xzgn7g5ky1d8m121r8hskcg4gqpripr791k03y7dz5vkfj14x";
-      system = "froute";
-      asd = "froute";
-    });
-    systems = [ "froute" ];
-    lispLibs = [ (getAttr "cl-ppcre" pkgs) (getAttr "closer-mop" pkgs) ];
-  };
-  froute_slash_hunchentoot = {
-    pname = "froute_hunchentoot";
-    version = "20180711-git";
-    asds = [ "froute" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/froute/2018-07-11/froute-20180711-git.tgz";
-      sha256 = "1q7xzgn7g5ky1d8m121r8hskcg4gqpripr791k03y7dz5vkfj14x";
-      system = "froute";
-      asd = "froute";
-    });
-    systems = [ "froute/hunchentoot" ];
-    lispLibs = [ (getAttr "froute" pkgs) (getAttr "hunchentoot" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  froute_slash_test = {
-    pname = "froute_test";
-    version = "20180711-git";
-    asds = [ "froute" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/froute/2018-07-11/froute-20180711-git.tgz";
-      sha256 = "1q7xzgn7g5ky1d8m121r8hskcg4gqpripr791k03y7dz5vkfj14x";
-      system = "froute";
-      asd = "froute";
-    });
-    systems = [ "froute/test" ];
-    lispLibs = [ (getAttr "froute" pkgs) (getAttr "lisp-unit" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  frpc = {
-    pname = "frpc";
-    version = "20151031-git";
-    asds = [ "frpc" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/frpc/2015-10-31/frpc-20151031-git.tgz";
-      sha256 = "0yac1q79kw1w1qd7zjgg912n780v318n2drzdimlv5n3bwd6pm2r";
-      system = "frpc";
-      asd = "frpc";
-    });
-    systems = [ "frpc" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "babel" pkgs) (getAttr "bordeaux-threads" pkgs) (getAttr "flexi-streams" pkgs) (getAttr "glass" pkgs) (getAttr "nibbles" pkgs) (getAttr "pounds" pkgs) (getAttr "usocket" pkgs) ];
-  };
-  frpc-des = {
-    pname = "frpc-des";
-    version = "20151031-git";
-    asds = [ "frpc-des" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/frpc/2015-10-31/frpc-20151031-git.tgz";
-      sha256 = "0yac1q79kw1w1qd7zjgg912n780v318n2drzdimlv5n3bwd6pm2r";
-      system = "frpc-des";
-      asd = "frpc";
-    });
-    systems = [ "frpc-des" ];
-    lispLibs = [ (getAttr "frpc" pkgs) (getAttr "ironclad" pkgs) ];
-  };
-  frpc-gss = {
-    pname = "frpc-gss";
-    version = "20151031-git";
-    asds = [ "frpc-gss" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/frpc/2015-10-31/frpc-20151031-git.tgz";
-      sha256 = "0yac1q79kw1w1qd7zjgg912n780v318n2drzdimlv5n3bwd6pm2r";
-      system = "frpc-gss";
-      asd = "frpc";
-    });
-    systems = [ "frpc-gss" ];
-    lispLibs = [ (getAttr "cerberus" pkgs) (getAttr "frpc" pkgs) ];
-  };
-  frpcgen = {
-    pname = "frpcgen";
-    version = "20151031-git";
-    asds = [ "frpcgen" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/frpc/2015-10-31/frpc-20151031-git.tgz";
-      sha256 = "0yac1q79kw1w1qd7zjgg912n780v318n2drzdimlv5n3bwd6pm2r";
-      system = "frpcgen";
-      asd = "frpcgen";
-    });
-    systems = [ "frpcgen" ];
-    lispLibs = [ (getAttr "cl-lex" pkgs) (getAttr "yacc" pkgs) (getAttr "frpc" pkgs) ];
-  };
-  fs-watcher = {
-    pname = "fs-watcher";
-    version = "20171130-git";
-    asds = [ "fs-watcher" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/fs-watcher/2017-11-30/fs-watcher-20171130-git.tgz";
-      sha256 = "0fr2wb39609z4afk4w21vwnwi4g050x4gag2ykdx6hn9m65cp9db";
-      system = "fs-watcher";
-      asd = "fs-watcher";
-    });
-    systems = [ "fs-watcher" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "com_dot_gigamonkeys_dot_pathnames" pkgs) ];
-  };
-  fset = {
-    pname = "fset";
-    version = "20200925-git";
-    asds = [ "fset" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/fset/2020-09-25/fset-20200925-git.tgz";
-      sha256 = "15285aacb0dlhvbrkc11yffp5x2zd1jvm77zz7rrpbdwqbafp8sy";
-      system = "fset";
-      asd = "fset";
-    });
-    systems = [ "fset" ];
-    lispLibs = [ (getAttr "misc-extensions" pkgs) (getAttr "mt19937" pkgs) (getAttr "named-readtables" pkgs) ];
-  };
-  fset_slash_test = {
-    pname = "fset_test";
-    version = "20200925-git";
-    asds = [ "fset" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/fset/2020-09-25/fset-20200925-git.tgz";
-      sha256 = "15285aacb0dlhvbrkc11yffp5x2zd1jvm77zz7rrpbdwqbafp8sy";
-      system = "fset";
-      asd = "fset";
-    });
-    systems = [ "fset/test" ];
-    lispLibs = [ (getAttr "fset" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  fsocket = {
-    pname = "fsocket";
-    version = "20211230-git";
-    asds = [ "fsocket" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/fsocket/2021-12-30/fsocket-20211230-git.tgz";
-      sha256 = "18h3s4bv3243xbp0qdywn9kmqvx8zh9cscc9f6sfyxrz6xhymw6p";
-      system = "fsocket";
-      asd = "fsocket";
-    });
-    systems = [ "fsocket" ];
-    lispLibs = [ (getAttr "cffi" pkgs) (getAttr "trivial-gray-streams" pkgs) ];
-  };
-  fsvd = {
-    pname = "fsvd";
-    version = "20131211-git";
-    asds = [ "fsvd" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/fsvd/2013-12-11/fsvd-20131211-git.tgz";
-      sha256 = "1m22g9x18ixjh5nylm56l5p67ryx9dbd3g6lyzvwk9nayjmqn7x5";
-      system = "fsvd";
-      asd = "fsvd";
-    });
-    systems = [ "fsvd" ];
-    lispLibs = [  ];
-  };
-  ftp = {
-    pname = "ftp";
-    version = "20150608-http";
-    asds = [ "ftp" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-ftp/2015-06-08/cl-ftp-20150608-http.tgz";
-      sha256 = "1m955rjpaynybzmb9q631mll764hm06lydvhra50mfjj75ynwsvw";
-      system = "ftp";
-      asd = "ftp";
-    });
-    systems = [ "ftp" ];
-    lispLibs = [ (getAttr "cl-ftp" pkgs) ];
-  };
-  fucc-generator = {
-    pname = "fucc-generator";
-    version = "v0.2.2";
-    asds = [ "fucc-generator" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/fucc/2020-04-27/fucc-v0.2.2.tgz";
-      sha256 = "10wznxw6yhkyh943xnm694innj13xdlmkx13pr8xwc6zdbdyb32k";
-      system = "fucc-generator";
-      asd = "fucc-generator";
-    });
-    systems = [ "fucc-generator" ];
-    lispLibs = [ (getAttr "fucc-parser" pkgs) ];
-  };
-  fucc-parser = {
-    pname = "fucc-parser";
-    version = "v0.2.2";
-    asds = [ "fucc-parser" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/fucc/2020-04-27/fucc-v0.2.2.tgz";
-      sha256 = "10wznxw6yhkyh943xnm694innj13xdlmkx13pr8xwc6zdbdyb32k";
-      system = "fucc-parser";
-      asd = "fucc-parser";
-    });
-    systems = [ "fucc-parser" ];
-    lispLibs = [  ];
-  };
-  function-cache = {
-    pname = "function-cache";
-    version = "20181210-git";
-    asds = [ "function-cache" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/function-cache/2018-12-10/function-cache-20181210-git.tgz";
-      sha256 = "000vmd3f5rx5hs9nvphfric0gkzaadns31c6mxaslpv0k7pkrmc6";
-      system = "function-cache";
-      asd = "function-cache";
-    });
-    systems = [ "function-cache" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cl-interpol" pkgs) (getAttr "closer-mop" pkgs) (getAttr "iterate" pkgs) (getAttr "symbol-munger" pkgs) ];
-  };
-  function-cache-clsql = {
-    pname = "function-cache-clsql";
-    version = "20181210-git";
-    asds = [ "function-cache-clsql" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/function-cache/2018-12-10/function-cache-20181210-git.tgz";
-      sha256 = "000vmd3f5rx5hs9nvphfric0gkzaadns31c6mxaslpv0k7pkrmc6";
-      system = "function-cache-clsql";
-      asd = "function-cache-clsql";
-    });
-    systems = [ "function-cache-clsql" ];
-    lispLibs = [ (getAttr "clsql" pkgs) (getAttr "clsql-helper" pkgs) (getAttr "function-cache" pkgs) ];
-  };
-  function-cache_slash_test = {
-    pname = "function-cache_test";
-    version = "20181210-git";
-    asds = [ "function-cache" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/function-cache/2018-12-10/function-cache-20181210-git.tgz";
-      sha256 = "000vmd3f5rx5hs9nvphfric0gkzaadns31c6mxaslpv0k7pkrmc6";
-      system = "function-cache";
-      asd = "function-cache";
-    });
-    systems = [ "function-cache/test" ];
-    lispLibs = [ (getAttr "function-cache" pkgs) (getAttr "lisp-unit2" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  functional-geometry = {
-    pname = "functional-geometry";
-    version = "20221106-git";
-    asds = [ "functional-geometry" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/mcclim/2022-11-06/mcclim-20221106-git.tgz";
-      sha256 = "0hz6vz4c0xv8bjx02hf3rbnp66c7ifx2ld4y6nxdz6i70wyhwbdf";
-      system = "functional-geometry";
-      asd = "functional-geometry";
-    });
-    systems = [ "functional-geometry" ];
-    lispLibs = [ (getAttr "clim-listener" pkgs) ];
-  };
-  functional-trees = {
-    pname = "functional-trees";
-    version = "20221106-git";
-    asds = [ "functional-trees" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/functional-trees/2022-11-06/functional-trees-20221106-git.tgz";
-      sha256 = "1fr3684219i9glgx06qfzqh0lp5y0d9786hv3g18dljhfp21vaqy";
-      system = "functional-trees";
-      asd = "functional-trees";
-    });
-    systems = [ "functional-trees" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "asdf-package-system" pkgs) (getAttr "cl-store" pkgs) (getAttr "closer-mop" pkgs) (getAttr "fset" pkgs) (getAttr "iterate" pkgs) (getAttr "serapeum" pkgs) ];
-  };
-  funds = {
-    pname = "funds";
-    version = "20211020-git";
-    asds = [ "funds" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/funds/2021-10-20/funds-20211020-git.tgz";
-      sha256 = "13y1jhvnpzrs9daz6f3z67w6h2y21ggb10j3j4vnc5p3m8i7ps4p";
-      system = "funds";
-      asd = "funds";
-    });
-    systems = [ "funds" ];
-    lispLibs = [  ];
-  };
-  future = {
-    pname = "future";
-    version = "20220220-git";
-    asds = [ "future" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/clml/2022-02-20/clml-20220220-git.tgz";
-      sha256 = "0m3w59c74z3wdj1g26122svljiq192xhvmx7b2lkb7bxnf4778m1";
-      system = "future";
-      asd = "future";
-    });
-    systems = [ "future" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) ];
-  };
-  fuzzy-match = {
-    pname = "fuzzy-match";
-    version = "20210124-git";
-    asds = [ "fuzzy-match" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/fuzzy-match/2021-01-24/fuzzy-match-20210124-git.tgz";
-      sha256 = "1lawndmzkl6f9sviy7ngn2s3xkc4akp8l505kvpslaz6qq0ayyqv";
-      system = "fuzzy-match";
-      asd = "fuzzy-match";
-    });
-    systems = [ "fuzzy-match" ];
-    lispLibs = [ (getAttr "str" pkgs) (getAttr "mk-string-metrics" pkgs) ];
-  };
-  fxml = {
-    pname = "fxml";
-    version = "20210228-git";
-    asds = [ "fxml" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/fxml/2021-02-28/fxml-20210228-git.tgz";
-      sha256 = "1vxdb1cjjqi986f72bggnw1s4yzv12g4li7vn4y49b6lphshr8lm";
-      system = "fxml";
-      asd = "fxml";
-    });
-    systems = [ "fxml" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "babel" pkgs) (getAttr "flexi-streams" pkgs) (getAttr "named-readtables" pkgs) (getAttr "quri" pkgs) (getAttr "serapeum" pkgs) (getAttr "split-sequence" pkgs) (getAttr "trivial-gray-streams" pkgs) ];
-  };
-  fxml_slash_css-selectors = {
-    pname = "fxml_css-selectors";
-    version = "20210228-git";
-    asds = [ "fxml" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/fxml/2021-02-28/fxml-20210228-git.tgz";
-      sha256 = "1vxdb1cjjqi986f72bggnw1s4yzv12g4li7vn4y49b6lphshr8lm";
-      system = "fxml";
-      asd = "fxml";
-    });
-    systems = [ "fxml/css-selectors" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "css-selectors" pkgs) (getAttr "fxml" pkgs) (getAttr "xpath" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  fxml_slash_cxml = {
-    pname = "fxml_cxml";
-    version = "20210228-git";
-    asds = [ "fxml" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/fxml/2021-02-28/fxml-20210228-git.tgz";
-      sha256 = "1vxdb1cjjqi986f72bggnw1s4yzv12g4li7vn4y49b6lphshr8lm";
-      system = "fxml";
-      asd = "fxml";
-    });
-    systems = [ "fxml/cxml" ];
-    lispLibs = [ (getAttr "cxml" pkgs) (getAttr "fxml" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  fxml_slash_dom = {
-    pname = "fxml_dom";
-    version = "20210228-git";
-    asds = [ "fxml" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/fxml/2021-02-28/fxml-20210228-git.tgz";
-      sha256 = "1vxdb1cjjqi986f72bggnw1s4yzv12g4li7vn4y49b6lphshr8lm";
-      system = "fxml";
-      asd = "fxml";
-    });
-    systems = [ "fxml/dom" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "babel" pkgs) (getAttr "flexi-streams" pkgs) (getAttr "named-readtables" pkgs) (getAttr "quri" pkgs) (getAttr "serapeum" pkgs) (getAttr "split-sequence" pkgs) (getAttr "trivial-gray-streams" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  fxml_slash_html5 = {
-    pname = "fxml_html5";
-    version = "20210228-git";
-    asds = [ "fxml" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/fxml/2021-02-28/fxml-20210228-git.tgz";
-      sha256 = "1vxdb1cjjqi986f72bggnw1s4yzv12g4li7vn4y49b6lphshr8lm";
-      system = "fxml";
-      asd = "fxml";
-    });
-    systems = [ "fxml/html5" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cl-html5-parser" pkgs) (getAttr "fset" pkgs) (getAttr "fxml" pkgs) (getAttr "xpath" pkgs) (getAttr "quri" pkgs) (getAttr "serapeum" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  fxml_slash_klacks = {
-    pname = "fxml_klacks";
-    version = "20210228-git";
-    asds = [ "fxml" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/fxml/2021-02-28/fxml-20210228-git.tgz";
-      sha256 = "1vxdb1cjjqi986f72bggnw1s4yzv12g4li7vn4y49b6lphshr8lm";
-      system = "fxml";
-      asd = "fxml";
-    });
-    systems = [ "fxml/klacks" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "babel" pkgs) (getAttr "flexi-streams" pkgs) (getAttr "named-readtables" pkgs) (getAttr "quri" pkgs) (getAttr "serapeum" pkgs) (getAttr "split-sequence" pkgs) (getAttr "trivial-gray-streams" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  fxml_slash_runes = {
-    pname = "fxml_runes";
-    version = "20210228-git";
-    asds = [ "fxml" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/fxml/2021-02-28/fxml-20210228-git.tgz";
-      sha256 = "1vxdb1cjjqi986f72bggnw1s4yzv12g4li7vn4y49b6lphshr8lm";
-      system = "fxml";
-      asd = "fxml";
-    });
-    systems = [ "fxml/runes" ];
-    lispLibs = [ (getAttr "babel" pkgs) (getAttr "named-readtables" pkgs) (getAttr "serapeum" pkgs) (getAttr "trivial-gray-streams" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  fxml_slash_sanitize = {
-    pname = "fxml_sanitize";
-    version = "20210228-git";
-    asds = [ "fxml" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/fxml/2021-02-28/fxml-20210228-git.tgz";
-      sha256 = "1vxdb1cjjqi986f72bggnw1s4yzv12g4li7vn4y49b6lphshr8lm";
-      system = "fxml";
-      asd = "fxml";
-    });
-    systems = [ "fxml/sanitize" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "fxml" pkgs) (getAttr "quri" pkgs) (getAttr "serapeum" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  fxml_slash_sanitize_slash_test = {
-    pname = "fxml_sanitize_test";
-    version = "20210228-git";
-    asds = [ "fxml" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/fxml/2021-02-28/fxml-20210228-git.tgz";
-      sha256 = "1vxdb1cjjqi986f72bggnw1s4yzv12g4li7vn4y49b6lphshr8lm";
-      system = "fxml";
-      asd = "fxml";
-    });
-    systems = [ "fxml/sanitize/test" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cl-html5-parser" pkgs) (getAttr "fiveam" pkgs) (getAttr "fset" pkgs) (getAttr "fxml" pkgs) (getAttr "xpath" pkgs) (getAttr "quri" pkgs) (getAttr "serapeum" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  fxml_slash_stp = {
-    pname = "fxml_stp";
-    version = "20210228-git";
-    asds = [ "fxml" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/fxml/2021-02-28/fxml-20210228-git.tgz";
-      sha256 = "1vxdb1cjjqi986f72bggnw1s4yzv12g4li7vn4y49b6lphshr8lm";
-      system = "fxml";
-      asd = "fxml";
-    });
-    systems = [ "fxml/stp" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "fxml" pkgs) (getAttr "xpath" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  fxml_slash_test = {
-    pname = "fxml_test";
-    version = "20210228-git";
-    asds = [ "fxml" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/fxml/2021-02-28/fxml-20210228-git.tgz";
-      sha256 = "1vxdb1cjjqi986f72bggnw1s4yzv12g4li7vn4y49b6lphshr8lm";
-      system = "fxml";
-      asd = "fxml";
-    });
-    systems = [ "fxml/test" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "babel" pkgs) (getAttr "cxml" pkgs) (getAttr "cxml-rng" pkgs) (getAttr "fiveam" pkgs) (getAttr "flexi-streams" pkgs) (getAttr "fxml" pkgs) (getAttr "named-readtables" pkgs) (getAttr "xpath" pkgs) (getAttr "quri" pkgs) (getAttr "serapeum" pkgs) (getAttr "split-sequence" pkgs) (getAttr "trivial-gray-streams" pkgs) (getAttr "uiop" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  fxml_slash_xml = {
-    pname = "fxml_xml";
-    version = "20210228-git";
-    asds = [ "fxml" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/fxml/2021-02-28/fxml-20210228-git.tgz";
-      sha256 = "1vxdb1cjjqi986f72bggnw1s4yzv12g4li7vn4y49b6lphshr8lm";
-      system = "fxml";
-      asd = "fxml";
-    });
-    systems = [ "fxml/xml" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "babel" pkgs) (getAttr "flexi-streams" pkgs) (getAttr "named-readtables" pkgs) (getAttr "quri" pkgs) (getAttr "serapeum" pkgs) (getAttr "split-sequence" pkgs) (getAttr "trivial-gray-streams" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  fxml_slash_xpath = {
-    pname = "fxml_xpath";
-    version = "20210228-git";
-    asds = [ "fxml" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/fxml/2021-02-28/fxml-20210228-git.tgz";
-      sha256 = "1vxdb1cjjqi986f72bggnw1s4yzv12g4li7vn4y49b6lphshr8lm";
-      system = "fxml";
-      asd = "fxml";
-    });
-    systems = [ "fxml/xpath" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "fxml" pkgs) (getAttr "xpath" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  gadgets = {
-    pname = "gadgets";
-    version = "20220220-git";
-    asds = [ "gadgets" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/gadgets/2022-02-20/gadgets-20220220-git.tgz";
-      sha256 = "0g06wb3dciri2q93x2dcf58x5r8gq2kb86fgd2w4pr5r1wxwd1sm";
-      system = "gadgets";
-      asd = "gadgets";
-    });
-    systems = [ "gadgets" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cl-hash-util" pkgs) (getAttr "cl-utilities" pkgs) (getAttr "split-sequence" pkgs) (getAttr "uiop" pkgs) ];
-  };
-  garbage-pools = {
-    pname = "garbage-pools";
-    version = "20210124-git";
-    asds = [ "garbage-pools" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/garbage-pools/2021-01-24/garbage-pools-20210124-git.tgz";
-      sha256 = "04jqwr6j138him6wc4nrwjzm4lvyj5j31xqab02nkf8h9hmsf5v1";
-      system = "garbage-pools";
-      asd = "garbage-pools";
-    });
-    systems = [ "garbage-pools" ];
-    lispLibs = [  ];
-  };
-  garbage-pools-test = {
-    pname = "garbage-pools-test";
-    version = "20210124-git";
-    asds = [ "garbage-pools-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/garbage-pools/2021-01-24/garbage-pools-20210124-git.tgz";
-      sha256 = "04jqwr6j138him6wc4nrwjzm4lvyj5j31xqab02nkf8h9hmsf5v1";
-      system = "garbage-pools-test";
-      asd = "garbage-pools-test";
-    });
-    systems = [ "garbage-pools-test" ];
-    lispLibs = [ (getAttr "garbage-pools" pkgs) (getAttr "lift" pkgs) ];
-  };
-  garten = {
-    pname = "garten";
-    version = "20211020-git";
-    asds = [ "garten" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/colliflower/2021-10-20/colliflower-20211020-git.tgz";
-      sha256 = "1fzn9s7wm7wmffrdm21lpvry9jb320456cmmprn976a533lp704r";
-      system = "garten";
-      asd = "garten";
-    });
-    systems = [ "garten" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "iterate" pkgs) (getAttr "serapeum" pkgs) ];
-  };
-  gcm = {
-    pname = "gcm";
-    version = "20141217-git";
-    asds = [ "gcm" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/gcm/2014-12-17/gcm-20141217-git.tgz";
-      sha256 = "1xnm1cj417d9syb634zi9w90c2191gxjrixa724s4h3hvj70y0ff";
-      system = "gcm";
-      asd = "gcm";
-    });
-    systems = [ "gcm" ];
-    lispLibs = [ (getAttr "babel" pkgs) (getAttr "drakma" pkgs) (getAttr "com_dot_gigamonkeys_dot_json" pkgs) ];
-  };
-  geco = {
-    pname = "geco";
-    version = "20210228-git";
-    asds = [ "geco" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/geco/2021-02-28/geco-20210228-git.tgz";
-      sha256 = "1ncaf9ab7jz59zmga0p97blsjjb1m6db0qih57wipfhqdb5ylz17";
-      system = "geco";
-      asd = "geco";
-    });
-    systems = [ "geco" ];
-    lispLibs = [  ];
-  };
-  gendl = {
-    pname = "gendl";
-    version = "master-1a957fb2-git";
-    asds = [ "gendl" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/gendl/2022-07-07/gendl-master-1a957fb2-git.tgz";
-      sha256 = "0j47qnvvfx3vnh3pll6rkya5m142hi93bd5jk65rv43vbc94sv30";
-      system = "gendl";
-      asd = "gendl";
-    });
-    systems = [ "gendl" ];
-    lispLibs = [ (getAttr "cl-lite" pkgs) (getAttr "geysr" pkgs) (getAttr "gwl-graphics" pkgs) (getAttr "robot" pkgs) (getAttr "yadd" pkgs) ];
-  };
-  gendl-asdf = {
-    pname = "gendl-asdf";
-    version = "master-1a957fb2-git";
-    asds = [ "gendl-asdf" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/gendl/2022-07-07/gendl-master-1a957fb2-git.tgz";
-      sha256 = "0j47qnvvfx3vnh3pll6rkya5m142hi93bd5jk65rv43vbc94sv30";
-      system = "gendl-asdf";
-      asd = "gendl-asdf";
-    });
-    systems = [ "gendl-asdf" ];
-    lispLibs = [  ];
-  };
-  general-accumulator = {
-    pname = "general-accumulator";
-    version = "20211209-git";
-    asds = [ "general-accumulator" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-general-accumulator/2021-12-09/cl-general-accumulator-20211209-git.tgz";
-      sha256 = "14ybsk1ahgya67clspacqij1lvs5bzv07rdq60nhgqsbc6s56j9g";
-      system = "general-accumulator";
-      asd = "general-accumulator";
-    });
-    systems = [ "general-accumulator" ];
-    lispLibs = [  ];
-  };
-  generalized-reference = {
-    pname = "generalized-reference";
-    version = "20220707-git";
-    asds = [ "generalized-reference" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/generalized-reference/2022-07-07/generalized-reference-20220707-git.tgz";
-      sha256 = "0q1cm52lijn4p6bjzx2yr2kwy729lcj3f6lsanbnbjw56xgp4cpb";
-      system = "generalized-reference";
-      asd = "generalized-reference";
-    });
-    systems = [ "generalized-reference" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "closer-mop" pkgs) (getAttr "serapeum" pkgs) (getAttr "series" pkgs) (getAttr "split-sequence" pkgs) (getAttr "trivial-types" pkgs) ];
-  };
-  generators = {
-    pname = "generators";
-    version = "20130615-git";
-    asds = [ "generators" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/generators/2013-06-15/generators-20130615-git.tgz";
-      sha256 = "1y8jlvv5c3av2ww33rwm2kh9sxmhfykhz235b33fbjpdxpx1r9bs";
-      system = "generators";
-      asd = "generators";
-    });
-    systems = [ "generators" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cl-cont" pkgs) (getAttr "iterate" pkgs) ];
-  };
-  generic-cl = {
-    pname = "generic-cl";
-    version = "20211020-git";
-    asds = [ "generic-cl" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/generic-cl/2021-10-20/generic-cl-20211020-git.tgz";
-      sha256 = "0glvig5jsyc4735n9sz6adp48lpfcdajhbmgggmxq8pb9j2cab7q";
-      system = "generic-cl";
-      asd = "generic-cl";
-    });
-    systems = [ "generic-cl" ];
-    lispLibs = [ (getAttr "agutil" pkgs) (getAttr "generic-cl_dot_arithmetic" pkgs) (getAttr "generic-cl_dot_collector" pkgs) (getAttr "generic-cl_dot_comparison" pkgs) (getAttr "generic-cl_dot_container" pkgs) (getAttr "generic-cl_dot_iterator" pkgs) (getAttr "generic-cl_dot_lazy-seq" pkgs) (getAttr "generic-cl_dot_map" pkgs) (getAttr "generic-cl_dot_math" pkgs) (getAttr "generic-cl_dot_object" pkgs) (getAttr "generic-cl_dot_sequence" pkgs) (getAttr "generic-cl_dot_set" pkgs) ];
-  };
-  generic-cl_dot_arithmetic = {
-    pname = "generic-cl.arithmetic";
-    version = "20211020-git";
-    asds = [ "generic-cl.arithmetic" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/generic-cl/2021-10-20/generic-cl-20211020-git.tgz";
-      sha256 = "0glvig5jsyc4735n9sz6adp48lpfcdajhbmgggmxq8pb9j2cab7q";
-      system = "generic-cl.arithmetic";
-      asd = "generic-cl.arithmetic";
-    });
-    systems = [ "generic-cl.arithmetic" ];
-    lispLibs = [ (getAttr "generic-cl_dot_comparison" pkgs) (getAttr "generic-cl_dot_internal" pkgs) (getAttr "static-dispatch" pkgs) (getAttr "trivia" pkgs) ];
-  };
-  generic-cl_dot_collector = {
-    pname = "generic-cl.collector";
-    version = "20211020-git";
-    asds = [ "generic-cl.collector" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/generic-cl/2021-10-20/generic-cl-20211020-git.tgz";
-      sha256 = "0glvig5jsyc4735n9sz6adp48lpfcdajhbmgggmxq8pb9j2cab7q";
-      system = "generic-cl.collector";
-      asd = "generic-cl.collector";
-    });
-    systems = [ "generic-cl.collector" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "anaphora" pkgs) (getAttr "arrows" pkgs) (getAttr "generic-cl_dot_iterator" pkgs) (getAttr "generic-cl_dot_object" pkgs) (getAttr "static-dispatch" pkgs) ];
-  };
-  generic-cl_dot_comparison = {
-    pname = "generic-cl.comparison";
-    version = "20211020-git";
-    asds = [ "generic-cl.comparison" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/generic-cl/2021-10-20/generic-cl-20211020-git.tgz";
-      sha256 = "0glvig5jsyc4735n9sz6adp48lpfcdajhbmgggmxq8pb9j2cab7q";
-      system = "generic-cl.comparison";
-      asd = "generic-cl.comparison";
-    });
-    systems = [ "generic-cl.comparison" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "generic-cl_dot_internal" pkgs) (getAttr "static-dispatch" pkgs) ];
-  };
-  generic-cl_dot_container = {
-    pname = "generic-cl.container";
-    version = "20211020-git";
-    asds = [ "generic-cl.container" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/generic-cl/2021-10-20/generic-cl-20211020-git.tgz";
-      sha256 = "0glvig5jsyc4735n9sz6adp48lpfcdajhbmgggmxq8pb9j2cab7q";
-      system = "generic-cl.container";
-      asd = "generic-cl.container";
-    });
-    systems = [ "generic-cl.container" ];
-    lispLibs = [ (getAttr "generic-cl_dot_object" pkgs) (getAttr "static-dispatch" pkgs) ];
-  };
-  generic-cl_dot_internal = {
-    pname = "generic-cl.internal";
-    version = "20211020-git";
-    asds = [ "generic-cl.internal" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/generic-cl/2021-10-20/generic-cl-20211020-git.tgz";
-      sha256 = "0glvig5jsyc4735n9sz6adp48lpfcdajhbmgggmxq8pb9j2cab7q";
-      system = "generic-cl.internal";
-      asd = "generic-cl.internal";
-    });
-    systems = [ "generic-cl.internal" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cl-form-types" pkgs) (getAttr "static-dispatch" pkgs) (getAttr "trivia" pkgs) ];
-  };
-  generic-cl_dot_iterator = {
-    pname = "generic-cl.iterator";
-    version = "20211020-git";
-    asds = [ "generic-cl.iterator" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/generic-cl/2021-10-20/generic-cl-20211020-git.tgz";
-      sha256 = "0glvig5jsyc4735n9sz6adp48lpfcdajhbmgggmxq8pb9j2cab7q";
-      system = "generic-cl.iterator";
-      asd = "generic-cl.iterator";
-    });
-    systems = [ "generic-cl.iterator" ];
-    lispLibs = [ (getAttr "agutil" pkgs) (getAttr "alexandria" pkgs) (getAttr "anaphora" pkgs) (getAttr "arrows" pkgs) (getAttr "cl-form-types" pkgs) (getAttr "generic-cl_dot_container" pkgs) (getAttr "generic-cl_dot_internal" pkgs) (getAttr "generic-cl_dot_object" pkgs) (getAttr "parse-declarations-1_dot_0" pkgs) (getAttr "static-dispatch" pkgs) (getAttr "trivia" pkgs) ];
-  };
-  generic-cl_dot_lazy-seq = {
-    pname = "generic-cl.lazy-seq";
-    version = "20211020-git";
-    asds = [ "generic-cl.lazy-seq" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/generic-cl/2021-10-20/generic-cl-20211020-git.tgz";
-      sha256 = "0glvig5jsyc4735n9sz6adp48lpfcdajhbmgggmxq8pb9j2cab7q";
-      system = "generic-cl.lazy-seq";
-      asd = "generic-cl.lazy-seq";
-    });
-    systems = [ "generic-cl.lazy-seq" ];
-    lispLibs = [ (getAttr "agutil" pkgs) (getAttr "arrows" pkgs) (getAttr "cl-custom-hash-table" pkgs) (getAttr "generic-cl_dot_collector" pkgs) (getAttr "generic-cl_dot_comparison" pkgs) (getAttr "generic-cl_dot_container" pkgs) (getAttr "generic-cl_dot_iterator" pkgs) (getAttr "generic-cl_dot_map" pkgs) (getAttr "generic-cl_dot_object" pkgs) (getAttr "generic-cl_dot_sequence" pkgs) (getAttr "static-dispatch" pkgs) (getAttr "trivia" pkgs) ];
-  };
-  generic-cl_dot_map = {
-    pname = "generic-cl.map";
-    version = "20211020-git";
-    asds = [ "generic-cl.map" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/generic-cl/2021-10-20/generic-cl-20211020-git.tgz";
-      sha256 = "0glvig5jsyc4735n9sz6adp48lpfcdajhbmgggmxq8pb9j2cab7q";
-      system = "generic-cl.map";
-      asd = "generic-cl.map";
-    });
-    systems = [ "generic-cl.map" ];
-    lispLibs = [ (getAttr "agutil" pkgs) (getAttr "alexandria" pkgs) (getAttr "anaphora" pkgs) (getAttr "arrows" pkgs) (getAttr "cl-custom-hash-table" pkgs) (getAttr "generic-cl_dot_collector" pkgs) (getAttr "generic-cl_dot_comparison" pkgs) (getAttr "generic-cl_dot_container" pkgs) (getAttr "generic-cl_dot_internal" pkgs) (getAttr "generic-cl_dot_iterator" pkgs) (getAttr "generic-cl_dot_object" pkgs) (getAttr "static-dispatch" pkgs) (getAttr "trivia" pkgs) ];
-  };
-  generic-cl_dot_math = {
-    pname = "generic-cl.math";
-    version = "20211020-git";
-    asds = [ "generic-cl.math" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/generic-cl/2021-10-20/generic-cl-20211020-git.tgz";
-      sha256 = "0glvig5jsyc4735n9sz6adp48lpfcdajhbmgggmxq8pb9j2cab7q";
-      system = "generic-cl.math";
-      asd = "generic-cl.math";
-    });
-    systems = [ "generic-cl.math" ];
-    lispLibs = [ (getAttr "agutil" pkgs) (getAttr "alexandria" pkgs) (getAttr "anaphora" pkgs) (getAttr "arrows" pkgs) (getAttr "generic-cl_dot_arithmetic" pkgs) (getAttr "static-dispatch" pkgs) (getAttr "trivia" pkgs) ];
-  };
-  generic-cl_dot_object = {
-    pname = "generic-cl.object";
-    version = "20211020-git";
-    asds = [ "generic-cl.object" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/generic-cl/2021-10-20/generic-cl-20211020-git.tgz";
-      sha256 = "0glvig5jsyc4735n9sz6adp48lpfcdajhbmgggmxq8pb9j2cab7q";
-      system = "generic-cl.object";
-      asd = "generic-cl.object";
-    });
-    systems = [ "generic-cl.object" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "arrows" pkgs) (getAttr "generic-cl_dot_comparison" pkgs) (getAttr "static-dispatch" pkgs) ];
-  };
-  generic-cl_dot_sequence = {
-    pname = "generic-cl.sequence";
-    version = "20211020-git";
-    asds = [ "generic-cl.sequence" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/generic-cl/2021-10-20/generic-cl-20211020-git.tgz";
-      sha256 = "0glvig5jsyc4735n9sz6adp48lpfcdajhbmgggmxq8pb9j2cab7q";
-      system = "generic-cl.sequence";
-      asd = "generic-cl.sequence";
-    });
-    systems = [ "generic-cl.sequence" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "anaphora" pkgs) (getAttr "arrows" pkgs) (getAttr "cl-custom-hash-table" pkgs) (getAttr "cl-form-types" pkgs) (getAttr "generic-cl_dot_collector" pkgs) (getAttr "generic-cl_dot_comparison" pkgs) (getAttr "generic-cl_dot_container" pkgs) (getAttr "generic-cl_dot_internal" pkgs) (getAttr "generic-cl_dot_iterator" pkgs) (getAttr "generic-cl_dot_map" pkgs) (getAttr "generic-cl_dot_object" pkgs) (getAttr "static-dispatch" pkgs) ];
-  };
-  generic-cl_dot_set = {
-    pname = "generic-cl.set";
-    version = "20211020-git";
-    asds = [ "generic-cl.set" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/generic-cl/2021-10-20/generic-cl-20211020-git.tgz";
-      sha256 = "0glvig5jsyc4735n9sz6adp48lpfcdajhbmgggmxq8pb9j2cab7q";
-      system = "generic-cl.set";
-      asd = "generic-cl.set";
-    });
-    systems = [ "generic-cl.set" ];
-    lispLibs = [ (getAttr "anaphora" pkgs) (getAttr "generic-cl_dot_arithmetic" pkgs) (getAttr "generic-cl_dot_collector" pkgs) (getAttr "generic-cl_dot_comparison" pkgs) (getAttr "generic-cl_dot_container" pkgs) (getAttr "generic-cl_dot_iterator" pkgs) (getAttr "generic-cl_dot_map" pkgs) (getAttr "generic-cl_dot_object" pkgs) (getAttr "generic-cl_dot_sequence" pkgs) (getAttr "static-dispatch" pkgs) ];
-  };
-  generic-cl_dot_util = {
-    pname = "generic-cl.util";
-    version = "20211020-git";
-    asds = [ "generic-cl.util" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/generic-cl/2021-10-20/generic-cl-20211020-git.tgz";
-      sha256 = "0glvig5jsyc4735n9sz6adp48lpfcdajhbmgggmxq8pb9j2cab7q";
-      system = "generic-cl.util";
-      asd = "generic-cl.util";
-    });
-    systems = [ "generic-cl.util" ];
-    lispLibs = [ (getAttr "generic-cl" pkgs) ];
-  };
-  generic-cl_dot_util_slash_test = {
-    pname = "generic-cl.util_test";
-    version = "20211020-git";
-    asds = [ "generic-cl.util" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/generic-cl/2021-10-20/generic-cl-20211020-git.tgz";
-      sha256 = "0glvig5jsyc4735n9sz6adp48lpfcdajhbmgggmxq8pb9j2cab7q";
-      system = "generic-cl.util";
-      asd = "generic-cl.util";
-    });
-    systems = [ "generic-cl.util/test" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "anaphora" pkgs) (getAttr "arrows" pkgs) (getAttr "fiveam" pkgs) (getAttr "generic-cl_dot_util" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  generic-cl_slash_test = {
-    pname = "generic-cl_test";
-    version = "20211020-git";
-    asds = [ "generic-cl" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/generic-cl/2021-10-20/generic-cl-20211020-git.tgz";
-      sha256 = "0glvig5jsyc4735n9sz6adp48lpfcdajhbmgggmxq8pb9j2cab7q";
-      system = "generic-cl";
-      asd = "generic-cl";
-    });
-    systems = [ "generic-cl/test" ];
-    lispLibs = [ (getAttr "fiveam" pkgs) (getAttr "generic-cl" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  generic-comparability = {
-    pname = "generic-comparability";
-    version = "20180131-git";
-    asds = [ "generic-comparability" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/generic-comparability/2018-01-31/generic-comparability-20180131-git.tgz";
-      sha256 = "01ma0cwirxarwwmdwflnh8kmysmr2smh5kyvzhb2074ljxg8yq2p";
-      system = "generic-comparability";
-      asd = "generic-comparability";
-    });
-    systems = [ "generic-comparability" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) ];
-  };
-  generic-comparability-test = {
-    pname = "generic-comparability-test";
-    version = "20180131-git";
-    asds = [ "generic-comparability-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/generic-comparability/2018-01-31/generic-comparability-20180131-git.tgz";
-      sha256 = "01ma0cwirxarwwmdwflnh8kmysmr2smh5kyvzhb2074ljxg8yq2p";
-      system = "generic-comparability-test";
-      asd = "generic-comparability";
-    });
-    systems = [ "generic-comparability-test" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "fiveam" pkgs) (getAttr "generic-comparability" pkgs) ];
-  };
-  generic-sequences = {
-    pname = "generic-sequences";
-    version = "20150709-git";
-    asds = [ "generic-sequences" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/generic-sequences/2015-07-09/generic-sequences-20150709-git.tgz";
-      sha256 = "09kr0x4kx634rhslal6z2isnbs7v8rn5ic3pvxa3w1mm37lxx7h3";
-      system = "generic-sequences";
-      asd = "generic-sequences";
-    });
-    systems = [ "generic-sequences" ];
-    lispLibs = [  ];
-  };
-  generic-sequences-cont = {
-    pname = "generic-sequences-cont";
-    version = "20150709-git";
-    asds = [ "generic-sequences-cont" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/generic-sequences/2015-07-09/generic-sequences-20150709-git.tgz";
-      sha256 = "09kr0x4kx634rhslal6z2isnbs7v8rn5ic3pvxa3w1mm37lxx7h3";
-      system = "generic-sequences-cont";
-      asd = "generic-sequences-cont";
-    });
-    systems = [ "generic-sequences-cont" ];
-    lispLibs = [ (getAttr "cl-cont" pkgs) (getAttr "generic-sequences" pkgs) ];
-  };
-  generic-sequences-iterate = {
-    pname = "generic-sequences-iterate";
-    version = "20150709-git";
-    asds = [ "generic-sequences-iterate" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/generic-sequences/2015-07-09/generic-sequences-20150709-git.tgz";
-      sha256 = "09kr0x4kx634rhslal6z2isnbs7v8rn5ic3pvxa3w1mm37lxx7h3";
-      system = "generic-sequences-iterate";
-      asd = "generic-sequences-iterate";
-    });
-    systems = [ "generic-sequences-iterate" ];
-    lispLibs = [ (getAttr "generic-sequences" pkgs) (getAttr "iterate" pkgs) ];
-  };
-  generic-sequences-stream = {
-    pname = "generic-sequences-stream";
-    version = "20150709-git";
-    asds = [ "generic-sequences-stream" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/generic-sequences/2015-07-09/generic-sequences-20150709-git.tgz";
-      sha256 = "09kr0x4kx634rhslal6z2isnbs7v8rn5ic3pvxa3w1mm37lxx7h3";
-      system = "generic-sequences-stream";
-      asd = "generic-sequences-stream";
-    });
-    systems = [ "generic-sequences-stream" ];
-    lispLibs = [ (getAttr "bordeaux-threads" pkgs) (getAttr "generic-sequences" pkgs) ];
-  };
-  generic-sequences-test = {
-    pname = "generic-sequences-test";
-    version = "20150709-git";
-    asds = [ "generic-sequences-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/generic-sequences/2015-07-09/generic-sequences-20150709-git.tgz";
-      sha256 = "09kr0x4kx634rhslal6z2isnbs7v8rn5ic3pvxa3w1mm37lxx7h3";
-      system = "generic-sequences-test";
-      asd = "generic-sequences-test";
-    });
-    systems = [ "generic-sequences-test" ];
-    lispLibs = [ (getAttr "generic-sequences" pkgs) (getAttr "generic-sequences-cont" pkgs) (getAttr "generic-sequences-iterate" pkgs) (getAttr "generic-sequences-stream" pkgs) ];
-  };
-  geneva = {
-    pname = "geneva";
-    version = "20161204-git";
-    asds = [ "geneva" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/geneva/2016-12-04/geneva-20161204-git.tgz";
-      sha256 = "1pw18xkbndqssx6iix8a8zcw8bgjh88jxxxrklkgkghk04bmqxw3";
-      system = "geneva";
-      asd = "geneva";
-    });
-    systems = [ "geneva" ];
-    lispLibs = [ (getAttr "named-readtables" pkgs) (getAttr "split-sequence" pkgs) ];
-  };
-  geneva-cl = {
-    pname = "geneva-cl";
-    version = "20161204-git";
-    asds = [ "geneva-cl" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/geneva/2016-12-04/geneva-20161204-git.tgz";
-      sha256 = "1pw18xkbndqssx6iix8a8zcw8bgjh88jxxxrklkgkghk04bmqxw3";
-      system = "geneva-cl";
-      asd = "geneva-cl";
-    });
-    systems = [ "geneva-cl" ];
-    lispLibs = [ (getAttr "geneva" pkgs) (getAttr "geneva-mk2" pkgs) (getAttr "named-readtables" pkgs) (getAttr "split-sequence" pkgs) (getAttr "trivial-documentation" pkgs) ];
-  };
-  geneva-html = {
-    pname = "geneva-html";
-    version = "20161204-git";
-    asds = [ "geneva-html" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/geneva/2016-12-04/geneva-20161204-git.tgz";
-      sha256 = "1pw18xkbndqssx6iix8a8zcw8bgjh88jxxxrklkgkghk04bmqxw3";
-      system = "geneva-html";
-      asd = "geneva-html";
-    });
-    systems = [ "geneva-html" ];
-    lispLibs = [ (getAttr "file-types" pkgs) (getAttr "geneva" pkgs) (getAttr "macro-html" pkgs) ];
-  };
-  geneva-latex = {
-    pname = "geneva-latex";
-    version = "20161204-git";
-    asds = [ "geneva-latex" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/geneva/2016-12-04/geneva-20161204-git.tgz";
-      sha256 = "1pw18xkbndqssx6iix8a8zcw8bgjh88jxxxrklkgkghk04bmqxw3";
-      system = "geneva-latex";
-      asd = "geneva-latex";
-    });
-    systems = [ "geneva-latex" ];
-    lispLibs = [ (getAttr "geneva" pkgs) (getAttr "geneva-tex" pkgs) (getAttr "named-readtables" pkgs) (getAttr "texp" pkgs) ];
-  };
-  geneva-mk2 = {
-    pname = "geneva-mk2";
-    version = "20161204-git";
-    asds = [ "geneva-mk2" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/geneva/2016-12-04/geneva-20161204-git.tgz";
-      sha256 = "1pw18xkbndqssx6iix8a8zcw8bgjh88jxxxrklkgkghk04bmqxw3";
-      system = "geneva-mk2";
-      asd = "geneva-mk2";
-    });
-    systems = [ "geneva-mk2" ];
-    lispLibs = [ (getAttr "geneva" pkgs) (getAttr "maxpc" pkgs) (getAttr "split-sequence" pkgs) ];
-  };
-  geneva-plain-text = {
-    pname = "geneva-plain-text";
-    version = "20161204-git";
-    asds = [ "geneva-plain-text" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/geneva/2016-12-04/geneva-20161204-git.tgz";
-      sha256 = "1pw18xkbndqssx6iix8a8zcw8bgjh88jxxxrklkgkghk04bmqxw3";
-      system = "geneva-plain-text";
-      asd = "geneva-plain-text";
-    });
-    systems = [ "geneva-plain-text" ];
-    lispLibs = [ (getAttr "geneva" pkgs) (getAttr "geneva-mk2" pkgs) ];
-  };
-  geneva-tex = {
-    pname = "geneva-tex";
-    version = "20161204-git";
-    asds = [ "geneva-tex" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/geneva/2016-12-04/geneva-20161204-git.tgz";
-      sha256 = "1pw18xkbndqssx6iix8a8zcw8bgjh88jxxxrklkgkghk04bmqxw3";
-      system = "geneva-tex";
-      asd = "geneva-tex";
-    });
-    systems = [ "geneva-tex" ];
-    lispLibs = [ (getAttr "file-types" pkgs) (getAttr "geneva" pkgs) (getAttr "named-readtables" pkgs) (getAttr "texp" pkgs) ];
-  };
-  genhash = {
-    pname = "genhash";
-    version = "20181210-git";
-    asds = [ "genhash" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/genhash/2018-12-10/genhash-20181210-git.tgz";
-      sha256 = "1jnk1fix1zydhy0kn3cvlp6dy0241x7v8ahq001nlr6v152z1cwk";
-      system = "genhash";
-      asd = "genhash";
-    });
-    systems = [ "genhash" ];
-    lispLibs = [  ];
-  };
-  geodesic = {
-    pname = "geodesic";
-    version = "20220331-git";
-    asds = [ "geodesic" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/geodesic/2022-03-31/geodesic-20220331-git.tgz";
-      sha256 = "1cmdxy495jipasf142bc6x0w2r75ymkx5x5nlg6j9br3sf6v1x2k";
-      system = "geodesic";
-      asd = "geodesic";
-    });
-    systems = [ "geodesic" ];
-    lispLibs = [  ];
-  };
-  geodesic_slash_test = {
-    pname = "geodesic_test";
-    version = "20220331-git";
-    asds = [ "geodesic" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/geodesic/2022-03-31/geodesic-20220331-git.tgz";
-      sha256 = "1cmdxy495jipasf142bc6x0w2r75ymkx5x5nlg6j9br3sf6v1x2k";
-      system = "geodesic";
-      asd = "geodesic";
-    });
-    systems = [ "geodesic/test" ];
-    lispLibs = [ (getAttr "_1am" pkgs) (getAttr "geodesic" pkgs) (getAttr "parse-number" pkgs) (getAttr "split-sequence" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  geom-base = {
-    pname = "geom-base";
-    version = "master-1a957fb2-git";
-    asds = [ "geom-base" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/gendl/2022-07-07/gendl-master-1a957fb2-git.tgz";
-      sha256 = "0j47qnvvfx3vnh3pll6rkya5m142hi93bd5jk65rv43vbc94sv30";
-      system = "geom-base";
-      asd = "geom-base";
-    });
-    systems = [ "geom-base" ];
-    lispLibs = [ (getAttr "cl-pdf" pkgs) (getAttr "cl-typesetting" pkgs) (getAttr "cl-who" pkgs) (getAttr "base" pkgs) ];
-  };
-  geowkt = {
-    pname = "geowkt";
-    version = "20200610-git";
-    asds = [ "geowkt" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/geowkt/2020-06-10/geowkt-20200610-git.tgz";
-      sha256 = "02l8cb2k10j7k6fvhk9dpqmkxs6vb5w5nh3159w7drprvjqhfrjw";
-      system = "geowkt";
-      asd = "geowkt";
-    });
-    systems = [ "geowkt" ];
-    lispLibs = [  ];
-  };
-  geowkt-update = {
-    pname = "geowkt-update";
-    version = "20200610-git";
-    asds = [ "geowkt-update" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/geowkt/2020-06-10/geowkt-20200610-git.tgz";
-      sha256 = "02l8cb2k10j7k6fvhk9dpqmkxs6vb5w5nh3159w7drprvjqhfrjw";
-      system = "geowkt-update";
-      asd = "geowkt-update";
-    });
-    systems = [ "geowkt-update" ];
-    lispLibs = [ (getAttr "cl-ppcre" pkgs) (getAttr "drakma" pkgs) (getAttr "parse-number" pkgs) ];
-  };
-  getopt = {
-    pname = "getopt";
-    version = "20150923-git";
-    asds = [ "getopt" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/getopt/2015-09-23/getopt-20150923-git.tgz";
-      sha256 = "1liwzghx2swws84xlxnq756gbass0s916a9sq5mjfnlg3scbwcs3";
-      system = "getopt";
-      asd = "getopt";
-    });
-    systems = [ "getopt" ];
-    lispLibs = [  ];
-  };
-  getopt-tests = {
-    pname = "getopt-tests";
-    version = "20150923-git";
-    asds = [ "getopt-tests" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/getopt/2015-09-23/getopt-20150923-git.tgz";
-      sha256 = "1liwzghx2swws84xlxnq756gbass0s916a9sq5mjfnlg3scbwcs3";
-      system = "getopt-tests";
-      asd = "getopt";
-    });
-    systems = [ "getopt-tests" ];
-    lispLibs = [ (getAttr "getopt" pkgs) (getAttr "ptester" pkgs) ];
-  };
-  gettext = {
-    pname = "gettext";
-    version = "20171130-git";
-    asds = [ "gettext" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/gettext/2017-11-30/gettext-20171130-git.tgz";
-      sha256 = "1pzhamgni6k5hi6bbvlb3dm659pcllrrr3vhhn3rpjn238zxg5ar";
-      system = "gettext";
-      asd = "gettext";
-    });
-    systems = [ "gettext" ];
-    lispLibs = [ (getAttr "yacc" pkgs) (getAttr "flexi-streams" pkgs) (getAttr "split-sequence" pkgs) ];
-  };
-  gettext-example = {
-    pname = "gettext-example";
-    version = "20171130-git";
-    asds = [ "gettext-example" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/gettext/2017-11-30/gettext-20171130-git.tgz";
-      sha256 = "1pzhamgni6k5hi6bbvlb3dm659pcllrrr3vhhn3rpjn238zxg5ar";
-      system = "gettext-example";
-      asd = "gettext-example";
-    });
-    systems = [ "gettext-example" ];
-    lispLibs = [ (getAttr "gettext" pkgs) ];
-  };
-  gettext-tests = {
-    pname = "gettext-tests";
-    version = "20171130-git";
-    asds = [ "gettext-tests" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/gettext/2017-11-30/gettext-20171130-git.tgz";
-      sha256 = "1pzhamgni6k5hi6bbvlb3dm659pcllrrr3vhhn3rpjn238zxg5ar";
-      system = "gettext-tests";
-      asd = "gettext-tests";
-    });
-    systems = [ "gettext-tests" ];
-    lispLibs = [ (getAttr "gettext" pkgs) (getAttr "stefil" pkgs) ];
-  };
-  geysr = {
-    pname = "geysr";
-    version = "master-1a957fb2-git";
-    asds = [ "geysr" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/gendl/2022-07-07/gendl-master-1a957fb2-git.tgz";
-      sha256 = "0j47qnvvfx3vnh3pll6rkya5m142hi93bd5jk65rv43vbc94sv30";
-      system = "geysr";
-      asd = "geysr";
-    });
-    systems = [ "geysr" ];
-    lispLibs = [ (getAttr "gendl-asdf" pkgs) (getAttr "gwl-graphics" pkgs) ];
-  };
-  gfxmath = {
-    pname = "gfxmath";
-    version = "20220707-git";
-    asds = [ "gfxmath" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/gfxmath/2022-07-07/gfxmath-20220707-git.tgz";
-      sha256 = "0qln95n5s9hkng1sv01icjqqwqpg2h635p177xw4j5cvb4bx7x96";
-      system = "gfxmath";
-      asd = "gfxmath";
-    });
-    systems = [ "gfxmath" ];
-    lispLibs = [ (getAttr "str" pkgs) (getAttr "mfiano-utils" pkgs) ];
-  };
-  gfxmath_dot_test = {
-    pname = "gfxmath.test";
-    version = "20220707-git";
-    asds = [ "gfxmath.test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/gfxmath/2022-07-07/gfxmath-20220707-git.tgz";
-      sha256 = "0qln95n5s9hkng1sv01icjqqwqpg2h635p177xw4j5cvb4bx7x96";
-      system = "gfxmath.test";
-      asd = "gfxmath.test";
-    });
-    systems = [ "gfxmath.test" ];
-    lispLibs = [ (getAttr "gfxmath" pkgs) (getAttr "mfiano-utils" pkgs) (getAttr "prove" pkgs) (getAttr "prove-asdf" pkgs) ];
-  };
-  git-file-history = {
-    pname = "git-file-history";
-    version = "20160825-git";
-    asds = [ "git-file-history" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/git-file-history/2016-08-25/git-file-history-20160825-git.tgz";
-      sha256 = "00kdawcy3mhljv04xpx5n7l2s21qdpbm8i9avjdqbxvfc5j05bq8";
-      system = "git-file-history";
-      asd = "git-file-history";
-    });
-    systems = [ "git-file-history" ];
-    lispLibs = [ (getAttr "cl-ppcre" pkgs) (getAttr "legit" pkgs) (getAttr "local-time" pkgs) (getAttr "uiop" pkgs) ];
-  };
-  git-file-history-test = {
-    pname = "git-file-history-test";
-    version = "20160825-git";
-    asds = [ "git-file-history-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/git-file-history/2016-08-25/git-file-history-20160825-git.tgz";
-      sha256 = "00kdawcy3mhljv04xpx5n7l2s21qdpbm8i9avjdqbxvfc5j05bq8";
-      system = "git-file-history-test";
-      asd = "git-file-history-test";
-    });
-    systems = [ "git-file-history-test" ];
-    lispLibs = [ (getAttr "fiveam" pkgs) (getAttr "git-file-history" pkgs) ];
-  };
-  github-api-cl = {
-    pname = "github-api-cl";
-    version = "20221106-git";
-    asds = [ "github-api-cl" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/github-api-cl/2022-11-06/github-api-cl-20221106-git.tgz";
-      sha256 = "1f7hgncmi7d5chvlixhigysx68bchdcr2hh54iwlpfk8p3an7gwz";
-      system = "github-api-cl";
-      asd = "github-api-cl";
-    });
-    systems = [ "github-api-cl" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cffi-grovel" pkgs) (getAttr "cl-base64" pkgs) (getAttr "str" pkgs) (getAttr "clack" pkgs) (getAttr "dexador" pkgs) (getAttr "trivial-features" pkgs) (getAttr "woo" pkgs) (getAttr "yason" pkgs) ];
-  };
-  github-api-cl_slash_tests = {
-    pname = "github-api-cl_tests";
-    version = "20221106-git";
-    asds = [ "github-api-cl" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/github-api-cl/2022-11-06/github-api-cl-20221106-git.tgz";
-      sha256 = "1f7hgncmi7d5chvlixhigysx68bchdcr2hh54iwlpfk8p3an7gwz";
-      system = "github-api-cl";
-      asd = "github-api-cl";
-    });
-    systems = [ "github-api-cl/tests" ];
-    lispLibs = [ (getAttr "github-api-cl" pkgs) (getAttr "lisp-unit" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  github-gist-api-cl = {
-    pname = "github-gist-api-cl";
-    version = "20221106-git";
-    asds = [ "github-gist-api-cl" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/github-api-cl/2022-11-06/github-api-cl-20221106-git.tgz";
-      sha256 = "1f7hgncmi7d5chvlixhigysx68bchdcr2hh54iwlpfk8p3an7gwz";
-      system = "github-gist-api-cl";
-      asd = "github-gist-api-cl";
-    });
-    systems = [ "github-gist-api-cl" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cffi-grovel" pkgs) (getAttr "cl-base64" pkgs) (getAttr "str" pkgs) (getAttr "clack" pkgs) (getAttr "dexador" pkgs) (getAttr "github-api-cl" pkgs) (getAttr "trivial-features" pkgs) (getAttr "woo" pkgs) (getAttr "yason" pkgs) ];
-  };
-  glacier = {
-    pname = "glacier";
-    version = "20211209-git";
-    asds = [ "glacier" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/glacier/2021-12-09/glacier-20211209-git.tgz";
-      sha256 = "05x7sl5ybfqss18zxml1gzj0iynyf09xsxikm84i21nh39vqyx38";
-      system = "glacier";
-      asd = "glacier";
-    });
-    systems = [ "glacier" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "bordeaux-threads" pkgs) (getAttr "cl-json" pkgs) (getAttr "cl-ppcre" pkgs) (getAttr "str" pkgs) (getAttr "dexador" pkgs) (getAttr "simple-config" pkgs) (getAttr "tooter" pkgs) (getAttr "websocket-driver" pkgs) ];
-  };
-  glad-blob = {
-    pname = "glad-blob";
-    version = "stable-git";
-    asds = [ "glad-blob" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/glad-blob/2020-10-16/glad-blob-stable-git.tgz";
-      sha256 = "19vp7nyf4kxhczi8i2w47lvipk1i4psrxlpk4nvbdh97vc12k5a7";
-      system = "glad-blob";
-      asd = "glad-blob";
-    });
-    systems = [ "glad-blob" ];
-    lispLibs = [ (getAttr "bodge-blobs-support" pkgs) (getAttr "trivial-features" pkgs) ];
-  };
-  glass = {
-    pname = "glass";
-    version = "20150709-git";
-    asds = [ "glass" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/glass/2015-07-09/glass-20150709-git.tgz";
-      sha256 = "1xwr6mj25m0z1qhp30hafbbhrfj34dfidy320x5m3lij13vbyb1p";
-      system = "glass";
-      asd = "glass";
-    });
-    systems = [ "glass" ];
-    lispLibs = [  ];
-  };
-  glaw = {
-    pname = "glaw";
-    version = "20180228-git";
-    asds = [ "glaw" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/glaw/2018-02-28/glaw-20180228-git.tgz";
-      sha256 = "06i9g80hkqgwk5h306wkdpcpv7n229n1ig1hy6697l35v8c4mzmp";
-      system = "glaw";
-      asd = "glaw";
-    });
-    systems = [ "glaw" ];
-    lispLibs = [ (getAttr "cl-alc" pkgs) (getAttr "cl-openal" pkgs) (getAttr "cl-opengl" pkgs) ];
-  };
-  glaw-examples = {
-    pname = "glaw-examples";
-    version = "20180228-git";
-    asds = [ "glaw-examples" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/glaw/2018-02-28/glaw-20180228-git.tgz";
-      sha256 = "06i9g80hkqgwk5h306wkdpcpv7n229n1ig1hy6697l35v8c4mzmp";
-      system = "glaw-examples";
-      asd = "glaw-examples";
-    });
-    systems = [ "glaw-examples" ];
-    lispLibs = [ (getAttr "glaw" pkgs) (getAttr "glaw-imago" pkgs) (getAttr "glop" pkgs) ];
-  };
-  glaw-imago = {
-    pname = "glaw-imago";
-    version = "20180228-git";
-    asds = [ "glaw-imago" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/glaw/2018-02-28/glaw-20180228-git.tgz";
-      sha256 = "06i9g80hkqgwk5h306wkdpcpv7n229n1ig1hy6697l35v8c4mzmp";
-      system = "glaw-imago";
-      asd = "glaw-imago";
-    });
-    systems = [ "glaw-imago" ];
-    lispLibs = [ (getAttr "glaw" pkgs) (getAttr "imago" pkgs) ];
-  };
-  glaw-sdl = {
-    pname = "glaw-sdl";
-    version = "20180228-git";
-    asds = [ "glaw-sdl" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/glaw/2018-02-28/glaw-20180228-git.tgz";
-      sha256 = "06i9g80hkqgwk5h306wkdpcpv7n229n1ig1hy6697l35v8c4mzmp";
-      system = "glaw-sdl";
-      asd = "glaw-sdl";
-    });
-    systems = [ "glaw-sdl" ];
-    lispLibs = [ (getAttr "glaw" pkgs) (getAttr "lispbuilder-sdl" pkgs) (getAttr "lispbuilder-sdl-image" pkgs) ];
-  };
-  glfw-blob = {
-    pname = "glfw-blob";
-    version = "stable-git";
-    asds = [ "glfw-blob" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/glfw-blob/2020-10-16/glfw-blob-stable-git.tgz";
-      sha256 = "0j953vqsyswipgyhc39swsgwgaqb53wvs80izraknlsp379hzabs";
-      system = "glfw-blob";
-      asd = "glfw-blob";
-    });
-    systems = [ "glfw-blob" ];
-    lispLibs = [ (getAttr "bodge-blobs-support" pkgs) (getAttr "trivial-features" pkgs) ];
-  };
-  glhelp = {
-    pname = "glhelp";
-    version = "20200427-git";
-    asds = [ "glhelp" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/sucle/2020-04-27/sucle-20200427-git.tgz";
-      sha256 = "033akkn9zxc6qdgycgxgybx3v23638245xrx29x2cbwnvg3i1q34";
-      system = "glhelp";
-      asd = "glhelp";
-    });
-    systems = [ "glhelp" ];
-    lispLibs = [ (getAttr "cl-opengl" pkgs) (getAttr "glsl-toolkit" pkgs) (getAttr "split-sequence" pkgs) (getAttr "deflazy" pkgs) (getAttr "uncommon-lisp" pkgs) ];
-  };
-  glisp = {
-    pname = "glisp";
-    version = "master-1a957fb2-git";
-    asds = [ "glisp" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/gendl/2022-07-07/gendl-master-1a957fb2-git.tgz";
-      sha256 = "0j47qnvvfx3vnh3pll6rkya5m142hi93bd5jk65rv43vbc94sv30";
-      system = "glisp";
-      asd = "glisp";
-    });
-    systems = [ "glisp" ];
-    lispLibs = [ (getAttr "babel" pkgs) (getAttr "bordeaux-threads" pkgs) (getAttr "cl-base64" pkgs) (getAttr "cl-ppcre" pkgs) (getAttr "base" pkgs) (getAttr "uiop" pkgs) ];
-  };
-  glisph = {
-    pname = "glisph";
-    version = "20170403-git";
-    asds = [ "glisph" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/glisph/2017-04-03/glisph-20170403-git.tgz";
-      sha256 = "097d6kjk4rndpqn181k9nyr2bps4gf3shq5x2fy1swvks3pvys91";
-      system = "glisph";
-      asd = "glisph";
-    });
-    systems = [ "glisph" ];
-    lispLibs = [ (getAttr "cl-annot" pkgs) (getAttr "cl-glu" pkgs) (getAttr "cl-opengl" pkgs) (getAttr "cl-reexport" pkgs) (getAttr "zpb-ttf" pkgs) ];
-  };
-  glisph-test = {
-    pname = "glisph-test";
-    version = "20170403-git";
-    asds = [ "glisph-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/glisph/2017-04-03/glisph-20170403-git.tgz";
-      sha256 = "097d6kjk4rndpqn181k9nyr2bps4gf3shq5x2fy1swvks3pvys91";
-      system = "glisph-test";
-      asd = "glisph-test";
-    });
-    systems = [ "glisph-test" ];
-    lispLibs = [ (getAttr "cl-glut" pkgs) (getAttr "glisph" pkgs) (getAttr "prove" pkgs) (getAttr "prove-asdf" pkgs) ];
-  };
-  glkit = {
-    pname = "glkit";
-    version = "20201016-git";
-    asds = [ "glkit" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/glkit/2020-10-16/glkit-20201016-git.tgz";
-      sha256 = "1x3y5jcr1f0v9sgn3y5b7b8fhgd6vv37nz73016gdwh511idi8jn";
-      system = "glkit";
-      asd = "glkit";
-    });
-    systems = [ "glkit" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cl-opengl" pkgs) (getAttr "defpackage-plus" pkgs) (getAttr "mathkit" pkgs) (getAttr "static-vectors" pkgs) ];
-  };
-  glkit-examples = {
-    pname = "glkit-examples";
-    version = "20201016-git";
-    asds = [ "glkit-examples" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/glkit/2020-10-16/glkit-20201016-git.tgz";
-      sha256 = "1x3y5jcr1f0v9sgn3y5b7b8fhgd6vv37nz73016gdwh511idi8jn";
-      system = "glkit-examples";
-      asd = "glkit-examples";
-    });
-    systems = [ "glkit-examples" ];
-    lispLibs = [ (getAttr "glkit" pkgs) (getAttr "sdl2kit-examples" pkgs) ];
-  };
-  global-vars = {
-    pname = "global-vars";
-    version = "20141106-git";
-    asds = [ "global-vars" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/global-vars/2014-11-06/global-vars-20141106-git.tgz";
-      sha256 = "06m3xc8l3pgsapl8fvsi9wf6y46zs75cp9zn7zh6dc65v4s5wz3d";
-      system = "global-vars";
-      asd = "global-vars";
-    });
-    systems = [ "global-vars" ];
-    lispLibs = [  ];
-  };
-  global-vars-test = {
-    pname = "global-vars-test";
-    version = "20141106-git";
-    asds = [ "global-vars-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/global-vars/2014-11-06/global-vars-20141106-git.tgz";
-      sha256 = "06m3xc8l3pgsapl8fvsi9wf6y46zs75cp9zn7zh6dc65v4s5wz3d";
-      system = "global-vars-test";
-      asd = "global-vars-test";
-    });
-    systems = [ "global-vars-test" ];
-    lispLibs = [ (getAttr "global-vars" pkgs) ];
-  };
-  glop = {
-    pname = "glop";
-    version = "20171019-git";
-    asds = [ "glop" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/glop/2017-10-19/glop-20171019-git.tgz";
-      sha256 = "1nm35kvigflfjlmsa8zwdajc61f02fh4sq08jv0wnqylhx8yg2bv";
-      system = "glop";
-      asd = "glop";
-    });
-    systems = [ "glop" ];
-    lispLibs = [ (getAttr "cffi" pkgs) (getAttr "split-sequence" pkgs) (getAttr "trivial-garbage" pkgs) ];
-  };
-  glop-test = {
-    pname = "glop-test";
-    version = "20171019-git";
-    asds = [ "glop-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/glop/2017-10-19/glop-20171019-git.tgz";
-      sha256 = "1nm35kvigflfjlmsa8zwdajc61f02fh4sq08jv0wnqylhx8yg2bv";
-      system = "glop-test";
-      asd = "glop-test";
-    });
-    systems = [ "glop-test" ];
-    lispLibs = [ (getAttr "cl-glu" pkgs) (getAttr "cl-opengl" pkgs) (getAttr "glop" pkgs) ];
-  };
-  glsl-docs = {
-    pname = "glsl-docs";
-    version = "release-quicklisp-f04476f7-git";
-    asds = [ "glsl-docs" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/glsl-spec/2019-10-07/glsl-spec-release-quicklisp-f04476f7-git.tgz";
-      sha256 = "01ipspr22fgfj3w8wq2y81lzrjc4vpfiwnr3dqhjlpzzra46am8c";
-      system = "glsl-docs";
-      asd = "glsl-docs";
-    });
-    systems = [ "glsl-docs" ];
-    lispLibs = [ (getAttr "glsl-symbols" pkgs) ];
-  };
-  glsl-metadata = {
-    pname = "glsl-metadata";
-    version = "20220707-git";
-    asds = [ "glsl-metadata" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/glsl-metadata/2022-07-07/glsl-metadata-20220707-git.tgz";
-      sha256 = "1d60x2j889xfg83hwni745p9i3m7ikrgl7l2z17x7y753ky344p2";
-      system = "glsl-metadata";
-      asd = "glsl-metadata";
-    });
-    systems = [ "glsl-metadata" ];
-    lispLibs = [  ];
-  };
-  glsl-packing = {
-    pname = "glsl-packing";
-    version = "20180131-git";
-    asds = [ "glsl-packing" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/glsl-packing/2018-01-31/glsl-packing-20180131-git.tgz";
-      sha256 = "0k2f1771wd9kdrcasldy1r00k5bdgi9fd07in52zmjggc0i7dd80";
-      system = "glsl-packing";
-      asd = "glsl-packing";
-    });
-    systems = [ "glsl-packing" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) ];
-  };
-  glsl-spec = {
-    pname = "glsl-spec";
-    version = "release-quicklisp-f04476f7-git";
-    asds = [ "glsl-spec" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/glsl-spec/2019-10-07/glsl-spec-release-quicklisp-f04476f7-git.tgz";
-      sha256 = "01ipspr22fgfj3w8wq2y81lzrjc4vpfiwnr3dqhjlpzzra46am8c";
-      system = "glsl-spec";
-      asd = "glsl-spec";
-    });
-    systems = [ "glsl-spec" ];
-    lispLibs = [  ];
-  };
-  glsl-symbols = {
-    pname = "glsl-symbols";
-    version = "release-quicklisp-f04476f7-git";
-    asds = [ "glsl-symbols" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/glsl-spec/2019-10-07/glsl-spec-release-quicklisp-f04476f7-git.tgz";
-      sha256 = "01ipspr22fgfj3w8wq2y81lzrjc4vpfiwnr3dqhjlpzzra46am8c";
-      system = "glsl-symbols";
-      asd = "glsl-symbols";
-    });
-    systems = [ "glsl-symbols" ];
-    lispLibs = [  ];
-  };
-  glsl-toolkit = {
-    pname = "glsl-toolkit";
-    version = "20220707-git";
-    asds = [ "glsl-toolkit" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/glsl-toolkit/2022-07-07/glsl-toolkit-20220707-git.tgz";
-      sha256 = "0vrk8nqijqdi1rwf85rhd93yj7q8qkxnigxn3bw0cbrzvzrks9rl";
-      system = "glsl-toolkit";
-      asd = "glsl-toolkit";
-    });
-    systems = [ "glsl-toolkit" ];
-    lispLibs = [ (getAttr "cl-ppcre" pkgs) (getAttr "documentation-utils" pkgs) (getAttr "parse-float" pkgs) (getAttr "trivial-indent" pkgs) ];
-  };
-  glu-tessellate = {
-    pname = "glu-tessellate";
-    version = "20150608-git";
-    asds = [ "glu-tessellate" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/glu-tessellate/2015-06-08/glu-tessellate-20150608-git.tgz";
-      sha256 = "1iwnvk341pidxdsjb2c730k6a7nr1knd5ir0v83y6jhsf78r9krh";
-      system = "glu-tessellate";
-      asd = "glu-tessellate";
-    });
-    systems = [ "glu-tessellate" ];
-    lispLibs = [ (getAttr "cffi" pkgs) ];
-  };
-  glyphs = {
-    pname = "glyphs";
-    version = "20180711-git";
-    asds = [ "glyphs" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/glyphs/2018-07-11/glyphs-20180711-git.tgz";
-      sha256 = "17kai1anbkk5dj5sbrsin2fc019cmcbglb900db60v38myj0y0wf";
-      system = "glyphs";
-      asd = "glyphs";
-    });
-    systems = [ "glyphs" ];
-    lispLibs = [ (getAttr "cl-ppcre" pkgs) (getAttr "named-readtables" pkgs) (getAttr "parenscript" pkgs) ];
-  };
-  glyphs-test = {
-    pname = "glyphs-test";
-    version = "20180711-git";
-    asds = [ "glyphs-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/glyphs/2018-07-11/glyphs-20180711-git.tgz";
-      sha256 = "17kai1anbkk5dj5sbrsin2fc019cmcbglb900db60v38myj0y0wf";
-      system = "glyphs-test";
-      asd = "glyphs-test";
-    });
-    systems = [ "glyphs-test" ];
-    lispLibs = [ (getAttr "glyphs" pkgs) (getAttr "stefil" pkgs) ];
-  };
-  gooptest = {
-    pname = "gooptest";
-    version = "20200925-git";
-    asds = [ "gooptest" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/gooptest/2020-09-25/gooptest-20200925-git.tgz";
-      sha256 = "1g9q4frlc79xkmz74ybs954rc5kmfwjsn4xi64aig1fh5wjni5xs";
-      system = "gooptest";
-      asd = "gooptest";
-    });
-    systems = [ "gooptest" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "babel" pkgs) (getAttr "cffi" pkgs) (getAttr "cl-autowrap" pkgs) (getAttr "cl-plus-c" pkgs) (getAttr "uiop" pkgs) ];
-  };
-  gooptest_slash_examples = {
-    pname = "gooptest_examples";
-    version = "20200925-git";
-    asds = [ "gooptest" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/gooptest/2020-09-25/gooptest-20200925-git.tgz";
-      sha256 = "1g9q4frlc79xkmz74ybs954rc5kmfwjsn4xi64aig1fh5wjni5xs";
-      system = "gooptest";
-      asd = "gooptest";
-    });
-    systems = [ "gooptest/examples" ];
-    lispLibs = [ (getAttr "gooptest" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  graph = {
-    pname = "graph";
-    version = "20220331-git";
-    asds = [ "graph" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/graph/2022-03-31/graph-20220331-git.tgz";
-      sha256 = "0m76vb0mk7rlbv9xhnix001gxik9f7vy9lspradcvzbk1rfxyyf7";
-      system = "graph";
-      asd = "graph";
-    });
-    systems = [ "graph" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "asdf-package-system" pkgs) (getAttr "curry-compose-reader-macros" pkgs) (getAttr "damn-fast-priority-queue" pkgs) (getAttr "metabang-bind" pkgs) (getAttr "named-readtables" pkgs) ];
-  };
-  graphs = {
-    pname = "graphs";
-    version = "master-1a957fb2-git";
-    asds = [ "graphs" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/gendl/2022-07-07/gendl-master-1a957fb2-git.tgz";
-      sha256 = "0j47qnvvfx3vnh3pll6rkya5m142hi93bd5jk65rv43vbc94sv30";
-      system = "graphs";
-      asd = "graphs";
-    });
-    systems = [ "graphs" ];
-    lispLibs = [ (getAttr "gwl-graphics" pkgs) ];
-  };
-  gravatar = {
-    pname = "gravatar";
-    version = "20110320-git";
-    asds = [ "gravatar" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-gravatar/2011-03-20/cl-gravatar-20110320-git.tgz";
-      sha256 = "1r9fq1zaywlhpxr3s3wgajhxf1kgwsgsql0a7ccfgsbwkgy2qzfs";
-      system = "gravatar";
-      asd = "gravatar";
-    });
-    systems = [ "gravatar" ];
-    lispLibs = [ (getAttr "babel" pkgs) (getAttr "cl-json" pkgs) (getAttr "drakma" pkgs) (getAttr "md5" pkgs) (getAttr "puri" pkgs) ];
-  };
-  graylex = {
-    pname = "graylex";
-    version = "20110522-git";
-    asds = [ "graylex" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/graylex/2011-05-22/graylex-20110522-git.tgz";
-      sha256 = "0s1mpz6cpx3fywznxc8kzkhbb4fpmzyjpfgc85lnxqmri8wy6xqy";
-      system = "graylex";
-      asd = "graylex";
-    });
-    systems = [ "graylex" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cl-ppcre" pkgs) (getAttr "trivial-gray-streams" pkgs) ];
-  };
-  graylex-m4-example = {
-    pname = "graylex-m4-example";
-    version = "20110522-git";
-    asds = [ "graylex-m4-example" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/graylex/2011-05-22/graylex-20110522-git.tgz";
-      sha256 = "0s1mpz6cpx3fywznxc8kzkhbb4fpmzyjpfgc85lnxqmri8wy6xqy";
-      system = "graylex-m4-example";
-      asd = "graylex-m4-example";
-    });
-    systems = [ "graylex-m4-example" ];
-    lispLibs = [ (getAttr "cl-heredoc" pkgs) (getAttr "graylex" pkgs) ];
-  };
-  graylog = {
-    pname = "graylog";
-    version = "20180430-git";
-    asds = [ "graylog" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-graylog/2018-04-30/cl-graylog-20180430-git.tgz";
-      sha256 = "1bj1v6vwz8w78h0bkjv5614gq50jdpjix88rbn3nvh81cfjvsqdg";
-      system = "graylog";
-      asd = "graylog";
-    });
-    systems = [ "graylog" ];
-    lispLibs = [ (getAttr "babel" pkgs) (getAttr "cl-json" pkgs) (getAttr "local-time" pkgs) (getAttr "salza2" pkgs) (getAttr "trivial-backtrace" pkgs) (getAttr "usocket" pkgs) ];
-  };
-  graylog-log5 = {
-    pname = "graylog-log5";
-    version = "20180430-git";
-    asds = [ "graylog-log5" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-graylog/2018-04-30/cl-graylog-20180430-git.tgz";
-      sha256 = "1bj1v6vwz8w78h0bkjv5614gq50jdpjix88rbn3nvh81cfjvsqdg";
-      system = "graylog-log5";
-      asd = "graylog-log5";
-    });
-    systems = [ "graylog-log5" ];
-    lispLibs = [ (getAttr "graylog" pkgs) (getAttr "log5" pkgs) ];
-  };
-  green-threads = {
-    pname = "green-threads";
-    version = "20141217-git";
-    asds = [ "green-threads" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/green-threads/2014-12-17/green-threads-20141217-git.tgz";
-      sha256 = "1czw7nr0dwfps76h8hjvglk1wdh53yqbfbvv30whwbgqx33iippz";
-      system = "green-threads";
-      asd = "green-threads";
-    });
-    systems = [ "green-threads" ];
-    lispLibs = [ (getAttr "cl-async-future" pkgs) (getAttr "cl-cont" pkgs) ];
-  };
-  grid-formation = {
-    pname = "grid-formation";
-    version = "20220707-git";
-    asds = [ "grid-formation" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/grid-formation/2022-07-07/grid-formation-20220707-git.tgz";
-      sha256 = "0s5picmkn7gn98k23axadbc0mlzlrbadi1ln85gpqp17k3cmd54m";
-      system = "grid-formation";
-      asd = "grid-formation";
-    });
-    systems = [ "grid-formation" ];
-    lispLibs = [ (getAttr "mfiano-utils" pkgs) (getAttr "origin" pkgs) ];
-  };
-  group-by = {
-    pname = "group-by";
-    version = "20140211-git";
-    asds = [ "group-by" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/group-by/2014-02-11/group-by-20140211-git.tgz";
-      sha256 = "1p1qprb57fjd6sj8ws6c7y40ab38mym65wni8xivdy89i3d63dz4";
-      system = "group-by";
-      asd = "group-by";
-    });
-    systems = [ "group-by" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "iterate" pkgs) ];
-  };
-  group-by-test = {
-    pname = "group-by-test";
-    version = "20140211-git";
-    asds = [ "group-by-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/group-by/2014-02-11/group-by-20140211-git.tgz";
-      sha256 = "1p1qprb57fjd6sj8ws6c7y40ab38mym65wni8xivdy89i3d63dz4";
-      system = "group-by-test";
-      asd = "group-by";
-    });
-    systems = [ "group-by-test" ];
-    lispLibs = [ (getAttr "group-by" pkgs) (getAttr "lisp-unit2" pkgs) ];
-  };
-  groupby = {
-    pname = "groupby";
-    version = "20170830-git";
-    asds = [ "groupby" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-groupby/2017-08-30/cl-groupby-20170830-git.tgz";
-      sha256 = "1ra4zi9ifrhxxsj4svg1iqqzzsv9aqqa76pswygp7g084x6kn5km";
-      system = "groupby";
-      asd = "groupby";
-    });
-    systems = [ "groupby" ];
-    lispLibs = [  ];
-  };
-  grovel-locally = {
-    pname = "grovel-locally";
-    version = "20180228-git";
-    asds = [ "grovel-locally" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/grovel-locally/2018-02-28/grovel-locally-20180228-git.tgz";
-      sha256 = "07q7zjgv3d1f35zwxpzcz020z0gcqi6m2l2szw99bsqk5hn93szl";
-      system = "grovel-locally";
-      asd = "grovel-locally";
-    });
-    systems = [ "grovel-locally" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cffi" pkgs) (getAttr "cffi-grovel" pkgs) (getAttr "cl-ppcre" pkgs) (getAttr "with-cached-reader-conditionals" pkgs) ];
-  };
-  gsll = {
-    pname = "gsll";
-    version = "quicklisp-eeeda841-git";
-    asds = [ "gsll" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/gsll/2018-08-31/gsll-quicklisp-eeeda841-git.tgz";
-      sha256 = "0zsjvi1f62hjgfjk4wqg13d4r53bli9nglkwnd31qrygn8pmzlhi";
-      system = "gsll";
-      asd = "gsll";
-    });
-    systems = [ "gsll" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "foreign-array" pkgs) (getAttr "cffi-grovel" pkgs) (getAttr "cffi-libffi" pkgs) (getAttr "lisp-unit" pkgs) (getAttr "metabang-bind" pkgs) (getAttr "trivial-features" pkgs) (getAttr "trivial-garbage" pkgs) ];
-  };
-  gt = {
-    pname = "gt";
-    version = "20221106-git";
-    asds = [ "gt" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-utils/2022-11-06/cl-utils-20221106-git.tgz";
-      sha256 = "1znzwnapsjl3fijwyrp7gd8q2wbdgvqyx3fad5sqawkgz4qnlq1n";
-      system = "gt";
-      asd = "gt";
-    });
-    systems = [ "gt" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "asdf-package-system" pkgs) (getAttr "bordeaux-threads" pkgs) (getAttr "cl-ppcre" pkgs) (getAttr "closer-mop" pkgs) (getAttr "curry-compose-reader-macros" pkgs) (getAttr "fset" pkgs) (getAttr "functional-trees" pkgs) (getAttr "iterate" pkgs) (getAttr "misc-extensions" pkgs) (getAttr "named-readtables" pkgs) (getAttr "serapeum" pkgs) (getAttr "split-sequence" pkgs) (getAttr "trivia" pkgs) (getAttr "trivia_dot_ppcre" pkgs) ];
-  };
-  gtirb = {
-    pname = "gtirb";
-    version = "quicklisp-dd18337d-git";
-    asds = [ "gtirb" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/gtirb/2021-10-20/gtirb-quicklisp-dd18337d-git.tgz";
-      sha256 = "0dpchsshnlh3jb9rg1zdf63mr5l33vhjdxgxx2vqg0nh1sh41zn1";
-      system = "gtirb";
-      asd = "gtirb";
-    });
-    systems = [ "gtirb" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "asdf-package-system" pkgs) (getAttr "cl-intbytes" pkgs) (getAttr "cl-interval" pkgs) (getAttr "curry-compose-reader-macros" pkgs) (getAttr "graph" pkgs) (getAttr "proto" pkgs) (getAttr "named-readtables" pkgs) (getAttr "protobuf" pkgs) (getAttr "trivia" pkgs) (getAttr "trivial-package-local-nicknames" pkgs) (getAttr "trivial-utf-8" pkgs) ];
-  };
-  gtirb-capstone = {
-    pname = "gtirb-capstone";
-    version = "20221106-git";
-    asds = [ "gtirb-capstone" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/gtirb-capstone/2022-11-06/gtirb-capstone-20221106-git.tgz";
-      sha256 = "15h1x74f7w1b4634cab958vanqx4z3lgpi5fvmcpjdp945iv2ybc";
-      system = "gtirb-capstone";
-      asd = "gtirb-capstone";
-    });
-    systems = [ "gtirb-capstone" ];
-    lispLibs = [ (getAttr "asdf-package-system" pkgs) (getAttr "capstone" pkgs) (getAttr "gt" pkgs) (getAttr "graph" pkgs) (getAttr "gtirb" pkgs) (getAttr "keystone" pkgs) (getAttr "stefil" pkgs) ];
-  };
-  gtirb-functions = {
-    pname = "gtirb-functions";
-    version = "20221106-git";
-    asds = [ "gtirb-functions" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/gtirb-functions/2022-11-06/gtirb-functions-20221106-git.tgz";
-      sha256 = "1wf4i4c687krh3b1p14y3v6k8356b0m7a4dng7309vbs2kagw5ri";
-      system = "gtirb-functions";
-      asd = "gtirb-functions";
-    });
-    systems = [ "gtirb-functions" ];
-    lispLibs = [ (getAttr "asdf-package-system" pkgs) (getAttr "gt" pkgs) (getAttr "graph" pkgs) (getAttr "gtirb" pkgs) (getAttr "stefil" pkgs) ];
-  };
-  gtirb_slash_run-dot = {
-    pname = "gtirb_run-dot";
-    version = "quicklisp-dd18337d-git";
-    asds = [ "gtirb" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/gtirb/2021-10-20/gtirb-quicklisp-dd18337d-git.tgz";
-      sha256 = "0dpchsshnlh3jb9rg1zdf63mr5l33vhjdxgxx2vqg0nh1sh41zn1";
-      system = "gtirb";
-      asd = "gtirb";
-    });
-    systems = [ "gtirb/run-dot" ];
-    lispLibs = [  ];
-    meta = {
-      broken = true;
-    };
-  };
-  gtirb_slash_run-update = {
-    pname = "gtirb_run-update";
-    version = "quicklisp-dd18337d-git";
-    asds = [ "gtirb" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/gtirb/2021-10-20/gtirb-quicklisp-dd18337d-git.tgz";
-      sha256 = "0dpchsshnlh3jb9rg1zdf63mr5l33vhjdxgxx2vqg0nh1sh41zn1";
-      system = "gtirb";
-      asd = "gtirb";
-    });
-    systems = [ "gtirb/run-update" ];
-    lispLibs = [  ];
-    meta = {
-      broken = true;
-    };
-  };
-  gtk-tagged-streams = {
-    pname = "gtk-tagged-streams";
-    version = "quicklisp-d1c2b827-git";
-    asds = [ "gtk-tagged-streams" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/gtk-tagged-streams/2018-02-28/gtk-tagged-streams-quicklisp-d1c2b827-git.tgz";
-      sha256 = "0ciw4ydcb8clsqb338hxpzncj2m59i6scnqlgbwkznm5i9dxvkyd";
-      system = "gtk-tagged-streams";
-      asd = "gtk-tagged-streams";
-    });
-    systems = [ "gtk-tagged-streams" ];
-    lispLibs = [ (getAttr "bordeaux-threads" pkgs) (getAttr "cl-cffi-gtk" pkgs) (getAttr "trivial-gray-streams" pkgs) ];
-  };
-  gtwiwtg = {
-    pname = "gtwiwtg";
-    version = "20221106-git";
-    asds = [ "gtwiwtg" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/gtwiwtg/2022-11-06/gtwiwtg-20221106-git.tgz";
-      sha256 = "07wzaizp9jr6x8yvivk3iak2q7yh1ps0mj5mrd6i7y2f614gl8ll";
-      system = "gtwiwtg";
-      asd = "gtwiwtg";
-    });
-    systems = [ "gtwiwtg" ];
-    lispLibs = [ (getAttr "testiere" pkgs) ];
-  };
-  gtwiwtg-test = {
-    pname = "gtwiwtg-test";
-    version = "20221106-git";
-    asds = [ "gtwiwtg-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/gtwiwtg/2022-11-06/gtwiwtg-20221106-git.tgz";
-      sha256 = "07wzaizp9jr6x8yvivk3iak2q7yh1ps0mj5mrd6i7y2f614gl8ll";
-      system = "gtwiwtg-test";
-      asd = "gtwiwtg-test";
-    });
-    systems = [ "gtwiwtg-test" ];
-    lispLibs = [ (getAttr "gtwiwtg" pkgs) ];
-  };
-  gtype = {
-    pname = "gtype";
-    version = "20200610-git";
-    asds = [ "gtype" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/gtype/2020-06-10/gtype-20200610-git.tgz";
-      sha256 = "0hbkfdw00v7bsa6zbric34p5w6hfwxycccg8wc2faq0cxhsvpv9h";
-      system = "gtype";
-      asd = "gtype";
-    });
-    systems = [ "gtype" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "iterate" pkgs) (getAttr "trivia" pkgs) (getAttr "trivial-cltl2" pkgs) (getAttr "trivialib_dot_type-unify" pkgs) (getAttr "type-r" pkgs) ];
-  };
-  gtype_dot_test = {
-    pname = "gtype.test";
-    version = "20200610-git";
-    asds = [ "gtype.test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/gtype/2020-06-10/gtype-20200610-git.tgz";
-      sha256 = "0hbkfdw00v7bsa6zbric34p5w6hfwxycccg8wc2faq0cxhsvpv9h";
-      system = "gtype.test";
-      asd = "gtype.test";
-    });
-    systems = [ "gtype.test" ];
-    lispLibs = [ (getAttr "fiveam" pkgs) (getAttr "gtype" pkgs) ];
-  };
-  gute = {
-    pname = "gute";
-    version = "20221106-git";
-    asds = [ "gute" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/gute/2022-11-06/gute-20221106-git.tgz";
-      sha256 = "1d1m4qaygvmkglwdqlnhkvwq0wrig13h97w8ansfkyig359vpzy0";
-      system = "gute";
-      asd = "gute";
-    });
-    systems = [ "gute" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "bordeaux-threads" pkgs) (getAttr "cl-mathstats" pkgs) (getAttr "cl-ppcre" pkgs) (getAttr "cl-strings" pkgs) (getAttr "conium" pkgs) ];
-  };
-  gute_slash_tests = {
-    pname = "gute_tests";
-    version = "20221106-git";
-    asds = [ "gute" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/gute/2022-11-06/gute-20221106-git.tgz";
-      sha256 = "1d1m4qaygvmkglwdqlnhkvwq0wrig13h97w8ansfkyig359vpzy0";
-      system = "gute";
-      asd = "gute";
-    });
-    systems = [ "gute/tests" ];
-    lispLibs = [ (getAttr "gute" pkgs) (getAttr "lisp-unit" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  gwl = {
-    pname = "gwl";
-    version = "master-1a957fb2-git";
-    asds = [ "gwl" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/gendl/2022-07-07/gendl-master-1a957fb2-git.tgz";
-      sha256 = "0j47qnvvfx3vnh3pll6rkya5m142hi93bd5jk65rv43vbc94sv30";
-      system = "gwl";
-      asd = "gwl";
-    });
-    systems = [ "gwl" ];
-    lispLibs = [ (getAttr "zaserve" pkgs) (getAttr "cl-html-parse" pkgs) (getAttr "cl-markdown" pkgs) (getAttr "cl-who" pkgs) (getAttr "glisp" pkgs) (getAttr "yason" pkgs) ];
-  };
-  gwl-graphics = {
-    pname = "gwl-graphics";
-    version = "master-1a957fb2-git";
-    asds = [ "gwl-graphics" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/gendl/2022-07-07/gendl-master-1a957fb2-git.tgz";
-      sha256 = "0j47qnvvfx3vnh3pll6rkya5m142hi93bd5jk65rv43vbc94sv30";
-      system = "gwl-graphics";
-      asd = "gwl-graphics";
-    });
-    systems = [ "gwl-graphics" ];
-    lispLibs = [ (getAttr "geom-base" pkgs) (getAttr "gwl" pkgs) ];
-  };
-  gzip-stream = {
-    pname = "gzip-stream";
-    version = "0.2.8";
-    asds = [ "gzip-stream" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/gzip-stream/2010-10-06/gzip-stream_0.2.8.tgz";
-      sha256 = "1m2x685mk9zp8vq45r4gf6mlbzmzr79mvdxibw1fqzv7r1bqrwrs";
-      system = "gzip-stream";
-      asd = "gzip-stream";
-    });
-    systems = [ "gzip-stream" ];
-    lispLibs = [ (getAttr "flexi-streams" pkgs) (getAttr "salza2" pkgs) (getAttr "trivial-gray-streams" pkgs) ];
-  };
-  halftone = {
-    pname = "halftone";
-    version = "20190710-git";
-    asds = [ "halftone" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/halftone/2019-07-10/halftone-20190710-git.tgz";
-      sha256 = "0j0fn6c6y5z9cq662cvyzc6pyxj228gb1k67gmpnpq5cy1bdbnxa";
-      system = "halftone";
-      asd = "halftone";
-    });
-    systems = [ "halftone" ];
-    lispLibs = [ (getAttr "bordeaux-threads" pkgs) (getAttr "qtcore" pkgs) (getAttr "qtgui" pkgs) (getAttr "qtopengl" pkgs) (getAttr "qtools" pkgs) (getAttr "simple-tasks" pkgs) (getAttr "uiop" pkgs) (getAttr "verbose" pkgs) ];
-  };
-  hamcrest = {
-    pname = "hamcrest";
-    version = "20220220-git";
-    asds = [ "hamcrest" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-hamcrest/2022-02-20/cl-hamcrest-20220220-git.tgz";
-      sha256 = "1s49wh5cycswsnjd6vvyw72a7a112b2mm9z07jr17l5w4gad7ggh";
-      system = "hamcrest";
-      asd = "hamcrest";
-    });
-    systems = [ "hamcrest" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cl-ppcre" pkgs) (getAttr "iterate" pkgs) (getAttr "split-sequence" pkgs) ];
-  };
-  harmony = {
-    pname = "harmony";
-    version = "20221106-git";
-    asds = [ "harmony" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/harmony/2022-11-06/harmony-20221106-git.tgz";
-      sha256 = "1s8msnlscsa1138l1vrld9rwl1ib56caxkc4hr938wbihqg9gigs";
-      system = "harmony";
-      asd = "harmony";
-    });
-    systems = [ "harmony" ];
-    lispLibs = [ (getAttr "atomics" pkgs) (getAttr "bordeaux-threads" pkgs) (getAttr "cl-mixed" pkgs) (getAttr "cl-mixed-alsa" pkgs) (getAttr "cl-mixed-pulse" pkgs) (getAttr "stealth-mixin" pkgs) (getAttr "trivial-features" pkgs) ];
-  };
-  hash-set = {
-    pname = "hash-set";
-    version = "20211230-git";
-    asds = [ "hash-set" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/hash-set/2021-12-30/hash-set-20211230-git.tgz";
-      sha256 = "0a966y9yfarhmki4wwzg371ziaygnp13yc6r13w9zz327fkhz8na";
-      system = "hash-set";
-      asd = "hash-set";
-    });
-    systems = [ "hash-set" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) ];
-  };
-  hash-set-tests = {
-    pname = "hash-set-tests";
-    version = "20211230-git";
-    asds = [ "hash-set-tests" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/hash-set/2021-12-30/hash-set-20211230-git.tgz";
-      sha256 = "0a966y9yfarhmki4wwzg371ziaygnp13yc6r13w9zz327fkhz8na";
-      system = "hash-set-tests";
-      asd = "hash-set-tests";
-    });
-    systems = [ "hash-set-tests" ];
-    lispLibs = [ (getAttr "fiveam" pkgs) (getAttr "hash-set" pkgs) ];
-  };
-  hash-table-ext = {
-    pname = "hash-table-ext";
-    version = "20211020-git";
-    asds = [ "hash-table-ext" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/hash-table-ext/2021-10-20/hash-table-ext-20211020-git.tgz";
-      sha256 = "00pafnjy5w9yhbzzdvgg4wwb8yicjjshgzxnn0by3d9qknxc7539";
-      system = "hash-table-ext";
-      asd = "hash-table-ext";
-    });
-    systems = [ "hash-table-ext" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "jingoh_dot_documentizer" pkgs) ];
-  };
-  hash-table-ext_dot_test = {
-    pname = "hash-table-ext.test";
-    version = "20211020-git";
-    asds = [ "hash-table-ext.test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/hash-table-ext/2021-10-20/hash-table-ext-20211020-git.tgz";
-      sha256 = "00pafnjy5w9yhbzzdvgg4wwb8yicjjshgzxnn0by3d9qknxc7539";
-      system = "hash-table-ext.test";
-      asd = "hash-table-ext.test";
-    });
-    systems = [ "hash-table-ext.test" ];
-    lispLibs = [ (getAttr "hash-table-ext" pkgs) (getAttr "jingoh" pkgs) ];
-  };
-  hashtrie = {
-    pname = "hashtrie";
-    version = "20211020-git";
-    asds = [ "hashtrie" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/hashtrie/2021-10-20/hashtrie-20211020-git.tgz";
-      sha256 = "04crw4nlp7s2ljjmaqzy74xjzi0l8dn2yp8pdlaniklyq6y6n43j";
-      system = "hashtrie";
-      asd = "hashtrie";
-    });
-    systems = [ "hashtrie" ];
-    lispLibs = [  ];
-  };
-  hashtrie-tests = {
-    pname = "hashtrie-tests";
-    version = "20211020-git";
-    asds = [ "hashtrie-tests" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/hashtrie/2021-10-20/hashtrie-20211020-git.tgz";
-      sha256 = "04crw4nlp7s2ljjmaqzy74xjzi0l8dn2yp8pdlaniklyq6y6n43j";
-      system = "hashtrie-tests";
-      asd = "hashtrie-tests";
-    });
-    systems = [ "hashtrie-tests" ];
-    lispLibs = [ (getAttr "fiveam" pkgs) (getAttr "hashtrie" pkgs) ];
-  };
-  hdf5-cffi = {
-    pname = "hdf5-cffi";
-    version = "20180228-git";
-    asds = [ "hdf5-cffi" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/hdf5-cffi/2018-02-28/hdf5-cffi-20180228-git.tgz";
-      sha256 = "0vda3075423xz83qky998lpac5b04dwfv7bwgh9jq8cs5v0zrxjf";
-      system = "hdf5-cffi";
-      asd = "hdf5-cffi";
-    });
-    systems = [ "hdf5-cffi" ];
-    lispLibs = [ (getAttr "cffi" pkgs) (getAttr "cffi-grovel" pkgs) ];
-  };
-  hdf5-cffi_dot_examples = {
-    pname = "hdf5-cffi.examples";
-    version = "20180228-git";
-    asds = [ "hdf5-cffi.examples" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/hdf5-cffi/2018-02-28/hdf5-cffi-20180228-git.tgz";
-      sha256 = "0vda3075423xz83qky998lpac5b04dwfv7bwgh9jq8cs5v0zrxjf";
-      system = "hdf5-cffi.examples";
-      asd = "hdf5-cffi.examples";
-    });
-    systems = [ "hdf5-cffi.examples" ];
-    lispLibs = [ (getAttr "hdf5-cffi" pkgs) ];
-  };
-  hdf5-cffi_dot_test = {
-    pname = "hdf5-cffi.test";
-    version = "20180228-git";
-    asds = [ "hdf5-cffi.test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/hdf5-cffi/2018-02-28/hdf5-cffi-20180228-git.tgz";
-      sha256 = "0vda3075423xz83qky998lpac5b04dwfv7bwgh9jq8cs5v0zrxjf";
-      system = "hdf5-cffi.test";
-      asd = "hdf5-cffi.test";
-    });
-    systems = [ "hdf5-cffi.test" ];
-    lispLibs = [ (getAttr "cffi" pkgs) (getAttr "cffi-grovel" pkgs) (getAttr "fiveam" pkgs) (getAttr "hdf5-cffi" pkgs) (getAttr "hdf5-cffi_dot_examples" pkgs) ];
-  };
-  heap = {
-    pname = "heap";
-    version = "20181018-git";
-    asds = [ "heap" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/heap/2018-10-18/heap-20181018-git.tgz";
-      sha256 = "0jkgazjnjip7y41zd8rpy89ymh75yimk1q24qbddcisq5rzdl52k";
-      system = "heap";
-      asd = "heap";
-    });
-    systems = [ "heap" ];
-    lispLibs = [  ];
-  };
-  helambdap = {
-    pname = "helambdap";
-    version = "20220220-git";
-    asds = [ "helambdap" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/helambdap/2022-02-20/helambdap-20220220-git.tgz";
-      sha256 = "1c195x0i99ay666w3nhjqknq95aybavbgws66f6zimza3dp5q4iq";
-      system = "helambdap";
-      asd = "helambdap";
-    });
-    systems = [ "helambdap" ];
-    lispLibs = [ (getAttr "cl-fad" pkgs) (getAttr "clad" pkgs) (getAttr "split-sequence" pkgs) (getAttr "xhtmlambda" pkgs) ];
-  };
-  hello-builder = {
-    pname = "hello-builder";
-    version = "20221106-git";
-    asds = [ "hello-builder" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/clog/2022-11-06/clog-20221106-git.tgz";
-      sha256 = "135mj69shjayml9xfwg3sccfw5r901lzmf5vj5crnp9wywjfzywx";
-      system = "hello-builder";
-      asd = "hello-builder";
-    });
-    systems = [ "hello-builder" ];
-    lispLibs = [ (getAttr "clog" pkgs) ];
-  };
-  hello-clog = {
-    pname = "hello-clog";
-    version = "20221106-git";
-    asds = [ "hello-clog" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/clog/2022-11-06/clog-20221106-git.tgz";
-      sha256 = "135mj69shjayml9xfwg3sccfw5r901lzmf5vj5crnp9wywjfzywx";
-      system = "hello-clog";
-      asd = "hello-clog";
-    });
-    systems = [ "hello-clog" ];
-    lispLibs = [ (getAttr "clog" pkgs) ];
-  };
-  hermetic = {
-    pname = "hermetic";
-    version = "20191007-git";
-    asds = [ "hermetic" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/hermetic/2019-10-07/hermetic-20191007-git.tgz";
-      sha256 = "1sndxkkj45sqr13xw9kvnhj25an96q4la70ni3w468yrcbf782pi";
-      system = "hermetic";
-      asd = "hermetic";
-    });
-    systems = [ "hermetic" ];
-    lispLibs = [ (getAttr "cl-pass" pkgs) (getAttr "clack" pkgs) ];
-  };
-  herodotus = {
-    pname = "herodotus";
-    version = "20220331-git";
-    asds = [ "herodotus" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/herodotus/2022-03-31/herodotus-20220331-git.tgz";
-      sha256 = "085r6b8fydac2a939r80vlavs1ij5ij5li5xnl5q8qvn9dl4rr5k";
-      system = "herodotus";
-      asd = "herodotus";
-    });
-    systems = [ "herodotus" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cl-ppcre" pkgs) (getAttr "yason" pkgs) ];
-  };
-  herodotus_slash_tests = {
-    pname = "herodotus_tests";
-    version = "20220331-git";
-    asds = [ "herodotus" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/herodotus/2022-03-31/herodotus-20220331-git.tgz";
-      sha256 = "085r6b8fydac2a939r80vlavs1ij5ij5li5xnl5q8qvn9dl4rr5k";
-      system = "herodotus";
-      asd = "herodotus";
-    });
-    systems = [ "herodotus/tests" ];
-    lispLibs = [ (getAttr "herodotus" pkgs) (getAttr "rove" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  hh-aws = {
-    pname = "hh-aws";
-    version = "20150804-git";
-    asds = [ "hh-aws" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/hh-aws/2015-08-04/hh-aws-20150804-git.tgz";
-      sha256 = "02kfq7krn8788iphzcxnf0da88sy30gxpj1acgy9fl2n8qc03qdp";
-      system = "hh-aws";
-      asd = "hh-aws";
-    });
-    systems = [ "hh-aws" ];
-    lispLibs = [ (getAttr "cl-base64" pkgs) (getAttr "drakma" pkgs) (getAttr "ironclad" pkgs) (getAttr "puri" pkgs) (getAttr "s-xml" pkgs) ];
-  };
-  hh-aws-tests = {
-    pname = "hh-aws-tests";
-    version = "20150804-git";
-    asds = [ "hh-aws-tests" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/hh-aws/2015-08-04/hh-aws-20150804-git.tgz";
-      sha256 = "02kfq7krn8788iphzcxnf0da88sy30gxpj1acgy9fl2n8qc03qdp";
-      system = "hh-aws-tests";
-      asd = "hh-aws";
-    });
-    systems = [ "hh-aws-tests" ];
-    lispLibs = [ (getAttr "hh-aws" pkgs) (getAttr "lisp-unit" pkgs) (getAttr "uuid" pkgs) ];
-  };
-  hh-redblack = {
-    pname = "hh-redblack";
-    version = "20151031-git";
-    asds = [ "hh-redblack" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/hh-redblack/2015-10-31/hh-redblack-20151031-git.tgz";
-      sha256 = "1klr78m4g60c82dnxksb7710jjj35rnfl4gl3dx3nrx0nb04bam6";
-      system = "hh-redblack";
-      asd = "hh-redblack";
-    });
-    systems = [ "hh-redblack" ];
-    lispLibs = [  ];
-  };
-  hh-redblack-tests = {
-    pname = "hh-redblack-tests";
-    version = "20151031-git";
-    asds = [ "hh-redblack-tests" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/hh-redblack/2015-10-31/hh-redblack-20151031-git.tgz";
-      sha256 = "1klr78m4g60c82dnxksb7710jjj35rnfl4gl3dx3nrx0nb04bam6";
-      system = "hh-redblack-tests";
-      asd = "hh-redblack";
-    });
-    systems = [ "hh-redblack-tests" ];
-    lispLibs = [ (getAttr "hh-redblack" pkgs) (getAttr "lisp-unit" pkgs) ];
-  };
-  hh-web = {
-    pname = "hh-web";
-    version = "20141106-git";
-    asds = [ "hh-web" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/hh-web/2014-11-06/hh-web-20141106-git.tgz";
-      sha256 = "1i3jyifayczm9b7rvw3fafiisxvjq87xd9z0hdf957qc2albsq87";
-      system = "hh-web";
-      asd = "hh-web";
-    });
-    systems = [ "hh-web" ];
-    lispLibs = [ (getAttr "bordeaux-threads" pkgs) (getAttr "cl-base64" pkgs) (getAttr "cl-fad" pkgs) (getAttr "cl-ppcre" pkgs) (getAttr "drakma" pkgs) (getAttr "hunchentoot" pkgs) (getAttr "ironclad" pkgs) (getAttr "local-time" pkgs) (getAttr "log5" pkgs) (getAttr "parenscript" pkgs) (getAttr "trivial-backtrace" pkgs) (getAttr "uuid" pkgs) (getAttr "vecto" pkgs) ];
-  };
-  hl7-client = {
-    pname = "hl7-client";
-    version = "20150407-git";
-    asds = [ "hl7-client" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/hl7-client/2015-04-07/hl7-client-20150407-git.tgz";
-      sha256 = "0hq5ip6f1hbdiydml5f1z7qsjaq1v3a3g4y5a87jaif027pwhd89";
-      system = "hl7-client";
-      asd = "hl7-client";
-    });
-    systems = [ "hl7-client" ];
-    lispLibs = [ (getAttr "usocket" pkgs) ];
-  };
-  hl7-parser = {
-    pname = "hl7-parser";
-    version = "20160531-git";
-    asds = [ "hl7-parser" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/hl7-parser/2016-05-31/hl7-parser-20160531-git.tgz";
-      sha256 = "1lcyvk3vap73d23s6pk8p1ficqhl2gs84nan6d0yy0hx8c4gip0x";
-      system = "hl7-parser";
-      asd = "hl7-parser";
-    });
-    systems = [ "hl7-parser" ];
-    lispLibs = [  ];
-  };
-  hompack = {
-    pname = "hompack";
-    version = "20200925-git";
-    asds = [ "hompack" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/f2cl/2020-09-25/f2cl-20200925-git.tgz";
-      sha256 = "0kq1lrz0sg4kj64w0ysihnfwi65pami362fs2mvpyf1yhgxmq08y";
-      system = "hompack";
-      asd = "hompack";
-    });
-    systems = [ "hompack" ];
-    lispLibs = [ (getAttr "blas-hompack" pkgs) (getAttr "f2cl" pkgs) ];
-  };
-  hompack_slash_test-mainf = {
-    pname = "hompack_test-mainf";
-    version = "20200925-git";
-    asds = [ "hompack" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/f2cl/2020-09-25/f2cl-20200925-git.tgz";
-      sha256 = "0kq1lrz0sg4kj64w0ysihnfwi65pami362fs2mvpyf1yhgxmq08y";
-      system = "hompack";
-      asd = "hompack";
-    });
-    systems = [ "hompack/test-mainf" ];
-    lispLibs = [ (getAttr "hompack" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  hompack_slash_test-mainp = {
-    pname = "hompack_test-mainp";
-    version = "20200925-git";
-    asds = [ "hompack" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/f2cl/2020-09-25/f2cl-20200925-git.tgz";
-      sha256 = "0kq1lrz0sg4kj64w0ysihnfwi65pami362fs2mvpyf1yhgxmq08y";
-      system = "hompack";
-      asd = "hompack";
-    });
-    systems = [ "hompack/test-mainp" ];
-    lispLibs = [ (getAttr "hompack" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  hompack_slash_test-mains = {
-    pname = "hompack_test-mains";
-    version = "20200925-git";
-    asds = [ "hompack" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/f2cl/2020-09-25/f2cl-20200925-git.tgz";
-      sha256 = "0kq1lrz0sg4kj64w0ysihnfwi65pami362fs2mvpyf1yhgxmq08y";
-      system = "hompack";
-      asd = "hompack";
-    });
-    systems = [ "hompack/test-mains" ];
-    lispLibs = [ (getAttr "hompack" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  horner = {
-    pname = "horner";
-    version = "20191130-git";
-    asds = [ "horner" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/horner/2019-11-30/horner-20191130-git.tgz";
-      sha256 = "05afvf7sxn1db7xxw7qmys1dwbgsx53iw4w556r277da6bpyacr9";
-      system = "horner";
-      asd = "horner";
-    });
-    systems = [ "horner" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "infix-math" pkgs) (getAttr "serapeum" pkgs) ];
-  };
-  horse-html = {
-    pname = "horse-html";
-    version = "20191007-git";
-    asds = [ "horse-html" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/horse-html/2019-10-07/horse-html-20191007-git.tgz";
-      sha256 = "0g6cs38123ajf1hvv056df9d8gy5ajarg0f5gywzhmmf0rhr9br5";
-      system = "horse-html";
-      asd = "horse-html";
-    });
-    systems = [ "horse-html" ];
-    lispLibs = [ (getAttr "parenscript" pkgs) ];
-  };
-  horse-html_slash_tests = {
-    pname = "horse-html_tests";
-    version = "20191007-git";
-    asds = [ "horse-html" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/horse-html/2019-10-07/horse-html-20191007-git.tgz";
-      sha256 = "0g6cs38123ajf1hvv056df9d8gy5ajarg0f5gywzhmmf0rhr9br5";
-      system = "horse-html";
-      asd = "horse-html";
-    });
-    systems = [ "horse-html/tests" ];
-    lispLibs = [ (getAttr "fiveam" pkgs) (getAttr "horse-html" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  house = {
-    pname = "house";
-    version = "20210124-git";
-    asds = [ "house" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/house/2021-01-24/house-20210124-git.tgz";
-      sha256 = "1x3dprg5j5rhbf8r1nr6py6g8wgfb9zysbqbjdcyh91szg7w80mb";
-      system = "house";
-      asd = "house";
-    });
-    systems = [ "house" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "anaphora" pkgs) (getAttr "bordeaux-threads" pkgs) (getAttr "cl-fad" pkgs) (getAttr "cl-json" pkgs) (getAttr "cl-ppcre" pkgs) (getAttr "flexi-streams" pkgs) (getAttr "lisp-unit" pkgs) (getAttr "optima" pkgs) (getAttr "prove-asdf" pkgs) (getAttr "quri" pkgs) (getAttr "session-token" pkgs) (getAttr "split-sequence" pkgs) (getAttr "trivial-features" pkgs) (getAttr "usocket" pkgs) ];
-  };
-  house_slash_test = {
-    pname = "house_test";
-    version = "20210124-git";
-    asds = [ "house" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/house/2021-01-24/house-20210124-git.tgz";
-      sha256 = "1x3dprg5j5rhbf8r1nr6py6g8wgfb9zysbqbjdcyh91szg7w80mb";
-      system = "house";
-      asd = "house";
-    });
-    systems = [ "house/test" ];
-    lispLibs = [ (getAttr "house" pkgs) (getAttr "prove-asdf" pkgs) (getAttr "test-utils" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  ht-simple-ajax = {
-    pname = "ht-simple-ajax";
-    version = "20130421-git";
-    asds = [ "ht-simple-ajax" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/ht-simple-ajax/2013-04-21/ht-simple-ajax-20130421-git.tgz";
-      sha256 = "1l87c0arjzyrp3g6ay189fjkqmy81b7i35rfrcs9b269n7d4iis4";
-      system = "ht-simple-ajax";
-      asd = "ht-simple-ajax";
-    });
-    systems = [ "ht-simple-ajax" ];
-    lispLibs = [ (getAttr "hunchentoot" pkgs) ];
-  };
-  html-encode = {
-    pname = "html-encode";
-    version = "1.2";
-    asds = [ "html-encode" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/html-encode/2010-10-06/html-encode-1.2.tgz";
-      sha256 = "1ydgb5xnbj1qbvzn7x32dm38gpqg5h0pjxc31f8df3j8sar843db";
-      system = "html-encode";
-      asd = "html-encode";
-    });
-    systems = [ "html-encode" ];
-    lispLibs = [  ];
-  };
-  html-entities = {
-    pname = "html-entities";
-    version = "20171019-git";
-    asds = [ "html-entities" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/html-entities/2017-10-19/html-entities-20171019-git.tgz";
-      sha256 = "1b2yl6lf6vis17y4n5s505p7ica96bdafcl6vydy1hg50fy33nfr";
-      system = "html-entities";
-      asd = "html-entities";
-    });
-    systems = [ "html-entities" ];
-    lispLibs = [ (getAttr "cl-ppcre" pkgs) ];
-  };
-  html-entities-tests = {
-    pname = "html-entities-tests";
-    version = "20171019-git";
-    asds = [ "html-entities-tests" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/html-entities/2017-10-19/html-entities-20171019-git.tgz";
-      sha256 = "1b2yl6lf6vis17y4n5s505p7ica96bdafcl6vydy1hg50fy33nfr";
-      system = "html-entities-tests";
-      asd = "html-entities";
-    });
-    systems = [ "html-entities-tests" ];
-    lispLibs = [ (getAttr "fiveam" pkgs) (getAttr "html-entities" pkgs) ];
-  };
-  html-match = {
-    pname = "html-match";
-    version = "20140713-git";
-    asds = [ "html-match" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/bknr-web/2014-07-13/bknr-web-20140713-git.tgz";
-      sha256 = "1m73z0hv7qsc9yddrg8zs7n3zmn9h64v4d62239wrvfnmzqk75x2";
-      system = "html-match";
-      asd = "html-match";
-    });
-    systems = [ "html-match" ];
-    lispLibs = [ (getAttr "cl-ppcre" pkgs) (getAttr "unit-test" pkgs) ];
-  };
-  html-match_dot_test = {
-    pname = "html-match.test";
-    version = "20140713-git";
-    asds = [ "html-match.test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/bknr-web/2014-07-13/bknr-web-20140713-git.tgz";
-      sha256 = "1m73z0hv7qsc9yddrg8zs7n3zmn9h64v4d62239wrvfnmzqk75x2";
-      system = "html-match.test";
-      asd = "html-match";
-    });
-    systems = [ "html-match.test" ];
-    lispLibs = [ (getAttr "html-match" pkgs) (getAttr "unit-test" pkgs) ];
-  };
-  html-template = {
-    pname = "html-template";
-    version = "20171227-git";
-    asds = [ "html-template" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/html-template/2017-12-27/html-template-20171227-git.tgz";
-      sha256 = "0g700zlyjjba17nbmw1adspw7r9s0321xhayfiqh0drg20zixaf7";
-      system = "html-template";
-      asd = "html-template";
-    });
-    systems = [ "html-template" ];
-    lispLibs = [  ];
-  };
-  htmlgen = {
-    pname = "htmlgen";
-    version = "20190813-git";
-    asds = [ "htmlgen" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/portableaserve/2019-08-13/portableaserve-20190813-git.tgz";
-      sha256 = "0ak6mqp84sjr0a7h5svr16vra4bf4fcx6wpir0n88dc1vjwy5xqa";
-      system = "htmlgen";
-      asd = "htmlgen";
-    });
-    systems = [ "htmlgen" ];
-    lispLibs = [ (getAttr "acl-compat" pkgs) ];
-  };
-  http-body = {
-    pname = "http-body";
-    version = "20190813-git";
-    asds = [ "http-body" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/http-body/2019-08-13/http-body-20190813-git.tgz";
-      sha256 = "0kcg43l5674drzid9cj938q0ki5z25glx296rl239dm7yfmxlzz2";
-      system = "http-body";
-      asd = "http-body";
-    });
-    systems = [ "http-body" ];
-    lispLibs = [ (getAttr "babel" pkgs) (getAttr "cl-ppcre" pkgs) (getAttr "cl-utilities" pkgs) (getAttr "fast-http" pkgs) (getAttr "flexi-streams" pkgs) (getAttr "jonathan" pkgs) (getAttr "quri" pkgs) (getAttr "trivial-gray-streams" pkgs) ];
-  };
-  http-body-test = {
-    pname = "http-body-test";
-    version = "20190813-git";
-    asds = [ "http-body-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/http-body/2019-08-13/http-body-20190813-git.tgz";
-      sha256 = "0kcg43l5674drzid9cj938q0ki5z25glx296rl239dm7yfmxlzz2";
-      system = "http-body-test";
-      asd = "http-body-test";
-    });
-    systems = [ "http-body-test" ];
-    lispLibs = [ (getAttr "assoc-utils" pkgs) (getAttr "cl-ppcre" pkgs) (getAttr "flexi-streams" pkgs) (getAttr "http-body" pkgs) (getAttr "prove" pkgs) (getAttr "prove-asdf" pkgs) (getAttr "trivial-utf-8" pkgs) ];
-  };
-  http-get-cache = {
-    pname = "http-get-cache";
-    version = "20180228-git";
-    asds = [ "http-get-cache" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/http-get-cache/2018-02-28/http-get-cache-20180228-git.tgz";
-      sha256 = "03bw4zf4hlxyrqm5mq53z0qksb9jbrcc5nv90y7qry83kxic2cgv";
-      system = "http-get-cache";
-      asd = "http-get-cache";
-    });
-    systems = [ "http-get-cache" ];
-    lispLibs = [ (getAttr "drakma" pkgs) ];
-  };
-  http-parse = {
-    pname = "http-parse";
-    version = "20150608-git";
-    asds = [ "http-parse" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/http-parse/2015-06-08/http-parse-20150608-git.tgz";
-      sha256 = "1plycsx2kch2l143s56hvi5dqx51n5bvp7vazmphqj5skmnw4576";
-      system = "http-parse";
-      asd = "http-parse";
-    });
-    systems = [ "http-parse" ];
-    lispLibs = [ (getAttr "babel" pkgs) (getAttr "cl-ppcre" pkgs) ];
-  };
-  http-parse-test = {
-    pname = "http-parse-test";
-    version = "20150608-git";
-    asds = [ "http-parse-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/http-parse/2015-06-08/http-parse-20150608-git.tgz";
-      sha256 = "1plycsx2kch2l143s56hvi5dqx51n5bvp7vazmphqj5skmnw4576";
-      system = "http-parse-test";
-      asd = "http-parse-test";
-    });
-    systems = [ "http-parse-test" ];
-    lispLibs = [ (getAttr "babel" pkgs) (getAttr "eos" pkgs) (getAttr "http-parse" pkgs) ];
-  };
-  http2 = {
-    pname = "http2";
-    version = "20221106-git";
-    asds = [ "http2" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/http2/2022-11-06/http2-20221106-git.tgz";
-      sha256 = "0503pbp43slwhg3n9d3x16qbiqmwc1vvlgl2fkxv85nl4ygrkl4f";
-      system = "http2";
-      asd = "http2";
-    });
-    systems = [ "http2" ];
-    lispLibs = [ (getAttr "flexi-streams" pkgs) (getAttr "trivial-gray-streams" pkgs) ];
-  };
-  http2_slash_all = {
-    pname = "http2_all";
-    version = "20221106-git";
-    asds = [ "http2" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/http2/2022-11-06/http2-20221106-git.tgz";
-      sha256 = "0503pbp43slwhg3n9d3x16qbiqmwc1vvlgl2fkxv85nl4ygrkl4f";
-      system = "http2";
-      asd = "http2";
-    });
-    systems = [ "http2/all" ];
-    lispLibs = [ (getAttr "bordeaux-threads" pkgs) (getAttr "cl_plus_ssl" pkgs) (getAttr "cl-who" pkgs) (getAttr "fiasco" pkgs) (getAttr "gzip-stream" pkgs) (getAttr "http2" pkgs) (getAttr "parenscript" pkgs) (getAttr "puri" pkgs) (getAttr "trivial-gray-streams" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  http2_slash_client = {
-    pname = "http2_client";
-    version = "20221106-git";
-    asds = [ "http2" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/http2/2022-11-06/http2-20221106-git.tgz";
-      sha256 = "0503pbp43slwhg3n9d3x16qbiqmwc1vvlgl2fkxv85nl4ygrkl4f";
-      system = "http2";
-      asd = "http2";
-    });
-    systems = [ "http2/client" ];
-    lispLibs = [ (getAttr "cl_plus_ssl" pkgs) (getAttr "gzip-stream" pkgs) (getAttr "http2" pkgs) (getAttr "puri" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  http2_slash_server = {
-    pname = "http2_server";
-    version = "20221106-git";
-    asds = [ "http2" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/http2/2022-11-06/http2-20221106-git.tgz";
-      sha256 = "0503pbp43slwhg3n9d3x16qbiqmwc1vvlgl2fkxv85nl4ygrkl4f";
-      system = "http2";
-      asd = "http2";
-    });
-    systems = [ "http2/server" ];
-    lispLibs = [ (getAttr "bordeaux-threads" pkgs) (getAttr "cl_plus_ssl" pkgs) (getAttr "cl-who" pkgs) (getAttr "http2" pkgs) (getAttr "parenscript" pkgs) (getAttr "puri" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  http2_slash_test = {
-    pname = "http2_test";
-    version = "20221106-git";
-    asds = [ "http2" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/http2/2022-11-06/http2-20221106-git.tgz";
-      sha256 = "0503pbp43slwhg3n9d3x16qbiqmwc1vvlgl2fkxv85nl4ygrkl4f";
-      system = "http2";
-      asd = "http2";
-    });
-    systems = [ "http2/test" ];
-    lispLibs = [ (getAttr "bordeaux-threads" pkgs) (getAttr "cl_plus_ssl" pkgs) (getAttr "cl-who" pkgs) (getAttr "fiasco" pkgs) (getAttr "gzip-stream" pkgs) (getAttr "http2" pkgs) (getAttr "parenscript" pkgs) (getAttr "puri" pkgs) (getAttr "trivial-gray-streams" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  http2_slash_tls = {
-    pname = "http2_tls";
-    version = "20221106-git";
-    asds = [ "http2" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/http2/2022-11-06/http2-20221106-git.tgz";
-      sha256 = "0503pbp43slwhg3n9d3x16qbiqmwc1vvlgl2fkxv85nl4ygrkl4f";
-      system = "http2";
-      asd = "http2";
-    });
-    systems = [ "http2/tls" ];
-    lispLibs = [ (getAttr "bordeaux-threads" pkgs) (getAttr "cl_plus_ssl" pkgs) (getAttr "http2" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  hu_dot_dwim_dot_asdf = {
-    pname = "hu.dwim.asdf";
-    version = "stable-git";
-    asds = [ "hu.dwim.asdf" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/hu.dwim.asdf/2021-12-30/hu.dwim.asdf-stable-git.tgz";
-      sha256 = "0zfwdsvcywvwzkn0a80ghi5kn1hs4iwinvi17ld58gyskf15frx9";
-      system = "hu.dwim.asdf";
-      asd = "hu.dwim.asdf";
-    });
-    systems = [ "hu.dwim.asdf" ];
-    lispLibs = [ (getAttr "uiop" pkgs) ];
-  };
-  hu_dot_dwim_dot_asdf_dot_documentation = {
-    pname = "hu.dwim.asdf.documentation";
-    version = "stable-git";
-    asds = [ "hu.dwim.asdf.documentation" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/hu.dwim.asdf/2021-12-30/hu.dwim.asdf-stable-git.tgz";
-      sha256 = "0zfwdsvcywvwzkn0a80ghi5kn1hs4iwinvi17ld58gyskf15frx9";
-      system = "hu.dwim.asdf.documentation";
-      asd = "hu.dwim.asdf.documentation";
-    });
-    systems = [ "hu.dwim.asdf.documentation" ];
-    lispLibs = [ (getAttr "hu_dot_dwim_dot_asdf" pkgs) (getAttr "hu_dot_dwim_dot_presentation" pkgs) ];
-  };
-  hu_dot_dwim_dot_bluez = {
-    pname = "hu.dwim.bluez";
-    version = "stable-git";
-    asds = [ "hu.dwim.bluez" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/hu.dwim.bluez/2021-02-28/hu.dwim.bluez-stable-git.tgz";
-      sha256 = "0gjh3bgmdz4aabdavbd5m27r273hna47vs388r4m7l2xnd3b3j55";
-      system = "hu.dwim.bluez";
-      asd = "hu.dwim.bluez";
-    });
-    systems = [ "hu.dwim.bluez" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cffi" pkgs) (getAttr "cffi-libffi" pkgs) (getAttr "hu_dot_dwim_dot_asdf" pkgs) ];
-  };
-  hu_dot_dwim_dot_bluez_slash_fancy = {
-    pname = "hu.dwim.bluez_fancy";
-    version = "stable-git";
-    asds = [ "hu.dwim.bluez" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/hu.dwim.bluez/2021-02-28/hu.dwim.bluez-stable-git.tgz";
-      sha256 = "0gjh3bgmdz4aabdavbd5m27r273hna47vs388r4m7l2xnd3b3j55";
-      system = "hu.dwim.bluez";
-      asd = "hu.dwim.bluez";
-    });
-    systems = [ "hu.dwim.bluez/fancy" ];
-    lispLibs = [ (getAttr "hu_dot_dwim_dot_asdf" pkgs) (getAttr "hu_dot_dwim_dot_bluez" pkgs) (getAttr "hu_dot_dwim_dot_def_plus_hu_dot_dwim_dot_common" pkgs) (getAttr "hu_dot_dwim_dot_defclass-star_plus_hu_dot_dwim_dot_def" pkgs) (getAttr "hu_dot_dwim_dot_syntax-sugar" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  hu_dot_dwim_dot_common = {
-    pname = "hu.dwim.common";
-    version = "20150709-darcs";
-    asds = [ "hu.dwim.common" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/hu.dwim.common/2015-07-09/hu.dwim.common-20150709-darcs.tgz";
-      sha256 = "0mkhq6bqysdy09gswgxm1s50xrq7gimdyqiq84xk8vpyp2hv6hqq";
-      system = "hu.dwim.common";
-      asd = "hu.dwim.common";
-    });
-    systems = [ "hu.dwim.common" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "anaphora" pkgs) (getAttr "closer-mop" pkgs) (getAttr "hu_dot_dwim_dot_asdf" pkgs) (getAttr "hu_dot_dwim_dot_common-lisp" pkgs) (getAttr "iterate" pkgs) (getAttr "metabang-bind" pkgs) ];
-  };
-  hu_dot_dwim_dot_common-lisp = {
-    pname = "hu.dwim.common-lisp";
-    version = "stable-git";
-    asds = [ "hu.dwim.common-lisp" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/hu.dwim.common-lisp/2021-02-28/hu.dwim.common-lisp-stable-git.tgz";
-      sha256 = "06zkdw3scnaw0d4nmsgkv7pi7sw00dikdgfgsqmbqfbz2yrsdabk";
-      system = "hu.dwim.common-lisp";
-      asd = "hu.dwim.common-lisp";
-    });
-    systems = [ "hu.dwim.common-lisp" ];
-    lispLibs = [ (getAttr "hu_dot_dwim_dot_asdf" pkgs) ];
-  };
-  hu_dot_dwim_dot_common-lisp_dot_documentation = {
-    pname = "hu.dwim.common-lisp.documentation";
-    version = "stable-git";
-    asds = [ "hu.dwim.common-lisp.documentation" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/hu.dwim.common-lisp/2021-02-28/hu.dwim.common-lisp-stable-git.tgz";
-      sha256 = "06zkdw3scnaw0d4nmsgkv7pi7sw00dikdgfgsqmbqfbz2yrsdabk";
-      system = "hu.dwim.common-lisp.documentation";
-      asd = "hu.dwim.common-lisp.documentation";
-    });
-    systems = [ "hu.dwim.common-lisp.documentation" ];
-    lispLibs = [ (getAttr "hu_dot_dwim_dot_asdf" pkgs) (getAttr "hu_dot_dwim_dot_common-lisp" pkgs) (getAttr "hu_dot_dwim_dot_presentation" pkgs) ];
-  };
-  hu_dot_dwim_dot_common_dot_documentation = {
-    pname = "hu.dwim.common.documentation";
-    version = "20150709-darcs";
-    asds = [ "hu.dwim.common.documentation" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/hu.dwim.common/2015-07-09/hu.dwim.common-20150709-darcs.tgz";
-      sha256 = "0mkhq6bqysdy09gswgxm1s50xrq7gimdyqiq84xk8vpyp2hv6hqq";
-      system = "hu.dwim.common.documentation";
-      asd = "hu.dwim.common.documentation";
-    });
-    systems = [ "hu.dwim.common.documentation" ];
-    lispLibs = [ (getAttr "hu_dot_dwim_dot_asdf" pkgs) (getAttr "hu_dot_dwim_dot_common" pkgs) (getAttr "hu_dot_dwim_dot_presentation" pkgs) ];
-  };
-  hu_dot_dwim_dot_computed-class = {
-    pname = "hu.dwim.computed-class";
-    version = "20200427-darcs";
-    asds = [ "hu.dwim.computed-class" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/hu.dwim.computed-class/2020-04-27/hu.dwim.computed-class-20200427-darcs.tgz";
-      sha256 = "1frr37g79x08pm7vkpyhnmzbbcgzxvz3vldm8skknpi790vxbpr1";
-      system = "hu.dwim.computed-class";
-      asd = "hu.dwim.computed-class";
-    });
-    systems = [ "hu.dwim.computed-class" ];
-    lispLibs = [ (getAttr "hu_dot_dwim_dot_asdf" pkgs) (getAttr "hu_dot_dwim_dot_def_plus_hu_dot_dwim_dot_common" pkgs) (getAttr "hu_dot_dwim_dot_defclass-star_plus_hu_dot_dwim_dot_def" pkgs) (getAttr "hu_dot_dwim_dot_syntax-sugar" pkgs) (getAttr "hu_dot_dwim_dot_util" pkgs) ];
-  };
-  hu_dot_dwim_dot_computed-class_plus_hu_dot_dwim_dot_logger = {
-    pname = "hu.dwim.computed-class+hu.dwim.logger";
-    version = "20200427-darcs";
-    asds = [ "hu.dwim.computed-class+hu.dwim.logger" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/hu.dwim.computed-class/2020-04-27/hu.dwim.computed-class-20200427-darcs.tgz";
-      sha256 = "1frr37g79x08pm7vkpyhnmzbbcgzxvz3vldm8skknpi790vxbpr1";
-      system = "hu.dwim.computed-class+hu.dwim.logger";
-      asd = "hu.dwim.computed-class+hu.dwim.logger";
-    });
-    systems = [ "hu.dwim.computed-class+hu.dwim.logger" ];
-    lispLibs = [ (getAttr "hu_dot_dwim_dot_asdf" pkgs) (getAttr "hu_dot_dwim_dot_computed-class" pkgs) (getAttr "hu_dot_dwim_dot_logger" pkgs) ];
-  };
-  hu_dot_dwim_dot_computed-class_plus_swank = {
-    pname = "hu.dwim.computed-class+swank";
-    version = "20200427-darcs";
-    asds = [ "hu.dwim.computed-class+swank" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/hu.dwim.computed-class/2020-04-27/hu.dwim.computed-class-20200427-darcs.tgz";
-      sha256 = "1frr37g79x08pm7vkpyhnmzbbcgzxvz3vldm8skknpi790vxbpr1";
-      system = "hu.dwim.computed-class+swank";
-      asd = "hu.dwim.computed-class+swank";
-    });
-    systems = [ "hu.dwim.computed-class+swank" ];
-    lispLibs = [ (getAttr "hu_dot_dwim_dot_asdf" pkgs) (getAttr "hu_dot_dwim_dot_computed-class" pkgs) (getAttr "swank" pkgs) ];
-  };
-  hu_dot_dwim_dot_computed-class_dot_documentation = {
-    pname = "hu.dwim.computed-class.documentation";
-    version = "20200427-darcs";
-    asds = [ "hu.dwim.computed-class.documentation" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/hu.dwim.computed-class/2020-04-27/hu.dwim.computed-class-20200427-darcs.tgz";
-      sha256 = "1frr37g79x08pm7vkpyhnmzbbcgzxvz3vldm8skknpi790vxbpr1";
-      system = "hu.dwim.computed-class.documentation";
-      asd = "hu.dwim.computed-class.documentation";
-    });
-    systems = [ "hu.dwim.computed-class.documentation" ];
-    lispLibs = [ (getAttr "hu_dot_dwim_dot_asdf" pkgs) (getAttr "hu_dot_dwim_dot_computed-class_dot_test" pkgs) (getAttr "hu_dot_dwim_dot_presentation" pkgs) ];
-  };
-  hu_dot_dwim_dot_computed-class_dot_test = {
-    pname = "hu.dwim.computed-class.test";
-    version = "20200427-darcs";
-    asds = [ "hu.dwim.computed-class.test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/hu.dwim.computed-class/2020-04-27/hu.dwim.computed-class-20200427-darcs.tgz";
-      sha256 = "1frr37g79x08pm7vkpyhnmzbbcgzxvz3vldm8skknpi790vxbpr1";
-      system = "hu.dwim.computed-class.test";
-      asd = "hu.dwim.computed-class.test";
-    });
-    systems = [ "hu.dwim.computed-class.test" ];
-    lispLibs = [ (getAttr "hu_dot_dwim_dot_asdf" pkgs) (getAttr "hu_dot_dwim_dot_computed-class_plus_hu_dot_dwim_dot_logger" pkgs) (getAttr "hu_dot_dwim_dot_stefil_plus_hu_dot_dwim_dot_def" pkgs) ];
-  };
-  hu_dot_dwim_dot_debug = {
-    pname = "hu.dwim.debug";
-    version = "20190107-darcs";
-    asds = [ "hu.dwim.debug" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/hu.dwim.debug/2019-01-07/hu.dwim.debug-20190107-darcs.tgz";
-      sha256 = "0ad606bmrif82fyikb2hgwzh3y6nlrlsprb5yi86qwa2a2fvak4b";
-      system = "hu.dwim.debug";
-      asd = "hu.dwim.debug";
-    });
-    systems = [ "hu.dwim.debug" ];
-    lispLibs = [ (getAttr "hu_dot_dwim_dot_asdf" pkgs) (getAttr "hu_dot_dwim_dot_common" pkgs) (getAttr "hu_dot_dwim_dot_def_plus_swank" pkgs) (getAttr "hu_dot_dwim_dot_defclass-star" pkgs) (getAttr "hu_dot_dwim_dot_util" pkgs) (getAttr "hu_dot_dwim_dot_walker" pkgs) (getAttr "swank" pkgs) ];
-  };
-  hu_dot_dwim_dot_debug_dot_documentation = {
-    pname = "hu.dwim.debug.documentation";
-    version = "20190107-darcs";
-    asds = [ "hu.dwim.debug.documentation" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/hu.dwim.debug/2019-01-07/hu.dwim.debug-20190107-darcs.tgz";
-      sha256 = "0ad606bmrif82fyikb2hgwzh3y6nlrlsprb5yi86qwa2a2fvak4b";
-      system = "hu.dwim.debug.documentation";
-      asd = "hu.dwim.debug.documentation";
-    });
-    systems = [ "hu.dwim.debug.documentation" ];
-    lispLibs = [ (getAttr "hu_dot_dwim_dot_asdf" pkgs) (getAttr "hu_dot_dwim_dot_debug_dot_test" pkgs) (getAttr "hu_dot_dwim_dot_presentation" pkgs) ];
-  };
-  hu_dot_dwim_dot_debug_dot_test = {
-    pname = "hu.dwim.debug.test";
-    version = "20190107-darcs";
-    asds = [ "hu.dwim.debug.test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/hu.dwim.debug/2019-01-07/hu.dwim.debug-20190107-darcs.tgz";
-      sha256 = "0ad606bmrif82fyikb2hgwzh3y6nlrlsprb5yi86qwa2a2fvak4b";
-      system = "hu.dwim.debug.test";
-      asd = "hu.dwim.debug.test";
-    });
-    systems = [ "hu.dwim.debug.test" ];
-    lispLibs = [ (getAttr "hu_dot_dwim_dot_asdf" pkgs) (getAttr "hu_dot_dwim_dot_debug" pkgs) (getAttr "hu_dot_dwim_dot_stefil_plus_hu_dot_dwim_dot_def_plus_swank" pkgs) ];
-  };
-  hu_dot_dwim_dot_def = {
-    pname = "hu.dwim.def";
-    version = "stable-git";
-    asds = [ "hu.dwim.def" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/hu.dwim.def/2021-12-30/hu.dwim.def-stable-git.tgz";
-      sha256 = "1scjj9g2bn58l8i1g1brdqzrajy4bb63dqkwlcydcvk36iskpyab";
-      system = "hu.dwim.def";
-      asd = "hu.dwim.def";
-    });
-    systems = [ "hu.dwim.def" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "anaphora" pkgs) (getAttr "hu_dot_dwim_dot_asdf" pkgs) (getAttr "iterate" pkgs) (getAttr "metabang-bind" pkgs) ];
-  };
-  hu_dot_dwim_dot_def_plus_cl-l10n = {
-    pname = "hu.dwim.def+cl-l10n";
-    version = "stable-git";
-    asds = [ "hu.dwim.def+cl-l10n" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/hu.dwim.def/2021-12-30/hu.dwim.def-stable-git.tgz";
-      sha256 = "1scjj9g2bn58l8i1g1brdqzrajy4bb63dqkwlcydcvk36iskpyab";
-      system = "hu.dwim.def+cl-l10n";
-      asd = "hu.dwim.def+cl-l10n";
-    });
-    systems = [ "hu.dwim.def+cl-l10n" ];
-    lispLibs = [ (getAttr "cl-l10n" pkgs) (getAttr "hu_dot_dwim_dot_asdf" pkgs) (getAttr "hu_dot_dwim_dot_def" pkgs) ];
-  };
-  hu_dot_dwim_dot_def_plus_contextl = {
-    pname = "hu.dwim.def+contextl";
-    version = "stable-git";
-    asds = [ "hu.dwim.def+contextl" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/hu.dwim.def/2021-12-30/hu.dwim.def-stable-git.tgz";
-      sha256 = "1scjj9g2bn58l8i1g1brdqzrajy4bb63dqkwlcydcvk36iskpyab";
-      system = "hu.dwim.def+contextl";
-      asd = "hu.dwim.def+contextl";
-    });
-    systems = [ "hu.dwim.def+contextl" ];
-    lispLibs = [ (getAttr "contextl" pkgs) (getAttr "hu_dot_dwim_dot_asdf" pkgs) (getAttr "hu_dot_dwim_dot_def" pkgs) ];
-  };
-  hu_dot_dwim_dot_def_plus_hu_dot_dwim_dot_common = {
-    pname = "hu.dwim.def+hu.dwim.common";
-    version = "stable-git";
-    asds = [ "hu.dwim.def+hu.dwim.common" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/hu.dwim.def/2021-12-30/hu.dwim.def-stable-git.tgz";
-      sha256 = "1scjj9g2bn58l8i1g1brdqzrajy4bb63dqkwlcydcvk36iskpyab";
-      system = "hu.dwim.def+hu.dwim.common";
-      asd = "hu.dwim.def+hu.dwim.common";
-    });
-    systems = [ "hu.dwim.def+hu.dwim.common" ];
-    lispLibs = [ (getAttr "hu_dot_dwim_dot_asdf" pkgs) (getAttr "hu_dot_dwim_dot_common" pkgs) (getAttr "hu_dot_dwim_dot_def" pkgs) ];
-  };
-  hu_dot_dwim_dot_def_plus_hu_dot_dwim_dot_delico = {
-    pname = "hu.dwim.def+hu.dwim.delico";
-    version = "stable-git";
-    asds = [ "hu.dwim.def+hu.dwim.delico" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/hu.dwim.def/2021-12-30/hu.dwim.def-stable-git.tgz";
-      sha256 = "1scjj9g2bn58l8i1g1brdqzrajy4bb63dqkwlcydcvk36iskpyab";
-      system = "hu.dwim.def+hu.dwim.delico";
-      asd = "hu.dwim.def+hu.dwim.delico";
-    });
-    systems = [ "hu.dwim.def+hu.dwim.delico" ];
-    lispLibs = [ (getAttr "hu_dot_dwim_dot_asdf" pkgs) (getAttr "hu_dot_dwim_dot_def" pkgs) (getAttr "hu_dot_dwim_dot_delico" pkgs) ];
-  };
-  hu_dot_dwim_dot_def_plus_swank = {
-    pname = "hu.dwim.def+swank";
-    version = "stable-git";
-    asds = [ "hu.dwim.def+swank" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/hu.dwim.def/2021-12-30/hu.dwim.def-stable-git.tgz";
-      sha256 = "1scjj9g2bn58l8i1g1brdqzrajy4bb63dqkwlcydcvk36iskpyab";
-      system = "hu.dwim.def+swank";
-      asd = "hu.dwim.def+swank";
-    });
-    systems = [ "hu.dwim.def+swank" ];
-    lispLibs = [ (getAttr "hu_dot_dwim_dot_asdf" pkgs) (getAttr "hu_dot_dwim_dot_def" pkgs) (getAttr "swank" pkgs) ];
-  };
-  hu_dot_dwim_dot_def_slash_documentation = {
-    pname = "hu.dwim.def_documentation";
-    version = "stable-git";
-    asds = [ "hu.dwim.def" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/hu.dwim.def/2021-12-30/hu.dwim.def-stable-git.tgz";
-      sha256 = "1scjj9g2bn58l8i1g1brdqzrajy4bb63dqkwlcydcvk36iskpyab";
-      system = "hu.dwim.def";
-      asd = "hu.dwim.def";
-    });
-    systems = [ "hu.dwim.def/documentation" ];
-    lispLibs = [ (getAttr "hu_dot_dwim_dot_asdf" pkgs) (getAttr "hu_dot_dwim_dot_common" pkgs) (getAttr "hu_dot_dwim_dot_presentation" pkgs) (getAttr "hu_dot_dwim_dot_stefil_plus_hu_dot_dwim_dot_def" pkgs) (getAttr "optima" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  hu_dot_dwim_dot_def_slash_namespace = {
-    pname = "hu.dwim.def_namespace";
-    version = "stable-git";
-    asds = [ "hu.dwim.def" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/hu.dwim.def/2021-12-30/hu.dwim.def-stable-git.tgz";
-      sha256 = "1scjj9g2bn58l8i1g1brdqzrajy4bb63dqkwlcydcvk36iskpyab";
-      system = "hu.dwim.def";
-      asd = "hu.dwim.def";
-    });
-    systems = [ "hu.dwim.def/namespace" ];
-    lispLibs = [ (getAttr "bordeaux-threads" pkgs) (getAttr "hu_dot_dwim_dot_asdf" pkgs) (getAttr "hu_dot_dwim_dot_def" pkgs) (getAttr "hu_dot_dwim_dot_util" pkgs) (getAttr "trivial-garbage" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  hu_dot_dwim_dot_def_slash_test = {
-    pname = "hu.dwim.def_test";
-    version = "stable-git";
-    asds = [ "hu.dwim.def" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/hu.dwim.def/2021-12-30/hu.dwim.def-stable-git.tgz";
-      sha256 = "1scjj9g2bn58l8i1g1brdqzrajy4bb63dqkwlcydcvk36iskpyab";
-      system = "hu.dwim.def";
-      asd = "hu.dwim.def";
-    });
-    systems = [ "hu.dwim.def/test" ];
-    lispLibs = [ (getAttr "hu_dot_dwim_dot_asdf" pkgs) (getAttr "hu_dot_dwim_dot_common" pkgs) (getAttr "hu_dot_dwim_dot_stefil_plus_hu_dot_dwim_dot_def" pkgs) (getAttr "optima" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  hu_dot_dwim_dot_defclass-star = {
-    pname = "hu.dwim.defclass-star";
-    version = "stable-git";
-    asds = [ "hu.dwim.defclass-star" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/hu.dwim.defclass-star/2021-12-30/hu.dwim.defclass-star-stable-git.tgz";
-      sha256 = "1lbmsn9s7v88w934r8rp4d59vsj1jg8p2cz9g5kl1n9vff5sxxw2";
-      system = "hu.dwim.defclass-star";
-      asd = "hu.dwim.defclass-star";
-    });
-    systems = [ "hu.dwim.defclass-star" ];
-    lispLibs = [ (getAttr "hu_dot_dwim_dot_asdf" pkgs) ];
-  };
-  hu_dot_dwim_dot_defclass-star_plus_contextl = {
-    pname = "hu.dwim.defclass-star+contextl";
-    version = "stable-git";
-    asds = [ "hu.dwim.defclass-star+contextl" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/hu.dwim.defclass-star/2021-12-30/hu.dwim.defclass-star-stable-git.tgz";
-      sha256 = "1lbmsn9s7v88w934r8rp4d59vsj1jg8p2cz9g5kl1n9vff5sxxw2";
-      system = "hu.dwim.defclass-star+contextl";
-      asd = "hu.dwim.defclass-star+contextl";
-    });
-    systems = [ "hu.dwim.defclass-star+contextl" ];
-    lispLibs = [ (getAttr "contextl" pkgs) (getAttr "hu_dot_dwim_dot_asdf" pkgs) (getAttr "hu_dot_dwim_dot_defclass-star" pkgs) ];
-  };
-  hu_dot_dwim_dot_defclass-star_plus_hu_dot_dwim_dot_def = {
-    pname = "hu.dwim.defclass-star+hu.dwim.def";
-    version = "stable-git";
-    asds = [ "hu.dwim.defclass-star+hu.dwim.def" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/hu.dwim.defclass-star/2021-12-30/hu.dwim.defclass-star-stable-git.tgz";
-      sha256 = "1lbmsn9s7v88w934r8rp4d59vsj1jg8p2cz9g5kl1n9vff5sxxw2";
-      system = "hu.dwim.defclass-star+hu.dwim.def";
-      asd = "hu.dwim.defclass-star+hu.dwim.def";
-    });
-    systems = [ "hu.dwim.defclass-star+hu.dwim.def" ];
-    lispLibs = [ (getAttr "hu_dot_dwim_dot_asdf" pkgs) (getAttr "hu_dot_dwim_dot_def" pkgs) (getAttr "hu_dot_dwim_dot_defclass-star" pkgs) ];
-  };
-  hu_dot_dwim_dot_defclass-star_plus_hu_dot_dwim_dot_def_plus_contextl = {
-    pname = "hu.dwim.defclass-star+hu.dwim.def+contextl";
-    version = "stable-git";
-    asds = [ "hu.dwim.defclass-star+hu.dwim.def+contextl" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/hu.dwim.defclass-star/2021-12-30/hu.dwim.defclass-star-stable-git.tgz";
-      sha256 = "1lbmsn9s7v88w934r8rp4d59vsj1jg8p2cz9g5kl1n9vff5sxxw2";
-      system = "hu.dwim.defclass-star+hu.dwim.def+contextl";
-      asd = "hu.dwim.defclass-star+hu.dwim.def+contextl";
-    });
-    systems = [ "hu.dwim.defclass-star+hu.dwim.def+contextl" ];
-    lispLibs = [ (getAttr "hu_dot_dwim_dot_asdf" pkgs) (getAttr "hu_dot_dwim_dot_defclass-star_plus_contextl" pkgs) (getAttr "hu_dot_dwim_dot_defclass-star_plus_hu_dot_dwim_dot_def" pkgs) ];
-  };
-  hu_dot_dwim_dot_defclass-star_plus_swank = {
-    pname = "hu.dwim.defclass-star+swank";
-    version = "stable-git";
-    asds = [ "hu.dwim.defclass-star+swank" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/hu.dwim.defclass-star/2021-12-30/hu.dwim.defclass-star-stable-git.tgz";
-      sha256 = "1lbmsn9s7v88w934r8rp4d59vsj1jg8p2cz9g5kl1n9vff5sxxw2";
-      system = "hu.dwim.defclass-star+swank";
-      asd = "hu.dwim.defclass-star+swank";
-    });
-    systems = [ "hu.dwim.defclass-star+swank" ];
-    lispLibs = [ (getAttr "hu_dot_dwim_dot_asdf" pkgs) (getAttr "hu_dot_dwim_dot_defclass-star" pkgs) (getAttr "swank" pkgs) ];
-  };
-  hu_dot_dwim_dot_defclass-star_slash_documentation = {
-    pname = "hu.dwim.defclass-star_documentation";
-    version = "stable-git";
-    asds = [ "hu.dwim.defclass-star" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/hu.dwim.defclass-star/2021-12-30/hu.dwim.defclass-star-stable-git.tgz";
-      sha256 = "1lbmsn9s7v88w934r8rp4d59vsj1jg8p2cz9g5kl1n9vff5sxxw2";
-      system = "hu.dwim.defclass-star";
-      asd = "hu.dwim.defclass-star";
-    });
-    systems = [ "hu.dwim.defclass-star/documentation" ];
-    lispLibs = [ (getAttr "hu_dot_dwim_dot_asdf" pkgs) (getAttr "hu_dot_dwim_dot_common" pkgs) (getAttr "hu_dot_dwim_dot_defclass-star" pkgs) (getAttr "hu_dot_dwim_dot_presentation" pkgs) (getAttr "hu_dot_dwim_dot_stefil_plus_hu_dot_dwim_dot_def_plus_swank" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  hu_dot_dwim_dot_defclass-star_slash_test = {
-    pname = "hu.dwim.defclass-star_test";
-    version = "stable-git";
-    asds = [ "hu.dwim.defclass-star" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/hu.dwim.defclass-star/2021-12-30/hu.dwim.defclass-star-stable-git.tgz";
-      sha256 = "1lbmsn9s7v88w934r8rp4d59vsj1jg8p2cz9g5kl1n9vff5sxxw2";
-      system = "hu.dwim.defclass-star";
-      asd = "hu.dwim.defclass-star";
-    });
-    systems = [ "hu.dwim.defclass-star/test" ];
-    lispLibs = [ (getAttr "hu_dot_dwim_dot_asdf" pkgs) (getAttr "hu_dot_dwim_dot_common" pkgs) (getAttr "hu_dot_dwim_dot_defclass-star" pkgs) (getAttr "hu_dot_dwim_dot_stefil_plus_hu_dot_dwim_dot_def_plus_swank" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  hu_dot_dwim_dot_delico = {
-    pname = "hu.dwim.delico";
-    version = "20200925-darcs";
-    asds = [ "hu.dwim.delico" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/hu.dwim.delico/2020-09-25/hu.dwim.delico-20200925-darcs.tgz";
-      sha256 = "12n5cddg7vd3y4dqjcf4wayxwj905ja8jh90ixvrhgnvs559lbnl";
-      system = "hu.dwim.delico";
-      asd = "hu.dwim.delico";
-    });
-    systems = [ "hu.dwim.delico" ];
-    lispLibs = [ (getAttr "contextl" pkgs) (getAttr "hu_dot_dwim_dot_asdf" pkgs) (getAttr "hu_dot_dwim_dot_def_plus_hu_dot_dwim_dot_common" pkgs) (getAttr "hu_dot_dwim_dot_walker" pkgs) ];
-  };
-  hu_dot_dwim_dot_delico_slash_documentation = {
-    pname = "hu.dwim.delico_documentation";
-    version = "20200925-darcs";
-    asds = [ "hu.dwim.delico" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/hu.dwim.delico/2020-09-25/hu.dwim.delico-20200925-darcs.tgz";
-      sha256 = "12n5cddg7vd3y4dqjcf4wayxwj905ja8jh90ixvrhgnvs559lbnl";
-      system = "hu.dwim.delico";
-      asd = "hu.dwim.delico";
-    });
-    systems = [ "hu.dwim.delico/documentation" ];
-    lispLibs = [ (getAttr "hu_dot_dwim_dot_asdf" pkgs) (getAttr "hu_dot_dwim_dot_def" pkgs) (getAttr "hu_dot_dwim_dot_delico" pkgs) (getAttr "hu_dot_dwim_dot_presentation" pkgs) (getAttr "hu_dot_dwim_dot_stefil_plus_hu_dot_dwim_dot_def_plus_swank" pkgs) (getAttr "hu_dot_dwim_dot_util" pkgs) (getAttr "hu_dot_dwim_dot_walker" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  hu_dot_dwim_dot_delico_slash_test = {
-    pname = "hu.dwim.delico_test";
-    version = "20200925-darcs";
-    asds = [ "hu.dwim.delico" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/hu.dwim.delico/2020-09-25/hu.dwim.delico-20200925-darcs.tgz";
-      sha256 = "12n5cddg7vd3y4dqjcf4wayxwj905ja8jh90ixvrhgnvs559lbnl";
-      system = "hu.dwim.delico";
-      asd = "hu.dwim.delico";
-    });
-    systems = [ "hu.dwim.delico/test" ];
-    lispLibs = [ (getAttr "hu_dot_dwim_dot_asdf" pkgs) (getAttr "hu_dot_dwim_dot_def" pkgs) (getAttr "hu_dot_dwim_dot_delico" pkgs) (getAttr "hu_dot_dwim_dot_stefil_plus_hu_dot_dwim_dot_def_plus_swank" pkgs) (getAttr "hu_dot_dwim_dot_util" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  hu_dot_dwim_dot_graphviz = {
-    pname = "hu.dwim.graphviz";
-    version = "stable-git";
-    asds = [ "hu.dwim.graphviz" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/hu.dwim.graphviz/2021-12-30/hu.dwim.graphviz-stable-git.tgz";
-      sha256 = "0cz5g7d6817ajypp876k9m65sxxlf42x4bg04ya73aqci5s1vjwy";
-      system = "hu.dwim.graphviz";
-      asd = "hu.dwim.graphviz";
-    });
-    systems = [ "hu.dwim.graphviz" ];
-    lispLibs = [ (getAttr "cffi" pkgs) (getAttr "hu_dot_dwim_dot_asdf" pkgs) (getAttr "metabang-bind" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  hu_dot_dwim_dot_graphviz_dot_documentation = {
-    pname = "hu.dwim.graphviz.documentation";
-    version = "stable-git";
-    asds = [ "hu.dwim.graphviz.documentation" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/hu.dwim.graphviz/2021-12-30/hu.dwim.graphviz-stable-git.tgz";
-      sha256 = "0cz5g7d6817ajypp876k9m65sxxlf42x4bg04ya73aqci5s1vjwy";
-      system = "hu.dwim.graphviz.documentation";
-      asd = "hu.dwim.graphviz.documentation";
-    });
-    systems = [ "hu.dwim.graphviz.documentation" ];
-    lispLibs = [ (getAttr "hu_dot_dwim_dot_asdf" pkgs) (getAttr "hu_dot_dwim_dot_graphviz_dot_test" pkgs) (getAttr "hu_dot_dwim_dot_presentation" pkgs) ];
-  };
-  hu_dot_dwim_dot_graphviz_dot_test = {
-    pname = "hu.dwim.graphviz.test";
-    version = "stable-git";
-    asds = [ "hu.dwim.graphviz.test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/hu.dwim.graphviz/2021-12-30/hu.dwim.graphviz-stable-git.tgz";
-      sha256 = "0cz5g7d6817ajypp876k9m65sxxlf42x4bg04ya73aqci5s1vjwy";
-      system = "hu.dwim.graphviz.test";
-      asd = "hu.dwim.graphviz.test";
-    });
-    systems = [ "hu.dwim.graphviz.test" ];
-    lispLibs = [ (getAttr "hu_dot_dwim_dot_asdf" pkgs) (getAttr "hu_dot_dwim_dot_common" pkgs) (getAttr "hu_dot_dwim_dot_graphviz" pkgs) (getAttr "hu_dot_dwim_dot_stefil_plus_hu_dot_dwim_dot_def_plus_swank" pkgs) ];
-  };
-  hu_dot_dwim_dot_logger = {
-    pname = "hu.dwim.logger";
-    version = "stable-git";
-    asds = [ "hu.dwim.logger" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/hu.dwim.logger/2021-12-30/hu.dwim.logger-stable-git.tgz";
-      sha256 = "17b7m86pggg85lczww7nvswz0nj9qg1fxwv1l9wn31jfcf061h74";
-      system = "hu.dwim.logger";
-      asd = "hu.dwim.logger";
-    });
-    systems = [ "hu.dwim.logger" ];
-    lispLibs = [ (getAttr "bordeaux-threads" pkgs) (getAttr "hu_dot_dwim_dot_asdf" pkgs) (getAttr "hu_dot_dwim_dot_def" pkgs) (getAttr "hu_dot_dwim_dot_def_plus_hu_dot_dwim_dot_common" pkgs) (getAttr "hu_dot_dwim_dot_defclass-star_plus_hu_dot_dwim_dot_def" pkgs) (getAttr "hu_dot_dwim_dot_util" pkgs) (getAttr "local-time" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  hu_dot_dwim_dot_logger_plus_iolib = {
-    pname = "hu.dwim.logger+iolib";
-    version = "stable-git";
-    asds = [ "hu.dwim.logger+iolib" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/hu.dwim.logger/2021-12-30/hu.dwim.logger-stable-git.tgz";
-      sha256 = "17b7m86pggg85lczww7nvswz0nj9qg1fxwv1l9wn31jfcf061h74";
-      system = "hu.dwim.logger+iolib";
-      asd = "hu.dwim.logger+iolib";
-    });
-    systems = [ "hu.dwim.logger+iolib" ];
-    lispLibs = [ (getAttr "hu_dot_dwim_dot_asdf" pkgs) (getAttr "hu_dot_dwim_dot_logger" pkgs) (getAttr "hu_dot_dwim_dot_util_plus_iolib" pkgs) ];
-  };
-  hu_dot_dwim_dot_logger_plus_swank = {
-    pname = "hu.dwim.logger+swank";
-    version = "stable-git";
-    asds = [ "hu.dwim.logger+swank" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/hu.dwim.logger/2021-12-30/hu.dwim.logger-stable-git.tgz";
-      sha256 = "17b7m86pggg85lczww7nvswz0nj9qg1fxwv1l9wn31jfcf061h74";
-      system = "hu.dwim.logger+swank";
-      asd = "hu.dwim.logger+swank";
-    });
-    systems = [ "hu.dwim.logger+swank" ];
-    lispLibs = [ (getAttr "hu_dot_dwim_dot_asdf" pkgs) (getAttr "hu_dot_dwim_dot_logger" pkgs) (getAttr "swank" pkgs) ];
-  };
-  hu_dot_dwim_dot_logger_dot_documentation = {
-    pname = "hu.dwim.logger.documentation";
-    version = "stable-git";
-    asds = [ "hu.dwim.logger.documentation" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/hu.dwim.logger/2021-12-30/hu.dwim.logger-stable-git.tgz";
-      sha256 = "17b7m86pggg85lczww7nvswz0nj9qg1fxwv1l9wn31jfcf061h74";
-      system = "hu.dwim.logger.documentation";
-      asd = "hu.dwim.logger.documentation";
-    });
-    systems = [ "hu.dwim.logger.documentation" ];
-    lispLibs = [ (getAttr "hu_dot_dwim_dot_asdf" pkgs) (getAttr "hu_dot_dwim_dot_logger_dot_test" pkgs) (getAttr "hu_dot_dwim_dot_presentation" pkgs) ];
-  };
-  hu_dot_dwim_dot_logger_dot_test = {
-    pname = "hu.dwim.logger.test";
-    version = "stable-git";
-    asds = [ "hu.dwim.logger.test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/hu.dwim.logger/2021-12-30/hu.dwim.logger-stable-git.tgz";
-      sha256 = "17b7m86pggg85lczww7nvswz0nj9qg1fxwv1l9wn31jfcf061h74";
-      system = "hu.dwim.logger.test";
-      asd = "hu.dwim.logger.test";
-    });
-    systems = [ "hu.dwim.logger.test" ];
-    lispLibs = [ (getAttr "hu_dot_dwim_dot_asdf" pkgs) (getAttr "hu_dot_dwim_dot_logger" pkgs) (getAttr "hu_dot_dwim_dot_stefil_plus_hu_dot_dwim_dot_def_plus_swank" pkgs) ];
-  };
-  hu_dot_dwim_dot_partial-eval = {
-    pname = "hu.dwim.partial-eval";
-    version = "20171130-darcs";
-    asds = [ "hu.dwim.partial-eval" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/hu.dwim.partial-eval/2017-11-30/hu.dwim.partial-eval-20171130-darcs.tgz";
-      sha256 = "1zsh1rk9rcxkrqavhx2slpczii23y51fn66n68vsw5d97g9k6gzz";
-      system = "hu.dwim.partial-eval";
-      asd = "hu.dwim.partial-eval";
-    });
-    systems = [ "hu.dwim.partial-eval" ];
-    lispLibs = [ (getAttr "hu_dot_dwim_dot_asdf" pkgs) (getAttr "hu_dot_dwim_dot_common" pkgs) (getAttr "hu_dot_dwim_dot_def" pkgs) (getAttr "hu_dot_dwim_dot_defclass-star_plus_hu_dot_dwim_dot_def_plus_contextl" pkgs) (getAttr "hu_dot_dwim_dot_logger" pkgs) (getAttr "hu_dot_dwim_dot_syntax-sugar" pkgs) (getAttr "hu_dot_dwim_dot_util" pkgs) (getAttr "hu_dot_dwim_dot_walker" pkgs) (getAttr "swank" pkgs) ];
-  };
-  hu_dot_dwim_dot_partial-eval_dot_documentation = {
-    pname = "hu.dwim.partial-eval.documentation";
-    version = "20171130-darcs";
-    asds = [ "hu.dwim.partial-eval.documentation" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/hu.dwim.partial-eval/2017-11-30/hu.dwim.partial-eval-20171130-darcs.tgz";
-      sha256 = "1zsh1rk9rcxkrqavhx2slpczii23y51fn66n68vsw5d97g9k6gzz";
-      system = "hu.dwim.partial-eval.documentation";
-      asd = "hu.dwim.partial-eval.documentation";
-    });
-    systems = [ "hu.dwim.partial-eval.documentation" ];
-    lispLibs = [ (getAttr "hu_dot_dwim_dot_asdf" pkgs) (getAttr "hu_dot_dwim_dot_partial-eval_dot_test" pkgs) (getAttr "hu_dot_dwim_dot_presentation" pkgs) ];
-  };
-  hu_dot_dwim_dot_partial-eval_dot_test = {
-    pname = "hu.dwim.partial-eval.test";
-    version = "20171130-darcs";
-    asds = [ "hu.dwim.partial-eval.test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/hu.dwim.partial-eval/2017-11-30/hu.dwim.partial-eval-20171130-darcs.tgz";
-      sha256 = "1zsh1rk9rcxkrqavhx2slpczii23y51fn66n68vsw5d97g9k6gzz";
-      system = "hu.dwim.partial-eval.test";
-      asd = "hu.dwim.partial-eval.test";
-    });
-    systems = [ "hu.dwim.partial-eval.test" ];
-    lispLibs = [ (getAttr "hu_dot_dwim_dot_asdf" pkgs) (getAttr "hu_dot_dwim_dot_partial-eval" pkgs) (getAttr "hu_dot_dwim_dot_stefil_plus_hu_dot_dwim_dot_def_plus_swank" pkgs) (getAttr "hu_dot_dwim_dot_util" pkgs) ];
-  };
-  hu_dot_dwim_dot_perec = {
-    pname = "hu.dwim.perec";
-    version = "20211209-darcs";
-    asds = [ "hu.dwim.perec" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/hu.dwim.perec/2021-12-09/hu.dwim.perec-20211209-darcs.tgz";
-      sha256 = "1m313l0j7jnmw6dlivmxjhcncjwsrzi5zy5g3g3ggzij3fjf9nnz";
-      system = "hu.dwim.perec";
-      asd = "hu.dwim.perec";
-    });
-    systems = [ "hu.dwim.perec" ];
-    lispLibs = [ (getAttr "babel" pkgs) (getAttr "cl-containers" pkgs) (getAttr "cl-ppcre" pkgs) (getAttr "contextl" pkgs) (getAttr "hu_dot_dwim_dot_asdf" pkgs) (getAttr "hu_dot_dwim_dot_common" pkgs) (getAttr "hu_dot_dwim_dot_computed-class" pkgs) (getAttr "hu_dot_dwim_dot_def_plus_contextl" pkgs) (getAttr "hu_dot_dwim_dot_def_plus_hu_dot_dwim_dot_common" pkgs) (getAttr "hu_dot_dwim_dot_def_plus_hu_dot_dwim_dot_delico" pkgs) (getAttr "hu_dot_dwim_dot_defclass-star_plus_hu_dot_dwim_dot_def" pkgs) (getAttr "hu_dot_dwim_dot_logger" pkgs) (getAttr "hu_dot_dwim_dot_rdbms" pkgs) (getAttr "hu_dot_dwim_dot_serializer" pkgs) (getAttr "hu_dot_dwim_dot_syntax-sugar" pkgs) (getAttr "hu_dot_dwim_dot_util" pkgs) (getAttr "hu_dot_dwim_dot_walker" pkgs) (getAttr "ironclad" pkgs) (getAttr "local-time" pkgs) (getAttr "metacopy-with-contextl" pkgs) (getAttr "parse-number" pkgs) ];
-  };
-  hu_dot_dwim_dot_perec_plus_hu_dot_dwim_dot_quasi-quote_dot_xml = {
-    pname = "hu.dwim.perec+hu.dwim.quasi-quote.xml";
-    version = "20211209-darcs";
-    asds = [ "hu.dwim.perec+hu.dwim.quasi-quote.xml" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/hu.dwim.perec/2021-12-09/hu.dwim.perec-20211209-darcs.tgz";
-      sha256 = "1m313l0j7jnmw6dlivmxjhcncjwsrzi5zy5g3g3ggzij3fjf9nnz";
-      system = "hu.dwim.perec+hu.dwim.quasi-quote.xml";
-      asd = "hu.dwim.perec+hu.dwim.quasi-quote.xml";
-    });
-    systems = [ "hu.dwim.perec+hu.dwim.quasi-quote.xml" ];
-    lispLibs = [ (getAttr "hu_dot_dwim_dot_asdf" pkgs) (getAttr "hu_dot_dwim_dot_perec" pkgs) (getAttr "hu_dot_dwim_dot_quasi-quote_dot_xml" pkgs) ];
-  };
-  hu_dot_dwim_dot_perec_plus_iolib = {
-    pname = "hu.dwim.perec+iolib";
-    version = "20211209-darcs";
-    asds = [ "hu.dwim.perec+iolib" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/hu.dwim.perec/2021-12-09/hu.dwim.perec-20211209-darcs.tgz";
-      sha256 = "1m313l0j7jnmw6dlivmxjhcncjwsrzi5zy5g3g3ggzij3fjf9nnz";
-      system = "hu.dwim.perec+iolib";
-      asd = "hu.dwim.perec+iolib";
-    });
-    systems = [ "hu.dwim.perec+iolib" ];
-    lispLibs = [ (getAttr "hu_dot_dwim_dot_asdf" pkgs) (getAttr "hu_dot_dwim_dot_perec" pkgs) (getAttr "iolib" pkgs) ];
-  };
-  hu_dot_dwim_dot_perec_plus_swank = {
-    pname = "hu.dwim.perec+swank";
-    version = "20211209-darcs";
-    asds = [ "hu.dwim.perec+swank" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/hu.dwim.perec/2021-12-09/hu.dwim.perec-20211209-darcs.tgz";
-      sha256 = "1m313l0j7jnmw6dlivmxjhcncjwsrzi5zy5g3g3ggzij3fjf9nnz";
-      system = "hu.dwim.perec+swank";
-      asd = "hu.dwim.perec+swank";
-    });
-    systems = [ "hu.dwim.perec+swank" ];
-    lispLibs = [ (getAttr "hu_dot_dwim_dot_asdf" pkgs) (getAttr "hu_dot_dwim_dot_perec" pkgs) (getAttr "swank" pkgs) ];
-  };
-  hu_dot_dwim_dot_perec_dot_all = {
-    pname = "hu.dwim.perec.all";
-    version = "20211209-darcs";
-    asds = [ "hu.dwim.perec.all" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/hu.dwim.perec/2021-12-09/hu.dwim.perec-20211209-darcs.tgz";
-      sha256 = "1m313l0j7jnmw6dlivmxjhcncjwsrzi5zy5g3g3ggzij3fjf9nnz";
-      system = "hu.dwim.perec.all";
-      asd = "hu.dwim.perec.all";
-    });
-    systems = [ "hu.dwim.perec.all" ];
-    lispLibs = [ (getAttr "hu_dot_dwim_dot_asdf" pkgs) (getAttr "hu_dot_dwim_dot_perec_dot_oracle" pkgs) (getAttr "hu_dot_dwim_dot_perec_dot_postgresql" pkgs) (getAttr "hu_dot_dwim_dot_perec_dot_sqlite" pkgs) ];
-  };
-  hu_dot_dwim_dot_perec_dot_all_dot_test = {
-    pname = "hu.dwim.perec.all.test";
-    version = "20211209-darcs";
-    asds = [ "hu.dwim.perec.all.test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/hu.dwim.perec/2021-12-09/hu.dwim.perec-20211209-darcs.tgz";
-      sha256 = "1m313l0j7jnmw6dlivmxjhcncjwsrzi5zy5g3g3ggzij3fjf9nnz";
-      system = "hu.dwim.perec.all.test";
-      asd = "hu.dwim.perec.all.test";
-    });
-    systems = [ "hu.dwim.perec.all.test" ];
-    lispLibs = [ (getAttr "hu_dot_dwim_dot_asdf" pkgs) (getAttr "hu_dot_dwim_dot_perec_dot_oracle_dot_test" pkgs) (getAttr "hu_dot_dwim_dot_perec_dot_postgresql_dot_test" pkgs) (getAttr "hu_dot_dwim_dot_perec_dot_sqlite_dot_test" pkgs) ];
-  };
-  hu_dot_dwim_dot_perec_dot_documentation = {
-    pname = "hu.dwim.perec.documentation";
-    version = "20211209-darcs";
-    asds = [ "hu.dwim.perec.documentation" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/hu.dwim.perec/2021-12-09/hu.dwim.perec-20211209-darcs.tgz";
-      sha256 = "1m313l0j7jnmw6dlivmxjhcncjwsrzi5zy5g3g3ggzij3fjf9nnz";
-      system = "hu.dwim.perec.documentation";
-      asd = "hu.dwim.perec.documentation";
-    });
-    systems = [ "hu.dwim.perec.documentation" ];
-    lispLibs = [ (getAttr "hu_dot_dwim_dot_asdf" pkgs) (getAttr "hu_dot_dwim_dot_perec_dot_all_dot_test" pkgs) (getAttr "hu_dot_dwim_dot_presentation" pkgs) ];
-  };
-  hu_dot_dwim_dot_perec_dot_oracle = {
-    pname = "hu.dwim.perec.oracle";
-    version = "20211209-darcs";
-    asds = [ "hu.dwim.perec.oracle" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/hu.dwim.perec/2021-12-09/hu.dwim.perec-20211209-darcs.tgz";
-      sha256 = "1m313l0j7jnmw6dlivmxjhcncjwsrzi5zy5g3g3ggzij3fjf9nnz";
-      system = "hu.dwim.perec.oracle";
-      asd = "hu.dwim.perec.oracle";
-    });
-    systems = [ "hu.dwim.perec.oracle" ];
-    lispLibs = [ (getAttr "hu_dot_dwim_dot_asdf" pkgs) (getAttr "hu_dot_dwim_dot_perec" pkgs) (getAttr "hu_dot_dwim_dot_rdbms_dot_oracle" pkgs) ];
-  };
-  hu_dot_dwim_dot_perec_dot_oracle_dot_test = {
-    pname = "hu.dwim.perec.oracle.test";
-    version = "20211209-darcs";
-    asds = [ "hu.dwim.perec.oracle.test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/hu.dwim.perec/2021-12-09/hu.dwim.perec-20211209-darcs.tgz";
-      sha256 = "1m313l0j7jnmw6dlivmxjhcncjwsrzi5zy5g3g3ggzij3fjf9nnz";
-      system = "hu.dwim.perec.oracle.test";
-      asd = "hu.dwim.perec.oracle.test";
-    });
-    systems = [ "hu.dwim.perec.oracle.test" ];
-    lispLibs = [ (getAttr "hu_dot_dwim_dot_asdf" pkgs) (getAttr "hu_dot_dwim_dot_perec_dot_oracle" pkgs) (getAttr "hu_dot_dwim_dot_perec_dot_test" pkgs) ];
-  };
-  hu_dot_dwim_dot_perec_dot_postgresql = {
-    pname = "hu.dwim.perec.postgresql";
-    version = "20211209-darcs";
-    asds = [ "hu.dwim.perec.postgresql" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/hu.dwim.perec/2021-12-09/hu.dwim.perec-20211209-darcs.tgz";
-      sha256 = "1m313l0j7jnmw6dlivmxjhcncjwsrzi5zy5g3g3ggzij3fjf9nnz";
-      system = "hu.dwim.perec.postgresql";
-      asd = "hu.dwim.perec.postgresql";
-    });
-    systems = [ "hu.dwim.perec.postgresql" ];
-    lispLibs = [ (getAttr "hu_dot_dwim_dot_asdf" pkgs) (getAttr "hu_dot_dwim_dot_perec" pkgs) (getAttr "hu_dot_dwim_dot_rdbms_dot_postgresql" pkgs) ];
-  };
-  hu_dot_dwim_dot_perec_dot_postgresql_dot_test = {
-    pname = "hu.dwim.perec.postgresql.test";
-    version = "20211209-darcs";
-    asds = [ "hu.dwim.perec.postgresql.test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/hu.dwim.perec/2021-12-09/hu.dwim.perec-20211209-darcs.tgz";
-      sha256 = "1m313l0j7jnmw6dlivmxjhcncjwsrzi5zy5g3g3ggzij3fjf9nnz";
-      system = "hu.dwim.perec.postgresql.test";
-      asd = "hu.dwim.perec.postgresql.test";
-    });
-    systems = [ "hu.dwim.perec.postgresql.test" ];
-    lispLibs = [ (getAttr "hu_dot_dwim_dot_asdf" pkgs) (getAttr "hu_dot_dwim_dot_perec_dot_postgresql" pkgs) (getAttr "hu_dot_dwim_dot_perec_dot_test" pkgs) ];
-  };
-  hu_dot_dwim_dot_perec_dot_sqlite = {
-    pname = "hu.dwim.perec.sqlite";
-    version = "20211209-darcs";
-    asds = [ "hu.dwim.perec.sqlite" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/hu.dwim.perec/2021-12-09/hu.dwim.perec-20211209-darcs.tgz";
-      sha256 = "1m313l0j7jnmw6dlivmxjhcncjwsrzi5zy5g3g3ggzij3fjf9nnz";
-      system = "hu.dwim.perec.sqlite";
-      asd = "hu.dwim.perec.sqlite";
-    });
-    systems = [ "hu.dwim.perec.sqlite" ];
-    lispLibs = [ (getAttr "hu_dot_dwim_dot_asdf" pkgs) (getAttr "hu_dot_dwim_dot_perec" pkgs) (getAttr "hu_dot_dwim_dot_rdbms_dot_sqlite" pkgs) ];
-  };
-  hu_dot_dwim_dot_perec_dot_sqlite_dot_test = {
-    pname = "hu.dwim.perec.sqlite.test";
-    version = "20211209-darcs";
-    asds = [ "hu.dwim.perec.sqlite.test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/hu.dwim.perec/2021-12-09/hu.dwim.perec-20211209-darcs.tgz";
-      sha256 = "1m313l0j7jnmw6dlivmxjhcncjwsrzi5zy5g3g3ggzij3fjf9nnz";
-      system = "hu.dwim.perec.sqlite.test";
-      asd = "hu.dwim.perec.sqlite.test";
-    });
-    systems = [ "hu.dwim.perec.sqlite.test" ];
-    lispLibs = [ (getAttr "hu_dot_dwim_dot_asdf" pkgs) (getAttr "hu_dot_dwim_dot_perec_dot_sqlite" pkgs) (getAttr "hu_dot_dwim_dot_perec_dot_test" pkgs) ];
-  };
-  hu_dot_dwim_dot_perec_dot_test = {
-    pname = "hu.dwim.perec.test";
-    version = "20211209-darcs";
-    asds = [ "hu.dwim.perec.test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/hu.dwim.perec/2021-12-09/hu.dwim.perec-20211209-darcs.tgz";
-      sha256 = "1m313l0j7jnmw6dlivmxjhcncjwsrzi5zy5g3g3ggzij3fjf9nnz";
-      system = "hu.dwim.perec.test";
-      asd = "hu.dwim.perec.test";
-    });
-    systems = [ "hu.dwim.perec.test" ];
-    lispLibs = [ (getAttr "hu_dot_dwim_dot_asdf" pkgs) (getAttr "hu_dot_dwim_dot_perec_plus_hu_dot_dwim_dot_quasi-quote_dot_xml" pkgs) (getAttr "hu_dot_dwim_dot_perec_plus_iolib" pkgs) (getAttr "hu_dot_dwim_dot_perec_plus_swank" pkgs) (getAttr "hu_dot_dwim_dot_util_dot_test" pkgs) ];
-  };
-  hu_dot_dwim_dot_presentation = {
-    pname = "hu.dwim.presentation";
-    version = "20211230-darcs";
-    asds = [ "hu.dwim.presentation" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/hu.dwim.presentation/2021-12-30/hu.dwim.presentation-20211230-darcs.tgz";
-      sha256 = "06y08z2pa3ra8hwn46n4kygf6vhq68nh73x4gzh4skx379hb4fgp";
-      system = "hu.dwim.presentation";
-      asd = "hu.dwim.presentation";
-    });
-    systems = [ "hu.dwim.presentation" ];
-    lispLibs = [ (getAttr "cl-graph_plus_hu_dot_dwim_dot_graphviz" pkgs) (getAttr "contextl" pkgs) (getAttr "hu_dot_dwim_dot_asdf" pkgs) (getAttr "hu_dot_dwim_dot_def_plus_contextl" pkgs) (getAttr "hu_dot_dwim_dot_logger" pkgs) (getAttr "hu_dot_dwim_dot_stefil_plus_hu_dot_dwim_dot_def" pkgs) (getAttr "hu_dot_dwim_dot_util" pkgs) (getAttr "hu_dot_dwim_dot_web-server_dot_application" pkgs) (getAttr "iolib" pkgs) (getAttr "moptilities" pkgs) ];
-  };
-  hu_dot_dwim_dot_presentation_plus_cl-graph_plus_cl-typesetting = {
-    pname = "hu.dwim.presentation+cl-graph+cl-typesetting";
-    version = "20211230-darcs";
-    asds = [ "hu.dwim.presentation+cl-graph+cl-typesetting" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/hu.dwim.presentation/2021-12-30/hu.dwim.presentation-20211230-darcs.tgz";
-      sha256 = "06y08z2pa3ra8hwn46n4kygf6vhq68nh73x4gzh4skx379hb4fgp";
-      system = "hu.dwim.presentation+cl-graph+cl-typesetting";
-      asd = "hu.dwim.presentation+cl-graph+cl-typesetting";
-    });
-    systems = [ "hu.dwim.presentation+cl-graph+cl-typesetting" ];
-    lispLibs = [ (getAttr "cl-graph" pkgs) (getAttr "hu_dot_dwim_dot_asdf" pkgs) (getAttr "hu_dot_dwim_dot_presentation_plus_cl-typesetting" pkgs) ];
-  };
-  hu_dot_dwim_dot_presentation_plus_cl-typesetting = {
-    pname = "hu.dwim.presentation+cl-typesetting";
-    version = "20211230-darcs";
-    asds = [ "hu.dwim.presentation+cl-typesetting" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/hu.dwim.presentation/2021-12-30/hu.dwim.presentation-20211230-darcs.tgz";
-      sha256 = "06y08z2pa3ra8hwn46n4kygf6vhq68nh73x4gzh4skx379hb4fgp";
-      system = "hu.dwim.presentation+cl-typesetting";
-      asd = "hu.dwim.presentation+cl-typesetting";
-    });
-    systems = [ "hu.dwim.presentation+cl-typesetting" ];
-    lispLibs = [ (getAttr "cl-typesetting" pkgs) (getAttr "hu_dot_dwim_dot_asdf" pkgs) (getAttr "hu_dot_dwim_dot_presentation" pkgs) ];
-  };
-  hu_dot_dwim_dot_presentation_plus_hu_dot_dwim_dot_stefil = {
-    pname = "hu.dwim.presentation+hu.dwim.stefil";
-    version = "20211230-darcs";
-    asds = [ "hu.dwim.presentation+hu.dwim.stefil" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/hu.dwim.presentation/2021-12-30/hu.dwim.presentation-20211230-darcs.tgz";
-      sha256 = "06y08z2pa3ra8hwn46n4kygf6vhq68nh73x4gzh4skx379hb4fgp";
-      system = "hu.dwim.presentation+hu.dwim.stefil";
-      asd = "hu.dwim.presentation+hu.dwim.stefil";
-    });
-    systems = [ "hu.dwim.presentation+hu.dwim.stefil" ];
-    lispLibs = [ (getAttr "hu_dot_dwim_dot_asdf" pkgs) (getAttr "hu_dot_dwim_dot_presentation" pkgs) (getAttr "hu_dot_dwim_dot_stefil" pkgs) ];
-  };
-  hu_dot_dwim_dot_presentation_plus_hu_dot_dwim_dot_web-server = {
-    pname = "hu.dwim.presentation+hu.dwim.web-server";
-    version = "20211230-darcs";
-    asds = [ "hu.dwim.presentation+hu.dwim.web-server" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/hu.dwim.presentation/2021-12-30/hu.dwim.presentation-20211230-darcs.tgz";
-      sha256 = "06y08z2pa3ra8hwn46n4kygf6vhq68nh73x4gzh4skx379hb4fgp";
-      system = "hu.dwim.presentation+hu.dwim.web-server";
-      asd = "hu.dwim.presentation+hu.dwim.web-server";
-    });
-    systems = [ "hu.dwim.presentation+hu.dwim.web-server" ];
-    lispLibs = [ (getAttr "hu_dot_dwim_dot_asdf" pkgs) (getAttr "hu_dot_dwim_dot_presentation" pkgs) (getAttr "hu_dot_dwim_dot_web-server" pkgs) ];
-  };
-  hu_dot_dwim_dot_quasi-quote = {
-    pname = "hu.dwim.quasi-quote";
-    version = "stable-git";
-    asds = [ "hu.dwim.quasi-quote" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/hu.dwim.quasi-quote/2022-07-07/hu.dwim.quasi-quote-stable-git.tgz";
-      sha256 = "1bawkv7ppn6yay1dd6vvmf9bz2400jvks1w8bqmslv8facfhbprm";
-      system = "hu.dwim.quasi-quote";
-      asd = "hu.dwim.quasi-quote";
-    });
-    systems = [ "hu.dwim.quasi-quote" ];
-    lispLibs = [ (getAttr "babel" pkgs) (getAttr "babel-streams" pkgs) (getAttr "hu_dot_dwim_dot_asdf" pkgs) (getAttr "hu_dot_dwim_dot_common" pkgs) (getAttr "hu_dot_dwim_dot_defclass-star_plus_hu_dot_dwim_dot_def" pkgs) (getAttr "hu_dot_dwim_dot_syntax-sugar" pkgs) (getAttr "hu_dot_dwim_dot_util" pkgs) (getAttr "hu_dot_dwim_dot_walker" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  hu_dot_dwim_dot_quasi-quote_dot_css = {
-    pname = "hu.dwim.quasi-quote.css";
-    version = "stable-git";
-    asds = [ "hu.dwim.quasi-quote.css" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/hu.dwim.quasi-quote/2022-07-07/hu.dwim.quasi-quote-stable-git.tgz";
-      sha256 = "1bawkv7ppn6yay1dd6vvmf9bz2400jvks1w8bqmslv8facfhbprm";
-      system = "hu.dwim.quasi-quote.css";
-      asd = "hu.dwim.quasi-quote.css";
-    });
-    systems = [ "hu.dwim.quasi-quote.css" ];
-    lispLibs = [ (getAttr "hu_dot_dwim_dot_asdf" pkgs) (getAttr "hu_dot_dwim_dot_quasi-quote" pkgs) ];
-  };
-  hu_dot_dwim_dot_quasi-quote_dot_js = {
-    pname = "hu.dwim.quasi-quote.js";
-    version = "stable-git";
-    asds = [ "hu.dwim.quasi-quote.js" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/hu.dwim.quasi-quote/2022-07-07/hu.dwim.quasi-quote-stable-git.tgz";
-      sha256 = "1bawkv7ppn6yay1dd6vvmf9bz2400jvks1w8bqmslv8facfhbprm";
-      system = "hu.dwim.quasi-quote.js";
-      asd = "hu.dwim.quasi-quote.js";
-    });
-    systems = [ "hu.dwim.quasi-quote.js" ];
-    lispLibs = [ (getAttr "cl-ppcre" pkgs) (getAttr "hu_dot_dwim_dot_asdf" pkgs) (getAttr "hu_dot_dwim_dot_quasi-quote" pkgs) (getAttr "hu_dot_dwim_dot_util" pkgs) (getAttr "hu_dot_dwim_dot_walker" pkgs) ];
-  };
-  hu_dot_dwim_dot_quasi-quote_dot_pdf = {
-    pname = "hu.dwim.quasi-quote.pdf";
-    version = "stable-git";
-    asds = [ "hu.dwim.quasi-quote.pdf" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/hu.dwim.quasi-quote/2022-07-07/hu.dwim.quasi-quote-stable-git.tgz";
-      sha256 = "1bawkv7ppn6yay1dd6vvmf9bz2400jvks1w8bqmslv8facfhbprm";
-      system = "hu.dwim.quasi-quote.pdf";
-      asd = "hu.dwim.quasi-quote.pdf";
-    });
-    systems = [ "hu.dwim.quasi-quote.pdf" ];
-    lispLibs = [ (getAttr "cffi" pkgs) (getAttr "hu_dot_dwim_dot_asdf" pkgs) (getAttr "hu_dot_dwim_dot_quasi-quote" pkgs) ];
-  };
-  hu_dot_dwim_dot_quasi-quote_dot_xml = {
-    pname = "hu.dwim.quasi-quote.xml";
-    version = "stable-git";
-    asds = [ "hu.dwim.quasi-quote.xml" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/hu.dwim.quasi-quote/2022-07-07/hu.dwim.quasi-quote-stable-git.tgz";
-      sha256 = "1bawkv7ppn6yay1dd6vvmf9bz2400jvks1w8bqmslv8facfhbprm";
-      system = "hu.dwim.quasi-quote.xml";
-      asd = "hu.dwim.quasi-quote.xml";
-    });
-    systems = [ "hu.dwim.quasi-quote.xml" ];
-    lispLibs = [ (getAttr "hu_dot_dwim_dot_asdf" pkgs) (getAttr "hu_dot_dwim_dot_quasi-quote" pkgs) ];
-  };
-  hu_dot_dwim_dot_quasi-quote_dot_xml_plus_cxml = {
-    pname = "hu.dwim.quasi-quote.xml+cxml";
-    version = "stable-git";
-    asds = [ "hu.dwim.quasi-quote.xml+cxml" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/hu.dwim.quasi-quote/2022-07-07/hu.dwim.quasi-quote-stable-git.tgz";
-      sha256 = "1bawkv7ppn6yay1dd6vvmf9bz2400jvks1w8bqmslv8facfhbprm";
-      system = "hu.dwim.quasi-quote.xml+cxml";
-      asd = "hu.dwim.quasi-quote.xml+cxml";
-    });
-    systems = [ "hu.dwim.quasi-quote.xml+cxml" ];
-    lispLibs = [ (getAttr "cxml" pkgs) (getAttr "hu_dot_dwim_dot_asdf" pkgs) (getAttr "hu_dot_dwim_dot_quasi-quote_dot_xml" pkgs) ];
-  };
-  hu_dot_dwim_dot_quasi-quote_dot_xml_plus_hu_dot_dwim_dot_quasi-quote_dot_js = {
-    pname = "hu.dwim.quasi-quote.xml+hu.dwim.quasi-quote.js";
-    version = "stable-git";
-    asds = [ "hu.dwim.quasi-quote.xml+hu.dwim.quasi-quote.js" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/hu.dwim.quasi-quote/2022-07-07/hu.dwim.quasi-quote-stable-git.tgz";
-      sha256 = "1bawkv7ppn6yay1dd6vvmf9bz2400jvks1w8bqmslv8facfhbprm";
-      system = "hu.dwim.quasi-quote.xml+hu.dwim.quasi-quote.js";
-      asd = "hu.dwim.quasi-quote.xml+hu.dwim.quasi-quote.js";
-    });
-    systems = [ "hu.dwim.quasi-quote.xml+hu.dwim.quasi-quote.js" ];
-    lispLibs = [ (getAttr "hu_dot_dwim_dot_asdf" pkgs) (getAttr "hu_dot_dwim_dot_quasi-quote_dot_js" pkgs) (getAttr "hu_dot_dwim_dot_quasi-quote_dot_xml" pkgs) ];
-  };
-  hu_dot_dwim_dot_rdbms = {
-    pname = "hu.dwim.rdbms";
-    version = "20201016-darcs";
-    asds = [ "hu.dwim.rdbms" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/hu.dwim.rdbms/2020-10-16/hu.dwim.rdbms-20201016-darcs.tgz";
-      sha256 = "1rklr82ibwmfffijmpy8mlm6vnylykajzk7r1g0mn28si3map3av";
-      system = "hu.dwim.rdbms";
-      asd = "hu.dwim.rdbms";
-    });
-    systems = [ "hu.dwim.rdbms" ];
-    lispLibs = [ (getAttr "babel" pkgs) (getAttr "hu_dot_dwim_dot_asdf" pkgs) (getAttr "hu_dot_dwim_dot_defclass-star_plus_hu_dot_dwim_dot_def" pkgs) (getAttr "hu_dot_dwim_dot_logger" pkgs) (getAttr "hu_dot_dwim_dot_syntax-sugar" pkgs) (getAttr "hu_dot_dwim_dot_util" pkgs) (getAttr "hu_dot_dwim_dot_walker" pkgs) (getAttr "ironclad" pkgs) (getAttr "local-time" pkgs) ];
-  };
-  hu_dot_dwim_dot_rdbms_dot_all = {
-    pname = "hu.dwim.rdbms.all";
-    version = "20201016-darcs";
-    asds = [ "hu.dwim.rdbms.all" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/hu.dwim.rdbms/2020-10-16/hu.dwim.rdbms-20201016-darcs.tgz";
-      sha256 = "1rklr82ibwmfffijmpy8mlm6vnylykajzk7r1g0mn28si3map3av";
-      system = "hu.dwim.rdbms.all";
-      asd = "hu.dwim.rdbms.all";
-    });
-    systems = [ "hu.dwim.rdbms.all" ];
-    lispLibs = [ (getAttr "hu_dot_dwim_dot_asdf" pkgs) (getAttr "hu_dot_dwim_dot_rdbms_dot_oracle" pkgs) (getAttr "hu_dot_dwim_dot_rdbms_dot_postgresql" pkgs) (getAttr "hu_dot_dwim_dot_rdbms_dot_sqlite" pkgs) ];
-  };
-  hu_dot_dwim_dot_rdbms_dot_all_dot_test = {
-    pname = "hu.dwim.rdbms.all.test";
-    version = "20201016-darcs";
-    asds = [ "hu.dwim.rdbms.all.test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/hu.dwim.rdbms/2020-10-16/hu.dwim.rdbms-20201016-darcs.tgz";
-      sha256 = "1rklr82ibwmfffijmpy8mlm6vnylykajzk7r1g0mn28si3map3av";
-      system = "hu.dwim.rdbms.all.test";
-      asd = "hu.dwim.rdbms.all.test";
-    });
-    systems = [ "hu.dwim.rdbms.all.test" ];
-    lispLibs = [ (getAttr "hu_dot_dwim_dot_asdf" pkgs) (getAttr "hu_dot_dwim_dot_rdbms_dot_oracle_dot_test" pkgs) (getAttr "hu_dot_dwim_dot_rdbms_dot_postgresql_dot_test" pkgs) (getAttr "hu_dot_dwim_dot_rdbms_dot_sqlite_dot_test" pkgs) ];
-  };
-  hu_dot_dwim_dot_rdbms_dot_documentation = {
-    pname = "hu.dwim.rdbms.documentation";
-    version = "20201016-darcs";
-    asds = [ "hu.dwim.rdbms.documentation" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/hu.dwim.rdbms/2020-10-16/hu.dwim.rdbms-20201016-darcs.tgz";
-      sha256 = "1rklr82ibwmfffijmpy8mlm6vnylykajzk7r1g0mn28si3map3av";
-      system = "hu.dwim.rdbms.documentation";
-      asd = "hu.dwim.rdbms.documentation";
-    });
-    systems = [ "hu.dwim.rdbms.documentation" ];
-    lispLibs = [ (getAttr "hu_dot_dwim_dot_asdf" pkgs) (getAttr "hu_dot_dwim_dot_presentation" pkgs) (getAttr "hu_dot_dwim_dot_rdbms_dot_all_dot_test" pkgs) ];
-  };
-  hu_dot_dwim_dot_rdbms_dot_oracle = {
-    pname = "hu.dwim.rdbms.oracle";
-    version = "20201016-darcs";
-    asds = [ "hu.dwim.rdbms.oracle" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/hu.dwim.rdbms/2020-10-16/hu.dwim.rdbms-20201016-darcs.tgz";
-      sha256 = "1rklr82ibwmfffijmpy8mlm6vnylykajzk7r1g0mn28si3map3av";
-      system = "hu.dwim.rdbms.oracle";
-      asd = "hu.dwim.rdbms.oracle";
-    });
-    systems = [ "hu.dwim.rdbms.oracle" ];
-    lispLibs = [ (getAttr "cffi" pkgs) (getAttr "hu_dot_dwim_dot_asdf" pkgs) (getAttr "hu_dot_dwim_dot_rdbms" pkgs) ];
-  };
-  hu_dot_dwim_dot_rdbms_dot_oracle_dot_test = {
-    pname = "hu.dwim.rdbms.oracle.test";
-    version = "20201016-darcs";
-    asds = [ "hu.dwim.rdbms.oracle.test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/hu.dwim.rdbms/2020-10-16/hu.dwim.rdbms-20201016-darcs.tgz";
-      sha256 = "1rklr82ibwmfffijmpy8mlm6vnylykajzk7r1g0mn28si3map3av";
-      system = "hu.dwim.rdbms.oracle.test";
-      asd = "hu.dwim.rdbms.oracle.test";
-    });
-    systems = [ "hu.dwim.rdbms.oracle.test" ];
-    lispLibs = [ (getAttr "hu_dot_dwim_dot_asdf" pkgs) (getAttr "hu_dot_dwim_dot_rdbms_dot_oracle" pkgs) (getAttr "hu_dot_dwim_dot_rdbms_dot_test" pkgs) ];
-  };
-  hu_dot_dwim_dot_rdbms_dot_postgresql = {
-    pname = "hu.dwim.rdbms.postgresql";
-    version = "20201016-darcs";
-    asds = [ "hu.dwim.rdbms.postgresql" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/hu.dwim.rdbms/2020-10-16/hu.dwim.rdbms-20201016-darcs.tgz";
-      sha256 = "1rklr82ibwmfffijmpy8mlm6vnylykajzk7r1g0mn28si3map3av";
-      system = "hu.dwim.rdbms.postgresql";
-      asd = "hu.dwim.rdbms.postgresql";
-    });
-    systems = [ "hu.dwim.rdbms.postgresql" ];
-    lispLibs = [ (getAttr "hu_dot_dwim_dot_asdf" pkgs) (getAttr "hu_dot_dwim_dot_rdbms" pkgs) (getAttr "cl-postgres_plus_local-time" pkgs) ];
-  };
-  hu_dot_dwim_dot_rdbms_dot_postgresql_dot_test = {
-    pname = "hu.dwim.rdbms.postgresql.test";
-    version = "20201016-darcs";
-    asds = [ "hu.dwim.rdbms.postgresql.test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/hu.dwim.rdbms/2020-10-16/hu.dwim.rdbms-20201016-darcs.tgz";
-      sha256 = "1rklr82ibwmfffijmpy8mlm6vnylykajzk7r1g0mn28si3map3av";
-      system = "hu.dwim.rdbms.postgresql.test";
-      asd = "hu.dwim.rdbms.postgresql.test";
-    });
-    systems = [ "hu.dwim.rdbms.postgresql.test" ];
-    lispLibs = [ (getAttr "hu_dot_dwim_dot_asdf" pkgs) (getAttr "hu_dot_dwim_dot_rdbms_dot_postgresql" pkgs) (getAttr "hu_dot_dwim_dot_rdbms_dot_test" pkgs) ];
-  };
-  hu_dot_dwim_dot_rdbms_dot_sqlite = {
-    pname = "hu.dwim.rdbms.sqlite";
-    version = "20201016-darcs";
-    asds = [ "hu.dwim.rdbms.sqlite" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/hu.dwim.rdbms/2020-10-16/hu.dwim.rdbms-20201016-darcs.tgz";
-      sha256 = "1rklr82ibwmfffijmpy8mlm6vnylykajzk7r1g0mn28si3map3av";
-      system = "hu.dwim.rdbms.sqlite";
-      asd = "hu.dwim.rdbms.sqlite";
-    });
-    systems = [ "hu.dwim.rdbms.sqlite" ];
-    lispLibs = [ (getAttr "cffi" pkgs) (getAttr "hu_dot_dwim_dot_asdf" pkgs) (getAttr "hu_dot_dwim_dot_rdbms" pkgs) ];
-  };
-  hu_dot_dwim_dot_rdbms_dot_sqlite_dot_test = {
-    pname = "hu.dwim.rdbms.sqlite.test";
-    version = "20201016-darcs";
-    asds = [ "hu.dwim.rdbms.sqlite.test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/hu.dwim.rdbms/2020-10-16/hu.dwim.rdbms-20201016-darcs.tgz";
-      sha256 = "1rklr82ibwmfffijmpy8mlm6vnylykajzk7r1g0mn28si3map3av";
-      system = "hu.dwim.rdbms.sqlite.test";
-      asd = "hu.dwim.rdbms.sqlite.test";
-    });
-    systems = [ "hu.dwim.rdbms.sqlite.test" ];
-    lispLibs = [ (getAttr "hu_dot_dwim_dot_asdf" pkgs) (getAttr "hu_dot_dwim_dot_rdbms_dot_sqlite" pkgs) (getAttr "hu_dot_dwim_dot_rdbms_dot_test" pkgs) ];
-  };
-  hu_dot_dwim_dot_rdbms_dot_test = {
-    pname = "hu.dwim.rdbms.test";
-    version = "20201016-darcs";
-    asds = [ "hu.dwim.rdbms.test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/hu.dwim.rdbms/2020-10-16/hu.dwim.rdbms-20201016-darcs.tgz";
-      sha256 = "1rklr82ibwmfffijmpy8mlm6vnylykajzk7r1g0mn28si3map3av";
-      system = "hu.dwim.rdbms.test";
-      asd = "hu.dwim.rdbms.test";
-    });
-    systems = [ "hu.dwim.rdbms.test" ];
-    lispLibs = [ (getAttr "hu_dot_dwim_dot_asdf" pkgs) (getAttr "hu_dot_dwim_dot_rdbms" pkgs) (getAttr "hu_dot_dwim_dot_stefil_plus_hu_dot_dwim_dot_def_plus_swank" pkgs) ];
-  };
-  hu_dot_dwim_dot_reiterate = {
-    pname = "hu.dwim.reiterate";
-    version = "stable-git";
-    asds = [ "hu.dwim.reiterate" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/hu.dwim.reiterate/2021-12-30/hu.dwim.reiterate-stable-git.tgz";
-      sha256 = "0h6cgg385ivgc6942xal09c7n9vmy6gn4y3zz4zafc1qyl5jwyv9";
-      system = "hu.dwim.reiterate";
-      asd = "hu.dwim.reiterate";
-    });
-    systems = [ "hu.dwim.reiterate" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "anaphora" pkgs) (getAttr "hu_dot_dwim_dot_asdf" pkgs) (getAttr "hu_dot_dwim_dot_common-lisp" pkgs) (getAttr "hu_dot_dwim_dot_def" pkgs) (getAttr "hu_dot_dwim_dot_defclass-star" pkgs) (getAttr "hu_dot_dwim_dot_syntax-sugar" pkgs) (getAttr "hu_dot_dwim_dot_util" pkgs) (getAttr "metabang-bind" pkgs) ];
-  };
-  hu_dot_dwim_dot_reiterate_plus_hu_dot_dwim_dot_logger = {
-    pname = "hu.dwim.reiterate+hu.dwim.logger";
-    version = "stable-git";
-    asds = [ "hu.dwim.reiterate+hu.dwim.logger" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/hu.dwim.reiterate/2021-12-30/hu.dwim.reiterate-stable-git.tgz";
-      sha256 = "0h6cgg385ivgc6942xal09c7n9vmy6gn4y3zz4zafc1qyl5jwyv9";
-      system = "hu.dwim.reiterate+hu.dwim.logger";
-      asd = "hu.dwim.reiterate+hu.dwim.logger";
-    });
-    systems = [ "hu.dwim.reiterate+hu.dwim.logger" ];
-    lispLibs = [ (getAttr "hu_dot_dwim_dot_asdf" pkgs) (getAttr "hu_dot_dwim_dot_logger" pkgs) (getAttr "hu_dot_dwim_dot_reiterate" pkgs) ];
-  };
-  hu_dot_dwim_dot_sdl = {
-    pname = "hu.dwim.sdl";
-    version = "stable-git";
-    asds = [ "hu.dwim.sdl" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/hu.dwim.sdl/2022-07-07/hu.dwim.sdl-stable-git.tgz";
-      sha256 = "175kha5f7kvis2nlxbzrybswbr62lgmjh691ajwl5i9y7andqhq2";
-      system = "hu.dwim.sdl";
-      asd = "hu.dwim.sdl";
-    });
-    systems = [ "hu.dwim.sdl" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cffi" pkgs) (getAttr "cffi-libffi" pkgs) (getAttr "hu_dot_dwim_dot_asdf" pkgs) ];
-  };
-  hu_dot_dwim_dot_sdl_slash_fancy = {
-    pname = "hu.dwim.sdl_fancy";
-    version = "stable-git";
-    asds = [ "hu.dwim.sdl" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/hu.dwim.sdl/2022-07-07/hu.dwim.sdl-stable-git.tgz";
-      sha256 = "175kha5f7kvis2nlxbzrybswbr62lgmjh691ajwl5i9y7andqhq2";
-      system = "hu.dwim.sdl";
-      asd = "hu.dwim.sdl";
-    });
-    systems = [ "hu.dwim.sdl/fancy" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cffi" pkgs) (getAttr "cffi-libffi" pkgs) (getAttr "hu_dot_dwim_dot_asdf" pkgs) (getAttr "hu_dot_dwim_dot_def_plus_hu_dot_dwim_dot_common" pkgs) (getAttr "hu_dot_dwim_dot_defclass-star_plus_hu_dot_dwim_dot_def" pkgs) (getAttr "hu_dot_dwim_dot_sdl" pkgs) (getAttr "hu_dot_dwim_dot_syntax-sugar" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  hu_dot_dwim_dot_sdl_slash_gfx = {
-    pname = "hu.dwim.sdl_gfx";
-    version = "stable-git";
-    asds = [ "hu.dwim.sdl" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/hu.dwim.sdl/2022-07-07/hu.dwim.sdl-stable-git.tgz";
-      sha256 = "175kha5f7kvis2nlxbzrybswbr62lgmjh691ajwl5i9y7andqhq2";
-      system = "hu.dwim.sdl";
-      asd = "hu.dwim.sdl";
-    });
-    systems = [ "hu.dwim.sdl/gfx" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cffi" pkgs) (getAttr "cffi-libffi" pkgs) (getAttr "hu_dot_dwim_dot_sdl" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  hu_dot_dwim_dot_sdl_slash_image = {
-    pname = "hu.dwim.sdl_image";
-    version = "stable-git";
-    asds = [ "hu.dwim.sdl" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/hu.dwim.sdl/2022-07-07/hu.dwim.sdl-stable-git.tgz";
-      sha256 = "175kha5f7kvis2nlxbzrybswbr62lgmjh691ajwl5i9y7andqhq2";
-      system = "hu.dwim.sdl";
-      asd = "hu.dwim.sdl";
-    });
-    systems = [ "hu.dwim.sdl/image" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cffi" pkgs) (getAttr "cffi-libffi" pkgs) (getAttr "hu_dot_dwim_dot_sdl" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  hu_dot_dwim_dot_sdl_slash_ttf = {
-    pname = "hu.dwim.sdl_ttf";
-    version = "stable-git";
-    asds = [ "hu.dwim.sdl" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/hu.dwim.sdl/2022-07-07/hu.dwim.sdl-stable-git.tgz";
-      sha256 = "175kha5f7kvis2nlxbzrybswbr62lgmjh691ajwl5i9y7andqhq2";
-      system = "hu.dwim.sdl";
-      asd = "hu.dwim.sdl";
-    });
-    systems = [ "hu.dwim.sdl/ttf" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cffi" pkgs) (getAttr "cffi-libffi" pkgs) (getAttr "hu_dot_dwim_dot_sdl" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  hu_dot_dwim_dot_serializer = {
-    pname = "hu.dwim.serializer";
-    version = "20161204-darcs";
-    asds = [ "hu.dwim.serializer" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/hu.dwim.serializer/2016-12-04/hu.dwim.serializer-20161204-darcs.tgz";
-      sha256 = "1c4zl2ql4w7nw8vrcrhhq45c5yhbcp4z5qpp1yxjpd3002q2lbh2";
-      system = "hu.dwim.serializer";
-      asd = "hu.dwim.serializer";
-    });
-    systems = [ "hu.dwim.serializer" ];
-    lispLibs = [ (getAttr "babel" pkgs) (getAttr "hu_dot_dwim_dot_asdf" pkgs) (getAttr "hu_dot_dwim_dot_common" pkgs) (getAttr "hu_dot_dwim_dot_def" pkgs) (getAttr "hu_dot_dwim_dot_syntax-sugar" pkgs) (getAttr "hu_dot_dwim_dot_util" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  hu_dot_dwim_dot_serializer_dot_documentation = {
-    pname = "hu.dwim.serializer.documentation";
-    version = "20161204-darcs";
-    asds = [ "hu.dwim.serializer.documentation" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/hu.dwim.serializer/2016-12-04/hu.dwim.serializer-20161204-darcs.tgz";
-      sha256 = "1c4zl2ql4w7nw8vrcrhhq45c5yhbcp4z5qpp1yxjpd3002q2lbh2";
-      system = "hu.dwim.serializer.documentation";
-      asd = "hu.dwim.serializer.documentation";
-    });
-    systems = [ "hu.dwim.serializer.documentation" ];
-    lispLibs = [ (getAttr "hu_dot_dwim_dot_asdf" pkgs) (getAttr "hu_dot_dwim_dot_presentation" pkgs) (getAttr "hu_dot_dwim_dot_serializer_dot_test" pkgs) ];
-  };
-  hu_dot_dwim_dot_serializer_dot_test = {
-    pname = "hu.dwim.serializer.test";
-    version = "20161204-darcs";
-    asds = [ "hu.dwim.serializer.test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/hu.dwim.serializer/2016-12-04/hu.dwim.serializer-20161204-darcs.tgz";
-      sha256 = "1c4zl2ql4w7nw8vrcrhhq45c5yhbcp4z5qpp1yxjpd3002q2lbh2";
-      system = "hu.dwim.serializer.test";
-      asd = "hu.dwim.serializer.test";
-    });
-    systems = [ "hu.dwim.serializer.test" ];
-    lispLibs = [ (getAttr "hu_dot_dwim_dot_asdf" pkgs) (getAttr "hu_dot_dwim_dot_serializer" pkgs) (getAttr "hu_dot_dwim_dot_stefil_plus_hu_dot_dwim_dot_def_plus_swank" pkgs) ];
-  };
-  hu_dot_dwim_dot_stefil = {
-    pname = "hu.dwim.stefil";
-    version = "stable-git";
-    asds = [ "hu.dwim.stefil" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/hu.dwim.stefil/2021-12-30/hu.dwim.stefil-stable-git.tgz";
-      sha256 = "0sra6psvrlpx9w7xjikm6ph2qlmgi9lr1kagpsiafxq4dnqlxjsx";
-      system = "hu.dwim.stefil";
-      asd = "hu.dwim.stefil";
-    });
-    systems = [ "hu.dwim.stefil" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) ];
-  };
-  hu_dot_dwim_dot_stefil_plus_hu_dot_dwim_dot_def = {
-    pname = "hu.dwim.stefil+hu.dwim.def";
-    version = "stable-git";
-    asds = [ "hu.dwim.stefil+hu.dwim.def" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/hu.dwim.stefil/2021-12-30/hu.dwim.stefil-stable-git.tgz";
-      sha256 = "0sra6psvrlpx9w7xjikm6ph2qlmgi9lr1kagpsiafxq4dnqlxjsx";
-      system = "hu.dwim.stefil+hu.dwim.def";
-      asd = "hu.dwim.stefil+hu.dwim.def";
-    });
-    systems = [ "hu.dwim.stefil+hu.dwim.def" ];
-    lispLibs = [ (getAttr "hu_dot_dwim_dot_asdf" pkgs) (getAttr "hu_dot_dwim_dot_def" pkgs) (getAttr "hu_dot_dwim_dot_stefil" pkgs) ];
-  };
-  hu_dot_dwim_dot_stefil_plus_hu_dot_dwim_dot_def_plus_swank = {
-    pname = "hu.dwim.stefil+hu.dwim.def+swank";
-    version = "stable-git";
-    asds = [ "hu.dwim.stefil+hu.dwim.def+swank" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/hu.dwim.stefil/2021-12-30/hu.dwim.stefil-stable-git.tgz";
-      sha256 = "0sra6psvrlpx9w7xjikm6ph2qlmgi9lr1kagpsiafxq4dnqlxjsx";
-      system = "hu.dwim.stefil+hu.dwim.def+swank";
-      asd = "hu.dwim.stefil+hu.dwim.def+swank";
-    });
-    systems = [ "hu.dwim.stefil+hu.dwim.def+swank" ];
-    lispLibs = [ (getAttr "hu_dot_dwim_dot_asdf" pkgs) (getAttr "hu_dot_dwim_dot_def_plus_swank" pkgs) (getAttr "hu_dot_dwim_dot_stefil_plus_hu_dot_dwim_dot_def" pkgs) (getAttr "hu_dot_dwim_dot_stefil_plus_swank" pkgs) ];
-  };
-  hu_dot_dwim_dot_stefil_plus_swank = {
-    pname = "hu.dwim.stefil+swank";
-    version = "stable-git";
-    asds = [ "hu.dwim.stefil+swank" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/hu.dwim.stefil/2021-12-30/hu.dwim.stefil-stable-git.tgz";
-      sha256 = "0sra6psvrlpx9w7xjikm6ph2qlmgi9lr1kagpsiafxq4dnqlxjsx";
-      system = "hu.dwim.stefil+swank";
-      asd = "hu.dwim.stefil+swank";
-    });
-    systems = [ "hu.dwim.stefil+swank" ];
-    lispLibs = [ (getAttr "hu_dot_dwim_dot_asdf" pkgs) (getAttr "hu_dot_dwim_dot_stefil" pkgs) (getAttr "swank" pkgs) ];
-  };
-  hu_dot_dwim_dot_stefil_slash_test = {
-    pname = "hu.dwim.stefil_test";
-    version = "stable-git";
-    asds = [ "hu.dwim.stefil" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/hu.dwim.stefil/2021-12-30/hu.dwim.stefil-stable-git.tgz";
-      sha256 = "0sra6psvrlpx9w7xjikm6ph2qlmgi9lr1kagpsiafxq4dnqlxjsx";
-      system = "hu.dwim.stefil";
-      asd = "hu.dwim.stefil";
-    });
-    systems = [ "hu.dwim.stefil/test" ];
-    lispLibs = [ (getAttr "hu_dot_dwim_dot_stefil" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  hu_dot_dwim_dot_syntax-sugar = {
-    pname = "hu.dwim.syntax-sugar";
-    version = "20161204-darcs";
-    asds = [ "hu.dwim.syntax-sugar" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/hu.dwim.syntax-sugar/2016-12-04/hu.dwim.syntax-sugar-20161204-darcs.tgz";
-      sha256 = "0hj74g9jsqcqprvxk9hkx4ykhxxdv6s7x82acjz12xyjvvqpx7zc";
-      system = "hu.dwim.syntax-sugar";
-      asd = "hu.dwim.syntax-sugar";
-    });
-    systems = [ "hu.dwim.syntax-sugar" ];
-    lispLibs = [ (getAttr "hu_dot_dwim_dot_asdf" pkgs) (getAttr "hu_dot_dwim_dot_common" pkgs) ];
-  };
-  hu_dot_dwim_dot_syntax-sugar_dot_documentation = {
-    pname = "hu.dwim.syntax-sugar.documentation";
-    version = "20161204-darcs";
-    asds = [ "hu.dwim.syntax-sugar.documentation" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/hu.dwim.syntax-sugar/2016-12-04/hu.dwim.syntax-sugar-20161204-darcs.tgz";
-      sha256 = "0hj74g9jsqcqprvxk9hkx4ykhxxdv6s7x82acjz12xyjvvqpx7zc";
-      system = "hu.dwim.syntax-sugar.documentation";
-      asd = "hu.dwim.syntax-sugar.documentation";
-    });
-    systems = [ "hu.dwim.syntax-sugar.documentation" ];
-    lispLibs = [ (getAttr "hu_dot_dwim_dot_asdf" pkgs) (getAttr "hu_dot_dwim_dot_presentation" pkgs) (getAttr "hu_dot_dwim_dot_syntax-sugar_dot_test" pkgs) ];
-  };
-  hu_dot_dwim_dot_syntax-sugar_dot_test = {
-    pname = "hu.dwim.syntax-sugar.test";
-    version = "20161204-darcs";
-    asds = [ "hu.dwim.syntax-sugar.test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/hu.dwim.syntax-sugar/2016-12-04/hu.dwim.syntax-sugar-20161204-darcs.tgz";
-      sha256 = "0hj74g9jsqcqprvxk9hkx4ykhxxdv6s7x82acjz12xyjvvqpx7zc";
-      system = "hu.dwim.syntax-sugar.test";
-      asd = "hu.dwim.syntax-sugar.test";
-    });
-    systems = [ "hu.dwim.syntax-sugar.test" ];
-    lispLibs = [ (getAttr "hu_dot_dwim_dot_asdf" pkgs) (getAttr "hu_dot_dwim_dot_stefil_plus_hu_dot_dwim_dot_def_plus_swank" pkgs) (getAttr "hu_dot_dwim_dot_syntax-sugar" pkgs) (getAttr "hu_dot_dwim_dot_walker" pkgs) ];
-  };
-  hu_dot_dwim_dot_syntax-sugar_slash_lambda-with-bang-args = {
-    pname = "hu.dwim.syntax-sugar_lambda-with-bang-args";
-    version = "20161204-darcs";
-    asds = [ "hu.dwim.syntax-sugar" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/hu.dwim.syntax-sugar/2016-12-04/hu.dwim.syntax-sugar-20161204-darcs.tgz";
-      sha256 = "0hj74g9jsqcqprvxk9hkx4ykhxxdv6s7x82acjz12xyjvvqpx7zc";
-      system = "hu.dwim.syntax-sugar";
-      asd = "hu.dwim.syntax-sugar";
-    });
-    systems = [ "hu.dwim.syntax-sugar/lambda-with-bang-args" ];
-    lispLibs = [ (getAttr "hu_dot_dwim_dot_asdf" pkgs) (getAttr "hu_dot_dwim_dot_syntax-sugar" pkgs) (getAttr "hu_dot_dwim_dot_walker" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  hu_dot_dwim_dot_syntax-sugar_slash_unicode = {
-    pname = "hu.dwim.syntax-sugar_unicode";
-    version = "20161204-darcs";
-    asds = [ "hu.dwim.syntax-sugar" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/hu.dwim.syntax-sugar/2016-12-04/hu.dwim.syntax-sugar-20161204-darcs.tgz";
-      sha256 = "0hj74g9jsqcqprvxk9hkx4ykhxxdv6s7x82acjz12xyjvvqpx7zc";
-      system = "hu.dwim.syntax-sugar";
-      asd = "hu.dwim.syntax-sugar";
-    });
-    systems = [ "hu.dwim.syntax-sugar/unicode" ];
-    lispLibs = [ (getAttr "hu_dot_dwim_dot_asdf" pkgs) (getAttr "hu_dot_dwim_dot_syntax-sugar" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  hu_dot_dwim_dot_uri = {
-    pname = "hu.dwim.uri";
-    version = "20180228-darcs";
-    asds = [ "hu.dwim.uri" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/hu.dwim.uri/2018-02-28/hu.dwim.uri-20180228-darcs.tgz";
-      sha256 = "0wvai7djmbry0b0j8vhzw3s8m30ghs2sml29gw6snh1pynh3c2ir";
-      system = "hu.dwim.uri";
-      asd = "hu.dwim.uri";
-    });
-    systems = [ "hu.dwim.uri" ];
-    lispLibs = [ (getAttr "babel" pkgs) (getAttr "cl-ppcre" pkgs) (getAttr "hu_dot_dwim_dot_asdf" pkgs) (getAttr "hu_dot_dwim_dot_util" pkgs) (getAttr "iolib" pkgs) ];
-  };
-  hu_dot_dwim_dot_uri_dot_test = {
-    pname = "hu.dwim.uri.test";
-    version = "20180228-darcs";
-    asds = [ "hu.dwim.uri.test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/hu.dwim.uri/2018-02-28/hu.dwim.uri-20180228-darcs.tgz";
-      sha256 = "0wvai7djmbry0b0j8vhzw3s8m30ghs2sml29gw6snh1pynh3c2ir";
-      system = "hu.dwim.uri.test";
-      asd = "hu.dwim.uri.test";
-    });
-    systems = [ "hu.dwim.uri.test" ];
-    lispLibs = [ (getAttr "hu_dot_dwim_dot_asdf" pkgs) (getAttr "hu_dot_dwim_dot_stefil_plus_hu_dot_dwim_dot_def_plus_swank" pkgs) (getAttr "hu_dot_dwim_dot_uri" pkgs) (getAttr "hu_dot_dwim_dot_util" pkgs) ];
-  };
-  hu_dot_dwim_dot_util = {
-    pname = "hu.dwim.util";
-    version = "stable-git";
-    asds = [ "hu.dwim.util" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/hu.dwim.util/2021-12-30/hu.dwim.util-stable-git.tgz";
-      sha256 = "01f0kvvaa94zkz5zzfaf8cbiihlp0l6627q3hmc0k154j3mdarmi";
-      system = "hu.dwim.util";
-      asd = "hu.dwim.util";
-    });
-    systems = [ "hu.dwim.util" ];
-    lispLibs = [ (getAttr "hu_dot_dwim_dot_asdf" pkgs) (getAttr "hu_dot_dwim_dot_def_plus_hu_dot_dwim_dot_common" pkgs) (getAttr "hu_dot_dwim_dot_defclass-star_plus_hu_dot_dwim_dot_def" pkgs) (getAttr "hu_dot_dwim_dot_syntax-sugar" pkgs) ];
-  };
-  hu_dot_dwim_dot_util_plus_iolib = {
-    pname = "hu.dwim.util+iolib";
-    version = "stable-git";
-    asds = [ "hu.dwim.util+iolib" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/hu.dwim.util/2021-12-30/hu.dwim.util-stable-git.tgz";
-      sha256 = "01f0kvvaa94zkz5zzfaf8cbiihlp0l6627q3hmc0k154j3mdarmi";
-      system = "hu.dwim.util+iolib";
-      asd = "hu.dwim.util+iolib";
-    });
-    systems = [ "hu.dwim.util+iolib" ];
-    lispLibs = [ (getAttr "hu_dot_dwim_dot_asdf" pkgs) (getAttr "hu_dot_dwim_dot_util" pkgs) (getAttr "iolib" pkgs) ];
-  };
-  hu_dot_dwim_dot_util_dot_documentation = {
-    pname = "hu.dwim.util.documentation";
-    version = "stable-git";
-    asds = [ "hu.dwim.util.documentation" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/hu.dwim.util/2021-12-30/hu.dwim.util-stable-git.tgz";
-      sha256 = "01f0kvvaa94zkz5zzfaf8cbiihlp0l6627q3hmc0k154j3mdarmi";
-      system = "hu.dwim.util.documentation";
-      asd = "hu.dwim.util.documentation";
-    });
-    systems = [ "hu.dwim.util.documentation" ];
-    lispLibs = [ (getAttr "hu_dot_dwim_dot_asdf" pkgs) (getAttr "hu_dot_dwim_dot_presentation" pkgs) (getAttr "hu_dot_dwim_dot_stefil_plus_hu_dot_dwim_dot_def_plus_swank" pkgs) ];
-  };
-  hu_dot_dwim_dot_util_dot_test = {
-    pname = "hu.dwim.util.test";
-    version = "stable-git";
-    asds = [ "hu.dwim.util.test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/hu.dwim.util/2021-12-30/hu.dwim.util-stable-git.tgz";
-      sha256 = "01f0kvvaa94zkz5zzfaf8cbiihlp0l6627q3hmc0k154j3mdarmi";
-      system = "hu.dwim.util.test";
-      asd = "hu.dwim.util.test";
-    });
-    systems = [ "hu.dwim.util.test" ];
-    lispLibs = [ (getAttr "babel" pkgs) (getAttr "babel-streams" pkgs) (getAttr "bordeaux-threads" pkgs) (getAttr "cl-l10n" pkgs) (getAttr "cl-ppcre" pkgs) (getAttr "closer-mop" pkgs) (getAttr "command-line-arguments" pkgs) (getAttr "cxml" pkgs) (getAttr "drakma" pkgs) (getAttr "hu_dot_dwim_dot_asdf" pkgs) (getAttr "hu_dot_dwim_dot_def" pkgs) (getAttr "hu_dot_dwim_dot_def_plus_hu_dot_dwim_dot_common" pkgs) (getAttr "hu_dot_dwim_dot_defclass-star_plus_hu_dot_dwim_dot_def" pkgs) (getAttr "hu_dot_dwim_dot_delico" pkgs) (getAttr "hu_dot_dwim_dot_logger" pkgs) (getAttr "hu_dot_dwim_dot_perec_dot_postgresql" pkgs) (getAttr "hu_dot_dwim_dot_quasi-quote_dot_xml" pkgs) (getAttr "hu_dot_dwim_dot_stefil_plus_hu_dot_dwim_dot_def_plus_swank" pkgs) (getAttr "hu_dot_dwim_dot_syntax-sugar" pkgs) (getAttr "hu_dot_dwim_dot_util" pkgs) (getAttr "hu_dot_dwim_dot_util_plus_iolib" pkgs) (getAttr "hu_dot_dwim_dot_web-server_dot_application" pkgs) (getAttr "iolib" pkgs) (getAttr "swank" pkgs) (getAttr "uiop" pkgs) ];
-  };
-  hu_dot_dwim_dot_util_slash_authorization = {
-    pname = "hu.dwim.util_authorization";
-    version = "stable-git";
-    asds = [ "hu.dwim.util" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/hu.dwim.util/2021-12-30/hu.dwim.util-stable-git.tgz";
-      sha256 = "01f0kvvaa94zkz5zzfaf8cbiihlp0l6627q3hmc0k154j3mdarmi";
-      system = "hu.dwim.util";
-      asd = "hu.dwim.util";
-    });
-    systems = [ "hu.dwim.util/authorization" ];
-    lispLibs = [ (getAttr "hu_dot_dwim_dot_asdf" pkgs) (getAttr "hu_dot_dwim_dot_defclass-star_plus_hu_dot_dwim_dot_def" pkgs) (getAttr "hu_dot_dwim_dot_logger" pkgs) (getAttr "hu_dot_dwim_dot_partial-eval" pkgs) (getAttr "hu_dot_dwim_dot_util" pkgs) (getAttr "hu_dot_dwim_dot_walker" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  hu_dot_dwim_dot_util_slash_command-line = {
-    pname = "hu.dwim.util_command-line";
-    version = "stable-git";
-    asds = [ "hu.dwim.util" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/hu.dwim.util/2021-12-30/hu.dwim.util-stable-git.tgz";
-      sha256 = "01f0kvvaa94zkz5zzfaf8cbiihlp0l6627q3hmc0k154j3mdarmi";
-      system = "hu.dwim.util";
-      asd = "hu.dwim.util";
-    });
-    systems = [ "hu.dwim.util/command-line" ];
-    lispLibs = [ (getAttr "command-line-arguments" pkgs) (getAttr "hu_dot_dwim_dot_asdf" pkgs) (getAttr "hu_dot_dwim_dot_util" pkgs) (getAttr "uiop" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  hu_dot_dwim_dot_util_slash_error-handling = {
-    pname = "hu.dwim.util_error-handling";
-    version = "stable-git";
-    asds = [ "hu.dwim.util" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/hu.dwim.util/2021-12-30/hu.dwim.util-stable-git.tgz";
-      sha256 = "01f0kvvaa94zkz5zzfaf8cbiihlp0l6627q3hmc0k154j3mdarmi";
-      system = "hu.dwim.util";
-      asd = "hu.dwim.util";
-    });
-    systems = [ "hu.dwim.util/error-handling" ];
-    lispLibs = [ (getAttr "hu_dot_dwim_dot_asdf" pkgs) (getAttr "hu_dot_dwim_dot_defclass-star_plus_hu_dot_dwim_dot_def" pkgs) (getAttr "hu_dot_dwim_dot_util" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  hu_dot_dwim_dot_util_slash_error-handling_plus_swank = {
-    pname = "hu.dwim.util_error-handling+swank";
-    version = "stable-git";
-    asds = [ "hu.dwim.util" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/hu.dwim.util/2021-12-30/hu.dwim.util-stable-git.tgz";
-      sha256 = "01f0kvvaa94zkz5zzfaf8cbiihlp0l6627q3hmc0k154j3mdarmi";
-      system = "hu.dwim.util";
-      asd = "hu.dwim.util";
-    });
-    systems = [ "hu.dwim.util/error-handling+swank" ];
-    lispLibs = [ (getAttr "hu_dot_dwim_dot_asdf" pkgs) (getAttr "hu_dot_dwim_dot_defclass-star_plus_hu_dot_dwim_dot_def" pkgs) (getAttr "hu_dot_dwim_dot_util" pkgs) (getAttr "swank" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  hu_dot_dwim_dot_util_slash_finite-state-machine = {
-    pname = "hu.dwim.util_finite-state-machine";
-    version = "stable-git";
-    asds = [ "hu.dwim.util" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/hu.dwim.util/2021-12-30/hu.dwim.util-stable-git.tgz";
-      sha256 = "01f0kvvaa94zkz5zzfaf8cbiihlp0l6627q3hmc0k154j3mdarmi";
-      system = "hu.dwim.util";
-      asd = "hu.dwim.util";
-    });
-    systems = [ "hu.dwim.util/finite-state-machine" ];
-    lispLibs = [ (getAttr "hu_dot_dwim_dot_asdf" pkgs) (getAttr "hu_dot_dwim_dot_def" pkgs) (getAttr "hu_dot_dwim_dot_defclass-star_plus_hu_dot_dwim_dot_def" pkgs) (getAttr "hu_dot_dwim_dot_util" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  hu_dot_dwim_dot_util_slash_flexml = {
-    pname = "hu.dwim.util_flexml";
-    version = "stable-git";
-    asds = [ "hu.dwim.util" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/hu.dwim.util/2021-12-30/hu.dwim.util-stable-git.tgz";
-      sha256 = "01f0kvvaa94zkz5zzfaf8cbiihlp0l6627q3hmc0k154j3mdarmi";
-      system = "hu.dwim.util";
-      asd = "hu.dwim.util";
-    });
-    systems = [ "hu.dwim.util/flexml" ];
-    lispLibs = [ (getAttr "cl-ppcre" pkgs) (getAttr "cxml" pkgs) (getAttr "hu_dot_dwim_dot_asdf" pkgs) (getAttr "hu_dot_dwim_dot_def" pkgs) (getAttr "hu_dot_dwim_dot_defclass-star_plus_hu_dot_dwim_dot_def" pkgs) (getAttr "hu_dot_dwim_dot_util" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  hu_dot_dwim_dot_util_slash_i18n = {
-    pname = "hu.dwim.util_i18n";
-    version = "stable-git";
-    asds = [ "hu.dwim.util" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/hu.dwim.util/2021-12-30/hu.dwim.util-stable-git.tgz";
-      sha256 = "01f0kvvaa94zkz5zzfaf8cbiihlp0l6627q3hmc0k154j3mdarmi";
-      system = "hu.dwim.util";
-      asd = "hu.dwim.util";
-    });
-    systems = [ "hu.dwim.util/i18n" ];
-    lispLibs = [ (getAttr "cl-l10n" pkgs) (getAttr "hu_dot_dwim_dot_asdf" pkgs) (getAttr "hu_dot_dwim_dot_util" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  hu_dot_dwim_dot_util_slash_linear-mapping = {
-    pname = "hu.dwim.util_linear-mapping";
-    version = "stable-git";
-    asds = [ "hu.dwim.util" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/hu.dwim.util/2021-12-30/hu.dwim.util-stable-git.tgz";
-      sha256 = "01f0kvvaa94zkz5zzfaf8cbiihlp0l6627q3hmc0k154j3mdarmi";
-      system = "hu.dwim.util";
-      asd = "hu.dwim.util";
-    });
-    systems = [ "hu.dwim.util/linear-mapping" ];
-    lispLibs = [ (getAttr "bordeaux-threads" pkgs) (getAttr "hu_dot_dwim_dot_asdf" pkgs) (getAttr "hu_dot_dwim_dot_util" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  hu_dot_dwim_dot_util_slash_mop = {
-    pname = "hu.dwim.util_mop";
-    version = "stable-git";
-    asds = [ "hu.dwim.util" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/hu.dwim.util/2021-12-30/hu.dwim.util-stable-git.tgz";
-      sha256 = "01f0kvvaa94zkz5zzfaf8cbiihlp0l6627q3hmc0k154j3mdarmi";
-      system = "hu.dwim.util";
-      asd = "hu.dwim.util";
-    });
-    systems = [ "hu.dwim.util/mop" ];
-    lispLibs = [ (getAttr "closer-mop" pkgs) (getAttr "hu_dot_dwim_dot_asdf" pkgs) (getAttr "hu_dot_dwim_dot_util" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  hu_dot_dwim_dot_util_slash_production = {
-    pname = "hu.dwim.util_production";
-    version = "stable-git";
-    asds = [ "hu.dwim.util" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/hu.dwim.util/2021-12-30/hu.dwim.util-stable-git.tgz";
-      sha256 = "01f0kvvaa94zkz5zzfaf8cbiihlp0l6627q3hmc0k154j3mdarmi";
-      system = "hu.dwim.util";
-      asd = "hu.dwim.util";
-    });
-    systems = [ "hu.dwim.util/production" ];
-    lispLibs = [ (getAttr "command-line-arguments" pkgs) (getAttr "hu_dot_dwim_dot_asdf" pkgs) (getAttr "hu_dot_dwim_dot_defclass-star_plus_hu_dot_dwim_dot_def" pkgs) (getAttr "hu_dot_dwim_dot_logger" pkgs) (getAttr "hu_dot_dwim_dot_perec_dot_postgresql" pkgs) (getAttr "hu_dot_dwim_dot_util" pkgs) (getAttr "hu_dot_dwim_dot_util_plus_iolib" pkgs) (getAttr "hu_dot_dwim_dot_web-server_dot_application" pkgs) (getAttr "iolib" pkgs) (getAttr "swank" pkgs) (getAttr "uiop" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  hu_dot_dwim_dot_util_slash_soap = {
-    pname = "hu.dwim.util_soap";
-    version = "stable-git";
-    asds = [ "hu.dwim.util" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/hu.dwim.util/2021-12-30/hu.dwim.util-stable-git.tgz";
-      sha256 = "01f0kvvaa94zkz5zzfaf8cbiihlp0l6627q3hmc0k154j3mdarmi";
-      system = "hu.dwim.util";
-      asd = "hu.dwim.util";
-    });
-    systems = [ "hu.dwim.util/soap" ];
-    lispLibs = [ (getAttr "babel" pkgs) (getAttr "babel-streams" pkgs) (getAttr "cl-ppcre" pkgs) (getAttr "cxml" pkgs) (getAttr "drakma" pkgs) (getAttr "hu_dot_dwim_dot_asdf" pkgs) (getAttr "hu_dot_dwim_dot_def" pkgs) (getAttr "hu_dot_dwim_dot_defclass-star_plus_hu_dot_dwim_dot_def" pkgs) (getAttr "hu_dot_dwim_dot_logger" pkgs) (getAttr "hu_dot_dwim_dot_quasi-quote_dot_xml" pkgs) (getAttr "hu_dot_dwim_dot_util" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  hu_dot_dwim_dot_util_slash_source = {
-    pname = "hu.dwim.util_source";
-    version = "stable-git";
-    asds = [ "hu.dwim.util" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/hu.dwim.util/2021-12-30/hu.dwim.util-stable-git.tgz";
-      sha256 = "01f0kvvaa94zkz5zzfaf8cbiihlp0l6627q3hmc0k154j3mdarmi";
-      system = "hu.dwim.util";
-      asd = "hu.dwim.util";
-    });
-    systems = [ "hu.dwim.util/source" ];
-    lispLibs = [ (getAttr "hu_dot_dwim_dot_asdf" pkgs) (getAttr "hu_dot_dwim_dot_def_plus_hu_dot_dwim_dot_common" pkgs) (getAttr "hu_dot_dwim_dot_syntax-sugar" pkgs) (getAttr "hu_dot_dwim_dot_util" pkgs) (getAttr "swank" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  hu_dot_dwim_dot_util_slash_standard-process = {
-    pname = "hu.dwim.util_standard-process";
-    version = "stable-git";
-    asds = [ "hu.dwim.util" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/hu.dwim.util/2021-12-30/hu.dwim.util-stable-git.tgz";
-      sha256 = "01f0kvvaa94zkz5zzfaf8cbiihlp0l6627q3hmc0k154j3mdarmi";
-      system = "hu.dwim.util";
-      asd = "hu.dwim.util";
-    });
-    systems = [ "hu.dwim.util/standard-process" ];
-    lispLibs = [ (getAttr "hu_dot_dwim_dot_asdf" pkgs) (getAttr "hu_dot_dwim_dot_def" pkgs) (getAttr "hu_dot_dwim_dot_defclass-star_plus_hu_dot_dwim_dot_def" pkgs) (getAttr "hu_dot_dwim_dot_delico" pkgs) (getAttr "hu_dot_dwim_dot_logger" pkgs) (getAttr "hu_dot_dwim_dot_util" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  hu_dot_dwim_dot_util_slash_temporary-files = {
-    pname = "hu.dwim.util_temporary-files";
-    version = "stable-git";
-    asds = [ "hu.dwim.util" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/hu.dwim.util/2021-12-30/hu.dwim.util-stable-git.tgz";
-      sha256 = "01f0kvvaa94zkz5zzfaf8cbiihlp0l6627q3hmc0k154j3mdarmi";
-      system = "hu.dwim.util";
-      asd = "hu.dwim.util";
-    });
-    systems = [ "hu.dwim.util/temporary-files" ];
-    lispLibs = [ (getAttr "hu_dot_dwim_dot_asdf" pkgs) (getAttr "hu_dot_dwim_dot_util_plus_iolib" pkgs) (getAttr "iolib" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  hu_dot_dwim_dot_util_slash_threads = {
-    pname = "hu.dwim.util_threads";
-    version = "stable-git";
-    asds = [ "hu.dwim.util" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/hu.dwim.util/2021-12-30/hu.dwim.util-stable-git.tgz";
-      sha256 = "01f0kvvaa94zkz5zzfaf8cbiihlp0l6627q3hmc0k154j3mdarmi";
-      system = "hu.dwim.util";
-      asd = "hu.dwim.util";
-    });
-    systems = [ "hu.dwim.util/threads" ];
-    lispLibs = [ (getAttr "bordeaux-threads" pkgs) (getAttr "hu_dot_dwim_dot_asdf" pkgs) (getAttr "hu_dot_dwim_dot_def" pkgs) (getAttr "hu_dot_dwim_dot_util" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  hu_dot_dwim_dot_util_slash_worker-group = {
-    pname = "hu.dwim.util_worker-group";
-    version = "stable-git";
-    asds = [ "hu.dwim.util" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/hu.dwim.util/2021-12-30/hu.dwim.util-stable-git.tgz";
-      sha256 = "01f0kvvaa94zkz5zzfaf8cbiihlp0l6627q3hmc0k154j3mdarmi";
-      system = "hu.dwim.util";
-      asd = "hu.dwim.util";
-    });
-    systems = [ "hu.dwim.util/worker-group" ];
-    lispLibs = [ (getAttr "bordeaux-threads" pkgs) (getAttr "hu_dot_dwim_dot_asdf" pkgs) (getAttr "hu_dot_dwim_dot_defclass-star_plus_hu_dot_dwim_dot_def" pkgs) (getAttr "hu_dot_dwim_dot_logger" pkgs) (getAttr "hu_dot_dwim_dot_util" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  hu_dot_dwim_dot_walker = {
-    pname = "hu.dwim.walker";
-    version = "stable-git";
-    asds = [ "hu.dwim.walker" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/hu.dwim.walker/2022-07-07/hu.dwim.walker-stable-git.tgz";
-      sha256 = "0sw7z5iml82sklxjy1wr42mbp2qqml49ci36d6xsckar0sqsc8vr";
-      system = "hu.dwim.walker";
-      asd = "hu.dwim.walker";
-    });
-    systems = [ "hu.dwim.walker" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "anaphora" pkgs) (getAttr "closer-mop" pkgs) (getAttr "contextl" pkgs) (getAttr "hu_dot_dwim_dot_asdf" pkgs) (getAttr "hu_dot_dwim_dot_def_plus_contextl" pkgs) (getAttr "hu_dot_dwim_dot_defclass-star_plus_hu_dot_dwim_dot_def" pkgs) (getAttr "hu_dot_dwim_dot_util" pkgs) (getAttr "metabang-bind" pkgs) ];
-  };
-  hu_dot_dwim_dot_walker_slash_documentation = {
-    pname = "hu.dwim.walker_documentation";
-    version = "stable-git";
-    asds = [ "hu.dwim.walker" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/hu.dwim.walker/2022-07-07/hu.dwim.walker-stable-git.tgz";
-      sha256 = "0sw7z5iml82sklxjy1wr42mbp2qqml49ci36d6xsckar0sqsc8vr";
-      system = "hu.dwim.walker";
-      asd = "hu.dwim.walker";
-    });
-    systems = [ "hu.dwim.walker/documentation" ];
-    lispLibs = [ (getAttr "hu_dot_dwim_dot_asdf" pkgs) (getAttr "hu_dot_dwim_dot_presentation" pkgs) (getAttr "hu_dot_dwim_dot_stefil_plus_hu_dot_dwim_dot_def" pkgs) (getAttr "hu_dot_dwim_dot_stefil_plus_swank" pkgs) (getAttr "hu_dot_dwim_dot_util" pkgs) (getAttr "hu_dot_dwim_dot_walker" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  hu_dot_dwim_dot_walker_slash_test = {
-    pname = "hu.dwim.walker_test";
-    version = "stable-git";
-    asds = [ "hu.dwim.walker" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/hu.dwim.walker/2022-07-07/hu.dwim.walker-stable-git.tgz";
-      sha256 = "0sw7z5iml82sklxjy1wr42mbp2qqml49ci36d6xsckar0sqsc8vr";
-      system = "hu.dwim.walker";
-      asd = "hu.dwim.walker";
-    });
-    systems = [ "hu.dwim.walker/test" ];
-    lispLibs = [ (getAttr "hu_dot_dwim_dot_asdf" pkgs) (getAttr "hu_dot_dwim_dot_stefil_plus_hu_dot_dwim_dot_def" pkgs) (getAttr "hu_dot_dwim_dot_stefil_plus_swank" pkgs) (getAttr "hu_dot_dwim_dot_util" pkgs) (getAttr "hu_dot_dwim_dot_walker" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  hu_dot_dwim_dot_web-server = {
-    pname = "hu.dwim.web-server";
-    version = "20220707-darcs";
-    asds = [ "hu.dwim.web-server" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/hu.dwim.web-server/2022-07-07/hu.dwim.web-server-20220707-darcs.tgz";
-      sha256 = "0kz8v5qlyj96rjvqic031f6c405zrpsyqnlkh2mvlsmc7rqg2zjf";
-      system = "hu.dwim.web-server";
-      asd = "hu.dwim.web-server";
-    });
-    systems = [ "hu.dwim.web-server" ];
-    lispLibs = [ (getAttr "babel" pkgs) (getAttr "babel-streams" pkgs) (getAttr "bordeaux-threads" pkgs) (getAttr "cffi" pkgs) (getAttr "cl_plus_ssl" pkgs) (getAttr "hu_dot_dwim_dot_asdf" pkgs) (getAttr "hu_dot_dwim_dot_common" pkgs) (getAttr "hu_dot_dwim_dot_computed-class" pkgs) (getAttr "hu_dot_dwim_dot_def" pkgs) (getAttr "hu_dot_dwim_dot_def_plus_cl-l10n" pkgs) (getAttr "hu_dot_dwim_dot_def_plus_contextl" pkgs) (getAttr "hu_dot_dwim_dot_def_plus_hu_dot_dwim_dot_delico" pkgs) (getAttr "hu_dot_dwim_dot_logger_plus_iolib" pkgs) (getAttr "hu_dot_dwim_dot_quasi-quote_dot_xml_plus_hu_dot_dwim_dot_quasi-quote_dot_js" pkgs) (getAttr "hu_dot_dwim_dot_syntax-sugar" pkgs) (getAttr "hu_dot_dwim_dot_uri" pkgs) (getAttr "hu_dot_dwim_dot_util" pkgs) (getAttr "hu_dot_dwim_dot_zlib" pkgs) (getAttr "iolib" pkgs) (getAttr "local-time" pkgs) (getAttr "parse-number" pkgs) (getAttr "rfc2109" pkgs) (getAttr "rfc2388-binary" pkgs) (getAttr "swank" pkgs) ];
-  };
-  hu_dot_dwim_dot_web-server_plus_swank = {
-    pname = "hu.dwim.web-server+swank";
-    version = "20220707-darcs";
-    asds = [ "hu.dwim.web-server+swank" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/hu.dwim.web-server/2022-07-07/hu.dwim.web-server-20220707-darcs.tgz";
-      sha256 = "0kz8v5qlyj96rjvqic031f6c405zrpsyqnlkh2mvlsmc7rqg2zjf";
-      system = "hu.dwim.web-server+swank";
-      asd = "hu.dwim.web-server+swank";
-    });
-    systems = [ "hu.dwim.web-server+swank" ];
-    lispLibs = [ (getAttr "hu_dot_dwim_dot_asdf" pkgs) (getAttr "hu_dot_dwim_dot_def_plus_swank" pkgs) (getAttr "hu_dot_dwim_dot_web-server" pkgs) ];
-  };
-  hu_dot_dwim_dot_web-server_dot_application = {
-    pname = "hu.dwim.web-server.application";
-    version = "20220707-darcs";
-    asds = [ "hu.dwim.web-server.application" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/hu.dwim.web-server/2022-07-07/hu.dwim.web-server-20220707-darcs.tgz";
-      sha256 = "0kz8v5qlyj96rjvqic031f6c405zrpsyqnlkh2mvlsmc7rqg2zjf";
-      system = "hu.dwim.web-server.application";
-      asd = "hu.dwim.web-server.application";
-    });
-    systems = [ "hu.dwim.web-server.application" ];
-    lispLibs = [ (getAttr "hu_dot_dwim_dot_asdf" pkgs) (getAttr "hu_dot_dwim_dot_web-server" pkgs) ];
-  };
-  hu_dot_dwim_dot_web-server_dot_application_plus_hu_dot_dwim_dot_perec = {
-    pname = "hu.dwim.web-server.application+hu.dwim.perec";
-    version = "20220707-darcs";
-    asds = [ "hu.dwim.web-server.application+hu.dwim.perec" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/hu.dwim.web-server/2022-07-07/hu.dwim.web-server-20220707-darcs.tgz";
-      sha256 = "0kz8v5qlyj96rjvqic031f6c405zrpsyqnlkh2mvlsmc7rqg2zjf";
-      system = "hu.dwim.web-server.application+hu.dwim.perec";
-      asd = "hu.dwim.web-server.application+hu.dwim.perec";
-    });
-    systems = [ "hu.dwim.web-server.application+hu.dwim.perec" ];
-    lispLibs = [ (getAttr "hu_dot_dwim_dot_asdf" pkgs) (getAttr "hu_dot_dwim_dot_perec" pkgs) (getAttr "hu_dot_dwim_dot_web-server_dot_application" pkgs) ];
-  };
-  hu_dot_dwim_dot_web-server_dot_application_dot_test = {
-    pname = "hu.dwim.web-server.application.test";
-    version = "20220707-darcs";
-    asds = [ "hu.dwim.web-server.application.test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/hu.dwim.web-server/2022-07-07/hu.dwim.web-server-20220707-darcs.tgz";
-      sha256 = "0kz8v5qlyj96rjvqic031f6c405zrpsyqnlkh2mvlsmc7rqg2zjf";
-      system = "hu.dwim.web-server.application.test";
-      asd = "hu.dwim.web-server.application.test";
-    });
-    systems = [ "hu.dwim.web-server.application.test" ];
-    lispLibs = [ (getAttr "hu_dot_dwim_dot_asdf" pkgs) (getAttr "hu_dot_dwim_dot_web-server_dot_application" pkgs) (getAttr "hu_dot_dwim_dot_web-server_dot_test" pkgs) ];
-  };
-  hu_dot_dwim_dot_web-server_dot_documentation = {
-    pname = "hu.dwim.web-server.documentation";
-    version = "20220707-darcs";
-    asds = [ "hu.dwim.web-server.documentation" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/hu.dwim.web-server/2022-07-07/hu.dwim.web-server-20220707-darcs.tgz";
-      sha256 = "0kz8v5qlyj96rjvqic031f6c405zrpsyqnlkh2mvlsmc7rqg2zjf";
-      system = "hu.dwim.web-server.documentation";
-      asd = "hu.dwim.web-server.documentation";
-    });
-    systems = [ "hu.dwim.web-server.documentation" ];
-    lispLibs = [ (getAttr "hu_dot_dwim_dot_asdf" pkgs) (getAttr "hu_dot_dwim_dot_presentation" pkgs) (getAttr "hu_dot_dwim_dot_web-server_dot_test" pkgs) ];
-  };
-  hu_dot_dwim_dot_web-server_dot_test = {
-    pname = "hu.dwim.web-server.test";
-    version = "20220707-darcs";
-    asds = [ "hu.dwim.web-server.test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/hu.dwim.web-server/2022-07-07/hu.dwim.web-server-20220707-darcs.tgz";
-      sha256 = "0kz8v5qlyj96rjvqic031f6c405zrpsyqnlkh2mvlsmc7rqg2zjf";
-      system = "hu.dwim.web-server.test";
-      asd = "hu.dwim.web-server.test";
-    });
-    systems = [ "hu.dwim.web-server.test" ];
-    lispLibs = [ (getAttr "drakma" pkgs) (getAttr "hu_dot_dwim_dot_asdf" pkgs) (getAttr "hu_dot_dwim_dot_computed-class_plus_hu_dot_dwim_dot_logger" pkgs) (getAttr "hu_dot_dwim_dot_stefil_plus_hu_dot_dwim_dot_def_plus_swank" pkgs) (getAttr "hu_dot_dwim_dot_web-server" pkgs) (getAttr "hu_dot_dwim_dot_web-server_plus_swank" pkgs) ];
-  };
-  hu_dot_dwim_dot_web-server_dot_websocket = {
-    pname = "hu.dwim.web-server.websocket";
-    version = "20220707-darcs";
-    asds = [ "hu.dwim.web-server.websocket" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/hu.dwim.web-server/2022-07-07/hu.dwim.web-server-20220707-darcs.tgz";
-      sha256 = "0kz8v5qlyj96rjvqic031f6c405zrpsyqnlkh2mvlsmc7rqg2zjf";
-      system = "hu.dwim.web-server.websocket";
-      asd = "hu.dwim.web-server.websocket";
-    });
-    systems = [ "hu.dwim.web-server.websocket" ];
-    lispLibs = [ (getAttr "cl-base64" pkgs) (getAttr "hu_dot_dwim_dot_asdf" pkgs) (getAttr "hu_dot_dwim_dot_web-server" pkgs) (getAttr "ironclad" pkgs) ];
-  };
-  hu_dot_dwim_dot_zlib = {
-    pname = "hu.dwim.zlib";
-    version = "stable-git";
-    asds = [ "hu.dwim.zlib" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/hu.dwim.zlib/2022-07-07/hu.dwim.zlib-stable-git.tgz";
-      sha256 = "1yrsbl6rmsp6sdaj9yzwx1bpbs529akndxnpplafw31195khnxm1";
-      system = "hu.dwim.zlib";
-      asd = "hu.dwim.zlib";
-    });
-    systems = [ "hu.dwim.zlib" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cffi" pkgs) (getAttr "cffi-libffi" pkgs) (getAttr "hu_dot_dwim_dot_asdf" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  hu_dot_dwim_dot_zlib_slash_fancy = {
-    pname = "hu.dwim.zlib_fancy";
-    version = "stable-git";
-    asds = [ "hu.dwim.zlib" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/hu.dwim.zlib/2022-07-07/hu.dwim.zlib-stable-git.tgz";
-      sha256 = "1yrsbl6rmsp6sdaj9yzwx1bpbs529akndxnpplafw31195khnxm1";
-      system = "hu.dwim.zlib";
-      asd = "hu.dwim.zlib";
-    });
-    systems = [ "hu.dwim.zlib/fancy" ];
-    lispLibs = [ (getAttr "hu_dot_dwim_dot_asdf" pkgs) (getAttr "hu_dot_dwim_dot_def_plus_hu_dot_dwim_dot_common" pkgs) (getAttr "hu_dot_dwim_dot_syntax-sugar" pkgs) (getAttr "hu_dot_dwim_dot_zlib" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  hu_dot_dwim_dot_zlib_slash_test = {
-    pname = "hu.dwim.zlib_test";
-    version = "stable-git";
-    asds = [ "hu.dwim.zlib" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/hu.dwim.zlib/2022-07-07/hu.dwim.zlib-stable-git.tgz";
-      sha256 = "1yrsbl6rmsp6sdaj9yzwx1bpbs529akndxnpplafw31195khnxm1";
-      system = "hu.dwim.zlib";
-      asd = "hu.dwim.zlib";
-    });
-    systems = [ "hu.dwim.zlib/test" ];
-    lispLibs = [ (getAttr "hu_dot_dwim_dot_asdf" pkgs) (getAttr "hu_dot_dwim_dot_stefil" pkgs) (getAttr "hu_dot_dwim_dot_zlib" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  huffman = {
-    pname = "huffman";
-    version = "20181018-git";
-    asds = [ "huffman" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/huffman/2018-10-18/huffman-20181018-git.tgz";
-      sha256 = "05b3ql5szzi4vsry76i76483mxf9m5i9620hdshykh5rbfiarvcx";
-      system = "huffman";
-      asd = "huffman";
-    });
-    systems = [ "huffman" ];
-    lispLibs = [  ];
-  };
-  humbler = {
-    pname = "humbler";
-    version = "20190710-git";
-    asds = [ "humbler" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/humbler/2019-07-10/humbler-20190710-git.tgz";
-      sha256 = "0s7li33q3ww1ka76v6pdjv5pnvwgs695wj9ciijy9cqxxp2x8vx0";
-      system = "humbler";
-      asd = "humbler";
-    });
-    systems = [ "humbler" ];
-    lispLibs = [ (getAttr "cl-ppcre" pkgs) (getAttr "closer-mop" pkgs) (getAttr "local-time" pkgs) (getAttr "north-core" pkgs) (getAttr "trivial-mimes" pkgs) (getAttr "yason" pkgs) ];
-  };
-  hunchensocket = {
-    pname = "hunchensocket";
-    version = "20221106-git";
-    asds = [ "hunchensocket" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/hunchensocket/2022-11-06/hunchensocket-20221106-git.tgz";
-      sha256 = "1vhd009lwl62l1czmhsalblxmyz4x9v3nspjflpajwm1db5rnd7h";
-      system = "hunchensocket";
-      asd = "hunchensocket";
-    });
-    systems = [ "hunchensocket" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "bordeaux-threads" pkgs) (getAttr "chunga" pkgs) (getAttr "cl-base64" pkgs) (getAttr "cl-fad" pkgs) (getAttr "flexi-streams" pkgs) (getAttr "hunchentoot" pkgs) (getAttr "sha1" pkgs) (getAttr "trivial-backtrace" pkgs) (getAttr "trivial-utf-8" pkgs) ];
-  };
-  hunchensocket-tests = {
-    pname = "hunchensocket-tests";
-    version = "20221106-git";
-    asds = [ "hunchensocket-tests" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/hunchensocket/2022-11-06/hunchensocket-20221106-git.tgz";
-      sha256 = "1vhd009lwl62l1czmhsalblxmyz4x9v3nspjflpajwm1db5rnd7h";
-      system = "hunchensocket-tests";
-      asd = "hunchensocket";
-    });
-    systems = [ "hunchensocket-tests" ];
-    lispLibs = [ (getAttr "fiasco" pkgs) (getAttr "hunchensocket" pkgs) ];
-  };
-  hunchentools = {
-    pname = "hunchentools";
-    version = "20161204-git";
-    asds = [ "hunchentools" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/hunchentools/2016-12-04/hunchentools-20161204-git.tgz";
-      sha256 = "12r1ml1xxhyz646nnxqzixfisljjaracwp9jhwl3wb285qbmai4b";
-      system = "hunchentools";
-      asd = "hunchentools";
-    });
-    systems = [ "hunchentools" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cl-ppcre" pkgs) (getAttr "hunchentoot" pkgs) (getAttr "ironclad" pkgs) ];
-  };
-  hunchentoot = {
-    pname = "hunchentoot";
-    version = "v1.3.0";
-    asds = [ "hunchentoot" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/hunchentoot/2020-06-10/hunchentoot-v1.3.0.tgz";
-      sha256 = "1z0m45lp6rv59g69l44gj3q3d2bmjlhqzpii0vgkniam21dcimy9";
-      system = "hunchentoot";
-      asd = "hunchentoot";
-    });
-    systems = [ "hunchentoot" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "bordeaux-threads" pkgs) (getAttr "chunga" pkgs) (getAttr "cl_plus_ssl" pkgs) (getAttr "cl-base64" pkgs) (getAttr "cl-fad" pkgs) (getAttr "cl-ppcre" pkgs) (getAttr "flexi-streams" pkgs) (getAttr "md5" pkgs) (getAttr "rfc2388" pkgs) (getAttr "trivial-backtrace" pkgs) (getAttr "usocket" pkgs) ];
-  };
-  hunchentoot-auth = {
-    pname = "hunchentoot-auth";
-    version = "20140113-git";
-    asds = [ "hunchentoot-auth" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/hunchentoot-auth/2014-01-13/hunchentoot-auth-20140113-git.tgz";
-      sha256 = "1bc70lh2jvk6gqmhczgv0indxk6j5whxbh7gylrlbv16041sdkbj";
-      system = "hunchentoot-auth";
-      asd = "hunchentoot-auth";
-    });
-    systems = [ "hunchentoot-auth" ];
-    lispLibs = [ (getAttr "bordeaux-threads" pkgs) (getAttr "cl-store" pkgs) (getAttr "cl-who" pkgs) (getAttr "hunchentoot" pkgs) ];
-  };
-  hunchentoot-cgi = {
-    pname = "hunchentoot-cgi";
-    version = "20140211-git";
-    asds = [ "hunchentoot-cgi" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/hunchentoot-cgi/2014-02-11/hunchentoot-cgi-20140211-git.tgz";
-      sha256 = "0al6qfs6661avhywsqxh3nwyhl1d1gip3yx57b8siczjarpgpawc";
-      system = "hunchentoot-cgi";
-      asd = "hunchentoot-cgi";
-    });
-    systems = [ "hunchentoot-cgi" ];
-    lispLibs = [ (getAttr "hunchentoot" pkgs) (getAttr "puri" pkgs) ];
-  };
-  hunchentoot-dev = {
-    pname = "hunchentoot-dev";
-    version = "v1.3.0";
-    asds = [ "hunchentoot-dev" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/hunchentoot/2020-06-10/hunchentoot-v1.3.0.tgz";
-      sha256 = "1z0m45lp6rv59g69l44gj3q3d2bmjlhqzpii0vgkniam21dcimy9";
-      system = "hunchentoot-dev";
-      asd = "hunchentoot";
-    });
-    systems = [ "hunchentoot-dev" ];
-    lispLibs = [ (getAttr "cxml-stp" pkgs) (getAttr "hunchentoot" pkgs) (getAttr "hunchentoot-test" pkgs) (getAttr "xpath" pkgs) (getAttr "swank" pkgs) ];
-  };
-  hunchentoot-errors = {
-    pname = "hunchentoot-errors";
-    version = "20221106-git";
-    asds = [ "hunchentoot-errors" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/hunchentoot-errors/2022-11-06/hunchentoot-errors-20221106-git.tgz";
-      sha256 = "1wv4p1wyz40kk9z4dabyk4xqlv78zq3inhvaqnwrhxww2w2cim5z";
-      system = "hunchentoot-errors";
-      asd = "hunchentoot-errors";
-    });
-    systems = [ "hunchentoot-errors" ];
-    lispLibs = [ (getAttr "cl-mimeparse" pkgs) (getAttr "hunchentoot" pkgs) (getAttr "parse-number" pkgs) (getAttr "string-case" pkgs) ];
-  };
-  hunchentoot-multi-acceptor = {
-    pname = "hunchentoot-multi-acceptor";
-    version = "20220331-git";
-    asds = [ "hunchentoot-multi-acceptor" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/hunchentoot-multi-acceptor/2022-03-31/hunchentoot-multi-acceptor-20220331-git.tgz";
-      sha256 = "0m42dw8x0bp03n4hx4ppf45gjg14igf69z4rn7dslch6km58mrha";
-      system = "hunchentoot-multi-acceptor";
-      asd = "hunchentoot-multi-acceptor";
-    });
-    systems = [ "hunchentoot-multi-acceptor" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "str" pkgs) (getAttr "hunchentoot" pkgs) (getAttr "usocket" pkgs) ];
-  };
-  hunchentoot-single-signon = {
-    pname = "hunchentoot-single-signon";
-    version = "20131111-git";
-    asds = [ "hunchentoot-single-signon" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/hunchentoot-single-signon/2013-11-11/hunchentoot-single-signon-20131111-git.tgz";
-      sha256 = "0dh16k4105isqwnkl52m55m6cbl7g8wmcrym8175r2zr6qcbghq8";
-      system = "hunchentoot-single-signon";
-      asd = "hunchentoot-single-signon";
-    });
-    systems = [ "hunchentoot-single-signon" ];
-    lispLibs = [ (getAttr "cl-base64" pkgs) (getAttr "cl-gss" pkgs) (getAttr "hunchentoot" pkgs) (getAttr "split-sequence" pkgs) ];
-  };
-  hunchentoot-test = {
-    pname = "hunchentoot-test";
-    version = "v1.3.0";
-    asds = [ "hunchentoot-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/hunchentoot/2020-06-10/hunchentoot-v1.3.0.tgz";
-      sha256 = "1z0m45lp6rv59g69l44gj3q3d2bmjlhqzpii0vgkniam21dcimy9";
-      system = "hunchentoot-test";
-      asd = "hunchentoot";
-    });
-    systems = [ "hunchentoot-test" ];
-    lispLibs = [ (getAttr "cl-ppcre" pkgs) (getAttr "cl-who" pkgs) (getAttr "drakma" pkgs) (getAttr "hunchentoot" pkgs) ];
-  };
-  hyperluminal-mem = {
-    pname = "hyperluminal-mem";
-    version = "20210630-git";
-    asds = [ "hyperluminal-mem" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/hyperluminal-mem/2021-06-30/hyperluminal-mem-20210630-git.tgz";
-      sha256 = "0qp00g43v518j0wccqnpglkrpikagnn9naphb29wbil6k7y9y7r9";
-      system = "hyperluminal-mem";
-      asd = "hyperluminal-mem";
-    });
-    systems = [ "hyperluminal-mem" ];
-    lispLibs = [ (getAttr "cffi" pkgs) (getAttr "osicat" pkgs) (getAttr "stmx" pkgs) (getAttr "swap-bytes" pkgs) (getAttr "trivial-features" pkgs) ];
-  };
-  hyperluminal-mem-test = {
-    pname = "hyperluminal-mem-test";
-    version = "20210630-git";
-    asds = [ "hyperluminal-mem-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/hyperluminal-mem/2021-06-30/hyperluminal-mem-20210630-git.tgz";
-      sha256 = "0qp00g43v518j0wccqnpglkrpikagnn9naphb29wbil6k7y9y7r9";
-      system = "hyperluminal-mem-test";
-      asd = "hyperluminal-mem-test";
-    });
-    systems = [ "hyperluminal-mem-test" ];
-    lispLibs = [ (getAttr "fiveam" pkgs) (getAttr "hyperluminal-mem" pkgs) (getAttr "log4cl" pkgs) ];
-  };
-  hyperobject = {
-    pname = "hyperobject";
-    version = "20201016-git";
-    asds = [ "hyperobject" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/hyperobject/2020-10-16/hyperobject-20201016-git.tgz";
-      sha256 = "1ggqlvwcd52c2d4k8csy7qciaq7lyldi0rpk3b9x4rw4gllcch8n";
-      system = "hyperobject";
-      asd = "hyperobject";
-    });
-    systems = [ "hyperobject" ];
-    lispLibs = [ (getAttr "clsql" pkgs) (getAttr "kmrcl" pkgs) ];
-  };
-  hyperobject_slash_test = {
-    pname = "hyperobject_test";
-    version = "20201016-git";
-    asds = [ "hyperobject" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/hyperobject/2020-10-16/hyperobject-20201016-git.tgz";
-      sha256 = "1ggqlvwcd52c2d4k8csy7qciaq7lyldi0rpk3b9x4rw4gllcch8n";
-      system = "hyperobject";
-      asd = "hyperobject";
-    });
-    systems = [ "hyperobject/test" ];
-    lispLibs = [ (getAttr "hyperobject" pkgs) (getAttr "rt" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  hyperspec = {
-    pname = "hyperspec";
-    version = "20181210-git";
-    asds = [ "hyperspec" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/hyperspec/2018-12-10/hyperspec-20181210-git.tgz";
-      sha256 = "0zh1dq2451xw7yiycdr2mrcjx6rgnqnm8c8l9zhhn7hnf51b4x5l";
-      system = "hyperspec";
-      asd = "hyperspec";
-    });
-    systems = [ "hyperspec" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) ];
-  };
-  ia-hash-table = {
-    pname = "ia-hash-table";
-    version = "20160318-git";
-    asds = [ "ia-hash-table" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/ia-hash-table/2016-03-18/ia-hash-table-20160318-git.tgz";
-      sha256 = "11wnwjxa528yyjnfsvw315hyvq3lc996dwx83isdg4hlirj3amy4";
-      system = "ia-hash-table";
-      asd = "ia-hash-table";
-    });
-    systems = [ "ia-hash-table" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "split-sequence" pkgs) ];
-  };
-  ia-hash-table_dot_test = {
-    pname = "ia-hash-table.test";
-    version = "20160318-git";
-    asds = [ "ia-hash-table.test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/ia-hash-table/2016-03-18/ia-hash-table-20160318-git.tgz";
-      sha256 = "11wnwjxa528yyjnfsvw315hyvq3lc996dwx83isdg4hlirj3amy4";
-      system = "ia-hash-table.test";
-      asd = "ia-hash-table.test";
-    });
-    systems = [ "ia-hash-table.test" ];
-    lispLibs = [ (getAttr "cl-interpol" pkgs) (getAttr "ia-hash-table" pkgs) (getAttr "log4cl" pkgs) (getAttr "mw-equiv" pkgs) (getAttr "prove" pkgs) (getAttr "prove-asdf" pkgs) ];
-  };
-  iclendar = {
-    pname = "iclendar";
-    version = "20190710-git";
-    asds = [ "iclendar" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/iclendar/2019-07-10/iclendar-20190710-git.tgz";
-      sha256 = "0nyfpv433mvxx61jg7nyj6qc89jr70dmlrkgd94056waddii6h6c";
-      system = "iclendar";
-      asd = "iclendar";
-    });
-    systems = [ "iclendar" ];
-    lispLibs = [ (getAttr "cl-base64" pkgs) (getAttr "closer-mop" pkgs) (getAttr "documentation-utils" pkgs) (getAttr "trivial-gray-streams" pkgs) ];
-  };
-  iconv = {
-    pname = "iconv";
-    version = "20171227-git";
-    asds = [ "iconv" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-iconv/2017-12-27/cl-iconv-20171227-git.tgz";
-      sha256 = "1lpw95c02inifhdh9kkab9q92i5w9zd788dww1wly2p0a6kyx9wg";
-      system = "iconv";
-      asd = "iconv";
-    });
-    systems = [ "iconv" ];
-    lispLibs = [ (getAttr "cffi" pkgs) (getAttr "cffi-grovel" pkgs) ];
-  };
-  id3v2 = {
-    pname = "id3v2";
-    version = "20160208-git";
-    asds = [ "id3v2" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/id3v2/2016-02-08/id3v2-20160208-git.tgz";
-      sha256 = "0x017dfh9m80b8ml2vsgdcfs4kv7p06yzmwdilf1k8nfsilwpfra";
-      system = "id3v2";
-      asd = "id3v2";
-    });
-    systems = [ "id3v2" ];
-    lispLibs = [ (getAttr "babel" pkgs) (getAttr "trivial-gray-streams" pkgs) ];
-  };
-  id3v2-test = {
-    pname = "id3v2-test";
-    version = "20160208-git";
-    asds = [ "id3v2-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/id3v2/2016-02-08/id3v2-20160208-git.tgz";
-      sha256 = "0x017dfh9m80b8ml2vsgdcfs4kv7p06yzmwdilf1k8nfsilwpfra";
-      system = "id3v2-test";
-      asd = "id3v2-test";
-    });
-    systems = [ "id3v2-test" ];
-    lispLibs = [ (getAttr "flexi-streams" pkgs) (getAttr "id3v2" pkgs) (getAttr "prove" pkgs) (getAttr "prove-asdf" pkgs) ];
-  };
-  identifier-pool = {
-    pname = "identifier-pool";
-    version = "20220707-git";
-    asds = [ "identifier-pool" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/identifier-pool/2022-07-07/identifier-pool-20220707-git.tgz";
-      sha256 = "01fs960s02nf8m3a5v95r12magq9rvgcc3awcppqa7c8yg7qdc55";
-      system = "identifier-pool";
-      asd = "identifier-pool";
-    });
-    systems = [ "identifier-pool" ];
-    lispLibs = [ (getAttr "dynamic-array" pkgs) (getAttr "mfiano-utils" pkgs) ];
-  };
-  idna = {
-    pname = "idna";
-    version = "20120107-git";
-    asds = [ "idna" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/idna/2012-01-07/idna-20120107-git.tgz";
-      sha256 = "00nbr3mffxhlq14gg9d16pa6691s4qh35inyw76v906s77khm5a2";
-      system = "idna";
-      asd = "idna";
-    });
-    systems = [ "idna" ];
-    lispLibs = [ (getAttr "split-sequence" pkgs) ];
-  };
-  ieee-floats = {
-    pname = "ieee-floats";
-    version = "20220220-git";
-    asds = [ "ieee-floats" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/ieee-floats/2022-02-20/ieee-floats-20220220-git.tgz";
-      sha256 = "0qp2dxq9jzndjfmc8nh0fvcwrrxjm7f012biczipifjckp9gxw7d";
-      system = "ieee-floats";
-      asd = "ieee-floats";
-    });
-    systems = [ "ieee-floats" ];
-    lispLibs = [  ];
-  };
-  ieee-floats_slash_tests = {
-    pname = "ieee-floats_tests";
-    version = "20220220-git";
-    asds = [ "ieee-floats" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/ieee-floats/2022-02-20/ieee-floats-20220220-git.tgz";
-      sha256 = "0qp2dxq9jzndjfmc8nh0fvcwrrxjm7f012biczipifjckp9gxw7d";
-      system = "ieee-floats";
-      asd = "ieee-floats";
-    });
-    systems = [ "ieee-floats/tests" ];
-    lispLibs = [ (getAttr "fiveam" pkgs) (getAttr "ieee-floats" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  illogical-pathnames = {
-    pname = "illogical-pathnames";
-    version = "20160825-git";
-    asds = [ "illogical-pathnames" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/illogical-pathnames/2016-08-25/illogical-pathnames-20160825-git.tgz";
-      sha256 = "1yjs1lzgak1d3hz2q6sbac98vqgdxp0dz72fskpz73vrbp6h6da5";
-      system = "illogical-pathnames";
-      asd = "illogical-pathnames";
-    });
-    systems = [ "illogical-pathnames" ];
-    lispLibs = [  ];
-  };
-  illusion = {
-    pname = "illusion";
-    version = "20180831-git";
-    asds = [ "illusion" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/illusion/2018-08-31/illusion-20180831-git.tgz";
-      sha256 = "05wik6q8hlhm7szzymkljfigcp7z35j6rz2ihsmng1y6zq9crk7z";
-      system = "illusion";
-      asd = "illusion";
-    });
-    systems = [ "illusion" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "let-over-lambda" pkgs) (getAttr "named-readtables" pkgs) ];
-  };
-  illusion-test = {
-    pname = "illusion-test";
-    version = "20180831-git";
-    asds = [ "illusion-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/illusion/2018-08-31/illusion-20180831-git.tgz";
-      sha256 = "05wik6q8hlhm7szzymkljfigcp7z35j6rz2ihsmng1y6zq9crk7z";
-      system = "illusion-test";
-      asd = "illusion-test";
-    });
-    systems = [ "illusion-test" ];
-    lispLibs = [ (getAttr "fiveam" pkgs) (getAttr "illusion" pkgs) (getAttr "split-sequence" pkgs) ];
-  };
-  image = {
-    pname = "image";
-    version = "20120107-git";
-    asds = [ "image" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/image/2012-01-07/image-20120107-git.tgz";
-      sha256 = "04by1snzw2kpw208fdi2azxbq5y2q2r6x8zkdh7jk43amkr18f5k";
-      system = "image";
-      asd = "image";
-    });
-    systems = [ "image" ];
-    lispLibs = [ (getAttr "flexi-streams" pkgs) (getAttr "gzip-stream" pkgs) (getAttr "skippy" pkgs) (getAttr "zpng" pkgs) ];
-  };
-  image-test = {
-    pname = "image-test";
-    version = "20211020-git";
-    asds = [ "image-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-png/2021-10-20/cl-png-20211020-git.tgz";
-      sha256 = "17xcb9ps5vf3if61blmx7cpfrz3gsw7jk8d5zv3f4cq8jrriqdx4";
-      system = "image-test";
-      asd = "image-test";
-    });
-    systems = [ "image-test" ];
-    lispLibs = [ (getAttr "png" pkgs) ];
-  };
-  image-utility = {
-    pname = "image-utility";
-    version = "20200427-git";
-    asds = [ "image-utility" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/sucle/2020-04-27/sucle-20200427-git.tgz";
-      sha256 = "033akkn9zxc6qdgycgxgybx3v23638245xrx29x2cbwnvg3i1q34";
-      system = "image-utility";
-      asd = "image-utility";
-    });
-    systems = [ "image-utility" ];
-    lispLibs = [ (getAttr "opticl" pkgs) ];
-  };
-  imago = {
-    pname = "imago";
-    version = "20221106-git";
-    asds = [ "imago" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/imago/2022-11-06/imago-20221106-git.tgz";
-      sha256 = "1s2adbz84ibp8j4f4zxb0c45qcrih4cdl44z1z379rvj8wqmy1gn";
-      system = "imago";
-      asd = "imago";
-    });
-    systems = [ "imago" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "array-operations" pkgs) (getAttr "cl-jpeg" pkgs) (getAttr "flexi-streams" pkgs) (getAttr "serapeum" pkgs) (getAttr "trivial-gray-streams" pkgs) (getAttr "zlib" pkgs) ];
-  };
-  imago_slash_bit-io = {
-    pname = "imago_bit-io";
-    version = "20221106-git";
-    asds = [ "imago" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/imago/2022-11-06/imago-20221106-git.tgz";
-      sha256 = "1s2adbz84ibp8j4f4zxb0c45qcrih4cdl44z1z379rvj8wqmy1gn";
-      system = "imago";
-      asd = "imago";
-    });
-    systems = [ "imago/bit-io" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "serapeum" pkgs) (getAttr "trivial-gray-streams" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  imago_slash_jpeg-turbo = {
-    pname = "imago_jpeg-turbo";
-    version = "20221106-git";
-    asds = [ "imago" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/imago/2022-11-06/imago-20221106-git.tgz";
-      sha256 = "1s2adbz84ibp8j4f4zxb0c45qcrih4cdl44z1z379rvj8wqmy1gn";
-      system = "imago";
-      asd = "imago";
-    });
-    systems = [ "imago/jpeg-turbo" ];
-    lispLibs = [ (getAttr "imago" pkgs) (getAttr "jpeg-turbo" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  imago_slash_jupyter = {
-    pname = "imago_jupyter";
-    version = "20221106-git";
-    asds = [ "imago" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/imago/2022-11-06/imago-20221106-git.tgz";
-      sha256 = "1s2adbz84ibp8j4f4zxb0c45qcrih4cdl44z1z379rvj8wqmy1gn";
-      system = "imago";
-      asd = "imago";
-    });
-    systems = [ "imago/jupyter" ];
-    lispLibs = [ (getAttr "cl-base64" pkgs) (getAttr "common-lisp-jupyter" pkgs) (getAttr "imago" pkgs) (getAttr "jpeg-turbo" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  imago_slash_pngload = {
-    pname = "imago_pngload";
-    version = "20221106-git";
-    asds = [ "imago" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/imago/2022-11-06/imago-20221106-git.tgz";
-      sha256 = "1s2adbz84ibp8j4f4zxb0c45qcrih4cdl44z1z379rvj8wqmy1gn";
-      system = "imago";
-      asd = "imago";
-    });
-    systems = [ "imago/pngload" ];
-    lispLibs = [ (getAttr "imago" pkgs) (getAttr "pngload" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  imago_slash_tests = {
-    pname = "imago_tests";
-    version = "20221106-git";
-    asds = [ "imago" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/imago/2022-11-06/imago-20221106-git.tgz";
-      sha256 = "1s2adbz84ibp8j4f4zxb0c45qcrih4cdl44z1z379rvj8wqmy1gn";
-      system = "imago";
-      asd = "imago";
-    });
-    systems = [ "imago/tests" ];
-    lispLibs = [ (getAttr "fiveam" pkgs) (getAttr "imago" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  immutable-struct = {
-    pname = "immutable-struct";
-    version = "20150709-git";
-    asds = [ "immutable-struct" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/immutable-struct/2015-07-09/immutable-struct-20150709-git.tgz";
-      sha256 = "02868d21hcc0kc3jw8afx23kj6iy1vyf2pddn8yqfrkpldhd0rv9";
-      system = "immutable-struct";
-      asd = "immutable-struct";
-    });
-    systems = [ "immutable-struct" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "closer-mop" pkgs) (getAttr "trivia" pkgs) ];
-  };
-  in-nomine = {
-    pname = "in-nomine";
-    version = "20221106-git";
-    asds = [ "in-nomine" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/in-nomine/2022-11-06/in-nomine-20221106-git.tgz";
-      sha256 = "1r28c3c7bbk91fk4w80x2mm0n3czkavip9qfbvgyd19mlarkdwv5";
-      system = "in-nomine";
-      asd = "in-nomine";
-    });
-    systems = [ "in-nomine" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) ];
-  };
-  in-nomine_slash_test = {
-    pname = "in-nomine_test";
-    version = "20221106-git";
-    asds = [ "in-nomine" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/in-nomine/2022-11-06/in-nomine-20221106-git.tgz";
-      sha256 = "1r28c3c7bbk91fk4w80x2mm0n3czkavip9qfbvgyd19mlarkdwv5";
-      system = "in-nomine";
-      asd = "in-nomine";
-    });
-    systems = [ "in-nomine/test" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "closer-mop" pkgs) (getAttr "fiveam" pkgs) (getAttr "in-nomine" pkgs) (getAttr "introspect-environment" pkgs) (getAttr "lisp-namespace" pkgs) (getAttr "uiop" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  incf-cl = {
-    pname = "incf-cl";
-    version = "20190710-git";
-    asds = [ "incf-cl" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/incf-cl/2019-07-10/incf-cl-20190710-git.tgz";
-      sha256 = "1yvwb57dzccvd2lw2h3mwxgbi8ml3cgkyy8kl8hwhd4s8c016ibb";
-      system = "incf-cl";
-      asd = "incf-cl";
-    });
-    systems = [ "incf-cl" ];
-    lispLibs = [ (getAttr "cl-ppcre" pkgs) ];
-  };
-  incf-cl_slash_tests = {
-    pname = "incf-cl_tests";
-    version = "20190710-git";
-    asds = [ "incf-cl" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/incf-cl/2019-07-10/incf-cl-20190710-git.tgz";
-      sha256 = "1yvwb57dzccvd2lw2h3mwxgbi8ml3cgkyy8kl8hwhd4s8c016ibb";
-      system = "incf-cl";
-      asd = "incf-cl";
-    });
-    systems = [ "incf-cl/tests" ];
-    lispLibs = [ (getAttr "fiasco" pkgs) (getAttr "incf-cl" pkgs) (getAttr "uiop" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  incognito-keywords = {
-    pname = "incognito-keywords";
-    version = "1.1";
-    asds = [ "incognito-keywords" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/incognito-keywords/2013-01-28/incognito-keywords-1.1.tgz";
-      sha256 = "1ignvz8v7bq8z9x22skzp1xsna2bxqcw22zh5sp9v2ndbjhqri5c";
-      system = "incognito-keywords";
-      asd = "incognito-keywords";
-    });
-    systems = [ "incognito-keywords" ];
-    lispLibs = [ (getAttr "enhanced-eval-when" pkgs) (getAttr "map-bind" pkgs) ];
-  };
-  incongruent-methods = {
-    pname = "incongruent-methods";
-    version = "20130312-git";
-    asds = [ "incongruent-methods" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/incongruent-methods/2013-03-12/incongruent-methods-20130312-git.tgz";
-      sha256 = "15xfbpnqymbkk92vbirvccxcphyvjmxcw02yv1zs6c78aaf4ms9z";
-      system = "incongruent-methods";
-      asd = "incongruent-methods";
-    });
-    systems = [ "incongruent-methods" ];
-    lispLibs = [ (getAttr "closer-mop" pkgs) ];
-  };
-  inferior-shell = {
-    pname = "inferior-shell";
-    version = "20200925-git";
-    asds = [ "inferior-shell" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/inferior-shell/2020-09-25/inferior-shell-20200925-git.tgz";
-      sha256 = "02qx37zzk5j4xmwh77k2qa2wvnzvaj6qml5dh2q7b6b1ljvgcj4m";
-      system = "inferior-shell";
-      asd = "inferior-shell";
-    });
-    systems = [ "inferior-shell" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "fare-mop" pkgs) (getAttr "fare-quasiquote-extras" pkgs) (getAttr "fare-utils" pkgs) (getAttr "trivia" pkgs) (getAttr "trivia_dot_quasiquote" pkgs) ];
-  };
-  inferior-shell_slash_test = {
-    pname = "inferior-shell_test";
-    version = "20200925-git";
-    asds = [ "inferior-shell" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/inferior-shell/2020-09-25/inferior-shell-20200925-git.tgz";
-      sha256 = "02qx37zzk5j4xmwh77k2qa2wvnzvaj6qml5dh2q7b6b1ljvgcj4m";
-      system = "inferior-shell";
-      asd = "inferior-shell";
-    });
-    systems = [ "inferior-shell/test" ];
-    lispLibs = [ (getAttr "hu_dot_dwim_dot_stefil" pkgs) (getAttr "inferior-shell" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  infix = {
-    pname = "infix";
-    version = "20210411-git";
-    asds = [ "infix" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/femlisp/2021-04-11/femlisp-20210411-git.tgz";
-      sha256 = "08l2x1jq3vfhh8m14wijd8c78n589cy5hd2py2jfj3yfiqyipasa";
-      system = "infix";
-      asd = "infix";
-    });
-    systems = [ "infix" ];
-    lispLibs = [  ];
-  };
-  infix-dollar-reader = {
-    pname = "infix-dollar-reader";
-    version = "20121013-git";
-    asds = [ "infix-dollar-reader" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/infix-dollar-reader/2012-10-13/infix-dollar-reader-20121013-git.tgz";
-      sha256 = "11sf4kqcw8s0zcjz1qpbhkn33rizvq5ijl6xp59q9wadvkd0wx0w";
-      system = "infix-dollar-reader";
-      asd = "infix-dollar-reader";
-    });
-    systems = [ "infix-dollar-reader" ];
-    lispLibs = [ (getAttr "cl-syntax" pkgs) ];
-  };
-  infix-dollar-reader-test = {
-    pname = "infix-dollar-reader-test";
-    version = "20121013-git";
-    asds = [ "infix-dollar-reader-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/infix-dollar-reader/2012-10-13/infix-dollar-reader-20121013-git.tgz";
-      sha256 = "11sf4kqcw8s0zcjz1qpbhkn33rizvq5ijl6xp59q9wadvkd0wx0w";
-      system = "infix-dollar-reader-test";
-      asd = "infix-dollar-reader-test";
-    });
-    systems = [ "infix-dollar-reader-test" ];
-    lispLibs = [ (getAttr "infix-dollar-reader" pkgs) (getAttr "rt" pkgs) ];
-  };
-  infix-math = {
-    pname = "infix-math";
-    version = "20211020-git";
-    asds = [ "infix-math" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/infix-math/2021-10-20/infix-math-20211020-git.tgz";
-      sha256 = "1h6p254xl793wfq3qla5y95k6zimy477f8brblx6ran3rg3bydbg";
-      system = "infix-math";
-      asd = "infix-math";
-    });
-    systems = [ "infix-math" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "asdf-package-system" pkgs) (getAttr "parse-number" pkgs) (getAttr "serapeum" pkgs) (getAttr "wu-decimal" pkgs) ];
-  };
-  infix-reader = {
-    pname = "infix-reader";
-    version = "20221106-git";
-    asds = [ "infix-reader" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/infix-reader/2022-11-06/infix-reader-20221106-git.tgz";
-      sha256 = "16b6cw4w80p3yxsv0pqaiq0ay1v3jswlav2mlfsmhawpvhxsmb7z";
-      system = "infix-reader";
-      asd = "infix-reader";
-    });
-    systems = [ "infix-reader" ];
-    lispLibs = [  ];
-  };
-  inheriting-readers = {
-    pname = "inheriting-readers";
-    version = "1.0.1";
-    asds = [ "inheriting-readers" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/inheriting-readers/2021-01-24/inheriting-readers_1.0.1.tgz";
-      sha256 = "0km3mq6vx1q9qv6j3r4sqqcsdbnb5jar66bl0mzzpaacfvzbx68p";
-      system = "inheriting-readers";
-      asd = "inheriting-readers";
-    });
-    systems = [ "inheriting-readers" ];
-    lispLibs = [ (getAttr "class-options" pkgs) (getAttr "closer-mop" pkgs) (getAttr "compatible-metaclasses" pkgs) ];
-  };
-  inheriting-readers_tests = {
-    pname = "inheriting-readers_tests";
-    version = "1.0.1";
-    asds = [ "inheriting-readers_tests" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/inheriting-readers/2021-01-24/inheriting-readers_1.0.1.tgz";
-      sha256 = "0km3mq6vx1q9qv6j3r4sqqcsdbnb5jar66bl0mzzpaacfvzbx68p";
-      system = "inheriting-readers_tests";
-      asd = "inheriting-readers_tests";
-    });
-    systems = [ "inheriting-readers_tests" ];
-    lispLibs = [ (getAttr "compatible-metaclasses" pkgs) (getAttr "inheriting-readers" pkgs) (getAttr "parachute" pkgs) ];
-  };
-  injection = {
-    pname = "injection";
-    version = "20160531-git";
-    asds = [ "injection" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/injection/2016-05-31/injection-20160531-git.tgz";
-      sha256 = "12f838ikgyl7gzh2dnqh54hfa8rncbkk266bsibmbbqxz0cn2da7";
-      system = "injection";
-      asd = "injection";
-    });
-    systems = [ "injection" ];
-    lispLibs = [ (getAttr "cl-yaml" pkgs) ];
-  };
-  injection-test = {
-    pname = "injection-test";
-    version = "20160531-git";
-    asds = [ "injection-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/injection/2016-05-31/injection-20160531-git.tgz";
-      sha256 = "12f838ikgyl7gzh2dnqh54hfa8rncbkk266bsibmbbqxz0cn2da7";
-      system = "injection-test";
-      asd = "injection-test";
-    });
-    systems = [ "injection-test" ];
-    lispLibs = [ (getAttr "fiveam" pkgs) (getAttr "injection" pkgs) ];
-  };
-  inkwell = {
-    pname = "inkwell";
-    version = "20190710-git";
-    asds = [ "inkwell" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/inkwell/2019-07-10/inkwell-20190710-git.tgz";
-      sha256 = "0wzd2j7wdi4dxrmvwk47h988l107ajvw3z609f0dg5vh6wad8pnk";
-      system = "inkwell";
-      asd = "inkwell";
-    });
-    systems = [ "inkwell" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "documentation-utils" pkgs) (getAttr "drakma" pkgs) (getAttr "local-time" pkgs) (getAttr "yason" pkgs) ];
-  };
-  inlined-generic-function = {
-    pname = "inlined-generic-function";
-    version = "20190521-git";
-    asds = [ "inlined-generic-function" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/inlined-generic-function/2019-05-21/inlined-generic-function-20190521-git.tgz";
-      sha256 = "0kj9p99m9hwx4lx95npfln5dc5ip884f8agjc6h4y0rhnpj7r8gk";
-      system = "inlined-generic-function";
-      asd = "inlined-generic-function";
-    });
-    systems = [ "inlined-generic-function" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "closer-mop" pkgs) (getAttr "introspect-environment" pkgs) (getAttr "iterate" pkgs) (getAttr "trivia" pkgs) ];
-  };
-  inlined-generic-function_dot_test = {
-    pname = "inlined-generic-function.test";
-    version = "20190521-git";
-    asds = [ "inlined-generic-function.test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/inlined-generic-function/2019-05-21/inlined-generic-function-20190521-git.tgz";
-      sha256 = "0kj9p99m9hwx4lx95npfln5dc5ip884f8agjc6h4y0rhnpj7r8gk";
-      system = "inlined-generic-function.test";
-      asd = "inlined-generic-function.test";
-    });
-    systems = [ "inlined-generic-function.test" ];
-    lispLibs = [ (getAttr "fiveam" pkgs) (getAttr "inlined-generic-function" pkgs) ];
-  };
-  inner-conditional = {
-    pname = "inner-conditional";
-    version = "20200925-git";
-    asds = [ "inner-conditional" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/inner-conditional/2020-09-25/inner-conditional-20200925-git.tgz";
-      sha256 = "08vaq29l2bhv4n1c6zb3syddwpad66rghfy71fqidjvbag0ji71k";
-      system = "inner-conditional";
-      asd = "inner-conditional";
-    });
-    systems = [ "inner-conditional" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cl-syntax-annot" pkgs) (getAttr "iterate" pkgs) (getAttr "trivia" pkgs) ];
-  };
-  inner-conditional-test = {
-    pname = "inner-conditional-test";
-    version = "20200925-git";
-    asds = [ "inner-conditional-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/inner-conditional/2020-09-25/inner-conditional-20200925-git.tgz";
-      sha256 = "08vaq29l2bhv4n1c6zb3syddwpad66rghfy71fqidjvbag0ji71k";
-      system = "inner-conditional-test";
-      asd = "inner-conditional-test";
-    });
-    systems = [ "inner-conditional-test" ];
-    lispLibs = [ (getAttr "inner-conditional" pkgs) (getAttr "cl-test-more" pkgs) ];
-  };
-  inotify = {
-    pname = "inotify";
-    version = "20150608-git";
-    asds = [ "inotify" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/inotify/2015-06-08/inotify-20150608-git.tgz";
-      sha256 = "0jill05wsa7xbnkycc1ik1a05slv2h34fpyap2rxbnxvfjvyzw98";
-      system = "inotify";
-      asd = "inotify";
-    });
-    systems = [ "inotify" ];
-    lispLibs = [ (getAttr "cffi" pkgs) (getAttr "cffi-grovel" pkgs) (getAttr "iolib" pkgs) ];
-  };
-  input-event-codes = {
-    pname = "input-event-codes";
-    version = "20221106-git";
-    asds = [ "input-event-codes" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/input-event-codes/2022-11-06/input-event-codes-20221106-git.tgz";
-      sha256 = "1m96m9ia4frcn2xqaw4mfspjjzwl8gyj4k4rv0lq28va4s6mkgii";
-      system = "input-event-codes";
-      asd = "input-event-codes";
-    });
-    systems = [ "input-event-codes" ];
-    lispLibs = [ (getAttr "trivial-features" pkgs) ];
-  };
-  input-event-codes_slash_test = {
-    pname = "input-event-codes_test";
-    version = "20221106-git";
-    asds = [ "input-event-codes" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/input-event-codes/2022-11-06/input-event-codes-20221106-git.tgz";
-      sha256 = "1m96m9ia4frcn2xqaw4mfspjjzwl8gyj4k4rv0lq28va4s6mkgii";
-      system = "input-event-codes";
-      asd = "input-event-codes";
-    });
-    systems = [ "input-event-codes/test" ];
-    lispLibs = [ (getAttr "input-event-codes" pkgs) (getAttr "parachute" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  inquisitor = {
-    pname = "inquisitor";
-    version = "20190521-git";
-    asds = [ "inquisitor" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/inquisitor/2019-05-21/inquisitor-20190521-git.tgz";
-      sha256 = "08rkmqnwlq6v84wcz9yp31j5lxrsy33kv3dh7n3ccsg4kc54slzw";
-      system = "inquisitor";
-      asd = "inquisitor";
-    });
-    systems = [ "inquisitor" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "anaphora" pkgs) ];
-  };
-  inquisitor-flexi = {
-    pname = "inquisitor-flexi";
-    version = "20190521-git";
-    asds = [ "inquisitor-flexi" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/inquisitor/2019-05-21/inquisitor-20190521-git.tgz";
-      sha256 = "08rkmqnwlq6v84wcz9yp31j5lxrsy33kv3dh7n3ccsg4kc54slzw";
-      system = "inquisitor-flexi";
-      asd = "inquisitor-flexi";
-    });
-    systems = [ "inquisitor-flexi" ];
-    lispLibs = [ (getAttr "flexi-streams" pkgs) (getAttr "inquisitor" pkgs) ];
-  };
-  inquisitor-flexi-test = {
-    pname = "inquisitor-flexi-test";
-    version = "20190521-git";
-    asds = [ "inquisitor-flexi-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/inquisitor/2019-05-21/inquisitor-20190521-git.tgz";
-      sha256 = "08rkmqnwlq6v84wcz9yp31j5lxrsy33kv3dh7n3ccsg4kc54slzw";
-      system = "inquisitor-flexi-test";
-      asd = "inquisitor-flexi-test";
-    });
-    systems = [ "inquisitor-flexi-test" ];
-    lispLibs = [ (getAttr "inquisitor-flexi" pkgs) (getAttr "prove" pkgs) (getAttr "prove-asdf" pkgs) ];
-  };
-  inquisitor-test = {
-    pname = "inquisitor-test";
-    version = "20190521-git";
-    asds = [ "inquisitor-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/inquisitor/2019-05-21/inquisitor-20190521-git.tgz";
-      sha256 = "08rkmqnwlq6v84wcz9yp31j5lxrsy33kv3dh7n3ccsg4kc54slzw";
-      system = "inquisitor-test";
-      asd = "inquisitor-test";
-    });
-    systems = [ "inquisitor-test" ];
-    lispLibs = [ (getAttr "babel" pkgs) (getAttr "flexi-streams" pkgs) (getAttr "inquisitor" pkgs) (getAttr "prove" pkgs) (getAttr "prove-asdf" pkgs) ];
-  };
-  instance-tracking = {
-    pname = "instance-tracking";
-    version = "20221106-git";
-    asds = [ "instance-tracking" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/instance-tracking/2022-11-06/instance-tracking-20221106-git.tgz";
-      sha256 = "0bbxvl14ahws30x5dgjhilhybjgn1jfcbxwr8ji1ls31zf88fphr";
-      system = "instance-tracking";
-      asd = "instance-tracking";
-    });
-    systems = [ "instance-tracking" ];
-    lispLibs = [ (getAttr "bordeaux-threads" pkgs) ];
-  };
-  integral = {
-    pname = "integral";
-    version = "20200325-git";
-    asds = [ "integral" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/integral/2020-03-25/integral-20200325-git.tgz";
-      sha256 = "17a9wg7n3f81fsi5mlsdxain1fw7ggfniipfrb9sr1ajff6lx9gs";
-      system = "integral";
-      asd = "integral";
-    });
-    systems = [ "integral" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "dbi" pkgs) (getAttr "cl-ppcre" pkgs) (getAttr "cl-syntax-annot" pkgs) (getAttr "clos-fixtures" pkgs) (getAttr "closer-mop" pkgs) (getAttr "group-by" pkgs) (getAttr "iterate" pkgs) (getAttr "split-sequence" pkgs) (getAttr "sxql" pkgs) (getAttr "trivial-types" pkgs) ];
-  };
-  integral-rest = {
-    pname = "integral-rest";
-    version = "20150923-git";
-    asds = [ "integral-rest" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/integral-rest/2015-09-23/integral-rest-20150923-git.tgz";
-      sha256 = "0187d9i7acw2v1hhy7wcz0vk90ji7cdgpaikb7admvzq0nnbzrmm";
-      system = "integral-rest";
-      asd = "integral-rest";
-    });
-    systems = [ "integral-rest" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cl-inflector" pkgs) (getAttr "closer-mop" pkgs) (getAttr "integral" pkgs) (getAttr "jonathan" pkgs) (getAttr "map-set" pkgs) (getAttr "ningle" pkgs) ];
-  };
-  integral-rest-test = {
-    pname = "integral-rest-test";
-    version = "20150923-git";
-    asds = [ "integral-rest-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/integral-rest/2015-09-23/integral-rest-20150923-git.tgz";
-      sha256 = "0187d9i7acw2v1hhy7wcz0vk90ji7cdgpaikb7admvzq0nnbzrmm";
-      system = "integral-rest-test";
-      asd = "integral-rest-test";
-    });
-    systems = [ "integral-rest-test" ];
-    lispLibs = [ (getAttr "integral" pkgs) (getAttr "integral-rest" pkgs) (getAttr "prove" pkgs) (getAttr "prove-asdf" pkgs) ];
-  };
-  integral-test = {
-    pname = "integral-test";
-    version = "20200325-git";
-    asds = [ "integral-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/integral/2020-03-25/integral-20200325-git.tgz";
-      sha256 = "17a9wg7n3f81fsi5mlsdxain1fw7ggfniipfrb9sr1ajff6lx9gs";
-      system = "integral-test";
-      asd = "integral-test";
-    });
-    systems = [ "integral-test" ];
-    lispLibs = [ (getAttr "integral" pkgs) (getAttr "local-time" pkgs) (getAttr "prove" pkgs) (getAttr "prove-asdf" pkgs) (getAttr "split-sequence" pkgs) (getAttr "uiop" pkgs) ];
-  };
-  intel-hex = {
-    pname = "intel-hex";
-    version = "20160318-git";
-    asds = [ "intel-hex" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/intel-hex/2016-03-18/intel-hex-20160318-git.tgz";
-      sha256 = "0sz51qw262nh6ziwpy1kgv257nj56rp42s0g6g2rx3xv1ijdy395";
-      system = "intel-hex";
-      asd = "intel-hex";
-    });
-    systems = [ "intel-hex" ];
-    lispLibs = [  ];
-  };
-  intel-hex-test = {
-    pname = "intel-hex-test";
-    version = "20160318-git";
-    asds = [ "intel-hex-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/intel-hex/2016-03-18/intel-hex-20160318-git.tgz";
-      sha256 = "0sz51qw262nh6ziwpy1kgv257nj56rp42s0g6g2rx3xv1ijdy395";
-      system = "intel-hex-test";
-      asd = "intel-hex-test";
-    });
-    systems = [ "intel-hex-test" ];
-    lispLibs = [ (getAttr "intel-hex" pkgs) (getAttr "prove" pkgs) (getAttr "prove-asdf" pkgs) ];
-  };
-  intercom = {
-    pname = "intercom";
-    version = "20130615-git";
-    asds = [ "intercom" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/intercom/2013-06-15/intercom-20130615-git.tgz";
-      sha256 = "017klgjsza4cxdxms4hxgrfrwjshkcr2yyxnhg14zs9w0vjwkikl";
-      system = "intercom";
-      asd = "intercom";
-    });
-    systems = [ "intercom" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "bordeaux-threads" pkgs) (getAttr "hunchentoot" pkgs) (getAttr "jsown" pkgs) (getAttr "split-sequence" pkgs) ];
-  };
-  intercom-examples = {
-    pname = "intercom-examples";
-    version = "20130615-git";
-    asds = [ "intercom-examples" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/intercom/2013-06-15/intercom-20130615-git.tgz";
-      sha256 = "017klgjsza4cxdxms4hxgrfrwjshkcr2yyxnhg14zs9w0vjwkikl";
-      system = "intercom-examples";
-      asd = "intercom-examples";
-    });
-    systems = [ "intercom-examples" ];
-    lispLibs = [ (getAttr "intercom" pkgs) (getAttr "jsown" pkgs) ];
-  };
-  interface = {
-    pname = "interface";
-    version = "20190307-hg";
-    asds = [ "interface" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/interface/2019-03-07/interface-20190307-hg.tgz";
-      sha256 = "0q3pg1zn8rnyllvb4yh9dm38m4paw9glsnby61j6pyyb0ngywyf7";
-      system = "interface";
-      asd = "interface";
-    });
-    systems = [ "interface" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "global-vars" pkgs) ];
-  };
-  interfaces-test-implementation = {
-    pname = "interfaces-test-implementation";
-    version = "20210630-git";
-    asds = [ "interfaces-test-implementation" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/modularize-interfaces/2021-06-30/modularize-interfaces-20210630-git.tgz";
-      sha256 = "1jl11ffkrah3553wzysmxanhrzv3rnzi5x11ll626baf69im0v7x";
-      system = "interfaces-test-implementation";
-      asd = "interfaces-test-implementation";
-    });
-    systems = [ "interfaces-test-implementation" ];
-    lispLibs = [ (getAttr "modularize" pkgs) (getAttr "modularize-interfaces" pkgs) ];
-  };
-  introspect-environment = {
-    pname = "introspect-environment";
-    version = "20220220-git";
-    asds = [ "introspect-environment" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/introspect-environment/2022-02-20/introspect-environment-20220220-git.tgz";
-      sha256 = "1p48jnr1im47529w0ciyar4hfwbivqi57zgllkmfrav09ffigk9s";
-      system = "introspect-environment";
-      asd = "introspect-environment";
-    });
-    systems = [ "introspect-environment" ];
-    lispLibs = [  ];
-  };
-  introspect-environment-test = {
-    pname = "introspect-environment-test";
-    version = "20220220-git";
-    asds = [ "introspect-environment-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/introspect-environment/2022-02-20/introspect-environment-20220220-git.tgz";
-      sha256 = "1p48jnr1im47529w0ciyar4hfwbivqi57zgllkmfrav09ffigk9s";
-      system = "introspect-environment-test";
-      asd = "introspect-environment-test";
-    });
-    systems = [ "introspect-environment-test" ];
-    lispLibs = [ (getAttr "fiveam" pkgs) (getAttr "introspect-environment" pkgs) ];
-  };
-  iolib = {
-    pname = "iolib";
-    version = "v0.8.4";
-    asds = [ "iolib" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/iolib/2021-06-30/iolib-v0.8.4.tgz";
-      sha256 = "1f43jqqqwp9n7xksqxw91myapsdbc2dxck6nd6flakbnp9haylyq";
-      system = "iolib";
-      asd = "iolib";
-    });
-    systems = [ "iolib" ];
-    lispLibs = [ (getAttr "babel" pkgs) (getAttr "bordeaux-threads" pkgs) (getAttr "cffi" pkgs) (getAttr "cffi-grovel" pkgs) (getAttr "idna" pkgs) (getAttr "iolib_dot_asdf" pkgs) (getAttr "iolib_dot_base" pkgs) (getAttr "iolib_dot_conf" pkgs) (getAttr "swap-bytes" pkgs) (getAttr "trivial-features" pkgs) ];
-  };
-  iolib_dot_asdf = {
-    pname = "iolib.asdf";
-    version = "v0.8.4";
-    asds = [ "iolib.asdf" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/iolib/2021-06-30/iolib-v0.8.4.tgz";
-      sha256 = "1f43jqqqwp9n7xksqxw91myapsdbc2dxck6nd6flakbnp9haylyq";
-      system = "iolib.asdf";
-      asd = "iolib.asdf";
-    });
-    systems = [ "iolib.asdf" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) ];
-  };
-  iolib_dot_base = {
-    pname = "iolib.base";
-    version = "v0.8.4";
-    asds = [ "iolib.base" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/iolib/2021-06-30/iolib-v0.8.4.tgz";
-      sha256 = "1f43jqqqwp9n7xksqxw91myapsdbc2dxck6nd6flakbnp9haylyq";
-      system = "iolib.base";
-      asd = "iolib.base";
-    });
-    systems = [ "iolib.base" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "iolib_dot_asdf" pkgs) (getAttr "iolib_dot_common-lisp" pkgs) (getAttr "iolib_dot_conf" pkgs) (getAttr "split-sequence" pkgs) ];
-  };
-  iolib_dot_common-lisp = {
-    pname = "iolib.common-lisp";
-    version = "v0.8.4";
-    asds = [ "iolib.common-lisp" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/iolib/2021-06-30/iolib-v0.8.4.tgz";
-      sha256 = "1f43jqqqwp9n7xksqxw91myapsdbc2dxck6nd6flakbnp9haylyq";
-      system = "iolib.common-lisp";
-      asd = "iolib.common-lisp";
-    });
-    systems = [ "iolib.common-lisp" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "iolib_dot_asdf" pkgs) (getAttr "iolib_dot_conf" pkgs) ];
-  };
-  iolib_dot_conf = {
-    pname = "iolib.conf";
-    version = "v0.8.4";
-    asds = [ "iolib.conf" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/iolib/2021-06-30/iolib-v0.8.4.tgz";
-      sha256 = "1f43jqqqwp9n7xksqxw91myapsdbc2dxck6nd6flakbnp9haylyq";
-      system = "iolib.conf";
-      asd = "iolib.conf";
-    });
-    systems = [ "iolib.conf" ];
-    lispLibs = [ (getAttr "iolib_dot_asdf" pkgs) ];
-  };
-  iolib_dot_examples = {
-    pname = "iolib.examples";
-    version = "v0.8.4";
-    asds = [ "iolib.examples" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/iolib/2021-06-30/iolib-v0.8.4.tgz";
-      sha256 = "1f43jqqqwp9n7xksqxw91myapsdbc2dxck6nd6flakbnp9haylyq";
-      system = "iolib.examples";
-      asd = "iolib.examples";
-    });
-    systems = [ "iolib.examples" ];
-    lispLibs = [ (getAttr "bordeaux-threads" pkgs) (getAttr "iolib" pkgs) (getAttr "iolib_dot_asdf" pkgs) (getAttr "iolib_dot_base" pkgs) (getAttr "iolib_dot_conf" pkgs) ];
-  };
-  iolib_slash_multiplex = {
-    pname = "iolib_multiplex";
-    version = "v0.8.4";
-    asds = [ "iolib" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/iolib/2021-06-30/iolib-v0.8.4.tgz";
-      sha256 = "1f43jqqqwp9n7xksqxw91myapsdbc2dxck6nd6flakbnp9haylyq";
-      system = "iolib";
-      asd = "iolib";
-    });
-    systems = [ "iolib/multiplex" ];
-    lispLibs = [ (getAttr "cffi" pkgs) (getAttr "cffi-grovel" pkgs) (getAttr "iolib_dot_asdf" pkgs) (getAttr "iolib_dot_base" pkgs) (getAttr "iolib_dot_conf" pkgs) (getAttr "trivial-features" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  iolib_slash_os = {
-    pname = "iolib_os";
-    version = "v0.8.4";
-    asds = [ "iolib" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/iolib/2021-06-30/iolib-v0.8.4.tgz";
-      sha256 = "1f43jqqqwp9n7xksqxw91myapsdbc2dxck6nd6flakbnp9haylyq";
-      system = "iolib";
-      asd = "iolib";
-    });
-    systems = [ "iolib/os" ];
-    lispLibs = [ (getAttr "cffi" pkgs) (getAttr "cffi-grovel" pkgs) (getAttr "iolib_dot_asdf" pkgs) (getAttr "iolib_dot_base" pkgs) (getAttr "iolib_dot_conf" pkgs) (getAttr "trivial-features" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  iolib_slash_pathnames = {
-    pname = "iolib_pathnames";
-    version = "v0.8.4";
-    asds = [ "iolib" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/iolib/2021-06-30/iolib-v0.8.4.tgz";
-      sha256 = "1f43jqqqwp9n7xksqxw91myapsdbc2dxck6nd6flakbnp9haylyq";
-      system = "iolib";
-      asd = "iolib";
-    });
-    systems = [ "iolib/pathnames" ];
-    lispLibs = [ (getAttr "cffi" pkgs) (getAttr "cffi-grovel" pkgs) (getAttr "iolib_dot_asdf" pkgs) (getAttr "iolib_dot_base" pkgs) (getAttr "iolib_dot_conf" pkgs) (getAttr "trivial-features" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  iolib_slash_sockets = {
-    pname = "iolib_sockets";
-    version = "v0.8.4";
-    asds = [ "iolib" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/iolib/2021-06-30/iolib-v0.8.4.tgz";
-      sha256 = "1f43jqqqwp9n7xksqxw91myapsdbc2dxck6nd6flakbnp9haylyq";
-      system = "iolib";
-      asd = "iolib";
-    });
-    systems = [ "iolib/sockets" ];
-    lispLibs = [ (getAttr "babel" pkgs) (getAttr "bordeaux-threads" pkgs) (getAttr "cffi" pkgs) (getAttr "cffi-grovel" pkgs) (getAttr "idna" pkgs) (getAttr "iolib_dot_asdf" pkgs) (getAttr "iolib_dot_base" pkgs) (getAttr "iolib_dot_conf" pkgs) (getAttr "swap-bytes" pkgs) (getAttr "trivial-features" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  iolib_slash_streams = {
-    pname = "iolib_streams";
-    version = "v0.8.4";
-    asds = [ "iolib" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/iolib/2021-06-30/iolib-v0.8.4.tgz";
-      sha256 = "1f43jqqqwp9n7xksqxw91myapsdbc2dxck6nd6flakbnp9haylyq";
-      system = "iolib";
-      asd = "iolib";
-    });
-    systems = [ "iolib/streams" ];
-    lispLibs = [ (getAttr "cffi" pkgs) (getAttr "cffi-grovel" pkgs) (getAttr "iolib_dot_asdf" pkgs) (getAttr "iolib_dot_base" pkgs) (getAttr "iolib_dot_conf" pkgs) (getAttr "trivial-features" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  iolib_slash_syscalls = {
-    pname = "iolib_syscalls";
-    version = "v0.8.4";
-    asds = [ "iolib" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/iolib/2021-06-30/iolib-v0.8.4.tgz";
-      sha256 = "1f43jqqqwp9n7xksqxw91myapsdbc2dxck6nd6flakbnp9haylyq";
-      system = "iolib";
-      asd = "iolib";
-    });
-    systems = [ "iolib/syscalls" ];
-    lispLibs = [ (getAttr "cffi" pkgs) (getAttr "cffi-grovel" pkgs) (getAttr "iolib_dot_asdf" pkgs) (getAttr "iolib_dot_base" pkgs) (getAttr "iolib_dot_conf" pkgs) (getAttr "trivial-features" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  iolib_slash_tests = {
-    pname = "iolib_tests";
-    version = "v0.8.4";
-    asds = [ "iolib" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/iolib/2021-06-30/iolib-v0.8.4.tgz";
-      sha256 = "1f43jqqqwp9n7xksqxw91myapsdbc2dxck6nd6flakbnp9haylyq";
-      system = "iolib";
-      asd = "iolib";
-    });
-    systems = [ "iolib/tests" ];
-    lispLibs = [ (getAttr "cffi" pkgs) (getAttr "cffi-grovel" pkgs) (getAttr "fiveam" pkgs) (getAttr "iolib" pkgs) (getAttr "iolib_dot_asdf" pkgs) (getAttr "iolib_dot_base" pkgs) (getAttr "iolib_dot_conf" pkgs) (getAttr "trivial-features" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  iolib_slash_trivial-sockets = {
-    pname = "iolib_trivial-sockets";
-    version = "v0.8.4";
-    asds = [ "iolib" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/iolib/2021-06-30/iolib-v0.8.4.tgz";
-      sha256 = "1f43jqqqwp9n7xksqxw91myapsdbc2dxck6nd6flakbnp9haylyq";
-      system = "iolib";
-      asd = "iolib";
-    });
-    systems = [ "iolib/trivial-sockets" ];
-    lispLibs = [ (getAttr "babel" pkgs) (getAttr "bordeaux-threads" pkgs) (getAttr "cffi" pkgs) (getAttr "cffi-grovel" pkgs) (getAttr "idna" pkgs) (getAttr "iolib_dot_asdf" pkgs) (getAttr "iolib_dot_base" pkgs) (getAttr "iolib_dot_conf" pkgs) (getAttr "swap-bytes" pkgs) (getAttr "trivial-features" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  iolib_slash_zstreams = {
-    pname = "iolib_zstreams";
-    version = "v0.8.4";
-    asds = [ "iolib" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/iolib/2021-06-30/iolib-v0.8.4.tgz";
-      sha256 = "1f43jqqqwp9n7xksqxw91myapsdbc2dxck6nd6flakbnp9haylyq";
-      system = "iolib";
-      asd = "iolib";
-    });
-    systems = [ "iolib/zstreams" ];
-    lispLibs = [ (getAttr "bordeaux-threads" pkgs) (getAttr "cffi" pkgs) (getAttr "cffi-grovel" pkgs) (getAttr "iolib_dot_asdf" pkgs) (getAttr "iolib_dot_base" pkgs) (getAttr "iolib_dot_conf" pkgs) (getAttr "trivial-features" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  ip-interfaces = {
-    pname = "ip-interfaces";
-    version = "0.2.1";
-    asds = [ "ip-interfaces" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/ip-interfaces/2018-12-10/ip-interfaces-0.2.1.tgz";
-      sha256 = "035sc4li0qz4lzjn555h8r2qkhc8a65zglk30f1b3pi9p44g91mw";
-      system = "ip-interfaces";
-      asd = "ip-interfaces";
-    });
-    systems = [ "ip-interfaces" ];
-    lispLibs = [ (getAttr "cffi" pkgs) ];
-  };
-  ip-interfaces-test = {
-    pname = "ip-interfaces-test";
-    version = "0.2.1";
-    asds = [ "ip-interfaces-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/ip-interfaces/2018-12-10/ip-interfaces-0.2.1.tgz";
-      sha256 = "035sc4li0qz4lzjn555h8r2qkhc8a65zglk30f1b3pi9p44g91mw";
-      system = "ip-interfaces-test";
-      asd = "ip-interfaces-test";
-    });
-    systems = [ "ip-interfaces-test" ];
-    lispLibs = [ (getAttr "ip-interfaces" pkgs) (getAttr "prove" pkgs) (getAttr "prove-asdf" pkgs) ];
-  };
-  irc-logger = {
-    pname = "irc-logger";
-    version = "20150923-git";
-    asds = [ "irc-logger" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/irc-logger/2015-09-23/irc-logger-20150923-git.tgz";
-      sha256 = "1ylq8qnf29dij7133p19cmmmw3i7w6azncsdvpd4j0k1fqp14bq7";
-      system = "irc-logger";
-      asd = "irc-logger";
-    });
-    systems = [ "irc-logger" ];
-    lispLibs = [ (getAttr "cl-irc" pkgs) (getAttr "cl-ppcre" pkgs) ];
-  };
-  ironclad = {
-    pname = "ironclad";
-    version = "v0.58";
-    asds = [ "ironclad" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/ironclad/2022-11-06/ironclad-v0.58.tgz";
-      sha256 = "17plga14y1425g7midysj49x12kssqa77l43cr3sm9976zpya8i8";
-      system = "ironclad";
-      asd = "ironclad";
-    });
-    systems = [ "ironclad" ];
-    lispLibs = [ (getAttr "bordeaux-threads" pkgs) ];
-  };
-  ironclad-text = {
-    pname = "ironclad-text";
-    version = "v0.58";
-    asds = [ "ironclad-text" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/ironclad/2022-11-06/ironclad-v0.58.tgz";
-      sha256 = "17plga14y1425g7midysj49x12kssqa77l43cr3sm9976zpya8i8";
-      system = "ironclad-text";
-      asd = "ironclad-text";
-    });
-    systems = [ "ironclad-text" ];
-    lispLibs = [ (getAttr "flexi-streams" pkgs) (getAttr "ironclad" pkgs) ];
-  };
-  ironclad_slash_aead_slash_eax = {
-    pname = "ironclad_aead_eax";
-    version = "v0.58";
-    asds = [ "ironclad" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/ironclad/2022-11-06/ironclad-v0.58.tgz";
-      sha256 = "17plga14y1425g7midysj49x12kssqa77l43cr3sm9976zpya8i8";
-      system = "ironclad";
-      asd = "ironclad";
-    });
-    systems = [ "ironclad/aead/eax" ];
-    lispLibs = [ (getAttr "bordeaux-threads" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  ironclad_slash_aead_slash_etm = {
-    pname = "ironclad_aead_etm";
-    version = "v0.58";
-    asds = [ "ironclad" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/ironclad/2022-11-06/ironclad-v0.58.tgz";
-      sha256 = "17plga14y1425g7midysj49x12kssqa77l43cr3sm9976zpya8i8";
-      system = "ironclad";
-      asd = "ironclad";
-    });
-    systems = [ "ironclad/aead/etm" ];
-    lispLibs = [ (getAttr "bordeaux-threads" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  ironclad_slash_aead_slash_gcm = {
-    pname = "ironclad_aead_gcm";
-    version = "v0.58";
-    asds = [ "ironclad" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/ironclad/2022-11-06/ironclad-v0.58.tgz";
-      sha256 = "17plga14y1425g7midysj49x12kssqa77l43cr3sm9976zpya8i8";
-      system = "ironclad";
-      asd = "ironclad";
-    });
-    systems = [ "ironclad/aead/gcm" ];
-    lispLibs = [ (getAttr "bordeaux-threads" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  ironclad_slash_aeads = {
-    pname = "ironclad_aeads";
-    version = "v0.58";
-    asds = [ "ironclad" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/ironclad/2022-11-06/ironclad-v0.58.tgz";
-      sha256 = "17plga14y1425g7midysj49x12kssqa77l43cr3sm9976zpya8i8";
-      system = "ironclad";
-      asd = "ironclad";
-    });
-    systems = [ "ironclad/aeads" ];
-    lispLibs = [ (getAttr "bordeaux-threads" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  ironclad_slash_cipher_slash_aes = {
-    pname = "ironclad_cipher_aes";
-    version = "v0.58";
-    asds = [ "ironclad" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/ironclad/2022-11-06/ironclad-v0.58.tgz";
-      sha256 = "17plga14y1425g7midysj49x12kssqa77l43cr3sm9976zpya8i8";
-      system = "ironclad";
-      asd = "ironclad";
-    });
-    systems = [ "ironclad/cipher/aes" ];
-    lispLibs = [ (getAttr "bordeaux-threads" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  ironclad_slash_cipher_slash_arcfour = {
-    pname = "ironclad_cipher_arcfour";
-    version = "v0.58";
-    asds = [ "ironclad" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/ironclad/2022-11-06/ironclad-v0.58.tgz";
-      sha256 = "17plga14y1425g7midysj49x12kssqa77l43cr3sm9976zpya8i8";
-      system = "ironclad";
-      asd = "ironclad";
-    });
-    systems = [ "ironclad/cipher/arcfour" ];
-    lispLibs = [ (getAttr "bordeaux-threads" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  ironclad_slash_cipher_slash_aria = {
-    pname = "ironclad_cipher_aria";
-    version = "v0.58";
-    asds = [ "ironclad" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/ironclad/2022-11-06/ironclad-v0.58.tgz";
-      sha256 = "17plga14y1425g7midysj49x12kssqa77l43cr3sm9976zpya8i8";
-      system = "ironclad";
-      asd = "ironclad";
-    });
-    systems = [ "ironclad/cipher/aria" ];
-    lispLibs = [ (getAttr "bordeaux-threads" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  ironclad_slash_cipher_slash_blowfish = {
-    pname = "ironclad_cipher_blowfish";
-    version = "v0.58";
-    asds = [ "ironclad" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/ironclad/2022-11-06/ironclad-v0.58.tgz";
-      sha256 = "17plga14y1425g7midysj49x12kssqa77l43cr3sm9976zpya8i8";
-      system = "ironclad";
-      asd = "ironclad";
-    });
-    systems = [ "ironclad/cipher/blowfish" ];
-    lispLibs = [ (getAttr "bordeaux-threads" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  ironclad_slash_cipher_slash_camellia = {
-    pname = "ironclad_cipher_camellia";
-    version = "v0.58";
-    asds = [ "ironclad" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/ironclad/2022-11-06/ironclad-v0.58.tgz";
-      sha256 = "17plga14y1425g7midysj49x12kssqa77l43cr3sm9976zpya8i8";
-      system = "ironclad";
-      asd = "ironclad";
-    });
-    systems = [ "ironclad/cipher/camellia" ];
-    lispLibs = [ (getAttr "bordeaux-threads" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  ironclad_slash_cipher_slash_cast5 = {
-    pname = "ironclad_cipher_cast5";
-    version = "v0.58";
-    asds = [ "ironclad" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/ironclad/2022-11-06/ironclad-v0.58.tgz";
-      sha256 = "17plga14y1425g7midysj49x12kssqa77l43cr3sm9976zpya8i8";
-      system = "ironclad";
-      asd = "ironclad";
-    });
-    systems = [ "ironclad/cipher/cast5" ];
-    lispLibs = [ (getAttr "bordeaux-threads" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  ironclad_slash_cipher_slash_chacha = {
-    pname = "ironclad_cipher_chacha";
-    version = "v0.58";
-    asds = [ "ironclad" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/ironclad/2022-11-06/ironclad-v0.58.tgz";
-      sha256 = "17plga14y1425g7midysj49x12kssqa77l43cr3sm9976zpya8i8";
-      system = "ironclad";
-      asd = "ironclad";
-    });
-    systems = [ "ironclad/cipher/chacha" ];
-    lispLibs = [ (getAttr "bordeaux-threads" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  ironclad_slash_cipher_slash_des = {
-    pname = "ironclad_cipher_des";
-    version = "v0.58";
-    asds = [ "ironclad" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/ironclad/2022-11-06/ironclad-v0.58.tgz";
-      sha256 = "17plga14y1425g7midysj49x12kssqa77l43cr3sm9976zpya8i8";
-      system = "ironclad";
-      asd = "ironclad";
-    });
-    systems = [ "ironclad/cipher/des" ];
-    lispLibs = [ (getAttr "bordeaux-threads" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  ironclad_slash_cipher_slash_idea = {
-    pname = "ironclad_cipher_idea";
-    version = "v0.58";
-    asds = [ "ironclad" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/ironclad/2022-11-06/ironclad-v0.58.tgz";
-      sha256 = "17plga14y1425g7midysj49x12kssqa77l43cr3sm9976zpya8i8";
-      system = "ironclad";
-      asd = "ironclad";
-    });
-    systems = [ "ironclad/cipher/idea" ];
-    lispLibs = [ (getAttr "bordeaux-threads" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  ironclad_slash_cipher_slash_kalyna = {
-    pname = "ironclad_cipher_kalyna";
-    version = "v0.58";
-    asds = [ "ironclad" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/ironclad/2022-11-06/ironclad-v0.58.tgz";
-      sha256 = "17plga14y1425g7midysj49x12kssqa77l43cr3sm9976zpya8i8";
-      system = "ironclad";
-      asd = "ironclad";
-    });
-    systems = [ "ironclad/cipher/kalyna" ];
-    lispLibs = [ (getAttr "bordeaux-threads" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  ironclad_slash_cipher_slash_keystream = {
-    pname = "ironclad_cipher_keystream";
-    version = "v0.58";
-    asds = [ "ironclad" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/ironclad/2022-11-06/ironclad-v0.58.tgz";
-      sha256 = "17plga14y1425g7midysj49x12kssqa77l43cr3sm9976zpya8i8";
-      system = "ironclad";
-      asd = "ironclad";
-    });
-    systems = [ "ironclad/cipher/keystream" ];
-    lispLibs = [ (getAttr "bordeaux-threads" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  ironclad_slash_cipher_slash_kuznyechik = {
-    pname = "ironclad_cipher_kuznyechik";
-    version = "v0.58";
-    asds = [ "ironclad" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/ironclad/2022-11-06/ironclad-v0.58.tgz";
-      sha256 = "17plga14y1425g7midysj49x12kssqa77l43cr3sm9976zpya8i8";
-      system = "ironclad";
-      asd = "ironclad";
-    });
-    systems = [ "ironclad/cipher/kuznyechik" ];
-    lispLibs = [ (getAttr "bordeaux-threads" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  ironclad_slash_cipher_slash_misty1 = {
-    pname = "ironclad_cipher_misty1";
-    version = "v0.58";
-    asds = [ "ironclad" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/ironclad/2022-11-06/ironclad-v0.58.tgz";
-      sha256 = "17plga14y1425g7midysj49x12kssqa77l43cr3sm9976zpya8i8";
-      system = "ironclad";
-      asd = "ironclad";
-    });
-    systems = [ "ironclad/cipher/misty1" ];
-    lispLibs = [ (getAttr "bordeaux-threads" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  ironclad_slash_cipher_slash_rc2 = {
-    pname = "ironclad_cipher_rc2";
-    version = "v0.58";
-    asds = [ "ironclad" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/ironclad/2022-11-06/ironclad-v0.58.tgz";
-      sha256 = "17plga14y1425g7midysj49x12kssqa77l43cr3sm9976zpya8i8";
-      system = "ironclad";
-      asd = "ironclad";
-    });
-    systems = [ "ironclad/cipher/rc2" ];
-    lispLibs = [ (getAttr "bordeaux-threads" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  ironclad_slash_cipher_slash_rc5 = {
-    pname = "ironclad_cipher_rc5";
-    version = "v0.58";
-    asds = [ "ironclad" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/ironclad/2022-11-06/ironclad-v0.58.tgz";
-      sha256 = "17plga14y1425g7midysj49x12kssqa77l43cr3sm9976zpya8i8";
-      system = "ironclad";
-      asd = "ironclad";
-    });
-    systems = [ "ironclad/cipher/rc5" ];
-    lispLibs = [ (getAttr "bordeaux-threads" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  ironclad_slash_cipher_slash_rc6 = {
-    pname = "ironclad_cipher_rc6";
-    version = "v0.58";
-    asds = [ "ironclad" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/ironclad/2022-11-06/ironclad-v0.58.tgz";
-      sha256 = "17plga14y1425g7midysj49x12kssqa77l43cr3sm9976zpya8i8";
-      system = "ironclad";
-      asd = "ironclad";
-    });
-    systems = [ "ironclad/cipher/rc6" ];
-    lispLibs = [ (getAttr "bordeaux-threads" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  ironclad_slash_cipher_slash_salsa20 = {
-    pname = "ironclad_cipher_salsa20";
-    version = "v0.58";
-    asds = [ "ironclad" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/ironclad/2022-11-06/ironclad-v0.58.tgz";
-      sha256 = "17plga14y1425g7midysj49x12kssqa77l43cr3sm9976zpya8i8";
-      system = "ironclad";
-      asd = "ironclad";
-    });
-    systems = [ "ironclad/cipher/salsa20" ];
-    lispLibs = [ (getAttr "bordeaux-threads" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  ironclad_slash_cipher_slash_seed = {
-    pname = "ironclad_cipher_seed";
-    version = "v0.58";
-    asds = [ "ironclad" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/ironclad/2022-11-06/ironclad-v0.58.tgz";
-      sha256 = "17plga14y1425g7midysj49x12kssqa77l43cr3sm9976zpya8i8";
-      system = "ironclad";
-      asd = "ironclad";
-    });
-    systems = [ "ironclad/cipher/seed" ];
-    lispLibs = [ (getAttr "bordeaux-threads" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  ironclad_slash_cipher_slash_serpent = {
-    pname = "ironclad_cipher_serpent";
-    version = "v0.58";
-    asds = [ "ironclad" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/ironclad/2022-11-06/ironclad-v0.58.tgz";
-      sha256 = "17plga14y1425g7midysj49x12kssqa77l43cr3sm9976zpya8i8";
-      system = "ironclad";
-      asd = "ironclad";
-    });
-    systems = [ "ironclad/cipher/serpent" ];
-    lispLibs = [ (getAttr "bordeaux-threads" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  ironclad_slash_cipher_slash_sm4 = {
-    pname = "ironclad_cipher_sm4";
-    version = "v0.58";
-    asds = [ "ironclad" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/ironclad/2022-11-06/ironclad-v0.58.tgz";
-      sha256 = "17plga14y1425g7midysj49x12kssqa77l43cr3sm9976zpya8i8";
-      system = "ironclad";
-      asd = "ironclad";
-    });
-    systems = [ "ironclad/cipher/sm4" ];
-    lispLibs = [ (getAttr "bordeaux-threads" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  ironclad_slash_cipher_slash_sosemanuk = {
-    pname = "ironclad_cipher_sosemanuk";
-    version = "v0.58";
-    asds = [ "ironclad" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/ironclad/2022-11-06/ironclad-v0.58.tgz";
-      sha256 = "17plga14y1425g7midysj49x12kssqa77l43cr3sm9976zpya8i8";
-      system = "ironclad";
-      asd = "ironclad";
-    });
-    systems = [ "ironclad/cipher/sosemanuk" ];
-    lispLibs = [ (getAttr "bordeaux-threads" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  ironclad_slash_cipher_slash_square = {
-    pname = "ironclad_cipher_square";
-    version = "v0.58";
-    asds = [ "ironclad" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/ironclad/2022-11-06/ironclad-v0.58.tgz";
-      sha256 = "17plga14y1425g7midysj49x12kssqa77l43cr3sm9976zpya8i8";
-      system = "ironclad";
-      asd = "ironclad";
-    });
-    systems = [ "ironclad/cipher/square" ];
-    lispLibs = [ (getAttr "bordeaux-threads" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  ironclad_slash_cipher_slash_tea = {
-    pname = "ironclad_cipher_tea";
-    version = "v0.58";
-    asds = [ "ironclad" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/ironclad/2022-11-06/ironclad-v0.58.tgz";
-      sha256 = "17plga14y1425g7midysj49x12kssqa77l43cr3sm9976zpya8i8";
-      system = "ironclad";
-      asd = "ironclad";
-    });
-    systems = [ "ironclad/cipher/tea" ];
-    lispLibs = [ (getAttr "bordeaux-threads" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  ironclad_slash_cipher_slash_threefish = {
-    pname = "ironclad_cipher_threefish";
-    version = "v0.58";
-    asds = [ "ironclad" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/ironclad/2022-11-06/ironclad-v0.58.tgz";
-      sha256 = "17plga14y1425g7midysj49x12kssqa77l43cr3sm9976zpya8i8";
-      system = "ironclad";
-      asd = "ironclad";
-    });
-    systems = [ "ironclad/cipher/threefish" ];
-    lispLibs = [ (getAttr "bordeaux-threads" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  ironclad_slash_cipher_slash_twofish = {
-    pname = "ironclad_cipher_twofish";
-    version = "v0.58";
-    asds = [ "ironclad" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/ironclad/2022-11-06/ironclad-v0.58.tgz";
-      sha256 = "17plga14y1425g7midysj49x12kssqa77l43cr3sm9976zpya8i8";
-      system = "ironclad";
-      asd = "ironclad";
-    });
-    systems = [ "ironclad/cipher/twofish" ];
-    lispLibs = [ (getAttr "bordeaux-threads" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  ironclad_slash_cipher_slash_xchacha = {
-    pname = "ironclad_cipher_xchacha";
-    version = "v0.58";
-    asds = [ "ironclad" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/ironclad/2022-11-06/ironclad-v0.58.tgz";
-      sha256 = "17plga14y1425g7midysj49x12kssqa77l43cr3sm9976zpya8i8";
-      system = "ironclad";
-      asd = "ironclad";
-    });
-    systems = [ "ironclad/cipher/xchacha" ];
-    lispLibs = [ (getAttr "bordeaux-threads" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  ironclad_slash_cipher_slash_xor = {
-    pname = "ironclad_cipher_xor";
-    version = "v0.58";
-    asds = [ "ironclad" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/ironclad/2022-11-06/ironclad-v0.58.tgz";
-      sha256 = "17plga14y1425g7midysj49x12kssqa77l43cr3sm9976zpya8i8";
-      system = "ironclad";
-      asd = "ironclad";
-    });
-    systems = [ "ironclad/cipher/xor" ];
-    lispLibs = [ (getAttr "bordeaux-threads" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  ironclad_slash_cipher_slash_xsalsa20 = {
-    pname = "ironclad_cipher_xsalsa20";
-    version = "v0.58";
-    asds = [ "ironclad" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/ironclad/2022-11-06/ironclad-v0.58.tgz";
-      sha256 = "17plga14y1425g7midysj49x12kssqa77l43cr3sm9976zpya8i8";
-      system = "ironclad";
-      asd = "ironclad";
-    });
-    systems = [ "ironclad/cipher/xsalsa20" ];
-    lispLibs = [ (getAttr "bordeaux-threads" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  ironclad_slash_cipher_slash_xtea = {
-    pname = "ironclad_cipher_xtea";
-    version = "v0.58";
-    asds = [ "ironclad" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/ironclad/2022-11-06/ironclad-v0.58.tgz";
-      sha256 = "17plga14y1425g7midysj49x12kssqa77l43cr3sm9976zpya8i8";
-      system = "ironclad";
-      asd = "ironclad";
-    });
-    systems = [ "ironclad/cipher/xtea" ];
-    lispLibs = [ (getAttr "bordeaux-threads" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  ironclad_slash_ciphers = {
-    pname = "ironclad_ciphers";
-    version = "v0.58";
-    asds = [ "ironclad" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/ironclad/2022-11-06/ironclad-v0.58.tgz";
-      sha256 = "17plga14y1425g7midysj49x12kssqa77l43cr3sm9976zpya8i8";
-      system = "ironclad";
-      asd = "ironclad";
-    });
-    systems = [ "ironclad/ciphers" ];
-    lispLibs = [ (getAttr "bordeaux-threads" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  ironclad_slash_core = {
-    pname = "ironclad_core";
-    version = "v0.58";
-    asds = [ "ironclad" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/ironclad/2022-11-06/ironclad-v0.58.tgz";
-      sha256 = "17plga14y1425g7midysj49x12kssqa77l43cr3sm9976zpya8i8";
-      system = "ironclad";
-      asd = "ironclad";
-    });
-    systems = [ "ironclad/core" ];
-    lispLibs = [ (getAttr "bordeaux-threads" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  ironclad_slash_digest_slash_adler32 = {
-    pname = "ironclad_digest_adler32";
-    version = "v0.58";
-    asds = [ "ironclad" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/ironclad/2022-11-06/ironclad-v0.58.tgz";
-      sha256 = "17plga14y1425g7midysj49x12kssqa77l43cr3sm9976zpya8i8";
-      system = "ironclad";
-      asd = "ironclad";
-    });
-    systems = [ "ironclad/digest/adler32" ];
-    lispLibs = [ (getAttr "bordeaux-threads" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  ironclad_slash_digest_slash_blake2 = {
-    pname = "ironclad_digest_blake2";
-    version = "v0.58";
-    asds = [ "ironclad" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/ironclad/2022-11-06/ironclad-v0.58.tgz";
-      sha256 = "17plga14y1425g7midysj49x12kssqa77l43cr3sm9976zpya8i8";
-      system = "ironclad";
-      asd = "ironclad";
-    });
-    systems = [ "ironclad/digest/blake2" ];
-    lispLibs = [ (getAttr "bordeaux-threads" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  ironclad_slash_digest_slash_blake2s = {
-    pname = "ironclad_digest_blake2s";
-    version = "v0.58";
-    asds = [ "ironclad" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/ironclad/2022-11-06/ironclad-v0.58.tgz";
-      sha256 = "17plga14y1425g7midysj49x12kssqa77l43cr3sm9976zpya8i8";
-      system = "ironclad";
-      asd = "ironclad";
-    });
-    systems = [ "ironclad/digest/blake2s" ];
-    lispLibs = [ (getAttr "bordeaux-threads" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  ironclad_slash_digest_slash_crc24 = {
-    pname = "ironclad_digest_crc24";
-    version = "v0.58";
-    asds = [ "ironclad" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/ironclad/2022-11-06/ironclad-v0.58.tgz";
-      sha256 = "17plga14y1425g7midysj49x12kssqa77l43cr3sm9976zpya8i8";
-      system = "ironclad";
-      asd = "ironclad";
-    });
-    systems = [ "ironclad/digest/crc24" ];
-    lispLibs = [ (getAttr "bordeaux-threads" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  ironclad_slash_digest_slash_crc32 = {
-    pname = "ironclad_digest_crc32";
-    version = "v0.58";
-    asds = [ "ironclad" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/ironclad/2022-11-06/ironclad-v0.58.tgz";
-      sha256 = "17plga14y1425g7midysj49x12kssqa77l43cr3sm9976zpya8i8";
-      system = "ironclad";
-      asd = "ironclad";
-    });
-    systems = [ "ironclad/digest/crc32" ];
-    lispLibs = [ (getAttr "bordeaux-threads" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  ironclad_slash_digest_slash_groestl = {
-    pname = "ironclad_digest_groestl";
-    version = "v0.58";
-    asds = [ "ironclad" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/ironclad/2022-11-06/ironclad-v0.58.tgz";
-      sha256 = "17plga14y1425g7midysj49x12kssqa77l43cr3sm9976zpya8i8";
-      system = "ironclad";
-      asd = "ironclad";
-    });
-    systems = [ "ironclad/digest/groestl" ];
-    lispLibs = [ (getAttr "bordeaux-threads" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  ironclad_slash_digest_slash_jh = {
-    pname = "ironclad_digest_jh";
-    version = "v0.58";
-    asds = [ "ironclad" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/ironclad/2022-11-06/ironclad-v0.58.tgz";
-      sha256 = "17plga14y1425g7midysj49x12kssqa77l43cr3sm9976zpya8i8";
-      system = "ironclad";
-      asd = "ironclad";
-    });
-    systems = [ "ironclad/digest/jh" ];
-    lispLibs = [ (getAttr "bordeaux-threads" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  ironclad_slash_digest_slash_kupyna = {
-    pname = "ironclad_digest_kupyna";
-    version = "v0.58";
-    asds = [ "ironclad" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/ironclad/2022-11-06/ironclad-v0.58.tgz";
-      sha256 = "17plga14y1425g7midysj49x12kssqa77l43cr3sm9976zpya8i8";
-      system = "ironclad";
-      asd = "ironclad";
-    });
-    systems = [ "ironclad/digest/kupyna" ];
-    lispLibs = [ (getAttr "bordeaux-threads" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  ironclad_slash_digest_slash_md2 = {
-    pname = "ironclad_digest_md2";
-    version = "v0.58";
-    asds = [ "ironclad" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/ironclad/2022-11-06/ironclad-v0.58.tgz";
-      sha256 = "17plga14y1425g7midysj49x12kssqa77l43cr3sm9976zpya8i8";
-      system = "ironclad";
-      asd = "ironclad";
-    });
-    systems = [ "ironclad/digest/md2" ];
-    lispLibs = [ (getAttr "bordeaux-threads" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  ironclad_slash_digest_slash_md4 = {
-    pname = "ironclad_digest_md4";
-    version = "v0.58";
-    asds = [ "ironclad" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/ironclad/2022-11-06/ironclad-v0.58.tgz";
-      sha256 = "17plga14y1425g7midysj49x12kssqa77l43cr3sm9976zpya8i8";
-      system = "ironclad";
-      asd = "ironclad";
-    });
-    systems = [ "ironclad/digest/md4" ];
-    lispLibs = [ (getAttr "bordeaux-threads" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  ironclad_slash_digest_slash_md5 = {
-    pname = "ironclad_digest_md5";
-    version = "v0.58";
-    asds = [ "ironclad" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/ironclad/2022-11-06/ironclad-v0.58.tgz";
-      sha256 = "17plga14y1425g7midysj49x12kssqa77l43cr3sm9976zpya8i8";
-      system = "ironclad";
-      asd = "ironclad";
-    });
-    systems = [ "ironclad/digest/md5" ];
-    lispLibs = [ (getAttr "bordeaux-threads" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  ironclad_slash_digest_slash_ripemd-128 = {
-    pname = "ironclad_digest_ripemd-128";
-    version = "v0.58";
-    asds = [ "ironclad" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/ironclad/2022-11-06/ironclad-v0.58.tgz";
-      sha256 = "17plga14y1425g7midysj49x12kssqa77l43cr3sm9976zpya8i8";
-      system = "ironclad";
-      asd = "ironclad";
-    });
-    systems = [ "ironclad/digest/ripemd-128" ];
-    lispLibs = [ (getAttr "bordeaux-threads" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  ironclad_slash_digest_slash_ripemd-160 = {
-    pname = "ironclad_digest_ripemd-160";
-    version = "v0.58";
-    asds = [ "ironclad" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/ironclad/2022-11-06/ironclad-v0.58.tgz";
-      sha256 = "17plga14y1425g7midysj49x12kssqa77l43cr3sm9976zpya8i8";
-      system = "ironclad";
-      asd = "ironclad";
-    });
-    systems = [ "ironclad/digest/ripemd-160" ];
-    lispLibs = [ (getAttr "bordeaux-threads" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  ironclad_slash_digest_slash_sha1 = {
-    pname = "ironclad_digest_sha1";
-    version = "v0.58";
-    asds = [ "ironclad" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/ironclad/2022-11-06/ironclad-v0.58.tgz";
-      sha256 = "17plga14y1425g7midysj49x12kssqa77l43cr3sm9976zpya8i8";
-      system = "ironclad";
-      asd = "ironclad";
-    });
-    systems = [ "ironclad/digest/sha1" ];
-    lispLibs = [ (getAttr "bordeaux-threads" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  ironclad_slash_digest_slash_sha256 = {
-    pname = "ironclad_digest_sha256";
-    version = "v0.58";
-    asds = [ "ironclad" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/ironclad/2022-11-06/ironclad-v0.58.tgz";
-      sha256 = "17plga14y1425g7midysj49x12kssqa77l43cr3sm9976zpya8i8";
-      system = "ironclad";
-      asd = "ironclad";
-    });
-    systems = [ "ironclad/digest/sha256" ];
-    lispLibs = [ (getAttr "bordeaux-threads" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  ironclad_slash_digest_slash_sha3 = {
-    pname = "ironclad_digest_sha3";
-    version = "v0.58";
-    asds = [ "ironclad" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/ironclad/2022-11-06/ironclad-v0.58.tgz";
-      sha256 = "17plga14y1425g7midysj49x12kssqa77l43cr3sm9976zpya8i8";
-      system = "ironclad";
-      asd = "ironclad";
-    });
-    systems = [ "ironclad/digest/sha3" ];
-    lispLibs = [ (getAttr "bordeaux-threads" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  ironclad_slash_digest_slash_sha512 = {
-    pname = "ironclad_digest_sha512";
-    version = "v0.58";
-    asds = [ "ironclad" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/ironclad/2022-11-06/ironclad-v0.58.tgz";
-      sha256 = "17plga14y1425g7midysj49x12kssqa77l43cr3sm9976zpya8i8";
-      system = "ironclad";
-      asd = "ironclad";
-    });
-    systems = [ "ironclad/digest/sha512" ];
-    lispLibs = [ (getAttr "bordeaux-threads" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  ironclad_slash_digest_slash_skein = {
-    pname = "ironclad_digest_skein";
-    version = "v0.58";
-    asds = [ "ironclad" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/ironclad/2022-11-06/ironclad-v0.58.tgz";
-      sha256 = "17plga14y1425g7midysj49x12kssqa77l43cr3sm9976zpya8i8";
-      system = "ironclad";
-      asd = "ironclad";
-    });
-    systems = [ "ironclad/digest/skein" ];
-    lispLibs = [ (getAttr "bordeaux-threads" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  ironclad_slash_digest_slash_sm3 = {
-    pname = "ironclad_digest_sm3";
-    version = "v0.58";
-    asds = [ "ironclad" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/ironclad/2022-11-06/ironclad-v0.58.tgz";
-      sha256 = "17plga14y1425g7midysj49x12kssqa77l43cr3sm9976zpya8i8";
-      system = "ironclad";
-      asd = "ironclad";
-    });
-    systems = [ "ironclad/digest/sm3" ];
-    lispLibs = [ (getAttr "bordeaux-threads" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  ironclad_slash_digest_slash_streebog = {
-    pname = "ironclad_digest_streebog";
-    version = "v0.58";
-    asds = [ "ironclad" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/ironclad/2022-11-06/ironclad-v0.58.tgz";
-      sha256 = "17plga14y1425g7midysj49x12kssqa77l43cr3sm9976zpya8i8";
-      system = "ironclad";
-      asd = "ironclad";
-    });
-    systems = [ "ironclad/digest/streebog" ];
-    lispLibs = [ (getAttr "bordeaux-threads" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  ironclad_slash_digest_slash_tiger = {
-    pname = "ironclad_digest_tiger";
-    version = "v0.58";
-    asds = [ "ironclad" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/ironclad/2022-11-06/ironclad-v0.58.tgz";
-      sha256 = "17plga14y1425g7midysj49x12kssqa77l43cr3sm9976zpya8i8";
-      system = "ironclad";
-      asd = "ironclad";
-    });
-    systems = [ "ironclad/digest/tiger" ];
-    lispLibs = [ (getAttr "bordeaux-threads" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  ironclad_slash_digest_slash_tree-hash = {
-    pname = "ironclad_digest_tree-hash";
-    version = "v0.58";
-    asds = [ "ironclad" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/ironclad/2022-11-06/ironclad-v0.58.tgz";
-      sha256 = "17plga14y1425g7midysj49x12kssqa77l43cr3sm9976zpya8i8";
-      system = "ironclad";
-      asd = "ironclad";
-    });
-    systems = [ "ironclad/digest/tree-hash" ];
-    lispLibs = [ (getAttr "bordeaux-threads" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  ironclad_slash_digest_slash_whirlpool = {
-    pname = "ironclad_digest_whirlpool";
-    version = "v0.58";
-    asds = [ "ironclad" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/ironclad/2022-11-06/ironclad-v0.58.tgz";
-      sha256 = "17plga14y1425g7midysj49x12kssqa77l43cr3sm9976zpya8i8";
-      system = "ironclad";
-      asd = "ironclad";
-    });
-    systems = [ "ironclad/digest/whirlpool" ];
-    lispLibs = [ (getAttr "bordeaux-threads" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  ironclad_slash_digests = {
-    pname = "ironclad_digests";
-    version = "v0.58";
-    asds = [ "ironclad" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/ironclad/2022-11-06/ironclad-v0.58.tgz";
-      sha256 = "17plga14y1425g7midysj49x12kssqa77l43cr3sm9976zpya8i8";
-      system = "ironclad";
-      asd = "ironclad";
-    });
-    systems = [ "ironclad/digests" ];
-    lispLibs = [ (getAttr "bordeaux-threads" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  ironclad_slash_kdf_slash_argon2 = {
-    pname = "ironclad_kdf_argon2";
-    version = "v0.58";
-    asds = [ "ironclad" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/ironclad/2022-11-06/ironclad-v0.58.tgz";
-      sha256 = "17plga14y1425g7midysj49x12kssqa77l43cr3sm9976zpya8i8";
-      system = "ironclad";
-      asd = "ironclad";
-    });
-    systems = [ "ironclad/kdf/argon2" ];
-    lispLibs = [ (getAttr "bordeaux-threads" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  ironclad_slash_kdf_slash_bcrypt = {
-    pname = "ironclad_kdf_bcrypt";
-    version = "v0.58";
-    asds = [ "ironclad" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/ironclad/2022-11-06/ironclad-v0.58.tgz";
-      sha256 = "17plga14y1425g7midysj49x12kssqa77l43cr3sm9976zpya8i8";
-      system = "ironclad";
-      asd = "ironclad";
-    });
-    systems = [ "ironclad/kdf/bcrypt" ];
-    lispLibs = [ (getAttr "bordeaux-threads" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  ironclad_slash_kdf_slash_hmac = {
-    pname = "ironclad_kdf_hmac";
-    version = "v0.58";
-    asds = [ "ironclad" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/ironclad/2022-11-06/ironclad-v0.58.tgz";
-      sha256 = "17plga14y1425g7midysj49x12kssqa77l43cr3sm9976zpya8i8";
-      system = "ironclad";
-      asd = "ironclad";
-    });
-    systems = [ "ironclad/kdf/hmac" ];
-    lispLibs = [ (getAttr "bordeaux-threads" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  ironclad_slash_kdf_slash_password-hash = {
-    pname = "ironclad_kdf_password-hash";
-    version = "v0.58";
-    asds = [ "ironclad" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/ironclad/2022-11-06/ironclad-v0.58.tgz";
-      sha256 = "17plga14y1425g7midysj49x12kssqa77l43cr3sm9976zpya8i8";
-      system = "ironclad";
-      asd = "ironclad";
-    });
-    systems = [ "ironclad/kdf/password-hash" ];
-    lispLibs = [ (getAttr "bordeaux-threads" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  ironclad_slash_kdf_slash_pkcs5 = {
-    pname = "ironclad_kdf_pkcs5";
-    version = "v0.58";
-    asds = [ "ironclad" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/ironclad/2022-11-06/ironclad-v0.58.tgz";
-      sha256 = "17plga14y1425g7midysj49x12kssqa77l43cr3sm9976zpya8i8";
-      system = "ironclad";
-      asd = "ironclad";
-    });
-    systems = [ "ironclad/kdf/pkcs5" ];
-    lispLibs = [ (getAttr "bordeaux-threads" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  ironclad_slash_kdf_slash_scrypt = {
-    pname = "ironclad_kdf_scrypt";
-    version = "v0.58";
-    asds = [ "ironclad" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/ironclad/2022-11-06/ironclad-v0.58.tgz";
-      sha256 = "17plga14y1425g7midysj49x12kssqa77l43cr3sm9976zpya8i8";
-      system = "ironclad";
-      asd = "ironclad";
-    });
-    systems = [ "ironclad/kdf/scrypt" ];
-    lispLibs = [ (getAttr "bordeaux-threads" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  ironclad_slash_kdfs = {
-    pname = "ironclad_kdfs";
-    version = "v0.58";
-    asds = [ "ironclad" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/ironclad/2022-11-06/ironclad-v0.58.tgz";
-      sha256 = "17plga14y1425g7midysj49x12kssqa77l43cr3sm9976zpya8i8";
-      system = "ironclad";
-      asd = "ironclad";
-    });
-    systems = [ "ironclad/kdfs" ];
-    lispLibs = [ (getAttr "bordeaux-threads" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  ironclad_slash_mac_slash_blake2-mac = {
-    pname = "ironclad_mac_blake2-mac";
-    version = "v0.58";
-    asds = [ "ironclad" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/ironclad/2022-11-06/ironclad-v0.58.tgz";
-      sha256 = "17plga14y1425g7midysj49x12kssqa77l43cr3sm9976zpya8i8";
-      system = "ironclad";
-      asd = "ironclad";
-    });
-    systems = [ "ironclad/mac/blake2-mac" ];
-    lispLibs = [ (getAttr "bordeaux-threads" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  ironclad_slash_mac_slash_blake2s-mac = {
-    pname = "ironclad_mac_blake2s-mac";
-    version = "v0.58";
-    asds = [ "ironclad" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/ironclad/2022-11-06/ironclad-v0.58.tgz";
-      sha256 = "17plga14y1425g7midysj49x12kssqa77l43cr3sm9976zpya8i8";
-      system = "ironclad";
-      asd = "ironclad";
-    });
-    systems = [ "ironclad/mac/blake2s-mac" ];
-    lispLibs = [ (getAttr "bordeaux-threads" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  ironclad_slash_mac_slash_cmac = {
-    pname = "ironclad_mac_cmac";
-    version = "v0.58";
-    asds = [ "ironclad" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/ironclad/2022-11-06/ironclad-v0.58.tgz";
-      sha256 = "17plga14y1425g7midysj49x12kssqa77l43cr3sm9976zpya8i8";
-      system = "ironclad";
-      asd = "ironclad";
-    });
-    systems = [ "ironclad/mac/cmac" ];
-    lispLibs = [ (getAttr "bordeaux-threads" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  ironclad_slash_mac_slash_gmac = {
-    pname = "ironclad_mac_gmac";
-    version = "v0.58";
-    asds = [ "ironclad" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/ironclad/2022-11-06/ironclad-v0.58.tgz";
-      sha256 = "17plga14y1425g7midysj49x12kssqa77l43cr3sm9976zpya8i8";
-      system = "ironclad";
-      asd = "ironclad";
-    });
-    systems = [ "ironclad/mac/gmac" ];
-    lispLibs = [ (getAttr "bordeaux-threads" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  ironclad_slash_mac_slash_hmac = {
-    pname = "ironclad_mac_hmac";
-    version = "v0.58";
-    asds = [ "ironclad" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/ironclad/2022-11-06/ironclad-v0.58.tgz";
-      sha256 = "17plga14y1425g7midysj49x12kssqa77l43cr3sm9976zpya8i8";
-      system = "ironclad";
-      asd = "ironclad";
-    });
-    systems = [ "ironclad/mac/hmac" ];
-    lispLibs = [ (getAttr "bordeaux-threads" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  ironclad_slash_mac_slash_poly1305 = {
-    pname = "ironclad_mac_poly1305";
-    version = "v0.58";
-    asds = [ "ironclad" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/ironclad/2022-11-06/ironclad-v0.58.tgz";
-      sha256 = "17plga14y1425g7midysj49x12kssqa77l43cr3sm9976zpya8i8";
-      system = "ironclad";
-      asd = "ironclad";
-    });
-    systems = [ "ironclad/mac/poly1305" ];
-    lispLibs = [ (getAttr "bordeaux-threads" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  ironclad_slash_mac_slash_siphash = {
-    pname = "ironclad_mac_siphash";
-    version = "v0.58";
-    asds = [ "ironclad" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/ironclad/2022-11-06/ironclad-v0.58.tgz";
-      sha256 = "17plga14y1425g7midysj49x12kssqa77l43cr3sm9976zpya8i8";
-      system = "ironclad";
-      asd = "ironclad";
-    });
-    systems = [ "ironclad/mac/siphash" ];
-    lispLibs = [ (getAttr "bordeaux-threads" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  ironclad_slash_mac_slash_skein-mac = {
-    pname = "ironclad_mac_skein-mac";
-    version = "v0.58";
-    asds = [ "ironclad" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/ironclad/2022-11-06/ironclad-v0.58.tgz";
-      sha256 = "17plga14y1425g7midysj49x12kssqa77l43cr3sm9976zpya8i8";
-      system = "ironclad";
-      asd = "ironclad";
-    });
-    systems = [ "ironclad/mac/skein-mac" ];
-    lispLibs = [ (getAttr "bordeaux-threads" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  ironclad_slash_macs = {
-    pname = "ironclad_macs";
-    version = "v0.58";
-    asds = [ "ironclad" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/ironclad/2022-11-06/ironclad-v0.58.tgz";
-      sha256 = "17plga14y1425g7midysj49x12kssqa77l43cr3sm9976zpya8i8";
-      system = "ironclad";
-      asd = "ironclad";
-    });
-    systems = [ "ironclad/macs" ];
-    lispLibs = [ (getAttr "bordeaux-threads" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  ironclad_slash_prng_slash_fortuna = {
-    pname = "ironclad_prng_fortuna";
-    version = "v0.58";
-    asds = [ "ironclad" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/ironclad/2022-11-06/ironclad-v0.58.tgz";
-      sha256 = "17plga14y1425g7midysj49x12kssqa77l43cr3sm9976zpya8i8";
-      system = "ironclad";
-      asd = "ironclad";
-    });
-    systems = [ "ironclad/prng/fortuna" ];
-    lispLibs = [ (getAttr "bordeaux-threads" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  ironclad_slash_prngs = {
-    pname = "ironclad_prngs";
-    version = "v0.58";
-    asds = [ "ironclad" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/ironclad/2022-11-06/ironclad-v0.58.tgz";
-      sha256 = "17plga14y1425g7midysj49x12kssqa77l43cr3sm9976zpya8i8";
-      system = "ironclad";
-      asd = "ironclad";
-    });
-    systems = [ "ironclad/prngs" ];
-    lispLibs = [ (getAttr "bordeaux-threads" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  ironclad_slash_public-key_slash_curve25519 = {
-    pname = "ironclad_public-key_curve25519";
-    version = "v0.58";
-    asds = [ "ironclad" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/ironclad/2022-11-06/ironclad-v0.58.tgz";
-      sha256 = "17plga14y1425g7midysj49x12kssqa77l43cr3sm9976zpya8i8";
-      system = "ironclad";
-      asd = "ironclad";
-    });
-    systems = [ "ironclad/public-key/curve25519" ];
-    lispLibs = [ (getAttr "bordeaux-threads" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  ironclad_slash_public-key_slash_curve448 = {
-    pname = "ironclad_public-key_curve448";
-    version = "v0.58";
-    asds = [ "ironclad" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/ironclad/2022-11-06/ironclad-v0.58.tgz";
-      sha256 = "17plga14y1425g7midysj49x12kssqa77l43cr3sm9976zpya8i8";
-      system = "ironclad";
-      asd = "ironclad";
-    });
-    systems = [ "ironclad/public-key/curve448" ];
-    lispLibs = [ (getAttr "bordeaux-threads" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  ironclad_slash_public-key_slash_dsa = {
-    pname = "ironclad_public-key_dsa";
-    version = "v0.58";
-    asds = [ "ironclad" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/ironclad/2022-11-06/ironclad-v0.58.tgz";
-      sha256 = "17plga14y1425g7midysj49x12kssqa77l43cr3sm9976zpya8i8";
-      system = "ironclad";
-      asd = "ironclad";
-    });
-    systems = [ "ironclad/public-key/dsa" ];
-    lispLibs = [ (getAttr "bordeaux-threads" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  ironclad_slash_public-key_slash_ed25519 = {
-    pname = "ironclad_public-key_ed25519";
-    version = "v0.58";
-    asds = [ "ironclad" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/ironclad/2022-11-06/ironclad-v0.58.tgz";
-      sha256 = "17plga14y1425g7midysj49x12kssqa77l43cr3sm9976zpya8i8";
-      system = "ironclad";
-      asd = "ironclad";
-    });
-    systems = [ "ironclad/public-key/ed25519" ];
-    lispLibs = [ (getAttr "bordeaux-threads" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  ironclad_slash_public-key_slash_ed448 = {
-    pname = "ironclad_public-key_ed448";
-    version = "v0.58";
-    asds = [ "ironclad" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/ironclad/2022-11-06/ironclad-v0.58.tgz";
-      sha256 = "17plga14y1425g7midysj49x12kssqa77l43cr3sm9976zpya8i8";
-      system = "ironclad";
-      asd = "ironclad";
-    });
-    systems = [ "ironclad/public-key/ed448" ];
-    lispLibs = [ (getAttr "bordeaux-threads" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  ironclad_slash_public-key_slash_elgamal = {
-    pname = "ironclad_public-key_elgamal";
-    version = "v0.58";
-    asds = [ "ironclad" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/ironclad/2022-11-06/ironclad-v0.58.tgz";
-      sha256 = "17plga14y1425g7midysj49x12kssqa77l43cr3sm9976zpya8i8";
-      system = "ironclad";
-      asd = "ironclad";
-    });
-    systems = [ "ironclad/public-key/elgamal" ];
-    lispLibs = [ (getAttr "bordeaux-threads" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  ironclad_slash_public-key_slash_rsa = {
-    pname = "ironclad_public-key_rsa";
-    version = "v0.58";
-    asds = [ "ironclad" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/ironclad/2022-11-06/ironclad-v0.58.tgz";
-      sha256 = "17plga14y1425g7midysj49x12kssqa77l43cr3sm9976zpya8i8";
-      system = "ironclad";
-      asd = "ironclad";
-    });
-    systems = [ "ironclad/public-key/rsa" ];
-    lispLibs = [ (getAttr "bordeaux-threads" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  ironclad_slash_public-key_slash_secp256k1 = {
-    pname = "ironclad_public-key_secp256k1";
-    version = "v0.58";
-    asds = [ "ironclad" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/ironclad/2022-11-06/ironclad-v0.58.tgz";
-      sha256 = "17plga14y1425g7midysj49x12kssqa77l43cr3sm9976zpya8i8";
-      system = "ironclad";
-      asd = "ironclad";
-    });
-    systems = [ "ironclad/public-key/secp256k1" ];
-    lispLibs = [ (getAttr "bordeaux-threads" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  ironclad_slash_public-key_slash_secp256r1 = {
-    pname = "ironclad_public-key_secp256r1";
-    version = "v0.58";
-    asds = [ "ironclad" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/ironclad/2022-11-06/ironclad-v0.58.tgz";
-      sha256 = "17plga14y1425g7midysj49x12kssqa77l43cr3sm9976zpya8i8";
-      system = "ironclad";
-      asd = "ironclad";
-    });
-    systems = [ "ironclad/public-key/secp256r1" ];
-    lispLibs = [ (getAttr "bordeaux-threads" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  ironclad_slash_public-key_slash_secp384r1 = {
-    pname = "ironclad_public-key_secp384r1";
-    version = "v0.58";
-    asds = [ "ironclad" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/ironclad/2022-11-06/ironclad-v0.58.tgz";
-      sha256 = "17plga14y1425g7midysj49x12kssqa77l43cr3sm9976zpya8i8";
-      system = "ironclad";
-      asd = "ironclad";
-    });
-    systems = [ "ironclad/public-key/secp384r1" ];
-    lispLibs = [ (getAttr "bordeaux-threads" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  ironclad_slash_public-key_slash_secp521r1 = {
-    pname = "ironclad_public-key_secp521r1";
-    version = "v0.58";
-    asds = [ "ironclad" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/ironclad/2022-11-06/ironclad-v0.58.tgz";
-      sha256 = "17plga14y1425g7midysj49x12kssqa77l43cr3sm9976zpya8i8";
-      system = "ironclad";
-      asd = "ironclad";
-    });
-    systems = [ "ironclad/public-key/secp521r1" ];
-    lispLibs = [ (getAttr "bordeaux-threads" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  ironclad_slash_public-keys = {
-    pname = "ironclad_public-keys";
-    version = "v0.58";
-    asds = [ "ironclad" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/ironclad/2022-11-06/ironclad-v0.58.tgz";
-      sha256 = "17plga14y1425g7midysj49x12kssqa77l43cr3sm9976zpya8i8";
-      system = "ironclad";
-      asd = "ironclad";
-    });
-    systems = [ "ironclad/public-keys" ];
-    lispLibs = [ (getAttr "bordeaux-threads" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  ironclad_slash_tests = {
-    pname = "ironclad_tests";
-    version = "v0.58";
-    asds = [ "ironclad" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/ironclad/2022-11-06/ironclad-v0.58.tgz";
-      sha256 = "17plga14y1425g7midysj49x12kssqa77l43cr3sm9976zpya8i8";
-      system = "ironclad";
-      asd = "ironclad";
-    });
-    systems = [ "ironclad/tests" ];
-    lispLibs = [ (getAttr "ironclad" pkgs) (getAttr "rt" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  isolated = {
-    pname = "isolated";
-    version = "20200218-git";
-    asds = [ "isolated" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-isolated/2020-02-18/cl-isolated-20200218-git.tgz";
-      sha256 = "01wbis4dw2cy7d2yh30rwvmlx3dr5s9dx8hs19xhjpznjbqfyksi";
-      system = "isolated";
-      asd = "isolated";
-    });
-    systems = [ "isolated" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) ];
-  };
-  issr = {
-    pname = "issr";
-    version = "20211020-git";
-    asds = [ "issr" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/hunchenissr/2021-10-20/hunchenissr-20211020-git.tgz";
-      sha256 = "1dfm7zdvyj14my8giznq1vsy20nj7my71y7a657slhf6v2cap5vs";
-      system = "issr";
-      asd = "issr";
-    });
-    systems = [ "issr" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "bordeaux-threads" pkgs) (getAttr "cl-base64" pkgs) (getAttr "str" pkgs) (getAttr "yxorp" pkgs) (getAttr "do-urlencode" pkgs) (getAttr "hunchentoot" pkgs) (getAttr "jonathan" pkgs) (getAttr "plump" pkgs) (getAttr "portal" pkgs) (getAttr "trivia" pkgs) (getAttr "trivial-garbage" pkgs) ];
-  };
-  issr-core = {
-    pname = "issr-core";
-    version = "20210228-git";
-    asds = [ "issr-core" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/core/2021-02-28/core-20210228-git.tgz";
-      sha256 = "1bajb09crzadkirdpd6jrpcc55irjd4sxzavygr25l85pafyhniw";
-      system = "issr-core";
-      asd = "issr-core";
-    });
-    systems = [ "issr-core" ];
-    lispLibs = [ (getAttr "str" pkgs) (getAttr "global-vars" pkgs) (getAttr "plump" pkgs) (getAttr "tailrec" pkgs) ];
-  };
-  iterate = {
-    pname = "iterate";
-    version = "release-b0f9a9c6-git";
-    asds = [ "iterate" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/iterate/2021-05-31/iterate-release-b0f9a9c6-git.tgz";
-      sha256 = "09xq2mdr97hagjrjpc47mp8l9wfp697aa9qaqmsy0yskayzg6xsc";
-      system = "iterate";
-      asd = "iterate";
-    });
-    systems = [ "iterate" ];
-    lispLibs = [  ];
-  };
-  iterate-clsql = {
-    pname = "iterate-clsql";
-    version = "20130312-http";
-    asds = [ "iterate-clsql" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/iterate-clsql/2013-03-12/iterate-clsql-20130312-http.tgz";
-      sha256 = "0adfs31zin5kkg9z5kyzykf8gmcgr600vvi4mjx7nixybh326h3h";
-      system = "iterate-clsql";
-      asd = "iterate-clsql";
-    });
-    systems = [ "iterate-clsql" ];
-    lispLibs = [ (getAttr "clsql" pkgs) (getAttr "iterate" pkgs) ];
-  };
-  iterate_slash_tests = {
-    pname = "iterate_tests";
-    version = "release-b0f9a9c6-git";
-    asds = [ "iterate" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/iterate/2021-05-31/iterate-release-b0f9a9c6-git.tgz";
-      sha256 = "09xq2mdr97hagjrjpc47mp8l9wfp697aa9qaqmsy0yskayzg6xsc";
-      system = "iterate";
-      asd = "iterate";
-    });
-    systems = [ "iterate/tests" ];
-    lispLibs = [ (getAttr "iterate" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  ixf = {
-    pname = "ixf";
-    version = "20180228-git";
-    asds = [ "ixf" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-ixf/2018-02-28/cl-ixf-20180228-git.tgz";
-      sha256 = "1wjdnf4vr9z7lcfc49kl43g6l2i23q9n81siy494k17d766cdvqa";
-      system = "ixf";
-      asd = "ixf";
-    });
-    systems = [ "ixf" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "babel" pkgs) (getAttr "cl-ppcre" pkgs) (getAttr "ieee-floats" pkgs) (getAttr "local-time" pkgs) (getAttr "md5" pkgs) (getAttr "split-sequence" pkgs) ];
-  };
-  jenkins_dot_api = {
-    pname = "jenkins.api";
-    version = "20130312-git";
-    asds = [ "jenkins.api" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/jenkins/2013-03-12/jenkins-20130312-git.tgz";
-      sha256 = "1kis95k3fwlaq2jbpia0wps4gq461w6p57dxlbvb0c6a5dgh4dwf";
-      system = "jenkins.api";
-      asd = "jenkins.api";
-    });
-    systems = [ "jenkins.api" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cl-json" pkgs) (getAttr "cl-ppcre" pkgs) (getAttr "closer-mop" pkgs) (getAttr "drakma" pkgs) (getAttr "iterate" pkgs) (getAttr "let-plus" pkgs) (getAttr "more-conditions" pkgs) (getAttr "puri" pkgs) (getAttr "split-sequence" pkgs) (getAttr "xml_dot_location" pkgs) ];
-  };
-  jingoh = {
-    pname = "jingoh";
-    version = "20220707-git";
-    asds = [ "jingoh" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/jingoh/2022-07-07/jingoh-20220707-git.tgz";
-      sha256 = "02wcamw47grg5rz5spn6vl441dk1m82rdrbk6nln69nazj2af76r";
-      system = "jingoh";
-      asd = "jingoh";
-    });
-    systems = [ "jingoh" ];
-    lispLibs = [ (getAttr "jingoh_dot_examiner" pkgs) (getAttr "jingoh_dot_org" pkgs) (getAttr "jingoh_dot_reader" pkgs) (getAttr "jingoh_dot_tester" pkgs) (getAttr "named-readtables" pkgs) ];
-  };
-  jingoh_dot_documentizer = {
-    pname = "jingoh.documentizer";
-    version = "20220707-git";
-    asds = [ "jingoh.documentizer" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/jingoh/2022-07-07/jingoh-20220707-git.tgz";
-      sha256 = "02wcamw47grg5rz5spn6vl441dk1m82rdrbk6nln69nazj2af76r";
-      system = "jingoh.documentizer";
-      asd = "jingoh.documentizer";
-    });
-    systems = [ "jingoh.documentizer" ];
-    lispLibs = [ (getAttr "_3bmd" pkgs) (getAttr "_3bmd-ext-code-blocks" pkgs) (getAttr "cl-ppcre" pkgs) (getAttr "eclector" pkgs) (getAttr "read-as-string" pkgs) (getAttr "uiop" pkgs) ];
-  };
-  jingoh_dot_documentizer_dot_test = {
-    pname = "jingoh.documentizer.test";
-    version = "20220707-git";
-    asds = [ "jingoh.documentizer.test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/jingoh/2022-07-07/jingoh-20220707-git.tgz";
-      sha256 = "02wcamw47grg5rz5spn6vl441dk1m82rdrbk6nln69nazj2af76r";
-      system = "jingoh.documentizer.test";
-      asd = "jingoh.documentizer.test";
-    });
-    systems = [ "jingoh.documentizer.test" ];
-    lispLibs = [ (getAttr "jingoh" pkgs) (getAttr "jingoh_dot_documentizer" pkgs) ];
-  };
-  jingoh_dot_examiner = {
-    pname = "jingoh.examiner";
-    version = "20220707-git";
-    asds = [ "jingoh.examiner" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/jingoh/2022-07-07/jingoh-20220707-git.tgz";
-      sha256 = "02wcamw47grg5rz5spn6vl441dk1m82rdrbk6nln69nazj2af76r";
-      system = "jingoh.examiner";
-      asd = "jingoh.examiner";
-    });
-    systems = [ "jingoh.examiner" ];
-    lispLibs = [ (getAttr "cl-ansi-text" pkgs) (getAttr "jingoh_dot_documentizer" pkgs) (getAttr "jingoh_dot_org" pkgs) (getAttr "jingoh_dot_tester" pkgs) ];
-  };
-  jingoh_dot_examiner_dot_test = {
-    pname = "jingoh.examiner.test";
-    version = "20220707-git";
-    asds = [ "jingoh.examiner.test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/jingoh/2022-07-07/jingoh-20220707-git.tgz";
-      sha256 = "02wcamw47grg5rz5spn6vl441dk1m82rdrbk6nln69nazj2af76r";
-      system = "jingoh.examiner.test";
-      asd = "jingoh.examiner.test";
-    });
-    systems = [ "jingoh.examiner.test" ];
-    lispLibs = [ (getAttr "cl-ansi-text" pkgs) (getAttr "jingoh" pkgs) (getAttr "jingoh_dot_examiner" pkgs) ];
-  };
-  jingoh_dot_generator = {
-    pname = "jingoh.generator";
-    version = "20220707-git";
-    asds = [ "jingoh.generator" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/jingoh/2022-07-07/jingoh-20220707-git.tgz";
-      sha256 = "02wcamw47grg5rz5spn6vl441dk1m82rdrbk6nln69nazj2af76r";
-      system = "jingoh.generator";
-      asd = "jingoh.generator";
-    });
-    systems = [ "jingoh.generator" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cl-unification" pkgs) (getAttr "closer-mop" pkgs) (getAttr "jingoh_dot_documentizer" pkgs) (getAttr "lambda-fiddle" pkgs) (getAttr "millet" pkgs) (getAttr "named-readtables" pkgs) (getAttr "prompt-for" pkgs) (getAttr "trivial-cltl2" pkgs) (getAttr "uiop" pkgs) ];
-  };
-  jingoh_dot_generator_dot_test = {
-    pname = "jingoh.generator.test";
-    version = "20220707-git";
-    asds = [ "jingoh.generator.test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/jingoh/2022-07-07/jingoh-20220707-git.tgz";
-      sha256 = "02wcamw47grg5rz5spn6vl441dk1m82rdrbk6nln69nazj2af76r";
-      system = "jingoh.generator.test";
-      asd = "jingoh.generator.test";
-    });
-    systems = [ "jingoh.generator.test" ];
-    lispLibs = [ (getAttr "jingoh" pkgs) (getAttr "jingoh_dot_generator" pkgs) ];
-  };
-  jingoh_dot_org = {
-    pname = "jingoh.org";
-    version = "20220707-git";
-    asds = [ "jingoh.org" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/jingoh/2022-07-07/jingoh-20220707-git.tgz";
-      sha256 = "02wcamw47grg5rz5spn6vl441dk1m82rdrbk6nln69nazj2af76r";
-      system = "jingoh.org";
-      asd = "jingoh.org";
-    });
-    systems = [ "jingoh.org" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "check-bnf" pkgs) (getAttr "jingoh_dot_documentizer" pkgs) ];
-  };
-  jingoh_dot_org_dot_test = {
-    pname = "jingoh.org.test";
-    version = "20220707-git";
-    asds = [ "jingoh.org.test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/jingoh/2022-07-07/jingoh-20220707-git.tgz";
-      sha256 = "02wcamw47grg5rz5spn6vl441dk1m82rdrbk6nln69nazj2af76r";
-      system = "jingoh.org.test";
-      asd = "jingoh.org.test";
-    });
-    systems = [ "jingoh.org.test" ];
-    lispLibs = [ (getAttr "jingoh" pkgs) (getAttr "jingoh_dot_org" pkgs) ];
-  };
-  jingoh_dot_parallel = {
-    pname = "jingoh.parallel";
-    version = "20220707-git";
-    asds = [ "jingoh.parallel" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/jingoh/2022-07-07/jingoh-20220707-git.tgz";
-      sha256 = "02wcamw47grg5rz5spn6vl441dk1m82rdrbk6nln69nazj2af76r";
-      system = "jingoh.parallel";
-      asd = "jingoh.parallel";
-    });
-    systems = [ "jingoh.parallel" ];
-    lispLibs = [ (getAttr "bordeaux-threads" pkgs) (getAttr "cl-cpus" pkgs) (getAttr "jingoh" pkgs) (getAttr "lparallel" pkgs) ];
-  };
-  jingoh_dot_parallel_dot_test = {
-    pname = "jingoh.parallel.test";
-    version = "20220707-git";
-    asds = [ "jingoh.parallel.test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/jingoh/2022-07-07/jingoh-20220707-git.tgz";
-      sha256 = "02wcamw47grg5rz5spn6vl441dk1m82rdrbk6nln69nazj2af76r";
-      system = "jingoh.parallel.test";
-      asd = "jingoh.parallel.test";
-    });
-    systems = [ "jingoh.parallel.test" ];
-    lispLibs = [ (getAttr "jingoh" pkgs) (getAttr "jingoh_dot_parallel" pkgs) ];
-  };
-  jingoh_dot_reader = {
-    pname = "jingoh.reader";
-    version = "20220707-git";
-    asds = [ "jingoh.reader" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/jingoh/2022-07-07/jingoh-20220707-git.tgz";
-      sha256 = "02wcamw47grg5rz5spn6vl441dk1m82rdrbk6nln69nazj2af76r";
-      system = "jingoh.reader";
-      asd = "jingoh.reader";
-    });
-    systems = [ "jingoh.reader" ];
-    lispLibs = [ (getAttr "eclector" pkgs) (getAttr "jingoh_dot_documentizer" pkgs) (getAttr "jingoh_dot_tester" pkgs) (getAttr "named-readtables" pkgs) (getAttr "uiop" pkgs) ];
-  };
-  jingoh_dot_reader_dot_test = {
-    pname = "jingoh.reader.test";
-    version = "20220707-git";
-    asds = [ "jingoh.reader.test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/jingoh/2022-07-07/jingoh-20220707-git.tgz";
-      sha256 = "02wcamw47grg5rz5spn6vl441dk1m82rdrbk6nln69nazj2af76r";
-      system = "jingoh.reader.test";
-      asd = "jingoh.reader.test";
-    });
-    systems = [ "jingoh.reader.test" ];
-    lispLibs = [ (getAttr "jingoh" pkgs) (getAttr "jingoh_dot_reader" pkgs) ];
-  };
-  jingoh_dot_tester = {
-    pname = "jingoh.tester";
-    version = "20220707-git";
-    asds = [ "jingoh.tester" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/jingoh/2022-07-07/jingoh-20220707-git.tgz";
-      sha256 = "02wcamw47grg5rz5spn6vl441dk1m82rdrbk6nln69nazj2af76r";
-      system = "jingoh.tester";
-      asd = "jingoh.tester";
-    });
-    systems = [ "jingoh.tester" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "bordeaux-threads" pkgs) (getAttr "check-bnf" pkgs) (getAttr "cl-ansi-text" pkgs) (getAttr "cl-colors2" pkgs) (getAttr "closer-mop" pkgs) (getAttr "fuzzy-match" pkgs) (getAttr "jingoh_dot_documentizer" pkgs) (getAttr "jingoh_dot_org" pkgs) (getAttr "structure-ext" pkgs) (getAttr "uiop" pkgs) (getAttr "vivid-colors" pkgs) (getAttr "vivid-diff" pkgs) ];
-  };
-  jingoh_dot_tester_dot_test = {
-    pname = "jingoh.tester.test";
-    version = "20220707-git";
-    asds = [ "jingoh.tester.test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/jingoh/2022-07-07/jingoh-20220707-git.tgz";
-      sha256 = "02wcamw47grg5rz5spn6vl441dk1m82rdrbk6nln69nazj2af76r";
-      system = "jingoh.tester.test";
-      asd = "jingoh.tester.test";
-    });
-    systems = [ "jingoh.tester.test" ];
-    lispLibs = [ (getAttr "jingoh" pkgs) (getAttr "jingoh_dot_tester" pkgs) ];
-  };
-  jingoh_slash_test = {
-    pname = "jingoh_test";
-    version = "20220707-git";
-    asds = [ "jingoh" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/jingoh/2022-07-07/jingoh-20220707-git.tgz";
-      sha256 = "02wcamw47grg5rz5spn6vl441dk1m82rdrbk6nln69nazj2af76r";
-      system = "jingoh";
-      asd = "jingoh";
-    });
-    systems = [ "jingoh/test" ];
-    lispLibs = [ (getAttr "jingoh" pkgs) (getAttr "named-readtables" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  jonathan = {
-    pname = "jonathan";
-    version = "20200925-git";
-    asds = [ "jonathan" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/jonathan/2020-09-25/jonathan-20200925-git.tgz";
-      sha256 = "1l4sfxfmijibsvkbszikzslw1yy8z52ml9may1w2s0ay7lg7rsng";
-      system = "jonathan";
-      asd = "jonathan";
-    });
-    systems = [ "jonathan" ];
-    lispLibs = [ (getAttr "babel" pkgs) (getAttr "cl-annot" pkgs) (getAttr "cl-ppcre" pkgs) (getAttr "cl-syntax" pkgs) (getAttr "cl-syntax-annot" pkgs) (getAttr "fast-io" pkgs) (getAttr "proc-parse" pkgs) (getAttr "trivial-types" pkgs) ];
-  };
-  jonathan-test = {
-    pname = "jonathan-test";
-    version = "20200925-git";
-    asds = [ "jonathan-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/jonathan/2020-09-25/jonathan-20200925-git.tgz";
-      sha256 = "1l4sfxfmijibsvkbszikzslw1yy8z52ml9may1w2s0ay7lg7rsng";
-      system = "jonathan-test";
-      asd = "jonathan-test";
-    });
-    systems = [ "jonathan-test" ];
-    lispLibs = [ (getAttr "jonathan" pkgs) (getAttr "legion" pkgs) (getAttr "prove" pkgs) (getAttr "prove-asdf" pkgs) ];
-  };
-  jose = {
-    pname = "jose";
-    version = "20220331-git";
-    asds = [ "jose" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/jose/2022-03-31/jose-20220331-git.tgz";
-      sha256 = "154n6jx2f5psgzwz6k5ia6zxdjynnnbyxalxfhmm11s3rx028461";
-      system = "jose";
-      asd = "jose";
-    });
-    systems = [ "jose" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "assoc-utils" pkgs) (getAttr "cl-base64" pkgs) (getAttr "ironclad" pkgs) (getAttr "jonathan" pkgs) (getAttr "split-sequence" pkgs) (getAttr "trivial-utf-8" pkgs) ];
-  };
-  journal = {
-    pname = "journal";
-    version = "20220331-git";
-    asds = [ "journal" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/journal/2022-03-31/journal-20220331-git.tgz";
-      sha256 = "1yp7wcyx38vadpyxi73vn1cb0drnsbfh40hvd45whyrng761xqdm";
-      system = "journal";
-      asd = "journal";
-    });
-    systems = [ "journal" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "bordeaux-threads" pkgs) (getAttr "local-time" pkgs) (getAttr "mgl-pax" pkgs) (getAttr "trivial-features" pkgs) (getAttr "trivial-garbage" pkgs) ];
-  };
-  journal_slash_test = {
-    pname = "journal_test";
-    version = "20220331-git";
-    asds = [ "journal" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/journal/2022-03-31/journal-20220331-git.tgz";
-      sha256 = "1yp7wcyx38vadpyxi73vn1cb0drnsbfh40hvd45whyrng761xqdm";
-      system = "journal";
-      asd = "journal";
-    });
-    systems = [ "journal/test" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "journal" pkgs) (getAttr "try" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  jp-numeral = {
-    pname = "jp-numeral";
-    version = "20221106-git";
-    asds = [ "jp-numeral" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/jp-numeral/2022-11-06/jp-numeral-20221106-git.tgz";
-      sha256 = "1xqvah6mjd8lb2n19wzsn29q6az9kx1c48js3yj0ij73kjncby30";
-      system = "jp-numeral";
-      asd = "jp-numeral";
-    });
-    systems = [ "jp-numeral" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "babel" pkgs) ];
-  };
-  jp-numeral-test = {
-    pname = "jp-numeral-test";
-    version = "20221106-git";
-    asds = [ "jp-numeral-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/jp-numeral/2022-11-06/jp-numeral-20221106-git.tgz";
-      sha256 = "1xqvah6mjd8lb2n19wzsn29q6az9kx1c48js3yj0ij73kjncby30";
-      system = "jp-numeral-test";
-      asd = "jp-numeral-test";
-    });
-    systems = [ "jp-numeral-test" ];
-    lispLibs = [ (getAttr "_1am" pkgs) (getAttr "alexandria" pkgs) (getAttr "jp-numeral" pkgs) ];
-  };
-  jpeg-turbo = {
-    pname = "jpeg-turbo";
-    version = "20201220-git";
-    asds = [ "jpeg-turbo" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/jpeg-turbo/2020-12-20/jpeg-turbo-20201220-git.tgz";
-      sha256 = "1andd1ibbk3224idnpsnrn96flr5d1wm9ja3di57fs04wn577sag";
-      system = "jpeg-turbo";
-      asd = "jpeg-turbo";
-    });
-    systems = [ "jpeg-turbo" ];
-    lispLibs = [ (getAttr "cffi" pkgs) (getAttr "cffi-grovel" pkgs) ];
-  };
-  jpeg-turbo_slash_tests = {
-    pname = "jpeg-turbo_tests";
-    version = "20201220-git";
-    asds = [ "jpeg-turbo" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/jpeg-turbo/2020-12-20/jpeg-turbo-20201220-git.tgz";
-      sha256 = "1andd1ibbk3224idnpsnrn96flr5d1wm9ja3di57fs04wn577sag";
-      system = "jpeg-turbo";
-      asd = "jpeg-turbo";
-    });
-    systems = [ "jpeg-turbo/tests" ];
-    lispLibs = [ (getAttr "fiveam" pkgs) (getAttr "jpeg-turbo" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  jpl-queues = {
-    pname = "jpl-queues";
-    version = "0.1";
-    asds = [ "jpl-queues" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/jpl-queues/2010-10-06/jpl-queues-0.1.tgz";
-      sha256 = "1xgddsfa1gr0cjmdlc304j3msxi8w2fyk9i497x56kmkif7pkj88";
-      system = "jpl-queues";
-      asd = "jpl-queues";
-    });
-    systems = [ "jpl-queues" ];
-    lispLibs = [ (getAttr "bordeaux-threads" pkgs) (getAttr "jpl-util" pkgs) ];
-  };
-  jpl-util = {
-    pname = "jpl-util";
-    version = "20151031-git";
-    asds = [ "jpl-util" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-jpl-util/2015-10-31/cl-jpl-util-20151031-git.tgz";
-      sha256 = "0nc0rk9n8grkg3045xsw34whmcmddn2sfrxki4268g7kpgz0d2yz";
-      system = "jpl-util";
-      asd = "jpl-util";
-    });
-    systems = [ "jpl-util" ];
-    lispLibs = [  ];
-  };
-  js-parser = {
-    pname = "js-parser";
-    version = "20150407-git";
-    asds = [ "js-parser" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/js-parser/2015-04-07/js-parser-20150407-git.tgz";
-      sha256 = "0hqw515vyhrv1as5sfn3l792ddjps85zbzpblr2cjyq9dmdrg89a";
-      system = "js-parser";
-      asd = "js-parser";
-    });
-    systems = [ "js-parser" ];
-    lispLibs = [ (getAttr "cl-ppcre" pkgs) ];
-  };
-  js-parser-tests = {
-    pname = "js-parser-tests";
-    version = "20150407-git";
-    asds = [ "js-parser-tests" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/js-parser/2015-04-07/js-parser-20150407-git.tgz";
-      sha256 = "0hqw515vyhrv1as5sfn3l792ddjps85zbzpblr2cjyq9dmdrg89a";
-      system = "js-parser-tests";
-      asd = "js-parser-tests";
-    });
-    systems = [ "js-parser-tests" ];
-    lispLibs = [ (getAttr "js-parser" pkgs) ];
-  };
-  json-lib = {
-    pname = "json-lib";
-    version = "20221106-git";
-    asds = [ "json-lib" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/json-lib/2022-11-06/json-lib-20221106-git.tgz";
-      sha256 = "0a9f70niknjnggpn200idvyx77578qjn07qvbs0rknly31b98bh2";
-      system = "json-lib";
-      asd = "json-lib";
-    });
-    systems = [ "json-lib" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "babel" pkgs) (getAttr "cl-fad" pkgs) (getAttr "str" pkgs) (getAttr "parse-float" pkgs) ];
-  };
-  json-mop = {
-    pname = "json-mop";
-    version = "20210411-git";
-    asds = [ "json-mop" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/json-mop/2021-04-11/json-mop-20210411-git.tgz";
-      sha256 = "1d4k1l415iwssn8qyy3qjcfk3cclz6rzq750dgbiisys8ffmgpgp";
-      system = "json-mop";
-      asd = "json-mop";
-    });
-    systems = [ "json-mop" ];
-    lispLibs = [ (getAttr "anaphora" pkgs) (getAttr "closer-mop" pkgs) (getAttr "yason" pkgs) ];
-  };
-  json-mop-tests = {
-    pname = "json-mop-tests";
-    version = "20210411-git";
-    asds = [ "json-mop-tests" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/json-mop/2021-04-11/json-mop-20210411-git.tgz";
-      sha256 = "1d4k1l415iwssn8qyy3qjcfk3cclz6rzq750dgbiisys8ffmgpgp";
-      system = "json-mop-tests";
-      asd = "json-mop-tests";
-    });
-    systems = [ "json-mop-tests" ];
-    lispLibs = [ (getAttr "fiveam" pkgs) (getAttr "json-mop" pkgs) ];
-  };
-  json-responses = {
-    pname = "json-responses";
-    version = "20190307-hg";
-    asds = [ "json-responses" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/json-responses/2019-03-07/json-responses-20190307-hg.tgz";
-      sha256 = "0f1hrs3rhi6qn0r8qd3fbsknn417b8v8b4s4989yfwfvnf922g05";
-      system = "json-responses";
-      asd = "json-responses";
-    });
-    systems = [ "json-responses" ];
-    lispLibs = [ (getAttr "cl-json" pkgs) (getAttr "hunchentoot" pkgs) ];
-  };
-  json-responses-test = {
-    pname = "json-responses-test";
-    version = "20190307-hg";
-    asds = [ "json-responses-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/json-responses/2019-03-07/json-responses-20190307-hg.tgz";
-      sha256 = "0f1hrs3rhi6qn0r8qd3fbsknn417b8v8b4s4989yfwfvnf922g05";
-      system = "json-responses-test";
-      asd = "json-responses";
-    });
-    systems = [ "json-responses-test" ];
-    lispLibs = [ (getAttr "fiveam" pkgs) (getAttr "json-responses" pkgs) ];
-  };
-  json-schema = {
-    pname = "json-schema";
-    version = "20221106-git";
-    asds = [ "json-schema" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/json-schema/2022-11-06/json-schema-20221106-git.tgz";
-      sha256 = "11rgnj14p8x059zx8hs02jji1p69v8kix783vf557zpcbydrw2mn";
-      system = "json-schema";
-      asd = "json-schema";
-    });
-    systems = [ "json-schema" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "arrows" pkgs) (getAttr "cl-ppcre" pkgs) (getAttr "str" pkgs) (getAttr "dexador" pkgs) (getAttr "function-cache" pkgs) (getAttr "local-time" pkgs) (getAttr "local-time-duration" pkgs) (getAttr "quri" pkgs) (getAttr "sanity-clause" pkgs) (getAttr "st-json" pkgs) (getAttr "trivial-types" pkgs) ];
-  };
-  json-schema_slash_json-schema-test-suite = {
-    pname = "json-schema_json-schema-test-suite";
-    version = "20221106-git";
-    asds = [ "json-schema" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/json-schema/2022-11-06/json-schema-20221106-git.tgz";
-      sha256 = "11rgnj14p8x059zx8hs02jji1p69v8kix783vf557zpcbydrw2mn";
-      system = "json-schema";
-      asd = "json-schema";
-    });
-    systems = [ "json-schema/json-schema-test-suite" ];
-    lispLibs = [ (getAttr "json-schema" pkgs) (getAttr "rove" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  json-schema_slash_test = {
-    pname = "json-schema_test";
-    version = "20221106-git";
-    asds = [ "json-schema" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/json-schema/2022-11-06/json-schema-20221106-git.tgz";
-      sha256 = "11rgnj14p8x059zx8hs02jji1p69v8kix783vf557zpcbydrw2mn";
-      system = "json-schema";
-      asd = "json-schema";
-    });
-    systems = [ "json-schema/test" ];
-    lispLibs = [  ];
-    meta = {
-      broken = true;
-    };
-  };
-  json-schema_slash_unit-tests = {
-    pname = "json-schema_unit-tests";
-    version = "20221106-git";
-    asds = [ "json-schema" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/json-schema/2022-11-06/json-schema-20221106-git.tgz";
-      sha256 = "11rgnj14p8x059zx8hs02jji1p69v8kix783vf557zpcbydrw2mn";
-      system = "json-schema";
-      asd = "json-schema";
-    });
-    systems = [ "json-schema/unit-tests" ];
-    lispLibs = [ (getAttr "json-schema" pkgs) (getAttr "rove" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  json-streams = {
-    pname = "json-streams";
-    version = "20171019-git";
-    asds = [ "json-streams" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/json-streams/2017-10-19/json-streams-20171019-git.tgz";
-      sha256 = "0cia3721im04q73dfkd688d8splgpz03qa4h8s3r39kar4w3xll2";
-      system = "json-streams";
-      asd = "json-streams";
-    });
-    systems = [ "json-streams" ];
-    lispLibs = [  ];
-  };
-  json-streams-tests = {
-    pname = "json-streams-tests";
-    version = "20171019-git";
-    asds = [ "json-streams-tests" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/json-streams/2017-10-19/json-streams-20171019-git.tgz";
-      sha256 = "0cia3721im04q73dfkd688d8splgpz03qa4h8s3r39kar4w3xll2";
-      system = "json-streams-tests";
-      asd = "json-streams-tests";
-    });
-    systems = [ "json-streams-tests" ];
-    lispLibs = [ (getAttr "cl-quickcheck" pkgs) (getAttr "flexi-streams" pkgs) (getAttr "json-streams" pkgs) ];
-  };
-  jsonrpc = {
-    pname = "jsonrpc";
-    version = "20221106-git";
-    asds = [ "jsonrpc" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/jsonrpc/2022-11-06/jsonrpc-20221106-git.tgz";
-      sha256 = "0g8g9mak6sl27cbf6rrw9pwk2qxx03ijzihhqmcrrr33y9zkdqkk";
-      system = "jsonrpc";
-      asd = "jsonrpc";
-    });
-    systems = [ "jsonrpc" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "bordeaux-threads" pkgs) (getAttr "chanl" pkgs) (getAttr "dissect" pkgs) (getAttr "event-emitter" pkgs) (getAttr "usocket" pkgs) (getAttr "vom" pkgs) (getAttr "yason" pkgs) ];
-  };
-  jsown = {
-    pname = "jsown";
-    version = "20200218-git";
-    asds = [ "jsown" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/jsown/2020-02-18/jsown-20200218-git.tgz";
-      sha256 = "0gadvmf1d9bq35s61z76psrsnzwwk12svi66jigf491hv48wigw7";
-      system = "jsown";
-      asd = "jsown";
-    });
-    systems = [ "jsown" ];
-    lispLibs = [  ];
-  };
-  jsown-tests = {
-    pname = "jsown-tests";
-    version = "20200218-git";
-    asds = [ "jsown-tests" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/jsown/2020-02-18/jsown-20200218-git.tgz";
-      sha256 = "0gadvmf1d9bq35s61z76psrsnzwwk12svi66jigf491hv48wigw7";
-      system = "jsown-tests";
-      asd = "jsown-tests";
-    });
-    systems = [ "jsown-tests" ];
-    lispLibs = [ (getAttr "fiveam" pkgs) (getAttr "jsown" pkgs) ];
-  };
-  jsown-utils = {
-    pname = "jsown-utils";
-    version = "20220707-git";
-    asds = [ "jsown-utils" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/jsown-utils/2022-07-07/jsown-utils-20220707-git.tgz";
-      sha256 = "046a18fywkim0jbnpls5zqdv65j1kwl268p4dbdd2dxgx050fwak";
-      system = "jsown-utils";
-      asd = "jsown-utils";
-    });
-    systems = [ "jsown-utils" ];
-    lispLibs = [ (getAttr "closer-mop" pkgs) (getAttr "jsown" pkgs) ];
-  };
-  just-getopt-parser = {
-    pname = "just-getopt-parser";
-    version = "20211209-git";
-    asds = [ "just-getopt-parser" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-just-getopt-parser/2021-12-09/cl-just-getopt-parser-20211209-git.tgz";
-      sha256 = "0ngh8b51ngh3bqacl40j6wwiinhwxswsy02d9k7qlzv9sbjxay4s";
-      system = "just-getopt-parser";
-      asd = "just-getopt-parser";
-    });
-    systems = [ "just-getopt-parser" ];
-    lispLibs = [  ];
-  };
-  jwacs = {
-    pname = "jwacs";
-    version = "20180228-git";
-    asds = [ "jwacs" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/jwacs/2018-02-28/jwacs-20180228-git.tgz";
-      sha256 = "1wzln3bjjmdv040i339dsm48a1sc2cnwhh4z066x2wkl5ka7j5b2";
-      system = "jwacs";
-      asd = "jwacs";
-    });
-    systems = [ "jwacs" ];
-    lispLibs = [ (getAttr "cl-ppcre" pkgs) ];
-  };
-  jwacs-tests = {
-    pname = "jwacs-tests";
-    version = "20180228-git";
-    asds = [ "jwacs-tests" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/jwacs/2018-02-28/jwacs-20180228-git.tgz";
-      sha256 = "1wzln3bjjmdv040i339dsm48a1sc2cnwhh4z066x2wkl5ka7j5b2";
-      system = "jwacs-tests";
-      asd = "jwacs-tests";
-    });
-    systems = [ "jwacs-tests" ];
-    lispLibs = [ (getAttr "jwacs" pkgs) ];
-  };
-  kanren-trs = {
-    pname = "kanren-trs";
-    version = "20120305-svn";
-    asds = [ "kanren-trs" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-kanren-trs/2012-03-05/cl-kanren-trs-20120305-svn.tgz";
-      sha256 = "1r9xyickdkkqcaa7abvks4hqwjb7s95lcrym026c1w6ciibiypr7";
-      system = "kanren-trs";
-      asd = "kanren-trs";
-    });
-    systems = [ "kanren-trs" ];
-    lispLibs = [  ];
-  };
-  kanren-trs-test = {
-    pname = "kanren-trs-test";
-    version = "20120305-svn";
-    asds = [ "kanren-trs-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-kanren-trs/2012-03-05/cl-kanren-trs-20120305-svn.tgz";
-      sha256 = "1r9xyickdkkqcaa7abvks4hqwjb7s95lcrym026c1w6ciibiypr7";
-      system = "kanren-trs-test";
-      asd = "kanren-trs-test";
-    });
-    systems = [ "kanren-trs-test" ];
-    lispLibs = [ (getAttr "kanren-trs" pkgs) ];
-  };
-  kaputt = {
-    pname = "kaputt";
-    version = "20221106-git";
-    asds = [ "kaputt" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-kaputt/2022-11-06/cl-kaputt-20221106-git.tgz";
-      sha256 = "1jd9lmdzkjm6mawsxczg6czyv7zbmaplq0ikmda0ysh4aq3apnnj";
-      system = "kaputt";
-      asd = "kaputt";
-    });
-    systems = [ "kaputt" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) ];
-  };
-  kaputt_slash_example = {
-    pname = "kaputt_example";
-    version = "20221106-git";
-    asds = [ "kaputt" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-kaputt/2022-11-06/cl-kaputt-20221106-git.tgz";
-      sha256 = "1jd9lmdzkjm6mawsxczg6czyv7zbmaplq0ikmda0ysh4aq3apnnj";
-      system = "kaputt";
-      asd = "kaputt";
-    });
-    systems = [ "kaputt/example" ];
-    lispLibs = [ (getAttr "kaputt" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  kaputt_slash_testsuite = {
-    pname = "kaputt_testsuite";
-    version = "20221106-git";
-    asds = [ "kaputt" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-kaputt/2022-11-06/cl-kaputt-20221106-git.tgz";
-      sha256 = "1jd9lmdzkjm6mawsxczg6czyv7zbmaplq0ikmda0ysh4aq3apnnj";
-      system = "kaputt";
-      asd = "kaputt";
-    });
-    systems = [ "kaputt/testsuite" ];
-    lispLibs = [ (getAttr "kaputt" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  kebab = {
-    pname = "kebab";
-    version = "20150608-git";
-    asds = [ "kebab" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/kebab/2015-06-08/kebab-20150608-git.tgz";
-      sha256 = "0j5haabnvj0vz0rx9mwyfsb3qzpga9nickbjw8xs6vypkdzlqv1b";
-      system = "kebab";
-      asd = "kebab";
-    });
-    systems = [ "kebab" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cl-interpol" pkgs) (getAttr "cl-ppcre" pkgs) (getAttr "split-sequence" pkgs) ];
-  };
-  kebab-test = {
-    pname = "kebab-test";
-    version = "20150608-git";
-    asds = [ "kebab-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/kebab/2015-06-08/kebab-20150608-git.tgz";
-      sha256 = "0j5haabnvj0vz0rx9mwyfsb3qzpga9nickbjw8xs6vypkdzlqv1b";
-      system = "kebab-test";
-      asd = "kebab-test";
-    });
-    systems = [ "kebab-test" ];
-    lispLibs = [ (getAttr "kebab" pkgs) (getAttr "prove" pkgs) (getAttr "prove-asdf" pkgs) ];
-  };
-  kekule-clj = {
-    pname = "kekule-clj";
-    version = "20221106-git";
-    asds = [ "kekule-clj" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/kekule-clj/2022-11-06/kekule-clj-20221106-git.tgz";
-      sha256 = "12bwymk9vh9bdyi85pfgi79815g0vdlj37y85zld13f9cnf4kl3v";
-      system = "kekule-clj";
-      asd = "kekule-clj";
-    });
-    systems = [ "kekule-clj" ];
-    lispLibs = [ (getAttr "common-lisp-jupyter" pkgs) ];
-  };
-  kenzo = {
-    pname = "kenzo";
-    version = "20200325-git";
-    asds = [ "kenzo" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/kenzo/2020-03-25/kenzo-20200325-git.tgz";
-      sha256 = "0dg70p5pxvx2ksr66z3p2nkxxwkjd852pkckr15j6cwfaji9fr8r";
-      system = "kenzo";
-      asd = "kenzo";
-    });
-    systems = [ "kenzo" ];
-    lispLibs = [  ];
-  };
-  kenzo-test = {
-    pname = "kenzo-test";
-    version = "20200325-git";
-    asds = [ "kenzo-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/kenzo/2020-03-25/kenzo-20200325-git.tgz";
-      sha256 = "0dg70p5pxvx2ksr66z3p2nkxxwkjd852pkckr15j6cwfaji9fr8r";
-      system = "kenzo-test";
-      asd = "kenzo-test";
-    });
-    systems = [ "kenzo-test" ];
-    lispLibs = [ (getAttr "fiveam" pkgs) (getAttr "kenzo" pkgs) ];
-  };
-  keystone = {
-    pname = "keystone";
-    version = "20200427-git";
-    asds = [ "keystone" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/keystone/2020-04-27/keystone-20200427-git.tgz";
-      sha256 = "04fczbkihf87qyp9f1sv45h69xrvdmcmxkv4m868q8zqw6z48hlj";
-      system = "keystone";
-      asd = "keystone";
-    });
-    systems = [ "keystone" ];
-    lispLibs = [ (getAttr "cffi" pkgs) (getAttr "cffi-grovel" pkgs) (getAttr "gt" pkgs) (getAttr "static-vectors" pkgs) (getAttr "trivial-features" pkgs) ];
-  };
-  keystone_slash_raw = {
-    pname = "keystone_raw";
-    version = "20200427-git";
-    asds = [ "keystone" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/keystone/2020-04-27/keystone-20200427-git.tgz";
-      sha256 = "04fczbkihf87qyp9f1sv45h69xrvdmcmxkv4m868q8zqw6z48hlj";
-      system = "keystone";
-      asd = "keystone";
-    });
-    systems = [ "keystone/raw" ];
-    lispLibs = [ (getAttr "cffi" pkgs) (getAttr "cffi-grovel" pkgs) (getAttr "gt" pkgs) (getAttr "static-vectors" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  keystone_slash_raw-test = {
-    pname = "keystone_raw-test";
-    version = "20200427-git";
-    asds = [ "keystone" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/keystone/2020-04-27/keystone-20200427-git.tgz";
-      sha256 = "04fczbkihf87qyp9f1sv45h69xrvdmcmxkv4m868q8zqw6z48hlj";
-      system = "keystone";
-      asd = "keystone";
-    });
-    systems = [ "keystone/raw-test" ];
-    lispLibs = [ (getAttr "cffi" pkgs) (getAttr "cffi-grovel" pkgs) (getAttr "gt" pkgs) (getAttr "static-vectors" pkgs) (getAttr "stefil" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  keystone_slash_test = {
-    pname = "keystone_test";
-    version = "20200427-git";
-    asds = [ "keystone" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/keystone/2020-04-27/keystone-20200427-git.tgz";
-      sha256 = "04fczbkihf87qyp9f1sv45h69xrvdmcmxkv4m868q8zqw6z48hlj";
-      system = "keystone";
-      asd = "keystone";
-    });
-    systems = [ "keystone/test" ];
-    lispLibs = [ (getAttr "cffi" pkgs) (getAttr "cffi-grovel" pkgs) (getAttr "gt" pkgs) (getAttr "keystone" pkgs) (getAttr "static-vectors" pkgs) (getAttr "stefil" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  kl-verify = {
-    pname = "kl-verify";
-    version = "20120909-git";
-    asds = [ "kl-verify" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/kl-verify/2012-09-09/kl-verify-20120909-git.tgz";
-      sha256 = "1m5jyvvfb24idw0xzi92diyrygmq638dwxg0sl247yyvmwsqb8yj";
-      system = "kl-verify";
-      asd = "kl-verify";
-    });
-    systems = [ "kl-verify" ];
-    lispLibs = [ (getAttr "image" pkgs) ];
-  };
-  km = {
-    pname = "km";
-    version = "2-5-33";
-    asds = [ "km" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/km/2011-05-22/km-2-5-33.tgz";
-      sha256 = "0vl4g7vg20l14xc1b5g1d0scak6ck5028q5s5c75pr8fp15m7wyb";
-      system = "km";
-      asd = "km";
-    });
-    systems = [ "km" ];
-    lispLibs = [  ];
-  };
-  kmrcl = {
-    pname = "kmrcl";
-    version = "20201016-git";
-    asds = [ "kmrcl" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/kmrcl/2020-10-16/kmrcl-20201016-git.tgz";
-      sha256 = "06gx04mah5nc8w78s0j8628divbf1s5w7af8w7pvzb2d5mgvrbd2";
-      system = "kmrcl";
-      asd = "kmrcl";
-    });
-    systems = [ "kmrcl" ];
-    lispLibs = [  ];
-  };
-  kmrcl_slash_test = {
-    pname = "kmrcl_test";
-    version = "20201016-git";
-    asds = [ "kmrcl" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/kmrcl/2020-10-16/kmrcl-20201016-git.tgz";
-      sha256 = "06gx04mah5nc8w78s0j8628divbf1s5w7af8w7pvzb2d5mgvrbd2";
-      system = "kmrcl";
-      asd = "kmrcl";
-    });
-    systems = [ "kmrcl/test" ];
-    lispLibs = [ (getAttr "kmrcl" pkgs) (getAttr "rt" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  l-math = {
-    pname = "l-math";
-    version = "20190307-git";
-    asds = [ "l-math" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/l-math/2019-03-07/l-math-20190307-git.tgz";
-      sha256 = "12nhj1hrvgvmichrjf46fi0f1lzrjajw7k9i1f6qycnnqw45qan1";
-      system = "l-math";
-      asd = "l-math";
-    });
-    systems = [ "l-math" ];
-    lispLibs = [  ];
-  };
-  l-system = {
-    pname = "l-system";
-    version = "20180228-git";
-    asds = [ "l-system" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/l-system/2018-02-28/l-system-20180228-git.tgz";
-      sha256 = "1zvd90s7y936bx7sirc38vs8r2rs62064ndj06ahrc38vagv4qwd";
-      system = "l-system";
-      asd = "l-system";
-    });
-    systems = [ "l-system" ];
-    lispLibs = [ (getAttr "iterate" pkgs) ];
-  };
-  l-system-examples = {
-    pname = "l-system-examples";
-    version = "20180228-git";
-    asds = [ "l-system-examples" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/l-system/2018-02-28/l-system-20180228-git.tgz";
-      sha256 = "1zvd90s7y936bx7sirc38vs8r2rs62064ndj06ahrc38vagv4qwd";
-      system = "l-system-examples";
-      asd = "l-system-examples";
-    });
-    systems = [ "l-system-examples" ];
-    lispLibs = [ (getAttr "l-system" pkgs) ];
-  };
-  laap = {
-    pname = "laap";
-    version = "20170830-git";
-    asds = [ "laap" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/laap/2017-08-30/laap-20170830-git.tgz";
-      sha256 = "0rzjdi4qcv2l99mk4bk94xlpfx1mav0kvd7crpax7dx4dfwkq8k5";
-      system = "laap";
-      asd = "laap";
-    });
-    systems = [ "laap" ];
-    lispLibs = [ (getAttr "bordeaux-threads" pkgs) (getAttr "cffi" pkgs) (getAttr "cl-base32" pkgs) (getAttr "cl-ppcre" pkgs) (getAttr "uiop" pkgs) ];
-  };
-  lack = {
-    pname = "lack";
-    version = "20221106-git";
-    asds = [ "lack" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/lack/2022-11-06/lack-20221106-git.tgz";
-      sha256 = "0yx5z4xr1pcd2g36f1jhyyaisr2p1ys1a9d7hxyigj31lq1dl9jw";
-      system = "lack";
-      asd = "lack";
-    });
-    systems = [ "lack" ];
-    lispLibs = [ (getAttr "lack-component" pkgs) (getAttr "lack-util" pkgs) ];
-  };
-  lack-app-directory = {
-    pname = "lack-app-directory";
-    version = "20221106-git";
-    asds = [ "lack-app-directory" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/lack/2022-11-06/lack-20221106-git.tgz";
-      sha256 = "0yx5z4xr1pcd2g36f1jhyyaisr2p1ys1a9d7hxyigj31lq1dl9jw";
-      system = "lack-app-directory";
-      asd = "lack-app-directory";
-    });
-    systems = [ "lack-app-directory" ];
-    lispLibs = [ (getAttr "cl-ppcre" pkgs) (getAttr "lack-app-file" pkgs) (getAttr "quri" pkgs) (getAttr "trivial-mimes" pkgs) (getAttr "trivial-rfc-1123" pkgs) ];
-  };
-  lack-app-file = {
-    pname = "lack-app-file";
-    version = "20221106-git";
-    asds = [ "lack-app-file" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/lack/2022-11-06/lack-20221106-git.tgz";
-      sha256 = "0yx5z4xr1pcd2g36f1jhyyaisr2p1ys1a9d7hxyigj31lq1dl9jw";
-      system = "lack-app-file";
-      asd = "lack-app-file";
-    });
-    systems = [ "lack-app-file" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "lack-component" pkgs) (getAttr "trivial-mimes" pkgs) (getAttr "trivial-rfc-1123" pkgs) ];
-  };
-  lack-component = {
-    pname = "lack-component";
-    version = "20221106-git";
-    asds = [ "lack-component" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/lack/2022-11-06/lack-20221106-git.tgz";
-      sha256 = "0yx5z4xr1pcd2g36f1jhyyaisr2p1ys1a9d7hxyigj31lq1dl9jw";
-      system = "lack-component";
-      asd = "lack-component";
-    });
-    systems = [ "lack-component" ];
-    lispLibs = [  ];
-  };
-  lack-middleware-accesslog = {
-    pname = "lack-middleware-accesslog";
-    version = "20221106-git";
-    asds = [ "lack-middleware-accesslog" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/lack/2022-11-06/lack-20221106-git.tgz";
-      sha256 = "0yx5z4xr1pcd2g36f1jhyyaisr2p1ys1a9d7hxyigj31lq1dl9jw";
-      system = "lack-middleware-accesslog";
-      asd = "lack-middleware-accesslog";
-    });
-    systems = [ "lack-middleware-accesslog" ];
-    lispLibs = [ (getAttr "lack-util" pkgs) (getAttr "local-time" pkgs) ];
-  };
-  lack-middleware-anypool = {
-    pname = "lack-middleware-anypool";
-    version = "20210531-git";
-    asds = [ "lack-middleware-anypool" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/anypool/2021-05-31/anypool-20210531-git.tgz";
-      sha256 = "0dr904m0qb0xf12x0rrhw0ipw3fdqyihwr59l87prqmkv23y7aig";
-      system = "lack-middleware-anypool";
-      asd = "lack-middleware-anypool";
-    });
-    systems = [ "lack-middleware-anypool" ];
-    lispLibs = [ (getAttr "anypool" pkgs) ];
-  };
-  lack-middleware-auth-basic = {
-    pname = "lack-middleware-auth-basic";
-    version = "20221106-git";
-    asds = [ "lack-middleware-auth-basic" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/lack/2022-11-06/lack-20221106-git.tgz";
-      sha256 = "0yx5z4xr1pcd2g36f1jhyyaisr2p1ys1a9d7hxyigj31lq1dl9jw";
-      system = "lack-middleware-auth-basic";
-      asd = "lack-middleware-auth-basic";
-    });
-    systems = [ "lack-middleware-auth-basic" ];
-    lispLibs = [ (getAttr "cl-base64" pkgs) (getAttr "split-sequence" pkgs) ];
-  };
-  lack-middleware-backtrace = {
-    pname = "lack-middleware-backtrace";
-    version = "20221106-git";
-    asds = [ "lack-middleware-backtrace" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/lack/2022-11-06/lack-20221106-git.tgz";
-      sha256 = "0yx5z4xr1pcd2g36f1jhyyaisr2p1ys1a9d7hxyigj31lq1dl9jw";
-      system = "lack-middleware-backtrace";
-      asd = "lack-middleware-backtrace";
-    });
-    systems = [ "lack-middleware-backtrace" ];
-    lispLibs = [ (getAttr "uiop" pkgs) ];
-  };
-  lack-middleware-clack-errors = {
-    pname = "lack-middleware-clack-errors";
-    version = "20190813-git";
-    asds = [ "lack-middleware-clack-errors" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/clack-errors/2019-08-13/clack-errors-20190813-git.tgz";
-      sha256 = "0z6jyn37phnpq02l5wml8z0593g8ps95c0c2lzkhi3is2wcj9cpf";
-      system = "lack-middleware-clack-errors";
-      asd = "lack-middleware-clack-errors";
-    });
-    systems = [ "lack-middleware-clack-errors" ];
-    lispLibs = [ (getAttr "clack-errors" pkgs) ];
-  };
-  lack-middleware-csrf = {
-    pname = "lack-middleware-csrf";
-    version = "20221106-git";
-    asds = [ "lack-middleware-csrf" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/lack/2022-11-06/lack-20221106-git.tgz";
-      sha256 = "0yx5z4xr1pcd2g36f1jhyyaisr2p1ys1a9d7hxyigj31lq1dl9jw";
-      system = "lack-middleware-csrf";
-      asd = "lack-middleware-csrf";
-    });
-    systems = [ "lack-middleware-csrf" ];
-    lispLibs = [ (getAttr "lack-request" pkgs) (getAttr "lack-util" pkgs) ];
-  };
-  lack-middleware-mito = {
-    pname = "lack-middleware-mito";
-    version = "20221106-git";
-    asds = [ "lack-middleware-mito" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/mito/2022-11-06/mito-20221106-git.tgz";
-      sha256 = "1wm0kmlg8b7l74s1kxs2yxrv07c6fhfb7yn3018pjh1y28i5cx7n";
-      system = "lack-middleware-mito";
-      asd = "lack-middleware-mito";
-    });
-    systems = [ "lack-middleware-mito" ];
-    lispLibs = [ (getAttr "dbi" pkgs) (getAttr "mito-core" pkgs) ];
-  };
-  lack-middleware-mount = {
-    pname = "lack-middleware-mount";
-    version = "20221106-git";
-    asds = [ "lack-middleware-mount" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/lack/2022-11-06/lack-20221106-git.tgz";
-      sha256 = "0yx5z4xr1pcd2g36f1jhyyaisr2p1ys1a9d7hxyigj31lq1dl9jw";
-      system = "lack-middleware-mount";
-      asd = "lack-middleware-mount";
-    });
-    systems = [ "lack-middleware-mount" ];
-    lispLibs = [ (getAttr "lack-component" pkgs) ];
-  };
-  lack-middleware-session = {
-    pname = "lack-middleware-session";
-    version = "20221106-git";
-    asds = [ "lack-middleware-session" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/lack/2022-11-06/lack-20221106-git.tgz";
-      sha256 = "0yx5z4xr1pcd2g36f1jhyyaisr2p1ys1a9d7hxyigj31lq1dl9jw";
-      system = "lack-middleware-session";
-      asd = "lack-middleware-session";
-    });
-    systems = [ "lack-middleware-session" ];
-    lispLibs = [ (getAttr "bordeaux-threads" pkgs) (getAttr "cl-ppcre" pkgs) (getAttr "lack-request" pkgs) (getAttr "lack-response" pkgs) (getAttr "lack-util" pkgs) ];
-  };
-  lack-middleware-static = {
-    pname = "lack-middleware-static";
-    version = "20221106-git";
-    asds = [ "lack-middleware-static" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/lack/2022-11-06/lack-20221106-git.tgz";
-      sha256 = "0yx5z4xr1pcd2g36f1jhyyaisr2p1ys1a9d7hxyigj31lq1dl9jw";
-      system = "lack-middleware-static";
-      asd = "lack-middleware-static";
-    });
-    systems = [ "lack-middleware-static" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "lack-app-file" pkgs) (getAttr "lack-component" pkgs) ];
-  };
-  lack-request = {
-    pname = "lack-request";
-    version = "20221106-git";
-    asds = [ "lack-request" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/lack/2022-11-06/lack-20221106-git.tgz";
-      sha256 = "0yx5z4xr1pcd2g36f1jhyyaisr2p1ys1a9d7hxyigj31lq1dl9jw";
-      system = "lack-request";
-      asd = "lack-request";
-    });
-    systems = [ "lack-request" ];
-    lispLibs = [ (getAttr "circular-streams" pkgs) (getAttr "cl-ppcre" pkgs) (getAttr "http-body" pkgs) (getAttr "quri" pkgs) ];
-  };
-  lack-response = {
-    pname = "lack-response";
-    version = "20221106-git";
-    asds = [ "lack-response" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/lack/2022-11-06/lack-20221106-git.tgz";
-      sha256 = "0yx5z4xr1pcd2g36f1jhyyaisr2p1ys1a9d7hxyigj31lq1dl9jw";
-      system = "lack-response";
-      asd = "lack-response";
-    });
-    systems = [ "lack-response" ];
-    lispLibs = [ (getAttr "local-time" pkgs) (getAttr "quri" pkgs) ];
-  };
-  lack-session-store-dbi = {
-    pname = "lack-session-store-dbi";
-    version = "20221106-git";
-    asds = [ "lack-session-store-dbi" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/lack/2022-11-06/lack-20221106-git.tgz";
-      sha256 = "0yx5z4xr1pcd2g36f1jhyyaisr2p1ys1a9d7hxyigj31lq1dl9jw";
-      system = "lack-session-store-dbi";
-      asd = "lack-session-store-dbi";
-    });
-    systems = [ "lack-session-store-dbi" ];
-    lispLibs = [ (getAttr "cl-base64" pkgs) (getAttr "dbi" pkgs) (getAttr "marshal" pkgs) (getAttr "lack-middleware-session" pkgs) (getAttr "trivial-utf-8" pkgs) ];
-  };
-  lack-session-store-redis = {
-    pname = "lack-session-store-redis";
-    version = "20221106-git";
-    asds = [ "lack-session-store-redis" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/lack/2022-11-06/lack-20221106-git.tgz";
-      sha256 = "0yx5z4xr1pcd2g36f1jhyyaisr2p1ys1a9d7hxyigj31lq1dl9jw";
-      system = "lack-session-store-redis";
-      asd = "lack-session-store-redis";
-    });
-    systems = [ "lack-session-store-redis" ];
-    lispLibs = [ (getAttr "cl-base64" pkgs) (getAttr "marshal" pkgs) (getAttr "cl-redis" pkgs) (getAttr "lack-middleware-session" pkgs) (getAttr "trivial-utf-8" pkgs) ];
-  };
-  lack-test = {
-    pname = "lack-test";
-    version = "20221106-git";
-    asds = [ "lack-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/lack/2022-11-06/lack-20221106-git.tgz";
-      sha256 = "0yx5z4xr1pcd2g36f1jhyyaisr2p1ys1a9d7hxyigj31lq1dl9jw";
-      system = "lack-test";
-      asd = "lack-test";
-    });
-    systems = [ "lack-test" ];
-    lispLibs = [ (getAttr "cl-cookie" pkgs) (getAttr "flexi-streams" pkgs) (getAttr "lack" pkgs) (getAttr "quri" pkgs) ];
-  };
-  lack-util = {
-    pname = "lack-util";
-    version = "20221106-git";
-    asds = [ "lack-util" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/lack/2022-11-06/lack-20221106-git.tgz";
-      sha256 = "0yx5z4xr1pcd2g36f1jhyyaisr2p1ys1a9d7hxyigj31lq1dl9jw";
-      system = "lack-util";
-      asd = "lack-util";
-    });
-    systems = [ "lack-util" ];
-    lispLibs = [ (getAttr "cl-isaac" pkgs) ];
-  };
-  lack-util-writer-stream = {
-    pname = "lack-util-writer-stream";
-    version = "20221106-git";
-    asds = [ "lack-util-writer-stream" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/lack/2022-11-06/lack-20221106-git.tgz";
-      sha256 = "0yx5z4xr1pcd2g36f1jhyyaisr2p1ys1a9d7hxyigj31lq1dl9jw";
-      system = "lack-util-writer-stream";
-      asd = "lack-util-writer-stream";
-    });
-    systems = [ "lack-util-writer-stream" ];
-    lispLibs = [ (getAttr "babel" pkgs) (getAttr "trivial-gray-streams" pkgs) ];
-  };
-  lake = {
-    pname = "lake";
-    version = "20220220-git";
-    asds = [ "lake" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/lake/2022-02-20/lake-20220220-git.tgz";
-      sha256 = "1g6rr4d5vjx487ym5qjlnw5sd6rwx6l4zx1l9mj0j30lpm1k4il0";
-      system = "lake";
-      asd = "lake";
-    });
-    systems = [ "lake" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cl-ppcre" pkgs) (getAttr "cl-syntax" pkgs) (getAttr "cl-syntax-interpol" pkgs) (getAttr "split-sequence" pkgs) ];
-  };
-  lake-cli = {
-    pname = "lake-cli";
-    version = "20220220-git";
-    asds = [ "lake-cli" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/lake/2022-02-20/lake-20220220-git.tgz";
-      sha256 = "1g6rr4d5vjx487ym5qjlnw5sd6rwx6l4zx1l9mj0j30lpm1k4il0";
-      system = "lake-cli";
-      asd = "lake-cli";
-    });
-    systems = [ "lake-cli" ];
-    lispLibs = [ (getAttr "deploy" pkgs) (getAttr "lake" pkgs) ];
-  };
-  lake-test = {
-    pname = "lake-test";
-    version = "20220220-git";
-    asds = [ "lake-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/lake/2022-02-20/lake-20220220-git.tgz";
-      sha256 = "1g6rr4d5vjx487ym5qjlnw5sd6rwx6l4zx1l9mj0j30lpm1k4il0";
-      system = "lake-test";
-      asd = "lake-test";
-    });
-    systems = [ "lake-test" ];
-    lispLibs = [ (getAttr "lake" pkgs) (getAttr "prove" pkgs) (getAttr "prove-asdf" pkgs) ];
-  };
-  lambda-fiddle = {
-    pname = "lambda-fiddle";
-    version = "20211020-git";
-    asds = [ "lambda-fiddle" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/lambda-fiddle/2021-10-20/lambda-fiddle-20211020-git.tgz";
-      sha256 = "1z4s1sqkvll6rpzc40yqbyzmbn7h8lxkhinvis3c7anaar78bjs7";
-      system = "lambda-fiddle";
-      asd = "lambda-fiddle";
-    });
-    systems = [ "lambda-fiddle" ];
-    lispLibs = [  ];
-  };
-  lambda-reader = {
-    pname = "lambda-reader";
-    version = "20170124-git";
-    asds = [ "lambda-reader" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/lambda-reader/2017-01-24/lambda-reader-20170124-git.tgz";
-      sha256 = "0s73nrnvr0d2ql1gabcasmfnckzq0f2qs9317hv2mrrh0q1giq1w";
-      system = "lambda-reader";
-      asd = "lambda-reader";
-    });
-    systems = [ "lambda-reader" ];
-    lispLibs = [ (getAttr "named-readtables" pkgs) ];
-  };
-  lambda-reader-8bit = {
-    pname = "lambda-reader-8bit";
-    version = "20170124-git";
-    asds = [ "lambda-reader-8bit" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/lambda-reader/2017-01-24/lambda-reader-20170124-git.tgz";
-      sha256 = "0s73nrnvr0d2ql1gabcasmfnckzq0f2qs9317hv2mrrh0q1giq1w";
-      system = "lambda-reader-8bit";
-      asd = "lambda-reader-8bit";
-    });
-    systems = [ "lambda-reader-8bit" ];
-    lispLibs = [ (getAttr "asdf-encodings" pkgs) (getAttr "named-readtables" pkgs) ];
-  };
-  lambdalite = {
-    pname = "lambdalite";
-    version = "20141217-git";
-    asds = [ "lambdalite" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/lambdalite/2014-12-17/lambdalite-20141217-git.tgz";
-      sha256 = "0bvhix74afak5bpaa4x3p1b7gskpvzvw78aqkml9d40gpd1ky8lh";
-      system = "lambdalite";
-      asd = "lambdalite";
-    });
-    systems = [ "lambdalite" ];
-    lispLibs = [ (getAttr "bordeaux-threads" pkgs) (getAttr "wu-sugar" pkgs) ];
-  };
-  language-codes = {
-    pname = "language-codes";
-    version = "20210531-git";
-    asds = [ "language-codes" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/language-codes/2021-05-31/language-codes-20210531-git.tgz";
-      sha256 = "0bkx5bjfaxlrxkr1yh85xbr5n39g3m9006vy1gh6wybvh95d1xwy";
-      system = "language-codes";
-      asd = "language-codes";
-    });
-    systems = [ "language-codes" ];
-    lispLibs = [ (getAttr "documentation-utils" pkgs) ];
-  };
-  langutils = {
-    pname = "langutils";
-    version = "20121125-git";
-    asds = [ "langutils" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-langutils/2012-11-25/cl-langutils-20121125-git.tgz";
-      sha256 = "15y9x5wkg3fqndc04w2sc650fnwimxp4gjgpv9xvvdm9x4v433x6";
-      system = "langutils";
-      asd = "langutils";
-    });
-    systems = [ "langutils" ];
-    lispLibs = [ (getAttr "stdutils" pkgs) (getAttr "s-xml-rpc" pkgs) ];
-  };
-  lapack = {
-    pname = "lapack";
-    version = "20200925-git";
-    asds = [ "lapack" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/f2cl/2020-09-25/f2cl-20200925-git.tgz";
-      sha256 = "0kq1lrz0sg4kj64w0ysihnfwi65pami362fs2mvpyf1yhgxmq08y";
-      system = "lapack";
-      asd = "lapack";
-    });
-    systems = [ "lapack" ];
-    lispLibs = [ (getAttr "blas-complex" pkgs) (getAttr "blas-package" pkgs) (getAttr "blas-real" pkgs) (getAttr "f2cl" pkgs) ];
-  };
-  lapack_slash_complex = {
-    pname = "lapack_complex";
-    version = "20200925-git";
-    asds = [ "lapack" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/f2cl/2020-09-25/f2cl-20200925-git.tgz";
-      sha256 = "0kq1lrz0sg4kj64w0ysihnfwi65pami362fs2mvpyf1yhgxmq08y";
-      system = "lapack";
-      asd = "lapack";
-    });
-    systems = [ "lapack/complex" ];
-    lispLibs = [ (getAttr "blas-complex" pkgs) (getAttr "blas-package" pkgs) (getAttr "blas-real" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  lapack_slash_package = {
-    pname = "lapack_package";
-    version = "20200925-git";
-    asds = [ "lapack" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/f2cl/2020-09-25/f2cl-20200925-git.tgz";
-      sha256 = "0kq1lrz0sg4kj64w0ysihnfwi65pami362fs2mvpyf1yhgxmq08y";
-      system = "lapack";
-      asd = "lapack";
-    });
-    systems = [ "lapack/package" ];
-    lispLibs = [ (getAttr "blas-package" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  lapack_slash_real = {
-    pname = "lapack_real";
-    version = "20200925-git";
-    asds = [ "lapack" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/f2cl/2020-09-25/f2cl-20200925-git.tgz";
-      sha256 = "0kq1lrz0sg4kj64w0ysihnfwi65pami362fs2mvpyf1yhgxmq08y";
-      system = "lapack";
-      asd = "lapack";
-    });
-    systems = [ "lapack/real" ];
-    lispLibs = [ (getAttr "blas-package" pkgs) (getAttr "blas-real" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  lapack_slash_tests = {
-    pname = "lapack_tests";
-    version = "20200925-git";
-    asds = [ "lapack" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/f2cl/2020-09-25/f2cl-20200925-git.tgz";
-      sha256 = "0kq1lrz0sg4kj64w0ysihnfwi65pami362fs2mvpyf1yhgxmq08y";
-      system = "lapack";
-      asd = "lapack";
-    });
-    systems = [ "lapack/tests" ];
-    lispLibs = [ (getAttr "lapack" pkgs) (getAttr "rt" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  lass = {
-    pname = "lass";
-    version = "20211020-git";
-    asds = [ "lass" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/lass/2021-10-20/lass-20211020-git.tgz";
-      sha256 = "06wds1qzj8s862pmmza1427n7gdpplqplxqnxyqkrr0hgxdl4xbf";
-      system = "lass";
-      asd = "lass";
-    });
-    systems = [ "lass" ];
-    lispLibs = [ (getAttr "cl-base64" pkgs) (getAttr "trivial-indent" pkgs) (getAttr "trivial-mimes" pkgs) ];
-  };
-  lass-flexbox = {
-    pname = "lass-flexbox";
-    version = "20160208-git";
-    asds = [ "lass-flexbox" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/lass-flexbox/2016-02-08/lass-flexbox-20160208-git.tgz";
-      sha256 = "143rkff1ybi3b07qyzndxxndp7j4nw1biyp51rkl0yvsk85kj1jp";
-      system = "lass-flexbox";
-      asd = "lass-flexbox";
-    });
-    systems = [ "lass-flexbox" ];
-    lispLibs = [ (getAttr "lass" pkgs) ];
-  };
-  lass-flexbox-test = {
-    pname = "lass-flexbox-test";
-    version = "20160208-git";
-    asds = [ "lass-flexbox-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/lass-flexbox/2016-02-08/lass-flexbox-20160208-git.tgz";
-      sha256 = "143rkff1ybi3b07qyzndxxndp7j4nw1biyp51rkl0yvsk85kj1jp";
-      system = "lass-flexbox-test";
-      asd = "lass-flexbox-test";
-    });
-    systems = [ "lass-flexbox-test" ];
-    lispLibs = [ (getAttr "fiveam" pkgs) (getAttr "lass-flexbox" pkgs) ];
-  };
-  lassie = {
-    pname = "lassie";
-    version = "20140713-git";
-    asds = [ "lassie" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/lassie/2014-07-13/lassie-20140713-git.tgz";
-      sha256 = "06ps25422ymp9n35745xhg3qsclfli52b7mxhw58wwz9q1v1n0rn";
-      system = "lassie";
-      asd = "lassie";
-    });
-    systems = [ "lassie" ];
-    lispLibs = [ (getAttr "fsvd" pkgs) ];
-  };
-  lastfm = {
-    pname = "lastfm";
-    version = "20191007-git";
-    asds = [ "lastfm" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/lastfm/2019-10-07/lastfm-20191007-git.tgz";
-      sha256 = "1crg82fyzkm9a0czsf5vq6nwndg6gy7zqb2glbp3yaw6p2hrwkp4";
-      system = "lastfm";
-      asd = "lastfm";
-    });
-    systems = [ "lastfm" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "defmemo" pkgs) (getAttr "drakma" pkgs) (getAttr "generators" pkgs) (getAttr "ironclad" pkgs) (getAttr "lquery" pkgs) (getAttr "plump" pkgs) (getAttr "trivial-open-browser" pkgs) ];
-  };
-  latex-table = {
-    pname = "latex-table";
-    version = "20180328-git";
-    asds = [ "latex-table" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/latex-table/2018-03-28/latex-table-20180328-git.tgz";
-      sha256 = "04qqr62pdi7qs9p74a4a014l6sl6bk6hrlb7b7pknxx5c15xvcgv";
-      system = "latex-table";
-      asd = "latex-table";
-    });
-    systems = [ "latex-table" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "anaphora" pkgs) (getAttr "array-operations" pkgs) (getAttr "let-plus" pkgs) ];
-  };
-  latter-day-paypal = {
-    pname = "latter-day-paypal";
-    version = "20221106-git";
-    asds = [ "latter-day-paypal" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/latter-day-paypal/2022-11-06/latter-day-paypal-20221106-git.tgz";
-      sha256 = "0a4xji2ymmr7s4gq0gc3bhbf62gwfs93ymmpvgsmb0afcsi5099q";
-      system = "latter-day-paypal";
-      asd = "latter-day-paypal";
-    });
-    systems = [ "latter-day-paypal" ];
-    lispLibs = [ (getAttr "cl-base64" pkgs) (getAttr "str" pkgs) (getAttr "cl-tls" pkgs) (getAttr "closer-mop" pkgs) (getAttr "dexador" pkgs) (getAttr "do-urlencode" pkgs) (getAttr "hunchentoot" pkgs) (getAttr "ironclad" pkgs) (getAttr "jonathan" pkgs) (getAttr "local-time" pkgs) (getAttr "ningle" pkgs) (getAttr "quri" pkgs) ];
-  };
-  lazy = {
-    pname = "lazy";
-    version = "20200925-git";
-    asds = [ "lazy" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/lazy/2020-09-25/lazy-20200925-git.tgz";
-      sha256 = "0m099rwr7k17v984n4jnq4hadf19vza5qilxdyrr43scxbbrmw1n";
-      system = "lazy";
-      asd = "lazy";
-    });
-    systems = [ "lazy" ];
-    lispLibs = [  ];
-  };
-  ledger = {
-    pname = "ledger";
-    version = "master-1a957fb2-git";
-    asds = [ "ledger" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/gendl/2022-07-07/gendl-master-1a957fb2-git.tgz";
-      sha256 = "0j47qnvvfx3vnh3pll6rkya5m142hi93bd5jk65rv43vbc94sv30";
-      system = "ledger";
-      asd = "ledger";
-    });
-    systems = [ "ledger" ];
-    lispLibs = [ (getAttr "gwl" pkgs) ];
-  };
-  leech = {
-    pname = "leech";
-    version = "20140713-git";
-    asds = [ "leech" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/bknr-web/2014-07-13/bknr-web-20140713-git.tgz";
-      sha256 = "1m73z0hv7qsc9yddrg8zs7n3zmn9h64v4d62239wrvfnmzqk75x2";
-      system = "leech";
-      asd = "leech";
-    });
-    systems = [ "leech" ];
-    lispLibs = [ (getAttr "aserve" pkgs) (getAttr "unit-test" pkgs) ];
-  };
-  legion = {
-    pname = "legion";
-    version = "20211020-git";
-    asds = [ "legion" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/legion/2021-10-20/legion-20211020-git.tgz";
-      sha256 = "0583pw0mf8bd4dj42w2xrlzcwfkl8q28n1bh8dpxxfg93crx4si6";
-      system = "legion";
-      asd = "legion";
-    });
-    systems = [ "legion" ];
-    lispLibs = [ (getAttr "bordeaux-threads" pkgs) (getAttr "cl-speedy-queue" pkgs) (getAttr "vom" pkgs) ];
-  };
-  legion-test = {
-    pname = "legion-test";
-    version = "20211020-git";
-    asds = [ "legion-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/legion/2021-10-20/legion-20211020-git.tgz";
-      sha256 = "0583pw0mf8bd4dj42w2xrlzcwfkl8q28n1bh8dpxxfg93crx4si6";
-      system = "legion-test";
-      asd = "legion-test";
-    });
-    systems = [ "legion-test" ];
-    lispLibs = [ (getAttr "legion" pkgs) (getAttr "local-time" pkgs) (getAttr "prove" pkgs) (getAttr "prove-asdf" pkgs) ];
-  };
-  legit = {
-    pname = "legit";
-    version = "20211020-git";
-    asds = [ "legit" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/legit/2021-10-20/legit-20211020-git.tgz";
-      sha256 = "0crr7ya7dg15di7glk3w9sgf6j8dmny347gynmxxrdvjj9pa906m";
-      system = "legit";
-      asd = "legit";
-    });
-    systems = [ "legit" ];
-    lispLibs = [ (getAttr "cl-ppcre" pkgs) (getAttr "documentation-utils" pkgs) (getAttr "lambda-fiddle" pkgs) (getAttr "simple-inferiors" pkgs) (getAttr "uiop" pkgs) ];
-  };
-  lem-opengl = {
-    pname = "lem-opengl";
-    version = "20200427-git";
-    asds = [ "lem-opengl" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/sucle/2020-04-27/sucle-20200427-git.tgz";
-      sha256 = "033akkn9zxc6qdgycgxgybx3v23638245xrx29x2cbwnvg3i1q34";
-      system = "lem-opengl";
-      asd = "lem-opengl";
-    });
-    systems = [ "lem-opengl" ];
-    lispLibs = [ (getAttr "livesupport" pkgs) (getAttr "minilem" pkgs) (getAttr "application" pkgs) (getAttr "control" pkgs) (getAttr "ncurses-clone-for-lem" pkgs) (getAttr "sucle" pkgs) (getAttr "uncommon-lisp" pkgs) (getAttr "trivial-clipboard" pkgs) (getAttr "utility" pkgs) ];
-  };
-  lense = {
-    pname = "lense";
-    version = "20201220-git";
-    asds = [ "lense" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/lense/2020-12-20/lense-20201220-git.tgz";
-      sha256 = "0j11m93an38d1cl6b1kaaj5azhkn64wpiiprlj2c4cjfzrc32ffv";
-      system = "lense";
-      asd = "lense";
-    });
-    systems = [ "lense" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "closer-mop" pkgs) (getAttr "documentation-utils-extensions" pkgs) ];
-  };
-  lessp = {
-    pname = "lessp";
-    version = "20221106-git";
-    asds = [ "lessp" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-lessp/2022-11-06/cl-lessp-20221106-git.tgz";
-      sha256 = "0i3ia14dzqwjpygd0zn785ff5vqnnmkn75psfpyx0ni3jr71lkq9";
-      system = "lessp";
-      asd = "lessp";
-    });
-    systems = [ "lessp" ];
-    lispLibs = [  ];
-  };
-  let-over-lambda = {
-    pname = "let-over-lambda";
-    version = "20220331-git";
-    asds = [ "let-over-lambda" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/let-over-lambda/2022-03-31/let-over-lambda-20220331-git.tgz";
-      sha256 = "0kq94jsk6frjwnx8wqnsvss91vmyjs9g9iv603d8fiip0szkwdnn";
-      system = "let-over-lambda";
-      asd = "let-over-lambda";
-    });
-    systems = [ "let-over-lambda" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cl-ppcre" pkgs) (getAttr "named-readtables" pkgs) ];
-  };
-  let-over-lambda-test = {
-    pname = "let-over-lambda-test";
-    version = "20220331-git";
-    asds = [ "let-over-lambda-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/let-over-lambda/2022-03-31/let-over-lambda-20220331-git.tgz";
-      sha256 = "0kq94jsk6frjwnx8wqnsvss91vmyjs9g9iv603d8fiip0szkwdnn";
-      system = "let-over-lambda-test";
-      asd = "let-over-lambda-test";
-    });
-    systems = [ "let-over-lambda-test" ];
-    lispLibs = [ (getAttr "let-over-lambda" pkgs) (getAttr "named-readtables" pkgs) (getAttr "prove" pkgs) (getAttr "prove-asdf" pkgs) ];
-  };
-  let-plus = {
-    pname = "let-plus";
-    version = "20191130-git";
-    asds = [ "let-plus" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/let-plus/2019-11-30/let-plus-20191130-git.tgz";
-      sha256 = "00c0nq6l4zb692rzsc9aliqzj3avrssfyz4bhxzl7f1jsz3m29jb";
-      system = "let-plus";
-      asd = "let-plus";
-    });
-    systems = [ "let-plus" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "anaphora" pkgs) ];
-  };
-  let-plus_slash_tests = {
-    pname = "let-plus_tests";
-    version = "20191130-git";
-    asds = [ "let-plus" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/let-plus/2019-11-30/let-plus-20191130-git.tgz";
-      sha256 = "00c0nq6l4zb692rzsc9aliqzj3avrssfyz4bhxzl7f1jsz3m29jb";
-      system = "let-plus";
-      asd = "let-plus";
-    });
-    systems = [ "let-plus/tests" ];
-    lispLibs = [ (getAttr "let-plus" pkgs) (getAttr "lift" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  letrec = {
-    pname = "letrec";
-    version = "20190307-hg";
-    asds = [ "letrec" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/letrec/2019-03-07/letrec-20190307-hg.tgz";
-      sha256 = "0cs2p1kv443dxd6vf908gblgdd2amcvjd1i1fq2cq9ip61dg9vnk";
-      system = "letrec";
-      asd = "letrec";
-    });
-    systems = [ "letrec" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) ];
-  };
-  lev = {
-    pname = "lev";
-    version = "20150505-git";
-    asds = [ "lev" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/lev/2015-05-05/lev-20150505-git.tgz";
-      sha256 = "14lfnrvfyg2nnvlwck896p6vgarzc6g4kijmvhi2d8wra7gxzifh";
-      system = "lev";
-      asd = "lev";
-    });
-    systems = [ "lev" ];
-    lispLibs = [ (getAttr "cffi" pkgs) ];
-  };
-  leveldb = {
-    pname = "leveldb";
-    version = "20160531-git";
-    asds = [ "leveldb" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/leveldb/2016-05-31/leveldb-20160531-git.tgz";
-      sha256 = "03i4qr3g8ga2vpc8qbnipan3i7y4809i036wppkkixcsbckslckv";
-      system = "leveldb";
-      asd = "leveldb";
-    });
-    systems = [ "leveldb" ];
-    lispLibs = [ (getAttr "babel" pkgs) (getAttr "cffi" pkgs) (getAttr "cffi-grovel" pkgs) (getAttr "trivial-garbage" pkgs) ];
-  };
-  levenshtein = {
-    pname = "levenshtein";
-    version = "1.0";
-    asds = [ "levenshtein" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/levenshtein/2010-10-06/levenshtein-1.0.tgz";
-      sha256 = "0b4hdv55qcjlh3ixy3fglvb90ggmm79nl02nxkly2ls6cd7rbf5i";
-      system = "levenshtein";
-      asd = "levenshtein";
-    });
-    systems = [ "levenshtein" ];
-    lispLibs = [  ];
-  };
-  lfarm-admin = {
-    pname = "lfarm-admin";
-    version = "20150608-git";
-    asds = [ "lfarm-admin" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/lfarm/2015-06-08/lfarm-20150608-git.tgz";
-      sha256 = "10kfhfx26wmaa3hk3vc7hc2fzk0rl2xdjwk8ld36x6ivvd48jlkv";
-      system = "lfarm-admin";
-      asd = "lfarm-admin";
-    });
-    systems = [ "lfarm-admin" ];
-    lispLibs = [ (getAttr "lfarm-common" pkgs) (getAttr "usocket" pkgs) ];
-  };
-  lfarm-client = {
-    pname = "lfarm-client";
-    version = "20150608-git";
-    asds = [ "lfarm-client" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/lfarm/2015-06-08/lfarm-20150608-git.tgz";
-      sha256 = "10kfhfx26wmaa3hk3vc7hc2fzk0rl2xdjwk8ld36x6ivvd48jlkv";
-      system = "lfarm-client";
-      asd = "lfarm-client";
-    });
-    systems = [ "lfarm-client" ];
-    lispLibs = [ (getAttr "lfarm-common" pkgs) (getAttr "lparallel" pkgs) (getAttr "usocket" pkgs) ];
-  };
-  lfarm-common = {
-    pname = "lfarm-common";
-    version = "20150608-git";
-    asds = [ "lfarm-common" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/lfarm/2015-06-08/lfarm-20150608-git.tgz";
-      sha256 = "10kfhfx26wmaa3hk3vc7hc2fzk0rl2xdjwk8ld36x6ivvd48jlkv";
-      system = "lfarm-common";
-      asd = "lfarm-common";
-    });
-    systems = [ "lfarm-common" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "bordeaux-threads" pkgs) (getAttr "cl-store" pkgs) (getAttr "flexi-streams" pkgs) (getAttr "usocket" pkgs) ];
-  };
-  lfarm-gss = {
-    pname = "lfarm-gss";
-    version = "20150608-git";
-    asds = [ "lfarm-gss" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/lfarm/2015-06-08/lfarm-20150608-git.tgz";
-      sha256 = "10kfhfx26wmaa3hk3vc7hc2fzk0rl2xdjwk8ld36x6ivvd48jlkv";
-      system = "lfarm-gss";
-      asd = "lfarm-gss";
-    });
-    systems = [ "lfarm-gss" ];
-    lispLibs = [ (getAttr "cl-gss" pkgs) (getAttr "lfarm-common" pkgs) (getAttr "trivial-gray-streams" pkgs) ];
-  };
-  lfarm-launcher = {
-    pname = "lfarm-launcher";
-    version = "20150608-git";
-    asds = [ "lfarm-launcher" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/lfarm/2015-06-08/lfarm-20150608-git.tgz";
-      sha256 = "10kfhfx26wmaa3hk3vc7hc2fzk0rl2xdjwk8ld36x6ivvd48jlkv";
-      system = "lfarm-launcher";
-      asd = "lfarm-launcher";
-    });
-    systems = [ "lfarm-launcher" ];
-    lispLibs = [ (getAttr "external-program" pkgs) (getAttr "lfarm-admin" pkgs) (getAttr "lfarm-server" pkgs) ];
-  };
-  lfarm-server = {
-    pname = "lfarm-server";
-    version = "20150608-git";
-    asds = [ "lfarm-server" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/lfarm/2015-06-08/lfarm-20150608-git.tgz";
-      sha256 = "10kfhfx26wmaa3hk3vc7hc2fzk0rl2xdjwk8ld36x6ivvd48jlkv";
-      system = "lfarm-server";
-      asd = "lfarm-server";
-    });
-    systems = [ "lfarm-server" ];
-    lispLibs = [ (getAttr "lfarm-common" pkgs) (getAttr "usocket" pkgs) ];
-  };
-  lfarm-ssl = {
-    pname = "lfarm-ssl";
-    version = "20150608-git";
-    asds = [ "lfarm-ssl" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/lfarm/2015-06-08/lfarm-20150608-git.tgz";
-      sha256 = "10kfhfx26wmaa3hk3vc7hc2fzk0rl2xdjwk8ld36x6ivvd48jlkv";
-      system = "lfarm-ssl";
-      asd = "lfarm-ssl";
-    });
-    systems = [ "lfarm-ssl" ];
-    lispLibs = [ (getAttr "cl_plus_ssl" pkgs) (getAttr "lfarm-common" pkgs) ];
-  };
-  lfarm-test = {
-    pname = "lfarm-test";
-    version = "20150608-git";
-    asds = [ "lfarm-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/lfarm/2015-06-08/lfarm-20150608-git.tgz";
-      sha256 = "10kfhfx26wmaa3hk3vc7hc2fzk0rl2xdjwk8ld36x6ivvd48jlkv";
-      system = "lfarm-test";
-      asd = "lfarm-test";
-    });
-    systems = [ "lfarm-test" ];
-    lispLibs = [ (getAttr "lfarm-admin" pkgs) (getAttr "lfarm-client" pkgs) (getAttr "lfarm-launcher" pkgs) (getAttr "lfarm-server" pkgs) ];
-  };
-  lhstats = {
-    pname = "lhstats";
-    version = "20120107-git";
-    asds = [ "lhstats" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/lhstats/2012-01-07/lhstats-20120107-git.tgz";
-      sha256 = "1x8h37vm9yd0a2g7qzili673n1c3a9rzawq27rxyzjrggv9wdnlz";
-      system = "lhstats";
-      asd = "lhstats";
-    });
-    systems = [ "lhstats" ];
-    lispLibs = [  ];
-  };
-  lib-helper = {
-    pname = "lib-helper";
-    version = "20221106-git";
-    asds = [ "lib-helper" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-lib-helper/2022-11-06/cl-lib-helper-20221106-git.tgz";
-      sha256 = "1ml1zy65z2yckh2fa0sdjk1iqhbzzb3xf6ccj63n5ff986jr797k";
-      system = "lib-helper";
-      asd = "lib-helper";
-    });
-    systems = [ "lib-helper" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cl-containers" pkgs) (getAttr "cl-ppcre" pkgs) (getAttr "closer-mop" pkgs) (getAttr "iterate" pkgs) ];
-  };
-  lib-helper-test-system = {
-    pname = "lib-helper-test-system";
-    version = "20221106-git";
-    asds = [ "lib-helper-test-system" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-lib-helper/2022-11-06/cl-lib-helper-20221106-git.tgz";
-      sha256 = "1ml1zy65z2yckh2fa0sdjk1iqhbzzb3xf6ccj63n5ff986jr797k";
-      system = "lib-helper-test-system";
-      asd = "lib-helper-test-system";
-    });
-    systems = [ "lib-helper-test-system" ];
-    lispLibs = [  ];
-  };
-  lib-helper_slash_test = {
-    pname = "lib-helper_test";
-    version = "20221106-git";
-    asds = [ "lib-helper" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-lib-helper/2022-11-06/cl-lib-helper-20221106-git.tgz";
-      sha256 = "1ml1zy65z2yckh2fa0sdjk1iqhbzzb3xf6ccj63n5ff986jr797k";
-      system = "lib-helper";
-      asd = "lib-helper";
-    });
-    systems = [ "lib-helper/test" ];
-    lispLibs = [ (getAttr "lib-helper" pkgs) (getAttr "fiveam" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  liblmdb = {
-    pname = "liblmdb";
-    version = "20170830-git";
-    asds = [ "liblmdb" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/liblmdb/2017-08-30/liblmdb-20170830-git.tgz";
-      sha256 = "0484245fcbqza40n377qhsr2v838cih6pziav5vlnml1y0cgv62b";
-      system = "liblmdb";
-      asd = "liblmdb";
-    });
-    systems = [ "liblmdb" ];
-    lispLibs = [ (getAttr "cffi" pkgs) ];
-  };
-  libssh2 = {
-    pname = "libssh2";
-    version = "20160531-git";
-    asds = [ "libssh2" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-libssh2/2016-05-31/cl-libssh2-20160531-git.tgz";
-      sha256 = "1f2zq30zli0gnawclpasxsajpn20cpyy9d3q9zpqyw1sfrsn0hmk";
-      system = "libssh2";
-      asd = "libssh2";
-    });
-    systems = [ "libssh2" ];
-    lispLibs = [ (getAttr "babel" pkgs) (getAttr "cffi" pkgs) (getAttr "cffi-grovel" pkgs) (getAttr "cl-fad" pkgs) (getAttr "hu_dot_dwim_dot_logger" pkgs) (getAttr "split-sequence" pkgs) (getAttr "trivial-gray-streams" pkgs) (getAttr "usocket" pkgs) ];
-  };
-  libssh2_dot_test = {
-    pname = "libssh2.test";
-    version = "20160531-git";
-    asds = [ "libssh2.test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-libssh2/2016-05-31/cl-libssh2-20160531-git.tgz";
-      sha256 = "1f2zq30zli0gnawclpasxsajpn20cpyy9d3q9zpqyw1sfrsn0hmk";
-      system = "libssh2.test";
-      asd = "libssh2.test";
-    });
-    systems = [ "libssh2.test" ];
-    lispLibs = [ (getAttr "libssh2" pkgs) (getAttr "hu_dot_dwim_dot_stefil" pkgs) ];
-  };
-  libusb-ffi = {
-    pname = "libusb-ffi";
-    version = "20210228-git";
-    asds = [ "libusb-ffi" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-libusb/2021-02-28/cl-libusb-20210228-git.tgz";
-      sha256 = "0kyzgcflwb85q58fgn82sp0bipnq5bprg5i4h0h3jxafqqyagbnk";
-      system = "libusb-ffi";
-      asd = "libusb-ffi";
-    });
-    systems = [ "libusb-ffi" ];
-    lispLibs = [ (getAttr "cffi" pkgs) (getAttr "cffi-grovel" pkgs) (getAttr "static-vectors" pkgs) ];
-  };
-  lichat-ldap = {
-    pname = "lichat-ldap";
-    version = "20190710-git";
-    asds = [ "lichat-ldap" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/lichat-ldap/2019-07-10/lichat-ldap-20190710-git.tgz";
-      sha256 = "03x60jmgx4s2pkzrgl1j70xrvycfi4yj21nzi64cd0pdprqa88d5";
-      system = "lichat-ldap";
-      asd = "lichat-ldap";
-    });
-    systems = [ "lichat-ldap" ];
-    lispLibs = [ (getAttr "documentation-utils" pkgs) (getAttr "lichat-serverlib" pkgs) (getAttr "trivial-ldap" pkgs) ];
-  };
-  lichat-protocol = {
-    pname = "lichat-protocol";
-    version = "20220707-git";
-    asds = [ "lichat-protocol" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/lichat-protocol/2022-07-07/lichat-protocol-20220707-git.tgz";
-      sha256 = "0as5fcafgga8b1gbis4wxk2w8xv5l4sjy04y3m25gqc5my59falv";
-      system = "lichat-protocol";
-      asd = "lichat-protocol";
-    });
-    systems = [ "lichat-protocol" ];
-    lispLibs = [ (getAttr "closer-mop" pkgs) (getAttr "documentation-utils" pkgs) (getAttr "trivial-package-local-nicknames" pkgs) ];
-  };
-  lichat-serverlib = {
-    pname = "lichat-serverlib";
-    version = "20220220-git";
-    asds = [ "lichat-serverlib" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/lichat-serverlib/2022-02-20/lichat-serverlib-20220220-git.tgz";
-      sha256 = "122nar4wbjck33nnzfnhzghssarrzrcwddr8i04ynws3v5y1rsdv";
-      system = "lichat-serverlib";
-      asd = "lichat-serverlib";
-    });
-    systems = [ "lichat-serverlib" ];
-    lispLibs = [ (getAttr "crypto-shortcuts" pkgs) (getAttr "documentation-utils" pkgs) (getAttr "lichat-protocol" pkgs) (getAttr "trivial-mimes" pkgs) ];
-  };
-  lichat-tcp-client = {
-    pname = "lichat-tcp-client";
-    version = "20220707-git";
-    asds = [ "lichat-tcp-client" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/lichat-tcp-client/2022-07-07/lichat-tcp-client-20220707-git.tgz";
-      sha256 = "02693m5qkpsx8mwpik57basgzsf750phvzxf7sjdm6vp84iszg3r";
-      system = "lichat-tcp-client";
-      asd = "lichat-tcp-client";
-    });
-    systems = [ "lichat-tcp-client" ];
-    lispLibs = [ (getAttr "bordeaux-threads" pkgs) (getAttr "documentation-utils" pkgs) (getAttr "lichat-protocol" pkgs) (getAttr "usocket" pkgs) (getAttr "verbose" pkgs) ];
-  };
-  lichat-tcp-server = {
-    pname = "lichat-tcp-server";
-    version = "20220220-git";
-    asds = [ "lichat-tcp-server" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/lichat-tcp-server/2022-02-20/lichat-tcp-server-20220220-git.tgz";
-      sha256 = "06cnp06q522s7ya39ngk5sr6m5wrz0ajzi41hf7in0drx7n3dddz";
-      system = "lichat-tcp-server";
-      asd = "lichat-tcp-server";
-    });
-    systems = [ "lichat-tcp-server" ];
-    lispLibs = [ (getAttr "bordeaux-threads" pkgs) (getAttr "documentation-utils" pkgs) (getAttr "lichat-protocol" pkgs) (getAttr "lichat-serverlib" pkgs) (getAttr "usocket" pkgs) (getAttr "verbose" pkgs) ];
-  };
-  lichat-ws-server = {
-    pname = "lichat-ws-server";
-    version = "20220220-git";
-    asds = [ "lichat-ws-server" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/lichat-ws-server/2022-02-20/lichat-ws-server-20220220-git.tgz";
-      sha256 = "0ylppkd0k41sa7xqk6n9q7i1hbmzlzyvaz3b5x46icjaidrwkm4j";
-      system = "lichat-ws-server";
-      asd = "lichat-ws-server";
-    });
-    systems = [ "lichat-ws-server" ];
-    lispLibs = [ (getAttr "bordeaux-threads" pkgs) (getAttr "documentation-utils" pkgs) (getAttr "hunchensocket" pkgs) (getAttr "lichat-protocol" pkgs) (getAttr "lichat-serverlib" pkgs) (getAttr "verbose" pkgs) ];
-  };
-  lift = {
-    pname = "lift";
-    version = "20221106-git";
-    asds = [ "lift" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/lift/2022-11-06/lift-20221106-git.tgz";
-      sha256 = "1513n46fkqw8rnvz69s7xnwj476qm8ibdlwsr63qj9yh0mib0q6x";
-      system = "lift";
-      asd = "lift";
-    });
-    systems = [ "lift" ];
-    lispLibs = [  ];
-  };
-  lift-documentation = {
-    pname = "lift-documentation";
-    version = "20221106-git";
-    asds = [ "lift-documentation" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/lift/2022-11-06/lift-20221106-git.tgz";
-      sha256 = "1513n46fkqw8rnvz69s7xnwj476qm8ibdlwsr63qj9yh0mib0q6x";
-      system = "lift-documentation";
-      asd = "lift-documentation";
-    });
-    systems = [ "lift-documentation" ];
-    lispLibs = [ (getAttr "lift" pkgs) ];
-  };
-  lift-test = {
-    pname = "lift-test";
-    version = "20221106-git";
-    asds = [ "lift-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/lift/2022-11-06/lift-20221106-git.tgz";
-      sha256 = "1513n46fkqw8rnvz69s7xnwj476qm8ibdlwsr63qj9yh0mib0q6x";
-      system = "lift-test";
-      asd = "lift-test";
-    });
-    systems = [ "lift-test" ];
-    lispLibs = [ (getAttr "lift" pkgs) ];
-  };
-  lil = {
-    pname = "lil";
-    version = "20211230-git";
-    asds = [ "lil" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/lisp-interface-library/2021-12-30/lisp-interface-library-20211230-git.tgz";
-      sha256 = "0cd6109pzz9b4z0r0b7ibmmaph802ddpzfkk416snfn1mkrdn0gn";
-      system = "lil";
-      asd = "lil";
-    });
-    systems = [ "lil" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "closer-mop" pkgs) (getAttr "fare-memoization" pkgs) (getAttr "fare-utils" pkgs) ];
-  };
-  lil_slash_test = {
-    pname = "lil_test";
-    version = "20211230-git";
-    asds = [ "lil" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/lisp-interface-library/2021-12-30/lisp-interface-library-20211230-git.tgz";
-      sha256 = "0cd6109pzz9b4z0r0b7ibmmaph802ddpzfkk416snfn1mkrdn0gn";
-      system = "lil";
-      asd = "lil";
-    });
-    systems = [ "lil/test" ];
-    lispLibs = [  ];
-    meta = {
-      broken = true;
-    };
-  };
-  lila = {
-    pname = "lila";
-    version = "20191007-git";
-    asds = [ "lila" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/lila/2019-10-07/lila-20191007-git.tgz";
-      sha256 = "0n29ipbcxh4fm8f1vpaywv02iaayqqk61zsfk051ksjfl5kyqypq";
-      system = "lila";
-      asd = "lila";
-    });
-    systems = [ "lila" ];
-    lispLibs = [  ];
-  };
-  lime = {
-    pname = "lime";
-    version = "20151218-git";
-    asds = [ "lime" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/lime/2015-12-18/lime-20151218-git.tgz";
-      sha256 = "0g8spvpsl2cddn8ldmx90fwgh0gghjsbb3zspa0r9f2k7sb6gcgr";
-      system = "lime";
-      asd = "lime";
-    });
-    systems = [ "lime" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "swank-protocol" pkgs) (getAttr "trivial-types" pkgs) ];
-  };
-  lime-example = {
-    pname = "lime-example";
-    version = "20151218-git";
-    asds = [ "lime-example" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/lime/2015-12-18/lime-20151218-git.tgz";
-      sha256 = "0g8spvpsl2cddn8ldmx90fwgh0gghjsbb3zspa0r9f2k7sb6gcgr";
-      system = "lime-example";
-      asd = "lime-example";
-    });
-    systems = [ "lime-example" ];
-    lispLibs = [ (getAttr "bordeaux-threads" pkgs) (getAttr "lime" pkgs) ];
-  };
-  lime-test = {
-    pname = "lime-test";
-    version = "20151218-git";
-    asds = [ "lime-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/lime/2015-12-18/lime-20151218-git.tgz";
-      sha256 = "0g8spvpsl2cddn8ldmx90fwgh0gghjsbb3zspa0r9f2k7sb6gcgr";
-      system = "lime-test";
-      asd = "lime-test";
-    });
-    systems = [ "lime-test" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "external-program" pkgs) (getAttr "fiveam" pkgs) (getAttr "lime" pkgs) ];
-  };
-  linear-programming = {
-    pname = "linear-programming";
-    version = "20221106-git";
-    asds = [ "linear-programming" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/linear-programming/2022-11-06/linear-programming-20221106-git.tgz";
-      sha256 = "03lpyywz1q5ky18ivfpqvzmi11h3daqznj6lh73vij9wjlms7yxk";
-      system = "linear-programming";
-      asd = "linear-programming";
-    });
-    systems = [ "linear-programming" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "iterate" pkgs) ];
-  };
-  linear-programming-glpk = {
-    pname = "linear-programming-glpk";
-    version = "20221106-git";
-    asds = [ "linear-programming-glpk" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/linear-programming-glpk/2022-11-06/linear-programming-glpk-20221106-git.tgz";
-      sha256 = "0vm4qgjvw5k3v62h78j6802dm075aif06hbjw600m3hybn84rs3l";
-      system = "linear-programming-glpk";
-      asd = "linear-programming-glpk";
-    });
-    systems = [ "linear-programming-glpk" ];
-    lispLibs = [ (getAttr "cffi" pkgs) (getAttr "linear-programming" pkgs) ];
-  };
-  linear-programming-glpk_slash_test = {
-    pname = "linear-programming-glpk_test";
-    version = "20221106-git";
-    asds = [ "linear-programming-glpk" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/linear-programming-glpk/2022-11-06/linear-programming-glpk-20221106-git.tgz";
-      sha256 = "0vm4qgjvw5k3v62h78j6802dm075aif06hbjw600m3hybn84rs3l";
-      system = "linear-programming-glpk";
-      asd = "linear-programming-glpk";
-    });
-    systems = [ "linear-programming-glpk/test" ];
-    lispLibs = [ (getAttr "fiveam" pkgs) (getAttr "linear-programming-glpk" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  linear-programming-test = {
-    pname = "linear-programming-test";
-    version = "20221106-git";
-    asds = [ "linear-programming-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/linear-programming/2022-11-06/linear-programming-20221106-git.tgz";
-      sha256 = "03lpyywz1q5ky18ivfpqvzmi11h3daqznj6lh73vij9wjlms7yxk";
-      system = "linear-programming-test";
-      asd = "linear-programming-test";
-    });
-    systems = [ "linear-programming-test" ];
-    lispLibs = [ (getAttr "fiveam" pkgs) (getAttr "iterate" pkgs) (getAttr "linear-programming" pkgs) ];
-  };
-  linedit = {
-    pname = "linedit";
-    version = "20180430-git";
-    asds = [ "linedit" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/linedit/2018-04-30/linedit-20180430-git.tgz";
-      sha256 = "0hhh7xn6q12rviayfihg1ym6x6csa0pdjgb88ykqbrz2rs3pgpz5";
-      system = "linedit";
-      asd = "linedit";
-    });
-    systems = [ "linedit" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cffi" pkgs) (getAttr "osicat" pkgs) (getAttr "terminfo" pkgs) ];
-  };
-  lineva = {
-    pname = "lineva";
-    version = "20221106-git";
-    asds = [ "lineva" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/lineva/2022-11-06/lineva-20221106-git.tgz";
-      sha256 = "193v40llsi51b4zk93fyrg5ll2309waw7ibl4z75bbw73kc4f2wx";
-      system = "lineva";
-      asd = "lineva";
-    });
-    systems = [ "lineva" ];
-    lispLibs = [  ];
-  };
-  lineva_slash_test = {
-    pname = "lineva_test";
-    version = "20221106-git";
-    asds = [ "lineva" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/lineva/2022-11-06/lineva-20221106-git.tgz";
-      sha256 = "193v40llsi51b4zk93fyrg5ll2309waw7ibl4z75bbw73kc4f2wx";
-      system = "lineva";
-      asd = "lineva";
-    });
-    systems = [ "lineva/test" ];
-    lispLibs = [ (getAttr "fiveam" pkgs) (getAttr "lineva" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  linewise-template = {
-    pname = "linewise-template";
-    version = "20160208-git";
-    asds = [ "linewise-template" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/linewise-template/2016-02-08/linewise-template-20160208-git.tgz";
-      sha256 = "06mbg1mq0a5xg3pgn5jml3cbzn8r8aw1p2mq26ml03gsrbiqc7m4";
-      system = "linewise-template";
-      asd = "linewise-template";
-    });
-    systems = [ "linewise-template" ];
-    lispLibs = [ (getAttr "cl-fad" pkgs) (getAttr "cl-ppcre" pkgs) ];
-  };
-  linux-packaging = {
-    pname = "linux-packaging";
-    version = "20211020-git";
-    asds = [ "linux-packaging" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/linux-packaging/2021-10-20/linux-packaging-20211020-git.tgz";
-      sha256 = "0hmahs2slfs1bznn6zdljc5yjlg16ml795rcxnmafq7941lgqjs5";
-      system = "linux-packaging";
-      asd = "linux-packaging";
-    });
-    systems = [ "linux-packaging" ];
-    lispLibs = [ (getAttr "cffi" pkgs) (getAttr "cffi-grovel" pkgs) (getAttr "cffi-toolchain" pkgs) (getAttr "cl-ppcre" pkgs) (getAttr "wild-package-inferred-system" pkgs) ];
-  };
-  linux-packaging-tests = {
-    pname = "linux-packaging-tests";
-    version = "20211020-git";
-    asds = [ "linux-packaging-tests" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/linux-packaging/2021-10-20/linux-packaging-20211020-git.tgz";
-      sha256 = "0hmahs2slfs1bznn6zdljc5yjlg16ml795rcxnmafq7941lgqjs5";
-      system = "linux-packaging-tests";
-      asd = "linux-packaging-tests";
-    });
-    systems = [ "linux-packaging-tests" ];
-    lispLibs = [ (getAttr "sqlite" pkgs) (getAttr "linux-packaging" pkgs) (getAttr "osicat" pkgs) (getAttr "wild-package-inferred-system" pkgs) ];
-  };
-  linux-packaging-tests_slash_deb = {
-    pname = "linux-packaging-tests_deb";
-    version = "20211020-git";
-    asds = [ "linux-packaging-tests" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/linux-packaging/2021-10-20/linux-packaging-20211020-git.tgz";
-      sha256 = "0hmahs2slfs1bznn6zdljc5yjlg16ml795rcxnmafq7941lgqjs5";
-      system = "linux-packaging-tests";
-      asd = "linux-packaging-tests";
-    });
-    systems = [ "linux-packaging-tests/deb" ];
-    lispLibs = [ (getAttr "linux-packaging" pkgs) (getAttr "linux-packaging-tests" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  linux-packaging-tests_slash_pacman = {
-    pname = "linux-packaging-tests_pacman";
-    version = "20211020-git";
-    asds = [ "linux-packaging-tests" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/linux-packaging/2021-10-20/linux-packaging-20211020-git.tgz";
-      sha256 = "0hmahs2slfs1bznn6zdljc5yjlg16ml795rcxnmafq7941lgqjs5";
-      system = "linux-packaging-tests";
-      asd = "linux-packaging-tests";
-    });
-    systems = [ "linux-packaging-tests/pacman" ];
-    lispLibs = [ (getAttr "linux-packaging" pkgs) (getAttr "linux-packaging-tests" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  linux-packaging-tests_slash_rpm = {
-    pname = "linux-packaging-tests_rpm";
-    version = "20211020-git";
-    asds = [ "linux-packaging-tests" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/linux-packaging/2021-10-20/linux-packaging-20211020-git.tgz";
-      sha256 = "0hmahs2slfs1bznn6zdljc5yjlg16ml795rcxnmafq7941lgqjs5";
-      system = "linux-packaging-tests";
-      asd = "linux-packaging-tests";
-    });
-    systems = [ "linux-packaging-tests/rpm" ];
-    lispLibs = [ (getAttr "linux-packaging" pkgs) (getAttr "linux-packaging-tests" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  lionchat = {
-    pname = "lionchat";
-    version = "20220220-git";
-    asds = [ "lionchat" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/lionchat/2022-02-20/lionchat-20220220-git.tgz";
-      sha256 = "1kr8n39nlxpqlk1y7y2p09172701w1k5w1cpffb7bbl41gvkihxf";
-      system = "lionchat";
-      asd = "lionchat";
-    });
-    systems = [ "lionchat" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "bordeaux-threads" pkgs) (getAttr "cl-ppcre" pkgs) (getAttr "documentation-utils" pkgs) (getAttr "lichat-tcp-client" pkgs) (getAttr "qtcore" pkgs) (getAttr "qtgui" pkgs) (getAttr "qtsvg" pkgs) (getAttr "qtools" pkgs) (getAttr "qtools-ui-listing" pkgs) (getAttr "qtools-ui-notification" pkgs) (getAttr "qtools-ui-options" pkgs) (getAttr "qtools-ui-repl" pkgs) (getAttr "trivial-arguments" pkgs) (getAttr "ubiquitous" pkgs) (getAttr "verbose" pkgs) ];
-  };
-  lisa = {
-    pname = "lisa";
-    version = "20120407-git";
-    asds = [ "lisa" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/lisa/2012-04-07/lisa-20120407-git.tgz";
-      sha256 = "12mpwxpczfq2hridjspbg51121hngbcnji37fhlr0vv4dqrg1z15";
-      system = "lisa";
-      asd = "lisa";
-    });
-    systems = [ "lisa" ];
-    lispLibs = [  ];
-  };
-  lisp-binary = {
-    pname = "lisp-binary";
-    version = "20221106-git";
-    asds = [ "lisp-binary" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/lisp-binary/2022-11-06/lisp-binary-20221106-git.tgz";
-      sha256 = "0vn1kjvcch9ky50rq1axg5hixf3zkbb46as99g0aks1b7y250a17";
-      system = "lisp-binary";
-      asd = "lisp-binary";
-    });
-    systems = [ "lisp-binary" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cffi" pkgs) (getAttr "closer-mop" pkgs) (getAttr "flexi-streams" pkgs) (getAttr "moptilities" pkgs) (getAttr "quasiquote-2_dot_0" pkgs) ];
-  };
-  lisp-binary-test = {
-    pname = "lisp-binary-test";
-    version = "20221106-git";
-    asds = [ "lisp-binary-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/lisp-binary/2022-11-06/lisp-binary-20221106-git.tgz";
-      sha256 = "0vn1kjvcch9ky50rq1axg5hixf3zkbb46as99g0aks1b7y250a17";
-      system = "lisp-binary-test";
-      asd = "lisp-binary-test";
-    });
-    systems = [ "lisp-binary-test" ];
-    lispLibs = [ (getAttr "lisp-binary" pkgs) ];
-  };
-  lisp-chat = {
-    pname = "lisp-chat";
-    version = "20210228-git";
-    asds = [ "lisp-chat" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/lisp-chat/2021-02-28/lisp-chat-20210228-git.tgz";
-      sha256 = "0gh78lb6m2790j5z64qij6v1s5yr501idbppg2ccyayl4f8bdpzi";
-      system = "lisp-chat";
-      asd = "lisp-chat";
-    });
-    systems = [ "lisp-chat" ];
-    lispLibs = [ (getAttr "bordeaux-threads" pkgs) (getAttr "cl-readline" pkgs) (getAttr "usocket" pkgs) ];
-  };
-  lisp-chat_slash_client = {
-    pname = "lisp-chat_client";
-    version = "20210228-git";
-    asds = [ "lisp-chat" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/lisp-chat/2021-02-28/lisp-chat-20210228-git.tgz";
-      sha256 = "0gh78lb6m2790j5z64qij6v1s5yr501idbppg2ccyayl4f8bdpzi";
-      system = "lisp-chat";
-      asd = "lisp-chat";
-    });
-    systems = [ "lisp-chat/client" ];
-    lispLibs = [ (getAttr "bordeaux-threads" pkgs) (getAttr "cl-readline" pkgs) (getAttr "usocket" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  lisp-chat_slash_server = {
-    pname = "lisp-chat_server";
-    version = "20210228-git";
-    asds = [ "lisp-chat" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/lisp-chat/2021-02-28/lisp-chat-20210228-git.tgz";
-      sha256 = "0gh78lb6m2790j5z64qij6v1s5yr501idbppg2ccyayl4f8bdpzi";
-      system = "lisp-chat";
-      asd = "lisp-chat";
-    });
-    systems = [ "lisp-chat/server" ];
-    lispLibs = [ (getAttr "bordeaux-threads" pkgs) (getAttr "usocket" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  lisp-critic = {
-    pname = "lisp-critic";
-    version = "20221106-git";
-    asds = [ "lisp-critic" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/lisp-critic/2022-11-06/lisp-critic-20221106-git.tgz";
-      sha256 = "000vp8jsvpw80by7c7nb5394akfcr6rzzpzw049am67fh5qk89rn";
-      system = "lisp-critic";
-      asd = "lisp-critic";
-    });
-    systems = [ "lisp-critic" ];
-    lispLibs = [ (getAttr "ckr-tables" pkgs) ];
-  };
-  lisp-executable = {
-    pname = "lisp-executable";
-    version = "20180831-git";
-    asds = [ "lisp-executable" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/lisp-executable/2018-08-31/lisp-executable-20180831-git.tgz";
-      sha256 = "1309f7w0hks3agkhcn8nwm83yssdfrr9b5bjqkjg3rrhxs86c0z7";
-      system = "lisp-executable";
-      asd = "lisp-executable";
-    });
-    systems = [ "lisp-executable" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) ];
-  };
-  lisp-executable-example = {
-    pname = "lisp-executable-example";
-    version = "20180831-git";
-    asds = [ "lisp-executable-example" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/lisp-executable/2018-08-31/lisp-executable-20180831-git.tgz";
-      sha256 = "1309f7w0hks3agkhcn8nwm83yssdfrr9b5bjqkjg3rrhxs86c0z7";
-      system = "lisp-executable-example";
-      asd = "lisp-executable-example";
-    });
-    systems = [ "lisp-executable-example" ];
-    lispLibs = [ (getAttr "lisp-executable" pkgs) ];
-  };
-  lisp-executable-tests = {
-    pname = "lisp-executable-tests";
-    version = "20180831-git";
-    asds = [ "lisp-executable-tests" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/lisp-executable/2018-08-31/lisp-executable-20180831-git.tgz";
-      sha256 = "1309f7w0hks3agkhcn8nwm83yssdfrr9b5bjqkjg3rrhxs86c0z7";
-      system = "lisp-executable-tests";
-      asd = "lisp-executable-tests";
-    });
-    systems = [ "lisp-executable-tests" ];
-    lispLibs = [ (getAttr "lisp-executable" pkgs) (getAttr "lisp-unit" pkgs) ];
-  };
-  lisp-interface-library = {
-    pname = "lisp-interface-library";
-    version = "20211230-git";
-    asds = [ "lisp-interface-library" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/lisp-interface-library/2021-12-30/lisp-interface-library-20211230-git.tgz";
-      sha256 = "0cd6109pzz9b4z0r0b7ibmmaph802ddpzfkk416snfn1mkrdn0gn";
-      system = "lisp-interface-library";
-      asd = "lisp-interface-library";
-    });
-    systems = [ "lisp-interface-library" ];
-    lispLibs = [ (getAttr "lil" pkgs) ];
-  };
-  lisp-invocation = {
-    pname = "lisp-invocation";
-    version = "20180228-git";
-    asds = [ "lisp-invocation" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/lisp-invocation/2018-02-28/lisp-invocation-20180228-git.tgz";
-      sha256 = "1qwvczjd5w6mrkz7ip3gl46f72dnxgngdc5bla35l2g7br96kzsl";
-      system = "lisp-invocation";
-      asd = "lisp-invocation";
-    });
-    systems = [ "lisp-invocation" ];
-    lispLibs = [  ];
-  };
-  lisp-invocation_slash_all = {
-    pname = "lisp-invocation_all";
-    version = "20180228-git";
-    asds = [ "lisp-invocation" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/lisp-invocation/2018-02-28/lisp-invocation-20180228-git.tgz";
-      sha256 = "1qwvczjd5w6mrkz7ip3gl46f72dnxgngdc5bla35l2g7br96kzsl";
-      system = "lisp-invocation";
-      asd = "lisp-invocation";
-    });
-    systems = [ "lisp-invocation/all" ];
-    lispLibs = [ (getAttr "lisp-invocation" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  lisp-namespace = {
-    pname = "lisp-namespace";
-    version = "20221106-git";
-    asds = [ "lisp-namespace" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/lisp-namespace/2022-11-06/lisp-namespace-20221106-git.tgz";
-      sha256 = "1p5db9mab4whapy1pl38ajw5fkrrdw266n05mnhf4xx2fb9sbx6p";
-      system = "lisp-namespace";
-      asd = "lisp-namespace";
-    });
-    systems = [ "lisp-namespace" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) ];
-  };
-  lisp-namespace_dot_test = {
-    pname = "lisp-namespace.test";
-    version = "20221106-git";
-    asds = [ "lisp-namespace.test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/lisp-namespace/2022-11-06/lisp-namespace-20221106-git.tgz";
-      sha256 = "1p5db9mab4whapy1pl38ajw5fkrrdw266n05mnhf4xx2fb9sbx6p";
-      system = "lisp-namespace.test";
-      asd = "lisp-namespace.test";
-    });
-    systems = [ "lisp-namespace.test" ];
-    lispLibs = [ (getAttr "fiveam" pkgs) (getAttr "lisp-namespace" pkgs) (getAttr "uiop" pkgs) ];
-  };
-  lisp-preprocessor = {
-    pname = "lisp-preprocessor";
-    version = "20200715-git";
-    asds = [ "lisp-preprocessor" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/lisp-preprocessor/2020-07-15/lisp-preprocessor-20200715-git.tgz";
-      sha256 = "0v0qhawcvgbxk06nfwyvcqwmqvzn2svq80l2rb12myr0znschhpi";
-      system = "lisp-preprocessor";
-      asd = "lisp-preprocessor";
-    });
-    systems = [ "lisp-preprocessor" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cl-ppcre" pkgs) (getAttr "split-sequence" pkgs) (getAttr "trivia" pkgs) (getAttr "trivial-gray-streams" pkgs) ];
-  };
-  lisp-preprocessor-tests = {
-    pname = "lisp-preprocessor-tests";
-    version = "20200715-git";
-    asds = [ "lisp-preprocessor-tests" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/lisp-preprocessor/2020-07-15/lisp-preprocessor-20200715-git.tgz";
-      sha256 = "0v0qhawcvgbxk06nfwyvcqwmqvzn2svq80l2rb12myr0znschhpi";
-      system = "lisp-preprocessor-tests";
-      asd = "lisp-preprocessor";
-    });
-    systems = [ "lisp-preprocessor-tests" ];
-    lispLibs = [ (getAttr "lisp-preprocessor" pkgs) (getAttr "rove" pkgs) ];
-  };
-  lisp-stat = {
-    pname = "lisp-stat";
-    version = "20221106-git";
-    asds = [ "lisp-stat" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/lisp-stat/2022-11-06/lisp-stat-20221106-git.tgz";
-      sha256 = "0qwlxrbwj884mr67sf6aj0zwrndv33aiiid4bqrkji41kjhqfcz5";
-      system = "lisp-stat";
-      asd = "lisp-stat";
-    });
-    systems = [ "lisp-stat" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "alexandria_plus" pkgs) (getAttr "array-operations" pkgs) (getAttr "org_dot_tfeb_dot_conduit-packages" pkgs) (getAttr "data-frame" pkgs) (getAttr "dexador" pkgs) (getAttr "dfio" pkgs) (getAttr "distributions" pkgs) (getAttr "num-utils" pkgs) (getAttr "select" pkgs) (getAttr "statistics" pkgs) ];
-  };
-  lisp-types = {
-    pname = "lisp-types";
-    version = "export-to-quicklisp-502a46e2-git";
-    asds = [ "lisp-types" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/regular-type-expression/2020-02-18/regular-type-expression-export-to-quicklisp-502a46e2-git.tgz";
-      sha256 = "1im07p7sbbhdjx9v8fx3v1xdqx1085lra6fsb4sh2bssw7m5xfxi";
-      system = "lisp-types";
-      asd = "lisp-types";
-    });
-    systems = [ "lisp-types" ];
-    lispLibs = [ (getAttr "adjuvant" pkgs) (getAttr "cl-robdd" pkgs) (getAttr "dispatch" pkgs) ];
-  };
-  lisp-types-analysis = {
-    pname = "lisp-types-analysis";
-    version = "export-to-quicklisp-502a46e2-git";
-    asds = [ "lisp-types-analysis" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/regular-type-expression/2020-02-18/regular-type-expression-export-to-quicklisp-502a46e2-git.tgz";
-      sha256 = "1im07p7sbbhdjx9v8fx3v1xdqx1085lra6fsb4sh2bssw7m5xfxi";
-      system = "lisp-types-analysis";
-      asd = "lisp-types-analysis";
-    });
-    systems = [ "lisp-types-analysis" ];
-    lispLibs = [ (getAttr "cl-fad" pkgs) (getAttr "adjuvant" pkgs) (getAttr "cl-robdd" pkgs) (getAttr "cl-robdd-analysis" pkgs) (getAttr "lisp-types" pkgs) (getAttr "scrutiny" pkgs) ];
-  };
-  lisp-types-test = {
-    pname = "lisp-types-test";
-    version = "export-to-quicklisp-502a46e2-git";
-    asds = [ "lisp-types-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/regular-type-expression/2020-02-18/regular-type-expression-export-to-quicklisp-502a46e2-git.tgz";
-      sha256 = "1im07p7sbbhdjx9v8fx3v1xdqx1085lra6fsb4sh2bssw7m5xfxi";
-      system = "lisp-types-test";
-      asd = "lisp-types-test";
-    });
-    systems = [ "lisp-types-test" ];
-    lispLibs = [ (getAttr "bordeaux-threads" pkgs) (getAttr "closer-mop" pkgs) (getAttr "adjuvant" pkgs) (getAttr "lisp-types" pkgs) (getAttr "lisp-types-analysis" pkgs) (getAttr "scrutiny" pkgs) ];
-  };
-  lisp-unit = {
-    pname = "lisp-unit";
-    version = "20170124-git";
-    asds = [ "lisp-unit" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/lisp-unit/2017-01-24/lisp-unit-20170124-git.tgz";
-      sha256 = "0p6gdmgr7p383nvd66c9y9fp2bjk4jx1lpa5p09g43hr9y9pp9ry";
-      system = "lisp-unit";
-      asd = "lisp-unit";
-    });
-    systems = [ "lisp-unit" ];
-    lispLibs = [  ];
-  };
-  lisp-unit2 = {
-    pname = "lisp-unit2";
-    version = "20221106-git";
-    asds = [ "lisp-unit2" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/lisp-unit2/2022-11-06/lisp-unit2-20221106-git.tgz";
-      sha256 = "0jm0vfdj9w65r43an9sy90ddpi8ra1rh9vswaq6bhnzzmsrrbjyq";
-      system = "lisp-unit2";
-      asd = "lisp-unit2";
-    });
-    systems = [ "lisp-unit2" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cl-interpol" pkgs) (getAttr "iterate" pkgs) (getAttr "symbol-munger" pkgs) ];
-  };
-  lisp-unit2_slash_tests = {
-    pname = "lisp-unit2_tests";
-    version = "20221106-git";
-    asds = [ "lisp-unit2" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/lisp-unit2/2022-11-06/lisp-unit2-20221106-git.tgz";
-      sha256 = "0jm0vfdj9w65r43an9sy90ddpi8ra1rh9vswaq6bhnzzmsrrbjyq";
-      system = "lisp-unit2";
-      asd = "lisp-unit2";
-    });
-    systems = [ "lisp-unit2/tests" ];
-    lispLibs = [ (getAttr "lisp-unit2" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  lispbuilder-lexer = {
-    pname = "lispbuilder-lexer";
-    version = "20210807-git";
-    asds = [ "lispbuilder-lexer" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/lispbuilder/2021-08-07/lispbuilder-20210807-git.tgz";
-      sha256 = "0ssm72ss4k6gjkm7nq225miisip6kvhmnnycvxn8x1z20qld03iq";
-      system = "lispbuilder-lexer";
-      asd = "lispbuilder-lexer";
-    });
-    systems = [ "lispbuilder-lexer" ];
-    lispLibs = [ (getAttr "lispbuilder-regex" pkgs) ];
-  };
-  lispbuilder-net = {
-    pname = "lispbuilder-net";
-    version = "20210807-git";
-    asds = [ "lispbuilder-net" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/lispbuilder/2021-08-07/lispbuilder-20210807-git.tgz";
-      sha256 = "0ssm72ss4k6gjkm7nq225miisip6kvhmnnycvxn8x1z20qld03iq";
-      system = "lispbuilder-net";
-      asd = "lispbuilder-net";
-    });
-    systems = [ "lispbuilder-net" ];
-    lispLibs = [ (getAttr "cffi" pkgs) (getAttr "lispbuilder-net-cffi" pkgs) ];
-  };
-  lispbuilder-net-cffi = {
-    pname = "lispbuilder-net-cffi";
-    version = "20210807-git";
-    asds = [ "lispbuilder-net-cffi" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/lispbuilder/2021-08-07/lispbuilder-20210807-git.tgz";
-      sha256 = "0ssm72ss4k6gjkm7nq225miisip6kvhmnnycvxn8x1z20qld03iq";
-      system = "lispbuilder-net-cffi";
-      asd = "lispbuilder-net-cffi";
-    });
-    systems = [ "lispbuilder-net-cffi" ];
-    lispLibs = [ (getAttr "cffi" pkgs) ];
-  };
-  lispbuilder-opengl-1-1 = {
-    pname = "lispbuilder-opengl-1-1";
-    version = "20210807-git";
-    asds = [ "lispbuilder-opengl-1-1" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/lispbuilder/2021-08-07/lispbuilder-20210807-git.tgz";
-      sha256 = "0ssm72ss4k6gjkm7nq225miisip6kvhmnnycvxn8x1z20qld03iq";
-      system = "lispbuilder-opengl-1-1";
-      asd = "lispbuilder-opengl-1-1";
-    });
-    systems = [ "lispbuilder-opengl-1-1" ];
-    lispLibs = [ (getAttr "cffi" pkgs) ];
-  };
-  lispbuilder-opengl-examples = {
-    pname = "lispbuilder-opengl-examples";
-    version = "20210807-git";
-    asds = [ "lispbuilder-opengl-examples" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/lispbuilder/2021-08-07/lispbuilder-20210807-git.tgz";
-      sha256 = "0ssm72ss4k6gjkm7nq225miisip6kvhmnnycvxn8x1z20qld03iq";
-      system = "lispbuilder-opengl-examples";
-      asd = "lispbuilder-opengl-examples";
-    });
-    systems = [ "lispbuilder-opengl-examples" ];
-    lispLibs = [ (getAttr "cffi" pkgs) (getAttr "lispbuilder-opengl-1-1" pkgs) (getAttr "lispbuilder-sdl" pkgs) ];
-  };
-  lispbuilder-regex = {
-    pname = "lispbuilder-regex";
-    version = "20210807-git";
-    asds = [ "lispbuilder-regex" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/lispbuilder/2021-08-07/lispbuilder-20210807-git.tgz";
-      sha256 = "0ssm72ss4k6gjkm7nq225miisip6kvhmnnycvxn8x1z20qld03iq";
-      system = "lispbuilder-regex";
-      asd = "lispbuilder-regex";
-    });
-    systems = [ "lispbuilder-regex" ];
-    lispLibs = [  ];
-  };
-  lispbuilder-sdl = {
-    pname = "lispbuilder-sdl";
-    version = "20210807-git";
-    asds = [ "lispbuilder-sdl" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/lispbuilder/2021-08-07/lispbuilder-20210807-git.tgz";
-      sha256 = "0ssm72ss4k6gjkm7nq225miisip6kvhmnnycvxn8x1z20qld03iq";
-      system = "lispbuilder-sdl";
-      asd = "lispbuilder-sdl";
-    });
-    systems = [ "lispbuilder-sdl" ];
-    lispLibs = [ (getAttr "cffi" pkgs) (getAttr "lispbuilder-sdl-assets" pkgs) (getAttr "lispbuilder-sdl-base" pkgs) (getAttr "trivial-garbage" pkgs) ];
-  };
-  lispbuilder-sdl-assets = {
-    pname = "lispbuilder-sdl-assets";
-    version = "20210807-git";
-    asds = [ "lispbuilder-sdl-assets" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/lispbuilder/2021-08-07/lispbuilder-20210807-git.tgz";
-      sha256 = "0ssm72ss4k6gjkm7nq225miisip6kvhmnnycvxn8x1z20qld03iq";
-      system = "lispbuilder-sdl-assets";
-      asd = "lispbuilder-sdl-assets";
-    });
-    systems = [ "lispbuilder-sdl-assets" ];
-    lispLibs = [  ];
-  };
-  lispbuilder-sdl-base = {
-    pname = "lispbuilder-sdl-base";
-    version = "20210807-git";
-    asds = [ "lispbuilder-sdl-base" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/lispbuilder/2021-08-07/lispbuilder-20210807-git.tgz";
-      sha256 = "0ssm72ss4k6gjkm7nq225miisip6kvhmnnycvxn8x1z20qld03iq";
-      system = "lispbuilder-sdl-base";
-      asd = "lispbuilder-sdl-base";
-    });
-    systems = [ "lispbuilder-sdl-base" ];
-    lispLibs = [ (getAttr "cffi" pkgs) (getAttr "lispbuilder-sdl-cffi" pkgs) ];
-  };
-  lispbuilder-sdl-binaries = {
-    pname = "lispbuilder-sdl-binaries";
-    version = "20210807-git";
-    asds = [ "lispbuilder-sdl-binaries" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/lispbuilder/2021-08-07/lispbuilder-20210807-git.tgz";
-      sha256 = "0ssm72ss4k6gjkm7nq225miisip6kvhmnnycvxn8x1z20qld03iq";
-      system = "lispbuilder-sdl-binaries";
-      asd = "lispbuilder-sdl-binaries";
-    });
-    systems = [ "lispbuilder-sdl-binaries" ];
-    lispLibs = [  ];
-  };
-  lispbuilder-sdl-cffi = {
-    pname = "lispbuilder-sdl-cffi";
-    version = "20210807-git";
-    asds = [ "lispbuilder-sdl-cffi" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/lispbuilder/2021-08-07/lispbuilder-20210807-git.tgz";
-      sha256 = "0ssm72ss4k6gjkm7nq225miisip6kvhmnnycvxn8x1z20qld03iq";
-      system = "lispbuilder-sdl-cffi";
-      asd = "lispbuilder-sdl-cffi";
-    });
-    systems = [ "lispbuilder-sdl-cffi" ];
-    lispLibs = [ (getAttr "cffi" pkgs) (getAttr "lispbuilder-sdl-binaries" pkgs) ];
-  };
-  lispbuilder-sdl-cl-vectors = {
-    pname = "lispbuilder-sdl-cl-vectors";
-    version = "20210807-git";
-    asds = [ "lispbuilder-sdl-cl-vectors" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/lispbuilder/2021-08-07/lispbuilder-20210807-git.tgz";
-      sha256 = "0ssm72ss4k6gjkm7nq225miisip6kvhmnnycvxn8x1z20qld03iq";
-      system = "lispbuilder-sdl-cl-vectors";
-      asd = "lispbuilder-sdl-cl-vectors";
-    });
-    systems = [ "lispbuilder-sdl-cl-vectors" ];
-    lispLibs = [ (getAttr "cl-aa-misc" pkgs) (getAttr "cl-paths-ttf" pkgs) (getAttr "cl-vectors" pkgs) (getAttr "lispbuilder-sdl" pkgs) (getAttr "zpb-ttf" pkgs) ];
-  };
-  lispbuilder-sdl-cl-vectors-examples = {
-    pname = "lispbuilder-sdl-cl-vectors-examples";
-    version = "20210807-git";
-    asds = [ "lispbuilder-sdl-cl-vectors-examples" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/lispbuilder/2021-08-07/lispbuilder-20210807-git.tgz";
-      sha256 = "0ssm72ss4k6gjkm7nq225miisip6kvhmnnycvxn8x1z20qld03iq";
-      system = "lispbuilder-sdl-cl-vectors-examples";
-      asd = "lispbuilder-sdl-cl-vectors-examples";
-    });
-    systems = [ "lispbuilder-sdl-cl-vectors-examples" ];
-    lispLibs = [ (getAttr "lispbuilder-sdl-cl-vectors" pkgs) ];
-  };
-  lispbuilder-sdl-examples = {
-    pname = "lispbuilder-sdl-examples";
-    version = "20210807-git";
-    asds = [ "lispbuilder-sdl-examples" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/lispbuilder/2021-08-07/lispbuilder-20210807-git.tgz";
-      sha256 = "0ssm72ss4k6gjkm7nq225miisip6kvhmnnycvxn8x1z20qld03iq";
-      system = "lispbuilder-sdl-examples";
-      asd = "lispbuilder-sdl-examples";
-    });
-    systems = [ "lispbuilder-sdl-examples" ];
-    lispLibs = [ (getAttr "lispbuilder-sdl" pkgs) ];
-  };
-  lispbuilder-sdl-gfx = {
-    pname = "lispbuilder-sdl-gfx";
-    version = "20210807-git";
-    asds = [ "lispbuilder-sdl-gfx" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/lispbuilder/2021-08-07/lispbuilder-20210807-git.tgz";
-      sha256 = "0ssm72ss4k6gjkm7nq225miisip6kvhmnnycvxn8x1z20qld03iq";
-      system = "lispbuilder-sdl-gfx";
-      asd = "lispbuilder-sdl-gfx";
-    });
-    systems = [ "lispbuilder-sdl-gfx" ];
-    lispLibs = [ (getAttr "cffi" pkgs) (getAttr "lispbuilder-sdl" pkgs) (getAttr "lispbuilder-sdl-gfx-cffi" pkgs) ];
-  };
-  lispbuilder-sdl-gfx-binaries = {
-    pname = "lispbuilder-sdl-gfx-binaries";
-    version = "20210807-git";
-    asds = [ "lispbuilder-sdl-gfx-binaries" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/lispbuilder/2021-08-07/lispbuilder-20210807-git.tgz";
-      sha256 = "0ssm72ss4k6gjkm7nq225miisip6kvhmnnycvxn8x1z20qld03iq";
-      system = "lispbuilder-sdl-gfx-binaries";
-      asd = "lispbuilder-sdl-gfx-binaries";
-    });
-    systems = [ "lispbuilder-sdl-gfx-binaries" ];
-    lispLibs = [  ];
-  };
-  lispbuilder-sdl-gfx-cffi = {
-    pname = "lispbuilder-sdl-gfx-cffi";
-    version = "20210807-git";
-    asds = [ "lispbuilder-sdl-gfx-cffi" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/lispbuilder/2021-08-07/lispbuilder-20210807-git.tgz";
-      sha256 = "0ssm72ss4k6gjkm7nq225miisip6kvhmnnycvxn8x1z20qld03iq";
-      system = "lispbuilder-sdl-gfx-cffi";
-      asd = "lispbuilder-sdl-gfx-cffi";
-    });
-    systems = [ "lispbuilder-sdl-gfx-cffi" ];
-    lispLibs = [ (getAttr "cffi" pkgs) (getAttr "lispbuilder-sdl" pkgs) ];
-  };
-  lispbuilder-sdl-gfx-examples = {
-    pname = "lispbuilder-sdl-gfx-examples";
-    version = "20210807-git";
-    asds = [ "lispbuilder-sdl-gfx-examples" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/lispbuilder/2021-08-07/lispbuilder-20210807-git.tgz";
-      sha256 = "0ssm72ss4k6gjkm7nq225miisip6kvhmnnycvxn8x1z20qld03iq";
-      system = "lispbuilder-sdl-gfx-examples";
-      asd = "lispbuilder-sdl-gfx-examples";
-    });
-    systems = [ "lispbuilder-sdl-gfx-examples" ];
-    lispLibs = [ (getAttr "lispbuilder-sdl-gfx" pkgs) ];
-  };
-  lispbuilder-sdl-image = {
-    pname = "lispbuilder-sdl-image";
-    version = "20210807-git";
-    asds = [ "lispbuilder-sdl-image" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/lispbuilder/2021-08-07/lispbuilder-20210807-git.tgz";
-      sha256 = "0ssm72ss4k6gjkm7nq225miisip6kvhmnnycvxn8x1z20qld03iq";
-      system = "lispbuilder-sdl-image";
-      asd = "lispbuilder-sdl-image";
-    });
-    systems = [ "lispbuilder-sdl-image" ];
-    lispLibs = [ (getAttr "cffi" pkgs) (getAttr "lispbuilder-sdl" pkgs) (getAttr "lispbuilder-sdl-image-cffi" pkgs) ];
-  };
-  lispbuilder-sdl-image-binaries = {
-    pname = "lispbuilder-sdl-image-binaries";
-    version = "20210807-git";
-    asds = [ "lispbuilder-sdl-image-binaries" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/lispbuilder/2021-08-07/lispbuilder-20210807-git.tgz";
-      sha256 = "0ssm72ss4k6gjkm7nq225miisip6kvhmnnycvxn8x1z20qld03iq";
-      system = "lispbuilder-sdl-image-binaries";
-      asd = "lispbuilder-sdl-image-binaries";
-    });
-    systems = [ "lispbuilder-sdl-image-binaries" ];
-    lispLibs = [  ];
-  };
-  lispbuilder-sdl-image-cffi = {
-    pname = "lispbuilder-sdl-image-cffi";
-    version = "20210807-git";
-    asds = [ "lispbuilder-sdl-image-cffi" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/lispbuilder/2021-08-07/lispbuilder-20210807-git.tgz";
-      sha256 = "0ssm72ss4k6gjkm7nq225miisip6kvhmnnycvxn8x1z20qld03iq";
-      system = "lispbuilder-sdl-image-cffi";
-      asd = "lispbuilder-sdl-image-cffi";
-    });
-    systems = [ "lispbuilder-sdl-image-cffi" ];
-    lispLibs = [ (getAttr "cffi" pkgs) (getAttr "lispbuilder-sdl" pkgs) (getAttr "lispbuilder-sdl-image-binaries" pkgs) ];
-  };
-  lispbuilder-sdl-image-examples = {
-    pname = "lispbuilder-sdl-image-examples";
-    version = "20210807-git";
-    asds = [ "lispbuilder-sdl-image-examples" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/lispbuilder/2021-08-07/lispbuilder-20210807-git.tgz";
-      sha256 = "0ssm72ss4k6gjkm7nq225miisip6kvhmnnycvxn8x1z20qld03iq";
-      system = "lispbuilder-sdl-image-examples";
-      asd = "lispbuilder-sdl-image-examples";
-    });
-    systems = [ "lispbuilder-sdl-image-examples" ];
-    lispLibs = [ (getAttr "cffi" pkgs) (getAttr "lispbuilder-sdl" pkgs) (getAttr "lispbuilder-sdl-image" pkgs) ];
-  };
-  lispbuilder-sdl-mixer = {
-    pname = "lispbuilder-sdl-mixer";
-    version = "20210807-git";
-    asds = [ "lispbuilder-sdl-mixer" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/lispbuilder/2021-08-07/lispbuilder-20210807-git.tgz";
-      sha256 = "0ssm72ss4k6gjkm7nq225miisip6kvhmnnycvxn8x1z20qld03iq";
-      system = "lispbuilder-sdl-mixer";
-      asd = "lispbuilder-sdl-mixer";
-    });
-    systems = [ "lispbuilder-sdl-mixer" ];
-    lispLibs = [ (getAttr "cffi" pkgs) (getAttr "lispbuilder-sdl" pkgs) (getAttr "lispbuilder-sdl-mixer-cffi" pkgs) ];
-  };
-  lispbuilder-sdl-mixer-binaries = {
-    pname = "lispbuilder-sdl-mixer-binaries";
-    version = "20210807-git";
-    asds = [ "lispbuilder-sdl-mixer-binaries" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/lispbuilder/2021-08-07/lispbuilder-20210807-git.tgz";
-      sha256 = "0ssm72ss4k6gjkm7nq225miisip6kvhmnnycvxn8x1z20qld03iq";
-      system = "lispbuilder-sdl-mixer-binaries";
-      asd = "lispbuilder-sdl-mixer-binaries";
-    });
-    systems = [ "lispbuilder-sdl-mixer-binaries" ];
-    lispLibs = [  ];
-  };
-  lispbuilder-sdl-mixer-cffi = {
-    pname = "lispbuilder-sdl-mixer-cffi";
-    version = "20210807-git";
-    asds = [ "lispbuilder-sdl-mixer-cffi" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/lispbuilder/2021-08-07/lispbuilder-20210807-git.tgz";
-      sha256 = "0ssm72ss4k6gjkm7nq225miisip6kvhmnnycvxn8x1z20qld03iq";
-      system = "lispbuilder-sdl-mixer-cffi";
-      asd = "lispbuilder-sdl-mixer-cffi";
-    });
-    systems = [ "lispbuilder-sdl-mixer-cffi" ];
-    lispLibs = [ (getAttr "cffi" pkgs) (getAttr "lispbuilder-sdl" pkgs) (getAttr "lispbuilder-sdl-mixer-binaries" pkgs) ];
-  };
-  lispbuilder-sdl-mixer-examples = {
-    pname = "lispbuilder-sdl-mixer-examples";
-    version = "20210807-git";
-    asds = [ "lispbuilder-sdl-mixer-examples" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/lispbuilder/2021-08-07/lispbuilder-20210807-git.tgz";
-      sha256 = "0ssm72ss4k6gjkm7nq225miisip6kvhmnnycvxn8x1z20qld03iq";
-      system = "lispbuilder-sdl-mixer-examples";
-      asd = "lispbuilder-sdl-mixer-examples";
-    });
-    systems = [ "lispbuilder-sdl-mixer-examples" ];
-    lispLibs = [ (getAttr "cffi" pkgs) (getAttr "lispbuilder-sdl" pkgs) (getAttr "lispbuilder-sdl-mixer" pkgs) ];
-  };
-  lispbuilder-sdl-ttf = {
-    pname = "lispbuilder-sdl-ttf";
-    version = "20210807-git";
-    asds = [ "lispbuilder-sdl-ttf" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/lispbuilder/2021-08-07/lispbuilder-20210807-git.tgz";
-      sha256 = "0ssm72ss4k6gjkm7nq225miisip6kvhmnnycvxn8x1z20qld03iq";
-      system = "lispbuilder-sdl-ttf";
-      asd = "lispbuilder-sdl-ttf";
-    });
-    systems = [ "lispbuilder-sdl-ttf" ];
-    lispLibs = [ (getAttr "cffi" pkgs) (getAttr "lispbuilder-sdl" pkgs) (getAttr "lispbuilder-sdl-ttf-cffi" pkgs) ];
-  };
-  lispbuilder-sdl-ttf-binaries = {
-    pname = "lispbuilder-sdl-ttf-binaries";
-    version = "20210807-git";
-    asds = [ "lispbuilder-sdl-ttf-binaries" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/lispbuilder/2021-08-07/lispbuilder-20210807-git.tgz";
-      sha256 = "0ssm72ss4k6gjkm7nq225miisip6kvhmnnycvxn8x1z20qld03iq";
-      system = "lispbuilder-sdl-ttf-binaries";
-      asd = "lispbuilder-sdl-ttf-binaries";
-    });
-    systems = [ "lispbuilder-sdl-ttf-binaries" ];
-    lispLibs = [  ];
-  };
-  lispbuilder-sdl-ttf-cffi = {
-    pname = "lispbuilder-sdl-ttf-cffi";
-    version = "20210807-git";
-    asds = [ "lispbuilder-sdl-ttf-cffi" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/lispbuilder/2021-08-07/lispbuilder-20210807-git.tgz";
-      sha256 = "0ssm72ss4k6gjkm7nq225miisip6kvhmnnycvxn8x1z20qld03iq";
-      system = "lispbuilder-sdl-ttf-cffi";
-      asd = "lispbuilder-sdl-ttf-cffi";
-    });
-    systems = [ "lispbuilder-sdl-ttf-cffi" ];
-    lispLibs = [ (getAttr "cffi" pkgs) (getAttr "lispbuilder-sdl" pkgs) (getAttr "lispbuilder-sdl-ttf-binaries" pkgs) ];
-  };
-  lispbuilder-sdl-ttf-examples = {
-    pname = "lispbuilder-sdl-ttf-examples";
-    version = "20210807-git";
-    asds = [ "lispbuilder-sdl-ttf-examples" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/lispbuilder/2021-08-07/lispbuilder-20210807-git.tgz";
-      sha256 = "0ssm72ss4k6gjkm7nq225miisip6kvhmnnycvxn8x1z20qld03iq";
-      system = "lispbuilder-sdl-ttf-examples";
-      asd = "lispbuilder-sdl-ttf-examples";
-    });
-    systems = [ "lispbuilder-sdl-ttf-examples" ];
-    lispLibs = [ (getAttr "cffi" pkgs) (getAttr "lispbuilder-sdl" pkgs) (getAttr "lispbuilder-sdl-ttf" pkgs) ];
-  };
-  lispbuilder-sdl-vecto = {
-    pname = "lispbuilder-sdl-vecto";
-    version = "20210807-git";
-    asds = [ "lispbuilder-sdl-vecto" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/lispbuilder/2021-08-07/lispbuilder-20210807-git.tgz";
-      sha256 = "0ssm72ss4k6gjkm7nq225miisip6kvhmnnycvxn8x1z20qld03iq";
-      system = "lispbuilder-sdl-vecto";
-      asd = "lispbuilder-sdl-vecto";
-    });
-    systems = [ "lispbuilder-sdl-vecto" ];
-    lispLibs = [ (getAttr "lispbuilder-sdl" pkgs) (getAttr "lispbuilder-sdl-cl-vectors" pkgs) (getAttr "vecto" pkgs) ];
-  };
-  lispbuilder-sdl-vecto-examples = {
-    pname = "lispbuilder-sdl-vecto-examples";
-    version = "20210807-git";
-    asds = [ "lispbuilder-sdl-vecto-examples" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/lispbuilder/2021-08-07/lispbuilder-20210807-git.tgz";
-      sha256 = "0ssm72ss4k6gjkm7nq225miisip6kvhmnnycvxn8x1z20qld03iq";
-      system = "lispbuilder-sdl-vecto-examples";
-      asd = "lispbuilder-sdl-vecto-examples";
-    });
-    systems = [ "lispbuilder-sdl-vecto-examples" ];
-    lispLibs = [ (getAttr "lispbuilder-sdl-vecto" pkgs) ];
-  };
-  lispbuilder-windows = {
-    pname = "lispbuilder-windows";
-    version = "20210807-git";
-    asds = [ "lispbuilder-windows" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/lispbuilder/2021-08-07/lispbuilder-20210807-git.tgz";
-      sha256 = "0ssm72ss4k6gjkm7nq225miisip6kvhmnnycvxn8x1z20qld03iq";
-      system = "lispbuilder-windows";
-      asd = "lispbuilder-windows";
-    });
-    systems = [ "lispbuilder-windows" ];
-    lispLibs = [ (getAttr "cffi" pkgs) ];
-  };
-  lispbuilder-yacc = {
-    pname = "lispbuilder-yacc";
-    version = "20210807-git";
-    asds = [ "lispbuilder-yacc" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/lispbuilder/2021-08-07/lispbuilder-20210807-git.tgz";
-      sha256 = "0ssm72ss4k6gjkm7nq225miisip6kvhmnnycvxn8x1z20qld03iq";
-      system = "lispbuilder-yacc";
-      asd = "lispbuilder-yacc";
-    });
-    systems = [ "lispbuilder-yacc" ];
-    lispLibs = [  ];
-  };
-  lispcord = {
-    pname = "lispcord";
-    version = "20200925-git";
-    asds = [ "lispcord" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/lispcord/2020-09-25/lispcord-20200925-git.tgz";
-      sha256 = "1bkvsbnbv21q8xz8z2nmczznd0sllr57l3sc2wm5cjn6h3qg1sgh";
-      system = "lispcord";
-      asd = "lispcord";
-    });
-    systems = [ "lispcord" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "babel" pkgs) (getAttr "bordeaux-threads" pkgs) (getAttr "drakma" pkgs) (getAttr "jonathan" pkgs) (getAttr "split-sequence" pkgs) (getAttr "verbose" pkgs) (getAttr "websocket-driver-client" pkgs) ];
-  };
-  lispqr = {
-    pname = "lispqr";
-    version = "20210630-git";
-    asds = [ "lispqr" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/lispqr/2021-06-30/lispqr-20210630-git.tgz";
-      sha256 = "06v1xpw5r4nxll286frhkc3ysvr50m904d33marnjmiax41y8qkc";
-      system = "lispqr";
-      asd = "lispqr";
-    });
-    systems = [ "lispqr" ];
-    lispLibs = [ (getAttr "zpng" pkgs) ];
-  };
-  list-named-class = {
-    pname = "list-named-class";
-    version = "20200325-git";
-    asds = [ "list-named-class" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/list-named-class/2020-03-25/list-named-class-20200325-git.tgz";
-      sha256 = "1bdi9q9wvfj66jji3n9hpjrj9271ial2awsb0xw80bmy6wqbg8kq";
-      system = "list-named-class";
-      asd = "list-named-class";
-    });
-    systems = [ "list-named-class" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "closer-mop" pkgs) ];
-  };
-  list-named-class_slash_protest = {
-    pname = "list-named-class_protest";
-    version = "20200325-git";
-    asds = [ "list-named-class" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/list-named-class/2020-03-25/list-named-class-20200325-git.tgz";
-      sha256 = "1bdi9q9wvfj66jji3n9hpjrj9271ial2awsb0xw80bmy6wqbg8kq";
-      system = "list-named-class";
-      asd = "list-named-class";
-    });
-    systems = [ "list-named-class/protest" ];
-    lispLibs = [ (getAttr "list-named-class" pkgs) (getAttr "protest" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  list-named-class_slash_test = {
-    pname = "list-named-class_test";
-    version = "20200325-git";
-    asds = [ "list-named-class" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/list-named-class/2020-03-25/list-named-class-20200325-git.tgz";
-      sha256 = "1bdi9q9wvfj66jji3n9hpjrj9271ial2awsb0xw80bmy6wqbg8kq";
-      system = "list-named-class";
-      asd = "list-named-class";
-    });
-    systems = [ "list-named-class/test" ];
-    lispLibs = [ (getAttr "_1am" pkgs) (getAttr "list-named-class" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  list-of = {
-    pname = "list-of";
-    version = "20221106-git";
-    asds = [ "list-of" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/asdf-finalizers/2022-11-06/asdf-finalizers-20221106-git.tgz";
-      sha256 = "1w56c9yjjydjshsgqxz57qlp2v3r4ilbisnsgiqphvxnhvd41y0v";
-      system = "list-of";
-      asd = "list-of";
-    });
-    systems = [ "list-of" ];
-    lispLibs = [ (getAttr "asdf-finalizers" pkgs) ];
-  };
-  listoflist = {
-    pname = "listoflist";
-    version = "20140826-git";
-    asds = [ "listoflist" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/listoflist/2014-08-26/listoflist-20140826-git.tgz";
-      sha256 = "02bj2ldn7sfjbbn9zd66lwysymrv3f6g4q9hwsjbcg4fkpbk6qk3";
-      system = "listoflist";
-      asd = "listoflist";
-    });
-    systems = [ "listoflist" ];
-    lispLibs = [ (getAttr "clunit" pkgs) (getAttr "xarray" pkgs) ];
-  };
-  listopia = {
-    pname = "listopia";
-    version = "20210411-git";
-    asds = [ "listopia" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/listopia/2021-04-11/listopia-20210411-git.tgz";
-      sha256 = "0jd3mdv0ia8mfgdbpndzm3rdgc6nn9d9xpjzqjx582qhbnc0yji0";
-      system = "listopia";
-      asd = "listopia";
-    });
-    systems = [ "listopia" ];
-    lispLibs = [  ];
-  };
-  listopia-bench = {
-    pname = "listopia-bench";
-    version = "20210411-git";
-    asds = [ "listopia-bench" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/listopia/2021-04-11/listopia-20210411-git.tgz";
-      sha256 = "0jd3mdv0ia8mfgdbpndzm3rdgc6nn9d9xpjzqjx582qhbnc0yji0";
-      system = "listopia-bench";
-      asd = "listopia-bench";
-    });
-    systems = [ "listopia-bench" ];
-    lispLibs = [ (getAttr "listopia" pkgs) (getAttr "prove" pkgs) (getAttr "prove-asdf" pkgs) (getAttr "trivial-benchmark" pkgs) ];
-  };
-  listopia_slash_tests = {
-    pname = "listopia_tests";
-    version = "20210411-git";
-    asds = [ "listopia" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/listopia/2021-04-11/listopia-20210411-git.tgz";
-      sha256 = "0jd3mdv0ia8mfgdbpndzm3rdgc6nn9d9xpjzqjx582qhbnc0yji0";
-      system = "listopia";
-      asd = "listopia";
-    });
-    systems = [ "listopia/tests" ];
-    lispLibs = [ (getAttr "listopia" pkgs) (getAttr "rove" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  liter = {
-    pname = "liter";
-    version = "20211020-git";
-    asds = [ "liter" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/colliflower/2021-10-20/colliflower-20211020-git.tgz";
-      sha256 = "1fzn9s7wm7wmffrdm21lpvry9jb320456cmmprn976a533lp704r";
-      system = "liter";
-      asd = "liter";
-    });
-    systems = [ "liter" ];
-    lispLibs = [ (getAttr "closer-mop" pkgs) (getAttr "iterate" pkgs) (getAttr "serapeum" pkgs) ];
-  };
-  literate-demo = {
-    pname = "literate-demo";
-    version = "20221106-git";
-    asds = [ "literate-demo" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/literate-lisp/2022-11-06/literate-lisp-20221106-git.tgz";
-      sha256 = "18lp0bwi4ws7d2xm0lf0jxlvajrxpfyp0z0zamgs97swz5rb8qpk";
-      system = "literate-demo";
-      asd = "literate-demo";
-    });
-    systems = [ "literate-demo" ];
-    lispLibs = [ (getAttr "iterate" pkgs) (getAttr "literate-lisp" pkgs) ];
-  };
-  literate-lisp = {
-    pname = "literate-lisp";
-    version = "20221106-git";
-    asds = [ "literate-lisp" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/literate-lisp/2022-11-06/literate-lisp-20221106-git.tgz";
-      sha256 = "18lp0bwi4ws7d2xm0lf0jxlvajrxpfyp0z0zamgs97swz5rb8qpk";
-      system = "literate-lisp";
-      asd = "literate-lisp";
-    });
-    systems = [ "literate-lisp" ];
-    lispLibs = [ (getAttr "cl-fad" pkgs) (getAttr "cl-ppcre" pkgs) (getAttr "iterate" pkgs) ];
-  };
-  litterae = {
-    pname = "litterae";
-    version = "20200715-git";
-    asds = [ "litterae" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/litterae/2020-07-15/litterae-20200715-git.tgz";
-      sha256 = "05q6apkcxacis4llq8xjp468yg5v6za0ispcy5wqsb44ic0vhmsl";
-      system = "litterae";
-      asd = "litterae";
-    });
-    systems = [ "litterae" ];
-    lispLibs = [ (getAttr "_3bmd" pkgs) (getAttr "_3bmd-ext-code-blocks" pkgs) (getAttr "str" pkgs) (getAttr "cl-yaml" pkgs) (getAttr "docparser" pkgs) (getAttr "lsx" pkgs) ];
-  };
-  litterae-test-system = {
-    pname = "litterae-test-system";
-    version = "20200715-git";
-    asds = [ "litterae-test-system" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/litterae/2020-07-15/litterae-20200715-git.tgz";
-      sha256 = "05q6apkcxacis4llq8xjp468yg5v6za0ispcy5wqsb44ic0vhmsl";
-      system = "litterae-test-system";
-      asd = "litterae-test-system";
-    });
-    systems = [ "litterae-test-system" ];
-    lispLibs = [  ];
-  };
-  litterae_slash_tests = {
-    pname = "litterae_tests";
-    version = "20200715-git";
-    asds = [ "litterae" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/litterae/2020-07-15/litterae-20200715-git.tgz";
-      sha256 = "05q6apkcxacis4llq8xjp468yg5v6za0ispcy5wqsb44ic0vhmsl";
-      system = "litterae";
-      asd = "litterae";
-    });
-    systems = [ "litterae/tests" ];
-    lispLibs = [ (getAttr "litterae" pkgs) (getAttr "litterae-test-system" pkgs) (getAttr "rove" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  livesupport = {
-    pname = "livesupport";
-    version = "release-quicklisp-71e6e412-git";
-    asds = [ "livesupport" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/livesupport/2019-05-21/livesupport-release-quicklisp-71e6e412-git.tgz";
-      sha256 = "1rvnl0mncylbx63608pz5llss7y92j7z3ydambk9mcnjg2mjaapg";
-      system = "livesupport";
-      asd = "livesupport";
-    });
-    systems = [ "livesupport" ];
-    lispLibs = [  ];
-  };
-  lla = {
-    pname = "lla";
-    version = "20180328-git";
-    asds = [ "lla" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/lla/2018-03-28/lla-20180328-git.tgz";
-      sha256 = "0n9vc7dnyjbbsv1n7rd8sylwda5fsdf8f890g4nachanyx0xps9k";
-      system = "lla";
-      asd = "lla";
-    });
-    systems = [ "lla" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "anaphora" pkgs) (getAttr "cffi" pkgs) (getAttr "cl-num-utils" pkgs) (getAttr "cl-slice" pkgs) (getAttr "let-plus" pkgs) ];
-  };
-  lla-tests = {
-    pname = "lla-tests";
-    version = "20180328-git";
-    asds = [ "lla-tests" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/lla/2018-03-28/lla-20180328-git.tgz";
-      sha256 = "0n9vc7dnyjbbsv1n7rd8sylwda5fsdf8f890g4nachanyx0xps9k";
-      system = "lla-tests";
-      asd = "lla";
-    });
-    systems = [ "lla-tests" ];
-    lispLibs = [ (getAttr "clunit" pkgs) (getAttr "lla" pkgs) ];
-  };
-  lmdb = {
-    pname = "lmdb";
-    version = "20220220-git";
-    asds = [ "lmdb" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/lmdb/2022-02-20/lmdb-20220220-git.tgz";
-      sha256 = "0akvimmvd4kcx6gh1j1dzvcclhc0jc4hc9vkh3ldgzb8wyf4vl8q";
-      system = "lmdb";
-      asd = "lmdb";
-    });
-    systems = [ "lmdb" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "bordeaux-threads" pkgs) (getAttr "cl-reexport" pkgs) (getAttr "mgl-pax" pkgs) (getAttr "osicat" pkgs) (getAttr "trivial-features" pkgs) (getAttr "trivial-garbage" pkgs) (getAttr "trivial-utf-8" pkgs) ];
-  };
-  lmdb_slash_test = {
-    pname = "lmdb_test";
-    version = "20220220-git";
-    asds = [ "lmdb" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/lmdb/2022-02-20/lmdb-20220220-git.tgz";
-      sha256 = "0akvimmvd4kcx6gh1j1dzvcclhc0jc4hc9vkh3ldgzb8wyf4vl8q";
-      system = "lmdb";
-      asd = "lmdb";
-    });
-    systems = [ "lmdb/test" ];
-    lispLibs = [ (getAttr "lmdb" pkgs) (getAttr "try" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  lml = {
-    pname = "lml";
-    version = "20150923-git";
-    asds = [ "lml" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/lml/2015-09-23/lml-20150923-git.tgz";
-      sha256 = "1s8v9p08vwl08y6ssxn4l088zz57d6fr13lzdz93i9jb8w8884wk";
-      system = "lml";
-      asd = "lml";
-    });
-    systems = [ "lml" ];
-    lispLibs = [  ];
-  };
-  lml-tests = {
-    pname = "lml-tests";
-    version = "20150923-git";
-    asds = [ "lml-tests" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/lml/2015-09-23/lml-20150923-git.tgz";
-      sha256 = "1s8v9p08vwl08y6ssxn4l088zz57d6fr13lzdz93i9jb8w8884wk";
-      system = "lml-tests";
-      asd = "lml-tests";
-    });
-    systems = [ "lml-tests" ];
-    lispLibs = [ (getAttr "lml" pkgs) (getAttr "rt" pkgs) ];
-  };
-  lml2 = {
-    pname = "lml2";
-    version = "20150923-git";
-    asds = [ "lml2" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/lml2/2015-09-23/lml2-20150923-git.tgz";
-      sha256 = "0v4d30x5zq1asp4r91nrzljpk2pm1plr0jns7a5wrf1n9fay57a6";
-      system = "lml2";
-      asd = "lml2";
-    });
-    systems = [ "lml2" ];
-    lispLibs = [ (getAttr "kmrcl" pkgs) ];
-  };
-  lml2-tests = {
-    pname = "lml2-tests";
-    version = "20150923-git";
-    asds = [ "lml2-tests" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/lml2/2015-09-23/lml2-20150923-git.tgz";
-      sha256 = "0v4d30x5zq1asp4r91nrzljpk2pm1plr0jns7a5wrf1n9fay57a6";
-      system = "lml2-tests";
-      asd = "lml2-tests";
-    });
-    systems = [ "lml2-tests" ];
-    lispLibs = [ (getAttr "lml2" pkgs) (getAttr "rt" pkgs) ];
-  };
-  local-package-aliases = {
-    pname = "local-package-aliases";
-    version = "20201220-git";
-    asds = [ "local-package-aliases" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/local-package-aliases/2020-12-20/local-package-aliases-20201220-git.tgz";
-      sha256 = "01knnxnximj2qyg8lhv0ijw69hfwqbfbmgvfjwnm7jbdgcp9wxnr";
-      system = "local-package-aliases";
-      asd = "local-package-aliases";
-    });
-    systems = [ "local-package-aliases" ];
-    lispLibs = [  ];
-  };
-  local-time = {
-    pname = "local-time";
-    version = "20220707-git";
-    asds = [ "local-time" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/local-time/2022-07-07/local-time-20220707-git.tgz";
-      sha256 = "0191fxlvzi3asx145bpdgd325s6wx2gqm5ssa4f72l0smr5av671";
-      system = "local-time";
-      asd = "local-time";
-    });
-    systems = [ "local-time" ];
-    lispLibs = [ (getAttr "uiop" pkgs) ];
-  };
-  local-time-duration = {
-    pname = "local-time-duration";
-    version = "20180430-git";
-    asds = [ "local-time-duration" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/local-time-duration/2018-04-30/local-time-duration-20180430-git.tgz";
-      sha256 = "0f13mg18lv31lclz9jvqyj8d85p1jj1366nlld8m3dxnnwsbbkd6";
-      system = "local-time-duration";
-      asd = "local-time-duration";
-    });
-    systems = [ "local-time-duration" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "esrap" pkgs) (getAttr "local-time" pkgs) ];
-  };
-  local-time_slash_test = {
-    pname = "local-time_test";
-    version = "20220707-git";
-    asds = [ "local-time" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/local-time/2022-07-07/local-time-20220707-git.tgz";
-      sha256 = "0191fxlvzi3asx145bpdgd325s6wx2gqm5ssa4f72l0smr5av671";
-      system = "local-time";
-      asd = "local-time";
-    });
-    systems = [ "local-time/test" ];
-    lispLibs = [ (getAttr "hu_dot_dwim_dot_stefil" pkgs) (getAttr "local-time" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  log4cl = {
-    pname = "log4cl";
-    version = "20211209-git";
-    asds = [ "log4cl" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/log4cl/2021-12-09/log4cl-20211209-git.tgz";
-      sha256 = "0mjkw4w3ksxvn87jqdnailqy2h6sziwmp4gf73jym45x9l5zahi5";
-      system = "log4cl";
-      asd = "log4cl";
-    });
-    systems = [ "log4cl" ];
-    lispLibs = [ (getAttr "bordeaux-threads" pkgs) ];
-  };
-  log4cl-examples = {
-    pname = "log4cl-examples";
-    version = "20211209-git";
-    asds = [ "log4cl-examples" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/log4cl/2021-12-09/log4cl-20211209-git.tgz";
-      sha256 = "0mjkw4w3ksxvn87jqdnailqy2h6sziwmp4gf73jym45x9l5zahi5";
-      system = "log4cl-examples";
-      asd = "log4cl-examples";
-    });
-    systems = [ "log4cl-examples" ];
-    lispLibs = [ (getAttr "log4cl" pkgs) (getAttr "swank" pkgs) ];
-  };
-  log4cl-extras = {
-    pname = "log4cl-extras";
-    version = "20221106-git";
-    asds = [ "log4cl-extras" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/log4cl-extras/2022-11-06/log4cl-extras-20221106-git.tgz";
-      sha256 = "1dsvfzavrb2if285shjcb7hjh3sjpb9fmarj6y6sjgip2zxsjg9s";
-      system = "log4cl-extras";
-      asd = "log4cl-extras";
-    });
-    systems = [ "log4cl-extras" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cl-strings" pkgs) (getAttr "dissect" pkgs) (getAttr "_40ants-doc" pkgs) (getAttr "global-vars" pkgs) (getAttr "jonathan" pkgs) (getAttr "local-time" pkgs) (getAttr "log4cl" pkgs) (getAttr "named-readtables" pkgs) (getAttr "pythonic-string-reader" pkgs) (getAttr "with-output-to-stream" pkgs) ];
-  };
-  log4cl-extras-test = {
-    pname = "log4cl-extras-test";
-    version = "20221106-git";
-    asds = [ "log4cl-extras-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/log4cl-extras/2022-11-06/log4cl-extras-20221106-git.tgz";
-      sha256 = "1dsvfzavrb2if285shjcb7hjh3sjpb9fmarj6y6sjgip2zxsjg9s";
-      system = "log4cl-extras-test";
-      asd = "log4cl-extras-test";
-    });
-    systems = [ "log4cl-extras-test" ];
-    lispLibs = [ (getAttr "hamcrest" pkgs) (getAttr "jonathan" pkgs) (getAttr "rove" pkgs) (getAttr "secret-values" pkgs) ];
-  };
-  log4cl_dot_log4slime = {
-    pname = "log4cl.log4slime";
-    version = "20211209-git";
-    asds = [ "log4cl.log4slime" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/log4cl/2021-12-09/log4cl-20211209-git.tgz";
-      sha256 = "0mjkw4w3ksxvn87jqdnailqy2h6sziwmp4gf73jym45x9l5zahi5";
-      system = "log4cl.log4slime";
-      asd = "log4cl.log4slime";
-    });
-    systems = [ "log4cl.log4slime" ];
-    lispLibs = [ (getAttr "log4cl" pkgs) (getAttr "swank" pkgs) ];
-  };
-  log4cl_dot_log4sly = {
-    pname = "log4cl.log4sly";
-    version = "20211209-git";
-    asds = [ "log4cl.log4sly" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/log4cl/2021-12-09/log4cl-20211209-git.tgz";
-      sha256 = "0mjkw4w3ksxvn87jqdnailqy2h6sziwmp4gf73jym45x9l5zahi5";
-      system = "log4cl.log4sly";
-      asd = "log4cl.log4sly";
-    });
-    systems = [ "log4cl.log4sly" ];
-    lispLibs = [ (getAttr "log4cl" pkgs) (getAttr "slynk" pkgs) ];
-  };
-  log4cl_slash_syslog = {
-    pname = "log4cl_syslog";
-    version = "20211209-git";
-    asds = [ "log4cl" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/log4cl/2021-12-09/log4cl-20211209-git.tgz";
-      sha256 = "0mjkw4w3ksxvn87jqdnailqy2h6sziwmp4gf73jym45x9l5zahi5";
-      system = "log4cl";
-      asd = "log4cl";
-    });
-    systems = [ "log4cl/syslog" ];
-    lispLibs = [ (getAttr "log4cl" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  log4cl_slash_test = {
-    pname = "log4cl_test";
-    version = "20211209-git";
-    asds = [ "log4cl" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/log4cl/2021-12-09/log4cl-20211209-git.tgz";
-      sha256 = "0mjkw4w3ksxvn87jqdnailqy2h6sziwmp4gf73jym45x9l5zahi5";
-      system = "log4cl";
-      asd = "log4cl";
-    });
-    systems = [ "log4cl/test" ];
-    lispLibs = [ (getAttr "log4cl" pkgs) (getAttr "stefil" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  log5 = {
-    pname = "log5";
-    version = "20110619-git";
-    asds = [ "log5" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/log5/2011-06-19/log5-20110619-git.tgz";
-      sha256 = "0f7qhhphijwk6a4hq18gpgifld7hwwpma6md845hgjmpvyqvrw2g";
-      system = "log5";
-      asd = "log5";
-    });
-    systems = [ "log5" ];
-    lispLibs = [  ];
-  };
-  lorem-ipsum = {
-    pname = "lorem-ipsum";
-    version = "20181018-git";
-    asds = [ "lorem-ipsum" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/lorem-ipsum/2018-10-18/lorem-ipsum-20181018-git.tgz";
-      sha256 = "1530qq0bk3xr25m77q96pbi1idnxdkax8cwmvq4ch03rfjy34j7n";
-      system = "lorem-ipsum";
-      asd = "lorem-ipsum";
-    });
-    systems = [ "lorem-ipsum" ];
-    lispLibs = [  ];
-  };
-  lowlight = {
-    pname = "lowlight";
-    version = "20131211-git";
-    asds = [ "lowlight" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/lowlight/2013-12-11/lowlight-20131211-git.tgz";
-      sha256 = "1i27hdac7aqb27rn5cslpf5lwvkrfz52b6rf7zqq0fi42zmvgb4p";
-      system = "lowlight";
-      asd = "lowlight";
-    });
-    systems = [ "lowlight" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cl-ppcre" pkgs) (getAttr "cl-who" pkgs) (getAttr "yacc" pkgs) (getAttr "graylex" pkgs) (getAttr "spinneret" pkgs) ];
-  };
-  lowlight_dot_doc = {
-    pname = "lowlight.doc";
-    version = "20131211-git";
-    asds = [ "lowlight.doc" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/lowlight/2013-12-11/lowlight-20131211-git.tgz";
-      sha256 = "1i27hdac7aqb27rn5cslpf5lwvkrfz52b6rf7zqq0fi42zmvgb4p";
-      system = "lowlight.doc";
-      asd = "lowlight.doc";
-    });
-    systems = [ "lowlight.doc" ];
-    lispLibs = [ (getAttr "cl-gendoc" pkgs) (getAttr "lowlight" pkgs) (getAttr "lowlight_dot_tests" pkgs) ];
-  };
-  lowlight_dot_old = {
-    pname = "lowlight.old";
-    version = "20131211-git";
-    asds = [ "lowlight.old" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/lowlight/2013-12-11/lowlight-20131211-git.tgz";
-      sha256 = "1i27hdac7aqb27rn5cslpf5lwvkrfz52b6rf7zqq0fi42zmvgb4p";
-      system = "lowlight.old";
-      asd = "lowlight.old";
-    });
-    systems = [ "lowlight.old" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cl-ppcre" pkgs) (getAttr "cl-who" pkgs) (getAttr "spinneret" pkgs) ];
-  };
-  lowlight_dot_tests = {
-    pname = "lowlight.tests";
-    version = "20131211-git";
-    asds = [ "lowlight.tests" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/lowlight/2013-12-11/lowlight-20131211-git.tgz";
-      sha256 = "1i27hdac7aqb27rn5cslpf5lwvkrfz52b6rf7zqq0fi42zmvgb4p";
-      system = "lowlight.tests";
-      asd = "lowlight.tests";
-    });
-    systems = [ "lowlight.tests" ];
-    lispLibs = [ (getAttr "fiveam" pkgs) (getAttr "lowlight" pkgs) ];
-  };
-  lparallel = {
-    pname = "lparallel";
-    version = "20160825-git";
-    asds = [ "lparallel" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/lparallel/2016-08-25/lparallel-20160825-git.tgz";
-      sha256 = "0g0aylrbbrqsz0ahmwhvnk4cmc2931fllbpcfgzsprwnqqd7vwq9";
-      system = "lparallel";
-      asd = "lparallel";
-    });
-    systems = [ "lparallel" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "bordeaux-threads" pkgs) ];
-  };
-  lparallel-bench = {
-    pname = "lparallel-bench";
-    version = "20160825-git";
-    asds = [ "lparallel-bench" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/lparallel/2016-08-25/lparallel-20160825-git.tgz";
-      sha256 = "0g0aylrbbrqsz0ahmwhvnk4cmc2931fllbpcfgzsprwnqqd7vwq9";
-      system = "lparallel-bench";
-      asd = "lparallel-bench";
-    });
-    systems = [ "lparallel-bench" ];
-    lispLibs = [ (getAttr "lparallel" pkgs) (getAttr "trivial-garbage" pkgs) ];
-  };
-  lparallel-test = {
-    pname = "lparallel-test";
-    version = "20160825-git";
-    asds = [ "lparallel-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/lparallel/2016-08-25/lparallel-20160825-git.tgz";
-      sha256 = "0g0aylrbbrqsz0ahmwhvnk4cmc2931fllbpcfgzsprwnqqd7vwq9";
-      system = "lparallel-test";
-      asd = "lparallel-test";
-    });
-    systems = [ "lparallel-test" ];
-    lispLibs = [ (getAttr "lparallel" pkgs) ];
-  };
-  lquery = {
-    pname = "lquery";
-    version = "20201220-git";
-    asds = [ "lquery" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/lquery/2020-12-20/lquery-20201220-git.tgz";
-      sha256 = "1bnp643bb203iqiarbm6i21vh9g301zh3gspv01m2jhdqi5lvmjz";
-      system = "lquery";
-      asd = "lquery";
-    });
-    systems = [ "lquery" ];
-    lispLibs = [ (getAttr "array-utils" pkgs) (getAttr "clss" pkgs) (getAttr "form-fiddle" pkgs) (getAttr "plump" pkgs) ];
-  };
-  lquery-test = {
-    pname = "lquery-test";
-    version = "20201220-git";
-    asds = [ "lquery-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/lquery/2020-12-20/lquery-20201220-git.tgz";
-      sha256 = "1bnp643bb203iqiarbm6i21vh9g301zh3gspv01m2jhdqi5lvmjz";
-      system = "lquery-test";
-      asd = "lquery-test";
-    });
-    systems = [ "lquery-test" ];
-    lispLibs = [ (getAttr "fiveam" pkgs) (getAttr "lquery" pkgs) ];
-  };
-  lracer = {
-    pname = "lracer";
-    version = "20190710-git";
-    asds = [ "lracer" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/racer/2019-07-10/racer-20190710-git.tgz";
-      sha256 = "120x046c6vcrj70vb6ryf04mwbr8c6a15llb68x7h1siij8vwgvk";
-      system = "lracer";
-      asd = "lracer";
-    });
-    systems = [ "lracer" ];
-    lispLibs = [  ];
-  };
-  lredis = {
-    pname = "lredis";
-    version = "20141106-git";
-    asds = [ "lredis" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/lredis/2014-11-06/lredis-20141106-git.tgz";
-      sha256 = "08srvlys0fyslfpmhc740cana7fkxm2kc7mxds4083wgxw3prhf2";
-      system = "lredis";
-      asd = "lredis";
-    });
-    systems = [ "lredis" ];
-    lispLibs = [ (getAttr "babel" pkgs) (getAttr "babel-streams" pkgs) (getAttr "usocket" pkgs) ];
-  };
-  lsx = {
-    pname = "lsx";
-    version = "20220220-git";
-    asds = [ "lsx" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/lsx/2022-02-20/lsx-20220220-git.tgz";
-      sha256 = "1pdq6csr8pkzcq2zkhhm6wkp9zxx2aypjd16rcw4q43mff09y041";
-      system = "lsx";
-      asd = "lsx";
-    });
-    systems = [ "lsx" ];
-    lispLibs = [ (getAttr "closer-mop" pkgs) (getAttr "named-readtables" pkgs) ];
-  };
-  lsx_slash_tests = {
-    pname = "lsx_tests";
-    version = "20220220-git";
-    asds = [ "lsx" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/lsx/2022-02-20/lsx-20220220-git.tgz";
-      sha256 = "1pdq6csr8pkzcq2zkhhm6wkp9zxx2aypjd16rcw4q43mff09y041";
-      system = "lsx";
-      asd = "lsx";
-    });
-    systems = [ "lsx/tests" ];
-    lispLibs = [ (getAttr "rove" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  ltk = {
-    pname = "ltk";
-    version = "20221106-git";
-    asds = [ "ltk" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/ltk/2022-11-06/ltk-20221106-git.tgz";
-      sha256 = "0vqmdq3k235hd8d9cg0ipv0kw28aiydvr9j1igfnrs1ns9sm79va";
-      system = "ltk";
-      asd = "ltk";
-    });
-    systems = [ "ltk" ];
-    lispLibs = [  ];
-  };
-  ltk-mw = {
-    pname = "ltk-mw";
-    version = "20221106-git";
-    asds = [ "ltk-mw" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/ltk/2022-11-06/ltk-20221106-git.tgz";
-      sha256 = "0vqmdq3k235hd8d9cg0ipv0kw28aiydvr9j1igfnrs1ns9sm79va";
-      system = "ltk-mw";
-      asd = "ltk-mw";
-    });
-    systems = [ "ltk-mw" ];
-    lispLibs = [ (getAttr "ltk" pkgs) ];
-  };
-  ltk-remote = {
-    pname = "ltk-remote";
-    version = "20221106-git";
-    asds = [ "ltk-remote" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/ltk/2022-11-06/ltk-20221106-git.tgz";
-      sha256 = "0vqmdq3k235hd8d9cg0ipv0kw28aiydvr9j1igfnrs1ns9sm79va";
-      system = "ltk-remote";
-      asd = "ltk-remote";
-    });
-    systems = [ "ltk-remote" ];
-    lispLibs = [ (getAttr "ltk" pkgs) ];
-  };
-  lucene-in-action-tests = {
-    pname = "lucene-in-action-tests";
-    version = "20180228-git";
-    asds = [ "lucene-in-action-tests" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/montezuma/2018-02-28/montezuma-20180228-git.tgz";
-      sha256 = "0svmvsbsirydk3c1spzfvj8qmkzcs9i69anpfvk1843i62wb7x2c";
-      system = "lucene-in-action-tests";
-      asd = "lucene-in-action-tests";
-    });
-    systems = [ "lucene-in-action-tests" ];
-    lispLibs = [ (getAttr "lift" pkgs) (getAttr "montezuma" pkgs) ];
-  };
-  luckless = {
-    pname = "luckless";
-    version = "20221106-git";
-    asds = [ "luckless" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/luckless/2022-11-06/luckless-20221106-git.tgz";
-      sha256 = "0mychj1rfx4hzpgbp9x09qn2y4jhjgfdi5d973mcvaqmcmby6b9p";
-      system = "luckless";
-      asd = "luckless";
-    });
-    systems = [ "luckless" ];
-    lispLibs = [ (getAttr "atomics" pkgs) (getAttr "documentation-utils" pkgs) ];
-  };
-  luckless-test = {
-    pname = "luckless-test";
-    version = "20221106-git";
-    asds = [ "luckless-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/luckless/2022-11-06/luckless-20221106-git.tgz";
-      sha256 = "0mychj1rfx4hzpgbp9x09qn2y4jhjgfdi5d973mcvaqmcmby6b9p";
-      system = "luckless-test";
-      asd = "luckless-test";
-    });
-    systems = [ "luckless-test" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "bordeaux-threads" pkgs) (getAttr "luckless" pkgs) (getAttr "parachute" pkgs) ];
-  };
-  lunamech-matrix-api = {
-    pname = "lunamech-matrix-api";
-    version = "20221106-git";
-    asds = [ "lunamech-matrix-api" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/lunamech-matrix-api/2022-11-06/lunamech-matrix-api-20221106-git.tgz";
-      sha256 = "0dsfm2z4pnf9xc1c8rqj3h0k7r7y5gv5mqlizczndsm2d0s5sh4d";
-      system = "lunamech-matrix-api";
-      asd = "lunamech-matrix-api";
-    });
-    systems = [ "lunamech-matrix-api" ];
-    lispLibs = [ (getAttr "cl-json" pkgs) (getAttr "str" pkgs) (getAttr "closer-mop" pkgs) (getAttr "dexador" pkgs) (getAttr "do-urlencode" pkgs) (getAttr "drakma" pkgs) (getAttr "jonathan" pkgs) (getAttr "plump" pkgs) (getAttr "quri" pkgs) (getAttr "reader" pkgs) (getAttr "shasht" pkgs) ];
-  };
-  lw-compat = {
-    pname = "lw-compat";
-    version = "20160318-git";
-    asds = [ "lw-compat" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/lw-compat/2016-03-18/lw-compat-20160318-git.tgz";
-      sha256 = "131rq5k2mlv9bfhmafiv6nfsivl4cxx13d9wr06v5jrqnckh4aav";
-      system = "lw-compat";
-      asd = "lw-compat";
-    });
-    systems = [ "lw-compat" ];
-    lispLibs = [  ];
-  };
-  lyrics = {
-    pname = "lyrics";
-    version = "20210807-git";
-    asds = [ "lyrics" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/lyrics/2021-08-07/lyrics-20210807-git.tgz";
-      sha256 = "1xdhl53i9pim2mbviwqahlkgfsja7ihyvvrwz8q22ljv6bnb6011";
-      system = "lyrics";
-      asd = "lyrics";
-    });
-    systems = [ "lyrics" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "bordeaux-threads" pkgs) (getAttr "cl-ppcre" pkgs) (getAttr "sqlite" pkgs) (getAttr "defmemo" pkgs) (getAttr "drakma" pkgs) (getAttr "lquery" pkgs) (getAttr "plump" pkgs) ];
-  };
-  lzlib = {
-    pname = "lzlib";
-    version = "20221106-git";
-    asds = [ "lzlib" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-lzlib/2022-11-06/cl-lzlib-20221106-git.tgz";
-      sha256 = "1dxzlkay7aqcs65h2f7j7rl4sdjija60dshlahzyllfw174p9d3m";
-      system = "lzlib";
-      asd = "lzlib";
-    });
-    systems = [ "lzlib" ];
-    lispLibs = [ (getAttr "cffi" pkgs) (getAttr "cl-octet-streams" pkgs) (getAttr "lparallel" pkgs) (getAttr "trivial-gray-streams" pkgs) ];
-  };
-  lzlib-tests = {
-    pname = "lzlib-tests";
-    version = "20221106-git";
-    asds = [ "lzlib-tests" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-lzlib/2022-11-06/cl-lzlib-20221106-git.tgz";
-      sha256 = "1dxzlkay7aqcs65h2f7j7rl4sdjija60dshlahzyllfw174p9d3m";
-      system = "lzlib-tests";
-      asd = "lzlib-tests";
-    });
-    systems = [ "lzlib-tests" ];
-    lispLibs = [ (getAttr "lzlib" pkgs) (getAttr "cl-octet-streams" pkgs) (getAttr "fiveam" pkgs) (getAttr "uiop" pkgs) ];
-  };
-  macro-html = {
-    pname = "macro-html";
-    version = "20151218-git";
-    asds = [ "macro-html" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/macro-html/2015-12-18/macro-html-20151218-git.tgz";
-      sha256 = "05gzgijz8r3dw3ilz7d5i0g0mbcyv9k8w2dgvw7n478njp1gfj4b";
-      system = "macro-html";
-      asd = "macro-html";
-    });
-    systems = [ "macro-html" ];
-    lispLibs = [ (getAttr "named-readtables" pkgs) ];
-  };
-  macro-level = {
-    pname = "macro-level";
-    version = "1.0.1";
-    asds = [ "macro-level" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/macro-level/2012-10-13/macro-level-1.0.1.tgz";
-      sha256 = "14wncx6rrlkylm4cn7y8h4pmnvrcfj920nlldsspg5kvysb09g4i";
-      system = "macro-level";
-      asd = "macro-level";
-    });
-    systems = [ "macro-level" ];
-    lispLibs = [  ];
-  };
-  macrodynamics = {
-    pname = "macrodynamics";
-    version = "20180228-git";
-    asds = [ "macrodynamics" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/macrodynamics/2018-02-28/macrodynamics-20180228-git.tgz";
-      sha256 = "1ysgin8lzd4fdl5c63v3ga9v6lzk3gyl1h8jhl0ar6wyhd3023l4";
-      system = "macrodynamics";
-      asd = "macrodynamics";
-    });
-    systems = [ "macrodynamics" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) ];
-  };
-  macrodynamics_slash_test = {
-    pname = "macrodynamics_test";
-    version = "20180228-git";
-    asds = [ "macrodynamics" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/macrodynamics/2018-02-28/macrodynamics-20180228-git.tgz";
-      sha256 = "1ysgin8lzd4fdl5c63v3ga9v6lzk3gyl1h8jhl0ar6wyhd3023l4";
-      system = "macrodynamics";
-      asd = "macrodynamics";
-    });
-    systems = [ "macrodynamics/test" ];
-    lispLibs = [ (getAttr "check-it" pkgs) (getAttr "fiasco" pkgs) (getAttr "macrodynamics" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  macroexpand-dammit = {
-    pname = "macroexpand-dammit";
-    version = "20131111-http";
-    asds = [ "macroexpand-dammit" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/macroexpand-dammit/2013-11-11/macroexpand-dammit-20131111-http.tgz";
-      sha256 = "10avpq3qffrc51hrfjwp3vi5vv9b1aip1dnwncnlc3yd498b3pfl";
-      system = "macroexpand-dammit";
-      asd = "macroexpand-dammit";
-    });
-    systems = [ "macroexpand-dammit" ];
-    lispLibs = [  ];
-  };
-  madeira-port = {
-    pname = "madeira-port";
-    version = "20150709-git";
-    asds = [ "madeira-port" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/madeira-port/2015-07-09/madeira-port-20150709-git.tgz";
-      sha256 = "0zl6i11vm1akr0382zh582v3vkxjwmabsnfjcfgrp2wbkq4mvdgq";
-      system = "madeira-port";
-      asd = "madeira-port";
-    });
-    systems = [ "madeira-port" ];
-    lispLibs = [  ];
-  };
-  madeira-port-tests = {
-    pname = "madeira-port-tests";
-    version = "20150709-git";
-    asds = [ "madeira-port-tests" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/madeira-port/2015-07-09/madeira-port-20150709-git.tgz";
-      sha256 = "0zl6i11vm1akr0382zh582v3vkxjwmabsnfjcfgrp2wbkq4mvdgq";
-      system = "madeira-port-tests";
-      asd = "madeira-port";
-    });
-    systems = [ "madeira-port-tests" ];
-    lispLibs = [ (getAttr "eos" pkgs) (getAttr "madeira-port" pkgs) ];
-  };
-  magic-ed = {
-    pname = "magic-ed";
-    version = "20200325-git";
-    asds = [ "magic-ed" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/magic-ed/2020-03-25/magic-ed-20200325-git.tgz";
-      sha256 = "1j6il4lif0dy6hqiz6n91yl8dvii9pk1i9vz0faq5mnr42mr7i5f";
-      system = "magic-ed";
-      asd = "magic-ed";
-    });
-    systems = [ "magic-ed" ];
-    lispLibs = [  ];
-  };
-  magicffi = {
-    pname = "magicffi";
-    version = "20210531-git";
-    asds = [ "magicffi" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/magicffi/2021-05-31/magicffi-20210531-git.tgz";
-      sha256 = "0l2b2irpb19b9pyxbmkxi4i5y6crx8nk7qrbihsdqahlkrwsk1il";
-      system = "magicffi";
-      asd = "magicffi";
-    });
-    systems = [ "magicffi" ];
-    lispLibs = [ (getAttr "cffi" pkgs) (getAttr "cffi-grovel" pkgs) (getAttr "cl-ppcre" pkgs) ];
-  };
-  magicffi_slash_test = {
-    pname = "magicffi_test";
-    version = "20210531-git";
-    asds = [ "magicffi" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/magicffi/2021-05-31/magicffi-20210531-git.tgz";
-      sha256 = "0l2b2irpb19b9pyxbmkxi4i5y6crx8nk7qrbihsdqahlkrwsk1il";
-      system = "magicffi";
-      asd = "magicffi";
-    });
-    systems = [ "magicffi/test" ];
-    lispLibs = [ (getAttr "fiveam" pkgs) (getAttr "magicffi" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  magicl = {
-    pname = "magicl";
-    version = "v0.9.1";
-    asds = [ "magicl" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/magicl/2021-04-11/magicl-v0.9.1.tgz";
-      sha256 = "0x9p55qin399jhr5md88nij8fv78b64xjhww7ys364pkjnx8ak9v";
-      system = "magicl";
-      asd = "magicl";
-    });
-    systems = [ "magicl" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cffi" pkgs) (getAttr "cffi-libffi" pkgs) (getAttr "abstract-classes" pkgs) (getAttr "interface" pkgs) (getAttr "policy-cond" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  magicl-examples = {
-    pname = "magicl-examples";
-    version = "v0.9.1";
-    asds = [ "magicl-examples" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/magicl/2021-04-11/magicl-v0.9.1.tgz";
-      sha256 = "0x9p55qin399jhr5md88nij8fv78b64xjhww7ys364pkjnx8ak9v";
-      system = "magicl-examples";
-      asd = "magicl-examples";
-    });
-    systems = [ "magicl-examples" ];
-    lispLibs = [ (getAttr "magicl" pkgs) ];
-  };
-  magicl-gen = {
-    pname = "magicl-gen";
-    version = "v0.9.1";
-    asds = [ "magicl-gen" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/magicl/2021-04-11/magicl-v0.9.1.tgz";
-      sha256 = "0x9p55qin399jhr5md88nij8fv78b64xjhww7ys364pkjnx8ak9v";
-      system = "magicl-gen";
-      asd = "magicl-gen";
-    });
-    systems = [ "magicl-gen" ];
-    lispLibs = [ (getAttr "cffi" pkgs) (getAttr "cffi-libffi" pkgs) (getAttr "abstract-classes" pkgs) ];
-  };
-  magicl-tests = {
-    pname = "magicl-tests";
-    version = "v0.9.1";
-    asds = [ "magicl-tests" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/magicl/2021-04-11/magicl-v0.9.1.tgz";
-      sha256 = "0x9p55qin399jhr5md88nij8fv78b64xjhww7ys364pkjnx8ak9v";
-      system = "magicl-tests";
-      asd = "magicl-tests";
-    });
-    systems = [ "magicl-tests" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "fiasco" pkgs) (getAttr "magicl" pkgs) (getAttr "magicl-examples" pkgs) (getAttr "uiop" pkgs) ];
-  };
-  magicl-transcendental = {
-    pname = "magicl-transcendental";
-    version = "v0.9.1";
-    asds = [ "magicl-transcendental" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/magicl/2021-04-11/magicl-v0.9.1.tgz";
-      sha256 = "0x9p55qin399jhr5md88nij8fv78b64xjhww7ys364pkjnx8ak9v";
-      system = "magicl-transcendental";
-      asd = "magicl-transcendental";
-    });
-    systems = [ "magicl-transcendental" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cffi" pkgs) (getAttr "cffi-libffi" pkgs) (getAttr "abstract-classes" pkgs) (getAttr "interface" pkgs) (getAttr "policy-cond" pkgs) ];
-  };
-  magicl_slash_core = {
-    pname = "magicl_core";
-    version = "v0.9.1";
-    asds = [ "magicl" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/magicl/2021-04-11/magicl-v0.9.1.tgz";
-      sha256 = "0x9p55qin399jhr5md88nij8fv78b64xjhww7ys364pkjnx8ak9v";
-      system = "magicl";
-      asd = "magicl";
-    });
-    systems = [ "magicl/core" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cffi" pkgs) (getAttr "cffi-libffi" pkgs) (getAttr "abstract-classes" pkgs) (getAttr "interface" pkgs) (getAttr "policy-cond" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  magicl_slash_ext = {
-    pname = "magicl_ext";
-    version = "v0.9.1";
-    asds = [ "magicl" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/magicl/2021-04-11/magicl-v0.9.1.tgz";
-      sha256 = "0x9p55qin399jhr5md88nij8fv78b64xjhww7ys364pkjnx8ak9v";
-      system = "magicl";
-      asd = "magicl";
-    });
-    systems = [ "magicl/ext" ];
-    lispLibs = [ (getAttr "cffi" pkgs) (getAttr "cffi-libffi" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  magicl_slash_ext-blas = {
-    pname = "magicl_ext-blas";
-    version = "v0.9.1";
-    asds = [ "magicl" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/magicl/2021-04-11/magicl-v0.9.1.tgz";
-      sha256 = "0x9p55qin399jhr5md88nij8fv78b64xjhww7ys364pkjnx8ak9v";
-      system = "magicl";
-      asd = "magicl";
-    });
-    systems = [ "magicl/ext-blas" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cffi" pkgs) (getAttr "cffi-libffi" pkgs) (getAttr "abstract-classes" pkgs) (getAttr "interface" pkgs) (getAttr "policy-cond" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  magicl_slash_ext-expokit = {
-    pname = "magicl_ext-expokit";
-    version = "v0.9.1";
-    asds = [ "magicl" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/magicl/2021-04-11/magicl-v0.9.1.tgz";
-      sha256 = "0x9p55qin399jhr5md88nij8fv78b64xjhww7ys364pkjnx8ak9v";
-      system = "magicl";
-      asd = "magicl";
-    });
-    systems = [ "magicl/ext-expokit" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cffi" pkgs) (getAttr "cffi-libffi" pkgs) (getAttr "abstract-classes" pkgs) (getAttr "interface" pkgs) (getAttr "policy-cond" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  magicl_slash_ext-lapack = {
-    pname = "magicl_ext-lapack";
-    version = "v0.9.1";
-    asds = [ "magicl" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/magicl/2021-04-11/magicl-v0.9.1.tgz";
-      sha256 = "0x9p55qin399jhr5md88nij8fv78b64xjhww7ys364pkjnx8ak9v";
-      system = "magicl";
-      asd = "magicl";
-    });
-    systems = [ "magicl/ext-lapack" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cffi" pkgs) (getAttr "cffi-libffi" pkgs) (getAttr "abstract-classes" pkgs) (getAttr "interface" pkgs) (getAttr "policy-cond" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  maiden = {
-    pname = "maiden";
-    version = "20220707-git";
-    asds = [ "maiden" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/maiden/2022-07-07/maiden-20220707-git.tgz";
-      sha256 = "04ds7b1vnrg040q5gvnmsyaf3dm3gs81770flvhdn19kj3197hwj";
-      system = "maiden";
-      asd = "maiden";
-    });
-    systems = [ "maiden" ];
-    lispLibs = [ (getAttr "bordeaux-threads" pkgs) (getAttr "closer-mop" pkgs) (getAttr "deeds" pkgs) (getAttr "documentation-utils" pkgs) (getAttr "form-fiddle" pkgs) (getAttr "lambda-fiddle" pkgs) (getAttr "trivial-garbage" pkgs) (getAttr "trivial-indent" pkgs) (getAttr "uuid" pkgs) (getAttr "verbose" pkgs) ];
-  };
-  maiden-accounts = {
-    pname = "maiden-accounts";
-    version = "20220707-git";
-    asds = [ "maiden-accounts" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/maiden/2022-07-07/maiden-20220707-git.tgz";
-      sha256 = "04ds7b1vnrg040q5gvnmsyaf3dm3gs81770flvhdn19kj3197hwj";
-      system = "maiden-accounts";
-      asd = "maiden-accounts";
-    });
-    systems = [ "maiden-accounts" ];
-    lispLibs = [ (getAttr "maiden-client-entities" pkgs) (getAttr "maiden-commands" pkgs) (getAttr "maiden-storage" pkgs) ];
-  };
-  maiden-activatable = {
-    pname = "maiden-activatable";
-    version = "20220707-git";
-    asds = [ "maiden-activatable" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/maiden/2022-07-07/maiden-20220707-git.tgz";
-      sha256 = "04ds7b1vnrg040q5gvnmsyaf3dm3gs81770flvhdn19kj3197hwj";
-      system = "maiden-activatable";
-      asd = "maiden-activatable";
-    });
-    systems = [ "maiden-activatable" ];
-    lispLibs = [ (getAttr "maiden" pkgs) (getAttr "maiden-commands" pkgs) (getAttr "maiden-storage" pkgs) ];
-  };
-  maiden-api-access = {
-    pname = "maiden-api-access";
-    version = "20220707-git";
-    asds = [ "maiden-api-access" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/maiden/2022-07-07/maiden-20220707-git.tgz";
-      sha256 = "04ds7b1vnrg040q5gvnmsyaf3dm3gs81770flvhdn19kj3197hwj";
-      system = "maiden-api-access";
-      asd = "maiden-api-access";
-    });
-    systems = [ "maiden-api-access" ];
-    lispLibs = [ (getAttr "drakma" pkgs) (getAttr "jsown" pkgs) (getAttr "maiden" pkgs) (getAttr "plump" pkgs) ];
-  };
-  maiden-blocker = {
-    pname = "maiden-blocker";
-    version = "20220707-git";
-    asds = [ "maiden-blocker" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/maiden/2022-07-07/maiden-20220707-git.tgz";
-      sha256 = "04ds7b1vnrg040q5gvnmsyaf3dm3gs81770flvhdn19kj3197hwj";
-      system = "maiden-blocker";
-      asd = "maiden-blocker";
-    });
-    systems = [ "maiden-blocker" ];
-    lispLibs = [ (getAttr "cl-ppcre" pkgs) (getAttr "maiden-client-entities" pkgs) (getAttr "maiden-commands" pkgs) (getAttr "maiden-storage" pkgs) ];
-  };
-  maiden-channel-relay = {
-    pname = "maiden-channel-relay";
-    version = "20220707-git";
-    asds = [ "maiden-channel-relay" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/maiden/2022-07-07/maiden-20220707-git.tgz";
-      sha256 = "04ds7b1vnrg040q5gvnmsyaf3dm3gs81770flvhdn19kj3197hwj";
-      system = "maiden-channel-relay";
-      asd = "maiden-channel-relay";
-    });
-    systems = [ "maiden-channel-relay" ];
-    lispLibs = [ (getAttr "maiden-client-entities" pkgs) (getAttr "maiden-commands" pkgs) (getAttr "maiden-storage" pkgs) ];
-  };
-  maiden-chatlog = {
-    pname = "maiden-chatlog";
-    version = "20220707-git";
-    asds = [ "maiden-chatlog" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/maiden/2022-07-07/maiden-20220707-git.tgz";
-      sha256 = "04ds7b1vnrg040q5gvnmsyaf3dm3gs81770flvhdn19kj3197hwj";
-      system = "maiden-chatlog";
-      asd = "maiden-chatlog";
-    });
-    systems = [ "maiden-chatlog" ];
-    lispLibs = [ (getAttr "babel" pkgs) (getAttr "bordeaux-threads" pkgs) (getAttr "maiden-client-entities" pkgs) (getAttr "maiden-commands" pkgs) (getAttr "maiden-storage" pkgs) (getAttr "postmodern" pkgs) ];
-  };
-  maiden-client-entities = {
-    pname = "maiden-client-entities";
-    version = "20220707-git";
-    asds = [ "maiden-client-entities" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/maiden/2022-07-07/maiden-20220707-git.tgz";
-      sha256 = "04ds7b1vnrg040q5gvnmsyaf3dm3gs81770flvhdn19kj3197hwj";
-      system = "maiden-client-entities";
-      asd = "maiden-client-entities";
-    });
-    systems = [ "maiden-client-entities" ];
-    lispLibs = [ (getAttr "documentation-utils" pkgs) (getAttr "maiden" pkgs) ];
-  };
-  maiden-commands = {
-    pname = "maiden-commands";
-    version = "20220707-git";
-    asds = [ "maiden-commands" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/maiden/2022-07-07/maiden-20220707-git.tgz";
-      sha256 = "04ds7b1vnrg040q5gvnmsyaf3dm3gs81770flvhdn19kj3197hwj";
-      system = "maiden-commands";
-      asd = "maiden-commands";
-    });
-    systems = [ "maiden-commands" ];
-    lispLibs = [ (getAttr "lambda-fiddle" pkgs) (getAttr "maiden" pkgs) (getAttr "maiden-client-entities" pkgs) ];
-  };
-  maiden-core-manager = {
-    pname = "maiden-core-manager";
-    version = "20220707-git";
-    asds = [ "maiden-core-manager" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/maiden/2022-07-07/maiden-20220707-git.tgz";
-      sha256 = "04ds7b1vnrg040q5gvnmsyaf3dm3gs81770flvhdn19kj3197hwj";
-      system = "maiden-core-manager";
-      asd = "maiden-core-manager";
-    });
-    systems = [ "maiden-core-manager" ];
-    lispLibs = [ (getAttr "maiden-client-entities" pkgs) (getAttr "maiden-commands" pkgs) (getAttr "maiden-storage" pkgs) ];
-  };
-  maiden-counter = {
-    pname = "maiden-counter";
-    version = "20220707-git";
-    asds = [ "maiden-counter" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/maiden/2022-07-07/maiden-20220707-git.tgz";
-      sha256 = "04ds7b1vnrg040q5gvnmsyaf3dm3gs81770flvhdn19kj3197hwj";
-      system = "maiden-counter";
-      asd = "maiden-counter";
-    });
-    systems = [ "maiden-counter" ];
-    lispLibs = [ (getAttr "cl-ppcre" pkgs) (getAttr "maiden-activatable" pkgs) (getAttr "maiden-client-entities" pkgs) (getAttr "maiden-commands" pkgs) (getAttr "maiden-storage" pkgs) ];
-  };
-  maiden-crimes = {
-    pname = "maiden-crimes";
-    version = "20220707-git";
-    asds = [ "maiden-crimes" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/maiden/2022-07-07/maiden-20220707-git.tgz";
-      sha256 = "04ds7b1vnrg040q5gvnmsyaf3dm3gs81770flvhdn19kj3197hwj";
-      system = "maiden-crimes";
-      asd = "maiden-crimes";
-    });
-    systems = [ "maiden-crimes" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cl-ppcre" pkgs) (getAttr "maiden-api-access" pkgs) (getAttr "maiden-client-entities" pkgs) (getAttr "maiden-commands" pkgs) (getAttr "maiden-storage" pkgs) ];
-  };
-  maiden-dictionary = {
-    pname = "maiden-dictionary";
-    version = "20220707-git";
-    asds = [ "maiden-dictionary" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/maiden/2022-07-07/maiden-20220707-git.tgz";
-      sha256 = "04ds7b1vnrg040q5gvnmsyaf3dm3gs81770flvhdn19kj3197hwj";
-      system = "maiden-dictionary";
-      asd = "maiden-dictionary";
-    });
-    systems = [ "maiden-dictionary" ];
-    lispLibs = [ (getAttr "maiden-client-entities" pkgs) (getAttr "maiden-commands" pkgs) (getAttr "maiden-storage" pkgs) (getAttr "oxenfurt" pkgs) ];
-  };
-  maiden-emoticon = {
-    pname = "maiden-emoticon";
-    version = "20220707-git";
-    asds = [ "maiden-emoticon" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/maiden/2022-07-07/maiden-20220707-git.tgz";
-      sha256 = "04ds7b1vnrg040q5gvnmsyaf3dm3gs81770flvhdn19kj3197hwj";
-      system = "maiden-emoticon";
-      asd = "maiden-emoticon";
-    });
-    systems = [ "maiden-emoticon" ];
-    lispLibs = [ (getAttr "cl-ppcre" pkgs) (getAttr "maiden-activatable" pkgs) (getAttr "maiden-client-entities" pkgs) (getAttr "maiden-commands" pkgs) (getAttr "maiden-storage" pkgs) ];
-  };
-  maiden-help = {
-    pname = "maiden-help";
-    version = "20220707-git";
-    asds = [ "maiden-help" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/maiden/2022-07-07/maiden-20220707-git.tgz";
-      sha256 = "04ds7b1vnrg040q5gvnmsyaf3dm3gs81770flvhdn19kj3197hwj";
-      system = "maiden-help";
-      asd = "maiden-help";
-    });
-    systems = [ "maiden-help" ];
-    lispLibs = [ (getAttr "documentation-utils" pkgs) (getAttr "maiden-client-entities" pkgs) (getAttr "maiden-commands" pkgs) ];
-  };
-  maiden-irc = {
-    pname = "maiden-irc";
-    version = "20220707-git";
-    asds = [ "maiden-irc" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/maiden/2022-07-07/maiden-20220707-git.tgz";
-      sha256 = "04ds7b1vnrg040q5gvnmsyaf3dm3gs81770flvhdn19kj3197hwj";
-      system = "maiden-irc";
-      asd = "maiden-irc";
-    });
-    systems = [ "maiden-irc" ];
-    lispLibs = [ (getAttr "babel" pkgs) (getAttr "cl-base64" pkgs) (getAttr "cl-ppcre" pkgs) (getAttr "form-fiddle" pkgs) (getAttr "lambda-fiddle" pkgs) (getAttr "maiden-client-entities" pkgs) (getAttr "maiden-networking" pkgs) ];
-  };
-  maiden-lastfm = {
-    pname = "maiden-lastfm";
-    version = "20220707-git";
-    asds = [ "maiden-lastfm" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/maiden/2022-07-07/maiden-20220707-git.tgz";
-      sha256 = "04ds7b1vnrg040q5gvnmsyaf3dm3gs81770flvhdn19kj3197hwj";
-      system = "maiden-lastfm";
-      asd = "maiden-lastfm";
-    });
-    systems = [ "maiden-lastfm" ];
-    lispLibs = [ (getAttr "bordeaux-threads" pkgs) (getAttr "maiden-api-access" pkgs) (getAttr "maiden-client-entities" pkgs) (getAttr "maiden-commands" pkgs) (getAttr "maiden-storage" pkgs) ];
-  };
-  maiden-lichat = {
-    pname = "maiden-lichat";
-    version = "20220707-git";
-    asds = [ "maiden-lichat" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/maiden/2022-07-07/maiden-20220707-git.tgz";
-      sha256 = "04ds7b1vnrg040q5gvnmsyaf3dm3gs81770flvhdn19kj3197hwj";
-      system = "maiden-lichat";
-      asd = "maiden-lichat";
-    });
-    systems = [ "maiden-lichat" ];
-    lispLibs = [ (getAttr "lichat-protocol" pkgs) (getAttr "maiden-client-entities" pkgs) (getAttr "maiden-networking" pkgs) ];
-  };
-  maiden-location = {
-    pname = "maiden-location";
-    version = "20220707-git";
-    asds = [ "maiden-location" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/maiden/2022-07-07/maiden-20220707-git.tgz";
-      sha256 = "04ds7b1vnrg040q5gvnmsyaf3dm3gs81770flvhdn19kj3197hwj";
-      system = "maiden-location";
-      asd = "maiden-location";
-    });
-    systems = [ "maiden-location" ];
-    lispLibs = [ (getAttr "maiden-api-access" pkgs) (getAttr "maiden-client-entities" pkgs) (getAttr "maiden-commands" pkgs) (getAttr "maiden-storage" pkgs) ];
-  };
-  maiden-lookup = {
-    pname = "maiden-lookup";
-    version = "20220707-git";
-    asds = [ "maiden-lookup" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/maiden/2022-07-07/maiden-20220707-git.tgz";
-      sha256 = "04ds7b1vnrg040q5gvnmsyaf3dm3gs81770flvhdn19kj3197hwj";
-      system = "maiden-lookup";
-      asd = "maiden-lookup";
-    });
-    systems = [ "maiden-lookup" ];
-    lispLibs = [ (getAttr "cl-ppcre" pkgs) (getAttr "drakma" pkgs) (getAttr "lquery" pkgs) (getAttr "maiden-api-access" pkgs) (getAttr "maiden-client-entities" pkgs) (getAttr "maiden-commands" pkgs) ];
-  };
-  maiden-markov = {
-    pname = "maiden-markov";
-    version = "20220707-git";
-    asds = [ "maiden-markov" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/maiden/2022-07-07/maiden-20220707-git.tgz";
-      sha256 = "04ds7b1vnrg040q5gvnmsyaf3dm3gs81770flvhdn19kj3197hwj";
-      system = "maiden-markov";
-      asd = "maiden-markov";
-    });
-    systems = [ "maiden-markov" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "babel" pkgs) (getAttr "cl-ppcre" pkgs) (getAttr "fast-io" pkgs) (getAttr "maiden-activatable" pkgs) (getAttr "maiden-client-entities" pkgs) (getAttr "maiden-commands" pkgs) (getAttr "maiden-storage" pkgs) (getAttr "parse-number" pkgs) ];
-  };
-  maiden-medals = {
-    pname = "maiden-medals";
-    version = "20220707-git";
-    asds = [ "maiden-medals" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/maiden/2022-07-07/maiden-20220707-git.tgz";
-      sha256 = "04ds7b1vnrg040q5gvnmsyaf3dm3gs81770flvhdn19kj3197hwj";
-      system = "maiden-medals";
-      asd = "maiden-medals";
-    });
-    systems = [ "maiden-medals" ];
-    lispLibs = [ (getAttr "cl-ppcre" pkgs) (getAttr "maiden-accounts" pkgs) (getAttr "maiden-client-entities" pkgs) (getAttr "maiden-commands" pkgs) (getAttr "maiden-storage" pkgs) ];
-  };
-  maiden-networking = {
-    pname = "maiden-networking";
-    version = "20220707-git";
-    asds = [ "maiden-networking" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/maiden/2022-07-07/maiden-20220707-git.tgz";
-      sha256 = "04ds7b1vnrg040q5gvnmsyaf3dm3gs81770flvhdn19kj3197hwj";
-      system = "maiden-networking";
-      asd = "maiden-networking";
-    });
-    systems = [ "maiden-networking" ];
-    lispLibs = [ (getAttr "cl_plus_ssl" pkgs) (getAttr "maiden" pkgs) (getAttr "usocket" pkgs) ];
-  };
-  maiden-notify = {
-    pname = "maiden-notify";
-    version = "20220707-git";
-    asds = [ "maiden-notify" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/maiden/2022-07-07/maiden-20220707-git.tgz";
-      sha256 = "04ds7b1vnrg040q5gvnmsyaf3dm3gs81770flvhdn19kj3197hwj";
-      system = "maiden-notify";
-      asd = "maiden-notify";
-    });
-    systems = [ "maiden-notify" ];
-    lispLibs = [ (getAttr "maiden-accounts" pkgs) (getAttr "maiden-client-entities" pkgs) (getAttr "maiden-commands" pkgs) (getAttr "maiden-storage" pkgs) ];
-  };
-  maiden-permissions = {
-    pname = "maiden-permissions";
-    version = "20220707-git";
-    asds = [ "maiden-permissions" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/maiden/2022-07-07/maiden-20220707-git.tgz";
-      sha256 = "04ds7b1vnrg040q5gvnmsyaf3dm3gs81770flvhdn19kj3197hwj";
-      system = "maiden-permissions";
-      asd = "maiden-permissions";
-    });
-    systems = [ "maiden-permissions" ];
-    lispLibs = [ (getAttr "cl-ppcre" pkgs) (getAttr "documentation-utils" pkgs) (getAttr "maiden-client-entities" pkgs) (getAttr "maiden-commands" pkgs) (getAttr "maiden-storage" pkgs) ];
-  };
-  maiden-relay = {
-    pname = "maiden-relay";
-    version = "20220707-git";
-    asds = [ "maiden-relay" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/maiden/2022-07-07/maiden-20220707-git.tgz";
-      sha256 = "04ds7b1vnrg040q5gvnmsyaf3dm3gs81770flvhdn19kj3197hwj";
-      system = "maiden-relay";
-      asd = "maiden-relay";
-    });
-    systems = [ "maiden-relay" ];
-    lispLibs = [ (getAttr "maiden-networking" pkgs) (getAttr "maiden-serialize" pkgs) ];
-  };
-  maiden-serialize = {
-    pname = "maiden-serialize";
-    version = "20220707-git";
-    asds = [ "maiden-serialize" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/maiden/2022-07-07/maiden-20220707-git.tgz";
-      sha256 = "04ds7b1vnrg040q5gvnmsyaf3dm3gs81770flvhdn19kj3197hwj";
-      system = "maiden-serialize";
-      asd = "maiden-serialize";
-    });
-    systems = [ "maiden-serialize" ];
-    lispLibs = [ (getAttr "cl-store" pkgs) (getAttr "gzip-stream" pkgs) (getAttr "maiden" pkgs) ];
-  };
-  maiden-silly = {
-    pname = "maiden-silly";
-    version = "20220707-git";
-    asds = [ "maiden-silly" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/maiden/2022-07-07/maiden-20220707-git.tgz";
-      sha256 = "04ds7b1vnrg040q5gvnmsyaf3dm3gs81770flvhdn19kj3197hwj";
-      system = "maiden-silly";
-      asd = "maiden-silly";
-    });
-    systems = [ "maiden-silly" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cl-ppcre" pkgs) (getAttr "lquery" pkgs) (getAttr "maiden-activatable" pkgs) (getAttr "maiden-api-access" pkgs) (getAttr "maiden-client-entities" pkgs) (getAttr "maiden-commands" pkgs) ];
-  };
-  maiden-storage = {
-    pname = "maiden-storage";
-    version = "20220707-git";
-    asds = [ "maiden-storage" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/maiden/2022-07-07/maiden-20220707-git.tgz";
-      sha256 = "04ds7b1vnrg040q5gvnmsyaf3dm3gs81770flvhdn19kj3197hwj";
-      system = "maiden-storage";
-      asd = "maiden-storage";
-    });
-    systems = [ "maiden-storage" ];
-    lispLibs = [ (getAttr "maiden" pkgs) (getAttr "pathname-utils" pkgs) (getAttr "ubiquitous-concurrent" pkgs) ];
-  };
-  maiden-talk = {
-    pname = "maiden-talk";
-    version = "20220707-git";
-    asds = [ "maiden-talk" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/maiden/2022-07-07/maiden-20220707-git.tgz";
-      sha256 = "04ds7b1vnrg040q5gvnmsyaf3dm3gs81770flvhdn19kj3197hwj";
-      system = "maiden-talk";
-      asd = "maiden-talk";
-    });
-    systems = [ "maiden-talk" ];
-    lispLibs = [ (getAttr "array-utils" pkgs) (getAttr "cl-mixed-mpg123" pkgs) (getAttr "drakma" pkgs) (getAttr "harmony" pkgs) (getAttr "maiden-commands" pkgs) (getAttr "trivial-features" pkgs) ];
-  };
-  maiden-throttle = {
-    pname = "maiden-throttle";
-    version = "20220707-git";
-    asds = [ "maiden-throttle" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/maiden/2022-07-07/maiden-20220707-git.tgz";
-      sha256 = "04ds7b1vnrg040q5gvnmsyaf3dm3gs81770flvhdn19kj3197hwj";
-      system = "maiden-throttle";
-      asd = "maiden-throttle";
-    });
-    systems = [ "maiden-throttle" ];
-    lispLibs = [ (getAttr "maiden-client-entities" pkgs) (getAttr "maiden-commands" pkgs) (getAttr "maiden-storage" pkgs) ];
-  };
-  maiden-time = {
-    pname = "maiden-time";
-    version = "20220707-git";
-    asds = [ "maiden-time" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/maiden/2022-07-07/maiden-20220707-git.tgz";
-      sha256 = "04ds7b1vnrg040q5gvnmsyaf3dm3gs81770flvhdn19kj3197hwj";
-      system = "maiden-time";
-      asd = "maiden-time";
-    });
-    systems = [ "maiden-time" ];
-    lispLibs = [ (getAttr "maiden-api-access" pkgs) (getAttr "maiden-client-entities" pkgs) (getAttr "maiden-commands" pkgs) (getAttr "maiden-location" pkgs) ];
-  };
-  maiden-trivia = {
-    pname = "maiden-trivia";
-    version = "20220707-git";
-    asds = [ "maiden-trivia" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/maiden/2022-07-07/maiden-20220707-git.tgz";
-      sha256 = "04ds7b1vnrg040q5gvnmsyaf3dm3gs81770flvhdn19kj3197hwj";
-      system = "maiden-trivia";
-      asd = "maiden-trivia";
-    });
-    systems = [ "maiden-trivia" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "maiden-client-entities" pkgs) (getAttr "maiden-commands" pkgs) (getAttr "maiden-storage" pkgs) ];
-  };
-  maiden-twitter = {
-    pname = "maiden-twitter";
-    version = "20220707-git";
-    asds = [ "maiden-twitter" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/maiden/2022-07-07/maiden-20220707-git.tgz";
-      sha256 = "04ds7b1vnrg040q5gvnmsyaf3dm3gs81770flvhdn19kj3197hwj";
-      system = "maiden-twitter";
-      asd = "maiden-twitter";
-    });
-    systems = [ "maiden-twitter" ];
-    lispLibs = [ (getAttr "chirp" pkgs) (getAttr "maiden-client-entities" pkgs) ];
-  };
-  maiden-urlinfo = {
-    pname = "maiden-urlinfo";
-    version = "20220707-git";
-    asds = [ "maiden-urlinfo" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/maiden/2022-07-07/maiden-20220707-git.tgz";
-      sha256 = "04ds7b1vnrg040q5gvnmsyaf3dm3gs81770flvhdn19kj3197hwj";
-      system = "maiden-urlinfo";
-      asd = "maiden-urlinfo";
-    });
-    systems = [ "maiden-urlinfo" ];
-    lispLibs = [ (getAttr "cl-ppcre" pkgs) (getAttr "drakma" pkgs) (getAttr "maiden-activatable" pkgs) (getAttr "maiden-client-entities" pkgs) (getAttr "maiden-commands" pkgs) (getAttr "plump" pkgs) ];
-  };
-  maiden-vote = {
-    pname = "maiden-vote";
-    version = "20220707-git";
-    asds = [ "maiden-vote" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/maiden/2022-07-07/maiden-20220707-git.tgz";
-      sha256 = "04ds7b1vnrg040q5gvnmsyaf3dm3gs81770flvhdn19kj3197hwj";
-      system = "maiden-vote";
-      asd = "maiden-vote";
-    });
-    systems = [ "maiden-vote" ];
-    lispLibs = [ (getAttr "cl-ppcre" pkgs) (getAttr "maiden-client-entities" pkgs) (getAttr "maiden-commands" pkgs) ];
-  };
-  maiden-weather = {
-    pname = "maiden-weather";
-    version = "20220707-git";
-    asds = [ "maiden-weather" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/maiden/2022-07-07/maiden-20220707-git.tgz";
-      sha256 = "04ds7b1vnrg040q5gvnmsyaf3dm3gs81770flvhdn19kj3197hwj";
-      system = "maiden-weather";
-      asd = "maiden-weather";
-    });
-    systems = [ "maiden-weather" ];
-    lispLibs = [ (getAttr "local-time" pkgs) (getAttr "maiden-api-access" pkgs) (getAttr "maiden-client-entities" pkgs) (getAttr "maiden-commands" pkgs) (getAttr "maiden-location" pkgs) (getAttr "maiden-storage" pkgs) ];
-  };
-  maidenhead = {
-    pname = "maidenhead";
-    version = "20220331-git";
-    asds = [ "maidenhead" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/maidenhead/2022-03-31/maidenhead-20220331-git.tgz";
-      sha256 = "0bkw31jibx4sh2086jgsw4rvaz3i1dmycbwp203rjj78x7wz9743";
-      system = "maidenhead";
-      asd = "maidenhead";
-    });
-    systems = [ "maidenhead" ];
-    lispLibs = [  ];
-  };
-  maidenhead_slash_tests = {
-    pname = "maidenhead_tests";
-    version = "20220331-git";
-    asds = [ "maidenhead" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/maidenhead/2022-03-31/maidenhead-20220331-git.tgz";
-      sha256 = "0bkw31jibx4sh2086jgsw4rvaz3i1dmycbwp203rjj78x7wz9743";
-      system = "maidenhead";
-      asd = "maidenhead";
-    });
-    systems = [ "maidenhead/tests" ];
-    lispLibs = [ (getAttr "fiveam" pkgs) (getAttr "maidenhead" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  mailbox = {
-    pname = "mailbox";
-    version = "20131003-git";
-    asds = [ "mailbox" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/mailbox/2013-10-03/mailbox-20131003-git.tgz";
-      sha256 = "1qgkcss8m2q29kr9d040dnjmzl17vb7zzvlz5ry3z3zgbdwgj1sy";
-      system = "mailbox";
-      asd = "mailbox";
-    });
-    systems = [ "mailbox" ];
-    lispLibs = [ (getAttr "bordeaux-threads" pkgs) ];
-  };
-  mailgun = {
-    pname = "mailgun";
-    version = "20220707-git";
-    asds = [ "mailgun" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/mailgun/2022-07-07/mailgun-20220707-git.tgz";
-      sha256 = "1wadkm5r2hmyz40m4kwg5rv4g4dwn3h2d8l2mn9dncg5qy37x2vl";
-      system = "mailgun";
-      asd = "mailgun";
-    });
-    systems = [ "mailgun" ];
-    lispLibs = [ (getAttr "dexador" pkgs) (getAttr "log4cl" pkgs) (getAttr "secret-values" pkgs) (getAttr "spinneret" pkgs) ];
-  };
-  make-hash = {
-    pname = "make-hash";
-    version = "20130615-git";
-    asds = [ "make-hash" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/make-hash/2013-06-15/make-hash-20130615-git.tgz";
-      sha256 = "1qa4mcmb3pv44py0j129dd8hjx09c2akpnds53b69151mgwv5qz8";
-      system = "make-hash";
-      asd = "make-hash";
-    });
-    systems = [ "make-hash" ];
-    lispLibs = [  ];
-  };
-  make-hash-tests = {
-    pname = "make-hash-tests";
-    version = "20130615-git";
-    asds = [ "make-hash-tests" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/make-hash/2013-06-15/make-hash-20130615-git.tgz";
-      sha256 = "1qa4mcmb3pv44py0j129dd8hjx09c2akpnds53b69151mgwv5qz8";
-      system = "make-hash-tests";
-      asd = "make-hash-tests";
-    });
-    systems = [ "make-hash-tests" ];
-    lispLibs = [ (getAttr "fiveam" pkgs) (getAttr "make-hash" pkgs) ];
-  };
-  manifest = {
-    pname = "manifest";
-    version = "20120208-git";
-    asds = [ "manifest" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/manifest/2012-02-08/manifest-20120208-git.tgz";
-      sha256 = "0dswslnskskdbsln6vi7w8cbypw001d81xaxkfn4g7m15m9pzkgf";
-      system = "manifest";
-      asd = "manifest";
-    });
-    systems = [ "manifest" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "closer-mop" pkgs) (getAttr "monkeylib-html" pkgs) (getAttr "puri" pkgs) (getAttr "split-sequence" pkgs) (getAttr "toot" pkgs) ];
-  };
-  map-bind = {
-    pname = "map-bind";
-    version = "20120811-git";
-    asds = [ "map-bind" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/map-bind/2012-08-11/map-bind-20120811-git.tgz";
-      sha256 = "06z02c0ypfrd789glbidnhf95839hardd7nr3i95l1adm8pas30f";
-      system = "map-bind";
-      asd = "map-bind";
-    });
-    systems = [ "map-bind" ];
-    lispLibs = [  ];
-  };
-  map-set = {
-    pname = "map-set";
-    version = "20190307-hg";
-    asds = [ "map-set" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/map-set/2019-03-07/map-set-20190307-hg.tgz";
-      sha256 = "0fikz2s0pw5dfbs91j8y7iy3908gknhxy9047mp23jxv1f54jzdh";
-      system = "map-set";
-      asd = "map-set";
-    });
-    systems = [ "map-set" ];
-    lispLibs = [  ];
-  };
-  marching-cubes = {
-    pname = "marching-cubes";
-    version = "20150709-git";
-    asds = [ "marching-cubes" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/marching-cubes/2015-07-09/marching-cubes-20150709-git.tgz";
-      sha256 = "013wyr4g82b2gk0j5jbkkshg9lal2m34px37blyclf6kr5sk6azh";
-      system = "marching-cubes";
-      asd = "marching-cubes";
-    });
-    systems = [ "marching-cubes" ];
-    lispLibs = [  ];
-  };
-  marching-cubes-example = {
-    pname = "marching-cubes-example";
-    version = "20150709-git";
-    asds = [ "marching-cubes-example" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/marching-cubes/2015-07-09/marching-cubes-20150709-git.tgz";
-      sha256 = "013wyr4g82b2gk0j5jbkkshg9lal2m34px37blyclf6kr5sk6azh";
-      system = "marching-cubes-example";
-      asd = "marching-cubes-example";
-    });
-    systems = [ "marching-cubes-example" ];
-    lispLibs = [ (getAttr "marching-cubes" pkgs) ];
-  };
-  marching-cubes-test = {
-    pname = "marching-cubes-test";
-    version = "20150709-git";
-    asds = [ "marching-cubes-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/marching-cubes/2015-07-09/marching-cubes-20150709-git.tgz";
-      sha256 = "013wyr4g82b2gk0j5jbkkshg9lal2m34px37blyclf6kr5sk6azh";
-      system = "marching-cubes-test";
-      asd = "marching-cubes-test";
-    });
-    systems = [ "marching-cubes-test" ];
-    lispLibs = [ (getAttr "marching-cubes" pkgs) (getAttr "cl-test-more" pkgs) ];
-  };
-  markdown_dot_cl = {
-    pname = "markdown.cl";
-    version = "20210228-git";
-    asds = [ "markdown.cl" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/markdown.cl/2021-02-28/markdown.cl-20210228-git.tgz";
-      sha256 = "00yxg67skx3navq7fdsjy0wds16n9n12bhdzv08f43bgbwali7v8";
-      system = "markdown.cl";
-      asd = "markdown.cl";
-    });
-    systems = [ "markdown.cl" ];
-    lispLibs = [ (getAttr "cl-ppcre" pkgs) (getAttr "split-sequence" pkgs) (getAttr "xmls" pkgs) ];
-  };
-  markdown_dot_cl-test = {
-    pname = "markdown.cl-test";
-    version = "20210228-git";
-    asds = [ "markdown.cl-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/markdown.cl/2021-02-28/markdown.cl-20210228-git.tgz";
-      sha256 = "00yxg67skx3navq7fdsjy0wds16n9n12bhdzv08f43bgbwali7v8";
-      system = "markdown.cl-test";
-      asd = "markdown.cl-test";
-    });
-    systems = [ "markdown.cl-test" ];
-    lispLibs = [ (getAttr "fiveam" pkgs) (getAttr "markdown_dot_cl" pkgs) (getAttr "xmls" pkgs) ];
-  };
-  markup = {
-    pname = "markup";
-    version = "20221106-git";
-    asds = [ "markup" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/markup/2022-11-06/markup-20221106-git.tgz";
-      sha256 = "1ds9nbc6828kiilfjq47nwqms4lmps8hwd5kk8iwydpl5x1j43wx";
-      system = "markup";
-      asd = "markup";
-    });
-    systems = [ "markup" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "str" pkgs) (getAttr "named-readtables" pkgs) (getAttr "trivial-gray-streams" pkgs) ];
-  };
-  markup_dot_test = {
-    pname = "markup.test";
-    version = "20221106-git";
-    asds = [ "markup.test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/markup/2022-11-06/markup-20221106-git.tgz";
-      sha256 = "1ds9nbc6828kiilfjq47nwqms4lmps8hwd5kk8iwydpl5x1j43wx";
-      system = "markup.test";
-      asd = "markup.test";
-    });
-    systems = [ "markup.test" ];
-    lispLibs = [ (getAttr "fiveam" pkgs) (getAttr "markup" pkgs) ];
-  };
-  marshal = {
-    pname = "marshal";
-    version = "20221106-git";
-    asds = [ "marshal" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-marshal/2022-11-06/cl-marshal-20221106-git.tgz";
-      sha256 = "0pclq0q43f3nlb2np957i10ysmky32qlz78an3hf2adg8if776ys";
-      system = "marshal";
-      asd = "marshal";
-    });
-    systems = [ "marshal" ];
-    lispLibs = [  ];
-  };
-  marshal-tests = {
-    pname = "marshal-tests";
-    version = "20221106-git";
-    asds = [ "marshal-tests" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-marshal/2022-11-06/cl-marshal-20221106-git.tgz";
-      sha256 = "0pclq0q43f3nlb2np957i10ysmky32qlz78an3hf2adg8if776ys";
-      system = "marshal-tests";
-      asd = "marshal-tests";
-    });
-    systems = [ "marshal-tests" ];
-    lispLibs = [ (getAttr "marshal" pkgs) (getAttr "xlunit" pkgs) ];
-  };
-  math = {
-    pname = "math";
-    version = "20221106-git";
-    asds = [ "math" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/math/2022-11-06/math-20221106-git.tgz";
-      sha256 = "1xafh94y5q840fzlcvxw9p4ahgm9c4bwsm3fyrmm7n3j05xsgfml";
-      system = "math";
-      asd = "math";
-    });
-    systems = [ "math" ];
-    lispLibs = [ (getAttr "cl-utilities" pkgs) (getAttr "font-discovery" pkgs) (getAttr "gsll" pkgs) (getAttr "vgplot" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  math_slash_appr = {
-    pname = "math_appr";
-    version = "20221106-git";
-    asds = [ "math" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/math/2022-11-06/math-20221106-git.tgz";
-      sha256 = "1xafh94y5q840fzlcvxw9p4ahgm9c4bwsm3fyrmm7n3j05xsgfml";
-      system = "math";
-      asd = "math";
-    });
-    systems = [ "math/appr" ];
-    lispLibs = [ (getAttr "cl-utilities" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  math_slash_coord = {
-    pname = "math_coord";
-    version = "20221106-git";
-    asds = [ "math" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/math/2022-11-06/math-20221106-git.tgz";
-      sha256 = "1xafh94y5q840fzlcvxw9p4ahgm9c4bwsm3fyrmm7n3j05xsgfml";
-      system = "math";
-      asd = "math";
-    });
-    systems = [ "math/coord" ];
-    lispLibs = [  ];
-    meta = {
-      broken = true;
-    };
-  };
-  math_slash_core = {
-    pname = "math_core";
-    version = "20221106-git";
-    asds = [ "math" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/math/2022-11-06/math-20221106-git.tgz";
-      sha256 = "1xafh94y5q840fzlcvxw9p4ahgm9c4bwsm3fyrmm7n3j05xsgfml";
-      system = "math";
-      asd = "math";
-    });
-    systems = [ "math/core" ];
-    lispLibs = [  ];
-    meta = {
-      broken = true;
-    };
-  };
-  math_slash_docs = {
-    pname = "math_docs";
-    version = "20221106-git";
-    asds = [ "math" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/math/2022-11-06/math-20221106-git.tgz";
-      sha256 = "1xafh94y5q840fzlcvxw9p4ahgm9c4bwsm3fyrmm7n3j05xsgfml";
-      system = "math";
-      asd = "math";
-    });
-    systems = [ "math/docs" ];
-    lispLibs = [ (getAttr "codex" pkgs) (getAttr "math" pkgs) (getAttr "mnas-package" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  math_slash_equation = {
-    pname = "math_equation";
-    version = "20221106-git";
-    asds = [ "math" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/math/2022-11-06/math-20221106-git.tgz";
-      sha256 = "1xafh94y5q840fzlcvxw9p4ahgm9c4bwsm3fyrmm7n3j05xsgfml";
-      system = "math";
-      asd = "math";
-    });
-    systems = [ "math/equation" ];
-    lispLibs = [  ];
-    meta = {
-      broken = true;
-    };
-  };
-  math_slash_geom = {
-    pname = "math_geom";
-    version = "20221106-git";
-    asds = [ "math" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/math/2022-11-06/math-20221106-git.tgz";
-      sha256 = "1xafh94y5q840fzlcvxw9p4ahgm9c4bwsm3fyrmm7n3j05xsgfml";
-      system = "math";
-      asd = "math";
-    });
-    systems = [ "math/geom" ];
-    lispLibs = [  ];
-    meta = {
-      broken = true;
-    };
-  };
-  math_slash_gnuplot = {
-    pname = "math_gnuplot";
-    version = "20221106-git";
-    asds = [ "math" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/math/2022-11-06/math-20221106-git.tgz";
-      sha256 = "1xafh94y5q840fzlcvxw9p4ahgm9c4bwsm3fyrmm7n3j05xsgfml";
-      system = "math";
-      asd = "math";
-    });
-    systems = [ "math/gnuplot" ];
-    lispLibs = [ (getAttr "font-discovery" pkgs) (getAttr "vgplot" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  math_slash_half-div = {
-    pname = "math_half-div";
-    version = "20221106-git";
-    asds = [ "math" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/math/2022-11-06/math-20221106-git.tgz";
-      sha256 = "1xafh94y5q840fzlcvxw9p4ahgm9c4bwsm3fyrmm7n3j05xsgfml";
-      system = "math";
-      asd = "math";
-    });
-    systems = [ "math/half-div" ];
-    lispLibs = [  ];
-    meta = {
-      broken = true;
-    };
-  };
-  math_slash_ls-gauss = {
-    pname = "math_ls-gauss";
-    version = "20221106-git";
-    asds = [ "math" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/math/2022-11-06/math-20221106-git.tgz";
-      sha256 = "1xafh94y5q840fzlcvxw9p4ahgm9c4bwsm3fyrmm7n3j05xsgfml";
-      system = "math";
-      asd = "math";
-    });
-    systems = [ "math/ls-gauss" ];
-    lispLibs = [ (getAttr "cl-utilities" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  math_slash_ls-gsll = {
-    pname = "math_ls-gsll";
-    version = "20221106-git";
-    asds = [ "math" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/math/2022-11-06/math-20221106-git.tgz";
-      sha256 = "1xafh94y5q840fzlcvxw9p4ahgm9c4bwsm3fyrmm7n3j05xsgfml";
-      system = "math";
-      asd = "math";
-    });
-    systems = [ "math/ls-gsll" ];
-    lispLibs = [ (getAttr "cl-utilities" pkgs) (getAttr "gsll" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  math_slash_matr = {
-    pname = "math_matr";
-    version = "20221106-git";
-    asds = [ "math" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/math/2022-11-06/math-20221106-git.tgz";
-      sha256 = "1xafh94y5q840fzlcvxw9p4ahgm9c4bwsm3fyrmm7n3j05xsgfml";
-      system = "math";
-      asd = "math";
-    });
-    systems = [ "math/matr" ];
-    lispLibs = [ (getAttr "cl-utilities" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  math_slash_rnd = {
-    pname = "math_rnd";
-    version = "20221106-git";
-    asds = [ "math" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/math/2022-11-06/math-20221106-git.tgz";
-      sha256 = "1xafh94y5q840fzlcvxw9p4ahgm9c4bwsm3fyrmm7n3j05xsgfml";
-      system = "math";
-      asd = "math";
-    });
-    systems = [ "math/rnd" ];
-    lispLibs = [ (getAttr "cl-utilities" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  math_slash_series = {
-    pname = "math_series";
-    version = "20221106-git";
-    asds = [ "math" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/math/2022-11-06/math-20221106-git.tgz";
-      sha256 = "1xafh94y5q840fzlcvxw9p4ahgm9c4bwsm3fyrmm7n3j05xsgfml";
-      system = "math";
-      asd = "math";
-    });
-    systems = [ "math/series" ];
-    lispLibs = [  ];
-    meta = {
-      broken = true;
-    };
-  };
-  math_slash_smooth = {
-    pname = "math_smooth";
-    version = "20221106-git";
-    asds = [ "math" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/math/2022-11-06/math-20221106-git.tgz";
-      sha256 = "1xafh94y5q840fzlcvxw9p4ahgm9c4bwsm3fyrmm7n3j05xsgfml";
-      system = "math";
-      asd = "math";
-    });
-    systems = [ "math/smooth" ];
-    lispLibs = [  ];
-    meta = {
-      broken = true;
-    };
-  };
-  math_slash_stat = {
-    pname = "math_stat";
-    version = "20221106-git";
-    asds = [ "math" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/math/2022-11-06/math-20221106-git.tgz";
-      sha256 = "1xafh94y5q840fzlcvxw9p4ahgm9c4bwsm3fyrmm7n3j05xsgfml";
-      system = "math";
-      asd = "math";
-    });
-    systems = [ "math/stat" ];
-    lispLibs = [  ];
-    meta = {
-      broken = true;
-    };
-  };
-  math_slash_tests = {
-    pname = "math_tests";
-    version = "20221106-git";
-    asds = [ "math" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/math/2022-11-06/math-20221106-git.tgz";
-      sha256 = "1xafh94y5q840fzlcvxw9p4ahgm9c4bwsm3fyrmm7n3j05xsgfml";
-      system = "math";
-      asd = "math";
-    });
-    systems = [ "math/tests" ];
-    lispLibs = [ (getAttr "fiveam" pkgs) (getAttr "math" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  mathkit = {
-    pname = "mathkit";
-    version = "20160208-git";
-    asds = [ "mathkit" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/mathkit/2016-02-08/mathkit-20160208-git.tgz";
-      sha256 = "174y6ndmf52h8sml87qjfl48llmynvdizzk2h0mr85zbaysx73i3";
-      system = "mathkit";
-      asd = "mathkit";
-    });
-    systems = [ "mathkit" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) ];
-  };
-  matrix-case = {
-    pname = "matrix-case";
-    version = "20211020-git";
-    asds = [ "matrix-case" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/matrix-case/2021-10-20/matrix-case-20211020-git.tgz";
-      sha256 = "17k7x7wcl78xw4ajd38gva2dw7snsm9jppbnnl4by2s0grsqg50a";
-      system = "matrix-case";
-      asd = "matrix-case";
-    });
-    systems = [ "matrix-case" ];
-    lispLibs = [ (getAttr "jingoh_dot_documentizer" pkgs) ];
-  };
-  matrix-case_dot_test = {
-    pname = "matrix-case.test";
-    version = "20211020-git";
-    asds = [ "matrix-case.test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/matrix-case/2021-10-20/matrix-case-20211020-git.tgz";
-      sha256 = "17k7x7wcl78xw4ajd38gva2dw7snsm9jppbnnl4by2s0grsqg50a";
-      system = "matrix-case.test";
-      asd = "matrix-case.test";
-    });
-    systems = [ "matrix-case.test" ];
-    lispLibs = [ (getAttr "jingoh" pkgs) (getAttr "matrix-case" pkgs) ];
-  };
-  maxpc = {
-    pname = "maxpc";
-    version = "20200427-git";
-    asds = [ "maxpc" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/maxpc/2020-04-27/maxpc-20200427-git.tgz";
-      sha256 = "15wrjbr2js6j67c1dd4p2qxj49q9iqv1lhb7cwdcwpn79crr39gf";
-      system = "maxpc";
-      asd = "maxpc";
-    });
-    systems = [ "maxpc" ];
-    lispLibs = [  ];
-  };
-  maxpc-apache = {
-    pname = "maxpc-apache";
-    version = "20220707-git";
-    asds = [ "maxpc-apache" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/april/2022-07-07/april-20220707-git.tgz";
-      sha256 = "016mfldk98j1kbj8fpqwzhvdkfbmqsfbzjaawnlz9q5pr6srv26r";
-      system = "maxpc-apache";
-      asd = "maxpc-apache";
-    });
-    systems = [ "maxpc-apache" ];
-    lispLibs = [  ];
-  };
-  maxpc-test = {
-    pname = "maxpc-test";
-    version = "20200427-git";
-    asds = [ "maxpc-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/maxpc/2020-04-27/maxpc-20200427-git.tgz";
-      sha256 = "15wrjbr2js6j67c1dd4p2qxj49q9iqv1lhb7cwdcwpn79crr39gf";
-      system = "maxpc-test";
-      asd = "maxpc-test";
-    });
-    systems = [ "maxpc-test" ];
-    lispLibs = [ (getAttr "maxpc" pkgs) ];
-  };
-  mbe = {
-    pname = "mbe";
-    version = "20200218-git";
-    asds = [ "mbe" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/mbe/2020-02-18/mbe-20200218-git.tgz";
-      sha256 = "1wlhlddfv0jbqliqlvhxkmmj9pfym0f9qlvjjmlrkvx6fxpv0450";
-      system = "mbe";
-      asd = "mbe";
-    });
-    systems = [ "mbe" ];
-    lispLibs = [  ];
-  };
-  mcase = {
-    pname = "mcase";
-    version = "20211020-git";
-    asds = [ "mcase" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/mcase/2021-10-20/mcase-20211020-git.tgz";
-      sha256 = "1k0agm57xbzlskdi8cgsg2z9lsamm4jl6fw7687z3bw1s2dbsm59";
-      system = "mcase";
-      asd = "mcase";
-    });
-    systems = [ "mcase" ];
-    lispLibs = [ (getAttr "jingoh_dot_documentizer" pkgs) (getAttr "millet" pkgs) ];
-  };
-  mcase_dot_test = {
-    pname = "mcase.test";
-    version = "20211020-git";
-    asds = [ "mcase.test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/mcase/2021-10-20/mcase-20211020-git.tgz";
-      sha256 = "1k0agm57xbzlskdi8cgsg2z9lsamm4jl6fw7687z3bw1s2dbsm59";
-      system = "mcase.test";
-      asd = "mcase.test";
-    });
-    systems = [ "mcase.test" ];
-    lispLibs = [ (getAttr "jingoh" pkgs) (getAttr "mcase" pkgs) ];
-  };
-  mcclim = {
-    pname = "mcclim";
-    version = "20221106-git";
-    asds = [ "mcclim" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/mcclim/2022-11-06/mcclim-20221106-git.tgz";
-      sha256 = "0hz6vz4c0xv8bjx02hf3rbnp66c7ifx2ld4y6nxdz6i70wyhwbdf";
-      system = "mcclim";
-      asd = "mcclim";
-    });
-    systems = [ "mcclim" ];
-    lispLibs = [ (getAttr "clim" pkgs) (getAttr "clim-pdf" pkgs) (getAttr "clim-postscript" pkgs) (getAttr "conditional-commands" pkgs) (getAttr "mcclim-bezier" pkgs) (getAttr "mcclim-bitmaps" pkgs) (getAttr "mcclim-clx" pkgs) (getAttr "mcclim-clx-fb" pkgs) (getAttr "mcclim-franz" pkgs) (getAttr "mcclim-null" pkgs) ];
-  };
-  mcclim-backend-common = {
-    pname = "mcclim-backend-common";
-    version = "20221106-git";
-    asds = [ "mcclim-backend-common" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/mcclim/2022-11-06/mcclim-20221106-git.tgz";
-      sha256 = "0hz6vz4c0xv8bjx02hf3rbnp66c7ifx2ld4y6nxdz6i70wyhwbdf";
-      system = "mcclim-backend-common";
-      asd = "mcclim-backend-common";
-    });
-    systems = [ "mcclim-backend-common" ];
-    lispLibs = [ (getAttr "clim" pkgs) ];
-  };
-  mcclim-bezier = {
-    pname = "mcclim-bezier";
-    version = "20221106-git";
-    asds = [ "mcclim-bezier" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/mcclim/2022-11-06/mcclim-20221106-git.tgz";
-      sha256 = "0hz6vz4c0xv8bjx02hf3rbnp66c7ifx2ld4y6nxdz6i70wyhwbdf";
-      system = "mcclim-bezier";
-      asd = "mcclim-bezier";
-    });
-    systems = [ "mcclim-bezier" ];
-    lispLibs = [ (getAttr "flexichain" pkgs) (getAttr "clim" pkgs) (getAttr "clim-pdf" pkgs) (getAttr "clim-postscript" pkgs) (getAttr "mcclim-clx" pkgs) (getAttr "mcclim-null" pkgs) (getAttr "mcclim-render" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  mcclim-bezier_slash_clx = {
-    pname = "mcclim-bezier_clx";
-    version = "20221106-git";
-    asds = [ "mcclim-bezier" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/mcclim/2022-11-06/mcclim-20221106-git.tgz";
-      sha256 = "0hz6vz4c0xv8bjx02hf3rbnp66c7ifx2ld4y6nxdz6i70wyhwbdf";
-      system = "mcclim-bezier";
-      asd = "mcclim-bezier";
-    });
-    systems = [ "mcclim-bezier/clx" ];
-    lispLibs = [ (getAttr "flexichain" pkgs) (getAttr "clim" pkgs) (getAttr "clim-pdf" pkgs) (getAttr "clim-postscript" pkgs) (getAttr "mcclim-clx" pkgs) (getAttr "mcclim-null" pkgs) (getAttr "mcclim-render" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  mcclim-bezier_slash_core = {
-    pname = "mcclim-bezier_core";
-    version = "20221106-git";
-    asds = [ "mcclim-bezier" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/mcclim/2022-11-06/mcclim-20221106-git.tgz";
-      sha256 = "0hz6vz4c0xv8bjx02hf3rbnp66c7ifx2ld4y6nxdz6i70wyhwbdf";
-      system = "mcclim-bezier";
-      asd = "mcclim-bezier";
-    });
-    systems = [ "mcclim-bezier/core" ];
-    lispLibs = [ (getAttr "flexichain" pkgs) (getAttr "clim" pkgs) (getAttr "clim-pdf" pkgs) (getAttr "clim-postscript" pkgs) (getAttr "mcclim-null" pkgs) (getAttr "mcclim-render" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  mcclim-bitmaps = {
-    pname = "mcclim-bitmaps";
-    version = "20221106-git";
-    asds = [ "mcclim-bitmaps" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/mcclim/2022-11-06/mcclim-20221106-git.tgz";
-      sha256 = "0hz6vz4c0xv8bjx02hf3rbnp66c7ifx2ld4y6nxdz6i70wyhwbdf";
-      system = "mcclim-bitmaps";
-      asd = "mcclim-bitmaps";
-    });
-    systems = [ "mcclim-bitmaps" ];
-    lispLibs = [ (getAttr "clim" pkgs) (getAttr "opticl" pkgs) ];
-  };
-  mcclim-clx = {
-    pname = "mcclim-clx";
-    version = "20221106-git";
-    asds = [ "mcclim-clx" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/mcclim/2022-11-06/mcclim-20221106-git.tgz";
-      sha256 = "0hz6vz4c0xv8bjx02hf3rbnp66c7ifx2ld4y6nxdz6i70wyhwbdf";
-      system = "mcclim-clx";
-      asd = "mcclim-clx";
-    });
-    systems = [ "mcclim-clx" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "babel" pkgs) (getAttr "cl-dejavu" pkgs) (getAttr "cl-unicode" pkgs) (getAttr "cl-aa" pkgs) (getAttr "cl-paths-ttf" pkgs) (getAttr "cl-vectors" pkgs) (getAttr "clx" pkgs) (getAttr "flexi-streams" pkgs) (getAttr "clim" pkgs) (getAttr "mcclim-backend-common" pkgs) (getAttr "zpb-ttf" pkgs) ];
-  };
-  mcclim-clx-fb = {
-    pname = "mcclim-clx-fb";
-    version = "20221106-git";
-    asds = [ "mcclim-clx-fb" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/mcclim/2022-11-06/mcclim-20221106-git.tgz";
-      sha256 = "0hz6vz4c0xv8bjx02hf3rbnp66c7ifx2ld4y6nxdz6i70wyhwbdf";
-      system = "mcclim-clx-fb";
-      asd = "mcclim-clx-fb";
-    });
-    systems = [ "mcclim-clx-fb" ];
-    lispLibs = [ (getAttr "mcclim-backend-common" pkgs) (getAttr "mcclim-clx" pkgs) (getAttr "mcclim-render" pkgs) ];
-  };
-  mcclim-fontconfig = {
-    pname = "mcclim-fontconfig";
-    version = "20221106-git";
-    asds = [ "mcclim-fontconfig" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/mcclim/2022-11-06/mcclim-20221106-git.tgz";
-      sha256 = "0hz6vz4c0xv8bjx02hf3rbnp66c7ifx2ld4y6nxdz6i70wyhwbdf";
-      system = "mcclim-fontconfig";
-      asd = "mcclim-fontconfig";
-    });
-    systems = [ "mcclim-fontconfig" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cffi" pkgs) (getAttr "cffi-grovel" pkgs) ];
-  };
-  mcclim-fonts = {
-    pname = "mcclim-fonts";
-    version = "20221106-git";
-    asds = [ "mcclim-fonts" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/mcclim/2022-11-06/mcclim-20221106-git.tgz";
-      sha256 = "0hz6vz4c0xv8bjx02hf3rbnp66c7ifx2ld4y6nxdz6i70wyhwbdf";
-      system = "mcclim-fonts";
-      asd = "mcclim-fonts";
-    });
-    systems = [ "mcclim-fonts" ];
-    lispLibs = [ (getAttr "clim" pkgs) ];
-  };
-  mcclim-fonts_slash_truetype = {
-    pname = "mcclim-fonts_truetype";
-    version = "20221106-git";
-    asds = [ "mcclim-fonts" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/mcclim/2022-11-06/mcclim-20221106-git.tgz";
-      sha256 = "0hz6vz4c0xv8bjx02hf3rbnp66c7ifx2ld4y6nxdz6i70wyhwbdf";
-      system = "mcclim-fonts";
-      asd = "mcclim-fonts";
-    });
-    systems = [ "mcclim-fonts/truetype" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cl-dejavu" pkgs) (getAttr "cl-aa" pkgs) (getAttr "cl-paths-ttf" pkgs) (getAttr "cl-vectors" pkgs) (getAttr "flexi-streams" pkgs) (getAttr "clim" pkgs) (getAttr "zpb-ttf" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  mcclim-franz = {
-    pname = "mcclim-franz";
-    version = "20221106-git";
-    asds = [ "mcclim-franz" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/mcclim/2022-11-06/mcclim-20221106-git.tgz";
-      sha256 = "0hz6vz4c0xv8bjx02hf3rbnp66c7ifx2ld4y6nxdz6i70wyhwbdf";
-      system = "mcclim-franz";
-      asd = "mcclim-franz";
-    });
-    systems = [ "mcclim-franz" ];
-    lispLibs = [ (getAttr "clim" pkgs) ];
-  };
-  mcclim-harfbuzz = {
-    pname = "mcclim-harfbuzz";
-    version = "20221106-git";
-    asds = [ "mcclim-harfbuzz" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/mcclim/2022-11-06/mcclim-20221106-git.tgz";
-      sha256 = "0hz6vz4c0xv8bjx02hf3rbnp66c7ifx2ld4y6nxdz6i70wyhwbdf";
-      system = "mcclim-harfbuzz";
-      asd = "mcclim-harfbuzz";
-    });
-    systems = [ "mcclim-harfbuzz" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cffi" pkgs) (getAttr "cffi-grovel" pkgs) (getAttr "trivial-garbage" pkgs) ];
-  };
-  mcclim-layouts = {
-    pname = "mcclim-layouts";
-    version = "20221106-git";
-    asds = [ "mcclim-layouts" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/mcclim/2022-11-06/mcclim-20221106-git.tgz";
-      sha256 = "0hz6vz4c0xv8bjx02hf3rbnp66c7ifx2ld4y6nxdz6i70wyhwbdf";
-      system = "mcclim-layouts";
-      asd = "mcclim-layouts";
-    });
-    systems = [ "mcclim-layouts" ];
-    lispLibs = [  ];
-  };
-  mcclim-layouts_slash_tab = {
-    pname = "mcclim-layouts_tab";
-    version = "20221106-git";
-    asds = [ "mcclim-layouts" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/mcclim/2022-11-06/mcclim-20221106-git.tgz";
-      sha256 = "0hz6vz4c0xv8bjx02hf3rbnp66c7ifx2ld4y6nxdz6i70wyhwbdf";
-      system = "mcclim-layouts";
-      asd = "mcclim-layouts";
-    });
-    systems = [ "mcclim-layouts/tab" ];
-    lispLibs = [ (getAttr "clim" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  mcclim-null = {
-    pname = "mcclim-null";
-    version = "20221106-git";
-    asds = [ "mcclim-null" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/mcclim/2022-11-06/mcclim-20221106-git.tgz";
-      sha256 = "0hz6vz4c0xv8bjx02hf3rbnp66c7ifx2ld4y6nxdz6i70wyhwbdf";
-      system = "mcclim-null";
-      asd = "mcclim-null";
-    });
-    systems = [ "mcclim-null" ];
-    lispLibs = [ (getAttr "clim" pkgs) ];
-  };
-  mcclim-raster-image = {
-    pname = "mcclim-raster-image";
-    version = "20221106-git";
-    asds = [ "mcclim-raster-image" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/mcclim/2022-11-06/mcclim-20221106-git.tgz";
-      sha256 = "0hz6vz4c0xv8bjx02hf3rbnp66c7ifx2ld4y6nxdz6i70wyhwbdf";
-      system = "mcclim-raster-image";
-      asd = "mcclim-raster-image";
-    });
-    systems = [ "mcclim-raster-image" ];
-    lispLibs = [ (getAttr "clim" pkgs) (getAttr "mcclim-backend-common" pkgs) (getAttr "mcclim-render" pkgs) ];
-  };
-  mcclim-raster-image_slash_test = {
-    pname = "mcclim-raster-image_test";
-    version = "20221106-git";
-    asds = [ "mcclim-raster-image" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/mcclim/2022-11-06/mcclim-20221106-git.tgz";
-      sha256 = "0hz6vz4c0xv8bjx02hf3rbnp66c7ifx2ld4y6nxdz6i70wyhwbdf";
-      system = "mcclim-raster-image";
-      asd = "mcclim-raster-image";
-    });
-    systems = [ "mcclim-raster-image/test" ];
-    lispLibs = [ (getAttr "fiveam" pkgs) (getAttr "mcclim" pkgs) (getAttr "mcclim-raster-image" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  mcclim-render = {
-    pname = "mcclim-render";
-    version = "20221106-git";
-    asds = [ "mcclim-render" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/mcclim/2022-11-06/mcclim-20221106-git.tgz";
-      sha256 = "0hz6vz4c0xv8bjx02hf3rbnp66c7ifx2ld4y6nxdz6i70wyhwbdf";
-      system = "mcclim-render";
-      asd = "mcclim-render";
-    });
-    systems = [ "mcclim-render" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cl-dejavu" pkgs) (getAttr "cl-aa" pkgs) (getAttr "cl-paths-ttf" pkgs) (getAttr "cl-vectors" pkgs) (getAttr "flexi-streams" pkgs) (getAttr "clim" pkgs) (getAttr "mcclim-backend-common" pkgs) (getAttr "zpb-ttf" pkgs) ];
-  };
-  mcclim-svg = {
-    pname = "mcclim-svg";
-    version = "20221106-git";
-    asds = [ "mcclim-svg" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/mcclim/2022-11-06/mcclim-20221106-git.tgz";
-      sha256 = "0hz6vz4c0xv8bjx02hf3rbnp66c7ifx2ld4y6nxdz6i70wyhwbdf";
-      system = "mcclim-svg";
-      asd = "mcclim-svg";
-    });
-    systems = [ "mcclim-svg" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cl-base64" pkgs) (getAttr "cl-dejavu" pkgs) (getAttr "cl-aa" pkgs) (getAttr "cl-paths-ttf" pkgs) (getAttr "cl-vectors" pkgs) (getAttr "cl-who" pkgs) (getAttr "flexi-streams" pkgs) (getAttr "clim" pkgs) (getAttr "mcclim" pkgs) (getAttr "mcclim-bitmaps" pkgs) (getAttr "zpb-ttf" pkgs) ];
-  };
-  mcclim-tooltips = {
-    pname = "mcclim-tooltips";
-    version = "20221106-git";
-    asds = [ "mcclim-tooltips" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/mcclim/2022-11-06/mcclim-20221106-git.tgz";
-      sha256 = "0hz6vz4c0xv8bjx02hf3rbnp66c7ifx2ld4y6nxdz6i70wyhwbdf";
-      system = "mcclim-tooltips";
-      asd = "mcclim-tooltips";
-    });
-    systems = [ "mcclim-tooltips" ];
-    lispLibs = [ (getAttr "clim" pkgs) ];
-  };
-  mcclim-tree-with-cross-edges = {
-    pname = "mcclim-tree-with-cross-edges";
-    version = "20221106-git";
-    asds = [ "mcclim-tree-with-cross-edges" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/mcclim/2022-11-06/mcclim-20221106-git.tgz";
-      sha256 = "0hz6vz4c0xv8bjx02hf3rbnp66c7ifx2ld4y6nxdz6i70wyhwbdf";
-      system = "mcclim-tree-with-cross-edges";
-      asd = "mcclim-tree-with-cross-edges";
-    });
-    systems = [ "mcclim-tree-with-cross-edges" ];
-    lispLibs = [ (getAttr "mcclim" pkgs) ];
-  };
-  mcclim_slash_extensions = {
-    pname = "mcclim_extensions";
-    version = "20221106-git";
-    asds = [ "mcclim" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/mcclim/2022-11-06/mcclim-20221106-git.tgz";
-      sha256 = "0hz6vz4c0xv8bjx02hf3rbnp66c7ifx2ld4y6nxdz6i70wyhwbdf";
-      system = "mcclim";
-      asd = "mcclim";
-    });
-    systems = [ "mcclim/extensions" ];
-    lispLibs = [ (getAttr "clim" pkgs) (getAttr "clim-pdf" pkgs) (getAttr "clim-postscript" pkgs) (getAttr "conditional-commands" pkgs) (getAttr "mcclim-bezier" pkgs) (getAttr "mcclim-bitmaps" pkgs) (getAttr "mcclim-franz" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  mcclim_slash_looks = {
-    pname = "mcclim_looks";
-    version = "20221106-git";
-    asds = [ "mcclim" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/mcclim/2022-11-06/mcclim-20221106-git.tgz";
-      sha256 = "0hz6vz4c0xv8bjx02hf3rbnp66c7ifx2ld4y6nxdz6i70wyhwbdf";
-      system = "mcclim";
-      asd = "mcclim";
-    });
-    systems = [ "mcclim/looks" ];
-    lispLibs = [ (getAttr "clim" pkgs) (getAttr "mcclim-clx" pkgs) (getAttr "mcclim-clx-fb" pkgs) (getAttr "mcclim-null" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  mcclim_slash_test = {
-    pname = "mcclim_test";
-    version = "20221106-git";
-    asds = [ "mcclim" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/mcclim/2022-11-06/mcclim-20221106-git.tgz";
-      sha256 = "0hz6vz4c0xv8bjx02hf3rbnp66c7ifx2ld4y6nxdz6i70wyhwbdf";
-      system = "mcclim";
-      asd = "mcclim";
-    });
-    systems = [ "mcclim/test" ];
-    lispLibs = [ (getAttr "fiveam" pkgs) (getAttr "mcclim" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  mcclim_slash_test-util = {
-    pname = "mcclim_test-util";
-    version = "20221106-git";
-    asds = [ "mcclim" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/mcclim/2022-11-06/mcclim-20221106-git.tgz";
-      sha256 = "0hz6vz4c0xv8bjx02hf3rbnp66c7ifx2ld4y6nxdz6i70wyhwbdf";
-      system = "mcclim";
-      asd = "mcclim";
-    });
-    systems = [ "mcclim/test-util" ];
-    lispLibs = [ (getAttr "fiveam" pkgs) (getAttr "mcclim" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  md5 = {
-    pname = "md5";
-    version = "20210630-git";
-    asds = [ "md5" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/md5/2021-06-30/md5-20210630-git.tgz";
-      sha256 = "1g20np6rhn3y08z8mlmlk721mw2207s52v2pwp4smm3lz25sx3q5";
-      system = "md5";
-      asd = "md5";
-    });
-    systems = [ "md5" ];
-    lispLibs = [  ];
-  };
-  media-types = {
-    pname = "media-types";
-    version = "20220331-git";
-    asds = [ "media-types" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/media-types/2022-03-31/media-types-20220331-git.tgz";
-      sha256 = "07ly7jr0ff2ks4gyjpq2jyj9gm47frllal5is3iqhc4xrmpyzrqc";
-      system = "media-types";
-      asd = "media-types";
-    });
-    systems = [ "media-types" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cl-ppcre" pkgs) (getAttr "serapeum" pkgs) ];
-  };
-  media-types_slash_tests = {
-    pname = "media-types_tests";
-    version = "20220331-git";
-    asds = [ "media-types" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/media-types/2022-03-31/media-types-20220331-git.tgz";
-      sha256 = "07ly7jr0ff2ks4gyjpq2jyj9gm47frllal5is3iqhc4xrmpyzrqc";
-      system = "media-types";
-      asd = "media-types";
-    });
-    systems = [ "media-types/tests" ];
-    lispLibs = [ (getAttr "fiveam" pkgs) (getAttr "media-types" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  mel-base = {
-    pname = "mel-base";
-    version = "20180228-git";
-    asds = [ "mel-base" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/mel-base/2018-02-28/mel-base-20180228-git.tgz";
-      sha256 = "1dvhmlkxasww3kb7xnwqlmdvi31w2awjrbkgk5d0hsfzqmyhhjh0";
-      system = "mel-base";
-      asd = "mel-base";
-    });
-    systems = [ "mel-base" ];
-    lispLibs = [ (getAttr "cl_plus_ssl" pkgs) (getAttr "flexi-streams" pkgs) (getAttr "usocket" pkgs) ];
-  };
-  memoize = {
-    pname = "memoize";
-    version = "20140826-http";
-    asds = [ "memoize" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/memoize/2014-08-26/memoize-20140826-http.tgz";
-      sha256 = "1f1plqy9xdv40235b7kkm63gsgssk8l81azhfniy8j9yww39gihf";
-      system = "memoize";
-      asd = "memoize";
-    });
-    systems = [ "memoize" ];
-    lispLibs = [  ];
-  };
-  message-oo = {
-    pname = "message-oo";
-    version = "20130615-git";
-    asds = [ "message-oo" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/message-oo/2013-06-15/message-oo-20130615-git.tgz";
-      sha256 = "164yypzhr6pxb84x47s9vjl97imbq5r8sxan22101q0y1jn3dznp";
-      system = "message-oo";
-      asd = "message-oo";
-    });
-    systems = [ "message-oo" ];
-    lispLibs = [  ];
-  };
-  messagebox = {
-    pname = "messagebox";
-    version = "20211020-git";
-    asds = [ "messagebox" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/messagebox/2021-10-20/messagebox-20211020-git.tgz";
-      sha256 = "17gbsqsz1nf09qhhhm5rpkmvkgf1pv6cyxrbmlplr3abvr4cqfh4";
-      system = "messagebox";
-      asd = "messagebox";
-    });
-    systems = [ "messagebox" ];
-    lispLibs = [ (getAttr "documentation-utils" pkgs) (getAttr "trivial-features" pkgs) (getAttr "uiop" pkgs) ];
-  };
-  meta = {
-    pname = "meta";
-    version = "20150608-git";
-    asds = [ "meta" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/meta/2015-06-08/meta-20150608-git.tgz";
-      sha256 = "08s53zj3mcx82kszp1bg2vsb4kydvkc70kj4hpq9h1l5a1wh44cy";
-      system = "meta";
-      asd = "meta";
-    });
-    systems = [ "meta" ];
-    lispLibs = [ (getAttr "named-readtables" pkgs) ];
-  };
-  meta-sexp = {
-    pname = "meta-sexp";
-    version = "20201016-git";
-    asds = [ "meta-sexp" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/meta-sexp/2020-10-16/meta-sexp-20201016-git.tgz";
-      sha256 = "14z4xglybsj4pdaifhjvnki0vm0wg985x00n94djc0fdcclczv1c";
-      system = "meta-sexp";
-      asd = "meta-sexp";
-    });
-    systems = [ "meta-sexp" ];
-    lispLibs = [  ];
-  };
-  metabang-bind = {
-    pname = "metabang-bind";
-    version = "20200218-git";
-    asds = [ "metabang-bind" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/metabang-bind/2020-02-18/metabang-bind-20200218-git.tgz";
-      sha256 = "0681lp2j084w3dx02ah1vm5pk83cp5k090anwdlrjaxd1j4kbpbr";
-      system = "metabang-bind";
-      asd = "metabang-bind";
-    });
-    systems = [ "metabang-bind" ];
-    lispLibs = [  ];
-  };
-  metabang-bind-test = {
-    pname = "metabang-bind-test";
-    version = "20200218-git";
-    asds = [ "metabang-bind-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/metabang-bind/2020-02-18/metabang-bind-20200218-git.tgz";
-      sha256 = "0681lp2j084w3dx02ah1vm5pk83cp5k090anwdlrjaxd1j4kbpbr";
-      system = "metabang-bind-test";
-      asd = "metabang-bind-test";
-    });
-    systems = [ "metabang-bind-test" ];
-    lispLibs = [ (getAttr "lift" pkgs) (getAttr "metabang-bind" pkgs) ];
-  };
-  metacopy = {
-    pname = "metacopy";
-    version = "20170403-darcs";
-    asds = [ "metacopy" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/metacopy/2017-04-03/metacopy-20170403-darcs.tgz";
-      sha256 = "1xwvc18l5fc33ffqa6jz5g0qz6mpabia81bcmqf3sz24apkpr49x";
-      system = "metacopy";
-      asd = "metacopy";
-    });
-    systems = [ "metacopy" ];
-    lispLibs = [ (getAttr "moptilities" pkgs) ];
-  };
-  metacopy-with-contextl = {
-    pname = "metacopy-with-contextl";
-    version = "20170403-darcs";
-    asds = [ "metacopy-with-contextl" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/metacopy/2017-04-03/metacopy-20170403-darcs.tgz";
-      sha256 = "1xwvc18l5fc33ffqa6jz5g0qz6mpabia81bcmqf3sz24apkpr49x";
-      system = "metacopy-with-contextl";
-      asd = "metacopy-with-contextl";
-    });
-    systems = [ "metacopy-with-contextl" ];
-    lispLibs = [ (getAttr "contextl" pkgs) (getAttr "metacopy" pkgs) ];
-  };
-  metacopy-with-contextl_slash_test = {
-    pname = "metacopy-with-contextl_test";
-    version = "20170403-darcs";
-    asds = [ "metacopy-with-contextl" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/metacopy/2017-04-03/metacopy-20170403-darcs.tgz";
-      sha256 = "1xwvc18l5fc33ffqa6jz5g0qz6mpabia81bcmqf3sz24apkpr49x";
-      system = "metacopy-with-contextl";
-      asd = "metacopy-with-contextl";
-    });
-    systems = [ "metacopy-with-contextl/test" ];
-    lispLibs = [ (getAttr "lift" pkgs) (getAttr "metacopy" pkgs) (getAttr "metacopy-with-contextl" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  metacopy_slash_test = {
-    pname = "metacopy_test";
-    version = "20170403-darcs";
-    asds = [ "metacopy" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/metacopy/2017-04-03/metacopy-20170403-darcs.tgz";
-      sha256 = "1xwvc18l5fc33ffqa6jz5g0qz6mpabia81bcmqf3sz24apkpr49x";
-      system = "metacopy";
-      asd = "metacopy";
-    });
-    systems = [ "metacopy/test" ];
-    lispLibs = [ (getAttr "lift" pkgs) (getAttr "metacopy" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  metalock = {
-    pname = "metalock";
-    version = "20200925-git";
-    asds = [ "metalock" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/metalock/2020-09-25/metalock-20200925-git.tgz";
-      sha256 = "0z2vk0s694zhnkai593q42vln5a6ykm8pilyikc4qp9aw9r43lc5";
-      system = "metalock";
-      asd = "metalock";
-    });
-    systems = [ "metalock" ];
-    lispLibs = [ (getAttr "bordeaux-threads" pkgs) (getAttr "closer-mop" pkgs) ];
-  };
-  metap = {
-    pname = "metap";
-    version = "20150505-git";
-    asds = [ "metap" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/metap/2015-05-05/metap-20150505-git.tgz";
-      sha256 = "0drqyjscl0lmhgplld6annmlqma83q76xkxnahcq4ksnhpbsz9wx";
-      system = "metap";
-      asd = "metap";
-    });
-    systems = [ "metap" ];
-    lispLibs = [ (getAttr "closer-mop" pkgs) ];
-  };
-  metap-test = {
-    pname = "metap-test";
-    version = "20150505-git";
-    asds = [ "metap-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/metap/2015-05-05/metap-20150505-git.tgz";
-      sha256 = "0drqyjscl0lmhgplld6annmlqma83q76xkxnahcq4ksnhpbsz9wx";
-      system = "metap-test";
-      asd = "metap-test";
-    });
-    systems = [ "metap-test" ];
-    lispLibs = [ (getAttr "fiveam" pkgs) (getAttr "metap" pkgs) ];
-  };
-  metatilities = {
-    pname = "metatilities";
-    version = "20180228-git";
-    asds = [ "metatilities" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/metatilities/2018-02-28/metatilities-20180228-git.tgz";
-      sha256 = "0vqhndnhrv40ixkj5lslr0h2fy79609gi0wgbqzcz82vkyx9d6vd";
-      system = "metatilities";
-      asd = "metatilities";
-    });
-    systems = [ "metatilities" ];
-    lispLibs = [ (getAttr "asdf-system-connections" pkgs) (getAttr "cl-containers" pkgs) (getAttr "metabang-bind" pkgs) (getAttr "metatilities-base" pkgs) (getAttr "moptilities" pkgs) ];
-  };
-  metatilities-base = {
-    pname = "metatilities-base";
-    version = "20191227-git";
-    asds = [ "metatilities-base" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/metatilities-base/2019-12-27/metatilities-base-20191227-git.tgz";
-      sha256 = "069rk5ncwvjnnzvvky6xiriynl72yzvjpnzl6jw9jf3b8na14zrk";
-      system = "metatilities-base";
-      asd = "metatilities-base";
-    });
-    systems = [ "metatilities-base" ];
-    lispLibs = [  ];
-  };
-  metatilities-base-test = {
-    pname = "metatilities-base-test";
-    version = "20191227-git";
-    asds = [ "metatilities-base-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/metatilities-base/2019-12-27/metatilities-base-20191227-git.tgz";
-      sha256 = "069rk5ncwvjnnzvvky6xiriynl72yzvjpnzl6jw9jf3b8na14zrk";
-      system = "metatilities-base-test";
-      asd = "metatilities-base-test";
-    });
-    systems = [ "metatilities-base-test" ];
-    lispLibs = [ (getAttr "lift" pkgs) (getAttr "metatilities-base" pkgs) ];
-  };
-  metatilities-test = {
-    pname = "metatilities-test";
-    version = "20180228-git";
-    asds = [ "metatilities-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/metatilities/2018-02-28/metatilities-20180228-git.tgz";
-      sha256 = "0vqhndnhrv40ixkj5lslr0h2fy79609gi0wgbqzcz82vkyx9d6vd";
-      system = "metatilities-test";
-      asd = "metatilities-test";
-    });
-    systems = [ "metatilities-test" ];
-    lispLibs = [ (getAttr "lift" pkgs) (getAttr "metatilities" pkgs) ];
-  };
-  metatilities_slash_with-lift = {
-    pname = "metatilities_with-lift";
-    version = "20180228-git";
-    asds = [ "metatilities" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/metatilities/2018-02-28/metatilities-20180228-git.tgz";
-      sha256 = "0vqhndnhrv40ixkj5lslr0h2fy79609gi0wgbqzcz82vkyx9d6vd";
-      system = "metatilities";
-      asd = "metatilities";
-    });
-    systems = [ "metatilities/with-lift" ];
-    lispLibs = [ (getAttr "lift" pkgs) (getAttr "metatilities-base" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  metering = {
-    pname = "metering";
-    version = "20200218-git";
-    asds = [ "metering" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/metering/2020-02-18/metering-20200218-git.tgz";
-      sha256 = "0jx3ypk8m815yp7208xkcxkvila847mvna25a2p22ihnj0ms9rn1";
-      system = "metering";
-      asd = "metering";
-    });
-    systems = [ "metering" ];
-    lispLibs = [  ];
-  };
-  metering_slash_test = {
-    pname = "metering_test";
-    version = "20200218-git";
-    asds = [ "metering" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/metering/2020-02-18/metering-20200218-git.tgz";
-      sha256 = "0jx3ypk8m815yp7208xkcxkvila847mvna25a2p22ihnj0ms9rn1";
-      system = "metering";
-      asd = "metering";
-    });
-    systems = [ "metering/test" ];
-    lispLibs = [ (getAttr "fiveam" pkgs) (getAttr "metering" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  method-combination-utilities = {
-    pname = "method-combination-utilities";
-    version = "20141106-git";
-    asds = [ "method-combination-utilities" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/method-combination-utilities/2014-11-06/method-combination-utilities-20141106-git.tgz";
-      sha256 = "1lgc515j87lbb48mjys0j6p8bxzifzjw5g8i825lsdmajmwj3vis";
-      system = "method-combination-utilities";
-      asd = "method-combination-utilities";
-    });
-    systems = [ "method-combination-utilities" ];
-    lispLibs = [ (getAttr "closer-mop" pkgs) ];
-  };
-  method-combination-utilities_dot_tests = {
-    pname = "method-combination-utilities.tests";
-    version = "20141106-git";
-    asds = [ "method-combination-utilities.tests" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/method-combination-utilities/2014-11-06/method-combination-utilities-20141106-git.tgz";
-      sha256 = "1lgc515j87lbb48mjys0j6p8bxzifzjw5g8i825lsdmajmwj3vis";
-      system = "method-combination-utilities.tests";
-      asd = "method-combination-utilities";
-    });
-    systems = [ "method-combination-utilities.tests" ];
-    lispLibs = [ (getAttr "fiveam" pkgs) (getAttr "method-combination-utilities" pkgs) ];
-  };
-  method-hooks = {
-    pname = "method-hooks";
-    version = "20200925-git";
-    asds = [ "method-hooks" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/method-hooks/2020-09-25/method-hooks-20200925-git.tgz";
-      sha256 = "0kzijk02wjzms3hihmn6n6p9r6awkrsqlkghf6ixzf6400fiy212";
-      system = "method-hooks";
-      asd = "method-hooks";
-    });
-    systems = [ "method-hooks" ];
-    lispLibs = [  ];
-  };
-  method-hooks-test = {
-    pname = "method-hooks-test";
-    version = "20200925-git";
-    asds = [ "method-hooks-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/method-hooks/2020-09-25/method-hooks-20200925-git.tgz";
-      sha256 = "0kzijk02wjzms3hihmn6n6p9r6awkrsqlkghf6ixzf6400fiy212";
-      system = "method-hooks-test";
-      asd = "method-hooks-test";
-    });
-    systems = [ "method-hooks-test" ];
-    lispLibs = [ (getAttr "method-hooks" pkgs) (getAttr "parachute" pkgs) (getAttr "uiop" pkgs) ];
-  };
-  method-versions = {
-    pname = "method-versions";
-    version = "0.1.2011.05.18";
-    asds = [ "method-versions" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/method-versions/2011-05-22/method-versions_0.1.2011.05.18.tgz";
-      sha256 = "119x3dbjry25issq2m8xcacknd1y9mcnla5rhqzcsrj58zsmwmwf";
-      system = "method-versions";
-      asd = "method-versions";
-    });
-    systems = [ "method-versions" ];
-    lispLibs = [  ];
-  };
-  mexpr = {
-    pname = "mexpr";
-    version = "20150709-git";
-    asds = [ "mexpr" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/mexpr/2015-07-09/mexpr-20150709-git.tgz";
-      sha256 = "0ri9cp7vhnn9sah1lhvxn523c342n0q4v0xzi6fzlfvpj84jfzqk";
-      system = "mexpr";
-      asd = "mexpr";
-    });
-    systems = [ "mexpr" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cl-syntax" pkgs) ];
-  };
-  mexpr-tests = {
-    pname = "mexpr-tests";
-    version = "20150709-git";
-    asds = [ "mexpr-tests" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/mexpr/2015-07-09/mexpr-20150709-git.tgz";
-      sha256 = "0ri9cp7vhnn9sah1lhvxn523c342n0q4v0xzi6fzlfvpj84jfzqk";
-      system = "mexpr-tests";
-      asd = "mexpr-tests";
-    });
-    systems = [ "mexpr-tests" ];
-    lispLibs = [ (getAttr "mexpr" pkgs) (getAttr "named-readtables" pkgs) (getAttr "should-test" pkgs) ];
-  };
-  mfiano-utils = {
-    pname = "mfiano-utils";
-    version = "20220707-git";
-    asds = [ "mfiano-utils" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/mfiano-utils/2022-07-07/mfiano-utils-20220707-git.tgz";
-      sha256 = "1n67myg56p9jskbxxsn4pwc7yj7cgx04f3nc8drxnsnkdfxbn30x";
-      system = "mfiano-utils";
-      asd = "mfiano-utils";
-    });
-    systems = [ "mfiano-utils" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "serapeum" pkgs) (getAttr "uiop" pkgs) ];
-  };
-  mgl = {
-    pname = "mgl";
-    version = "20220220-git";
-    asds = [ "mgl" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/mgl/2022-02-20/mgl-20220220-git.tgz";
-      sha256 = "0ssrqn55hsq14db4zpsn1fw7kljj5jgkby6il5rynjipb8sgbvh5";
-      system = "mgl";
-      asd = "mgl";
-    });
-    systems = [ "mgl" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "array-operations" pkgs) (getAttr "cl-reexport" pkgs) (getAttr "closer-mop" pkgs) (getAttr "lla" pkgs) (getAttr "mgl-gnuplot" pkgs) (getAttr "mgl-mat" pkgs) (getAttr "mgl-pax" pkgs) (getAttr "named-readtables" pkgs) (getAttr "pythonic-string-reader" pkgs) (getAttr "swank" pkgs) ];
-  };
-  mgl-example = {
-    pname = "mgl-example";
-    version = "20220220-git";
-    asds = [ "mgl-example" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/mgl/2022-02-20/mgl-20220220-git.tgz";
-      sha256 = "0ssrqn55hsq14db4zpsn1fw7kljj5jgkby6il5rynjipb8sgbvh5";
-      system = "mgl-example";
-      asd = "mgl-example";
-    });
-    systems = [ "mgl-example" ];
-    lispLibs = [ (getAttr "mgl" pkgs) ];
-  };
-  mgl-gnuplot = {
-    pname = "mgl-gnuplot";
-    version = "20220220-git";
-    asds = [ "mgl-gnuplot" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/mgl/2022-02-20/mgl-20220220-git.tgz";
-      sha256 = "0ssrqn55hsq14db4zpsn1fw7kljj5jgkby6il5rynjipb8sgbvh5";
-      system = "mgl-gnuplot";
-      asd = "mgl-gnuplot";
-    });
-    systems = [ "mgl-gnuplot" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "external-program" pkgs) ];
-  };
-  mgl-mat = {
-    pname = "mgl-mat";
-    version = "20220220-git";
-    asds = [ "mgl-mat" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/mgl-mat/2022-02-20/mgl-mat-20220220-git.tgz";
-      sha256 = "04is8hmrwx4ghzz0ydnn8mhxxblv5lgs1hxzfkzbj07c95kzwi7k";
-      system = "mgl-mat";
-      asd = "mgl-mat";
-    });
-    systems = [ "mgl-mat" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "bordeaux-threads" pkgs) (getAttr "cffi" pkgs) (getAttr "cffi-grovel" pkgs) (getAttr "cl-cuda" pkgs) (getAttr "flexi-streams" pkgs) (getAttr "ieee-floats" pkgs) (getAttr "lla" pkgs) (getAttr "mgl-pax" pkgs) (getAttr "static-vectors" pkgs) (getAttr "trivial-garbage" pkgs) ];
-  };
-  mgl-mat_slash_test = {
-    pname = "mgl-mat_test";
-    version = "20220220-git";
-    asds = [ "mgl-mat" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/mgl-mat/2022-02-20/mgl-mat-20220220-git.tgz";
-      sha256 = "04is8hmrwx4ghzz0ydnn8mhxxblv5lgs1hxzfkzbj07c95kzwi7k";
-      system = "mgl-mat";
-      asd = "mgl-mat";
-    });
-    systems = [ "mgl-mat/test" ];
-    lispLibs = [ (getAttr "cl-fad" pkgs) (getAttr "mgl-mat" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  mgl-pax = {
-    pname = "mgl-pax";
-    version = "20220331-git";
-    asds = [ "mgl-pax" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/mgl-pax/2022-03-31/mgl-pax-20220331-git.tgz";
-      sha256 = "1vpbn0l5mycxa7hqiwbqqlcfm906pgphzyk34s1x3alwl7vkgf5c";
-      system = "mgl-pax";
-      asd = "mgl-pax";
-    });
-    systems = [ "mgl-pax" ];
-    lispLibs = [ (getAttr "mgl-pax_dot_asdf" pkgs) (getAttr "named-readtables" pkgs) (getAttr "pythonic-string-reader" pkgs) ];
-  };
-  mgl-pax_dot_asdf = {
-    pname = "mgl-pax.asdf";
-    version = "20220331-git";
-    asds = [ "mgl-pax.asdf" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/mgl-pax/2022-03-31/mgl-pax-20220331-git.tgz";
-      sha256 = "1vpbn0l5mycxa7hqiwbqqlcfm906pgphzyk34s1x3alwl7vkgf5c";
-      system = "mgl-pax.asdf";
-      asd = "mgl-pax.asdf";
-    });
-    systems = [ "mgl-pax.asdf" ];
-    lispLibs = [  ];
-  };
-  mgl-pax_slash_document = {
-    pname = "mgl-pax_document";
-    version = "20220331-git";
-    asds = [ "mgl-pax" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/mgl-pax/2022-03-31/mgl-pax-20220331-git.tgz";
-      sha256 = "1vpbn0l5mycxa7hqiwbqqlcfm906pgphzyk34s1x3alwl7vkgf5c";
-      system = "mgl-pax";
-      asd = "mgl-pax";
-    });
-    systems = [ "mgl-pax/document" ];
-    lispLibs = [ (getAttr "_3bmd" pkgs) (getAttr "_3bmd-ext-code-blocks" pkgs) (getAttr "alexandria" pkgs) (getAttr "colorize" pkgs) (getAttr "md5" pkgs) (getAttr "mgl-pax" pkgs) (getAttr "mgl-pax_dot_asdf" pkgs) (getAttr "swank" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  mgl-pax_slash_full = {
-    pname = "mgl-pax_full";
-    version = "20220331-git";
-    asds = [ "mgl-pax" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/mgl-pax/2022-03-31/mgl-pax-20220331-git.tgz";
-      sha256 = "1vpbn0l5mycxa7hqiwbqqlcfm906pgphzyk34s1x3alwl7vkgf5c";
-      system = "mgl-pax";
-      asd = "mgl-pax";
-    });
-    systems = [ "mgl-pax/full" ];
-    lispLibs = [ (getAttr "_3bmd" pkgs) (getAttr "_3bmd-ext-code-blocks" pkgs) (getAttr "alexandria" pkgs) (getAttr "colorize" pkgs) (getAttr "md5" pkgs) (getAttr "mgl-pax" pkgs) (getAttr "mgl-pax_dot_asdf" pkgs) (getAttr "swank" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  mgl-pax_slash_navigate = {
-    pname = "mgl-pax_navigate";
-    version = "20220331-git";
-    asds = [ "mgl-pax" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/mgl-pax/2022-03-31/mgl-pax-20220331-git.tgz";
-      sha256 = "1vpbn0l5mycxa7hqiwbqqlcfm906pgphzyk34s1x3alwl7vkgf5c";
-      system = "mgl-pax";
-      asd = "mgl-pax";
-    });
-    systems = [ "mgl-pax/navigate" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "mgl-pax" pkgs) (getAttr "mgl-pax_dot_asdf" pkgs) (getAttr "swank" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  mgl-pax_slash_test = {
-    pname = "mgl-pax_test";
-    version = "20220331-git";
-    asds = [ "mgl-pax" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/mgl-pax/2022-03-31/mgl-pax-20220331-git.tgz";
-      sha256 = "1vpbn0l5mycxa7hqiwbqqlcfm906pgphzyk34s1x3alwl7vkgf5c";
-      system = "mgl-pax";
-      asd = "mgl-pax";
-    });
-    systems = [ "mgl-pax/test" ];
-    lispLibs = [ (getAttr "_3bmd" pkgs) (getAttr "_3bmd-ext-code-blocks" pkgs) (getAttr "alexandria" pkgs) (getAttr "colorize" pkgs) (getAttr "md5" pkgs) (getAttr "mgl-pax" pkgs) (getAttr "mgl-pax_dot_asdf" pkgs) (getAttr "swank" pkgs) (getAttr "try" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  mgl-pax_slash_test-extension = {
-    pname = "mgl-pax_test-extension";
-    version = "20220331-git";
-    asds = [ "mgl-pax" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/mgl-pax/2022-03-31/mgl-pax-20220331-git.tgz";
-      sha256 = "1vpbn0l5mycxa7hqiwbqqlcfm906pgphzyk34s1x3alwl7vkgf5c";
-      system = "mgl-pax";
-      asd = "mgl-pax";
-    });
-    systems = [ "mgl-pax/test-extension" ];
-    lispLibs = [ (getAttr "mgl-pax" pkgs) (getAttr "mgl-pax_dot_asdf" pkgs) (getAttr "try" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  mgl-pax_slash_transcribe = {
-    pname = "mgl-pax_transcribe";
-    version = "20220331-git";
-    asds = [ "mgl-pax" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/mgl-pax/2022-03-31/mgl-pax-20220331-git.tgz";
-      sha256 = "1vpbn0l5mycxa7hqiwbqqlcfm906pgphzyk34s1x3alwl7vkgf5c";
-      system = "mgl-pax";
-      asd = "mgl-pax";
-    });
-    systems = [ "mgl-pax/transcribe" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "mgl-pax" pkgs) (getAttr "mgl-pax_dot_asdf" pkgs) (getAttr "swank" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  mgl_slash_test = {
-    pname = "mgl_test";
-    version = "20220220-git";
-    asds = [ "mgl" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/mgl/2022-02-20/mgl-20220220-git.tgz";
-      sha256 = "0ssrqn55hsq14db4zpsn1fw7kljj5jgkby6il5rynjipb8sgbvh5";
-      system = "mgl";
-      asd = "mgl";
-    });
-    systems = [ "mgl/test" ];
-    lispLibs = [ (getAttr "mgl" pkgs) (getAttr "mgl-mat" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  mgrs = {
-    pname = "mgrs";
-    version = "20220331-git";
-    asds = [ "mgrs" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/mgrs/2022-03-31/mgrs-20220331-git.tgz";
-      sha256 = "1n4kd734qjj7mrcg0q28hml3npam1rm067iwljwc87zshnxh5gmn";
-      system = "mgrs";
-      asd = "mgrs";
-    });
-    systems = [ "mgrs" ];
-    lispLibs = [ (getAttr "utm-ups" pkgs) ];
-  };
-  mgrs_slash_tests = {
-    pname = "mgrs_tests";
-    version = "20220331-git";
-    asds = [ "mgrs" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/mgrs/2022-03-31/mgrs-20220331-git.tgz";
-      sha256 = "1n4kd734qjj7mrcg0q28hml3npam1rm067iwljwc87zshnxh5gmn";
-      system = "mgrs";
-      asd = "mgrs";
-    });
-    systems = [ "mgrs/tests" ];
-    lispLibs = [ (getAttr "fiveam" pkgs) (getAttr "mgrs" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  micmac = {
-    pname = "micmac";
-    version = "20220220-git";
-    asds = [ "micmac" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/micmac/2022-02-20/micmac-20220220-git.tgz";
-      sha256 = "0c7k5j0br8mfrf7hgaihs6w5nma5ydi0rn5mplgjq3pc04k29krq";
-      system = "micmac";
-      asd = "micmac";
-    });
-    systems = [ "micmac" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "mgl-pax" pkgs) ];
-  };
-  micmac_slash_test = {
-    pname = "micmac_test";
-    version = "20220220-git";
-    asds = [ "micmac" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/micmac/2022-02-20/micmac-20220220-git.tgz";
-      sha256 = "0c7k5j0br8mfrf7hgaihs6w5nma5ydi0rn5mplgjq3pc04k29krq";
-      system = "micmac";
-      asd = "micmac";
-    });
-    systems = [ "micmac/test" ];
-    lispLibs = [ (getAttr "micmac" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  midi = {
-    pname = "midi";
-    version = "20070618";
-    asds = [ "midi" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/midi/2010-10-06/midi-20070618.tgz";
-      sha256 = "06hb6vm4dckhr1ln5jn3b31x1yampkl5fl0lfbg9zyazli7fgl87";
-      system = "midi";
-      asd = "midi";
-    });
-    systems = [ "midi" ];
-    lispLibs = [  ];
-  };
-  millet = {
-    pname = "millet";
-    version = "20211209-git";
-    asds = [ "millet" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/millet/2021-12-09/millet-20211209-git.tgz";
-      sha256 = "1jdqyr1f9a6083k7n88rwc6mjmgccj6za50ybl1dlnxqvqj2pw80";
-      system = "millet";
-      asd = "millet";
-    });
-    systems = [ "millet" ];
-    lispLibs = [ (getAttr "jingoh_dot_documentizer" pkgs) ];
-  };
-  millet_dot_test = {
-    pname = "millet.test";
-    version = "20211209-git";
-    asds = [ "millet.test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/millet/2021-12-09/millet-20211209-git.tgz";
-      sha256 = "1jdqyr1f9a6083k7n88rwc6mjmgccj6za50ybl1dlnxqvqj2pw80";
-      system = "millet.test";
-      asd = "millet.test";
-    });
-    systems = [ "millet.test" ];
-    lispLibs = [ (getAttr "closer-mop" pkgs) (getAttr "jingoh" pkgs) (getAttr "millet" pkgs) ];
-  };
-  minheap = {
-    pname = "minheap";
-    version = "20160628-git";
-    asds = [ "minheap" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/minheap/2016-06-28/minheap-20160628-git.tgz";
-      sha256 = "03v0dqxg4kmwvfrlrkq8bmfcv70k9n9f48p9p3z8kmfbc4p3f1vd";
-      system = "minheap";
-      asd = "minheap";
-    });
-    systems = [ "minheap" ];
-    lispLibs = [  ];
-  };
-  minheap-tests = {
-    pname = "minheap-tests";
-    version = "20160628-git";
-    asds = [ "minheap-tests" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/minheap/2016-06-28/minheap-20160628-git.tgz";
-      sha256 = "03v0dqxg4kmwvfrlrkq8bmfcv70k9n9f48p9p3z8kmfbc4p3f1vd";
-      system = "minheap-tests";
-      asd = "minheap-tests";
-    });
-    systems = [ "minheap-tests" ];
-    lispLibs = [ (getAttr "lisp-unit" pkgs) (getAttr "minheap" pkgs) ];
-  };
-  mini-cas = {
-    pname = "mini-cas";
-    version = "20150923-git";
-    asds = [ "mini-cas" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/mini-cas/2015-09-23/mini-cas-20150923-git.tgz";
-      sha256 = "1y9a111877lkpssi651q684mj052vp6qr9pz5gl47s6swiqvqp24";
-      system = "mini-cas";
-      asd = "mini-cas";
-    });
-    systems = [ "mini-cas" ];
-    lispLibs = [  ];
-  };
-  minilem = {
-    pname = "minilem";
-    version = "20200218-git";
-    asds = [ "minilem" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/minilem/2020-02-18/minilem-20200218-git.tgz";
-      sha256 = "1hpcgj8k5m11nk1pfd479hrbh15dcas7z1s8w877rqmlf69ga4cp";
-      system = "minilem";
-      asd = "minilem";
-    });
-    systems = [ "minilem" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "babel" pkgs) (getAttr "bordeaux-threads" pkgs) (getAttr "cl-fad" pkgs) (getAttr "cl-ppcre" pkgs) (getAttr "esrap" pkgs) (getAttr "inquisitor" pkgs) (getAttr "iterate" pkgs) (getAttr "log4cl" pkgs) (getAttr "optima" pkgs) (getAttr "swank" pkgs) (getAttr "trivial-gray-streams" pkgs) (getAttr "trivial-types" pkgs) (getAttr "uiop" pkgs) (getAttr "usocket" pkgs) (getAttr "yason" pkgs) ];
-  };
-  minpack = {
-    pname = "minpack";
-    version = "20200925-git";
-    asds = [ "minpack" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/f2cl/2020-09-25/f2cl-20200925-git.tgz";
-      sha256 = "0kq1lrz0sg4kj64w0ysihnfwi65pami362fs2mvpyf1yhgxmq08y";
-      system = "minpack";
-      asd = "minpack";
-    });
-    systems = [ "minpack" ];
-    lispLibs = [ (getAttr "f2cl" pkgs) ];
-  };
-  minpack_slash_test-hybrd = {
-    pname = "minpack_test-hybrd";
-    version = "20200925-git";
-    asds = [ "minpack" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/f2cl/2020-09-25/f2cl-20200925-git.tgz";
-      sha256 = "0kq1lrz0sg4kj64w0ysihnfwi65pami362fs2mvpyf1yhgxmq08y";
-      system = "minpack";
-      asd = "minpack";
-    });
-    systems = [ "minpack/test-hybrd" ];
-    lispLibs = [ (getAttr "minpack" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  minpack_slash_test-lmdif = {
-    pname = "minpack_test-lmdif";
-    version = "20200925-git";
-    asds = [ "minpack" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/f2cl/2020-09-25/f2cl-20200925-git.tgz";
-      sha256 = "0kq1lrz0sg4kj64w0ysihnfwi65pami362fs2mvpyf1yhgxmq08y";
-      system = "minpack";
-      asd = "minpack";
-    });
-    systems = [ "minpack/test-lmdif" ];
-    lispLibs = [ (getAttr "minpack" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  misc-extensions = {
-    pname = "misc-extensions";
-    version = "20150608-git";
-    asds = [ "misc-extensions" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/misc-extensions/2015-06-08/misc-extensions-20150608-git.tgz";
-      sha256 = "0gz5f4p70qzilnxsnf5lih2n9m4wjcw8hlw4w8mpn9jyhyppyyv0";
-      system = "misc-extensions";
-      asd = "misc-extensions";
-    });
-    systems = [ "misc-extensions" ];
-    lispLibs = [  ];
-  };
-  mito = {
-    pname = "mito";
-    version = "20221106-git";
-    asds = [ "mito" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/mito/2022-11-06/mito-20221106-git.tgz";
-      sha256 = "1wm0kmlg8b7l74s1kxs2yxrv07c6fhfb7yn3018pjh1y28i5cx7n";
-      system = "mito";
-      asd = "mito";
-    });
-    systems = [ "mito" ];
-    lispLibs = [ (getAttr "cl-reexport" pkgs) (getAttr "lack-middleware-mito" pkgs) (getAttr "mito-core" pkgs) (getAttr "mito-migration" pkgs) ];
-  };
-  mito-auth = {
-    pname = "mito-auth";
-    version = "20171019-git";
-    asds = [ "mito-auth" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/mito-auth/2017-10-19/mito-auth-20171019-git.tgz";
-      sha256 = "1q1yxjpnshzmia34a68dlscjadzynzyzz14sr4mkkkjyg5dhkazi";
-      system = "mito-auth";
-      asd = "mito-auth";
-    });
-    systems = [ "mito-auth" ];
-    lispLibs = [ (getAttr "babel" pkgs) (getAttr "ironclad" pkgs) (getAttr "mito" pkgs) ];
-  };
-  mito-core = {
-    pname = "mito-core";
-    version = "20221106-git";
-    asds = [ "mito-core" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/mito/2022-11-06/mito-20221106-git.tgz";
-      sha256 = "1wm0kmlg8b7l74s1kxs2yxrv07c6fhfb7yn3018pjh1y28i5cx7n";
-      system = "mito-core";
-      asd = "mito-core";
-    });
-    systems = [ "mito-core" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "dbi" pkgs) (getAttr "cl-ppcre" pkgs) (getAttr "cl-reexport" pkgs) (getAttr "closer-mop" pkgs) (getAttr "dissect" pkgs) (getAttr "local-time" pkgs) (getAttr "sxql" pkgs) (getAttr "trivia" pkgs) (getAttr "uuid" pkgs) ];
-  };
-  mito-migration = {
-    pname = "mito-migration";
-    version = "20221106-git";
-    asds = [ "mito-migration" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/mito/2022-11-06/mito-20221106-git.tgz";
-      sha256 = "1wm0kmlg8b7l74s1kxs2yxrv07c6fhfb7yn3018pjh1y28i5cx7n";
-      system = "mito-migration";
-      asd = "mito-migration";
-    });
-    systems = [ "mito-migration" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "chipz" pkgs) (getAttr "dbi" pkgs) (getAttr "cl-reexport" pkgs) (getAttr "closer-mop" pkgs) (getAttr "esrap" pkgs) (getAttr "mito-core" pkgs) (getAttr "sxql" pkgs) (getAttr "uiop" pkgs) ];
-  };
-  mito-test = {
-    pname = "mito-test";
-    version = "20221106-git";
-    asds = [ "mito-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/mito/2022-11-06/mito-20221106-git.tgz";
-      sha256 = "1wm0kmlg8b7l74s1kxs2yxrv07c6fhfb7yn3018pjh1y28i5cx7n";
-      system = "mito-test";
-      asd = "mito-test";
-    });
-    systems = [ "mito-test" ];
-    lispLibs = [ (getAttr "mito" pkgs) (getAttr "prove" pkgs) (getAttr "prove-asdf" pkgs) ];
-  };
-  mixalot = {
-    pname = "mixalot";
-    version = "20151218-git";
-    asds = [ "mixalot" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/mixalot/2015-12-18/mixalot-20151218-git.tgz";
-      sha256 = "0kqx933k8kly4yhzvspizzki556s1lfd4zafap42jcsqqhr4i5q9";
-      system = "mixalot";
-      asd = "mixalot";
-    });
-    systems = [ "mixalot" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "bordeaux-threads" pkgs) (getAttr "cffi" pkgs) ];
-  };
-  mixalot-flac = {
-    pname = "mixalot-flac";
-    version = "20151218-git";
-    asds = [ "mixalot-flac" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/mixalot/2015-12-18/mixalot-20151218-git.tgz";
-      sha256 = "0kqx933k8kly4yhzvspizzki556s1lfd4zafap42jcsqqhr4i5q9";
-      system = "mixalot-flac";
-      asd = "mixalot-flac";
-    });
-    systems = [ "mixalot-flac" ];
-    lispLibs = [ (getAttr "cffi" pkgs) (getAttr "flac" pkgs) (getAttr "mixalot" pkgs) ];
-  };
-  mixalot-mp3 = {
-    pname = "mixalot-mp3";
-    version = "20151218-git";
-    asds = [ "mixalot-mp3" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/mixalot/2015-12-18/mixalot-20151218-git.tgz";
-      sha256 = "0kqx933k8kly4yhzvspizzki556s1lfd4zafap42jcsqqhr4i5q9";
-      system = "mixalot-mp3";
-      asd = "mixalot-mp3";
-    });
-    systems = [ "mixalot-mp3" ];
-    lispLibs = [ (getAttr "cffi" pkgs) (getAttr "mixalot" pkgs) (getAttr "mpg123-ffi" pkgs) ];
-  };
-  mixalot-vorbis = {
-    pname = "mixalot-vorbis";
-    version = "20151218-git";
-    asds = [ "mixalot-vorbis" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/mixalot/2015-12-18/mixalot-20151218-git.tgz";
-      sha256 = "0kqx933k8kly4yhzvspizzki556s1lfd4zafap42jcsqqhr4i5q9";
-      system = "mixalot-vorbis";
-      asd = "mixalot-vorbis";
-    });
-    systems = [ "mixalot-vorbis" ];
-    lispLibs = [ (getAttr "cffi" pkgs) (getAttr "mixalot" pkgs) (getAttr "vorbisfile-ffi" pkgs) ];
-  };
-  mk-defsystem = {
-    pname = "mk-defsystem";
-    version = "20220220-git";
-    asds = [ "mk-defsystem" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/mk-defsystem/2022-02-20/mk-defsystem-20220220-git.tgz";
-      sha256 = "1j83cx0dm12hjy54xfvv22ij13yp2z14qr73yxnkg0awvw6i2rnx";
-      system = "mk-defsystem";
-      asd = "mk-defsystem";
-    });
-    systems = [ "mk-defsystem" ];
-    lispLibs = [  ];
-  };
-  mk-string-metrics = {
-    pname = "mk-string-metrics";
-    version = "20180131-git";
-    asds = [ "mk-string-metrics" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/mk-string-metrics/2018-01-31/mk-string-metrics-20180131-git.tgz";
-      sha256 = "0c50hjpylhkh5phcxxcwqdzpa94vk5pq1j7c6x0d3wfpb2yx0wkd";
-      system = "mk-string-metrics";
-      asd = "mk-string-metrics";
-    });
-    systems = [ "mk-string-metrics" ];
-    lispLibs = [  ];
-  };
-  mk-string-metrics-tests = {
-    pname = "mk-string-metrics-tests";
-    version = "20180131-git";
-    asds = [ "mk-string-metrics-tests" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/mk-string-metrics/2018-01-31/mk-string-metrics-20180131-git.tgz";
-      sha256 = "0c50hjpylhkh5phcxxcwqdzpa94vk5pq1j7c6x0d3wfpb2yx0wkd";
-      system = "mk-string-metrics-tests";
-      asd = "mk-string-metrics-tests";
-    });
-    systems = [ "mk-string-metrics-tests" ];
-    lispLibs = [ (getAttr "mk-string-metrics" pkgs) ];
-  };
-  ml-dsl = {
-    pname = "ml-dsl";
-    version = "20210124-git";
-    asds = [ "ml-dsl" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-marklogic/2021-01-24/cl-marklogic-20210124-git.tgz";
-      sha256 = "0baq2ccb88zyr2dqdvpm32lsin4zalv11w48x4xm80cr4kw45fk5";
-      system = "ml-dsl";
-      asd = "ml-dsl";
-    });
-    systems = [ "ml-dsl" ];
-    lispLibs = [ (getAttr "cl-marklogic" pkgs) ];
-  };
-  ml-optimizer = {
-    pname = "ml-optimizer";
-    version = "20210124-git";
-    asds = [ "ml-optimizer" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-marklogic/2021-01-24/cl-marklogic-20210124-git.tgz";
-      sha256 = "0baq2ccb88zyr2dqdvpm32lsin4zalv11w48x4xm80cr4kw45fk5";
-      system = "ml-optimizer";
-      asd = "ml-optimizer";
-    });
-    systems = [ "ml-optimizer" ];
-    lispLibs = [ (getAttr "cl-json" pkgs) (getAttr "cl-marklogic" pkgs) (getAttr "cl-opsresearch" pkgs) (getAttr "hunchentoot" pkgs) ];
-  };
-  ml-test = {
-    pname = "ml-test";
-    version = "20210124-git";
-    asds = [ "ml-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-marklogic/2021-01-24/cl-marklogic-20210124-git.tgz";
-      sha256 = "0baq2ccb88zyr2dqdvpm32lsin4zalv11w48x4xm80cr4kw45fk5";
-      system = "ml-test";
-      asd = "ml-test";
-    });
-    systems = [ "ml-test" ];
-    lispLibs = [ (getAttr "cl-marklogic" pkgs) (getAttr "ml-optimizer" pkgs) (getAttr "fiveam" pkgs) ];
-  };
-  mlep = {
-    pname = "mlep";
-    version = "20180430-git";
-    asds = [ "mlep" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-mlep/2018-04-30/cl-mlep-20180430-git.tgz";
-      sha256 = "1y49fgc5py34b8r6908pxij73qxrl6yxjwx1pxigpnkbdf6a92lk";
-      system = "mlep";
-      asd = "mlep";
-    });
-    systems = [ "mlep" ];
-    lispLibs = [  ];
-  };
-  mlep-add = {
-    pname = "mlep-add";
-    version = "20180430-git";
-    asds = [ "mlep-add" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-mlep/2018-04-30/cl-mlep-20180430-git.tgz";
-      sha256 = "1y49fgc5py34b8r6908pxij73qxrl6yxjwx1pxigpnkbdf6a92lk";
-      system = "mlep-add";
-      asd = "mlep-add";
-    });
-    systems = [ "mlep-add" ];
-    lispLibs = [ (getAttr "cffi" pkgs) (getAttr "mlep" pkgs) (getAttr "cl-num-utils" pkgs) (getAttr "lla" pkgs) ];
-  };
-  mmap = {
-    pname = "mmap";
-    version = "20220707-git";
-    asds = [ "mmap" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/mmap/2022-07-07/mmap-20220707-git.tgz";
-      sha256 = "0gsmhpj83p9hiy4r0z2jzr6psypzgk06sfzwwqxv72k6hxm241gz";
-      system = "mmap";
-      asd = "mmap";
-    });
-    systems = [ "mmap" ];
-    lispLibs = [ (getAttr "cffi" pkgs) (getAttr "documentation-utils" pkgs) (getAttr "trivial-features" pkgs) ];
-  };
-  mmap-test = {
-    pname = "mmap-test";
-    version = "20220707-git";
-    asds = [ "mmap-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/mmap/2022-07-07/mmap-20220707-git.tgz";
-      sha256 = "0gsmhpj83p9hiy4r0z2jzr6psypzgk06sfzwwqxv72k6hxm241gz";
-      system = "mmap-test";
-      asd = "mmap-test";
-    });
-    systems = [ "mmap-test" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cffi" pkgs) (getAttr "mmap" pkgs) (getAttr "parachute" pkgs) ];
-  };
-  mnas-graph = {
-    pname = "mnas-graph";
-    version = "20221106-git";
-    asds = [ "mnas-graph" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/mnas-graph/2022-11-06/mnas-graph-20221106-git.tgz";
-      sha256 = "0lhq9m8js55jlzmc2jiwk2q8nzlnarsh5cpjrnl2gznxaxmml0wi";
-      system = "mnas-graph";
-      asd = "mnas-graph";
-    });
-    systems = [ "mnas-graph" ];
-    lispLibs = [ (getAttr "mnas-hash-table" pkgs) (getAttr "mnas-string" pkgs) ];
-  };
-  mnas-graph_slash_alg = {
-    pname = "mnas-graph_alg";
-    version = "20221106-git";
-    asds = [ "mnas-graph" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/mnas-graph/2022-11-06/mnas-graph-20221106-git.tgz";
-      sha256 = "0lhq9m8js55jlzmc2jiwk2q8nzlnarsh5cpjrnl2gznxaxmml0wi";
-      system = "mnas-graph";
-      asd = "mnas-graph";
-    });
-    systems = [ "mnas-graph/alg" ];
-    lispLibs = [ (getAttr "mnas-hash-table" pkgs) (getAttr "mnas-string" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  mnas-graph_slash_core = {
-    pname = "mnas-graph_core";
-    version = "20221106-git";
-    asds = [ "mnas-graph" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/mnas-graph/2022-11-06/mnas-graph-20221106-git.tgz";
-      sha256 = "0lhq9m8js55jlzmc2jiwk2q8nzlnarsh5cpjrnl2gznxaxmml0wi";
-      system = "mnas-graph";
-      asd = "mnas-graph";
-    });
-    systems = [ "mnas-graph/core" ];
-    lispLibs = [ (getAttr "mnas-hash-table" pkgs) (getAttr "mnas-string" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  mnas-graph_slash_demos = {
-    pname = "mnas-graph_demos";
-    version = "20221106-git";
-    asds = [ "mnas-graph" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/mnas-graph/2022-11-06/mnas-graph-20221106-git.tgz";
-      sha256 = "0lhq9m8js55jlzmc2jiwk2q8nzlnarsh5cpjrnl2gznxaxmml0wi";
-      system = "mnas-graph";
-      asd = "mnas-graph";
-    });
-    systems = [ "mnas-graph/demos" ];
-    lispLibs = [ (getAttr "mnas-hash-table" pkgs) (getAttr "mnas-string" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  mnas-graph_slash_docs = {
-    pname = "mnas-graph_docs";
-    version = "20221106-git";
-    asds = [ "mnas-graph" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/mnas-graph/2022-11-06/mnas-graph-20221106-git.tgz";
-      sha256 = "0lhq9m8js55jlzmc2jiwk2q8nzlnarsh5cpjrnl2gznxaxmml0wi";
-      system = "mnas-graph";
-      asd = "mnas-graph";
-    });
-    systems = [ "mnas-graph/docs" ];
-    lispLibs = [ (getAttr "codex" pkgs) (getAttr "mnas-graph" pkgs) (getAttr "mnas-package" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  mnas-graph_slash_filter = {
-    pname = "mnas-graph_filter";
-    version = "20221106-git";
-    asds = [ "mnas-graph" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/mnas-graph/2022-11-06/mnas-graph-20221106-git.tgz";
-      sha256 = "0lhq9m8js55jlzmc2jiwk2q8nzlnarsh5cpjrnl2gznxaxmml0wi";
-      system = "mnas-graph";
-      asd = "mnas-graph";
-    });
-    systems = [ "mnas-graph/filter" ];
-    lispLibs = [  ];
-    meta = {
-      broken = true;
-    };
-  };
-  mnas-graph_slash_printer-viewer = {
-    pname = "mnas-graph_printer-viewer";
-    version = "20221106-git";
-    asds = [ "mnas-graph" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/mnas-graph/2022-11-06/mnas-graph-20221106-git.tgz";
-      sha256 = "0lhq9m8js55jlzmc2jiwk2q8nzlnarsh5cpjrnl2gznxaxmml0wi";
-      system = "mnas-graph";
-      asd = "mnas-graph";
-    });
-    systems = [ "mnas-graph/printer-viewer" ];
-    lispLibs = [  ];
-    meta = {
-      broken = true;
-    };
-  };
-  mnas-graph_slash_sample = {
-    pname = "mnas-graph_sample";
-    version = "20221106-git";
-    asds = [ "mnas-graph" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/mnas-graph/2022-11-06/mnas-graph-20221106-git.tgz";
-      sha256 = "0lhq9m8js55jlzmc2jiwk2q8nzlnarsh5cpjrnl2gznxaxmml0wi";
-      system = "mnas-graph";
-      asd = "mnas-graph";
-    });
-    systems = [ "mnas-graph/sample" ];
-    lispLibs = [ (getAttr "mnas-hash-table" pkgs) (getAttr "mnas-string" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  mnas-graph_slash_tests = {
-    pname = "mnas-graph_tests";
-    version = "20221106-git";
-    asds = [ "mnas-graph" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/mnas-graph/2022-11-06/mnas-graph-20221106-git.tgz";
-      sha256 = "0lhq9m8js55jlzmc2jiwk2q8nzlnarsh5cpjrnl2gznxaxmml0wi";
-      system = "mnas-graph";
-      asd = "mnas-graph";
-    });
-    systems = [ "mnas-graph/tests" ];
-    lispLibs = [ (getAttr "fiveam" pkgs) (getAttr "mnas-graph" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  mnas-graph_slash_view = {
-    pname = "mnas-graph_view";
-    version = "20221106-git";
-    asds = [ "mnas-graph" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/mnas-graph/2022-11-06/mnas-graph-20221106-git.tgz";
-      sha256 = "0lhq9m8js55jlzmc2jiwk2q8nzlnarsh5cpjrnl2gznxaxmml0wi";
-      system = "mnas-graph";
-      asd = "mnas-graph";
-    });
-    systems = [ "mnas-graph/view" ];
-    lispLibs = [ (getAttr "mnas-hash-table" pkgs) (getAttr "mnas-string" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  mnas-hash-table = {
-    pname = "mnas-hash-table";
-    version = "20220707-git";
-    asds = [ "mnas-hash-table" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/mnas-hash-table/2022-07-07/mnas-hash-table-20220707-git.tgz";
-      sha256 = "0wgv04zi4dx5d7cmmwkkzf5qf7ik3rlmnxnivkp9ya98gz2lr0rv";
-      system = "mnas-hash-table";
-      asd = "mnas-hash-table";
-    });
-    systems = [ "mnas-hash-table" ];
-    lispLibs = [  ];
-  };
-  mnas-hash-table_slash_docs = {
-    pname = "mnas-hash-table_docs";
-    version = "20220707-git";
-    asds = [ "mnas-hash-table" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/mnas-hash-table/2022-07-07/mnas-hash-table-20220707-git.tgz";
-      sha256 = "0wgv04zi4dx5d7cmmwkkzf5qf7ik3rlmnxnivkp9ya98gz2lr0rv";
-      system = "mnas-hash-table";
-      asd = "mnas-hash-table";
-    });
-    systems = [ "mnas-hash-table/docs" ];
-    lispLibs = [ (getAttr "codex" pkgs) (getAttr "mnas-hash-table" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  mnas-hash-table_slash_tests = {
-    pname = "mnas-hash-table_tests";
-    version = "20220707-git";
-    asds = [ "mnas-hash-table" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/mnas-hash-table/2022-07-07/mnas-hash-table-20220707-git.tgz";
-      sha256 = "0wgv04zi4dx5d7cmmwkkzf5qf7ik3rlmnxnivkp9ya98gz2lr0rv";
-      system = "mnas-hash-table";
-      asd = "mnas-hash-table";
-    });
-    systems = [ "mnas-hash-table/tests" ];
-    lispLibs = [ (getAttr "fiveam" pkgs) (getAttr "mnas-hash-table" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  mnas-package = {
-    pname = "mnas-package";
-    version = "20221106-git";
-    asds = [ "mnas-package" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/mnas-package/2022-11-06/mnas-package-20221106-git.tgz";
-      sha256 = "1x5csk262qghdg1a6vjsn8khqjkm7rpmzn5mpp0hkid88gdi9acj";
-      system = "mnas-package";
-      asd = "mnas-package";
-    });
-    systems = [ "mnas-package" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "closer-mop" pkgs) (getAttr "inferior-shell" pkgs) (getAttr "mnas-graph" pkgs) (getAttr "mnas-string" pkgs) (getAttr "slynk" pkgs) ];
-  };
-  mnas-package_slash_doc = {
-    pname = "mnas-package_doc";
-    version = "20221106-git";
-    asds = [ "mnas-package" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/mnas-package/2022-11-06/mnas-package-20221106-git.tgz";
-      sha256 = "1x5csk262qghdg1a6vjsn8khqjkm7rpmzn5mpp0hkid88gdi9acj";
-      system = "mnas-package";
-      asd = "mnas-package";
-    });
-    systems = [ "mnas-package/doc" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "closer-mop" pkgs) (getAttr "slynk" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  mnas-package_slash_docs = {
-    pname = "mnas-package_docs";
-    version = "20221106-git";
-    asds = [ "mnas-package" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/mnas-package/2022-11-06/mnas-package-20221106-git.tgz";
-      sha256 = "1x5csk262qghdg1a6vjsn8khqjkm7rpmzn5mpp0hkid88gdi9acj";
-      system = "mnas-package";
-      asd = "mnas-package";
-    });
-    systems = [ "mnas-package/docs" ];
-    lispLibs = [ (getAttr "codex" pkgs) (getAttr "mnas-package" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  mnas-package_slash_example = {
-    pname = "mnas-package_example";
-    version = "20221106-git";
-    asds = [ "mnas-package" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/mnas-package/2022-11-06/mnas-package-20221106-git.tgz";
-      sha256 = "1x5csk262qghdg1a6vjsn8khqjkm7rpmzn5mpp0hkid88gdi9acj";
-      system = "mnas-package";
-      asd = "mnas-package";
-    });
-    systems = [ "mnas-package/example" ];
-    lispLibs = [  ];
-    meta = {
-      broken = true;
-    };
-  };
-  mnas-package_slash_make = {
-    pname = "mnas-package_make";
-    version = "20221106-git";
-    asds = [ "mnas-package" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/mnas-package/2022-11-06/mnas-package-20221106-git.tgz";
-      sha256 = "1x5csk262qghdg1a6vjsn8khqjkm7rpmzn5mpp0hkid88gdi9acj";
-      system = "mnas-package";
-      asd = "mnas-package";
-    });
-    systems = [ "mnas-package/make" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "closer-mop" pkgs) (getAttr "mnas-graph" pkgs) (getAttr "slynk" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  mnas-package_slash_obj = {
-    pname = "mnas-package_obj";
-    version = "20221106-git";
-    asds = [ "mnas-package" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/mnas-package/2022-11-06/mnas-package-20221106-git.tgz";
-      sha256 = "1x5csk262qghdg1a6vjsn8khqjkm7rpmzn5mpp0hkid88gdi9acj";
-      system = "mnas-package";
-      asd = "mnas-package";
-    });
-    systems = [ "mnas-package/obj" ];
-    lispLibs = [ (getAttr "closer-mop" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  mnas-package_slash_pkg = {
-    pname = "mnas-package_pkg";
-    version = "20221106-git";
-    asds = [ "mnas-package" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/mnas-package/2022-11-06/mnas-package-20221106-git.tgz";
-      sha256 = "1x5csk262qghdg1a6vjsn8khqjkm7rpmzn5mpp0hkid88gdi9acj";
-      system = "mnas-package";
-      asd = "mnas-package";
-    });
-    systems = [ "mnas-package/pkg" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "closer-mop" pkgs) (getAttr "slynk" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  mnas-package_slash_sec = {
-    pname = "mnas-package_sec";
-    version = "20221106-git";
-    asds = [ "mnas-package" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/mnas-package/2022-11-06/mnas-package-20221106-git.tgz";
-      sha256 = "1x5csk262qghdg1a6vjsn8khqjkm7rpmzn5mpp0hkid88gdi9acj";
-      system = "mnas-package";
-      asd = "mnas-package";
-    });
-    systems = [ "mnas-package/sec" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "closer-mop" pkgs) (getAttr "mnas-graph" pkgs) (getAttr "mnas-string" pkgs) (getAttr "slynk" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  mnas-package_slash_sys = {
-    pname = "mnas-package_sys";
-    version = "20221106-git";
-    asds = [ "mnas-package" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/mnas-package/2022-11-06/mnas-package-20221106-git.tgz";
-      sha256 = "1x5csk262qghdg1a6vjsn8khqjkm7rpmzn5mpp0hkid88gdi9acj";
-      system = "mnas-package";
-      asd = "mnas-package";
-    });
-    systems = [ "mnas-package/sys" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  mnas-package_slash_tests = {
-    pname = "mnas-package_tests";
-    version = "20221106-git";
-    asds = [ "mnas-package" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/mnas-package/2022-11-06/mnas-package-20221106-git.tgz";
-      sha256 = "1x5csk262qghdg1a6vjsn8khqjkm7rpmzn5mpp0hkid88gdi9acj";
-      system = "mnas-package";
-      asd = "mnas-package";
-    });
-    systems = [ "mnas-package/tests" ];
-    lispLibs = [ (getAttr "fiveam" pkgs) (getAttr "mnas-package" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  mnas-package_slash_view = {
-    pname = "mnas-package_view";
-    version = "20221106-git";
-    asds = [ "mnas-package" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/mnas-package/2022-11-06/mnas-package-20221106-git.tgz";
-      sha256 = "1x5csk262qghdg1a6vjsn8khqjkm7rpmzn5mpp0hkid88gdi9acj";
-      system = "mnas-package";
-      asd = "mnas-package";
-    });
-    systems = [ "mnas-package/view" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "closer-mop" pkgs) (getAttr "mnas-graph" pkgs) (getAttr "slynk" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  mnas-path = {
-    pname = "mnas-path";
-    version = "20220707-git";
-    asds = [ "mnas-path" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/mnas-path/2022-07-07/mnas-path-20220707-git.tgz";
-      sha256 = "07lhn8ak3dmr48l1kaf4xbxmrz33p8bvs1fz8z3jvjywz23zl0cs";
-      system = "mnas-path";
-      asd = "mnas-path";
-    });
-    systems = [ "mnas-path" ];
-    lispLibs = [ (getAttr "cl-fad" pkgs) ];
-  };
-  mnas-path_slash_docs = {
-    pname = "mnas-path_docs";
-    version = "20220707-git";
-    asds = [ "mnas-path" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/mnas-path/2022-07-07/mnas-path-20220707-git.tgz";
-      sha256 = "07lhn8ak3dmr48l1kaf4xbxmrz33p8bvs1fz8z3jvjywz23zl0cs";
-      system = "mnas-path";
-      asd = "mnas-path";
-    });
-    systems = [ "mnas-path/docs" ];
-    lispLibs = [ (getAttr "codex" pkgs) (getAttr "mnas-package" pkgs) (getAttr "mnas-path" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  mnas-string = {
-    pname = "mnas-string";
-    version = "20220707-git";
-    asds = [ "mnas-string" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/mnas-string/2022-07-07/mnas-string-20220707-git.tgz";
-      sha256 = "1aqcgig7ydaw8ckmh5kpplrjqf25xmx9sa2k2p21p64sii7gnyfn";
-      system = "mnas-string";
-      asd = "mnas-string";
-    });
-    systems = [ "mnas-string" ];
-    lispLibs = [ (getAttr "cl-ppcre" pkgs) ];
-  };
-  mnas-string_slash_core = {
-    pname = "mnas-string_core";
-    version = "20220707-git";
-    asds = [ "mnas-string" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/mnas-string/2022-07-07/mnas-string-20220707-git.tgz";
-      sha256 = "1aqcgig7ydaw8ckmh5kpplrjqf25xmx9sa2k2p21p64sii7gnyfn";
-      system = "mnas-string";
-      asd = "mnas-string";
-    });
-    systems = [ "mnas-string/core" ];
-    lispLibs = [ (getAttr "cl-ppcre" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  mnas-string_slash_db = {
-    pname = "mnas-string_db";
-    version = "20220707-git";
-    asds = [ "mnas-string" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/mnas-string/2022-07-07/mnas-string-20220707-git.tgz";
-      sha256 = "1aqcgig7ydaw8ckmh5kpplrjqf25xmx9sa2k2p21p64sii7gnyfn";
-      system = "mnas-string";
-      asd = "mnas-string";
-    });
-    systems = [ "mnas-string/db" ];
-    lispLibs = [ (getAttr "cl-ppcre" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  mnas-string_slash_docs = {
-    pname = "mnas-string_docs";
-    version = "20220707-git";
-    asds = [ "mnas-string" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/mnas-string/2022-07-07/mnas-string-20220707-git.tgz";
-      sha256 = "1aqcgig7ydaw8ckmh5kpplrjqf25xmx9sa2k2p21p64sii7gnyfn";
-      system = "mnas-string";
-      asd = "mnas-string";
-    });
-    systems = [ "mnas-string/docs" ];
-    lispLibs = [ (getAttr "codex" pkgs) (getAttr "mnas-package" pkgs) (getAttr "mnas-string" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  mnas-string_slash_parse = {
-    pname = "mnas-string_parse";
-    version = "20220707-git";
-    asds = [ "mnas-string" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/mnas-string/2022-07-07/mnas-string-20220707-git.tgz";
-      sha256 = "1aqcgig7ydaw8ckmh5kpplrjqf25xmx9sa2k2p21p64sii7gnyfn";
-      system = "mnas-string";
-      asd = "mnas-string";
-    });
-    systems = [ "mnas-string/parse" ];
-    lispLibs = [ (getAttr "cl-ppcre" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  mnas-string_slash_print = {
-    pname = "mnas-string_print";
-    version = "20220707-git";
-    asds = [ "mnas-string" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/mnas-string/2022-07-07/mnas-string-20220707-git.tgz";
-      sha256 = "1aqcgig7ydaw8ckmh5kpplrjqf25xmx9sa2k2p21p64sii7gnyfn";
-      system = "mnas-string";
-      asd = "mnas-string";
-    });
-    systems = [ "mnas-string/print" ];
-    lispLibs = [  ];
-    meta = {
-      broken = true;
-    };
-  };
-  mnas-string_slash_tests = {
-    pname = "mnas-string_tests";
-    version = "20220707-git";
-    asds = [ "mnas-string" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/mnas-string/2022-07-07/mnas-string-20220707-git.tgz";
-      sha256 = "1aqcgig7ydaw8ckmh5kpplrjqf25xmx9sa2k2p21p64sii7gnyfn";
-      system = "mnas-string";
-      asd = "mnas-string";
-    });
-    systems = [ "mnas-string/tests" ];
-    lispLibs = [ (getAttr "fiveam" pkgs) (getAttr "mnas-string" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  mnas-string_slash_translit = {
-    pname = "mnas-string_translit";
-    version = "20220707-git";
-    asds = [ "mnas-string" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/mnas-string/2022-07-07/mnas-string-20220707-git.tgz";
-      sha256 = "1aqcgig7ydaw8ckmh5kpplrjqf25xmx9sa2k2p21p64sii7gnyfn";
-      system = "mnas-string";
-      asd = "mnas-string";
-    });
-    systems = [ "mnas-string/translit" ];
-    lispLibs = [  ];
-    meta = {
-      broken = true;
-    };
-  };
-  mnst-relay = {
-    pname = "mnst-relay";
-    version = "20210807-git";
-    asds = [ "mnst-relay" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-nst/2021-08-07/cl-nst-20210807-git.tgz";
-      sha256 = "1hf3r6pqbnd9vsd1i24qmz928kia72hdgmiafiwb6jw1hmj3r6ga";
-      system = "mnst-relay";
-      asd = "mnst-relay";
-    });
-    systems = [ "mnst-relay" ];
-    lispLibs = [ (getAttr "asdf-nst" pkgs) (getAttr "nst" pkgs) (getAttr "nst-selftest-utils" pkgs) ];
-  };
-  mockingbird = {
-    pname = "mockingbird";
-    version = "20211020-git";
-    asds = [ "mockingbird" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/mockingbird/2021-10-20/mockingbird-20211020-git.tgz";
-      sha256 = "1n1mxl2qk7g63z92d943ysn12axw0bx5dvw0cmm3cs1hjpx5rdly";
-      system = "mockingbird";
-      asd = "mockingbird";
-    });
-    systems = [ "mockingbird" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "closer-mop" pkgs) (getAttr "fare-utils" pkgs) (getAttr "trivial-arguments" pkgs) ];
-  };
-  mockingbird-test = {
-    pname = "mockingbird-test";
-    version = "20211020-git";
-    asds = [ "mockingbird-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/mockingbird/2021-10-20/mockingbird-20211020-git.tgz";
-      sha256 = "1n1mxl2qk7g63z92d943ysn12axw0bx5dvw0cmm3cs1hjpx5rdly";
-      system = "mockingbird-test";
-      asd = "mockingbird-test";
-    });
-    systems = [ "mockingbird-test" ];
-    lispLibs = [ (getAttr "mockingbird" pkgs) (getAttr "prove" pkgs) (getAttr "prove-asdf" pkgs) ];
-  };
-  modest-config = {
-    pname = "modest-config";
-    version = "20180228-git";
-    asds = [ "modest-config" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/modest-config/2018-02-28/modest-config-20180228-git.tgz";
-      sha256 = "0ali9lvg7ngzmpgaxmbc4adp4djznavbywiig8x94c2xwicvjh83";
-      system = "modest-config";
-      asd = "modest-config";
-    });
-    systems = [ "modest-config" ];
-    lispLibs = [  ];
-  };
-  modest-config-test = {
-    pname = "modest-config-test";
-    version = "20180228-git";
-    asds = [ "modest-config-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/modest-config/2018-02-28/modest-config-20180228-git.tgz";
-      sha256 = "0ali9lvg7ngzmpgaxmbc4adp4djznavbywiig8x94c2xwicvjh83";
-      system = "modest-config-test";
-      asd = "modest-config-test";
-    });
-    systems = [ "modest-config-test" ];
-    lispLibs = [ (getAttr "modest-config" pkgs) (getAttr "prove" pkgs) (getAttr "prove-asdf" pkgs) ];
-  };
-  modf = {
-    pname = "modf";
-    version = "20200925-git";
-    asds = [ "modf" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/modf/2020-09-25/modf-20200925-git.tgz";
-      sha256 = "1aap7ldy7lv942khp026pgndgdzfkkqa9xcq1ykinrmflrgdazay";
-      system = "modf";
-      asd = "modf";
-    });
-    systems = [ "modf" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "closer-mop" pkgs) (getAttr "iterate" pkgs) ];
-  };
-  modf-fset = {
-    pname = "modf-fset";
-    version = "20150608-git";
-    asds = [ "modf-fset" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/modf-fset/2015-06-08/modf-fset-20150608-git.tgz";
-      sha256 = "0xdlwsw3b31l9c6db7rgvikn42ncqk98s45zcq116f51ph3dr95y";
-      system = "modf-fset";
-      asd = "modf-fset";
-    });
-    systems = [ "modf-fset" ];
-    lispLibs = [ (getAttr "fset" pkgs) (getAttr "modf" pkgs) ];
-  };
-  modf-fset-test = {
-    pname = "modf-fset-test";
-    version = "20150608-git";
-    asds = [ "modf-fset-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/modf-fset/2015-06-08/modf-fset-20150608-git.tgz";
-      sha256 = "0xdlwsw3b31l9c6db7rgvikn42ncqk98s45zcq116f51ph3dr95y";
-      system = "modf-fset-test";
-      asd = "modf-fset-test";
-    });
-    systems = [ "modf-fset-test" ];
-    lispLibs = [ (getAttr "modf" pkgs) (getAttr "modf-fset" pkgs) (getAttr "stefil" pkgs) ];
-  };
-  modf-test = {
-    pname = "modf-test";
-    version = "20200925-git";
-    asds = [ "modf-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/modf/2020-09-25/modf-20200925-git.tgz";
-      sha256 = "1aap7ldy7lv942khp026pgndgdzfkkqa9xcq1ykinrmflrgdazay";
-      system = "modf-test";
-      asd = "modf-test";
-    });
-    systems = [ "modf-test" ];
-    lispLibs = [ (getAttr "iterate" pkgs) (getAttr "modf" pkgs) (getAttr "stefil" pkgs) ];
-  };
-  modlisp = {
-    pname = "modlisp";
-    version = "20150923-git";
-    asds = [ "modlisp" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-modlisp/2015-09-23/cl-modlisp-20150923-git.tgz";
-      sha256 = "14gfhhy8blyrhpb1jk17bq4vazgwmzgcx3misw48ja77x17bl1zf";
-      system = "modlisp";
-      asd = "modlisp";
-    });
-    systems = [ "modlisp" ];
-    lispLibs = [ (getAttr "kmrcl" pkgs) ];
-  };
-  modularize = {
-    pname = "modularize";
-    version = "20200427-git";
-    asds = [ "modularize" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/modularize/2020-04-27/modularize-20200427-git.tgz";
-      sha256 = "1zys29rfkb649rkgl3snxhajk8d5yf7ryxkrwy020kwdh7zdsg7d";
-      system = "modularize";
-      asd = "modularize";
-    });
-    systems = [ "modularize" ];
-    lispLibs = [ (getAttr "documentation-utils" pkgs) (getAttr "trivial-package-local-nicknames" pkgs) ];
-  };
-  modularize-hooks = {
-    pname = "modularize-hooks";
-    version = "20190710-git";
-    asds = [ "modularize-hooks" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/modularize-hooks/2019-07-10/modularize-hooks-20190710-git.tgz";
-      sha256 = "12kjvin8hxidwkzfb7inqv5b6g5qzcssnj9wc497v2ixc56fqdz7";
-      system = "modularize-hooks";
-      asd = "modularize-hooks";
-    });
-    systems = [ "modularize-hooks" ];
-    lispLibs = [ (getAttr "closer-mop" pkgs) (getAttr "lambda-fiddle" pkgs) (getAttr "modularize" pkgs) (getAttr "trivial-arguments" pkgs) ];
-  };
-  modularize-interfaces = {
-    pname = "modularize-interfaces";
-    version = "20210630-git";
-    asds = [ "modularize-interfaces" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/modularize-interfaces/2021-06-30/modularize-interfaces-20210630-git.tgz";
-      sha256 = "1jl11ffkrah3553wzysmxanhrzv3rnzi5x11ll626baf69im0v7x";
-      system = "modularize-interfaces";
-      asd = "modularize-interfaces";
-    });
-    systems = [ "modularize-interfaces" ];
-    lispLibs = [ (getAttr "lambda-fiddle" pkgs) (getAttr "modularize" pkgs) (getAttr "trivial-arguments" pkgs) (getAttr "trivial-indent" pkgs) ];
-  };
-  modularize-test-module = {
-    pname = "modularize-test-module";
-    version = "20200427-git";
-    asds = [ "modularize-test-module" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/modularize/2020-04-27/modularize-20200427-git.tgz";
-      sha256 = "1zys29rfkb649rkgl3snxhajk8d5yf7ryxkrwy020kwdh7zdsg7d";
-      system = "modularize-test-module";
-      asd = "modularize-test-module";
-    });
-    systems = [ "modularize-test-module" ];
-    lispLibs = [ (getAttr "modularize" pkgs) ];
-  };
-  moira = {
-    pname = "moira";
-    version = "20171130-git";
-    asds = [ "moira" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/moira/2017-11-30/moira-20171130-git.tgz";
-      sha256 = "0r6hvq8j04y1i85f8jwhhafylgfrkg8c1z5746nsbv0v0348sf5h";
-      system = "moira";
-      asd = "moira";
-    });
-    systems = [ "moira" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "bordeaux-threads" pkgs) (getAttr "osicat" pkgs) (getAttr "serapeum" pkgs) (getAttr "trivial-features" pkgs) (getAttr "trivial-garbage" pkgs) ];
-  };
-  monkeylib-html = {
-    pname = "monkeylib-html";
-    version = "20180228-git";
-    asds = [ "monkeylib-html" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/monkeylib-html/2018-02-28/monkeylib-html-20180228-git.tgz";
-      sha256 = "11a778ynyb8mhiy9fkpyg2x1p53hi1i9mry9gfin2r28mjgwj096";
-      system = "monkeylib-html";
-      asd = "monkeylib-html";
-    });
-    systems = [ "monkeylib-html" ];
-    lispLibs = [ (getAttr "com_dot_gigamonkeys_dot_macro-utilities" pkgs) (getAttr "com_dot_gigamonkeys_dot_pathnames" pkgs) (getAttr "com_dot_gigamonkeys_dot_test-framework" pkgs) (getAttr "monkeylib-text-languages" pkgs) (getAttr "monkeylib-text-output" pkgs) (getAttr "com_dot_gigamonkeys_dot_utilities" pkgs) ];
-  };
-  monkeylib-markup-html = {
-    pname = "monkeylib-markup-html";
-    version = "20120208-git";
-    asds = [ "monkeylib-markup-html" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/monkeylib-markup-html/2012-02-08/monkeylib-markup-html-20120208-git.tgz";
-      sha256 = "1kwnlb7dka9bqyc8a06lbsap8j83kdayk4m9a1m3mazjgaxlpv2a";
-      system = "monkeylib-markup-html";
-      asd = "monkeylib-markup-html";
-    });
-    systems = [ "monkeylib-markup-html" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "monkeylib-html" pkgs) (getAttr "com_dot_gigamonkeys_dot_macro-utilities" pkgs) (getAttr "com_dot_gigamonkeys_dot_markup" pkgs) (getAttr "com_dot_gigamonkeys_dot_utilities" pkgs) ];
-  };
-  monkeylib-text-languages = {
-    pname = "monkeylib-text-languages";
-    version = "20111203-git";
-    asds = [ "monkeylib-text-languages" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/monkeylib-text-languages/2011-12-03/monkeylib-text-languages-20111203-git.tgz";
-      sha256 = "1f6hb3r2s5phz5z4rv3llyfi30vbxlq9qpipsq9vppmw51fvdsdk";
-      system = "monkeylib-text-languages";
-      asd = "monkeylib-text-languages";
-    });
-    systems = [ "monkeylib-text-languages" ];
-    lispLibs = [ (getAttr "com_dot_gigamonkeys_dot_macro-utilities" pkgs) (getAttr "monkeylib-text-output" pkgs) ];
-  };
-  monkeylib-text-output = {
-    pname = "monkeylib-text-output";
-    version = "20111203-git";
-    asds = [ "monkeylib-text-output" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/monkeylib-text-output/2011-12-03/monkeylib-text-output-20111203-git.tgz";
-      sha256 = "0lygfxap2ppxxi0sbz8lig1h878ad84jwbp3c895r7h9svjh1ffm";
-      system = "monkeylib-text-output";
-      asd = "monkeylib-text-output";
-    });
-    systems = [ "monkeylib-text-output" ];
-    lispLibs = [ (getAttr "com_dot_gigamonkeys_dot_macro-utilities" pkgs) (getAttr "com_dot_gigamonkeys_dot_pathnames" pkgs) (getAttr "com_dot_gigamonkeys_dot_test-framework" pkgs) (getAttr "com_dot_gigamonkeys_dot_utilities" pkgs) ];
-  };
-  monomyth = {
-    pname = "monomyth";
-    version = "20211230-git";
-    asds = [ "monomyth" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/monomyth/2021-12-30/monomyth-20211230-git.tgz";
-      sha256 = "162g6fr7r2qdvfxhjgvq70p0grbvlllxih8g753jby2zcazb6syy";
-      system = "monomyth";
-      asd = "monomyth";
-    });
-    systems = [ "monomyth" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "babel" pkgs) (getAttr "cl-algebraic-data-type" pkgs) (getAttr "cl-rabbit" pkgs) (getAttr "cl-store" pkgs) (getAttr "clack" pkgs) (getAttr "closer-mop" pkgs) (getAttr "flexi-streams" pkgs) (getAttr "fset" pkgs) (getAttr "iterate" pkgs) (getAttr "jonathan" pkgs) (getAttr "ningle" pkgs) (getAttr "optima" pkgs) (getAttr "pzmq" pkgs) (getAttr "rutils" pkgs) (getAttr "stmx" pkgs) (getAttr "trivia" pkgs) (getAttr "uuid" pkgs) (getAttr "verbose" pkgs) (getAttr "woo" pkgs) ];
-  };
-  monomyth_slash_basic-example-master = {
-    pname = "monomyth_basic-example-master";
-    version = "20211230-git";
-    asds = [ "monomyth" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/monomyth/2021-12-30/monomyth-20211230-git.tgz";
-      sha256 = "162g6fr7r2qdvfxhjgvq70p0grbvlllxih8g753jby2zcazb6syy";
-      system = "monomyth";
-      asd = "monomyth";
-    });
-    systems = [ "monomyth/basic-example-master" ];
-    lispLibs = [ (getAttr "monomyth" pkgs) (getAttr "rove" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  monomyth_slash_basic-example-worker = {
-    pname = "monomyth_basic-example-worker";
-    version = "20211230-git";
-    asds = [ "monomyth" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/monomyth/2021-12-30/monomyth-20211230-git.tgz";
-      sha256 = "162g6fr7r2qdvfxhjgvq70p0grbvlllxih8g753jby2zcazb6syy";
-      system = "monomyth";
-      asd = "monomyth";
-    });
-    systems = [ "monomyth/basic-example-worker" ];
-    lispLibs = [ (getAttr "monomyth" pkgs) (getAttr "rove" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  monomyth_slash_tests = {
-    pname = "monomyth_tests";
-    version = "20211230-git";
-    asds = [ "monomyth" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/monomyth/2021-12-30/monomyth-20211230-git.tgz";
-      sha256 = "162g6fr7r2qdvfxhjgvq70p0grbvlllxih8g753jby2zcazb6syy";
-      system = "monomyth";
-      asd = "monomyth";
-    });
-    systems = [ "monomyth/tests" ];
-    lispLibs = [ (getAttr "cl-mock" pkgs) (getAttr "dexador" pkgs) (getAttr "lparallel" pkgs) (getAttr "monomyth" pkgs) (getAttr "quri" pkgs) (getAttr "rove" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  montezuma = {
-    pname = "montezuma";
-    version = "20180228-git";
-    asds = [ "montezuma" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/montezuma/2018-02-28/montezuma-20180228-git.tgz";
-      sha256 = "0svmvsbsirydk3c1spzfvj8qmkzcs9i69anpfvk1843i62wb7x2c";
-      system = "montezuma";
-      asd = "montezuma";
-    });
-    systems = [ "montezuma" ];
-    lispLibs = [ (getAttr "babel" pkgs) (getAttr "cl-fad" pkgs) (getAttr "cl-ppcre" pkgs) ];
-  };
-  montezuma-indexfiles = {
-    pname = "montezuma-indexfiles";
-    version = "20180228-git";
-    asds = [ "montezuma-indexfiles" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/montezuma/2018-02-28/montezuma-20180228-git.tgz";
-      sha256 = "0svmvsbsirydk3c1spzfvj8qmkzcs9i69anpfvk1843i62wb7x2c";
-      system = "montezuma-indexfiles";
-      asd = "montezuma-indexfiles";
-    });
-    systems = [ "montezuma-indexfiles" ];
-    lispLibs = [ (getAttr "cl-fad" pkgs) (getAttr "montezuma" pkgs) ];
-  };
-  montezuma-tests = {
-    pname = "montezuma-tests";
-    version = "20180228-git";
-    asds = [ "montezuma-tests" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/montezuma/2018-02-28/montezuma-20180228-git.tgz";
-      sha256 = "0svmvsbsirydk3c1spzfvj8qmkzcs9i69anpfvk1843i62wb7x2c";
-      system = "montezuma-tests";
-      asd = "montezuma";
-    });
-    systems = [ "montezuma-tests" ];
-    lispLibs = [ (getAttr "montezuma" pkgs) (getAttr "trivial-timeout" pkgs) ];
-  };
-  moptilities = {
-    pname = "moptilities";
-    version = "20170403-git";
-    asds = [ "moptilities" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/moptilities/2017-04-03/moptilities-20170403-git.tgz";
-      sha256 = "1q12bqjbj47lx98yim1kfnnhgfhkl80102fkgp9pdqxg0fp6g5fc";
-      system = "moptilities";
-      asd = "moptilities";
-    });
-    systems = [ "moptilities" ];
-    lispLibs = [ (getAttr "closer-mop" pkgs) ];
-  };
-  moptilities-test = {
-    pname = "moptilities-test";
-    version = "20170403-git";
-    asds = [ "moptilities-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/moptilities/2017-04-03/moptilities-20170403-git.tgz";
-      sha256 = "1q12bqjbj47lx98yim1kfnnhgfhkl80102fkgp9pdqxg0fp6g5fc";
-      system = "moptilities-test";
-      asd = "moptilities-test";
-    });
-    systems = [ "moptilities-test" ];
-    lispLibs = [ (getAttr "lift" pkgs) (getAttr "moptilities" pkgs) ];
-  };
-  more-cffi = {
-    pname = "more-cffi";
-    version = "20221106-git";
-    asds = [ "more-cffi" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/more-cffi/2022-11-06/more-cffi-20221106-git.tgz";
-      sha256 = "0bnpz5c1c6paifdy2krrw2plz1w2rb90mghhip8154amwzgacm35";
-      system = "more-cffi";
-      asd = "more-cffi";
-    });
-    systems = [ "more-cffi" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cffi" pkgs) (getAttr "iterate" pkgs) ];
-  };
-  more-conditions = {
-    pname = "more-conditions";
-    version = "20180831-git";
-    asds = [ "more-conditions" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/more-conditions/2018-08-31/more-conditions-20180831-git.tgz";
-      sha256 = "1n0xbz0yiqn9dxf0ycm57wqvsr4gh2q4hs5fskjbv87c47d7l7zr";
-      system = "more-conditions";
-      asd = "more-conditions";
-    });
-    systems = [ "more-conditions" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "closer-mop" pkgs) ];
-  };
-  more-conditions_slash_test = {
-    pname = "more-conditions_test";
-    version = "20180831-git";
-    asds = [ "more-conditions" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/more-conditions/2018-08-31/more-conditions-20180831-git.tgz";
-      sha256 = "1n0xbz0yiqn9dxf0ycm57wqvsr4gh2q4hs5fskjbv87c47d7l7zr";
-      system = "more-conditions";
-      asd = "more-conditions";
-    });
-    systems = [ "more-conditions/test" ];
-    lispLibs = [ (getAttr "fiveam" pkgs) (getAttr "let-plus" pkgs) (getAttr "more-conditions" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  mp3-duration = {
-    pname = "mp3-duration";
-    version = "20160208-git";
-    asds = [ "mp3-duration" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/mp3-duration/2016-02-08/mp3-duration-20160208-git.tgz";
-      sha256 = "1mhn9g1kz2yan178m2adg0pz3dx2nmg7hq4gfmfz7lrlsxm08bs7";
-      system = "mp3-duration";
-      asd = "mp3-duration";
-    });
-    systems = [ "mp3-duration" ];
-    lispLibs = [  ];
-  };
-  mp3-duration-test = {
-    pname = "mp3-duration-test";
-    version = "20160208-git";
-    asds = [ "mp3-duration-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/mp3-duration/2016-02-08/mp3-duration-20160208-git.tgz";
-      sha256 = "1mhn9g1kz2yan178m2adg0pz3dx2nmg7hq4gfmfz7lrlsxm08bs7";
-      system = "mp3-duration-test";
-      asd = "mp3-duration-test";
-    });
-    systems = [ "mp3-duration-test" ];
-    lispLibs = [ (getAttr "mp3-duration" pkgs) (getAttr "prove" pkgs) (getAttr "prove-asdf" pkgs) ];
-  };
-  mpc = {
-    pname = "mpc";
-    version = "20160929-git";
-    asds = [ "mpc" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/mpc/2016-09-29/mpc-20160929-git.tgz";
-      sha256 = "1nig0v91m4ybcr19s50xijwv488qlma0b36zy6cric2y8wgclmsx";
-      system = "mpc";
-      asd = "mpc";
-    });
-    systems = [ "mpc" ];
-    lispLibs = [  ];
-  };
-  mpg123-ffi = {
-    pname = "mpg123-ffi";
-    version = "20151218-git";
-    asds = [ "mpg123-ffi" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/mixalot/2015-12-18/mixalot-20151218-git.tgz";
-      sha256 = "0kqx933k8kly4yhzvspizzki556s1lfd4zafap42jcsqqhr4i5q9";
-      system = "mpg123-ffi";
-      asd = "mpg123-ffi";
-    });
-    systems = [ "mpg123-ffi" ];
-    lispLibs = [ (getAttr "cffi" pkgs) ];
-  };
-  mra-wavelet-plot = {
-    pname = "mra-wavelet-plot";
-    version = "20181210-git";
-    asds = [ "mra-wavelet-plot" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/mra-wavelet-plot/2018-12-10/mra-wavelet-plot-20181210-git.tgz";
-      sha256 = "0d6sdgj1zvkliga9drsqnj4l748vbcwwz744ayq5nnvp5fvhnc29";
-      system = "mra-wavelet-plot";
-      asd = "mra-wavelet-plot";
-    });
-    systems = [ "mra-wavelet-plot" ];
-    lispLibs = [  ];
-  };
-  mssql = {
-    pname = "mssql";
-    version = "20210124-git";
-    asds = [ "mssql" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-mssql/2021-01-24/cl-mssql-20210124-git.tgz";
-      sha256 = "09i50adppgc1ybm3ka9vbindhwa2x29f9n3n0jkrryymdhb8zknm";
-      system = "mssql";
-      asd = "mssql";
-    });
-    systems = [ "mssql" ];
-    lispLibs = [ (getAttr "cffi" pkgs) (getAttr "garbage-pools" pkgs) (getAttr "iterate" pkgs) (getAttr "parse-number" pkgs) ];
-  };
-  mstrings = {
-    pname = "mstrings";
-    version = "20220707-git";
-    asds = [ "mstrings" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/mstrings/2022-07-07/mstrings-20220707-git.tgz";
-      sha256 = "0s1zqwnv9agvlp79gh7y06rmly56v8nm1l594rry9gzwvvx1jj1k";
-      system = "mstrings";
-      asd = "mstrings";
-    });
-    systems = [ "mstrings" ];
-    lispLibs = [ (getAttr "named-readtables" pkgs) ];
-  };
-  mstrings_slash_test = {
-    pname = "mstrings_test";
-    version = "20220707-git";
-    asds = [ "mstrings" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/mstrings/2022-07-07/mstrings-20220707-git.tgz";
-      sha256 = "0s1zqwnv9agvlp79gh7y06rmly56v8nm1l594rry9gzwvvx1jj1k";
-      system = "mstrings";
-      asd = "mstrings";
-    });
-    systems = [ "mstrings/test" ];
-    lispLibs = [ (getAttr "cl-syntax" pkgs) (getAttr "mstrings" pkgs) (getAttr "parachute" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  mt19937 = {
-    pname = "mt19937";
-    version = "1.1.1";
-    asds = [ "mt19937" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/mt19937/2011-02-19/mt19937-1.1.1.tgz";
-      sha256 = "0h02ssnncc760b68ipm0sbrzrbnllp6fqabvw98w43af08s36xlg";
-      system = "mt19937";
-      asd = "mt19937";
-    });
-    systems = [ "mt19937" ];
-    lispLibs = [  ];
-  };
-  mtif = {
-    pname = "mtif";
-    version = "20171130-git";
-    asds = [ "mtif" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/mtif/2017-11-30/mtif-20171130-git.tgz";
-      sha256 = "0fzlf0xawv579i4jp5l994d7m220py5j169klaj0l43frgxb4n7y";
-      system = "mtif";
-      asd = "mtif";
-    });
-    systems = [ "mtif" ];
-    lispLibs = [ (getAttr "cffi" pkgs) ];
-  };
-  mtlisp = {
-    pname = "mtlisp";
-    version = "20130615-git";
-    asds = [ "mtlisp" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/mtlisp/2013-06-15/mtlisp-20130615-git.tgz";
-      sha256 = "0qpbhiy2z2q7mf4lf2lpj66a13xj7bj0c584d1i7zi156s2hcnvs";
-      system = "mtlisp";
-      asd = "mtlisp";
-    });
-    systems = [ "mtlisp" ];
-    lispLibs = [ (getAttr "acl-compat" pkgs) ];
-  };
-  multilang-documentation = {
-    pname = "multilang-documentation";
-    version = "20190710-git";
-    asds = [ "multilang-documentation" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/multilang-documentation/2019-07-10/multilang-documentation-20190710-git.tgz";
-      sha256 = "13y5jskx8n2b7kimpfarr8v777w3b7zj5swg1b99nj3hk0843ixw";
-      system = "multilang-documentation";
-      asd = "multilang-documentation";
-    });
-    systems = [ "multilang-documentation" ];
-    lispLibs = [ (getAttr "documentation-utils" pkgs) (getAttr "language-codes" pkgs) (getAttr "system-locale" pkgs) ];
-  };
-  multilang-documentation-utils = {
-    pname = "multilang-documentation-utils";
-    version = "20190710-git";
-    asds = [ "multilang-documentation-utils" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/documentation-utils/2019-07-10/documentation-utils-20190710-git.tgz";
-      sha256 = "098qhkqskmmrh4wix34mawf7p5c87yql28r51r75yjxj577k5idq";
-      system = "multilang-documentation-utils";
-      asd = "multilang-documentation-utils";
-    });
-    systems = [ "multilang-documentation-utils" ];
-    lispLibs = [ (getAttr "documentation-utils" pkgs) (getAttr "multilang-documentation" pkgs) ];
-  };
-  multiple-value-variants = {
-    pname = "multiple-value-variants";
-    version = "1.0.1";
-    asds = [ "multiple-value-variants" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/multiple-value-variants/2014-08-26/multiple-value-variants-1.0.1.tgz";
-      sha256 = "0kb7bkgg2iri89ph2lcgfk57pf8h4r6471sn2jcyp5sz13g4f6yw";
-      system = "multiple-value-variants";
-      asd = "multiple-value-variants";
-    });
-    systems = [ "multiple-value-variants" ];
-    lispLibs = [ (getAttr "enhanced-multiple-value-bind" pkgs) (getAttr "map-bind" pkgs) (getAttr "positional-lambda" pkgs) ];
-  };
-  multiposter = {
-    pname = "multiposter";
-    version = "20221106-git";
-    asds = [ "multiposter" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/multiposter/2022-11-06/multiposter-20221106-git.tgz";
-      sha256 = "0c6ji1hg2i5gk60kijcyml2gvi23qyzr1byy08hjyvybajwwzza2";
-      system = "multiposter";
-      asd = "multiposter";
-    });
-    systems = [ "multiposter" ];
-    lispLibs = [ (getAttr "cl-ppcre" pkgs) (getAttr "documentation-utils" pkgs) ];
-  };
-  multiposter-git = {
-    pname = "multiposter-git";
-    version = "20221106-git";
-    asds = [ "multiposter-git" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/multiposter/2022-11-06/multiposter-20221106-git.tgz";
-      sha256 = "0c6ji1hg2i5gk60kijcyml2gvi23qyzr1byy08hjyvybajwwzza2";
-      system = "multiposter-git";
-      asd = "multiposter-git";
-    });
-    systems = [ "multiposter-git" ];
-    lispLibs = [ (getAttr "legit" pkgs) (getAttr "multiposter" pkgs) ];
-  };
-  multiposter-lichat = {
-    pname = "multiposter-lichat";
-    version = "20221106-git";
-    asds = [ "multiposter-lichat" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/multiposter/2022-11-06/multiposter-20221106-git.tgz";
-      sha256 = "0c6ji1hg2i5gk60kijcyml2gvi23qyzr1byy08hjyvybajwwzza2";
-      system = "multiposter-lichat";
-      asd = "multiposter-lichat";
-    });
-    systems = [ "multiposter-lichat" ];
-    lispLibs = [ (getAttr "cl-base64" pkgs) (getAttr "lichat-tcp-client" pkgs) (getAttr "multiposter" pkgs) (getAttr "trivial-mimes" pkgs) ];
-  };
-  multiposter-mastodon = {
-    pname = "multiposter-mastodon";
-    version = "20221106-git";
-    asds = [ "multiposter-mastodon" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/multiposter/2022-11-06/multiposter-20221106-git.tgz";
-      sha256 = "0c6ji1hg2i5gk60kijcyml2gvi23qyzr1byy08hjyvybajwwzza2";
-      system = "multiposter-mastodon";
-      asd = "multiposter-mastodon";
-    });
-    systems = [ "multiposter-mastodon" ];
-    lispLibs = [ (getAttr "multiposter" pkgs) (getAttr "tooter" pkgs) ];
-  };
-  multiposter-studio = {
-    pname = "multiposter-studio";
-    version = "20221106-git";
-    asds = [ "multiposter-studio" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/multiposter/2022-11-06/multiposter-20221106-git.tgz";
-      sha256 = "0c6ji1hg2i5gk60kijcyml2gvi23qyzr1byy08hjyvybajwwzza2";
-      system = "multiposter-studio";
-      asd = "multiposter-studio";
-    });
-    systems = [ "multiposter-studio" ];
-    lispLibs = [ (getAttr "multiposter" pkgs) (getAttr "north-dexador" pkgs) (getAttr "studio-client" pkgs) ];
-  };
-  multiposter-tumblr = {
-    pname = "multiposter-tumblr";
-    version = "20221106-git";
-    asds = [ "multiposter-tumblr" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/multiposter/2022-11-06/multiposter-20221106-git.tgz";
-      sha256 = "0c6ji1hg2i5gk60kijcyml2gvi23qyzr1byy08hjyvybajwwzza2";
-      system = "multiposter-tumblr";
-      asd = "multiposter-tumblr";
-    });
-    systems = [ "multiposter-tumblr" ];
-    lispLibs = [ (getAttr "humbler" pkgs) (getAttr "multiposter" pkgs) (getAttr "north-dexador" pkgs) ];
-  };
-  multiposter-twitter = {
-    pname = "multiposter-twitter";
-    version = "20221106-git";
-    asds = [ "multiposter-twitter" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/multiposter/2022-11-06/multiposter-20221106-git.tgz";
-      sha256 = "0c6ji1hg2i5gk60kijcyml2gvi23qyzr1byy08hjyvybajwwzza2";
-      system = "multiposter-twitter";
-      asd = "multiposter-twitter";
-    });
-    systems = [ "multiposter-twitter" ];
-    lispLibs = [ (getAttr "chirp" pkgs) (getAttr "multiposter" pkgs) ];
-  };
-  multival-plist = {
-    pname = "multival-plist";
-    version = "20120305-git";
-    asds = [ "multival-plist" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/multival-plist/2012-03-05/multival-plist-20120305-git.tgz";
-      sha256 = "0cfca0qvngbvs9v4z8qpzr6wsjvf01jzaszagmasa4zkvmjycx1b";
-      system = "multival-plist";
-      asd = "multival-plist";
-    });
-    systems = [ "multival-plist" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cl-annot" pkgs) (getAttr "cl-syntax-annot" pkgs) (getAttr "trivial-types" pkgs) ];
-  };
-  multival-plist-test = {
-    pname = "multival-plist-test";
-    version = "20120305-git";
-    asds = [ "multival-plist-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/multival-plist/2012-03-05/multival-plist-20120305-git.tgz";
-      sha256 = "0cfca0qvngbvs9v4z8qpzr6wsjvf01jzaszagmasa4zkvmjycx1b";
-      system = "multival-plist-test";
-      asd = "multival-plist-test";
-    });
-    systems = [ "multival-plist-test" ];
-    lispLibs = [ (getAttr "multival-plist" pkgs) (getAttr "cl-test-more" pkgs) ];
-  };
-  music-spelling = {
-    pname = "music-spelling";
-    version = "20221106-git";
-    asds = [ "music-spelling" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/music-spelling/2022-11-06/music-spelling-20221106-git.tgz";
-      sha256 = "1416np95bm2ikpcp17mlhdp9prw2skyznc6xcf0gh0yss59vigkl";
-      system = "music-spelling";
-      asd = "music-spelling";
-    });
-    systems = [ "music-spelling" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) ];
-  };
-  mutility = {
-    pname = "mutility";
-    version = "20221106-git";
-    asds = [ "mutility" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/mutility/2022-11-06/mutility-20221106-git.tgz";
-      sha256 = "1kih8maw1wx97x9ciwy16bj0s392ninj4rdb22j4ad07sq0cv56k";
-      system = "mutility";
-      asd = "mutility";
-    });
-    systems = [ "mutility" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "closer-mop" pkgs) (getAttr "local-time" pkgs) ];
-  };
-  mutility_slash_files = {
-    pname = "mutility_files";
-    version = "20221106-git";
-    asds = [ "mutility" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/mutility/2022-11-06/mutility-20221106-git.tgz";
-      sha256 = "1kih8maw1wx97x9ciwy16bj0s392ninj4rdb22j4ad07sq0cv56k";
-      system = "mutility";
-      asd = "mutility";
-    });
-    systems = [ "mutility/files" ];
-    lispLibs = [ (getAttr "mutility" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  mutility_slash_loopy = {
-    pname = "mutility_loopy";
-    version = "20221106-git";
-    asds = [ "mutility" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/mutility/2022-11-06/mutility-20221106-git.tgz";
-      sha256 = "1kih8maw1wx97x9ciwy16bj0s392ninj4rdb22j4ad07sq0cv56k";
-      system = "mutility";
-      asd = "mutility";
-    });
-    systems = [ "mutility/loopy" ];
-    lispLibs = [ (getAttr "mutility" pkgs) (getAttr "trivial-do" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  mutility_slash_most = {
-    pname = "mutility_most";
-    version = "20221106-git";
-    asds = [ "mutility" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/mutility/2022-11-06/mutility-20221106-git.tgz";
-      sha256 = "1kih8maw1wx97x9ciwy16bj0s392ninj4rdb22j4ad07sq0cv56k";
-      system = "mutility";
-      asd = "mutility";
-    });
-    systems = [ "mutility/most" ];
-    lispLibs = [ (getAttr "mutility" pkgs) (getAttr "trivial-do" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  mutility_slash_test-helpers = {
-    pname = "mutility_test-helpers";
-    version = "20221106-git";
-    asds = [ "mutility" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/mutility/2022-11-06/mutility-20221106-git.tgz";
-      sha256 = "1kih8maw1wx97x9ciwy16bj0s392ninj4rdb22j4ad07sq0cv56k";
-      system = "mutility";
-      asd = "mutility";
-    });
-    systems = [ "mutility/test-helpers" ];
-    lispLibs = [ (getAttr "mutility" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  mutility_slash_tests = {
-    pname = "mutility_tests";
-    version = "20221106-git";
-    asds = [ "mutility" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/mutility/2022-11-06/mutility-20221106-git.tgz";
-      sha256 = "1kih8maw1wx97x9ciwy16bj0s392ninj4rdb22j4ad07sq0cv56k";
-      system = "mutility";
-      asd = "mutility";
-    });
-    systems = [ "mutility/tests" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cl-patterns" pkgs) (getAttr "fiveam" pkgs) (getAttr "mutility" pkgs) (getAttr "trivial-do" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  mw-equiv = {
-    pname = "mw-equiv";
-    version = "0.1.3";
-    asds = [ "mw-equiv" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/mw-equiv/2010-10-06/mw-equiv-0.1.3.tgz";
-      sha256 = "1fl90wp0jp7l90mps53fq0kzb28f10qfr739527h03xwqccyylad";
-      system = "mw-equiv";
-      asd = "mw-equiv";
-    });
-    systems = [ "mw-equiv" ];
-    lispLibs = [  ];
-  };
-  mystic = {
-    pname = "mystic";
-    version = "20160208-git";
-    asds = [ "mystic" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/mystic/2016-02-08/mystic-20160208-git.tgz";
-      sha256 = "1lqy2ijzpyamm15212z0xc5647fcbajs5argajgx33brz83afb5w";
-      system = "mystic";
-      asd = "mystic";
-    });
-    systems = [ "mystic" ];
-    lispLibs = [ (getAttr "anaphora" pkgs) (getAttr "cl-mustache" pkgs) (getAttr "local-time" pkgs) (getAttr "split-sequence" pkgs) ];
-  };
-  mystic-file-mixin = {
-    pname = "mystic-file-mixin";
-    version = "20160208-git";
-    asds = [ "mystic-file-mixin" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/mystic/2016-02-08/mystic-20160208-git.tgz";
-      sha256 = "1lqy2ijzpyamm15212z0xc5647fcbajs5argajgx33brz83afb5w";
-      system = "mystic-file-mixin";
-      asd = "mystic-file-mixin";
-    });
-    systems = [ "mystic-file-mixin" ];
-    lispLibs = [ (getAttr "mystic" pkgs) ];
-  };
-  mystic-fiveam-mixin = {
-    pname = "mystic-fiveam-mixin";
-    version = "20160208-git";
-    asds = [ "mystic-fiveam-mixin" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/mystic/2016-02-08/mystic-20160208-git.tgz";
-      sha256 = "1lqy2ijzpyamm15212z0xc5647fcbajs5argajgx33brz83afb5w";
-      system = "mystic-fiveam-mixin";
-      asd = "mystic-fiveam-mixin";
-    });
-    systems = [ "mystic-fiveam-mixin" ];
-    lispLibs = [ (getAttr "mystic" pkgs) (getAttr "mystic-file-mixin" pkgs) ];
-  };
-  mystic-gitignore-mixin = {
-    pname = "mystic-gitignore-mixin";
-    version = "20160208-git";
-    asds = [ "mystic-gitignore-mixin" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/mystic/2016-02-08/mystic-20160208-git.tgz";
-      sha256 = "1lqy2ijzpyamm15212z0xc5647fcbajs5argajgx33brz83afb5w";
-      system = "mystic-gitignore-mixin";
-      asd = "mystic-gitignore-mixin";
-    });
-    systems = [ "mystic-gitignore-mixin" ];
-    lispLibs = [ (getAttr "mystic" pkgs) (getAttr "mystic-file-mixin" pkgs) ];
-  };
-  mystic-library-template = {
-    pname = "mystic-library-template";
-    version = "20160208-git";
-    asds = [ "mystic-library-template" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/mystic/2016-02-08/mystic-20160208-git.tgz";
-      sha256 = "1lqy2ijzpyamm15212z0xc5647fcbajs5argajgx33brz83afb5w";
-      system = "mystic-library-template";
-      asd = "mystic-library-template";
-    });
-    systems = [ "mystic-library-template" ];
-    lispLibs = [ (getAttr "mystic" pkgs) (getAttr "mystic-fiveam-mixin" pkgs) (getAttr "mystic-gitignore-mixin" pkgs) (getAttr "mystic-readme-mixin" pkgs) (getAttr "mystic-travis-mixin" pkgs) ];
-  };
-  mystic-readme-mixin = {
-    pname = "mystic-readme-mixin";
-    version = "20160208-git";
-    asds = [ "mystic-readme-mixin" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/mystic/2016-02-08/mystic-20160208-git.tgz";
-      sha256 = "1lqy2ijzpyamm15212z0xc5647fcbajs5argajgx33brz83afb5w";
-      system = "mystic-readme-mixin";
-      asd = "mystic-readme-mixin";
-    });
-    systems = [ "mystic-readme-mixin" ];
-    lispLibs = [ (getAttr "mystic" pkgs) (getAttr "mystic-file-mixin" pkgs) ];
-  };
-  mystic-test = {
-    pname = "mystic-test";
-    version = "20160208-git";
-    asds = [ "mystic-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/mystic/2016-02-08/mystic-20160208-git.tgz";
-      sha256 = "1lqy2ijzpyamm15212z0xc5647fcbajs5argajgx33brz83afb5w";
-      system = "mystic-test";
-      asd = "mystic-test";
-    });
-    systems = [ "mystic-test" ];
-    lispLibs = [ (getAttr "fiveam" pkgs) (getAttr "mystic" pkgs) (getAttr "mystic-library-template" pkgs) ];
-  };
-  mystic-travis-mixin = {
-    pname = "mystic-travis-mixin";
-    version = "20160208-git";
-    asds = [ "mystic-travis-mixin" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/mystic/2016-02-08/mystic-20160208-git.tgz";
-      sha256 = "1lqy2ijzpyamm15212z0xc5647fcbajs5argajgx33brz83afb5w";
-      system = "mystic-travis-mixin";
-      asd = "mystic-travis-mixin";
-    });
-    systems = [ "mystic-travis-mixin" ];
-    lispLibs = [ (getAttr "mystic" pkgs) (getAttr "mystic-file-mixin" pkgs) ];
-  };
-  myway = {
-    pname = "myway";
-    version = "20221106-git";
-    asds = [ "myway" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/myway/2022-11-06/myway-20221106-git.tgz";
-      sha256 = "0xac8xpbcvq457f2jzzkf46mh5ganf1k2ix8sg61hqqmld5z4dag";
-      system = "myway";
-      asd = "myway";
-    });
-    systems = [ "myway" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cl-ppcre" pkgs) (getAttr "cl-utilities" pkgs) (getAttr "map-set" pkgs) (getAttr "quri" pkgs) ];
-  };
-  myway-test = {
-    pname = "myway-test";
-    version = "20221106-git";
-    asds = [ "myway-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/myway/2022-11-06/myway-20221106-git.tgz";
-      sha256 = "0xac8xpbcvq457f2jzzkf46mh5ganf1k2ix8sg61hqqmld5z4dag";
-      system = "myway-test";
-      asd = "myway-test";
-    });
-    systems = [ "myway-test" ];
-    lispLibs = [ (getAttr "myway" pkgs) (getAttr "prove" pkgs) (getAttr "prove-asdf" pkgs) ];
-  };
-  myweb = {
-    pname = "myweb";
-    version = "20150608-git";
-    asds = [ "myweb" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/myweb/2015-06-08/myweb-20150608-git.tgz";
-      sha256 = "0yncx40mfw7yxbm5hli9hr3aw4x1lf1912adyvylldfjfh2yxcjy";
-      system = "myweb";
-      asd = "myweb";
-    });
-    systems = [ "myweb" ];
-    lispLibs = [ (getAttr "bordeaux-threads" pkgs) (getAttr "cl-log" pkgs) (getAttr "local-time" pkgs) (getAttr "trivial-utf-8" pkgs) (getAttr "usocket" pkgs) ];
-  };
-  nail = {
-    pname = "nail";
-    version = "20221106-git";
-    asds = [ "nail" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/nail/2022-11-06/nail-20221106-git.tgz";
-      sha256 = "0w6184qaaf6v8p55h088igr8b6snyfxn5hpynjhdbyh7sj8xdm9y";
-      system = "nail";
-      asd = "nail";
-    });
-    systems = [ "nail" ];
-    lispLibs = [ (getAttr "cl-ppcre" pkgs) (getAttr "cl-reexport" pkgs) (getAttr "eazy-gnuplot" pkgs) ];
-  };
-  named-closure = {
-    pname = "named-closure";
-    version = "20220220-git";
-    asds = [ "named-closure" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/named-closure/2022-02-20/named-closure-20220220-git.tgz";
-      sha256 = "1ppkl739fp4wypdqbav9i6y65rcxcj4zslrmbx96z3xx0sinv245";
-      system = "named-closure";
-      asd = "named-closure";
-    });
-    systems = [ "named-closure" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "closer-mop" pkgs) (getAttr "hu_dot_dwim_dot_util" pkgs) (getAttr "hu_dot_dwim_dot_walker" pkgs) ];
-  };
-  named-read-macros = {
-    pname = "named-read-macros";
-    version = "20210228-git";
-    asds = [ "named-read-macros" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/named-read-macros/2021-02-28/named-read-macros-20210228-git.tgz";
-      sha256 = "0bgqy43h06nq2p9avqix2k15ab306sghrz2pkr17pli87q0qkxhi";
-      system = "named-read-macros";
-      asd = "named-read-macros";
-    });
-    systems = [ "named-read-macros" ];
-    lispLibs = [ (getAttr "named-readtables" pkgs) ];
-  };
-  named-read-macros-test = {
-    pname = "named-read-macros-test";
-    version = "20210228-git";
-    asds = [ "named-read-macros-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/named-read-macros/2021-02-28/named-read-macros-20210228-git.tgz";
-      sha256 = "0bgqy43h06nq2p9avqix2k15ab306sghrz2pkr17pli87q0qkxhi";
-      system = "named-read-macros-test";
-      asd = "named-read-macros-test";
-    });
-    systems = [ "named-read-macros-test" ];
-    lispLibs = [ (getAttr "fiveam" pkgs) (getAttr "named-read-macros" pkgs) (getAttr "uiop" pkgs) ];
-  };
-  named-readtables = {
-    pname = "named-readtables";
-    version = "20220331-git";
-    asds = [ "named-readtables" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/named-readtables/2022-03-31/named-readtables-20220331-git.tgz";
-      sha256 = "0gfgxywzbmavy0kpnxav11vz10qfzxwwrpgqaak9sgzg17g8x5yv";
-      system = "named-readtables";
-      asd = "named-readtables";
-    });
-    systems = [ "named-readtables" ];
-    lispLibs = [  ];
-  };
-  named-readtables_slash_doc = {
-    pname = "named-readtables_doc";
-    version = "20220331-git";
-    asds = [ "named-readtables" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/named-readtables/2022-03-31/named-readtables-20220331-git.tgz";
-      sha256 = "0gfgxywzbmavy0kpnxav11vz10qfzxwwrpgqaak9sgzg17g8x5yv";
-      system = "named-readtables";
-      asd = "named-readtables";
-    });
-    systems = [ "named-readtables/doc" ];
-    lispLibs = [ (getAttr "mgl-pax" pkgs) (getAttr "named-readtables" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  named-readtables_slash_test = {
-    pname = "named-readtables_test";
-    version = "20220331-git";
-    asds = [ "named-readtables" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/named-readtables/2022-03-31/named-readtables-20220331-git.tgz";
-      sha256 = "0gfgxywzbmavy0kpnxav11vz10qfzxwwrpgqaak9sgzg17g8x5yv";
-      system = "named-readtables";
-      asd = "named-readtables";
-    });
-    systems = [ "named-readtables/test" ];
-    lispLibs = [ (getAttr "named-readtables" pkgs) (getAttr "try" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  nanovg-blob = {
-    pname = "nanovg-blob";
-    version = "stable-git";
-    asds = [ "nanovg-blob" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/nanovg-blob/2020-10-16/nanovg-blob-stable-git.tgz";
-      sha256 = "1q80inrlfcqqqc912jcskfn667jgq6lcw0jvhk270x5qpj8z2pfj";
-      system = "nanovg-blob";
-      asd = "nanovg-blob";
-    });
-    systems = [ "nanovg-blob" ];
-    lispLibs = [ (getAttr "bodge-blobs-support" pkgs) (getAttr "glad-blob" pkgs) (getAttr "trivial-features" pkgs) ];
-  };
-  napa-fft3 = {
-    pname = "napa-fft3";
-    version = "20151218-git";
-    asds = [ "napa-fft3" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/napa-fft3/2015-12-18/napa-fft3-20151218-git.tgz";
-      sha256 = "1hxjf599xgwm28gbryy7q96j9ys6hfszmv0qxpr5698hxnhknscp";
-      system = "napa-fft3";
-      asd = "napa-fft3";
-    });
-    systems = [ "napa-fft3" ];
-    lispLibs = [  ];
-  };
-  narrowed-types = {
-    pname = "narrowed-types";
-    version = "20180228-git";
-    asds = [ "narrowed-types" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/narrowed-types/2018-02-28/narrowed-types-20180228-git.tgz";
-      sha256 = "03v4jgdysapj3ndg2qij7liqc6n9zb07r5j4k1jhmhpml86jxg4g";
-      system = "narrowed-types";
-      asd = "narrowed-types";
-    });
-    systems = [ "narrowed-types" ];
-    lispLibs = [  ];
-  };
-  narrowed-types-test = {
-    pname = "narrowed-types-test";
-    version = "20180228-git";
-    asds = [ "narrowed-types-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/narrowed-types/2018-02-28/narrowed-types-20180228-git.tgz";
-      sha256 = "03v4jgdysapj3ndg2qij7liqc6n9zb07r5j4k1jhmhpml86jxg4g";
-      system = "narrowed-types-test";
-      asd = "narrowed-types-test";
-    });
-    systems = [ "narrowed-types-test" ];
-    lispLibs = [ (getAttr "narrowed-types" pkgs) (getAttr "rt" pkgs) ];
-  };
-  nbd = {
-    pname = "nbd";
-    version = "20211020-git";
-    asds = [ "nbd" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/nbd/2021-10-20/nbd-20211020-git.tgz";
-      sha256 = "1p9dpyvlpjm32a2ymhps782dp5pjya5bnky6sb20gf4zyw6r826n";
-      system = "nbd";
-      asd = "nbd";
-    });
-    systems = [ "nbd" ];
-    lispLibs = [ (getAttr "bordeaux-threads" pkgs) (getAttr "flexi-streams" pkgs) (getAttr "lisp-binary" pkgs) (getAttr "wild-package-inferred-system" pkgs) ];
-  };
-  nbd_slash_simple-in-memory = {
-    pname = "nbd_simple-in-memory";
-    version = "20211020-git";
-    asds = [ "nbd" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/nbd/2021-10-20/nbd-20211020-git.tgz";
-      sha256 = "1p9dpyvlpjm32a2ymhps782dp5pjya5bnky6sb20gf4zyw6r826n";
-      system = "nbd";
-      asd = "nbd";
-    });
-    systems = [ "nbd/simple-in-memory" ];
-    lispLibs = [ (getAttr "nbd" pkgs) (getAttr "wild-package-inferred-system" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  ncurses-clone-for-lem = {
-    pname = "ncurses-clone-for-lem";
-    version = "20200427-git";
-    asds = [ "ncurses-clone-for-lem" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/sucle/2020-04-27/sucle-20200427-git.tgz";
-      sha256 = "033akkn9zxc6qdgycgxgybx3v23638245xrx29x2cbwnvg3i1q34";
-      system = "ncurses-clone-for-lem";
-      asd = "ncurses-clone-for-lem";
-    });
-    systems = [ "ncurses-clone-for-lem" ];
-    lispLibs = [ (getAttr "cffi" pkgs) (getAttr "cl-ppcre" pkgs) (getAttr "lparallel" pkgs) (getAttr "application" pkgs) (getAttr "nsb-cga" pkgs) (getAttr "text-subsystem" pkgs) (getAttr "utility" pkgs) ];
-  };
-  ndebug = {
-    pname = "ndebug";
-    version = "20221106-git";
-    asds = [ "ndebug" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/ndebug/2022-11-06/ndebug-20221106-git.tgz";
-      sha256 = "0xqy0spn4s7jryzhx0bjnha7bir71wr9vbns8v7dmmj83s3hm7js";
-      system = "ndebug";
-      asd = "ndebug";
-    });
-    systems = [ "ndebug" ];
-    lispLibs = [ (getAttr "bordeaux-threads" pkgs) (getAttr "dissect" pkgs) (getAttr "trivial-custom-debugger" pkgs) (getAttr "trivial-gray-streams" pkgs) ];
-  };
-  ndebug_slash_tests = {
-    pname = "ndebug_tests";
-    version = "20221106-git";
-    asds = [ "ndebug" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/ndebug/2022-11-06/ndebug-20221106-git.tgz";
-      sha256 = "0xqy0spn4s7jryzhx0bjnha7bir71wr9vbns8v7dmmj83s3hm7js";
-      system = "ndebug";
-      asd = "ndebug";
-    });
-    systems = [ "ndebug/tests" ];
-    lispLibs = [ (getAttr "lisp-unit2" pkgs) (getAttr "ndebug" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  ndfa = {
-    pname = "ndfa";
-    version = "export-to-quicklisp-502a46e2-git";
-    asds = [ "ndfa" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/regular-type-expression/2020-02-18/regular-type-expression-export-to-quicklisp-502a46e2-git.tgz";
-      sha256 = "1im07p7sbbhdjx9v8fx3v1xdqx1085lra6fsb4sh2bssw7m5xfxi";
-      system = "ndfa";
-      asd = "ndfa";
-    });
-    systems = [ "ndfa" ];
-    lispLibs = [ (getAttr "adjuvant" pkgs) ];
-  };
-  ndfa-test = {
-    pname = "ndfa-test";
-    version = "export-to-quicklisp-502a46e2-git";
-    asds = [ "ndfa-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/regular-type-expression/2020-02-18/regular-type-expression-export-to-quicklisp-502a46e2-git.tgz";
-      sha256 = "1im07p7sbbhdjx9v8fx3v1xdqx1085lra6fsb4sh2bssw7m5xfxi";
-      system = "ndfa-test";
-      asd = "ndfa-test";
-    });
-    systems = [ "ndfa-test" ];
-    lispLibs = [ (getAttr "adjuvant" pkgs) (getAttr "ndfa" pkgs) (getAttr "scrutiny" pkgs) ];
-  };
-  neo4cl = {
-    pname = "neo4cl";
-    version = "20220707-git";
-    asds = [ "neo4cl" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/neo4cl/2022-07-07/neo4cl-20220707-git.tgz";
-      sha256 = "196c32gh6kq0iqjc4z9sq1hiad77rp6zyrn5fbkmhw1qnznn5p9n";
-      system = "neo4cl";
-      asd = "neo4cl";
-    });
-    systems = [ "neo4cl" ];
-    lispLibs = [ (getAttr "ieee-floats" pkgs) (getAttr "trivial-utf-8" pkgs) (getAttr "usocket" pkgs) ];
-  };
-  neo4cl-test = {
-    pname = "neo4cl-test";
-    version = "20220707-git";
-    asds = [ "neo4cl-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/neo4cl/2022-07-07/neo4cl-20220707-git.tgz";
-      sha256 = "196c32gh6kq0iqjc4z9sq1hiad77rp6zyrn5fbkmhw1qnznn5p9n";
-      system = "neo4cl-test";
-      asd = "neo4cl-test";
-    });
-    systems = [ "neo4cl-test" ];
-    lispLibs = [ (getAttr "fiveam" pkgs) (getAttr "flexi-streams" pkgs) (getAttr "neo4cl" pkgs) ];
-  };
-  net-telent-date = {
-    pname = "net-telent-date";
-    version = "0.42";
-    asds = [ "net-telent-date" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/net-telent-date/2010-10-06/net-telent-date_0.42.tgz";
-      sha256 = "0vgibf76hy3zy39pix367xnvpwxiqsxvv6w0gqdxprd5ljpb7g2j";
-      system = "net-telent-date";
-      asd = "net-telent-date";
-    });
-    systems = [ "net-telent-date" ];
-    lispLibs = [  ];
-  };
-  net_dot_didierverna_dot_asdf-flv = {
-    pname = "net.didierverna.asdf-flv";
-    version = "version-2.1";
-    asds = [ "net.didierverna.asdf-flv" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/asdf-flv/2016-04-21/asdf-flv-version-2.1.tgz";
-      sha256 = "10094avq2whg8j5dnvla5wzqk5h36bx74lxbdbhdchv0wvn5x0g4";
-      system = "net.didierverna.asdf-flv";
-      asd = "net.didierverna.asdf-flv";
-    });
-    systems = [ "net.didierverna.asdf-flv" ];
-    lispLibs = [  ];
-  };
-  net_dot_didierverna_dot_clon = {
-    pname = "net.didierverna.clon";
-    version = "clon-1.0b25";
-    asds = [ "net.didierverna.clon" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-clon/2021-04-11/clon-1.0b25.tgz";
-      sha256 = "0nj47xl2fwj7z31wiaad8dw97fpq3zpwxlgmpvppawz0z3hgf8d0";
-      system = "net.didierverna.clon";
-      asd = "net.didierverna.clon";
-    });
-    systems = [ "net.didierverna.clon" ];
-    lispLibs = [ (getAttr "net_dot_didierverna_dot_clon_dot_core" pkgs) (getAttr "net_dot_didierverna_dot_clon_dot_setup" pkgs) ];
-  };
-  net_dot_didierverna_dot_clon_dot_core = {
-    pname = "net.didierverna.clon.core";
-    version = "clon-1.0b25";
-    asds = [ "net.didierverna.clon.core" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-clon/2021-04-11/clon-1.0b25.tgz";
-      sha256 = "0nj47xl2fwj7z31wiaad8dw97fpq3zpwxlgmpvppawz0z3hgf8d0";
-      system = "net.didierverna.clon.core";
-      asd = "net.didierverna.clon.core";
-    });
-    systems = [ "net.didierverna.clon.core" ];
-    lispLibs = [ (getAttr "net_dot_didierverna_dot_clon_dot_setup" pkgs) ];
-  };
-  net_dot_didierverna_dot_clon_dot_setup = {
-    pname = "net.didierverna.clon.setup";
-    version = "clon-1.0b25";
-    asds = [ "net.didierverna.clon.setup" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-clon/2021-04-11/clon-1.0b25.tgz";
-      sha256 = "0nj47xl2fwj7z31wiaad8dw97fpq3zpwxlgmpvppawz0z3hgf8d0";
-      system = "net.didierverna.clon.setup";
-      asd = "net.didierverna.clon.setup";
-    });
-    systems = [ "net.didierverna.clon.setup" ];
-    lispLibs = [ (getAttr "named-readtables" pkgs) ];
-  };
-  net_dot_didierverna_dot_clon_dot_setup_slash_termio = {
-    pname = "net.didierverna.clon.setup_termio";
-    version = "clon-1.0b25";
-    asds = [ "net.didierverna.clon.setup" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-clon/2021-04-11/clon-1.0b25.tgz";
-      sha256 = "0nj47xl2fwj7z31wiaad8dw97fpq3zpwxlgmpvppawz0z3hgf8d0";
-      system = "net.didierverna.clon.setup";
-      asd = "net.didierverna.clon.setup";
-    });
-    systems = [ "net.didierverna.clon.setup/termio" ];
-    lispLibs = [ (getAttr "net_dot_didierverna_dot_clon_dot_setup" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  net_dot_didierverna_dot_declt = {
-    pname = "net.didierverna.declt";
-    version = "4.0b2";
-    asds = [ "net.didierverna.declt" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/declt/2022-07-07/declt-4.0b2.tgz";
-      sha256 = "1xkbf1xqrkmr8na09b0spmrznsx2ml10i9q026zv9mpbsc7gh0i6";
-      system = "net.didierverna.declt";
-      asd = "net.didierverna.declt";
-    });
-    systems = [ "net.didierverna.declt" ];
-    lispLibs = [ (getAttr "net_dot_didierverna_dot_declt_dot_core" pkgs) (getAttr "net_dot_didierverna_dot_declt_dot_setup" pkgs) ];
-  };
-  net_dot_didierverna_dot_declt_dot_assess = {
-    pname = "net.didierverna.declt.assess";
-    version = "4.0b2";
-    asds = [ "net.didierverna.declt.assess" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/declt/2022-07-07/declt-4.0b2.tgz";
-      sha256 = "1xkbf1xqrkmr8na09b0spmrznsx2ml10i9q026zv9mpbsc7gh0i6";
-      system = "net.didierverna.declt.assess";
-      asd = "net.didierverna.declt.assess";
-    });
-    systems = [ "net.didierverna.declt.assess" ];
-    lispLibs = [ (getAttr "net_dot_didierverna_dot_declt_dot_setup" pkgs) ];
-  };
-  net_dot_didierverna_dot_declt_dot_core = {
-    pname = "net.didierverna.declt.core";
-    version = "4.0b2";
-    asds = [ "net.didierverna.declt.core" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/declt/2022-07-07/declt-4.0b2.tgz";
-      sha256 = "1xkbf1xqrkmr8na09b0spmrznsx2ml10i9q026zv9mpbsc7gh0i6";
-      system = "net.didierverna.declt.core";
-      asd = "net.didierverna.declt.core";
-    });
-    systems = [ "net.didierverna.declt.core" ];
-    lispLibs = [ (getAttr "net_dot_didierverna_dot_declt_dot_assess" pkgs) (getAttr "net_dot_didierverna_dot_declt_dot_setup" pkgs) ];
-  };
-  net_dot_didierverna_dot_declt_dot_setup = {
-    pname = "net.didierverna.declt.setup";
-    version = "4.0b2";
-    asds = [ "net.didierverna.declt.setup" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/declt/2022-07-07/declt-4.0b2.tgz";
-      sha256 = "1xkbf1xqrkmr8na09b0spmrznsx2ml10i9q026zv9mpbsc7gh0i6";
-      system = "net.didierverna.declt.setup";
-      asd = "net.didierverna.declt.setup";
-    });
-    systems = [ "net.didierverna.declt.setup" ];
-    lispLibs = [ (getAttr "named-readtables" pkgs) ];
-  };
-  net_dot_didierverna_dot_focus = {
-    pname = "net.didierverna.focus";
-    version = "20170403-git";
-    asds = [ "net.didierverna.focus" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/focus/2017-04-03/focus-20170403-git.tgz";
-      sha256 = "0b7nxqlkfi7irdmhsbp15r63c8fcg8q0ahmwmq5cmkf8ffq8dspc";
-      system = "net.didierverna.focus";
-      asd = "net.didierverna.focus";
-    });
-    systems = [ "net.didierverna.focus" ];
-    lispLibs = [ (getAttr "net_dot_didierverna_dot_focus_dot_core" pkgs) (getAttr "net_dot_didierverna_dot_focus_dot_flv" pkgs) (getAttr "net_dot_didierverna_dot_focus_dot_setup" pkgs) ];
-  };
-  net_dot_didierverna_dot_focus_dot_core = {
-    pname = "net.didierverna.focus.core";
-    version = "20170403-git";
-    asds = [ "net.didierverna.focus.core" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/focus/2017-04-03/focus-20170403-git.tgz";
-      sha256 = "0b7nxqlkfi7irdmhsbp15r63c8fcg8q0ahmwmq5cmkf8ffq8dspc";
-      system = "net.didierverna.focus.core";
-      asd = "net.didierverna.focus.core";
-    });
-    systems = [ "net.didierverna.focus.core" ];
-    lispLibs = [ (getAttr "net_dot_didierverna_dot_focus_dot_setup" pkgs) ];
-  };
-  net_dot_didierverna_dot_focus_dot_demos_dot_quotation = {
-    pname = "net.didierverna.focus.demos.quotation";
-    version = "20170403-git";
-    asds = [ "net.didierverna.focus.demos.quotation" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/focus/2017-04-03/focus-20170403-git.tgz";
-      sha256 = "0b7nxqlkfi7irdmhsbp15r63c8fcg8q0ahmwmq5cmkf8ffq8dspc";
-      system = "net.didierverna.focus.demos.quotation";
-      asd = "net.didierverna.focus.demos.quotation";
-    });
-    systems = [ "net.didierverna.focus.demos.quotation" ];
-    lispLibs = [ (getAttr "net_dot_didierverna_dot_focus_dot_flv" pkgs) ];
-  };
-  net_dot_didierverna_dot_focus_dot_flv = {
-    pname = "net.didierverna.focus.flv";
-    version = "20170403-git";
-    asds = [ "net.didierverna.focus.flv" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/focus/2017-04-03/focus-20170403-git.tgz";
-      sha256 = "0b7nxqlkfi7irdmhsbp15r63c8fcg8q0ahmwmq5cmkf8ffq8dspc";
-      system = "net.didierverna.focus.flv";
-      asd = "net.didierverna.focus.flv";
-    });
-    systems = [ "net.didierverna.focus.flv" ];
-    lispLibs = [ (getAttr "net_dot_didierverna_dot_asdf-flv" pkgs) (getAttr "net_dot_didierverna_dot_focus_dot_core" pkgs) (getAttr "net_dot_didierverna_dot_focus_dot_setup" pkgs) ];
-  };
-  net_dot_didierverna_dot_focus_dot_setup = {
-    pname = "net.didierverna.focus.setup";
-    version = "20170403-git";
-    asds = [ "net.didierverna.focus.setup" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/focus/2017-04-03/focus-20170403-git.tgz";
-      sha256 = "0b7nxqlkfi7irdmhsbp15r63c8fcg8q0ahmwmq5cmkf8ffq8dspc";
-      system = "net.didierverna.focus.setup";
-      asd = "net.didierverna.focus.setup";
-    });
-    systems = [ "net.didierverna.focus.setup" ];
-    lispLibs = [  ];
-  };
-  net_dot_didierverna_dot_focus_dot_setup_slash_flv = {
-    pname = "net.didierverna.focus.setup_flv";
-    version = "20170403-git";
-    asds = [ "net.didierverna.focus.setup" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/focus/2017-04-03/focus-20170403-git.tgz";
-      sha256 = "0b7nxqlkfi7irdmhsbp15r63c8fcg8q0ahmwmq5cmkf8ffq8dspc";
-      system = "net.didierverna.focus.setup";
-      asd = "net.didierverna.focus.setup";
-    });
-    systems = [ "net.didierverna.focus.setup/flv" ];
-    lispLibs = [ (getAttr "net_dot_didierverna_dot_focus_dot_setup" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  net_dot_didierverna_dot_tfm = {
-    pname = "net.didierverna.tfm";
-    version = "20210411-git";
-    asds = [ "net.didierverna.tfm" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/tfm/2021-04-11/tfm-20210411-git.tgz";
-      sha256 = "1wwphg315zq9213vhi5l8fyrfyzasym3rwf34dxfc5cyhsf0wbi6";
-      system = "net.didierverna.tfm";
-      asd = "net.didierverna.tfm";
-    });
-    systems = [ "net.didierverna.tfm" ];
-    lispLibs = [ (getAttr "net_dot_didierverna_dot_tfm_dot_core" pkgs) ];
-  };
-  net_dot_didierverna_dot_tfm_dot_core = {
-    pname = "net.didierverna.tfm.core";
-    version = "20210411-git";
-    asds = [ "net.didierverna.tfm.core" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/tfm/2021-04-11/tfm-20210411-git.tgz";
-      sha256 = "1wwphg315zq9213vhi5l8fyrfyzasym3rwf34dxfc5cyhsf0wbi6";
-      system = "net.didierverna.tfm.core";
-      asd = "net.didierverna.tfm.core";
-    });
-    systems = [ "net.didierverna.tfm.core" ];
-    lispLibs = [ (getAttr "net_dot_didierverna_dot_tfm_dot_setup" pkgs) ];
-  };
-  net_dot_didierverna_dot_tfm_dot_setup = {
-    pname = "net.didierverna.tfm.setup";
-    version = "20210411-git";
-    asds = [ "net.didierverna.tfm.setup" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/tfm/2021-04-11/tfm-20210411-git.tgz";
-      sha256 = "1wwphg315zq9213vhi5l8fyrfyzasym3rwf34dxfc5cyhsf0wbi6";
-      system = "net.didierverna.tfm.setup";
-      asd = "net.didierverna.tfm.setup";
-    });
-    systems = [ "net.didierverna.tfm.setup" ];
-    lispLibs = [ (getAttr "named-readtables" pkgs) ];
-  };
-  net_dot_scipolis_dot_graphs = {
-    pname = "net.scipolis.graphs";
-    version = "20210411-git";
-    asds = [ "net.scipolis.graphs" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/femlisp/2021-04-11/femlisp-20210411-git.tgz";
-      sha256 = "08l2x1jq3vfhh8m14wijd8c78n589cy5hd2py2jfj3yfiqyipasa";
-      system = "net.scipolis.graphs";
-      asd = "net.scipolis.graphs";
-    });
-    systems = [ "net.scipolis.graphs" ];
-    lispLibs = [ (getAttr "femlisp-basic" pkgs) ];
-  };
-  network-addresses = {
-    pname = "network-addresses";
-    version = "20160628-git";
-    asds = [ "network-addresses" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/network-addresses/2016-06-28/network-addresses-20160628-git.tgz";
-      sha256 = "0zkyfdvfy9pz08vrgz40qpnqx0y7vf92aarp9dq2wipimnwy8df2";
-      system = "network-addresses";
-      asd = "network-addresses";
-    });
-    systems = [ "network-addresses" ];
-    lispLibs = [ (getAttr "cl-ppcre" pkgs) ];
-  };
-  network-addresses-test = {
-    pname = "network-addresses-test";
-    version = "20160628-git";
-    asds = [ "network-addresses-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/network-addresses/2016-06-28/network-addresses-20160628-git.tgz";
-      sha256 = "0zkyfdvfy9pz08vrgz40qpnqx0y7vf92aarp9dq2wipimnwy8df2";
-      system = "network-addresses-test";
-      asd = "network-addresses-test";
-    });
-    systems = [ "network-addresses-test" ];
-    lispLibs = [ (getAttr "fiveam" pkgs) (getAttr "network-addresses" pkgs) ];
-  };
-  neural-classifier = {
-    pname = "neural-classifier";
-    version = "20221106-git";
-    asds = [ "neural-classifier" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/neural-classifier/2022-11-06/neural-classifier-20221106-git.tgz";
-      sha256 = "1d23q1k3i2kbjcrvp0qml2nmmdcr12lrmga3qdrgrvsbdcqarn3c";
-      system = "neural-classifier";
-      asd = "neural-classifier";
-    });
-    systems = [ "neural-classifier" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "magicl" pkgs) (getAttr "snakes" pkgs) ];
-  };
-  neural-classifier_slash_mnist = {
-    pname = "neural-classifier_mnist";
-    version = "20221106-git";
-    asds = [ "neural-classifier" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/neural-classifier/2022-11-06/neural-classifier-20221106-git.tgz";
-      sha256 = "1d23q1k3i2kbjcrvp0qml2nmmdcr12lrmga3qdrgrvsbdcqarn3c";
-      system = "neural-classifier";
-      asd = "neural-classifier";
-    });
-    systems = [ "neural-classifier/mnist" ];
-    lispLibs = [ (getAttr "neural-classifier" pkgs) (getAttr "nibbles" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  neural-classifier_slash_tests = {
-    pname = "neural-classifier_tests";
-    version = "20221106-git";
-    asds = [ "neural-classifier" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/neural-classifier/2022-11-06/neural-classifier-20221106-git.tgz";
-      sha256 = "1d23q1k3i2kbjcrvp0qml2nmmdcr12lrmga3qdrgrvsbdcqarn3c";
-      system = "neural-classifier";
-      asd = "neural-classifier";
-    });
-    systems = [ "neural-classifier/tests" ];
-    lispLibs = [ (getAttr "fiveam" pkgs) (getAttr "neural-classifier" pkgs) (getAttr "nibbles" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  new-op = {
-    pname = "new-op";
-    version = "20211230-git";
-    asds = [ "new-op" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/new-op/2021-12-30/new-op-20211230-git.tgz";
-      sha256 = "10336s6nly62jg08f6mvybg54c797znhxkr3wiaphpxn4i24vaql";
-      system = "new-op";
-      asd = "new-op";
-    });
-    systems = [ "new-op" ];
-    lispLibs = [  ];
-  };
-  nfiles = {
-    pname = "nfiles";
-    version = "20221106-git";
-    asds = [ "nfiles" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/nfiles/2022-11-06/nfiles-20221106-git.tgz";
-      sha256 = "088biha7554794vlz0n9h1b4xwfs6k2rfkh034km3lirn73z5vwp";
-      system = "nfiles";
-      asd = "nfiles";
-    });
-    systems = [ "nfiles" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "hu_dot_dwim_dot_defclass-star" pkgs) (getAttr "quri" pkgs) (getAttr "serapeum" pkgs) (getAttr "trivial-garbage" pkgs) (getAttr "trivial-package-local-nicknames" pkgs) (getAttr "trivial-types" pkgs) ];
-  };
-  nfiles_slash_tests = {
-    pname = "nfiles_tests";
-    version = "20221106-git";
-    asds = [ "nfiles" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/nfiles/2022-11-06/nfiles-20221106-git.tgz";
-      sha256 = "088biha7554794vlz0n9h1b4xwfs6k2rfkh034km3lirn73z5vwp";
-      system = "nfiles";
-      asd = "nfiles";
-    });
-    systems = [ "nfiles/tests" ];
-    lispLibs = [ (getAttr "lisp-unit2" pkgs) (getAttr "nfiles" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  nhooks = {
-    pname = "nhooks";
-    version = "20221106-git";
-    asds = [ "nhooks" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/nhooks/2022-11-06/nhooks-20221106-git.tgz";
-      sha256 = "0dy1jvsrifqck4zhw93s5nhl2ana5yinqr7sqgn0j9r9ic1pw5rj";
-      system = "nhooks";
-      asd = "nhooks";
-    });
-    systems = [ "nhooks" ];
-    lispLibs = [ (getAttr "closer-mop" pkgs) (getAttr "serapeum" pkgs) ];
-  };
-  nibbles = {
-    pname = "nibbles";
-    version = "20220331-git";
-    asds = [ "nibbles" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/nibbles/2022-03-31/nibbles-20220331-git.tgz";
-      sha256 = "1idnscdw39zfk4h11x0jm6yjbj7i7l1wl75pd7p4iygc6zcwdi6l";
-      system = "nibbles";
-      asd = "nibbles";
-    });
-    systems = [ "nibbles" ];
-    lispLibs = [  ];
-  };
-  nibbles-streams = {
-    pname = "nibbles-streams";
-    version = "20220707-git";
-    asds = [ "nibbles-streams" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/nibbles-streams/2022-07-07/nibbles-streams-20220707-git.tgz";
-      sha256 = "0c5q5rywdrpldmga9kmjfvy3nxba3rbinnrpz93qw921jgb77war";
-      system = "nibbles-streams";
-      asd = "nibbles-streams";
-    });
-    systems = [ "nibbles-streams" ];
-    lispLibs = [ (getAttr "nibbles" pkgs) (getAttr "serapeum" pkgs) (getAttr "trivial-gray-streams" pkgs) ];
-  };
-  nibbles-streams_slash_tests = {
-    pname = "nibbles-streams_tests";
-    version = "20220707-git";
-    asds = [ "nibbles-streams" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/nibbles-streams/2022-07-07/nibbles-streams-20220707-git.tgz";
-      sha256 = "0c5q5rywdrpldmga9kmjfvy3nxba3rbinnrpz93qw921jgb77war";
-      system = "nibbles-streams";
-      asd = "nibbles-streams";
-    });
-    systems = [ "nibbles-streams/tests" ];
-    lispLibs = [ (getAttr "fiveam" pkgs) (getAttr "flexi-streams" pkgs) (getAttr "nibbles-streams" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  nibbles_slash_tests = {
-    pname = "nibbles_tests";
-    version = "20220331-git";
-    asds = [ "nibbles" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/nibbles/2022-03-31/nibbles-20220331-git.tgz";
-      sha256 = "1idnscdw39zfk4h11x0jm6yjbj7i7l1wl75pd7p4iygc6zcwdi6l";
-      system = "nibbles";
-      asd = "nibbles";
-    });
-    systems = [ "nibbles/tests" ];
-    lispLibs = [ (getAttr "nibbles" pkgs) (getAttr "rt" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  nineveh = {
-    pname = "nineveh";
-    version = "release-quicklisp-0a10a846-git";
-    asds = [ "nineveh" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/nineveh/2019-10-07/nineveh-release-quicklisp-0a10a846-git.tgz";
-      sha256 = "0bpdgqc9iz37240ypirpi489pnqpb92i94snyhjbh87i50y4br2l";
-      system = "nineveh";
-      asd = "nineveh";
-    });
-    systems = [ "nineveh" ];
-    lispLibs = [ (getAttr "cepl" pkgs) (getAttr "cl-soil" pkgs) (getAttr "dendrite_dot_primitives" pkgs) (getAttr "documentation-utils" pkgs) (getAttr "easing" pkgs) (getAttr "livesupport" pkgs) (getAttr "rtg-math_dot_vari" pkgs) (getAttr "with-setf" pkgs) ];
-  };
-  ningle = {
-    pname = "ningle";
-    version = "20211230-git";
-    asds = [ "ningle" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/ningle/2021-12-30/ningle-20211230-git.tgz";
-      sha256 = "0s9nn8ml1j4839rycvdjcbsynkqnhxw1zmrgpjz48smscwdf1f8p";
-      system = "ningle";
-      asd = "ningle";
-    });
-    systems = [ "ningle" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cl-syntax-annot" pkgs) (getAttr "lack-component" pkgs) (getAttr "lack-request" pkgs) (getAttr "lack-response" pkgs) (getAttr "myway" pkgs) ];
-  };
-  ningle-test = {
-    pname = "ningle-test";
-    version = "20211230-git";
-    asds = [ "ningle-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/ningle/2021-12-30/ningle-20211230-git.tgz";
-      sha256 = "0s9nn8ml1j4839rycvdjcbsynkqnhxw1zmrgpjz48smscwdf1f8p";
-      system = "ningle-test";
-      asd = "ningle-test";
-    });
-    systems = [ "ningle-test" ];
-    lispLibs = [ (getAttr "babel" pkgs) (getAttr "clack-test" pkgs) (getAttr "drakma" pkgs) (getAttr "ningle" pkgs) (getAttr "prove" pkgs) (getAttr "yason" pkgs) ];
-  };
-  nkeymaps = {
-    pname = "nkeymaps";
-    version = "20221106-git";
-    asds = [ "nkeymaps" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/nkeymaps/2022-11-06/nkeymaps-20221106-git.tgz";
-      sha256 = "1drq8pdg850z9fmlwyhxxn0k5d438h0i758f5gxzl5xw3x03rb1k";
-      system = "nkeymaps";
-      asd = "nkeymaps";
-    });
-    systems = [ "nkeymaps" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "fset" pkgs) (getAttr "trivial-package-local-nicknames" pkgs) (getAttr "uiop" pkgs) ];
-  };
-  nkeymaps_slash_tests = {
-    pname = "nkeymaps_tests";
-    version = "20221106-git";
-    asds = [ "nkeymaps" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/nkeymaps/2022-11-06/nkeymaps-20221106-git.tgz";
-      sha256 = "1drq8pdg850z9fmlwyhxxn0k5d438h0i758f5gxzl5xw3x03rb1k";
-      system = "nkeymaps";
-      asd = "nkeymaps";
-    });
-    systems = [ "nkeymaps/tests" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "fset" pkgs) (getAttr "lisp-unit2" pkgs) (getAttr "nkeymaps" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  nlopt = {
-    pname = "nlopt";
-    version = "20220707-git";
-    asds = [ "nlopt" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/nlopt/2022-07-07/nlopt-20220707-git.tgz";
-      sha256 = "01zw4yx38kc8x3by0m3dw5j87hwb180ggp4njfnzi1qjq1fdczp5";
-      system = "nlopt";
-      asd = "nlopt";
-    });
-    systems = [ "nlopt" ];
-    lispLibs = [ (getAttr "cffi" pkgs) (getAttr "trivial-garbage" pkgs) ];
-  };
-  nodgui = {
-    pname = "nodgui";
-    version = "20221106-git";
-    asds = [ "nodgui" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/nodgui/2022-11-06/nodgui-20221106-git.tgz";
-      sha256 = "0h03w7jrf0zj9px9kgk2nqydb5w9qhdjirjgp978vc8v41hz8ciy";
-      system = "nodgui";
-      asd = "nodgui";
-    });
-    systems = [ "nodgui" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "bordeaux-threads" pkgs) (getAttr "cl-colors2" pkgs) (getAttr "cl-jpeg" pkgs) (getAttr "cl-lex" pkgs) (getAttr "cl-ppcre-unicode" pkgs) (getAttr "cl-unicode" pkgs) (getAttr "yacc" pkgs) (getAttr "clunit2" pkgs) (getAttr "named-readtables" pkgs) (getAttr "parse-number" pkgs) ];
-  };
-  north = {
-    pname = "north";
-    version = "20210411-git";
-    asds = [ "north" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/north/2021-04-11/north-20210411-git.tgz";
-      sha256 = "1gaa3vcl6fg13kjslrmwgi7736zhi9haza2ghfnz90x5g65qd9l1";
-      system = "north";
-      asd = "north";
-    });
-    systems = [ "north" ];
-    lispLibs = [ (getAttr "north-drakma" pkgs) ];
-  };
-  north-core = {
-    pname = "north-core";
-    version = "20210411-git";
-    asds = [ "north-core" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/north/2021-04-11/north-20210411-git.tgz";
-      sha256 = "1gaa3vcl6fg13kjslrmwgi7736zhi9haza2ghfnz90x5g65qd9l1";
-      system = "north-core";
-      asd = "north-core";
-    });
-    systems = [ "north-core" ];
-    lispLibs = [ (getAttr "cl-ppcre" pkgs) (getAttr "crypto-shortcuts" pkgs) (getAttr "documentation-utils" pkgs) (getAttr "uuid" pkgs) ];
-  };
-  north-dexador = {
-    pname = "north-dexador";
-    version = "20210411-git";
-    asds = [ "north-dexador" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/north/2021-04-11/north-20210411-git.tgz";
-      sha256 = "1gaa3vcl6fg13kjslrmwgi7736zhi9haza2ghfnz90x5g65qd9l1";
-      system = "north-dexador";
-      asd = "north-dexador";
-    });
-    systems = [ "north-dexador" ];
-    lispLibs = [ (getAttr "dexador" pkgs) (getAttr "north-core" pkgs) ];
-  };
-  north-drakma = {
-    pname = "north-drakma";
-    version = "20210411-git";
-    asds = [ "north-drakma" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/north/2021-04-11/north-20210411-git.tgz";
-      sha256 = "1gaa3vcl6fg13kjslrmwgi7736zhi9haza2ghfnz90x5g65qd9l1";
-      system = "north-drakma";
-      asd = "north-drakma";
-    });
-    systems = [ "north-drakma" ];
-    lispLibs = [ (getAttr "drakma" pkgs) (getAttr "north-core" pkgs) ];
-  };
-  north-example = {
-    pname = "north-example";
-    version = "20210411-git";
-    asds = [ "north-example" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/north/2021-04-11/north-20210411-git.tgz";
-      sha256 = "1gaa3vcl6fg13kjslrmwgi7736zhi9haza2ghfnz90x5g65qd9l1";
-      system = "north-example";
-      asd = "north-example";
-    });
-    systems = [ "north-example" ];
-    lispLibs = [ (getAttr "clip" pkgs) (getAttr "drakma" pkgs) (getAttr "hunchentoot" pkgs) (getAttr "north" pkgs) ];
-  };
-  nsb-cga = {
-    pname = "nsb-cga";
-    version = "20200427-git";
-    asds = [ "nsb-cga" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/sucle/2020-04-27/sucle-20200427-git.tgz";
-      sha256 = "033akkn9zxc6qdgycgxgybx3v23638245xrx29x2cbwnvg3i1q34";
-      system = "nsb-cga";
-      asd = "nsb-cga";
-    });
-    systems = [ "nsb-cga" ];
-    lispLibs = [ (getAttr "cl-reexport" pkgs) ];
-  };
-  nsort = {
-    pname = "nsort";
-    version = "20150505-git";
-    asds = [ "nsort" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/nsort/2015-05-05/nsort-20150505-git.tgz";
-      sha256 = "1q58slg8pl390av8pv16xb8g9qibgy3pm6vyl1fw75mx37yqkyd3";
-      system = "nsort";
-      asd = "nsort";
-    });
-    systems = [ "nsort" ];
-    lispLibs = [ (getAttr "prove" pkgs) ];
-  };
-  nst = {
-    pname = "nst";
-    version = "20210807-git";
-    asds = [ "nst" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-nst/2021-08-07/cl-nst-20210807-git.tgz";
-      sha256 = "1hf3r6pqbnd9vsd1i24qmz928kia72hdgmiafiwb6jw1hmj3r6ga";
-      system = "nst";
-      asd = "nst";
-    });
-    systems = [ "nst" ];
-    lispLibs = [ (getAttr "closer-mop" pkgs) (getAttr "org-sampler" pkgs) ];
-  };
-  nst-manual-tests = {
-    pname = "nst-manual-tests";
-    version = "20210807-git";
-    asds = [ "nst-manual-tests" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-nst/2021-08-07/cl-nst-20210807-git.tgz";
-      sha256 = "1hf3r6pqbnd9vsd1i24qmz928kia72hdgmiafiwb6jw1hmj3r6ga";
-      system = "nst-manual-tests";
-      asd = "nst-manual-tests";
-    });
-    systems = [ "nst-manual-tests" ];
-    lispLibs = [ (getAttr "asdf-nst" pkgs) (getAttr "nst" pkgs) (getAttr "nst-selftest-utils" pkgs) ];
-  };
-  nst-meta-tests = {
-    pname = "nst-meta-tests";
-    version = "20210807-git";
-    asds = [ "nst-meta-tests" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-nst/2021-08-07/cl-nst-20210807-git.tgz";
-      sha256 = "1hf3r6pqbnd9vsd1i24qmz928kia72hdgmiafiwb6jw1hmj3r6ga";
-      system = "nst-meta-tests";
-      asd = "nst-meta-tests";
-    });
-    systems = [ "nst-meta-tests" ];
-    lispLibs = [ (getAttr "asdf-nst" pkgs) (getAttr "nst" pkgs) (getAttr "nst-selftest-utils" pkgs) ];
-  };
-  nst-mop-utils = {
-    pname = "nst-mop-utils";
-    version = "20210807-git";
-    asds = [ "nst-mop-utils" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-nst/2021-08-07/cl-nst-20210807-git.tgz";
-      sha256 = "1hf3r6pqbnd9vsd1i24qmz928kia72hdgmiafiwb6jw1hmj3r6ga";
-      system = "nst-mop-utils";
-      asd = "nst-mop-utils";
-    });
-    systems = [ "nst-mop-utils" ];
-    lispLibs = [ (getAttr "nst" pkgs) (getAttr "closer-mop" pkgs) ];
-  };
-  nst-selftest-utils = {
-    pname = "nst-selftest-utils";
-    version = "20210807-git";
-    asds = [ "nst-selftest-utils" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-nst/2021-08-07/cl-nst-20210807-git.tgz";
-      sha256 = "1hf3r6pqbnd9vsd1i24qmz928kia72hdgmiafiwb6jw1hmj3r6ga";
-      system = "nst-selftest-utils";
-      asd = "nst-selftest-utils";
-    });
-    systems = [ "nst-selftest-utils" ];
-    lispLibs = [ (getAttr "nst" pkgs) ];
-  };
-  nst-simple-tests = {
-    pname = "nst-simple-tests";
-    version = "20210807-git";
-    asds = [ "nst-simple-tests" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-nst/2021-08-07/cl-nst-20210807-git.tgz";
-      sha256 = "1hf3r6pqbnd9vsd1i24qmz928kia72hdgmiafiwb6jw1hmj3r6ga";
-      system = "nst-simple-tests";
-      asd = "nst-simple-tests";
-    });
-    systems = [ "nst-simple-tests" ];
-    lispLibs = [ (getAttr "asdf-nst" pkgs) (getAttr "nst" pkgs) (getAttr "nst-selftest-utils" pkgs) ];
-  };
-  nst-test = {
-    pname = "nst-test";
-    version = "20210807-git";
-    asds = [ "nst-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-nst/2021-08-07/cl-nst-20210807-git.tgz";
-      sha256 = "1hf3r6pqbnd9vsd1i24qmz928kia72hdgmiafiwb6jw1hmj3r6ga";
-      system = "nst-test";
-      asd = "nst-test";
-    });
-    systems = [ "nst-test" ];
-    lispLibs = [ (getAttr "asdf-nst" pkgs) (getAttr "nst" pkgs) (getAttr "nst-meta-tests" pkgs) (getAttr "nst-simple-tests" pkgs) ];
-  };
-  nst-test-jenkins = {
-    pname = "nst-test-jenkins";
-    version = "20210807-git";
-    asds = [ "nst-test-jenkins" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-nst/2021-08-07/cl-nst-20210807-git.tgz";
-      sha256 = "1hf3r6pqbnd9vsd1i24qmz928kia72hdgmiafiwb6jw1hmj3r6ga";
-      system = "nst-test-jenkins";
-      asd = "nst-test-jenkins";
-    });
-    systems = [ "nst-test-jenkins" ];
-    lispLibs = [ (getAttr "asdf-nst" pkgs) (getAttr "nst" pkgs) (getAttr "nst-test" pkgs) ];
-  };
-  nuclblog = {
-    pname = "nuclblog";
-    version = "20140826-git";
-    asds = [ "nuclblog" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/nuclblog/2014-08-26/nuclblog-20140826-git.tgz";
-      sha256 = "03ngrxas65l7h9ykyy100arm0imvnrxxyyf809l8iqqv87b3k1hz";
-      system = "nuclblog";
-      asd = "nuclblog";
-    });
-    systems = [ "nuclblog" ];
-    lispLibs = [ (getAttr "bordeaux-threads" pkgs) (getAttr "cl-markdown" pkgs) (getAttr "cl-store" pkgs) (getAttr "cl-who" pkgs) (getAttr "hunchentoot" pkgs) (getAttr "hunchentoot-auth" pkgs) (getAttr "md5" pkgs) ];
-  };
-  nuklear-blob = {
-    pname = "nuklear-blob";
-    version = "stable-git";
-    asds = [ "nuklear-blob" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/nuklear-blob/2020-10-16/nuklear-blob-stable-git.tgz";
-      sha256 = "1qqx08sd74ix027p6w35yr0ycp72swy1zzps015hwkiwxsawkncm";
-      system = "nuklear-blob";
-      asd = "nuklear-blob";
-    });
-    systems = [ "nuklear-blob" ];
-    lispLibs = [ (getAttr "bodge-blobs-support" pkgs) (getAttr "glad-blob" pkgs) (getAttr "trivial-features" pkgs) ];
-  };
-  nuklear-renderer-blob = {
-    pname = "nuklear-renderer-blob";
-    version = "stable-git";
-    asds = [ "nuklear-renderer-blob" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/nuklear-renderer-blob/2020-10-16/nuklear-renderer-blob-stable-git.tgz";
-      sha256 = "0f73ns9dq02v7ixpbnvrfgp52cjdvmbbbhhfwjyv0ywxx30mrdq4";
-      system = "nuklear-renderer-blob";
-      asd = "nuklear-renderer-blob";
-    });
-    systems = [ "nuklear-renderer-blob" ];
-    lispLibs = [ (getAttr "bodge-blobs-support" pkgs) (getAttr "glad-blob" pkgs) (getAttr "trivial-features" pkgs) ];
-  };
-  null-package = {
-    pname = "null-package";
-    version = "20220707-git";
-    asds = [ "null-package" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/null-package/2022-07-07/null-package-20220707-git.tgz";
-      sha256 = "1ildain46gw0nfnxdwfvasr5vg1fs93afni3k65sl5imc82g910f";
-      system = "null-package";
-      asd = "null-package";
-    });
-    systems = [ "null-package" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "core-reader" pkgs) (getAttr "named-readtables" pkgs) (getAttr "read-as-string" pkgs) ];
-  };
-  null-package_dot_test = {
-    pname = "null-package.test";
-    version = "20220707-git";
-    asds = [ "null-package.test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/null-package/2022-07-07/null-package-20220707-git.tgz";
-      sha256 = "1ildain46gw0nfnxdwfvasr5vg1fs93afni3k65sl5imc82g910f";
-      system = "null-package.test";
-      asd = "null-package.test";
-    });
-    systems = [ "null-package.test" ];
-    lispLibs = [ (getAttr "bnf" pkgs) (getAttr "jingoh" pkgs) (getAttr "null-package" pkgs) ];
-  };
-  num-utils = {
-    pname = "num-utils";
-    version = "20221106-git";
-    asds = [ "num-utils" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/numerical-utilities/2022-11-06/numerical-utilities-20221106-git.tgz";
-      sha256 = "1dwz8zxhqzi31qp863zj1cn1lgljny14snycb9nk871qs121kmsd";
-      system = "num-utils";
-      asd = "num-utils";
-    });
-    systems = [ "num-utils" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "alexandria_plus" pkgs) (getAttr "anaphora" pkgs) (getAttr "array-operations" pkgs) (getAttr "let-plus" pkgs) (getAttr "select" pkgs) ];
-  };
-  num-utils_slash_tests = {
-    pname = "num-utils_tests";
-    version = "20221106-git";
-    asds = [ "num-utils" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/numerical-utilities/2022-11-06/numerical-utilities-20221106-git.tgz";
-      sha256 = "1dwz8zxhqzi31qp863zj1cn1lgljny14snycb9nk871qs121kmsd";
-      system = "num-utils";
-      asd = "num-utils";
-    });
-    systems = [ "num-utils/tests" ];
-    lispLibs = [ (getAttr "fiveam" pkgs) (getAttr "num-utils" pkgs) (getAttr "select" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  numcl = {
-    pname = "numcl";
-    version = "20221106-git";
-    asds = [ "numcl" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/numcl/2022-11-06/numcl-20221106-git.tgz";
-      sha256 = "1x0j4vx5w3rn18pssfwys3ghfxr2lkkrv37y47144kr890jrcad9";
-      system = "numcl";
-      asd = "numcl";
-    });
-    systems = [ "numcl" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cl-randist" pkgs) (getAttr "constantfold" pkgs) (getAttr "float-features" pkgs) (getAttr "function-cache" pkgs) (getAttr "gtype" pkgs) (getAttr "iterate" pkgs) (getAttr "lisp-namespace" pkgs) (getAttr "specialized-function" pkgs) (getAttr "trivia" pkgs) (getAttr "type-r" pkgs) ];
-  };
-  numcl_dot_test = {
-    pname = "numcl.test";
-    version = "20221106-git";
-    asds = [ "numcl.test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/numcl/2022-11-06/numcl-20221106-git.tgz";
-      sha256 = "1x0j4vx5w3rn18pssfwys3ghfxr2lkkrv37y47144kr890jrcad9";
-      system = "numcl.test";
-      asd = "numcl.test";
-    });
-    systems = [ "numcl.test" ];
-    lispLibs = [ (getAttr "fiveam" pkgs) (getAttr "numcl" pkgs) ];
-  };
-  numericals = {
-    pname = "numericals";
-    version = "2022.09.0";
-    asds = [ "numericals" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/numericals/2022-11-06/numericals-2022.09.0.tgz";
-      sha256 = "0hfyd045yq7pr4sh9xgqag67yrvnfia1h8ycnxss244zrziabyci";
-      system = "numericals";
-      asd = "numericals";
-    });
-    systems = [ "numericals" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cffi" pkgs) (getAttr "bmas" pkgs) (getAttr "cl-form-types" pkgs) (getAttr "compiler-macro-notes" pkgs) (getAttr "ctype" pkgs) (getAttr "fiveam" pkgs) (getAttr "introspect-environment" pkgs) (getAttr "iterate" pkgs) (getAttr "lparallel" pkgs) (getAttr "magicl" pkgs) (getAttr "numericals_dot_common" pkgs) (getAttr "policy-cond" pkgs) (getAttr "polymorphic-functions" pkgs) (getAttr "swank" pkgs) (getAttr "specialized-function" pkgs) (getAttr "trivial-coerce" pkgs) (getAttr "trivial-package-local-nicknames" pkgs) (getAttr "trivial-types" pkgs) ];
-  };
-  numericals_dot_common = {
-    pname = "numericals.common";
-    version = "2022.09.0";
-    asds = [ "numericals.common" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/numericals/2022-11-06/numericals-2022.09.0.tgz";
-      sha256 = "0hfyd045yq7pr4sh9xgqag67yrvnfia1h8ycnxss244zrziabyci";
-      system = "numericals.common";
-      asd = "numericals.common";
-    });
-    systems = [ "numericals.common" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "fiveam" pkgs) ];
-  };
-  numericals_slash_benchmarks = {
-    pname = "numericals_benchmarks";
-    version = "2022.09.0";
-    asds = [ "numericals" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/numericals/2022-11-06/numericals-2022.09.0.tgz";
-      sha256 = "0hfyd045yq7pr4sh9xgqag67yrvnfia1h8ycnxss244zrziabyci";
-      system = "numericals";
-      asd = "numericals";
-    });
-    systems = [ "numericals/benchmarks" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cl-ascii-table" pkgs) (getAttr "fiveam" pkgs) (getAttr "jsown-utils" pkgs) (getAttr "numericals" pkgs) (getAttr "py4cl2" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  numpy-file-format = {
-    pname = "numpy-file-format";
-    version = "20210124-git";
-    asds = [ "numpy-file-format" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/numpy-file-format/2021-01-24/numpy-file-format-20210124-git.tgz";
-      sha256 = "0j7jjcf6k3anvgpm4nf81g6gbhff44v0v9rai7kwm2bm3abzsjfd";
-      system = "numpy-file-format";
-      asd = "numpy-file-format";
-    });
-    systems = [ "numpy-file-format" ];
-    lispLibs = [ (getAttr "ieee-floats" pkgs) (getAttr "trivial-features" pkgs) ];
-  };
-  numpy-file-format_slash_tests = {
-    pname = "numpy-file-format_tests";
-    version = "20210124-git";
-    asds = [ "numpy-file-format" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/numpy-file-format/2021-01-24/numpy-file-format-20210124-git.tgz";
-      sha256 = "0j7jjcf6k3anvgpm4nf81g6gbhff44v0v9rai7kwm2bm3abzsjfd";
-      system = "numpy-file-format";
-      asd = "numpy-file-format";
-    });
-    systems = [ "numpy-file-format/tests" ];
-    lispLibs = [ (getAttr "numpy-file-format" pkgs) (getAttr "uiop" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  nxt = {
-    pname = "nxt";
-    version = "20150608-git";
-    asds = [ "nxt" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-nxt/2015-06-08/cl-nxt-20150608-git.tgz";
-      sha256 = "1r9004ra140i9v2pmxnjv86dix4040jr0rgww2zwk370zxys7h2g";
-      system = "nxt";
-      asd = "nxt";
-    });
-    systems = [ "nxt" ];
-    lispLibs = [ (getAttr "babel" pkgs) (getAttr "cffi" pkgs) (getAttr "static-vectors" pkgs) ];
-  };
-  nxt-proxy = {
-    pname = "nxt-proxy";
-    version = "20150608-git";
-    asds = [ "nxt-proxy" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-nxt/2015-06-08/cl-nxt-20150608-git.tgz";
-      sha256 = "1r9004ra140i9v2pmxnjv86dix4040jr0rgww2zwk370zxys7h2g";
-      system = "nxt-proxy";
-      asd = "nxt-proxy";
-    });
-    systems = [ "nxt-proxy" ];
-    lispLibs = [ (getAttr "nxt" pkgs) (getAttr "usocket" pkgs) ];
-  };
-  nyaml = {
-    pname = "nyaml";
-    version = "20211230-git";
-    asds = [ "nyaml" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/nyaml/2021-12-30/nyaml-20211230-git.tgz";
-      sha256 = "1gdsxhgqx9ynzrxwjidgljlkmz35wx83r6gwslxgg4v0g4vix9da";
-      system = "nyaml";
-      asd = "nyaml";
-    });
-    systems = [ "nyaml" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "babel" pkgs) (getAttr "cl-ppcre" pkgs) (getAttr "esrap" pkgs) (getAttr "fare-quasiquote" pkgs) (getAttr "fare-quasiquote-extras" pkgs) (getAttr "parse-number" pkgs) (getAttr "trivia" pkgs) ];
-  };
-  nyaml_slash_test = {
-    pname = "nyaml_test";
-    version = "20211230-git";
-    asds = [ "nyaml" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/nyaml/2021-12-30/nyaml-20211230-git.tgz";
-      sha256 = "1gdsxhgqx9ynzrxwjidgljlkmz35wx83r6gwslxgg4v0g4vix9da";
-      system = "nyaml";
-      asd = "nyaml";
-    });
-    systems = [ "nyaml/test" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "esrap" pkgs) (getAttr "nyaml" pkgs) (getAttr "parachute" pkgs) (getAttr "split-sequence" pkgs) (getAttr "yason" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  nyxt = {
-    pname = "nyxt";
-    version = "20221106-git";
-    asds = [ "nyxt" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/nyxt/2022-11-06/nyxt-20221106-git.tgz";
-      sha256 = "1rxj8gp4a30r0yfcqgysnrnamwzkp25lyqmkjmp1lyzp1jg2kzar";
-      system = "nyxt";
-      asd = "nyxt";
-    });
-    systems = [ "nyxt" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "bordeaux-threads" pkgs) (getAttr "calispel" pkgs) (getAttr "cl-base64" pkgs) (getAttr "cl-containers" pkgs) (getAttr "cl-css" pkgs) (getAttr "cl-custom-hash-table" pkgs) (getAttr "enchant" pkgs) (getAttr "cl-gopher" pkgs) (getAttr "cl-html-diff" pkgs) (getAttr "cl-json" pkgs) (getAttr "cl-ppcre" pkgs) (getAttr "cl-ppcre-unicode" pkgs) (getAttr "cl-prevalence" pkgs) (getAttr "cl-qrencode" pkgs) (getAttr "str" pkgs) (getAttr "cl-tld" pkgs) (getAttr "closer-mop" pkgs) (getAttr "clss" pkgs) (getAttr "cluffer" pkgs) (getAttr "dexador" pkgs) (getAttr "dissect" pkgs) (getAttr "flexi-streams" pkgs) (getAttr "hu_dot_dwim_dot_defclass-star" pkgs) (getAttr "iolib" pkgs) (getAttr "local-time" pkgs) (getAttr "log4cl" pkgs) (getAttr "lparallel" pkgs) (getAttr "moptilities" pkgs) (getAttr "ndebug" pkgs) (getAttr "nfiles" pkgs) (getAttr "nhooks" pkgs) (getAttr "nkeymaps" pkgs) (getAttr "nyxt-asdf" pkgs) (getAttr "ospm" pkgs) (getAttr "parenscript" pkgs) (getAttr "phos" pkgs) (getAttr "plump" pkgs) (getAttr "py-configparser" pkgs) (getAttr "quri" pkgs) (getAttr "serapeum" pkgs) (getAttr "swank" pkgs) (getAttr "slynk" pkgs) (getAttr "spinneret" pkgs) (getAttr "trivia" pkgs) (getAttr "trivial-clipboard" pkgs) (getAttr "trivial-features" pkgs) (getAttr "trivial-garbage" pkgs) (getAttr "trivial-package-local-nicknames" pkgs) (getAttr "trivial-types" pkgs) (getAttr "uiop" pkgs) (getAttr "unix-opts" pkgs) ];
-  };
-  nyxt-asdf = {
-    pname = "nyxt-asdf";
-    version = "20221106-git";
-    asds = [ "nyxt-asdf" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/nyxt/2022-11-06/nyxt-20221106-git.tgz";
-      sha256 = "1rxj8gp4a30r0yfcqgysnrnamwzkp25lyqmkjmp1lyzp1jg2kzar";
-      system = "nyxt-asdf";
-      asd = "nyxt-asdf";
-    });
-    systems = [ "nyxt-asdf" ];
-    lispLibs = [  ];
-  };
-  nyxt-ubuntu-package = {
-    pname = "nyxt-ubuntu-package";
-    version = "20221106-git";
-    asds = [ "nyxt-ubuntu-package" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/nyxt/2022-11-06/nyxt-20221106-git.tgz";
-      sha256 = "1rxj8gp4a30r0yfcqgysnrnamwzkp25lyqmkjmp1lyzp1jg2kzar";
-      system = "nyxt-ubuntu-package";
-      asd = "nyxt-ubuntu-package";
-    });
-    systems = [ "nyxt-ubuntu-package" ];
-    lispLibs = [ (getAttr "bordeaux-threads" pkgs) (getAttr "cl-cffi-gtk" pkgs) (getAttr "cl-gobject-introspection" pkgs) (getAttr "cl-webkit2" pkgs) (getAttr "linux-packaging" pkgs) (getAttr "nyxt" pkgs) (getAttr "nyxt-asdf" pkgs) (getAttr "wild-package-inferred-system" pkgs) ];
-  };
-  nyxt_slash_analysis = {
-    pname = "nyxt_analysis";
-    version = "20221106-git";
-    asds = [ "nyxt" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/nyxt/2022-11-06/nyxt-20221106-git.tgz";
-      sha256 = "1rxj8gp4a30r0yfcqgysnrnamwzkp25lyqmkjmp1lyzp1jg2kzar";
-      system = "nyxt";
-      asd = "nyxt";
-    });
-    systems = [ "nyxt/analysis" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cl-ppcre" pkgs) (getAttr "str" pkgs) (getAttr "nyxt-asdf" pkgs) (getAttr "serapeum" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  nyxt_slash_analysis_slash_tests = {
-    pname = "nyxt_analysis_tests";
-    version = "20221106-git";
-    asds = [ "nyxt" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/nyxt/2022-11-06/nyxt-20221106-git.tgz";
-      sha256 = "1rxj8gp4a30r0yfcqgysnrnamwzkp25lyqmkjmp1lyzp1jg2kzar";
-      system = "nyxt";
-      asd = "nyxt";
-    });
-    systems = [ "nyxt/analysis/tests" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cl-ppcre" pkgs) (getAttr "str" pkgs) (getAttr "nyxt-asdf" pkgs) (getAttr "serapeum" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  nyxt_slash_application_slash_tests = {
-    pname = "nyxt_application_tests";
-    version = "20221106-git";
-    asds = [ "nyxt" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/nyxt/2022-11-06/nyxt-20221106-git.tgz";
-      sha256 = "1rxj8gp4a30r0yfcqgysnrnamwzkp25lyqmkjmp1lyzp1jg2kzar";
-      system = "nyxt";
-      asd = "nyxt";
-    });
-    systems = [ "nyxt/application/tests" ];
-    lispLibs = [ (getAttr "nyxt" pkgs) (getAttr "nyxt-asdf" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  nyxt_slash_benchmark = {
-    pname = "nyxt_benchmark";
-    version = "20221106-git";
-    asds = [ "nyxt" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/nyxt/2022-11-06/nyxt-20221106-git.tgz";
-      sha256 = "1rxj8gp4a30r0yfcqgysnrnamwzkp25lyqmkjmp1lyzp1jg2kzar";
-      system = "nyxt";
-      asd = "nyxt";
-    });
-    systems = [ "nyxt/benchmark" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "nyxt" pkgs) (getAttr "nyxt-asdf" pkgs) (getAttr "trivial-benchmark" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  nyxt_slash_class-star = {
-    pname = "nyxt_class-star";
-    version = "20221106-git";
-    asds = [ "nyxt" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/nyxt/2022-11-06/nyxt-20221106-git.tgz";
-      sha256 = "1rxj8gp4a30r0yfcqgysnrnamwzkp25lyqmkjmp1lyzp1jg2kzar";
-      system = "nyxt";
-      asd = "nyxt";
-    });
-    systems = [ "nyxt/class-star" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "hu_dot_dwim_dot_defclass-star" pkgs) (getAttr "moptilities" pkgs) (getAttr "nyxt-asdf" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  nyxt_slash_clean-fasls = {
-    pname = "nyxt_clean-fasls";
-    version = "20221106-git";
-    asds = [ "nyxt" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/nyxt/2022-11-06/nyxt-20221106-git.tgz";
-      sha256 = "1rxj8gp4a30r0yfcqgysnrnamwzkp25lyqmkjmp1lyzp1jg2kzar";
-      system = "nyxt";
-      asd = "nyxt";
-    });
-    systems = [ "nyxt/clean-fasls" ];
-    lispLibs = [ (getAttr "swank" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  nyxt_slash_documentation = {
-    pname = "nyxt_documentation";
-    version = "20221106-git";
-    asds = [ "nyxt" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/nyxt/2022-11-06/nyxt-20221106-git.tgz";
-      sha256 = "1rxj8gp4a30r0yfcqgysnrnamwzkp25lyqmkjmp1lyzp1jg2kzar";
-      system = "nyxt";
-      asd = "nyxt";
-    });
-    systems = [ "nyxt/documentation" ];
-    lispLibs = [ (getAttr "nyxt" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  nyxt_slash_download-manager = {
-    pname = "nyxt_download-manager";
-    version = "20221106-git";
-    asds = [ "nyxt" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/nyxt/2022-11-06/nyxt-20221106-git.tgz";
-      sha256 = "1rxj8gp4a30r0yfcqgysnrnamwzkp25lyqmkjmp1lyzp1jg2kzar";
-      system = "nyxt";
-      asd = "nyxt";
-    });
-    systems = [ "nyxt/download-manager" ];
-    lispLibs = [ (getAttr "calispel" pkgs) (getAttr "cl-ppcre" pkgs) (getAttr "str" pkgs) (getAttr "dexador" pkgs) (getAttr "log4cl" pkgs) (getAttr "nyxt-asdf" pkgs) (getAttr "quri" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  nyxt_slash_gi-gtk = {
-    pname = "nyxt_gi-gtk";
-    version = "20221106-git";
-    asds = [ "nyxt" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/nyxt/2022-11-06/nyxt-20221106-git.tgz";
-      sha256 = "1rxj8gp4a30r0yfcqgysnrnamwzkp25lyqmkjmp1lyzp1jg2kzar";
-      system = "nyxt";
-      asd = "nyxt";
-    });
-    systems = [ "nyxt/gi-gtk" ];
-    lispLibs = [ (getAttr "bordeaux-threads" pkgs) (getAttr "cl-cffi-gtk" pkgs) (getAttr "cl-gobject-introspection" pkgs) (getAttr "cl-webkit2" pkgs) (getAttr "nyxt" pkgs) (getAttr "nyxt-asdf" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  nyxt_slash_gi-gtk-application = {
-    pname = "nyxt_gi-gtk-application";
-    version = "20221106-git";
-    asds = [ "nyxt" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/nyxt/2022-11-06/nyxt-20221106-git.tgz";
-      sha256 = "1rxj8gp4a30r0yfcqgysnrnamwzkp25lyqmkjmp1lyzp1jg2kzar";
-      system = "nyxt";
-      asd = "nyxt";
-    });
-    systems = [ "nyxt/gi-gtk-application" ];
-    lispLibs = [ (getAttr "bordeaux-threads" pkgs) (getAttr "cl-cffi-gtk" pkgs) (getAttr "cl-gobject-introspection" pkgs) (getAttr "cl-webkit2" pkgs) (getAttr "nyxt" pkgs) (getAttr "nyxt-asdf" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  nyxt_slash_gi-gtk_slash_tests = {
-    pname = "nyxt_gi-gtk_tests";
-    version = "20221106-git";
-    asds = [ "nyxt" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/nyxt/2022-11-06/nyxt-20221106-git.tgz";
-      sha256 = "1rxj8gp4a30r0yfcqgysnrnamwzkp25lyqmkjmp1lyzp1jg2kzar";
-      system = "nyxt";
-      asd = "nyxt";
-    });
-    systems = [ "nyxt/gi-gtk/tests" ];
-    lispLibs = [ (getAttr "bordeaux-threads" pkgs) (getAttr "cl-cffi-gtk" pkgs) (getAttr "cl-gobject-introspection" pkgs) (getAttr "cl-webkit2" pkgs) (getAttr "nyxt" pkgs) (getAttr "nyxt-asdf" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  nyxt_slash_gtk = {
-    pname = "nyxt_gtk";
-    version = "20221106-git";
-    asds = [ "nyxt" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/nyxt/2022-11-06/nyxt-20221106-git.tgz";
-      sha256 = "1rxj8gp4a30r0yfcqgysnrnamwzkp25lyqmkjmp1lyzp1jg2kzar";
-      system = "nyxt";
-      asd = "nyxt";
-    });
-    systems = [ "nyxt/gtk" ];
-    lispLibs = [ (getAttr "cl-cffi-gtk" pkgs) (getAttr "cl-webkit2" pkgs) (getAttr "nyxt" pkgs) (getAttr "nyxt-asdf" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  nyxt_slash_gtk-application = {
-    pname = "nyxt_gtk-application";
-    version = "20221106-git";
-    asds = [ "nyxt" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/nyxt/2022-11-06/nyxt-20221106-git.tgz";
-      sha256 = "1rxj8gp4a30r0yfcqgysnrnamwzkp25lyqmkjmp1lyzp1jg2kzar";
-      system = "nyxt";
-      asd = "nyxt";
-    });
-    systems = [ "nyxt/gtk-application" ];
-    lispLibs = [ (getAttr "cl-cffi-gtk" pkgs) (getAttr "cl-webkit2" pkgs) (getAttr "nyxt" pkgs) (getAttr "nyxt-asdf" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  nyxt_slash_history-tree = {
-    pname = "nyxt_history-tree";
-    version = "20221106-git";
-    asds = [ "nyxt" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/nyxt/2022-11-06/nyxt-20221106-git.tgz";
-      sha256 = "1rxj8gp4a30r0yfcqgysnrnamwzkp25lyqmkjmp1lyzp1jg2kzar";
-      system = "nyxt";
-      asd = "nyxt";
-    });
-    systems = [ "nyxt/history-tree" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cl-custom-hash-table" pkgs) (getAttr "hu_dot_dwim_dot_defclass-star" pkgs) (getAttr "local-time" pkgs) (getAttr "moptilities" pkgs) (getAttr "nyxt-asdf" pkgs) (getAttr "trivial-package-local-nicknames" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  nyxt_slash_history-tree_slash_tests = {
-    pname = "nyxt_history-tree_tests";
-    version = "20221106-git";
-    asds = [ "nyxt" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/nyxt/2022-11-06/nyxt-20221106-git.tgz";
-      sha256 = "1rxj8gp4a30r0yfcqgysnrnamwzkp25lyqmkjmp1lyzp1jg2kzar";
-      system = "nyxt";
-      asd = "nyxt";
-    });
-    systems = [ "nyxt/history-tree/tests" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cl-custom-hash-table" pkgs) (getAttr "str" pkgs) (getAttr "hu_dot_dwim_dot_defclass-star" pkgs) (getAttr "local-time" pkgs) (getAttr "moptilities" pkgs) (getAttr "nyxt-asdf" pkgs) (getAttr "trivial-package-local-nicknames" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  nyxt_slash_password-manager = {
-    pname = "nyxt_password-manager";
-    version = "20221106-git";
-    asds = [ "nyxt" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/nyxt/2022-11-06/nyxt-20221106-git.tgz";
-      sha256 = "1rxj8gp4a30r0yfcqgysnrnamwzkp25lyqmkjmp1lyzp1jg2kzar";
-      system = "nyxt";
-      asd = "nyxt";
-    });
-    systems = [ "nyxt/password-manager" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "bordeaux-threads" pkgs) (getAttr "cl-ppcre" pkgs) (getAttr "str" pkgs) (getAttr "hu_dot_dwim_dot_defclass-star" pkgs) (getAttr "moptilities" pkgs) (getAttr "nyxt-asdf" pkgs) (getAttr "serapeum" pkgs) (getAttr "trivial-clipboard" pkgs) (getAttr "uiop" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  nyxt_slash_prompter = {
-    pname = "nyxt_prompter";
-    version = "20221106-git";
-    asds = [ "nyxt" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/nyxt/2022-11-06/nyxt-20221106-git.tgz";
-      sha256 = "1rxj8gp4a30r0yfcqgysnrnamwzkp25lyqmkjmp1lyzp1jg2kzar";
-      system = "nyxt";
-      asd = "nyxt";
-    });
-    systems = [ "nyxt/prompter" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "calispel" pkgs) (getAttr "cl-containers" pkgs) (getAttr "str" pkgs) (getAttr "closer-mop" pkgs) (getAttr "hu_dot_dwim_dot_defclass-star" pkgs) (getAttr "lparallel" pkgs) (getAttr "moptilities" pkgs) (getAttr "nyxt-asdf" pkgs) (getAttr "serapeum" pkgs) (getAttr "trivial-package-local-nicknames" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  nyxt_slash_prompter_slash_tests = {
-    pname = "nyxt_prompter_tests";
-    version = "20221106-git";
-    asds = [ "nyxt" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/nyxt/2022-11-06/nyxt-20221106-git.tgz";
-      sha256 = "1rxj8gp4a30r0yfcqgysnrnamwzkp25lyqmkjmp1lyzp1jg2kzar";
-      system = "nyxt";
-      asd = "nyxt";
-    });
-    systems = [ "nyxt/prompter/tests" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "calispel" pkgs) (getAttr "cl-containers" pkgs) (getAttr "str" pkgs) (getAttr "closer-mop" pkgs) (getAttr "hu_dot_dwim_dot_defclass-star" pkgs) (getAttr "lparallel" pkgs) (getAttr "moptilities" pkgs) (getAttr "nyxt-asdf" pkgs) (getAttr "serapeum" pkgs) (getAttr "trivial-package-local-nicknames" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  nyxt_slash_submodules = {
-    pname = "nyxt_submodules";
-    version = "20221106-git";
-    asds = [ "nyxt" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/nyxt/2022-11-06/nyxt-20221106-git.tgz";
-      sha256 = "1rxj8gp4a30r0yfcqgysnrnamwzkp25lyqmkjmp1lyzp1jg2kzar";
-      system = "nyxt";
-      asd = "nyxt";
-    });
-    systems = [ "nyxt/submodules" ];
-    lispLibs = [ (getAttr "nyxt-asdf" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  nyxt_slash_tests = {
-    pname = "nyxt_tests";
-    version = "20221106-git";
-    asds = [ "nyxt" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/nyxt/2022-11-06/nyxt-20221106-git.tgz";
-      sha256 = "1rxj8gp4a30r0yfcqgysnrnamwzkp25lyqmkjmp1lyzp1jg2kzar";
-      system = "nyxt";
-      asd = "nyxt";
-    });
-    systems = [ "nyxt/tests" ];
-    lispLibs = [ (getAttr "nyxt" pkgs) (getAttr "nyxt-asdf" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  nyxt_slash_text-buffer = {
-    pname = "nyxt_text-buffer";
-    version = "20221106-git";
-    asds = [ "nyxt" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/nyxt/2022-11-06/nyxt-20221106-git.tgz";
-      sha256 = "1rxj8gp4a30r0yfcqgysnrnamwzkp25lyqmkjmp1lyzp1jg2kzar";
-      system = "nyxt";
-      asd = "nyxt";
-    });
-    systems = [ "nyxt/text-buffer" ];
-    lispLibs = [ (getAttr "cluffer" pkgs) (getAttr "nyxt-asdf" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  nyxt_slash_theme = {
-    pname = "nyxt_theme";
-    version = "20221106-git";
-    asds = [ "nyxt" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/nyxt/2022-11-06/nyxt-20221106-git.tgz";
-      sha256 = "1rxj8gp4a30r0yfcqgysnrnamwzkp25lyqmkjmp1lyzp1jg2kzar";
-      system = "nyxt";
-      asd = "nyxt";
-    });
-    systems = [ "nyxt/theme" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cl-css" pkgs) (getAttr "hu_dot_dwim_dot_defclass-star" pkgs) (getAttr "moptilities" pkgs) (getAttr "nyxt-asdf" pkgs) (getAttr "serapeum" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  nyxt_slash_theme_slash_tests = {
-    pname = "nyxt_theme_tests";
-    version = "20221106-git";
-    asds = [ "nyxt" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/nyxt/2022-11-06/nyxt-20221106-git.tgz";
-      sha256 = "1rxj8gp4a30r0yfcqgysnrnamwzkp25lyqmkjmp1lyzp1jg2kzar";
-      system = "nyxt";
-      asd = "nyxt";
-    });
-    systems = [ "nyxt/theme/tests" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cl-css" pkgs) (getAttr "hu_dot_dwim_dot_defclass-star" pkgs) (getAttr "moptilities" pkgs) (getAttr "nyxt-asdf" pkgs) (getAttr "serapeum" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  nyxt_slash_user-interface = {
-    pname = "nyxt_user-interface";
-    version = "20221106-git";
-    asds = [ "nyxt" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/nyxt/2022-11-06/nyxt-20221106-git.tgz";
-      sha256 = "1rxj8gp4a30r0yfcqgysnrnamwzkp25lyqmkjmp1lyzp1jg2kzar";
-      system = "nyxt";
-      asd = "nyxt";
-    });
-    systems = [ "nyxt/user-interface" ];
-    lispLibs = [ (getAttr "nyxt-asdf" pkgs) (getAttr "spinneret" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  nyxt_slash_version = {
-    pname = "nyxt_version";
-    version = "20221106-git";
-    asds = [ "nyxt" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/nyxt/2022-11-06/nyxt-20221106-git.tgz";
-      sha256 = "1rxj8gp4a30r0yfcqgysnrnamwzkp25lyqmkjmp1lyzp1jg2kzar";
-      system = "nyxt";
-      asd = "nyxt";
-    });
-    systems = [ "nyxt/version" ];
-    lispLibs = [ (getAttr "nyxt" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  object-class = {
-    pname = "object-class";
-    version = "1.0";
-    asds = [ "object-class" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/object-class/2020-09-25/object-class_1.0.tgz";
-      sha256 = "0qagmd2mxbr8b60l0y3jccj0maxjchds96p935pd3q805ry50683";
-      system = "object-class";
-      asd = "object-class";
-    });
-    systems = [ "object-class" ];
-    lispLibs = [ (getAttr "closer-mop" pkgs) (getAttr "compatible-metaclasses" pkgs) (getAttr "enhanced-find-class" pkgs) ];
-  };
-  object-class_tests = {
-    pname = "object-class_tests";
-    version = "1.0";
-    asds = [ "object-class_tests" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/object-class/2020-09-25/object-class_1.0.tgz";
-      sha256 = "0qagmd2mxbr8b60l0y3jccj0maxjchds96p935pd3q805ry50683";
-      system = "object-class_tests";
-      asd = "object-class_tests";
-    });
-    systems = [ "object-class_tests" ];
-    lispLibs = [ (getAttr "compatible-metaclasses" pkgs) (getAttr "object-class" pkgs) (getAttr "parachute" pkgs) ];
-  };
-  oclcl = {
-    pname = "oclcl";
-    version = "20190521-git";
-    asds = [ "oclcl" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/oclcl/2019-05-21/oclcl-20190521-git.tgz";
-      sha256 = "1ccyrv4fknpln5askl8cpnwbp28sikrs6i3dwzm86jwhv272zc8q";
-      system = "oclcl";
-      asd = "oclcl";
-    });
-    systems = [ "oclcl" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cffi" pkgs) (getAttr "cl-pattern" pkgs) (getAttr "cl-ppcre" pkgs) (getAttr "cl-reexport" pkgs) (getAttr "external-program" pkgs) (getAttr "lisp-namespace" pkgs) (getAttr "osicat" pkgs) (getAttr "split-sequence" pkgs) ];
-  };
-  oclcl-examples = {
-    pname = "oclcl-examples";
-    version = "20190521-git";
-    asds = [ "oclcl-examples" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/oclcl/2019-05-21/oclcl-20190521-git.tgz";
-      sha256 = "1ccyrv4fknpln5askl8cpnwbp28sikrs6i3dwzm86jwhv272zc8q";
-      system = "oclcl-examples";
-      asd = "oclcl-examples";
-    });
-    systems = [ "oclcl-examples" ];
-    lispLibs = [ (getAttr "cl-oclapi" pkgs) (getAttr "imago" pkgs) (getAttr "oclcl" pkgs) ];
-  };
-  oclcl-test = {
-    pname = "oclcl-test";
-    version = "20190521-git";
-    asds = [ "oclcl-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/oclcl/2019-05-21/oclcl-20190521-git.tgz";
-      sha256 = "1ccyrv4fknpln5askl8cpnwbp28sikrs6i3dwzm86jwhv272zc8q";
-      system = "oclcl-test";
-      asd = "oclcl-test";
-    });
-    systems = [ "oclcl-test" ];
-    lispLibs = [ (getAttr "arrow-macros" pkgs) (getAttr "oclcl" pkgs) (getAttr "prove" pkgs) (getAttr "prove-asdf" pkgs) ];
-  };
-  ode-blob = {
-    pname = "ode-blob";
-    version = "stable-git";
-    asds = [ "ode-blob" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/ode-blob/2020-10-16/ode-blob-stable-git.tgz";
-      sha256 = "1l2zq27zmivmr6h66kadbh3isnbdmkxvc7wq16wwmsvq23bhpss6";
-      system = "ode-blob";
-      asd = "ode-blob";
-    });
-    systems = [ "ode-blob" ];
-    lispLibs = [ (getAttr "base-blobs" pkgs) (getAttr "bodge-blobs-support" pkgs) (getAttr "trivial-features" pkgs) ];
-  };
-  odepack = {
-    pname = "odepack";
-    version = "20200925-git";
-    asds = [ "odepack" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/f2cl/2020-09-25/f2cl-20200925-git.tgz";
-      sha256 = "0kq1lrz0sg4kj64w0ysihnfwi65pami362fs2mvpyf1yhgxmq08y";
-      system = "odepack";
-      asd = "odepack";
-    });
-    systems = [ "odepack" ];
-    lispLibs = [ (getAttr "f2cl" pkgs) ];
-  };
-  odepack_slash_blas-util = {
-    pname = "odepack_blas-util";
-    version = "20200925-git";
-    asds = [ "odepack" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/f2cl/2020-09-25/f2cl-20200925-git.tgz";
-      sha256 = "0kq1lrz0sg4kj64w0ysihnfwi65pami362fs2mvpyf1yhgxmq08y";
-      system = "odepack";
-      asd = "odepack";
-    });
-    systems = [ "odepack/blas-util" ];
-    lispLibs = [  ];
-    meta = {
-      broken = true;
-    };
-  };
-  odepack_slash_lsoda = {
-    pname = "odepack_lsoda";
-    version = "20200925-git";
-    asds = [ "odepack" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/f2cl/2020-09-25/f2cl-20200925-git.tgz";
-      sha256 = "0kq1lrz0sg4kj64w0ysihnfwi65pami362fs2mvpyf1yhgxmq08y";
-      system = "odepack";
-      asd = "odepack";
-    });
-    systems = [ "odepack/lsoda" ];
-    lispLibs = [  ];
-    meta = {
-      broken = true;
-    };
-  };
-  odepack_slash_lsoda-demo = {
-    pname = "odepack_lsoda-demo";
-    version = "20200925-git";
-    asds = [ "odepack" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/f2cl/2020-09-25/f2cl-20200925-git.tgz";
-      sha256 = "0kq1lrz0sg4kj64w0ysihnfwi65pami362fs2mvpyf1yhgxmq08y";
-      system = "odepack";
-      asd = "odepack";
-    });
-    systems = [ "odepack/lsoda-demo" ];
-    lispLibs = [  ];
-    meta = {
-      broken = true;
-    };
-  };
-  odepack_slash_lsodar = {
-    pname = "odepack_lsodar";
-    version = "20200925-git";
-    asds = [ "odepack" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/f2cl/2020-09-25/f2cl-20200925-git.tgz";
-      sha256 = "0kq1lrz0sg4kj64w0ysihnfwi65pami362fs2mvpyf1yhgxmq08y";
-      system = "odepack";
-      asd = "odepack";
-    });
-    systems = [ "odepack/lsodar" ];
-    lispLibs = [  ];
-    meta = {
-      broken = true;
-    };
-  };
-  odepack_slash_lsodar-demo = {
-    pname = "odepack_lsodar-demo";
-    version = "20200925-git";
-    asds = [ "odepack" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/f2cl/2020-09-25/f2cl-20200925-git.tgz";
-      sha256 = "0kq1lrz0sg4kj64w0ysihnfwi65pami362fs2mvpyf1yhgxmq08y";
-      system = "odepack";
-      asd = "odepack";
-    });
-    systems = [ "odepack/lsodar-demo" ];
-    lispLibs = [  ];
-    meta = {
-      broken = true;
-    };
-  };
-  odepack_slash_lsode = {
-    pname = "odepack_lsode";
-    version = "20200925-git";
-    asds = [ "odepack" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/f2cl/2020-09-25/f2cl-20200925-git.tgz";
-      sha256 = "0kq1lrz0sg4kj64w0ysihnfwi65pami362fs2mvpyf1yhgxmq08y";
-      system = "odepack";
-      asd = "odepack";
-    });
-    systems = [ "odepack/lsode" ];
-    lispLibs = [  ];
-    meta = {
-      broken = true;
-    };
-  };
-  odepack_slash_lsode-demo = {
-    pname = "odepack_lsode-demo";
-    version = "20200925-git";
-    asds = [ "odepack" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/f2cl/2020-09-25/f2cl-20200925-git.tgz";
-      sha256 = "0kq1lrz0sg4kj64w0ysihnfwi65pami362fs2mvpyf1yhgxmq08y";
-      system = "odepack";
-      asd = "odepack";
-    });
-    systems = [ "odepack/lsode-demo" ];
-    lispLibs = [  ];
-    meta = {
-      broken = true;
-    };
-  };
-  odepack_slash_lsodi-demo = {
-    pname = "odepack_lsodi-demo";
-    version = "20200925-git";
-    asds = [ "odepack" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/f2cl/2020-09-25/f2cl-20200925-git.tgz";
-      sha256 = "0kq1lrz0sg4kj64w0ysihnfwi65pami362fs2mvpyf1yhgxmq08y";
-      system = "odepack";
-      asd = "odepack";
-    });
-    systems = [ "odepack/lsodi-demo" ];
-    lispLibs = [ (getAttr "odepack" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  odepack_slash_lsodkr-demo = {
-    pname = "odepack_lsodkr-demo";
-    version = "20200925-git";
-    asds = [ "odepack" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/f2cl/2020-09-25/f2cl-20200925-git.tgz";
-      sha256 = "0kq1lrz0sg4kj64w0ysihnfwi65pami362fs2mvpyf1yhgxmq08y";
-      system = "odepack";
-      asd = "odepack";
-    });
-    systems = [ "odepack/lsodkr-demo" ];
-    lispLibs = [ (getAttr "odepack" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  odepack_slash_lsodpk-demo = {
-    pname = "odepack_lsodpk-demo";
-    version = "20200925-git";
-    asds = [ "odepack" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/f2cl/2020-09-25/f2cl-20200925-git.tgz";
-      sha256 = "0kq1lrz0sg4kj64w0ysihnfwi65pami362fs2mvpyf1yhgxmq08y";
-      system = "odepack";
-      asd = "odepack";
-    });
-    systems = [ "odepack/lsodpk-demo" ];
-    lispLibs = [ (getAttr "odepack" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  odepack_slash_lsoibt-demo = {
-    pname = "odepack_lsoibt-demo";
-    version = "20200925-git";
-    asds = [ "odepack" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/f2cl/2020-09-25/f2cl-20200925-git.tgz";
-      sha256 = "0kq1lrz0sg4kj64w0ysihnfwi65pami362fs2mvpyf1yhgxmq08y";
-      system = "odepack";
-      asd = "odepack";
-    });
-    systems = [ "odepack/lsoibt-demo" ];
-    lispLibs = [ (getAttr "odepack" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  odepack_slash_package = {
-    pname = "odepack_package";
-    version = "20200925-git";
-    asds = [ "odepack" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/f2cl/2020-09-25/f2cl-20200925-git.tgz";
-      sha256 = "0kq1lrz0sg4kj64w0ysihnfwi65pami362fs2mvpyf1yhgxmq08y";
-      system = "odepack";
-      asd = "odepack";
-    });
-    systems = [ "odepack/package" ];
-    lispLibs = [  ];
-    meta = {
-      broken = true;
-    };
-  };
-  odesk = {
-    pname = "odesk";
-    version = "20150608-git";
-    asds = [ "odesk" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-odesk/2015-06-08/cl-odesk-20150608-git.tgz";
-      sha256 = "1j5pjq4aw83m1in0l7ljn7jq4ixckg91p4h0lwf420xks3lhi4ka";
-      system = "odesk";
-      asd = "odesk";
-    });
-    systems = [ "odesk" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cl-ppcre" pkgs) (getAttr "drakma" pkgs) (getAttr "iterate" pkgs) (getAttr "md5" pkgs) (getAttr "split-sequence" pkgs) ];
-  };
-  oe-encode = {
-    pname = "oe-encode";
-    version = "20150804-git";
-    asds = [ "oe-encode" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/oe-encode/2015-08-04/oe-encode-20150804-git.tgz";
-      sha256 = "18hd97509vpg04gaf8lzjr2jfyj3w4ql1ydb5202p2r9k4qpvnj9";
-      system = "oe-encode";
-      asd = "oe-encode";
-    });
-    systems = [ "oe-encode" ];
-    lispLibs = [ (getAttr "babel" pkgs) ];
-  };
-  oe-encode-test = {
-    pname = "oe-encode-test";
-    version = "20150804-git";
-    asds = [ "oe-encode-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/oe-encode/2015-08-04/oe-encode-20150804-git.tgz";
-      sha256 = "18hd97509vpg04gaf8lzjr2jfyj3w4ql1ydb5202p2r9k4qpvnj9";
-      system = "oe-encode-test";
-      asd = "oe-encode";
-    });
-    systems = [ "oe-encode-test" ];
-    lispLibs = [ (getAttr "clunit" pkgs) (getAttr "oe-encode" pkgs) ];
-  };
-  olc = {
-    pname = "olc";
-    version = "20220331-git";
-    asds = [ "olc" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/olc/2022-03-31/olc-20220331-git.tgz";
-      sha256 = "02r6w9kfa6v4a12y2azmyjkxbn54r1y18c6a024vq4y6zp20fqnz";
-      system = "olc";
-      asd = "olc";
-    });
-    systems = [ "olc" ];
-    lispLibs = [  ];
-  };
-  olc_slash_tests = {
-    pname = "olc_tests";
-    version = "20220331-git";
-    asds = [ "olc" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/olc/2022-03-31/olc-20220331-git.tgz";
-      sha256 = "02r6w9kfa6v4a12y2azmyjkxbn54r1y18c6a024vq4y6zp20fqnz";
-      system = "olc";
-      asd = "olc";
-    });
-    systems = [ "olc/tests" ];
-    lispLibs = [ (getAttr "fiveam" pkgs) (getAttr "olc" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  omg = {
-    pname = "omg";
-    version = "20221106-git";
-    asds = [ "omg" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/omglib/2022-11-06/omglib-20221106-git.tgz";
-      sha256 = "0bdzs6ba5bk50512116af4dglfaw1sylcixay2b4f9iw9wddhb7f";
-      system = "omg";
-      asd = "omg";
-    });
-    systems = [ "omg" ];
-    lispLibs = [ (getAttr "bordeaux-threads" pkgs) (getAttr "cl-jpeg" pkgs) (getAttr "clack" pkgs) (getAttr "find-port" pkgs) (getAttr "hunchentoot" pkgs) (getAttr "inferior-shell" pkgs) (getAttr "media-types" pkgs) (getAttr "osicat" pkgs) (getAttr "pngload" pkgs) (getAttr "skippy" pkgs) (getAttr "swank" pkgs) (getAttr "trivial-utf-8" pkgs) (getAttr "uiop" pkgs) (getAttr "usocket" pkgs) (getAttr "websocket-driver-server" pkgs) ];
-  };
-  one-more-re-nightmare = {
-    pname = "one-more-re-nightmare";
-    version = "20221106-git";
-    asds = [ "one-more-re-nightmare" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/one-more-re-nightmare/2022-11-06/one-more-re-nightmare-20221106-git.tgz";
-      sha256 = "0vc0lxvn3anjb63hr26r1l18aw5nbj80w9ja3a32fip6nbwfsrfv";
-      system = "one-more-re-nightmare";
-      asd = "one-more-re-nightmare";
-    });
-    systems = [ "one-more-re-nightmare" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "babel" pkgs) (getAttr "bordeaux-threads" pkgs) (getAttr "dynamic-mixins" pkgs) (getAttr "esrap" pkgs) (getAttr "stealth-mixin" pkgs) (getAttr "trivia" pkgs) (getAttr "trivial-indent" pkgs) ];
-  };
-  one-more-re-nightmare-simd = {
-    pname = "one-more-re-nightmare-simd";
-    version = "20221106-git";
-    asds = [ "one-more-re-nightmare-simd" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/one-more-re-nightmare/2022-11-06/one-more-re-nightmare-20221106-git.tgz";
-      sha256 = "0vc0lxvn3anjb63hr26r1l18aw5nbj80w9ja3a32fip6nbwfsrfv";
-      system = "one-more-re-nightmare-simd";
-      asd = "one-more-re-nightmare-simd";
-    });
-    systems = [ "one-more-re-nightmare-simd" ];
-    lispLibs = [ (getAttr "one-more-re-nightmare" pkgs) ];
-  };
-  one-more-re-nightmare-tests = {
-    pname = "one-more-re-nightmare-tests";
-    version = "20221106-git";
-    asds = [ "one-more-re-nightmare-tests" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/one-more-re-nightmare/2022-11-06/one-more-re-nightmare-20221106-git.tgz";
-      sha256 = "0vc0lxvn3anjb63hr26r1l18aw5nbj80w9ja3a32fip6nbwfsrfv";
-      system = "one-more-re-nightmare-tests";
-      asd = "one-more-re-nightmare-tests";
-    });
-    systems = [ "one-more-re-nightmare-tests" ];
-    lispLibs = [ (getAttr "lparallel" pkgs) (getAttr "one-more-re-nightmare" pkgs) (getAttr "parachute" pkgs) ];
-  };
-  ook = {
-    pname = "ook";
-    version = "20211230-git";
-    asds = [ "ook" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/ook/2021-12-30/ook-20211230-git.tgz";
-      sha256 = "1pa6iak7z5c9260nakipkhb2z9x5gbmyyq4wrhmg7xrrxla67was";
-      system = "ook";
-      asd = "ook";
-    });
-    systems = [ "ook" ];
-    lispLibs = [  ];
-  };
-  oook = {
-    pname = "oook";
-    version = "20171130-git";
-    asds = [ "oook" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/oook/2017-11-30/oook-20171130-git.tgz";
-      sha256 = "0vxw160kbb2b624lc2aqvrx91xnmfhwz8nrzjvmbk5m55q1s4hxr";
-      system = "oook";
-      asd = "oook";
-    });
-    systems = [ "oook" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "anaphora" pkgs) (getAttr "cl-inflector" pkgs) (getAttr "closer-mop" pkgs) (getAttr "clsql" pkgs) (getAttr "jonathan" pkgs) (getAttr "parse-number" pkgs) (getAttr "semantic-spinneret" pkgs) (getAttr "spinneret" pkgs) ];
-  };
-  open-geneva = {
-    pname = "open-geneva";
-    version = "20161204-git";
-    asds = [ "open-geneva" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/geneva/2016-12-04/geneva-20161204-git.tgz";
-      sha256 = "1pw18xkbndqssx6iix8a8zcw8bgjh88jxxxrklkgkghk04bmqxw3";
-      system = "open-geneva";
-      asd = "open-geneva";
-    });
-    systems = [ "open-geneva" ];
-    lispLibs = [ (getAttr "geneva" pkgs) (getAttr "geneva-cl" pkgs) (getAttr "geneva-html" pkgs) (getAttr "geneva-latex" pkgs) (getAttr "geneva-mk2" pkgs) (getAttr "geneva-plain-text" pkgs) (getAttr "geneva-tex" pkgs) ];
-  };
-  open-location-code = {
-    pname = "open-location-code";
-    version = "20220331-git";
-    asds = [ "open-location-code" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/open-location-code/2022-03-31/open-location-code-20220331-git.tgz";
-      sha256 = "1ii8aj9kxxikgafsycy2ngrs9f2zdvmzrhggq7z5cgmi1h0fqg1z";
-      system = "open-location-code";
-      asd = "open-location-code";
-    });
-    systems = [ "open-location-code" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "iterate" pkgs) ];
-  };
-  open-vrp = {
-    pname = "open-vrp";
-    version = "20140914-git";
-    asds = [ "open-vrp" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/open-vrp/2014-09-14/open-vrp-20140914-git.tgz";
-      sha256 = "04k0kp18gpr4cfpsck7pjizawwswh372df4pvm5v87brm6xdw1fr";
-      system = "open-vrp";
-      asd = "open-vrp";
-    });
-    systems = [ "open-vrp" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "fiveam" pkgs) (getAttr "open-vrp-lib" pkgs) (getAttr "vecto" pkgs) ];
-  };
-  open-vrp-lib = {
-    pname = "open-vrp-lib";
-    version = "20140914-git";
-    asds = [ "open-vrp-lib" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/open-vrp/2014-09-14/open-vrp-20140914-git.tgz";
-      sha256 = "04k0kp18gpr4cfpsck7pjizawwswh372df4pvm5v87brm6xdw1fr";
-      system = "open-vrp-lib";
-      asd = "open-vrp-lib";
-    });
-    systems = [ "open-vrp-lib" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cl-fad" pkgs) (getAttr "fiveam" pkgs) (getAttr "vecto" pkgs) ];
-  };
-  openal-blob = {
-    pname = "openal-blob";
-    version = "stable-git";
-    asds = [ "openal-blob" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/openal-blob/2020-10-16/openal-blob-stable-git.tgz";
-      sha256 = "0bspdqb0xbvwvi6xkn88n4jswpds8fzbgj44ygm7mi6lpwp7lmv2";
-      system = "openal-blob";
-      asd = "openal-blob";
-    });
-    systems = [ "openal-blob" ];
-    lispLibs = [ (getAttr "base-blobs" pkgs) (getAttr "bodge-blobs-support" pkgs) (getAttr "trivial-features" pkgs) ];
-  };
-  openapi-parser = {
-    pname = "openapi-parser";
-    version = "20210630-git";
-    asds = [ "openapi-parser" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-openapi-parser/2021-06-30/cl-openapi-parser-20210630-git.tgz";
-      sha256 = "0s1h4pfjfl7rkxyc27p2w7f3s88fn133nj0wqbh897h5jz13rkmg";
-      system = "openapi-parser";
-      asd = "openapi-parser";
-    });
-    systems = [ "openapi-parser" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cl-change-case" pkgs) (getAttr "cl-package-locks" pkgs) (getAttr "str" pkgs) (getAttr "cl-yaml" pkgs) (getAttr "closer-mop" pkgs) (getAttr "esrap" pkgs) (getAttr "trivia" pkgs) (getAttr "trivial-types" pkgs) ];
-  };
-  openapi-parser-tests = {
-    pname = "openapi-parser-tests";
-    version = "20210630-git";
-    asds = [ "openapi-parser-tests" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-openapi-parser/2021-06-30/cl-openapi-parser-20210630-git.tgz";
-      sha256 = "0s1h4pfjfl7rkxyc27p2w7f3s88fn133nj0wqbh897h5jz13rkmg";
-      system = "openapi-parser-tests";
-      asd = "openapi-parser";
-    });
-    systems = [ "openapi-parser-tests" ];
-    lispLibs = [ (getAttr "openapi-parser" pkgs) (getAttr "rove" pkgs) ];
-  };
-  openid-key = {
-    pname = "openid-key";
-    version = "20181210-git";
-    asds = [ "openid-key" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/openid-key/2018-12-10/openid-key-20181210-git.tgz";
-      sha256 = "0ja1g4f8nrcn965376j7lnhha9krx4wjqxrg6vc57k7rmkhkzm1z";
-      system = "openid-key";
-      asd = "openid-key";
-    });
-    systems = [ "openid-key" ];
-    lispLibs = [ (getAttr "cl-base64" pkgs) (getAttr "dexador" pkgs) (getAttr "ironclad" pkgs) (getAttr "jonathan" pkgs) (getAttr "local-time" pkgs) (getAttr "quri" pkgs) (getAttr "trivial-rfc-1123" pkgs) ];
-  };
-  openid-key-test = {
-    pname = "openid-key-test";
-    version = "20181210-git";
-    asds = [ "openid-key-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/openid-key/2018-12-10/openid-key-20181210-git.tgz";
-      sha256 = "0ja1g4f8nrcn965376j7lnhha9krx4wjqxrg6vc57k7rmkhkzm1z";
-      system = "openid-key-test";
-      asd = "openid-key-test";
-    });
-    systems = [ "openid-key-test" ];
-    lispLibs = [ (getAttr "_1am" pkgs) (getAttr "openid-key" pkgs) ];
-  };
-  ops-test = {
-    pname = "ops-test";
-    version = "20211020-git";
-    asds = [ "ops-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-png/2021-10-20/cl-png-20211020-git.tgz";
-      sha256 = "17xcb9ps5vf3if61blmx7cpfrz3gsw7jk8d5zv3f4cq8jrriqdx4";
-      system = "ops-test";
-      asd = "ops-test";
-    });
-    systems = [ "ops-test" ];
-    lispLibs = [ (getAttr "png" pkgs) ];
-  };
-  ops5 = {
-    pname = "ops5";
-    version = "20200218-git";
-    asds = [ "ops5" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/ops5/2020-02-18/ops5-20200218-git.tgz";
-      sha256 = "1q2mrza40qvhny06f4ks2dghyk8a7pjjsi3vj83b9if7fmyj152a";
-      system = "ops5";
-      asd = "ops5";
-    });
-    systems = [ "ops5" ];
-    lispLibs = [  ];
-  };
-  opticl = {
-    pname = "opticl";
-    version = "20220220-git";
-    asds = [ "opticl" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/opticl/2022-02-20/opticl-20220220-git.tgz";
-      sha256 = "1jx9n78d4lf53iz24yid34l92zrpqxfihv6049ixcy0xigf7j4ac";
-      system = "opticl";
-      asd = "opticl";
-    });
-    systems = [ "opticl" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cl-jpeg" pkgs) (getAttr "cl-tga" pkgs) (getAttr "opticl-core" pkgs) (getAttr "pngload" pkgs) (getAttr "retrospectiff" pkgs) (getAttr "skippy" pkgs) (getAttr "zpng" pkgs) ];
-  };
-  opticl-core = {
-    pname = "opticl-core";
-    version = "20171019-git";
-    asds = [ "opticl-core" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/opticl-core/2017-10-19/opticl-core-20171019-git.tgz";
-      sha256 = "0458bllabcdjghfrqx6aki49c9qmvfmkk8jl75cfpi7q0i12kh95";
-      system = "opticl-core";
-      asd = "opticl-core";
-    });
-    systems = [ "opticl-core" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) ];
-  };
-  opticl-doc = {
-    pname = "opticl-doc";
-    version = "20220220-git";
-    asds = [ "opticl-doc" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/opticl/2022-02-20/opticl-20220220-git.tgz";
-      sha256 = "1jx9n78d4lf53iz24yid34l92zrpqxfihv6049ixcy0xigf7j4ac";
-      system = "opticl-doc";
-      asd = "opticl-doc";
-    });
-    systems = [ "opticl-doc" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cl-containers" pkgs) (getAttr "cl-markdown" pkgs) (getAttr "opticl" pkgs) ];
-  };
-  opticl_slash_test = {
-    pname = "opticl_test";
-    version = "20220220-git";
-    asds = [ "opticl" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/opticl/2022-02-20/opticl-20220220-git.tgz";
-      sha256 = "1jx9n78d4lf53iz24yid34l92zrpqxfihv6049ixcy0xigf7j4ac";
-      system = "opticl";
-      asd = "opticl";
-    });
-    systems = [ "opticl/test" ];
-    lispLibs = [ (getAttr "fiveam" pkgs) (getAttr "opticl" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  optima = {
-    pname = "optima";
-    version = "20150709-git";
-    asds = [ "optima" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/optima/2015-07-09/optima-20150709-git.tgz";
-      sha256 = "1yw4ymq7ms89342kkvb3aqxgv0w38m9kd8ikdqxxzyybnkjhndal";
-      system = "optima";
-      asd = "optima";
-    });
-    systems = [ "optima" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "closer-mop" pkgs) ];
-  };
-  optima_dot_ppcre = {
-    pname = "optima.ppcre";
-    version = "20150709-git";
-    asds = [ "optima.ppcre" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/optima/2015-07-09/optima-20150709-git.tgz";
-      sha256 = "1yw4ymq7ms89342kkvb3aqxgv0w38m9kd8ikdqxxzyybnkjhndal";
-      system = "optima.ppcre";
-      asd = "optima.ppcre";
-    });
-    systems = [ "optima.ppcre" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cl-ppcre" pkgs) (getAttr "optima" pkgs) ];
-  };
-  optima_dot_test = {
-    pname = "optima.test";
-    version = "20150709-git";
-    asds = [ "optima.test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/optima/2015-07-09/optima-20150709-git.tgz";
-      sha256 = "1yw4ymq7ms89342kkvb3aqxgv0w38m9kd8ikdqxxzyybnkjhndal";
-      system = "optima.test";
-      asd = "optima.test";
-    });
-    systems = [ "optima.test" ];
-    lispLibs = [ (getAttr "eos" pkgs) (getAttr "optima" pkgs) (getAttr "optima_dot_ppcre" pkgs) ];
-  };
-  or-cluster = {
-    pname = "or-cluster";
-    version = "20170403-git";
-    asds = [ "or-cluster" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-opsresearch/2017-04-03/cl-opsresearch-20170403-git.tgz";
-      sha256 = "1fipw6qjggswzcg8ifwx5qnhnc7mmi53s6h14l0vzj6afa5rdpm7";
-      system = "or-cluster";
-      asd = "or-cluster";
-    });
-    systems = [ "or-cluster" ];
-    lispLibs = [ (getAttr "cl-opsresearch" pkgs) (getAttr "drakma" pkgs) (getAttr "hunchentoot" pkgs) ];
-  };
-  or-fann = {
-    pname = "or-fann";
-    version = "20170403-git";
-    asds = [ "or-fann" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-opsresearch/2017-04-03/cl-opsresearch-20170403-git.tgz";
-      sha256 = "1fipw6qjggswzcg8ifwx5qnhnc7mmi53s6h14l0vzj6afa5rdpm7";
-      system = "or-fann";
-      asd = "or-fann";
-    });
-    systems = [ "or-fann" ];
-    lispLibs = [ (getAttr "cffi" pkgs) (getAttr "cl-opsresearch" pkgs) ];
-  };
-  or-glpk = {
-    pname = "or-glpk";
-    version = "20170403-git";
-    asds = [ "or-glpk" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-opsresearch/2017-04-03/cl-opsresearch-20170403-git.tgz";
-      sha256 = "1fipw6qjggswzcg8ifwx5qnhnc7mmi53s6h14l0vzj6afa5rdpm7";
-      system = "or-glpk";
-      asd = "or-glpk";
-    });
-    systems = [ "or-glpk" ];
-    lispLibs = [ (getAttr "cffi" pkgs) (getAttr "cl-opsresearch" pkgs) ];
-  };
-  or-gsl = {
-    pname = "or-gsl";
-    version = "20170403-git";
-    asds = [ "or-gsl" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-opsresearch/2017-04-03/cl-opsresearch-20170403-git.tgz";
-      sha256 = "1fipw6qjggswzcg8ifwx5qnhnc7mmi53s6h14l0vzj6afa5rdpm7";
-      system = "or-gsl";
-      asd = "or-gsl";
-    });
-    systems = [ "or-gsl" ];
-    lispLibs = [ (getAttr "cffi" pkgs) (getAttr "cl-opsresearch" pkgs) ];
-  };
-  or-test = {
-    pname = "or-test";
-    version = "20170403-git";
-    asds = [ "or-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-opsresearch/2017-04-03/cl-opsresearch-20170403-git.tgz";
-      sha256 = "1fipw6qjggswzcg8ifwx5qnhnc7mmi53s6h14l0vzj6afa5rdpm7";
-      system = "or-test";
-      asd = "or-test";
-    });
-    systems = [ "or-test" ];
-    lispLibs = [ (getAttr "cl-opsresearch" pkgs) (getAttr "or-fann" pkgs) (getAttr "or-glpk" pkgs) (getAttr "or-gsl" pkgs) (getAttr "fiveam" pkgs) ];
-  };
-  org-davep-dict = {
-    pname = "org-davep-dict";
-    version = "20190521-git";
-    asds = [ "org-davep-dict" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/org-davep-dict/2019-05-21/org-davep-dict-20190521-git.tgz";
-      sha256 = "09dryqlprssrw0jpcg2313cc1hmlsasxvp1rs5z7axhasc16kl31";
-      system = "org-davep-dict";
-      asd = "org-davep-dict";
-    });
-    systems = [ "org-davep-dict" ];
-    lispLibs = [ (getAttr "cl-ppcre" pkgs) (getAttr "acl-compat" pkgs) (getAttr "split-sequence" pkgs) ];
-  };
-  org-davep-dictrepl = {
-    pname = "org-davep-dictrepl";
-    version = "20190521-git";
-    asds = [ "org-davep-dictrepl" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/org-davep-dictrepl/2019-05-21/org-davep-dictrepl-20190521-git.tgz";
-      sha256 = "1s461asil8cxsbcpyxsw3g7phdn5c3mwv6wswp86hsxiga5hi327";
-      system = "org-davep-dictrepl";
-      asd = "org-davep-dictrepl";
-    });
-    systems = [ "org-davep-dictrepl" ];
-    lispLibs = [ (getAttr "org-davep-dict" pkgs) ];
-  };
-  org-sampler = {
-    pname = "org-sampler";
-    version = "0.2.0";
-    asds = [ "org-sampler" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/org-sampler/2016-03-18/org-sampler-0.2.0.tgz";
-      sha256 = "1j2i24x9afxp6s5gyqlvy11c0lq9rzhmdj1bf0qpxcaa4znj48c3";
-      system = "org-sampler";
-      asd = "org-sampler";
-    });
-    systems = [ "org-sampler" ];
-    lispLibs = [ (getAttr "iterate" pkgs) ];
-  };
-  org_dot_melusina_dot_confidence = {
-    pname = "org.melusina.confidence";
-    version = "20221106-git";
-    asds = [ "org.melusina.confidence" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-confidence/2022-11-06/cl-confidence-20221106-git.tgz";
-      sha256 = "17xb8k53ncpp7h8b5g9y56cg5imrczxx8zpr5xkslrvlsb551i1q";
-      system = "org.melusina.confidence";
-      asd = "org.melusina.confidence";
-    });
-    systems = [ "org.melusina.confidence" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) ];
-  };
-  org_dot_melusina_dot_confidence_slash_testsuite = {
-    pname = "org.melusina.confidence_testsuite";
-    version = "20221106-git";
-    asds = [ "org.melusina.confidence" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-confidence/2022-11-06/cl-confidence-20221106-git.tgz";
-      sha256 = "17xb8k53ncpp7h8b5g9y56cg5imrczxx8zpr5xkslrvlsb551i1q";
-      system = "org.melusina.confidence";
-      asd = "org.melusina.confidence";
-    });
-    systems = [ "org.melusina.confidence/testsuite" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "org_dot_melusina_dot_confidence" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  org_dot_melusina_dot_rashell = {
-    pname = "org.melusina.rashell";
-    version = "20220707-git";
-    asds = [ "org.melusina.rashell" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-rashell/2022-07-07/cl-rashell-20220707-git.tgz";
-      sha256 = "1g99ymyl61sn62rn9sq9cznx67ydz34dvm2x5b0ljd6p503j1wp9";
-      system = "org.melusina.rashell";
-      asd = "org.melusina.rashell";
-    });
-    systems = [ "org.melusina.rashell" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cl-ppcre" pkgs) (getAttr "parse-float" pkgs) ];
-  };
-  org_dot_melusina_dot_rashell_slash_testsuite = {
-    pname = "org.melusina.rashell_testsuite";
-    version = "20220707-git";
-    asds = [ "org.melusina.rashell" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-rashell/2022-07-07/cl-rashell-20220707-git.tgz";
-      sha256 = "1g99ymyl61sn62rn9sq9cznx67ydz34dvm2x5b0ljd6p503j1wp9";
-      system = "org.melusina.rashell";
-      asd = "org.melusina.rashell";
-    });
-    systems = [ "org.melusina.rashell/testsuite" ];
-    lispLibs = [ (getAttr "org_dot_melusina_dot_confidence" pkgs) (getAttr "org_dot_melusina_dot_rashell" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  org_dot_tfeb_dot_conduit-packages = {
-    pname = "org.tfeb.conduit-packages";
-    version = "20221106-git";
-    asds = [ "org.tfeb.conduit-packages" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/conduit-packages/2022-11-06/conduit-packages-20221106-git.tgz";
-      sha256 = "16mqbwwgpx4k462cnh59j184530dcsr1cbps0jjh0v0yfamyvnqk";
-      system = "org.tfeb.conduit-packages";
-      asd = "org.tfeb.conduit-packages";
-    });
-    systems = [ "org.tfeb.conduit-packages" ];
-    lispLibs = [  ];
-  };
-  org_dot_tfeb_dot_dsm = {
-    pname = "org.tfeb.dsm";
-    version = "20221106-git";
-    asds = [ "org.tfeb.dsm" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/dsm/2022-11-06/dsm-20221106-git.tgz";
-      sha256 = "0xxlv8l7fa5mp8qfvh94ndjm4rz89xjs0xj4sni30f2vnzqsyfij";
-      system = "org.tfeb.dsm";
-      asd = "org.tfeb.dsm";
-    });
-    systems = [ "org.tfeb.dsm" ];
-    lispLibs = [ (getAttr "org_dot_tfeb_dot_hax_dot_collecting" pkgs) (getAttr "org_dot_tfeb_dot_hax_dot_iterate" pkgs) (getAttr "org_dot_tfeb_dot_hax_dot_simple-loops" pkgs) (getAttr "org_dot_tfeb_dot_hax_dot_spam" pkgs) (getAttr "org_dot_tfeb_dot_hax_dot_utilities" pkgs) (getAttr "org_dot_tfeb_dot_tools_dot_require-module" pkgs) ];
-  };
-  org_dot_tfeb_dot_dsm_slash_bench = {
-    pname = "org.tfeb.dsm_bench";
-    version = "20221106-git";
-    asds = [ "org.tfeb.dsm" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/dsm/2022-11-06/dsm-20221106-git.tgz";
-      sha256 = "0xxlv8l7fa5mp8qfvh94ndjm4rz89xjs0xj4sni30f2vnzqsyfij";
-      system = "org.tfeb.dsm";
-      asd = "org.tfeb.dsm";
-    });
-    systems = [ "org.tfeb.dsm/bench" ];
-    lispLibs = [ (getAttr "org_dot_tfeb_dot_dsm" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  org_dot_tfeb_dot_dsm_slash_test = {
-    pname = "org.tfeb.dsm_test";
-    version = "20221106-git";
-    asds = [ "org.tfeb.dsm" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/dsm/2022-11-06/dsm-20221106-git.tgz";
-      sha256 = "0xxlv8l7fa5mp8qfvh94ndjm4rz89xjs0xj4sni30f2vnzqsyfij";
-      system = "org.tfeb.dsm";
-      asd = "org.tfeb.dsm";
-    });
-    systems = [ "org.tfeb.dsm/test" ];
-    lispLibs = [ (getAttr "org_dot_tfeb_dot_dsm" pkgs) (getAttr "parachute" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  org_dot_tfeb_dot_hax = {
-    pname = "org.tfeb.hax";
-    version = "20221106-git";
-    asds = [ "org.tfeb.hax" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/tfeb-lisp-hax/2022-11-06/tfeb-lisp-hax-20221106-git.tgz";
-      sha256 = "0l36jlril1ypx1866dmsk7czlc61rj2i9yn97qaapwxbqhf7ypxp";
-      system = "org.tfeb.hax";
-      asd = "org.tfeb.hax";
-    });
-    systems = [ "org.tfeb.hax" ];
-    lispLibs = [ (getAttr "closer-mop" pkgs) ];
-  };
-  org_dot_tfeb_dot_hax_dot_abstract-classes = {
-    pname = "org.tfeb.hax.abstract-classes";
-    version = "20221106-git";
-    asds = [ "org.tfeb.hax.abstract-classes" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/tfeb-lisp-hax/2022-11-06/tfeb-lisp-hax-20221106-git.tgz";
-      sha256 = "0l36jlril1ypx1866dmsk7czlc61rj2i9yn97qaapwxbqhf7ypxp";
-      system = "org.tfeb.hax.abstract-classes";
-      asd = "org.tfeb.hax.abstract-classes";
-    });
-    systems = [ "org.tfeb.hax.abstract-classes" ];
-    lispLibs = [ (getAttr "closer-mop" pkgs) ];
-  };
-  org_dot_tfeb_dot_hax_dot_binding = {
-    pname = "org.tfeb.hax.binding";
-    version = "20221106-git";
-    asds = [ "org.tfeb.hax.binding" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/tfeb-lisp-hax/2022-11-06/tfeb-lisp-hax-20221106-git.tgz";
-      sha256 = "0l36jlril1ypx1866dmsk7czlc61rj2i9yn97qaapwxbqhf7ypxp";
-      system = "org.tfeb.hax.binding";
-      asd = "org.tfeb.hax.binding";
-    });
-    systems = [ "org.tfeb.hax.binding" ];
-    lispLibs = [ (getAttr "org_dot_tfeb_dot_hax_dot_collecting" pkgs) (getAttr "org_dot_tfeb_dot_hax_dot_iterate" pkgs) ];
-  };
-  org_dot_tfeb_dot_hax_dot_collecting = {
-    pname = "org.tfeb.hax.collecting";
-    version = "20221106-git";
-    asds = [ "org.tfeb.hax.collecting" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/tfeb-lisp-hax/2022-11-06/tfeb-lisp-hax-20221106-git.tgz";
-      sha256 = "0l36jlril1ypx1866dmsk7czlc61rj2i9yn97qaapwxbqhf7ypxp";
-      system = "org.tfeb.hax.collecting";
-      asd = "org.tfeb.hax.collecting";
-    });
-    systems = [ "org.tfeb.hax.collecting" ];
-    lispLibs = [  ];
-  };
-  org_dot_tfeb_dot_hax_dot_comment-form = {
-    pname = "org.tfeb.hax.comment-form";
-    version = "20221106-git";
-    asds = [ "org.tfeb.hax.comment-form" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/tfeb-lisp-hax/2022-11-06/tfeb-lisp-hax-20221106-git.tgz";
-      sha256 = "0l36jlril1ypx1866dmsk7czlc61rj2i9yn97qaapwxbqhf7ypxp";
-      system = "org.tfeb.hax.comment-form";
-      asd = "org.tfeb.hax.comment-form";
-    });
-    systems = [ "org.tfeb.hax.comment-form" ];
-    lispLibs = [  ];
-  };
-  org_dot_tfeb_dot_hax_dot_cs-forms = {
-    pname = "org.tfeb.hax.cs-forms";
-    version = "20221106-git";
-    asds = [ "org.tfeb.hax.cs-forms" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/tfeb-lisp-hax/2022-11-06/tfeb-lisp-hax-20221106-git.tgz";
-      sha256 = "0l36jlril1ypx1866dmsk7czlc61rj2i9yn97qaapwxbqhf7ypxp";
-      system = "org.tfeb.hax.cs-forms";
-      asd = "org.tfeb.hax.cs-forms";
-    });
-    systems = [ "org.tfeb.hax.cs-forms" ];
-    lispLibs = [  ];
-  };
-  org_dot_tfeb_dot_hax_dot_define-functions = {
-    pname = "org.tfeb.hax.define-functions";
-    version = "20221106-git";
-    asds = [ "org.tfeb.hax.define-functions" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/tfeb-lisp-hax/2022-11-06/tfeb-lisp-hax-20221106-git.tgz";
-      sha256 = "0l36jlril1ypx1866dmsk7czlc61rj2i9yn97qaapwxbqhf7ypxp";
-      system = "org.tfeb.hax.define-functions";
-      asd = "org.tfeb.hax.define-functions";
-    });
-    systems = [ "org.tfeb.hax.define-functions" ];
-    lispLibs = [  ];
-  };
-  org_dot_tfeb_dot_hax_dot_dynamic-state = {
-    pname = "org.tfeb.hax.dynamic-state";
-    version = "20221106-git";
-    asds = [ "org.tfeb.hax.dynamic-state" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/tfeb-lisp-hax/2022-11-06/tfeb-lisp-hax-20221106-git.tgz";
-      sha256 = "0l36jlril1ypx1866dmsk7czlc61rj2i9yn97qaapwxbqhf7ypxp";
-      system = "org.tfeb.hax.dynamic-state";
-      asd = "org.tfeb.hax.dynamic-state";
-    });
-    systems = [ "org.tfeb.hax.dynamic-state" ];
-    lispLibs = [  ];
-  };
-  org_dot_tfeb_dot_hax_dot_iterate = {
-    pname = "org.tfeb.hax.iterate";
-    version = "20221106-git";
-    asds = [ "org.tfeb.hax.iterate" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/tfeb-lisp-hax/2022-11-06/tfeb-lisp-hax-20221106-git.tgz";
-      sha256 = "0l36jlril1ypx1866dmsk7czlc61rj2i9yn97qaapwxbqhf7ypxp";
-      system = "org.tfeb.hax.iterate";
-      asd = "org.tfeb.hax.iterate";
-    });
-    systems = [ "org.tfeb.hax.iterate" ];
-    lispLibs = [  ];
-  };
-  org_dot_tfeb_dot_hax_dot_memoize = {
-    pname = "org.tfeb.hax.memoize";
-    version = "20221106-git";
-    asds = [ "org.tfeb.hax.memoize" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/tfeb-lisp-hax/2022-11-06/tfeb-lisp-hax-20221106-git.tgz";
-      sha256 = "0l36jlril1ypx1866dmsk7czlc61rj2i9yn97qaapwxbqhf7ypxp";
-      system = "org.tfeb.hax.memoize";
-      asd = "org.tfeb.hax.memoize";
-    });
-    systems = [ "org.tfeb.hax.memoize" ];
-    lispLibs = [  ];
-  };
-  org_dot_tfeb_dot_hax_dot_metatronic = {
-    pname = "org.tfeb.hax.metatronic";
-    version = "20221106-git";
-    asds = [ "org.tfeb.hax.metatronic" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/tfeb-lisp-hax/2022-11-06/tfeb-lisp-hax-20221106-git.tgz";
-      sha256 = "0l36jlril1ypx1866dmsk7czlc61rj2i9yn97qaapwxbqhf7ypxp";
-      system = "org.tfeb.hax.metatronic";
-      asd = "org.tfeb.hax.metatronic";
-    });
-    systems = [ "org.tfeb.hax.metatronic" ];
-    lispLibs = [ (getAttr "org_dot_tfeb_dot_hax_dot_utilities" pkgs) ];
-  };
-  org_dot_tfeb_dot_hax_dot_object-accessors = {
-    pname = "org.tfeb.hax.object-accessors";
-    version = "20221106-git";
-    asds = [ "org.tfeb.hax.object-accessors" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/tfeb-lisp-hax/2022-11-06/tfeb-lisp-hax-20221106-git.tgz";
-      sha256 = "0l36jlril1ypx1866dmsk7czlc61rj2i9yn97qaapwxbqhf7ypxp";
-      system = "org.tfeb.hax.object-accessors";
-      asd = "org.tfeb.hax.object-accessors";
-    });
-    systems = [ "org.tfeb.hax.object-accessors" ];
-    lispLibs = [  ];
-  };
-  org_dot_tfeb_dot_hax_dot_read-package = {
-    pname = "org.tfeb.hax.read-package";
-    version = "20221106-git";
-    asds = [ "org.tfeb.hax.read-package" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/tfeb-lisp-hax/2022-11-06/tfeb-lisp-hax-20221106-git.tgz";
-      sha256 = "0l36jlril1ypx1866dmsk7czlc61rj2i9yn97qaapwxbqhf7ypxp";
-      system = "org.tfeb.hax.read-package";
-      asd = "org.tfeb.hax.read-package";
-    });
-    systems = [ "org.tfeb.hax.read-package" ];
-    lispLibs = [  ];
-  };
-  org_dot_tfeb_dot_hax_dot_simple-loops = {
-    pname = "org.tfeb.hax.simple-loops";
-    version = "20221106-git";
-    asds = [ "org.tfeb.hax.simple-loops" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/tfeb-lisp-hax/2022-11-06/tfeb-lisp-hax-20221106-git.tgz";
-      sha256 = "0l36jlril1ypx1866dmsk7czlc61rj2i9yn97qaapwxbqhf7ypxp";
-      system = "org.tfeb.hax.simple-loops";
-      asd = "org.tfeb.hax.simple-loops";
-    });
-    systems = [ "org.tfeb.hax.simple-loops" ];
-    lispLibs = [ (getAttr "org_dot_tfeb_dot_hax_dot_collecting" pkgs) (getAttr "org_dot_tfeb_dot_hax_dot_iterate" pkgs) (getAttr "org_dot_tfeb_dot_hax_dot_utilities" pkgs) ];
-  };
-  org_dot_tfeb_dot_hax_dot_singleton-classes = {
-    pname = "org.tfeb.hax.singleton-classes";
-    version = "20221106-git";
-    asds = [ "org.tfeb.hax.singleton-classes" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/tfeb-lisp-hax/2022-11-06/tfeb-lisp-hax-20221106-git.tgz";
-      sha256 = "0l36jlril1ypx1866dmsk7czlc61rj2i9yn97qaapwxbqhf7ypxp";
-      system = "org.tfeb.hax.singleton-classes";
-      asd = "org.tfeb.hax.singleton-classes";
-    });
-    systems = [ "org.tfeb.hax.singleton-classes" ];
-    lispLibs = [ (getAttr "closer-mop" pkgs) ];
-  };
-  org_dot_tfeb_dot_hax_dot_slog = {
-    pname = "org.tfeb.hax.slog";
-    version = "20221106-git";
-    asds = [ "org.tfeb.hax.slog" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/tfeb-lisp-hax/2022-11-06/tfeb-lisp-hax-20221106-git.tgz";
-      sha256 = "0l36jlril1ypx1866dmsk7czlc61rj2i9yn97qaapwxbqhf7ypxp";
-      system = "org.tfeb.hax.slog";
-      asd = "org.tfeb.hax.slog";
-    });
-    systems = [ "org.tfeb.hax.slog" ];
-    lispLibs = [ (getAttr "org_dot_tfeb_dot_hax_dot_collecting" pkgs) (getAttr "org_dot_tfeb_dot_hax_dot_metatronic" pkgs) (getAttr "org_dot_tfeb_dot_hax_dot_simple-loops" pkgs) (getAttr "org_dot_tfeb_dot_hax_dot_spam" pkgs) ];
-  };
-  org_dot_tfeb_dot_hax_dot_spam = {
-    pname = "org.tfeb.hax.spam";
-    version = "20221106-git";
-    asds = [ "org.tfeb.hax.spam" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/tfeb-lisp-hax/2022-11-06/tfeb-lisp-hax-20221106-git.tgz";
-      sha256 = "0l36jlril1ypx1866dmsk7czlc61rj2i9yn97qaapwxbqhf7ypxp";
-      system = "org.tfeb.hax.spam";
-      asd = "org.tfeb.hax.spam";
-    });
-    systems = [ "org.tfeb.hax.spam" ];
-    lispLibs = [ (getAttr "org_dot_tfeb_dot_hax_dot_simple-loops" pkgs) ];
-  };
-  org_dot_tfeb_dot_hax_dot_stringtable = {
-    pname = "org.tfeb.hax.stringtable";
-    version = "20221106-git";
-    asds = [ "org.tfeb.hax.stringtable" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/tfeb-lisp-hax/2022-11-06/tfeb-lisp-hax-20221106-git.tgz";
-      sha256 = "0l36jlril1ypx1866dmsk7czlc61rj2i9yn97qaapwxbqhf7ypxp";
-      system = "org.tfeb.hax.stringtable";
-      asd = "org.tfeb.hax.stringtable";
-    });
-    systems = [ "org.tfeb.hax.stringtable" ];
-    lispLibs = [ (getAttr "org_dot_tfeb_dot_hax_dot_collecting" pkgs) (getAttr "org_dot_tfeb_dot_hax_dot_iterate" pkgs) ];
-  };
-  org_dot_tfeb_dot_hax_dot_trace-macroexpand = {
-    pname = "org.tfeb.hax.trace-macroexpand";
-    version = "20221106-git";
-    asds = [ "org.tfeb.hax.trace-macroexpand" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/tfeb-lisp-hax/2022-11-06/tfeb-lisp-hax-20221106-git.tgz";
-      sha256 = "0l36jlril1ypx1866dmsk7czlc61rj2i9yn97qaapwxbqhf7ypxp";
-      system = "org.tfeb.hax.trace-macroexpand";
-      asd = "org.tfeb.hax.trace-macroexpand";
-    });
-    systems = [ "org.tfeb.hax.trace-macroexpand" ];
-    lispLibs = [  ];
-  };
-  org_dot_tfeb_dot_hax_dot_utilities = {
-    pname = "org.tfeb.hax.utilities";
-    version = "20221106-git";
-    asds = [ "org.tfeb.hax.utilities" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/tfeb-lisp-hax/2022-11-06/tfeb-lisp-hax-20221106-git.tgz";
-      sha256 = "0l36jlril1ypx1866dmsk7czlc61rj2i9yn97qaapwxbqhf7ypxp";
-      system = "org.tfeb.hax.utilities";
-      asd = "org.tfeb.hax.utilities";
-    });
-    systems = [ "org.tfeb.hax.utilities" ];
-    lispLibs = [ (getAttr "org_dot_tfeb_dot_hax_dot_collecting" pkgs) (getAttr "org_dot_tfeb_dot_hax_dot_iterate" pkgs) ];
-  };
-  org_dot_tfeb_dot_hax_dot_wrapping-standard = {
-    pname = "org.tfeb.hax.wrapping-standard";
-    version = "20221106-git";
-    asds = [ "org.tfeb.hax.wrapping-standard" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/tfeb-lisp-hax/2022-11-06/tfeb-lisp-hax-20221106-git.tgz";
-      sha256 = "0l36jlril1ypx1866dmsk7czlc61rj2i9yn97qaapwxbqhf7ypxp";
-      system = "org.tfeb.hax.wrapping-standard";
-      asd = "org.tfeb.hax.wrapping-standard";
-    });
-    systems = [ "org.tfeb.hax.wrapping-standard" ];
-    lispLibs = [  ];
-  };
-  org_dot_tfeb_dot_hax_slash_test = {
-    pname = "org.tfeb.hax_test";
-    version = "20221106-git";
-    asds = [ "org.tfeb.hax" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/tfeb-lisp-hax/2022-11-06/tfeb-lisp-hax-20221106-git.tgz";
-      sha256 = "0l36jlril1ypx1866dmsk7czlc61rj2i9yn97qaapwxbqhf7ypxp";
-      system = "org.tfeb.hax";
-      asd = "org.tfeb.hax";
-    });
-    systems = [ "org.tfeb.hax/test" ];
-    lispLibs = [ (getAttr "parachute" pkgs) (getAttr "org_dot_tfeb_dot_hax" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  org_dot_tfeb_dot_tools = {
-    pname = "org.tfeb.tools";
-    version = "20221106-git";
-    asds = [ "org.tfeb.tools" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/tfeb-lisp-tools/2022-11-06/tfeb-lisp-tools-20221106-git.tgz";
-      sha256 = "0c2fsp6faha741h5ppdm69vhvrwk1lzxlng030jxl1gam846h7c0";
-      system = "org.tfeb.tools";
-      asd = "org.tfeb.tools";
-    });
-    systems = [ "org.tfeb.tools" ];
-    lispLibs = [  ];
-  };
-  org_dot_tfeb_dot_tools_dot_asdf-module-sysdcls = {
-    pname = "org.tfeb.tools.asdf-module-sysdcls";
-    version = "20221106-git";
-    asds = [ "org.tfeb.tools.asdf-module-sysdcls" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/tfeb-lisp-tools/2022-11-06/tfeb-lisp-tools-20221106-git.tgz";
-      sha256 = "0c2fsp6faha741h5ppdm69vhvrwk1lzxlng030jxl1gam846h7c0";
-      system = "org.tfeb.tools.asdf-module-sysdcls";
-      asd = "org.tfeb.tools.asdf-module-sysdcls";
-    });
-    systems = [ "org.tfeb.tools.asdf-module-sysdcls" ];
-    lispLibs = [  ];
-  };
-  org_dot_tfeb_dot_tools_dot_build-modules = {
-    pname = "org.tfeb.tools.build-modules";
-    version = "20221106-git";
-    asds = [ "org.tfeb.tools.build-modules" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/tfeb-lisp-tools/2022-11-06/tfeb-lisp-tools-20221106-git.tgz";
-      sha256 = "0c2fsp6faha741h5ppdm69vhvrwk1lzxlng030jxl1gam846h7c0";
-      system = "org.tfeb.tools.build-modules";
-      asd = "org.tfeb.tools.build-modules";
-    });
-    systems = [ "org.tfeb.tools.build-modules" ];
-    lispLibs = [ (getAttr "org_dot_tfeb_dot_tools_dot_require-module" pkgs) ];
-  };
-  org_dot_tfeb_dot_tools_dot_deprecations = {
-    pname = "org.tfeb.tools.deprecations";
-    version = "20221106-git";
-    asds = [ "org.tfeb.tools.deprecations" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/tfeb-lisp-tools/2022-11-06/tfeb-lisp-tools-20221106-git.tgz";
-      sha256 = "0c2fsp6faha741h5ppdm69vhvrwk1lzxlng030jxl1gam846h7c0";
-      system = "org.tfeb.tools.deprecations";
-      asd = "org.tfeb.tools.deprecations";
-    });
-    systems = [ "org.tfeb.tools.deprecations" ];
-    lispLibs = [  ];
-  };
-  org_dot_tfeb_dot_tools_dot_feature-expressions = {
-    pname = "org.tfeb.tools.feature-expressions";
-    version = "20221106-git";
-    asds = [ "org.tfeb.tools.feature-expressions" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/tfeb-lisp-tools/2022-11-06/tfeb-lisp-tools-20221106-git.tgz";
-      sha256 = "0c2fsp6faha741h5ppdm69vhvrwk1lzxlng030jxl1gam846h7c0";
-      system = "org.tfeb.tools.feature-expressions";
-      asd = "org.tfeb.tools.feature-expressions";
-    });
-    systems = [ "org.tfeb.tools.feature-expressions" ];
-    lispLibs = [  ];
-  };
-  org_dot_tfeb_dot_tools_dot_install-providers = {
-    pname = "org.tfeb.tools.install-providers";
-    version = "20221106-git";
-    asds = [ "org.tfeb.tools.install-providers" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/tfeb-lisp-tools/2022-11-06/tfeb-lisp-tools-20221106-git.tgz";
-      sha256 = "0c2fsp6faha741h5ppdm69vhvrwk1lzxlng030jxl1gam846h7c0";
-      system = "org.tfeb.tools.install-providers";
-      asd = "org.tfeb.tools.install-providers";
-    });
-    systems = [ "org.tfeb.tools.install-providers" ];
-    lispLibs = [ (getAttr "org_dot_tfeb_dot_tools_dot_require-module" pkgs) ];
-  };
-  org_dot_tfeb_dot_tools_dot_require-module = {
-    pname = "org.tfeb.tools.require-module";
-    version = "20221106-git";
-    asds = [ "org.tfeb.tools.require-module" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/tfeb-lisp-tools/2022-11-06/tfeb-lisp-tools-20221106-git.tgz";
-      sha256 = "0c2fsp6faha741h5ppdm69vhvrwk1lzxlng030jxl1gam846h7c0";
-      system = "org.tfeb.tools.require-module";
-      asd = "org.tfeb.tools.require-module";
-    });
-    systems = [ "org.tfeb.tools.require-module" ];
-    lispLibs = [  ];
-  };
-  origin = {
-    pname = "origin";
-    version = "20220707-git";
-    asds = [ "origin" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/origin/2022-07-07/origin-20220707-git.tgz";
-      sha256 = "01b5rn83w85fnd92x5jgan2a092y7ir420r55p2b0a98xpvb4a71";
-      system = "origin";
-      asd = "origin";
-    });
-    systems = [ "origin" ];
-    lispLibs = [ (getAttr "mfiano-utils" pkgs) ];
-  };
-  origin_dot_test = {
-    pname = "origin.test";
-    version = "20220707-git";
-    asds = [ "origin.test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/origin/2022-07-07/origin-20220707-git.tgz";
-      sha256 = "01b5rn83w85fnd92x5jgan2a092y7ir420r55p2b0a98xpvb4a71";
-      system = "origin.test";
-      asd = "origin.test";
-    });
-    systems = [ "origin.test" ];
-    lispLibs = [ (getAttr "origin" pkgs) (getAttr "parachute" pkgs) ];
-  };
-  orizuru-orm = {
-    pname = "orizuru-orm";
-    version = "20210228-git";
-    asds = [ "orizuru-orm" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/orizuru-orm/2021-02-28/orizuru-orm-20210228-git.tgz";
-      sha256 = "0hx1qny188a1h40ns63sr291bw7fc0nmgic3mka3gnar8l6karbr";
-      system = "orizuru-orm";
-      asd = "orizuru-orm";
-    });
-    systems = [ "orizuru-orm" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "anaphora" pkgs) (getAttr "dbi" pkgs) (getAttr "cl-fad" pkgs) (getAttr "cl-ppcre-unicode" pkgs) (getAttr "clos-fixtures" pkgs) (getAttr "closer-mop" pkgs) (getAttr "clunit2" pkgs) (getAttr "iterate" pkgs) (getAttr "local-time" pkgs) (getAttr "sxql" pkgs) (getAttr "uiop" pkgs) ];
-  };
-  osc = {
-    pname = "osc";
-    version = "20221106-git";
-    asds = [ "osc" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/osc/2022-11-06/osc-20221106-git.tgz";
-      sha256 = "05whbssv32f25vy2krklgg73k8yw9ck99pdha436kpkimr2rpqrf";
-      system = "osc";
-      asd = "osc";
-    });
-    systems = [ "osc" ];
-    lispLibs = [ (getAttr "usocket" pkgs) ];
-  };
-  osicat = {
-    pname = "osicat";
-    version = "20221106-git";
-    asds = [ "osicat" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/osicat/2022-11-06/osicat-20221106-git.tgz";
-      sha256 = "1gxjy11g6k78m3kx3l06v8pqcjdjq51x713f8dapm7hi1c00nzvg";
-      system = "osicat";
-      asd = "osicat";
-    });
-    systems = [ "osicat" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cffi" pkgs) (getAttr "cffi-grovel" pkgs) (getAttr "trivial-features" pkgs) ];
-  };
-  osicat_slash_tests = {
-    pname = "osicat_tests";
-    version = "20221106-git";
-    asds = [ "osicat" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/osicat/2022-11-06/osicat-20221106-git.tgz";
-      sha256 = "1gxjy11g6k78m3kx3l06v8pqcjdjq51x713f8dapm7hi1c00nzvg";
-      system = "osicat";
-      asd = "osicat";
-    });
-    systems = [ "osicat/tests" ];
-    lispLibs = [ (getAttr "osicat" pkgs) (getAttr "rt" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  osmpbf = {
-    pname = "osmpbf";
-    version = "20210630-git";
-    asds = [ "osmpbf" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/osmpbf/2021-06-30/osmpbf-20210630-git.tgz";
-      sha256 = "0kx5g52l8mk5400gkjds0xfllqxdyxa203a0hgpxjm86r0ppym8v";
-      system = "osmpbf";
-      asd = "osmpbf";
-    });
-    systems = [ "osmpbf" ];
-    lispLibs = [ (getAttr "chipz" pkgs) (getAttr "com_dot_google_dot_base" pkgs) (getAttr "flexi-streams" pkgs) (getAttr "nibbles" pkgs) (getAttr "protobuf" pkgs) ];
-  };
-  ospm = {
-    pname = "ospm";
-    version = "20221106-git";
-    asds = [ "ospm" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/ospm/2022-11-06/ospm-20221106-git.tgz";
-      sha256 = "0ixx6y20q4kcvm60lp3wca5q1nhnpakdw5avz4mlj6mm8m4z526g";
-      system = "ospm";
-      asd = "ospm";
-    });
-    systems = [ "ospm" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "calispel" pkgs) (getAttr "hu_dot_dwim_dot_defclass-star" pkgs) (getAttr "local-time" pkgs) (getAttr "moptilities" pkgs) (getAttr "named-readtables" pkgs) (getAttr "serapeum" pkgs) (getAttr "trivia" pkgs) ];
-  };
-  ospm_slash_tests = {
-    pname = "ospm_tests";
-    version = "20221106-git";
-    asds = [ "ospm" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/ospm/2022-11-06/ospm-20221106-git.tgz";
-      sha256 = "0ixx6y20q4kcvm60lp3wca5q1nhnpakdw5avz4mlj6mm8m4z526g";
-      system = "ospm";
-      asd = "ospm";
-    });
-    systems = [ "ospm/tests" ];
-    lispLibs = [ (getAttr "lisp-unit2" pkgs) (getAttr "ospm" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  overlord = {
-    pname = "overlord";
-    version = "20221106-git";
-    asds = [ "overlord" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/overlord/2022-11-06/overlord-20221106-git.tgz";
-      sha256 = "02f3nhqg42z5i1fqz998vcn31vn27z3gvwqhh8m5cxkj1c5l4zxz";
-      system = "overlord";
-      asd = "overlord";
-    });
-    systems = [ "overlord" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "babel" pkgs) (getAttr "bit-smasher" pkgs) (getAttr "bordeaux-threads" pkgs) (getAttr "cl-murmurhash" pkgs) (getAttr "cl-ppcre" pkgs) (getAttr "cl-strftime" pkgs) (getAttr "cmd" pkgs) (getAttr "exit-hooks" pkgs) (getAttr "fset" pkgs) (getAttr "global-vars" pkgs) (getAttr "local-time" pkgs) (getAttr "lparallel" pkgs) (getAttr "named-readtables" pkgs) (getAttr "quickproject" pkgs) (getAttr "serapeum" pkgs) (getAttr "trivia" pkgs) (getAttr "trivial-file-size" pkgs) ];
-  };
-  oxenfurt = {
-    pname = "oxenfurt";
-    version = "20190710-git";
-    asds = [ "oxenfurt" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/oxenfurt/2019-07-10/oxenfurt-20190710-git.tgz";
-      sha256 = "0cd3z3b79q641cnpxva749isxfyk52y6s06l7iqx1lsl06yp19j3";
-      system = "oxenfurt";
-      asd = "oxenfurt";
-    });
-    systems = [ "oxenfurt" ];
-    lispLibs = [ (getAttr "oxenfurt-dexador" pkgs) ];
-  };
-  oxenfurt-core = {
-    pname = "oxenfurt-core";
-    version = "20190710-git";
-    asds = [ "oxenfurt-core" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/oxenfurt/2019-07-10/oxenfurt-20190710-git.tgz";
-      sha256 = "0cd3z3b79q641cnpxva749isxfyk52y6s06l7iqx1lsl06yp19j3";
-      system = "oxenfurt-core";
-      asd = "oxenfurt-core";
-    });
-    systems = [ "oxenfurt-core" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "babel" pkgs) (getAttr "documentation-utils" pkgs) (getAttr "yason" pkgs) ];
-  };
-  oxenfurt-dexador = {
-    pname = "oxenfurt-dexador";
-    version = "20190710-git";
-    asds = [ "oxenfurt-dexador" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/oxenfurt/2019-07-10/oxenfurt-20190710-git.tgz";
-      sha256 = "0cd3z3b79q641cnpxva749isxfyk52y6s06l7iqx1lsl06yp19j3";
-      system = "oxenfurt-dexador";
-      asd = "oxenfurt-dexador";
-    });
-    systems = [ "oxenfurt-dexador" ];
-    lispLibs = [ (getAttr "dexador" pkgs) (getAttr "oxenfurt-core" pkgs) ];
-  };
-  oxenfurt-drakma = {
-    pname = "oxenfurt-drakma";
-    version = "20190710-git";
-    asds = [ "oxenfurt-drakma" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/oxenfurt/2019-07-10/oxenfurt-20190710-git.tgz";
-      sha256 = "0cd3z3b79q641cnpxva749isxfyk52y6s06l7iqx1lsl06yp19j3";
-      system = "oxenfurt-drakma";
-      asd = "oxenfurt-drakma";
-    });
-    systems = [ "oxenfurt-drakma" ];
-    lispLibs = [ (getAttr "drakma" pkgs) (getAttr "oxenfurt-core" pkgs) ];
-  };
-  pack = {
-    pname = "pack";
-    version = "20110619-git";
-    asds = [ "pack" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/pack/2011-06-19/pack-20110619-git.tgz";
-      sha256 = "1b3qi04v1wj9nig0mx591sl4phqcalwdl0vsnf4kqp4d2qx2czi1";
-      system = "pack";
-      asd = "pack";
-    });
-    systems = [ "pack" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "ieee-floats" pkgs) ];
-  };
-  package-renaming = {
-    pname = "package-renaming";
-    version = "20120407-git";
-    asds = [ "package-renaming" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/package-renaming/2012-04-07/package-renaming-20120407-git.tgz";
-      sha256 = "15kgd15r9bib8wfnn3hmv42rlifr4ph3rv2mji5i9d5ixhyqqwgq";
-      system = "package-renaming";
-      asd = "package-renaming";
-    });
-    systems = [ "package-renaming" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) ];
-  };
-  package-renaming-test = {
-    pname = "package-renaming-test";
-    version = "20120407-git";
-    asds = [ "package-renaming-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/package-renaming/2012-04-07/package-renaming-20120407-git.tgz";
-      sha256 = "15kgd15r9bib8wfnn3hmv42rlifr4ph3rv2mji5i9d5ixhyqqwgq";
-      system = "package-renaming-test";
-      asd = "package-renaming-test";
-    });
-    systems = [ "package-renaming-test" ];
-    lispLibs = [ (getAttr "hu_dot_dwim_dot_stefil" pkgs) (getAttr "package-renaming" pkgs) ];
-  };
-  packet = {
-    pname = "packet";
-    version = "20150302-git";
-    asds = [ "packet" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/packet/2015-03-02/packet-20150302-git.tgz";
-      sha256 = "1vcmxwrliwczz161nz3ysx9cbfia4cmlqgnjgrx5016lp394pnx1";
-      system = "packet";
-      asd = "packet";
-    });
-    systems = [ "packet" ];
-    lispLibs = [ (getAttr "ieee-floats" pkgs) ];
-  };
-  packet-crafting = {
-    pname = "packet-crafting";
-    version = "20200610-git";
-    asds = [ "packet-crafting" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/packet-crafting/2020-06-10/packet-crafting-20200610-git.tgz";
-      sha256 = "1ivnvkbqckqf5hm6khffc2wkbjl64fn03w9i0kypkb0mrazxdpdq";
-      system = "packet-crafting";
-      asd = "packet-crafting";
-    });
-    systems = [ "packet-crafting" ];
-    lispLibs = [ (getAttr "lisp-binary" pkgs) ];
-  };
-  packet-crafting_slash_tests = {
-    pname = "packet-crafting_tests";
-    version = "20200610-git";
-    asds = [ "packet-crafting" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/packet-crafting/2020-06-10/packet-crafting-20200610-git.tgz";
-      sha256 = "1ivnvkbqckqf5hm6khffc2wkbjl64fn03w9i0kypkb0mrazxdpdq";
-      system = "packet-crafting";
-      asd = "packet-crafting";
-    });
-    systems = [ "packet-crafting/tests" ];
-    lispLibs = [ (getAttr "packet-crafting" pkgs) (getAttr "rove" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  paiprolog = {
-    pname = "paiprolog";
-    version = "20180228-git";
-    asds = [ "paiprolog" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/paiprolog/2018-02-28/paiprolog-20180228-git.tgz";
-      sha256 = "1nxz01i6f8s920gm69r2kwjdpq9pli8b2ayqwijhzgjwi0r4jj9r";
-      system = "paiprolog";
-      asd = "paiprolog";
-    });
-    systems = [ "paiprolog" ];
-    lispLibs = [  ];
-  };
-  pal = {
-    pname = "pal";
-    version = "20150608-git";
-    asds = [ "pal" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/pal/2015-06-08/pal-20150608-git.tgz";
-      sha256 = "0kn6jxirrn7wzqymzsi0kx2ivl0nrrcgbl4dm1714s48qw0jwhcw";
-      system = "pal";
-      asd = "pal";
-    });
-    systems = [ "pal" ];
-    lispLibs = [ (getAttr "cffi" pkgs) ];
-  };
-  pandocl = {
-    pname = "pandocl";
-    version = "20150923-git";
-    asds = [ "pandocl" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/pandocl/2015-09-23/pandocl-20150923-git.tgz";
-      sha256 = "1fmlpx5m7ivdkqss1fa3xqbpcwzqrpyyx2nny12aqxn8f13vpvmg";
-      system = "pandocl";
-      asd = "pandocl";
-    });
-    systems = [ "pandocl" ];
-    lispLibs = [ (getAttr "common-doc" pkgs) (getAttr "common-doc-contrib" pkgs) (getAttr "common-html" pkgs) (getAttr "parenml" pkgs) (getAttr "scriba" pkgs) (getAttr "thorn" pkgs) (getAttr "vertex" pkgs) ];
-  };
-  pango-markup = {
-    pname = "pango-markup";
-    version = "20200325-git";
-    asds = [ "pango-markup" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/pango-markup/2020-03-25/pango-markup-20200325-git.tgz";
-      sha256 = "0m1hc6lasbzjz5gc5mk9hqmmxgq7mpc9q94fmni109yncpqawxvr";
-      system = "pango-markup";
-      asd = "pango-markup";
-    });
-    systems = [ "pango-markup" ];
-    lispLibs = [ (getAttr "documentation-utils" pkgs) ];
-  };
-  papyrus = {
-    pname = "papyrus";
-    version = "20221106-git";
-    asds = [ "papyrus" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/papyrus/2022-11-06/papyrus-20221106-git.tgz";
-      sha256 = "0swpsxir553cs2pj6xz8cgyr3y9fh88hiv527ssa8cm7qkxcbbg9";
-      system = "papyrus";
-      asd = "papyrus";
-    });
-    systems = [ "papyrus" ];
-    lispLibs = [ (getAttr "named-readtables" pkgs) ];
-  };
-  parachute = {
-    pname = "parachute";
-    version = "20221106-git";
-    asds = [ "parachute" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/parachute/2022-11-06/parachute-20221106-git.tgz";
-      sha256 = "0cppp1sp9xqkgxgkwidhqzlsj03ywnar7z9mzwcliww8y0kv5555";
-      system = "parachute";
-      asd = "parachute";
-    });
-    systems = [ "parachute" ];
-    lispLibs = [ (getAttr "documentation-utils" pkgs) (getAttr "form-fiddle" pkgs) (getAttr "trivial-custom-debugger" pkgs) ];
-  };
-  parachute-fiveam = {
-    pname = "parachute-fiveam";
-    version = "20221106-git";
-    asds = [ "parachute-fiveam" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/parachute/2022-11-06/parachute-20221106-git.tgz";
-      sha256 = "0cppp1sp9xqkgxgkwidhqzlsj03ywnar7z9mzwcliww8y0kv5555";
-      system = "parachute-fiveam";
-      asd = "parachute-fiveam";
-    });
-    systems = [ "parachute-fiveam" ];
-    lispLibs = [ (getAttr "parachute" pkgs) ];
-  };
-  parachute-lisp-unit = {
-    pname = "parachute-lisp-unit";
-    version = "20221106-git";
-    asds = [ "parachute-lisp-unit" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/parachute/2022-11-06/parachute-20221106-git.tgz";
-      sha256 = "0cppp1sp9xqkgxgkwidhqzlsj03ywnar7z9mzwcliww8y0kv5555";
-      system = "parachute-lisp-unit";
-      asd = "parachute-lisp-unit";
-    });
-    systems = [ "parachute-lisp-unit" ];
-    lispLibs = [ (getAttr "parachute" pkgs) ];
-  };
-  parachute-prove = {
-    pname = "parachute-prove";
-    version = "20221106-git";
-    asds = [ "parachute-prove" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/parachute/2022-11-06/parachute-20221106-git.tgz";
-      sha256 = "0cppp1sp9xqkgxgkwidhqzlsj03ywnar7z9mzwcliww8y0kv5555";
-      system = "parachute-prove";
-      asd = "parachute-prove";
-    });
-    systems = [ "parachute-prove" ];
-    lispLibs = [ (getAttr "cl-ppcre" pkgs) (getAttr "parachute" pkgs) ];
-  };
-  parameterized-function = {
-    pname = "parameterized-function";
-    version = "20190307-hg";
-    asds = [ "parameterized-function" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/parameterized-function/2019-03-07/parameterized-function-20190307-hg.tgz";
-      sha256 = "0iwnvfrhwprki8d6r0j4649daakjlc2jsh8xcpqdfa2nx563fylw";
-      system = "parameterized-function";
-      asd = "parameterized-function";
-    });
-    systems = [ "parameterized-function" ];
-    lispLibs = [ (getAttr "interface" pkgs) ];
-  };
-  paren-files = {
-    pname = "paren-files";
-    version = "20110418-git";
-    asds = [ "paren-files" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/paren-files/2011-04-18/paren-files-20110418-git.tgz";
-      sha256 = "19lwzvdn9gpn28x6ismkwzs49vr4cbc6drsivkmll3dxb950wgw9";
-      system = "paren-files";
-      asd = "paren-files";
-    });
-    systems = [ "paren-files" ];
-    lispLibs = [ (getAttr "parenscript" pkgs) ];
-  };
-  paren-test = {
-    pname = "paren-test";
-    version = "20170830-git";
-    asds = [ "paren-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/paren-test/2017-08-30/paren-test-20170830-git.tgz";
-      sha256 = "0b2d3kcv3n4b0dm67pzhxx8wxjsgnb32bw2dsprblc7149gaczdr";
-      system = "paren-test";
-      asd = "paren-test";
-    });
-    systems = [ "paren-test" ];
-    lispLibs = [ (getAttr "paren-files" pkgs) (getAttr "parenscript" pkgs) (getAttr "trivial-shell" pkgs) ];
-  };
-  paren-util = {
-    pname = "paren-util";
-    version = "20110418-git";
-    asds = [ "paren-util" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/paren-util/2011-04-18/paren-util-20110418-git.tgz";
-      sha256 = "0jn7sgndhpn9ndn3xfmsp03alj2qksqz6p1c5h6x8hvi46caqvpy";
-      system = "paren-util";
-      asd = "paren-util";
-    });
-    systems = [ "paren-util" ];
-    lispLibs = [ (getAttr "paren-files" pkgs) (getAttr "parenscript" pkgs) ];
-  };
-  paren6 = {
-    pname = "paren6";
-    version = "20220331-git";
-    asds = [ "paren6" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/paren6/2022-03-31/paren6-20220331-git.tgz";
-      sha256 = "0m7z7zkc1vrwmp68f3yx0mdsb0j45dmw3iddnbvf94dpv8aywwpx";
-      system = "paren6";
-      asd = "paren6";
-    });
-    systems = [ "paren6" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "parenscript" pkgs) ];
-  };
-  parenml = {
-    pname = "parenml";
-    version = "20150923-git";
-    asds = [ "parenml" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/parenml/2015-09-23/parenml-20150923-git.tgz";
-      sha256 = "0g6s5phinpcfhixgsfqniwxd3kd4bwh78s90ixs2fwk3qjhh9zsb";
-      system = "parenml";
-      asd = "parenml";
-    });
-    systems = [ "parenml" ];
-    lispLibs = [ (getAttr "common-doc-plump" pkgs) (getAttr "esrap" pkgs) (getAttr "plump" pkgs) ];
-  };
-  parenml-test = {
-    pname = "parenml-test";
-    version = "20150923-git";
-    asds = [ "parenml-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/parenml/2015-09-23/parenml-20150923-git.tgz";
-      sha256 = "0g6s5phinpcfhixgsfqniwxd3kd4bwh78s90ixs2fwk3qjhh9zsb";
-      system = "parenml-test";
-      asd = "parenml-test";
-    });
-    systems = [ "parenml-test" ];
-    lispLibs = [ (getAttr "fiveam" pkgs) (getAttr "parenml" pkgs) ];
-  };
-  parenscript = {
-    pname = "parenscript";
-    version = "Parenscript-2.7.1";
-    asds = [ "parenscript" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/parenscript/2018-12-10/Parenscript-2.7.1.tgz";
-      sha256 = "0vg9b9j5psil5iba1d9k6vfxl5rn133qvy750dny20qkp9mf3a13";
-      system = "parenscript";
-      asd = "parenscript";
-    });
-    systems = [ "parenscript" ];
-    lispLibs = [ (getAttr "anaphora" pkgs) (getAttr "cl-ppcre" pkgs) (getAttr "named-readtables" pkgs) ];
-  };
-  parenscript-classic = {
-    pname = "parenscript-classic";
-    version = "20111203-darcs";
-    asds = [ "parenscript-classic" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/parenscript-classic/2011-12-03/parenscript-classic-20111203-darcs.tgz";
-      sha256 = "19zsiyjlz938la2dd39cy6lwh95m10j4nx8837xm6qk8rz5f8dgy";
-      system = "parenscript-classic";
-      asd = "parenscript-classic";
-    });
-    systems = [ "parenscript-classic" ];
-    lispLibs = [  ];
-  };
-  parenscript_dot_tests = {
-    pname = "parenscript.tests";
-    version = "Parenscript-2.7.1";
-    asds = [ "parenscript.tests" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/parenscript/2018-12-10/Parenscript-2.7.1.tgz";
-      sha256 = "0vg9b9j5psil5iba1d9k6vfxl5rn133qvy750dny20qkp9mf3a13";
-      system = "parenscript.tests";
-      asd = "parenscript.tests";
-    });
-    systems = [ "parenscript.tests" ];
-    lispLibs = [ (getAttr "fiveam" pkgs) (getAttr "cl-js" pkgs) (getAttr "parenscript" pkgs) ];
-  };
-  parse = {
-    pname = "parse";
-    version = "20200925-git";
-    asds = [ "parse" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/parse/2020-09-25/parse-20200925-git.tgz";
-      sha256 = "0l18yabyh7jizm5lgvra0jxi8s1cfwghidi6ix1pyixjkdbjlmvy";
-      system = "parse";
-      asd = "parse";
-    });
-    systems = [ "parse" ];
-    lispLibs = [  ];
-  };
-  parse-declarations-1_dot_0 = {
-    pname = "parse-declarations-1.0";
-    version = "20101006-darcs";
-    asds = [ "parse-declarations-1.0" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/parse-declarations/2010-10-06/parse-declarations-20101006-darcs.tgz";
-      sha256 = "04l3s180wxq6xyhgd77mbd03a1w1m0j9snag961g2f9dd77w6q1r";
-      system = "parse-declarations-1.0";
-      asd = "parse-declarations-1.0";
-    });
-    systems = [ "parse-declarations-1.0" ];
-    lispLibs = [  ];
-  };
-  parse-float = {
-    pname = "parse-float";
-    version = "20200218-git";
-    asds = [ "parse-float" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/parse-float/2020-02-18/parse-float-20200218-git.tgz";
-      sha256 = "0jd2spawc3v8vzqf8ky4cngl45jm65fhkrdf20mf6dcbn3mzpkmr";
-      system = "parse-float";
-      asd = "parse-float";
-    });
-    systems = [ "parse-float" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) ];
-  };
-  parse-float-tests = {
-    pname = "parse-float-tests";
-    version = "20200218-git";
-    asds = [ "parse-float-tests" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/parse-float/2020-02-18/parse-float-20200218-git.tgz";
-      sha256 = "0jd2spawc3v8vzqf8ky4cngl45jm65fhkrdf20mf6dcbn3mzpkmr";
-      system = "parse-float-tests";
-      asd = "parse-float";
-    });
-    systems = [ "parse-float-tests" ];
-    lispLibs = [ (getAttr "lisp-unit" pkgs) (getAttr "parse-float" pkgs) ];
-  };
-  parse-front-matter = {
-    pname = "parse-front-matter";
-    version = "20160825-git";
-    asds = [ "parse-front-matter" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/parse-front-matter/2016-08-25/parse-front-matter-20160825-git.tgz";
-      sha256 = "1yzadrjwycvyzlzb0mixxmwi5bjzkjwylnv3aslnr1j14q44vq58";
-      system = "parse-front-matter";
-      asd = "parse-front-matter";
-    });
-    systems = [ "parse-front-matter" ];
-    lispLibs = [ (getAttr "cl-ppcre" pkgs) ];
-  };
-  parse-front-matter-test = {
-    pname = "parse-front-matter-test";
-    version = "20160825-git";
-    asds = [ "parse-front-matter-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/parse-front-matter/2016-08-25/parse-front-matter-20160825-git.tgz";
-      sha256 = "1yzadrjwycvyzlzb0mixxmwi5bjzkjwylnv3aslnr1j14q44vq58";
-      system = "parse-front-matter-test";
-      asd = "parse-front-matter-test";
-    });
-    systems = [ "parse-front-matter-test" ];
-    lispLibs = [ (getAttr "fiveam" pkgs) (getAttr "parse-front-matter" pkgs) ];
-  };
-  parse-js = {
-    pname = "parse-js";
-    version = "20160421-git";
-    asds = [ "parse-js" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/parse-js/2016-04-21/parse-js-20160421-git.tgz";
-      sha256 = "1wddrnr5kiya5s3gp4cdq6crbfy9fqcz7fr44p81502sj3bvdv39";
-      system = "parse-js";
-      asd = "parse-js";
-    });
-    systems = [ "parse-js" ];
-    lispLibs = [  ];
-  };
-  parse-number = {
-    pname = "parse-number";
-    version = "v1.7";
-    asds = [ "parse-number" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/parse-number/2018-02-28/parse-number-v1.7.tgz";
-      sha256 = "0sk06ib1bhqv9y39vwnnw44vmbc4b0kvqm37xxmkxd4dwchq82d7";
-      system = "parse-number";
-      asd = "parse-number";
-    });
-    systems = [ "parse-number" ];
-    lispLibs = [  ];
-  };
-  parse-number-range = {
-    pname = "parse-number-range";
-    version = "1.0";
-    asds = [ "parse-number-range" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/parse-number-range/2012-11-25/parse-number-range-1.0.tgz";
-      sha256 = "176j9rabpqdkxd7b1cdy3dk8b8x05bdk0ypnxg2i41zbp9ww2f8d";
-      system = "parse-number-range";
-      asd = "parse-number-range";
-    });
-    systems = [ "parse-number-range" ];
-    lispLibs = [ (getAttr "cartesian-product-switch" pkgs) (getAttr "enhanced-multiple-value-bind" pkgs) (getAttr "map-bind" pkgs) ];
-  };
-  parse-number_slash_tests = {
-    pname = "parse-number_tests";
-    version = "v1.7";
-    asds = [ "parse-number" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/parse-number/2018-02-28/parse-number-v1.7.tgz";
-      sha256 = "0sk06ib1bhqv9y39vwnnw44vmbc4b0kvqm37xxmkxd4dwchq82d7";
-      system = "parse-number";
-      asd = "parse-number";
-    });
-    systems = [ "parse-number/tests" ];
-    lispLibs = [ (getAttr "parse-number" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  parse-rgb = {
-    pname = "parse-rgb";
-    version = "20201220-git";
-    asds = [ "parse-rgb" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-tcod/2020-12-20/cl-tcod-20201220-git.tgz";
-      sha256 = "145h0dhxm1idblcld456cv7k00vi6p0zyn5rxkky5y4gk85ws8l5";
-      system = "parse-rgb";
-      asd = "parse-rgb";
-    });
-    systems = [ "parse-rgb" ];
-    lispLibs = [ (getAttr "cl-ppcre" pkgs) (getAttr "tcod" pkgs) ];
-  };
-  parseltongue = {
-    pname = "parseltongue";
-    version = "20130312-git";
-    asds = [ "parseltongue" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/parseltongue/2013-03-12/parseltongue-20130312-git.tgz";
-      sha256 = "1cjy7p0snms604zp6x0jlm4v9divqc5r38ns737hffj9q6pi1nlx";
-      system = "parseltongue";
-      asd = "parseltongue";
-    });
-    systems = [ "parseltongue" ];
-    lispLibs = [ (getAttr "lisp-unit" pkgs) ];
-  };
-  parseq = {
-    pname = "parseq";
-    version = "20210531-git";
-    asds = [ "parseq" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/parseq/2021-05-31/parseq-20210531-git.tgz";
-      sha256 = "0yv9wdziiwv6yqbaiabijd4lcyg8djrml0qbg22jfixkxyqxhxqw";
-      system = "parseq";
-      asd = "parseq";
-    });
-    systems = [ "parseq" ];
-    lispLibs = [  ];
-  };
-  parseq_slash_test = {
-    pname = "parseq_test";
-    version = "20210531-git";
-    asds = [ "parseq" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/parseq/2021-05-31/parseq-20210531-git.tgz";
-      sha256 = "0yv9wdziiwv6yqbaiabijd4lcyg8djrml0qbg22jfixkxyqxhxqw";
-      system = "parseq";
-      asd = "parseq";
-    });
-    systems = [ "parseq/test" ];
-    lispLibs = [ (getAttr "parseq" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  parser-combinators = {
-    pname = "parser-combinators";
-    version = "20131111-git";
-    asds = [ "parser-combinators" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-parser-combinators/2013-11-11/cl-parser-combinators-20131111-git.tgz";
-      sha256 = "1k49vha5xm2cklayzpqwg73n4v93xwsbs5in6342pkkiimnidhs8";
-      system = "parser-combinators";
-      asd = "parser-combinators";
-    });
-    systems = [ "parser-combinators" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "iterate" pkgs) ];
-  };
-  parser-combinators-cl-ppcre = {
-    pname = "parser-combinators-cl-ppcre";
-    version = "20131111-git";
-    asds = [ "parser-combinators-cl-ppcre" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-parser-combinators/2013-11-11/cl-parser-combinators-20131111-git.tgz";
-      sha256 = "1k49vha5xm2cklayzpqwg73n4v93xwsbs5in6342pkkiimnidhs8";
-      system = "parser-combinators-cl-ppcre";
-      asd = "parser-combinators-cl-ppcre";
-    });
-    systems = [ "parser-combinators-cl-ppcre" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "parser-combinators" pkgs) (getAttr "cl-ppcre" pkgs) (getAttr "iterate" pkgs) ];
-  };
-  parser-combinators-debug = {
-    pname = "parser-combinators-debug";
-    version = "20131111-git";
-    asds = [ "parser-combinators-debug" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-parser-combinators/2013-11-11/cl-parser-combinators-20131111-git.tgz";
-      sha256 = "1k49vha5xm2cklayzpqwg73n4v93xwsbs5in6342pkkiimnidhs8";
-      system = "parser-combinators-debug";
-      asd = "parser-combinators-debug";
-    });
-    systems = [ "parser-combinators-debug" ];
-    lispLibs = [ (getAttr "cl-containers" pkgs) (getAttr "parser-combinators" pkgs) ];
-  };
-  parser-combinators-tests = {
-    pname = "parser-combinators-tests";
-    version = "20131111-git";
-    asds = [ "parser-combinators-tests" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-parser-combinators/2013-11-11/cl-parser-combinators-20131111-git.tgz";
-      sha256 = "1k49vha5xm2cklayzpqwg73n4v93xwsbs5in6342pkkiimnidhs8";
-      system = "parser-combinators-tests";
-      asd = "parser-combinators-tests";
-    });
-    systems = [ "parser-combinators-tests" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "parser-combinators" pkgs) (getAttr "infix" pkgs) (getAttr "hu_dot_dwim_dot_stefil" pkgs) (getAttr "iterate" pkgs) ];
-  };
-  parser_dot_common-rules = {
-    pname = "parser.common-rules";
-    version = "20200715-git";
-    asds = [ "parser.common-rules" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/parser.common-rules/2020-07-15/parser.common-rules-20200715-git.tgz";
-      sha256 = "138ygj0qp58jl4h79szg3i2gnwzywwc48qn1gj6dw113wasrnkwa";
-      system = "parser.common-rules";
-      asd = "parser.common-rules";
-    });
-    systems = [ "parser.common-rules" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "esrap" pkgs) (getAttr "let-plus" pkgs) (getAttr "split-sequence" pkgs) ];
-  };
-  parser_dot_common-rules_dot_operators = {
-    pname = "parser.common-rules.operators";
-    version = "20200715-git";
-    asds = [ "parser.common-rules.operators" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/parser.common-rules/2020-07-15/parser.common-rules-20200715-git.tgz";
-      sha256 = "138ygj0qp58jl4h79szg3i2gnwzywwc48qn1gj6dw113wasrnkwa";
-      system = "parser.common-rules.operators";
-      asd = "parser.common-rules.operators";
-    });
-    systems = [ "parser.common-rules.operators" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "architecture_dot_builder-protocol" pkgs) (getAttr "esrap" pkgs) (getAttr "let-plus" pkgs) (getAttr "parser_dot_common-rules" pkgs) ];
-  };
-  parser_dot_common-rules_dot_operators_slash_test = {
-    pname = "parser.common-rules.operators_test";
-    version = "20200715-git";
-    asds = [ "parser.common-rules.operators" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/parser.common-rules/2020-07-15/parser.common-rules-20200715-git.tgz";
-      sha256 = "138ygj0qp58jl4h79szg3i2gnwzywwc48qn1gj6dw113wasrnkwa";
-      system = "parser.common-rules.operators";
-      asd = "parser.common-rules.operators";
-    });
-    systems = [ "parser.common-rules.operators/test" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "fiveam" pkgs) (getAttr "let-plus" pkgs) (getAttr "parser_dot_common-rules" pkgs) (getAttr "parser_dot_common-rules_dot_operators" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  parser_dot_common-rules_slash_test = {
-    pname = "parser.common-rules_test";
-    version = "20200715-git";
-    asds = [ "parser.common-rules" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/parser.common-rules/2020-07-15/parser.common-rules-20200715-git.tgz";
-      sha256 = "138ygj0qp58jl4h79szg3i2gnwzywwc48qn1gj6dw113wasrnkwa";
-      system = "parser.common-rules";
-      asd = "parser.common-rules";
-    });
-    systems = [ "parser.common-rules/test" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "fiveam" pkgs) (getAttr "let-plus" pkgs) (getAttr "parser_dot_common-rules" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  parser_dot_ini = {
-    pname = "parser.ini";
-    version = "20181018-git";
-    asds = [ "parser.ini" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/parser.ini/2018-10-18/parser.ini-20181018-git.tgz";
-      sha256 = "0ri4c7877i9val67z5sm8nfhz04p9l6brajx2fkavs8556l1wm1d";
-      system = "parser.ini";
-      asd = "parser.ini";
-    });
-    systems = [ "parser.ini" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "architecture_dot_builder-protocol" pkgs) (getAttr "esrap" pkgs) (getAttr "let-plus" pkgs) (getAttr "more-conditions" pkgs) (getAttr "parser_dot_common-rules" pkgs) ];
-  };
-  parser_dot_ini_slash_test = {
-    pname = "parser.ini_test";
-    version = "20181018-git";
-    asds = [ "parser.ini" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/parser.ini/2018-10-18/parser.ini-20181018-git.tgz";
-      sha256 = "0ri4c7877i9val67z5sm8nfhz04p9l6brajx2fkavs8556l1wm1d";
-      system = "parser.ini";
-      asd = "parser.ini";
-    });
-    systems = [ "parser.ini/test" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "fiveam" pkgs) (getAttr "let-plus" pkgs) (getAttr "parser_dot_ini" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  parsnip = {
-    pname = "parsnip";
-    version = "20220331-git";
-    asds = [ "parsnip" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/parsnip/2022-03-31/parsnip-20220331-git.tgz";
-      sha256 = "0gl7z8kn37qiz0vab89wawn78iczii7iqw43jy2ls7nw0l5jv13w";
-      system = "parsnip";
-      asd = "parsnip";
-    });
-    systems = [ "parsnip" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) ];
-  };
-  parsnip_slash_examples = {
-    pname = "parsnip_examples";
-    version = "20220331-git";
-    asds = [ "parsnip" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/parsnip/2022-03-31/parsnip-20220331-git.tgz";
-      sha256 = "0gl7z8kn37qiz0vab89wawn78iczii7iqw43jy2ls7nw0l5jv13w";
-      system = "parsnip";
-      asd = "parsnip";
-    });
-    systems = [ "parsnip/examples" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "parsnip" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  parsnip_slash_test = {
-    pname = "parsnip_test";
-    version = "20220331-git";
-    asds = [ "parsnip" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/parsnip/2022-03-31/parsnip-20220331-git.tgz";
-      sha256 = "0gl7z8kn37qiz0vab89wawn78iczii7iqw43jy2ls7nw0l5jv13w";
-      system = "parsnip";
-      asd = "parsnip";
-    });
-    systems = [ "parsnip/test" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "parachute" pkgs) (getAttr "parsnip" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  patchwork = {
-    pname = "patchwork";
-    version = "20220707-git";
-    asds = [ "patchwork" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/patchwork/2022-07-07/patchwork-20220707-git.tgz";
-      sha256 = "08d08hslcs69509wj56mlklv1cz5lq2rz0sl870zcxyn4j1nnf3f";
-      system = "patchwork";
-      asd = "patchwork";
-    });
-    systems = [ "patchwork" ];
-    lispLibs = [ (getAttr "binpack" pkgs) (getAttr "mfiano-utils" pkgs) (getAttr "opticl" pkgs) (getAttr "uiop" pkgs) ];
-  };
-  path-parse = {
-    pname = "path-parse";
-    version = "20160421-git";
-    asds = [ "path-parse" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/path-parse/2016-04-21/path-parse-20160421-git.tgz";
-      sha256 = "10mxm6q62cfpv3hw2w8k968ba8a1xglqdkwlkqs4l4nby3b11aaq";
-      system = "path-parse";
-      asd = "path-parse";
-    });
-    systems = [ "path-parse" ];
-    lispLibs = [ (getAttr "split-sequence" pkgs) (getAttr "uiop" pkgs) ];
-  };
-  path-parse-test = {
-    pname = "path-parse-test";
-    version = "20160421-git";
-    asds = [ "path-parse-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/path-parse/2016-04-21/path-parse-20160421-git.tgz";
-      sha256 = "10mxm6q62cfpv3hw2w8k968ba8a1xglqdkwlkqs4l4nby3b11aaq";
-      system = "path-parse-test";
-      asd = "path-parse-test";
-    });
-    systems = [ "path-parse-test" ];
-    lispLibs = [ (getAttr "fiveam" pkgs) (getAttr "path-parse" pkgs) ];
-  };
-  path-string = {
-    pname = "path-string";
-    version = "20160825-git";
-    asds = [ "path-string" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/path-string/2016-08-25/path-string-20160825-git.tgz";
-      sha256 = "0hs36kf4njxafxrngs1m1sh9c7b9wv7sa8n316dq4icx3kf3v6yp";
-      system = "path-string";
-      asd = "path-string";
-    });
-    systems = [ "path-string" ];
-    lispLibs = [ (getAttr "cl-ppcre" pkgs) (getAttr "split-sequence" pkgs) (getAttr "uiop" pkgs) ];
-  };
-  path-string-test = {
-    pname = "path-string-test";
-    version = "20160825-git";
-    asds = [ "path-string-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/path-string/2016-08-25/path-string-20160825-git.tgz";
-      sha256 = "0hs36kf4njxafxrngs1m1sh9c7b9wv7sa8n316dq4icx3kf3v6yp";
-      system = "path-string-test";
-      asd = "path-string-test";
-    });
-    systems = [ "path-string-test" ];
-    lispLibs = [ (getAttr "path-string" pkgs) (getAttr "prove" pkgs) (getAttr "prove-asdf" pkgs) ];
-  };
-  pathname-utils = {
-    pname = "pathname-utils";
-    version = "20221106-git";
-    asds = [ "pathname-utils" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/pathname-utils/2022-11-06/pathname-utils-20221106-git.tgz";
-      sha256 = "1c1g2piiw01gcawgxlp7c4jaqls3kcjh9q8smwrvnvnr2g3hbn98";
-      system = "pathname-utils";
-      asd = "pathname-utils";
-    });
-    systems = [ "pathname-utils" ];
-    lispLibs = [ (getAttr "trivial-features" pkgs) ];
-  };
-  pathname-utils-test = {
-    pname = "pathname-utils-test";
-    version = "20221106-git";
-    asds = [ "pathname-utils-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/pathname-utils/2022-11-06/pathname-utils-20221106-git.tgz";
-      sha256 = "1c1g2piiw01gcawgxlp7c4jaqls3kcjh9q8smwrvnvnr2g3hbn98";
-      system = "pathname-utils-test";
-      asd = "pathname-utils-test";
-    });
-    systems = [ "pathname-utils-test" ];
-    lispLibs = [ (getAttr "parachute" pkgs) (getAttr "pathname-utils" pkgs) ];
-  };
-  patron = {
-    pname = "patron";
-    version = "20130420-git";
-    asds = [ "patron" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/patron/2013-04-20/patron-20130420-git.tgz";
-      sha256 = "0i2vlwspnssjxdnq7dsrb98q3y8c8drd0a11nxn9808q76sqzsqc";
-      system = "patron";
-      asd = "patron";
-    });
-    systems = [ "patron" ];
-    lispLibs = [ (getAttr "bordeaux-threads" pkgs) ];
-  };
-  pcall = {
-    pname = "pcall";
-    version = "0.3";
-    asds = [ "pcall" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/pcall/2010-10-06/pcall-0.3.tgz";
-      sha256 = "00ix5d9ljymrrpwsri0hhh3d592jqr2lvgbvkhav3k96rwq974ps";
-      system = "pcall";
-      asd = "pcall";
-    });
-    systems = [ "pcall" ];
-    lispLibs = [ (getAttr "bordeaux-threads" pkgs) (getAttr "pcall-queue" pkgs) ];
-  };
-  pcall-queue = {
-    pname = "pcall-queue";
-    version = "0.3";
-    asds = [ "pcall-queue" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/pcall/2010-10-06/pcall-0.3.tgz";
-      sha256 = "00ix5d9ljymrrpwsri0hhh3d592jqr2lvgbvkhav3k96rwq974ps";
-      system = "pcall-queue";
-      asd = "pcall-queue";
-    });
-    systems = [ "pcall-queue" ];
-    lispLibs = [ (getAttr "bordeaux-threads" pkgs) ];
-  };
-  pcall-tests = {
-    pname = "pcall-tests";
-    version = "0.3";
-    asds = [ "pcall-tests" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/pcall/2010-10-06/pcall-0.3.tgz";
-      sha256 = "00ix5d9ljymrrpwsri0hhh3d592jqr2lvgbvkhav3k96rwq974ps";
-      system = "pcall-tests";
-      asd = "pcall";
-    });
-    systems = [ "pcall-tests" ];
-    lispLibs = [ (getAttr "fiveam" pkgs) (getAttr "pcall" pkgs) ];
-  };
-  pcl-binary-data = {
-    pname = "pcl-binary-data";
-    version = "20180430-git";
-    asds = [ "pcl-binary-data" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/practical-cl/2018-04-30/practical-cl-20180430-git.tgz";
-      sha256 = "0bjwnnxkqw0cf2p1fyx9ihy6hgsxhljm4bns2blvgv63s3j1znd9";
-      system = "pcl-binary-data";
-      asd = "pcl-binary-data";
-    });
-    systems = [ "pcl-binary-data" ];
-    lispLibs = [ (getAttr "pcl-macro-utilities" pkgs) ];
-  };
-  pcl-html = {
-    pname = "pcl-html";
-    version = "20180430-git";
-    asds = [ "pcl-html" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/practical-cl/2018-04-30/practical-cl-20180430-git.tgz";
-      sha256 = "0bjwnnxkqw0cf2p1fyx9ihy6hgsxhljm4bns2blvgv63s3j1znd9";
-      system = "pcl-html";
-      asd = "pcl-html";
-    });
-    systems = [ "pcl-html" ];
-    lispLibs = [ (getAttr "pcl-macro-utilities" pkgs) ];
-  };
-  pcl-id3v2 = {
-    pname = "pcl-id3v2";
-    version = "20180430-git";
-    asds = [ "pcl-id3v2" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/practical-cl/2018-04-30/practical-cl-20180430-git.tgz";
-      sha256 = "0bjwnnxkqw0cf2p1fyx9ihy6hgsxhljm4bns2blvgv63s3j1znd9";
-      system = "pcl-id3v2";
-      asd = "pcl-id3v2";
-    });
-    systems = [ "pcl-id3v2" ];
-    lispLibs = [ (getAttr "pcl-binary-data" pkgs) (getAttr "pcl-pathnames" pkgs) ];
-  };
-  pcl-macro-utilities = {
-    pname = "pcl-macro-utilities";
-    version = "20180430-git";
-    asds = [ "pcl-macro-utilities" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/practical-cl/2018-04-30/practical-cl-20180430-git.tgz";
-      sha256 = "0bjwnnxkqw0cf2p1fyx9ihy6hgsxhljm4bns2blvgv63s3j1znd9";
-      system = "pcl-macro-utilities";
-      asd = "pcl-macro-utilities";
-    });
-    systems = [ "pcl-macro-utilities" ];
-    lispLibs = [  ];
-  };
-  pcl-mp3-browser = {
-    pname = "pcl-mp3-browser";
-    version = "20180430-git";
-    asds = [ "pcl-mp3-browser" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/practical-cl/2018-04-30/practical-cl-20180430-git.tgz";
-      sha256 = "0bjwnnxkqw0cf2p1fyx9ihy6hgsxhljm4bns2blvgv63s3j1znd9";
-      system = "pcl-mp3-browser";
-      asd = "pcl-mp3-browser";
-    });
-    systems = [ "pcl-mp3-browser" ];
-    lispLibs = [ (getAttr "bordeaux-threads" pkgs) (getAttr "pcl-html" pkgs) (getAttr "pcl-id3v2" pkgs) (getAttr "pcl-mp3-database" pkgs) (getAttr "pcl-shoutcast" pkgs) (getAttr "pcl-url-function" pkgs) ];
-  };
-  pcl-mp3-database = {
-    pname = "pcl-mp3-database";
-    version = "20180430-git";
-    asds = [ "pcl-mp3-database" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/practical-cl/2018-04-30/practical-cl-20180430-git.tgz";
-      sha256 = "0bjwnnxkqw0cf2p1fyx9ihy6hgsxhljm4bns2blvgv63s3j1znd9";
-      system = "pcl-mp3-database";
-      asd = "pcl-mp3-database";
-    });
-    systems = [ "pcl-mp3-database" ];
-    lispLibs = [ (getAttr "pcl-id3v2" pkgs) (getAttr "pcl-macro-utilities" pkgs) (getAttr "pcl-pathnames" pkgs) ];
-  };
-  pcl-pathnames = {
-    pname = "pcl-pathnames";
-    version = "20180430-git";
-    asds = [ "pcl-pathnames" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/practical-cl/2018-04-30/practical-cl-20180430-git.tgz";
-      sha256 = "0bjwnnxkqw0cf2p1fyx9ihy6hgsxhljm4bns2blvgv63s3j1znd9";
-      system = "pcl-pathnames";
-      asd = "pcl-pathnames";
-    });
-    systems = [ "pcl-pathnames" ];
-    lispLibs = [  ];
-  };
-  pcl-shoutcast = {
-    pname = "pcl-shoutcast";
-    version = "20180430-git";
-    asds = [ "pcl-shoutcast" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/practical-cl/2018-04-30/practical-cl-20180430-git.tgz";
-      sha256 = "0bjwnnxkqw0cf2p1fyx9ihy6hgsxhljm4bns2blvgv63s3j1znd9";
-      system = "pcl-shoutcast";
-      asd = "pcl-shoutcast";
-    });
-    systems = [ "pcl-shoutcast" ];
-    lispLibs = [ (getAttr "pcl-html" pkgs) (getAttr "pcl-id3v2" pkgs) (getAttr "pcl-macro-utilities" pkgs) (getAttr "pcl-mp3-database" pkgs) (getAttr "pcl-pathnames" pkgs) (getAttr "pcl-url-function" pkgs) ];
-  };
-  pcl-simple-database = {
-    pname = "pcl-simple-database";
-    version = "20180430-git";
-    asds = [ "pcl-simple-database" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/practical-cl/2018-04-30/practical-cl-20180430-git.tgz";
-      sha256 = "0bjwnnxkqw0cf2p1fyx9ihy6hgsxhljm4bns2blvgv63s3j1znd9";
-      system = "pcl-simple-database";
-      asd = "pcl-simple-database";
-    });
-    systems = [ "pcl-simple-database" ];
-    lispLibs = [  ];
-  };
-  pcl-spam = {
-    pname = "pcl-spam";
-    version = "20180430-git";
-    asds = [ "pcl-spam" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/practical-cl/2018-04-30/practical-cl-20180430-git.tgz";
-      sha256 = "0bjwnnxkqw0cf2p1fyx9ihy6hgsxhljm4bns2blvgv63s3j1znd9";
-      system = "pcl-spam";
-      asd = "pcl-spam";
-    });
-    systems = [ "pcl-spam" ];
-    lispLibs = [ (getAttr "cl-ppcre" pkgs) (getAttr "pcl-pathnames" pkgs) (getAttr "pcl-test-framework" pkgs) ];
-  };
-  pcl-test-framework = {
-    pname = "pcl-test-framework";
-    version = "20180430-git";
-    asds = [ "pcl-test-framework" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/practical-cl/2018-04-30/practical-cl-20180430-git.tgz";
-      sha256 = "0bjwnnxkqw0cf2p1fyx9ihy6hgsxhljm4bns2blvgv63s3j1znd9";
-      system = "pcl-test-framework";
-      asd = "pcl-test-framework";
-    });
-    systems = [ "pcl-test-framework" ];
-    lispLibs = [ (getAttr "pcl-macro-utilities" pkgs) ];
-  };
-  pcl-unit-test = {
-    pname = "pcl-unit-test";
-    version = "20121125-git";
-    asds = [ "pcl-unit-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-match/2012-11-25/cl-match-20121125-git.tgz";
-      sha256 = "1qc8gzp7f4phgyi5whkxacrqzdqs0y1hvkf71m8n7l303jly9wjf";
-      system = "pcl-unit-test";
-      asd = "pcl-unit-test";
-    });
-    systems = [ "pcl-unit-test" ];
-    lispLibs = [ (getAttr "standard-cl" pkgs) ];
-  };
-  pcl-url-function = {
-    pname = "pcl-url-function";
-    version = "20180430-git";
-    asds = [ "pcl-url-function" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/practical-cl/2018-04-30/practical-cl-20180430-git.tgz";
-      sha256 = "0bjwnnxkqw0cf2p1fyx9ihy6hgsxhljm4bns2blvgv63s3j1znd9";
-      system = "pcl-url-function";
-      asd = "pcl-url-function";
-    });
-    systems = [ "pcl-url-function" ];
-    lispLibs = [ (getAttr "aserve" pkgs) (getAttr "pcl-html" pkgs) (getAttr "pcl-macro-utilities" pkgs) ];
-  };
-  peppol = {
-    pname = "peppol";
-    version = "20201016-git";
-    asds = [ "peppol" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-peppol/2020-10-16/cl-peppol-20201016-git.tgz";
-      sha256 = "02wc6h1fiaqzf14py2kwsvx0dmb22wdkd54pl0ixnmivj436ln99";
-      system = "peppol";
-      asd = "peppol";
-    });
-    systems = [ "peppol" ];
-    lispLibs = [ (getAttr "cxml" pkgs) (getAttr "xpath" pkgs) ];
-  };
-  percent-encoding = {
-    pname = "percent-encoding";
-    version = "20121013-git";
-    asds = [ "percent-encoding" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/percent-encoding/2012-10-13/percent-encoding-20121013-git.tgz";
-      sha256 = "0q1lh3sa6mkjr5gcdkgimkpc29rgf9cjhv90f61h8ridj28grq0h";
-      system = "percent-encoding";
-      asd = "percent-encoding";
-    });
-    systems = [ "percent-encoding" ];
-    lispLibs = [ (getAttr "anaphora" pkgs) (getAttr "babel" pkgs) ];
-  };
-  percent-encoding-test = {
-    pname = "percent-encoding-test";
-    version = "20121013-git";
-    asds = [ "percent-encoding-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/percent-encoding/2012-10-13/percent-encoding-20121013-git.tgz";
-      sha256 = "0q1lh3sa6mkjr5gcdkgimkpc29rgf9cjhv90f61h8ridj28grq0h";
-      system = "percent-encoding-test";
-      asd = "percent-encoding";
-    });
-    systems = [ "percent-encoding-test" ];
-    lispLibs = [ (getAttr "fiveam" pkgs) (getAttr "percent-encoding" pkgs) ];
-  };
-  perceptual-hashes = {
-    pname = "perceptual-hashes";
-    version = "20220707-git";
-    asds = [ "perceptual-hashes" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/perceptual-hashes/2022-07-07/perceptual-hashes-20220707-git.tgz";
-      sha256 = "1hg2vxi4avmjwscgab7wqf3c4d60x933lac4d86fmfk0wgl5nzzd";
-      system = "perceptual-hashes";
-      asd = "perceptual-hashes";
-    });
-    systems = [ "perceptual-hashes" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "array-operations" pkgs) (getAttr "imago" pkgs) (getAttr "serapeum" pkgs) ];
-  };
-  perceptual-hashes_slash_tests = {
-    pname = "perceptual-hashes_tests";
-    version = "20220707-git";
-    asds = [ "perceptual-hashes" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/perceptual-hashes/2022-07-07/perceptual-hashes-20220707-git.tgz";
-      sha256 = "1hg2vxi4avmjwscgab7wqf3c4d60x933lac4d86fmfk0wgl5nzzd";
-      system = "perceptual-hashes";
-      asd = "perceptual-hashes";
-    });
-    systems = [ "perceptual-hashes/tests" ];
-    lispLibs = [ (getAttr "fiveam" pkgs) (getAttr "perceptual-hashes" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  periodic-table = {
-    pname = "periodic-table";
-    version = "1.0";
-    asds = [ "periodic-table" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/periodic-table/2011-10-01/periodic-table-1.0.tgz";
-      sha256 = "147j9kn0afsvlz09vdjmvw5si08ix3dyypg21vrc5xvn9nsalrxx";
-      system = "periodic-table";
-      asd = "periodic-table";
-    });
-    systems = [ "periodic-table" ];
-    lispLibs = [  ];
-  };
-  periods = {
-    pname = "periods";
-    version = "20221106-git";
-    asds = [ "periods" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/periods/2022-11-06/periods-20221106-git.tgz";
-      sha256 = "0ynhdmlzb499mlm7c7zy6vgw8vglkkf14zr0v40jcl1sgq3236ry";
-      system = "periods";
-      asd = "periods";
-    });
-    systems = [ "periods" ];
-    lispLibs = [ (getAttr "local-time" pkgs) ];
-  };
-  periods-series = {
-    pname = "periods-series";
-    version = "20221106-git";
-    asds = [ "periods-series" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/periods/2022-11-06/periods-20221106-git.tgz";
-      sha256 = "0ynhdmlzb499mlm7c7zy6vgw8vglkkf14zr0v40jcl1sgq3236ry";
-      system = "periods-series";
-      asd = "periods-series";
-    });
-    systems = [ "periods-series" ];
-    lispLibs = [ (getAttr "periods" pkgs) (getAttr "series" pkgs) ];
-  };
-  perlre = {
-    pname = "perlre";
-    version = "20200715-git";
-    asds = [ "perlre" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/perlre/2020-07-15/perlre-20200715-git.tgz";
-      sha256 = "1izhrn1xd0mi2nl0p6930ln3nb4wp3y5ngg81wy5g5s4vqy2h54a";
-      system = "perlre";
-      asd = "perlre";
-    });
-    systems = [ "perlre" ];
-    lispLibs = [ (getAttr "cl-interpol" pkgs) (getAttr "cl-ppcre" pkgs) (getAttr "let-over-lambda" pkgs) (getAttr "prove" pkgs) (getAttr "trivia" pkgs) (getAttr "trivia_dot_ppcre" pkgs) ];
-  };
-  pero = {
-    pname = "pero";
-    version = "20221106-git";
-    asds = [ "pero" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/pero/2022-11-06/pero-20221106-git.tgz";
-      sha256 = "0hpv2vn42210niw6hs4z17w0c565nzln2xzapw7jhm1xjl633vbc";
-      system = "pero";
-      asd = "pero";
-    });
-    systems = [ "pero" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "local-time" pkgs) ];
-  };
-  persistent = {
-    pname = "persistent";
-    version = "20221106-git";
-    asds = [ "persistent" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/mcclim/2022-11-06/mcclim-20221106-git.tgz";
-      sha256 = "0hz6vz4c0xv8bjx02hf3rbnp66c7ifx2ld4y6nxdz6i70wyhwbdf";
-      system = "persistent";
-      asd = "persistent";
-    });
-    systems = [ "persistent" ];
-    lispLibs = [  ];
-  };
-  persistent-tables = {
-    pname = "persistent-tables";
-    version = "20120208-git";
-    asds = [ "persistent-tables" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/persistent-tables/2012-02-08/persistent-tables-20120208-git.tgz";
-      sha256 = "0klfjza85mgj2z42x2lhcqy9q66avac7zw0cpbmwwng3m7679hpa";
-      system = "persistent-tables";
-      asd = "persistent-tables";
-    });
-    systems = [ "persistent-tables" ];
-    lispLibs = [ (getAttr "lisp-unit" pkgs) (getAttr "random-access-lists" pkgs) ];
-  };
-  persistent-variables = {
-    pname = "persistent-variables";
-    version = "20130312-git";
-    asds = [ "persistent-variables" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/persistent-variables/2013-03-12/persistent-variables-20130312-git.tgz";
-      sha256 = "0r72cbjkb5q4sn109svlcsvrwgvwdsn5c63rv5cpaf3jrfv1z8xn";
-      system = "persistent-variables";
-      asd = "persistent-variables";
-    });
-    systems = [ "persistent-variables" ];
-    lispLibs = [  ];
-  };
-  persistent-variables_dot_test = {
-    pname = "persistent-variables.test";
-    version = "20130312-git";
-    asds = [ "persistent-variables.test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/persistent-variables/2013-03-12/persistent-variables-20130312-git.tgz";
-      sha256 = "0r72cbjkb5q4sn109svlcsvrwgvwdsn5c63rv5cpaf3jrfv1z8xn";
-      system = "persistent-variables.test";
-      asd = "persistent-variables";
-    });
-    systems = [ "persistent-variables.test" ];
-    lispLibs = [ (getAttr "persistent-variables" pkgs) ];
-  };
-  petalisp = {
-    pname = "petalisp";
-    version = "20221106-git";
-    asds = [ "petalisp" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/petalisp/2022-11-06/petalisp-20221106-git.tgz";
-      sha256 = "0wd9p8rdalil1qqzpagx920jwrr3i6c8bf9svah88i6vdvh21x63";
-      system = "petalisp";
-      asd = "petalisp";
-    });
-    systems = [ "petalisp" ];
-    lispLibs = [ (getAttr "petalisp_dot_api" pkgs) ];
-  };
-  petalisp_dot_api = {
-    pname = "petalisp.api";
-    version = "20221106-git";
-    asds = [ "petalisp.api" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/petalisp/2022-11-06/petalisp-20221106-git.tgz";
-      sha256 = "0wd9p8rdalil1qqzpagx920jwrr3i6c8bf9svah88i6vdvh21x63";
-      system = "petalisp.api";
-      asd = "petalisp.api";
-    });
-    systems = [ "petalisp.api" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "petalisp_dot_core" pkgs) (getAttr "petalisp_dot_utilities" pkgs) (getAttr "petalisp_dot_xmas-backend" pkgs) (getAttr "split-sequence" pkgs) (getAttr "trivia" pkgs) (getAttr "trivial-macroexpand-all" pkgs) ];
-  };
-  petalisp_dot_core = {
-    pname = "petalisp.core";
-    version = "20221106-git";
-    asds = [ "petalisp.core" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/petalisp/2022-11-06/petalisp-20221106-git.tgz";
-      sha256 = "0wd9p8rdalil1qqzpagx920jwrr3i6c8bf9svah88i6vdvh21x63";
-      system = "petalisp.core";
-      asd = "petalisp.core";
-    });
-    systems = [ "petalisp.core" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "bordeaux-threads" pkgs) (getAttr "lparallel" pkgs) (getAttr "petalisp_dot_type-inference" pkgs) (getAttr "petalisp_dot_utilities" pkgs) (getAttr "trivia" pkgs) ];
-  };
-  petalisp_dot_examples = {
-    pname = "petalisp.examples";
-    version = "20221106-git";
-    asds = [ "petalisp.examples" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/petalisp/2022-11-06/petalisp-20221106-git.tgz";
-      sha256 = "0wd9p8rdalil1qqzpagx920jwrr3i6c8bf9svah88i6vdvh21x63";
-      system = "petalisp.examples";
-      asd = "petalisp.examples";
-    });
-    systems = [ "petalisp.examples" ];
-    lispLibs = [ (getAttr "numpy-file-format" pkgs) (getAttr "petalisp" pkgs) ];
-  };
-  petalisp_dot_graphviz = {
-    pname = "petalisp.graphviz";
-    version = "20221106-git";
-    asds = [ "petalisp.graphviz" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/petalisp/2022-11-06/petalisp-20221106-git.tgz";
-      sha256 = "0wd9p8rdalil1qqzpagx920jwrr3i6c8bf9svah88i6vdvh21x63";
-      system = "petalisp.graphviz";
-      asd = "petalisp.graphviz";
-    });
-    systems = [ "petalisp.graphviz" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cl-dot" pkgs) (getAttr "petalisp" pkgs) (getAttr "petalisp_dot_core" pkgs) (getAttr "petalisp_dot_ir" pkgs) (getAttr "petalisp_dot_utilities" pkgs) (getAttr "trivial-features" pkgs) (getAttr "uiop" pkgs) ];
-  };
-  petalisp_dot_ir = {
-    pname = "petalisp.ir";
-    version = "20221106-git";
-    asds = [ "petalisp.ir" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/petalisp/2022-11-06/petalisp-20221106-git.tgz";
-      sha256 = "0wd9p8rdalil1qqzpagx920jwrr3i6c8bf9svah88i6vdvh21x63";
-      system = "petalisp.ir";
-      asd = "petalisp.ir";
-    });
-    systems = [ "petalisp.ir" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "petalisp_dot_core" pkgs) (getAttr "petalisp_dot_utilities" pkgs) (getAttr "priority-queue" pkgs) (getAttr "split-sequence" pkgs) (getAttr "ucons" pkgs) ];
-  };
-  petalisp_dot_test-suite = {
-    pname = "petalisp.test-suite";
-    version = "20221106-git";
-    asds = [ "petalisp.test-suite" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/petalisp/2022-11-06/petalisp-20221106-git.tgz";
-      sha256 = "0wd9p8rdalil1qqzpagx920jwrr3i6c8bf9svah88i6vdvh21x63";
-      system = "petalisp.test-suite";
-      asd = "petalisp.test-suite";
-    });
-    systems = [ "petalisp.test-suite" ];
-    lispLibs = [ (getAttr "bordeaux-threads" pkgs) (getAttr "closer-mop" pkgs) (getAttr "petalisp" pkgs) (getAttr "petalisp_dot_examples" pkgs) (getAttr "petalisp_dot_graphviz" pkgs) (getAttr "petalisp_dot_xmas-backend" pkgs) ];
-  };
-  petalisp_dot_type-inference = {
-    pname = "petalisp.type-inference";
-    version = "20221106-git";
-    asds = [ "petalisp.type-inference" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/petalisp/2022-11-06/petalisp-20221106-git.tgz";
-      sha256 = "0wd9p8rdalil1qqzpagx920jwrr3i6c8bf9svah88i6vdvh21x63";
-      system = "petalisp.type-inference";
-      asd = "petalisp.type-inference";
-    });
-    systems = [ "petalisp.type-inference" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "trivia" pkgs) (getAttr "trivial-arguments" pkgs) ];
-  };
-  petalisp_dot_utilities = {
-    pname = "petalisp.utilities";
-    version = "20221106-git";
-    asds = [ "petalisp.utilities" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/petalisp/2022-11-06/petalisp-20221106-git.tgz";
-      sha256 = "0wd9p8rdalil1qqzpagx920jwrr3i6c8bf9svah88i6vdvh21x63";
-      system = "petalisp.utilities";
-      asd = "petalisp.utilities";
-    });
-    systems = [ "petalisp.utilities" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "atomics" pkgs) (getAttr "bordeaux-threads" pkgs) (getAttr "queues_dot_priority-queue" pkgs) (getAttr "trivia" pkgs) (getAttr "trivial-garbage" pkgs) ];
-  };
-  petalisp_dot_xmas-backend = {
-    pname = "petalisp.xmas-backend";
-    version = "20221106-git";
-    asds = [ "petalisp.xmas-backend" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/petalisp/2022-11-06/petalisp-20221106-git.tgz";
-      sha256 = "0wd9p8rdalil1qqzpagx920jwrr3i6c8bf9svah88i6vdvh21x63";
-      system = "petalisp.xmas-backend";
-      asd = "petalisp.xmas-backend";
-    });
-    systems = [ "petalisp.xmas-backend" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "atomics" pkgs) (getAttr "bordeaux-threads" pkgs) (getAttr "lparallel" pkgs) (getAttr "petalisp_dot_core" pkgs) (getAttr "petalisp_dot_ir" pkgs) (getAttr "petalisp_dot_type-inference" pkgs) (getAttr "petalisp_dot_utilities" pkgs) (getAttr "trivia" pkgs) (getAttr "trivial-garbage" pkgs) ];
-  };
-  petit_dot_package-utils = {
-    pname = "petit.package-utils";
-    version = "20140826-git";
-    asds = [ "petit.package-utils" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/petit.package-utils/2014-08-26/petit.package-utils-20140826-git.tgz";
-      sha256 = "0jj4c1jpcqfy9mrlxhjmq4ypwlzk84h09i8nr34wjwh6z7idhpyv";
-      system = "petit.package-utils";
-      asd = "petit.package-utils";
-    });
-    systems = [ "petit.package-utils" ];
-    lispLibs = [  ];
-  };
-  petit_dot_string-utils = {
-    pname = "petit.string-utils";
-    version = "20141106-git";
-    asds = [ "petit.string-utils" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/petit.string-utils/2014-11-06/petit.string-utils-20141106-git.tgz";
-      sha256 = "04kqdj69x53wzvpp54zp6767186in24p8yrr82wdg2bwzw4qh4yl";
-      system = "petit.string-utils";
-      asd = "petit.string-utils";
-    });
-    systems = [ "petit.string-utils" ];
-    lispLibs = [  ];
-  };
-  petit_dot_string-utils-test = {
-    pname = "petit.string-utils-test";
-    version = "20141106-git";
-    asds = [ "petit.string-utils-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/petit.string-utils/2014-11-06/petit.string-utils-20141106-git.tgz";
-      sha256 = "04kqdj69x53wzvpp54zp6767186in24p8yrr82wdg2bwzw4qh4yl";
-      system = "petit.string-utils-test";
-      asd = "petit.string-utils-test";
-    });
-    systems = [ "petit.string-utils-test" ];
-    lispLibs = [ (getAttr "petit_dot_string-utils" pkgs) (getAttr "rt" pkgs) ];
-  };
-  petri = {
-    pname = "petri";
-    version = "20200427-git";
-    asds = [ "petri" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/petri/2020-04-27/petri-20200427-git.tgz";
-      sha256 = "1y78s3jndyxll46zq7s5is9pwv8f6jr2npjkcpd48ik7xkj2269b";
-      system = "petri";
-      asd = "petri";
-    });
-    systems = [ "petri" ];
-    lispLibs = [ (getAttr "_1am" pkgs) (getAttr "alexandria" pkgs) (getAttr "closer-mop" pkgs) (getAttr "phoe-toolbox" pkgs) (getAttr "split-sequence" pkgs) ];
-  };
-  petri_slash_graph = {
-    pname = "petri_graph";
-    version = "20200427-git";
-    asds = [ "petri" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/petri/2020-04-27/petri-20200427-git.tgz";
-      sha256 = "1y78s3jndyxll46zq7s5is9pwv8f6jr2npjkcpd48ik7xkj2269b";
-      system = "petri";
-      asd = "petri";
-    });
-    systems = [ "petri/graph" ];
-    lispLibs = [ (getAttr "cl-dot" pkgs) (getAttr "petri" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  petri_slash_test = {
-    pname = "petri_test";
-    version = "20200427-git";
-    asds = [ "petri" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/petri/2020-04-27/petri-20200427-git.tgz";
-      sha256 = "1y78s3jndyxll46zq7s5is9pwv8f6jr2npjkcpd48ik7xkj2269b";
-      system = "petri";
-      asd = "petri";
-    });
-    systems = [ "petri/test" ];
-    lispLibs = [ (getAttr "_1am" pkgs) (getAttr "alexandria" pkgs) (getAttr "bordeaux-threads" pkgs) (getAttr "lparallel" pkgs) (getAttr "petri" pkgs) (getAttr "trivial-backtrace" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  petri_slash_threaded = {
-    pname = "petri_threaded";
-    version = "20200427-git";
-    asds = [ "petri" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/petri/2020-04-27/petri-20200427-git.tgz";
-      sha256 = "1y78s3jndyxll46zq7s5is9pwv8f6jr2npjkcpd48ik7xkj2269b";
-      system = "petri";
-      asd = "petri";
-    });
-    systems = [ "petri/threaded" ];
-    lispLibs = [ (getAttr "bordeaux-threads" pkgs) (getAttr "lparallel" pkgs) (getAttr "petri" pkgs) (getAttr "trivial-backtrace" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  pettomato-deque = {
-    pname = "pettomato-deque";
-    version = "20120107-git";
-    asds = [ "pettomato-deque" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/pettomato-deque/2012-01-07/pettomato-deque-20120107-git.tgz";
-      sha256 = "07ai4fa64cg6shfvnx9xk7pscbsz64ys80482zz2fb9q0rba80b7";
-      system = "pettomato-deque";
-      asd = "pettomato-deque";
-    });
-    systems = [ "pettomato-deque" ];
-    lispLibs = [  ];
-  };
-  pettomato-deque-tests = {
-    pname = "pettomato-deque-tests";
-    version = "20120107-git";
-    asds = [ "pettomato-deque-tests" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/pettomato-deque/2012-01-07/pettomato-deque-20120107-git.tgz";
-      sha256 = "07ai4fa64cg6shfvnx9xk7pscbsz64ys80482zz2fb9q0rba80b7";
-      system = "pettomato-deque-tests";
-      asd = "pettomato-deque-tests";
-    });
-    systems = [ "pettomato-deque-tests" ];
-    lispLibs = [ (getAttr "fiveam" pkgs) (getAttr "pettomato-deque" pkgs) ];
-  };
-  pettomato-indexed-priority-queue = {
-    pname = "pettomato-indexed-priority-queue";
-    version = "20120909-git";
-    asds = [ "pettomato-indexed-priority-queue" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/pettomato-indexed-priority-queue/2012-09-09/pettomato-indexed-priority-queue-20120909-git.tgz";
-      sha256 = "14i36qbdnif28xcbxdbr5abzmzxr7vzv64n1aix0f6khxg99pylz";
-      system = "pettomato-indexed-priority-queue";
-      asd = "pettomato-indexed-priority-queue";
-    });
-    systems = [ "pettomato-indexed-priority-queue" ];
-    lispLibs = [  ];
-  };
-  pettomato-indexed-priority-queue-tests = {
-    pname = "pettomato-indexed-priority-queue-tests";
-    version = "20120909-git";
-    asds = [ "pettomato-indexed-priority-queue-tests" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/pettomato-indexed-priority-queue/2012-09-09/pettomato-indexed-priority-queue-20120909-git.tgz";
-      sha256 = "14i36qbdnif28xcbxdbr5abzmzxr7vzv64n1aix0f6khxg99pylz";
-      system = "pettomato-indexed-priority-queue-tests";
-      asd = "pettomato-indexed-priority-queue-tests";
-    });
-    systems = [ "pettomato-indexed-priority-queue-tests" ];
-    lispLibs = [ (getAttr "fiveam" pkgs) (getAttr "pettomato-indexed-priority-queue" pkgs) ];
-  };
-  pfft = {
-    pname = "pfft";
-    version = "20180711-git";
-    asds = [ "pfft" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/fft/2018-07-11/fft-20180711-git.tgz";
-      sha256 = "0ymnfplap2cncw49mhq7crapgxphfwsvqdgrcckpgsvw6qsymasd";
-      system = "pfft";
-      asd = "pfft";
-    });
-    systems = [ "pfft" ];
-    lispLibs = [ (getAttr "fft" pkgs) (getAttr "pcall" pkgs) ];
-  };
-  pg = {
-    pname = "pg";
-    version = "20150608-git";
-    asds = [ "pg" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/pg/2015-06-08/pg-20150608-git.tgz";
-      sha256 = "1c7axd2yxw9lxf7l5djrnfkp197mmr88qpigy2cjgim8vxab4n2l";
-      system = "pg";
-      asd = "pg";
-    });
-    systems = [ "pg" ];
-    lispLibs = [  ];
-  };
-  pgloader = {
-    pname = "pgloader";
-    version = "v3.6.9";
-    asds = [ "pgloader" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/pgloader/2022-11-06/pgloader-v3.6.9.tgz";
-      sha256 = "03kp3ms2sjz4gwb94xs404mi63fnv1bq00hyqxyvc9csmicxzawn";
-      system = "pgloader";
-      asd = "pgloader";
-    });
-    systems = [ "pgloader" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cl-base64" pkgs) (getAttr "cl-csv" pkgs) (getAttr "db3" pkgs) (getAttr "cl-fad" pkgs) (getAttr "ixf" pkgs) (getAttr "cl-log" pkgs) (getAttr "cl-markdown" pkgs) (getAttr "mssql" pkgs) (getAttr "cl-mustache" pkgs) (getAttr "cl-ppcre" pkgs) (getAttr "sqlite" pkgs) (getAttr "closer-mop" pkgs) (getAttr "command-line-arguments" pkgs) (getAttr "drakma" pkgs) (getAttr "esrap" pkgs) (getAttr "flexi-streams" pkgs) (getAttr "local-time" pkgs) (getAttr "lparallel" pkgs) (getAttr "metabang-bind" pkgs) (getAttr "cl-postgres" pkgs) (getAttr "postmodern" pkgs) (getAttr "simple-date" pkgs) (getAttr "py-configparser" pkgs) (getAttr "qmynd" pkgs) (getAttr "quri" pkgs) (getAttr "split-sequence" pkgs) (getAttr "trivial-backtrace" pkgs) (getAttr "uiop" pkgs) (getAttr "usocket" pkgs) (getAttr "uuid" pkgs) (getAttr "yason" pkgs) (getAttr "zs3" pkgs) ];
-  };
-  phoe-toolbox = {
-    pname = "phoe-toolbox";
-    version = "20210124-git";
-    asds = [ "phoe-toolbox" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/phoe-toolbox/2021-01-24/phoe-toolbox-20210124-git.tgz";
-      sha256 = "0bzbgs4lkhw93y1cwrs9kp5yiyz8sg4885cnvi83dzzbla9b74kv";
-      system = "phoe-toolbox";
-      asd = "phoe-toolbox";
-    });
-    systems = [ "phoe-toolbox" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "closer-mop" pkgs) (getAttr "trivial-indent" pkgs) ];
-  };
-  phoe-toolbox_slash_bag = {
-    pname = "phoe-toolbox_bag";
-    version = "20210124-git";
-    asds = [ "phoe-toolbox" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/phoe-toolbox/2021-01-24/phoe-toolbox-20210124-git.tgz";
-      sha256 = "0bzbgs4lkhw93y1cwrs9kp5yiyz8sg4885cnvi83dzzbla9b74kv";
-      system = "phoe-toolbox";
-      asd = "phoe-toolbox";
-    });
-    systems = [ "phoe-toolbox/bag" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  phonon = {
-    pname = "phonon";
-    version = "20210531-git";
-    asds = [ "phonon" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/qt-libs/2021-05-31/qt-libs-20210531-git.tgz";
-      sha256 = "0why7cssadw20jg382k6mg2lgk5b3b3nwyyvjafaz90h0ljf0b9w";
-      system = "phonon";
-      asd = "phonon";
-    });
-    systems = [ "phonon" ];
-    lispLibs = [ (getAttr "qt_plus_libs" pkgs) (getAttr "qt-libs" pkgs) (getAttr "qtcore" pkgs) (getAttr "qtdbus" pkgs) (getAttr "qtgui" pkgs) (getAttr "qtxml" pkgs) ];
-  };
-  phos = {
-    pname = "phos";
-    version = "20220220-git";
-    asds = [ "phos" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/phos/2022-02-20/phos-20220220-git.tgz";
-      sha256 = "1zwci86rkbaiix0w2gd5q6nr8v2vv945pkvwp0j240iyzd4hfxr3";
-      system = "phos";
-      asd = "phos";
-    });
-    systems = [ "phos" ];
-    lispLibs = [ (getAttr "cl_plus_ssl" pkgs) (getAttr "cl-ppcre" pkgs) (getAttr "quri" pkgs) (getAttr "trivia" pkgs) (getAttr "usocket" pkgs) ];
-  };
-  phos_slash_nodgui = {
-    pname = "phos_nodgui";
-    version = "20220220-git";
-    asds = [ "phos" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/phos/2022-02-20/phos-20220220-git.tgz";
-      sha256 = "1zwci86rkbaiix0w2gd5q6nr8v2vv945pkvwp0j240iyzd4hfxr3";
-      system = "phos";
-      asd = "phos";
-    });
-    systems = [ "phos/nodgui" ];
-    lispLibs = [ (getAttr "nodgui" pkgs) (getAttr "phos" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  phos_slash_test = {
-    pname = "phos_test";
-    version = "20220220-git";
-    asds = [ "phos" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/phos/2022-02-20/phos-20220220-git.tgz";
-      sha256 = "1zwci86rkbaiix0w2gd5q6nr8v2vv945pkvwp0j240iyzd4hfxr3";
-      system = "phos";
-      asd = "phos";
-    });
-    systems = [ "phos/test" ];
-    lispLibs = [ (getAttr "clunit2" pkgs) (getAttr "phos" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  physical-dimension = {
-    pname = "physical-dimension";
-    version = "master-df14cb8c-git";
-    asds = [ "physical-dimension" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/antik/2019-10-08/antik-master-df14cb8c-git.tgz";
-      sha256 = "1n08cx4n51z8v4bxyak166lp495xda3x7llfxcdpxndxqxcammr0";
-      system = "physical-dimension";
-      asd = "physical-dimension";
-    });
-    systems = [ "physical-dimension" ];
-    lispLibs = [ (getAttr "foreign-array" pkgs) (getAttr "fare-utils" pkgs) (getAttr "trivial-utf-8" pkgs) ];
-  };
-  physical-quantities = {
-    pname = "physical-quantities";
-    version = "20211020-git";
-    asds = [ "physical-quantities" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/physical-quantities/2021-10-20/physical-quantities-20211020-git.tgz";
-      sha256 = "0mb2s94s6fhw5vfa89naalw7ld11sdsszlqpz0c65dvpfyfmmdmh";
-      system = "physical-quantities";
-      asd = "physical-quantities";
-    });
-    systems = [ "physical-quantities" ];
-    lispLibs = [ (getAttr "parseq" pkgs) ];
-  };
-  physical-quantities_slash_test = {
-    pname = "physical-quantities_test";
-    version = "20211020-git";
-    asds = [ "physical-quantities" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/physical-quantities/2021-10-20/physical-quantities-20211020-git.tgz";
-      sha256 = "0mb2s94s6fhw5vfa89naalw7ld11sdsszlqpz0c65dvpfyfmmdmh";
-      system = "physical-quantities";
-      asd = "physical-quantities";
-    });
-    systems = [ "physical-quantities/test" ];
-    lispLibs = [ (getAttr "physical-quantities" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  picl = {
-    pname = "picl";
-    version = "20210124-git";
-    asds = [ "picl" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/picl/2021-01-24/picl-20210124-git.tgz";
-      sha256 = "14jwx7hv6h563ppvxicdkrqx0cxlz15im9a4grd9yvwdfxl70l4c";
-      system = "picl";
-      asd = "picl";
-    });
-    systems = [ "picl" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "defclass-std" pkgs) ];
-  };
-  picl_slash_iterate = {
-    pname = "picl_iterate";
-    version = "20210124-git";
-    asds = [ "picl" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/picl/2021-01-24/picl-20210124-git.tgz";
-      sha256 = "14jwx7hv6h563ppvxicdkrqx0cxlz15im9a4grd9yvwdfxl70l4c";
-      system = "picl";
-      asd = "picl";
-    });
-    systems = [ "picl/iterate" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "iterate" pkgs) (getAttr "picl" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  picl_slash_tests = {
-    pname = "picl_tests";
-    version = "20210124-git";
-    asds = [ "picl" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/picl/2021-01-24/picl-20210124-git.tgz";
-      sha256 = "14jwx7hv6h563ppvxicdkrqx0cxlz15im9a4grd9yvwdfxl70l4c";
-      system = "picl";
-      asd = "picl";
-    });
-    systems = [ "picl/tests" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "fiveam" pkgs) (getAttr "generic-cl" pkgs) (getAttr "iterate" pkgs) (getAttr "picl" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  piggyback-parameters = {
-    pname = "piggyback-parameters";
-    version = "20200610-git";
-    asds = [ "piggyback-parameters" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/piggyback-parameters/2020-06-10/piggyback-parameters-20200610-git.tgz";
-      sha256 = "1187bgnz9pvs8xdxapqhrm4yqzwlp368ijmc5szm8r8q3zrb219n";
-      system = "piggyback-parameters";
-      asd = "piggyback-parameters";
-    });
-    systems = [ "piggyback-parameters" ];
-    lispLibs = [ (getAttr "trivial-hashtable-serialize" pkgs) (getAttr "trivial-json-codec" pkgs) (getAttr "trivial-pooled-database" pkgs) ];
-  };
-  piggyback-parameters_slash_test = {
-    pname = "piggyback-parameters_test";
-    version = "20200610-git";
-    asds = [ "piggyback-parameters" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/piggyback-parameters/2020-06-10/piggyback-parameters-20200610-git.tgz";
-      sha256 = "1187bgnz9pvs8xdxapqhrm4yqzwlp368ijmc5szm8r8q3zrb219n";
-      system = "piggyback-parameters";
-      asd = "piggyback-parameters";
-    });
-    systems = [ "piggyback-parameters/test" ];
-    lispLibs = [ (getAttr "fiveam" pkgs) (getAttr "piggyback-parameters" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  pileup = {
-    pname = "pileup";
-    version = "20150709-git";
-    asds = [ "pileup" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/pileup/2015-07-09/pileup-20150709-git.tgz";
-      sha256 = "01gvshpxil0ggjgfmgcymbgmpsfaxy6aggm0bywkn40rck3038vb";
-      system = "pileup";
-      asd = "pileup";
-    });
-    systems = [ "pileup" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) ];
-  };
-  pileup-tests = {
-    pname = "pileup-tests";
-    version = "20150709-git";
-    asds = [ "pileup-tests" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/pileup/2015-07-09/pileup-20150709-git.tgz";
-      sha256 = "01gvshpxil0ggjgfmgcymbgmpsfaxy6aggm0bywkn40rck3038vb";
-      system = "pileup-tests";
-      asd = "pileup";
-    });
-    systems = [ "pileup-tests" ];
-    lispLibs = [ (getAttr "hu_dot_dwim_dot_stefil" pkgs) (getAttr "pileup" pkgs) ];
-  };
-  pipes = {
-    pname = "pipes";
-    version = "20150923-git";
-    asds = [ "pipes" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/pipes/2015-09-23/pipes-20150923-git.tgz";
-      sha256 = "17qcxalbdip20nkbwiv3kpdjjsy0g1y9s4a0zv38ch47bdl9yxpc";
-      system = "pipes";
-      asd = "pipes";
-    });
-    systems = [ "pipes" ];
-    lispLibs = [  ];
-  };
-  piping = {
-    pname = "piping";
-    version = "20221106-git";
-    asds = [ "piping" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/piping/2022-11-06/piping-20221106-git.tgz";
-      sha256 = "0kmjpa3wjinsfiik50n2c9b5g9n39qf7p2piy4237xddx2a0300r";
-      system = "piping";
-      asd = "piping";
-    });
-    systems = [ "piping" ];
-    lispLibs = [  ];
-  };
-  pithy-xml = {
-    pname = "pithy-xml";
-    version = "20101006-git";
-    asds = [ "pithy-xml" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/pithy-xml/2010-10-06/pithy-xml-20101006-git.tgz";
-      sha256 = "05zw5adiw7jgvi9w9c661s4r49fidpcxn6m7azmn0pzc936dg17h";
-      system = "pithy-xml";
-      asd = "pithy-xml";
-    });
-    systems = [ "pithy-xml" ];
-    lispLibs = [  ];
-  };
-  pixman = {
-    pname = "pixman";
-    version = "20170830-git";
-    asds = [ "pixman" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-pixman/2017-08-30/cl-pixman-20170830-git.tgz";
-      sha256 = "068hh7cv6f2wqwd8092wqh3rgdix6sa319qpm648mss8jfnjjbgj";
-      system = "pixman";
-      asd = "pixman";
-    });
-    systems = [ "pixman" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cffi" pkgs) (getAttr "trivial-garbage" pkgs) ];
-  };
-  pjlink = {
-    pname = "pjlink";
-    version = "20220331-git";
-    asds = [ "pjlink" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/pjlink/2022-03-31/pjlink-20220331-git.tgz";
-      sha256 = "1rsmg0x7fd32na36x9ahj6vji3xs6ckg5pyng8nf33fmdj8dscbc";
-      system = "pjlink";
-      asd = "pjlink";
-    });
-    systems = [ "pjlink" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "bordeaux-threads" pkgs) (getAttr "ip-interfaces" pkgs) (getAttr "md5" pkgs) (getAttr "split-sequence" pkgs) (getAttr "trivial-garbage" pkgs) (getAttr "usocket" pkgs) ];
-  };
-  pk-serialize = {
-    pname = "pk-serialize";
-    version = "20221106-git";
-    asds = [ "pk-serialize" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/pk-serialize/2022-11-06/pk-serialize-20221106-git.tgz";
-      sha256 = "1fi9xxdlg2z9dnqb2sc7wg37aqzqjz43h2l1wxa5zvk73qqzapyn";
-      system = "pk-serialize";
-      asd = "pk-serialize";
-    });
-    systems = [ "pk-serialize" ];
-    lispLibs = [ (getAttr "closer-mop" pkgs) ];
-  };
-  pkg-doc = {
-    pname = "pkg-doc";
-    version = "20200925-git";
-    asds = [ "pkg-doc" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/pkg-doc/2020-09-25/pkg-doc-20200925-git.tgz";
-      sha256 = "1y4dcc0q3iizgvavnkl8q4bjxq0dngvqw5dhrf9bxf4d3q3vrbd4";
-      system = "pkg-doc";
-      asd = "pkg-doc";
-    });
-    systems = [ "pkg-doc" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "stdutils" pkgs) (getAttr "clim-widgets" pkgs) (getAttr "manifest" pkgs) (getAttr "nsort" pkgs) (getAttr "repl-utilities" pkgs) ];
-  };
-  place-modifiers = {
-    pname = "place-modifiers";
-    version = "2.1";
-    asds = [ "place-modifiers" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/place-modifiers/2012-11-25/place-modifiers-2.1.tgz";
-      sha256 = "13nd911h6i7gks78l30bzdqzygcqh47946jwaf50ak2iraagknvf";
-      system = "place-modifiers";
-      asd = "place-modifiers";
-    });
-    systems = [ "place-modifiers" ];
-    lispLibs = [ (getAttr "cartesian-product-switch" pkgs) (getAttr "map-bind" pkgs) ];
-  };
-  place-utils = {
-    pname = "place-utils";
-    version = "0.2";
-    asds = [ "place-utils" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/place-utils/2018-10-18/place-utils-0.2.tgz";
-      sha256 = "1riaxxafn2xbyy6776yqns1bhz5jnzzpd177wb5xzvwlxiix6yf9";
-      system = "place-utils";
-      asd = "place-utils";
-    });
-    systems = [ "place-utils" ];
-    lispLibs = [  ];
-  };
-  plain-odbc = {
-    pname = "plain-odbc";
-    version = "20191130-git";
-    asds = [ "plain-odbc" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/plain-odbc/2019-11-30/plain-odbc-20191130-git.tgz";
-      sha256 = "1ca5v50bffycl0dlwydm385cgacbxvwfphi2gjy2ni573czy1lgb";
-      system = "plain-odbc";
-      asd = "plain-odbc";
-    });
-    systems = [ "plain-odbc" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cffi" pkgs) ];
-  };
-  planks = {
-    pname = "planks";
-    version = "20110522-git";
-    asds = [ "planks" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/planks/2011-05-22/planks-20110522-git.tgz";
-      sha256 = "1y7cg9xb75j1yslbxsmw0fyg738f4d28lnlm7w7hzgc51fc7875k";
-      system = "planks";
-      asd = "planks";
-    });
-    systems = [ "planks" ];
-    lispLibs = [ (getAttr "babel" pkgs) (getAttr "bordeaux-threads" pkgs) (getAttr "closer-mop" pkgs) (getAttr "ironclad" pkgs) (getAttr "rucksack" pkgs) (getAttr "trivial-garbage" pkgs) ];
-  };
-  plokami = {
-    pname = "plokami";
-    version = "20200218-git";
-    asds = [ "plokami" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/plokami/2020-02-18/plokami-20200218-git.tgz";
-      sha256 = "1k78lpbaqqa2gnwi9k0y646md4s9xnijm774knl11p05r83w5ycb";
-      system = "plokami";
-      asd = "plokami";
-    });
-    systems = [ "plokami" ];
-    lispLibs = [ (getAttr "cffi" pkgs) (getAttr "uiop" pkgs) ];
-  };
-  plot = {
-    pname = "plot";
-    version = "20221106-git";
-    asds = [ "plot" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/plot/2022-11-06/plot-20221106-git.tgz";
-      sha256 = "1fwp31jn9a0hla9yv44havgldmjf3hi2dgpm3j3h770d8wypy5vv";
-      system = "plot";
-      asd = "plot";
-    });
-    systems = [ "plot" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "alexandria_plus" pkgs) (getAttr "cl-ppcre" pkgs) (getAttr "data-frame" pkgs) ];
-  };
-  plot_slash_text = {
-    pname = "plot_text";
-    version = "20221106-git";
-    asds = [ "plot" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/plot/2022-11-06/plot-20221106-git.tgz";
-      sha256 = "1fwp31jn9a0hla9yv44havgldmjf3hi2dgpm3j3h770d8wypy5vv";
-      system = "plot";
-      asd = "plot";
-    });
-    systems = [ "plot/text" ];
-    lispLibs = [ (getAttr "cl-spark" pkgs) (getAttr "iterate" pkgs) (getAttr "num-utils" pkgs) (getAttr "select" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  plot_slash_vega = {
-    pname = "plot_vega";
-    version = "20221106-git";
-    asds = [ "plot" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/plot/2022-11-06/plot-20221106-git.tgz";
-      sha256 = "1fwp31jn9a0hla9yv44havgldmjf3hi2dgpm3j3h770d8wypy5vv";
-      system = "plot";
-      asd = "plot";
-    });
-    systems = [ "plot/vega" ];
-    lispLibs = [ (getAttr "cl-who" pkgs) (getAttr "dfio" pkgs) (getAttr "duologue" pkgs) (getAttr "lass" pkgs) (getAttr "let-plus" pkgs) (getAttr "lisp-stat" pkgs) (getAttr "local-time" pkgs) (getAttr "parenscript" pkgs) (getAttr "plot" pkgs) (getAttr "quri" pkgs) (getAttr "yason" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  plplot-examples = {
-    pname = "plplot-examples";
-    version = "20180228-git";
-    asds = [ "plplot-examples" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-plplot/2018-02-28/cl-plplot-20180228-git.tgz";
-      sha256 = "0hfgq47ga2r764jfc3ywaz5ynnvp701fjhbw0s4j1mrw4gaf6y6w";
-      system = "plplot-examples";
-      asd = "cl-plplot";
-    });
-    systems = [ "plplot-examples" ];
-    lispLibs = [ (getAttr "cl-plplot" pkgs) (getAttr "png" pkgs) ];
-  };
-  pludeck = {
-    pname = "pludeck";
-    version = "20180831-git";
-    asds = [ "pludeck" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/pludeck/2018-08-31/pludeck-20180831-git.tgz";
-      sha256 = "0p6v7fxs48fxr76kvkh6z2mjjyz3vf2rp698jq1fl6p3hihbgl0m";
-      system = "pludeck";
-      asd = "pludeck";
-    });
-    systems = [ "pludeck" ];
-    lispLibs = [ (getAttr "plump" pkgs) ];
-  };
-  plump = {
-    pname = "plump";
-    version = "20221106-git";
-    asds = [ "plump" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/plump/2022-11-06/plump-20221106-git.tgz";
-      sha256 = "1ndj8bs690fpwpz1xjkgfj9kdlrpvbv2qid4h7viynlpldqgbqnq";
-      system = "plump";
-      asd = "plump";
-    });
-    systems = [ "plump" ];
-    lispLibs = [ (getAttr "array-utils" pkgs) (getAttr "documentation-utils" pkgs) ];
-  };
-  plump-bundle = {
-    pname = "plump-bundle";
-    version = "20190710-git";
-    asds = [ "plump-bundle" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/plump-bundle/2019-07-10/plump-bundle-20190710-git.tgz";
-      sha256 = "1r9k4fh9vqszvsdsa101m1nqn3wmnb89cis2sj2asbssrmcllgn3";
-      system = "plump-bundle";
-      asd = "plump-bundle";
-    });
-    systems = [ "plump-bundle" ];
-    lispLibs = [ (getAttr "babel" pkgs) (getAttr "closer-mop" pkgs) (getAttr "fast-io" pkgs) (getAttr "plump-dom" pkgs) ];
-  };
-  plump-dom = {
-    pname = "plump-dom";
-    version = "20221106-git";
-    asds = [ "plump-dom" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/plump/2022-11-06/plump-20221106-git.tgz";
-      sha256 = "1ndj8bs690fpwpz1xjkgfj9kdlrpvbv2qid4h7viynlpldqgbqnq";
-      system = "plump-dom";
-      asd = "plump-dom";
-    });
-    systems = [ "plump-dom" ];
-    lispLibs = [ (getAttr "plump" pkgs) ];
-  };
-  plump-lexer = {
-    pname = "plump-lexer";
-    version = "20221106-git";
-    asds = [ "plump-lexer" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/plump/2022-11-06/plump-20221106-git.tgz";
-      sha256 = "1ndj8bs690fpwpz1xjkgfj9kdlrpvbv2qid4h7viynlpldqgbqnq";
-      system = "plump-lexer";
-      asd = "plump-lexer";
-    });
-    systems = [ "plump-lexer" ];
-    lispLibs = [ (getAttr "plump" pkgs) ];
-  };
-  plump-parser = {
-    pname = "plump-parser";
-    version = "20221106-git";
-    asds = [ "plump-parser" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/plump/2022-11-06/plump-20221106-git.tgz";
-      sha256 = "1ndj8bs690fpwpz1xjkgfj9kdlrpvbv2qid4h7viynlpldqgbqnq";
-      system = "plump-parser";
-      asd = "plump-parser";
-    });
-    systems = [ "plump-parser" ];
-    lispLibs = [ (getAttr "plump" pkgs) ];
-  };
-  plump-sexp = {
-    pname = "plump-sexp";
-    version = "20210531-git";
-    asds = [ "plump-sexp" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/plump-sexp/2021-05-31/plump-sexp-20210531-git.tgz";
-      sha256 = "0zm9h0assjb8766z2v6l1k1s60y90y6f8smrl1dczwqlvc8xyln5";
-      system = "plump-sexp";
-      asd = "plump-sexp";
-    });
-    systems = [ "plump-sexp" ];
-    lispLibs = [ (getAttr "plump" pkgs) ];
-  };
-  plump-tex = {
-    pname = "plump-tex";
-    version = "20210531-git";
-    asds = [ "plump-tex" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/plump-tex/2021-05-31/plump-tex-20210531-git.tgz";
-      sha256 = "1qjiyw0kh8i2rd8rdznfz9vnvklcf9iffdbm8xvp3z1086frzfms";
-      system = "plump-tex";
-      asd = "plump-tex";
-    });
-    systems = [ "plump-tex" ];
-    lispLibs = [ (getAttr "cl-ppcre" pkgs) (getAttr "plump" pkgs) ];
-  };
-  plump-tex-test = {
-    pname = "plump-tex-test";
-    version = "20210531-git";
-    asds = [ "plump-tex-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/plump-tex/2021-05-31/plump-tex-20210531-git.tgz";
-      sha256 = "1qjiyw0kh8i2rd8rdznfz9vnvklcf9iffdbm8xvp3z1086frzfms";
-      system = "plump-tex-test";
-      asd = "plump-tex-test";
-    });
-    systems = [ "plump-tex-test" ];
-    lispLibs = [ (getAttr "fiveam" pkgs) (getAttr "plump-tex" pkgs) ];
-  };
-  png = {
-    pname = "png";
-    version = "20211020-git";
-    asds = [ "png" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-png/2021-10-20/cl-png-20211020-git.tgz";
-      sha256 = "17xcb9ps5vf3if61blmx7cpfrz3gsw7jk8d5zv3f4cq8jrriqdx4";
-      system = "png";
-      asd = "png";
-    });
-    systems = [ "png" ];
-    lispLibs = [ (getAttr "cffi" pkgs) (getAttr "cffi-grovel" pkgs) ];
-  };
-  png-read = {
-    pname = "png-read";
-    version = "20170830-git";
-    asds = [ "png-read" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/png-read/2017-08-30/png-read-20170830-git.tgz";
-      sha256 = "0vyczbcwskrygrf1hgrsnk0jil8skmvf1kiaalw5jps4fjrfdkw0";
-      system = "png-read";
-      asd = "png-read";
-    });
-    systems = [ "png-read" ];
-    lispLibs = [ (getAttr "babel" pkgs) (getAttr "chipz" pkgs) (getAttr "iterate" pkgs) ];
-  };
-  png-test = {
-    pname = "png-test";
-    version = "20211020-git";
-    asds = [ "png-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-png/2021-10-20/cl-png-20211020-git.tgz";
-      sha256 = "17xcb9ps5vf3if61blmx7cpfrz3gsw7jk8d5zv3f4cq8jrriqdx4";
-      system = "png-test";
-      asd = "png-test";
-    });
-    systems = [ "png-test" ];
-    lispLibs = [ (getAttr "png" pkgs) ];
-  };
-  pngload = {
-    pname = "pngload";
-    version = "20220707-git";
-    asds = [ "pngload" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/pngload/2022-07-07/pngload-20220707-git.tgz";
-      sha256 = "1qnd2pz6ckdm5nnf4ipli3zgiyisfqjyf1aiy7iigijv4018lrlx";
-      system = "pngload";
-      asd = "pngload";
-    });
-    systems = [ "pngload" ];
-    lispLibs = [ (getAttr "_3bz" pkgs) (getAttr "alexandria" pkgs) (getAttr "cffi" pkgs) (getAttr "mmap" pkgs) (getAttr "parse-float" pkgs) (getAttr "static-vectors" pkgs) (getAttr "swap-bytes" pkgs) (getAttr "uiop" pkgs) (getAttr "zpb-exif" pkgs) ];
-  };
-  pngload_dot_test = {
-    pname = "pngload.test";
-    version = "20220707-git";
-    asds = [ "pngload.test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/pngload/2022-07-07/pngload-20220707-git.tgz";
-      sha256 = "1qnd2pz6ckdm5nnf4ipli3zgiyisfqjyf1aiy7iigijv4018lrlx";
-      system = "pngload.test";
-      asd = "pngload.test";
-    });
-    systems = [ "pngload.test" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "local-time" pkgs) (getAttr "opticl" pkgs) (getAttr "png-read" pkgs) (getAttr "pngload" pkgs) (getAttr "uiop" pkgs) ];
-  };
-  poler = {
-    pname = "poler";
-    version = "20181210-git";
-    asds = [ "poler" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/poler/2018-12-10/poler-20181210-git.tgz";
-      sha256 = "1lcyjxmz5vm5is1kgxqjvpkllywvbsj6wqx5v2ac0py5vqws1l8z";
-      system = "poler";
-      asd = "poler";
-    });
-    systems = [ "poler" ];
-    lispLibs = [  ];
-  };
-  poler-test = {
-    pname = "poler-test";
-    version = "20181210-git";
-    asds = [ "poler-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/poler/2018-12-10/poler-20181210-git.tgz";
-      sha256 = "1lcyjxmz5vm5is1kgxqjvpkllywvbsj6wqx5v2ac0py5vqws1l8z";
-      system = "poler-test";
-      asd = "poler-test";
-    });
-    systems = [ "poler-test" ];
-    lispLibs = [ (getAttr "poler" pkgs) (getAttr "prove" pkgs) (getAttr "prove-asdf" pkgs) ];
-  };
-  policy-cond = {
-    pname = "policy-cond";
-    version = "20200427-git";
-    asds = [ "policy-cond" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/policy-cond/2020-04-27/policy-cond-20200427-git.tgz";
-      sha256 = "0xj2a6lcg7i7g4038sc4f641din6m8vdiha8c5afz9fik80bshxk";
-      system = "policy-cond";
-      asd = "policy-cond";
-    });
-    systems = [ "policy-cond" ];
-    lispLibs = [  ];
-  };
-  polisher = {
-    pname = "polisher";
-    version = "20211230-git";
-    asds = [ "polisher" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/polisher/2021-12-30/polisher-20211230-git.tgz";
-      sha256 = "1i63kgk4vfisiyrfqdz0wc8ldvfh9jpkivsasgdhc97cad095ln0";
-      system = "polisher";
-      asd = "polisher";
-    });
-    systems = [ "polisher" ];
-    lispLibs = [ (getAttr "cl-ppcre" pkgs) ];
-  };
-  polisher_dot_test = {
-    pname = "polisher.test";
-    version = "20211230-git";
-    asds = [ "polisher.test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/polisher/2021-12-30/polisher-20211230-git.tgz";
-      sha256 = "1i63kgk4vfisiyrfqdz0wc8ldvfh9jpkivsasgdhc97cad095ln0";
-      system = "polisher.test";
-      asd = "polisher.test";
-    });
-    systems = [ "polisher.test" ];
-    lispLibs = [ (getAttr "_1am" pkgs) (getAttr "polisher" pkgs) ];
-  };
-  polymorphic-functions = {
-    pname = "polymorphic-functions";
-    version = "20221106-git";
-    asds = [ "polymorphic-functions" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/polymorphic-functions/2022-11-06/polymorphic-functions-20221106-git.tgz";
-      sha256 = "04bb7iiwq16hkn78r2qrfqwxldqrkdspfdfyvymcbp9w5jy67nlw";
-      system = "polymorphic-functions";
-      asd = "polymorphic-functions";
-    });
-    systems = [ "polymorphic-functions" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cl-form-types" pkgs) (getAttr "closer-mop" pkgs) (getAttr "compiler-macro-notes" pkgs) (getAttr "ctype" pkgs) (getAttr "fiveam" pkgs) (getAttr "introspect-environment" pkgs) (getAttr "optima" pkgs) (getAttr "split-sequence" pkgs) (getAttr "trivial-garbage" pkgs) ];
-  };
-  polymorphic-functions_slash_swank = {
-    pname = "polymorphic-functions_swank";
-    version = "20221106-git";
-    asds = [ "polymorphic-functions" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/polymorphic-functions/2022-11-06/polymorphic-functions-20221106-git.tgz";
-      sha256 = "04bb7iiwq16hkn78r2qrfqwxldqrkdspfdfyvymcbp9w5jy67nlw";
-      system = "polymorphic-functions";
-      asd = "polymorphic-functions";
-    });
-    systems = [ "polymorphic-functions/swank" ];
-    lispLibs = [ (getAttr "polymorphic-functions" pkgs) (getAttr "swank" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  pooler = {
-    pname = "pooler";
-    version = "20150608-git";
-    asds = [ "pooler" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/pooler/2015-06-08/pooler-20150608-git.tgz";
-      sha256 = "18vdl06cckk07m7r477qzcz24j3sid1agfa69fp91jna5aqi46kb";
-      system = "pooler";
-      asd = "pooler";
-    });
-    systems = [ "pooler" ];
-    lispLibs = [  ];
-  };
-  portable-condition-system = {
-    pname = "portable-condition-system";
-    version = "20210807-git";
-    asds = [ "portable-condition-system" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/portable-condition-system/2021-08-07/portable-condition-system-20210807-git.tgz";
-      sha256 = "099lb9f4bavj95wik99wla5rf6fk1gdw9pvn0cqlaf0wf20csd3h";
-      system = "portable-condition-system";
-      asd = "portable-condition-system";
-    });
-    systems = [ "portable-condition-system" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "split-sequence" pkgs) ];
-  };
-  portable-condition-system_dot_integration = {
-    pname = "portable-condition-system.integration";
-    version = "20210807-git";
-    asds = [ "portable-condition-system.integration" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/portable-condition-system/2021-08-07/portable-condition-system-20210807-git.tgz";
-      sha256 = "099lb9f4bavj95wik99wla5rf6fk1gdw9pvn0cqlaf0wf20csd3h";
-      system = "portable-condition-system.integration";
-      asd = "portable-condition-system.integration";
-    });
-    systems = [ "portable-condition-system.integration" ];
-    lispLibs = [ (getAttr "portable-condition-system" pkgs) (getAttr "trivial-custom-debugger" pkgs) ];
-  };
-  portable-condition-system_dot_integration_slash_test = {
-    pname = "portable-condition-system.integration_test";
-    version = "20210807-git";
-    asds = [ "portable-condition-system.integration" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/portable-condition-system/2021-08-07/portable-condition-system-20210807-git.tgz";
-      sha256 = "099lb9f4bavj95wik99wla5rf6fk1gdw9pvn0cqlaf0wf20csd3h";
-      system = "portable-condition-system.integration";
-      asd = "portable-condition-system.integration";
-    });
-    systems = [ "portable-condition-system.integration/test" ];
-    lispLibs = [ (getAttr "portable-condition-system_dot_integration" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  portable-condition-system_slash_test = {
-    pname = "portable-condition-system_test";
-    version = "20210807-git";
-    asds = [ "portable-condition-system" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/portable-condition-system/2021-08-07/portable-condition-system-20210807-git.tgz";
-      sha256 = "099lb9f4bavj95wik99wla5rf6fk1gdw9pvn0cqlaf0wf20csd3h";
-      system = "portable-condition-system";
-      asd = "portable-condition-system";
-    });
-    systems = [ "portable-condition-system/test" ];
-    lispLibs = [ (getAttr "portable-condition-system" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  portable-threads = {
-    pname = "portable-threads";
-    version = "20210531-git";
-    asds = [ "portable-threads" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/portable-threads/2021-05-31/portable-threads-20210531-git.tgz";
-      sha256 = "05y00mlvwlfas4jj50qas2v2rxa0hyc9834lpnbh61a3g8sz0d1f";
-      system = "portable-threads";
-      asd = "portable-threads";
-    });
-    systems = [ "portable-threads" ];
-    lispLibs = [  ];
-  };
-  portable-threads_slash_test = {
-    pname = "portable-threads_test";
-    version = "20210531-git";
-    asds = [ "portable-threads" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/portable-threads/2021-05-31/portable-threads-20210531-git.tgz";
-      sha256 = "05y00mlvwlfas4jj50qas2v2rxa0hyc9834lpnbh61a3g8sz0d1f";
-      system = "portable-threads";
-      asd = "portable-threads";
-    });
-    systems = [ "portable-threads/test" ];
-    lispLibs = [ (getAttr "portable-threads" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  portal = {
-    pname = "portal";
-    version = "20211209-git";
-    asds = [ "portal" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/portal/2021-12-09/portal-20211209-git.tgz";
-      sha256 = "1012jc068qdd8df6mmbn8vmmqlniqm5j2jbyrraw3yz8c13c8280";
-      system = "portal";
-      asd = "portal";
-    });
-    systems = [ "portal" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "arrows" pkgs) (getAttr "cl-base64" pkgs) (getAttr "str" pkgs) (getAttr "flexi-streams" pkgs) (getAttr "global-vars" pkgs) (getAttr "ironclad" pkgs) (getAttr "parse-float" pkgs) (getAttr "usocket-server" pkgs) ];
-  };
-  portmanteau = {
-    pname = "portmanteau";
-    version = "20181018-git";
-    asds = [ "portmanteau" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-portmanteau/2018-10-18/cl-portmanteau-20181018-git.tgz";
-      sha256 = "0430yixy722zkiljc6kh68hx2pyf2pbylgyp7n4qnnky86c0z0ip";
-      system = "portmanteau";
-      asd = "portmanteau";
-    });
-    systems = [ "portmanteau" ];
-    lispLibs = [ (getAttr "vom" pkgs) ];
-  };
-  portmanteau-tests = {
-    pname = "portmanteau-tests";
-    version = "20181018-git";
-    asds = [ "portmanteau-tests" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-portmanteau/2018-10-18/cl-portmanteau-20181018-git.tgz";
-      sha256 = "0430yixy722zkiljc6kh68hx2pyf2pbylgyp7n4qnnky86c0z0ip";
-      system = "portmanteau-tests";
-      asd = "portmanteau-tests";
-    });
-    systems = [ "portmanteau-tests" ];
-    lispLibs = [ (getAttr "portmanteau" pkgs) (getAttr "fiveam" pkgs) ];
-  };
-  positional-lambda = {
-    pname = "positional-lambda";
-    version = "2.0";
-    asds = [ "positional-lambda" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/positional-lambda/2012-10-13/positional-lambda-2.0.tgz";
-      sha256 = "00jbr42czv7piza5sm5hmmls7xnhq1pnzl09j6c28xrknr61cj8r";
-      system = "positional-lambda";
-      asd = "positional-lambda";
-    });
-    systems = [ "positional-lambda" ];
-    lispLibs = [ (getAttr "map-bind" pkgs) ];
-  };
-  posix-shm = {
-    pname = "posix-shm";
-    version = "20221106-git";
-    asds = [ "posix-shm" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/posix-shm/2022-11-06/posix-shm-20221106-git.tgz";
-      sha256 = "057qm9db502a86q60rsp5g7f8n4a997iwsfcid41gqadyd9rcjjz";
-      system = "posix-shm";
-      asd = "posix-shm";
-    });
-    systems = [ "posix-shm" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cffi" pkgs) (getAttr "cffi-grovel" pkgs) ];
-  };
-  posix-shm_slash_ffi = {
-    pname = "posix-shm_ffi";
-    version = "20221106-git";
-    asds = [ "posix-shm" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/posix-shm/2022-11-06/posix-shm-20221106-git.tgz";
-      sha256 = "057qm9db502a86q60rsp5g7f8n4a997iwsfcid41gqadyd9rcjjz";
-      system = "posix-shm";
-      asd = "posix-shm";
-    });
-    systems = [ "posix-shm/ffi" ];
-    lispLibs = [ (getAttr "cffi" pkgs) (getAttr "cffi-grovel" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  posix-shm_slash_test = {
-    pname = "posix-shm_test";
-    version = "20221106-git";
-    asds = [ "posix-shm" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/posix-shm/2022-11-06/posix-shm-20221106-git.tgz";
-      sha256 = "057qm9db502a86q60rsp5g7f8n4a997iwsfcid41gqadyd9rcjjz";
-      system = "posix-shm";
-      asd = "posix-shm";
-    });
-    systems = [ "posix-shm/test" ];
-    lispLibs = [ (getAttr "osicat" pkgs) (getAttr "parachute" pkgs) (getAttr "posix-shm" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  postmodern = {
-    pname = "postmodern";
-    version = "20221106-git";
-    asds = [ "postmodern" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/postmodern/2022-11-06/postmodern-20221106-git.tgz";
-      sha256 = "012ipwi4m5x6jhl7pd9gwvdga5hgp1l08vqdgd28rzy34s2mfv74";
-      system = "postmodern";
-      asd = "postmodern";
-    });
-    systems = [ "postmodern" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "bordeaux-threads" pkgs) (getAttr "closer-mop" pkgs) (getAttr "global-vars" pkgs) (getAttr "cl-postgres" pkgs) (getAttr "s-sql" pkgs) (getAttr "split-sequence" pkgs) (getAttr "uiop" pkgs) ];
-  };
-  postmodern-localtime = {
-    pname = "postmodern-localtime";
-    version = "20200610-git";
-    asds = [ "postmodern-localtime" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/postmodern-localtime/2020-06-10/postmodern-localtime-20200610-git.tgz";
-      sha256 = "0kiswbdr3vsl7xfs43h0w9c2s6fm6ammff6mpab6zba7rdmfg6d3";
-      system = "postmodern-localtime";
-      asd = "postmodern-localtime";
-    });
-    systems = [ "postmodern-localtime" ];
-    lispLibs = [ (getAttr "local-time" pkgs) (getAttr "cl-postgres" pkgs) (getAttr "postmodern" pkgs) ];
-  };
-  postmodern_slash_tests = {
-    pname = "postmodern_tests";
-    version = "20221106-git";
-    asds = [ "postmodern" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/postmodern/2022-11-06/postmodern-20221106-git.tgz";
-      sha256 = "012ipwi4m5x6jhl7pd9gwvdga5hgp1l08vqdgd28rzy34s2mfv74";
-      system = "postmodern";
-      asd = "postmodern";
-    });
-    systems = [ "postmodern/tests" ];
-    lispLibs = [ (getAttr "fiveam" pkgs) (getAttr "cl-postgres_plus_local-time" pkgs) (getAttr "local-time" pkgs) (getAttr "cl-postgres" pkgs) (getAttr "postmodern" pkgs) (getAttr "s-sql" pkgs) (getAttr "simple-date" pkgs) (getAttr "uiop" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  postmodernity = {
-    pname = "postmodernity";
-    version = "20170124-git";
-    asds = [ "postmodernity" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/postmodernity/2017-01-24/postmodernity-20170124-git.tgz";
-      sha256 = "06mwlp79dgzsgfhgbhvqk4691nm52v3lqm99y72dm7pm4gmc2m9m";
-      system = "postmodernity";
-      asd = "postmodernity";
-    });
-    systems = [ "postmodernity" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "postmodern" pkgs) ];
-  };
-  postoffice = {
-    pname = "postoffice";
-    version = "20120909-git";
-    asds = [ "postoffice" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/postoffice/2012-09-09/postoffice-20120909-git.tgz";
-      sha256 = "041k8nc969xyjdmbn6348pra3v5jb1sw4mrnxmamv0flngyv12fg";
-      system = "postoffice";
-      asd = "postoffice";
-    });
-    systems = [ "postoffice" ];
-    lispLibs = [ (getAttr "acl-compat" pkgs) ];
-  };
-  pounds = {
-    pname = "pounds";
-    version = "20160208-git";
-    asds = [ "pounds" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/pounds/2016-02-08/pounds-20160208-git.tgz";
-      sha256 = "17hz0ywzfirmlwkrd9zrbl07ihhm03zhzqrz3rkmh1j9v95sy2kl";
-      system = "pounds";
-      asd = "pounds";
-    });
-    systems = [ "pounds" ];
-    lispLibs = [ (getAttr "babel" pkgs) (getAttr "bordeaux-threads" pkgs) (getAttr "cffi" pkgs) (getAttr "nibbles" pkgs) (getAttr "trivial-gray-streams" pkgs) ];
-  };
-  pp-toml = {
-    pname = "pp-toml";
-    version = "20221106-git";
-    asds = [ "pp-toml" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/pp-toml/2022-11-06/pp-toml-20221106-git.tgz";
-      sha256 = "136d7jzz7l2ck9wwld0ac46jmpm94lvja6m50sy73s232slka2hg";
-      system = "pp-toml";
-      asd = "pp-toml";
-    });
-    systems = [ "pp-toml" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cl-ppcre" pkgs) (getAttr "esrap" pkgs) (getAttr "generic-comparability" pkgs) (getAttr "local-time" pkgs) (getAttr "parse-number" pkgs) (getAttr "split-sequence" pkgs) ];
-  };
-  pp-toml-tests = {
-    pname = "pp-toml-tests";
-    version = "20221106-git";
-    asds = [ "pp-toml-tests" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/pp-toml/2022-11-06/pp-toml-20221106-git.tgz";
-      sha256 = "136d7jzz7l2ck9wwld0ac46jmpm94lvja6m50sy73s232slka2hg";
-      system = "pp-toml-tests";
-      asd = "pp-toml-tests";
-    });
-    systems = [ "pp-toml-tests" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cl-ppcre" pkgs) (getAttr "esrap" pkgs) (getAttr "fiveam" pkgs) (getAttr "generic-comparability" pkgs) (getAttr "local-time" pkgs) (getAttr "parse-number" pkgs) (getAttr "pp-toml" pkgs) (getAttr "split-sequence" pkgs) ];
-  };
-  ppath = {
-    pname = "ppath";
-    version = "20180711-git";
-    asds = [ "ppath" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/ppath/2018-07-11/ppath-20180711-git.tgz";
-      sha256 = "1c46q9lmzqv14z80d3fwdawgn3pn4922x31fyqvsvbcjm4hd16fb";
-      system = "ppath";
-      asd = "ppath";
-    });
-    systems = [ "ppath" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cffi" pkgs) (getAttr "cl-ppcre" pkgs) (getAttr "osicat" pkgs) (getAttr "split-sequence" pkgs) (getAttr "trivial-features" pkgs) (getAttr "uiop" pkgs) ];
-  };
-  ppath-test = {
-    pname = "ppath-test";
-    version = "20180711-git";
-    asds = [ "ppath-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/ppath/2018-07-11/ppath-20180711-git.tgz";
-      sha256 = "1c46q9lmzqv14z80d3fwdawgn3pn4922x31fyqvsvbcjm4hd16fb";
-      system = "ppath-test";
-      asd = "ppath-test";
-    });
-    systems = [ "ppath-test" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cl-fad" pkgs) (getAttr "ppath" pkgs) (getAttr "prove" pkgs) (getAttr "prove-asdf" pkgs) ];
-  };
-  practical-cl = {
-    pname = "practical-cl";
-    version = "20180430-git";
-    asds = [ "practical-cl" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/practical-cl/2018-04-30/practical-cl-20180430-git.tgz";
-      sha256 = "0bjwnnxkqw0cf2p1fyx9ihy6hgsxhljm4bns2blvgv63s3j1znd9";
-      system = "practical-cl";
-      asd = "practical-cl";
-    });
-    systems = [ "practical-cl" ];
-    lispLibs = [ (getAttr "pcl-binary-data" pkgs) (getAttr "pcl-html" pkgs) (getAttr "pcl-id3v2" pkgs) (getAttr "pcl-macro-utilities" pkgs) (getAttr "pcl-mp3-browser" pkgs) (getAttr "pcl-mp3-database" pkgs) (getAttr "pcl-pathnames" pkgs) (getAttr "pcl-shoutcast" pkgs) (getAttr "pcl-simple-database" pkgs) (getAttr "pcl-spam" pkgs) (getAttr "pcl-test-framework" pkgs) (getAttr "pcl-url-function" pkgs) ];
-  };
-  prbs = {
-    pname = "prbs";
-    version = "20180228-git";
-    asds = [ "prbs" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/prbs/2018-02-28/prbs-20180228-git.tgz";
-      sha256 = "0qbvbmxa66b367z9px4nyxqb21b9w2hr82rw7hfq5aynmwfk3fzi";
-      system = "prbs";
-      asd = "prbs";
-    });
-    systems = [ "prbs" ];
-    lispLibs = [  ];
-  };
-  prbs-docs = {
-    pname = "prbs-docs";
-    version = "20180228-git";
-    asds = [ "prbs-docs" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/prbs/2018-02-28/prbs-20180228-git.tgz";
-      sha256 = "0qbvbmxa66b367z9px4nyxqb21b9w2hr82rw7hfq5aynmwfk3fzi";
-      system = "prbs-docs";
-      asd = "prbs-docs";
-    });
-    systems = [ "prbs-docs" ];
-    lispLibs = [ (getAttr "cl-gendoc" pkgs) (getAttr "prbs" pkgs) ];
-  };
-  pretty-function = {
-    pname = "pretty-function";
-    version = "20130615-git";
-    asds = [ "pretty-function" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/pretty-function/2013-06-15/pretty-function-20130615-git.tgz";
-      sha256 = "1hzfjwsp6r5nki6h8kry8k2bgj19mrp0jbq7jhsz3kz6y4ll0hb5";
-      system = "pretty-function";
-      asd = "pretty-function";
-    });
-    systems = [ "pretty-function" ];
-    lispLibs = [  ];
-  };
-  primecount = {
-    pname = "primecount";
-    version = "20200325-git";
-    asds = [ "primecount" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/primecount/2020-03-25/primecount-20200325-git.tgz";
-      sha256 = "1fw855qp82b887azww7z3yhd2zafaxjnzyff1ldf2wa6mb4f0dj8";
-      system = "primecount";
-      asd = "primecount";
-    });
-    systems = [ "primecount" ];
-    lispLibs = [  ];
-  };
-  print-html = {
-    pname = "print-html";
-    version = "20181018-git";
-    asds = [ "print-html" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/print-html/2018-10-18/print-html-20181018-git.tgz";
-      sha256 = "1ihr2yy6fvli3awrkfn4v8pm41wab5wsj30v84rr75v4p5irqmz8";
-      system = "print-html";
-      asd = "print-html";
-    });
-    systems = [ "print-html" ];
-    lispLibs = [  ];
-  };
-  print-licenses = {
-    pname = "print-licenses";
-    version = "20220707-git";
-    asds = [ "print-licenses" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/print-licenses/2022-07-07/print-licenses-20220707-git.tgz";
-      sha256 = "1rwzsckcb2yzg7yvzg4ypw3352agfxr7h49j8kynvs17zzbi0w07";
-      system = "print-licenses";
-      asd = "print-licenses";
-    });
-    systems = [ "print-licenses" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "iterate" pkgs) ];
-  };
-  printv = {
-    pname = "printv";
-    version = "20211230-git";
-    asds = [ "printv" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/printv/2021-12-30/printv-20211230-git.tgz";
-      sha256 = "07agyzkwp3w2r4d2anrmr8h00yngpr5dq9mjd3m4kzhn1jcmilfb";
-      system = "printv";
-      asd = "printv";
-    });
-    systems = [ "printv" ];
-    lispLibs = [  ];
-  };
-  priority-queue = {
-    pname = "priority-queue";
-    version = "20150709-git";
-    asds = [ "priority-queue" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/priority-queue/2015-07-09/priority-queue-20150709-git.tgz";
-      sha256 = "0y5a1fid8xzzl58hfdj64n8mrzq0kr06a0lnmdjpgi0czc3x0jcy";
-      system = "priority-queue";
-      asd = "priority-queue";
-    });
-    systems = [ "priority-queue" ];
-    lispLibs = [  ];
-  };
-  priority-queue-benchmark = {
-    pname = "priority-queue-benchmark";
-    version = "20221106-git";
-    asds = [ "priority-queue-benchmark" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/damn-fast-priority-queue/2022-11-06/damn-fast-priority-queue-20221106-git.tgz";
-      sha256 = "14917b1z7ag3a7f88p4fk4649iy07kn9vpq6bszdxcp1irnc5a13";
-      system = "priority-queue-benchmark";
-      asd = "priority-queue-benchmark";
-    });
-    systems = [ "priority-queue-benchmark" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "bodge-heap" pkgs) (getAttr "cl-heap" pkgs) (getAttr "damn-fast-priority-queue" pkgs) (getAttr "damn-fast-stable-priority-queue" pkgs) (getAttr "heap" pkgs) (getAttr "minheap" pkgs) (getAttr "pettomato-indexed-priority-queue" pkgs) (getAttr "pileup" pkgs) (getAttr "priority-queue" pkgs) (getAttr "queues_dot_priority-queue" pkgs) (getAttr "trivial-garbage" pkgs) ];
-  };
-  proc-parse = {
-    pname = "proc-parse";
-    version = "20190813-git";
-    asds = [ "proc-parse" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/proc-parse/2019-08-13/proc-parse-20190813-git.tgz";
-      sha256 = "07vbj26bfq4ywlcmamsqyac29rsdsa8lamjqx1ycla1bcvgmi4w2";
-      system = "proc-parse";
-      asd = "proc-parse";
-    });
-    systems = [ "proc-parse" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "babel" pkgs) ];
-  };
-  proc-parse-test = {
-    pname = "proc-parse-test";
-    version = "20190813-git";
-    asds = [ "proc-parse-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/proc-parse/2019-08-13/proc-parse-20190813-git.tgz";
-      sha256 = "07vbj26bfq4ywlcmamsqyac29rsdsa8lamjqx1ycla1bcvgmi4w2";
-      system = "proc-parse-test";
-      asd = "proc-parse-test";
-    });
-    systems = [ "proc-parse-test" ];
-    lispLibs = [ (getAttr "proc-parse" pkgs) (getAttr "prove" pkgs) (getAttr "prove-asdf" pkgs) ];
-  };
-  projectured_dot_document = {
-    pname = "projectured.document";
-    version = "quicklisp-c3a60e76-git";
-    asds = [ "projectured.document" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/projectured/2017-12-27/projectured-quicklisp-c3a60e76-git.tgz";
-      sha256 = "1gbsqaw571xgh2glg4386545b5sqjgbaiqa3x4j1gr70kirbzydn";
-      system = "projectured.document";
-      asd = "projectured.document";
-    });
-    systems = [ "projectured.document" ];
-    lispLibs = [ (getAttr "cl-json" pkgs) (getAttr "hu_dot_dwim_dot_asdf" pkgs) (getAttr "parse-number" pkgs) (getAttr "projectured_dot_editor" pkgs) (getAttr "s-xml" pkgs) ];
-  };
-  projectured_dot_editor = {
-    pname = "projectured.editor";
-    version = "quicklisp-c3a60e76-git";
-    asds = [ "projectured.editor" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/projectured/2017-12-27/projectured-quicklisp-c3a60e76-git.tgz";
-      sha256 = "1gbsqaw571xgh2glg4386545b5sqjgbaiqa3x4j1gr70kirbzydn";
-      system = "projectured.editor";
-      asd = "projectured.editor";
-    });
-    systems = [ "projectured.editor" ];
-    lispLibs = [ (getAttr "hu_dot_dwim_dot_asdf" pkgs) (getAttr "hu_dot_dwim_dot_common" pkgs) (getAttr "hu_dot_dwim_dot_def" pkgs) (getAttr "hu_dot_dwim_dot_defclass-star" pkgs) (getAttr "hu_dot_dwim_dot_logger" pkgs) (getAttr "hu_dot_dwim_dot_serializer" pkgs) (getAttr "hu_dot_dwim_dot_syntax-sugar" pkgs) (getAttr "hu_dot_dwim_dot_util" pkgs) (getAttr "trivial-garbage" pkgs) ];
-  };
-  projectured_dot_executable = {
-    pname = "projectured.executable";
-    version = "quicklisp-c3a60e76-git";
-    asds = [ "projectured.executable" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/projectured/2017-12-27/projectured-quicklisp-c3a60e76-git.tgz";
-      sha256 = "1gbsqaw571xgh2glg4386545b5sqjgbaiqa3x4j1gr70kirbzydn";
-      system = "projectured.executable";
-      asd = "projectured.executable";
-    });
-    systems = [ "projectured.executable" ];
-    lispLibs = [ (getAttr "command-line-arguments" pkgs) (getAttr "hu_dot_dwim_dot_asdf" pkgs) (getAttr "projectured_dot_sdl" pkgs) ];
-  };
-  projectured_dot_projection = {
-    pname = "projectured.projection";
-    version = "quicklisp-c3a60e76-git";
-    asds = [ "projectured.projection" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/projectured/2017-12-27/projectured-quicklisp-c3a60e76-git.tgz";
-      sha256 = "1gbsqaw571xgh2glg4386545b5sqjgbaiqa3x4j1gr70kirbzydn";
-      system = "projectured.projection";
-      asd = "projectured.projection";
-    });
-    systems = [ "projectured.projection" ];
-    lispLibs = [ (getAttr "hu_dot_dwim_dot_asdf" pkgs) (getAttr "projectured_dot_document" pkgs) (getAttr "projectured_dot_editor" pkgs) ];
-  };
-  projectured_dot_sdl = {
-    pname = "projectured.sdl";
-    version = "quicklisp-c3a60e76-git";
-    asds = [ "projectured.sdl" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/projectured/2017-12-27/projectured-quicklisp-c3a60e76-git.tgz";
-      sha256 = "1gbsqaw571xgh2glg4386545b5sqjgbaiqa3x4j1gr70kirbzydn";
-      system = "projectured.sdl";
-      asd = "projectured.sdl";
-    });
-    systems = [ "projectured.sdl" ];
-    lispLibs = [ (getAttr "hu_dot_dwim_dot_asdf" pkgs) (getAttr "hu_dot_dwim_dot_sdl" pkgs) (getAttr "projectured_dot_document" pkgs) (getAttr "projectured_dot_editor" pkgs) (getAttr "projectured_dot_projection" pkgs) ];
-  };
-  projectured_dot_sdl_dot_test = {
-    pname = "projectured.sdl.test";
-    version = "quicklisp-c3a60e76-git";
-    asds = [ "projectured.sdl.test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/projectured/2017-12-27/projectured-quicklisp-c3a60e76-git.tgz";
-      sha256 = "1gbsqaw571xgh2glg4386545b5sqjgbaiqa3x4j1gr70kirbzydn";
-      system = "projectured.sdl.test";
-      asd = "projectured.sdl.test";
-    });
-    systems = [ "projectured.sdl.test" ];
-    lispLibs = [ (getAttr "hu_dot_dwim_dot_asdf" pkgs) (getAttr "projectured_dot_sdl" pkgs) (getAttr "projectured_dot_test" pkgs) ];
-  };
-  projectured_dot_swank = {
-    pname = "projectured.swank";
-    version = "quicklisp-c3a60e76-git";
-    asds = [ "projectured.swank" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/projectured/2017-12-27/projectured-quicklisp-c3a60e76-git.tgz";
-      sha256 = "1gbsqaw571xgh2glg4386545b5sqjgbaiqa3x4j1gr70kirbzydn";
-      system = "projectured.swank";
-      asd = "projectured.swank";
-    });
-    systems = [ "projectured.swank" ];
-    lispLibs = [ (getAttr "hu_dot_dwim_dot_asdf" pkgs) (getAttr "projectured_dot_editor" pkgs) (getAttr "swank" pkgs) ];
-  };
-  projectured_dot_test = {
-    pname = "projectured.test";
-    version = "quicklisp-c3a60e76-git";
-    asds = [ "projectured.test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/projectured/2017-12-27/projectured-quicklisp-c3a60e76-git.tgz";
-      sha256 = "1gbsqaw571xgh2glg4386545b5sqjgbaiqa3x4j1gr70kirbzydn";
-      system = "projectured.test";
-      asd = "projectured.test";
-    });
-    systems = [ "projectured.test" ];
-    lispLibs = [ (getAttr "hu_dot_dwim_dot_asdf" pkgs) (getAttr "hu_dot_dwim_dot_logger" pkgs) (getAttr "hu_dot_dwim_dot_stefil_plus_hu_dot_dwim_dot_def_plus_swank" pkgs) (getAttr "projectured_dot_document" pkgs) (getAttr "projectured_dot_editor" pkgs) (getAttr "projectured_dot_projection" pkgs) (getAttr "projectured_dot_swank" pkgs) ];
-  };
-  prometheus = {
-    pname = "prometheus";
-    version = "20201220-git";
-    asds = [ "prometheus" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/prometheus.cl/2020-12-20/prometheus.cl-20201220-git.tgz";
-      sha256 = "15ab4c7yfm83nmfvaq5kbsqrgx558k292szm9frfda7nlycfnmyp";
-      system = "prometheus";
-      asd = "prometheus";
-    });
-    systems = [ "prometheus" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "bordeaux-threads" pkgs) (getAttr "cl-ppcre" pkgs) (getAttr "local-time" pkgs) (getAttr "quantile-estimator" pkgs) ];
-  };
-  prometheus_dot_collectors_dot_process = {
-    pname = "prometheus.collectors.process";
-    version = "20201220-git";
-    asds = [ "prometheus.collectors.process" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/prometheus.cl/2020-12-20/prometheus.cl-20201220-git.tgz";
-      sha256 = "15ab4c7yfm83nmfvaq5kbsqrgx558k292szm9frfda7nlycfnmyp";
-      system = "prometheus.collectors.process";
-      asd = "prometheus.collectors.process";
-    });
-    systems = [ "prometheus.collectors.process" ];
-    lispLibs = [ (getAttr "cffi" pkgs) (getAttr "cffi-grovel" pkgs) (getAttr "cl-fad" pkgs) (getAttr "prometheus" pkgs) (getAttr "split-sequence" pkgs) ];
-  };
-  prometheus_dot_collectors_dot_process_dot_test = {
-    pname = "prometheus.collectors.process.test";
-    version = "20201220-git";
-    asds = [ "prometheus.collectors.process.test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/prometheus.cl/2020-12-20/prometheus.cl-20201220-git.tgz";
-      sha256 = "15ab4c7yfm83nmfvaq5kbsqrgx558k292szm9frfda7nlycfnmyp";
-      system = "prometheus.collectors.process.test";
-      asd = "prometheus.collectors.process.test";
-    });
-    systems = [ "prometheus.collectors.process.test" ];
-    lispLibs = [ (getAttr "cl-interpol" pkgs) (getAttr "log4cl" pkgs) (getAttr "mw-equiv" pkgs) (getAttr "prometheus_dot_collectors_dot_process" pkgs) (getAttr "prometheus_dot_test_dot_support" pkgs) (getAttr "prove" pkgs) (getAttr "prove-asdf" pkgs) ];
-  };
-  prometheus_dot_collectors_dot_sbcl = {
-    pname = "prometheus.collectors.sbcl";
-    version = "20201220-git";
-    asds = [ "prometheus.collectors.sbcl" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/prometheus.cl/2020-12-20/prometheus.cl-20201220-git.tgz";
-      sha256 = "15ab4c7yfm83nmfvaq5kbsqrgx558k292szm9frfda7nlycfnmyp";
-      system = "prometheus.collectors.sbcl";
-      asd = "prometheus.collectors.sbcl";
-    });
-    systems = [ "prometheus.collectors.sbcl" ];
-    lispLibs = [ (getAttr "prometheus" pkgs) ];
-  };
-  prometheus_dot_collectors_dot_sbcl_dot_test = {
-    pname = "prometheus.collectors.sbcl.test";
-    version = "20201220-git";
-    asds = [ "prometheus.collectors.sbcl.test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/prometheus.cl/2020-12-20/prometheus.cl-20201220-git.tgz";
-      sha256 = "15ab4c7yfm83nmfvaq5kbsqrgx558k292szm9frfda7nlycfnmyp";
-      system = "prometheus.collectors.sbcl.test";
-      asd = "prometheus.collectors.sbcl.test";
-    });
-    systems = [ "prometheus.collectors.sbcl.test" ];
-    lispLibs = [ (getAttr "cl-interpol" pkgs) (getAttr "log4cl" pkgs) (getAttr "mw-equiv" pkgs) (getAttr "prometheus_dot_collectors_dot_sbcl" pkgs) (getAttr "prometheus_dot_test_dot_support" pkgs) (getAttr "prove" pkgs) (getAttr "prove-asdf" pkgs) ];
-  };
-  prometheus_dot_examples = {
-    pname = "prometheus.examples";
-    version = "20201220-git";
-    asds = [ "prometheus.examples" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/prometheus.cl/2020-12-20/prometheus.cl-20201220-git.tgz";
-      sha256 = "15ab4c7yfm83nmfvaq5kbsqrgx558k292szm9frfda7nlycfnmyp";
-      system = "prometheus.examples";
-      asd = "prometheus.examples";
-    });
-    systems = [ "prometheus.examples" ];
-    lispLibs = [ (getAttr "prometheus" pkgs) (getAttr "prometheus_dot_collectors_dot_process" pkgs) (getAttr "prometheus_dot_collectors_dot_sbcl" pkgs) (getAttr "prometheus_dot_exposers_dot_hunchentoot" pkgs) (getAttr "prometheus_dot_formats_dot_text" pkgs) ];
-  };
-  prometheus_dot_exposers_dot_hunchentoot = {
-    pname = "prometheus.exposers.hunchentoot";
-    version = "20201220-git";
-    asds = [ "prometheus.exposers.hunchentoot" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/prometheus.cl/2020-12-20/prometheus.cl-20201220-git.tgz";
-      sha256 = "15ab4c7yfm83nmfvaq5kbsqrgx558k292szm9frfda7nlycfnmyp";
-      system = "prometheus.exposers.hunchentoot";
-      asd = "prometheus.exposers.hunchentoot";
-    });
-    systems = [ "prometheus.exposers.hunchentoot" ];
-    lispLibs = [ (getAttr "hunchentoot" pkgs) (getAttr "prometheus" pkgs) (getAttr "prometheus_dot_formats_dot_text" pkgs) (getAttr "salza2" pkgs) (getAttr "trivial-utf-8" pkgs) ];
-  };
-  prometheus_dot_exposers_dot_hunchentoot_dot_test = {
-    pname = "prometheus.exposers.hunchentoot.test";
-    version = "20201220-git";
-    asds = [ "prometheus.exposers.hunchentoot.test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/prometheus.cl/2020-12-20/prometheus.cl-20201220-git.tgz";
-      sha256 = "15ab4c7yfm83nmfvaq5kbsqrgx558k292szm9frfda7nlycfnmyp";
-      system = "prometheus.exposers.hunchentoot.test";
-      asd = "prometheus.exposers.hunchentoot.test";
-    });
-    systems = [ "prometheus.exposers.hunchentoot.test" ];
-    lispLibs = [ (getAttr "chipz" pkgs) (getAttr "cl-interpol" pkgs) (getAttr "drakma" pkgs) (getAttr "log4cl" pkgs) (getAttr "mw-equiv" pkgs) (getAttr "prometheus_dot_exposers_dot_hunchentoot" pkgs) (getAttr "prometheus_dot_formats_dot_text" pkgs) (getAttr "prometheus_dot_test_dot_support" pkgs) (getAttr "prove" pkgs) (getAttr "prove-asdf" pkgs) ];
-  };
-  prometheus_dot_formats_dot_text = {
-    pname = "prometheus.formats.text";
-    version = "20201220-git";
-    asds = [ "prometheus.formats.text" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/prometheus.cl/2020-12-20/prometheus.cl-20201220-git.tgz";
-      sha256 = "15ab4c7yfm83nmfvaq5kbsqrgx558k292szm9frfda7nlycfnmyp";
-      system = "prometheus.formats.text";
-      asd = "prometheus.formats.text";
-    });
-    systems = [ "prometheus.formats.text" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "prometheus" pkgs) ];
-  };
-  prometheus_dot_formats_dot_text_dot_test = {
-    pname = "prometheus.formats.text.test";
-    version = "20201220-git";
-    asds = [ "prometheus.formats.text.test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/prometheus.cl/2020-12-20/prometheus.cl-20201220-git.tgz";
-      sha256 = "15ab4c7yfm83nmfvaq5kbsqrgx558k292szm9frfda7nlycfnmyp";
-      system = "prometheus.formats.text.test";
-      asd = "prometheus.formats.text.test";
-    });
-    systems = [ "prometheus.formats.text.test" ];
-    lispLibs = [ (getAttr "cl-interpol" pkgs) (getAttr "log4cl" pkgs) (getAttr "mw-equiv" pkgs) (getAttr "prometheus_dot_formats_dot_text" pkgs) (getAttr "prometheus_dot_test_dot_support" pkgs) (getAttr "prove" pkgs) (getAttr "prove-asdf" pkgs) ];
-  };
-  prometheus_dot_pushgateway = {
-    pname = "prometheus.pushgateway";
-    version = "20201220-git";
-    asds = [ "prometheus.pushgateway" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/prometheus.cl/2020-12-20/prometheus.cl-20201220-git.tgz";
-      sha256 = "15ab4c7yfm83nmfvaq5kbsqrgx558k292szm9frfda7nlycfnmyp";
-      system = "prometheus.pushgateway";
-      asd = "prometheus.pushgateway";
-    });
-    systems = [ "prometheus.pushgateway" ];
-    lispLibs = [ (getAttr "drakma" pkgs) (getAttr "prometheus" pkgs) (getAttr "prometheus_dot_formats_dot_text" pkgs) ];
-  };
-  prometheus_dot_pushgateway_dot_test = {
-    pname = "prometheus.pushgateway.test";
-    version = "20201220-git";
-    asds = [ "prometheus.pushgateway.test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/prometheus.cl/2020-12-20/prometheus.cl-20201220-git.tgz";
-      sha256 = "15ab4c7yfm83nmfvaq5kbsqrgx558k292szm9frfda7nlycfnmyp";
-      system = "prometheus.pushgateway.test";
-      asd = "prometheus.pushgateway.test";
-    });
-    systems = [ "prometheus.pushgateway.test" ];
-    lispLibs = [ (getAttr "cl-interpol" pkgs) (getAttr "hunchentoot" pkgs) (getAttr "log4cl" pkgs) (getAttr "mw-equiv" pkgs) (getAttr "prometheus_dot_pushgateway" pkgs) (getAttr "prometheus_dot_test_dot_support" pkgs) (getAttr "prove" pkgs) (getAttr "prove-asdf" pkgs) ];
-  };
-  prometheus_dot_test = {
-    pname = "prometheus.test";
-    version = "20201220-git";
-    asds = [ "prometheus.test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/prometheus.cl/2020-12-20/prometheus.cl-20201220-git.tgz";
-      sha256 = "15ab4c7yfm83nmfvaq5kbsqrgx558k292szm9frfda7nlycfnmyp";
-      system = "prometheus.test";
-      asd = "prometheus.test";
-    });
-    systems = [ "prometheus.test" ];
-    lispLibs = [ (getAttr "cl-interpol" pkgs) (getAttr "log4cl" pkgs) (getAttr "mw-equiv" pkgs) (getAttr "prometheus" pkgs) (getAttr "prometheus_dot_test_dot_support" pkgs) (getAttr "prove" pkgs) (getAttr "prove-asdf" pkgs) ];
-  };
-  prometheus_dot_test_dot_all = {
-    pname = "prometheus.test.all";
-    version = "20201220-git";
-    asds = [ "prometheus.test.all" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/prometheus.cl/2020-12-20/prometheus.cl-20201220-git.tgz";
-      sha256 = "15ab4c7yfm83nmfvaq5kbsqrgx558k292szm9frfda7nlycfnmyp";
-      system = "prometheus.test.all";
-      asd = "prometheus.test.all";
-    });
-    systems = [ "prometheus.test.all" ];
-    lispLibs = [ (getAttr "cl-coveralls" pkgs) (getAttr "prometheus_dot_collectors_dot_process_dot_test" pkgs) (getAttr "prometheus_dot_collectors_dot_sbcl_dot_test" pkgs) (getAttr "prometheus_dot_exposers_dot_hunchentoot_dot_test" pkgs) (getAttr "prometheus_dot_formats_dot_text_dot_test" pkgs) (getAttr "prometheus_dot_pushgateway_dot_test" pkgs) (getAttr "prometheus_dot_test" pkgs) (getAttr "prove-asdf" pkgs) ];
-  };
-  prometheus_dot_test_dot_support = {
-    pname = "prometheus.test.support";
-    version = "20201220-git";
-    asds = [ "prometheus.test.support" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/prometheus.cl/2020-12-20/prometheus.cl-20201220-git.tgz";
-      sha256 = "15ab4c7yfm83nmfvaq5kbsqrgx558k292szm9frfda7nlycfnmyp";
-      system = "prometheus.test.support";
-      asd = "prometheus.test.support";
-    });
-    systems = [ "prometheus.test.support" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "prometheus" pkgs) (getAttr "prove" pkgs) (getAttr "prove-asdf" pkgs) ];
-  };
-  promise = {
-    pname = "promise";
-    version = "20211230-git";
-    asds = [ "promise" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/promise/2021-12-30/promise-20211230-git.tgz";
-      sha256 = "1wzp4pda8nddvnh1isnr8z0q3czjghy0dhhd15690ph69jyjb22s";
-      system = "promise";
-      asd = "promise";
-    });
-    systems = [ "promise" ];
-    lispLibs = [ (getAttr "documentation-utils" pkgs) ];
-  };
-  promise-test = {
-    pname = "promise-test";
-    version = "20211230-git";
-    asds = [ "promise-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/promise/2021-12-30/promise-20211230-git.tgz";
-      sha256 = "1wzp4pda8nddvnh1isnr8z0q3czjghy0dhhd15690ph69jyjb22s";
-      system = "promise-test";
-      asd = "promise-test";
-    });
-    systems = [ "promise-test" ];
-    lispLibs = [ (getAttr "parachute" pkgs) (getAttr "promise" pkgs) ];
-  };
-  prompt-for = {
-    pname = "prompt-for";
-    version = "20220707-git";
-    asds = [ "prompt-for" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/prompt-for/2022-07-07/prompt-for-20220707-git.tgz";
-      sha256 = "1zjc96ryyzsr5519s7yji40askqyymjrbdwx3r2r7bv146siqs5m";
-      system = "prompt-for";
-      asd = "prompt-for";
-    });
-    systems = [ "prompt-for" ];
-    lispLibs = [ (getAttr "uiop" pkgs) ];
-  };
-  prompt-for_dot_test = {
-    pname = "prompt-for.test";
-    version = "20220707-git";
-    asds = [ "prompt-for.test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/prompt-for/2022-07-07/prompt-for-20220707-git.tgz";
-      sha256 = "1zjc96ryyzsr5519s7yji40askqyymjrbdwx3r2r7bv146siqs5m";
-      system = "prompt-for.test";
-      asd = "prompt-for.test";
-    });
-    systems = [ "prompt-for.test" ];
-    lispLibs = [ (getAttr "jingoh" pkgs) (getAttr "prompt-for" pkgs) ];
-  };
-  protest = {
-    pname = "protest";
-    version = "20201220-git";
-    asds = [ "protest" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/protest/2020-12-20/protest-20201220-git.tgz";
-      sha256 = "0q7vk7ji4mjd0xfp18sim5daqzgb3k7mmbm93vvwz18bdwy6cj9h";
-      system = "protest";
-      asd = "protest";
-    });
-    systems = [ "protest" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "closer-mop" pkgs) (getAttr "moptilities" pkgs) (getAttr "trivial-garbage" pkgs) ];
-  };
-  protest_slash_1am = {
-    pname = "protest_1am";
-    version = "20201220-git";
-    asds = [ "protest" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/protest/2020-12-20/protest-20201220-git.tgz";
-      sha256 = "0q7vk7ji4mjd0xfp18sim5daqzgb3k7mmbm93vvwz18bdwy6cj9h";
-      system = "protest";
-      asd = "protest";
-    });
-    systems = [ "protest/1am" ];
-    lispLibs = [ (getAttr "_1am" pkgs) (getAttr "alexandria" pkgs) (getAttr "closer-mop" pkgs) (getAttr "named-readtables" pkgs) (getAttr "trivial-garbage" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  protest_slash_base = {
-    pname = "protest_base";
-    version = "20201220-git";
-    asds = [ "protest" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/protest/2020-12-20/protest-20201220-git.tgz";
-      sha256 = "0q7vk7ji4mjd0xfp18sim5daqzgb3k7mmbm93vvwz18bdwy6cj9h";
-      system = "protest";
-      asd = "protest";
-    });
-    systems = [ "protest/base" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "closer-mop" pkgs) (getAttr "trivial-garbage" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  protest_slash_common = {
-    pname = "protest_common";
-    version = "20201220-git";
-    asds = [ "protest" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/protest/2020-12-20/protest-20201220-git.tgz";
-      sha256 = "0q7vk7ji4mjd0xfp18sim5daqzgb3k7mmbm93vvwz18bdwy6cj9h";
-      system = "protest";
-      asd = "protest";
-    });
-    systems = [ "protest/common" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "closer-mop" pkgs) (getAttr "moptilities" pkgs) (getAttr "trivial-garbage" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  protest_slash_common_slash_addressed = {
-    pname = "protest_common_addressed";
-    version = "20201220-git";
-    asds = [ "protest" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/protest/2020-12-20/protest-20201220-git.tgz";
-      sha256 = "0q7vk7ji4mjd0xfp18sim5daqzgb3k7mmbm93vvwz18bdwy6cj9h";
-      system = "protest";
-      asd = "protest";
-    });
-    systems = [ "protest/common/addressed" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "closer-mop" pkgs) (getAttr "moptilities" pkgs) (getAttr "trivial-garbage" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  protest_slash_common_slash_date = {
-    pname = "protest_common_date";
-    version = "20201220-git";
-    asds = [ "protest" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/protest/2020-12-20/protest-20201220-git.tgz";
-      sha256 = "0q7vk7ji4mjd0xfp18sim5daqzgb3k7mmbm93vvwz18bdwy6cj9h";
-      system = "protest";
-      asd = "protest";
-    });
-    systems = [ "protest/common/date" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "closer-mop" pkgs) (getAttr "moptilities" pkgs) (getAttr "trivial-garbage" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  protest_slash_common_slash_handling = {
-    pname = "protest_common_handling";
-    version = "20201220-git";
-    asds = [ "protest" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/protest/2020-12-20/protest-20201220-git.tgz";
-      sha256 = "0q7vk7ji4mjd0xfp18sim5daqzgb3k7mmbm93vvwz18bdwy6cj9h";
-      system = "protest";
-      asd = "protest";
-    });
-    systems = [ "protest/common/handling" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "closer-mop" pkgs) (getAttr "moptilities" pkgs) (getAttr "trivial-garbage" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  protest_slash_common_slash_killable = {
-    pname = "protest_common_killable";
-    version = "20201220-git";
-    asds = [ "protest" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/protest/2020-12-20/protest-20201220-git.tgz";
-      sha256 = "0q7vk7ji4mjd0xfp18sim5daqzgb3k7mmbm93vvwz18bdwy6cj9h";
-      system = "protest";
-      asd = "protest";
-    });
-    systems = [ "protest/common/killable" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "closer-mop" pkgs) (getAttr "moptilities" pkgs) (getAttr "trivial-garbage" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  protest_slash_common_slash_named = {
-    pname = "protest_common_named";
-    version = "20201220-git";
-    asds = [ "protest" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/protest/2020-12-20/protest-20201220-git.tgz";
-      sha256 = "0q7vk7ji4mjd0xfp18sim5daqzgb3k7mmbm93vvwz18bdwy6cj9h";
-      system = "protest";
-      asd = "protest";
-    });
-    systems = [ "protest/common/named" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "closer-mop" pkgs) (getAttr "moptilities" pkgs) (getAttr "trivial-garbage" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  protest_slash_ftype = {
-    pname = "protest_ftype";
-    version = "20201220-git";
-    asds = [ "protest" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/protest/2020-12-20/protest-20201220-git.tgz";
-      sha256 = "0q7vk7ji4mjd0xfp18sim5daqzgb3k7mmbm93vvwz18bdwy6cj9h";
-      system = "protest";
-      asd = "protest";
-    });
-    systems = [ "protest/ftype" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  protest_slash_parachute = {
-    pname = "protest_parachute";
-    version = "20201220-git";
-    asds = [ "protest" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/protest/2020-12-20/protest-20201220-git.tgz";
-      sha256 = "0q7vk7ji4mjd0xfp18sim5daqzgb3k7mmbm93vvwz18bdwy6cj9h";
-      system = "protest";
-      asd = "protest";
-    });
-    systems = [ "protest/parachute" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "closer-mop" pkgs) (getAttr "named-readtables" pkgs) (getAttr "parachute" pkgs) (getAttr "trivial-garbage" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  protest_slash_protocol = {
-    pname = "protest_protocol";
-    version = "20201220-git";
-    asds = [ "protest" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/protest/2020-12-20/protest-20201220-git.tgz";
-      sha256 = "0q7vk7ji4mjd0xfp18sim5daqzgb3k7mmbm93vvwz18bdwy6cj9h";
-      system = "protest";
-      asd = "protest";
-    });
-    systems = [ "protest/protocol" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "closer-mop" pkgs) (getAttr "moptilities" pkgs) (getAttr "trivial-garbage" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  protest_slash_test = {
-    pname = "protest_test";
-    version = "20201220-git";
-    asds = [ "protest" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/protest/2020-12-20/protest-20201220-git.tgz";
-      sha256 = "0q7vk7ji4mjd0xfp18sim5daqzgb3k7mmbm93vvwz18bdwy6cj9h";
-      system = "protest";
-      asd = "protest";
-    });
-    systems = [ "protest/test" ];
-    lispLibs = [ (getAttr "_1am" pkgs) (getAttr "alexandria" pkgs) (getAttr "closer-mop" pkgs) (getAttr "named-readtables" pkgs) (getAttr "protest" pkgs) (getAttr "trivial-garbage" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  protest_slash_test-case = {
-    pname = "protest_test-case";
-    version = "20201220-git";
-    asds = [ "protest" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/protest/2020-12-20/protest-20201220-git.tgz";
-      sha256 = "0q7vk7ji4mjd0xfp18sim5daqzgb3k7mmbm93vvwz18bdwy6cj9h";
-      system = "protest";
-      asd = "protest";
-    });
-    systems = [ "protest/test-case" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "closer-mop" pkgs) (getAttr "trivial-garbage" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  proto = {
-    pname = "proto";
-    version = "quicklisp-dd18337d-git";
-    asds = [ "proto" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/gtirb/2021-10-20/gtirb-quicklisp-dd18337d-git.tgz";
-      sha256 = "0dpchsshnlh3jb9rg1zdf63mr5l33vhjdxgxx2vqg0nh1sh41zn1";
-      system = "proto";
-      asd = "gtirb";
-    });
-    systems = [ "proto" ];
-    lispLibs = [ (getAttr "protobuf" pkgs) ];
-  };
-  proto-v0 = {
-    pname = "proto-v0";
-    version = "quicklisp-dd18337d-git";
-    asds = [ "proto-v0" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/gtirb/2021-10-20/gtirb-quicklisp-dd18337d-git.tgz";
-      sha256 = "0dpchsshnlh3jb9rg1zdf63mr5l33vhjdxgxx2vqg0nh1sh41zn1";
-      system = "proto-v0";
-      asd = "gtirb";
-    });
-    systems = [ "proto-v0" ];
-    lispLibs = [ (getAttr "protobuf" pkgs) ];
-  };
-  protobuf = {
-    pname = "protobuf";
-    version = "20220331-git";
-    asds = [ "protobuf" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/protobuf/2022-03-31/protobuf-20220331-git.tgz";
-      sha256 = "011jhbda4q77hjc4v2dyx3pc54zdq7m496qgrrv69ksy901lss4s";
-      system = "protobuf";
-      asd = "protobuf";
-    });
-    systems = [ "protobuf" ];
-    lispLibs = [ (getAttr "com_dot_google_dot_base" pkgs) (getAttr "varint" pkgs) ];
-  };
-  protobuf-conformance = {
-    pname = "protobuf-conformance";
-    version = "20220331-git";
-    asds = [ "protobuf-conformance" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/protobuf/2022-03-31/protobuf-20220331-git.tgz";
-      sha256 = "011jhbda4q77hjc4v2dyx3pc54zdq7m496qgrrv69ksy901lss4s";
-      system = "protobuf-conformance";
-      asd = "protobuf-conformance";
-    });
-    systems = [ "protobuf-conformance" ];
-    lispLibs = [ (getAttr "com_dot_google_dot_base" pkgs) (getAttr "nibbles" pkgs) (getAttr "protobuf" pkgs) ];
-  };
-  prove = {
-    pname = "prove";
-    version = "20200218-git";
-    asds = [ "prove" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/prove/2020-02-18/prove-20200218-git.tgz";
-      sha256 = "0ca6ha3zhmckq3ad9lxm6sbg4i0hg3m81xhan4dkxd3x9898jzpc";
-      system = "prove";
-      asd = "prove";
-    });
-    systems = [ "prove" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cl-ansi-text" pkgs) (getAttr "cl-colors" pkgs) (getAttr "cl-ppcre" pkgs) (getAttr "uiop" pkgs) ];
-  };
-  prove-asdf = {
-    pname = "prove-asdf";
-    version = "20200218-git";
-    asds = [ "prove-asdf" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/prove/2020-02-18/prove-20200218-git.tgz";
-      sha256 = "0ca6ha3zhmckq3ad9lxm6sbg4i0hg3m81xhan4dkxd3x9898jzpc";
-      system = "prove-asdf";
-      asd = "prove-asdf";
-    });
-    systems = [ "prove-asdf" ];
-    lispLibs = [  ];
-  };
-  prove-test = {
-    pname = "prove-test";
-    version = "20200218-git";
-    asds = [ "prove-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/prove/2020-02-18/prove-20200218-git.tgz";
-      sha256 = "0ca6ha3zhmckq3ad9lxm6sbg4i0hg3m81xhan4dkxd3x9898jzpc";
-      system = "prove-test";
-      asd = "prove-test";
-    });
-    systems = [ "prove-test" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "prove" pkgs) (getAttr "prove-asdf" pkgs) (getAttr "split-sequence" pkgs) ];
-  };
-  pseudonyms = {
-    pname = "pseudonyms";
-    version = "20200325-git";
-    asds = [ "pseudonyms" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/pseudonyms/2020-03-25/pseudonyms-20200325-git.tgz";
-      sha256 = "0ph7l130hr8gz88gw8i15zbsbq96519srfhzgm6zzkw85vab1ysn";
-      system = "pseudonyms";
-      asd = "pseudonyms";
-    });
-    systems = [ "pseudonyms" ];
-    lispLibs = [ (getAttr "named-readtables" pkgs) (getAttr "trivial-garbage" pkgs) ];
-  };
-  psgraph = {
-    pname = "psgraph";
-    version = "1.2";
-    asds = [ "psgraph" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/psgraph/2010-10-06/psgraph-1.2.tgz";
-      sha256 = "19x1lvzfj2c2h83y5bng6jsp2300qfvd25mmf157qiss15al22vs";
-      system = "psgraph";
-      asd = "psgraph";
-    });
-    systems = [ "psgraph" ];
-    lispLibs = [  ];
-  };
-  psychiq = {
-    pname = "psychiq";
-    version = "20200925-git";
-    asds = [ "psychiq" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/psychiq/2020-09-25/psychiq-20200925-git.tgz";
-      sha256 = "1g8m0nglhqn5zf79hcdx3kafa0y9h3f4yqvjn7diddimqckf0fw6";
-      system = "psychiq";
-      asd = "psychiq";
-    });
-    systems = [ "psychiq" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "bordeaux-threads" pkgs) (getAttr "cl-redis" pkgs) (getAttr "cl-reexport" pkgs) (getAttr "dissect" pkgs) (getAttr "jonathan" pkgs) (getAttr "local-time" pkgs) (getAttr "uiop" pkgs) (getAttr "vom" pkgs) ];
-  };
-  psychiq-test = {
-    pname = "psychiq-test";
-    version = "20200925-git";
-    asds = [ "psychiq-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/psychiq/2020-09-25/psychiq-20200925-git.tgz";
-      sha256 = "1g8m0nglhqn5zf79hcdx3kafa0y9h3f4yqvjn7diddimqckf0fw6";
-      system = "psychiq-test";
-      asd = "psychiq-test";
-    });
-    systems = [ "psychiq-test" ];
-    lispLibs = [ (getAttr "prove" pkgs) (getAttr "prove-asdf" pkgs) (getAttr "psychiq" pkgs) ];
-  };
-  ptester = {
-    pname = "ptester";
-    version = "20160929-git";
-    asds = [ "ptester" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/ptester/2016-09-29/ptester-20160929-git.tgz";
-      sha256 = "1l0lfl7cdnr2qf4zh38hi4llxg22c49zkm639bdkmvlkzwj3ndwf";
-      system = "ptester";
-      asd = "ptester";
-    });
-    systems = [ "ptester" ];
-    lispLibs = [  ];
-  };
-  purgatory = {
-    pname = "purgatory";
-    version = "20220707-git";
-    asds = [ "purgatory" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/purgatory/2022-07-07/purgatory-20220707-git.tgz";
-      sha256 = "0iy2jdgrwqrq9cph7bwf79d8l4zdsgcd9sfcn0lclzai2v0yizp9";
-      system = "purgatory";
-      asd = "purgatory";
-    });
-    systems = [ "purgatory" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "babel" pkgs) (getAttr "cl-ppcre" pkgs) (getAttr "uiop" pkgs) (getAttr "usocket" pkgs) ];
-  };
-  purgatory-tests = {
-    pname = "purgatory-tests";
-    version = "20220707-git";
-    asds = [ "purgatory-tests" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/purgatory/2022-07-07/purgatory-20220707-git.tgz";
-      sha256 = "0iy2jdgrwqrq9cph7bwf79d8l4zdsgcd9sfcn0lclzai2v0yizp9";
-      system = "purgatory-tests";
-      asd = "purgatory-tests";
-    });
-    systems = [ "purgatory-tests" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "babel" pkgs) (getAttr "cl_plus_ssl" pkgs) (getAttr "cl-ppcre" pkgs) (getAttr "clunit2" pkgs) (getAttr "purgatory" pkgs) (getAttr "uiop" pkgs) (getAttr "usocket" pkgs) ];
-  };
-  puri = {
-    pname = "puri";
-    version = "20201016-git";
-    asds = [ "puri" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/puri/2020-10-16/puri-20201016-git.tgz";
-      sha256 = "0gq2rsr0aihs0z20v4zqvmdl4szq53b52rh97pvnmwrlbn4mapmd";
-      system = "puri";
-      asd = "puri";
-    });
-    systems = [ "puri" ];
-    lispLibs = [  ];
-  };
-  puri_slash_test = {
-    pname = "puri_test";
-    version = "20201016-git";
-    asds = [ "puri" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/puri/2020-10-16/puri-20201016-git.tgz";
-      sha256 = "0gq2rsr0aihs0z20v4zqvmdl4szq53b52rh97pvnmwrlbn4mapmd";
-      system = "puri";
-      asd = "puri";
-    });
-    systems = [ "puri/test" ];
-    lispLibs = [ (getAttr "ptester" pkgs) (getAttr "puri" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  purl = {
-    pname = "purl";
-    version = "20160929-git";
-    asds = [ "purl" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/purl/2016-09-29/purl-20160929-git.tgz";
-      sha256 = "1fw3ip4b7n3q6kimh683apg381p7y4w6s4mb8mmv9n3dw0p0sdww";
-      system = "purl";
-      asd = "purl";
-    });
-    systems = [ "purl" ];
-    lispLibs = [ (getAttr "maxpc" pkgs) (getAttr "percent-encoding" pkgs) (getAttr "uiop" pkgs) ];
-  };
-  pvars = {
-    pname = "pvars";
-    version = "20210228-git";
-    asds = [ "pvars" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/pvars/2021-02-28/pvars-20210228-git.tgz";
-      sha256 = "1x9mmz53sj0mgd288pa65x963mrd27sw47a8vbggsc4ykwacqf1d";
-      system = "pvars";
-      asd = "pvars";
-    });
-    systems = [ "pvars" ];
-    lispLibs = [ (getAttr "cl-store" pkgs) (getAttr "global-vars" pkgs) ];
-  };
-  py-configparser = {
-    pname = "py-configparser";
-    version = "20170830-svn";
-    asds = [ "py-configparser" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/py-configparser/2017-08-30/py-configparser-20170830-svn.tgz";
-      sha256 = "1mpzhrys1b1mp1kp2xvryl6v01gfqfccb1zdiib49nf4bms4irvw";
-      system = "py-configparser";
-      asd = "py-configparser";
-    });
-    systems = [ "py-configparser" ];
-    lispLibs = [ (getAttr "parse-number" pkgs) ];
-  };
-  py4cl = {
-    pname = "py4cl";
-    version = "20220707-git";
-    asds = [ "py4cl" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/py4cl/2022-07-07/py4cl-20220707-git.tgz";
-      sha256 = "14pps4r9dx9wx36vwv0r45g0fw1z6739bqacqmzwmyvdilxip977";
-      system = "py4cl";
-      asd = "py4cl";
-    });
-    systems = [ "py4cl" ];
-    lispLibs = [ (getAttr "cl-json" pkgs) (getAttr "numpy-file-format" pkgs) (getAttr "trivial-garbage" pkgs) (getAttr "uiop" pkgs) ];
-  };
-  py4cl2 = {
-    pname = "py4cl2";
-    version = "v2.9.0";
-    asds = [ "py4cl2" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/py4cl2/2021-12-09/py4cl2-v2.9.0.tgz";
-      sha256 = "00f1nyvjy43fcx5gxbhx0ya0srq8r0g3gqxrqhk4605kqchqfz7s";
-      system = "py4cl2";
-      asd = "py4cl2";
-    });
-    systems = [ "py4cl2" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "bordeaux-threads" pkgs) (getAttr "cl-json" pkgs) (getAttr "iterate" pkgs) (getAttr "numpy-file-format" pkgs) (getAttr "parse-number" pkgs) (getAttr "trivial-garbage" pkgs) (getAttr "uiop" pkgs) ];
-  };
-  pythonic-string-reader = {
-    pname = "pythonic-string-reader";
-    version = "20180711-git";
-    asds = [ "pythonic-string-reader" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/pythonic-string-reader/2018-07-11/pythonic-string-reader-20180711-git.tgz";
-      sha256 = "1b5iryqw8xsh36swckmz8rrngmc39k92si33fgy5pml3n9l5rq3j";
-      system = "pythonic-string-reader";
-      asd = "pythonic-string-reader";
-    });
-    systems = [ "pythonic-string-reader" ];
-    lispLibs = [ (getAttr "named-readtables" pkgs) ];
-  };
-  pzmq = {
-    pname = "pzmq";
-    version = "20210531-git";
-    asds = [ "pzmq" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/pzmq/2021-05-31/pzmq-20210531-git.tgz";
-      sha256 = "19mdhxhzzghlmff1fic4chg5iz0psglkim09z6dgpijm26biny05";
-      system = "pzmq";
-      asd = "pzmq";
-    });
-    systems = [ "pzmq" ];
-    lispLibs = [ (getAttr "cffi" pkgs) (getAttr "cffi-grovel" pkgs) ];
-  };
-  pzmq-compat = {
-    pname = "pzmq-compat";
-    version = "20210531-git";
-    asds = [ "pzmq-compat" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/pzmq/2021-05-31/pzmq-20210531-git.tgz";
-      sha256 = "19mdhxhzzghlmff1fic4chg5iz0psglkim09z6dgpijm26biny05";
-      system = "pzmq-compat";
-      asd = "pzmq";
-    });
-    systems = [ "pzmq-compat" ];
-    lispLibs = [ (getAttr "pzmq" pkgs) ];
-  };
-  pzmq-examples = {
-    pname = "pzmq-examples";
-    version = "20210531-git";
-    asds = [ "pzmq-examples" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/pzmq/2021-05-31/pzmq-20210531-git.tgz";
-      sha256 = "19mdhxhzzghlmff1fic4chg5iz0psglkim09z6dgpijm26biny05";
-      system = "pzmq-examples";
-      asd = "pzmq";
-    });
-    systems = [ "pzmq-examples" ];
-    lispLibs = [ (getAttr "bordeaux-threads" pkgs) (getAttr "iterate" pkgs) (getAttr "local-time" pkgs) (getAttr "pzmq" pkgs) (getAttr "split-sequence" pkgs) ];
-  };
-  pzmq-test = {
-    pname = "pzmq-test";
-    version = "20210531-git";
-    asds = [ "pzmq-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/pzmq/2021-05-31/pzmq-20210531-git.tgz";
-      sha256 = "19mdhxhzzghlmff1fic4chg5iz0psglkim09z6dgpijm26biny05";
-      system = "pzmq-test";
-      asd = "pzmq";
-    });
-    systems = [ "pzmq-test" ];
-    lispLibs = [ (getAttr "babel" pkgs) (getAttr "bordeaux-threads" pkgs) (getAttr "fiveam" pkgs) (getAttr "let-plus" pkgs) (getAttr "pzmq" pkgs) ];
-  };
-  q_plus = {
-    pname = "q+";
-    version = "20200427-git";
-    asds = [ "q+" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/qtools/2020-04-27/qtools-20200427-git.tgz";
-      sha256 = "13c9syk1l3a9xwpii0j82g0fkgnbxx8yabjjjczmr0l29hykhd4v";
-      system = "q+";
-      asd = "q+";
-    });
-    systems = [ "q+" ];
-    lispLibs = [ (getAttr "qtools" pkgs) ];
-  };
-  qbase64 = {
-    pname = "qbase64";
-    version = "20220220-git";
-    asds = [ "qbase64" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/qbase64/2022-02-20/qbase64-20220220-git.tgz";
-      sha256 = "06daqqfdd51wkx0pyxgz7zq4ibzsqsgn3qs04jabx67gyybgnmjm";
-      system = "qbase64";
-      asd = "qbase64";
-    });
-    systems = [ "qbase64" ];
-    lispLibs = [ (getAttr "metabang-bind" pkgs) (getAttr "trivial-gray-streams" pkgs) ];
-  };
-  qbase64_slash_test = {
-    pname = "qbase64_test";
-    version = "20220220-git";
-    asds = [ "qbase64" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/qbase64/2022-02-20/qbase64-20220220-git.tgz";
-      sha256 = "06daqqfdd51wkx0pyxgz7zq4ibzsqsgn3qs04jabx67gyybgnmjm";
-      system = "qbase64";
-      asd = "qbase64";
-    });
-    systems = [ "qbase64/test" ];
-    lispLibs = [ (getAttr "cl-fad" pkgs) (getAttr "fiveam" pkgs) (getAttr "qbase64" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  qbook = {
-    pname = "qbook";
-    version = "20130312-darcs";
-    asds = [ "qbook" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/qbook/2013-03-12/qbook-20130312-darcs.tgz";
-      sha256 = "0l5hc2v73416jpwc2nsnj03z85fisirgm4av2anvlpv5m1291p6g";
-      system = "qbook";
-      asd = "qbook";
-    });
-    systems = [ "qbook" ];
-    lispLibs = [ (getAttr "arnesi" pkgs) (getAttr "cl-ppcre" pkgs) (getAttr "iterate" pkgs) (getAttr "yaclml" pkgs) ];
-  };
-  qimageblitz = {
-    pname = "qimageblitz";
-    version = "20210531-git";
-    asds = [ "qimageblitz" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/qt-libs/2021-05-31/qt-libs-20210531-git.tgz";
-      sha256 = "0why7cssadw20jg382k6mg2lgk5b3b3nwyyvjafaz90h0ljf0b9w";
-      system = "qimageblitz";
-      asd = "qimageblitz";
-    });
-    systems = [ "qimageblitz" ];
-    lispLibs = [ (getAttr "qt_plus_libs" pkgs) (getAttr "qt-libs" pkgs) (getAttr "qtcore" pkgs) (getAttr "qtgui" pkgs) ];
-  };
-  ql-checkout = {
-    pname = "ql-checkout";
-    version = "20190521-git";
-    asds = [ "ql-checkout" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/ql-checkout/2019-05-21/ql-checkout-20190521-git.tgz";
-      sha256 = "1zp3wa7g1wn7sypfsla7510ywvldqavlmv90pncanwpwn79klyhw";
-      system = "ql-checkout";
-      asd = "ql-checkout";
-    });
-    systems = [ "ql-checkout" ];
-    lispLibs = [  ];
-  };
-  qlot = {
-    pname = "qlot";
-    version = "20220331-git";
-    asds = [ "qlot" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/qlot/2022-03-31/qlot-20220331-git.tgz";
-      sha256 = "18dzrjy66a4xrzm4ap7kvzbi0xvp2s2nm0l04jjwy7vgizbw29y1";
-      system = "qlot";
-      asd = "qlot";
-    });
-    systems = [ "qlot" ];
-    lispLibs = [  ];
-  };
-  qlot_slash_command = {
-    pname = "qlot_command";
-    version = "20220331-git";
-    asds = [ "qlot" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/qlot/2022-03-31/qlot-20220331-git.tgz";
-      sha256 = "18dzrjy66a4xrzm4ap7kvzbi0xvp2s2nm0l04jjwy7vgizbw29y1";
-      system = "qlot";
-      asd = "qlot";
-    });
-    systems = [ "qlot/command" ];
-    lispLibs = [  ];
-    meta = {
-      broken = true;
-    };
-  };
-  qmynd = {
-    pname = "qmynd";
-    version = "20190710-git";
-    asds = [ "qmynd" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/qmynd/2019-07-10/qmynd-20190710-git.tgz";
-      sha256 = "06gw5wxcpdclb6a5i5k9lbmdlyqsp182czrm9bm1cpklzbj0ihrl";
-      system = "qmynd";
-      asd = "qmynd";
-    });
-    systems = [ "qmynd" ];
-    lispLibs = [ (getAttr "list-of" pkgs) (getAttr "babel" pkgs) (getAttr "chipz" pkgs) (getAttr "cl_plus_ssl" pkgs) (getAttr "flexi-streams" pkgs) (getAttr "ironclad" pkgs) (getAttr "salza2" pkgs) (getAttr "trivial-gray-streams" pkgs) (getAttr "usocket" pkgs) ];
-  };
-  qmynd-test = {
-    pname = "qmynd-test";
-    version = "20190710-git";
-    asds = [ "qmynd-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/qmynd/2019-07-10/qmynd-20190710-git.tgz";
-      sha256 = "06gw5wxcpdclb6a5i5k9lbmdlyqsp182czrm9bm1cpklzbj0ihrl";
-      system = "qmynd-test";
-      asd = "qmynd-test";
-    });
-    systems = [ "qmynd-test" ];
-    lispLibs = [ (getAttr "babel" pkgs) (getAttr "flexi-streams" pkgs) (getAttr "qmynd" pkgs) ];
-  };
-  qoi = {
-    pname = "qoi";
-    version = "20220707-git";
-    asds = [ "qoi" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/qoi/2022-07-07/qoi-20220707-git.tgz";
-      sha256 = "12j762h599cc9qpdpcmxiddixm168sxd2i60mbyka8x6dab64mla";
-      system = "qoi";
-      asd = "qoi";
-    });
-    systems = [ "qoi" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) ];
-  };
-  qsci = {
-    pname = "qsci";
-    version = "20210531-git";
-    asds = [ "qsci" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/qt-libs/2021-05-31/qt-libs-20210531-git.tgz";
-      sha256 = "0why7cssadw20jg382k6mg2lgk5b3b3nwyyvjafaz90h0ljf0b9w";
-      system = "qsci";
-      asd = "qsci";
-    });
-    systems = [ "qsci" ];
-    lispLibs = [ (getAttr "qt_plus_libs" pkgs) (getAttr "qt-libs" pkgs) (getAttr "qtcore" pkgs) (getAttr "qtgui" pkgs) ];
-  };
-  qt = {
-    pname = "qt";
-    version = "20200925-git";
-    asds = [ "qt" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/commonqt/2020-09-25/commonqt-20200925-git.tgz";
-      sha256 = "1s66z48plfwiq4qhf6whpvnjy4n7r9zhipri7lc8k67x817k020q";
-      system = "qt";
-      asd = "qt";
-    });
-    systems = [ "qt" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cffi" pkgs) (getAttr "cl-ppcre" pkgs) (getAttr "closer-mop" pkgs) (getAttr "iterate" pkgs) (getAttr "named-readtables" pkgs) (getAttr "trivial-features" pkgs) (getAttr "trivial-garbage" pkgs) ];
-  };
-  qt_plus_libs = {
-    pname = "qt+libs";
-    version = "20200925-git";
-    asds = [ "qt+libs" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/commonqt/2020-09-25/commonqt-20200925-git.tgz";
-      sha256 = "1s66z48plfwiq4qhf6whpvnjy4n7r9zhipri7lc8k67x817k020q";
-      system = "qt+libs";
-      asd = "qt+libs";
-    });
-    systems = [ "qt+libs" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cffi" pkgs) (getAttr "cl-ppcre" pkgs) (getAttr "closer-mop" pkgs) (getAttr "iterate" pkgs) (getAttr "named-readtables" pkgs) (getAttr "qt-libs" pkgs) (getAttr "trivial-features" pkgs) (getAttr "trivial-garbage" pkgs) ];
-  };
-  qt-lib-generator = {
-    pname = "qt-lib-generator";
-    version = "20210531-git";
-    asds = [ "qt-lib-generator" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/qt-libs/2021-05-31/qt-libs-20210531-git.tgz";
-      sha256 = "0why7cssadw20jg382k6mg2lgk5b3b3nwyyvjafaz90h0ljf0b9w";
-      system = "qt-lib-generator";
-      asd = "qt-lib-generator";
-    });
-    systems = [ "qt-lib-generator" ];
-    lispLibs = [ (getAttr "cl-ppcre" pkgs) (getAttr "pathname-utils" pkgs) (getAttr "trivial-features" pkgs) ];
-  };
-  qt-libs = {
-    pname = "qt-libs";
-    version = "20210531-git";
-    asds = [ "qt-libs" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/qt-libs/2021-05-31/qt-libs-20210531-git.tgz";
-      sha256 = "0why7cssadw20jg382k6mg2lgk5b3b3nwyyvjafaz90h0ljf0b9w";
-      system = "qt-libs";
-      asd = "qt-libs";
-    });
-    systems = [ "qt-libs" ];
-    lispLibs = [ (getAttr "cffi" pkgs) (getAttr "cl-ppcre" pkgs) (getAttr "qt-lib-generator" pkgs) ];
-  };
-  qt-repl = {
-    pname = "qt-repl";
-    version = "20200925-git";
-    asds = [ "qt-repl" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/commonqt/2020-09-25/commonqt-20200925-git.tgz";
-      sha256 = "1s66z48plfwiq4qhf6whpvnjy4n7r9zhipri7lc8k67x817k020q";
-      system = "qt-repl";
-      asd = "qt-repl";
-    });
-    systems = [ "qt-repl" ];
-    lispLibs = [ (getAttr "bordeaux-threads" pkgs) (getAttr "qt" pkgs) ];
-  };
-  qt-test = {
-    pname = "qt-test";
-    version = "20200925-git";
-    asds = [ "qt-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/commonqt/2020-09-25/commonqt-20200925-git.tgz";
-      sha256 = "1s66z48plfwiq4qhf6whpvnjy4n7r9zhipri7lc8k67x817k020q";
-      system = "qt-test";
-      asd = "qt-test";
-    });
-    systems = [ "qt-test" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "bordeaux-threads" pkgs) (getAttr "qt" pkgs) (getAttr "iterate" pkgs) (getAttr "rt" pkgs) (getAttr "trivial-garbage" pkgs) ];
-  };
-  qt-tutorial = {
-    pname = "qt-tutorial";
-    version = "20200925-git";
-    asds = [ "qt-tutorial" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/commonqt/2020-09-25/commonqt-20200925-git.tgz";
-      sha256 = "1s66z48plfwiq4qhf6whpvnjy4n7r9zhipri7lc8k67x817k020q";
-      system = "qt-tutorial";
-      asd = "qt-tutorial";
-    });
-    systems = [ "qt-tutorial" ];
-    lispLibs = [ (getAttr "qt" pkgs) ];
-  };
-  qt3support = {
-    pname = "qt3support";
-    version = "20210531-git";
-    asds = [ "qt3support" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/qt-libs/2021-05-31/qt-libs-20210531-git.tgz";
-      sha256 = "0why7cssadw20jg382k6mg2lgk5b3b3nwyyvjafaz90h0ljf0b9w";
-      system = "qt3support";
-      asd = "qt3support";
-    });
-    systems = [ "qt3support" ];
-    lispLibs = [ (getAttr "qt_plus_libs" pkgs) (getAttr "qt-libs" pkgs) (getAttr "qtcore" pkgs) (getAttr "qtgui" pkgs) (getAttr "qtnetwork" pkgs) (getAttr "qtsql" pkgs) (getAttr "qtxml" pkgs) ];
-  };
-  qtcore = {
-    pname = "qtcore";
-    version = "20210531-git";
-    asds = [ "qtcore" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/qt-libs/2021-05-31/qt-libs-20210531-git.tgz";
-      sha256 = "0why7cssadw20jg382k6mg2lgk5b3b3nwyyvjafaz90h0ljf0b9w";
-      system = "qtcore";
-      asd = "qtcore";
-    });
-    systems = [ "qtcore" ];
-    lispLibs = [ (getAttr "qt_plus_libs" pkgs) (getAttr "commonqt" pkgs) (getAttr "qt-libs" pkgs) ];
-  };
-  qtdbus = {
-    pname = "qtdbus";
-    version = "20210531-git";
-    asds = [ "qtdbus" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/qt-libs/2021-05-31/qt-libs-20210531-git.tgz";
-      sha256 = "0why7cssadw20jg382k6mg2lgk5b3b3nwyyvjafaz90h0ljf0b9w";
-      system = "qtdbus";
-      asd = "qtdbus";
-    });
-    systems = [ "qtdbus" ];
-    lispLibs = [ (getAttr "qt_plus_libs" pkgs) (getAttr "qt-libs" pkgs) (getAttr "qtcore" pkgs) (getAttr "qtxml" pkgs) ];
-  };
-  qtdeclarative = {
-    pname = "qtdeclarative";
-    version = "20210531-git";
-    asds = [ "qtdeclarative" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/qt-libs/2021-05-31/qt-libs-20210531-git.tgz";
-      sha256 = "0why7cssadw20jg382k6mg2lgk5b3b3nwyyvjafaz90h0ljf0b9w";
-      system = "qtdeclarative";
-      asd = "qtdeclarative";
-    });
-    systems = [ "qtdeclarative" ];
-    lispLibs = [ (getAttr "qt_plus_libs" pkgs) (getAttr "qt-libs" pkgs) (getAttr "qtcore" pkgs) (getAttr "qtgui" pkgs) (getAttr "qtnetwork" pkgs) (getAttr "qtscript" pkgs) (getAttr "qtsql" pkgs) (getAttr "qtxmlpatterns" pkgs) ];
-  };
-  qtgui = {
-    pname = "qtgui";
-    version = "20210531-git";
-    asds = [ "qtgui" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/qt-libs/2021-05-31/qt-libs-20210531-git.tgz";
-      sha256 = "0why7cssadw20jg382k6mg2lgk5b3b3nwyyvjafaz90h0ljf0b9w";
-      system = "qtgui";
-      asd = "qtgui";
-    });
-    systems = [ "qtgui" ];
-    lispLibs = [ (getAttr "qt_plus_libs" pkgs) (getAttr "qt-libs" pkgs) (getAttr "qtcore" pkgs) ];
-  };
-  qthelp = {
-    pname = "qthelp";
-    version = "20210531-git";
-    asds = [ "qthelp" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/qt-libs/2021-05-31/qt-libs-20210531-git.tgz";
-      sha256 = "0why7cssadw20jg382k6mg2lgk5b3b3nwyyvjafaz90h0ljf0b9w";
-      system = "qthelp";
-      asd = "qthelp";
-    });
-    systems = [ "qthelp" ];
-    lispLibs = [ (getAttr "qt_plus_libs" pkgs) (getAttr "qt-libs" pkgs) (getAttr "qtcore" pkgs) (getAttr "qtgui" pkgs) (getAttr "qtnetwork" pkgs) (getAttr "qtsql" pkgs) ];
-  };
-  qtnetwork = {
-    pname = "qtnetwork";
-    version = "20210531-git";
-    asds = [ "qtnetwork" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/qt-libs/2021-05-31/qt-libs-20210531-git.tgz";
-      sha256 = "0why7cssadw20jg382k6mg2lgk5b3b3nwyyvjafaz90h0ljf0b9w";
-      system = "qtnetwork";
-      asd = "qtnetwork";
-    });
-    systems = [ "qtnetwork" ];
-    lispLibs = [ (getAttr "qt_plus_libs" pkgs) (getAttr "qt-libs" pkgs) (getAttr "qtcore" pkgs) ];
-  };
-  qtools = {
-    pname = "qtools";
-    version = "20200427-git";
-    asds = [ "qtools" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/qtools/2020-04-27/qtools-20200427-git.tgz";
-      sha256 = "13c9syk1l3a9xwpii0j82g0fkgnbxx8yabjjjczmr0l29hykhd4v";
-      system = "qtools";
-      asd = "qtools";
-    });
-    systems = [ "qtools" ];
-    lispLibs = [ (getAttr "cl-ppcre" pkgs) (getAttr "closer-mop" pkgs) (getAttr "qt_plus_libs" pkgs) (getAttr "deploy" pkgs) (getAttr "documentation-utils" pkgs) (getAttr "form-fiddle" pkgs) (getAttr "named-readtables" pkgs) (getAttr "trivial-garbage" pkgs) (getAttr "trivial-indent" pkgs) (getAttr "trivial-main-thread" pkgs) ];
-  };
-  qtools-evaluator = {
-    pname = "qtools-evaluator";
-    version = "20200427-git";
-    asds = [ "qtools-evaluator" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/qtools/2020-04-27/qtools-20200427-git.tgz";
-      sha256 = "13c9syk1l3a9xwpii0j82g0fkgnbxx8yabjjjczmr0l29hykhd4v";
-      system = "qtools-evaluator";
-      asd = "qtools-evaluator";
-    });
-    systems = [ "qtools-evaluator" ];
-    lispLibs = [ (getAttr "cl-ppcre" pkgs) (getAttr "qtcore" pkgs) (getAttr "qtgui" pkgs) (getAttr "qtools" pkgs) (getAttr "trivial-gray-streams" pkgs) ];
-  };
-  qtools-game = {
-    pname = "qtools-game";
-    version = "20200427-git";
-    asds = [ "qtools-game" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/qtools/2020-04-27/qtools-20200427-git.tgz";
-      sha256 = "13c9syk1l3a9xwpii0j82g0fkgnbxx8yabjjjczmr0l29hykhd4v";
-      system = "qtools-game";
-      asd = "qtools-game";
-    });
-    systems = [ "qtools-game" ];
-    lispLibs = [ (getAttr "closer-mop" pkgs) (getAttr "qtcore" pkgs) (getAttr "qtgui" pkgs) (getAttr "qtopengl" pkgs) (getAttr "qtools" pkgs) ];
-  };
-  qtools-helloworld = {
-    pname = "qtools-helloworld";
-    version = "20200427-git";
-    asds = [ "qtools-helloworld" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/qtools/2020-04-27/qtools-20200427-git.tgz";
-      sha256 = "13c9syk1l3a9xwpii0j82g0fkgnbxx8yabjjjczmr0l29hykhd4v";
-      system = "qtools-helloworld";
-      asd = "qtools-helloworld";
-    });
-    systems = [ "qtools-helloworld" ];
-    lispLibs = [ (getAttr "qtcore" pkgs) (getAttr "qtgui" pkgs) (getAttr "qtools" pkgs) ];
-  };
-  qtools-melody = {
-    pname = "qtools-melody";
-    version = "20200427-git";
-    asds = [ "qtools-melody" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/qtools/2020-04-27/qtools-20200427-git.tgz";
-      sha256 = "13c9syk1l3a9xwpii0j82g0fkgnbxx8yabjjjczmr0l29hykhd4v";
-      system = "qtools-melody";
-      asd = "qtools-melody";
-    });
-    systems = [ "qtools-melody" ];
-    lispLibs = [ (getAttr "phonon" pkgs) (getAttr "qtcore" pkgs) (getAttr "qtgui" pkgs) (getAttr "qtools" pkgs) ];
-  };
-  qtools-opengl = {
-    pname = "qtools-opengl";
-    version = "20200427-git";
-    asds = [ "qtools-opengl" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/qtools/2020-04-27/qtools-20200427-git.tgz";
-      sha256 = "13c9syk1l3a9xwpii0j82g0fkgnbxx8yabjjjczmr0l29hykhd4v";
-      system = "qtools-opengl";
-      asd = "qtools-opengl";
-    });
-    systems = [ "qtools-opengl" ];
-    lispLibs = [ (getAttr "cl-opengl" pkgs) (getAttr "qtcore" pkgs) (getAttr "qtgui" pkgs) (getAttr "qtopengl" pkgs) (getAttr "qtools" pkgs) ];
-  };
-  qtools-titter = {
-    pname = "qtools-titter";
-    version = "20200427-git";
-    asds = [ "qtools-titter" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/qtools/2020-04-27/qtools-20200427-git.tgz";
-      sha256 = "13c9syk1l3a9xwpii0j82g0fkgnbxx8yabjjjczmr0l29hykhd4v";
-      system = "qtools-titter";
-      asd = "qtools-titter";
-    });
-    systems = [ "qtools-titter" ];
-    lispLibs = [ (getAttr "chirp" pkgs) (getAttr "qtcore" pkgs) (getAttr "qtgui" pkgs) (getAttr "qtools" pkgs) ];
-  };
-  qtools-ui = {
-    pname = "qtools-ui";
-    version = "20200218-git";
-    asds = [ "qtools-ui" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/qtools-ui/2020-02-18/qtools-ui-20200218-git.tgz";
-      sha256 = "0zlygq42mi2ngk8q7a36k2rp6ydb98gryfxvcbg3dijg34i70f2z";
-      system = "qtools-ui";
-      asd = "qtools-ui";
-    });
-    systems = [ "qtools-ui" ];
-    lispLibs = [ (getAttr "qtools-ui-auto-resizing-textedit" pkgs) (getAttr "qtools-ui-base" pkgs) (getAttr "qtools-ui-cell" pkgs) (getAttr "qtools-ui-color-history" pkgs) (getAttr "qtools-ui-color-picker" pkgs) (getAttr "qtools-ui-color-sliders" pkgs) (getAttr "qtools-ui-color-triangle" pkgs) (getAttr "qtools-ui-compass" pkgs) (getAttr "qtools-ui-container" pkgs) (getAttr "qtools-ui-debugger" pkgs) (getAttr "qtools-ui-dialog" pkgs) (getAttr "qtools-ui-dictionary" pkgs) (getAttr "qtools-ui-drag-and-drop" pkgs) (getAttr "qtools-ui-fixed-qtextedit" pkgs) (getAttr "qtools-ui-flow-layout" pkgs) (getAttr "qtools-ui-helpers" pkgs) (getAttr "qtools-ui-imagetools" pkgs) (getAttr "qtools-ui-keychord-editor" pkgs) (getAttr "qtools-ui-layout" pkgs) (getAttr "qtools-ui-listing" pkgs) (getAttr "qtools-ui-notification" pkgs) (getAttr "qtools-ui-options" pkgs) (getAttr "qtools-ui-panels" pkgs) (getAttr "qtools-ui-placeholder-text-edit" pkgs) (getAttr "qtools-ui-plot" pkgs) (getAttr "qtools-ui-repl" pkgs) (getAttr "qtools-ui-slider" pkgs) (getAttr "qtools-ui-spellchecked-text-edit" pkgs) (getAttr "qtools-ui-splitter" pkgs) ];
-  };
-  qtools-ui-auto-resizing-textedit = {
-    pname = "qtools-ui-auto-resizing-textedit";
-    version = "20200218-git";
-    asds = [ "qtools-ui-auto-resizing-textedit" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/qtools-ui/2020-02-18/qtools-ui-20200218-git.tgz";
-      sha256 = "0zlygq42mi2ngk8q7a36k2rp6ydb98gryfxvcbg3dijg34i70f2z";
-      system = "qtools-ui-auto-resizing-textedit";
-      asd = "qtools-ui-auto-resizing-textedit";
-    });
-    systems = [ "qtools-ui-auto-resizing-textedit" ];
-    lispLibs = [ (getAttr "qtools-ui-base" pkgs) (getAttr "qtools-ui-fixed-qtextedit" pkgs) ];
-  };
-  qtools-ui-base = {
-    pname = "qtools-ui-base";
-    version = "20200218-git";
-    asds = [ "qtools-ui-base" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/qtools-ui/2020-02-18/qtools-ui-20200218-git.tgz";
-      sha256 = "0zlygq42mi2ngk8q7a36k2rp6ydb98gryfxvcbg3dijg34i70f2z";
-      system = "qtools-ui-base";
-      asd = "qtools-ui-base";
-    });
-    systems = [ "qtools-ui-base" ];
-    lispLibs = [ (getAttr "array-utils" pkgs) (getAttr "documentation-utils" pkgs) (getAttr "qtcore" pkgs) (getAttr "qtgui" pkgs) (getAttr "qtools" pkgs) ];
-  };
-  qtools-ui-bytearray = {
-    pname = "qtools-ui-bytearray";
-    version = "20200218-git";
-    asds = [ "qtools-ui-bytearray" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/qtools-ui/2020-02-18/qtools-ui-20200218-git.tgz";
-      sha256 = "0zlygq42mi2ngk8q7a36k2rp6ydb98gryfxvcbg3dijg34i70f2z";
-      system = "qtools-ui-bytearray";
-      asd = "qtools-ui-bytearray";
-    });
-    systems = [ "qtools-ui-bytearray" ];
-    lispLibs = [ (getAttr "qtools-ui-base" pkgs) ];
-  };
-  qtools-ui-cell = {
-    pname = "qtools-ui-cell";
-    version = "20200218-git";
-    asds = [ "qtools-ui-cell" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/qtools-ui/2020-02-18/qtools-ui-20200218-git.tgz";
-      sha256 = "0zlygq42mi2ngk8q7a36k2rp6ydb98gryfxvcbg3dijg34i70f2z";
-      system = "qtools-ui-cell";
-      asd = "qtools-ui-cell";
-    });
-    systems = [ "qtools-ui-cell" ];
-    lispLibs = [ (getAttr "qtools-ui-base" pkgs) (getAttr "qtools-ui-helpers" pkgs) (getAttr "qtools-ui-layout" pkgs) ];
-  };
-  qtools-ui-color-history = {
-    pname = "qtools-ui-color-history";
-    version = "20200218-git";
-    asds = [ "qtools-ui-color-history" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/qtools-ui/2020-02-18/qtools-ui-20200218-git.tgz";
-      sha256 = "0zlygq42mi2ngk8q7a36k2rp6ydb98gryfxvcbg3dijg34i70f2z";
-      system = "qtools-ui-color-history";
-      asd = "qtools-ui-color-history";
-    });
-    systems = [ "qtools-ui-color-history" ];
-    lispLibs = [ (getAttr "qtools-ui-base" pkgs) (getAttr "qtools-ui-flow-layout" pkgs) (getAttr "qtools-ui-helpers" pkgs) ];
-  };
-  qtools-ui-color-picker = {
-    pname = "qtools-ui-color-picker";
-    version = "20200218-git";
-    asds = [ "qtools-ui-color-picker" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/qtools-ui/2020-02-18/qtools-ui-20200218-git.tgz";
-      sha256 = "0zlygq42mi2ngk8q7a36k2rp6ydb98gryfxvcbg3dijg34i70f2z";
-      system = "qtools-ui-color-picker";
-      asd = "qtools-ui-color-picker";
-    });
-    systems = [ "qtools-ui-color-picker" ];
-    lispLibs = [ (getAttr "qtools-ui-base" pkgs) (getAttr "qtools-ui-color-history" pkgs) (getAttr "qtools-ui-color-sliders" pkgs) (getAttr "qtools-ui-color-triangle" pkgs) (getAttr "qtools-ui-dialog" pkgs) (getAttr "qtools-ui-helpers" pkgs) ];
-  };
-  qtools-ui-color-sliders = {
-    pname = "qtools-ui-color-sliders";
-    version = "20200218-git";
-    asds = [ "qtools-ui-color-sliders" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/qtools-ui/2020-02-18/qtools-ui-20200218-git.tgz";
-      sha256 = "0zlygq42mi2ngk8q7a36k2rp6ydb98gryfxvcbg3dijg34i70f2z";
-      system = "qtools-ui-color-sliders";
-      asd = "qtools-ui-color-sliders";
-    });
-    systems = [ "qtools-ui-color-sliders" ];
-    lispLibs = [ (getAttr "qtools-ui-base" pkgs) (getAttr "qtools-ui-helpers" pkgs) ];
-  };
-  qtools-ui-color-triangle = {
-    pname = "qtools-ui-color-triangle";
-    version = "20200218-git";
-    asds = [ "qtools-ui-color-triangle" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/qtools-ui/2020-02-18/qtools-ui-20200218-git.tgz";
-      sha256 = "0zlygq42mi2ngk8q7a36k2rp6ydb98gryfxvcbg3dijg34i70f2z";
-      system = "qtools-ui-color-triangle";
-      asd = "qtools-ui-color-triangle";
-    });
-    systems = [ "qtools-ui-color-triangle" ];
-    lispLibs = [ (getAttr "cl-opengl" pkgs) (getAttr "qtopengl" pkgs) (getAttr "qtools-ui-base" pkgs) (getAttr "qtools-ui-helpers" pkgs) ];
-  };
-  qtools-ui-compass = {
-    pname = "qtools-ui-compass";
-    version = "20200218-git";
-    asds = [ "qtools-ui-compass" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/qtools-ui/2020-02-18/qtools-ui-20200218-git.tgz";
-      sha256 = "0zlygq42mi2ngk8q7a36k2rp6ydb98gryfxvcbg3dijg34i70f2z";
-      system = "qtools-ui-compass";
-      asd = "qtools-ui-compass";
-    });
-    systems = [ "qtools-ui-compass" ];
-    lispLibs = [ (getAttr "qtools-ui-base" pkgs) (getAttr "qtools-ui-layout" pkgs) ];
-  };
-  qtools-ui-container = {
-    pname = "qtools-ui-container";
-    version = "20200218-git";
-    asds = [ "qtools-ui-container" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/qtools-ui/2020-02-18/qtools-ui-20200218-git.tgz";
-      sha256 = "0zlygq42mi2ngk8q7a36k2rp6ydb98gryfxvcbg3dijg34i70f2z";
-      system = "qtools-ui-container";
-      asd = "qtools-ui-container";
-    });
-    systems = [ "qtools-ui-container" ];
-    lispLibs = [ (getAttr "qtools-ui-base" pkgs) (getAttr "qtools-ui-layout" pkgs) ];
-  };
-  qtools-ui-debugger = {
-    pname = "qtools-ui-debugger";
-    version = "20200218-git";
-    asds = [ "qtools-ui-debugger" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/qtools-ui/2020-02-18/qtools-ui-20200218-git.tgz";
-      sha256 = "0zlygq42mi2ngk8q7a36k2rp6ydb98gryfxvcbg3dijg34i70f2z";
-      system = "qtools-ui-debugger";
-      asd = "qtools-ui-debugger";
-    });
-    systems = [ "qtools-ui-debugger" ];
-    lispLibs = [ (getAttr "dissect" pkgs) (getAttr "qtools-ui-base" pkgs) ];
-  };
-  qtools-ui-dialog = {
-    pname = "qtools-ui-dialog";
-    version = "20200218-git";
-    asds = [ "qtools-ui-dialog" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/qtools-ui/2020-02-18/qtools-ui-20200218-git.tgz";
-      sha256 = "0zlygq42mi2ngk8q7a36k2rp6ydb98gryfxvcbg3dijg34i70f2z";
-      system = "qtools-ui-dialog";
-      asd = "qtools-ui-dialog";
-    });
-    systems = [ "qtools-ui-dialog" ];
-    lispLibs = [ (getAttr "qtools-ui-base" pkgs) (getAttr "qtools-ui-helpers" pkgs) ];
-  };
-  qtools-ui-dictionary = {
-    pname = "qtools-ui-dictionary";
-    version = "20200218-git";
-    asds = [ "qtools-ui-dictionary" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/qtools-ui/2020-02-18/qtools-ui-20200218-git.tgz";
-      sha256 = "0zlygq42mi2ngk8q7a36k2rp6ydb98gryfxvcbg3dijg34i70f2z";
-      system = "qtools-ui-dictionary";
-      asd = "qtools-ui-dictionary";
-    });
-    systems = [ "qtools-ui-dictionary" ];
-    lispLibs = [ (getAttr "qtools-ui-base" pkgs) (getAttr "qtools-ui-fixed-qtextedit" pkgs) (getAttr "qtools-ui-helpers" pkgs) (getAttr "wordnet" pkgs) ];
-  };
-  qtools-ui-drag-and-drop = {
-    pname = "qtools-ui-drag-and-drop";
-    version = "20200218-git";
-    asds = [ "qtools-ui-drag-and-drop" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/qtools-ui/2020-02-18/qtools-ui-20200218-git.tgz";
-      sha256 = "0zlygq42mi2ngk8q7a36k2rp6ydb98gryfxvcbg3dijg34i70f2z";
-      system = "qtools-ui-drag-and-drop";
-      asd = "qtools-ui-drag-and-drop";
-    });
-    systems = [ "qtools-ui-drag-and-drop" ];
-    lispLibs = [ (getAttr "qtools-ui-base" pkgs) (getAttr "qtools-ui-helpers" pkgs) ];
-  };
-  qtools-ui-executable = {
-    pname = "qtools-ui-executable";
-    version = "20200218-git";
-    asds = [ "qtools-ui-executable" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/qtools-ui/2020-02-18/qtools-ui-20200218-git.tgz";
-      sha256 = "0zlygq42mi2ngk8q7a36k2rp6ydb98gryfxvcbg3dijg34i70f2z";
-      system = "qtools-ui-executable";
-      asd = "qtools-ui-executable";
-    });
-    systems = [ "qtools-ui-executable" ];
-    lispLibs = [ (getAttr "bordeaux-threads" pkgs) (getAttr "qtools-ui-base" pkgs) ];
-  };
-  qtools-ui-fixed-qtextedit = {
-    pname = "qtools-ui-fixed-qtextedit";
-    version = "20200218-git";
-    asds = [ "qtools-ui-fixed-qtextedit" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/qtools-ui/2020-02-18/qtools-ui-20200218-git.tgz";
-      sha256 = "0zlygq42mi2ngk8q7a36k2rp6ydb98gryfxvcbg3dijg34i70f2z";
-      system = "qtools-ui-fixed-qtextedit";
-      asd = "qtools-ui-fixed-qtextedit";
-    });
-    systems = [ "qtools-ui-fixed-qtextedit" ];
-    lispLibs = [ (getAttr "qtools-ui-base" pkgs) ];
-  };
-  qtools-ui-flow-layout = {
-    pname = "qtools-ui-flow-layout";
-    version = "20200218-git";
-    asds = [ "qtools-ui-flow-layout" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/qtools-ui/2020-02-18/qtools-ui-20200218-git.tgz";
-      sha256 = "0zlygq42mi2ngk8q7a36k2rp6ydb98gryfxvcbg3dijg34i70f2z";
-      system = "qtools-ui-flow-layout";
-      asd = "qtools-ui-flow-layout";
-    });
-    systems = [ "qtools-ui-flow-layout" ];
-    lispLibs = [ (getAttr "qtools-ui-base" pkgs) (getAttr "qtools-ui-container" pkgs) ];
-  };
-  qtools-ui-helpers = {
-    pname = "qtools-ui-helpers";
-    version = "20200218-git";
-    asds = [ "qtools-ui-helpers" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/qtools-ui/2020-02-18/qtools-ui-20200218-git.tgz";
-      sha256 = "0zlygq42mi2ngk8q7a36k2rp6ydb98gryfxvcbg3dijg34i70f2z";
-      system = "qtools-ui-helpers";
-      asd = "qtools-ui-helpers";
-    });
-    systems = [ "qtools-ui-helpers" ];
-    lispLibs = [ (getAttr "qtools-ui-base" pkgs) (getAttr "qtools-ui-layout" pkgs) ];
-  };
-  qtools-ui-imagetools = {
-    pname = "qtools-ui-imagetools";
-    version = "20200218-git";
-    asds = [ "qtools-ui-imagetools" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/qtools-ui/2020-02-18/qtools-ui-20200218-git.tgz";
-      sha256 = "0zlygq42mi2ngk8q7a36k2rp6ydb98gryfxvcbg3dijg34i70f2z";
-      system = "qtools-ui-imagetools";
-      asd = "qtools-ui-imagetools";
-    });
-    systems = [ "qtools-ui-imagetools" ];
-    lispLibs = [ (getAttr "qimageblitz" pkgs) (getAttr "qtools-ui-base" pkgs) ];
-  };
-  qtools-ui-keychord-editor = {
-    pname = "qtools-ui-keychord-editor";
-    version = "20200218-git";
-    asds = [ "qtools-ui-keychord-editor" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/qtools-ui/2020-02-18/qtools-ui-20200218-git.tgz";
-      sha256 = "0zlygq42mi2ngk8q7a36k2rp6ydb98gryfxvcbg3dijg34i70f2z";
-      system = "qtools-ui-keychord-editor";
-      asd = "qtools-ui-keychord-editor";
-    });
-    systems = [ "qtools-ui-keychord-editor" ];
-    lispLibs = [ (getAttr "qtools-ui-base" pkgs) ];
-  };
-  qtools-ui-layout = {
-    pname = "qtools-ui-layout";
-    version = "20200218-git";
-    asds = [ "qtools-ui-layout" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/qtools-ui/2020-02-18/qtools-ui-20200218-git.tgz";
-      sha256 = "0zlygq42mi2ngk8q7a36k2rp6ydb98gryfxvcbg3dijg34i70f2z";
-      system = "qtools-ui-layout";
-      asd = "qtools-ui-layout";
-    });
-    systems = [ "qtools-ui-layout" ];
-    lispLibs = [ (getAttr "qtools-ui-base" pkgs) ];
-  };
-  qtools-ui-listing = {
-    pname = "qtools-ui-listing";
-    version = "20200218-git";
-    asds = [ "qtools-ui-listing" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/qtools-ui/2020-02-18/qtools-ui-20200218-git.tgz";
-      sha256 = "0zlygq42mi2ngk8q7a36k2rp6ydb98gryfxvcbg3dijg34i70f2z";
-      system = "qtools-ui-listing";
-      asd = "qtools-ui-listing";
-    });
-    systems = [ "qtools-ui-listing" ];
-    lispLibs = [ (getAttr "qtools-ui-base" pkgs) (getAttr "qtools-ui-cell" pkgs) (getAttr "qtools-ui-container" pkgs) ];
-  };
-  qtools-ui-notification = {
-    pname = "qtools-ui-notification";
-    version = "20200218-git";
-    asds = [ "qtools-ui-notification" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/qtools-ui/2020-02-18/qtools-ui-20200218-git.tgz";
-      sha256 = "0zlygq42mi2ngk8q7a36k2rp6ydb98gryfxvcbg3dijg34i70f2z";
-      system = "qtools-ui-notification";
-      asd = "qtools-ui-notification";
-    });
-    systems = [ "qtools-ui-notification" ];
-    lispLibs = [ (getAttr "qtools-ui-base" pkgs) ];
-  };
-  qtools-ui-options = {
-    pname = "qtools-ui-options";
-    version = "20200218-git";
-    asds = [ "qtools-ui-options" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/qtools-ui/2020-02-18/qtools-ui-20200218-git.tgz";
-      sha256 = "0zlygq42mi2ngk8q7a36k2rp6ydb98gryfxvcbg3dijg34i70f2z";
-      system = "qtools-ui-options";
-      asd = "qtools-ui-options";
-    });
-    systems = [ "qtools-ui-options" ];
-    lispLibs = [ (getAttr "closer-mop" pkgs) (getAttr "qtools-ui-base" pkgs) (getAttr "qtools-ui-color-picker" pkgs) (getAttr "qtools-ui-color-triangle" pkgs) (getAttr "qtools-ui-helpers" pkgs) (getAttr "qtools-ui-listing" pkgs) (getAttr "qtools-ui-slider" pkgs) ];
-  };
-  qtools-ui-panels = {
-    pname = "qtools-ui-panels";
-    version = "20200218-git";
-    asds = [ "qtools-ui-panels" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/qtools-ui/2020-02-18/qtools-ui-20200218-git.tgz";
-      sha256 = "0zlygq42mi2ngk8q7a36k2rp6ydb98gryfxvcbg3dijg34i70f2z";
-      system = "qtools-ui-panels";
-      asd = "qtools-ui-panels";
-    });
-    systems = [ "qtools-ui-panels" ];
-    lispLibs = [ (getAttr "qtools-ui-base" pkgs) (getAttr "qtools-ui-compass" pkgs) (getAttr "qtools-ui-helpers" pkgs) (getAttr "qtools-ui-splitter" pkgs) ];
-  };
-  qtools-ui-placeholder-text-edit = {
-    pname = "qtools-ui-placeholder-text-edit";
-    version = "20200218-git";
-    asds = [ "qtools-ui-placeholder-text-edit" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/qtools-ui/2020-02-18/qtools-ui-20200218-git.tgz";
-      sha256 = "0zlygq42mi2ngk8q7a36k2rp6ydb98gryfxvcbg3dijg34i70f2z";
-      system = "qtools-ui-placeholder-text-edit";
-      asd = "qtools-ui-placeholder-text-edit";
-    });
-    systems = [ "qtools-ui-placeholder-text-edit" ];
-    lispLibs = [ (getAttr "qtools-ui-base" pkgs) (getAttr "qtools-ui-fixed-qtextedit" pkgs) ];
-  };
-  qtools-ui-plot = {
-    pname = "qtools-ui-plot";
-    version = "20200218-git";
-    asds = [ "qtools-ui-plot" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/qtools-ui/2020-02-18/qtools-ui-20200218-git.tgz";
-      sha256 = "0zlygq42mi2ngk8q7a36k2rp6ydb98gryfxvcbg3dijg34i70f2z";
-      system = "qtools-ui-plot";
-      asd = "qtools-ui-plot";
-    });
-    systems = [ "qtools-ui-plot" ];
-    lispLibs = [ (getAttr "qtools-ui-base" pkgs) (getAttr "qtools-ui-helpers" pkgs) ];
-  };
-  qtools-ui-progress-bar = {
-    pname = "qtools-ui-progress-bar";
-    version = "20200218-git";
-    asds = [ "qtools-ui-progress-bar" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/qtools-ui/2020-02-18/qtools-ui-20200218-git.tgz";
-      sha256 = "0zlygq42mi2ngk8q7a36k2rp6ydb98gryfxvcbg3dijg34i70f2z";
-      system = "qtools-ui-progress-bar";
-      asd = "qtools-ui-progress-bar";
-    });
-    systems = [ "qtools-ui-progress-bar" ];
-    lispLibs = [ (getAttr "qtools-ui-base" pkgs) ];
-  };
-  qtools-ui-repl = {
-    pname = "qtools-ui-repl";
-    version = "20200218-git";
-    asds = [ "qtools-ui-repl" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/qtools-ui/2020-02-18/qtools-ui-20200218-git.tgz";
-      sha256 = "0zlygq42mi2ngk8q7a36k2rp6ydb98gryfxvcbg3dijg34i70f2z";
-      system = "qtools-ui-repl";
-      asd = "qtools-ui-repl";
-    });
-    systems = [ "qtools-ui-repl" ];
-    lispLibs = [ (getAttr "bordeaux-threads" pkgs) (getAttr "qtools-ui-base" pkgs) (getAttr "trivial-gray-streams" pkgs) ];
-  };
-  qtools-ui-slider = {
-    pname = "qtools-ui-slider";
-    version = "20200218-git";
-    asds = [ "qtools-ui-slider" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/qtools-ui/2020-02-18/qtools-ui-20200218-git.tgz";
-      sha256 = "0zlygq42mi2ngk8q7a36k2rp6ydb98gryfxvcbg3dijg34i70f2z";
-      system = "qtools-ui-slider";
-      asd = "qtools-ui-slider";
-    });
-    systems = [ "qtools-ui-slider" ];
-    lispLibs = [ (getAttr "qtools-ui-base" pkgs) (getAttr "qtools-ui-helpers" pkgs) ];
-  };
-  qtools-ui-spellchecked-text-edit = {
-    pname = "qtools-ui-spellchecked-text-edit";
-    version = "20200218-git";
-    asds = [ "qtools-ui-spellchecked-text-edit" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/qtools-ui/2020-02-18/qtools-ui-20200218-git.tgz";
-      sha256 = "0zlygq42mi2ngk8q7a36k2rp6ydb98gryfxvcbg3dijg34i70f2z";
-      system = "qtools-ui-spellchecked-text-edit";
-      asd = "qtools-ui-spellchecked-text-edit";
-    });
-    systems = [ "qtools-ui-spellchecked-text-edit" ];
-    lispLibs = [ (getAttr "qtools-ui-base" pkgs) (getAttr "qtools-ui-fixed-qtextedit" pkgs) (getAttr "qtools-ui-helpers" pkgs) (getAttr "spell" pkgs) ];
-  };
-  qtools-ui-splitter = {
-    pname = "qtools-ui-splitter";
-    version = "20200218-git";
-    asds = [ "qtools-ui-splitter" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/qtools-ui/2020-02-18/qtools-ui-20200218-git.tgz";
-      sha256 = "0zlygq42mi2ngk8q7a36k2rp6ydb98gryfxvcbg3dijg34i70f2z";
-      system = "qtools-ui-splitter";
-      asd = "qtools-ui-splitter";
-    });
-    systems = [ "qtools-ui-splitter" ];
-    lispLibs = [ (getAttr "qtools-ui-base" pkgs) (getAttr "qtools-ui-container" pkgs) (getAttr "qtools-ui-helpers" pkgs) ];
-  };
-  qtools-ui-svgtools = {
-    pname = "qtools-ui-svgtools";
-    version = "20200218-git";
-    asds = [ "qtools-ui-svgtools" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/qtools-ui/2020-02-18/qtools-ui-20200218-git.tgz";
-      sha256 = "0zlygq42mi2ngk8q7a36k2rp6ydb98gryfxvcbg3dijg34i70f2z";
-      system = "qtools-ui-svgtools";
-      asd = "qtools-ui-svgtools";
-    });
-    systems = [ "qtools-ui-svgtools" ];
-    lispLibs = [ (getAttr "qtsvg" pkgs) (getAttr "qtools-ui-base" pkgs) ];
-  };
-  qtopengl = {
-    pname = "qtopengl";
-    version = "20210531-git";
-    asds = [ "qtopengl" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/qt-libs/2021-05-31/qt-libs-20210531-git.tgz";
-      sha256 = "0why7cssadw20jg382k6mg2lgk5b3b3nwyyvjafaz90h0ljf0b9w";
-      system = "qtopengl";
-      asd = "qtopengl";
-    });
-    systems = [ "qtopengl" ];
-    lispLibs = [ (getAttr "qt_plus_libs" pkgs) (getAttr "qt-libs" pkgs) (getAttr "qtcore" pkgs) (getAttr "qtgui" pkgs) ];
-  };
-  qtscript = {
-    pname = "qtscript";
-    version = "20210531-git";
-    asds = [ "qtscript" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/qt-libs/2021-05-31/qt-libs-20210531-git.tgz";
-      sha256 = "0why7cssadw20jg382k6mg2lgk5b3b3nwyyvjafaz90h0ljf0b9w";
-      system = "qtscript";
-      asd = "qtscript";
-    });
-    systems = [ "qtscript" ];
-    lispLibs = [ (getAttr "qt_plus_libs" pkgs) (getAttr "qt-libs" pkgs) (getAttr "qtcore" pkgs) ];
-  };
-  qtsql = {
-    pname = "qtsql";
-    version = "20210531-git";
-    asds = [ "qtsql" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/qt-libs/2021-05-31/qt-libs-20210531-git.tgz";
-      sha256 = "0why7cssadw20jg382k6mg2lgk5b3b3nwyyvjafaz90h0ljf0b9w";
-      system = "qtsql";
-      asd = "qtsql";
-    });
-    systems = [ "qtsql" ];
-    lispLibs = [ (getAttr "qt_plus_libs" pkgs) (getAttr "qt-libs" pkgs) (getAttr "qtcore" pkgs) (getAttr "qtgui" pkgs) ];
-  };
-  qtsvg = {
-    pname = "qtsvg";
-    version = "20210531-git";
-    asds = [ "qtsvg" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/qt-libs/2021-05-31/qt-libs-20210531-git.tgz";
-      sha256 = "0why7cssadw20jg382k6mg2lgk5b3b3nwyyvjafaz90h0ljf0b9w";
-      system = "qtsvg";
-      asd = "qtsvg";
-    });
-    systems = [ "qtsvg" ];
-    lispLibs = [ (getAttr "qt_plus_libs" pkgs) (getAttr "qt-libs" pkgs) (getAttr "qtcore" pkgs) (getAttr "qtgui" pkgs) ];
-  };
-  qttest = {
-    pname = "qttest";
-    version = "20210531-git";
-    asds = [ "qttest" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/qt-libs/2021-05-31/qt-libs-20210531-git.tgz";
-      sha256 = "0why7cssadw20jg382k6mg2lgk5b3b3nwyyvjafaz90h0ljf0b9w";
-      system = "qttest";
-      asd = "qttest";
-    });
-    systems = [ "qttest" ];
-    lispLibs = [ (getAttr "qt_plus_libs" pkgs) (getAttr "qt-libs" pkgs) (getAttr "qtcore" pkgs) (getAttr "qtgui" pkgs) ];
-  };
-  qtuitools = {
-    pname = "qtuitools";
-    version = "20210531-git";
-    asds = [ "qtuitools" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/qt-libs/2021-05-31/qt-libs-20210531-git.tgz";
-      sha256 = "0why7cssadw20jg382k6mg2lgk5b3b3nwyyvjafaz90h0ljf0b9w";
-      system = "qtuitools";
-      asd = "qtuitools";
-    });
-    systems = [ "qtuitools" ];
-    lispLibs = [ (getAttr "qt_plus_libs" pkgs) (getAttr "qt-libs" pkgs) (getAttr "qtcore" pkgs) (getAttr "qtgui" pkgs) ];
-  };
-  qtwebkit = {
-    pname = "qtwebkit";
-    version = "20210531-git";
-    asds = [ "qtwebkit" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/qt-libs/2021-05-31/qt-libs-20210531-git.tgz";
-      sha256 = "0why7cssadw20jg382k6mg2lgk5b3b3nwyyvjafaz90h0ljf0b9w";
-      system = "qtwebkit";
-      asd = "qtwebkit";
-    });
-    systems = [ "qtwebkit" ];
-    lispLibs = [ (getAttr "qt_plus_libs" pkgs) (getAttr "qt-libs" pkgs) (getAttr "qtcore" pkgs) (getAttr "qtgui" pkgs) (getAttr "qtnetwork" pkgs) ];
-  };
-  qtxml = {
-    pname = "qtxml";
-    version = "20210531-git";
-    asds = [ "qtxml" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/qt-libs/2021-05-31/qt-libs-20210531-git.tgz";
-      sha256 = "0why7cssadw20jg382k6mg2lgk5b3b3nwyyvjafaz90h0ljf0b9w";
-      system = "qtxml";
-      asd = "qtxml";
-    });
-    systems = [ "qtxml" ];
-    lispLibs = [ (getAttr "qt_plus_libs" pkgs) (getAttr "qt-libs" pkgs) (getAttr "qtcore" pkgs) ];
-  };
-  qtxmlpatterns = {
-    pname = "qtxmlpatterns";
-    version = "20210531-git";
-    asds = [ "qtxmlpatterns" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/qt-libs/2021-05-31/qt-libs-20210531-git.tgz";
-      sha256 = "0why7cssadw20jg382k6mg2lgk5b3b3nwyyvjafaz90h0ljf0b9w";
-      system = "qtxmlpatterns";
-      asd = "qtxmlpatterns";
-    });
-    systems = [ "qtxmlpatterns" ];
-    lispLibs = [ (getAttr "qt_plus_libs" pkgs) (getAttr "qt-libs" pkgs) (getAttr "qtcore" pkgs) (getAttr "qtnetwork" pkgs) ];
-  };
-  quad-tree = {
-    pname = "quad-tree";
-    version = "20220707-git";
-    asds = [ "quad-tree" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/quad-tree/2022-07-07/quad-tree-20220707-git.tgz";
-      sha256 = "1pg43zw75dbqxs8vca3fynqfvza59v1fmwh9m4x0jrnw7ysgkl6j";
-      system = "quad-tree";
-      asd = "quad-tree";
-    });
-    systems = [ "quad-tree" ];
-    lispLibs = [ (getAttr "mfiano-utils" pkgs) (getAttr "origin" pkgs) ];
-  };
-  quadpack = {
-    pname = "quadpack";
-    version = "20200925-git";
-    asds = [ "quadpack" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/f2cl/2020-09-25/f2cl-20200925-git.tgz";
-      sha256 = "0kq1lrz0sg4kj64w0ysihnfwi65pami362fs2mvpyf1yhgxmq08y";
-      system = "quadpack";
-      asd = "quadpack";
-    });
-    systems = [ "quadpack" ];
-    lispLibs = [ (getAttr "f2cl" pkgs) ];
-  };
-  quadpack_slash_mach-par = {
-    pname = "quadpack_mach-par";
-    version = "20200925-git";
-    asds = [ "quadpack" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/f2cl/2020-09-25/f2cl-20200925-git.tgz";
-      sha256 = "0kq1lrz0sg4kj64w0ysihnfwi65pami362fs2mvpyf1yhgxmq08y";
-      system = "quadpack";
-      asd = "quadpack";
-    });
-    systems = [ "quadpack/mach-par" ];
-    lispLibs = [  ];
-    meta = {
-      broken = true;
-    };
-  };
-  quadpack_slash_tests = {
-    pname = "quadpack_tests";
-    version = "20200925-git";
-    asds = [ "quadpack" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/f2cl/2020-09-25/f2cl-20200925-git.tgz";
-      sha256 = "0kq1lrz0sg4kj64w0ysihnfwi65pami362fs2mvpyf1yhgxmq08y";
-      system = "quadpack";
-      asd = "quadpack";
-    });
-    systems = [ "quadpack/tests" ];
-    lispLibs = [ (getAttr "quadpack" pkgs) (getAttr "rt" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  quads = {
-    pname = "quads";
-    version = "20200427-git";
-    asds = [ "quads" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/sucle/2020-04-27/sucle-20200427-git.tgz";
-      sha256 = "033akkn9zxc6qdgycgxgybx3v23638245xrx29x2cbwnvg3i1q34";
-      system = "quads";
-      asd = "quads";
-    });
-    systems = [ "quads" ];
-    lispLibs = [ (getAttr "utility" pkgs) ];
-  };
-  quadtree = {
-    pname = "quadtree";
-    version = "20150709-git";
-    asds = [ "quadtree" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/quadtree/2015-07-09/quadtree-20150709-git.tgz";
-      sha256 = "0590f0sbv4qg590d2bb7ypncg3wn5xjapi24w78mnzr9bdnhh4vx";
-      system = "quadtree";
-      asd = "quadtree";
-    });
-    systems = [ "quadtree" ];
-    lispLibs = [  ];
-  };
-  quadtree-test = {
-    pname = "quadtree-test";
-    version = "20150709-git";
-    asds = [ "quadtree-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/quadtree/2015-07-09/quadtree-20150709-git.tgz";
-      sha256 = "0590f0sbv4qg590d2bb7ypncg3wn5xjapi24w78mnzr9bdnhh4vx";
-      system = "quadtree-test";
-      asd = "quadtree-test";
-    });
-    systems = [ "quadtree-test" ];
-    lispLibs = [ (getAttr "prove" pkgs) (getAttr "prove-asdf" pkgs) (getAttr "quadtree" pkgs) ];
-  };
-  quantile-estimator = {
-    pname = "quantile-estimator";
-    version = "20160825-git";
-    asds = [ "quantile-estimator" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/quantile-estimator.cl/2016-08-25/quantile-estimator.cl-20160825-git.tgz";
-      sha256 = "1rrazbl0gbsymynlxp7ild6wvwp6csmdig4hwrp3wjvqhdl8j3mj";
-      system = "quantile-estimator";
-      asd = "quantile-estimator";
-    });
-    systems = [ "quantile-estimator" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) ];
-  };
-  quantile-estimator_dot_test = {
-    pname = "quantile-estimator.test";
-    version = "20160825-git";
-    asds = [ "quantile-estimator.test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/quantile-estimator.cl/2016-08-25/quantile-estimator.cl-20160825-git.tgz";
-      sha256 = "1rrazbl0gbsymynlxp7ild6wvwp6csmdig4hwrp3wjvqhdl8j3mj";
-      system = "quantile-estimator.test";
-      asd = "quantile-estimator.test";
-    });
-    systems = [ "quantile-estimator.test" ];
-    lispLibs = [ (getAttr "log4cl" pkgs) (getAttr "mw-equiv" pkgs) (getAttr "prove" pkgs) (getAttr "prove-asdf" pkgs) (getAttr "quantile-estimator" pkgs) ];
-  };
-  quasiquote-2_dot_0 = {
-    pname = "quasiquote-2.0";
-    version = "20150505-git";
-    asds = [ "quasiquote-2.0" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/quasiquote-2.0/2015-05-05/quasiquote-2.0-20150505-git.tgz";
-      sha256 = "1g0s3aplrgmdjj8k1wrx3dkqdsl4lka2nmgdng0rcd93xp11q6hn";
-      system = "quasiquote-2.0";
-      asd = "quasiquote-2.0";
-    });
-    systems = [ "quasiquote-2.0" ];
-    lispLibs = [ (getAttr "iterate" pkgs) ];
-  };
-  quasiquote-2_dot_0-tests = {
-    pname = "quasiquote-2.0-tests";
-    version = "20150505-git";
-    asds = [ "quasiquote-2.0-tests" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/quasiquote-2.0/2015-05-05/quasiquote-2.0-20150505-git.tgz";
-      sha256 = "1g0s3aplrgmdjj8k1wrx3dkqdsl4lka2nmgdng0rcd93xp11q6hn";
-      system = "quasiquote-2.0-tests";
-      asd = "quasiquote-2.0";
-    });
-    systems = [ "quasiquote-2.0-tests" ];
-    lispLibs = [ (getAttr "fiveam" pkgs) (getAttr "quasiquote-2_dot_0" pkgs) ];
-  };
-  queen = {
-    pname = "queen";
-    version = "20160929-git";
-    asds = [ "queen" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/queen.lisp/2016-09-29/queen.lisp-20160929-git.tgz";
-      sha256 = "187mlbhxxhgj7cx3j9vzv3a26mxnibwbp5hcbn92wzw7m04w0mln";
-      system = "queen";
-      asd = "queen";
-    });
-    systems = [ "queen" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "anaphora" pkgs) (getAttr "cl-ppcre-unicode" pkgs) (getAttr "named-readtables" pkgs) ];
-  };
-  query-fs = {
-    pname = "query-fs";
-    version = "20221106-git";
-    asds = [ "query-fs" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/query-fs/2022-11-06/query-fs-20221106-git.tgz";
-      sha256 = "010ljk1p8r5rm6b5fpznk9m241362fwy3qk8xdx836ncs8pzzyqf";
-      system = "query-fs";
-      asd = "query-fs";
-    });
-    systems = [ "query-fs" ];
-    lispLibs = [ (getAttr "bordeaux-threads" pkgs) (getAttr "cl-fuse" pkgs) (getAttr "cl-fuse-meta-fs" pkgs) (getAttr "cl-ppcre" pkgs) (getAttr "command-line-arguments" pkgs) (getAttr "iterate" pkgs) (getAttr "trivial-backtrace" pkgs) ];
-  };
-  query-repl = {
-    pname = "query-repl";
-    version = "20220331-git";
-    asds = [ "query-repl" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/query-repl/2022-03-31/query-repl-20220331-git.tgz";
-      sha256 = "0gzrr1k7071hdmd64i5lqmg62i3yqim7nmcc9r94sry47bkp16v2";
-      system = "query-repl";
-      asd = "query-repl";
-    });
-    systems = [ "query-repl" ];
-    lispLibs = [ (getAttr "check-bnf" pkgs) (getAttr "jingoh_dot_documentizer" pkgs) (getAttr "uiop" pkgs) ];
-  };
-  query-repl_dot_test = {
-    pname = "query-repl.test";
-    version = "20220331-git";
-    asds = [ "query-repl.test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/query-repl/2022-03-31/query-repl-20220331-git.tgz";
-      sha256 = "0gzrr1k7071hdmd64i5lqmg62i3yqim7nmcc9r94sry47bkp16v2";
-      system = "query-repl.test";
-      asd = "query-repl.test";
-    });
-    systems = [ "query-repl.test" ];
-    lispLibs = [ (getAttr "jingoh" pkgs) (getAttr "query-repl" pkgs) ];
-  };
-  queues = {
-    pname = "queues";
-    version = "20170124-git";
-    asds = [ "queues" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/queues/2017-01-24/queues-20170124-git.tgz";
-      sha256 = "0wdhfnzi4v6d97pggzj2aw55si94w4327br94jrmyvwf351wqjvv";
-      system = "queues";
-      asd = "queues";
-    });
-    systems = [ "queues" ];
-    lispLibs = [  ];
-  };
-  queues_dot_priority-cqueue = {
-    pname = "queues.priority-cqueue";
-    version = "20170124-git";
-    asds = [ "queues.priority-cqueue" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/queues/2017-01-24/queues-20170124-git.tgz";
-      sha256 = "0wdhfnzi4v6d97pggzj2aw55si94w4327br94jrmyvwf351wqjvv";
-      system = "queues.priority-cqueue";
-      asd = "queues.priority-cqueue";
-    });
-    systems = [ "queues.priority-cqueue" ];
-    lispLibs = [ (getAttr "bordeaux-threads" pkgs) (getAttr "queues" pkgs) (getAttr "queues_dot_priority-queue" pkgs) ];
-  };
-  queues_dot_priority-queue = {
-    pname = "queues.priority-queue";
-    version = "20170124-git";
-    asds = [ "queues.priority-queue" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/queues/2017-01-24/queues-20170124-git.tgz";
-      sha256 = "0wdhfnzi4v6d97pggzj2aw55si94w4327br94jrmyvwf351wqjvv";
-      system = "queues.priority-queue";
-      asd = "queues.priority-queue";
-    });
-    systems = [ "queues.priority-queue" ];
-    lispLibs = [ (getAttr "queues" pkgs) ];
-  };
-  queues_dot_simple-cqueue = {
-    pname = "queues.simple-cqueue";
-    version = "20170124-git";
-    asds = [ "queues.simple-cqueue" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/queues/2017-01-24/queues-20170124-git.tgz";
-      sha256 = "0wdhfnzi4v6d97pggzj2aw55si94w4327br94jrmyvwf351wqjvv";
-      system = "queues.simple-cqueue";
-      asd = "queues.simple-cqueue";
-    });
-    systems = [ "queues.simple-cqueue" ];
-    lispLibs = [ (getAttr "bordeaux-threads" pkgs) (getAttr "queues" pkgs) (getAttr "queues_dot_simple-queue" pkgs) ];
-  };
-  queues_dot_simple-queue = {
-    pname = "queues.simple-queue";
-    version = "20170124-git";
-    asds = [ "queues.simple-queue" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/queues/2017-01-24/queues-20170124-git.tgz";
-      sha256 = "0wdhfnzi4v6d97pggzj2aw55si94w4327br94jrmyvwf351wqjvv";
-      system = "queues.simple-queue";
-      asd = "queues.simple-queue";
-    });
-    systems = [ "queues.simple-queue" ];
-    lispLibs = [ (getAttr "queues" pkgs) ];
-  };
-  quick-patch = {
-    pname = "quick-patch";
-    version = "20221106-git";
-    asds = [ "quick-patch" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/quick-patch/2022-11-06/quick-patch-20221106-git.tgz";
-      sha256 = "1v56f630ld1kkfx9f20hqbqfxyv7cpqrs2zp324m2h6rnfs5xl19";
-      system = "quick-patch";
-      asd = "quick-patch";
-    });
-    systems = [ "quick-patch" ];
-    lispLibs = [  ];
-  };
-  quick-patch_slash_tests = {
-    pname = "quick-patch_tests";
-    version = "20221106-git";
-    asds = [ "quick-patch" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/quick-patch/2022-11-06/quick-patch-20221106-git.tgz";
-      sha256 = "1v56f630ld1kkfx9f20hqbqfxyv7cpqrs2zp324m2h6rnfs5xl19";
-      system = "quick-patch";
-      asd = "quick-patch";
-    });
-    systems = [ "quick-patch/tests" ];
-    lispLibs = [ (getAttr "cl-mock" pkgs) (getAttr "str" pkgs) (getAttr "fiveam" pkgs) (getAttr "quick-patch" pkgs) (getAttr "tmpdir" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  quickapp = {
-    pname = "quickapp";
-    version = "20160825-git";
-    asds = [ "quickapp" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/quickapp/2016-08-25/quickapp-20160825-git.tgz";
-      sha256 = "0rhhxwggbh9sf3c4c9fv39c5imy48416mwf0dkhqpnm8x55xbw22";
-      system = "quickapp";
-      asd = "quickapp";
-    });
-    systems = [ "quickapp" ];
-    lispLibs = [  ];
-  };
-  quicklisp-slime-helper = {
-    pname = "quicklisp-slime-helper";
-    version = "20150709-git";
-    asds = [ "quicklisp-slime-helper" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/quicklisp-slime-helper/2015-07-09/quicklisp-slime-helper-20150709-git.tgz";
-      sha256 = "14b1zg26h75pnhj3ic0h9i5jbmwf8wjp91scbcg1ra9fyhh73pa6";
-      system = "quicklisp-slime-helper";
-      asd = "quicklisp-slime-helper";
-    });
-    systems = [ "quicklisp-slime-helper" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "swank" pkgs) ];
-  };
-  quicklisp-stats = {
-    pname = "quicklisp-stats";
-    version = "20210411-git";
-    asds = [ "quicklisp-stats" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/quicklisp-stats/2021-04-11/quicklisp-stats-20210411-git.tgz";
-      sha256 = "0v8dgmlgd283n1g486q4sj2mghgdvgywg2nqp43nnrfc04mkvgc0";
-      system = "quicklisp-stats";
-      asd = "quicklisp-stats";
-    });
-    systems = [ "quicklisp-stats" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "drakma" pkgs) (getAttr "split-sequence" pkgs) ];
-  };
-  quickproject = {
-    pname = "quickproject";
-    version = "1.4.1";
-    asds = [ "quickproject" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/quickproject/2019-12-27/quickproject-1.4.1.tgz";
-      sha256 = "1szs8p2wr1yr9mjmj3h3557l6wxzzga0iszimb68z0hb1jj3lva6";
-      system = "quickproject";
-      asd = "quickproject";
-    });
-    systems = [ "quickproject" ];
-    lispLibs = [ (getAttr "cl-fad" pkgs) (getAttr "html-template" pkgs) ];
-  };
-  quicksearch = {
-    pname = "quicksearch";
-    version = "20171019-git";
-    asds = [ "quicksearch" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/quicksearch/2017-10-19/quicksearch-20171019-git.tgz";
-      sha256 = "16k19zjkhh7r64vjq371k5jwjs7cdfjz83flh561n4h4v1z89fps";
-      system = "quicksearch";
-      asd = "quicksearch";
-    });
-    systems = [ "quicksearch" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "anaphora" pkgs) (getAttr "bordeaux-threads" pkgs) (getAttr "cl-ppcre" pkgs) (getAttr "do-urlencode" pkgs) (getAttr "drakma" pkgs) (getAttr "flexi-streams" pkgs) (getAttr "html-entities" pkgs) (getAttr "iterate" pkgs) (getAttr "yason" pkgs) ];
-  };
-  quickutil = {
-    pname = "quickutil";
-    version = "20210807-git";
-    asds = [ "quickutil" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/quickutil/2021-08-07/quickutil-20210807-git.tgz";
-      sha256 = "0d4xrgsh5pj4cgj1mqsdyi4xvq04jyb2m4c3sdx94jsx3r83hldz";
-      system = "quickutil";
-      asd = "quickutil";
-    });
-    systems = [ "quickutil" ];
-    lispLibs = [ (getAttr "quickutil-client" pkgs) ];
-  };
-  quickutil-client = {
-    pname = "quickutil-client";
-    version = "20210807-git";
-    asds = [ "quickutil-client" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/quickutil/2021-08-07/quickutil-20210807-git.tgz";
-      sha256 = "0d4xrgsh5pj4cgj1mqsdyi4xvq04jyb2m4c3sdx94jsx3r83hldz";
-      system = "quickutil-client";
-      asd = "quickutil-client";
-    });
-    systems = [ "quickutil-client" ];
-    lispLibs = [ (getAttr "cl-fad" pkgs) (getAttr "quickutil-client-management" pkgs) (getAttr "quickutil-utilities" pkgs) ];
-  };
-  quickutil-client-management = {
-    pname = "quickutil-client-management";
-    version = "20210807-git";
-    asds = [ "quickutil-client-management" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/quickutil/2021-08-07/quickutil-20210807-git.tgz";
-      sha256 = "0d4xrgsh5pj4cgj1mqsdyi4xvq04jyb2m4c3sdx94jsx3r83hldz";
-      system = "quickutil-client-management";
-      asd = "quickutil-client-management";
-    });
-    systems = [ "quickutil-client-management" ];
-    lispLibs = [ (getAttr "trivial-garbage" pkgs) ];
-  };
-  quickutil-server = {
-    pname = "quickutil-server";
-    version = "20210807-git";
-    asds = [ "quickutil-server" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/quickutil/2021-08-07/quickutil-20210807-git.tgz";
-      sha256 = "0d4xrgsh5pj4cgj1mqsdyi4xvq04jyb2m4c3sdx94jsx3r83hldz";
-      system = "quickutil-server";
-      asd = "quickutil-server";
-    });
-    systems = [ "quickutil-server" ];
-    lispLibs = [ (getAttr "assoc-utils" pkgs) (getAttr "closure-template" pkgs) (getAttr "dbi" pkgs) (getAttr "cl-fad" pkgs) (getAttr "cl-markdown" pkgs) (getAttr "cl-ppcre" pkgs) (getAttr "cl-syntax" pkgs) (getAttr "cl-syntax-annot" pkgs) (getAttr "clack" pkgs) (getAttr "lack" pkgs) (getAttr "lack-component" pkgs) (getAttr "lack-middleware-csrf" pkgs) (getAttr "lack-request" pkgs) (getAttr "lack-response" pkgs) (getAttr "ningle" pkgs) (getAttr "quickutil-utilities" pkgs) (getAttr "trivial-shell" pkgs) (getAttr "yason" pkgs) ];
-  };
-  quickutil-utilities = {
-    pname = "quickutil-utilities";
-    version = "20210807-git";
-    asds = [ "quickutil-utilities" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/quickutil/2021-08-07/quickutil-20210807-git.tgz";
-      sha256 = "0d4xrgsh5pj4cgj1mqsdyi4xvq04jyb2m4c3sdx94jsx3r83hldz";
-      system = "quickutil-utilities";
-      asd = "quickutil-utilities";
-    });
-    systems = [ "quickutil-utilities" ];
-    lispLibs = [ (getAttr "cl-heredoc" pkgs) ];
-  };
-  quickutil-utilities-test = {
-    pname = "quickutil-utilities-test";
-    version = "20210807-git";
-    asds = [ "quickutil-utilities-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/quickutil/2021-08-07/quickutil-20210807-git.tgz";
-      sha256 = "0d4xrgsh5pj4cgj1mqsdyi4xvq04jyb2m4c3sdx94jsx3r83hldz";
-      system = "quickutil-utilities-test";
-      asd = "quickutil-utilities-test";
-    });
-    systems = [ "quickutil-utilities-test" ];
-    lispLibs = [ (getAttr "quickutil-client" pkgs) (getAttr "quickutil-server" pkgs) ];
-  };
-  quilc = {
-    pname = "quilc";
-    version = "v1.26.0";
-    asds = [ "quilc" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/quilc/2021-12-09/quilc-v1.26.0.tgz";
-      sha256 = "09qp2d6xgq4cmg6nfsdz0gbs3rvz3ln0kawmry6cls14lxnljjrr";
-      system = "quilc";
-      asd = "quilc";
-    });
-    systems = [ "quilc" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "bordeaux-threads" pkgs) (getAttr "cl-ppcre" pkgs) (getAttr "cl-syslog" pkgs) (getAttr "command-line-arguments" pkgs) (getAttr "drakma" pkgs) (getAttr "magicl" pkgs) (getAttr "cl-quil" pkgs) (getAttr "cl-quil-benchmarking" pkgs) (getAttr "rpcq" pkgs) (getAttr "swank" pkgs) (getAttr "split-sequence" pkgs) (getAttr "trivial-features" pkgs) (getAttr "uiop" pkgs) (getAttr "yason" pkgs) ];
-  };
-  quilc-tests = {
-    pname = "quilc-tests";
-    version = "v1.26.0";
-    asds = [ "quilc-tests" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/quilc/2021-12-09/quilc-v1.26.0.tgz";
-      sha256 = "09qp2d6xgq4cmg6nfsdz0gbs3rvz3ln0kawmry6cls14lxnljjrr";
-      system = "quilc-tests";
-      asd = "quilc-tests";
-    });
-    systems = [ "quilc-tests" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "bordeaux-threads" pkgs) (getAttr "fiasco" pkgs) (getAttr "quilc" pkgs) (getAttr "uiop" pkgs) (getAttr "uuid" pkgs) ];
-  };
-  quine-mccluskey = {
-    pname = "quine-mccluskey";
-    version = "20141217-git";
-    asds = [ "quine-mccluskey" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-logic/2014-12-17/cl-logic-20141217-git.tgz";
-      sha256 = "17n2wzqali3j6b7pqbydipwlxgwdrj4mdnsgwjdyz32n8jvfyjwh";
-      system = "quine-mccluskey";
-      asd = "cl-logic";
-    });
-    systems = [ "quine-mccluskey" ];
-    lispLibs = [  ];
-  };
-  quri = {
-    pname = "quri";
-    version = "20221106-git";
-    asds = [ "quri" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/quri/2022-11-06/quri-20221106-git.tgz";
-      sha256 = "1crzgavvzsjp3xsddp4a5kd3ay0bn4scs839f0hk2yp482mg9jcx";
-      system = "quri";
-      asd = "quri";
-    });
-    systems = [ "quri" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "babel" pkgs) (getAttr "cl-utilities" pkgs) (getAttr "split-sequence" pkgs) ];
-  };
-  quri-test = {
-    pname = "quri-test";
-    version = "20221106-git";
-    asds = [ "quri-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/quri/2022-11-06/quri-20221106-git.tgz";
-      sha256 = "1crzgavvzsjp3xsddp4a5kd3ay0bn4scs839f0hk2yp482mg9jcx";
-      system = "quri-test";
-      asd = "quri-test";
-    });
-    systems = [ "quri-test" ];
-    lispLibs = [ (getAttr "prove" pkgs) (getAttr "prove-asdf" pkgs) (getAttr "quri" pkgs) ];
-  };
-  quux-hunchentoot = {
-    pname = "quux-hunchentoot";
-    version = "20211230-git";
-    asds = [ "quux-hunchentoot" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/quux-hunchentoot/2021-12-30/quux-hunchentoot-20211230-git.tgz";
-      sha256 = "0v0x4hzzfm835blqbp00vmj74gaq8wyldrnfj0x5s6zfl64w135y";
-      system = "quux-hunchentoot";
-      asd = "quux-hunchentoot";
-    });
-    systems = [ "quux-hunchentoot" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "bordeaux-threads" pkgs) (getAttr "hunchentoot" pkgs) (getAttr "lil" pkgs) (getAttr "lparallel" pkgs) (getAttr "trivia" pkgs) ];
-  };
-  quux-time = {
-    pname = "quux-time";
-    version = "20150407-git";
-    asds = [ "quux-time" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/quux-time/2015-04-07/quux-time-20150407-git.tgz";
-      sha256 = "0hsa2n1j0abhw8na9fql47rq1rxpf2vkwg2mbb1c3ax56r8dsh0v";
-      system = "quux-time";
-      asd = "quux-time";
-    });
-    systems = [ "quux-time" ];
-    lispLibs = [  ];
-  };
-  qvm = {
-    pname = "qvm";
-    version = "v1.17.2";
-    asds = [ "qvm" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/qvm/2021-06-30/qvm-v1.17.2.tgz";
-      sha256 = "1cvmkqfcy7rv5jlim4kh4dvqhd3jk6mw1kwrphaqghjymrf72yp8";
-      system = "qvm";
-      asd = "qvm";
-    });
-    systems = [ "qvm" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cffi" pkgs) (getAttr "cffi-grovel" pkgs) (getAttr "abstract-classes" pkgs) (getAttr "global-vars" pkgs) (getAttr "ieee-floats" pkgs) (getAttr "lparallel" pkgs) (getAttr "magicl" pkgs) (getAttr "mt19937" pkgs) (getAttr "cl-quil" pkgs) (getAttr "static-vectors" pkgs) (getAttr "trivial-features" pkgs) (getAttr "trivial-garbage" pkgs) ];
-  };
-  qvm-app = {
-    pname = "qvm-app";
-    version = "v1.17.2";
-    asds = [ "qvm-app" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/qvm/2021-06-30/qvm-v1.17.2.tgz";
-      sha256 = "1cvmkqfcy7rv5jlim4kh4dvqhd3jk6mw1kwrphaqghjymrf72yp8";
-      system = "qvm-app";
-      asd = "qvm-app";
-    });
-    systems = [ "qvm-app" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "bordeaux-threads" pkgs) (getAttr "cl-fad" pkgs) (getAttr "cl-ppcre" pkgs) (getAttr "cl-syslog" pkgs) (getAttr "command-line-arguments" pkgs) (getAttr "drakma" pkgs) (getAttr "global-vars" pkgs) (getAttr "hunchentoot" pkgs) (getAttr "ieee-floats" pkgs) (getAttr "cl-quil" pkgs) (getAttr "qvm" pkgs) (getAttr "qvm-benchmarks" pkgs) (getAttr "swank" pkgs) (getAttr "trivial-features" pkgs) (getAttr "trivial-garbage" pkgs) (getAttr "uiop" pkgs) (getAttr "yason" pkgs) ];
-  };
-  qvm-app-ng = {
-    pname = "qvm-app-ng";
-    version = "v1.17.2";
-    asds = [ "qvm-app-ng" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/qvm/2021-06-30/qvm-v1.17.2.tgz";
-      sha256 = "1cvmkqfcy7rv5jlim4kh4dvqhd3jk6mw1kwrphaqghjymrf72yp8";
-      system = "qvm-app-ng";
-      asd = "qvm-app-ng";
-    });
-    systems = [ "qvm-app-ng" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "bordeaux-threads" pkgs) (getAttr "cl-algebraic-data-type" pkgs) (getAttr "cl-syslog" pkgs) (getAttr "command-line-arguments" pkgs) (getAttr "global-vars" pkgs) (getAttr "hunchentoot" pkgs) (getAttr "cl-quil" pkgs) (getAttr "qvm" pkgs) (getAttr "trivial-features" pkgs) (getAttr "uiop" pkgs) (getAttr "uuid" pkgs) (getAttr "yason" pkgs) ];
-  };
-  qvm-app-ng-tests = {
-    pname = "qvm-app-ng-tests";
-    version = "v1.17.2";
-    asds = [ "qvm-app-ng-tests" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/qvm/2021-06-30/qvm-v1.17.2.tgz";
-      sha256 = "1cvmkqfcy7rv5jlim4kh4dvqhd3jk6mw1kwrphaqghjymrf72yp8";
-      system = "qvm-app-ng-tests";
-      asd = "qvm-app-ng-tests";
-    });
-    systems = [ "qvm-app-ng-tests" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "drakma" pkgs) (getAttr "fiasco" pkgs) (getAttr "lparallel" pkgs) (getAttr "qvm-app-ng" pkgs) (getAttr "uiop" pkgs) (getAttr "yason" pkgs) ];
-  };
-  qvm-app-tests = {
-    pname = "qvm-app-tests";
-    version = "v1.17.2";
-    asds = [ "qvm-app-tests" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/qvm/2021-06-30/qvm-v1.17.2.tgz";
-      sha256 = "1cvmkqfcy7rv5jlim4kh4dvqhd3jk6mw1kwrphaqghjymrf72yp8";
-      system = "qvm-app-tests";
-      asd = "qvm-app-tests";
-    });
-    systems = [ "qvm-app-tests" ];
-    lispLibs = [ (getAttr "fiasco" pkgs) (getAttr "qvm-app" pkgs) (getAttr "uiop" pkgs) ];
-  };
-  qvm-benchmarks = {
-    pname = "qvm-benchmarks";
-    version = "v1.17.2";
-    asds = [ "qvm-benchmarks" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/qvm/2021-06-30/qvm-v1.17.2.tgz";
-      sha256 = "1cvmkqfcy7rv5jlim4kh4dvqhd3jk6mw1kwrphaqghjymrf72yp8";
-      system = "qvm-benchmarks";
-      asd = "qvm-benchmarks";
-    });
-    systems = [ "qvm-benchmarks" ];
-    lispLibs = [ (getAttr "cl-quil" pkgs) (getAttr "qvm" pkgs) (getAttr "trivial-benchmark" pkgs) (getAttr "yason" pkgs) ];
-  };
-  qvm-examples = {
-    pname = "qvm-examples";
-    version = "v1.17.2";
-    asds = [ "qvm-examples" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/qvm/2021-06-30/qvm-v1.17.2.tgz";
-      sha256 = "1cvmkqfcy7rv5jlim4kh4dvqhd3jk6mw1kwrphaqghjymrf72yp8";
-      system = "qvm-examples";
-      asd = "qvm-examples";
-    });
-    systems = [ "qvm-examples" ];
-    lispLibs = [ (getAttr "cl-grnm" pkgs) (getAttr "cl-quil" pkgs) (getAttr "qvm" pkgs) (getAttr "qvm-app" pkgs) ];
-  };
-  qvm-tests = {
-    pname = "qvm-tests";
-    version = "v1.17.2";
-    asds = [ "qvm-tests" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/qvm/2021-06-30/qvm-v1.17.2.tgz";
-      sha256 = "1cvmkqfcy7rv5jlim4kh4dvqhd3jk6mw1kwrphaqghjymrf72yp8";
-      system = "qvm-tests";
-      asd = "qvm-tests";
-    });
-    systems = [ "qvm-tests" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cffi" pkgs) (getAttr "fiasco" pkgs) (getAttr "cl-quil" pkgs) (getAttr "qvm" pkgs) (getAttr "qvm-examples" pkgs) (getAttr "trivial-garbage" pkgs) ];
-  };
-  qwt = {
-    pname = "qwt";
-    version = "20210531-git";
-    asds = [ "qwt" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/qt-libs/2021-05-31/qt-libs-20210531-git.tgz";
-      sha256 = "0why7cssadw20jg382k6mg2lgk5b3b3nwyyvjafaz90h0ljf0b9w";
-      system = "qwt";
-      asd = "qwt";
-    });
-    systems = [ "qwt" ];
-    lispLibs = [ (getAttr "qt_plus_libs" pkgs) (getAttr "qt-libs" pkgs) (getAttr "qtcore" pkgs) (getAttr "qtgui" pkgs) ];
-  };
-  racer = {
-    pname = "racer";
-    version = "20190710-git";
-    asds = [ "racer" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/racer/2019-07-10/racer-20190710-git.tgz";
-      sha256 = "120x046c6vcrj70vb6ryf04mwbr8c6a15llb68x7h1siij8vwgvk";
-      system = "racer";
-      asd = "racer";
-    });
-    systems = [ "racer" ];
-    lispLibs = [ (getAttr "deflate" pkgs) (getAttr "flexi-streams" pkgs) (getAttr "aserve" pkgs) ];
-  };
-  rail = {
-    pname = "rail";
-    version = "20171227-git";
-    asds = [ "rail" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-rail/2017-12-27/cl-rail-20171227-git.tgz";
-      sha256 = "0vxbxyfl5lw7na8iki1cjp0cd31z2bnxcpdv0x25hq0vch1cb5rj";
-      system = "rail";
-      asd = "rail";
-    });
-    systems = [ "rail" ];
-    lispLibs = [  ];
-  };
-  rail-test = {
-    pname = "rail-test";
-    version = "20171227-git";
-    asds = [ "rail-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-rail/2017-12-27/cl-rail-20171227-git.tgz";
-      sha256 = "0vxbxyfl5lw7na8iki1cjp0cd31z2bnxcpdv0x25hq0vch1cb5rj";
-      system = "rail-test";
-      asd = "rail";
-    });
-    systems = [ "rail-test" ];
-    lispLibs = [ (getAttr "rail" pkgs) (getAttr "fiasco" pkgs) ];
-  };
-  random = {
-    pname = "random";
-    version = "20191007-git";
-    asds = [ "random" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/random/2019-10-07/random-20191007-git.tgz";
-      sha256 = "1fb4mnp85jm9s667y4dgz07klhkr9pvi5xbxws28lbb8iip75y2p";
-      system = "random";
-      asd = "random";
-    });
-    systems = [ "random" ];
-    lispLibs = [ (getAttr "com_dot_google_dot_base" pkgs) ];
-  };
-  random-access-lists = {
-    pname = "random-access-lists";
-    version = "20120208-git";
-    asds = [ "random-access-lists" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/random-access-lists/2012-02-08/random-access-lists-20120208-git.tgz";
-      sha256 = "0wslxxdmmr25hvmcyscph1bjlknm3nzh5g79cif22was1z411m5c";
-      system = "random-access-lists";
-      asd = "random-access-lists";
-    });
-    systems = [ "random-access-lists" ];
-    lispLibs = [ (getAttr "lisp-unit" pkgs) ];
-  };
-  random-sample = {
-    pname = "random-sample";
-    version = "20211230-git";
-    asds = [ "random-sample" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/random-sample/2021-12-30/random-sample-20211230-git.tgz";
-      sha256 = "0nhgca6wf754wbg91h40gx7xq22rawg2pn6l7h02wv1jxac4q6nh";
-      system = "random-sample";
-      asd = "random-sample";
-    });
-    systems = [ "random-sample" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "infix-math" pkgs) (getAttr "named-readtables" pkgs) (getAttr "serapeum" pkgs) ];
-  };
-  random-state = {
-    pname = "random-state";
-    version = "20221106-git";
-    asds = [ "random-state" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/random-state/2022-11-06/random-state-20221106-git.tgz";
-      sha256 = "07qmlzkn0s7qrz06ycsr1idj58w0mjhr30mjwsj7wblmmczilq69";
-      system = "random-state";
-      asd = "random-state";
-    });
-    systems = [ "random-state" ];
-    lispLibs = [ (getAttr "documentation-utils" pkgs) ];
-  };
-  random-state-viewer = {
-    pname = "random-state-viewer";
-    version = "20221106-git";
-    asds = [ "random-state-viewer" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/random-state/2022-11-06/random-state-20221106-git.tgz";
-      sha256 = "07qmlzkn0s7qrz06ycsr1idj58w0mjhr30mjwsj7wblmmczilq69";
-      system = "random-state-viewer";
-      asd = "random-state-viewer";
-    });
-    systems = [ "random-state-viewer" ];
-    lispLibs = [ (getAttr "qtcore" pkgs) (getAttr "qtgui" pkgs) (getAttr "qtools" pkgs) (getAttr "random-state" pkgs) ];
-  };
-  random-test = {
-    pname = "random-test";
-    version = "20191007-git";
-    asds = [ "random-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/random/2019-10-07/random-20191007-git.tgz";
-      sha256 = "1fb4mnp85jm9s667y4dgz07klhkr9pvi5xbxws28lbb8iip75y2p";
-      system = "random-test";
-      asd = "random-test";
-    });
-    systems = [ "random-test" ];
-    lispLibs = [ (getAttr "hu_dot_dwim_dot_stefil" pkgs) (getAttr "random" pkgs) ];
-  };
-  random-uuid = {
-    pname = "random-uuid";
-    version = "20220707-git";
-    asds = [ "random-uuid" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/random-uuid/2022-07-07/random-uuid-20220707-git.tgz";
-      sha256 = "09yfi16gh12qg4pi13gbr5n881q5zvw7acq27a6sbqbkny35a6wj";
-      system = "random-uuid";
-      asd = "random-uuid";
-    });
-    systems = [ "random-uuid" ];
-    lispLibs = [ (getAttr "mfiano-utils" pkgs) (getAttr "seedable-rng" pkgs) ];
-  };
-  rate-monotonic = {
-    pname = "rate-monotonic";
-    version = "20200325-git";
-    asds = [ "rate-monotonic" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/rate-monotonic/2020-03-25/rate-monotonic-20200325-git.tgz";
-      sha256 = "0v9m704zy3834whldx2fbs8x92hp7hlrzdlcxm1rd17wqpv7pvrv";
-      system = "rate-monotonic";
-      asd = "rate-monotonic";
-    });
-    systems = [ "rate-monotonic" ];
-    lispLibs = [ (getAttr "bordeaux-threads" pkgs) (getAttr "timer-wheel" pkgs) ];
-  };
-  rate-monotonic_dot_examples = {
-    pname = "rate-monotonic.examples";
-    version = "20200325-git";
-    asds = [ "rate-monotonic.examples" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/rate-monotonic/2020-03-25/rate-monotonic-20200325-git.tgz";
-      sha256 = "0v9m704zy3834whldx2fbs8x92hp7hlrzdlcxm1rd17wqpv7pvrv";
-      system = "rate-monotonic.examples";
-      asd = "rate-monotonic.examples";
-    });
-    systems = [ "rate-monotonic.examples" ];
-    lispLibs = [ (getAttr "bordeaux-threads" pkgs) (getAttr "rate-monotonic" pkgs) ];
-  };
-  ratify = {
-    pname = "ratify";
-    version = "20191007-git";
-    asds = [ "ratify" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/ratify/2019-10-07/ratify-20191007-git.tgz";
-      sha256 = "0lhz3g85sc8ral59bs6g32f9nvxvbz126wchr8c3f5jj95xhngma";
-      system = "ratify";
-      asd = "ratify";
-    });
-    systems = [ "ratify" ];
-    lispLibs = [ (getAttr "cl-ppcre" pkgs) (getAttr "local-time" pkgs) (getAttr "parse-float" pkgs) ];
-  };
-  ratmath = {
-    pname = "ratmath";
-    version = "20200218-git";
-    asds = [ "ratmath" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/ratmath/2020-02-18/ratmath-20200218-git.tgz";
-      sha256 = "1p5rl1bam8qjsgscn7gwk2w55hdjawfgjikka59lwb6ia13v4rj9";
-      system = "ratmath";
-      asd = "ratmath";
-    });
-    systems = [ "ratmath" ];
-    lispLibs = [  ];
-  };
-  rcl = {
-    pname = "rcl";
-    version = "20201220-http";
-    asds = [ "rcl" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/rcl/2020-12-20/rcl-20201220-http.tgz";
-      sha256 = "1s6cvqs0s7fxh63zwc5zj7ryrffmv780rscm7aq3alzb9njwmg14";
-      system = "rcl";
-      asd = "rcl";
-    });
-    systems = [ "rcl" ];
-    lispLibs = [ (getAttr "bordeaux-threads" pkgs) (getAttr "cffi" pkgs) (getAttr "named-readtables" pkgs) (getAttr "prove-asdf" pkgs) (getAttr "simple-tasks" pkgs) (getAttr "trivial-garbage" pkgs) ];
-  };
-  rcl_slash_prove = {
-    pname = "rcl_prove";
-    version = "20201220-http";
-    asds = [ "rcl" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/rcl/2020-12-20/rcl-20201220-http.tgz";
-      sha256 = "1s6cvqs0s7fxh63zwc5zj7ryrffmv780rscm7aq3alzb9njwmg14";
-      system = "rcl";
-      asd = "rcl";
-    });
-    systems = [ "rcl/prove" ];
-    lispLibs = [ (getAttr "prove" pkgs) (getAttr "prove-asdf" pkgs) (getAttr "rcl" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  rcl_slash_test = {
-    pname = "rcl_test";
-    version = "20201220-http";
-    asds = [ "rcl" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/rcl/2020-12-20/rcl-20201220-http.tgz";
-      sha256 = "1s6cvqs0s7fxh63zwc5zj7ryrffmv780rscm7aq3alzb9njwmg14";
-      system = "rcl";
-      asd = "rcl";
-    });
-    systems = [ "rcl/test" ];
-    lispLibs = [ (getAttr "fiveam" pkgs) (getAttr "rcl" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  re = {
-    pname = "re";
-    version = "20210630-git";
-    asds = [ "re" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/re/2021-06-30/re-20210630-git.tgz";
-      sha256 = "15q4zvvzkxf1j0wxw0b1kz4d03js9cbgv82ndl8z6riz40kbffdp";
-      system = "re";
-      asd = "re";
-    });
-    systems = [ "re" ];
-    lispLibs = [ (getAttr "parse" pkgs) ];
-  };
-  read-as-string = {
-    pname = "read-as-string";
-    version = "20220707-git";
-    asds = [ "read-as-string" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/read-as-string/2022-07-07/read-as-string-20220707-git.tgz";
-      sha256 = "08dnnqmbadsrbsqr4n1x7rf0p46j9al0hw6la0z3jclp604dd0k3";
-      system = "read-as-string";
-      asd = "read-as-string";
-    });
-    systems = [ "read-as-string" ];
-    lispLibs = [ (getAttr "core-reader" pkgs) (getAttr "named-readtables" pkgs) ];
-  };
-  read-as-string_dot_test = {
-    pname = "read-as-string.test";
-    version = "20220707-git";
-    asds = [ "read-as-string.test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/read-as-string/2022-07-07/read-as-string-20220707-git.tgz";
-      sha256 = "08dnnqmbadsrbsqr4n1x7rf0p46j9al0hw6la0z3jclp604dd0k3";
-      system = "read-as-string.test";
-      asd = "read-as-string.test";
-    });
-    systems = [ "read-as-string.test" ];
-    lispLibs = [ (getAttr "jingoh" pkgs) (getAttr "read-as-string" pkgs) ];
-  };
-  read-csv = {
-    pname = "read-csv";
-    version = "20181018-git";
-    asds = [ "read-csv" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/read-csv/2018-10-18/read-csv-20181018-git.tgz";
-      sha256 = "1wr6n8z7jm611xf2jwp3pw03qzq76440cmb75495l5p907lmrbcs";
-      system = "read-csv";
-      asd = "read-csv";
-    });
-    systems = [ "read-csv" ];
-    lispLibs = [  ];
-  };
-  read-csv_dot_test = {
-    pname = "read-csv.test";
-    version = "20181018-git";
-    asds = [ "read-csv.test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/read-csv/2018-10-18/read-csv-20181018-git.tgz";
-      sha256 = "1wr6n8z7jm611xf2jwp3pw03qzq76440cmb75495l5p907lmrbcs";
-      system = "read-csv.test";
-      asd = "read-csv";
-    });
-    systems = [ "read-csv.test" ];
-    lispLibs = [ (getAttr "read-csv" pkgs) ];
-  };
-  read-number = {
-    pname = "read-number";
-    version = "20220331-git";
-    asds = [ "read-number" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/read-number/2022-03-31/read-number-20220331-git.tgz";
-      sha256 = "1g8l7l02w77iy2dhw88vnmz05a38vyrlx5ri4yc5l8k3dkfc5q64";
-      system = "read-number";
-      asd = "read-number";
-    });
-    systems = [ "read-number" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "lisp-unit" pkgs) ];
-  };
-  reader = {
-    pname = "reader";
-    version = "v0.10.0";
-    asds = [ "reader" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/reader/2020-12-20/reader-v0.10.0.tgz";
-      sha256 = "0pbv6w0d8d4qmfkdsz2rk21bp1las9r7pyvpmd95qjz7kpxrirl7";
-      system = "reader";
-      asd = "reader";
-    });
-    systems = [ "reader" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "fiveam" pkgs) (getAttr "hash-set" pkgs) (getAttr "iterate" pkgs) (getAttr "split-sequence" pkgs) (getAttr "trivial-types" pkgs) (getAttr "uiop" pkgs) ];
-  };
-  reader_plus_swank = {
-    pname = "reader+swank";
-    version = "v0.10.0";
-    asds = [ "reader+swank" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/reader/2020-12-20/reader-v0.10.0.tgz";
-      sha256 = "0pbv6w0d8d4qmfkdsz2rk21bp1las9r7pyvpmd95qjz7kpxrirl7";
-      system = "reader+swank";
-      asd = "reader+swank";
-    });
-    systems = [ "reader+swank" ];
-    lispLibs = [ (getAttr "reader" pkgs) (getAttr "swank" pkgs) ];
-  };
-  reader-interception = {
-    pname = "reader-interception";
-    version = "20150608-git";
-    asds = [ "reader-interception" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/reader-interception/2015-06-08/reader-interception-20150608-git.tgz";
-      sha256 = "1f6xblayqb9q01qclvqx2gllqxm0qk8rmlp38rz433vgjxbq79y0";
-      system = "reader-interception";
-      asd = "reader-interception";
-    });
-    systems = [ "reader-interception" ];
-    lispLibs = [  ];
-  };
-  reader-interception-test = {
-    pname = "reader-interception-test";
-    version = "20150608-git";
-    asds = [ "reader-interception-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/reader-interception/2015-06-08/reader-interception-20150608-git.tgz";
-      sha256 = "1f6xblayqb9q01qclvqx2gllqxm0qk8rmlp38rz433vgjxbq79y0";
-      system = "reader-interception-test";
-      asd = "reader-interception-test";
-    });
-    systems = [ "reader-interception-test" ];
-    lispLibs = [ (getAttr "fare-utils" pkgs) (getAttr "hu_dot_dwim_dot_stefil" pkgs) (getAttr "reader-interception" pkgs) ];
-  };
-  rectangle-packing = {
-    pname = "rectangle-packing";
-    version = "20130615-git";
-    asds = [ "rectangle-packing" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/rectangle-packing/2013-06-15/rectangle-packing-20130615-git.tgz";
-      sha256 = "1m31qbgkrgbp753mr012hpzjfddwmfzvazaadp3s6wd34vmbbv01";
-      system = "rectangle-packing";
-      asd = "rectangle-packing";
-    });
-    systems = [ "rectangle-packing" ];
-    lispLibs = [  ];
-  };
-  recur = {
-    pname = "recur";
-    version = "20190307-hg";
-    asds = [ "recur" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/recur/2019-03-07/recur-20190307-hg.tgz";
-      sha256 = "1m19f0m0kn9pk2i6vhd6fwz9bjm6kqp24p5kxmicdr9vn29jihhn";
-      system = "recur";
-      asd = "recur";
-    });
-    systems = [ "recur" ];
-    lispLibs = [  ];
-  };
-  recursive-regex = {
-    pname = "recursive-regex";
-    version = "20120407-git";
-    asds = [ "recursive-regex" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/recursive-regex/2012-04-07/recursive-regex-20120407-git.tgz";
-      sha256 = "1alsfqfa85dwms7i3xrbp6ahlqk9a3sl8d4llxy1ydb0rlb09l4r";
-      system = "recursive-regex";
-      asd = "recursive-regex";
-    });
-    systems = [ "recursive-regex" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "anaphora" pkgs) (getAttr "cl-interpol" pkgs) (getAttr "cl-ppcre" pkgs) (getAttr "iterate" pkgs) (getAttr "symbol-munger" pkgs) ];
-  };
-  recursive-regex-test = {
-    pname = "recursive-regex-test";
-    version = "20120407-git";
-    asds = [ "recursive-regex-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/recursive-regex/2012-04-07/recursive-regex-20120407-git.tgz";
-      sha256 = "1alsfqfa85dwms7i3xrbp6ahlqk9a3sl8d4llxy1ydb0rlb09l4r";
-      system = "recursive-regex-test";
-      asd = "recursive-regex";
-    });
-    systems = [ "recursive-regex-test" ];
-    lispLibs = [ (getAttr "lisp-unit" pkgs) (getAttr "recursive-regex" pkgs) ];
-  };
-  recursive-restart = {
-    pname = "recursive-restart";
-    version = "20161031-git";
-    asds = [ "recursive-restart" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/recursive-restart/2016-10-31/recursive-restart-20161031-git.tgz";
-      sha256 = "0lgw95bnzw99avrb7vcg02fbw3y5mazfgnkim8gsazfjliaj21m7";
-      system = "recursive-restart";
-      asd = "recursive-restart";
-    });
-    systems = [ "recursive-restart" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) ];
-  };
-  red-black-tree = {
-    pname = "red-black-tree";
-    version = "20220707-git";
-    asds = [ "red-black-tree" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/red-black-tree/2022-07-07/red-black-tree-20220707-git.tgz";
-      sha256 = "0dbl6y4l7k30a13d6rfdfby6p27li5b17nvz7xgyajxl9q5zz5kk";
-      system = "red-black-tree";
-      asd = "red-black-tree";
-    });
-    systems = [ "red-black-tree" ];
-    lispLibs = [ (getAttr "mfiano-utils" pkgs) ];
-  };
-  redirect-stream = {
-    pname = "redirect-stream";
-    version = "20190710-git";
-    asds = [ "redirect-stream" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/redirect-stream/2019-07-10/redirect-stream-20190710-git.tgz";
-      sha256 = "1l1mwkk3pxbahx2m2v9yw19na45sjdxfy1dv59if738x5mvaqb05";
-      system = "redirect-stream";
-      asd = "redirect-stream";
-    });
-    systems = [ "redirect-stream" ];
-    lispLibs = [ (getAttr "trivial-gray-streams" pkgs) ];
-  };
-  regex = {
-    pname = "regex";
-    version = "20120909-git";
-    asds = [ "regex" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/regex/2012-09-09/regex-20120909-git.tgz";
-      sha256 = "0wq5wlafrxv13wg28hg5b10sc48b88swsvznpy2zg7x37m4nmm6a";
-      system = "regex";
-      asd = "regex";
-    });
-    systems = [ "regex" ];
-    lispLibs = [  ];
-  };
-  regression = {
-    pname = "regression";
-    version = "master-1a957fb2-git";
-    asds = [ "regression" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/gendl/2022-07-07/gendl-master-1a957fb2-git.tgz";
-      sha256 = "0j47qnvvfx3vnh3pll6rkya5m142hi93bd5jk65rv43vbc94sv30";
-      system = "regression";
-      asd = "regression";
-    });
-    systems = [ "regression" ];
-    lispLibs = [ (getAttr "surf" pkgs) (getAttr "tasty" pkgs) (getAttr "lift" pkgs) ];
-  };
-  remote-js = {
-    pname = "remote-js";
-    version = "20190710-git";
-    asds = [ "remote-js" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/remote-js/2019-07-10/remote-js-20190710-git.tgz";
-      sha256 = "1z8apvfng8i7x4dsnz9da4y2l9mr7jykm19lmq3070qra7r3lby6";
-      system = "remote-js";
-      asd = "remote-js";
-    });
-    systems = [ "remote-js" ];
-    lispLibs = [ (getAttr "cl-markup" pkgs) (getAttr "find-port" pkgs) (getAttr "trivial-ws" pkgs) ];
-  };
-  remote-js-test = {
-    pname = "remote-js-test";
-    version = "20190710-git";
-    asds = [ "remote-js-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/remote-js/2019-07-10/remote-js-20190710-git.tgz";
-      sha256 = "1z8apvfng8i7x4dsnz9da4y2l9mr7jykm19lmq3070qra7r3lby6";
-      system = "remote-js-test";
-      asd = "remote-js-test";
-    });
-    systems = [ "remote-js-test" ];
-    lispLibs = [ (getAttr "bordeaux-threads" pkgs) (getAttr "fiveam" pkgs) (getAttr "remote-js" pkgs) (getAttr "trivial-open-browser" pkgs) ];
-  };
-  repl-utilities = {
-    pname = "repl-utilities";
-    version = "20210228-git";
-    asds = [ "repl-utilities" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/repl-utilities/2021-02-28/repl-utilities-20210228-git.tgz";
-      sha256 = "1hh56pq5nw3l4b83dzlyss69f06r038byj2cnjwvci4hfjhdfcc3";
-      system = "repl-utilities";
-      asd = "repl-utilities";
-    });
-    systems = [ "repl-utilities" ];
-    lispLibs = [  ];
-  };
-  replic = {
-    pname = "replic";
-    version = "20221106-git";
-    asds = [ "replic" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/replic/2022-11-06/replic-20221106-git.tgz";
-      sha256 = "02i4h06b1jb461k1bdb3qbmpbxvj4g4yi664p15dcwr9pjqjpg2w";
-      system = "replic";
-      asd = "replic";
-    });
-    systems = [ "replic" ];
-    lispLibs = [ (getAttr "cl-ansi-text" pkgs) (getAttr "cl-readline" pkgs) (getAttr "shlex" pkgs) (getAttr "str" pkgs) (getAttr "py-configparser" pkgs) (getAttr "unix-opts" pkgs) ];
-  };
-  replic-test = {
-    pname = "replic-test";
-    version = "20221106-git";
-    asds = [ "replic-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/replic/2022-11-06/replic-20221106-git.tgz";
-      sha256 = "02i4h06b1jb461k1bdb3qbmpbxvj4g4yi664p15dcwr9pjqjpg2w";
-      system = "replic-test";
-      asd = "replic-test";
-    });
-    systems = [ "replic-test" ];
-    lispLibs = [ (getAttr "prove" pkgs) (getAttr "prove-asdf" pkgs) (getAttr "replic" pkgs) ];
-  };
-  research = {
-    pname = "research";
-    version = "export-to-quicklisp-502a46e2-git";
-    asds = [ "research" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/regular-type-expression/2020-02-18/regular-type-expression-export-to-quicklisp-502a46e2-git.tgz";
-      sha256 = "1im07p7sbbhdjx9v8fx3v1xdqx1085lra6fsb4sh2bssw7m5xfxi";
-      system = "research";
-      asd = "research";
-    });
-    systems = [ "research" ];
-    lispLibs = [ (getAttr "_2d-array-test" pkgs) (getAttr "adjuvant" pkgs) (getAttr "adjuvant-test" pkgs) (getAttr "dispatch-test" pkgs) (getAttr "ndfa-test" pkgs) (getAttr "rte-regexp-test" pkgs) (getAttr "rte-test" pkgs) (getAttr "scrutiny" pkgs) (getAttr "scrutiny-test" pkgs) ];
-  };
-  resignal-bind = {
-    pname = "resignal-bind";
-    version = "20211020-git";
-    asds = [ "resignal-bind" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/resignal-bind/2021-10-20/resignal-bind-20211020-git.tgz";
-      sha256 = "109b5bf2h3yqax87r16dsbnb0xdd9kqi0zdisy0wja1h622yrxhc";
-      system = "resignal-bind";
-      asd = "resignal-bind";
-    });
-    systems = [ "resignal-bind" ];
-    lispLibs = [ (getAttr "closer-mop" pkgs) (getAttr "jingoh_dot_documentizer" pkgs) ];
-  };
-  resignal-bind_dot_test = {
-    pname = "resignal-bind.test";
-    version = "20211020-git";
-    asds = [ "resignal-bind.test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/resignal-bind/2021-10-20/resignal-bind-20211020-git.tgz";
-      sha256 = "109b5bf2h3yqax87r16dsbnb0xdd9kqi0zdisy0wja1h622yrxhc";
-      system = "resignal-bind.test";
-      asd = "resignal-bind.test";
-    });
-    systems = [ "resignal-bind.test" ];
-    lispLibs = [ (getAttr "jingoh" pkgs) (getAttr "resignal-bind" pkgs) ];
-  };
-  restas = {
-    pname = "restas";
-    version = "20191008-git";
-    asds = [ "restas" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/restas/2019-10-08/restas-20191008-git.tgz";
-      sha256 = "00ng6jik1lwjw3bbxhijy8s0ml24lgm73liwrr01gcsb0r6wrjjn";
-      system = "restas";
-      asd = "restas";
-    });
-    systems = [ "restas" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "bordeaux-threads" pkgs) (getAttr "cffi" pkgs) (getAttr "routes" pkgs) (getAttr "data-sift" pkgs) (getAttr "hunchentoot" pkgs) ];
-  };
-  restas-directory-publisher = {
-    pname = "restas-directory-publisher";
-    version = "20130128-git";
-    asds = [ "restas-directory-publisher" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/restas-directory-publisher/2013-01-28/restas-directory-publisher-20130128-git.tgz";
-      sha256 = "1ra4bxsg9v507zrqjx78ak3797clagl6n62d3bx0aghrnkal1gmp";
-      system = "restas-directory-publisher";
-      asd = "restas-directory-publisher";
-    });
-    systems = [ "restas-directory-publisher" ];
-    lispLibs = [ (getAttr "closure-template" pkgs) (getAttr "local-time" pkgs) (getAttr "restas" pkgs) ];
-  };
-  restas-doc = {
-    pname = "restas-doc";
-    version = "20191008-git";
-    asds = [ "restas-doc" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/restas/2019-10-08/restas-20191008-git.tgz";
-      sha256 = "00ng6jik1lwjw3bbxhijy8s0ml24lgm73liwrr01gcsb0r6wrjjn";
-      system = "restas-doc";
-      asd = "restas-doc";
-    });
-    systems = [ "restas-doc" ];
-    lispLibs = [ (getAttr "sphinx" pkgs) (getAttr "restas" pkgs) (getAttr "restas-directory-publisher" pkgs) ];
-  };
-  restas_dot_file-publisher = {
-    pname = "restas.file-publisher";
-    version = "20120107-git";
-    asds = [ "restas.file-publisher" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/restas.file-publisher/2012-01-07/restas.file-publisher-20120107-git.tgz";
-      sha256 = "12h291as21ziqb1l6p2p4hy429z6zznacp1gn0m2vah7f811q75l";
-      system = "restas.file-publisher";
-      asd = "restas.file-publisher";
-    });
-    systems = [ "restas.file-publisher" ];
-    lispLibs = [ (getAttr "cl-fad" pkgs) (getAttr "restas" pkgs) ];
-  };
-  restful = {
-    pname = "restful";
-    version = "20150608-git";
-    asds = [ "restful" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/restful/2015-06-08/restful-20150608-git.tgz";
-      sha256 = "1imcpd9zm1dbb1675pf3g3d6w9vyxk07g7r33174qdw470j8ml5n";
-      system = "restful";
-      asd = "restful";
-    });
-    systems = [ "restful" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cl-ppcre" pkgs) (getAttr "closer-mop" pkgs) (getAttr "hunchentoot" pkgs) (getAttr "jonathan" pkgs) ];
-  };
-  restful-test = {
-    pname = "restful-test";
-    version = "20150608-git";
-    asds = [ "restful-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/restful/2015-06-08/restful-20150608-git.tgz";
-      sha256 = "1imcpd9zm1dbb1675pf3g3d6w9vyxk07g7r33174qdw470j8ml5n";
-      system = "restful-test";
-      asd = "restful-test";
-    });
-    systems = [ "restful-test" ];
-    lispLibs = [ (getAttr "drakma" pkgs) (getAttr "prove" pkgs) (getAttr "prove-asdf" pkgs) (getAttr "restful" pkgs) ];
-  };
-  restricted-functions = {
-    pname = "restricted-functions";
-    version = "20190521-git";
-    asds = [ "restricted-functions" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/restricted-functions/2019-05-21/restricted-functions-20190521-git.tgz";
-      sha256 = "092k7bp6n8kppf2wdqf1kf1h8lrww6k1dcxp05dby779b8c6kfz4";
-      system = "restricted-functions";
-      asd = "restricted-functions";
-    });
-    systems = [ "restricted-functions" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "closer-mop" pkgs) (getAttr "simplified-types" pkgs) (getAttr "trivia" pkgs) (getAttr "trivial-arguments" pkgs) (getAttr "trivial-garbage" pkgs) ];
-  };
-  retrospectiff = {
-    pname = "retrospectiff";
-    version = "20211209-git";
-    asds = [ "retrospectiff" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/retrospectiff/2021-12-09/retrospectiff-20211209-git.tgz";
-      sha256 = "1vfcbfzhkm2wkxnjg7y6gg93wlib9cqpbdbhyqcm5kc7170ci3vz";
-      system = "retrospectiff";
-      asd = "retrospectiff";
-    });
-    systems = [ "retrospectiff" ];
-    lispLibs = [ (getAttr "cl-jpeg" pkgs) (getAttr "deflate" pkgs) (getAttr "flexi-streams" pkgs) (getAttr "ieee-floats" pkgs) (getAttr "com_dot_gigamonkeys_dot_binary-data" pkgs) (getAttr "opticl-core" pkgs) ];
-  };
-  retrospectiff_slash_test = {
-    pname = "retrospectiff_test";
-    version = "20211209-git";
-    asds = [ "retrospectiff" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/retrospectiff/2021-12-09/retrospectiff-20211209-git.tgz";
-      sha256 = "1vfcbfzhkm2wkxnjg7y6gg93wlib9cqpbdbhyqcm5kc7170ci3vz";
-      system = "retrospectiff";
-      asd = "retrospectiff";
-    });
-    systems = [ "retrospectiff/test" ];
-    lispLibs = [ (getAttr "fiveam" pkgs) (getAttr "retrospectiff" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  reversi = {
-    pname = "reversi";
-    version = "20201016-git";
-    asds = [ "reversi" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/reversi/2020-10-16/reversi-20201016-git.tgz";
-      sha256 = "1vwjk207hvn5skazmkrcifkv4ia9nm5312rj0fr3w5423dr56swx";
-      system = "reversi";
-      asd = "reversi";
-    });
-    systems = [ "reversi" ];
-    lispLibs = [  ];
-  };
-  rfc2109 = {
-    pname = "rfc2109";
-    version = "20151218-darcs";
-    asds = [ "rfc2109" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/rfc2109/2015-12-18/rfc2109-20151218-darcs.tgz";
-      sha256 = "1y767qjv5jxyfqzp0zpw96yz95mb8hhpjj9dn2i6b92r0z2vr42d";
-      system = "rfc2109";
-      asd = "rfc2109";
-    });
-    systems = [ "rfc2109" ];
-    lispLibs = [ (getAttr "split-sequence" pkgs) ];
-  };
-  rfc2109_slash_test = {
-    pname = "rfc2109_test";
-    version = "20151218-darcs";
-    asds = [ "rfc2109" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/rfc2109/2015-12-18/rfc2109-20151218-darcs.tgz";
-      sha256 = "1y767qjv5jxyfqzp0zpw96yz95mb8hhpjj9dn2i6b92r0z2vr42d";
-      system = "rfc2109";
-      asd = "rfc2109";
-    });
-    systems = [ "rfc2109/test" ];
-    lispLibs = [ (getAttr "fiveam" pkgs) (getAttr "split-sequence" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  rfc2388 = {
-    pname = "rfc2388";
-    version = "20180831-git";
-    asds = [ "rfc2388" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/rfc2388/2018-08-31/rfc2388-20180831-git.tgz";
-      sha256 = "0phh5n3clhl9ji8jaxrajidn22d3f0aq87mlbfkkxlnx2pnw694k";
-      system = "rfc2388";
-      asd = "rfc2388";
-    });
-    systems = [ "rfc2388" ];
-    lispLibs = [  ];
-  };
-  rfc2388-binary = {
-    pname = "rfc2388-binary";
-    version = "20170124-darcs";
-    asds = [ "rfc2388-binary" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/rfc2388-binary/2017-01-24/rfc2388-binary-20170124-darcs.tgz";
-      sha256 = "1ddjhd9vqramg93963d4py9a2hqpy1fr1ly517r3bpjx7a5mffwk";
-      system = "rfc2388-binary";
-      asd = "rfc2388-binary";
-    });
-    systems = [ "rfc2388-binary" ];
-    lispLibs = [  ];
-  };
-  rlc = {
-    pname = "rlc";
-    version = "20150923-git";
-    asds = [ "rlc" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/rlc/2015-09-23/rlc-20150923-git.tgz";
-      sha256 = "1c37as5x45yizs76s7115a0w3fgas80bjb8xzq7yylpmxq44s2rk";
-      system = "rlc";
-      asd = "rlc";
-    });
-    systems = [ "rlc" ];
-    lispLibs = [ (getAttr "kmrcl" pkgs) ];
-  };
-  roan = {
-    pname = "roan";
-    version = "20201220-git";
-    asds = [ "roan" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/roan/2020-12-20/roan-20201220-git.tgz";
-      sha256 = "032znprz03x4apzssb5vzs55cfdfyvca56bcrwxwm9dgkh3cnh7z";
-      system = "roan";
-      asd = "roan";
-    });
-    systems = [ "roan" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "asdf-encodings" pkgs) (getAttr "binascii" pkgs) (getAttr "cl-fad" pkgs) (getAttr "cl-interpol" pkgs) (getAttr "cl-ppcre" pkgs) (getAttr "drakma" pkgs) (getAttr "iterate" pkgs) (getAttr "local-time" pkgs) (getAttr "named-readtables" pkgs) (getAttr "plump" pkgs) (getAttr "uuid" pkgs) (getAttr "zip" pkgs) ];
-  };
-  roan_slash_doc = {
-    pname = "roan_doc";
-    version = "20201220-git";
-    asds = [ "roan" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/roan/2020-12-20/roan-20201220-git.tgz";
-      sha256 = "032znprz03x4apzssb5vzs55cfdfyvca56bcrwxwm9dgkh3cnh7z";
-      system = "roan";
-      asd = "roan";
-    });
-    systems = [ "roan/doc" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "asdf-encodings" pkgs) (getAttr "cl-fad" pkgs) (getAttr "cl-ppcre" pkgs) (getAttr "iterate" pkgs) (getAttr "roan" pkgs) (getAttr "trivial-documentation" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  roan_slash_test = {
-    pname = "roan_test";
-    version = "20201220-git";
-    asds = [ "roan" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/roan/2020-12-20/roan-20201220-git.tgz";
-      sha256 = "032znprz03x4apzssb5vzs55cfdfyvca56bcrwxwm9dgkh3cnh7z";
-      system = "roan";
-      asd = "roan";
-    });
-    systems = [ "roan/test" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "asdf-encodings" pkgs) (getAttr "cl-fad" pkgs) (getAttr "cl-ppcre" pkgs) (getAttr "iterate" pkgs) (getAttr "lisp-unit2" pkgs) (getAttr "roan" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  robot = {
-    pname = "robot";
-    version = "master-1a957fb2-git";
-    asds = [ "robot" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/gendl/2022-07-07/gendl-master-1a957fb2-git.tgz";
-      sha256 = "0j47qnvvfx3vnh3pll6rkya5m142hi93bd5jk65rv43vbc94sv30";
-      system = "robot";
-      asd = "robot";
-    });
-    systems = [ "robot" ];
-    lispLibs = [ (getAttr "gwl-graphics" pkgs) ];
-  };
-  rock = {
-    pname = "rock";
-    version = "20150608-git";
-    asds = [ "rock" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/rock/2015-06-08/rock-20150608-git.tgz";
-      sha256 = "1ckvxswinv25vzwmyrr6k7m9cx99kl04b4543mlxad9688np91y8";
-      system = "rock";
-      asd = "rock";
-    });
-    systems = [ "rock" ];
-    lispLibs = [ (getAttr "anaphora" pkgs) (getAttr "trivial-download" pkgs) (getAttr "trivial-extract" pkgs) (getAttr "trivial-types" pkgs) ];
-  };
-  rock-test = {
-    pname = "rock-test";
-    version = "20150608-git";
-    asds = [ "rock-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/rock/2015-06-08/rock-20150608-git.tgz";
-      sha256 = "1ckvxswinv25vzwmyrr6k7m9cx99kl04b4543mlxad9688np91y8";
-      system = "rock-test";
-      asd = "rock-test";
-    });
-    systems = [ "rock-test" ];
-    lispLibs = [ (getAttr "fiveam" pkgs) (getAttr "rock" pkgs) ];
-  };
-  rock-web = {
-    pname = "rock-web";
-    version = "20150608-git";
-    asds = [ "rock-web" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/rock/2015-06-08/rock-20150608-git.tgz";
-      sha256 = "1ckvxswinv25vzwmyrr6k7m9cx99kl04b4543mlxad9688np91y8";
-      system = "rock-web";
-      asd = "rock-web";
-    });
-    systems = [ "rock-web" ];
-    lispLibs = [ (getAttr "_3bmd" pkgs) (getAttr "_3bmd-ext-code-blocks" pkgs) (getAttr "_3bmd-ext-definition-lists" pkgs) (getAttr "cl-markup" pkgs) (getAttr "lass" pkgs) (getAttr "rock" pkgs) ];
-  };
-  rollback = {
-    pname = "rollback";
-    version = "20221106-git";
-    asds = [ "rollback" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-rollback/2022-11-06/cl-rollback-20221106-git.tgz";
-      sha256 = "12dpxsbm2al633y87i8p784k2dn4bbskz6sl40v9f5ljjmjqjzxf";
-      system = "rollback";
-      asd = "rollback";
-    });
-    systems = [ "rollback" ];
-    lispLibs = [  ];
-  };
-  romreader = {
-    pname = "romreader";
-    version = "20140713-git";
-    asds = [ "romreader" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/romreader/2014-07-13/romreader-20140713-git.tgz";
-      sha256 = "1k3fnh48vy5wdbqif4hmflmxc3xnihyi1222cldcjvxl294yk6xx";
-      system = "romreader";
-      asd = "romreader";
-    });
-    systems = [ "romreader" ];
-    lispLibs = [  ];
-  };
-  routes = {
-    pname = "routes";
-    version = "20170124-git";
-    asds = [ "routes" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-routes/2017-01-24/cl-routes-20170124-git.tgz";
-      sha256 = "1zpk3cp2v8hm50ppjl10yxr437vv4552r8hylvizglzrq2ibsbr1";
-      system = "routes";
-      asd = "routes";
-    });
-    systems = [ "routes" ];
-    lispLibs = [ (getAttr "iterate" pkgs) (getAttr "puri" pkgs) (getAttr "split-sequence" pkgs) ];
-  };
-  routes-test = {
-    pname = "routes-test";
-    version = "20170124-git";
-    asds = [ "routes-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-routes/2017-01-24/cl-routes-20170124-git.tgz";
-      sha256 = "1zpk3cp2v8hm50ppjl10yxr437vv4552r8hylvizglzrq2ibsbr1";
-      system = "routes-test";
-      asd = "routes";
-    });
-    systems = [ "routes-test" ];
-    lispLibs = [ (getAttr "routes" pkgs) (getAttr "lift" pkgs) ];
-  };
-  rove = {
-    pname = "rove";
-    version = "20220331-git";
-    asds = [ "rove" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/rove/2022-03-31/rove-20220331-git.tgz";
-      sha256 = "00j96yll6w7xcsscrirxmb99xspdj71922hfjlb9jl44j4kiknya";
-      system = "rove";
-      asd = "rove";
-    });
-    systems = [ "rove" ];
-    lispLibs = [ (getAttr "bordeaux-threads" pkgs) (getAttr "cl-ppcre" pkgs) (getAttr "dissect" pkgs) (getAttr "trivial-gray-streams" pkgs) ];
-  };
-  rovers-problem-translator = {
-    pname = "rovers-problem-translator";
-    version = "20221106-git";
-    asds = [ "rovers-problem-translator" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/shop3/2022-11-06/shop3-20221106-git.tgz";
-      sha256 = "18fqx41qyd74q0y1niav05wsrjd6wcn6sa6imx0ykyw6libq33z3";
-      system = "rovers-problem-translator";
-      asd = "rovers-problem-translator";
-    });
-    systems = [ "rovers-problem-translator" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "iterate" pkgs) (getAttr "shop3" pkgs) ];
-  };
-  rpcq = {
-    pname = "rpcq";
-    version = "v3.10.0";
-    asds = [ "rpcq" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/rpcq/2022-07-07/rpcq-v3.10.0.tgz";
-      sha256 = "1bvppxlacvp0pfdbpn7ls1zxd127jacl225ds7lph5s8f8cyvf17";
-      system = "rpcq";
-      asd = "rpcq";
-    });
-    systems = [ "rpcq" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "bordeaux-threads" pkgs) (getAttr "cl-messagepack" pkgs) (getAttr "cl-ppcre" pkgs) (getAttr "cl-syslog" pkgs) (getAttr "flexi-streams" pkgs) (getAttr "local-time" pkgs) (getAttr "parse-float" pkgs) (getAttr "pzmq" pkgs) (getAttr "trivial-backtrace" pkgs) (getAttr "uuid" pkgs) (getAttr "yason" pkgs) ];
-  };
-  rpcq-tests = {
-    pname = "rpcq-tests";
-    version = "v3.10.0";
-    asds = [ "rpcq-tests" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/rpcq/2022-07-07/rpcq-v3.10.0.tgz";
-      sha256 = "1bvppxlacvp0pfdbpn7ls1zxd127jacl225ds7lph5s8f8cyvf17";
-      system = "rpcq-tests";
-      asd = "rpcq-tests";
-    });
-    systems = [ "rpcq-tests" ];
-    lispLibs = [ (getAttr "cl-messagepack" pkgs) (getAttr "cl-syslog" pkgs) (getAttr "fiasco" pkgs) (getAttr "rpcq" pkgs) (getAttr "uiop" pkgs) ];
-  };
-  rpm = {
-    pname = "rpm";
-    version = "20160421-git";
-    asds = [ "rpm" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/rpm/2016-04-21/rpm-20160421-git.tgz";
-      sha256 = "0qn4vw3pvjm0maksl57mwikcmv7calzlblp5s01ixrn3nrgxmd9k";
-      system = "rpm";
-      asd = "rpm";
-    });
-    systems = [ "rpm" ];
-    lispLibs = [ (getAttr "cl-ppcre" pkgs) (getAttr "fare-utils" pkgs) (getAttr "inferior-shell" pkgs) (getAttr "lambda-reader" pkgs) ];
-  };
-  rs-colors = {
-    pname = "rs-colors";
-    version = "20220331-git";
-    asds = [ "rs-colors" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/rs-colors/2022-03-31/rs-colors-20220331-git.tgz";
-      sha256 = "06akjly9s4pfix39yca8n3dpazbby09wc8cj0fsfvkg61lvacic5";
-      system = "rs-colors";
-      asd = "rs-colors";
-    });
-    systems = [ "rs-colors" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "closer-mop" pkgs) (getAttr "iterate" pkgs) (getAttr "read-number" pkgs) (getAttr "rs-colors-internal" pkgs) ];
-  };
-  rs-colors-html = {
-    pname = "rs-colors-html";
-    version = "20220331-git";
-    asds = [ "rs-colors-html" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/rs-colors/2022-03-31/rs-colors-20220331-git.tgz";
-      sha256 = "06akjly9s4pfix39yca8n3dpazbby09wc8cj0fsfvkg61lvacic5";
-      system = "rs-colors-html";
-      asd = "rs-colors-html";
-    });
-    systems = [ "rs-colors-html" ];
-    lispLibs = [ (getAttr "rs-colors" pkgs) ];
-  };
-  rs-colors-internal = {
-    pname = "rs-colors-internal";
-    version = "20220331-git";
-    asds = [ "rs-colors-internal" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/rs-colors/2022-03-31/rs-colors-20220331-git.tgz";
-      sha256 = "06akjly9s4pfix39yca8n3dpazbby09wc8cj0fsfvkg61lvacic5";
-      system = "rs-colors-internal";
-      asd = "rs-colors-internal";
-    });
-    systems = [ "rs-colors-internal" ];
-    lispLibs = [ (getAttr "iterate" pkgs) ];
-  };
-  rs-colors-material-io = {
-    pname = "rs-colors-material-io";
-    version = "20220331-git";
-    asds = [ "rs-colors-material-io" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/rs-colors/2022-03-31/rs-colors-20220331-git.tgz";
-      sha256 = "06akjly9s4pfix39yca8n3dpazbby09wc8cj0fsfvkg61lvacic5";
-      system = "rs-colors-material-io";
-      asd = "rs-colors-material-io";
-    });
-    systems = [ "rs-colors-material-io" ];
-    lispLibs = [ (getAttr "rs-colors" pkgs) ];
-  };
-  rs-colors-ral = {
-    pname = "rs-colors-ral";
-    version = "20220331-git";
-    asds = [ "rs-colors-ral" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/rs-colors/2022-03-31/rs-colors-20220331-git.tgz";
-      sha256 = "06akjly9s4pfix39yca8n3dpazbby09wc8cj0fsfvkg61lvacic5";
-      system = "rs-colors-ral";
-      asd = "rs-colors-ral";
-    });
-    systems = [ "rs-colors-ral" ];
-    lispLibs = [ (getAttr "rs-colors" pkgs) ];
-  };
-  rs-colors-ral-design = {
-    pname = "rs-colors-ral-design";
-    version = "20220331-git";
-    asds = [ "rs-colors-ral-design" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/rs-colors/2022-03-31/rs-colors-20220331-git.tgz";
-      sha256 = "06akjly9s4pfix39yca8n3dpazbby09wc8cj0fsfvkg61lvacic5";
-      system = "rs-colors-ral-design";
-      asd = "rs-colors-ral-design";
-    });
-    systems = [ "rs-colors-ral-design" ];
-    lispLibs = [ (getAttr "rs-colors" pkgs) ];
-  };
-  rs-colors-svg = {
-    pname = "rs-colors-svg";
-    version = "20220331-git";
-    asds = [ "rs-colors-svg" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/rs-colors/2022-03-31/rs-colors-20220331-git.tgz";
-      sha256 = "06akjly9s4pfix39yca8n3dpazbby09wc8cj0fsfvkg61lvacic5";
-      system = "rs-colors-svg";
-      asd = "rs-colors-svg";
-    });
-    systems = [ "rs-colors-svg" ];
-    lispLibs = [ (getAttr "rs-colors" pkgs) ];
-  };
-  rs-colors-tango = {
-    pname = "rs-colors-tango";
-    version = "20220331-git";
-    asds = [ "rs-colors-tango" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/rs-colors/2022-03-31/rs-colors-20220331-git.tgz";
-      sha256 = "06akjly9s4pfix39yca8n3dpazbby09wc8cj0fsfvkg61lvacic5";
-      system = "rs-colors-tango";
-      asd = "rs-colors-tango";
-    });
-    systems = [ "rs-colors-tango" ];
-    lispLibs = [ (getAttr "rs-colors" pkgs) ];
-  };
-  rs-colors-x11 = {
-    pname = "rs-colors-x11";
-    version = "20220331-git";
-    asds = [ "rs-colors-x11" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/rs-colors/2022-03-31/rs-colors-20220331-git.tgz";
-      sha256 = "06akjly9s4pfix39yca8n3dpazbby09wc8cj0fsfvkg61lvacic5";
-      system = "rs-colors-x11";
-      asd = "rs-colors-x11";
-    });
-    systems = [ "rs-colors-x11" ];
-    lispLibs = [ (getAttr "rs-colors" pkgs) ];
-  };
-  rss = {
-    pname = "rss";
-    version = "20201016-git";
-    asds = [ "rss" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-rss/2020-10-16/cl-rss-20201016-git.tgz";
-      sha256 = "0wv3j13fj73gigriw5r9vi920hz05ld7zllsvbxdxvmyfy9k1kly";
-      system = "rss";
-      asd = "rss";
-    });
-    systems = [ "rss" ];
-    lispLibs = [ (getAttr "kmrcl" pkgs) (getAttr "aserve" pkgs) (getAttr "xmls" pkgs) ];
-  };
-  rt = {
-    pname = "rt";
-    version = "20101006-git";
-    asds = [ "rt" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/rt/2010-10-06/rt-20101006-git.tgz";
-      sha256 = "13si2rrxaagbr0bkvg6sqicxxpyshabx6ad6byc9n2ik5ysna69b";
-      system = "rt";
-      asd = "rt";
-    });
-    systems = [ "rt" ];
-    lispLibs = [  ];
-  };
-  rt-events = {
-    pname = "rt-events";
-    version = "20160318-git";
-    asds = [ "rt-events" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/rt-events/2016-03-18/rt-events-20160318-git.tgz";
-      sha256 = "17wqhczsi4mq00fp5hfc38b9ijdiaqjh7cvxhy714qqz3f5mxzdw";
-      system = "rt-events";
-      asd = "rt-events";
-    });
-    systems = [ "rt-events" ];
-    lispLibs = [ (getAttr "bordeaux-threads" pkgs) ];
-  };
-  rt-events_dot_examples = {
-    pname = "rt-events.examples";
-    version = "20160318-git";
-    asds = [ "rt-events.examples" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/rt-events/2016-03-18/rt-events-20160318-git.tgz";
-      sha256 = "17wqhczsi4mq00fp5hfc38b9ijdiaqjh7cvxhy714qqz3f5mxzdw";
-      system = "rt-events.examples";
-      asd = "rt-events.examples";
-    });
-    systems = [ "rt-events.examples" ];
-    lispLibs = [ (getAttr "bordeaux-threads" pkgs) (getAttr "rt-events" pkgs) ];
-  };
-  rte = {
-    pname = "rte";
-    version = "export-to-quicklisp-502a46e2-git";
-    asds = [ "rte" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/regular-type-expression/2020-02-18/regular-type-expression-export-to-quicklisp-502a46e2-git.tgz";
-      sha256 = "1im07p7sbbhdjx9v8fx3v1xdqx1085lra6fsb4sh2bssw7m5xfxi";
-      system = "rte";
-      asd = "rte";
-    });
-    systems = [ "rte" ];
-    lispLibs = [ (getAttr "adjuvant" pkgs) (getAttr "lisp-types" pkgs) (getAttr "ndfa" pkgs) ];
-  };
-  rte-regexp = {
-    pname = "rte-regexp";
-    version = "export-to-quicklisp-502a46e2-git";
-    asds = [ "rte-regexp" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/regular-type-expression/2020-02-18/regular-type-expression-export-to-quicklisp-502a46e2-git.tgz";
-      sha256 = "1im07p7sbbhdjx9v8fx3v1xdqx1085lra6fsb4sh2bssw7m5xfxi";
-      system = "rte-regexp";
-      asd = "rte-regexp";
-    });
-    systems = [ "rte-regexp" ];
-    lispLibs = [ (getAttr "yacc" pkgs) (getAttr "adjuvant" pkgs) (getAttr "rte" pkgs) ];
-  };
-  rte-regexp-test = {
-    pname = "rte-regexp-test";
-    version = "export-to-quicklisp-502a46e2-git";
-    asds = [ "rte-regexp-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/regular-type-expression/2020-02-18/regular-type-expression-export-to-quicklisp-502a46e2-git.tgz";
-      sha256 = "1im07p7sbbhdjx9v8fx3v1xdqx1085lra6fsb4sh2bssw7m5xfxi";
-      system = "rte-regexp-test";
-      asd = "rte-regexp-test";
-    });
-    systems = [ "rte-regexp-test" ];
-    lispLibs = [ (getAttr "adjuvant" pkgs) (getAttr "rte" pkgs) (getAttr "rte-regexp" pkgs) (getAttr "scrutiny" pkgs) ];
-  };
-  rte-test = {
-    pname = "rte-test";
-    version = "export-to-quicklisp-502a46e2-git";
-    asds = [ "rte-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/regular-type-expression/2020-02-18/regular-type-expression-export-to-quicklisp-502a46e2-git.tgz";
-      sha256 = "1im07p7sbbhdjx9v8fx3v1xdqx1085lra6fsb4sh2bssw7m5xfxi";
-      system = "rte-test";
-      asd = "rte-test";
-    });
-    systems = [ "rte-test" ];
-    lispLibs = [ (getAttr "_2d-array" pkgs) (getAttr "_2d-array-test" pkgs) (getAttr "adjuvant" pkgs) (getAttr "lisp-types-test" pkgs) (getAttr "ndfa-test" pkgs) (getAttr "rte" pkgs) (getAttr "rte-regexp-test" pkgs) (getAttr "scrutiny" pkgs) ];
-  };
-  rtg-math = {
-    pname = "rtg-math";
-    version = "release-quicklisp-29fc5b3d-git";
-    asds = [ "rtg-math" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/rtg-math/2019-10-07/rtg-math-release-quicklisp-29fc5b3d-git.tgz";
-      sha256 = "0bhxxnv7ldkkb18zdxyz2rj2a3iawzq2kcp7cn5i91iby7n0082x";
-      system = "rtg-math";
-      asd = "rtg-math";
-    });
-    systems = [ "rtg-math" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "documentation-utils" pkgs) (getAttr "glsl-symbols" pkgs) ];
-  };
-  rtg-math_dot_vari = {
-    pname = "rtg-math.vari";
-    version = "release-quicklisp-29fc5b3d-git";
-    asds = [ "rtg-math.vari" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/rtg-math/2019-10-07/rtg-math-release-quicklisp-29fc5b3d-git.tgz";
-      sha256 = "0bhxxnv7ldkkb18zdxyz2rj2a3iawzq2kcp7cn5i91iby7n0082x";
-      system = "rtg-math.vari";
-      asd = "rtg-math.vari";
-    });
-    systems = [ "rtg-math.vari" ];
-    lispLibs = [ (getAttr "glsl-symbols" pkgs) (getAttr "rtg-math" pkgs) (getAttr "varjo" pkgs) ];
-  };
-  rucksack = {
-    pname = "rucksack";
-    version = "20150608-git";
-    asds = [ "rucksack" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/rucksack/2015-06-08/rucksack-20150608-git.tgz";
-      sha256 = "0d6lvhc18i0brh75vp3n974ssx52b42rvwd24llhnphlnhryxh86";
-      system = "rucksack";
-      asd = "rucksack";
-    });
-    systems = [ "rucksack" ];
-    lispLibs = [  ];
-  };
-  rucksack-test = {
-    pname = "rucksack-test";
-    version = "20150608-git";
-    asds = [ "rucksack-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/rucksack/2015-06-08/rucksack-20150608-git.tgz";
-      sha256 = "0d6lvhc18i0brh75vp3n974ssx52b42rvwd24llhnphlnhryxh86";
-      system = "rucksack-test";
-      asd = "rucksack-test";
-    });
-    systems = [ "rucksack-test" ];
-    lispLibs = [ (getAttr "rucksack" pkgs) ];
-  };
-  rutils = {
-    pname = "rutils";
-    version = "20221106-git";
-    asds = [ "rutils" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/rutils/2022-11-06/rutils-20221106-git.tgz";
-      sha256 = "108l64k7qhbhmgp0wa4krm23wakyfc41wzyl2fgc9k59gf47axhq";
-      system = "rutils";
-      asd = "rutils";
-    });
-    systems = [ "rutils" ];
-    lispLibs = [ (getAttr "closer-mop" pkgs) (getAttr "named-readtables" pkgs) ];
-  };
-  rutils-test = {
-    pname = "rutils-test";
-    version = "20221106-git";
-    asds = [ "rutils-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/rutils/2022-11-06/rutils-20221106-git.tgz";
-      sha256 = "108l64k7qhbhmgp0wa4krm23wakyfc41wzyl2fgc9k59gf47axhq";
-      system = "rutils-test";
-      asd = "rutils-test";
-    });
-    systems = [ "rutils-test" ];
-    lispLibs = [ (getAttr "rutils" pkgs) (getAttr "should-test" pkgs) ];
-  };
-  rutilsx = {
-    pname = "rutilsx";
-    version = "20221106-git";
-    asds = [ "rutilsx" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/rutils/2022-11-06/rutils-20221106-git.tgz";
-      sha256 = "108l64k7qhbhmgp0wa4krm23wakyfc41wzyl2fgc9k59gf47axhq";
-      system = "rutilsx";
-      asd = "rutilsx";
-    });
-    systems = [ "rutilsx" ];
-    lispLibs = [ (getAttr "closer-mop" pkgs) (getAttr "named-readtables" pkgs) (getAttr "rutils" pkgs) ];
-  };
-  ryeboy = {
-    pname = "ryeboy";
-    version = "20201016-git";
-    asds = [ "ryeboy" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/ryeboy/2020-10-16/ryeboy-20201016-git.tgz";
-      sha256 = "0div6m6861damksxdxcycpdyyjn50bjsxfdkksm34w6162zdjcla";
-      system = "ryeboy";
-      asd = "ryeboy";
-    });
-    systems = [ "ryeboy" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "com_dot_google_dot_base" pkgs) (getAttr "protobuf" pkgs) (getAttr "prove-asdf" pkgs) (getAttr "usocket" pkgs) ];
-  };
-  ryeboy_slash_test = {
-    pname = "ryeboy_test";
-    version = "20201016-git";
-    asds = [ "ryeboy" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/ryeboy/2020-10-16/ryeboy-20201016-git.tgz";
-      sha256 = "0div6m6861damksxdxcycpdyyjn50bjsxfdkksm34w6162zdjcla";
-      system = "ryeboy";
-      asd = "ryeboy";
-    });
-    systems = [ "ryeboy/test" ];
-    lispLibs = [ (getAttr "prove" pkgs) (getAttr "prove-asdf" pkgs) (getAttr "ryeboy" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  s-base64 = {
-    pname = "s-base64";
-    version = "20130128-git";
-    asds = [ "s-base64" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/s-base64/2013-01-28/s-base64-20130128-git.tgz";
-      sha256 = "0zrr8zhnkdy97c5g54605nhjlf7fly79ylr1yf6wwyssia04cagg";
-      system = "s-base64";
-      asd = "s-base64";
-    });
-    systems = [ "s-base64" ];
-    lispLibs = [  ];
-  };
-  s-dot2 = {
-    pname = "s-dot2";
-    version = "20181018-git";
-    asds = [ "s-dot2" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/s-dot2/2018-10-18/s-dot2-20181018-git.tgz";
-      sha256 = "0q8293fhdb1i2mgmck5611z92p71g9fcarrm87nsr6s21w29hzrz";
-      system = "s-dot2";
-      asd = "s-dot2";
-    });
-    systems = [ "s-dot2" ];
-    lispLibs = [ (getAttr "uiop" pkgs) ];
-  };
-  s-graphviz = {
-    pname = "s-graphviz";
-    version = "20201220-git";
-    asds = [ "s-graphviz" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/s-graphviz/2020-12-20/s-graphviz-20201220-git.tgz";
-      sha256 = "1841xwci6y1gfhg15464wrlnw8xgsh1mwbg4yy2y7di02q4fbma2";
-      system = "s-graphviz";
-      asd = "s-graphviz";
-    });
-    systems = [ "s-graphviz" ];
-    lispLibs = [ (getAttr "iterate" pkgs) (getAttr "literate-lisp" pkgs) ];
-  };
-  s-http-client = {
-    pname = "s-http-client";
-    version = "20200427-git";
-    asds = [ "s-http-client" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/s-http-client/2020-04-27/s-http-client-20200427-git.tgz";
-      sha256 = "1fb2901h91rgfxz3cm1lb2dnd84m1fr745nd2kswd1mj2xz94zn8";
-      system = "s-http-client";
-      asd = "s-http-client";
-    });
-    systems = [ "s-http-client" ];
-    lispLibs = [ (getAttr "chipz" pkgs) (getAttr "puri" pkgs) (getAttr "s-base64" pkgs) (getAttr "s-sysdeps" pkgs) (getAttr "s-utils" pkgs) ];
-  };
-  s-http-server = {
-    pname = "s-http-server";
-    version = "20200427-git";
-    asds = [ "s-http-server" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/s-http-server/2020-04-27/s-http-server-20200427-git.tgz";
-      sha256 = "025mvnqhxx2c092aam3s4fk9v0p65hzdw39y4lamm0bdralda4bk";
-      system = "s-http-server";
-      asd = "s-http-server";
-    });
-    systems = [ "s-http-server" ];
-    lispLibs = [ (getAttr "puri" pkgs) (getAttr "s-base64" pkgs) (getAttr "s-sysdeps" pkgs) (getAttr "s-utils" pkgs) (getAttr "salza2" pkgs) ];
-  };
-  s-sql = {
-    pname = "s-sql";
-    version = "20221106-git";
-    asds = [ "s-sql" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/postmodern/2022-11-06/postmodern-20221106-git.tgz";
-      sha256 = "012ipwi4m5x6jhl7pd9gwvdga5hgp1l08vqdgd28rzy34s2mfv74";
-      system = "s-sql";
-      asd = "s-sql";
-    });
-    systems = [ "s-sql" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cl-postgres" pkgs) ];
-  };
-  s-sql_slash_tests = {
-    pname = "s-sql_tests";
-    version = "20221106-git";
-    asds = [ "s-sql" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/postmodern/2022-11-06/postmodern-20221106-git.tgz";
-      sha256 = "012ipwi4m5x6jhl7pd9gwvdga5hgp1l08vqdgd28rzy34s2mfv74";
-      system = "s-sql";
-      asd = "s-sql";
-    });
-    systems = [ "s-sql/tests" ];
-    lispLibs = [ (getAttr "fiveam" pkgs) (getAttr "cl-postgres" pkgs) (getAttr "postmodern" pkgs) (getAttr "s-sql" pkgs) (getAttr "uiop" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  s-sysdeps = {
-    pname = "s-sysdeps";
-    version = "20210228-git";
-    asds = [ "s-sysdeps" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/s-sysdeps/2021-02-28/s-sysdeps-20210228-git.tgz";
-      sha256 = "0rp81iq0rgl48qdwbmfy89glga81hmry2lp8adjbr5h5ybr92b4n";
-      system = "s-sysdeps";
-      asd = "s-sysdeps";
-    });
-    systems = [ "s-sysdeps" ];
-    lispLibs = [ (getAttr "bordeaux-threads" pkgs) (getAttr "usocket" pkgs) (getAttr "usocket-server" pkgs) ];
-  };
-  s-utils = {
-    pname = "s-utils";
-    version = "20200427-git";
-    asds = [ "s-utils" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/s-utils/2020-04-27/s-utils-20200427-git.tgz";
-      sha256 = "0xggbcvjmj4sdqcs6vaccryqp2piaqxkc0ygkczrd5m14bwrmlp6";
-      system = "s-utils";
-      asd = "s-utils";
-    });
-    systems = [ "s-utils" ];
-    lispLibs = [  ];
-  };
-  s-xml = {
-    pname = "s-xml";
-    version = "20150608-git";
-    asds = [ "s-xml" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/s-xml/2015-06-08/s-xml-20150608-git.tgz";
-      sha256 = "1zsf5zrlf47g5cp70kb9b8d4v88315g633q5jcdx22csw7sd7if1";
-      system = "s-xml";
-      asd = "s-xml";
-    });
-    systems = [ "s-xml" ];
-    lispLibs = [  ];
-  };
-  s-xml-rpc = {
-    pname = "s-xml-rpc";
-    version = "20190521-git";
-    asds = [ "s-xml-rpc" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/s-xml-rpc/2019-05-21/s-xml-rpc-20190521-git.tgz";
-      sha256 = "0z42awkz124xphkahw0mhg1pk029l2799rhyy51387ndd6gbqscx";
-      system = "s-xml-rpc";
-      asd = "s-xml-rpc";
-    });
-    systems = [ "s-xml-rpc" ];
-    lispLibs = [ (getAttr "s-xml" pkgs) ];
-  };
-  s-xml_dot_examples = {
-    pname = "s-xml.examples";
-    version = "20150608-git";
-    asds = [ "s-xml.examples" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/s-xml/2015-06-08/s-xml-20150608-git.tgz";
-      sha256 = "1zsf5zrlf47g5cp70kb9b8d4v88315g633q5jcdx22csw7sd7if1";
-      system = "s-xml.examples";
-      asd = "s-xml";
-    });
-    systems = [ "s-xml.examples" ];
-    lispLibs = [ (getAttr "s-xml" pkgs) ];
-  };
-  s-xml_dot_test = {
-    pname = "s-xml.test";
-    version = "20150608-git";
-    asds = [ "s-xml.test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/s-xml/2015-06-08/s-xml-20150608-git.tgz";
-      sha256 = "1zsf5zrlf47g5cp70kb9b8d4v88315g633q5jcdx22csw7sd7if1";
-      system = "s-xml.test";
-      asd = "s-xml";
-    });
-    systems = [ "s-xml.test" ];
-    lispLibs = [ (getAttr "s-xml" pkgs) ];
-  };
-  safe-queue = {
-    pname = "safe-queue";
-    version = "20200325-git";
-    asds = [ "safe-queue" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/safe-queue/2020-03-25/safe-queue-20200325-git.tgz";
-      sha256 = "1agvp8y2k5c6w35kly6d9a7hi1y6csn4k0hqqdv7i87lgjdi7vrq";
-      system = "safe-queue";
-      asd = "safe-queue";
-    });
-    systems = [ "safe-queue" ];
-    lispLibs = [ (getAttr "split-sequence" pkgs) ];
-  };
-  safe-read = {
-    pname = "safe-read";
-    version = "20220220-git";
-    asds = [ "safe-read" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/safe-read/2022-02-20/safe-read-20220220-git.tgz";
-      sha256 = "1r9k8danfnqgpbn2vb90n6wdc6jd92h1ig565yplrbh6232lhi26";
-      system = "safe-read";
-      asd = "safe-read";
-    });
-    systems = [ "safe-read" ];
-    lispLibs = [ (getAttr "local-time" pkgs) (getAttr "trivial-garbage" pkgs) ];
-  };
-  safe-read_slash_test = {
-    pname = "safe-read_test";
-    version = "20220220-git";
-    asds = [ "safe-read" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/safe-read/2022-02-20/safe-read-20220220-git.tgz";
-      sha256 = "1r9k8danfnqgpbn2vb90n6wdc6jd92h1ig565yplrbh6232lhi26";
-      system = "safe-read";
-      asd = "safe-read";
-    });
-    systems = [ "safe-read/test" ];
-    lispLibs = [ (getAttr "safe-read" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  safety-params = {
-    pname = "safety-params";
-    version = "20190202-git";
-    asds = [ "safety-params" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/safety-params/2019-02-02/safety-params-20190202-git.tgz";
-      sha256 = "1y69b9aw3vsnsk0vdjyxw011j0lgc5gdwv6ay6vzfipa9gzi92ki";
-      system = "safety-params";
-      asd = "safety-params";
-    });
-    systems = [ "safety-params" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "parse-number" pkgs) ];
-  };
-  safety-params_slash_tests = {
-    pname = "safety-params_tests";
-    version = "20190202-git";
-    asds = [ "safety-params" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/safety-params/2019-02-02/safety-params-20190202-git.tgz";
-      sha256 = "1y69b9aw3vsnsk0vdjyxw011j0lgc5gdwv6ay6vzfipa9gzi92ki";
-      system = "safety-params";
-      asd = "safety-params";
-    });
-    systems = [ "safety-params/tests" ];
-    lispLibs = [ (getAttr "rove" pkgs) (getAttr "safety-params" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  salza2 = {
-    pname = "salza2";
-    version = "2.1";
-    asds = [ "salza2" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/salza2/2021-10-20/salza2-2.1.tgz";
-      sha256 = "1p48lxdibnps5rpyh5cmnk0vc77bmmxb32qdzfz93zadr8wwas10";
-      system = "salza2";
-      asd = "salza2";
-    });
-    systems = [ "salza2" ];
-    lispLibs = [ (getAttr "trivial-gray-streams" pkgs) ];
-  };
-  salza2_slash_test = {
-    pname = "salza2_test";
-    version = "2.1";
-    asds = [ "salza2" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/salza2/2021-10-20/salza2-2.1.tgz";
-      sha256 = "1p48lxdibnps5rpyh5cmnk0vc77bmmxb32qdzfz93zadr8wwas10";
-      system = "salza2";
-      asd = "salza2";
-    });
-    systems = [ "salza2/test" ];
-    lispLibs = [ (getAttr "chipz" pkgs) (getAttr "flexi-streams" pkgs) (getAttr "parachute" pkgs) (getAttr "salza2" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  sandalphon_dot_lambda-list = {
-    pname = "sandalphon.lambda-list";
-    version = "20180711-git";
-    asds = [ "sandalphon.lambda-list" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/sandalphon.lambda-list/2018-07-11/sandalphon.lambda-list-20180711-git.tgz";
-      sha256 = "1iihs05cwy4xyms2vl3fjc9xpivyxb2mpmb60nylxrkvlm0l7v7h";
-      system = "sandalphon.lambda-list";
-      asd = "sandalphon.lambda-list";
-    });
-    systems = [ "sandalphon.lambda-list" ];
-    lispLibs = [  ];
-  };
-  sane = {
-    pname = "sane";
-    version = "20150608-git";
-    asds = [ "sane" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-sane/2015-06-08/cl-sane-20150608-git.tgz";
-      sha256 = "1fyih96byyccw1rk7sm5qapqb3lwy7p65sxvxpfkc0cxziixf90w";
-      system = "sane";
-      asd = "sane";
-    });
-    systems = [ "sane" ];
-    lispLibs = [ (getAttr "cffi" pkgs) (getAttr "iterate" pkgs) (getAttr "trivial-gray-streams" pkgs) ];
-  };
-  sanitize = {
-    pname = "sanitize";
-    version = "20130720-git";
-    asds = [ "sanitize" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-sanitize/2013-07-20/cl-sanitize-20130720-git.tgz";
-      sha256 = "101qqgi53scz3aaca57yg5wk9ana2axpwssmgrcb5c2ip5a2lwi3";
-      system = "sanitize";
-      asd = "sanitize";
-    });
-    systems = [ "sanitize" ];
-    lispLibs = [ (getAttr "cl-libxml2" pkgs) ];
-  };
-  sanitize-test = {
-    pname = "sanitize-test";
-    version = "20130720-git";
-    asds = [ "sanitize-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-sanitize/2013-07-20/cl-sanitize-20130720-git.tgz";
-      sha256 = "101qqgi53scz3aaca57yg5wk9ana2axpwssmgrcb5c2ip5a2lwi3";
-      system = "sanitize-test";
-      asd = "sanitize";
-    });
-    systems = [ "sanitize-test" ];
-    lispLibs = [ (getAttr "sanitize" pkgs) (getAttr "eos" pkgs) ];
-  };
-  sanity-clause = {
-    pname = "sanity-clause";
-    version = "20210807-git";
-    asds = [ "sanity-clause" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/sanity-clause/2021-08-07/sanity-clause-20210807-git.tgz";
-      sha256 = "0dzh00zpaqv48pn0xhbibiy33j8fwd2scsy5i466c9x9mcbhjz4f";
-      system = "sanity-clause";
-      asd = "sanity-clause";
-    });
-    systems = [ "sanity-clause" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "arrows" pkgs) (getAttr "cl-ppcre" pkgs) (getAttr "str" pkgs) (getAttr "closer-mop" pkgs) (getAttr "local-time" pkgs) (getAttr "parse-float" pkgs) (getAttr "quri" pkgs) (getAttr "trivial-types" pkgs) ];
-  };
-  sanity-clause_slash_test = {
-    pname = "sanity-clause_test";
-    version = "20210807-git";
-    asds = [ "sanity-clause" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/sanity-clause/2021-08-07/sanity-clause-20210807-git.tgz";
-      sha256 = "0dzh00zpaqv48pn0xhbibiy33j8fwd2scsy5i466c9x9mcbhjz4f";
-      system = "sanity-clause";
-      asd = "sanity-clause";
-    });
-    systems = [ "sanity-clause/test" ];
-    lispLibs = [ (getAttr "rove" pkgs) (getAttr "sanity-clause" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  sapaclisp = {
-    pname = "sapaclisp";
-    version = "1.0a";
-    asds = [ "sapaclisp" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/sapaclisp/2012-05-20/sapaclisp-1.0a.tgz";
-      sha256 = "1bgqvwvjq8g5wrmp5r1dn1v99hgin9gihwkihz455n9dn90l3pyq";
-      system = "sapaclisp";
-      asd = "sapaclisp";
-    });
-    systems = [ "sapaclisp" ];
-    lispLibs = [  ];
-  };
-  sb-cga = {
-    pname = "sb-cga";
-    version = "20210531-git";
-    asds = [ "sb-cga" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/sb-cga/2021-05-31/sb-cga-20210531-git.tgz";
-      sha256 = "1y54qlwfrhch9aghk7nsbdx7x2qsvgsws1g2k631l9dsgdakw4w8";
-      system = "sb-cga";
-      asd = "sb-cga";
-    });
-    systems = [ "sb-cga" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) ];
-  };
-  sb-fastcgi = {
-    pname = "sb-fastcgi";
-    version = "20210124-git";
-    asds = [ "sb-fastcgi" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/sb-fastcgi/2021-01-24/sb-fastcgi-20210124-git.tgz";
-      sha256 = "15arl39xq0wp9marrgf36grv7z5w2z4zaigllypx96b3kbmw6qb5";
-      system = "sb-fastcgi";
-      asd = "sb-fastcgi";
-    });
-    systems = [ "sb-fastcgi" ];
-    lispLibs = [  ];
-  };
-  sb-vector-io = {
-    pname = "sb-vector-io";
-    version = "20110829-git";
-    asds = [ "sb-vector-io" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/sb-vector-io/2011-08-29/sb-vector-io-20110829-git.tgz";
-      sha256 = "0pwc0nxhv8ba33i8z2f1y7r7ldik4a4xrqrb69dvvasz838k6r22";
-      system = "sb-vector-io";
-      asd = "sb-vector-io";
-    });
-    systems = [ "sb-vector-io" ];
-    lispLibs = [  ];
-  };
-  sc-extensions = {
-    pname = "sc-extensions";
-    version = "20220707-git";
-    asds = [ "sc-extensions" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/sc-extensions/2022-07-07/sc-extensions-20220707-git.tgz";
-      sha256 = "1rkya76fnf694fmyzgh40xpzshzadrr21w5xmrrfwzmv8psp24fa";
-      system = "sc-extensions";
-      asd = "sc-extensions";
-    });
-    systems = [ "sc-extensions" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cl-collider" pkgs) (getAttr "named-readtables" pkgs) ];
-  };
-  sc-osc = {
-    pname = "sc-osc";
-    version = "20221106-git";
-    asds = [ "sc-osc" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-collider/2022-11-06/cl-collider-20221106-git.tgz";
-      sha256 = "03z11hcjvbawkli0bw90h4za7vvpm9pk7rh9gi6m2k7wwq2rsxk5";
-      system = "sc-osc";
-      asd = "sc-osc";
-    });
-    systems = [ "sc-osc" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "bordeaux-threads" pkgs) (getAttr "ieee-floats" pkgs) (getAttr "osc" pkgs) (getAttr "usocket" pkgs) ];
-  };
-  schannel = {
-    pname = "schannel";
-    version = "20211230-git";
-    asds = [ "schannel" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/schannel/2021-12-30/schannel-20211230-git.tgz";
-      sha256 = "1f7dncrjsswrr8wrm7qzxdvrmzg3n2ap607ad74mnfd806rwldnw";
-      system = "schannel";
-      asd = "schannel";
-    });
-    systems = [ "schannel" ];
-    lispLibs = [ (getAttr "cffi" pkgs) (getAttr "trivial-gray-streams" pkgs) ];
-  };
-  scheduler = {
-    pname = "scheduler";
-    version = "20220707-git";
-    asds = [ "scheduler" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/scheduler/2022-07-07/scheduler-20220707-git.tgz";
-      sha256 = "1xsxzb294r0qxhj34m3a9ya9y054c4l01r0ccvsp134dp71yzkzd";
-      system = "scheduler";
-      asd = "scheduler";
-    });
-    systems = [ "scheduler" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "local-time" pkgs) (getAttr "optima" pkgs) (getAttr "optima_dot_ppcre" pkgs) (getAttr "split-sequence" pkgs) ];
-  };
-  scheduler_slash_tests = {
-    pname = "scheduler_tests";
-    version = "20220707-git";
-    asds = [ "scheduler" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/scheduler/2022-07-07/scheduler-20220707-git.tgz";
-      sha256 = "1xsxzb294r0qxhj34m3a9ya9y054c4l01r0ccvsp134dp71yzkzd";
-      system = "scheduler";
-      asd = "scheduler";
-    });
-    systems = [ "scheduler/tests" ];
-    lispLibs = [ (getAttr "fiveam" pkgs) (getAttr "local-time" pkgs) (getAttr "scheduler" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  science-data = {
-    pname = "science-data";
-    version = "master-df14cb8c-git";
-    asds = [ "science-data" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/antik/2019-10-08/antik-master-df14cb8c-git.tgz";
-      sha256 = "1n08cx4n51z8v4bxyak166lp495xda3x7llfxcdpxndxqxcammr0";
-      system = "science-data";
-      asd = "science-data";
-    });
-    systems = [ "science-data" ];
-    lispLibs = [ (getAttr "physical-dimension" pkgs) (getAttr "drakma" pkgs) ];
-  };
-  scigraph = {
-    pname = "scigraph";
-    version = "20221106-git";
-    asds = [ "scigraph" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/mcclim/2022-11-06/mcclim-20221106-git.tgz";
-      sha256 = "0hz6vz4c0xv8bjx02hf3rbnp66c7ifx2ld4y6nxdz6i70wyhwbdf";
-      system = "scigraph";
-      asd = "scigraph";
-    });
-    systems = [ "scigraph" ];
-    lispLibs = [ (getAttr "mcclim" pkgs) ];
-  };
-  scigraph_slash_dwim = {
-    pname = "scigraph_dwim";
-    version = "20221106-git";
-    asds = [ "scigraph" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/mcclim/2022-11-06/mcclim-20221106-git.tgz";
-      sha256 = "0hz6vz4c0xv8bjx02hf3rbnp66c7ifx2ld4y6nxdz6i70wyhwbdf";
-      system = "scigraph";
-      asd = "scigraph";
-    });
-    systems = [ "scigraph/dwim" ];
-    lispLibs = [ (getAttr "mcclim" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  scratch-buffer = {
-    pname = "scratch-buffer";
-    version = "20200427-git";
-    asds = [ "scratch-buffer" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/sucle/2020-04-27/sucle-20200427-git.tgz";
-      sha256 = "033akkn9zxc6qdgycgxgybx3v23638245xrx29x2cbwnvg3i1q34";
-      system = "scratch-buffer";
-      asd = "scratch-buffer";
-    });
-    systems = [ "scratch-buffer" ];
-    lispLibs = [ (getAttr "bordeaux-threads" pkgs) (getAttr "utility" pkgs) ];
-  };
-  screamer = {
-    pname = "screamer";
-    version = "20210807-git";
-    asds = [ "screamer" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/screamer/2021-08-07/screamer-20210807-git.tgz";
-      sha256 = "0913wmy0fpf6shvbz40ay9gnjhgyjglf661d1p5ld2glkw1ky8hm";
-      system = "screamer";
-      asd = "screamer";
-    });
-    systems = [ "screamer" ];
-    lispLibs = [  ];
-  };
-  screamer-tests = {
-    pname = "screamer-tests";
-    version = "20210807-git";
-    asds = [ "screamer-tests" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/screamer/2021-08-07/screamer-20210807-git.tgz";
-      sha256 = "0913wmy0fpf6shvbz40ay9gnjhgyjglf661d1p5ld2glkw1ky8hm";
-      system = "screamer-tests";
-      asd = "screamer-tests";
-    });
-    systems = [ "screamer-tests" ];
-    lispLibs = [ (getAttr "hu_dot_dwim_dot_stefil" pkgs) (getAttr "iterate" pkgs) (getAttr "screamer" pkgs) ];
-  };
-  scriba = {
-    pname = "scriba";
-    version = "20220707-git";
-    asds = [ "scriba" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/scriba/2022-07-07/scriba-20220707-git.tgz";
-      sha256 = "1n32bxf3b1cgb7y4015y3vahjgnbw59pi6d08by78pnpa2nx43sa";
-      system = "scriba";
-      asd = "scriba";
-    });
-    systems = [ "scriba" ];
-    lispLibs = [ (getAttr "common-doc-plump" pkgs) (getAttr "esrap" pkgs) (getAttr "plump-sexp" pkgs) ];
-  };
-  scriba-test = {
-    pname = "scriba-test";
-    version = "20220707-git";
-    asds = [ "scriba-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/scriba/2022-07-07/scriba-20220707-git.tgz";
-      sha256 = "1n32bxf3b1cgb7y4015y3vahjgnbw59pi6d08by78pnpa2nx43sa";
-      system = "scriba-test";
-      asd = "scriba-test";
-    });
-    systems = [ "scriba-test" ];
-    lispLibs = [ (getAttr "fiveam" pkgs) (getAttr "scriba" pkgs) ];
-  };
-  scribble = {
-    pname = "scribble";
-    version = "20160628-git";
-    asds = [ "scribble" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/scribble/2016-06-28/scribble-20160628-git.tgz";
-      sha256 = "056qi6vw9bk19s42mapyg55mimhhvhlwgny080v9mhv4fhnqi196";
-      system = "scribble";
-      asd = "scribble";
-    });
-    systems = [ "scribble" ];
-    lispLibs = [ (getAttr "fare-memoization" pkgs) (getAttr "fare-quasiquote-readtable" pkgs) (getAttr "fare-utils" pkgs) (getAttr "meta" pkgs) ];
-  };
-  scribble_slash_test = {
-    pname = "scribble_test";
-    version = "20160628-git";
-    asds = [ "scribble" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/scribble/2016-06-28/scribble-20160628-git.tgz";
-      sha256 = "056qi6vw9bk19s42mapyg55mimhhvhlwgny080v9mhv4fhnqi196";
-      system = "scribble";
-      asd = "scribble";
-    });
-    systems = [ "scribble/test" ];
-    lispLibs = [ (getAttr "babel" pkgs) (getAttr "hu_dot_dwim_dot_stefil" pkgs) (getAttr "scribble" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  scriptl = {
-    pname = "scriptl";
-    version = "20180228-git";
-    asds = [ "scriptl" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/scriptl/2018-02-28/scriptl-20180228-git.tgz";
-      sha256 = "1q0d64syglfdjrzx2x7hlvznljpfwr9scn7rliigbm5z326lygg4";
-      system = "scriptl";
-      asd = "scriptl";
-    });
-    systems = [ "scriptl" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "bordeaux-threads" pkgs) (getAttr "cl-ppcre" pkgs) (getAttr "defpackage-plus" pkgs) (getAttr "iolib" pkgs) (getAttr "osicat" pkgs) (getAttr "trivial-backtrace" pkgs) (getAttr "trivial-gray-streams" pkgs) (getAttr "trivial-utf-8" pkgs) ];
-  };
-  scriptl-examples = {
-    pname = "scriptl-examples";
-    version = "20180228-git";
-    asds = [ "scriptl-examples" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/scriptl/2018-02-28/scriptl-20180228-git.tgz";
-      sha256 = "1q0d64syglfdjrzx2x7hlvznljpfwr9scn7rliigbm5z326lygg4";
-      system = "scriptl-examples";
-      asd = "scriptl-examples";
-    });
-    systems = [ "scriptl-examples" ];
-    lispLibs = [ (getAttr "scriptl" pkgs) (getAttr "unix-options" pkgs) ];
-  };
-  scriptl-util = {
-    pname = "scriptl-util";
-    version = "20180228-git";
-    asds = [ "scriptl-util" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/scriptl/2018-02-28/scriptl-20180228-git.tgz";
-      sha256 = "1q0d64syglfdjrzx2x7hlvznljpfwr9scn7rliigbm5z326lygg4";
-      system = "scriptl-util";
-      asd = "scriptl-util";
-    });
-    systems = [ "scriptl-util" ];
-    lispLibs = [ (getAttr "cl-ppcre" pkgs) (getAttr "scriptl" pkgs) ];
-  };
-  scrutiny = {
-    pname = "scrutiny";
-    version = "export-to-quicklisp-502a46e2-git";
-    asds = [ "scrutiny" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/regular-type-expression/2020-02-18/regular-type-expression-export-to-quicklisp-502a46e2-git.tgz";
-      sha256 = "1im07p7sbbhdjx9v8fx3v1xdqx1085lra6fsb4sh2bssw7m5xfxi";
-      system = "scrutiny";
-      asd = "scrutiny";
-    });
-    systems = [ "scrutiny" ];
-    lispLibs = [ (getAttr "adjuvant" pkgs) ];
-  };
-  scrutiny-test = {
-    pname = "scrutiny-test";
-    version = "export-to-quicklisp-502a46e2-git";
-    asds = [ "scrutiny-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/regular-type-expression/2020-02-18/regular-type-expression-export-to-quicklisp-502a46e2-git.tgz";
-      sha256 = "1im07p7sbbhdjx9v8fx3v1xdqx1085lra6fsb4sh2bssw7m5xfxi";
-      system = "scrutiny-test";
-      asd = "scrutiny-test";
-    });
-    systems = [ "scrutiny-test" ];
-    lispLibs = [ (getAttr "scrutiny" pkgs) ];
-  };
-  sdl2 = {
-    pname = "sdl2";
-    version = "20220707-git";
-    asds = [ "sdl2" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-sdl2/2022-07-07/cl-sdl2-20220707-git.tgz";
-      sha256 = "0kh4k9622aykgz2n3kmqcr9lhk2qh3sw7k70sqksfpz891w5y97j";
-      system = "sdl2";
-      asd = "sdl2";
-    });
-    systems = [ "sdl2" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cl-autowrap" pkgs) (getAttr "cl-plus-c" pkgs) (getAttr "cl-ppcre" pkgs) (getAttr "trivial-channels" pkgs) (getAttr "trivial-features" pkgs) ];
-  };
-  sdl2-game-controller-db = {
-    pname = "sdl2-game-controller-db";
-    version = "release-quicklisp-335d2b68-git";
-    asds = [ "sdl2-game-controller-db" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/sdl2-game-controller-db/2018-02-28/sdl2-game-controller-db-release-quicklisp-335d2b68-git.tgz";
-      sha256 = "0yf4ygndmacs0pf3ws5197k51c4fdximvxcmvn56bqmsvil56kcd";
-      system = "sdl2-game-controller-db";
-      asd = "sdl2-game-controller-db";
-    });
-    systems = [ "sdl2-game-controller-db" ];
-    lispLibs = [ (getAttr "sdl2" pkgs) ];
-  };
-  sdl2-image = {
-    pname = "sdl2-image";
-    version = "20190202-git";
-    asds = [ "sdl2-image" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-sdl2-image/2019-02-02/cl-sdl2-image-20190202-git.tgz";
-      sha256 = "1nr7mdl125q32m15m8rdlza5kwi7m0birh1cq846pyy6zl1sjms7";
-      system = "sdl2-image";
-      asd = "sdl2-image";
-    });
-    systems = [ "sdl2-image" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cl-autowrap" pkgs) (getAttr "sdl2" pkgs) (getAttr "defpackage-plus" pkgs) ];
-  };
-  sdl2-mixer = {
-    pname = "sdl2-mixer";
-    version = "20211020-git";
-    asds = [ "sdl2-mixer" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-sdl2-mixer/2021-10-20/cl-sdl2-mixer-20211020-git.tgz";
-      sha256 = "0g6ywb3gqr0rif4z6kkz6m8vyv8nrr5wr1w9sc6d3zypbbnqgbp6";
-      system = "sdl2-mixer";
-      asd = "sdl2-mixer";
-    });
-    systems = [ "sdl2-mixer" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cl-autowrap" pkgs) (getAttr "sdl2" pkgs) (getAttr "trivial-garbage" pkgs) ];
-  };
-  sdl2-ttf = {
-    pname = "sdl2-ttf";
-    version = "20200925-git";
-    asds = [ "sdl2-ttf" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-sdl2-ttf/2020-09-25/cl-sdl2-ttf-20200925-git.tgz";
-      sha256 = "15mvb7hr5l284s56gbf1xyb9v5xv95b2043zaysswhn5x20ylcnb";
-      system = "sdl2-ttf";
-      asd = "sdl2-ttf";
-    });
-    systems = [ "sdl2-ttf" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cffi-libffi" pkgs) (getAttr "cl-autowrap" pkgs) (getAttr "sdl2" pkgs) (getAttr "defpackage-plus" pkgs) (getAttr "trivial-garbage" pkgs) ];
-  };
-  sdl2-ttf-examples = {
-    pname = "sdl2-ttf-examples";
-    version = "20200925-git";
-    asds = [ "sdl2-ttf-examples" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-sdl2-ttf/2020-09-25/cl-sdl2-ttf-20200925-git.tgz";
-      sha256 = "15mvb7hr5l284s56gbf1xyb9v5xv95b2043zaysswhn5x20ylcnb";
-      system = "sdl2-ttf-examples";
-      asd = "sdl2-ttf-examples";
-    });
-    systems = [ "sdl2-ttf-examples" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cl-opengl" pkgs) (getAttr "sdl2" pkgs) (getAttr "sdl2-ttf" pkgs) (getAttr "mathkit" pkgs) ];
-  };
-  sdl2_slash_examples = {
-    pname = "sdl2_examples";
-    version = "20220707-git";
-    asds = [ "sdl2" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-sdl2/2022-07-07/cl-sdl2-20220707-git.tgz";
-      sha256 = "0kh4k9622aykgz2n3kmqcr9lhk2qh3sw7k70sqksfpz891w5y97j";
-      system = "sdl2";
-      asd = "sdl2";
-    });
-    systems = [ "sdl2/examples" ];
-    lispLibs = [ (getAttr "cl-opengl" pkgs) (getAttr "sdl2" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  sdl2kit = {
-    pname = "sdl2kit";
-    version = "20171130-git";
-    asds = [ "sdl2kit" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/sdl2kit/2017-11-30/sdl2kit-20171130-git.tgz";
-      sha256 = "10ymmxqsvdn7ndda9k2qcixj75l7namgqdxc5y2w3v5r1313fy2d";
-      system = "sdl2kit";
-      asd = "sdl2kit";
-    });
-    systems = [ "sdl2kit" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cl-opengl" pkgs) (getAttr "sdl2" pkgs) (getAttr "defpackage-plus" pkgs) ];
-  };
-  sdl2kit-examples = {
-    pname = "sdl2kit-examples";
-    version = "20171130-git";
-    asds = [ "sdl2kit-examples" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/sdl2kit/2017-11-30/sdl2kit-20171130-git.tgz";
-      sha256 = "10ymmxqsvdn7ndda9k2qcixj75l7namgqdxc5y2w3v5r1313fy2d";
-      system = "sdl2kit-examples";
-      asd = "sdl2kit-examples";
-    });
-    systems = [ "sdl2kit-examples" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "defpackage-plus" pkgs) (getAttr "glkit" pkgs) (getAttr "mathkit" pkgs) (getAttr "sdl2kit" pkgs) ];
-  };
-  sealable-metaobjects = {
-    pname = "sealable-metaobjects";
-    version = "20200610-git";
-    asds = [ "sealable-metaobjects" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/sealable-metaobjects/2020-06-10/sealable-metaobjects-20200610-git.tgz";
-      sha256 = "0hz1ivlpfhnk1w2cw4q2i000j2dc7maay06ndzziyywg7li6zf2p";
-      system = "sealable-metaobjects";
-      asd = "sealable-metaobjects";
-    });
-    systems = [ "sealable-metaobjects" ];
-    lispLibs = [ (getAttr "closer-mop" pkgs) ];
-  };
-  secp256k1 = {
-    pname = "secp256k1";
-    version = "20220707-git";
-    asds = [ "secp256k1" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-secp256k1/2022-07-07/cl-secp256k1-20220707-git.tgz";
-      sha256 = "0lg84jkwwp95nnk865yfhg16z0d04wk3dzf5yilkfm2yxnmjnv85";
-      system = "secp256k1";
-      asd = "secp256k1";
-    });
-    systems = [ "secp256k1" ];
-    lispLibs = [ (getAttr "cffi" pkgs) ];
-  };
-  secp256k1_slash_test = {
-    pname = "secp256k1_test";
-    version = "20220707-git";
-    asds = [ "secp256k1" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-secp256k1/2022-07-07/cl-secp256k1-20220707-git.tgz";
-      sha256 = "0lg84jkwwp95nnk865yfhg16z0d04wk3dzf5yilkfm2yxnmjnv85";
-      system = "secp256k1";
-      asd = "secp256k1";
-    });
-    systems = [ "secp256k1/test" ];
-    lispLibs = [ (getAttr "secp256k1" pkgs) (getAttr "ironclad" pkgs) (getAttr "parachute" pkgs) (getAttr "trivial-benchmark" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  secret-values = {
-    pname = "secret-values";
-    version = "20201220-git";
-    asds = [ "secret-values" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/secret-values/2020-12-20/secret-values-20201220-git.tgz";
-      sha256 = "07ph49s27gvjzx60yy094bb9ddwiys34r8cx5l837i34nm2fn3nh";
-      system = "secret-values";
-      asd = "secret-values";
-    });
-    systems = [ "secret-values" ];
-    lispLibs = [  ];
-  };
-  secure-random = {
-    pname = "secure-random";
-    version = "20160208-git";
-    asds = [ "secure-random" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/secure-random/2016-02-08/secure-random-20160208-git.tgz";
-      sha256 = "09cnclnivkc87ja3z12ihcm02vkwp0cflcfa6hpjlbd5m75hvgsd";
-      system = "secure-random";
-      asd = "secure-random";
-    });
-    systems = [ "secure-random" ];
-    lispLibs = [ (getAttr "cl_plus_ssl" pkgs) ];
-  };
-  seedable-rng = {
-    pname = "seedable-rng";
-    version = "20220707-git";
-    asds = [ "seedable-rng" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/seedable-rng/2022-07-07/seedable-rng-20220707-git.tgz";
-      sha256 = "1pr2flvrj32m055apwn5f2cddki2ws5xldmj2v367iyry3lz2vm1";
-      system = "seedable-rng";
-      asd = "seedable-rng";
-    });
-    systems = [ "seedable-rng" ];
-    lispLibs = [ (getAttr "cl-pcg" pkgs) (getAttr "ironclad" pkgs) (getAttr "mfiano-utils" pkgs) ];
-  };
-  select = {
-    pname = "select";
-    version = "20221106-git";
-    asds = [ "select" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/select/2022-11-06/select-20221106-git.tgz";
-      sha256 = "0bhpvfqp7n33pia4y62qi31bx86gjl2nxjy529rfawac57c9rxv3";
-      system = "select";
-      asd = "select";
-    });
-    systems = [ "select" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "anaphora" pkgs) (getAttr "let-plus" pkgs) ];
-  };
-  select-file = {
-    pname = "select-file";
-    version = "20200427-git";
-    asds = [ "select-file" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/select-file/2020-04-27/select-file-20200427-git.tgz";
-      sha256 = "1v89k5vvn1a3gdhlwbb4wxggzzr1ic7iqzvrrxgsh90fr129rmzq";
-      system = "select-file";
-      asd = "select-file";
-    });
-    systems = [ "select-file" ];
-    lispLibs = [ (getAttr "cl-fad" pkgs) (getAttr "mcclim" pkgs) ];
-  };
-  select_slash_tests = {
-    pname = "select_tests";
-    version = "20221106-git";
-    asds = [ "select" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/select/2022-11-06/select-20221106-git.tgz";
-      sha256 = "0bhpvfqp7n33pia4y62qi31bx86gjl2nxjy529rfawac57c9rxv3";
-      system = "select";
-      asd = "select";
-    });
-    systems = [ "select/tests" ];
-    lispLibs = [ (getAttr "fiveam" pkgs) (getAttr "select" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  selenium = {
-    pname = "selenium";
-    version = "20160531-git";
-    asds = [ "selenium" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-selenium/2016-05-31/cl-selenium-20160531-git.tgz";
-      sha256 = "1wx3343gkmyb25vbbpv6g5d1m2c5qxrkq7hsz1v2fcchgdgvwgxl";
-      system = "selenium";
-      asd = "selenium";
-    });
-    systems = [ "selenium" ];
-    lispLibs = [ (getAttr "cl-ppcre" pkgs) (getAttr "cxml" pkgs) (getAttr "drakma" pkgs) (getAttr "puri" pkgs) (getAttr "split-sequence" pkgs) ];
-  };
-  semantic-spinneret = {
-    pname = "semantic-spinneret";
-    version = "20170830-git";
-    asds = [ "semantic-spinneret" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/semantic-spinneret/2017-08-30/semantic-spinneret-20170830-git.tgz";
-      sha256 = "0ghd4lwwcbcidj70j26hj9vic1nqrj78ksrqlxj29q61bnji05ix";
-      system = "semantic-spinneret";
-      asd = "semantic-spinneret";
-    });
-    systems = [ "semantic-spinneret" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "spinneret" pkgs) ];
-  };
-  sendgrid = {
-    pname = "sendgrid";
-    version = "20221106-git";
-    asds = [ "sendgrid" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-sendgrid/2022-11-06/cl-sendgrid-20221106-git.tgz";
-      sha256 = "0safsw9if83mv76y8fiaaa3a6akn7icqc6fmmacfypy3vkykr8i9";
-      system = "sendgrid";
-      asd = "sendgrid";
-    });
-    systems = [ "sendgrid" ];
-    lispLibs = [ (getAttr "dexador" pkgs) (getAttr "jonathan" pkgs) ];
-  };
-  sento = {
-    pname = "sento";
-    version = "20221106-git";
-    asds = [ "sento" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-gserver/2022-11-06/cl-gserver-20221106-git.tgz";
-      sha256 = "1a6bx0bmkli6nddd1pxqzjqjvkz2nkf7v3pn4d9bjv42xkch5hqc";
-      system = "sento";
-      asd = "sento";
-    });
-    systems = [ "sento" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "atomics" pkgs) (getAttr "binding-arrows" pkgs) (getAttr "blackbird" pkgs) (getAttr "bordeaux-threads" pkgs) (getAttr "cl-speedy-queue" pkgs) (getAttr "str" pkgs) (getAttr "log4cl" pkgs) (getAttr "lparallel" pkgs) (getAttr "timer-wheel" pkgs) ];
-  };
-  sento_slash_docs = {
-    pname = "sento_docs";
-    version = "20221106-git";
-    asds = [ "sento" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-gserver/2022-11-06/cl-gserver-20221106-git.tgz";
-      sha256 = "1a6bx0bmkli6nddd1pxqzjqjvkz2nkf7v3pn4d9bjv42xkch5hqc";
-      system = "sento";
-      asd = "sento";
-    });
-    systems = [ "sento/docs" ];
-    lispLibs = [ (getAttr "sento" pkgs) (getAttr "mgl-pax" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  sento_slash_tests = {
-    pname = "sento_tests";
-    version = "20221106-git";
-    asds = [ "sento" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-gserver/2022-11-06/cl-gserver-20221106-git.tgz";
-      sha256 = "1a6bx0bmkli6nddd1pxqzjqjvkz2nkf7v3pn4d9bjv42xkch5hqc";
-      system = "sento";
-      asd = "sento";
-    });
-    systems = [ "sento/tests" ];
-    lispLibs = [ (getAttr "sento" pkgs) (getAttr "cl-mock" pkgs) (getAttr "fiveam" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  sentry-client = {
-    pname = "sentry-client";
-    version = "20221106-git";
-    asds = [ "sentry-client" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-sentry-client/2022-11-06/cl-sentry-client-20221106-git.tgz";
-      sha256 = "10zynv31xhyknl991w85r0g1vyyghxg6bg7rd9bhny84p006fb38";
-      system = "sentry-client";
-      asd = "sentry-client";
-    });
-    systems = [ "sentry-client" ];
-    lispLibs = [ (getAttr "cl-json" pkgs) (getAttr "cl-ppcre" pkgs) (getAttr "drakma" pkgs) (getAttr "local-time" pkgs) (getAttr "trivial-backtrace" pkgs) (getAttr "uuid" pkgs) ];
-  };
-  sentry-client_dot_async = {
-    pname = "sentry-client.async";
-    version = "20221106-git";
-    asds = [ "sentry-client.async" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-sentry-client/2022-11-06/cl-sentry-client-20221106-git.tgz";
-      sha256 = "10zynv31xhyknl991w85r0g1vyyghxg6bg7rd9bhny84p006fb38";
-      system = "sentry-client.async";
-      asd = "sentry-client.async";
-    });
-    systems = [ "sentry-client.async" ];
-    lispLibs = [ (getAttr "sentry-client" pkgs) (getAttr "simple-tasks" pkgs) ];
-  };
-  sentry-client_dot_hunchentoot = {
-    pname = "sentry-client.hunchentoot";
-    version = "20221106-git";
-    asds = [ "sentry-client.hunchentoot" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-sentry-client/2022-11-06/cl-sentry-client-20221106-git.tgz";
-      sha256 = "10zynv31xhyknl991w85r0g1vyyghxg6bg7rd9bhny84p006fb38";
-      system = "sentry-client.hunchentoot";
-      asd = "sentry-client.hunchentoot";
-    });
-    systems = [ "sentry-client.hunchentoot" ];
-    lispLibs = [ (getAttr "sentry-client" pkgs) (getAttr "hunchentoot" pkgs) ];
-  };
-  sequence-iterators = {
-    pname = "sequence-iterators";
-    version = "20130813-darcs";
-    asds = [ "sequence-iterators" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/sequence-iterators/2013-08-13/sequence-iterators-20130813-darcs.tgz";
-      sha256 = "12flvy6hysqw0fa2jfkxrgphlk6b25hg2w2dxm1ylax0gw9fh1l5";
-      system = "sequence-iterators";
-      asd = "sequence-iterators";
-    });
-    systems = [ "sequence-iterators" ];
-    lispLibs = [ (getAttr "parse-declarations-1_dot_0" pkgs) ];
-  };
-  sequence-iterators-test = {
-    pname = "sequence-iterators-test";
-    version = "20130813-darcs";
-    asds = [ "sequence-iterators-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/sequence-iterators/2013-08-13/sequence-iterators-20130813-darcs.tgz";
-      sha256 = "12flvy6hysqw0fa2jfkxrgphlk6b25hg2w2dxm1ylax0gw9fh1l5";
-      system = "sequence-iterators-test";
-      asd = "sequence-iterators";
-    });
-    systems = [ "sequence-iterators-test" ];
-    lispLibs = [ (getAttr "sequence-iterators" pkgs) ];
-  };
-  serapeum = {
-    pname = "serapeum";
-    version = "20221106-git";
-    asds = [ "serapeum" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/serapeum/2022-11-06/serapeum-20221106-git.tgz";
-      sha256 = "0gz70hwlsyawmm7j85yjg449hpy57w5jdd7rkal6lhmmfnl0nsbp";
-      system = "serapeum";
-      asd = "serapeum";
-    });
-    systems = [ "serapeum" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "bordeaux-threads" pkgs) (getAttr "global-vars" pkgs) (getAttr "introspect-environment" pkgs) (getAttr "parse-declarations-1_dot_0" pkgs) (getAttr "parse-number" pkgs) (getAttr "split-sequence" pkgs) (getAttr "string-case" pkgs) (getAttr "trivia" pkgs) (getAttr "trivial-cltl2" pkgs) (getAttr "trivial-file-size" pkgs) (getAttr "trivial-garbage" pkgs) (getAttr "trivial-macroexpand-all" pkgs) ];
-  };
-  serapeum_slash_docs = {
-    pname = "serapeum_docs";
-    version = "20221106-git";
-    asds = [ "serapeum" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/serapeum/2022-11-06/serapeum-20221106-git.tgz";
-      sha256 = "0gz70hwlsyawmm7j85yjg449hpy57w5jdd7rkal6lhmmfnl0nsbp";
-      system = "serapeum";
-      asd = "serapeum";
-    });
-    systems = [ "serapeum/docs" ];
-    lispLibs = [ (getAttr "cl-ppcre" pkgs) (getAttr "serapeum" pkgs) (getAttr "swank" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  serializable-object = {
-    pname = "serializable-object";
-    version = "20191227-git";
-    asds = [ "serializable-object" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/serializable-object/2019-12-27/serializable-object-20191227-git.tgz";
-      sha256 = "0978ljw998ypryiiqmb1s11ymwg4h5qz9bv7ig1i29wf5s14s2i0";
-      system = "serializable-object";
-      asd = "serializable-object";
-    });
-    systems = [ "serializable-object" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) ];
-  };
-  serializable-object_dot_test = {
-    pname = "serializable-object.test";
-    version = "20191227-git";
-    asds = [ "serializable-object.test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/serializable-object/2019-12-27/serializable-object-20191227-git.tgz";
-      sha256 = "0978ljw998ypryiiqmb1s11ymwg4h5qz9bv7ig1i29wf5s14s2i0";
-      system = "serializable-object.test";
-      asd = "serializable-object.test";
-    });
-    systems = [ "serializable-object.test" ];
-    lispLibs = [ (getAttr "fiveam" pkgs) (getAttr "serializable-object" pkgs) ];
-  };
-  series = {
-    pname = "series";
-    version = "20131111-git";
-    asds = [ "series" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/series/2013-11-11/series-20131111-git.tgz";
-      sha256 = "07hk2lhfx42zk018pxqvn4gs77vd4n4g8m4xxbqaxgca76mifwfw";
-      system = "series";
-      asd = "series";
-    });
-    systems = [ "series" ];
-    lispLibs = [  ];
-  };
-  series-tests = {
-    pname = "series-tests";
-    version = "20131111-git";
-    asds = [ "series-tests" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/series/2013-11-11/series-20131111-git.tgz";
-      sha256 = "07hk2lhfx42zk018pxqvn4gs77vd4n4g8m4xxbqaxgca76mifwfw";
-      system = "series-tests";
-      asd = "series";
-    });
-    systems = [ "series-tests" ];
-    lispLibs = [ (getAttr "series" pkgs) ];
-  };
-  session-token = {
-    pname = "session-token";
-    version = "20141106-git";
-    asds = [ "session-token" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/session-token/2014-11-06/session-token-20141106-git.tgz";
-      sha256 = "1yb6m8nbh4gaskplrd2bwsnpkq6dl9dkvbjmvhzls6vh4lp6cc2z";
-      system = "session-token";
-      asd = "session-token";
-    });
-    systems = [ "session-token" ];
-    lispLibs = [ (getAttr "cl-isaac" pkgs) ];
-  };
-  setup-cffi = {
-    pname = "setup-cffi";
-    version = "master-1a957fb2-git";
-    asds = [ "setup-cffi" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/gendl/2022-07-07/gendl-master-1a957fb2-git.tgz";
-      sha256 = "0j47qnvvfx3vnh3pll6rkya5m142hi93bd5jk65rv43vbc94sv30";
-      system = "setup-cffi";
-      asd = "setup-cffi";
-    });
-    systems = [ "setup-cffi" ];
-    lispLibs = [ (getAttr "cffi" pkgs) ];
-  };
-  sexml = {
-    pname = "sexml";
-    version = "20140713-git";
-    asds = [ "sexml" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/sexml/2014-07-13/sexml-20140713-git.tgz";
-      sha256 = "1s7isk9v7qh03sf60zw32kaa1rgvdh24bsc37q173r282m8plbk3";
-      system = "sexml";
-      asd = "sexml";
-    });
-    systems = [ "sexml" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cl-ppcre" pkgs) (getAttr "contextl" pkgs) (getAttr "cxml" pkgs) (getAttr "macroexpand-dammit" pkgs) ];
-  };
-  sexml-objects = {
-    pname = "sexml-objects";
-    version = "20140713-git";
-    asds = [ "sexml-objects" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/sexml/2014-07-13/sexml-20140713-git.tgz";
-      sha256 = "1s7isk9v7qh03sf60zw32kaa1rgvdh24bsc37q173r282m8plbk3";
-      system = "sexml-objects";
-      asd = "sexml-objects";
-    });
-    systems = [ "sexml-objects" ];
-    lispLibs = [ (getAttr "sexml" pkgs) ];
-  };
-  sha1 = {
-    pname = "sha1";
-    version = "20211020-git";
-    asds = [ "sha1" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/sha1/2021-10-20/sha1-20211020-git.tgz";
-      sha256 = "1cfn0j5yfwqkwr2dm73wr9hz8dmws3ngxlbk9886ahxkg544qx4z";
-      system = "sha1";
-      asd = "sha1";
-    });
-    systems = [ "sha1" ];
-    lispLibs = [  ];
-  };
-  sha3 = {
-    pname = "sha3";
-    version = "20180228-git";
-    asds = [ "sha3" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/sha3/2018-02-28/sha3-20180228-git.tgz";
-      sha256 = "112pwx8jzraxn0xqssmjlgd7j4sbl19vz6l8ansdq1zd69dryzy6";
-      system = "sha3";
-      asd = "sha3";
-    });
-    systems = [ "sha3" ];
-    lispLibs = [  ];
-  };
-  shadchen = {
-    pname = "shadchen";
-    version = "20131003-git";
-    asds = [ "shadchen" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/shadchen/2013-10-03/shadchen-20131003-git.tgz";
-      sha256 = "0731hrpzf9pn1hyvs9wl0w3mnv13mr9ky3jx3dc4baj4nmjyb1k6";
-      system = "shadchen";
-      asd = "shadchen";
-    });
-    systems = [ "shadchen" ];
-    lispLibs = [  ];
-  };
-  shadow = {
-    pname = "shadow";
-    version = "20220707-git";
-    asds = [ "shadow" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/shadow/2022-07-07/shadow-20220707-git.tgz";
-      sha256 = "1lw98ir9381kmmranaa111f8jh47adsx0v4hzlw3qkf2xjcfah3l";
-      system = "shadow";
-      asd = "shadow";
-    });
-    systems = [ "shadow" ];
-    lispLibs = [ (getAttr "cffi" pkgs) (getAttr "cl-opengl" pkgs) (getAttr "glsl-packing" pkgs) (getAttr "mfiano-utils" pkgs) (getAttr "static-vectors" pkgs) (getAttr "varjo" pkgs) ];
-  };
-  shared-preferences = {
-    pname = "shared-preferences";
-    version = "1.1.1";
-    asds = [ "shared-preferences" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/shared-preferences/2021-02-28/shared-preferences_1.1.1.tgz";
-      sha256 = "12m4kaba2lxndkjw30a6y2rq16fflh5016lp74l7pf3v0y3j1ydf";
-      system = "shared-preferences";
-      asd = "shared-preferences";
-    });
-    systems = [ "shared-preferences" ];
-    lispLibs = [ (getAttr "inheriting-readers" pkgs) (getAttr "trivial-garbage" pkgs) ];
-  };
-  shared-preferences_tests = {
-    pname = "shared-preferences_tests";
-    version = "1.1.1";
-    asds = [ "shared-preferences_tests" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/shared-preferences/2021-02-28/shared-preferences_1.1.1.tgz";
-      sha256 = "12m4kaba2lxndkjw30a6y2rq16fflh5016lp74l7pf3v0y3j1ydf";
-      system = "shared-preferences_tests";
-      asd = "shared-preferences_tests";
-    });
-    systems = [ "shared-preferences_tests" ];
-    lispLibs = [ (getAttr "parachute" pkgs) (getAttr "shared-preferences" pkgs) ];
-  };
-  shasht = {
-    pname = "shasht";
-    version = "20221106-git";
-    asds = [ "shasht" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/shasht/2022-11-06/shasht-20221106-git.tgz";
-      sha256 = "1xpspksfkhk95wjirrqfrqm7sc1wyr2pjw7z25i0qz02rg479hlg";
-      system = "shasht";
-      asd = "shasht";
-    });
-    systems = [ "shasht" ];
-    lispLibs = [ (getAttr "closer-mop" pkgs) (getAttr "trivial-do" pkgs) ];
-  };
-  shasht_slash_test = {
-    pname = "shasht_test";
-    version = "20221106-git";
-    asds = [ "shasht" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/shasht/2022-11-06/shasht-20221106-git.tgz";
-      sha256 = "1xpspksfkhk95wjirrqfrqm7sc1wyr2pjw7z25i0qz02rg479hlg";
-      system = "shasht";
-      asd = "shasht";
-    });
-    systems = [ "shasht/test" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "parachute" pkgs) (getAttr "shasht" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  sheeple = {
-    pname = "sheeple";
-    version = "20210124-git";
-    asds = [ "sheeple" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/sheeple/2021-01-24/sheeple-20210124-git.tgz";
-      sha256 = "13k6xm8a29xxkrwgc5j3bk2wr9skg4bzdnc4krrzgcdmx4gbcca3";
-      system = "sheeple";
-      asd = "sheeple";
-    });
-    systems = [ "sheeple" ];
-    lispLibs = [  ];
-  };
-  sheeple-tests = {
-    pname = "sheeple-tests";
-    version = "20210124-git";
-    asds = [ "sheeple-tests" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/sheeple/2021-01-24/sheeple-20210124-git.tgz";
-      sha256 = "13k6xm8a29xxkrwgc5j3bk2wr9skg4bzdnc4krrzgcdmx4gbcca3";
-      system = "sheeple-tests";
-      asd = "sheeple";
-    });
-    systems = [ "sheeple-tests" ];
-    lispLibs = [ (getAttr "fiveam" pkgs) (getAttr "sheeple" pkgs) ];
-  };
-  shellpool = {
-    pname = "shellpool";
-    version = "20200925-git";
-    asds = [ "shellpool" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/shellpool/2020-09-25/shellpool-20200925-git.tgz";
-      sha256 = "1bpv58i2l2a3ayk3jvi2wwd90gjczp0qk24bj82775qp8miw9vz0";
-      system = "shellpool";
-      asd = "shellpool";
-    });
-    systems = [ "shellpool" ];
-    lispLibs = [ (getAttr "bordeaux-threads" pkgs) (getAttr "bt-semaphore" pkgs) (getAttr "cl-fad" pkgs) (getAttr "trivial-features" pkgs) ];
-  };
-  shelly = {
-    pname = "shelly";
-    version = "20141106-git";
-    asds = [ "shelly" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/shelly/2014-11-06/shelly-20141106-git.tgz";
-      sha256 = "07whfcd2ygq07lw73bqby74cqbp2bx0rnyx7c0v7s16y9xfqxw7b";
-      system = "shelly";
-      asd = "shelly";
-    });
-    systems = [ "shelly" ];
-    lispLibs = [ (getAttr "babel" pkgs) (getAttr "bordeaux-threads" pkgs) (getAttr "cl-fad" pkgs) (getAttr "local-time" pkgs) (getAttr "split-sequence" pkgs) (getAttr "trivial-signal" pkgs) (getAttr "uiop" pkgs) ];
-  };
-  shelly-test = {
-    pname = "shelly-test";
-    version = "20141106-git";
-    asds = [ "shelly-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/shelly/2014-11-06/shelly-20141106-git.tgz";
-      sha256 = "07whfcd2ygq07lw73bqby74cqbp2bx0rnyx7c0v7s16y9xfqxw7b";
-      system = "shelly-test";
-      asd = "shelly-test";
-    });
-    systems = [ "shelly-test" ];
-    lispLibs = [ (getAttr "cl-test-more" pkgs) (getAttr "shelly" pkgs) ];
-  };
-  shlex = {
-    pname = "shlex";
-    version = "20210411-git";
-    asds = [ "shlex" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-shlex/2021-04-11/cl-shlex-20210411-git.tgz";
-      sha256 = "16ag48sswgimr1fzr582vhym4s03idpd4lkydw5s58lv80ibpim8";
-      system = "shlex";
-      asd = "shlex";
-    });
-    systems = [ "shlex" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cl-ppcre" pkgs) (getAttr "cl-unicode" pkgs) (getAttr "serapeum" pkgs) ];
-  };
-  shlex_slash_test = {
-    pname = "shlex_test";
-    version = "20210411-git";
-    asds = [ "shlex" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-shlex/2021-04-11/cl-shlex-20210411-git.tgz";
-      sha256 = "16ag48sswgimr1fzr582vhym4s03idpd4lkydw5s58lv80ibpim8";
-      system = "shlex";
-      asd = "shlex";
-    });
-    systems = [ "shlex/test" ];
-    lispLibs = [ (getAttr "shlex" pkgs) (getAttr "fiveam" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  shop3 = {
-    pname = "shop3";
-    version = "20221106-git";
-    asds = [ "shop3" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/shop3/2022-11-06/shop3-20221106-git.tgz";
-      sha256 = "18fqx41qyd74q0y1niav05wsrjd6wcn6sa6imx0ykyw6libq33z3";
-      system = "shop3";
-      asd = "shop3";
-    });
-    systems = [ "shop3" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "fiveam-asdf" pkgs) (getAttr "iterate" pkgs) (getAttr "trivial-garbage" pkgs) ];
-  };
-  shop3-thmpr-api = {
-    pname = "shop3-thmpr-api";
-    version = "20221106-git";
-    asds = [ "shop3-thmpr-api" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/shop3/2022-11-06/shop3-20221106-git.tgz";
-      sha256 = "18fqx41qyd74q0y1niav05wsrjd6wcn6sa6imx0ykyw6libq33z3";
-      system = "shop3-thmpr-api";
-      asd = "shop3-thmpr-api";
-    });
-    systems = [ "shop3-thmpr-api" ];
-    lispLibs = [ (getAttr "shop3" pkgs) ];
-  };
-  shop3_slash_common = {
-    pname = "shop3_common";
-    version = "20221106-git";
-    asds = [ "shop3" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/shop3/2022-11-06/shop3-20221106-git.tgz";
-      sha256 = "18fqx41qyd74q0y1niav05wsrjd6wcn6sa6imx0ykyw6libq33z3";
-      system = "shop3";
-      asd = "shop3";
-    });
-    systems = [ "shop3/common" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "iterate" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  shop3_slash_openstacks = {
-    pname = "shop3_openstacks";
-    version = "20221106-git";
-    asds = [ "shop3" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/shop3/2022-11-06/shop3-20221106-git.tgz";
-      sha256 = "18fqx41qyd74q0y1niav05wsrjd6wcn6sa6imx0ykyw6libq33z3";
-      system = "shop3";
-      asd = "shop3";
-    });
-    systems = [ "shop3/openstacks" ];
-    lispLibs = [ (getAttr "shop3" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  shop3_slash_plan-grapher = {
-    pname = "shop3_plan-grapher";
-    version = "20221106-git";
-    asds = [ "shop3" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/shop3/2022-11-06/shop3-20221106-git.tgz";
-      sha256 = "18fqx41qyd74q0y1niav05wsrjd6wcn6sa6imx0ykyw6libq33z3";
-      system = "shop3";
-      asd = "shop3";
-    });
-    systems = [ "shop3/plan-grapher" ];
-    lispLibs = [ (getAttr "cl-dot" pkgs) (getAttr "shop3" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  shop3_slash_rovers = {
-    pname = "shop3_rovers";
-    version = "20221106-git";
-    asds = [ "shop3" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/shop3/2022-11-06/shop3-20221106-git.tgz";
-      sha256 = "18fqx41qyd74q0y1niav05wsrjd6wcn6sa6imx0ykyw6libq33z3";
-      system = "shop3";
-      asd = "shop3";
-    });
-    systems = [ "shop3/rovers" ];
-    lispLibs = [ (getAttr "shop3" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  shop3_slash_test-unifier = {
-    pname = "shop3_test-unifier";
-    version = "20221106-git";
-    asds = [ "shop3" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/shop3/2022-11-06/shop3-20221106-git.tgz";
-      sha256 = "18fqx41qyd74q0y1niav05wsrjd6wcn6sa6imx0ykyw6libq33z3";
-      system = "shop3";
-      asd = "shop3";
-    });
-    systems = [ "shop3/test-unifier" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "fiveam-asdf" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  shop3_slash_theorem-prover = {
-    pname = "shop3_theorem-prover";
-    version = "20221106-git";
-    asds = [ "shop3" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/shop3/2022-11-06/shop3-20221106-git.tgz";
-      sha256 = "18fqx41qyd74q0y1niav05wsrjd6wcn6sa6imx0ykyw6libq33z3";
-      system = "shop3";
-      asd = "shop3";
-    });
-    systems = [ "shop3/theorem-prover" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "iterate" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  shop3_slash_unifier = {
-    pname = "shop3_unifier";
-    version = "20221106-git";
-    asds = [ "shop3" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/shop3/2022-11-06/shop3-20221106-git.tgz";
-      sha256 = "18fqx41qyd74q0y1niav05wsrjd6wcn6sa6imx0ykyw6libq33z3";
-      system = "shop3";
-      asd = "shop3";
-    });
-    systems = [ "shop3/unifier" ];
-    lispLibs = [  ];
-    meta = {
-      broken = true;
-    };
-  };
-  should-test = {
-    pname = "should-test";
-    version = "20191007-git";
-    asds = [ "should-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/should-test/2019-10-07/should-test-20191007-git.tgz";
-      sha256 = "1fqqa7lhf28qg60ji9libkylkcy747x576qpjn1y7c945j2fxmnm";
-      system = "should-test";
-      asd = "should-test";
-    });
-    systems = [ "should-test" ];
-    lispLibs = [ (getAttr "cl-ppcre" pkgs) (getAttr "local-time" pkgs) (getAttr "osicat" pkgs) (getAttr "rutils" pkgs) ];
-  };
-  shuffletron = {
-    pname = "shuffletron";
-    version = "20181018-git";
-    asds = [ "shuffletron" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/shuffletron/2018-10-18/shuffletron-20181018-git.tgz";
-      sha256 = "10626wp2xdk0wxj0kl49m9gyb2bp6f0vp67563mw6zrzfs7ynpkb";
-      system = "shuffletron";
-      asd = "shuffletron";
-    });
-    systems = [ "shuffletron" ];
-    lispLibs = [ (getAttr "mixalot" pkgs) (getAttr "mixalot-flac" pkgs) (getAttr "mixalot-mp3" pkgs) (getAttr "mixalot-vorbis" pkgs) (getAttr "osicat" pkgs) ];
-  };
-  silo = {
-    pname = "silo";
-    version = "20211020-git";
-    asds = [ "silo" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/colliflower/2021-10-20/colliflower-20211020-git.tgz";
-      sha256 = "1fzn9s7wm7wmffrdm21lpvry9jb320456cmmprn976a533lp704r";
-      system = "silo";
-      asd = "silo";
-    });
-    systems = [ "silo" ];
-    lispLibs = [  ];
-  };
-  simple = {
-    pname = "simple";
-    version = "clon-1.0b25";
-    asds = [ "simple" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-clon/2021-04-11/clon-1.0b25.tgz";
-      sha256 = "0nj47xl2fwj7z31wiaad8dw97fpq3zpwxlgmpvppawz0z3hgf8d0";
-      system = "simple";
-      asd = "simple";
-    });
-    systems = [ "simple" ];
-    lispLibs = [ (getAttr "net_dot_didierverna_dot_clon" pkgs) ];
-  };
-  simple-actors = {
-    pname = "simple-actors";
-    version = "20200925-git";
-    asds = [ "simple-actors" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/simple-actors/2020-09-25/simple-actors-20200925-git.tgz";
-      sha256 = "1q843l1bh0xipp535gwm7713gpp04cycvq0i8yz54b6ym3dzkql4";
-      system = "simple-actors";
-      asd = "simple-actors";
-    });
-    systems = [ "simple-actors" ];
-    lispLibs = [ (getAttr "bordeaux-threads" pkgs) ];
-  };
-  simple-config = {
-    pname = "simple-config";
-    version = "20220707-git";
-    asds = [ "simple-config" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/simple-config/2022-07-07/simple-config-20220707-git.tgz";
-      sha256 = "006a0nn2p6ilvzbk2qj081nb832aa39sna1lzh5r5lscmlasdh50";
-      system = "simple-config";
-      asd = "simple-config";
-    });
-    systems = [ "simple-config" ];
-    lispLibs = [ (getAttr "str" pkgs) (getAttr "uiop" pkgs) ];
-  };
-  simple-config-test = {
-    pname = "simple-config-test";
-    version = "20220707-git";
-    asds = [ "simple-config-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/simple-config/2022-07-07/simple-config-20220707-git.tgz";
-      sha256 = "006a0nn2p6ilvzbk2qj081nb832aa39sna1lzh5r5lscmlasdh50";
-      system = "simple-config-test";
-      asd = "simple-config-test";
-    });
-    systems = [ "simple-config-test" ];
-    lispLibs = [ (getAttr "prove" pkgs) (getAttr "simple-config" pkgs) ];
-  };
-  simple-currency = {
-    pname = "simple-currency";
-    version = "20171130-git";
-    asds = [ "simple-currency" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/simple-currency/2017-11-30/simple-currency-20171130-git.tgz";
-      sha256 = "1qrxaj5v25165vyjp2fmasasjri2cn53y6ckv3rlv04skifvnq2s";
-      system = "simple-currency";
-      asd = "simple-currency";
-    });
-    systems = [ "simple-currency" ];
-    lispLibs = [ (getAttr "cl-store" pkgs) (getAttr "dexador" pkgs) (getAttr "plump" pkgs) (getAttr "simple-date" pkgs) (getAttr "split-sequence" pkgs) ];
-  };
-  simple-date = {
-    pname = "simple-date";
-    version = "20221106-git";
-    asds = [ "simple-date" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/postmodern/2022-11-06/postmodern-20221106-git.tgz";
-      sha256 = "012ipwi4m5x6jhl7pd9gwvdga5hgp1l08vqdgd28rzy34s2mfv74";
-      system = "simple-date";
-      asd = "simple-date";
-    });
-    systems = [ "simple-date" ];
-    lispLibs = [  ];
-  };
-  simple-date-time = {
-    pname = "simple-date-time";
-    version = "20160421-git";
-    asds = [ "simple-date-time" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/simple-date-time/2016-04-21/simple-date-time-20160421-git.tgz";
-      sha256 = "06iwf13gcdyqhkzfkcsfdl8iqbdl44cx01c3fjsmhl0v1pp8h2m4";
-      system = "simple-date-time";
-      asd = "simple-date-time";
-    });
-    systems = [ "simple-date-time" ];
-    lispLibs = [ (getAttr "cl-ppcre" pkgs) ];
-  };
-  simple-date_slash_postgres-glue = {
-    pname = "simple-date_postgres-glue";
-    version = "20221106-git";
-    asds = [ "simple-date" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/postmodern/2022-11-06/postmodern-20221106-git.tgz";
-      sha256 = "012ipwi4m5x6jhl7pd9gwvdga5hgp1l08vqdgd28rzy34s2mfv74";
-      system = "simple-date";
-      asd = "simple-date";
-    });
-    systems = [ "simple-date/postgres-glue" ];
-    lispLibs = [ (getAttr "fiveam" pkgs) (getAttr "cl-postgres" pkgs) (getAttr "simple-date" pkgs) (getAttr "uiop" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  simple-date_slash_tests = {
-    pname = "simple-date_tests";
-    version = "20221106-git";
-    asds = [ "simple-date" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/postmodern/2022-11-06/postmodern-20221106-git.tgz";
-      sha256 = "012ipwi4m5x6jhl7pd9gwvdga5hgp1l08vqdgd28rzy34s2mfv74";
-      system = "simple-date";
-      asd = "simple-date";
-    });
-    systems = [ "simple-date/tests" ];
-    lispLibs = [ (getAttr "fiveam" pkgs) (getAttr "simple-date" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  simple-finalizer = {
-    pname = "simple-finalizer";
-    version = "20101006-git";
-    asds = [ "simple-finalizer" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/simple-finalizer/2010-10-06/simple-finalizer-20101006-git.tgz";
-      sha256 = "1qdm48zjlkbygz9ip006xwpas59fhijrswv1k7pzvhdwl04vkq65";
-      system = "simple-finalizer";
-      asd = "simple-finalizer";
-    });
-    systems = [ "simple-finalizer" ];
-    lispLibs = [ (getAttr "cffi" pkgs) (getAttr "trivial-garbage" pkgs) ];
-  };
-  simple-flow-dispatcher = {
-    pname = "simple-flow-dispatcher";
-    version = "stable-git";
-    asds = [ "simple-flow-dispatcher" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/simple-flow-dispatcher/2020-10-16/simple-flow-dispatcher-stable-git.tgz";
-      sha256 = "11k16svq4mgf0pagrs4drvf57hawffghv9g96b1n071nqyk2ald2";
-      system = "simple-flow-dispatcher";
-      asd = "simple-flow-dispatcher";
-    });
-    systems = [ "simple-flow-dispatcher" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "bodge-queue" pkgs) (getAttr "cl-muth" pkgs) ];
-  };
-  simple-guess = {
-    pname = "simple-guess";
-    version = "1.0";
-    asds = [ "simple-guess" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/simple-guess/2020-09-25/simple-guess_1.0.tgz";
-      sha256 = "11v3wxj3k036r0kazn69vi580qm593ir1yf7j5d737j4rb382682";
-      system = "simple-guess";
-      asd = "simple-guess";
-    });
-    systems = [ "simple-guess" ];
-    lispLibs = [  ];
-  };
-  simple-guess_tests = {
-    pname = "simple-guess_tests";
-    version = "1.0";
-    asds = [ "simple-guess_tests" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/simple-guess/2020-09-25/simple-guess_1.0.tgz";
-      sha256 = "11v3wxj3k036r0kazn69vi580qm593ir1yf7j5d737j4rb382682";
-      system = "simple-guess_tests";
-      asd = "simple-guess_tests";
-    });
-    systems = [ "simple-guess_tests" ];
-    lispLibs = [ (getAttr "fakenil" pkgs) (getAttr "parachute" pkgs) (getAttr "simple-guess" pkgs) ];
-  };
-  simple-inferiors = {
-    pname = "simple-inferiors";
-    version = "20200325-git";
-    asds = [ "simple-inferiors" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/simple-inferiors/2020-03-25/simple-inferiors-20200325-git.tgz";
-      sha256 = "08vsvqv3768bwb2y8mwxbw5wyqzzwqr7rd004r6gafdgf9p9mcx3";
-      system = "simple-inferiors";
-      asd = "simple-inferiors";
-    });
-    systems = [ "simple-inferiors" ];
-    lispLibs = [ (getAttr "bordeaux-threads" pkgs) (getAttr "documentation-utils" pkgs) (getAttr "uiop" pkgs) ];
-  };
-  simple-neural-network = {
-    pname = "simple-neural-network";
-    version = "20221106-git";
-    asds = [ "simple-neural-network" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/simple-neural-network/2022-11-06/simple-neural-network-20221106-git.tgz";
-      sha256 = "14bxgxqmn6n9yyv3xnh1km47b5l85brhddks43zsxhc8i0q3qgqg";
-      system = "simple-neural-network";
-      asd = "simple-neural-network";
-    });
-    systems = [ "simple-neural-network" ];
-    lispLibs = [ (getAttr "cl-store" pkgs) (getAttr "lparallel" pkgs) ];
-  };
-  simple-neural-network_slash_test = {
-    pname = "simple-neural-network_test";
-    version = "20221106-git";
-    asds = [ "simple-neural-network" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/simple-neural-network/2022-11-06/simple-neural-network-20221106-git.tgz";
-      sha256 = "14bxgxqmn6n9yyv3xnh1km47b5l85brhddks43zsxhc8i0q3qgqg";
-      system = "simple-neural-network";
-      asd = "simple-neural-network";
-    });
-    systems = [ "simple-neural-network/test" ];
-    lispLibs = [ (getAttr "chipz" pkgs) (getAttr "fiveam" pkgs) (getAttr "simple-neural-network" pkgs) (getAttr "uiop" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  simple-parallel-tasks = {
-    pname = "simple-parallel-tasks";
-    version = "20201220-git";
-    asds = [ "simple-parallel-tasks" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/simple-parallel-tasks/2020-12-20/simple-parallel-tasks-20201220-git.tgz";
-      sha256 = "0gvbpyff4siifp3cp86cpr9ksmakn66fx21f3h0hpn647zl07nj7";
-      system = "simple-parallel-tasks";
-      asd = "simple-parallel-tasks";
-    });
-    systems = [ "simple-parallel-tasks" ];
-    lispLibs = [ (getAttr "chanl" pkgs) ];
-  };
-  simple-parallel-tasks-tests = {
-    pname = "simple-parallel-tasks-tests";
-    version = "20201220-git";
-    asds = [ "simple-parallel-tasks-tests" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/simple-parallel-tasks/2020-12-20/simple-parallel-tasks-20201220-git.tgz";
-      sha256 = "0gvbpyff4siifp3cp86cpr9ksmakn66fx21f3h0hpn647zl07nj7";
-      system = "simple-parallel-tasks-tests";
-      asd = "simple-parallel-tasks-tests";
-    });
-    systems = [ "simple-parallel-tasks-tests" ];
-    lispLibs = [ (getAttr "fiveam" pkgs) (getAttr "simple-parallel-tasks" pkgs) ];
-  };
-  simple-rgb = {
-    pname = "simple-rgb";
-    version = "20190521-git";
-    asds = [ "simple-rgb" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/simple-rgb/2019-05-21/simple-rgb-20190521-git.tgz";
-      sha256 = "0ggv0h2n4mvwnggjr1b40gw667gnyykzki2zadaczi38ydzyzlp1";
-      system = "simple-rgb";
-      asd = "simple-rgb";
-    });
-    systems = [ "simple-rgb" ];
-    lispLibs = [  ];
-  };
-  simple-routes = {
-    pname = "simple-routes";
-    version = "20180228-git";
-    asds = [ "simple-routes" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/simple-routes/2018-02-28/simple-routes-20180228-git.tgz";
-      sha256 = "0zkjl69zf1ynmqmvwccdbip3wxfyi7xplivv70qwxzd27mc0kh3k";
-      system = "simple-routes";
-      asd = "simple-routes";
-    });
-    systems = [ "simple-routes" ];
-    lispLibs = [ (getAttr "cl-ppcre" pkgs) (getAttr "hunchentoot" pkgs) ];
-  };
-  simple-scanf = {
-    pname = "simple-scanf";
-    version = "20211209-git";
-    asds = [ "simple-scanf" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-string-match/2021-12-09/cl-string-match-20211209-git.tgz";
-      sha256 = "0zndlkw3qy3vw4px4qv884z6232w8zfaliyc88irjwizdv35wcq9";
-      system = "simple-scanf";
-      asd = "simple-scanf";
-    });
-    systems = [ "simple-scanf" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "iterate" pkgs) (getAttr "parse-float" pkgs) (getAttr "proc-parse" pkgs) ];
-  };
-  simple-tasks = {
-    pname = "simple-tasks";
-    version = "20190710-git";
-    asds = [ "simple-tasks" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/simple-tasks/2019-07-10/simple-tasks-20190710-git.tgz";
-      sha256 = "1ls1pij7dvb65g4nam7nvik1218jvfk5iplr48vy290fw3lq7v98";
-      system = "simple-tasks";
-      asd = "simple-tasks";
-    });
-    systems = [ "simple-tasks" ];
-    lispLibs = [ (getAttr "array-utils" pkgs) (getAttr "bordeaux-threads" pkgs) (getAttr "dissect" pkgs) ];
-  };
-  simpleroutes-demo = {
-    pname = "simpleroutes-demo";
-    version = "20180228-git";
-    asds = [ "simpleroutes-demo" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/simple-routes/2018-02-28/simple-routes-20180228-git.tgz";
-      sha256 = "0zkjl69zf1ynmqmvwccdbip3wxfyi7xplivv70qwxzd27mc0kh3k";
-      system = "simpleroutes-demo";
-      asd = "simple-routes";
-    });
-    systems = [ "simpleroutes-demo" ];
-    lispLibs = [ (getAttr "cl-fad" pkgs) (getAttr "cl-ppcre" pkgs) (getAttr "cl-who" pkgs) (getAttr "hunchentoot" pkgs) (getAttr "simple-routes" pkgs) ];
-  };
-  simpleroutes-test = {
-    pname = "simpleroutes-test";
-    version = "20180228-git";
-    asds = [ "simpleroutes-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/simple-routes/2018-02-28/simple-routes-20180228-git.tgz";
-      sha256 = "0zkjl69zf1ynmqmvwccdbip3wxfyi7xplivv70qwxzd27mc0kh3k";
-      system = "simpleroutes-test";
-      asd = "simple-routes";
-    });
-    systems = [ "simpleroutes-test" ];
-    lispLibs = [ (getAttr "simple-routes" pkgs) ];
-  };
-  simplet = {
-    pname = "simplet";
-    version = "20191227-git";
-    asds = [ "simplet" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/simplet/2019-12-27/simplet-20191227-git.tgz";
-      sha256 = "1scsalzbwxk6z48b61zq532c02l36yr3vl2jdy0xjm2diycq6jgs";
-      system = "simplet";
-      asd = "simplet";
-    });
-    systems = [ "simplet" ];
-    lispLibs = [  ];
-  };
-  simplet-asdf = {
-    pname = "simplet-asdf";
-    version = "20191227-git";
-    asds = [ "simplet-asdf" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/simplet/2019-12-27/simplet-20191227-git.tgz";
-      sha256 = "1scsalzbwxk6z48b61zq532c02l36yr3vl2jdy0xjm2diycq6jgs";
-      system = "simplet-asdf";
-      asd = "simplet-asdf";
-    });
-    systems = [ "simplet-asdf" ];
-    lispLibs = [  ];
-  };
-  simplet_slash_test = {
-    pname = "simplet_test";
-    version = "20191227-git";
-    asds = [ "simplet" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/simplet/2019-12-27/simplet-20191227-git.tgz";
-      sha256 = "1scsalzbwxk6z48b61zq532c02l36yr3vl2jdy0xjm2diycq6jgs";
-      system = "simplet";
-      asd = "simplet";
-    });
-    systems = [ "simplet/test" ];
-    lispLibs = [ (getAttr "simplet" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  simplified-types = {
-    pname = "simplified-types";
-    version = "20190813-git";
-    asds = [ "simplified-types" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/simplified-types/2019-08-13/simplified-types-20190813-git.tgz";
-      sha256 = "1hdwmn5lz717aj6qdqmfmr3cbjl8l3giwn0fb5ca9pj83cx7fg8y";
-      system = "simplified-types";
-      asd = "simplified-types";
-    });
-    systems = [ "simplified-types" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "introspect-environment" pkgs) (getAttr "trivia" pkgs) ];
-  };
-  simplified-types-test-suite = {
-    pname = "simplified-types-test-suite";
-    version = "20190813-git";
-    asds = [ "simplified-types-test-suite" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/simplified-types/2019-08-13/simplified-types-20190813-git.tgz";
-      sha256 = "1hdwmn5lz717aj6qdqmfmr3cbjl8l3giwn0fb5ca9pj83cx7fg8y";
-      system = "simplified-types-test-suite";
-      asd = "simplified-types-test-suite";
-    });
-    systems = [ "simplified-types-test-suite" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "simplified-types" pkgs) ];
-  };
-  simpsamp = {
-    pname = "simpsamp";
-    version = "0.1";
-    asds = [ "simpsamp" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/simpsamp/2010-10-06/simpsamp-0.1.tgz";
-      sha256 = "0i85andjaz16lh4wwpdvd5kgg7lsfp206g7kniy16gs78xjy5jlc";
-      system = "simpsamp";
-      asd = "simpsamp";
-    });
-    systems = [ "simpsamp" ];
-    lispLibs = [ (getAttr "jpl-util" pkgs) ];
-  };
-  single-threaded-ccl = {
-    pname = "single-threaded-ccl";
-    version = "20150608-git";
-    asds = [ "single-threaded-ccl" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/single-threaded-ccl/2015-06-08/single-threaded-ccl-20150608-git.tgz";
-      sha256 = "0d8cf8x77b3f7qh2cr3fnkc6i7dm7pwlnldmv9k4q033rmmhnfxb";
-      system = "single-threaded-ccl";
-      asd = "single-threaded-ccl";
-    });
-    systems = [ "single-threaded-ccl" ];
-    lispLibs = [  ];
-  };
-  singleton-classes = {
-    pname = "singleton-classes";
-    version = "20190307-hg";
-    asds = [ "singleton-classes" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-abstract-classes/2019-03-07/cl-abstract-classes-20190307-hg.tgz";
-      sha256 = "0q03j3ksgn56j9xvs3d3hhasplj3hvg488f4cx1z97nlyqxr5w1d";
-      system = "singleton-classes";
-      asd = "singleton-classes";
-    });
-    systems = [ "singleton-classes" ];
-    lispLibs = [ (getAttr "closer-mop" pkgs) ];
-  };
-  sip-hash = {
-    pname = "sip-hash";
-    version = "20200610-git";
-    asds = [ "sip-hash" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/sip-hash/2020-06-10/sip-hash-20200610-git.tgz";
-      sha256 = "0cd6g37lxd5i5fyg9my4jja27ki5agbpr9d635rcwpf32yhc4sh9";
-      system = "sip-hash";
-      asd = "sip-hash";
-    });
-    systems = [ "sip-hash" ];
-    lispLibs = [ (getAttr "com_dot_google_dot_base" pkgs) (getAttr "nibbles" pkgs) ];
-  };
-  sip-hash_slash_test = {
-    pname = "sip-hash_test";
-    version = "20200610-git";
-    asds = [ "sip-hash" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/sip-hash/2020-06-10/sip-hash-20200610-git.tgz";
-      sha256 = "0cd6g37lxd5i5fyg9my4jja27ki5agbpr9d635rcwpf32yhc4sh9";
-      system = "sip-hash";
-      asd = "sip-hash";
-    });
-    systems = [ "sip-hash/test" ];
-    lispLibs = [ (getAttr "hu_dot_dwim_dot_stefil" pkgs) (getAttr "sip-hash" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  skeleton = {
-    pname = "skeleton";
-    version = "20200610-git";
-    asds = [ "skeleton" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/ahungry-fleece/2020-06-10/ahungry-fleece-20200610-git.tgz";
-      sha256 = "1l2rsy5qn5n456cxbd6kj0hpniy5vf35xcixzfj4j7lv00j0c5lz";
-      system = "skeleton";
-      asd = "skeleton";
-    });
-    systems = [ "skeleton" ];
-    lispLibs = [ (getAttr "ahungry-fleece" pkgs) ];
-  };
-  skeleton-creator = {
-    pname = "skeleton-creator";
-    version = "20191227-git";
-    asds = [ "skeleton-creator" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/skeleton-creator/2019-12-27/skeleton-creator-20191227-git.tgz";
-      sha256 = "1yj8w9lpb2jzyf02zg65ngmjfsakzc7k1kcw90w52gk14hv1lk6s";
-      system = "skeleton-creator";
-      asd = "skeleton-creator";
-    });
-    systems = [ "skeleton-creator" ];
-    lispLibs = [ (getAttr "cl-fad" pkgs) (getAttr "cl-ppcre" pkgs) (getAttr "conf" pkgs) (getAttr "simplet-asdf" pkgs) ];
-  };
-  skeleton-creator_slash_test = {
-    pname = "skeleton-creator_test";
-    version = "20191227-git";
-    asds = [ "skeleton-creator" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/skeleton-creator/2019-12-27/skeleton-creator-20191227-git.tgz";
-      sha256 = "1yj8w9lpb2jzyf02zg65ngmjfsakzc7k1kcw90w52gk14hv1lk6s";
-      system = "skeleton-creator";
-      asd = "skeleton-creator";
-    });
-    systems = [ "skeleton-creator/test" ];
-    lispLibs = [ (getAttr "simplet" pkgs) (getAttr "simplet-asdf" pkgs) (getAttr "skeleton-creator" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  sketch = {
-    pname = "sketch";
-    version = "20221106-git";
-    asds = [ "sketch" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/sketch/2022-11-06/sketch-20221106-git.tgz";
-      sha256 = "0vlnfl2gbcraw2kdwmlj55j5pnz8cskaq4ygw0p6dwy20x25264b";
-      system = "sketch";
-      asd = "sketch";
-    });
-    systems = [ "sketch" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cl-geometry" pkgs) (getAttr "sdl2-image" pkgs) (getAttr "sdl2-ttf" pkgs) (getAttr "glkit" pkgs) (getAttr "mathkit" pkgs) (getAttr "md5" pkgs) (getAttr "sdl2kit" pkgs) (getAttr "split-sequence" pkgs) (getAttr "static-vectors" pkgs) ];
-  };
-  sketch-examples = {
-    pname = "sketch-examples";
-    version = "20221106-git";
-    asds = [ "sketch-examples" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/sketch/2022-11-06/sketch-20221106-git.tgz";
-      sha256 = "0vlnfl2gbcraw2kdwmlj55j5pnz8cskaq4ygw0p6dwy20x25264b";
-      system = "sketch-examples";
-      asd = "sketch-examples";
-    });
-    systems = [ "sketch-examples" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "sketch" pkgs) ];
-  };
-  skippy = {
-    pname = "skippy";
-    version = "1.3.12";
-    asds = [ "skippy" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/skippy/2015-04-07/skippy-1.3.12.tgz";
-      sha256 = "1n8925qz19w00qc67z3hc97fpmfhi0r54dd50fzqm24vhyb7qwc2";
-      system = "skippy";
-      asd = "skippy";
-    });
-    systems = [ "skippy" ];
-    lispLibs = [  ];
-  };
-  skippy-renderer = {
-    pname = "skippy-renderer";
-    version = "20221106-git";
-    asds = [ "skippy-renderer" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/skippy-renderer/2022-11-06/skippy-renderer-20221106-git.tgz";
-      sha256 = "0x9zv8zchxn48axl5rwfnywg9kb9m0pz3gwjk7gpg9m574jw8x0c";
-      system = "skippy-renderer";
-      asd = "skippy-renderer";
-    });
-    systems = [ "skippy-renderer" ];
-    lispLibs = [ (getAttr "skippy" pkgs) ];
-  };
-  skitter = {
-    pname = "skitter";
-    version = "release-quicklisp-620772ae-git";
-    asds = [ "skitter" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/skitter/2018-02-28/skitter-release-quicklisp-620772ae-git.tgz";
-      sha256 = "1rixcav388fnal9v139kvagjfc60sbwd8ikbmd48lppq2nq5anwl";
-      system = "skitter";
-      asd = "skitter";
-    });
-    systems = [ "skitter" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "rtg-math" pkgs) (getAttr "structy-defclass" pkgs) ];
-  };
-  skitter_dot_glop = {
-    pname = "skitter.glop";
-    version = "release-quicklisp-620772ae-git";
-    asds = [ "skitter.glop" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/skitter/2018-02-28/skitter-release-quicklisp-620772ae-git.tgz";
-      sha256 = "1rixcav388fnal9v139kvagjfc60sbwd8ikbmd48lppq2nq5anwl";
-      system = "skitter.glop";
-      asd = "skitter.glop";
-    });
-    systems = [ "skitter.glop" ];
-    lispLibs = [ (getAttr "glop" pkgs) (getAttr "skitter" pkgs) ];
-  };
-  skitter_dot_sdl2 = {
-    pname = "skitter.sdl2";
-    version = "release-quicklisp-620772ae-git";
-    asds = [ "skitter.sdl2" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/skitter/2018-02-28/skitter-release-quicklisp-620772ae-git.tgz";
-      sha256 = "1rixcav388fnal9v139kvagjfc60sbwd8ikbmd48lppq2nq5anwl";
-      system = "skitter.sdl2";
-      asd = "skitter.sdl2";
-    });
-    systems = [ "skitter.sdl2" ];
-    lispLibs = [ (getAttr "sdl2" pkgs) (getAttr "skitter" pkgs) ];
-  };
-  slack-client = {
-    pname = "slack-client";
-    version = "20160825-git";
-    asds = [ "slack-client" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/slack-client/2016-08-25/slack-client-20160825-git.tgz";
-      sha256 = "1yl2wqhx1h2kw3s5dkkq5c4hk1r7679yzq41j2j2bscbl3xk3jp9";
-      system = "slack-client";
-      asd = "slack-client";
-    });
-    systems = [ "slack-client" ];
-    lispLibs = [ (getAttr "babel" pkgs) (getAttr "blackbird" pkgs) (getAttr "cl-async" pkgs) (getAttr "drakma-async" pkgs) (getAttr "event-glue" pkgs) (getAttr "jonathan" pkgs) (getAttr "safe-queue" pkgs) (getAttr "websocket-driver" pkgs) ];
-  };
-  slack-client-test = {
-    pname = "slack-client-test";
-    version = "20160825-git";
-    asds = [ "slack-client-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/slack-client/2016-08-25/slack-client-20160825-git.tgz";
-      sha256 = "1yl2wqhx1h2kw3s5dkkq5c4hk1r7679yzq41j2j2bscbl3xk3jp9";
-      system = "slack-client-test";
-      asd = "slack-client-test";
-    });
-    systems = [ "slack-client-test" ];
-    lispLibs = [ (getAttr "prove" pkgs) (getAttr "prove-asdf" pkgs) (getAttr "slack-client" pkgs) ];
-  };
-  slim = {
-    pname = "slim";
-    version = "20221106-git";
-    asds = [ "slim" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/mcclim/2022-11-06/mcclim-20221106-git.tgz";
-      sha256 = "0hz6vz4c0xv8bjx02hf3rbnp66c7ifx2ld4y6nxdz6i70wyhwbdf";
-      system = "slim";
-      asd = "slim";
-    });
-    systems = [ "slim" ];
-    lispLibs = [ (getAttr "mcclim" pkgs) ];
-  };
-  slite = {
-    pname = "slite";
-    version = "20221106-git";
-    asds = [ "slite" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/slite/2022-11-06/slite-20221106-git.tgz";
-      sha256 = "1l9b3dvmi0hf38ir3sx6005hpaqm1dc3x02hcprn4x6fik5l0zdk";
-      system = "slite";
-      asd = "slite";
-    });
-    systems = [ "slite" ];
-    lispLibs = [ (getAttr "str" pkgs) (getAttr "fiveam" pkgs) ];
-  };
-  slite_slash_lisp-unit2 = {
-    pname = "slite_lisp-unit2";
-    version = "20221106-git";
-    asds = [ "slite" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/slite/2022-11-06/slite-20221106-git.tgz";
-      sha256 = "1l9b3dvmi0hf38ir3sx6005hpaqm1dc3x02hcprn4x6fik5l0zdk";
-      system = "slite";
-      asd = "slite";
-    });
-    systems = [ "slite/lisp-unit2" ];
-    lispLibs = [ (getAttr "lisp-unit2" pkgs) (getAttr "slite" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  slite_slash_parachute = {
-    pname = "slite_parachute";
-    version = "20221106-git";
-    asds = [ "slite" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/slite/2022-11-06/slite-20221106-git.tgz";
-      sha256 = "1l9b3dvmi0hf38ir3sx6005hpaqm1dc3x02hcprn4x6fik5l0zdk";
-      system = "slite";
-      asd = "slite";
-    });
-    systems = [ "slite/parachute" ];
-    lispLibs = [ (getAttr "parachute" pkgs) (getAttr "slite" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  slite_slash_tests = {
-    pname = "slite_tests";
-    version = "20221106-git";
-    asds = [ "slite" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/slite/2022-11-06/slite-20221106-git.tgz";
-      sha256 = "1l9b3dvmi0hf38ir3sx6005hpaqm1dc3x02hcprn4x6fik5l0zdk";
-      system = "slite";
-      asd = "slite";
-    });
-    systems = [ "slite/tests" ];
-    lispLibs = [ (getAttr "lisp-unit2" pkgs) (getAttr "parachute" pkgs) (getAttr "slite" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  slot-extra-options = {
-    pname = "slot-extra-options";
-    version = "20210411-git";
-    asds = [ "slot-extra-options" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/slot-extra-options/2021-04-11/slot-extra-options-20210411-git.tgz";
-      sha256 = "1b2swhjjs0w1034cy045q8l3ndmci7rjawka39q23vncy6d90497";
-      system = "slot-extra-options";
-      asd = "slot-extra-options";
-    });
-    systems = [ "slot-extra-options" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "closer-mop" pkgs) (getAttr "iterate" pkgs) (getAttr "serapeum" pkgs) ];
-  };
-  slot-extra-options-tests = {
-    pname = "slot-extra-options-tests";
-    version = "20210411-git";
-    asds = [ "slot-extra-options-tests" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/slot-extra-options/2021-04-11/slot-extra-options-20210411-git.tgz";
-      sha256 = "1b2swhjjs0w1034cy045q8l3ndmci7rjawka39q23vncy6d90497";
-      system = "slot-extra-options-tests";
-      asd = "slot-extra-options-tests";
-    });
-    systems = [ "slot-extra-options-tests" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "closer-mop" pkgs) (getAttr "iterate" pkgs) (getAttr "parachute" pkgs) (getAttr "serapeum" pkgs) (getAttr "slot-extra-options" pkgs) ];
-  };
-  slot-map = {
-    pname = "slot-map";
-    version = "20220707-git";
-    asds = [ "slot-map" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/slot-map/2022-07-07/slot-map-20220707-git.tgz";
-      sha256 = "1z9qprjqj3pwqf469bxj0fvvjni1ncap6g7w5q9gmv5hnf2a4yjb";
-      system = "slot-map";
-      asd = "slot-map";
-    });
-    systems = [ "slot-map" ];
-    lispLibs = [ (getAttr "dynamic-array" pkgs) (getAttr "mfiano-utils" pkgs) ];
-  };
-  slynk = {
-    pname = "slynk";
-    version = "20221106-git";
-    asds = [ "slynk" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/sly/2022-11-06/sly-20221106-git.tgz";
-      sha256 = "081rpyvzxma5ms2am9mpkwbigbhqbgkxgrclj1fhccv5xpp163wp";
-      system = "slynk";
-      asd = "slynk";
-    });
-    systems = [ "slynk" ];
-    lispLibs = [  ];
-  };
-  slynk_slash_arglists = {
-    pname = "slynk_arglists";
-    version = "20221106-git";
-    asds = [ "slynk" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/sly/2022-11-06/sly-20221106-git.tgz";
-      sha256 = "081rpyvzxma5ms2am9mpkwbigbhqbgkxgrclj1fhccv5xpp163wp";
-      system = "slynk";
-      asd = "slynk";
-    });
-    systems = [ "slynk/arglists" ];
-    lispLibs = [ (getAttr "slynk" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  slynk_slash_fancy-inspector = {
-    pname = "slynk_fancy-inspector";
-    version = "20221106-git";
-    asds = [ "slynk" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/sly/2022-11-06/sly-20221106-git.tgz";
-      sha256 = "081rpyvzxma5ms2am9mpkwbigbhqbgkxgrclj1fhccv5xpp163wp";
-      system = "slynk";
-      asd = "slynk";
-    });
-    systems = [ "slynk/fancy-inspector" ];
-    lispLibs = [ (getAttr "slynk" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  slynk_slash_indentation = {
-    pname = "slynk_indentation";
-    version = "20221106-git";
-    asds = [ "slynk" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/sly/2022-11-06/sly-20221106-git.tgz";
-      sha256 = "081rpyvzxma5ms2am9mpkwbigbhqbgkxgrclj1fhccv5xpp163wp";
-      system = "slynk";
-      asd = "slynk";
-    });
-    systems = [ "slynk/indentation" ];
-    lispLibs = [ (getAttr "slynk" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  slynk_slash_mrepl = {
-    pname = "slynk_mrepl";
-    version = "20221106-git";
-    asds = [ "slynk" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/sly/2022-11-06/sly-20221106-git.tgz";
-      sha256 = "081rpyvzxma5ms2am9mpkwbigbhqbgkxgrclj1fhccv5xpp163wp";
-      system = "slynk";
-      asd = "slynk";
-    });
-    systems = [ "slynk/mrepl" ];
-    lispLibs = [ (getAttr "slynk" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  slynk_slash_package-fu = {
-    pname = "slynk_package-fu";
-    version = "20221106-git";
-    asds = [ "slynk" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/sly/2022-11-06/sly-20221106-git.tgz";
-      sha256 = "081rpyvzxma5ms2am9mpkwbigbhqbgkxgrclj1fhccv5xpp163wp";
-      system = "slynk";
-      asd = "slynk";
-    });
-    systems = [ "slynk/package-fu" ];
-    lispLibs = [ (getAttr "slynk" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  slynk_slash_profiler = {
-    pname = "slynk_profiler";
-    version = "20221106-git";
-    asds = [ "slynk" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/sly/2022-11-06/sly-20221106-git.tgz";
-      sha256 = "081rpyvzxma5ms2am9mpkwbigbhqbgkxgrclj1fhccv5xpp163wp";
-      system = "slynk";
-      asd = "slynk";
-    });
-    systems = [ "slynk/profiler" ];
-    lispLibs = [ (getAttr "slynk" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  slynk_slash_retro = {
-    pname = "slynk_retro";
-    version = "20221106-git";
-    asds = [ "slynk" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/sly/2022-11-06/sly-20221106-git.tgz";
-      sha256 = "081rpyvzxma5ms2am9mpkwbigbhqbgkxgrclj1fhccv5xpp163wp";
-      system = "slynk";
-      asd = "slynk";
-    });
-    systems = [ "slynk/retro" ];
-    lispLibs = [ (getAttr "slynk" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  slynk_slash_stickers = {
-    pname = "slynk_stickers";
-    version = "20221106-git";
-    asds = [ "slynk" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/sly/2022-11-06/sly-20221106-git.tgz";
-      sha256 = "081rpyvzxma5ms2am9mpkwbigbhqbgkxgrclj1fhccv5xpp163wp";
-      system = "slynk";
-      asd = "slynk";
-    });
-    systems = [ "slynk/stickers" ];
-    lispLibs = [ (getAttr "slynk" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  slynk_slash_trace-dialog = {
-    pname = "slynk_trace-dialog";
-    version = "20221106-git";
-    asds = [ "slynk" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/sly/2022-11-06/sly-20221106-git.tgz";
-      sha256 = "081rpyvzxma5ms2am9mpkwbigbhqbgkxgrclj1fhccv5xpp163wp";
-      system = "slynk";
-      asd = "slynk";
-    });
-    systems = [ "slynk/trace-dialog" ];
-    lispLibs = [ (getAttr "slynk" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  smackjack = {
-    pname = "smackjack";
-    version = "20180228-git";
-    asds = [ "smackjack" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/smackjack/2018-02-28/smackjack-20180228-git.tgz";
-      sha256 = "1n2x7qij2ci70axd2xn295qqgqrvbfbpvv2438lhwd8qa92dhk8b";
-      system = "smackjack";
-      asd = "smackjack";
-    });
-    systems = [ "smackjack" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cl-containers" pkgs) (getAttr "cl-json" pkgs) (getAttr "hunchentoot" pkgs) (getAttr "parenscript" pkgs) ];
-  };
-  smackjack-demo = {
-    pname = "smackjack-demo";
-    version = "20180228-git";
-    asds = [ "smackjack-demo" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/smackjack/2018-02-28/smackjack-20180228-git.tgz";
-      sha256 = "1n2x7qij2ci70axd2xn295qqgqrvbfbpvv2438lhwd8qa92dhk8b";
-      system = "smackjack-demo";
-      asd = "smackjack-demo";
-    });
-    systems = [ "smackjack-demo" ];
-    lispLibs = [ (getAttr "cl-containers" pkgs) (getAttr "cl-who" pkgs) (getAttr "local-time" pkgs) (getAttr "smackjack" pkgs) ];
-  };
-  smart-buffer = {
-    pname = "smart-buffer";
-    version = "20211020-git";
-    asds = [ "smart-buffer" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/smart-buffer/2021-10-20/smart-buffer-20211020-git.tgz";
-      sha256 = "1r9y61a791m7aqgg2ixs86lc63y78w7n6dwipakcpjzscqmprppr";
-      system = "smart-buffer";
-      asd = "smart-buffer";
-    });
-    systems = [ "smart-buffer" ];
-    lispLibs = [ (getAttr "flexi-streams" pkgs) (getAttr "uiop" pkgs) (getAttr "xsubseq" pkgs) ];
-  };
-  smart-buffer-test = {
-    pname = "smart-buffer-test";
-    version = "20211020-git";
-    asds = [ "smart-buffer-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/smart-buffer/2021-10-20/smart-buffer-20211020-git.tgz";
-      sha256 = "1r9y61a791m7aqgg2ixs86lc63y78w7n6dwipakcpjzscqmprppr";
-      system = "smart-buffer-test";
-      asd = "smart-buffer-test";
-    });
-    systems = [ "smart-buffer-test" ];
-    lispLibs = [ (getAttr "babel" pkgs) (getAttr "prove" pkgs) (getAttr "prove-asdf" pkgs) (getAttr "smart-buffer" pkgs) ];
-  };
-  smokebase = {
-    pname = "smokebase";
-    version = "20210531-git";
-    asds = [ "smokebase" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/qt-libs/2021-05-31/qt-libs-20210531-git.tgz";
-      sha256 = "0why7cssadw20jg382k6mg2lgk5b3b3nwyyvjafaz90h0ljf0b9w";
-      system = "smokebase";
-      asd = "smokebase";
-    });
-    systems = [ "smokebase" ];
-    lispLibs = [ (getAttr "qt_plus_libs" pkgs) (getAttr "qt-libs" pkgs) ];
-  };
-  smug = {
-    pname = "smug";
-    version = "20211230-git";
-    asds = [ "smug" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/smug/2021-12-30/smug-20211230-git.tgz";
-      sha256 = "13gzkj9skya2ziwclk041v7sif392ydbvhvikhg2raa3qjcxb3rq";
-      system = "smug";
-      asd = "smug";
-    });
-    systems = [ "smug" ];
-    lispLibs = [ (getAttr "asdf-package-system" pkgs) ];
-  };
-  snakes = {
-    pname = "snakes";
-    version = "20221106-git";
-    asds = [ "snakes" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/snakes/2022-11-06/snakes-20221106-git.tgz";
-      sha256 = "17fqkw256c2iacy5g37sv9h0mbrmb3fg2s9sd83gj9clrg5r4wkl";
-      system = "snakes";
-      asd = "snakes";
-    });
-    systems = [ "snakes" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cl-cont" pkgs) (getAttr "cl-utilities" pkgs) (getAttr "closer-mop" pkgs) (getAttr "fiveam" pkgs) (getAttr "iterate" pkgs) ];
-  };
-  snappy = {
-    pname = "snappy";
-    version = "20211209-git";
-    asds = [ "snappy" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/snappy/2021-12-09/snappy-20211209-git.tgz";
-      sha256 = "1g0d8icbqmahywqczb8pimr63970dil6mnlxkv3y9ng31dg0npy6";
-      system = "snappy";
-      asd = "snappy";
-    });
-    systems = [ "snappy" ];
-    lispLibs = [ (getAttr "com_dot_google_dot_base" pkgs) (getAttr "nibbles" pkgs) (getAttr "varint" pkgs) ];
-  };
-  snappy_slash_test = {
-    pname = "snappy_test";
-    version = "20211209-git";
-    asds = [ "snappy" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/snappy/2021-12-09/snappy-20211209-git.tgz";
-      sha256 = "1g0d8icbqmahywqczb8pimr63970dil6mnlxkv3y9ng31dg0npy6";
-      system = "snappy";
-      asd = "snappy";
-    });
-    systems = [ "snappy/test" ];
-    lispLibs = [ (getAttr "hu_dot_dwim_dot_stefil" pkgs) (getAttr "nibbles" pkgs) (getAttr "acm-random" pkgs) (getAttr "snappy" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  snark = {
-    pname = "snark";
-    version = "20160421-git";
-    asds = [ "snark" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/snark/2016-04-21/snark-20160421-git.tgz";
-      sha256 = "0zsqaqkl9s626nk5h41z00kssjnzhbsra68zfflryp5j3gy9vgm5";
-      system = "snark";
-      asd = "snark";
-    });
-    systems = [ "snark" ];
-    lispLibs = [ (getAttr "snark-implementation" pkgs) ];
-  };
-  snark-agenda = {
-    pname = "snark-agenda";
-    version = "20160421-git";
-    asds = [ "snark-agenda" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/snark/2016-04-21/snark-20160421-git.tgz";
-      sha256 = "0zsqaqkl9s626nk5h41z00kssjnzhbsra68zfflryp5j3gy9vgm5";
-      system = "snark-agenda";
-      asd = "snark-agenda";
-    });
-    systems = [ "snark-agenda" ];
-    lispLibs = [ (getAttr "snark-auxiliary-packages" pkgs) (getAttr "snark-deque" pkgs) (getAttr "snark-lisp" pkgs) (getAttr "snark-sparse-array" pkgs) ];
-  };
-  snark-auxiliary-packages = {
-    pname = "snark-auxiliary-packages";
-    version = "20160421-git";
-    asds = [ "snark-auxiliary-packages" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/snark/2016-04-21/snark-20160421-git.tgz";
-      sha256 = "0zsqaqkl9s626nk5h41z00kssjnzhbsra68zfflryp5j3gy9vgm5";
-      system = "snark-auxiliary-packages";
-      asd = "snark-auxiliary-packages";
-    });
-    systems = [ "snark-auxiliary-packages" ];
-    lispLibs = [  ];
-  };
-  snark-deque = {
-    pname = "snark-deque";
-    version = "20160421-git";
-    asds = [ "snark-deque" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/snark/2016-04-21/snark-20160421-git.tgz";
-      sha256 = "0zsqaqkl9s626nk5h41z00kssjnzhbsra68zfflryp5j3gy9vgm5";
-      system = "snark-deque";
-      asd = "snark-deque";
-    });
-    systems = [ "snark-deque" ];
-    lispLibs = [ (getAttr "snark-auxiliary-packages" pkgs) (getAttr "snark-lisp" pkgs) ];
-  };
-  snark-dpll = {
-    pname = "snark-dpll";
-    version = "20160421-git";
-    asds = [ "snark-dpll" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/snark/2016-04-21/snark-20160421-git.tgz";
-      sha256 = "0zsqaqkl9s626nk5h41z00kssjnzhbsra68zfflryp5j3gy9vgm5";
-      system = "snark-dpll";
-      asd = "snark-dpll";
-    });
-    systems = [ "snark-dpll" ];
-    lispLibs = [ (getAttr "snark-auxiliary-packages" pkgs) (getAttr "snark-lisp" pkgs) ];
-  };
-  snark-examples = {
-    pname = "snark-examples";
-    version = "20160421-git";
-    asds = [ "snark-examples" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/snark/2016-04-21/snark-20160421-git.tgz";
-      sha256 = "0zsqaqkl9s626nk5h41z00kssjnzhbsra68zfflryp5j3gy9vgm5";
-      system = "snark-examples";
-      asd = "snark-examples";
-    });
-    systems = [ "snark-examples" ];
-    lispLibs = [ (getAttr "snark" pkgs) ];
-  };
-  snark-feature = {
-    pname = "snark-feature";
-    version = "20160421-git";
-    asds = [ "snark-feature" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/snark/2016-04-21/snark-20160421-git.tgz";
-      sha256 = "0zsqaqkl9s626nk5h41z00kssjnzhbsra68zfflryp5j3gy9vgm5";
-      system = "snark-feature";
-      asd = "snark-feature";
-    });
-    systems = [ "snark-feature" ];
-    lispLibs = [ (getAttr "snark-auxiliary-packages" pkgs) (getAttr "snark-lisp" pkgs) ];
-  };
-  snark-implementation = {
-    pname = "snark-implementation";
-    version = "20160421-git";
-    asds = [ "snark-implementation" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/snark/2016-04-21/snark-20160421-git.tgz";
-      sha256 = "0zsqaqkl9s626nk5h41z00kssjnzhbsra68zfflryp5j3gy9vgm5";
-      system = "snark-implementation";
-      asd = "snark-implementation";
-    });
-    systems = [ "snark-implementation" ];
-    lispLibs = [ (getAttr "snark-agenda" pkgs) (getAttr "snark-auxiliary-packages" pkgs) (getAttr "snark-deque" pkgs) (getAttr "snark-dpll" pkgs) (getAttr "snark-feature" pkgs) (getAttr "snark-infix-reader" pkgs) (getAttr "snark-lisp" pkgs) (getAttr "snark-numbering" pkgs) (getAttr "snark-pkg" pkgs) (getAttr "snark-sparse-array" pkgs) ];
-  };
-  snark-infix-reader = {
-    pname = "snark-infix-reader";
-    version = "20160421-git";
-    asds = [ "snark-infix-reader" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/snark/2016-04-21/snark-20160421-git.tgz";
-      sha256 = "0zsqaqkl9s626nk5h41z00kssjnzhbsra68zfflryp5j3gy9vgm5";
-      system = "snark-infix-reader";
-      asd = "snark-infix-reader";
-    });
-    systems = [ "snark-infix-reader" ];
-    lispLibs = [ (getAttr "snark-auxiliary-packages" pkgs) (getAttr "snark-lisp" pkgs) ];
-  };
-  snark-lisp = {
-    pname = "snark-lisp";
-    version = "20160421-git";
-    asds = [ "snark-lisp" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/snark/2016-04-21/snark-20160421-git.tgz";
-      sha256 = "0zsqaqkl9s626nk5h41z00kssjnzhbsra68zfflryp5j3gy9vgm5";
-      system = "snark-lisp";
-      asd = "snark-lisp";
-    });
-    systems = [ "snark-lisp" ];
-    lispLibs = [ (getAttr "snark-auxiliary-packages" pkgs) ];
-  };
-  snark-loads = {
-    pname = "snark-loads";
-    version = "20160421-git";
-    asds = [ "snark-loads" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/snark/2016-04-21/snark-20160421-git.tgz";
-      sha256 = "0zsqaqkl9s626nk5h41z00kssjnzhbsra68zfflryp5j3gy9vgm5";
-      system = "snark-loads";
-      asd = "snark-loads";
-    });
-    systems = [ "snark-loads" ];
-    lispLibs = [  ];
-  };
-  snark-numbering = {
-    pname = "snark-numbering";
-    version = "20160421-git";
-    asds = [ "snark-numbering" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/snark/2016-04-21/snark-20160421-git.tgz";
-      sha256 = "0zsqaqkl9s626nk5h41z00kssjnzhbsra68zfflryp5j3gy9vgm5";
-      system = "snark-numbering";
-      asd = "snark-numbering";
-    });
-    systems = [ "snark-numbering" ];
-    lispLibs = [ (getAttr "snark-auxiliary-packages" pkgs) (getAttr "snark-lisp" pkgs) (getAttr "snark-sparse-array" pkgs) ];
-  };
-  snark-pkg = {
-    pname = "snark-pkg";
-    version = "20160421-git";
-    asds = [ "snark-pkg" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/snark/2016-04-21/snark-20160421-git.tgz";
-      sha256 = "0zsqaqkl9s626nk5h41z00kssjnzhbsra68zfflryp5j3gy9vgm5";
-      system = "snark-pkg";
-      asd = "snark-pkg";
-    });
-    systems = [ "snark-pkg" ];
-    lispLibs = [ (getAttr "snark-dpll" pkgs) ];
-  };
-  snark-sparse-array = {
-    pname = "snark-sparse-array";
-    version = "20160421-git";
-    asds = [ "snark-sparse-array" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/snark/2016-04-21/snark-20160421-git.tgz";
-      sha256 = "0zsqaqkl9s626nk5h41z00kssjnzhbsra68zfflryp5j3gy9vgm5";
-      system = "snark-sparse-array";
-      asd = "snark-sparse-array";
-    });
-    systems = [ "snark-sparse-array" ];
-    lispLibs = [ (getAttr "snark-auxiliary-packages" pkgs) (getAttr "snark-lisp" pkgs) ];
-  };
-  sndfile-blob = {
-    pname = "sndfile-blob";
-    version = "stable-git";
-    asds = [ "sndfile-blob" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/sndfile-blob/2020-10-16/sndfile-blob-stable-git.tgz";
-      sha256 = "1csbm2cgj76smia59044vx8698w9dy223cmwv8l4i8kb95m1i3l0";
-      system = "sndfile-blob";
-      asd = "sndfile-blob";
-    });
-    systems = [ "sndfile-blob" ];
-    lispLibs = [ (getAttr "bodge-blobs-support" pkgs) (getAttr "trivial-features" pkgs) ];
-  };
-  snmp = {
-    pname = "snmp";
-    version = "6.1";
-    asds = [ "snmp" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/snmp/2016-10-31/snmp-6.1.tgz";
-      sha256 = "0qpy6jfp0v9i80gli1gf98sj0h67x9g5a8bqxrsxnqyi3h59di5s";
-      system = "snmp";
-      asd = "snmp";
-    });
-    systems = [ "snmp" ];
-    lispLibs = [ (getAttr "ieee-floats" pkgs) (getAttr "ironclad" pkgs) (getAttr "portable-threads" pkgs) (getAttr "trivial-gray-streams" pkgs) (getAttr "usocket" pkgs) ];
-  };
-  snmp-server = {
-    pname = "snmp-server";
-    version = "6.1";
-    asds = [ "snmp-server" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/snmp/2016-10-31/snmp-6.1.tgz";
-      sha256 = "0qpy6jfp0v9i80gli1gf98sj0h67x9g5a8bqxrsxnqyi3h59di5s";
-      system = "snmp-server";
-      asd = "snmp-server";
-    });
-    systems = [ "snmp-server" ];
-    lispLibs = [ (getAttr "snmp" pkgs) (getAttr "usocket-server" pkgs) ];
-  };
-  snmp-test = {
-    pname = "snmp-test";
-    version = "6.1";
-    asds = [ "snmp-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/snmp/2016-10-31/snmp-6.1.tgz";
-      sha256 = "0qpy6jfp0v9i80gli1gf98sj0h67x9g5a8bqxrsxnqyi3h59di5s";
-      system = "snmp-test";
-      asd = "snmp-test";
-    });
-    systems = [ "snmp-test" ];
-    lispLibs = [ (getAttr "snmp" pkgs) (getAttr "snmp-server" pkgs) ];
-  };
-  snmp-ui = {
-    pname = "snmp-ui";
-    version = "6.1";
-    asds = [ "snmp-ui" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/snmp/2016-10-31/snmp-6.1.tgz";
-      sha256 = "0qpy6jfp0v9i80gli1gf98sj0h67x9g5a8bqxrsxnqyi3h59di5s";
-      system = "snmp-ui";
-      asd = "snmp-ui";
-    });
-    systems = [ "snmp-ui" ];
-    lispLibs = [ (getAttr "snmp" pkgs) ];
-  };
-  snooze = {
-    pname = "snooze";
-    version = "20210807-git";
-    asds = [ "snooze" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/snooze/2021-08-07/snooze-20210807-git.tgz";
-      sha256 = "0y6n5k6yw6183kf00m4wa9fksad9qjy4i5qr027ys48mgw8d23fj";
-      system = "snooze";
-      asd = "snooze";
-    });
-    systems = [ "snooze" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cl-ppcre" pkgs) (getAttr "closer-mop" pkgs) (getAttr "parse-float" pkgs) (getAttr "quri" pkgs) (getAttr "rfc2388" pkgs) (getAttr "uiop" pkgs) ];
-  };
-  snooze-demo = {
-    pname = "snooze-demo";
-    version = "20210807-git";
-    asds = [ "snooze-demo" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/snooze/2021-08-07/snooze-20210807-git.tgz";
-      sha256 = "0y6n5k6yw6183kf00m4wa9fksad9qjy4i5qr027ys48mgw8d23fj";
-      system = "snooze-demo";
-      asd = "snooze";
-    });
-    systems = [ "snooze-demo" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cl-css" pkgs) (getAttr "cl-fad" pkgs) (getAttr "cl-json" pkgs) (getAttr "cl-who" pkgs) (getAttr "hunchentoot" pkgs) (getAttr "local-time" pkgs) (getAttr "local-time-duration" pkgs) (getAttr "snooze" pkgs) ];
-  };
-  snooze-tests = {
-    pname = "snooze-tests";
-    version = "20210807-git";
-    asds = [ "snooze-tests" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/snooze/2021-08-07/snooze-20210807-git.tgz";
-      sha256 = "0y6n5k6yw6183kf00m4wa9fksad9qjy4i5qr027ys48mgw8d23fj";
-      system = "snooze-tests";
-      asd = "snooze";
-    });
-    systems = [ "snooze-tests" ];
-    lispLibs = [ (getAttr "fiasco" pkgs) (getAttr "snooze" pkgs) ];
-  };
-  softdrink = {
-    pname = "softdrink";
-    version = "20200427-git";
-    asds = [ "softdrink" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/softdrink/2020-04-27/softdrink-20200427-git.tgz";
-      sha256 = "1b0by4ymvk120aaq0viqqjqnbk91g00cd7bipnrb75nfb4ahi2s9";
-      system = "softdrink";
-      asd = "softdrink";
-    });
-    systems = [ "softdrink" ];
-    lispLibs = [ (getAttr "lass" pkgs) (getAttr "lquery" pkgs) ];
-  };
-  software-evolution-library = {
-    pname = "software-evolution-library";
-    version = "20221106-git";
-    asds = [ "software-evolution-library" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/sel/2022-11-06/sel-20221106-git.tgz";
-      sha256 = "10bb8xb9zq0nbigc2119vhp5spa7y3r180h46qzf13jrnwy5qaj7";
-      system = "software-evolution-library";
-      asd = "software-evolution-library";
-    });
-    systems = [ "software-evolution-library" ];
-    lispLibs = [ (getAttr "asdf-package-system" pkgs) (getAttr "atomics" pkgs) (getAttr "cffi-grovel" pkgs) (getAttr "gt" pkgs) (getAttr "deploy" pkgs) ];
-  };
-  software-evolution-library_slash_deploy-tree-sitter-interface = {
-    pname = "software-evolution-library_deploy-tree-sitter-interface";
-    version = "20221106-git";
-    asds = [ "software-evolution-library" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/sel/2022-11-06/sel-20221106-git.tgz";
-      sha256 = "10bb8xb9zq0nbigc2119vhp5spa7y3r180h46qzf13jrnwy5qaj7";
-      system = "software-evolution-library";
-      asd = "software-evolution-library";
-    });
-    systems = [ "software-evolution-library/deploy-tree-sitter-interface" ];
-    lispLibs = [ (getAttr "deploy" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  software-evolution-library_slash_run-dump-store = {
-    pname = "software-evolution-library_run-dump-store";
-    version = "20221106-git";
-    asds = [ "software-evolution-library" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/sel/2022-11-06/sel-20221106-git.tgz";
-      sha256 = "10bb8xb9zq0nbigc2119vhp5spa7y3r180h46qzf13jrnwy5qaj7";
-      system = "software-evolution-library";
-      asd = "software-evolution-library";
-    });
-    systems = [ "software-evolution-library/run-dump-store" ];
-    lispLibs = [  ];
-    meta = {
-      broken = true;
-    };
-  };
-  software-evolution-library_slash_run-rest-server = {
-    pname = "software-evolution-library_run-rest-server";
-    version = "20221106-git";
-    asds = [ "software-evolution-library" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/sel/2022-11-06/sel-20221106-git.tgz";
-      sha256 = "10bb8xb9zq0nbigc2119vhp5spa7y3r180h46qzf13jrnwy5qaj7";
-      system = "software-evolution-library";
-      asd = "software-evolution-library";
-    });
-    systems = [ "software-evolution-library/run-rest-server" ];
-    lispLibs = [  ];
-    meta = {
-      broken = true;
-    };
-  };
-  software-evolution-library_slash_run-test-parse = {
-    pname = "software-evolution-library_run-test-parse";
-    version = "20221106-git";
-    asds = [ "software-evolution-library" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/sel/2022-11-06/sel-20221106-git.tgz";
-      sha256 = "10bb8xb9zq0nbigc2119vhp5spa7y3r180h46qzf13jrnwy5qaj7";
-      system = "software-evolution-library";
-      asd = "software-evolution-library";
-    });
-    systems = [ "software-evolution-library/run-test-parse" ];
-    lispLibs = [  ];
-    meta = {
-      broken = true;
-    };
-  };
-  software-evolution-library_slash_run-tree-sitter-interface = {
-    pname = "software-evolution-library_run-tree-sitter-interface";
-    version = "20221106-git";
-    asds = [ "software-evolution-library" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/sel/2022-11-06/sel-20221106-git.tgz";
-      sha256 = "10bb8xb9zq0nbigc2119vhp5spa7y3r180h46qzf13jrnwy5qaj7";
-      system = "software-evolution-library";
-      asd = "software-evolution-library";
-    });
-    systems = [ "software-evolution-library/run-tree-sitter-interface" ];
-    lispLibs = [  ];
-    meta = {
-      broken = true;
-    };
-  };
-  software-evolution-library_slash_run-tree-sitter-py-generator = {
-    pname = "software-evolution-library_run-tree-sitter-py-generator";
-    version = "20221106-git";
-    asds = [ "software-evolution-library" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/sel/2022-11-06/sel-20221106-git.tgz";
-      sha256 = "10bb8xb9zq0nbigc2119vhp5spa7y3r180h46qzf13jrnwy5qaj7";
-      system = "software-evolution-library";
-      asd = "software-evolution-library";
-    });
-    systems = [ "software-evolution-library/run-tree-sitter-py-generator" ];
-    lispLibs = [  ];
-    meta = {
-      broken = true;
-    };
-  };
-  software-evolution-library_slash_terminal = {
-    pname = "software-evolution-library_terminal";
-    version = "20221106-git";
-    asds = [ "software-evolution-library" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/sel/2022-11-06/sel-20221106-git.tgz";
-      sha256 = "10bb8xb9zq0nbigc2119vhp5spa7y3r180h46qzf13jrnwy5qaj7";
-      system = "software-evolution-library";
-      asd = "software-evolution-library";
-    });
-    systems = [ "software-evolution-library/terminal" ];
-    lispLibs = [ (getAttr "cffi" pkgs) (getAttr "cffi-grovel" pkgs) (getAttr "cl-interpol" pkgs) (getAttr "gt" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  software-evolution-library_slash_utility_slash_fare-qq = {
-    pname = "software-evolution-library_utility_fare-qq";
-    version = "20221106-git";
-    asds = [ "software-evolution-library" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/sel/2022-11-06/sel-20221106-git.tgz";
-      sha256 = "10bb8xb9zq0nbigc2119vhp5spa7y3r180h46qzf13jrnwy5qaj7";
-      system = "software-evolution-library";
-      asd = "software-evolution-library";
-    });
-    systems = [ "software-evolution-library/utility/fare-qq" ];
-    lispLibs = [ (getAttr "fare-quasiquote-extras" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  solid-engine = {
-    pname = "solid-engine";
-    version = "20190521-git";
-    asds = [ "solid-engine" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/solid-engine/2019-05-21/solid-engine-20190521-git.tgz";
-      sha256 = "1pxrgxfqz8br258jy35qyimsrz544fg9k7lw2jshkj4jr2pswsv0";
-      system = "solid-engine";
-      asd = "solid-engine";
-    });
-    systems = [ "solid-engine" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) ];
-  };
-  soundex = {
-    pname = "soundex";
-    version = "1.0";
-    asds = [ "soundex" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/soundex/2010-10-06/soundex-1.0.tgz";
-      sha256 = "00ar2x7ja35337v6gwa4h2b8w7gf7dwx5mdfz91dqay43kx1pjsi";
-      system = "soundex";
-      asd = "soundex";
-    });
-    systems = [ "soundex" ];
-    lispLibs = [  ];
-  };
-  south = {
-    pname = "south";
-    version = "20190710-git";
-    asds = [ "south" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/south/2019-07-10/south-20190710-git.tgz";
-      sha256 = "09fyqxsflc107f3g2mzh81wnr3lzbaaz2jj5js0q6rpyaq2yc39p";
-      system = "south";
-      asd = "south";
-    });
-    systems = [ "south" ];
-    lispLibs = [ (getAttr "cl-ppcre" pkgs) (getAttr "drakma" pkgs) (getAttr "ironclad" pkgs) (getAttr "uuid" pkgs) ];
-  };
-  sparse-set = {
-    pname = "sparse-set";
-    version = "20220707-git";
-    asds = [ "sparse-set" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/sparse-set/2022-07-07/sparse-set-20220707-git.tgz";
-      sha256 = "0czms03lrvg20hw3sz7wzzkl1z0vm0ndb3dmbvwsjd7m89fag793";
-      system = "sparse-set";
-      asd = "sparse-set";
-    });
-    systems = [ "sparse-set" ];
-    lispLibs = [ (getAttr "mfiano-utils" pkgs) ];
-  };
-  spatial-trees = {
-    pname = "spatial-trees";
-    version = "20140826-git";
-    asds = [ "spatial-trees" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/spatial-trees/2014-08-26/spatial-trees-20140826-git.tgz";
-      sha256 = "11rhc6h501dwcik2igkszz7b9n515cr99m5pjh4r2qfwgiri6ysa";
-      system = "spatial-trees";
-      asd = "spatial-trees";
-    });
-    systems = [ "spatial-trees" ];
-    lispLibs = [  ];
-  };
-  spatial-trees_dot_nns = {
-    pname = "spatial-trees.nns";
-    version = "20140826-git";
-    asds = [ "spatial-trees.nns" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/spatial-trees/2014-08-26/spatial-trees-20140826-git.tgz";
-      sha256 = "11rhc6h501dwcik2igkszz7b9n515cr99m5pjh4r2qfwgiri6ysa";
-      system = "spatial-trees.nns";
-      asd = "spatial-trees.nns";
-    });
-    systems = [ "spatial-trees.nns" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "iterate" pkgs) (getAttr "optima" pkgs) (getAttr "spatial-trees" pkgs) ];
-  };
-  spatial-trees_dot_nns_dot_test = {
-    pname = "spatial-trees.nns.test";
-    version = "20140826-git";
-    asds = [ "spatial-trees.nns.test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/spatial-trees/2014-08-26/spatial-trees-20140826-git.tgz";
-      sha256 = "11rhc6h501dwcik2igkszz7b9n515cr99m5pjh4r2qfwgiri6ysa";
-      system = "spatial-trees.nns.test";
-      asd = "spatial-trees.nns.test";
-    });
-    systems = [ "spatial-trees.nns.test" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "fiveam" pkgs) (getAttr "iterate" pkgs) (getAttr "optima" pkgs) (getAttr "spatial-trees" pkgs) (getAttr "spatial-trees_dot_nns" pkgs) ];
-  };
-  spatial-trees_dot_test = {
-    pname = "spatial-trees.test";
-    version = "20140826-git";
-    asds = [ "spatial-trees.test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/spatial-trees/2014-08-26/spatial-trees-20140826-git.tgz";
-      sha256 = "11rhc6h501dwcik2igkszz7b9n515cr99m5pjh4r2qfwgiri6ysa";
-      system = "spatial-trees.test";
-      asd = "spatial-trees.test";
-    });
-    systems = [ "spatial-trees.test" ];
-    lispLibs = [ (getAttr "fiveam" pkgs) (getAttr "spatial-trees" pkgs) ];
-  };
-  special-functions = {
-    pname = "special-functions";
-    version = "20221106-git";
-    asds = [ "special-functions" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/special-functions/2022-11-06/special-functions-20221106-git.tgz";
-      sha256 = "092szffy7zfxgrvfck11wnj8l0mgcym13yiafj01ad02lbj1fnnv";
-      system = "special-functions";
-      asd = "special-functions";
-    });
-    systems = [ "special-functions" ];
-    lispLibs = [ (getAttr "alexandria_plus" pkgs) (getAttr "float-features" pkgs) (getAttr "let-plus" pkgs) (getAttr "num-utils" pkgs) ];
-  };
-  special-functions_slash_tests = {
-    pname = "special-functions_tests";
-    version = "20221106-git";
-    asds = [ "special-functions" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/special-functions/2022-11-06/special-functions-20221106-git.tgz";
-      sha256 = "092szffy7zfxgrvfck11wnj8l0mgcym13yiafj01ad02lbj1fnnv";
-      system = "special-functions";
-      asd = "special-functions";
-    });
-    systems = [ "special-functions/tests" ];
-    lispLibs = [ (getAttr "cl-variates" pkgs) (getAttr "fiveam" pkgs) (getAttr "select" pkgs) (getAttr "special-functions" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  specialization-store = {
-    pname = "specialization-store";
-    version = "v0.0.5";
-    asds = [ "specialization-store" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/specialization-store/2020-06-10/specialization-store-v0.0.5.tgz";
-      sha256 = "03q0szyz8ygqmg10q4j97dy7gfr9icxay9s8bgs883yncbk42y6c";
-      system = "specialization-store";
-      asd = "specialization-store";
-    });
-    systems = [ "specialization-store" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "introspect-environment" pkgs) (getAttr "specialization-store-features" pkgs) ];
-  };
-  specialization-store-features = {
-    pname = "specialization-store-features";
-    version = "v0.0.5";
-    asds = [ "specialization-store-features" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/specialization-store/2020-06-10/specialization-store-v0.0.5.tgz";
-      sha256 = "03q0szyz8ygqmg10q4j97dy7gfr9icxay9s8bgs883yncbk42y6c";
-      system = "specialization-store-features";
-      asd = "specialization-store-features";
-    });
-    systems = [ "specialization-store-features" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "introspect-environment" pkgs) ];
-  };
-  specialization-store-tests = {
-    pname = "specialization-store-tests";
-    version = "v0.0.5";
-    asds = [ "specialization-store-tests" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/specialization-store/2020-06-10/specialization-store-v0.0.5.tgz";
-      sha256 = "03q0szyz8ygqmg10q4j97dy7gfr9icxay9s8bgs883yncbk42y6c";
-      system = "specialization-store-tests";
-      asd = "specialization-store-tests";
-    });
-    systems = [ "specialization-store-tests" ];
-    lispLibs = [ (getAttr "fiveam" pkgs) (getAttr "specialization-store" pkgs) ];
-  };
-  specialized-function = {
-    pname = "specialized-function";
-    version = "20210531-git";
-    asds = [ "specialized-function" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/specialized-function/2021-05-31/specialized-function-20210531-git.tgz";
-      sha256 = "19hfgc83b7as630r1w9r8yl0v6xq3dn01vcrl0bd4pza5hgjn4la";
-      system = "specialized-function";
-      asd = "specialized-function";
-    });
-    systems = [ "specialized-function" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "iterate" pkgs) (getAttr "lisp-namespace" pkgs) (getAttr "trivia" pkgs) (getAttr "trivial-cltl2" pkgs) (getAttr "type-r" pkgs) ];
-  };
-  specialized-function_dot_test = {
-    pname = "specialized-function.test";
-    version = "20210531-git";
-    asds = [ "specialized-function.test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/specialized-function/2021-05-31/specialized-function-20210531-git.tgz";
-      sha256 = "19hfgc83b7as630r1w9r8yl0v6xq3dn01vcrl0bd4pza5hgjn4la";
-      system = "specialized-function.test";
-      asd = "specialized-function.test";
-    });
-    systems = [ "specialized-function.test" ];
-    lispLibs = [ (getAttr "fiveam" pkgs) (getAttr "specialized-function" pkgs) ];
-  };
-  speechless = {
-    pname = "speechless";
-    version = "20221106-git";
-    asds = [ "speechless" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/speechless/2022-11-06/speechless-20221106-git.tgz";
-      sha256 = "1mq4q0caxvbjj2vs024z2mcsm7r0wd7kw0j2fd6ak9a96cz23jai";
-      system = "speechless";
-      asd = "speechless";
-    });
-    systems = [ "speechless" ];
-    lispLibs = [ (getAttr "cl-markless" pkgs) (getAttr "documentation-utils" pkgs) ];
-  };
-  spell = {
-    pname = "spell";
-    version = "20190307-git";
-    asds = [ "spell" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/spell/2019-03-07/spell-20190307-git.tgz";
-      sha256 = "1ifhx5q0iz80i9zwgcpv3w7xpp92ar9grz25008wnqzaayhfl020";
-      system = "spell";
-      asd = "spell";
-    });
-    systems = [ "spell" ];
-    lispLibs = [  ];
-  };
-  spell_slash_simple = {
-    pname = "spell_simple";
-    version = "20190307-git";
-    asds = [ "spell" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/spell/2019-03-07/spell-20190307-git.tgz";
-      sha256 = "1ifhx5q0iz80i9zwgcpv3w7xpp92ar9grz25008wnqzaayhfl020";
-      system = "spell";
-      asd = "spell";
-    });
-    systems = [ "spell/simple" ];
-    lispLibs = [  ];
-    meta = {
-      broken = true;
-    };
-  };
-  spellcheck = {
-    pname = "spellcheck";
-    version = "20131003-git";
-    asds = [ "spellcheck" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/spellcheck/2013-10-03/spellcheck-20131003-git.tgz";
-      sha256 = "0a0r1dgh7y06s7j9mzxrryri8fhajzjsrrsh3i6vv65vq5zzxlka";
-      system = "spellcheck";
-      asd = "spellcheck";
-    });
-    systems = [ "spellcheck" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cl-ppcre" pkgs) ];
-  };
-  sphinx = {
-    pname = "sphinx";
-    version = "20110619-git";
-    asds = [ "sphinx" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-sphinx/2011-06-19/cl-sphinx-20110619-git.tgz";
-      sha256 = "0z1ksxz1gh12ly6lbc77l0d5f380s81vx44qakm2dl1398lgb7x1";
-      system = "sphinx";
-      asd = "sphinx";
-    });
-    systems = [ "sphinx" ];
-    lispLibs = [ (getAttr "closure-template" pkgs) (getAttr "docutils" pkgs) (getAttr "cl-fad" pkgs) (getAttr "colorize" pkgs) ];
-  };
-  spinneret = {
-    pname = "spinneret";
-    version = "20221106-git";
-    asds = [ "spinneret" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/spinneret/2022-11-06/spinneret-20221106-git.tgz";
-      sha256 = "0v3rqv0ka97zmhpvwiqixb0sxn7fp5b2jancvhffp846mqbskn6k";
-      system = "spinneret";
-      asd = "spinneret";
-    });
-    systems = [ "spinneret" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cl-ppcre" pkgs) (getAttr "global-vars" pkgs) (getAttr "parenscript" pkgs) (getAttr "serapeum" pkgs) (getAttr "trivia" pkgs) (getAttr "trivial-gray-streams" pkgs) ];
-  };
-  spinneret_slash_cl-markdown = {
-    pname = "spinneret_cl-markdown";
-    version = "20221106-git";
-    asds = [ "spinneret" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/spinneret/2022-11-06/spinneret-20221106-git.tgz";
-      sha256 = "0v3rqv0ka97zmhpvwiqixb0sxn7fp5b2jancvhffp846mqbskn6k";
-      system = "spinneret";
-      asd = "spinneret";
-    });
-    systems = [ "spinneret/cl-markdown" ];
-    lispLibs = [ (getAttr "cl-markdown" pkgs) (getAttr "spinneret" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  spinneret_slash_ps = {
-    pname = "spinneret_ps";
-    version = "20221106-git";
-    asds = [ "spinneret" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/spinneret/2022-11-06/spinneret-20221106-git.tgz";
-      sha256 = "0v3rqv0ka97zmhpvwiqixb0sxn7fp5b2jancvhffp846mqbskn6k";
-      system = "spinneret";
-      asd = "spinneret";
-    });
-    systems = [ "spinneret/ps" ];
-    lispLibs = [ (getAttr "parenscript" pkgs) (getAttr "spinneret" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  spinneret_slash_tests = {
-    pname = "spinneret_tests";
-    version = "20221106-git";
-    asds = [ "spinneret" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/spinneret/2022-11-06/spinneret-20221106-git.tgz";
-      sha256 = "0v3rqv0ka97zmhpvwiqixb0sxn7fp5b2jancvhffp846mqbskn6k";
-      system = "spinneret";
-      asd = "spinneret";
-    });
-    systems = [ "spinneret/tests" ];
-    lispLibs = [ (getAttr "cl-markdown" pkgs) (getAttr "fiveam" pkgs) (getAttr "parenscript" pkgs) (getAttr "serapeum" pkgs) (getAttr "spinneret" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  split-sequence = {
-    pname = "split-sequence";
-    version = "v2.0.1";
-    asds = [ "split-sequence" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/split-sequence/2021-05-31/split-sequence-v2.0.1.tgz";
-      sha256 = "172k7iv775kwism6304p6z7mqpjvipl57nq1bgvmbk445943fmhq";
-      system = "split-sequence";
-      asd = "split-sequence";
-    });
-    systems = [ "split-sequence" ];
-    lispLibs = [  ];
-  };
-  split-sequence_slash_tests = {
-    pname = "split-sequence_tests";
-    version = "v2.0.1";
-    asds = [ "split-sequence" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/split-sequence/2021-05-31/split-sequence-v2.0.1.tgz";
-      sha256 = "172k7iv775kwism6304p6z7mqpjvipl57nq1bgvmbk445943fmhq";
-      system = "split-sequence";
-      asd = "split-sequence";
-    });
-    systems = [ "split-sequence/tests" ];
-    lispLibs = [ (getAttr "fiveam" pkgs) (getAttr "split-sequence" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  sqlite = {
-    pname = "sqlite";
-    version = "20190813-git";
-    asds = [ "sqlite" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-sqlite/2019-08-13/cl-sqlite-20190813-git.tgz";
-      sha256 = "08iv7b4m0hh7qx2cvq4f510nrgdld0vicnvmqsh9w0fgrcgmyg4k";
-      system = "sqlite";
-      asd = "sqlite";
-    });
-    systems = [ "sqlite" ];
-    lispLibs = [ (getAttr "cffi" pkgs) (getAttr "iterate" pkgs) ];
-  };
-  srfi-1 = {
-    pname = "srfi-1";
-    version = "20200218-git";
-    asds = [ "srfi-1" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/srfi-1/2020-02-18/srfi-1-20200218-git.tgz";
-      sha256 = "00r2ikf1ck1zz3mx3jgk3plf3ibfhhrr8sc8hzr6ix34sbfvdadg";
-      system = "srfi-1";
-      asd = "srfi-1";
-    });
-    systems = [ "srfi-1" ];
-    lispLibs = [  ];
-  };
-  srfi-1_dot_test = {
-    pname = "srfi-1.test";
-    version = "20200218-git";
-    asds = [ "srfi-1.test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/srfi-1/2020-02-18/srfi-1-20200218-git.tgz";
-      sha256 = "00r2ikf1ck1zz3mx3jgk3plf3ibfhhrr8sc8hzr6ix34sbfvdadg";
-      system = "srfi-1.test";
-      asd = "srfi-1";
-    });
-    systems = [ "srfi-1.test" ];
-    lispLibs = [ (getAttr "fiveam" pkgs) (getAttr "srfi-1" pkgs) ];
-  };
-  srfi-23 = {
-    pname = "srfi-23";
-    version = "20200218-git";
-    asds = [ "srfi-23" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/srfi-23/2020-02-18/srfi-23-20200218-git.tgz";
-      sha256 = "0hgq2bdpdjp550kk9xlrxh82n45ldb42j2zzhkndmffh4rp9hd13";
-      system = "srfi-23";
-      asd = "srfi-23";
-    });
-    systems = [ "srfi-23" ];
-    lispLibs = [  ];
-  };
-  srfi-6 = {
-    pname = "srfi-6";
-    version = "20200218-git";
-    asds = [ "srfi-6" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/srfi-6/2020-02-18/srfi-6-20200218-git.tgz";
-      sha256 = "1m9316r75haig84fhcrfm69gq0zfh5xqwqw8wsccc6z6vpz7pfwm";
-      system = "srfi-6";
-      asd = "srfi-6";
-    });
-    systems = [ "srfi-6" ];
-    lispLibs = [  ];
-  };
-  srfi-98 = {
-    pname = "srfi-98";
-    version = "20200218-git";
-    asds = [ "srfi-98" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/srfi-98/2020-02-18/srfi-98-20200218-git.tgz";
-      sha256 = "0qqa7c6nas85n8mdpmk996jh12xm0nf63nhj1chi9qkwgm924fj3";
-      system = "srfi-98";
-      asd = "srfi-98";
-    });
-    systems = [ "srfi-98" ];
-    lispLibs = [  ];
-  };
-  srfi-98_dot_test = {
-    pname = "srfi-98.test";
-    version = "20200218-git";
-    asds = [ "srfi-98.test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/srfi-98/2020-02-18/srfi-98-20200218-git.tgz";
-      sha256 = "0qqa7c6nas85n8mdpmk996jh12xm0nf63nhj1chi9qkwgm924fj3";
-      system = "srfi-98.test";
-      asd = "srfi-98";
-    });
-    systems = [ "srfi-98.test" ];
-    lispLibs = [ (getAttr "fiveam" pkgs) (getAttr "srfi-98" pkgs) ];
-  };
-  sse-client = {
-    pname = "sse-client";
-    version = "20210807-git";
-    asds = [ "sse-client" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-sse/2021-08-07/cl-sse-20210807-git.tgz";
-      sha256 = "1by7xx397fyplxrydhfjm7nkxb6gmqh0h5f0rp4kh5dx45gk59gl";
-      system = "sse-client";
-      asd = "sse-client";
-    });
-    systems = [ "sse-client" ];
-    lispLibs = [  ];
-  };
-  sse-client-test = {
-    pname = "sse-client-test";
-    version = "20210807-git";
-    asds = [ "sse-client-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-sse/2021-08-07/cl-sse-20210807-git.tgz";
-      sha256 = "1by7xx397fyplxrydhfjm7nkxb6gmqh0h5f0rp4kh5dx45gk59gl";
-      system = "sse-client-test";
-      asd = "sse-client-test";
-    });
-    systems = [ "sse-client-test" ];
-    lispLibs = [ (getAttr "sse-client" pkgs) (getAttr "fiveam" pkgs) (getAttr "trivial-escapes" pkgs) ];
-  };
-  sse-demo = {
-    pname = "sse-demo";
-    version = "20210807-git";
-    asds = [ "sse-demo" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-sse/2021-08-07/cl-sse-20210807-git.tgz";
-      sha256 = "1by7xx397fyplxrydhfjm7nkxb6gmqh0h5f0rp4kh5dx45gk59gl";
-      system = "sse-demo";
-      asd = "sse-demo";
-    });
-    systems = [ "sse-demo" ];
-    lispLibs = [ (getAttr "sse-server" pkgs) (getAttr "easy-routes" pkgs) (getAttr "flexi-streams" pkgs) (getAttr "hunchentoot" pkgs) ];
-  };
-  sse-server = {
-    pname = "sse-server";
-    version = "20210807-git";
-    asds = [ "sse-server" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-sse/2021-08-07/cl-sse-20210807-git.tgz";
-      sha256 = "1by7xx397fyplxrydhfjm7nkxb6gmqh0h5f0rp4kh5dx45gk59gl";
-      system = "sse-server";
-      asd = "sse-server";
-    });
-    systems = [ "sse-server" ];
-    lispLibs = [ (getAttr "cl-ppcre" pkgs) (getAttr "trivial-escapes" pkgs) ];
-  };
-  sse-server-test = {
-    pname = "sse-server-test";
-    version = "20210807-git";
-    asds = [ "sse-server-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-sse/2021-08-07/cl-sse-20210807-git.tgz";
-      sha256 = "1by7xx397fyplxrydhfjm7nkxb6gmqh0h5f0rp4kh5dx45gk59gl";
-      system = "sse-server-test";
-      asd = "sse-server-test";
-    });
-    systems = [ "sse-server-test" ];
-    lispLibs = [ (getAttr "sse-server" pkgs) (getAttr "fiveam" pkgs) (getAttr "trivial-escapes" pkgs) ];
-  };
-  st-json = {
-    pname = "st-json";
-    version = "20210630-git";
-    asds = [ "st-json" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/st-json/2021-06-30/st-json-20210630-git.tgz";
-      sha256 = "06qrhr5iw73k96lai2x9w52l6gnmlxy7fsr0r35gz6nz1f71x7gx";
-      system = "st-json";
-      asd = "st-json";
-    });
-    systems = [ "st-json" ];
-    lispLibs = [  ];
-  };
-  standard-cl = {
-    pname = "standard-cl";
-    version = "20121125-git";
-    asds = [ "standard-cl" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-match/2012-11-25/cl-match-20121125-git.tgz";
-      sha256 = "1qc8gzp7f4phgyi5whkxacrqzdqs0y1hvkf71m8n7l303jly9wjf";
-      system = "standard-cl";
-      asd = "standard-cl";
-    });
-    systems = [ "standard-cl" ];
-    lispLibs = [  ];
-  };
-  staple = {
-    pname = "staple";
-    version = "20221106-git";
-    asds = [ "staple" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/staple/2022-11-06/staple-20221106-git.tgz";
-      sha256 = "0igs9dfc3bkzzz3bkhr5pijy6bf13lhhi4vl12gydjmyhckirkkk";
-      system = "staple";
-      asd = "staple";
-    });
-    systems = [ "staple" ];
-    lispLibs = [ (getAttr "babel" pkgs) (getAttr "cl-ppcre" pkgs) (getAttr "clip" pkgs) (getAttr "definitions" pkgs) (getAttr "documentation-utils" pkgs) (getAttr "language-codes" pkgs) (getAttr "pathname-utils" pkgs) (getAttr "staple-code-parser" pkgs) (getAttr "staple-package-recording" pkgs) ];
-  };
-  staple-code-parser = {
-    pname = "staple-code-parser";
-    version = "20221106-git";
-    asds = [ "staple-code-parser" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/staple/2022-11-06/staple-20221106-git.tgz";
-      sha256 = "0igs9dfc3bkzzz3bkhr5pijy6bf13lhhi4vl12gydjmyhckirkkk";
-      system = "staple-code-parser";
-      asd = "staple-code-parser";
-    });
-    systems = [ "staple-code-parser" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "concrete-syntax-tree" pkgs) (getAttr "concrete-syntax-tree-destructuring" pkgs) (getAttr "concrete-syntax-tree-lambda-list" pkgs) (getAttr "definitions" pkgs) (getAttr "documentation-utils" pkgs) (getAttr "eclector" pkgs) (getAttr "eclector-concrete-syntax-tree" pkgs) ];
-  };
-  staple-markdown = {
-    pname = "staple-markdown";
-    version = "20221106-git";
-    asds = [ "staple-markdown" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/staple/2022-11-06/staple-20221106-git.tgz";
-      sha256 = "0igs9dfc3bkzzz3bkhr5pijy6bf13lhhi4vl12gydjmyhckirkkk";
-      system = "staple-markdown";
-      asd = "staple-markdown";
-    });
-    systems = [ "staple-markdown" ];
-    lispLibs = [ (getAttr "_3bmd" pkgs) (getAttr "_3bmd-ext-code-blocks" pkgs) (getAttr "staple" pkgs) ];
-  };
-  staple-markless = {
-    pname = "staple-markless";
-    version = "20221106-git";
-    asds = [ "staple-markless" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/staple/2022-11-06/staple-20221106-git.tgz";
-      sha256 = "0igs9dfc3bkzzz3bkhr5pijy6bf13lhhi4vl12gydjmyhckirkkk";
-      system = "staple-markless";
-      asd = "staple-markless";
-    });
-    systems = [ "staple-markless" ];
-    lispLibs = [ (getAttr "cl-markless-plump" pkgs) (getAttr "staple" pkgs) ];
-  };
-  staple-package-recording = {
-    pname = "staple-package-recording";
-    version = "20221106-git";
-    asds = [ "staple-package-recording" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/staple/2022-11-06/staple-20221106-git.tgz";
-      sha256 = "0igs9dfc3bkzzz3bkhr5pijy6bf13lhhi4vl12gydjmyhckirkkk";
-      system = "staple-package-recording";
-      asd = "staple-package-recording";
-    });
-    systems = [ "staple-package-recording" ];
-    lispLibs = [  ];
-  };
-  staple-restructured-text = {
-    pname = "staple-restructured-text";
-    version = "20221106-git";
-    asds = [ "staple-restructured-text" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/staple/2022-11-06/staple-20221106-git.tgz";
-      sha256 = "0igs9dfc3bkzzz3bkhr5pijy6bf13lhhi4vl12gydjmyhckirkkk";
-      system = "staple-restructured-text";
-      asd = "staple-restructured-text";
-    });
-    systems = [ "staple-restructured-text" ];
-    lispLibs = [ (getAttr "docutils" pkgs) (getAttr "staple" pkgs) ];
-  };
-  staple-server = {
-    pname = "staple-server";
-    version = "20221106-git";
-    asds = [ "staple-server" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/staple/2022-11-06/staple-20221106-git.tgz";
-      sha256 = "0igs9dfc3bkzzz3bkhr5pijy6bf13lhhi4vl12gydjmyhckirkkk";
-      system = "staple-server";
-      asd = "staple-server";
-    });
-    systems = [ "staple-server" ];
-    lispLibs = [ (getAttr "dissect" pkgs) (getAttr "documentation-utils" pkgs) (getAttr "hunchentoot" pkgs) (getAttr "staple-markdown" pkgs) (getAttr "staple-markless" pkgs) ];
-  };
-  stars = {
-    pname = "stars";
-    version = "20180831-git";
-    asds = [ "stars" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/sprint-stars/2018-08-31/sprint-stars-20180831-git.tgz";
-      sha256 = "1pm6wvywfgy0vlb0b2lbybpvhw9xzyn1nlpy0wpcglxxig6mnrgi";
-      system = "stars";
-      asd = "stars";
-    });
-    systems = [ "stars" ];
-    lispLibs = [ (getAttr "cl-json" pkgs) (getAttr "drakma" pkgs) (getAttr "xmls" pkgs) ];
-  };
-  static-dispatch = {
-    pname = "static-dispatch";
-    version = "20211209-git";
-    asds = [ "static-dispatch" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/static-dispatch/2021-12-09/static-dispatch-20211209-git.tgz";
-      sha256 = "1cishp7nckda5hav6c907axdfn1zpmzxpsy6hk7kkb69qn81yn2i";
-      system = "static-dispatch";
-      asd = "static-dispatch";
-    });
-    systems = [ "static-dispatch" ];
-    lispLibs = [ (getAttr "agutil" pkgs) (getAttr "alexandria" pkgs) (getAttr "anaphora" pkgs) (getAttr "arrows" pkgs) (getAttr "cl-environments" pkgs) (getAttr "cl-form-types" pkgs) (getAttr "closer-mop" pkgs) (getAttr "iterate" pkgs) (getAttr "optima" pkgs) ];
-  };
-  static-dispatch_slash_test = {
-    pname = "static-dispatch_test";
-    version = "20211209-git";
-    asds = [ "static-dispatch" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/static-dispatch/2021-12-09/static-dispatch-20211209-git.tgz";
-      sha256 = "1cishp7nckda5hav6c907axdfn1zpmzxpsy6hk7kkb69qn81yn2i";
-      system = "static-dispatch";
-      asd = "static-dispatch";
-    });
-    systems = [ "static-dispatch/test" ];
-    lispLibs = [ (getAttr "fiveam" pkgs) (getAttr "static-dispatch" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  static-vectors = {
-    pname = "static-vectors";
-    version = "v1.8.9";
-    asds = [ "static-vectors" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/static-vectors/2021-06-30/static-vectors-v1.8.9.tgz";
-      sha256 = "079qa20lhanzsz1qf4iags91n0ziylbjgbcymm5a5qj7yryas4fw";
-      system = "static-vectors";
-      asd = "static-vectors";
-    });
-    systems = [ "static-vectors" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cffi" pkgs) (getAttr "cffi-grovel" pkgs) ];
-  };
-  static-vectors_slash_test = {
-    pname = "static-vectors_test";
-    version = "v1.8.9";
-    asds = [ "static-vectors" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/static-vectors/2021-06-30/static-vectors-v1.8.9.tgz";
-      sha256 = "079qa20lhanzsz1qf4iags91n0ziylbjgbcymm5a5qj7yryas4fw";
-      system = "static-vectors";
-      asd = "static-vectors";
-    });
-    systems = [ "static-vectors/test" ];
-    lispLibs = [ (getAttr "fiveam" pkgs) (getAttr "static-vectors" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  statistics = {
-    pname = "statistics";
-    version = "20221106-git";
-    asds = [ "statistics" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/statistics/2022-11-06/statistics-20221106-git.tgz";
-      sha256 = "135dk9fr1bny0hfpkg0g9s7f67gjf9f8ipx01q2is5iqmz24hy94";
-      system = "statistics";
-      asd = "statistics";
-    });
-    systems = [ "statistics" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "anaphora" pkgs) (getAttr "org_dot_tfeb_dot_conduit-packages" pkgs) (getAttr "distributions" pkgs) (getAttr "let-plus" pkgs) (getAttr "num-utils" pkgs) ];
-  };
-  statistics_slash_lh = {
-    pname = "statistics_lh";
-    version = "20221106-git";
-    asds = [ "statistics" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/statistics/2022-11-06/statistics-20221106-git.tgz";
-      sha256 = "135dk9fr1bny0hfpkg0g9s7f67gjf9f8ipx01q2is5iqmz24hy94";
-      system = "statistics";
-      asd = "statistics";
-    });
-    systems = [ "statistics/lh" ];
-    lispLibs = [  ];
-    meta = {
-      broken = true;
-    };
-  };
-  statistics_slash_tests = {
-    pname = "statistics_tests";
-    version = "20221106-git";
-    asds = [ "statistics" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/statistics/2022-11-06/statistics-20221106-git.tgz";
-      sha256 = "135dk9fr1bny0hfpkg0g9s7f67gjf9f8ipx01q2is5iqmz24hy94";
-      system = "statistics";
-      asd = "statistics";
-    });
-    systems = [ "statistics/tests" ];
-    lispLibs = [ (getAttr "clunit2" pkgs) (getAttr "num-utils" pkgs) (getAttr "statistics" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  stdutils = {
-    pname = "stdutils";
-    version = "20111001-git";
-    asds = [ "stdutils" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-stdutils/2011-10-01/cl-stdutils-20111001-git.tgz";
-      sha256 = "16vxxphqdq8264x0aanm36x9r6d3ci1gjf4vf46mwl59gcff4wcj";
-      system = "stdutils";
-      asd = "stdutils";
-    });
-    systems = [ "stdutils" ];
-    lispLibs = [ (getAttr "cl-fad" pkgs) (getAttr "cl-ppcre" pkgs) ];
-  };
-  stealth-mixin = {
-    pname = "stealth-mixin";
-    version = "20211020-git";
-    asds = [ "stealth-mixin" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/stealth-mixin/2021-10-20/stealth-mixin-20211020-git.tgz";
-      sha256 = "0ar9cdmbmdnqz1ywpw34n47hlh0vqmb6pl76f5vbfgip3c81xwyi";
-      system = "stealth-mixin";
-      asd = "stealth-mixin";
-    });
-    systems = [ "stealth-mixin" ];
-    lispLibs = [ (getAttr "closer-mop" pkgs) ];
-  };
-  stefil = {
-    pname = "stefil";
-    version = "20181210-git";
-    asds = [ "stefil" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/stefil/2018-12-10/stefil-20181210-git.tgz";
-      sha256 = "0bqz64q2szzhf91zyqyssmvrz7da6442rs01808pf3wrdq28bclh";
-      system = "stefil";
-      asd = "stefil";
-    });
-    systems = [ "stefil" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "iterate" pkgs) (getAttr "metabang-bind" pkgs) (getAttr "swank" pkgs) ];
-  };
-  stefil_plus = {
-    pname = "stefil+";
-    version = "20211209-git";
-    asds = [ "stefil+" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/stefil-/2021-12-09/stefil--20211209-git.tgz";
-      sha256 = "039jjhcb3ka6vag39hz5v1bi81x444rqj6rb3np5qbm07dh1aij0";
-      system = "stefil+";
-      asd = "stefil+";
-    });
-    systems = [ "stefil+" ];
-    lispLibs = [ (getAttr "asdf-package-system" pkgs) (getAttr "gt" pkgs) (getAttr "metabang-bind" pkgs) (getAttr "stefil" pkgs) ];
-  };
-  stefil-test = {
-    pname = "stefil-test";
-    version = "20181210-git";
-    asds = [ "stefil-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/stefil/2018-12-10/stefil-20181210-git.tgz";
-      sha256 = "0bqz64q2szzhf91zyqyssmvrz7da6442rs01808pf3wrdq28bclh";
-      system = "stefil-test";
-      asd = "stefil";
-    });
-    systems = [ "stefil-test" ];
-    lispLibs = [ (getAttr "stefil" pkgs) ];
-  };
-  stem = {
-    pname = "stem";
-    version = "20150608-git";
-    asds = [ "stem" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/stem/2015-06-08/stem-20150608-git.tgz";
-      sha256 = "0a2kr09c3qcwg16n8rm15qgy5p9l6z4m72jray0846hqbnji77mp";
-      system = "stem";
-      asd = "stem";
-    });
-    systems = [ "stem" ];
-    lispLibs = [  ];
-  };
-  stepster = {
-    pname = "stepster";
-    version = "20221106-git";
-    asds = [ "stepster" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/stepster/2022-11-06/stepster-20221106-git.tgz";
-      sha256 = "1891b5n4b5pnms90q7d3iaaxdw11fzd4b97mgawx2mh5kmwjvl47";
-      system = "stepster";
-      asd = "stepster";
-    });
-    systems = [ "stepster" ];
-    lispLibs = [ (getAttr "babel" pkgs) (getAttr "cl-ppcre" pkgs) (getAttr "cl-reexport" pkgs) (getAttr "clss" pkgs) (getAttr "dexador" pkgs) (getAttr "jonathan" pkgs) (getAttr "plump" pkgs) ];
-  };
-  stl = {
-    pname = "stl";
-    version = "20171019-git";
-    asds = [ "stl" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/stl/2017-10-19/stl-20171019-git.tgz";
-      sha256 = "12v11bsarlnx5k930gx116wbgv41kwm45ysdikq3am4x3lqsjz2n";
-      system = "stl";
-      asd = "stl";
-    });
-    systems = [ "stl" ];
-    lispLibs = [ (getAttr "_3d-vectors" pkgs) ];
-  };
-  stmx = {
-    pname = "stmx";
-    version = "stable-49eef1d5-git";
-    asds = [ "stmx" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/stmx/2020-12-20/stmx-stable-49eef1d5-git.tgz";
-      sha256 = "0pqh8yp3aqyk1sx3y8zinhrimq9rzizn7v5vsqfgj84xcv3qgybr";
-      system = "stmx";
-      asd = "stmx";
-    });
-    systems = [ "stmx" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "bordeaux-threads" pkgs) (getAttr "closer-mop" pkgs) (getAttr "log4cl" pkgs) (getAttr "trivial-garbage" pkgs) ];
-  };
-  stmx_dot_test = {
-    pname = "stmx.test";
-    version = "stable-49eef1d5-git";
-    asds = [ "stmx.test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/stmx/2020-12-20/stmx-stable-49eef1d5-git.tgz";
-      sha256 = "0pqh8yp3aqyk1sx3y8zinhrimq9rzizn7v5vsqfgj84xcv3qgybr";
-      system = "stmx.test";
-      asd = "stmx.test";
-    });
-    systems = [ "stmx.test" ];
-    lispLibs = [ (getAttr "bordeaux-threads" pkgs) (getAttr "fiveam" pkgs) (getAttr "log4cl" pkgs) (getAttr "stmx" pkgs) ];
-  };
-  str = {
-    pname = "str";
-    version = "20221106-git";
-    asds = [ "str" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-str/2022-11-06/cl-str-20221106-git.tgz";
-      sha256 = "072im185fmm01ddkfx920g1nm8z2ndw24drf808kn32dw51wjjda";
-      system = "str";
-      asd = "str";
-    });
-    systems = [ "str" ];
-    lispLibs = [ (getAttr "cl-change-case" pkgs) (getAttr "cl-ppcre" pkgs) (getAttr "cl-ppcre-unicode" pkgs) ];
-  };
-  str_dot_test = {
-    pname = "str.test";
-    version = "20221106-git";
-    asds = [ "str.test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-str/2022-11-06/cl-str-20221106-git.tgz";
-      sha256 = "072im185fmm01ddkfx920g1nm8z2ndw24drf808kn32dw51wjjda";
-      system = "str.test";
-      asd = "str.test";
-    });
-    systems = [ "str.test" ];
-    lispLibs = [ (getAttr "str" pkgs) (getAttr "prove" pkgs) (getAttr "prove-asdf" pkgs) ];
-  };
-  strict-function = {
-    pname = "strict-function";
-    version = "20211020-git";
-    asds = [ "strict-function" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/strict-function/2021-10-20/strict-function-20211020-git.tgz";
-      sha256 = "176l5024qa72my7wiag0w6mmwys1q4yk6b4n944378qbqr2zpq2a";
-      system = "strict-function";
-      asd = "strict-function";
-    });
-    systems = [ "strict-function" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "trivia" pkgs) ];
-  };
-  strict-function_slash_test = {
-    pname = "strict-function_test";
-    version = "20211020-git";
-    asds = [ "strict-function" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/strict-function/2021-10-20/strict-function-20211020-git.tgz";
-      sha256 = "176l5024qa72my7wiag0w6mmwys1q4yk6b4n944378qbqr2zpq2a";
-      system = "strict-function";
-      asd = "strict-function";
-    });
-    systems = [ "strict-function/test" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "rove" pkgs) (getAttr "strict-function" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  string-case = {
-    pname = "string-case";
-    version = "20180711-git";
-    asds = [ "string-case" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/string-case/2018-07-11/string-case-20180711-git.tgz";
-      sha256 = "1n5i3yh0h5s636rcnwn7jwqy3rjflikra04lymimhpcshhjsk0md";
-      system = "string-case";
-      asd = "string-case";
-    });
-    systems = [ "string-case" ];
-    lispLibs = [  ];
-  };
-  string-escape = {
-    pname = "string-escape";
-    version = "20150407-http";
-    asds = [ "string-escape" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/string-escape/2015-04-07/string-escape-20150407-http.tgz";
-      sha256 = "0r7b699332hy3qj17jax9jdhq4jx6rbw5xf0j43bwg79wddk0rq3";
-      system = "string-escape";
-      asd = "string-escape";
-    });
-    systems = [ "string-escape" ];
-    lispLibs = [  ];
-  };
-  stripe = {
-    pname = "stripe";
-    version = "20220707-git";
-    asds = [ "stripe" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/stripe/2022-07-07/stripe-20220707-git.tgz";
-      sha256 = "1n9lv9yixzampf986vkspspr7mrvpsz2l5h919agc52hkv9wg2f7";
-      system = "stripe";
-      asd = "stripe";
-    });
-    systems = [ "stripe" ];
-    lispLibs = [ (getAttr "dexador" pkgs) (getAttr "local-time" pkgs) (getAttr "mfiano-utils" pkgs) (getAttr "yason" pkgs) ];
-  };
-  stripe-against-the-modern-world = {
-    pname = "stripe-against-the-modern-world";
-    version = "20221106-git";
-    asds = [ "stripe-against-the-modern-world" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/stripe-against-the-modern-world/2022-11-06/stripe-against-the-modern-world-20221106-git.tgz";
-      sha256 = "1qp714y7b7vfdafirlphk02gixa4jffs0xgcy96fncxs6r2zq3q9";
-      system = "stripe-against-the-modern-world";
-      asd = "stripe-against-the-modern-world";
-    });
-    systems = [ "stripe-against-the-modern-world" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "str" pkgs) (getAttr "closer-mop" pkgs) (getAttr "dexador" pkgs) (getAttr "do-urlencode" pkgs) (getAttr "ironclad" pkgs) (getAttr "jonathan" pkgs) (getAttr "local-time" pkgs) (getAttr "ningle" pkgs) ];
-  };
-  structure-ext = {
-    pname = "structure-ext";
-    version = "20211209-git";
-    asds = [ "structure-ext" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/structure-ext/2021-12-09/structure-ext-20211209-git.tgz";
-      sha256 = "1qhny1m0r2s9bkhr9z7psczykknmb62c32bwav4hgqm96rna1pkq";
-      system = "structure-ext";
-      asd = "structure-ext";
-    });
-    systems = [ "structure-ext" ];
-    lispLibs = [ (getAttr "structure-ext_dot_as-class" pkgs) (getAttr "structure-ext_dot_left-arrow-accessors" pkgs) (getAttr "structure-ext_dot_make-instance" pkgs) ];
-  };
-  structure-ext_dot_as-class = {
-    pname = "structure-ext.as-class";
-    version = "20211209-git";
-    asds = [ "structure-ext.as-class" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/structure-ext/2021-12-09/structure-ext-20211209-git.tgz";
-      sha256 = "1qhny1m0r2s9bkhr9z7psczykknmb62c32bwav4hgqm96rna1pkq";
-      system = "structure-ext.as-class";
-      asd = "structure-ext.as-class";
-    });
-    systems = [ "structure-ext.as-class" ];
-    lispLibs = [ (getAttr "closer-mop" pkgs) (getAttr "jingoh_dot_documentizer" pkgs) (getAttr "lambda-fiddle" pkgs) (getAttr "uiop" pkgs) ];
-  };
-  structure-ext_dot_as-class_dot_test = {
-    pname = "structure-ext.as-class.test";
-    version = "20211209-git";
-    asds = [ "structure-ext.as-class.test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/structure-ext/2021-12-09/structure-ext-20211209-git.tgz";
-      sha256 = "1qhny1m0r2s9bkhr9z7psczykknmb62c32bwav4hgqm96rna1pkq";
-      system = "structure-ext.as-class.test";
-      asd = "structure-ext.as-class.test";
-    });
-    systems = [ "structure-ext.as-class.test" ];
-    lispLibs = [ (getAttr "jingoh" pkgs) (getAttr "structure-ext_dot_as-class" pkgs) ];
-  };
-  structure-ext_dot_left-arrow-accessors = {
-    pname = "structure-ext.left-arrow-accessors";
-    version = "20211209-git";
-    asds = [ "structure-ext.left-arrow-accessors" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/structure-ext/2021-12-09/structure-ext-20211209-git.tgz";
-      sha256 = "1qhny1m0r2s9bkhr9z7psczykknmb62c32bwav4hgqm96rna1pkq";
-      system = "structure-ext.left-arrow-accessors";
-      asd = "structure-ext.left-arrow-accessors";
-    });
-    systems = [ "structure-ext.left-arrow-accessors" ];
-    lispLibs = [ (getAttr "jingoh_dot_documentizer" pkgs) ];
-  };
-  structure-ext_dot_left-arrow-accessors_dot_test = {
-    pname = "structure-ext.left-arrow-accessors.test";
-    version = "20211209-git";
-    asds = [ "structure-ext.left-arrow-accessors.test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/structure-ext/2021-12-09/structure-ext-20211209-git.tgz";
-      sha256 = "1qhny1m0r2s9bkhr9z7psczykknmb62c32bwav4hgqm96rna1pkq";
-      system = "structure-ext.left-arrow-accessors.test";
-      asd = "structure-ext.left-arrow-accessors.test";
-    });
-    systems = [ "structure-ext.left-arrow-accessors.test" ];
-    lispLibs = [ (getAttr "jingoh" pkgs) (getAttr "structure-ext_dot_left-arrow-accessors" pkgs) ];
-  };
-  structure-ext_dot_make-instance = {
-    pname = "structure-ext.make-instance";
-    version = "20211209-git";
-    asds = [ "structure-ext.make-instance" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/structure-ext/2021-12-09/structure-ext-20211209-git.tgz";
-      sha256 = "1qhny1m0r2s9bkhr9z7psczykknmb62c32bwav4hgqm96rna1pkq";
-      system = "structure-ext.make-instance";
-      asd = "structure-ext.make-instance";
-    });
-    systems = [ "structure-ext.make-instance" ];
-    lispLibs = [ (getAttr "closer-mop" pkgs) (getAttr "jingoh_dot_documentizer" pkgs) ];
-  };
-  structure-ext_dot_make-instance_dot_test = {
-    pname = "structure-ext.make-instance.test";
-    version = "20211209-git";
-    asds = [ "structure-ext.make-instance.test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/structure-ext/2021-12-09/structure-ext-20211209-git.tgz";
-      sha256 = "1qhny1m0r2s9bkhr9z7psczykknmb62c32bwav4hgqm96rna1pkq";
-      system = "structure-ext.make-instance.test";
-      asd = "structure-ext.make-instance.test";
-    });
-    systems = [ "structure-ext.make-instance.test" ];
-    lispLibs = [ (getAttr "jingoh" pkgs) (getAttr "structure-ext_dot_make-instance" pkgs) ];
-  };
-  structy-defclass = {
-    pname = "structy-defclass";
-    version = "20170630-git";
-    asds = [ "structy-defclass" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/structy-defclass/2017-06-30/structy-defclass-20170630-git.tgz";
-      sha256 = "0fdlj45xzyghmg65dvs7ww7dxji84iid2y6rh9j77aip7v0l5q63";
-      system = "structy-defclass";
-      asd = "structy-defclass";
-    });
-    systems = [ "structy-defclass" ];
-    lispLibs = [  ];
-  };
-  studio-client = {
-    pname = "studio-client";
-    version = "20210228-git";
-    asds = [ "studio-client" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/studio-client/2021-02-28/studio-client-20210228-git.tgz";
-      sha256 = "0rlvp1pm1ryjwnc4zl92p0nh53iy9hqrim13pi9mjcrdaqfi5qsk";
-      system = "studio-client";
-      asd = "studio-client";
-    });
-    systems = [ "studio-client" ];
-    lispLibs = [ (getAttr "babel" pkgs) (getAttr "documentation-utils" pkgs) (getAttr "north-core" pkgs) (getAttr "yason" pkgs) ];
-  };
-  stumpwm = {
-    pname = "stumpwm";
-    version = "20221106-git";
-    asds = [ "stumpwm" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/stumpwm/2022-11-06/stumpwm-20221106-git.tgz";
-      sha256 = "0gvr136fv5zs61017gns3kbkz00837n0b52fif9vany5fslx3aj2";
-      system = "stumpwm";
-      asd = "stumpwm";
-    });
-    systems = [ "stumpwm" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cl-ppcre" pkgs) (getAttr "clx" pkgs) (getAttr "dynamic-mixins" pkgs) ];
-  };
-  stumpwm-dynamic-float = {
-    pname = "stumpwm-dynamic-float";
-    version = "20221106-git";
-    asds = [ "stumpwm-dynamic-float" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/stumpwm-dynamic-float/2022-11-06/stumpwm-dynamic-float-20221106-git.tgz";
-      sha256 = "13m9864vfj4b5b0hlvp7jrb96368rxr5ydjsdqldky10yad7icxf";
-      system = "stumpwm-dynamic-float";
-      asd = "stumpwm-dynamic-float";
-    });
-    systems = [ "stumpwm-dynamic-float" ];
-    lispLibs = [ (getAttr "stumpwm" pkgs) ];
-  };
-  stumpwm-sndioctl = {
-    pname = "stumpwm-sndioctl";
-    version = "20210531-git";
-    asds = [ "stumpwm-sndioctl" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/stumpwm-sndioctl/2021-05-31/stumpwm-sndioctl-20210531-git.tgz";
-      sha256 = "1q4w4grim7izvw01k95wh7bbaaq0hz2ljjhn47nyd7pzrk9dabpv";
-      system = "stumpwm-sndioctl";
-      asd = "stumpwm-sndioctl";
-    });
-    systems = [ "stumpwm-sndioctl" ];
-    lispLibs = [ (getAttr "stumpwm" pkgs) ];
-  };
-  stumpwm-tests = {
-    pname = "stumpwm-tests";
-    version = "20221106-git";
-    asds = [ "stumpwm-tests" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/stumpwm/2022-11-06/stumpwm-20221106-git.tgz";
-      sha256 = "0gvr136fv5zs61017gns3kbkz00837n0b52fif9vany5fslx3aj2";
-      system = "stumpwm-tests";
-      asd = "stumpwm-tests";
-    });
-    systems = [ "stumpwm-tests" ];
-    lispLibs = [ (getAttr "fiasco" pkgs) (getAttr "stumpwm" pkgs) ];
-  };
-  stumpwm_slash_build = {
-    pname = "stumpwm_build";
-    version = "20221106-git";
-    asds = [ "stumpwm" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/stumpwm/2022-11-06/stumpwm-20221106-git.tgz";
-      sha256 = "0gvr136fv5zs61017gns3kbkz00837n0b52fif9vany5fslx3aj2";
-      system = "stumpwm";
-      asd = "stumpwm";
-    });
-    systems = [ "stumpwm/build" ];
-    lispLibs = [ (getAttr "stumpwm" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  sucle = {
-    pname = "sucle";
-    version = "20200427-git";
-    asds = [ "sucle" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/sucle/2020-04-27/sucle-20200427-git.tgz";
-      sha256 = "033akkn9zxc6qdgycgxgybx3v23638245xrx29x2cbwnvg3i1q34";
-      system = "sucle";
-      asd = "sucle";
-    });
-    systems = [ "sucle" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "black-tie" pkgs) (getAttr "cl-opengl" pkgs) (getAttr "livesupport" pkgs) (getAttr "aabbcc" pkgs) (getAttr "application" pkgs) (getAttr "camera-matrix" pkgs) (getAttr "control" pkgs) (getAttr "crud" pkgs) (getAttr "fps-independent-timestep" pkgs) (getAttr "glhelp" pkgs) (getAttr "image-utility" pkgs) (getAttr "ncurses-clone-for-lem" pkgs) (getAttr "nsb-cga" pkgs) (getAttr "quads" pkgs) (getAttr "scratch-buffer" pkgs) (getAttr "sucle-multiprocessing" pkgs) (getAttr "sucle-temp" pkgs) (getAttr "text-subsystem" pkgs) (getAttr "uncommon-lisp" pkgs) (getAttr "utility" pkgs) ];
-  };
-  sucle-multiprocessing = {
-    pname = "sucle-multiprocessing";
-    version = "20200427-git";
-    asds = [ "sucle-multiprocessing" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/sucle/2020-04-27/sucle-20200427-git.tgz";
-      sha256 = "033akkn9zxc6qdgycgxgybx3v23638245xrx29x2cbwnvg3i1q34";
-      system = "sucle-multiprocessing";
-      asd = "sucle-multiprocessing";
-    });
-    systems = [ "sucle-multiprocessing" ];
-    lispLibs = [ (getAttr "bordeaux-threads" pkgs) (getAttr "cl-cpus" pkgs) (getAttr "lparallel" pkgs) (getAttr "uncommon-lisp" pkgs) (getAttr "utility" pkgs) ];
-  };
-  sucle-serialize = {
-    pname = "sucle-serialize";
-    version = "20200427-git";
-    asds = [ "sucle-serialize" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/sucle/2020-04-27/sucle-20200427-git.tgz";
-      sha256 = "033akkn9zxc6qdgycgxgybx3v23638245xrx29x2cbwnvg3i1q34";
-      system = "sucle-serialize";
-      asd = "sucle-serialize";
-    });
-    systems = [ "sucle-serialize" ];
-    lispLibs = [ (getAttr "chipz" pkgs) (getAttr "cl-conspack" pkgs) (getAttr "salza2" pkgs) ];
-  };
-  sucle-temp = {
-    pname = "sucle-temp";
-    version = "20200427-git";
-    asds = [ "sucle-temp" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/sucle/2020-04-27/sucle-20200427-git.tgz";
-      sha256 = "033akkn9zxc6qdgycgxgybx3v23638245xrx29x2cbwnvg3i1q34";
-      system = "sucle-temp";
-      asd = "sucle-temp";
-    });
-    systems = [ "sucle-temp" ];
-    lispLibs = [  ];
-  };
-  sucle-test = {
-    pname = "sucle-test";
-    version = "20200427-git";
-    asds = [ "sucle-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/sucle/2020-04-27/sucle-20200427-git.tgz";
-      sha256 = "033akkn9zxc6qdgycgxgybx3v23638245xrx29x2cbwnvg3i1q34";
-      system = "sucle-test";
-      asd = "sucle-test";
-    });
-    systems = [ "sucle-test" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cl-opengl" pkgs) (getAttr "aabbcc" pkgs) (getAttr "application" pkgs) (getAttr "camera-matrix" pkgs) (getAttr "character-modifier-bits" pkgs) (getAttr "control" pkgs) (getAttr "deflazy" pkgs) (getAttr "fps-independent-timestep" pkgs) (getAttr "image-utility" pkgs) (getAttr "ncurses-clone-for-lem" pkgs) (getAttr "nsb-cga" pkgs) (getAttr "quads" pkgs) (getAttr "scratch-buffer" pkgs) (getAttr "sucle" pkgs) (getAttr "sucle-multiprocessing" pkgs) (getAttr "sucle-serialize" pkgs) (getAttr "text-subsystem" pkgs) (getAttr "uncommon-lisp" pkgs) (getAttr "window" pkgs) ];
-  };
-  surf = {
-    pname = "surf";
-    version = "master-1a957fb2-git";
-    asds = [ "surf" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/gendl/2022-07-07/gendl-master-1a957fb2-git.tgz";
-      sha256 = "0j47qnvvfx3vnh3pll6rkya5m142hi93bd5jk65rv43vbc94sv30";
-      system = "surf";
-      asd = "surf";
-    });
-    systems = [ "surf" ];
-    lispLibs = [ (getAttr "geom-base" pkgs) ];
-  };
-  swank = {
-    pname = "swank";
-    version = "v2.27";
-    asds = [ "swank" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/slime/2022-02-20/slime-v2.27.tgz";
-      sha256 = "0wrq7s39lwca9wi01fj0wa2z6n0yyrv17c471kdkxxqppl4whi8m";
-      system = "swank";
-      asd = "swank";
-    });
-    systems = [ "swank" ];
-    lispLibs = [  ];
-  };
-  swank-client = {
-    pname = "swank-client";
-    version = "20201220-git";
-    asds = [ "swank-client" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/swank-client/2020-12-20/swank-client-20201220-git.tgz";
-      sha256 = "1rcm6fnp5v73wxsi04chdvy76jivf5ib4ghqc3qs85zy4hswcdlv";
-      system = "swank-client";
-      asd = "swank-client";
-    });
-    systems = [ "swank-client" ];
-    lispLibs = [ (getAttr "bordeaux-threads" pkgs) (getAttr "com_dot_google_dot_base" pkgs) (getAttr "swank" pkgs) (getAttr "usocket" pkgs) ];
-  };
-  swank-client_slash_test = {
-    pname = "swank-client_test";
-    version = "20201220-git";
-    asds = [ "swank-client" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/swank-client/2020-12-20/swank-client-20201220-git.tgz";
-      sha256 = "1rcm6fnp5v73wxsi04chdvy76jivf5ib4ghqc3qs85zy4hswcdlv";
-      system = "swank-client";
-      asd = "swank-client";
-    });
-    systems = [ "swank-client/test" ];
-    lispLibs = [ (getAttr "hu_dot_dwim_dot_stefil" pkgs) (getAttr "swank-client" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  swank-crew = {
-    pname = "swank-crew";
-    version = "20200610-git";
-    asds = [ "swank-crew" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/swank-crew/2020-06-10/swank-crew-20200610-git.tgz";
-      sha256 = "0gfdkq4c1zzgkpxinfws9k9n6igisj6lmzz6n195m3g4kahx1nq4";
-      system = "swank-crew";
-      asd = "swank-crew";
-    });
-    systems = [ "swank-crew" ];
-    lispLibs = [ (getAttr "bordeaux-threads" pkgs) (getAttr "com_dot_google_dot_base" pkgs) (getAttr "swank-client" pkgs) ];
-  };
-  swank-crew_slash_test = {
-    pname = "swank-crew_test";
-    version = "20200610-git";
-    asds = [ "swank-crew" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/swank-crew/2020-06-10/swank-crew-20200610-git.tgz";
-      sha256 = "0gfdkq4c1zzgkpxinfws9k9n6igisj6lmzz6n195m3g4kahx1nq4";
-      system = "swank-crew";
-      asd = "swank-crew";
-    });
-    systems = [ "swank-crew/test" ];
-    lispLibs = [ (getAttr "hu_dot_dwim_dot_stefil" pkgs) (getAttr "swank-crew" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  swank-protocol = {
-    pname = "swank-protocol";
-    version = "20211020-git";
-    asds = [ "swank-protocol" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/swank-protocol/2021-10-20/swank-protocol-20211020-git.tgz";
-      sha256 = "1c6cbkvcy3k56pkq5nlnj5m0zwkgbbrhfs1igwkr89xal2a4fz56";
-      system = "swank-protocol";
-      asd = "swank-protocol";
-    });
-    systems = [ "swank-protocol" ];
-    lispLibs = [ (getAttr "swank" pkgs) (getAttr "usocket" pkgs) ];
-  };
-  swank_dot_live = {
-    pname = "swank.live";
-    version = "20160208-git";
-    asds = [ "swank.live" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/swank.live/2016-02-08/swank.live-20160208-git.tgz";
-      sha256 = "0p7jyf07symfan6lmbhd3r42kf5vrsbmmh9li0n1kky8rd6fhgls";
-      system = "swank.live";
-      asd = "swank.live";
-    });
-    systems = [ "swank.live" ];
-    lispLibs = [ (getAttr "swank" pkgs) ];
-  };
-  swap-bytes = {
-    pname = "swap-bytes";
-    version = "v1.2";
-    asds = [ "swap-bytes" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/swap-bytes/2019-11-30/swap-bytes-v1.2.tgz";
-      sha256 = "1hw1v1lw26rifyznpnj1csphha9jgzwpiic16ni3pvs6hcsni9rz";
-      system = "swap-bytes";
-      asd = "swap-bytes";
-    });
-    systems = [ "swap-bytes" ];
-    lispLibs = [ (getAttr "trivial-features" pkgs) ];
-  };
-  swap-bytes_slash_test = {
-    pname = "swap-bytes_test";
-    version = "v1.2";
-    asds = [ "swap-bytes" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/swap-bytes/2019-11-30/swap-bytes-v1.2.tgz";
-      sha256 = "1hw1v1lw26rifyznpnj1csphha9jgzwpiic16ni3pvs6hcsni9rz";
-      system = "swap-bytes";
-      asd = "swap-bytes";
-    });
-    systems = [ "swap-bytes/test" ];
-    lispLibs = [ (getAttr "fiveam" pkgs) (getAttr "swap-bytes" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  sxql = {
-    pname = "sxql";
-    version = "20210630-git";
-    asds = [ "sxql" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/sxql/2021-06-30/sxql-20210630-git.tgz";
-      sha256 = "011an993amy8q3gl4hyqrgnc93cgny3cv9gbp679rrmyyp8zmywr";
-      system = "sxql";
-      asd = "sxql";
-    });
-    systems = [ "sxql" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cl-package-locks" pkgs) (getAttr "cl-syntax-annot" pkgs) (getAttr "iterate" pkgs) (getAttr "split-sequence" pkgs) (getAttr "trivia" pkgs) (getAttr "trivial-types" pkgs) ];
-  };
-  sxql-composer = {
-    pname = "sxql-composer";
-    version = "20200325-git";
-    asds = [ "sxql-composer" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/sxql-composer/2020-03-25/sxql-composer-20200325-git.tgz";
-      sha256 = "1agkrj3ymskzc3c7pxbrj123d1kygjqcls145m0ap3i07q96hh1r";
-      system = "sxql-composer";
-      asd = "sxql-composer";
-    });
-    systems = [ "sxql-composer" ];
-    lispLibs = [ (getAttr "sxql" pkgs) ];
-  };
-  sxql-test = {
-    pname = "sxql-test";
-    version = "20210630-git";
-    asds = [ "sxql-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/sxql/2021-06-30/sxql-20210630-git.tgz";
-      sha256 = "011an993amy8q3gl4hyqrgnc93cgny3cv9gbp679rrmyyp8zmywr";
-      system = "sxql-test";
-      asd = "sxql-test";
-    });
-    systems = [ "sxql-test" ];
-    lispLibs = [ (getAttr "prove" pkgs) (getAttr "prove-asdf" pkgs) (getAttr "sxql" pkgs) ];
-  };
-  sycamore = {
-    pname = "sycamore";
-    version = "20211020-git";
-    asds = [ "sycamore" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/sycamore/2021-10-20/sycamore-20211020-git.tgz";
-      sha256 = "0icw7fba1ch51w24f4sinvy4xg3zc7zif0aqcjfrzxj14x108hai";
-      system = "sycamore";
-      asd = "sycamore";
-    });
-    systems = [ "sycamore" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cl-fuzz" pkgs) (getAttr "cl-ppcre" pkgs) (getAttr "lisp-unit" pkgs) ];
-  };
-  symbol-munger = {
-    pname = "symbol-munger";
-    version = "20220220-git";
-    asds = [ "symbol-munger" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/symbol-munger/2022-02-20/symbol-munger-20220220-git.tgz";
-      sha256 = "16fshnxp9212503z1vjlmx5pafv14bzpihn486x1ljakqjigfnfz";
-      system = "symbol-munger";
-      asd = "symbol-munger";
-    });
-    systems = [ "symbol-munger" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "iterate" pkgs) ];
-  };
-  symbol-munger_slash_test = {
-    pname = "symbol-munger_test";
-    version = "20220220-git";
-    asds = [ "symbol-munger" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/symbol-munger/2022-02-20/symbol-munger-20220220-git.tgz";
-      sha256 = "16fshnxp9212503z1vjlmx5pafv14bzpihn486x1ljakqjigfnfz";
-      system = "symbol-munger";
-      asd = "symbol-munger";
-    });
-    systems = [ "symbol-munger/test" ];
-    lispLibs = [ (getAttr "lisp-unit2" pkgs) (getAttr "symbol-munger" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  symbol-namespaces = {
-    pname = "symbol-namespaces";
-    version = "1.0";
-    asds = [ "symbol-namespaces" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/symbol-namespaces/2013-01-28/symbol-namespaces-1.0.tgz";
-      sha256 = "0rw4ndhg669rkpjmv5n0zh69bzar60zn3bb4vs5ijgvxyl5f7xp1";
-      system = "symbol-namespaces";
-      asd = "symbol-namespaces";
-    });
-    systems = [ "symbol-namespaces" ];
-    lispLibs = [ (getAttr "map-bind" pkgs) ];
-  };
-  synonyms = {
-    pname = "synonyms";
-    version = "20190307-hg";
-    asds = [ "synonyms" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/synonyms/2019-03-07/synonyms-20190307-hg.tgz";
-      sha256 = "11vlyal1pmr1mylnzjcffzvsnvhq0d3pnhm8dd158na9b7ingcrc";
-      system = "synonyms";
-      asd = "synonyms";
-    });
-    systems = [ "synonyms" ];
-    lispLibs = [  ];
-  };
-  sysexits = {
-    pname = "sysexits";
-    version = "20220707-git";
-    asds = [ "sysexits" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-sysexits/2022-07-07/cl-sysexits-20220707-git.tgz";
-      sha256 = "1khkj0qqvmgylnvl32sks8v3iabasbcr9sj9zl89xh3rajc67z73";
-      system = "sysexits";
-      asd = "sysexits";
-    });
-    systems = [ "sysexits" ];
-    lispLibs = [  ];
-  };
-  system-locale = {
-    pname = "system-locale";
-    version = "20200610-git";
-    asds = [ "system-locale" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/system-locale/2020-06-10/system-locale-20200610-git.tgz";
-      sha256 = "00p5c053kmgq4ks6l9mxsqz6g3bjcybvkvj0bh3r90qgpkaawm1p";
-      system = "system-locale";
-      asd = "system-locale";
-    });
-    systems = [ "system-locale" ];
-    lispLibs = [ (getAttr "documentation-utils" pkgs) ];
-  };
-  t-clack-handler-fcgi = {
-    pname = "t-clack-handler-fcgi";
-    version = "20221106-git";
-    asds = [ "t-clack-handler-fcgi" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/clack/2022-11-06/clack-20221106-git.tgz";
-      sha256 = "1vg61xfgch7lqm15kz8yr5qhqz2507qg88iqpa52mddwg91yamny";
-      system = "t-clack-handler-fcgi";
-      asd = "t-clack-handler-fcgi";
-    });
-    systems = [ "t-clack-handler-fcgi" ];
-    lispLibs = [ (getAttr "clack-test" pkgs) ];
-  };
-  t-clack-handler-hunchentoot = {
-    pname = "t-clack-handler-hunchentoot";
-    version = "20221106-git";
-    asds = [ "t-clack-handler-hunchentoot" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/clack/2022-11-06/clack-20221106-git.tgz";
-      sha256 = "1vg61xfgch7lqm15kz8yr5qhqz2507qg88iqpa52mddwg91yamny";
-      system = "t-clack-handler-hunchentoot";
-      asd = "t-clack-handler-hunchentoot";
-    });
-    systems = [ "t-clack-handler-hunchentoot" ];
-    lispLibs = [ (getAttr "clack-handler-hunchentoot" pkgs) (getAttr "clack-test" pkgs) ];
-  };
-  t-clack-handler-toot = {
-    pname = "t-clack-handler-toot";
-    version = "20221106-git";
-    asds = [ "t-clack-handler-toot" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/clack/2022-11-06/clack-20221106-git.tgz";
-      sha256 = "1vg61xfgch7lqm15kz8yr5qhqz2507qg88iqpa52mddwg91yamny";
-      system = "t-clack-handler-toot";
-      asd = "t-clack-handler-toot";
-    });
-    systems = [ "t-clack-handler-toot" ];
-    lispLibs = [ (getAttr "clack-handler-toot" pkgs) (getAttr "clack-test" pkgs) ];
-  };
-  t-clack-handler-wookie = {
-    pname = "t-clack-handler-wookie";
-    version = "20221106-git";
-    asds = [ "t-clack-handler-wookie" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/clack/2022-11-06/clack-20221106-git.tgz";
-      sha256 = "1vg61xfgch7lqm15kz8yr5qhqz2507qg88iqpa52mddwg91yamny";
-      system = "t-clack-handler-wookie";
-      asd = "t-clack-handler-wookie";
-    });
-    systems = [ "t-clack-handler-wookie" ];
-    lispLibs = [ (getAttr "clack-test" pkgs) ];
-  };
-  t-lack = {
-    pname = "t-lack";
-    version = "20221106-git";
-    asds = [ "t-lack" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/lack/2022-11-06/lack-20221106-git.tgz";
-      sha256 = "0yx5z4xr1pcd2g36f1jhyyaisr2p1ys1a9d7hxyigj31lq1dl9jw";
-      system = "t-lack";
-      asd = "t-lack";
-    });
-    systems = [ "t-lack" ];
-    lispLibs = [ (getAttr "clack" pkgs) (getAttr "lack" pkgs) (getAttr "prove" pkgs) (getAttr "prove-asdf" pkgs) ];
-  };
-  t-lack-component = {
-    pname = "t-lack-component";
-    version = "20221106-git";
-    asds = [ "t-lack-component" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/lack/2022-11-06/lack-20221106-git.tgz";
-      sha256 = "0yx5z4xr1pcd2g36f1jhyyaisr2p1ys1a9d7hxyigj31lq1dl9jw";
-      system = "t-lack-component";
-      asd = "t-lack-component";
-    });
-    systems = [ "t-lack-component" ];
-    lispLibs = [ (getAttr "lack-component" pkgs) (getAttr "lack-test" pkgs) (getAttr "prove" pkgs) (getAttr "prove-asdf" pkgs) ];
-  };
-  t-lack-middleware-accesslog = {
-    pname = "t-lack-middleware-accesslog";
-    version = "20221106-git";
-    asds = [ "t-lack-middleware-accesslog" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/lack/2022-11-06/lack-20221106-git.tgz";
-      sha256 = "0yx5z4xr1pcd2g36f1jhyyaisr2p1ys1a9d7hxyigj31lq1dl9jw";
-      system = "t-lack-middleware-accesslog";
-      asd = "t-lack-middleware-accesslog";
-    });
-    systems = [ "t-lack-middleware-accesslog" ];
-    lispLibs = [ (getAttr "lack" pkgs) (getAttr "lack-test" pkgs) (getAttr "prove" pkgs) (getAttr "prove-asdf" pkgs) (getAttr "split-sequence" pkgs) ];
-  };
-  t-lack-middleware-auth-basic = {
-    pname = "t-lack-middleware-auth-basic";
-    version = "20221106-git";
-    asds = [ "t-lack-middleware-auth-basic" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/lack/2022-11-06/lack-20221106-git.tgz";
-      sha256 = "0yx5z4xr1pcd2g36f1jhyyaisr2p1ys1a9d7hxyigj31lq1dl9jw";
-      system = "t-lack-middleware-auth-basic";
-      asd = "t-lack-middleware-auth-basic";
-    });
-    systems = [ "t-lack-middleware-auth-basic" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cl-base64" pkgs) (getAttr "lack" pkgs) (getAttr "lack-middleware-auth-basic" pkgs) (getAttr "lack-test" pkgs) (getAttr "prove" pkgs) (getAttr "prove-asdf" pkgs) ];
-  };
-  t-lack-middleware-backtrace = {
-    pname = "t-lack-middleware-backtrace";
-    version = "20221106-git";
-    asds = [ "t-lack-middleware-backtrace" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/lack/2022-11-06/lack-20221106-git.tgz";
-      sha256 = "0yx5z4xr1pcd2g36f1jhyyaisr2p1ys1a9d7hxyigj31lq1dl9jw";
-      system = "t-lack-middleware-backtrace";
-      asd = "t-lack-middleware-backtrace";
-    });
-    systems = [ "t-lack-middleware-backtrace" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "lack" pkgs) (getAttr "lack-test" pkgs) (getAttr "prove" pkgs) (getAttr "prove-asdf" pkgs) ];
-  };
-  t-lack-middleware-csrf = {
-    pname = "t-lack-middleware-csrf";
-    version = "20221106-git";
-    asds = [ "t-lack-middleware-csrf" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/lack/2022-11-06/lack-20221106-git.tgz";
-      sha256 = "0yx5z4xr1pcd2g36f1jhyyaisr2p1ys1a9d7hxyigj31lq1dl9jw";
-      system = "t-lack-middleware-csrf";
-      asd = "t-lack-middleware-csrf";
-    });
-    systems = [ "t-lack-middleware-csrf" ];
-    lispLibs = [ (getAttr "cl-ppcre" pkgs) (getAttr "lack" pkgs) (getAttr "lack-middleware-csrf" pkgs) (getAttr "lack-request" pkgs) (getAttr "lack-test" pkgs) (getAttr "prove" pkgs) (getAttr "prove-asdf" pkgs) ];
-  };
-  t-lack-middleware-mount = {
-    pname = "t-lack-middleware-mount";
-    version = "20221106-git";
-    asds = [ "t-lack-middleware-mount" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/lack/2022-11-06/lack-20221106-git.tgz";
-      sha256 = "0yx5z4xr1pcd2g36f1jhyyaisr2p1ys1a9d7hxyigj31lq1dl9jw";
-      system = "t-lack-middleware-mount";
-      asd = "t-lack-middleware-mount";
-    });
-    systems = [ "t-lack-middleware-mount" ];
-    lispLibs = [ (getAttr "lack" pkgs) (getAttr "lack-component" pkgs) (getAttr "lack-middleware-mount" pkgs) (getAttr "lack-test" pkgs) (getAttr "prove" pkgs) (getAttr "prove-asdf" pkgs) ];
-  };
-  t-lack-middleware-session = {
-    pname = "t-lack-middleware-session";
-    version = "20221106-git";
-    asds = [ "t-lack-middleware-session" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/lack/2022-11-06/lack-20221106-git.tgz";
-      sha256 = "0yx5z4xr1pcd2g36f1jhyyaisr2p1ys1a9d7hxyigj31lq1dl9jw";
-      system = "t-lack-middleware-session";
-      asd = "t-lack-middleware-session";
-    });
-    systems = [ "t-lack-middleware-session" ];
-    lispLibs = [ (getAttr "cl-cookie" pkgs) (getAttr "lack" pkgs) (getAttr "lack-middleware-session" pkgs) (getAttr "lack-test" pkgs) (getAttr "prove" pkgs) (getAttr "prove-asdf" pkgs) ];
-  };
-  t-lack-middleware-static = {
-    pname = "t-lack-middleware-static";
-    version = "20221106-git";
-    asds = [ "t-lack-middleware-static" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/lack/2022-11-06/lack-20221106-git.tgz";
-      sha256 = "0yx5z4xr1pcd2g36f1jhyyaisr2p1ys1a9d7hxyigj31lq1dl9jw";
-      system = "t-lack-middleware-static";
-      asd = "t-lack-middleware-static";
-    });
-    systems = [ "t-lack-middleware-static" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "lack" pkgs) (getAttr "lack-test" pkgs) (getAttr "prove" pkgs) (getAttr "prove-asdf" pkgs) ];
-  };
-  t-lack-request = {
-    pname = "t-lack-request";
-    version = "20221106-git";
-    asds = [ "t-lack-request" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/lack/2022-11-06/lack-20221106-git.tgz";
-      sha256 = "0yx5z4xr1pcd2g36f1jhyyaisr2p1ys1a9d7hxyigj31lq1dl9jw";
-      system = "t-lack-request";
-      asd = "t-lack-request";
-    });
-    systems = [ "t-lack-request" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "clack-test" pkgs) (getAttr "dexador" pkgs) (getAttr "flexi-streams" pkgs) (getAttr "hunchentoot" pkgs) (getAttr "lack-request" pkgs) (getAttr "prove" pkgs) (getAttr "prove-asdf" pkgs) ];
-  };
-  t-lack-session-store-dbi = {
-    pname = "t-lack-session-store-dbi";
-    version = "20221106-git";
-    asds = [ "t-lack-session-store-dbi" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/lack/2022-11-06/lack-20221106-git.tgz";
-      sha256 = "0yx5z4xr1pcd2g36f1jhyyaisr2p1ys1a9d7hxyigj31lq1dl9jw";
-      system = "t-lack-session-store-dbi";
-      asd = "t-lack-session-store-dbi";
-    });
-    systems = [ "t-lack-session-store-dbi" ];
-    lispLibs = [ (getAttr "dbi" pkgs) (getAttr "sqlite" pkgs) (getAttr "lack" pkgs) (getAttr "lack-session-store-dbi" pkgs) (getAttr "lack-test" pkgs) (getAttr "prove" pkgs) (getAttr "prove-asdf" pkgs) ];
-  };
-  t-lack-session-store-redis = {
-    pname = "t-lack-session-store-redis";
-    version = "20221106-git";
-    asds = [ "t-lack-session-store-redis" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/lack/2022-11-06/lack-20221106-git.tgz";
-      sha256 = "0yx5z4xr1pcd2g36f1jhyyaisr2p1ys1a9d7hxyigj31lq1dl9jw";
-      system = "t-lack-session-store-redis";
-      asd = "t-lack-session-store-redis";
-    });
-    systems = [ "t-lack-session-store-redis" ];
-    lispLibs = [ (getAttr "lack" pkgs) (getAttr "lack-session-store-redis" pkgs) (getAttr "lack-test" pkgs) (getAttr "prove" pkgs) (getAttr "prove-asdf" pkgs) ];
-  };
-  t-lack-util = {
-    pname = "t-lack-util";
-    version = "20221106-git";
-    asds = [ "t-lack-util" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/lack/2022-11-06/lack-20221106-git.tgz";
-      sha256 = "0yx5z4xr1pcd2g36f1jhyyaisr2p1ys1a9d7hxyigj31lq1dl9jw";
-      system = "t-lack-util";
-      asd = "t-lack-util";
-    });
-    systems = [ "t-lack-util" ];
-    lispLibs = [ (getAttr "lack-test" pkgs) (getAttr "lack-util" pkgs) (getAttr "prove" pkgs) (getAttr "prove-asdf" pkgs) ];
-  };
-  ta2 = {
-    pname = "ta2";
-    version = "master-1a957fb2-git";
-    asds = [ "ta2" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/gendl/2022-07-07/gendl-master-1a957fb2-git.tgz";
-      sha256 = "0j47qnvvfx3vnh3pll6rkya5m142hi93bd5jk65rv43vbc94sv30";
-      system = "ta2";
-      asd = "ta2";
-    });
-    systems = [ "ta2" ];
-    lispLibs = [ (getAttr "gwl-graphics" pkgs) ];
-  };
-  tagger = {
-    pname = "tagger";
-    version = "20200715-git";
-    asds = [ "tagger" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/tagger/2020-07-15/tagger-20200715-git.tgz";
-      sha256 = "1mxkr5hx8p4rxc7vajgrpl49zh018wyspvww5fg50164if0n7j2q";
-      system = "tagger";
-      asd = "tagger";
-    });
-    systems = [ "tagger" ];
-    lispLibs = [ (getAttr "closer-mop" pkgs) ];
-  };
-  taglib = {
-    pname = "taglib";
-    version = "20210411-git";
-    asds = [ "taglib" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/taglib/2021-04-11/taglib-20210411-git.tgz";
-      sha256 = "13291kb95hwb2nbkjscjb2abn5l267cjwspaqsmr3bsdvvf0033b";
-      system = "taglib";
-      asd = "taglib";
-    });
-    systems = [ "taglib" ];
-    lispLibs = [ (getAttr "bordeaux-threads" pkgs) (getAttr "flexi-streams" pkgs) (getAttr "optima" pkgs) (getAttr "optima_dot_ppcre" pkgs) ];
-  };
-  taglib-tests = {
-    pname = "taglib-tests";
-    version = "20210411-git";
-    asds = [ "taglib-tests" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/taglib/2021-04-11/taglib-20210411-git.tgz";
-      sha256 = "13291kb95hwb2nbkjscjb2abn5l267cjwspaqsmr3bsdvvf0033b";
-      system = "taglib-tests";
-      asd = "taglib-tests";
-    });
-    systems = [ "taglib-tests" ];
-    lispLibs = [ (getAttr "chanl" pkgs) (getAttr "cl-fad" pkgs) (getAttr "taglib" pkgs) ];
-  };
-  tailrec = {
-    pname = "tailrec";
-    version = "20210807-git";
-    asds = [ "tailrec" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/tailrec/2021-08-07/tailrec-20210807-git.tgz";
-      sha256 = "1h8m2npdzd2cpnl75pvv4yvvfwxa7kl6qvalc9s0y4yws0kaih3i";
-      system = "tailrec";
-      asd = "tailrec";
-    });
-    systems = [ "tailrec" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "trivial-macroexpand-all" pkgs) (getAttr "trivial-with-current-source-form" pkgs) ];
-  };
-  talcl = {
-    pname = "talcl";
-    version = "20180228-git";
-    asds = [ "talcl" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/talcl/2018-02-28/talcl-20180228-git.tgz";
-      sha256 = "18pm3vz82dwcckhp4lkwjv8431hkdj3ghxb4v5qdjsyw2jm56v1p";
-      system = "talcl";
-      asd = "talcl";
-    });
-    systems = [ "talcl" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "buildnode" pkgs) (getAttr "cl-ppcre" pkgs) (getAttr "cxml" pkgs) (getAttr "iterate" pkgs) (getAttr "symbol-munger" pkgs) ];
-  };
-  talcl-examples = {
-    pname = "talcl-examples";
-    version = "20180228-git";
-    asds = [ "talcl-examples" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/talcl/2018-02-28/talcl-20180228-git.tgz";
-      sha256 = "18pm3vz82dwcckhp4lkwjv8431hkdj3ghxb4v5qdjsyw2jm56v1p";
-      system = "talcl-examples";
-      asd = "talcl";
-    });
-    systems = [ "talcl-examples" ];
-    lispLibs = [ (getAttr "buildnode-xhtml" pkgs) (getAttr "talcl" pkgs) ];
-  };
-  talcl-speed-tests = {
-    pname = "talcl-speed-tests";
-    version = "20180228-git";
-    asds = [ "talcl-speed-tests" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/talcl/2018-02-28/talcl-20180228-git.tgz";
-      sha256 = "18pm3vz82dwcckhp4lkwjv8431hkdj3ghxb4v5qdjsyw2jm56v1p";
-      system = "talcl-speed-tests";
-      asd = "talcl";
-    });
-    systems = [ "talcl-speed-tests" ];
-    lispLibs = [ (getAttr "buildnode-xhtml" pkgs) (getAttr "lisp-unit2" pkgs) (getAttr "talcl" pkgs) (getAttr "talcl-examples" pkgs) ];
-  };
-  talcl-test = {
-    pname = "talcl-test";
-    version = "20180228-git";
-    asds = [ "talcl-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/talcl/2018-02-28/talcl-20180228-git.tgz";
-      sha256 = "18pm3vz82dwcckhp4lkwjv8431hkdj3ghxb4v5qdjsyw2jm56v1p";
-      system = "talcl-test";
-      asd = "talcl";
-    });
-    systems = [ "talcl-test" ];
-    lispLibs = [ (getAttr "buildnode-xhtml" pkgs) (getAttr "lisp-unit2" pkgs) (getAttr "talcl" pkgs) ];
-  };
-  tap-unit-test = {
-    pname = "tap-unit-test";
-    version = "20171227-git";
-    asds = [ "tap-unit-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/tap-unit-test/2017-12-27/tap-unit-test-20171227-git.tgz";
-      sha256 = "1fzsnpng7y4sghasl29sjicbs4v6m5mgfj8wf2izhhcn1hbhr694";
-      system = "tap-unit-test";
-      asd = "tap-unit-test";
-    });
-    systems = [ "tap-unit-test" ];
-    lispLibs = [  ];
-  };
-  tar = {
-    pname = "tar";
-    version = "20220220-git";
-    asds = [ "tar" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-tar/2022-02-20/cl-tar-20220220-git.tgz";
-      sha256 = "0wp23cs3i6a89dibifiz6559la5nk58d1n17xvbxq4nrl8cqsllf";
-      system = "tar";
-      asd = "tar";
-    });
-    systems = [ "tar" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "babel" pkgs) (getAttr "tar-file" pkgs) (getAttr "_40ants-doc" pkgs) (getAttr "local-time" pkgs) (getAttr "split-sequence" pkgs) (getAttr "uiop" pkgs) ];
-  };
-  tar-file = {
-    pname = "tar-file";
-    version = "20220220-git";
-    asds = [ "tar-file" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-tar-file/2022-02-20/cl-tar-file-20220220-git.tgz";
-      sha256 = "0i8j05fkgdqy4c4pqj0c68sh4s3klpx9kc5wp73qwzrl3xqd2svy";
-      system = "tar-file";
-      asd = "tar-file";
-    });
-    systems = [ "tar-file" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "babel" pkgs) (getAttr "chipz" pkgs) (getAttr "_40ants-doc" pkgs) (getAttr "flexi-streams" pkgs) (getAttr "salza2" pkgs) (getAttr "trivial-gray-streams" pkgs) (getAttr "uiop" pkgs) ];
-  };
-  tar-file_slash_test = {
-    pname = "tar-file_test";
-    version = "20220220-git";
-    asds = [ "tar-file" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-tar-file/2022-02-20/cl-tar-file-20220220-git.tgz";
-      sha256 = "0i8j05fkgdqy4c4pqj0c68sh4s3klpx9kc5wp73qwzrl3xqd2svy";
-      system = "tar-file";
-      asd = "tar-file";
-    });
-    systems = [ "tar-file/test" ];
-    lispLibs = [ (getAttr "tar-file" pkgs) (getAttr "parachute" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  tar_slash_common-extract = {
-    pname = "tar_common-extract";
-    version = "20220220-git";
-    asds = [ "tar" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-tar/2022-02-20/cl-tar-20220220-git.tgz";
-      sha256 = "0wp23cs3i6a89dibifiz6559la5nk58d1n17xvbxq4nrl8cqsllf";
-      system = "tar";
-      asd = "tar";
-    });
-    systems = [ "tar/common-extract" ];
-    lispLibs = [ (getAttr "tar" pkgs) (getAttr "split-sequence" pkgs) (getAttr "uiop" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  tar_slash_create = {
-    pname = "tar_create";
-    version = "20220220-git";
-    asds = [ "tar" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-tar/2022-02-20/cl-tar-20220220-git.tgz";
-      sha256 = "0wp23cs3i6a89dibifiz6559la5nk58d1n17xvbxq4nrl8cqsllf";
-      system = "tar";
-      asd = "tar";
-    });
-    systems = [ "tar/create" ];
-    lispLibs = [ (getAttr "tar" pkgs) (getAttr "local-time" pkgs) (getAttr "osicat" pkgs) (getAttr "uiop" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  tar_slash_create-test = {
-    pname = "tar_create-test";
-    version = "20220220-git";
-    asds = [ "tar" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-tar/2022-02-20/cl-tar-20220220-git.tgz";
-      sha256 = "0wp23cs3i6a89dibifiz6559la5nk58d1n17xvbxq4nrl8cqsllf";
-      system = "tar";
-      asd = "tar";
-    });
-    systems = [ "tar/create-test" ];
-    lispLibs = [ (getAttr "tar" pkgs) (getAttr "local-time" pkgs) (getAttr "osicat" pkgs) (getAttr "parachute" pkgs) (getAttr "uiop" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  tar_slash_docs = {
-    pname = "tar_docs";
-    version = "20220220-git";
-    asds = [ "tar" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-tar/2022-02-20/cl-tar-20220220-git.tgz";
-      sha256 = "0wp23cs3i6a89dibifiz6559la5nk58d1n17xvbxq4nrl8cqsllf";
-      system = "tar";
-      asd = "tar";
-    });
-    systems = [ "tar/docs" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "tar" pkgs) (getAttr "_40ants-doc" pkgs) (getAttr "local-time" pkgs) (getAttr "osicat" pkgs) (getAttr "split-sequence" pkgs) (getAttr "uiop" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  tar_slash_extract = {
-    pname = "tar_extract";
-    version = "20220220-git";
-    asds = [ "tar" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-tar/2022-02-20/cl-tar-20220220-git.tgz";
-      sha256 = "0wp23cs3i6a89dibifiz6559la5nk58d1n17xvbxq4nrl8cqsllf";
-      system = "tar";
-      asd = "tar";
-    });
-    systems = [ "tar/extract" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "tar" pkgs) (getAttr "local-time" pkgs) (getAttr "osicat" pkgs) (getAttr "split-sequence" pkgs) (getAttr "uiop" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  tar_slash_extract-test = {
-    pname = "tar_extract-test";
-    version = "20220220-git";
-    asds = [ "tar" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-tar/2022-02-20/cl-tar-20220220-git.tgz";
-      sha256 = "0wp23cs3i6a89dibifiz6559la5nk58d1n17xvbxq4nrl8cqsllf";
-      system = "tar";
-      asd = "tar";
-    });
-    systems = [ "tar/extract-test" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "tar" pkgs) (getAttr "local-time" pkgs) (getAttr "osicat" pkgs) (getAttr "parachute" pkgs) (getAttr "split-sequence" pkgs) (getAttr "uiop" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  tar_slash_simple-extract = {
-    pname = "tar_simple-extract";
-    version = "20220220-git";
-    asds = [ "tar" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-tar/2022-02-20/cl-tar-20220220-git.tgz";
-      sha256 = "0wp23cs3i6a89dibifiz6559la5nk58d1n17xvbxq4nrl8cqsllf";
-      system = "tar";
-      asd = "tar";
-    });
-    systems = [ "tar/simple-extract" ];
-    lispLibs = [ (getAttr "tar" pkgs) (getAttr "local-time" pkgs) (getAttr "split-sequence" pkgs) (getAttr "uiop" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  tar_slash_simple-extract-test = {
-    pname = "tar_simple-extract-test";
-    version = "20220220-git";
-    asds = [ "tar" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-tar/2022-02-20/cl-tar-20220220-git.tgz";
-      sha256 = "0wp23cs3i6a89dibifiz6559la5nk58d1n17xvbxq4nrl8cqsllf";
-      system = "tar";
-      asd = "tar";
-    });
-    systems = [ "tar/simple-extract-test" ];
-    lispLibs = [ (getAttr "tar" pkgs) (getAttr "local-time" pkgs) (getAttr "osicat" pkgs) (getAttr "parachute" pkgs) (getAttr "split-sequence" pkgs) (getAttr "uiop" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  tar_slash_test = {
-    pname = "tar_test";
-    version = "20220220-git";
-    asds = [ "tar" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-tar/2022-02-20/cl-tar-20220220-git.tgz";
-      sha256 = "0wp23cs3i6a89dibifiz6559la5nk58d1n17xvbxq4nrl8cqsllf";
-      system = "tar";
-      asd = "tar";
-    });
-    systems = [ "tar/test" ];
-    lispLibs = [ (getAttr "tar" pkgs) (getAttr "parachute" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  targa = {
-    pname = "targa";
-    version = "20181018-git";
-    asds = [ "targa" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/targa/2018-10-18/targa-20181018-git.tgz";
-      sha256 = "0fslb2alp4pfmp8md2q89xh8n43r8awwf343wfvkywwqdnls2zws";
-      system = "targa";
-      asd = "targa";
-    });
-    systems = [ "targa" ];
-    lispLibs = [  ];
-  };
-  tasty = {
-    pname = "tasty";
-    version = "master-1a957fb2-git";
-    asds = [ "tasty" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/gendl/2022-07-07/gendl-master-1a957fb2-git.tgz";
-      sha256 = "0j47qnvvfx3vnh3pll6rkya5m142hi93bd5jk65rv43vbc94sv30";
-      system = "tasty";
-      asd = "tasty";
-    });
-    systems = [ "tasty" ];
-    lispLibs = [ (getAttr "gwl-graphics" pkgs) (getAttr "tree" pkgs) ];
-  };
-  tclcs-code = {
-    pname = "tclcs-code";
-    version = "20210124-git";
-    asds = [ "tclcs-code" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/tclcs-code/2021-01-24/tclcs-code-20210124-git.tgz";
-      sha256 = "0p0g8shy284sj9ncq27zn8yj7xsrdcg2aiy2q783l6sl2ip6nfxa";
-      system = "tclcs-code";
-      asd = "tclcs-code";
-    });
-    systems = [ "tclcs-code" ];
-    lispLibs = [ (getAttr "trivial-custom-debugger" pkgs) ];
-  };
-  tcod = {
-    pname = "tcod";
-    version = "20201220-git";
-    asds = [ "tcod" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-tcod/2020-12-20/cl-tcod-20201220-git.tgz";
-      sha256 = "145h0dhxm1idblcld456cv7k00vi6p0zyn5rxkky5y4gk85ws8l5";
-      system = "tcod";
-      asd = "tcod";
-    });
-    systems = [ "tcod" ];
-    lispLibs = [ (getAttr "cffi" pkgs) (getAttr "cffi-libffi" pkgs) (getAttr "defstar" pkgs) ];
-  };
-  teddy = {
-    pname = "teddy";
-    version = "20211020-git";
-    asds = [ "teddy" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/teddy/2021-10-20/teddy-20211020-git.tgz";
-      sha256 = "108cdxckzpdixi975rr2q1kkga6jngwj7j3nhfss9pzqcsf9w9ks";
-      system = "teddy";
-      asd = "teddy";
-    });
-    systems = [ "teddy" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "asdf-finalizers" pkgs) (getAttr "list-of" pkgs) (getAttr "cl-ascii-table" pkgs) (getAttr "eazy-gnuplot" pkgs) (getAttr "hu_dot_dwim_dot_def" pkgs) (getAttr "lhstats" pkgs) (getAttr "rutils" pkgs) (getAttr "simplified-types" pkgs) ];
-  };
-  teepeedee2 = {
-    pname = "teepeedee2";
-    version = "20200218-git";
-    asds = [ "teepeedee2" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/teepeedee2/2020-02-18/teepeedee2-20200218-git.tgz";
-      sha256 = "1dz5rf5rfcbgab99nprr1pv2x44f74jgcpgxr575z021k4pby5s5";
-      system = "teepeedee2";
-      asd = "teepeedee2";
-    });
-    systems = [ "teepeedee2" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cffi" pkgs) (getAttr "cl-cont" pkgs) (getAttr "cl-fad" pkgs) (getAttr "cl-irregsexp" pkgs) (getAttr "iterate" pkgs) (getAttr "parenscript" pkgs) (getAttr "trivial-backtrace" pkgs) (getAttr "trivial-garbage" pkgs) ];
-  };
-  teepeedee2-test = {
-    pname = "teepeedee2-test";
-    version = "20200218-git";
-    asds = [ "teepeedee2-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/teepeedee2/2020-02-18/teepeedee2-20200218-git.tgz";
-      sha256 = "1dz5rf5rfcbgab99nprr1pv2x44f74jgcpgxr575z021k4pby5s5";
-      system = "teepeedee2-test";
-      asd = "teepeedee2-test";
-    });
-    systems = [ "teepeedee2-test" ];
-    lispLibs = [ (getAttr "fiveam" pkgs) (getAttr "teepeedee2" pkgs) ];
-  };
-  telnetlib = {
-    pname = "telnetlib";
-    version = "20141217-git";
-    asds = [ "telnetlib" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/telnetlib/2014-12-17/telnetlib-20141217-git.tgz";
-      sha256 = "1gdf6i352qkmp27nqbv6qfi7sqn5wjzdaffh6ls1y5jznqh3nb0h";
-      system = "telnetlib";
-      asd = "telnetlib";
-    });
-    systems = [ "telnetlib" ];
-    lispLibs = [ (getAttr "cl-ppcre" pkgs) ];
-  };
-  template = {
-    pname = "template";
-    version = "20190307-hg";
-    asds = [ "template" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/template/2019-03-07/template-20190307-hg.tgz";
-      sha256 = "10sibwhisablzv03844bhs5qifqnysz2zw1gmnzcx4pszq16c1k1";
-      system = "template";
-      asd = "template";
-    });
-    systems = [ "template" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "parameterized-function" pkgs) ];
-  };
-  template-function = {
-    pname = "template-function";
-    version = "v0.0.1-git";
-    asds = [ "template-function" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/template-function/2017-11-30/template-function-v0.0.1-git.tgz";
-      sha256 = "1nq782cdi9vr3hgqqyzvvng2sbyc09biggwq4zp7k1vmqnm6qdaf";
-      system = "template-function";
-      asd = "template-function";
-    });
-    systems = [ "template-function" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "introspect-environment" pkgs) (getAttr "specialization-store" pkgs) ];
-  };
-  template-function-tests = {
-    pname = "template-function-tests";
-    version = "v0.0.1-git";
-    asds = [ "template-function-tests" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/template-function/2017-11-30/template-function-v0.0.1-git.tgz";
-      sha256 = "1nq782cdi9vr3hgqqyzvvng2sbyc09biggwq4zp7k1vmqnm6qdaf";
-      system = "template-function-tests";
-      asd = "template-function-tests";
-    });
-    systems = [ "template-function-tests" ];
-    lispLibs = [ (getAttr "fiveam" pkgs) (getAttr "template-function" pkgs) ];
-  };
-  temporal-functions = {
-    pname = "temporal-functions";
-    version = "20171019-git";
-    asds = [ "temporal-functions" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/temporal-functions/2017-10-19/temporal-functions-20171019-git.tgz";
-      sha256 = "03cbgw949g68n72nqp0nmjq9nx0kfz5zs6kpk0pwchy3i8bwf22j";
-      system = "temporal-functions";
-      asd = "temporal-functions";
-    });
-    systems = [ "temporal-functions" ];
-    lispLibs = [ (getAttr "fn" pkgs) ];
-  };
-  temporary-file = {
-    pname = "temporary-file";
-    version = "20150608-git";
-    asds = [ "temporary-file" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/temporary-file/2015-06-08/temporary-file-20150608-git.tgz";
-      sha256 = "0m38lncj6bmj7gwq8vp7l0gwzmk7pfasl4samzgl2fah8hzb064a";
-      system = "temporary-file";
-      asd = "temporary-file";
-    });
-    systems = [ "temporary-file" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "bordeaux-threads" pkgs) (getAttr "cl-fad" pkgs) (getAttr "cl-ppcre" pkgs) (getAttr "unit-test" pkgs) ];
-  };
-  ten = {
-    pname = "ten";
-    version = "20220220-git";
-    asds = [ "ten" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/ten/2022-02-20/ten-20220220-git.tgz";
-      sha256 = "0fsd3nlqffqgd2qxh320n1lv0812byiyk0wg3ssg46vvwqwpl98s";
-      system = "ten";
-      asd = "ten";
-    });
-    systems = [ "ten" ];
-    lispLibs = [ (getAttr "access" pkgs) (getAttr "cl-who" pkgs) (getAttr "esrap" pkgs) (getAttr "split-sequence" pkgs) ];
-  };
-  ten_dot_examples = {
-    pname = "ten.examples";
-    version = "20220220-git";
-    asds = [ "ten.examples" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/ten/2022-02-20/ten-20220220-git.tgz";
-      sha256 = "0fsd3nlqffqgd2qxh320n1lv0812byiyk0wg3ssg46vvwqwpl98s";
-      system = "ten.examples";
-      asd = "ten.examples";
-    });
-    systems = [ "ten.examples" ];
-    lispLibs = [ (getAttr "ten" pkgs) ];
-  };
-  ten_dot_i18n_dot_cl-locale = {
-    pname = "ten.i18n.cl-locale";
-    version = "20220220-git";
-    asds = [ "ten.i18n.cl-locale" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/ten/2022-02-20/ten-20220220-git.tgz";
-      sha256 = "0fsd3nlqffqgd2qxh320n1lv0812byiyk0wg3ssg46vvwqwpl98s";
-      system = "ten.i18n.cl-locale";
-      asd = "ten.i18n.cl-locale";
-    });
-    systems = [ "ten.i18n.cl-locale" ];
-    lispLibs = [ (getAttr "cl-locale" pkgs) (getAttr "ten" pkgs) ];
-  };
-  ten_dot_i18n_dot_gettext = {
-    pname = "ten.i18n.gettext";
-    version = "20220220-git";
-    asds = [ "ten.i18n.gettext" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/ten/2022-02-20/ten-20220220-git.tgz";
-      sha256 = "0fsd3nlqffqgd2qxh320n1lv0812byiyk0wg3ssg46vvwqwpl98s";
-      system = "ten.i18n.gettext";
-      asd = "ten.i18n.gettext";
-    });
-    systems = [ "ten.i18n.gettext" ];
-    lispLibs = [ (getAttr "gettext" pkgs) (getAttr "ten" pkgs) ];
-  };
-  ten_dot_tests = {
-    pname = "ten.tests";
-    version = "20220220-git";
-    asds = [ "ten.tests" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/ten/2022-02-20/ten-20220220-git.tgz";
-      sha256 = "0fsd3nlqffqgd2qxh320n1lv0812byiyk0wg3ssg46vvwqwpl98s";
-      system = "ten.tests";
-      asd = "ten.tests";
-    });
-    systems = [ "ten.tests" ];
-    lispLibs = [ (getAttr "fiveam" pkgs) (getAttr "ten" pkgs) (getAttr "ten_dot_examples" pkgs) ];
-  };
-  terminfo = {
-    pname = "terminfo";
-    version = "20210124-git";
-    asds = [ "terminfo" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/terminfo/2021-01-24/terminfo-20210124-git.tgz";
-      sha256 = "1nmin9rr6f75xdhxysba66xa1dh62fh27w9ad1cvmj0062armf6b";
-      system = "terminfo";
-      asd = "terminfo";
-    });
-    systems = [ "terminfo" ];
-    lispLibs = [  ];
-  };
-  terrable = {
-    pname = "terrable";
-    version = "20190710-git";
-    asds = [ "terrable" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/terrable/2019-07-10/terrable-20190710-git.tgz";
-      sha256 = "0pnqflgz410zydc1ivwnd8hcl24bgr7x12yjzr7g4lq3ibc8y97b";
-      system = "terrable";
-      asd = "terrable";
-    });
-    systems = [ "terrable" ];
-    lispLibs = [ (getAttr "documentation-utils" pkgs) (getAttr "fast-io" pkgs) (getAttr "ieee-floats" pkgs) (getAttr "static-vectors" pkgs) (getAttr "trivial-garbage" pkgs) ];
-  };
-  tesseract-capi = {
-    pname = "tesseract-capi";
-    version = "20201220-git";
-    asds = [ "tesseract-capi" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/tesseract-capi/2020-12-20/tesseract-capi-20201220-git.tgz";
-      sha256 = "1g8afgzbvfk80gi05nbwp9cmmrsqm5knhqi04v1cx556vrbp6ks1";
-      system = "tesseract-capi";
-      asd = "tesseract-capi";
-    });
-    systems = [ "tesseract-capi" ];
-    lispLibs = [ (getAttr "cffi" pkgs) (getAttr "cl-ppcre" pkgs) ];
-  };
-  test-gadgets = {
-    pname = "test-gadgets";
-    version = "20220220-git";
-    asds = [ "test-gadgets" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/gadgets/2022-02-20/gadgets-20220220-git.tgz";
-      sha256 = "0g06wb3dciri2q93x2dcf58x5r8gq2kb86fgd2w4pr5r1wxwd1sm";
-      system = "test-gadgets";
-      asd = "test-gadgets";
-    });
-    systems = [ "test-gadgets" ];
-    lispLibs = [ (getAttr "gadgets" pkgs) (getAttr "prove" pkgs) ];
-  };
-  test-paren6 = {
-    pname = "test-paren6";
-    version = "20220331-git";
-    asds = [ "test-paren6" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/paren6/2022-03-31/paren6-20220331-git.tgz";
-      sha256 = "0m7z7zkc1vrwmp68f3yx0mdsb0j45dmw3iddnbvf94dpv8aywwpx";
-      system = "test-paren6";
-      asd = "test-paren6";
-    });
-    systems = [ "test-paren6" ];
-    lispLibs = [ (getAttr "external-program" pkgs) (getAttr "paren6" pkgs) (getAttr "parenscript" pkgs) ];
-  };
-  test-serial-system = {
-    pname = "test-serial-system";
-    version = "20170403-git";
-    asds = [ "test-serial-system" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/asdf-dependency-grovel/2017-04-03/asdf-dependency-grovel-20170403-git.tgz";
-      sha256 = "1y4kdqsda4ira4r9dws6kxzzv6mg45q3lkmb2c9mg9q7ksc5glif";
-      system = "test-serial-system";
-      asd = "test-serial-system";
-    });
-    systems = [ "test-serial-system" ];
-    lispLibs = [  ];
-  };
-  test-utils = {
-    pname = "test-utils";
-    version = "20200610-git";
-    asds = [ "test-utils" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/test-utils/2020-06-10/test-utils-20200610-git.tgz";
-      sha256 = "036a8wvs37lnsf9dy3c810qk54963v7hnxx0zas25b50ikcmiqm5";
-      system = "test-utils";
-      asd = "test-utils";
-    });
-    systems = [ "test-utils" ];
-    lispLibs = [ (getAttr "agnostic-lizard" pkgs) (getAttr "alexandria" pkgs) (getAttr "cl-quickcheck" pkgs) (getAttr "prove" pkgs) ];
-  };
-  test_dot_eager-future2 = {
-    pname = "test.eager-future2";
-    version = "20191130-git";
-    asds = [ "test.eager-future2" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/eager-future2/2019-11-30/eager-future2-20191130-git.tgz";
-      sha256 = "1qs1bv3m0ki8l5czhsflxcryh22r9d9g9a3a3b0cr0pl954q5rld";
-      system = "test.eager-future2";
-      asd = "test.eager-future2";
-    });
-    systems = [ "test.eager-future2" ];
-    lispLibs = [ (getAttr "eager-future2" pkgs) (getAttr "eos" pkgs) ];
-  };
-  test_dot_vas-string-metrics = {
-    pname = "test.vas-string-metrics";
-    version = "20211209-git";
-    asds = [ "test.vas-string-metrics" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/vas-string-metrics/2021-12-09/vas-string-metrics-20211209-git.tgz";
-      sha256 = "1yvkwc939dckv070nlgqfj5ys9ii2rm32m5wfx7qxdjrb4n19sx9";
-      system = "test.vas-string-metrics";
-      asd = "test.vas-string-metrics";
-    });
-    systems = [ "test.vas-string-metrics" ];
-    lispLibs = [ (getAttr "vas-string-metrics" pkgs) ];
-  };
-  testbild = {
-    pname = "testbild";
-    version = "20101207-git";
-    asds = [ "testbild" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/testbild/2010-12-07/testbild-20101207-git.tgz";
-      sha256 = "024b6rlgljcjazwg302zkdmkpxs2hirjg7g39ypppz81ns2v65sw";
-      system = "testbild";
-      asd = "testbild";
-    });
-    systems = [ "testbild" ];
-    lispLibs = [ (getAttr "cl-ppcre" pkgs) (getAttr "graylex" pkgs) ];
-  };
-  testbild-test = {
-    pname = "testbild-test";
-    version = "20101207-git";
-    asds = [ "testbild-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/testbild/2010-12-07/testbild-20101207-git.tgz";
-      sha256 = "024b6rlgljcjazwg302zkdmkpxs2hirjg7g39ypppz81ns2v65sw";
-      system = "testbild-test";
-      asd = "testbild-test";
-    });
-    systems = [ "testbild-test" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cl-heredoc" pkgs) (getAttr "testbild" pkgs) (getAttr "trivial-gray-streams" pkgs) ];
-  };
-  testiere = {
-    pname = "testiere";
-    version = "20221106-git";
-    asds = [ "testiere" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/testiere/2022-11-06/testiere-20221106-git.tgz";
-      sha256 = "0q9kw18fkj9sskijy348rxfnri2pcfwxkw3mjsqkp9i2ih285hgp";
-      system = "testiere";
-      asd = "testiere";
-    });
-    systems = [ "testiere" ];
-    lispLibs = [ (getAttr "trivia" pkgs) ];
-  };
-  texp = {
-    pname = "texp";
-    version = "20151218-git";
-    asds = [ "texp" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/texp/2015-12-18/texp-20151218-git.tgz";
-      sha256 = "1sbll7jwmzd86hg0zva8r7db2565nnliasv2x6rkrm9xl97q0kg5";
-      system = "texp";
-      asd = "texp";
-    });
-    systems = [ "texp" ];
-    lispLibs = [ (getAttr "named-readtables" pkgs) ];
-  };
-  text-query = {
-    pname = "text-query";
-    version = "1.1";
-    asds = [ "text-query" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/text-query/2011-11-05/text-query-1.1.tgz";
-      sha256 = "082xqpfchmg2752m1lw78q6c0z3walzsmqk8gl6qnj6bdwbhf4dm";
-      system = "text-query";
-      asd = "text-query";
-    });
-    systems = [ "text-query" ];
-    lispLibs = [  ];
-  };
-  text-subsystem = {
-    pname = "text-subsystem";
-    version = "20200427-git";
-    asds = [ "text-subsystem" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/sucle/2020-04-27/sucle-20200427-git.tgz";
-      sha256 = "033akkn9zxc6qdgycgxgybx3v23638245xrx29x2cbwnvg3i1q34";
-      system = "text-subsystem";
-      asd = "text-subsystem";
-    });
-    systems = [ "text-subsystem" ];
-    lispLibs = [ (getAttr "application" pkgs) (getAttr "deflazy" pkgs) (getAttr "image-utility" pkgs) (getAttr "nsb-cga" pkgs) (getAttr "quads" pkgs) (getAttr "sucle-temp" pkgs) (getAttr "utility" pkgs) ];
-  };
-  text-subsystem-generate-font = {
-    pname = "text-subsystem-generate-font";
-    version = "20200427-git";
-    asds = [ "text-subsystem-generate-font" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/sucle/2020-04-27/sucle-20200427-git.tgz";
-      sha256 = "033akkn9zxc6qdgycgxgybx3v23638245xrx29x2cbwnvg3i1q34";
-      system = "text-subsystem-generate-font";
-      asd = "text-subsystem-generate-font";
-    });
-    systems = [ "text-subsystem-generate-font" ];
-    lispLibs = [ (getAttr "cl-freetype2" pkgs) (getAttr "opticl" pkgs) (getAttr "utility" pkgs) ];
-  };
-  textery = {
-    pname = "textery";
-    version = "20201220-git";
-    asds = [ "textery" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/textery/2020-12-20/textery-20201220-git.tgz";
-      sha256 = "0v8zk1s18fi462qwvjbci8nikgs5wqjpl97ckfk0spvhybrdgwcc";
-      system = "textery";
-      asd = "textery";
-    });
-    systems = [ "textery" ];
-    lispLibs = [ (getAttr "cl-json" pkgs) (getAttr "cl-ppcre" pkgs) (getAttr "str" pkgs) (getAttr "uiop" pkgs) ];
-  };
-  the-cost-of-nothing = {
-    pname = "the-cost-of-nothing";
-    version = "20191130-git";
-    asds = [ "the-cost-of-nothing" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/the-cost-of-nothing/2019-11-30/the-cost-of-nothing-20191130-git.tgz";
-      sha256 = "1ccrglyr1wnnfp218w1qj7yfl4yzlxkki3hqaifi5axgbi5dmmh8";
-      system = "the-cost-of-nothing";
-      asd = "the-cost-of-nothing";
-    });
-    systems = [ "the-cost-of-nothing" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "closer-mop" pkgs) (getAttr "local-time" pkgs) (getAttr "trivial-garbage" pkgs) ];
-  };
-  thnappy = {
-    pname = "thnappy";
-    version = "20180831-git";
-    asds = [ "thnappy" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/thnappy/2018-08-31/thnappy-20180831-git.tgz";
-      sha256 = "0p03w2mcc655gm9x3rpgixhap9l56imjyblkwv05rk6mjx7wfnrp";
-      system = "thnappy";
-      asd = "thnappy";
-    });
-    systems = [ "thnappy" ];
-    lispLibs = [ (getAttr "cffi" pkgs) ];
-  };
-  thorn = {
-    pname = "thorn";
-    version = "20150608-git";
-    asds = [ "thorn" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/thorn/2015-06-08/thorn-20150608-git.tgz";
-      sha256 = "1d4w5358yxgccna91pxz9526w932j5ig17gp19zysjxvca57hqy7";
-      system = "thorn";
-      asd = "thorn";
-    });
-    systems = [ "thorn" ];
-    lispLibs = [ (getAttr "common-doc" pkgs) ];
-  };
-  thorn-doc = {
-    pname = "thorn-doc";
-    version = "20150608-git";
-    asds = [ "thorn-doc" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/thorn/2015-06-08/thorn-20150608-git.tgz";
-      sha256 = "1d4w5358yxgccna91pxz9526w932j5ig17gp19zysjxvca57hqy7";
-      system = "thorn-doc";
-      asd = "thorn-doc";
-    });
-    systems = [ "thorn-doc" ];
-    lispLibs = [ (getAttr "thorn" pkgs) ];
-  };
-  thorn-test = {
-    pname = "thorn-test";
-    version = "20150608-git";
-    asds = [ "thorn-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/thorn/2015-06-08/thorn-20150608-git.tgz";
-      sha256 = "1d4w5358yxgccna91pxz9526w932j5ig17gp19zysjxvca57hqy7";
-      system = "thorn-test";
-      asd = "thorn-test";
-    });
-    systems = [ "thorn-test" ];
-    lispLibs = [ (getAttr "fiveam" pkgs) (getAttr "thorn" pkgs) (getAttr "thorn-doc" pkgs) ];
-  };
-  thread-pool = {
-    pname = "thread-pool";
-    version = "20120107-git";
-    asds = [ "thread-pool" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/thread-pool/2012-01-07/thread-pool-20120107-git.tgz";
-      sha256 = "0wi9l0m660332w9pnc3w08m5hlsry9s0cgc3rznb5kyap68iv847";
-      system = "thread-pool";
-      asd = "thread-pool";
-    });
-    systems = [ "thread-pool" ];
-    lispLibs = [ (getAttr "arnesi" pkgs) (getAttr "bordeaux-threads" pkgs) ];
-  };
-  thread_dot_comm_dot_rendezvous = {
-    pname = "thread.comm.rendezvous";
-    version = "20121013-git";
-    asds = [ "thread.comm.rendezvous" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/thread.comm.rendezvous/2012-10-13/thread.comm.rendezvous-20121013-git.tgz";
-      sha256 = "16crdy09zm20iclgln1vj0psd8ifz4rqb6g9255p0d2rkjk2rgfx";
-      system = "thread.comm.rendezvous";
-      asd = "thread.comm.rendezvous";
-    });
-    systems = [ "thread.comm.rendezvous" ];
-    lispLibs = [ (getAttr "bordeaux-threads" pkgs) (getAttr "cl-annot" pkgs) ];
-  };
-  thread_dot_comm_dot_rendezvous_dot_test = {
-    pname = "thread.comm.rendezvous.test";
-    version = "20121013-git";
-    asds = [ "thread.comm.rendezvous.test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/thread.comm.rendezvous/2012-10-13/thread.comm.rendezvous-20121013-git.tgz";
-      sha256 = "16crdy09zm20iclgln1vj0psd8ifz4rqb6g9255p0d2rkjk2rgfx";
-      system = "thread.comm.rendezvous.test";
-      asd = "thread.comm.rendezvous.test";
-    });
-    systems = [ "thread.comm.rendezvous.test" ];
-    lispLibs = [ (getAttr "cl-test-more" pkgs) (getAttr "thread_dot_comm_dot_rendezvous" pkgs) ];
-  };
-  tile-grid = {
-    pname = "tile-grid";
-    version = "20220707-git";
-    asds = [ "tile-grid" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/tile-grid/2022-07-07/tile-grid-20220707-git.tgz";
-      sha256 = "10sqiqspiljnk4i1v4w0dkr640cgf9nvkgmkaww3smmhyjsd9270";
-      system = "tile-grid";
-      asd = "tile-grid";
-    });
-    systems = [ "tile-grid" ];
-    lispLibs = [ (getAttr "mfiano-utils" pkgs) ];
-  };
-  time-interval = {
-    pname = "time-interval";
-    version = "20190202-git";
-    asds = [ "time-interval" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/time-interval/2019-02-02/time-interval-20190202-git.tgz";
-      sha256 = "0dydlg42bwcd7sr57v8hhrd86n80d5cb5r6r2id0zyqbrijabdw5";
-      system = "time-interval";
-      asd = "time-interval";
-    });
-    systems = [ "time-interval" ];
-    lispLibs = [ (getAttr "cl-ppcre" pkgs) (getAttr "local-time" pkgs) ];
-  };
-  timer-wheel = {
-    pname = "timer-wheel";
-    version = "20180228-git";
-    asds = [ "timer-wheel" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/timer-wheel/2018-02-28/timer-wheel-20180228-git.tgz";
-      sha256 = "12pc1dpnkwj43n1sdqhg8n8h0mb16zcx4wxly85b7bqf00s962bc";
-      system = "timer-wheel";
-      asd = "timer-wheel";
-    });
-    systems = [ "timer-wheel" ];
-    lispLibs = [ (getAttr "bordeaux-threads" pkgs) ];
-  };
-  timer-wheel_dot_examples = {
-    pname = "timer-wheel.examples";
-    version = "20180228-git";
-    asds = [ "timer-wheel.examples" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/timer-wheel/2018-02-28/timer-wheel-20180228-git.tgz";
-      sha256 = "12pc1dpnkwj43n1sdqhg8n8h0mb16zcx4wxly85b7bqf00s962bc";
-      system = "timer-wheel.examples";
-      asd = "timer-wheel.examples";
-    });
-    systems = [ "timer-wheel.examples" ];
-    lispLibs = [ (getAttr "bordeaux-threads" pkgs) (getAttr "timer-wheel" pkgs) ];
-  };
-  tinaa = {
-    pname = "tinaa";
-    version = "20171227-git";
-    asds = [ "tinaa" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/tinaa/2017-12-27/tinaa-20171227-git.tgz";
-      sha256 = "10r1ypxphs5h7xxkl7v7r9pi2wdz1ik948mp63006hn44j7s1sa1";
-      system = "tinaa";
-      asd = "tinaa";
-    });
-    systems = [ "tinaa" ];
-    lispLibs = [ (getAttr "anaphora" pkgs) (getAttr "asdf-system-connections" pkgs) (getAttr "cl-containers" pkgs) (getAttr "cl-graph" pkgs) (getAttr "defsystem-compatibility" pkgs) (getAttr "dynamic-classes" pkgs) (getAttr "lml2" pkgs) (getAttr "metatilities" pkgs) (getAttr "trivial-shell" pkgs) ];
-  };
-  tinaa-test = {
-    pname = "tinaa-test";
-    version = "20171227-git";
-    asds = [ "tinaa-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/tinaa/2017-12-27/tinaa-20171227-git.tgz";
-      sha256 = "10r1ypxphs5h7xxkl7v7r9pi2wdz1ik948mp63006hn44j7s1sa1";
-      system = "tinaa-test";
-      asd = "tinaa-test";
-    });
-    systems = [ "tinaa-test" ];
-    lispLibs = [ (getAttr "lift" pkgs) (getAttr "tinaa" pkgs) ];
-  };
-  tinaa_slash_with-cl-markdown = {
-    pname = "tinaa_with-cl-markdown";
-    version = "20171227-git";
-    asds = [ "tinaa" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/tinaa/2017-12-27/tinaa-20171227-git.tgz";
-      sha256 = "10r1ypxphs5h7xxkl7v7r9pi2wdz1ik948mp63006hn44j7s1sa1";
-      system = "tinaa";
-      asd = "tinaa";
-    });
-    systems = [ "tinaa/with-cl-markdown" ];
-    lispLibs = [ (getAttr "cl-markdown" pkgs) (getAttr "tinaa" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  tiny-routes = {
-    pname = "tiny-routes";
-    version = "20220331-git";
-    asds = [ "tiny-routes" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/tiny-routes/2022-03-31/tiny-routes-20220331-git.tgz";
-      sha256 = "1210j7wd9rgh95p8ccwrz5axvganag14wg10giwmj236p08869ww";
-      system = "tiny-routes";
-      asd = "tiny-routes";
-    });
-    systems = [ "tiny-routes" ];
-    lispLibs = [ (getAttr "cl-ppcre" pkgs) (getAttr "uiop" pkgs) ];
-  };
-  tiny-routes_slash_test = {
-    pname = "tiny-routes_test";
-    version = "20220331-git";
-    asds = [ "tiny-routes" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/tiny-routes/2022-03-31/tiny-routes-20220331-git.tgz";
-      sha256 = "1210j7wd9rgh95p8ccwrz5axvganag14wg10giwmj236p08869ww";
-      system = "tiny-routes";
-      asd = "tiny-routes";
-    });
-    systems = [ "tiny-routes/test" ];
-    lispLibs = [ (getAttr "fiveam" pkgs) (getAttr "tiny-routes" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  tm = {
-    pname = "tm";
-    version = "v0.8";
-    asds = [ "tm" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/tm/2018-02-28/tm-v0.8.tgz";
-      sha256 = "0lhqg5jpkzni1vzni0nnw7jb8ick1pbp04gfij2iczbi82qsw8x1";
-      system = "tm";
-      asd = "tm";
-    });
-    systems = [ "tm" ];
-    lispLibs = [ (getAttr "bordeaux-threads" pkgs) (getAttr "local-time" pkgs) ];
-  };
-  tmpdir = {
-    pname = "tmpdir";
-    version = "20200218-git";
-    asds = [ "tmpdir" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/tmpdir/2020-02-18/tmpdir-20200218-git.tgz";
-      sha256 = "11yshmg2wyd75ywwfybklm131d5rdw246pg35a6ksndiq3w5n4k8";
-      system = "tmpdir";
-      asd = "tmpdir";
-    });
-    systems = [ "tmpdir" ];
-    lispLibs = [ (getAttr "cl-fad" pkgs) ];
-  };
-  tmpdir_dot_tests = {
-    pname = "tmpdir.tests";
-    version = "20200218-git";
-    asds = [ "tmpdir.tests" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/tmpdir/2020-02-18/tmpdir-20200218-git.tgz";
-      sha256 = "11yshmg2wyd75ywwfybklm131d5rdw246pg35a6ksndiq3w5n4k8";
-      system = "tmpdir.tests";
-      asd = "tmpdir.tests";
-    });
-    systems = [ "tmpdir.tests" ];
-    lispLibs = [ (getAttr "cl-fad" pkgs) (getAttr "fiveam" pkgs) (getAttr "osicat" pkgs) (getAttr "tmpdir" pkgs) ];
-  };
-  toadstool = {
-    pname = "toadstool";
-    version = "20130615-git";
-    asds = [ "toadstool" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/toadstool/2013-06-15/toadstool-20130615-git.tgz";
-      sha256 = "0njb1mdzk0247h87db90zv7bk40mw54pq8sj35l1dwa30d5yhi6r";
-      system = "toadstool";
-      asd = "toadstool";
-    });
-    systems = [ "toadstool" ];
-    lispLibs = [ (getAttr "closer-mop" pkgs) ];
-  };
-  toadstool-tests = {
-    pname = "toadstool-tests";
-    version = "20130615-git";
-    asds = [ "toadstool-tests" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/toadstool/2013-06-15/toadstool-20130615-git.tgz";
-      sha256 = "0njb1mdzk0247h87db90zv7bk40mw54pq8sj35l1dwa30d5yhi6r";
-      system = "toadstool-tests";
-      asd = "toadstool-tests";
-    });
-    systems = [ "toadstool-tests" ];
-    lispLibs = [ (getAttr "stefil" pkgs) (getAttr "toadstool" pkgs) ];
-  };
-  toms419 = {
-    pname = "toms419";
-    version = "20200925-git";
-    asds = [ "toms419" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/f2cl/2020-09-25/f2cl-20200925-git.tgz";
-      sha256 = "0kq1lrz0sg4kj64w0ysihnfwi65pami362fs2mvpyf1yhgxmq08y";
-      system = "toms419";
-      asd = "toms419";
-    });
-    systems = [ "toms419" ];
-    lispLibs = [ (getAttr "f2cl" pkgs) ];
-  };
-  toms419_slash_test = {
-    pname = "toms419_test";
-    version = "20200925-git";
-    asds = [ "toms419" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/f2cl/2020-09-25/f2cl-20200925-git.tgz";
-      sha256 = "0kq1lrz0sg4kj64w0ysihnfwi65pami362fs2mvpyf1yhgxmq08y";
-      system = "toms419";
-      asd = "toms419";
-    });
-    systems = [ "toms419/test" ];
-    lispLibs = [ (getAttr "toms419" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  toms715 = {
-    pname = "toms715";
-    version = "20200925-git";
-    asds = [ "toms715" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/f2cl/2020-09-25/f2cl-20200925-git.tgz";
-      sha256 = "0kq1lrz0sg4kj64w0ysihnfwi65pami362fs2mvpyf1yhgxmq08y";
-      system = "toms715";
-      asd = "toms715";
-    });
-    systems = [ "toms715" ];
-    lispLibs = [ (getAttr "f2cl" pkgs) ];
-  };
-  toms715_slash_tests = {
-    pname = "toms715_tests";
-    version = "20200925-git";
-    asds = [ "toms715" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/f2cl/2020-09-25/f2cl-20200925-git.tgz";
-      sha256 = "0kq1lrz0sg4kj64w0ysihnfwi65pami362fs2mvpyf1yhgxmq08y";
-      system = "toms715";
-      asd = "toms715";
-    });
-    systems = [ "toms715/tests" ];
-    lispLibs = [ (getAttr "toms715" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  toms717 = {
-    pname = "toms717";
-    version = "20200925-git";
-    asds = [ "toms717" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/f2cl/2020-09-25/f2cl-20200925-git.tgz";
-      sha256 = "0kq1lrz0sg4kj64w0ysihnfwi65pami362fs2mvpyf1yhgxmq08y";
-      system = "toms717";
-      asd = "toms717";
-    });
-    systems = [ "toms717" ];
-    lispLibs = [ (getAttr "f2cl" pkgs) ];
-  };
-  toms717_slash_tests = {
-    pname = "toms717_tests";
-    version = "20200925-git";
-    asds = [ "toms717" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/f2cl/2020-09-25/f2cl-20200925-git.tgz";
-      sha256 = "0kq1lrz0sg4kj64w0ysihnfwi65pami362fs2mvpyf1yhgxmq08y";
-      system = "toms717";
-      asd = "toms717";
-    });
-    systems = [ "toms717/tests" ];
-    lispLibs = [ (getAttr "toms717" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  toot = {
-    pname = "toot";
-    version = "20121125-git";
-    asds = [ "toot" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/toot/2012-11-25/toot-20121125-git.tgz";
-      sha256 = "1235qhkjrg1mmy6kx1vhsqvgjjgc7hk2sjssapv7xr43m71n6ivx";
-      system = "toot";
-      asd = "toot";
-    });
-    systems = [ "toot" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "bordeaux-threads" pkgs) (getAttr "chunga" pkgs) (getAttr "cl_plus_ssl" pkgs) (getAttr "cl-base64" pkgs) (getAttr "cl-fad" pkgs) (getAttr "cl-ppcre" pkgs) (getAttr "flexi-streams" pkgs) (getAttr "md5" pkgs) (getAttr "puri" pkgs) (getAttr "trivial-backtrace" pkgs) (getAttr "usocket" pkgs) ];
-  };
-  tooter = {
-    pname = "tooter";
-    version = "20220220-git";
-    asds = [ "tooter" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/tooter/2022-02-20/tooter-20220220-git.tgz";
-      sha256 = "02gy1hyirz5w7ik7rjqxxl8dfp1m2b135sxw6qmn1lak29ap8c5c";
-      system = "tooter";
-      asd = "tooter";
-    });
-    systems = [ "tooter" ];
-    lispLibs = [ (getAttr "cl-ppcre" pkgs) (getAttr "documentation-utils" pkgs) (getAttr "drakma" pkgs) (getAttr "yason" pkgs) ];
-  };
-  torrents = {
-    pname = "torrents";
-    version = "20221106-git";
-    asds = [ "torrents" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-torrents/2022-11-06/cl-torrents-20221106-git.tgz";
-      sha256 = "1icz98icnisz8cz669adin5x68y3ybcajy69yrma1djgd3v7inl5";
-      system = "torrents";
-      asd = "torrents";
-    });
-    systems = [ "torrents" ];
-    lispLibs = [ (getAttr "access" pkgs) (getAttr "cl-ansi-text" pkgs) (getAttr "cl-readline" pkgs) (getAttr "str" pkgs) (getAttr "cl-transmission" pkgs) (getAttr "clache" pkgs) (getAttr "dexador" pkgs) (getAttr "jonathan" pkgs) (getAttr "log4cl" pkgs) (getAttr "lparallel" pkgs) (getAttr "lquery" pkgs) (getAttr "mockingbird" pkgs) (getAttr "parse-float" pkgs) (getAttr "plump" pkgs) (getAttr "py-configparser" pkgs) (getAttr "replic" pkgs) (getAttr "unix-opts" pkgs) (getAttr "x_dot_let-star" pkgs) ];
-  };
-  torrents-test = {
-    pname = "torrents-test";
-    version = "20221106-git";
-    asds = [ "torrents-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-torrents/2022-11-06/cl-torrents-20221106-git.tgz";
-      sha256 = "1icz98icnisz8cz669adin5x68y3ybcajy69yrma1djgd3v7inl5";
-      system = "torrents-test";
-      asd = "torrents-test";
-    });
-    systems = [ "torrents-test" ];
-    lispLibs = [ (getAttr "torrents" pkgs) (getAttr "mockingbird" pkgs) (getAttr "prove" pkgs) (getAttr "prove-asdf" pkgs) ];
-  };
-  torrents_slash_tk = {
-    pname = "torrents_tk";
-    version = "20221106-git";
-    asds = [ "torrents" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-torrents/2022-11-06/cl-torrents-20221106-git.tgz";
-      sha256 = "1icz98icnisz8cz669adin5x68y3ybcajy69yrma1djgd3v7inl5";
-      system = "torrents";
-      asd = "torrents";
-    });
-    systems = [ "torrents/tk" ];
-    lispLibs = [ (getAttr "torrents" pkgs) (getAttr "nodgui" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  towers = {
-    pname = "towers";
-    version = "20141217-git";
-    asds = [ "towers" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/towers/2014-12-17/towers-20141217-git.tgz";
-      sha256 = "0r89z1hfb7kmj0a4qm7ih599hlin8rhxk6pb7nnvsdjgn436dkga";
-      system = "towers";
-      asd = "towers";
-    });
-    systems = [ "towers" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cl-glu" pkgs) (getAttr "cl-glut" pkgs) (getAttr "cl-opengl" pkgs) ];
-  };
-  trace-db = {
-    pname = "trace-db";
-    version = "20221106-git";
-    asds = [ "trace-db" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/trace-db/2022-11-06/trace-db-20221106-git.tgz";
-      sha256 = "0263y0nks377hkm6cx9017hyyw9vd4mvmnhpdfi724knljm6pllk";
-      system = "trace-db";
-      asd = "trace-db";
-    });
-    systems = [ "trace-db" ];
-    lispLibs = [ (getAttr "asdf-package-system" pkgs) ];
-  };
-  track-best = {
-    pname = "track-best";
-    version = "20220220-git";
-    asds = [ "track-best" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/track-best/2022-02-20/track-best-20220220-git.tgz";
-      sha256 = "1f59bn57y1mdq18l1ji5q8yazv73g85y1mns2xzwbmx8sgxsa6pq";
-      system = "track-best";
-      asd = "track-best";
-    });
-    systems = [ "track-best" ];
-    lispLibs = [  ];
-  };
-  track-best_slash_tests = {
-    pname = "track-best_tests";
-    version = "20220220-git";
-    asds = [ "track-best" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/track-best/2022-02-20/track-best-20220220-git.tgz";
-      sha256 = "1f59bn57y1mdq18l1ji5q8yazv73g85y1mns2xzwbmx8sgxsa6pq";
-      system = "track-best";
-      asd = "track-best";
-    });
-    systems = [ "track-best/tests" ];
-    lispLibs = [ (getAttr "nst" pkgs) (getAttr "track-best" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  trainable-object = {
-    pname = "trainable-object";
-    version = "20191227-git";
-    asds = [ "trainable-object" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/trainable-object/2019-12-27/trainable-object-20191227-git.tgz";
-      sha256 = "06hfv039xx5vwm3qpm4kwlzlxc4zxlfcpxnbbq8x12a32ngqykwm";
-      system = "trainable-object";
-      asd = "trainable-object";
-    });
-    systems = [ "trainable-object" ];
-    lispLibs = [ (getAttr "closer-mop" pkgs) (getAttr "serializable-object" pkgs) ];
-  };
-  trainable-object_dot_test = {
-    pname = "trainable-object.test";
-    version = "20191227-git";
-    asds = [ "trainable-object.test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/trainable-object/2019-12-27/trainable-object-20191227-git.tgz";
-      sha256 = "06hfv039xx5vwm3qpm4kwlzlxc4zxlfcpxnbbq8x12a32ngqykwm";
-      system = "trainable-object.test";
-      asd = "trainable-object.test";
-    });
-    systems = [ "trainable-object.test" ];
-    lispLibs = [ (getAttr "fiveam" pkgs) (getAttr "trainable-object" pkgs) ];
-  };
-  translate = {
-    pname = "translate";
-    version = "20180228-git";
-    asds = [ "translate" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/translate/2018-02-28/translate-20180228-git.tgz";
-      sha256 = "07bvdmj8x77k8pw24yhfp1xv9h40n5w717vgj3wmq703159kyjia";
-      system = "translate";
-      asd = "translate";
-    });
-    systems = [ "translate" ];
-    lispLibs = [  ];
-  };
-  translate-client = {
-    pname = "translate-client";
-    version = "20180228-git";
-    asds = [ "translate-client" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/translate-client/2018-02-28/translate-client-20180228-git.tgz";
-      sha256 = "0mjzzahy5wrycik37dirwnvcd5bj5xm20cnw6cmzh0ncvb442mdx";
-      system = "translate-client";
-      asd = "translate-client";
-    });
-    systems = [ "translate-client" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "assoc-utils" pkgs) (getAttr "dexador" pkgs) (getAttr "quri" pkgs) (getAttr "yason" pkgs) ];
-  };
-  translate_slash_test = {
-    pname = "translate_test";
-    version = "20180228-git";
-    asds = [ "translate" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/translate/2018-02-28/translate-20180228-git.tgz";
-      sha256 = "07bvdmj8x77k8pw24yhfp1xv9h40n5w717vgj3wmq703159kyjia";
-      system = "translate";
-      asd = "translate";
-    });
-    systems = [ "translate/test" ];
-    lispLibs = [ (getAttr "fiveam" pkgs) (getAttr "translate" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  translators = {
-    pname = "translators";
-    version = "master-1a957fb2-git";
-    asds = [ "translators" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/gendl/2022-07-07/gendl-master-1a957fb2-git.tgz";
-      sha256 = "0j47qnvvfx3vnh3pll6rkya5m142hi93bd5jk65rv43vbc94sv30";
-      system = "translators";
-      asd = "translators";
-    });
-    systems = [ "translators" ];
-    lispLibs = [ (getAttr "gwl" pkgs) ];
-  };
-  transparent-wrap = {
-    pname = "transparent-wrap";
-    version = "20200925-git";
-    asds = [ "transparent-wrap" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/transparent-wrap/2020-09-25/transparent-wrap-20200925-git.tgz";
-      sha256 = "0ghva34ksdvczfwpjdaf97bkjxrp35fjqkxamyqf7fbadh4wmfqj";
-      system = "transparent-wrap";
-      asd = "transparent-wrap";
-    });
-    systems = [ "transparent-wrap" ];
-    lispLibs = [ (getAttr "fare-quasiquote-extras" pkgs) (getAttr "named-readtables" pkgs) (getAttr "optima" pkgs) (getAttr "trivial-arguments" pkgs) ];
-  };
-  tree = {
-    pname = "tree";
-    version = "master-1a957fb2-git";
-    asds = [ "tree" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/gendl/2022-07-07/gendl-master-1a957fb2-git.tgz";
-      sha256 = "0j47qnvvfx3vnh3pll6rkya5m142hi93bd5jk65rv43vbc94sv30";
-      system = "tree";
-      asd = "tree";
-    });
-    systems = [ "tree" ];
-    lispLibs = [ (getAttr "gwl-graphics" pkgs) ];
-  };
-  tree-search = {
-    pname = "tree-search";
-    version = "0.0.1";
-    asds = [ "tree-search" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/tree-search/2020-12-20/tree-search-0.0.1.tgz";
-      sha256 = "10qgd5yj3n2w4j6wsq1xly0hnpdi1bhhzpia4s1gpkywhglw84zq";
-      system = "tree-search";
-      asd = "tree-search";
-    });
-    systems = [ "tree-search" ];
-    lispLibs = [  ];
-  };
-  tree-search_slash_test = {
-    pname = "tree-search_test";
-    version = "0.0.1";
-    asds = [ "tree-search" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/tree-search/2020-12-20/tree-search-0.0.1.tgz";
-      sha256 = "10qgd5yj3n2w4j6wsq1xly0hnpdi1bhhzpia4s1gpkywhglw84zq";
-      system = "tree-search";
-      asd = "tree-search";
-    });
-    systems = [ "tree-search/test" ];
-    lispLibs = [ (getAttr "fiveam" pkgs) (getAttr "tree-search" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  treedb = {
-    pname = "treedb";
-    version = "20160825-git";
-    asds = [ "treedb" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/treedb/2016-08-25/treedb-20160825-git.tgz";
-      sha256 = "02xsm4han0m0vj1j2ly2a6ncjcv7z8p3lcpkyj27xygag2vlchbq";
-      system = "treedb";
-      asd = "treedb";
-    });
-    systems = [ "treedb" ];
-    lispLibs = [ (getAttr "cl-json" pkgs) ];
-  };
-  treedb_dot_doc = {
-    pname = "treedb.doc";
-    version = "20160825-git";
-    asds = [ "treedb.doc" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/treedb/2016-08-25/treedb-20160825-git.tgz";
-      sha256 = "02xsm4han0m0vj1j2ly2a6ncjcv7z8p3lcpkyj27xygag2vlchbq";
-      system = "treedb.doc";
-      asd = "treedb.doc";
-    });
-    systems = [ "treedb.doc" ];
-    lispLibs = [ (getAttr "cl-gendoc" pkgs) (getAttr "treedb" pkgs) (getAttr "treedb_dot_tests" pkgs) ];
-  };
-  treedb_dot_tests = {
-    pname = "treedb.tests";
-    version = "20160825-git";
-    asds = [ "treedb.tests" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/treedb/2016-08-25/treedb-20160825-git.tgz";
-      sha256 = "02xsm4han0m0vj1j2ly2a6ncjcv7z8p3lcpkyj27xygag2vlchbq";
-      system = "treedb.tests";
-      asd = "treedb.tests";
-    });
-    systems = [ "treedb.tests" ];
-    lispLibs = [ (getAttr "fiveam" pkgs) (getAttr "treedb" pkgs) ];
-  };
-  trees = {
-    pname = "trees";
-    version = "20180131-git";
-    asds = [ "trees" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/trees/2018-01-31/trees-20180131-git.tgz";
-      sha256 = "1xvydf3qc17rd7ia8sffxcpclgm3l0iyhx8k72ddk59v3pg5is4k";
-      system = "trees";
-      asd = "trees";
-    });
-    systems = [ "trees" ];
-    lispLibs = [  ];
-  };
-  trees-tests = {
-    pname = "trees-tests";
-    version = "20180131-git";
-    asds = [ "trees-tests" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/trees/2018-01-31/trees-20180131-git.tgz";
-      sha256 = "1xvydf3qc17rd7ia8sffxcpclgm3l0iyhx8k72ddk59v3pg5is4k";
-      system = "trees-tests";
-      asd = "trees";
-    });
-    systems = [ "trees-tests" ];
-    lispLibs = [ (getAttr "trees" pkgs) ];
-  };
-  trestrul = {
-    pname = "trestrul";
-    version = "20211020-git";
-    asds = [ "trestrul" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/trestrul/2021-10-20/trestrul-20211020-git.tgz";
-      sha256 = "12bghcfnfxq8l4a1jzh6vx4yna9da1xvp0b7kfdcfylnyga9ivy6";
-      system = "trestrul";
-      asd = "trestrul";
-    });
-    systems = [ "trestrul" ];
-    lispLibs = [ (getAttr "jingoh_dot_documentizer" pkgs) ];
-  };
-  trestrul_dot_test = {
-    pname = "trestrul.test";
-    version = "20211020-git";
-    asds = [ "trestrul.test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/trestrul/2021-10-20/trestrul-20211020-git.tgz";
-      sha256 = "12bghcfnfxq8l4a1jzh6vx4yna9da1xvp0b7kfdcfylnyga9ivy6";
-      system = "trestrul.test";
-      asd = "trestrul.test";
-    });
-    systems = [ "trestrul.test" ];
-    lispLibs = [ (getAttr "jingoh" pkgs) (getAttr "trestrul" pkgs) ];
-  };
-  trivia = {
-    pname = "trivia";
-    version = "20220707-git";
-    asds = [ "trivia" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/trivia/2022-07-07/trivia-20220707-git.tgz";
-      sha256 = "0w0qnl7j833b054fm47xnlx283rd6rzxf2sl672r91h081jk9ahv";
-      system = "trivia";
-      asd = "trivia";
-    });
-    systems = [ "trivia" ];
-    lispLibs = [ (getAttr "trivia_dot_balland2006" pkgs) ];
-  };
-  trivia_dot_balland2006 = {
-    pname = "trivia.balland2006";
-    version = "20220707-git";
-    asds = [ "trivia.balland2006" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/trivia/2022-07-07/trivia-20220707-git.tgz";
-      sha256 = "0w0qnl7j833b054fm47xnlx283rd6rzxf2sl672r91h081jk9ahv";
-      system = "trivia.balland2006";
-      asd = "trivia.balland2006";
-    });
-    systems = [ "trivia.balland2006" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "iterate" pkgs) (getAttr "trivia_dot_trivial" pkgs) (getAttr "type-i" pkgs) ];
-  };
-  trivia_dot_benchmark = {
-    pname = "trivia.benchmark";
-    version = "20220707-git";
-    asds = [ "trivia.benchmark" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/trivia/2022-07-07/trivia-20220707-git.tgz";
-      sha256 = "0w0qnl7j833b054fm47xnlx283rd6rzxf2sl672r91h081jk9ahv";
-      system = "trivia.benchmark";
-      asd = "trivia.benchmark";
-    });
-    systems = [ "trivia.benchmark" ];
-    lispLibs = [ (getAttr "iterate" pkgs) (getAttr "optima" pkgs) (getAttr "trivia" pkgs) (getAttr "trivia_dot_balland2006" pkgs) ];
-  };
-  trivia_dot_benchmark_slash_run = {
-    pname = "trivia.benchmark_run";
-    version = "20220707-git";
-    asds = [ "trivia.benchmark" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/trivia/2022-07-07/trivia-20220707-git.tgz";
-      sha256 = "0w0qnl7j833b054fm47xnlx283rd6rzxf2sl672r91h081jk9ahv";
-      system = "trivia.benchmark";
-      asd = "trivia.benchmark";
-    });
-    systems = [ "trivia.benchmark/run" ];
-    lispLibs = [ (getAttr "trivia_dot_benchmark" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  trivia_dot_cffi = {
-    pname = "trivia.cffi";
-    version = "20220707-git";
-    asds = [ "trivia.cffi" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/trivia/2022-07-07/trivia-20220707-git.tgz";
-      sha256 = "0w0qnl7j833b054fm47xnlx283rd6rzxf2sl672r91h081jk9ahv";
-      system = "trivia.cffi";
-      asd = "trivia.cffi";
-    });
-    systems = [ "trivia.cffi" ];
-    lispLibs = [ (getAttr "cffi" pkgs) (getAttr "trivia_dot_trivial" pkgs) ];
-  };
-  trivia_dot_fset = {
-    pname = "trivia.fset";
-    version = "20220707-git";
-    asds = [ "trivia.fset" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/trivia/2022-07-07/trivia-20220707-git.tgz";
-      sha256 = "0w0qnl7j833b054fm47xnlx283rd6rzxf2sl672r91h081jk9ahv";
-      system = "trivia.fset";
-      asd = "trivia.fset";
-    });
-    systems = [ "trivia.fset" ];
-    lispLibs = [ (getAttr "fset" pkgs) (getAttr "trivia_dot_trivial" pkgs) ];
-  };
-  trivia_dot_level0 = {
-    pname = "trivia.level0";
-    version = "20220707-git";
-    asds = [ "trivia.level0" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/trivia/2022-07-07/trivia-20220707-git.tgz";
-      sha256 = "0w0qnl7j833b054fm47xnlx283rd6rzxf2sl672r91h081jk9ahv";
-      system = "trivia.level0";
-      asd = "trivia.level0";
-    });
-    systems = [ "trivia.level0" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) ];
-  };
-  trivia_dot_level1 = {
-    pname = "trivia.level1";
-    version = "20220707-git";
-    asds = [ "trivia.level1" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/trivia/2022-07-07/trivia-20220707-git.tgz";
-      sha256 = "0w0qnl7j833b054fm47xnlx283rd6rzxf2sl672r91h081jk9ahv";
-      system = "trivia.level1";
-      asd = "trivia.level1";
-    });
-    systems = [ "trivia.level1" ];
-    lispLibs = [ (getAttr "trivia_dot_level0" pkgs) ];
-  };
-  trivia_dot_level2 = {
-    pname = "trivia.level2";
-    version = "20220707-git";
-    asds = [ "trivia.level2" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/trivia/2022-07-07/trivia-20220707-git.tgz";
-      sha256 = "0w0qnl7j833b054fm47xnlx283rd6rzxf2sl672r91h081jk9ahv";
-      system = "trivia.level2";
-      asd = "trivia.level2";
-    });
-    systems = [ "trivia.level2" ];
-    lispLibs = [ (getAttr "closer-mop" pkgs) (getAttr "lisp-namespace" pkgs) (getAttr "trivia_dot_level1" pkgs) (getAttr "trivial-cltl2" pkgs) ];
-  };
-  trivia_dot_ppcre = {
-    pname = "trivia.ppcre";
-    version = "20220707-git";
-    asds = [ "trivia.ppcre" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/trivia/2022-07-07/trivia-20220707-git.tgz";
-      sha256 = "0w0qnl7j833b054fm47xnlx283rd6rzxf2sl672r91h081jk9ahv";
-      system = "trivia.ppcre";
-      asd = "trivia.ppcre";
-    });
-    systems = [ "trivia.ppcre" ];
-    lispLibs = [ (getAttr "cl-ppcre" pkgs) (getAttr "trivia_dot_trivial" pkgs) ];
-  };
-  trivia_dot_quasiquote = {
-    pname = "trivia.quasiquote";
-    version = "20220707-git";
-    asds = [ "trivia.quasiquote" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/trivia/2022-07-07/trivia-20220707-git.tgz";
-      sha256 = "0w0qnl7j833b054fm47xnlx283rd6rzxf2sl672r91h081jk9ahv";
-      system = "trivia.quasiquote";
-      asd = "trivia.quasiquote";
-    });
-    systems = [ "trivia.quasiquote" ];
-    lispLibs = [ (getAttr "fare-quasiquote-readtable" pkgs) (getAttr "trivia_dot_trivial" pkgs) ];
-  };
-  trivia_dot_test = {
-    pname = "trivia.test";
-    version = "20220707-git";
-    asds = [ "trivia.test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/trivia/2022-07-07/trivia-20220707-git.tgz";
-      sha256 = "0w0qnl7j833b054fm47xnlx283rd6rzxf2sl672r91h081jk9ahv";
-      system = "trivia.test";
-      asd = "trivia.test";
-    });
-    systems = [ "trivia.test" ];
-    lispLibs = [ (getAttr "fiveam" pkgs) (getAttr "optima" pkgs) (getAttr "trivia" pkgs) (getAttr "trivia_dot_cffi" pkgs) (getAttr "trivia_dot_fset" pkgs) (getAttr "trivia_dot_ppcre" pkgs) (getAttr "trivia_dot_quasiquote" pkgs) ];
-  };
-  trivia_dot_trivial = {
-    pname = "trivia.trivial";
-    version = "20220707-git";
-    asds = [ "trivia.trivial" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/trivia/2022-07-07/trivia-20220707-git.tgz";
-      sha256 = "0w0qnl7j833b054fm47xnlx283rd6rzxf2sl672r91h081jk9ahv";
-      system = "trivia.trivial";
-      asd = "trivia.trivial";
-    });
-    systems = [ "trivia.trivial" ];
-    lispLibs = [ (getAttr "trivia_dot_level2" pkgs) ];
-  };
-  trivial-arguments = {
-    pname = "trivial-arguments";
-    version = "20200925-git";
-    asds = [ "trivial-arguments" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/trivial-arguments/2020-09-25/trivial-arguments-20200925-git.tgz";
-      sha256 = "02vaqfavhj8jqxnr68nnzvzshm8jbgcy6m9lvyv4daa6f7ihqf88";
-      system = "trivial-arguments";
-      asd = "trivial-arguments";
-    });
-    systems = [ "trivial-arguments" ];
-    lispLibs = [  ];
-  };
-  trivial-backtrace = {
-    pname = "trivial-backtrace";
-    version = "20200610-git";
-    asds = [ "trivial-backtrace" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/trivial-backtrace/2020-06-10/trivial-backtrace-20200610-git.tgz";
-      sha256 = "1mbaqiwj5034iw6jzw30jyhwzp1pvhnz1zcy0lns0z5j2h9ldapw";
-      system = "trivial-backtrace";
-      asd = "trivial-backtrace";
-    });
-    systems = [ "trivial-backtrace" ];
-    lispLibs = [  ];
-  };
-  trivial-backtrace-test = {
-    pname = "trivial-backtrace-test";
-    version = "20200610-git";
-    asds = [ "trivial-backtrace-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/trivial-backtrace/2020-06-10/trivial-backtrace-20200610-git.tgz";
-      sha256 = "1mbaqiwj5034iw6jzw30jyhwzp1pvhnz1zcy0lns0z5j2h9ldapw";
-      system = "trivial-backtrace-test";
-      asd = "trivial-backtrace-test";
-    });
-    systems = [ "trivial-backtrace-test" ];
-    lispLibs = [ (getAttr "lift" pkgs) (getAttr "trivial-backtrace" pkgs) ];
-  };
-  trivial-battery = {
-    pname = "trivial-battery";
-    version = "20211020-git";
-    asds = [ "trivial-battery" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/trivial-battery/2021-10-20/trivial-battery-20211020-git.tgz";
-      sha256 = "12ni2502v9gjszhjsh0aai08cm64gl8g815xghdjhcf7y34ffl2b";
-      system = "trivial-battery";
-      asd = "trivial-battery";
-    });
-    systems = [ "trivial-battery" ];
-    lispLibs = [ (getAttr "split-sequence" pkgs) ];
-  };
-  trivial-benchmark = {
-    pname = "trivial-benchmark";
-    version = "20220707-git";
-    asds = [ "trivial-benchmark" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/trivial-benchmark/2022-07-07/trivial-benchmark-20220707-git.tgz";
-      sha256 = "1n8p3gjkv1fx8qfjykjvzf1b02mpv1d5s58583c1vyvc5ikjm389";
-      system = "trivial-benchmark";
-      asd = "trivial-benchmark";
-    });
-    systems = [ "trivial-benchmark" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) ];
-  };
-  trivial-bit-streams = {
-    pname = "trivial-bit-streams";
-    version = "20190710-git";
-    asds = [ "trivial-bit-streams" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/trivial-bit-streams/2019-07-10/trivial-bit-streams-20190710-git.tgz";
-      sha256 = "01xcs069934pzm8gi1xkwgd4lw37ams30i6rcgrlw8gnx4zc4zc9";
-      system = "trivial-bit-streams";
-      asd = "trivial-bit-streams";
-    });
-    systems = [ "trivial-bit-streams" ];
-    lispLibs = [ (getAttr "trivial-gray-streams" pkgs) ];
-  };
-  trivial-bit-streams-tests = {
-    pname = "trivial-bit-streams-tests";
-    version = "20190710-git";
-    asds = [ "trivial-bit-streams-tests" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/trivial-bit-streams/2019-07-10/trivial-bit-streams-20190710-git.tgz";
-      sha256 = "01xcs069934pzm8gi1xkwgd4lw37ams30i6rcgrlw8gnx4zc4zc9";
-      system = "trivial-bit-streams-tests";
-      asd = "trivial-bit-streams-tests";
-    });
-    systems = [ "trivial-bit-streams-tests" ];
-    lispLibs = [ (getAttr "fiveam" pkgs) (getAttr "flexi-streams" pkgs) (getAttr "trivial-bit-streams" pkgs) ];
-  };
-  trivial-build = {
-    pname = "trivial-build";
-    version = "20151218-git";
-    asds = [ "trivial-build" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/trivial-build/2015-12-18/trivial-build-20151218-git.tgz";
-      sha256 = "10h1igvryaqz6f72i57ppifysnw8swnss9395sijnk595icja7q0";
-      system = "trivial-build";
-      asd = "trivial-build";
-    });
-    systems = [ "trivial-build" ];
-    lispLibs = [ (getAttr "lisp-invocation" pkgs) (getAttr "trivial-exe" pkgs) ];
-  };
-  trivial-build-test = {
-    pname = "trivial-build-test";
-    version = "20151218-git";
-    asds = [ "trivial-build-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/trivial-build/2015-12-18/trivial-build-20151218-git.tgz";
-      sha256 = "10h1igvryaqz6f72i57ppifysnw8swnss9395sijnk595icja7q0";
-      system = "trivial-build-test";
-      asd = "trivial-build-test";
-    });
-    systems = [ "trivial-build-test" ];
-    lispLibs = [ (getAttr "fiveam" pkgs) (getAttr "trivial-build" pkgs) ];
-  };
-  trivial-channels = {
-    pname = "trivial-channels";
-    version = "20160421-git";
-    asds = [ "trivial-channels" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/trivial-channels/2016-04-21/trivial-channels-20160421-git.tgz";
-      sha256 = "04wnxcgk40x8p0gxnz9arv1a5wasdqrdxa8c4p5v7r2mycfps6jj";
-      system = "trivial-channels";
-      asd = "trivial-channels";
-    });
-    systems = [ "trivial-channels" ];
-    lispLibs = [ (getAttr "bordeaux-threads" pkgs) (getAttr "trivial-timeout" pkgs) ];
-  };
-  trivial-clipboard = {
-    pname = "trivial-clipboard";
-    version = "20221106-git";
-    asds = [ "trivial-clipboard" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/trivial-clipboard/2022-11-06/trivial-clipboard-20221106-git.tgz";
-      sha256 = "0l198m1gg2ixc43lqjq1ffd80s1sjxhqf1w83qqa1cn51rra2jp8";
-      system = "trivial-clipboard";
-      asd = "trivial-clipboard";
-    });
-    systems = [ "trivial-clipboard" ];
-    lispLibs = [ (getAttr "uiop" pkgs) ];
-  };
-  trivial-clipboard-test = {
-    pname = "trivial-clipboard-test";
-    version = "20221106-git";
-    asds = [ "trivial-clipboard-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/trivial-clipboard/2022-11-06/trivial-clipboard-20221106-git.tgz";
-      sha256 = "0l198m1gg2ixc43lqjq1ffd80s1sjxhqf1w83qqa1cn51rra2jp8";
-      system = "trivial-clipboard-test";
-      asd = "trivial-clipboard-test";
-    });
-    systems = [ "trivial-clipboard-test" ];
-    lispLibs = [ (getAttr "fiveam" pkgs) (getAttr "trivial-clipboard" pkgs) ];
-  };
-  trivial-cltl2 = {
-    pname = "trivial-cltl2";
-    version = "20211230-git";
-    asds = [ "trivial-cltl2" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/trivial-cltl2/2021-12-30/trivial-cltl2-20211230-git.tgz";
-      sha256 = "0xx5vr0dp623m111zbfdk6x7l4jgd4wwyp6iarbj6ijq514wi3a3";
-      system = "trivial-cltl2";
-      asd = "trivial-cltl2";
-    });
-    systems = [ "trivial-cltl2" ];
-    lispLibs = [  ];
-  };
-  trivial-coerce = {
-    pname = "trivial-coerce";
-    version = "20220707-git";
-    asds = [ "trivial-coerce" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/trivial-coerce/2022-07-07/trivial-coerce-20220707-git.tgz";
-      sha256 = "0nn8ib6j0w0mhbwl0hqi3n7svpfi1if56m9cslhslq2gs2w7qn58";
-      system = "trivial-coerce";
-      asd = "trivial-coerce";
-    });
-    systems = [ "trivial-coerce" ];
-    lispLibs = [ (getAttr "ctype" pkgs) (getAttr "polymorphic-functions" pkgs) (getAttr "trivial-types" pkgs) ];
-  };
-  trivial-coerce_slash_tests = {
-    pname = "trivial-coerce_tests";
-    version = "20220707-git";
-    asds = [ "trivial-coerce" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/trivial-coerce/2022-07-07/trivial-coerce-20220707-git.tgz";
-      sha256 = "0nn8ib6j0w0mhbwl0hqi3n7svpfi1if56m9cslhslq2gs2w7qn58";
-      system = "trivial-coerce";
-      asd = "trivial-coerce";
-    });
-    systems = [ "trivial-coerce/tests" ];
-    lispLibs = [ (getAttr "fiveam" pkgs) (getAttr "trivial-coerce" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  trivial-compress = {
-    pname = "trivial-compress";
-    version = "20201220-git";
-    asds = [ "trivial-compress" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/trivial-compress/2020-12-20/trivial-compress-20201220-git.tgz";
-      sha256 = "1pbaz0phvzi27dgnfknscak1h27bsi16gys23kchg8y8zbm0z0g7";
-      system = "trivial-compress";
-      asd = "trivial-compress";
-    });
-    systems = [ "trivial-compress" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "archive" pkgs) (getAttr "uiop" pkgs) (getAttr "which" pkgs) (getAttr "zip" pkgs) ];
-  };
-  trivial-compress-test = {
-    pname = "trivial-compress-test";
-    version = "20201220-git";
-    asds = [ "trivial-compress-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/trivial-compress/2020-12-20/trivial-compress-20201220-git.tgz";
-      sha256 = "1pbaz0phvzi27dgnfknscak1h27bsi16gys23kchg8y8zbm0z0g7";
-      system = "trivial-compress-test";
-      asd = "trivial-compress-test";
-    });
-    systems = [ "trivial-compress-test" ];
-    lispLibs = [ (getAttr "fiveam" pkgs) (getAttr "trivial-compress" pkgs) ];
-  };
-  trivial-continuation = {
-    pname = "trivial-continuation";
-    version = "20191007-git";
-    asds = [ "trivial-continuation" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/trivial-continuation/2019-10-07/trivial-continuation-20191007-git.tgz";
-      sha256 = "1j8d8q86r60qr9pi5p3q7rqn16xpzbzygs0i9b8sn3qyxnnz5037";
-      system = "trivial-continuation";
-      asd = "trivial-continuation";
-    });
-    systems = [ "trivial-continuation" ];
-    lispLibs = [ (getAttr "log4cl" pkgs) (getAttr "trivial-utilities" pkgs) ];
-  };
-  trivial-continuation_slash_test = {
-    pname = "trivial-continuation_test";
-    version = "20191007-git";
-    asds = [ "trivial-continuation" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/trivial-continuation/2019-10-07/trivial-continuation-20191007-git.tgz";
-      sha256 = "1j8d8q86r60qr9pi5p3q7rqn16xpzbzygs0i9b8sn3qyxnnz5037";
-      system = "trivial-continuation";
-      asd = "trivial-continuation";
-    });
-    systems = [ "trivial-continuation/test" ];
-    lispLibs = [ (getAttr "fiveam" pkgs) (getAttr "trivial-continuation" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  trivial-coverage = {
-    pname = "trivial-coverage";
-    version = "20200218-git";
-    asds = [ "trivial-coverage" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/trivial-coverage/2020-02-18/trivial-coverage-20200218-git.tgz";
-      sha256 = "1ak4mjcvzdjsjjh7j89zlnwgaamfrspxmjh2i9kg67kqn36prbsp";
-      system = "trivial-coverage";
-      asd = "trivial-coverage";
-    });
-    systems = [ "trivial-coverage" ];
-    lispLibs = [ (getAttr "lquery" pkgs) ];
-  };
-  trivial-custom-debugger = {
-    pname = "trivial-custom-debugger";
-    version = "20200925-git";
-    asds = [ "trivial-custom-debugger" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/trivial-custom-debugger/2020-09-25/trivial-custom-debugger-20200925-git.tgz";
-      sha256 = "1iri5wsp9sc1f5q934cj87zd79r5dc8fda0gl7x1pz95v0wx28yk";
-      system = "trivial-custom-debugger";
-      asd = "trivial-custom-debugger";
-    });
-    systems = [ "trivial-custom-debugger" ];
-    lispLibs = [  ];
-  };
-  trivial-custom-debugger_slash_test = {
-    pname = "trivial-custom-debugger_test";
-    version = "20200925-git";
-    asds = [ "trivial-custom-debugger" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/trivial-custom-debugger/2020-09-25/trivial-custom-debugger-20200925-git.tgz";
-      sha256 = "1iri5wsp9sc1f5q934cj87zd79r5dc8fda0gl7x1pz95v0wx28yk";
-      system = "trivial-custom-debugger";
-      asd = "trivial-custom-debugger";
-    });
-    systems = [ "trivial-custom-debugger/test" ];
-    lispLibs = [ (getAttr "parachute" pkgs) (getAttr "trivial-custom-debugger" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  trivial-debug-console = {
-    pname = "trivial-debug-console";
-    version = "20150407-git";
-    asds = [ "trivial-debug-console" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/trivial-debug-console/2015-04-07/trivial-debug-console-20150407-git.tgz";
-      sha256 = "07r42k57vldg01hfwjhkic2hsy84c2s5zj7pl60xjl960i0lqnam";
-      system = "trivial-debug-console";
-      asd = "trivial-debug-console";
-    });
-    systems = [ "trivial-debug-console" ];
-    lispLibs = [ (getAttr "cffi" pkgs) ];
-  };
-  trivial-do = {
-    pname = "trivial-do";
-    version = "20220331-git";
-    asds = [ "trivial-do" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/trivial-do/2022-03-31/trivial-do-20220331-git.tgz";
-      sha256 = "0vql7am4zyg6zav3l6n6q3qgdxlnchdxpgdxp8lr9sm7jra7sdsf";
-      system = "trivial-do";
-      asd = "trivial-do";
-    });
-    systems = [ "trivial-do" ];
-    lispLibs = [  ];
-  };
-  trivial-documentation = {
-    pname = "trivial-documentation";
-    version = "20161204-git";
-    asds = [ "trivial-documentation" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/trivial-documentation/2016-12-04/trivial-documentation-20161204-git.tgz";
-      sha256 = "0y90zi6kaw7226xc089dl47677fz594a5ck1ld8yggk9ww7cdaav";
-      system = "trivial-documentation";
-      asd = "trivial-documentation";
-    });
-    systems = [ "trivial-documentation" ];
-    lispLibs = [ (getAttr "closer-mop" pkgs) ];
-  };
-  trivial-documentation-test = {
-    pname = "trivial-documentation-test";
-    version = "20161204-git";
-    asds = [ "trivial-documentation-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/trivial-documentation/2016-12-04/trivial-documentation-20161204-git.tgz";
-      sha256 = "0y90zi6kaw7226xc089dl47677fz594a5ck1ld8yggk9ww7cdaav";
-      system = "trivial-documentation-test";
-      asd = "trivial-documentation-test";
-    });
-    systems = [ "trivial-documentation-test" ];
-    lispLibs = [ (getAttr "trivial-documentation" pkgs) ];
-  };
-  trivial-download = {
-    pname = "trivial-download";
-    version = "20200925-git";
-    asds = [ "trivial-download" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/trivial-download/2020-09-25/trivial-download-20200925-git.tgz";
-      sha256 = "06f46zr3gp3wlm2kgxna24qd2gpr1v89x9fynh1x5vrw6c6hqjcv";
-      system = "trivial-download";
-      asd = "trivial-download";
-    });
-    systems = [ "trivial-download" ];
-    lispLibs = [ (getAttr "drakma" pkgs) ];
-  };
-  trivial-dump-core = {
-    pname = "trivial-dump-core";
-    version = "20170227-git";
-    asds = [ "trivial-dump-core" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/trivial-dump-core/2017-02-27/trivial-dump-core-20170227-git.tgz";
-      sha256 = "08lnp84gbf3yd3gpnbjbl8jm9p42j3m4hf2f355l7lylb8kabxn8";
-      system = "trivial-dump-core";
-      asd = "trivial-dump-core";
-    });
-    systems = [ "trivial-dump-core" ];
-    lispLibs = [  ];
-  };
-  trivial-ed-functions = {
-    pname = "trivial-ed-functions";
-    version = "20210807-git";
-    asds = [ "trivial-ed-functions" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/trivial-ed-functions/2021-08-07/trivial-ed-functions-20210807-git.tgz";
-      sha256 = "05r8n4jjcg2lci5qrjwqz913wivckgk01ivjg1barpnm0nr29qn1";
-      system = "trivial-ed-functions";
-      asd = "trivial-ed-functions";
-    });
-    systems = [ "trivial-ed-functions" ];
-    lispLibs = [  ];
-  };
-  trivial-ed-functions_slash_test = {
-    pname = "trivial-ed-functions_test";
-    version = "20210807-git";
-    asds = [ "trivial-ed-functions" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/trivial-ed-functions/2021-08-07/trivial-ed-functions-20210807-git.tgz";
-      sha256 = "05r8n4jjcg2lci5qrjwqz913wivckgk01ivjg1barpnm0nr29qn1";
-      system = "trivial-ed-functions";
-      asd = "trivial-ed-functions";
-    });
-    systems = [ "trivial-ed-functions/test" ];
-    lispLibs = [ (getAttr "parachute" pkgs) (getAttr "trivial-ed-functions" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  trivial-escapes = {
-    pname = "trivial-escapes";
-    version = "20180228-git";
-    asds = [ "trivial-escapes" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/trivial-escapes/2018-02-28/trivial-escapes-20180228-git.tgz";
-      sha256 = "0v6h8lk17iqv1qkxgqjyzn8gi6v0hvq2vmfbb01md3zjvjqxn6lr";
-      system = "trivial-escapes";
-      asd = "trivial-escapes";
-    });
-    systems = [ "trivial-escapes" ];
-    lispLibs = [ (getAttr "named-readtables" pkgs) ];
-  };
-  trivial-escapes-test = {
-    pname = "trivial-escapes-test";
-    version = "20180228-git";
-    asds = [ "trivial-escapes-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/trivial-escapes/2018-02-28/trivial-escapes-20180228-git.tgz";
-      sha256 = "0v6h8lk17iqv1qkxgqjyzn8gi6v0hvq2vmfbb01md3zjvjqxn6lr";
-      system = "trivial-escapes-test";
-      asd = "trivial-escapes-test";
-    });
-    systems = [ "trivial-escapes-test" ];
-    lispLibs = [ (getAttr "fiveam" pkgs) (getAttr "trivial-escapes" pkgs) (getAttr "uiop" pkgs) ];
-  };
-  trivial-exe = {
-    pname = "trivial-exe";
-    version = "20151218-git";
-    asds = [ "trivial-exe" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/trivial-exe/2015-12-18/trivial-exe-20151218-git.tgz";
-      sha256 = "1ryn7gh3n057czj3hwq6lx7h25ipfjxsvddywpm2ngfdwywaqzvc";
-      system = "trivial-exe";
-      asd = "trivial-exe";
-    });
-    systems = [ "trivial-exe" ];
-    lispLibs = [ (getAttr "osicat" pkgs) (getAttr "uiop" pkgs) ];
-  };
-  trivial-exe-test = {
-    pname = "trivial-exe-test";
-    version = "20151218-git";
-    asds = [ "trivial-exe-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/trivial-exe/2015-12-18/trivial-exe-20151218-git.tgz";
-      sha256 = "1ryn7gh3n057czj3hwq6lx7h25ipfjxsvddywpm2ngfdwywaqzvc";
-      system = "trivial-exe-test";
-      asd = "trivial-exe-test";
-    });
-    systems = [ "trivial-exe-test" ];
-    lispLibs = [ (getAttr "fiveam" pkgs) (getAttr "trivial-exe" pkgs) ];
-  };
-  trivial-extensible-sequences = {
-    pname = "trivial-extensible-sequences";
-    version = "20221106-git";
-    asds = [ "trivial-extensible-sequences" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/trivial-extensible-sequences/2022-11-06/trivial-extensible-sequences-20221106-git.tgz";
-      sha256 = "0352psdd8j0phjycr6ldckwspyal4jcf0f2fizi6fwdp7nvadng7";
-      system = "trivial-extensible-sequences";
-      asd = "trivial-extensible-sequences";
-    });
-    systems = [ "trivial-extensible-sequences" ];
-    lispLibs = [  ];
-  };
-  trivial-extract = {
-    pname = "trivial-extract";
-    version = "20160421-git";
-    asds = [ "trivial-extract" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/trivial-extract/2016-04-21/trivial-extract-20160421-git.tgz";
-      sha256 = "0083x71f4x6b64wd8ywgaiqi0ygmdhl5rv101jcv44l3l61839sx";
-      system = "trivial-extract";
-      asd = "trivial-extract";
-    });
-    systems = [ "trivial-extract" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "archive" pkgs) (getAttr "cl-fad" pkgs) (getAttr "deflate" pkgs) (getAttr "uiop" pkgs) (getAttr "which" pkgs) (getAttr "zip" pkgs) ];
-  };
-  trivial-extract-test = {
-    pname = "trivial-extract-test";
-    version = "20160421-git";
-    asds = [ "trivial-extract-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/trivial-extract/2016-04-21/trivial-extract-20160421-git.tgz";
-      sha256 = "0083x71f4x6b64wd8ywgaiqi0ygmdhl5rv101jcv44l3l61839sx";
-      system = "trivial-extract-test";
-      asd = "trivial-extract-test";
-    });
-    systems = [ "trivial-extract-test" ];
-    lispLibs = [ (getAttr "fiveam" pkgs) (getAttr "trivial-extract" pkgs) ];
-  };
-  trivial-features = {
-    pname = "trivial-features";
-    version = "20211209-git";
-    asds = [ "trivial-features" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/trivial-features/2021-12-09/trivial-features-20211209-git.tgz";
-      sha256 = "0v3kvkz91zmc1y71xg0w08dwljrjngv375m14rypxi65ym1kabmk";
-      system = "trivial-features";
-      asd = "trivial-features";
-    });
-    systems = [ "trivial-features" ];
-    lispLibs = [  ];
-  };
-  trivial-features-tests = {
-    pname = "trivial-features-tests";
-    version = "20211209-git";
-    asds = [ "trivial-features-tests" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/trivial-features/2021-12-09/trivial-features-20211209-git.tgz";
-      sha256 = "0v3kvkz91zmc1y71xg0w08dwljrjngv375m14rypxi65ym1kabmk";
-      system = "trivial-features-tests";
-      asd = "trivial-features-tests";
-    });
-    systems = [ "trivial-features-tests" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cffi" pkgs) (getAttr "cffi-grovel" pkgs) (getAttr "rt" pkgs) (getAttr "trivial-features" pkgs) ];
-  };
-  trivial-file-size = {
-    pname = "trivial-file-size";
-    version = "20221106-git";
-    asds = [ "trivial-file-size" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/trivial-file-size/2022-11-06/trivial-file-size-20221106-git.tgz";
-      sha256 = "0ji5j3zgshmfgxwg2yh599r47zaivzky646zk12jg48sb3i7q8fw";
-      system = "trivial-file-size";
-      asd = "trivial-file-size";
-    });
-    systems = [ "trivial-file-size" ];
-    lispLibs = [ (getAttr "uiop" pkgs) ];
-  };
-  trivial-file-size_slash_tests = {
-    pname = "trivial-file-size_tests";
-    version = "20221106-git";
-    asds = [ "trivial-file-size" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/trivial-file-size/2022-11-06/trivial-file-size-20221106-git.tgz";
-      sha256 = "0ji5j3zgshmfgxwg2yh599r47zaivzky646zk12jg48sb3i7q8fw";
-      system = "trivial-file-size";
-      asd = "trivial-file-size";
-    });
-    systems = [ "trivial-file-size/tests" ];
-    lispLibs = [ (getAttr "fiveam" pkgs) (getAttr "trivial-file-size" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  trivial-garbage = {
-    pname = "trivial-garbage";
-    version = "20211230-git";
-    asds = [ "trivial-garbage" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/trivial-garbage/2021-12-30/trivial-garbage-20211230-git.tgz";
-      sha256 = "1kmx5kdl4zfa8cfdjyi75z43fqzxvywavwg1s8fl5zxpflfdj8h8";
-      system = "trivial-garbage";
-      asd = "trivial-garbage";
-    });
-    systems = [ "trivial-garbage" ];
-    lispLibs = [  ];
-  };
-  trivial-garbage_slash_tests = {
-    pname = "trivial-garbage_tests";
-    version = "20211230-git";
-    asds = [ "trivial-garbage" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/trivial-garbage/2021-12-30/trivial-garbage-20211230-git.tgz";
-      sha256 = "1kmx5kdl4zfa8cfdjyi75z43fqzxvywavwg1s8fl5zxpflfdj8h8";
-      system = "trivial-garbage";
-      asd = "trivial-garbage";
-    });
-    systems = [ "trivial-garbage/tests" ];
-    lispLibs = [ (getAttr "rt" pkgs) (getAttr "trivial-garbage" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  trivial-gray-streams = {
-    pname = "trivial-gray-streams";
-    version = "20210124-git";
-    asds = [ "trivial-gray-streams" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/trivial-gray-streams/2021-01-24/trivial-gray-streams-20210124-git.tgz";
-      sha256 = "1hipqwwd5ylskybd173rvlsk7ds4w4nq1cmh9952ivm6dgh7pwzn";
-      system = "trivial-gray-streams";
-      asd = "trivial-gray-streams";
-    });
-    systems = [ "trivial-gray-streams" ];
-    lispLibs = [  ];
-  };
-  trivial-gray-streams-test = {
-    pname = "trivial-gray-streams-test";
-    version = "20210124-git";
-    asds = [ "trivial-gray-streams-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/trivial-gray-streams/2021-01-24/trivial-gray-streams-20210124-git.tgz";
-      sha256 = "1hipqwwd5ylskybd173rvlsk7ds4w4nq1cmh9952ivm6dgh7pwzn";
-      system = "trivial-gray-streams-test";
-      asd = "trivial-gray-streams-test";
-    });
-    systems = [ "trivial-gray-streams-test" ];
-    lispLibs = [ (getAttr "trivial-gray-streams" pkgs) ];
-  };
-  trivial-hashtable-serialize = {
-    pname = "trivial-hashtable-serialize";
-    version = "20191007-git";
-    asds = [ "trivial-hashtable-serialize" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/trivial-hashtable-serialize/2019-10-07/trivial-hashtable-serialize-20191007-git.tgz";
-      sha256 = "06xdci47h6rpfkmrf7p9kd217jbkmkmf90ygqcmkkgf3sv5623bh";
-      system = "trivial-hashtable-serialize";
-      asd = "trivial-hashtable-serialize";
-    });
-    systems = [ "trivial-hashtable-serialize" ];
-    lispLibs = [ (getAttr "split-sequence" pkgs) ];
-  };
-  trivial-http = {
-    pname = "trivial-http";
-    version = "20110219-http";
-    asds = [ "trivial-http" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/trivial-http/2011-02-19/trivial-http-20110219-http.tgz";
-      sha256 = "06mrh2bjzhfdzi48dnq0bhl2cac4v41aqck53rfm4rnsygcjsn78";
-      system = "trivial-http";
-      asd = "trivial-http";
-    });
-    systems = [ "trivial-http" ];
-    lispLibs = [ (getAttr "usocket" pkgs) ];
-  };
-  trivial-http-test = {
-    pname = "trivial-http-test";
-    version = "20110219-http";
-    asds = [ "trivial-http-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/trivial-http/2011-02-19/trivial-http-20110219-http.tgz";
-      sha256 = "06mrh2bjzhfdzi48dnq0bhl2cac4v41aqck53rfm4rnsygcjsn78";
-      system = "trivial-http-test";
-      asd = "trivial-http-test";
-    });
-    systems = [ "trivial-http-test" ];
-    lispLibs = [ (getAttr "lift" pkgs) (getAttr "trivial-http" pkgs) ];
-  };
-  trivial-indent = {
-    pname = "trivial-indent";
-    version = "20210531-git";
-    asds = [ "trivial-indent" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/trivial-indent/2021-05-31/trivial-indent-20210531-git.tgz";
-      sha256 = "0j8ip54v0w49hi8y3cd52r4ayy3fz8zqsm6jl88xwa6v3lh05rhv";
-      system = "trivial-indent";
-      asd = "trivial-indent";
-    });
-    systems = [ "trivial-indent" ];
-    lispLibs = [  ];
-  };
-  trivial-inspector-hook = {
-    pname = "trivial-inspector-hook";
-    version = "20210807-git";
-    asds = [ "trivial-inspector-hook" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/trivial-inspector-hook/2021-08-07/trivial-inspector-hook-20210807-git.tgz";
-      sha256 = "0h9m1ps5sqgrr171czj6rq84wpy2xvggfzspvy667xsldv4xi0c2";
-      system = "trivial-inspector-hook";
-      asd = "trivial-inspector-hook";
-    });
-    systems = [ "trivial-inspector-hook" ];
-    lispLibs = [  ];
-  };
-  trivial-irc = {
-    pname = "trivial-irc";
-    version = "20171019-git";
-    asds = [ "trivial-irc" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/trivial-irc/2017-10-19/trivial-irc-20171019-git.tgz";
-      sha256 = "0jjgx6ld2gcr0w0g5k62dr0rl6202ydih6ylmypv6m5jmrarcbza";
-      system = "trivial-irc";
-      asd = "trivial-irc";
-    });
-    systems = [ "trivial-irc" ];
-    lispLibs = [ (getAttr "cl-ppcre" pkgs) (getAttr "split-sequence" pkgs) (getAttr "usocket" pkgs) ];
-  };
-  trivial-irc-echobot = {
-    pname = "trivial-irc-echobot";
-    version = "20171019-git";
-    asds = [ "trivial-irc-echobot" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/trivial-irc/2017-10-19/trivial-irc-20171019-git.tgz";
-      sha256 = "0jjgx6ld2gcr0w0g5k62dr0rl6202ydih6ylmypv6m5jmrarcbza";
-      system = "trivial-irc-echobot";
-      asd = "trivial-irc-echobot";
-    });
-    systems = [ "trivial-irc-echobot" ];
-    lispLibs = [ (getAttr "trivial-irc" pkgs) ];
-  };
-  trivial-json-codec = {
-    pname = "trivial-json-codec";
-    version = "20220707-git";
-    asds = [ "trivial-json-codec" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/trivial-json-codec/2022-07-07/trivial-json-codec-20220707-git.tgz";
-      sha256 = "1k0nnsn3nsb83gzmkrf81zqz6ydn21gzfq96r2d5690v5zkrg1kg";
-      system = "trivial-json-codec";
-      asd = "trivial-json-codec";
-    });
-    systems = [ "trivial-json-codec" ];
-    lispLibs = [ (getAttr "closer-mop" pkgs) (getAttr "iterate" pkgs) (getAttr "log4cl" pkgs) (getAttr "parse-number" pkgs) (getAttr "trivial-utilities" pkgs) ];
-  };
-  trivial-jumptables = {
-    pname = "trivial-jumptables";
-    version = "1.1";
-    asds = [ "trivial-jumptables" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/trivial-jumptables/2019-11-30/trivial-jumptables_1.1.tgz";
-      sha256 = "10ih84hkscj0l4ki3s196d9b85iil8f56ps5r8ng222i0lln1ni9";
-      system = "trivial-jumptables";
-      asd = "trivial-jumptables";
-    });
-    systems = [ "trivial-jumptables" ];
-    lispLibs = [  ];
-  };
-  trivial-jumptables_tests = {
-    pname = "trivial-jumptables_tests";
-    version = "1.1";
-    asds = [ "trivial-jumptables_tests" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/trivial-jumptables/2019-11-30/trivial-jumptables_1.1.tgz";
-      sha256 = "10ih84hkscj0l4ki3s196d9b85iil8f56ps5r8ng222i0lln1ni9";
-      system = "trivial-jumptables_tests";
-      asd = "trivial-jumptables_tests";
-    });
-    systems = [ "trivial-jumptables_tests" ];
-    lispLibs = [ (getAttr "bubble-operator-upwards" pkgs) (getAttr "parachute" pkgs) (getAttr "trivial-jumptables" pkgs) ];
-  };
-  trivial-lazy = {
-    pname = "trivial-lazy";
-    version = "20150709-git";
-    asds = [ "trivial-lazy" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/trivial-lazy/2015-07-09/trivial-lazy-20150709-git.tgz";
-      sha256 = "0fnsz2kdb0v5cz4xl5a2c1szcif7jmnkxhbzvk6lrhzjccgyhjc7";
-      system = "trivial-lazy";
-      asd = "trivial-lazy";
-    });
-    systems = [ "trivial-lazy" ];
-    lispLibs = [ (getAttr "bordeaux-threads" pkgs) ];
-  };
-  trivial-ldap = {
-    pname = "trivial-ldap";
-    version = "20180711-git";
-    asds = [ "trivial-ldap" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/trivial-ldap/2018-07-11/trivial-ldap-20180711-git.tgz";
-      sha256 = "1zaa4wnk5y5ff211pkg6dl27j4pjwh56hq0246slxsdxv6kvp1z9";
-      system = "trivial-ldap";
-      asd = "trivial-ldap";
-    });
-    systems = [ "trivial-ldap" ];
-    lispLibs = [ (getAttr "cl_plus_ssl" pkgs) (getAttr "yacc" pkgs) (getAttr "usocket" pkgs) ];
-  };
-  trivial-left-pad = {
-    pname = "trivial-left-pad";
-    version = "20190813-git";
-    asds = [ "trivial-left-pad" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/trivial-left-pad/2019-08-13/trivial-left-pad-20190813-git.tgz";
-      sha256 = "0q68j0x0x3z8rl577jsl3y0s3x5xiqv54sla6kds43q7821qfnwk";
-      system = "trivial-left-pad";
-      asd = "trivial-left-pad";
-    });
-    systems = [ "trivial-left-pad" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "prove-asdf" pkgs) ];
-  };
-  trivial-left-pad-test = {
-    pname = "trivial-left-pad-test";
-    version = "20190813-git";
-    asds = [ "trivial-left-pad-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/trivial-left-pad/2019-08-13/trivial-left-pad-20190813-git.tgz";
-      sha256 = "0q68j0x0x3z8rl577jsl3y0s3x5xiqv54sla6kds43q7821qfnwk";
-      system = "trivial-left-pad-test";
-      asd = "trivial-left-pad";
-    });
-    systems = [ "trivial-left-pad-test" ];
-    lispLibs = [ (getAttr "prove" pkgs) (getAttr "prove-asdf" pkgs) (getAttr "trivial-left-pad" pkgs) ];
-  };
-  trivial-macroexpand-all = {
-    pname = "trivial-macroexpand-all";
-    version = "20171023-git";
-    asds = [ "trivial-macroexpand-all" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/trivial-macroexpand-all/2017-10-23/trivial-macroexpand-all-20171023-git.tgz";
-      sha256 = "191hnn4b5j4i3crydmlzbm231kj0h7l8zj6mzj69r1npbzkas4bd";
-      system = "trivial-macroexpand-all";
-      asd = "trivial-macroexpand-all";
-    });
-    systems = [ "trivial-macroexpand-all" ];
-    lispLibs = [  ];
-  };
-  trivial-main-thread = {
-    pname = "trivial-main-thread";
-    version = "20190710-git";
-    asds = [ "trivial-main-thread" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/trivial-main-thread/2019-07-10/trivial-main-thread-20190710-git.tgz";
-      sha256 = "0bw1887i7396lqg75qvmgjfzz4xbiq9w5dp8wxdgrcsm0qwlraw7";
-      system = "trivial-main-thread";
-      asd = "trivial-main-thread";
-    });
-    systems = [ "trivial-main-thread" ];
-    lispLibs = [ (getAttr "bordeaux-threads" pkgs) (getAttr "simple-tasks" pkgs) (getAttr "trivial-features" pkgs) ];
-  };
-  trivial-method-combinations = {
-    pname = "trivial-method-combinations";
-    version = "20191130-git";
-    asds = [ "trivial-method-combinations" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/trivial-method-combinations/2019-11-30/trivial-method-combinations-20191130-git.tgz";
-      sha256 = "0w9w8bj835sfp797rdm7b5crpnz0xrz2q5vgbzm2p9n9jskxnxnv";
-      system = "trivial-method-combinations";
-      asd = "trivial-method-combinations";
-    });
-    systems = [ "trivial-method-combinations" ];
-    lispLibs = [ (getAttr "closer-mop" pkgs) ];
-  };
-  trivial-mimes = {
-    pname = "trivial-mimes";
-    version = "20221106-git";
-    asds = [ "trivial-mimes" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/trivial-mimes/2022-11-06/trivial-mimes-20221106-git.tgz";
-      sha256 = "0dv76zsf701wapm0sw0hj074v8wjiynn700ri2sgkf5zbdwrza7h";
-      system = "trivial-mimes";
-      asd = "trivial-mimes";
-    });
-    systems = [ "trivial-mimes" ];
-    lispLibs = [  ];
-  };
-  trivial-mmap = {
-    pname = "trivial-mmap";
-    version = "20210124-git";
-    asds = [ "trivial-mmap" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/trivial-mmap/2021-01-24/trivial-mmap-20210124-git.tgz";
-      sha256 = "1ckhd7b0ll9xcmwdh42g0v38grk2acs3kv66k1gwh539f99kzcps";
-      system = "trivial-mmap";
-      asd = "trivial-mmap";
-    });
-    systems = [ "trivial-mmap" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "osicat" pkgs) ];
-  };
-  trivial-monitored-thread = {
-    pname = "trivial-monitored-thread";
-    version = "20220707-git";
-    asds = [ "trivial-monitored-thread" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/trivial-monitored-thread/2022-07-07/trivial-monitored-thread-20220707-git.tgz";
-      sha256 = "1vmhc5id0qk5yh8az4j1znqc73r18pygmrnfxmwwndh1a9yf98z4";
-      system = "trivial-monitored-thread";
-      asd = "trivial-monitored-thread";
-    });
-    systems = [ "trivial-monitored-thread" ];
-    lispLibs = [ (getAttr "iterate" pkgs) (getAttr "log4cl" pkgs) (getAttr "trivial-utilities" pkgs) ];
-  };
-  trivial-monitored-thread_slash_test = {
-    pname = "trivial-monitored-thread_test";
-    version = "20220707-git";
-    asds = [ "trivial-monitored-thread" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/trivial-monitored-thread/2022-07-07/trivial-monitored-thread-20220707-git.tgz";
-      sha256 = "1vmhc5id0qk5yh8az4j1znqc73r18pygmrnfxmwwndh1a9yf98z4";
-      system = "trivial-monitored-thread";
-      asd = "trivial-monitored-thread";
-    });
-    systems = [ "trivial-monitored-thread/test" ];
-    lispLibs = [ (getAttr "fiveam" pkgs) (getAttr "trivial-monitored-thread" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  trivial-msi = {
-    pname = "trivial-msi";
-    version = "20160208-git";
-    asds = [ "trivial-msi" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/trivial-msi/2016-02-08/trivial-msi-20160208-git.tgz";
-      sha256 = "1mbpwnsvv30gf7z8m96kv8933s6csg4q0frx03vazp4ckplwff8w";
-      system = "trivial-msi";
-      asd = "trivial-msi";
-    });
-    systems = [ "trivial-msi" ];
-    lispLibs = [ (getAttr "uiop" pkgs) ];
-  };
-  trivial-msi-test = {
-    pname = "trivial-msi-test";
-    version = "20160208-git";
-    asds = [ "trivial-msi-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/trivial-msi/2016-02-08/trivial-msi-20160208-git.tgz";
-      sha256 = "1mbpwnsvv30gf7z8m96kv8933s6csg4q0frx03vazp4ckplwff8w";
-      system = "trivial-msi-test";
-      asd = "trivial-msi-test";
-    });
-    systems = [ "trivial-msi-test" ];
-    lispLibs = [ (getAttr "fiveam" pkgs) (getAttr "trivial-msi" pkgs) ];
-  };
-  trivial-nntp = {
-    pname = "trivial-nntp";
-    version = "20161204-git";
-    asds = [ "trivial-nntp" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/trivial-nntp/2016-12-04/trivial-nntp-20161204-git.tgz";
-      sha256 = "0ywwrjx4vaz117zaxqhk2b4xrb75cw1ac5xir9zhvgzkyl6wf867";
-      system = "trivial-nntp";
-      asd = "trivial-nntp";
-    });
-    systems = [ "trivial-nntp" ];
-    lispLibs = [ (getAttr "cl_plus_ssl" pkgs) (getAttr "usocket" pkgs) ];
-  };
-  trivial-object-lock = {
-    pname = "trivial-object-lock";
-    version = "20220707-git";
-    asds = [ "trivial-object-lock" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/trivial-object-lock/2022-07-07/trivial-object-lock-20220707-git.tgz";
-      sha256 = "18xwwgvshib4l2bs6m16mk0kzdp40482yf7v72nzk13v0bgnw91s";
-      system = "trivial-object-lock";
-      asd = "trivial-object-lock";
-    });
-    systems = [ "trivial-object-lock" ];
-    lispLibs = [ (getAttr "bordeaux-threads" pkgs) (getAttr "iterate" pkgs) (getAttr "log4cl" pkgs) (getAttr "trivial-utilities" pkgs) ];
-  };
-  trivial-object-lock_slash_test = {
-    pname = "trivial-object-lock_test";
-    version = "20220707-git";
-    asds = [ "trivial-object-lock" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/trivial-object-lock/2022-07-07/trivial-object-lock-20220707-git.tgz";
-      sha256 = "18xwwgvshib4l2bs6m16mk0kzdp40482yf7v72nzk13v0bgnw91s";
-      system = "trivial-object-lock";
-      asd = "trivial-object-lock";
-    });
-    systems = [ "trivial-object-lock/test" ];
-    lispLibs = [ (getAttr "fiveam" pkgs) (getAttr "trivial-object-lock" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  trivial-octet-streams = {
-    pname = "trivial-octet-streams";
-    version = "20130128-git";
-    asds = [ "trivial-octet-streams" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/trivial-octet-streams/2013-01-28/trivial-octet-streams-20130128-git.tgz";
-      sha256 = "0ysnsarlzynb7jf4b63b6kkxjancxc66jwmn0sb3vxyh87siiv6n";
-      system = "trivial-octet-streams";
-      asd = "trivial-octet-streams";
-    });
-    systems = [ "trivial-octet-streams" ];
-    lispLibs = [  ];
-  };
-  trivial-open-browser = {
-    pname = "trivial-open-browser";
-    version = "20160825-git";
-    asds = [ "trivial-open-browser" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/trivial-open-browser/2016-08-25/trivial-open-browser-20160825-git.tgz";
-      sha256 = "0ixay1piq420i6adx642qhw45l6ik7rvgk52lyz27dvx5f8yqsdb";
-      system = "trivial-open-browser";
-      asd = "trivial-open-browser";
-    });
-    systems = [ "trivial-open-browser" ];
-    lispLibs = [ (getAttr "uiop" pkgs) ];
-  };
-  trivial-openstack = {
-    pname = "trivial-openstack";
-    version = "20160628-git";
-    asds = [ "trivial-openstack" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/trivial-openstack/2016-06-28/trivial-openstack-20160628-git.tgz";
-      sha256 = "0sdc6rhjqv1i7wknn44jg5xxnz70087bhfslh0izggny9d9s015i";
-      system = "trivial-openstack";
-      asd = "trivial-openstack";
-    });
-    systems = [ "trivial-openstack" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "drakma" pkgs) (getAttr "local-time" pkgs) (getAttr "st-json" pkgs) ];
-  };
-  trivial-openstack-test = {
-    pname = "trivial-openstack-test";
-    version = "20160628-git";
-    asds = [ "trivial-openstack-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/trivial-openstack/2016-06-28/trivial-openstack-20160628-git.tgz";
-      sha256 = "0sdc6rhjqv1i7wknn44jg5xxnz70087bhfslh0izggny9d9s015i";
-      system = "trivial-openstack-test";
-      asd = "trivial-openstack-test";
-    });
-    systems = [ "trivial-openstack-test" ];
-    lispLibs = [ (getAttr "fiveam" pkgs) (getAttr "hunchentoot" pkgs) (getAttr "local-time" pkgs) (getAttr "st-json" pkgs) (getAttr "trivial-openstack" pkgs) (getAttr "uri-template" pkgs) ];
-  };
-  trivial-package-local-nicknames = {
-    pname = "trivial-package-local-nicknames";
-    version = "20220220-git";
-    asds = [ "trivial-package-local-nicknames" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/trivial-package-local-nicknames/2022-02-20/trivial-package-local-nicknames-20220220-git.tgz";
-      sha256 = "0p80s474czfqh7phd4qq5yjcy8q2160vxmn8pi6qlkqgdd7ix37r";
-      system = "trivial-package-local-nicknames";
-      asd = "trivial-package-local-nicknames";
-    });
-    systems = [ "trivial-package-local-nicknames" ];
-    lispLibs = [  ];
-  };
-  trivial-package-locks = {
-    pname = "trivial-package-locks";
-    version = "20211230-git";
-    asds = [ "trivial-package-locks" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/trivial-package-locks/2021-12-30/trivial-package-locks-20211230-git.tgz";
-      sha256 = "15wnz095mc4hvgrb5dipdvlkm3gl17f3ip333c61cn00f5lc4pq6";
-      system = "trivial-package-locks";
-      asd = "trivial-package-locks";
-    });
-    systems = [ "trivial-package-locks" ];
-    lispLibs = [  ];
-  };
-  trivial-package-locks_slash_test = {
-    pname = "trivial-package-locks_test";
-    version = "20211230-git";
-    asds = [ "trivial-package-locks" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/trivial-package-locks/2021-12-30/trivial-package-locks-20211230-git.tgz";
-      sha256 = "15wnz095mc4hvgrb5dipdvlkm3gl17f3ip333c61cn00f5lc4pq6";
-      system = "trivial-package-locks";
-      asd = "trivial-package-locks";
-    });
-    systems = [ "trivial-package-locks/test" ];
-    lispLibs = [ (getAttr "parachute" pkgs) (getAttr "trivial-package-locks" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  trivial-package-manager = {
-    pname = "trivial-package-manager";
-    version = "20171227-git";
-    asds = [ "trivial-package-manager" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/trivial-package-manager/2017-12-27/trivial-package-manager-20171227-git.tgz";
-      sha256 = "0v61x4wzamilnjyq35ki46zl9443fslv9slwqwlazfknnbp3vcq8";
-      system = "trivial-package-manager";
-      asd = "trivial-package-manager";
-    });
-    systems = [ "trivial-package-manager" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "trivial-features" pkgs) (getAttr "trivial-open-browser" pkgs) ];
-  };
-  trivial-package-manager_dot_test = {
-    pname = "trivial-package-manager.test";
-    version = "20171227-git";
-    asds = [ "trivial-package-manager.test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/trivial-package-manager/2017-12-27/trivial-package-manager-20171227-git.tgz";
-      sha256 = "0v61x4wzamilnjyq35ki46zl9443fslv9slwqwlazfknnbp3vcq8";
-      system = "trivial-package-manager.test";
-      asd = "trivial-package-manager.test";
-    });
-    systems = [ "trivial-package-manager.test" ];
-    lispLibs = [ (getAttr "fiveam" pkgs) (getAttr "trivial-package-manager" pkgs) ];
-  };
-  trivial-pooled-database = {
-    pname = "trivial-pooled-database";
-    version = "20201220-git";
-    asds = [ "trivial-pooled-database" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/trivial-pooled-database/2020-12-20/trivial-pooled-database-20201220-git.tgz";
-      sha256 = "0a7c8bjl13k37b83lksklcw9sch570wgqv58cgs0dw9jcmsihqmx";
-      system = "trivial-pooled-database";
-      asd = "trivial-pooled-database";
-    });
-    systems = [ "trivial-pooled-database" ];
-    lispLibs = [ (getAttr "bordeaux-threads" pkgs) (getAttr "cl-dbi" pkgs) (getAttr "iterate" pkgs) (getAttr "log4cl" pkgs) (getAttr "parse-number" pkgs) (getAttr "trivial-object-lock" pkgs) (getAttr "trivial-utilities" pkgs) ];
-  };
-  trivial-project = {
-    pname = "trivial-project";
-    version = "quicklisp-9e3fe231-git";
-    asds = [ "trivial-project" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/trivial-project/2017-08-30/trivial-project-quicklisp-9e3fe231-git.tgz";
-      sha256 = "1s5h0fgs0rq00j492xln716w9i52v90rnfcr0idjzyimicx7hk22";
-      system = "trivial-project";
-      asd = "trivial-project";
-    });
-    systems = [ "trivial-project" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cl-ppcre" pkgs) ];
-  };
-  trivial-raw-io = {
-    pname = "trivial-raw-io";
-    version = "20141217-git";
-    asds = [ "trivial-raw-io" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/trivial-raw-io/2014-12-17/trivial-raw-io-20141217-git.tgz";
-      sha256 = "19290zw2b64k78wr62gv30pp7cmqg07q85vfwjknaffjdd73xwi1";
-      system = "trivial-raw-io";
-      asd = "trivial-raw-io";
-    });
-    systems = [ "trivial-raw-io" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) ];
-  };
-  trivial-renamer = {
-    pname = "trivial-renamer";
-    version = "quicklisp-1282597d-git";
-    asds = [ "trivial-renamer" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/trivial-renamer/2017-08-30/trivial-renamer-quicklisp-1282597d-git.tgz";
-      sha256 = "1nlgsayx4iw6gskg0d5vc823p0lmh414k9jiccvcsk1r17684mp8";
-      system = "trivial-renamer";
-      asd = "trivial-renamer";
-    });
-    systems = [ "trivial-renamer" ];
-    lispLibs = [ (getAttr "cl-ppcre" pkgs) ];
-  };
-  trivial-rfc-1123 = {
-    pname = "trivial-rfc-1123";
-    version = "20220707-git";
-    asds = [ "trivial-rfc-1123" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/trivial-rfc-1123/2022-07-07/trivial-rfc-1123-20220707-git.tgz";
-      sha256 = "1w4ywpj10fnp7cya62dzlxlg8nyk4lppn2pnmfixsndwr4ib1h6x";
-      system = "trivial-rfc-1123";
-      asd = "trivial-rfc-1123";
-    });
-    systems = [ "trivial-rfc-1123" ];
-    lispLibs = [ (getAttr "cl-ppcre" pkgs) ];
-  };
-  trivial-sanitize = {
-    pname = "trivial-sanitize";
-    version = "20221106-git";
-    asds = [ "trivial-sanitize" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/trivial-sanitize/2022-11-06/trivial-sanitize-20221106-git.tgz";
-      sha256 = "1pv36ywkqcck1vrxdwhlwjw80qkzbr6aqwyrghfng6qfc90r05f6";
-      system = "trivial-sanitize";
-      asd = "trivial-sanitize";
-    });
-    systems = [ "trivial-sanitize" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cl-html5-parser" pkgs) (getAttr "cl-ppcre-unicode" pkgs) (getAttr "uiop" pkgs) ];
-  };
-  trivial-sanitize-tests = {
-    pname = "trivial-sanitize-tests";
-    version = "20221106-git";
-    asds = [ "trivial-sanitize-tests" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/trivial-sanitize/2022-11-06/trivial-sanitize-20221106-git.tgz";
-      sha256 = "1pv36ywkqcck1vrxdwhlwjw80qkzbr6aqwyrghfng6qfc90r05f6";
-      system = "trivial-sanitize-tests";
-      asd = "trivial-sanitize-tests";
-    });
-    systems = [ "trivial-sanitize-tests" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "clunit2" pkgs) (getAttr "trivial-sanitize" pkgs) (getAttr "uiop" pkgs) ];
-  };
-  trivial-shell = {
-    pname = "trivial-shell";
-    version = "20180228-git";
-    asds = [ "trivial-shell" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/trivial-shell/2018-02-28/trivial-shell-20180228-git.tgz";
-      sha256 = "08mpkl5ij5sjfsyn8pq2kvsvpvyvr7ha1r8g1224fa667b8k2q85";
-      system = "trivial-shell";
-      asd = "trivial-shell";
-    });
-    systems = [ "trivial-shell" ];
-    lispLibs = [  ];
-  };
-  trivial-shell-test = {
-    pname = "trivial-shell-test";
-    version = "20180228-git";
-    asds = [ "trivial-shell-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/trivial-shell/2018-02-28/trivial-shell-20180228-git.tgz";
-      sha256 = "08mpkl5ij5sjfsyn8pq2kvsvpvyvr7ha1r8g1224fa667b8k2q85";
-      system = "trivial-shell-test";
-      asd = "trivial-shell-test";
-    });
-    systems = [ "trivial-shell-test" ];
-    lispLibs = [ (getAttr "lift" pkgs) (getAttr "trivial-shell" pkgs) ];
-  };
-  trivial-signal = {
-    pname = "trivial-signal";
-    version = "20190710-git";
-    asds = [ "trivial-signal" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/trivial-signal/2019-07-10/trivial-signal-20190710-git.tgz";
-      sha256 = "13rh1jwh786xg235rkgqbdqga4b9jwn99zlxm0wr73rs2a5ga8ad";
-      system = "trivial-signal";
-      asd = "trivial-signal";
-    });
-    systems = [ "trivial-signal" ];
-    lispLibs = [ (getAttr "bordeaux-threads" pkgs) (getAttr "cffi" pkgs) (getAttr "cffi-grovel" pkgs) ];
-  };
-  trivial-sockets = {
-    pname = "trivial-sockets";
-    version = "20190107-git";
-    asds = [ "trivial-sockets" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/trivial-sockets/2019-01-07/trivial-sockets-20190107-git.tgz";
-      sha256 = "0xj9x5z3psxqap9c29qz1xswx5fiqxyzd35kmbw2g6z08cgb7nd0";
-      system = "trivial-sockets";
-      asd = "trivial-sockets";
-    });
-    systems = [ "trivial-sockets" ];
-    lispLibs = [  ];
-  };
-  trivial-ssh = {
-    pname = "trivial-ssh";
-    version = "20191130-git";
-    asds = [ "trivial-ssh" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/trivial-ssh/2019-11-30/trivial-ssh-20191130-git.tgz";
-      sha256 = "1hjd8bhbymq4s2jglid5i9m2b19cnf6c793gvkh6mawcjd37vjmb";
-      system = "trivial-ssh";
-      asd = "trivial-ssh";
-    });
-    systems = [ "trivial-ssh" ];
-    lispLibs = [ (getAttr "trivial-ssh-libssh2" pkgs) ];
-  };
-  trivial-ssh-libssh2 = {
-    pname = "trivial-ssh-libssh2";
-    version = "20191130-git";
-    asds = [ "trivial-ssh-libssh2" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/trivial-ssh/2019-11-30/trivial-ssh-20191130-git.tgz";
-      sha256 = "1hjd8bhbymq4s2jglid5i9m2b19cnf6c793gvkh6mawcjd37vjmb";
-      system = "trivial-ssh-libssh2";
-      asd = "trivial-ssh-libssh2";
-    });
-    systems = [ "trivial-ssh-libssh2" ];
-    lispLibs = [ (getAttr "babel" pkgs) (getAttr "cffi" pkgs) (getAttr "cffi-grovel" pkgs) (getAttr "cl-fad" pkgs) (getAttr "split-sequence" pkgs) (getAttr "trivial-gray-streams" pkgs) (getAttr "usocket" pkgs) ];
-  };
-  trivial-ssh-test = {
-    pname = "trivial-ssh-test";
-    version = "20191130-git";
-    asds = [ "trivial-ssh-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/trivial-ssh/2019-11-30/trivial-ssh-20191130-git.tgz";
-      sha256 = "1hjd8bhbymq4s2jglid5i9m2b19cnf6c793gvkh6mawcjd37vjmb";
-      system = "trivial-ssh-test";
-      asd = "trivial-ssh-test";
-    });
-    systems = [ "trivial-ssh-test" ];
-    lispLibs = [ (getAttr "fiveam" pkgs) (getAttr "trivial-ssh" pkgs) ];
-  };
-  trivial-string-template = {
-    pname = "trivial-string-template";
-    version = "20201220-git";
-    asds = [ "trivial-string-template" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/trivial-string-template/2020-12-20/trivial-string-template-20201220-git.tgz";
-      sha256 = "1g3hm2xkskzq3dgygxbny0f5wqcyv8f7wkdh473jkya9lq7c3jph";
-      system = "trivial-string-template";
-      asd = "trivial-string-template";
-    });
-    systems = [ "trivial-string-template" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cl-ppcre" pkgs) (getAttr "closer-mop" pkgs) (getAttr "proc-parse" pkgs) ];
-  };
-  trivial-string-template-test = {
-    pname = "trivial-string-template-test";
-    version = "20201220-git";
-    asds = [ "trivial-string-template-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/trivial-string-template/2020-12-20/trivial-string-template-20201220-git.tgz";
-      sha256 = "1g3hm2xkskzq3dgygxbny0f5wqcyv8f7wkdh473jkya9lq7c3jph";
-      system = "trivial-string-template-test";
-      asd = "trivial-string-template-test";
-    });
-    systems = [ "trivial-string-template-test" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "prove" pkgs) (getAttr "prove-asdf" pkgs) (getAttr "trivial-string-template" pkgs) ];
-  };
-  trivial-tco = {
-    pname = "trivial-tco";
-    version = "20131003-git";
-    asds = [ "trivial-tco" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/trivial-tco/2013-10-03/trivial-tco-20131003-git.tgz";
-      sha256 = "0j6mkchrk6bzkpdkrahagip9lxxr8rx3qj4547wg8bdqr7mm2nmi";
-      system = "trivial-tco";
-      asd = "trivial-tco";
-    });
-    systems = [ "trivial-tco" ];
-    lispLibs = [  ];
-  };
-  trivial-tco-test = {
-    pname = "trivial-tco-test";
-    version = "20131003-git";
-    asds = [ "trivial-tco-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/trivial-tco/2013-10-03/trivial-tco-20131003-git.tgz";
-      sha256 = "0j6mkchrk6bzkpdkrahagip9lxxr8rx3qj4547wg8bdqr7mm2nmi";
-      system = "trivial-tco-test";
-      asd = "trivial-tco-test";
-    });
-    systems = [ "trivial-tco-test" ];
-    lispLibs = [ (getAttr "clunit" pkgs) (getAttr "trivial-tco" pkgs) ];
-  };
-  trivial-thumbnail = {
-    pname = "trivial-thumbnail";
-    version = "20190710-git";
-    asds = [ "trivial-thumbnail" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/trivial-thumbnail/2019-07-10/trivial-thumbnail-20190710-git.tgz";
-      sha256 = "0d1jdfab1wrc3xfzhdbq7bgjwc78qb6gs1llyjsj4cq04yhlc57a";
-      system = "trivial-thumbnail";
-      asd = "trivial-thumbnail";
-    });
-    systems = [ "trivial-thumbnail" ];
-    lispLibs = [ (getAttr "uiop" pkgs) ];
-  };
-  trivial-timeout = {
-    pname = "trivial-timeout";
-    version = "20211209-git";
-    asds = [ "trivial-timeout" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/trivial-timeout/2021-12-09/trivial-timeout-20211209-git.tgz";
-      sha256 = "0nzsb4pbk1ia49v50dmbsdc6svmiy1k9zqr9ri1nkfy01zhdvg07";
-      system = "trivial-timeout";
-      asd = "trivial-timeout";
-    });
-    systems = [ "trivial-timeout" ];
-    lispLibs = [  ];
-  };
-  trivial-timer = {
-    pname = "trivial-timer";
-    version = "20210531-git";
-    asds = [ "trivial-timer" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/trivial-timer/2021-05-31/trivial-timer-20210531-git.tgz";
-      sha256 = "1b8pnw613h1dngzmv3qglmfrl1jdjbxrsbqnh7rfdj0lnv43h1il";
-      system = "trivial-timer";
-      asd = "trivial-timer";
-    });
-    systems = [ "trivial-timer" ];
-    lispLibs = [ (getAttr "bordeaux-threads" pkgs) (getAttr "chanl" pkgs) (getAttr "iterate" pkgs) (getAttr "log4cl" pkgs) (getAttr "trivial-utilities" pkgs) ];
-  };
-  trivial-timer_slash_test = {
-    pname = "trivial-timer_test";
-    version = "20210531-git";
-    asds = [ "trivial-timer" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/trivial-timer/2021-05-31/trivial-timer-20210531-git.tgz";
-      sha256 = "1b8pnw613h1dngzmv3qglmfrl1jdjbxrsbqnh7rfdj0lnv43h1il";
-      system = "trivial-timer";
-      asd = "trivial-timer";
-    });
-    systems = [ "trivial-timer/test" ];
-    lispLibs = [ (getAttr "fiveam" pkgs) (getAttr "trivial-timer" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  trivial-types = {
-    pname = "trivial-types";
-    version = "20120407-git";
-    asds = [ "trivial-types" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/trivial-types/2012-04-07/trivial-types-20120407-git.tgz";
-      sha256 = "1s4cp9bdlbn8447q7w7f1wkgwrbvfzp20mgs307l5pxvdslin341";
-      system = "trivial-types";
-      asd = "trivial-types";
-    });
-    systems = [ "trivial-types" ];
-    lispLibs = [  ];
-  };
-  trivial-update = {
-    pname = "trivial-update";
-    version = "20180131-git";
-    asds = [ "trivial-update" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/trivial-update/2018-01-31/trivial-update-20180131-git.tgz";
-      sha256 = "0dpijh9alljk0jmnkp37hfliylscs7xwvlmjkfshizmyh0qjjxir";
-      system = "trivial-update";
-      asd = "trivial-update";
-    });
-    systems = [ "trivial-update" ];
-    lispLibs = [  ];
-  };
-  trivial-utf-8 = {
-    pname = "trivial-utf-8";
-    version = "20220220-git";
-    asds = [ "trivial-utf-8" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/trivial-utf-8/2022-02-20/trivial-utf-8-20220220-git.tgz";
-      sha256 = "0gzgbyzbbhny5y1lq2x82vfy4b4p1snq1sy9lj82hdq7lkyj03ss";
-      system = "trivial-utf-8";
-      asd = "trivial-utf-8";
-    });
-    systems = [ "trivial-utf-8" ];
-    lispLibs = [  ];
-  };
-  trivial-utf-8_slash_doc = {
-    pname = "trivial-utf-8_doc";
-    version = "20220220-git";
-    asds = [ "trivial-utf-8" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/trivial-utf-8/2022-02-20/trivial-utf-8-20220220-git.tgz";
-      sha256 = "0gzgbyzbbhny5y1lq2x82vfy4b4p1snq1sy9lj82hdq7lkyj03ss";
-      system = "trivial-utf-8";
-      asd = "trivial-utf-8";
-    });
-    systems = [ "trivial-utf-8/doc" ];
-    lispLibs = [ (getAttr "mgl-pax" pkgs) (getAttr "trivial-utf-8" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  trivial-utf-8_slash_tests = {
-    pname = "trivial-utf-8_tests";
-    version = "20220220-git";
-    asds = [ "trivial-utf-8" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/trivial-utf-8/2022-02-20/trivial-utf-8-20220220-git.tgz";
-      sha256 = "0gzgbyzbbhny5y1lq2x82vfy4b4p1snq1sy9lj82hdq7lkyj03ss";
-      system = "trivial-utf-8";
-      asd = "trivial-utf-8";
-    });
-    systems = [ "trivial-utf-8/tests" ];
-    lispLibs = [ (getAttr "trivial-utf-8" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  trivial-utilities = {
-    pname = "trivial-utilities";
-    version = "20220707-git";
-    asds = [ "trivial-utilities" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/trivial-utilities/2022-07-07/trivial-utilities-20220707-git.tgz";
-      sha256 = "0k1xmn5f5dik7scadw0vyy67mik4ypnfqbhlv2vsg9afxzbpx2dz";
-      system = "trivial-utilities";
-      asd = "trivial-utilities";
-    });
-    systems = [ "trivial-utilities" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "closer-mop" pkgs) (getAttr "iterate" pkgs) ];
-  };
-  trivial-variable-bindings = {
-    pname = "trivial-variable-bindings";
-    version = "20191007-git";
-    asds = [ "trivial-variable-bindings" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/trivial-variable-bindings/2019-10-07/trivial-variable-bindings-20191007-git.tgz";
-      sha256 = "08lx5m1bspxsnv572zma1hxk3yfyk9fkmi5cvcr5riannyimdqgy";
-      system = "trivial-variable-bindings";
-      asd = "trivial-variable-bindings";
-    });
-    systems = [ "trivial-variable-bindings" ];
-    lispLibs = [ (getAttr "iterate" pkgs) (getAttr "trivial-utilities" pkgs) ];
-  };
-  trivial-variable-bindings_slash_test = {
-    pname = "trivial-variable-bindings_test";
-    version = "20191007-git";
-    asds = [ "trivial-variable-bindings" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/trivial-variable-bindings/2019-10-07/trivial-variable-bindings-20191007-git.tgz";
-      sha256 = "08lx5m1bspxsnv572zma1hxk3yfyk9fkmi5cvcr5riannyimdqgy";
-      system = "trivial-variable-bindings";
-      asd = "trivial-variable-bindings";
-    });
-    systems = [ "trivial-variable-bindings/test" ];
-    lispLibs = [ (getAttr "fiveam" pkgs) (getAttr "trivial-variable-bindings" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  trivial-wish = {
-    pname = "trivial-wish";
-    version = "quicklisp-910afeea-git";
-    asds = [ "trivial-wish" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/trivial-wish/2017-06-30/trivial-wish-quicklisp-910afeea-git.tgz";
-      sha256 = "1ydb9vsanrv6slbddhxc38pq5s88k0rzgqnwabw5cgc8cp5gqvyp";
-      system = "trivial-wish";
-      asd = "trivial-wish";
-    });
-    systems = [ "trivial-wish" ];
-    lispLibs = [  ];
-  };
-  trivial-with = {
-    pname = "trivial-with";
-    version = "quicklisp-2fd8ca54-git";
-    asds = [ "trivial-with" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/trivial-with/2017-08-30/trivial-with-quicklisp-2fd8ca54-git.tgz";
-      sha256 = "1h880j9k7piq6y5a6sywn1r43h439dd6vfymqvhgnbx458wy69sq";
-      system = "trivial-with";
-      asd = "trivial-with";
-    });
-    systems = [ "trivial-with" ];
-    lispLibs = [  ];
-  };
-  trivial-with-current-source-form = {
-    pname = "trivial-with-current-source-form";
-    version = "20211020-git";
-    asds = [ "trivial-with-current-source-form" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/trivial-with-current-source-form/2021-10-20/trivial-with-current-source-form-20211020-git.tgz";
-      sha256 = "1114iibrds8rvwn4zrqnmvm8mvbgdzbrka53dxs1q61ajv44x8i0";
-      system = "trivial-with-current-source-form";
-      asd = "trivial-with-current-source-form";
-    });
-    systems = [ "trivial-with-current-source-form" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) ];
-  };
-  trivial-ws = {
-    pname = "trivial-ws";
-    version = "20180131-git";
-    asds = [ "trivial-ws" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/trivial-ws/2018-01-31/trivial-ws-20180131-git.tgz";
-      sha256 = "0qmsf0dhmyhjgqjzdgj2yb1nkrijwp4p1j411613i45xjc2zd6m7";
-      system = "trivial-ws";
-      asd = "trivial-ws";
-    });
-    systems = [ "trivial-ws" ];
-    lispLibs = [ (getAttr "hunchensocket" pkgs) ];
-  };
-  trivial-ws-client = {
-    pname = "trivial-ws-client";
-    version = "20180131-git";
-    asds = [ "trivial-ws-client" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/trivial-ws/2018-01-31/trivial-ws-20180131-git.tgz";
-      sha256 = "0qmsf0dhmyhjgqjzdgj2yb1nkrijwp4p1j411613i45xjc2zd6m7";
-      system = "trivial-ws-client";
-      asd = "trivial-ws-client";
-    });
-    systems = [ "trivial-ws-client" ];
-    lispLibs = [ (getAttr "cl-async" pkgs) (getAttr "websocket-driver" pkgs) ];
-  };
-  trivial-ws-test = {
-    pname = "trivial-ws-test";
-    version = "20180131-git";
-    asds = [ "trivial-ws-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/trivial-ws/2018-01-31/trivial-ws-20180131-git.tgz";
-      sha256 = "0qmsf0dhmyhjgqjzdgj2yb1nkrijwp4p1j411613i45xjc2zd6m7";
-      system = "trivial-ws-test";
-      asd = "trivial-ws-test";
-    });
-    systems = [ "trivial-ws-test" ];
-    lispLibs = [ (getAttr "find-port" pkgs) (getAttr "prove" pkgs) (getAttr "prove-asdf" pkgs) (getAttr "trivial-ws" pkgs) (getAttr "trivial-ws-client" pkgs) ];
-  };
-  trivial-yenc = {
-    pname = "trivial-yenc";
-    version = "20161204-git";
-    asds = [ "trivial-yenc" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/trivial-yenc/2016-12-04/trivial-yenc-20161204-git.tgz";
-      sha256 = "0jsqwixgikdinc1rq22c4dh9kgg6z0kvw9rh9sbssbmxv99sb5bf";
-      system = "trivial-yenc";
-      asd = "trivial-yenc";
-    });
-    systems = [ "trivial-yenc" ];
-    lispLibs = [ (getAttr "split-sequence" pkgs) ];
-  };
-  trivialib_dot_bdd = {
-    pname = "trivialib.bdd";
-    version = "20211209-git";
-    asds = [ "trivialib.bdd" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/trivialib.bdd/2021-12-09/trivialib.bdd-20211209-git.tgz";
-      sha256 = "1iqpcihpm6glr0afi35z6qifj0ppl7s4h1k94fn6lqpv2js6lzbr";
-      system = "trivialib.bdd";
-      asd = "trivialib.bdd";
-    });
-    systems = [ "trivialib.bdd" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "immutable-struct" pkgs) (getAttr "trivia" pkgs) (getAttr "trivial-garbage" pkgs) ];
-  };
-  trivialib_dot_bdd_dot_test = {
-    pname = "trivialib.bdd.test";
-    version = "20211209-git";
-    asds = [ "trivialib.bdd.test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/trivialib.bdd/2021-12-09/trivialib.bdd-20211209-git.tgz";
-      sha256 = "1iqpcihpm6glr0afi35z6qifj0ppl7s4h1k94fn6lqpv2js6lzbr";
-      system = "trivialib.bdd.test";
-      asd = "trivialib.bdd.test";
-    });
-    systems = [ "trivialib.bdd.test" ];
-    lispLibs = [ (getAttr "fiveam" pkgs) (getAttr "trivialib_dot_bdd" pkgs) ];
-  };
-  trivialib_dot_type-unify = {
-    pname = "trivialib.type-unify";
-    version = "20200325-git";
-    asds = [ "trivialib.type-unify" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/trivialib.type-unify/2020-03-25/trivialib.type-unify-20200325-git.tgz";
-      sha256 = "0b5ck9ldn1w3imgpxyh164bypy28kvjzkwlcyyfsc0h1njnm5jmy";
-      system = "trivialib.type-unify";
-      asd = "trivialib.type-unify";
-    });
-    systems = [ "trivialib.type-unify" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "introspect-environment" pkgs) (getAttr "trivia" pkgs) (getAttr "type-r" pkgs) ];
-  };
-  trivialib_dot_type-unify_dot_test = {
-    pname = "trivialib.type-unify.test";
-    version = "20200325-git";
-    asds = [ "trivialib.type-unify.test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/trivialib.type-unify/2020-03-25/trivialib.type-unify-20200325-git.tgz";
-      sha256 = "0b5ck9ldn1w3imgpxyh164bypy28kvjzkwlcyyfsc0h1njnm5jmy";
-      system = "trivialib.type-unify.test";
-      asd = "trivialib.type-unify.test";
-    });
-    systems = [ "trivialib.type-unify.test" ];
-    lispLibs = [ (getAttr "fiveam" pkgs) (getAttr "trivialib_dot_type-unify" pkgs) ];
-  };
-  trucler = {
-    pname = "trucler";
-    version = "20220707-git";
-    asds = [ "trucler" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/trucler/2022-07-07/trucler-20220707-git.tgz";
-      sha256 = "0ra1phwy0vn4xrm5i1dvq9205m6s9fl0sr0rpiz3xjykxyl9mzms";
-      system = "trucler";
-      asd = "trucler";
-    });
-    systems = [ "trucler" ];
-    lispLibs = [ (getAttr "trucler-base" pkgs) (getAttr "trucler-native" pkgs) ];
-  };
-  trucler-base = {
-    pname = "trucler-base";
-    version = "20220707-git";
-    asds = [ "trucler-base" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/trucler/2022-07-07/trucler-20220707-git.tgz";
-      sha256 = "0ra1phwy0vn4xrm5i1dvq9205m6s9fl0sr0rpiz3xjykxyl9mzms";
-      system = "trucler-base";
-      asd = "trucler-base";
-    });
-    systems = [ "trucler-base" ];
-    lispLibs = [ (getAttr "acclimation" pkgs) ];
-  };
-  trucler-native = {
-    pname = "trucler-native";
-    version = "20220707-git";
-    asds = [ "trucler-native" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/trucler/2022-07-07/trucler-20220707-git.tgz";
-      sha256 = "0ra1phwy0vn4xrm5i1dvq9205m6s9fl0sr0rpiz3xjykxyl9mzms";
-      system = "trucler-native";
-      asd = "trucler-native";
-    });
-    systems = [ "trucler-native" ];
-    lispLibs = [ (getAttr "trucler-base" pkgs) ];
-  };
-  trucler-native-test = {
-    pname = "trucler-native-test";
-    version = "20220707-git";
-    asds = [ "trucler-native-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/trucler/2022-07-07/trucler-20220707-git.tgz";
-      sha256 = "0ra1phwy0vn4xrm5i1dvq9205m6s9fl0sr0rpiz3xjykxyl9mzms";
-      system = "trucler-native-test";
-      asd = "trucler-native-test";
-    });
-    systems = [ "trucler-native-test" ];
-    lispLibs = [ (getAttr "trucler-base" pkgs) (getAttr "trucler-native" pkgs) ];
-  };
-  trucler-reference = {
-    pname = "trucler-reference";
-    version = "20220707-git";
-    asds = [ "trucler-reference" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/trucler/2022-07-07/trucler-20220707-git.tgz";
-      sha256 = "0ra1phwy0vn4xrm5i1dvq9205m6s9fl0sr0rpiz3xjykxyl9mzms";
-      system = "trucler-reference";
-      asd = "trucler-reference";
-    });
-    systems = [ "trucler-reference" ];
-    lispLibs = [ (getAttr "trucler-base" pkgs) ];
-  };
-  truetype-clx = {
-    pname = "truetype-clx";
-    version = "20200218-git";
-    asds = [ "truetype-clx" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/truetype-clx/2020-02-18/truetype-clx-20200218-git.tgz";
-      sha256 = "1k46xa0nclj0mpd7khnlpam6q5hgnp23jixryhvv96gx47swhddr";
-      system = "truetype-clx";
-      asd = "truetype-clx";
-    });
-    systems = [ "truetype-clx" ];
-    lispLibs = [ (getAttr "cl-aa" pkgs) (getAttr "cl-paths-ttf" pkgs) (getAttr "cl-vectors" pkgs) (getAttr "zpb-ttf" pkgs) ];
-  };
-  try = {
-    pname = "try";
-    version = "20220331-git";
-    asds = [ "try" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/try/2022-03-31/try-20220331-git.tgz";
-      sha256 = "03dm2i2y4wiyzz9d25zdxm6gdglnvwali0ylp0rfwpk6wf29sj09";
-      system = "try";
-      asd = "try";
-    });
-    systems = [ "try" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "closer-mop" pkgs) (getAttr "ieee-floats" pkgs) (getAttr "mgl-pax" pkgs) (getAttr "trivial-gray-streams" pkgs) (getAttr "try_dot_asdf" pkgs) (getAttr "uiop" pkgs) ];
-  };
-  try_dot_asdf = {
-    pname = "try.asdf";
-    version = "20220331-git";
-    asds = [ "try.asdf" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/try/2022-03-31/try-20220331-git.tgz";
-      sha256 = "03dm2i2y4wiyzz9d25zdxm6gdglnvwali0ylp0rfwpk6wf29sj09";
-      system = "try.asdf";
-      asd = "try.asdf";
-    });
-    systems = [ "try.asdf" ];
-    lispLibs = [  ];
-  };
-  try_slash_doc = {
-    pname = "try_doc";
-    version = "20220331-git";
-    asds = [ "try" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/try/2022-03-31/try-20220331-git.tgz";
-      sha256 = "03dm2i2y4wiyzz9d25zdxm6gdglnvwali0ylp0rfwpk6wf29sj09";
-      system = "try";
-      asd = "try";
-    });
-    systems = [ "try/doc" ];
-    lispLibs = [ (getAttr "cl-ppcre" pkgs) (getAttr "try" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  try_slash_test = {
-    pname = "try_test";
-    version = "20220331-git";
-    asds = [ "try" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/try/2022-03-31/try-20220331-git.tgz";
-      sha256 = "03dm2i2y4wiyzz9d25zdxm6gdglnvwali0ylp0rfwpk6wf29sj09";
-      system = "try";
-      asd = "try";
-    });
-    systems = [ "try/test" ];
-    lispLibs = [ (getAttr "try" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  tsqueue = {
-    pname = "tsqueue";
-    version = "20221106-git";
-    asds = [ "tsqueue" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/tsqueue/2022-11-06/tsqueue-20221106-git.tgz";
-      sha256 = "1ifq53b95a1sdpgx1hlz31pjbh0z6izh3wrgsiqvzgkbiyxq513q";
-      system = "tsqueue";
-      asd = "tsqueue";
-    });
-    systems = [ "tsqueue" ];
-    lispLibs = [ (getAttr "bordeaux-threads" pkgs) ];
-  };
-  ttt = {
-    pname = "ttt";
-    version = "20220707-git";
-    asds = [ "ttt" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/ttt/2022-07-07/ttt-20220707-git.tgz";
-      sha256 = "0g6p8gpl8hl427mfrrf8824zq6wmkj11v1xq7pyv7v0b5cwp5ccv";
-      system = "ttt";
-      asd = "ttt";
-    });
-    systems = [ "ttt" ];
-    lispLibs = [ (getAttr "bordeaux-threads" pkgs) ];
-  };
-  ttt_slash_tests = {
-    pname = "ttt_tests";
-    version = "20220707-git";
-    asds = [ "ttt" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/ttt/2022-07-07/ttt-20220707-git.tgz";
-      sha256 = "0g6p8gpl8hl427mfrrf8824zq6wmkj11v1xq7pyv7v0b5cwp5ccv";
-      system = "ttt";
-      asd = "ttt";
-    });
-    systems = [ "ttt/tests" ];
-    lispLibs = [ (getAttr "lisp-unit" pkgs) (getAttr "ttt" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  twfy = {
-    pname = "twfy";
-    version = "20130420-git";
-    asds = [ "twfy" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/twfy/2013-04-20/twfy-20130420-git.tgz";
-      sha256 = "1srns5ayg7q8dzviizgm7j767dxbbyzh2ca8a5wdz3bc0qmwrsbs";
-      system = "twfy";
-      asd = "twfy";
-    });
-    systems = [ "twfy" ];
-    lispLibs = [ (getAttr "cl-json" pkgs) (getAttr "drakma" pkgs) ];
-  };
-  twitter-mongodb-driver = {
-    pname = "twitter-mongodb-driver";
-    version = "20180228-git";
-    asds = [ "twitter-mongodb-driver" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-twitter/2018-02-28/cl-twitter-20180228-git.tgz";
-      sha256 = "07l86c63ssahpz3s9f7d99mbzmh60askkpdrhjrdbzd1vxlwkhcr";
-      system = "twitter-mongodb-driver";
-      asd = "twitter-mongodb-driver";
-    });
-    systems = [ "twitter-mongodb-driver" ];
-    lispLibs = [ (getAttr "cl-mongo" pkgs) (getAttr "cl-twitter" pkgs) ];
-  };
-  type-i = {
-    pname = "type-i";
-    version = "20220707-git";
-    asds = [ "type-i" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/type-i/2022-07-07/type-i-20220707-git.tgz";
-      sha256 = "16d43cnrhj6313ka59ac6klwfq8hjabhvk9f9046pqd2mpyzcq50";
-      system = "type-i";
-      asd = "type-i";
-    });
-    systems = [ "type-i" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "introspect-environment" pkgs) (getAttr "lisp-namespace" pkgs) (getAttr "trivia_dot_trivial" pkgs) ];
-  };
-  type-i_dot_test = {
-    pname = "type-i.test";
-    version = "20220707-git";
-    asds = [ "type-i.test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/type-i/2022-07-07/type-i-20220707-git.tgz";
-      sha256 = "16d43cnrhj6313ka59ac6klwfq8hjabhvk9f9046pqd2mpyzcq50";
-      system = "type-i.test";
-      asd = "type-i.test";
-    });
-    systems = [ "type-i.test" ];
-    lispLibs = [ (getAttr "fiveam" pkgs) (getAttr "type-i" pkgs) ];
-  };
-  type-r = {
-    pname = "type-r";
-    version = "20191227-git";
-    asds = [ "type-r" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/type-r/2019-12-27/type-r-20191227-git.tgz";
-      sha256 = "1arsxc2539rg8vbrdirz4xxj1b06mc6g6rqndz7a02g127qvk2sm";
-      system = "type-r";
-      asd = "type-r";
-    });
-    systems = [ "type-r" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "trivia" pkgs) ];
-  };
-  type-r_dot_test = {
-    pname = "type-r.test";
-    version = "20191227-git";
-    asds = [ "type-r.test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/type-r/2019-12-27/type-r-20191227-git.tgz";
-      sha256 = "1arsxc2539rg8vbrdirz4xxj1b06mc6g6rqndz7a02g127qvk2sm";
-      system = "type-r.test";
-      asd = "type-r.test";
-    });
-    systems = [ "type-r.test" ];
-    lispLibs = [ (getAttr "fiveam" pkgs) (getAttr "type-r" pkgs) ];
-  };
-  typo = {
-    pname = "typo";
-    version = "20221106-git";
-    asds = [ "typo" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/typo/2022-11-06/typo-20221106-git.tgz";
-      sha256 = "08cmkjl3f77rfhxbjyd6f3kinhzak30mdfphnpf73sh1vw4v0vym";
-      system = "typo";
-      asd = "typo";
-    });
-    systems = [ "typo" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "closer-mop" pkgs) (getAttr "introspect-environment" pkgs) (getAttr "trivia" pkgs) (getAttr "trivial-arguments" pkgs) (getAttr "trivial-garbage" pkgs) ];
-  };
-  typo_dot_test-suite = {
-    pname = "typo.test-suite";
-    version = "20221106-git";
-    asds = [ "typo.test-suite" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/typo/2022-11-06/typo-20221106-git.tgz";
-      sha256 = "08cmkjl3f77rfhxbjyd6f3kinhzak30mdfphnpf73sh1vw4v0vym";
-      system = "typo.test-suite";
-      asd = "typo.test-suite";
-    });
-    systems = [ "typo.test-suite" ];
-    lispLibs = [ (getAttr "closer-mop" pkgs) (getAttr "typo" pkgs) ];
-  };
-  uax-14 = {
-    pname = "uax-14";
-    version = "20200925-git";
-    asds = [ "uax-14" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/uax-14/2020-09-25/uax-14-20200925-git.tgz";
-      sha256 = "1sb2s58k01yjaggaq8i7kbyfsh6mzyqbiz1vm59smxn9qqwd8apm";
-      system = "uax-14";
-      asd = "uax-14";
-    });
-    systems = [ "uax-14" ];
-    lispLibs = [ (getAttr "documentation-utils" pkgs) ];
-  };
-  uax-14-test = {
-    pname = "uax-14-test";
-    version = "20200925-git";
-    asds = [ "uax-14-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/uax-14/2020-09-25/uax-14-20200925-git.tgz";
-      sha256 = "1sb2s58k01yjaggaq8i7kbyfsh6mzyqbiz1vm59smxn9qqwd8apm";
-      system = "uax-14-test";
-      asd = "uax-14-test";
-    });
-    systems = [ "uax-14-test" ];
-    lispLibs = [ (getAttr "cl-ppcre" pkgs) (getAttr "parachute" pkgs) (getAttr "uax-14" pkgs) ];
-  };
-  uax-15 = {
-    pname = "uax-15";
-    version = "20221106-git";
-    asds = [ "uax-15" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/uax-15/2022-11-06/uax-15-20221106-git.tgz";
-      sha256 = "0kkr3sw3hqsb8ciyn8dzb1cfz260fk1y39vydc98gsfrn6nqh3vw";
-      system = "uax-15";
-      asd = "uax-15";
-    });
-    systems = [ "uax-15" ];
-    lispLibs = [ (getAttr "cl-ppcre" pkgs) (getAttr "split-sequence" pkgs) ];
-  };
-  uax-15_slash_tests = {
-    pname = "uax-15_tests";
-    version = "20221106-git";
-    asds = [ "uax-15" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/uax-15/2022-11-06/uax-15-20221106-git.tgz";
-      sha256 = "0kkr3sw3hqsb8ciyn8dzb1cfz260fk1y39vydc98gsfrn6nqh3vw";
-      system = "uax-15";
-      asd = "uax-15";
-    });
-    systems = [ "uax-15/tests" ];
-    lispLibs = [ (getAttr "cl-ppcre" pkgs) (getAttr "parachute" pkgs) (getAttr "split-sequence" pkgs) (getAttr "uax-15" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  uax-9 = {
-    pname = "uax-9";
-    version = "20191007-git";
-    asds = [ "uax-9" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/uax-9/2019-10-07/uax-9-20191007-git.tgz";
-      sha256 = "0z9wfvrs5xpqw059igqdlhrvg1g87bvsxyvgwrx59dvr16v6f0h7";
-      system = "uax-9";
-      asd = "uax-9";
-    });
-    systems = [ "uax-9" ];
-    lispLibs = [ (getAttr "documentation-utils" pkgs) ];
-  };
-  uax-9-test = {
-    pname = "uax-9-test";
-    version = "20191007-git";
-    asds = [ "uax-9-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/uax-9/2019-10-07/uax-9-20191007-git.tgz";
-      sha256 = "0z9wfvrs5xpqw059igqdlhrvg1g87bvsxyvgwrx59dvr16v6f0h7";
-      system = "uax-9-test";
-      asd = "uax-9-test";
-    });
-    systems = [ "uax-9-test" ];
-    lispLibs = [ (getAttr "cl-ppcre" pkgs) (getAttr "parachute" pkgs) (getAttr "uax-9" pkgs) ];
-  };
-  ubiquitous = {
-    pname = "ubiquitous";
-    version = "20190710-git";
-    asds = [ "ubiquitous" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/ubiquitous/2019-07-10/ubiquitous-20190710-git.tgz";
-      sha256 = "1xlkaqmjcpkiv2xl2s2pvvrv976dlc846wm16s1lj62iy1315i49";
-      system = "ubiquitous";
-      asd = "ubiquitous";
-    });
-    systems = [ "ubiquitous" ];
-    lispLibs = [  ];
-    meta = {
-      broken = true;
-    };
-  };
-  ubiquitous-concurrent = {
-    pname = "ubiquitous-concurrent";
-    version = "20190710-git";
-    asds = [ "ubiquitous-concurrent" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/ubiquitous/2019-07-10/ubiquitous-20190710-git.tgz";
-      sha256 = "1xlkaqmjcpkiv2xl2s2pvvrv976dlc846wm16s1lj62iy1315i49";
-      system = "ubiquitous-concurrent";
-      asd = "ubiquitous-concurrent";
-    });
-    systems = [ "ubiquitous-concurrent" ];
-    lispLibs = [ (getAttr "bordeaux-threads" pkgs) (getAttr "ubiquitous" pkgs) ];
-  };
-  ucons = {
-    pname = "ucons";
-    version = "20210228-git";
-    asds = [ "ucons" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/ucons/2021-02-28/ucons-20210228-git.tgz";
-      sha256 = "17aj47pdjiywnf33hl46p27za2q0pq5ar3fpqxaqskggxrfxmijl";
-      system = "ucons";
-      asd = "ucons";
-    });
-    systems = [ "ucons" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "atomics" pkgs) (getAttr "bordeaux-threads" pkgs) (getAttr "named-readtables" pkgs) (getAttr "trivia" pkgs) ];
-  };
-  ucw = {
-    pname = "ucw";
-    version = "20160208-darcs";
-    asds = [ "ucw" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/ucw/2016-02-08/ucw-20160208-darcs.tgz";
-      sha256 = "0wd7816zr53bw9z9a48cx1khj15d1jii5wzgqns1c5x70brgy89z";
-      system = "ucw";
-      asd = "ucw";
-    });
-    systems = [ "ucw" ];
-    lispLibs = [ (getAttr "cl-ppcre" pkgs) (getAttr "closer-mop" pkgs) (getAttr "ucw-core" pkgs) ];
-  };
-  ucw-core = {
-    pname = "ucw-core";
-    version = "20160208-darcs";
-    asds = [ "ucw-core" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/ucw/2016-02-08/ucw-20160208-darcs.tgz";
-      sha256 = "0wd7816zr53bw9z9a48cx1khj15d1jii5wzgqns1c5x70brgy89z";
-      system = "ucw-core";
-      asd = "ucw-core";
-    });
-    systems = [ "ucw-core" ];
-    lispLibs = [ (getAttr "arnesi" pkgs) (getAttr "bordeaux-threads" pkgs) (getAttr "cl-fad" pkgs) (getAttr "closer-mop" pkgs) (getAttr "iterate" pkgs) (getAttr "local-time" pkgs) (getAttr "net-telent-date" pkgs) (getAttr "rfc2109" pkgs) (getAttr "swank" pkgs) (getAttr "trivial-garbage" pkgs) (getAttr "usocket" pkgs) (getAttr "yaclml" pkgs) ];
-  };
-  ucw-core_dot_test = {
-    pname = "ucw-core.test";
-    version = "20160208-darcs";
-    asds = [ "ucw-core.test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/ucw/2016-02-08/ucw-20160208-darcs.tgz";
-      sha256 = "0wd7816zr53bw9z9a48cx1khj15d1jii5wzgqns1c5x70brgy89z";
-      system = "ucw-core.test";
-      asd = "ucw-core";
-    });
-    systems = [ "ucw-core.test" ];
-    lispLibs = [ (getAttr "arnesi" pkgs) (getAttr "cxml" pkgs) (getAttr "drakma" pkgs) (getAttr "iterate" pkgs) (getAttr "stefil" pkgs) (getAttr "ucw-core" pkgs) ];
-  };
-  ucw_dot_examples = {
-    pname = "ucw.examples";
-    version = "20160208-darcs";
-    asds = [ "ucw.examples" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/ucw/2016-02-08/ucw-20160208-darcs.tgz";
-      sha256 = "0wd7816zr53bw9z9a48cx1khj15d1jii5wzgqns1c5x70brgy89z";
-      system = "ucw.examples";
-      asd = "ucw";
-    });
-    systems = [ "ucw.examples" ];
-    lispLibs = [ (getAttr "ucw" pkgs) ];
-  };
-  ucw_dot_httpd = {
-    pname = "ucw.httpd";
-    version = "20160208-darcs";
-    asds = [ "ucw.httpd" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/ucw/2016-02-08/ucw-20160208-darcs.tgz";
-      sha256 = "0wd7816zr53bw9z9a48cx1khj15d1jii5wzgqns1c5x70brgy89z";
-      system = "ucw.httpd";
-      asd = "ucw-core";
-    });
-    systems = [ "ucw.httpd" ];
-    lispLibs = [ (getAttr "cl-ppcre" pkgs) (getAttr "puri" pkgs) (getAttr "rfc2388-binary" pkgs) (getAttr "ucw-core" pkgs) ];
-  };
-  ucw_dot_manual-examples = {
-    pname = "ucw.manual-examples";
-    version = "20160208-darcs";
-    asds = [ "ucw.manual-examples" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/ucw/2016-02-08/ucw-20160208-darcs.tgz";
-      sha256 = "0wd7816zr53bw9z9a48cx1khj15d1jii5wzgqns1c5x70brgy89z";
-      system = "ucw.manual-examples";
-      asd = "ucw";
-    });
-    systems = [ "ucw.manual-examples" ];
-    lispLibs = [ (getAttr "ucw" pkgs) ];
-  };
-  uffi = {
-    pname = "uffi";
-    version = "20180228-git";
-    asds = [ "uffi" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/uffi/2018-02-28/uffi-20180228-git.tgz";
-      sha256 = "0ywly04k8vir39ld7ids80yjn34y3y3mlpky1pr1fh9p8q412a85";
-      system = "uffi";
-      asd = "uffi";
-    });
-    systems = [ "uffi" ];
-    lispLibs = [  ];
-  };
-  uffi-tests = {
-    pname = "uffi-tests";
-    version = "20180228-git";
-    asds = [ "uffi-tests" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/uffi/2018-02-28/uffi-20180228-git.tgz";
-      sha256 = "0ywly04k8vir39ld7ids80yjn34y3y3mlpky1pr1fh9p8q412a85";
-      system = "uffi-tests";
-      asd = "uffi-tests";
-    });
-    systems = [ "uffi-tests" ];
-    lispLibs = [ (getAttr "uffi" pkgs) ];
-  };
-  ufo = {
-    pname = "ufo";
-    version = "20210807-git";
-    asds = [ "ufo" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/ufo/2021-08-07/ufo-20210807-git.tgz";
-      sha256 = "0bbq4pjnbmf1zpmh11jlriv0qnvrhw1xxnjj2y35gk75rr8rvizy";
-      system = "ufo";
-      asd = "ufo";
-    });
-    systems = [ "ufo" ];
-    lispLibs = [ (getAttr "uiop" pkgs) ];
-  };
-  ufo-test = {
-    pname = "ufo-test";
-    version = "20210807-git";
-    asds = [ "ufo-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/ufo/2021-08-07/ufo-20210807-git.tgz";
-      sha256 = "0bbq4pjnbmf1zpmh11jlriv0qnvrhw1xxnjj2y35gk75rr8rvizy";
-      system = "ufo-test";
-      asd = "ufo-test";
-    });
-    systems = [ "ufo-test" ];
-    lispLibs = [ (getAttr "cl-fad" pkgs) (getAttr "prove" pkgs) (getAttr "prove-asdf" pkgs) (getAttr "ufo" pkgs) ];
-  };
-  ugly-tiny-infix-macro = {
-    pname = "ugly-tiny-infix-macro";
-    version = "20160825-git";
-    asds = [ "ugly-tiny-infix-macro" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/ugly-tiny-infix-macro/2016-08-25/ugly-tiny-infix-macro-20160825-git.tgz";
-      sha256 = "15bbnr3kzy3p35skm6bkyyl5ck4d264am0zyjsix5k58d9fli3ii";
-      system = "ugly-tiny-infix-macro";
-      asd = "ugly-tiny-infix-macro";
-    });
-    systems = [ "ugly-tiny-infix-macro" ];
-    lispLibs = [  ];
-  };
-  uiop = {
-    pname = "uiop";
-    version = "3.3.6";
-    asds = [ "uiop" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/uiop/2022-11-06/uiop-3.3.6.tgz";
-      sha256 = "080lcdw90j30gg2vv9bnwj21aq08mp1kk4nax3ffkjssnrnjwhmr";
-      system = "uiop";
-      asd = "uiop";
-    });
-    systems = [ "uiop" ];
-    lispLibs = [  ];
-  };
-  umbra = {
-    pname = "umbra";
-    version = "20220707-git";
-    asds = [ "umbra" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/umbra/2022-07-07/umbra-20220707-git.tgz";
-      sha256 = "125bsf69gzdy0r6jh6fz8000rqww1rji354x0yrgmkz9x3mvz4k4";
-      system = "umbra";
-      asd = "umbra";
-    });
-    systems = [ "umbra" ];
-    lispLibs = [ (getAttr "mfiano-utils" pkgs) (getAttr "shadow" pkgs) (getAttr "varjo" pkgs) ];
-  };
-  umlisp = {
-    pname = "umlisp";
-    version = "20210411-git";
-    asds = [ "umlisp" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/umlisp/2021-04-11/umlisp-20210411-git.tgz";
-      sha256 = "1yyyn1qka4iw3hwii7i8k939dbwvhn543m8qclk2ajggkdky4mqb";
-      system = "umlisp";
-      asd = "umlisp";
-    });
-    systems = [ "umlisp" ];
-    lispLibs = [ (getAttr "clsql" pkgs) (getAttr "clsql-mysql" pkgs) (getAttr "hyperobject" pkgs) (getAttr "kmrcl" pkgs) ];
-  };
-  umlisp-orf = {
-    pname = "umlisp-orf";
-    version = "20150923-git";
-    asds = [ "umlisp-orf" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/umlisp-orf/2015-09-23/umlisp-orf-20150923-git.tgz";
-      sha256 = "187i9rcj3rymi8hmlvglvig7yqandzzx57x0rzr4yfv8sgnb82qx";
-      system = "umlisp-orf";
-      asd = "umlisp-orf";
-    });
-    systems = [ "umlisp-orf" ];
-    lispLibs = [ (getAttr "clsql" pkgs) (getAttr "clsql-postgresql-socket" pkgs) (getAttr "hyperobject" pkgs) (getAttr "kmrcl" pkgs) ];
-  };
-  umlisp-tests = {
-    pname = "umlisp-tests";
-    version = "20210411-git";
-    asds = [ "umlisp-tests" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/umlisp/2021-04-11/umlisp-20210411-git.tgz";
-      sha256 = "1yyyn1qka4iw3hwii7i8k939dbwvhn543m8qclk2ajggkdky4mqb";
-      system = "umlisp-tests";
-      asd = "umlisp-tests";
-    });
-    systems = [ "umlisp-tests" ];
-    lispLibs = [ (getAttr "rt" pkgs) (getAttr "umlisp" pkgs) ];
-  };
-  uncommon-lisp = {
-    pname = "uncommon-lisp";
-    version = "20200427-git";
-    asds = [ "uncommon-lisp" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/sucle/2020-04-27/sucle-20200427-git.tgz";
-      sha256 = "033akkn9zxc6qdgycgxgybx3v23638245xrx29x2cbwnvg3i1q34";
-      system = "uncommon-lisp";
-      asd = "uncommon-lisp";
-    });
-    systems = [ "uncommon-lisp" ];
-    lispLibs = [ (getAttr "structy-defclass" pkgs) ];
-  };
-  uncursed = {
-    pname = "uncursed";
-    version = "20220220-git";
-    asds = [ "uncursed" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/uncursed/2022-02-20/uncursed-20220220-git.tgz";
-      sha256 = "1hydiwh12851rrm12y0a6pb2jml2cjdk8wxvz4c00d2xwraqc6mr";
-      system = "uncursed";
-      asd = "uncursed";
-    });
-    systems = [ "uncursed" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cffi" pkgs) (getAttr "cffi-grovel" pkgs) (getAttr "cl-setlocale" pkgs) (getAttr "terminfo" pkgs) ];
-  };
-  uncursed-examples = {
-    pname = "uncursed-examples";
-    version = "20220220-git";
-    asds = [ "uncursed-examples" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/uncursed/2022-02-20/uncursed-20220220-git.tgz";
-      sha256 = "1hydiwh12851rrm12y0a6pb2jml2cjdk8wxvz4c00d2xwraqc6mr";
-      system = "uncursed-examples";
-      asd = "uncursed-examples";
-    });
-    systems = [ "uncursed-examples" ];
-    lispLibs = [ (getAttr "cffi-grovel" pkgs) (getAttr "uncursed" pkgs) ];
-  };
-  unicly = {
-    pname = "unicly";
-    version = "20210124-git";
-    asds = [ "unicly" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/unicly/2021-01-24/unicly-20210124-git.tgz";
-      sha256 = "1f29zc1gmnsmb84hbsvacg02bqfiq2mv9wgr0hhf3bjbji5jh5zb";
-      system = "unicly";
-      asd = "unicly";
-    });
-    systems = [ "unicly" ];
-    lispLibs = [ (getAttr "ironclad" pkgs) (getAttr "split-sequence" pkgs) ];
-  };
-  unifgram = {
-    pname = "unifgram";
-    version = "20180228-git";
-    asds = [ "unifgram" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/paiprolog/2018-02-28/paiprolog-20180228-git.tgz";
-      sha256 = "1nxz01i6f8s920gm69r2kwjdpq9pli8b2ayqwijhzgjwi0r4jj9r";
-      system = "unifgram";
-      asd = "unifgram";
-    });
-    systems = [ "unifgram" ];
-    lispLibs = [ (getAttr "paiprolog" pkgs) ];
-  };
-  unit-formulas = {
-    pname = "unit-formulas";
-    version = "20180711-git";
-    asds = [ "unit-formulas" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/unit-formula/2018-07-11/unit-formula-20180711-git.tgz";
-      sha256 = "1j9zcnyj2ik7f2130pkfwr2bhh5ldlgc83n1024w0dy95ksl1f20";
-      system = "unit-formulas";
-      asd = "unit-formulas";
-    });
-    systems = [ "unit-formulas" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "iterate" pkgs) ];
-  };
-  unit-test = {
-    pname = "unit-test";
-    version = "20120520-git";
-    asds = [ "unit-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/unit-test/2012-05-20/unit-test-20120520-git.tgz";
-      sha256 = "11hpksz56iqkv7jw25p2a8r3n9dj922fyarn16d98589g6hdskj9";
-      system = "unit-test";
-      asd = "unit-test";
-    });
-    systems = [ "unit-test" ];
-    lispLibs = [  ];
-  };
-  universal-config = {
-    pname = "universal-config";
-    version = "20180430-git";
-    asds = [ "universal-config" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/universal-config/2018-04-30/universal-config-20180430-git.tgz";
-      sha256 = "17sjd37jwsi47yhsj9qsnfyhyrlhlxdrxa4szklwjh489hf01hd0";
-      system = "universal-config";
-      asd = "universal-config";
-    });
-    systems = [ "universal-config" ];
-    lispLibs = [ (getAttr "cl-ppcre" pkgs) (getAttr "parse-float" pkgs) ];
-  };
-  unix-options = {
-    pname = "unix-options";
-    version = "20151031-git";
-    asds = [ "unix-options" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/unix-options/2015-10-31/unix-options-20151031-git.tgz";
-      sha256 = "17q7irrbmaja7gj86h01ali9n9p782jxisgkb1r2q5ajf4lr1rsv";
-      system = "unix-options";
-      asd = "unix-options";
-    });
-    systems = [ "unix-options" ];
-    lispLibs = [  ];
-  };
-  unix-opts = {
-    pname = "unix-opts";
-    version = "20210124-git";
-    asds = [ "unix-opts" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/unix-opts/2021-01-24/unix-opts-20210124-git.tgz";
-      sha256 = "16mcqpzwrz808p9n3wwl99ckg3hg7yihw08y1i4l7c92aldbkasq";
-      system = "unix-opts";
-      asd = "unix-opts";
-    });
-    systems = [ "unix-opts" ];
-    lispLibs = [  ];
-  };
-  unix-opts_slash_tests = {
-    pname = "unix-opts_tests";
-    version = "20210124-git";
-    asds = [ "unix-opts" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/unix-opts/2021-01-24/unix-opts-20210124-git.tgz";
-      sha256 = "16mcqpzwrz808p9n3wwl99ckg3hg7yihw08y1i4l7c92aldbkasq";
-      system = "unix-opts";
-      asd = "unix-opts";
-    });
-    systems = [ "unix-opts/tests" ];
-    lispLibs = [ (getAttr "unix-opts" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  unix-sockets = {
-    pname = "unix-sockets";
-    version = "20221106-git";
-    asds = [ "unix-sockets" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-unix-sockets/2022-11-06/cl-unix-sockets-20221106-git.tgz";
-      sha256 = "1kbayll54228mmikw22isqv1p99i3bznvy0l661rjjhq2r2al8cb";
-      system = "unix-sockets";
-      asd = "unix-sockets";
-    });
-    systems = [ "unix-sockets" ];
-    lispLibs = [ (getAttr "cffi" pkgs) (getAttr "flexi-streams" pkgs) (getAttr "log4cl" pkgs) (getAttr "trivial-garbage" pkgs) (getAttr "trivial-gray-streams" pkgs) (getAttr "uffi" pkgs) ];
-  };
-  unix-sockets_dot_tests = {
-    pname = "unix-sockets.tests";
-    version = "20221106-git";
-    asds = [ "unix-sockets.tests" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-unix-sockets/2022-11-06/cl-unix-sockets-20221106-git.tgz";
-      sha256 = "1kbayll54228mmikw22isqv1p99i3bznvy0l661rjjhq2r2al8cb";
-      system = "unix-sockets.tests";
-      asd = "unix-sockets.tests";
-    });
-    systems = [ "unix-sockets.tests" ];
-    lispLibs = [ (getAttr "cl-fad" pkgs) (getAttr "unix-sockets" pkgs) (getAttr "fiveam" pkgs) (getAttr "tmpdir" pkgs) (getAttr "trivial-timeout" pkgs) ];
-  };
-  uri-template = {
-    pname = "uri-template";
-    version = "1.3.1";
-    asds = [ "uri-template" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/uri-template/2019-08-13/uri-template-1.3.1.tgz";
-      sha256 = "06n5kmjax64kv57ng5g2030a67z131i4wm53npg9zq2xlj9sprd8";
-      system = "uri-template";
-      asd = "uri-template";
-    });
-    systems = [ "uri-template" ];
-    lispLibs = [ (getAttr "cl-ppcre" pkgs) (getAttr "flexi-streams" pkgs) (getAttr "named-readtables" pkgs) ];
-  };
-  uri-template_dot_test = {
-    pname = "uri-template.test";
-    version = "1.3.1";
-    asds = [ "uri-template.test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/uri-template/2019-08-13/uri-template-1.3.1.tgz";
-      sha256 = "06n5kmjax64kv57ng5g2030a67z131i4wm53npg9zq2xlj9sprd8";
-      system = "uri-template.test";
-      asd = "uri-template.test";
-    });
-    systems = [ "uri-template.test" ];
-    lispLibs = [ (getAttr "fiveam" pkgs) (getAttr "uri-template" pkgs) ];
-  };
-  url-rewrite = {
-    pname = "url-rewrite";
-    version = "20171227-git";
-    asds = [ "url-rewrite" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/url-rewrite/2017-12-27/url-rewrite-20171227-git.tgz";
-      sha256 = "0d3awcb938ajiylyfnbqsc7nndy6csx0qz1bcyr4f0p862w3xbqf";
-      system = "url-rewrite";
-      asd = "url-rewrite";
-    });
-    systems = [ "url-rewrite" ];
-    lispLibs = [  ];
-  };
-  userial = {
-    pname = "userial";
-    version = "0.8.2011.06.02";
-    asds = [ "userial" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/userial/2011-06-19/userial_0.8.2011.06.02.tgz";
-      sha256 = "08f8hc1f81gyn4br9p732p8r2gl6cvccd4yzc9ydz4i0ijclpp2m";
-      system = "userial";
-      asd = "userial";
-    });
-    systems = [ "userial" ];
-    lispLibs = [ (getAttr "contextl" pkgs) (getAttr "ieee-floats" pkgs) (getAttr "trivial-utf-8" pkgs) ];
-  };
-  userial-tests = {
-    pname = "userial-tests";
-    version = "0.8.2011.06.02";
-    asds = [ "userial-tests" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/userial/2011-06-19/userial_0.8.2011.06.02.tgz";
-      sha256 = "08f8hc1f81gyn4br9p732p8r2gl6cvccd4yzc9ydz4i0ijclpp2m";
-      system = "userial-tests";
-      asd = "userial-tests";
-    });
-    systems = [ "userial-tests" ];
-    lispLibs = [ (getAttr "nst" pkgs) (getAttr "userial" pkgs) ];
-  };
-  usocket = {
-    pname = "usocket";
-    version = "0.8.5";
-    asds = [ "usocket" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/usocket/2022-11-06/usocket-0.8.5.tgz";
-      sha256 = "1pn5mf4d9g3b7h0vfx0mh7rlrydfbk8q35pg4ip6prf4zyg70wba";
-      system = "usocket";
-      asd = "usocket";
-    });
-    systems = [ "usocket" ];
-    lispLibs = [ (getAttr "split-sequence" pkgs) ];
-  };
-  usocket-server = {
-    pname = "usocket-server";
-    version = "0.8.5";
-    asds = [ "usocket-server" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/usocket/2022-11-06/usocket-0.8.5.tgz";
-      sha256 = "1pn5mf4d9g3b7h0vfx0mh7rlrydfbk8q35pg4ip6prf4zyg70wba";
-      system = "usocket-server";
-      asd = "usocket-server";
-    });
-    systems = [ "usocket-server" ];
-    lispLibs = [ (getAttr "bordeaux-threads" pkgs) (getAttr "usocket" pkgs) ];
-  };
-  usocket-test = {
-    pname = "usocket-test";
-    version = "0.8.5";
-    asds = [ "usocket-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/usocket/2022-11-06/usocket-0.8.5.tgz";
-      sha256 = "1pn5mf4d9g3b7h0vfx0mh7rlrydfbk8q35pg4ip6prf4zyg70wba";
-      system = "usocket-test";
-      asd = "usocket-test";
-    });
-    systems = [ "usocket-test" ];
-    lispLibs = [ (getAttr "rt" pkgs) (getAttr "usocket-server" pkgs) ];
-  };
-  utilities_dot_binary-dump = {
-    pname = "utilities.binary-dump";
-    version = "20181210-git";
-    asds = [ "utilities.binary-dump" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/utilities.binary-dump/2018-12-10/utilities.binary-dump-20181210-git.tgz";
-      sha256 = "1l20r1782bskyy50ca6vsyxrvbxlgfq4nm33wl8as761dcjpj4d4";
-      system = "utilities.binary-dump";
-      asd = "utilities.binary-dump";
-    });
-    systems = [ "utilities.binary-dump" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "let-plus" pkgs) (getAttr "nibbles" pkgs) ];
-  };
-  utilities_dot_binary-dump_slash_test = {
-    pname = "utilities.binary-dump_test";
-    version = "20181210-git";
-    asds = [ "utilities.binary-dump" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/utilities.binary-dump/2018-12-10/utilities.binary-dump-20181210-git.tgz";
-      sha256 = "1l20r1782bskyy50ca6vsyxrvbxlgfq4nm33wl8as761dcjpj4d4";
-      system = "utilities.binary-dump";
-      asd = "utilities.binary-dump";
-    });
-    systems = [ "utilities.binary-dump/test" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "fiveam" pkgs) (getAttr "let-plus" pkgs) (getAttr "nibbles" pkgs) (getAttr "split-sequence" pkgs) (getAttr "utilities_dot_binary-dump" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  utilities_dot_print-items = {
-    pname = "utilities.print-items";
-    version = "20221106-git";
-    asds = [ "utilities.print-items" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/utilities.print-items/2022-11-06/utilities.print-items-20221106-git.tgz";
-      sha256 = "0qn0w7cyl76c3ssipqsx4ngb1641ajfkaihnb31w374zrzbns8wi";
-      system = "utilities.print-items";
-      asd = "utilities.print-items";
-    });
-    systems = [ "utilities.print-items" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) ];
-  };
-  utilities_dot_print-items_slash_test = {
-    pname = "utilities.print-items_test";
-    version = "20221106-git";
-    asds = [ "utilities.print-items" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/utilities.print-items/2022-11-06/utilities.print-items-20221106-git.tgz";
-      sha256 = "0qn0w7cyl76c3ssipqsx4ngb1641ajfkaihnb31w374zrzbns8wi";
-      system = "utilities.print-items";
-      asd = "utilities.print-items";
-    });
-    systems = [ "utilities.print-items/test" ];
-    lispLibs = [ (getAttr "fiveam" pkgs) (getAttr "utilities_dot_print-items" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  utilities_dot_print-tree = {
-    pname = "utilities.print-tree";
-    version = "20221106-git";
-    asds = [ "utilities.print-tree" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/utilities.print-tree/2022-11-06/utilities.print-tree-20221106-git.tgz";
-      sha256 = "0i7371qvlnwjcybh3c2ac88xz39vjdynhgxwz4acjbcnsw0jqsls";
-      system = "utilities.print-tree";
-      asd = "utilities.print-tree";
-    });
-    systems = [ "utilities.print-tree" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "uiop" pkgs) ];
-  };
-  utilities_dot_print-tree_slash_test = {
-    pname = "utilities.print-tree_test";
-    version = "20221106-git";
-    asds = [ "utilities.print-tree" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/utilities.print-tree/2022-11-06/utilities.print-tree-20221106-git.tgz";
-      sha256 = "0i7371qvlnwjcybh3c2ac88xz39vjdynhgxwz4acjbcnsw0jqsls";
-      system = "utilities.print-tree";
-      asd = "utilities.print-tree";
-    });
-    systems = [ "utilities.print-tree/test" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "fiveam" pkgs) (getAttr "uiop" pkgs) (getAttr "utilities_dot_print-tree" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  utility = {
-    pname = "utility";
-    version = "20190202-git";
-    asds = [ "utility" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/utility/2019-02-02/utility-20190202-git.tgz";
-      sha256 = "0nc83kxp2c0wy5ai7dm6w4anx5266j99pxzr0c7fxgllc7d0g1qd";
-      system = "utility";
-      asd = "utility";
-    });
-    systems = [ "utility" ];
-    lispLibs = [  ];
-  };
-  utility-arguments = {
-    pname = "utility-arguments";
-    version = "20161204-git";
-    asds = [ "utility-arguments" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/utility-arguments/2016-12-04/utility-arguments-20161204-git.tgz";
-      sha256 = "0dzbzzrla9709zl5dqdfw02mxa3rvcpca466qrcprgs3hnxdvgwb";
-      system = "utility-arguments";
-      asd = "utility-arguments";
-    });
-    systems = [ "utility-arguments" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) ];
-  };
-  utils-kt = {
-    pname = "utils-kt";
-    version = "20200218-git";
-    asds = [ "utils-kt" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/utils-kt/2020-02-18/utils-kt-20200218-git.tgz";
-      sha256 = "016x3w034brz02z9mrsrkhk2djizg3yqsvhl9k62xqcnpy3b87dn";
-      system = "utils-kt";
-      asd = "utils-kt";
-    });
-    systems = [ "utils-kt" ];
-    lispLibs = [  ];
-  };
-  utm = {
-    pname = "utm";
-    version = "20200218-git";
-    asds = [ "utm" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/utm/2020-02-18/utm-20200218-git.tgz";
-      sha256 = "1a5dp5fls26ppc6fnvd941nfvk2qs72grl0a3pycq7vzw6580v01";
-      system = "utm";
-      asd = "utm";
-    });
-    systems = [ "utm" ];
-    lispLibs = [  ];
-  };
-  utm-ups = {
-    pname = "utm-ups";
-    version = "20210228-git";
-    asds = [ "utm-ups" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/utm-ups/2021-02-28/utm-ups-20210228-git.tgz";
-      sha256 = "1rvyh0srgd81kvbzmq4ysd9y6c0qdwh23naqxc9asw1vh7fq08x1";
-      system = "utm-ups";
-      asd = "utm-ups";
-    });
-    systems = [ "utm-ups" ];
-    lispLibs = [  ];
-  };
-  utm-ups_slash_tests = {
-    pname = "utm-ups_tests";
-    version = "20210228-git";
-    asds = [ "utm-ups" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/utm-ups/2021-02-28/utm-ups-20210228-git.tgz";
-      sha256 = "1rvyh0srgd81kvbzmq4ysd9y6c0qdwh23naqxc9asw1vh7fq08x1";
-      system = "utm-ups";
-      asd = "utm-ups";
-    });
-    systems = [ "utm-ups/tests" ];
-    lispLibs = [ (getAttr "fiveam" pkgs) (getAttr "utm-ups" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  utm_dot_test = {
-    pname = "utm.test";
-    version = "20200218-git";
-    asds = [ "utm.test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/utm/2020-02-18/utm-20200218-git.tgz";
-      sha256 = "1a5dp5fls26ppc6fnvd941nfvk2qs72grl0a3pycq7vzw6580v01";
-      system = "utm.test";
-      asd = "utm.test";
-    });
-    systems = [ "utm.test" ];
-    lispLibs = [ (getAttr "fiveam" pkgs) (getAttr "utm" pkgs) ];
-  };
-  uuid = {
-    pname = "uuid";
-    version = "20200715-git";
-    asds = [ "uuid" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/uuid/2020-07-15/uuid-20200715-git.tgz";
-      sha256 = "1ncwhyw0zggwpkzjsw7d4pkrlldi34xvb69c0bzxmyz2krg8rpx0";
-      system = "uuid";
-      asd = "uuid";
-    });
-    systems = [ "uuid" ];
-    lispLibs = [ (getAttr "ironclad" pkgs) (getAttr "trivial-utf-8" pkgs) ];
-  };
-  validate-list = {
-    pname = "validate-list";
-    version = "20210411-git";
-    asds = [ "validate-list" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/validate-list/2021-04-11/validate-list-20210411-git.tgz";
-      sha256 = "1rb7glqvlaz84cfd2wjk49si9jh4ffysmva5007gjhqfhr9z23lj";
-      system = "validate-list";
-      asd = "validate-list";
-    });
-    systems = [ "validate-list" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "arithmetic-operators-as-words" pkgs) (getAttr "lisp-unit" pkgs) ];
-  };
-  validate-list_slash_tests = {
-    pname = "validate-list_tests";
-    version = "20210411-git";
-    asds = [ "validate-list" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/validate-list/2021-04-11/validate-list-20210411-git.tgz";
-      sha256 = "1rb7glqvlaz84cfd2wjk49si9jh4ffysmva5007gjhqfhr9z23lj";
-      system = "validate-list";
-      asd = "validate-list";
-    });
-    systems = [ "validate-list/tests" ];
-    lispLibs = [ (getAttr "lisp-unit" pkgs) (getAttr "validate-list" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  varint = {
-    pname = "varint";
-    version = "20220331-git";
-    asds = [ "varint" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/protobuf/2022-03-31/protobuf-20220331-git.tgz";
-      sha256 = "011jhbda4q77hjc4v2dyx3pc54zdq7m496qgrrv69ksy901lss4s";
-      system = "varint";
-      asd = "varint";
-    });
-    systems = [ "varint" ];
-    lispLibs = [ (getAttr "com_dot_google_dot_base" pkgs) (getAttr "nibbles" pkgs) ];
-  };
-  varint_slash_test = {
-    pname = "varint_test";
-    version = "20220331-git";
-    asds = [ "varint" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/protobuf/2022-03-31/protobuf-20220331-git.tgz";
-      sha256 = "011jhbda4q77hjc4v2dyx3pc54zdq7m496qgrrv69ksy901lss4s";
-      system = "varint";
-      asd = "varint";
-    });
-    systems = [ "varint/test" ];
-    lispLibs = [ (getAttr "hu_dot_dwim_dot_stefil" pkgs) (getAttr "varint" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  varjo = {
-    pname = "varjo";
-    version = "release-quicklisp-92f9c75b-git";
-    asds = [ "varjo" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/varjo/2021-01-24/varjo-release-quicklisp-92f9c75b-git.tgz";
-      sha256 = "0gga4wq74qxql4zxh8zq1ab2xnsz8ygdaf8wxy7w15vv4czgamr9";
-      system = "varjo";
-      asd = "varjo";
-    });
-    systems = [ "varjo" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cl-ppcre" pkgs) (getAttr "documentation-utils" pkgs) (getAttr "fn" pkgs) (getAttr "glsl-docs" pkgs) (getAttr "glsl-spec" pkgs) (getAttr "glsl-symbols" pkgs) (getAttr "named-readtables" pkgs) (getAttr "parse-float" pkgs) (getAttr "uiop" pkgs) (getAttr "vas-string-metrics" pkgs) ];
-  };
-  varjo_dot_import = {
-    pname = "varjo.import";
-    version = "release-quicklisp-92f9c75b-git";
-    asds = [ "varjo.import" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/varjo/2021-01-24/varjo-release-quicklisp-92f9c75b-git.tgz";
-      sha256 = "0gga4wq74qxql4zxh8zq1ab2xnsz8ygdaf8wxy7w15vv4czgamr9";
-      system = "varjo.import";
-      asd = "varjo.import";
-    });
-    systems = [ "varjo.import" ];
-    lispLibs = [ (getAttr "fare-quasiquote-extras" pkgs) (getAttr "glsl-toolkit" pkgs) (getAttr "rtg-math_dot_vari" pkgs) (getAttr "split-sequence" pkgs) (getAttr "varjo" pkgs) ];
-  };
-  varjo_dot_tests = {
-    pname = "varjo.tests";
-    version = "release-quicklisp-92f9c75b-git";
-    asds = [ "varjo.tests" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/varjo/2021-01-24/varjo-release-quicklisp-92f9c75b-git.tgz";
-      sha256 = "0gga4wq74qxql4zxh8zq1ab2xnsz8ygdaf8wxy7w15vv4czgamr9";
-      system = "varjo.tests";
-      asd = "varjo.tests";
-    });
-    systems = [ "varjo.tests" ];
-    lispLibs = [ (getAttr "fiveam" pkgs) (getAttr "rtg-math_dot_vari" pkgs) (getAttr "varjo" pkgs) ];
-  };
-  vas-string-metrics = {
-    pname = "vas-string-metrics";
-    version = "20211209-git";
-    asds = [ "vas-string-metrics" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/vas-string-metrics/2021-12-09/vas-string-metrics-20211209-git.tgz";
-      sha256 = "1yvkwc939dckv070nlgqfj5ys9ii2rm32m5wfx7qxdjrb4n19sx9";
-      system = "vas-string-metrics";
-      asd = "vas-string-metrics";
-    });
-    systems = [ "vas-string-metrics" ];
-    lispLibs = [  ];
-  };
-  vecto = {
-    pname = "vecto";
-    version = "1.6";
-    asds = [ "vecto" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/vecto/2021-12-30/vecto-1.6.tgz";
-      sha256 = "1s3ii9absili7yiv89byjikxcxlbagsvcxdwkxgsm1rahgggyk5x";
-      system = "vecto";
-      asd = "vecto";
-    });
-    systems = [ "vecto" ];
-    lispLibs = [ (getAttr "cl-vectors" pkgs) (getAttr "zpb-ttf" pkgs) (getAttr "zpng" pkgs) ];
-  };
-  vectometry = {
-    pname = "vectometry";
-    version = "1.6";
-    asds = [ "vectometry" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/vecto/2021-12-30/vecto-1.6.tgz";
-      sha256 = "1s3ii9absili7yiv89byjikxcxlbagsvcxdwkxgsm1rahgggyk5x";
-      system = "vectometry";
-      asd = "vectometry";
-    });
-    systems = [ "vectometry" ];
-    lispLibs = [ (getAttr "vecto" pkgs) ];
-  };
-  vectors = {
-    pname = "vectors";
-    version = "20171227-git";
-    asds = [ "vectors" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/vectors/2017-12-27/vectors-20171227-git.tgz";
-      sha256 = "1sflb1wz6fcszdbqrcfh52bp5ch6wbizzp7jx97ni8lrqq2r6cqy";
-      system = "vectors";
-      asd = "vectors";
-    });
-    systems = [ "vectors" ];
-    lispLibs = [  ];
-  };
-  vellum = {
-    pname = "vellum";
-    version = "20221106-git";
-    asds = [ "vellum" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/vellum/2022-11-06/vellum-20221106-git.tgz";
-      sha256 = "0yp47awrfgk148fd6hpgwicm2r9673is655j9xaiiasfx42m3fir";
-      system = "vellum";
-      asd = "vellum";
-    });
-    systems = [ "vellum" ];
-    lispLibs = [ (getAttr "agnostic-lizard" pkgs) (getAttr "alexandria" pkgs) (getAttr "cl-data-structures" pkgs) (getAttr "closer-mop" pkgs) (getAttr "documentation-utils-extensions" pkgs) (getAttr "iterate" pkgs) (getAttr "lparallel" pkgs) (getAttr "metabang-bind" pkgs) (getAttr "serapeum" pkgs) ];
-  };
-  vellum-binary = {
-    pname = "vellum-binary";
-    version = "20221106-git";
-    asds = [ "vellum-binary" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/vellum-binary/2022-11-06/vellum-binary-20221106-git.tgz";
-      sha256 = "1981mrzcfgda81j14xkqx8n2rir1kk01r7px1s9yjf1f2g2d4zdg";
-      system = "vellum-binary";
-      asd = "vellum-binary";
-    });
-    systems = [ "vellum-binary" ];
-    lispLibs = [ (getAttr "chipz" pkgs) (getAttr "cl-conspack" pkgs) (getAttr "ieee-floats" pkgs) (getAttr "nibbles" pkgs) (getAttr "salza2" pkgs) (getAttr "vellum" pkgs) ];
-  };
-  vellum-clim = {
-    pname = "vellum-clim";
-    version = "20210531-git";
-    asds = [ "vellum-clim" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/vellum-clim/2021-05-31/vellum-clim-20210531-git.tgz";
-      sha256 = "06g1pw0r60yd13hzbjrbpa1p0pnlwkqfn06ipk1gs0kc76gf2im5";
-      system = "vellum-clim";
-      asd = "vellum-clim";
-    });
-    systems = [ "vellum-clim" ];
-    lispLibs = [ (getAttr "iterate" pkgs) (getAttr "mcclim" pkgs) (getAttr "vellum" pkgs) ];
-  };
-  vellum-csv = {
-    pname = "vellum-csv";
-    version = "20220707-git";
-    asds = [ "vellum-csv" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/vellum-csv/2022-07-07/vellum-csv-20220707-git.tgz";
-      sha256 = "1spx6hig55056k32s0fysfwqjnwkfr8j63v6zmfv84x2v90ppclj";
-      system = "vellum-csv";
-      asd = "vellum-csv";
-    });
-    systems = [ "vellum-csv" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "documentation-utils-extensions" pkgs) (getAttr "iterate" pkgs) (getAttr "parse-float" pkgs) (getAttr "serapeum" pkgs) (getAttr "uiop" pkgs) (getAttr "vellum" pkgs) ];
-  };
-  vellum-csv-tests = {
-    pname = "vellum-csv-tests";
-    version = "20220707-git";
-    asds = [ "vellum-csv-tests" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/vellum-csv/2022-07-07/vellum-csv-20220707-git.tgz";
-      sha256 = "1spx6hig55056k32s0fysfwqjnwkfr8j63v6zmfv84x2v90ppclj";
-      system = "vellum-csv-tests";
-      asd = "vellum-csv-tests";
-    });
-    systems = [ "vellum-csv-tests" ];
-    lispLibs = [ (getAttr "prove" pkgs) (getAttr "prove-asdf" pkgs) (getAttr "vellum-csv" pkgs) ];
-  };
-  vellum-postmodern = {
-    pname = "vellum-postmodern";
-    version = "20221106-git";
-    asds = [ "vellum-postmodern" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/vellum-postmodern/2022-11-06/vellum-postmodern-20221106-git.tgz";
-      sha256 = "0nw2lwk32n16vfvzrihb7683fb38qq01aiacaw00402vzgjiskx6";
-      system = "vellum-postmodern";
-      asd = "vellum-postmodern";
-    });
-    systems = [ "vellum-postmodern" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "documentation-utils-extensions" pkgs) (getAttr "iterate" pkgs) (getAttr "cl-postgres" pkgs) (getAttr "postmodern" pkgs) (getAttr "s-sql" pkgs) (getAttr "serapeum" pkgs) (getAttr "vellum" pkgs) ];
-  };
-  vellum-tests = {
-    pname = "vellum-tests";
-    version = "20221106-git";
-    asds = [ "vellum-tests" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/vellum/2022-11-06/vellum-20221106-git.tgz";
-      sha256 = "0yp47awrfgk148fd6hpgwicm2r9673is655j9xaiiasfx42m3fir";
-      system = "vellum-tests";
-      asd = "vellum-tests";
-    });
-    systems = [ "vellum-tests" ];
-    lispLibs = [ (getAttr "prove" pkgs) (getAttr "prove-asdf" pkgs) (getAttr "vellum" pkgs) ];
-  };
-  veq = {
-    pname = "veq";
-    version = "20220707-git";
-    asds = [ "veq" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-veq/2022-07-07/cl-veq-20220707-git.tgz";
-      sha256 = "0smykplq5914xax1cp9cibvmjn5l5vipbm95f6wc8g0laysmqmkc";
-      system = "veq";
-      asd = "veq";
-    });
-    systems = [ "veq" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "str" pkgs) (getAttr "prove" pkgs) ];
-  };
-  veq_slash_tests = {
-    pname = "veq_tests";
-    version = "20220707-git";
-    asds = [ "veq" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-veq/2022-07-07/cl-veq-20220707-git.tgz";
-      sha256 = "0smykplq5914xax1cp9cibvmjn5l5vipbm95f6wc8g0laysmqmkc";
-      system = "veq";
-      asd = "veq";
-    });
-    systems = [ "veq/tests" ];
-    lispLibs = [ (getAttr "veq" pkgs) (getAttr "prove" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  verbose = {
-    pname = "verbose";
-    version = "20201220-git";
-    asds = [ "verbose" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/verbose/2020-12-20/verbose-20201220-git.tgz";
-      sha256 = "0r51ydj5v7afi2jrlscbhxprv13d9vzg5316g1yzwaxc1kzsdsw6";
-      system = "verbose";
-      asd = "verbose";
-    });
-    systems = [ "verbose" ];
-    lispLibs = [ (getAttr "bordeaux-threads" pkgs) (getAttr "dissect" pkgs) (getAttr "documentation-utils" pkgs) (getAttr "local-time" pkgs) (getAttr "piping" pkgs) ];
-  };
-  verlet = {
-    pname = "verlet";
-    version = "20211209-git";
-    asds = [ "verlet" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/verlet/2021-12-09/verlet-20211209-git.tgz";
-      sha256 = "0n6wgjwwbrr13ldwa4y59n2ixn47rr0ad7n3jbb58635z6ahfvd4";
-      system = "verlet";
-      asd = "verlet";
-    });
-    systems = [ "verlet" ];
-    lispLibs = [ (getAttr "chain" pkgs) (getAttr "fset" pkgs) (getAttr "metabang-bind" pkgs) (getAttr "mgl-pax" pkgs) (getAttr "rtg-math" pkgs) ];
-  };
-  vernacular = {
-    pname = "vernacular";
-    version = "20211020-git";
-    asds = [ "vernacular" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/vernacular/2021-10-20/vernacular-20211020-git.tgz";
-      sha256 = "19vzn28hw4is4sgmvzqin18ds89s0pai21vcm0ky10vmfv6wg745";
-      system = "vernacular";
-      asd = "vernacular";
-    });
-    systems = [ "vernacular" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "local-time" pkgs) (getAttr "named-readtables" pkgs) (getAttr "overlord" pkgs) (getAttr "serapeum" pkgs) (getAttr "trivia" pkgs) (getAttr "trivial-garbage" pkgs) (getAttr "trivial-macroexpand-all" pkgs) ];
-  };
-  verrazano = {
-    pname = "verrazano";
-    version = "20120909-darcs";
-    asds = [ "verrazano" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/verrazano/2012-09-09/verrazano-20120909-darcs.tgz";
-      sha256 = "0d7qv5jwv5p1r64g4rfqb844b5fh71p82b5983gjz0a5p391p270";
-      system = "verrazano";
-      asd = "verrazano";
-    });
-    systems = [ "verrazano" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cffi" pkgs) (getAttr "cl-ppcre" pkgs) (getAttr "closer-mop" pkgs) (getAttr "cxml" pkgs) (getAttr "iterate" pkgs) (getAttr "metabang-bind" pkgs) (getAttr "parse-number" pkgs) (getAttr "trivial-shell" pkgs) ];
-  };
-  verrazano-runtime = {
-    pname = "verrazano-runtime";
-    version = "20120909-darcs";
-    asds = [ "verrazano-runtime" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/verrazano/2012-09-09/verrazano-20120909-darcs.tgz";
-      sha256 = "0d7qv5jwv5p1r64g4rfqb844b5fh71p82b5983gjz0a5p391p270";
-      system = "verrazano-runtime";
-      asd = "verrazano-runtime";
-    });
-    systems = [ "verrazano-runtime" ];
-    lispLibs = [ (getAttr "cffi" pkgs) ];
-  };
-  vertex = {
-    pname = "vertex";
-    version = "20150608-git";
-    asds = [ "vertex" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/vertex/2015-06-08/vertex-20150608-git.tgz";
-      sha256 = "0g3ck1kvp6x9874ffizjz3fsd35a3m4hcr2x5gq9fdql680ic4k2";
-      system = "vertex";
-      asd = "vertex";
-    });
-    systems = [ "vertex" ];
-    lispLibs = [ (getAttr "common-doc" pkgs) (getAttr "common-doc-plump" pkgs) (getAttr "plump-tex" pkgs) ];
-  };
-  vertex-test = {
-    pname = "vertex-test";
-    version = "20150608-git";
-    asds = [ "vertex-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/vertex/2015-06-08/vertex-20150608-git.tgz";
-      sha256 = "0g3ck1kvp6x9874ffizjz3fsd35a3m4hcr2x5gq9fdql680ic4k2";
-      system = "vertex-test";
-      asd = "vertex-test";
-    });
-    systems = [ "vertex-test" ];
-    lispLibs = [ (getAttr "fiveam" pkgs) (getAttr "vertex" pkgs) ];
-  };
-  vex = {
-    pname = "vex";
-    version = "20220707-git";
-    asds = [ "vex" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/april/2022-07-07/april-20220707-git.tgz";
-      sha256 = "016mfldk98j1kbj8fpqwzhvdkfbmqsfbzjaawnlz9q5pr6srv26r";
-      system = "vex";
-      asd = "vex";
-    });
-    systems = [ "vex" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "maxpc-apache" pkgs) (getAttr "array-operations" pkgs) (getAttr "cl-ppcre" pkgs) (getAttr "prove" pkgs) (getAttr "symbol-munger" pkgs) ];
-  };
-  vgplot = {
-    pname = "vgplot";
-    version = "20220707-git";
-    asds = [ "vgplot" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/vgplot/2022-07-07/vgplot-20220707-git.tgz";
-      sha256 = "1vc5fd787xa8831wjbmwrpg17f9isi5k8dmb85fsysz47plbvi1y";
-      system = "vgplot";
-      asd = "vgplot";
-    });
-    systems = [ "vgplot" ];
-    lispLibs = [ (getAttr "cl-fad" pkgs) (getAttr "cl-ppcre" pkgs) (getAttr "ltk" pkgs) ];
-  };
-  vgplot_slash_test = {
-    pname = "vgplot_test";
-    version = "20220707-git";
-    asds = [ "vgplot" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/vgplot/2022-07-07/vgplot-20220707-git.tgz";
-      sha256 = "1vc5fd787xa8831wjbmwrpg17f9isi5k8dmb85fsysz47plbvi1y";
-      system = "vgplot";
-      asd = "vgplot";
-    });
-    systems = [ "vgplot/test" ];
-    lispLibs = [ (getAttr "lisp-unit" pkgs) (getAttr "vgplot" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  vivid-colors = {
-    pname = "vivid-colors";
-    version = "20220707-git";
-    asds = [ "vivid-colors" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/vivid-colors/2022-07-07/vivid-colors-20220707-git.tgz";
-      sha256 = "0a1q1dgfgd7kqdziw80z1hhyp7l0mrd768lq68jva7vdv1r049ww";
-      system = "vivid-colors";
-      asd = "vivid-colors";
-    });
-    systems = [ "vivid-colors" ];
-    lispLibs = [ (getAttr "cl-colors2" pkgs) (getAttr "closer-mop" pkgs) (getAttr "jingoh_dot_documentizer" pkgs) (getAttr "lambda-fiddle" pkgs) (getAttr "millet" pkgs) (getAttr "vivid-colors_dot_content" pkgs) (getAttr "vivid-colors_dot_dispatch" pkgs) (getAttr "vivid-colors_dot_stream" pkgs) ];
-  };
-  vivid-colors_dot_content = {
-    pname = "vivid-colors.content";
-    version = "20220707-git";
-    asds = [ "vivid-colors.content" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/vivid-colors/2022-07-07/vivid-colors-20220707-git.tgz";
-      sha256 = "0a1q1dgfgd7kqdziw80z1hhyp7l0mrd768lq68jva7vdv1r049ww";
-      system = "vivid-colors.content";
-      asd = "vivid-colors.content";
-    });
-    systems = [ "vivid-colors.content" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cl-ansi-text" pkgs) (getAttr "jingoh_dot_documentizer" pkgs) (getAttr "mcase" pkgs) (getAttr "vivid-colors_dot_queue" pkgs) (getAttr "vivid-colors_dot_shared" pkgs) ];
-  };
-  vivid-colors_dot_content_dot_test = {
-    pname = "vivid-colors.content.test";
-    version = "20220707-git";
-    asds = [ "vivid-colors.content.test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/vivid-colors/2022-07-07/vivid-colors-20220707-git.tgz";
-      sha256 = "0a1q1dgfgd7kqdziw80z1hhyp7l0mrd768lq68jva7vdv1r049ww";
-      system = "vivid-colors.content.test";
-      asd = "vivid-colors.content.test";
-    });
-    systems = [ "vivid-colors.content.test" ];
-    lispLibs = [ (getAttr "jingoh" pkgs) (getAttr "vivid-colors_dot_content" pkgs) ];
-  };
-  vivid-colors_dot_dispatch = {
-    pname = "vivid-colors.dispatch";
-    version = "20220707-git";
-    asds = [ "vivid-colors.dispatch" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/vivid-colors/2022-07-07/vivid-colors-20220707-git.tgz";
-      sha256 = "0a1q1dgfgd7kqdziw80z1hhyp7l0mrd768lq68jva7vdv1r049ww";
-      system = "vivid-colors.dispatch";
-      asd = "vivid-colors.dispatch";
-    });
-    systems = [ "vivid-colors.dispatch" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "jingoh_dot_documentizer" pkgs) (getAttr "millet" pkgs) ];
-  };
-  vivid-colors_dot_dispatch_dot_test = {
-    pname = "vivid-colors.dispatch.test";
-    version = "20220707-git";
-    asds = [ "vivid-colors.dispatch.test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/vivid-colors/2022-07-07/vivid-colors-20220707-git.tgz";
-      sha256 = "0a1q1dgfgd7kqdziw80z1hhyp7l0mrd768lq68jva7vdv1r049ww";
-      system = "vivid-colors.dispatch.test";
-      asd = "vivid-colors.dispatch.test";
-    });
-    systems = [ "vivid-colors.dispatch.test" ];
-    lispLibs = [ (getAttr "jingoh" pkgs) (getAttr "vivid-colors_dot_dispatch" pkgs) ];
-  };
-  vivid-colors_dot_queue = {
-    pname = "vivid-colors.queue";
-    version = "20220707-git";
-    asds = [ "vivid-colors.queue" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/vivid-colors/2022-07-07/vivid-colors-20220707-git.tgz";
-      sha256 = "0a1q1dgfgd7kqdziw80z1hhyp7l0mrd768lq68jva7vdv1r049ww";
-      system = "vivid-colors.queue";
-      asd = "vivid-colors.queue";
-    });
-    systems = [ "vivid-colors.queue" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "jingoh_dot_documentizer" pkgs) (getAttr "millet" pkgs) ];
-  };
-  vivid-colors_dot_queue_dot_test = {
-    pname = "vivid-colors.queue.test";
-    version = "20220707-git";
-    asds = [ "vivid-colors.queue.test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/vivid-colors/2022-07-07/vivid-colors-20220707-git.tgz";
-      sha256 = "0a1q1dgfgd7kqdziw80z1hhyp7l0mrd768lq68jva7vdv1r049ww";
-      system = "vivid-colors.queue.test";
-      asd = "vivid-colors.queue.test";
-    });
-    systems = [ "vivid-colors.queue.test" ];
-    lispLibs = [ (getAttr "jingoh" pkgs) (getAttr "vivid-colors_dot_queue" pkgs) ];
-  };
-  vivid-colors_dot_shared = {
-    pname = "vivid-colors.shared";
-    version = "20220707-git";
-    asds = [ "vivid-colors.shared" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/vivid-colors/2022-07-07/vivid-colors-20220707-git.tgz";
-      sha256 = "0a1q1dgfgd7kqdziw80z1hhyp7l0mrd768lq68jva7vdv1r049ww";
-      system = "vivid-colors.shared";
-      asd = "vivid-colors.shared";
-    });
-    systems = [ "vivid-colors.shared" ];
-    lispLibs = [ (getAttr "jingoh_dot_documentizer" pkgs) ];
-  };
-  vivid-colors_dot_shared_dot_test = {
-    pname = "vivid-colors.shared.test";
-    version = "20220707-git";
-    asds = [ "vivid-colors.shared.test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/vivid-colors/2022-07-07/vivid-colors-20220707-git.tgz";
-      sha256 = "0a1q1dgfgd7kqdziw80z1hhyp7l0mrd768lq68jva7vdv1r049ww";
-      system = "vivid-colors.shared.test";
-      asd = "vivid-colors.shared.test";
-    });
-    systems = [ "vivid-colors.shared.test" ];
-    lispLibs = [ (getAttr "jingoh" pkgs) (getAttr "vivid-colors_dot_shared" pkgs) ];
-  };
-  vivid-colors_dot_stream = {
-    pname = "vivid-colors.stream";
-    version = "20220707-git";
-    asds = [ "vivid-colors.stream" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/vivid-colors/2022-07-07/vivid-colors-20220707-git.tgz";
-      sha256 = "0a1q1dgfgd7kqdziw80z1hhyp7l0mrd768lq68jva7vdv1r049ww";
-      system = "vivid-colors.stream";
-      asd = "vivid-colors.stream";
-    });
-    systems = [ "vivid-colors.stream" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cl-ansi-text" pkgs) (getAttr "jingoh_dot_documentizer" pkgs) (getAttr "trivial-gray-streams" pkgs) (getAttr "vivid-colors_dot_content" pkgs) (getAttr "vivid-colors_dot_dispatch" pkgs) (getAttr "vivid-colors_dot_shared" pkgs) ];
-  };
-  vivid-colors_dot_stream_dot_test = {
-    pname = "vivid-colors.stream.test";
-    version = "20220707-git";
-    asds = [ "vivid-colors.stream.test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/vivid-colors/2022-07-07/vivid-colors-20220707-git.tgz";
-      sha256 = "0a1q1dgfgd7kqdziw80z1hhyp7l0mrd768lq68jva7vdv1r049ww";
-      system = "vivid-colors.stream.test";
-      asd = "vivid-colors.stream.test";
-    });
-    systems = [ "vivid-colors.stream.test" ];
-    lispLibs = [ (getAttr "jingoh" pkgs) (getAttr "vivid-colors_dot_stream" pkgs) ];
-  };
-  vivid-colors_dot_test = {
-    pname = "vivid-colors.test";
-    version = "20220707-git";
-    asds = [ "vivid-colors.test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/vivid-colors/2022-07-07/vivid-colors-20220707-git.tgz";
-      sha256 = "0a1q1dgfgd7kqdziw80z1hhyp7l0mrd768lq68jva7vdv1r049ww";
-      system = "vivid-colors.test";
-      asd = "vivid-colors.test";
-    });
-    systems = [ "vivid-colors.test" ];
-    lispLibs = [ (getAttr "jingoh" pkgs) (getAttr "vivid-colors" pkgs) ];
-  };
-  vivid-diff = {
-    pname = "vivid-diff";
-    version = "20220707-git";
-    asds = [ "vivid-diff" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/vivid-diff/2022-07-07/vivid-diff-20220707-git.tgz";
-      sha256 = "195hqx304x4na56qpiblz30ahp1qj55kan50mkr0xyjhcx75nsdk";
-      system = "vivid-diff";
-      asd = "vivid-diff";
-    });
-    systems = [ "vivid-diff" ];
-    lispLibs = [ (getAttr "cl-colors2" pkgs) (getAttr "closer-mop" pkgs) (getAttr "jingoh_dot_documentizer" pkgs) (getAttr "matrix-case" pkgs) (getAttr "vivid-colors" pkgs) ];
-  };
-  vivid-diff_dot_test = {
-    pname = "vivid-diff.test";
-    version = "20220707-git";
-    asds = [ "vivid-diff.test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/vivid-diff/2022-07-07/vivid-diff-20220707-git.tgz";
-      sha256 = "195hqx304x4na56qpiblz30ahp1qj55kan50mkr0xyjhcx75nsdk";
-      system = "vivid-diff.test";
-      asd = "vivid-diff.test";
-    });
-    systems = [ "vivid-diff.test" ];
-    lispLibs = [ (getAttr "cl-ppcre" pkgs) (getAttr "jingoh" pkgs) (getAttr "vivid-diff" pkgs) ];
-  };
-  vk = {
-    pname = "vk";
-    version = "20221106-git";
-    asds = [ "vk" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/vk/2022-11-06/vk-20221106-git.tgz";
-      sha256 = "1a0bx15gjjzhgfp0y3lxp13binfvw4qm6pfwig45ii8lrwjwnlql";
-      system = "vk";
-      asd = "vk";
-    });
-    systems = [ "vk" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cffi" pkgs) (getAttr "rove" pkgs) ];
-  };
-  vk_slash_tests = {
-    pname = "vk_tests";
-    version = "20221106-git";
-    asds = [ "vk" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/vk/2022-11-06/vk-20221106-git.tgz";
-      sha256 = "1a0bx15gjjzhgfp0y3lxp13binfvw4qm6pfwig45ii8lrwjwnlql";
-      system = "vk";
-      asd = "vk";
-    });
-    systems = [ "vk/tests" ];
-    lispLibs = [ (getAttr "rove" pkgs) (getAttr "vk" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  voipms = {
-    pname = "voipms";
-    version = "20220707-git";
-    asds = [ "voipms" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-voipms/2022-07-07/cl-voipms-20220707-git.tgz";
-      sha256 = "08ghirkmia8jn03r6z1025v321ygc2xalrwsqfvl3xy377xxrd3d";
-      system = "voipms";
-      asd = "voipms";
-    });
-    systems = [ "voipms" ];
-    lispLibs = [ (getAttr "erjoalgo-webutil" pkgs) (getAttr "local-time" pkgs) ];
-  };
-  vom = {
-    pname = "vom";
-    version = "20160825-git";
-    asds = [ "vom" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/vom/2016-08-25/vom-20160825-git.tgz";
-      sha256 = "0536kppj76ax4lrxhv42npkfjsmx45km2g439vf9jmw3apinz9cy";
-      system = "vom";
-      asd = "vom";
-    });
-    systems = [ "vom" ];
-    lispLibs = [  ];
-  };
-  vom-json = {
-    pname = "vom-json";
-    version = "20200610-git";
-    asds = [ "vom-json" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/vom-json/2020-06-10/vom-json-20200610-git.tgz";
-      sha256 = "14b39kqbjpibh545gh9mb6w5g0kz7fhd5zxfmlf9a0fpdbwhw41c";
-      system = "vom-json";
-      asd = "vom-json";
-    });
-    systems = [ "vom-json" ];
-    lispLibs = [ (getAttr "jonathan" pkgs) (getAttr "local-time" pkgs) (getAttr "vom" pkgs) ];
-  };
-  vom-json_slash_test = {
-    pname = "vom-json_test";
-    version = "20200610-git";
-    asds = [ "vom-json" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/vom-json/2020-06-10/vom-json-20200610-git.tgz";
-      sha256 = "14b39kqbjpibh545gh9mb6w5g0kz7fhd5zxfmlf9a0fpdbwhw41c";
-      system = "vom-json";
-      asd = "vom-json";
-    });
-    systems = [ "vom-json/test" ];
-    lispLibs = [ (getAttr "rove" pkgs) (getAttr "vom-json" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  vorbisfile-ffi = {
-    pname = "vorbisfile-ffi";
-    version = "20151218-git";
-    asds = [ "vorbisfile-ffi" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/mixalot/2015-12-18/mixalot-20151218-git.tgz";
-      sha256 = "0kqx933k8kly4yhzvspizzki556s1lfd4zafap42jcsqqhr4i5q9";
-      system = "vorbisfile-ffi";
-      asd = "vorbisfile-ffi";
-    });
-    systems = [ "vorbisfile-ffi" ];
-    lispLibs = [ (getAttr "cffi" pkgs) (getAttr "cffi-grovel" pkgs) ];
-  };
-  vp-trees = {
-    pname = "vp-trees";
-    version = "20201220-git";
-    asds = [ "vp-trees" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/vp-trees/2020-12-20/vp-trees-20201220-git.tgz";
-      sha256 = "1y78l7ijbwb8j79mm95axclfxgvnhg7mawi6jkwy27q2vyhvhlip";
-      system = "vp-trees";
-      asd = "vp-trees";
-    });
-    systems = [ "vp-trees" ];
-    lispLibs = [  ];
-  };
-  vp-trees_slash_tests = {
-    pname = "vp-trees_tests";
-    version = "20201220-git";
-    asds = [ "vp-trees" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/vp-trees/2020-12-20/vp-trees-20201220-git.tgz";
-      sha256 = "1y78l7ijbwb8j79mm95axclfxgvnhg7mawi6jkwy27q2vyhvhlip";
-      system = "vp-trees";
-      asd = "vp-trees";
-    });
-    systems = [ "vp-trees/tests" ];
-    lispLibs = [ (getAttr "fiveam" pkgs) (getAttr "vp-trees" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  wallstreetflets = {
-    pname = "wallstreetflets";
-    version = "20211209-git";
-    asds = [ "wallstreetflets" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/wallstreetflets/2021-12-09/wallstreetflets-20211209-git.tgz";
-      sha256 = "0d9anws4gk16an1kl4kads6lhm8a4mpiwxg74i3235d5874gbdj5";
-      system = "wallstreetflets";
-      asd = "wallstreetflets";
-    });
-    systems = [ "wallstreetflets" ];
-    lispLibs = [ (getAttr "dexador" pkgs) (getAttr "lquery" pkgs) (getAttr "parse-number" pkgs) ];
-  };
-  wasm-encoder = {
-    pname = "wasm-encoder";
-    version = "20210630-git";
-    asds = [ "wasm-encoder" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/wasm-encoder/2021-06-30/wasm-encoder-20210630-git.tgz";
-      sha256 = "1h094d8www9ydg96fjj17pi0lb63ikgyp5237cl6n3rmg4jpy9w6";
-      system = "wasm-encoder";
-      asd = "wasm-encoder";
-    });
-    systems = [ "wasm-encoder" ];
-    lispLibs = [ (getAttr "agutil" pkgs) (getAttr "alexandria" pkgs) (getAttr "babel" pkgs) (getAttr "flexi-streams" pkgs) (getAttr "generic-cl" pkgs) (getAttr "ieee-floats" pkgs) (getAttr "trivia" pkgs) ];
-  };
-  wasm-encoder_slash_test = {
-    pname = "wasm-encoder_test";
-    version = "20210630-git";
-    asds = [ "wasm-encoder" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/wasm-encoder/2021-06-30/wasm-encoder-20210630-git.tgz";
-      sha256 = "1h094d8www9ydg96fjj17pi0lb63ikgyp5237cl6n3rmg4jpy9w6";
-      system = "wasm-encoder";
-      asd = "wasm-encoder";
-    });
-    systems = [ "wasm-encoder/test" ];
-    lispLibs = [ (getAttr "fiveam" pkgs) (getAttr "wasm-encoder" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  water = {
-    pname = "water";
-    version = "20190107-git";
-    asds = [ "water" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/water/2019-01-07/water-20190107-git.tgz";
-      sha256 = "0w9b6mh10rfv7rg1zq28pivad6435i9h839km6nlbhq9xmx0g27s";
-      system = "water";
-      asd = "water";
-    });
-    systems = [ "water" ];
-    lispLibs = [ (getAttr "parenscript" pkgs) ];
-  };
-  wayflan = {
-    pname = "wayflan";
-    version = "20221106-git";
-    asds = [ "wayflan" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/wayflan/2022-11-06/wayflan-20221106-git.tgz";
-      sha256 = "0d5m3w7312h9c9drrcilvf1k9cwrsksgrp1lggwiiyx810pw4jfj";
-      system = "wayflan";
-      asd = "wayflan";
-    });
-    systems = [ "wayflan" ];
-    lispLibs = [ (getAttr "cffi-grovel" pkgs) (getAttr "wayflan-client" pkgs) ];
-  };
-  wayflan-client = {
-    pname = "wayflan-client";
-    version = "20221106-git";
-    asds = [ "wayflan-client" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/wayflan/2022-11-06/wayflan-20221106-git.tgz";
-      sha256 = "0d5m3w7312h9c9drrcilvf1k9cwrsksgrp1lggwiiyx810pw4jfj";
-      system = "wayflan-client";
-      asd = "wayflan-client";
-    });
-    systems = [ "wayflan-client" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "babel" pkgs) (getAttr "cffi" pkgs) (getAttr "cffi-grovel" pkgs) (getAttr "closer-mop" pkgs) (getAttr "plump" pkgs) ];
-  };
-  wayflan-client_slash_examples = {
-    pname = "wayflan-client_examples";
-    version = "20221106-git";
-    asds = [ "wayflan-client" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/wayflan/2022-11-06/wayflan-20221106-git.tgz";
-      sha256 = "0d5m3w7312h9c9drrcilvf1k9cwrsksgrp1lggwiiyx810pw4jfj";
-      system = "wayflan-client";
-      asd = "wayflan-client";
-    });
-    systems = [ "wayflan-client/examples" ];
-    lispLibs = [ (getAttr "cl-cairo2" pkgs) (getAttr "cl-colors" pkgs) (getAttr "cl-pango" pkgs) (getAttr "cl-xkb" pkgs) (getAttr "input-event-codes" pkgs) (getAttr "posix-shm" pkgs) (getAttr "wayflan-client" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  wayflan_slash_common = {
-    pname = "wayflan_common";
-    version = "20221106-git";
-    asds = [ "wayflan" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/wayflan/2022-11-06/wayflan-20221106-git.tgz";
-      sha256 = "0d5m3w7312h9c9drrcilvf1k9cwrsksgrp1lggwiiyx810pw4jfj";
-      system = "wayflan";
-      asd = "wayflan";
-    });
-    systems = [ "wayflan/common" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "babel" pkgs) (getAttr "cffi" pkgs) (getAttr "cffi-grovel" pkgs) (getAttr "plump" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  wayflan_slash_test = {
-    pname = "wayflan_test";
-    version = "20221106-git";
-    asds = [ "wayflan" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/wayflan/2022-11-06/wayflan-20221106-git.tgz";
-      sha256 = "0d5m3w7312h9c9drrcilvf1k9cwrsksgrp1lggwiiyx810pw4jfj";
-      system = "wayflan";
-      asd = "wayflan";
-    });
-    systems = [ "wayflan/test" ];
-    lispLibs = [ (getAttr "parachute" pkgs) (getAttr "wayflan" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  webactions = {
-    pname = "webactions";
-    version = "20190813-git";
-    asds = [ "webactions" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/portableaserve/2019-08-13/portableaserve-20190813-git.tgz";
-      sha256 = "0ak6mqp84sjr0a7h5svr16vra4bf4fcx6wpir0n88dc1vjwy5xqa";
-      system = "webactions";
-      asd = "webactions";
-    });
-    systems = [ "webactions" ];
-    lispLibs = [ (getAttr "acl-compat" pkgs) (getAttr "aserve" pkgs) (getAttr "htmlgen" pkgs) ];
-  };
-  webapi = {
-    pname = "webapi";
-    version = "20211020-git";
-    asds = [ "webapi" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/webapi/2021-10-20/webapi-20211020-git.tgz";
-      sha256 = "1bh2zp9gjdjk6zn5wwnv13qsav5b73hxd3lkph471jh0d1z9w0l7";
-      system = "webapi";
-      asd = "webapi";
-    });
-    systems = [ "webapi" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "closer-mop" pkgs) (getAttr "dexador" pkgs) (getAttr "kebab" pkgs) (getAttr "quri" pkgs) (getAttr "st-json" pkgs) ];
-  };
-  weblocks-clsql = {
-    pname = "weblocks-clsql";
-    version = "20211020-git";
-    asds = [ "weblocks-clsql" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/weblocks-stores/2021-10-20/weblocks-stores-20211020-git.tgz";
-      sha256 = "1k44dad18fkp80xjm04fiy6bciirs71ljvm8a2rb33xndrbxiiya";
-      system = "weblocks-clsql";
-      asd = "weblocks-clsql";
-    });
-    systems = [ "weblocks-clsql" ];
-    lispLibs = [ (getAttr "closer-mop" pkgs) (getAttr "clsql" pkgs) (getAttr "clsql-fluid" pkgs) (getAttr "metatilities" pkgs) (getAttr "weblocks-util" pkgs) (getAttr "weblocks-stores" pkgs) ];
-  };
-  weblocks-memory = {
-    pname = "weblocks-memory";
-    version = "20211020-git";
-    asds = [ "weblocks-memory" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/weblocks-stores/2021-10-20/weblocks-stores-20211020-git.tgz";
-      sha256 = "1k44dad18fkp80xjm04fiy6bciirs71ljvm8a2rb33xndrbxiiya";
-      system = "weblocks-memory";
-      asd = "weblocks-memory";
-    });
-    systems = [ "weblocks-memory" ];
-    lispLibs = [ (getAttr "cl-ppcre" pkgs) (getAttr "metatilities" pkgs) (getAttr "weblocks-stores" pkgs) ];
-  };
-  weblocks-montezuma = {
-    pname = "weblocks-montezuma";
-    version = "20211020-git";
-    asds = [ "weblocks-montezuma" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/weblocks-stores/2021-10-20/weblocks-stores-20211020-git.tgz";
-      sha256 = "1k44dad18fkp80xjm04fiy6bciirs71ljvm8a2rb33xndrbxiiya";
-      system = "weblocks-montezuma";
-      asd = "weblocks-montezuma";
-    });
-    systems = [ "weblocks-montezuma" ];
-    lispLibs = [ (getAttr "montezuma" pkgs) (getAttr "weblocks-stores" pkgs) ];
-  };
-  weblocks-perec = {
-    pname = "weblocks-perec";
-    version = "20211020-git";
-    asds = [ "weblocks-perec" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/weblocks-stores/2021-10-20/weblocks-stores-20211020-git.tgz";
-      sha256 = "1k44dad18fkp80xjm04fiy6bciirs71ljvm8a2rb33xndrbxiiya";
-      system = "weblocks-perec";
-      asd = "weblocks-perec";
-    });
-    systems = [ "weblocks-perec" ];
-    lispLibs = [ (getAttr "hu_dot_dwim_dot_perec" pkgs) (getAttr "weblocks-stores" pkgs) ];
-  };
-  weblocks-prevalence = {
-    pname = "weblocks-prevalence";
-    version = "20211020-git";
-    asds = [ "weblocks-prevalence" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/weblocks-stores/2021-10-20/weblocks-stores-20211020-git.tgz";
-      sha256 = "1k44dad18fkp80xjm04fiy6bciirs71ljvm8a2rb33xndrbxiiya";
-      system = "weblocks-prevalence";
-      asd = "weblocks-prevalence";
-    });
-    systems = [ "weblocks-prevalence" ];
-    lispLibs = [ (getAttr "bordeaux-threads" pkgs) (getAttr "cl-ppcre" pkgs) (getAttr "cl-prevalence" pkgs) (getAttr "metatilities" pkgs) (getAttr "weblocks-memory" pkgs) (getAttr "weblocks-stores" pkgs) ];
-  };
-  weblocks-scripts = {
-    pname = "weblocks-scripts";
-    version = "20211020-git";
-    asds = [ "weblocks-scripts" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/weblocks/2021-10-20/weblocks-20211020-git.tgz";
-      sha256 = "1hilpzm1p3hrp2hxghjr9y8sy5a9bgk96n8kc8bphvn7dvlbm78j";
-      system = "weblocks-scripts";
-      asd = "weblocks-scripts";
-    });
-    systems = [ "weblocks-scripts" ];
-    lispLibs = [ (getAttr "cl-fad" pkgs) (getAttr "cl-ppcre" pkgs) ];
-  };
-  weblocks-stores = {
-    pname = "weblocks-stores";
-    version = "20211020-git";
-    asds = [ "weblocks-stores" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/weblocks-stores/2021-10-20/weblocks-stores-20211020-git.tgz";
-      sha256 = "1k44dad18fkp80xjm04fiy6bciirs71ljvm8a2rb33xndrbxiiya";
-      system = "weblocks-stores";
-      asd = "weblocks-stores";
-    });
-    systems = [ "weblocks-stores" ];
-    lispLibs = [ (getAttr "closer-mop" pkgs) (getAttr "metatilities" pkgs) (getAttr "weblocks-util" pkgs) ];
-  };
-  weblocks-util = {
-    pname = "weblocks-util";
-    version = "20211020-git";
-    asds = [ "weblocks-util" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/weblocks/2021-10-20/weblocks-20211020-git.tgz";
-      sha256 = "1hilpzm1p3hrp2hxghjr9y8sy5a9bgk96n8kc8bphvn7dvlbm78j";
-      system = "weblocks-util";
-      asd = "weblocks-util";
-    });
-    systems = [ "weblocks-util" ];
-    lispLibs = [ (getAttr "anaphora" pkgs) (getAttr "bordeaux-threads" pkgs) (getAttr "cl-cont" pkgs) (getAttr "cl-fad" pkgs) (getAttr "cl-json" pkgs) (getAttr "cl-ppcre" pkgs) (getAttr "cl-who" pkgs) (getAttr "closer-mop" pkgs) (getAttr "f-underscore" pkgs) (getAttr "html-template" pkgs) (getAttr "hunchentoot" pkgs) (getAttr "ironclad" pkgs) (getAttr "metatilities" pkgs) (getAttr "optima" pkgs) (getAttr "parenscript" pkgs) (getAttr "parse-number" pkgs) (getAttr "pretty-function" pkgs) (getAttr "puri" pkgs) (getAttr "salza2" pkgs) (getAttr "trivial-backtrace" pkgs) (getAttr "trivial-timeout" pkgs) ];
-  };
-  websocket-driver = {
-    pname = "websocket-driver";
-    version = "20220331-git";
-    asds = [ "websocket-driver" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/websocket-driver/2022-03-31/websocket-driver-20220331-git.tgz";
-      sha256 = "183jb9m4y5drc4i9l3c03q0sx8rlqn2d2290c7whl4r3dnginnnf";
-      system = "websocket-driver";
-      asd = "websocket-driver";
-    });
-    systems = [ "websocket-driver" ];
-    lispLibs = [ (getAttr "websocket-driver-client" pkgs) (getAttr "websocket-driver-server" pkgs) ];
-  };
-  websocket-driver-base = {
-    pname = "websocket-driver-base";
-    version = "20220331-git";
-    asds = [ "websocket-driver-base" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/websocket-driver/2022-03-31/websocket-driver-20220331-git.tgz";
-      sha256 = "183jb9m4y5drc4i9l3c03q0sx8rlqn2d2290c7whl4r3dnginnnf";
-      system = "websocket-driver-base";
-      asd = "websocket-driver-base";
-    });
-    systems = [ "websocket-driver-base" ];
-    lispLibs = [ (getAttr "bordeaux-threads" pkgs) (getAttr "cl-base64" pkgs) (getAttr "event-emitter" pkgs) (getAttr "fast-io" pkgs) (getAttr "fast-websocket" pkgs) (getAttr "sha1" pkgs) (getAttr "split-sequence" pkgs) ];
-  };
-  websocket-driver-client = {
-    pname = "websocket-driver-client";
-    version = "20220331-git";
-    asds = [ "websocket-driver-client" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/websocket-driver/2022-03-31/websocket-driver-20220331-git.tgz";
-      sha256 = "183jb9m4y5drc4i9l3c03q0sx8rlqn2d2290c7whl4r3dnginnnf";
-      system = "websocket-driver-client";
-      asd = "websocket-driver-client";
-    });
-    systems = [ "websocket-driver-client" ];
-    lispLibs = [ (getAttr "babel" pkgs) (getAttr "cl_plus_ssl" pkgs) (getAttr "cl-base64" pkgs) (getAttr "fast-http" pkgs) (getAttr "fast-io" pkgs) (getAttr "fast-websocket" pkgs) (getAttr "quri" pkgs) (getAttr "usocket" pkgs) (getAttr "websocket-driver-base" pkgs) ];
-  };
-  websocket-driver-server = {
-    pname = "websocket-driver-server";
-    version = "20220331-git";
-    asds = [ "websocket-driver-server" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/websocket-driver/2022-03-31/websocket-driver-20220331-git.tgz";
-      sha256 = "183jb9m4y5drc4i9l3c03q0sx8rlqn2d2290c7whl4r3dnginnnf";
-      system = "websocket-driver-server";
-      asd = "websocket-driver-server";
-    });
-    systems = [ "websocket-driver-server" ];
-    lispLibs = [ (getAttr "babel" pkgs) (getAttr "clack-socket" pkgs) (getAttr "fast-io" pkgs) (getAttr "fast-websocket" pkgs) (getAttr "websocket-driver-base" pkgs) ];
-  };
-  weft = {
-    pname = "weft";
-    version = "20180228-git";
-    asds = [ "weft" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/weft/2018-02-28/weft-20180228-git.tgz";
-      sha256 = "1ia38xcpp9g4v6sij99lyl9b8p59ysg2cj9k92nb683f8pzv9pl3";
-      system = "weft";
-      asd = "weft";
-    });
-    systems = [ "weft" ];
-    lispLibs = [ (getAttr "bordeaux-threads" pkgs) (getAttr "log4cl" pkgs) (getAttr "trivial-timeout" pkgs) (getAttr "usocket" pkgs) ];
-  };
-  westbrook = {
-    pname = "westbrook";
-    version = "20180131-git";
-    asds = [ "westbrook" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/westbrook/2018-01-31/westbrook-20180131-git.tgz";
-      sha256 = "08qs5lpg34d1mn6warrrq1wimyqqrjb8jih62g1pbysgni4ihm2v";
-      system = "westbrook";
-      asd = "westbrook";
-    });
-    systems = [ "westbrook" ];
-    lispLibs = [ (getAttr "cxml" pkgs) ];
-  };
-  westbrook-tests = {
-    pname = "westbrook-tests";
-    version = "20180131-git";
-    asds = [ "westbrook-tests" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/westbrook/2018-01-31/westbrook-20180131-git.tgz";
-      sha256 = "08qs5lpg34d1mn6warrrq1wimyqqrjb8jih62g1pbysgni4ihm2v";
-      system = "westbrook-tests";
-      asd = "westbrook-tests";
-    });
-    systems = [ "westbrook-tests" ];
-    lispLibs = [ (getAttr "fiasco" pkgs) (getAttr "westbrook" pkgs) ];
-  };
-  what3words = {
-    pname = "what3words";
-    version = "20161204-git";
-    asds = [ "what3words" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/what3words/2016-12-04/what3words-20161204-git.tgz";
-      sha256 = "0nlrpi8phrf2mpgbw9bj9w4vksqb0baj542bhnq39sjalc8bj73r";
-      system = "what3words";
-      asd = "what3words";
-    });
-    systems = [ "what3words" ];
-    lispLibs = [ (getAttr "cl-ppcre" pkgs) (getAttr "drakma" pkgs) (getAttr "jsown" pkgs) ];
-  };
-  which = {
-    pname = "which";
-    version = "20160421-git";
-    asds = [ "which" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/which/2016-04-21/which-20160421-git.tgz";
-      sha256 = "127pm9h4rm4w9aadw5yvamnfzhk2rr69kchx10rf9k7sk7izqqfk";
-      system = "which";
-      asd = "which";
-    });
-    systems = [ "which" ];
-    lispLibs = [ (getAttr "cl-fad" pkgs) (getAttr "path-parse" pkgs) (getAttr "uiop" pkgs) ];
-  };
-  which-test = {
-    pname = "which-test";
-    version = "20160421-git";
-    asds = [ "which-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/which/2016-04-21/which-20160421-git.tgz";
-      sha256 = "127pm9h4rm4w9aadw5yvamnfzhk2rr69kchx10rf9k7sk7izqqfk";
-      system = "which-test";
-      asd = "which-test";
-    });
-    systems = [ "which-test" ];
-    lispLibs = [ (getAttr "fiveam" pkgs) (getAttr "which" pkgs) ];
-  };
-  whirlog = {
-    pname = "whirlog";
-    version = "20211020-git";
-    asds = [ "whirlog" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/whirlog/2021-10-20/whirlog-20211020-git.tgz";
-      sha256 = "0sf1kc8ln1gszzrz3qh3bx11k42lpccrv6kp2ihlrg3d6lsa6i26";
-      system = "whirlog";
-      asd = "whirlog";
-    });
-    systems = [ "whirlog" ];
-    lispLibs = [  ];
-  };
-  whofields = {
-    pname = "whofields";
-    version = "20211020-git";
-    asds = [ "whofields" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/whofields/2021-10-20/whofields-20211020-git.tgz";
-      sha256 = "1scpzzfdw5g7qsayhznjyzns8lxx4fvv2jxd0vr9vnxad3vm977x";
-      system = "whofields";
-      asd = "whofields";
-    });
-    systems = [ "whofields" ];
-    lispLibs = [ (getAttr "asdf-package-system" pkgs) (getAttr "cl-who" pkgs) ];
-  };
-  whofields_slash_test = {
-    pname = "whofields_test";
-    version = "20211020-git";
-    asds = [ "whofields" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/whofields/2021-10-20/whofields-20211020-git.tgz";
-      sha256 = "1scpzzfdw5g7qsayhznjyzns8lxx4fvv2jxd0vr9vnxad3vm977x";
-      system = "whofields";
-      asd = "whofields";
-    });
-    systems = [ "whofields/test" ];
-    lispLibs = [  ];
-    meta = {
-      broken = true;
-    };
-  };
-  wilbur = {
-    pname = "wilbur";
-    version = "20181210-git";
-    asds = [ "wilbur" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/de.setf.wilbur/2018-12-10/de.setf.wilbur-20181210-git.tgz";
-      sha256 = "0w4qssyarim4v64vv7jmspmyba7xghx9bkalyyhvccf6zrf7b2v7";
-      system = "wilbur";
-      asd = "wilbur";
-    });
-    systems = [ "wilbur" ];
-    lispLibs = [ (getAttr "usocket" pkgs) ];
-  };
-  wild-package-inferred-system = {
-    pname = "wild-package-inferred-system";
-    version = "20210531-git";
-    asds = [ "wild-package-inferred-system" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/wild-package-inferred-system/2021-05-31/wild-package-inferred-system-20210531-git.tgz";
-      sha256 = "0sp3j3i83aqyq9bl3djs490nilryi9sh1wjbcqd9z94d9wfbfz80";
-      system = "wild-package-inferred-system";
-      asd = "wild-package-inferred-system";
-    });
-    systems = [ "wild-package-inferred-system" ];
-    lispLibs = [  ];
-  };
-  wild-package-inferred-system_slash_test = {
-    pname = "wild-package-inferred-system_test";
-    version = "20210531-git";
-    asds = [ "wild-package-inferred-system" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/wild-package-inferred-system/2021-05-31/wild-package-inferred-system-20210531-git.tgz";
-      sha256 = "0sp3j3i83aqyq9bl3djs490nilryi9sh1wjbcqd9z94d9wfbfz80";
-      system = "wild-package-inferred-system";
-      asd = "wild-package-inferred-system";
-    });
-    systems = [ "wild-package-inferred-system/test" ];
-    lispLibs = [ (getAttr "fiveam" pkgs) (getAttr "wild-package-inferred-system" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  window = {
-    pname = "window";
-    version = "20200427-git";
-    asds = [ "window" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/sucle/2020-04-27/sucle-20200427-git.tgz";
-      sha256 = "033akkn9zxc6qdgycgxgybx3v23638245xrx29x2cbwnvg3i1q34";
-      system = "window";
-      asd = "window";
-    });
-    systems = [ "window" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "bodge-glfw" pkgs) (getAttr "cffi" pkgs) (getAttr "trivial-features" pkgs) (getAttr "utility" pkgs) ];
-  };
-  winhttp = {
-    pname = "winhttp";
-    version = "20200610-git";
-    asds = [ "winhttp" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/winhttp/2020-06-10/winhttp-20200610-git.tgz";
-      sha256 = "121mpn14kfj86bp4qlc69a139ffrsvgiisa7rax9mvbj361s8dna";
-      system = "winhttp";
-      asd = "winhttp";
-    });
-    systems = [ "winhttp" ];
-    lispLibs = [ (getAttr "cffi" pkgs) ];
-  };
-  winlock = {
-    pname = "winlock";
-    version = "20191130-git";
-    asds = [ "winlock" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/winlock/2019-11-30/winlock-20191130-git.tgz";
-      sha256 = "0sgjq1cjbmshnh2zwyqws7rkr93zkjl0rrzyf04542gb1grj0vd8";
-      system = "winlock";
-      asd = "winlock";
-    });
-    systems = [ "winlock" ];
-    lispLibs = [ (getAttr "cffi" pkgs) (getAttr "named-readtables" pkgs) (getAttr "serapeum" pkgs) ];
-  };
-  winlock_slash_test = {
-    pname = "winlock_test";
-    version = "20191130-git";
-    asds = [ "winlock" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/winlock/2019-11-30/winlock-20191130-git.tgz";
-      sha256 = "0sgjq1cjbmshnh2zwyqws7rkr93zkjl0rrzyf04542gb1grj0vd8";
-      system = "winlock";
-      asd = "winlock";
-    });
-    systems = [ "winlock/test" ];
-    lispLibs = [ (getAttr "fiveam" pkgs) (getAttr "winlock" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  wire-world = {
-    pname = "wire-world";
-    version = "master-1a957fb2-git";
-    asds = [ "wire-world" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/gendl/2022-07-07/gendl-master-1a957fb2-git.tgz";
-      sha256 = "0j47qnvvfx3vnh3pll6rkya5m142hi93bd5jk65rv43vbc94sv30";
-      system = "wire-world";
-      asd = "wire-world";
-    });
-    systems = [ "wire-world" ];
-    lispLibs = [ (getAttr "gwl-graphics" pkgs) ];
-  };
-  with-branching = {
-    pname = "with-branching";
-    version = "20220220-git";
-    asds = [ "with-branching" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/with-branching/2022-02-20/with-branching-20220220-git.tgz";
-      sha256 = "0jaaz2b1k6pbh9hyvvsxp8dn18gqjz24kgri9wazqxyn0n05jpl9";
-      system = "with-branching";
-      asd = "with-branching";
-    });
-    systems = [ "with-branching" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "trivial-indent" pkgs) ];
-  };
-  with-branching_slash_dangerous = {
-    pname = "with-branching_dangerous";
-    version = "20220220-git";
-    asds = [ "with-branching" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/with-branching/2022-02-20/with-branching-20220220-git.tgz";
-      sha256 = "0jaaz2b1k6pbh9hyvvsxp8dn18gqjz24kgri9wazqxyn0n05jpl9";
-      system = "with-branching";
-      asd = "with-branching";
-    });
-    systems = [ "with-branching/dangerous" ];
-    lispLibs = [ (getAttr "with-branching" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  with-branching_slash_test = {
-    pname = "with-branching_test";
-    version = "20220220-git";
-    asds = [ "with-branching" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/with-branching/2022-02-20/with-branching-20220220-git.tgz";
-      sha256 = "0jaaz2b1k6pbh9hyvvsxp8dn18gqjz24kgri9wazqxyn0n05jpl9";
-      system = "with-branching";
-      asd = "with-branching";
-    });
-    systems = [ "with-branching/test" ];
-    lispLibs = [ (getAttr "agnostic-lizard" pkgs) (getAttr "with-branching" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  with-c-syntax = {
-    pname = "with-c-syntax";
-    version = "20221106-git";
-    asds = [ "with-c-syntax" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/with-c-syntax/2022-11-06/with-c-syntax-20221106-git.tgz";
-      sha256 = "12gdwdyxyl9xm8n04qvmvyc1s06dkckb87i6hdysal5lsf1gwc41";
-      system = "with-c-syntax";
-      asd = "with-c-syntax";
-    });
-    systems = [ "with-c-syntax" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cl-ppcre" pkgs) (getAttr "yacc" pkgs) (getAttr "float-features" pkgs) (getAttr "floating-point-contractions" pkgs) (getAttr "named-readtables" pkgs) (getAttr "split-sequence" pkgs) (getAttr "trivial-gray-streams" pkgs) ];
-  };
-  with-c-syntax-test = {
-    pname = "with-c-syntax-test";
-    version = "20221106-git";
-    asds = [ "with-c-syntax-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/with-c-syntax/2022-11-06/with-c-syntax-20221106-git.tgz";
-      sha256 = "12gdwdyxyl9xm8n04qvmvyc1s06dkckb87i6hdysal5lsf1gwc41";
-      system = "with-c-syntax-test";
-      asd = "with-c-syntax-test";
-    });
-    systems = [ "with-c-syntax-test" ];
-    lispLibs = [ (getAttr "_1am" pkgs) (getAttr "floating-point" pkgs) (getAttr "trivial-cltl2" pkgs) (getAttr "with-c-syntax" pkgs) ];
-  };
-  with-cached-reader-conditionals = {
-    pname = "with-cached-reader-conditionals";
-    version = "20170630-git";
-    asds = [ "with-cached-reader-conditionals" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/with-cached-reader-conditionals/2017-06-30/with-cached-reader-conditionals-20170630-git.tgz";
-      sha256 = "0n7a089d0wb13l1nsdh3xlgwxwlqynkbjl8fg2x56h52a5i9gkv4";
-      system = "with-cached-reader-conditionals";
-      asd = "with-cached-reader-conditionals";
-    });
-    systems = [ "with-cached-reader-conditionals" ];
-    lispLibs = [  ];
-  };
-  with-contexts = {
-    pname = "with-contexts";
-    version = "20220220-git";
-    asds = [ "with-contexts" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/with-contexts/2022-02-20/with-contexts-20220220-git.tgz";
-      sha256 = "0lbv20cfvi4xl0akw092j6ms30daj9y1rh0gb1qlginry0nh8a24";
-      system = "with-contexts";
-      asd = "with-contexts";
-    });
-    systems = [ "with-contexts" ];
-    lispLibs = [  ];
-  };
-  with-output-to-stream = {
-    pname = "with-output-to-stream";
-    version = "1.0";
-    asds = [ "with-output-to-stream" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/with-output-to-stream/2019-10-07/with-output-to-stream_1.0.tgz";
-      sha256 = "0pv9kccjbxkgcv7wbcfpnzas9pq0n2rs2aq9kdnqkx55k12366sm";
-      system = "with-output-to-stream";
-      asd = "with-output-to-stream";
-    });
-    systems = [ "with-output-to-stream" ];
-    lispLibs = [  ];
-  };
-  with-output-to-stream_tests = {
-    pname = "with-output-to-stream_tests";
-    version = "1.0";
-    asds = [ "with-output-to-stream_tests" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/with-output-to-stream/2019-10-07/with-output-to-stream_1.0.tgz";
-      sha256 = "0pv9kccjbxkgcv7wbcfpnzas9pq0n2rs2aq9kdnqkx55k12366sm";
-      system = "with-output-to-stream_tests";
-      asd = "with-output-to-stream_tests";
-    });
-    systems = [ "with-output-to-stream_tests" ];
-    lispLibs = [ (getAttr "parachute" pkgs) (getAttr "with-output-to-stream" pkgs) ];
-  };
-  with-setf = {
-    pname = "with-setf";
-    version = "release-quicklisp-df3eed9d-git";
-    asds = [ "with-setf" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/with-setf/2018-02-28/with-setf-release-quicklisp-df3eed9d-git.tgz";
-      sha256 = "090v39kdxk4py3axjrjjac2pn1p0109q14hvl818pik479xr4inz";
-      system = "with-setf";
-      asd = "with-setf";
-    });
-    systems = [ "with-setf" ];
-    lispLibs = [  ];
-  };
-  with-shadowed-bindings = {
-    pname = "with-shadowed-bindings";
-    version = "1.0";
-    asds = [ "with-shadowed-bindings" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/with-shadowed-bindings/2019-01-07/with-shadowed-bindings-1.0.tgz";
-      sha256 = "0kxy86a21v4fm4xwd44c6kpdadgkcj8iv6a68xavhirhjhngcwy5";
-      system = "with-shadowed-bindings";
-      asd = "with-shadowed-bindings";
-    });
-    systems = [ "with-shadowed-bindings" ];
-    lispLibs = [ (getAttr "map-bind" pkgs) ];
-  };
-  with-shadowed-bindings_tests = {
-    pname = "with-shadowed-bindings_tests";
-    version = "1.0";
-    asds = [ "with-shadowed-bindings_tests" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/with-shadowed-bindings/2019-01-07/with-shadowed-bindings-1.0.tgz";
-      sha256 = "0kxy86a21v4fm4xwd44c6kpdadgkcj8iv6a68xavhirhjhngcwy5";
-      system = "with-shadowed-bindings_tests";
-      asd = "with-shadowed-bindings_tests";
-    });
-    systems = [ "with-shadowed-bindings_tests" ];
-    lispLibs = [ (getAttr "parachute" pkgs) (getAttr "with-shadowed-bindings" pkgs) ];
-  };
-  with-user-abort = {
-    pname = "with-user-abort";
-    version = "20210411-git";
-    asds = [ "with-user-abort" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/with-user-abort/2021-04-11/with-user-abort-20210411-git.tgz";
-      sha256 = "0k1xxfvncdw4fx8nncis1ma128bqq05zky1mrzak5rjbivzjm8j1";
-      system = "with-user-abort";
-      asd = "with-user-abort";
-    });
-    systems = [ "with-user-abort" ];
-    lispLibs = [  ];
-  };
-  woo = {
-    pname = "woo";
-    version = "20220707-git";
-    asds = [ "woo" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/woo/2022-07-07/woo-20220707-git.tgz";
-      sha256 = "0ar7w2nfxhxirlcxxq4j1v4cnmvfkw3ip4i53b853g0pfb84m3kz";
-      system = "woo";
-      asd = "woo";
-    });
-    systems = [ "woo" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "bordeaux-threads" pkgs) (getAttr "cffi" pkgs) (getAttr "cffi-grovel" pkgs) (getAttr "clack-socket" pkgs) (getAttr "fast-http" pkgs) (getAttr "fast-io" pkgs) (getAttr "lev" pkgs) (getAttr "quri" pkgs) (getAttr "smart-buffer" pkgs) (getAttr "static-vectors" pkgs) (getAttr "swap-bytes" pkgs) (getAttr "trivial-mimes" pkgs) (getAttr "trivial-utf-8" pkgs) (getAttr "vom" pkgs) ];
-  };
-  woo-test = {
-    pname = "woo-test";
-    version = "20220707-git";
-    asds = [ "woo-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/woo/2022-07-07/woo-20220707-git.tgz";
-      sha256 = "0ar7w2nfxhxirlcxxq4j1v4cnmvfkw3ip4i53b853g0pfb84m3kz";
-      system = "woo-test";
-      asd = "woo-test";
-    });
-    systems = [ "woo-test" ];
-    lispLibs = [ (getAttr "clack-test" pkgs) (getAttr "rove" pkgs) (getAttr "woo" pkgs) ];
-  };
-  wookie = {
-    pname = "wookie";
-    version = "20191130-git";
-    asds = [ "wookie" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/wookie/2019-11-30/wookie-20191130-git.tgz";
-      sha256 = "17py6z5dk0y5ww99nsr69ksa4v9cqwwqqk90sv096dsh9va2b689";
-      system = "wookie";
-      asd = "wookie";
-    });
-    systems = [ "wookie" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "babel" pkgs) (getAttr "blackbird" pkgs) (getAttr "chunga" pkgs) (getAttr "cl-async" pkgs) (getAttr "cl-async-ssl" pkgs) (getAttr "cl-fad" pkgs) (getAttr "cl-ppcre" pkgs) (getAttr "do-urlencode" pkgs) (getAttr "fast-http" pkgs) (getAttr "fast-io" pkgs) (getAttr "quri" pkgs) (getAttr "vom" pkgs) ];
-  };
-  wordnet = {
-    pname = "wordnet";
-    version = "20220220-git";
-    asds = [ "wordnet" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/wordnet/2022-02-20/wordnet-20220220-git.tgz";
-      sha256 = "07p60k295fsfcp0gmkqhrxd68hb38aqva8f4k8xk8bqqxxf42vkq";
-      system = "wordnet";
-      asd = "wordnet";
-    });
-    systems = [ "wordnet" ];
-    lispLibs = [ (getAttr "split-sequence" pkgs) ];
-  };
-  workout-timer = {
-    pname = "workout-timer";
-    version = "20220707-git";
-    asds = [ "workout-timer" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/workout-timer/2022-07-07/workout-timer-20220707-git.tgz";
-      sha256 = "0ibgynwivyxynfa4y9h8mqk0y5qkn97ii0xwfh0py0697hq74xp3";
-      system = "workout-timer";
-      asd = "workout-timer";
-    });
-    systems = [ "workout-timer" ];
-    lispLibs = [ (getAttr "cffi-toolchain" pkgs) (getAttr "command-line-arguments" pkgs) (getAttr "local-time" pkgs) (getAttr "mixalot" pkgs) (getAttr "mixalot-vorbis" pkgs) (getAttr "vorbisfile-ffi" pkgs) ];
-  };
-  workout-timer_slash_static = {
-    pname = "workout-timer_static";
-    version = "20220707-git";
-    asds = [ "workout-timer" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/workout-timer/2022-07-07/workout-timer-20220707-git.tgz";
-      sha256 = "0ibgynwivyxynfa4y9h8mqk0y5qkn97ii0xwfh0py0697hq74xp3";
-      system = "workout-timer";
-      asd = "workout-timer";
-    });
-    systems = [ "workout-timer/static" ];
-    lispLibs = [ (getAttr "cffi-toolchain" pkgs) (getAttr "workout-timer" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  wu-decimal = {
-    pname = "wu-decimal";
-    version = "20130128-git";
-    asds = [ "wu-decimal" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/wu-decimal/2013-01-28/wu-decimal-20130128-git.tgz";
-      sha256 = "1p7na4hic7297amwm4idfwkyx664ny8cdssncyra37pmv4wzp8dm";
-      system = "wu-decimal";
-      asd = "wu-decimal";
-    });
-    systems = [ "wu-decimal" ];
-    lispLibs = [  ];
-  };
-  wu-sugar = {
-    pname = "wu-sugar";
-    version = "20160825-git";
-    asds = [ "wu-sugar" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/wu-sugar/2016-08-25/wu-sugar-20160825-git.tgz";
-      sha256 = "0ypn5195krfd1rva5myla8j7n2ilfs5gxh81flx7v0mr4r70fayl";
-      system = "wu-sugar";
-      asd = "wu-sugar";
-    });
-    systems = [ "wu-sugar" ];
-    lispLibs = [  ];
-  };
-  wuwei = {
-    pname = "wuwei";
-    version = "20221106-git";
-    asds = [ "wuwei" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/wuwei/2022-11-06/wuwei-20221106-git.tgz";
-      sha256 = "1k5yhxdqcx250kd56qgbch5z0hvjpjwch38c3949nf790pmrhl8f";
-      system = "wuwei";
-      asd = "wuwei";
-    });
-    systems = [ "wuwei" ];
-    lispLibs = [ (getAttr "cl-json" pkgs) (getAttr "drakma" pkgs) (getAttr "ironclad" pkgs) (getAttr "mtlisp" pkgs) (getAttr "aserve" pkgs) ];
-  };
-  wuwei-examples = {
-    pname = "wuwei-examples";
-    version = "20221106-git";
-    asds = [ "wuwei-examples" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/wuwei/2022-11-06/wuwei-20221106-git.tgz";
-      sha256 = "1k5yhxdqcx250kd56qgbch5z0hvjpjwch38c3949nf790pmrhl8f";
-      system = "wuwei-examples";
-      asd = "wuwei";
-    });
-    systems = [ "wuwei-examples" ];
-    lispLibs = [ (getAttr "drakma" pkgs) (getAttr "wuwei" pkgs) ];
-  };
-  x_dot_let-star = {
-    pname = "x.let-star";
-    version = "20200325-git";
-    asds = [ "x.let-star" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/x.let-star/2020-03-25/x.let-star-20200325-git.tgz";
-      sha256 = "0qk0rpqzb7vaivggsqch06nmdjzp6b31a88w40y3864clajpcrnr";
-      system = "x.let-star";
-      asd = "x.let-star";
-    });
-    systems = [ "x.let-star" ];
-    lispLibs = [  ];
-  };
-  xarray = {
-    pname = "xarray";
-    version = "20140113-git";
-    asds = [ "xarray" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/xarray/2014-01-13/xarray-20140113-git.tgz";
-      sha256 = "031h1bvy9s6qas2160dgf7gc0y6inrhpzp8j3wrb6fjxkb0524yl";
-      system = "xarray";
-      asd = "xarray";
-    });
-    systems = [ "xarray" ];
-    lispLibs = [ (getAttr "anaphora" pkgs) (getAttr "cl-utilities" pkgs) (getAttr "iterate" pkgs) (getAttr "metabang-bind" pkgs) ];
-  };
-  xarray-test = {
-    pname = "xarray-test";
-    version = "20140113-git";
-    asds = [ "xarray-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/xarray/2014-01-13/xarray-20140113-git.tgz";
-      sha256 = "031h1bvy9s6qas2160dgf7gc0y6inrhpzp8j3wrb6fjxkb0524yl";
-      system = "xarray-test";
-      asd = "xarray-test";
-    });
-    systems = [ "xarray-test" ];
-    lispLibs = [ (getAttr "lift" pkgs) (getAttr "xarray" pkgs) ];
-  };
-  xcat = {
-    pname = "xcat";
-    version = "20200925-git";
-    asds = [ "xcat" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/xcat/2020-09-25/xcat-20200925-git.tgz";
-      sha256 = "1v8mcz8bidcbfl587b5lm07l91xan6z1y3zikjkyzagiigd4byvi";
-      system = "xcat";
-      asd = "xcat";
-    });
-    systems = [ "xcat" ];
-    lispLibs = [ (getAttr "bordeaux-threads" pkgs) (getAttr "cl-ppcre" pkgs) (getAttr "flexi-streams" pkgs) (getAttr "log4cl" pkgs) (getAttr "trivial-features" pkgs) (getAttr "trivial-garbage" pkgs) (getAttr "usocket-server" pkgs) ];
-  };
-  xecto = {
-    pname = "xecto";
-    version = "20151218-git";
-    asds = [ "xecto" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/xecto/2015-12-18/xecto-20151218-git.tgz";
-      sha256 = "1m81cl02k28v9sgscl8qhig735x5qybhw69szs6bkkqml7hbl12q";
-      system = "xecto";
-      asd = "xecto";
-    });
-    systems = [ "xecto" ];
-    lispLibs = [  ];
-  };
-  xembed = {
-    pname = "xembed";
-    version = "20191130-git";
-    asds = [ "xembed" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/clx-xembed/2019-11-30/clx-xembed-20191130-git.tgz";
-      sha256 = "1abx4v36ycmfjdwpjk4hh8058ya8whwia7ds9vd96q2qsrs57f12";
-      system = "xembed";
-      asd = "xembed";
-    });
-    systems = [ "xembed" ];
-    lispLibs = [ (getAttr "clx" pkgs) ];
-  };
-  xfactory = {
-    pname = "xfactory";
-    version = "20130615-git";
-    asds = [ "xfactory" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-libxml2/2013-06-15/cl-libxml2-20130615-git.tgz";
-      sha256 = "09049c13cfp5sc6x9lrw762jd7a9qkfq5jgngqgrzn4kn9qscarw";
-      system = "xfactory";
-      asd = "xfactory";
-    });
-    systems = [ "xfactory" ];
-    lispLibs = [ (getAttr "cl-libxml2" pkgs) ];
-  };
-  xfactory-test = {
-    pname = "xfactory-test";
-    version = "20130615-git";
-    asds = [ "xfactory-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-libxml2/2013-06-15/cl-libxml2-20130615-git.tgz";
-      sha256 = "09049c13cfp5sc6x9lrw762jd7a9qkfq5jgngqgrzn4kn9qscarw";
-      system = "xfactory-test";
-      asd = "xfactory";
-    });
-    systems = [ "xfactory-test" ];
-    lispLibs = [ (getAttr "xfactory" pkgs) (getAttr "lift" pkgs) ];
-  };
-  xhtmlambda = {
-    pname = "xhtmlambda";
-    version = "20220220-git";
-    asds = [ "xhtmlambda" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/xhtmlambda/2022-02-20/xhtmlambda-20220220-git.tgz";
-      sha256 = "1ca1fkycdblvm26a5vnxgg6anfqsq0kfjm1libr0yw4r59ds0mx1";
-      system = "xhtmlambda";
-      asd = "xhtmlambda";
-    });
-    systems = [ "xhtmlambda" ];
-    lispLibs = [ (getAttr "cl-unicode" pkgs) ];
-  };
-  xhtmlgen = {
-    pname = "xhtmlgen";
-    version = "20170124-git";
-    asds = [ "xhtmlgen" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/xhtmlgen/2017-01-24/xhtmlgen-20170124-git.tgz";
-      sha256 = "0br4pqhl7y7rd95l9xx2p96gds3dh4pgk9v038wbshl2dnhjv82k";
-      system = "xhtmlgen";
-      asd = "xhtmlgen";
-    });
-    systems = [ "xhtmlgen" ];
-    lispLibs = [ (getAttr "cxml" pkgs) ];
-  };
-  xhtmlgen-test = {
-    pname = "xhtmlgen-test";
-    version = "20170124-git";
-    asds = [ "xhtmlgen-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/xhtmlgen/2017-01-24/xhtmlgen-20170124-git.tgz";
-      sha256 = "0br4pqhl7y7rd95l9xx2p96gds3dh4pgk9v038wbshl2dnhjv82k";
-      system = "xhtmlgen-test";
-      asd = "xhtmlgen";
-    });
-    systems = [ "xhtmlgen-test" ];
-    lispLibs = [ (getAttr "rt" pkgs) (getAttr "xhtmlgen" pkgs) ];
-  };
-  xkeyboard = {
-    pname = "xkeyboard";
-    version = "20120811-git";
-    asds = [ "xkeyboard" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/clx-xkeyboard/2012-08-11/clx-xkeyboard-20120811-git.tgz";
-      sha256 = "1nxky9wsmm7nmwz372jgb4iy0ywlm22jw0vl8yi0k9slsfklvcqi";
-      system = "xkeyboard";
-      asd = "xkeyboard";
-    });
-    systems = [ "xkeyboard" ];
-    lispLibs = [ (getAttr "clx" pkgs) ];
-  };
-  xkeyboard-test = {
-    pname = "xkeyboard-test";
-    version = "20120811-git";
-    asds = [ "xkeyboard-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/clx-xkeyboard/2012-08-11/clx-xkeyboard-20120811-git.tgz";
-      sha256 = "1nxky9wsmm7nmwz372jgb4iy0ywlm22jw0vl8yi0k9slsfklvcqi";
-      system = "xkeyboard-test";
-      asd = "xkeyboard";
-    });
-    systems = [ "xkeyboard-test" ];
-    lispLibs = [ (getAttr "xkeyboard" pkgs) ];
-  };
-  xlsx = {
-    pname = "xlsx";
-    version = "20180711-git";
-    asds = [ "xlsx" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/xlsx/2018-07-11/xlsx-20180711-git.tgz";
-      sha256 = "15vw5zl13jg9b1rla7w2wv6ss93mijrnn9fzsh0fakgvfikqq1n6";
-      system = "xlsx";
-      asd = "xlsx";
-    });
-    systems = [ "xlsx" ];
-    lispLibs = [ (getAttr "flexi-streams" pkgs) (getAttr "xmls" pkgs) (getAttr "zip" pkgs) ];
-  };
-  xlunit = {
-    pname = "xlunit";
-    version = "20150923-git";
-    asds = [ "xlunit" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/xlunit/2015-09-23/xlunit-20150923-git.tgz";
-      sha256 = "0argfmp9nghs4sihyj3f8ch9qfib2b7ll07v5m9ziajgzsfl5xw3";
-      system = "xlunit";
-      asd = "xlunit";
-    });
-    systems = [ "xlunit" ];
-    lispLibs = [  ];
-  };
-  xlunit-tests = {
-    pname = "xlunit-tests";
-    version = "20150923-git";
-    asds = [ "xlunit-tests" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/xlunit/2015-09-23/xlunit-20150923-git.tgz";
-      sha256 = "0argfmp9nghs4sihyj3f8ch9qfib2b7ll07v5m9ziajgzsfl5xw3";
-      system = "xlunit-tests";
-      asd = "xlunit";
-    });
-    systems = [ "xlunit-tests" ];
-    lispLibs = [ (getAttr "xlunit" pkgs) ];
-  };
-  xml-emitter = {
-    pname = "xml-emitter";
-    version = "20221106-git";
-    asds = [ "xml-emitter" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/xml-emitter/2022-11-06/xml-emitter-20221106-git.tgz";
-      sha256 = "0yvcrzqz14kx90i6sm7kpi8l8hy61a1yjj0a8wvgryjbgp6abqvc";
-      system = "xml-emitter";
-      asd = "xml-emitter";
-    });
-    systems = [ "xml-emitter" ];
-    lispLibs = [ (getAttr "cl-utilities" pkgs) ];
-  };
-  xml-emitter_slash_tests = {
-    pname = "xml-emitter_tests";
-    version = "20221106-git";
-    asds = [ "xml-emitter" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/xml-emitter/2022-11-06/xml-emitter-20221106-git.tgz";
-      sha256 = "0yvcrzqz14kx90i6sm7kpi8l8hy61a1yjj0a8wvgryjbgp6abqvc";
-      system = "xml-emitter";
-      asd = "xml-emitter";
-    });
-    systems = [ "xml-emitter/tests" ];
-    lispLibs = [ (getAttr "_1am" pkgs) (getAttr "xml-emitter" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  xml-mop = {
-    pname = "xml-mop";
-    version = "20110418-git";
-    asds = [ "xml-mop" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/xml-mop/2011-04-18/xml-mop-20110418-git.tgz";
-      sha256 = "1vfa3h5dghnpc7qbqqm80mm1ri6x7x5r528kvkwzngghrbxyhgjr";
-      system = "xml-mop";
-      asd = "xml-mop";
-    });
-    systems = [ "xml-mop" ];
-    lispLibs = [ (getAttr "closer-mop" pkgs) (getAttr "s-xml" pkgs) ];
-  };
-  xml-render = {
-    pname = "xml-render";
-    version = "20210531-git";
-    asds = [ "xml-render" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-typesetting/2021-05-31/cl-typesetting-20210531-git.tgz";
-      sha256 = "0fcs5mq0gxfczbrg7ay8r4bf5r4g6blvpdbjkhcl8dapcikyn35h";
-      system = "xml-render";
-      asd = "xml-render";
-    });
-    systems = [ "xml-render" ];
-    lispLibs = [ (getAttr "cl-typesetting" pkgs) (getAttr "xmls" pkgs) ];
-  };
-  xml_dot_location = {
-    pname = "xml.location";
-    version = "20200325-git";
-    asds = [ "xml.location" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/xml.location/2020-03-25/xml.location-20200325-git.tgz";
-      sha256 = "0ajl03k7krns6b0z3ykmngq3i77yd2j85z3h76drlc9whxvm2kii";
-      system = "xml.location";
-      asd = "xml.location";
-    });
-    systems = [ "xml.location" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "closer-mop" pkgs) (getAttr "cxml-stp" pkgs) (getAttr "iterate" pkgs) (getAttr "let-plus" pkgs) (getAttr "more-conditions" pkgs) (getAttr "xpath" pkgs) (getAttr "split-sequence" pkgs) ];
-  };
-  xml_dot_location-and-local-time = {
-    pname = "xml.location-and-local-time";
-    version = "20200325-git";
-    asds = [ "xml.location-and-local-time" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/xml.location/2020-03-25/xml.location-20200325-git.tgz";
-      sha256 = "0ajl03k7krns6b0z3ykmngq3i77yd2j85z3h76drlc9whxvm2kii";
-      system = "xml.location-and-local-time";
-      asd = "xml.location-and-local-time";
-    });
-    systems = [ "xml.location-and-local-time" ];
-    lispLibs = [ (getAttr "local-time" pkgs) (getAttr "xml_dot_location" pkgs) ];
-  };
-  xml_dot_location_slash_test = {
-    pname = "xml.location_test";
-    version = "20200325-git";
-    asds = [ "xml.location" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/xml.location/2020-03-25/xml.location-20200325-git.tgz";
-      sha256 = "0ajl03k7krns6b0z3ykmngq3i77yd2j85z3h76drlc9whxvm2kii";
-      system = "xml.location";
-      asd = "xml.location";
-    });
-    systems = [ "xml.location/test" ];
-    lispLibs = [ (getAttr "lift" pkgs) (getAttr "xml_dot_location" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  xmls = {
-    pname = "xmls";
-    version = "release-c6ca1b39-git";
-    asds = [ "xmls" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/xmls/2022-07-07/xmls-release-c6ca1b39-git.tgz";
-      sha256 = "050c9z0xq8wagga2mbdhjm0j1530m4rz942sll4w6pxr0s6fmg3g";
-      system = "xmls";
-      asd = "xmls";
-    });
-    systems = [ "xmls" ];
-    lispLibs = [  ];
-  };
-  xmls_slash_octets = {
-    pname = "xmls_octets";
-    version = "release-c6ca1b39-git";
-    asds = [ "xmls" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/xmls/2022-07-07/xmls-release-c6ca1b39-git.tgz";
-      sha256 = "050c9z0xq8wagga2mbdhjm0j1530m4rz942sll4w6pxr0s6fmg3g";
-      system = "xmls";
-      asd = "xmls";
-    });
-    systems = [ "xmls/octets" ];
-    lispLibs = [ (getAttr "cl-ppcre" pkgs) (getAttr "flexi-streams" pkgs) (getAttr "xmls" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  xmls_slash_test = {
-    pname = "xmls_test";
-    version = "release-c6ca1b39-git";
-    asds = [ "xmls" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/xmls/2022-07-07/xmls-release-c6ca1b39-git.tgz";
-      sha256 = "050c9z0xq8wagga2mbdhjm0j1530m4rz942sll4w6pxr0s6fmg3g";
-      system = "xmls";
-      asd = "xmls";
-    });
-    systems = [ "xmls/test" ];
-    lispLibs = [ (getAttr "xmls" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  xmls_slash_unit-test = {
-    pname = "xmls_unit-test";
-    version = "release-c6ca1b39-git";
-    asds = [ "xmls" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/xmls/2022-07-07/xmls-release-c6ca1b39-git.tgz";
-      sha256 = "050c9z0xq8wagga2mbdhjm0j1530m4rz942sll4w6pxr0s6fmg3g";
-      system = "xmls";
-      asd = "xmls";
-    });
-    systems = [ "xmls/unit-test" ];
-    lispLibs = [ (getAttr "fiveam" pkgs) (getAttr "xmls" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  xoverlay = {
-    pname = "xoverlay";
-    version = "20130615-git";
-    asds = [ "xoverlay" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-libxml2/2013-06-15/cl-libxml2-20130615-git.tgz";
-      sha256 = "09049c13cfp5sc6x9lrw762jd7a9qkfq5jgngqgrzn4kn9qscarw";
-      system = "xoverlay";
-      asd = "xoverlay";
-    });
-    systems = [ "xoverlay" ];
-    lispLibs = [ (getAttr "cl-libxml2" pkgs) ];
-  };
-  xpath = {
-    pname = "xpath";
-    version = "20190521-git";
-    asds = [ "xpath" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/plexippus-xpath/2019-05-21/plexippus-xpath-20190521-git.tgz";
-      sha256 = "1fb03fgnzrvh22lw1jdg04pmyja5fib5n42rzwp5mhr829yvxkvp";
-      system = "xpath";
-      asd = "xpath";
-    });
-    systems = [ "xpath" ];
-    lispLibs = [ (getAttr "cl-ppcre" pkgs) (getAttr "yacc" pkgs) (getAttr "cxml" pkgs) (getAttr "parse-number" pkgs) ];
-  };
-  xpath_slash_test = {
-    pname = "xpath_test";
-    version = "20190521-git";
-    asds = [ "xpath" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/plexippus-xpath/2019-05-21/plexippus-xpath-20190521-git.tgz";
-      sha256 = "1fb03fgnzrvh22lw1jdg04pmyja5fib5n42rzwp5mhr829yvxkvp";
-      system = "xpath";
-      asd = "xpath";
-    });
-    systems = [ "xpath/test" ];
-    lispLibs = [ (getAttr "xpath" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  xptest = {
-    pname = "xptest";
-    version = "20150923-git";
-    asds = [ "xptest" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/xptest/2015-09-23/xptest-20150923-git.tgz";
-      sha256 = "02jwncq5d60l77gf87ahabzg6k6c878gfc4x1mf6ld97rj5lzp3b";
-      system = "xptest";
-      asd = "xptest";
-    });
-    systems = [ "xptest" ];
-    lispLibs = [  ];
-  };
-  xsubseq = {
-    pname = "xsubseq";
-    version = "20170830-git";
-    asds = [ "xsubseq" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/xsubseq/2017-08-30/xsubseq-20170830-git.tgz";
-      sha256 = "1xz79q0p2mclf3sqjiwf6izdpb6xrsr350bv4mlmdlm6rg5r99px";
-      system = "xsubseq";
-      asd = "xsubseq";
-    });
-    systems = [ "xsubseq" ];
-    lispLibs = [  ];
-  };
-  xsubseq-test = {
-    pname = "xsubseq-test";
-    version = "20170830-git";
-    asds = [ "xsubseq-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/xsubseq/2017-08-30/xsubseq-20170830-git.tgz";
-      sha256 = "1xz79q0p2mclf3sqjiwf6izdpb6xrsr350bv4mlmdlm6rg5r99px";
-      system = "xsubseq-test";
-      asd = "xsubseq-test";
-    });
-    systems = [ "xsubseq-test" ];
-    lispLibs = [ (getAttr "prove" pkgs) (getAttr "prove-asdf" pkgs) (getAttr "xsubseq" pkgs) ];
-  };
-  xuriella = {
-    pname = "xuriella";
-    version = "20120305-git";
-    asds = [ "xuriella" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/xuriella/2012-03-05/xuriella-20120305-git.tgz";
-      sha256 = "0wz98bfvr7h7g0r7dy815brq5sz3x40281hp0qk801q17aa4qhqh";
-      system = "xuriella";
-      asd = "xuriella";
-    });
-    systems = [ "xuriella" ];
-    lispLibs = [ (getAttr "closure-html" pkgs) (getAttr "cxml" pkgs) (getAttr "cxml-stp" pkgs) (getAttr "xpath" pkgs) (getAttr "split-sequence" pkgs) ];
-  };
-  yacc = {
-    pname = "yacc";
-    version = "20101006-darcs";
-    asds = [ "yacc" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-yacc/2010-10-06/cl-yacc-20101006-darcs.tgz";
-      sha256 = "16946pzf8vvadnyfayvj8rbh4zjzw90h0azz2qk1mxrvhh5wklib";
-      system = "yacc";
-      asd = "yacc";
-    });
-    systems = [ "yacc" ];
-    lispLibs = [  ];
-  };
-  yaclml = {
-    pname = "yaclml";
-    version = "20180131-git";
-    asds = [ "yaclml" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/yaclml/2018-01-31/yaclml-20180131-git.tgz";
-      sha256 = "0wq6clk4qwbdaf0hcfjz4vg27nyf6ng0rrip1ay4rlkb03hdnssq";
-      system = "yaclml";
-      asd = "yaclml";
-    });
-    systems = [ "yaclml" ];
-    lispLibs = [ (getAttr "arnesi" pkgs) (getAttr "iterate" pkgs) ];
-  };
-  yaclml_slash_test = {
-    pname = "yaclml_test";
-    version = "20180131-git";
-    asds = [ "yaclml" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/yaclml/2018-01-31/yaclml-20180131-git.tgz";
-      sha256 = "0wq6clk4qwbdaf0hcfjz4vg27nyf6ng0rrip1ay4rlkb03hdnssq";
-      system = "yaclml";
-      asd = "yaclml";
-    });
-    systems = [ "yaclml/test" ];
-    lispLibs = [ (getAttr "fiveam" pkgs) (getAttr "yaclml" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  yadd = {
-    pname = "yadd";
-    version = "master-1a957fb2-git";
-    asds = [ "yadd" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/gendl/2022-07-07/gendl-master-1a957fb2-git.tgz";
-      sha256 = "0j47qnvvfx3vnh3pll6rkya5m142hi93bd5jk65rv43vbc94sv30";
-      system = "yadd";
-      asd = "yadd";
-    });
-    systems = [ "yadd" ];
-    lispLibs = [ (getAttr "cl-html-parse" pkgs) (getAttr "gwl-graphics" pkgs) ];
-  };
-  yah = {
-    pname = "yah";
-    version = "20221106-git";
-    asds = [ "yah" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/yah/2022-11-06/yah-20221106-git.tgz";
-      sha256 = "1bxz8b7fb15yzipkpkaxgqr8yj4kqnbrzjf52zx0s3z1h7fg1vfd";
-      system = "yah";
-      asd = "yah";
-    });
-    systems = [ "yah" ];
-    lispLibs = [ (getAttr "mgl-pax" pkgs) ];
-  };
-  yason = {
-    pname = "yason";
-    version = "20221106-git";
-    asds = [ "yason" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/yason/2022-11-06/yason-20221106-git.tgz";
-      sha256 = "04h4jhk1z1r9q0vmhwc93x8gbikmsk1jblvpbghwvgrjbvns0vbc";
-      system = "yason";
-      asd = "yason";
-    });
-    systems = [ "yason" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "trivial-gray-streams" pkgs) ];
-  };
-  youtube = {
-    pname = "youtube";
-    version = "20191227-git";
-    asds = [ "youtube" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/youtube/2019-12-27/youtube-20191227-git.tgz";
-      sha256 = "0rqbyxgb9v3m8rwx2agaz7cq83w9k8gy5wl5wbw0rfg7r88ah5z0";
-      system = "youtube";
-      asd = "youtube";
-    });
-    systems = [ "youtube" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "bordeaux-threads" pkgs) (getAttr "cl-ppcre" pkgs) (getAttr "yason" pkgs) ];
-  };
-  yxorp = {
-    pname = "yxorp";
-    version = "20221106-git";
-    asds = [ "yxorp" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-yxorp/2022-11-06/cl-yxorp-20221106-git.tgz";
-      sha256 = "0k93xmfpp5j1hr7jwvrxhi7v1h759y5b8kfxfygs0dv2p2801k6y";
-      system = "yxorp";
-      asd = "yxorp";
-    });
-    systems = [ "yxorp" ];
-    lispLibs = [ (getAttr "binding-arrows" pkgs) (getAttr "chipz" pkgs) (getAttr "chunga" pkgs) (getAttr "cl_plus_ssl" pkgs) (getAttr "str" pkgs) (getAttr "flexi-streams" pkgs) (getAttr "rutils" pkgs) (getAttr "salza2" pkgs) (getAttr "smart-buffer" pkgs) (getAttr "trivial-garbage" pkgs) (getAttr "usocket" pkgs) (getAttr "usocket-server" pkgs) ];
-  };
-  zacl = {
-    pname = "zacl";
-    version = "20210807-git";
-    asds = [ "zacl" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/zacl/2021-08-07/zacl-20210807-git.tgz";
-      sha256 = "1lvc8hljvd3ngx7l8j8yffyvdfjhsph13qqhxyzlx1g8wgk145mn";
-      system = "zacl";
-      asd = "zacl";
-    });
-    systems = [ "zacl" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "bordeaux-threads" pkgs) (getAttr "cl_plus_ssl" pkgs) (getAttr "cl-base64" pkgs) (getAttr "cl-ppcre" pkgs) (getAttr "cl-store" pkgs) (getAttr "flexi-streams" pkgs) (getAttr "local-time" pkgs) (getAttr "md5" pkgs) (getAttr "queues_dot_simple-queue" pkgs) (getAttr "quri" pkgs) (getAttr "split-sequence" pkgs) (getAttr "trivial-backtrace" pkgs) (getAttr "trivial-garbage" pkgs) (getAttr "uiop" pkgs) (getAttr "usocket" pkgs) ];
-  };
-  zaserve = {
-    pname = "zaserve";
-    version = "20211209-git";
-    asds = [ "zaserve" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/aserve/2021-12-09/aserve-20211209-git.tgz";
-      sha256 = "06bm9j873xwidvqn6n838b0gvsqs486z5k210l1i0vv8zc4lznxv";
-      system = "zaserve";
-      asd = "zaserve";
-    });
-    systems = [ "zaserve" ];
-    lispLibs = [ (getAttr "zacl" pkgs) ];
-  };
-  zaws = {
-    pname = "zaws";
-    version = "20150407-git";
-    asds = [ "zaws" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/zaws/2015-04-07/zaws-20150407-git.tgz";
-      sha256 = "1iwjyqzm4b44in7i53z5lp8n4gzsi27ch02ql6y2vxbmq3sqffaw";
-      system = "zaws";
-      asd = "zaws";
-    });
-    systems = [ "zaws" ];
-    lispLibs = [ (getAttr "cl-base64" pkgs) (getAttr "drakma" pkgs) (getAttr "flexi-streams" pkgs) (getAttr "ironclad" pkgs) ];
-  };
-  zaws-xml = {
-    pname = "zaws-xml";
-    version = "20150407-git";
-    asds = [ "zaws-xml" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/zaws/2015-04-07/zaws-20150407-git.tgz";
-      sha256 = "1iwjyqzm4b44in7i53z5lp8n4gzsi27ch02ql6y2vxbmq3sqffaw";
-      system = "zaws-xml";
-      asd = "zaws-xml";
-    });
-    systems = [ "zaws-xml" ];
-    lispLibs = [ (getAttr "cxml" pkgs) ];
-  };
-  zbucium = {
-    pname = "zbucium";
-    version = "20190710-git";
-    asds = [ "zbucium" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/zbucium/2019-07-10/zbucium-20190710-git.tgz";
-      sha256 = "112qx8lwcsaipnnypv2jr57lwhlgzb5n53wgck3r66b8vjjb91gy";
-      system = "zbucium";
-      asd = "zbucium";
-    });
-    systems = [ "zbucium" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "bordeaux-threads" pkgs) (getAttr "drakma" pkgs) (getAttr "fare-memoization" pkgs) (getAttr "generators" pkgs) (getAttr "lastfm" pkgs) (getAttr "local-time" pkgs) (getAttr "lquery" pkgs) (getAttr "lyrics" pkgs) (getAttr "plump" pkgs) (getAttr "yason" pkgs) (getAttr "youtube" pkgs) ];
-  };
-  zcdb = {
-    pname = "zcdb";
-    version = "1.0.4";
-    asds = [ "zcdb" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/zcdb/2015-04-07/zcdb-1.0.4.tgz";
-      sha256 = "1g83hqivh40xrpifm9v1vx92h13g5kzn12fjrlk57fyl1qwjqdi7";
-      system = "zcdb";
-      asd = "zcdb";
-    });
-    systems = [ "zcdb" ];
-    lispLibs = [  ];
-  };
-  zenekindarl = {
-    pname = "zenekindarl";
-    version = "20171130-git";
-    asds = [ "zenekindarl" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/zenekindarl/2017-11-30/zenekindarl-20171130-git.tgz";
-      sha256 = "104y98j8fjj4wry55mhgv3g6358h5n1qcbhpn19b27b8cs8gqwib";
-      system = "zenekindarl";
-      asd = "zenekindarl";
-    });
-    systems = [ "zenekindarl" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "anaphora" pkgs) (getAttr "babel" pkgs) (getAttr "cl-annot" pkgs) (getAttr "cl-ppcre" pkgs) (getAttr "fast-io" pkgs) (getAttr "html-encode" pkgs) (getAttr "maxpc" pkgs) (getAttr "optima" pkgs) ];
-  };
-  zenekindarl-test = {
-    pname = "zenekindarl-test";
-    version = "20171130-git";
-    asds = [ "zenekindarl-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/zenekindarl/2017-11-30/zenekindarl-20171130-git.tgz";
-      sha256 = "104y98j8fjj4wry55mhgv3g6358h5n1qcbhpn19b27b8cs8gqwib";
-      system = "zenekindarl-test";
-      asd = "zenekindarl-test";
-    });
-    systems = [ "zenekindarl-test" ];
-    lispLibs = [ (getAttr "flexi-streams" pkgs) (getAttr "prove" pkgs) (getAttr "zenekindarl" pkgs) ];
-  };
-  zeromq = {
-    pname = "zeromq";
-    version = "20160318-git";
-    asds = [ "zeromq" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-zmq/2016-03-18/cl-zmq-20160318-git.tgz";
-      sha256 = "0g19ych3n57qdd42m0bcdcrq8c1p0fqzz07xrxl0s0g8bms3a3ga";
-      system = "zeromq";
-      asd = "zeromq";
-    });
-    systems = [ "zeromq" ];
-    lispLibs = [ (getAttr "cffi" pkgs) (getAttr "cffi-grovel" pkgs) (getAttr "trivial-garbage" pkgs) ];
-  };
-  zeromq_dot_tests = {
-    pname = "zeromq.tests";
-    version = "20160318-git";
-    asds = [ "zeromq.tests" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-zmq/2016-03-18/cl-zmq-20160318-git.tgz";
-      sha256 = "0g19ych3n57qdd42m0bcdcrq8c1p0fqzz07xrxl0s0g8bms3a3ga";
-      system = "zeromq.tests";
-      asd = "zeromq";
-    });
-    systems = [ "zeromq.tests" ];
-    lispLibs = [ (getAttr "bordeaux-threads" pkgs) (getAttr "zeromq" pkgs) (getAttr "fiveam" pkgs) ];
-  };
-  zip = {
-    pname = "zip";
-    version = "20150608-git";
-    asds = [ "zip" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/zip/2015-06-08/zip-20150608-git.tgz";
-      sha256 = "0s08a6fq182fzsbfyvihqbdllq6gxcwkvphxnrd9wwz65dhg5y66";
-      system = "zip";
-      asd = "zip";
-    });
-    systems = [ "zip" ];
-    lispLibs = [ (getAttr "babel" pkgs) (getAttr "cl-fad" pkgs) (getAttr "salza2" pkgs) (getAttr "trivial-gray-streams" pkgs) ];
-  };
-  zippy = {
-    pname = "zippy";
-    version = "20221106-git";
-    asds = [ "zippy" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/zippy/2022-11-06/zippy-20221106-git.tgz";
-      sha256 = "16v2h95cqnp9gnbr4llicydsf47r5gwchf4slh9gq2flvq78p0x1";
-      system = "zippy";
-      asd = "zippy";
-    });
-    systems = [ "zippy" ];
-    lispLibs = [ (getAttr "_3bz" pkgs) (getAttr "alexandria" pkgs) (getAttr "babel" pkgs) (getAttr "documentation-utils" pkgs) (getAttr "file-attributes" pkgs) (getAttr "nibbles" pkgs) (getAttr "pathname-utils" pkgs) (getAttr "salza2" pkgs) ];
-  };
-  zippy-dwim = {
-    pname = "zippy-dwim";
-    version = "20221106-git";
-    asds = [ "zippy-dwim" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/zippy/2022-11-06/zippy-20221106-git.tgz";
-      sha256 = "16v2h95cqnp9gnbr4llicydsf47r5gwchf4slh9gq2flvq78p0x1";
-      system = "zippy-dwim";
-      asd = "zippy-dwim";
-    });
-    systems = [ "zippy-dwim" ];
-    lispLibs = [ (getAttr "deploy" pkgs) (getAttr "zippy" pkgs) ];
-  };
-  ziz = {
-    pname = "ziz";
-    version = "20191007-git";
-    asds = [ "ziz" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/ziz/2019-10-07/ziz-20191007-git.tgz";
-      sha256 = "1rh6ixkyyj7y9jkw046m4ilmr8a12ylzm0a7sm8mjybdpkh6bk30";
-      system = "ziz";
-      asd = "ziz";
-    });
-    systems = [ "ziz" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "hunchentoot" pkgs) (getAttr "ironclad" pkgs) (getAttr "trivial-file-size" pkgs) ];
-  };
-  zlib = {
-    pname = "zlib";
-    version = "20170403-git";
-    asds = [ "zlib" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/zlib/2017-04-03/zlib-20170403-git.tgz";
-      sha256 = "1gz771h2q3xhw1yxpwki5zr9mqysa818vn21501w6fsi8wlmlffa";
-      system = "zlib";
-      asd = "zlib";
-    });
-    systems = [ "zlib" ];
-    lispLibs = [  ];
-  };
-  zmq = {
-    pname = "zmq";
-    version = "20200218-git";
-    asds = [ "zmq" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/lisp-zmq/2020-02-18/lisp-zmq-20200218-git.tgz";
-      sha256 = "01aavmnn2lbsaq957p1qll21hmhvhkrqhq3kazmz88sc40x1n0ld";
-      system = "zmq";
-      asd = "zmq";
-    });
-    systems = [ "zmq" ];
-    lispLibs = [ (getAttr "bordeaux-threads" pkgs) (getAttr "cffi" pkgs) (getAttr "cffi-grovel" pkgs) (getAttr "trivial-features" pkgs) ];
-  };
-  zmq-examples = {
-    pname = "zmq-examples";
-    version = "20200218-git";
-    asds = [ "zmq-examples" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/lisp-zmq/2020-02-18/lisp-zmq-20200218-git.tgz";
-      sha256 = "01aavmnn2lbsaq957p1qll21hmhvhkrqhq3kazmz88sc40x1n0ld";
-      system = "zmq-examples";
-      asd = "zmq-examples";
-    });
-    systems = [ "zmq-examples" ];
-    lispLibs = [ (getAttr "bordeaux-threads" pkgs) (getAttr "zmq" pkgs) ];
-  };
-  zmq-test = {
-    pname = "zmq-test";
-    version = "20200218-git";
-    asds = [ "zmq-test" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/lisp-zmq/2020-02-18/lisp-zmq-20200218-git.tgz";
-      sha256 = "01aavmnn2lbsaq957p1qll21hmhvhkrqhq3kazmz88sc40x1n0ld";
-      system = "zmq-test";
-      asd = "zmq-test";
-    });
-    systems = [ "zmq-test" ];
-    lispLibs = [ (getAttr "bordeaux-threads" pkgs) (getAttr "fiveam" pkgs) (getAttr "zmq" pkgs) ];
-  };
-  zpb-exif = {
-    pname = "zpb-exif";
-    version = "release-1.2.5";
-    asds = [ "zpb-exif" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/zpb-exif/2021-01-24/zpb-exif-release-1.2.5.tgz";
-      sha256 = "0h1n36lfl8xn8rfyl5jxz9m8zlg0if2avmryas79f684yczrvdnd";
-      system = "zpb-exif";
-      asd = "zpb-exif";
-    });
-    systems = [ "zpb-exif" ];
-    lispLibs = [  ];
-  };
-  zpb-ttf = {
-    pname = "zpb-ttf";
-    version = "release-1.0.4";
-    asds = [ "zpb-ttf" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/zpb-ttf/2021-01-24/zpb-ttf-release-1.0.4.tgz";
-      sha256 = "1ziwlfys15m95hh5c54g3xv78vjxadd6qi9zf9kvd2bv70qsixqk";
-      system = "zpb-ttf";
-      asd = "zpb-ttf";
-    });
-    systems = [ "zpb-ttf" ];
-    lispLibs = [  ];
-  };
-  zpng = {
-    pname = "zpng";
-    version = "1.2.2";
-    asds = [ "zpng" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/zpng/2015-04-07/zpng-1.2.2.tgz";
-      sha256 = "0b3ag3jhl3z7kdls3ahdsdxsfhhw5qrizk769984f4wkxhb69rcm";
-      system = "zpng";
-      asd = "zpng";
-    });
-    systems = [ "zpng" ];
-    lispLibs = [ (getAttr "salza2" pkgs) ];
-  };
-  zs3 = {
-    pname = "zs3";
-    version = "1.3.3";
-    asds = [ "zs3" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/zs3/2019-10-07/zs3-1.3.3.tgz";
-      sha256 = "186v95wgsj2hkxdw2jl9x1w4fddjclp7arp0rrd9vf5ly8h8sbf3";
-      system = "zs3";
-      asd = "zs3";
-    });
-    systems = [ "zs3" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) (getAttr "cl-base64" pkgs) (getAttr "cxml" pkgs) (getAttr "drakma" pkgs) (getAttr "ironclad" pkgs) (getAttr "puri" pkgs) ];
-  };
-  zsort = {
-    pname = "zsort";
-    version = "20120520-git";
-    asds = [ "zsort" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/zsort/2012-05-20/zsort-20120520-git.tgz";
-      sha256 = "1vyklyh99712zsll4qi0m4mm8yb1nz04403vl8i57bjv5p5max49";
-      system = "zsort";
-      asd = "zsort";
-    });
-    systems = [ "zsort" ];
-    lispLibs = [ (getAttr "alexandria" pkgs) ];
-  };
-  zstd = {
-    pname = "zstd";
-    version = "20221106-git";
-    asds = [ "zstd" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-zstd/2022-11-06/cl-zstd-20221106-git.tgz";
-      sha256 = "1wg8r1fhvhlm9kmqisivs2zjdwx235qr0l4d7n0qjpz4fj75aj07";
-      system = "zstd";
-      asd = "zstd";
-    });
-    systems = [ "zstd" ];
-    lispLibs = [ (getAttr "cffi" pkgs) (getAttr "cl-octet-streams" pkgs) (getAttr "trivial-gray-streams" pkgs) ];
-  };
-  zstd-tests = {
-    pname = "zstd-tests";
-    version = "20221106-git";
-    asds = [ "zstd-tests" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-zstd/2022-11-06/cl-zstd-20221106-git.tgz";
-      sha256 = "1wg8r1fhvhlm9kmqisivs2zjdwx235qr0l4d7n0qjpz4fj75aj07";
-      system = "zstd-tests";
-      asd = "zstd-tests";
-    });
-    systems = [ "zstd-tests" ];
-    lispLibs = [ (getAttr "cl-octet-streams" pkgs) (getAttr "zstd" pkgs) (getAttr "fiveam" pkgs) (getAttr "uiop" pkgs) ];
-  };
-  zyre = {
-    pname = "zyre";
-    version = "20200925-git";
-    asds = [ "zyre" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-zyre/2020-09-25/cl-zyre-20200925-git.tgz";
-      sha256 = "1pfb176k655hxksyrans5j43ridvpkl8q8h6d37zgi2z4iiz15wv";
-      system = "zyre";
-      asd = "zyre";
-    });
-    systems = [ "zyre" ];
-    lispLibs = [ (getAttr "cffi" pkgs) (getAttr "cffi-grovel" pkgs) (getAttr "trivia" pkgs) (getAttr "trivial-garbage" pkgs) (getAttr "uiop" pkgs) ];
-  };
-  zyre_slash_tock-client = {
-    pname = "zyre_tock-client";
-    version = "20200925-git";
-    asds = [ "zyre" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-zyre/2020-09-25/cl-zyre-20200925-git.tgz";
-      sha256 = "1pfb176k655hxksyrans5j43ridvpkl8q8h6d37zgi2z4iiz15wv";
-      system = "zyre";
-      asd = "zyre";
-    });
-    systems = [ "zyre/tock-client" ];
-    lispLibs = [ (getAttr "zyre" pkgs) (getAttr "local-time" pkgs) (getAttr "local-time-duration" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  zyre_slash_tock-server = {
-    pname = "zyre_tock-server";
-    version = "20200925-git";
-    asds = [ "zyre" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-zyre/2020-09-25/cl-zyre-20200925-git.tgz";
-      sha256 = "1pfb176k655hxksyrans5j43ridvpkl8q8h6d37zgi2z4iiz15wv";
-      system = "zyre";
-      asd = "zyre";
-    });
-    systems = [ "zyre/tock-server" ];
-    lispLibs = [ (getAttr "zyre" pkgs) (getAttr "local-time" pkgs) (getAttr "local-time-duration" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  zyre_slash_zpinger = {
-    pname = "zyre_zpinger";
-    version = "20200925-git";
-    asds = [ "zyre" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-zyre/2020-09-25/cl-zyre-20200925-git.tgz";
-      sha256 = "1pfb176k655hxksyrans5j43ridvpkl8q8h6d37zgi2z4iiz15wv";
-      system = "zyre";
-      asd = "zyre";
-    });
-    systems = [ "zyre/zpinger" ];
-    lispLibs = [ (getAttr "cl-ppcre" pkgs) (getAttr "zyre" pkgs) (getAttr "log4cl" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-  zyre_slash_zyredir = {
-    pname = "zyre_zyredir";
-    version = "20200925-git";
-    asds = [ "zyre" ];
-    src = (createAsd {
-      url = "http://beta.quicklisp.org/archive/cl-zyre/2020-09-25/cl-zyre-20200925-git.tgz";
-      sha256 = "1pfb176k655hxksyrans5j43ridvpkl8q8h6d37zgi2z4iiz15wv";
-      system = "zyre";
-      asd = "zyre";
-    });
-    systems = [ "zyre/zyredir" ];
-    lispLibs = [ (getAttr "cl-json" pkgs) (getAttr "zyre" pkgs) ];
-    meta = {
-      broken = true;
-    };
-  };
-}
diff --git a/pkgs/development/lisp-modules-new-obsolete/lisp-packages.nix b/pkgs/development/lisp-modules-new-obsolete/lisp-packages.nix
deleted file mode 100644
index 4c2d1aa1da51..000000000000
--- a/pkgs/development/lisp-modules-new-obsolete/lisp-packages.nix
+++ /dev/null
@@ -1,418 +0,0 @@
-# TODO:
-# - faster build by using lisp with preloaded asdf?
-# - dont include java libs unless abcl?
-# - dont use build-asdf-system to build lispWithPackages?
-# - make the lisp packages overridable? (e.g. buildInputs glibc->musl)
-# - build asdf with nix and use that instead of one shipped with impls
-#   (e.g. to fix build with clisp - does anyone use clisp?)
-# - claspPackages ? (gotta package clasp with nix first)
-# - hard one: remove unrelated sources ( of systems not being built)
-# - figure out a less awkward way to patch sources
-#   (have to build from src directly for SLIME to work, so can't just patch sources in place)
-
-{ pkgs, lib, stdenv, ... }:
-
-
-let
-
-  inherit (lib)
-    length
-    filter
-    foldl
-    unique
-    id
-    concat
-    concatMap
-    mutuallyExclusive
-    findFirst
-    remove
-    setAttr
-    getAttr
-    hasAttr
-    attrNames
-    attrValues
-    filterAttrs
-    mapAttrs
-    splitString
-    concatStringsSep
-    concatMapStringsSep
-    replaceStrings
-    removeSuffix
-    hasInfix
-    optionalString
-    makeBinPath
-    makeLibraryPath
-    makeSearchPath
-    recurseIntoAttrs
-    dontRecurseIntoAttrs
-  ;
-
-  inherit (builtins)
-    head
-    tail
-    elem
-    split
-    storeDir;
-
-  # Returns a flattened dependency tree without duplicates
-  # This is probably causing performance problems...
-  flattenedDeps = lispLibs:
-    let
-      toSet = list: builtins.listToAttrs (map (d: { name = d.pname; value = d; }) list);
-      toList = attrValues;
-      walk = acc: node:
-        if length node.lispLibs == 0
-        then acc
-        else builtins.foldl' walk (acc // toSet node.lispLibs) node.lispLibs;
-    in toList (walk {} { inherit lispLibs; });
-
-  # Stolen from python-packages.nix
-  # Actually no idea how this works
-  makeOverridableLispPackage = f: origArgs:
-    let
-      ff = f origArgs;
-      overrideWith = newArgs: origArgs // (if pkgs.lib.isFunction newArgs then newArgs origArgs else newArgs);
-    in
-      if builtins.isAttrs ff then (ff // {
-        overrideLispAttrs = newArgs: makeOverridableLispPackage f (overrideWith newArgs);
-      })
-      else if builtins.isFunction ff then {
-        overrideLispAttrs = newArgs: makeOverridableLispPackage f (overrideWith newArgs);
-        __functor = self: ff;
-      }
-      else ff;
-
-  #
-  # Wrapper around stdenv.mkDerivation for building ASDF systems.
-  #
-  build-asdf-system =
-    (makeOverridableLispPackage (
-    { pname,
-      version,
-      src ? null,
-      patches ? [],
-
-      # Native libraries, will be appended to the library path
-      nativeLibs ? [],
-
-      # Java libraries for ABCL, will be appended to the class path
-      javaLibs ? [],
-
-      # Lisp dependencies
-      # these should be packages built with `build-asdf-system`
-      lispLibs ? [],
-
-      # Lisp command to run buildScript
-      lisp,
-
-      # Some libraries have multiple systems under one project, for
-      # example, cffi has cffi-grovel, cffi-toolchain etc.  By
-      # default, only the `pname` system is build.
-      #
-      # .asd's not listed in `systems` are removed in
-      # installPhase. This prevents asdf from referring to uncompiled
-      # systems on run time.
-      #
-      # Also useful when the pname is differrent than the system name,
-      # such as when using reverse domain naming.
-      systems ? [ pname ],
-
-      # The .asd files that this package provides
-      asds ? systems,
-
-      # Other args to mkDerivation
-      ...
-    } @ args:
-
-    let
-
-      # A little slow for big dependency graphs.
-      # How to make it faster?
-      # Maybe do it in the buildScript in Common Lisp or Bash, instead
-      # of here with Nix?
-      libsFlat = flattenedDeps lispLibs;
-
-    in stdenv.mkDerivation (rec {
-      inherit pname version nativeLibs javaLibs lispLibs lisp systems asds;
-
-      # When src is null, we are building a lispWithPackages and only
-      # want to make use of the dependency environment variables
-      # generated by build-asdf-system
-      dontUnpack = src == null;
-
-
-      # TODO: Do the propagation like for lisp, native and java like this:
-      # https://github.com/teu5us/nix-lisp-overlay/blob/e30dafafa5c1b9a5b0ccc9aaaef9d285d9f0c46b/pkgs/development/lisp-modules/setup-hook.sh
-      # Then remove the "echo >> nix-drvs" from buildScript
-
-      # Tell asdf where to find system definitions of lisp dependencies.
-      #
-      # The "//" ending is important as it makes asdf recurse into
-      # subdirectories when searching for .asd's. This is to support
-      # projects where .asd's aren't in the root directory.
-      CL_SOURCE_REGISTRY = makeSearchPath "/" libsFlat;
-
-      # Tell lisp where to find native dependencies
-      #
-      # Normally generated from lispLibs, but LD_LIBRARY_PATH as a
-      # derivation attr itself can be used as an extension point when
-      # the libs are not in a '/lib' subdirectory
-      LD_LIBRARY_PATH =
-        let
-          libs = concatMap (x: x.nativeLibs) libsFlat;
-          paths = filter (x: x != "") (map (x: x.LD_LIBRARY_PATH) libsFlat);
-          path =
-            makeLibraryPath libs
-            + optionalString (length paths != 0) ":"
-            + concatStringsSep ":" paths;
-        in concatStringsSep ":" (unique (splitString ":" path));
-
-      # Java libraries For ABCL
-      CLASSPATH = makeSearchPath "share/java/*" (concatMap (x: x.javaLibs) libsFlat);
-
-      # Portable script to build the systems.
-      #
-      # `lisp` must evaluate this file then exit immediately. For
-      # example, SBCL's --script flag does just that.
-      #
-      # NOTE:
-      # Every other library worked fine with asdf:compile-system in
-      # buildScript.
-      #
-      # cl-syslog, for some reason, signals that CL-SYSLOG::VALID-SD-ID-P
-      # is undefined with compile-system, but works perfectly with
-      # load-system. Strange.
-      buildScript = pkgs.writeText "build-${pname}.lisp" ''
-        (require :asdf)
-        (dolist (s '(${concatStringsSep " " systems}))
-          (asdf:load-system s))
-      '';
-
-      buildPhase = optionalString (src != null) ''
-        # In addition to lisp dependencies, make asdf see the .asd's
-        # of the systems being built
-        #
-        # *Append* src since `lispLibs` can provide .asd's that are
-        # also in `src` but are not in `systems` (that is, the .asd's
-        # that will be deleted in installPhase). We don't want to
-        # rebuild them, but to load them from lispLibs.
-        #
-        # NOTE: It's important to read files from `src` instead of
-        # from pwd to get go-to-definition working with SLIME
-        export CL_SOURCE_REGISTRY=$CL_SOURCE_REGISTRY:$src//
-
-        # Similiarily for native deps
-        export LD_LIBRARY_PATH=${makeLibraryPath nativeLibs}:$LD_LIBRARY_PATH
-        export CLASSPATH=${makeSearchPath "share/java/*" javaLibs}:$CLASSPATH
-
-        # Make asdf compile from `src` to pwd and load `lispLibs`
-        # from storeDir. Otherwise it could try to recompile lisp deps.
-        export ASDF_OUTPUT_TRANSLATIONS="$src:$(pwd):${storeDir}:${storeDir}"
-
-        # track lisp dependencies for graph generation
-        # TODO: Do the propagation like for lisp, native and java like this:
-        # https://github.com/teu5us/nix-lisp-overlay/blob/e30dafafa5c1b9a5b0ccc9aaaef9d285d9f0c46b/pkgs/development/lisp-modules/setup-hook.sh
-        # Then remove the "echo >> nix-drvs" from buildScript
-        echo $lispLibs >> __nix-drvs
-
-
-        # Finally, compile the systems
-        ${lisp} $buildScript
-      '';
-
-      # Copy compiled files to store
-      #
-      # Make sure to include '$' in regex to prevent skipping
-      # stuff like 'iolib.asdf.asd' for system 'iolib.asd'
-      #
-      # Same with '/': `local-time.asd` for system `cl-postgres+local-time.asd`
-      installPhase =
-        let
-          mkSystemsRegex = systems:
-            concatMapStringsSep "\\|" (replaceStrings ["." "+"] ["[.]" "[+]"]) systems;
-        in
-      ''
-        mkdir -pv $out
-        cp -r * $out
-
-        # Remove all .asd files except for those in `systems`.
-        find $out -name "*.asd" \
-        | grep -v "/\(${mkSystemsRegex systems}\)\.asd$" \
-        | xargs rm -fv || true
-      '';
-
-      # Not sure if it's needed, but caused problems with SBCL
-      # save-lisp-and-die binaries in the past
-      dontStrip = true;
-      dontFixup = true;
-
-    } // (args // {
-      src = if builtins.length (args.patches or []) > 0
-            then pkgs.applyPatches { inherit (args) src patches; }
-            else args.src;
-      patches = [];
-
-      # make sure that propagated build-inputs from lispLibs are propagated
-      propagatedBuildInputs = lib.unique
-        (builtins.concatLists
-          (lib.catAttrs "propagatedBuildInputs"
-            (builtins.concatLists [[args] lispLibs nativeLibs javaLibs])));
-    }))));
-
-  # Build the set of lisp packages using `lisp`
-  # These packages are defined manually for one reason or another:
-  # - The library is not in quicklisp
-  # - The library that is in quicklisp is broken
-  # - Special build procedure such as cl-unicode, asdf
-  #
-  # These Probably could be done even in ql.nix
-  # - Want to pin a specific commit
-  # - Want to apply custom patches
-  #
-  # They can use the auto-imported quicklisp packages as dependencies,
-  # but some of those don't work out of the box.
-  #
-  # E.g if a QL package depends on cl-unicode it won't build out of
-  # the box. The dependency has to be rewritten using the manually
-  # fixed cl-unicode.
-  #
-  # This is done by generating a 'fixed' set of Quicklisp packages by
-  # calling quicklispPackagesFor with the right `fixup`.
-  commonLispPackagesFor = lisp:
-    let
-      build-asdf-system' = body: build-asdf-system (body // { inherit lisp; });
-    in import ./packages.nix {
-      inherit pkgs;
-      inherit lisp;
-      inherit quicklispPackagesFor;
-      inherit fixupFor;
-      build-asdf-system = build-asdf-system';
-    };
-
-  # Build the set of packages imported from quicklisp using `lisp`
-  quicklispPackagesFor = { lisp, fixup ? lib.id, build ? build-asdf-system }:
-    let
-      build-asdf-system' = body: build (body // {
-        inherit lisp;
-      });
-    in import ./ql.nix {
-      inherit pkgs;
-      inherit fixup;
-      build-asdf-system = build-asdf-system';
-    };
-
-  # Rewrite deps of pkg to use manually defined packages
-  #
-  # The purpose of manual packages is to customize one package, but
-  # then it has to be propagated everywhere for it to make sense and
-  # have consistency in the package tree.
-  fixupFor = manualPackages: qlPkg:
-    assert (lib.isAttrs qlPkg && !lib.isDerivation qlPkg);
-    let
-      # Make it possible to reuse generated attrs without recursing into oblivion
-      packages = (lib.filterAttrs (n: v: n != qlPkg.pname) manualPackages);
-      substituteLib = pkg:
-        if lib.hasAttr pkg.pname packages
-        then packages.${pkg.pname}
-        else pkg;
-      pkg = substituteLib qlPkg;
-    in pkg // { lispLibs = map substituteLib pkg.lispLibs; };
-
-  makeAttrName = str:
-    removeSuffix
-      "_"
-      (replaceStrings
-        ["+" "." "/"]
-        ["_plus_" "_dot_" "_slash_"]
-        str);
-
-  oldMakeWrapper = pkgs.runCommand "make-wrapper.sh" {} ''
-    substitute ${./old-make-wrapper.sh} $out \
-      --replace @shell@ ${pkgs.bash}/bin/bash
-  '';
-
-  # Creates a lisp wrapper with `packages` installed
-  #
-  # `packages` is a function that takes `clpkgs` - a set of lisp
-  # packages - as argument and returns the list of packages to be
-  # installed
-  lispWithPackagesInternal = clpkgs: packages:
-    # FIXME just use flattenedDeps instead
-    (build-asdf-system rec {
-      lisp = (head (lib.attrValues clpkgs)).lisp;
-      # See dontUnpack in build-asdf-system
-      src = null;
-      pname = baseNameOf (head (split " " lisp));
-      version = "with-packages";
-      lispLibs = packages clpkgs;
-      systems = [];
-    }).overrideAttrs(o: {
-      installPhase = ''
-        # The recent version of makeWrapper causes breakage. For more info see
-        # https://github.com/Uthar/nix-cl/issues/2
-        source ${oldMakeWrapper}
-
-        mkdir -pv $out/bin
-        makeWrapper \
-          ${head (split " " o.lisp)} \
-          $out/bin/${baseNameOf (head (split " " o.lisp))} \
-          --prefix CL_SOURCE_REGISTRY : "${o.CL_SOURCE_REGISTRY}" \
-          --prefix ASDF_OUTPUT_TRANSLATIONS : ${concatStringsSep "::" (flattenedDeps o.lispLibs)}: \
-          --prefix LD_LIBRARY_PATH : "${o.LD_LIBRARY_PATH}" \
-          --prefix LD_LIBRARY_PATH : "${makeLibraryPath o.nativeLibs}" \
-          --prefix CLASSPATH : "${o.CLASSPATH}" \
-          --prefix CLASSPATH : "${makeSearchPath "share/java/*" o.javaLibs}" \
-          --prefix PATH : "${makeBinPath (o.buildInputs or [])}" \
-          --prefix PATH : "${makeBinPath (o.propagatedBuildInputs or [])}"
-      '';
-    });
-
-  lispWithPackages = lisp:
-    let
-      packages = lispPackagesFor lisp;
-    in lispWithPackagesInternal packages;
-
-  lispPackagesFor = lisp:
-    let
-      packages = commonLispPackagesFor lisp;
-      qlPackages = quicklispPackagesFor {
-        inherit lisp;
-        fixup = fixupFor packages;
-      };
-    in qlPackages // packages;
-
-  commonLispPackages = rec {
-    inherit
-      build-asdf-system
-      lispWithPackagesInternal
-      lispPackagesFor
-      lispWithPackages;
-
-    # TODO: uncomment clasp when clasp 1.0.0 is packaged
-
-    # There's got to be a better way than this...
-    # The problem was that with --load everywhere, some
-    # implementations didn't exit with 0 on compilation failure
-    # Maybe a handler-case in buildScript?
-    sbcl  = "${pkgs.sbcl}/bin/sbcl --script";
-    ecl   = "${pkgs.ecl}/bin/ecl --shell";
-    abcl  = ''${pkgs.abcl}/bin/abcl --batch --eval "(load \"$buildScript\")"'';
-    ccl   = ''${pkgs.ccl}/bin/ccl --batch --eval "(load \"$buildScript\")" --'';
-    # clasp = ''${pkgs.clasp}/bin/clasp --non-interactive --quit --load'';
-
-    # Manually defined packages shadow the ones imported from quicklisp
-
-    sbclPackages  = recurseIntoAttrs (lispPackagesFor sbcl);
-    eclPackages   = dontRecurseIntoAttrs (lispPackagesFor ecl);
-    abclPackages  = dontRecurseIntoAttrs (lispPackagesFor abcl);
-    cclPackages   = dontRecurseIntoAttrs (lispPackagesFor ccl);
-    # claspPackages = lispPackagesFor clasp;
-
-    sbclWithPackages  = lispWithPackages sbcl;
-    eclWithPackages   = lispWithPackages ecl;
-    abclWithPackages  = lispWithPackages abcl;
-    cclWithPackages   = lispWithPackages ccl;
-    # claspWithPackages = lispWithPackages clasp;
-  };
-
-in commonLispPackages
diff --git a/pkgs/development/lisp-modules-new-obsolete/old-make-wrapper.sh b/pkgs/development/lisp-modules-new-obsolete/old-make-wrapper.sh
deleted file mode 100644
index 903e17c3b2e5..000000000000
--- a/pkgs/development/lisp-modules-new-obsolete/old-make-wrapper.sh
+++ /dev/null
@@ -1,155 +0,0 @@
-# Assert that FILE exists and is executable
-#
-# assertExecutable FILE
-assertExecutable() {
-    local file="$1"
-    [[ -f "$file" && -x "$file" ]] || \
-        die "Cannot wrap '$file' because it is not an executable file"
-}
-
-# construct an executable file that wraps the actual executable
-# makeWrapper EXECUTABLE OUT_PATH ARGS
-
-# ARGS:
-# --argv0       NAME    : set name of executed process to NAME
-#                         (otherwise it’s called …-wrapped)
-# --set         VAR VAL : add VAR with value VAL to the executable’s
-#                         environment
-# --set-default VAR VAL : like --set, but only adds VAR if not already set in
-#                         the environment
-# --unset       VAR     : remove VAR from the environment
-# --run         COMMAND : run command before the executable
-# --add-flags   FLAGS   : add FLAGS to invocation of executable
-
-# --prefix          ENV SEP VAL   : suffix/prefix ENV with VAL, separated by SEP
-# --suffix
-# --prefix-each     ENV SEP VALS  : like --prefix, but VALS is a list
-# --suffix-each     ENV SEP VALS  : like --suffix, but VALS is a list
-# --prefix-contents ENV SEP FILES : like --suffix-each, but contents of FILES
-#                                   are read first and used as VALS
-# --suffix-contents
-makeWrapper() {
-    local original="$1"
-    local wrapper="$2"
-    local params varName value command separator n fileNames
-    local argv0 flagsBefore flags
-
-    assertExecutable "$original"
-
-    mkdir -p "$(dirname "$wrapper")"
-
-    echo "#! @shell@ -e" > "$wrapper"
-
-    params=("$@")
-    for ((n = 2; n < ${#params[*]}; n += 1)); do
-        p="${params[$n]}"
-
-        if [[ "$p" == "--set" ]]; then
-            varName="${params[$((n + 1))]}"
-            value="${params[$((n + 2))]}"
-            n=$((n + 2))
-            echo "export $varName=${value@Q}" >> "$wrapper"
-        elif [[ "$p" == "--set-default" ]]; then
-            varName="${params[$((n + 1))]}"
-            value="${params[$((n + 2))]}"
-            n=$((n + 2))
-            echo "export $varName=\${$varName-${value@Q}}" >> "$wrapper"
-        elif [[ "$p" == "--unset" ]]; then
-            varName="${params[$((n + 1))]}"
-            n=$((n + 1))
-            echo "unset $varName" >> "$wrapper"
-        elif [[ "$p" == "--run" ]]; then
-            command="${params[$((n + 1))]}"
-            n=$((n + 1))
-            echo "$command" >> "$wrapper"
-        elif [[ ("$p" == "--suffix") || ("$p" == "--prefix") ]]; then
-            varName="${params[$((n + 1))]}"
-            separator="${params[$((n + 2))]}"
-            value="${params[$((n + 3))]}"
-            n=$((n + 3))
-            if test -n "$value"; then
-                if test "$p" = "--suffix"; then
-                    echo "export $varName=\$$varName\${$varName:+${separator@Q}}${value@Q}" >> "$wrapper"
-                else
-                    echo "export $varName=${value@Q}\${$varName:+${separator@Q}}\$$varName" >> "$wrapper"
-                fi
-            fi
-        elif [[ "$p" == "--prefix-each" ]]; then
-            varName="${params[$((n + 1))]}"
-            separator="${params[$((n + 2))]}"
-            values="${params[$((n + 3))]}"
-            n=$((n + 3))
-            for value in $values; do
-                echo "export $varName=${value@Q}\${$varName:+${separator@Q}}\$$varName" >> "$wrapper"
-            done
-        elif [[ "$p" == "--suffix-each" ]]; then
-            varName="${params[$((n + 1))]}"
-            separator="${params[$((n + 2))]}"
-            values="${params[$((n + 3))]}"
-            n=$((n + 3))
-            for value in $values; do
-                echo "export $varName=\$$varName\${$varName:+$separator}${value@Q}" >> "$wrapper"
-            done
-        elif [[ ("$p" == "--suffix-contents") || ("$p" == "--prefix-contents") ]]; then
-            varName="${params[$((n + 1))]}"
-            separator="${params[$((n + 2))]}"
-            fileNames="${params[$((n + 3))]}"
-            n=$((n + 3))
-            for fileName in $fileNames; do
-                contents="$(cat "$fileName")"
-                if test "$p" = "--suffix-contents"; then
-                    echo "export $varName=\$$varName\${$varName:+$separator}${contents@Q}" >> "$wrapper"
-                else
-                    echo "export $varName=${contents@Q}\${$varName:+$separator}\$$varName" >> "$wrapper"
-                fi
-            done
-        elif [[ "$p" == "--add-flags" ]]; then
-            flags="${params[$((n + 1))]}"
-            n=$((n + 1))
-            flagsBefore="$flagsBefore $flags"
-        elif [[ "$p" == "--argv0" ]]; then
-            argv0="${params[$((n + 1))]}"
-            n=$((n + 1))
-        else
-            die "makeWrapper doesn't understand the arg $p"
-        fi
-    done
-
-    echo exec ${argv0:+-a \"$argv0\"} \""$original"\" \
-         "$flagsBefore" '"$@"' >> "$wrapper"
-
-    chmod +x "$wrapper"
-}
-
-addSuffix() {
-    suffix="$1"
-    shift
-    for name in "$@"; do
-        echo "$name$suffix"
-    done
-}
-
-filterExisting() {
-    for fn in "$@"; do
-        if test -e "$fn"; then
-            echo "$fn"
-        fi
-    done
-}
-
-# Syntax: wrapProgram <PROGRAM> <MAKE-WRAPPER FLAGS...>
-wrapProgram() {
-    local prog="$1"
-    local hidden
-
-    assertExecutable "$prog"
-
-    hidden="$(dirname "$prog")/.$(basename "$prog")"-wrapped
-    while [ -e "$hidden" ]; do
-      hidden="${hidden}_"
-    done
-    mv "$prog" "$hidden"
-    # Silence warning about unexpanded $0:
-    # shellcheck disable=SC2016
-    makeWrapper "$hidden" "$prog" --argv0 '$0' "${@:2}"
-}
diff --git a/pkgs/development/lisp-modules-new-obsolete/packages.nix b/pkgs/development/lisp-modules-new-obsolete/packages.nix
deleted file mode 100644
index 1c65a369f0e3..000000000000
--- a/pkgs/development/lisp-modules-new-obsolete/packages.nix
+++ /dev/null
@@ -1,336 +0,0 @@
-{ build-asdf-system, lisp, quicklispPackagesFor, fixupFor, pkgs, ... }:
-
-let
-
-  inherit (pkgs.lib)
-    head
-    makeLibraryPath
-    makeSearchPath
-    setAttr
-    hasAttr
-    optionals
-    hasSuffix
-    splitString
-  ;
-
-  # Used by builds that would otherwise attempt to write into storeDir.
-  #
-  # Will run build two times, keeping all files created during the
-  # first run, exept the FASL's. Then using that directory tree as the
-  # source of the second run.
-  #
-  # E.g. cl-unicode creating .txt files during compilation
-  build-with-compile-into-pwd = args:
-    let
-      build = (build-asdf-system (args // { version = args.version + "-build"; }))
-        .overrideAttrs(o: {
-          buildPhase = with builtins; ''
-            mkdir __fasls
-            export LD_LIBRARY_PATH=${makeLibraryPath o.nativeLibs}:$LD_LIBRARY_PATH
-            export CLASSPATH=${makeSearchPath "share/java/*" o.javaLibs}:$CLASSPATH
-            export CL_SOURCE_REGISTRY=$CL_SOURCE_REGISTRY:$(pwd)//
-            export ASDF_OUTPUT_TRANSLATIONS="$(pwd):$(pwd)/__fasls:${storeDir}:${storeDir}"
-            ${o.lisp} ${o.buildScript}
-          '';
-          installPhase = ''
-            mkdir -pv $out
-            rm -rf __fasls
-            cp -r * $out
-          '';
-        });
-    in build-asdf-system (args // {
-      # Patches are already applied in `build`
-      patches = [];
-      src = build;
-    });
-
-  # A little hacky
-  isJVM = hasSuffix "abcl" (head (splitString " " lisp));
-
-  # Makes it so packages imported from Quicklisp can be re-used as
-  # lispLibs ofpackages in this file.
-  ql = quicklispPackagesFor { inherit lisp; fixup = fixupFor packages; };
-
-  packages = rec {
-
-  asdf = build-with-compile-into-pwd {
-    pname = "asdf";
-    version = "3.3.5.3";
-    src = pkgs.fetchzip {
-      url = "https://gitlab.common-lisp.net/asdf/asdf/-/archive/3.3.5.3/asdf-3.3.5.3.tar.gz";
-      sha256 = "0aw200awhg58smmbdmz80bayzmbm1a6547gv0wmc8yv89gjqldbv";
-    };
-    systems = [ "asdf" "uiop" ];
-  };
-
-  uiop = asdf.overrideLispAttrs(o: {
-    pname = "uiop";
-  });
-
-  cffi = let
-    jna = pkgs.fetchMavenArtifact {
-      groupId = "net.java.dev.jna";
-      artifactId = "jna";
-      version = "5.9.0";
-      sha256 = "0qbis8acv04fi902qzak1mbagqaxcsv2zyp7b8y4shs5nj0cgz7a";
-    };
-  in build-asdf-system {
-    src =  pkgs.fetchzip {
-      url = "http://beta.quicklisp.org/archive/cffi/2021-04-11/cffi_0.24.1.tgz";
-      sha256 = "17ryim4xilb1rzxydfr7595dnhqkk02lmrbkqrkvi9091shi4cj3";
-    };
-    version = "0.24.1";
-    pname = "cffi";
-    lispLibs = with ql; [
-      alexandria
-      babel
-      trivial-features
-    ];
-    javaLibs = optionals isJVM [ jna ];
-  };
-
-  cffi-libffi = ql.cffi-libffi.overrideLispAttrs (o: {
-    src = pkgs.fetchzip {
-      url = "https://github.com/cffi/cffi/archive/3f842b92ef808900bf20dae92c2d74232c2f6d3a.tar.gz";
-      sha256 = "1jilvmbbfrmb23j07lwmkbffc6r35wnvas5s4zjc84i856ccclm2";
-    };
-    patches = [ ./patches/cffi-libffi-darwin-ffi-h.patch ];
-  });
-
-  cl-unicode = build-with-compile-into-pwd {
-    pname = "cl-unicode";
-    version = "0.1.6";
-    src =  pkgs.fetchzip {
-      url = "https://github.com/edicl/cl-unicode/archive/refs/tags/v0.1.6.tar.gz";
-      sha256 = "0ykx2s9lqfl74p1px0ik3l2izd1fc9jd1b4ra68s5x34rvjy0hza";
-    };
-    systems = [ "cl-unicode" ];
-    lispLibs = with ql; [
-      cl-ppcre
-      flexi-streams
-    ];
-  };
-
-  jzon = build-asdf-system {
-    src = pkgs.fetchzip {
-      url = "https://github.com/Zulu-Inuoe/jzon/archive/6b201d4208ac3f9721c461105b282c94139bed29.tar.gz";
-      sha256 = "01d4a78pjb1amx5amdb966qwwk9vblysm1li94n3g26mxy5zc2k3";
-    };
-    version = "0.0.0-20210905-6b201d4208";
-    pname = "jzon";
-    lispLibs = [
-      ql.closer-mop
-    ];
-    systems = [ "com.inuoe.jzon" ];
-  };
-
-  cl-notify = build-asdf-system {
-    pname = "cl-notify";
-    version = "20080904-138ca7038";
-    src = pkgs.fetchzip {
-      url = "https://repo.or.cz/cl-notify.git/snapshot/138ca703861f4a1fbccbed557f92cf4d213668a1.tar.gz";
-      sha256 = "0k6ns6fzvjcbpsqgx85r4g5m25fvrdw9481i9vyabwym9q8bbqwx";
-    };
-    lispLibs = [
-      cffi
-    ];
-    nativeLibs = [
-      pkgs.libnotify
-    ];
-  };
-
-  cl-liballegro-nuklear = build-with-compile-into-pwd {
-    inherit (ql.cl-liballegro-nuklear) pname version src;
-    nativeBuildInputs = [ pkgs.allegro5 ];
-    nativeLibs = [ pkgs.allegro5 ];
-    lispLibs = ql.cl-liballegro-nuklear.lispLibs ++ [ ql.cl-liballegro ];
-    patches = [ ./patches/cl-liballegro-nuklear-missing-dll.patch ];
-  };
-
-
-  tuple = build-asdf-system {
-    pname = "tuple";
-    version = "b74bd067d";
-    src = pkgs.fetchzip {
-      url = "https://fossil.galkowski.xyz/tuple/tarball/b74bd067d4533ac0/tuple.tar.gz";
-      sha256 = "0dk356vkv6kwwcmc3j08x7143549m94rd66rpkzq8zkb31cg2va8";
-    };
-  };
-
-  cl-tar-file = build-asdf-system {
-    pname = "cl-tar-file";
-    version = "v0.2.1";
-    src = pkgs.fetchzip {
-      url = let
-        rev = "0c10bc82f14702c97a26dc25ce075b5d3a2347d1";
-      in "https://gitlab.common-lisp.net/cl-tar/cl-tar-file/-/archive/${rev}/cl-tar-file-${rev}.tar.gz";
-      sha256 = "0i8j05fkgdqy4c4pqj0c68sh4s3klpx9kc5wp73qwzrl3xqd2svy";
-    };
-    lispLibs = with ql; [
-      alexandria
-      babel
-      trivial-gray-streams
-      _40ants-doc
-      salza2
-      chipz
-      flexi-streams
-      parachute
-    ];
-    systems = [ "tar-file" "tar-file/test" ];
-  };
-
-  cl-tar = build-asdf-system {
-    pname = "cl-tar";
-    version = "v0.2.1";
-    src = pkgs.fetchzip {
-      url = let
-        rev = "7c6e07a10c93d9e311f087b5f6328cddd481669a";
-      in "https://gitlab.common-lisp.net/cl-tar/cl-tar/-/archive/${rev}/cl-tar-${rev}.tar.gz";
-      sha256 = "0wp23cs3i6a89dibifiz6559la5nk58d1n17xvbxq4nrl8cqsllf";
-    };
-    lispLibs = with ql; [
-      alexandria
-      babel
-      local-time
-      split-sequence
-      _40ants-doc
-      parachute
-      osicat
-    ] ++ [ cl-tar-file ];
-    systems = [
-      "tar"
-      "tar/common-extract"
-      "tar/simple-extract"
-      "tar/extract"
-      "tar/create"
-      "tar/docs"
-      "tar/test"
-      "tar/create-test"
-      "tar/extract-test"
-      "tar/simple-extract-test"
-    ];
-  };
-
-  lessp = build-asdf-system {
-    pname = "lessp";
-    version = "0.2-f8a9e4664";
-    src = pkgs.fetchzip {
-      url = "https://github.com/facts-db/cl-lessp/archive/632217602b85b679e8d420654a0aa39e798ca3b5.tar.gz";
-      sha256 = "0i3ia14dzqwjpygd0zn785ff5vqnnmkn75psfpyx0ni3jr71lkq9";
-    };
-  };
-
-  rollback = build-asdf-system {
-    pname = "rollback";
-    version = "0.1-5d3f21fda";
-    src = pkgs.fetchzip {
-      url = "https://github.com/facts-db/cl-rollback/archive/5d3f21fda8f04f35c5e9d20ee3b87db767915d15.tar.gz";
-      sha256 = "12dpxsbm2al633y87i8p784k2dn4bbskz6sl40v9f5ljjmjqjzxf";
-    };
-  };
-
-  facts = build-asdf-system {
-    pname = "facts";
-    version = "0.1-632217602";
-    src = pkgs.fetchzip {
-      url = "https://github.com/facts-db/cl-lessp/archive/632217602b85b679e8d420654a0aa39e798ca3b5.tar.gz";
-      sha256 = "09z1vwzjm7hlb529jl3hcjnfd11gh128lmdg51im7ar4jv4746iw";
-    };
-    lispLibs = [ lessp rollback ] ++ [ ql.local-time ];
-  };
-
-
-  cl-fuse = build-with-compile-into-pwd {
-    inherit (ql.cl-fuse) pname version src lispLibs;
-    nativeBuildInputs = [ pkgs.fuse ];
-    nativeLibs = [ pkgs.fuse ];
-  };
-
-  cl-containers = build-asdf-system {
-    inherit (ql.cl-containers) pname version src;
-    lispLibs = ql.cl-containers.lispLibs ++ [ ql.moptilities ];
-    systems = [ "cl-containers" "cl-containers/with-moptilities" ];
-  };
-
-  swank = build-with-compile-into-pwd {
-    inherit (ql.swank) pname version src lispLibs;
-    patches = [ ./patches/swank-pure-paths.patch ];
-    postConfigure = ''
-      substituteAllInPlace swank-loader.lisp
-    '';
-  };
-
-  clx-truetype = build-asdf-system {
-    pname = "clx-truetype";
-    version = "20160825-git";
-    src = pkgs.fetchzip {
-      url = "http://beta.quicklisp.org/archive/clx-truetype/2016-08-25/clx-truetype-20160825-git.tgz";
-      sha256 = "079hyp92cjkdfn6bhkxsrwnibiqbz4y4af6nl31lzw6nm91j5j37";
-    };
-    lispLibs = with ql; [
-      alexandria bordeaux-threads cl-aa cl-fad cl-paths cl-paths-ttf
-      cl-store cl-vectors clx trivial-features zpb-ttf
-    ];
-  };
-
-  mathkit = build-asdf-system {
-    inherit (ql.mathkit) pname version src asds lisp;
-    lispLibs = ql.mathkit.lispLibs ++ [ ql.sb-cga ];
-  };
-
-  nyxt-gtk = build-asdf-system {
-    inherit (ql.nyxt) pname lisp;
-    version = "2.2.4";
-
-    lispLibs = ql.nyxt.lispLibs ++ (with ql; [
-      cl-cffi-gtk cl-webkit2 mk-string-metrics
-    ]);
-
-    src = pkgs.fetchzip {
-      url = "https://github.com/atlas-engineer/nyxt/archive/2.2.4.tar.gz";
-      sha256 = "12l7ir3q29v06jx0zng5cvlbmap7p709ka3ik6x29lw334qshm9b";
-    };
-
-    nativeBuildInputs = [ pkgs.makeWrapper ];
-    buildInputs = [
-      # needed for GSETTINGS_SCHEMAS_PATH
-      pkgs.gsettings-desktop-schemas pkgs.glib pkgs.gtk3
-
-      # needed for XDG_ICON_DIRS
-      pkgs.gnome.adwaita-icon-theme
-    ];
-
-    buildScript = pkgs.writeText "build-nyxt.lisp" ''
-      (require :asdf)
-      (asdf:load-system :nyxt/gtk-application)
-      (sb-ext:save-lisp-and-die "nyxt" :executable t
-                                       #+sb-core-compression :compression
-                                       #+sb-core-compression t
-                                       :toplevel #'nyxt:entry-point)
-    '';
-
-    # Run with WEBKIT_FORCE_SANDBOX=0 if getting a runtime error in webkitgtk-2.34.4
-    installPhase = ql.nyxt.installPhase + ''
-      rm -v $out/nyxt
-      mkdir -p $out/bin
-      cp -v nyxt $out/bin
-      wrapProgram $out/bin/nyxt \
-        --prefix LD_LIBRARY_PATH : $LD_LIBRARY_PATH \
-        --prefix XDG_DATA_DIRS : $XDG_ICON_DIRS \
-        --prefix XDG_DATA_DIRS : $GSETTINGS_SCHEMAS_PATH \
-        --prefix GIO_EXTRA_MODULES ":" ${pkgs.dconf.lib}/lib/gio/modules/ \
-        --prefix GIO_EXTRA_MODULES ":" ${pkgs.glib-networking}/lib/gio/modules/
-    '';
-  };
-
-  nyxt = nyxt-gtk;
-
-  ltk = ql.ltk.overrideLispAttrs (o: {
-    src = pkgs.fetchzip {
-      url = "https://github.com/uthar/ltk/archive/f19162e76d6c7c2f51bd289b811d9ba20dd6555e.tar.gz";
-      sha256 = "0mzikv4abq9yqlj6dsji1wh34mjizr5prv6mvzzj29z1485fh1bj";
-    };
-    version = "f19162e76";
-  });
-  };
-in packages
diff --git a/pkgs/development/lisp-modules-new-obsolete/patches/cffi-libffi-darwin-ffi-h.patch b/pkgs/development/lisp-modules-new-obsolete/patches/cffi-libffi-darwin-ffi-h.patch
deleted file mode 100644
index 15c4a4588755..000000000000
--- a/pkgs/development/lisp-modules-new-obsolete/patches/cffi-libffi-darwin-ffi-h.patch
+++ /dev/null
@@ -1,14 +0,0 @@
---- a/libffi/libffi-types.lisp
-+++ b/libffi/libffi-types.lisp
-@@ -43,9 +43,6 @@
- 
- (pkg-config-cflags "libffi" :optional t)
- 
--#+darwin
--(include "ffi/ffi.h")
--#-darwin
- (include "ffi.h")
- 
- (cenum status
-
-Diff finished.  Sun Nov 13 00:23:10 2022
\ No newline at end of file
diff --git a/pkgs/development/lisp-modules-new-obsolete/patches/cl-freetype2-fix-grovel-includes.patch b/pkgs/development/lisp-modules-new-obsolete/patches/cl-freetype2-fix-grovel-includes.patch
deleted file mode 100644
index 5260f0c05841..000000000000
--- a/pkgs/development/lisp-modules-new-obsolete/patches/cl-freetype2-fix-grovel-includes.patch
+++ /dev/null
@@ -1,16 +0,0 @@
---- a/src/ffi/grovel/grovel-freetype.h
-+++ b/src/ffi/grovel/grovel-freetype.h
-@@ -2,7 +2,7 @@
- #include <ft2build.h>
- #include FT_FREETYPE_H
- 
--#include <ftsystem.h>
--#include <fttypes.h>
--#include <ftlist.h>
--#include <ftimage.h>
-+#include <freetype/ftsystem.h>
-+#include <freetype/fttypes.h>
-+#include <freetype/ftlist.h>
-+#include <freetype/ftimage.h>
-
-Diff finished.  Mon Nov 14 22:41:57 2022
diff --git a/pkgs/development/lisp-modules-new-obsolete/patches/cl-liballegro-nuklear-missing-dll.patch b/pkgs/development/lisp-modules-new-obsolete/patches/cl-liballegro-nuklear-missing-dll.patch
deleted file mode 100644
index b5bde523eba9..000000000000
--- a/pkgs/development/lisp-modules-new-obsolete/patches/cl-liballegro-nuklear-missing-dll.patch
+++ /dev/null
@@ -1,17 +0,0 @@
-Fix system not loading due to:
-
-Unhandled CFFI:LOAD-FOREIGN-LIBRARY-ERROR 
-  Unable to load foreign library (LIBALLEGRO-NUKLEAR).
-  Error opening shared object "/build/source/src/liballegro_nuklear.so":
-  /build/source/src/liballegro_nuklear.so: undefined symbol: al_draw_ellipse.
---- a/cl-liballegro-nuklear.asd
-+++ b/cl-liballegro-nuklear.asd
-@@ -12,7 +12,7 @@
-   :description "CFFI wrapper for the Nuklear IM GUI library with liballegro backend, to be used with cl-liballegro."
-   :author "Andrew Kravchuk <awkravchuk@gmail.com>"
-   :license "MIT"
--  :depends-on (:cffi :cffi-libffi :trivial-features)
-+  :depends-on (:cl-liballegro :cffi :cffi-libffi :trivial-features)
-   :pathname "src"
-   :serial t
-   :components ((:makefile "Makefile")
diff --git a/pkgs/development/lisp-modules-new-obsolete/patches/cl-sat.glucose-binary-from-PATH-if-present.patch b/pkgs/development/lisp-modules-new-obsolete/patches/cl-sat.glucose-binary-from-PATH-if-present.patch
deleted file mode 100644
index 6a0d2d07666b..000000000000
--- a/pkgs/development/lisp-modules-new-obsolete/patches/cl-sat.glucose-binary-from-PATH-if-present.patch
+++ /dev/null
@@ -1,27 +0,0 @@
-From 2040fcab5a7be2f28add46a1412bef62ac5ccf11 Mon Sep 17 00:00:00 2001
-From: Maximilian Marx <mmarx@wh2.tu-dresden.de>
-Date: Thu, 24 Nov 2022 20:00:33 +0100
-Subject: [PATCH] Use glucose binary from PATH if present
-
----
- src/package.lisp | 4 +++-
- 1 file changed, 3 insertions(+), 1 deletion(-)
-
-diff --git a/src/package.lisp b/src/package.lisp
-index b6e26ac..bdb2581 100644
---- a/src/package.lisp
-+++ b/src/package.lisp
-@@ -13,7 +13,9 @@
- (defvar *glucose-home* (asdf:system-relative-pathname :cl-sat.glucose "glucose-syrup/"))
- 
- (defun glucose-binary (&optional (*glucose-home* *glucose-home*))
--  (merge-pathnames "simp/glucose_static" *glucose-home*))
-+  (if (trivial-package-manager:which "glucose")
-+      "glucose"
-+      (merge-pathnames "simp/glucose_static" *glucose-home*)))
- 
- (defmethod solve ((input pathname) (solver (eql :glucose)) &rest options &key debug &allow-other-keys)
-   (remf options :debug)
--- 
-2.36.2
-
diff --git a/pkgs/development/lisp-modules-new-obsolete/patches/magicl-dont-build-fortran-twice.patch b/pkgs/development/lisp-modules-new-obsolete/patches/magicl-dont-build-fortran-twice.patch
deleted file mode 100644
index f63b6949b1fd..000000000000
--- a/pkgs/development/lisp-modules-new-obsolete/patches/magicl-dont-build-fortran-twice.patch
+++ /dev/null
@@ -1,21 +0,0 @@
---- a/magicl.asd
-+++ b/magicl.asd
-@@ -143,6 +143,7 @@
-            (shared-object (make-pathname :type #+darwin "dylib" #-darwin "so"
-                                          :name "libexpokit"
-                                          :defaults fortran-file)))
-+      (unless (probe-file (nn shared-object))
-       (uiop:run-program
-        (list "gfortran" "-fPIC" "-std=legacy"
-              "-c"
-@@ -155,7 +156,7 @@
-              (nn object-file)
-              #+darwin "-lblas"
-              #+darwin "-llapack"))
--      (delete-file object-file))))
-+      (delete-file object-file)))))
- 
- 
- (asdf:defsystem #:magicl/ext-expokit
-
-Diff finished.  Mon Oct 10 22:03:54 2022
diff --git a/pkgs/development/lisp-modules-new-obsolete/patches/swank-pure-paths.patch b/pkgs/development/lisp-modules-new-obsolete/patches/swank-pure-paths.patch
deleted file mode 100644
index 0b9a40ab0e2b..000000000000
--- a/pkgs/development/lisp-modules-new-obsolete/patches/swank-pure-paths.patch
+++ /dev/null
@@ -1,28 +0,0 @@
-Prevent swank from attempting write into storeDir
---- a/swank-loader.lisp
-+++ b/swank-loader.lisp
-@@ -162,7 +162,7 @@
-                  ,(unique-dir-name)))
-    (user-homedir-pathname)))
- 
--(defvar *fasl-directory* (default-fasl-dir)
-+(defvar *fasl-directory* #P"@out@/fasl/"
-   "The directory where fasl files should be placed.")
- 
- (defun binary-pathname (src-pathname binary-dir)
-@@ -284,12 +284,7 @@
-                  (contrib-dir src-dir))))
- 
- (defun delete-stale-contrib-fasl-files (swank-files contrib-files fasl-dir)
--  (let ((newest (reduce #'max (mapcar #'file-write-date swank-files))))
--    (dolist (src contrib-files)
--      (let ((fasl (binary-pathname src fasl-dir)))
--        (when (and (probe-file fasl)
--                   (<= (file-write-date fasl) newest))
--          (delete-file fasl))))))
-+  (declare (ignore swank-files contrib-files fasl-dir)))
- 
- (defun compile-contribs (&key (src-dir (contrib-dir *source-directory*))
-                            (fasl-dir (contrib-dir *fasl-directory*))
-
-Diff finished.  Sat Jan 22 23:57:27 2022
\ No newline at end of file
diff --git a/pkgs/development/lisp-modules-new-obsolete/ql-import.lisp b/pkgs/development/lisp-modules-new-obsolete/ql-import.lisp
deleted file mode 100644
index 630090f91d14..000000000000
--- a/pkgs/development/lisp-modules-new-obsolete/ql-import.lisp
+++ /dev/null
@@ -1,6 +0,0 @@
-
-(require :asdf)
-(pushnew (truename "./import") asdf:*central-registry*)
-(asdf:load-system :org.lispbuilds.nix)
-(load "./import/main.lisp")
-(org.lispbuilds.nix/main::main)
diff --git a/pkgs/development/lisp-modules-new-obsolete/ql.nix b/pkgs/development/lisp-modules-new-obsolete/ql.nix
deleted file mode 100644
index da76d8dd5775..000000000000
--- a/pkgs/development/lisp-modules-new-obsolete/ql.nix
+++ /dev/null
@@ -1,239 +0,0 @@
-{ pkgs, build-asdf-system, fixup ? pkgs.lib.id, ... }:
-
-with pkgs;
-with lib;
-with lib.lists;
-with lib.strings;
-
-let
-
-  # FIXME: automatically add nativeLibs based on conditions signalled
-
-  # Try to keep this list sorted
-  extras = {
-    cffi-libffi = pkg: {
-      nativeBuildInputs = [ libffi ];
-      nativeLibs = [ libffi ];
-    };
-    "cl+ssl" = pkg: {
-      nativeLibs = [ openssl_1_1 ];
-    };
-    "cl-ana.hdf-cffi" = pkg: {
-      nativeBuildInputs = [ pkgs.hdf5 ];
-      nativeLibs = [ pkgs.hdf5 ];
-      NIX_LDFLAGS = [ "-lhdf5" ];
-    };
-    cl-async-ssl = pkg: {
-      nativeLibs = [ openssl_1_1 ];
-    };
-    cl-cffi-gtk-glib = pkg: {
-      nativeLibs = [ glib ];
-    };
-    cl-cffi-gtk-cairo = pkg: {
-      nativeLibs = [ cairo ];
-    };
-    cl-cffi-gtk-gdk = pkg: {
-      nativeLibs = [ gtk3 ];
-    };
-    cl-cffi-gtk-gdk-pixbuf = pkg: {
-      nativeLibs = [ gdk-pixbuf ];
-    };
-    cl-cffi-gtk-pango = pkg: {
-      nativeLibs = [ pango ];
-    };
-    cl-cairo2 = pkg: {
-      nativeLibs = [ cairo ];
-    };
-    cl-cairo2-xlib = pkg: {
-      nativeLibs = [ gtk2-x11 ];
-    };
-    cl-devil = pkg: {
-      nativeBuildInputs = [ pkgs.libdevil ];
-      nativeLibs = [ pkgs.libdevil ];
-    };
-    cl-freeimage = pkg: {
-      nativeLibs = [ freeimage ];
-    };
-    cl-freetype2 = pkg: {
-      nativeLibs = [ freetype ];
-      nativeBuildInputs = [ freetype ];
-      patches = [ ./patches/cl-freetype2-fix-grovel-includes.patch ];
-    };
-    cl-glfw = pkg: {
-      nativeLibs = [ glfw ];
-    };
-    cl-glfw-opengl-core = pkg: {
-      nativeLibs = [ libGL ];
-    };
-    cl-glfw3 = pkg: {
-      nativeLibs = [ glfw ];
-    };
-    cl-glu = pkg: {
-      nativeLibs = [ libGLU ];
-    };
-    cl-glut = pkg: {
-      nativeLibs = [ freeglut ];
-    };
-    cl-gobject-introspection = pkg: {
-      nativeLibs = [ glib gobject-introspection ];
-    };
-    cl-gtk2-gdk = pkg: {
-      nativeLibs = [ gtk2-x11 ];
-    };
-    cl-gtk2-glib = pkg: {
-      nativeLibs = [ glib ];
-    };
-    cl-gtk2-pango = pkg: {
-      nativeLibs = [ pango ];
-    };
-    cl-liballegro = pkg: {
-      # build doesnt fail without this, but fails on runtime
-      # weird...
-      nativeLibs = [ allegro5 ];
-    };
-    cl-libuv = pkg: {
-      nativeBuildInputs = [ libuv ];
-      nativeLibs = [ libuv ];
-    };
-    cl-libxml2 = pkg: {
-      nativeLibs = [ pkgs.libxml2 ];
-    };
-    cl-libyaml = pkg: {
-      nativeLibs = [ pkgs.libyaml ];
-    };
-    cl-mysql = pkg: {
-      nativeLibs = [ mariadb.client ];
-    };
-    cl-ode = pkg: {
-      nativeLibs = let
-        ode' = ode.overrideAttrs (o: {
-          configureFlags = [
-            "--enable-shared"
-            "--enable-double-precision"
-          ];
-        });
-      in [ ode' ];
-    };
-    cl-opengl = pkg: {
-      nativeLibs = [ libGL ];
-    };
-    cl-pango = pkg: {
-      nativeLibs = [ pango ];
-    };
-    cl-rabbit = pkg: {
-      nativeBuildInputs = [ rabbitmq-c ];
-      nativeLibs = [ rabbitmq-c ];
-    };
-    cl-rdkafka = pkg: {
-      nativeBuildInputs = [ rdkafka ];
-      nativeLibs = [ rdkafka ];
-    };
-    cl-readline = pkg: {
-      nativeLibs = [ pkgs.readline ];
-    };
-    cl-rsvg2 = pkg: {
-      nativeLibs = [ librsvg ];
-    };
-    "cl-sat.glucose" = pkg: {
-      propagatedBuildInputs = [ pkgs.glucose ];
-      patches = [ ./patches/cl-sat.glucose-binary-from-PATH-if-present.patch ];
-
-    };
-    "cl-sat.minisat" = pkg: {
-      propagatedBuildInputs = [ pkgs.minisat ];
-    };
-    cl-webkit2 = pkg: {
-      nativeLibs = [ webkitgtk ];
-    };
-    classimp = pkg: {
-      nativeLibs = [ assimp ];
-      meta.broken = true; # Requires assimp ≤ 5.0.x.
-    };
-    clsql-postgresql = pkg: {
-      nativeLibs = [ postgresql.lib ];
-    };
-    clsql-sqlite3 = pkg: {
-      nativeLibs = [ sqlite ];
-    };
-    dbd-mysql = pkg: {
-      nativeLibs = [ mariadb.client ];
-    };
-    gsll = pkg: {
-      nativeBuildInputs = [ pkgs.gsl ];
-      nativeLibs = [ pkgs.gsl ];
-    };
-    iolib = pkg: {
-      nativeBuildInputs = [ libfixposix ];
-      nativeLibs = [ libfixposix ];
-      systems = [ "iolib" "iolib/os" "iolib/pathnames" ];
-    };
-    lev = pkg: {
-      nativeLibs = [ libev ];
-    };
-    lispbuilder-sdl-cffi = pkg: {
-      nativeLibs = [ SDL ];
-    };
-    lla = pkg: {
-      nativeLibs = [ openblas ];
-    };
-    mssql = pkg: {
-      nativeLibs = [ freetds ];
-    };
-    osicat = pkg: {
-      LD_LIBRARY_PATH = "${pkg}/posix/";
-    };
-    png = pkg: {
-      nativeBuildInputs = [ pkgs.libpng ];
-      nativeLibs = [ pkgs.libpng ];
-    };
-    pzmq = pkg: {
-      nativeBuildInputs = [ pkgs.zeromq ];
-      nativeLibs = [ pkgs.zeromq ];
-    };
-    pzmq-compat = pkg: {
-      nativeBuildInputs = [ pkgs.zeromq ];
-      nativeLibs = [ pkgs.zeromq ];
-    };
-    pzmq-examples = pkg: {
-      nativeBuildInputs = [ pkgs.zeromq ];
-      nativeLibs = [ pkgs.zeromq ];
-    };
-    pzmq-test = pkg: {
-      nativeBuildInputs = [ pkgs.zeromq ];
-      nativeLibs = [ pkgs.zeromq ];
-    };
-    sdl2 = pkg: {
-      nativeLibs = [ SDL2 ];
-    };
-    sqlite = pkg: {
-      nativeLibs = [ sqlite ];
-    };
-    trivial-package-manager = pkg: {
-      propagatedBuildInputs = [ pkgs.which ];
-    };
-    trivial-ssh-libssh2 = pkg: {
-      nativeLibs = [ libssh2 ];
-    };
-    zmq = pkg: {
-      nativeBuildInputs = [ pkgs.zeromq ];
-      nativeLibs = [ pkgs.zeromq ];
-    };
-  };
-
-  qlpkgs =
-    lib.optionalAttrs (builtins.pathExists ./imported.nix)
-      (import ./imported.nix { inherit (pkgs) runCommand fetchzip; pkgs = builtQlpkgs; });
-
-  builtQlpkgs = mapAttrs (n: v: build v) qlpkgs;
-
-  build = pkg:
-    let
-      builtPkg = build-asdf-system pkg;
-      withExtras = pkg //
-                   (optionalAttrs
-                     (hasAttr pkg.pname extras)
-                     (extras.${pkg.pname} builtPkg));
-      fixedUp = fixup withExtras;
-    in build-asdf-system fixedUp;
-
-in builtQlpkgs
diff --git a/pkgs/development/lisp-modules-new-obsolete/readme.md b/pkgs/development/lisp-modules-new-obsolete/readme.md
deleted file mode 100644
index d5be7492334e..000000000000
--- a/pkgs/development/lisp-modules-new-obsolete/readme.md
+++ /dev/null
@@ -1,34 +0,0 @@
-# lisp-modules
-
-Utilities for packaging ASDF systems using Nix.
-
-## Quick start
-
-#### Build an ASDF system:
-
-```
-nix-build ./examples/bordeaux-threads.nix
-ls result/src
-```
-
-#### Build an `sbclWithPackages`:
-
-```
-nix-build ./examples/sbcl-with-bt.nix
-result/bin/sbcl
-```
-
-#### Re-import Quicklisp packages:
-
-```
-nix-shell --run 'sbcl --script ql-import.lisp'
-```
-
-#### Test build of packages
-```
-(cd test;  sbcl --script test.lisp ccl)
-```
-
-## Documentation
-
-See `doc` directory.
diff --git a/pkgs/development/lisp-modules-new-obsolete/shell.nix b/pkgs/development/lisp-modules-new-obsolete/shell.nix
deleted file mode 100644
index ecca6a5608d7..000000000000
--- a/pkgs/development/lisp-modules-new-obsolete/shell.nix
+++ /dev/null
@@ -1,7 +0,0 @@
-with import ../../../default.nix {};
-mkShell {
-  nativeBuildInputs = [
-    (lispPackages_new.sbclWithPackages
-      (ps: with ps; [ alexandria str dexador cl-ppcre sqlite arrow-macros jzon ]))
-  ];
-}
diff --git a/pkgs/development/lisp-modules-new-obsolete/test/lispPackagesToTest.txt b/pkgs/development/lisp-modules-new-obsolete/test/lispPackagesToTest.txt
deleted file mode 100644
index 940d3b65f3ee..000000000000
--- a/pkgs/development/lisp-modules-new-obsolete/test/lispPackagesToTest.txt
+++ /dev/null
@@ -1,395 +0,0 @@
-_1am
-_3bmd
-_3bmd-ext-code-blocks
-access
-acclimation
-agutil
-alexandria
-anaphora
-arnesi
-array-operations
-array-utils
-arrows
-asdf
-asdf-package-system
-asdf-system-connections
-babel
-binomial-heap
-binpack
-blackbird
-bordeaux-threads
-buildnode
-buildnode-xhtml
-calispel
-cffi
-cffi-grovel
-cffi-toolchain
-cffi-uffi-compat
-chanl
-check-it
-chipz
-chunga
-circular-streams
-cl-aa
-cl-annot
-cl-anonfun
-cl-ansi-text
-cl-async
-cl-async-base
-cl-async-repl
-cl-async-ssl
-cl-async-util
-cl-base64
-cl-cffi-gtk
-cl-cffi-gtk-cairo
-cl-cffi-gtk-gdk
-cl-cffi-gtk-gdk-pixbuf
-cl-cffi-gtk-gio
-cl-cffi-gtk-glib
-cl-cffi-gtk-gobject
-cl-cffi-gtk-pango
-cl-change-case
-cl-cli
-cl-colors
-cl-colors2
-cl-containers
-cl-cookie
-cl-css
-cl-csv
-cl-cuda
-cl-custom-hash-table
-cl-dbi
-cl-difflib
-cl-digraph
-cl-dot
-cl-emb
-cl-environments
-cl-fad
-cl-form-types
-cl-fuse
-cl-fuse-meta-fs
-cl-fuzz
-cl-geometry
-cl-gobject-introspection
-cl-heap
-cl-hooks
-cl-html-diff
-cl-html-parse
-cl-html5-parser
-cl-interpol
-cl-jpeg
-cl-json
-cl-l10n
-cl-l10n-cldr
-cl-libuv
-cl-locale
-cl-markup
-cl-mustache
-cl-mysql
-cl-num-utils
-cl-paths
-cl-paths-ttf
-cl-pattern
-cl-pdf
-cl-postgres
-cl-postgres_plus_local-time
-cl-postgres_slash_tests
-cl-ppcre
-cl-ppcre-template
-cl-ppcre-test
-cl-ppcre-unicode
-cl-prevalence
-cl-protobufs
-cl-qprint
-cl-qrencode
-cl-reexport
-cl-shellwords
-cl-slice
-cl-smt-lib
-cl-smtp
-cl-speedy-queue
-cl-store
-cl-svg
-cl-syntax
-cl-syntax-annot
-cl-syntax-anonfun
-cl-syntax-markup
-cl-syslog
-cl-test-more
-cl-typesetting
-cl-unicode
-cl-unification
-cl-utilities
-cl-vectors
-cl-webkit2
-cl-who
-cl-xmlspam
-cl_plus_ssl
-clack
-clack-socket
-classowary
-clfswm
-closer-mop
-closure-common
-closure-html
-clsql
-clsql-postgresql
-clsql-postgresql-socket
-clsql-sqlite3
-clsql-uffi
-clss
-cluffer
-clump
-clump-2-3-tree
-clump-binary-tree
-clunit
-clunit2
-clx
-clx-truetype
-collectors
-colorize
-command-line-arguments
-css-lite
-css-selectors
-css-selectors-simple-tree
-css-selectors-stp
-cxml
-cxml-stp
-cxml_slash_test
-data-table
-dbd-mysql
-dbd-postgres
-dbd-sqlite3
-dbi
-dbi-test
-dbus
-defclass-std
-dexador
-dissect
-djula
-do-urlencode
-documentation-utils
-drakma
-eager-future2
-enchant
-esrap
-esrap-peg
-external-program
-fare-csv
-fare-mop
-fare-quasiquote
-fare-quasiquote-extras
-fare-quasiquote-optima
-fare-quasiquote-readtable
-fare-utils
-fast-http
-fast-io
-fiasco
-file-attributes
-fiveam
-flexi-streams
-float-features
-flow
-fn
-form-fiddle
-fset
-generic-cl
-generic-cl_dot_arithmetic
-generic-cl_dot_collector
-generic-cl_dot_comparison
-generic-cl_dot_container
-generic-cl_dot_internal
-generic-cl_dot_iterator
-generic-cl_dot_lazy-seq
-generic-cl_dot_map
-generic-cl_dot_math
-generic-cl_dot_object
-generic-cl_dot_sequence
-generic-cl_dot_set
-gettext
-global-vars
-glsl-docs
-glsl-spec
-glsl-symbols
-heap
-html-encode
-http-body
-hu_dot_dwim_dot_asdf
-hu_dot_dwim_dot_common
-hu_dot_dwim_dot_common-lisp
-hu_dot_dwim_dot_def
-hu_dot_dwim_dot_def_plus_swank
-hu_dot_dwim_dot_defclass-star
-hu_dot_dwim_dot_stefil
-hu_dot_dwim_dot_stefil_plus_hu_dot_dwim_dot_def
-hu_dot_dwim_dot_stefil_plus_hu_dot_dwim_dot_def_plus_swank
-hu_dot_dwim_dot_stefil_plus_swank
-hunchensocket
-hunchentoot
-idna
-ieee-floats
-inferior-shell
-introspect-environment
-iolib
-iolib_dot_asdf
-iolib_dot_base
-iolib_dot_common-lisp
-iolib_dot_conf
-ironclad
-iterate
-jonathan
-jpl-queues
-jpl-util
-jsown
-kmrcl
-lack
-lack-component
-lack-middleware-backtrace
-lack-util
-lambda-fiddle
-legit
-let-plus
-lev
-lfarm-client
-lfarm-common
-lfarm-server
-lfarm-ssl
-lift
-lisp-binary
-lisp-namespace
-lisp-unit
-lisp-unit2
-lla
-local-time
-log4cl
-lparallel
-lquery
-marshal
-md5
-metabang-bind
-metatilities-base
-mgl
-mgl-mat
-mgl-pax
-minheap
-misc-extensions
-mk-string-metrics
-mmap
-moptilities
-more-conditions
-mt19937
-named-readtables
-nbd
-net-telent-date
-net_dot_didierverna_dot_asdf-flv
-nibbles
-nyxt
-optima
-osicat
-parachute
-parenscript
-parse-declarations-1_dot_0
-parse-float
-parse-number
-parseq
-parser-combinators
-parser_dot_common-rules
-pcall
-pcall-queue
-physical-quantities
-plump
-postmodern
-proc-parse
-prove
-prove-asdf
-ptester
-puri
-pythonic-string-reader
-quasiquote-2_dot_0
-query-fs
-quri
-rfc2388
-rove
-rt
-s-sql
-s-sql_slash_tests
-s-sysdeps
-s-xml
-salza2
-serapeum
-simple-date
-simple-date-time
-simple-date_slash_postgres-glue
-simple-inferiors
-simple-tasks
-slynk
-smart-buffer
-smug
-spinneret
-split-sequence
-sqlite
-static-dispatch
-static-vectors
-stefil
-str
-string-case
-stumpwm
-swank
-swap-bytes
-sycamore
-symbol-munger
-trees
-trivia
-trivia_dot_balland2006
-trivia_dot_level0
-trivia_dot_level1
-trivia_dot_level2
-trivia_dot_quasiquote
-trivia_dot_trivial
-trivial-arguments
-trivial-backtrace
-trivial-clipboard
-trivial-cltl2
-trivial-features
-trivial-file-size
-trivial-garbage
-trivial-gray-streams
-trivial-indent
-trivial-macroexpand-all
-trivial-main-thread
-trivial-mimes
-trivial-package-local-nicknames
-trivial-shell
-trivial-types
-trivial-utf-8
-trivial-with-current-source-form
-type-i
-uax-15
-uffi
-uiop
-unit-test
-unix-options
-unix-opts
-usocket
-usocket-server
-utilities_dot_print-items
-utilities_dot_print-tree
-uuid
-varjo
-vas-string-metrics
-vecto
-vom
-wild-package-inferred-system
-woo
-wookie
-xembed
-xkeyboard
-xml_dot_location
-xmls
-xpath
-xpath_slash_test
-xsubseq
-yacc
-yason
-zpb-ttf
-zpng
diff --git a/pkgs/development/lisp-modules-new-obsolete/test/test.lisp b/pkgs/development/lisp-modules-new-obsolete/test/test.lisp
deleted file mode 100755
index c9b5dc938320..000000000000
--- a/pkgs/development/lisp-modules-new-obsolete/test/test.lisp
+++ /dev/null
@@ -1,94 +0,0 @@
-#!/usr/bin/env -S sbcl --script
-
-(require :uiop)
-
-;; prevent glibc hell
-(setf (uiop:getenv "LD_LIBRARY_PATH") "")
-
-(defparameter packages (uiop:read-file-lines "./lispPackagesToTest.txt"))
-
-(defparameter lisp (or (cadr sb-ext:*posix-argv*) "sbcl"))
-
-(defparameter nix-build "nix-build -E 'with import ../../../../default.nix {}; lispPackages_new.~aPackages.~a'")
-
-(defparameter cpu-count
-  (length
-   (remove-if-not
-    (lambda (line)
-      (uiop:string-prefix-p "processor" line))
-    (uiop:read-file-lines "/proc/cpuinfo"))))
-
-(defparameter sem (sb-thread:make-semaphore :count cpu-count))
-
-(defparameter statuses (make-hash-table :synchronized t))
-
-(defparameter log-lock (sb-thread:make-mutex))
-
-(format *error-output* "Testing ~a on ~a cores~%" lisp cpu-count)
-
-(defun clear-line ()
-  (write-char #\Return *error-output*)
-  (write-char #\Escape *error-output*)
-  (write-char #\[ *error-output*)
-  (write-char #\K *error-output*))
-
-(declaim (type fixnum errors))
-(defglobal errors 0)
-
-(defmacro when-let (bindings &rest body)
-  (reduce
-   (lambda (expansion form)
-     (destructuring-bind (var test) form
-       (let ((testsym (gensym (symbol-name var))))
-         `(let ((,testsym ,test))
-            (when ,testsym
-              (let ((,var ,testsym))
-                ,expansion))))))
-   (reverse bindings)
-   :initial-value `(progn ,@body)))
-
-(dolist (pkg packages)
-  (sb-thread:wait-on-semaphore sem)
-  (sb-thread:make-thread
-   (lambda ()
-     (handler-case
-         (unwind-protect
-              (multiple-value-bind (out err code)
-                  (uiop:run-program
-                   (format nil nix-build lisp pkg)
-                   :error-output '(:string :stripped t)
-                   :ignore-error-status t)
-                (declare (ignorable err))
-                (setf (gethash pkg statuses) code)
-                (when-let ((pos (search "LOAD-FOREIGN-LIBRARY-ERROR" err :test #'string=))
-                           (lines (uiop:split-string (subseq err pos) :separator '(#\Newline))))
-                  (setf (gethash pkg statuses)
-                        (fourth lines)))
-                (sb-thread:with-mutex (log-lock)
-                  (clear-line)
-                  (format *error-output* "[~a/~a] ~[OK~:;ERROR~] ~a~[~:;~%~]"
-                          (hash-table-count statuses)
-                          (length packages)
-                          code
-                          pkg
-                          code)
-                  (force-output *error-output*))
-                (unless (zerop code)
-                  (sb-ext:atomic-incf errors)))
-           (sb-thread:signal-semaphore sem))
-       (error (e)
-         (format t "~a~%" e)
-         (sb-ext:quit :recklessly-p t :unix-status 1))))))
-
-(sb-thread:wait-on-semaphore sem :n cpu-count)
-
-(format t "~%Done (~a/~a)."
-        (- (length packages) errors)
-        (length packages))
-
-(when (plusp errors)
-  (format t "~%~%~a Errors: " errors)
-  (maphash (lambda (k v)
-             (unless (and (numberp v) (zerop v))
-               (format t "~%  ~a: ~a" k v)))
-           statuses))
diff --git a/pkgs/development/lisp-modules-obsolete/README.txt b/pkgs/development/lisp-modules-obsolete/README.txt
deleted file mode 100644
index c16d02594e8f..000000000000
--- a/pkgs/development/lisp-modules-obsolete/README.txt
+++ /dev/null
@@ -1,30 +0,0 @@
-Want to add a package?  There are 3 simple steps!
-1. Add the needed system names to quicklisp-to-nix-systems.txt.
-2. cd <path to quicklisp-to-nix-systems.txt> ; nix-shell --pure --run 'quicklisp-to-nix .'
-  You might want to specify also the --cacheSystemInfoDir and --cacheFaslDir
-  parameters to preserve some data between runs. For example, it is very
-  useful when you add new packages with native dependencies and fail to
-  specify the native dependencies correctly the first time.
-  (Might be nice to ensure the cache directories exist)
-3. Add native libraries and whatever else is needed to quicklisp-to-nix-overrides.nix.
-   If libraries are needed during package analysis then add them to shell.nix, too.
-4. Sometimes there are problems with loading implementation-provided systems.
-  In this case you might need to add more systems in the implementation's (so
-  SBCL's) entry into *implementation-systems* in quicklisp-to-nix/system-info.lisp
-
-To update to a more recent quicklisp dist modify
-lispPackages.quicklisp to have a more recent distinfo.
-
-quicklisp-to-nix-system-info is responsible for installing a quicklisp
-package into an isolated environment and figuring out which packages
-are required by that system.  It also extracts other information that
-is readily available once the system is loaded.  The information
-produced by this program is fed into quicklisp-to-nix.  You usually
-don't need to run this program unless you're trying to understand why
-quicklisp-to-nix failed to handle a system.  The technique used by
-quicklisp-to-nix-system-info is described in its source.
-
-quicklisp-to-nix is responsible for reading
-quicklisp-to-nix-systems.txt, running quicklisp-to-nix-system-info,
-and generating the nix packages associated with the closure of
-quicklisp systems.
diff --git a/pkgs/development/lisp-modules-obsolete/asdf/2.26.nix b/pkgs/development/lisp-modules-obsolete/asdf/2.26.nix
deleted file mode 100644
index dbf81bb76a5f..000000000000
--- a/pkgs/development/lisp-modules-obsolete/asdf/2.26.nix
+++ /dev/null
@@ -1,38 +0,0 @@
-{ lib, stdenv, fetchurl, texinfo, texLive, perl }:
-
-stdenv.mkDerivation rec {
-  pname = "asdf";
-  version = "2.26";
-
-  src = fetchurl {
-    url = "http://common-lisp.net/project/asdf/archives/asdf-${version}.tar.gz";
-    sha256 = "sha256-tuUuIlZcS+a0izXeJl3Ckp+/PYAWkZ0+Cw7blwkh9+M=";
-  };
-
-  strictDeps = true;
-  nativeBuildInputs = [
-    texinfo
-    texLive
-    perl
-  ];
-
-  buildPhase = ''
-    make asdf.lisp
-    mkdir build
-    ln -s ../asdf.lisp build
-  '';
-  installPhase = ''
-    mkdir -p "$out"/lib/common-lisp/asdf/
-    mkdir -p "$out"/share/doc/asdf/
-    cp -r ./* "$out"/lib/common-lisp/asdf/
-    cp -r doc/* "$out"/share/doc/asdf/
-    ln -s  "$out"/lib/common-lisp/{asdf/uiop,uiop}
-  '';
-
-  meta = with lib; {
-    description = "Standard software-system definition library for Common Lisp";
-    license = licenses.mit;
-    maintainers = with maintainers; [ raskin ];
-    platforms = platforms.linux;
-  };
-}
diff --git a/pkgs/development/lisp-modules-obsolete/asdf/3.1.nix b/pkgs/development/lisp-modules-obsolete/asdf/3.1.nix
deleted file mode 100644
index cda5d46131a0..000000000000
--- a/pkgs/development/lisp-modules-obsolete/asdf/3.1.nix
+++ /dev/null
@@ -1,37 +0,0 @@
-{ lib, stdenv, fetchurl, texinfo, texLive, perl }:
-
-stdenv.mkDerivation rec {
-  pname = "asdf";
-  version = "3.1.7";
-
-  src = fetchurl {
-    url = "http://common-lisp.net/project/asdf/archives/asdf-${version}.tar.gz";
-    sha256 = "sha256-+P+FLM1mr2KRdj7bfhWq4ync86bJS/uE0Jm/E/e4HL0=";
-  };
-
-  strictDeps = true;
-  nativeBuildInputs = [
-    texinfo
-    texLive
-    perl
-  ];
-
-  buildPhase = ''
-    make build/asdf.lisp
-    make -C doc asdf.info asdf.html
-  '';
-  installPhase = ''
-    mkdir -p "$out"/lib/common-lisp/asdf/
-    mkdir -p "$out"/share/doc/asdf/
-    cp -r ./* "$out"/lib/common-lisp/asdf/
-    cp -r doc/* "$out"/share/doc/asdf/
-    ln -s  "$out"/lib/common-lisp/{asdf/uiop,uiop}
-  '';
-
-  meta = with lib; {
-    description = "Standard software-system definition library for Common Lisp";
-    license = licenses.mit;
-    maintainers = with maintainers; [ raskin ];
-    platforms = platforms.unix;
-  };
-}
diff --git a/pkgs/development/lisp-modules-obsolete/asdf/default.nix b/pkgs/development/lisp-modules-obsolete/asdf/default.nix
deleted file mode 100644
index 78d49a917898..000000000000
--- a/pkgs/development/lisp-modules-obsolete/asdf/default.nix
+++ /dev/null
@@ -1,37 +0,0 @@
-{ lib, stdenv, fetchurl, texinfo, texLive, perl }:
-
-stdenv.mkDerivation rec {
-  pname = "asdf";
-  version = "3.3.4";
-
-  src = fetchurl {
-    url = "http://common-lisp.net/project/asdf/archives/asdf-${version}.tar.gz";
-    sha256 = "sha256-/k7cmN0ymZUgpP4K+IWfhq85TkzfPjTR4QdUgV9n1x4=";
-  };
-
-  strictDeps = true;
-  nativeBuildInputs = [
-    texinfo
-    texLive
-    perl
-  ];
-
-  buildPhase = ''
-    make build/asdf.lisp
-    make -C doc asdf.info asdf.html
-  '';
-  installPhase = ''
-    mkdir -p "$out"/lib/common-lisp/asdf/
-    mkdir -p "$out"/share/doc/asdf/
-    cp -r ./* "$out"/lib/common-lisp/asdf/
-    cp -r doc/* "$out"/share/doc/asdf/
-    ln -s  "$out"/lib/common-lisp/{asdf/uiop,uiop}
-  '';
-
-  meta = with lib; {
-    description = "Standard software-system definition library for Common Lisp";
-    license = licenses.mit;
-    maintainers = with maintainers; [ raskin ];
-    platforms = platforms.unix;
-  };
-}
diff --git a/pkgs/development/lisp-modules-obsolete/clwrapper/build-with-lisp.sh b/pkgs/development/lisp-modules-obsolete/clwrapper/build-with-lisp.sh
deleted file mode 100755
index 13965f14c5e2..000000000000
--- a/pkgs/development/lisp-modules-obsolete/clwrapper/build-with-lisp.sh
+++ /dev/null
@@ -1,67 +0,0 @@
-#! /bin/sh
-# Part of NixPkgs package collection
-# This script can be used at your option under the same license as NixPkgs or
-# under MIT/X11 license
-
-lisp="$1"
-systems="$2"
-target="$3"
-code="$4"
-
-NIX_LISP_SKIP_CODE=1 NIX_LISP_COMMAND="$lisp" source "$(dirname "$0")/cl-wrapper.sh"
-
-NIX_LISP_BUILD_CODE=
-
-case "$NIX_LISP" in
-        sbcl)
-                NIX_LISP_BUILD_CODE="(progn
-                  (let*
-                    ((old-fn (symbol-function 'sb-alien::dlopen-or-lose )))
-                    (sb-ext:with-unlocked-packages (:sb-sys :sb-alien)
-                      (defun sb-alien::dlopen-or-lose (&rest args)
-                        (or
-                          (ignore-errors (progn (apply old-fn args)))
-                          (and
-                            args
-                            (loop
-                              with try = nil
-                              with obj = (first args)
-                              with original-namestring = (sb-alien::shared-object-namestring obj)
-                              for path in (list $(echo "$NIX_LISP_LD_LIBRARY_PATH" | sed -e 's/:/" "/g; s/^/"/; s/$/"/'))
-                              for target := (format nil \"~a/~a\" path original-namestring)
-                              when (ignore-errors
-                                     (progn
-                                       (setf (sb-alien::shared-object-namestring obj) target)
-                                       (setf try (apply old-fn args))
-                                           t)) do
-                                (progn  (return try))
-                                finally (progn (setf (sb-alien::shared-object-namestring obj) original-namestring)
-                                  (return (apply old-fn args)))
-                              )
-                             )
-                          )
-                        )
-                      )
-                    )
-                  (sb-ext:save-lisp-and-die \"$target\"
-                  :toplevel (lambda ()
-                    (setf common-lisp:*standard-input* (sb-sys::make-fd-stream 0 :input t :buffering :line))
-                    (setf common-lisp:*standard-output* (sb-sys::make-fd-stream 1 :output t :buffering :line))
-                    (setf uiop/image:*command-line-arguments* (cdr sb-ext:*posix-argv*))
-                    $code)
-                    :executable t :save-runtime-options t :purify t))"
-                systems=":sb-posix $systems"
-                ;;
-        ecl)
-                NIX_LISP_BUILD_CODE="()"
-                ;;
-        clisp)
-                NIX_LISP_BUILD_CODE="(ext:saveinitmem \"$target\" :norc t :init-function (lambda () $code (ext:bye)) :script nil :executable 0)"
-                ;;
-esac
-
-"$lisp" \
-  "$NIX_LISP_EXEC_CODE" "(load \"$NIX_LISP_ASDF/lib/common-lisp/asdf/build/asdf.lisp\")" \
-  "$NIX_LISP_EXEC_CODE" "(mapcar 'asdf:load-system (list $systems))" \
-  "$NIX_LISP_EXEC_CODE" "$NIX_LISP_BUILD_CODE" \
-  "$NIX_LISP_EXEC_CODE" "(quit)"
diff --git a/pkgs/development/lisp-modules-obsolete/clwrapper/cl-wrapper.sh b/pkgs/development/lisp-modules-obsolete/clwrapper/cl-wrapper.sh
deleted file mode 100755
index d6fec46b449e..000000000000
--- a/pkgs/development/lisp-modules-obsolete/clwrapper/cl-wrapper.sh
+++ /dev/null
@@ -1,134 +0,0 @@
-#!@bash@/bin/bash
-# Part of NixPkgs package collection
-# This script can be used at your option under the same license as NixPkgs or
-# under MIT/X11 license
-
-eval "$NIX_LISP_PREHOOK"
-
-NIX_LISP_COMMAND="$1"
-shift
-
-if [ -z "$NIX_LISP" ]; then
-    while [ -h "${NIX_LISP_COMMAND}" ]; do
-        NIX_LISP_COMMAND="$(readlink -n "${NIX_LISP_COMMAND}")"
-    done
-    NIX_LISP="${NIX_LISP_COMMAND##*/}"
-fi
-
-export NIX_LISP NIX_LISP_LOAD_FILE NIX_LISP_EXEC_CODE NIX_LISP_COMMAND NIX_LISP_FINAL_PARAMETERS
-
-test -n "$NIX_LISP_LD_LIBRARY_PATH" &&
-        export LD_LIBRARY_PATH="$LD_LIBRARY_PATH${LD_LIBRARY_PATH:+:}$NIX_LISP_LD_LIBRARY_PATH"
-
-declare -a NIX_LISP_FINAL_PARAMETERS;
-
-case "$NIX_LISP" in
-        sbcl)
-                NIX_LISP_LOAD_FILE="--load"
-                NIX_LISP_EXEC_CODE="--eval"
-                NIX_LISP_QUIT="(quit)"
-                NIX_LISP_NODEBUG='--non-interactive'
-                NIX_LISP_FINAL_PARAMETERS=
-                NIX_LISP_FASL_TYPE="fasl"
-                ;;
-        ecl)
-                NIX_LISP_LOAD_FILE="-load"
-                NIX_LISP_EXEC_CODE="-eval"
-                NIX_LISP_QUIT="(quit)"
-                NIX_LISP_NODEBUG='--nodebug'
-                NIX_LISP_FINAL_PARAMETERS=
-                NIX_LISP_FASL_TYPE="fas"
-                ;;
-        clisp)
-                NIX_LISP_LOAD_FILE="-c -l"
-                NIX_LISP_EXEC_CODE="-x"
-                NIX_LISP_QUIT="(quit)"
-                NIX_LISP_NODEBUG='-on-error exit'
-                NIX_LISP_FINAL_PARAMETERS="-repl"
-                NIX_LISP_FASL_TYPE="fas"
-                ;;
-        lx86cl64)
-                NIX_LISP_LOAD_FILE="-l"
-                NIX_LISP_EXEC_CODE="-e"
-                NIX_LISP_QUIT="(quit)"
-                NIX_LISP_NODEBUG='-b'
-                NIX_LISP_FINAL_PARAMETERS=
-                NIX_LISP_FASL_TYPE="lx64fsl"
-                ;;
-        lx86cl)
-                NIX_LISP_LOAD_FILE="-l"
-                NIX_LISP_EXEC_CODE="-e"
-                NIX_LISP_QUIT="(quit)"
-                NIX_LISP_NODEBUG='-b'
-                NIX_LISP_FINAL_PARAMETERS=
-                NIX_LISP_FASL_TYPE="lx32fsl"
-                ;;
-        abcl)
-                NIX_LISP_LOAD_FILE="--load"
-                NIX_LISP_EXEC_CODE="--eval"
-                NIX_LISP_QUIT="(quit)"
-                NIX_LISP_NODEBUG=''
-                NIX_LISP_FINAL_PARAMETERS=
-                NIX_LISP_FASL_TYPE="abcl"
-                ;;
-esac
-
-NIX_LISP_ASDF_REGISTRY_CODE="
-  (progn
-    (setf asdf:*source-registry-parameter*
-      '(:source-registry
-        $(for p in $NIX_LISP_ASDF_PATHS; do
-            echo "(:tree \"$p\")"
-          done)
-        :inherit-configuration))
-    (asdf:initialize-source-registry)
-    )
-"
-
-NIX_LISP_ASDF="${NIX_LISP_ASDF:-@out@}"
-
-nix_lisp_run_single_form(){
-  NIX_LISP_FINAL_PARAMETERS=("$NIX_LISP_EXEC_CODE" "$1"
-    "$NIX_LISP_EXEC_CODE" "$NIX_LISP_QUIT" $NIX_LISP_NODEBUG)
-}
-
-nix_lisp_build_system(){
-        NIX_LISP_FINAL_PARAMETERS=(
-             "$NIX_LISP_EXEC_CODE" "(progn
-               (asdf:load-system :$1)
-               (loop for s in (list $(for i in $3; do echo ":$i"; done)) do (asdf:load-system s)))"
-             "$NIX_LISP_EXEC_CODE" "(progn
-               (setf (asdf/system:component-entry-point (asdf:find-system :$1)) ${2:-nil})
-               #+cffi(setf cffi:*foreign-library-directories*
-                        (cffi::explode-path-environment-variable \"NIX_LISP_LD_LIBRARY_PATH\"))
-               #+sbcl(loop
-                       with libpath := (uiop:split-string (uiop:getenv \"NIX_LISP_LD_LIBRARY_PATH\")
-                                :separator \":\")
-                       for l in sb-alien::*shared-objects*
-                       for ns := (sb-alien::shared-object-namestring l)
-                       do (format *error-output* \"Searching alien object ~s in ~s~%\"
-                               ns libpath)
-                       do (and (> (length ns) 0) (not (equal (elt ns 0) \"/\"))
-                               (let*
-                                 ((prefix (find-if (lambda (s) (probe-file (format nil \"~a/~a\" s ns))) libpath))
-                                  (fullpath (and prefix (format nil \"~a/~a\" prefix ns))))
-                                  (when fullpath
-                                     (format *error-output* \"Found: ~s~%\" fullpath)
-                                     (setf
-                                       (sb-alien::shared-object-namestring l) fullpath
-                                       (sb-alien::shared-object-pathname l) (probe-file fullpath)))))
-                   )
-           $4
-           (asdf:perform (quote asdf:program-op) :$1)
-        )")
-}
-
-eval "$NIX_LISP_PRELAUNCH_HOOK"
-
-if [ -z "$NIX_LISP_SKIP_CODE" ]; then
-    "$NIX_LISP_COMMAND" $NIX_LISP_EARLY_OPTIONS \
-                        $NIX_LISP_EXEC_CODE "${NIX_LISP_ASDF_LOAD:-"(load \"$NIX_LISP_ASDF/lib/common-lisp/asdf/build/asdf.$NIX_LISP_FASL_TYPE\")"}" \
-                        $NIX_LISP_EXEC_CODE "$NIX_LISP_ASDF_REGISTRY_CODE" \
-                        ${NIX_LISP_FINAL_PARAMETERS[*]:+"${NIX_LISP_FINAL_PARAMETERS[@]}"} \
-                        "$@"
-fi
diff --git a/pkgs/development/lisp-modules-obsolete/clwrapper/common-lisp.sh b/pkgs/development/lisp-modules-obsolete/clwrapper/common-lisp.sh
deleted file mode 100755
index 88948e3253df..000000000000
--- a/pkgs/development/lisp-modules-obsolete/clwrapper/common-lisp.sh
+++ /dev/null
@@ -1,3 +0,0 @@
-#!@bash@/bin/bash
-
-source "@out@"/bin/cl-wrapper.sh "${NIX_LISP_COMMAND:-$(@ls@ "@lisp@/bin"/* | @head@ -n 1)}" "$@"
diff --git a/pkgs/development/lisp-modules-obsolete/clwrapper/default.nix b/pkgs/development/lisp-modules-obsolete/clwrapper/default.nix
deleted file mode 100644
index 83f3347bdf2e..000000000000
--- a/pkgs/development/lisp-modules-obsolete/clwrapper/default.nix
+++ /dev/null
@@ -1,57 +0,0 @@
-{lib, stdenv, asdf, which, bash, lisp ? null}:
-stdenv.mkDerivation {
-  name = "cl-wrapper-script";
-
-  buildPhase="";
-
-  installPhase=''
-    mkdir -p "$out"/bin
-    export head="$(which head)"
-    export ls="$(which ls)"
-    substituteAll ${./common-lisp.sh} "$out"/bin/common-lisp.sh
-    substituteAll "${./build-with-lisp.sh}" "$out/bin/build-with-lisp.sh"
-    substituteAll "${./cl-wrapper.sh}" "$out/bin/cl-wrapper.sh"
-    patchShebangs "$out/bin"
-    chmod a+x "$out"/bin/*
-
-    substituteAll "${./setup-hook.sh}" "setup-hook-parsed"
-    addEnvHooks(){ true; };
-    source setup-hook-parsed
-    setLisp "${lisp}"
-    echo "$NIX_LISP"
-
-    mkdir -p "$out/lib/common-lisp/"
-    cp -r "${asdf}/lib/common-lisp"/* "$out/lib/common-lisp/"
-    chmod u+rw -R "$out/lib/common-lisp/"
-
-    NIX_LISP_PRELAUNCH_HOOK='
-      NIX_LISP_FASL_TYPE=lisp
-      nix_lisp_run_single_form "(progn
-        (uiop/lisp-build:compile-file* \"'"$out"'/lib/common-lisp/asdf/build/asdf.lisp\")
-        (asdf:load-system :uiop :force :all)
-        (asdf:load-system :asdf :force :all)
-        (ignore-errors (asdf:load-system :uiop/version :force :all))
-      )"' \
-      "$out/bin/common-lisp.sh"
-  '';
-
-  buildInputs = [which];
-
-  inherit asdf lisp bash;
-  stdenv_shell = stdenv.shell;
-
-  setupHook = ./setup-hook.sh;
-
-  dontUnpack = true;
-
-  ASDF_OUTPUT_TRANSLATIONS="${builtins.storeDir}/:${builtins.storeDir}";
-
-  passthru = {
-    inherit lisp;
-  };
-
-  meta = {
-    description = "Script used to wrap Common Lisp implementations";
-    maintainers = [lib.maintainers.raskin];
-  };
-}
diff --git a/pkgs/development/lisp-modules-obsolete/clwrapper/setup-hook.sh b/pkgs/development/lisp-modules-obsolete/clwrapper/setup-hook.sh
deleted file mode 100644
index 5cb238b2973f..000000000000
--- a/pkgs/development/lisp-modules-obsolete/clwrapper/setup-hook.sh
+++ /dev/null
@@ -1,39 +0,0 @@
-NIX_LISP_ASDF="@out@"
-
-CL_SOURCE_REGISTRY="${CL_SOURCE_REGISTRY:+$CL_SOURCE_REGISTRY:}@out@/lib/common-lisp/asdf/"
-
-addASDFPaths () {
-    for j in "$1"/lib/common-lisp-settings/*-path-config.sh; do
-      source "$j"
-    done
-}
-
-setLisp () {
-    if [ -z "${NIX_LISP_COMMAND:-}" ]; then
-      for j in "$1"/bin/*; do
-          case "$(basename "$j")" in
-              sbcl) NIX_LISP_COMMAND="$j" ;;
-              ecl) NIX_LISP_COMMAND="$j" ;;
-              clisp) NIX_LISP_COMMAND="$j" ;;
-              lx86cl) NIX_LISP_COMMAND="$j" ;;
-              lx86cl64) NIX_LISP_COMMAND="$j" ;;
-          esac
-      done
-    fi
-    if [ -n "${NIX_LISP_COMMAND:-}" ] && [ -z "${NIX_LISP:-}" ]; then
-        NIX_LISP="${NIX_LISP_COMMAND##*/}"
-    fi
-}
-
-collectNixLispLDLP () {
-     if echo "$1/lib"/lib*.{so,dylib}* | grep . > /dev/null; then
-     export NIX_LISP_LD_LIBRARY_PATH="${NIX_LISP_LD_LIBRARY_PATH-}${NIX_LISP_LD_LIBRARY_PATH:+:}$1/lib"
-     fi
-}
-
-export NIX_LISP_COMMAND NIX_LISP CL_SOURCE_REGISTRY NIX_LISP_ASDF
-
-addEnvHooks "$targetOffset" addASDFPaths setLisp collectNixLispLDLP
-
-mkdir -p "$HOME"/.cache/common-lisp || HOME="$TMP/.temp-${USER:-nixbld}-home"
-mkdir -p "$HOME"/.cache/common-lisp
diff --git a/pkgs/development/lisp-modules-obsolete/define-package.nix b/pkgs/development/lisp-modules-obsolete/define-package.nix
deleted file mode 100644
index b787e8795030..000000000000
--- a/pkgs/development/lisp-modules-obsolete/define-package.nix
+++ /dev/null
@@ -1,120 +0,0 @@
-args @ {lib, stdenv, clwrapper, baseName, packageName ? baseName
-  , parasites ? []
-  , buildSystems ? ([packageName] ++ parasites)
-  , version ? "latest"
-  , src, description, deps, buildInputs ? [], meta ? {}, overrides?(x: {})
-  , propagatedBuildInputs ? []
-  , asdFilesToKeep ? [(builtins.concatStringsSep "" [packageName ".asd"])]}:
-let
-  deployConfigScript = ''
-    outhash="$out"
-    outhash="''${outhash##*/}"
-    outhash="''${outhash%%-*}"
-    config_script="$out"/lib/common-lisp-settings/${args.baseName}-shell-config.sh
-    path_config_script="$out"/lib/common-lisp-settings/${args.baseName}-path-config.sh
-    store_translation="$(dirname "$out"):$(dirname "$out")"
-    mkdir -p "$(dirname "$config_script")"
-    touch "$config_script"
-    touch "$path_config_script"
-    chmod a+x "$config_script"
-    chmod a+x "$path_config_script"
-    echo "if test -z \"\''${_''${outhash}_NIX_LISP_CONFIG:-}\"; then export _''${outhash}_NIX_LISP_CONFIG=1; " >> "$config_script"
-    echo "export NIX_CFLAGS_COMPILE='$NIX_CFLAGS_COMPILE'\"\''${NIX_CFLAGS_COMPILE:+ \$NIX_CFLAGS_COMPILE}\"" >> "$config_script"
-    echo "export NIX_LDFLAGS='$NIX_LDFLAGS'\"\''${NIX_LDFLAGS:+ \$NIX_LDFLAGS}\"" >> "$config_script"
-    echo "export NIX_LISP_COMMAND='$NIX_LISP_COMMAND'" >> "$config_script"
-    echo "export NIX_LISP_ASDF='$NIX_LISP_ASDF'" >> "$config_script"
-    set | grep NIX_CC_WRAPPER_ | sed -e 's@^NIX_CC_WRAPPER@export &@' >> "$config_script"
-    echo "export PATH=\"\''${PATH:+\$PATH:}$PATH\"" >> "$config_script"
-    echo "echo \"\$ASDF_OUTPUT_TRANSLATIONS\" | grep -E '(^|:)$store_translation(:|\$)' >/dev/null || export ASDF_OUTPUT_TRANSLATIONS=\"\''${ASDF_OUTPUT_TRANSLATIONS:+\$ASDF_OUTPUT_TRANSLATIONS:}\"'$store_translation'" >> "$config_script"
-    echo "source '$path_config_script'" >> "$config_script"
-    echo "fi" >> "$config_script"
-    echo "if test -z \"\''${_''${outhash}_NIX_LISP_PATH_CONFIG:-}\"; then export _''${outhash}_NIX_LISP_PATH_CONFIG=1; " >> "$path_config_script"
-    echo "NIX_LISP_ASDF_PATHS=\"$( echo "\''${NIX_LISP_ASDF_PATHS:-}"; echo "$NIX_LISP_ASDF_PATHS"; echo "$out/lib/common-lisp/${args.baseName}" )\"" >> "$path_config_script"
-    echo "export NIX_LISP_ASDF_PATHS=\$((tr ' ' '\n' | sort | uniq | tr '\n' ' ') <<< \$NIX_LISP_ASDF_PATHS)" >> $path_config_script
-
-    test -n "$LD_LIBRARY_PATH" &&
-        echo "export LD_LIBRARY_PATH=\"\$LD_LIBRARY_PATH\''${LD_LIBRARY_PATH:+:}\"'$LD_LIBRARY_PATH'" >> "$path_config_script"
-    test -n "$NIX_LISP_LD_LIBRARY_PATH" &&
-        echo "export NIX_LISP_LD_LIBRARY_PATH=\"\''${NIX_LISP_LD_LIBRARY_PATH:-}\''${NIX_LISP_LD_LIBRARY_PATH:+:}\"'$(echo "$NIX_LISP_LD_LIBRARY_PATH" | tr -d '\n' | tr : '\n' | sort | uniq | tr '\n' ':' | sed -e 's/:$//')'" >> "$path_config_script"
-    echo "fi" >> "$path_config_script"
-  '';
-  deployLaunchScript = ''
-    launch_script="$out"/bin/${args.baseName}-lisp-launcher.sh
-    mkdir -p "$(dirname "$launch_script")"
-    touch "$launch_script"
-    chmod a+x "$launch_script"
-    echo "#! ${stdenv.shell}" >> "$launch_script"
-    echo "source '$config_script'" >> "$launch_script"
-    echo "test -n \"\$NIX_LISP_LD_LIBRARY_PATH\" && export LD_LIBRARY_PATH=\"\$NIX_LISP_LD_LIBRARY_PATH\''${LD_LIBRARY_PATH:+:}\$LD_LIBRARY_PATH\"" >> "$launch_script"
-    echo '"${clwrapper}/bin/common-lisp.sh" "$@"' >> "$launch_script"
-  '';
-  moveAsdFiles = ''
-    find $out/lib/common-lisp/ -name '*.asd' | while read ASD_FILE; do
-      KEEP_THIS_ASD=0
-      for ALLOWED_ASD in $asdFilesToKeep; do
-        ALLOWED_ASD="/$ALLOWED_ASD"
-        ALLOWED_ASD_LENGTH=${"$"}{#ALLOWED_ASD}
-        ASD_FILE_LENGTH=${"$"}{#ASD_FILE}
-        ASD_FILE_SUFFIX_INDEX=$(expr "$ASD_FILE_LENGTH" - "$ALLOWED_ASD_LENGTH")
-        ASD_FILE_SUFFIX_INDEX=$(expr "$ASD_FILE_SUFFIX_INDEX" + 1)
-        echo $ALLOWED_ASD $ASD_FILE $ASD_FILE_SUFFIX_INDEX $(expr substr "$ASD_FILE" "$ASD_FILE_SUFFIX_INDEX" "$ASD_FILE_LENGTH")
-        if [ "$(expr substr "$ASD_FILE" "$ASD_FILE_SUFFIX_INDEX" "$ASD_FILE_LENGTH")" == "$ALLOWED_ASD" ]; then
-          KEEP_THIS_ASD=1
-          break
-        fi
-      done
-      if [ "$KEEP_THIS_ASD" == 0 ]; then
-        mv "$ASD_FILE"{,.sibling}
-      fi
-    done
-  '';
-basePackage = {
-  name = "lisp-${baseName}-${version}";
-  inherit src;
-
-  dontBuild = true;
-
-  inherit deployConfigScript deployLaunchScript;
-  inherit asdFilesToKeep moveAsdFiles;
-  installPhase = ''
-    eval "$preInstall"
-
-    mkdir -p "$out"/share/doc/${args.baseName};
-    mkdir -p "$out"/lib/common-lisp/${args.baseName};
-    cp -r . "$out"/lib/common-lisp/${args.baseName};
-    cp -rf doc/* LICENCE LICENSE COPYING README README.html README.md readme.html "$out"/share/doc/${args.baseName} || true
-
-    ${deployConfigScript}
-    ${deployLaunchScript}
-    ${moveAsdFiles}
-
-    env -i \
-    NIX_LISP="$NIX_LISP" \
-    NIX_LISP_PRELAUNCH_HOOK='nix_lisp_run_single_form "(progn
-          ${lib.concatMapStrings (system: ''
-            (asdf:compile-system :${system})
-            (asdf:load-system :${system})
-            (asdf:operate (quote asdf::compile-bundle-op) :${system})
-            (ignore-errors (asdf:operate (quote asdf::deploy-asd-op) :${system}))
-'') buildSystems}
-          )"' \
-       "$out/bin/${args.baseName}-lisp-launcher.sh"
-
-    eval "$postInstall"
-  '';
-  propagatedBuildInputs = (args.deps or []) ++ [clwrapper clwrapper.lisp clwrapper.asdf]
-    ++ (args.propagatedBuildInputs or []);
-  buildInputs = buildInputs;
-  dontStrip=true;
-
-  ASDF_OUTPUT_TRANSLATIONS="${builtins.storeDir}/:${builtins.storeDir}";
-
-  noAuditTmpDir = true;
-
-  meta = {
-    inherit description version;
-  } // meta;
-};
-package = basePackage // (overrides basePackage);
-in
-stdenv.mkDerivation package
diff --git a/pkgs/development/lisp-modules-obsolete/from-quicklisp/asdf-description.sh b/pkgs/development/lisp-modules-obsolete/from-quicklisp/asdf-description.sh
deleted file mode 100755
index bdb5981bf4fb..000000000000
--- a/pkgs/development/lisp-modules-obsolete/from-quicklisp/asdf-description.sh
+++ /dev/null
@@ -1,16 +0,0 @@
-#! /bin/sh
-
-[ -z "$NIX_QUICKLISP_DIR" ] && {
-  export NIX_QUICKLISP_DIR="$(mktemp -d --tmpdir nix-quicklisp.XXXXXX)"
-}
-
-[ -f "$NIX_QUICKLISP_DIR/setup.lisp" ] || {
-  "$(dirname "$0")/quicklisp-beta-env.sh" "$NIX_QUICKLISP_DIR" &> /dev/null < /dev/null
-}
-
-name="$1"
-
-sbcl --noinform --load "$NIX_QUICKLISP_DIR"/setup.lisp --eval "(ql:quickload :$name)" \
-    --eval "(format t \"~a~%\" (or (asdf::system-description (asdf::find-system \"$name\")) \"\"))" \
-    --eval '(quit)' --script |
-    tee /dev/stderr | tail -n 1
diff --git a/pkgs/development/lisp-modules-obsolete/from-quicklisp/barebones-quicklisp-expression.sh b/pkgs/development/lisp-modules-obsolete/from-quicklisp/barebones-quicklisp-expression.sh
deleted file mode 100755
index 7959d1146f7c..000000000000
--- a/pkgs/development/lisp-modules-obsolete/from-quicklisp/barebones-quicklisp-expression.sh
+++ /dev/null
@@ -1,174 +0,0 @@
-#! /bin/sh
-
-name="$1"
-
-[ -z "$NIX_LISP_PACKAGES_DEFINED_LIST" ] && export NIX_LISP_PACKAGES_DEFINED_LIST="$(mktemp)"
-
-if [ -n "$NIX_LISP_UPDATE_PACKAGE" ] || [ -n "$NIX_LISP_UPDATE_PACKAGES" ]; then
-  export NIX_LISP_UPDATE_PACKAGE=
-else
-  nix-instantiate "$(dirname "$0")"/../../../../ -A "lispPackages.$name" > /dev/null && exit
-fi
-grep "^$name\$" "$NIX_LISP_PACKAGES_DEFINED_LIST" > /dev/null && exit
-
-echo "$name" >> "$NIX_LISP_PACKAGES_DEFINED_LIST"
-
-[ -z "$NIX_QUICKLISP_DIR" ] && {
-  export NIX_QUICKLISP_DIR="$(mktemp -d --tmpdir nix-quicklisp.XXXXXX)"
-}
-
-[ -f "$NIX_QUICKLISP_DIR/setup.lisp" ] || {
-  "$(dirname "$0")/quicklisp-beta-env.sh" "$NIX_QUICKLISP_DIR" &> /dev/null < /dev/null
-}
-
-description="$("$(dirname "$0")/asdf-description.sh" "$name")"
-[ -z "$description" ] && {
-  description="$(curl -L https://github.com/quicklisp/quicklisp-projects/raw/master/"$name"/description.txt)"
-  [ "$(echo "$description" | wc -l)" -gt 10 ] && description=""
-}
-
-dependencies="$("$(dirname "$0")/quicklisp-dependencies.sh" "$name" | xargs)"
-ql_src="$(curl -L https://github.com/quicklisp/quicklisp-projects/raw/master/"$name"/source.txt)"
-ql_src_type="${ql_src%% *}"
-url="${ql_src##* }"
-
-[ "$ql_src_type" = "kmr-git" ] && {
-  ql_src_type=git
-  url="http://git.kpe.io/$url.git"
-  export NIX_PREFETCH_GIT_DEEP_CLONE=1
-}
-
-[ "$ql_src_type" = ediware-http ] && {
-  ql_src_type=github
-  url="edicl/$url";
-}
-
-[ "$ql_src_type" = xach-http ] && {
-  ql_src_type=github
-  url="xach/$url";
-}
-
-[ "$ql_src_type" = github ] && {
-  ql_src_type=git
-  url="https://github.com/$url";
-  version="$("$(dirname "$0")/urls-from-page.sh" "$url/releases/" | grep /tag/ | head -n 1 | xargs -l1 basename)"
-  rev="refs/tags/$version";
-}
-
-[ "$ql_src_type" = git ] && {
-  fetcher="pkgs.fetchgit"
-  ( [ "${url#git://github.com/}" != "$url" ] ||
-    [ "${url#https://github.com/}" != "$url" ]
-    ) && {
-    url="${url/git:/https:}"
-    url="${url%.git}"
-    [ -z "$rev" ] && rev=$("$(dirname "$0")/urls-from-page.sh" "$url/commits" | grep /commit/ | head -n 1 | xargs basename)
-    hash=$("$(dirname "$0")/../../../build-support/fetchgit/nix-prefetch-git" "$url" "$rev" | grep . | tail -n 1)
-    [ -z "$version" ] && version="git-$(date +%Y%m%d)";
-  }
-  [ "${url#git://common-lisp.net/}" != "$url" ] && {
-    http_repo_url="$url"
-    http_repo_url="${http_repo_url/git:/http:}"
-    http_repo_url="${http_repo_url/\/projects\// /r/projects/}"
-    http_repo_head="$http_repo_url/refs/heads/master"
-    echo "$http_repo_head" >&2
-    [ -z "$rev" ] && rev=$(curl -L "$http_repo_head");
-    hash=$("$(dirname "$0")/../../../build-support/fetchgit/nix-prefetch-git" "$url" "$rev")
-    [ -z "$version" ] && version="git-$(date +%Y%m%d)";
-  }
-  [ "${url#http://git.b9.com/}" != "$url" ] && {
-    http_repo_url="$url"
-    http_repo_url="${http_repo_url/git:/http:}"
-    http_repo_head="$http_repo_url/refs/heads/master"
-    echo "$http_repo_head" >&2
-    rev=$(curl -L "$http_repo_head");
-    hash=$("$(dirname "$0")/../../../build-support/fetchgit/nix-prefetch-git" "$url" "$rev" | tail -n 1)
-    version="git-$(date +%Y%m%d)";
-  }
-  [ "${url#http://common-lisp.net/}" != "$url" ] && {
-    http_repo_url="$url"
-    http_repo_url="${http_repo_url/git:/http:}"
-    http_repo_head="$http_repo_url/refs/heads/master"
-    echo "$http_repo_head" >&2
-    rev=$(curl -L "$http_repo_head");
-    hash=$("$(dirname "$0")/../../../build-support/fetchgit/nix-prefetch-git" "$url" "$rev" | tail -n 1)
-    version="git-$(date +%Y%m%d)";
-  }
-}
-
-[ "$ql_src_type" = cvs ] && {
-  fetcher="pkgs.fetchcvs"
-  date="$(date -d yesterday +%Y-%m-%d)"
-  version="cvs-$date"
-  module="${module:-$name}"
-  hash=$(USE_DATE=1 "$(dirname "$0")/../../../build-support/fetchcvs/nix-prefetch-cvs" "$url" "$module" "$date")
-  cvsRoot="$url"
-  unset url
-}
-
-[ "$ql_src_type" = clnet-darcs ] && {
-  ql_src_type=darcs
-  url="http://common-lisp.net/project/$url/darcs/$url/"
-}
-
-[ "$ql_src_type" = darcs ] && {
-  fetcher="pkgs.fetchdarcs"
-  [ -z "$version" ] &&
-  version="$(curl "$url/_darcs/inventory" | grep '\[TAG ' | tail -n 1 | sed -e 's/.* //')"
-  [ -z "$version" ] &&
-  version="$(curl "$url/_darcs/hashed_inventory" | grep '\[TAG ' | tail -n 1 | sed -e 's/.* //')"
-  rev="$version";
-  hash=$(echo "
-  with (import <nixpkgs> {});
-      fetchdarcs {
-        url=''$url'';
-    rev=''$version'';
-    sha256=''0000000000000000000000000000000000000000000000000000000000000000'';
-    }" | nix-instantiate - | tail -n 1 |
-    xargs nix-store -r 2>&1 | tee /dev/stderr | grep 'instead has' | tail -n 1 |
-    sed -e 's/.* instead has .//;s/[^0-9a-z].*//')
-}
-
-[ "$ql_src_type" = froydware-http ] && {
-  dirurl="http://method-combination.net/lisp/files/";
-  url="$("$(dirname "$0")/urls-from-page.sh" "$dirurl" |
-    grep "/${url}_" | grep -v "[.]asc\$" | tail -n 1)"
-  ql_src_type=http
-}
-
-[ "$ql_src_type" = http ] && {
-  fetcher="pkgs.fetchurl";
-  version="$(echo "$url" | sed -re 's@.*[-_]([0-9.]+)[-._].*@\1@')"
-  hash="$(nix-prefetch-url "$url" | grep . | tail -n 1)"
-}
-
-[ "$ql_src_type" = https ] && {
-  fetcher="pkgs.fetchurl";
-  version="$(echo "$url" | sed -re 's@.*[-_]([0-9.]+)[-._].*@\1@')"
-  hash="$(nix-prefetch-url "$url" | grep . | tail -n 1)"
-}
-
-if [ "$ql_src" = '{"error":"Not Found"}' ]; then
-    echo "# $name: not found"
-else
-cat << EOF | grep -Ev '^[ ]+$'
-
-  $name = buildLispPackage rec {
-    baseName = "$name";
-    version = "${version:-\${Set me //}";
-    description = "$description";
-    deps = [$dependencies];
-    # Source type: $ql_src_type
-    src = ${fetcher:-pkgs.fetchurl} {
-      ${url:+url = ''$url'';}
-      sha256 = "${hash:-0000000000000000000000000000000000000000000000000000000000000000}";
-      ${rev:+rev = ''$rev'';}
-      ${date:+date = ''$date'';}
-      ${module:+module = ''$module'';}
-      ${cvsRoot:+cvsRoot = ''$cvsRoot'';}
-    };
-  };
-EOF
-fi
-
-for i in $dependencies; do "$0" "$i"; done
diff --git a/pkgs/development/lisp-modules-obsolete/from-quicklisp/quicklisp-beta-env.sh b/pkgs/development/lisp-modules-obsolete/from-quicklisp/quicklisp-beta-env.sh
deleted file mode 100755
index 32fbbe4bb2bc..000000000000
--- a/pkgs/development/lisp-modules-obsolete/from-quicklisp/quicklisp-beta-env.sh
+++ /dev/null
@@ -1,16 +0,0 @@
-#! /bin/sh
-
-WORK_DIR=$(mktemp -d "/tmp/ql-venv-XXXXXX")
-mkdir -p "${1:-.}"
-TARGET="$(cd "${1:-.}"; pwd)"
-
-curl http://beta.quicklisp.org/quicklisp.lisp > "$WORK_DIR/ql.lisp"
-
-sbcl --noinform \
-     --load "$WORK_DIR/ql.lisp" \
-     --eval "(quicklisp-quickstart:install :path \"$TARGET/\")" \
-     --eval "(cl-user::quit)" \
-     --script
-
-
-rm -rf "$WORK_DIR"
diff --git a/pkgs/development/lisp-modules-obsolete/from-quicklisp/quicklisp-dependencies.sh b/pkgs/development/lisp-modules-obsolete/from-quicklisp/quicklisp-dependencies.sh
deleted file mode 100755
index 24efbdd3e16e..000000000000
--- a/pkgs/development/lisp-modules-obsolete/from-quicklisp/quicklisp-dependencies.sh
+++ /dev/null
@@ -1,11 +0,0 @@
-#! /bin/sh
-
-[ -z "$NIX_QUICKLISP_DIR" ] && {
-  export NIX_QUICKLISP_DIR="$(mktemp -d --tmpdir nix-quicklisp.XXXXXX)"
-}
-
-[ -f "$NIX_QUICKLISP_DIR/setup.lisp" ] || {
-  "$(dirname "$0")/quicklisp-beta-env.sh" "$NIX_QUICKLISP_DIR" &> /dev/null < /dev/null
-}
-
-sbcl --noinform --eval "(with-output-to-string (*standard-output*) (load \"$NIX_QUICKLISP_DIR/setup.lisp\"))" --eval "(with-output-to-string (*standard-output*) (with-output-to-string (*error-output*) (with-output-to-string (*trace-output*) (ql:quickload :$1))))" --eval "(format t \"~{~a~%~}\" (mapcar 'ql::name (mapcar 'car (cdr (ql::dependency-tree \"$1\")))))" --eval '(quit)' --script
diff --git a/pkgs/development/lisp-modules-obsolete/from-quicklisp/urls-from-page.sh b/pkgs/development/lisp-modules-obsolete/from-quicklisp/urls-from-page.sh
deleted file mode 100755
index 26724d122a77..000000000000
--- a/pkgs/development/lisp-modules-obsolete/from-quicklisp/urls-from-page.sh
+++ /dev/null
@@ -1,14 +0,0 @@
-#! /bin/sh
-
-url="$1"
-protocol="${url%%:*}"
-path="${url#$protocol://}"
-server="${path%%/*}"
-basepath="${path%/*}"
-relpath="${path#$server}"
-
-echo "URL: $url" >&2
-
-curl -A 'text/html; text/xhtml; text/xml; */*' -L -k "$url" | sed -re 's/^/-/;s/[^a-zA-Z][hH][rR][eE][fF]=("([^"]*)"|'\''([^'\'']*)'\''|([^"'\'' <>&]+)[ <>&])/\n+\2\3\4\n-/g' | \
-  sed -e '/^-/d; s/^[+]//; /^#/d;'"s/^\\//$protocol:\\/\\/$server\\//g" | \
-  sed -re 's`^[^:]*$`'"$protocol://$basepath/&\`"
diff --git a/pkgs/development/lisp-modules-obsolete/lisp-packages.nix b/pkgs/development/lisp-modules-obsolete/lisp-packages.nix
deleted file mode 100644
index 6688ebcc527c..000000000000
--- a/pkgs/development/lisp-modules-obsolete/lisp-packages.nix
+++ /dev/null
@@ -1,272 +0,0 @@
-{lib, stdenv, clwrapper, pkgs, sbcl, coreutils, nix, asdf}:
-let lispPackages = rec {
-  inherit lib pkgs clwrapper stdenv;
-  nixLib = pkgs.lib;
-  callPackage = nixLib.callPackageWith lispPackages;
-
-  buildLispPackage =  callPackage ./define-package.nix;
-
-  quicklisp = buildLispPackage rec {
-    baseName = "quicklisp";
-    version = "2021-02-13";
-
-    buildSystems = [];
-
-    description = "The Common Lisp package manager";
-    deps = [];
-    src = pkgs.fetchFromGitHub {
-      owner = "quicklisp";
-      repo = "quicklisp-client";
-      rev = "version-${version}";
-      sha256 = "sha256-1HLVPhl8aBaeG8dRLxBh0j0X/0wqFeNYK1CEfiELToA=";
-    };
-    overrides = x: rec {
-      inherit clwrapper;
-      quicklispdist = pkgs.fetchurl {
-        # Will usually be replaced with a fresh version anyway, but needs to be
-        # a valid distinfo.txt
-        url = "http://beta.quicklisp.org/dist/quicklisp/2021-12-09/distinfo.txt";
-        sha256 = "sha256:0gc4cv73nl7xkfwvmkmfhfx6yqf876nfm2v24v6fky9n24sh4y6w";
-      };
-      buildPhase = "true; ";
-      postInstall = ''
-        substituteAll ${./quicklisp.sh} "$out"/bin/quicklisp
-        chmod a+x "$out"/bin/quicklisp
-        cp "${quicklispdist}" "$out/lib/common-lisp/quicklisp/quicklisp-distinfo.txt"
-      '';
-    };
-  };
-
-  quicklisp-to-nix-system-info = stdenv.mkDerivation {
-    pname = "quicklisp-to-nix-system-info";
-    version = "1.0.0";
-    src = ./quicklisp-to-nix;
-    nativeBuildInputs = [sbcl];
-    buildInputs = [
-      lispPackages.quicklisp coreutils
-    ];
-    touch = coreutils;
-    nix-prefetch-url = nix;
-    inherit quicklisp;
-    buildPhase = ''
-      ${sbcl}/bin/sbcl --eval '(load #P"${asdf}/lib/common-lisp/asdf/build/asdf.lisp")' --load $src/system-info.lisp --eval '(ql-to-nix-system-info::dump-image)'
-    '';
-    installPhase = ''
-      mkdir -p $out/bin
-      cp quicklisp-to-nix-system-info $out/bin
-    '';
-    dontStrip = true;
-  };
-
-  quicklisp-to-nix = stdenv.mkDerivation {
-    pname = "quicklisp-to-nix";
-    version = "1.0.0";
-    src = ./quicklisp-to-nix;
-    buildDependencies = [sbcl quicklisp-to-nix-system-info];
-    buildInputs = with pkgs.lispPackages; [md5 cl-emb alexandria external-program];
-    touch = coreutils;
-    nix-prefetch-url = nix;
-    inherit quicklisp;
-    deps = [];
-    system-info = quicklisp-to-nix-system-info;
-    buildPhase = ''
-      ${clwrapper}/bin/cl-wrapper.sh "${sbcl}/bin/sbcl" --eval '(load #P"${asdf}/lib/common-lisp/asdf/build/asdf.lisp")' --load $src/ql-to-nix.lisp --eval '(ql-to-nix::dump-image)'
-    '';
-    installPhase = ''
-      mkdir -p $out/bin
-      cp quicklisp-to-nix $out/bin
-    '';
-    dontStrip = true;
-  };
-
-  clx-truetype = buildLispPackage rec {
-          baseName = "clx-truetype";
-          version = "20160825-git";
-
-          buildSystems = [ "clx-truetype" ];
-          parasites = [ "clx-truetype-test" ];
-
-          description = "clx-truetype is pure common lisp solution for antialiased TrueType font rendering using CLX and XRender extension.";
-          deps = with pkgs.lispPackages; [
-                  alexandria bordeaux-threads cl-aa cl-fad cl-paths cl-paths-ttf cl-store
-                          cl-vectors clx trivial-features zpb-ttf
-          ];
-          src = pkgs.fetchurl {
-                  url = "http://beta.quicklisp.org/archive/clx-truetype/2016-08-25/clx-truetype-20160825-git.tgz";
-                  sha256 = "0ndy067rg9w6636gxwlpnw7f3ck9nrnjb03444pprik9r3c9in67";
-          };
-
-          packageName = "clx-truetype";
-
-          asdFilesToKeep = ["clx-truetype.asd"];
-  };
-  cluffer = buildLispPackage rec {
-    baseName = "cluffer";
-    version = "2018-09-24";
-
-    buildSystems = [ "cluffer-base" "cluffer-simple-buffer" "cluffer-simple-line" "cluffer-standard-buffer" "cluffer-standard-line" "cluffer" ];
-    parasites = [ "cluffer-test" ];
-
-    description = "General purpose text-editor buffer";
-    deps = with pkgs.lispPackages; [
-      acclimation clump
-    ];
-    src = pkgs.fetchFromGitHub {
-      owner = "robert-strandh";
-      repo = "cluffer";
-      rev = "4aad29c276a58a593064e79972ee4d77cae0af4a";
-      sha256 = "1bcg13g7qb3dr8z50aihdjqa6miz5ivlc9wsj2csgv1km1mak2kj";
-      # date = 2018-09-24T04:45:36+02:00;
-    };
-
-    packageName = "cluffer";
-
-    asdFilesToKeep = [ "cluffer.asd" "cluffer-base.asd" "cluffer-simple-buffer.asd" "cluffer-simple-line.asd" "cluffer-standard-buffer.asd" "cluffer-standard-line.asd" ];
-  };
-  nyxt = pkgs.lispPackages.buildLispPackage rec {
-    baseName = "nyxt";
-    version = "2.2.4";
-
-    description = "Browser";
-
-    overrides = x: {
-      postInstall = ''
-        echo "Building nyxt binary"
-        (
-          source "$out/lib/common-lisp-settings"/*-shell-config.sh
-          cd "$out/lib/common-lisp"/*/
-          makeFlags="''${makeFlags:-}"
-          make LISP=common-lisp.sh NYXT_INTERNAL_QUICKLISP=false PREFIX="$out" $makeFlags all
-          make LISP=common-lisp.sh NYXT_INTERNAL_QUICKLISP=false PREFIX="$out" $makeFlags install
-          cp nyxt "$out/bin/nyxt"
-        )
-        NIX_LISP_PRELAUNCH_HOOK='
-          nix_lisp_build_system nyxt/gtk-application \
-           "(asdf/system:component-entry-point (asdf:find-system :nyxt/gtk-application))" \
-           "" "(format *error-output* \"Alien objects:~%~s~%\" sb-alien::*shared-objects*)"
-        ' "$out/bin/nyxt-lisp-launcher.sh"
-        cp "$out/lib/common-lisp/nyxt/nyxt" "$out/bin/"
-      '';
-
-      # Prevent nyxt from trying to obtain dependencies as submodules
-      makeFlags = [ "NYXT_SUBMODULES=false" ] ++ x.buildFlags or [];
-
-      patches = x.patches or [] ++ [
-        # Work around crash when opening _any_ URL
-        # https://github.com/atlas-engineer/nyxt/issues/1781
-        # https://github.com/NixOS/nixpkgs/issues/158005
-        (pkgs.fetchpatch {
-          name = "nyxt-webkit-disable-sandbox.patch";
-          url = "https://github.com/atlas-engineer/nyxt/commit/48ac0d8727f1ca1428188a1ab2c05b7be5f6cc51.patch";
-          sha256 = "0570mcfn5wmjha6jmfdgglp0w5b7rpfnv3flzn77clgbknwbxi0m";
-        })
-      ];
-    };
-
-    deps = with pkgs.lispPackages; [
-            alexandria
-            bordeaux-threads
-            calispel
-            cl-css
-            cl-json
-            cl-markup
-            cl-ppcre
-            cl-ppcre-unicode
-            cl-prevalence
-            closer-mop
-            cl-containers
-            cl-qrencode
-            clss
-            cluffer
-            moptilities
-            dexador
-            enchant
-            file-attributes
-            iolib
-            local-time
-            log4cl
-            lparallel
-            mk-string-metrics
-            osicat
-            parenscript
-            quri
-            serapeum
-            spinneret
-            str
-            plump
-            swank
-            trivia
-            trivial-clipboard
-            trivial-features
-            trivial-garbage
-            trivial-package-local-nicknames
-            trivial-types
-            unix-opts
-            cl-html-diff
-            hu_dot_dwim_dot_defclass-star
-            cl-custom-hash-table
-            fset
-            cl-cffi-gtk
-            cl-webkit2
-            cl-gobject-introspection
-    ];
-    src = pkgs.fetchFromGitHub {
-      owner = "atlas-engineer";
-      repo = "nyxt";
-      rev = version;
-      sha256 = "12l7ir3q29v06jx0zng5cvlbmap7p709ka3ik6x29lw334qshm9b";
-    };
-
-    packageName = "nyxt";
-
-    propagatedBuildInputs = [
-      pkgs.libressl.out
-      pkgs.webkitgtk
-      pkgs.sbcl
-    ];
-  };
-
-  mgl = buildLispPackage rec {
-    baseName = "mgl";
-    version = "2021-10-07";
-    description = "MGL is a machine learning library for backpropagation neural networks, boltzmann machines, gaussian processes and more";
-    deps = with pkgs.lispPackages; [
-      alexandria closer-mop array-operations lla cl-reexport mgl-mat mgl-pax
-      named-readtables pythonic-string-reader
-    ];
-    src = pkgs.fetchFromGitHub {
-      owner = "melisgl";
-      repo = "mgl";
-      rev = "e697791a9bcad3b6e7b3845246a2aa55238cfef7";
-      sha256 = "sha256:09sf7nq7nmf9q7bh3a5ygl2i2n0nhrx5fk2kv5ili0ckv7g9x72s";
-      # date = 2021-10-18T14:15+02:00
-    };
-    buildSystems = [ "mgl" "mgl/test" ];
-    packageName = "mgl";
-    parasites = [ "mgl/test" ];
-    asdFilesToKeep = [ "mgl.asd" "mgl-example.asd" "gnuplot/mgl-gnuplot.asd" "visuals/mgl-visuals.asd" ];
-  };
-
-  mgl-mat = buildLispPackage rec {
-    baseName = "mgl-mat";
-    version = "2021-10-11";
-    description = "Multi-dimensional arrays with FFI/CUDA support";
-    deps = with pkgs.lispPackages; [
-      alexandria bordeaux-threads cffi cffi-grovel cl-cuda flexi-streams ieee-floats
-      lla mgl-pax static-vectors trivial-garbage cl-fad
-    ];
-    src = pkgs.fetchFromGitHub {
-      owner = "melisgl";
-      repo = "mgl-mat";
-      rev = "3710858bc876b1b86e50f1db2abe719e92d810e7";
-      sha256 = "sha256:1aa2382mi55rp8pd31dz4d94yhfzh30vkggcvmvdfrr4ngffj0dx";
-      # date = 2021-10-18T14:15+02:00
-    };
-    packageName = "mgl-mat";
-    buildSystems = [ "mgl-mat" "mgl-mat/test" ];
-    parasites = [ "mgl-mat/test" ];
-    asdFilesToKeep = [ "mgl-mat.asd" ];
-  };
-
-};
-in lispPackages
diff --git a/pkgs/development/lisp-modules-obsolete/openssl-lib-marked.nix b/pkgs/development/lisp-modules-obsolete/openssl-lib-marked.nix
deleted file mode 100644
index 186ef14b4068..000000000000
--- a/pkgs/development/lisp-modules-obsolete/openssl-lib-marked.nix
+++ /dev/null
@@ -1,18 +0,0 @@
-with import ../../../default.nix {};
-runCommand "openssl-lib-marked" {} ''
-  mkdir -p "$out/lib"
-  for lib in ssl crypto; do
-    version="${lib.getVersion openssl}"
-    ln -s "${lib.getLib openssl}/lib/lib$lib.so" "$out/lib/lib$lib.so.$version"
-    version="$(echo "$version" | sed -re 's/[a-z]+$//')"
-    while test -n "$version"; do
-      ln -sfT "${lib.getLib openssl}/lib/lib$lib.so" "$out/lib/lib$lib.so.$version"
-      nextversion="''${version%.*}"
-      if test "$version" = "$nextversion"; then
-        version=
-      else
-        version="$nextversion"
-      fi
-    done
-  done
-''
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/_1am.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/_1am.nix
deleted file mode 100644
index 338c9640c319..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/_1am.nix
+++ /dev/null
@@ -1,25 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "_1am";
-  version = "20141106-git";
-
-  description = "A minimal testing framework.";
-
-  deps = [ ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/1am/2014-11-06/1am-20141106-git.tgz";
-    sha256 = "0vnnqd4fiq9z34i1k9gqczg3j6xllwba1f6nx0b82sgsdccmsly6";
-  };
-
-  packageName = "1am";
-
-  asdFilesToKeep = ["1am.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM 1am DESCRIPTION A minimal testing framework. SHA256
-    0vnnqd4fiq9z34i1k9gqczg3j6xllwba1f6nx0b82sgsdccmsly6 URL
-    http://beta.quicklisp.org/archive/1am/2014-11-06/1am-20141106-git.tgz MD5
-    c5e83c329157518e3ebfeef63e4ac269 NAME 1am FILENAME _1am DEPS NIL
-    DEPENDENCIES NIL VERSION 20141106-git SIBLINGS NIL PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/_3bmd-ext-code-blocks.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/_3bmd-ext-code-blocks.nix
deleted file mode 100644
index c8855a7f24b4..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/_3bmd-ext-code-blocks.nix
+++ /dev/null
@@ -1,39 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "_3bmd-ext-code-blocks";
-  version = "3bmd-20210411-git";
-
-  description = "extension to 3bmd implementing github style ``` delimited code blocks, with support for syntax highlighting using colorize, pygments, or chroma";
-
-  deps = [ args."_3bmd" args."alexandria" args."colorize" args."esrap" args."html-encode" args."split-sequence" args."trivial-with-current-source-form" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/3bmd/2021-04-11/3bmd-20210411-git.tgz";
-    sha256 = "1gwl3r8cffr8yldi0x7zdzbmngqhli2d19wsky5cf8h80m30k4vp";
-  };
-
-  packageName = "3bmd-ext-code-blocks";
-
-  asdFilesToKeep = ["3bmd-ext-code-blocks.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM 3bmd-ext-code-blocks DESCRIPTION
-    extension to 3bmd implementing github style ``` delimited code blocks, with support for syntax highlighting using colorize, pygments, or chroma
-    SHA256 1gwl3r8cffr8yldi0x7zdzbmngqhli2d19wsky5cf8h80m30k4vp URL
-    http://beta.quicklisp.org/archive/3bmd/2021-04-11/3bmd-20210411-git.tgz MD5
-    09f9290aa1708aeb469fb5154ab1a397 NAME 3bmd-ext-code-blocks FILENAME
-    _3bmd-ext-code-blocks DEPS
-    ((NAME 3bmd FILENAME _3bmd) (NAME alexandria FILENAME alexandria)
-     (NAME colorize FILENAME colorize) (NAME esrap FILENAME esrap)
-     (NAME html-encode FILENAME html-encode)
-     (NAME split-sequence FILENAME split-sequence)
-     (NAME trivial-with-current-source-form FILENAME
-      trivial-with-current-source-form))
-    DEPENDENCIES
-    (3bmd alexandria colorize esrap html-encode split-sequence
-     trivial-with-current-source-form)
-    VERSION 3bmd-20210411-git SIBLINGS
-    (3bmd-ext-definition-lists 3bmd-ext-math 3bmd-ext-tables
-     3bmd-ext-wiki-links 3bmd-youtube-tests 3bmd-youtube 3bmd)
-    PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/_3bmd.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/_3bmd.nix
deleted file mode 100644
index 630316bc8577..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/_3bmd.nix
+++ /dev/null
@@ -1,34 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "_3bmd";
-  version = "20210411-git";
-
-  description = "markdown processor in CL using esrap parser.";
-
-  deps = [ args."alexandria" args."esrap" args."split-sequence" args."trivial-with-current-source-form" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/3bmd/2021-04-11/3bmd-20210411-git.tgz";
-    sha256 = "1gwl3r8cffr8yldi0x7zdzbmngqhli2d19wsky5cf8h80m30k4vp";
-  };
-
-  packageName = "3bmd";
-
-  asdFilesToKeep = ["3bmd.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM 3bmd DESCRIPTION markdown processor in CL using esrap parser. SHA256
-    1gwl3r8cffr8yldi0x7zdzbmngqhli2d19wsky5cf8h80m30k4vp URL
-    http://beta.quicklisp.org/archive/3bmd/2021-04-11/3bmd-20210411-git.tgz MD5
-    09f9290aa1708aeb469fb5154ab1a397 NAME 3bmd FILENAME _3bmd DEPS
-    ((NAME alexandria FILENAME alexandria) (NAME esrap FILENAME esrap)
-     (NAME split-sequence FILENAME split-sequence)
-     (NAME trivial-with-current-source-form FILENAME
-      trivial-with-current-source-form))
-    DEPENDENCIES
-    (alexandria esrap split-sequence trivial-with-current-source-form) VERSION
-    20210411-git SIBLINGS
-    (3bmd-ext-code-blocks 3bmd-ext-definition-lists 3bmd-ext-math
-     3bmd-ext-tables 3bmd-ext-wiki-links 3bmd-youtube-tests 3bmd-youtube)
-    PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/access.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/access.nix
deleted file mode 100644
index 755d12b9688f..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/access.nix
+++ /dev/null
@@ -1,40 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "access";
-  version = "20210124-git";
-
-  parasites = [ "access-test" ];
-
-  description = "A library providing functions that unify data-structure access for Common Lisp:
-      access and (setf access)";
-
-  deps = [ args."alexandria" args."anaphora" args."cl-interpol" args."cl-ppcre" args."cl-unicode" args."closer-mop" args."flexi-streams" args."iterate" args."lisp-unit2" args."named-readtables" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/access/2021-01-24/access-20210124-git.tgz";
-    sha256 = "1n4j15v1ikspchcbb0bn15kk3lh78f6bxk56cs4arimm8bisyqlq";
-  };
-
-  packageName = "access";
-
-  asdFilesToKeep = ["access.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM access DESCRIPTION
-    A library providing functions that unify data-structure access for Common Lisp:
-      access and (setf access)
-    SHA256 1n4j15v1ikspchcbb0bn15kk3lh78f6bxk56cs4arimm8bisyqlq URL
-    http://beta.quicklisp.org/archive/access/2021-01-24/access-20210124-git.tgz
-    MD5 d2d7d9826cbfb3de568d05a4d6bacdbe NAME access FILENAME access DEPS
-    ((NAME alexandria FILENAME alexandria) (NAME anaphora FILENAME anaphora)
-     (NAME cl-interpol FILENAME cl-interpol) (NAME cl-ppcre FILENAME cl-ppcre)
-     (NAME cl-unicode FILENAME cl-unicode)
-     (NAME closer-mop FILENAME closer-mop)
-     (NAME flexi-streams FILENAME flexi-streams)
-     (NAME iterate FILENAME iterate) (NAME lisp-unit2 FILENAME lisp-unit2)
-     (NAME named-readtables FILENAME named-readtables))
-    DEPENDENCIES
-    (alexandria anaphora cl-interpol cl-ppcre cl-unicode closer-mop
-     flexi-streams iterate lisp-unit2 named-readtables)
-    VERSION 20210124-git SIBLINGS NIL PARASITES (access-test)) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/acclimation.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/acclimation.nix
deleted file mode 100644
index a4b7f1cd1488..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/acclimation.nix
+++ /dev/null
@@ -1,26 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "acclimation";
-  version = "20200925-git";
-
-  description = "Library supporting internationalization";
-
-  deps = [ ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/acclimation/2020-09-25/acclimation-20200925-git.tgz";
-    sha256 = "11vw1h5zxicj5qxb1smiyjxafw8xk0isnzcf5g0lqis3y9ssqxbw";
-  };
-
-  packageName = "acclimation";
-
-  asdFilesToKeep = ["acclimation.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM acclimation DESCRIPTION Library supporting internationalization
-    SHA256 11vw1h5zxicj5qxb1smiyjxafw8xk0isnzcf5g0lqis3y9ssqxbw URL
-    http://beta.quicklisp.org/archive/acclimation/2020-09-25/acclimation-20200925-git.tgz
-    MD5 8ce10864baef6fb0e11c78e2ee0b0ddb NAME acclimation FILENAME acclimation
-    DEPS NIL DEPENDENCIES NIL VERSION 20200925-git SIBLINGS
-    (acclimation-temperature) PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/agutil.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/agutil.nix
deleted file mode 100644
index 86e195044e88..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/agutil.nix
+++ /dev/null
@@ -1,29 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "agutil";
-  version = "20210531-git";
-
-  description = "A collection of utility functions not found in other utility libraries.";
-
-  deps = [ args."alexandria" args."closer-mop" args."optima" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/agutil/2021-05-31/agutil-20210531-git.tgz";
-    sha256 = "01shs4qbr0bzmx9134cm84zbh8whbi2s5xngapd2fl8ag1rda9q1";
-  };
-
-  packageName = "agutil";
-
-  asdFilesToKeep = ["agutil.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM agutil DESCRIPTION
-    A collection of utility functions not found in other utility libraries.
-    SHA256 01shs4qbr0bzmx9134cm84zbh8whbi2s5xngapd2fl8ag1rda9q1 URL
-    http://beta.quicklisp.org/archive/agutil/2021-05-31/agutil-20210531-git.tgz
-    MD5 99de7cd320ae2696c1707ca5b55cf40a NAME agutil FILENAME agutil DEPS
-    ((NAME alexandria FILENAME alexandria)
-     (NAME closer-mop FILENAME closer-mop) (NAME optima FILENAME optima))
-    DEPENDENCIES (alexandria closer-mop optima) VERSION 20210531-git SIBLINGS
-    NIL PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/alexandria.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/alexandria.nix
deleted file mode 100644
index 91fadede8250..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/alexandria.nix
+++ /dev/null
@@ -1,27 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "alexandria";
-  version = "20211209-git";
-
-  description = "Alexandria is a collection of portable public domain utilities.";
-
-  deps = [ ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/alexandria/2021-12-09/alexandria-20211209-git.tgz";
-    sha256 = "13xyajg5n3ad3x2hrmzni1w87b0wc41wn7manbvc3dc5n55afxk0";
-  };
-
-  packageName = "alexandria";
-
-  asdFilesToKeep = ["alexandria.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM alexandria DESCRIPTION
-    Alexandria is a collection of portable public domain utilities. SHA256
-    13xyajg5n3ad3x2hrmzni1w87b0wc41wn7manbvc3dc5n55afxk0 URL
-    http://beta.quicklisp.org/archive/alexandria/2021-12-09/alexandria-20211209-git.tgz
-    MD5 4f578a956567ea0d6c99c2babd1752f3 NAME alexandria FILENAME alexandria
-    DEPS NIL DEPENDENCIES NIL VERSION 20211209-git SIBLINGS (alexandria-tests)
-    PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/anaphora.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/anaphora.nix
deleted file mode 100644
index 32091d66e8e0..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/anaphora.nix
+++ /dev/null
@@ -1,28 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "anaphora";
-  version = "20211209-git";
-
-  parasites = [ "anaphora/test" ];
-
-  description = "The Anaphoric Macro Package from Hell";
-
-  deps = [ args."rt" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/anaphora/2021-12-09/anaphora-20211209-git.tgz";
-    sha256 = "1pi166qwf3zwswhgq8c4r84rl5d6lnn0rkb3cdf5afyxmminsadg";
-  };
-
-  packageName = "anaphora";
-
-  asdFilesToKeep = ["anaphora.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM anaphora DESCRIPTION The Anaphoric Macro Package from Hell SHA256
-    1pi166qwf3zwswhgq8c4r84rl5d6lnn0rkb3cdf5afyxmminsadg URL
-    http://beta.quicklisp.org/archive/anaphora/2021-12-09/anaphora-20211209-git.tgz
-    MD5 81827cd43d29293e967916bb11c4df88 NAME anaphora FILENAME anaphora DEPS
-    ((NAME rt FILENAME rt)) DEPENDENCIES (rt) VERSION 20211209-git SIBLINGS NIL
-    PARASITES (anaphora/test)) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/arnesi.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/arnesi.nix
deleted file mode 100644
index 58ad0deb2aac..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/arnesi.nix
+++ /dev/null
@@ -1,35 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "arnesi";
-  version = "20170403-git";
-
-  parasites = [ "arnesi/cl-ppcre-extras" "arnesi/slime-extras" ];
-
-  description = "A bag-of-tools utilities library used to aid in implementing the bese.it toolkit";
-
-  deps = [ args."alexandria" args."cl-ppcre" args."closer-mop" args."collectors" args."iterate" args."swank" args."symbol-munger" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/arnesi/2017-04-03/arnesi-20170403-git.tgz";
-    sha256 = "01kirjpgv5pgbcdxjrnw3ld4jw7wrqm3rgqnxwac4gxaphr2s6q4";
-  };
-
-  packageName = "arnesi";
-
-  asdFilesToKeep = ["arnesi.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM arnesi DESCRIPTION
-    A bag-of-tools utilities library used to aid in implementing the bese.it toolkit
-    SHA256 01kirjpgv5pgbcdxjrnw3ld4jw7wrqm3rgqnxwac4gxaphr2s6q4 URL
-    http://beta.quicklisp.org/archive/arnesi/2017-04-03/arnesi-20170403-git.tgz
-    MD5 bbb34e1a646b2cc489766690c741d964 NAME arnesi FILENAME arnesi DEPS
-    ((NAME alexandria FILENAME alexandria) (NAME cl-ppcre FILENAME cl-ppcre)
-     (NAME closer-mop FILENAME closer-mop)
-     (NAME collectors FILENAME collectors) (NAME iterate FILENAME iterate)
-     (NAME swank FILENAME swank) (NAME symbol-munger FILENAME symbol-munger))
-    DEPENDENCIES
-    (alexandria cl-ppcre closer-mop collectors iterate swank symbol-munger)
-    VERSION 20170403-git SIBLINGS NIL PARASITES
-    (arnesi/cl-ppcre-extras arnesi/slime-extras)) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/array-operations.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/array-operations.nix
deleted file mode 100644
index 28c1a9e84385..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/array-operations.nix
+++ /dev/null
@@ -1,32 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "array-operations";
-  version = "20210411-git";
-
-  parasites = [ "array-operations/tests" ];
-
-  description = "Simple array operations library for Common Lisp.";
-
-  deps = [ args."alexandria" args."anaphora" args."clunit2" args."let-plus" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/array-operations/2021-04-11/array-operations-20210411-git.tgz";
-    sha256 = "0l6wxd3a1xdcmcsc93prq8ymainfsy15imiwnaik1i9g94fcbjz8";
-  };
-
-  packageName = "array-operations";
-
-  asdFilesToKeep = ["array-operations.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM array-operations DESCRIPTION
-    Simple array operations library for Common Lisp. SHA256
-    0l6wxd3a1xdcmcsc93prq8ymainfsy15imiwnaik1i9g94fcbjz8 URL
-    http://beta.quicklisp.org/archive/array-operations/2021-04-11/array-operations-20210411-git.tgz
-    MD5 902c6034c006bc6ca88ef59e7ff2b1aa NAME array-operations FILENAME
-    array-operations DEPS
-    ((NAME alexandria FILENAME alexandria) (NAME anaphora FILENAME anaphora)
-     (NAME clunit2 FILENAME clunit2) (NAME let-plus FILENAME let-plus))
-    DEPENDENCIES (alexandria anaphora clunit2 let-plus) VERSION 20210411-git
-    SIBLINGS NIL PARASITES (array-operations/tests)) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/array-utils.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/array-utils.nix
deleted file mode 100644
index d9c4ef608bb9..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/array-utils.nix
+++ /dev/null
@@ -1,26 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "array-utils";
-  version = "20201220-git";
-
-  description = "A few utilities for working with arrays.";
-
-  deps = [ ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/array-utils/2020-12-20/array-utils-20201220-git.tgz";
-    sha256 = "11y6k8gzzcj00jyccg2k9nh6rvivcvh23z4yzjfly7adygd3n717";
-  };
-
-  packageName = "array-utils";
-
-  asdFilesToKeep = ["array-utils.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM array-utils DESCRIPTION A few utilities for working with arrays.
-    SHA256 11y6k8gzzcj00jyccg2k9nh6rvivcvh23z4yzjfly7adygd3n717 URL
-    http://beta.quicklisp.org/archive/array-utils/2020-12-20/array-utils-20201220-git.tgz
-    MD5 d6ed906f28c46b2ab0335ec1fc05f8af NAME array-utils FILENAME array-utils
-    DEPS NIL DEPENDENCIES NIL VERSION 20201220-git SIBLINGS (array-utils-test)
-    PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/arrows.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/arrows.nix
deleted file mode 100644
index 13076ff26e87..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/arrows.nix
+++ /dev/null
@@ -1,31 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "arrows";
-  version = "20181018-git";
-
-  parasites = [ "arrows/test" ];
-
-  description = "Implements -> and ->> from Clojure, as well as several expansions on the
-idea.";
-
-  deps = [ args."hu_dot_dwim_dot_stefil" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/arrows/2018-10-18/arrows-20181018-git.tgz";
-    sha256 = "1b13pnn71z1dv1cwysh6p5jfgjsp3q8ivsdxfspl1hg1nh9mqa7r";
-  };
-
-  packageName = "arrows";
-
-  asdFilesToKeep = ["arrows.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM arrows DESCRIPTION
-    Implements -> and ->> from Clojure, as well as several expansions on the
-idea.
-    SHA256 1b13pnn71z1dv1cwysh6p5jfgjsp3q8ivsdxfspl1hg1nh9mqa7r URL
-    http://beta.quicklisp.org/archive/arrows/2018-10-18/arrows-20181018-git.tgz
-    MD5 c60b5d79680de19baad018a0fe87bc48 NAME arrows FILENAME arrows DEPS
-    ((NAME hu.dwim.stefil FILENAME hu_dot_dwim_dot_stefil)) DEPENDENCIES
-    (hu.dwim.stefil) VERSION 20181018-git SIBLINGS NIL PARASITES (arrows/test)) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/asdf-package-system.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/asdf-package-system.nix
deleted file mode 100644
index 58f810fe04be..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/asdf-package-system.nix
+++ /dev/null
@@ -1,26 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "asdf-package-system";
-  version = "20150608-git";
-
-  description = "System lacks description";
-
-  deps = [ ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/asdf-package-system/2015-06-08/asdf-package-system-20150608-git.tgz";
-    sha256 = "17lfwfc15hcag8a2jsaxkx42wmz2mwkvxf6vb2h9cim7dwsnyy29";
-  };
-
-  packageName = "asdf-package-system";
-
-  asdFilesToKeep = ["asdf-package-system.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM asdf-package-system DESCRIPTION System lacks description SHA256
-    17lfwfc15hcag8a2jsaxkx42wmz2mwkvxf6vb2h9cim7dwsnyy29 URL
-    http://beta.quicklisp.org/archive/asdf-package-system/2015-06-08/asdf-package-system-20150608-git.tgz
-    MD5 9eee9d811aec4894843ac1d8ae6cbccd NAME asdf-package-system FILENAME
-    asdf-package-system DEPS NIL DEPENDENCIES NIL VERSION 20150608-git SIBLINGS
-    NIL PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/asdf-system-connections.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/asdf-system-connections.nix
deleted file mode 100644
index e60b893d8cb6..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/asdf-system-connections.nix
+++ /dev/null
@@ -1,27 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "asdf-system-connections";
-  version = "20170124-git";
-
-  description = "Allows for ASDF system to be connected so that auto-loading may occur.";
-
-  deps = [ ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/asdf-system-connections/2017-01-24/asdf-system-connections-20170124-git.tgz";
-    sha256 = "0h8237bq3niw6glcsps77n1ykcmc5bjkcrbjyxjgkmcb1c5kwwpq";
-  };
-
-  packageName = "asdf-system-connections";
-
-  asdFilesToKeep = ["asdf-system-connections.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM asdf-system-connections DESCRIPTION
-    Allows for ASDF system to be connected so that auto-loading may occur.
-    SHA256 0h8237bq3niw6glcsps77n1ykcmc5bjkcrbjyxjgkmcb1c5kwwpq URL
-    http://beta.quicklisp.org/archive/asdf-system-connections/2017-01-24/asdf-system-connections-20170124-git.tgz
-    MD5 23bdbb69c433568e3e15ed705b803992 NAME asdf-system-connections FILENAME
-    asdf-system-connections DEPS NIL DEPENDENCIES NIL VERSION 20170124-git
-    SIBLINGS NIL PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/babel.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/babel.nix
deleted file mode 100644
index 3a5440321316..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/babel.nix
+++ /dev/null
@@ -1,28 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "babel";
-  version = "20200925-git";
-
-  description = "Babel, a charset conversion library.";
-
-  deps = [ args."alexandria" args."trivial-features" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/babel/2020-09-25/babel-20200925-git.tgz";
-    sha256 = "1hpjm2whw7zla9igzj50y3nibii0mfg2a6y6nslaf5vpkni88jfi";
-  };
-
-  packageName = "babel";
-
-  asdFilesToKeep = ["babel.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM babel DESCRIPTION Babel, a charset conversion library. SHA256
-    1hpjm2whw7zla9igzj50y3nibii0mfg2a6y6nslaf5vpkni88jfi URL
-    http://beta.quicklisp.org/archive/babel/2020-09-25/babel-20200925-git.tgz
-    MD5 7f64d3be80bcba19d9caeaede5dea6d8 NAME babel FILENAME babel DEPS
-    ((NAME alexandria FILENAME alexandria)
-     (NAME trivial-features FILENAME trivial-features))
-    DEPENDENCIES (alexandria trivial-features) VERSION 20200925-git SIBLINGS
-    (babel-streams babel-tests) PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/binomial-heap.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/binomial-heap.nix
deleted file mode 100644
index a72da04ad790..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/binomial-heap.nix
+++ /dev/null
@@ -1,26 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "binomial-heap";
-  version = "20130420-git";
-
-  description = "A compact binomial heap implementation.";
-
-  deps = [ ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/binomial-heap/2013-04-20/binomial-heap-20130420-git.tgz";
-    sha256 = "0fl062psd0jn94raip46lq342xmsq0xgrql6v5f9j9w0ps0dg2ap";
-  };
-
-  packageName = "binomial-heap";
-
-  asdFilesToKeep = ["binomial-heap.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM binomial-heap DESCRIPTION A compact binomial heap implementation.
-    SHA256 0fl062psd0jn94raip46lq342xmsq0xgrql6v5f9j9w0ps0dg2ap URL
-    http://beta.quicklisp.org/archive/binomial-heap/2013-04-20/binomial-heap-20130420-git.tgz
-    MD5 ca40cb01b88a3fe902cc4cc25fb2d242 NAME binomial-heap FILENAME
-    binomial-heap DEPS NIL DEPENDENCIES NIL VERSION 20130420-git SIBLINGS NIL
-    PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/binpack.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/binpack.nix
deleted file mode 100644
index 1e7cf06581b0..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/binpack.nix
+++ /dev/null
@@ -1,28 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "binpack";
-  version = "20201220-git";
-
-  parasites = [ "binpack/2" ];
-
-  description = "Rectangle packer for sprite/texture atlases";
-
-  deps = [ args."alexandria" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/binpack/2020-12-20/binpack-20201220-git.tgz";
-    sha256 = "1kyl19kjsii2nrbf229c5fb3bjw7r25736f991g2j8vig991imwm";
-  };
-
-  packageName = "binpack";
-
-  asdFilesToKeep = ["binpack.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM binpack DESCRIPTION Rectangle packer for sprite/texture atlases
-    SHA256 1kyl19kjsii2nrbf229c5fb3bjw7r25736f991g2j8vig991imwm URL
-    http://beta.quicklisp.org/archive/binpack/2020-12-20/binpack-20201220-git.tgz
-    MD5 1ac4eaa76586091edb77111ea033f316 NAME binpack FILENAME binpack DEPS
-    ((NAME alexandria FILENAME alexandria)) DEPENDENCIES (alexandria) VERSION
-    20201220-git SIBLINGS (binpack-test) PARASITES (binpack/2)) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/blackbird.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/blackbird.nix
deleted file mode 100644
index a5457c46b1aa..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/blackbird.nix
+++ /dev/null
@@ -1,26 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "blackbird";
-  version = "20160531-git";
-
-  description = "A promise implementation for Common Lisp.";
-
-  deps = [ args."vom" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/blackbird/2016-05-31/blackbird-20160531-git.tgz";
-    sha256 = "0l053fb5fdz1q6dyfgys6nmbairc3aig4wjl5abpf8b1paf7gzq9";
-  };
-
-  packageName = "blackbird";
-
-  asdFilesToKeep = ["blackbird.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM blackbird DESCRIPTION A promise implementation for Common Lisp.
-    SHA256 0l053fb5fdz1q6dyfgys6nmbairc3aig4wjl5abpf8b1paf7gzq9 URL
-    http://beta.quicklisp.org/archive/blackbird/2016-05-31/blackbird-20160531-git.tgz
-    MD5 5cb13dc06a0eae8dcba14714d2b5365d NAME blackbird FILENAME blackbird DEPS
-    ((NAME vom FILENAME vom)) DEPENDENCIES (vom) VERSION 20160531-git SIBLINGS
-    (blackbird-test) PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/bordeaux-threads.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/bordeaux-threads.nix
deleted file mode 100644
index d9947891aefc..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/bordeaux-threads.nix
+++ /dev/null
@@ -1,31 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "bordeaux-threads";
-  version = "v0.8.8";
-
-  parasites = [ "bordeaux-threads/test" ];
-
-  description = "Bordeaux Threads makes writing portable multi-threaded apps simple.";
-
-  deps = [ args."alexandria" args."fiveam" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/bordeaux-threads/2020-06-10/bordeaux-threads-v0.8.8.tgz";
-    sha256 = "1ppb7lvr796k1j4hi0jnp717v9zxy6vq4f5cyzgn7svg1ic6l0pp";
-  };
-
-  packageName = "bordeaux-threads";
-
-  asdFilesToKeep = ["bordeaux-threads.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM bordeaux-threads DESCRIPTION
-    Bordeaux Threads makes writing portable multi-threaded apps simple. SHA256
-    1ppb7lvr796k1j4hi0jnp717v9zxy6vq4f5cyzgn7svg1ic6l0pp URL
-    http://beta.quicklisp.org/archive/bordeaux-threads/2020-06-10/bordeaux-threads-v0.8.8.tgz
-    MD5 1922316721bcaa10142ed07c31b178e5 NAME bordeaux-threads FILENAME
-    bordeaux-threads DEPS
-    ((NAME alexandria FILENAME alexandria) (NAME fiveam FILENAME fiveam))
-    DEPENDENCIES (alexandria fiveam) VERSION v0.8.8 SIBLINGS NIL PARASITES
-    (bordeaux-threads/test)) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/buildnode-xhtml.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/buildnode-xhtml.nix
deleted file mode 100644
index d342871f4d56..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/buildnode-xhtml.nix
+++ /dev/null
@@ -1,49 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "buildnode-xhtml";
-  version = "buildnode-20170403-git";
-
-  description = "Tool for building up an xml dom of an excel spreadsheet nicely.";
-
-  deps = [ args."alexandria" args."babel" args."buildnode" args."cl-interpol" args."cl-ppcre" args."cl-unicode" args."closer-mop" args."closure-common" args."closure-html" args."collectors" args."cxml" args."flexi-streams" args."iterate" args."named-readtables" args."puri" args."split-sequence" args."swank" args."symbol-munger" args."trivial-features" args."trivial-gray-streams" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/buildnode/2017-04-03/buildnode-20170403-git.tgz";
-    sha256 = "1gb3zsp4g31iscvvhvb99z0i7lfn1g3493q6sgpr46fmn2vdwwb6";
-  };
-
-  packageName = "buildnode-xhtml";
-
-  asdFilesToKeep = ["buildnode-xhtml.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM buildnode-xhtml DESCRIPTION
-    Tool for building up an xml dom of an excel spreadsheet nicely. SHA256
-    1gb3zsp4g31iscvvhvb99z0i7lfn1g3493q6sgpr46fmn2vdwwb6 URL
-    http://beta.quicklisp.org/archive/buildnode/2017-04-03/buildnode-20170403-git.tgz
-    MD5 b917f0d6c20489febbef0d5b954c350d NAME buildnode-xhtml FILENAME
-    buildnode-xhtml DEPS
-    ((NAME alexandria FILENAME alexandria) (NAME babel FILENAME babel)
-     (NAME buildnode FILENAME buildnode)
-     (NAME cl-interpol FILENAME cl-interpol) (NAME cl-ppcre FILENAME cl-ppcre)
-     (NAME cl-unicode FILENAME cl-unicode)
-     (NAME closer-mop FILENAME closer-mop)
-     (NAME closure-common FILENAME closure-common)
-     (NAME closure-html FILENAME closure-html)
-     (NAME collectors FILENAME collectors) (NAME cxml FILENAME cxml)
-     (NAME flexi-streams FILENAME flexi-streams)
-     (NAME iterate FILENAME iterate)
-     (NAME named-readtables FILENAME named-readtables)
-     (NAME puri FILENAME puri) (NAME split-sequence FILENAME split-sequence)
-     (NAME swank FILENAME swank) (NAME symbol-munger FILENAME symbol-munger)
-     (NAME trivial-features FILENAME trivial-features)
-     (NAME trivial-gray-streams FILENAME trivial-gray-streams))
-    DEPENDENCIES
-    (alexandria babel buildnode cl-interpol cl-ppcre cl-unicode closer-mop
-     closure-common closure-html collectors cxml flexi-streams iterate
-     named-readtables puri split-sequence swank symbol-munger trivial-features
-     trivial-gray-streams)
-    VERSION buildnode-20170403-git SIBLINGS
-    (buildnode-excel buildnode-html5 buildnode-kml buildnode-xul buildnode)
-    PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/buildnode.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/buildnode.nix
deleted file mode 100644
index f8a8ca8bfb2f..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/buildnode.nix
+++ /dev/null
@@ -1,50 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "buildnode";
-  version = "20170403-git";
-
-  parasites = [ "buildnode-test" ];
-
-  description = "Tool for building up an xml dom nicely.";
-
-  deps = [ args."alexandria" args."babel" args."buildnode-xhtml" args."cl-interpol" args."cl-ppcre" args."cl-unicode" args."closer-mop" args."closure-common" args."closure-html" args."collectors" args."cxml" args."flexi-streams" args."iterate" args."lisp-unit2" args."named-readtables" args."puri" args."split-sequence" args."swank" args."symbol-munger" args."trivial-features" args."trivial-gray-streams" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/buildnode/2017-04-03/buildnode-20170403-git.tgz";
-    sha256 = "1gb3zsp4g31iscvvhvb99z0i7lfn1g3493q6sgpr46fmn2vdwwb6";
-  };
-
-  packageName = "buildnode";
-
-  asdFilesToKeep = ["buildnode.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM buildnode DESCRIPTION Tool for building up an xml dom nicely. SHA256
-    1gb3zsp4g31iscvvhvb99z0i7lfn1g3493q6sgpr46fmn2vdwwb6 URL
-    http://beta.quicklisp.org/archive/buildnode/2017-04-03/buildnode-20170403-git.tgz
-    MD5 b917f0d6c20489febbef0d5b954c350d NAME buildnode FILENAME buildnode DEPS
-    ((NAME alexandria FILENAME alexandria) (NAME babel FILENAME babel)
-     (NAME buildnode-xhtml FILENAME buildnode-xhtml)
-     (NAME cl-interpol FILENAME cl-interpol) (NAME cl-ppcre FILENAME cl-ppcre)
-     (NAME cl-unicode FILENAME cl-unicode)
-     (NAME closer-mop FILENAME closer-mop)
-     (NAME closure-common FILENAME closure-common)
-     (NAME closure-html FILENAME closure-html)
-     (NAME collectors FILENAME collectors) (NAME cxml FILENAME cxml)
-     (NAME flexi-streams FILENAME flexi-streams)
-     (NAME iterate FILENAME iterate) (NAME lisp-unit2 FILENAME lisp-unit2)
-     (NAME named-readtables FILENAME named-readtables)
-     (NAME puri FILENAME puri) (NAME split-sequence FILENAME split-sequence)
-     (NAME swank FILENAME swank) (NAME symbol-munger FILENAME symbol-munger)
-     (NAME trivial-features FILENAME trivial-features)
-     (NAME trivial-gray-streams FILENAME trivial-gray-streams))
-    DEPENDENCIES
-    (alexandria babel buildnode-xhtml cl-interpol cl-ppcre cl-unicode
-     closer-mop closure-common closure-html collectors cxml flexi-streams
-     iterate lisp-unit2 named-readtables puri split-sequence swank
-     symbol-munger trivial-features trivial-gray-streams)
-    VERSION 20170403-git SIBLINGS
-    (buildnode-excel buildnode-html5 buildnode-kml buildnode-xhtml
-     buildnode-xul)
-    PARASITES (buildnode-test)) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/calispel.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/calispel.nix
deleted file mode 100644
index d970f413bee9..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/calispel.nix
+++ /dev/null
@@ -1,36 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "calispel";
-  version = "20170830-git";
-
-  parasites = [ "calispel-test" ];
-
-  description = "Thread-safe message-passing channels, in the style of
-the occam programming language.";
-
-  deps = [ args."alexandria" args."bordeaux-threads" args."eager-future2" args."jpl-queues" args."jpl-util" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/calispel/2017-08-30/calispel-20170830-git.tgz";
-    sha256 = "0qwmzmyh63jlw5bdv4wf458n1dz9k77gd5b4ix1kd6xrzx247k7i";
-  };
-
-  packageName = "calispel";
-
-  asdFilesToKeep = ["calispel.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM calispel DESCRIPTION
-    Thread-safe message-passing channels, in the style of
-the occam programming language.
-    SHA256 0qwmzmyh63jlw5bdv4wf458n1dz9k77gd5b4ix1kd6xrzx247k7i URL
-    http://beta.quicklisp.org/archive/calispel/2017-08-30/calispel-20170830-git.tgz
-    MD5 1fba6e4b2055f5d1f0a78387e29552b1 NAME calispel FILENAME calispel DEPS
-    ((NAME alexandria FILENAME alexandria)
-     (NAME bordeaux-threads FILENAME bordeaux-threads)
-     (NAME eager-future2 FILENAME eager-future2)
-     (NAME jpl-queues FILENAME jpl-queues) (NAME jpl-util FILENAME jpl-util))
-    DEPENDENCIES
-    (alexandria bordeaux-threads eager-future2 jpl-queues jpl-util) VERSION
-    20170830-git SIBLINGS NIL PARASITES (calispel-test)) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cffi-grovel.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cffi-grovel.nix
deleted file mode 100644
index b33f95934f82..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cffi-grovel.nix
+++ /dev/null
@@ -1,31 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "cffi-grovel";
-  version = "cffi_0.24.1";
-
-  description = "The CFFI Groveller";
-
-  deps = [ args."alexandria" args."babel" args."cffi" args."cffi-toolchain" args."trivial-features" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/cffi/2021-04-11/cffi_0.24.1.tgz";
-    sha256 = "1ir8a4rrnilj9f8rv1hh6fhkg2wp8z8zcf9hiijcix50pabxq8qh";
-  };
-
-  packageName = "cffi-grovel";
-
-  asdFilesToKeep = ["cffi-grovel.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM cffi-grovel DESCRIPTION The CFFI Groveller SHA256
-    1ir8a4rrnilj9f8rv1hh6fhkg2wp8z8zcf9hiijcix50pabxq8qh URL
-    http://beta.quicklisp.org/archive/cffi/2021-04-11/cffi_0.24.1.tgz MD5
-    c3df5c460e00e5af8b8bd2cd03a4b5cc NAME cffi-grovel FILENAME cffi-grovel DEPS
-    ((NAME alexandria FILENAME alexandria) (NAME babel FILENAME babel)
-     (NAME cffi FILENAME cffi) (NAME cffi-toolchain FILENAME cffi-toolchain)
-     (NAME trivial-features FILENAME trivial-features))
-    DEPENDENCIES (alexandria babel cffi cffi-toolchain trivial-features)
-    VERSION cffi_0.24.1 SIBLINGS
-    (cffi-examples cffi-libffi cffi-tests cffi-toolchain cffi-uffi-compat cffi)
-    PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cffi-toolchain.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cffi-toolchain.nix
deleted file mode 100644
index e109904cda88..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cffi-toolchain.nix
+++ /dev/null
@@ -1,32 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "cffi-toolchain";
-  version = "cffi_0.24.1";
-
-  description = "The CFFI toolchain";
-
-  deps = [ args."alexandria" args."asdf" args."babel" args."cffi" args."trivial-features" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/cffi/2021-04-11/cffi_0.24.1.tgz";
-    sha256 = "1ir8a4rrnilj9f8rv1hh6fhkg2wp8z8zcf9hiijcix50pabxq8qh";
-  };
-
-  packageName = "cffi-toolchain";
-
-  asdFilesToKeep = ["cffi-toolchain.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM cffi-toolchain DESCRIPTION The CFFI toolchain SHA256
-    1ir8a4rrnilj9f8rv1hh6fhkg2wp8z8zcf9hiijcix50pabxq8qh URL
-    http://beta.quicklisp.org/archive/cffi/2021-04-11/cffi_0.24.1.tgz MD5
-    c3df5c460e00e5af8b8bd2cd03a4b5cc NAME cffi-toolchain FILENAME
-    cffi-toolchain DEPS
-    ((NAME alexandria FILENAME alexandria) (NAME asdf FILENAME asdf)
-     (NAME babel FILENAME babel) (NAME cffi FILENAME cffi)
-     (NAME trivial-features FILENAME trivial-features))
-    DEPENDENCIES (alexandria asdf babel cffi trivial-features) VERSION
-    cffi_0.24.1 SIBLINGS
-    (cffi-examples cffi-grovel cffi-libffi cffi-tests cffi-uffi-compat cffi)
-    PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cffi-uffi-compat.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cffi-uffi-compat.nix
deleted file mode 100644
index 822b7a811661..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cffi-uffi-compat.nix
+++ /dev/null
@@ -1,32 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "cffi-uffi-compat";
-  version = "cffi_0.24.1";
-
-  description = "UFFI Compatibility Layer for CFFI";
-
-  deps = [ args."alexandria" args."babel" args."cffi" args."trivial-features" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/cffi/2021-04-11/cffi_0.24.1.tgz";
-    sha256 = "1ir8a4rrnilj9f8rv1hh6fhkg2wp8z8zcf9hiijcix50pabxq8qh";
-  };
-
-  packageName = "cffi-uffi-compat";
-
-  asdFilesToKeep = ["cffi-uffi-compat.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM cffi-uffi-compat DESCRIPTION UFFI Compatibility Layer for CFFI
-    SHA256 1ir8a4rrnilj9f8rv1hh6fhkg2wp8z8zcf9hiijcix50pabxq8qh URL
-    http://beta.quicklisp.org/archive/cffi/2021-04-11/cffi_0.24.1.tgz MD5
-    c3df5c460e00e5af8b8bd2cd03a4b5cc NAME cffi-uffi-compat FILENAME
-    cffi-uffi-compat DEPS
-    ((NAME alexandria FILENAME alexandria) (NAME babel FILENAME babel)
-     (NAME cffi FILENAME cffi)
-     (NAME trivial-features FILENAME trivial-features))
-    DEPENDENCIES (alexandria babel cffi trivial-features) VERSION cffi_0.24.1
-    SIBLINGS
-    (cffi-examples cffi-grovel cffi-libffi cffi-tests cffi-toolchain cffi)
-    PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cffi.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cffi.nix
deleted file mode 100644
index 0738ea5909f4..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cffi.nix
+++ /dev/null
@@ -1,35 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "cffi";
-  version = "cffi_0.24.1";
-
-  parasites = [ "cffi/c2ffi" "cffi/c2ffi-generator" ];
-
-  description = "The Common Foreign Function Interface";
-
-  deps = [ args."alexandria" args."babel" args."cl-json" args."cl-ppcre" args."trivial-features" args."uiop" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/cffi/2021-04-11/cffi_0.24.1.tgz";
-    sha256 = "1ir8a4rrnilj9f8rv1hh6fhkg2wp8z8zcf9hiijcix50pabxq8qh";
-  };
-
-  packageName = "cffi";
-
-  asdFilesToKeep = ["cffi.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM cffi DESCRIPTION The Common Foreign Function Interface SHA256
-    1ir8a4rrnilj9f8rv1hh6fhkg2wp8z8zcf9hiijcix50pabxq8qh URL
-    http://beta.quicklisp.org/archive/cffi/2021-04-11/cffi_0.24.1.tgz MD5
-    c3df5c460e00e5af8b8bd2cd03a4b5cc NAME cffi FILENAME cffi DEPS
-    ((NAME alexandria FILENAME alexandria) (NAME babel FILENAME babel)
-     (NAME cl-json FILENAME cl-json) (NAME cl-ppcre FILENAME cl-ppcre)
-     (NAME trivial-features FILENAME trivial-features)
-     (NAME uiop FILENAME uiop))
-    DEPENDENCIES (alexandria babel cl-json cl-ppcre trivial-features uiop)
-    VERSION cffi_0.24.1 SIBLINGS
-    (cffi-examples cffi-grovel cffi-libffi cffi-tests cffi-toolchain
-     cffi-uffi-compat)
-    PARASITES (cffi/c2ffi cffi/c2ffi-generator)) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/chanl.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/chanl.nix
deleted file mode 100644
index 8e32a0b1abf4..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/chanl.nix
+++ /dev/null
@@ -1,32 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "chanl";
-  version = "20210411-git";
-
-  parasites = [ "chanl/examples" "chanl/tests" ];
-
-  description = "Communicating Sequential Process support for Common Lisp";
-
-  deps = [ args."alexandria" args."bordeaux-threads" args."fiveam" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/chanl/2021-04-11/chanl-20210411-git.tgz";
-    sha256 = "1c1yiw616q5hv6vzyg1y4kg68v94p37s5jrq387rwadfnnf46rgi";
-  };
-
-  packageName = "chanl";
-
-  asdFilesToKeep = ["chanl.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM chanl DESCRIPTION
-    Communicating Sequential Process support for Common Lisp SHA256
-    1c1yiw616q5hv6vzyg1y4kg68v94p37s5jrq387rwadfnnf46rgi URL
-    http://beta.quicklisp.org/archive/chanl/2021-04-11/chanl-20210411-git.tgz
-    MD5 efaa5705b5feaa718290d25a95e2a684 NAME chanl FILENAME chanl DEPS
-    ((NAME alexandria FILENAME alexandria)
-     (NAME bordeaux-threads FILENAME bordeaux-threads)
-     (NAME fiveam FILENAME fiveam))
-    DEPENDENCIES (alexandria bordeaux-threads fiveam) VERSION 20210411-git
-    SIBLINGS NIL PARASITES (chanl/examples chanl/tests)) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/check-it.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/check-it.nix
deleted file mode 100644
index 989cb5a75c4b..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/check-it.nix
+++ /dev/null
@@ -1,32 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "check-it";
-  version = "20150709-git";
-
-  parasites = [ "check-it-test" ];
-
-  description = "A randomized property-based testing tool for Common Lisp.";
-
-  deps = [ args."alexandria" args."closer-mop" args."optima" args."stefil" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/check-it/2015-07-09/check-it-20150709-git.tgz";
-    sha256 = "1bx3ndkkl3w7clkqplhy6c2sz46pcp5w76j610gynzv7scz72iw2";
-  };
-
-  packageName = "check-it";
-
-  asdFilesToKeep = ["check-it.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM check-it DESCRIPTION
-    A randomized property-based testing tool for Common Lisp. SHA256
-    1bx3ndkkl3w7clkqplhy6c2sz46pcp5w76j610gynzv7scz72iw2 URL
-    http://beta.quicklisp.org/archive/check-it/2015-07-09/check-it-20150709-git.tgz
-    MD5 0baae55e5a9c8c884202cbc51e634c42 NAME check-it FILENAME check-it DEPS
-    ((NAME alexandria FILENAME alexandria)
-     (NAME closer-mop FILENAME closer-mop) (NAME optima FILENAME optima)
-     (NAME stefil FILENAME stefil))
-    DEPENDENCIES (alexandria closer-mop optima stefil) VERSION 20150709-git
-    SIBLINGS NIL PARASITES (check-it-test)) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/chipz.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/chipz.nix
deleted file mode 100644
index a9438deca775..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/chipz.nix
+++ /dev/null
@@ -1,26 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "chipz";
-  version = "20210807-git";
-
-  description = "A library for decompressing deflate, zlib, and gzip data";
-
-  deps = [ ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/chipz/2021-08-07/chipz-20210807-git.tgz";
-    sha256 = "0g7xhh4yq9azjq7gnszaq2kbxima2q30apb3rrglc1ign973hr8x";
-  };
-
-  packageName = "chipz";
-
-  asdFilesToKeep = ["chipz.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM chipz DESCRIPTION
-    A library for decompressing deflate, zlib, and gzip data SHA256
-    0g7xhh4yq9azjq7gnszaq2kbxima2q30apb3rrglc1ign973hr8x URL
-    http://beta.quicklisp.org/archive/chipz/2021-08-07/chipz-20210807-git.tgz
-    MD5 11438e3bc60c39294c337cb232ae8040 NAME chipz FILENAME chipz DEPS NIL
-    DEPENDENCIES NIL VERSION 20210807-git SIBLINGS NIL PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/chunga.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/chunga.nix
deleted file mode 100644
index 6c52cc5f9f6e..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/chunga.nix
+++ /dev/null
@@ -1,26 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "chunga";
-  version = "20200427-git";
-
-  description = "System lacks description";
-
-  deps = [ args."trivial-gray-streams" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/chunga/2020-04-27/chunga-20200427-git.tgz";
-    sha256 = "0p6dlnan6raincd682brcjbklyvmkfkhz0yzp2bkfw67s9615bkk";
-  };
-
-  packageName = "chunga";
-
-  asdFilesToKeep = ["chunga.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM chunga DESCRIPTION System lacks description SHA256
-    0p6dlnan6raincd682brcjbklyvmkfkhz0yzp2bkfw67s9615bkk URL
-    http://beta.quicklisp.org/archive/chunga/2020-04-27/chunga-20200427-git.tgz
-    MD5 ec31aa63a1b594a197ad45e5e65c4cc4 NAME chunga FILENAME chunga DEPS
-    ((NAME trivial-gray-streams FILENAME trivial-gray-streams)) DEPENDENCIES
-    (trivial-gray-streams) VERSION 20200427-git SIBLINGS NIL PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/circular-streams.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/circular-streams.nix
deleted file mode 100644
index d6b31a660924..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/circular-streams.nix
+++ /dev/null
@@ -1,37 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "circular-streams";
-  version = "20161204-git";
-
-  description = "Circularly readable streams for Common Lisp";
-
-  deps = [ args."alexandria" args."babel" args."cffi" args."cffi-grovel" args."cffi-toolchain" args."fast-io" args."static-vectors" args."trivial-features" args."trivial-gray-streams" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/circular-streams/2016-12-04/circular-streams-20161204-git.tgz";
-    sha256 = "1i29b9sciqs5x59hlkdj2r4siyqgrwj5hb4lnc80jgfqvzbq4128";
-  };
-
-  packageName = "circular-streams";
-
-  asdFilesToKeep = ["circular-streams.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM circular-streams DESCRIPTION
-    Circularly readable streams for Common Lisp SHA256
-    1i29b9sciqs5x59hlkdj2r4siyqgrwj5hb4lnc80jgfqvzbq4128 URL
-    http://beta.quicklisp.org/archive/circular-streams/2016-12-04/circular-streams-20161204-git.tgz
-    MD5 2383f3b82fa3335d9106e1354a678db8 NAME circular-streams FILENAME
-    circular-streams DEPS
-    ((NAME alexandria FILENAME alexandria) (NAME babel FILENAME babel)
-     (NAME cffi FILENAME cffi) (NAME cffi-grovel FILENAME cffi-grovel)
-     (NAME cffi-toolchain FILENAME cffi-toolchain)
-     (NAME fast-io FILENAME fast-io)
-     (NAME static-vectors FILENAME static-vectors)
-     (NAME trivial-features FILENAME trivial-features)
-     (NAME trivial-gray-streams FILENAME trivial-gray-streams))
-    DEPENDENCIES
-    (alexandria babel cffi cffi-grovel cffi-toolchain fast-io static-vectors
-     trivial-features trivial-gray-streams)
-    VERSION 20161204-git SIBLINGS (circular-streams-test) PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-aa.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-aa.nix
deleted file mode 100644
index 01364e97ed52..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-aa.nix
+++ /dev/null
@@ -1,26 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "cl-aa";
-  version = "cl-vectors-20180228-git";
-
-  description = "cl-aa: polygon rasterizer";
-
-  deps = [ ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/cl-vectors/2018-02-28/cl-vectors-20180228-git.tgz";
-    sha256 = "0fcypjfzqra8ryb4nx1vx1fqy7fwvyz3f443qkjg2z81akhkscly";
-  };
-
-  packageName = "cl-aa";
-
-  asdFilesToKeep = ["cl-aa.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM cl-aa DESCRIPTION cl-aa: polygon rasterizer SHA256
-    0fcypjfzqra8ryb4nx1vx1fqy7fwvyz3f443qkjg2z81akhkscly URL
-    http://beta.quicklisp.org/archive/cl-vectors/2018-02-28/cl-vectors-20180228-git.tgz
-    MD5 9d9629786d4f2c19c15cc6cd3049c343 NAME cl-aa FILENAME cl-aa DEPS NIL
-    DEPENDENCIES NIL VERSION cl-vectors-20180228-git SIBLINGS
-    (cl-aa-misc cl-paths-ttf cl-paths cl-vectors) PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-annot.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-annot.nix
deleted file mode 100644
index e6d317b5983d..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-annot.nix
+++ /dev/null
@@ -1,26 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "cl-annot";
-  version = "20150608-git";
-
-  description = "Python-like Annotation Syntax for Common Lisp";
-
-  deps = [ args."alexandria" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/cl-annot/2015-06-08/cl-annot-20150608-git.tgz";
-    sha256 = "0ixsp20rk498phv3iivipn3qbw7a7x260x63hc6kpv2s746lpdg3";
-  };
-
-  packageName = "cl-annot";
-
-  asdFilesToKeep = ["cl-annot.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM cl-annot DESCRIPTION Python-like Annotation Syntax for Common Lisp
-    SHA256 0ixsp20rk498phv3iivipn3qbw7a7x260x63hc6kpv2s746lpdg3 URL
-    http://beta.quicklisp.org/archive/cl-annot/2015-06-08/cl-annot-20150608-git.tgz
-    MD5 35d8f79311bda4dd86002d11edcd0a21 NAME cl-annot FILENAME cl-annot DEPS
-    ((NAME alexandria FILENAME alexandria)) DEPENDENCIES (alexandria) VERSION
-    20150608-git SIBLINGS NIL PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-anonfun.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-anonfun.nix
deleted file mode 100644
index d2dd93228ff4..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-anonfun.nix
+++ /dev/null
@@ -1,25 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "cl-anonfun";
-  version = "20111203-git";
-
-  description = "Anonymous function helpers for Common Lisp";
-
-  deps = [ ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/cl-anonfun/2011-12-03/cl-anonfun-20111203-git.tgz";
-    sha256 = "16r3v3yba41smkqpz0qvzabkxashl39klfb6vxhzbly696x87p1m";
-  };
-
-  packageName = "cl-anonfun";
-
-  asdFilesToKeep = ["cl-anonfun.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM cl-anonfun DESCRIPTION Anonymous function helpers for Common Lisp
-    SHA256 16r3v3yba41smkqpz0qvzabkxashl39klfb6vxhzbly696x87p1m URL
-    http://beta.quicklisp.org/archive/cl-anonfun/2011-12-03/cl-anonfun-20111203-git.tgz
-    MD5 915bda1a7653d42090f8d20a1ad85d0b NAME cl-anonfun FILENAME cl-anonfun
-    DEPS NIL DEPENDENCIES NIL VERSION 20111203-git SIBLINGS NIL PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-ansi-text.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-ansi-text.nix
deleted file mode 100644
index ad02d8c1baaf..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-ansi-text.nix
+++ /dev/null
@@ -1,30 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "cl-ansi-text";
-  version = "20211020-git";
-
-  description = "ANSI control string characters, focused on color";
-
-  deps = [ args."alexandria" args."cl-colors2" args."cl-ppcre" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/cl-ansi-text/2021-10-20/cl-ansi-text-20211020-git.tgz";
-    sha256 = "1lmxmdf4sm7apkczp0y07rlsayc5adyv2i85r6p7s60w6sianjr6";
-  };
-
-  packageName = "cl-ansi-text";
-
-  asdFilesToKeep = ["cl-ansi-text.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM cl-ansi-text DESCRIPTION
-    ANSI control string characters, focused on color SHA256
-    1lmxmdf4sm7apkczp0y07rlsayc5adyv2i85r6p7s60w6sianjr6 URL
-    http://beta.quicklisp.org/archive/cl-ansi-text/2021-10-20/cl-ansi-text-20211020-git.tgz
-    MD5 5411766beeb4180218b449454b67837f NAME cl-ansi-text FILENAME
-    cl-ansi-text DEPS
-    ((NAME alexandria FILENAME alexandria)
-     (NAME cl-colors2 FILENAME cl-colors2) (NAME cl-ppcre FILENAME cl-ppcre))
-    DEPENDENCIES (alexandria cl-colors2 cl-ppcre) VERSION 20211020-git SIBLINGS
-    (cl-ansi-text.test) PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-ascii-table.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-ascii-table.nix
deleted file mode 100644
index aae1b848757b..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-ascii-table.nix
+++ /dev/null
@@ -1,27 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "cl-ascii-table";
-  version = "20200610-git";
-
-  description = "Common Lisp library to present tabular data in ascii-art table.";
-
-  deps = [ ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/cl-ascii-table/2020-06-10/cl-ascii-table-20200610-git.tgz";
-    sha256 = "00395cbmjwlywyks3zd4mqp0w7yyms61ywp06knv1gbf847vy7yi";
-  };
-
-  packageName = "cl-ascii-table";
-
-  asdFilesToKeep = ["cl-ascii-table.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM cl-ascii-table DESCRIPTION
-    Common Lisp library to present tabular data in ascii-art table. SHA256
-    00395cbmjwlywyks3zd4mqp0w7yyms61ywp06knv1gbf847vy7yi URL
-    http://beta.quicklisp.org/archive/cl-ascii-table/2020-06-10/cl-ascii-table-20200610-git.tgz
-    MD5 6f2eaaae3fb03ba719d77ed3ffaeaf4f NAME cl-ascii-table FILENAME
-    cl-ascii-table DEPS NIL DEPENDENCIES NIL VERSION 20200610-git SIBLINGS NIL
-    PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-async-repl.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-async-repl.nix
deleted file mode 100644
index c250b53675a4..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-async-repl.nix
+++ /dev/null
@@ -1,44 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "cl-async-repl";
-  version = "cl-async-20211020-git";
-
-  description = "REPL integration for CL-ASYNC.";
-
-  deps = [ args."alexandria" args."babel" args."bordeaux-threads" args."cffi" args."cffi-grovel" args."cffi-toolchain" args."cl-async" args."cl-async-base" args."cl-async-util" args."cl-libuv" args."cl-ppcre" args."fast-io" args."static-vectors" args."trivial-features" args."trivial-gray-streams" args."vom" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/cl-async/2021-10-20/cl-async-20211020-git.tgz";
-    sha256 = "1b3bwqvzw2pc83m4x8vbbxyriq58g0j3738mzq68v689zl071dl0";
-  };
-
-  packageName = "cl-async-repl";
-
-  asdFilesToKeep = ["cl-async-repl.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM cl-async-repl DESCRIPTION REPL integration for CL-ASYNC. SHA256
-    1b3bwqvzw2pc83m4x8vbbxyriq58g0j3738mzq68v689zl071dl0 URL
-    http://beta.quicklisp.org/archive/cl-async/2021-10-20/cl-async-20211020-git.tgz
-    MD5 0e0cd11758e93a91b39ad726fb1051cc NAME cl-async-repl FILENAME
-    cl-async-repl DEPS
-    ((NAME alexandria FILENAME alexandria) (NAME babel FILENAME babel)
-     (NAME bordeaux-threads FILENAME bordeaux-threads)
-     (NAME cffi FILENAME cffi) (NAME cffi-grovel FILENAME cffi-grovel)
-     (NAME cffi-toolchain FILENAME cffi-toolchain)
-     (NAME cl-async FILENAME cl-async)
-     (NAME cl-async-base FILENAME cl-async-base)
-     (NAME cl-async-util FILENAME cl-async-util)
-     (NAME cl-libuv FILENAME cl-libuv) (NAME cl-ppcre FILENAME cl-ppcre)
-     (NAME fast-io FILENAME fast-io)
-     (NAME static-vectors FILENAME static-vectors)
-     (NAME trivial-features FILENAME trivial-features)
-     (NAME trivial-gray-streams FILENAME trivial-gray-streams)
-     (NAME vom FILENAME vom))
-    DEPENDENCIES
-    (alexandria babel bordeaux-threads cffi cffi-grovel cffi-toolchain cl-async
-     cl-async-base cl-async-util cl-libuv cl-ppcre fast-io static-vectors
-     trivial-features trivial-gray-streams vom)
-    VERSION cl-async-20211020-git SIBLINGS
-    (cl-async-ssl cl-async-test cl-async) PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-async-ssl.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-async-ssl.nix
deleted file mode 100644
index 14430f53695f..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-async-ssl.nix
+++ /dev/null
@@ -1,45 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "cl-async-ssl";
-  version = "cl-async-20211020-git";
-
-  description = "SSL Wrapper around cl-async socket implementation.";
-
-  deps = [ args."alexandria" args."babel" args."bordeaux-threads" args."cffi" args."cffi-grovel" args."cffi-toolchain" args."cl-async" args."cl-async-base" args."cl-async-util" args."cl-libuv" args."cl-ppcre" args."fast-io" args."static-vectors" args."trivial-features" args."trivial-gray-streams" args."vom" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/cl-async/2021-10-20/cl-async-20211020-git.tgz";
-    sha256 = "1b3bwqvzw2pc83m4x8vbbxyriq58g0j3738mzq68v689zl071dl0";
-  };
-
-  packageName = "cl-async-ssl";
-
-  asdFilesToKeep = ["cl-async-ssl.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM cl-async-ssl DESCRIPTION
-    SSL Wrapper around cl-async socket implementation. SHA256
-    1b3bwqvzw2pc83m4x8vbbxyriq58g0j3738mzq68v689zl071dl0 URL
-    http://beta.quicklisp.org/archive/cl-async/2021-10-20/cl-async-20211020-git.tgz
-    MD5 0e0cd11758e93a91b39ad726fb1051cc NAME cl-async-ssl FILENAME
-    cl-async-ssl DEPS
-    ((NAME alexandria FILENAME alexandria) (NAME babel FILENAME babel)
-     (NAME bordeaux-threads FILENAME bordeaux-threads)
-     (NAME cffi FILENAME cffi) (NAME cffi-grovel FILENAME cffi-grovel)
-     (NAME cffi-toolchain FILENAME cffi-toolchain)
-     (NAME cl-async FILENAME cl-async)
-     (NAME cl-async-base FILENAME cl-async-base)
-     (NAME cl-async-util FILENAME cl-async-util)
-     (NAME cl-libuv FILENAME cl-libuv) (NAME cl-ppcre FILENAME cl-ppcre)
-     (NAME fast-io FILENAME fast-io)
-     (NAME static-vectors FILENAME static-vectors)
-     (NAME trivial-features FILENAME trivial-features)
-     (NAME trivial-gray-streams FILENAME trivial-gray-streams)
-     (NAME vom FILENAME vom))
-    DEPENDENCIES
-    (alexandria babel bordeaux-threads cffi cffi-grovel cffi-toolchain cl-async
-     cl-async-base cl-async-util cl-libuv cl-ppcre fast-io static-vectors
-     trivial-features trivial-gray-streams vom)
-    VERSION cl-async-20211020-git SIBLINGS
-    (cl-async-repl cl-async-test cl-async) PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-async.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-async.nix
deleted file mode 100644
index ff57643ed562..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-async.nix
+++ /dev/null
@@ -1,42 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "cl-async";
-  version = "20211020-git";
-
-  parasites = [ "cl-async-base" "cl-async-util" ];
-
-  description = "Asynchronous operations for Common Lisp.";
-
-  deps = [ args."alexandria" args."babel" args."bordeaux-threads" args."cffi" args."cffi-grovel" args."cffi-toolchain" args."cl-libuv" args."cl-ppcre" args."fast-io" args."static-vectors" args."trivial-features" args."trivial-gray-streams" args."uiop" args."vom" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/cl-async/2021-10-20/cl-async-20211020-git.tgz";
-    sha256 = "1b3bwqvzw2pc83m4x8vbbxyriq58g0j3738mzq68v689zl071dl0";
-  };
-
-  packageName = "cl-async";
-
-  asdFilesToKeep = ["cl-async.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM cl-async DESCRIPTION Asynchronous operations for Common Lisp. SHA256
-    1b3bwqvzw2pc83m4x8vbbxyriq58g0j3738mzq68v689zl071dl0 URL
-    http://beta.quicklisp.org/archive/cl-async/2021-10-20/cl-async-20211020-git.tgz
-    MD5 0e0cd11758e93a91b39ad726fb1051cc NAME cl-async FILENAME cl-async DEPS
-    ((NAME alexandria FILENAME alexandria) (NAME babel FILENAME babel)
-     (NAME bordeaux-threads FILENAME bordeaux-threads)
-     (NAME cffi FILENAME cffi) (NAME cffi-grovel FILENAME cffi-grovel)
-     (NAME cffi-toolchain FILENAME cffi-toolchain)
-     (NAME cl-libuv FILENAME cl-libuv) (NAME cl-ppcre FILENAME cl-ppcre)
-     (NAME fast-io FILENAME fast-io)
-     (NAME static-vectors FILENAME static-vectors)
-     (NAME trivial-features FILENAME trivial-features)
-     (NAME trivial-gray-streams FILENAME trivial-gray-streams)
-     (NAME uiop FILENAME uiop) (NAME vom FILENAME vom))
-    DEPENDENCIES
-    (alexandria babel bordeaux-threads cffi cffi-grovel cffi-toolchain cl-libuv
-     cl-ppcre fast-io static-vectors trivial-features trivial-gray-streams uiop
-     vom)
-    VERSION 20211020-git SIBLINGS (cl-async-repl cl-async-ssl cl-async-test)
-    PARASITES (cl-async-base cl-async-util)) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-base64.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-base64.nix
deleted file mode 100644
index 9216c4d8a2ba..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-base64.nix
+++ /dev/null
@@ -1,29 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "cl-base64";
-  version = "20201016-git";
-
-  parasites = [ "cl-base64/test" ];
-
-  description = "Base64 encoding and decoding with URI support.";
-
-  deps = [ args."kmrcl" args."ptester" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/cl-base64/2020-10-16/cl-base64-20201016-git.tgz";
-    sha256 = "1wd2sgvfrivrbzlhs1vgj762jqz7sk171ssli6gl1kfwbnphzx9z";
-  };
-
-  packageName = "cl-base64";
-
-  asdFilesToKeep = ["cl-base64.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM cl-base64 DESCRIPTION Base64 encoding and decoding with URI support.
-    SHA256 1wd2sgvfrivrbzlhs1vgj762jqz7sk171ssli6gl1kfwbnphzx9z URL
-    http://beta.quicklisp.org/archive/cl-base64/2020-10-16/cl-base64-20201016-git.tgz
-    MD5 f556f7c61f785c84abdc1beb63c906ae NAME cl-base64 FILENAME cl-base64 DEPS
-    ((NAME kmrcl FILENAME kmrcl) (NAME ptester FILENAME ptester)) DEPENDENCIES
-    (kmrcl ptester) VERSION 20201016-git SIBLINGS NIL PARASITES
-    (cl-base64/test)) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-cffi-gtk-cairo.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-cffi-gtk-cairo.nix
deleted file mode 100644
index 9a7f3e1549cb..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-cffi-gtk-cairo.nix
+++ /dev/null
@@ -1,40 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "cl-cffi-gtk-cairo";
-  version = "cl-cffi-gtk-20201220-git";
-
-  description = "A Lisp binding to Cairo";
-
-  deps = [ args."alexandria" args."babel" args."bordeaux-threads" args."cffi" args."cl-cffi-gtk-glib" args."iterate" args."trivial-features" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/cl-cffi-gtk/2020-12-20/cl-cffi-gtk-20201220-git.tgz";
-    sha256 = "15vc0d7nirh0m6rkvzby2zb7qcpyvsxzs5yw5h6h3madyl8qm9b1";
-  };
-
-  packageName = "cl-cffi-gtk-cairo";
-
-  asdFilesToKeep = ["cl-cffi-gtk-cairo.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM cl-cffi-gtk-cairo DESCRIPTION A Lisp binding to Cairo SHA256
-    15vc0d7nirh0m6rkvzby2zb7qcpyvsxzs5yw5h6h3madyl8qm9b1 URL
-    http://beta.quicklisp.org/archive/cl-cffi-gtk/2020-12-20/cl-cffi-gtk-20201220-git.tgz
-    MD5 954beac0970a46263153c2863ad1cb5f NAME cl-cffi-gtk-cairo FILENAME
-    cl-cffi-gtk-cairo DEPS
-    ((NAME alexandria FILENAME alexandria) (NAME babel FILENAME babel)
-     (NAME bordeaux-threads FILENAME bordeaux-threads)
-     (NAME cffi FILENAME cffi)
-     (NAME cl-cffi-gtk-glib FILENAME cl-cffi-gtk-glib)
-     (NAME iterate FILENAME iterate)
-     (NAME trivial-features FILENAME trivial-features))
-    DEPENDENCIES
-    (alexandria babel bordeaux-threads cffi cl-cffi-gtk-glib iterate
-     trivial-features)
-    VERSION cl-cffi-gtk-20201220-git SIBLINGS
-    (cl-cffi-gtk-demo-cairo cl-cffi-gtk-demo-glib cl-cffi-gtk-demo-gobject
-     cl-cffi-gtk-example-gtk cl-cffi-gtk-opengl-demo cl-cffi-gtk-gdk-pixbuf
-     cl-cffi-gtk-gdk cl-cffi-gtk-gio cl-cffi-gtk-glib cl-cffi-gtk-gobject
-     cl-cffi-gtk cl-cffi-gtk-pango)
-    PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-cffi-gtk-gdk-pixbuf.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-cffi-gtk-gdk-pixbuf.nix
deleted file mode 100644
index 52a7742e0a64..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-cffi-gtk-gdk-pixbuf.nix
+++ /dev/null
@@ -1,42 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "cl-cffi-gtk-gdk-pixbuf";
-  version = "cl-cffi-gtk-20201220-git";
-
-  description = "A Lisp binding to GDK Pixbuf 2";
-
-  deps = [ args."alexandria" args."babel" args."bordeaux-threads" args."cffi" args."cl-cffi-gtk-glib" args."cl-cffi-gtk-gobject" args."closer-mop" args."iterate" args."trivial-features" args."trivial-garbage" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/cl-cffi-gtk/2020-12-20/cl-cffi-gtk-20201220-git.tgz";
-    sha256 = "15vc0d7nirh0m6rkvzby2zb7qcpyvsxzs5yw5h6h3madyl8qm9b1";
-  };
-
-  packageName = "cl-cffi-gtk-gdk-pixbuf";
-
-  asdFilesToKeep = ["cl-cffi-gtk-gdk-pixbuf.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM cl-cffi-gtk-gdk-pixbuf DESCRIPTION A Lisp binding to GDK Pixbuf 2
-    SHA256 15vc0d7nirh0m6rkvzby2zb7qcpyvsxzs5yw5h6h3madyl8qm9b1 URL
-    http://beta.quicklisp.org/archive/cl-cffi-gtk/2020-12-20/cl-cffi-gtk-20201220-git.tgz
-    MD5 954beac0970a46263153c2863ad1cb5f NAME cl-cffi-gtk-gdk-pixbuf FILENAME
-    cl-cffi-gtk-gdk-pixbuf DEPS
-    ((NAME alexandria FILENAME alexandria) (NAME babel FILENAME babel)
-     (NAME bordeaux-threads FILENAME bordeaux-threads)
-     (NAME cffi FILENAME cffi)
-     (NAME cl-cffi-gtk-glib FILENAME cl-cffi-gtk-glib)
-     (NAME cl-cffi-gtk-gobject FILENAME cl-cffi-gtk-gobject)
-     (NAME closer-mop FILENAME closer-mop) (NAME iterate FILENAME iterate)
-     (NAME trivial-features FILENAME trivial-features)
-     (NAME trivial-garbage FILENAME trivial-garbage))
-    DEPENDENCIES
-    (alexandria babel bordeaux-threads cffi cl-cffi-gtk-glib
-     cl-cffi-gtk-gobject closer-mop iterate trivial-features trivial-garbage)
-    VERSION cl-cffi-gtk-20201220-git SIBLINGS
-    (cl-cffi-gtk-cairo cl-cffi-gtk-demo-cairo cl-cffi-gtk-demo-glib
-     cl-cffi-gtk-demo-gobject cl-cffi-gtk-example-gtk cl-cffi-gtk-opengl-demo
-     cl-cffi-gtk-gdk cl-cffi-gtk-gio cl-cffi-gtk-glib cl-cffi-gtk-gobject
-     cl-cffi-gtk cl-cffi-gtk-pango)
-    PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-cffi-gtk-gdk.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-cffi-gtk-gdk.nix
deleted file mode 100644
index 17d24dcaf1ca..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-cffi-gtk-gdk.nix
+++ /dev/null
@@ -1,48 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "cl-cffi-gtk-gdk";
-  version = "cl-cffi-gtk-20201220-git";
-
-  description = "A Lisp binding to GDK 3";
-
-  deps = [ args."alexandria" args."babel" args."bordeaux-threads" args."cffi" args."cl-cffi-gtk-cairo" args."cl-cffi-gtk-gdk-pixbuf" args."cl-cffi-gtk-gio" args."cl-cffi-gtk-glib" args."cl-cffi-gtk-gobject" args."cl-cffi-gtk-pango" args."closer-mop" args."iterate" args."trivial-features" args."trivial-garbage" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/cl-cffi-gtk/2020-12-20/cl-cffi-gtk-20201220-git.tgz";
-    sha256 = "15vc0d7nirh0m6rkvzby2zb7qcpyvsxzs5yw5h6h3madyl8qm9b1";
-  };
-
-  packageName = "cl-cffi-gtk-gdk";
-
-  asdFilesToKeep = ["cl-cffi-gtk-gdk.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM cl-cffi-gtk-gdk DESCRIPTION A Lisp binding to GDK 3 SHA256
-    15vc0d7nirh0m6rkvzby2zb7qcpyvsxzs5yw5h6h3madyl8qm9b1 URL
-    http://beta.quicklisp.org/archive/cl-cffi-gtk/2020-12-20/cl-cffi-gtk-20201220-git.tgz
-    MD5 954beac0970a46263153c2863ad1cb5f NAME cl-cffi-gtk-gdk FILENAME
-    cl-cffi-gtk-gdk DEPS
-    ((NAME alexandria FILENAME alexandria) (NAME babel FILENAME babel)
-     (NAME bordeaux-threads FILENAME bordeaux-threads)
-     (NAME cffi FILENAME cffi)
-     (NAME cl-cffi-gtk-cairo FILENAME cl-cffi-gtk-cairo)
-     (NAME cl-cffi-gtk-gdk-pixbuf FILENAME cl-cffi-gtk-gdk-pixbuf)
-     (NAME cl-cffi-gtk-gio FILENAME cl-cffi-gtk-gio)
-     (NAME cl-cffi-gtk-glib FILENAME cl-cffi-gtk-glib)
-     (NAME cl-cffi-gtk-gobject FILENAME cl-cffi-gtk-gobject)
-     (NAME cl-cffi-gtk-pango FILENAME cl-cffi-gtk-pango)
-     (NAME closer-mop FILENAME closer-mop) (NAME iterate FILENAME iterate)
-     (NAME trivial-features FILENAME trivial-features)
-     (NAME trivial-garbage FILENAME trivial-garbage))
-    DEPENDENCIES
-    (alexandria babel bordeaux-threads cffi cl-cffi-gtk-cairo
-     cl-cffi-gtk-gdk-pixbuf cl-cffi-gtk-gio cl-cffi-gtk-glib
-     cl-cffi-gtk-gobject cl-cffi-gtk-pango closer-mop iterate trivial-features
-     trivial-garbage)
-    VERSION cl-cffi-gtk-20201220-git SIBLINGS
-    (cl-cffi-gtk-cairo cl-cffi-gtk-demo-cairo cl-cffi-gtk-demo-glib
-     cl-cffi-gtk-demo-gobject cl-cffi-gtk-example-gtk cl-cffi-gtk-opengl-demo
-     cl-cffi-gtk-gdk-pixbuf cl-cffi-gtk-gio cl-cffi-gtk-glib
-     cl-cffi-gtk-gobject cl-cffi-gtk cl-cffi-gtk-pango)
-    PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-cffi-gtk-gio.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-cffi-gtk-gio.nix
deleted file mode 100644
index 8cfda7f8503d..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-cffi-gtk-gio.nix
+++ /dev/null
@@ -1,42 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "cl-cffi-gtk-gio";
-  version = "cl-cffi-gtk-20201220-git";
-
-  description = "A Lisp binding to GIO 2";
-
-  deps = [ args."alexandria" args."babel" args."bordeaux-threads" args."cffi" args."cl-cffi-gtk-glib" args."cl-cffi-gtk-gobject" args."closer-mop" args."iterate" args."trivial-features" args."trivial-garbage" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/cl-cffi-gtk/2020-12-20/cl-cffi-gtk-20201220-git.tgz";
-    sha256 = "15vc0d7nirh0m6rkvzby2zb7qcpyvsxzs5yw5h6h3madyl8qm9b1";
-  };
-
-  packageName = "cl-cffi-gtk-gio";
-
-  asdFilesToKeep = ["cl-cffi-gtk-gio.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM cl-cffi-gtk-gio DESCRIPTION A Lisp binding to GIO 2 SHA256
-    15vc0d7nirh0m6rkvzby2zb7qcpyvsxzs5yw5h6h3madyl8qm9b1 URL
-    http://beta.quicklisp.org/archive/cl-cffi-gtk/2020-12-20/cl-cffi-gtk-20201220-git.tgz
-    MD5 954beac0970a46263153c2863ad1cb5f NAME cl-cffi-gtk-gio FILENAME
-    cl-cffi-gtk-gio DEPS
-    ((NAME alexandria FILENAME alexandria) (NAME babel FILENAME babel)
-     (NAME bordeaux-threads FILENAME bordeaux-threads)
-     (NAME cffi FILENAME cffi)
-     (NAME cl-cffi-gtk-glib FILENAME cl-cffi-gtk-glib)
-     (NAME cl-cffi-gtk-gobject FILENAME cl-cffi-gtk-gobject)
-     (NAME closer-mop FILENAME closer-mop) (NAME iterate FILENAME iterate)
-     (NAME trivial-features FILENAME trivial-features)
-     (NAME trivial-garbage FILENAME trivial-garbage))
-    DEPENDENCIES
-    (alexandria babel bordeaux-threads cffi cl-cffi-gtk-glib
-     cl-cffi-gtk-gobject closer-mop iterate trivial-features trivial-garbage)
-    VERSION cl-cffi-gtk-20201220-git SIBLINGS
-    (cl-cffi-gtk-cairo cl-cffi-gtk-demo-cairo cl-cffi-gtk-demo-glib
-     cl-cffi-gtk-demo-gobject cl-cffi-gtk-example-gtk cl-cffi-gtk-opengl-demo
-     cl-cffi-gtk-gdk-pixbuf cl-cffi-gtk-gdk cl-cffi-gtk-glib
-     cl-cffi-gtk-gobject cl-cffi-gtk cl-cffi-gtk-pango)
-    PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-cffi-gtk-glib.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-cffi-gtk-glib.nix
deleted file mode 100644
index 6187ba1545aa..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-cffi-gtk-glib.nix
+++ /dev/null
@@ -1,37 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "cl-cffi-gtk-glib";
-  version = "cl-cffi-gtk-20201220-git";
-
-  description = "A Lisp binding to GLib 2";
-
-  deps = [ args."alexandria" args."babel" args."bordeaux-threads" args."cffi" args."iterate" args."trivial-features" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/cl-cffi-gtk/2020-12-20/cl-cffi-gtk-20201220-git.tgz";
-    sha256 = "15vc0d7nirh0m6rkvzby2zb7qcpyvsxzs5yw5h6h3madyl8qm9b1";
-  };
-
-  packageName = "cl-cffi-gtk-glib";
-
-  asdFilesToKeep = ["cl-cffi-gtk-glib.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM cl-cffi-gtk-glib DESCRIPTION A Lisp binding to GLib 2 SHA256
-    15vc0d7nirh0m6rkvzby2zb7qcpyvsxzs5yw5h6h3madyl8qm9b1 URL
-    http://beta.quicklisp.org/archive/cl-cffi-gtk/2020-12-20/cl-cffi-gtk-20201220-git.tgz
-    MD5 954beac0970a46263153c2863ad1cb5f NAME cl-cffi-gtk-glib FILENAME
-    cl-cffi-gtk-glib DEPS
-    ((NAME alexandria FILENAME alexandria) (NAME babel FILENAME babel)
-     (NAME bordeaux-threads FILENAME bordeaux-threads)
-     (NAME cffi FILENAME cffi) (NAME iterate FILENAME iterate)
-     (NAME trivial-features FILENAME trivial-features))
-    DEPENDENCIES
-    (alexandria babel bordeaux-threads cffi iterate trivial-features) VERSION
-    cl-cffi-gtk-20201220-git SIBLINGS
-    (cl-cffi-gtk-cairo cl-cffi-gtk-demo-cairo cl-cffi-gtk-demo-glib
-     cl-cffi-gtk-demo-gobject cl-cffi-gtk-example-gtk cl-cffi-gtk-opengl-demo
-     cl-cffi-gtk-gdk-pixbuf cl-cffi-gtk-gdk cl-cffi-gtk-gio cl-cffi-gtk-gobject
-     cl-cffi-gtk cl-cffi-gtk-pango)
-    PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-cffi-gtk-gobject.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-cffi-gtk-gobject.nix
deleted file mode 100644
index 8f027fc2a037..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-cffi-gtk-gobject.nix
+++ /dev/null
@@ -1,41 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "cl-cffi-gtk-gobject";
-  version = "cl-cffi-gtk-20201220-git";
-
-  description = "A Lisp binding GObject 2";
-
-  deps = [ args."alexandria" args."babel" args."bordeaux-threads" args."cffi" args."cl-cffi-gtk-glib" args."closer-mop" args."iterate" args."trivial-features" args."trivial-garbage" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/cl-cffi-gtk/2020-12-20/cl-cffi-gtk-20201220-git.tgz";
-    sha256 = "15vc0d7nirh0m6rkvzby2zb7qcpyvsxzs5yw5h6h3madyl8qm9b1";
-  };
-
-  packageName = "cl-cffi-gtk-gobject";
-
-  asdFilesToKeep = ["cl-cffi-gtk-gobject.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM cl-cffi-gtk-gobject DESCRIPTION A Lisp binding GObject 2 SHA256
-    15vc0d7nirh0m6rkvzby2zb7qcpyvsxzs5yw5h6h3madyl8qm9b1 URL
-    http://beta.quicklisp.org/archive/cl-cffi-gtk/2020-12-20/cl-cffi-gtk-20201220-git.tgz
-    MD5 954beac0970a46263153c2863ad1cb5f NAME cl-cffi-gtk-gobject FILENAME
-    cl-cffi-gtk-gobject DEPS
-    ((NAME alexandria FILENAME alexandria) (NAME babel FILENAME babel)
-     (NAME bordeaux-threads FILENAME bordeaux-threads)
-     (NAME cffi FILENAME cffi)
-     (NAME cl-cffi-gtk-glib FILENAME cl-cffi-gtk-glib)
-     (NAME closer-mop FILENAME closer-mop) (NAME iterate FILENAME iterate)
-     (NAME trivial-features FILENAME trivial-features)
-     (NAME trivial-garbage FILENAME trivial-garbage))
-    DEPENDENCIES
-    (alexandria babel bordeaux-threads cffi cl-cffi-gtk-glib closer-mop iterate
-     trivial-features trivial-garbage)
-    VERSION cl-cffi-gtk-20201220-git SIBLINGS
-    (cl-cffi-gtk-cairo cl-cffi-gtk-demo-cairo cl-cffi-gtk-demo-glib
-     cl-cffi-gtk-demo-gobject cl-cffi-gtk-example-gtk cl-cffi-gtk-opengl-demo
-     cl-cffi-gtk-gdk-pixbuf cl-cffi-gtk-gdk cl-cffi-gtk-gio cl-cffi-gtk-glib
-     cl-cffi-gtk cl-cffi-gtk-pango)
-    PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-cffi-gtk-pango.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-cffi-gtk-pango.nix
deleted file mode 100644
index b4466fe7b42a..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-cffi-gtk-pango.nix
+++ /dev/null
@@ -1,43 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "cl-cffi-gtk-pango";
-  version = "cl-cffi-gtk-20201220-git";
-
-  description = "A Lisp binding to Pango";
-
-  deps = [ args."alexandria" args."babel" args."bordeaux-threads" args."cffi" args."cl-cffi-gtk-cairo" args."cl-cffi-gtk-glib" args."cl-cffi-gtk-gobject" args."closer-mop" args."iterate" args."trivial-features" args."trivial-garbage" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/cl-cffi-gtk/2020-12-20/cl-cffi-gtk-20201220-git.tgz";
-    sha256 = "15vc0d7nirh0m6rkvzby2zb7qcpyvsxzs5yw5h6h3madyl8qm9b1";
-  };
-
-  packageName = "cl-cffi-gtk-pango";
-
-  asdFilesToKeep = ["cl-cffi-gtk-pango.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM cl-cffi-gtk-pango DESCRIPTION A Lisp binding to Pango SHA256
-    15vc0d7nirh0m6rkvzby2zb7qcpyvsxzs5yw5h6h3madyl8qm9b1 URL
-    http://beta.quicklisp.org/archive/cl-cffi-gtk/2020-12-20/cl-cffi-gtk-20201220-git.tgz
-    MD5 954beac0970a46263153c2863ad1cb5f NAME cl-cffi-gtk-pango FILENAME
-    cl-cffi-gtk-pango DEPS
-    ((NAME alexandria FILENAME alexandria) (NAME babel FILENAME babel)
-     (NAME bordeaux-threads FILENAME bordeaux-threads)
-     (NAME cffi FILENAME cffi)
-     (NAME cl-cffi-gtk-cairo FILENAME cl-cffi-gtk-cairo)
-     (NAME cl-cffi-gtk-glib FILENAME cl-cffi-gtk-glib)
-     (NAME cl-cffi-gtk-gobject FILENAME cl-cffi-gtk-gobject)
-     (NAME closer-mop FILENAME closer-mop) (NAME iterate FILENAME iterate)
-     (NAME trivial-features FILENAME trivial-features)
-     (NAME trivial-garbage FILENAME trivial-garbage))
-    DEPENDENCIES
-    (alexandria babel bordeaux-threads cffi cl-cffi-gtk-cairo cl-cffi-gtk-glib
-     cl-cffi-gtk-gobject closer-mop iterate trivial-features trivial-garbage)
-    VERSION cl-cffi-gtk-20201220-git SIBLINGS
-    (cl-cffi-gtk-cairo cl-cffi-gtk-demo-cairo cl-cffi-gtk-demo-glib
-     cl-cffi-gtk-demo-gobject cl-cffi-gtk-example-gtk cl-cffi-gtk-opengl-demo
-     cl-cffi-gtk-gdk-pixbuf cl-cffi-gtk-gdk cl-cffi-gtk-gio cl-cffi-gtk-glib
-     cl-cffi-gtk-gobject cl-cffi-gtk)
-    PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-cffi-gtk.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-cffi-gtk.nix
deleted file mode 100644
index 1daeedb326e4..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-cffi-gtk.nix
+++ /dev/null
@@ -1,49 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "cl-cffi-gtk";
-  version = "20201220-git";
-
-  description = "A Lisp binding to GTK 3";
-
-  deps = [ args."alexandria" args."babel" args."bordeaux-threads" args."cffi" args."cl-cffi-gtk-cairo" args."cl-cffi-gtk-gdk" args."cl-cffi-gtk-gdk-pixbuf" args."cl-cffi-gtk-gio" args."cl-cffi-gtk-glib" args."cl-cffi-gtk-gobject" args."cl-cffi-gtk-pango" args."closer-mop" args."iterate" args."trivial-features" args."trivial-garbage" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/cl-cffi-gtk/2020-12-20/cl-cffi-gtk-20201220-git.tgz";
-    sha256 = "15vc0d7nirh0m6rkvzby2zb7qcpyvsxzs5yw5h6h3madyl8qm9b1";
-  };
-
-  packageName = "cl-cffi-gtk";
-
-  asdFilesToKeep = ["cl-cffi-gtk.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM cl-cffi-gtk DESCRIPTION A Lisp binding to GTK 3 SHA256
-    15vc0d7nirh0m6rkvzby2zb7qcpyvsxzs5yw5h6h3madyl8qm9b1 URL
-    http://beta.quicklisp.org/archive/cl-cffi-gtk/2020-12-20/cl-cffi-gtk-20201220-git.tgz
-    MD5 954beac0970a46263153c2863ad1cb5f NAME cl-cffi-gtk FILENAME cl-cffi-gtk
-    DEPS
-    ((NAME alexandria FILENAME alexandria) (NAME babel FILENAME babel)
-     (NAME bordeaux-threads FILENAME bordeaux-threads)
-     (NAME cffi FILENAME cffi)
-     (NAME cl-cffi-gtk-cairo FILENAME cl-cffi-gtk-cairo)
-     (NAME cl-cffi-gtk-gdk FILENAME cl-cffi-gtk-gdk)
-     (NAME cl-cffi-gtk-gdk-pixbuf FILENAME cl-cffi-gtk-gdk-pixbuf)
-     (NAME cl-cffi-gtk-gio FILENAME cl-cffi-gtk-gio)
-     (NAME cl-cffi-gtk-glib FILENAME cl-cffi-gtk-glib)
-     (NAME cl-cffi-gtk-gobject FILENAME cl-cffi-gtk-gobject)
-     (NAME cl-cffi-gtk-pango FILENAME cl-cffi-gtk-pango)
-     (NAME closer-mop FILENAME closer-mop) (NAME iterate FILENAME iterate)
-     (NAME trivial-features FILENAME trivial-features)
-     (NAME trivial-garbage FILENAME trivial-garbage))
-    DEPENDENCIES
-    (alexandria babel bordeaux-threads cffi cl-cffi-gtk-cairo cl-cffi-gtk-gdk
-     cl-cffi-gtk-gdk-pixbuf cl-cffi-gtk-gio cl-cffi-gtk-glib
-     cl-cffi-gtk-gobject cl-cffi-gtk-pango closer-mop iterate trivial-features
-     trivial-garbage)
-    VERSION 20201220-git SIBLINGS
-    (cl-cffi-gtk-cairo cl-cffi-gtk-demo-cairo cl-cffi-gtk-demo-glib
-     cl-cffi-gtk-demo-gobject cl-cffi-gtk-example-gtk cl-cffi-gtk-opengl-demo
-     cl-cffi-gtk-gdk-pixbuf cl-cffi-gtk-gdk cl-cffi-gtk-gio cl-cffi-gtk-glib
-     cl-cffi-gtk-gobject cl-cffi-gtk-pango)
-    PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-change-case.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-change-case.nix
deleted file mode 100644
index 99ff56f9b15e..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-change-case.nix
+++ /dev/null
@@ -1,34 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "cl-change-case";
-  version = "20210411-git";
-
-  parasites = [ "cl-change-case/test" ];
-
-  description = "Convert strings between camelCase, param-case, PascalCase and more";
-
-  deps = [ args."cl-ppcre" args."cl-ppcre-unicode" args."cl-unicode" args."fiveam" args."flexi-streams" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/cl-change-case/2021-04-11/cl-change-case-20210411-git.tgz";
-    sha256 = "14s26b907h1nsnwdqbj6j4c9bvc4rc2l8ry2q1j7ibjfzqvhp4mj";
-  };
-
-  packageName = "cl-change-case";
-
-  asdFilesToKeep = ["cl-change-case.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM cl-change-case DESCRIPTION
-    Convert strings between camelCase, param-case, PascalCase and more SHA256
-    14s26b907h1nsnwdqbj6j4c9bvc4rc2l8ry2q1j7ibjfzqvhp4mj URL
-    http://beta.quicklisp.org/archive/cl-change-case/2021-04-11/cl-change-case-20210411-git.tgz
-    MD5 df72a3d71a6c65e149704688aec859b9 NAME cl-change-case FILENAME
-    cl-change-case DEPS
-    ((NAME cl-ppcre FILENAME cl-ppcre)
-     (NAME cl-ppcre-unicode FILENAME cl-ppcre-unicode)
-     (NAME cl-unicode FILENAME cl-unicode) (NAME fiveam FILENAME fiveam)
-     (NAME flexi-streams FILENAME flexi-streams))
-    DEPENDENCIES (cl-ppcre cl-ppcre-unicode cl-unicode fiveam flexi-streams)
-    VERSION 20210411-git SIBLINGS NIL PARASITES (cl-change-case/test)) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-cli.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-cli.nix
deleted file mode 100644
index 1da195bab72d..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-cli.nix
+++ /dev/null
@@ -1,26 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "cl-cli";
-  version = "20151218-git";
-
-  description = "Command line parser";
-
-  deps = [ args."split-sequence" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/cl-cli/2015-12-18/cl-cli-20151218-git.tgz";
-    sha256 = "0d097wjprljghkai1yacvjqmjm1mwpa46yxbacjnwps8pqwh18ay";
-  };
-
-  packageName = "cl-cli";
-
-  asdFilesToKeep = ["cl-cli.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM cl-cli DESCRIPTION Command line parser SHA256
-    0d097wjprljghkai1yacvjqmjm1mwpa46yxbacjnwps8pqwh18ay URL
-    http://beta.quicklisp.org/archive/cl-cli/2015-12-18/cl-cli-20151218-git.tgz
-    MD5 820e5c7dde6800fcfa44b1fbc7a9d62b NAME cl-cli FILENAME cl-cli DEPS
-    ((NAME split-sequence FILENAME split-sequence)) DEPENDENCIES
-    (split-sequence) VERSION 20151218-git SIBLINGS NIL PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-colors.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-colors.nix
deleted file mode 100644
index 898ec553aad4..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-colors.nix
+++ /dev/null
@@ -1,30 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "cl-colors";
-  version = "20180328-git";
-
-  parasites = [ "cl-colors-tests" ];
-
-  description = "Simple color library for Common Lisp";
-
-  deps = [ args."alexandria" args."anaphora" args."let-plus" args."lift" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/cl-colors/2018-03-28/cl-colors-20180328-git.tgz";
-    sha256 = "0anrb3zsi03dixfsjz92y06w93kpn0d0c5142fhx72f5kafwvc4a";
-  };
-
-  packageName = "cl-colors";
-
-  asdFilesToKeep = ["cl-colors.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM cl-colors DESCRIPTION Simple color library for Common Lisp SHA256
-    0anrb3zsi03dixfsjz92y06w93kpn0d0c5142fhx72f5kafwvc4a URL
-    http://beta.quicklisp.org/archive/cl-colors/2018-03-28/cl-colors-20180328-git.tgz
-    MD5 5e59ea59b32a0254df9610a5662ae2ec NAME cl-colors FILENAME cl-colors DEPS
-    ((NAME alexandria FILENAME alexandria) (NAME anaphora FILENAME anaphora)
-     (NAME let-plus FILENAME let-plus) (NAME lift FILENAME lift))
-    DEPENDENCIES (alexandria anaphora let-plus lift) VERSION 20180328-git
-    SIBLINGS NIL PARASITES (cl-colors-tests)) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-colors2.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-colors2.nix
deleted file mode 100644
index b9a55128d912..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-colors2.nix
+++ /dev/null
@@ -1,31 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "cl-colors2";
-  version = "20211020-git";
-
-  parasites = [ "cl-colors2/tests" ];
-
-  description = "Simple color library for Common Lisp";
-
-  deps = [ args."alexandria" args."cl-ppcre" args."clunit2" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/cl-colors2/2021-10-20/cl-colors2-20211020-git.tgz";
-    sha256 = "1vkhcyflp173szwnd1xg7hk0h1f3144qzwnsdv6a16rlxjz9h804";
-  };
-
-  packageName = "cl-colors2";
-
-  asdFilesToKeep = ["cl-colors2.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM cl-colors2 DESCRIPTION Simple color library for Common Lisp SHA256
-    1vkhcyflp173szwnd1xg7hk0h1f3144qzwnsdv6a16rlxjz9h804 URL
-    http://beta.quicklisp.org/archive/cl-colors2/2021-10-20/cl-colors2-20211020-git.tgz
-    MD5 13fd422daa03328c909d1578d65f6222 NAME cl-colors2 FILENAME cl-colors2
-    DEPS
-    ((NAME alexandria FILENAME alexandria) (NAME cl-ppcre FILENAME cl-ppcre)
-     (NAME clunit2 FILENAME clunit2))
-    DEPENDENCIES (alexandria cl-ppcre clunit2) VERSION 20211020-git SIBLINGS
-    NIL PARASITES (cl-colors2/tests)) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-containers.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-containers.nix
deleted file mode 100644
index 66438b129cdb..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-containers.nix
+++ /dev/null
@@ -1,34 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "cl-containers";
-  version = "20200427-git";
-
-  parasites = [ "cl-containers/with-moptilities" "cl-containers/with-utilities" ];
-
-  description = "A generic container library for Common Lisp";
-
-  deps = [ args."asdf-system-connections" args."metatilities-base" args."moptilities" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/cl-containers/2020-04-27/cl-containers-20200427-git.tgz";
-    sha256 = "0llaymnlss0dhwyqgr2s38w1hjb2as1x1nn57qcvdphnm7qs50fy";
-  };
-
-  packageName = "cl-containers";
-
-  asdFilesToKeep = ["cl-containers.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM cl-containers DESCRIPTION
-    A generic container library for Common Lisp SHA256
-    0llaymnlss0dhwyqgr2s38w1hjb2as1x1nn57qcvdphnm7qs50fy URL
-    http://beta.quicklisp.org/archive/cl-containers/2020-04-27/cl-containers-20200427-git.tgz
-    MD5 bb0e03a581e9b617dd166a3f511eaf6a NAME cl-containers FILENAME
-    cl-containers DEPS
-    ((NAME asdf-system-connections FILENAME asdf-system-connections)
-     (NAME metatilities-base FILENAME metatilities-base)
-     (NAME moptilities FILENAME moptilities))
-    DEPENDENCIES (asdf-system-connections metatilities-base moptilities)
-    VERSION 20200427-git SIBLINGS (cl-containers-test) PARASITES
-    (cl-containers/with-moptilities cl-containers/with-utilities)) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-cookie.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-cookie.nix
deleted file mode 100644
index 2d0916dcff8f..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-cookie.nix
+++ /dev/null
@@ -1,35 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "cl-cookie";
-  version = "20191007-git";
-
-  description = "HTTP cookie manager";
-
-  deps = [ args."alexandria" args."babel" args."cl-ppcre" args."cl-utilities" args."local-time" args."proc-parse" args."quri" args."split-sequence" args."trivial-features" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/cl-cookie/2019-10-07/cl-cookie-20191007-git.tgz";
-    sha256 = "1xcb69n3qfp37nwj0mj2whf3yj5xfsgh9sdw6c64gxqkiiq9nfhh";
-  };
-
-  packageName = "cl-cookie";
-
-  asdFilesToKeep = ["cl-cookie.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM cl-cookie DESCRIPTION HTTP cookie manager SHA256
-    1xcb69n3qfp37nwj0mj2whf3yj5xfsgh9sdw6c64gxqkiiq9nfhh URL
-    http://beta.quicklisp.org/archive/cl-cookie/2019-10-07/cl-cookie-20191007-git.tgz
-    MD5 37595a6705fdd77415b859aea90d30bc NAME cl-cookie FILENAME cl-cookie DEPS
-    ((NAME alexandria FILENAME alexandria) (NAME babel FILENAME babel)
-     (NAME cl-ppcre FILENAME cl-ppcre)
-     (NAME cl-utilities FILENAME cl-utilities)
-     (NAME local-time FILENAME local-time)
-     (NAME proc-parse FILENAME proc-parse) (NAME quri FILENAME quri)
-     (NAME split-sequence FILENAME split-sequence)
-     (NAME trivial-features FILENAME trivial-features))
-    DEPENDENCIES
-    (alexandria babel cl-ppcre cl-utilities local-time proc-parse quri
-     split-sequence trivial-features)
-    VERSION 20191007-git SIBLINGS (cl-cookie-test) PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-css.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-css.nix
deleted file mode 100644
index 822ecd994b01..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-css.nix
+++ /dev/null
@@ -1,25 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "cl-css";
-  version = "20140914-git";
-
-  description = "Simple inline CSS generator";
-
-  deps = [ ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/cl-css/2014-09-14/cl-css-20140914-git.tgz";
-    sha256 = "16zjm10qqyv5v0ysvicbiscplrwlfr0assbf01gp73j1m108rn7n";
-  };
-
-  packageName = "cl-css";
-
-  asdFilesToKeep = ["cl-css.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM cl-css DESCRIPTION Simple inline CSS generator SHA256
-    16zjm10qqyv5v0ysvicbiscplrwlfr0assbf01gp73j1m108rn7n URL
-    http://beta.quicklisp.org/archive/cl-css/2014-09-14/cl-css-20140914-git.tgz
-    MD5 a91f5a5d6a751af31d5c4fd8170f6ece NAME cl-css FILENAME cl-css DEPS NIL
-    DEPENDENCIES NIL VERSION 20140914-git SIBLINGS NIL PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-csv.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-csv.nix
deleted file mode 100644
index 3ecd1d679c55..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-csv.nix
+++ /dev/null
@@ -1,38 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "cl-csv";
-  version = "20201016-git";
-
-  parasites = [ "cl-csv/speed-test" "cl-csv/test" ];
-
-  description = "Facilities for reading and writing CSV format files";
-
-  deps = [ args."alexandria" args."cl-interpol" args."cl-ppcre" args."cl-unicode" args."flexi-streams" args."iterate" args."lisp-unit2" args."named-readtables" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/cl-csv/2020-10-16/cl-csv-20201016-git.tgz";
-    sha256 = "1w12ads26v5sgcmy6rjm6ys9lml7l6rz86w776s2an2maci9kzmf";
-  };
-
-  packageName = "cl-csv";
-
-  asdFilesToKeep = ["cl-csv.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM cl-csv DESCRIPTION
-    Facilities for reading and writing CSV format files SHA256
-    1w12ads26v5sgcmy6rjm6ys9lml7l6rz86w776s2an2maci9kzmf URL
-    http://beta.quicklisp.org/archive/cl-csv/2020-10-16/cl-csv-20201016-git.tgz
-    MD5 3e067784236ab620857fe738dafedb4b NAME cl-csv FILENAME cl-csv DEPS
-    ((NAME alexandria FILENAME alexandria)
-     (NAME cl-interpol FILENAME cl-interpol) (NAME cl-ppcre FILENAME cl-ppcre)
-     (NAME cl-unicode FILENAME cl-unicode)
-     (NAME flexi-streams FILENAME flexi-streams)
-     (NAME iterate FILENAME iterate) (NAME lisp-unit2 FILENAME lisp-unit2)
-     (NAME named-readtables FILENAME named-readtables))
-    DEPENDENCIES
-    (alexandria cl-interpol cl-ppcre cl-unicode flexi-streams iterate
-     lisp-unit2 named-readtables)
-    VERSION 20201016-git SIBLINGS (cl-csv-clsql cl-csv-data-table) PARASITES
-    (cl-csv/speed-test cl-csv/test)) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-cuda.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-cuda.nix
deleted file mode 100644
index 900baca3d690..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-cuda.nix
+++ /dev/null
@@ -1,45 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "cl-cuda";
-  version = "20210807-git";
-
-  description = "Cl-cuda is a library to use NVIDIA CUDA in Common Lisp programs.";
-
-  deps = [ args."alexandria" args."babel" args."cffi" args."cffi-grovel" args."cffi-toolchain" args."cl-annot" args."cl-pattern" args."cl-ppcre" args."cl-reexport" args."cl-syntax" args."cl-syntax-annot" args."external-program" args."named-readtables" args."osicat" args."split-sequence" args."trivial-features" args."trivial-types" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/cl-cuda/2021-08-07/cl-cuda-20210807-git.tgz";
-    sha256 = "0q974qrjxdn7c53frpac0hz9wnxhnf3lf8xngrc8zkphp1windc0";
-  };
-
-  packageName = "cl-cuda";
-
-  asdFilesToKeep = ["cl-cuda.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM cl-cuda DESCRIPTION
-    Cl-cuda is a library to use NVIDIA CUDA in Common Lisp programs. SHA256
-    0q974qrjxdn7c53frpac0hz9wnxhnf3lf8xngrc8zkphp1windc0 URL
-    http://beta.quicklisp.org/archive/cl-cuda/2021-08-07/cl-cuda-20210807-git.tgz
-    MD5 0502aed4f738192adee742b7757ee8d7 NAME cl-cuda FILENAME cl-cuda DEPS
-    ((NAME alexandria FILENAME alexandria) (NAME babel FILENAME babel)
-     (NAME cffi FILENAME cffi) (NAME cffi-grovel FILENAME cffi-grovel)
-     (NAME cffi-toolchain FILENAME cffi-toolchain)
-     (NAME cl-annot FILENAME cl-annot) (NAME cl-pattern FILENAME cl-pattern)
-     (NAME cl-ppcre FILENAME cl-ppcre) (NAME cl-reexport FILENAME cl-reexport)
-     (NAME cl-syntax FILENAME cl-syntax)
-     (NAME cl-syntax-annot FILENAME cl-syntax-annot)
-     (NAME external-program FILENAME external-program)
-     (NAME named-readtables FILENAME named-readtables)
-     (NAME osicat FILENAME osicat)
-     (NAME split-sequence FILENAME split-sequence)
-     (NAME trivial-features FILENAME trivial-features)
-     (NAME trivial-types FILENAME trivial-types))
-    DEPENDENCIES
-    (alexandria babel cffi cffi-grovel cffi-toolchain cl-annot cl-pattern
-     cl-ppcre cl-reexport cl-syntax cl-syntax-annot external-program
-     named-readtables osicat split-sequence trivial-features trivial-types)
-    VERSION 20210807-git SIBLINGS
-    (cl-cuda-examples cl-cuda-interop-examples cl-cuda-interop cl-cuda-misc)
-    PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-custom-hash-table.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-custom-hash-table.nix
deleted file mode 100644
index 51dfcbf4f0d2..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-custom-hash-table.nix
+++ /dev/null
@@ -1,26 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "cl-custom-hash-table";
-  version = "20201220-git";
-
-  description = "System lacks description";
-
-  deps = [ ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/cl-custom-hash-table/2020-12-20/cl-custom-hash-table-20201220-git.tgz";
-    sha256 = "1id16p7vdcgxzvrgk8h6fqi284hgd8cilbnbgsbrbd70n7nj8jg3";
-  };
-
-  packageName = "cl-custom-hash-table";
-
-  asdFilesToKeep = ["cl-custom-hash-table.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM cl-custom-hash-table DESCRIPTION System lacks description SHA256
-    1id16p7vdcgxzvrgk8h6fqi284hgd8cilbnbgsbrbd70n7nj8jg3 URL
-    http://beta.quicklisp.org/archive/cl-custom-hash-table/2020-12-20/cl-custom-hash-table-20201220-git.tgz
-    MD5 bd0f2f4a8e808911133af19c03e5c511 NAME cl-custom-hash-table FILENAME
-    cl-custom-hash-table DEPS NIL DEPENDENCIES NIL VERSION 20201220-git
-    SIBLINGS (cl-custom-hash-table-test) PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-dbi.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-dbi.nix
deleted file mode 100644
index 9185445b3595..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-dbi.nix
+++ /dev/null
@@ -1,31 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "cl-dbi";
-  version = "20211020-git";
-
-  description = "System lacks description";
-
-  deps = [ args."alexandria" args."bordeaux-threads" args."closer-mop" args."dbi" args."split-sequence" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/cl-dbi/2021-10-20/cl-dbi-20211020-git.tgz";
-    sha256 = "1khvf4b2pa9wv8blcwb77byi5nyb8g8bnaq4ml20g674iwgvvvmr";
-  };
-
-  packageName = "cl-dbi";
-
-  asdFilesToKeep = ["cl-dbi.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM cl-dbi DESCRIPTION System lacks description SHA256
-    1khvf4b2pa9wv8blcwb77byi5nyb8g8bnaq4ml20g674iwgvvvmr URL
-    http://beta.quicklisp.org/archive/cl-dbi/2021-10-20/cl-dbi-20211020-git.tgz
-    MD5 565a1f32b2d924ad59876afcdc5cf263 NAME cl-dbi FILENAME cl-dbi DEPS
-    ((NAME alexandria FILENAME alexandria)
-     (NAME bordeaux-threads FILENAME bordeaux-threads)
-     (NAME closer-mop FILENAME closer-mop) (NAME dbi FILENAME dbi)
-     (NAME split-sequence FILENAME split-sequence))
-    DEPENDENCIES (alexandria bordeaux-threads closer-mop dbi split-sequence)
-    VERSION 20211020-git SIBLINGS
-    (dbd-mysql dbd-postgres dbd-sqlite3 dbi-test dbi) PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-difflib.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-difflib.nix
deleted file mode 100644
index aacb9a53534b..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-difflib.nix
+++ /dev/null
@@ -1,27 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "cl-difflib";
-  version = "20130128-git";
-
-  description = "A Lisp library for computing differences between sequences.";
-
-  deps = [ ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/cl-difflib/2013-01-28/cl-difflib-20130128-git.tgz";
-    sha256 = "1bgb0nmm93x90c7v1q1ah1v5dfm2anhkim7nh88sg7kg50y4ksm6";
-  };
-
-  packageName = "cl-difflib";
-
-  asdFilesToKeep = ["cl-difflib.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM cl-difflib DESCRIPTION
-    A Lisp library for computing differences between sequences. SHA256
-    1bgb0nmm93x90c7v1q1ah1v5dfm2anhkim7nh88sg7kg50y4ksm6 URL
-    http://beta.quicklisp.org/archive/cl-difflib/2013-01-28/cl-difflib-20130128-git.tgz
-    MD5 e8a3434843a368373b67d09983d2b809 NAME cl-difflib FILENAME cl-difflib
-    DEPS NIL DEPENDENCIES NIL VERSION 20130128-git SIBLINGS (cl-difflib-tests)
-    PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-digraph.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-digraph.nix
deleted file mode 100644
index e1fda552afdc..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-digraph.nix
+++ /dev/null
@@ -1,26 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "cl-digraph";
-  version = "20211020-hg";
-
-  description = "Simple directed graphs for Common Lisp.";
-
-  deps = [ ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/cl-digraph/2021-10-20/cl-digraph-20211020-hg.tgz";
-    sha256 = "0iqzqy322xywmal7y7vhn1myhdglr78fj89maiwfx6yjppcyd1i1";
-  };
-
-  packageName = "cl-digraph";
-
-  asdFilesToKeep = ["cl-digraph.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM cl-digraph DESCRIPTION Simple directed graphs for Common Lisp.
-    SHA256 0iqzqy322xywmal7y7vhn1myhdglr78fj89maiwfx6yjppcyd1i1 URL
-    http://beta.quicklisp.org/archive/cl-digraph/2021-10-20/cl-digraph-20211020-hg.tgz
-    MD5 737c3640b4b079ce0ee730525aa8b6de NAME cl-digraph FILENAME cl-digraph
-    DEPS NIL DEPENDENCIES NIL VERSION 20211020-hg SIBLINGS
-    (cl-digraph.dot cl-digraph.test) PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-dot.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-dot.nix
deleted file mode 100644
index f4f12aed5884..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-dot.nix
+++ /dev/null
@@ -1,26 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "cl-dot";
-  version = "20200925-git";
-
-  description = "Generate Dot Output from Arbitrary Lisp Data";
-
-  deps = [ args."uiop" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/cl-dot/2020-09-25/cl-dot-20200925-git.tgz";
-    sha256 = "01vx4yzasmgswrlyagjr2cz76g906jsijdwikdf8wvxyyq77gkla";
-  };
-
-  packageName = "cl-dot";
-
-  asdFilesToKeep = ["cl-dot.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM cl-dot DESCRIPTION Generate Dot Output from Arbitrary Lisp Data
-    SHA256 01vx4yzasmgswrlyagjr2cz76g906jsijdwikdf8wvxyyq77gkla URL
-    http://beta.quicklisp.org/archive/cl-dot/2020-09-25/cl-dot-20200925-git.tgz
-    MD5 35c68f431f188d4c1c7604b4b1af220f NAME cl-dot FILENAME cl-dot DEPS
-    ((NAME uiop FILENAME uiop)) DEPENDENCIES (uiop) VERSION 20200925-git
-    SIBLINGS NIL PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-emb.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-emb.nix
deleted file mode 100644
index 3d2f612dd501..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-emb.nix
+++ /dev/null
@@ -1,26 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "cl-emb";
-  version = "20190521-git";
-
-  description = "A templating system for Common Lisp";
-
-  deps = [ args."cl-ppcre" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/cl-emb/2019-05-21/cl-emb-20190521-git.tgz";
-    sha256 = "1d6bi2mx1kw7an3maxjp4ldrhkwfdb58va9whxblz2xjlbykdv8d";
-  };
-
-  packageName = "cl-emb";
-
-  asdFilesToKeep = ["cl-emb.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM cl-emb DESCRIPTION A templating system for Common Lisp SHA256
-    1d6bi2mx1kw7an3maxjp4ldrhkwfdb58va9whxblz2xjlbykdv8d URL
-    http://beta.quicklisp.org/archive/cl-emb/2019-05-21/cl-emb-20190521-git.tgz
-    MD5 b27bbe8de2206ab7c461700b58d4d527 NAME cl-emb FILENAME cl-emb DEPS
-    ((NAME cl-ppcre FILENAME cl-ppcre)) DEPENDENCIES (cl-ppcre) VERSION
-    20190521-git SIBLINGS NIL PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-environments.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-environments.nix
deleted file mode 100644
index 5638404470d8..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-environments.nix
+++ /dev/null
@@ -1,42 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "cl-environments";
-  version = "20211020-git";
-
-  parasites = [ "cl-environments/test" ];
-
-  description = "Implements the CLTL2 environment access functionality
-                for implementations which do not provide the
-                functionality to the programmer.";
-
-  deps = [ args."alexandria" args."anaphora" args."closer-mop" args."collectors" args."fiveam" args."iterate" args."optima" args."parse-declarations-1_dot_0" args."symbol-munger" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/cl-environments/2021-10-20/cl-environments-20211020-git.tgz";
-    sha256 = "0aryb40nmmw34xl6h0fp8i43d2x7zlwysim365c171mcyxh3w9lr";
-  };
-
-  packageName = "cl-environments";
-
-  asdFilesToKeep = ["cl-environments.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM cl-environments DESCRIPTION
-    Implements the CLTL2 environment access functionality
-                for implementations which do not provide the
-                functionality to the programmer.
-    SHA256 0aryb40nmmw34xl6h0fp8i43d2x7zlwysim365c171mcyxh3w9lr URL
-    http://beta.quicklisp.org/archive/cl-environments/2021-10-20/cl-environments-20211020-git.tgz
-    MD5 a796decf21a5b595ff591ffca378994a NAME cl-environments FILENAME
-    cl-environments DEPS
-    ((NAME alexandria FILENAME alexandria) (NAME anaphora FILENAME anaphora)
-     (NAME closer-mop FILENAME closer-mop)
-     (NAME collectors FILENAME collectors) (NAME fiveam FILENAME fiveam)
-     (NAME iterate FILENAME iterate) (NAME optima FILENAME optima)
-     (NAME parse-declarations-1.0 FILENAME parse-declarations-1_dot_0)
-     (NAME symbol-munger FILENAME symbol-munger))
-    DEPENDENCIES
-    (alexandria anaphora closer-mop collectors fiveam iterate optima
-     parse-declarations-1.0 symbol-munger)
-    VERSION 20211020-git SIBLINGS NIL PARASITES (cl-environments/test)) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-fad.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-fad.nix
deleted file mode 100644
index f5e28c16cef8..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-fad.nix
+++ /dev/null
@@ -1,31 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "cl-fad";
-  version = "20210124-git";
-
-  parasites = [ "cl-fad-test" ];
-
-  description = "Portable pathname library";
-
-  deps = [ args."alexandria" args."bordeaux-threads" args."cl-ppcre" args."unit-test" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/cl-fad/2021-01-24/cl-fad-20210124-git.tgz";
-    sha256 = "17vkvkwg4wpyny5x2nsazgpip5nxxahsjngaxjyrj5z15d4lkrm0";
-  };
-
-  packageName = "cl-fad";
-
-  asdFilesToKeep = ["cl-fad.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM cl-fad DESCRIPTION Portable pathname library SHA256
-    17vkvkwg4wpyny5x2nsazgpip5nxxahsjngaxjyrj5z15d4lkrm0 URL
-    http://beta.quicklisp.org/archive/cl-fad/2021-01-24/cl-fad-20210124-git.tgz
-    MD5 aa8705a0dd8ca1b43d8c76a177efdf74 NAME cl-fad FILENAME cl-fad DEPS
-    ((NAME alexandria FILENAME alexandria)
-     (NAME bordeaux-threads FILENAME bordeaux-threads)
-     (NAME cl-ppcre FILENAME cl-ppcre) (NAME unit-test FILENAME unit-test))
-    DEPENDENCIES (alexandria bordeaux-threads cl-ppcre unit-test) VERSION
-    20210124-git SIBLINGS NIL PARASITES (cl-fad-test)) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-form-types.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-form-types.nix
deleted file mode 100644
index 5ffd2e2860c3..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-form-types.nix
+++ /dev/null
@@ -1,42 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "cl-form-types";
-  version = "20211209-git";
-
-  parasites = [ "cl-form-types/test" ];
-
-  description = "Library for determining types of Common Lisp forms.";
-
-  deps = [ args."agutil" args."alexandria" args."anaphora" args."arrows" args."cl-environments" args."closer-mop" args."collectors" args."fiveam" args."introspect-environment" args."iterate" args."optima" args."parse-declarations-1_dot_0" args."symbol-munger" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/cl-form-types/2021-12-09/cl-form-types-20211209-git.tgz";
-    sha256 = "1w1918a9rjw9dp5qpwq3mf0p4yyd2xladnd6sz4zk645y7wxd08i";
-  };
-
-  packageName = "cl-form-types";
-
-  asdFilesToKeep = ["cl-form-types.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM cl-form-types DESCRIPTION
-    Library for determining types of Common Lisp forms. SHA256
-    1w1918a9rjw9dp5qpwq3mf0p4yyd2xladnd6sz4zk645y7wxd08i URL
-    http://beta.quicklisp.org/archive/cl-form-types/2021-12-09/cl-form-types-20211209-git.tgz
-    MD5 2c128061c2e8a97b70fbf8939708d53e NAME cl-form-types FILENAME
-    cl-form-types DEPS
-    ((NAME agutil FILENAME agutil) (NAME alexandria FILENAME alexandria)
-     (NAME anaphora FILENAME anaphora) (NAME arrows FILENAME arrows)
-     (NAME cl-environments FILENAME cl-environments)
-     (NAME closer-mop FILENAME closer-mop)
-     (NAME collectors FILENAME collectors) (NAME fiveam FILENAME fiveam)
-     (NAME introspect-environment FILENAME introspect-environment)
-     (NAME iterate FILENAME iterate) (NAME optima FILENAME optima)
-     (NAME parse-declarations-1.0 FILENAME parse-declarations-1_dot_0)
-     (NAME symbol-munger FILENAME symbol-munger))
-    DEPENDENCIES
-    (agutil alexandria anaphora arrows cl-environments closer-mop collectors
-     fiveam introspect-environment iterate optima parse-declarations-1.0
-     symbol-munger)
-    VERSION 20211209-git SIBLINGS NIL PARASITES (cl-form-types/test)) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-fuse-meta-fs.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-fuse-meta-fs.nix
deleted file mode 100644
index 2e76fd28c6cb..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-fuse-meta-fs.nix
+++ /dev/null
@@ -1,41 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "cl-fuse-meta-fs";
-  version = "20190710-git";
-
-  description = "CFFI bindings to FUSE (Filesystem in user space)";
-
-  deps = [ args."alexandria" args."babel" args."bordeaux-threads" args."cffi" args."cffi-grovel" args."cffi-toolchain" args."cl-fuse" args."cl-utilities" args."iterate" args."pcall" args."pcall-queue" args."trivial-backtrace" args."trivial-features" args."trivial-utf-8" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/cl-fuse-meta-fs/2019-07-10/cl-fuse-meta-fs-20190710-git.tgz";
-    sha256 = "1c2nyxj7q8njxydn4xiagvnb21zhb1l07q7nhfw0qs2qk6dkasq7";
-  };
-
-  packageName = "cl-fuse-meta-fs";
-
-  asdFilesToKeep = ["cl-fuse-meta-fs.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM cl-fuse-meta-fs DESCRIPTION
-    CFFI bindings to FUSE (Filesystem in user space) SHA256
-    1c2nyxj7q8njxydn4xiagvnb21zhb1l07q7nhfw0qs2qk6dkasq7 URL
-    http://beta.quicklisp.org/archive/cl-fuse-meta-fs/2019-07-10/cl-fuse-meta-fs-20190710-git.tgz
-    MD5 461f7023274fb273e6c759e881bdd636 NAME cl-fuse-meta-fs FILENAME
-    cl-fuse-meta-fs DEPS
-    ((NAME alexandria FILENAME alexandria) (NAME babel FILENAME babel)
-     (NAME bordeaux-threads FILENAME bordeaux-threads)
-     (NAME cffi FILENAME cffi) (NAME cffi-grovel FILENAME cffi-grovel)
-     (NAME cffi-toolchain FILENAME cffi-toolchain)
-     (NAME cl-fuse FILENAME cl-fuse) (NAME cl-utilities FILENAME cl-utilities)
-     (NAME iterate FILENAME iterate) (NAME pcall FILENAME pcall)
-     (NAME pcall-queue FILENAME pcall-queue)
-     (NAME trivial-backtrace FILENAME trivial-backtrace)
-     (NAME trivial-features FILENAME trivial-features)
-     (NAME trivial-utf-8 FILENAME trivial-utf-8))
-    DEPENDENCIES
-    (alexandria babel bordeaux-threads cffi cffi-grovel cffi-toolchain cl-fuse
-     cl-utilities iterate pcall pcall-queue trivial-backtrace trivial-features
-     trivial-utf-8)
-    VERSION 20190710-git SIBLINGS NIL PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-fuse.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-fuse.nix
deleted file mode 100644
index 08c0c8e5c852..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-fuse.nix
+++ /dev/null
@@ -1,36 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "cl-fuse";
-  version = "20200925-git";
-
-  description = "CFFI bindings to FUSE (Filesystem in user space)";
-
-  deps = [ args."alexandria" args."babel" args."bordeaux-threads" args."cffi" args."cffi-grovel" args."cffi-toolchain" args."cl-utilities" args."iterate" args."trivial-backtrace" args."trivial-features" args."trivial-utf-8" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/cl-fuse/2020-09-25/cl-fuse-20200925-git.tgz";
-    sha256 = "1c5cn0l0md77asw804qssylcbbphw81mfpbijydd0s25q6xga7dp";
-  };
-
-  packageName = "cl-fuse";
-
-  asdFilesToKeep = ["cl-fuse.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM cl-fuse DESCRIPTION CFFI bindings to FUSE (Filesystem in user space)
-    SHA256 1c5cn0l0md77asw804qssylcbbphw81mfpbijydd0s25q6xga7dp URL
-    http://beta.quicklisp.org/archive/cl-fuse/2020-09-25/cl-fuse-20200925-git.tgz
-    MD5 0342ea914801f40d804629170a435e54 NAME cl-fuse FILENAME cl-fuse DEPS
-    ((NAME alexandria FILENAME alexandria) (NAME babel FILENAME babel)
-     (NAME bordeaux-threads FILENAME bordeaux-threads)
-     (NAME cffi FILENAME cffi) (NAME cffi-grovel FILENAME cffi-grovel)
-     (NAME cffi-toolchain FILENAME cffi-toolchain)
-     (NAME cl-utilities FILENAME cl-utilities) (NAME iterate FILENAME iterate)
-     (NAME trivial-backtrace FILENAME trivial-backtrace)
-     (NAME trivial-features FILENAME trivial-features)
-     (NAME trivial-utf-8 FILENAME trivial-utf-8))
-    DEPENDENCIES
-    (alexandria babel bordeaux-threads cffi cffi-grovel cffi-toolchain
-     cl-utilities iterate trivial-backtrace trivial-features trivial-utf-8)
-    VERSION 20200925-git SIBLINGS NIL PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-fuzz.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-fuzz.nix
deleted file mode 100644
index d55859d3853e..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-fuzz.nix
+++ /dev/null
@@ -1,26 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "cl-fuzz";
-  version = "20181018-git";
-
-  description = "A Fuzz Testing Framework";
-
-  deps = [ args."alexandria" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/cl-fuzz/2018-10-18/cl-fuzz-20181018-git.tgz";
-    sha256 = "1kxh73lbnhzzpflab1vpxsmg4qia9n42sij0459iksi29kmjxjpz";
-  };
-
-  packageName = "cl-fuzz";
-
-  asdFilesToKeep = ["cl-fuzz.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM cl-fuzz DESCRIPTION A Fuzz Testing Framework SHA256
-    1kxh73lbnhzzpflab1vpxsmg4qia9n42sij0459iksi29kmjxjpz URL
-    http://beta.quicklisp.org/archive/cl-fuzz/2018-10-18/cl-fuzz-20181018-git.tgz
-    MD5 22e715b370ea886bbff1e09db20c4e32 NAME cl-fuzz FILENAME cl-fuzz DEPS
-    ((NAME alexandria FILENAME alexandria)) DEPENDENCIES (alexandria) VERSION
-    20181018-git SIBLINGS NIL PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-geometry.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-geometry.nix
deleted file mode 100644
index 3442df57a1ae..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-geometry.nix
+++ /dev/null
@@ -1,27 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "cl-geometry";
-  version = "20160531-git";
-
-  description = "Library for two dimensional geometry.";
-
-  deps = [ args."iterate" args."trees" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/cl-geometry/2016-05-31/cl-geometry-20160531-git.tgz";
-    sha256 = "0v451w2dx9llvd2kgp3m5jn2n8n0xwynxf8zl436cngh63ag6s7p";
-  };
-
-  packageName = "cl-geometry";
-
-  asdFilesToKeep = ["cl-geometry.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM cl-geometry DESCRIPTION Library for two dimensional geometry. SHA256
-    0v451w2dx9llvd2kgp3m5jn2n8n0xwynxf8zl436cngh63ag6s7p URL
-    http://beta.quicklisp.org/archive/cl-geometry/2016-05-31/cl-geometry-20160531-git.tgz
-    MD5 c0aaccbb4e2df6c504e6c1cd15155353 NAME cl-geometry FILENAME cl-geometry
-    DEPS ((NAME iterate FILENAME iterate) (NAME trees FILENAME trees))
-    DEPENDENCIES (iterate trees) VERSION 20160531-git SIBLINGS
-    (cl-geometry-tests) PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-gobject-introspection.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-gobject-introspection.nix
deleted file mode 100644
index 15b16ef84c1a..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-gobject-introspection.nix
+++ /dev/null
@@ -1,32 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "cl-gobject-introspection";
-  version = "20210124-git";
-
-  description = "Binding to GObjectIntrospection";
-
-  deps = [ args."alexandria" args."babel" args."cffi" args."iterate" args."trivial-features" args."trivial-garbage" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/cl-gobject-introspection/2021-01-24/cl-gobject-introspection-20210124-git.tgz";
-    sha256 = "1hrc451d9xdp3pfmwalw32r3iqfvw6ccy665kl5560lihwmk59w0";
-  };
-
-  packageName = "cl-gobject-introspection";
-
-  asdFilesToKeep = ["cl-gobject-introspection.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM cl-gobject-introspection DESCRIPTION Binding to GObjectIntrospection
-    SHA256 1hrc451d9xdp3pfmwalw32r3iqfvw6ccy665kl5560lihwmk59w0 URL
-    http://beta.quicklisp.org/archive/cl-gobject-introspection/2021-01-24/cl-gobject-introspection-20210124-git.tgz
-    MD5 ad760b820c86142c0a1309af29541680 NAME cl-gobject-introspection FILENAME
-    cl-gobject-introspection DEPS
-    ((NAME alexandria FILENAME alexandria) (NAME babel FILENAME babel)
-     (NAME cffi FILENAME cffi) (NAME iterate FILENAME iterate)
-     (NAME trivial-features FILENAME trivial-features)
-     (NAME trivial-garbage FILENAME trivial-garbage))
-    DEPENDENCIES
-    (alexandria babel cffi iterate trivial-features trivial-garbage) VERSION
-    20210124-git SIBLINGS (cl-gobject-introspection-test) PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-heap.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-heap.nix
deleted file mode 100644
index da66b895bff1..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-heap.nix
+++ /dev/null
@@ -1,26 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "cl-heap";
-  version = "0.1.6";
-
-  description = "An implementation of heap and priority queue data structures.";
-
-  deps = [ ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/cl-heap/2013-03-12/cl-heap-0.1.6.tgz";
-    sha256 = "163hb07p2nxz126rpq3cj5dyala24n0by5i5786n2qcr1w0bak4i";
-  };
-
-  packageName = "cl-heap";
-
-  asdFilesToKeep = ["cl-heap.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM cl-heap DESCRIPTION
-    An implementation of heap and priority queue data structures. SHA256
-    163hb07p2nxz126rpq3cj5dyala24n0by5i5786n2qcr1w0bak4i URL
-    http://beta.quicklisp.org/archive/cl-heap/2013-03-12/cl-heap-0.1.6.tgz MD5
-    a12d71f7bbe22d6acdcc7cf36fb907b0 NAME cl-heap FILENAME cl-heap DEPS NIL
-    DEPENDENCIES NIL VERSION 0.1.6 SIBLINGS (cl-heap-tests) PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-hooks.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-hooks.nix
deleted file mode 100644
index 58e7b2d44b2e..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-hooks.nix
+++ /dev/null
@@ -1,35 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "cl-hooks";
-  version = "architecture.hooks-20181210-git";
-
-  parasites = [ "cl-hooks/test" ];
-
-  description = "This system provides the hooks extension point
-mechanism (as known, e.g., from GNU Emacs).";
-
-  deps = [ args."alexandria" args."anaphora" args."closer-mop" args."fiveam" args."let-plus" args."trivial-garbage" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/architecture.hooks/2018-12-10/architecture.hooks-20181210-git.tgz";
-    sha256 = "04l8rjmgsd7i580rpm1wndz1jcvfqrmwllnkh3h7als3azi3q2ns";
-  };
-
-  packageName = "cl-hooks";
-
-  asdFilesToKeep = ["cl-hooks.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM cl-hooks DESCRIPTION This system provides the hooks extension point
-mechanism (as known, e.g., from GNU Emacs).
-    SHA256 04l8rjmgsd7i580rpm1wndz1jcvfqrmwllnkh3h7als3azi3q2ns URL
-    http://beta.quicklisp.org/archive/architecture.hooks/2018-12-10/architecture.hooks-20181210-git.tgz
-    MD5 698bdb1309cae19fb8f0e1e425ba4cd9 NAME cl-hooks FILENAME cl-hooks DEPS
-    ((NAME alexandria FILENAME alexandria) (NAME anaphora FILENAME anaphora)
-     (NAME closer-mop FILENAME closer-mop) (NAME fiveam FILENAME fiveam)
-     (NAME let-plus FILENAME let-plus)
-     (NAME trivial-garbage FILENAME trivial-garbage))
-    DEPENDENCIES
-    (alexandria anaphora closer-mop fiveam let-plus trivial-garbage) VERSION
-    architecture.hooks-20181210-git SIBLINGS NIL PARASITES (cl-hooks/test)) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-html-diff.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-html-diff.nix
deleted file mode 100644
index ebefee3931ce..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-html-diff.nix
+++ /dev/null
@@ -1,26 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "cl-html-diff";
-  version = "20130128-git";
-
-  description = "System lacks description";
-
-  deps = [ args."cl-difflib" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/cl-html-diff/2013-01-28/cl-html-diff-20130128-git.tgz";
-    sha256 = "0dbqfgfl2qmlk91fncjj804md2crvj0bsvkdxfrsybrhn6dmikci";
-  };
-
-  packageName = "cl-html-diff";
-
-  asdFilesToKeep = ["cl-html-diff.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM cl-html-diff DESCRIPTION System lacks description SHA256
-    0dbqfgfl2qmlk91fncjj804md2crvj0bsvkdxfrsybrhn6dmikci URL
-    http://beta.quicklisp.org/archive/cl-html-diff/2013-01-28/cl-html-diff-20130128-git.tgz
-    MD5 70f93e60e968dad9a44ede60856dc343 NAME cl-html-diff FILENAME
-    cl-html-diff DEPS ((NAME cl-difflib FILENAME cl-difflib)) DEPENDENCIES
-    (cl-difflib) VERSION 20130128-git SIBLINGS NIL PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-html-parse.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-html-parse.nix
deleted file mode 100644
index 3ba840fe8396..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-html-parse.nix
+++ /dev/null
@@ -1,26 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "cl-html-parse";
-  version = "20200925-git";
-
-  description = "HTML Parser";
-
-  deps = [ ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/cl-html-parse/2020-09-25/cl-html-parse-20200925-git.tgz";
-    sha256 = "14pfd4gwjb8ywr79dqrcznw6h8a1il3g5b6cm5x9aiyr49zdv15f";
-  };
-
-  packageName = "cl-html-parse";
-
-  asdFilesToKeep = ["cl-html-parse.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM cl-html-parse DESCRIPTION HTML Parser SHA256
-    14pfd4gwjb8ywr79dqrcznw6h8a1il3g5b6cm5x9aiyr49zdv15f URL
-    http://beta.quicklisp.org/archive/cl-html-parse/2020-09-25/cl-html-parse-20200925-git.tgz
-    MD5 3333eedf037a48900c663fceae3e4cfd NAME cl-html-parse FILENAME
-    cl-html-parse DEPS NIL DEPENDENCIES NIL VERSION 20200925-git SIBLINGS NIL
-    PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-html5-parser.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-html5-parser.nix
deleted file mode 100644
index 527d1a401930..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-html5-parser.nix
+++ /dev/null
@@ -1,32 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "cl-html5-parser";
-  version = "20190521-git";
-
-  description = "A HTML5 parser for Common Lisp";
-
-  deps = [ args."cl-ppcre" args."flexi-streams" args."string-case" args."trivial-gray-streams" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/cl-html5-parser/2019-05-21/cl-html5-parser-20190521-git.tgz";
-    sha256 = "055jz0yqgjncvy2dxvnwg4iwdvmfsvkch46v58nymz5gi8gaaz7p";
-  };
-
-  packageName = "cl-html5-parser";
-
-  asdFilesToKeep = ["cl-html5-parser.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM cl-html5-parser DESCRIPTION A HTML5 parser for Common Lisp SHA256
-    055jz0yqgjncvy2dxvnwg4iwdvmfsvkch46v58nymz5gi8gaaz7p URL
-    http://beta.quicklisp.org/archive/cl-html5-parser/2019-05-21/cl-html5-parser-20190521-git.tgz
-    MD5 149e5609d0a96c867fac6c22693c5e30 NAME cl-html5-parser FILENAME
-    cl-html5-parser DEPS
-    ((NAME cl-ppcre FILENAME cl-ppcre)
-     (NAME flexi-streams FILENAME flexi-streams)
-     (NAME string-case FILENAME string-case)
-     (NAME trivial-gray-streams FILENAME trivial-gray-streams))
-    DEPENDENCIES (cl-ppcre flexi-streams string-case trivial-gray-streams)
-    VERSION 20190521-git SIBLINGS (cl-html5-parser-cxml cl-html5-parser-tests)
-    PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-interpol.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-interpol.nix
deleted file mode 100644
index fe9fa81b6712..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-interpol.nix
+++ /dev/null
@@ -1,32 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "cl-interpol";
-  version = "20201220-git";
-
-  parasites = [ "cl-interpol-test" ];
-
-  description = "System lacks description";
-
-  deps = [ args."cl-ppcre" args."cl-unicode" args."flexi-streams" args."named-readtables" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/cl-interpol/2020-12-20/cl-interpol-20201220-git.tgz";
-    sha256 = "1q3zxsbl5br08lv481jsqmq8r9yayp44x6icixcxx5sdz6fbcd3d";
-  };
-
-  packageName = "cl-interpol";
-
-  asdFilesToKeep = ["cl-interpol.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM cl-interpol DESCRIPTION System lacks description SHA256
-    1q3zxsbl5br08lv481jsqmq8r9yayp44x6icixcxx5sdz6fbcd3d URL
-    http://beta.quicklisp.org/archive/cl-interpol/2020-12-20/cl-interpol-20201220-git.tgz
-    MD5 d678c521474e1774185b78883396da49 NAME cl-interpol FILENAME cl-interpol
-    DEPS
-    ((NAME cl-ppcre FILENAME cl-ppcre) (NAME cl-unicode FILENAME cl-unicode)
-     (NAME flexi-streams FILENAME flexi-streams)
-     (NAME named-readtables FILENAME named-readtables))
-    DEPENDENCIES (cl-ppcre cl-unicode flexi-streams named-readtables) VERSION
-    20201220-git SIBLINGS NIL PARASITES (cl-interpol-test)) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-jpeg.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-jpeg.nix
deleted file mode 100644
index 086ebde35952..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-jpeg.nix
+++ /dev/null
@@ -1,26 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "cl-jpeg";
-  version = "20170630-git";
-
-  description = "A self-contained baseline JPEG codec implementation";
-
-  deps = [ ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/cl-jpeg/2017-06-30/cl-jpeg-20170630-git.tgz";
-    sha256 = "1wwzn2valhh5ka7qkmab59pb1ijagcj296553fp8z03migl0sil0";
-  };
-
-  packageName = "cl-jpeg";
-
-  asdFilesToKeep = ["cl-jpeg.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM cl-jpeg DESCRIPTION
-    A self-contained baseline JPEG codec implementation SHA256
-    1wwzn2valhh5ka7qkmab59pb1ijagcj296553fp8z03migl0sil0 URL
-    http://beta.quicklisp.org/archive/cl-jpeg/2017-06-30/cl-jpeg-20170630-git.tgz
-    MD5 b6eb4ca5d893f428b5bbe46cd49f76ad NAME cl-jpeg FILENAME cl-jpeg DEPS NIL
-    DEPENDENCIES NIL VERSION 20170630-git SIBLINGS NIL PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-json.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-json.nix
deleted file mode 100644
index ab76c8d88432..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-json.nix
+++ /dev/null
@@ -1,29 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "cl-json";
-  version = "20141217-git";
-
-  parasites = [ "cl-json.test" ];
-
-  description = "JSON in Lisp. JSON (JavaScript Object Notation) is a lightweight data-interchange format.";
-
-  deps = [ args."fiveam" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/cl-json/2014-12-17/cl-json-20141217-git.tgz";
-    sha256 = "00cfppyi6njsbpv1x03jcv4zwplg0q1138174l3wjkvi3gsql17g";
-  };
-
-  packageName = "cl-json";
-
-  asdFilesToKeep = ["cl-json.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM cl-json DESCRIPTION
-    JSON in Lisp. JSON (JavaScript Object Notation) is a lightweight data-interchange format.
-    SHA256 00cfppyi6njsbpv1x03jcv4zwplg0q1138174l3wjkvi3gsql17g URL
-    http://beta.quicklisp.org/archive/cl-json/2014-12-17/cl-json-20141217-git.tgz
-    MD5 9d873fa462b93c76d90642d8e3fb4881 NAME cl-json FILENAME cl-json DEPS
-    ((NAME fiveam FILENAME fiveam)) DEPENDENCIES (fiveam) VERSION 20141217-git
-    SIBLINGS NIL PARASITES (cl-json.test)) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-l10n-cldr.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-l10n-cldr.nix
deleted file mode 100644
index 8ef07f336ceb..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-l10n-cldr.nix
+++ /dev/null
@@ -1,27 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "cl-l10n-cldr";
-  version = "20120909-darcs";
-
-  description = "The necessary CLDR files for cl-l10n packaged in a QuickLisp friendly way.";
-
-  deps = [ ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/cl-l10n-cldr/2012-09-09/cl-l10n-cldr-20120909-darcs.tgz";
-    sha256 = "03l81bx8izvzwzw0qah34l4k47l4gmhr917phhhl81qp55x7zbiv";
-  };
-
-  packageName = "cl-l10n-cldr";
-
-  asdFilesToKeep = ["cl-l10n-cldr.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM cl-l10n-cldr DESCRIPTION
-    The necessary CLDR files for cl-l10n packaged in a QuickLisp friendly way.
-    SHA256 03l81bx8izvzwzw0qah34l4k47l4gmhr917phhhl81qp55x7zbiv URL
-    http://beta.quicklisp.org/archive/cl-l10n-cldr/2012-09-09/cl-l10n-cldr-20120909-darcs.tgz
-    MD5 466e776f2f6b931d9863e1fc4d0b514e NAME cl-l10n-cldr FILENAME
-    cl-l10n-cldr DEPS NIL DEPENDENCIES NIL VERSION 20120909-darcs SIBLINGS NIL
-    PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-l10n.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-l10n.nix
deleted file mode 100644
index fd0d22547a6f..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-l10n.nix
+++ /dev/null
@@ -1,43 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "cl-l10n";
-  version = "20211209-git";
-
-  parasites = [ "cl-l10n/test" ];
-
-  description = "Portable CL Locale Support";
-
-  deps = [ args."alexandria" args."babel" args."bordeaux-threads" args."cl-fad" args."cl-l10n-cldr" args."cl-ppcre" args."closer-mop" args."closure-common" args."cxml" args."flexi-streams" args."hu_dot_dwim_dot_stefil" args."iterate" args."local-time" args."metabang-bind" args."parse-number" args."puri" args."trivial-features" args."trivial-gray-streams" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/cl-l10n/2021-12-09/cl-l10n-20211209-git.tgz";
-    sha256 = "0l67xg282pim6167g27zcqk4xj51cfpmcbzc8bjg8933w42fdjf4";
-  };
-
-  packageName = "cl-l10n";
-
-  asdFilesToKeep = ["cl-l10n.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM cl-l10n DESCRIPTION Portable CL Locale Support SHA256
-    0l67xg282pim6167g27zcqk4xj51cfpmcbzc8bjg8933w42fdjf4 URL
-    http://beta.quicklisp.org/archive/cl-l10n/2021-12-09/cl-l10n-20211209-git.tgz
-    MD5 e575bb4ff3a6d0bbba5220c631f9c83a NAME cl-l10n FILENAME cl-l10n DEPS
-    ((NAME alexandria FILENAME alexandria) (NAME babel FILENAME babel)
-     (NAME bordeaux-threads FILENAME bordeaux-threads)
-     (NAME cl-fad FILENAME cl-fad) (NAME cl-l10n-cldr FILENAME cl-l10n-cldr)
-     (NAME cl-ppcre FILENAME cl-ppcre) (NAME closer-mop FILENAME closer-mop)
-     (NAME closure-common FILENAME closure-common) (NAME cxml FILENAME cxml)
-     (NAME flexi-streams FILENAME flexi-streams)
-     (NAME hu.dwim.stefil FILENAME hu_dot_dwim_dot_stefil)
-     (NAME iterate FILENAME iterate) (NAME local-time FILENAME local-time)
-     (NAME metabang-bind FILENAME metabang-bind)
-     (NAME parse-number FILENAME parse-number) (NAME puri FILENAME puri)
-     (NAME trivial-features FILENAME trivial-features)
-     (NAME trivial-gray-streams FILENAME trivial-gray-streams))
-    DEPENDENCIES
-    (alexandria babel bordeaux-threads cl-fad cl-l10n-cldr cl-ppcre closer-mop
-     closure-common cxml flexi-streams hu.dwim.stefil iterate local-time
-     metabang-bind parse-number puri trivial-features trivial-gray-streams)
-    VERSION 20211209-git SIBLINGS NIL PARASITES (cl-l10n/test)) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-libuv.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-libuv.nix
deleted file mode 100644
index a8d15b0629ff..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-libuv.nix
+++ /dev/null
@@ -1,31 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "cl-libuv";
-  version = "20200610-git";
-
-  description = "Low-level libuv bindings for Common Lisp.";
-
-  deps = [ args."alexandria" args."babel" args."cffi" args."cffi-grovel" args."cffi-toolchain" args."trivial-features" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/cl-libuv/2020-06-10/cl-libuv-20200610-git.tgz";
-    sha256 = "1ywk1z1ibyk3z0irg5azjrjk3x08ixv30fx4qa0p500fmbfhha19";
-  };
-
-  packageName = "cl-libuv";
-
-  asdFilesToKeep = ["cl-libuv.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM cl-libuv DESCRIPTION Low-level libuv bindings for Common Lisp.
-    SHA256 1ywk1z1ibyk3z0irg5azjrjk3x08ixv30fx4qa0p500fmbfhha19 URL
-    http://beta.quicklisp.org/archive/cl-libuv/2020-06-10/cl-libuv-20200610-git.tgz
-    MD5 e6b3f8ffa7b8fb642350f09d1afa7f38 NAME cl-libuv FILENAME cl-libuv DEPS
-    ((NAME alexandria FILENAME alexandria) (NAME babel FILENAME babel)
-     (NAME cffi FILENAME cffi) (NAME cffi-grovel FILENAME cffi-grovel)
-     (NAME cffi-toolchain FILENAME cffi-toolchain)
-     (NAME trivial-features FILENAME trivial-features))
-    DEPENDENCIES
-    (alexandria babel cffi cffi-grovel cffi-toolchain trivial-features) VERSION
-    20200610-git SIBLINGS NIL PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-locale.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-locale.nix
deleted file mode 100644
index 4c053804ea50..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-locale.nix
+++ /dev/null
@@ -1,38 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "cl-locale";
-  version = "20151031-git";
-
-  description = "Simple i18n library for Common Lisp";
-
-  deps = [ args."alexandria" args."anaphora" args."arnesi" args."cl-annot" args."cl-syntax" args."cl-syntax-annot" args."closer-mop" args."collectors" args."iterate" args."named-readtables" args."symbol-munger" args."trivial-types" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/cl-locale/2015-10-31/cl-locale-20151031-git.tgz";
-    sha256 = "14j4xazrx2v5cj4q4irfwra0ksvl2l0s7073fimpwc0xqjfsnjpg";
-  };
-
-  packageName = "cl-locale";
-
-  asdFilesToKeep = ["cl-locale.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM cl-locale DESCRIPTION Simple i18n library for Common Lisp SHA256
-    14j4xazrx2v5cj4q4irfwra0ksvl2l0s7073fimpwc0xqjfsnjpg URL
-    http://beta.quicklisp.org/archive/cl-locale/2015-10-31/cl-locale-20151031-git.tgz
-    MD5 7a8fb3678938af6dc5c9fd6431428aff NAME cl-locale FILENAME cl-locale DEPS
-    ((NAME alexandria FILENAME alexandria) (NAME anaphora FILENAME anaphora)
-     (NAME arnesi FILENAME arnesi) (NAME cl-annot FILENAME cl-annot)
-     (NAME cl-syntax FILENAME cl-syntax)
-     (NAME cl-syntax-annot FILENAME cl-syntax-annot)
-     (NAME closer-mop FILENAME closer-mop)
-     (NAME collectors FILENAME collectors) (NAME iterate FILENAME iterate)
-     (NAME named-readtables FILENAME named-readtables)
-     (NAME symbol-munger FILENAME symbol-munger)
-     (NAME trivial-types FILENAME trivial-types))
-    DEPENDENCIES
-    (alexandria anaphora arnesi cl-annot cl-syntax cl-syntax-annot closer-mop
-     collectors iterate named-readtables symbol-munger trivial-types)
-    VERSION 20151031-git SIBLINGS (cl-locale-syntax cl-locale-test) PARASITES
-    NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-markup.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-markup.nix
deleted file mode 100644
index 47d19e5da7a6..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-markup.nix
+++ /dev/null
@@ -1,26 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "cl-markup";
-  version = "20131003-git";
-
-  description = "System lacks description";
-
-  deps = [ ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/cl-markup/2013-10-03/cl-markup-20131003-git.tgz";
-    sha256 = "1ik3a5k6axq941zbf6zyig553i5gnypbcxdq9l7bfxp8w18vbj0r";
-  };
-
-  packageName = "cl-markup";
-
-  asdFilesToKeep = ["cl-markup.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM cl-markup DESCRIPTION System lacks description SHA256
-    1ik3a5k6axq941zbf6zyig553i5gnypbcxdq9l7bfxp8w18vbj0r URL
-    http://beta.quicklisp.org/archive/cl-markup/2013-10-03/cl-markup-20131003-git.tgz
-    MD5 3ec36b8e15435933f614959032987848 NAME cl-markup FILENAME cl-markup DEPS
-    NIL DEPENDENCIES NIL VERSION 20131003-git SIBLINGS (cl-markup-test)
-    PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-mustache.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-mustache.nix
deleted file mode 100644
index 1e22ad9dad08..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-mustache.nix
+++ /dev/null
@@ -1,26 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "cl-mustache";
-  version = "20200325-git";
-
-  description = "Mustache Template Renderer";
-
-  deps = [ args."uiop" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/cl-mustache/2020-03-25/cl-mustache-20200325-git.tgz";
-    sha256 = "1x1rsmgqc39imx4ay3b35dzvzccaqjayz90qv2cylqbbq9sg9arr";
-  };
-
-  packageName = "cl-mustache";
-
-  asdFilesToKeep = ["cl-mustache.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM cl-mustache DESCRIPTION Mustache Template Renderer SHA256
-    1x1rsmgqc39imx4ay3b35dzvzccaqjayz90qv2cylqbbq9sg9arr URL
-    http://beta.quicklisp.org/archive/cl-mustache/2020-03-25/cl-mustache-20200325-git.tgz
-    MD5 52381d17458d88d6a8b760f351bf517d NAME cl-mustache FILENAME cl-mustache
-    DEPS ((NAME uiop FILENAME uiop)) DEPENDENCIES (uiop) VERSION 20200325-git
-    SIBLINGS (cl-mustache-test) PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-mysql.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-mysql.nix
deleted file mode 100644
index 5e496535ccec..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-mysql.nix
+++ /dev/null
@@ -1,29 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "cl-mysql";
-  version = "20200610-git";
-
-  description = "Common Lisp MySQL library bindings";
-
-  deps = [ args."alexandria" args."babel" args."cffi" args."trivial-features" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/cl-mysql/2020-06-10/cl-mysql-20200610-git.tgz";
-    sha256 = "0fzyqzz01zn9fy8v766lib3dghg9yq5wawa0hcmxslms7knzxz7w";
-  };
-
-  packageName = "cl-mysql";
-
-  asdFilesToKeep = ["cl-mysql.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM cl-mysql DESCRIPTION Common Lisp MySQL library bindings SHA256
-    0fzyqzz01zn9fy8v766lib3dghg9yq5wawa0hcmxslms7knzxz7w URL
-    http://beta.quicklisp.org/archive/cl-mysql/2020-06-10/cl-mysql-20200610-git.tgz
-    MD5 05d5ed6b48edbafd258e189d7868822e NAME cl-mysql FILENAME cl-mysql DEPS
-    ((NAME alexandria FILENAME alexandria) (NAME babel FILENAME babel)
-     (NAME cffi FILENAME cffi)
-     (NAME trivial-features FILENAME trivial-features))
-    DEPENDENCIES (alexandria babel cffi trivial-features) VERSION 20200610-git
-    SIBLINGS (cl-mysql-test) PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-num-utils.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-num-utils.nix
deleted file mode 100644
index 8d0a77d85ea9..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-num-utils.nix
+++ /dev/null
@@ -1,34 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "cl-num-utils";
-  version = "20210531-git";
-
-  parasites = [ "cl-num-utils-tests" ];
-
-  description = "Numerical utilities for Common Lisp";
-
-  deps = [ args."alexandria" args."anaphora" args."array-operations" args."cl-slice" args."clunit" args."let-plus" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/cl-num-utils/2021-05-31/cl-num-utils-20210531-git.tgz";
-    sha256 = "1snhwhnrkmavkhwd0dx7a958xdiwcc0a84fj0k5xqj99ksd9hp8x";
-  };
-
-  packageName = "cl-num-utils";
-
-  asdFilesToKeep = ["cl-num-utils.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM cl-num-utils DESCRIPTION Numerical utilities for Common Lisp SHA256
-    1snhwhnrkmavkhwd0dx7a958xdiwcc0a84fj0k5xqj99ksd9hp8x URL
-    http://beta.quicklisp.org/archive/cl-num-utils/2021-05-31/cl-num-utils-20210531-git.tgz
-    MD5 1977251bf552ba82005de0dc2f37d130 NAME cl-num-utils FILENAME
-    cl-num-utils DEPS
-    ((NAME alexandria FILENAME alexandria) (NAME anaphora FILENAME anaphora)
-     (NAME array-operations FILENAME array-operations)
-     (NAME cl-slice FILENAME cl-slice) (NAME clunit FILENAME clunit)
-     (NAME let-plus FILENAME let-plus))
-    DEPENDENCIES
-    (alexandria anaphora array-operations cl-slice clunit let-plus) VERSION
-    20210531-git SIBLINGS NIL PARASITES (cl-num-utils-tests)) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-paths-ttf.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-paths-ttf.nix
deleted file mode 100644
index 1a9ddf4cb674..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-paths-ttf.nix
+++ /dev/null
@@ -1,28 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "cl-paths-ttf";
-  version = "cl-vectors-20180228-git";
-
-  description = "cl-paths-ttf: vectorial paths manipulation";
-
-  deps = [ args."cl-paths" args."zpb-ttf" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/cl-vectors/2018-02-28/cl-vectors-20180228-git.tgz";
-    sha256 = "0fcypjfzqra8ryb4nx1vx1fqy7fwvyz3f443qkjg2z81akhkscly";
-  };
-
-  packageName = "cl-paths-ttf";
-
-  asdFilesToKeep = ["cl-paths-ttf.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM cl-paths-ttf DESCRIPTION cl-paths-ttf: vectorial paths manipulation
-    SHA256 0fcypjfzqra8ryb4nx1vx1fqy7fwvyz3f443qkjg2z81akhkscly URL
-    http://beta.quicklisp.org/archive/cl-vectors/2018-02-28/cl-vectors-20180228-git.tgz
-    MD5 9d9629786d4f2c19c15cc6cd3049c343 NAME cl-paths-ttf FILENAME
-    cl-paths-ttf DEPS
-    ((NAME cl-paths FILENAME cl-paths) (NAME zpb-ttf FILENAME zpb-ttf))
-    DEPENDENCIES (cl-paths zpb-ttf) VERSION cl-vectors-20180228-git SIBLINGS
-    (cl-aa-misc cl-aa cl-paths cl-vectors) PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-paths.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-paths.nix
deleted file mode 100644
index b4caabe8b2ee..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-paths.nix
+++ /dev/null
@@ -1,26 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "cl-paths";
-  version = "cl-vectors-20180228-git";
-
-  description = "cl-paths: vectorial paths manipulation";
-
-  deps = [ ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/cl-vectors/2018-02-28/cl-vectors-20180228-git.tgz";
-    sha256 = "0fcypjfzqra8ryb4nx1vx1fqy7fwvyz3f443qkjg2z81akhkscly";
-  };
-
-  packageName = "cl-paths";
-
-  asdFilesToKeep = ["cl-paths.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM cl-paths DESCRIPTION cl-paths: vectorial paths manipulation SHA256
-    0fcypjfzqra8ryb4nx1vx1fqy7fwvyz3f443qkjg2z81akhkscly URL
-    http://beta.quicklisp.org/archive/cl-vectors/2018-02-28/cl-vectors-20180228-git.tgz
-    MD5 9d9629786d4f2c19c15cc6cd3049c343 NAME cl-paths FILENAME cl-paths DEPS
-    NIL DEPENDENCIES NIL VERSION cl-vectors-20180228-git SIBLINGS
-    (cl-aa-misc cl-aa cl-paths-ttf cl-vectors) PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-pattern.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-pattern.nix
deleted file mode 100644
index c53bd984241d..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-pattern.nix
+++ /dev/null
@@ -1,34 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "cl-pattern";
-  version = "20140713-git";
-
-  description = "System lacks description";
-
-  deps = [ args."alexandria" args."cl-annot" args."cl-syntax" args."cl-syntax-annot" args."named-readtables" args."trivial-types" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/cl-pattern/2014-07-13/cl-pattern-20140713-git.tgz";
-    sha256 = "08z7jccjcq41i3i5zdsgixqnijgyrb4q7hm7gq8l5xb1sr3kj72v";
-  };
-
-  packageName = "cl-pattern";
-
-  asdFilesToKeep = ["cl-pattern.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM cl-pattern DESCRIPTION System lacks description SHA256
-    08z7jccjcq41i3i5zdsgixqnijgyrb4q7hm7gq8l5xb1sr3kj72v URL
-    http://beta.quicklisp.org/archive/cl-pattern/2014-07-13/cl-pattern-20140713-git.tgz
-    MD5 cf8e74def535c66a358df1ada9d89785 NAME cl-pattern FILENAME cl-pattern
-    DEPS
-    ((NAME alexandria FILENAME alexandria) (NAME cl-annot FILENAME cl-annot)
-     (NAME cl-syntax FILENAME cl-syntax)
-     (NAME cl-syntax-annot FILENAME cl-syntax-annot)
-     (NAME named-readtables FILENAME named-readtables)
-     (NAME trivial-types FILENAME trivial-types))
-    DEPENDENCIES
-    (alexandria cl-annot cl-syntax cl-syntax-annot named-readtables
-     trivial-types)
-    VERSION 20140713-git SIBLINGS (cl-pattern-benchmark) PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-pdf.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-pdf.nix
deleted file mode 100644
index 16da7b56b312..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-pdf.nix
+++ /dev/null
@@ -1,28 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "cl-pdf";
-  version = "20211020-git";
-
-  description = "Common Lisp PDF Generation Library";
-
-  deps = [ args."iterate" args."uiop" args."zpb-ttf" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/cl-pdf/2021-10-20/cl-pdf-20211020-git.tgz";
-    sha256 = "0wyh7iv86sqzdn5xj5crrip8iri5a64qzc6cczgbj1gkv65i28bk";
-  };
-
-  packageName = "cl-pdf";
-
-  asdFilesToKeep = ["cl-pdf.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM cl-pdf DESCRIPTION Common Lisp PDF Generation Library SHA256
-    0wyh7iv86sqzdn5xj5crrip8iri5a64qzc6cczgbj1gkv65i28bk URL
-    http://beta.quicklisp.org/archive/cl-pdf/2021-10-20/cl-pdf-20211020-git.tgz
-    MD5 c8a9cfd5d65eae217bd55d786d31dca9 NAME cl-pdf FILENAME cl-pdf DEPS
-    ((NAME iterate FILENAME iterate) (NAME uiop FILENAME uiop)
-     (NAME zpb-ttf FILENAME zpb-ttf))
-    DEPENDENCIES (iterate uiop zpb-ttf) VERSION 20211020-git SIBLINGS
-    (cl-pdf-parser) PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-postgres.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-postgres.nix
deleted file mode 100644
index 5a46814fc28f..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-postgres.nix
+++ /dev/null
@@ -1,41 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "cl-postgres";
-  version = "postmodern-20211209-git";
-
-  parasites = [ "cl-postgres/simple-date-tests" "cl-postgres/tests" ];
-
-  description = "Low-level client library for PostgreSQL";
-
-  deps = [ args."alexandria" args."bordeaux-threads" args."cl-base64" args."cl-ppcre" args."fiveam" args."ironclad" args."md5" args."simple-date" args."simple-date_slash_postgres-glue" args."split-sequence" args."uax-15" args."uiop" args."usocket" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/postmodern/2021-12-09/postmodern-20211209-git.tgz";
-    sha256 = "1qcbg31mz5r7ibmq2y7r3vqvdwpznxvwdnwd94hfil7pg4j119d6";
-  };
-
-  packageName = "cl-postgres";
-
-  asdFilesToKeep = ["cl-postgres.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM cl-postgres DESCRIPTION Low-level client library for PostgreSQL
-    SHA256 1qcbg31mz5r7ibmq2y7r3vqvdwpznxvwdnwd94hfil7pg4j119d6 URL
-    http://beta.quicklisp.org/archive/postmodern/2021-12-09/postmodern-20211209-git.tgz
-    MD5 6d14c4b5fec085594dc66d520174e0e6 NAME cl-postgres FILENAME cl-postgres
-    DEPS
-    ((NAME alexandria FILENAME alexandria)
-     (NAME bordeaux-threads FILENAME bordeaux-threads)
-     (NAME cl-base64 FILENAME cl-base64) (NAME cl-ppcre FILENAME cl-ppcre)
-     (NAME fiveam FILENAME fiveam) (NAME ironclad FILENAME ironclad)
-     (NAME md5 FILENAME md5) (NAME simple-date FILENAME simple-date)
-     (NAME simple-date/postgres-glue FILENAME simple-date_slash_postgres-glue)
-     (NAME split-sequence FILENAME split-sequence)
-     (NAME uax-15 FILENAME uax-15) (NAME uiop FILENAME uiop)
-     (NAME usocket FILENAME usocket))
-    DEPENDENCIES
-    (alexandria bordeaux-threads cl-base64 cl-ppcre fiveam ironclad md5
-     simple-date simple-date/postgres-glue split-sequence uax-15 uiop usocket)
-    VERSION postmodern-20211209-git SIBLINGS (postmodern s-sql simple-date)
-    PARASITES (cl-postgres/simple-date-tests cl-postgres/tests)) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-postgres_plus_local-time.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-postgres_plus_local-time.nix
deleted file mode 100644
index 3c32a56e37b5..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-postgres_plus_local-time.nix
+++ /dev/null
@@ -1,37 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "cl-postgres_plus_local-time";
-  version = "local-time-20210124-git";
-
-  description = "Integration between cl-postgres and local-time";
-
-  deps = [ args."alexandria" args."bordeaux-threads" args."cl-base64" args."cl-postgres" args."cl-ppcre" args."ironclad" args."local-time" args."md5" args."split-sequence" args."uax-15" args."usocket" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/local-time/2021-01-24/local-time-20210124-git.tgz";
-    sha256 = "0bz5z0rd8gfd22bpqkalaijxlrk806zc010cvgd4qjapbrxzjg3s";
-  };
-
-  packageName = "cl-postgres+local-time";
-
-  asdFilesToKeep = ["cl-postgres+local-time.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM cl-postgres+local-time DESCRIPTION
-    Integration between cl-postgres and local-time SHA256
-    0bz5z0rd8gfd22bpqkalaijxlrk806zc010cvgd4qjapbrxzjg3s URL
-    http://beta.quicklisp.org/archive/local-time/2021-01-24/local-time-20210124-git.tgz
-    MD5 631d67bc84ae838792717b256f2cdbaf NAME cl-postgres+local-time FILENAME
-    cl-postgres_plus_local-time DEPS
-    ((NAME alexandria FILENAME alexandria)
-     (NAME bordeaux-threads FILENAME bordeaux-threads)
-     (NAME cl-base64 FILENAME cl-base64)
-     (NAME cl-postgres FILENAME cl-postgres) (NAME cl-ppcre FILENAME cl-ppcre)
-     (NAME ironclad FILENAME ironclad) (NAME local-time FILENAME local-time)
-     (NAME md5 FILENAME md5) (NAME split-sequence FILENAME split-sequence)
-     (NAME uax-15 FILENAME uax-15) (NAME usocket FILENAME usocket))
-    DEPENDENCIES
-    (alexandria bordeaux-threads cl-base64 cl-postgres cl-ppcre ironclad
-     local-time md5 split-sequence uax-15 usocket)
-    VERSION local-time-20210124-git SIBLINGS (local-time) PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-ppcre-template.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-ppcre-template.nix
deleted file mode 100644
index a09ba7cdc608..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-ppcre-template.nix
+++ /dev/null
@@ -1,39 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "cl-ppcre-template";
-  version = "cl-unification-20200925-git";
-
-  description = "A system used to conditionally load the CL-PPCRE Template.
-
-This system is not required and it is handled only if CL-PPCRE is
-available.  If it is, then the library provides the
-REGULAR-EXPRESSION-TEMPLATE.";
-
-  deps = [ args."cl-ppcre" args."cl-unification" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/cl-unification/2020-09-25/cl-unification-20200925-git.tgz";
-    sha256 = "05i1bmbabfgym9v28cbl37yr0r1m4a4k4a844z6wlq6qf45vzais";
-  };
-
-  packageName = "cl-ppcre-template";
-
-  asdFilesToKeep = ["cl-ppcre-template.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM cl-ppcre-template DESCRIPTION
-    A system used to conditionally load the CL-PPCRE Template.
-
-This system is not required and it is handled only if CL-PPCRE is
-available.  If it is, then the library provides the
-REGULAR-EXPRESSION-TEMPLATE.
-    SHA256 05i1bmbabfgym9v28cbl37yr0r1m4a4k4a844z6wlq6qf45vzais URL
-    http://beta.quicklisp.org/archive/cl-unification/2020-09-25/cl-unification-20200925-git.tgz
-    MD5 90588d566c2e12dac3530b65384a87ab NAME cl-ppcre-template FILENAME
-    cl-ppcre-template DEPS
-    ((NAME cl-ppcre FILENAME cl-ppcre)
-     (NAME cl-unification FILENAME cl-unification))
-    DEPENDENCIES (cl-ppcre cl-unification) VERSION cl-unification-20200925-git
-    SIBLINGS (cl-unification-lib cl-unification-test cl-unification) PARASITES
-    NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-ppcre-unicode.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-ppcre-unicode.nix
deleted file mode 100644
index 8277c9ed727f..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-ppcre-unicode.nix
+++ /dev/null
@@ -1,34 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "cl-ppcre-unicode";
-  version = "cl-ppcre-20190521-git";
-
-  parasites = [ "cl-ppcre-unicode-test" ];
-
-  description = "Perl-compatible regular expression library (Unicode)";
-
-  deps = [ args."cl-ppcre" args."cl-ppcre-test" args."cl-unicode" args."flexi-streams" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/cl-ppcre/2019-05-21/cl-ppcre-20190521-git.tgz";
-    sha256 = "0p6jcvf9afnsg80a1zqsp7fyz0lf1fxzbin7rs9bl4i6jvm0hjqx";
-  };
-
-  packageName = "cl-ppcre-unicode";
-
-  asdFilesToKeep = ["cl-ppcre-unicode.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM cl-ppcre-unicode DESCRIPTION
-    Perl-compatible regular expression library (Unicode) SHA256
-    0p6jcvf9afnsg80a1zqsp7fyz0lf1fxzbin7rs9bl4i6jvm0hjqx URL
-    http://beta.quicklisp.org/archive/cl-ppcre/2019-05-21/cl-ppcre-20190521-git.tgz
-    MD5 a980b75c1b386b49bcb28107991eb4ec NAME cl-ppcre-unicode FILENAME
-    cl-ppcre-unicode DEPS
-    ((NAME cl-ppcre FILENAME cl-ppcre)
-     (NAME cl-ppcre-test FILENAME cl-ppcre-test)
-     (NAME cl-unicode FILENAME cl-unicode)
-     (NAME flexi-streams FILENAME flexi-streams))
-    DEPENDENCIES (cl-ppcre cl-ppcre-test cl-unicode flexi-streams) VERSION
-    cl-ppcre-20190521-git SIBLINGS (cl-ppcre) PARASITES (cl-ppcre-unicode-test)) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-ppcre.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-ppcre.nix
deleted file mode 100644
index 1a2aeadd279c..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-ppcre.nix
+++ /dev/null
@@ -1,28 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "cl-ppcre";
-  version = "20190521-git";
-
-  parasites = [ "cl-ppcre-test" ];
-
-  description = "Perl-compatible regular expression library";
-
-  deps = [ args."flexi-streams" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/cl-ppcre/2019-05-21/cl-ppcre-20190521-git.tgz";
-    sha256 = "0p6jcvf9afnsg80a1zqsp7fyz0lf1fxzbin7rs9bl4i6jvm0hjqx";
-  };
-
-  packageName = "cl-ppcre";
-
-  asdFilesToKeep = ["cl-ppcre.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM cl-ppcre DESCRIPTION Perl-compatible regular expression library
-    SHA256 0p6jcvf9afnsg80a1zqsp7fyz0lf1fxzbin7rs9bl4i6jvm0hjqx URL
-    http://beta.quicklisp.org/archive/cl-ppcre/2019-05-21/cl-ppcre-20190521-git.tgz
-    MD5 a980b75c1b386b49bcb28107991eb4ec NAME cl-ppcre FILENAME cl-ppcre DEPS
-    ((NAME flexi-streams FILENAME flexi-streams)) DEPENDENCIES (flexi-streams)
-    VERSION 20190521-git SIBLINGS (cl-ppcre-unicode) PARASITES (cl-ppcre-test)) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-prevalence.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-prevalence.nix
deleted file mode 100644
index 0266eac4e8c9..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-prevalence.nix
+++ /dev/null
@@ -1,35 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "cl-prevalence";
-  version = "20210531-git";
-
-  description = "Common Lisp Prevalence Package";
-
-  deps = [ args."alexandria" args."bordeaux-threads" args."s-sysdeps" args."s-xml" args."split-sequence" args."usocket" args."usocket-server" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/cl-prevalence/2021-05-31/cl-prevalence-20210531-git.tgz";
-    sha256 = "1608xbfyr0id1nwf9845yfaqz5jbi60vz6c36h70bnzkm4b55s1w";
-  };
-
-  packageName = "cl-prevalence";
-
-  asdFilesToKeep = ["cl-prevalence.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM cl-prevalence DESCRIPTION Common Lisp Prevalence Package SHA256
-    1608xbfyr0id1nwf9845yfaqz5jbi60vz6c36h70bnzkm4b55s1w URL
-    http://beta.quicklisp.org/archive/cl-prevalence/2021-05-31/cl-prevalence-20210531-git.tgz
-    MD5 4d2ced14365fb45ef97621298fd24501 NAME cl-prevalence FILENAME
-    cl-prevalence DEPS
-    ((NAME alexandria FILENAME alexandria)
-     (NAME bordeaux-threads FILENAME bordeaux-threads)
-     (NAME s-sysdeps FILENAME s-sysdeps) (NAME s-xml FILENAME s-xml)
-     (NAME split-sequence FILENAME split-sequence)
-     (NAME usocket FILENAME usocket)
-     (NAME usocket-server FILENAME usocket-server))
-    DEPENDENCIES
-    (alexandria bordeaux-threads s-sysdeps s-xml split-sequence usocket
-     usocket-server)
-    VERSION 20210531-git SIBLINGS (cl-prevalence-test) PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-project.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-project.nix
deleted file mode 100644
index 72a049c2f0d4..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-project.nix
+++ /dev/null
@@ -1,35 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "cl-project";
-  version = "20200715-git";
-
-  description = "Generate a skeleton for modern project";
-
-  deps = [ args."alexandria" args."anaphora" args."cl-ansi-text" args."cl-colors" args."cl-colors2" args."cl-emb" args."cl-ppcre" args."let-plus" args."local-time" args."prove" args."uiop" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/cl-project/2020-07-15/cl-project-20200715-git.tgz";
-    sha256 = "044rx97wc839a8q2wv271s07bnsasl6x5fx4gr5pvy34jbrhp306";
-  };
-
-  packageName = "cl-project";
-
-  asdFilesToKeep = ["cl-project.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM cl-project DESCRIPTION Generate a skeleton for modern project SHA256
-    044rx97wc839a8q2wv271s07bnsasl6x5fx4gr5pvy34jbrhp306 URL
-    http://beta.quicklisp.org/archive/cl-project/2020-07-15/cl-project-20200715-git.tgz
-    MD5 12b436050ad0106cf292707ae39d8572 NAME cl-project FILENAME cl-project
-    DEPS
-    ((NAME alexandria FILENAME alexandria) (NAME anaphora FILENAME anaphora)
-     (NAME cl-ansi-text FILENAME cl-ansi-text)
-     (NAME cl-colors FILENAME cl-colors) (NAME cl-colors2 FILENAME cl-colors2)
-     (NAME cl-emb FILENAME cl-emb) (NAME cl-ppcre FILENAME cl-ppcre)
-     (NAME let-plus FILENAME let-plus) (NAME local-time FILENAME local-time)
-     (NAME prove FILENAME prove) (NAME uiop FILENAME uiop))
-    DEPENDENCIES
-    (alexandria anaphora cl-ansi-text cl-colors cl-colors2 cl-emb cl-ppcre
-     let-plus local-time prove uiop)
-    VERSION 20200715-git SIBLINGS (cl-project-test) PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-protobufs.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-protobufs.nix
deleted file mode 100644
index ea1219ae93b1..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-protobufs.nix
+++ /dev/null
@@ -1,32 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "cl-protobufs";
-  version = "20200325-git";
-
-  description = "Protobufs for Common Lisp";
-
-  deps = [ args."alexandria" args."asdf" args."babel" args."closer-mop" args."trivial-features" args."trivial-garbage" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/cl-protobufs/2020-03-25/cl-protobufs-20200325-git.tgz";
-    sha256 = "1sgvp038bvd3mq2f0xh4wawf8h21jmw449yjyahidh1zfqdibpin";
-  };
-
-  packageName = "cl-protobufs";
-
-  asdFilesToKeep = ["cl-protobufs.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM cl-protobufs DESCRIPTION Protobufs for Common Lisp SHA256
-    1sgvp038bvd3mq2f0xh4wawf8h21jmw449yjyahidh1zfqdibpin URL
-    http://beta.quicklisp.org/archive/cl-protobufs/2020-03-25/cl-protobufs-20200325-git.tgz
-    MD5 9fb9af8bd53796b3cf8f358762095899 NAME cl-protobufs FILENAME
-    cl-protobufs DEPS
-    ((NAME alexandria FILENAME alexandria) (NAME asdf FILENAME asdf)
-     (NAME babel FILENAME babel) (NAME closer-mop FILENAME closer-mop)
-     (NAME trivial-features FILENAME trivial-features)
-     (NAME trivial-garbage FILENAME trivial-garbage))
-    DEPENDENCIES
-    (alexandria asdf babel closer-mop trivial-features trivial-garbage) VERSION
-    20200325-git SIBLINGS (cl-protobufs-tests) PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-qprint.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-qprint.nix
deleted file mode 100644
index ee2b681ae09a..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-qprint.nix
+++ /dev/null
@@ -1,29 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "cl-qprint";
-  version = "20150804-git";
-
-  description = "Encode and decode quoted-printable encoded strings.";
-
-  deps = [ args."flexi-streams" args."trivial-gray-streams" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/cl-qprint/2015-08-04/cl-qprint-20150804-git.tgz";
-    sha256 = "042nq9airkc4yaqzpmly5iszmkbwfn38wsgi9k361ldf1y54lq28";
-  };
-
-  packageName = "cl-qprint";
-
-  asdFilesToKeep = ["cl-qprint.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM cl-qprint DESCRIPTION
-    Encode and decode quoted-printable encoded strings. SHA256
-    042nq9airkc4yaqzpmly5iszmkbwfn38wsgi9k361ldf1y54lq28 URL
-    http://beta.quicklisp.org/archive/cl-qprint/2015-08-04/cl-qprint-20150804-git.tgz
-    MD5 74376a69e0b078724c94cc268f69e0f7 NAME cl-qprint FILENAME cl-qprint DEPS
-    ((NAME flexi-streams FILENAME flexi-streams)
-     (NAME trivial-gray-streams FILENAME trivial-gray-streams))
-    DEPENDENCIES (flexi-streams trivial-gray-streams) VERSION 20150804-git
-    SIBLINGS NIL PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-qrencode.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-qrencode.nix
deleted file mode 100644
index 22a6b64b5564..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-qrencode.nix
+++ /dev/null
@@ -1,30 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "cl-qrencode";
-  version = "20191007-git";
-
-  description = "QR code 2005 encoder in Common Lisp";
-
-  deps = [ args."salza2" args."trivial-gray-streams" args."zpng" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/cl-qrencode/2019-10-07/cl-qrencode-20191007-git.tgz";
-    sha256 = "0jc4bmw498bxkw5imvsj4p49njyybsjhbbvnmykivc38k5nlypz4";
-  };
-
-  packageName = "cl-qrencode";
-
-  asdFilesToKeep = ["cl-qrencode.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM cl-qrencode DESCRIPTION QR code 2005 encoder in Common Lisp SHA256
-    0jc4bmw498bxkw5imvsj4p49njyybsjhbbvnmykivc38k5nlypz4 URL
-    http://beta.quicklisp.org/archive/cl-qrencode/2019-10-07/cl-qrencode-20191007-git.tgz
-    MD5 e94ac1137949ef70dea11ca78431e956 NAME cl-qrencode FILENAME cl-qrencode
-    DEPS
-    ((NAME salza2 FILENAME salza2)
-     (NAME trivial-gray-streams FILENAME trivial-gray-streams)
-     (NAME zpng FILENAME zpng))
-    DEPENDENCIES (salza2 trivial-gray-streams zpng) VERSION 20191007-git
-    SIBLINGS (cl-qrencode-test) PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-reexport.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-reexport.nix
deleted file mode 100644
index 96d88a18615e..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-reexport.nix
+++ /dev/null
@@ -1,26 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "cl-reexport";
-  version = "20210228-git";
-
-  description = "Reexport external symbols in other packages.";
-
-  deps = [ args."alexandria" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/cl-reexport/2021-02-28/cl-reexport-20210228-git.tgz";
-    sha256 = "1ay0ng5nnbq200g4wxs0h7byx24za4yk208nhfsmksahk5qj1qra";
-  };
-
-  packageName = "cl-reexport";
-
-  asdFilesToKeep = ["cl-reexport.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM cl-reexport DESCRIPTION Reexport external symbols in other packages.
-    SHA256 1ay0ng5nnbq200g4wxs0h7byx24za4yk208nhfsmksahk5qj1qra URL
-    http://beta.quicklisp.org/archive/cl-reexport/2021-02-28/cl-reexport-20210228-git.tgz
-    MD5 e083a9c49fe39d65f1ff7743eebe37c2 NAME cl-reexport FILENAME cl-reexport
-    DEPS ((NAME alexandria FILENAME alexandria)) DEPENDENCIES (alexandria)
-    VERSION 20210228-git SIBLINGS (cl-reexport-test) PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-semver.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-semver.nix
deleted file mode 100644
index d3eae0bc4442..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-semver.nix
+++ /dev/null
@@ -1,31 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "cl-semver";
-  version = "20201220-git";
-
-  description = "Semantic Version implementation";
-
-  deps = [ args."alexandria" args."esrap" args."named-readtables" args."trivial-with-current-source-form" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/cl-semver/2020-12-20/cl-semver-20201220-git.tgz";
-    sha256 = "02m23kwsz49dh7jq2rgcd1c4asgjj1g7dy321hyr07k5hqmhk92y";
-  };
-
-  packageName = "cl-semver";
-
-  asdFilesToKeep = ["cl-semver.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM cl-semver DESCRIPTION Semantic Version implementation SHA256
-    02m23kwsz49dh7jq2rgcd1c4asgjj1g7dy321hyr07k5hqmhk92y URL
-    http://beta.quicklisp.org/archive/cl-semver/2020-12-20/cl-semver-20201220-git.tgz
-    MD5 7fcc6938d4618687bf1e18ba40d6ac6e NAME cl-semver FILENAME cl-semver DEPS
-    ((NAME alexandria FILENAME alexandria) (NAME esrap FILENAME esrap)
-     (NAME named-readtables FILENAME named-readtables)
-     (NAME trivial-with-current-source-form FILENAME
-      trivial-with-current-source-form))
-    DEPENDENCIES
-    (alexandria esrap named-readtables trivial-with-current-source-form)
-    VERSION 20201220-git SIBLINGS (cl-semver-test) PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-shellwords.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-shellwords.nix
deleted file mode 100644
index 268c260e1a3f..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-shellwords.nix
+++ /dev/null
@@ -1,29 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "cl-shellwords";
-  version = "20150923-git";
-
-  description = "Common Lisp port of Ruby's shellwords.rb, for escaping and
-splitting strings to be passed to a shell.";
-
-  deps = [ args."cl-ppcre" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/cl-shellwords/2015-09-23/cl-shellwords-20150923-git.tgz";
-    sha256 = "1rb0ajpl2lai6bj4x0p3wf0cnf51nnyidhca4lpqp1w1wf1vkcqk";
-  };
-
-  packageName = "cl-shellwords";
-
-  asdFilesToKeep = ["cl-shellwords.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM cl-shellwords DESCRIPTION
-    Common Lisp port of Ruby's shellwords.rb, for escaping and
-splitting strings to be passed to a shell.
-    SHA256 1rb0ajpl2lai6bj4x0p3wf0cnf51nnyidhca4lpqp1w1wf1vkcqk URL
-    http://beta.quicklisp.org/archive/cl-shellwords/2015-09-23/cl-shellwords-20150923-git.tgz
-    MD5 c2c62c6a2ce4ed2590d60707ead2e084 NAME cl-shellwords FILENAME
-    cl-shellwords DEPS ((NAME cl-ppcre FILENAME cl-ppcre)) DEPENDENCIES
-    (cl-ppcre) VERSION 20150923-git SIBLINGS (cl-shellwords-test) PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-slice.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-slice.nix
deleted file mode 100644
index 0966abf8e1ff..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-slice.nix
+++ /dev/null
@@ -1,30 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "cl-slice";
-  version = "20210531-git";
-
-  parasites = [ "cl-slice-tests" ];
-
-  description = "DSL for array slices in Common Lisp.";
-
-  deps = [ args."alexandria" args."anaphora" args."clunit" args."let-plus" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/cl-slice/2021-05-31/cl-slice-20210531-git.tgz";
-    sha256 = "1jkm8yrnc0x2nx4bwwk56xda1r5h2aw0q4yfbv8lywaiwj92v7hk";
-  };
-
-  packageName = "cl-slice";
-
-  asdFilesToKeep = ["cl-slice.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM cl-slice DESCRIPTION DSL for array slices in Common Lisp. SHA256
-    1jkm8yrnc0x2nx4bwwk56xda1r5h2aw0q4yfbv8lywaiwj92v7hk URL
-    http://beta.quicklisp.org/archive/cl-slice/2021-05-31/cl-slice-20210531-git.tgz
-    MD5 d7be90ed28b5c316b1f31b4f567bd725 NAME cl-slice FILENAME cl-slice DEPS
-    ((NAME alexandria FILENAME alexandria) (NAME anaphora FILENAME anaphora)
-     (NAME clunit FILENAME clunit) (NAME let-plus FILENAME let-plus))
-    DEPENDENCIES (alexandria anaphora clunit let-plus) VERSION 20210531-git
-    SIBLINGS NIL PARASITES (cl-slice-tests)) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-smt-lib.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-smt-lib.nix
deleted file mode 100644
index 23a11c5176e9..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-smt-lib.nix
+++ /dev/null
@@ -1,31 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "cl-smt-lib";
-  version = "20211020-git";
-
-  description = "SMT object supporting SMT-LIB communication over input and output streams";
-
-  deps = [ args."asdf-package-system" args."named-readtables" args."trivial-gray-streams" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/cl-smt-lib/2021-10-20/cl-smt-lib-20211020-git.tgz";
-    sha256 = "1x2d79xcc0c56cb02axly6c10y6dmvxcpr3f16qry02rpfqys3qm";
-  };
-
-  packageName = "cl-smt-lib";
-
-  asdFilesToKeep = ["cl-smt-lib.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM cl-smt-lib DESCRIPTION
-    SMT object supporting SMT-LIB communication over input and output streams
-    SHA256 1x2d79xcc0c56cb02axly6c10y6dmvxcpr3f16qry02rpfqys3qm URL
-    http://beta.quicklisp.org/archive/cl-smt-lib/2021-10-20/cl-smt-lib-20211020-git.tgz
-    MD5 f22b48a87b78fb5b38b35d780d34cd77 NAME cl-smt-lib FILENAME cl-smt-lib
-    DEPS
-    ((NAME asdf-package-system FILENAME asdf-package-system)
-     (NAME named-readtables FILENAME named-readtables)
-     (NAME trivial-gray-streams FILENAME trivial-gray-streams))
-    DEPENDENCIES (asdf-package-system named-readtables trivial-gray-streams)
-    VERSION 20211020-git SIBLINGS NIL PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-smtp.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-smtp.nix
deleted file mode 100644
index 9570254b8d0d..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-smtp.nix
+++ /dev/null
@@ -1,39 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "cl-smtp";
-  version = "20210228-git";
-
-  description = "Common Lisp smtp client.";
-
-  deps = [ args."alexandria" args."babel" args."bordeaux-threads" args."cffi" args."cl_plus_ssl" args."cl-base64" args."flexi-streams" args."split-sequence" args."trivial-features" args."trivial-garbage" args."trivial-gray-streams" args."usocket" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/cl-smtp/2021-02-28/cl-smtp-20210228-git.tgz";
-    sha256 = "1x965jyhifx8hss2v6qc6lr54nlckchs712dny376krwkl43jh5g";
-  };
-
-  packageName = "cl-smtp";
-
-  asdFilesToKeep = ["cl-smtp.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM cl-smtp DESCRIPTION Common Lisp smtp client. SHA256
-    1x965jyhifx8hss2v6qc6lr54nlckchs712dny376krwkl43jh5g URL
-    http://beta.quicklisp.org/archive/cl-smtp/2021-02-28/cl-smtp-20210228-git.tgz
-    MD5 e2f9137807f80514e0433bf2e8522ee5 NAME cl-smtp FILENAME cl-smtp DEPS
-    ((NAME alexandria FILENAME alexandria) (NAME babel FILENAME babel)
-     (NAME bordeaux-threads FILENAME bordeaux-threads)
-     (NAME cffi FILENAME cffi) (NAME cl+ssl FILENAME cl_plus_ssl)
-     (NAME cl-base64 FILENAME cl-base64)
-     (NAME flexi-streams FILENAME flexi-streams)
-     (NAME split-sequence FILENAME split-sequence)
-     (NAME trivial-features FILENAME trivial-features)
-     (NAME trivial-garbage FILENAME trivial-garbage)
-     (NAME trivial-gray-streams FILENAME trivial-gray-streams)
-     (NAME usocket FILENAME usocket))
-    DEPENDENCIES
-    (alexandria babel bordeaux-threads cffi cl+ssl cl-base64 flexi-streams
-     split-sequence trivial-features trivial-garbage trivial-gray-streams
-     usocket)
-    VERSION 20210228-git SIBLINGS NIL PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-speedy-queue.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-speedy-queue.nix
deleted file mode 100644
index cb367af21fb6..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-speedy-queue.nix
+++ /dev/null
@@ -1,27 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "cl-speedy-queue";
-  version = "20150302-git";
-
-  description = "cl-speedy-queue is a portable, non-consing, optimized queue implementation.";
-
-  deps = [ ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/cl-speedy-queue/2015-03-02/cl-speedy-queue-20150302-git.tgz";
-    sha256 = "1w83vckk0ldr61vpkwg4i8l2b2yx54cs4ak62j4lxhshax105rqr";
-  };
-
-  packageName = "cl-speedy-queue";
-
-  asdFilesToKeep = ["cl-speedy-queue.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM cl-speedy-queue DESCRIPTION
-    cl-speedy-queue is a portable, non-consing, optimized queue implementation.
-    SHA256 1w83vckk0ldr61vpkwg4i8l2b2yx54cs4ak62j4lxhshax105rqr URL
-    http://beta.quicklisp.org/archive/cl-speedy-queue/2015-03-02/cl-speedy-queue-20150302-git.tgz
-    MD5 509d1acf7e4cfcef99127de75b16521f NAME cl-speedy-queue FILENAME
-    cl-speedy-queue DEPS NIL DEPENDENCIES NIL VERSION 20150302-git SIBLINGS NIL
-    PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-store.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-store.nix
deleted file mode 100644
index 4e7f5e0f794d..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-store.nix
+++ /dev/null
@@ -1,28 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "cl-store";
-  version = "20200925-git";
-
-  parasites = [ "cl-store-tests" ];
-
-  description = "Serialization package";
-
-  deps = [ args."rt" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/cl-store/2020-09-25/cl-store-20200925-git.tgz";
-    sha256 = "0vqlrci1634jgfg6c1dzwvx58qjjwbcbwdbpm7xxw2s823xl9jf3";
-  };
-
-  packageName = "cl-store";
-
-  asdFilesToKeep = ["cl-store.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM cl-store DESCRIPTION Serialization package SHA256
-    0vqlrci1634jgfg6c1dzwvx58qjjwbcbwdbpm7xxw2s823xl9jf3 URL
-    http://beta.quicklisp.org/archive/cl-store/2020-09-25/cl-store-20200925-git.tgz
-    MD5 828a6f3035c5ef869618f6848c47efd7 NAME cl-store FILENAME cl-store DEPS
-    ((NAME rt FILENAME rt)) DEPENDENCIES (rt) VERSION 20200925-git SIBLINGS NIL
-    PARASITES (cl-store-tests)) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-svg.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-svg.nix
deleted file mode 100644
index 71ccef4a15d7..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-svg.nix
+++ /dev/null
@@ -1,25 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "cl-svg";
-  version = "20180228-git";
-
-  description = "Produce Scalable Vector Graphics (SVG) files";
-
-  deps = [ ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/cl-svg/2018-02-28/cl-svg-20180228-git.tgz";
-    sha256 = "1ir299yg7210y1hwqs0di3gznj8ahsw16kf1n4yhfq78jswkrx48";
-  };
-
-  packageName = "cl-svg";
-
-  asdFilesToKeep = ["cl-svg.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM cl-svg DESCRIPTION Produce Scalable Vector Graphics (SVG) files
-    SHA256 1ir299yg7210y1hwqs0di3gznj8ahsw16kf1n4yhfq78jswkrx48 URL
-    http://beta.quicklisp.org/archive/cl-svg/2018-02-28/cl-svg-20180228-git.tgz
-    MD5 672145ecadef2259a3833886dbe68617 NAME cl-svg FILENAME cl-svg DEPS NIL
-    DEPENDENCIES NIL VERSION 20180228-git SIBLINGS NIL PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-syntax-annot.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-syntax-annot.nix
deleted file mode 100644
index a4f8cce8ba3e..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-syntax-annot.nix
+++ /dev/null
@@ -1,34 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "cl-syntax-annot";
-  version = "cl-syntax-20150407-git";
-
-  description = "CL-Syntax Reader Syntax for cl-annot";
-
-  deps = [ args."alexandria" args."cl-annot" args."cl-syntax" args."named-readtables" args."trivial-types" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/cl-syntax/2015-04-07/cl-syntax-20150407-git.tgz";
-    sha256 = "1pz9a7hiql493ax5qgs9zb3bmvf0nnmmgdx14s4j2apdy2m34v8n";
-  };
-
-  packageName = "cl-syntax-annot";
-
-  asdFilesToKeep = ["cl-syntax-annot.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM cl-syntax-annot DESCRIPTION CL-Syntax Reader Syntax for cl-annot
-    SHA256 1pz9a7hiql493ax5qgs9zb3bmvf0nnmmgdx14s4j2apdy2m34v8n URL
-    http://beta.quicklisp.org/archive/cl-syntax/2015-04-07/cl-syntax-20150407-git.tgz
-    MD5 602b84143aafe59d65f4e08ac20a124a NAME cl-syntax-annot FILENAME
-    cl-syntax-annot DEPS
-    ((NAME alexandria FILENAME alexandria) (NAME cl-annot FILENAME cl-annot)
-     (NAME cl-syntax FILENAME cl-syntax)
-     (NAME named-readtables FILENAME named-readtables)
-     (NAME trivial-types FILENAME trivial-types))
-    DEPENDENCIES (alexandria cl-annot cl-syntax named-readtables trivial-types)
-    VERSION cl-syntax-20150407-git SIBLINGS
-    (cl-syntax-anonfun cl-syntax-clsql cl-syntax-fare-quasiquote
-     cl-syntax-interpol cl-syntax-markup cl-syntax)
-    PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-syntax-anonfun.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-syntax-anonfun.nix
deleted file mode 100644
index c6f1932489b9..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-syntax-anonfun.nix
+++ /dev/null
@@ -1,33 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "cl-syntax-anonfun";
-  version = "cl-syntax-20150407-git";
-
-  description = "CL-Syntax Reader Syntax for cl-anonfun";
-
-  deps = [ args."cl-anonfun" args."cl-syntax" args."named-readtables" args."trivial-types" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/cl-syntax/2015-04-07/cl-syntax-20150407-git.tgz";
-    sha256 = "1pz9a7hiql493ax5qgs9zb3bmvf0nnmmgdx14s4j2apdy2m34v8n";
-  };
-
-  packageName = "cl-syntax-anonfun";
-
-  asdFilesToKeep = ["cl-syntax-anonfun.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM cl-syntax-anonfun DESCRIPTION CL-Syntax Reader Syntax for cl-anonfun
-    SHA256 1pz9a7hiql493ax5qgs9zb3bmvf0nnmmgdx14s4j2apdy2m34v8n URL
-    http://beta.quicklisp.org/archive/cl-syntax/2015-04-07/cl-syntax-20150407-git.tgz
-    MD5 602b84143aafe59d65f4e08ac20a124a NAME cl-syntax-anonfun FILENAME
-    cl-syntax-anonfun DEPS
-    ((NAME cl-anonfun FILENAME cl-anonfun) (NAME cl-syntax FILENAME cl-syntax)
-     (NAME named-readtables FILENAME named-readtables)
-     (NAME trivial-types FILENAME trivial-types))
-    DEPENDENCIES (cl-anonfun cl-syntax named-readtables trivial-types) VERSION
-    cl-syntax-20150407-git SIBLINGS
-    (cl-syntax-annot cl-syntax-clsql cl-syntax-fare-quasiquote
-     cl-syntax-interpol cl-syntax-markup cl-syntax)
-    PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-syntax-markup.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-syntax-markup.nix
deleted file mode 100644
index ea955ba0bf2e..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-syntax-markup.nix
+++ /dev/null
@@ -1,33 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "cl-syntax-markup";
-  version = "cl-syntax-20150407-git";
-
-  description = "CL-Syntax Reader Syntax for CL-Markup";
-
-  deps = [ args."cl-markup" args."cl-syntax" args."named-readtables" args."trivial-types" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/cl-syntax/2015-04-07/cl-syntax-20150407-git.tgz";
-    sha256 = "1pz9a7hiql493ax5qgs9zb3bmvf0nnmmgdx14s4j2apdy2m34v8n";
-  };
-
-  packageName = "cl-syntax-markup";
-
-  asdFilesToKeep = ["cl-syntax-markup.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM cl-syntax-markup DESCRIPTION CL-Syntax Reader Syntax for CL-Markup
-    SHA256 1pz9a7hiql493ax5qgs9zb3bmvf0nnmmgdx14s4j2apdy2m34v8n URL
-    http://beta.quicklisp.org/archive/cl-syntax/2015-04-07/cl-syntax-20150407-git.tgz
-    MD5 602b84143aafe59d65f4e08ac20a124a NAME cl-syntax-markup FILENAME
-    cl-syntax-markup DEPS
-    ((NAME cl-markup FILENAME cl-markup) (NAME cl-syntax FILENAME cl-syntax)
-     (NAME named-readtables FILENAME named-readtables)
-     (NAME trivial-types FILENAME trivial-types))
-    DEPENDENCIES (cl-markup cl-syntax named-readtables trivial-types) VERSION
-    cl-syntax-20150407-git SIBLINGS
-    (cl-syntax-annot cl-syntax-anonfun cl-syntax-clsql
-     cl-syntax-fare-quasiquote cl-syntax-interpol cl-syntax)
-    PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-syntax.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-syntax.nix
deleted file mode 100644
index 6a09c11d14ea..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-syntax.nix
+++ /dev/null
@@ -1,31 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "cl-syntax";
-  version = "20150407-git";
-
-  description = "Reader Syntax Coventions for Common Lisp and SLIME";
-
-  deps = [ args."named-readtables" args."trivial-types" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/cl-syntax/2015-04-07/cl-syntax-20150407-git.tgz";
-    sha256 = "1pz9a7hiql493ax5qgs9zb3bmvf0nnmmgdx14s4j2apdy2m34v8n";
-  };
-
-  packageName = "cl-syntax";
-
-  asdFilesToKeep = ["cl-syntax.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM cl-syntax DESCRIPTION
-    Reader Syntax Coventions for Common Lisp and SLIME SHA256
-    1pz9a7hiql493ax5qgs9zb3bmvf0nnmmgdx14s4j2apdy2m34v8n URL
-    http://beta.quicklisp.org/archive/cl-syntax/2015-04-07/cl-syntax-20150407-git.tgz
-    MD5 602b84143aafe59d65f4e08ac20a124a NAME cl-syntax FILENAME cl-syntax DEPS
-    ((NAME named-readtables FILENAME named-readtables)
-     (NAME trivial-types FILENAME trivial-types))
-    DEPENDENCIES (named-readtables trivial-types) VERSION 20150407-git SIBLINGS
-    (cl-syntax-annot cl-syntax-anonfun cl-syntax-clsql
-     cl-syntax-fare-quasiquote cl-syntax-interpol cl-syntax-markup)
-    PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-syslog.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-syslog.nix
deleted file mode 100644
index 695d1722dc12..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-syslog.nix
+++ /dev/null
@@ -1,34 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "cl-syslog";
-  version = "20190202-git";
-
-  description = "Common Lisp syslog interface.";
-
-  deps = [ args."alexandria" args."babel" args."cffi" args."global-vars" args."local-time" args."split-sequence" args."trivial-features" args."usocket" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/cl-syslog/2019-02-02/cl-syslog-20190202-git.tgz";
-    sha256 = "1kzz613y9fvx33svlwc65vjaj1cafnxz8icds80ww7il7y6alwgh";
-  };
-
-  packageName = "cl-syslog";
-
-  asdFilesToKeep = ["cl-syslog.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM cl-syslog DESCRIPTION Common Lisp syslog interface. SHA256
-    1kzz613y9fvx33svlwc65vjaj1cafnxz8icds80ww7il7y6alwgh URL
-    http://beta.quicklisp.org/archive/cl-syslog/2019-02-02/cl-syslog-20190202-git.tgz
-    MD5 eafff19eb1f38a36a9535c729d2217fe NAME cl-syslog FILENAME cl-syslog DEPS
-    ((NAME alexandria FILENAME alexandria) (NAME babel FILENAME babel)
-     (NAME cffi FILENAME cffi) (NAME global-vars FILENAME global-vars)
-     (NAME local-time FILENAME local-time)
-     (NAME split-sequence FILENAME split-sequence)
-     (NAME trivial-features FILENAME trivial-features)
-     (NAME usocket FILENAME usocket))
-    DEPENDENCIES
-    (alexandria babel cffi global-vars local-time split-sequence
-     trivial-features usocket)
-    VERSION 20190202-git SIBLINGS NIL PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-test-more.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-test-more.nix
deleted file mode 100644
index 78a2abde951a..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-test-more.nix
+++ /dev/null
@@ -1,35 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "cl-test-more";
-  version = "prove-20200218-git";
-
-  description = "System lacks description";
-
-  deps = [ args."alexandria" args."anaphora" args."cl-ansi-text" args."cl-colors" args."cl-colors2" args."cl-ppcre" args."let-plus" args."prove" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/prove/2020-02-18/prove-20200218-git.tgz";
-    sha256 = "1sv3zyam9sdmyis5lyv0khvw82q7bcpsycpj9b3bsv9isb4j30zn";
-  };
-
-  packageName = "cl-test-more";
-
-  asdFilesToKeep = ["cl-test-more.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM cl-test-more DESCRIPTION System lacks description SHA256
-    1sv3zyam9sdmyis5lyv0khvw82q7bcpsycpj9b3bsv9isb4j30zn URL
-    http://beta.quicklisp.org/archive/prove/2020-02-18/prove-20200218-git.tgz
-    MD5 85780b65e84c17a78d658364b8c4d11b NAME cl-test-more FILENAME
-    cl-test-more DEPS
-    ((NAME alexandria FILENAME alexandria) (NAME anaphora FILENAME anaphora)
-     (NAME cl-ansi-text FILENAME cl-ansi-text)
-     (NAME cl-colors FILENAME cl-colors) (NAME cl-colors2 FILENAME cl-colors2)
-     (NAME cl-ppcre FILENAME cl-ppcre) (NAME let-plus FILENAME let-plus)
-     (NAME prove FILENAME prove))
-    DEPENDENCIES
-    (alexandria anaphora cl-ansi-text cl-colors cl-colors2 cl-ppcre let-plus
-     prove)
-    VERSION prove-20200218-git SIBLINGS (prove-asdf prove-test prove) PARASITES
-    NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-typesetting.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-typesetting.nix
deleted file mode 100644
index 2794c47db9af..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-typesetting.nix
+++ /dev/null
@@ -1,29 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "cl-typesetting";
-  version = "20210531-git";
-
-  description = "Common Lisp Typesetting system";
-
-  deps = [ args."cl-pdf" args."iterate" args."zpb-ttf" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/cl-typesetting/2021-05-31/cl-typesetting-20210531-git.tgz";
-    sha256 = "1gv21dsfghf8y2d7f5w5m8fn0q5l7xb8z7qw11wnnnd7msk11dd5";
-  };
-
-  packageName = "cl-typesetting";
-
-  asdFilesToKeep = ["cl-typesetting.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM cl-typesetting DESCRIPTION Common Lisp Typesetting system SHA256
-    1gv21dsfghf8y2d7f5w5m8fn0q5l7xb8z7qw11wnnnd7msk11dd5 URL
-    http://beta.quicklisp.org/archive/cl-typesetting/2021-05-31/cl-typesetting-20210531-git.tgz
-    MD5 849e6fb2c4a33f823c005e4e9abb31b5 NAME cl-typesetting FILENAME
-    cl-typesetting DEPS
-    ((NAME cl-pdf FILENAME cl-pdf) (NAME iterate FILENAME iterate)
-     (NAME zpb-ttf FILENAME zpb-ttf))
-    DEPENDENCIES (cl-pdf iterate zpb-ttf) VERSION 20210531-git SIBLINGS
-    (xml-render cl-pdf-doc) PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-unicode.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-unicode.nix
deleted file mode 100644
index 67209e03f838..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-unicode.nix
+++ /dev/null
@@ -1,31 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "cl-unicode";
-  version = "20210228-git";
-
-  parasites = [ "cl-unicode/base" "cl-unicode/build" "cl-unicode/test" ];
-
-  description = "Portable Unicode Library";
-
-  deps = [ args."cl-ppcre" args."flexi-streams" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/cl-unicode/2021-02-28/cl-unicode-20210228-git.tgz";
-    sha256 = "0phy5wppb7m78dixrf2vjq8vas4drfd4qg38al6q8ymkl0yfy5js";
-  };
-
-  packageName = "cl-unicode";
-
-  asdFilesToKeep = ["cl-unicode.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM cl-unicode DESCRIPTION Portable Unicode Library SHA256
-    0phy5wppb7m78dixrf2vjq8vas4drfd4qg38al6q8ymkl0yfy5js URL
-    http://beta.quicklisp.org/archive/cl-unicode/2021-02-28/cl-unicode-20210228-git.tgz
-    MD5 5b3bdddde3be5b8427e3fac92495a10b NAME cl-unicode FILENAME cl-unicode
-    DEPS
-    ((NAME cl-ppcre FILENAME cl-ppcre)
-     (NAME flexi-streams FILENAME flexi-streams))
-    DEPENDENCIES (cl-ppcre flexi-streams) VERSION 20210228-git SIBLINGS NIL
-    PARASITES (cl-unicode/base cl-unicode/build cl-unicode/test)) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-unification.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-unification.nix
deleted file mode 100644
index 0f84f3400ec5..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-unification.nix
+++ /dev/null
@@ -1,30 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "cl-unification";
-  version = "20200925-git";
-
-  description = "The CL-UNIFICATION system.
-
-The system contains the definitions for the 'unification' machinery.";
-
-  deps = [ ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/cl-unification/2020-09-25/cl-unification-20200925-git.tgz";
-    sha256 = "05i1bmbabfgym9v28cbl37yr0r1m4a4k4a844z6wlq6qf45vzais";
-  };
-
-  packageName = "cl-unification";
-
-  asdFilesToKeep = ["cl-unification.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM cl-unification DESCRIPTION The CL-UNIFICATION system.
-
-The system contains the definitions for the 'unification' machinery.
-    SHA256 05i1bmbabfgym9v28cbl37yr0r1m4a4k4a844z6wlq6qf45vzais URL
-    http://beta.quicklisp.org/archive/cl-unification/2020-09-25/cl-unification-20200925-git.tgz
-    MD5 90588d566c2e12dac3530b65384a87ab NAME cl-unification FILENAME
-    cl-unification DEPS NIL DEPENDENCIES NIL VERSION 20200925-git SIBLINGS
-    (cl-unification-lib cl-unification-test cl-ppcre-template) PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-utilities.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-utilities.nix
deleted file mode 100644
index cfe7a2a9f3cc..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-utilities.nix
+++ /dev/null
@@ -1,26 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "cl-utilities";
-  version = "1.2.4";
-
-  description = "System lacks description";
-
-  deps = [ ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/cl-utilities/2010-10-06/cl-utilities-1.2.4.tgz";
-    sha256 = "1z2ippnv2wgyxpz15zpif7j7sp1r20fkjhm4n6am2fyp6a3k3a87";
-  };
-
-  packageName = "cl-utilities";
-
-  asdFilesToKeep = ["cl-utilities.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM cl-utilities DESCRIPTION System lacks description SHA256
-    1z2ippnv2wgyxpz15zpif7j7sp1r20fkjhm4n6am2fyp6a3k3a87 URL
-    http://beta.quicklisp.org/archive/cl-utilities/2010-10-06/cl-utilities-1.2.4.tgz
-    MD5 c3a4ba38b627448d3ed40ce888048940 NAME cl-utilities FILENAME
-    cl-utilities DEPS NIL DEPENDENCIES NIL VERSION 1.2.4 SIBLINGS NIL PARASITES
-    NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-vectors.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-vectors.nix
deleted file mode 100644
index a6fc607c64ec..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-vectors.nix
+++ /dev/null
@@ -1,27 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "cl-vectors";
-  version = "20180228-git";
-
-  description = "cl-paths: vectorial paths manipulation";
-
-  deps = [ args."cl-aa" args."cl-paths" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/cl-vectors/2018-02-28/cl-vectors-20180228-git.tgz";
-    sha256 = "0fcypjfzqra8ryb4nx1vx1fqy7fwvyz3f443qkjg2z81akhkscly";
-  };
-
-  packageName = "cl-vectors";
-
-  asdFilesToKeep = ["cl-vectors.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM cl-vectors DESCRIPTION cl-paths: vectorial paths manipulation SHA256
-    0fcypjfzqra8ryb4nx1vx1fqy7fwvyz3f443qkjg2z81akhkscly URL
-    http://beta.quicklisp.org/archive/cl-vectors/2018-02-28/cl-vectors-20180228-git.tgz
-    MD5 9d9629786d4f2c19c15cc6cd3049c343 NAME cl-vectors FILENAME cl-vectors
-    DEPS ((NAME cl-aa FILENAME cl-aa) (NAME cl-paths FILENAME cl-paths))
-    DEPENDENCIES (cl-aa cl-paths) VERSION 20180228-git SIBLINGS
-    (cl-aa-misc cl-aa cl-paths-ttf cl-paths) PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-webkit2.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-webkit2.nix
deleted file mode 100644
index aef004926cb0..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-webkit2.nix
+++ /dev/null
@@ -1,44 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "cl-webkit2";
-  version = "cl-webkit-20211209-git";
-
-  description = "An FFI binding to WebKit2GTK+";
-
-  deps = [ args."alexandria" args."babel" args."bordeaux-threads" args."cffi" args."cl-cffi-gtk" args."cl-cffi-gtk-cairo" args."cl-cffi-gtk-gdk" args."cl-cffi-gtk-gdk-pixbuf" args."cl-cffi-gtk-gio" args."cl-cffi-gtk-glib" args."cl-cffi-gtk-gobject" args."cl-cffi-gtk-pango" args."closer-mop" args."iterate" args."trivial-features" args."trivial-garbage" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/cl-webkit/2021-12-09/cl-webkit-20211209-git.tgz";
-    sha256 = "1lpzp9rb011zbl8j2jpqhal38slyqq1p6cxxjk51h6mdq7x7z1a0";
-  };
-
-  packageName = "cl-webkit2";
-
-  asdFilesToKeep = ["cl-webkit2.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM cl-webkit2 DESCRIPTION An FFI binding to WebKit2GTK+ SHA256
-    1lpzp9rb011zbl8j2jpqhal38slyqq1p6cxxjk51h6mdq7x7z1a0 URL
-    http://beta.quicklisp.org/archive/cl-webkit/2021-12-09/cl-webkit-20211209-git.tgz
-    MD5 cf710088281b691a91aa29566f50f83a NAME cl-webkit2 FILENAME cl-webkit2
-    DEPS
-    ((NAME alexandria FILENAME alexandria) (NAME babel FILENAME babel)
-     (NAME bordeaux-threads FILENAME bordeaux-threads)
-     (NAME cffi FILENAME cffi) (NAME cl-cffi-gtk FILENAME cl-cffi-gtk)
-     (NAME cl-cffi-gtk-cairo FILENAME cl-cffi-gtk-cairo)
-     (NAME cl-cffi-gtk-gdk FILENAME cl-cffi-gtk-gdk)
-     (NAME cl-cffi-gtk-gdk-pixbuf FILENAME cl-cffi-gtk-gdk-pixbuf)
-     (NAME cl-cffi-gtk-gio FILENAME cl-cffi-gtk-gio)
-     (NAME cl-cffi-gtk-glib FILENAME cl-cffi-gtk-glib)
-     (NAME cl-cffi-gtk-gobject FILENAME cl-cffi-gtk-gobject)
-     (NAME cl-cffi-gtk-pango FILENAME cl-cffi-gtk-pango)
-     (NAME closer-mop FILENAME closer-mop) (NAME iterate FILENAME iterate)
-     (NAME trivial-features FILENAME trivial-features)
-     (NAME trivial-garbage FILENAME trivial-garbage))
-    DEPENDENCIES
-    (alexandria babel bordeaux-threads cffi cl-cffi-gtk cl-cffi-gtk-cairo
-     cl-cffi-gtk-gdk cl-cffi-gtk-gdk-pixbuf cl-cffi-gtk-gio cl-cffi-gtk-glib
-     cl-cffi-gtk-gobject cl-cffi-gtk-pango closer-mop iterate trivial-features
-     trivial-garbage)
-    VERSION cl-webkit-20211209-git SIBLINGS NIL PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-who.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-who.nix
deleted file mode 100644
index 3e19170e6327..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-who.nix
+++ /dev/null
@@ -1,28 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "cl-who";
-  version = "20190710-git";
-
-  parasites = [ "cl-who-test" ];
-
-  description = "(X)HTML generation macros";
-
-  deps = [ args."flexi-streams" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/cl-who/2019-07-10/cl-who-20190710-git.tgz";
-    sha256 = "0pbigwn38xikdwvjy9696z9f00dwg565y3wh6ja51q681y8zh9ir";
-  };
-
-  packageName = "cl-who";
-
-  asdFilesToKeep = ["cl-who.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM cl-who DESCRIPTION (X)HTML generation macros SHA256
-    0pbigwn38xikdwvjy9696z9f00dwg565y3wh6ja51q681y8zh9ir URL
-    http://beta.quicklisp.org/archive/cl-who/2019-07-10/cl-who-20190710-git.tgz
-    MD5 e5bb2856ed62d76528e4cef7b5e701c0 NAME cl-who FILENAME cl-who DEPS
-    ((NAME flexi-streams FILENAME flexi-streams)) DEPENDENCIES (flexi-streams)
-    VERSION 20190710-git SIBLINGS NIL PARASITES (cl-who-test)) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-xmlspam.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-xmlspam.nix
deleted file mode 100644
index ae6b0b336c5c..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl-xmlspam.nix
+++ /dev/null
@@ -1,35 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "cl-xmlspam";
-  version = "20101006-http";
-
-  description = "Streaming pattern matching for XML";
-
-  deps = [ args."alexandria" args."babel" args."cl-ppcre" args."closure-common" args."cxml" args."puri" args."trivial-features" args."trivial-gray-streams" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/cl-xmlspam/2010-10-06/cl-xmlspam-20101006-http.tgz";
-    sha256 = "1mx1a6ab4irncrx5pamh7zng35m4c5wh0pw68avaz7fbz81s953h";
-  };
-
-  packageName = "cl-xmlspam";
-
-  asdFilesToKeep = ["cl-xmlspam.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM cl-xmlspam DESCRIPTION Streaming pattern matching for XML SHA256
-    1mx1a6ab4irncrx5pamh7zng35m4c5wh0pw68avaz7fbz81s953h URL
-    http://beta.quicklisp.org/archive/cl-xmlspam/2010-10-06/cl-xmlspam-20101006-http.tgz
-    MD5 6e3a0944e96e17916b1445f4207babb8 NAME cl-xmlspam FILENAME cl-xmlspam
-    DEPS
-    ((NAME alexandria FILENAME alexandria) (NAME babel FILENAME babel)
-     (NAME cl-ppcre FILENAME cl-ppcre)
-     (NAME closure-common FILENAME closure-common) (NAME cxml FILENAME cxml)
-     (NAME puri FILENAME puri)
-     (NAME trivial-features FILENAME trivial-features)
-     (NAME trivial-gray-streams FILENAME trivial-gray-streams))
-    DEPENDENCIES
-    (alexandria babel cl-ppcre closure-common cxml puri trivial-features
-     trivial-gray-streams)
-    VERSION 20101006-http SIBLINGS NIL PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl_plus_ssl.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl_plus_ssl.nix
deleted file mode 100644
index 3278bc9977bd..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cl_plus_ssl.nix
+++ /dev/null
@@ -1,39 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "cl_plus_ssl";
-  version = "cl+ssl-20211209-git";
-
-  parasites = [ "cl+ssl/config" ];
-
-  description = "Common Lisp interface to OpenSSL.";
-
-  deps = [ args."alexandria" args."babel" args."bordeaux-threads" args."cffi" args."flexi-streams" args."split-sequence" args."trivial-features" args."trivial-garbage" args."trivial-gray-streams" args."uiop" args."usocket" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/cl+ssl/2021-12-09/cl+ssl-20211209-git.tgz";
-    sha256 = "1m1dx4jfqpd2jdica7safq3fig31xyn96a0yslvszbhkyn22r0nb";
-  };
-
-  packageName = "cl+ssl";
-
-  asdFilesToKeep = ["cl+ssl.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM cl+ssl DESCRIPTION Common Lisp interface to OpenSSL. SHA256
-    1m1dx4jfqpd2jdica7safq3fig31xyn96a0yslvszbhkyn22r0nb URL
-    http://beta.quicklisp.org/archive/cl+ssl/2021-12-09/cl+ssl-20211209-git.tgz
-    MD5 900134876fea38710e6535420ec60864 NAME cl+ssl FILENAME cl_plus_ssl DEPS
-    ((NAME alexandria FILENAME alexandria) (NAME babel FILENAME babel)
-     (NAME bordeaux-threads FILENAME bordeaux-threads)
-     (NAME cffi FILENAME cffi) (NAME flexi-streams FILENAME flexi-streams)
-     (NAME split-sequence FILENAME split-sequence)
-     (NAME trivial-features FILENAME trivial-features)
-     (NAME trivial-garbage FILENAME trivial-garbage)
-     (NAME trivial-gray-streams FILENAME trivial-gray-streams)
-     (NAME uiop FILENAME uiop) (NAME usocket FILENAME usocket))
-    DEPENDENCIES
-    (alexandria babel bordeaux-threads cffi flexi-streams split-sequence
-     trivial-features trivial-garbage trivial-gray-streams uiop usocket)
-    VERSION cl+ssl-20211209-git SIBLINGS (cl+ssl.test) PARASITES
-    (cl+ssl/config)) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/clack-handler-hunchentoot.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/clack-handler-hunchentoot.nix
deleted file mode 100644
index 3c18fd911952..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/clack-handler-hunchentoot.nix
+++ /dev/null
@@ -1,55 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "clack-handler-hunchentoot";
-  version = "clack-20210411-git";
-
-  description = "Clack handler for Hunchentoot.";
-
-  deps = [ args."alexandria" args."babel" args."bordeaux-threads" args."cffi" args."chunga" args."cl_plus_ssl" args."cl-base64" args."cl-fad" args."cl-ppcre" args."clack-socket" args."flexi-streams" args."hunchentoot" args."md5" args."rfc2388" args."split-sequence" args."trivial-backtrace" args."trivial-features" args."trivial-garbage" args."trivial-gray-streams" args."usocket" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/clack/2021-04-11/clack-20210411-git.tgz";
-    sha256 = "0yai9cx1gha684ljr8k1s5n4mi6mpj2wmvv6b9iw7pw1vhw5m8mf";
-  };
-
-  packageName = "clack-handler-hunchentoot";
-
-  asdFilesToKeep = ["clack-handler-hunchentoot.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM clack-handler-hunchentoot DESCRIPTION Clack handler for Hunchentoot.
-    SHA256 0yai9cx1gha684ljr8k1s5n4mi6mpj2wmvv6b9iw7pw1vhw5m8mf URL
-    http://beta.quicklisp.org/archive/clack/2021-04-11/clack-20210411-git.tgz
-    MD5 c47deb6287b72fc9033055914787f3a5 NAME clack-handler-hunchentoot
-    FILENAME clack-handler-hunchentoot DEPS
-    ((NAME alexandria FILENAME alexandria) (NAME babel FILENAME babel)
-     (NAME bordeaux-threads FILENAME bordeaux-threads)
-     (NAME cffi FILENAME cffi) (NAME chunga FILENAME chunga)
-     (NAME cl+ssl FILENAME cl_plus_ssl) (NAME cl-base64 FILENAME cl-base64)
-     (NAME cl-fad FILENAME cl-fad) (NAME cl-ppcre FILENAME cl-ppcre)
-     (NAME clack-socket FILENAME clack-socket)
-     (NAME flexi-streams FILENAME flexi-streams)
-     (NAME hunchentoot FILENAME hunchentoot) (NAME md5 FILENAME md5)
-     (NAME rfc2388 FILENAME rfc2388)
-     (NAME split-sequence FILENAME split-sequence)
-     (NAME trivial-backtrace FILENAME trivial-backtrace)
-     (NAME trivial-features FILENAME trivial-features)
-     (NAME trivial-garbage FILENAME trivial-garbage)
-     (NAME trivial-gray-streams FILENAME trivial-gray-streams)
-     (NAME usocket FILENAME usocket))
-    DEPENDENCIES
-    (alexandria babel bordeaux-threads cffi chunga cl+ssl cl-base64 cl-fad
-     cl-ppcre clack-socket flexi-streams hunchentoot md5 rfc2388 split-sequence
-     trivial-backtrace trivial-features trivial-garbage trivial-gray-streams
-     usocket)
-    VERSION clack-20210411-git SIBLINGS
-    (clack-handler-fcgi clack-handler-toot clack-handler-wookie clack-socket
-     clack-test clack-v1-compat clack t-clack-handler-fcgi
-     t-clack-handler-hunchentoot t-clack-handler-toot t-clack-handler-wookie
-     t-clack-v1-compat clack-middleware-auth-basic clack-middleware-clsql
-     clack-middleware-csrf clack-middleware-dbi clack-middleware-oauth
-     clack-middleware-postmodern clack-middleware-rucksack
-     clack-session-store-dbi t-clack-middleware-auth-basic
-     t-clack-middleware-csrf)
-    PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/clack-socket.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/clack-socket.nix
deleted file mode 100644
index 3418c76a5d65..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/clack-socket.nix
+++ /dev/null
@@ -1,29 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "clack-socket";
-  version = "clack-20211209-git";
-
-  description = "System lacks description";
-
-  deps = [ ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/clack/2021-12-09/clack-20211209-git.tgz";
-    sha256 = "1gp323083ds89cw3vd6w40d4cwx04y0qaqdz4wx2332klhvvdnsd";
-  };
-
-  packageName = "clack-socket";
-
-  asdFilesToKeep = ["clack-socket.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM clack-socket DESCRIPTION System lacks description SHA256
-    1gp323083ds89cw3vd6w40d4cwx04y0qaqdz4wx2332klhvvdnsd URL
-    http://beta.quicklisp.org/archive/clack/2021-12-09/clack-20211209-git.tgz
-    MD5 c223a854a79b257e0489e185abe48e16 NAME clack-socket FILENAME
-    clack-socket DEPS NIL DEPENDENCIES NIL VERSION clack-20211209-git SIBLINGS
-    (clack-handler-fcgi clack-handler-hunchentoot clack-handler-toot
-     clack-handler-wookie clack-test clack t-clack-handler-fcgi
-     t-clack-handler-hunchentoot t-clack-handler-toot t-clack-handler-wookie)
-    PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/clack-test.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/clack-test.nix
deleted file mode 100644
index ab2794fbdd1c..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/clack-test.nix
+++ /dev/null
@@ -1,80 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "clack-test";
-  version = "clack-20210411-git";
-
-  description = "Testing Clack Applications.";
-
-  deps = [ args."alexandria" args."babel" args."bordeaux-threads" args."cffi" args."cffi-grovel" args."cffi-toolchain" args."chipz" args."chunga" args."cl_plus_ssl" args."cl-annot" args."cl-base64" args."cl-cookie" args."cl-fad" args."cl-ppcre" args."cl-reexport" args."cl-syntax" args."cl-syntax-annot" args."cl-utilities" args."clack" args."clack-handler-hunchentoot" args."clack-socket" args."dexador" args."dissect" args."fast-http" args."fast-io" args."flexi-streams" args."http-body" args."hunchentoot" args."ironclad" args."jonathan" args."lack" args."lack-component" args."lack-middleware-backtrace" args."lack-util" args."local-time" args."md5" args."named-readtables" args."proc-parse" args."quri" args."rfc2388" args."rove" args."smart-buffer" args."split-sequence" args."static-vectors" args."trivial-backtrace" args."trivial-features" args."trivial-garbage" args."trivial-gray-streams" args."trivial-mimes" args."trivial-types" args."usocket" args."xsubseq" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/clack/2021-04-11/clack-20210411-git.tgz";
-    sha256 = "0yai9cx1gha684ljr8k1s5n4mi6mpj2wmvv6b9iw7pw1vhw5m8mf";
-  };
-
-  packageName = "clack-test";
-
-  asdFilesToKeep = ["clack-test.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM clack-test DESCRIPTION Testing Clack Applications. SHA256
-    0yai9cx1gha684ljr8k1s5n4mi6mpj2wmvv6b9iw7pw1vhw5m8mf URL
-    http://beta.quicklisp.org/archive/clack/2021-04-11/clack-20210411-git.tgz
-    MD5 c47deb6287b72fc9033055914787f3a5 NAME clack-test FILENAME clack-test
-    DEPS
-    ((NAME alexandria FILENAME alexandria) (NAME babel FILENAME babel)
-     (NAME bordeaux-threads FILENAME bordeaux-threads)
-     (NAME cffi FILENAME cffi) (NAME cffi-grovel FILENAME cffi-grovel)
-     (NAME cffi-toolchain FILENAME cffi-toolchain) (NAME chipz FILENAME chipz)
-     (NAME chunga FILENAME chunga) (NAME cl+ssl FILENAME cl_plus_ssl)
-     (NAME cl-annot FILENAME cl-annot) (NAME cl-base64 FILENAME cl-base64)
-     (NAME cl-cookie FILENAME cl-cookie) (NAME cl-fad FILENAME cl-fad)
-     (NAME cl-ppcre FILENAME cl-ppcre) (NAME cl-reexport FILENAME cl-reexport)
-     (NAME cl-syntax FILENAME cl-syntax)
-     (NAME cl-syntax-annot FILENAME cl-syntax-annot)
-     (NAME cl-utilities FILENAME cl-utilities) (NAME clack FILENAME clack)
-     (NAME clack-handler-hunchentoot FILENAME clack-handler-hunchentoot)
-     (NAME clack-socket FILENAME clack-socket) (NAME dexador FILENAME dexador)
-     (NAME dissect FILENAME dissect) (NAME fast-http FILENAME fast-http)
-     (NAME fast-io FILENAME fast-io)
-     (NAME flexi-streams FILENAME flexi-streams)
-     (NAME http-body FILENAME http-body)
-     (NAME hunchentoot FILENAME hunchentoot) (NAME ironclad FILENAME ironclad)
-     (NAME jonathan FILENAME jonathan) (NAME lack FILENAME lack)
-     (NAME lack-component FILENAME lack-component)
-     (NAME lack-middleware-backtrace FILENAME lack-middleware-backtrace)
-     (NAME lack-util FILENAME lack-util) (NAME local-time FILENAME local-time)
-     (NAME md5 FILENAME md5) (NAME named-readtables FILENAME named-readtables)
-     (NAME proc-parse FILENAME proc-parse) (NAME quri FILENAME quri)
-     (NAME rfc2388 FILENAME rfc2388) (NAME rove FILENAME rove)
-     (NAME smart-buffer FILENAME smart-buffer)
-     (NAME split-sequence FILENAME split-sequence)
-     (NAME static-vectors FILENAME static-vectors)
-     (NAME trivial-backtrace FILENAME trivial-backtrace)
-     (NAME trivial-features FILENAME trivial-features)
-     (NAME trivial-garbage FILENAME trivial-garbage)
-     (NAME trivial-gray-streams FILENAME trivial-gray-streams)
-     (NAME trivial-mimes FILENAME trivial-mimes)
-     (NAME trivial-types FILENAME trivial-types)
-     (NAME usocket FILENAME usocket) (NAME xsubseq FILENAME xsubseq))
-    DEPENDENCIES
-    (alexandria babel bordeaux-threads cffi cffi-grovel cffi-toolchain chipz
-     chunga cl+ssl cl-annot cl-base64 cl-cookie cl-fad cl-ppcre cl-reexport
-     cl-syntax cl-syntax-annot cl-utilities clack clack-handler-hunchentoot
-     clack-socket dexador dissect fast-http fast-io flexi-streams http-body
-     hunchentoot ironclad jonathan lack lack-component
-     lack-middleware-backtrace lack-util local-time md5 named-readtables
-     proc-parse quri rfc2388 rove smart-buffer split-sequence static-vectors
-     trivial-backtrace trivial-features trivial-garbage trivial-gray-streams
-     trivial-mimes trivial-types usocket xsubseq)
-    VERSION clack-20210411-git SIBLINGS
-    (clack-handler-fcgi clack-handler-hunchentoot clack-handler-toot
-     clack-handler-wookie clack-socket clack-v1-compat clack
-     t-clack-handler-fcgi t-clack-handler-hunchentoot t-clack-handler-toot
-     t-clack-handler-wookie t-clack-v1-compat clack-middleware-auth-basic
-     clack-middleware-clsql clack-middleware-csrf clack-middleware-dbi
-     clack-middleware-oauth clack-middleware-postmodern
-     clack-middleware-rucksack clack-session-store-dbi
-     t-clack-middleware-auth-basic t-clack-middleware-csrf)
-    PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/clack.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/clack.nix
deleted file mode 100644
index 74038d47d8ae..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/clack.nix
+++ /dev/null
@@ -1,40 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "clack";
-  version = "20211209-git";
-
-  description = "Web application environment for Common Lisp";
-
-  deps = [ args."alexandria" args."bordeaux-threads" args."ironclad" args."lack" args."lack-component" args."lack-middleware-backtrace" args."lack-util" args."split-sequence" args."uiop" args."usocket" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/clack/2021-12-09/clack-20211209-git.tgz";
-    sha256 = "1gp323083ds89cw3vd6w40d4cwx04y0qaqdz4wx2332klhvvdnsd";
-  };
-
-  packageName = "clack";
-
-  asdFilesToKeep = ["clack.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM clack DESCRIPTION Web application environment for Common Lisp SHA256
-    1gp323083ds89cw3vd6w40d4cwx04y0qaqdz4wx2332klhvvdnsd URL
-    http://beta.quicklisp.org/archive/clack/2021-12-09/clack-20211209-git.tgz
-    MD5 c223a854a79b257e0489e185abe48e16 NAME clack FILENAME clack DEPS
-    ((NAME alexandria FILENAME alexandria)
-     (NAME bordeaux-threads FILENAME bordeaux-threads)
-     (NAME ironclad FILENAME ironclad) (NAME lack FILENAME lack)
-     (NAME lack-component FILENAME lack-component)
-     (NAME lack-middleware-backtrace FILENAME lack-middleware-backtrace)
-     (NAME lack-util FILENAME lack-util)
-     (NAME split-sequence FILENAME split-sequence) (NAME uiop FILENAME uiop)
-     (NAME usocket FILENAME usocket))
-    DEPENDENCIES
-    (alexandria bordeaux-threads ironclad lack lack-component
-     lack-middleware-backtrace lack-util split-sequence uiop usocket)
-    VERSION 20211209-git SIBLINGS
-    (clack-handler-fcgi clack-handler-hunchentoot clack-handler-toot
-     clack-handler-wookie clack-socket clack-test t-clack-handler-fcgi
-     t-clack-handler-hunchentoot t-clack-handler-toot t-clack-handler-wookie)
-    PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/classowary.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/classowary.nix
deleted file mode 100644
index 375666d6fc15..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/classowary.nix
+++ /dev/null
@@ -1,30 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "classowary";
-  version = "20191007-git";
-
-  description = "An implementation of the Cassowary linear constraint solver toolkit";
-
-  deps = [ args."documentation-utils" args."trivial-indent" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/classowary/2019-10-07/classowary-20191007-git.tgz";
-    sha256 = "1r3535lgap7218v51k5rn2wlml4mlam3sgjg1lvac1vybiv4c287";
-  };
-
-  packageName = "classowary";
-
-  asdFilesToKeep = ["classowary.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM classowary DESCRIPTION
-    An implementation of the Cassowary linear constraint solver toolkit SHA256
-    1r3535lgap7218v51k5rn2wlml4mlam3sgjg1lvac1vybiv4c287 URL
-    http://beta.quicklisp.org/archive/classowary/2019-10-07/classowary-20191007-git.tgz
-    MD5 a2587986780a40251b0327686b817cc6 NAME classowary FILENAME classowary
-    DEPS
-    ((NAME documentation-utils FILENAME documentation-utils)
-     (NAME trivial-indent FILENAME trivial-indent))
-    DEPENDENCIES (documentation-utils trivial-indent) VERSION 20191007-git
-    SIBLINGS (classowary-test) PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/clfswm.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/clfswm.nix
deleted file mode 100644
index ccd9fe613196..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/clfswm.nix
+++ /dev/null
@@ -1,26 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "clfswm";
-  version = "20161204-git";
-
-  description = "CLFSWM: Fullscreen Window Manager";
-
-  deps = [ args."clx" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/clfswm/2016-12-04/clfswm-20161204-git.tgz";
-    sha256 = "1jgz127721dgcv3qm1knc335gy04vzh9gl0hshp256rxi82cpp73";
-  };
-
-  packageName = "clfswm";
-
-  asdFilesToKeep = ["clfswm.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM clfswm DESCRIPTION CLFSWM: Fullscreen Window Manager SHA256
-    1jgz127721dgcv3qm1knc335gy04vzh9gl0hshp256rxi82cpp73 URL
-    http://beta.quicklisp.org/archive/clfswm/2016-12-04/clfswm-20161204-git.tgz
-    MD5 dc976785ef899837ab0fc50a4ed6b740 NAME clfswm FILENAME clfswm DEPS
-    ((NAME clx FILENAME clx)) DEPENDENCIES (clx) VERSION 20161204-git SIBLINGS
-    NIL PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/closer-mop.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/closer-mop.nix
deleted file mode 100644
index a6de9070d9a9..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/closer-mop.nix
+++ /dev/null
@@ -1,26 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "closer-mop";
-  version = "20211209-git";
-
-  description = "Closer to MOP is a compatibility layer that rectifies many of the absent or incorrect CLOS MOP features across a broad range of Common Lisp implementations.";
-
-  deps = [ ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/closer-mop/2021-12-09/closer-mop-20211209-git.tgz";
-    sha256 = "1zrjsibbph8dz8k0qjawp9c22094rag3aasd4r761m2r482xf5zl";
-  };
-
-  packageName = "closer-mop";
-
-  asdFilesToKeep = ["closer-mop.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM closer-mop DESCRIPTION
-    Closer to MOP is a compatibility layer that rectifies many of the absent or incorrect CLOS MOP features across a broad range of Common Lisp implementations.
-    SHA256 1zrjsibbph8dz8k0qjawp9c22094rag3aasd4r761m2r482xf5zl URL
-    http://beta.quicklisp.org/archive/closer-mop/2021-12-09/closer-mop-20211209-git.tgz
-    MD5 0b2a02f6b6a57b5b707df5e1d51950cd NAME closer-mop FILENAME closer-mop
-    DEPS NIL DEPENDENCIES NIL VERSION 20211209-git SIBLINGS NIL PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/closure-common.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/closure-common.nix
deleted file mode 100644
index 6720aa516dff..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/closure-common.nix
+++ /dev/null
@@ -1,30 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "closure-common";
-  version = "20181018-git";
-
-  description = "System lacks description";
-
-  deps = [ args."alexandria" args."babel" args."trivial-features" args."trivial-gray-streams" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/closure-common/2018-10-18/closure-common-20181018-git.tgz";
-    sha256 = "18bp7jnxma9hscp09fa723ws9nnynjil935rp8dy9hp6ypghpxpn";
-  };
-
-  packageName = "closure-common";
-
-  asdFilesToKeep = ["closure-common.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM closure-common DESCRIPTION System lacks description SHA256
-    18bp7jnxma9hscp09fa723ws9nnynjil935rp8dy9hp6ypghpxpn URL
-    http://beta.quicklisp.org/archive/closure-common/2018-10-18/closure-common-20181018-git.tgz
-    MD5 b09ee60c258a29f0c107960ec4c04ada NAME closure-common FILENAME
-    closure-common DEPS
-    ((NAME alexandria FILENAME alexandria) (NAME babel FILENAME babel)
-     (NAME trivial-features FILENAME trivial-features)
-     (NAME trivial-gray-streams FILENAME trivial-gray-streams))
-    DEPENDENCIES (alexandria babel trivial-features trivial-gray-streams)
-    VERSION 20181018-git SIBLINGS NIL PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/closure-html.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/closure-html.nix
deleted file mode 100644
index a0233a31be51..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/closure-html.nix
+++ /dev/null
@@ -1,34 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "closure-html";
-  version = "20180711-git";
-
-  description = "System lacks description";
-
-  deps = [ args."alexandria" args."babel" args."closure-common" args."flexi-streams" args."trivial-features" args."trivial-gray-streams" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/closure-html/2018-07-11/closure-html-20180711-git.tgz";
-    sha256 = "0ljcrz1wix77h1ywp0bixm3pb5ncmr1vdiwh8m1qzkygwpfjr8aq";
-  };
-
-  packageName = "closure-html";
-
-  asdFilesToKeep = ["closure-html.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM closure-html DESCRIPTION System lacks description SHA256
-    0ljcrz1wix77h1ywp0bixm3pb5ncmr1vdiwh8m1qzkygwpfjr8aq URL
-    http://beta.quicklisp.org/archive/closure-html/2018-07-11/closure-html-20180711-git.tgz
-    MD5 461dc8caa65385da5f2d1cd8dd4f965f NAME closure-html FILENAME
-    closure-html DEPS
-    ((NAME alexandria FILENAME alexandria) (NAME babel FILENAME babel)
-     (NAME closure-common FILENAME closure-common)
-     (NAME flexi-streams FILENAME flexi-streams)
-     (NAME trivial-features FILENAME trivial-features)
-     (NAME trivial-gray-streams FILENAME trivial-gray-streams))
-    DEPENDENCIES
-    (alexandria babel closure-common flexi-streams trivial-features
-     trivial-gray-streams)
-    VERSION 20180711-git SIBLINGS NIL PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/clsql-postgresql-socket.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/clsql-postgresql-socket.nix
deleted file mode 100644
index 9ec7791eec68..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/clsql-postgresql-socket.nix
+++ /dev/null
@@ -1,32 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "clsql-postgresql-socket";
-  version = "clsql-20210228-git";
-
-  description = "Common Lisp SQL PostgreSQL Socket Driver";
-
-  deps = [ args."clsql" args."md5" args."uffi" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/clsql/2021-02-28/clsql-20210228-git.tgz";
-    sha256 = "0g7racshjy47xbfijymddjwnphp0c93z2lnlgi330g257s9l7vd4";
-  };
-
-  packageName = "clsql-postgresql-socket";
-
-  asdFilesToKeep = ["clsql-postgresql-socket.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM clsql-postgresql-socket DESCRIPTION
-    Common Lisp SQL PostgreSQL Socket Driver SHA256
-    0g7racshjy47xbfijymddjwnphp0c93z2lnlgi330g257s9l7vd4 URL
-    http://beta.quicklisp.org/archive/clsql/2021-02-28/clsql-20210228-git.tgz
-    MD5 d32b2b37e4211f5da61d2e29847a2f12 NAME clsql-postgresql-socket FILENAME
-    clsql-postgresql-socket DEPS
-    ((NAME clsql FILENAME clsql) (NAME md5 FILENAME md5)
-     (NAME uffi FILENAME uffi))
-    DEPENDENCIES (clsql md5 uffi) VERSION clsql-20210228-git SIBLINGS
-    (clsql-aodbc clsql-cffi clsql-mysql clsql-odbc clsql-postgresql-socket3
-     clsql-postgresql clsql-sqlite clsql-sqlite3 clsql-tests clsql-uffi clsql)
-    PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/clsql-postgresql.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/clsql-postgresql.nix
deleted file mode 100644
index 0c75f8a27742..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/clsql-postgresql.nix
+++ /dev/null
@@ -1,32 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "clsql-postgresql";
-  version = "clsql-20210228-git";
-
-  description = "Common Lisp PostgreSQL API Driver";
-
-  deps = [ args."clsql" args."clsql-uffi" args."uffi" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/clsql/2021-02-28/clsql-20210228-git.tgz";
-    sha256 = "0g7racshjy47xbfijymddjwnphp0c93z2lnlgi330g257s9l7vd4";
-  };
-
-  packageName = "clsql-postgresql";
-
-  asdFilesToKeep = ["clsql-postgresql.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM clsql-postgresql DESCRIPTION Common Lisp PostgreSQL API Driver
-    SHA256 0g7racshjy47xbfijymddjwnphp0c93z2lnlgi330g257s9l7vd4 URL
-    http://beta.quicklisp.org/archive/clsql/2021-02-28/clsql-20210228-git.tgz
-    MD5 d32b2b37e4211f5da61d2e29847a2f12 NAME clsql-postgresql FILENAME
-    clsql-postgresql DEPS
-    ((NAME clsql FILENAME clsql) (NAME clsql-uffi FILENAME clsql-uffi)
-     (NAME uffi FILENAME uffi))
-    DEPENDENCIES (clsql clsql-uffi uffi) VERSION clsql-20210228-git SIBLINGS
-    (clsql-aodbc clsql-cffi clsql-mysql clsql-odbc clsql-postgresql-socket
-     clsql-postgresql-socket3 clsql-sqlite clsql-sqlite3 clsql-tests clsql-uffi
-     clsql)
-    PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/clsql-sqlite3.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/clsql-sqlite3.nix
deleted file mode 100644
index e0f8c6ad358a..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/clsql-sqlite3.nix
+++ /dev/null
@@ -1,32 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "clsql-sqlite3";
-  version = "clsql-20210228-git";
-
-  description = "Common Lisp Sqlite3 Driver";
-
-  deps = [ args."clsql" args."clsql-uffi" args."uffi" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/clsql/2021-02-28/clsql-20210228-git.tgz";
-    sha256 = "0g7racshjy47xbfijymddjwnphp0c93z2lnlgi330g257s9l7vd4";
-  };
-
-  packageName = "clsql-sqlite3";
-
-  asdFilesToKeep = ["clsql-sqlite3.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM clsql-sqlite3 DESCRIPTION Common Lisp Sqlite3 Driver SHA256
-    0g7racshjy47xbfijymddjwnphp0c93z2lnlgi330g257s9l7vd4 URL
-    http://beta.quicklisp.org/archive/clsql/2021-02-28/clsql-20210228-git.tgz
-    MD5 d32b2b37e4211f5da61d2e29847a2f12 NAME clsql-sqlite3 FILENAME
-    clsql-sqlite3 DEPS
-    ((NAME clsql FILENAME clsql) (NAME clsql-uffi FILENAME clsql-uffi)
-     (NAME uffi FILENAME uffi))
-    DEPENDENCIES (clsql clsql-uffi uffi) VERSION clsql-20210228-git SIBLINGS
-    (clsql-aodbc clsql-cffi clsql-mysql clsql-odbc clsql-postgresql-socket
-     clsql-postgresql-socket3 clsql-postgresql clsql-sqlite clsql-tests
-     clsql-uffi clsql)
-    PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/clsql-uffi.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/clsql-uffi.nix
deleted file mode 100644
index 566ee1a87fad..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/clsql-uffi.nix
+++ /dev/null
@@ -1,31 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "clsql-uffi";
-  version = "clsql-20210228-git";
-
-  description = "Common UFFI Helper functions for Common Lisp SQL Interface Library";
-
-  deps = [ args."clsql" args."uffi" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/clsql/2021-02-28/clsql-20210228-git.tgz";
-    sha256 = "0g7racshjy47xbfijymddjwnphp0c93z2lnlgi330g257s9l7vd4";
-  };
-
-  packageName = "clsql-uffi";
-
-  asdFilesToKeep = ["clsql-uffi.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM clsql-uffi DESCRIPTION
-    Common UFFI Helper functions for Common Lisp SQL Interface Library SHA256
-    0g7racshjy47xbfijymddjwnphp0c93z2lnlgi330g257s9l7vd4 URL
-    http://beta.quicklisp.org/archive/clsql/2021-02-28/clsql-20210228-git.tgz
-    MD5 d32b2b37e4211f5da61d2e29847a2f12 NAME clsql-uffi FILENAME clsql-uffi
-    DEPS ((NAME clsql FILENAME clsql) (NAME uffi FILENAME uffi)) DEPENDENCIES
-    (clsql uffi) VERSION clsql-20210228-git SIBLINGS
-    (clsql-aodbc clsql-cffi clsql-mysql clsql-odbc clsql-postgresql-socket
-     clsql-postgresql-socket3 clsql-postgresql clsql-sqlite clsql-sqlite3
-     clsql-tests clsql)
-    PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/clsql.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/clsql.nix
deleted file mode 100644
index 282262927f32..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/clsql.nix
+++ /dev/null
@@ -1,30 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "clsql";
-  version = "20210228-git";
-
-  description = "Common Lisp SQL Interface library";
-
-  deps = [ args."uffi" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/clsql/2021-02-28/clsql-20210228-git.tgz";
-    sha256 = "0g7racshjy47xbfijymddjwnphp0c93z2lnlgi330g257s9l7vd4";
-  };
-
-  packageName = "clsql";
-
-  asdFilesToKeep = ["clsql.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM clsql DESCRIPTION Common Lisp SQL Interface library SHA256
-    0g7racshjy47xbfijymddjwnphp0c93z2lnlgi330g257s9l7vd4 URL
-    http://beta.quicklisp.org/archive/clsql/2021-02-28/clsql-20210228-git.tgz
-    MD5 d32b2b37e4211f5da61d2e29847a2f12 NAME clsql FILENAME clsql DEPS
-    ((NAME uffi FILENAME uffi)) DEPENDENCIES (uffi) VERSION 20210228-git
-    SIBLINGS
-    (clsql-aodbc clsql-cffi clsql-mysql clsql-odbc clsql-postgresql-socket
-     clsql-postgresql-socket3 clsql-postgresql clsql-sqlite clsql-sqlite3
-     clsql-tests clsql-uffi)
-    PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/clss.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/clss.nix
deleted file mode 100644
index af74074f087a..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/clss.nix
+++ /dev/null
@@ -1,29 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "clss";
-  version = "20191130-git";
-
-  description = "A DOM tree searching engine based on CSS selectors.";
-
-  deps = [ args."array-utils" args."documentation-utils" args."plump" args."trivial-indent" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/clss/2019-11-30/clss-20191130-git.tgz";
-    sha256 = "0cbjzsc90fpa8zqv5s0ri7ncbv6f8azgbbfsxswqfphbibkcpcka";
-  };
-
-  packageName = "clss";
-
-  asdFilesToKeep = ["clss.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM clss DESCRIPTION A DOM tree searching engine based on CSS selectors.
-    SHA256 0cbjzsc90fpa8zqv5s0ri7ncbv6f8azgbbfsxswqfphbibkcpcka URL
-    http://beta.quicklisp.org/archive/clss/2019-11-30/clss-20191130-git.tgz MD5
-    9910677b36df00f3046905a9b84122a9 NAME clss FILENAME clss DEPS
-    ((NAME array-utils FILENAME array-utils)
-     (NAME documentation-utils FILENAME documentation-utils)
-     (NAME plump FILENAME plump) (NAME trivial-indent FILENAME trivial-indent))
-    DEPENDENCIES (array-utils documentation-utils plump trivial-indent) VERSION
-    20191130-git SIBLINGS NIL PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/clump-2-3-tree.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/clump-2-3-tree.nix
deleted file mode 100644
index 53b4db5dc19b..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/clump-2-3-tree.nix
+++ /dev/null
@@ -1,27 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "clump-2-3-tree";
-  version = "clump-20160825-git";
-
-  description = "System lacks description";
-
-  deps = [ args."acclimation" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/clump/2016-08-25/clump-20160825-git.tgz";
-    sha256 = "1mngxmwklpi52inihkp4akzdi7y32609spfi70yamwgzc1wijbrl";
-  };
-
-  packageName = "clump-2-3-tree";
-
-  asdFilesToKeep = ["clump-2-3-tree.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM clump-2-3-tree DESCRIPTION System lacks description SHA256
-    1mngxmwklpi52inihkp4akzdi7y32609spfi70yamwgzc1wijbrl URL
-    http://beta.quicklisp.org/archive/clump/2016-08-25/clump-20160825-git.tgz
-    MD5 5132d2800138d435ef69f7e68b025c8f NAME clump-2-3-tree FILENAME
-    clump-2-3-tree DEPS ((NAME acclimation FILENAME acclimation)) DEPENDENCIES
-    (acclimation) VERSION clump-20160825-git SIBLINGS
-    (clump-binary-tree clump-test clump) PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/clump-binary-tree.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/clump-binary-tree.nix
deleted file mode 100644
index 2f71fb3eb9d3..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/clump-binary-tree.nix
+++ /dev/null
@@ -1,27 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "clump-binary-tree";
-  version = "clump-20160825-git";
-
-  description = "System lacks description";
-
-  deps = [ args."acclimation" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/clump/2016-08-25/clump-20160825-git.tgz";
-    sha256 = "1mngxmwklpi52inihkp4akzdi7y32609spfi70yamwgzc1wijbrl";
-  };
-
-  packageName = "clump-binary-tree";
-
-  asdFilesToKeep = ["clump-binary-tree.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM clump-binary-tree DESCRIPTION System lacks description SHA256
-    1mngxmwklpi52inihkp4akzdi7y32609spfi70yamwgzc1wijbrl URL
-    http://beta.quicklisp.org/archive/clump/2016-08-25/clump-20160825-git.tgz
-    MD5 5132d2800138d435ef69f7e68b025c8f NAME clump-binary-tree FILENAME
-    clump-binary-tree DEPS ((NAME acclimation FILENAME acclimation))
-    DEPENDENCIES (acclimation) VERSION clump-20160825-git SIBLINGS
-    (clump-2-3-tree clump-test clump) PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/clump.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/clump.nix
deleted file mode 100644
index 4591b00a78fd..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/clump.nix
+++ /dev/null
@@ -1,30 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "clump";
-  version = "20160825-git";
-
-  description = "Library for operations on different kinds of trees";
-
-  deps = [ args."acclimation" args."clump-2-3-tree" args."clump-binary-tree" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/clump/2016-08-25/clump-20160825-git.tgz";
-    sha256 = "1mngxmwklpi52inihkp4akzdi7y32609spfi70yamwgzc1wijbrl";
-  };
-
-  packageName = "clump";
-
-  asdFilesToKeep = ["clump.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM clump DESCRIPTION Library for operations on different kinds of trees
-    SHA256 1mngxmwklpi52inihkp4akzdi7y32609spfi70yamwgzc1wijbrl URL
-    http://beta.quicklisp.org/archive/clump/2016-08-25/clump-20160825-git.tgz
-    MD5 5132d2800138d435ef69f7e68b025c8f NAME clump FILENAME clump DEPS
-    ((NAME acclimation FILENAME acclimation)
-     (NAME clump-2-3-tree FILENAME clump-2-3-tree)
-     (NAME clump-binary-tree FILENAME clump-binary-tree))
-    DEPENDENCIES (acclimation clump-2-3-tree clump-binary-tree) VERSION
-    20160825-git SIBLINGS (clump-2-3-tree clump-binary-tree clump-test)
-    PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/clunit.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/clunit.nix
deleted file mode 100644
index d5012847ca9f..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/clunit.nix
+++ /dev/null
@@ -1,25 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "clunit";
-  version = "20171019-git";
-
-  description = "CLUnit is a Common Lisp unit testing framework.";
-
-  deps = [ ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/clunit/2017-10-19/clunit-20171019-git.tgz";
-    sha256 = "1rapyh0fbjnksj8j3y6imzya1kw80882w18j0fv9iq1hlp718zs5";
-  };
-
-  packageName = "clunit";
-
-  asdFilesToKeep = ["clunit.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM clunit DESCRIPTION CLUnit is a Common Lisp unit testing framework.
-    SHA256 1rapyh0fbjnksj8j3y6imzya1kw80882w18j0fv9iq1hlp718zs5 URL
-    http://beta.quicklisp.org/archive/clunit/2017-10-19/clunit-20171019-git.tgz
-    MD5 389017f2f05a6287078ddacd0471817e NAME clunit FILENAME clunit DEPS NIL
-    DEPENDENCIES NIL VERSION 20171019-git SIBLINGS NIL PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/clunit2.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/clunit2.nix
deleted file mode 100644
index 2c1a1b392362..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/clunit2.nix
+++ /dev/null
@@ -1,25 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "clunit2";
-  version = "20211020-git";
-
-  description = "CLUnit is a Common Lisp unit testing framework.";
-
-  deps = [ ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/clunit2/2021-10-20/clunit2-20211020-git.tgz";
-    sha256 = "0qly5gk1fn0bd0kx6spdhmnsf58gdg19py46w10p5vvs41vvriy3";
-  };
-
-  packageName = "clunit2";
-
-  asdFilesToKeep = ["clunit2.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM clunit2 DESCRIPTION CLUnit is a Common Lisp unit testing framework.
-    SHA256 0qly5gk1fn0bd0kx6spdhmnsf58gdg19py46w10p5vvs41vvriy3 URL
-    http://beta.quicklisp.org/archive/clunit2/2021-10-20/clunit2-20211020-git.tgz
-    MD5 0ee5b2d53c81e9640d3aa8c904b0b236 NAME clunit2 FILENAME clunit2 DEPS NIL
-    DEPENDENCIES NIL VERSION 20211020-git SIBLINGS NIL PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/clx.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/clx.nix
deleted file mode 100644
index 7518845bd112..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/clx.nix
+++ /dev/null
@@ -1,29 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "clx";
-  version = "20211020-git";
-
-  parasites = [ "clx/test" ];
-
-  description = "An implementation of the X Window System protocol in Lisp.";
-
-  deps = [ args."fiasco" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/clx/2021-10-20/clx-20211020-git.tgz";
-    sha256 = "1mgqcqakbm8s4w2r9831xzhy9lyifcl2b3rhl5p76s5vpnjmp88k";
-  };
-
-  packageName = "clx";
-
-  asdFilesToKeep = ["clx.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM clx DESCRIPTION
-    An implementation of the X Window System protocol in Lisp. SHA256
-    1mgqcqakbm8s4w2r9831xzhy9lyifcl2b3rhl5p76s5vpnjmp88k URL
-    http://beta.quicklisp.org/archive/clx/2021-10-20/clx-20211020-git.tgz MD5
-    ac10db96a6426cf462f8d417a7797621 NAME clx FILENAME clx DEPS
-    ((NAME fiasco FILENAME fiasco)) DEPENDENCIES (fiasco) VERSION 20211020-git
-    SIBLINGS NIL PARASITES (clx/test)) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/collectors.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/collectors.nix
deleted file mode 100644
index a99211953cc7..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/collectors.nix
+++ /dev/null
@@ -1,36 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "collectors";
-  version = "20161204-git";
-
-  parasites = [ "collectors-test" ];
-
-  description = "A library providing various collector type macros
-   pulled from arnesi into its own library and stripped of dependencies";
-
-  deps = [ args."alexandria" args."closer-mop" args."iterate" args."lisp-unit2" args."symbol-munger" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/collectors/2016-12-04/collectors-20161204-git.tgz";
-    sha256 = "0cf2y2yxraqs9v54gbj8hhp7s522gz8qfwwc5hvlhl2s7540b2zf";
-  };
-
-  packageName = "collectors";
-
-  asdFilesToKeep = ["collectors.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM collectors DESCRIPTION
-    A library providing various collector type macros
-   pulled from arnesi into its own library and stripped of dependencies
-    SHA256 0cf2y2yxraqs9v54gbj8hhp7s522gz8qfwwc5hvlhl2s7540b2zf URL
-    http://beta.quicklisp.org/archive/collectors/2016-12-04/collectors-20161204-git.tgz
-    MD5 59c8c885a8e512d4f09e73d3e0c97b1f NAME collectors FILENAME collectors
-    DEPS
-    ((NAME alexandria FILENAME alexandria)
-     (NAME closer-mop FILENAME closer-mop) (NAME iterate FILENAME iterate)
-     (NAME lisp-unit2 FILENAME lisp-unit2)
-     (NAME symbol-munger FILENAME symbol-munger))
-    DEPENDENCIES (alexandria closer-mop iterate lisp-unit2 symbol-munger)
-    VERSION 20161204-git SIBLINGS NIL PARASITES (collectors-test)) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/colorize.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/colorize.nix
deleted file mode 100644
index b1e1906aa5d5..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/colorize.nix
+++ /dev/null
@@ -1,29 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "colorize";
-  version = "20180228-git";
-
-  description = "A Syntax highlighting library";
-
-  deps = [ args."alexandria" args."html-encode" args."split-sequence" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/colorize/2018-02-28/colorize-20180228-git.tgz";
-    sha256 = "1g0xbryavsf17zy9iy0sbqsb4lyva04h93sbaj3iwv12w50fwz2h";
-  };
-
-  packageName = "colorize";
-
-  asdFilesToKeep = ["colorize.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM colorize DESCRIPTION A Syntax highlighting library SHA256
-    1g0xbryavsf17zy9iy0sbqsb4lyva04h93sbaj3iwv12w50fwz2h URL
-    http://beta.quicklisp.org/archive/colorize/2018-02-28/colorize-20180228-git.tgz
-    MD5 1bc08c8f76b747e4d254669a205dc611 NAME colorize FILENAME colorize DEPS
-    ((NAME alexandria FILENAME alexandria)
-     (NAME html-encode FILENAME html-encode)
-     (NAME split-sequence FILENAME split-sequence))
-    DEPENDENCIES (alexandria html-encode split-sequence) VERSION 20180228-git
-    SIBLINGS NIL PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/command-line-arguments.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/command-line-arguments.nix
deleted file mode 100644
index 9ace0471ec5e..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/command-line-arguments.nix
+++ /dev/null
@@ -1,32 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "command-line-arguments";
-  version = "20210807-git";
-
-  parasites = [ "command-line-arguments/test" ];
-
-  description = "small library to deal with command-line arguments";
-
-  deps = [ args."alexandria" args."hu_dot_dwim_dot_stefil" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/command-line-arguments/2021-08-07/command-line-arguments-20210807-git.tgz";
-    sha256 = "1ggrzdaw79ls7hk629m31z0pikibqi8x1hyi3fwd0zc8w9k3k6wk";
-  };
-
-  packageName = "command-line-arguments";
-
-  asdFilesToKeep = ["command-line-arguments.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM command-line-arguments DESCRIPTION
-    small library to deal with command-line arguments SHA256
-    1ggrzdaw79ls7hk629m31z0pikibqi8x1hyi3fwd0zc8w9k3k6wk URL
-    http://beta.quicklisp.org/archive/command-line-arguments/2021-08-07/command-line-arguments-20210807-git.tgz
-    MD5 b50ca36f5b2b19d4322ac5b5969fee22 NAME command-line-arguments FILENAME
-    command-line-arguments DEPS
-    ((NAME alexandria FILENAME alexandria)
-     (NAME hu.dwim.stefil FILENAME hu_dot_dwim_dot_stefil))
-    DEPENDENCIES (alexandria hu.dwim.stefil) VERSION 20210807-git SIBLINGS NIL
-    PARASITES (command-line-arguments/test)) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/css-lite.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/css-lite.nix
deleted file mode 100644
index e29b9910ae89..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/css-lite.nix
+++ /dev/null
@@ -1,25 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "css-lite";
-  version = "20120407-git";
-
-  description = "System lacks description";
-
-  deps = [ ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/css-lite/2012-04-07/css-lite-20120407-git.tgz";
-    sha256 = "1gf1qqaxhly6ixh9ykqhg9b52s8p5wlwi46vp2k29qy7gmx4f1qg";
-  };
-
-  packageName = "css-lite";
-
-  asdFilesToKeep = ["css-lite.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM css-lite DESCRIPTION System lacks description SHA256
-    1gf1qqaxhly6ixh9ykqhg9b52s8p5wlwi46vp2k29qy7gmx4f1qg URL
-    http://beta.quicklisp.org/archive/css-lite/2012-04-07/css-lite-20120407-git.tgz
-    MD5 9b25afb0d2c3f0c32d2303ab1d3f570d NAME css-lite FILENAME css-lite DEPS
-    NIL DEPENDENCIES NIL VERSION 20120407-git SIBLINGS NIL PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/css-selectors-simple-tree.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/css-selectors-simple-tree.nix
deleted file mode 100644
index fcd4a6918cde..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/css-selectors-simple-tree.nix
+++ /dev/null
@@ -1,52 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "css-selectors-simple-tree";
-  version = "css-selectors-20160628-git";
-
-  description = "An implementation of css selectors that interacts with cl-html5-parser's simple-tree";
-
-  deps = [ args."alexandria" args."babel" args."buildnode" args."cl-html5-parser" args."cl-interpol" args."cl-ppcre" args."cl-unicode" args."closer-mop" args."closure-common" args."closure-html" args."collectors" args."css-selectors" args."cxml" args."flexi-streams" args."iterate" args."named-readtables" args."puri" args."split-sequence" args."string-case" args."swank" args."symbol-munger" args."trivial-features" args."trivial-gray-streams" args."yacc" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/css-selectors/2016-06-28/css-selectors-20160628-git.tgz";
-    sha256 = "0y9q719w5cv4g7in731q5p98n7pznb05vr7i7wi92mmpah2g1w4b";
-  };
-
-  packageName = "css-selectors-simple-tree";
-
-  asdFilesToKeep = ["css-selectors-simple-tree.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM css-selectors-simple-tree DESCRIPTION
-    An implementation of css selectors that interacts with cl-html5-parser's simple-tree
-    SHA256 0y9q719w5cv4g7in731q5p98n7pznb05vr7i7wi92mmpah2g1w4b URL
-    http://beta.quicklisp.org/archive/css-selectors/2016-06-28/css-selectors-20160628-git.tgz
-    MD5 28537144b89af4ebe28c2eb365d5569f NAME css-selectors-simple-tree
-    FILENAME css-selectors-simple-tree DEPS
-    ((NAME alexandria FILENAME alexandria) (NAME babel FILENAME babel)
-     (NAME buildnode FILENAME buildnode)
-     (NAME cl-html5-parser FILENAME cl-html5-parser)
-     (NAME cl-interpol FILENAME cl-interpol) (NAME cl-ppcre FILENAME cl-ppcre)
-     (NAME cl-unicode FILENAME cl-unicode)
-     (NAME closer-mop FILENAME closer-mop)
-     (NAME closure-common FILENAME closure-common)
-     (NAME closure-html FILENAME closure-html)
-     (NAME collectors FILENAME collectors)
-     (NAME css-selectors FILENAME css-selectors) (NAME cxml FILENAME cxml)
-     (NAME flexi-streams FILENAME flexi-streams)
-     (NAME iterate FILENAME iterate)
-     (NAME named-readtables FILENAME named-readtables)
-     (NAME puri FILENAME puri) (NAME split-sequence FILENAME split-sequence)
-     (NAME string-case FILENAME string-case) (NAME swank FILENAME swank)
-     (NAME symbol-munger FILENAME symbol-munger)
-     (NAME trivial-features FILENAME trivial-features)
-     (NAME trivial-gray-streams FILENAME trivial-gray-streams)
-     (NAME yacc FILENAME yacc))
-    DEPENDENCIES
-    (alexandria babel buildnode cl-html5-parser cl-interpol cl-ppcre cl-unicode
-     closer-mop closure-common closure-html collectors css-selectors cxml
-     flexi-streams iterate named-readtables puri split-sequence string-case
-     swank symbol-munger trivial-features trivial-gray-streams yacc)
-    VERSION css-selectors-20160628-git SIBLINGS
-    (css-selectors-stp css-selectors) PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/css-selectors-stp.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/css-selectors-stp.nix
deleted file mode 100644
index 66917f32d3bd..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/css-selectors-stp.nix
+++ /dev/null
@@ -1,52 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "css-selectors-stp";
-  version = "css-selectors-20160628-git";
-
-  description = "An implementation of css selectors that interacts with cxml-stp";
-
-  deps = [ args."alexandria" args."babel" args."buildnode" args."cl-interpol" args."cl-ppcre" args."cl-unicode" args."closer-mop" args."closure-common" args."closure-html" args."collectors" args."css-selectors" args."cxml" args."cxml-stp" args."flexi-streams" args."iterate" args."named-readtables" args."parse-number" args."puri" args."split-sequence" args."swank" args."symbol-munger" args."trivial-features" args."trivial-gray-streams" args."xpath" args."yacc" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/css-selectors/2016-06-28/css-selectors-20160628-git.tgz";
-    sha256 = "0y9q719w5cv4g7in731q5p98n7pznb05vr7i7wi92mmpah2g1w4b";
-  };
-
-  packageName = "css-selectors-stp";
-
-  asdFilesToKeep = ["css-selectors-stp.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM css-selectors-stp DESCRIPTION
-    An implementation of css selectors that interacts with cxml-stp SHA256
-    0y9q719w5cv4g7in731q5p98n7pznb05vr7i7wi92mmpah2g1w4b URL
-    http://beta.quicklisp.org/archive/css-selectors/2016-06-28/css-selectors-20160628-git.tgz
-    MD5 28537144b89af4ebe28c2eb365d5569f NAME css-selectors-stp FILENAME
-    css-selectors-stp DEPS
-    ((NAME alexandria FILENAME alexandria) (NAME babel FILENAME babel)
-     (NAME buildnode FILENAME buildnode)
-     (NAME cl-interpol FILENAME cl-interpol) (NAME cl-ppcre FILENAME cl-ppcre)
-     (NAME cl-unicode FILENAME cl-unicode)
-     (NAME closer-mop FILENAME closer-mop)
-     (NAME closure-common FILENAME closure-common)
-     (NAME closure-html FILENAME closure-html)
-     (NAME collectors FILENAME collectors)
-     (NAME css-selectors FILENAME css-selectors) (NAME cxml FILENAME cxml)
-     (NAME cxml-stp FILENAME cxml-stp)
-     (NAME flexi-streams FILENAME flexi-streams)
-     (NAME iterate FILENAME iterate)
-     (NAME named-readtables FILENAME named-readtables)
-     (NAME parse-number FILENAME parse-number) (NAME puri FILENAME puri)
-     (NAME split-sequence FILENAME split-sequence) (NAME swank FILENAME swank)
-     (NAME symbol-munger FILENAME symbol-munger)
-     (NAME trivial-features FILENAME trivial-features)
-     (NAME trivial-gray-streams FILENAME trivial-gray-streams)
-     (NAME xpath FILENAME xpath) (NAME yacc FILENAME yacc))
-    DEPENDENCIES
-    (alexandria babel buildnode cl-interpol cl-ppcre cl-unicode closer-mop
-     closure-common closure-html collectors css-selectors cxml cxml-stp
-     flexi-streams iterate named-readtables parse-number puri split-sequence
-     swank symbol-munger trivial-features trivial-gray-streams xpath yacc)
-    VERSION css-selectors-20160628-git SIBLINGS
-    (css-selectors-simple-tree css-selectors) PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/css-selectors.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/css-selectors.nix
deleted file mode 100644
index ec8434b2e448..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/css-selectors.nix
+++ /dev/null
@@ -1,51 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "css-selectors";
-  version = "20160628-git";
-
-  parasites = [ "css-selectors-test" ];
-
-  description = "An implementation of css selectors";
-
-  deps = [ args."alexandria" args."babel" args."buildnode" args."buildnode-xhtml" args."cl-interpol" args."cl-ppcre" args."cl-unicode" args."closer-mop" args."closure-common" args."closure-html" args."collectors" args."cxml" args."flexi-streams" args."iterate" args."lisp-unit2" args."named-readtables" args."puri" args."split-sequence" args."swank" args."symbol-munger" args."trivial-features" args."trivial-gray-streams" args."yacc" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/css-selectors/2016-06-28/css-selectors-20160628-git.tgz";
-    sha256 = "0y9q719w5cv4g7in731q5p98n7pznb05vr7i7wi92mmpah2g1w4b";
-  };
-
-  packageName = "css-selectors";
-
-  asdFilesToKeep = ["css-selectors.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM css-selectors DESCRIPTION An implementation of css selectors SHA256
-    0y9q719w5cv4g7in731q5p98n7pznb05vr7i7wi92mmpah2g1w4b URL
-    http://beta.quicklisp.org/archive/css-selectors/2016-06-28/css-selectors-20160628-git.tgz
-    MD5 28537144b89af4ebe28c2eb365d5569f NAME css-selectors FILENAME
-    css-selectors DEPS
-    ((NAME alexandria FILENAME alexandria) (NAME babel FILENAME babel)
-     (NAME buildnode FILENAME buildnode)
-     (NAME buildnode-xhtml FILENAME buildnode-xhtml)
-     (NAME cl-interpol FILENAME cl-interpol) (NAME cl-ppcre FILENAME cl-ppcre)
-     (NAME cl-unicode FILENAME cl-unicode)
-     (NAME closer-mop FILENAME closer-mop)
-     (NAME closure-common FILENAME closure-common)
-     (NAME closure-html FILENAME closure-html)
-     (NAME collectors FILENAME collectors) (NAME cxml FILENAME cxml)
-     (NAME flexi-streams FILENAME flexi-streams)
-     (NAME iterate FILENAME iterate) (NAME lisp-unit2 FILENAME lisp-unit2)
-     (NAME named-readtables FILENAME named-readtables)
-     (NAME puri FILENAME puri) (NAME split-sequence FILENAME split-sequence)
-     (NAME swank FILENAME swank) (NAME symbol-munger FILENAME symbol-munger)
-     (NAME trivial-features FILENAME trivial-features)
-     (NAME trivial-gray-streams FILENAME trivial-gray-streams)
-     (NAME yacc FILENAME yacc))
-    DEPENDENCIES
-    (alexandria babel buildnode buildnode-xhtml cl-interpol cl-ppcre cl-unicode
-     closer-mop closure-common closure-html collectors cxml flexi-streams
-     iterate lisp-unit2 named-readtables puri split-sequence swank
-     symbol-munger trivial-features trivial-gray-streams yacc)
-    VERSION 20160628-git SIBLINGS (css-selectors-simple-tree css-selectors-stp)
-    PARASITES (css-selectors-test)) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cxml-stp.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cxml-stp.nix
deleted file mode 100644
index 275eba345024..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cxml-stp.nix
+++ /dev/null
@@ -1,39 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "cxml-stp";
-  version = "20200325-git";
-
-  parasites = [ "cxml-stp/test" ];
-
-  description = "System lacks description";
-
-  deps = [ args."alexandria" args."babel" args."cl-ppcre" args."closure-common" args."cxml" args."cxml_slash_test" args."parse-number" args."puri" args."rt" args."trivial-features" args."trivial-gray-streams" args."xpath" args."xpath_slash_test" args."yacc" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/cxml-stp/2020-03-25/cxml-stp-20200325-git.tgz";
-    sha256 = "1y26bksmysvxifqx4lslpbsdvmcqkf7di36a3yyqnjgrb5r0jv1n";
-  };
-
-  packageName = "cxml-stp";
-
-  asdFilesToKeep = ["cxml-stp.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM cxml-stp DESCRIPTION System lacks description SHA256
-    1y26bksmysvxifqx4lslpbsdvmcqkf7di36a3yyqnjgrb5r0jv1n URL
-    http://beta.quicklisp.org/archive/cxml-stp/2020-03-25/cxml-stp-20200325-git.tgz
-    MD5 5622b4aae55e448473f1ba14fa3a5f4c NAME cxml-stp FILENAME cxml-stp DEPS
-    ((NAME alexandria FILENAME alexandria) (NAME babel FILENAME babel)
-     (NAME cl-ppcre FILENAME cl-ppcre)
-     (NAME closure-common FILENAME closure-common) (NAME cxml FILENAME cxml)
-     (NAME cxml/test FILENAME cxml_slash_test)
-     (NAME parse-number FILENAME parse-number) (NAME puri FILENAME puri)
-     (NAME rt FILENAME rt) (NAME trivial-features FILENAME trivial-features)
-     (NAME trivial-gray-streams FILENAME trivial-gray-streams)
-     (NAME xpath FILENAME xpath) (NAME xpath/test FILENAME xpath_slash_test)
-     (NAME yacc FILENAME yacc))
-    DEPENDENCIES
-    (alexandria babel cl-ppcre closure-common cxml cxml/test parse-number puri
-     rt trivial-features trivial-gray-streams xpath xpath/test yacc)
-    VERSION 20200325-git SIBLINGS NIL PARASITES (cxml-stp/test)) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cxml.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cxml.nix
deleted file mode 100644
index 61c38a8720c1..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/cxml.nix
+++ /dev/null
@@ -1,35 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "cxml";
-  version = "20200610-git";
-
-  parasites = [ "cxml/dom" "cxml/klacks" "cxml/test" "cxml/xml" ];
-
-  description = "Closure XML - a Common Lisp XML parser";
-
-  deps = [ args."alexandria" args."babel" args."closure-common" args."puri" args."trivial-features" args."trivial-gray-streams" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/cxml/2020-06-10/cxml-20200610-git.tgz";
-    sha256 = "0545rh4mfxqx2yn9b48s0hzd5w80kars7hpykbg0lgf7ys5218mq";
-  };
-
-  packageName = "cxml";
-
-  asdFilesToKeep = ["cxml.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM cxml DESCRIPTION Closure XML - a Common Lisp XML parser SHA256
-    0545rh4mfxqx2yn9b48s0hzd5w80kars7hpykbg0lgf7ys5218mq URL
-    http://beta.quicklisp.org/archive/cxml/2020-06-10/cxml-20200610-git.tgz MD5
-    0b6f34edb79f7b63cc5855f18d0d66f0 NAME cxml FILENAME cxml DEPS
-    ((NAME alexandria FILENAME alexandria) (NAME babel FILENAME babel)
-     (NAME closure-common FILENAME closure-common) (NAME puri FILENAME puri)
-     (NAME trivial-features FILENAME trivial-features)
-     (NAME trivial-gray-streams FILENAME trivial-gray-streams))
-    DEPENDENCIES
-    (alexandria babel closure-common puri trivial-features
-     trivial-gray-streams)
-    VERSION 20200610-git SIBLINGS (cxml-dom cxml-klacks cxml-test) PARASITES
-    (cxml/dom cxml/klacks cxml/test cxml/xml)) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/data-frame.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/data-frame.nix
deleted file mode 100644
index b845e5add627..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/data-frame.nix
+++ /dev/null
@@ -1,34 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "data-frame";
-  version = "20210411-git";
-
-  parasites = [ "data-frame/tests" ];
-
-  description = "Data frames for Common Lisp";
-
-  deps = [ args."alexandria" args."anaphora" args."array-operations" args."clunit" args."let-plus" args."num-utils" args."select" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/data-frame/2021-04-11/data-frame-20210411-git.tgz";
-    sha256 = "1ycpbhzkc54x4mvghq6ss6s9ya1zn1s6d0cifh20c3b9kfca1xgv";
-  };
-
-  packageName = "data-frame";
-
-  asdFilesToKeep = ["data-frame.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM data-frame DESCRIPTION Data frames for Common Lisp SHA256
-    1ycpbhzkc54x4mvghq6ss6s9ya1zn1s6d0cifh20c3b9kfca1xgv URL
-    http://beta.quicklisp.org/archive/data-frame/2021-04-11/data-frame-20210411-git.tgz
-    MD5 b376dd3510b55efe93cbcbf8478f94ed NAME data-frame FILENAME data-frame
-    DEPS
-    ((NAME alexandria FILENAME alexandria) (NAME anaphora FILENAME anaphora)
-     (NAME array-operations FILENAME array-operations)
-     (NAME clunit FILENAME clunit) (NAME let-plus FILENAME let-plus)
-     (NAME num-utils FILENAME num-utils) (NAME select FILENAME select))
-    DEPENDENCIES
-    (alexandria anaphora array-operations clunit let-plus num-utils select)
-    VERSION 20210411-git SIBLINGS NIL PARASITES (data-frame/tests)) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/data-table.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/data-table.nix
deleted file mode 100644
index 06b101d229ae..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/data-table.nix
+++ /dev/null
@@ -1,40 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "data-table";
-  version = "20160208-git";
-
-  parasites = [ "data-table-test" ];
-
-  description = "A library providing a data-table class, and useful functionality around this";
-
-  deps = [ args."alexandria" args."cl-interpol" args."cl-ppcre" args."cl-unicode" args."flexi-streams" args."iterate" args."lisp-unit2" args."named-readtables" args."symbol-munger" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/data-table/2016-02-08/data-table-20160208-git.tgz";
-    sha256 = "0xzjk3jxx11ziw5348ddalygi84wwwcjcxmqvm5rscgzh012h8gm";
-  };
-
-  packageName = "data-table";
-
-  asdFilesToKeep = ["data-table.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM data-table DESCRIPTION
-    A library providing a data-table class, and useful functionality around this
-    SHA256 0xzjk3jxx11ziw5348ddalygi84wwwcjcxmqvm5rscgzh012h8gm URL
-    http://beta.quicklisp.org/archive/data-table/2016-02-08/data-table-20160208-git.tgz
-    MD5 0507150b0fcfdab96e0ef7668d31113c NAME data-table FILENAME data-table
-    DEPS
-    ((NAME alexandria FILENAME alexandria)
-     (NAME cl-interpol FILENAME cl-interpol) (NAME cl-ppcre FILENAME cl-ppcre)
-     (NAME cl-unicode FILENAME cl-unicode)
-     (NAME flexi-streams FILENAME flexi-streams)
-     (NAME iterate FILENAME iterate) (NAME lisp-unit2 FILENAME lisp-unit2)
-     (NAME named-readtables FILENAME named-readtables)
-     (NAME symbol-munger FILENAME symbol-munger))
-    DEPENDENCIES
-    (alexandria cl-interpol cl-ppcre cl-unicode flexi-streams iterate
-     lisp-unit2 named-readtables symbol-munger)
-    VERSION 20160208-git SIBLINGS (data-table-clsql) PARASITES
-    (data-table-test)) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/dbd-mysql.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/dbd-mysql.nix
deleted file mode 100644
index c3c80c73a0de..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/dbd-mysql.nix
+++ /dev/null
@@ -1,35 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "dbd-mysql";
-  version = "cl-dbi-20211020-git";
-
-  description = "Database driver for MySQL.";
-
-  deps = [ args."alexandria" args."babel" args."bordeaux-threads" args."cffi" args."cl-mysql" args."closer-mop" args."dbi" args."split-sequence" args."trivial-features" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/cl-dbi/2021-10-20/cl-dbi-20211020-git.tgz";
-    sha256 = "1khvf4b2pa9wv8blcwb77byi5nyb8g8bnaq4ml20g674iwgvvvmr";
-  };
-
-  packageName = "dbd-mysql";
-
-  asdFilesToKeep = ["dbd-mysql.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM dbd-mysql DESCRIPTION Database driver for MySQL. SHA256
-    1khvf4b2pa9wv8blcwb77byi5nyb8g8bnaq4ml20g674iwgvvvmr URL
-    http://beta.quicklisp.org/archive/cl-dbi/2021-10-20/cl-dbi-20211020-git.tgz
-    MD5 565a1f32b2d924ad59876afcdc5cf263 NAME dbd-mysql FILENAME dbd-mysql DEPS
-    ((NAME alexandria FILENAME alexandria) (NAME babel FILENAME babel)
-     (NAME bordeaux-threads FILENAME bordeaux-threads)
-     (NAME cffi FILENAME cffi) (NAME cl-mysql FILENAME cl-mysql)
-     (NAME closer-mop FILENAME closer-mop) (NAME dbi FILENAME dbi)
-     (NAME split-sequence FILENAME split-sequence)
-     (NAME trivial-features FILENAME trivial-features))
-    DEPENDENCIES
-    (alexandria babel bordeaux-threads cffi cl-mysql closer-mop dbi
-     split-sequence trivial-features)
-    VERSION cl-dbi-20211020-git SIBLINGS
-    (cl-dbi dbd-postgres dbd-sqlite3 dbi-test dbi) PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/dbd-postgres.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/dbd-postgres.nix
deleted file mode 100644
index 2ad35f6053bd..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/dbd-postgres.nix
+++ /dev/null
@@ -1,39 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "dbd-postgres";
-  version = "cl-dbi-20211020-git";
-
-  description = "Database driver for PostgreSQL.";
-
-  deps = [ args."alexandria" args."bordeaux-threads" args."cl-base64" args."cl-postgres" args."cl-ppcre" args."closer-mop" args."dbi" args."ironclad" args."md5" args."split-sequence" args."trivial-garbage" args."uax-15" args."usocket" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/cl-dbi/2021-10-20/cl-dbi-20211020-git.tgz";
-    sha256 = "1khvf4b2pa9wv8blcwb77byi5nyb8g8bnaq4ml20g674iwgvvvmr";
-  };
-
-  packageName = "dbd-postgres";
-
-  asdFilesToKeep = ["dbd-postgres.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM dbd-postgres DESCRIPTION Database driver for PostgreSQL. SHA256
-    1khvf4b2pa9wv8blcwb77byi5nyb8g8bnaq4ml20g674iwgvvvmr URL
-    http://beta.quicklisp.org/archive/cl-dbi/2021-10-20/cl-dbi-20211020-git.tgz
-    MD5 565a1f32b2d924ad59876afcdc5cf263 NAME dbd-postgres FILENAME
-    dbd-postgres DEPS
-    ((NAME alexandria FILENAME alexandria)
-     (NAME bordeaux-threads FILENAME bordeaux-threads)
-     (NAME cl-base64 FILENAME cl-base64)
-     (NAME cl-postgres FILENAME cl-postgres) (NAME cl-ppcre FILENAME cl-ppcre)
-     (NAME closer-mop FILENAME closer-mop) (NAME dbi FILENAME dbi)
-     (NAME ironclad FILENAME ironclad) (NAME md5 FILENAME md5)
-     (NAME split-sequence FILENAME split-sequence)
-     (NAME trivial-garbage FILENAME trivial-garbage)
-     (NAME uax-15 FILENAME uax-15) (NAME usocket FILENAME usocket))
-    DEPENDENCIES
-    (alexandria bordeaux-threads cl-base64 cl-postgres cl-ppcre closer-mop dbi
-     ironclad md5 split-sequence trivial-garbage uax-15 usocket)
-    VERSION cl-dbi-20211020-git SIBLINGS
-    (cl-dbi dbd-mysql dbd-sqlite3 dbi-test dbi) PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/dbd-sqlite3.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/dbd-sqlite3.nix
deleted file mode 100644
index 05f939e608ef..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/dbd-sqlite3.nix
+++ /dev/null
@@ -1,38 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "dbd-sqlite3";
-  version = "cl-dbi-20211020-git";
-
-  description = "Database driver for SQLite3.";
-
-  deps = [ args."alexandria" args."babel" args."bordeaux-threads" args."cffi" args."closer-mop" args."dbi" args."iterate" args."split-sequence" args."sqlite" args."trivial-features" args."trivial-garbage" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/cl-dbi/2021-10-20/cl-dbi-20211020-git.tgz";
-    sha256 = "1khvf4b2pa9wv8blcwb77byi5nyb8g8bnaq4ml20g674iwgvvvmr";
-  };
-
-  packageName = "dbd-sqlite3";
-
-  asdFilesToKeep = ["dbd-sqlite3.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM dbd-sqlite3 DESCRIPTION Database driver for SQLite3. SHA256
-    1khvf4b2pa9wv8blcwb77byi5nyb8g8bnaq4ml20g674iwgvvvmr URL
-    http://beta.quicklisp.org/archive/cl-dbi/2021-10-20/cl-dbi-20211020-git.tgz
-    MD5 565a1f32b2d924ad59876afcdc5cf263 NAME dbd-sqlite3 FILENAME dbd-sqlite3
-    DEPS
-    ((NAME alexandria FILENAME alexandria) (NAME babel FILENAME babel)
-     (NAME bordeaux-threads FILENAME bordeaux-threads)
-     (NAME cffi FILENAME cffi) (NAME closer-mop FILENAME closer-mop)
-     (NAME dbi FILENAME dbi) (NAME iterate FILENAME iterate)
-     (NAME split-sequence FILENAME split-sequence)
-     (NAME sqlite FILENAME sqlite)
-     (NAME trivial-features FILENAME trivial-features)
-     (NAME trivial-garbage FILENAME trivial-garbage))
-    DEPENDENCIES
-    (alexandria babel bordeaux-threads cffi closer-mop dbi iterate
-     split-sequence sqlite trivial-features trivial-garbage)
-    VERSION cl-dbi-20211020-git SIBLINGS
-    (cl-dbi dbd-mysql dbd-postgres dbi-test dbi) PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/dbi-test.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/dbi-test.nix
deleted file mode 100644
index 8c06ed915fb9..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/dbi-test.nix
+++ /dev/null
@@ -1,36 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "dbi-test";
-  version = "cl-dbi-20211020-git";
-
-  description = "System lacks description";
-
-  deps = [ args."alexandria" args."bordeaux-threads" args."closer-mop" args."dbi" args."dissect" args."rove" args."split-sequence" args."trivial-gray-streams" args."trivial-types" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/cl-dbi/2021-10-20/cl-dbi-20211020-git.tgz";
-    sha256 = "1khvf4b2pa9wv8blcwb77byi5nyb8g8bnaq4ml20g674iwgvvvmr";
-  };
-
-  packageName = "dbi-test";
-
-  asdFilesToKeep = ["dbi-test.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM dbi-test DESCRIPTION System lacks description SHA256
-    1khvf4b2pa9wv8blcwb77byi5nyb8g8bnaq4ml20g674iwgvvvmr URL
-    http://beta.quicklisp.org/archive/cl-dbi/2021-10-20/cl-dbi-20211020-git.tgz
-    MD5 565a1f32b2d924ad59876afcdc5cf263 NAME dbi-test FILENAME dbi-test DEPS
-    ((NAME alexandria FILENAME alexandria)
-     (NAME bordeaux-threads FILENAME bordeaux-threads)
-     (NAME closer-mop FILENAME closer-mop) (NAME dbi FILENAME dbi)
-     (NAME dissect FILENAME dissect) (NAME rove FILENAME rove)
-     (NAME split-sequence FILENAME split-sequence)
-     (NAME trivial-gray-streams FILENAME trivial-gray-streams)
-     (NAME trivial-types FILENAME trivial-types))
-    DEPENDENCIES
-    (alexandria bordeaux-threads closer-mop dbi dissect rove split-sequence
-     trivial-gray-streams trivial-types)
-    VERSION cl-dbi-20211020-git SIBLINGS
-    (cl-dbi dbd-mysql dbd-postgres dbd-sqlite3 dbi) PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/dbi.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/dbi.nix
deleted file mode 100644
index 98346b51b908..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/dbi.nix
+++ /dev/null
@@ -1,42 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "dbi";
-  version = "cl-20211020-git";
-
-  parasites = [ "dbi/test" ];
-
-  description = "Database independent interface for Common Lisp";
-
-  deps = [ args."alexandria" args."bordeaux-threads" args."cl-mysql" args."cl-postgres" args."closer-mop" args."dbd-mysql" args."dbd-postgres" args."dbd-sqlite3" args."dbi-test" args."rove" args."split-sequence" args."sqlite" args."trivial-garbage" args."trivial-types" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/cl-dbi/2021-10-20/cl-dbi-20211020-git.tgz";
-    sha256 = "1khvf4b2pa9wv8blcwb77byi5nyb8g8bnaq4ml20g674iwgvvvmr";
-  };
-
-  packageName = "dbi";
-
-  asdFilesToKeep = ["dbi.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM dbi DESCRIPTION Database independent interface for Common Lisp
-    SHA256 1khvf4b2pa9wv8blcwb77byi5nyb8g8bnaq4ml20g674iwgvvvmr URL
-    http://beta.quicklisp.org/archive/cl-dbi/2021-10-20/cl-dbi-20211020-git.tgz
-    MD5 565a1f32b2d924ad59876afcdc5cf263 NAME dbi FILENAME dbi DEPS
-    ((NAME alexandria FILENAME alexandria)
-     (NAME bordeaux-threads FILENAME bordeaux-threads)
-     (NAME cl-mysql FILENAME cl-mysql) (NAME cl-postgres FILENAME cl-postgres)
-     (NAME closer-mop FILENAME closer-mop) (NAME dbd-mysql FILENAME dbd-mysql)
-     (NAME dbd-postgres FILENAME dbd-postgres)
-     (NAME dbd-sqlite3 FILENAME dbd-sqlite3) (NAME dbi-test FILENAME dbi-test)
-     (NAME rove FILENAME rove) (NAME split-sequence FILENAME split-sequence)
-     (NAME sqlite FILENAME sqlite)
-     (NAME trivial-garbage FILENAME trivial-garbage)
-     (NAME trivial-types FILENAME trivial-types))
-    DEPENDENCIES
-    (alexandria bordeaux-threads cl-mysql cl-postgres closer-mop dbd-mysql
-     dbd-postgres dbd-sqlite3 dbi-test rove split-sequence sqlite
-     trivial-garbage trivial-types)
-    VERSION cl-20211020-git SIBLINGS
-    (cl-dbi dbd-mysql dbd-postgres dbd-sqlite3 dbi-test) PARASITES (dbi/test)) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/dbus.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/dbus.nix
deleted file mode 100644
index a39f49899221..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/dbus.nix
+++ /dev/null
@@ -1,51 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "dbus";
-  version = "20211020-git";
-
-  description = "A D-BUS client library for Common Lisp";
-
-  deps = [ args."alexandria" args."asdf-package-system" args."babel" args."bordeaux-threads" args."cffi" args."cffi-grovel" args."cffi-toolchain" args."cl-ppcre" args."cl-xmlspam" args."closure-common" args."cxml" args."flexi-streams" args."idna" args."ieee-floats" args."iolib" args."iolib_dot_asdf" args."iolib_dot_base" args."iolib_dot_common-lisp" args."iolib_dot_conf" args."ironclad" args."puri" args."split-sequence" args."swap-bytes" args."trivial-features" args."trivial-garbage" args."trivial-gray-streams" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/dbus/2021-10-20/dbus-20211020-git.tgz";
-    sha256 = "1h0qa609qplq3grjf3n31h1bcdj154ww2dn29mjxlkm76n5asz14";
-  };
-
-  packageName = "dbus";
-
-  asdFilesToKeep = ["dbus.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM dbus DESCRIPTION A D-BUS client library for Common Lisp SHA256
-    1h0qa609qplq3grjf3n31h1bcdj154ww2dn29mjxlkm76n5asz14 URL
-    http://beta.quicklisp.org/archive/dbus/2021-10-20/dbus-20211020-git.tgz MD5
-    f3fb2ad37c197d99d9c446f556a12bdb NAME dbus FILENAME dbus DEPS
-    ((NAME alexandria FILENAME alexandria)
-     (NAME asdf-package-system FILENAME asdf-package-system)
-     (NAME babel FILENAME babel)
-     (NAME bordeaux-threads FILENAME bordeaux-threads)
-     (NAME cffi FILENAME cffi) (NAME cffi-grovel FILENAME cffi-grovel)
-     (NAME cffi-toolchain FILENAME cffi-toolchain)
-     (NAME cl-ppcre FILENAME cl-ppcre) (NAME cl-xmlspam FILENAME cl-xmlspam)
-     (NAME closure-common FILENAME closure-common) (NAME cxml FILENAME cxml)
-     (NAME flexi-streams FILENAME flexi-streams) (NAME idna FILENAME idna)
-     (NAME ieee-floats FILENAME ieee-floats) (NAME iolib FILENAME iolib)
-     (NAME iolib.asdf FILENAME iolib_dot_asdf)
-     (NAME iolib.base FILENAME iolib_dot_base)
-     (NAME iolib.common-lisp FILENAME iolib_dot_common-lisp)
-     (NAME iolib.conf FILENAME iolib_dot_conf)
-     (NAME ironclad FILENAME ironclad) (NAME puri FILENAME puri)
-     (NAME split-sequence FILENAME split-sequence)
-     (NAME swap-bytes FILENAME swap-bytes)
-     (NAME trivial-features FILENAME trivial-features)
-     (NAME trivial-garbage FILENAME trivial-garbage)
-     (NAME trivial-gray-streams FILENAME trivial-gray-streams))
-    DEPENDENCIES
-    (alexandria asdf-package-system babel bordeaux-threads cffi cffi-grovel
-     cffi-toolchain cl-ppcre cl-xmlspam closure-common cxml flexi-streams idna
-     ieee-floats iolib iolib.asdf iolib.base iolib.common-lisp iolib.conf
-     ironclad puri split-sequence swap-bytes trivial-features trivial-garbage
-     trivial-gray-streams)
-    VERSION 20211020-git SIBLINGS NIL PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/defclass-std.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/defclass-std.nix
deleted file mode 100644
index 428d14fa95c1..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/defclass-std.nix
+++ /dev/null
@@ -1,29 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "defclass-std";
-  version = "20201220-git";
-
-  description = "A shortcut macro to write DEFCLASS forms quickly.";
-
-  deps = [ args."alexandria" args."anaphora" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/defclass-std/2020-12-20/defclass-std-20201220-git.tgz";
-    sha256 = "1ldivz1zmg0yxja43gj0lcgf10k0kj2bhb0576f0xnhy56sya0w3";
-  };
-
-  packageName = "defclass-std";
-
-  asdFilesToKeep = ["defclass-std.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM defclass-std DESCRIPTION
-    A shortcut macro to write DEFCLASS forms quickly. SHA256
-    1ldivz1zmg0yxja43gj0lcgf10k0kj2bhb0576f0xnhy56sya0w3 URL
-    http://beta.quicklisp.org/archive/defclass-std/2020-12-20/defclass-std-20201220-git.tgz
-    MD5 b7a3bec06318b10818dc3941d407fe65 NAME defclass-std FILENAME
-    defclass-std DEPS
-    ((NAME alexandria FILENAME alexandria) (NAME anaphora FILENAME anaphora))
-    DEPENDENCIES (alexandria anaphora) VERSION 20201220-git SIBLINGS
-    (defclass-std-test) PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/dexador.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/dexador.nix
deleted file mode 100644
index 3bbb155768f5..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/dexador.nix
+++ /dev/null
@@ -1,51 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "dexador";
-  version = "20211209-git";
-
-  description = "Yet another HTTP client for Common Lisp";
-
-  deps = [ args."alexandria" args."babel" args."bordeaux-threads" args."cffi" args."cffi-grovel" args."cffi-toolchain" args."chipz" args."chunga" args."cl_plus_ssl" args."cl-base64" args."cl-cookie" args."cl-ppcre" args."cl-utilities" args."fast-http" args."fast-io" args."flexi-streams" args."local-time" args."proc-parse" args."quri" args."smart-buffer" args."split-sequence" args."static-vectors" args."trivial-features" args."trivial-garbage" args."trivial-gray-streams" args."trivial-mimes" args."uiop" args."usocket" args."xsubseq" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/dexador/2021-12-09/dexador-20211209-git.tgz";
-    sha256 = "0cknpgz9cbqnaa0wafs7nfqlis8cikfxi11gd5r9md8zm0iw3gi7";
-  };
-
-  packageName = "dexador";
-
-  asdFilesToKeep = ["dexador.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM dexador DESCRIPTION Yet another HTTP client for Common Lisp SHA256
-    0cknpgz9cbqnaa0wafs7nfqlis8cikfxi11gd5r9md8zm0iw3gi7 URL
-    http://beta.quicklisp.org/archive/dexador/2021-12-09/dexador-20211209-git.tgz
-    MD5 211593b3d20b0be78f8c525a9a1f5cfb NAME dexador FILENAME dexador DEPS
-    ((NAME alexandria FILENAME alexandria) (NAME babel FILENAME babel)
-     (NAME bordeaux-threads FILENAME bordeaux-threads)
-     (NAME cffi FILENAME cffi) (NAME cffi-grovel FILENAME cffi-grovel)
-     (NAME cffi-toolchain FILENAME cffi-toolchain) (NAME chipz FILENAME chipz)
-     (NAME chunga FILENAME chunga) (NAME cl+ssl FILENAME cl_plus_ssl)
-     (NAME cl-base64 FILENAME cl-base64) (NAME cl-cookie FILENAME cl-cookie)
-     (NAME cl-ppcre FILENAME cl-ppcre)
-     (NAME cl-utilities FILENAME cl-utilities)
-     (NAME fast-http FILENAME fast-http) (NAME fast-io FILENAME fast-io)
-     (NAME flexi-streams FILENAME flexi-streams)
-     (NAME local-time FILENAME local-time)
-     (NAME proc-parse FILENAME proc-parse) (NAME quri FILENAME quri)
-     (NAME smart-buffer FILENAME smart-buffer)
-     (NAME split-sequence FILENAME split-sequence)
-     (NAME static-vectors FILENAME static-vectors)
-     (NAME trivial-features FILENAME trivial-features)
-     (NAME trivial-garbage FILENAME trivial-garbage)
-     (NAME trivial-gray-streams FILENAME trivial-gray-streams)
-     (NAME trivial-mimes FILENAME trivial-mimes) (NAME uiop FILENAME uiop)
-     (NAME usocket FILENAME usocket) (NAME xsubseq FILENAME xsubseq))
-    DEPENDENCIES
-    (alexandria babel bordeaux-threads cffi cffi-grovel cffi-toolchain chipz
-     chunga cl+ssl cl-base64 cl-cookie cl-ppcre cl-utilities fast-http fast-io
-     flexi-streams local-time proc-parse quri smart-buffer split-sequence
-     static-vectors trivial-features trivial-garbage trivial-gray-streams
-     trivial-mimes uiop usocket xsubseq)
-    VERSION 20211209-git SIBLINGS (dexador-test) PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/dfio.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/dfio.nix
deleted file mode 100644
index 6b6fb2646a91..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/dfio.nix
+++ /dev/null
@@ -1,39 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "dfio";
-  version = "20210411-git";
-
-  description = "Common Lisp library for reading data from text files (eg CSV).";
-
-  deps = [ args."alexandria" args."anaphora" args."array-operations" args."cl-csv" args."cl-interpol" args."cl-ppcre" args."cl-unicode" args."data-frame" args."flexi-streams" args."iterate" args."let-plus" args."named-readtables" args."num-utils" args."select" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/dfio/2021-04-11/dfio-20210411-git.tgz";
-    sha256 = "0r1ljv22mfjlp0khgfbmh9ajp9qmw8lqj2wl6k9abr5cc32vnmi5";
-  };
-
-  packageName = "dfio";
-
-  asdFilesToKeep = ["dfio.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM dfio DESCRIPTION
-    Common Lisp library for reading data from text files (eg CSV). SHA256
-    0r1ljv22mfjlp0khgfbmh9ajp9qmw8lqj2wl6k9abr5cc32vnmi5 URL
-    http://beta.quicklisp.org/archive/dfio/2021-04-11/dfio-20210411-git.tgz MD5
-    f8d9923e8c2fb095c7dbc1c9f6b68568 NAME dfio FILENAME dfio DEPS
-    ((NAME alexandria FILENAME alexandria) (NAME anaphora FILENAME anaphora)
-     (NAME array-operations FILENAME array-operations)
-     (NAME cl-csv FILENAME cl-csv) (NAME cl-interpol FILENAME cl-interpol)
-     (NAME cl-ppcre FILENAME cl-ppcre) (NAME cl-unicode FILENAME cl-unicode)
-     (NAME data-frame FILENAME data-frame)
-     (NAME flexi-streams FILENAME flexi-streams)
-     (NAME iterate FILENAME iterate) (NAME let-plus FILENAME let-plus)
-     (NAME named-readtables FILENAME named-readtables)
-     (NAME num-utils FILENAME num-utils) (NAME select FILENAME select))
-    DEPENDENCIES
-    (alexandria anaphora array-operations cl-csv cl-interpol cl-ppcre
-     cl-unicode data-frame flexi-streams iterate let-plus named-readtables
-     num-utils select)
-    VERSION 20210411-git SIBLINGS NIL PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/dissect.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/dissect.nix
deleted file mode 100644
index aa648cb1420c..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/dissect.nix
+++ /dev/null
@@ -1,26 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "dissect";
-  version = "20210531-git";
-
-  description = "A lib for introspecting the call stack and active restarts.";
-
-  deps = [ ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/dissect/2021-05-31/dissect-20210531-git.tgz";
-    sha256 = "07f5sk2nvhj5jjrw5k561dfnwbjcaniqi2z7wgdrw8qb9h8kkkzk";
-  };
-
-  packageName = "dissect";
-
-  asdFilesToKeep = ["dissect.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM dissect DESCRIPTION
-    A lib for introspecting the call stack and active restarts. SHA256
-    07f5sk2nvhj5jjrw5k561dfnwbjcaniqi2z7wgdrw8qb9h8kkkzk URL
-    http://beta.quicklisp.org/archive/dissect/2021-05-31/dissect-20210531-git.tgz
-    MD5 41dfb42dc93aa41d825c167fe173fa89 NAME dissect FILENAME dissect DEPS NIL
-    DEPENDENCIES NIL VERSION 20210531-git SIBLINGS NIL PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/djula.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/djula.nix
deleted file mode 100644
index 4a556f875c48..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/djula.nix
+++ /dev/null
@@ -1,54 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "djula";
-  version = "20211209-git";
-
-  description = "An implementation of Django templates for Common Lisp.";
-
-  deps = [ args."access" args."alexandria" args."anaphora" args."arnesi" args."babel" args."cl-annot" args."cl-interpol" args."cl-locale" args."cl-ppcre" args."cl-slice" args."cl-syntax" args."cl-syntax-annot" args."cl-unicode" args."closer-mop" args."collectors" args."flexi-streams" args."gettext" args."iterate" args."let-plus" args."local-time" args."named-readtables" args."parser-combinators" args."split-sequence" args."symbol-munger" args."trivial-backtrace" args."trivial-features" args."trivial-gray-streams" args."trivial-types" args."yacc" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/djula/2021-12-09/djula-20211209-git.tgz";
-    sha256 = "0csr3c12wf1qcwwfabgz9rvkramj74l15cwj8c01pmcraly8cya7";
-  };
-
-  packageName = "djula";
-
-  asdFilesToKeep = ["djula.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM djula DESCRIPTION
-    An implementation of Django templates for Common Lisp. SHA256
-    0csr3c12wf1qcwwfabgz9rvkramj74l15cwj8c01pmcraly8cya7 URL
-    http://beta.quicklisp.org/archive/djula/2021-12-09/djula-20211209-git.tgz
-    MD5 f7cb3581b5eb40c8609e90cdf87a2a06 NAME djula FILENAME djula DEPS
-    ((NAME access FILENAME access) (NAME alexandria FILENAME alexandria)
-     (NAME anaphora FILENAME anaphora) (NAME arnesi FILENAME arnesi)
-     (NAME babel FILENAME babel) (NAME cl-annot FILENAME cl-annot)
-     (NAME cl-interpol FILENAME cl-interpol)
-     (NAME cl-locale FILENAME cl-locale) (NAME cl-ppcre FILENAME cl-ppcre)
-     (NAME cl-slice FILENAME cl-slice) (NAME cl-syntax FILENAME cl-syntax)
-     (NAME cl-syntax-annot FILENAME cl-syntax-annot)
-     (NAME cl-unicode FILENAME cl-unicode)
-     (NAME closer-mop FILENAME closer-mop)
-     (NAME collectors FILENAME collectors)
-     (NAME flexi-streams FILENAME flexi-streams)
-     (NAME gettext FILENAME gettext) (NAME iterate FILENAME iterate)
-     (NAME let-plus FILENAME let-plus) (NAME local-time FILENAME local-time)
-     (NAME named-readtables FILENAME named-readtables)
-     (NAME parser-combinators FILENAME parser-combinators)
-     (NAME split-sequence FILENAME split-sequence)
-     (NAME symbol-munger FILENAME symbol-munger)
-     (NAME trivial-backtrace FILENAME trivial-backtrace)
-     (NAME trivial-features FILENAME trivial-features)
-     (NAME trivial-gray-streams FILENAME trivial-gray-streams)
-     (NAME trivial-types FILENAME trivial-types) (NAME yacc FILENAME yacc))
-    DEPENDENCIES
-    (access alexandria anaphora arnesi babel cl-annot cl-interpol cl-locale
-     cl-ppcre cl-slice cl-syntax cl-syntax-annot cl-unicode closer-mop
-     collectors flexi-streams gettext iterate let-plus local-time
-     named-readtables parser-combinators split-sequence symbol-munger
-     trivial-backtrace trivial-features trivial-gray-streams trivial-types
-     yacc)
-    VERSION 20211209-git SIBLINGS (djula-demo djula-test) PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/do-urlencode.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/do-urlencode.nix
deleted file mode 100644
index 4b79b85b5c54..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/do-urlencode.nix
+++ /dev/null
@@ -1,29 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "do-urlencode";
-  version = "20181018-git";
-
-  description = "Percent Encoding (aka URL Encoding) library";
-
-  deps = [ args."alexandria" args."babel" args."trivial-features" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/do-urlencode/2018-10-18/do-urlencode-20181018-git.tgz";
-    sha256 = "1cajd219s515y65kp562c6xczqaq0p4lyp13iv00z6i44rijmfp2";
-  };
-
-  packageName = "do-urlencode";
-
-  asdFilesToKeep = ["do-urlencode.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM do-urlencode DESCRIPTION Percent Encoding (aka URL Encoding) library
-    SHA256 1cajd219s515y65kp562c6xczqaq0p4lyp13iv00z6i44rijmfp2 URL
-    http://beta.quicklisp.org/archive/do-urlencode/2018-10-18/do-urlencode-20181018-git.tgz
-    MD5 cb6ab78689fe52680ee1b94cd7738b94 NAME do-urlencode FILENAME
-    do-urlencode DEPS
-    ((NAME alexandria FILENAME alexandria) (NAME babel FILENAME babel)
-     (NAME trivial-features FILENAME trivial-features))
-    DEPENDENCIES (alexandria babel trivial-features) VERSION 20181018-git
-    SIBLINGS NIL PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/documentation-utils.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/documentation-utils.nix
deleted file mode 100644
index 1bb6460a0f3d..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/documentation-utils.nix
+++ /dev/null
@@ -1,28 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "documentation-utils";
-  version = "20190710-git";
-
-  description = "A few simple tools to help you with documenting your library.";
-
-  deps = [ args."trivial-indent" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/documentation-utils/2019-07-10/documentation-utils-20190710-git.tgz";
-    sha256 = "1n3z8sw75k2jjpsg6ch5g9s4v56y96dbs4338ajrfdsk3pk4wgj3";
-  };
-
-  packageName = "documentation-utils";
-
-  asdFilesToKeep = ["documentation-utils.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM documentation-utils DESCRIPTION
-    A few simple tools to help you with documenting your library. SHA256
-    1n3z8sw75k2jjpsg6ch5g9s4v56y96dbs4338ajrfdsk3pk4wgj3 URL
-    http://beta.quicklisp.org/archive/documentation-utils/2019-07-10/documentation-utils-20190710-git.tgz
-    MD5 4f45f511ac55008b8b8aa04f7feaa2d4 NAME documentation-utils FILENAME
-    documentation-utils DEPS ((NAME trivial-indent FILENAME trivial-indent))
-    DEPENDENCIES (trivial-indent) VERSION 20190710-git SIBLINGS
-    (multilang-documentation-utils) PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/drakma.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/drakma.nix
deleted file mode 100644
index 5c1b54b13e6b..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/drakma.nix
+++ /dev/null
@@ -1,40 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "drakma";
-  version = "v2.0.8";
-
-  description = "Full-featured http/https client based on usocket";
-
-  deps = [ args."alexandria" args."babel" args."bordeaux-threads" args."cffi" args."chipz" args."chunga" args."cl_plus_ssl" args."cl-base64" args."cl-ppcre" args."flexi-streams" args."puri" args."split-sequence" args."trivial-features" args."trivial-garbage" args."trivial-gray-streams" args."usocket" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/drakma/2021-08-07/drakma-v2.0.8.tgz";
-    sha256 = "07rig1649yxs0n03y2dc9is6cp9lxlyzqlhsb8g02ds8g86czdjf";
-  };
-
-  packageName = "drakma";
-
-  asdFilesToKeep = ["drakma.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM drakma DESCRIPTION Full-featured http/https client based on usocket
-    SHA256 07rig1649yxs0n03y2dc9is6cp9lxlyzqlhsb8g02ds8g86czdjf URL
-    http://beta.quicklisp.org/archive/drakma/2021-08-07/drakma-v2.0.8.tgz MD5
-    948225b3183ab3d46b641ccda3c5fc54 NAME drakma FILENAME drakma DEPS
-    ((NAME alexandria FILENAME alexandria) (NAME babel FILENAME babel)
-     (NAME bordeaux-threads FILENAME bordeaux-threads)
-     (NAME cffi FILENAME cffi) (NAME chipz FILENAME chipz)
-     (NAME chunga FILENAME chunga) (NAME cl+ssl FILENAME cl_plus_ssl)
-     (NAME cl-base64 FILENAME cl-base64) (NAME cl-ppcre FILENAME cl-ppcre)
-     (NAME flexi-streams FILENAME flexi-streams) (NAME puri FILENAME puri)
-     (NAME split-sequence FILENAME split-sequence)
-     (NAME trivial-features FILENAME trivial-features)
-     (NAME trivial-garbage FILENAME trivial-garbage)
-     (NAME trivial-gray-streams FILENAME trivial-gray-streams)
-     (NAME usocket FILENAME usocket))
-    DEPENDENCIES
-    (alexandria babel bordeaux-threads cffi chipz chunga cl+ssl cl-base64
-     cl-ppcre flexi-streams puri split-sequence trivial-features
-     trivial-garbage trivial-gray-streams usocket)
-    VERSION v2.0.8 SIBLINGS (drakma-test) PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/eager-future2.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/eager-future2.nix
deleted file mode 100644
index 58009dee0d79..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/eager-future2.nix
+++ /dev/null
@@ -1,31 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "eager-future2";
-  version = "20191130-git";
-
-  description = "Parallel programming library providing the futures/promises synchronization mechanism";
-
-  deps = [ args."alexandria" args."bordeaux-threads" args."trivial-garbage" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/eager-future2/2019-11-30/eager-future2-20191130-git.tgz";
-    sha256 = "01pvgcp6d4hz1arpvsv73m8xnbv8qm2d0qychpxc72d0m71p6ks0";
-  };
-
-  packageName = "eager-future2";
-
-  asdFilesToKeep = ["eager-future2.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM eager-future2 DESCRIPTION
-    Parallel programming library providing the futures/promises synchronization mechanism
-    SHA256 01pvgcp6d4hz1arpvsv73m8xnbv8qm2d0qychpxc72d0m71p6ks0 URL
-    http://beta.quicklisp.org/archive/eager-future2/2019-11-30/eager-future2-20191130-git.tgz
-    MD5 72298620b0fb2f874d86d887cce4acf0 NAME eager-future2 FILENAME
-    eager-future2 DEPS
-    ((NAME alexandria FILENAME alexandria)
-     (NAME bordeaux-threads FILENAME bordeaux-threads)
-     (NAME trivial-garbage FILENAME trivial-garbage))
-    DEPENDENCIES (alexandria bordeaux-threads trivial-garbage) VERSION
-    20191130-git SIBLINGS (test.eager-future2) PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/enchant.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/enchant.nix
deleted file mode 100644
index d56865fc3f8b..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/enchant.nix
+++ /dev/null
@@ -1,30 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "enchant";
-  version = "cl-20211209-git";
-
-  description = "Programming interface for Enchant spell-checker library";
-
-  deps = [ args."alexandria" args."babel" args."cffi" args."trivial-features" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/cl-enchant/2021-12-09/cl-enchant-20211209-git.tgz";
-    sha256 = "1j9qliyxfjfz4bbc6snysccnmmk2d2y8kb613rna239dh5g6c03c";
-  };
-
-  packageName = "enchant";
-
-  asdFilesToKeep = ["enchant.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM enchant DESCRIPTION
-    Programming interface for Enchant spell-checker library SHA256
-    1j9qliyxfjfz4bbc6snysccnmmk2d2y8kb613rna239dh5g6c03c URL
-    http://beta.quicklisp.org/archive/cl-enchant/2021-12-09/cl-enchant-20211209-git.tgz
-    MD5 c12162b3a7c383815ff77c96aca0c11f NAME enchant FILENAME enchant DEPS
-    ((NAME alexandria FILENAME alexandria) (NAME babel FILENAME babel)
-     (NAME cffi FILENAME cffi)
-     (NAME trivial-features FILENAME trivial-features))
-    DEPENDENCIES (alexandria babel cffi trivial-features) VERSION
-    cl-20211209-git SIBLINGS (enchant-autoload) PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/esrap-peg.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/esrap-peg.nix
deleted file mode 100644
index c1c7e31d3954..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/esrap-peg.nix
+++ /dev/null
@@ -1,33 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "esrap-peg";
-  version = "20191007-git";
-
-  description = "A wrapper around Esrap to allow generating Esrap grammars from PEG definitions";
-
-  deps = [ args."alexandria" args."cl-unification" args."esrap" args."iterate" args."trivial-with-current-source-form" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/esrap-peg/2019-10-07/esrap-peg-20191007-git.tgz";
-    sha256 = "0285ngcm73rpzmr0ydy6frps2b4q6n4jymjv3ncwsh81x5blfvis";
-  };
-
-  packageName = "esrap-peg";
-
-  asdFilesToKeep = ["esrap-peg.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM esrap-peg DESCRIPTION
-    A wrapper around Esrap to allow generating Esrap grammars from PEG definitions
-    SHA256 0285ngcm73rpzmr0ydy6frps2b4q6n4jymjv3ncwsh81x5blfvis URL
-    http://beta.quicklisp.org/archive/esrap-peg/2019-10-07/esrap-peg-20191007-git.tgz
-    MD5 48d87d3118febeefc23ca3a8dda36fc0 NAME esrap-peg FILENAME esrap-peg DEPS
-    ((NAME alexandria FILENAME alexandria)
-     (NAME cl-unification FILENAME cl-unification) (NAME esrap FILENAME esrap)
-     (NAME iterate FILENAME iterate)
-     (NAME trivial-with-current-source-form FILENAME
-      trivial-with-current-source-form))
-    DEPENDENCIES
-    (alexandria cl-unification esrap iterate trivial-with-current-source-form)
-    VERSION 20191007-git SIBLINGS NIL PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/esrap.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/esrap.nix
deleted file mode 100644
index 933d116b507f..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/esrap.nix
+++ /dev/null
@@ -1,32 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "esrap";
-  version = "20211020-git";
-
-  parasites = [ "esrap/tests" ];
-
-  description = "A Packrat / Parsing Grammar / TDPL parser for Common Lisp.";
-
-  deps = [ args."alexandria" args."fiveam" args."trivial-with-current-source-form" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/esrap/2021-10-20/esrap-20211020-git.tgz";
-    sha256 = "06cqvalqsid82an8c4acbf13y65gw8nb4pckm8gv8fknvh4k1x7h";
-  };
-
-  packageName = "esrap";
-
-  asdFilesToKeep = ["esrap.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM esrap DESCRIPTION
-    A Packrat / Parsing Grammar / TDPL parser for Common Lisp. SHA256
-    06cqvalqsid82an8c4acbf13y65gw8nb4pckm8gv8fknvh4k1x7h URL
-    http://beta.quicklisp.org/archive/esrap/2021-10-20/esrap-20211020-git.tgz
-    MD5 9657755b3fe896c1252dc7fdd22320b7 NAME esrap FILENAME esrap DEPS
-    ((NAME alexandria FILENAME alexandria) (NAME fiveam FILENAME fiveam)
-     (NAME trivial-with-current-source-form FILENAME
-      trivial-with-current-source-form))
-    DEPENDENCIES (alexandria fiveam trivial-with-current-source-form) VERSION
-    20211020-git SIBLINGS NIL PARASITES (esrap/tests)) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/external-program.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/external-program.nix
deleted file mode 100644
index 4ddd869b7366..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/external-program.nix
+++ /dev/null
@@ -1,31 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "external-program";
-  version = "20190307-git";
-
-  parasites = [ "external-program-test" ];
-
-  description = "System lacks description";
-
-  deps = [ args."fiveam" args."trivial-features" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/external-program/2019-03-07/external-program-20190307-git.tgz";
-    sha256 = "1nl3mngh7vp2l9mfbdhni4nc164zznafnl74p1kv9j07n5fcpnyz";
-  };
-
-  packageName = "external-program";
-
-  asdFilesToKeep = ["external-program.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM external-program DESCRIPTION System lacks description SHA256
-    1nl3mngh7vp2l9mfbdhni4nc164zznafnl74p1kv9j07n5fcpnyz URL
-    http://beta.quicklisp.org/archive/external-program/2019-03-07/external-program-20190307-git.tgz
-    MD5 b30fe104c34059506fd4c493fa79fe1a NAME external-program FILENAME
-    external-program DEPS
-    ((NAME fiveam FILENAME fiveam)
-     (NAME trivial-features FILENAME trivial-features))
-    DEPENDENCIES (fiveam trivial-features) VERSION 20190307-git SIBLINGS NIL
-    PARASITES (external-program-test)) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/fare-csv.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/fare-csv.nix
deleted file mode 100644
index b9c375a77097..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/fare-csv.nix
+++ /dev/null
@@ -1,25 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "fare-csv";
-  version = "20171227-git";
-
-  description = "Robust CSV parser and printer";
-
-  deps = [ ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/fare-csv/2017-12-27/fare-csv-20171227-git.tgz";
-    sha256 = "1hkzg05kq2c4xihsfx4wk1k6mmjq2fw40id8vy0315rpa47a5i7x";
-  };
-
-  packageName = "fare-csv";
-
-  asdFilesToKeep = ["fare-csv.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM fare-csv DESCRIPTION Robust CSV parser and printer SHA256
-    1hkzg05kq2c4xihsfx4wk1k6mmjq2fw40id8vy0315rpa47a5i7x URL
-    http://beta.quicklisp.org/archive/fare-csv/2017-12-27/fare-csv-20171227-git.tgz
-    MD5 1d73aaac9fcd86cc5ddb72019722bc2a NAME fare-csv FILENAME fare-csv DEPS
-    NIL DEPENDENCIES NIL VERSION 20171227-git SIBLINGS NIL PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/fare-mop.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/fare-mop.nix
deleted file mode 100644
index 34b3ec905b28..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/fare-mop.nix
+++ /dev/null
@@ -1,29 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "fare-mop";
-  version = "20151218-git";
-
-  description = "Utilities using the MOP; notably make informative pretty-printing trivial";
-
-  deps = [ args."closer-mop" args."fare-utils" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/fare-mop/2015-12-18/fare-mop-20151218-git.tgz";
-    sha256 = "0bvrwqvacy114xsblrk2w28qk6b484a3p0w14mzl264b3wjrdna9";
-  };
-
-  packageName = "fare-mop";
-
-  asdFilesToKeep = ["fare-mop.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM fare-mop DESCRIPTION
-    Utilities using the MOP; notably make informative pretty-printing trivial
-    SHA256 0bvrwqvacy114xsblrk2w28qk6b484a3p0w14mzl264b3wjrdna9 URL
-    http://beta.quicklisp.org/archive/fare-mop/2015-12-18/fare-mop-20151218-git.tgz
-    MD5 4721ff62e2ac2c55079cdd4f2a0f6d4a NAME fare-mop FILENAME fare-mop DEPS
-    ((NAME closer-mop FILENAME closer-mop)
-     (NAME fare-utils FILENAME fare-utils))
-    DEPENDENCIES (closer-mop fare-utils) VERSION 20151218-git SIBLINGS NIL
-    PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/fare-quasiquote-extras.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/fare-quasiquote-extras.nix
deleted file mode 100644
index 0c114fda8d1d..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/fare-quasiquote-extras.nix
+++ /dev/null
@@ -1,47 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "fare-quasiquote-extras";
-  version = "fare-quasiquote-20200925-git";
-
-  description = "fare-quasiquote plus extras";
-
-  deps = [ args."alexandria" args."closer-mop" args."fare-quasiquote" args."fare-quasiquote-optima" args."fare-quasiquote-readtable" args."fare-utils" args."lisp-namespace" args."named-readtables" args."trivia_dot_level0" args."trivia_dot_level1" args."trivia_dot_level2" args."trivia_dot_quasiquote" args."trivia_dot_trivial" args."trivial-cltl2" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/fare-quasiquote/2020-09-25/fare-quasiquote-20200925-git.tgz";
-    sha256 = "0k25kx4gvr046bcnv5mqxbb4483v9p2lk7dvzjkgj2cxrvczmj8b";
-  };
-
-  packageName = "fare-quasiquote-extras";
-
-  asdFilesToKeep = ["fare-quasiquote-extras.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM fare-quasiquote-extras DESCRIPTION fare-quasiquote plus extras
-    SHA256 0k25kx4gvr046bcnv5mqxbb4483v9p2lk7dvzjkgj2cxrvczmj8b URL
-    http://beta.quicklisp.org/archive/fare-quasiquote/2020-09-25/fare-quasiquote-20200925-git.tgz
-    MD5 7af0a97c445d88acacecfc851496adb3 NAME fare-quasiquote-extras FILENAME
-    fare-quasiquote-extras DEPS
-    ((NAME alexandria FILENAME alexandria)
-     (NAME closer-mop FILENAME closer-mop)
-     (NAME fare-quasiquote FILENAME fare-quasiquote)
-     (NAME fare-quasiquote-optima FILENAME fare-quasiquote-optima)
-     (NAME fare-quasiquote-readtable FILENAME fare-quasiquote-readtable)
-     (NAME fare-utils FILENAME fare-utils)
-     (NAME lisp-namespace FILENAME lisp-namespace)
-     (NAME named-readtables FILENAME named-readtables)
-     (NAME trivia.level0 FILENAME trivia_dot_level0)
-     (NAME trivia.level1 FILENAME trivia_dot_level1)
-     (NAME trivia.level2 FILENAME trivia_dot_level2)
-     (NAME trivia.quasiquote FILENAME trivia_dot_quasiquote)
-     (NAME trivia.trivial FILENAME trivia_dot_trivial)
-     (NAME trivial-cltl2 FILENAME trivial-cltl2))
-    DEPENDENCIES
-    (alexandria closer-mop fare-quasiquote fare-quasiquote-optima
-     fare-quasiquote-readtable fare-utils lisp-namespace named-readtables
-     trivia.level0 trivia.level1 trivia.level2 trivia.quasiquote trivia.trivial
-     trivial-cltl2)
-    VERSION fare-quasiquote-20200925-git SIBLINGS
-    (fare-quasiquote-optima fare-quasiquote-readtable fare-quasiquote)
-    PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/fare-quasiquote-optima.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/fare-quasiquote-optima.nix
deleted file mode 100644
index d02dd9c1da03..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/fare-quasiquote-optima.nix
+++ /dev/null
@@ -1,46 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "fare-quasiquote-optima";
-  version = "fare-quasiquote-20200925-git";
-
-  description = "fare-quasiquote extension for optima";
-
-  deps = [ args."alexandria" args."closer-mop" args."fare-quasiquote" args."fare-quasiquote-readtable" args."fare-utils" args."lisp-namespace" args."named-readtables" args."trivia_dot_level0" args."trivia_dot_level1" args."trivia_dot_level2" args."trivia_dot_quasiquote" args."trivia_dot_trivial" args."trivial-cltl2" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/fare-quasiquote/2020-09-25/fare-quasiquote-20200925-git.tgz";
-    sha256 = "0k25kx4gvr046bcnv5mqxbb4483v9p2lk7dvzjkgj2cxrvczmj8b";
-  };
-
-  packageName = "fare-quasiquote-optima";
-
-  asdFilesToKeep = ["fare-quasiquote-optima.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM fare-quasiquote-optima DESCRIPTION
-    fare-quasiquote extension for optima SHA256
-    0k25kx4gvr046bcnv5mqxbb4483v9p2lk7dvzjkgj2cxrvczmj8b URL
-    http://beta.quicklisp.org/archive/fare-quasiquote/2020-09-25/fare-quasiquote-20200925-git.tgz
-    MD5 7af0a97c445d88acacecfc851496adb3 NAME fare-quasiquote-optima FILENAME
-    fare-quasiquote-optima DEPS
-    ((NAME alexandria FILENAME alexandria)
-     (NAME closer-mop FILENAME closer-mop)
-     (NAME fare-quasiquote FILENAME fare-quasiquote)
-     (NAME fare-quasiquote-readtable FILENAME fare-quasiquote-readtable)
-     (NAME fare-utils FILENAME fare-utils)
-     (NAME lisp-namespace FILENAME lisp-namespace)
-     (NAME named-readtables FILENAME named-readtables)
-     (NAME trivia.level0 FILENAME trivia_dot_level0)
-     (NAME trivia.level1 FILENAME trivia_dot_level1)
-     (NAME trivia.level2 FILENAME trivia_dot_level2)
-     (NAME trivia.quasiquote FILENAME trivia_dot_quasiquote)
-     (NAME trivia.trivial FILENAME trivia_dot_trivial)
-     (NAME trivial-cltl2 FILENAME trivial-cltl2))
-    DEPENDENCIES
-    (alexandria closer-mop fare-quasiquote fare-quasiquote-readtable fare-utils
-     lisp-namespace named-readtables trivia.level0 trivia.level1 trivia.level2
-     trivia.quasiquote trivia.trivial trivial-cltl2)
-    VERSION fare-quasiquote-20200925-git SIBLINGS
-    (fare-quasiquote-extras fare-quasiquote-readtable fare-quasiquote)
-    PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/fare-quasiquote-readtable.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/fare-quasiquote-readtable.nix
deleted file mode 100644
index c33a841f1636..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/fare-quasiquote-readtable.nix
+++ /dev/null
@@ -1,33 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "fare-quasiquote-readtable";
-  version = "fare-quasiquote-20200925-git";
-
-  description = "Using fare-quasiquote with named-readtable";
-
-  deps = [ args."fare-quasiquote" args."fare-utils" args."named-readtables" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/fare-quasiquote/2020-09-25/fare-quasiquote-20200925-git.tgz";
-    sha256 = "0k25kx4gvr046bcnv5mqxbb4483v9p2lk7dvzjkgj2cxrvczmj8b";
-  };
-
-  packageName = "fare-quasiquote-readtable";
-
-  asdFilesToKeep = ["fare-quasiquote-readtable.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM fare-quasiquote-readtable DESCRIPTION
-    Using fare-quasiquote with named-readtable SHA256
-    0k25kx4gvr046bcnv5mqxbb4483v9p2lk7dvzjkgj2cxrvczmj8b URL
-    http://beta.quicklisp.org/archive/fare-quasiquote/2020-09-25/fare-quasiquote-20200925-git.tgz
-    MD5 7af0a97c445d88acacecfc851496adb3 NAME fare-quasiquote-readtable
-    FILENAME fare-quasiquote-readtable DEPS
-    ((NAME fare-quasiquote FILENAME fare-quasiquote)
-     (NAME fare-utils FILENAME fare-utils)
-     (NAME named-readtables FILENAME named-readtables))
-    DEPENDENCIES (fare-quasiquote fare-utils named-readtables) VERSION
-    fare-quasiquote-20200925-git SIBLINGS
-    (fare-quasiquote-extras fare-quasiquote-optima fare-quasiquote) PARASITES
-    NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/fare-quasiquote.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/fare-quasiquote.nix
deleted file mode 100644
index d5d65c1d3d13..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/fare-quasiquote.nix
+++ /dev/null
@@ -1,29 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "fare-quasiquote";
-  version = "20200925-git";
-
-  description = "Portable, matchable implementation of quasiquote";
-
-  deps = [ args."fare-utils" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/fare-quasiquote/2020-09-25/fare-quasiquote-20200925-git.tgz";
-    sha256 = "0k25kx4gvr046bcnv5mqxbb4483v9p2lk7dvzjkgj2cxrvczmj8b";
-  };
-
-  packageName = "fare-quasiquote";
-
-  asdFilesToKeep = ["fare-quasiquote.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM fare-quasiquote DESCRIPTION
-    Portable, matchable implementation of quasiquote SHA256
-    0k25kx4gvr046bcnv5mqxbb4483v9p2lk7dvzjkgj2cxrvczmj8b URL
-    http://beta.quicklisp.org/archive/fare-quasiquote/2020-09-25/fare-quasiquote-20200925-git.tgz
-    MD5 7af0a97c445d88acacecfc851496adb3 NAME fare-quasiquote FILENAME
-    fare-quasiquote DEPS ((NAME fare-utils FILENAME fare-utils)) DEPENDENCIES
-    (fare-utils) VERSION 20200925-git SIBLINGS
-    (fare-quasiquote-extras fare-quasiquote-optima fare-quasiquote-readtable)
-    PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/fare-utils.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/fare-utils.nix
deleted file mode 100644
index 2c3f15396fc1..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/fare-utils.nix
+++ /dev/null
@@ -1,27 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "fare-utils";
-  version = "20170124-git";
-
-  description = "Basic functions and macros, interfaces, pure and stateful datastructures";
-
-  deps = [ args."asdf" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/fare-utils/2017-01-24/fare-utils-20170124-git.tgz";
-    sha256 = "0jhb018ccn3spkgjywgd0524m5qacn8x15fdiban4zz3amj9dapq";
-  };
-
-  packageName = "fare-utils";
-
-  asdFilesToKeep = ["fare-utils.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM fare-utils DESCRIPTION
-    Basic functions and macros, interfaces, pure and stateful datastructures
-    SHA256 0jhb018ccn3spkgjywgd0524m5qacn8x15fdiban4zz3amj9dapq URL
-    http://beta.quicklisp.org/archive/fare-utils/2017-01-24/fare-utils-20170124-git.tgz
-    MD5 6752362d0c7c03df6576ab2dbe807ee2 NAME fare-utils FILENAME fare-utils
-    DEPS ((NAME asdf FILENAME asdf)) DEPENDENCIES (asdf) VERSION 20170124-git
-    SIBLINGS (fare-utils-test) PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/fast-http.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/fast-http.nix
deleted file mode 100644
index 48e4dd7c4051..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/fast-http.nix
+++ /dev/null
@@ -1,36 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "fast-http";
-  version = "20191007-git";
-
-  description = "A fast HTTP protocol parser in Common Lisp";
-
-  deps = [ args."alexandria" args."babel" args."cl-utilities" args."flexi-streams" args."proc-parse" args."smart-buffer" args."trivial-features" args."trivial-gray-streams" args."xsubseq" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/fast-http/2019-10-07/fast-http-20191007-git.tgz";
-    sha256 = "00qnl56cfss2blm4pp03dwv84bmkyd0kbarhahclxbn8f7pgwf32";
-  };
-
-  packageName = "fast-http";
-
-  asdFilesToKeep = ["fast-http.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM fast-http DESCRIPTION A fast HTTP protocol parser in Common Lisp
-    SHA256 00qnl56cfss2blm4pp03dwv84bmkyd0kbarhahclxbn8f7pgwf32 URL
-    http://beta.quicklisp.org/archive/fast-http/2019-10-07/fast-http-20191007-git.tgz
-    MD5 fd43be4dd72fd9bda5a3ecce87104c97 NAME fast-http FILENAME fast-http DEPS
-    ((NAME alexandria FILENAME alexandria) (NAME babel FILENAME babel)
-     (NAME cl-utilities FILENAME cl-utilities)
-     (NAME flexi-streams FILENAME flexi-streams)
-     (NAME proc-parse FILENAME proc-parse)
-     (NAME smart-buffer FILENAME smart-buffer)
-     (NAME trivial-features FILENAME trivial-features)
-     (NAME trivial-gray-streams FILENAME trivial-gray-streams)
-     (NAME xsubseq FILENAME xsubseq))
-    DEPENDENCIES
-    (alexandria babel cl-utilities flexi-streams proc-parse smart-buffer
-     trivial-features trivial-gray-streams xsubseq)
-    VERSION 20191007-git SIBLINGS (fast-http-test) PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/fast-io.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/fast-io.nix
deleted file mode 100644
index 8bb1327d91d3..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/fast-io.nix
+++ /dev/null
@@ -1,34 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "fast-io";
-  version = "20200925-git";
-
-  description = "Alternative I/O mechanism to a stream or vector";
-
-  deps = [ args."alexandria" args."babel" args."cffi" args."cffi-grovel" args."cffi-toolchain" args."static-vectors" args."trivial-features" args."trivial-gray-streams" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/fast-io/2020-09-25/fast-io-20200925-git.tgz";
-    sha256 = "1rgyr6y20fp3jqnx5snpjf9lngzalip2a28l04ssypwagmhaa975";
-  };
-
-  packageName = "fast-io";
-
-  asdFilesToKeep = ["fast-io.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM fast-io DESCRIPTION Alternative I/O mechanism to a stream or vector
-    SHA256 1rgyr6y20fp3jqnx5snpjf9lngzalip2a28l04ssypwagmhaa975 URL
-    http://beta.quicklisp.org/archive/fast-io/2020-09-25/fast-io-20200925-git.tgz
-    MD5 aa948bd29b8733f08e79a60226243117 NAME fast-io FILENAME fast-io DEPS
-    ((NAME alexandria FILENAME alexandria) (NAME babel FILENAME babel)
-     (NAME cffi FILENAME cffi) (NAME cffi-grovel FILENAME cffi-grovel)
-     (NAME cffi-toolchain FILENAME cffi-toolchain)
-     (NAME static-vectors FILENAME static-vectors)
-     (NAME trivial-features FILENAME trivial-features)
-     (NAME trivial-gray-streams FILENAME trivial-gray-streams))
-    DEPENDENCIES
-    (alexandria babel cffi cffi-grovel cffi-toolchain static-vectors
-     trivial-features trivial-gray-streams)
-    VERSION 20200925-git SIBLINGS (fast-io-test) PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/fiasco.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/fiasco.nix
deleted file mode 100644
index 53dbce44e1f4..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/fiasco.nix
+++ /dev/null
@@ -1,31 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "fiasco";
-  version = "20200610-git";
-
-  parasites = [ "fiasco-self-tests" ];
-
-  description = "A Common Lisp test framework that treasures your failures, logical continuation of Stefil.";
-
-  deps = [ args."alexandria" args."trivial-gray-streams" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/fiasco/2020-06-10/fiasco-20200610-git.tgz";
-    sha256 = "1wb0ibw6ka9fbsb40zjipn7vh3jbzyfsvcc9gq19nqhbqa8gy9r4";
-  };
-
-  packageName = "fiasco";
-
-  asdFilesToKeep = ["fiasco.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM fiasco DESCRIPTION
-    A Common Lisp test framework that treasures your failures, logical continuation of Stefil.
-    SHA256 1wb0ibw6ka9fbsb40zjipn7vh3jbzyfsvcc9gq19nqhbqa8gy9r4 URL
-    http://beta.quicklisp.org/archive/fiasco/2020-06-10/fiasco-20200610-git.tgz
-    MD5 c5a84e4a0a8afe45729cd6e39af772ac NAME fiasco FILENAME fiasco DEPS
-    ((NAME alexandria FILENAME alexandria)
-     (NAME trivial-gray-streams FILENAME trivial-gray-streams))
-    DEPENDENCIES (alexandria trivial-gray-streams) VERSION 20200610-git
-    SIBLINGS NIL PARASITES (fiasco-self-tests)) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/file-attributes.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/file-attributes.nix
deleted file mode 100644
index e40f756fddba..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/file-attributes.nix
+++ /dev/null
@@ -1,34 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "file-attributes";
-  version = "20210807-git";
-
-  description = "Access to file attributes (uid, gid, atime, mtime, mod)";
-
-  deps = [ args."alexandria" args."babel" args."cffi" args."documentation-utils" args."trivial-features" args."trivial-indent" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/file-attributes/2021-08-07/file-attributes-20210807-git.tgz";
-    sha256 = "0f2kr886jn83hlsk6a548cd0vdq4f1dsxscnslni0nhlxsbi1gsg";
-  };
-
-  packageName = "file-attributes";
-
-  asdFilesToKeep = ["file-attributes.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM file-attributes DESCRIPTION
-    Access to file attributes (uid, gid, atime, mtime, mod) SHA256
-    0f2kr886jn83hlsk6a548cd0vdq4f1dsxscnslni0nhlxsbi1gsg URL
-    http://beta.quicklisp.org/archive/file-attributes/2021-08-07/file-attributes-20210807-git.tgz
-    MD5 ba0c3667061d97674f5b1666bcbc8506 NAME file-attributes FILENAME
-    file-attributes DEPS
-    ((NAME alexandria FILENAME alexandria) (NAME babel FILENAME babel)
-     (NAME cffi FILENAME cffi)
-     (NAME documentation-utils FILENAME documentation-utils)
-     (NAME trivial-features FILENAME trivial-features)
-     (NAME trivial-indent FILENAME trivial-indent))
-    DEPENDENCIES
-    (alexandria babel cffi documentation-utils trivial-features trivial-indent)
-    VERSION 20210807-git SIBLINGS NIL PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/fiveam.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/fiveam.nix
deleted file mode 100644
index b341fdbe2f9d..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/fiveam.nix
+++ /dev/null
@@ -1,31 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "fiveam";
-  version = "20211209-git";
-
-  parasites = [ "fiveam/test" ];
-
-  description = "A simple regression testing framework";
-
-  deps = [ args."alexandria" args."net_dot_didierverna_dot_asdf-flv" args."trivial-backtrace" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/fiveam/2021-12-09/fiveam-20211209-git.tgz";
-    sha256 = "0kyyr2dlgpzkn2cw9i4fwyip1d1la4cbv8l4b8jz31f5c1p76ab7";
-  };
-
-  packageName = "fiveam";
-
-  asdFilesToKeep = ["fiveam.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM fiveam DESCRIPTION A simple regression testing framework SHA256
-    0kyyr2dlgpzkn2cw9i4fwyip1d1la4cbv8l4b8jz31f5c1p76ab7 URL
-    http://beta.quicklisp.org/archive/fiveam/2021-12-09/fiveam-20211209-git.tgz
-    MD5 10d6a5a19f47ed94cbd9edf1d4c20933 NAME fiveam FILENAME fiveam DEPS
-    ((NAME alexandria FILENAME alexandria)
-     (NAME net.didierverna.asdf-flv FILENAME net_dot_didierverna_dot_asdf-flv)
-     (NAME trivial-backtrace FILENAME trivial-backtrace))
-    DEPENDENCIES (alexandria net.didierverna.asdf-flv trivial-backtrace)
-    VERSION 20211209-git SIBLINGS NIL PARASITES (fiveam/test)) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/flexi-streams.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/flexi-streams.nix
deleted file mode 100644
index 1d6ce02108b7..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/flexi-streams.nix
+++ /dev/null
@@ -1,30 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "flexi-streams";
-  version = "20210807-git";
-
-  parasites = [ "flexi-streams-test" ];
-
-  description = "Flexible bivalent streams for Common Lisp";
-
-  deps = [ args."trivial-gray-streams" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/flexi-streams/2021-08-07/flexi-streams-20210807-git.tgz";
-    sha256 = "1g2cvz0bjigr6lw3gigdwcm1x1w0pcyr3ainnix9wyp1kxc2n2rw";
-  };
-
-  packageName = "flexi-streams";
-
-  asdFilesToKeep = ["flexi-streams.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM flexi-streams DESCRIPTION Flexible bivalent streams for Common Lisp
-    SHA256 1g2cvz0bjigr6lw3gigdwcm1x1w0pcyr3ainnix9wyp1kxc2n2rw URL
-    http://beta.quicklisp.org/archive/flexi-streams/2021-08-07/flexi-streams-20210807-git.tgz
-    MD5 6c026daab0766c11f5aee9cc3df3394e NAME flexi-streams FILENAME
-    flexi-streams DEPS
-    ((NAME trivial-gray-streams FILENAME trivial-gray-streams)) DEPENDENCIES
-    (trivial-gray-streams) VERSION 20210807-git SIBLINGS NIL PARASITES
-    (flexi-streams-test)) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/float-features.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/float-features.nix
deleted file mode 100644
index 62001bc69e33..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/float-features.nix
+++ /dev/null
@@ -1,30 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "float-features";
-  version = "20210228-git";
-
-  description = "A portability library for IEEE float features not covered by the CL standard.";
-
-  deps = [ args."documentation-utils" args."trivial-indent" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/float-features/2021-02-28/float-features-20210228-git.tgz";
-    sha256 = "1giy9qm9bgdfp1mm4d36fcj544kfq68qckmijlrhwbvkpk18hgrd";
-  };
-
-  packageName = "float-features";
-
-  asdFilesToKeep = ["float-features.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM float-features DESCRIPTION
-    A portability library for IEEE float features not covered by the CL standard.
-    SHA256 1giy9qm9bgdfp1mm4d36fcj544kfq68qckmijlrhwbvkpk18hgrd URL
-    http://beta.quicklisp.org/archive/float-features/2021-02-28/float-features-20210228-git.tgz
-    MD5 77223b9c85dca49d0f599e51ba95953a NAME float-features FILENAME
-    float-features DEPS
-    ((NAME documentation-utils FILENAME documentation-utils)
-     (NAME trivial-indent FILENAME trivial-indent))
-    DEPENDENCIES (documentation-utils trivial-indent) VERSION 20210228-git
-    SIBLINGS (float-features-tests) PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/flow.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/flow.nix
deleted file mode 100644
index 1adac0993d28..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/flow.nix
+++ /dev/null
@@ -1,29 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "flow";
-  version = "20200610-git";
-
-  description = "A flowchart and generalised graph library.";
-
-  deps = [ args."closer-mop" args."documentation-utils" args."trivial-indent" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/flow/2020-06-10/flow-20200610-git.tgz";
-    sha256 = "1z1krk1iiz7n1mvpnmqnrgfhicpppb45i0jgkqnrds749xjnx194";
-  };
-
-  packageName = "flow";
-
-  asdFilesToKeep = ["flow.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM flow DESCRIPTION A flowchart and generalised graph library. SHA256
-    1z1krk1iiz7n1mvpnmqnrgfhicpppb45i0jgkqnrds749xjnx194 URL
-    http://beta.quicklisp.org/archive/flow/2020-06-10/flow-20200610-git.tgz MD5
-    f0767467d5e9bfda6fe5777a26719811 NAME flow FILENAME flow DEPS
-    ((NAME closer-mop FILENAME closer-mop)
-     (NAME documentation-utils FILENAME documentation-utils)
-     (NAME trivial-indent FILENAME trivial-indent))
-    DEPENDENCIES (closer-mop documentation-utils trivial-indent) VERSION
-    20200610-git SIBLINGS (flow-visualizer) PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/fn.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/fn.nix
deleted file mode 100644
index 02e054b2f2c0..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/fn.nix
+++ /dev/null
@@ -1,26 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "fn";
-  version = "20171019-git";
-
-  description = "Some macros for lambda brevity";
-
-  deps = [ args."named-readtables" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/fn/2017-10-19/fn-20171019-git.tgz";
-    sha256 = "0r062ffn31sc7313xlfaa9pwnf2wdkiq4spqlr1lk5r8isvdnzz8";
-  };
-
-  packageName = "fn";
-
-  asdFilesToKeep = ["fn.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM fn DESCRIPTION Some macros for lambda brevity SHA256
-    0r062ffn31sc7313xlfaa9pwnf2wdkiq4spqlr1lk5r8isvdnzz8 URL
-    http://beta.quicklisp.org/archive/fn/2017-10-19/fn-20171019-git.tgz MD5
-    0e1cfe5f19ceec8966baa3037772d31e NAME fn FILENAME fn DEPS
-    ((NAME named-readtables FILENAME named-readtables)) DEPENDENCIES
-    (named-readtables) VERSION 20171019-git SIBLINGS NIL PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/form-fiddle.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/form-fiddle.nix
deleted file mode 100644
index 9f837c3ae2d6..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/form-fiddle.nix
+++ /dev/null
@@ -1,30 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "form-fiddle";
-  version = "20190710-git";
-
-  description = "A collection of utilities to destructure lambda forms.";
-
-  deps = [ args."documentation-utils" args."trivial-indent" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/form-fiddle/2019-07-10/form-fiddle-20190710-git.tgz";
-    sha256 = "12zmqm2vls043kaka7jp6pnsvkxlyv6x183yjyrs8jk461qfydwl";
-  };
-
-  packageName = "form-fiddle";
-
-  asdFilesToKeep = ["form-fiddle.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM form-fiddle DESCRIPTION
-    A collection of utilities to destructure lambda forms. SHA256
-    12zmqm2vls043kaka7jp6pnsvkxlyv6x183yjyrs8jk461qfydwl URL
-    http://beta.quicklisp.org/archive/form-fiddle/2019-07-10/form-fiddle-20190710-git.tgz
-    MD5 2576065de1e3c95751285fb155f5bcf6 NAME form-fiddle FILENAME form-fiddle
-    DEPS
-    ((NAME documentation-utils FILENAME documentation-utils)
-     (NAME trivial-indent FILENAME trivial-indent))
-    DEPENDENCIES (documentation-utils trivial-indent) VERSION 20190710-git
-    SIBLINGS NIL PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/fset.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/fset.nix
deleted file mode 100644
index 51f8a1b95295..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/fset.nix
+++ /dev/null
@@ -1,35 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "fset";
-  version = "20200925-git";
-
-  parasites = [ "fset/test" ];
-
-  description = "A functional set-theoretic collections library.
-See: http://www.ergy.com/FSet.html
-";
-
-  deps = [ args."misc-extensions" args."mt19937" args."named-readtables" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/fset/2020-09-25/fset-20200925-git.tgz";
-    sha256 = "19fr6ds1a493b0kbsligpn7i771r1yfshbbkdp0hxs4l792l05wv";
-  };
-
-  packageName = "fset";
-
-  asdFilesToKeep = ["fset.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM fset DESCRIPTION A functional set-theoretic collections library.
-See: http://www.ergy.com/FSet.html
-
-    SHA256 19fr6ds1a493b0kbsligpn7i771r1yfshbbkdp0hxs4l792l05wv URL
-    http://beta.quicklisp.org/archive/fset/2020-09-25/fset-20200925-git.tgz MD5
-    481e7207099c061459db68813e7bf70c NAME fset FILENAME fset DEPS
-    ((NAME misc-extensions FILENAME misc-extensions)
-     (NAME mt19937 FILENAME mt19937)
-     (NAME named-readtables FILENAME named-readtables))
-    DEPENDENCIES (misc-extensions mt19937 named-readtables) VERSION
-    20200925-git SIBLINGS NIL PARASITES (fset/test)) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/generic-cl.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/generic-cl.nix
deleted file mode 100644
index 62232d465458..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/generic-cl.nix
+++ /dev/null
@@ -1,76 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "generic-cl";
-  version = "20211020-git";
-
-  parasites = [ "generic-cl/test" ];
-
-  description = "Standard Common Lisp functions implemented using generic functions.";
-
-  deps = [ args."agutil" args."alexandria" args."anaphora" args."arrows" args."cl-custom-hash-table" args."cl-environments" args."cl-form-types" args."closer-mop" args."collectors" args."fiveam" args."generic-cl_dot_arithmetic" args."generic-cl_dot_collector" args."generic-cl_dot_comparison" args."generic-cl_dot_container" args."generic-cl_dot_internal" args."generic-cl_dot_iterator" args."generic-cl_dot_lazy-seq" args."generic-cl_dot_map" args."generic-cl_dot_math" args."generic-cl_dot_object" args."generic-cl_dot_sequence" args."generic-cl_dot_set" args."introspect-environment" args."iterate" args."lisp-namespace" args."optima" args."parse-declarations-1_dot_0" args."static-dispatch" args."symbol-munger" args."trivia" args."trivia_dot_balland2006" args."trivia_dot_level0" args."trivia_dot_level1" args."trivia_dot_level2" args."trivia_dot_trivial" args."trivial-cltl2" args."type-i" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/generic-cl/2021-10-20/generic-cl-20211020-git.tgz";
-    sha256 = "0jryfmxwqhrarmpbb643b7iv5rlib5pcx4i4jcd6h2rscnrbj8sa";
-  };
-
-  packageName = "generic-cl";
-
-  asdFilesToKeep = ["generic-cl.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM generic-cl DESCRIPTION
-    Standard Common Lisp functions implemented using generic functions. SHA256
-    0jryfmxwqhrarmpbb643b7iv5rlib5pcx4i4jcd6h2rscnrbj8sa URL
-    http://beta.quicklisp.org/archive/generic-cl/2021-10-20/generic-cl-20211020-git.tgz
-    MD5 ce42f45dd7c5be44de45ee259a46d7b8 NAME generic-cl FILENAME generic-cl
-    DEPS
-    ((NAME agutil FILENAME agutil) (NAME alexandria FILENAME alexandria)
-     (NAME anaphora FILENAME anaphora) (NAME arrows FILENAME arrows)
-     (NAME cl-custom-hash-table FILENAME cl-custom-hash-table)
-     (NAME cl-environments FILENAME cl-environments)
-     (NAME cl-form-types FILENAME cl-form-types)
-     (NAME closer-mop FILENAME closer-mop)
-     (NAME collectors FILENAME collectors) (NAME fiveam FILENAME fiveam)
-     (NAME generic-cl.arithmetic FILENAME generic-cl_dot_arithmetic)
-     (NAME generic-cl.collector FILENAME generic-cl_dot_collector)
-     (NAME generic-cl.comparison FILENAME generic-cl_dot_comparison)
-     (NAME generic-cl.container FILENAME generic-cl_dot_container)
-     (NAME generic-cl.internal FILENAME generic-cl_dot_internal)
-     (NAME generic-cl.iterator FILENAME generic-cl_dot_iterator)
-     (NAME generic-cl.lazy-seq FILENAME generic-cl_dot_lazy-seq)
-     (NAME generic-cl.map FILENAME generic-cl_dot_map)
-     (NAME generic-cl.math FILENAME generic-cl_dot_math)
-     (NAME generic-cl.object FILENAME generic-cl_dot_object)
-     (NAME generic-cl.sequence FILENAME generic-cl_dot_sequence)
-     (NAME generic-cl.set FILENAME generic-cl_dot_set)
-     (NAME introspect-environment FILENAME introspect-environment)
-     (NAME iterate FILENAME iterate)
-     (NAME lisp-namespace FILENAME lisp-namespace)
-     (NAME optima FILENAME optima)
-     (NAME parse-declarations-1.0 FILENAME parse-declarations-1_dot_0)
-     (NAME static-dispatch FILENAME static-dispatch)
-     (NAME symbol-munger FILENAME symbol-munger) (NAME trivia FILENAME trivia)
-     (NAME trivia.balland2006 FILENAME trivia_dot_balland2006)
-     (NAME trivia.level0 FILENAME trivia_dot_level0)
-     (NAME trivia.level1 FILENAME trivia_dot_level1)
-     (NAME trivia.level2 FILENAME trivia_dot_level2)
-     (NAME trivia.trivial FILENAME trivia_dot_trivial)
-     (NAME trivial-cltl2 FILENAME trivial-cltl2) (NAME type-i FILENAME type-i))
-    DEPENDENCIES
-    (agutil alexandria anaphora arrows cl-custom-hash-table cl-environments
-     cl-form-types closer-mop collectors fiveam generic-cl.arithmetic
-     generic-cl.collector generic-cl.comparison generic-cl.container
-     generic-cl.internal generic-cl.iterator generic-cl.lazy-seq generic-cl.map
-     generic-cl.math generic-cl.object generic-cl.sequence generic-cl.set
-     introspect-environment iterate lisp-namespace optima
-     parse-declarations-1.0 static-dispatch symbol-munger trivia
-     trivia.balland2006 trivia.level0 trivia.level1 trivia.level2
-     trivia.trivial trivial-cltl2 type-i)
-    VERSION 20211020-git SIBLINGS
-    (generic-cl.arithmetic generic-cl.collector generic-cl.comparison
-     generic-cl.container generic-cl.internal generic-cl.iterator
-     generic-cl.lazy-seq generic-cl.map generic-cl.math generic-cl.object
-     generic-cl.sequence generic-cl.set generic-cl.util)
-    PARASITES (generic-cl/test)) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/generic-cl_dot_arithmetic.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/generic-cl_dot_arithmetic.nix
deleted file mode 100644
index a4d00c345c9d..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/generic-cl_dot_arithmetic.nix
+++ /dev/null
@@ -1,60 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "generic-cl_dot_arithmetic";
-  version = "generic-cl-20211020-git";
-
-  description = "Generic arithmetic function interface";
-
-  deps = [ args."agutil" args."alexandria" args."anaphora" args."arrows" args."cl-environments" args."cl-form-types" args."closer-mop" args."collectors" args."generic-cl_dot_comparison" args."generic-cl_dot_internal" args."introspect-environment" args."iterate" args."lisp-namespace" args."optima" args."parse-declarations-1_dot_0" args."static-dispatch" args."symbol-munger" args."trivia" args."trivia_dot_balland2006" args."trivia_dot_level0" args."trivia_dot_level1" args."trivia_dot_level2" args."trivia_dot_trivial" args."trivial-cltl2" args."type-i" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/generic-cl/2021-10-20/generic-cl-20211020-git.tgz";
-    sha256 = "0jryfmxwqhrarmpbb643b7iv5rlib5pcx4i4jcd6h2rscnrbj8sa";
-  };
-
-  packageName = "generic-cl.arithmetic";
-
-  asdFilesToKeep = ["generic-cl.arithmetic.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM generic-cl.arithmetic DESCRIPTION
-    Generic arithmetic function interface SHA256
-    0jryfmxwqhrarmpbb643b7iv5rlib5pcx4i4jcd6h2rscnrbj8sa URL
-    http://beta.quicklisp.org/archive/generic-cl/2021-10-20/generic-cl-20211020-git.tgz
-    MD5 ce42f45dd7c5be44de45ee259a46d7b8 NAME generic-cl.arithmetic FILENAME
-    generic-cl_dot_arithmetic DEPS
-    ((NAME agutil FILENAME agutil) (NAME alexandria FILENAME alexandria)
-     (NAME anaphora FILENAME anaphora) (NAME arrows FILENAME arrows)
-     (NAME cl-environments FILENAME cl-environments)
-     (NAME cl-form-types FILENAME cl-form-types)
-     (NAME closer-mop FILENAME closer-mop)
-     (NAME collectors FILENAME collectors)
-     (NAME generic-cl.comparison FILENAME generic-cl_dot_comparison)
-     (NAME generic-cl.internal FILENAME generic-cl_dot_internal)
-     (NAME introspect-environment FILENAME introspect-environment)
-     (NAME iterate FILENAME iterate)
-     (NAME lisp-namespace FILENAME lisp-namespace)
-     (NAME optima FILENAME optima)
-     (NAME parse-declarations-1.0 FILENAME parse-declarations-1_dot_0)
-     (NAME static-dispatch FILENAME static-dispatch)
-     (NAME symbol-munger FILENAME symbol-munger) (NAME trivia FILENAME trivia)
-     (NAME trivia.balland2006 FILENAME trivia_dot_balland2006)
-     (NAME trivia.level0 FILENAME trivia_dot_level0)
-     (NAME trivia.level1 FILENAME trivia_dot_level1)
-     (NAME trivia.level2 FILENAME trivia_dot_level2)
-     (NAME trivia.trivial FILENAME trivia_dot_trivial)
-     (NAME trivial-cltl2 FILENAME trivial-cltl2) (NAME type-i FILENAME type-i))
-    DEPENDENCIES
-    (agutil alexandria anaphora arrows cl-environments cl-form-types closer-mop
-     collectors generic-cl.comparison generic-cl.internal
-     introspect-environment iterate lisp-namespace optima
-     parse-declarations-1.0 static-dispatch symbol-munger trivia
-     trivia.balland2006 trivia.level0 trivia.level1 trivia.level2
-     trivia.trivial trivial-cltl2 type-i)
-    VERSION generic-cl-20211020-git SIBLINGS
-    (generic-cl generic-cl.collector generic-cl.comparison generic-cl.container
-     generic-cl.internal generic-cl.iterator generic-cl.lazy-seq generic-cl.map
-     generic-cl.math generic-cl.object generic-cl.sequence generic-cl.set
-     generic-cl.util)
-    PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/generic-cl_dot_collector.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/generic-cl_dot_collector.nix
deleted file mode 100644
index cfbe247641a0..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/generic-cl_dot_collector.nix
+++ /dev/null
@@ -1,62 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "generic-cl_dot_collector";
-  version = "generic-cl-20211020-git";
-
-  description = "Generic collector interface";
-
-  deps = [ args."agutil" args."alexandria" args."anaphora" args."arrows" args."cl-environments" args."cl-form-types" args."closer-mop" args."collectors" args."generic-cl_dot_comparison" args."generic-cl_dot_container" args."generic-cl_dot_internal" args."generic-cl_dot_iterator" args."generic-cl_dot_object" args."introspect-environment" args."iterate" args."lisp-namespace" args."optima" args."parse-declarations-1_dot_0" args."static-dispatch" args."symbol-munger" args."trivia" args."trivia_dot_balland2006" args."trivia_dot_level0" args."trivia_dot_level1" args."trivia_dot_level2" args."trivia_dot_trivial" args."trivial-cltl2" args."type-i" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/generic-cl/2021-10-20/generic-cl-20211020-git.tgz";
-    sha256 = "0jryfmxwqhrarmpbb643b7iv5rlib5pcx4i4jcd6h2rscnrbj8sa";
-  };
-
-  packageName = "generic-cl.collector";
-
-  asdFilesToKeep = ["generic-cl.collector.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM generic-cl.collector DESCRIPTION Generic collector interface SHA256
-    0jryfmxwqhrarmpbb643b7iv5rlib5pcx4i4jcd6h2rscnrbj8sa URL
-    http://beta.quicklisp.org/archive/generic-cl/2021-10-20/generic-cl-20211020-git.tgz
-    MD5 ce42f45dd7c5be44de45ee259a46d7b8 NAME generic-cl.collector FILENAME
-    generic-cl_dot_collector DEPS
-    ((NAME agutil FILENAME agutil) (NAME alexandria FILENAME alexandria)
-     (NAME anaphora FILENAME anaphora) (NAME arrows FILENAME arrows)
-     (NAME cl-environments FILENAME cl-environments)
-     (NAME cl-form-types FILENAME cl-form-types)
-     (NAME closer-mop FILENAME closer-mop)
-     (NAME collectors FILENAME collectors)
-     (NAME generic-cl.comparison FILENAME generic-cl_dot_comparison)
-     (NAME generic-cl.container FILENAME generic-cl_dot_container)
-     (NAME generic-cl.internal FILENAME generic-cl_dot_internal)
-     (NAME generic-cl.iterator FILENAME generic-cl_dot_iterator)
-     (NAME generic-cl.object FILENAME generic-cl_dot_object)
-     (NAME introspect-environment FILENAME introspect-environment)
-     (NAME iterate FILENAME iterate)
-     (NAME lisp-namespace FILENAME lisp-namespace)
-     (NAME optima FILENAME optima)
-     (NAME parse-declarations-1.0 FILENAME parse-declarations-1_dot_0)
-     (NAME static-dispatch FILENAME static-dispatch)
-     (NAME symbol-munger FILENAME symbol-munger) (NAME trivia FILENAME trivia)
-     (NAME trivia.balland2006 FILENAME trivia_dot_balland2006)
-     (NAME trivia.level0 FILENAME trivia_dot_level0)
-     (NAME trivia.level1 FILENAME trivia_dot_level1)
-     (NAME trivia.level2 FILENAME trivia_dot_level2)
-     (NAME trivia.trivial FILENAME trivia_dot_trivial)
-     (NAME trivial-cltl2 FILENAME trivial-cltl2) (NAME type-i FILENAME type-i))
-    DEPENDENCIES
-    (agutil alexandria anaphora arrows cl-environments cl-form-types closer-mop
-     collectors generic-cl.comparison generic-cl.container generic-cl.internal
-     generic-cl.iterator generic-cl.object introspect-environment iterate
-     lisp-namespace optima parse-declarations-1.0 static-dispatch symbol-munger
-     trivia trivia.balland2006 trivia.level0 trivia.level1 trivia.level2
-     trivia.trivial trivial-cltl2 type-i)
-    VERSION generic-cl-20211020-git SIBLINGS
-    (generic-cl.arithmetic generic-cl generic-cl.comparison
-     generic-cl.container generic-cl.internal generic-cl.iterator
-     generic-cl.lazy-seq generic-cl.map generic-cl.math generic-cl.object
-     generic-cl.sequence generic-cl.set generic-cl.util)
-    PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/generic-cl_dot_comparison.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/generic-cl_dot_comparison.nix
deleted file mode 100644
index b73000b48c0b..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/generic-cl_dot_comparison.nix
+++ /dev/null
@@ -1,57 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "generic-cl_dot_comparison";
-  version = "generic-cl-20211020-git";
-
-  description = "Generic comparison interface";
-
-  deps = [ args."agutil" args."alexandria" args."anaphora" args."arrows" args."cl-environments" args."cl-form-types" args."closer-mop" args."collectors" args."generic-cl_dot_internal" args."introspect-environment" args."iterate" args."lisp-namespace" args."optima" args."parse-declarations-1_dot_0" args."static-dispatch" args."symbol-munger" args."trivia" args."trivia_dot_balland2006" args."trivia_dot_level0" args."trivia_dot_level1" args."trivia_dot_level2" args."trivia_dot_trivial" args."trivial-cltl2" args."type-i" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/generic-cl/2021-10-20/generic-cl-20211020-git.tgz";
-    sha256 = "0jryfmxwqhrarmpbb643b7iv5rlib5pcx4i4jcd6h2rscnrbj8sa";
-  };
-
-  packageName = "generic-cl.comparison";
-
-  asdFilesToKeep = ["generic-cl.comparison.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM generic-cl.comparison DESCRIPTION Generic comparison interface
-    SHA256 0jryfmxwqhrarmpbb643b7iv5rlib5pcx4i4jcd6h2rscnrbj8sa URL
-    http://beta.quicklisp.org/archive/generic-cl/2021-10-20/generic-cl-20211020-git.tgz
-    MD5 ce42f45dd7c5be44de45ee259a46d7b8 NAME generic-cl.comparison FILENAME
-    generic-cl_dot_comparison DEPS
-    ((NAME agutil FILENAME agutil) (NAME alexandria FILENAME alexandria)
-     (NAME anaphora FILENAME anaphora) (NAME arrows FILENAME arrows)
-     (NAME cl-environments FILENAME cl-environments)
-     (NAME cl-form-types FILENAME cl-form-types)
-     (NAME closer-mop FILENAME closer-mop)
-     (NAME collectors FILENAME collectors)
-     (NAME generic-cl.internal FILENAME generic-cl_dot_internal)
-     (NAME introspect-environment FILENAME introspect-environment)
-     (NAME iterate FILENAME iterate)
-     (NAME lisp-namespace FILENAME lisp-namespace)
-     (NAME optima FILENAME optima)
-     (NAME parse-declarations-1.0 FILENAME parse-declarations-1_dot_0)
-     (NAME static-dispatch FILENAME static-dispatch)
-     (NAME symbol-munger FILENAME symbol-munger) (NAME trivia FILENAME trivia)
-     (NAME trivia.balland2006 FILENAME trivia_dot_balland2006)
-     (NAME trivia.level0 FILENAME trivia_dot_level0)
-     (NAME trivia.level1 FILENAME trivia_dot_level1)
-     (NAME trivia.level2 FILENAME trivia_dot_level2)
-     (NAME trivia.trivial FILENAME trivia_dot_trivial)
-     (NAME trivial-cltl2 FILENAME trivial-cltl2) (NAME type-i FILENAME type-i))
-    DEPENDENCIES
-    (agutil alexandria anaphora arrows cl-environments cl-form-types closer-mop
-     collectors generic-cl.internal introspect-environment iterate
-     lisp-namespace optima parse-declarations-1.0 static-dispatch symbol-munger
-     trivia trivia.balland2006 trivia.level0 trivia.level1 trivia.level2
-     trivia.trivial trivial-cltl2 type-i)
-    VERSION generic-cl-20211020-git SIBLINGS
-    (generic-cl.arithmetic generic-cl generic-cl.collector generic-cl.container
-     generic-cl.internal generic-cl.iterator generic-cl.lazy-seq generic-cl.map
-     generic-cl.math generic-cl.object generic-cl.sequence generic-cl.set
-     generic-cl.util)
-    PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/generic-cl_dot_container.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/generic-cl_dot_container.nix
deleted file mode 100644
index 9a74523c5812..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/generic-cl_dot_container.nix
+++ /dev/null
@@ -1,60 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "generic-cl_dot_container";
-  version = "generic-cl-20211020-git";
-
-  description = "Generic container interface";
-
-  deps = [ args."agutil" args."alexandria" args."anaphora" args."arrows" args."cl-environments" args."cl-form-types" args."closer-mop" args."collectors" args."generic-cl_dot_comparison" args."generic-cl_dot_internal" args."generic-cl_dot_object" args."introspect-environment" args."iterate" args."lisp-namespace" args."optima" args."parse-declarations-1_dot_0" args."static-dispatch" args."symbol-munger" args."trivia" args."trivia_dot_balland2006" args."trivia_dot_level0" args."trivia_dot_level1" args."trivia_dot_level2" args."trivia_dot_trivial" args."trivial-cltl2" args."type-i" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/generic-cl/2021-10-20/generic-cl-20211020-git.tgz";
-    sha256 = "0jryfmxwqhrarmpbb643b7iv5rlib5pcx4i4jcd6h2rscnrbj8sa";
-  };
-
-  packageName = "generic-cl.container";
-
-  asdFilesToKeep = ["generic-cl.container.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM generic-cl.container DESCRIPTION Generic container interface SHA256
-    0jryfmxwqhrarmpbb643b7iv5rlib5pcx4i4jcd6h2rscnrbj8sa URL
-    http://beta.quicklisp.org/archive/generic-cl/2021-10-20/generic-cl-20211020-git.tgz
-    MD5 ce42f45dd7c5be44de45ee259a46d7b8 NAME generic-cl.container FILENAME
-    generic-cl_dot_container DEPS
-    ((NAME agutil FILENAME agutil) (NAME alexandria FILENAME alexandria)
-     (NAME anaphora FILENAME anaphora) (NAME arrows FILENAME arrows)
-     (NAME cl-environments FILENAME cl-environments)
-     (NAME cl-form-types FILENAME cl-form-types)
-     (NAME closer-mop FILENAME closer-mop)
-     (NAME collectors FILENAME collectors)
-     (NAME generic-cl.comparison FILENAME generic-cl_dot_comparison)
-     (NAME generic-cl.internal FILENAME generic-cl_dot_internal)
-     (NAME generic-cl.object FILENAME generic-cl_dot_object)
-     (NAME introspect-environment FILENAME introspect-environment)
-     (NAME iterate FILENAME iterate)
-     (NAME lisp-namespace FILENAME lisp-namespace)
-     (NAME optima FILENAME optima)
-     (NAME parse-declarations-1.0 FILENAME parse-declarations-1_dot_0)
-     (NAME static-dispatch FILENAME static-dispatch)
-     (NAME symbol-munger FILENAME symbol-munger) (NAME trivia FILENAME trivia)
-     (NAME trivia.balland2006 FILENAME trivia_dot_balland2006)
-     (NAME trivia.level0 FILENAME trivia_dot_level0)
-     (NAME trivia.level1 FILENAME trivia_dot_level1)
-     (NAME trivia.level2 FILENAME trivia_dot_level2)
-     (NAME trivia.trivial FILENAME trivia_dot_trivial)
-     (NAME trivial-cltl2 FILENAME trivial-cltl2) (NAME type-i FILENAME type-i))
-    DEPENDENCIES
-    (agutil alexandria anaphora arrows cl-environments cl-form-types closer-mop
-     collectors generic-cl.comparison generic-cl.internal generic-cl.object
-     introspect-environment iterate lisp-namespace optima
-     parse-declarations-1.0 static-dispatch symbol-munger trivia
-     trivia.balland2006 trivia.level0 trivia.level1 trivia.level2
-     trivia.trivial trivial-cltl2 type-i)
-    VERSION generic-cl-20211020-git SIBLINGS
-    (generic-cl.arithmetic generic-cl generic-cl.collector
-     generic-cl.comparison generic-cl.internal generic-cl.iterator
-     generic-cl.lazy-seq generic-cl.map generic-cl.math generic-cl.object
-     generic-cl.sequence generic-cl.set generic-cl.util)
-    PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/generic-cl_dot_internal.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/generic-cl_dot_internal.nix
deleted file mode 100644
index dd1a3a6e18ea..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/generic-cl_dot_internal.nix
+++ /dev/null
@@ -1,57 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "generic-cl_dot_internal";
-  version = "generic-cl-20211020-git";
-
-  description = "Utilities used internally by generic-cl";
-
-  deps = [ args."agutil" args."alexandria" args."anaphora" args."arrows" args."cl-environments" args."cl-form-types" args."closer-mop" args."collectors" args."introspect-environment" args."iterate" args."lisp-namespace" args."optima" args."parse-declarations-1_dot_0" args."static-dispatch" args."symbol-munger" args."trivia" args."trivia_dot_balland2006" args."trivia_dot_level0" args."trivia_dot_level1" args."trivia_dot_level2" args."trivia_dot_trivial" args."trivial-cltl2" args."type-i" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/generic-cl/2021-10-20/generic-cl-20211020-git.tgz";
-    sha256 = "0jryfmxwqhrarmpbb643b7iv5rlib5pcx4i4jcd6h2rscnrbj8sa";
-  };
-
-  packageName = "generic-cl.internal";
-
-  asdFilesToKeep = ["generic-cl.internal.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM generic-cl.internal DESCRIPTION
-    Utilities used internally by generic-cl SHA256
-    0jryfmxwqhrarmpbb643b7iv5rlib5pcx4i4jcd6h2rscnrbj8sa URL
-    http://beta.quicklisp.org/archive/generic-cl/2021-10-20/generic-cl-20211020-git.tgz
-    MD5 ce42f45dd7c5be44de45ee259a46d7b8 NAME generic-cl.internal FILENAME
-    generic-cl_dot_internal DEPS
-    ((NAME agutil FILENAME agutil) (NAME alexandria FILENAME alexandria)
-     (NAME anaphora FILENAME anaphora) (NAME arrows FILENAME arrows)
-     (NAME cl-environments FILENAME cl-environments)
-     (NAME cl-form-types FILENAME cl-form-types)
-     (NAME closer-mop FILENAME closer-mop)
-     (NAME collectors FILENAME collectors)
-     (NAME introspect-environment FILENAME introspect-environment)
-     (NAME iterate FILENAME iterate)
-     (NAME lisp-namespace FILENAME lisp-namespace)
-     (NAME optima FILENAME optima)
-     (NAME parse-declarations-1.0 FILENAME parse-declarations-1_dot_0)
-     (NAME static-dispatch FILENAME static-dispatch)
-     (NAME symbol-munger FILENAME symbol-munger) (NAME trivia FILENAME trivia)
-     (NAME trivia.balland2006 FILENAME trivia_dot_balland2006)
-     (NAME trivia.level0 FILENAME trivia_dot_level0)
-     (NAME trivia.level1 FILENAME trivia_dot_level1)
-     (NAME trivia.level2 FILENAME trivia_dot_level2)
-     (NAME trivia.trivial FILENAME trivia_dot_trivial)
-     (NAME trivial-cltl2 FILENAME trivial-cltl2) (NAME type-i FILENAME type-i))
-    DEPENDENCIES
-    (agutil alexandria anaphora arrows cl-environments cl-form-types closer-mop
-     collectors introspect-environment iterate lisp-namespace optima
-     parse-declarations-1.0 static-dispatch symbol-munger trivia
-     trivia.balland2006 trivia.level0 trivia.level1 trivia.level2
-     trivia.trivial trivial-cltl2 type-i)
-    VERSION generic-cl-20211020-git SIBLINGS
-    (generic-cl.arithmetic generic-cl generic-cl.collector
-     generic-cl.comparison generic-cl.container generic-cl.iterator
-     generic-cl.lazy-seq generic-cl.map generic-cl.math generic-cl.object
-     generic-cl.sequence generic-cl.set generic-cl.util)
-    PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/generic-cl_dot_iterator.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/generic-cl_dot_iterator.nix
deleted file mode 100644
index 1640b13e8a43..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/generic-cl_dot_iterator.nix
+++ /dev/null
@@ -1,61 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "generic-cl_dot_iterator";
-  version = "generic-cl-20211020-git";
-
-  description = "Generic iterator interface";
-
-  deps = [ args."agutil" args."alexandria" args."anaphora" args."arrows" args."cl-environments" args."cl-form-types" args."closer-mop" args."collectors" args."generic-cl_dot_comparison" args."generic-cl_dot_container" args."generic-cl_dot_internal" args."generic-cl_dot_object" args."introspect-environment" args."iterate" args."lisp-namespace" args."optima" args."parse-declarations-1_dot_0" args."static-dispatch" args."symbol-munger" args."trivia" args."trivia_dot_balland2006" args."trivia_dot_level0" args."trivia_dot_level1" args."trivia_dot_level2" args."trivia_dot_trivial" args."trivial-cltl2" args."type-i" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/generic-cl/2021-10-20/generic-cl-20211020-git.tgz";
-    sha256 = "0jryfmxwqhrarmpbb643b7iv5rlib5pcx4i4jcd6h2rscnrbj8sa";
-  };
-
-  packageName = "generic-cl.iterator";
-
-  asdFilesToKeep = ["generic-cl.iterator.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM generic-cl.iterator DESCRIPTION Generic iterator interface SHA256
-    0jryfmxwqhrarmpbb643b7iv5rlib5pcx4i4jcd6h2rscnrbj8sa URL
-    http://beta.quicklisp.org/archive/generic-cl/2021-10-20/generic-cl-20211020-git.tgz
-    MD5 ce42f45dd7c5be44de45ee259a46d7b8 NAME generic-cl.iterator FILENAME
-    generic-cl_dot_iterator DEPS
-    ((NAME agutil FILENAME agutil) (NAME alexandria FILENAME alexandria)
-     (NAME anaphora FILENAME anaphora) (NAME arrows FILENAME arrows)
-     (NAME cl-environments FILENAME cl-environments)
-     (NAME cl-form-types FILENAME cl-form-types)
-     (NAME closer-mop FILENAME closer-mop)
-     (NAME collectors FILENAME collectors)
-     (NAME generic-cl.comparison FILENAME generic-cl_dot_comparison)
-     (NAME generic-cl.container FILENAME generic-cl_dot_container)
-     (NAME generic-cl.internal FILENAME generic-cl_dot_internal)
-     (NAME generic-cl.object FILENAME generic-cl_dot_object)
-     (NAME introspect-environment FILENAME introspect-environment)
-     (NAME iterate FILENAME iterate)
-     (NAME lisp-namespace FILENAME lisp-namespace)
-     (NAME optima FILENAME optima)
-     (NAME parse-declarations-1.0 FILENAME parse-declarations-1_dot_0)
-     (NAME static-dispatch FILENAME static-dispatch)
-     (NAME symbol-munger FILENAME symbol-munger) (NAME trivia FILENAME trivia)
-     (NAME trivia.balland2006 FILENAME trivia_dot_balland2006)
-     (NAME trivia.level0 FILENAME trivia_dot_level0)
-     (NAME trivia.level1 FILENAME trivia_dot_level1)
-     (NAME trivia.level2 FILENAME trivia_dot_level2)
-     (NAME trivia.trivial FILENAME trivia_dot_trivial)
-     (NAME trivial-cltl2 FILENAME trivial-cltl2) (NAME type-i FILENAME type-i))
-    DEPENDENCIES
-    (agutil alexandria anaphora arrows cl-environments cl-form-types closer-mop
-     collectors generic-cl.comparison generic-cl.container generic-cl.internal
-     generic-cl.object introspect-environment iterate lisp-namespace optima
-     parse-declarations-1.0 static-dispatch symbol-munger trivia
-     trivia.balland2006 trivia.level0 trivia.level1 trivia.level2
-     trivia.trivial trivial-cltl2 type-i)
-    VERSION generic-cl-20211020-git SIBLINGS
-    (generic-cl.arithmetic generic-cl generic-cl.collector
-     generic-cl.comparison generic-cl.container generic-cl.internal
-     generic-cl.lazy-seq generic-cl.map generic-cl.math generic-cl.object
-     generic-cl.sequence generic-cl.set generic-cl.util)
-    PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/generic-cl_dot_lazy-seq.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/generic-cl_dot_lazy-seq.nix
deleted file mode 100644
index 383de5cce3c5..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/generic-cl_dot_lazy-seq.nix
+++ /dev/null
@@ -1,68 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "generic-cl_dot_lazy-seq";
-  version = "generic-cl-20211020-git";
-
-  description = "Lazy sequences";
-
-  deps = [ args."agutil" args."alexandria" args."anaphora" args."arrows" args."cl-custom-hash-table" args."cl-environments" args."cl-form-types" args."closer-mop" args."collectors" args."generic-cl_dot_collector" args."generic-cl_dot_comparison" args."generic-cl_dot_container" args."generic-cl_dot_internal" args."generic-cl_dot_iterator" args."generic-cl_dot_map" args."generic-cl_dot_object" args."generic-cl_dot_sequence" args."introspect-environment" args."iterate" args."lisp-namespace" args."optima" args."parse-declarations-1_dot_0" args."static-dispatch" args."symbol-munger" args."trivia" args."trivia_dot_balland2006" args."trivia_dot_level0" args."trivia_dot_level1" args."trivia_dot_level2" args."trivia_dot_trivial" args."trivial-cltl2" args."type-i" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/generic-cl/2021-10-20/generic-cl-20211020-git.tgz";
-    sha256 = "0jryfmxwqhrarmpbb643b7iv5rlib5pcx4i4jcd6h2rscnrbj8sa";
-  };
-
-  packageName = "generic-cl.lazy-seq";
-
-  asdFilesToKeep = ["generic-cl.lazy-seq.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM generic-cl.lazy-seq DESCRIPTION Lazy sequences SHA256
-    0jryfmxwqhrarmpbb643b7iv5rlib5pcx4i4jcd6h2rscnrbj8sa URL
-    http://beta.quicklisp.org/archive/generic-cl/2021-10-20/generic-cl-20211020-git.tgz
-    MD5 ce42f45dd7c5be44de45ee259a46d7b8 NAME generic-cl.lazy-seq FILENAME
-    generic-cl_dot_lazy-seq DEPS
-    ((NAME agutil FILENAME agutil) (NAME alexandria FILENAME alexandria)
-     (NAME anaphora FILENAME anaphora) (NAME arrows FILENAME arrows)
-     (NAME cl-custom-hash-table FILENAME cl-custom-hash-table)
-     (NAME cl-environments FILENAME cl-environments)
-     (NAME cl-form-types FILENAME cl-form-types)
-     (NAME closer-mop FILENAME closer-mop)
-     (NAME collectors FILENAME collectors)
-     (NAME generic-cl.collector FILENAME generic-cl_dot_collector)
-     (NAME generic-cl.comparison FILENAME generic-cl_dot_comparison)
-     (NAME generic-cl.container FILENAME generic-cl_dot_container)
-     (NAME generic-cl.internal FILENAME generic-cl_dot_internal)
-     (NAME generic-cl.iterator FILENAME generic-cl_dot_iterator)
-     (NAME generic-cl.map FILENAME generic-cl_dot_map)
-     (NAME generic-cl.object FILENAME generic-cl_dot_object)
-     (NAME generic-cl.sequence FILENAME generic-cl_dot_sequence)
-     (NAME introspect-environment FILENAME introspect-environment)
-     (NAME iterate FILENAME iterate)
-     (NAME lisp-namespace FILENAME lisp-namespace)
-     (NAME optima FILENAME optima)
-     (NAME parse-declarations-1.0 FILENAME parse-declarations-1_dot_0)
-     (NAME static-dispatch FILENAME static-dispatch)
-     (NAME symbol-munger FILENAME symbol-munger) (NAME trivia FILENAME trivia)
-     (NAME trivia.balland2006 FILENAME trivia_dot_balland2006)
-     (NAME trivia.level0 FILENAME trivia_dot_level0)
-     (NAME trivia.level1 FILENAME trivia_dot_level1)
-     (NAME trivia.level2 FILENAME trivia_dot_level2)
-     (NAME trivia.trivial FILENAME trivia_dot_trivial)
-     (NAME trivial-cltl2 FILENAME trivial-cltl2) (NAME type-i FILENAME type-i))
-    DEPENDENCIES
-    (agutil alexandria anaphora arrows cl-custom-hash-table cl-environments
-     cl-form-types closer-mop collectors generic-cl.collector
-     generic-cl.comparison generic-cl.container generic-cl.internal
-     generic-cl.iterator generic-cl.map generic-cl.object generic-cl.sequence
-     introspect-environment iterate lisp-namespace optima
-     parse-declarations-1.0 static-dispatch symbol-munger trivia
-     trivia.balland2006 trivia.level0 trivia.level1 trivia.level2
-     trivia.trivial trivial-cltl2 type-i)
-    VERSION generic-cl-20211020-git SIBLINGS
-    (generic-cl.arithmetic generic-cl generic-cl.collector
-     generic-cl.comparison generic-cl.container generic-cl.internal
-     generic-cl.iterator generic-cl.map generic-cl.math generic-cl.object
-     generic-cl.sequence generic-cl.set generic-cl.util)
-    PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/generic-cl_dot_map.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/generic-cl_dot_map.nix
deleted file mode 100644
index d44389239c71..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/generic-cl_dot_map.nix
+++ /dev/null
@@ -1,65 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "generic-cl_dot_map";
-  version = "generic-cl-20211020-git";
-
-  description = "Generic map and hash-table interface";
-
-  deps = [ args."agutil" args."alexandria" args."anaphora" args."arrows" args."cl-custom-hash-table" args."cl-environments" args."cl-form-types" args."closer-mop" args."collectors" args."generic-cl_dot_collector" args."generic-cl_dot_comparison" args."generic-cl_dot_container" args."generic-cl_dot_internal" args."generic-cl_dot_iterator" args."generic-cl_dot_object" args."introspect-environment" args."iterate" args."lisp-namespace" args."optima" args."parse-declarations-1_dot_0" args."static-dispatch" args."symbol-munger" args."trivia" args."trivia_dot_balland2006" args."trivia_dot_level0" args."trivia_dot_level1" args."trivia_dot_level2" args."trivia_dot_trivial" args."trivial-cltl2" args."type-i" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/generic-cl/2021-10-20/generic-cl-20211020-git.tgz";
-    sha256 = "0jryfmxwqhrarmpbb643b7iv5rlib5pcx4i4jcd6h2rscnrbj8sa";
-  };
-
-  packageName = "generic-cl.map";
-
-  asdFilesToKeep = ["generic-cl.map.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM generic-cl.map DESCRIPTION Generic map and hash-table interface
-    SHA256 0jryfmxwqhrarmpbb643b7iv5rlib5pcx4i4jcd6h2rscnrbj8sa URL
-    http://beta.quicklisp.org/archive/generic-cl/2021-10-20/generic-cl-20211020-git.tgz
-    MD5 ce42f45dd7c5be44de45ee259a46d7b8 NAME generic-cl.map FILENAME
-    generic-cl_dot_map DEPS
-    ((NAME agutil FILENAME agutil) (NAME alexandria FILENAME alexandria)
-     (NAME anaphora FILENAME anaphora) (NAME arrows FILENAME arrows)
-     (NAME cl-custom-hash-table FILENAME cl-custom-hash-table)
-     (NAME cl-environments FILENAME cl-environments)
-     (NAME cl-form-types FILENAME cl-form-types)
-     (NAME closer-mop FILENAME closer-mop)
-     (NAME collectors FILENAME collectors)
-     (NAME generic-cl.collector FILENAME generic-cl_dot_collector)
-     (NAME generic-cl.comparison FILENAME generic-cl_dot_comparison)
-     (NAME generic-cl.container FILENAME generic-cl_dot_container)
-     (NAME generic-cl.internal FILENAME generic-cl_dot_internal)
-     (NAME generic-cl.iterator FILENAME generic-cl_dot_iterator)
-     (NAME generic-cl.object FILENAME generic-cl_dot_object)
-     (NAME introspect-environment FILENAME introspect-environment)
-     (NAME iterate FILENAME iterate)
-     (NAME lisp-namespace FILENAME lisp-namespace)
-     (NAME optima FILENAME optima)
-     (NAME parse-declarations-1.0 FILENAME parse-declarations-1_dot_0)
-     (NAME static-dispatch FILENAME static-dispatch)
-     (NAME symbol-munger FILENAME symbol-munger) (NAME trivia FILENAME trivia)
-     (NAME trivia.balland2006 FILENAME trivia_dot_balland2006)
-     (NAME trivia.level0 FILENAME trivia_dot_level0)
-     (NAME trivia.level1 FILENAME trivia_dot_level1)
-     (NAME trivia.level2 FILENAME trivia_dot_level2)
-     (NAME trivia.trivial FILENAME trivia_dot_trivial)
-     (NAME trivial-cltl2 FILENAME trivial-cltl2) (NAME type-i FILENAME type-i))
-    DEPENDENCIES
-    (agutil alexandria anaphora arrows cl-custom-hash-table cl-environments
-     cl-form-types closer-mop collectors generic-cl.collector
-     generic-cl.comparison generic-cl.container generic-cl.internal
-     generic-cl.iterator generic-cl.object introspect-environment iterate
-     lisp-namespace optima parse-declarations-1.0 static-dispatch symbol-munger
-     trivia trivia.balland2006 trivia.level0 trivia.level1 trivia.level2
-     trivia.trivial trivial-cltl2 type-i)
-    VERSION generic-cl-20211020-git SIBLINGS
-    (generic-cl.arithmetic generic-cl generic-cl.collector
-     generic-cl.comparison generic-cl.container generic-cl.internal
-     generic-cl.iterator generic-cl.lazy-seq generic-cl.math generic-cl.object
-     generic-cl.sequence generic-cl.set generic-cl.util)
-    PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/generic-cl_dot_math.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/generic-cl_dot_math.nix
deleted file mode 100644
index f834513f085a..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/generic-cl_dot_math.nix
+++ /dev/null
@@ -1,60 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "generic-cl_dot_math";
-  version = "generic-cl-20211020-git";
-
-  description = "Generic math function interface";
-
-  deps = [ args."agutil" args."alexandria" args."anaphora" args."arrows" args."cl-environments" args."cl-form-types" args."closer-mop" args."collectors" args."generic-cl_dot_arithmetic" args."generic-cl_dot_comparison" args."generic-cl_dot_internal" args."introspect-environment" args."iterate" args."lisp-namespace" args."optima" args."parse-declarations-1_dot_0" args."static-dispatch" args."symbol-munger" args."trivia" args."trivia_dot_balland2006" args."trivia_dot_level0" args."trivia_dot_level1" args."trivia_dot_level2" args."trivia_dot_trivial" args."trivial-cltl2" args."type-i" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/generic-cl/2021-10-20/generic-cl-20211020-git.tgz";
-    sha256 = "0jryfmxwqhrarmpbb643b7iv5rlib5pcx4i4jcd6h2rscnrbj8sa";
-  };
-
-  packageName = "generic-cl.math";
-
-  asdFilesToKeep = ["generic-cl.math.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM generic-cl.math DESCRIPTION Generic math function interface SHA256
-    0jryfmxwqhrarmpbb643b7iv5rlib5pcx4i4jcd6h2rscnrbj8sa URL
-    http://beta.quicklisp.org/archive/generic-cl/2021-10-20/generic-cl-20211020-git.tgz
-    MD5 ce42f45dd7c5be44de45ee259a46d7b8 NAME generic-cl.math FILENAME
-    generic-cl_dot_math DEPS
-    ((NAME agutil FILENAME agutil) (NAME alexandria FILENAME alexandria)
-     (NAME anaphora FILENAME anaphora) (NAME arrows FILENAME arrows)
-     (NAME cl-environments FILENAME cl-environments)
-     (NAME cl-form-types FILENAME cl-form-types)
-     (NAME closer-mop FILENAME closer-mop)
-     (NAME collectors FILENAME collectors)
-     (NAME generic-cl.arithmetic FILENAME generic-cl_dot_arithmetic)
-     (NAME generic-cl.comparison FILENAME generic-cl_dot_comparison)
-     (NAME generic-cl.internal FILENAME generic-cl_dot_internal)
-     (NAME introspect-environment FILENAME introspect-environment)
-     (NAME iterate FILENAME iterate)
-     (NAME lisp-namespace FILENAME lisp-namespace)
-     (NAME optima FILENAME optima)
-     (NAME parse-declarations-1.0 FILENAME parse-declarations-1_dot_0)
-     (NAME static-dispatch FILENAME static-dispatch)
-     (NAME symbol-munger FILENAME symbol-munger) (NAME trivia FILENAME trivia)
-     (NAME trivia.balland2006 FILENAME trivia_dot_balland2006)
-     (NAME trivia.level0 FILENAME trivia_dot_level0)
-     (NAME trivia.level1 FILENAME trivia_dot_level1)
-     (NAME trivia.level2 FILENAME trivia_dot_level2)
-     (NAME trivia.trivial FILENAME trivia_dot_trivial)
-     (NAME trivial-cltl2 FILENAME trivial-cltl2) (NAME type-i FILENAME type-i))
-    DEPENDENCIES
-    (agutil alexandria anaphora arrows cl-environments cl-form-types closer-mop
-     collectors generic-cl.arithmetic generic-cl.comparison generic-cl.internal
-     introspect-environment iterate lisp-namespace optima
-     parse-declarations-1.0 static-dispatch symbol-munger trivia
-     trivia.balland2006 trivia.level0 trivia.level1 trivia.level2
-     trivia.trivial trivial-cltl2 type-i)
-    VERSION generic-cl-20211020-git SIBLINGS
-    (generic-cl.arithmetic generic-cl generic-cl.collector
-     generic-cl.comparison generic-cl.container generic-cl.internal
-     generic-cl.iterator generic-cl.lazy-seq generic-cl.map generic-cl.object
-     generic-cl.sequence generic-cl.set generic-cl.util)
-    PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/generic-cl_dot_object.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/generic-cl_dot_object.nix
deleted file mode 100644
index 98991384829e..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/generic-cl_dot_object.nix
+++ /dev/null
@@ -1,60 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "generic-cl_dot_object";
-  version = "generic-cl-20211020-git";
-
-  description = "Generic object copying and type conversion interface";
-
-  deps = [ args."agutil" args."alexandria" args."anaphora" args."arrows" args."cl-environments" args."cl-form-types" args."closer-mop" args."collectors" args."generic-cl_dot_comparison" args."generic-cl_dot_internal" args."introspect-environment" args."iterate" args."lisp-namespace" args."optima" args."parse-declarations-1_dot_0" args."static-dispatch" args."symbol-munger" args."trivia" args."trivia_dot_balland2006" args."trivia_dot_level0" args."trivia_dot_level1" args."trivia_dot_level2" args."trivia_dot_trivial" args."trivial-cltl2" args."type-i" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/generic-cl/2021-10-20/generic-cl-20211020-git.tgz";
-    sha256 = "0jryfmxwqhrarmpbb643b7iv5rlib5pcx4i4jcd6h2rscnrbj8sa";
-  };
-
-  packageName = "generic-cl.object";
-
-  asdFilesToKeep = ["generic-cl.object.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM generic-cl.object DESCRIPTION
-    Generic object copying and type conversion interface SHA256
-    0jryfmxwqhrarmpbb643b7iv5rlib5pcx4i4jcd6h2rscnrbj8sa URL
-    http://beta.quicklisp.org/archive/generic-cl/2021-10-20/generic-cl-20211020-git.tgz
-    MD5 ce42f45dd7c5be44de45ee259a46d7b8 NAME generic-cl.object FILENAME
-    generic-cl_dot_object DEPS
-    ((NAME agutil FILENAME agutil) (NAME alexandria FILENAME alexandria)
-     (NAME anaphora FILENAME anaphora) (NAME arrows FILENAME arrows)
-     (NAME cl-environments FILENAME cl-environments)
-     (NAME cl-form-types FILENAME cl-form-types)
-     (NAME closer-mop FILENAME closer-mop)
-     (NAME collectors FILENAME collectors)
-     (NAME generic-cl.comparison FILENAME generic-cl_dot_comparison)
-     (NAME generic-cl.internal FILENAME generic-cl_dot_internal)
-     (NAME introspect-environment FILENAME introspect-environment)
-     (NAME iterate FILENAME iterate)
-     (NAME lisp-namespace FILENAME lisp-namespace)
-     (NAME optima FILENAME optima)
-     (NAME parse-declarations-1.0 FILENAME parse-declarations-1_dot_0)
-     (NAME static-dispatch FILENAME static-dispatch)
-     (NAME symbol-munger FILENAME symbol-munger) (NAME trivia FILENAME trivia)
-     (NAME trivia.balland2006 FILENAME trivia_dot_balland2006)
-     (NAME trivia.level0 FILENAME trivia_dot_level0)
-     (NAME trivia.level1 FILENAME trivia_dot_level1)
-     (NAME trivia.level2 FILENAME trivia_dot_level2)
-     (NAME trivia.trivial FILENAME trivia_dot_trivial)
-     (NAME trivial-cltl2 FILENAME trivial-cltl2) (NAME type-i FILENAME type-i))
-    DEPENDENCIES
-    (agutil alexandria anaphora arrows cl-environments cl-form-types closer-mop
-     collectors generic-cl.comparison generic-cl.internal
-     introspect-environment iterate lisp-namespace optima
-     parse-declarations-1.0 static-dispatch symbol-munger trivia
-     trivia.balland2006 trivia.level0 trivia.level1 trivia.level2
-     trivia.trivial trivial-cltl2 type-i)
-    VERSION generic-cl-20211020-git SIBLINGS
-    (generic-cl.arithmetic generic-cl generic-cl.collector
-     generic-cl.comparison generic-cl.container generic-cl.internal
-     generic-cl.iterator generic-cl.lazy-seq generic-cl.map generic-cl.math
-     generic-cl.sequence generic-cl.set generic-cl.util)
-    PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/generic-cl_dot_sequence.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/generic-cl_dot_sequence.nix
deleted file mode 100644
index 3aae58b2ff4c..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/generic-cl_dot_sequence.nix
+++ /dev/null
@@ -1,67 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "generic-cl_dot_sequence";
-  version = "generic-cl-20211020-git";
-
-  description = "Generic sequence operations";
-
-  deps = [ args."agutil" args."alexandria" args."anaphora" args."arrows" args."cl-custom-hash-table" args."cl-environments" args."cl-form-types" args."closer-mop" args."collectors" args."generic-cl_dot_collector" args."generic-cl_dot_comparison" args."generic-cl_dot_container" args."generic-cl_dot_internal" args."generic-cl_dot_iterator" args."generic-cl_dot_map" args."generic-cl_dot_object" args."introspect-environment" args."iterate" args."lisp-namespace" args."optima" args."parse-declarations-1_dot_0" args."static-dispatch" args."symbol-munger" args."trivia" args."trivia_dot_balland2006" args."trivia_dot_level0" args."trivia_dot_level1" args."trivia_dot_level2" args."trivia_dot_trivial" args."trivial-cltl2" args."type-i" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/generic-cl/2021-10-20/generic-cl-20211020-git.tgz";
-    sha256 = "0jryfmxwqhrarmpbb643b7iv5rlib5pcx4i4jcd6h2rscnrbj8sa";
-  };
-
-  packageName = "generic-cl.sequence";
-
-  asdFilesToKeep = ["generic-cl.sequence.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM generic-cl.sequence DESCRIPTION Generic sequence operations SHA256
-    0jryfmxwqhrarmpbb643b7iv5rlib5pcx4i4jcd6h2rscnrbj8sa URL
-    http://beta.quicklisp.org/archive/generic-cl/2021-10-20/generic-cl-20211020-git.tgz
-    MD5 ce42f45dd7c5be44de45ee259a46d7b8 NAME generic-cl.sequence FILENAME
-    generic-cl_dot_sequence DEPS
-    ((NAME agutil FILENAME agutil) (NAME alexandria FILENAME alexandria)
-     (NAME anaphora FILENAME anaphora) (NAME arrows FILENAME arrows)
-     (NAME cl-custom-hash-table FILENAME cl-custom-hash-table)
-     (NAME cl-environments FILENAME cl-environments)
-     (NAME cl-form-types FILENAME cl-form-types)
-     (NAME closer-mop FILENAME closer-mop)
-     (NAME collectors FILENAME collectors)
-     (NAME generic-cl.collector FILENAME generic-cl_dot_collector)
-     (NAME generic-cl.comparison FILENAME generic-cl_dot_comparison)
-     (NAME generic-cl.container FILENAME generic-cl_dot_container)
-     (NAME generic-cl.internal FILENAME generic-cl_dot_internal)
-     (NAME generic-cl.iterator FILENAME generic-cl_dot_iterator)
-     (NAME generic-cl.map FILENAME generic-cl_dot_map)
-     (NAME generic-cl.object FILENAME generic-cl_dot_object)
-     (NAME introspect-environment FILENAME introspect-environment)
-     (NAME iterate FILENAME iterate)
-     (NAME lisp-namespace FILENAME lisp-namespace)
-     (NAME optima FILENAME optima)
-     (NAME parse-declarations-1.0 FILENAME parse-declarations-1_dot_0)
-     (NAME static-dispatch FILENAME static-dispatch)
-     (NAME symbol-munger FILENAME symbol-munger) (NAME trivia FILENAME trivia)
-     (NAME trivia.balland2006 FILENAME trivia_dot_balland2006)
-     (NAME trivia.level0 FILENAME trivia_dot_level0)
-     (NAME trivia.level1 FILENAME trivia_dot_level1)
-     (NAME trivia.level2 FILENAME trivia_dot_level2)
-     (NAME trivia.trivial FILENAME trivia_dot_trivial)
-     (NAME trivial-cltl2 FILENAME trivial-cltl2) (NAME type-i FILENAME type-i))
-    DEPENDENCIES
-    (agutil alexandria anaphora arrows cl-custom-hash-table cl-environments
-     cl-form-types closer-mop collectors generic-cl.collector
-     generic-cl.comparison generic-cl.container generic-cl.internal
-     generic-cl.iterator generic-cl.map generic-cl.object
-     introspect-environment iterate lisp-namespace optima
-     parse-declarations-1.0 static-dispatch symbol-munger trivia
-     trivia.balland2006 trivia.level0 trivia.level1 trivia.level2
-     trivia.trivial trivial-cltl2 type-i)
-    VERSION generic-cl-20211020-git SIBLINGS
-    (generic-cl.arithmetic generic-cl generic-cl.collector
-     generic-cl.comparison generic-cl.container generic-cl.internal
-     generic-cl.iterator generic-cl.lazy-seq generic-cl.map generic-cl.math
-     generic-cl.object generic-cl.set generic-cl.util)
-    PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/generic-cl_dot_set.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/generic-cl_dot_set.nix
deleted file mode 100644
index 27b3fdf2f63e..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/generic-cl_dot_set.nix
+++ /dev/null
@@ -1,69 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "generic-cl_dot_set";
-  version = "generic-cl-20211020-git";
-
-  description = "Generic set interface";
-
-  deps = [ args."agutil" args."alexandria" args."anaphora" args."arrows" args."cl-custom-hash-table" args."cl-environments" args."cl-form-types" args."closer-mop" args."collectors" args."generic-cl_dot_arithmetic" args."generic-cl_dot_collector" args."generic-cl_dot_comparison" args."generic-cl_dot_container" args."generic-cl_dot_internal" args."generic-cl_dot_iterator" args."generic-cl_dot_map" args."generic-cl_dot_object" args."generic-cl_dot_sequence" args."introspect-environment" args."iterate" args."lisp-namespace" args."optima" args."parse-declarations-1_dot_0" args."static-dispatch" args."symbol-munger" args."trivia" args."trivia_dot_balland2006" args."trivia_dot_level0" args."trivia_dot_level1" args."trivia_dot_level2" args."trivia_dot_trivial" args."trivial-cltl2" args."type-i" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/generic-cl/2021-10-20/generic-cl-20211020-git.tgz";
-    sha256 = "0jryfmxwqhrarmpbb643b7iv5rlib5pcx4i4jcd6h2rscnrbj8sa";
-  };
-
-  packageName = "generic-cl.set";
-
-  asdFilesToKeep = ["generic-cl.set.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM generic-cl.set DESCRIPTION Generic set interface SHA256
-    0jryfmxwqhrarmpbb643b7iv5rlib5pcx4i4jcd6h2rscnrbj8sa URL
-    http://beta.quicklisp.org/archive/generic-cl/2021-10-20/generic-cl-20211020-git.tgz
-    MD5 ce42f45dd7c5be44de45ee259a46d7b8 NAME generic-cl.set FILENAME
-    generic-cl_dot_set DEPS
-    ((NAME agutil FILENAME agutil) (NAME alexandria FILENAME alexandria)
-     (NAME anaphora FILENAME anaphora) (NAME arrows FILENAME arrows)
-     (NAME cl-custom-hash-table FILENAME cl-custom-hash-table)
-     (NAME cl-environments FILENAME cl-environments)
-     (NAME cl-form-types FILENAME cl-form-types)
-     (NAME closer-mop FILENAME closer-mop)
-     (NAME collectors FILENAME collectors)
-     (NAME generic-cl.arithmetic FILENAME generic-cl_dot_arithmetic)
-     (NAME generic-cl.collector FILENAME generic-cl_dot_collector)
-     (NAME generic-cl.comparison FILENAME generic-cl_dot_comparison)
-     (NAME generic-cl.container FILENAME generic-cl_dot_container)
-     (NAME generic-cl.internal FILENAME generic-cl_dot_internal)
-     (NAME generic-cl.iterator FILENAME generic-cl_dot_iterator)
-     (NAME generic-cl.map FILENAME generic-cl_dot_map)
-     (NAME generic-cl.object FILENAME generic-cl_dot_object)
-     (NAME generic-cl.sequence FILENAME generic-cl_dot_sequence)
-     (NAME introspect-environment FILENAME introspect-environment)
-     (NAME iterate FILENAME iterate)
-     (NAME lisp-namespace FILENAME lisp-namespace)
-     (NAME optima FILENAME optima)
-     (NAME parse-declarations-1.0 FILENAME parse-declarations-1_dot_0)
-     (NAME static-dispatch FILENAME static-dispatch)
-     (NAME symbol-munger FILENAME symbol-munger) (NAME trivia FILENAME trivia)
-     (NAME trivia.balland2006 FILENAME trivia_dot_balland2006)
-     (NAME trivia.level0 FILENAME trivia_dot_level0)
-     (NAME trivia.level1 FILENAME trivia_dot_level1)
-     (NAME trivia.level2 FILENAME trivia_dot_level2)
-     (NAME trivia.trivial FILENAME trivia_dot_trivial)
-     (NAME trivial-cltl2 FILENAME trivial-cltl2) (NAME type-i FILENAME type-i))
-    DEPENDENCIES
-    (agutil alexandria anaphora arrows cl-custom-hash-table cl-environments
-     cl-form-types closer-mop collectors generic-cl.arithmetic
-     generic-cl.collector generic-cl.comparison generic-cl.container
-     generic-cl.internal generic-cl.iterator generic-cl.map generic-cl.object
-     generic-cl.sequence introspect-environment iterate lisp-namespace optima
-     parse-declarations-1.0 static-dispatch symbol-munger trivia
-     trivia.balland2006 trivia.level0 trivia.level1 trivia.level2
-     trivia.trivial trivial-cltl2 type-i)
-    VERSION generic-cl-20211020-git SIBLINGS
-    (generic-cl.arithmetic generic-cl generic-cl.collector
-     generic-cl.comparison generic-cl.container generic-cl.internal
-     generic-cl.iterator generic-cl.lazy-seq generic-cl.map generic-cl.math
-     generic-cl.object generic-cl.sequence generic-cl.util)
-    PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/gettext.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/gettext.nix
deleted file mode 100644
index 333bdf77b568..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/gettext.nix
+++ /dev/null
@@ -1,31 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "gettext";
-  version = "20171130-git";
-
-  description = "An pure Common Lisp implementation of gettext runtime. gettext is an internationalization and localization (i18n) system commonly used for writing multilingual programs on Unix-like computer operating systems.";
-
-  deps = [ args."flexi-streams" args."split-sequence" args."trivial-gray-streams" args."yacc" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/gettext/2017-11-30/gettext-20171130-git.tgz";
-    sha256 = "0nb8i66sb5qmpnk6rk2adlr87m322bra0xpirp63872mybd3y6yd";
-  };
-
-  packageName = "gettext";
-
-  asdFilesToKeep = ["gettext.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM gettext DESCRIPTION
-    An pure Common Lisp implementation of gettext runtime. gettext is an internationalization and localization (i18n) system commonly used for writing multilingual programs on Unix-like computer operating systems.
-    SHA256 0nb8i66sb5qmpnk6rk2adlr87m322bra0xpirp63872mybd3y6yd URL
-    http://beta.quicklisp.org/archive/gettext/2017-11-30/gettext-20171130-git.tgz
-    MD5 d162cb5310db5011c82ef6343fd280ed NAME gettext FILENAME gettext DEPS
-    ((NAME flexi-streams FILENAME flexi-streams)
-     (NAME split-sequence FILENAME split-sequence)
-     (NAME trivial-gray-streams FILENAME trivial-gray-streams)
-     (NAME yacc FILENAME yacc))
-    DEPENDENCIES (flexi-streams split-sequence trivial-gray-streams yacc)
-    VERSION 20171130-git SIBLINGS (gettext-example gettext-tests) PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/global-vars.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/global-vars.nix
deleted file mode 100644
index 2c7bed4fa7b3..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/global-vars.nix
+++ /dev/null
@@ -1,26 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "global-vars";
-  version = "20141106-git";
-
-  description = "Define efficient global variables.";
-
-  deps = [ ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/global-vars/2014-11-06/global-vars-20141106-git.tgz";
-    sha256 = "0bjgmsifs9vrq409rfrsgrhlxwklvls1dpvh2d706i0incxq957j";
-  };
-
-  packageName = "global-vars";
-
-  asdFilesToKeep = ["global-vars.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM global-vars DESCRIPTION Define efficient global variables. SHA256
-    0bjgmsifs9vrq409rfrsgrhlxwklvls1dpvh2d706i0incxq957j URL
-    http://beta.quicklisp.org/archive/global-vars/2014-11-06/global-vars-20141106-git.tgz
-    MD5 dd3153ee75c972a80450aa00644b2200 NAME global-vars FILENAME global-vars
-    DEPS NIL DEPENDENCIES NIL VERSION 20141106-git SIBLINGS (global-vars-test)
-    PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/glsl-docs.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/glsl-docs.nix
deleted file mode 100644
index 4679a62c0679..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/glsl-docs.nix
+++ /dev/null
@@ -1,28 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "glsl-docs";
-  version = "glsl-spec-release-quicklisp-f04476f7-git";
-
-  description = "The official docs for all the symbols in glsl-symbols";
-
-  deps = [ args."glsl-symbols" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/glsl-spec/2019-10-07/glsl-spec-release-quicklisp-f04476f7-git.tgz";
-    sha256 = "0vdxx5asra0r58qpk35ncmyh418szzzvby8bpkrb052g00nzqgj7";
-  };
-
-  packageName = "glsl-docs";
-
-  asdFilesToKeep = ["glsl-docs.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM glsl-docs DESCRIPTION
-    The official docs for all the symbols in glsl-symbols SHA256
-    0vdxx5asra0r58qpk35ncmyh418szzzvby8bpkrb052g00nzqgj7 URL
-    http://beta.quicklisp.org/archive/glsl-spec/2019-10-07/glsl-spec-release-quicklisp-f04476f7-git.tgz
-    MD5 52760939a269acce6b2cba8dbde81ef7 NAME glsl-docs FILENAME glsl-docs DEPS
-    ((NAME glsl-symbols FILENAME glsl-symbols)) DEPENDENCIES (glsl-symbols)
-    VERSION glsl-spec-release-quicklisp-f04476f7-git SIBLINGS
-    (glsl-spec glsl-symbols) PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/glsl-spec.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/glsl-spec.nix
deleted file mode 100644
index 08150c645f6f..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/glsl-spec.nix
+++ /dev/null
@@ -1,26 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "glsl-spec";
-  version = "release-quicklisp-f04476f7-git";
-
-  description = "The GLSL Spec as a datastructure";
-
-  deps = [ ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/glsl-spec/2019-10-07/glsl-spec-release-quicklisp-f04476f7-git.tgz";
-    sha256 = "0vdxx5asra0r58qpk35ncmyh418szzzvby8bpkrb052g00nzqgj7";
-  };
-
-  packageName = "glsl-spec";
-
-  asdFilesToKeep = ["glsl-spec.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM glsl-spec DESCRIPTION The GLSL Spec as a datastructure SHA256
-    0vdxx5asra0r58qpk35ncmyh418szzzvby8bpkrb052g00nzqgj7 URL
-    http://beta.quicklisp.org/archive/glsl-spec/2019-10-07/glsl-spec-release-quicklisp-f04476f7-git.tgz
-    MD5 52760939a269acce6b2cba8dbde81ef7 NAME glsl-spec FILENAME glsl-spec DEPS
-    NIL DEPENDENCIES NIL VERSION release-quicklisp-f04476f7-git SIBLINGS
-    (glsl-docs glsl-symbols) PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/glsl-symbols.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/glsl-symbols.nix
deleted file mode 100644
index fd22bfb6adf8..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/glsl-symbols.nix
+++ /dev/null
@@ -1,27 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "glsl-symbols";
-  version = "glsl-spec-release-quicklisp-f04476f7-git";
-
-  description = "Lispy versions of all glsl names as symbols";
-
-  deps = [ ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/glsl-spec/2019-10-07/glsl-spec-release-quicklisp-f04476f7-git.tgz";
-    sha256 = "0vdxx5asra0r58qpk35ncmyh418szzzvby8bpkrb052g00nzqgj7";
-  };
-
-  packageName = "glsl-symbols";
-
-  asdFilesToKeep = ["glsl-symbols.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM glsl-symbols DESCRIPTION Lispy versions of all glsl names as symbols
-    SHA256 0vdxx5asra0r58qpk35ncmyh418szzzvby8bpkrb052g00nzqgj7 URL
-    http://beta.quicklisp.org/archive/glsl-spec/2019-10-07/glsl-spec-release-quicklisp-f04476f7-git.tgz
-    MD5 52760939a269acce6b2cba8dbde81ef7 NAME glsl-symbols FILENAME
-    glsl-symbols DEPS NIL DEPENDENCIES NIL VERSION
-    glsl-spec-release-quicklisp-f04476f7-git SIBLINGS (glsl-docs glsl-spec)
-    PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/heap.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/heap.nix
deleted file mode 100644
index be000574f94a..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/heap.nix
+++ /dev/null
@@ -1,25 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "heap";
-  version = "20181018-git";
-
-  description = "Binary Heap for Common Lisp.";
-
-  deps = [ ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/heap/2018-10-18/heap-20181018-git.tgz";
-    sha256 = "1376i9vq5kcskzhqfxvsfvxz7kwkp6d3bd7rxn94dgnha988fd77";
-  };
-
-  packageName = "heap";
-
-  asdFilesToKeep = ["heap.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM heap DESCRIPTION Binary Heap for Common Lisp. SHA256
-    1376i9vq5kcskzhqfxvsfvxz7kwkp6d3bd7rxn94dgnha988fd77 URL
-    http://beta.quicklisp.org/archive/heap/2018-10-18/heap-20181018-git.tgz MD5
-    a2355ef9c113a3335919a45195083951 NAME heap FILENAME heap DEPS NIL
-    DEPENDENCIES NIL VERSION 20181018-git SIBLINGS NIL PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/html-encode.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/html-encode.nix
deleted file mode 100644
index 2e7553da1e5e..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/html-encode.nix
+++ /dev/null
@@ -1,26 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "html-encode";
-  version = "1.2";
-
-  description = "A library for encoding text in various web-savvy encodings.";
-
-  deps = [ ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/html-encode/2010-10-06/html-encode-1.2.tgz";
-    sha256 = "06mf8wn95yf5swhmzk4vp0xr4ylfl33dgfknkabbkd8n6jns8gcf";
-  };
-
-  packageName = "html-encode";
-
-  asdFilesToKeep = ["html-encode.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM html-encode DESCRIPTION
-    A library for encoding text in various web-savvy encodings. SHA256
-    06mf8wn95yf5swhmzk4vp0xr4ylfl33dgfknkabbkd8n6jns8gcf URL
-    http://beta.quicklisp.org/archive/html-encode/2010-10-06/html-encode-1.2.tgz
-    MD5 67f22483fe6d270b8830f78f285a1016 NAME html-encode FILENAME html-encode
-    DEPS NIL DEPENDENCIES NIL VERSION 1.2 SIBLINGS NIL PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/http-body.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/http-body.nix
deleted file mode 100644
index c40df485a190..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/http-body.nix
+++ /dev/null
@@ -1,50 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "http-body";
-  version = "20190813-git";
-
-  description = "HTTP POST data parser for Common Lisp";
-
-  deps = [ args."alexandria" args."babel" args."cffi" args."cffi-grovel" args."cffi-toolchain" args."cl-annot" args."cl-ppcre" args."cl-syntax" args."cl-syntax-annot" args."cl-utilities" args."fast-http" args."fast-io" args."flexi-streams" args."jonathan" args."named-readtables" args."proc-parse" args."quri" args."smart-buffer" args."split-sequence" args."static-vectors" args."trivial-features" args."trivial-gray-streams" args."trivial-types" args."xsubseq" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/http-body/2019-08-13/http-body-20190813-git.tgz";
-    sha256 = "1mc4xinqnvjr7cdyaywdb5lv9k34pal7lhp6f9a660r1rbxybvy8";
-  };
-
-  packageName = "http-body";
-
-  asdFilesToKeep = ["http-body.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM http-body DESCRIPTION HTTP POST data parser for Common Lisp SHA256
-    1mc4xinqnvjr7cdyaywdb5lv9k34pal7lhp6f9a660r1rbxybvy8 URL
-    http://beta.quicklisp.org/archive/http-body/2019-08-13/http-body-20190813-git.tgz
-    MD5 d46ac52643ae7dc148438f84a8107a79 NAME http-body FILENAME http-body DEPS
-    ((NAME alexandria FILENAME alexandria) (NAME babel FILENAME babel)
-     (NAME cffi FILENAME cffi) (NAME cffi-grovel FILENAME cffi-grovel)
-     (NAME cffi-toolchain FILENAME cffi-toolchain)
-     (NAME cl-annot FILENAME cl-annot) (NAME cl-ppcre FILENAME cl-ppcre)
-     (NAME cl-syntax FILENAME cl-syntax)
-     (NAME cl-syntax-annot FILENAME cl-syntax-annot)
-     (NAME cl-utilities FILENAME cl-utilities)
-     (NAME fast-http FILENAME fast-http) (NAME fast-io FILENAME fast-io)
-     (NAME flexi-streams FILENAME flexi-streams)
-     (NAME jonathan FILENAME jonathan)
-     (NAME named-readtables FILENAME named-readtables)
-     (NAME proc-parse FILENAME proc-parse) (NAME quri FILENAME quri)
-     (NAME smart-buffer FILENAME smart-buffer)
-     (NAME split-sequence FILENAME split-sequence)
-     (NAME static-vectors FILENAME static-vectors)
-     (NAME trivial-features FILENAME trivial-features)
-     (NAME trivial-gray-streams FILENAME trivial-gray-streams)
-     (NAME trivial-types FILENAME trivial-types)
-     (NAME xsubseq FILENAME xsubseq))
-    DEPENDENCIES
-    (alexandria babel cffi cffi-grovel cffi-toolchain cl-annot cl-ppcre
-     cl-syntax cl-syntax-annot cl-utilities fast-http fast-io flexi-streams
-     jonathan named-readtables proc-parse quri smart-buffer split-sequence
-     static-vectors trivial-features trivial-gray-streams trivial-types
-     xsubseq)
-    VERSION 20190813-git SIBLINGS (http-body-test) PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/hu_dot_dwim_dot_asdf.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/hu_dot_dwim_dot_asdf.nix
deleted file mode 100644
index ad53cdd1e53d..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/hu_dot_dwim_dot_asdf.nix
+++ /dev/null
@@ -1,29 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "hu_dot_dwim_dot_asdf";
-  version = "20200925-darcs";
-
-  description = "Various ASDF extensions such as attached test and documentation system, explicit development support, etc.";
-
-  deps = [ args."asdf" args."uiop" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/hu.dwim.asdf/2020-09-25/hu.dwim.asdf-20200925-darcs.tgz";
-    sha256 = "1812gk65x8yy8s817zhzga52zvdlagws4sw6a8f6zk7yaaa6br8h";
-  };
-
-  packageName = "hu.dwim.asdf";
-
-  asdFilesToKeep = ["hu.dwim.asdf.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM hu.dwim.asdf DESCRIPTION
-    Various ASDF extensions such as attached test and documentation system, explicit development support, etc.
-    SHA256 1812gk65x8yy8s817zhzga52zvdlagws4sw6a8f6zk7yaaa6br8h URL
-    http://beta.quicklisp.org/archive/hu.dwim.asdf/2020-09-25/hu.dwim.asdf-20200925-darcs.tgz
-    MD5 feec747077117dd9850db77ed1919c21 NAME hu.dwim.asdf FILENAME
-    hu_dot_dwim_dot_asdf DEPS
-    ((NAME asdf FILENAME asdf) (NAME uiop FILENAME uiop)) DEPENDENCIES
-    (asdf uiop) VERSION 20200925-darcs SIBLINGS (hu.dwim.asdf.documentation)
-    PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/hu_dot_dwim_dot_common-lisp.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/hu_dot_dwim_dot_common-lisp.nix
deleted file mode 100644
index 4faa57b5f4c4..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/hu_dot_dwim_dot_common-lisp.nix
+++ /dev/null
@@ -1,29 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "hu_dot_dwim_dot_common-lisp";
-  version = "stable-git";
-
-  description = "A redefinition of the standard Common Lisp package that includes a number of renames and shadows.";
-
-  deps = [ args."hu_dot_dwim_dot_asdf" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/hu.dwim.common-lisp/2021-02-28/hu.dwim.common-lisp-stable-git.tgz";
-    sha256 = "1v111qvpfs0jml54a4qccyicgq4jg3h72z8484wa1x0acc9hgz76";
-  };
-
-  packageName = "hu.dwim.common-lisp";
-
-  asdFilesToKeep = ["hu.dwim.common-lisp.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM hu.dwim.common-lisp DESCRIPTION
-    A redefinition of the standard Common Lisp package that includes a number of renames and shadows.
-    SHA256 1v111qvpfs0jml54a4qccyicgq4jg3h72z8484wa1x0acc9hgz76 URL
-    http://beta.quicklisp.org/archive/hu.dwim.common-lisp/2021-02-28/hu.dwim.common-lisp-stable-git.tgz
-    MD5 4f0c7a375cc55381efdbeb17ef17dd7d NAME hu.dwim.common-lisp FILENAME
-    hu_dot_dwim_dot_common-lisp DEPS
-    ((NAME hu.dwim.asdf FILENAME hu_dot_dwim_dot_asdf)) DEPENDENCIES
-    (hu.dwim.asdf) VERSION stable-git SIBLINGS
-    (hu.dwim.common-lisp.documentation) PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/hu_dot_dwim_dot_common.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/hu_dot_dwim_dot_common.nix
deleted file mode 100644
index b123762ce0ac..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/hu_dot_dwim_dot_common.nix
+++ /dev/null
@@ -1,37 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "hu_dot_dwim_dot_common";
-  version = "20150709-darcs";
-
-  description = "An extended Common Lisp package to the general needs of other hu.dwim systems.";
-
-  deps = [ args."alexandria" args."anaphora" args."closer-mop" args."hu_dot_dwim_dot_asdf" args."hu_dot_dwim_dot_common-lisp" args."iterate" args."metabang-bind" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/hu.dwim.common/2015-07-09/hu.dwim.common-20150709-darcs.tgz";
-    sha256 = "12l1rr6w9m99w0b5gc6hv58ainjfhbc588kz6vwshn4gqsxyzbhp";
-  };
-
-  packageName = "hu.dwim.common";
-
-  asdFilesToKeep = ["hu.dwim.common.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM hu.dwim.common DESCRIPTION
-    An extended Common Lisp package to the general needs of other hu.dwim systems.
-    SHA256 12l1rr6w9m99w0b5gc6hv58ainjfhbc588kz6vwshn4gqsxyzbhp URL
-    http://beta.quicklisp.org/archive/hu.dwim.common/2015-07-09/hu.dwim.common-20150709-darcs.tgz
-    MD5 fff7f05c24e71a0270021909ca86a9ef NAME hu.dwim.common FILENAME
-    hu_dot_dwim_dot_common DEPS
-    ((NAME alexandria FILENAME alexandria) (NAME anaphora FILENAME anaphora)
-     (NAME closer-mop FILENAME closer-mop)
-     (NAME hu.dwim.asdf FILENAME hu_dot_dwim_dot_asdf)
-     (NAME hu.dwim.common-lisp FILENAME hu_dot_dwim_dot_common-lisp)
-     (NAME iterate FILENAME iterate)
-     (NAME metabang-bind FILENAME metabang-bind))
-    DEPENDENCIES
-    (alexandria anaphora closer-mop hu.dwim.asdf hu.dwim.common-lisp iterate
-     metabang-bind)
-    VERSION 20150709-darcs SIBLINGS (hu.dwim.common.documentation) PARASITES
-    NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/hu_dot_dwim_dot_def.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/hu_dot_dwim_dot_def.nix
deleted file mode 100644
index 6208aa1cc43d..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/hu_dot_dwim_dot_def.nix
+++ /dev/null
@@ -1,36 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "hu_dot_dwim_dot_def";
-  version = "20201016-darcs";
-
-  description = "General purpose, homogenous, extensible definer macro.";
-
-  deps = [ args."alexandria" args."anaphora" args."hu_dot_dwim_dot_asdf" args."iterate" args."metabang-bind" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/hu.dwim.def/2020-10-16/hu.dwim.def-20201016-darcs.tgz";
-    sha256 = "0m9id405f0s1438yr2qppdw5z7xdx3ajaa1frd04pibqgf4db4cj";
-  };
-
-  packageName = "hu.dwim.def";
-
-  asdFilesToKeep = ["hu.dwim.def.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM hu.dwim.def DESCRIPTION
-    General purpose, homogenous, extensible definer macro. SHA256
-    0m9id405f0s1438yr2qppdw5z7xdx3ajaa1frd04pibqgf4db4cj URL
-    http://beta.quicklisp.org/archive/hu.dwim.def/2020-10-16/hu.dwim.def-20201016-darcs.tgz
-    MD5 c4d7469472f57cd700d8319e35dd5f32 NAME hu.dwim.def FILENAME
-    hu_dot_dwim_dot_def DEPS
-    ((NAME alexandria FILENAME alexandria) (NAME anaphora FILENAME anaphora)
-     (NAME hu.dwim.asdf FILENAME hu_dot_dwim_dot_asdf)
-     (NAME iterate FILENAME iterate)
-     (NAME metabang-bind FILENAME metabang-bind))
-    DEPENDENCIES (alexandria anaphora hu.dwim.asdf iterate metabang-bind)
-    VERSION 20201016-darcs SIBLINGS
-    (hu.dwim.def+cl-l10n hu.dwim.def+contextl hu.dwim.def+hu.dwim.common
-     hu.dwim.def+hu.dwim.delico hu.dwim.def+swank hu.dwim.def.documentation
-     hu.dwim.def.namespace hu.dwim.def.test)
-    PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/hu_dot_dwim_dot_def_plus_swank.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/hu_dot_dwim_dot_def_plus_swank.nix
deleted file mode 100644
index 852b0c79e13d..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/hu_dot_dwim_dot_def_plus_swank.nix
+++ /dev/null
@@ -1,37 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "hu_dot_dwim_dot_def_plus_swank";
-  version = "hu.dwim.def-20201016-darcs";
-
-  description = "System lacks description";
-
-  deps = [ args."alexandria" args."anaphora" args."hu_dot_dwim_dot_asdf" args."hu_dot_dwim_dot_def" args."iterate" args."metabang-bind" args."swank" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/hu.dwim.def/2020-10-16/hu.dwim.def-20201016-darcs.tgz";
-    sha256 = "0m9id405f0s1438yr2qppdw5z7xdx3ajaa1frd04pibqgf4db4cj";
-  };
-
-  packageName = "hu.dwim.def+swank";
-
-  asdFilesToKeep = ["hu.dwim.def+swank.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM hu.dwim.def+swank DESCRIPTION System lacks description SHA256
-    0m9id405f0s1438yr2qppdw5z7xdx3ajaa1frd04pibqgf4db4cj URL
-    http://beta.quicklisp.org/archive/hu.dwim.def/2020-10-16/hu.dwim.def-20201016-darcs.tgz
-    MD5 c4d7469472f57cd700d8319e35dd5f32 NAME hu.dwim.def+swank FILENAME
-    hu_dot_dwim_dot_def_plus_swank DEPS
-    ((NAME alexandria FILENAME alexandria) (NAME anaphora FILENAME anaphora)
-     (NAME hu.dwim.asdf FILENAME hu_dot_dwim_dot_asdf)
-     (NAME hu.dwim.def FILENAME hu_dot_dwim_dot_def)
-     (NAME iterate FILENAME iterate)
-     (NAME metabang-bind FILENAME metabang-bind) (NAME swank FILENAME swank))
-    DEPENDENCIES
-    (alexandria anaphora hu.dwim.asdf hu.dwim.def iterate metabang-bind swank)
-    VERSION hu.dwim.def-20201016-darcs SIBLINGS
-    (hu.dwim.def+cl-l10n hu.dwim.def+contextl hu.dwim.def+hu.dwim.common
-     hu.dwim.def+hu.dwim.delico hu.dwim.def hu.dwim.def.documentation
-     hu.dwim.def.namespace hu.dwim.def.test)
-    PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/hu_dot_dwim_dot_defclass-star.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/hu_dot_dwim_dot_defclass-star.nix
deleted file mode 100644
index dcebc1b13a1b..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/hu_dot_dwim_dot_defclass-star.nix
+++ /dev/null
@@ -1,37 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "hu_dot_dwim_dot_defclass-star";
-  version = "stable-git";
-
-  parasites = [ "hu.dwim.defclass-star/test" ];
-
-  description = "Simplify class like definitions with defclass* and friends.";
-
-  deps = [ args."hu_dot_dwim_dot_asdf" args."hu_dot_dwim_dot_common" args."hu_dot_dwim_dot_stefil_plus_hu_dot_dwim_dot_def_plus_swank" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/hu.dwim.defclass-star/2021-12-09/hu.dwim.defclass-star-stable-git.tgz";
-    sha256 = "0draahmhi5mmrj9aqabqdaipqcb9adxqdypjbdiawg55dw36g0cy";
-  };
-
-  packageName = "hu.dwim.defclass-star";
-
-  asdFilesToKeep = ["hu.dwim.defclass-star.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM hu.dwim.defclass-star DESCRIPTION
-    Simplify class like definitions with defclass* and friends. SHA256
-    0draahmhi5mmrj9aqabqdaipqcb9adxqdypjbdiawg55dw36g0cy URL
-    http://beta.quicklisp.org/archive/hu.dwim.defclass-star/2021-12-09/hu.dwim.defclass-star-stable-git.tgz
-    MD5 e35fa9767089eb2fb03befaec18d5081 NAME hu.dwim.defclass-star FILENAME
-    hu_dot_dwim_dot_defclass-star DEPS
-    ((NAME hu.dwim.asdf FILENAME hu_dot_dwim_dot_asdf)
-     (NAME hu.dwim.common FILENAME hu_dot_dwim_dot_common)
-     (NAME hu.dwim.stefil+hu.dwim.def+swank FILENAME
-      hu_dot_dwim_dot_stefil_plus_hu_dot_dwim_dot_def_plus_swank))
-    DEPENDENCIES (hu.dwim.asdf hu.dwim.common hu.dwim.stefil+hu.dwim.def+swank)
-    VERSION stable-git SIBLINGS
-    (hu.dwim.defclass-star+contextl hu.dwim.defclass-star+hu.dwim.def+contextl
-     hu.dwim.defclass-star+hu.dwim.def hu.dwim.defclass-star+swank)
-    PARASITES (hu.dwim.defclass-star/test)) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/hu_dot_dwim_dot_stefil.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/hu_dot_dwim_dot_stefil.nix
deleted file mode 100644
index a6188cd76762..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/hu_dot_dwim_dot_stefil.nix
+++ /dev/null
@@ -1,31 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "hu_dot_dwim_dot_stefil";
-  version = "20200218-darcs";
-
-  parasites = [ "hu.dwim.stefil/test" ];
-
-  description = "A Simple Test Framework In Lisp.";
-
-  deps = [ args."alexandria" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/hu.dwim.stefil/2020-02-18/hu.dwim.stefil-20200218-darcs.tgz";
-    sha256 = "16p25pq9fhk0dny6r43yl9z24g6qm6dag9zf2cila9v9jh3r76qf";
-  };
-
-  packageName = "hu.dwim.stefil";
-
-  asdFilesToKeep = ["hu.dwim.stefil.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM hu.dwim.stefil DESCRIPTION A Simple Test Framework In Lisp. SHA256
-    16p25pq9fhk0dny6r43yl9z24g6qm6dag9zf2cila9v9jh3r76qf URL
-    http://beta.quicklisp.org/archive/hu.dwim.stefil/2020-02-18/hu.dwim.stefil-20200218-darcs.tgz
-    MD5 3e87e0973f8373e342b75b13c802cc53 NAME hu.dwim.stefil FILENAME
-    hu_dot_dwim_dot_stefil DEPS ((NAME alexandria FILENAME alexandria))
-    DEPENDENCIES (alexandria) VERSION 20200218-darcs SIBLINGS
-    (hu.dwim.stefil+hu.dwim.def+swank hu.dwim.stefil+hu.dwim.def
-     hu.dwim.stefil+swank)
-    PARASITES (hu.dwim.stefil/test)) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/hu_dot_dwim_dot_stefil_plus_hu_dot_dwim_dot_def.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/hu_dot_dwim_dot_stefil_plus_hu_dot_dwim_dot_def.nix
deleted file mode 100644
index 2f365dced045..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/hu_dot_dwim_dot_stefil_plus_hu_dot_dwim_dot_def.nix
+++ /dev/null
@@ -1,37 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "hu_dot_dwim_dot_stefil_plus_hu_dot_dwim_dot_def";
-  version = "hu.dwim.stefil-20200218-darcs";
-
-  description = "System lacks description";
-
-  deps = [ args."alexandria" args."anaphora" args."hu_dot_dwim_dot_asdf" args."hu_dot_dwim_dot_def" args."hu_dot_dwim_dot_stefil" args."iterate" args."metabang-bind" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/hu.dwim.stefil/2020-02-18/hu.dwim.stefil-20200218-darcs.tgz";
-    sha256 = "16p25pq9fhk0dny6r43yl9z24g6qm6dag9zf2cila9v9jh3r76qf";
-  };
-
-  packageName = "hu.dwim.stefil+hu.dwim.def";
-
-  asdFilesToKeep = ["hu.dwim.stefil+hu.dwim.def.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM hu.dwim.stefil+hu.dwim.def DESCRIPTION System lacks description
-    SHA256 16p25pq9fhk0dny6r43yl9z24g6qm6dag9zf2cila9v9jh3r76qf URL
-    http://beta.quicklisp.org/archive/hu.dwim.stefil/2020-02-18/hu.dwim.stefil-20200218-darcs.tgz
-    MD5 3e87e0973f8373e342b75b13c802cc53 NAME hu.dwim.stefil+hu.dwim.def
-    FILENAME hu_dot_dwim_dot_stefil_plus_hu_dot_dwim_dot_def DEPS
-    ((NAME alexandria FILENAME alexandria) (NAME anaphora FILENAME anaphora)
-     (NAME hu.dwim.asdf FILENAME hu_dot_dwim_dot_asdf)
-     (NAME hu.dwim.def FILENAME hu_dot_dwim_dot_def)
-     (NAME hu.dwim.stefil FILENAME hu_dot_dwim_dot_stefil)
-     (NAME iterate FILENAME iterate)
-     (NAME metabang-bind FILENAME metabang-bind))
-    DEPENDENCIES
-    (alexandria anaphora hu.dwim.asdf hu.dwim.def hu.dwim.stefil iterate
-     metabang-bind)
-    VERSION hu.dwim.stefil-20200218-darcs SIBLINGS
-    (hu.dwim.stefil+hu.dwim.def+swank hu.dwim.stefil+swank hu.dwim.stefil)
-    PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/hu_dot_dwim_dot_stefil_plus_hu_dot_dwim_dot_def_plus_swank.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/hu_dot_dwim_dot_stefil_plus_hu_dot_dwim_dot_def_plus_swank.nix
deleted file mode 100644
index eff179a55efa..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/hu_dot_dwim_dot_stefil_plus_hu_dot_dwim_dot_def_plus_swank.nix
+++ /dev/null
@@ -1,43 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "hu_dot_dwim_dot_stefil_plus_hu_dot_dwim_dot_def_plus_swank";
-  version = "hu.dwim.stefil-20200218-darcs";
-
-  description = "System lacks description";
-
-  deps = [ args."alexandria" args."anaphora" args."hu_dot_dwim_dot_asdf" args."hu_dot_dwim_dot_def" args."hu_dot_dwim_dot_def_plus_swank" args."hu_dot_dwim_dot_stefil" args."hu_dot_dwim_dot_stefil_plus_hu_dot_dwim_dot_def" args."hu_dot_dwim_dot_stefil_plus_swank" args."iterate" args."metabang-bind" args."swank" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/hu.dwim.stefil/2020-02-18/hu.dwim.stefil-20200218-darcs.tgz";
-    sha256 = "16p25pq9fhk0dny6r43yl9z24g6qm6dag9zf2cila9v9jh3r76qf";
-  };
-
-  packageName = "hu.dwim.stefil+hu.dwim.def+swank";
-
-  asdFilesToKeep = ["hu.dwim.stefil+hu.dwim.def+swank.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM hu.dwim.stefil+hu.dwim.def+swank DESCRIPTION
-    System lacks description SHA256
-    16p25pq9fhk0dny6r43yl9z24g6qm6dag9zf2cila9v9jh3r76qf URL
-    http://beta.quicklisp.org/archive/hu.dwim.stefil/2020-02-18/hu.dwim.stefil-20200218-darcs.tgz
-    MD5 3e87e0973f8373e342b75b13c802cc53 NAME hu.dwim.stefil+hu.dwim.def+swank
-    FILENAME hu_dot_dwim_dot_stefil_plus_hu_dot_dwim_dot_def_plus_swank DEPS
-    ((NAME alexandria FILENAME alexandria) (NAME anaphora FILENAME anaphora)
-     (NAME hu.dwim.asdf FILENAME hu_dot_dwim_dot_asdf)
-     (NAME hu.dwim.def FILENAME hu_dot_dwim_dot_def)
-     (NAME hu.dwim.def+swank FILENAME hu_dot_dwim_dot_def_plus_swank)
-     (NAME hu.dwim.stefil FILENAME hu_dot_dwim_dot_stefil)
-     (NAME hu.dwim.stefil+hu.dwim.def FILENAME
-      hu_dot_dwim_dot_stefil_plus_hu_dot_dwim_dot_def)
-     (NAME hu.dwim.stefil+swank FILENAME hu_dot_dwim_dot_stefil_plus_swank)
-     (NAME iterate FILENAME iterate)
-     (NAME metabang-bind FILENAME metabang-bind) (NAME swank FILENAME swank))
-    DEPENDENCIES
-    (alexandria anaphora hu.dwim.asdf hu.dwim.def hu.dwim.def+swank
-     hu.dwim.stefil hu.dwim.stefil+hu.dwim.def hu.dwim.stefil+swank iterate
-     metabang-bind swank)
-    VERSION hu.dwim.stefil-20200218-darcs SIBLINGS
-    (hu.dwim.stefil+hu.dwim.def hu.dwim.stefil+swank hu.dwim.stefil) PARASITES
-    NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/hu_dot_dwim_dot_stefil_plus_swank.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/hu_dot_dwim_dot_stefil_plus_swank.nix
deleted file mode 100644
index 6d9614d2dee7..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/hu_dot_dwim_dot_stefil_plus_swank.nix
+++ /dev/null
@@ -1,34 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "hu_dot_dwim_dot_stefil_plus_swank";
-  version = "hu.dwim.stefil-20200218-darcs";
-
-  description = "System lacks description";
-
-  deps = [ args."alexandria" args."hu_dot_dwim_dot_asdf" args."hu_dot_dwim_dot_stefil" args."swank" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/hu.dwim.stefil/2020-02-18/hu.dwim.stefil-20200218-darcs.tgz";
-    sha256 = "16p25pq9fhk0dny6r43yl9z24g6qm6dag9zf2cila9v9jh3r76qf";
-  };
-
-  packageName = "hu.dwim.stefil+swank";
-
-  asdFilesToKeep = ["hu.dwim.stefil+swank.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM hu.dwim.stefil+swank DESCRIPTION System lacks description SHA256
-    16p25pq9fhk0dny6r43yl9z24g6qm6dag9zf2cila9v9jh3r76qf URL
-    http://beta.quicklisp.org/archive/hu.dwim.stefil/2020-02-18/hu.dwim.stefil-20200218-darcs.tgz
-    MD5 3e87e0973f8373e342b75b13c802cc53 NAME hu.dwim.stefil+swank FILENAME
-    hu_dot_dwim_dot_stefil_plus_swank DEPS
-    ((NAME alexandria FILENAME alexandria)
-     (NAME hu.dwim.asdf FILENAME hu_dot_dwim_dot_asdf)
-     (NAME hu.dwim.stefil FILENAME hu_dot_dwim_dot_stefil)
-     (NAME swank FILENAME swank))
-    DEPENDENCIES (alexandria hu.dwim.asdf hu.dwim.stefil swank) VERSION
-    hu.dwim.stefil-20200218-darcs SIBLINGS
-    (hu.dwim.stefil+hu.dwim.def+swank hu.dwim.stefil+hu.dwim.def
-     hu.dwim.stefil)
-    PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/hunchensocket.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/hunchensocket.nix
deleted file mode 100644
index 0179451ed7bc..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/hunchensocket.nix
+++ /dev/null
@@ -1,48 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "hunchensocket";
-  version = "20210531-git";
-
-  parasites = [ "hunchensocket-tests" ];
-
-  description = "WebSockets for Hunchentoot";
-
-  deps = [ args."alexandria" args."babel" args."bordeaux-threads" args."cffi" args."chunga" args."cl_plus_ssl" args."cl-base64" args."cl-fad" args."cl-ppcre" args."fiasco" args."flexi-streams" args."hunchentoot" args."ironclad" args."md5" args."rfc2388" args."split-sequence" args."trivial-backtrace" args."trivial-features" args."trivial-garbage" args."trivial-gray-streams" args."trivial-utf-8" args."usocket" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/hunchensocket/2021-05-31/hunchensocket-20210531-git.tgz";
-    sha256 = "18zy11fir6vlg5vh29pr221dydbl9carfj9xkmsnygyzxkl6jghl";
-  };
-
-  packageName = "hunchensocket";
-
-  asdFilesToKeep = ["hunchensocket.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM hunchensocket DESCRIPTION WebSockets for Hunchentoot SHA256
-    18zy11fir6vlg5vh29pr221dydbl9carfj9xkmsnygyzxkl6jghl URL
-    http://beta.quicklisp.org/archive/hunchensocket/2021-05-31/hunchensocket-20210531-git.tgz
-    MD5 a529901753a54eb48c93aa86b0c3747d NAME hunchensocket FILENAME
-    hunchensocket DEPS
-    ((NAME alexandria FILENAME alexandria) (NAME babel FILENAME babel)
-     (NAME bordeaux-threads FILENAME bordeaux-threads)
-     (NAME cffi FILENAME cffi) (NAME chunga FILENAME chunga)
-     (NAME cl+ssl FILENAME cl_plus_ssl) (NAME cl-base64 FILENAME cl-base64)
-     (NAME cl-fad FILENAME cl-fad) (NAME cl-ppcre FILENAME cl-ppcre)
-     (NAME fiasco FILENAME fiasco) (NAME flexi-streams FILENAME flexi-streams)
-     (NAME hunchentoot FILENAME hunchentoot) (NAME ironclad FILENAME ironclad)
-     (NAME md5 FILENAME md5) (NAME rfc2388 FILENAME rfc2388)
-     (NAME split-sequence FILENAME split-sequence)
-     (NAME trivial-backtrace FILENAME trivial-backtrace)
-     (NAME trivial-features FILENAME trivial-features)
-     (NAME trivial-garbage FILENAME trivial-garbage)
-     (NAME trivial-gray-streams FILENAME trivial-gray-streams)
-     (NAME trivial-utf-8 FILENAME trivial-utf-8)
-     (NAME usocket FILENAME usocket))
-    DEPENDENCIES
-    (alexandria babel bordeaux-threads cffi chunga cl+ssl cl-base64 cl-fad
-     cl-ppcre fiasco flexi-streams hunchentoot ironclad md5 rfc2388
-     split-sequence trivial-backtrace trivial-features trivial-garbage
-     trivial-gray-streams trivial-utf-8 usocket)
-    VERSION 20210531-git SIBLINGS NIL PARASITES (hunchensocket-tests)) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/hunchentoot.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/hunchentoot.nix
deleted file mode 100644
index 9bada7ef5667..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/hunchentoot.nix
+++ /dev/null
@@ -1,54 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "hunchentoot";
-  version = "v1.3.0";
-
-  parasites = [ "hunchentoot-dev" "hunchentoot-test" ];
-
-  description = "Hunchentoot is a HTTP server based on USOCKET and
-  BORDEAUX-THREADS.  It supports HTTP 1.1, serves static files, has a
-  simple framework for user-defined handlers and can be extended
-  through subclassing.";
-
-  deps = [ args."alexandria" args."babel" args."bordeaux-threads" args."cffi" args."chunga" args."cl_plus_ssl" args."cl-base64" args."cl-fad" args."cl-ppcre" args."cl-who" args."cxml-stp" args."drakma" args."flexi-streams" args."md5" args."rfc2388" args."split-sequence" args."swank" args."trivial-backtrace" args."trivial-features" args."trivial-garbage" args."trivial-gray-streams" args."usocket" args."xpath" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/hunchentoot/2020-06-10/hunchentoot-v1.3.0.tgz";
-    sha256 = "08znpi5lq2dhgv6mhvabk3w4ggrg31dbv4k6gmshr18xd2lq43i8";
-  };
-
-  packageName = "hunchentoot";
-
-  asdFilesToKeep = ["hunchentoot.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM hunchentoot DESCRIPTION
-    Hunchentoot is a HTTP server based on USOCKET and
-  BORDEAUX-THREADS.  It supports HTTP 1.1, serves static files, has a
-  simple framework for user-defined handlers and can be extended
-  through subclassing.
-    SHA256 08znpi5lq2dhgv6mhvabk3w4ggrg31dbv4k6gmshr18xd2lq43i8 URL
-    http://beta.quicklisp.org/archive/hunchentoot/2020-06-10/hunchentoot-v1.3.0.tgz
-    MD5 b1bb0c8df41a0ffaba4309e5084930fe NAME hunchentoot FILENAME hunchentoot
-    DEPS
-    ((NAME alexandria FILENAME alexandria) (NAME babel FILENAME babel)
-     (NAME bordeaux-threads FILENAME bordeaux-threads)
-     (NAME cffi FILENAME cffi) (NAME chunga FILENAME chunga)
-     (NAME cl+ssl FILENAME cl_plus_ssl) (NAME cl-base64 FILENAME cl-base64)
-     (NAME cl-fad FILENAME cl-fad) (NAME cl-ppcre FILENAME cl-ppcre)
-     (NAME cl-who FILENAME cl-who) (NAME cxml-stp FILENAME cxml-stp)
-     (NAME drakma FILENAME drakma) (NAME flexi-streams FILENAME flexi-streams)
-     (NAME md5 FILENAME md5) (NAME rfc2388 FILENAME rfc2388)
-     (NAME split-sequence FILENAME split-sequence) (NAME swank FILENAME swank)
-     (NAME trivial-backtrace FILENAME trivial-backtrace)
-     (NAME trivial-features FILENAME trivial-features)
-     (NAME trivial-garbage FILENAME trivial-garbage)
-     (NAME trivial-gray-streams FILENAME trivial-gray-streams)
-     (NAME usocket FILENAME usocket) (NAME xpath FILENAME xpath))
-    DEPENDENCIES
-    (alexandria babel bordeaux-threads cffi chunga cl+ssl cl-base64 cl-fad
-     cl-ppcre cl-who cxml-stp drakma flexi-streams md5 rfc2388 split-sequence
-     swank trivial-backtrace trivial-features trivial-garbage
-     trivial-gray-streams usocket xpath)
-    VERSION v1.3.0 SIBLINGS NIL PARASITES (hunchentoot-dev hunchentoot-test)) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/idna.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/idna.nix
deleted file mode 100644
index 87cef0b0bf7d..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/idna.nix
+++ /dev/null
@@ -1,27 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "idna";
-  version = "20120107-git";
-
-  description = "IDNA (international domain names) string encoding and decoding routines";
-
-  deps = [ args."split-sequence" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/idna/2012-01-07/idna-20120107-git.tgz";
-    sha256 = "0q9hja9v5q7z89p0bzm2whchn05hymn3255fr5zj3fkja8akma5c";
-  };
-
-  packageName = "idna";
-
-  asdFilesToKeep = ["idna.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM idna DESCRIPTION
-    IDNA (international domain names) string encoding and decoding routines
-    SHA256 0q9hja9v5q7z89p0bzm2whchn05hymn3255fr5zj3fkja8akma5c URL
-    http://beta.quicklisp.org/archive/idna/2012-01-07/idna-20120107-git.tgz MD5
-    85b91a66efe4381bf116cdb5d2b756b6 NAME idna FILENAME idna DEPS
-    ((NAME split-sequence FILENAME split-sequence)) DEPENDENCIES
-    (split-sequence) VERSION 20120107-git SIBLINGS NIL PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/ieee-floats.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/ieee-floats.nix
deleted file mode 100644
index 4ab0fce5ae3d..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/ieee-floats.nix
+++ /dev/null
@@ -1,29 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "ieee-floats";
-  version = "20170830-git";
-
-  parasites = [ "ieee-floats-tests" ];
-
-  description = "Convert floating point values to IEEE 754 binary representation";
-
-  deps = [ args."fiveam" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/ieee-floats/2017-08-30/ieee-floats-20170830-git.tgz";
-    sha256 = "15c4q4w3cda82vqlpvdfrnah6ms6vxbjf4a0chd10daw72rwayqk";
-  };
-
-  packageName = "ieee-floats";
-
-  asdFilesToKeep = ["ieee-floats.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM ieee-floats DESCRIPTION
-    Convert floating point values to IEEE 754 binary representation SHA256
-    15c4q4w3cda82vqlpvdfrnah6ms6vxbjf4a0chd10daw72rwayqk URL
-    http://beta.quicklisp.org/archive/ieee-floats/2017-08-30/ieee-floats-20170830-git.tgz
-    MD5 3434b4d91224ca6a817ced9d83f14bb6 NAME ieee-floats FILENAME ieee-floats
-    DEPS ((NAME fiveam FILENAME fiveam)) DEPENDENCIES (fiveam) VERSION
-    20170830-git SIBLINGS NIL PARASITES (ieee-floats-tests)) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/inferior-shell.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/inferior-shell.nix
deleted file mode 100644
index d8e65cbdaefe..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/inferior-shell.nix
+++ /dev/null
@@ -1,55 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "inferior-shell";
-  version = "20200925-git";
-
-  parasites = [ "inferior-shell/test" ];
-
-  description = "spawn local or remote processes and shell pipes";
-
-  deps = [ args."alexandria" args."asdf" args."closer-mop" args."fare-mop" args."fare-quasiquote" args."fare-quasiquote-extras" args."fare-quasiquote-optima" args."fare-quasiquote-readtable" args."fare-utils" args."hu_dot_dwim_dot_stefil" args."introspect-environment" args."iterate" args."lisp-namespace" args."named-readtables" args."trivia" args."trivia_dot_balland2006" args."trivia_dot_level0" args."trivia_dot_level1" args."trivia_dot_level2" args."trivia_dot_quasiquote" args."trivia_dot_trivial" args."trivial-cltl2" args."type-i" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/inferior-shell/2020-09-25/inferior-shell-20200925-git.tgz";
-    sha256 = "1hykybcmdpcjk0irl4f1lmqc4aawpp1zfvh27qp6mldsibra7l80";
-  };
-
-  packageName = "inferior-shell";
-
-  asdFilesToKeep = ["inferior-shell.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM inferior-shell DESCRIPTION
-    spawn local or remote processes and shell pipes SHA256
-    1hykybcmdpcjk0irl4f1lmqc4aawpp1zfvh27qp6mldsibra7l80 URL
-    http://beta.quicklisp.org/archive/inferior-shell/2020-09-25/inferior-shell-20200925-git.tgz
-    MD5 7ca5f15446ef80715758610a930bccba NAME inferior-shell FILENAME
-    inferior-shell DEPS
-    ((NAME alexandria FILENAME alexandria) (NAME asdf FILENAME asdf)
-     (NAME closer-mop FILENAME closer-mop) (NAME fare-mop FILENAME fare-mop)
-     (NAME fare-quasiquote FILENAME fare-quasiquote)
-     (NAME fare-quasiquote-extras FILENAME fare-quasiquote-extras)
-     (NAME fare-quasiquote-optima FILENAME fare-quasiquote-optima)
-     (NAME fare-quasiquote-readtable FILENAME fare-quasiquote-readtable)
-     (NAME fare-utils FILENAME fare-utils)
-     (NAME hu.dwim.stefil FILENAME hu_dot_dwim_dot_stefil)
-     (NAME introspect-environment FILENAME introspect-environment)
-     (NAME iterate FILENAME iterate)
-     (NAME lisp-namespace FILENAME lisp-namespace)
-     (NAME named-readtables FILENAME named-readtables)
-     (NAME trivia FILENAME trivia)
-     (NAME trivia.balland2006 FILENAME trivia_dot_balland2006)
-     (NAME trivia.level0 FILENAME trivia_dot_level0)
-     (NAME trivia.level1 FILENAME trivia_dot_level1)
-     (NAME trivia.level2 FILENAME trivia_dot_level2)
-     (NAME trivia.quasiquote FILENAME trivia_dot_quasiquote)
-     (NAME trivia.trivial FILENAME trivia_dot_trivial)
-     (NAME trivial-cltl2 FILENAME trivial-cltl2) (NAME type-i FILENAME type-i))
-    DEPENDENCIES
-    (alexandria asdf closer-mop fare-mop fare-quasiquote fare-quasiquote-extras
-     fare-quasiquote-optima fare-quasiquote-readtable fare-utils hu.dwim.stefil
-     introspect-environment iterate lisp-namespace named-readtables trivia
-     trivia.balland2006 trivia.level0 trivia.level1 trivia.level2
-     trivia.quasiquote trivia.trivial trivial-cltl2 type-i)
-    VERSION 20200925-git SIBLINGS NIL PARASITES (inferior-shell/test)) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/introspect-environment.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/introspect-environment.nix
deleted file mode 100644
index 6963f286fb31..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/introspect-environment.nix
+++ /dev/null
@@ -1,27 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "introspect-environment";
-  version = "20210807-git";
-
-  description = "Small interface to portable but nonstandard introspection of CL environments.";
-
-  deps = [ ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/introspect-environment/2021-08-07/introspect-environment-20210807-git.tgz";
-    sha256 = "124rnbcjygw7wm07bpcibsqkvsqxhr8pq42p7phw39kmcp9hns4j";
-  };
-
-  packageName = "introspect-environment";
-
-  asdFilesToKeep = ["introspect-environment.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM introspect-environment DESCRIPTION
-    Small interface to portable but nonstandard introspection of CL environments.
-    SHA256 124rnbcjygw7wm07bpcibsqkvsqxhr8pq42p7phw39kmcp9hns4j URL
-    http://beta.quicklisp.org/archive/introspect-environment/2021-08-07/introspect-environment-20210807-git.tgz
-    MD5 f9d4e1208146e9435c2ce1b82a87a209 NAME introspect-environment FILENAME
-    introspect-environment DEPS NIL DEPENDENCIES NIL VERSION 20210807-git
-    SIBLINGS (introspect-environment-test) PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/iolib.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/iolib.nix
deleted file mode 100644
index 273d46723001..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/iolib.nix
+++ /dev/null
@@ -1,47 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "iolib";
-  version = "v0.8.4";
-
-  parasites = [ "iolib/multiplex" "iolib/os" "iolib/pathnames" "iolib/sockets" "iolib/streams" "iolib/syscalls" "iolib/tests" "iolib/trivial-sockets" "iolib/zstreams" ];
-
-  description = "I/O library.";
-
-  deps = [ args."alexandria" args."babel" args."bordeaux-threads" args."cffi" args."cffi-grovel" args."cffi-toolchain" args."fiveam" args."idna" args."iolib_dot_asdf" args."iolib_dot_base" args."iolib_dot_common-lisp" args."iolib_dot_conf" args."split-sequence" args."swap-bytes" args."trivial-features" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/iolib/2021-06-30/iolib-v0.8.4.tgz";
-    sha256 = "0vahwswwk3rxkr5wcph5n91sgzlm53d53j8m8sxbqixm8j1ff5vq";
-  };
-
-  packageName = "iolib";
-
-  asdFilesToKeep = ["iolib.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM iolib DESCRIPTION I/O library. SHA256
-    0vahwswwk3rxkr5wcph5n91sgzlm53d53j8m8sxbqixm8j1ff5vq URL
-    http://beta.quicklisp.org/archive/iolib/2021-06-30/iolib-v0.8.4.tgz MD5
-    5650165890f8b278b357864f597b377d NAME iolib FILENAME iolib DEPS
-    ((NAME alexandria FILENAME alexandria) (NAME babel FILENAME babel)
-     (NAME bordeaux-threads FILENAME bordeaux-threads)
-     (NAME cffi FILENAME cffi) (NAME cffi-grovel FILENAME cffi-grovel)
-     (NAME cffi-toolchain FILENAME cffi-toolchain)
-     (NAME fiveam FILENAME fiveam) (NAME idna FILENAME idna)
-     (NAME iolib.asdf FILENAME iolib_dot_asdf)
-     (NAME iolib.base FILENAME iolib_dot_base)
-     (NAME iolib.common-lisp FILENAME iolib_dot_common-lisp)
-     (NAME iolib.conf FILENAME iolib_dot_conf)
-     (NAME split-sequence FILENAME split-sequence)
-     (NAME swap-bytes FILENAME swap-bytes)
-     (NAME trivial-features FILENAME trivial-features))
-    DEPENDENCIES
-    (alexandria babel bordeaux-threads cffi cffi-grovel cffi-toolchain fiveam
-     idna iolib.asdf iolib.base iolib.common-lisp iolib.conf split-sequence
-     swap-bytes trivial-features)
-    VERSION v0.8.4 SIBLINGS
-    (iolib.asdf iolib.base iolib.common-lisp iolib.conf iolib.examples)
-    PARASITES
-    (iolib/multiplex iolib/os iolib/pathnames iolib/sockets iolib/streams
-     iolib/syscalls iolib/tests iolib/trivial-sockets iolib/zstreams)) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/iolib_dot_asdf.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/iolib_dot_asdf.nix
deleted file mode 100644
index 142d990ddf22..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/iolib_dot_asdf.nix
+++ /dev/null
@@ -1,28 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "iolib_dot_asdf";
-  version = "iolib-v0.8.4";
-
-  description = "A few ASDF component classes.";
-
-  deps = [ args."alexandria" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/iolib/2021-06-30/iolib-v0.8.4.tgz";
-    sha256 = "0vahwswwk3rxkr5wcph5n91sgzlm53d53j8m8sxbqixm8j1ff5vq";
-  };
-
-  packageName = "iolib.asdf";
-
-  asdFilesToKeep = ["iolib.asdf.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM iolib.asdf DESCRIPTION A few ASDF component classes. SHA256
-    0vahwswwk3rxkr5wcph5n91sgzlm53d53j8m8sxbqixm8j1ff5vq URL
-    http://beta.quicklisp.org/archive/iolib/2021-06-30/iolib-v0.8.4.tgz MD5
-    5650165890f8b278b357864f597b377d NAME iolib.asdf FILENAME iolib_dot_asdf
-    DEPS ((NAME alexandria FILENAME alexandria)) DEPENDENCIES (alexandria)
-    VERSION iolib-v0.8.4 SIBLINGS
-    (iolib iolib.base iolib.common-lisp iolib.conf iolib.examples) PARASITES
-    NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/iolib_dot_base.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/iolib_dot_base.nix
deleted file mode 100644
index b2e088690358..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/iolib_dot_base.nix
+++ /dev/null
@@ -1,35 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "iolib_dot_base";
-  version = "iolib-v0.8.4";
-
-  description = "Base IOlib package, used instead of CL.";
-
-  deps = [ args."alexandria" args."iolib_dot_asdf" args."iolib_dot_common-lisp" args."iolib_dot_conf" args."split-sequence" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/iolib/2021-06-30/iolib-v0.8.4.tgz";
-    sha256 = "0vahwswwk3rxkr5wcph5n91sgzlm53d53j8m8sxbqixm8j1ff5vq";
-  };
-
-  packageName = "iolib.base";
-
-  asdFilesToKeep = ["iolib.base.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM iolib.base DESCRIPTION Base IOlib package, used instead of CL.
-    SHA256 0vahwswwk3rxkr5wcph5n91sgzlm53d53j8m8sxbqixm8j1ff5vq URL
-    http://beta.quicklisp.org/archive/iolib/2021-06-30/iolib-v0.8.4.tgz MD5
-    5650165890f8b278b357864f597b377d NAME iolib.base FILENAME iolib_dot_base
-    DEPS
-    ((NAME alexandria FILENAME alexandria)
-     (NAME iolib.asdf FILENAME iolib_dot_asdf)
-     (NAME iolib.common-lisp FILENAME iolib_dot_common-lisp)
-     (NAME iolib.conf FILENAME iolib_dot_conf)
-     (NAME split-sequence FILENAME split-sequence))
-    DEPENDENCIES
-    (alexandria iolib.asdf iolib.common-lisp iolib.conf split-sequence) VERSION
-    iolib-v0.8.4 SIBLINGS
-    (iolib iolib.asdf iolib.common-lisp iolib.conf iolib.examples) PARASITES
-    NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/iolib_dot_common-lisp.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/iolib_dot_common-lisp.nix
deleted file mode 100644
index 9dcf0781b00b..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/iolib_dot_common-lisp.nix
+++ /dev/null
@@ -1,31 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "iolib_dot_common-lisp";
-  version = "iolib-v0.8.4";
-
-  description = "Slightly modified Common Lisp.";
-
-  deps = [ args."alexandria" args."iolib_dot_asdf" args."iolib_dot_conf" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/iolib/2021-06-30/iolib-v0.8.4.tgz";
-    sha256 = "0vahwswwk3rxkr5wcph5n91sgzlm53d53j8m8sxbqixm8j1ff5vq";
-  };
-
-  packageName = "iolib.common-lisp";
-
-  asdFilesToKeep = ["iolib.common-lisp.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM iolib.common-lisp DESCRIPTION Slightly modified Common Lisp. SHA256
-    0vahwswwk3rxkr5wcph5n91sgzlm53d53j8m8sxbqixm8j1ff5vq URL
-    http://beta.quicklisp.org/archive/iolib/2021-06-30/iolib-v0.8.4.tgz MD5
-    5650165890f8b278b357864f597b377d NAME iolib.common-lisp FILENAME
-    iolib_dot_common-lisp DEPS
-    ((NAME alexandria FILENAME alexandria)
-     (NAME iolib.asdf FILENAME iolib_dot_asdf)
-     (NAME iolib.conf FILENAME iolib_dot_conf))
-    DEPENDENCIES (alexandria iolib.asdf iolib.conf) VERSION iolib-v0.8.4
-    SIBLINGS (iolib iolib.asdf iolib.base iolib.conf iolib.examples) PARASITES
-    NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/iolib_dot_conf.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/iolib_dot_conf.nix
deleted file mode 100644
index f3e981644176..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/iolib_dot_conf.nix
+++ /dev/null
@@ -1,30 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "iolib_dot_conf";
-  version = "iolib-v0.8.4";
-
-  description = "Compile-time configuration for IOLib.";
-
-  deps = [ args."alexandria" args."iolib_dot_asdf" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/iolib/2021-06-30/iolib-v0.8.4.tgz";
-    sha256 = "0vahwswwk3rxkr5wcph5n91sgzlm53d53j8m8sxbqixm8j1ff5vq";
-  };
-
-  packageName = "iolib.conf";
-
-  asdFilesToKeep = ["iolib.conf.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM iolib.conf DESCRIPTION Compile-time configuration for IOLib. SHA256
-    0vahwswwk3rxkr5wcph5n91sgzlm53d53j8m8sxbqixm8j1ff5vq URL
-    http://beta.quicklisp.org/archive/iolib/2021-06-30/iolib-v0.8.4.tgz MD5
-    5650165890f8b278b357864f597b377d NAME iolib.conf FILENAME iolib_dot_conf
-    DEPS
-    ((NAME alexandria FILENAME alexandria)
-     (NAME iolib.asdf FILENAME iolib_dot_asdf))
-    DEPENDENCIES (alexandria iolib.asdf) VERSION iolib-v0.8.4 SIBLINGS
-    (iolib iolib.asdf iolib.base iolib.common-lisp iolib.examples) PARASITES
-    NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/iolib_dot_grovel.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/iolib_dot_grovel.nix
deleted file mode 100644
index 89f889419f1c..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/iolib_dot_grovel.nix
+++ /dev/null
@@ -1,40 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "iolib_dot_grovel";
-  version = "iolib-v0.8.3";
-
-  description = "The CFFI Groveller";
-
-  deps = [ args."alexandria" args."babel" args."cffi" args."iolib_dot_asdf" args."iolib_dot_base" args."iolib_dot_common-lisp" args."iolib_dot_conf" args."split-sequence" args."trivial-features" args."uiop" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/iolib/2018-02-28/iolib-v0.8.3.tgz";
-    sha256 = "12gsvsjyxmclwidcjvyrfvd0773ib54a3qzmf33hmgc9knxlli7c";
-  };
-
-  packageName = "iolib.grovel";
-
-  asdFilesToKeep = ["iolib.grovel.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM iolib.grovel DESCRIPTION The CFFI Groveller SHA256
-    12gsvsjyxmclwidcjvyrfvd0773ib54a3qzmf33hmgc9knxlli7c URL
-    http://beta.quicklisp.org/archive/iolib/2018-02-28/iolib-v0.8.3.tgz MD5
-    fc28d4cad6f8e43972df3baa6a8ac45c NAME iolib.grovel FILENAME
-    iolib_dot_grovel DEPS
-    ((NAME alexandria FILENAME alexandria) (NAME babel FILENAME babel)
-     (NAME cffi FILENAME cffi) (NAME iolib.asdf FILENAME iolib_dot_asdf)
-     (NAME iolib.base FILENAME iolib_dot_base)
-     (NAME iolib.common-lisp FILENAME iolib_dot_common-lisp)
-     (NAME iolib.conf FILENAME iolib_dot_conf)
-     (NAME split-sequence FILENAME split-sequence)
-     (NAME trivial-features FILENAME trivial-features)
-     (NAME uiop FILENAME uiop))
-    DEPENDENCIES
-    (alexandria babel cffi iolib.asdf iolib.base iolib.common-lisp iolib.conf
-     split-sequence trivial-features uiop)
-    VERSION iolib-v0.8.3 SIBLINGS
-    (iolib iolib.asdf iolib.base iolib.common-lisp iolib.conf iolib.examples
-     iolib.tests)
-    PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/ironclad.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/ironclad.nix
deleted file mode 100644
index 66d3614a9c09..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/ironclad.nix
+++ /dev/null
@@ -1,62 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "ironclad";
-  version = "v0.56";
-
-  parasites = [ "ironclad/aead/eax" "ironclad/aead/etm" "ironclad/aead/gcm" "ironclad/aeads" "ironclad/cipher/aes" "ironclad/cipher/arcfour" "ironclad/cipher/aria" "ironclad/cipher/blowfish" "ironclad/cipher/camellia" "ironclad/cipher/cast5" "ironclad/cipher/chacha" "ironclad/cipher/des" "ironclad/cipher/idea" "ironclad/cipher/kalyna" "ironclad/cipher/keystream" "ironclad/cipher/kuznyechik" "ironclad/cipher/misty1" "ironclad/cipher/rc2" "ironclad/cipher/rc5" "ironclad/cipher/rc6" "ironclad/cipher/salsa20" "ironclad/cipher/seed" "ironclad/cipher/serpent" "ironclad/cipher/sm4" "ironclad/cipher/sosemanuk" "ironclad/cipher/square" "ironclad/cipher/tea" "ironclad/cipher/threefish" "ironclad/cipher/twofish" "ironclad/cipher/xchacha" "ironclad/cipher/xor" "ironclad/cipher/xsalsa20" "ironclad/cipher/xtea" "ironclad/ciphers" "ironclad/core" "ironclad/digest/adler32" "ironclad/digest/blake2" "ironclad/digest/blake2s" "ironclad/digest/crc24" "ironclad/digest/crc32" "ironclad/digest/groestl" "ironclad/digest/jh" "ironclad/digest/kupyna" "ironclad/digest/md2" "ironclad/digest/md4" "ironclad/digest/md5" "ironclad/digest/ripemd-128" "ironclad/digest/ripemd-160" "ironclad/digest/sha1" "ironclad/digest/sha256" "ironclad/digest/sha3" "ironclad/digest/sha512" "ironclad/digest/skein" "ironclad/digest/sm3" "ironclad/digest/streebog" "ironclad/digest/tiger" "ironclad/digest/tree-hash" "ironclad/digest/whirlpool" "ironclad/digests" "ironclad/kdf/argon2" "ironclad/kdf/bcrypt" "ironclad/kdf/hmac" "ironclad/kdf/password-hash" "ironclad/kdf/pkcs5" "ironclad/kdf/scrypt" "ironclad/kdfs" "ironclad/mac/blake2-mac" "ironclad/mac/blake2s-mac" "ironclad/mac/cmac" "ironclad/mac/gmac" "ironclad/mac/hmac" "ironclad/mac/poly1305" "ironclad/mac/siphash" "ironclad/mac/skein-mac" "ironclad/macs" "ironclad/prng/fortuna" "ironclad/prngs" "ironclad/public-key/curve25519" "ironclad/public-key/curve448" "ironclad/public-key/dsa" "ironclad/public-key/ed25519" "ironclad/public-key/ed448" "ironclad/public-key/elgamal" "ironclad/public-key/rsa" "ironclad/public-key/secp256k1" "ironclad/public-key/secp256r1" "ironclad/public-key/secp384r1" "ironclad/public-key/secp521r1" "ironclad/public-keys" "ironclad/tests" ];
-
-  description = "System lacks description";
-
-  deps = [ args."alexandria" args."bordeaux-threads" args."rt" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/ironclad/2021-10-20/ironclad-v0.56.tgz";
-    sha256 = "06jya7y8xlwak84akhp4qg9x6nyjrnnzqmzdigxc5a3c77mk3p6k";
-  };
-
-  packageName = "ironclad";
-
-  asdFilesToKeep = ["ironclad.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM ironclad DESCRIPTION System lacks description SHA256
-    06jya7y8xlwak84akhp4qg9x6nyjrnnzqmzdigxc5a3c77mk3p6k URL
-    http://beta.quicklisp.org/archive/ironclad/2021-10-20/ironclad-v0.56.tgz
-    MD5 3ea7bf7271864fd960d7e06a4e5aa9b7 NAME ironclad FILENAME ironclad DEPS
-    ((NAME alexandria FILENAME alexandria)
-     (NAME bordeaux-threads FILENAME bordeaux-threads) (NAME rt FILENAME rt))
-    DEPENDENCIES (alexandria bordeaux-threads rt) VERSION v0.56 SIBLINGS
-    (ironclad-text) PARASITES
-    (ironclad/aead/eax ironclad/aead/etm ironclad/aead/gcm ironclad/aeads
-     ironclad/cipher/aes ironclad/cipher/arcfour ironclad/cipher/aria
-     ironclad/cipher/blowfish ironclad/cipher/camellia ironclad/cipher/cast5
-     ironclad/cipher/chacha ironclad/cipher/des ironclad/cipher/idea
-     ironclad/cipher/kalyna ironclad/cipher/keystream
-     ironclad/cipher/kuznyechik ironclad/cipher/misty1 ironclad/cipher/rc2
-     ironclad/cipher/rc5 ironclad/cipher/rc6 ironclad/cipher/salsa20
-     ironclad/cipher/seed ironclad/cipher/serpent ironclad/cipher/sm4
-     ironclad/cipher/sosemanuk ironclad/cipher/square ironclad/cipher/tea
-     ironclad/cipher/threefish ironclad/cipher/twofish ironclad/cipher/xchacha
-     ironclad/cipher/xor ironclad/cipher/xsalsa20 ironclad/cipher/xtea
-     ironclad/ciphers ironclad/core ironclad/digest/adler32
-     ironclad/digest/blake2 ironclad/digest/blake2s ironclad/digest/crc24
-     ironclad/digest/crc32 ironclad/digest/groestl ironclad/digest/jh
-     ironclad/digest/kupyna ironclad/digest/md2 ironclad/digest/md4
-     ironclad/digest/md5 ironclad/digest/ripemd-128 ironclad/digest/ripemd-160
-     ironclad/digest/sha1 ironclad/digest/sha256 ironclad/digest/sha3
-     ironclad/digest/sha512 ironclad/digest/skein ironclad/digest/sm3
-     ironclad/digest/streebog ironclad/digest/tiger ironclad/digest/tree-hash
-     ironclad/digest/whirlpool ironclad/digests ironclad/kdf/argon2
-     ironclad/kdf/bcrypt ironclad/kdf/hmac ironclad/kdf/password-hash
-     ironclad/kdf/pkcs5 ironclad/kdf/scrypt ironclad/kdfs
-     ironclad/mac/blake2-mac ironclad/mac/blake2s-mac ironclad/mac/cmac
-     ironclad/mac/gmac ironclad/mac/hmac ironclad/mac/poly1305
-     ironclad/mac/siphash ironclad/mac/skein-mac ironclad/macs
-     ironclad/prng/fortuna ironclad/prngs ironclad/public-key/curve25519
-     ironclad/public-key/curve448 ironclad/public-key/dsa
-     ironclad/public-key/ed25519 ironclad/public-key/ed448
-     ironclad/public-key/elgamal ironclad/public-key/rsa
-     ironclad/public-key/secp256k1 ironclad/public-key/secp256r1
-     ironclad/public-key/secp384r1 ironclad/public-key/secp521r1
-     ironclad/public-keys ironclad/tests)) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/iterate.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/iterate.nix
deleted file mode 100644
index ac412031af64..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/iterate.nix
+++ /dev/null
@@ -1,29 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "iterate";
-  version = "release-b0f9a9c6-git";
-
-  parasites = [ "iterate/tests" ];
-
-  description = "Jonathan Amsterdam's iterator/gatherer/accumulator facility";
-
-  deps = [ ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/iterate/2021-05-31/iterate-release-b0f9a9c6-git.tgz";
-    sha256 = "1fqk0iaqg7xjwhdr8q05birlpwh4zvmlranmsmfps3wmldccc4ck";
-  };
-
-  packageName = "iterate";
-
-  asdFilesToKeep = ["iterate.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM iterate DESCRIPTION
-    Jonathan Amsterdam's iterator/gatherer/accumulator facility SHA256
-    1fqk0iaqg7xjwhdr8q05birlpwh4zvmlranmsmfps3wmldccc4ck URL
-    http://beta.quicklisp.org/archive/iterate/2021-05-31/iterate-release-b0f9a9c6-git.tgz
-    MD5 0b2661e9b8195f3e5891aa14601e5a69 NAME iterate FILENAME iterate DEPS NIL
-    DEPENDENCIES NIL VERSION release-b0f9a9c6-git SIBLINGS NIL PARASITES
-    (iterate/tests)) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/jonathan.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/jonathan.nix
deleted file mode 100644
index 3e8e74d9e2bb..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/jonathan.nix
+++ /dev/null
@@ -1,43 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "jonathan";
-  version = "20200925-git";
-
-  description = "High performance JSON encoder and decoder. Currently support: SBCL, CCL.";
-
-  deps = [ args."alexandria" args."babel" args."cffi" args."cffi-grovel" args."cffi-toolchain" args."cl-annot" args."cl-ppcre" args."cl-syntax" args."cl-syntax-annot" args."fast-io" args."named-readtables" args."proc-parse" args."static-vectors" args."trivial-features" args."trivial-gray-streams" args."trivial-types" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/jonathan/2020-09-25/jonathan-20200925-git.tgz";
-    sha256 = "1y5v3g351nsy7px0frdr2asmcy0lyfbj73ic1f5yf4q65hrgvryx";
-  };
-
-  packageName = "jonathan";
-
-  asdFilesToKeep = ["jonathan.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM jonathan DESCRIPTION
-    High performance JSON encoder and decoder. Currently support: SBCL, CCL.
-    SHA256 1y5v3g351nsy7px0frdr2asmcy0lyfbj73ic1f5yf4q65hrgvryx URL
-    http://beta.quicklisp.org/archive/jonathan/2020-09-25/jonathan-20200925-git.tgz
-    MD5 27cad3c107544f587f9f33295c10d81e NAME jonathan FILENAME jonathan DEPS
-    ((NAME alexandria FILENAME alexandria) (NAME babel FILENAME babel)
-     (NAME cffi FILENAME cffi) (NAME cffi-grovel FILENAME cffi-grovel)
-     (NAME cffi-toolchain FILENAME cffi-toolchain)
-     (NAME cl-annot FILENAME cl-annot) (NAME cl-ppcre FILENAME cl-ppcre)
-     (NAME cl-syntax FILENAME cl-syntax)
-     (NAME cl-syntax-annot FILENAME cl-syntax-annot)
-     (NAME fast-io FILENAME fast-io)
-     (NAME named-readtables FILENAME named-readtables)
-     (NAME proc-parse FILENAME proc-parse)
-     (NAME static-vectors FILENAME static-vectors)
-     (NAME trivial-features FILENAME trivial-features)
-     (NAME trivial-gray-streams FILENAME trivial-gray-streams)
-     (NAME trivial-types FILENAME trivial-types))
-    DEPENDENCIES
-    (alexandria babel cffi cffi-grovel cffi-toolchain cl-annot cl-ppcre
-     cl-syntax cl-syntax-annot fast-io named-readtables proc-parse
-     static-vectors trivial-features trivial-gray-streams trivial-types)
-    VERSION 20200925-git SIBLINGS (jonathan-test) PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/jpl-queues.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/jpl-queues.nix
deleted file mode 100644
index 0100a58a44da..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/jpl-queues.nix
+++ /dev/null
@@ -1,32 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "jpl-queues";
-  version = "0.1";
-
-  description = "A few different kinds of queues, with optional
-multithreading synchronization.";
-
-  deps = [ args."alexandria" args."bordeaux-threads" args."jpl-util" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/jpl-queues/2010-10-06/jpl-queues-0.1.tgz";
-    sha256 = "1wvvv7j117h9a42qaj1g4fh4mji28xqs7s60rn6d11gk9jl76h96";
-  };
-
-  packageName = "jpl-queues";
-
-  asdFilesToKeep = ["jpl-queues.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM jpl-queues DESCRIPTION A few different kinds of queues, with optional
-multithreading synchronization.
-    SHA256 1wvvv7j117h9a42qaj1g4fh4mji28xqs7s60rn6d11gk9jl76h96 URL
-    http://beta.quicklisp.org/archive/jpl-queues/2010-10-06/jpl-queues-0.1.tgz
-    MD5 7c3d14c955db0a5c8ece2b9409333ce0 NAME jpl-queues FILENAME jpl-queues
-    DEPS
-    ((NAME alexandria FILENAME alexandria)
-     (NAME bordeaux-threads FILENAME bordeaux-threads)
-     (NAME jpl-util FILENAME jpl-util))
-    DEPENDENCIES (alexandria bordeaux-threads jpl-util) VERSION 0.1 SIBLINGS
-    NIL PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/jpl-util.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/jpl-util.nix
deleted file mode 100644
index d05ddd8527ef..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/jpl-util.nix
+++ /dev/null
@@ -1,25 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "jpl-util";
-  version = "cl-20151031-git";
-
-  description = "Sundry utilities for J.P. Larocque.";
-
-  deps = [ ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/cl-jpl-util/2015-10-31/cl-jpl-util-20151031-git.tgz";
-    sha256 = "1a3sfamgrqgsf0ql3fkbpmjbs837v1b3nxqxp4mkisp6yxanmhzx";
-  };
-
-  packageName = "jpl-util";
-
-  asdFilesToKeep = ["jpl-util.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM jpl-util DESCRIPTION Sundry utilities for J.P. Larocque. SHA256
-    1a3sfamgrqgsf0ql3fkbpmjbs837v1b3nxqxp4mkisp6yxanmhzx URL
-    http://beta.quicklisp.org/archive/cl-jpl-util/2015-10-31/cl-jpl-util-20151031-git.tgz
-    MD5 e294bedace729724873e7633b8265a00 NAME jpl-util FILENAME jpl-util DEPS
-    NIL DEPENDENCIES NIL VERSION cl-20151031-git SIBLINGS NIL PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/jsown.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/jsown.nix
deleted file mode 100644
index 08dadf8ea3ab..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/jsown.nix
+++ /dev/null
@@ -1,26 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "jsown";
-  version = "20200218-git";
-
-  description = "Fast JSON parsing library.  Mainly geared torwards fetching only a few keys of many objects, but efficient for other types of content too";
-
-  deps = [ ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/jsown/2020-02-18/jsown-20200218-git.tgz";
-    sha256 = "10cn1fkznyq73vxwy95wsd36yfiiakmk278lv7mzzsyqc1jrn2hj";
-  };
-
-  packageName = "jsown";
-
-  asdFilesToKeep = ["jsown.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM jsown DESCRIPTION
-    Fast JSON parsing library.  Mainly geared torwards fetching only a few keys of many objects, but efficient for other types of content too
-    SHA256 10cn1fkznyq73vxwy95wsd36yfiiakmk278lv7mzzsyqc1jrn2hj URL
-    http://beta.quicklisp.org/archive/jsown/2020-02-18/jsown-20200218-git.tgz
-    MD5 ecf8bfcc2a2ccbab9baddca6592b34ba NAME jsown FILENAME jsown DEPS NIL
-    DEPENDENCIES NIL VERSION 20200218-git SIBLINGS (jsown-tests) PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/kmrcl.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/kmrcl.nix
deleted file mode 100644
index 87358d518fbc..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/kmrcl.nix
+++ /dev/null
@@ -1,28 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "kmrcl";
-  version = "20201016-git";
-
-  parasites = [ "kmrcl/test" ];
-
-  description = "System lacks description";
-
-  deps = [ args."rt" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/kmrcl/2020-10-16/kmrcl-20201016-git.tgz";
-    sha256 = "0i0k61385hrzbg15qs1wprz6sis7mx2abxv1hqcc2f53rqm9b2hf";
-  };
-
-  packageName = "kmrcl";
-
-  asdFilesToKeep = ["kmrcl.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM kmrcl DESCRIPTION System lacks description SHA256
-    0i0k61385hrzbg15qs1wprz6sis7mx2abxv1hqcc2f53rqm9b2hf URL
-    http://beta.quicklisp.org/archive/kmrcl/2020-10-16/kmrcl-20201016-git.tgz
-    MD5 f86bc410907f748c3c453469702755b8 NAME kmrcl FILENAME kmrcl DEPS
-    ((NAME rt FILENAME rt)) DEPENDENCIES (rt) VERSION 20201016-git SIBLINGS NIL
-    PARASITES (kmrcl/test)) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/lack-component.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/lack-component.nix
deleted file mode 100644
index ce77c0cf8af2..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/lack-component.nix
+++ /dev/null
@@ -1,35 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "lack-component";
-  version = "lack-20211209-git";
-
-  description = "System lacks description";
-
-  deps = [ ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/lack/2021-12-09/lack-20211209-git.tgz";
-    sha256 = "0vd36hjcf98s9slkm6rmgsa7r10wvzl9s4xhfmcwh7qv7jxdgkhg";
-  };
-
-  packageName = "lack-component";
-
-  asdFilesToKeep = ["lack-component.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM lack-component DESCRIPTION System lacks description SHA256
-    0vd36hjcf98s9slkm6rmgsa7r10wvzl9s4xhfmcwh7qv7jxdgkhg URL
-    http://beta.quicklisp.org/archive/lack/2021-12-09/lack-20211209-git.tgz MD5
-    610b1aea0280193d6f125aa1317a2d79 NAME lack-component FILENAME
-    lack-component DEPS NIL DEPENDENCIES NIL VERSION lack-20211209-git SIBLINGS
-    (lack-app-directory lack-app-file lack-middleware-accesslog
-     lack-middleware-auth-basic lack-middleware-backtrace lack-middleware-csrf
-     lack-middleware-mount lack-middleware-session lack-middleware-static
-     lack-request lack-response lack-session-store-dbi lack-session-store-redis
-     lack-test lack-util-writer-stream lack-util lack t-lack-component
-     t-lack-middleware-accesslog t-lack-middleware-auth-basic
-     t-lack-middleware-backtrace t-lack-middleware-csrf t-lack-middleware-mount
-     t-lack-middleware-session t-lack-middleware-static t-lack-request
-     t-lack-session-store-dbi t-lack-session-store-redis t-lack-util t-lack)
-    PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/lack-middleware-backtrace.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/lack-middleware-backtrace.nix
deleted file mode 100644
index eee9c9430fa9..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/lack-middleware-backtrace.nix
+++ /dev/null
@@ -1,36 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "lack-middleware-backtrace";
-  version = "lack-20211209-git";
-
-  description = "System lacks description";
-
-  deps = [ args."uiop" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/lack/2021-12-09/lack-20211209-git.tgz";
-    sha256 = "0vd36hjcf98s9slkm6rmgsa7r10wvzl9s4xhfmcwh7qv7jxdgkhg";
-  };
-
-  packageName = "lack-middleware-backtrace";
-
-  asdFilesToKeep = ["lack-middleware-backtrace.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM lack-middleware-backtrace DESCRIPTION System lacks description
-    SHA256 0vd36hjcf98s9slkm6rmgsa7r10wvzl9s4xhfmcwh7qv7jxdgkhg URL
-    http://beta.quicklisp.org/archive/lack/2021-12-09/lack-20211209-git.tgz MD5
-    610b1aea0280193d6f125aa1317a2d79 NAME lack-middleware-backtrace FILENAME
-    lack-middleware-backtrace DEPS ((NAME uiop FILENAME uiop)) DEPENDENCIES
-    (uiop) VERSION lack-20211209-git SIBLINGS
-    (lack-app-directory lack-app-file lack-component lack-middleware-accesslog
-     lack-middleware-auth-basic lack-middleware-csrf lack-middleware-mount
-     lack-middleware-session lack-middleware-static lack-request lack-response
-     lack-session-store-dbi lack-session-store-redis lack-test
-     lack-util-writer-stream lack-util lack t-lack-component
-     t-lack-middleware-accesslog t-lack-middleware-auth-basic
-     t-lack-middleware-backtrace t-lack-middleware-csrf t-lack-middleware-mount
-     t-lack-middleware-session t-lack-middleware-static t-lack-request
-     t-lack-session-store-dbi t-lack-session-store-redis t-lack-util t-lack)
-    PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/lack-util.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/lack-util.nix
deleted file mode 100644
index 422850c8b36f..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/lack-util.nix
+++ /dev/null
@@ -1,39 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "lack-util";
-  version = "lack-20211209-git";
-
-  description = "System lacks description";
-
-  deps = [ args."alexandria" args."bordeaux-threads" args."ironclad" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/lack/2021-12-09/lack-20211209-git.tgz";
-    sha256 = "0vd36hjcf98s9slkm6rmgsa7r10wvzl9s4xhfmcwh7qv7jxdgkhg";
-  };
-
-  packageName = "lack-util";
-
-  asdFilesToKeep = ["lack-util.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM lack-util DESCRIPTION System lacks description SHA256
-    0vd36hjcf98s9slkm6rmgsa7r10wvzl9s4xhfmcwh7qv7jxdgkhg URL
-    http://beta.quicklisp.org/archive/lack/2021-12-09/lack-20211209-git.tgz MD5
-    610b1aea0280193d6f125aa1317a2d79 NAME lack-util FILENAME lack-util DEPS
-    ((NAME alexandria FILENAME alexandria)
-     (NAME bordeaux-threads FILENAME bordeaux-threads)
-     (NAME ironclad FILENAME ironclad))
-    DEPENDENCIES (alexandria bordeaux-threads ironclad) VERSION
-    lack-20211209-git SIBLINGS
-    (lack-app-directory lack-app-file lack-component lack-middleware-accesslog
-     lack-middleware-auth-basic lack-middleware-backtrace lack-middleware-csrf
-     lack-middleware-mount lack-middleware-session lack-middleware-static
-     lack-request lack-response lack-session-store-dbi lack-session-store-redis
-     lack-test lack-util-writer-stream lack t-lack-component
-     t-lack-middleware-accesslog t-lack-middleware-auth-basic
-     t-lack-middleware-backtrace t-lack-middleware-csrf t-lack-middleware-mount
-     t-lack-middleware-session t-lack-middleware-static t-lack-request
-     t-lack-session-store-dbi t-lack-session-store-redis t-lack-util t-lack)
-    PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/lack.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/lack.nix
deleted file mode 100644
index 723bc52d9782..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/lack.nix
+++ /dev/null
@@ -1,42 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "lack";
-  version = "20211209-git";
-
-  description = "A minimal Clack";
-
-  deps = [ args."alexandria" args."bordeaux-threads" args."ironclad" args."lack-component" args."lack-util" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/lack/2021-12-09/lack-20211209-git.tgz";
-    sha256 = "0vd36hjcf98s9slkm6rmgsa7r10wvzl9s4xhfmcwh7qv7jxdgkhg";
-  };
-
-  packageName = "lack";
-
-  asdFilesToKeep = ["lack.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM lack DESCRIPTION A minimal Clack SHA256
-    0vd36hjcf98s9slkm6rmgsa7r10wvzl9s4xhfmcwh7qv7jxdgkhg URL
-    http://beta.quicklisp.org/archive/lack/2021-12-09/lack-20211209-git.tgz MD5
-    610b1aea0280193d6f125aa1317a2d79 NAME lack FILENAME lack DEPS
-    ((NAME alexandria FILENAME alexandria)
-     (NAME bordeaux-threads FILENAME bordeaux-threads)
-     (NAME ironclad FILENAME ironclad)
-     (NAME lack-component FILENAME lack-component)
-     (NAME lack-util FILENAME lack-util))
-    DEPENDENCIES
-    (alexandria bordeaux-threads ironclad lack-component lack-util) VERSION
-    20211209-git SIBLINGS
-    (lack-app-directory lack-app-file lack-component lack-middleware-accesslog
-     lack-middleware-auth-basic lack-middleware-backtrace lack-middleware-csrf
-     lack-middleware-mount lack-middleware-session lack-middleware-static
-     lack-request lack-response lack-session-store-dbi lack-session-store-redis
-     lack-test lack-util-writer-stream lack-util t-lack-component
-     t-lack-middleware-accesslog t-lack-middleware-auth-basic
-     t-lack-middleware-backtrace t-lack-middleware-csrf t-lack-middleware-mount
-     t-lack-middleware-session t-lack-middleware-static t-lack-request
-     t-lack-session-store-dbi t-lack-session-store-redis t-lack-util t-lack)
-    PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/lambda-fiddle.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/lambda-fiddle.nix
deleted file mode 100644
index 62adaf2bca44..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/lambda-fiddle.nix
+++ /dev/null
@@ -1,27 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "lambda-fiddle";
-  version = "20190710-git";
-
-  description = "A collection of functions to process lambda-lists.";
-
-  deps = [ ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/lambda-fiddle/2019-07-10/lambda-fiddle-20190710-git.tgz";
-    sha256 = "0v4qjpp9fq9rlxhr5f6mjs5f076xrjk19rl6qgp1ap1ykcrx8k4j";
-  };
-
-  packageName = "lambda-fiddle";
-
-  asdFilesToKeep = ["lambda-fiddle.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM lambda-fiddle DESCRIPTION
-    A collection of functions to process lambda-lists. SHA256
-    0v4qjpp9fq9rlxhr5f6mjs5f076xrjk19rl6qgp1ap1ykcrx8k4j URL
-    http://beta.quicklisp.org/archive/lambda-fiddle/2019-07-10/lambda-fiddle-20190710-git.tgz
-    MD5 78f68f144ace9cb8f634ac14b3414e5e NAME lambda-fiddle FILENAME
-    lambda-fiddle DEPS NIL DEPENDENCIES NIL VERSION 20190710-git SIBLINGS NIL
-    PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/legit.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/legit.nix
deleted file mode 100644
index c98640931990..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/legit.nix
+++ /dev/null
@@ -1,35 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "legit";
-  version = "20190710-git";
-
-  description = "CL interface to the GIT binary.";
-
-  deps = [ args."alexandria" args."bordeaux-threads" args."cl-ppcre" args."documentation-utils" args."lambda-fiddle" args."simple-inferiors" args."trivial-indent" args."uiop" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/legit/2019-07-10/legit-20190710-git.tgz";
-    sha256 = "0g7cn50qvivsn0w9yszqw2qh22jsj60067pmg5pvwsjm03xdl9s9";
-  };
-
-  packageName = "legit";
-
-  asdFilesToKeep = ["legit.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM legit DESCRIPTION CL interface to the GIT binary. SHA256
-    0g7cn50qvivsn0w9yszqw2qh22jsj60067pmg5pvwsjm03xdl9s9 URL
-    http://beta.quicklisp.org/archive/legit/2019-07-10/legit-20190710-git.tgz
-    MD5 9b380fc23d4bab086df8a0e4a598457a NAME legit FILENAME legit DEPS
-    ((NAME alexandria FILENAME alexandria)
-     (NAME bordeaux-threads FILENAME bordeaux-threads)
-     (NAME cl-ppcre FILENAME cl-ppcre)
-     (NAME documentation-utils FILENAME documentation-utils)
-     (NAME lambda-fiddle FILENAME lambda-fiddle)
-     (NAME simple-inferiors FILENAME simple-inferiors)
-     (NAME trivial-indent FILENAME trivial-indent) (NAME uiop FILENAME uiop))
-    DEPENDENCIES
-    (alexandria bordeaux-threads cl-ppcre documentation-utils lambda-fiddle
-     simple-inferiors trivial-indent uiop)
-    VERSION 20190710-git SIBLINGS NIL PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/let-plus.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/let-plus.nix
deleted file mode 100644
index d7032122ee78..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/let-plus.nix
+++ /dev/null
@@ -1,30 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "let-plus";
-  version = "20191130-git";
-
-  parasites = [ "let-plus/tests" ];
-
-  description = "Destructuring extension of LET*.";
-
-  deps = [ args."alexandria" args."anaphora" args."lift" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/let-plus/2019-11-30/let-plus-20191130-git.tgz";
-    sha256 = "0zj0fgb7lvczgpz4jq8q851p77kma7ikn7hd2jk2c37iv4nmz29p";
-  };
-
-  packageName = "let-plus";
-
-  asdFilesToKeep = ["let-plus.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM let-plus DESCRIPTION Destructuring extension of LET*. SHA256
-    0zj0fgb7lvczgpz4jq8q851p77kma7ikn7hd2jk2c37iv4nmz29p URL
-    http://beta.quicklisp.org/archive/let-plus/2019-11-30/let-plus-20191130-git.tgz
-    MD5 1b8d1660ed67852ea31cad44a6fc15d0 NAME let-plus FILENAME let-plus DEPS
-    ((NAME alexandria FILENAME alexandria) (NAME anaphora FILENAME anaphora)
-     (NAME lift FILENAME lift))
-    DEPENDENCIES (alexandria anaphora lift) VERSION 20191130-git SIBLINGS NIL
-    PARASITES (let-plus/tests)) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/lev.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/lev.nix
deleted file mode 100644
index 13cb18cfc7f0..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/lev.nix
+++ /dev/null
@@ -1,29 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "lev";
-  version = "20150505-git";
-
-  description = "libev bindings for Common Lisp";
-
-  deps = [ args."alexandria" args."babel" args."cffi" args."trivial-features" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/lev/2015-05-05/lev-20150505-git.tgz";
-    sha256 = "0lkkzb221ks4f0qjgh6pr5lyvb4884a87p96ir4m36x411pyk5xl";
-  };
-
-  packageName = "lev";
-
-  asdFilesToKeep = ["lev.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM lev DESCRIPTION libev bindings for Common Lisp SHA256
-    0lkkzb221ks4f0qjgh6pr5lyvb4884a87p96ir4m36x411pyk5xl URL
-    http://beta.quicklisp.org/archive/lev/2015-05-05/lev-20150505-git.tgz MD5
-    10f340f7500beb98b5c0d4a9876131fb NAME lev FILENAME lev DEPS
-    ((NAME alexandria FILENAME alexandria) (NAME babel FILENAME babel)
-     (NAME cffi FILENAME cffi)
-     (NAME trivial-features FILENAME trivial-features))
-    DEPENDENCIES (alexandria babel cffi trivial-features) VERSION 20150505-git
-    SIBLINGS NIL PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/lfarm-client.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/lfarm-client.nix
deleted file mode 100644
index 113766e11ba1..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/lfarm-client.nix
+++ /dev/null
@@ -1,42 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "lfarm-client";
-  version = "lfarm-20150608-git";
-
-  description = "Client component of lfarm, a library for distributing work across machines.";
-
-  deps = [ args."alexandria" args."bordeaux-threads" args."cl-store" args."flexi-streams" args."lfarm-common" args."lparallel" args."split-sequence" args."trivial-gray-streams" args."usocket" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/lfarm/2015-06-08/lfarm-20150608-git.tgz";
-    sha256 = "1rkjcfam4601yczs13pi2qgi5jql0c150dxja53hkcnqhkyqgl66";
-  };
-
-  packageName = "lfarm-client";
-
-  asdFilesToKeep = ["lfarm-client.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM lfarm-client DESCRIPTION
-    Client component of lfarm, a library for distributing work across machines.
-    SHA256 1rkjcfam4601yczs13pi2qgi5jql0c150dxja53hkcnqhkyqgl66 URL
-    http://beta.quicklisp.org/archive/lfarm/2015-06-08/lfarm-20150608-git.tgz
-    MD5 4cc91df44a932b3175a1eabf73d6e42d NAME lfarm-client FILENAME
-    lfarm-client DEPS
-    ((NAME alexandria FILENAME alexandria)
-     (NAME bordeaux-threads FILENAME bordeaux-threads)
-     (NAME cl-store FILENAME cl-store)
-     (NAME flexi-streams FILENAME flexi-streams)
-     (NAME lfarm-common FILENAME lfarm-common)
-     (NAME lparallel FILENAME lparallel)
-     (NAME split-sequence FILENAME split-sequence)
-     (NAME trivial-gray-streams FILENAME trivial-gray-streams)
-     (NAME usocket FILENAME usocket))
-    DEPENDENCIES
-    (alexandria bordeaux-threads cl-store flexi-streams lfarm-common lparallel
-     split-sequence trivial-gray-streams usocket)
-    VERSION lfarm-20150608-git SIBLINGS
-    (lfarm-admin lfarm-common lfarm-gss lfarm-launcher lfarm-server lfarm-ssl
-     lfarm-test)
-    PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/lfarm-common.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/lfarm-common.nix
deleted file mode 100644
index 5e0170a5867d..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/lfarm-common.nix
+++ /dev/null
@@ -1,42 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "lfarm-common";
-  version = "lfarm-20150608-git";
-
-  description = "(private) Common components of lfarm, a library for distributing
-work across machines.";
-
-  deps = [ args."alexandria" args."bordeaux-threads" args."cl-store" args."flexi-streams" args."split-sequence" args."trivial-gray-streams" args."usocket" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/lfarm/2015-06-08/lfarm-20150608-git.tgz";
-    sha256 = "1rkjcfam4601yczs13pi2qgi5jql0c150dxja53hkcnqhkyqgl66";
-  };
-
-  packageName = "lfarm-common";
-
-  asdFilesToKeep = ["lfarm-common.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM lfarm-common DESCRIPTION
-    (private) Common components of lfarm, a library for distributing
-work across machines.
-    SHA256 1rkjcfam4601yczs13pi2qgi5jql0c150dxja53hkcnqhkyqgl66 URL
-    http://beta.quicklisp.org/archive/lfarm/2015-06-08/lfarm-20150608-git.tgz
-    MD5 4cc91df44a932b3175a1eabf73d6e42d NAME lfarm-common FILENAME
-    lfarm-common DEPS
-    ((NAME alexandria FILENAME alexandria)
-     (NAME bordeaux-threads FILENAME bordeaux-threads)
-     (NAME cl-store FILENAME cl-store)
-     (NAME flexi-streams FILENAME flexi-streams)
-     (NAME split-sequence FILENAME split-sequence)
-     (NAME trivial-gray-streams FILENAME trivial-gray-streams)
-     (NAME usocket FILENAME usocket))
-    DEPENDENCIES
-    (alexandria bordeaux-threads cl-store flexi-streams split-sequence
-     trivial-gray-streams usocket)
-    VERSION lfarm-20150608-git SIBLINGS
-    (lfarm-admin lfarm-client lfarm-gss lfarm-launcher lfarm-server lfarm-ssl
-     lfarm-test)
-    PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/lfarm-server.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/lfarm-server.nix
deleted file mode 100644
index 5bef53f9f85e..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/lfarm-server.nix
+++ /dev/null
@@ -1,41 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "lfarm-server";
-  version = "lfarm-20150608-git";
-
-  description = "Server component of lfarm, a library for distributing work across machines.";
-
-  deps = [ args."alexandria" args."bordeaux-threads" args."cl-store" args."flexi-streams" args."lfarm-common" args."split-sequence" args."trivial-gray-streams" args."usocket" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/lfarm/2015-06-08/lfarm-20150608-git.tgz";
-    sha256 = "1rkjcfam4601yczs13pi2qgi5jql0c150dxja53hkcnqhkyqgl66";
-  };
-
-  packageName = "lfarm-server";
-
-  asdFilesToKeep = ["lfarm-server.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM lfarm-server DESCRIPTION
-    Server component of lfarm, a library for distributing work across machines.
-    SHA256 1rkjcfam4601yczs13pi2qgi5jql0c150dxja53hkcnqhkyqgl66 URL
-    http://beta.quicklisp.org/archive/lfarm/2015-06-08/lfarm-20150608-git.tgz
-    MD5 4cc91df44a932b3175a1eabf73d6e42d NAME lfarm-server FILENAME
-    lfarm-server DEPS
-    ((NAME alexandria FILENAME alexandria)
-     (NAME bordeaux-threads FILENAME bordeaux-threads)
-     (NAME cl-store FILENAME cl-store)
-     (NAME flexi-streams FILENAME flexi-streams)
-     (NAME lfarm-common FILENAME lfarm-common)
-     (NAME split-sequence FILENAME split-sequence)
-     (NAME trivial-gray-streams FILENAME trivial-gray-streams)
-     (NAME usocket FILENAME usocket))
-    DEPENDENCIES
-    (alexandria bordeaux-threads cl-store flexi-streams lfarm-common
-     split-sequence trivial-gray-streams usocket)
-    VERSION lfarm-20150608-git SIBLINGS
-    (lfarm-admin lfarm-client lfarm-common lfarm-gss lfarm-launcher lfarm-ssl
-     lfarm-test)
-    PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/lfarm-ssl.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/lfarm-ssl.nix
deleted file mode 100644
index dbe2b527e3a7..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/lfarm-ssl.nix
+++ /dev/null
@@ -1,43 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "lfarm-ssl";
-  version = "lfarm-20150608-git";
-
-  description = "SSL support for lfarm";
-
-  deps = [ args."alexandria" args."babel" args."bordeaux-threads" args."cffi" args."cl_plus_ssl" args."cl-store" args."flexi-streams" args."lfarm-common" args."split-sequence" args."trivial-features" args."trivial-garbage" args."trivial-gray-streams" args."usocket" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/lfarm/2015-06-08/lfarm-20150608-git.tgz";
-    sha256 = "1rkjcfam4601yczs13pi2qgi5jql0c150dxja53hkcnqhkyqgl66";
-  };
-
-  packageName = "lfarm-ssl";
-
-  asdFilesToKeep = ["lfarm-ssl.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM lfarm-ssl DESCRIPTION SSL support for lfarm SHA256
-    1rkjcfam4601yczs13pi2qgi5jql0c150dxja53hkcnqhkyqgl66 URL
-    http://beta.quicklisp.org/archive/lfarm/2015-06-08/lfarm-20150608-git.tgz
-    MD5 4cc91df44a932b3175a1eabf73d6e42d NAME lfarm-ssl FILENAME lfarm-ssl DEPS
-    ((NAME alexandria FILENAME alexandria) (NAME babel FILENAME babel)
-     (NAME bordeaux-threads FILENAME bordeaux-threads)
-     (NAME cffi FILENAME cffi) (NAME cl+ssl FILENAME cl_plus_ssl)
-     (NAME cl-store FILENAME cl-store)
-     (NAME flexi-streams FILENAME flexi-streams)
-     (NAME lfarm-common FILENAME lfarm-common)
-     (NAME split-sequence FILENAME split-sequence)
-     (NAME trivial-features FILENAME trivial-features)
-     (NAME trivial-garbage FILENAME trivial-garbage)
-     (NAME trivial-gray-streams FILENAME trivial-gray-streams)
-     (NAME usocket FILENAME usocket))
-    DEPENDENCIES
-    (alexandria babel bordeaux-threads cffi cl+ssl cl-store flexi-streams
-     lfarm-common split-sequence trivial-features trivial-garbage
-     trivial-gray-streams usocket)
-    VERSION lfarm-20150608-git SIBLINGS
-    (lfarm-admin lfarm-client lfarm-common lfarm-gss lfarm-launcher
-     lfarm-server lfarm-test)
-    PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/lift.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/lift.nix
deleted file mode 100644
index f422f5ec6b22..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/lift.nix
+++ /dev/null
@@ -1,26 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "lift";
-  version = "20211209-git";
-
-  description = "LIsp Framework for Testing";
-
-  deps = [ ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/lift/2021-12-09/lift-20211209-git.tgz";
-    sha256 = "1r3i1gi2kggxbvh6mk58cddp5mi9kh7v23gd3z5q70w7cy69iiy7";
-  };
-
-  packageName = "lift";
-
-  asdFilesToKeep = ["lift.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM lift DESCRIPTION LIsp Framework for Testing SHA256
-    1r3i1gi2kggxbvh6mk58cddp5mi9kh7v23gd3z5q70w7cy69iiy7 URL
-    http://beta.quicklisp.org/archive/lift/2021-12-09/lift-20211209-git.tgz MD5
-    b98c58658dba0b84a034aa1f0f68dcc9 NAME lift FILENAME lift DEPS NIL
-    DEPENDENCIES NIL VERSION 20211209-git SIBLINGS
-    (lift-documentation lift-test) PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/lisp-binary.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/lisp-binary.nix
deleted file mode 100644
index ae18bc99ef2e..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/lisp-binary.nix
+++ /dev/null
@@ -1,37 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "lisp-binary";
-  version = "20210411-git";
-
-  description = "Declare binary formats as structs and then read and write them.";
-
-  deps = [ args."alexandria" args."babel" args."cffi" args."closer-mop" args."flexi-streams" args."iterate" args."moptilities" args."quasiquote-2_dot_0" args."trivial-features" args."trivial-gray-streams" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/lisp-binary/2021-04-11/lisp-binary-20210411-git.tgz";
-    sha256 = "1sbapl8qla4xb8wcix9yxpijkbk1bpybhay7ncb3z2im7r2kzsnb";
-  };
-
-  packageName = "lisp-binary";
-
-  asdFilesToKeep = ["lisp-binary.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM lisp-binary DESCRIPTION
-    Declare binary formats as structs and then read and write them. SHA256
-    1sbapl8qla4xb8wcix9yxpijkbk1bpybhay7ncb3z2im7r2kzsnb URL
-    http://beta.quicklisp.org/archive/lisp-binary/2021-04-11/lisp-binary-20210411-git.tgz
-    MD5 29d85f01a1cb17742164bacae940d29c NAME lisp-binary FILENAME lisp-binary
-    DEPS
-    ((NAME alexandria FILENAME alexandria) (NAME babel FILENAME babel)
-     (NAME cffi FILENAME cffi) (NAME closer-mop FILENAME closer-mop)
-     (NAME flexi-streams FILENAME flexi-streams)
-     (NAME iterate FILENAME iterate) (NAME moptilities FILENAME moptilities)
-     (NAME quasiquote-2.0 FILENAME quasiquote-2_dot_0)
-     (NAME trivial-features FILENAME trivial-features)
-     (NAME trivial-gray-streams FILENAME trivial-gray-streams))
-    DEPENDENCIES
-    (alexandria babel cffi closer-mop flexi-streams iterate moptilities
-     quasiquote-2.0 trivial-features trivial-gray-streams)
-    VERSION 20210411-git SIBLINGS (lisp-binary-test) PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/lisp-namespace.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/lisp-namespace.nix
deleted file mode 100644
index 510bf4965b96..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/lisp-namespace.nix
+++ /dev/null
@@ -1,28 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "lisp-namespace";
-  version = "20211020-git";
-
-  description = "Provides LISP-N --- extensible namespaces in Common Lisp.";
-
-  deps = [ args."alexandria" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/lisp-namespace/2021-10-20/lisp-namespace-20211020-git.tgz";
-    sha256 = "1vw7zxzhlxqjnas3cxk0f58hxvlvki78vbqsabj6f3n1rq6yx7b7";
-  };
-
-  packageName = "lisp-namespace";
-
-  asdFilesToKeep = ["lisp-namespace.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM lisp-namespace DESCRIPTION
-    Provides LISP-N --- extensible namespaces in Common Lisp. SHA256
-    1vw7zxzhlxqjnas3cxk0f58hxvlvki78vbqsabj6f3n1rq6yx7b7 URL
-    http://beta.quicklisp.org/archive/lisp-namespace/2021-10-20/lisp-namespace-20211020-git.tgz
-    MD5 71d02a1704c93281028316e96ecaead2 NAME lisp-namespace FILENAME
-    lisp-namespace DEPS ((NAME alexandria FILENAME alexandria)) DEPENDENCIES
-    (alexandria) VERSION 20211020-git SIBLINGS (lisp-namespace.test) PARASITES
-    NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/lisp-stat.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/lisp-stat.nix
deleted file mode 100644
index e7112f430864..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/lisp-stat.nix
+++ /dev/null
@@ -1,49 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "lisp-stat";
-  version = "20210411-git";
-
-  parasites = [ "lisp-stat/rdata" ];
-
-  description = "A statistical computing environment for Common Lisp";
-
-  deps = [ args."alexandria" args."anaphora" args."array-operations" args."cl-ascii-table" args."cl-csv" args."cl-interpol" args."cl-ppcre" args."cl-semver" args."cl-unicode" args."data-frame" args."dexador" args."dfio" args."esrap" args."flexi-streams" args."iterate" args."let-plus" args."make-hash" args."named-readtables" args."num-utils" args."select" args."split-sequence" args."trivial-with-current-source-form" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/lisp-stat/2021-04-11/lisp-stat-20210411-git.tgz";
-    sha256 = "110cfj1svn9m9xn6l8p5z88knp0idyf0zcbnwi9rrgxssvaiwncg";
-  };
-
-  packageName = "lisp-stat";
-
-  asdFilesToKeep = ["lisp-stat.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM lisp-stat DESCRIPTION
-    A statistical computing environment for Common Lisp SHA256
-    110cfj1svn9m9xn6l8p5z88knp0idyf0zcbnwi9rrgxssvaiwncg URL
-    http://beta.quicklisp.org/archive/lisp-stat/2021-04-11/lisp-stat-20210411-git.tgz
-    MD5 766777ed3ba44a0835fc02c5b1f13970 NAME lisp-stat FILENAME lisp-stat DEPS
-    ((NAME alexandria FILENAME alexandria) (NAME anaphora FILENAME anaphora)
-     (NAME array-operations FILENAME array-operations)
-     (NAME cl-ascii-table FILENAME cl-ascii-table)
-     (NAME cl-csv FILENAME cl-csv) (NAME cl-interpol FILENAME cl-interpol)
-     (NAME cl-ppcre FILENAME cl-ppcre) (NAME cl-semver FILENAME cl-semver)
-     (NAME cl-unicode FILENAME cl-unicode)
-     (NAME data-frame FILENAME data-frame) (NAME dexador FILENAME dexador)
-     (NAME dfio FILENAME dfio) (NAME esrap FILENAME esrap)
-     (NAME flexi-streams FILENAME flexi-streams)
-     (NAME iterate FILENAME iterate) (NAME let-plus FILENAME let-plus)
-     (NAME make-hash FILENAME make-hash)
-     (NAME named-readtables FILENAME named-readtables)
-     (NAME num-utils FILENAME num-utils) (NAME select FILENAME select)
-     (NAME split-sequence FILENAME split-sequence)
-     (NAME trivial-with-current-source-form FILENAME
-      trivial-with-current-source-form))
-    DEPENDENCIES
-    (alexandria anaphora array-operations cl-ascii-table cl-csv cl-interpol
-     cl-ppcre cl-semver cl-unicode data-frame dexador dfio esrap flexi-streams
-     iterate let-plus make-hash named-readtables num-utils select
-     split-sequence trivial-with-current-source-form)
-    VERSION 20210411-git SIBLINGS NIL PARASITES (lisp-stat/rdata)) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/lisp-unit.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/lisp-unit.nix
deleted file mode 100644
index 673ef0ee6342..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/lisp-unit.nix
+++ /dev/null
@@ -1,26 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "lisp-unit";
-  version = "20170124-git";
-
-  description = "Common Lisp library that supports unit testing.";
-
-  deps = [ ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/lisp-unit/2017-01-24/lisp-unit-20170124-git.tgz";
-    sha256 = "00bc19r7vr76rpk8lh8z7qln0glpf66mzqxw215488zwz3nwcq4m";
-  };
-
-  packageName = "lisp-unit";
-
-  asdFilesToKeep = ["lisp-unit.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM lisp-unit DESCRIPTION
-    Common Lisp library that supports unit testing. SHA256
-    00bc19r7vr76rpk8lh8z7qln0glpf66mzqxw215488zwz3nwcq4m URL
-    http://beta.quicklisp.org/archive/lisp-unit/2017-01-24/lisp-unit-20170124-git.tgz
-    MD5 2c55342cb8af18b290bb6a28c75deac5 NAME lisp-unit FILENAME lisp-unit DEPS
-    NIL DEPENDENCIES NIL VERSION 20170124-git SIBLINGS NIL PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/lisp-unit2.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/lisp-unit2.nix
deleted file mode 100644
index 7f0b22de69a9..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/lisp-unit2.nix
+++ /dev/null
@@ -1,39 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "lisp-unit2";
-  version = "20180131-git";
-
-  parasites = [ "lisp-unit2-test" ];
-
-  description = "Common Lisp library that supports unit testing.";
-
-  deps = [ args."alexandria" args."cl-interpol" args."cl-ppcre" args."cl-unicode" args."flexi-streams" args."iterate" args."named-readtables" args."symbol-munger" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/lisp-unit2/2018-01-31/lisp-unit2-20180131-git.tgz";
-    sha256 = "04kwrg605mqzf3ghshgbygvvryk5kipl6gyc5kdaxafjxvhxaak7";
-  };
-
-  packageName = "lisp-unit2";
-
-  asdFilesToKeep = ["lisp-unit2.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM lisp-unit2 DESCRIPTION
-    Common Lisp library that supports unit testing. SHA256
-    04kwrg605mqzf3ghshgbygvvryk5kipl6gyc5kdaxafjxvhxaak7 URL
-    http://beta.quicklisp.org/archive/lisp-unit2/2018-01-31/lisp-unit2-20180131-git.tgz
-    MD5 d061fa640837441a5d2eecbefd8b2e69 NAME lisp-unit2 FILENAME lisp-unit2
-    DEPS
-    ((NAME alexandria FILENAME alexandria)
-     (NAME cl-interpol FILENAME cl-interpol) (NAME cl-ppcre FILENAME cl-ppcre)
-     (NAME cl-unicode FILENAME cl-unicode)
-     (NAME flexi-streams FILENAME flexi-streams)
-     (NAME iterate FILENAME iterate)
-     (NAME named-readtables FILENAME named-readtables)
-     (NAME symbol-munger FILENAME symbol-munger))
-    DEPENDENCIES
-    (alexandria cl-interpol cl-ppcre cl-unicode flexi-streams iterate
-     named-readtables symbol-munger)
-    VERSION 20180131-git SIBLINGS NIL PARASITES (lisp-unit2-test)) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/lla.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/lla.nix
deleted file mode 100644
index a73e28bf3a7e..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/lla.nix
+++ /dev/null
@@ -1,37 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "lla";
-  version = "20180328-git";
-
-  parasites = [ "lla-tests" ];
-
-  description = "Lisp Linear Algebra";
-
-  deps = [ args."alexandria" args."anaphora" args."array-operations" args."babel" args."cffi" args."cl-num-utils" args."cl-slice" args."clunit" args."let-plus" args."trivial-features" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/lla/2018-03-28/lla-20180328-git.tgz";
-    sha256 = "0azljp93ap9lh2gfh1vvl99r18s6a03p880c3wvwpf9valb784hj";
-  };
-
-  packageName = "lla";
-
-  asdFilesToKeep = ["lla.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM lla DESCRIPTION Lisp Linear Algebra SHA256
-    0azljp93ap9lh2gfh1vvl99r18s6a03p880c3wvwpf9valb784hj URL
-    http://beta.quicklisp.org/archive/lla/2018-03-28/lla-20180328-git.tgz MD5
-    61d583603d5cacf9d81486a0cfcfaf6a NAME lla FILENAME lla DEPS
-    ((NAME alexandria FILENAME alexandria) (NAME anaphora FILENAME anaphora)
-     (NAME array-operations FILENAME array-operations)
-     (NAME babel FILENAME babel) (NAME cffi FILENAME cffi)
-     (NAME cl-num-utils FILENAME cl-num-utils)
-     (NAME cl-slice FILENAME cl-slice) (NAME clunit FILENAME clunit)
-     (NAME let-plus FILENAME let-plus)
-     (NAME trivial-features FILENAME trivial-features))
-    DEPENDENCIES
-    (alexandria anaphora array-operations babel cffi cl-num-utils cl-slice
-     clunit let-plus trivial-features)
-    VERSION 20180328-git SIBLINGS NIL PARASITES (lla-tests)) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/local-time.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/local-time.nix
deleted file mode 100644
index c2788badfc71..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/local-time.nix
+++ /dev/null
@@ -1,32 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "local-time";
-  version = "20210124-git";
-
-  parasites = [ "local-time/test" ];
-
-  description = "A library for manipulating dates and times, based on a paper by Erik Naggum";
-
-  deps = [ args."hu_dot_dwim_dot_stefil" args."uiop" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/local-time/2021-01-24/local-time-20210124-git.tgz";
-    sha256 = "0bz5z0rd8gfd22bpqkalaijxlrk806zc010cvgd4qjapbrxzjg3s";
-  };
-
-  packageName = "local-time";
-
-  asdFilesToKeep = ["local-time.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM local-time DESCRIPTION
-    A library for manipulating dates and times, based on a paper by Erik Naggum
-    SHA256 0bz5z0rd8gfd22bpqkalaijxlrk806zc010cvgd4qjapbrxzjg3s URL
-    http://beta.quicklisp.org/archive/local-time/2021-01-24/local-time-20210124-git.tgz
-    MD5 631d67bc84ae838792717b256f2cdbaf NAME local-time FILENAME local-time
-    DEPS
-    ((NAME hu.dwim.stefil FILENAME hu_dot_dwim_dot_stefil)
-     (NAME uiop FILENAME uiop))
-    DEPENDENCIES (hu.dwim.stefil uiop) VERSION 20210124-git SIBLINGS
-    (cl-postgres+local-time) PARASITES (local-time/test)) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/log4cl.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/log4cl.nix
deleted file mode 100644
index 84c31acd5e57..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/log4cl.nix
+++ /dev/null
@@ -1,32 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "log4cl";
-  version = "20211209-git";
-
-  parasites = [ "log4cl/syslog" "log4cl/test" ];
-
-  description = "System lacks description";
-
-  deps = [ args."alexandria" args."bordeaux-threads" args."stefil" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/log4cl/2021-12-09/log4cl-20211209-git.tgz";
-    sha256 = "17jwxhc2ysh3m3cp7wvh8cy359v7w6kz9vk9f07japzi3krv9iq9";
-  };
-
-  packageName = "log4cl";
-
-  asdFilesToKeep = ["log4cl.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM log4cl DESCRIPTION System lacks description SHA256
-    17jwxhc2ysh3m3cp7wvh8cy359v7w6kz9vk9f07japzi3krv9iq9 URL
-    http://beta.quicklisp.org/archive/log4cl/2021-12-09/log4cl-20211209-git.tgz
-    MD5 569122fed30c089b67527926468dcf44 NAME log4cl FILENAME log4cl DEPS
-    ((NAME alexandria FILENAME alexandria)
-     (NAME bordeaux-threads FILENAME bordeaux-threads)
-     (NAME stefil FILENAME stefil))
-    DEPENDENCIES (alexandria bordeaux-threads stefil) VERSION 20211209-git
-    SIBLINGS (log4cl-examples log4cl.log4slime log4cl.log4sly) PARASITES
-    (log4cl/syslog log4cl/test)) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/lparallel.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/lparallel.nix
deleted file mode 100644
index accedb38f3fc..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/lparallel.nix
+++ /dev/null
@@ -1,28 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "lparallel";
-  version = "20160825-git";
-
-  description = "Parallelism for Common Lisp";
-
-  deps = [ args."alexandria" args."bordeaux-threads" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/lparallel/2016-08-25/lparallel-20160825-git.tgz";
-    sha256 = "0wwwwszbj6m0b2rsp8mpn4m6y7xk448bw8fb7gy0ggmsdfgchfr1";
-  };
-
-  packageName = "lparallel";
-
-  asdFilesToKeep = ["lparallel.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM lparallel DESCRIPTION Parallelism for Common Lisp SHA256
-    0wwwwszbj6m0b2rsp8mpn4m6y7xk448bw8fb7gy0ggmsdfgchfr1 URL
-    http://beta.quicklisp.org/archive/lparallel/2016-08-25/lparallel-20160825-git.tgz
-    MD5 6393e8d0c0cc9ed1c88b6e7cca8de5df NAME lparallel FILENAME lparallel DEPS
-    ((NAME alexandria FILENAME alexandria)
-     (NAME bordeaux-threads FILENAME bordeaux-threads))
-    DEPENDENCIES (alexandria bordeaux-threads) VERSION 20160825-git SIBLINGS
-    (lparallel-bench lparallel-test) PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/lquery.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/lquery.nix
deleted file mode 100644
index 823ef5bf3372..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/lquery.nix
+++ /dev/null
@@ -1,32 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "lquery";
-  version = "20201220-git";
-
-  description = "A library to allow jQuery-like HTML/DOM manipulation.";
-
-  deps = [ args."array-utils" args."clss" args."documentation-utils" args."form-fiddle" args."plump" args."trivial-indent" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/lquery/2020-12-20/lquery-20201220-git.tgz";
-    sha256 = "0mfnk1p73aihraklw802j5mjgc8cjxva0mdf0c4p7b253crf15jx";
-  };
-
-  packageName = "lquery";
-
-  asdFilesToKeep = ["lquery.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM lquery DESCRIPTION
-    A library to allow jQuery-like HTML/DOM manipulation. SHA256
-    0mfnk1p73aihraklw802j5mjgc8cjxva0mdf0c4p7b253crf15jx URL
-    http://beta.quicklisp.org/archive/lquery/2020-12-20/lquery-20201220-git.tgz
-    MD5 a71685848959cf33cd6963b4a5f9e2ed NAME lquery FILENAME lquery DEPS
-    ((NAME array-utils FILENAME array-utils) (NAME clss FILENAME clss)
-     (NAME documentation-utils FILENAME documentation-utils)
-     (NAME form-fiddle FILENAME form-fiddle) (NAME plump FILENAME plump)
-     (NAME trivial-indent FILENAME trivial-indent))
-    DEPENDENCIES
-    (array-utils clss documentation-utils form-fiddle plump trivial-indent)
-    VERSION 20201220-git SIBLINGS (lquery-test) PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/make-hash.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/make-hash.nix
deleted file mode 100644
index 57c5f4460712..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/make-hash.nix
+++ /dev/null
@@ -1,26 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "make-hash";
-  version = "20130615-git";
-
-  description = "System lacks description";
-
-  deps = [ ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/make-hash/2013-06-15/make-hash-20130615-git.tgz";
-    sha256 = "1ghcyqjhizkbfsvx1cih7d665w8yvbs1xv8pfi3hs1ghbn8njbkw";
-  };
-
-  packageName = "make-hash";
-
-  asdFilesToKeep = ["make-hash.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM make-hash DESCRIPTION System lacks description SHA256
-    1ghcyqjhizkbfsvx1cih7d665w8yvbs1xv8pfi3hs1ghbn8njbkw URL
-    http://beta.quicklisp.org/archive/make-hash/2013-06-15/make-hash-20130615-git.tgz
-    MD5 4f612ef068411284c88e0381fa4a0c7f NAME make-hash FILENAME make-hash DEPS
-    NIL DEPENDENCIES NIL VERSION 20130615-git SIBLINGS (make-hash-tests)
-    PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/map-set.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/map-set.nix
deleted file mode 100644
index 32d897b33043..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/map-set.nix
+++ /dev/null
@@ -1,25 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "map-set";
-  version = "20190307-hg";
-
-  description = "Set-like data structure.";
-
-  deps = [ ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/map-set/2019-03-07/map-set-20190307-hg.tgz";
-    sha256 = "1x7yh4gzdvypr1q45qgmjln5pjlh82bfpk6sqyrihrldmwwnbzg9";
-  };
-
-  packageName = "map-set";
-
-  asdFilesToKeep = ["map-set.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM map-set DESCRIPTION Set-like data structure. SHA256
-    1x7yh4gzdvypr1q45qgmjln5pjlh82bfpk6sqyrihrldmwwnbzg9 URL
-    http://beta.quicklisp.org/archive/map-set/2019-03-07/map-set-20190307-hg.tgz
-    MD5 866dba36cdf060c943267cb79ccc0532 NAME map-set FILENAME map-set DEPS NIL
-    DEPENDENCIES NIL VERSION 20190307-hg SIBLINGS NIL PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/marshal.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/marshal.nix
deleted file mode 100644
index 8c1d9062ddc6..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/marshal.nix
+++ /dev/null
@@ -1,27 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "marshal";
-  version = "cl-20211020-git";
-
-  description = "marshal: Simple (de)serialization of Lisp datastructures.";
-
-  deps = [ ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/cl-marshal/2021-10-20/cl-marshal-20211020-git.tgz";
-    sha256 = "0zv4bpj352frdrsk7r1yc67385h2n00cy19nz3b72sznsjynqvk8";
-  };
-
-  packageName = "marshal";
-
-  asdFilesToKeep = ["marshal.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM marshal DESCRIPTION
-    marshal: Simple (de)serialization of Lisp datastructures. SHA256
-    0zv4bpj352frdrsk7r1yc67385h2n00cy19nz3b72sznsjynqvk8 URL
-    http://beta.quicklisp.org/archive/cl-marshal/2021-10-20/cl-marshal-20211020-git.tgz
-    MD5 52eaad7da569610099d15c1d91020e17 NAME marshal FILENAME marshal DEPS NIL
-    DEPENDENCIES NIL VERSION cl-20211020-git SIBLINGS (marshal-tests) PARASITES
-    NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/md5.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/md5.nix
deleted file mode 100644
index c8ae66508654..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/md5.nix
+++ /dev/null
@@ -1,25 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "md5";
-  version = "20210630-git";
-
-  description = "The MD5 Message-Digest Algorithm RFC 1321";
-
-  deps = [ ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/md5/2021-06-30/md5-20210630-git.tgz";
-    sha256 = "16kilbw3p68xf5fnj00xpvm4l8ylk5k9z6vbnq244ip0sygfizcv";
-  };
-
-  packageName = "md5";
-
-  asdFilesToKeep = ["md5.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM md5 DESCRIPTION The MD5 Message-Digest Algorithm RFC 1321 SHA256
-    16kilbw3p68xf5fnj00xpvm4l8ylk5k9z6vbnq244ip0sygfizcv URL
-    http://beta.quicklisp.org/archive/md5/2021-06-30/md5-20210630-git.tgz MD5
-    ecb1fa8eea6848c2f14fdfeb03d47056 NAME md5 FILENAME md5 DEPS NIL
-    DEPENDENCIES NIL VERSION 20210630-git SIBLINGS NIL PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/metabang-bind.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/metabang-bind.nix
deleted file mode 100644
index 51c361f112b7..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/metabang-bind.nix
+++ /dev/null
@@ -1,27 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "metabang-bind";
-  version = "20200218-git";
-
-  description = "Bind is a macro that generalizes multiple-value-bind, let, let*, destructuring-bind, structure and slot accessors, and a whole lot more.";
-
-  deps = [ ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/metabang-bind/2020-02-18/metabang-bind-20200218-git.tgz";
-    sha256 = "0mfjzfsv8v6i9ahwldfzznl29i42cmh5srmpgq64ar1vp6bdn1hq";
-  };
-
-  packageName = "metabang-bind";
-
-  asdFilesToKeep = ["metabang-bind.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM metabang-bind DESCRIPTION
-    Bind is a macro that generalizes multiple-value-bind, let, let*, destructuring-bind, structure and slot accessors, and a whole lot more.
-    SHA256 0mfjzfsv8v6i9ahwldfzznl29i42cmh5srmpgq64ar1vp6bdn1hq URL
-    http://beta.quicklisp.org/archive/metabang-bind/2020-02-18/metabang-bind-20200218-git.tgz
-    MD5 25ee72526862a9d794f7b0fc1826029e NAME metabang-bind FILENAME
-    metabang-bind DEPS NIL DEPENDENCIES NIL VERSION 20200218-git SIBLINGS
-    (metabang-bind-test) PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/metatilities-base.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/metatilities-base.nix
deleted file mode 100644
index af0e3d8090a9..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/metatilities-base.nix
+++ /dev/null
@@ -1,27 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "metatilities-base";
-  version = "20191227-git";
-
-  description = "These are metabang.com's Common Lisp basic utilities.";
-
-  deps = [ ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/metatilities-base/2019-12-27/metatilities-base-20191227-git.tgz";
-    sha256 = "1mal51p7mknya2ljcwl3wdjvnirw5vvzic6qcnci7qhmfrb1awil";
-  };
-
-  packageName = "metatilities-base";
-
-  asdFilesToKeep = ["metatilities-base.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM metatilities-base DESCRIPTION
-    These are metabang.com's Common Lisp basic utilities. SHA256
-    1mal51p7mknya2ljcwl3wdjvnirw5vvzic6qcnci7qhmfrb1awil URL
-    http://beta.quicklisp.org/archive/metatilities-base/2019-12-27/metatilities-base-20191227-git.tgz
-    MD5 7968829ca353c4a42784a151317029f1 NAME metatilities-base FILENAME
-    metatilities-base DEPS NIL DEPENDENCIES NIL VERSION 20191227-git SIBLINGS
-    (metatilities-base-test) PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/mgl-pax.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/mgl-pax.nix
deleted file mode 100644
index c0e9819b0edc..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/mgl-pax.nix
+++ /dev/null
@@ -1,39 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "mgl-pax";
-  version = "20211209-git";
-
-  parasites = [ "mgl-pax/document" "mgl-pax/navigate" ];
-
-  description = "Exploratory programming tool and documentation
-  generator.";
-
-  deps = [ args."_3bmd" args."_3bmd-ext-code-blocks" args."alexandria" args."colorize" args."md5" args."named-readtables" args."pythonic-string-reader" args."swank" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/mgl-pax/2021-12-09/mgl-pax-20211209-git.tgz";
-    sha256 = "19d47msc8240bldkc0fi60cpzsx1q9392dxhmqn28gn7998pdkgh";
-  };
-
-  packageName = "mgl-pax";
-
-  asdFilesToKeep = ["mgl-pax.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM mgl-pax DESCRIPTION Exploratory programming tool and documentation
-  generator.
-    SHA256 19d47msc8240bldkc0fi60cpzsx1q9392dxhmqn28gn7998pdkgh URL
-    http://beta.quicklisp.org/archive/mgl-pax/2021-12-09/mgl-pax-20211209-git.tgz
-    MD5 605583bb2910e0fe2211c8152fe38e0e NAME mgl-pax FILENAME mgl-pax DEPS
-    ((NAME 3bmd FILENAME _3bmd)
-     (NAME 3bmd-ext-code-blocks FILENAME _3bmd-ext-code-blocks)
-     (NAME alexandria FILENAME alexandria) (NAME colorize FILENAME colorize)
-     (NAME md5 FILENAME md5) (NAME named-readtables FILENAME named-readtables)
-     (NAME pythonic-string-reader FILENAME pythonic-string-reader)
-     (NAME swank FILENAME swank))
-    DEPENDENCIES
-    (3bmd 3bmd-ext-code-blocks alexandria colorize md5 named-readtables
-     pythonic-string-reader swank)
-    VERSION 20211209-git SIBLINGS NIL PARASITES
-    (mgl-pax/document mgl-pax/navigate)) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/minheap.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/minheap.nix
deleted file mode 100644
index 2c6df0f06650..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/minheap.nix
+++ /dev/null
@@ -1,26 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "minheap";
-  version = "20160628-git";
-
-  description = "Various heap/priority queue data structures";
-
-  deps = [ ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/minheap/2016-06-28/minheap-20160628-git.tgz";
-    sha256 = "1zjmxivspywf3nr7a5qwih2vf7w62r8pmyq25qhm3a0v2fdaihzz";
-  };
-
-  packageName = "minheap";
-
-  asdFilesToKeep = ["minheap.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM minheap DESCRIPTION Various heap/priority queue data structures
-    SHA256 1zjmxivspywf3nr7a5qwih2vf7w62r8pmyq25qhm3a0v2fdaihzz URL
-    http://beta.quicklisp.org/archive/minheap/2016-06-28/minheap-20160628-git.tgz
-    MD5 27a57cdd27e91eb767f1377fcbfe2af3 NAME minheap FILENAME minheap DEPS NIL
-    DEPENDENCIES NIL VERSION 20160628-git SIBLINGS (minheap-tests) PARASITES
-    NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/misc-extensions.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/misc-extensions.nix
deleted file mode 100644
index db7349e4d092..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/misc-extensions.nix
+++ /dev/null
@@ -1,26 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "misc-extensions";
-  version = "20150608-git";
-
-  description = "System lacks description";
-
-  deps = [ ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/misc-extensions/2015-06-08/misc-extensions-20150608-git.tgz";
-    sha256 = "0pkvi1l5djwpvm0p8m0bcdjm61gxvzy0vgn415gngdixvbbchdqj";
-  };
-
-  packageName = "misc-extensions";
-
-  asdFilesToKeep = ["misc-extensions.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM misc-extensions DESCRIPTION System lacks description SHA256
-    0pkvi1l5djwpvm0p8m0bcdjm61gxvzy0vgn415gngdixvbbchdqj URL
-    http://beta.quicklisp.org/archive/misc-extensions/2015-06-08/misc-extensions-20150608-git.tgz
-    MD5 ef8a05dd4382bb9d1e3960aeb77e332e NAME misc-extensions FILENAME
-    misc-extensions DEPS NIL DEPENDENCIES NIL VERSION 20150608-git SIBLINGS NIL
-    PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/mk-string-metrics.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/mk-string-metrics.nix
deleted file mode 100644
index d150d97cb40d..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/mk-string-metrics.nix
+++ /dev/null
@@ -1,27 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "mk-string-metrics";
-  version = "20180131-git";
-
-  description = "efficient implementations of various string metric algorithms";
-
-  deps = [ ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/mk-string-metrics/2018-01-31/mk-string-metrics-20180131-git.tgz";
-    sha256 = "10xb9n6568nh019nq3phijbc7l6hkv69yllfiqvc1zzsprxpkwc4";
-  };
-
-  packageName = "mk-string-metrics";
-
-  asdFilesToKeep = ["mk-string-metrics.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM mk-string-metrics DESCRIPTION
-    efficient implementations of various string metric algorithms SHA256
-    10xb9n6568nh019nq3phijbc7l6hkv69yllfiqvc1zzsprxpkwc4 URL
-    http://beta.quicklisp.org/archive/mk-string-metrics/2018-01-31/mk-string-metrics-20180131-git.tgz
-    MD5 40f23794a7d841cb178f5951d3992886 NAME mk-string-metrics FILENAME
-    mk-string-metrics DEPS NIL DEPENDENCIES NIL VERSION 20180131-git SIBLINGS
-    (mk-string-metrics-tests) PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/mmap.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/mmap.nix
deleted file mode 100644
index f5425cf549ff..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/mmap.nix
+++ /dev/null
@@ -1,33 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "mmap";
-  version = "20201220-git";
-
-  description = "Portable mmap (file memory mapping) utility library.";
-
-  deps = [ args."alexandria" args."babel" args."cffi" args."documentation-utils" args."trivial-features" args."trivial-indent" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/mmap/2020-12-20/mmap-20201220-git.tgz";
-    sha256 = "147xw351xh90k3yvc1fn7k418afmgngd56i8a6d7p41fzs54g6ij";
-  };
-
-  packageName = "mmap";
-
-  asdFilesToKeep = ["mmap.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM mmap DESCRIPTION
-    Portable mmap (file memory mapping) utility library. SHA256
-    147xw351xh90k3yvc1fn7k418afmgngd56i8a6d7p41fzs54g6ij URL
-    http://beta.quicklisp.org/archive/mmap/2020-12-20/mmap-20201220-git.tgz MD5
-    e2dbeb48b59735bd2ed54ea7f9cdfe0f NAME mmap FILENAME mmap DEPS
-    ((NAME alexandria FILENAME alexandria) (NAME babel FILENAME babel)
-     (NAME cffi FILENAME cffi)
-     (NAME documentation-utils FILENAME documentation-utils)
-     (NAME trivial-features FILENAME trivial-features)
-     (NAME trivial-indent FILENAME trivial-indent))
-    DEPENDENCIES
-    (alexandria babel cffi documentation-utils trivial-features trivial-indent)
-    VERSION 20201220-git SIBLINGS (mmap-test) PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/moptilities.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/moptilities.nix
deleted file mode 100644
index 02e8ff0f84ca..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/moptilities.nix
+++ /dev/null
@@ -1,26 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "moptilities";
-  version = "20170403-git";
-
-  description = "Common Lisp MOP utilities";
-
-  deps = [ args."closer-mop" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/moptilities/2017-04-03/moptilities-20170403-git.tgz";
-    sha256 = "0az01wx60ll3nybqlp21f5bps3fnpqhvvfg6d9x84969wdj7q4q8";
-  };
-
-  packageName = "moptilities";
-
-  asdFilesToKeep = ["moptilities.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM moptilities DESCRIPTION Common Lisp MOP utilities SHA256
-    0az01wx60ll3nybqlp21f5bps3fnpqhvvfg6d9x84969wdj7q4q8 URL
-    http://beta.quicklisp.org/archive/moptilities/2017-04-03/moptilities-20170403-git.tgz
-    MD5 b118397be325e60a772ea3631c4f19a4 NAME moptilities FILENAME moptilities
-    DEPS ((NAME closer-mop FILENAME closer-mop)) DEPENDENCIES (closer-mop)
-    VERSION 20170403-git SIBLINGS (moptilities-test) PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/more-conditions.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/more-conditions.nix
deleted file mode 100644
index 3d2cd35b3088..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/more-conditions.nix
+++ /dev/null
@@ -1,35 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "more-conditions";
-  version = "20180831-git";
-
-  parasites = [ "more-conditions/test" ];
-
-  description = "This system provides some generic condition classes in
-                conjunction with support functions and macros.";
-
-  deps = [ args."alexandria" args."closer-mop" args."fiveam" args."let-plus" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/more-conditions/2018-08-31/more-conditions-20180831-git.tgz";
-    sha256 = "0wa989kv3sl977g9szxkx52fdnww6aj2a9i77363f90iq02vj97x";
-  };
-
-  packageName = "more-conditions";
-
-  asdFilesToKeep = ["more-conditions.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM more-conditions DESCRIPTION
-    This system provides some generic condition classes in
-                conjunction with support functions and macros.
-    SHA256 0wa989kv3sl977g9szxkx52fdnww6aj2a9i77363f90iq02vj97x URL
-    http://beta.quicklisp.org/archive/more-conditions/2018-08-31/more-conditions-20180831-git.tgz
-    MD5 c4797bd3c6c50fba02a6e8164ddafe28 NAME more-conditions FILENAME
-    more-conditions DEPS
-    ((NAME alexandria FILENAME alexandria)
-     (NAME closer-mop FILENAME closer-mop) (NAME fiveam FILENAME fiveam)
-     (NAME let-plus FILENAME let-plus))
-    DEPENDENCIES (alexandria closer-mop fiveam let-plus) VERSION 20180831-git
-    SIBLINGS NIL PARASITES (more-conditions/test)) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/mt19937.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/mt19937.nix
deleted file mode 100644
index 55451e02e5d0..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/mt19937.nix
+++ /dev/null
@@ -1,26 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "mt19937";
-  version = "1.1.1";
-
-  description = "Portable MT19937 Mersenne Twister random number generator";
-
-  deps = [ ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/mt19937/2011-02-19/mt19937-1.1.1.tgz";
-    sha256 = "1iw636b0iw5ygkv02y8i41lh7xj0acglv0hg5agryn0zzi2nf1xv";
-  };
-
-  packageName = "mt19937";
-
-  asdFilesToKeep = ["mt19937.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM mt19937 DESCRIPTION
-    Portable MT19937 Mersenne Twister random number generator SHA256
-    1iw636b0iw5ygkv02y8i41lh7xj0acglv0hg5agryn0zzi2nf1xv URL
-    http://beta.quicklisp.org/archive/mt19937/2011-02-19/mt19937-1.1.1.tgz MD5
-    54c63977b6d77abd66ebe0227b77c143 NAME mt19937 FILENAME mt19937 DEPS NIL
-    DEPENDENCIES NIL VERSION 1.1.1 SIBLINGS NIL PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/myway.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/myway.nix
deleted file mode 100644
index 3538b723d1f0..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/myway.nix
+++ /dev/null
@@ -1,33 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "myway";
-  version = "20200325-git";
-
-  description = "Sinatra-compatible routing library.";
-
-  deps = [ args."alexandria" args."babel" args."cl-ppcre" args."cl-utilities" args."map-set" args."quri" args."split-sequence" args."trivial-features" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/myway/2020-03-25/myway-20200325-git.tgz";
-    sha256 = "07r0mq9n0gmm7n20mkpsnmjvcr4gj9nckpnh1c2mddrb3sag8n15";
-  };
-
-  packageName = "myway";
-
-  asdFilesToKeep = ["myway.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM myway DESCRIPTION Sinatra-compatible routing library. SHA256
-    07r0mq9n0gmm7n20mkpsnmjvcr4gj9nckpnh1c2mddrb3sag8n15 URL
-    http://beta.quicklisp.org/archive/myway/2020-03-25/myway-20200325-git.tgz
-    MD5 af1fe34c2106303504c7908b25c3b9ce NAME myway FILENAME myway DEPS
-    ((NAME alexandria FILENAME alexandria) (NAME babel FILENAME babel)
-     (NAME cl-ppcre FILENAME cl-ppcre)
-     (NAME cl-utilities FILENAME cl-utilities) (NAME map-set FILENAME map-set)
-     (NAME quri FILENAME quri) (NAME split-sequence FILENAME split-sequence)
-     (NAME trivial-features FILENAME trivial-features))
-    DEPENDENCIES
-    (alexandria babel cl-ppcre cl-utilities map-set quri split-sequence
-     trivial-features)
-    VERSION 20200325-git SIBLINGS (myway-test) PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/named-readtables.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/named-readtables.nix
deleted file mode 100644
index 198768fe7042..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/named-readtables.nix
+++ /dev/null
@@ -1,31 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "named-readtables";
-  version = "20211209-git";
-
-  parasites = [ "named-readtables/test" ];
-
-  description = "Library that creates a namespace for named readtable
-  akin to the namespace of packages.";
-
-  deps = [ ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/named-readtables/2021-12-09/named-readtables-20211209-git.tgz";
-    sha256 = "0mlxbs7r6ksjk9ilsgp756qp4jlgplr30kxdn7npq27wg0rpvz2n";
-  };
-
-  packageName = "named-readtables";
-
-  asdFilesToKeep = ["named-readtables.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM named-readtables DESCRIPTION
-    Library that creates a namespace for named readtable
-  akin to the namespace of packages.
-    SHA256 0mlxbs7r6ksjk9ilsgp756qp4jlgplr30kxdn7npq27wg0rpvz2n URL
-    http://beta.quicklisp.org/archive/named-readtables/2021-12-09/named-readtables-20211209-git.tgz
-    MD5 52def9392c93bb9c6da4b957549bcb0b NAME named-readtables FILENAME
-    named-readtables DEPS NIL DEPENDENCIES NIL VERSION 20211209-git SIBLINGS
-    NIL PARASITES (named-readtables/test)) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/nbd.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/nbd.nix
deleted file mode 100644
index 6387a8345dc2..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/nbd.nix
+++ /dev/null
@@ -1,33 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "nbd";
-  version = "20200925-git";
-
-  parasites = [ "nbd/simple-in-memory" ];
-
-  description = "Network Block Device server library.";
-
-  deps = [ args."bordeaux-threads" args."flexi-streams" args."lisp-binary" args."wild-package-inferred-system" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/nbd/2020-09-25/nbd-20200925-git.tgz";
-    sha256 = "1npq9a8l3mn67n22ywqm8wh6kr9xv9djla2yj2m535gkysrlvnky";
-  };
-
-  packageName = "nbd";
-
-  asdFilesToKeep = ["nbd.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM nbd DESCRIPTION Network Block Device server library. SHA256
-    1npq9a8l3mn67n22ywqm8wh6kr9xv9djla2yj2m535gkysrlvnky URL
-    http://beta.quicklisp.org/archive/nbd/2020-09-25/nbd-20200925-git.tgz MD5
-    f32b7a508ac87c1e179c259b171dc837 NAME nbd FILENAME nbd DEPS
-    ((NAME bordeaux-threads FILENAME bordeaux-threads)
-     (NAME flexi-streams FILENAME flexi-streams)
-     (NAME lisp-binary FILENAME lisp-binary)
-     (NAME wild-package-inferred-system FILENAME wild-package-inferred-system))
-    DEPENDENCIES
-    (bordeaux-threads flexi-streams lisp-binary wild-package-inferred-system)
-    VERSION 20200925-git SIBLINGS NIL PARASITES (nbd/simple-in-memory)) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/net-telent-date.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/net-telent-date.nix
deleted file mode 100644
index 77e07108e630..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/net-telent-date.nix
+++ /dev/null
@@ -1,26 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "net-telent-date";
-  version = "net-telent-date_0.42";
-
-  description = "System lacks description";
-
-  deps = [ ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/net-telent-date/2010-10-06/net-telent-date_0.42.tgz";
-    sha256 = "06vdlddwi6kx999n1093chwgw0ksbys4j4w9i9zqvw768wxp4li1";
-  };
-
-  packageName = "net-telent-date";
-
-  asdFilesToKeep = ["net-telent-date.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM net-telent-date DESCRIPTION System lacks description SHA256
-    06vdlddwi6kx999n1093chwgw0ksbys4j4w9i9zqvw768wxp4li1 URL
-    http://beta.quicklisp.org/archive/net-telent-date/2010-10-06/net-telent-date_0.42.tgz
-    MD5 6fedf40113b2462f7bd273d07950066b NAME net-telent-date FILENAME
-    net-telent-date DEPS NIL DEPENDENCIES NIL VERSION net-telent-date_0.42
-    SIBLINGS NIL PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/net_dot_didierverna_dot_asdf-flv.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/net_dot_didierverna_dot_asdf-flv.nix
deleted file mode 100644
index bb64756fecd8..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/net_dot_didierverna_dot_asdf-flv.nix
+++ /dev/null
@@ -1,27 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "net_dot_didierverna_dot_asdf-flv";
-  version = "asdf-flv-version-2.1";
-
-  description = "ASDF extension to provide support for file-local variables.";
-
-  deps = [ ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/asdf-flv/2016-04-21/asdf-flv-version-2.1.tgz";
-    sha256 = "12k0d4xyv6s9vy6gq18p8c9bm334jsfjly22lhg680kx2zr7y0lc";
-  };
-
-  packageName = "net.didierverna.asdf-flv";
-
-  asdFilesToKeep = ["net.didierverna.asdf-flv.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM net.didierverna.asdf-flv DESCRIPTION
-    ASDF extension to provide support for file-local variables. SHA256
-    12k0d4xyv6s9vy6gq18p8c9bm334jsfjly22lhg680kx2zr7y0lc URL
-    http://beta.quicklisp.org/archive/asdf-flv/2016-04-21/asdf-flv-version-2.1.tgz
-    MD5 2b74b721b7e5335d2230d6b95fc6be56 NAME net.didierverna.asdf-flv FILENAME
-    net_dot_didierverna_dot_asdf-flv DEPS NIL DEPENDENCIES NIL VERSION
-    asdf-flv-version-2.1 SIBLINGS NIL PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/nibbles.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/nibbles.nix
deleted file mode 100644
index d20890e36c05..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/nibbles.nix
+++ /dev/null
@@ -1,29 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "nibbles";
-  version = "20211209-git";
-
-  parasites = [ "nibbles/tests" ];
-
-  description = "A library for accessing octet-addressed blocks of data in big- and little-endian orders";
-
-  deps = [ args."rt" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/nibbles/2021-12-09/nibbles-20211209-git.tgz";
-    sha256 = "1zkywrhz8p09pwdsa2mklr0yspqvvwa5fi6cz22n1z6fzvxz7m2s";
-  };
-
-  packageName = "nibbles";
-
-  asdFilesToKeep = ["nibbles.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM nibbles DESCRIPTION
-    A library for accessing octet-addressed blocks of data in big- and little-endian orders
-    SHA256 1zkywrhz8p09pwdsa2mklr0yspqvvwa5fi6cz22n1z6fzvxz7m2s URL
-    http://beta.quicklisp.org/archive/nibbles/2021-12-09/nibbles-20211209-git.tgz
-    MD5 c6e7348a8a979da7cd4852b5df8a4384 NAME nibbles FILENAME nibbles DEPS
-    ((NAME rt FILENAME rt)) DEPENDENCIES (rt) VERSION 20211209-git SIBLINGS NIL
-    PARASITES (nibbles/tests)) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/num-utils.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/num-utils.nix
deleted file mode 100644
index 7160524a2f1a..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/num-utils.nix
+++ /dev/null
@@ -1,33 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "num-utils";
-  version = "numerical-utilities-20210411-git";
-
-  parasites = [ "num-utils/tests" ];
-
-  description = "Numerical utilities for Common Lisp";
-
-  deps = [ args."alexandria" args."anaphora" args."array-operations" args."fiveam" args."let-plus" args."select" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/numerical-utilities/2021-04-11/numerical-utilities-20210411-git.tgz";
-    sha256 = "19d1vm9hasgba9l2mwby8izd7pzmisckf52h6fmh170lwkqixqxb";
-  };
-
-  packageName = "num-utils";
-
-  asdFilesToKeep = ["num-utils.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM num-utils DESCRIPTION Numerical utilities for Common Lisp SHA256
-    19d1vm9hasgba9l2mwby8izd7pzmisckf52h6fmh170lwkqixqxb URL
-    http://beta.quicklisp.org/archive/numerical-utilities/2021-04-11/numerical-utilities-20210411-git.tgz
-    MD5 87fac84d7897071bfa89fc9aeca7b4d0 NAME num-utils FILENAME num-utils DEPS
-    ((NAME alexandria FILENAME alexandria) (NAME anaphora FILENAME anaphora)
-     (NAME array-operations FILENAME array-operations)
-     (NAME fiveam FILENAME fiveam) (NAME let-plus FILENAME let-plus)
-     (NAME select FILENAME select))
-    DEPENDENCIES (alexandria anaphora array-operations fiveam let-plus select)
-    VERSION numerical-utilities-20210411-git SIBLINGS NIL PARASITES
-    (num-utils/tests)) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/optima.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/optima.nix
deleted file mode 100644
index 0c4684d0508b..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/optima.nix
+++ /dev/null
@@ -1,28 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "optima";
-  version = "20150709-git";
-
-  description = "Optimized Pattern Matching Library";
-
-  deps = [ args."alexandria" args."closer-mop" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/optima/2015-07-09/optima-20150709-git.tgz";
-    sha256 = "0vqyqrnx2d8qwa2jlg9l2wn6vrykraj8a1ysz0gxxxnwpqc29hdc";
-  };
-
-  packageName = "optima";
-
-  asdFilesToKeep = ["optima.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM optima DESCRIPTION Optimized Pattern Matching Library SHA256
-    0vqyqrnx2d8qwa2jlg9l2wn6vrykraj8a1ysz0gxxxnwpqc29hdc URL
-    http://beta.quicklisp.org/archive/optima/2015-07-09/optima-20150709-git.tgz
-    MD5 20523dc3dfc04bb2526008dff0842caa NAME optima FILENAME optima DEPS
-    ((NAME alexandria FILENAME alexandria)
-     (NAME closer-mop FILENAME closer-mop))
-    DEPENDENCIES (alexandria closer-mop) VERSION 20150709-git SIBLINGS
-    (optima.ppcre optima.test) PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/osicat.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/osicat.nix
deleted file mode 100644
index a88bc8670ebe..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/osicat.nix
+++ /dev/null
@@ -1,33 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "osicat";
-  version = "20211209-git";
-
-  parasites = [ "osicat/tests" ];
-
-  description = "A lightweight operating system interface";
-
-  deps = [ args."alexandria" args."babel" args."cffi" args."cffi-grovel" args."cffi-toolchain" args."rt" args."trivial-features" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/osicat/2021-12-09/osicat-20211209-git.tgz";
-    sha256 = "0c85aapyvr2f5c3lvpfv3hfdghwmsqf40qgyk9hwjva8s9242pgl";
-  };
-
-  packageName = "osicat";
-
-  asdFilesToKeep = ["osicat.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM osicat DESCRIPTION A lightweight operating system interface SHA256
-    0c85aapyvr2f5c3lvpfv3hfdghwmsqf40qgyk9hwjva8s9242pgl URL
-    http://beta.quicklisp.org/archive/osicat/2021-12-09/osicat-20211209-git.tgz
-    MD5 3581652999e0b16c6a1a8295585e7491 NAME osicat FILENAME osicat DEPS
-    ((NAME alexandria FILENAME alexandria) (NAME babel FILENAME babel)
-     (NAME cffi FILENAME cffi) (NAME cffi-grovel FILENAME cffi-grovel)
-     (NAME cffi-toolchain FILENAME cffi-toolchain) (NAME rt FILENAME rt)
-     (NAME trivial-features FILENAME trivial-features))
-    DEPENDENCIES
-    (alexandria babel cffi cffi-grovel cffi-toolchain rt trivial-features)
-    VERSION 20211209-git SIBLINGS NIL PARASITES (osicat/tests)) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/parachute.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/parachute.nix
deleted file mode 100644
index e32250d03f59..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/parachute.nix
+++ /dev/null
@@ -1,31 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "parachute";
-  version = "20211020-git";
-
-  description = "An extensible and cross-compatible testing framework.";
-
-  deps = [ args."documentation-utils" args."form-fiddle" args."trivial-indent" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/parachute/2021-10-20/parachute-20211020-git.tgz";
-    sha256 = "1sc63a6z3zwdsc9h3w0dbx7yssvg2zzdyhh81kqc5cx17vcdqyk0";
-  };
-
-  packageName = "parachute";
-
-  asdFilesToKeep = ["parachute.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM parachute DESCRIPTION
-    An extensible and cross-compatible testing framework. SHA256
-    1sc63a6z3zwdsc9h3w0dbx7yssvg2zzdyhh81kqc5cx17vcdqyk0 URL
-    http://beta.quicklisp.org/archive/parachute/2021-10-20/parachute-20211020-git.tgz
-    MD5 85eba816a1e7a43a154e6a1544e15e52 NAME parachute FILENAME parachute DEPS
-    ((NAME documentation-utils FILENAME documentation-utils)
-     (NAME form-fiddle FILENAME form-fiddle)
-     (NAME trivial-indent FILENAME trivial-indent))
-    DEPENDENCIES (documentation-utils form-fiddle trivial-indent) VERSION
-    20211020-git SIBLINGS
-    (parachute-fiveam parachute-lisp-unit parachute-prove) PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/parenscript.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/parenscript.nix
deleted file mode 100644
index cfe7128da390..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/parenscript.nix
+++ /dev/null
@@ -1,29 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "parenscript";
-  version = "Parenscript-2.7.1";
-
-  description = "Lisp to JavaScript transpiler";
-
-  deps = [ args."anaphora" args."cl-ppcre" args."named-readtables" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/parenscript/2018-12-10/Parenscript-2.7.1.tgz";
-    sha256 = "1vbldjzj9py8vqyk0f3rb795cjai0h7p858dflm4l8p0kp4mll6f";
-  };
-
-  packageName = "parenscript";
-
-  asdFilesToKeep = ["parenscript.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM parenscript DESCRIPTION Lisp to JavaScript transpiler SHA256
-    1vbldjzj9py8vqyk0f3rb795cjai0h7p858dflm4l8p0kp4mll6f URL
-    http://beta.quicklisp.org/archive/parenscript/2018-12-10/Parenscript-2.7.1.tgz
-    MD5 047c9a72bd36f1b4a5ec67af9453a0b9 NAME parenscript FILENAME parenscript
-    DEPS
-    ((NAME anaphora FILENAME anaphora) (NAME cl-ppcre FILENAME cl-ppcre)
-     (NAME named-readtables FILENAME named-readtables))
-    DEPENDENCIES (anaphora cl-ppcre named-readtables) VERSION Parenscript-2.7.1
-    SIBLINGS (parenscript.tests) PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/parse-declarations-1_dot_0.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/parse-declarations-1_dot_0.nix
deleted file mode 100644
index 3d8ae2cf82b5..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/parse-declarations-1_dot_0.nix
+++ /dev/null
@@ -1,27 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "parse-declarations-1_dot_0";
-  version = "parse-declarations-20101006-darcs";
-
-  description = "Library to parse and rebuild declarations.";
-
-  deps = [ ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/parse-declarations/2010-10-06/parse-declarations-20101006-darcs.tgz";
-    sha256 = "0r85b0jfacd28kr65kw9c13dx4i6id1dpmby68zjy63mqbnyawrd";
-  };
-
-  packageName = "parse-declarations-1.0";
-
-  asdFilesToKeep = ["parse-declarations-1.0.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM parse-declarations-1.0 DESCRIPTION
-    Library to parse and rebuild declarations. SHA256
-    0r85b0jfacd28kr65kw9c13dx4i6id1dpmby68zjy63mqbnyawrd URL
-    http://beta.quicklisp.org/archive/parse-declarations/2010-10-06/parse-declarations-20101006-darcs.tgz
-    MD5 e49222003e5b59c5c2a0cf58b86cfdcd NAME parse-declarations-1.0 FILENAME
-    parse-declarations-1_dot_0 DEPS NIL DEPENDENCIES NIL VERSION
-    parse-declarations-20101006-darcs SIBLINGS NIL PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/parse-float.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/parse-float.nix
deleted file mode 100644
index 0ad2062417c9..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/parse-float.nix
+++ /dev/null
@@ -1,30 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "parse-float";
-  version = "20200218-git";
-
-  parasites = [ "parse-float-tests" ];
-
-  description = "Parse floating point values in strings.";
-
-  deps = [ args."alexandria" args."lisp-unit" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/parse-float/2020-02-18/parse-float-20200218-git.tgz";
-    sha256 = "02rhgn79hhv0p5ysj4gwk5bhmr2sj6cvkacbqzzw24qrzgcpdnfw";
-  };
-
-  packageName = "parse-float";
-
-  asdFilesToKeep = ["parse-float.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM parse-float DESCRIPTION Parse floating point values in strings.
-    SHA256 02rhgn79hhv0p5ysj4gwk5bhmr2sj6cvkacbqzzw24qrzgcpdnfw URL
-    http://beta.quicklisp.org/archive/parse-float/2020-02-18/parse-float-20200218-git.tgz
-    MD5 149e40a8c5fd6ab0e43242cb898d66bf NAME parse-float FILENAME parse-float
-    DEPS
-    ((NAME alexandria FILENAME alexandria) (NAME lisp-unit FILENAME lisp-unit))
-    DEPENDENCIES (alexandria lisp-unit) VERSION 20200218-git SIBLINGS NIL
-    PARASITES (parse-float-tests)) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/parse-number.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/parse-number.nix
deleted file mode 100644
index 44e936637219..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/parse-number.nix
+++ /dev/null
@@ -1,28 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "parse-number";
-  version = "v1.7";
-
-  parasites = [ "parse-number/tests" ];
-
-  description = "Number parsing library";
-
-  deps = [ ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/parse-number/2018-02-28/parse-number-v1.7.tgz";
-    sha256 = "11ji8856ipmqki5i4cw1zgx8hahfi8x1raz1xb20c4rmgad6nsha";
-  };
-
-  packageName = "parse-number";
-
-  asdFilesToKeep = ["parse-number.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM parse-number DESCRIPTION Number parsing library SHA256
-    11ji8856ipmqki5i4cw1zgx8hahfi8x1raz1xb20c4rmgad6nsha URL
-    http://beta.quicklisp.org/archive/parse-number/2018-02-28/parse-number-v1.7.tgz
-    MD5 b9ec925018b8f10193d73403873dde8f NAME parse-number FILENAME
-    parse-number DEPS NIL DEPENDENCIES NIL VERSION v1.7 SIBLINGS NIL PARASITES
-    (parse-number/tests)) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/parseq.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/parseq.nix
deleted file mode 100644
index 12bd80a6eb9b..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/parseq.nix
+++ /dev/null
@@ -1,28 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "parseq";
-  version = "20210531-git";
-
-  parasites = [ "parseq/test" ];
-
-  description = "A library for parsing sequences such as strings and lists using parsing expression grammars.";
-
-  deps = [ ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/parseq/2021-05-31/parseq-20210531-git.tgz";
-    sha256 = "1jh362avz2bbjrg9wwnjisa3ikxjxcgbddc0gqx65l6h9s87gqrg";
-  };
-
-  packageName = "parseq";
-
-  asdFilesToKeep = ["parseq.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM parseq DESCRIPTION
-    A library for parsing sequences such as strings and lists using parsing expression grammars.
-    SHA256 1jh362avz2bbjrg9wwnjisa3ikxjxcgbddc0gqx65l6h9s87gqrg URL
-    http://beta.quicklisp.org/archive/parseq/2021-05-31/parseq-20210531-git.tgz
-    MD5 a62fdb0623450f7ef82297e8b23fd343 NAME parseq FILENAME parseq DEPS NIL
-    DEPENDENCIES NIL VERSION 20210531-git SIBLINGS NIL PARASITES (parseq/test)) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/parser-combinators.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/parser-combinators.nix
deleted file mode 100644
index ae109ef3dca5..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/parser-combinators.nix
+++ /dev/null
@@ -1,31 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "parser-combinators";
-  version = "cl-20131111-git";
-
-  description = "An implementation of parser combinators for Common Lisp";
-
-  deps = [ args."alexandria" args."iterate" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/cl-parser-combinators/2013-11-11/cl-parser-combinators-20131111-git.tgz";
-    sha256 = "0wg1a7favbwqcxyqcy2zxi4l11qsp4ar9fvddmx960grf2d72lds";
-  };
-
-  packageName = "parser-combinators";
-
-  asdFilesToKeep = ["parser-combinators.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM parser-combinators DESCRIPTION
-    An implementation of parser combinators for Common Lisp SHA256
-    0wg1a7favbwqcxyqcy2zxi4l11qsp4ar9fvddmx960grf2d72lds URL
-    http://beta.quicklisp.org/archive/cl-parser-combinators/2013-11-11/cl-parser-combinators-20131111-git.tgz
-    MD5 25ad9b1459901738a6394422a41b8fec NAME parser-combinators FILENAME
-    parser-combinators DEPS
-    ((NAME alexandria FILENAME alexandria) (NAME iterate FILENAME iterate))
-    DEPENDENCIES (alexandria iterate) VERSION cl-20131111-git SIBLINGS
-    (parser-combinators-cl-ppcre parser-combinators-debug
-     parser-combinators-tests)
-    PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/parser_dot_common-rules.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/parser_dot_common-rules.nix
deleted file mode 100644
index 07d600b3a32b..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/parser_dot_common-rules.nix
+++ /dev/null
@@ -1,39 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "parser_dot_common-rules";
-  version = "20200715-git";
-
-  parasites = [ "parser.common-rules/test" ];
-
-  description = "Provides common parsing rules that are useful in many grammars.";
-
-  deps = [ args."alexandria" args."anaphora" args."esrap" args."fiveam" args."let-plus" args."split-sequence" args."trivial-with-current-source-form" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/parser.common-rules/2020-07-15/parser.common-rules-20200715-git.tgz";
-    sha256 = "17nw0shhb8079b26ldwpfxggkzs6ysfqm4s4nr1rfhba9mkvxdxy";
-  };
-
-  packageName = "parser.common-rules";
-
-  asdFilesToKeep = ["parser.common-rules.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM parser.common-rules DESCRIPTION
-    Provides common parsing rules that are useful in many grammars. SHA256
-    17nw0shhb8079b26ldwpfxggkzs6ysfqm4s4nr1rfhba9mkvxdxy URL
-    http://beta.quicklisp.org/archive/parser.common-rules/2020-07-15/parser.common-rules-20200715-git.tgz
-    MD5 6391d962ae6fc13cc57312de013504c5 NAME parser.common-rules FILENAME
-    parser_dot_common-rules DEPS
-    ((NAME alexandria FILENAME alexandria) (NAME anaphora FILENAME anaphora)
-     (NAME esrap FILENAME esrap) (NAME fiveam FILENAME fiveam)
-     (NAME let-plus FILENAME let-plus)
-     (NAME split-sequence FILENAME split-sequence)
-     (NAME trivial-with-current-source-form FILENAME
-      trivial-with-current-source-form))
-    DEPENDENCIES
-    (alexandria anaphora esrap fiveam let-plus split-sequence
-     trivial-with-current-source-form)
-    VERSION 20200715-git SIBLINGS (parser.common-rules.operators) PARASITES
-    (parser.common-rules/test)) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/pcall-queue.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/pcall-queue.nix
deleted file mode 100644
index 8de944a0c0a0..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/pcall-queue.nix
+++ /dev/null
@@ -1,28 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "pcall-queue";
-  version = "pcall-0.3";
-
-  description = "System lacks description";
-
-  deps = [ args."alexandria" args."bordeaux-threads" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/pcall/2010-10-06/pcall-0.3.tgz";
-    sha256 = "02idx1wnv9770fl2nh179sb8njw801g70b5mf8jqhqm2gwsb731y";
-  };
-
-  packageName = "pcall-queue";
-
-  asdFilesToKeep = ["pcall-queue.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM pcall-queue DESCRIPTION System lacks description SHA256
-    02idx1wnv9770fl2nh179sb8njw801g70b5mf8jqhqm2gwsb731y URL
-    http://beta.quicklisp.org/archive/pcall/2010-10-06/pcall-0.3.tgz MD5
-    019d85dfd1d5d0ee8d4ee475411caf6b NAME pcall-queue FILENAME pcall-queue DEPS
-    ((NAME alexandria FILENAME alexandria)
-     (NAME bordeaux-threads FILENAME bordeaux-threads))
-    DEPENDENCIES (alexandria bordeaux-threads) VERSION pcall-0.3 SIBLINGS
-    (pcall) PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/pcall.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/pcall.nix
deleted file mode 100644
index 085d284451e9..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/pcall.nix
+++ /dev/null
@@ -1,31 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "pcall";
-  version = "0.3";
-
-  parasites = [ "pcall-tests" ];
-
-  description = "System lacks description";
-
-  deps = [ args."alexandria" args."bordeaux-threads" args."fiveam" args."pcall-queue" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/pcall/2010-10-06/pcall-0.3.tgz";
-    sha256 = "02idx1wnv9770fl2nh179sb8njw801g70b5mf8jqhqm2gwsb731y";
-  };
-
-  packageName = "pcall";
-
-  asdFilesToKeep = ["pcall.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM pcall DESCRIPTION System lacks description SHA256
-    02idx1wnv9770fl2nh179sb8njw801g70b5mf8jqhqm2gwsb731y URL
-    http://beta.quicklisp.org/archive/pcall/2010-10-06/pcall-0.3.tgz MD5
-    019d85dfd1d5d0ee8d4ee475411caf6b NAME pcall FILENAME pcall DEPS
-    ((NAME alexandria FILENAME alexandria)
-     (NAME bordeaux-threads FILENAME bordeaux-threads)
-     (NAME fiveam FILENAME fiveam) (NAME pcall-queue FILENAME pcall-queue))
-    DEPENDENCIES (alexandria bordeaux-threads fiveam pcall-queue) VERSION 0.3
-    SIBLINGS (pcall-queue) PARASITES (pcall-tests)) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/physical-quantities.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/physical-quantities.nix
deleted file mode 100644
index 865d4f4791fb..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/physical-quantities.nix
+++ /dev/null
@@ -1,30 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "physical-quantities";
-  version = "20211020-git";
-
-  parasites = [ "physical-quantities/test" ];
-
-  description = "A library that provides a numeric type with optional unit and/or uncertainty for computations with automatic error propagation.";
-
-  deps = [ args."parseq" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/physical-quantities/2021-10-20/physical-quantities-20211020-git.tgz";
-    sha256 = "1ix04gjcsjzry5rl1rqsrg1r3hw985gfvl1847va36y03qzbmhgx";
-  };
-
-  packageName = "physical-quantities";
-
-  asdFilesToKeep = ["physical-quantities.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM physical-quantities DESCRIPTION
-    A library that provides a numeric type with optional unit and/or uncertainty for computations with automatic error propagation.
-    SHA256 1ix04gjcsjzry5rl1rqsrg1r3hw985gfvl1847va36y03qzbmhgx URL
-    http://beta.quicklisp.org/archive/physical-quantities/2021-10-20/physical-quantities-20211020-git.tgz
-    MD5 a322db845056f78a237630a565b41490 NAME physical-quantities FILENAME
-    physical-quantities DEPS ((NAME parseq FILENAME parseq)) DEPENDENCIES
-    (parseq) VERSION 20211020-git SIBLINGS NIL PARASITES
-    (physical-quantities/test)) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/plump.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/plump.nix
deleted file mode 100644
index 51767965a083..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/plump.nix
+++ /dev/null
@@ -1,30 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "plump";
-  version = "20210630-git";
-
-  description = "An XML / XHTML / HTML parser that aims to be as lenient as possible.";
-
-  deps = [ args."array-utils" args."documentation-utils" args."trivial-indent" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/plump/2021-06-30/plump-20210630-git.tgz";
-    sha256 = "0wx5l2q5hsdshdrmlpnjdlyksw6rl5f2snad18xkmmyiwwn7wv2h";
-  };
-
-  packageName = "plump";
-
-  asdFilesToKeep = ["plump.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM plump DESCRIPTION
-    An XML / XHTML / HTML parser that aims to be as lenient as possible. SHA256
-    0wx5l2q5hsdshdrmlpnjdlyksw6rl5f2snad18xkmmyiwwn7wv2h URL
-    http://beta.quicklisp.org/archive/plump/2021-06-30/plump-20210630-git.tgz
-    MD5 b15f7f4f52893ef41ca8a12e6e959dc1 NAME plump FILENAME plump DEPS
-    ((NAME array-utils FILENAME array-utils)
-     (NAME documentation-utils FILENAME documentation-utils)
-     (NAME trivial-indent FILENAME trivial-indent))
-    DEPENDENCIES (array-utils documentation-utils trivial-indent) VERSION
-    20210630-git SIBLINGS (plump-dom plump-lexer plump-parser) PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/postmodern.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/postmodern.nix
deleted file mode 100644
index 0fb11190e782..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/postmodern.nix
+++ /dev/null
@@ -1,50 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "postmodern";
-  version = "20211209-git";
-
-  parasites = [ "postmodern/tests" ];
-
-  description = "PostgreSQL programming API";
-
-  deps = [ args."alexandria" args."bordeaux-threads" args."cl-base64" args."cl-postgres" args."cl-postgres_plus_local-time" args."cl-postgres_slash_tests" args."cl-ppcre" args."closer-mop" args."fiveam" args."global-vars" args."ironclad" args."local-time" args."md5" args."s-sql" args."s-sql_slash_tests" args."simple-date" args."simple-date_slash_postgres-glue" args."split-sequence" args."uax-15" args."uiop" args."usocket" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/postmodern/2021-12-09/postmodern-20211209-git.tgz";
-    sha256 = "1qcbg31mz5r7ibmq2y7r3vqvdwpznxvwdnwd94hfil7pg4j119d6";
-  };
-
-  packageName = "postmodern";
-
-  asdFilesToKeep = ["postmodern.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM postmodern DESCRIPTION PostgreSQL programming API SHA256
-    1qcbg31mz5r7ibmq2y7r3vqvdwpznxvwdnwd94hfil7pg4j119d6 URL
-    http://beta.quicklisp.org/archive/postmodern/2021-12-09/postmodern-20211209-git.tgz
-    MD5 6d14c4b5fec085594dc66d520174e0e6 NAME postmodern FILENAME postmodern
-    DEPS
-    ((NAME alexandria FILENAME alexandria)
-     (NAME bordeaux-threads FILENAME bordeaux-threads)
-     (NAME cl-base64 FILENAME cl-base64)
-     (NAME cl-postgres FILENAME cl-postgres)
-     (NAME cl-postgres+local-time FILENAME cl-postgres_plus_local-time)
-     (NAME cl-postgres/tests FILENAME cl-postgres_slash_tests)
-     (NAME cl-ppcre FILENAME cl-ppcre) (NAME closer-mop FILENAME closer-mop)
-     (NAME fiveam FILENAME fiveam) (NAME global-vars FILENAME global-vars)
-     (NAME ironclad FILENAME ironclad) (NAME local-time FILENAME local-time)
-     (NAME md5 FILENAME md5) (NAME s-sql FILENAME s-sql)
-     (NAME s-sql/tests FILENAME s-sql_slash_tests)
-     (NAME simple-date FILENAME simple-date)
-     (NAME simple-date/postgres-glue FILENAME simple-date_slash_postgres-glue)
-     (NAME split-sequence FILENAME split-sequence)
-     (NAME uax-15 FILENAME uax-15) (NAME uiop FILENAME uiop)
-     (NAME usocket FILENAME usocket))
-    DEPENDENCIES
-    (alexandria bordeaux-threads cl-base64 cl-postgres cl-postgres+local-time
-     cl-postgres/tests cl-ppcre closer-mop fiveam global-vars ironclad
-     local-time md5 s-sql s-sql/tests simple-date simple-date/postgres-glue
-     split-sequence uax-15 uiop usocket)
-    VERSION 20211209-git SIBLINGS (cl-postgres s-sql simple-date) PARASITES
-    (postmodern/tests)) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/proc-parse.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/proc-parse.nix
deleted file mode 100644
index cf13ad3e4c6f..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/proc-parse.nix
+++ /dev/null
@@ -1,29 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "proc-parse";
-  version = "20190813-git";
-
-  description = "Procedural vector parser";
-
-  deps = [ args."alexandria" args."babel" args."trivial-features" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/proc-parse/2019-08-13/proc-parse-20190813-git.tgz";
-    sha256 = "126l7mqxjcgw2limddgrdq63cdhwkhaxabxl9l0bjadf92nczg0j";
-  };
-
-  packageName = "proc-parse";
-
-  asdFilesToKeep = ["proc-parse.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM proc-parse DESCRIPTION Procedural vector parser SHA256
-    126l7mqxjcgw2limddgrdq63cdhwkhaxabxl9l0bjadf92nczg0j URL
-    http://beta.quicklisp.org/archive/proc-parse/2019-08-13/proc-parse-20190813-git.tgz
-    MD5 99bdce79943071267c6a877d8de246c5 NAME proc-parse FILENAME proc-parse
-    DEPS
-    ((NAME alexandria FILENAME alexandria) (NAME babel FILENAME babel)
-     (NAME trivial-features FILENAME trivial-features))
-    DEPENDENCIES (alexandria babel trivial-features) VERSION 20190813-git
-    SIBLINGS (proc-parse-test) PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/prove-asdf.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/prove-asdf.nix
deleted file mode 100644
index 3342d9ac8452..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/prove-asdf.nix
+++ /dev/null
@@ -1,26 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "prove-asdf";
-  version = "prove-20200218-git";
-
-  description = "System lacks description";
-
-  deps = [ ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/prove/2020-02-18/prove-20200218-git.tgz";
-    sha256 = "1sv3zyam9sdmyis5lyv0khvw82q7bcpsycpj9b3bsv9isb4j30zn";
-  };
-
-  packageName = "prove-asdf";
-
-  asdFilesToKeep = ["prove-asdf.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM prove-asdf DESCRIPTION System lacks description SHA256
-    1sv3zyam9sdmyis5lyv0khvw82q7bcpsycpj9b3bsv9isb4j30zn URL
-    http://beta.quicklisp.org/archive/prove/2020-02-18/prove-20200218-git.tgz
-    MD5 85780b65e84c17a78d658364b8c4d11b NAME prove-asdf FILENAME prove-asdf
-    DEPS NIL DEPENDENCIES NIL VERSION prove-20200218-git SIBLINGS
-    (cl-test-more prove-test prove) PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/prove.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/prove.nix
deleted file mode 100644
index 5bb82db7a9b8..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/prove.nix
+++ /dev/null
@@ -1,34 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "prove";
-  version = "20200218-git";
-
-  description = "System lacks description";
-
-  deps = [ args."alexandria" args."anaphora" args."cl-ansi-text" args."cl-colors" args."cl-colors2" args."cl-ppcre" args."let-plus" args."uiop" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/prove/2020-02-18/prove-20200218-git.tgz";
-    sha256 = "1sv3zyam9sdmyis5lyv0khvw82q7bcpsycpj9b3bsv9isb4j30zn";
-  };
-
-  packageName = "prove";
-
-  asdFilesToKeep = ["prove.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM prove DESCRIPTION System lacks description SHA256
-    1sv3zyam9sdmyis5lyv0khvw82q7bcpsycpj9b3bsv9isb4j30zn URL
-    http://beta.quicklisp.org/archive/prove/2020-02-18/prove-20200218-git.tgz
-    MD5 85780b65e84c17a78d658364b8c4d11b NAME prove FILENAME prove DEPS
-    ((NAME alexandria FILENAME alexandria) (NAME anaphora FILENAME anaphora)
-     (NAME cl-ansi-text FILENAME cl-ansi-text)
-     (NAME cl-colors FILENAME cl-colors) (NAME cl-colors2 FILENAME cl-colors2)
-     (NAME cl-ppcre FILENAME cl-ppcre) (NAME let-plus FILENAME let-plus)
-     (NAME uiop FILENAME uiop))
-    DEPENDENCIES
-    (alexandria anaphora cl-ansi-text cl-colors cl-colors2 cl-ppcre let-plus
-     uiop)
-    VERSION 20200218-git SIBLINGS (cl-test-more prove-asdf prove-test)
-    PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/ptester.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/ptester.nix
deleted file mode 100644
index 312da100b915..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/ptester.nix
+++ /dev/null
@@ -1,25 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "ptester";
-  version = "20160929-git";
-
-  description = "Portable test harness package";
-
-  deps = [ ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/ptester/2016-09-29/ptester-20160929-git.tgz";
-    sha256 = "04rlq1zljhxc65pm31bah3sq3as24l0sdivz440s79qlnnyh13hz";
-  };
-
-  packageName = "ptester";
-
-  asdFilesToKeep = ["ptester.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM ptester DESCRIPTION Portable test harness package SHA256
-    04rlq1zljhxc65pm31bah3sq3as24l0sdivz440s79qlnnyh13hz URL
-    http://beta.quicklisp.org/archive/ptester/2016-09-29/ptester-20160929-git.tgz
-    MD5 938a4366b6608ae5c4a0be9da11a61d4 NAME ptester FILENAME ptester DEPS NIL
-    DEPENDENCIES NIL VERSION 20160929-git SIBLINGS NIL PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/puri.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/puri.nix
deleted file mode 100644
index fc5b609ba7d5..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/puri.nix
+++ /dev/null
@@ -1,28 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "puri";
-  version = "20201016-git";
-
-  parasites = [ "puri/test" ];
-
-  description = "Portable Universal Resource Indentifier Library";
-
-  deps = [ args."ptester" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/puri/2020-10-16/puri-20201016-git.tgz";
-    sha256 = "16h7gip6d0564s9yba3jg0rjzndmysv531hcrngvi3j3sandjfzx";
-  };
-
-  packageName = "puri";
-
-  asdFilesToKeep = ["puri.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM puri DESCRIPTION Portable Universal Resource Indentifier Library
-    SHA256 16h7gip6d0564s9yba3jg0rjzndmysv531hcrngvi3j3sandjfzx URL
-    http://beta.quicklisp.org/archive/puri/2020-10-16/puri-20201016-git.tgz MD5
-    890c61df1d7204b2d681bf146c43e711 NAME puri FILENAME puri DEPS
-    ((NAME ptester FILENAME ptester)) DEPENDENCIES (ptester) VERSION
-    20201016-git SIBLINGS NIL PARASITES (puri/test)) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/pythonic-string-reader.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/pythonic-string-reader.nix
deleted file mode 100644
index 10809743daf4..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/pythonic-string-reader.nix
+++ /dev/null
@@ -1,30 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "pythonic-string-reader";
-  version = "20180711-git";
-
-  description = "A simple and unintrusive read table modification that allows for
-simple string literal definition that doesn't require escaping characters.";
-
-  deps = [ args."named-readtables" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/pythonic-string-reader/2018-07-11/pythonic-string-reader-20180711-git.tgz";
-    sha256 = "0gr6sbkmfwca9r0xa5vczjm4s9psbrqy5hvijkp5g42b0b7x5myx";
-  };
-
-  packageName = "pythonic-string-reader";
-
-  asdFilesToKeep = ["pythonic-string-reader.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM pythonic-string-reader DESCRIPTION
-    A simple and unintrusive read table modification that allows for
-simple string literal definition that doesn't require escaping characters.
-    SHA256 0gr6sbkmfwca9r0xa5vczjm4s9psbrqy5hvijkp5g42b0b7x5myx URL
-    http://beta.quicklisp.org/archive/pythonic-string-reader/2018-07-11/pythonic-string-reader-20180711-git.tgz
-    MD5 8156636895b1148fad6e7bcedeb6b556 NAME pythonic-string-reader FILENAME
-    pythonic-string-reader DEPS
-    ((NAME named-readtables FILENAME named-readtables)) DEPENDENCIES
-    (named-readtables) VERSION 20180711-git SIBLINGS NIL PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/quasiquote-2_dot_0.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/quasiquote-2_dot_0.nix
deleted file mode 100644
index 146d5cf06d1a..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/quasiquote-2_dot_0.nix
+++ /dev/null
@@ -1,31 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "quasiquote-2_dot_0";
-  version = "20150505-git";
-
-  parasites = [ "quasiquote-2.0-tests" ];
-
-  description = "Writing macros that write macros. Effortless.";
-
-  deps = [ args."fiveam" args."iterate" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/quasiquote-2.0/2015-05-05/quasiquote-2.0-20150505-git.tgz";
-    sha256 = "0bgcqk7wp7qblw7avsawkg24zjiq9vgsbfa0yhk64avhxwjw6974";
-  };
-
-  packageName = "quasiquote-2.0";
-
-  asdFilesToKeep = ["quasiquote-2.0.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM quasiquote-2.0 DESCRIPTION
-    Writing macros that write macros. Effortless. SHA256
-    0bgcqk7wp7qblw7avsawkg24zjiq9vgsbfa0yhk64avhxwjw6974 URL
-    http://beta.quicklisp.org/archive/quasiquote-2.0/2015-05-05/quasiquote-2.0-20150505-git.tgz
-    MD5 7c557e0c10cf7608afa5a20e4a83c778 NAME quasiquote-2.0 FILENAME
-    quasiquote-2_dot_0 DEPS
-    ((NAME fiveam FILENAME fiveam) (NAME iterate FILENAME iterate))
-    DEPENDENCIES (fiveam iterate) VERSION 20150505-git SIBLINGS NIL PARASITES
-    (quasiquote-2.0-tests)) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/query-fs.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/query-fs.nix
deleted file mode 100644
index fca9989ccb4a..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/query-fs.nix
+++ /dev/null
@@ -1,44 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "query-fs";
-  version = "20200610-git";
-
-  description = "High-level virtual FS using CL-Fuse-Meta-FS to represent results of queries";
-
-  deps = [ args."alexandria" args."babel" args."bordeaux-threads" args."cffi" args."cffi-grovel" args."cffi-toolchain" args."cl-fuse" args."cl-fuse-meta-fs" args."cl-ppcre" args."cl-utilities" args."command-line-arguments" args."iterate" args."pcall" args."pcall-queue" args."trivial-backtrace" args."trivial-features" args."trivial-utf-8" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/query-fs/2020-06-10/query-fs-20200610-git.tgz";
-    sha256 = "1kcq2xs5dqwbhapknrynanwqn3c9h4cpi7hf362il2p6v6y4r413";
-  };
-
-  packageName = "query-fs";
-
-  asdFilesToKeep = ["query-fs.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM query-fs DESCRIPTION
-    High-level virtual FS using CL-Fuse-Meta-FS to represent results of queries
-    SHA256 1kcq2xs5dqwbhapknrynanwqn3c9h4cpi7hf362il2p6v6y4r413 URL
-    http://beta.quicklisp.org/archive/query-fs/2020-06-10/query-fs-20200610-git.tgz
-    MD5 d30cbd09a2f326c95057b2c6537d5cdb NAME query-fs FILENAME query-fs DEPS
-    ((NAME alexandria FILENAME alexandria) (NAME babel FILENAME babel)
-     (NAME bordeaux-threads FILENAME bordeaux-threads)
-     (NAME cffi FILENAME cffi) (NAME cffi-grovel FILENAME cffi-grovel)
-     (NAME cffi-toolchain FILENAME cffi-toolchain)
-     (NAME cl-fuse FILENAME cl-fuse)
-     (NAME cl-fuse-meta-fs FILENAME cl-fuse-meta-fs)
-     (NAME cl-ppcre FILENAME cl-ppcre)
-     (NAME cl-utilities FILENAME cl-utilities)
-     (NAME command-line-arguments FILENAME command-line-arguments)
-     (NAME iterate FILENAME iterate) (NAME pcall FILENAME pcall)
-     (NAME pcall-queue FILENAME pcall-queue)
-     (NAME trivial-backtrace FILENAME trivial-backtrace)
-     (NAME trivial-features FILENAME trivial-features)
-     (NAME trivial-utf-8 FILENAME trivial-utf-8))
-    DEPENDENCIES
-    (alexandria babel bordeaux-threads cffi cffi-grovel cffi-toolchain cl-fuse
-     cl-fuse-meta-fs cl-ppcre cl-utilities command-line-arguments iterate pcall
-     pcall-queue trivial-backtrace trivial-features trivial-utf-8)
-    VERSION 20200610-git SIBLINGS NIL PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/quri.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/quri.nix
deleted file mode 100644
index 43f0d75e8b11..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/quri.nix
+++ /dev/null
@@ -1,31 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "quri";
-  version = "20210630-git";
-
-  description = "Yet another URI library for Common Lisp";
-
-  deps = [ args."alexandria" args."babel" args."cl-utilities" args."split-sequence" args."trivial-features" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/quri/2021-06-30/quri-20210630-git.tgz";
-    sha256 = "0ihgsqdzi9rh8ybc221g46c5h7i4vrz67znwv76rm2z44v8x0wwh";
-  };
-
-  packageName = "quri";
-
-  asdFilesToKeep = ["quri.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM quri DESCRIPTION Yet another URI library for Common Lisp SHA256
-    0ihgsqdzi9rh8ybc221g46c5h7i4vrz67znwv76rm2z44v8x0wwh URL
-    http://beta.quicklisp.org/archive/quri/2021-06-30/quri-20210630-git.tgz MD5
-    3dcaaa9b94f6e4a0c5f4bd0829a045a7 NAME quri FILENAME quri DEPS
-    ((NAME alexandria FILENAME alexandria) (NAME babel FILENAME babel)
-     (NAME cl-utilities FILENAME cl-utilities)
-     (NAME split-sequence FILENAME split-sequence)
-     (NAME trivial-features FILENAME trivial-features))
-    DEPENDENCIES
-    (alexandria babel cl-utilities split-sequence trivial-features) VERSION
-    20210630-git SIBLINGS (quri-test) PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/rfc2388.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/rfc2388.nix
deleted file mode 100644
index 503136d7566e..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/rfc2388.nix
+++ /dev/null
@@ -1,25 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "rfc2388";
-  version = "20180831-git";
-
-  description = "Implementation of RFC 2388";
-
-  deps = [ ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/rfc2388/2018-08-31/rfc2388-20180831-git.tgz";
-    sha256 = "1r7vvrlq2wl213bm2aknkf34ynpl8y4nbkfir79srrdsl1337z33";
-  };
-
-  packageName = "rfc2388";
-
-  asdFilesToKeep = ["rfc2388.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM rfc2388 DESCRIPTION Implementation of RFC 2388 SHA256
-    1r7vvrlq2wl213bm2aknkf34ynpl8y4nbkfir79srrdsl1337z33 URL
-    http://beta.quicklisp.org/archive/rfc2388/2018-08-31/rfc2388-20180831-git.tgz
-    MD5 f57e3c588e5e08210516260e67d69226 NAME rfc2388 FILENAME rfc2388 DEPS NIL
-    DEPENDENCIES NIL VERSION 20180831-git SIBLINGS NIL PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/rove.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/rove.nix
deleted file mode 100644
index c02f2cd2ed19..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/rove.nix
+++ /dev/null
@@ -1,31 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "rove";
-  version = "20211209-git";
-
-  description = "Yet another testing framework intended to be a successor of Prove";
-
-  deps = [ args."alexandria" args."bordeaux-threads" args."dissect" args."trivial-gray-streams" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/rove/2021-12-09/rove-20211209-git.tgz";
-    sha256 = "1b1fajdxnba743l7mv4nc31az2g7mapalq3z3l57j7r5sximf0qr";
-  };
-
-  packageName = "rove";
-
-  asdFilesToKeep = ["rove.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM rove DESCRIPTION
-    Yet another testing framework intended to be a successor of Prove SHA256
-    1b1fajdxnba743l7mv4nc31az2g7mapalq3z3l57j7r5sximf0qr URL
-    http://beta.quicklisp.org/archive/rove/2021-12-09/rove-20211209-git.tgz MD5
-    d9f6cb2e26f06cfbd5c83bf3fa4fc206 NAME rove FILENAME rove DEPS
-    ((NAME alexandria FILENAME alexandria)
-     (NAME bordeaux-threads FILENAME bordeaux-threads)
-     (NAME dissect FILENAME dissect)
-     (NAME trivial-gray-streams FILENAME trivial-gray-streams))
-    DEPENDENCIES (alexandria bordeaux-threads dissect trivial-gray-streams)
-    VERSION 20211209-git SIBLINGS NIL PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/rt.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/rt.nix
deleted file mode 100644
index cfc37364baae..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/rt.nix
+++ /dev/null
@@ -1,25 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "rt";
-  version = "20101006-git";
-
-  description = "MIT Regression Tester";
-
-  deps = [ ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/rt/2010-10-06/rt-20101006-git.tgz";
-    sha256 = "1jncar0xwkqk8yrc2dln389ivvgzs7ijdhhs3zpfyi5d21f0qa1v";
-  };
-
-  packageName = "rt";
-
-  asdFilesToKeep = ["rt.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM rt DESCRIPTION MIT Regression Tester SHA256
-    1jncar0xwkqk8yrc2dln389ivvgzs7ijdhhs3zpfyi5d21f0qa1v URL
-    http://beta.quicklisp.org/archive/rt/2010-10-06/rt-20101006-git.tgz MD5
-    94a56c473399572ca835ac91c77c04e5 NAME rt FILENAME rt DEPS NIL DEPENDENCIES
-    NIL VERSION 20101006-git SIBLINGS NIL PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/s-sql.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/s-sql.nix
deleted file mode 100644
index 510475d89baa..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/s-sql.nix
+++ /dev/null
@@ -1,43 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "s-sql";
-  version = "postmodern-20211209-git";
-
-  parasites = [ "s-sql/tests" ];
-
-  description = "Lispy DSL for SQL";
-
-  deps = [ args."alexandria" args."bordeaux-threads" args."cl-base64" args."cl-postgres" args."cl-postgres_slash_tests" args."cl-ppcre" args."closer-mop" args."fiveam" args."global-vars" args."ironclad" args."md5" args."postmodern" args."split-sequence" args."uax-15" args."usocket" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/postmodern/2021-12-09/postmodern-20211209-git.tgz";
-    sha256 = "1qcbg31mz5r7ibmq2y7r3vqvdwpznxvwdnwd94hfil7pg4j119d6";
-  };
-
-  packageName = "s-sql";
-
-  asdFilesToKeep = ["s-sql.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM s-sql DESCRIPTION Lispy DSL for SQL SHA256
-    1qcbg31mz5r7ibmq2y7r3vqvdwpznxvwdnwd94hfil7pg4j119d6 URL
-    http://beta.quicklisp.org/archive/postmodern/2021-12-09/postmodern-20211209-git.tgz
-    MD5 6d14c4b5fec085594dc66d520174e0e6 NAME s-sql FILENAME s-sql DEPS
-    ((NAME alexandria FILENAME alexandria)
-     (NAME bordeaux-threads FILENAME bordeaux-threads)
-     (NAME cl-base64 FILENAME cl-base64)
-     (NAME cl-postgres FILENAME cl-postgres)
-     (NAME cl-postgres/tests FILENAME cl-postgres_slash_tests)
-     (NAME cl-ppcre FILENAME cl-ppcre) (NAME closer-mop FILENAME closer-mop)
-     (NAME fiveam FILENAME fiveam) (NAME global-vars FILENAME global-vars)
-     (NAME ironclad FILENAME ironclad) (NAME md5 FILENAME md5)
-     (NAME postmodern FILENAME postmodern)
-     (NAME split-sequence FILENAME split-sequence)
-     (NAME uax-15 FILENAME uax-15) (NAME usocket FILENAME usocket))
-    DEPENDENCIES
-    (alexandria bordeaux-threads cl-base64 cl-postgres cl-postgres/tests
-     cl-ppcre closer-mop fiveam global-vars ironclad md5 postmodern
-     split-sequence uax-15 usocket)
-    VERSION postmodern-20211209-git SIBLINGS
-    (cl-postgres postmodern simple-date) PARASITES (s-sql/tests)) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/s-sysdeps.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/s-sysdeps.nix
deleted file mode 100644
index fb69a001543a..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/s-sysdeps.nix
+++ /dev/null
@@ -1,33 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "s-sysdeps";
-  version = "20210228-git";
-
-  description = "An abstraction layer over platform dependent functionality";
-
-  deps = [ args."alexandria" args."bordeaux-threads" args."split-sequence" args."usocket" args."usocket-server" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/s-sysdeps/2021-02-28/s-sysdeps-20210228-git.tgz";
-    sha256 = "0pybgicif1qavvix9183g4ahjrgcax3qf2ab523cas8l79lr1xkw";
-  };
-
-  packageName = "s-sysdeps";
-
-  asdFilesToKeep = ["s-sysdeps.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM s-sysdeps DESCRIPTION
-    An abstraction layer over platform dependent functionality SHA256
-    0pybgicif1qavvix9183g4ahjrgcax3qf2ab523cas8l79lr1xkw URL
-    http://beta.quicklisp.org/archive/s-sysdeps/2021-02-28/s-sysdeps-20210228-git.tgz
-    MD5 25d8c1673457341bf60a20752fe59772 NAME s-sysdeps FILENAME s-sysdeps DEPS
-    ((NAME alexandria FILENAME alexandria)
-     (NAME bordeaux-threads FILENAME bordeaux-threads)
-     (NAME split-sequence FILENAME split-sequence)
-     (NAME usocket FILENAME usocket)
-     (NAME usocket-server FILENAME usocket-server))
-    DEPENDENCIES
-    (alexandria bordeaux-threads split-sequence usocket usocket-server) VERSION
-    20210228-git SIBLINGS NIL PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/s-xml.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/s-xml.nix
deleted file mode 100644
index 260f5a9ff1bf..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/s-xml.nix
+++ /dev/null
@@ -1,28 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "s-xml";
-  version = "20150608-git";
-
-  parasites = [ "s-xml.examples" "s-xml.test" ];
-
-  description = "Simple Common Lisp XML Parser";
-
-  deps = [ ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/s-xml/2015-06-08/s-xml-20150608-git.tgz";
-    sha256 = "0cy36wqzasqma4maw9djq1vdwsp5hxq8svlbnhbv9sq9zzys5viq";
-  };
-
-  packageName = "s-xml";
-
-  asdFilesToKeep = ["s-xml.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM s-xml DESCRIPTION Simple Common Lisp XML Parser SHA256
-    0cy36wqzasqma4maw9djq1vdwsp5hxq8svlbnhbv9sq9zzys5viq URL
-    http://beta.quicklisp.org/archive/s-xml/2015-06-08/s-xml-20150608-git.tgz
-    MD5 9c31c80f0661777c493fab683f776716 NAME s-xml FILENAME s-xml DEPS NIL
-    DEPENDENCIES NIL VERSION 20150608-git SIBLINGS NIL PARASITES
-    (s-xml.examples s-xml.test)) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/salza2.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/salza2.nix
deleted file mode 100644
index 974597faedbe..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/salza2.nix
+++ /dev/null
@@ -1,34 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "salza2";
-  version = "2.1";
-
-  parasites = [ "salza2/test" ];
-
-  description = "Create compressed data in the ZLIB, DEFLATE, or GZIP
-  data formats";
-
-  deps = [ args."chipz" args."flexi-streams" args."parachute" args."trivial-gray-streams" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/salza2/2021-10-20/salza2-2.1.tgz";
-    sha256 = "0ymx3bm2a9a3fwxbvcyzfy0cdfl5y0csyw5cybxy0whkwipgra0x";
-  };
-
-  packageName = "salza2";
-
-  asdFilesToKeep = ["salza2.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM salza2 DESCRIPTION
-    Create compressed data in the ZLIB, DEFLATE, or GZIP
-  data formats
-    SHA256 0ymx3bm2a9a3fwxbvcyzfy0cdfl5y0csyw5cybxy0whkwipgra0x URL
-    http://beta.quicklisp.org/archive/salza2/2021-10-20/salza2-2.1.tgz MD5
-    867f3e0543a7e34d1be802062cf4893d NAME salza2 FILENAME salza2 DEPS
-    ((NAME chipz FILENAME chipz) (NAME flexi-streams FILENAME flexi-streams)
-     (NAME parachute FILENAME parachute)
-     (NAME trivial-gray-streams FILENAME trivial-gray-streams))
-    DEPENDENCIES (chipz flexi-streams parachute trivial-gray-streams) VERSION
-    2.1 SIBLINGS NIL PARASITES (salza2/test)) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/select.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/select.nix
deleted file mode 100644
index 88faf82d63c4..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/select.nix
+++ /dev/null
@@ -1,30 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "select";
-  version = "20210411-git";
-
-  parasites = [ "select/tests" ];
-
-  description = "DSL for array slices.";
-
-  deps = [ args."alexandria" args."anaphora" args."fiveam" args."let-plus" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/select/2021-04-11/select-20210411-git.tgz";
-    sha256 = "02xag0vpnqzfzw2mvrw6nwfhhy0iwq3zcvdh60cvx39labfvfdgb";
-  };
-
-  packageName = "select";
-
-  asdFilesToKeep = ["select.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM select DESCRIPTION DSL for array slices. SHA256
-    02xag0vpnqzfzw2mvrw6nwfhhy0iwq3zcvdh60cvx39labfvfdgb URL
-    http://beta.quicklisp.org/archive/select/2021-04-11/select-20210411-git.tgz
-    MD5 3e9c06e580f9e3a8911317ae8b95d0da NAME select FILENAME select DEPS
-    ((NAME alexandria FILENAME alexandria) (NAME anaphora FILENAME anaphora)
-     (NAME fiveam FILENAME fiveam) (NAME let-plus FILENAME let-plus))
-    DEPENDENCIES (alexandria anaphora fiveam let-plus) VERSION 20210411-git
-    SIBLINGS NIL PARASITES (select/tests)) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/serapeum.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/serapeum.nix
deleted file mode 100644
index 4500ca4bf5f3..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/serapeum.nix
+++ /dev/null
@@ -1,63 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "serapeum";
-  version = "20211209-git";
-
-  description = "Utilities beyond Alexandria.";
-
-  deps = [ args."alexandria" args."babel" args."bordeaux-threads" args."closer-mop" args."fare-quasiquote" args."fare-quasiquote-extras" args."fare-quasiquote-optima" args."fare-quasiquote-readtable" args."fare-utils" args."global-vars" args."introspect-environment" args."iterate" args."lisp-namespace" args."named-readtables" args."parse-declarations-1_dot_0" args."parse-number" args."split-sequence" args."string-case" args."trivia" args."trivia_dot_balland2006" args."trivia_dot_level0" args."trivia_dot_level1" args."trivia_dot_level2" args."trivia_dot_quasiquote" args."trivia_dot_trivial" args."trivial-cltl2" args."trivial-features" args."trivial-file-size" args."trivial-garbage" args."trivial-macroexpand-all" args."type-i" args."uiop" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/serapeum/2021-12-09/serapeum-20211209-git.tgz";
-    sha256 = "19ndbi69b60rxh1jvs7jrwg6bgzpkrfd22cnhyd2mir4ybmrdllh";
-  };
-
-  packageName = "serapeum";
-
-  asdFilesToKeep = ["serapeum.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM serapeum DESCRIPTION Utilities beyond Alexandria. SHA256
-    19ndbi69b60rxh1jvs7jrwg6bgzpkrfd22cnhyd2mir4ybmrdllh URL
-    http://beta.quicklisp.org/archive/serapeum/2021-12-09/serapeum-20211209-git.tgz
-    MD5 be358e1693fd0883042d849199ab72d1 NAME serapeum FILENAME serapeum DEPS
-    ((NAME alexandria FILENAME alexandria) (NAME babel FILENAME babel)
-     (NAME bordeaux-threads FILENAME bordeaux-threads)
-     (NAME closer-mop FILENAME closer-mop)
-     (NAME fare-quasiquote FILENAME fare-quasiquote)
-     (NAME fare-quasiquote-extras FILENAME fare-quasiquote-extras)
-     (NAME fare-quasiquote-optima FILENAME fare-quasiquote-optima)
-     (NAME fare-quasiquote-readtable FILENAME fare-quasiquote-readtable)
-     (NAME fare-utils FILENAME fare-utils)
-     (NAME global-vars FILENAME global-vars)
-     (NAME introspect-environment FILENAME introspect-environment)
-     (NAME iterate FILENAME iterate)
-     (NAME lisp-namespace FILENAME lisp-namespace)
-     (NAME named-readtables FILENAME named-readtables)
-     (NAME parse-declarations-1.0 FILENAME parse-declarations-1_dot_0)
-     (NAME parse-number FILENAME parse-number)
-     (NAME split-sequence FILENAME split-sequence)
-     (NAME string-case FILENAME string-case) (NAME trivia FILENAME trivia)
-     (NAME trivia.balland2006 FILENAME trivia_dot_balland2006)
-     (NAME trivia.level0 FILENAME trivia_dot_level0)
-     (NAME trivia.level1 FILENAME trivia_dot_level1)
-     (NAME trivia.level2 FILENAME trivia_dot_level2)
-     (NAME trivia.quasiquote FILENAME trivia_dot_quasiquote)
-     (NAME trivia.trivial FILENAME trivia_dot_trivial)
-     (NAME trivial-cltl2 FILENAME trivial-cltl2)
-     (NAME trivial-features FILENAME trivial-features)
-     (NAME trivial-file-size FILENAME trivial-file-size)
-     (NAME trivial-garbage FILENAME trivial-garbage)
-     (NAME trivial-macroexpand-all FILENAME trivial-macroexpand-all)
-     (NAME type-i FILENAME type-i) (NAME uiop FILENAME uiop))
-    DEPENDENCIES
-    (alexandria babel bordeaux-threads closer-mop fare-quasiquote
-     fare-quasiquote-extras fare-quasiquote-optima fare-quasiquote-readtable
-     fare-utils global-vars introspect-environment iterate lisp-namespace
-     named-readtables parse-declarations-1.0 parse-number split-sequence
-     string-case trivia trivia.balland2006 trivia.level0 trivia.level1
-     trivia.level2 trivia.quasiquote trivia.trivial trivial-cltl2
-     trivial-features trivial-file-size trivial-garbage trivial-macroexpand-all
-     type-i uiop)
-    VERSION 20211209-git SIBLINGS NIL PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/simple-date-time.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/simple-date-time.nix
deleted file mode 100644
index 83466bf1d98e..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/simple-date-time.nix
+++ /dev/null
@@ -1,26 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "simple-date-time";
-  version = "20160421-git";
-
-  description = "date and time library for common lisp";
-
-  deps = [ args."cl-ppcre" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/simple-date-time/2016-04-21/simple-date-time-20160421-git.tgz";
-    sha256 = "1db9n7pspxkqkzz12829a1lp7v4ghrnlb7g3wh04yz6m224d3i4h";
-  };
-
-  packageName = "simple-date-time";
-
-  asdFilesToKeep = ["simple-date-time.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM simple-date-time DESCRIPTION date and time library for common lisp
-    SHA256 1db9n7pspxkqkzz12829a1lp7v4ghrnlb7g3wh04yz6m224d3i4h URL
-    http://beta.quicklisp.org/archive/simple-date-time/2016-04-21/simple-date-time-20160421-git.tgz
-    MD5 a5b1e4af539646723dafacbc8cf732a0 NAME simple-date-time FILENAME
-    simple-date-time DEPS ((NAME cl-ppcre FILENAME cl-ppcre)) DEPENDENCIES
-    (cl-ppcre) VERSION 20160421-git SIBLINGS NIL PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/simple-date.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/simple-date.nix
deleted file mode 100644
index b46901bf497f..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/simple-date.nix
+++ /dev/null
@@ -1,30 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "simple-date";
-  version = "postmodern-20211209-git";
-
-  parasites = [ "simple-date/tests" ];
-
-  description = "Simple date library that can be used with postmodern";
-
-  deps = [ args."fiveam" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/postmodern/2021-12-09/postmodern-20211209-git.tgz";
-    sha256 = "1qcbg31mz5r7ibmq2y7r3vqvdwpznxvwdnwd94hfil7pg4j119d6";
-  };
-
-  packageName = "simple-date";
-
-  asdFilesToKeep = ["simple-date.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM simple-date DESCRIPTION
-    Simple date library that can be used with postmodern SHA256
-    1qcbg31mz5r7ibmq2y7r3vqvdwpznxvwdnwd94hfil7pg4j119d6 URL
-    http://beta.quicklisp.org/archive/postmodern/2021-12-09/postmodern-20211209-git.tgz
-    MD5 6d14c4b5fec085594dc66d520174e0e6 NAME simple-date FILENAME simple-date
-    DEPS ((NAME fiveam FILENAME fiveam)) DEPENDENCIES (fiveam) VERSION
-    postmodern-20211209-git SIBLINGS (cl-postgres postmodern s-sql) PARASITES
-    (simple-date/tests)) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/simple-inferiors.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/simple-inferiors.nix
deleted file mode 100644
index a8dcd973eb9c..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/simple-inferiors.nix
+++ /dev/null
@@ -1,33 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "simple-inferiors";
-  version = "20200325-git";
-
-  description = "A very simple library to use inferior processes.";
-
-  deps = [ args."alexandria" args."bordeaux-threads" args."documentation-utils" args."trivial-indent" args."uiop" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/simple-inferiors/2020-03-25/simple-inferiors-20200325-git.tgz";
-    sha256 = "15gjizqrazr0ahdda2l6bkv7ii5ax1wckn9mnj5haiv17jba8pn5";
-  };
-
-  packageName = "simple-inferiors";
-
-  asdFilesToKeep = ["simple-inferiors.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM simple-inferiors DESCRIPTION
-    A very simple library to use inferior processes. SHA256
-    15gjizqrazr0ahdda2l6bkv7ii5ax1wckn9mnj5haiv17jba8pn5 URL
-    http://beta.quicklisp.org/archive/simple-inferiors/2020-03-25/simple-inferiors-20200325-git.tgz
-    MD5 f90ae807c10d5b3c4b9eef1134a537c8 NAME simple-inferiors FILENAME
-    simple-inferiors DEPS
-    ((NAME alexandria FILENAME alexandria)
-     (NAME bordeaux-threads FILENAME bordeaux-threads)
-     (NAME documentation-utils FILENAME documentation-utils)
-     (NAME trivial-indent FILENAME trivial-indent) (NAME uiop FILENAME uiop))
-    DEPENDENCIES
-    (alexandria bordeaux-threads documentation-utils trivial-indent uiop)
-    VERSION 20200325-git SIBLINGS NIL PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/simple-tasks.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/simple-tasks.nix
deleted file mode 100644
index 0c4f1ac8617f..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/simple-tasks.nix
+++ /dev/null
@@ -1,31 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "simple-tasks";
-  version = "20190710-git";
-
-  description = "A very simple task scheduling framework.";
-
-  deps = [ args."alexandria" args."array-utils" args."bordeaux-threads" args."dissect" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/simple-tasks/2019-07-10/simple-tasks-20190710-git.tgz";
-    sha256 = "12y5phnbj9s2fsrz1ab6xj857zf1fv8kjk7jj2mdjs6k2d8gk8v3";
-  };
-
-  packageName = "simple-tasks";
-
-  asdFilesToKeep = ["simple-tasks.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM simple-tasks DESCRIPTION A very simple task scheduling framework.
-    SHA256 12y5phnbj9s2fsrz1ab6xj857zf1fv8kjk7jj2mdjs6k2d8gk8v3 URL
-    http://beta.quicklisp.org/archive/simple-tasks/2019-07-10/simple-tasks-20190710-git.tgz
-    MD5 8e88a9a762bc8691f92217d256baa55e NAME simple-tasks FILENAME
-    simple-tasks DEPS
-    ((NAME alexandria FILENAME alexandria)
-     (NAME array-utils FILENAME array-utils)
-     (NAME bordeaux-threads FILENAME bordeaux-threads)
-     (NAME dissect FILENAME dissect))
-    DEPENDENCIES (alexandria array-utils bordeaux-threads dissect) VERSION
-    20190710-git SIBLINGS NIL PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/slynk.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/slynk.nix
deleted file mode 100644
index 02b641043eca..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/slynk.nix
+++ /dev/null
@@ -1,30 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "slynk";
-  version = "sly-20210411-git";
-
-  parasites = [ "slynk/arglists" "slynk/fancy-inspector" "slynk/indentation" "slynk/mrepl" "slynk/package-fu" "slynk/profiler" "slynk/retro" "slynk/stickers" "slynk/trace-dialog" ];
-
-  description = "System lacks description";
-
-  deps = [ ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/sly/2021-04-11/sly-20210411-git.tgz";
-    sha256 = "1a96aapsz3fhnnnb8njn8v2ddrh6kwisppd90cc7v8knh043xgks";
-  };
-
-  packageName = "slynk";
-
-  asdFilesToKeep = ["slynk.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM slynk DESCRIPTION System lacks description SHA256
-    1a96aapsz3fhnnnb8njn8v2ddrh6kwisppd90cc7v8knh043xgks URL
-    http://beta.quicklisp.org/archive/sly/2021-04-11/sly-20210411-git.tgz MD5
-    7f0ff6b8a07d23599c77cd33c6d59ea6 NAME slynk FILENAME slynk DEPS NIL
-    DEPENDENCIES NIL VERSION sly-20210411-git SIBLINGS NIL PARASITES
-    (slynk/arglists slynk/fancy-inspector slynk/indentation slynk/mrepl
-     slynk/package-fu slynk/profiler slynk/retro slynk/stickers
-     slynk/trace-dialog)) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/smart-buffer.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/smart-buffer.nix
deleted file mode 100644
index 6f0a0cf369e7..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/smart-buffer.nix
+++ /dev/null
@@ -1,30 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "smart-buffer";
-  version = "20211020-git";
-
-  description = "Smart octets buffer";
-
-  deps = [ args."flexi-streams" args."trivial-gray-streams" args."uiop" args."xsubseq" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/smart-buffer/2021-10-20/smart-buffer-20211020-git.tgz";
-    sha256 = "0v25s4msnwi9vn0cwfv3kxamj0mr2xdwngwmxmhh93mr4fkqzdnv";
-  };
-
-  packageName = "smart-buffer";
-
-  asdFilesToKeep = ["smart-buffer.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM smart-buffer DESCRIPTION Smart octets buffer SHA256
-    0v25s4msnwi9vn0cwfv3kxamj0mr2xdwngwmxmhh93mr4fkqzdnv URL
-    http://beta.quicklisp.org/archive/smart-buffer/2021-10-20/smart-buffer-20211020-git.tgz
-    MD5 d09d02788667d987b3988b6de09d09c3 NAME smart-buffer FILENAME
-    smart-buffer DEPS
-    ((NAME flexi-streams FILENAME flexi-streams)
-     (NAME trivial-gray-streams FILENAME trivial-gray-streams)
-     (NAME uiop FILENAME uiop) (NAME xsubseq FILENAME xsubseq))
-    DEPENDENCIES (flexi-streams trivial-gray-streams uiop xsubseq) VERSION
-    20211020-git SIBLINGS (smart-buffer-test) PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/smug.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/smug.nix
deleted file mode 100644
index 0d7b08355ada..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/smug.nix
+++ /dev/null
@@ -1,27 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "smug";
-  version = "20160421-git";
-
-  description = "SMUG: Simple Monadic Uber Go-into, Parsing made easy.";
-
-  deps = [ args."asdf-package-system" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/smug/2016-04-21/smug-20160421-git.tgz";
-    sha256 = "0f9ig6r0cm1sbhkasx1v27204rmrjbzgwc49d9hy4zn29ffrg0h2";
-  };
-
-  packageName = "smug";
-
-  asdFilesToKeep = ["smug.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM smug DESCRIPTION
-    SMUG: Simple Monadic Uber Go-into, Parsing made easy. SHA256
-    0f9ig6r0cm1sbhkasx1v27204rmrjbzgwc49d9hy4zn29ffrg0h2 URL
-    http://beta.quicklisp.org/archive/smug/2016-04-21/smug-20160421-git.tgz MD5
-    8139d7813bb3130497b6da3bb4cb8924 NAME smug FILENAME smug DEPS
-    ((NAME asdf-package-system FILENAME asdf-package-system)) DEPENDENCIES
-    (asdf-package-system) VERSION 20160421-git SIBLINGS NIL PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/spinneret.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/spinneret.nix
deleted file mode 100644
index 8475d80c4192..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/spinneret.nix
+++ /dev/null
@@ -1,67 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "spinneret";
-  version = "20211020-git";
-
-  description = "Common Lisp HTML5 generator.";
-
-  deps = [ args."alexandria" args."anaphora" args."babel" args."bordeaux-threads" args."cl-ppcre" args."closer-mop" args."fare-quasiquote" args."fare-quasiquote-extras" args."fare-quasiquote-optima" args."fare-quasiquote-readtable" args."fare-utils" args."global-vars" args."introspect-environment" args."iterate" args."lisp-namespace" args."named-readtables" args."parenscript" args."parse-declarations-1_dot_0" args."parse-number" args."serapeum" args."split-sequence" args."string-case" args."trivia" args."trivia_dot_balland2006" args."trivia_dot_level0" args."trivia_dot_level1" args."trivia_dot_level2" args."trivia_dot_quasiquote" args."trivia_dot_trivial" args."trivial-cltl2" args."trivial-features" args."trivial-file-size" args."trivial-garbage" args."trivial-gray-streams" args."trivial-macroexpand-all" args."type-i" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/spinneret/2021-10-20/spinneret-20211020-git.tgz";
-    sha256 = "1j3z2sr98j7rd8ssxp8r1yxlj8chvldn0k2nh2vf2jaynhwk3slq";
-  };
-
-  packageName = "spinneret";
-
-  asdFilesToKeep = ["spinneret.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM spinneret DESCRIPTION Common Lisp HTML5 generator. SHA256
-    1j3z2sr98j7rd8ssxp8r1yxlj8chvldn0k2nh2vf2jaynhwk3slq URL
-    http://beta.quicklisp.org/archive/spinneret/2021-10-20/spinneret-20211020-git.tgz
-    MD5 f10e1537f3bfd16a0a189d16fd86790b NAME spinneret FILENAME spinneret DEPS
-    ((NAME alexandria FILENAME alexandria) (NAME anaphora FILENAME anaphora)
-     (NAME babel FILENAME babel)
-     (NAME bordeaux-threads FILENAME bordeaux-threads)
-     (NAME cl-ppcre FILENAME cl-ppcre) (NAME closer-mop FILENAME closer-mop)
-     (NAME fare-quasiquote FILENAME fare-quasiquote)
-     (NAME fare-quasiquote-extras FILENAME fare-quasiquote-extras)
-     (NAME fare-quasiquote-optima FILENAME fare-quasiquote-optima)
-     (NAME fare-quasiquote-readtable FILENAME fare-quasiquote-readtable)
-     (NAME fare-utils FILENAME fare-utils)
-     (NAME global-vars FILENAME global-vars)
-     (NAME introspect-environment FILENAME introspect-environment)
-     (NAME iterate FILENAME iterate)
-     (NAME lisp-namespace FILENAME lisp-namespace)
-     (NAME named-readtables FILENAME named-readtables)
-     (NAME parenscript FILENAME parenscript)
-     (NAME parse-declarations-1.0 FILENAME parse-declarations-1_dot_0)
-     (NAME parse-number FILENAME parse-number)
-     (NAME serapeum FILENAME serapeum)
-     (NAME split-sequence FILENAME split-sequence)
-     (NAME string-case FILENAME string-case) (NAME trivia FILENAME trivia)
-     (NAME trivia.balland2006 FILENAME trivia_dot_balland2006)
-     (NAME trivia.level0 FILENAME trivia_dot_level0)
-     (NAME trivia.level1 FILENAME trivia_dot_level1)
-     (NAME trivia.level2 FILENAME trivia_dot_level2)
-     (NAME trivia.quasiquote FILENAME trivia_dot_quasiquote)
-     (NAME trivia.trivial FILENAME trivia_dot_trivial)
-     (NAME trivial-cltl2 FILENAME trivial-cltl2)
-     (NAME trivial-features FILENAME trivial-features)
-     (NAME trivial-file-size FILENAME trivial-file-size)
-     (NAME trivial-garbage FILENAME trivial-garbage)
-     (NAME trivial-gray-streams FILENAME trivial-gray-streams)
-     (NAME trivial-macroexpand-all FILENAME trivial-macroexpand-all)
-     (NAME type-i FILENAME type-i))
-    DEPENDENCIES
-    (alexandria anaphora babel bordeaux-threads cl-ppcre closer-mop
-     fare-quasiquote fare-quasiquote-extras fare-quasiquote-optima
-     fare-quasiquote-readtable fare-utils global-vars introspect-environment
-     iterate lisp-namespace named-readtables parenscript parse-declarations-1.0
-     parse-number serapeum split-sequence string-case trivia trivia.balland2006
-     trivia.level0 trivia.level1 trivia.level2 trivia.quasiquote trivia.trivial
-     trivial-cltl2 trivial-features trivial-file-size trivial-garbage
-     trivial-gray-streams trivial-macroexpand-all type-i)
-    VERSION 20211020-git SIBLINGS NIL PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/split-sequence.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/split-sequence.nix
deleted file mode 100644
index d1bb4675ba57..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/split-sequence.nix
+++ /dev/null
@@ -1,31 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "split-sequence";
-  version = "v2.0.1";
-
-  parasites = [ "split-sequence/tests" ];
-
-  description = "Splits a sequence into a list of subsequences
-  delimited by objects satisfying a test.";
-
-  deps = [ args."fiveam" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/split-sequence/2021-05-31/split-sequence-v2.0.1.tgz";
-    sha256 = "0x6jdpx5nwby0mjhavqzbfr97725jaryvawjj2f5w9z2s4m9ciya";
-  };
-
-  packageName = "split-sequence";
-
-  asdFilesToKeep = ["split-sequence.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM split-sequence DESCRIPTION
-    Splits a sequence into a list of subsequences
-  delimited by objects satisfying a test.
-    SHA256 0x6jdpx5nwby0mjhavqzbfr97725jaryvawjj2f5w9z2s4m9ciya URL
-    http://beta.quicklisp.org/archive/split-sequence/2021-05-31/split-sequence-v2.0.1.tgz
-    MD5 871be321b4dbca0a1f958927e9173795 NAME split-sequence FILENAME
-    split-sequence DEPS ((NAME fiveam FILENAME fiveam)) DEPENDENCIES (fiveam)
-    VERSION v2.0.1 SIBLINGS NIL PARASITES (split-sequence/tests)) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/sqlite.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/sqlite.nix
deleted file mode 100644
index 8c0773cd45e8..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/sqlite.nix
+++ /dev/null
@@ -1,30 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "sqlite";
-  version = "cl-20190813-git";
-
-  description = "CL-SQLITE package is an interface to the SQLite embedded relational database engine.";
-
-  deps = [ args."alexandria" args."babel" args."cffi" args."iterate" args."trivial-features" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/cl-sqlite/2019-08-13/cl-sqlite-20190813-git.tgz";
-    sha256 = "07zla2h7i7ggmzsyj33f12vpxvcbbvq6x022c2dy13flx8a83rmk";
-  };
-
-  packageName = "sqlite";
-
-  asdFilesToKeep = ["sqlite.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM sqlite DESCRIPTION
-    CL-SQLITE package is an interface to the SQLite embedded relational database engine.
-    SHA256 07zla2h7i7ggmzsyj33f12vpxvcbbvq6x022c2dy13flx8a83rmk URL
-    http://beta.quicklisp.org/archive/cl-sqlite/2019-08-13/cl-sqlite-20190813-git.tgz
-    MD5 2269773eeb4a101ddd3b33f0f7e05e76 NAME sqlite FILENAME sqlite DEPS
-    ((NAME alexandria FILENAME alexandria) (NAME babel FILENAME babel)
-     (NAME cffi FILENAME cffi) (NAME iterate FILENAME iterate)
-     (NAME trivial-features FILENAME trivial-features))
-    DEPENDENCIES (alexandria babel cffi iterate trivial-features) VERSION
-    cl-20190813-git SIBLINGS NIL PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/static-dispatch.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/static-dispatch.nix
deleted file mode 100644
index 92708af60523..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/static-dispatch.nix
+++ /dev/null
@@ -1,43 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "static-dispatch";
-  version = "20211209-git";
-
-  parasites = [ "static-dispatch/test" ];
-
-  description = "Static generic function dispatch for Common Lisp.";
-
-  deps = [ args."agutil" args."alexandria" args."anaphora" args."arrows" args."cl-environments" args."cl-form-types" args."closer-mop" args."collectors" args."fiveam" args."introspect-environment" args."iterate" args."optima" args."parse-declarations-1_dot_0" args."symbol-munger" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/static-dispatch/2021-12-09/static-dispatch-20211209-git.tgz";
-    sha256 = "04hvwn5fvxlblhicdbj0sbvlgcxsnykak05j3pdv5laic50jz192";
-  };
-
-  packageName = "static-dispatch";
-
-  asdFilesToKeep = ["static-dispatch.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM static-dispatch DESCRIPTION
-    Static generic function dispatch for Common Lisp. SHA256
-    04hvwn5fvxlblhicdbj0sbvlgcxsnykak05j3pdv5laic50jz192 URL
-    http://beta.quicklisp.org/archive/static-dispatch/2021-12-09/static-dispatch-20211209-git.tgz
-    MD5 f74cb2bd29ef9cfe966f470c7f63420f NAME static-dispatch FILENAME
-    static-dispatch DEPS
-    ((NAME agutil FILENAME agutil) (NAME alexandria FILENAME alexandria)
-     (NAME anaphora FILENAME anaphora) (NAME arrows FILENAME arrows)
-     (NAME cl-environments FILENAME cl-environments)
-     (NAME cl-form-types FILENAME cl-form-types)
-     (NAME closer-mop FILENAME closer-mop)
-     (NAME collectors FILENAME collectors) (NAME fiveam FILENAME fiveam)
-     (NAME introspect-environment FILENAME introspect-environment)
-     (NAME iterate FILENAME iterate) (NAME optima FILENAME optima)
-     (NAME parse-declarations-1.0 FILENAME parse-declarations-1_dot_0)
-     (NAME symbol-munger FILENAME symbol-munger))
-    DEPENDENCIES
-    (agutil alexandria anaphora arrows cl-environments cl-form-types closer-mop
-     collectors fiveam introspect-environment iterate optima
-     parse-declarations-1.0 symbol-munger)
-    VERSION 20211209-git SIBLINGS NIL PARASITES (static-dispatch/test)) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/static-vectors.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/static-vectors.nix
deleted file mode 100644
index 3a7f1661adc6..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/static-vectors.nix
+++ /dev/null
@@ -1,36 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "static-vectors";
-  version = "v1.8.9";
-
-  parasites = [ "static-vectors/test" ];
-
-  description = "Create vectors allocated in static memory.";
-
-  deps = [ args."alexandria" args."babel" args."cffi" args."cffi-grovel" args."cffi-toolchain" args."fiveam" args."trivial-features" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/static-vectors/2021-06-30/static-vectors-v1.8.9.tgz";
-    sha256 = "01n4iz6s4n57gmxscnj9aign60kh6gp7ak5waqz5zwhsdklgj0j4";
-  };
-
-  packageName = "static-vectors";
-
-  asdFilesToKeep = ["static-vectors.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM static-vectors DESCRIPTION
-    Create vectors allocated in static memory. SHA256
-    01n4iz6s4n57gmxscnj9aign60kh6gp7ak5waqz5zwhsdklgj0j4 URL
-    http://beta.quicklisp.org/archive/static-vectors/2021-06-30/static-vectors-v1.8.9.tgz
-    MD5 f14b819c0d55e7fbd28e9b4a0bb3bfc9 NAME static-vectors FILENAME
-    static-vectors DEPS
-    ((NAME alexandria FILENAME alexandria) (NAME babel FILENAME babel)
-     (NAME cffi FILENAME cffi) (NAME cffi-grovel FILENAME cffi-grovel)
-     (NAME cffi-toolchain FILENAME cffi-toolchain)
-     (NAME fiveam FILENAME fiveam)
-     (NAME trivial-features FILENAME trivial-features))
-    DEPENDENCIES
-    (alexandria babel cffi cffi-grovel cffi-toolchain fiveam trivial-features)
-    VERSION v1.8.9 SIBLINGS NIL PARASITES (static-vectors/test)) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/stefil.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/stefil.nix
deleted file mode 100644
index dca0fc4dd981..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/stefil.nix
+++ /dev/null
@@ -1,30 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "stefil";
-  version = "20181210-git";
-
-  parasites = [ "stefil-test" ];
-
-  description = "Stefil - Simple Test Framework In Lisp";
-
-  deps = [ args."alexandria" args."iterate" args."metabang-bind" args."swank" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/stefil/2018-12-10/stefil-20181210-git.tgz";
-    sha256 = "10dr8yjrjc2pyx55knds5llh9k716khlvbkmpxh0vn8rdmxmz96g";
-  };
-
-  packageName = "stefil";
-
-  asdFilesToKeep = ["stefil.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM stefil DESCRIPTION Stefil - Simple Test Framework In Lisp SHA256
-    10dr8yjrjc2pyx55knds5llh9k716khlvbkmpxh0vn8rdmxmz96g URL
-    http://beta.quicklisp.org/archive/stefil/2018-12-10/stefil-20181210-git.tgz
-    MD5 3418bf358366748593f65e4b6e1bb8cf NAME stefil FILENAME stefil DEPS
-    ((NAME alexandria FILENAME alexandria) (NAME iterate FILENAME iterate)
-     (NAME metabang-bind FILENAME metabang-bind) (NAME swank FILENAME swank))
-    DEPENDENCIES (alexandria iterate metabang-bind swank) VERSION 20181210-git
-    SIBLINGS NIL PARASITES (stefil-test)) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/str.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/str.nix
deleted file mode 100644
index 7c9809cb37e5..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/str.nix
+++ /dev/null
@@ -1,33 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "str";
-  version = "cl-20210531-git";
-
-  description = "Modern, consistent and terse Common Lisp string manipulation library.";
-
-  deps = [ args."cl-change-case" args."cl-ppcre" args."cl-ppcre-unicode" args."cl-unicode" args."flexi-streams" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/cl-str/2021-05-31/cl-str-20210531-git.tgz";
-    sha256 = "16z1axfik0s2m74ly4bxlrv4mbd2r923y7nrrrc487fsjs3v23bb";
-  };
-
-  packageName = "str";
-
-  asdFilesToKeep = ["str.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM str DESCRIPTION
-    Modern, consistent and terse Common Lisp string manipulation library.
-    SHA256 16z1axfik0s2m74ly4bxlrv4mbd2r923y7nrrrc487fsjs3v23bb URL
-    http://beta.quicklisp.org/archive/cl-str/2021-05-31/cl-str-20210531-git.tgz
-    MD5 05144979ce1bf382fdb0b91db932fe6a NAME str FILENAME str DEPS
-    ((NAME cl-change-case FILENAME cl-change-case)
-     (NAME cl-ppcre FILENAME cl-ppcre)
-     (NAME cl-ppcre-unicode FILENAME cl-ppcre-unicode)
-     (NAME cl-unicode FILENAME cl-unicode)
-     (NAME flexi-streams FILENAME flexi-streams))
-    DEPENDENCIES
-    (cl-change-case cl-ppcre cl-ppcre-unicode cl-unicode flexi-streams) VERSION
-    cl-20210531-git SIBLINGS (str.test) PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/string-case.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/string-case.nix
deleted file mode 100644
index 05ca089dbf44..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/string-case.nix
+++ /dev/null
@@ -1,26 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "string-case";
-  version = "20180711-git";
-
-  description = "string-case is a macro that generates specialised decision trees to dispatch on string equality";
-
-  deps = [ ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/string-case/2018-07-11/string-case-20180711-git.tgz";
-    sha256 = "1n36ign4bv0idw14zyayn6i0n3iaff9yw92kpjh3qmdcq3asv90z";
-  };
-
-  packageName = "string-case";
-
-  asdFilesToKeep = ["string-case.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM string-case DESCRIPTION
-    string-case is a macro that generates specialised decision trees to dispatch on string equality
-    SHA256 1n36ign4bv0idw14zyayn6i0n3iaff9yw92kpjh3qmdcq3asv90z URL
-    http://beta.quicklisp.org/archive/string-case/2018-07-11/string-case-20180711-git.tgz
-    MD5 145c4e13f1e90a070b0a95ca979a9680 NAME string-case FILENAME string-case
-    DEPS NIL DEPENDENCIES NIL VERSION 20180711-git SIBLINGS NIL PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/stumpwm.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/stumpwm.nix
deleted file mode 100644
index d7ea27163389..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/stumpwm.nix
+++ /dev/null
@@ -1,28 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "stumpwm";
-  version = "20211209-git";
-
-  description = "A tiling, keyboard driven window manager";
-
-  deps = [ args."alexandria" args."cl-ppcre" args."clx" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/stumpwm/2021-12-09/stumpwm-20211209-git.tgz";
-    sha256 = "1n7wj2jn6sydnyrjmic53lqkqigk1cg140b9pcnk09ngsrq3cn60";
-  };
-
-  packageName = "stumpwm";
-
-  asdFilesToKeep = ["stumpwm.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM stumpwm DESCRIPTION A tiling, keyboard driven window manager SHA256
-    1n7wj2jn6sydnyrjmic53lqkqigk1cg140b9pcnk09ngsrq3cn60 URL
-    http://beta.quicklisp.org/archive/stumpwm/2021-12-09/stumpwm-20211209-git.tgz
-    MD5 a556b95108398e56159bafe31c4dbabf NAME stumpwm FILENAME stumpwm DEPS
-    ((NAME alexandria FILENAME alexandria) (NAME cl-ppcre FILENAME cl-ppcre)
-     (NAME clx FILENAME clx))
-    DEPENDENCIES (alexandria cl-ppcre clx) VERSION 20211209-git SIBLINGS
-    (stumpwm-tests) PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/swank.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/swank.nix
deleted file mode 100644
index a0cb5e362cc8..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/swank.nix
+++ /dev/null
@@ -1,25 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "swank";
-  version = "slime-v2.26.1";
-
-  description = "System lacks description";
-
-  deps = [ ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/slime/2020-12-20/slime-v2.26.1.tgz";
-    sha256 = "12q3la9lwzs01x0ii5vss0i8i78lgyjrn3adr3rs027f4b7386ny";
-  };
-
-  packageName = "swank";
-
-  asdFilesToKeep = ["swank.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM swank DESCRIPTION System lacks description SHA256
-    12q3la9lwzs01x0ii5vss0i8i78lgyjrn3adr3rs027f4b7386ny URL
-    http://beta.quicklisp.org/archive/slime/2020-12-20/slime-v2.26.1.tgz MD5
-    bd91e1fe29a4f7ebf53a0bfecc9e1e36 NAME swank FILENAME swank DEPS NIL
-    DEPENDENCIES NIL VERSION slime-v2.26.1 SIBLINGS NIL PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/swap-bytes.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/swap-bytes.nix
deleted file mode 100644
index 3bb8e5fac10f..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/swap-bytes.nix
+++ /dev/null
@@ -1,31 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "swap-bytes";
-  version = "v1.2";
-
-  parasites = [ "swap-bytes/test" ];
-
-  description = "Optimized byte-swapping primitives.";
-
-  deps = [ args."fiveam" args."trivial-features" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/swap-bytes/2019-11-30/swap-bytes-v1.2.tgz";
-    sha256 = "05g37m4cpsszh16jz7kiscd6m6l66ms73f3s6s94i56c49jfxdy8";
-  };
-
-  packageName = "swap-bytes";
-
-  asdFilesToKeep = ["swap-bytes.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM swap-bytes DESCRIPTION Optimized byte-swapping primitives. SHA256
-    05g37m4cpsszh16jz7kiscd6m6l66ms73f3s6s94i56c49jfxdy8 URL
-    http://beta.quicklisp.org/archive/swap-bytes/2019-11-30/swap-bytes-v1.2.tgz
-    MD5 eea516d7fdbe20bc963a6708c225d719 NAME swap-bytes FILENAME swap-bytes
-    DEPS
-    ((NAME fiveam FILENAME fiveam)
-     (NAME trivial-features FILENAME trivial-features))
-    DEPENDENCIES (fiveam trivial-features) VERSION v1.2 SIBLINGS NIL PARASITES
-    (swap-bytes/test)) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/sycamore.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/sycamore.nix
deleted file mode 100644
index c4b1a838e378..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/sycamore.nix
+++ /dev/null
@@ -1,29 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "sycamore";
-  version = "20211020-git";
-
-  description = "A fast, purely functional data structure library";
-
-  deps = [ args."alexandria" args."cl-fuzz" args."cl-ppcre" args."lisp-unit" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/sycamore/2021-10-20/sycamore-20211020-git.tgz";
-    sha256 = "1msh2kpd96s7jfm565snf71bbsmnjmsf8b31y1xg9vkk7xp01cf4";
-  };
-
-  packageName = "sycamore";
-
-  asdFilesToKeep = ["sycamore.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM sycamore DESCRIPTION
-    A fast, purely functional data structure library SHA256
-    1msh2kpd96s7jfm565snf71bbsmnjmsf8b31y1xg9vkk7xp01cf4 URL
-    http://beta.quicklisp.org/archive/sycamore/2021-10-20/sycamore-20211020-git.tgz
-    MD5 0a9f35519b5cb3e5f9467427632ff0f8 NAME sycamore FILENAME sycamore DEPS
-    ((NAME alexandria FILENAME alexandria) (NAME cl-fuzz FILENAME cl-fuzz)
-     (NAME cl-ppcre FILENAME cl-ppcre) (NAME lisp-unit FILENAME lisp-unit))
-    DEPENDENCIES (alexandria cl-fuzz cl-ppcre lisp-unit) VERSION 20211020-git
-    SIBLINGS NIL PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/symbol-munger.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/symbol-munger.nix
deleted file mode 100644
index 51ea4b91e7a7..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/symbol-munger.nix
+++ /dev/null
@@ -1,31 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "symbol-munger";
-  version = "20150407-git";
-
-  description = "Functions to convert between the spacing and
-  capitalization conventions of various environments";
-
-  deps = [ args."alexandria" args."iterate" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/symbol-munger/2015-04-07/symbol-munger-20150407-git.tgz";
-    sha256 = "0dccli8557kvyy2rngh646rmavf96p7xqn5bry65d7c1f61lyqv6";
-  };
-
-  packageName = "symbol-munger";
-
-  asdFilesToKeep = ["symbol-munger.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM symbol-munger DESCRIPTION
-    Functions to convert between the spacing and
-  capitalization conventions of various environments
-    SHA256 0dccli8557kvyy2rngh646rmavf96p7xqn5bry65d7c1f61lyqv6 URL
-    http://beta.quicklisp.org/archive/symbol-munger/2015-04-07/symbol-munger-20150407-git.tgz
-    MD5 b1e35b63d7ad1451868d1c40e2fbfab7 NAME symbol-munger FILENAME
-    symbol-munger DEPS
-    ((NAME alexandria FILENAME alexandria) (NAME iterate FILENAME iterate))
-    DEPENDENCIES (alexandria iterate) VERSION 20150407-git SIBLINGS NIL
-    PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/trees.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/trees.nix
deleted file mode 100644
index db500b8eead6..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/trees.nix
+++ /dev/null
@@ -1,28 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "trees";
-  version = "20180131-git";
-
-  parasites = [ "trees-tests" ];
-
-  description = "A library for binary trees in normal and balanced flavors";
-
-  deps = [ ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/trees/2018-01-31/trees-20180131-git.tgz";
-    sha256 = "1p54j2kav1vggdjw5msdpmfyi7cxh41f4j669rgp0g8fpimmzcfg";
-  };
-
-  packageName = "trees";
-
-  asdFilesToKeep = ["trees.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM trees DESCRIPTION
-    A library for binary trees in normal and balanced flavors SHA256
-    1p54j2kav1vggdjw5msdpmfyi7cxh41f4j669rgp0g8fpimmzcfg URL
-    http://beta.quicklisp.org/archive/trees/2018-01-31/trees-20180131-git.tgz
-    MD5 a1b156d15d444d114f475f7abc908064 NAME trees FILENAME trees DEPS NIL
-    DEPENDENCIES NIL VERSION 20180131-git SIBLINGS NIL PARASITES (trees-tests)) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/trivia.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/trivia.nix
deleted file mode 100644
index fab5a9192b27..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/trivia.nix
+++ /dev/null
@@ -1,45 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "trivia";
-  version = "20211020-git";
-
-  description = "NON-optimized pattern matcher compatible with OPTIMA, with extensible optimizer interface and clean codebase";
-
-  deps = [ args."alexandria" args."closer-mop" args."introspect-environment" args."iterate" args."lisp-namespace" args."trivia_dot_balland2006" args."trivia_dot_level0" args."trivia_dot_level1" args."trivia_dot_level2" args."trivia_dot_trivial" args."trivial-cltl2" args."type-i" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/trivia/2021-10-20/trivia-20211020-git.tgz";
-    sha256 = "0gf63v42pq8cxr7an177p2mf25n5jpqxdf0zb4xqlm2sydk7ng1g";
-  };
-
-  packageName = "trivia";
-
-  asdFilesToKeep = ["trivia.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM trivia DESCRIPTION
-    NON-optimized pattern matcher compatible with OPTIMA, with extensible optimizer interface and clean codebase
-    SHA256 0gf63v42pq8cxr7an177p2mf25n5jpqxdf0zb4xqlm2sydk7ng1g URL
-    http://beta.quicklisp.org/archive/trivia/2021-10-20/trivia-20211020-git.tgz
-    MD5 db933e44824514d8ccc9b2a119008051 NAME trivia FILENAME trivia DEPS
-    ((NAME alexandria FILENAME alexandria)
-     (NAME closer-mop FILENAME closer-mop)
-     (NAME introspect-environment FILENAME introspect-environment)
-     (NAME iterate FILENAME iterate)
-     (NAME lisp-namespace FILENAME lisp-namespace)
-     (NAME trivia.balland2006 FILENAME trivia_dot_balland2006)
-     (NAME trivia.level0 FILENAME trivia_dot_level0)
-     (NAME trivia.level1 FILENAME trivia_dot_level1)
-     (NAME trivia.level2 FILENAME trivia_dot_level2)
-     (NAME trivia.trivial FILENAME trivia_dot_trivial)
-     (NAME trivial-cltl2 FILENAME trivial-cltl2) (NAME type-i FILENAME type-i))
-    DEPENDENCIES
-    (alexandria closer-mop introspect-environment iterate lisp-namespace
-     trivia.balland2006 trivia.level0 trivia.level1 trivia.level2
-     trivia.trivial trivial-cltl2 type-i)
-    VERSION 20211020-git SIBLINGS
-    (trivia.balland2006 trivia.benchmark trivia.cffi trivia.fset trivia.level0
-     trivia.level1 trivia.level2 trivia.ppcre trivia.quasiquote trivia.test
-     trivia.trivial)
-    PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/trivia_dot_balland2006.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/trivia_dot_balland2006.nix
deleted file mode 100644
index a4ccd03cf46e..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/trivia_dot_balland2006.nix
+++ /dev/null
@@ -1,45 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "trivia_dot_balland2006";
-  version = "trivia-20211020-git";
-
-  description = "Optimizer for Trivia based on (Balland 2006)";
-
-  deps = [ args."alexandria" args."closer-mop" args."introspect-environment" args."iterate" args."lisp-namespace" args."trivia_dot_level0" args."trivia_dot_level1" args."trivia_dot_level2" args."trivia_dot_trivial" args."trivial-cltl2" args."type-i" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/trivia/2021-10-20/trivia-20211020-git.tgz";
-    sha256 = "0gf63v42pq8cxr7an177p2mf25n5jpqxdf0zb4xqlm2sydk7ng1g";
-  };
-
-  packageName = "trivia.balland2006";
-
-  asdFilesToKeep = ["trivia.balland2006.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM trivia.balland2006 DESCRIPTION
-    Optimizer for Trivia based on (Balland 2006) SHA256
-    0gf63v42pq8cxr7an177p2mf25n5jpqxdf0zb4xqlm2sydk7ng1g URL
-    http://beta.quicklisp.org/archive/trivia/2021-10-20/trivia-20211020-git.tgz
-    MD5 db933e44824514d8ccc9b2a119008051 NAME trivia.balland2006 FILENAME
-    trivia_dot_balland2006 DEPS
-    ((NAME alexandria FILENAME alexandria)
-     (NAME closer-mop FILENAME closer-mop)
-     (NAME introspect-environment FILENAME introspect-environment)
-     (NAME iterate FILENAME iterate)
-     (NAME lisp-namespace FILENAME lisp-namespace)
-     (NAME trivia.level0 FILENAME trivia_dot_level0)
-     (NAME trivia.level1 FILENAME trivia_dot_level1)
-     (NAME trivia.level2 FILENAME trivia_dot_level2)
-     (NAME trivia.trivial FILENAME trivia_dot_trivial)
-     (NAME trivial-cltl2 FILENAME trivial-cltl2) (NAME type-i FILENAME type-i))
-    DEPENDENCIES
-    (alexandria closer-mop introspect-environment iterate lisp-namespace
-     trivia.level0 trivia.level1 trivia.level2 trivia.trivial trivial-cltl2
-     type-i)
-    VERSION trivia-20211020-git SIBLINGS
-    (trivia trivia.benchmark trivia.cffi trivia.fset trivia.level0
-     trivia.level1 trivia.level2 trivia.ppcre trivia.quasiquote trivia.test
-     trivia.trivial)
-    PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/trivia_dot_level0.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/trivia_dot_level0.nix
deleted file mode 100644
index 4011d4f86f75..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/trivia_dot_level0.nix
+++ /dev/null
@@ -1,31 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "trivia_dot_level0";
-  version = "trivia-20211020-git";
-
-  description = "Bootstrapping Pattern Matching Library for implementing Trivia";
-
-  deps = [ args."alexandria" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/trivia/2021-10-20/trivia-20211020-git.tgz";
-    sha256 = "0gf63v42pq8cxr7an177p2mf25n5jpqxdf0zb4xqlm2sydk7ng1g";
-  };
-
-  packageName = "trivia.level0";
-
-  asdFilesToKeep = ["trivia.level0.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM trivia.level0 DESCRIPTION
-    Bootstrapping Pattern Matching Library for implementing Trivia SHA256
-    0gf63v42pq8cxr7an177p2mf25n5jpqxdf0zb4xqlm2sydk7ng1g URL
-    http://beta.quicklisp.org/archive/trivia/2021-10-20/trivia-20211020-git.tgz
-    MD5 db933e44824514d8ccc9b2a119008051 NAME trivia.level0 FILENAME
-    trivia_dot_level0 DEPS ((NAME alexandria FILENAME alexandria)) DEPENDENCIES
-    (alexandria) VERSION trivia-20211020-git SIBLINGS
-    (trivia trivia.balland2006 trivia.benchmark trivia.cffi trivia.fset
-     trivia.level1 trivia.level2 trivia.ppcre trivia.quasiquote trivia.test
-     trivia.trivial)
-    PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/trivia_dot_level1.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/trivia_dot_level1.nix
deleted file mode 100644
index ad25070a81eb..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/trivia_dot_level1.nix
+++ /dev/null
@@ -1,33 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "trivia_dot_level1";
-  version = "trivia-20211020-git";
-
-  description = "Core patterns of Trivia";
-
-  deps = [ args."alexandria" args."trivia_dot_level0" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/trivia/2021-10-20/trivia-20211020-git.tgz";
-    sha256 = "0gf63v42pq8cxr7an177p2mf25n5jpqxdf0zb4xqlm2sydk7ng1g";
-  };
-
-  packageName = "trivia.level1";
-
-  asdFilesToKeep = ["trivia.level1.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM trivia.level1 DESCRIPTION Core patterns of Trivia SHA256
-    0gf63v42pq8cxr7an177p2mf25n5jpqxdf0zb4xqlm2sydk7ng1g URL
-    http://beta.quicklisp.org/archive/trivia/2021-10-20/trivia-20211020-git.tgz
-    MD5 db933e44824514d8ccc9b2a119008051 NAME trivia.level1 FILENAME
-    trivia_dot_level1 DEPS
-    ((NAME alexandria FILENAME alexandria)
-     (NAME trivia.level0 FILENAME trivia_dot_level0))
-    DEPENDENCIES (alexandria trivia.level0) VERSION trivia-20211020-git
-    SIBLINGS
-    (trivia trivia.balland2006 trivia.benchmark trivia.cffi trivia.fset
-     trivia.level0 trivia.level2 trivia.ppcre trivia.quasiquote trivia.test
-     trivia.trivial)
-    PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/trivia_dot_level2.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/trivia_dot_level2.nix
deleted file mode 100644
index a552646736bc..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/trivia_dot_level2.nix
+++ /dev/null
@@ -1,40 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "trivia_dot_level2";
-  version = "trivia-20211020-git";
-
-  description = "NON-optimized pattern matcher compatible with OPTIMA, with extensible optimizer interface and clean codebase";
-
-  deps = [ args."alexandria" args."closer-mop" args."lisp-namespace" args."trivia_dot_level0" args."trivia_dot_level1" args."trivial-cltl2" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/trivia/2021-10-20/trivia-20211020-git.tgz";
-    sha256 = "0gf63v42pq8cxr7an177p2mf25n5jpqxdf0zb4xqlm2sydk7ng1g";
-  };
-
-  packageName = "trivia.level2";
-
-  asdFilesToKeep = ["trivia.level2.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM trivia.level2 DESCRIPTION
-    NON-optimized pattern matcher compatible with OPTIMA, with extensible optimizer interface and clean codebase
-    SHA256 0gf63v42pq8cxr7an177p2mf25n5jpqxdf0zb4xqlm2sydk7ng1g URL
-    http://beta.quicklisp.org/archive/trivia/2021-10-20/trivia-20211020-git.tgz
-    MD5 db933e44824514d8ccc9b2a119008051 NAME trivia.level2 FILENAME
-    trivia_dot_level2 DEPS
-    ((NAME alexandria FILENAME alexandria)
-     (NAME closer-mop FILENAME closer-mop)
-     (NAME lisp-namespace FILENAME lisp-namespace)
-     (NAME trivia.level0 FILENAME trivia_dot_level0)
-     (NAME trivia.level1 FILENAME trivia_dot_level1)
-     (NAME trivial-cltl2 FILENAME trivial-cltl2))
-    DEPENDENCIES
-    (alexandria closer-mop lisp-namespace trivia.level0 trivia.level1
-     trivial-cltl2)
-    VERSION trivia-20211020-git SIBLINGS
-    (trivia trivia.balland2006 trivia.benchmark trivia.cffi trivia.fset
-     trivia.level0 trivia.level1 trivia.ppcre trivia.quasiquote trivia.test
-     trivia.trivial)
-    PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/trivia_dot_quasiquote.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/trivia_dot_quasiquote.nix
deleted file mode 100644
index 3ab15225d5c1..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/trivia_dot_quasiquote.nix
+++ /dev/null
@@ -1,46 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "trivia_dot_quasiquote";
-  version = "trivia-20211020-git";
-
-  description = "fare-quasiquote extension for trivia";
-
-  deps = [ args."alexandria" args."closer-mop" args."fare-quasiquote" args."fare-quasiquote-readtable" args."fare-utils" args."lisp-namespace" args."named-readtables" args."trivia_dot_level0" args."trivia_dot_level1" args."trivia_dot_level2" args."trivia_dot_trivial" args."trivial-cltl2" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/trivia/2021-10-20/trivia-20211020-git.tgz";
-    sha256 = "0gf63v42pq8cxr7an177p2mf25n5jpqxdf0zb4xqlm2sydk7ng1g";
-  };
-
-  packageName = "trivia.quasiquote";
-
-  asdFilesToKeep = ["trivia.quasiquote.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM trivia.quasiquote DESCRIPTION fare-quasiquote extension for trivia
-    SHA256 0gf63v42pq8cxr7an177p2mf25n5jpqxdf0zb4xqlm2sydk7ng1g URL
-    http://beta.quicklisp.org/archive/trivia/2021-10-20/trivia-20211020-git.tgz
-    MD5 db933e44824514d8ccc9b2a119008051 NAME trivia.quasiquote FILENAME
-    trivia_dot_quasiquote DEPS
-    ((NAME alexandria FILENAME alexandria)
-     (NAME closer-mop FILENAME closer-mop)
-     (NAME fare-quasiquote FILENAME fare-quasiquote)
-     (NAME fare-quasiquote-readtable FILENAME fare-quasiquote-readtable)
-     (NAME fare-utils FILENAME fare-utils)
-     (NAME lisp-namespace FILENAME lisp-namespace)
-     (NAME named-readtables FILENAME named-readtables)
-     (NAME trivia.level0 FILENAME trivia_dot_level0)
-     (NAME trivia.level1 FILENAME trivia_dot_level1)
-     (NAME trivia.level2 FILENAME trivia_dot_level2)
-     (NAME trivia.trivial FILENAME trivia_dot_trivial)
-     (NAME trivial-cltl2 FILENAME trivial-cltl2))
-    DEPENDENCIES
-    (alexandria closer-mop fare-quasiquote fare-quasiquote-readtable fare-utils
-     lisp-namespace named-readtables trivia.level0 trivia.level1 trivia.level2
-     trivia.trivial trivial-cltl2)
-    VERSION trivia-20211020-git SIBLINGS
-    (trivia trivia.balland2006 trivia.benchmark trivia.cffi trivia.fset
-     trivia.level0 trivia.level1 trivia.level2 trivia.ppcre trivia.test
-     trivia.trivial)
-    PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/trivia_dot_trivial.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/trivia_dot_trivial.nix
deleted file mode 100644
index 736d0322d124..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/trivia_dot_trivial.nix
+++ /dev/null
@@ -1,45 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "trivia_dot_trivial";
-  version = "trivia-20211020-git";
-
-  description = "Base level system of Trivia with a trivial optimizer.
- Systems that intend to enhance Trivia should depend on this package, not the TRIVIA system,
- in order to avoid the circular dependency.";
-
-  deps = [ args."alexandria" args."closer-mop" args."lisp-namespace" args."trivia_dot_level0" args."trivia_dot_level1" args."trivia_dot_level2" args."trivial-cltl2" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/trivia/2021-10-20/trivia-20211020-git.tgz";
-    sha256 = "0gf63v42pq8cxr7an177p2mf25n5jpqxdf0zb4xqlm2sydk7ng1g";
-  };
-
-  packageName = "trivia.trivial";
-
-  asdFilesToKeep = ["trivia.trivial.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM trivia.trivial DESCRIPTION
-    Base level system of Trivia with a trivial optimizer.
- Systems that intend to enhance Trivia should depend on this package, not the TRIVIA system,
- in order to avoid the circular dependency.
-    SHA256 0gf63v42pq8cxr7an177p2mf25n5jpqxdf0zb4xqlm2sydk7ng1g URL
-    http://beta.quicklisp.org/archive/trivia/2021-10-20/trivia-20211020-git.tgz
-    MD5 db933e44824514d8ccc9b2a119008051 NAME trivia.trivial FILENAME
-    trivia_dot_trivial DEPS
-    ((NAME alexandria FILENAME alexandria)
-     (NAME closer-mop FILENAME closer-mop)
-     (NAME lisp-namespace FILENAME lisp-namespace)
-     (NAME trivia.level0 FILENAME trivia_dot_level0)
-     (NAME trivia.level1 FILENAME trivia_dot_level1)
-     (NAME trivia.level2 FILENAME trivia_dot_level2)
-     (NAME trivial-cltl2 FILENAME trivial-cltl2))
-    DEPENDENCIES
-    (alexandria closer-mop lisp-namespace trivia.level0 trivia.level1
-     trivia.level2 trivial-cltl2)
-    VERSION trivia-20211020-git SIBLINGS
-    (trivia trivia.balland2006 trivia.benchmark trivia.cffi trivia.fset
-     trivia.level0 trivia.level1 trivia.level2 trivia.ppcre trivia.quasiquote
-     trivia.test)
-    PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/trivial-arguments.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/trivial-arguments.nix
deleted file mode 100644
index 9444b0b690df..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/trivial-arguments.nix
+++ /dev/null
@@ -1,27 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "trivial-arguments";
-  version = "20200925-git";
-
-  description = "A simple library to retrieve the lambda-list of a function.";
-
-  deps = [ ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/trivial-arguments/2020-09-25/trivial-arguments-20200925-git.tgz";
-    sha256 = "079xm6f1vmsng7dzgb2x3m7k46jfw19wskwf1l5cid5nm267d295";
-  };
-
-  packageName = "trivial-arguments";
-
-  asdFilesToKeep = ["trivial-arguments.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM trivial-arguments DESCRIPTION
-    A simple library to retrieve the lambda-list of a function. SHA256
-    079xm6f1vmsng7dzgb2x3m7k46jfw19wskwf1l5cid5nm267d295 URL
-    http://beta.quicklisp.org/archive/trivial-arguments/2020-09-25/trivial-arguments-20200925-git.tgz
-    MD5 3d7b76a729b272019c8827e40bfb6db8 NAME trivial-arguments FILENAME
-    trivial-arguments DEPS NIL DEPENDENCIES NIL VERSION 20200925-git SIBLINGS
-    NIL PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/trivial-backtrace.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/trivial-backtrace.nix
deleted file mode 100644
index 063551bd79f5..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/trivial-backtrace.nix
+++ /dev/null
@@ -1,26 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "trivial-backtrace";
-  version = "20200610-git";
-
-  description = "trivial-backtrace";
-
-  deps = [ ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/trivial-backtrace/2020-06-10/trivial-backtrace-20200610-git.tgz";
-    sha256 = "0slz2chal6vpiqx9zmjh4cnihhw794rq3267s7kz7livpiv52rks";
-  };
-
-  packageName = "trivial-backtrace";
-
-  asdFilesToKeep = ["trivial-backtrace.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM trivial-backtrace DESCRIPTION trivial-backtrace SHA256
-    0slz2chal6vpiqx9zmjh4cnihhw794rq3267s7kz7livpiv52rks URL
-    http://beta.quicklisp.org/archive/trivial-backtrace/2020-06-10/trivial-backtrace-20200610-git.tgz
-    MD5 1d9a7cc7c5840e4eba84c89648908525 NAME trivial-backtrace FILENAME
-    trivial-backtrace DEPS NIL DEPENDENCIES NIL VERSION 20200610-git SIBLINGS
-    (trivial-backtrace-test) PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/trivial-clipboard.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/trivial-clipboard.nix
deleted file mode 100644
index c7831773a900..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/trivial-clipboard.nix
+++ /dev/null
@@ -1,27 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "trivial-clipboard";
-  version = "20210228-git";
-
-  description = "trivial-clipboard let access system clipboard.";
-
-  deps = [ args."uiop" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/trivial-clipboard/2021-02-28/trivial-clipboard-20210228-git.tgz";
-    sha256 = "1fmxkz97qrjkc320w849r1411f7j2ghf3g9xh5lczcapgjwq8f0l";
-  };
-
-  packageName = "trivial-clipboard";
-
-  asdFilesToKeep = ["trivial-clipboard.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM trivial-clipboard DESCRIPTION
-    trivial-clipboard let access system clipboard. SHA256
-    1fmxkz97qrjkc320w849r1411f7j2ghf3g9xh5lczcapgjwq8f0l URL
-    http://beta.quicklisp.org/archive/trivial-clipboard/2021-02-28/trivial-clipboard-20210228-git.tgz
-    MD5 f147ff33934a3796d89597cea8dbe462 NAME trivial-clipboard FILENAME
-    trivial-clipboard DEPS ((NAME uiop FILENAME uiop)) DEPENDENCIES (uiop)
-    VERSION 20210228-git SIBLINGS (trivial-clipboard-test) PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/trivial-cltl2.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/trivial-cltl2.nix
deleted file mode 100644
index 3b72629fa375..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/trivial-cltl2.nix
+++ /dev/null
@@ -1,27 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "trivial-cltl2";
-  version = "20200325-git";
-
-  description = "Compatibility package exporting CLtL2 functionality";
-
-  deps = [ ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/trivial-cltl2/2020-03-25/trivial-cltl2-20200325-git.tgz";
-    sha256 = "0hahi36v47alsvamg62d0cgay8l0razcgxl089ifj6sqy7s8iwys";
-  };
-
-  packageName = "trivial-cltl2";
-
-  asdFilesToKeep = ["trivial-cltl2.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM trivial-cltl2 DESCRIPTION
-    Compatibility package exporting CLtL2 functionality SHA256
-    0hahi36v47alsvamg62d0cgay8l0razcgxl089ifj6sqy7s8iwys URL
-    http://beta.quicklisp.org/archive/trivial-cltl2/2020-03-25/trivial-cltl2-20200325-git.tgz
-    MD5 aa18140b9840365ceb9a6cddbdbdd67b NAME trivial-cltl2 FILENAME
-    trivial-cltl2 DEPS NIL DEPENDENCIES NIL VERSION 20200325-git SIBLINGS NIL
-    PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/trivial-features.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/trivial-features.nix
deleted file mode 100644
index 46c6b635a6a9..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/trivial-features.nix
+++ /dev/null
@@ -1,27 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "trivial-features";
-  version = "20211209-git";
-
-  description = "Ensures consistent *FEATURES* across multiple CLs.";
-
-  deps = [ ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/trivial-features/2021-12-09/trivial-features-20211209-git.tgz";
-    sha256 = "1sxblr86hvbb99isr86y08snfpcajd6ra3396ibqkfnw33hhkgql";
-  };
-
-  packageName = "trivial-features";
-
-  asdFilesToKeep = ["trivial-features.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM trivial-features DESCRIPTION
-    Ensures consistent *FEATURES* across multiple CLs. SHA256
-    1sxblr86hvbb99isr86y08snfpcajd6ra3396ibqkfnw33hhkgql URL
-    http://beta.quicklisp.org/archive/trivial-features/2021-12-09/trivial-features-20211209-git.tgz
-    MD5 eca3e353c7d7f100a07a5aeb4de02098 NAME trivial-features FILENAME
-    trivial-features DEPS NIL DEPENDENCIES NIL VERSION 20211209-git SIBLINGS
-    (trivial-features-tests) PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/trivial-file-size.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/trivial-file-size.nix
deleted file mode 100644
index f37d63b6bbf3..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/trivial-file-size.nix
+++ /dev/null
@@ -1,30 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "trivial-file-size";
-  version = "20200427-git";
-
-  parasites = [ "trivial-file-size/tests" ];
-
-  description = "Stat a file's size.";
-
-  deps = [ args."fiveam" args."uiop" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/trivial-file-size/2020-04-27/trivial-file-size-20200427-git.tgz";
-    sha256 = "1vspkgygrldbjb4gdm1fsn04j50rwil41x0fvvm4fxm84rwrscsa";
-  };
-
-  packageName = "trivial-file-size";
-
-  asdFilesToKeep = ["trivial-file-size.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM trivial-file-size DESCRIPTION Stat a file's size. SHA256
-    1vspkgygrldbjb4gdm1fsn04j50rwil41x0fvvm4fxm84rwrscsa URL
-    http://beta.quicklisp.org/archive/trivial-file-size/2020-04-27/trivial-file-size-20200427-git.tgz
-    MD5 1e1952c60c1711869cd6b87b9bc25b52 NAME trivial-file-size FILENAME
-    trivial-file-size DEPS
-    ((NAME fiveam FILENAME fiveam) (NAME uiop FILENAME uiop)) DEPENDENCIES
-    (fiveam uiop) VERSION 20200427-git SIBLINGS NIL PARASITES
-    (trivial-file-size/tests)) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/trivial-garbage.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/trivial-garbage.nix
deleted file mode 100644
index 2a180488dabd..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/trivial-garbage.nix
+++ /dev/null
@@ -1,29 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "trivial-garbage";
-  version = "20200925-git";
-
-  parasites = [ "trivial-garbage/tests" ];
-
-  description = "Portable finalizers, weak hash-tables and weak pointers.";
-
-  deps = [ args."rt" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/trivial-garbage/2020-09-25/trivial-garbage-20200925-git.tgz";
-    sha256 = "00iw2iw6qzji9b2gwy798l54jdk185sxh1k7m2qd9srs8s730k83";
-  };
-
-  packageName = "trivial-garbage";
-
-  asdFilesToKeep = ["trivial-garbage.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM trivial-garbage DESCRIPTION
-    Portable finalizers, weak hash-tables and weak pointers. SHA256
-    00iw2iw6qzji9b2gwy798l54jdk185sxh1k7m2qd9srs8s730k83 URL
-    http://beta.quicklisp.org/archive/trivial-garbage/2020-09-25/trivial-garbage-20200925-git.tgz
-    MD5 9d748d1d549f419ce474f35906707420 NAME trivial-garbage FILENAME
-    trivial-garbage DEPS ((NAME rt FILENAME rt)) DEPENDENCIES (rt) VERSION
-    20200925-git SIBLINGS NIL PARASITES (trivial-garbage/tests)) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/trivial-gray-streams.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/trivial-gray-streams.nix
deleted file mode 100644
index 67dba33ed3c6..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/trivial-gray-streams.nix
+++ /dev/null
@@ -1,27 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "trivial-gray-streams";
-  version = "20210124-git";
-
-  description = "Compatibility layer for Gray Streams (see http://www.cliki.net/Gray%20streams).";
-
-  deps = [ ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/trivial-gray-streams/2021-01-24/trivial-gray-streams-20210124-git.tgz";
-    sha256 = "0swqcw3649279qyn5lc42xqgi13jc4kd7hf3iasf4vfli8lhb3n6";
-  };
-
-  packageName = "trivial-gray-streams";
-
-  asdFilesToKeep = ["trivial-gray-streams.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM trivial-gray-streams DESCRIPTION
-    Compatibility layer for Gray Streams (see http://www.cliki.net/Gray%20streams).
-    SHA256 0swqcw3649279qyn5lc42xqgi13jc4kd7hf3iasf4vfli8lhb3n6 URL
-    http://beta.quicklisp.org/archive/trivial-gray-streams/2021-01-24/trivial-gray-streams-20210124-git.tgz
-    MD5 1b93af1cae9f8465d813964db4d10588 NAME trivial-gray-streams FILENAME
-    trivial-gray-streams DEPS NIL DEPENDENCIES NIL VERSION 20210124-git
-    SIBLINGS (trivial-gray-streams-test) PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/trivial-indent.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/trivial-indent.nix
deleted file mode 100644
index dc67ca8c716b..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/trivial-indent.nix
+++ /dev/null
@@ -1,27 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "trivial-indent";
-  version = "20210531-git";
-
-  description = "A very simple library to allow indentation hints for SWANK.";
-
-  deps = [ ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/trivial-indent/2021-05-31/trivial-indent-20210531-git.tgz";
-    sha256 = "1nqkay4kwy365q1qlba07q9x5ng0sxrcii4fpjqcd8nwbx3kbm8b";
-  };
-
-  packageName = "trivial-indent";
-
-  asdFilesToKeep = ["trivial-indent.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM trivial-indent DESCRIPTION
-    A very simple library to allow indentation hints for SWANK. SHA256
-    1nqkay4kwy365q1qlba07q9x5ng0sxrcii4fpjqcd8nwbx3kbm8b URL
-    http://beta.quicklisp.org/archive/trivial-indent/2021-05-31/trivial-indent-20210531-git.tgz
-    MD5 3bb7d208d9d0614121c1f57fcffe65c7 NAME trivial-indent FILENAME
-    trivial-indent DEPS NIL DEPENDENCIES NIL VERSION 20210531-git SIBLINGS NIL
-    PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/trivial-macroexpand-all.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/trivial-macroexpand-all.nix
deleted file mode 100644
index ccf4a4e81ab6..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/trivial-macroexpand-all.nix
+++ /dev/null
@@ -1,27 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "trivial-macroexpand-all";
-  version = "20171023-git";
-
-  description = "Call each implementation's macroexpand-all equivalent";
-
-  deps = [ ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/trivial-macroexpand-all/2017-10-23/trivial-macroexpand-all-20171023-git.tgz";
-    sha256 = "0h5h9zn32pn26x7ll9h08g0csr2f5hvk1wgbr7kdhx5zbrszd7zm";
-  };
-
-  packageName = "trivial-macroexpand-all";
-
-  asdFilesToKeep = ["trivial-macroexpand-all.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM trivial-macroexpand-all DESCRIPTION
-    Call each implementation's macroexpand-all equivalent SHA256
-    0h5h9zn32pn26x7ll9h08g0csr2f5hvk1wgbr7kdhx5zbrszd7zm URL
-    http://beta.quicklisp.org/archive/trivial-macroexpand-all/2017-10-23/trivial-macroexpand-all-20171023-git.tgz
-    MD5 9cec494869344eb64ebce802c01928c5 NAME trivial-macroexpand-all FILENAME
-    trivial-macroexpand-all DEPS NIL DEPENDENCIES NIL VERSION 20171023-git
-    SIBLINGS NIL PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/trivial-main-thread.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/trivial-main-thread.nix
deleted file mode 100644
index 8c5b3afd0eac..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/trivial-main-thread.nix
+++ /dev/null
@@ -1,35 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "trivial-main-thread";
-  version = "20190710-git";
-
-  description = "Compatibility library to run things in the main thread.";
-
-  deps = [ args."alexandria" args."array-utils" args."bordeaux-threads" args."dissect" args."simple-tasks" args."trivial-features" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/trivial-main-thread/2019-07-10/trivial-main-thread-20190710-git.tgz";
-    sha256 = "1zj12rc29rrff5grmi7sjxfzdv78khbb4sg43hy2cb33hykpvg2h";
-  };
-
-  packageName = "trivial-main-thread";
-
-  asdFilesToKeep = ["trivial-main-thread.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM trivial-main-thread DESCRIPTION
-    Compatibility library to run things in the main thread. SHA256
-    1zj12rc29rrff5grmi7sjxfzdv78khbb4sg43hy2cb33hykpvg2h URL
-    http://beta.quicklisp.org/archive/trivial-main-thread/2019-07-10/trivial-main-thread-20190710-git.tgz
-    MD5 ab95906f1831aa5b40f271eebdfe11a3 NAME trivial-main-thread FILENAME
-    trivial-main-thread DEPS
-    ((NAME alexandria FILENAME alexandria)
-     (NAME array-utils FILENAME array-utils)
-     (NAME bordeaux-threads FILENAME bordeaux-threads)
-     (NAME dissect FILENAME dissect) (NAME simple-tasks FILENAME simple-tasks)
-     (NAME trivial-features FILENAME trivial-features))
-    DEPENDENCIES
-    (alexandria array-utils bordeaux-threads dissect simple-tasks
-     trivial-features)
-    VERSION 20190710-git SIBLINGS NIL PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/trivial-mimes.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/trivial-mimes.nix
deleted file mode 100644
index 0d9ae4a6da5a..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/trivial-mimes.nix
+++ /dev/null
@@ -1,27 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "trivial-mimes";
-  version = "20200715-git";
-
-  description = "Tiny library to detect mime types in files.";
-
-  deps = [ ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/trivial-mimes/2020-07-15/trivial-mimes-20200715-git.tgz";
-    sha256 = "10mk1v5ad0m3bg5pl7lqhh827jvg5jb896807vmi8wznwk7zaif1";
-  };
-
-  packageName = "trivial-mimes";
-
-  asdFilesToKeep = ["trivial-mimes.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM trivial-mimes DESCRIPTION
-    Tiny library to detect mime types in files. SHA256
-    10mk1v5ad0m3bg5pl7lqhh827jvg5jb896807vmi8wznwk7zaif1 URL
-    http://beta.quicklisp.org/archive/trivial-mimes/2020-07-15/trivial-mimes-20200715-git.tgz
-    MD5 6f400805470232e87b3f69b9239b2b55 NAME trivial-mimes FILENAME
-    trivial-mimes DEPS NIL DEPENDENCIES NIL VERSION 20200715-git SIBLINGS NIL
-    PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/trivial-package-local-nicknames.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/trivial-package-local-nicknames.nix
deleted file mode 100644
index 859f70fe0d6b..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/trivial-package-local-nicknames.nix
+++ /dev/null
@@ -1,27 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "trivial-package-local-nicknames";
-  version = "20200610-git";
-
-  description = "Portability library for package-local nicknames";
-
-  deps = [ ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/trivial-package-local-nicknames/2020-06-10/trivial-package-local-nicknames-20200610-git.tgz";
-    sha256 = "1wabkcwz0v144rb2w3rvxlcj264indfnvlyigk1wds7nq0c8lwk5";
-  };
-
-  packageName = "trivial-package-local-nicknames";
-
-  asdFilesToKeep = ["trivial-package-local-nicknames.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM trivial-package-local-nicknames DESCRIPTION
-    Portability library for package-local nicknames SHA256
-    1wabkcwz0v144rb2w3rvxlcj264indfnvlyigk1wds7nq0c8lwk5 URL
-    http://beta.quicklisp.org/archive/trivial-package-local-nicknames/2020-06-10/trivial-package-local-nicknames-20200610-git.tgz
-    MD5 b3620521d3400ad5910878139bc86fcc NAME trivial-package-local-nicknames
-    FILENAME trivial-package-local-nicknames DEPS NIL DEPENDENCIES NIL VERSION
-    20200610-git SIBLINGS NIL PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/trivial-shell.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/trivial-shell.nix
deleted file mode 100644
index d091d3920ba8..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/trivial-shell.nix
+++ /dev/null
@@ -1,27 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "trivial-shell";
-  version = "20180228-git";
-
-  description = "OS and Implementation independent access to the shell";
-
-  deps = [ ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/trivial-shell/2018-02-28/trivial-shell-20180228-git.tgz";
-    sha256 = "058gk7fld8v5m84r5fcwl5z8j3pw68xs0jdy9xx6vi1svaxrzngp";
-  };
-
-  packageName = "trivial-shell";
-
-  asdFilesToKeep = ["trivial-shell.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM trivial-shell DESCRIPTION
-    OS and Implementation independent access to the shell SHA256
-    058gk7fld8v5m84r5fcwl5z8j3pw68xs0jdy9xx6vi1svaxrzngp URL
-    http://beta.quicklisp.org/archive/trivial-shell/2018-02-28/trivial-shell-20180228-git.tgz
-    MD5 d7b93648abd06be95148d43d09fa2ed0 NAME trivial-shell FILENAME
-    trivial-shell DEPS NIL DEPENDENCIES NIL VERSION 20180228-git SIBLINGS
-    (trivial-shell-test) PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/trivial-types.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/trivial-types.nix
deleted file mode 100644
index 4c3e920468ea..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/trivial-types.nix
+++ /dev/null
@@ -1,26 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "trivial-types";
-  version = "20120407-git";
-
-  description = "Trivial type definitions";
-
-  deps = [ ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/trivial-types/2012-04-07/trivial-types-20120407-git.tgz";
-    sha256 = "0y3lfbbvi2qp2cwswzmk1awzqrsrrcfkcm1qn744bgm1fiqhxbxx";
-  };
-
-  packageName = "trivial-types";
-
-  asdFilesToKeep = ["trivial-types.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM trivial-types DESCRIPTION Trivial type definitions SHA256
-    0y3lfbbvi2qp2cwswzmk1awzqrsrrcfkcm1qn744bgm1fiqhxbxx URL
-    http://beta.quicklisp.org/archive/trivial-types/2012-04-07/trivial-types-20120407-git.tgz
-    MD5 b14dbe0564dcea33d8f4e852a612d7db NAME trivial-types FILENAME
-    trivial-types DEPS NIL DEPENDENCIES NIL VERSION 20120407-git SIBLINGS NIL
-    PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/trivial-utf-8.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/trivial-utf-8.nix
deleted file mode 100644
index 67e07fcd9f41..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/trivial-utf-8.nix
+++ /dev/null
@@ -1,30 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "trivial-utf-8";
-  version = "20211209-git";
-
-  parasites = [ "trivial-utf-8/doc" "trivial-utf-8/tests" ];
-
-  description = "A small library for doing UTF-8-based input and output.";
-
-  deps = [ args."mgl-pax" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/trivial-utf-8/2021-12-09/trivial-utf-8-20211209-git.tgz";
-    sha256 = "1bis8shbdva1diwms2lvhlbdz9rvazqqxi9h8d33vlbw4xai075y";
-  };
-
-  packageName = "trivial-utf-8";
-
-  asdFilesToKeep = ["trivial-utf-8.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM trivial-utf-8 DESCRIPTION
-    A small library for doing UTF-8-based input and output. SHA256
-    1bis8shbdva1diwms2lvhlbdz9rvazqqxi9h8d33vlbw4xai075y URL
-    http://beta.quicklisp.org/archive/trivial-utf-8/2021-12-09/trivial-utf-8-20211209-git.tgz
-    MD5 65603f3c4421a93d5d8c214bb406988d NAME trivial-utf-8 FILENAME
-    trivial-utf-8 DEPS ((NAME mgl-pax FILENAME mgl-pax)) DEPENDENCIES (mgl-pax)
-    VERSION 20211209-git SIBLINGS NIL PARASITES
-    (trivial-utf-8/doc trivial-utf-8/tests)) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/trivial-with-current-source-form.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/trivial-with-current-source-form.nix
deleted file mode 100644
index 5423ac293d64..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/trivial-with-current-source-form.nix
+++ /dev/null
@@ -1,28 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "trivial-with-current-source-form";
-  version = "20211020-git";
-
-  description = "Helps macro writers produce better errors for macro users";
-
-  deps = [ args."alexandria" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/trivial-with-current-source-form/2021-10-20/trivial-with-current-source-form-20211020-git.tgz";
-    sha256 = "03x8yx5hqfydxbdy9nxpaqn6yfjv7hvw8idscx66ns4qcpw6p825";
-  };
-
-  packageName = "trivial-with-current-source-form";
-
-  asdFilesToKeep = ["trivial-with-current-source-form.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM trivial-with-current-source-form DESCRIPTION
-    Helps macro writers produce better errors for macro users SHA256
-    03x8yx5hqfydxbdy9nxpaqn6yfjv7hvw8idscx66ns4qcpw6p825 URL
-    http://beta.quicklisp.org/archive/trivial-with-current-source-form/2021-10-20/trivial-with-current-source-form-20211020-git.tgz
-    MD5 b4a3721cbef6101de1c43c540b446efc NAME trivial-with-current-source-form
-    FILENAME trivial-with-current-source-form DEPS
-    ((NAME alexandria FILENAME alexandria)) DEPENDENCIES (alexandria) VERSION
-    20211020-git SIBLINGS NIL PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/type-i.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/type-i.nix
deleted file mode 100644
index b2effb167cab..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/type-i.nix
+++ /dev/null
@@ -1,38 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "type-i";
-  version = "20191227-git";
-
-  description = "Type Inference Utility on Fundamentally 1-arg Predicates";
-
-  deps = [ args."alexandria" args."closer-mop" args."introspect-environment" args."lisp-namespace" args."trivia_dot_level0" args."trivia_dot_level1" args."trivia_dot_level2" args."trivia_dot_trivial" args."trivial-cltl2" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/type-i/2019-12-27/type-i-20191227-git.tgz";
-    sha256 = "0f8q6klqjgz1kdyhisfkk07izvgs04jchlv2kl3srjxfr5dj5jl5";
-  };
-
-  packageName = "type-i";
-
-  asdFilesToKeep = ["type-i.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM type-i DESCRIPTION
-    Type Inference Utility on Fundamentally 1-arg Predicates SHA256
-    0f8q6klqjgz1kdyhisfkk07izvgs04jchlv2kl3srjxfr5dj5jl5 URL
-    http://beta.quicklisp.org/archive/type-i/2019-12-27/type-i-20191227-git.tgz
-    MD5 af344179d3f97b836d1e3106f8d1c306 NAME type-i FILENAME type-i DEPS
-    ((NAME alexandria FILENAME alexandria)
-     (NAME closer-mop FILENAME closer-mop)
-     (NAME introspect-environment FILENAME introspect-environment)
-     (NAME lisp-namespace FILENAME lisp-namespace)
-     (NAME trivia.level0 FILENAME trivia_dot_level0)
-     (NAME trivia.level1 FILENAME trivia_dot_level1)
-     (NAME trivia.level2 FILENAME trivia_dot_level2)
-     (NAME trivia.trivial FILENAME trivia_dot_trivial)
-     (NAME trivial-cltl2 FILENAME trivial-cltl2))
-    DEPENDENCIES
-    (alexandria closer-mop introspect-environment lisp-namespace trivia.level0
-     trivia.level1 trivia.level2 trivia.trivial trivial-cltl2)
-    VERSION 20191227-git SIBLINGS (type-i.test) PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/uax-15.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/uax-15.nix
deleted file mode 100644
index c87e14967349..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/uax-15.nix
+++ /dev/null
@@ -1,31 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "uax-15";
-  version = "20211209-git";
-
-  parasites = [ "uax-15/tests" ];
-
-  description = "Common lisp implementation of Unicode normalization functions :nfc, :nfd, :nfkc and :nfkd (Uax-15)";
-
-  deps = [ args."cl-ppcre" args."parachute" args."split-sequence" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/uax-15/2021-12-09/uax-15-20211209-git.tgz";
-    sha256 = "0haqp2vgnwq6p4j44xz0xzz4lcf15pj3pla4ybnpral2218j2cdz";
-  };
-
-  packageName = "uax-15";
-
-  asdFilesToKeep = ["uax-15.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM uax-15 DESCRIPTION
-    Common lisp implementation of Unicode normalization functions :nfc, :nfd, :nfkc and :nfkd (Uax-15)
-    SHA256 0haqp2vgnwq6p4j44xz0xzz4lcf15pj3pla4ybnpral2218j2cdz URL
-    http://beta.quicklisp.org/archive/uax-15/2021-12-09/uax-15-20211209-git.tgz
-    MD5 431f4e399305c7ed8d3ce151ea6ff132 NAME uax-15 FILENAME uax-15 DEPS
-    ((NAME cl-ppcre FILENAME cl-ppcre) (NAME parachute FILENAME parachute)
-     (NAME split-sequence FILENAME split-sequence))
-    DEPENDENCIES (cl-ppcre parachute split-sequence) VERSION 20211209-git
-    SIBLINGS NIL PARASITES (uax-15/tests)) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/uffi.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/uffi.nix
deleted file mode 100644
index 222e2634a49f..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/uffi.nix
+++ /dev/null
@@ -1,25 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "uffi";
-  version = "20180228-git";
-
-  description = "Universal Foreign Function Library for Common Lisp";
-
-  deps = [ ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/uffi/2018-02-28/uffi-20180228-git.tgz";
-    sha256 = "1kknzwxsbg2ydy2w0n88y2bq37lqqwg02ffsmz57gqbxvlk26479";
-  };
-
-  packageName = "uffi";
-
-  asdFilesToKeep = ["uffi.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM uffi DESCRIPTION Universal Foreign Function Library for Common Lisp
-    SHA256 1kknzwxsbg2ydy2w0n88y2bq37lqqwg02ffsmz57gqbxvlk26479 URL
-    http://beta.quicklisp.org/archive/uffi/2018-02-28/uffi-20180228-git.tgz MD5
-    b0dfb2f966912f4797327948aa7e9119 NAME uffi FILENAME uffi DEPS NIL
-    DEPENDENCIES NIL VERSION 20180228-git SIBLINGS (uffi-tests) PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/uiop.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/uiop.nix
deleted file mode 100644
index fcc02004ead7..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/uiop.nix
+++ /dev/null
@@ -1,25 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "uiop";
-  version = "3.3.5";
-
-  description = "System lacks description";
-
-  deps = [ ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/uiop/2021-08-07/uiop-3.3.5.tgz";
-    sha256 = "19bskbcv413ix2rjqlbj9y62qbm6780s5i7h00rvpd488nnrvaqk";
-  };
-
-  packageName = "uiop";
-
-  asdFilesToKeep = ["uiop.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM uiop DESCRIPTION System lacks description SHA256
-    19bskbcv413ix2rjqlbj9y62qbm6780s5i7h00rvpd488nnrvaqk URL
-    http://beta.quicklisp.org/archive/uiop/2021-08-07/uiop-3.3.5.tgz MD5
-    831138297c2ac03189d25bb6b03b919c NAME uiop FILENAME uiop DEPS NIL
-    DEPENDENCIES NIL VERSION 3.3.5 SIBLINGS (asdf-driver) PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/unit-test.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/unit-test.nix
deleted file mode 100644
index 17ac69cafb3c..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/unit-test.nix
+++ /dev/null
@@ -1,25 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "unit-test";
-  version = "20120520-git";
-
-  description = "unit-testing framework for common lisp";
-
-  deps = [ ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/unit-test/2012-05-20/unit-test-20120520-git.tgz";
-    sha256 = "1bwbx9d2z9qll46ksfh7bgd0dgh4is2dyfhkladq53qycvjywv9l";
-  };
-
-  packageName = "unit-test";
-
-  asdFilesToKeep = ["unit-test.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM unit-test DESCRIPTION unit-testing framework for common lisp SHA256
-    1bwbx9d2z9qll46ksfh7bgd0dgh4is2dyfhkladq53qycvjywv9l URL
-    http://beta.quicklisp.org/archive/unit-test/2012-05-20/unit-test-20120520-git.tgz
-    MD5 ffcde1c03dd33862cd4f7288649c3cbc NAME unit-test FILENAME unit-test DEPS
-    NIL DEPENDENCIES NIL VERSION 20120520-git SIBLINGS NIL PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/unix-options.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/unix-options.nix
deleted file mode 100644
index 5cb97238b655..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/unix-options.nix
+++ /dev/null
@@ -1,26 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "unix-options";
-  version = "20151031-git";
-
-  description = "Easy to use command line option parser";
-
-  deps = [ ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/unix-options/2015-10-31/unix-options-20151031-git.tgz";
-    sha256 = "0c9vbvvyx5qwvns87624gzxjcbdkbkcwssg29cxjfv3ci3qwqcd5";
-  };
-
-  packageName = "unix-options";
-
-  asdFilesToKeep = ["unix-options.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM unix-options DESCRIPTION Easy to use command line option parser
-    SHA256 0c9vbvvyx5qwvns87624gzxjcbdkbkcwssg29cxjfv3ci3qwqcd5 URL
-    http://beta.quicklisp.org/archive/unix-options/2015-10-31/unix-options-20151031-git.tgz
-    MD5 3bbdeafbef3e7a2e94b9756bf173f636 NAME unix-options FILENAME
-    unix-options DEPS NIL DEPENDENCIES NIL VERSION 20151031-git SIBLINGS NIL
-    PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/unix-opts.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/unix-opts.nix
deleted file mode 100644
index 759a8f9b3188..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/unix-opts.nix
+++ /dev/null
@@ -1,28 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "unix-opts";
-  version = "20210124-git";
-
-  parasites = [ "unix-opts/tests" ];
-
-  description = "minimalistic parser of command line arguments";
-
-  deps = [ ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/unix-opts/2021-01-24/unix-opts-20210124-git.tgz";
-    sha256 = "1gjjav035n6297vgc4wi3i64516b8sdyi0d02q0nwicciwg6mwsn";
-  };
-
-  packageName = "unix-opts";
-
-  asdFilesToKeep = ["unix-opts.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM unix-opts DESCRIPTION minimalistic parser of command line arguments
-    SHA256 1gjjav035n6297vgc4wi3i64516b8sdyi0d02q0nwicciwg6mwsn URL
-    http://beta.quicklisp.org/archive/unix-opts/2021-01-24/unix-opts-20210124-git.tgz
-    MD5 c75d3233c0f2e16793b1ce19bfc83811 NAME unix-opts FILENAME unix-opts DEPS
-    NIL DEPENDENCIES NIL VERSION 20210124-git SIBLINGS NIL PARASITES
-    (unix-opts/tests)) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/usocket-server.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/usocket-server.nix
deleted file mode 100644
index c1b24f691a43..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/usocket-server.nix
+++ /dev/null
@@ -1,32 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "usocket-server";
-  version = "usocket-0.8.3";
-
-  description = "Universal socket library for Common Lisp (server side)";
-
-  deps = [ args."alexandria" args."bordeaux-threads" args."split-sequence" args."usocket" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/usocket/2019-12-27/usocket-0.8.3.tgz";
-    sha256 = "19gl72r9jqms8slzn7i7bww2cqng9mhiqqhhccadlrx2xv6d3lm7";
-  };
-
-  packageName = "usocket-server";
-
-  asdFilesToKeep = ["usocket-server.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM usocket-server DESCRIPTION
-    Universal socket library for Common Lisp (server side) SHA256
-    19gl72r9jqms8slzn7i7bww2cqng9mhiqqhhccadlrx2xv6d3lm7 URL
-    http://beta.quicklisp.org/archive/usocket/2019-12-27/usocket-0.8.3.tgz MD5
-    b1103034f32565487ab3b6eb92c0ca2b NAME usocket-server FILENAME
-    usocket-server DEPS
-    ((NAME alexandria FILENAME alexandria)
-     (NAME bordeaux-threads FILENAME bordeaux-threads)
-     (NAME split-sequence FILENAME split-sequence)
-     (NAME usocket FILENAME usocket))
-    DEPENDENCIES (alexandria bordeaux-threads split-sequence usocket) VERSION
-    usocket-0.8.3 SIBLINGS (usocket-test usocket) PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/usocket.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/usocket.nix
deleted file mode 100644
index 034f36bda70e..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/usocket.nix
+++ /dev/null
@@ -1,27 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "usocket";
-  version = "0.8.3";
-
-  description = "Universal socket library for Common Lisp";
-
-  deps = [ args."split-sequence" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/usocket/2019-12-27/usocket-0.8.3.tgz";
-    sha256 = "19gl72r9jqms8slzn7i7bww2cqng9mhiqqhhccadlrx2xv6d3lm7";
-  };
-
-  packageName = "usocket";
-
-  asdFilesToKeep = ["usocket.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM usocket DESCRIPTION Universal socket library for Common Lisp SHA256
-    19gl72r9jqms8slzn7i7bww2cqng9mhiqqhhccadlrx2xv6d3lm7 URL
-    http://beta.quicklisp.org/archive/usocket/2019-12-27/usocket-0.8.3.tgz MD5
-    b1103034f32565487ab3b6eb92c0ca2b NAME usocket FILENAME usocket DEPS
-    ((NAME split-sequence FILENAME split-sequence)) DEPENDENCIES
-    (split-sequence) VERSION 0.8.3 SIBLINGS (usocket-server usocket-test)
-    PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/utilities_dot_print-items.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/utilities_dot_print-items.nix
deleted file mode 100644
index 1e9decab3271..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/utilities_dot_print-items.nix
+++ /dev/null
@@ -1,31 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "utilities_dot_print-items";
-  version = "20210411-git";
-
-  parasites = [ "utilities.print-items/test" ];
-
-  description = "A protocol for flexible and composable printing.";
-
-  deps = [ args."alexandria" args."fiveam" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/utilities.print-items/2021-04-11/utilities.print-items-20210411-git.tgz";
-    sha256 = "0da2m4b993w31wph2ybdmdd6rycadrp44ccjdba5pygpkf3x00gx";
-  };
-
-  packageName = "utilities.print-items";
-
-  asdFilesToKeep = ["utilities.print-items.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM utilities.print-items DESCRIPTION
-    A protocol for flexible and composable printing. SHA256
-    0da2m4b993w31wph2ybdmdd6rycadrp44ccjdba5pygpkf3x00gx URL
-    http://beta.quicklisp.org/archive/utilities.print-items/2021-04-11/utilities.print-items-20210411-git.tgz
-    MD5 35be0e5ee4c957699082fb6ae8f14ef2 NAME utilities.print-items FILENAME
-    utilities_dot_print-items DEPS
-    ((NAME alexandria FILENAME alexandria) (NAME fiveam FILENAME fiveam))
-    DEPENDENCIES (alexandria fiveam) VERSION 20210411-git SIBLINGS NIL
-    PARASITES (utilities.print-items/test)) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/utilities_dot_print-tree.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/utilities_dot_print-tree.nix
deleted file mode 100644
index ecb9aafbb36c..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/utilities_dot_print-tree.nix
+++ /dev/null
@@ -1,32 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "utilities_dot_print-tree";
-  version = "20200325-git";
-
-  parasites = [ "utilities.print-tree/test" ];
-
-  description = "This system provides simple facilities for printing tree structures.";
-
-  deps = [ args."alexandria" args."fiveam" args."uiop" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/utilities.print-tree/2020-03-25/utilities.print-tree-20200325-git.tgz";
-    sha256 = "1nam8g2ppzkzpkwwhmil9y68is43ljpvc7hd64zxp4zsaqab5dww";
-  };
-
-  packageName = "utilities.print-tree";
-
-  asdFilesToKeep = ["utilities.print-tree.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM utilities.print-tree DESCRIPTION
-    This system provides simple facilities for printing tree structures. SHA256
-    1nam8g2ppzkzpkwwhmil9y68is43ljpvc7hd64zxp4zsaqab5dww URL
-    http://beta.quicklisp.org/archive/utilities.print-tree/2020-03-25/utilities.print-tree-20200325-git.tgz
-    MD5 618bf5b42c415a44a1566f4f96a2c69a NAME utilities.print-tree FILENAME
-    utilities_dot_print-tree DEPS
-    ((NAME alexandria FILENAME alexandria) (NAME fiveam FILENAME fiveam)
-     (NAME uiop FILENAME uiop))
-    DEPENDENCIES (alexandria fiveam uiop) VERSION 20200325-git SIBLINGS NIL
-    PARASITES (utilities.print-tree/test)) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/uuid.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/uuid.nix
deleted file mode 100644
index 32142fcb02c2..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/uuid.nix
+++ /dev/null
@@ -1,30 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "uuid";
-  version = "20200715-git";
-
-  description = "UUID Generation";
-
-  deps = [ args."alexandria" args."bordeaux-threads" args."ironclad" args."trivial-utf-8" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/uuid/2020-07-15/uuid-20200715-git.tgz";
-    sha256 = "1ymir6hgax1vbbcgyprnwbsx224ih03a55v10l35xridwyzhzrx0";
-  };
-
-  packageName = "uuid";
-
-  asdFilesToKeep = ["uuid.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM uuid DESCRIPTION UUID Generation SHA256
-    1ymir6hgax1vbbcgyprnwbsx224ih03a55v10l35xridwyzhzrx0 URL
-    http://beta.quicklisp.org/archive/uuid/2020-07-15/uuid-20200715-git.tgz MD5
-    e550de5e4e0f8cc9dc92aff0b488a991 NAME uuid FILENAME uuid DEPS
-    ((NAME alexandria FILENAME alexandria)
-     (NAME bordeaux-threads FILENAME bordeaux-threads)
-     (NAME ironclad FILENAME ironclad)
-     (NAME trivial-utf-8 FILENAME trivial-utf-8))
-    DEPENDENCIES (alexandria bordeaux-threads ironclad trivial-utf-8) VERSION
-    20200715-git SIBLINGS NIL PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/varjo.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/varjo.nix
deleted file mode 100644
index c69acab7ba20..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/varjo.nix
+++ /dev/null
@@ -1,39 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "varjo";
-  version = "release-quicklisp-92f9c75b-git";
-
-  description = "Common Lisp -> GLSL Compiler";
-
-  deps = [ args."alexandria" args."cl-ppcre" args."documentation-utils" args."fn" args."glsl-docs" args."glsl-spec" args."glsl-symbols" args."named-readtables" args."parse-float" args."trivial-indent" args."uiop" args."vas-string-metrics" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/varjo/2021-01-24/varjo-release-quicklisp-92f9c75b-git.tgz";
-    sha256 = "0xxi2ivjz3fqgw2nxzshf9m7ppvzv7wdg20lr0krq14i8j5gf5jy";
-  };
-
-  packageName = "varjo";
-
-  asdFilesToKeep = ["varjo.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM varjo DESCRIPTION Common Lisp -> GLSL Compiler SHA256
-    0xxi2ivjz3fqgw2nxzshf9m7ppvzv7wdg20lr0krq14i8j5gf5jy URL
-    http://beta.quicklisp.org/archive/varjo/2021-01-24/varjo-release-quicklisp-92f9c75b-git.tgz
-    MD5 78a3b8021885ebfab4015e20b885cdcf NAME varjo FILENAME varjo DEPS
-    ((NAME alexandria FILENAME alexandria) (NAME cl-ppcre FILENAME cl-ppcre)
-     (NAME documentation-utils FILENAME documentation-utils)
-     (NAME fn FILENAME fn) (NAME glsl-docs FILENAME glsl-docs)
-     (NAME glsl-spec FILENAME glsl-spec)
-     (NAME glsl-symbols FILENAME glsl-symbols)
-     (NAME named-readtables FILENAME named-readtables)
-     (NAME parse-float FILENAME parse-float)
-     (NAME trivial-indent FILENAME trivial-indent) (NAME uiop FILENAME uiop)
-     (NAME vas-string-metrics FILENAME vas-string-metrics))
-    DEPENDENCIES
-    (alexandria cl-ppcre documentation-utils fn glsl-docs glsl-spec
-     glsl-symbols named-readtables parse-float trivial-indent uiop
-     vas-string-metrics)
-    VERSION release-quicklisp-92f9c75b-git SIBLINGS (varjo.import varjo.tests)
-    PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/vas-string-metrics.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/vas-string-metrics.nix
deleted file mode 100644
index 7b8e125ac9ea..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/vas-string-metrics.nix
+++ /dev/null
@@ -1,27 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "vas-string-metrics";
-  version = "20211209-git";
-
-  description = "Jaro-Winkler and Levenshtein string distance algorithms.";
-
-  deps = [ ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/vas-string-metrics/2021-12-09/vas-string-metrics-20211209-git.tgz";
-    sha256 = "0q8zzfmwprjw6wmj8aifizx06xw9yrq0c8qhwhrak62cyz9lvf8n";
-  };
-
-  packageName = "vas-string-metrics";
-
-  asdFilesToKeep = ["vas-string-metrics.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM vas-string-metrics DESCRIPTION
-    Jaro-Winkler and Levenshtein string distance algorithms. SHA256
-    0q8zzfmwprjw6wmj8aifizx06xw9yrq0c8qhwhrak62cyz9lvf8n URL
-    http://beta.quicklisp.org/archive/vas-string-metrics/2021-12-09/vas-string-metrics-20211209-git.tgz
-    MD5 b1264bac0f9516d9617397e1b7a7c20e NAME vas-string-metrics FILENAME
-    vas-string-metrics DEPS NIL DEPENDENCIES NIL VERSION 20211209-git SIBLINGS
-    (test.vas-string-metrics) PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/vecto.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/vecto.nix
deleted file mode 100644
index 2ce2ac83403f..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/vecto.nix
+++ /dev/null
@@ -1,31 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "vecto";
-  version = "1.5";
-
-  description = "Create vector graphics in PNG files.";
-
-  deps = [ args."cl-aa" args."cl-paths" args."cl-vectors" args."salza2" args."trivial-gray-streams" args."zpb-ttf" args."zpng" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/vecto/2017-12-27/vecto-1.5.tgz";
-    sha256 = "05pxc6s853f67j57bbzsg2izfl0164bifbvdp2ji870yziz88vls";
-  };
-
-  packageName = "vecto";
-
-  asdFilesToKeep = ["vecto.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM vecto DESCRIPTION Create vector graphics in PNG files. SHA256
-    05pxc6s853f67j57bbzsg2izfl0164bifbvdp2ji870yziz88vls URL
-    http://beta.quicklisp.org/archive/vecto/2017-12-27/vecto-1.5.tgz MD5
-    69e6b2f7fa10066d50f9134942afad73 NAME vecto FILENAME vecto DEPS
-    ((NAME cl-aa FILENAME cl-aa) (NAME cl-paths FILENAME cl-paths)
-     (NAME cl-vectors FILENAME cl-vectors) (NAME salza2 FILENAME salza2)
-     (NAME trivial-gray-streams FILENAME trivial-gray-streams)
-     (NAME zpb-ttf FILENAME zpb-ttf) (NAME zpng FILENAME zpng))
-    DEPENDENCIES
-    (cl-aa cl-paths cl-vectors salza2 trivial-gray-streams zpb-ttf zpng)
-    VERSION 1.5 SIBLINGS (vectometry) PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/vom.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/vom.nix
deleted file mode 100644
index 39165dc95509..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/vom.nix
+++ /dev/null
@@ -1,25 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "vom";
-  version = "20160825-git";
-
-  description = "A tiny logging utility.";
-
-  deps = [ ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/vom/2016-08-25/vom-20160825-git.tgz";
-    sha256 = "0mvln0xx8qnrsmaj7c0f2ilgahvf078qvhqag7qs3j26xmamjm93";
-  };
-
-  packageName = "vom";
-
-  asdFilesToKeep = ["vom.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM vom DESCRIPTION A tiny logging utility. SHA256
-    0mvln0xx8qnrsmaj7c0f2ilgahvf078qvhqag7qs3j26xmamjm93 URL
-    http://beta.quicklisp.org/archive/vom/2016-08-25/vom-20160825-git.tgz MD5
-    ad16bdc0221b08de371be6ce25ce3d47 NAME vom FILENAME vom DEPS NIL
-    DEPENDENCIES NIL VERSION 20160825-git SIBLINGS NIL PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/wild-package-inferred-system.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/wild-package-inferred-system.nix
deleted file mode 100644
index 989c94b26548..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/wild-package-inferred-system.nix
+++ /dev/null
@@ -1,30 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "wild-package-inferred-system";
-  version = "20200325-git";
-
-  parasites = [ "wild-package-inferred-system/test" ];
-
-  description = "Introduces the wildcards `*' and `**' into package-inferred-system";
-
-  deps = [ args."fiveam" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/wild-package-inferred-system/2020-03-25/wild-package-inferred-system-20200325-git.tgz";
-    sha256 = "1ypnpzy9z4zkna29sgl4afc386ksa61302bm5kznxb3zz2v1sjas";
-  };
-
-  packageName = "wild-package-inferred-system";
-
-  asdFilesToKeep = ["wild-package-inferred-system.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM wild-package-inferred-system DESCRIPTION
-    Introduces the wildcards `*' and `**' into package-inferred-system SHA256
-    1ypnpzy9z4zkna29sgl4afc386ksa61302bm5kznxb3zz2v1sjas URL
-    http://beta.quicklisp.org/archive/wild-package-inferred-system/2020-03-25/wild-package-inferred-system-20200325-git.tgz
-    MD5 4dfd9f90d780b1e67640543dd4acbf21 NAME wild-package-inferred-system
-    FILENAME wild-package-inferred-system DEPS ((NAME fiveam FILENAME fiveam))
-    DEPENDENCIES (fiveam) VERSION 20200325-git SIBLINGS (foo-wild) PARASITES
-    (wild-package-inferred-system/test)) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/woo.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/woo.nix
deleted file mode 100644
index b502989b51bb..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/woo.nix
+++ /dev/null
@@ -1,47 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "woo";
-  version = "20211209-git";
-
-  description = "An asynchronous HTTP server written in Common Lisp";
-
-  deps = [ args."alexandria" args."babel" args."bordeaux-threads" args."cffi" args."cffi-grovel" args."cffi-toolchain" args."cl-utilities" args."clack-socket" args."fast-http" args."fast-io" args."flexi-streams" args."lev" args."proc-parse" args."quri" args."smart-buffer" args."split-sequence" args."static-vectors" args."swap-bytes" args."trivial-features" args."trivial-gray-streams" args."trivial-utf-8" args."vom" args."xsubseq" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/woo/2021-12-09/woo-20211209-git.tgz";
-    sha256 = "0pm4l4sp3zgygkhjzd03kjjk032m5cra628fs25lvcshbrpmkcp3";
-  };
-
-  packageName = "woo";
-
-  asdFilesToKeep = ["woo.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM woo DESCRIPTION An asynchronous HTTP server written in Common Lisp
-    SHA256 0pm4l4sp3zgygkhjzd03kjjk032m5cra628fs25lvcshbrpmkcp3 URL
-    http://beta.quicklisp.org/archive/woo/2021-12-09/woo-20211209-git.tgz MD5
-    8f4926c010491996b1ffe39882fafb2b NAME woo FILENAME woo DEPS
-    ((NAME alexandria FILENAME alexandria) (NAME babel FILENAME babel)
-     (NAME bordeaux-threads FILENAME bordeaux-threads)
-     (NAME cffi FILENAME cffi) (NAME cffi-grovel FILENAME cffi-grovel)
-     (NAME cffi-toolchain FILENAME cffi-toolchain)
-     (NAME cl-utilities FILENAME cl-utilities)
-     (NAME clack-socket FILENAME clack-socket)
-     (NAME fast-http FILENAME fast-http) (NAME fast-io FILENAME fast-io)
-     (NAME flexi-streams FILENAME flexi-streams) (NAME lev FILENAME lev)
-     (NAME proc-parse FILENAME proc-parse) (NAME quri FILENAME quri)
-     (NAME smart-buffer FILENAME smart-buffer)
-     (NAME split-sequence FILENAME split-sequence)
-     (NAME static-vectors FILENAME static-vectors)
-     (NAME swap-bytes FILENAME swap-bytes)
-     (NAME trivial-features FILENAME trivial-features)
-     (NAME trivial-gray-streams FILENAME trivial-gray-streams)
-     (NAME trivial-utf-8 FILENAME trivial-utf-8) (NAME vom FILENAME vom)
-     (NAME xsubseq FILENAME xsubseq))
-    DEPENDENCIES
-    (alexandria babel bordeaux-threads cffi cffi-grovel cffi-toolchain
-     cl-utilities clack-socket fast-http fast-io flexi-streams lev proc-parse
-     quri smart-buffer split-sequence static-vectors swap-bytes
-     trivial-features trivial-gray-streams trivial-utf-8 vom xsubseq)
-    VERSION 20211209-git SIBLINGS (clack-handler-woo woo-test) PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/wookie.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/wookie.nix
deleted file mode 100644
index 6e5800d47373..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/wookie.nix
+++ /dev/null
@@ -1,52 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "wookie";
-  version = "20191130-git";
-
-  description = "An evented webserver for Common Lisp.";
-
-  deps = [ args."alexandria" args."babel" args."blackbird" args."bordeaux-threads" args."cffi" args."cffi-grovel" args."cffi-toolchain" args."chunga" args."cl-async" args."cl-async-base" args."cl-async-ssl" args."cl-async-util" args."cl-fad" args."cl-libuv" args."cl-ppcre" args."cl-utilities" args."do-urlencode" args."fast-http" args."fast-io" args."flexi-streams" args."proc-parse" args."quri" args."smart-buffer" args."split-sequence" args."static-vectors" args."trivial-features" args."trivial-gray-streams" args."vom" args."xsubseq" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/wookie/2019-11-30/wookie-20191130-git.tgz";
-    sha256 = "13f9fi7yv28lag79z03jrnm7aih2x5zwvh4hw9cadw75956975d2";
-  };
-
-  packageName = "wookie";
-
-  asdFilesToKeep = ["wookie.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM wookie DESCRIPTION An evented webserver for Common Lisp. SHA256
-    13f9fi7yv28lag79z03jrnm7aih2x5zwvh4hw9cadw75956975d2 URL
-    http://beta.quicklisp.org/archive/wookie/2019-11-30/wookie-20191130-git.tgz
-    MD5 5e5d6537637312919fd528bb1d0c1eba NAME wookie FILENAME wookie DEPS
-    ((NAME alexandria FILENAME alexandria) (NAME babel FILENAME babel)
-     (NAME blackbird FILENAME blackbird)
-     (NAME bordeaux-threads FILENAME bordeaux-threads)
-     (NAME cffi FILENAME cffi) (NAME cffi-grovel FILENAME cffi-grovel)
-     (NAME cffi-toolchain FILENAME cffi-toolchain)
-     (NAME chunga FILENAME chunga) (NAME cl-async FILENAME cl-async)
-     (NAME cl-async-base FILENAME cl-async-base)
-     (NAME cl-async-ssl FILENAME cl-async-ssl)
-     (NAME cl-async-util FILENAME cl-async-util) (NAME cl-fad FILENAME cl-fad)
-     (NAME cl-libuv FILENAME cl-libuv) (NAME cl-ppcre FILENAME cl-ppcre)
-     (NAME cl-utilities FILENAME cl-utilities)
-     (NAME do-urlencode FILENAME do-urlencode)
-     (NAME fast-http FILENAME fast-http) (NAME fast-io FILENAME fast-io)
-     (NAME flexi-streams FILENAME flexi-streams)
-     (NAME proc-parse FILENAME proc-parse) (NAME quri FILENAME quri)
-     (NAME smart-buffer FILENAME smart-buffer)
-     (NAME split-sequence FILENAME split-sequence)
-     (NAME static-vectors FILENAME static-vectors)
-     (NAME trivial-features FILENAME trivial-features)
-     (NAME trivial-gray-streams FILENAME trivial-gray-streams)
-     (NAME vom FILENAME vom) (NAME xsubseq FILENAME xsubseq))
-    DEPENDENCIES
-    (alexandria babel blackbird bordeaux-threads cffi cffi-grovel
-     cffi-toolchain chunga cl-async cl-async-base cl-async-ssl cl-async-util
-     cl-fad cl-libuv cl-ppcre cl-utilities do-urlencode fast-http fast-io
-     flexi-streams proc-parse quri smart-buffer split-sequence static-vectors
-     trivial-features trivial-gray-streams vom xsubseq)
-    VERSION 20191130-git SIBLINGS NIL PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/xembed.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/xembed.nix
deleted file mode 100644
index f44a128dc3cd..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/xembed.nix
+++ /dev/null
@@ -1,27 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "xembed";
-  version = "clx-20191130-git";
-
-  description = "An implementation of the XEMBED protocol that integrates with CLX.";
-
-  deps = [ args."clx" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/clx-xembed/2019-11-30/clx-xembed-20191130-git.tgz";
-    sha256 = "1ik5gxzhn9j7827jg6g8rk2wa5jby11n2db24y6wrf0ldnbpj7jd";
-  };
-
-  packageName = "xembed";
-
-  asdFilesToKeep = ["xembed.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM xembed DESCRIPTION
-    An implementation of the XEMBED protocol that integrates with CLX. SHA256
-    1ik5gxzhn9j7827jg6g8rk2wa5jby11n2db24y6wrf0ldnbpj7jd URL
-    http://beta.quicklisp.org/archive/clx-xembed/2019-11-30/clx-xembed-20191130-git.tgz
-    MD5 11d35eeb734c0694005a5e5cec4cad22 NAME xembed FILENAME xembed DEPS
-    ((NAME clx FILENAME clx)) DEPENDENCIES (clx) VERSION clx-20191130-git
-    SIBLINGS NIL PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/xkeyboard.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/xkeyboard.nix
deleted file mode 100644
index 34b0476bfbd2..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/xkeyboard.nix
+++ /dev/null
@@ -1,29 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "xkeyboard";
-  version = "clx-20120811-git";
-
-  parasites = [ "xkeyboard-test" ];
-
-  description = "XKeyboard is X11 extension for clx of the same name.";
-
-  deps = [ args."clx" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/clx-xkeyboard/2012-08-11/clx-xkeyboard-20120811-git.tgz";
-    sha256 = "11q70drx3xn7rvk528qlnzpnxd6hg6801kc54ys3jz1l7074458n";
-  };
-
-  packageName = "xkeyboard";
-
-  asdFilesToKeep = ["xkeyboard.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM xkeyboard DESCRIPTION
-    XKeyboard is X11 extension for clx of the same name. SHA256
-    11q70drx3xn7rvk528qlnzpnxd6hg6801kc54ys3jz1l7074458n URL
-    http://beta.quicklisp.org/archive/clx-xkeyboard/2012-08-11/clx-xkeyboard-20120811-git.tgz
-    MD5 4e382b34e05d33f5de8e9c9dea33131c NAME xkeyboard FILENAME xkeyboard DEPS
-    ((NAME clx FILENAME clx)) DEPENDENCIES (clx) VERSION clx-20120811-git
-    SIBLINGS NIL PARASITES (xkeyboard-test)) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/xml_dot_location.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/xml_dot_location.nix
deleted file mode 100644
index a7d23952d8cd..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/xml_dot_location.nix
+++ /dev/null
@@ -1,48 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "xml_dot_location";
-  version = "20200325-git";
-
-  parasites = [ "xml.location/test" ];
-
-  description = "This system provides a convenient interface for
- manipulating XML data. It is inspired by the xmltio library.";
-
-  deps = [ args."alexandria" args."anaphora" args."babel" args."cl-ppcre" args."closer-mop" args."closure-common" args."cxml" args."cxml-stp" args."iterate" args."let-plus" args."lift" args."more-conditions" args."parse-number" args."puri" args."split-sequence" args."trivial-features" args."trivial-gray-streams" args."xpath" args."yacc" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/xml.location/2020-03-25/xml.location-20200325-git.tgz";
-    sha256 = "0wfccj1p1al0w9pc5rhxpsvm3wb2lr5fc4cfjyg751pwsasjikwx";
-  };
-
-  packageName = "xml.location";
-
-  asdFilesToKeep = ["xml.location.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM xml.location DESCRIPTION
-    This system provides a convenient interface for
- manipulating XML data. It is inspired by the xmltio library.
-    SHA256 0wfccj1p1al0w9pc5rhxpsvm3wb2lr5fc4cfjyg751pwsasjikwx URL
-    http://beta.quicklisp.org/archive/xml.location/2020-03-25/xml.location-20200325-git.tgz
-    MD5 90cf4fd2450ba562c7f9657391dacb1d NAME xml.location FILENAME
-    xml_dot_location DEPS
-    ((NAME alexandria FILENAME alexandria) (NAME anaphora FILENAME anaphora)
-     (NAME babel FILENAME babel) (NAME cl-ppcre FILENAME cl-ppcre)
-     (NAME closer-mop FILENAME closer-mop)
-     (NAME closure-common FILENAME closure-common) (NAME cxml FILENAME cxml)
-     (NAME cxml-stp FILENAME cxml-stp) (NAME iterate FILENAME iterate)
-     (NAME let-plus FILENAME let-plus) (NAME lift FILENAME lift)
-     (NAME more-conditions FILENAME more-conditions)
-     (NAME parse-number FILENAME parse-number) (NAME puri FILENAME puri)
-     (NAME split-sequence FILENAME split-sequence)
-     (NAME trivial-features FILENAME trivial-features)
-     (NAME trivial-gray-streams FILENAME trivial-gray-streams)
-     (NAME xpath FILENAME xpath) (NAME yacc FILENAME yacc))
-    DEPENDENCIES
-    (alexandria anaphora babel cl-ppcre closer-mop closure-common cxml cxml-stp
-     iterate let-plus lift more-conditions parse-number puri split-sequence
-     trivial-features trivial-gray-streams xpath yacc)
-    VERSION 20200325-git SIBLINGS (xml.location-and-local-time) PARASITES
-    (xml.location/test)) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/xmls.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/xmls.nix
deleted file mode 100644
index 9dec677b6d1b..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/xmls.nix
+++ /dev/null
@@ -1,28 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "xmls";
-  version = "3.0.2";
-
-  parasites = [ "xmls/test" "xmls/unit-test" ];
-
-  description = "System lacks description";
-
-  deps = [ args."fiveam" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/xmls/2018-04-30/xmls-3.0.2.tgz";
-    sha256 = "1r7mvw62zjcg45j3hm8jlbiisad2b415pghn6qcmhl03dmgp7kgi";
-  };
-
-  packageName = "xmls";
-
-  asdFilesToKeep = ["xmls.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM xmls DESCRIPTION System lacks description SHA256
-    1r7mvw62zjcg45j3hm8jlbiisad2b415pghn6qcmhl03dmgp7kgi URL
-    http://beta.quicklisp.org/archive/xmls/2018-04-30/xmls-3.0.2.tgz MD5
-    2462bab4a5d74e87ef7bdef41cd06dc8 NAME xmls FILENAME xmls DEPS
-    ((NAME fiveam FILENAME fiveam)) DEPENDENCIES (fiveam) VERSION 3.0.2
-    SIBLINGS NIL PARASITES (xmls/test xmls/unit-test)) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/xpath.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/xpath.nix
deleted file mode 100644
index dc47f866e320..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/xpath.nix
+++ /dev/null
@@ -1,38 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "xpath";
-  version = "plexippus-20190521-git";
-
-  parasites = [ "xpath/test" ];
-
-  description = "An implementation of the XML Path Language (XPath) Version 1.0";
-
-  deps = [ args."alexandria" args."babel" args."cl-ppcre" args."closure-common" args."cxml" args."parse-number" args."puri" args."trivial-features" args."trivial-gray-streams" args."yacc" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/plexippus-xpath/2019-05-21/plexippus-xpath-20190521-git.tgz";
-    sha256 = "15357w1rlmahld4rh8avix7m40mwiiv7n2vlyc57ldw2k1m0n7xa";
-  };
-
-  packageName = "xpath";
-
-  asdFilesToKeep = ["xpath.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM xpath DESCRIPTION
-    An implementation of the XML Path Language (XPath) Version 1.0 SHA256
-    15357w1rlmahld4rh8avix7m40mwiiv7n2vlyc57ldw2k1m0n7xa URL
-    http://beta.quicklisp.org/archive/plexippus-xpath/2019-05-21/plexippus-xpath-20190521-git.tgz
-    MD5 eb9a4c39a7c37aa0338c401713b3f944 NAME xpath FILENAME xpath DEPS
-    ((NAME alexandria FILENAME alexandria) (NAME babel FILENAME babel)
-     (NAME cl-ppcre FILENAME cl-ppcre)
-     (NAME closure-common FILENAME closure-common) (NAME cxml FILENAME cxml)
-     (NAME parse-number FILENAME parse-number) (NAME puri FILENAME puri)
-     (NAME trivial-features FILENAME trivial-features)
-     (NAME trivial-gray-streams FILENAME trivial-gray-streams)
-     (NAME yacc FILENAME yacc))
-    DEPENDENCIES
-    (alexandria babel cl-ppcre closure-common cxml parse-number puri
-     trivial-features trivial-gray-streams yacc)
-    VERSION plexippus-20190521-git SIBLINGS NIL PARASITES (xpath/test)) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/xsubseq.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/xsubseq.nix
deleted file mode 100644
index 364b7144333d..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/xsubseq.nix
+++ /dev/null
@@ -1,25 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "xsubseq";
-  version = "20170830-git";
-
-  description = "Efficient way to manage \"subseq\"s in Common Lisp";
-
-  deps = [ ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/xsubseq/2017-08-30/xsubseq-20170830-git.tgz";
-    sha256 = "1am63wkha97hyvkqf4ydx3q07mqpa0chkx65znr7kmqi83a8waml";
-  };
-
-  packageName = "xsubseq";
-
-  asdFilesToKeep = ["xsubseq.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM xsubseq DESCRIPTION Efficient way to manage "subseq"s in Common Lisp
-    SHA256 1am63wkha97hyvkqf4ydx3q07mqpa0chkx65znr7kmqi83a8waml URL
-    http://beta.quicklisp.org/archive/xsubseq/2017-08-30/xsubseq-20170830-git.tgz
-    MD5 960bb8f329649b6e4b820e065e6b38e8 NAME xsubseq FILENAME xsubseq DEPS NIL
-    DEPENDENCIES NIL VERSION 20170830-git SIBLINGS (xsubseq-test) PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/yacc.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/yacc.nix
deleted file mode 100644
index 79b49a86be02..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/yacc.nix
+++ /dev/null
@@ -1,25 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "yacc";
-  version = "cl-20101006-darcs";
-
-  description = "A LALR(1) parser generator for Common Lisp";
-
-  deps = [ ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/cl-yacc/2010-10-06/cl-yacc-20101006-darcs.tgz";
-    sha256 = "0cymvl0arp4yahqcnhxggs1z2g42bf6z4ix75ba7wbsi52zirjp7";
-  };
-
-  packageName = "yacc";
-
-  asdFilesToKeep = ["yacc.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM yacc DESCRIPTION A LALR(1) parser generator for Common Lisp SHA256
-    0cymvl0arp4yahqcnhxggs1z2g42bf6z4ix75ba7wbsi52zirjp7 URL
-    http://beta.quicklisp.org/archive/cl-yacc/2010-10-06/cl-yacc-20101006-darcs.tgz
-    MD5 748b9d59de8be3ccfdf0f001e15972ba NAME yacc FILENAME yacc DEPS NIL
-    DEPENDENCIES NIL VERSION cl-20101006-darcs SIBLINGS NIL PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/yason.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/yason.nix
deleted file mode 100644
index aa06097e7549..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/yason.nix
+++ /dev/null
@@ -1,28 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "yason";
-  version = "v0.7.8";
-
-  description = "JSON parser/encoder";
-
-  deps = [ args."alexandria" args."trivial-gray-streams" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/yason/2019-12-27/yason-v0.7.8.tgz";
-    sha256 = "11d51i2iw4nxsparwbh3s6w9zyms3wi0z0fprwz1d3sqlf03j6f1";
-  };
-
-  packageName = "yason";
-
-  asdFilesToKeep = ["yason.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM yason DESCRIPTION JSON parser/encoder SHA256
-    11d51i2iw4nxsparwbh3s6w9zyms3wi0z0fprwz1d3sqlf03j6f1 URL
-    http://beta.quicklisp.org/archive/yason/2019-12-27/yason-v0.7.8.tgz MD5
-    7c3231635aa494f1721273713ea8c56a NAME yason FILENAME yason DEPS
-    ((NAME alexandria FILENAME alexandria)
-     (NAME trivial-gray-streams FILENAME trivial-gray-streams))
-    DEPENDENCIES (alexandria trivial-gray-streams) VERSION v0.7.8 SIBLINGS NIL
-    PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/zpb-ttf.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/zpb-ttf.nix
deleted file mode 100644
index dece0b5126d1..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/zpb-ttf.nix
+++ /dev/null
@@ -1,26 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "zpb-ttf";
-  version = "release-1.0.4";
-
-  description = "Access TrueType font metrics and outlines from Common Lisp";
-
-  deps = [ ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/zpb-ttf/2021-01-24/zpb-ttf-release-1.0.4.tgz";
-    sha256 = "186jzhmklby2pkmwv3zxw09qh8023f7w5ng2ql46l6abx146s3ll";
-  };
-
-  packageName = "zpb-ttf";
-
-  asdFilesToKeep = ["zpb-ttf.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM zpb-ttf DESCRIPTION
-    Access TrueType font metrics and outlines from Common Lisp SHA256
-    186jzhmklby2pkmwv3zxw09qh8023f7w5ng2ql46l6abx146s3ll URL
-    http://beta.quicklisp.org/archive/zpb-ttf/2021-01-24/zpb-ttf-release-1.0.4.tgz
-    MD5 b66f67b0a1fc347657d4d71ddb304920 NAME zpb-ttf FILENAME zpb-ttf DEPS NIL
-    DEPENDENCIES NIL VERSION release-1.0.4 SIBLINGS NIL PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/zpng.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/zpng.nix
deleted file mode 100644
index 5b62f74dd811..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-output/zpng.nix
+++ /dev/null
@@ -1,28 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "zpng";
-  version = "1.2.2";
-
-  description = "Create PNG files";
-
-  deps = [ args."salza2" args."trivial-gray-streams" ];
-
-  src = fetchurl {
-    url = "http://beta.quicklisp.org/archive/zpng/2015-04-07/zpng-1.2.2.tgz";
-    sha256 = "0932gq9wncibm1z81gbvdc3ip6n118wwzmjnpxaqdy9hk5bs2w1x";
-  };
-
-  packageName = "zpng";
-
-  asdFilesToKeep = ["zpng.asd"];
-  overrides = x: x;
-}
-/* (SYSTEM zpng DESCRIPTION Create PNG files SHA256
-    0932gq9wncibm1z81gbvdc3ip6n118wwzmjnpxaqdy9hk5bs2w1x URL
-    http://beta.quicklisp.org/archive/zpng/2015-04-07/zpng-1.2.2.tgz MD5
-    0a208f4ce0087ef578d477341d5f4078 NAME zpng FILENAME zpng DEPS
-    ((NAME salza2 FILENAME salza2)
-     (NAME trivial-gray-streams FILENAME trivial-gray-streams))
-    DEPENDENCIES (salza2 trivial-gray-streams) VERSION 1.2.2 SIBLINGS NIL
-    PARASITES NIL) */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-overrides.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-overrides.nix
deleted file mode 100644
index 00b094dc9fd9..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-overrides.nix
+++ /dev/null
@@ -1,295 +0,0 @@
-{pkgs, clwrapper, quicklisp-to-nix-packages}:
-let
-  addNativeLibs = libs: x: { propagatedBuildInputs = libs; };
-  skipBuildPhase = x: {
-    overrides = y: ((x.overrides y) // { buildPhase = "true"; });
-  };
-  multiOverride = l: x: pkgs.lib.optionalAttrs (l != []) (((builtins.head l) x) // (multiOverride (builtins.tail l) x));
-  lispName = (clwrapper.lisp.pname or (builtins.parseDrvName clwrapper.lisp.name).name);
-  ifLispIn = l: f: if (pkgs.lib.elem lispName l) then f else (x: {});
-  ifLispNotIn = l: f: if ! (pkgs.lib.elem lispName l) then f else (x: {});
-  extraLispDeps = l: x: { deps = x.deps ++ l; };
-in
-{
-  stumpwm = x:{
-    overrides = y: (x.overrides y) // {
-      linkedSystems = [];
-      preConfigure = ''
-        export configureFlags="$configureFlags --with-$NIX_LISP=common-lisp.sh";
-      '';
-      postInstall = ''
-        export NIX_LISP_PRELAUNCH_HOOK="nix_lisp_build_system stumpwm \
-                '(function stumpwm:stumpwm)' '$linkedSystems'"
-        "$out/bin/stumpwm-lisp-launcher.sh"
-
-        cp "$out/lib/common-lisp/stumpwm/stumpwm" "$out/bin"
-      '';
-    };
-  };
-  iterate = multiOverride [ skipBuildPhase
-    (ifLispNotIn ["sbcl" "gcl"] (x: { parasites=[]; }))];
-  cl-fuse = x: {
-    propagatedBuildInputs = [pkgs.fuse];
-    overrides = y : (x.overrides y) // {
-      configurePhase = ''
-        export makeFlags="$makeFlags LISP=common-lisp.sh"
-      '';
-      preInstall = ''
-        type gcc
-        mkdir -p "$out/lib/common-lisp/"
-        cp -r . "$out/lib/common-lisp/cl-fuse/"
-        "gcc" "-x" "c" "$out/lib/common-lisp/cl-fuse/fuse-launcher.c-minus" "-fPIC" "--shared" "-lfuse" "-o" "$out/lib/common-lisp/cl-fuse/libfuse-launcher.so"
-      '';
-    };
-  };
-  hunchentoot = addNativeLibs [pkgs.openssl];
-  iolib = x: {
-    propagatedBuildInputs = (x.propagatedBuildInputs or [])
-     ++ (with pkgs; [libfixposix gcc])
-     ;
-    overrides = y: (x.overrides y) // {
-      prePatch = ''
-        sed 's|default \"libfixposix\"|default \"${pkgs.libfixposix}/lib/libfixposix\"|' -i src/syscalls/ffi-functions-unix.lisp
-        # Socket tests don't work because they try to access the internet
-        sed 's/(:file "sockets" :depends-on ("pkgdcl" "defsuites"))//' -i iolib.asd
-      '';
-    };
-
-  };
-  cxml = skipBuildPhase;
-  wookie = addNativeLibs (with pkgs; [libuv openssl]);
-  lev = addNativeLibs [pkgs.libev];
-  cl_plus_ssl = x: rec {
-    propagatedBuildInputs = [pkgs.openssl];
-    overrides = y: (x.overrides y) // {
-      prePatch = ''
-        sed 's|libssl.so|${pkgs.lib.getLib pkgs.openssl}/lib/libssl.so|' -i src/reload.lisp
-      '';
-    };
-  };
-  cl-colors = skipBuildPhase;
-  cl-libuv = addNativeLibs [pkgs.libuv];
-  cl-async-ssl = addNativeLibs [pkgs.openssl (import ./openssl-lib-marked.nix)];
-  cl-async-test = addNativeLibs [pkgs.openssl];
-  clsql = multiOverride [ (x: {
-    propagatedBuildInputs = with pkgs; [libmysqlclient postgresql sqlite zlib];
-    overrides = y: (x.overrides y) // {
-      preConfigure = ((x.overrides y).preConfigure or "") + ''
-        export NIX_CFLAGS_COMPILE="$NIX_CFLAGS_COMPILE -I${pkgs.libmysqlclient}/include/mysql"
-        export NIX_LDFLAGS="$NIX_LDFLAGS -L${pkgs.libmysqlclient}/lib/mysql"
-      '';};})
-    (ifLispIn ["ecl" "clisp"] (x: {
-       deps = pkgs.lib.filter (x: x.outPath != quicklisp-to-nix-packages.uffi.outPath)
-         (x.deps ++ (with quicklisp-to-nix-packages; [cffi-uffi-compat]));
-       overrides = y: (x.overrides y) // {
-         postUnpack = ''
-           sed -e '1i(cl:push :clsql-cffi cl:*features*)' -i "$sourceRoot/clsql.asd"
-         '';
-       };
-    }))
-  ];
-  clsql-postgresql-socket = ifLispIn ["ecl" "clisp"] (x: {
-       deps = pkgs.lib.filter (x: x.outPath != quicklisp-to-nix-packages.uffi.outPath)
-         (x.deps ++ (with quicklisp-to-nix-packages; [cffi-uffi-compat]));
-       overrides = y: (x.overrides y) // {
-         postUnpack = ''
-           sed -e '1i(cl:push :clsql-cffi cl:*features*)' -i "$sourceRoot/clsql-postgresql-socket.asd"
-         '';
-       };
-    });
-  clx-truetype = skipBuildPhase;
-  query-fs = x: {
-    overrides = y: (x.overrides y) // {
-      linkedSystems = [];
-      postInstall = ((x.overrides y).postInstall or "") + ''
-        export NIX_LISP_ASDF_PATHS="$NIX_LISP_ASDF_PATHS
-$out/lib/common-lisp/query-fs"
-        export HOME=$PWD
-        export NIX_LISP_PRELAUNCH_HOOK="nix_lisp_build_system query-fs \
-                    '(function query-fs:run-fs-with-cmdline-args)' '$linkedSystems'"
-        "$out/bin/query-fs-lisp-launcher.sh"
-        cp "$out/lib/common-lisp/query-fs/query-fs" "$out/bin/"
-      '';
-    };
-  };
-  cffi = addNativeLibs [pkgs.libffi];
-  cl-mysql = x: {
-    propagatedBuildInputs = [pkgs.libmysqlclient];
-    overrides = y: (x.overrides y) // {
-      prePatch = ((x.overrides y).prePatch or "") + ''
-        sed -i 's,libmysqlclient_r,${pkgs.libmysqlclient}/lib/mysql/libmysqlclient_r,' system.lisp
-      '';
-    };
-  };
-  cl-ppcre-template = x: {
-    overrides = y: (x.overrides y) // {
-      postPatch = ''
-        ln -s lib-dependent/*.asd .
-      '';
-    };
-  };
-  sqlite = x: {
-    propagatedBuildInputs = [pkgs.sqlite];
-    overrides = y: (x.overrides y) // {
-      prePatch = ((x.overrides y).preConfigure or "") + ''
-        sed 's|libsqlite3|${pkgs.sqlite.out}/lib/libsqlite3|' -i sqlite-ffi.lisp
-      '';
-    };
-  };
-  swank = x: {
-    overrides = y: (x.overrides y) // {
-      postPatch = ''
-        patch <<EOD
-        --- swank-loader.lisp	2017-08-30 16:46:16.554076684 -0700
-        +++ swank-loader-new.lisp	2017-08-30 16:49:23.333450928 -0700
-        @@ -155,7 +155,7 @@
-                          ,(unique-dir-name)))
-            (user-homedir-pathname)))
-
-        -(defvar *fasl-directory* (default-fasl-dir)
-        +(defvar *fasl-directory* #P"$out/lib/common-lisp/swank/fasl/"
-           "The directory where fasl files should be placed.")
-
-         (defun binary-pathname (src-pathname binary-dir)
-        @@ -277,12 +277,7 @@
-                          (contrib-dir src-dir))))
-
-         (defun delete-stale-contrib-fasl-files (swank-files contrib-files fasl-dir)
-        -  (let ((newest (reduce #'max (mapcar #'file-write-date swank-files))))
-        -    (dolist (src contrib-files)
-        -      (let ((fasl (binary-pathname src fasl-dir)))
-        -        (when (and (probe-file fasl)
-        -                   (<= (file-write-date fasl) newest))
-        -          (delete-file fasl))))))
-        +  (declare (ignore swank-files contrib-files fasl-dir)))
-
-         (defun compile-contribs (&key (src-dir (contrib-dir *source-directory*))
-                                    (fasl-dir (contrib-dir *fasl-directory*))
-        EOD
-      '';
-    };
-  };
-  uiop = x: {
-    overrides = y: (x.overrides y) // {
-      postInstall = ((x.overrides y).postInstall or "") + ''
-        cp -r "${pkgs.asdf}/lib/common-lisp/asdf/uiop/contrib" "$out/lib/common-lisp/uiop"
-      '';
-    };
-  };
-  cl-containers = x: {
-    overrides = y: (x.overrides y) // {
-      postConfigure = "rm GNUmakefile";
-    };
-  };
-  mssql = addNativeLibs [pkgs.freetds];
-  cl-unification = x: {
-    asdFilesToKeep = (x.asdFilesToKeep or []) ++ [
-      "cl-unification-lib.asd"
-    ];
-  };
-  simple-date = x: {
-    deps = with quicklisp-to-nix-packages; [
-      fiveam md5 usocket
-    ];
-    parasites = [
-      # Needs pomo? Wants to do queries unconditionally?
-      # "simple-date/tests"
-    ];
-  };
-  cl-postgres = x: {
-    deps = pkgs.lib.filter (x: x.outPath != quicklisp-to-nix-packages.simple-date.outPath) x.deps;
-    parasites = (x.parasites or []) ++ [
-      "simple-date" "simple-date/postgres-glue"
-    ];
-    asdFilesToKeep = x.asdFilesToKeep ++ ["simple-date.asd"];
-  };
-  buildnode = x: {
-    deps = pkgs.lib.filter (x: x.name != quicklisp-to-nix-packages.buildnode-xhtml.name) x.deps;
-    parasites = pkgs.lib.filter (x: x!= "buildnode-test") x.parasites;
-  };
-  postmodern = x: {
-    asdFilesToKeep = (x.asdFilesToKeep or []) ++ ["postmodern.asd" "simple-date.asd"];
-    parasites = (pkgs.lib.filter (x: x!= "postmodern/tests") x.parasites) ++
-      ["simple-date/postgres-glue"];
-    deps = pkgs.lib.filter
-      (x: x.name != quicklisp-to-nix-packages.simple-date.name)
-      x.deps;
-  };
-  s-sql = x: {
-    parasites = pkgs.lib.filter (x: x!= "s-sql/tests") x.parasites;
-    deps = pkgs.lib.filter
-      (x: x.name != quicklisp-to-nix-packages.postmodern.name)
-      x.deps;
-  };
-  split-sequence = x: {
-    overrides = y: (x.overrides y) // {
-      preConfigure = ''
-        sed -i -e '/:components/i:serial t' split-sequence.asd
-      '';
-    };
-  };
-  cl-store = x: {
-    overrides = y: (x.overrides y) // {
-      postPatch = ''
-        sed -i -e 's/:initform "Unknown" /:initform #:|Unknown| /' backends.lisp
-      '';
-    };
-  };
-  dbi = x: {
-    parasites = [];
-    deps = pkgs.lib.filter
-      (x:
-        (
-          x.name != quicklisp-to-nix-packages.dbd-mysql.name &&
-          x.name != quicklisp-to-nix-packages.dbd-postgres.name &&
-          x.name != quicklisp-to-nix-packages.dbd-sqlite3.name &&
-          x.name != quicklisp-to-nix-packages.dbi-test.name &&
-          true))
-      x.deps;
-  };
-  cl-cffi-gtk-glib = addNativeLibs [pkgs.glib];
-  cl-cffi-gtk-gdk-pixbuf = addNativeLibs [pkgs.gdk-pixbuf];
-  cl-cffi-gtk-cairo = addNativeLibs [pkgs.cairo];
-  cl-cffi-gtk-pango = addNativeLibs [pkgs.pango];
-  cl-cffi-gtk-gdk = addNativeLibs [pkgs.gtk3];
-  cl-cffi-gtk-gtk3 = addNativeLibs [pkgs.gtk3];
-  cl-webkit2 = addNativeLibs [pkgs.webkitgtk];
-  clfswm = x: {
-    overrides = y: (x.overrides y) // {
-      postInstall = ''
-        export NIX_LISP_PRELAUNCH_HOOK="nix_lisp_build_system clfswm '(function clfswm:main)'"
-        "$out/bin/clfswm-lisp-launcher.sh"
-
-        cp "$out/lib/common-lisp/clfswm/clfswm" "$out/bin"
-      '';
-    };
-  };
-  woo = ifLispNotIn ["sbcl" "gcl"]
-    (extraLispDeps (with quicklisp-to-nix-packages; [cl-speedy-queue]));
-  cl-syslog = x: {
-    overrides = y: (x.overrides y) // {
-      postUnpack = ''
-        sed -e '1a:serial t' -i $sourceRoot/cl-syslog.asd
-      '';
-    };
-  };
-  log4cl = ifLispNotIn ["sbcl" "gcl"]
-    (extraLispDeps (with quicklisp-to-nix-packages; [cl-syslog]));
-  md5 = ifLispNotIn ["sbcl" "ccl" "gcl"]
-    (extraLispDeps (with quicklisp-to-nix-packages; [flexi-streams]));
-  cl-gobject-introspection = addNativeLibs (with pkgs; [glib gobject-introspection]);
-  generic-cl = x: { parasites = []; };
-  static-dispatch = x: {
-    overrides = y: (x.overrides y) // {
-      parasites = [];
-      # workaround for https://github.com/alex-gutev/static-dispatch/issues/12
-      postUnpack = ''
-        sed -e '/^(in-package / a (eval-when (:compile-toplevel :load-toplevel :execute)' \
-            -e '$a)' \
-            -i $sourceRoot/src/combin.lisp
-      '';
-    };
-  };
-  lla = addNativeLibs [ pkgs.openblas ];
-#  cl-opengl = addNativeLibs [ pkgs.libGL pkgs.glfw ];
-}
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-systems.txt b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-systems.txt
deleted file mode 100644
index 93c38c989d6c..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix-systems.txt
+++ /dev/null
@@ -1,259 +0,0 @@
-1am
-3bmd
-access
-acclimation
-alexandria
-anaphora
-arnesi
-array-operations
-array-utils
-asdf-system-connections
-babel
-binomial-heap
-binpack
-blackbird
-bordeaux-threads
-calispel
-cffi
-cffi-grovel
-cffi-uffi-compat
-chanl
-check-it
-chipz
-chunga
-circular-streams
-cl+ssl
-cl-annot
-cl-ansi-text
-cl-async
-cl-async-base
-cl-async-repl
-cl-async-ssl
-cl-base64
-cl-cffi-gtk
-cl-cli
-cl-colors
-cl-containers
-cl-cookie
-cl-css
-cl-csv
-cl-cuda
-cl-custom-hash-table
-cl-dbi
-cl-digraph
-cl-dot
-cl-emb
-cl-fad
-cl-fuse
-cl-fuse-meta-fs
-cl-geometry
-cl-gobject-introspection
-cl-heap
-cl-hooks
-cl-html-diff
-cl-html-parse
-cl-html5-parser
-cl-interpol
-cl-jpeg
-cl-json
-cl-l10n
-cl-libuv
-cl-locale
-cl-markup
-cl-mustache
-cl-mysql
-cl-paths-ttf
-cl-pattern
-cl-pdf
-cl-ppcre
-cl-ppcre-template
-cl-ppcre-unicode
-cl-prevalence
-cl-protobufs
-cl-qrencode
-cl-qprint
-cl-reexport
-cl-shellwords
-cl-slice
-cl-smt-lib
-cl-smtp
-cl-speedy-queue
-cl-store
-cl-svg
-cl-syntax
-cl-syntax-annot
-cl-syntax-anonfun
-cl-syntax-markup
-cl-syslog
-cl-test-more
-cl-typesetting
-cl-unicode
-cl-unification
-cl-utilities
-cl-vectors
-cl-webkit2
-cl-who
-clack
-classowary
-clfswm
-closer-mop
-closure-common
-closure-html
-clsql
-clsql-postgresql
-clsql-postgresql-socket
-clsql-sqlite3
-clss
-clump
-clx
-collectors
-command-line-arguments
-css-lite
-css-selectors
-css-selectors-simple-tree
-css-selectors-stp
-cxml
-cxml-stp
-data-table
-dbd-mysql
-dbd-postgres
-dbd-sqlite3
-dbus
-defclass-std
-dexador
-djula
-documentation-utils
-drakma
-enchant
-esrap
-esrap-peg
-external-program
-fare-csv
-fare-mop
-fare-quasiquote
-fare-utils
-fast-http
-fast-io
-file-attributes
-fiveam
-flexi-streams
-float-features
-flow
-form-fiddle
-fset
-generic-cl
-gettext
-heap
-http-body
-hu.dwim.asdf
-hu.dwim.defclass-star
-hunchensocket
-hunchentoot
-idna
-ieee-floats
-inferior-shell
-iolib
-ironclad
-iterate
-jonathan
-jsown
-lack
-legit
-let-plus
-lev
-lfarm-client
-lfarm-server
-lfarm-ssl
-lift
-lisp-binary
-lisp-namespace
-lla
-local-time
-log4cl
-lparallel
-lquery
-marshal
-md5
-metabang-bind
-metatilities-base
-mgl-pax
-minheap
-misc-extensions
-mk-string-metrics
-mmap
-moptilities
-more-conditions
-mt19937
-named-readtables
-nbd
-net-telent-date
-nibbles
-optima
-osicat
-parachute
-parenscript
-parse-number
-parser-combinators
-parser.common-rules
-pcall
-physical-quantities
-plump
-postmodern
-proc-parse
-prove
-prove-asdf
-puri
-pythonic-string-reader
-query-fs
-quri
-rfc2388
-salza2
-serapeum
-simple-date
-simple-date-time
-slynk
-smart-buffer
-smug
-spinneret
-split-sequence
-sqlite
-static-vectors
-str
-stumpwm
-swank
-swap-bytes
-sycamore
-symbol-munger
-trees
-trivia
-trivial-arguments
-trivial-backtrace
-trivial-clipboard
-trivial-features
-trivial-garbage
-trivial-gray-streams
-trivial-indent
-trivial-main-thread
-trivial-mimes
-trivial-package-local-nicknames
-trivial-shell
-trivial-types
-trivial-utf-8
-uffi
-uiop
-unix-options
-unix-opts
-usocket
-utilities.print-items
-utilities.print-tree
-uuid
-varjo
-vecto
-woo
-wookie
-xembed
-xkeyboard
-xml.location
-xmls
-xsubseq
-yason
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix.nix b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix.nix
deleted file mode 100644
index 08c152ddf725..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix.nix
+++ /dev/null
@@ -1,5247 +0,0 @@
-{stdenv, lib, fetchurl, pkgs, clwrapper}:
-let quicklisp-to-nix-packages = rec {
-  inherit stdenv lib fetchurl clwrapper pkgs quicklisp-to-nix-packages;
-
-  callPackage = pkgs.lib.callPackageWith quicklisp-to-nix-packages;
-  buildLispPackage = callPackage ./define-package.nix;
-  qlOverrides = callPackage ./quicklisp-to-nix-overrides.nix {};
-
-  "html-encode" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."html-encode" or (x: {}))
-       (import ./quicklisp-to-nix-output/html-encode.nix {
-         inherit fetchurl;
-       }));
-
-
-  "hu_dot_dwim_dot_stefil_plus_swank" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."hu_dot_dwim_dot_stefil_plus_swank" or (x: {}))
-       (import ./quicklisp-to-nix-output/hu_dot_dwim_dot_stefil_plus_swank.nix {
-         inherit fetchurl;
-           "alexandria" = quicklisp-to-nix-packages."alexandria";
-           "hu_dot_dwim_dot_asdf" = quicklisp-to-nix-packages."hu_dot_dwim_dot_asdf";
-           "hu_dot_dwim_dot_stefil" = quicklisp-to-nix-packages."hu_dot_dwim_dot_stefil";
-           "swank" = quicklisp-to-nix-packages."swank";
-       }));
-
-
-  "hu_dot_dwim_dot_stefil_plus_hu_dot_dwim_dot_def" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."hu_dot_dwim_dot_stefil_plus_hu_dot_dwim_dot_def" or (x: {}))
-       (import ./quicklisp-to-nix-output/hu_dot_dwim_dot_stefil_plus_hu_dot_dwim_dot_def.nix {
-         inherit fetchurl;
-           "alexandria" = quicklisp-to-nix-packages."alexandria";
-           "anaphora" = quicklisp-to-nix-packages."anaphora";
-           "hu_dot_dwim_dot_asdf" = quicklisp-to-nix-packages."hu_dot_dwim_dot_asdf";
-           "hu_dot_dwim_dot_def" = quicklisp-to-nix-packages."hu_dot_dwim_dot_def";
-           "hu_dot_dwim_dot_stefil" = quicklisp-to-nix-packages."hu_dot_dwim_dot_stefil";
-           "iterate" = quicklisp-to-nix-packages."iterate";
-           "metabang-bind" = quicklisp-to-nix-packages."metabang-bind";
-       }));
-
-
-  "hu_dot_dwim_dot_def_plus_swank" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."hu_dot_dwim_dot_def_plus_swank" or (x: {}))
-       (import ./quicklisp-to-nix-output/hu_dot_dwim_dot_def_plus_swank.nix {
-         inherit fetchurl;
-           "alexandria" = quicklisp-to-nix-packages."alexandria";
-           "anaphora" = quicklisp-to-nix-packages."anaphora";
-           "hu_dot_dwim_dot_asdf" = quicklisp-to-nix-packages."hu_dot_dwim_dot_asdf";
-           "hu_dot_dwim_dot_def" = quicklisp-to-nix-packages."hu_dot_dwim_dot_def";
-           "iterate" = quicklisp-to-nix-packages."iterate";
-           "metabang-bind" = quicklisp-to-nix-packages."metabang-bind";
-           "swank" = quicklisp-to-nix-packages."swank";
-       }));
-
-
-  "hu_dot_dwim_dot_def" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."hu_dot_dwim_dot_def" or (x: {}))
-       (import ./quicklisp-to-nix-output/hu_dot_dwim_dot_def.nix {
-         inherit fetchurl;
-           "alexandria" = quicklisp-to-nix-packages."alexandria";
-           "anaphora" = quicklisp-to-nix-packages."anaphora";
-           "hu_dot_dwim_dot_asdf" = quicklisp-to-nix-packages."hu_dot_dwim_dot_asdf";
-           "iterate" = quicklisp-to-nix-packages."iterate";
-           "metabang-bind" = quicklisp-to-nix-packages."metabang-bind";
-       }));
-
-
-  "hu_dot_dwim_dot_common-lisp" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."hu_dot_dwim_dot_common-lisp" or (x: {}))
-       (import ./quicklisp-to-nix-output/hu_dot_dwim_dot_common-lisp.nix {
-         inherit fetchurl;
-           "hu_dot_dwim_dot_asdf" = quicklisp-to-nix-packages."hu_dot_dwim_dot_asdf";
-       }));
-
-
-  "rove" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."rove" or (x: {}))
-       (import ./quicklisp-to-nix-output/rove.nix {
-         inherit fetchurl;
-           "alexandria" = quicklisp-to-nix-packages."alexandria";
-           "bordeaux-threads" = quicklisp-to-nix-packages."bordeaux-threads";
-           "dissect" = quicklisp-to-nix-packages."dissect";
-           "trivial-gray-streams" = quicklisp-to-nix-packages."trivial-gray-streams";
-       }));
-
-
-  "dbi-test" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."dbi-test" or (x: {}))
-       (import ./quicklisp-to-nix-output/dbi-test.nix {
-         inherit fetchurl;
-           "alexandria" = quicklisp-to-nix-packages."alexandria";
-           "bordeaux-threads" = quicklisp-to-nix-packages."bordeaux-threads";
-           "closer-mop" = quicklisp-to-nix-packages."closer-mop";
-           "dbi" = quicklisp-to-nix-packages."dbi";
-           "dissect" = quicklisp-to-nix-packages."dissect";
-           "rove" = quicklisp-to-nix-packages."rove";
-           "split-sequence" = quicklisp-to-nix-packages."split-sequence";
-           "trivial-gray-streams" = quicklisp-to-nix-packages."trivial-gray-streams";
-           "trivial-types" = quicklisp-to-nix-packages."trivial-types";
-       }));
-
-
-  "do-urlencode" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."do-urlencode" or (x: {}))
-       (import ./quicklisp-to-nix-output/do-urlencode.nix {
-         inherit fetchurl;
-           "alexandria" = quicklisp-to-nix-packages."alexandria";
-           "babel" = quicklisp-to-nix-packages."babel";
-           "trivial-features" = quicklisp-to-nix-packages."trivial-features";
-       }));
-
-
-  "clack-socket" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."clack-socket" or (x: {}))
-       (import ./quicklisp-to-nix-output/clack-socket.nix {
-         inherit fetchurl;
-       }));
-
-
-  "vas-string-metrics" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."vas-string-metrics" or (x: {}))
-       (import ./quicklisp-to-nix-output/vas-string-metrics.nix {
-         inherit fetchurl;
-       }));
-
-
-  "parse-float" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."parse-float" or (x: {}))
-       (import ./quicklisp-to-nix-output/parse-float.nix {
-         inherit fetchurl;
-           "alexandria" = quicklisp-to-nix-packages."alexandria";
-           "lisp-unit" = quicklisp-to-nix-packages."lisp-unit";
-       }));
-
-
-  "glsl-symbols" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."glsl-symbols" or (x: {}))
-       (import ./quicklisp-to-nix-output/glsl-symbols.nix {
-         inherit fetchurl;
-       }));
-
-
-  "glsl-spec" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."glsl-spec" or (x: {}))
-       (import ./quicklisp-to-nix-output/glsl-spec.nix {
-         inherit fetchurl;
-       }));
-
-
-  "glsl-docs" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."glsl-docs" or (x: {}))
-       (import ./quicklisp-to-nix-output/glsl-docs.nix {
-         inherit fetchurl;
-           "glsl-symbols" = quicklisp-to-nix-packages."glsl-symbols";
-       }));
-
-
-  "fn" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."fn" or (x: {}))
-       (import ./quicklisp-to-nix-output/fn.nix {
-         inherit fetchurl;
-           "named-readtables" = quicklisp-to-nix-packages."named-readtables";
-       }));
-
-
-  "simple-tasks" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."simple-tasks" or (x: {}))
-       (import ./quicklisp-to-nix-output/simple-tasks.nix {
-         inherit fetchurl;
-           "alexandria" = quicklisp-to-nix-packages."alexandria";
-           "array-utils" = quicklisp-to-nix-packages."array-utils";
-           "bordeaux-threads" = quicklisp-to-nix-packages."bordeaux-threads";
-           "dissect" = quicklisp-to-nix-packages."dissect";
-       }));
-
-
-  "dissect" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."dissect" or (x: {}))
-       (import ./quicklisp-to-nix-output/dissect.nix {
-         inherit fetchurl;
-       }));
-
-
-  "lisp-unit" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."lisp-unit" or (x: {}))
-       (import ./quicklisp-to-nix-output/lisp-unit.nix {
-         inherit fetchurl;
-       }));
-
-
-  "cl-fuzz" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."cl-fuzz" or (x: {}))
-       (import ./quicklisp-to-nix-output/cl-fuzz.nix {
-         inherit fetchurl;
-           "alexandria" = quicklisp-to-nix-packages."alexandria";
-       }));
-
-
-  "cl-change-case" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."cl-change-case" or (x: {}))
-       (import ./quicklisp-to-nix-output/cl-change-case.nix {
-         inherit fetchurl;
-           "cl-ppcre" = quicklisp-to-nix-packages."cl-ppcre";
-           "cl-ppcre-unicode" = quicklisp-to-nix-packages."cl-ppcre-unicode";
-           "cl-unicode" = quicklisp-to-nix-packages."cl-unicode";
-           "fiveam" = quicklisp-to-nix-packages."fiveam";
-           "flexi-streams" = quicklisp-to-nix-packages."flexi-streams";
-       }));
-
-
-  "trivial-macroexpand-all" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."trivial-macroexpand-all" or (x: {}))
-       (import ./quicklisp-to-nix-output/trivial-macroexpand-all.nix {
-         inherit fetchurl;
-       }));
-
-
-  "trivial-file-size" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."trivial-file-size" or (x: {}))
-       (import ./quicklisp-to-nix-output/trivial-file-size.nix {
-         inherit fetchurl;
-           "fiveam" = quicklisp-to-nix-packages."fiveam";
-           "uiop" = quicklisp-to-nix-packages."uiop";
-       }));
-
-
-  "simple-date_slash_postgres-glue" = quicklisp-to-nix-packages."simple-date";
-
-
-  "s-sql_slash_tests" = quicklisp-to-nix-packages."s-sql";
-
-
-  "s-sql" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."s-sql" or (x: {}))
-       (import ./quicklisp-to-nix-output/s-sql.nix {
-         inherit fetchurl;
-           "alexandria" = quicklisp-to-nix-packages."alexandria";
-           "bordeaux-threads" = quicklisp-to-nix-packages."bordeaux-threads";
-           "cl-base64" = quicklisp-to-nix-packages."cl-base64";
-           "cl-postgres" = quicklisp-to-nix-packages."cl-postgres";
-           "cl-postgres_slash_tests" = quicklisp-to-nix-packages."cl-postgres_slash_tests";
-           "cl-ppcre" = quicklisp-to-nix-packages."cl-ppcre";
-           "closer-mop" = quicklisp-to-nix-packages."closer-mop";
-           "fiveam" = quicklisp-to-nix-packages."fiveam";
-           "global-vars" = quicklisp-to-nix-packages."global-vars";
-           "ironclad" = quicklisp-to-nix-packages."ironclad";
-           "md5" = quicklisp-to-nix-packages."md5";
-           "postmodern" = quicklisp-to-nix-packages."postmodern";
-           "split-sequence" = quicklisp-to-nix-packages."split-sequence";
-           "uax-15" = quicklisp-to-nix-packages."uax-15";
-           "usocket" = quicklisp-to-nix-packages."usocket";
-       }));
-
-
-  "cl-postgres_slash_tests" = quicklisp-to-nix-packages."cl-postgres";
-
-
-  "cl-postgres_plus_local-time" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."cl-postgres_plus_local-time" or (x: {}))
-       (import ./quicklisp-to-nix-output/cl-postgres_plus_local-time.nix {
-         inherit fetchurl;
-           "alexandria" = quicklisp-to-nix-packages."alexandria";
-           "bordeaux-threads" = quicklisp-to-nix-packages."bordeaux-threads";
-           "cl-base64" = quicklisp-to-nix-packages."cl-base64";
-           "cl-postgres" = quicklisp-to-nix-packages."cl-postgres";
-           "cl-ppcre" = quicklisp-to-nix-packages."cl-ppcre";
-           "ironclad" = quicklisp-to-nix-packages."ironclad";
-           "local-time" = quicklisp-to-nix-packages."local-time";
-           "md5" = quicklisp-to-nix-packages."md5";
-           "split-sequence" = quicklisp-to-nix-packages."split-sequence";
-           "uax-15" = quicklisp-to-nix-packages."uax-15";
-           "usocket" = quicklisp-to-nix-packages."usocket";
-       }));
-
-
-  "wild-package-inferred-system" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."wild-package-inferred-system" or (x: {}))
-       (import ./quicklisp-to-nix-output/wild-package-inferred-system.nix {
-         inherit fetchurl;
-           "fiveam" = quicklisp-to-nix-packages."fiveam";
-       }));
-
-
-  "parseq" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."parseq" or (x: {}))
-       (import ./quicklisp-to-nix-output/parseq.nix {
-         inherit fetchurl;
-       }));
-
-
-  "colorize" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."colorize" or (x: {}))
-       (import ./quicklisp-to-nix-output/colorize.nix {
-         inherit fetchurl;
-           "alexandria" = quicklisp-to-nix-packages."alexandria";
-           "html-encode" = quicklisp-to-nix-packages."html-encode";
-           "split-sequence" = quicklisp-to-nix-packages."split-sequence";
-       }));
-
-
-  "_3bmd-ext-code-blocks" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."_3bmd-ext-code-blocks" or (x: {}))
-       (import ./quicklisp-to-nix-output/_3bmd-ext-code-blocks.nix {
-         inherit fetchurl;
-           "_3bmd" = quicklisp-to-nix-packages."_3bmd";
-           "alexandria" = quicklisp-to-nix-packages."alexandria";
-           "colorize" = quicklisp-to-nix-packages."colorize";
-           "esrap" = quicklisp-to-nix-packages."esrap";
-           "html-encode" = quicklisp-to-nix-packages."html-encode";
-           "split-sequence" = quicklisp-to-nix-packages."split-sequence";
-           "trivial-with-current-source-form" = quicklisp-to-nix-packages."trivial-with-current-source-form";
-       }));
-
-
-  "cl-num-utils" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."cl-num-utils" or (x: {}))
-       (import ./quicklisp-to-nix-output/cl-num-utils.nix {
-         inherit fetchurl;
-           "alexandria" = quicklisp-to-nix-packages."alexandria";
-           "anaphora" = quicklisp-to-nix-packages."anaphora";
-           "array-operations" = quicklisp-to-nix-packages."array-operations";
-           "cl-slice" = quicklisp-to-nix-packages."cl-slice";
-           "clunit" = quicklisp-to-nix-packages."clunit";
-           "let-plus" = quicklisp-to-nix-packages."let-plus";
-       }));
-
-
-  "quasiquote-2_dot_0" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."quasiquote-2_dot_0" or (x: {}))
-       (import ./quicklisp-to-nix-output/quasiquote-2_dot_0.nix {
-         inherit fetchurl;
-           "fiveam" = quicklisp-to-nix-packages."fiveam";
-           "iterate" = quicklisp-to-nix-packages."iterate";
-       }));
-
-
-  "lfarm-common" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."lfarm-common" or (x: {}))
-       (import ./quicklisp-to-nix-output/lfarm-common.nix {
-         inherit fetchurl;
-           "alexandria" = quicklisp-to-nix-packages."alexandria";
-           "bordeaux-threads" = quicklisp-to-nix-packages."bordeaux-threads";
-           "cl-store" = quicklisp-to-nix-packages."cl-store";
-           "flexi-streams" = quicklisp-to-nix-packages."flexi-streams";
-           "split-sequence" = quicklisp-to-nix-packages."split-sequence";
-           "trivial-gray-streams" = quicklisp-to-nix-packages."trivial-gray-streams";
-           "usocket" = quicklisp-to-nix-packages."usocket";
-       }));
-
-  "simple-inferiors" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."simple-inferiors" or (x: {}))
-       (import ./quicklisp-to-nix-output/simple-inferiors.nix {
-         inherit fetchurl;
-           "alexandria" = quicklisp-to-nix-packages."alexandria";
-           "bordeaux-threads" = quicklisp-to-nix-packages."bordeaux-threads";
-           "documentation-utils" = quicklisp-to-nix-packages."documentation-utils";
-           "trivial-indent" = quicklisp-to-nix-packages."trivial-indent";
-           "uiop" = quicklisp-to-nix-packages."uiop";
-       }));
-
-
-  "lambda-fiddle" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."lambda-fiddle" or (x: {}))
-       (import ./quicklisp-to-nix-output/lambda-fiddle.nix {
-         inherit fetchurl;
-       }));
-
-
-  "iolib_dot_grovel" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."iolib_dot_grovel" or (x: {}))
-       (import ./quicklisp-to-nix-output/iolib_dot_grovel.nix {
-         inherit fetchurl;
-           "alexandria" = quicklisp-to-nix-packages."alexandria";
-           "babel" = quicklisp-to-nix-packages."babel";
-           "cffi" = quicklisp-to-nix-packages."cffi";
-           "iolib_dot_asdf" = quicklisp-to-nix-packages."iolib_dot_asdf";
-           "iolib_dot_base" = quicklisp-to-nix-packages."iolib_dot_base";
-           "iolib_dot_common-lisp" = quicklisp-to-nix-packages."iolib_dot_common-lisp";
-           "iolib_dot_conf" = quicklisp-to-nix-packages."iolib_dot_conf";
-           "split-sequence" = quicklisp-to-nix-packages."split-sequence";
-           "trivial-features" = quicklisp-to-nix-packages."trivial-features";
-           "uiop" = quicklisp-to-nix-packages."uiop";
-       }));
-
-  "trivia_dot_quasiquote" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."trivia_dot_quasiquote" or (x: {}))
-       (import ./quicklisp-to-nix-output/trivia_dot_quasiquote.nix {
-         inherit fetchurl;
-           "alexandria" = quicklisp-to-nix-packages."alexandria";
-           "closer-mop" = quicklisp-to-nix-packages."closer-mop";
-           "fare-quasiquote" = quicklisp-to-nix-packages."fare-quasiquote";
-           "fare-quasiquote-readtable" = quicklisp-to-nix-packages."fare-quasiquote-readtable";
-           "fare-utils" = quicklisp-to-nix-packages."fare-utils";
-           "lisp-namespace" = quicklisp-to-nix-packages."lisp-namespace";
-           "named-readtables" = quicklisp-to-nix-packages."named-readtables";
-           "trivia_dot_level0" = quicklisp-to-nix-packages."trivia_dot_level0";
-           "trivia_dot_level1" = quicklisp-to-nix-packages."trivia_dot_level1";
-           "trivia_dot_level2" = quicklisp-to-nix-packages."trivia_dot_level2";
-           "trivia_dot_trivial" = quicklisp-to-nix-packages."trivia_dot_trivial";
-           "trivial-cltl2" = quicklisp-to-nix-packages."trivial-cltl2";
-       }));
-
-
-  "fare-quasiquote-readtable" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."fare-quasiquote-readtable" or (x: {}))
-       (import ./quicklisp-to-nix-output/fare-quasiquote-readtable.nix {
-         inherit fetchurl;
-           "fare-quasiquote" = quicklisp-to-nix-packages."fare-quasiquote";
-           "fare-utils" = quicklisp-to-nix-packages."fare-utils";
-           "named-readtables" = quicklisp-to-nix-packages."named-readtables";
-       }));
-
-
-  "fare-quasiquote-optima" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."fare-quasiquote-optima" or (x: {}))
-       (import ./quicklisp-to-nix-output/fare-quasiquote-optima.nix {
-         inherit fetchurl;
-           "alexandria" = quicklisp-to-nix-packages."alexandria";
-           "closer-mop" = quicklisp-to-nix-packages."closer-mop";
-           "fare-quasiquote" = quicklisp-to-nix-packages."fare-quasiquote";
-           "fare-quasiquote-readtable" = quicklisp-to-nix-packages."fare-quasiquote-readtable";
-           "fare-utils" = quicklisp-to-nix-packages."fare-utils";
-           "lisp-namespace" = quicklisp-to-nix-packages."lisp-namespace";
-           "named-readtables" = quicklisp-to-nix-packages."named-readtables";
-           "trivia_dot_level0" = quicklisp-to-nix-packages."trivia_dot_level0";
-           "trivia_dot_level1" = quicklisp-to-nix-packages."trivia_dot_level1";
-           "trivia_dot_level2" = quicklisp-to-nix-packages."trivia_dot_level2";
-           "trivia_dot_quasiquote" = quicklisp-to-nix-packages."trivia_dot_quasiquote";
-           "trivia_dot_trivial" = quicklisp-to-nix-packages."trivia_dot_trivial";
-           "trivial-cltl2" = quicklisp-to-nix-packages."trivial-cltl2";
-       }));
-
-
-  "fare-quasiquote-extras" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."fare-quasiquote-extras" or (x: {}))
-       (import ./quicklisp-to-nix-output/fare-quasiquote-extras.nix {
-         inherit fetchurl;
-           "alexandria" = quicklisp-to-nix-packages."alexandria";
-           "closer-mop" = quicklisp-to-nix-packages."closer-mop";
-           "fare-quasiquote" = quicklisp-to-nix-packages."fare-quasiquote";
-           "fare-quasiquote-optima" = quicklisp-to-nix-packages."fare-quasiquote-optima";
-           "fare-quasiquote-readtable" = quicklisp-to-nix-packages."fare-quasiquote-readtable";
-           "fare-utils" = quicklisp-to-nix-packages."fare-utils";
-           "lisp-namespace" = quicklisp-to-nix-packages."lisp-namespace";
-           "named-readtables" = quicklisp-to-nix-packages."named-readtables";
-           "trivia_dot_level0" = quicklisp-to-nix-packages."trivia_dot_level0";
-           "trivia_dot_level1" = quicklisp-to-nix-packages."trivia_dot_level1";
-           "trivia_dot_level2" = quicklisp-to-nix-packages."trivia_dot_level2";
-           "trivia_dot_quasiquote" = quicklisp-to-nix-packages."trivia_dot_quasiquote";
-           "trivia_dot_trivial" = quicklisp-to-nix-packages."trivia_dot_trivial";
-           "trivial-cltl2" = quicklisp-to-nix-packages."trivial-cltl2";
-       }));
-
-
-  "hu_dot_dwim_dot_stefil_plus_hu_dot_dwim_dot_def_plus_swank" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."hu_dot_dwim_dot_stefil_plus_hu_dot_dwim_dot_def_plus_swank" or (x: {}))
-       (import ./quicklisp-to-nix-output/hu_dot_dwim_dot_stefil_plus_hu_dot_dwim_dot_def_plus_swank.nix {
-         inherit fetchurl;
-           "alexandria" = quicklisp-to-nix-packages."alexandria";
-           "anaphora" = quicklisp-to-nix-packages."anaphora";
-           "hu_dot_dwim_dot_asdf" = quicklisp-to-nix-packages."hu_dot_dwim_dot_asdf";
-           "hu_dot_dwim_dot_def" = quicklisp-to-nix-packages."hu_dot_dwim_dot_def";
-           "hu_dot_dwim_dot_def_plus_swank" = quicklisp-to-nix-packages."hu_dot_dwim_dot_def_plus_swank";
-           "hu_dot_dwim_dot_stefil" = quicklisp-to-nix-packages."hu_dot_dwim_dot_stefil";
-           "hu_dot_dwim_dot_stefil_plus_hu_dot_dwim_dot_def" = quicklisp-to-nix-packages."hu_dot_dwim_dot_stefil_plus_hu_dot_dwim_dot_def";
-           "hu_dot_dwim_dot_stefil_plus_swank" = quicklisp-to-nix-packages."hu_dot_dwim_dot_stefil_plus_swank";
-           "iterate" = quicklisp-to-nix-packages."iterate";
-           "metabang-bind" = quicklisp-to-nix-packages."metabang-bind";
-           "swank" = quicklisp-to-nix-packages."swank";
-       }));
-
-
-  "hu_dot_dwim_dot_common" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."hu_dot_dwim_dot_common" or (x: {}))
-       (import ./quicklisp-to-nix-output/hu_dot_dwim_dot_common.nix {
-         inherit fetchurl;
-           "alexandria" = quicklisp-to-nix-packages."alexandria";
-           "anaphora" = quicklisp-to-nix-packages."anaphora";
-           "closer-mop" = quicklisp-to-nix-packages."closer-mop";
-           "hu_dot_dwim_dot_asdf" = quicklisp-to-nix-packages."hu_dot_dwim_dot_asdf";
-           "hu_dot_dwim_dot_common-lisp" = quicklisp-to-nix-packages."hu_dot_dwim_dot_common-lisp";
-           "iterate" = quicklisp-to-nix-packages."iterate";
-           "metabang-bind" = quicklisp-to-nix-packages."metabang-bind";
-       }));
-
-
-  "type-i" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."type-i" or (x: {}))
-       (import ./quicklisp-to-nix-output/type-i.nix {
-         inherit fetchurl;
-           "alexandria" = quicklisp-to-nix-packages."alexandria";
-           "closer-mop" = quicklisp-to-nix-packages."closer-mop";
-           "introspect-environment" = quicklisp-to-nix-packages."introspect-environment";
-           "lisp-namespace" = quicklisp-to-nix-packages."lisp-namespace";
-           "trivia_dot_level0" = quicklisp-to-nix-packages."trivia_dot_level0";
-           "trivia_dot_level1" = quicklisp-to-nix-packages."trivia_dot_level1";
-           "trivia_dot_level2" = quicklisp-to-nix-packages."trivia_dot_level2";
-           "trivia_dot_trivial" = quicklisp-to-nix-packages."trivia_dot_trivial";
-           "trivial-cltl2" = quicklisp-to-nix-packages."trivial-cltl2";
-       }));
-
-
-  "trivial-cltl2" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."trivial-cltl2" or (x: {}))
-       (import ./quicklisp-to-nix-output/trivial-cltl2.nix {
-         inherit fetchurl;
-       }));
-
-
-  "trivia_dot_trivial" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."trivia_dot_trivial" or (x: {}))
-       (import ./quicklisp-to-nix-output/trivia_dot_trivial.nix {
-         inherit fetchurl;
-           "alexandria" = quicklisp-to-nix-packages."alexandria";
-           "closer-mop" = quicklisp-to-nix-packages."closer-mop";
-           "lisp-namespace" = quicklisp-to-nix-packages."lisp-namespace";
-           "trivia_dot_level0" = quicklisp-to-nix-packages."trivia_dot_level0";
-           "trivia_dot_level1" = quicklisp-to-nix-packages."trivia_dot_level1";
-           "trivia_dot_level2" = quicklisp-to-nix-packages."trivia_dot_level2";
-           "trivial-cltl2" = quicklisp-to-nix-packages."trivial-cltl2";
-       }));
-
-
-  "trivia_dot_level2" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."trivia_dot_level2" or (x: {}))
-       (import ./quicklisp-to-nix-output/trivia_dot_level2.nix {
-         inherit fetchurl;
-           "alexandria" = quicklisp-to-nix-packages."alexandria";
-           "closer-mop" = quicklisp-to-nix-packages."closer-mop";
-           "lisp-namespace" = quicklisp-to-nix-packages."lisp-namespace";
-           "trivia_dot_level0" = quicklisp-to-nix-packages."trivia_dot_level0";
-           "trivia_dot_level1" = quicklisp-to-nix-packages."trivia_dot_level1";
-           "trivial-cltl2" = quicklisp-to-nix-packages."trivial-cltl2";
-       }));
-
-
-  "trivia_dot_level1" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."trivia_dot_level1" or (x: {}))
-       (import ./quicklisp-to-nix-output/trivia_dot_level1.nix {
-         inherit fetchurl;
-           "alexandria" = quicklisp-to-nix-packages."alexandria";
-           "trivia_dot_level0" = quicklisp-to-nix-packages."trivia_dot_level0";
-       }));
-
-
-  "trivia_dot_level0" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."trivia_dot_level0" or (x: {}))
-       (import ./quicklisp-to-nix-output/trivia_dot_level0.nix {
-         inherit fetchurl;
-           "alexandria" = quicklisp-to-nix-packages."alexandria";
-       }));
-
-
-  "trivia_dot_balland2006" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."trivia_dot_balland2006" or (x: {}))
-       (import ./quicklisp-to-nix-output/trivia_dot_balland2006.nix {
-         inherit fetchurl;
-           "alexandria" = quicklisp-to-nix-packages."alexandria";
-           "closer-mop" = quicklisp-to-nix-packages."closer-mop";
-           "introspect-environment" = quicklisp-to-nix-packages."introspect-environment";
-           "iterate" = quicklisp-to-nix-packages."iterate";
-           "lisp-namespace" = quicklisp-to-nix-packages."lisp-namespace";
-           "trivia_dot_level0" = quicklisp-to-nix-packages."trivia_dot_level0";
-           "trivia_dot_level1" = quicklisp-to-nix-packages."trivia_dot_level1";
-           "trivia_dot_level2" = quicklisp-to-nix-packages."trivia_dot_level2";
-           "trivia_dot_trivial" = quicklisp-to-nix-packages."trivia_dot_trivial";
-           "trivial-cltl2" = quicklisp-to-nix-packages."trivial-cltl2";
-           "type-i" = quicklisp-to-nix-packages."type-i";
-       }));
-
-
-  "static-dispatch" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."static-dispatch" or (x: {}))
-       (import ./quicklisp-to-nix-output/static-dispatch.nix {
-         inherit fetchurl;
-           "agutil" = quicklisp-to-nix-packages."agutil";
-           "alexandria" = quicklisp-to-nix-packages."alexandria";
-           "anaphora" = quicklisp-to-nix-packages."anaphora";
-           "arrows" = quicklisp-to-nix-packages."arrows";
-           "cl-environments" = quicklisp-to-nix-packages."cl-environments";
-           "cl-form-types" = quicklisp-to-nix-packages."cl-form-types";
-           "closer-mop" = quicklisp-to-nix-packages."closer-mop";
-           "collectors" = quicklisp-to-nix-packages."collectors";
-           "fiveam" = quicklisp-to-nix-packages."fiveam";
-           "introspect-environment" = quicklisp-to-nix-packages."introspect-environment";
-           "iterate" = quicklisp-to-nix-packages."iterate";
-           "optima" = quicklisp-to-nix-packages."optima";
-           "parse-declarations-1_dot_0" = quicklisp-to-nix-packages."parse-declarations-1_dot_0";
-           "symbol-munger" = quicklisp-to-nix-packages."symbol-munger";
-       }));
-
-
-  "parse-declarations-1_dot_0" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."parse-declarations-1_dot_0" or (x: {}))
-       (import ./quicklisp-to-nix-output/parse-declarations-1_dot_0.nix {
-         inherit fetchurl;
-       }));
-
-
-  "introspect-environment" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."introspect-environment" or (x: {}))
-       (import ./quicklisp-to-nix-output/introspect-environment.nix {
-         inherit fetchurl;
-       }));
-
-
-  "generic-cl_dot_set" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."generic-cl_dot_set" or (x: {}))
-       (import ./quicklisp-to-nix-output/generic-cl_dot_set.nix {
-         inherit fetchurl;
-           "agutil" = quicklisp-to-nix-packages."agutil";
-           "alexandria" = quicklisp-to-nix-packages."alexandria";
-           "anaphora" = quicklisp-to-nix-packages."anaphora";
-           "arrows" = quicklisp-to-nix-packages."arrows";
-           "cl-custom-hash-table" = quicklisp-to-nix-packages."cl-custom-hash-table";
-           "cl-environments" = quicklisp-to-nix-packages."cl-environments";
-           "cl-form-types" = quicklisp-to-nix-packages."cl-form-types";
-           "closer-mop" = quicklisp-to-nix-packages."closer-mop";
-           "collectors" = quicklisp-to-nix-packages."collectors";
-           "generic-cl_dot_arithmetic" = quicklisp-to-nix-packages."generic-cl_dot_arithmetic";
-           "generic-cl_dot_collector" = quicklisp-to-nix-packages."generic-cl_dot_collector";
-           "generic-cl_dot_comparison" = quicklisp-to-nix-packages."generic-cl_dot_comparison";
-           "generic-cl_dot_container" = quicklisp-to-nix-packages."generic-cl_dot_container";
-           "generic-cl_dot_internal" = quicklisp-to-nix-packages."generic-cl_dot_internal";
-           "generic-cl_dot_iterator" = quicklisp-to-nix-packages."generic-cl_dot_iterator";
-           "generic-cl_dot_map" = quicklisp-to-nix-packages."generic-cl_dot_map";
-           "generic-cl_dot_object" = quicklisp-to-nix-packages."generic-cl_dot_object";
-           "generic-cl_dot_sequence" = quicklisp-to-nix-packages."generic-cl_dot_sequence";
-           "introspect-environment" = quicklisp-to-nix-packages."introspect-environment";
-           "iterate" = quicklisp-to-nix-packages."iterate";
-           "lisp-namespace" = quicklisp-to-nix-packages."lisp-namespace";
-           "optima" = quicklisp-to-nix-packages."optima";
-           "parse-declarations-1_dot_0" = quicklisp-to-nix-packages."parse-declarations-1_dot_0";
-           "static-dispatch" = quicklisp-to-nix-packages."static-dispatch";
-           "symbol-munger" = quicklisp-to-nix-packages."symbol-munger";
-           "trivia" = quicklisp-to-nix-packages."trivia";
-           "trivia_dot_balland2006" = quicklisp-to-nix-packages."trivia_dot_balland2006";
-           "trivia_dot_level0" = quicklisp-to-nix-packages."trivia_dot_level0";
-           "trivia_dot_level1" = quicklisp-to-nix-packages."trivia_dot_level1";
-           "trivia_dot_level2" = quicklisp-to-nix-packages."trivia_dot_level2";
-           "trivia_dot_trivial" = quicklisp-to-nix-packages."trivia_dot_trivial";
-           "trivial-cltl2" = quicklisp-to-nix-packages."trivial-cltl2";
-           "type-i" = quicklisp-to-nix-packages."type-i";
-       }));
-
-
-  "generic-cl_dot_sequence" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."generic-cl_dot_sequence" or (x: {}))
-       (import ./quicklisp-to-nix-output/generic-cl_dot_sequence.nix {
-         inherit fetchurl;
-           "agutil" = quicklisp-to-nix-packages."agutil";
-           "alexandria" = quicklisp-to-nix-packages."alexandria";
-           "anaphora" = quicklisp-to-nix-packages."anaphora";
-           "arrows" = quicklisp-to-nix-packages."arrows";
-           "cl-custom-hash-table" = quicklisp-to-nix-packages."cl-custom-hash-table";
-           "cl-environments" = quicklisp-to-nix-packages."cl-environments";
-           "cl-form-types" = quicklisp-to-nix-packages."cl-form-types";
-           "closer-mop" = quicklisp-to-nix-packages."closer-mop";
-           "collectors" = quicklisp-to-nix-packages."collectors";
-           "generic-cl_dot_collector" = quicklisp-to-nix-packages."generic-cl_dot_collector";
-           "generic-cl_dot_comparison" = quicklisp-to-nix-packages."generic-cl_dot_comparison";
-           "generic-cl_dot_container" = quicklisp-to-nix-packages."generic-cl_dot_container";
-           "generic-cl_dot_internal" = quicklisp-to-nix-packages."generic-cl_dot_internal";
-           "generic-cl_dot_iterator" = quicklisp-to-nix-packages."generic-cl_dot_iterator";
-           "generic-cl_dot_map" = quicklisp-to-nix-packages."generic-cl_dot_map";
-           "generic-cl_dot_object" = quicklisp-to-nix-packages."generic-cl_dot_object";
-           "introspect-environment" = quicklisp-to-nix-packages."introspect-environment";
-           "iterate" = quicklisp-to-nix-packages."iterate";
-           "lisp-namespace" = quicklisp-to-nix-packages."lisp-namespace";
-           "optima" = quicklisp-to-nix-packages."optima";
-           "parse-declarations-1_dot_0" = quicklisp-to-nix-packages."parse-declarations-1_dot_0";
-           "static-dispatch" = quicklisp-to-nix-packages."static-dispatch";
-           "symbol-munger" = quicklisp-to-nix-packages."symbol-munger";
-           "trivia" = quicklisp-to-nix-packages."trivia";
-           "trivia_dot_balland2006" = quicklisp-to-nix-packages."trivia_dot_balland2006";
-           "trivia_dot_level0" = quicklisp-to-nix-packages."trivia_dot_level0";
-           "trivia_dot_level1" = quicklisp-to-nix-packages."trivia_dot_level1";
-           "trivia_dot_level2" = quicklisp-to-nix-packages."trivia_dot_level2";
-           "trivia_dot_trivial" = quicklisp-to-nix-packages."trivia_dot_trivial";
-           "trivial-cltl2" = quicklisp-to-nix-packages."trivial-cltl2";
-           "type-i" = quicklisp-to-nix-packages."type-i";
-       }));
-
-
-  "generic-cl_dot_object" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."generic-cl_dot_object" or (x: {}))
-       (import ./quicklisp-to-nix-output/generic-cl_dot_object.nix {
-         inherit fetchurl;
-           "agutil" = quicklisp-to-nix-packages."agutil";
-           "alexandria" = quicklisp-to-nix-packages."alexandria";
-           "anaphora" = quicklisp-to-nix-packages."anaphora";
-           "arrows" = quicklisp-to-nix-packages."arrows";
-           "cl-environments" = quicklisp-to-nix-packages."cl-environments";
-           "cl-form-types" = quicklisp-to-nix-packages."cl-form-types";
-           "closer-mop" = quicklisp-to-nix-packages."closer-mop";
-           "collectors" = quicklisp-to-nix-packages."collectors";
-           "generic-cl_dot_comparison" = quicklisp-to-nix-packages."generic-cl_dot_comparison";
-           "generic-cl_dot_internal" = quicklisp-to-nix-packages."generic-cl_dot_internal";
-           "introspect-environment" = quicklisp-to-nix-packages."introspect-environment";
-           "iterate" = quicklisp-to-nix-packages."iterate";
-           "lisp-namespace" = quicklisp-to-nix-packages."lisp-namespace";
-           "optima" = quicklisp-to-nix-packages."optima";
-           "parse-declarations-1_dot_0" = quicklisp-to-nix-packages."parse-declarations-1_dot_0";
-           "static-dispatch" = quicklisp-to-nix-packages."static-dispatch";
-           "symbol-munger" = quicklisp-to-nix-packages."symbol-munger";
-           "trivia" = quicklisp-to-nix-packages."trivia";
-           "trivia_dot_balland2006" = quicklisp-to-nix-packages."trivia_dot_balland2006";
-           "trivia_dot_level0" = quicklisp-to-nix-packages."trivia_dot_level0";
-           "trivia_dot_level1" = quicklisp-to-nix-packages."trivia_dot_level1";
-           "trivia_dot_level2" = quicklisp-to-nix-packages."trivia_dot_level2";
-           "trivia_dot_trivial" = quicklisp-to-nix-packages."trivia_dot_trivial";
-           "trivial-cltl2" = quicklisp-to-nix-packages."trivial-cltl2";
-           "type-i" = quicklisp-to-nix-packages."type-i";
-       }));
-
-
-  "generic-cl_dot_math" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."generic-cl_dot_math" or (x: {}))
-       (import ./quicklisp-to-nix-output/generic-cl_dot_math.nix {
-         inherit fetchurl;
-           "agutil" = quicklisp-to-nix-packages."agutil";
-           "alexandria" = quicklisp-to-nix-packages."alexandria";
-           "anaphora" = quicklisp-to-nix-packages."anaphora";
-           "arrows" = quicklisp-to-nix-packages."arrows";
-           "cl-environments" = quicklisp-to-nix-packages."cl-environments";
-           "cl-form-types" = quicklisp-to-nix-packages."cl-form-types";
-           "closer-mop" = quicklisp-to-nix-packages."closer-mop";
-           "collectors" = quicklisp-to-nix-packages."collectors";
-           "generic-cl_dot_arithmetic" = quicklisp-to-nix-packages."generic-cl_dot_arithmetic";
-           "generic-cl_dot_comparison" = quicklisp-to-nix-packages."generic-cl_dot_comparison";
-           "generic-cl_dot_internal" = quicklisp-to-nix-packages."generic-cl_dot_internal";
-           "introspect-environment" = quicklisp-to-nix-packages."introspect-environment";
-           "iterate" = quicklisp-to-nix-packages."iterate";
-           "lisp-namespace" = quicklisp-to-nix-packages."lisp-namespace";
-           "optima" = quicklisp-to-nix-packages."optima";
-           "parse-declarations-1_dot_0" = quicklisp-to-nix-packages."parse-declarations-1_dot_0";
-           "static-dispatch" = quicklisp-to-nix-packages."static-dispatch";
-           "symbol-munger" = quicklisp-to-nix-packages."symbol-munger";
-           "trivia" = quicklisp-to-nix-packages."trivia";
-           "trivia_dot_balland2006" = quicklisp-to-nix-packages."trivia_dot_balland2006";
-           "trivia_dot_level0" = quicklisp-to-nix-packages."trivia_dot_level0";
-           "trivia_dot_level1" = quicklisp-to-nix-packages."trivia_dot_level1";
-           "trivia_dot_level2" = quicklisp-to-nix-packages."trivia_dot_level2";
-           "trivia_dot_trivial" = quicklisp-to-nix-packages."trivia_dot_trivial";
-           "trivial-cltl2" = quicklisp-to-nix-packages."trivial-cltl2";
-           "type-i" = quicklisp-to-nix-packages."type-i";
-       }));
-
-
-  "generic-cl_dot_map" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."generic-cl_dot_map" or (x: {}))
-       (import ./quicklisp-to-nix-output/generic-cl_dot_map.nix {
-         inherit fetchurl;
-           "agutil" = quicklisp-to-nix-packages."agutil";
-           "alexandria" = quicklisp-to-nix-packages."alexandria";
-           "anaphora" = quicklisp-to-nix-packages."anaphora";
-           "arrows" = quicklisp-to-nix-packages."arrows";
-           "cl-custom-hash-table" = quicklisp-to-nix-packages."cl-custom-hash-table";
-           "cl-environments" = quicklisp-to-nix-packages."cl-environments";
-           "cl-form-types" = quicklisp-to-nix-packages."cl-form-types";
-           "closer-mop" = quicklisp-to-nix-packages."closer-mop";
-           "collectors" = quicklisp-to-nix-packages."collectors";
-           "generic-cl_dot_collector" = quicklisp-to-nix-packages."generic-cl_dot_collector";
-           "generic-cl_dot_comparison" = quicklisp-to-nix-packages."generic-cl_dot_comparison";
-           "generic-cl_dot_container" = quicklisp-to-nix-packages."generic-cl_dot_container";
-           "generic-cl_dot_internal" = quicklisp-to-nix-packages."generic-cl_dot_internal";
-           "generic-cl_dot_iterator" = quicklisp-to-nix-packages."generic-cl_dot_iterator";
-           "generic-cl_dot_object" = quicklisp-to-nix-packages."generic-cl_dot_object";
-           "introspect-environment" = quicklisp-to-nix-packages."introspect-environment";
-           "iterate" = quicklisp-to-nix-packages."iterate";
-           "lisp-namespace" = quicklisp-to-nix-packages."lisp-namespace";
-           "optima" = quicklisp-to-nix-packages."optima";
-           "parse-declarations-1_dot_0" = quicklisp-to-nix-packages."parse-declarations-1_dot_0";
-           "static-dispatch" = quicklisp-to-nix-packages."static-dispatch";
-           "symbol-munger" = quicklisp-to-nix-packages."symbol-munger";
-           "trivia" = quicklisp-to-nix-packages."trivia";
-           "trivia_dot_balland2006" = quicklisp-to-nix-packages."trivia_dot_balland2006";
-           "trivia_dot_level0" = quicklisp-to-nix-packages."trivia_dot_level0";
-           "trivia_dot_level1" = quicklisp-to-nix-packages."trivia_dot_level1";
-           "trivia_dot_level2" = quicklisp-to-nix-packages."trivia_dot_level2";
-           "trivia_dot_trivial" = quicklisp-to-nix-packages."trivia_dot_trivial";
-           "trivial-cltl2" = quicklisp-to-nix-packages."trivial-cltl2";
-           "type-i" = quicklisp-to-nix-packages."type-i";
-       }));
-
-
-  "generic-cl_dot_lazy-seq" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."generic-cl_dot_lazy-seq" or (x: {}))
-       (import ./quicklisp-to-nix-output/generic-cl_dot_lazy-seq.nix {
-         inherit fetchurl;
-           "agutil" = quicklisp-to-nix-packages."agutil";
-           "alexandria" = quicklisp-to-nix-packages."alexandria";
-           "anaphora" = quicklisp-to-nix-packages."anaphora";
-           "arrows" = quicklisp-to-nix-packages."arrows";
-           "cl-custom-hash-table" = quicklisp-to-nix-packages."cl-custom-hash-table";
-           "cl-environments" = quicklisp-to-nix-packages."cl-environments";
-           "cl-form-types" = quicklisp-to-nix-packages."cl-form-types";
-           "closer-mop" = quicklisp-to-nix-packages."closer-mop";
-           "collectors" = quicklisp-to-nix-packages."collectors";
-           "generic-cl_dot_collector" = quicklisp-to-nix-packages."generic-cl_dot_collector";
-           "generic-cl_dot_comparison" = quicklisp-to-nix-packages."generic-cl_dot_comparison";
-           "generic-cl_dot_container" = quicklisp-to-nix-packages."generic-cl_dot_container";
-           "generic-cl_dot_internal" = quicklisp-to-nix-packages."generic-cl_dot_internal";
-           "generic-cl_dot_iterator" = quicklisp-to-nix-packages."generic-cl_dot_iterator";
-           "generic-cl_dot_map" = quicklisp-to-nix-packages."generic-cl_dot_map";
-           "generic-cl_dot_object" = quicklisp-to-nix-packages."generic-cl_dot_object";
-           "generic-cl_dot_sequence" = quicklisp-to-nix-packages."generic-cl_dot_sequence";
-           "introspect-environment" = quicklisp-to-nix-packages."introspect-environment";
-           "iterate" = quicklisp-to-nix-packages."iterate";
-           "lisp-namespace" = quicklisp-to-nix-packages."lisp-namespace";
-           "optima" = quicklisp-to-nix-packages."optima";
-           "parse-declarations-1_dot_0" = quicklisp-to-nix-packages."parse-declarations-1_dot_0";
-           "static-dispatch" = quicklisp-to-nix-packages."static-dispatch";
-           "symbol-munger" = quicklisp-to-nix-packages."symbol-munger";
-           "trivia" = quicklisp-to-nix-packages."trivia";
-           "trivia_dot_balland2006" = quicklisp-to-nix-packages."trivia_dot_balland2006";
-           "trivia_dot_level0" = quicklisp-to-nix-packages."trivia_dot_level0";
-           "trivia_dot_level1" = quicklisp-to-nix-packages."trivia_dot_level1";
-           "trivia_dot_level2" = quicklisp-to-nix-packages."trivia_dot_level2";
-           "trivia_dot_trivial" = quicklisp-to-nix-packages."trivia_dot_trivial";
-           "trivial-cltl2" = quicklisp-to-nix-packages."trivial-cltl2";
-           "type-i" = quicklisp-to-nix-packages."type-i";
-       }));
-
-
-  "generic-cl_dot_iterator" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."generic-cl_dot_iterator" or (x: {}))
-       (import ./quicklisp-to-nix-output/generic-cl_dot_iterator.nix {
-         inherit fetchurl;
-           "agutil" = quicklisp-to-nix-packages."agutil";
-           "alexandria" = quicklisp-to-nix-packages."alexandria";
-           "anaphora" = quicklisp-to-nix-packages."anaphora";
-           "arrows" = quicklisp-to-nix-packages."arrows";
-           "cl-environments" = quicklisp-to-nix-packages."cl-environments";
-           "cl-form-types" = quicklisp-to-nix-packages."cl-form-types";
-           "closer-mop" = quicklisp-to-nix-packages."closer-mop";
-           "collectors" = quicklisp-to-nix-packages."collectors";
-           "generic-cl_dot_comparison" = quicklisp-to-nix-packages."generic-cl_dot_comparison";
-           "generic-cl_dot_container" = quicklisp-to-nix-packages."generic-cl_dot_container";
-           "generic-cl_dot_internal" = quicklisp-to-nix-packages."generic-cl_dot_internal";
-           "generic-cl_dot_object" = quicklisp-to-nix-packages."generic-cl_dot_object";
-           "introspect-environment" = quicklisp-to-nix-packages."introspect-environment";
-           "iterate" = quicklisp-to-nix-packages."iterate";
-           "lisp-namespace" = quicklisp-to-nix-packages."lisp-namespace";
-           "optima" = quicklisp-to-nix-packages."optima";
-           "parse-declarations-1_dot_0" = quicklisp-to-nix-packages."parse-declarations-1_dot_0";
-           "static-dispatch" = quicklisp-to-nix-packages."static-dispatch";
-           "symbol-munger" = quicklisp-to-nix-packages."symbol-munger";
-           "trivia" = quicklisp-to-nix-packages."trivia";
-           "trivia_dot_balland2006" = quicklisp-to-nix-packages."trivia_dot_balland2006";
-           "trivia_dot_level0" = quicklisp-to-nix-packages."trivia_dot_level0";
-           "trivia_dot_level1" = quicklisp-to-nix-packages."trivia_dot_level1";
-           "trivia_dot_level2" = quicklisp-to-nix-packages."trivia_dot_level2";
-           "trivia_dot_trivial" = quicklisp-to-nix-packages."trivia_dot_trivial";
-           "trivial-cltl2" = quicklisp-to-nix-packages."trivial-cltl2";
-           "type-i" = quicklisp-to-nix-packages."type-i";
-       }));
-
-
-  "generic-cl_dot_internal" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."generic-cl_dot_internal" or (x: {}))
-       (import ./quicklisp-to-nix-output/generic-cl_dot_internal.nix {
-         inherit fetchurl;
-           "agutil" = quicklisp-to-nix-packages."agutil";
-           "alexandria" = quicklisp-to-nix-packages."alexandria";
-           "anaphora" = quicklisp-to-nix-packages."anaphora";
-           "arrows" = quicklisp-to-nix-packages."arrows";
-           "cl-environments" = quicklisp-to-nix-packages."cl-environments";
-           "cl-form-types" = quicklisp-to-nix-packages."cl-form-types";
-           "closer-mop" = quicklisp-to-nix-packages."closer-mop";
-           "collectors" = quicklisp-to-nix-packages."collectors";
-           "introspect-environment" = quicklisp-to-nix-packages."introspect-environment";
-           "iterate" = quicklisp-to-nix-packages."iterate";
-           "lisp-namespace" = quicklisp-to-nix-packages."lisp-namespace";
-           "optima" = quicklisp-to-nix-packages."optima";
-           "parse-declarations-1_dot_0" = quicklisp-to-nix-packages."parse-declarations-1_dot_0";
-           "static-dispatch" = quicklisp-to-nix-packages."static-dispatch";
-           "symbol-munger" = quicklisp-to-nix-packages."symbol-munger";
-           "trivia" = quicklisp-to-nix-packages."trivia";
-           "trivia_dot_balland2006" = quicklisp-to-nix-packages."trivia_dot_balland2006";
-           "trivia_dot_level0" = quicklisp-to-nix-packages."trivia_dot_level0";
-           "trivia_dot_level1" = quicklisp-to-nix-packages."trivia_dot_level1";
-           "trivia_dot_level2" = quicklisp-to-nix-packages."trivia_dot_level2";
-           "trivia_dot_trivial" = quicklisp-to-nix-packages."trivia_dot_trivial";
-           "trivial-cltl2" = quicklisp-to-nix-packages."trivial-cltl2";
-           "type-i" = quicklisp-to-nix-packages."type-i";
-       }));
-
-
-  "generic-cl_dot_container" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."generic-cl_dot_container" or (x: {}))
-       (import ./quicklisp-to-nix-output/generic-cl_dot_container.nix {
-         inherit fetchurl;
-           "agutil" = quicklisp-to-nix-packages."agutil";
-           "alexandria" = quicklisp-to-nix-packages."alexandria";
-           "anaphora" = quicklisp-to-nix-packages."anaphora";
-           "arrows" = quicklisp-to-nix-packages."arrows";
-           "cl-environments" = quicklisp-to-nix-packages."cl-environments";
-           "cl-form-types" = quicklisp-to-nix-packages."cl-form-types";
-           "closer-mop" = quicklisp-to-nix-packages."closer-mop";
-           "collectors" = quicklisp-to-nix-packages."collectors";
-           "generic-cl_dot_comparison" = quicklisp-to-nix-packages."generic-cl_dot_comparison";
-           "generic-cl_dot_internal" = quicklisp-to-nix-packages."generic-cl_dot_internal";
-           "generic-cl_dot_object" = quicklisp-to-nix-packages."generic-cl_dot_object";
-           "introspect-environment" = quicklisp-to-nix-packages."introspect-environment";
-           "iterate" = quicklisp-to-nix-packages."iterate";
-           "lisp-namespace" = quicklisp-to-nix-packages."lisp-namespace";
-           "optima" = quicklisp-to-nix-packages."optima";
-           "parse-declarations-1_dot_0" = quicklisp-to-nix-packages."parse-declarations-1_dot_0";
-           "static-dispatch" = quicklisp-to-nix-packages."static-dispatch";
-           "symbol-munger" = quicklisp-to-nix-packages."symbol-munger";
-           "trivia" = quicklisp-to-nix-packages."trivia";
-           "trivia_dot_balland2006" = quicklisp-to-nix-packages."trivia_dot_balland2006";
-           "trivia_dot_level0" = quicklisp-to-nix-packages."trivia_dot_level0";
-           "trivia_dot_level1" = quicklisp-to-nix-packages."trivia_dot_level1";
-           "trivia_dot_level2" = quicklisp-to-nix-packages."trivia_dot_level2";
-           "trivia_dot_trivial" = quicklisp-to-nix-packages."trivia_dot_trivial";
-           "trivial-cltl2" = quicklisp-to-nix-packages."trivial-cltl2";
-           "type-i" = quicklisp-to-nix-packages."type-i";
-       }));
-
-
-  "generic-cl_dot_comparison" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."generic-cl_dot_comparison" or (x: {}))
-       (import ./quicklisp-to-nix-output/generic-cl_dot_comparison.nix {
-         inherit fetchurl;
-           "agutil" = quicklisp-to-nix-packages."agutil";
-           "alexandria" = quicklisp-to-nix-packages."alexandria";
-           "anaphora" = quicklisp-to-nix-packages."anaphora";
-           "arrows" = quicklisp-to-nix-packages."arrows";
-           "cl-environments" = quicklisp-to-nix-packages."cl-environments";
-           "cl-form-types" = quicklisp-to-nix-packages."cl-form-types";
-           "closer-mop" = quicklisp-to-nix-packages."closer-mop";
-           "collectors" = quicklisp-to-nix-packages."collectors";
-           "generic-cl_dot_internal" = quicklisp-to-nix-packages."generic-cl_dot_internal";
-           "introspect-environment" = quicklisp-to-nix-packages."introspect-environment";
-           "iterate" = quicklisp-to-nix-packages."iterate";
-           "lisp-namespace" = quicklisp-to-nix-packages."lisp-namespace";
-           "optima" = quicklisp-to-nix-packages."optima";
-           "parse-declarations-1_dot_0" = quicklisp-to-nix-packages."parse-declarations-1_dot_0";
-           "static-dispatch" = quicklisp-to-nix-packages."static-dispatch";
-           "symbol-munger" = quicklisp-to-nix-packages."symbol-munger";
-           "trivia" = quicklisp-to-nix-packages."trivia";
-           "trivia_dot_balland2006" = quicklisp-to-nix-packages."trivia_dot_balland2006";
-           "trivia_dot_level0" = quicklisp-to-nix-packages."trivia_dot_level0";
-           "trivia_dot_level1" = quicklisp-to-nix-packages."trivia_dot_level1";
-           "trivia_dot_level2" = quicklisp-to-nix-packages."trivia_dot_level2";
-           "trivia_dot_trivial" = quicklisp-to-nix-packages."trivia_dot_trivial";
-           "trivial-cltl2" = quicklisp-to-nix-packages."trivial-cltl2";
-           "type-i" = quicklisp-to-nix-packages."type-i";
-       }));
-
-
-  "generic-cl_dot_collector" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."generic-cl_dot_collector" or (x: {}))
-       (import ./quicklisp-to-nix-output/generic-cl_dot_collector.nix {
-         inherit fetchurl;
-           "agutil" = quicklisp-to-nix-packages."agutil";
-           "alexandria" = quicklisp-to-nix-packages."alexandria";
-           "anaphora" = quicklisp-to-nix-packages."anaphora";
-           "arrows" = quicklisp-to-nix-packages."arrows";
-           "cl-environments" = quicklisp-to-nix-packages."cl-environments";
-           "cl-form-types" = quicklisp-to-nix-packages."cl-form-types";
-           "closer-mop" = quicklisp-to-nix-packages."closer-mop";
-           "collectors" = quicklisp-to-nix-packages."collectors";
-           "generic-cl_dot_comparison" = quicklisp-to-nix-packages."generic-cl_dot_comparison";
-           "generic-cl_dot_container" = quicklisp-to-nix-packages."generic-cl_dot_container";
-           "generic-cl_dot_internal" = quicklisp-to-nix-packages."generic-cl_dot_internal";
-           "generic-cl_dot_iterator" = quicklisp-to-nix-packages."generic-cl_dot_iterator";
-           "generic-cl_dot_object" = quicklisp-to-nix-packages."generic-cl_dot_object";
-           "introspect-environment" = quicklisp-to-nix-packages."introspect-environment";
-           "iterate" = quicklisp-to-nix-packages."iterate";
-           "lisp-namespace" = quicklisp-to-nix-packages."lisp-namespace";
-           "optima" = quicklisp-to-nix-packages."optima";
-           "parse-declarations-1_dot_0" = quicklisp-to-nix-packages."parse-declarations-1_dot_0";
-           "static-dispatch" = quicklisp-to-nix-packages."static-dispatch";
-           "symbol-munger" = quicklisp-to-nix-packages."symbol-munger";
-           "trivia" = quicklisp-to-nix-packages."trivia";
-           "trivia_dot_balland2006" = quicklisp-to-nix-packages."trivia_dot_balland2006";
-           "trivia_dot_level0" = quicklisp-to-nix-packages."trivia_dot_level0";
-           "trivia_dot_level1" = quicklisp-to-nix-packages."trivia_dot_level1";
-           "trivia_dot_level2" = quicklisp-to-nix-packages."trivia_dot_level2";
-           "trivia_dot_trivial" = quicklisp-to-nix-packages."trivia_dot_trivial";
-           "trivial-cltl2" = quicklisp-to-nix-packages."trivial-cltl2";
-           "type-i" = quicklisp-to-nix-packages."type-i";
-       }));
-
-
-  "generic-cl_dot_arithmetic" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."generic-cl_dot_arithmetic" or (x: {}))
-       (import ./quicklisp-to-nix-output/generic-cl_dot_arithmetic.nix {
-         inherit fetchurl;
-           "agutil" = quicklisp-to-nix-packages."agutil";
-           "alexandria" = quicklisp-to-nix-packages."alexandria";
-           "anaphora" = quicklisp-to-nix-packages."anaphora";
-           "arrows" = quicklisp-to-nix-packages."arrows";
-           "cl-environments" = quicklisp-to-nix-packages."cl-environments";
-           "cl-form-types" = quicklisp-to-nix-packages."cl-form-types";
-           "closer-mop" = quicklisp-to-nix-packages."closer-mop";
-           "collectors" = quicklisp-to-nix-packages."collectors";
-           "generic-cl_dot_comparison" = quicklisp-to-nix-packages."generic-cl_dot_comparison";
-           "generic-cl_dot_internal" = quicklisp-to-nix-packages."generic-cl_dot_internal";
-           "introspect-environment" = quicklisp-to-nix-packages."introspect-environment";
-           "iterate" = quicklisp-to-nix-packages."iterate";
-           "lisp-namespace" = quicklisp-to-nix-packages."lisp-namespace";
-           "optima" = quicklisp-to-nix-packages."optima";
-           "parse-declarations-1_dot_0" = quicklisp-to-nix-packages."parse-declarations-1_dot_0";
-           "static-dispatch" = quicklisp-to-nix-packages."static-dispatch";
-           "symbol-munger" = quicklisp-to-nix-packages."symbol-munger";
-           "trivia" = quicklisp-to-nix-packages."trivia";
-           "trivia_dot_balland2006" = quicklisp-to-nix-packages."trivia_dot_balland2006";
-           "trivia_dot_level0" = quicklisp-to-nix-packages."trivia_dot_level0";
-           "trivia_dot_level1" = quicklisp-to-nix-packages."trivia_dot_level1";
-           "trivia_dot_level2" = quicklisp-to-nix-packages."trivia_dot_level2";
-           "trivia_dot_trivial" = quicklisp-to-nix-packages."trivia_dot_trivial";
-           "trivial-cltl2" = quicklisp-to-nix-packages."trivial-cltl2";
-           "type-i" = quicklisp-to-nix-packages."type-i";
-       }));
-
-
-  "cl-form-types" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."cl-form-types" or (x: {}))
-       (import ./quicklisp-to-nix-output/cl-form-types.nix {
-         inherit fetchurl;
-           "agutil" = quicklisp-to-nix-packages."agutil";
-           "alexandria" = quicklisp-to-nix-packages."alexandria";
-           "anaphora" = quicklisp-to-nix-packages."anaphora";
-           "arrows" = quicklisp-to-nix-packages."arrows";
-           "cl-environments" = quicklisp-to-nix-packages."cl-environments";
-           "closer-mop" = quicklisp-to-nix-packages."closer-mop";
-           "collectors" = quicklisp-to-nix-packages."collectors";
-           "fiveam" = quicklisp-to-nix-packages."fiveam";
-           "introspect-environment" = quicklisp-to-nix-packages."introspect-environment";
-           "iterate" = quicklisp-to-nix-packages."iterate";
-           "optima" = quicklisp-to-nix-packages."optima";
-           "parse-declarations-1_dot_0" = quicklisp-to-nix-packages."parse-declarations-1_dot_0";
-           "symbol-munger" = quicklisp-to-nix-packages."symbol-munger";
-       }));
-
-
-  "cl-environments" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."cl-environments" or (x: {}))
-       (import ./quicklisp-to-nix-output/cl-environments.nix {
-         inherit fetchurl;
-           "alexandria" = quicklisp-to-nix-packages."alexandria";
-           "anaphora" = quicklisp-to-nix-packages."anaphora";
-           "closer-mop" = quicklisp-to-nix-packages."closer-mop";
-           "collectors" = quicklisp-to-nix-packages."collectors";
-           "fiveam" = quicklisp-to-nix-packages."fiveam";
-           "iterate" = quicklisp-to-nix-packages."iterate";
-           "optima" = quicklisp-to-nix-packages."optima";
-           "parse-declarations-1_dot_0" = quicklisp-to-nix-packages."parse-declarations-1_dot_0";
-           "symbol-munger" = quicklisp-to-nix-packages."symbol-munger";
-       }));
-
-
-  "arrows" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."arrows" or (x: {}))
-       (import ./quicklisp-to-nix-output/arrows.nix {
-         inherit fetchurl;
-           "hu_dot_dwim_dot_stefil" = quicklisp-to-nix-packages."hu_dot_dwim_dot_stefil";
-       }));
-
-
-  "agutil" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."agutil" or (x: {}))
-       (import ./quicklisp-to-nix-output/agutil.nix {
-         inherit fetchurl;
-           "alexandria" = quicklisp-to-nix-packages."alexandria";
-           "closer-mop" = quicklisp-to-nix-packages."closer-mop";
-           "optima" = quicklisp-to-nix-packages."optima";
-       }));
-
-
-  "net_dot_didierverna_dot_asdf-flv" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."net_dot_didierverna_dot_asdf-flv" or (x: {}))
-       (import ./quicklisp-to-nix-output/net_dot_didierverna_dot_asdf-flv.nix {
-         inherit fetchurl;
-       }));
-
-
-  "iolib_dot_conf" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."iolib_dot_conf" or (x: {}))
-       (import ./quicklisp-to-nix-output/iolib_dot_conf.nix {
-         inherit fetchurl;
-           "alexandria" = quicklisp-to-nix-packages."alexandria";
-           "iolib_dot_asdf" = quicklisp-to-nix-packages."iolib_dot_asdf";
-       }));
-
-
-  "iolib_dot_common-lisp" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."iolib_dot_common-lisp" or (x: {}))
-       (import ./quicklisp-to-nix-output/iolib_dot_common-lisp.nix {
-         inherit fetchurl;
-           "alexandria" = quicklisp-to-nix-packages."alexandria";
-           "iolib_dot_asdf" = quicklisp-to-nix-packages."iolib_dot_asdf";
-           "iolib_dot_conf" = quicklisp-to-nix-packages."iolib_dot_conf";
-       }));
-
-
-  "iolib_dot_base" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."iolib_dot_base" or (x: {}))
-       (import ./quicklisp-to-nix-output/iolib_dot_base.nix {
-         inherit fetchurl;
-           "alexandria" = quicklisp-to-nix-packages."alexandria";
-           "iolib_dot_asdf" = quicklisp-to-nix-packages."iolib_dot_asdf";
-           "iolib_dot_common-lisp" = quicklisp-to-nix-packages."iolib_dot_common-lisp";
-           "iolib_dot_conf" = quicklisp-to-nix-packages."iolib_dot_conf";
-           "split-sequence" = quicklisp-to-nix-packages."split-sequence";
-       }));
-
-
-  "iolib_dot_asdf" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."iolib_dot_asdf" or (x: {}))
-       (import ./quicklisp-to-nix-output/iolib_dot_asdf.nix {
-         inherit fetchurl;
-           "alexandria" = quicklisp-to-nix-packages."alexandria";
-       }));
-
-
-  "cl-xmlspam" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."cl-xmlspam" or (x: {}))
-       (import ./quicklisp-to-nix-output/cl-xmlspam.nix {
-         inherit fetchurl;
-           "alexandria" = quicklisp-to-nix-packages."alexandria";
-           "babel" = quicklisp-to-nix-packages."babel";
-           "cl-ppcre" = quicklisp-to-nix-packages."cl-ppcre";
-           "closure-common" = quicklisp-to-nix-packages."closure-common";
-           "cxml" = quicklisp-to-nix-packages."cxml";
-           "puri" = quicklisp-to-nix-packages."puri";
-           "trivial-features" = quicklisp-to-nix-packages."trivial-features";
-           "trivial-gray-streams" = quicklisp-to-nix-packages."trivial-gray-streams";
-       }));
-
-
-  "uax-15" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."uax-15" or (x: {}))
-       (import ./quicklisp-to-nix-output/uax-15.nix {
-         inherit fetchurl;
-           "cl-ppcre" = quicklisp-to-nix-packages."cl-ppcre";
-           "parachute" = quicklisp-to-nix-packages."parachute";
-           "split-sequence" = quicklisp-to-nix-packages."split-sequence";
-       }));
-
-
-  "cl-postgres" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."cl-postgres" or (x: {}))
-       (import ./quicklisp-to-nix-output/cl-postgres.nix {
-         inherit fetchurl;
-           "alexandria" = quicklisp-to-nix-packages."alexandria";
-           "bordeaux-threads" = quicklisp-to-nix-packages."bordeaux-threads";
-           "cl-base64" = quicklisp-to-nix-packages."cl-base64";
-           "cl-ppcre" = quicklisp-to-nix-packages."cl-ppcre";
-           "fiveam" = quicklisp-to-nix-packages."fiveam";
-           "ironclad" = quicklisp-to-nix-packages."ironclad";
-           "md5" = quicklisp-to-nix-packages."md5";
-           "simple-date" = quicklisp-to-nix-packages."simple-date";
-           "simple-date_slash_postgres-glue" = quicklisp-to-nix-packages."simple-date_slash_postgres-glue";
-           "split-sequence" = quicklisp-to-nix-packages."split-sequence";
-           "uax-15" = quicklisp-to-nix-packages."uax-15";
-           "uiop" = quicklisp-to-nix-packages."uiop";
-           "usocket" = quicklisp-to-nix-packages."usocket";
-       }));
-
-
-  "xpath_slash_test" = quicklisp-to-nix-packages."xpath";
-
-
-  "cxml_slash_test" = quicklisp-to-nix-packages."cxml";
-
-
-  "xpath" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."xpath" or (x: {}))
-       (import ./quicklisp-to-nix-output/xpath.nix {
-         inherit fetchurl;
-           "alexandria" = quicklisp-to-nix-packages."alexandria";
-           "babel" = quicklisp-to-nix-packages."babel";
-           "cl-ppcre" = quicklisp-to-nix-packages."cl-ppcre";
-           "closure-common" = quicklisp-to-nix-packages."closure-common";
-           "cxml" = quicklisp-to-nix-packages."cxml";
-           "parse-number" = quicklisp-to-nix-packages."parse-number";
-           "puri" = quicklisp-to-nix-packages."puri";
-           "trivial-features" = quicklisp-to-nix-packages."trivial-features";
-           "trivial-gray-streams" = quicklisp-to-nix-packages."trivial-gray-streams";
-           "yacc" = quicklisp-to-nix-packages."yacc";
-       }));
-
-
-  "yacc" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."yacc" or (x: {}))
-       (import ./quicklisp-to-nix-output/yacc.nix {
-         inherit fetchurl;
-       }));
-
-
-  "buildnode-xhtml" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."buildnode-xhtml" or (x: {}))
-       (import ./quicklisp-to-nix-output/buildnode-xhtml.nix {
-         inherit fetchurl;
-           "alexandria" = quicklisp-to-nix-packages."alexandria";
-           "babel" = quicklisp-to-nix-packages."babel";
-           "buildnode" = quicklisp-to-nix-packages."buildnode";
-           "cl-interpol" = quicklisp-to-nix-packages."cl-interpol";
-           "cl-ppcre" = quicklisp-to-nix-packages."cl-ppcre";
-           "cl-unicode" = quicklisp-to-nix-packages."cl-unicode";
-           "closer-mop" = quicklisp-to-nix-packages."closer-mop";
-           "closure-common" = quicklisp-to-nix-packages."closure-common";
-           "closure-html" = quicklisp-to-nix-packages."closure-html";
-           "collectors" = quicklisp-to-nix-packages."collectors";
-           "cxml" = quicklisp-to-nix-packages."cxml";
-           "flexi-streams" = quicklisp-to-nix-packages."flexi-streams";
-           "iterate" = quicklisp-to-nix-packages."iterate";
-           "named-readtables" = quicklisp-to-nix-packages."named-readtables";
-           "puri" = quicklisp-to-nix-packages."puri";
-           "split-sequence" = quicklisp-to-nix-packages."split-sequence";
-           "swank" = quicklisp-to-nix-packages."swank";
-           "symbol-munger" = quicklisp-to-nix-packages."symbol-munger";
-           "trivial-features" = quicklisp-to-nix-packages."trivial-features";
-           "trivial-gray-streams" = quicklisp-to-nix-packages."trivial-gray-streams";
-       }));
-
-
-  "buildnode" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."buildnode" or (x: {}))
-       (import ./quicklisp-to-nix-output/buildnode.nix {
-         inherit fetchurl;
-           "alexandria" = quicklisp-to-nix-packages."alexandria";
-           "babel" = quicklisp-to-nix-packages."babel";
-           "buildnode-xhtml" = quicklisp-to-nix-packages."buildnode-xhtml";
-           "cl-interpol" = quicklisp-to-nix-packages."cl-interpol";
-           "cl-ppcre" = quicklisp-to-nix-packages."cl-ppcre";
-           "cl-unicode" = quicklisp-to-nix-packages."cl-unicode";
-           "closer-mop" = quicklisp-to-nix-packages."closer-mop";
-           "closure-common" = quicklisp-to-nix-packages."closure-common";
-           "closure-html" = quicklisp-to-nix-packages."closure-html";
-           "collectors" = quicklisp-to-nix-packages."collectors";
-           "cxml" = quicklisp-to-nix-packages."cxml";
-           "flexi-streams" = quicklisp-to-nix-packages."flexi-streams";
-           "iterate" = quicklisp-to-nix-packages."iterate";
-           "lisp-unit2" = quicklisp-to-nix-packages."lisp-unit2";
-           "named-readtables" = quicklisp-to-nix-packages."named-readtables";
-           "puri" = quicklisp-to-nix-packages."puri";
-           "split-sequence" = quicklisp-to-nix-packages."split-sequence";
-           "swank" = quicklisp-to-nix-packages."swank";
-           "symbol-munger" = quicklisp-to-nix-packages."symbol-munger";
-           "trivial-features" = quicklisp-to-nix-packages."trivial-features";
-           "trivial-gray-streams" = quicklisp-to-nix-packages."trivial-gray-streams";
-       }));
-
-
-  "fiasco" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."fiasco" or (x: {}))
-       (import ./quicklisp-to-nix-output/fiasco.nix {
-         inherit fetchurl;
-           "alexandria" = quicklisp-to-nix-packages."alexandria";
-           "trivial-gray-streams" = quicklisp-to-nix-packages."trivial-gray-streams";
-       }));
-
-
-  "clump-binary-tree" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."clump-binary-tree" or (x: {}))
-       (import ./quicklisp-to-nix-output/clump-binary-tree.nix {
-         inherit fetchurl;
-           "acclimation" = quicklisp-to-nix-packages."acclimation";
-       }));
-
-
-  "clump-2-3-tree" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."clump-2-3-tree" or (x: {}))
-       (import ./quicklisp-to-nix-output/clump-2-3-tree.nix {
-         inherit fetchurl;
-           "acclimation" = quicklisp-to-nix-packages."acclimation";
-       }));
-
-
-  "clsql-uffi" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."clsql-uffi" or (x: {}))
-       (import ./quicklisp-to-nix-output/clsql-uffi.nix {
-         inherit fetchurl;
-           "clsql" = quicklisp-to-nix-packages."clsql";
-           "uffi" = quicklisp-to-nix-packages."uffi";
-       }));
-
-
-  "lack-util" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."lack-util" or (x: {}))
-       (import ./quicklisp-to-nix-output/lack-util.nix {
-         inherit fetchurl;
-           "alexandria" = quicklisp-to-nix-packages."alexandria";
-           "bordeaux-threads" = quicklisp-to-nix-packages."bordeaux-threads";
-           "ironclad" = quicklisp-to-nix-packages."ironclad";
-       }));
-
-
-  "lack-middleware-backtrace" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."lack-middleware-backtrace" or (x: {}))
-       (import ./quicklisp-to-nix-output/lack-middleware-backtrace.nix {
-         inherit fetchurl;
-           "uiop" = quicklisp-to-nix-packages."uiop";
-       }));
-
-
-  "lack-component" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."lack-component" or (x: {}))
-       (import ./quicklisp-to-nix-output/lack-component.nix {
-         inherit fetchurl;
-       }));
-
-
-  "cl-aa" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."cl-aa" or (x: {}))
-       (import ./quicklisp-to-nix-output/cl-aa.nix {
-         inherit fetchurl;
-       }));
-
-
-  "global-vars" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."global-vars" or (x: {}))
-       (import ./quicklisp-to-nix-output/global-vars.nix {
-         inherit fetchurl;
-       }));
-
-
-  "cl-anonfun" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."cl-anonfun" or (x: {}))
-       (import ./quicklisp-to-nix-output/cl-anonfun.nix {
-         inherit fetchurl;
-       }));
-
-
-  "asdf-package-system" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."asdf-package-system" or (x: {}))
-       (import ./quicklisp-to-nix-output/asdf-package-system.nix {
-         inherit fetchurl;
-       }));
-
-
-  "clunit" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."clunit" or (x: {}))
-       (import ./quicklisp-to-nix-output/clunit.nix {
-         inherit fetchurl;
-       }));
-
-
-  "zpng" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."zpng" or (x: {}))
-       (import ./quicklisp-to-nix-output/zpng.nix {
-         inherit fetchurl;
-           "salza2" = quicklisp-to-nix-packages."salza2";
-           "trivial-gray-streams" = quicklisp-to-nix-packages."trivial-gray-streams";
-       }));
-
-
-  "asdf" = quicklisp-to-nix-packages."uiop";
-
-
-  "usocket-server" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."usocket-server" or (x: {}))
-       (import ./quicklisp-to-nix-output/usocket-server.nix {
-         inherit fetchurl;
-           "alexandria" = quicklisp-to-nix-packages."alexandria";
-           "bordeaux-threads" = quicklisp-to-nix-packages."bordeaux-threads";
-           "split-sequence" = quicklisp-to-nix-packages."split-sequence";
-           "usocket" = quicklisp-to-nix-packages."usocket";
-       }));
-
-
-  "s-xml" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."s-xml" or (x: {}))
-       (import ./quicklisp-to-nix-output/s-xml.nix {
-         inherit fetchurl;
-       }));
-
-
-  "s-sysdeps" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."s-sysdeps" or (x: {}))
-       (import ./quicklisp-to-nix-output/s-sysdeps.nix {
-         inherit fetchurl;
-           "alexandria" = quicklisp-to-nix-packages."alexandria";
-           "bordeaux-threads" = quicklisp-to-nix-packages."bordeaux-threads";
-           "split-sequence" = quicklisp-to-nix-packages."split-sequence";
-           "usocket" = quicklisp-to-nix-packages."usocket";
-           "usocket-server" = quicklisp-to-nix-packages."usocket-server";
-       }));
-
-
-  "cl-ppcre-test" = quicklisp-to-nix-packages."cl-ppcre";
-
-
-  "zpb-ttf" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."zpb-ttf" or (x: {}))
-       (import ./quicklisp-to-nix-output/zpb-ttf.nix {
-         inherit fetchurl;
-       }));
-
-
-  "cl-paths" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."cl-paths" or (x: {}))
-       (import ./quicklisp-to-nix-output/cl-paths.nix {
-         inherit fetchurl;
-       }));
-
-
-  "hu_dot_dwim_dot_stefil" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."hu_dot_dwim_dot_stefil" or (x: {}))
-       (import ./quicklisp-to-nix-output/hu_dot_dwim_dot_stefil.nix {
-         inherit fetchurl;
-           "alexandria" = quicklisp-to-nix-packages."alexandria";
-       }));
-
-
-  "cl-l10n-cldr" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."cl-l10n-cldr" or (x: {}))
-       (import ./quicklisp-to-nix-output/cl-l10n-cldr.nix {
-         inherit fetchurl;
-       }));
-
-
-  "string-case" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."string-case" or (x: {}))
-       (import ./quicklisp-to-nix-output/string-case.nix {
-         inherit fetchurl;
-       }));
-
-
-  "cl-difflib" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."cl-difflib" or (x: {}))
-       (import ./quicklisp-to-nix-output/cl-difflib.nix {
-         inherit fetchurl;
-       }));
-
-
-  "pcall-queue" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."pcall-queue" or (x: {}))
-       (import ./quicklisp-to-nix-output/pcall-queue.nix {
-         inherit fetchurl;
-           "alexandria" = quicklisp-to-nix-packages."alexandria";
-           "bordeaux-threads" = quicklisp-to-nix-packages."bordeaux-threads";
-       }));
-
-
-  "unit-test" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."unit-test" or (x: {}))
-       (import ./quicklisp-to-nix-output/unit-test.nix {
-         inherit fetchurl;
-       }));
-
-
-  "dbi" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."dbi" or (x: {}))
-       (import ./quicklisp-to-nix-output/dbi.nix {
-         inherit fetchurl;
-           "alexandria" = quicklisp-to-nix-packages."alexandria";
-           "bordeaux-threads" = quicklisp-to-nix-packages."bordeaux-threads";
-           "cl-mysql" = quicklisp-to-nix-packages."cl-mysql";
-           "cl-postgres" = quicklisp-to-nix-packages."cl-postgres";
-           "closer-mop" = quicklisp-to-nix-packages."closer-mop";
-           "dbd-mysql" = quicklisp-to-nix-packages."dbd-mysql";
-           "dbd-postgres" = quicklisp-to-nix-packages."dbd-postgres";
-           "dbd-sqlite3" = quicklisp-to-nix-packages."dbd-sqlite3";
-           "dbi-test" = quicklisp-to-nix-packages."dbi-test";
-           "rove" = quicklisp-to-nix-packages."rove";
-           "split-sequence" = quicklisp-to-nix-packages."split-sequence";
-           "sqlite" = quicklisp-to-nix-packages."sqlite";
-           "trivial-garbage" = quicklisp-to-nix-packages."trivial-garbage";
-           "trivial-types" = quicklisp-to-nix-packages."trivial-types";
-       }));
-
-
-  "cl-cffi-gtk-pango" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."cl-cffi-gtk-pango" or (x: {}))
-       (import ./quicklisp-to-nix-output/cl-cffi-gtk-pango.nix {
-         inherit fetchurl;
-           "alexandria" = quicklisp-to-nix-packages."alexandria";
-           "babel" = quicklisp-to-nix-packages."babel";
-           "bordeaux-threads" = quicklisp-to-nix-packages."bordeaux-threads";
-           "cffi" = quicklisp-to-nix-packages."cffi";
-           "cl-cffi-gtk-cairo" = quicklisp-to-nix-packages."cl-cffi-gtk-cairo";
-           "cl-cffi-gtk-glib" = quicklisp-to-nix-packages."cl-cffi-gtk-glib";
-           "cl-cffi-gtk-gobject" = quicklisp-to-nix-packages."cl-cffi-gtk-gobject";
-           "closer-mop" = quicklisp-to-nix-packages."closer-mop";
-           "iterate" = quicklisp-to-nix-packages."iterate";
-           "trivial-features" = quicklisp-to-nix-packages."trivial-features";
-           "trivial-garbage" = quicklisp-to-nix-packages."trivial-garbage";
-       }));
-
-
-  "cl-cffi-gtk-gobject" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."cl-cffi-gtk-gobject" or (x: {}))
-       (import ./quicklisp-to-nix-output/cl-cffi-gtk-gobject.nix {
-         inherit fetchurl;
-           "alexandria" = quicklisp-to-nix-packages."alexandria";
-           "babel" = quicklisp-to-nix-packages."babel";
-           "bordeaux-threads" = quicklisp-to-nix-packages."bordeaux-threads";
-           "cffi" = quicklisp-to-nix-packages."cffi";
-           "cl-cffi-gtk-glib" = quicklisp-to-nix-packages."cl-cffi-gtk-glib";
-           "closer-mop" = quicklisp-to-nix-packages."closer-mop";
-           "iterate" = quicklisp-to-nix-packages."iterate";
-           "trivial-features" = quicklisp-to-nix-packages."trivial-features";
-           "trivial-garbage" = quicklisp-to-nix-packages."trivial-garbage";
-       }));
-
-
-  "cl-cffi-gtk-glib" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."cl-cffi-gtk-glib" or (x: {}))
-       (import ./quicklisp-to-nix-output/cl-cffi-gtk-glib.nix {
-         inherit fetchurl;
-           "alexandria" = quicklisp-to-nix-packages."alexandria";
-           "babel" = quicklisp-to-nix-packages."babel";
-           "bordeaux-threads" = quicklisp-to-nix-packages."bordeaux-threads";
-           "cffi" = quicklisp-to-nix-packages."cffi";
-           "iterate" = quicklisp-to-nix-packages."iterate";
-           "trivial-features" = quicklisp-to-nix-packages."trivial-features";
-       }));
-
-
-  "cl-cffi-gtk-gio" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."cl-cffi-gtk-gio" or (x: {}))
-       (import ./quicklisp-to-nix-output/cl-cffi-gtk-gio.nix {
-         inherit fetchurl;
-           "alexandria" = quicklisp-to-nix-packages."alexandria";
-           "babel" = quicklisp-to-nix-packages."babel";
-           "bordeaux-threads" = quicklisp-to-nix-packages."bordeaux-threads";
-           "cffi" = quicklisp-to-nix-packages."cffi";
-           "cl-cffi-gtk-glib" = quicklisp-to-nix-packages."cl-cffi-gtk-glib";
-           "cl-cffi-gtk-gobject" = quicklisp-to-nix-packages."cl-cffi-gtk-gobject";
-           "closer-mop" = quicklisp-to-nix-packages."closer-mop";
-           "iterate" = quicklisp-to-nix-packages."iterate";
-           "trivial-features" = quicklisp-to-nix-packages."trivial-features";
-           "trivial-garbage" = quicklisp-to-nix-packages."trivial-garbage";
-       }));
-
-
-  "cl-cffi-gtk-gdk-pixbuf" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."cl-cffi-gtk-gdk-pixbuf" or (x: {}))
-       (import ./quicklisp-to-nix-output/cl-cffi-gtk-gdk-pixbuf.nix {
-         inherit fetchurl;
-           "alexandria" = quicklisp-to-nix-packages."alexandria";
-           "babel" = quicklisp-to-nix-packages."babel";
-           "bordeaux-threads" = quicklisp-to-nix-packages."bordeaux-threads";
-           "cffi" = quicklisp-to-nix-packages."cffi";
-           "cl-cffi-gtk-glib" = quicklisp-to-nix-packages."cl-cffi-gtk-glib";
-           "cl-cffi-gtk-gobject" = quicklisp-to-nix-packages."cl-cffi-gtk-gobject";
-           "closer-mop" = quicklisp-to-nix-packages."closer-mop";
-           "iterate" = quicklisp-to-nix-packages."iterate";
-           "trivial-features" = quicklisp-to-nix-packages."trivial-features";
-           "trivial-garbage" = quicklisp-to-nix-packages."trivial-garbage";
-       }));
-
-
-  "cl-cffi-gtk-gdk" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."cl-cffi-gtk-gdk" or (x: {}))
-       (import ./quicklisp-to-nix-output/cl-cffi-gtk-gdk.nix {
-         inherit fetchurl;
-           "alexandria" = quicklisp-to-nix-packages."alexandria";
-           "babel" = quicklisp-to-nix-packages."babel";
-           "bordeaux-threads" = quicklisp-to-nix-packages."bordeaux-threads";
-           "cffi" = quicklisp-to-nix-packages."cffi";
-           "cl-cffi-gtk-cairo" = quicklisp-to-nix-packages."cl-cffi-gtk-cairo";
-           "cl-cffi-gtk-gdk-pixbuf" = quicklisp-to-nix-packages."cl-cffi-gtk-gdk-pixbuf";
-           "cl-cffi-gtk-gio" = quicklisp-to-nix-packages."cl-cffi-gtk-gio";
-           "cl-cffi-gtk-glib" = quicklisp-to-nix-packages."cl-cffi-gtk-glib";
-           "cl-cffi-gtk-gobject" = quicklisp-to-nix-packages."cl-cffi-gtk-gobject";
-           "cl-cffi-gtk-pango" = quicklisp-to-nix-packages."cl-cffi-gtk-pango";
-           "closer-mop" = quicklisp-to-nix-packages."closer-mop";
-           "iterate" = quicklisp-to-nix-packages."iterate";
-           "trivial-features" = quicklisp-to-nix-packages."trivial-features";
-           "trivial-garbage" = quicklisp-to-nix-packages."trivial-garbage";
-       }));
-
-
-  "cl-cffi-gtk-cairo" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."cl-cffi-gtk-cairo" or (x: {}))
-       (import ./quicklisp-to-nix-output/cl-cffi-gtk-cairo.nix {
-         inherit fetchurl;
-           "alexandria" = quicklisp-to-nix-packages."alexandria";
-           "babel" = quicklisp-to-nix-packages."babel";
-           "bordeaux-threads" = quicklisp-to-nix-packages."bordeaux-threads";
-           "cffi" = quicklisp-to-nix-packages."cffi";
-           "cl-cffi-gtk-glib" = quicklisp-to-nix-packages."cl-cffi-gtk-glib";
-           "iterate" = quicklisp-to-nix-packages."iterate";
-           "trivial-features" = quicklisp-to-nix-packages."trivial-features";
-       }));
-
-
-  "ptester" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."ptester" or (x: {}))
-       (import ./quicklisp-to-nix-output/ptester.nix {
-         inherit fetchurl;
-       }));
-
-
-  "kmrcl" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."kmrcl" or (x: {}))
-       (import ./quicklisp-to-nix-output/kmrcl.nix {
-         inherit fetchurl;
-           "rt" = quicklisp-to-nix-packages."rt";
-       }));
-
-
-  "cl-async-util" = quicklisp-to-nix-packages."cl-async";
-
-
-  "cl-colors2" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."cl-colors2" or (x: {}))
-       (import ./quicklisp-to-nix-output/cl-colors2.nix {
-         inherit fetchurl;
-           "alexandria" = quicklisp-to-nix-packages."alexandria";
-           "cl-ppcre" = quicklisp-to-nix-packages."cl-ppcre";
-           "clunit2" = quicklisp-to-nix-packages."clunit2";
-       }));
-
-
-  "stefil" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."stefil" or (x: {}))
-       (import ./quicklisp-to-nix-output/stefil.nix {
-         inherit fetchurl;
-           "alexandria" = quicklisp-to-nix-packages."alexandria";
-           "iterate" = quicklisp-to-nix-packages."iterate";
-           "metabang-bind" = quicklisp-to-nix-packages."metabang-bind";
-           "swank" = quicklisp-to-nix-packages."swank";
-       }));
-
-
-  "cffi-toolchain" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."cffi-toolchain" or (x: {}))
-       (import ./quicklisp-to-nix-output/cffi-toolchain.nix {
-         inherit fetchurl;
-           "alexandria" = quicklisp-to-nix-packages."alexandria";
-           "asdf" = quicklisp-to-nix-packages."asdf";
-           "babel" = quicklisp-to-nix-packages."babel";
-           "cffi" = quicklisp-to-nix-packages."cffi";
-           "trivial-features" = quicklisp-to-nix-packages."trivial-features";
-       }));
-
-
-  "jpl-util" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."jpl-util" or (x: {}))
-       (import ./quicklisp-to-nix-output/jpl-util.nix {
-         inherit fetchurl;
-       }));
-
-
-  "jpl-queues" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."jpl-queues" or (x: {}))
-       (import ./quicklisp-to-nix-output/jpl-queues.nix {
-         inherit fetchurl;
-           "alexandria" = quicklisp-to-nix-packages."alexandria";
-           "bordeaux-threads" = quicklisp-to-nix-packages."bordeaux-threads";
-           "jpl-util" = quicklisp-to-nix-packages."jpl-util";
-       }));
-
-
-  "eager-future2" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."eager-future2" or (x: {}))
-       (import ./quicklisp-to-nix-output/eager-future2.nix {
-         inherit fetchurl;
-           "alexandria" = quicklisp-to-nix-packages."alexandria";
-           "bordeaux-threads" = quicklisp-to-nix-packages."bordeaux-threads";
-           "trivial-garbage" = quicklisp-to-nix-packages."trivial-garbage";
-       }));
-
-
-  "vom" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."vom" or (x: {}))
-       (import ./quicklisp-to-nix-output/vom.nix {
-         inherit fetchurl;
-       }));
-
-
-  "clunit2" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."clunit2" or (x: {}))
-       (import ./quicklisp-to-nix-output/clunit2.nix {
-         inherit fetchurl;
-       }));
-
-
-  "rt" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."rt" or (x: {}))
-       (import ./quicklisp-to-nix-output/rt.nix {
-         inherit fetchurl;
-       }));
-
-
-  "lisp-unit2" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."lisp-unit2" or (x: {}))
-       (import ./quicklisp-to-nix-output/lisp-unit2.nix {
-         inherit fetchurl;
-           "alexandria" = quicklisp-to-nix-packages."alexandria";
-           "cl-interpol" = quicklisp-to-nix-packages."cl-interpol";
-           "cl-ppcre" = quicklisp-to-nix-packages."cl-ppcre";
-           "cl-unicode" = quicklisp-to-nix-packages."cl-unicode";
-           "flexi-streams" = quicklisp-to-nix-packages."flexi-streams";
-           "iterate" = quicklisp-to-nix-packages."iterate";
-           "named-readtables" = quicklisp-to-nix-packages."named-readtables";
-           "symbol-munger" = quicklisp-to-nix-packages."symbol-munger";
-       }));
-
-
-  "trivial-with-current-source-form" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."trivial-with-current-source-form" or (x: {}))
-       (import ./quicklisp-to-nix-output/trivial-with-current-source-form.nix {
-         inherit fetchurl;
-           "alexandria" = quicklisp-to-nix-packages."alexandria";
-       }));
-
-
-  "yason" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."yason" or (x: {}))
-       (import ./quicklisp-to-nix-output/yason.nix {
-         inherit fetchurl;
-           "alexandria" = quicklisp-to-nix-packages."alexandria";
-           "trivial-gray-streams" = quicklisp-to-nix-packages."trivial-gray-streams";
-       }));
-
-
-  "xsubseq" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."xsubseq" or (x: {}))
-       (import ./quicklisp-to-nix-output/xsubseq.nix {
-         inherit fetchurl;
-       }));
-
-
-  "xmls" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."xmls" or (x: {}))
-       (import ./quicklisp-to-nix-output/xmls.nix {
-         inherit fetchurl;
-           "fiveam" = quicklisp-to-nix-packages."fiveam";
-       }));
-
-
-  "xml_dot_location" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."xml_dot_location" or (x: {}))
-       (import ./quicklisp-to-nix-output/xml_dot_location.nix {
-         inherit fetchurl;
-           "alexandria" = quicklisp-to-nix-packages."alexandria";
-           "anaphora" = quicklisp-to-nix-packages."anaphora";
-           "babel" = quicklisp-to-nix-packages."babel";
-           "cl-ppcre" = quicklisp-to-nix-packages."cl-ppcre";
-           "closer-mop" = quicklisp-to-nix-packages."closer-mop";
-           "closure-common" = quicklisp-to-nix-packages."closure-common";
-           "cxml" = quicklisp-to-nix-packages."cxml";
-           "cxml-stp" = quicklisp-to-nix-packages."cxml-stp";
-           "iterate" = quicklisp-to-nix-packages."iterate";
-           "let-plus" = quicklisp-to-nix-packages."let-plus";
-           "lift" = quicklisp-to-nix-packages."lift";
-           "more-conditions" = quicklisp-to-nix-packages."more-conditions";
-           "parse-number" = quicklisp-to-nix-packages."parse-number";
-           "puri" = quicklisp-to-nix-packages."puri";
-           "split-sequence" = quicklisp-to-nix-packages."split-sequence";
-           "trivial-features" = quicklisp-to-nix-packages."trivial-features";
-           "trivial-gray-streams" = quicklisp-to-nix-packages."trivial-gray-streams";
-           "xpath" = quicklisp-to-nix-packages."xpath";
-           "yacc" = quicklisp-to-nix-packages."yacc";
-       }));
-
-
-  "xkeyboard" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."xkeyboard" or (x: {}))
-       (import ./quicklisp-to-nix-output/xkeyboard.nix {
-         inherit fetchurl;
-           "clx" = quicklisp-to-nix-packages."clx";
-       }));
-
-
-  "xembed" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."xembed" or (x: {}))
-       (import ./quicklisp-to-nix-output/xembed.nix {
-         inherit fetchurl;
-           "clx" = quicklisp-to-nix-packages."clx";
-       }));
-
-
-  "wookie" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."wookie" or (x: {}))
-       (import ./quicklisp-to-nix-output/wookie.nix {
-         inherit fetchurl;
-           "alexandria" = quicklisp-to-nix-packages."alexandria";
-           "babel" = quicklisp-to-nix-packages."babel";
-           "blackbird" = quicklisp-to-nix-packages."blackbird";
-           "bordeaux-threads" = quicklisp-to-nix-packages."bordeaux-threads";
-           "cffi" = quicklisp-to-nix-packages."cffi";
-           "cffi-grovel" = quicklisp-to-nix-packages."cffi-grovel";
-           "cffi-toolchain" = quicklisp-to-nix-packages."cffi-toolchain";
-           "chunga" = quicklisp-to-nix-packages."chunga";
-           "cl-async" = quicklisp-to-nix-packages."cl-async";
-           "cl-async-base" = quicklisp-to-nix-packages."cl-async-base";
-           "cl-async-ssl" = quicklisp-to-nix-packages."cl-async-ssl";
-           "cl-async-util" = quicklisp-to-nix-packages."cl-async-util";
-           "cl-fad" = quicklisp-to-nix-packages."cl-fad";
-           "cl-libuv" = quicklisp-to-nix-packages."cl-libuv";
-           "cl-ppcre" = quicklisp-to-nix-packages."cl-ppcre";
-           "cl-utilities" = quicklisp-to-nix-packages."cl-utilities";
-           "do-urlencode" = quicklisp-to-nix-packages."do-urlencode";
-           "fast-http" = quicklisp-to-nix-packages."fast-http";
-           "fast-io" = quicklisp-to-nix-packages."fast-io";
-           "flexi-streams" = quicklisp-to-nix-packages."flexi-streams";
-           "proc-parse" = quicklisp-to-nix-packages."proc-parse";
-           "quri" = quicklisp-to-nix-packages."quri";
-           "smart-buffer" = quicklisp-to-nix-packages."smart-buffer";
-           "split-sequence" = quicklisp-to-nix-packages."split-sequence";
-           "static-vectors" = quicklisp-to-nix-packages."static-vectors";
-           "trivial-features" = quicklisp-to-nix-packages."trivial-features";
-           "trivial-gray-streams" = quicklisp-to-nix-packages."trivial-gray-streams";
-           "vom" = quicklisp-to-nix-packages."vom";
-           "xsubseq" = quicklisp-to-nix-packages."xsubseq";
-       }));
-
-
-  "woo" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."woo" or (x: {}))
-       (import ./quicklisp-to-nix-output/woo.nix {
-         inherit fetchurl;
-           "alexandria" = quicklisp-to-nix-packages."alexandria";
-           "babel" = quicklisp-to-nix-packages."babel";
-           "bordeaux-threads" = quicklisp-to-nix-packages."bordeaux-threads";
-           "cffi" = quicklisp-to-nix-packages."cffi";
-           "cffi-grovel" = quicklisp-to-nix-packages."cffi-grovel";
-           "cffi-toolchain" = quicklisp-to-nix-packages."cffi-toolchain";
-           "cl-utilities" = quicklisp-to-nix-packages."cl-utilities";
-           "clack-socket" = quicklisp-to-nix-packages."clack-socket";
-           "fast-http" = quicklisp-to-nix-packages."fast-http";
-           "fast-io" = quicklisp-to-nix-packages."fast-io";
-           "flexi-streams" = quicklisp-to-nix-packages."flexi-streams";
-           "lev" = quicklisp-to-nix-packages."lev";
-           "proc-parse" = quicklisp-to-nix-packages."proc-parse";
-           "quri" = quicklisp-to-nix-packages."quri";
-           "smart-buffer" = quicklisp-to-nix-packages."smart-buffer";
-           "split-sequence" = quicklisp-to-nix-packages."split-sequence";
-           "static-vectors" = quicklisp-to-nix-packages."static-vectors";
-           "swap-bytes" = quicklisp-to-nix-packages."swap-bytes";
-           "trivial-features" = quicklisp-to-nix-packages."trivial-features";
-           "trivial-gray-streams" = quicklisp-to-nix-packages."trivial-gray-streams";
-           "trivial-utf-8" = quicklisp-to-nix-packages."trivial-utf-8";
-           "vom" = quicklisp-to-nix-packages."vom";
-           "xsubseq" = quicklisp-to-nix-packages."xsubseq";
-       }));
-
-
-  "vecto" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."vecto" or (x: {}))
-       (import ./quicklisp-to-nix-output/vecto.nix {
-         inherit fetchurl;
-           "cl-aa" = quicklisp-to-nix-packages."cl-aa";
-           "cl-paths" = quicklisp-to-nix-packages."cl-paths";
-           "cl-vectors" = quicklisp-to-nix-packages."cl-vectors";
-           "salza2" = quicklisp-to-nix-packages."salza2";
-           "trivial-gray-streams" = quicklisp-to-nix-packages."trivial-gray-streams";
-           "zpb-ttf" = quicklisp-to-nix-packages."zpb-ttf";
-           "zpng" = quicklisp-to-nix-packages."zpng";
-       }));
-
-
-  "varjo" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."varjo" or (x: {}))
-       (import ./quicklisp-to-nix-output/varjo.nix {
-         inherit fetchurl;
-           "alexandria" = quicklisp-to-nix-packages."alexandria";
-           "cl-ppcre" = quicklisp-to-nix-packages."cl-ppcre";
-           "documentation-utils" = quicklisp-to-nix-packages."documentation-utils";
-           "fn" = quicklisp-to-nix-packages."fn";
-           "glsl-docs" = quicklisp-to-nix-packages."glsl-docs";
-           "glsl-spec" = quicklisp-to-nix-packages."glsl-spec";
-           "glsl-symbols" = quicklisp-to-nix-packages."glsl-symbols";
-           "named-readtables" = quicklisp-to-nix-packages."named-readtables";
-           "parse-float" = quicklisp-to-nix-packages."parse-float";
-           "trivial-indent" = quicklisp-to-nix-packages."trivial-indent";
-           "uiop" = quicklisp-to-nix-packages."uiop";
-           "vas-string-metrics" = quicklisp-to-nix-packages."vas-string-metrics";
-       }));
-
-
-  "uuid" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."uuid" or (x: {}))
-       (import ./quicklisp-to-nix-output/uuid.nix {
-         inherit fetchurl;
-           "alexandria" = quicklisp-to-nix-packages."alexandria";
-           "bordeaux-threads" = quicklisp-to-nix-packages."bordeaux-threads";
-           "ironclad" = quicklisp-to-nix-packages."ironclad";
-           "trivial-utf-8" = quicklisp-to-nix-packages."trivial-utf-8";
-       }));
-
-
-  "utilities_dot_print-tree" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."utilities_dot_print-tree" or (x: {}))
-       (import ./quicklisp-to-nix-output/utilities_dot_print-tree.nix {
-         inherit fetchurl;
-           "alexandria" = quicklisp-to-nix-packages."alexandria";
-           "fiveam" = quicklisp-to-nix-packages."fiveam";
-           "uiop" = quicklisp-to-nix-packages."uiop";
-       }));
-
-
-  "utilities_dot_print-items" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."utilities_dot_print-items" or (x: {}))
-       (import ./quicklisp-to-nix-output/utilities_dot_print-items.nix {
-         inherit fetchurl;
-           "alexandria" = quicklisp-to-nix-packages."alexandria";
-           "fiveam" = quicklisp-to-nix-packages."fiveam";
-       }));
-
-
-  "usocket" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."usocket" or (x: {}))
-       (import ./quicklisp-to-nix-output/usocket.nix {
-         inherit fetchurl;
-           "split-sequence" = quicklisp-to-nix-packages."split-sequence";
-       }));
-
-
-  "unix-opts" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."unix-opts" or (x: {}))
-       (import ./quicklisp-to-nix-output/unix-opts.nix {
-         inherit fetchurl;
-       }));
-
-
-  "unix-options" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."unix-options" or (x: {}))
-       (import ./quicklisp-to-nix-output/unix-options.nix {
-         inherit fetchurl;
-       }));
-
-
-  "uiop" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."uiop" or (x: {}))
-       (import ./quicklisp-to-nix-output/uiop.nix {
-         inherit fetchurl;
-       }));
-
-
-  "uffi" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."uffi" or (x: {}))
-       (import ./quicklisp-to-nix-output/uffi.nix {
-         inherit fetchurl;
-       }));
-
-
-  "trivial-utf-8" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."trivial-utf-8" or (x: {}))
-       (import ./quicklisp-to-nix-output/trivial-utf-8.nix {
-         inherit fetchurl;
-           "mgl-pax" = quicklisp-to-nix-packages."mgl-pax";
-       }));
-
-
-  "trivial-types" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."trivial-types" or (x: {}))
-       (import ./quicklisp-to-nix-output/trivial-types.nix {
-         inherit fetchurl;
-       }));
-
-
-  "trivial-shell" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."trivial-shell" or (x: {}))
-       (import ./quicklisp-to-nix-output/trivial-shell.nix {
-         inherit fetchurl;
-       }));
-
-
-  "trivial-package-local-nicknames" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."trivial-package-local-nicknames" or (x: {}))
-       (import ./quicklisp-to-nix-output/trivial-package-local-nicknames.nix {
-         inherit fetchurl;
-       }));
-
-
-  "trivial-mimes" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."trivial-mimes" or (x: {}))
-       (import ./quicklisp-to-nix-output/trivial-mimes.nix {
-         inherit fetchurl;
-       }));
-
-
-  "trivial-main-thread" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."trivial-main-thread" or (x: {}))
-       (import ./quicklisp-to-nix-output/trivial-main-thread.nix {
-         inherit fetchurl;
-           "alexandria" = quicklisp-to-nix-packages."alexandria";
-           "array-utils" = quicklisp-to-nix-packages."array-utils";
-           "bordeaux-threads" = quicklisp-to-nix-packages."bordeaux-threads";
-           "dissect" = quicklisp-to-nix-packages."dissect";
-           "simple-tasks" = quicklisp-to-nix-packages."simple-tasks";
-           "trivial-features" = quicklisp-to-nix-packages."trivial-features";
-       }));
-
-
-  "trivial-indent" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."trivial-indent" or (x: {}))
-       (import ./quicklisp-to-nix-output/trivial-indent.nix {
-         inherit fetchurl;
-       }));
-
-
-  "trivial-gray-streams" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."trivial-gray-streams" or (x: {}))
-       (import ./quicklisp-to-nix-output/trivial-gray-streams.nix {
-         inherit fetchurl;
-       }));
-
-
-  "trivial-garbage" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."trivial-garbage" or (x: {}))
-       (import ./quicklisp-to-nix-output/trivial-garbage.nix {
-         inherit fetchurl;
-           "rt" = quicklisp-to-nix-packages."rt";
-       }));
-
-
-  "trivial-features" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."trivial-features" or (x: {}))
-       (import ./quicklisp-to-nix-output/trivial-features.nix {
-         inherit fetchurl;
-       }));
-
-
-  "trivial-clipboard" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."trivial-clipboard" or (x: {}))
-       (import ./quicklisp-to-nix-output/trivial-clipboard.nix {
-         inherit fetchurl;
-           "uiop" = quicklisp-to-nix-packages."uiop";
-       }));
-
-
-  "trivial-backtrace" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."trivial-backtrace" or (x: {}))
-       (import ./quicklisp-to-nix-output/trivial-backtrace.nix {
-         inherit fetchurl;
-       }));
-
-
-  "trivial-arguments" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."trivial-arguments" or (x: {}))
-       (import ./quicklisp-to-nix-output/trivial-arguments.nix {
-         inherit fetchurl;
-       }));
-
-
-  "trivia" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."trivia" or (x: {}))
-       (import ./quicklisp-to-nix-output/trivia.nix {
-         inherit fetchurl;
-           "alexandria" = quicklisp-to-nix-packages."alexandria";
-           "closer-mop" = quicklisp-to-nix-packages."closer-mop";
-           "introspect-environment" = quicklisp-to-nix-packages."introspect-environment";
-           "iterate" = quicklisp-to-nix-packages."iterate";
-           "lisp-namespace" = quicklisp-to-nix-packages."lisp-namespace";
-           "trivia_dot_balland2006" = quicklisp-to-nix-packages."trivia_dot_balland2006";
-           "trivia_dot_level0" = quicklisp-to-nix-packages."trivia_dot_level0";
-           "trivia_dot_level1" = quicklisp-to-nix-packages."trivia_dot_level1";
-           "trivia_dot_level2" = quicklisp-to-nix-packages."trivia_dot_level2";
-           "trivia_dot_trivial" = quicklisp-to-nix-packages."trivia_dot_trivial";
-           "trivial-cltl2" = quicklisp-to-nix-packages."trivial-cltl2";
-           "type-i" = quicklisp-to-nix-packages."type-i";
-       }));
-
-
-  "trees" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."trees" or (x: {}))
-       (import ./quicklisp-to-nix-output/trees.nix {
-         inherit fetchurl;
-       }));
-
-
-  "symbol-munger" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."symbol-munger" or (x: {}))
-       (import ./quicklisp-to-nix-output/symbol-munger.nix {
-         inherit fetchurl;
-           "alexandria" = quicklisp-to-nix-packages."alexandria";
-           "iterate" = quicklisp-to-nix-packages."iterate";
-       }));
-
-
-  "sycamore" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."sycamore" or (x: {}))
-       (import ./quicklisp-to-nix-output/sycamore.nix {
-         inherit fetchurl;
-           "alexandria" = quicklisp-to-nix-packages."alexandria";
-           "cl-fuzz" = quicklisp-to-nix-packages."cl-fuzz";
-           "cl-ppcre" = quicklisp-to-nix-packages."cl-ppcre";
-           "lisp-unit" = quicklisp-to-nix-packages."lisp-unit";
-       }));
-
-
-  "swap-bytes" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."swap-bytes" or (x: {}))
-       (import ./quicklisp-to-nix-output/swap-bytes.nix {
-         inherit fetchurl;
-           "fiveam" = quicklisp-to-nix-packages."fiveam";
-           "trivial-features" = quicklisp-to-nix-packages."trivial-features";
-       }));
-
-
-  "swank" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."swank" or (x: {}))
-       (import ./quicklisp-to-nix-output/swank.nix {
-         inherit fetchurl;
-       }));
-
-
-  "stumpwm" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."stumpwm" or (x: {}))
-       (import ./quicklisp-to-nix-output/stumpwm.nix {
-         inherit fetchurl;
-           "alexandria" = quicklisp-to-nix-packages."alexandria";
-           "cl-ppcre" = quicklisp-to-nix-packages."cl-ppcre";
-           "clx" = quicklisp-to-nix-packages."clx";
-       }));
-
-
-  "str" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."str" or (x: {}))
-       (import ./quicklisp-to-nix-output/str.nix {
-         inherit fetchurl;
-           "cl-change-case" = quicklisp-to-nix-packages."cl-change-case";
-           "cl-ppcre" = quicklisp-to-nix-packages."cl-ppcre";
-           "cl-ppcre-unicode" = quicklisp-to-nix-packages."cl-ppcre-unicode";
-           "cl-unicode" = quicklisp-to-nix-packages."cl-unicode";
-           "flexi-streams" = quicklisp-to-nix-packages."flexi-streams";
-       }));
-
-
-  "static-vectors" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."static-vectors" or (x: {}))
-       (import ./quicklisp-to-nix-output/static-vectors.nix {
-         inherit fetchurl;
-           "alexandria" = quicklisp-to-nix-packages."alexandria";
-           "babel" = quicklisp-to-nix-packages."babel";
-           "cffi" = quicklisp-to-nix-packages."cffi";
-           "cffi-grovel" = quicklisp-to-nix-packages."cffi-grovel";
-           "cffi-toolchain" = quicklisp-to-nix-packages."cffi-toolchain";
-           "fiveam" = quicklisp-to-nix-packages."fiveam";
-           "trivial-features" = quicklisp-to-nix-packages."trivial-features";
-       }));
-
-
-  "sqlite" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."sqlite" or (x: {}))
-       (import ./quicklisp-to-nix-output/sqlite.nix {
-         inherit fetchurl;
-           "alexandria" = quicklisp-to-nix-packages."alexandria";
-           "babel" = quicklisp-to-nix-packages."babel";
-           "cffi" = quicklisp-to-nix-packages."cffi";
-           "iterate" = quicklisp-to-nix-packages."iterate";
-           "trivial-features" = quicklisp-to-nix-packages."trivial-features";
-       }));
-
-
-  "split-sequence" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."split-sequence" or (x: {}))
-       (import ./quicklisp-to-nix-output/split-sequence.nix {
-         inherit fetchurl;
-           "fiveam" = quicklisp-to-nix-packages."fiveam";
-       }));
-
-
-  "spinneret" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."spinneret" or (x: {}))
-       (import ./quicklisp-to-nix-output/spinneret.nix {
-         inherit fetchurl;
-           "alexandria" = quicklisp-to-nix-packages."alexandria";
-           "anaphora" = quicklisp-to-nix-packages."anaphora";
-           "babel" = quicklisp-to-nix-packages."babel";
-           "bordeaux-threads" = quicklisp-to-nix-packages."bordeaux-threads";
-           "cl-ppcre" = quicklisp-to-nix-packages."cl-ppcre";
-           "closer-mop" = quicklisp-to-nix-packages."closer-mop";
-           "fare-quasiquote" = quicklisp-to-nix-packages."fare-quasiquote";
-           "fare-quasiquote-extras" = quicklisp-to-nix-packages."fare-quasiquote-extras";
-           "fare-quasiquote-optima" = quicklisp-to-nix-packages."fare-quasiquote-optima";
-           "fare-quasiquote-readtable" = quicklisp-to-nix-packages."fare-quasiquote-readtable";
-           "fare-utils" = quicklisp-to-nix-packages."fare-utils";
-           "global-vars" = quicklisp-to-nix-packages."global-vars";
-           "introspect-environment" = quicklisp-to-nix-packages."introspect-environment";
-           "iterate" = quicklisp-to-nix-packages."iterate";
-           "lisp-namespace" = quicklisp-to-nix-packages."lisp-namespace";
-           "named-readtables" = quicklisp-to-nix-packages."named-readtables";
-           "parenscript" = quicklisp-to-nix-packages."parenscript";
-           "parse-declarations-1_dot_0" = quicklisp-to-nix-packages."parse-declarations-1_dot_0";
-           "parse-number" = quicklisp-to-nix-packages."parse-number";
-           "serapeum" = quicklisp-to-nix-packages."serapeum";
-           "split-sequence" = quicklisp-to-nix-packages."split-sequence";
-           "string-case" = quicklisp-to-nix-packages."string-case";
-           "trivia" = quicklisp-to-nix-packages."trivia";
-           "trivia_dot_balland2006" = quicklisp-to-nix-packages."trivia_dot_balland2006";
-           "trivia_dot_level0" = quicklisp-to-nix-packages."trivia_dot_level0";
-           "trivia_dot_level1" = quicklisp-to-nix-packages."trivia_dot_level1";
-           "trivia_dot_level2" = quicklisp-to-nix-packages."trivia_dot_level2";
-           "trivia_dot_quasiquote" = quicklisp-to-nix-packages."trivia_dot_quasiquote";
-           "trivia_dot_trivial" = quicklisp-to-nix-packages."trivia_dot_trivial";
-           "trivial-cltl2" = quicklisp-to-nix-packages."trivial-cltl2";
-           "trivial-features" = quicklisp-to-nix-packages."trivial-features";
-           "trivial-file-size" = quicklisp-to-nix-packages."trivial-file-size";
-           "trivial-garbage" = quicklisp-to-nix-packages."trivial-garbage";
-           "trivial-gray-streams" = quicklisp-to-nix-packages."trivial-gray-streams";
-           "trivial-macroexpand-all" = quicklisp-to-nix-packages."trivial-macroexpand-all";
-           "type-i" = quicklisp-to-nix-packages."type-i";
-       }));
-
-
-  "smug" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."smug" or (x: {}))
-       (import ./quicklisp-to-nix-output/smug.nix {
-         inherit fetchurl;
-           "asdf-package-system" = quicklisp-to-nix-packages."asdf-package-system";
-       }));
-
-
-  "smart-buffer" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."smart-buffer" or (x: {}))
-       (import ./quicklisp-to-nix-output/smart-buffer.nix {
-         inherit fetchurl;
-           "flexi-streams" = quicklisp-to-nix-packages."flexi-streams";
-           "trivial-gray-streams" = quicklisp-to-nix-packages."trivial-gray-streams";
-           "uiop" = quicklisp-to-nix-packages."uiop";
-           "xsubseq" = quicklisp-to-nix-packages."xsubseq";
-       }));
-
-
-  "slynk" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."slynk" or (x: {}))
-       (import ./quicklisp-to-nix-output/slynk.nix {
-         inherit fetchurl;
-       }));
-
-
-  "simple-date-time" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."simple-date-time" or (x: {}))
-       (import ./quicklisp-to-nix-output/simple-date-time.nix {
-         inherit fetchurl;
-           "cl-ppcre" = quicklisp-to-nix-packages."cl-ppcre";
-       }));
-
-
-  "simple-date" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."simple-date" or (x: {}))
-       (import ./quicklisp-to-nix-output/simple-date.nix {
-         inherit fetchurl;
-           "fiveam" = quicklisp-to-nix-packages."fiveam";
-       }));
-
-
-  "serapeum" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."serapeum" or (x: {}))
-       (import ./quicklisp-to-nix-output/serapeum.nix {
-         inherit fetchurl;
-           "alexandria" = quicklisp-to-nix-packages."alexandria";
-           "babel" = quicklisp-to-nix-packages."babel";
-           "bordeaux-threads" = quicklisp-to-nix-packages."bordeaux-threads";
-           "closer-mop" = quicklisp-to-nix-packages."closer-mop";
-           "fare-quasiquote" = quicklisp-to-nix-packages."fare-quasiquote";
-           "fare-quasiquote-extras" = quicklisp-to-nix-packages."fare-quasiquote-extras";
-           "fare-quasiquote-optima" = quicklisp-to-nix-packages."fare-quasiquote-optima";
-           "fare-quasiquote-readtable" = quicklisp-to-nix-packages."fare-quasiquote-readtable";
-           "fare-utils" = quicklisp-to-nix-packages."fare-utils";
-           "global-vars" = quicklisp-to-nix-packages."global-vars";
-           "introspect-environment" = quicklisp-to-nix-packages."introspect-environment";
-           "iterate" = quicklisp-to-nix-packages."iterate";
-           "lisp-namespace" = quicklisp-to-nix-packages."lisp-namespace";
-           "named-readtables" = quicklisp-to-nix-packages."named-readtables";
-           "parse-declarations-1_dot_0" = quicklisp-to-nix-packages."parse-declarations-1_dot_0";
-           "parse-number" = quicklisp-to-nix-packages."parse-number";
-           "split-sequence" = quicklisp-to-nix-packages."split-sequence";
-           "string-case" = quicklisp-to-nix-packages."string-case";
-           "trivia" = quicklisp-to-nix-packages."trivia";
-           "trivia_dot_balland2006" = quicklisp-to-nix-packages."trivia_dot_balland2006";
-           "trivia_dot_level0" = quicklisp-to-nix-packages."trivia_dot_level0";
-           "trivia_dot_level1" = quicklisp-to-nix-packages."trivia_dot_level1";
-           "trivia_dot_level2" = quicklisp-to-nix-packages."trivia_dot_level2";
-           "trivia_dot_quasiquote" = quicklisp-to-nix-packages."trivia_dot_quasiquote";
-           "trivia_dot_trivial" = quicklisp-to-nix-packages."trivia_dot_trivial";
-           "trivial-cltl2" = quicklisp-to-nix-packages."trivial-cltl2";
-           "trivial-features" = quicklisp-to-nix-packages."trivial-features";
-           "trivial-file-size" = quicklisp-to-nix-packages."trivial-file-size";
-           "trivial-garbage" = quicklisp-to-nix-packages."trivial-garbage";
-           "trivial-macroexpand-all" = quicklisp-to-nix-packages."trivial-macroexpand-all";
-           "type-i" = quicklisp-to-nix-packages."type-i";
-           "uiop" = quicklisp-to-nix-packages."uiop";
-       }));
-
-
-  "salza2" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."salza2" or (x: {}))
-       (import ./quicklisp-to-nix-output/salza2.nix {
-         inherit fetchurl;
-           "chipz" = quicklisp-to-nix-packages."chipz";
-           "flexi-streams" = quicklisp-to-nix-packages."flexi-streams";
-           "parachute" = quicklisp-to-nix-packages."parachute";
-           "trivial-gray-streams" = quicklisp-to-nix-packages."trivial-gray-streams";
-       }));
-
-
-  "rfc2388" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."rfc2388" or (x: {}))
-       (import ./quicklisp-to-nix-output/rfc2388.nix {
-         inherit fetchurl;
-       }));
-
-
-  "quri" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."quri" or (x: {}))
-       (import ./quicklisp-to-nix-output/quri.nix {
-         inherit fetchurl;
-           "alexandria" = quicklisp-to-nix-packages."alexandria";
-           "babel" = quicklisp-to-nix-packages."babel";
-           "cl-utilities" = quicklisp-to-nix-packages."cl-utilities";
-           "split-sequence" = quicklisp-to-nix-packages."split-sequence";
-           "trivial-features" = quicklisp-to-nix-packages."trivial-features";
-       }));
-
-
-  "query-fs" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."query-fs" or (x: {}))
-       (import ./quicklisp-to-nix-output/query-fs.nix {
-         inherit fetchurl;
-           "alexandria" = quicklisp-to-nix-packages."alexandria";
-           "babel" = quicklisp-to-nix-packages."babel";
-           "bordeaux-threads" = quicklisp-to-nix-packages."bordeaux-threads";
-           "cffi" = quicklisp-to-nix-packages."cffi";
-           "cffi-grovel" = quicklisp-to-nix-packages."cffi-grovel";
-           "cffi-toolchain" = quicklisp-to-nix-packages."cffi-toolchain";
-           "cl-fuse" = quicklisp-to-nix-packages."cl-fuse";
-           "cl-fuse-meta-fs" = quicklisp-to-nix-packages."cl-fuse-meta-fs";
-           "cl-ppcre" = quicklisp-to-nix-packages."cl-ppcre";
-           "cl-utilities" = quicklisp-to-nix-packages."cl-utilities";
-           "command-line-arguments" = quicklisp-to-nix-packages."command-line-arguments";
-           "iterate" = quicklisp-to-nix-packages."iterate";
-           "pcall" = quicklisp-to-nix-packages."pcall";
-           "pcall-queue" = quicklisp-to-nix-packages."pcall-queue";
-           "trivial-backtrace" = quicklisp-to-nix-packages."trivial-backtrace";
-           "trivial-features" = quicklisp-to-nix-packages."trivial-features";
-           "trivial-utf-8" = quicklisp-to-nix-packages."trivial-utf-8";
-       }));
-
-
-  "pythonic-string-reader" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."pythonic-string-reader" or (x: {}))
-       (import ./quicklisp-to-nix-output/pythonic-string-reader.nix {
-         inherit fetchurl;
-           "named-readtables" = quicklisp-to-nix-packages."named-readtables";
-       }));
-
-
-  "puri" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."puri" or (x: {}))
-       (import ./quicklisp-to-nix-output/puri.nix {
-         inherit fetchurl;
-           "ptester" = quicklisp-to-nix-packages."ptester";
-       }));
-
-
-  "prove-asdf" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."prove-asdf" or (x: {}))
-       (import ./quicklisp-to-nix-output/prove-asdf.nix {
-         inherit fetchurl;
-       }));
-
-
-  "prove" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."prove" or (x: {}))
-       (import ./quicklisp-to-nix-output/prove.nix {
-         inherit fetchurl;
-           "alexandria" = quicklisp-to-nix-packages."alexandria";
-           "anaphora" = quicklisp-to-nix-packages."anaphora";
-           "cl-ansi-text" = quicklisp-to-nix-packages."cl-ansi-text";
-           "cl-colors" = quicklisp-to-nix-packages."cl-colors";
-           "cl-colors2" = quicklisp-to-nix-packages."cl-colors2";
-           "cl-ppcre" = quicklisp-to-nix-packages."cl-ppcre";
-           "let-plus" = quicklisp-to-nix-packages."let-plus";
-           "uiop" = quicklisp-to-nix-packages."uiop";
-       }));
-
-
-  "proc-parse" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."proc-parse" or (x: {}))
-       (import ./quicklisp-to-nix-output/proc-parse.nix {
-         inherit fetchurl;
-           "alexandria" = quicklisp-to-nix-packages."alexandria";
-           "babel" = quicklisp-to-nix-packages."babel";
-           "trivial-features" = quicklisp-to-nix-packages."trivial-features";
-       }));
-
-
-  "postmodern" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."postmodern" or (x: {}))
-       (import ./quicklisp-to-nix-output/postmodern.nix {
-         inherit fetchurl;
-           "alexandria" = quicklisp-to-nix-packages."alexandria";
-           "bordeaux-threads" = quicklisp-to-nix-packages."bordeaux-threads";
-           "cl-base64" = quicklisp-to-nix-packages."cl-base64";
-           "cl-postgres" = quicklisp-to-nix-packages."cl-postgres";
-           "cl-postgres_plus_local-time" = quicklisp-to-nix-packages."cl-postgres_plus_local-time";
-           "cl-postgres_slash_tests" = quicklisp-to-nix-packages."cl-postgres_slash_tests";
-           "cl-ppcre" = quicklisp-to-nix-packages."cl-ppcre";
-           "closer-mop" = quicklisp-to-nix-packages."closer-mop";
-           "fiveam" = quicklisp-to-nix-packages."fiveam";
-           "global-vars" = quicklisp-to-nix-packages."global-vars";
-           "ironclad" = quicklisp-to-nix-packages."ironclad";
-           "local-time" = quicklisp-to-nix-packages."local-time";
-           "md5" = quicklisp-to-nix-packages."md5";
-           "s-sql" = quicklisp-to-nix-packages."s-sql";
-           "s-sql_slash_tests" = quicklisp-to-nix-packages."s-sql_slash_tests";
-           "simple-date" = quicklisp-to-nix-packages."simple-date";
-           "simple-date_slash_postgres-glue" = quicklisp-to-nix-packages."simple-date_slash_postgres-glue";
-           "split-sequence" = quicklisp-to-nix-packages."split-sequence";
-           "uax-15" = quicklisp-to-nix-packages."uax-15";
-           "uiop" = quicklisp-to-nix-packages."uiop";
-           "usocket" = quicklisp-to-nix-packages."usocket";
-       }));
-
-
-  "plump" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."plump" or (x: {}))
-       (import ./quicklisp-to-nix-output/plump.nix {
-         inherit fetchurl;
-           "array-utils" = quicklisp-to-nix-packages."array-utils";
-           "documentation-utils" = quicklisp-to-nix-packages."documentation-utils";
-           "trivial-indent" = quicklisp-to-nix-packages."trivial-indent";
-       }));
-
-
-  "physical-quantities" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."physical-quantities" or (x: {}))
-       (import ./quicklisp-to-nix-output/physical-quantities.nix {
-         inherit fetchurl;
-           "parseq" = quicklisp-to-nix-packages."parseq";
-       }));
-
-
-  "pcall" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."pcall" or (x: {}))
-       (import ./quicklisp-to-nix-output/pcall.nix {
-         inherit fetchurl;
-           "alexandria" = quicklisp-to-nix-packages."alexandria";
-           "bordeaux-threads" = quicklisp-to-nix-packages."bordeaux-threads";
-           "fiveam" = quicklisp-to-nix-packages."fiveam";
-           "pcall-queue" = quicklisp-to-nix-packages."pcall-queue";
-       }));
-
-
-  "parser_dot_common-rules" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."parser_dot_common-rules" or (x: {}))
-       (import ./quicklisp-to-nix-output/parser_dot_common-rules.nix {
-         inherit fetchurl;
-           "alexandria" = quicklisp-to-nix-packages."alexandria";
-           "anaphora" = quicklisp-to-nix-packages."anaphora";
-           "esrap" = quicklisp-to-nix-packages."esrap";
-           "fiveam" = quicklisp-to-nix-packages."fiveam";
-           "let-plus" = quicklisp-to-nix-packages."let-plus";
-           "split-sequence" = quicklisp-to-nix-packages."split-sequence";
-           "trivial-with-current-source-form" = quicklisp-to-nix-packages."trivial-with-current-source-form";
-       }));
-
-
-  "parser-combinators" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."parser-combinators" or (x: {}))
-       (import ./quicklisp-to-nix-output/parser-combinators.nix {
-         inherit fetchurl;
-           "alexandria" = quicklisp-to-nix-packages."alexandria";
-           "iterate" = quicklisp-to-nix-packages."iterate";
-       }));
-
-
-  "parse-number" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."parse-number" or (x: {}))
-       (import ./quicklisp-to-nix-output/parse-number.nix {
-         inherit fetchurl;
-       }));
-
-
-  "parenscript" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."parenscript" or (x: {}))
-       (import ./quicklisp-to-nix-output/parenscript.nix {
-         inherit fetchurl;
-           "anaphora" = quicklisp-to-nix-packages."anaphora";
-           "cl-ppcre" = quicklisp-to-nix-packages."cl-ppcre";
-           "named-readtables" = quicklisp-to-nix-packages."named-readtables";
-       }));
-
-
-  "parachute" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."parachute" or (x: {}))
-       (import ./quicklisp-to-nix-output/parachute.nix {
-         inherit fetchurl;
-           "documentation-utils" = quicklisp-to-nix-packages."documentation-utils";
-           "form-fiddle" = quicklisp-to-nix-packages."form-fiddle";
-           "trivial-indent" = quicklisp-to-nix-packages."trivial-indent";
-       }));
-
-
-  "osicat" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."osicat" or (x: {}))
-       (import ./quicklisp-to-nix-output/osicat.nix {
-         inherit fetchurl;
-           "alexandria" = quicklisp-to-nix-packages."alexandria";
-           "babel" = quicklisp-to-nix-packages."babel";
-           "cffi" = quicklisp-to-nix-packages."cffi";
-           "cffi-grovel" = quicklisp-to-nix-packages."cffi-grovel";
-           "cffi-toolchain" = quicklisp-to-nix-packages."cffi-toolchain";
-           "rt" = quicklisp-to-nix-packages."rt";
-           "trivial-features" = quicklisp-to-nix-packages."trivial-features";
-       }));
-
-
-  "optima" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."optima" or (x: {}))
-       (import ./quicklisp-to-nix-output/optima.nix {
-         inherit fetchurl;
-           "alexandria" = quicklisp-to-nix-packages."alexandria";
-           "closer-mop" = quicklisp-to-nix-packages."closer-mop";
-       }));
-
-
-  "nibbles" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."nibbles" or (x: {}))
-       (import ./quicklisp-to-nix-output/nibbles.nix {
-         inherit fetchurl;
-           "rt" = quicklisp-to-nix-packages."rt";
-       }));
-
-
-  "net-telent-date" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."net-telent-date" or (x: {}))
-       (import ./quicklisp-to-nix-output/net-telent-date.nix {
-         inherit fetchurl;
-       }));
-
-
-  "nbd" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."nbd" or (x: {}))
-       (import ./quicklisp-to-nix-output/nbd.nix {
-         inherit fetchurl;
-           "bordeaux-threads" = quicklisp-to-nix-packages."bordeaux-threads";
-           "flexi-streams" = quicklisp-to-nix-packages."flexi-streams";
-           "lisp-binary" = quicklisp-to-nix-packages."lisp-binary";
-           "wild-package-inferred-system" = quicklisp-to-nix-packages."wild-package-inferred-system";
-       }));
-
-
-  "named-readtables" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."named-readtables" or (x: {}))
-       (import ./quicklisp-to-nix-output/named-readtables.nix {
-         inherit fetchurl;
-       }));
-
-
-  "mt19937" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."mt19937" or (x: {}))
-       (import ./quicklisp-to-nix-output/mt19937.nix {
-         inherit fetchurl;
-       }));
-
-
-  "more-conditions" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."more-conditions" or (x: {}))
-       (import ./quicklisp-to-nix-output/more-conditions.nix {
-         inherit fetchurl;
-           "alexandria" = quicklisp-to-nix-packages."alexandria";
-           "closer-mop" = quicklisp-to-nix-packages."closer-mop";
-           "fiveam" = quicklisp-to-nix-packages."fiveam";
-           "let-plus" = quicklisp-to-nix-packages."let-plus";
-       }));
-
-
-  "moptilities" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."moptilities" or (x: {}))
-       (import ./quicklisp-to-nix-output/moptilities.nix {
-         inherit fetchurl;
-           "closer-mop" = quicklisp-to-nix-packages."closer-mop";
-       }));
-
-
-  "mmap" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."mmap" or (x: {}))
-       (import ./quicklisp-to-nix-output/mmap.nix {
-         inherit fetchurl;
-           "alexandria" = quicklisp-to-nix-packages."alexandria";
-           "babel" = quicklisp-to-nix-packages."babel";
-           "cffi" = quicklisp-to-nix-packages."cffi";
-           "documentation-utils" = quicklisp-to-nix-packages."documentation-utils";
-           "trivial-features" = quicklisp-to-nix-packages."trivial-features";
-           "trivial-indent" = quicklisp-to-nix-packages."trivial-indent";
-       }));
-
-
-  "mk-string-metrics" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."mk-string-metrics" or (x: {}))
-       (import ./quicklisp-to-nix-output/mk-string-metrics.nix {
-         inherit fetchurl;
-       }));
-
-
-  "misc-extensions" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."misc-extensions" or (x: {}))
-       (import ./quicklisp-to-nix-output/misc-extensions.nix {
-         inherit fetchurl;
-       }));
-
-
-  "minheap" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."minheap" or (x: {}))
-       (import ./quicklisp-to-nix-output/minheap.nix {
-         inherit fetchurl;
-       }));
-
-
-  "mgl-pax" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."mgl-pax" or (x: {}))
-       (import ./quicklisp-to-nix-output/mgl-pax.nix {
-         inherit fetchurl;
-           "_3bmd" = quicklisp-to-nix-packages."_3bmd";
-           "_3bmd-ext-code-blocks" = quicklisp-to-nix-packages."_3bmd-ext-code-blocks";
-           "alexandria" = quicklisp-to-nix-packages."alexandria";
-           "colorize" = quicklisp-to-nix-packages."colorize";
-           "md5" = quicklisp-to-nix-packages."md5";
-           "named-readtables" = quicklisp-to-nix-packages."named-readtables";
-           "pythonic-string-reader" = quicklisp-to-nix-packages."pythonic-string-reader";
-           "swank" = quicklisp-to-nix-packages."swank";
-       }));
-
-
-  "metatilities-base" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."metatilities-base" or (x: {}))
-       (import ./quicklisp-to-nix-output/metatilities-base.nix {
-         inherit fetchurl;
-       }));
-
-
-  "metabang-bind" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."metabang-bind" or (x: {}))
-       (import ./quicklisp-to-nix-output/metabang-bind.nix {
-         inherit fetchurl;
-       }));
-
-
-  "md5" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."md5" or (x: {}))
-       (import ./quicklisp-to-nix-output/md5.nix {
-         inherit fetchurl;
-       }));
-
-
-  "marshal" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."marshal" or (x: {}))
-       (import ./quicklisp-to-nix-output/marshal.nix {
-         inherit fetchurl;
-       }));
-
-
-  "lquery" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."lquery" or (x: {}))
-       (import ./quicklisp-to-nix-output/lquery.nix {
-         inherit fetchurl;
-           "array-utils" = quicklisp-to-nix-packages."array-utils";
-           "clss" = quicklisp-to-nix-packages."clss";
-           "documentation-utils" = quicklisp-to-nix-packages."documentation-utils";
-           "form-fiddle" = quicklisp-to-nix-packages."form-fiddle";
-           "plump" = quicklisp-to-nix-packages."plump";
-           "trivial-indent" = quicklisp-to-nix-packages."trivial-indent";
-       }));
-
-
-  "lparallel" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."lparallel" or (x: {}))
-       (import ./quicklisp-to-nix-output/lparallel.nix {
-         inherit fetchurl;
-           "alexandria" = quicklisp-to-nix-packages."alexandria";
-           "bordeaux-threads" = quicklisp-to-nix-packages."bordeaux-threads";
-       }));
-
-
-  "log4cl" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."log4cl" or (x: {}))
-       (import ./quicklisp-to-nix-output/log4cl.nix {
-         inherit fetchurl;
-           "alexandria" = quicklisp-to-nix-packages."alexandria";
-           "bordeaux-threads" = quicklisp-to-nix-packages."bordeaux-threads";
-           "stefil" = quicklisp-to-nix-packages."stefil";
-       }));
-
-
-  "local-time" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."local-time" or (x: {}))
-       (import ./quicklisp-to-nix-output/local-time.nix {
-         inherit fetchurl;
-           "hu_dot_dwim_dot_stefil" = quicklisp-to-nix-packages."hu_dot_dwim_dot_stefil";
-           "uiop" = quicklisp-to-nix-packages."uiop";
-       }));
-
-
-  "lla" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."lla" or (x: {}))
-       (import ./quicklisp-to-nix-output/lla.nix {
-         inherit fetchurl;
-           "alexandria" = quicklisp-to-nix-packages."alexandria";
-           "anaphora" = quicklisp-to-nix-packages."anaphora";
-           "array-operations" = quicklisp-to-nix-packages."array-operations";
-           "babel" = quicklisp-to-nix-packages."babel";
-           "cffi" = quicklisp-to-nix-packages."cffi";
-           "cl-num-utils" = quicklisp-to-nix-packages."cl-num-utils";
-           "cl-slice" = quicklisp-to-nix-packages."cl-slice";
-           "clunit" = quicklisp-to-nix-packages."clunit";
-           "let-plus" = quicklisp-to-nix-packages."let-plus";
-           "trivial-features" = quicklisp-to-nix-packages."trivial-features";
-       }));
-
-
-  "lisp-namespace" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."lisp-namespace" or (x: {}))
-       (import ./quicklisp-to-nix-output/lisp-namespace.nix {
-         inherit fetchurl;
-           "alexandria" = quicklisp-to-nix-packages."alexandria";
-       }));
-
-
-  "lisp-binary" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."lisp-binary" or (x: {}))
-       (import ./quicklisp-to-nix-output/lisp-binary.nix {
-         inherit fetchurl;
-           "alexandria" = quicklisp-to-nix-packages."alexandria";
-           "babel" = quicklisp-to-nix-packages."babel";
-           "cffi" = quicklisp-to-nix-packages."cffi";
-           "closer-mop" = quicklisp-to-nix-packages."closer-mop";
-           "flexi-streams" = quicklisp-to-nix-packages."flexi-streams";
-           "iterate" = quicklisp-to-nix-packages."iterate";
-           "moptilities" = quicklisp-to-nix-packages."moptilities";
-           "quasiquote-2_dot_0" = quicklisp-to-nix-packages."quasiquote-2_dot_0";
-           "trivial-features" = quicklisp-to-nix-packages."trivial-features";
-           "trivial-gray-streams" = quicklisp-to-nix-packages."trivial-gray-streams";
-       }));
-
-
-  "lift" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."lift" or (x: {}))
-       (import ./quicklisp-to-nix-output/lift.nix {
-         inherit fetchurl;
-       }));
-
-
-  "lfarm-ssl" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."lfarm-ssl" or (x: {}))
-       (import ./quicklisp-to-nix-output/lfarm-ssl.nix {
-         inherit fetchurl;
-           "alexandria" = quicklisp-to-nix-packages."alexandria";
-           "babel" = quicklisp-to-nix-packages."babel";
-           "bordeaux-threads" = quicklisp-to-nix-packages."bordeaux-threads";
-           "cffi" = quicklisp-to-nix-packages."cffi";
-           "cl_plus_ssl" = quicklisp-to-nix-packages."cl_plus_ssl";
-           "cl-store" = quicklisp-to-nix-packages."cl-store";
-           "flexi-streams" = quicklisp-to-nix-packages."flexi-streams";
-           "lfarm-common" = quicklisp-to-nix-packages."lfarm-common";
-           "split-sequence" = quicklisp-to-nix-packages."split-sequence";
-           "trivial-features" = quicklisp-to-nix-packages."trivial-features";
-           "trivial-garbage" = quicklisp-to-nix-packages."trivial-garbage";
-           "trivial-gray-streams" = quicklisp-to-nix-packages."trivial-gray-streams";
-           "usocket" = quicklisp-to-nix-packages."usocket";
-       }));
-
-
-  "lfarm-server" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."lfarm-server" or (x: {}))
-       (import ./quicklisp-to-nix-output/lfarm-server.nix {
-         inherit fetchurl;
-           "alexandria" = quicklisp-to-nix-packages."alexandria";
-           "bordeaux-threads" = quicklisp-to-nix-packages."bordeaux-threads";
-           "cl-store" = quicklisp-to-nix-packages."cl-store";
-           "flexi-streams" = quicklisp-to-nix-packages."flexi-streams";
-           "lfarm-common" = quicklisp-to-nix-packages."lfarm-common";
-           "split-sequence" = quicklisp-to-nix-packages."split-sequence";
-           "trivial-gray-streams" = quicklisp-to-nix-packages."trivial-gray-streams";
-           "usocket" = quicklisp-to-nix-packages."usocket";
-       }));
-
-
-  "lfarm-client" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."lfarm-client" or (x: {}))
-       (import ./quicklisp-to-nix-output/lfarm-client.nix {
-         inherit fetchurl;
-           "alexandria" = quicklisp-to-nix-packages."alexandria";
-           "bordeaux-threads" = quicklisp-to-nix-packages."bordeaux-threads";
-           "cl-store" = quicklisp-to-nix-packages."cl-store";
-           "flexi-streams" = quicklisp-to-nix-packages."flexi-streams";
-           "lfarm-common" = quicklisp-to-nix-packages."lfarm-common";
-           "lparallel" = quicklisp-to-nix-packages."lparallel";
-           "split-sequence" = quicklisp-to-nix-packages."split-sequence";
-           "trivial-gray-streams" = quicklisp-to-nix-packages."trivial-gray-streams";
-           "usocket" = quicklisp-to-nix-packages."usocket";
-       }));
-
-
-  "lev" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."lev" or (x: {}))
-       (import ./quicklisp-to-nix-output/lev.nix {
-         inherit fetchurl;
-           "alexandria" = quicklisp-to-nix-packages."alexandria";
-           "babel" = quicklisp-to-nix-packages."babel";
-           "cffi" = quicklisp-to-nix-packages."cffi";
-           "trivial-features" = quicklisp-to-nix-packages."trivial-features";
-       }));
-
-
-  "let-plus" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."let-plus" or (x: {}))
-       (import ./quicklisp-to-nix-output/let-plus.nix {
-         inherit fetchurl;
-           "alexandria" = quicklisp-to-nix-packages."alexandria";
-           "anaphora" = quicklisp-to-nix-packages."anaphora";
-           "lift" = quicklisp-to-nix-packages."lift";
-       }));
-
-
-  "legit" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."legit" or (x: {}))
-       (import ./quicklisp-to-nix-output/legit.nix {
-         inherit fetchurl;
-           "alexandria" = quicklisp-to-nix-packages."alexandria";
-           "bordeaux-threads" = quicklisp-to-nix-packages."bordeaux-threads";
-           "cl-ppcre" = quicklisp-to-nix-packages."cl-ppcre";
-           "documentation-utils" = quicklisp-to-nix-packages."documentation-utils";
-           "lambda-fiddle" = quicklisp-to-nix-packages."lambda-fiddle";
-           "simple-inferiors" = quicklisp-to-nix-packages."simple-inferiors";
-           "trivial-indent" = quicklisp-to-nix-packages."trivial-indent";
-           "uiop" = quicklisp-to-nix-packages."uiop";
-       }));
-
-
-  "lack" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."lack" or (x: {}))
-       (import ./quicklisp-to-nix-output/lack.nix {
-         inherit fetchurl;
-           "alexandria" = quicklisp-to-nix-packages."alexandria";
-           "bordeaux-threads" = quicklisp-to-nix-packages."bordeaux-threads";
-           "ironclad" = quicklisp-to-nix-packages."ironclad";
-           "lack-component" = quicklisp-to-nix-packages."lack-component";
-           "lack-util" = quicklisp-to-nix-packages."lack-util";
-       }));
-
-
-  "jsown" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."jsown" or (x: {}))
-       (import ./quicklisp-to-nix-output/jsown.nix {
-         inherit fetchurl;
-       }));
-
-
-  "jonathan" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."jonathan" or (x: {}))
-       (import ./quicklisp-to-nix-output/jonathan.nix {
-         inherit fetchurl;
-           "alexandria" = quicklisp-to-nix-packages."alexandria";
-           "babel" = quicklisp-to-nix-packages."babel";
-           "cffi" = quicklisp-to-nix-packages."cffi";
-           "cffi-grovel" = quicklisp-to-nix-packages."cffi-grovel";
-           "cffi-toolchain" = quicklisp-to-nix-packages."cffi-toolchain";
-           "cl-annot" = quicklisp-to-nix-packages."cl-annot";
-           "cl-ppcre" = quicklisp-to-nix-packages."cl-ppcre";
-           "cl-syntax" = quicklisp-to-nix-packages."cl-syntax";
-           "cl-syntax-annot" = quicklisp-to-nix-packages."cl-syntax-annot";
-           "fast-io" = quicklisp-to-nix-packages."fast-io";
-           "named-readtables" = quicklisp-to-nix-packages."named-readtables";
-           "proc-parse" = quicklisp-to-nix-packages."proc-parse";
-           "static-vectors" = quicklisp-to-nix-packages."static-vectors";
-           "trivial-features" = quicklisp-to-nix-packages."trivial-features";
-           "trivial-gray-streams" = quicklisp-to-nix-packages."trivial-gray-streams";
-           "trivial-types" = quicklisp-to-nix-packages."trivial-types";
-       }));
-
-
-  "iterate" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."iterate" or (x: {}))
-       (import ./quicklisp-to-nix-output/iterate.nix {
-         inherit fetchurl;
-       }));
-
-
-  "ironclad" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."ironclad" or (x: {}))
-       (import ./quicklisp-to-nix-output/ironclad.nix {
-         inherit fetchurl;
-           "alexandria" = quicklisp-to-nix-packages."alexandria";
-           "bordeaux-threads" = quicklisp-to-nix-packages."bordeaux-threads";
-           "rt" = quicklisp-to-nix-packages."rt";
-       }));
-
-
-  "iolib" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."iolib" or (x: {}))
-       (import ./quicklisp-to-nix-output/iolib.nix {
-         inherit fetchurl;
-           "alexandria" = quicklisp-to-nix-packages."alexandria";
-           "babel" = quicklisp-to-nix-packages."babel";
-           "bordeaux-threads" = quicklisp-to-nix-packages."bordeaux-threads";
-           "cffi" = quicklisp-to-nix-packages."cffi";
-           "cffi-grovel" = quicklisp-to-nix-packages."cffi-grovel";
-           "cffi-toolchain" = quicklisp-to-nix-packages."cffi-toolchain";
-           "fiveam" = quicklisp-to-nix-packages."fiveam";
-           "idna" = quicklisp-to-nix-packages."idna";
-           "iolib_dot_asdf" = quicklisp-to-nix-packages."iolib_dot_asdf";
-           "iolib_dot_base" = quicklisp-to-nix-packages."iolib_dot_base";
-           "iolib_dot_common-lisp" = quicklisp-to-nix-packages."iolib_dot_common-lisp";
-           "iolib_dot_conf" = quicklisp-to-nix-packages."iolib_dot_conf";
-           "split-sequence" = quicklisp-to-nix-packages."split-sequence";
-           "swap-bytes" = quicklisp-to-nix-packages."swap-bytes";
-           "trivial-features" = quicklisp-to-nix-packages."trivial-features";
-       }));
-
-
-  "inferior-shell" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."inferior-shell" or (x: {}))
-       (import ./quicklisp-to-nix-output/inferior-shell.nix {
-         inherit fetchurl;
-           "alexandria" = quicklisp-to-nix-packages."alexandria";
-           "asdf" = quicklisp-to-nix-packages."asdf";
-           "closer-mop" = quicklisp-to-nix-packages."closer-mop";
-           "fare-mop" = quicklisp-to-nix-packages."fare-mop";
-           "fare-quasiquote" = quicklisp-to-nix-packages."fare-quasiquote";
-           "fare-quasiquote-extras" = quicklisp-to-nix-packages."fare-quasiquote-extras";
-           "fare-quasiquote-optima" = quicklisp-to-nix-packages."fare-quasiquote-optima";
-           "fare-quasiquote-readtable" = quicklisp-to-nix-packages."fare-quasiquote-readtable";
-           "fare-utils" = quicklisp-to-nix-packages."fare-utils";
-           "hu_dot_dwim_dot_stefil" = quicklisp-to-nix-packages."hu_dot_dwim_dot_stefil";
-           "introspect-environment" = quicklisp-to-nix-packages."introspect-environment";
-           "iterate" = quicklisp-to-nix-packages."iterate";
-           "lisp-namespace" = quicklisp-to-nix-packages."lisp-namespace";
-           "named-readtables" = quicklisp-to-nix-packages."named-readtables";
-           "trivia" = quicklisp-to-nix-packages."trivia";
-           "trivia_dot_balland2006" = quicklisp-to-nix-packages."trivia_dot_balland2006";
-           "trivia_dot_level0" = quicklisp-to-nix-packages."trivia_dot_level0";
-           "trivia_dot_level1" = quicklisp-to-nix-packages."trivia_dot_level1";
-           "trivia_dot_level2" = quicklisp-to-nix-packages."trivia_dot_level2";
-           "trivia_dot_quasiquote" = quicklisp-to-nix-packages."trivia_dot_quasiquote";
-           "trivia_dot_trivial" = quicklisp-to-nix-packages."trivia_dot_trivial";
-           "trivial-cltl2" = quicklisp-to-nix-packages."trivial-cltl2";
-           "type-i" = quicklisp-to-nix-packages."type-i";
-       }));
-
-
-  "ieee-floats" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."ieee-floats" or (x: {}))
-       (import ./quicklisp-to-nix-output/ieee-floats.nix {
-         inherit fetchurl;
-           "fiveam" = quicklisp-to-nix-packages."fiveam";
-       }));
-
-
-  "idna" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."idna" or (x: {}))
-       (import ./quicklisp-to-nix-output/idna.nix {
-         inherit fetchurl;
-           "split-sequence" = quicklisp-to-nix-packages."split-sequence";
-       }));
-
-
-  "hunchentoot" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."hunchentoot" or (x: {}))
-       (import ./quicklisp-to-nix-output/hunchentoot.nix {
-         inherit fetchurl;
-           "alexandria" = quicklisp-to-nix-packages."alexandria";
-           "babel" = quicklisp-to-nix-packages."babel";
-           "bordeaux-threads" = quicklisp-to-nix-packages."bordeaux-threads";
-           "cffi" = quicklisp-to-nix-packages."cffi";
-           "chunga" = quicklisp-to-nix-packages."chunga";
-           "cl_plus_ssl" = quicklisp-to-nix-packages."cl_plus_ssl";
-           "cl-base64" = quicklisp-to-nix-packages."cl-base64";
-           "cl-fad" = quicklisp-to-nix-packages."cl-fad";
-           "cl-ppcre" = quicklisp-to-nix-packages."cl-ppcre";
-           "cl-who" = quicklisp-to-nix-packages."cl-who";
-           "cxml-stp" = quicklisp-to-nix-packages."cxml-stp";
-           "drakma" = quicklisp-to-nix-packages."drakma";
-           "flexi-streams" = quicklisp-to-nix-packages."flexi-streams";
-           "md5" = quicklisp-to-nix-packages."md5";
-           "rfc2388" = quicklisp-to-nix-packages."rfc2388";
-           "split-sequence" = quicklisp-to-nix-packages."split-sequence";
-           "swank" = quicklisp-to-nix-packages."swank";
-           "trivial-backtrace" = quicklisp-to-nix-packages."trivial-backtrace";
-           "trivial-features" = quicklisp-to-nix-packages."trivial-features";
-           "trivial-garbage" = quicklisp-to-nix-packages."trivial-garbage";
-           "trivial-gray-streams" = quicklisp-to-nix-packages."trivial-gray-streams";
-           "usocket" = quicklisp-to-nix-packages."usocket";
-           "xpath" = quicklisp-to-nix-packages."xpath";
-       }));
-
-
-  "hunchensocket" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."hunchensocket" or (x: {}))
-       (import ./quicklisp-to-nix-output/hunchensocket.nix {
-         inherit fetchurl;
-           "alexandria" = quicklisp-to-nix-packages."alexandria";
-           "babel" = quicklisp-to-nix-packages."babel";
-           "bordeaux-threads" = quicklisp-to-nix-packages."bordeaux-threads";
-           "cffi" = quicklisp-to-nix-packages."cffi";
-           "chunga" = quicklisp-to-nix-packages."chunga";
-           "cl_plus_ssl" = quicklisp-to-nix-packages."cl_plus_ssl";
-           "cl-base64" = quicklisp-to-nix-packages."cl-base64";
-           "cl-fad" = quicklisp-to-nix-packages."cl-fad";
-           "cl-ppcre" = quicklisp-to-nix-packages."cl-ppcre";
-           "fiasco" = quicklisp-to-nix-packages."fiasco";
-           "flexi-streams" = quicklisp-to-nix-packages."flexi-streams";
-           "hunchentoot" = quicklisp-to-nix-packages."hunchentoot";
-           "ironclad" = quicklisp-to-nix-packages."ironclad";
-           "md5" = quicklisp-to-nix-packages."md5";
-           "rfc2388" = quicklisp-to-nix-packages."rfc2388";
-           "split-sequence" = quicklisp-to-nix-packages."split-sequence";
-           "trivial-backtrace" = quicklisp-to-nix-packages."trivial-backtrace";
-           "trivial-features" = quicklisp-to-nix-packages."trivial-features";
-           "trivial-garbage" = quicklisp-to-nix-packages."trivial-garbage";
-           "trivial-gray-streams" = quicklisp-to-nix-packages."trivial-gray-streams";
-           "trivial-utf-8" = quicklisp-to-nix-packages."trivial-utf-8";
-           "usocket" = quicklisp-to-nix-packages."usocket";
-       }));
-
-
-  "hu_dot_dwim_dot_defclass-star" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."hu_dot_dwim_dot_defclass-star" or (x: {}))
-       (import ./quicklisp-to-nix-output/hu_dot_dwim_dot_defclass-star.nix {
-         inherit fetchurl;
-           "hu_dot_dwim_dot_asdf" = quicklisp-to-nix-packages."hu_dot_dwim_dot_asdf";
-           "hu_dot_dwim_dot_common" = quicklisp-to-nix-packages."hu_dot_dwim_dot_common";
-           "hu_dot_dwim_dot_stefil_plus_hu_dot_dwim_dot_def_plus_swank" = quicklisp-to-nix-packages."hu_dot_dwim_dot_stefil_plus_hu_dot_dwim_dot_def_plus_swank";
-       }));
-
-
-  "hu_dot_dwim_dot_asdf" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."hu_dot_dwim_dot_asdf" or (x: {}))
-       (import ./quicklisp-to-nix-output/hu_dot_dwim_dot_asdf.nix {
-         inherit fetchurl;
-           "asdf" = quicklisp-to-nix-packages."asdf";
-           "uiop" = quicklisp-to-nix-packages."uiop";
-       }));
-
-
-  "http-body" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."http-body" or (x: {}))
-       (import ./quicklisp-to-nix-output/http-body.nix {
-         inherit fetchurl;
-           "alexandria" = quicklisp-to-nix-packages."alexandria";
-           "babel" = quicklisp-to-nix-packages."babel";
-           "cffi" = quicklisp-to-nix-packages."cffi";
-           "cffi-grovel" = quicklisp-to-nix-packages."cffi-grovel";
-           "cffi-toolchain" = quicklisp-to-nix-packages."cffi-toolchain";
-           "cl-annot" = quicklisp-to-nix-packages."cl-annot";
-           "cl-ppcre" = quicklisp-to-nix-packages."cl-ppcre";
-           "cl-syntax" = quicklisp-to-nix-packages."cl-syntax";
-           "cl-syntax-annot" = quicklisp-to-nix-packages."cl-syntax-annot";
-           "cl-utilities" = quicklisp-to-nix-packages."cl-utilities";
-           "fast-http" = quicklisp-to-nix-packages."fast-http";
-           "fast-io" = quicklisp-to-nix-packages."fast-io";
-           "flexi-streams" = quicklisp-to-nix-packages."flexi-streams";
-           "jonathan" = quicklisp-to-nix-packages."jonathan";
-           "named-readtables" = quicklisp-to-nix-packages."named-readtables";
-           "proc-parse" = quicklisp-to-nix-packages."proc-parse";
-           "quri" = quicklisp-to-nix-packages."quri";
-           "smart-buffer" = quicklisp-to-nix-packages."smart-buffer";
-           "split-sequence" = quicklisp-to-nix-packages."split-sequence";
-           "static-vectors" = quicklisp-to-nix-packages."static-vectors";
-           "trivial-features" = quicklisp-to-nix-packages."trivial-features";
-           "trivial-gray-streams" = quicklisp-to-nix-packages."trivial-gray-streams";
-           "trivial-types" = quicklisp-to-nix-packages."trivial-types";
-           "xsubseq" = quicklisp-to-nix-packages."xsubseq";
-       }));
-
-
-  "heap" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."heap" or (x: {}))
-       (import ./quicklisp-to-nix-output/heap.nix {
-         inherit fetchurl;
-       }));
-
-
-  "gettext" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."gettext" or (x: {}))
-       (import ./quicklisp-to-nix-output/gettext.nix {
-         inherit fetchurl;
-           "flexi-streams" = quicklisp-to-nix-packages."flexi-streams";
-           "split-sequence" = quicklisp-to-nix-packages."split-sequence";
-           "trivial-gray-streams" = quicklisp-to-nix-packages."trivial-gray-streams";
-           "yacc" = quicklisp-to-nix-packages."yacc";
-       }));
-
-
-  "generic-cl" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."generic-cl" or (x: {}))
-       (import ./quicklisp-to-nix-output/generic-cl.nix {
-         inherit fetchurl;
-           "agutil" = quicklisp-to-nix-packages."agutil";
-           "alexandria" = quicklisp-to-nix-packages."alexandria";
-           "anaphora" = quicklisp-to-nix-packages."anaphora";
-           "arrows" = quicklisp-to-nix-packages."arrows";
-           "cl-custom-hash-table" = quicklisp-to-nix-packages."cl-custom-hash-table";
-           "cl-environments" = quicklisp-to-nix-packages."cl-environments";
-           "cl-form-types" = quicklisp-to-nix-packages."cl-form-types";
-           "closer-mop" = quicklisp-to-nix-packages."closer-mop";
-           "collectors" = quicklisp-to-nix-packages."collectors";
-           "fiveam" = quicklisp-to-nix-packages."fiveam";
-           "generic-cl_dot_arithmetic" = quicklisp-to-nix-packages."generic-cl_dot_arithmetic";
-           "generic-cl_dot_collector" = quicklisp-to-nix-packages."generic-cl_dot_collector";
-           "generic-cl_dot_comparison" = quicklisp-to-nix-packages."generic-cl_dot_comparison";
-           "generic-cl_dot_container" = quicklisp-to-nix-packages."generic-cl_dot_container";
-           "generic-cl_dot_internal" = quicklisp-to-nix-packages."generic-cl_dot_internal";
-           "generic-cl_dot_iterator" = quicklisp-to-nix-packages."generic-cl_dot_iterator";
-           "generic-cl_dot_lazy-seq" = quicklisp-to-nix-packages."generic-cl_dot_lazy-seq";
-           "generic-cl_dot_map" = quicklisp-to-nix-packages."generic-cl_dot_map";
-           "generic-cl_dot_math" = quicklisp-to-nix-packages."generic-cl_dot_math";
-           "generic-cl_dot_object" = quicklisp-to-nix-packages."generic-cl_dot_object";
-           "generic-cl_dot_sequence" = quicklisp-to-nix-packages."generic-cl_dot_sequence";
-           "generic-cl_dot_set" = quicklisp-to-nix-packages."generic-cl_dot_set";
-           "introspect-environment" = quicklisp-to-nix-packages."introspect-environment";
-           "iterate" = quicklisp-to-nix-packages."iterate";
-           "lisp-namespace" = quicklisp-to-nix-packages."lisp-namespace";
-           "optima" = quicklisp-to-nix-packages."optima";
-           "parse-declarations-1_dot_0" = quicklisp-to-nix-packages."parse-declarations-1_dot_0";
-           "static-dispatch" = quicklisp-to-nix-packages."static-dispatch";
-           "symbol-munger" = quicklisp-to-nix-packages."symbol-munger";
-           "trivia" = quicklisp-to-nix-packages."trivia";
-           "trivia_dot_balland2006" = quicklisp-to-nix-packages."trivia_dot_balland2006";
-           "trivia_dot_level0" = quicklisp-to-nix-packages."trivia_dot_level0";
-           "trivia_dot_level1" = quicklisp-to-nix-packages."trivia_dot_level1";
-           "trivia_dot_level2" = quicklisp-to-nix-packages."trivia_dot_level2";
-           "trivia_dot_trivial" = quicklisp-to-nix-packages."trivia_dot_trivial";
-           "trivial-cltl2" = quicklisp-to-nix-packages."trivial-cltl2";
-           "type-i" = quicklisp-to-nix-packages."type-i";
-       }));
-
-
-  "fset" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."fset" or (x: {}))
-       (import ./quicklisp-to-nix-output/fset.nix {
-         inherit fetchurl;
-           "misc-extensions" = quicklisp-to-nix-packages."misc-extensions";
-           "mt19937" = quicklisp-to-nix-packages."mt19937";
-           "named-readtables" = quicklisp-to-nix-packages."named-readtables";
-       }));
-
-
-  "form-fiddle" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."form-fiddle" or (x: {}))
-       (import ./quicklisp-to-nix-output/form-fiddle.nix {
-         inherit fetchurl;
-           "documentation-utils" = quicklisp-to-nix-packages."documentation-utils";
-           "trivial-indent" = quicklisp-to-nix-packages."trivial-indent";
-       }));
-
-
-  "flow" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."flow" or (x: {}))
-       (import ./quicklisp-to-nix-output/flow.nix {
-         inherit fetchurl;
-           "closer-mop" = quicklisp-to-nix-packages."closer-mop";
-           "documentation-utils" = quicklisp-to-nix-packages."documentation-utils";
-           "trivial-indent" = quicklisp-to-nix-packages."trivial-indent";
-       }));
-
-
-  "float-features" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."float-features" or (x: {}))
-       (import ./quicklisp-to-nix-output/float-features.nix {
-         inherit fetchurl;
-           "documentation-utils" = quicklisp-to-nix-packages."documentation-utils";
-           "trivial-indent" = quicklisp-to-nix-packages."trivial-indent";
-       }));
-
-
-  "flexi-streams" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."flexi-streams" or (x: {}))
-       (import ./quicklisp-to-nix-output/flexi-streams.nix {
-         inherit fetchurl;
-           "trivial-gray-streams" = quicklisp-to-nix-packages."trivial-gray-streams";
-       }));
-
-
-  "fiveam" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."fiveam" or (x: {}))
-       (import ./quicklisp-to-nix-output/fiveam.nix {
-         inherit fetchurl;
-           "alexandria" = quicklisp-to-nix-packages."alexandria";
-           "net_dot_didierverna_dot_asdf-flv" = quicklisp-to-nix-packages."net_dot_didierverna_dot_asdf-flv";
-           "trivial-backtrace" = quicklisp-to-nix-packages."trivial-backtrace";
-       }));
-
-
-  "file-attributes" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."file-attributes" or (x: {}))
-       (import ./quicklisp-to-nix-output/file-attributes.nix {
-         inherit fetchurl;
-           "alexandria" = quicklisp-to-nix-packages."alexandria";
-           "babel" = quicklisp-to-nix-packages."babel";
-           "cffi" = quicklisp-to-nix-packages."cffi";
-           "documentation-utils" = quicklisp-to-nix-packages."documentation-utils";
-           "trivial-features" = quicklisp-to-nix-packages."trivial-features";
-           "trivial-indent" = quicklisp-to-nix-packages."trivial-indent";
-       }));
-
-
-  "fast-io" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."fast-io" or (x: {}))
-       (import ./quicklisp-to-nix-output/fast-io.nix {
-         inherit fetchurl;
-           "alexandria" = quicklisp-to-nix-packages."alexandria";
-           "babel" = quicklisp-to-nix-packages."babel";
-           "cffi" = quicklisp-to-nix-packages."cffi";
-           "cffi-grovel" = quicklisp-to-nix-packages."cffi-grovel";
-           "cffi-toolchain" = quicklisp-to-nix-packages."cffi-toolchain";
-           "static-vectors" = quicklisp-to-nix-packages."static-vectors";
-           "trivial-features" = quicklisp-to-nix-packages."trivial-features";
-           "trivial-gray-streams" = quicklisp-to-nix-packages."trivial-gray-streams";
-       }));
-
-
-  "fast-http" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."fast-http" or (x: {}))
-       (import ./quicklisp-to-nix-output/fast-http.nix {
-         inherit fetchurl;
-           "alexandria" = quicklisp-to-nix-packages."alexandria";
-           "babel" = quicklisp-to-nix-packages."babel";
-           "cl-utilities" = quicklisp-to-nix-packages."cl-utilities";
-           "flexi-streams" = quicklisp-to-nix-packages."flexi-streams";
-           "proc-parse" = quicklisp-to-nix-packages."proc-parse";
-           "smart-buffer" = quicklisp-to-nix-packages."smart-buffer";
-           "trivial-features" = quicklisp-to-nix-packages."trivial-features";
-           "trivial-gray-streams" = quicklisp-to-nix-packages."trivial-gray-streams";
-           "xsubseq" = quicklisp-to-nix-packages."xsubseq";
-       }));
-
-
-  "fare-utils" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."fare-utils" or (x: {}))
-       (import ./quicklisp-to-nix-output/fare-utils.nix {
-         inherit fetchurl;
-           "asdf" = quicklisp-to-nix-packages."asdf";
-       }));
-
-
-  "fare-quasiquote" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."fare-quasiquote" or (x: {}))
-       (import ./quicklisp-to-nix-output/fare-quasiquote.nix {
-         inherit fetchurl;
-           "fare-utils" = quicklisp-to-nix-packages."fare-utils";
-       }));
-
-
-  "fare-mop" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."fare-mop" or (x: {}))
-       (import ./quicklisp-to-nix-output/fare-mop.nix {
-         inherit fetchurl;
-           "closer-mop" = quicklisp-to-nix-packages."closer-mop";
-           "fare-utils" = quicklisp-to-nix-packages."fare-utils";
-       }));
-
-
-  "fare-csv" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."fare-csv" or (x: {}))
-       (import ./quicklisp-to-nix-output/fare-csv.nix {
-         inherit fetchurl;
-       }));
-
-
-  "external-program" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."external-program" or (x: {}))
-       (import ./quicklisp-to-nix-output/external-program.nix {
-         inherit fetchurl;
-           "fiveam" = quicklisp-to-nix-packages."fiveam";
-           "trivial-features" = quicklisp-to-nix-packages."trivial-features";
-       }));
-
-
-  "esrap-peg" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."esrap-peg" or (x: {}))
-       (import ./quicklisp-to-nix-output/esrap-peg.nix {
-         inherit fetchurl;
-           "alexandria" = quicklisp-to-nix-packages."alexandria";
-           "cl-unification" = quicklisp-to-nix-packages."cl-unification";
-           "esrap" = quicklisp-to-nix-packages."esrap";
-           "iterate" = quicklisp-to-nix-packages."iterate";
-           "trivial-with-current-source-form" = quicklisp-to-nix-packages."trivial-with-current-source-form";
-       }));
-
-
-  "esrap" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."esrap" or (x: {}))
-       (import ./quicklisp-to-nix-output/esrap.nix {
-         inherit fetchurl;
-           "alexandria" = quicklisp-to-nix-packages."alexandria";
-           "fiveam" = quicklisp-to-nix-packages."fiveam";
-           "trivial-with-current-source-form" = quicklisp-to-nix-packages."trivial-with-current-source-form";
-       }));
-
-
-  "enchant" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."enchant" or (x: {}))
-       (import ./quicklisp-to-nix-output/enchant.nix {
-         inherit fetchurl;
-           "alexandria" = quicklisp-to-nix-packages."alexandria";
-           "babel" = quicklisp-to-nix-packages."babel";
-           "cffi" = quicklisp-to-nix-packages."cffi";
-           "trivial-features" = quicklisp-to-nix-packages."trivial-features";
-       }));
-
-
-  "drakma" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."drakma" or (x: {}))
-       (import ./quicklisp-to-nix-output/drakma.nix {
-         inherit fetchurl;
-           "alexandria" = quicklisp-to-nix-packages."alexandria";
-           "babel" = quicklisp-to-nix-packages."babel";
-           "bordeaux-threads" = quicklisp-to-nix-packages."bordeaux-threads";
-           "cffi" = quicklisp-to-nix-packages."cffi";
-           "chipz" = quicklisp-to-nix-packages."chipz";
-           "chunga" = quicklisp-to-nix-packages."chunga";
-           "cl_plus_ssl" = quicklisp-to-nix-packages."cl_plus_ssl";
-           "cl-base64" = quicklisp-to-nix-packages."cl-base64";
-           "cl-ppcre" = quicklisp-to-nix-packages."cl-ppcre";
-           "flexi-streams" = quicklisp-to-nix-packages."flexi-streams";
-           "puri" = quicklisp-to-nix-packages."puri";
-           "split-sequence" = quicklisp-to-nix-packages."split-sequence";
-           "trivial-features" = quicklisp-to-nix-packages."trivial-features";
-           "trivial-garbage" = quicklisp-to-nix-packages."trivial-garbage";
-           "trivial-gray-streams" = quicklisp-to-nix-packages."trivial-gray-streams";
-           "usocket" = quicklisp-to-nix-packages."usocket";
-       }));
-
-
-  "documentation-utils" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."documentation-utils" or (x: {}))
-       (import ./quicklisp-to-nix-output/documentation-utils.nix {
-         inherit fetchurl;
-           "trivial-indent" = quicklisp-to-nix-packages."trivial-indent";
-       }));
-
-
-  "djula" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."djula" or (x: {}))
-       (import ./quicklisp-to-nix-output/djula.nix {
-         inherit fetchurl;
-           "access" = quicklisp-to-nix-packages."access";
-           "alexandria" = quicklisp-to-nix-packages."alexandria";
-           "anaphora" = quicklisp-to-nix-packages."anaphora";
-           "arnesi" = quicklisp-to-nix-packages."arnesi";
-           "babel" = quicklisp-to-nix-packages."babel";
-           "cl-annot" = quicklisp-to-nix-packages."cl-annot";
-           "cl-interpol" = quicklisp-to-nix-packages."cl-interpol";
-           "cl-locale" = quicklisp-to-nix-packages."cl-locale";
-           "cl-ppcre" = quicklisp-to-nix-packages."cl-ppcre";
-           "cl-slice" = quicklisp-to-nix-packages."cl-slice";
-           "cl-syntax" = quicklisp-to-nix-packages."cl-syntax";
-           "cl-syntax-annot" = quicklisp-to-nix-packages."cl-syntax-annot";
-           "cl-unicode" = quicklisp-to-nix-packages."cl-unicode";
-           "closer-mop" = quicklisp-to-nix-packages."closer-mop";
-           "collectors" = quicklisp-to-nix-packages."collectors";
-           "flexi-streams" = quicklisp-to-nix-packages."flexi-streams";
-           "gettext" = quicklisp-to-nix-packages."gettext";
-           "iterate" = quicklisp-to-nix-packages."iterate";
-           "let-plus" = quicklisp-to-nix-packages."let-plus";
-           "local-time" = quicklisp-to-nix-packages."local-time";
-           "named-readtables" = quicklisp-to-nix-packages."named-readtables";
-           "parser-combinators" = quicklisp-to-nix-packages."parser-combinators";
-           "split-sequence" = quicklisp-to-nix-packages."split-sequence";
-           "symbol-munger" = quicklisp-to-nix-packages."symbol-munger";
-           "trivial-backtrace" = quicklisp-to-nix-packages."trivial-backtrace";
-           "trivial-features" = quicklisp-to-nix-packages."trivial-features";
-           "trivial-gray-streams" = quicklisp-to-nix-packages."trivial-gray-streams";
-           "trivial-types" = quicklisp-to-nix-packages."trivial-types";
-           "yacc" = quicklisp-to-nix-packages."yacc";
-       }));
-
-
-  "dexador" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."dexador" or (x: {}))
-       (import ./quicklisp-to-nix-output/dexador.nix {
-         inherit fetchurl;
-           "alexandria" = quicklisp-to-nix-packages."alexandria";
-           "babel" = quicklisp-to-nix-packages."babel";
-           "bordeaux-threads" = quicklisp-to-nix-packages."bordeaux-threads";
-           "cffi" = quicklisp-to-nix-packages."cffi";
-           "cffi-grovel" = quicklisp-to-nix-packages."cffi-grovel";
-           "cffi-toolchain" = quicklisp-to-nix-packages."cffi-toolchain";
-           "chipz" = quicklisp-to-nix-packages."chipz";
-           "chunga" = quicklisp-to-nix-packages."chunga";
-           "cl_plus_ssl" = quicklisp-to-nix-packages."cl_plus_ssl";
-           "cl-base64" = quicklisp-to-nix-packages."cl-base64";
-           "cl-cookie" = quicklisp-to-nix-packages."cl-cookie";
-           "cl-ppcre" = quicklisp-to-nix-packages."cl-ppcre";
-           "cl-utilities" = quicklisp-to-nix-packages."cl-utilities";
-           "fast-http" = quicklisp-to-nix-packages."fast-http";
-           "fast-io" = quicklisp-to-nix-packages."fast-io";
-           "flexi-streams" = quicklisp-to-nix-packages."flexi-streams";
-           "local-time" = quicklisp-to-nix-packages."local-time";
-           "proc-parse" = quicklisp-to-nix-packages."proc-parse";
-           "quri" = quicklisp-to-nix-packages."quri";
-           "smart-buffer" = quicklisp-to-nix-packages."smart-buffer";
-           "split-sequence" = quicklisp-to-nix-packages."split-sequence";
-           "static-vectors" = quicklisp-to-nix-packages."static-vectors";
-           "trivial-features" = quicklisp-to-nix-packages."trivial-features";
-           "trivial-garbage" = quicklisp-to-nix-packages."trivial-garbage";
-           "trivial-gray-streams" = quicklisp-to-nix-packages."trivial-gray-streams";
-           "trivial-mimes" = quicklisp-to-nix-packages."trivial-mimes";
-           "uiop" = quicklisp-to-nix-packages."uiop";
-           "usocket" = quicklisp-to-nix-packages."usocket";
-           "xsubseq" = quicklisp-to-nix-packages."xsubseq";
-       }));
-
-
-  "defclass-std" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."defclass-std" or (x: {}))
-       (import ./quicklisp-to-nix-output/defclass-std.nix {
-         inherit fetchurl;
-           "alexandria" = quicklisp-to-nix-packages."alexandria";
-           "anaphora" = quicklisp-to-nix-packages."anaphora";
-       }));
-
-
-  "dbus" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."dbus" or (x: {}))
-       (import ./quicklisp-to-nix-output/dbus.nix {
-         inherit fetchurl;
-           "alexandria" = quicklisp-to-nix-packages."alexandria";
-           "asdf-package-system" = quicklisp-to-nix-packages."asdf-package-system";
-           "babel" = quicklisp-to-nix-packages."babel";
-           "bordeaux-threads" = quicklisp-to-nix-packages."bordeaux-threads";
-           "cffi" = quicklisp-to-nix-packages."cffi";
-           "cffi-grovel" = quicklisp-to-nix-packages."cffi-grovel";
-           "cffi-toolchain" = quicklisp-to-nix-packages."cffi-toolchain";
-           "cl-ppcre" = quicklisp-to-nix-packages."cl-ppcre";
-           "cl-xmlspam" = quicklisp-to-nix-packages."cl-xmlspam";
-           "closure-common" = quicklisp-to-nix-packages."closure-common";
-           "cxml" = quicklisp-to-nix-packages."cxml";
-           "flexi-streams" = quicklisp-to-nix-packages."flexi-streams";
-           "idna" = quicklisp-to-nix-packages."idna";
-           "ieee-floats" = quicklisp-to-nix-packages."ieee-floats";
-           "iolib" = quicklisp-to-nix-packages."iolib";
-           "iolib_dot_asdf" = quicklisp-to-nix-packages."iolib_dot_asdf";
-           "iolib_dot_base" = quicklisp-to-nix-packages."iolib_dot_base";
-           "iolib_dot_common-lisp" = quicklisp-to-nix-packages."iolib_dot_common-lisp";
-           "iolib_dot_conf" = quicklisp-to-nix-packages."iolib_dot_conf";
-           "ironclad" = quicklisp-to-nix-packages."ironclad";
-           "puri" = quicklisp-to-nix-packages."puri";
-           "split-sequence" = quicklisp-to-nix-packages."split-sequence";
-           "swap-bytes" = quicklisp-to-nix-packages."swap-bytes";
-           "trivial-features" = quicklisp-to-nix-packages."trivial-features";
-           "trivial-garbage" = quicklisp-to-nix-packages."trivial-garbage";
-           "trivial-gray-streams" = quicklisp-to-nix-packages."trivial-gray-streams";
-       }));
-
-
-  "dbd-sqlite3" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."dbd-sqlite3" or (x: {}))
-       (import ./quicklisp-to-nix-output/dbd-sqlite3.nix {
-         inherit fetchurl;
-           "alexandria" = quicklisp-to-nix-packages."alexandria";
-           "babel" = quicklisp-to-nix-packages."babel";
-           "bordeaux-threads" = quicklisp-to-nix-packages."bordeaux-threads";
-           "cffi" = quicklisp-to-nix-packages."cffi";
-           "closer-mop" = quicklisp-to-nix-packages."closer-mop";
-           "dbi" = quicklisp-to-nix-packages."dbi";
-           "iterate" = quicklisp-to-nix-packages."iterate";
-           "split-sequence" = quicklisp-to-nix-packages."split-sequence";
-           "sqlite" = quicklisp-to-nix-packages."sqlite";
-           "trivial-features" = quicklisp-to-nix-packages."trivial-features";
-           "trivial-garbage" = quicklisp-to-nix-packages."trivial-garbage";
-       }));
-
-
-  "dbd-postgres" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."dbd-postgres" or (x: {}))
-       (import ./quicklisp-to-nix-output/dbd-postgres.nix {
-         inherit fetchurl;
-           "alexandria" = quicklisp-to-nix-packages."alexandria";
-           "bordeaux-threads" = quicklisp-to-nix-packages."bordeaux-threads";
-           "cl-base64" = quicklisp-to-nix-packages."cl-base64";
-           "cl-postgres" = quicklisp-to-nix-packages."cl-postgres";
-           "cl-ppcre" = quicklisp-to-nix-packages."cl-ppcre";
-           "closer-mop" = quicklisp-to-nix-packages."closer-mop";
-           "dbi" = quicklisp-to-nix-packages."dbi";
-           "ironclad" = quicklisp-to-nix-packages."ironclad";
-           "md5" = quicklisp-to-nix-packages."md5";
-           "split-sequence" = quicklisp-to-nix-packages."split-sequence";
-           "trivial-garbage" = quicklisp-to-nix-packages."trivial-garbage";
-           "uax-15" = quicklisp-to-nix-packages."uax-15";
-           "usocket" = quicklisp-to-nix-packages."usocket";
-       }));
-
-
-  "dbd-mysql" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."dbd-mysql" or (x: {}))
-       (import ./quicklisp-to-nix-output/dbd-mysql.nix {
-         inherit fetchurl;
-           "alexandria" = quicklisp-to-nix-packages."alexandria";
-           "babel" = quicklisp-to-nix-packages."babel";
-           "bordeaux-threads" = quicklisp-to-nix-packages."bordeaux-threads";
-           "cffi" = quicklisp-to-nix-packages."cffi";
-           "cl-mysql" = quicklisp-to-nix-packages."cl-mysql";
-           "closer-mop" = quicklisp-to-nix-packages."closer-mop";
-           "dbi" = quicklisp-to-nix-packages."dbi";
-           "split-sequence" = quicklisp-to-nix-packages."split-sequence";
-           "trivial-features" = quicklisp-to-nix-packages."trivial-features";
-       }));
-
-
-  "data-table" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."data-table" or (x: {}))
-       (import ./quicklisp-to-nix-output/data-table.nix {
-         inherit fetchurl;
-           "alexandria" = quicklisp-to-nix-packages."alexandria";
-           "cl-interpol" = quicklisp-to-nix-packages."cl-interpol";
-           "cl-ppcre" = quicklisp-to-nix-packages."cl-ppcre";
-           "cl-unicode" = quicklisp-to-nix-packages."cl-unicode";
-           "flexi-streams" = quicklisp-to-nix-packages."flexi-streams";
-           "iterate" = quicklisp-to-nix-packages."iterate";
-           "lisp-unit2" = quicklisp-to-nix-packages."lisp-unit2";
-           "named-readtables" = quicklisp-to-nix-packages."named-readtables";
-           "symbol-munger" = quicklisp-to-nix-packages."symbol-munger";
-       }));
-
-
-  "cxml-stp" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."cxml-stp" or (x: {}))
-       (import ./quicklisp-to-nix-output/cxml-stp.nix {
-         inherit fetchurl;
-           "alexandria" = quicklisp-to-nix-packages."alexandria";
-           "babel" = quicklisp-to-nix-packages."babel";
-           "cl-ppcre" = quicklisp-to-nix-packages."cl-ppcre";
-           "closure-common" = quicklisp-to-nix-packages."closure-common";
-           "cxml" = quicklisp-to-nix-packages."cxml";
-           "cxml_slash_test" = quicklisp-to-nix-packages."cxml_slash_test";
-           "parse-number" = quicklisp-to-nix-packages."parse-number";
-           "puri" = quicklisp-to-nix-packages."puri";
-           "rt" = quicklisp-to-nix-packages."rt";
-           "trivial-features" = quicklisp-to-nix-packages."trivial-features";
-           "trivial-gray-streams" = quicklisp-to-nix-packages."trivial-gray-streams";
-           "xpath" = quicklisp-to-nix-packages."xpath";
-           "xpath_slash_test" = quicklisp-to-nix-packages."xpath_slash_test";
-           "yacc" = quicklisp-to-nix-packages."yacc";
-       }));
-
-
-  "cxml" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."cxml" or (x: {}))
-       (import ./quicklisp-to-nix-output/cxml.nix {
-         inherit fetchurl;
-           "alexandria" = quicklisp-to-nix-packages."alexandria";
-           "babel" = quicklisp-to-nix-packages."babel";
-           "closure-common" = quicklisp-to-nix-packages."closure-common";
-           "puri" = quicklisp-to-nix-packages."puri";
-           "trivial-features" = quicklisp-to-nix-packages."trivial-features";
-           "trivial-gray-streams" = quicklisp-to-nix-packages."trivial-gray-streams";
-       }));
-
-
-  "css-selectors-stp" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."css-selectors-stp" or (x: {}))
-       (import ./quicklisp-to-nix-output/css-selectors-stp.nix {
-         inherit fetchurl;
-           "alexandria" = quicklisp-to-nix-packages."alexandria";
-           "babel" = quicklisp-to-nix-packages."babel";
-           "buildnode" = quicklisp-to-nix-packages."buildnode";
-           "cl-interpol" = quicklisp-to-nix-packages."cl-interpol";
-           "cl-ppcre" = quicklisp-to-nix-packages."cl-ppcre";
-           "cl-unicode" = quicklisp-to-nix-packages."cl-unicode";
-           "closer-mop" = quicklisp-to-nix-packages."closer-mop";
-           "closure-common" = quicklisp-to-nix-packages."closure-common";
-           "closure-html" = quicklisp-to-nix-packages."closure-html";
-           "collectors" = quicklisp-to-nix-packages."collectors";
-           "css-selectors" = quicklisp-to-nix-packages."css-selectors";
-           "cxml" = quicklisp-to-nix-packages."cxml";
-           "cxml-stp" = quicklisp-to-nix-packages."cxml-stp";
-           "flexi-streams" = quicklisp-to-nix-packages."flexi-streams";
-           "iterate" = quicklisp-to-nix-packages."iterate";
-           "named-readtables" = quicklisp-to-nix-packages."named-readtables";
-           "parse-number" = quicklisp-to-nix-packages."parse-number";
-           "puri" = quicklisp-to-nix-packages."puri";
-           "split-sequence" = quicklisp-to-nix-packages."split-sequence";
-           "swank" = quicklisp-to-nix-packages."swank";
-           "symbol-munger" = quicklisp-to-nix-packages."symbol-munger";
-           "trivial-features" = quicklisp-to-nix-packages."trivial-features";
-           "trivial-gray-streams" = quicklisp-to-nix-packages."trivial-gray-streams";
-           "xpath" = quicklisp-to-nix-packages."xpath";
-           "yacc" = quicklisp-to-nix-packages."yacc";
-       }));
-
-
-  "css-selectors-simple-tree" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."css-selectors-simple-tree" or (x: {}))
-       (import ./quicklisp-to-nix-output/css-selectors-simple-tree.nix {
-         inherit fetchurl;
-           "alexandria" = quicklisp-to-nix-packages."alexandria";
-           "babel" = quicklisp-to-nix-packages."babel";
-           "buildnode" = quicklisp-to-nix-packages."buildnode";
-           "cl-html5-parser" = quicklisp-to-nix-packages."cl-html5-parser";
-           "cl-interpol" = quicklisp-to-nix-packages."cl-interpol";
-           "cl-ppcre" = quicklisp-to-nix-packages."cl-ppcre";
-           "cl-unicode" = quicklisp-to-nix-packages."cl-unicode";
-           "closer-mop" = quicklisp-to-nix-packages."closer-mop";
-           "closure-common" = quicklisp-to-nix-packages."closure-common";
-           "closure-html" = quicklisp-to-nix-packages."closure-html";
-           "collectors" = quicklisp-to-nix-packages."collectors";
-           "css-selectors" = quicklisp-to-nix-packages."css-selectors";
-           "cxml" = quicklisp-to-nix-packages."cxml";
-           "flexi-streams" = quicklisp-to-nix-packages."flexi-streams";
-           "iterate" = quicklisp-to-nix-packages."iterate";
-           "named-readtables" = quicklisp-to-nix-packages."named-readtables";
-           "puri" = quicklisp-to-nix-packages."puri";
-           "split-sequence" = quicklisp-to-nix-packages."split-sequence";
-           "string-case" = quicklisp-to-nix-packages."string-case";
-           "swank" = quicklisp-to-nix-packages."swank";
-           "symbol-munger" = quicklisp-to-nix-packages."symbol-munger";
-           "trivial-features" = quicklisp-to-nix-packages."trivial-features";
-           "trivial-gray-streams" = quicklisp-to-nix-packages."trivial-gray-streams";
-           "yacc" = quicklisp-to-nix-packages."yacc";
-       }));
-
-
-  "css-selectors" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."css-selectors" or (x: {}))
-       (import ./quicklisp-to-nix-output/css-selectors.nix {
-         inherit fetchurl;
-           "alexandria" = quicklisp-to-nix-packages."alexandria";
-           "babel" = quicklisp-to-nix-packages."babel";
-           "buildnode" = quicklisp-to-nix-packages."buildnode";
-           "buildnode-xhtml" = quicklisp-to-nix-packages."buildnode-xhtml";
-           "cl-interpol" = quicklisp-to-nix-packages."cl-interpol";
-           "cl-ppcre" = quicklisp-to-nix-packages."cl-ppcre";
-           "cl-unicode" = quicklisp-to-nix-packages."cl-unicode";
-           "closer-mop" = quicklisp-to-nix-packages."closer-mop";
-           "closure-common" = quicklisp-to-nix-packages."closure-common";
-           "closure-html" = quicklisp-to-nix-packages."closure-html";
-           "collectors" = quicklisp-to-nix-packages."collectors";
-           "cxml" = quicklisp-to-nix-packages."cxml";
-           "flexi-streams" = quicklisp-to-nix-packages."flexi-streams";
-           "iterate" = quicklisp-to-nix-packages."iterate";
-           "lisp-unit2" = quicklisp-to-nix-packages."lisp-unit2";
-           "named-readtables" = quicklisp-to-nix-packages."named-readtables";
-           "puri" = quicklisp-to-nix-packages."puri";
-           "split-sequence" = quicklisp-to-nix-packages."split-sequence";
-           "swank" = quicklisp-to-nix-packages."swank";
-           "symbol-munger" = quicklisp-to-nix-packages."symbol-munger";
-           "trivial-features" = quicklisp-to-nix-packages."trivial-features";
-           "trivial-gray-streams" = quicklisp-to-nix-packages."trivial-gray-streams";
-           "yacc" = quicklisp-to-nix-packages."yacc";
-       }));
-
-
-  "css-lite" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."css-lite" or (x: {}))
-       (import ./quicklisp-to-nix-output/css-lite.nix {
-         inherit fetchurl;
-       }));
-
-
-  "command-line-arguments" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."command-line-arguments" or (x: {}))
-       (import ./quicklisp-to-nix-output/command-line-arguments.nix {
-         inherit fetchurl;
-           "alexandria" = quicklisp-to-nix-packages."alexandria";
-           "hu_dot_dwim_dot_stefil" = quicklisp-to-nix-packages."hu_dot_dwim_dot_stefil";
-       }));
-
-
-  "collectors" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."collectors" or (x: {}))
-       (import ./quicklisp-to-nix-output/collectors.nix {
-         inherit fetchurl;
-           "alexandria" = quicklisp-to-nix-packages."alexandria";
-           "closer-mop" = quicklisp-to-nix-packages."closer-mop";
-           "iterate" = quicklisp-to-nix-packages."iterate";
-           "lisp-unit2" = quicklisp-to-nix-packages."lisp-unit2";
-           "symbol-munger" = quicklisp-to-nix-packages."symbol-munger";
-       }));
-
-
-  "clx" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."clx" or (x: {}))
-       (import ./quicklisp-to-nix-output/clx.nix {
-         inherit fetchurl;
-           "fiasco" = quicklisp-to-nix-packages."fiasco";
-       }));
-
-
-  "clump" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."clump" or (x: {}))
-       (import ./quicklisp-to-nix-output/clump.nix {
-         inherit fetchurl;
-           "acclimation" = quicklisp-to-nix-packages."acclimation";
-           "clump-2-3-tree" = quicklisp-to-nix-packages."clump-2-3-tree";
-           "clump-binary-tree" = quicklisp-to-nix-packages."clump-binary-tree";
-       }));
-
-
-  "clss" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."clss" or (x: {}))
-       (import ./quicklisp-to-nix-output/clss.nix {
-         inherit fetchurl;
-           "array-utils" = quicklisp-to-nix-packages."array-utils";
-           "documentation-utils" = quicklisp-to-nix-packages."documentation-utils";
-           "plump" = quicklisp-to-nix-packages."plump";
-           "trivial-indent" = quicklisp-to-nix-packages."trivial-indent";
-       }));
-
-
-  "clsql-sqlite3" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."clsql-sqlite3" or (x: {}))
-       (import ./quicklisp-to-nix-output/clsql-sqlite3.nix {
-         inherit fetchurl;
-           "clsql" = quicklisp-to-nix-packages."clsql";
-           "clsql-uffi" = quicklisp-to-nix-packages."clsql-uffi";
-           "uffi" = quicklisp-to-nix-packages."uffi";
-       }));
-
-
-  "clsql-postgresql-socket" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."clsql-postgresql-socket" or (x: {}))
-       (import ./quicklisp-to-nix-output/clsql-postgresql-socket.nix {
-         inherit fetchurl;
-           "clsql" = quicklisp-to-nix-packages."clsql";
-           "md5" = quicklisp-to-nix-packages."md5";
-           "uffi" = quicklisp-to-nix-packages."uffi";
-       }));
-
-
-  "clsql-postgresql" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."clsql-postgresql" or (x: {}))
-       (import ./quicklisp-to-nix-output/clsql-postgresql.nix {
-         inherit fetchurl;
-           "clsql" = quicklisp-to-nix-packages."clsql";
-           "clsql-uffi" = quicklisp-to-nix-packages."clsql-uffi";
-           "uffi" = quicklisp-to-nix-packages."uffi";
-       }));
-
-
-  "clsql" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."clsql" or (x: {}))
-       (import ./quicklisp-to-nix-output/clsql.nix {
-         inherit fetchurl;
-           "uffi" = quicklisp-to-nix-packages."uffi";
-       }));
-
-
-  "closure-html" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."closure-html" or (x: {}))
-       (import ./quicklisp-to-nix-output/closure-html.nix {
-         inherit fetchurl;
-           "alexandria" = quicklisp-to-nix-packages."alexandria";
-           "babel" = quicklisp-to-nix-packages."babel";
-           "closure-common" = quicklisp-to-nix-packages."closure-common";
-           "flexi-streams" = quicklisp-to-nix-packages."flexi-streams";
-           "trivial-features" = quicklisp-to-nix-packages."trivial-features";
-           "trivial-gray-streams" = quicklisp-to-nix-packages."trivial-gray-streams";
-       }));
-
-
-  "closure-common" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."closure-common" or (x: {}))
-       (import ./quicklisp-to-nix-output/closure-common.nix {
-         inherit fetchurl;
-           "alexandria" = quicklisp-to-nix-packages."alexandria";
-           "babel" = quicklisp-to-nix-packages."babel";
-           "trivial-features" = quicklisp-to-nix-packages."trivial-features";
-           "trivial-gray-streams" = quicklisp-to-nix-packages."trivial-gray-streams";
-       }));
-
-
-  "closer-mop" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."closer-mop" or (x: {}))
-       (import ./quicklisp-to-nix-output/closer-mop.nix {
-         inherit fetchurl;
-       }));
-
-
-  "clfswm" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."clfswm" or (x: {}))
-       (import ./quicklisp-to-nix-output/clfswm.nix {
-         inherit fetchurl;
-           "clx" = quicklisp-to-nix-packages."clx";
-       }));
-
-
-  "classowary" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."classowary" or (x: {}))
-       (import ./quicklisp-to-nix-output/classowary.nix {
-         inherit fetchurl;
-           "documentation-utils" = quicklisp-to-nix-packages."documentation-utils";
-           "trivial-indent" = quicklisp-to-nix-packages."trivial-indent";
-       }));
-
-
-  "clack" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."clack" or (x: {}))
-       (import ./quicklisp-to-nix-output/clack.nix {
-         inherit fetchurl;
-           "alexandria" = quicklisp-to-nix-packages."alexandria";
-           "bordeaux-threads" = quicklisp-to-nix-packages."bordeaux-threads";
-           "ironclad" = quicklisp-to-nix-packages."ironclad";
-           "lack" = quicklisp-to-nix-packages."lack";
-           "lack-component" = quicklisp-to-nix-packages."lack-component";
-           "lack-middleware-backtrace" = quicklisp-to-nix-packages."lack-middleware-backtrace";
-           "lack-util" = quicklisp-to-nix-packages."lack-util";
-           "split-sequence" = quicklisp-to-nix-packages."split-sequence";
-           "uiop" = quicklisp-to-nix-packages."uiop";
-           "usocket" = quicklisp-to-nix-packages."usocket";
-       }));
-
-
-  "cl-who" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."cl-who" or (x: {}))
-       (import ./quicklisp-to-nix-output/cl-who.nix {
-         inherit fetchurl;
-           "flexi-streams" = quicklisp-to-nix-packages."flexi-streams";
-       }));
-
-
-  "cl-webkit2" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."cl-webkit2" or (x: {}))
-       (import ./quicklisp-to-nix-output/cl-webkit2.nix {
-         inherit fetchurl;
-           "alexandria" = quicklisp-to-nix-packages."alexandria";
-           "babel" = quicklisp-to-nix-packages."babel";
-           "bordeaux-threads" = quicklisp-to-nix-packages."bordeaux-threads";
-           "cffi" = quicklisp-to-nix-packages."cffi";
-           "cl-cffi-gtk" = quicklisp-to-nix-packages."cl-cffi-gtk";
-           "cl-cffi-gtk-cairo" = quicklisp-to-nix-packages."cl-cffi-gtk-cairo";
-           "cl-cffi-gtk-gdk" = quicklisp-to-nix-packages."cl-cffi-gtk-gdk";
-           "cl-cffi-gtk-gdk-pixbuf" = quicklisp-to-nix-packages."cl-cffi-gtk-gdk-pixbuf";
-           "cl-cffi-gtk-gio" = quicklisp-to-nix-packages."cl-cffi-gtk-gio";
-           "cl-cffi-gtk-glib" = quicklisp-to-nix-packages."cl-cffi-gtk-glib";
-           "cl-cffi-gtk-gobject" = quicklisp-to-nix-packages."cl-cffi-gtk-gobject";
-           "cl-cffi-gtk-pango" = quicklisp-to-nix-packages."cl-cffi-gtk-pango";
-           "closer-mop" = quicklisp-to-nix-packages."closer-mop";
-           "iterate" = quicklisp-to-nix-packages."iterate";
-           "trivial-features" = quicklisp-to-nix-packages."trivial-features";
-           "trivial-garbage" = quicklisp-to-nix-packages."trivial-garbage";
-       }));
-
-
-  "cl-vectors" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."cl-vectors" or (x: {}))
-       (import ./quicklisp-to-nix-output/cl-vectors.nix {
-         inherit fetchurl;
-           "cl-aa" = quicklisp-to-nix-packages."cl-aa";
-           "cl-paths" = quicklisp-to-nix-packages."cl-paths";
-       }));
-
-
-  "cl-utilities" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."cl-utilities" or (x: {}))
-       (import ./quicklisp-to-nix-output/cl-utilities.nix {
-         inherit fetchurl;
-       }));
-
-
-  "cl-unification" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."cl-unification" or (x: {}))
-       (import ./quicklisp-to-nix-output/cl-unification.nix {
-         inherit fetchurl;
-       }));
-
-
-  "cl-unicode" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."cl-unicode" or (x: {}))
-       (import ./quicklisp-to-nix-output/cl-unicode.nix {
-         inherit fetchurl;
-           "cl-ppcre" = quicklisp-to-nix-packages."cl-ppcre";
-           "flexi-streams" = quicklisp-to-nix-packages."flexi-streams";
-       }));
-
-
-  "cl-typesetting" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."cl-typesetting" or (x: {}))
-       (import ./quicklisp-to-nix-output/cl-typesetting.nix {
-         inherit fetchurl;
-           "cl-pdf" = quicklisp-to-nix-packages."cl-pdf";
-           "iterate" = quicklisp-to-nix-packages."iterate";
-           "zpb-ttf" = quicklisp-to-nix-packages."zpb-ttf";
-       }));
-
-
-  "cl-test-more" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."cl-test-more" or (x: {}))
-       (import ./quicklisp-to-nix-output/cl-test-more.nix {
-         inherit fetchurl;
-           "alexandria" = quicklisp-to-nix-packages."alexandria";
-           "anaphora" = quicklisp-to-nix-packages."anaphora";
-           "cl-ansi-text" = quicklisp-to-nix-packages."cl-ansi-text";
-           "cl-colors" = quicklisp-to-nix-packages."cl-colors";
-           "cl-colors2" = quicklisp-to-nix-packages."cl-colors2";
-           "cl-ppcre" = quicklisp-to-nix-packages."cl-ppcre";
-           "let-plus" = quicklisp-to-nix-packages."let-plus";
-           "prove" = quicklisp-to-nix-packages."prove";
-       }));
-
-
-  "cl-syslog" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."cl-syslog" or (x: {}))
-       (import ./quicklisp-to-nix-output/cl-syslog.nix {
-         inherit fetchurl;
-           "alexandria" = quicklisp-to-nix-packages."alexandria";
-           "babel" = quicklisp-to-nix-packages."babel";
-           "cffi" = quicklisp-to-nix-packages."cffi";
-           "global-vars" = quicklisp-to-nix-packages."global-vars";
-           "local-time" = quicklisp-to-nix-packages."local-time";
-           "split-sequence" = quicklisp-to-nix-packages."split-sequence";
-           "trivial-features" = quicklisp-to-nix-packages."trivial-features";
-           "usocket" = quicklisp-to-nix-packages."usocket";
-       }));
-
-
-  "cl-syntax-markup" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."cl-syntax-markup" or (x: {}))
-       (import ./quicklisp-to-nix-output/cl-syntax-markup.nix {
-         inherit fetchurl;
-           "cl-markup" = quicklisp-to-nix-packages."cl-markup";
-           "cl-syntax" = quicklisp-to-nix-packages."cl-syntax";
-           "named-readtables" = quicklisp-to-nix-packages."named-readtables";
-           "trivial-types" = quicklisp-to-nix-packages."trivial-types";
-       }));
-
-
-  "cl-syntax-anonfun" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."cl-syntax-anonfun" or (x: {}))
-       (import ./quicklisp-to-nix-output/cl-syntax-anonfun.nix {
-         inherit fetchurl;
-           "cl-anonfun" = quicklisp-to-nix-packages."cl-anonfun";
-           "cl-syntax" = quicklisp-to-nix-packages."cl-syntax";
-           "named-readtables" = quicklisp-to-nix-packages."named-readtables";
-           "trivial-types" = quicklisp-to-nix-packages."trivial-types";
-       }));
-
-
-  "cl-syntax-annot" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."cl-syntax-annot" or (x: {}))
-       (import ./quicklisp-to-nix-output/cl-syntax-annot.nix {
-         inherit fetchurl;
-           "alexandria" = quicklisp-to-nix-packages."alexandria";
-           "cl-annot" = quicklisp-to-nix-packages."cl-annot";
-           "cl-syntax" = quicklisp-to-nix-packages."cl-syntax";
-           "named-readtables" = quicklisp-to-nix-packages."named-readtables";
-           "trivial-types" = quicklisp-to-nix-packages."trivial-types";
-       }));
-
-
-  "cl-syntax" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."cl-syntax" or (x: {}))
-       (import ./quicklisp-to-nix-output/cl-syntax.nix {
-         inherit fetchurl;
-           "named-readtables" = quicklisp-to-nix-packages."named-readtables";
-           "trivial-types" = quicklisp-to-nix-packages."trivial-types";
-       }));
-
-
-  "cl-svg" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."cl-svg" or (x: {}))
-       (import ./quicklisp-to-nix-output/cl-svg.nix {
-         inherit fetchurl;
-       }));
-
-
-  "cl-store" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."cl-store" or (x: {}))
-       (import ./quicklisp-to-nix-output/cl-store.nix {
-         inherit fetchurl;
-           "rt" = quicklisp-to-nix-packages."rt";
-       }));
-
-
-  "cl-speedy-queue" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."cl-speedy-queue" or (x: {}))
-       (import ./quicklisp-to-nix-output/cl-speedy-queue.nix {
-         inherit fetchurl;
-       }));
-
-
-  "cl-smtp" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."cl-smtp" or (x: {}))
-       (import ./quicklisp-to-nix-output/cl-smtp.nix {
-         inherit fetchurl;
-           "alexandria" = quicklisp-to-nix-packages."alexandria";
-           "babel" = quicklisp-to-nix-packages."babel";
-           "bordeaux-threads" = quicklisp-to-nix-packages."bordeaux-threads";
-           "cffi" = quicklisp-to-nix-packages."cffi";
-           "cl_plus_ssl" = quicklisp-to-nix-packages."cl_plus_ssl";
-           "cl-base64" = quicklisp-to-nix-packages."cl-base64";
-           "flexi-streams" = quicklisp-to-nix-packages."flexi-streams";
-           "split-sequence" = quicklisp-to-nix-packages."split-sequence";
-           "trivial-features" = quicklisp-to-nix-packages."trivial-features";
-           "trivial-garbage" = quicklisp-to-nix-packages."trivial-garbage";
-           "trivial-gray-streams" = quicklisp-to-nix-packages."trivial-gray-streams";
-           "usocket" = quicklisp-to-nix-packages."usocket";
-       }));
-
-
-  "cl-smt-lib" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."cl-smt-lib" or (x: {}))
-       (import ./quicklisp-to-nix-output/cl-smt-lib.nix {
-         inherit fetchurl;
-           "asdf-package-system" = quicklisp-to-nix-packages."asdf-package-system";
-           "named-readtables" = quicklisp-to-nix-packages."named-readtables";
-           "trivial-gray-streams" = quicklisp-to-nix-packages."trivial-gray-streams";
-       }));
-
-
-  "cl-slice" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."cl-slice" or (x: {}))
-       (import ./quicklisp-to-nix-output/cl-slice.nix {
-         inherit fetchurl;
-           "alexandria" = quicklisp-to-nix-packages."alexandria";
-           "anaphora" = quicklisp-to-nix-packages."anaphora";
-           "clunit" = quicklisp-to-nix-packages."clunit";
-           "let-plus" = quicklisp-to-nix-packages."let-plus";
-       }));
-
-
-  "cl-shellwords" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."cl-shellwords" or (x: {}))
-       (import ./quicklisp-to-nix-output/cl-shellwords.nix {
-         inherit fetchurl;
-           "cl-ppcre" = quicklisp-to-nix-packages."cl-ppcre";
-       }));
-
-
-  "cl-reexport" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."cl-reexport" or (x: {}))
-       (import ./quicklisp-to-nix-output/cl-reexport.nix {
-         inherit fetchurl;
-           "alexandria" = quicklisp-to-nix-packages."alexandria";
-       }));
-
-
-  "cl-qprint" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."cl-qprint" or (x: {}))
-       (import ./quicklisp-to-nix-output/cl-qprint.nix {
-         inherit fetchurl;
-           "flexi-streams" = quicklisp-to-nix-packages."flexi-streams";
-           "trivial-gray-streams" = quicklisp-to-nix-packages."trivial-gray-streams";
-       }));
-
-
-  "cl-qrencode" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."cl-qrencode" or (x: {}))
-       (import ./quicklisp-to-nix-output/cl-qrencode.nix {
-         inherit fetchurl;
-           "salza2" = quicklisp-to-nix-packages."salza2";
-           "trivial-gray-streams" = quicklisp-to-nix-packages."trivial-gray-streams";
-           "zpng" = quicklisp-to-nix-packages."zpng";
-       }));
-
-
-  "cl-protobufs" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."cl-protobufs" or (x: {}))
-       (import ./quicklisp-to-nix-output/cl-protobufs.nix {
-         inherit fetchurl;
-           "alexandria" = quicklisp-to-nix-packages."alexandria";
-           "asdf" = quicklisp-to-nix-packages."asdf";
-           "babel" = quicklisp-to-nix-packages."babel";
-           "closer-mop" = quicklisp-to-nix-packages."closer-mop";
-           "trivial-features" = quicklisp-to-nix-packages."trivial-features";
-           "trivial-garbage" = quicklisp-to-nix-packages."trivial-garbage";
-       }));
-
-
-  "cl-prevalence" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."cl-prevalence" or (x: {}))
-       (import ./quicklisp-to-nix-output/cl-prevalence.nix {
-         inherit fetchurl;
-           "alexandria" = quicklisp-to-nix-packages."alexandria";
-           "bordeaux-threads" = quicklisp-to-nix-packages."bordeaux-threads";
-           "s-sysdeps" = quicklisp-to-nix-packages."s-sysdeps";
-           "s-xml" = quicklisp-to-nix-packages."s-xml";
-           "split-sequence" = quicklisp-to-nix-packages."split-sequence";
-           "usocket" = quicklisp-to-nix-packages."usocket";
-           "usocket-server" = quicklisp-to-nix-packages."usocket-server";
-       }));
-
-
-  "cl-ppcre-unicode" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."cl-ppcre-unicode" or (x: {}))
-       (import ./quicklisp-to-nix-output/cl-ppcre-unicode.nix {
-         inherit fetchurl;
-           "cl-ppcre" = quicklisp-to-nix-packages."cl-ppcre";
-           "cl-ppcre-test" = quicklisp-to-nix-packages."cl-ppcre-test";
-           "cl-unicode" = quicklisp-to-nix-packages."cl-unicode";
-           "flexi-streams" = quicklisp-to-nix-packages."flexi-streams";
-       }));
-
-
-  "cl-ppcre-template" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."cl-ppcre-template" or (x: {}))
-       (import ./quicklisp-to-nix-output/cl-ppcre-template.nix {
-         inherit fetchurl;
-           "cl-ppcre" = quicklisp-to-nix-packages."cl-ppcre";
-           "cl-unification" = quicklisp-to-nix-packages."cl-unification";
-       }));
-
-
-  "cl-ppcre" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."cl-ppcre" or (x: {}))
-       (import ./quicklisp-to-nix-output/cl-ppcre.nix {
-         inherit fetchurl;
-           "flexi-streams" = quicklisp-to-nix-packages."flexi-streams";
-       }));
-
-
-  "cl-pdf" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."cl-pdf" or (x: {}))
-       (import ./quicklisp-to-nix-output/cl-pdf.nix {
-         inherit fetchurl;
-           "iterate" = quicklisp-to-nix-packages."iterate";
-           "uiop" = quicklisp-to-nix-packages."uiop";
-           "zpb-ttf" = quicklisp-to-nix-packages."zpb-ttf";
-       }));
-
-
-  "cl-pattern" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."cl-pattern" or (x: {}))
-       (import ./quicklisp-to-nix-output/cl-pattern.nix {
-         inherit fetchurl;
-           "alexandria" = quicklisp-to-nix-packages."alexandria";
-           "cl-annot" = quicklisp-to-nix-packages."cl-annot";
-           "cl-syntax" = quicklisp-to-nix-packages."cl-syntax";
-           "cl-syntax-annot" = quicklisp-to-nix-packages."cl-syntax-annot";
-           "named-readtables" = quicklisp-to-nix-packages."named-readtables";
-           "trivial-types" = quicklisp-to-nix-packages."trivial-types";
-       }));
-
-
-  "cl-paths-ttf" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."cl-paths-ttf" or (x: {}))
-       (import ./quicklisp-to-nix-output/cl-paths-ttf.nix {
-         inherit fetchurl;
-           "cl-paths" = quicklisp-to-nix-packages."cl-paths";
-           "zpb-ttf" = quicklisp-to-nix-packages."zpb-ttf";
-       }));
-
-
-  "cl-mysql" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."cl-mysql" or (x: {}))
-       (import ./quicklisp-to-nix-output/cl-mysql.nix {
-         inherit fetchurl;
-           "alexandria" = quicklisp-to-nix-packages."alexandria";
-           "babel" = quicklisp-to-nix-packages."babel";
-           "cffi" = quicklisp-to-nix-packages."cffi";
-           "trivial-features" = quicklisp-to-nix-packages."trivial-features";
-       }));
-
-
-  "cl-mustache" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."cl-mustache" or (x: {}))
-       (import ./quicklisp-to-nix-output/cl-mustache.nix {
-         inherit fetchurl;
-           "uiop" = quicklisp-to-nix-packages."uiop";
-       }));
-
-
-  "cl-markup" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."cl-markup" or (x: {}))
-       (import ./quicklisp-to-nix-output/cl-markup.nix {
-         inherit fetchurl;
-       }));
-
-
-  "cl-locale" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."cl-locale" or (x: {}))
-       (import ./quicklisp-to-nix-output/cl-locale.nix {
-         inherit fetchurl;
-           "alexandria" = quicklisp-to-nix-packages."alexandria";
-           "anaphora" = quicklisp-to-nix-packages."anaphora";
-           "arnesi" = quicklisp-to-nix-packages."arnesi";
-           "cl-annot" = quicklisp-to-nix-packages."cl-annot";
-           "cl-syntax" = quicklisp-to-nix-packages."cl-syntax";
-           "cl-syntax-annot" = quicklisp-to-nix-packages."cl-syntax-annot";
-           "closer-mop" = quicklisp-to-nix-packages."closer-mop";
-           "collectors" = quicklisp-to-nix-packages."collectors";
-           "iterate" = quicklisp-to-nix-packages."iterate";
-           "named-readtables" = quicklisp-to-nix-packages."named-readtables";
-           "symbol-munger" = quicklisp-to-nix-packages."symbol-munger";
-           "trivial-types" = quicklisp-to-nix-packages."trivial-types";
-       }));
-
-
-  "cl-libuv" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."cl-libuv" or (x: {}))
-       (import ./quicklisp-to-nix-output/cl-libuv.nix {
-         inherit fetchurl;
-           "alexandria" = quicklisp-to-nix-packages."alexandria";
-           "babel" = quicklisp-to-nix-packages."babel";
-           "cffi" = quicklisp-to-nix-packages."cffi";
-           "cffi-grovel" = quicklisp-to-nix-packages."cffi-grovel";
-           "cffi-toolchain" = quicklisp-to-nix-packages."cffi-toolchain";
-           "trivial-features" = quicklisp-to-nix-packages."trivial-features";
-       }));
-
-
-  "cl-l10n" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."cl-l10n" or (x: {}))
-       (import ./quicklisp-to-nix-output/cl-l10n.nix {
-         inherit fetchurl;
-           "alexandria" = quicklisp-to-nix-packages."alexandria";
-           "babel" = quicklisp-to-nix-packages."babel";
-           "bordeaux-threads" = quicklisp-to-nix-packages."bordeaux-threads";
-           "cl-fad" = quicklisp-to-nix-packages."cl-fad";
-           "cl-l10n-cldr" = quicklisp-to-nix-packages."cl-l10n-cldr";
-           "cl-ppcre" = quicklisp-to-nix-packages."cl-ppcre";
-           "closer-mop" = quicklisp-to-nix-packages."closer-mop";
-           "closure-common" = quicklisp-to-nix-packages."closure-common";
-           "cxml" = quicklisp-to-nix-packages."cxml";
-           "flexi-streams" = quicklisp-to-nix-packages."flexi-streams";
-           "hu_dot_dwim_dot_stefil" = quicklisp-to-nix-packages."hu_dot_dwim_dot_stefil";
-           "iterate" = quicklisp-to-nix-packages."iterate";
-           "local-time" = quicklisp-to-nix-packages."local-time";
-           "metabang-bind" = quicklisp-to-nix-packages."metabang-bind";
-           "parse-number" = quicklisp-to-nix-packages."parse-number";
-           "puri" = quicklisp-to-nix-packages."puri";
-           "trivial-features" = quicklisp-to-nix-packages."trivial-features";
-           "trivial-gray-streams" = quicklisp-to-nix-packages."trivial-gray-streams";
-       }));
-
-
-  "cl-json" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."cl-json" or (x: {}))
-       (import ./quicklisp-to-nix-output/cl-json.nix {
-         inherit fetchurl;
-           "fiveam" = quicklisp-to-nix-packages."fiveam";
-       }));
-
-
-  "cl-jpeg" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."cl-jpeg" or (x: {}))
-       (import ./quicklisp-to-nix-output/cl-jpeg.nix {
-         inherit fetchurl;
-       }));
-
-
-  "cl-interpol" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."cl-interpol" or (x: {}))
-       (import ./quicklisp-to-nix-output/cl-interpol.nix {
-         inherit fetchurl;
-           "cl-ppcre" = quicklisp-to-nix-packages."cl-ppcre";
-           "cl-unicode" = quicklisp-to-nix-packages."cl-unicode";
-           "flexi-streams" = quicklisp-to-nix-packages."flexi-streams";
-           "named-readtables" = quicklisp-to-nix-packages."named-readtables";
-       }));
-
-
-  "cl-html5-parser" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."cl-html5-parser" or (x: {}))
-       (import ./quicklisp-to-nix-output/cl-html5-parser.nix {
-         inherit fetchurl;
-           "cl-ppcre" = quicklisp-to-nix-packages."cl-ppcre";
-           "flexi-streams" = quicklisp-to-nix-packages."flexi-streams";
-           "string-case" = quicklisp-to-nix-packages."string-case";
-           "trivial-gray-streams" = quicklisp-to-nix-packages."trivial-gray-streams";
-       }));
-
-
-  "cl-html-parse" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."cl-html-parse" or (x: {}))
-       (import ./quicklisp-to-nix-output/cl-html-parse.nix {
-         inherit fetchurl;
-       }));
-
-
-  "cl-html-diff" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."cl-html-diff" or (x: {}))
-       (import ./quicklisp-to-nix-output/cl-html-diff.nix {
-         inherit fetchurl;
-           "cl-difflib" = quicklisp-to-nix-packages."cl-difflib";
-       }));
-
-
-  "cl-hooks" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."cl-hooks" or (x: {}))
-       (import ./quicklisp-to-nix-output/cl-hooks.nix {
-         inherit fetchurl;
-           "alexandria" = quicklisp-to-nix-packages."alexandria";
-           "anaphora" = quicklisp-to-nix-packages."anaphora";
-           "closer-mop" = quicklisp-to-nix-packages."closer-mop";
-           "fiveam" = quicklisp-to-nix-packages."fiveam";
-           "let-plus" = quicklisp-to-nix-packages."let-plus";
-           "trivial-garbage" = quicklisp-to-nix-packages."trivial-garbage";
-       }));
-
-
-  "cl-heap" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."cl-heap" or (x: {}))
-       (import ./quicklisp-to-nix-output/cl-heap.nix {
-         inherit fetchurl;
-       }));
-
-
-  "cl-gobject-introspection" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."cl-gobject-introspection" or (x: {}))
-       (import ./quicklisp-to-nix-output/cl-gobject-introspection.nix {
-         inherit fetchurl;
-           "alexandria" = quicklisp-to-nix-packages."alexandria";
-           "babel" = quicklisp-to-nix-packages."babel";
-           "cffi" = quicklisp-to-nix-packages."cffi";
-           "iterate" = quicklisp-to-nix-packages."iterate";
-           "trivial-features" = quicklisp-to-nix-packages."trivial-features";
-           "trivial-garbage" = quicklisp-to-nix-packages."trivial-garbage";
-       }));
-
-
-  "cl-geometry" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."cl-geometry" or (x: {}))
-       (import ./quicklisp-to-nix-output/cl-geometry.nix {
-         inherit fetchurl;
-           "iterate" = quicklisp-to-nix-packages."iterate";
-           "trees" = quicklisp-to-nix-packages."trees";
-       }));
-
-
-  "cl-fuse-meta-fs" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."cl-fuse-meta-fs" or (x: {}))
-       (import ./quicklisp-to-nix-output/cl-fuse-meta-fs.nix {
-         inherit fetchurl;
-           "alexandria" = quicklisp-to-nix-packages."alexandria";
-           "babel" = quicklisp-to-nix-packages."babel";
-           "bordeaux-threads" = quicklisp-to-nix-packages."bordeaux-threads";
-           "cffi" = quicklisp-to-nix-packages."cffi";
-           "cffi-grovel" = quicklisp-to-nix-packages."cffi-grovel";
-           "cffi-toolchain" = quicklisp-to-nix-packages."cffi-toolchain";
-           "cl-fuse" = quicklisp-to-nix-packages."cl-fuse";
-           "cl-utilities" = quicklisp-to-nix-packages."cl-utilities";
-           "iterate" = quicklisp-to-nix-packages."iterate";
-           "pcall" = quicklisp-to-nix-packages."pcall";
-           "pcall-queue" = quicklisp-to-nix-packages."pcall-queue";
-           "trivial-backtrace" = quicklisp-to-nix-packages."trivial-backtrace";
-           "trivial-features" = quicklisp-to-nix-packages."trivial-features";
-           "trivial-utf-8" = quicklisp-to-nix-packages."trivial-utf-8";
-       }));
-
-
-  "cl-fuse" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."cl-fuse" or (x: {}))
-       (import ./quicklisp-to-nix-output/cl-fuse.nix {
-         inherit fetchurl;
-           "alexandria" = quicklisp-to-nix-packages."alexandria";
-           "babel" = quicklisp-to-nix-packages."babel";
-           "bordeaux-threads" = quicklisp-to-nix-packages."bordeaux-threads";
-           "cffi" = quicklisp-to-nix-packages."cffi";
-           "cffi-grovel" = quicklisp-to-nix-packages."cffi-grovel";
-           "cffi-toolchain" = quicklisp-to-nix-packages."cffi-toolchain";
-           "cl-utilities" = quicklisp-to-nix-packages."cl-utilities";
-           "iterate" = quicklisp-to-nix-packages."iterate";
-           "trivial-backtrace" = quicklisp-to-nix-packages."trivial-backtrace";
-           "trivial-features" = quicklisp-to-nix-packages."trivial-features";
-           "trivial-utf-8" = quicklisp-to-nix-packages."trivial-utf-8";
-       }));
-
-
-  "cl-fad" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."cl-fad" or (x: {}))
-       (import ./quicklisp-to-nix-output/cl-fad.nix {
-         inherit fetchurl;
-           "alexandria" = quicklisp-to-nix-packages."alexandria";
-           "bordeaux-threads" = quicklisp-to-nix-packages."bordeaux-threads";
-           "cl-ppcre" = quicklisp-to-nix-packages."cl-ppcre";
-           "unit-test" = quicklisp-to-nix-packages."unit-test";
-       }));
-
-
-  "cl-emb" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."cl-emb" or (x: {}))
-       (import ./quicklisp-to-nix-output/cl-emb.nix {
-         inherit fetchurl;
-           "cl-ppcre" = quicklisp-to-nix-packages."cl-ppcre";
-       }));
-
-
-  "cl-dot" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."cl-dot" or (x: {}))
-       (import ./quicklisp-to-nix-output/cl-dot.nix {
-         inherit fetchurl;
-           "uiop" = quicklisp-to-nix-packages."uiop";
-       }));
-
-
-  "cl-digraph" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."cl-digraph" or (x: {}))
-       (import ./quicklisp-to-nix-output/cl-digraph.nix {
-         inherit fetchurl;
-       }));
-
-
-  "cl-dbi" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."cl-dbi" or (x: {}))
-       (import ./quicklisp-to-nix-output/cl-dbi.nix {
-         inherit fetchurl;
-           "alexandria" = quicklisp-to-nix-packages."alexandria";
-           "bordeaux-threads" = quicklisp-to-nix-packages."bordeaux-threads";
-           "closer-mop" = quicklisp-to-nix-packages."closer-mop";
-           "dbi" = quicklisp-to-nix-packages."dbi";
-           "split-sequence" = quicklisp-to-nix-packages."split-sequence";
-       }));
-
-
-  "cl-custom-hash-table" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."cl-custom-hash-table" or (x: {}))
-       (import ./quicklisp-to-nix-output/cl-custom-hash-table.nix {
-         inherit fetchurl;
-       }));
-
-
-  "cl-cuda" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."cl-cuda" or (x: {}))
-       (import ./quicklisp-to-nix-output/cl-cuda.nix {
-         inherit fetchurl;
-           "alexandria" = quicklisp-to-nix-packages."alexandria";
-           "babel" = quicklisp-to-nix-packages."babel";
-           "cffi" = quicklisp-to-nix-packages."cffi";
-           "cffi-grovel" = quicklisp-to-nix-packages."cffi-grovel";
-           "cffi-toolchain" = quicklisp-to-nix-packages."cffi-toolchain";
-           "cl-annot" = quicklisp-to-nix-packages."cl-annot";
-           "cl-pattern" = quicklisp-to-nix-packages."cl-pattern";
-           "cl-ppcre" = quicklisp-to-nix-packages."cl-ppcre";
-           "cl-reexport" = quicklisp-to-nix-packages."cl-reexport";
-           "cl-syntax" = quicklisp-to-nix-packages."cl-syntax";
-           "cl-syntax-annot" = quicklisp-to-nix-packages."cl-syntax-annot";
-           "external-program" = quicklisp-to-nix-packages."external-program";
-           "named-readtables" = quicklisp-to-nix-packages."named-readtables";
-           "osicat" = quicklisp-to-nix-packages."osicat";
-           "split-sequence" = quicklisp-to-nix-packages."split-sequence";
-           "trivial-features" = quicklisp-to-nix-packages."trivial-features";
-           "trivial-types" = quicklisp-to-nix-packages."trivial-types";
-       }));
-
-
-  "cl-csv" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."cl-csv" or (x: {}))
-       (import ./quicklisp-to-nix-output/cl-csv.nix {
-         inherit fetchurl;
-           "alexandria" = quicklisp-to-nix-packages."alexandria";
-           "cl-interpol" = quicklisp-to-nix-packages."cl-interpol";
-           "cl-ppcre" = quicklisp-to-nix-packages."cl-ppcre";
-           "cl-unicode" = quicklisp-to-nix-packages."cl-unicode";
-           "flexi-streams" = quicklisp-to-nix-packages."flexi-streams";
-           "iterate" = quicklisp-to-nix-packages."iterate";
-           "lisp-unit2" = quicklisp-to-nix-packages."lisp-unit2";
-           "named-readtables" = quicklisp-to-nix-packages."named-readtables";
-       }));
-
-
-  "cl-css" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."cl-css" or (x: {}))
-       (import ./quicklisp-to-nix-output/cl-css.nix {
-         inherit fetchurl;
-       }));
-
-
-  "cl-cookie" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."cl-cookie" or (x: {}))
-       (import ./quicklisp-to-nix-output/cl-cookie.nix {
-         inherit fetchurl;
-           "alexandria" = quicklisp-to-nix-packages."alexandria";
-           "babel" = quicklisp-to-nix-packages."babel";
-           "cl-ppcre" = quicklisp-to-nix-packages."cl-ppcre";
-           "cl-utilities" = quicklisp-to-nix-packages."cl-utilities";
-           "local-time" = quicklisp-to-nix-packages."local-time";
-           "proc-parse" = quicklisp-to-nix-packages."proc-parse";
-           "quri" = quicklisp-to-nix-packages."quri";
-           "split-sequence" = quicklisp-to-nix-packages."split-sequence";
-           "trivial-features" = quicklisp-to-nix-packages."trivial-features";
-       }));
-
-
-  "cl-containers" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."cl-containers" or (x: {}))
-       (import ./quicklisp-to-nix-output/cl-containers.nix {
-         inherit fetchurl;
-           "asdf-system-connections" = quicklisp-to-nix-packages."asdf-system-connections";
-           "metatilities-base" = quicklisp-to-nix-packages."metatilities-base";
-           "moptilities" = quicklisp-to-nix-packages."moptilities";
-       }));
-
-
-  "cl-colors" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."cl-colors" or (x: {}))
-       (import ./quicklisp-to-nix-output/cl-colors.nix {
-         inherit fetchurl;
-           "alexandria" = quicklisp-to-nix-packages."alexandria";
-           "anaphora" = quicklisp-to-nix-packages."anaphora";
-           "let-plus" = quicklisp-to-nix-packages."let-plus";
-           "lift" = quicklisp-to-nix-packages."lift";
-       }));
-
-
-  "cl-cli" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."cl-cli" or (x: {}))
-       (import ./quicklisp-to-nix-output/cl-cli.nix {
-         inherit fetchurl;
-           "split-sequence" = quicklisp-to-nix-packages."split-sequence";
-       }));
-
-
-  "cl-cffi-gtk" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."cl-cffi-gtk" or (x: {}))
-       (import ./quicklisp-to-nix-output/cl-cffi-gtk.nix {
-         inherit fetchurl;
-           "alexandria" = quicklisp-to-nix-packages."alexandria";
-           "babel" = quicklisp-to-nix-packages."babel";
-           "bordeaux-threads" = quicklisp-to-nix-packages."bordeaux-threads";
-           "cffi" = quicklisp-to-nix-packages."cffi";
-           "cl-cffi-gtk-cairo" = quicklisp-to-nix-packages."cl-cffi-gtk-cairo";
-           "cl-cffi-gtk-gdk" = quicklisp-to-nix-packages."cl-cffi-gtk-gdk";
-           "cl-cffi-gtk-gdk-pixbuf" = quicklisp-to-nix-packages."cl-cffi-gtk-gdk-pixbuf";
-           "cl-cffi-gtk-gio" = quicklisp-to-nix-packages."cl-cffi-gtk-gio";
-           "cl-cffi-gtk-glib" = quicklisp-to-nix-packages."cl-cffi-gtk-glib";
-           "cl-cffi-gtk-gobject" = quicklisp-to-nix-packages."cl-cffi-gtk-gobject";
-           "cl-cffi-gtk-pango" = quicklisp-to-nix-packages."cl-cffi-gtk-pango";
-           "closer-mop" = quicklisp-to-nix-packages."closer-mop";
-           "iterate" = quicklisp-to-nix-packages."iterate";
-           "trivial-features" = quicklisp-to-nix-packages."trivial-features";
-           "trivial-garbage" = quicklisp-to-nix-packages."trivial-garbage";
-       }));
-
-
-  "cl-base64" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."cl-base64" or (x: {}))
-       (import ./quicklisp-to-nix-output/cl-base64.nix {
-         inherit fetchurl;
-           "kmrcl" = quicklisp-to-nix-packages."kmrcl";
-           "ptester" = quicklisp-to-nix-packages."ptester";
-       }));
-
-
-  "cl-async-ssl" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."cl-async-ssl" or (x: {}))
-       (import ./quicklisp-to-nix-output/cl-async-ssl.nix {
-         inherit fetchurl;
-           "alexandria" = quicklisp-to-nix-packages."alexandria";
-           "babel" = quicklisp-to-nix-packages."babel";
-           "bordeaux-threads" = quicklisp-to-nix-packages."bordeaux-threads";
-           "cffi" = quicklisp-to-nix-packages."cffi";
-           "cffi-grovel" = quicklisp-to-nix-packages."cffi-grovel";
-           "cffi-toolchain" = quicklisp-to-nix-packages."cffi-toolchain";
-           "cl-async" = quicklisp-to-nix-packages."cl-async";
-           "cl-async-base" = quicklisp-to-nix-packages."cl-async-base";
-           "cl-async-util" = quicklisp-to-nix-packages."cl-async-util";
-           "cl-libuv" = quicklisp-to-nix-packages."cl-libuv";
-           "cl-ppcre" = quicklisp-to-nix-packages."cl-ppcre";
-           "fast-io" = quicklisp-to-nix-packages."fast-io";
-           "static-vectors" = quicklisp-to-nix-packages."static-vectors";
-           "trivial-features" = quicklisp-to-nix-packages."trivial-features";
-           "trivial-gray-streams" = quicklisp-to-nix-packages."trivial-gray-streams";
-           "vom" = quicklisp-to-nix-packages."vom";
-       }));
-
-
-  "cl-async-repl" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."cl-async-repl" or (x: {}))
-       (import ./quicklisp-to-nix-output/cl-async-repl.nix {
-         inherit fetchurl;
-           "alexandria" = quicklisp-to-nix-packages."alexandria";
-           "babel" = quicklisp-to-nix-packages."babel";
-           "bordeaux-threads" = quicklisp-to-nix-packages."bordeaux-threads";
-           "cffi" = quicklisp-to-nix-packages."cffi";
-           "cffi-grovel" = quicklisp-to-nix-packages."cffi-grovel";
-           "cffi-toolchain" = quicklisp-to-nix-packages."cffi-toolchain";
-           "cl-async" = quicklisp-to-nix-packages."cl-async";
-           "cl-async-base" = quicklisp-to-nix-packages."cl-async-base";
-           "cl-async-util" = quicklisp-to-nix-packages."cl-async-util";
-           "cl-libuv" = quicklisp-to-nix-packages."cl-libuv";
-           "cl-ppcre" = quicklisp-to-nix-packages."cl-ppcre";
-           "fast-io" = quicklisp-to-nix-packages."fast-io";
-           "static-vectors" = quicklisp-to-nix-packages."static-vectors";
-           "trivial-features" = quicklisp-to-nix-packages."trivial-features";
-           "trivial-gray-streams" = quicklisp-to-nix-packages."trivial-gray-streams";
-           "vom" = quicklisp-to-nix-packages."vom";
-       }));
-
-
-  "cl-async-base" = quicklisp-to-nix-packages."cl-async";
-
-
-  "cl-async" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."cl-async" or (x: {}))
-       (import ./quicklisp-to-nix-output/cl-async.nix {
-         inherit fetchurl;
-           "alexandria" = quicklisp-to-nix-packages."alexandria";
-           "babel" = quicklisp-to-nix-packages."babel";
-           "bordeaux-threads" = quicklisp-to-nix-packages."bordeaux-threads";
-           "cffi" = quicklisp-to-nix-packages."cffi";
-           "cffi-grovel" = quicklisp-to-nix-packages."cffi-grovel";
-           "cffi-toolchain" = quicklisp-to-nix-packages."cffi-toolchain";
-           "cl-libuv" = quicklisp-to-nix-packages."cl-libuv";
-           "cl-ppcre" = quicklisp-to-nix-packages."cl-ppcre";
-           "fast-io" = quicklisp-to-nix-packages."fast-io";
-           "static-vectors" = quicklisp-to-nix-packages."static-vectors";
-           "trivial-features" = quicklisp-to-nix-packages."trivial-features";
-           "trivial-gray-streams" = quicklisp-to-nix-packages."trivial-gray-streams";
-           "uiop" = quicklisp-to-nix-packages."uiop";
-           "vom" = quicklisp-to-nix-packages."vom";
-       }));
-
-
-  "cl-ansi-text" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."cl-ansi-text" or (x: {}))
-       (import ./quicklisp-to-nix-output/cl-ansi-text.nix {
-         inherit fetchurl;
-           "alexandria" = quicklisp-to-nix-packages."alexandria";
-           "cl-colors2" = quicklisp-to-nix-packages."cl-colors2";
-           "cl-ppcre" = quicklisp-to-nix-packages."cl-ppcre";
-       }));
-
-
-  "cl-annot" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."cl-annot" or (x: {}))
-       (import ./quicklisp-to-nix-output/cl-annot.nix {
-         inherit fetchurl;
-           "alexandria" = quicklisp-to-nix-packages."alexandria";
-       }));
-
-
-  "cl_plus_ssl" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."cl_plus_ssl" or (x: {}))
-       (import ./quicklisp-to-nix-output/cl_plus_ssl.nix {
-         inherit fetchurl;
-           "alexandria" = quicklisp-to-nix-packages."alexandria";
-           "babel" = quicklisp-to-nix-packages."babel";
-           "bordeaux-threads" = quicklisp-to-nix-packages."bordeaux-threads";
-           "cffi" = quicklisp-to-nix-packages."cffi";
-           "flexi-streams" = quicklisp-to-nix-packages."flexi-streams";
-           "split-sequence" = quicklisp-to-nix-packages."split-sequence";
-           "trivial-features" = quicklisp-to-nix-packages."trivial-features";
-           "trivial-garbage" = quicklisp-to-nix-packages."trivial-garbage";
-           "trivial-gray-streams" = quicklisp-to-nix-packages."trivial-gray-streams";
-           "uiop" = quicklisp-to-nix-packages."uiop";
-           "usocket" = quicklisp-to-nix-packages."usocket";
-       }));
-
-
-  "circular-streams" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."circular-streams" or (x: {}))
-       (import ./quicklisp-to-nix-output/circular-streams.nix {
-         inherit fetchurl;
-           "alexandria" = quicklisp-to-nix-packages."alexandria";
-           "babel" = quicklisp-to-nix-packages."babel";
-           "cffi" = quicklisp-to-nix-packages."cffi";
-           "cffi-grovel" = quicklisp-to-nix-packages."cffi-grovel";
-           "cffi-toolchain" = quicklisp-to-nix-packages."cffi-toolchain";
-           "fast-io" = quicklisp-to-nix-packages."fast-io";
-           "static-vectors" = quicklisp-to-nix-packages."static-vectors";
-           "trivial-features" = quicklisp-to-nix-packages."trivial-features";
-           "trivial-gray-streams" = quicklisp-to-nix-packages."trivial-gray-streams";
-       }));
-
-
-  "chunga" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."chunga" or (x: {}))
-       (import ./quicklisp-to-nix-output/chunga.nix {
-         inherit fetchurl;
-           "trivial-gray-streams" = quicklisp-to-nix-packages."trivial-gray-streams";
-       }));
-
-
-  "chipz" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."chipz" or (x: {}))
-       (import ./quicklisp-to-nix-output/chipz.nix {
-         inherit fetchurl;
-       }));
-
-
-  "check-it" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."check-it" or (x: {}))
-       (import ./quicklisp-to-nix-output/check-it.nix {
-         inherit fetchurl;
-           "alexandria" = quicklisp-to-nix-packages."alexandria";
-           "closer-mop" = quicklisp-to-nix-packages."closer-mop";
-           "optima" = quicklisp-to-nix-packages."optima";
-           "stefil" = quicklisp-to-nix-packages."stefil";
-       }));
-
-
-  "chanl" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."chanl" or (x: {}))
-       (import ./quicklisp-to-nix-output/chanl.nix {
-         inherit fetchurl;
-           "alexandria" = quicklisp-to-nix-packages."alexandria";
-           "bordeaux-threads" = quicklisp-to-nix-packages."bordeaux-threads";
-           "fiveam" = quicklisp-to-nix-packages."fiveam";
-       }));
-
-
-  "cffi-uffi-compat" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."cffi-uffi-compat" or (x: {}))
-       (import ./quicklisp-to-nix-output/cffi-uffi-compat.nix {
-         inherit fetchurl;
-           "alexandria" = quicklisp-to-nix-packages."alexandria";
-           "babel" = quicklisp-to-nix-packages."babel";
-           "cffi" = quicklisp-to-nix-packages."cffi";
-           "trivial-features" = quicklisp-to-nix-packages."trivial-features";
-       }));
-
-
-  "cffi-grovel" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."cffi-grovel" or (x: {}))
-       (import ./quicklisp-to-nix-output/cffi-grovel.nix {
-         inherit fetchurl;
-           "alexandria" = quicklisp-to-nix-packages."alexandria";
-           "babel" = quicklisp-to-nix-packages."babel";
-           "cffi" = quicklisp-to-nix-packages."cffi";
-           "cffi-toolchain" = quicklisp-to-nix-packages."cffi-toolchain";
-           "trivial-features" = quicklisp-to-nix-packages."trivial-features";
-       }));
-
-
-  "cffi" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."cffi" or (x: {}))
-       (import ./quicklisp-to-nix-output/cffi.nix {
-         inherit fetchurl;
-           "alexandria" = quicklisp-to-nix-packages."alexandria";
-           "babel" = quicklisp-to-nix-packages."babel";
-           "cl-json" = quicklisp-to-nix-packages."cl-json";
-           "cl-ppcre" = quicklisp-to-nix-packages."cl-ppcre";
-           "trivial-features" = quicklisp-to-nix-packages."trivial-features";
-           "uiop" = quicklisp-to-nix-packages."uiop";
-       }));
-
-
-  "calispel" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."calispel" or (x: {}))
-       (import ./quicklisp-to-nix-output/calispel.nix {
-         inherit fetchurl;
-           "alexandria" = quicklisp-to-nix-packages."alexandria";
-           "bordeaux-threads" = quicklisp-to-nix-packages."bordeaux-threads";
-           "eager-future2" = quicklisp-to-nix-packages."eager-future2";
-           "jpl-queues" = quicklisp-to-nix-packages."jpl-queues";
-           "jpl-util" = quicklisp-to-nix-packages."jpl-util";
-       }));
-
-
-  "bordeaux-threads" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."bordeaux-threads" or (x: {}))
-       (import ./quicklisp-to-nix-output/bordeaux-threads.nix {
-         inherit fetchurl;
-           "alexandria" = quicklisp-to-nix-packages."alexandria";
-           "fiveam" = quicklisp-to-nix-packages."fiveam";
-       }));
-
-
-  "blackbird" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."blackbird" or (x: {}))
-       (import ./quicklisp-to-nix-output/blackbird.nix {
-         inherit fetchurl;
-           "vom" = quicklisp-to-nix-packages."vom";
-       }));
-
-
-  "binpack" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."binpack" or (x: {}))
-       (import ./quicklisp-to-nix-output/binpack.nix {
-         inherit fetchurl;
-           "alexandria" = quicklisp-to-nix-packages."alexandria";
-       }));
-
-
-  "binomial-heap" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."binomial-heap" or (x: {}))
-       (import ./quicklisp-to-nix-output/binomial-heap.nix {
-         inherit fetchurl;
-       }));
-
-
-  "babel" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."babel" or (x: {}))
-       (import ./quicklisp-to-nix-output/babel.nix {
-         inherit fetchurl;
-           "alexandria" = quicklisp-to-nix-packages."alexandria";
-           "trivial-features" = quicklisp-to-nix-packages."trivial-features";
-       }));
-
-
-  "asdf-system-connections" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."asdf-system-connections" or (x: {}))
-       (import ./quicklisp-to-nix-output/asdf-system-connections.nix {
-         inherit fetchurl;
-       }));
-
-
-  "array-utils" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."array-utils" or (x: {}))
-       (import ./quicklisp-to-nix-output/array-utils.nix {
-         inherit fetchurl;
-       }));
-
-
-  "array-operations" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."array-operations" or (x: {}))
-       (import ./quicklisp-to-nix-output/array-operations.nix {
-         inherit fetchurl;
-           "alexandria" = quicklisp-to-nix-packages."alexandria";
-           "anaphora" = quicklisp-to-nix-packages."anaphora";
-           "clunit2" = quicklisp-to-nix-packages."clunit2";
-           "let-plus" = quicklisp-to-nix-packages."let-plus";
-       }));
-
-
-  "arnesi" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."arnesi" or (x: {}))
-       (import ./quicklisp-to-nix-output/arnesi.nix {
-         inherit fetchurl;
-           "alexandria" = quicklisp-to-nix-packages."alexandria";
-           "cl-ppcre" = quicklisp-to-nix-packages."cl-ppcre";
-           "closer-mop" = quicklisp-to-nix-packages."closer-mop";
-           "collectors" = quicklisp-to-nix-packages."collectors";
-           "iterate" = quicklisp-to-nix-packages."iterate";
-           "swank" = quicklisp-to-nix-packages."swank";
-           "symbol-munger" = quicklisp-to-nix-packages."symbol-munger";
-       }));
-
-
-  "anaphora" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."anaphora" or (x: {}))
-       (import ./quicklisp-to-nix-output/anaphora.nix {
-         inherit fetchurl;
-           "rt" = quicklisp-to-nix-packages."rt";
-       }));
-
-
-  "alexandria" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."alexandria" or (x: {}))
-       (import ./quicklisp-to-nix-output/alexandria.nix {
-         inherit fetchurl;
-       }));
-
-
-  "acclimation" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."acclimation" or (x: {}))
-       (import ./quicklisp-to-nix-output/acclimation.nix {
-         inherit fetchurl;
-       }));
-
-
-  "access" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."access" or (x: {}))
-       (import ./quicklisp-to-nix-output/access.nix {
-         inherit fetchurl;
-           "alexandria" = quicklisp-to-nix-packages."alexandria";
-           "anaphora" = quicklisp-to-nix-packages."anaphora";
-           "cl-interpol" = quicklisp-to-nix-packages."cl-interpol";
-           "cl-ppcre" = quicklisp-to-nix-packages."cl-ppcre";
-           "cl-unicode" = quicklisp-to-nix-packages."cl-unicode";
-           "closer-mop" = quicklisp-to-nix-packages."closer-mop";
-           "flexi-streams" = quicklisp-to-nix-packages."flexi-streams";
-           "iterate" = quicklisp-to-nix-packages."iterate";
-           "lisp-unit2" = quicklisp-to-nix-packages."lisp-unit2";
-           "named-readtables" = quicklisp-to-nix-packages."named-readtables";
-       }));
-
-
-  "_3bmd" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."_3bmd" or (x: {}))
-       (import ./quicklisp-to-nix-output/_3bmd.nix {
-         inherit fetchurl;
-           "alexandria" = quicklisp-to-nix-packages."alexandria";
-           "esrap" = quicklisp-to-nix-packages."esrap";
-           "split-sequence" = quicklisp-to-nix-packages."split-sequence";
-           "trivial-with-current-source-form" = quicklisp-to-nix-packages."trivial-with-current-source-form";
-       }));
-
-
-  "_1am" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."_1am" or (x: {}))
-       (import ./quicklisp-to-nix-output/_1am.nix {
-         inherit fetchurl;
-       }));
-
-
-};
-in
-   quicklisp-to-nix-packages
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix/invocation.emb b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix/invocation.emb
deleted file mode 100644
index 3a0c5cb5fc2c..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix/invocation.emb
+++ /dev/null
@@ -1,7 +0,0 @@
-  "<% @var filename %>" = buildLispPackage
-    ((f: x: (x // (f x)))
-       (qlOverrides."<% @var filename %>" or (x: {}))
-       (import ./quicklisp-to-nix-output/<% @var filename %>.nix {
-         inherit fetchurl;<% @loop deps %>
-           "<% @var filename %>" = quicklisp-to-nix-packages."<% @var filename %>";<% @endloop %>
-       }));
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix/nix-package.emb b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix/nix-package.emb
deleted file mode 100644
index 6b0940ba55a6..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix/nix-package.emb
+++ /dev/null
@@ -1,23 +0,0 @@
-/* Generated file. */
-args @ { fetchurl, ... }:
-rec {
-  baseName = "<% @var filename %>";
-  version = "<% @var version %>";<% @if parasites %>
-
-  parasites = [<% (dolist (p (getf env :parasites)) (format t " \"~A\"" p)) %> ];<% @endif %>
-
-  description = <%= (format nil "~s" (cl-emb::getf-emb "description")) %>;
-
-  deps = [ <% @loop deps %>args."<% @var filename %>" <% @endloop %>];
-
-  src = fetchurl {
-    url = "<% @var url %>";
-    sha256 = "<% @var sha256 %>";
-  };
-
-  packageName = "<% @var name %>";
-
-  asdFilesToKeep = ["<% @var name %>.asd"];
-  overrides = x: x;
-}
-/* <%= cl-emb-intern::topenv %> */
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix/parasitic-invocation.emb b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix/parasitic-invocation.emb
deleted file mode 100644
index bdee1c6dcf16..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix/parasitic-invocation.emb
+++ /dev/null
@@ -1 +0,0 @@
-  "<% @var filename %>" = quicklisp-to-nix-packages."<% @var host-filename %>";
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix/ql-to-nix.lisp b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix/ql-to-nix.lisp
deleted file mode 100644
index 4a82b6cafa6f..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix/ql-to-nix.lisp
+++ /dev/null
@@ -1,327 +0,0 @@
-(unless (find-package :ql-to-nix-util)
-  (load "util.lisp"))
-(unless (find-package :ql-to-nix-quicklisp-bootstrap)
-  (load "quicklisp-bootstrap.lisp"))
-(defpackage :ql-to-nix
-  (:use :common-lisp :ql-to-nix-util :ql-to-nix-quicklisp-bootstrap))
-(in-package :ql-to-nix)
-
-;; We're going to pull in our dependencies at image dumping time in an
-;; isolated quicklisp installation.  Unfortunately, that means that we
-;; can't yet access the symbols for our dependencies.  We can probably
-;; do better (by, say, loading these dependencies before this file),
-;; but...
-
-(defvar *required-systems* nil)
-
-(push :cl-emb *required-systems*)
-(wrap :cl-emb register-emb)
-(wrap :cl-emb execute-emb)
-
-(push :external-program *required-systems*)
-(wrap :external-program run)
-
-(push :cl-ppcre *required-systems*)
-(wrap :cl-ppcre split)
-(wrap :cl-ppcre regex-replace-all)
-(wrap :cl-ppcre scan)
-
-(push :alexandria *required-systems*)
-(wrap :alexandria read-file-into-string)
-(wrap :alexandria write-string-into-file)
-
-(push :md5 *required-systems*)
-(wrap :md5 md5sum-file)
-
-(wrap :ql-dist find-system)
-(wrap :ql-dist release)
-(wrap :ql-dist provided-systems)
-(wrap :ql-dist archive-url)
-(wrap :ql-dist local-archive-file)
-(wrap :ql-dist ensure-local-archive-file)
-(wrap :ql-dist archive-md5)
-(wrap :ql-dist name)
-(wrap :ql-dist short-description)
-
-(defun escape-filename (s)
-  (format
-   nil "~a~{~a~}"
-   (if (scan "^[a-zA-Z_]" s) "" "_")
-   (loop
-      for x in (map 'list 'identity s)
-      collect
-        (case x
-          (#\/ "_slash_")
-          (#\\ "_backslash_")
-          (#\_ "__")
-          (#\. "_dot_")
-          (#\+ "_plus_")
-          (t x)))))
-
-(defvar *system-info-bin*
-  (let* ((path (uiop:getenv "system-info"))
-         (path-dir (if (equal #\/ (aref path (1- (length path))))
-                       path
-                       (concatenate 'string path "/")))
-         (pathname (parse-namestring path-dir)))
-    (merge-pathnames #P"bin/quicklisp-to-nix-system-info" pathname))
-  "The path to the quicklisp-to-nix-system-info binary.")
-
-(defvar *cache-dir* nil
-  "The folder where fasls will be cached.")
-
-(defun raw-system-info (system-name)
-  "Run quicklisp-to-nix-system-info on the given system and return the
-form produced by the program."
-  (when *cache-dir*
-    (let ((command `(,*system-info-bin* "--cacheDir" ,(namestring *cache-dir*) ,system-name)))
-      (handler-case
-          (return-from raw-system-info
-            (read (make-string-input-stream (uiop:run-program command :output :string))))
-        (error (e)
-          ;; Some systems don't like the funky caching that we're
-          ;; doing.  That's okay.  Let's try it uncached before we
-          ;; give up.
-          (warn "Unable to use cache for system ~A.~%~A" system-name e)))))
-  (read (make-string-input-stream (uiop:run-program `(,*system-info-bin* ,system-name) :output :string))))
-
-(defvar *system-data-memoization-path* nil
-  "The path to the folder where fully-resolved system information can
-be cached.
-
-If information for a system is found in this directory, `system-data'
-will use it instead of re-computing the system data.")
-
-(defvar *system-data-in-memory-memoization*
-  (make-hash-table :test #'equalp))
-
-(defun memoized-system-data-path (system)
-  "Return the path to the file that (if it exists) contains
-pre-computed system data."
-  (when *system-data-memoization-path*
-    (merge-pathnames
-      (make-pathname
-        :name (escape-filename (string system))
-        :type "txt") *system-data-memoization-path*)))
-
-(defun memoized-system-data (system)
-  "Attempts to locate memoized system data in the path specified by
-`*system-data-memoization-path*'."
-  (multiple-value-bind (value found) (gethash system *system-data-in-memory-memoization*)
-    (when found
-      (return-from memoized-system-data (values value found))))
-  (let ((path (memoized-system-data-path system)))
-    (unless path
-      (return-from memoized-system-data (values nil nil)))
-    (with-open-file (s path :if-does-not-exist nil :direction :input)
-      (unless s
-        (return-from memoized-system-data (values nil nil)))
-      (return-from memoized-system-data (values (read s) t)))))
-
-(defun set-memoized-system-data (system data)
-  "Store system data in the path specified by
-`*system-data-memoization-path*'."
-  (setf (gethash system *system-data-in-memory-memoization*) data)
-  (let ((path (memoized-system-data-path system)))
-    (unless path
-      (return-from set-memoized-system-data data))
-    (with-open-file (s path :direction :output :if-exists :supersede)
-      (format s "~W" data)))
-  data)
-
-(defun system-data (system)
-  "Examine a quicklisp system name and figure out everything that is
-required to produce a nix package.
-
-This function stores results for memoization purposes in files within
-`*system-data-memoization-path*'."
-  (multiple-value-bind (value found) (memoized-system-data system)
-    (when found
-      (return-from system-data value)))
-  (format t "Examining system ~A~%" system)
-  (let* ((system-info (raw-system-info system))
-         (host (getf system-info :host))
-         (host-name (getf system-info :host-name))
-         (name (getf system-info :name)))
-    (when host
-      (return-from system-data
-        (set-memoized-system-data
-         system
-         (list
-          :system (getf system-info :system)
-          :host host
-          :filename (escape-filename name)
-          :host-filename (escape-filename host-name)))))
-
-    (let* ((url (getf system-info :url))
-           (sha256 (getf system-info :sha256))
-           (archive-data (nix-prefetch-url url :expected-sha256 sha256))
-           (archive-path (getf archive-data :path))
-           (archive-md5 (string-downcase
-                         (format nil "~{~16,2,'0r~}"
-                                 (map 'list 'identity (md5sum-file archive-path)))))
-           (stated-md5 (getf system-info :md5))
-           (dependencies (getf system-info :dependencies))
-           (deps (mapcar (lambda (x) (list :name x :filename (escape-filename x)))
-                         dependencies))
-           (description (getf system-info :description))
-           (siblings (getf system-info :siblings))
-           (release-name (getf system-info :release-name))
-           (parasites (getf system-info :parasites))
-           (version (regex-replace-all
-                     (format nil "~a-" name) release-name "")))
-      (assert (equal archive-md5 stated-md5))
-      (set-memoized-system-data
-       system
-       (list
-        :system system
-        :description description
-        :sha256 sha256
-        :url url
-        :md5 stated-md5
-        :name name
-        :filename (escape-filename name)
-        :deps deps
-        :dependencies dependencies
-        :version version
-        :siblings siblings
-        :parasites parasites)))))
-
-(defun parasitic-p (data)
-  (getf data :host))
-
-(defvar *loaded-from* (or *compile-file-truename* *load-truename*)
-  "Where this source file is located.")
-
-(defun this-file ()
-  "Where this source file is located or an error."
-  (or *loaded-from* (error "Not sure where this file is located!")))
-
-(defun nix-expression (system)
-  (execute-emb
-    "nix-package"
-    :env (system-data system)))
-
-(defun nix-invocation (system)
-  (let ((data (system-data system)))
-    (if (parasitic-p data)
-        (execute-emb
-         "parasitic-invocation"
-         :env data)
-        (execute-emb
-         "invocation"
-         :env data))))
-
-(defun systems-closure (systems)
-  (let*
-    ((seen (make-hash-table :test 'equal)))
-    (loop
-      with queue := systems
-      with res := nil
-      while queue
-      for next := (pop queue)
-      for old := (gethash next seen)
-      for data := (unless old (system-data next))
-      for deps := (getf data :dependencies)
-      for siblings := (getf data :siblings)
-      unless old do
-      (progn
-        (push next res)
-        (setf queue (append queue deps)))
-      do (setf (gethash next seen) t)
-      finally (return res))))
-
-(defun ql-to-nix (target-directory)
-  (let*
-    ((systems
-       (split
-         (format nil "~%")
-         (read-file-into-string
-          (format nil "~a/quicklisp-to-nix-systems.txt" target-directory))))
-     (closure (systems-closure systems))
-     (invocations
-       (loop for s in closure
-             collect (list :code (nix-invocation s)))))
-    (loop
-      for s in closure
-       do (unless (parasitic-p (system-data s))
-            (write-string-into-file
-             (nix-expression s)
-             (format nil "~a/quicklisp-to-nix-output/~a.nix"
-                     target-directory (escape-filename s))
-             :if-exists :supersede)))
-    (write-string-into-file
-      (execute-emb
-        "top-package"
-        :env (list :invocations invocations))
-      (format nil "~a/quicklisp-to-nix.nix" target-directory)
-      :if-exists :supersede)))
-
-(defun print-usage-and-quit ()
-  "Does what it says on the tin."
-  (format *error-output* "Usage:
-    ~A [--help] [--cacheSystemInfoDir <path>] [--cacheFaslDir <path>] <work-dir>
-Arguments:
-    --cacheSystemInfoDir Store computed system info in the given directory
-    --cacheFaslDir Store intermediate fast load files in the given directory
-    --help Print usage and exit
-    <work-dir> Path to directory with quicklisp-to-nix-systems.txt
-" (uiop:argv0))
-  (uiop:quit 2))
-
-(defun main ()
-  "Make it go"
-  (let ((argv (uiop:command-line-arguments))
-        work-directory
-        cache-system-info-directory
-        cache-fasl-directory)
-    (loop :while argv :for arg = (pop argv) :do
-       (cond
-         ((equal arg "--cacheSystemInfoDir")
-          (unless argv
-            (format *error-output* "--cacheSystemInfoDir requires an argument~%")
-            (print-usage-and-quit))
-          (setf cache-system-info-directory (pop argv)))
-
-         ((equal arg "--cacheFaslDir")
-          (unless argv
-            (format *error-output* "--cacheFaslDir requires an argument~%")
-            (print-usage-and-quit))
-          (setf cache-fasl-directory (pop argv)))
-
-         ((equal arg "--help")
-          (print-usage-and-quit))
-
-         (t
-          (when argv
-            (format *error-output* "Only one positional argument allowed~%")
-            (print-usage-and-quit))
-          (setf work-directory arg))))
-
-    (when cache-system-info-directory
-      (setf cache-system-info-directory (pathname-as-directory (pathname cache-system-info-directory)))
-      (ensure-directories-exist cache-system-info-directory))
-
-    (labels
-        ((make-go (*cache-dir*)
-           (format t "Caching fasl files in ~A~%" *cache-dir*)
-
-           (let ((*system-data-memoization-path* cache-system-info-directory))
-             (ql-to-nix work-directory))))
-      (if cache-fasl-directory
-          (make-go (truename (pathname-as-directory (parse-namestring (ensure-directories-exist cache-fasl-directory)))))
-          (with-temporary-directory (*cache-dir*)
-            (make-go *cache-dir*))))))
-
-(defun dump-image ()
-  "Make an executable"
-  (dolist (system *required-systems*)
-    (asdf:make system))
-  (register-emb "nix-package" (merge-pathnames #p"nix-package.emb" (this-file)))
-  (register-emb "invocation" (merge-pathnames #p"invocation.emb" (this-file)))
-  (register-emb "parasitic-invocation" (merge-pathnames #p"parasitic-invocation.emb" (this-file)))
-  (register-emb "top-package" (merge-pathnames #p"top-package.emb" (this-file)))
-  (setf uiop:*image-entry-point* #'main)
-  (setf uiop:*lisp-interaction* nil)
-  (setf *loaded-from* nil) ;; Break the link to our source
-  (uiop:dump-image "quicklisp-to-nix" :executable t))
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix/quicklisp-bootstrap.lisp b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix/quicklisp-bootstrap.lisp
deleted file mode 100644
index 1c4a682007fd..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix/quicklisp-bootstrap.lisp
+++ /dev/null
@@ -1,76 +0,0 @@
-(unless (find-package :ql-to-nix-util)
-  (load "ql-to-nix-util.lisp"))
-(defpackage :ql-to-nix-quicklisp-bootstrap
-  (:use :common-lisp :ql-to-nix-util)
-  (:export #:with-quicklisp)
-  (:documentation
-   "This package provides a way to create a temporary quicklisp installation."))
-(in-package :ql-to-nix-quicklisp-bootstrap)
-
-(declaim (optimize (debug 3) (speed 0) (space 0) (compilation-speed 0) (safety 3)))
-
-;; This file cannot have any dependencies beyond quicklisp and asdf.
-;; Otherwise, we'll miss some dependencies!
-
-(defvar *quicklisp*
-  (namestring (pathname-as-directory (uiop:getenv "quicklisp")))
-  "The path to the nix quicklisp package.")
-
-(defun prepare-quicklisp-dir (target-dir quicklisp-prototype-dir)
-  "Install quicklisp into the specified `target-dir'.
-
-`quicklisp-prototype-dir' should be the path to the quicklisp nix
-package."
-  (ensure-directories-exist target-dir)
-  (dolist (subdir '(#P"dists/quicklisp/" #P"tmp/" #P"local-projects/" #P"quicklisp/"))
-    (ensure-directories-exist (merge-pathnames subdir target-dir)))
-  (with-open-file (s (merge-pathnames #P"dists/quicklisp/enabled.txt" target-dir) :direction :output :if-exists :supersede)
-    (format s "1~%"))
-  (uiop:copy-file
-   (merge-pathnames #P"lib/common-lisp/quicklisp/quicklisp-distinfo.txt" quicklisp-prototype-dir)
-   (merge-pathnames #P"dists/quicklisp/distinfo.txt" target-dir))
-  (uiop:copy-file
-   (merge-pathnames #P"lib/common-lisp/quicklisp/asdf.lisp" quicklisp-prototype-dir)
-   (merge-pathnames #P"asdf.lisp" target-dir))
-  (uiop:copy-file
-   (merge-pathnames #P"lib/common-lisp/quicklisp/setup.lisp" quicklisp-prototype-dir)
-   (merge-pathnames #P"setup.lisp" target-dir))
-  (copy-directory-tree
-   (merge-pathnames #P"lib/common-lisp/quicklisp/quicklisp/" quicklisp-prototype-dir)
-   (merge-pathnames #P"quicklisp/" target-dir)))
-
-(defun call-with-quicklisp (function &key (target-dir :temp) (cache-dir :temp))
-  "Invoke the given function with the path to a quicklisp installation.
-
-Quicklisp will be loaded before the function is called.  `target-dir'
-can either be a pathname for the place where quicklisp should be
-installed or `:temp' to request installation in a temporary directory.
-`cache-dir' can either be a pathname for a place to store fasls or
-`:temp' to request caching in a temporary directory."
-  (when (find-package :ql)
-    (error "Already loaded quicklisp in this process"))
-  (labels
-      ((make-ql (ql-dir)
-         (prepare-quicklisp-dir ql-dir *quicklisp*)
-         (with-temporary-asdf-cache (ql-dir)
-           (load (merge-pathnames #P"setup.lisp" ql-dir))
-           (if (eq :temp cache-dir)
-               (funcall function ql-dir)
-               (with-asdf-cache (ql-dir cache-dir)
-                 (funcall function ql-dir))))))
-    (if (eq :temp target-dir)
-        (with-temporary-directory (dir)
-          (make-ql dir))
-        (make-ql target-dir))))
-
-(defmacro with-quicklisp ((quicklisp-dir) (&key (cache-dir :temp)) &body body)
-  "Install quicklisp in a temporary directory, load it, bind
-`quicklisp-dir' to the path where quicklisp was installed, and then
-evaluate `body'.
-
-`cache-dir' can either be a pathname for a place to store fasls or
-`:temp' to request caching in a temporary directory."
-  `(call-with-quicklisp
-    (lambda (,quicklisp-dir)
-      ,@body)
-    :cache-dir ,cache-dir))
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix/system-info.lisp b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix/system-info.lisp
deleted file mode 100644
index af8d450272c0..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix/system-info.lisp
+++ /dev/null
@@ -1,493 +0,0 @@
-(unless (find-package :ql-to-nix-util)
-  (load "util.lisp"))
-(unless (find-package :ql-to-nix-quicklisp-bootstrap)
-  (load "quicklisp-bootstrap.lisp"))
-(defpackage :ql-to-nix-system-info
-  (:use :common-lisp :ql-to-nix-quicklisp-bootstrap :ql-to-nix-util)
-  (:export #:dump-image))
-(in-package :ql-to-nix-system-info)
-
-(eval-when (:compile-toplevel :load-toplevel :execute)
-  (defparameter *implementation-systems*
-    (append
-      #+sbcl(list :sb-posix :sb-bsd-sockets :sb-rotate-byte :sb-cltl2
-                  :sb-introspect :sb-rt :sb-concurrency)))
-  (mapcar (function require) *implementation-systems*))
-
-(declaim (optimize (debug 3) (speed 0) (space 0) (compilation-speed 0) (safety 3)))
-
-;; This file cannot have any dependencies beyond quicklisp and asdf.
-;; Otherwise, we'll miss some dependencies!
-
-;; (Implementation-provided dependencies are special, though)
-
-;; We can't load quicklisp until runtime (at which point we'll create
-;; an isolated quicklisp installation).  These wrapper functions are
-;; nicer than funcalling intern'd symbols every time we want to talk
-;; to quicklisp.
-(wrap :ql apply-load-strategy)
-(wrap :ql compute-load-strategy)
-(wrap :ql show-load-strategy)
-(wrap :ql quicklisp-systems)
-(wrap :ql ensure-installed)
-(wrap :ql quicklisp-releases)
-(wrap :ql-dist archive-md5)
-(wrap :ql-dist archive-url)
-(wrap :ql-dist ensure-local-archive-file)
-(wrap :ql-dist find-system)
-(wrap :ql-dist local-archive-file)
-(wrap :ql-dist name)
-(wrap :ql-dist provided-systems)
-(wrap :ql-dist release)
-(wrap :ql-dist short-description)
-(wrap :ql-dist system-file-name)
-(wrap :ql-impl-util call-with-quiet-compilation)
-
-(defvar *version* (uiop:getenv "version")
-  "The version number of this program")
-
-(defvar *main-system* nil
-  "The name of the system we're trying to extract info from.")
-
-(defvar *found-parasites* (make-hash-table :test #'equalp)
-  "Names of systems which have been identified as parasites.
-
-A system is parasitic if its name doesn't match the name of the file
-it is defined in.  So, for example, if foo and foo-bar are both
-defined in a file named foo.asd, foo would be the host system and
-foo-bar would be a parasitic system.
-
-Parasitic systems are not generally loaded without loading the host
-system first.
-
-Keys are system names.  Values are unspecified.")
-
-(defvar *found-dependencies* (make-hash-table :test #'equalp)
-  "Hash table containing the set of dependencies discovered while installing a system.
-
-Keys are system names.  Values are unspecified.")
-
-(defun decode-asdf-dependency (name)
-  "Translates an asdf system dependency description into a system name.
-
-For example, translates (:version :foo \"1.0\") into \"foo\"."
-  (etypecase name
-    (symbol
-     (setf name (symbol-name name)))
-    (string)
-    (cons
-     (ecase (first name)
-       (:version
-        (warn "Discarding version information ~A" name)
-        ;; There's nothing we can do about this.  If the version we
-        ;; have around is good enough, then we're golden.  If it isn't
-        ;; good enough, then we'll error out and let a human figure it
-        ;; out.
-        (setf name (second name))
-        (return-from decode-asdf-dependency
-          (decode-asdf-dependency name)))
-
-       (:feature
-        (if (find (second name) *features*)
-            (return-from decode-asdf-dependency
-              (decode-asdf-dependency (third name)))
-            (progn
-              (warn "Dropping dependency due to missing feature: ~A" name)
-              (return-from decode-asdf-dependency nil))))
-
-       (:require
-        ;; This probably isn't a dependency we can satisfy using
-        ;; quicklisp, but we might as well try anyway.
-        (return-from decode-asdf-dependency
-          (decode-asdf-dependency (second name)))))))
-  (string-downcase name))
-
-(defun found-new-parasite (system-name)
-  "Record that the given system has been identified as a parasite."
-  (setf system-name (decode-asdf-dependency system-name))
-  (setf (gethash system-name *found-parasites*) t)
-  (when (nth-value 1 (gethash system-name *found-dependencies*))
-    (error "Found dependency on parasite")))
-
-(defun known-parasite-p (system-name)
-  "Have we previously identified this system as a parasite?"
-  (nth-value 1 (gethash system-name *found-parasites*)))
-
-(defun found-parasites ()
-  "Return a vector containing all identified parasites."
-  (let ((systems (make-array (hash-table-size *found-parasites*) :fill-pointer 0)))
-    (loop :for system :being :the :hash-keys :of *found-parasites* :do
-       (vector-push system systems))
-    systems))
-
-(defvar *track-dependencies* nil
-  "When this variable is nil, found-new-dependency will not record
-depdendencies.")
-
-(defun parasitic-relationship-p (potential-host potential-parasite)
-  "Returns t if potential-host and potential-parasite have a parasitic relationship.
-
-See `*found-parasites*'."
-  (let ((host-ql-system (find-system potential-host))
-        (parasite-ql-system (find-system potential-parasite)))
-    (and host-ql-system parasite-ql-system
-         (not (equal (name host-ql-system)
-                     (name parasite-ql-system)))
-         (equal (system-file-name host-ql-system)
-                (system-file-name parasite-ql-system)))))
-
-(defun found-new-dependency (name)
-  "Record that the given system has been identified as a dependency.
-
-The named system may not be recorded as a dependency.  It may be left
-out for any number of reasons.  For example, if `*track-dependencies*'
-is nil then this function does nothing.  If the named system isn't a
-quicklisp system, this function does nothing."
-  (setf name (decode-asdf-dependency name))
-  (unless name
-    (return-from found-new-dependency))
-  (unless *track-dependencies*
-    (return-from found-new-dependency))
-  (when (known-parasite-p name)
-    (return-from found-new-dependency))
-  (when (parasitic-relationship-p *main-system* name)
-    (found-new-parasite name)
-    (return-from found-new-dependency))
-  (unless (find-system name)
-    (return-from found-new-dependency))
-  (setf (gethash name *found-dependencies*) t))
-
-(defun forget-dependency (name)
-  "Whoops.  Did I say that was a dependency?  My bad.
-
-Be very careful using this function!  You can remove a system from the
-dependency list, but you can't remove other effects associated with
-this system.  For example, transitive dependencies might still be in
-the dependency list."
-  (setf name (decode-asdf-dependency name))
-  (remhash name *found-dependencies*))
-
-(defun found-dependencies ()
-  "Return a vector containing all identified dependencies."
-  (let ((systems (make-array (hash-table-size *found-dependencies*) :fill-pointer 0)))
-    (loop :for system :being :the :hash-keys :of *found-dependencies* :do
-       (vector-push system systems))
-    systems))
-
-(defun host-system (system-name)
-  "If the given system is a parasite, return the name of the system that is its host.
-
-See `*found-parasites*'."
-  (let* ((system (find-system system-name))
-         (host-file (system-file-name system)))
-    (unless (equalp host-file system-name)
-      host-file)))
-
-(defun get-loaded (system)
-  "Try to load the named system using quicklisp and record any
-dependencies quicklisp is aware of.
-
-Unlike `our-quickload', this function doesn't attempt to install
-missing dependencies."
-  ;; Let's get this party started!
-  (let* ((strategy (compute-load-strategy system))
-         (ql-systems (quicklisp-systems strategy)))
-    (dolist (dep ql-systems)
-      (found-new-dependency (name dep)))
-    (show-load-strategy strategy)
-    (labels
-        ((make-go ()
-           (apply-load-strategy strategy)))
-      (call-with-quiet-compilation #'make-go)
-      (let ((asdf-system (asdf:find-system system)))
-        ;; If ASDF says that it needed a system, then we should
-        ;; probably track that.
-        (dolist (asdf-dep (asdf:component-sideway-dependencies asdf-system))
-          (found-new-dependency asdf-dep))
-        (dolist (asdf-dep (asdf:system-defsystem-depends-on asdf-system))
-          (found-new-dependency asdf-dep))))))
-
-(defun our-quickload (system)
-  "Attempt to install a package like quicklisp would, but record any
-dependencies that are detected during the install."
-  (setf system (string-downcase system))
-  ;; Load it quickly, but do it OUR way.  Turns out our way is very
-  ;; similar to the quicklisp way...
-  (let ((already-tried (make-hash-table :test #'equalp))) ;; Case insensitive
-    (tagbody
-     retry
-       (handler-case
-           (get-loaded system)
-         (asdf/find-component:missing-dependency (e)
-           (let ((required-by (asdf/find-component:missing-required-by e))
-                 (missing (asdf/find-component:missing-requires e)))
-             (unless (typep required-by 'asdf:system)
-               (error e))
-             (when (gethash missing already-tried)
-               (error "Dependency loop? ~A" missing))
-             (setf (gethash missing already-tried) t)
-             (let ((parasitic-p (parasitic-relationship-p *main-system* missing)))
-               (if parasitic-p
-                   (found-new-parasite missing)
-                   (found-new-dependency missing))
-               ;; We always want to track the dependencies of systems
-               ;; that share an asd file with the main system.  The
-               ;; whole asd file should be loadable.  Otherwise, we
-               ;; don't want to include transitive dependencies.
-               (let ((*track-dependencies* parasitic-p))
-                 (our-quickload missing)))
-             (format t "Attempting to load ~A again~%" system)
-             (go retry)))))))
-
-(defvar *blacklisted-parasites*
-  #("hu.dwim.stefil/documentation" ;; This system depends on :hu.dwim.stefil.test, but it should depend on hu.dwim.stefil/test
-    "named-readtables/doc" ;; Dependency cycle between named-readtabes and mgl-pax
-    "symbol-munger-test" ;; Dependency cycle between lisp-unit2 and symbol-munger
-    "cl-postgres-simple-date-tests" ;; Dependency cycle between cl-postgres and simple-date
-    "cl-containers/with-variates" ;; Symbol conflict between cl-variates:next-element, metabang.utilities:next-element
-    "serapeum/docs" ;; Weird issue with FUN-INFO redefinition
-    "spinneret/cl-markdown" ;; Weird issue with FUN-INFO redefinition
-    "spinneret/ps" ;; Weird issue with FUN-INFO redefinition
-    "spinneret/tests") ;; Weird issue with FUN-INFO redefinition
-  "A vector of systems that shouldn't be loaded by `quickload-parasitic-systems'.
-
-These systems are known to be troublemakers.  In some sense, all
-parasites are troublemakers (you shouldn't define parasitic systems!).
-However, these systems prevent us from generating nix packages and are
-thus doubly evil.")
-
-(defvar *blacklisted-parasites-table*
-  (let ((ht (make-hash-table :test #'equalp)))
-    (loop :for system :across *blacklisted-parasites* :do
-       (setf (gethash system ht) t))
-    ht)
-  "A hash table where each entry in `*blacklisted-parasites*' is an
-entry in the table.")
-
-(defun blacklisted-parasite-p (system-name)
-  "Returns non-nil if the named system is blacklisted"
-  (nth-value 1 (gethash system-name *blacklisted-parasites-table*)))
-
-(defun quickload-parasitic-systems (system)
-  "Attempt to load all the systems defined in the same asd as the named system.
-
-Blacklisted systems are skipped.  Dependencies of the identified
-parasitic systems will be tracked."
-  (let* ((asdf-system (asdf:find-system system))
-         (source-file (asdf:system-source-file asdf-system)))
-    (cond
-      (source-file
-       (loop :for system-name :being :the :hash-keys :of asdf/find-system::*registered-systems* :do
-             ; for an unclear reason, a literal 0 which is not a key in the hash table gets observed
-          (when (and (gethash system-name asdf/find-system::*registered-systems*)
-                     (parasitic-relationship-p system system-name)
-                     (not (blacklisted-parasite-p system-name)))
-            (found-new-parasite system-name)
-            (let ((*track-dependencies* t))
-              (our-quickload system-name)))))
-      (t
-       (unless (or (equal "uiop" system)
-                   (equal "asdf" system))
-         (warn "No source file for system ~A.  Can't identify parasites." system))))))
-
-(defun determine-dependencies (system)
-  "Load the named system and return a sorted vector containing all the
-quicklisp systems that were loaded to satisfy dependencies.
-
-This function should probably only be called once per process!
-Subsequent calls will miss dependencies identified by earlier calls."
-  (tagbody
-   retry
-     (restart-case
-         (let ((*standard-output* (make-broadcast-stream))
-               (*trace-output* (make-broadcast-stream))
-               (*main-system* system)
-               (*track-dependencies* t))
-           (our-quickload system)
-           (quickload-parasitic-systems system))
-       (try-again ()
-         :report "Start the quickload over again"
-         (go retry))
-       (die ()
-         :report "Just give up and die"
-         (uiop:quit 1))))
-
-  ;; Systems can't depend on themselves!
-  (forget-dependency system)
-  (values))
-
-(defun parasitic-system-data (parasite-system)
-  "Return a plist of information about the given known-parastic system.
-
-Sometimes we are asked to provide information about a system that is
-actually a parasite.  The only correct response is to point them
-toward the host system.  The nix package for the host system should
-have all the dependencies for this parasite already recorded.
-
-The plist is only meant to be consumed by other parts of
-quicklisp-to-nix."
-  (let ((host-system (host-system parasite-system)))
-    (list
-     :system parasite-system
-     :host host-system
-     :name (string-downcase (format nil "~a" parasite-system))
-     :host-name (string-downcase (format nil "~a" host-system)))))
-
-(defun system-data (system)
-  "Produce a plist describing a system.
-
-The plist is only meant to be consumed by other parts of
-quicklisp-to-nix."
-  (when (host-system system)
-    (return-from system-data
-      (parasitic-system-data system)))
-
-  (determine-dependencies system)
-  (let*
-      ((dependencies (sort (found-dependencies) #'string<))
-       (parasites (coerce (sort (found-parasites) #'string<) 'list))
-       (ql-system (find-system system))
-       (ql-release (release ql-system))
-       (ql-sibling-systems (provided-systems ql-release))
-       (url (archive-url ql-release))
-       (local-archive (local-archive-file ql-release))
-       (local-url (format nil "file://~a" (pathname local-archive)))
-       (archive-data
-        (progn
-          (ensure-local-archive-file ql-release)
-          ;; Stuff this archive into the nix store.  It was almost
-          ;; certainly going to end up there anyway (since it will
-          ;; probably be fetchurl'd for a nix package).  Also, putting
-          ;; it into the store also gives us the SHA we need.
-          (nix-prefetch-url local-url)))
-       (ideal-md5 (archive-md5 ql-release))
-       (raw-dependencies (coerce dependencies 'list))
-       (name (string-downcase (format nil "~a" system)))
-       (ql-sibling-names
-        (remove name (mapcar 'name ql-sibling-systems)
-                :test 'equal))
-       (dependencies raw-dependencies)
-       (description
-         (or
-           (ignore-errors (asdf:system-description (asdf:find-system system)))
-           "System lacks description"))
-       (release-name (short-description ql-release)))
-    (list
-     :system system
-     :description description
-     :sha256 (getf archive-data :sha256)
-     :url url
-     :md5 ideal-md5
-     :name name
-     :dependencies dependencies
-     :siblings ql-sibling-names
-     :release-name release-name
-     :parasites parasites)))
-
-(defvar *error-escape-valve* *error-output*
-  "When `*error-output*' is rebound to inhibit spew, this stream will
-still produce output.")
-
-(defun print-usage-and-quit ()
-  "Describe how to use this program... and then exit."
-  (format *error-output* "Usage:
-    ~A [--cacheDir <dir>] [--silent] [--debug] [--help|-h] <system-name>
-Arguments:
-    --cacheDir Store (and look for) compiled lisp files in the given directory
-    --verbose Show compilation output
-    --debug Enter the debugger when a fatal error is encountered
-    --help Print usage and exit
-    <system-name> The quicklisp system to examine
-" (or (uiop:argv0) "quicklisp-to-nix-system-info"))
-  (uiop:quit 2))
-
-(defun main ()
-  "Make it go."
-  (let ((argv (uiop:command-line-arguments))
-        cache-dir
-        target-system
-        verbose-p
-        debug-p)
-    (handler-bind
-        ((warning
-          (lambda (w)
-            (format *error-escape-valve* "~A~%" w)))
-         (error
-          (lambda (e)
-            (if debug-p
-                (invoke-debugger e)
-                (progn
-                  (format *error-escape-valve* "~
-Failed to extract system info. Details are below. ~
-Run with --debug and/or --verbose for more info.
-~A~%" e)
-                  (uiop:quit 1))))))
-      (loop :while argv :do
-         (cond
-           ((equal "--cacheDir" (first argv))
-            (pop argv)
-            (unless argv
-              (error "--cacheDir expects an argument"))
-            (setf cache-dir (first argv))
-            (pop argv))
-
-           ((equal "--verbose" (first argv))
-            (setf verbose-p t)
-            (pop argv))
-
-           ((equal "--debug" (first argv))
-            (setf debug-p t)
-            (pop argv))
-
-           ((or (equal "--help" (first argv))
-                (equal "-h" (first argv)))
-            (print-usage-and-quit))
-
-           (t
-            (setf target-system (pop argv))
-            (when argv
-              (error "Can only operate on one system")))))
-
-      (unless target-system
-        (print-usage-and-quit))
-
-      (when cache-dir
-        (setf cache-dir (pathname-as-directory (parse-namestring cache-dir))))
-
-      (mapcar (function require) *implementation-systems*)
-
-      (with-quicklisp (dir) (:cache-dir (or cache-dir :temp))
-        (declare (ignore dir))
-
-        (let (system-data)
-          (let ((*error-output* (if verbose-p
-                                    *error-output*
-                                    (make-broadcast-stream)))
-                (*standard-output* (if verbose-p
-                                       *standard-output*
-                                       (make-broadcast-stream)))
-                (*trace-output* (if verbose-p
-                                    *trace-output*
-                                    (make-broadcast-stream))))
-            (format *error-output*
-                    "quicklisp-to-nix-system-info ~A~%ASDF ~A~%Quicklisp ~A~%Compiler ~A ~A~%"
-                    *version*
-                    (asdf:asdf-version)
-                    (funcall (intern "CLIENT-VERSION" :ql))
-                    (lisp-implementation-type)
-                    (lisp-implementation-version))
-            (setf system-data (system-data target-system)))
-
-          (cond
-            (system-data
-             (format t "~W~%" system-data)
-             (uiop:quit 0))
-            (t
-             (format *error-output* "Failed to determine system data~%")
-             (uiop:quit 1))))))))
-
-(defun dump-image ()
-  "Make an executable"
-  (setf uiop:*image-entry-point* #'main)
-  (setf uiop:*lisp-interaction* nil)
-  (uiop:dump-image "quicklisp-to-nix-system-info" :executable t))
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix/top-package.emb b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix/top-package.emb
deleted file mode 100644
index 38b4f67aa1c3..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix/top-package.emb
+++ /dev/null
@@ -1,13 +0,0 @@
-{stdenv, lib, fetchurl, pkgs, clwrapper}:
-let quicklisp-to-nix-packages = rec {
-  inherit stdenv lib fetchurl clwrapper pkgs quicklisp-to-nix-packages;
-
-  callPackage = pkgs.lib.callPackageWith quicklisp-to-nix-packages;
-  buildLispPackage = callPackage ./define-package.nix;
-  qlOverrides = callPackage ./quicklisp-to-nix-overrides.nix {};
-<% @loop invocations %>
-<% @var code %>
-<% @endloop %>
-};
-in
-   quicklisp-to-nix-packages
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix/util.lisp b/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix/util.lisp
deleted file mode 100644
index 7b4043042735..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp-to-nix/util.lisp
+++ /dev/null
@@ -1,178 +0,0 @@
-(defpackage :ql-to-nix-util
-  (:use :common-lisp)
-  (:export #:nix-prefetch-url #:wrap #:pathname-as-directory #:copy-directory-tree #:with-temporary-directory #:sym #:with-temporary-asdf-cache #:with-asdf-cache)
-  (:documentation
-   "A collection of useful functions and macros that ql-to-nix will use."))
-(in-package :ql-to-nix-util)
-
-(declaim (optimize (debug 3) (speed 0) (space 0) (compilation-speed 0) (safety 3)))
-
-;; This file cannot have any dependencies beyond quicklisp and asdf.
-;; Otherwise, we'll miss some dependencies!
-
-(defun pathname-as-directory (pathname)
-  "Given a pathname, make it into a path to a directory.
-
-This is sort of like putting a / at the end of the path."
-  (unless (pathname-name pathname)
-    (return-from pathname-as-directory pathname))
-  (let* ((old-dir (pathname-directory pathname))
-         (old-name (pathname-name pathname))
-         (old-type (pathname-type pathname))
-         (last-dir
-          (cond
-            (old-type
-             (format nil "~A.~A" old-name old-type))
-            (t
-             old-name)))
-         (new-dir (if old-dir
-                      (concatenate 'list old-dir (list last-dir))
-                      (list :relative last-dir))))
-
-    (make-pathname :name nil :directory new-dir :type nil :defaults pathname)))
-
-(defvar *nix-prefetch-url-bin*
-  (namestring (merge-pathnames #P"bin/nix-prefetch-url" (pathname-as-directory (uiop:getenv "nix-prefetch-url"))))
-  "The path to the nix-prefetch-url binary")
-
-(defun nix-prefetch-url (url &key expected-sha256)
-  "Invoke the nix-prefetch-url program.
-
-Returns a plist with two keys.
-:sha256 => The sha of the fetched file
-:path => The path to the file in the nix store"
-  (when expected-sha256
-    (setf expected-sha256 (list expected-sha256)))
-  (let* ((stdout
-          (with-output-to-string (so)
-            (uiop:run-program
-             `(,*nix-prefetch-url-bin* "--print-path" ,url ,@expected-sha256)
-             :output so)))
-         (stream (make-string-input-stream stdout)))
-    (list
-     :sha256 (read-line stream)
-     :path (read-line stream))))
-
-(defmacro wrap (package symbol-name)
-  "Create a function which looks up the named symbol at runtime and
-invokes it with the same arguments.
-
-If you can't load a system until runtime, this macro gives you an
-easier way to write
-    (funcall (intern \"SYMBOL-NAME\" :package-name) arg)
-Instead, you can write
-    (wrap :package-name symbol-name)
-    (symbol-name arg)"
-  (let ((args (gensym "ARGS")))
-    `(defun ,symbol-name (&rest ,args)
-       (apply (sym ',package ',symbol-name) ,args))))
-
-(defun copy-directory-tree (src-dir target-dir)
-  "Recursively copy every file in `src-dir' into `target-dir'.
-
-This function traverses symlinks."
-  (when (or (not (pathname-directory target-dir))
-            (pathname-name target-dir))
-    (error "target-dir must be a dir"))
-  (when (or (not (pathname-directory src-dir))
-            (pathname-name src-dir))
-    (error "src-dir must be a dir"))
-  (let ((src-wild (make-pathname :name :wild :type :wild :defaults src-dir)))
-    (dolist (entity (uiop:directory* src-wild))
-      (if (pathname-name entity)
-          (uiop:copy-file entity (make-pathname :type (pathname-type entity) :name (pathname-name entity) :defaults target-dir))
-          (let ((new-target-dir
-                 (make-pathname
-                  :directory (concatenate 'list (pathname-directory target-dir) (last (pathname-directory entity))))))
-            (ensure-directories-exist new-target-dir)
-            (copy-directory-tree entity new-target-dir))))))
-
-(defun call-with-temporary-directory (function)
-  "Create a temporary directory, invoke the given function by passing
-in the pathname for the directory, and then delete the directory."
-  (let* ((dir (uiop:run-program '("mktemp" "-d") :output :line))
-         (parsed (parse-namestring dir))
-         (parsed-as-dir (pathname-as-directory parsed)))
-    (assert (uiop:absolute-pathname-p dir))
-    (unwind-protect
-         (funcall function parsed-as-dir)
-      (uiop:delete-directory-tree
-       parsed-as-dir
-       :validate
-       (lambda (path)
-         (and (uiop:absolute-pathname-p path)
-              (equal (subseq (pathname-directory path) 0 (length (pathname-directory parsed-as-dir)))
-                     (pathname-directory parsed-as-dir))))))))
-
-(defmacro with-temporary-directory ((dir-name) &body body)
-  "See `call-with-temporary-directory'."
-  `(call-with-temporary-directory (lambda (,dir-name) ,@body)))
-
-(defun sym (package sym)
-  "A slightly less picky version of `intern'.
-
-Unlike `intern', the `sym' argument can be a string or a symbol.  If
-it is a symbol, then the `symbol-name' is `intern'ed into the
-specified package.
-
-The arguments are also reversed so that the package comes first."
-  (etypecase sym
-    (symbol (setf sym (symbol-name sym)))
-    (string))
-  (intern sym package))
-
-(defvar *touch-bin*
-  (namestring (merge-pathnames #P"bin/touch" (pathname-as-directory (uiop:getenv "touch"))))
-  "Path to the touch binary.")
-
-(defvar *cache-dir* nil
-  "When asdf cache remapping is in effect (see `with-asdf-cache'),
-this stores the path to the fasl cache directory.")
-(defvar *src-dir* nil
-  "When asdf cache remapping is in effect (see `with-asdf-cache'),
-this stores the path to the source directory.
-
-Only lisp files within the source directory will have their fasls
-cached in the cache directory.")
-
-(defun remap (path prefix)
-  "Implements the cache policy described in `with-asdf-cache'."
-  (declare (ignore prefix))
-  (let* ((ql-dirs (pathname-directory *src-dir*))
-         (ql-dirs-length (length ql-dirs))
-         (path-prefix (subseq (pathname-directory path) 0 ql-dirs-length))
-         (path-postfix (subseq (pathname-directory path) ql-dirs-length)))
-    (unless (equal path-prefix ql-dirs)
-      (return-from remap path))
-    (let ((result (make-pathname :directory (concatenate 'list (pathname-directory *cache-dir*) path-postfix) :defaults path)))
-      (with-open-file (s result :direction :probe :if-does-not-exist nil)
-        (when s
-          (uiop:run-program `(,*touch-bin* ,(namestring result)))))
-      result)))
-
-(defmacro with-temporary-asdf-cache ((src-dir) &body body)
-  "Create a temporary directory, and then use it as the ASDF cache
-directory for source files in `src-dir'.
-
-See `with-asdf-cache'."
-  (let ((tmp-dir (gensym "ORIGINAL-VALUE")))
-    `(with-temporary-directory (,tmp-dir)
-       (with-asdf-cache (,src-dir ,tmp-dir)
-         ,@body))))
-
-(defmacro with-asdf-cache ((src-dir cache-dir) &body body)
-  "When ASDF compiles a lisp file in `src-dir', store the fasl in `cache-dir'."
-  (let ((original-value (gensym "ORIGINAL-VALUE")))
-    `(let ((,original-value asdf:*output-translations-parameter*)
-           (*src-dir* ,src-dir)
-           (*cache-dir* ,cache-dir))
-       (unwind-protect
-            (progn
-              (asdf:initialize-output-translations
-               '(:output-translations
-                 :INHERIT-CONFIGURATION
-                 ;; FIXME: Shouldn't we only be remaping things
-                 ;; actually in the src dir?  Oh well.
-                 (t (:function remap))))
-              ,@body)
-         (asdf:initialize-output-translations ,original-value)))))
diff --git a/pkgs/development/lisp-modules-obsolete/quicklisp.sh b/pkgs/development/lisp-modules-obsolete/quicklisp.sh
deleted file mode 100644
index 1d9c3c5bc53d..000000000000
--- a/pkgs/development/lisp-modules-obsolete/quicklisp.sh
+++ /dev/null
@@ -1,85 +0,0 @@
-#! /usr/bin/env bash
-
-op=
-end_param=
-args=()
-cmd_args=()
-
-while let "$#"; do
-    if test -n "$end_param" || test "$1" = "${1#--}"; then
-        if test -n "$op"; then
-            args[${#args[@]}]="$1";
-        else
-            op="$1"
-        fi
-        shift
-    else
-        case "$1" in
-            --)
-                end_param=1; shift;
-            ;;
-            --quicklisp-dir)
-                NIX_QUICKLISP_DIR="$2";
-                shift; shift;
-            ;;
-            --help)
-                echo "Operation: init, run, update, install {system-name}"
-                exit 0;
-            ;;
-            *)
-                echo "Unknown parameter [$1]" >&2
-                exit 2;
-            ;;
-        esac
-    fi
-done
-
-NIX_QUICKLISP_DIR="${NIX_QUICKLISP_DIR:-${HOME}/quicklisp}"
-
-case "$op" in
-    '') echo "Specify an operation: init, install, run, update"
-    ;;
-    install)
-        NIX_LISP_SKIP_CODE=1 source "@clwrapper@/bin/common-lisp.sh";
-
-        cmd_args[${#cmd_args[@]}]="$NIX_LISP_EXEC_CODE"
-        cmd_args[${#cmd_args[@]}]="(load \"$NIX_QUICKLISP_DIR/setup.lisp\")"
-        for i in "${args[@]}"; do
-            cmd_args[${#cmd_args[@]}]="$NIX_LISP_EXEC_CODE"
-            cmd_args[${#cmd_args[@]}]="(ql:quickload :$i)"
-        done
-        cmd_args[${#cmd_args[@]}]="$NIX_LISP_EXEC_CODE"
-        cmd_args[${#cmd_args[@]}]="$NIX_LISP_QUIT"
-
-        "@clwrapper@/bin/common-lisp.sh" "${cmd_args[@]}"
-    ;;
-    update)
-        NIX_LISP_SKIP_CODE=1 source "@clwrapper@/bin/common-lisp.sh"
-
-        ln -sfT "@out@/lib/common-lisp/quicklisp/asdf.lisp" "$NIX_QUICKLISP_DIR/asdf.lisp"
-        cp -f "@out@/lib/common-lisp/quicklisp/setup.lisp" "$NIX_QUICKLISP_DIR/setup.lisp"
-
-        if test -d "$NIX_QUICKLISP_DIR/quicklisp"; then
-            mv "$NIX_QUICKLISP_DIR/quicklisp"{,-old-$(date +%Y%m%d-%H%M%S)}
-        fi
-
-        cp -rfT "@out@/lib/common-lisp/quicklisp/quicklisp" "$NIX_QUICKLISP_DIR/quicklisp"
-
-        "@clwrapper@/bin/common-lisp.sh" "$NIX_LISP_EXEC_CODE" \
-          "(load \"$NIX_QUICKLISP_DIR/setup.lisp\")" "$NIX_LISP_EXEC_CODE" \
-          "(ql:update-all-dists)" "$NIX_LISP_EXEC_CODE" "$NIX_LISP_QUIT"
-    ;;
-    init)
-        mkdir -p "$NIX_QUICKLISP_DIR"/{dists/quicklisp,tmp,local-projects}
-        echo 1 > "$NIX_QUICKLISP_DIR/dists/quicklisp/enabled.txt"
-        cp -f "@out@/lib/common-lisp/quicklisp/quicklisp-distinfo.txt" \
-          "$NIX_QUICKLISP_DIR/dists/quicklisp/distinfo.txt"
-
-        NIX_QUICKLISP_DIR="$NIX_QUICKLISP_DIR" "$0" update
-    ;;
-    run)
-        NIX_LISP_SKIP_CODE=1 source "@clwrapper@/bin/common-lisp.sh"
-        "@clwrapper@/bin/common-lisp.sh" "$NIX_LISP_EXEC_CODE" \
-          "(load \"$NIX_QUICKLISP_DIR/setup.lisp\")" "${args[@]}"
-    ;;
-esac
diff --git a/pkgs/development/lisp-modules-obsolete/shell.nix b/pkgs/development/lisp-modules-obsolete/shell.nix
deleted file mode 100644
index 0d1fadf2552c..000000000000
--- a/pkgs/development/lisp-modules-obsolete/shell.nix
+++ /dev/null
@@ -1,38 +0,0 @@
-with import ../../../default.nix {};
-let
-openssl_lib_marked = import ./openssl-lib-marked.nix;
-self = rec {
-  name = "ql-to-nix";
-  env = buildEnv { name = name; paths = buildInputs; };
-  buildInputs = [
-    gcc
-    openssl fuse libuv libmysqlclient libfixposix libev sqlite
-    freetds
-    lispPackages.quicklisp-to-nix lispPackages.quicklisp-to-nix-system-info
-  ];
-  CPATH = lib.makeSearchPath "include"
-    [ libfixposix
-    ];
-  LD_LIBRARY_PATH = lib.makeLibraryPath
-    [ cairo
-      freetds
-      fuse
-      gdk-pixbuf
-      glib
-      gobject-introspection
-      gtk3
-      libev
-      libfixposix
-      libmysqlclient
-      libuv
-      openblas
-      openssl
-      openssl_lib_marked
-      pango
-      postgresql
-      sqlite
-      webkitgtk
-    ]
-    + ":${libmysqlclient}/lib/mysql";
-};
-in stdenv.mkDerivation self
diff --git a/pkgs/development/lisp-modules/packages.nix b/pkgs/development/lisp-modules/packages.nix
index 3866cc7dd2c7..c93a99e07a79 100644
--- a/pkgs/development/lisp-modules/packages.nix
+++ b/pkgs/development/lisp-modules/packages.nix
@@ -514,7 +514,7 @@ let
       (asdf:operate :program-op :nyxt/gi-gtk-application)
     '';
 
-    # TODO(kasper): use wrapGAppsHook
+    # TODO(kasper): use wrapGAppsHook3
     installPhase = ''
       mkdir -pv $out
       cp -r * $out
@@ -573,6 +573,23 @@ let
 
   stumpwm-unwrapped = super.stumpwm;
 
+  clfswm = super.clfswm.overrideAttrs (o: rec {
+    buildScript = pkgs.writeText "build-clfswm.lisp" ''
+      (load "${o.asdfFasl}/asdf.${o.faslExt}")
+      (asdf:load-system 'clfswm)
+      (sb-ext:save-lisp-and-die
+        "clfswm"
+        :executable t
+        #+sb-core-compression :compression
+        #+sb-core-compression t
+        :toplevel #'clfswm:main)
+    '';
+    installPhase = o.installPhase + ''
+      mkdir -p $out/bin
+      mv $out/clfswm $out/bin
+    '';
+  });
+
   ltk = super.ltk.overrideLispAttrs (o: {
     src = pkgs.fetchzip {
       url = "https://github.com/uthar/ltk/archive/f19162e76d6c7c2f51bd289b811d9ba20dd6555e.tar.gz";
@@ -816,6 +833,66 @@ let
     lispLibs = oa.lispLibs ++ [ self.sb-cga ];
   });
 
+  qlot-cli = build-asdf-system rec {
+    pname = "qlot";
+    version = "1.5.2";
+
+    src = pkgs.fetchFromGitHub {
+      owner = "fukamachi";
+      repo = "qlot";
+      rev = "refs/tags/${version}";
+      hash = "sha256-j9iT25Yz9Z6llCKwwiHlVNKLqwuKvY194LrAzXuljsE=";
+    };
+
+    lispLibs = with super; [
+      archive
+      deflate
+      dexador
+      fuzzy-match
+      ironclad
+      lparallel
+      yason
+    ];
+
+    nativeLibs = [
+      pkgs.openssl
+    ];
+
+    nativeBuildInputs = [
+      pkgs.makeWrapper
+    ];
+
+    buildScript = pkgs.writeText "build-qlot-cli" ''
+      (load "${self.qlot-cli.asdfFasl}/asdf.${self.qlot-cli.faslExt}")
+      (asdf:load-system :qlot/command)
+      (asdf:load-system :qlot/subcommands)
+
+      ;; Use uiop:dump-image instead of sb-ext:dump-image for the image restore hooks
+      (setf uiop:*image-entry-point* #'qlot/cli:main)
+      (uiop:dump-image "qlot"
+                       :executable t
+                       #+sb-core-compression :compression
+                       #+sb-core-compression t)
+    '';
+
+    installPhase = ''
+      runHook preInstall
+
+      mkdir -p $out/bin
+      cp qlot.asd $out
+      rm *.asd
+      cp -r * $out
+
+      mv $out/qlot $out/bin
+      wrapProgram $out/bin/qlot \
+        --prefix LD_LIBRARY_PATH : $LD_LIBRARY_PATH
+
+      runHook postInstall
+    '';
+
+    meta.mainProgram = "qlot";
+  };
+
   });
 
 in packages
diff --git a/pkgs/development/lua-modules/generated-packages.nix b/pkgs/development/lua-modules/generated-packages.nix
index 2948a293645d..46f0d5310cfa 100644
--- a/pkgs/development/lua-modules/generated-packages.nix
+++ b/pkgs/development/lua-modules/generated-packages.nix
@@ -1,35 +1,27 @@
 /* pkgs/development/lua-modules/generated-packages.nix is an auto-generated file -- DO NOT EDIT!
-Regenerate it with: nix run nixpkgs#update-luarocks-packages
+Regenerate it with: nix run nixpkgs#luarocks-packages-updater
 You can customize the generated packages in pkgs/development/lua-modules/overrides.nix
 */
 
-{ stdenv, lib, fetchurl, fetchgit, callPackage, ... } @ args:
+{ stdenv, lib, fetchurl, fetchgit, callPackage, ... }:
 final: prev:
 {
-alt-getopt = callPackage({ buildLuarocksPackage, fetchgit, fetchurl, lua, luaAtLeast, luaOlder }:
+alt-getopt = callPackage({ buildLuarocksPackage, fetchFromGitHub, fetchurl, luaAtLeast, luaOlder }:
 buildLuarocksPackage {
   pname = "alt-getopt";
   version = "0.8.0-1";
   knownRockspec = (fetchurl {
-    url    = "mirror://luarocks/alt-getopt-0.8.0-1.rockspec";
+    url    = "https://raw.githubusercontent.com/rocks-moonscript-org/moonrocks-mirror/master/alt-getopt-0.8.0-1.rockspec";
     sha256 = "17yxi1lsrbkmwzcn1x48x8758d7v1frsz1bmnpqfv4vfnlh0x210";
   }).outPath;
-  src = fetchgit ( removeAttrs (builtins.fromJSON ''{
-  "url": "https://github.com/cheusov/lua-alt-getopt",
-  "rev": "f495c21d6a203ab280603aa5799e636fb5651ae7",
-  "date": "2017-01-06T13:50:55+03:00",
-  "path": "/nix/store/z72v77cw9188408ynsppwhlzii2dr740-lua-alt-getopt",
-  "sha256": "1kq7r5668045diavsqd1j6i9hxdpsk99w8q4zr8cby9y3ws4q6rv",
-  "hash": "sha256-OxtMNB8++cVQ/gQjntLUt3WYopGhYb1VbIUAZEzJB88=",
-  "fetchLFS": false,
-  "fetchSubmodules": true,
-  "deepClone": false,
-  "leaveDotGit": false
-}
- '') ["date" "path" "sha256"]) ;
+  src = fetchFromGitHub {
+    owner = "cheusov";
+    repo = "lua-alt-getopt";
+    rev = "0.8.0";
+    hash = "sha256-OxtMNB8++cVQ/gQjntLUt3WYopGhYb1VbIUAZEzJB88=";
+  };
 
-  disabled = (luaOlder "5.1") || (luaAtLeast "5.4");
-  propagatedBuildInputs = [ lua ];
+  disabled = luaOlder "5.1" || luaAtLeast "5.4";
 
   meta = {
     homepage = "https://github.com/cheusov/lua-alt-getopt";
@@ -39,12 +31,12 @@ buildLuarocksPackage {
   };
 }) {};
 
-argparse = callPackage({ buildLuarocksPackage, fetchurl, fetchzip, lua, luaAtLeast, luaOlder }:
+argparse = callPackage({ buildLuarocksPackage, fetchurl, fetchzip, luaAtLeast, luaOlder }:
 buildLuarocksPackage {
   pname = "argparse";
   version = "0.7.1-1";
   knownRockspec = (fetchurl {
-    url    = "mirror://luarocks/argparse-0.7.1-1.rockspec";
+    url    = "https://raw.githubusercontent.com/rocks-moonscript-org/moonrocks-mirror/master/argparse-0.7.1-1.rockspec";
     sha256 = "116iaczq6glzzin6qqa2zn7i22hdyzzsq6mzjiqnz6x1qmi0hig8";
   }).outPath;
   src = fetchzip {
@@ -52,8 +44,7 @@ buildLuarocksPackage {
     sha256 = "0idg79d0dfis4qhbkbjlmddq87np75hb2vj41i6prjpvqacvg5v1";
   };
 
-  disabled = (luaOlder "5.1") || (luaAtLeast "5.5");
-  propagatedBuildInputs = [ lua ];
+  disabled = luaOlder "5.1" || luaAtLeast "5.5";
 
   meta = {
     homepage = "https://github.com/luarocks/argparse";
@@ -62,7 +53,7 @@ buildLuarocksPackage {
   };
 }) {};
 
-basexx = callPackage({ buildLuarocksPackage, fetchurl, lua, luaOlder }:
+basexx = callPackage({ buildLuarocksPackage, fetchurl, luaOlder }:
 buildLuarocksPackage {
   pname = "basexx";
   version = "0.4.1-1";
@@ -75,8 +66,7 @@ buildLuarocksPackage {
     sha256 = "1rnz6xixxqwy0q6y2hi14rfid4w47h69gfi0rnlq24fz8q2b0qpz";
   };
 
-  disabled = (luaOlder "5.1");
-  propagatedBuildInputs = [ lua ];
+  disabled = luaOlder "5.1";
 
   meta = {
     homepage = "https://github.com/aiq/basexx";
@@ -85,7 +75,7 @@ buildLuarocksPackage {
   };
 }) {};
 
-binaryheap = callPackage({ buildLuarocksPackage, fetchurl, lua, luaOlder }:
+binaryheap = callPackage({ buildLuarocksPackage, fetchurl, luaOlder }:
 buildLuarocksPackage {
   pname = "binaryheap";
   version = "0.4-1";
@@ -98,8 +88,7 @@ buildLuarocksPackage {
     sha256 = "0f5l4nb5s7dycbkgh3rrl7pf0npcf9k6m2gr2bsn09fjyb3bdc8h";
   };
 
-  disabled = (luaOlder "5.1");
-  propagatedBuildInputs = [ lua ];
+  disabled = luaOlder "5.1";
 
   meta = {
     homepage = "https://github.com/Tieske/binaryheap.lua";
@@ -109,7 +98,7 @@ buildLuarocksPackage {
   };
 }) {};
 
-bit32 = callPackage({ buildLuarocksPackage, fetchgit, fetchurl, lua, luaOlder }:
+bit32 = callPackage({ buildLuarocksPackage, fetchFromGitHub, fetchurl, luaOlder }:
 buildLuarocksPackage {
   pname = "bit32";
   version = "5.3.0-1";
@@ -117,22 +106,14 @@ buildLuarocksPackage {
     url    = "mirror://luarocks/bit32-5.3.0-1.rockspec";
     sha256 = "1d6xdihpksrj5a3yvsvnmf3vfk15hj6f8n1rrs65m7adh87hc0yd";
   }).outPath;
-  src = fetchgit ( removeAttrs (builtins.fromJSON ''{
-  "url": "https://github.com/keplerproject/lua-compat-5.2.git",
-  "rev": "10c7d40943601eb1f80caa9e909688bb203edc4d",
-  "date": "2015-02-17T10:44:04+01:00",
-  "path": "/nix/store/9kz7kgjmq0w9plrpha866bmwsgp4rfhn-lua-compat-5.2",
-  "sha256": "1ipqlbvb5w394qwhm2f3w6pdrgy8v4q8sps5hh3pqz14dcqwakhj",
-  "hash": "sha256-Ek7FMWskfHwHhEVfjTDZyL/cruHDiQo5Jmnwsvai+MY=",
-  "fetchLFS": false,
-  "fetchSubmodules": true,
-  "deepClone": false,
-  "leaveDotGit": false
-}
- '') ["date" "path" "sha256"]) ;
+  src = fetchFromGitHub {
+    owner = "keplerproject";
+    repo = "lua-compat-5.2";
+    rev = "bitlib-5.3.0";
+    hash = "sha256-Ek7FMWskfHwHhEVfjTDZyL/cruHDiQo5Jmnwsvai+MY=";
+  };
 
-  disabled = (luaOlder "5.1");
-  propagatedBuildInputs = [ lua ];
+  disabled = luaOlder "5.1";
 
   meta = {
     homepage = "http://www.lua.org/manual/5.2/manual.html#6.7";
@@ -142,7 +123,7 @@ buildLuarocksPackage {
   };
 }) {};
 
-busted = callPackage({ buildLuarocksPackage, dkjson, fetchgit, fetchurl, lua, lua-term, luaOlder, lua_cliargs, luassert, luasystem, mediator_lua, penlight, say }:
+busted = callPackage({ buildLuarocksPackage, dkjson, fetchFromGitHub, fetchurl, lua-term, luaOlder, lua_cliargs, luassert, luasystem, mediator_lua, penlight, say }:
 buildLuarocksPackage {
   pname = "busted";
   version = "2.2.0-1";
@@ -150,22 +131,15 @@ buildLuarocksPackage {
     url    = "mirror://luarocks/busted-2.2.0-1.rockspec";
     sha256 = "0h4zk4lcm40wg3l0vgjn6lsyh9yayhljx65a0pz5n99dxal8lgnf";
   }).outPath;
-  src = fetchgit ( removeAttrs (builtins.fromJSON ''{
-  "url": "https://github.com/lunarmodules/busted.git",
-  "rev": "02f31a9c103a44e166617cfdb6ba1b8994a9c912",
-  "date": "2023-11-06T14:24:47+03:00",
-  "path": "/nix/store/59a4spix6yw8lvkxq7q1fkdv0gfqd72k-busted",
-  "sha256": "0pwyidy7l223ydsfbf5xsjqgyhm73942ks44d3bivh8ldam4zg74",
-  "hash": "sha256-5LxPqmoUwR3XaIToKUgap0L/sNS9uOV080MIenyLnl8=",
-  "fetchLFS": false,
-  "fetchSubmodules": true,
-  "deepClone": false,
-  "leaveDotGit": false
-}
- '') ["date" "path" "sha256"]) ;
+  src = fetchFromGitHub {
+    owner = "lunarmodules";
+    repo = "busted";
+    rev = "v2.2.0";
+    hash = "sha256-5LxPqmoUwR3XaIToKUgap0L/sNS9uOV080MIenyLnl8=";
+  };
 
-  disabled = (luaOlder "5.1");
-  propagatedBuildInputs = [ dkjson lua lua-term lua_cliargs luassert luasystem mediator_lua penlight say ];
+  disabled = luaOlder "5.1";
+  propagatedBuildInputs = [ dkjson lua-term lua_cliargs luassert luasystem mediator_lua penlight say ];
 
   meta = {
     homepage = "https://lunarmodules.github.io/busted/";
@@ -174,7 +148,7 @@ buildLuarocksPackage {
   };
 }) {};
 
-cassowary = callPackage({ buildLuarocksPackage, fetchgit, fetchurl, lua, luaOlder, penlight }:
+cassowary = callPackage({ buildLuarocksPackage, fetchFromGitHub, fetchurl, luaOlder, penlight }:
 buildLuarocksPackage {
   pname = "cassowary";
   version = "2.3.2-1";
@@ -182,22 +156,15 @@ buildLuarocksPackage {
     url    = "mirror://luarocks/cassowary-2.3.2-1.rockspec";
     sha256 = "0c6sflm8zpgbcdj47s3rd34h69h3nqcciaaqd1wdx5m0lwc3mii0";
   }).outPath;
-  src = fetchgit ( removeAttrs (builtins.fromJSON ''{
-  "url": "https://github.com/sile-typesetter/cassowary.lua",
-  "rev": "e33195f08438c15d725d283979165fda7c6c3321",
-  "date": "2022-04-22T11:23:46+03:00",
-  "path": "/nix/store/51mb376xh9pnh2krk08ljmy01zhr9y3z-cassowary.lua",
-  "sha256": "1lvl40dhzmbqqjrqpjgqlg2kl993fpdy1mpc6d1610zpa9znx1f0",
-  "hash": "sha256-wIVuf1L3g2BCM+zW4Nt1IyU6xaP4yYuzxHjVDxsgdNM=",
-  "fetchLFS": false,
-  "fetchSubmodules": true,
-  "deepClone": false,
-  "leaveDotGit": false
-}
- '') ["date" "path" "sha256"]) ;
+  src = fetchFromGitHub {
+    owner = "sile-typesetter";
+    repo = "cassowary.lua";
+    rev = "v2.3.2";
+    hash = "sha256-wIVuf1L3g2BCM+zW4Nt1IyU6xaP4yYuzxHjVDxsgdNM=";
+  };
 
-  disabled = (luaOlder "5.1");
-  propagatedBuildInputs = [ lua penlight ];
+  disabled = luaOlder "5.1";
+  propagatedBuildInputs = [ penlight ];
 
   meta = {
     homepage = "https://github.com/sile-typesetter/cassowary.lua";
@@ -207,7 +174,7 @@ buildLuarocksPackage {
   };
 }) {};
 
-cldr = callPackage({ buildLuarocksPackage, fetchgit, fetchurl, lua, luaOlder, penlight }:
+cldr = callPackage({ buildLuarocksPackage, fetchFromGitHub, fetchurl, luaOlder, penlight }:
 buildLuarocksPackage {
   pname = "cldr";
   version = "0.3.0-0";
@@ -215,22 +182,15 @@ buildLuarocksPackage {
     url    = "mirror://luarocks/cldr-0.3.0-0.rockspec";
     sha256 = "1fnr8k713w21v7hc64s4w5lgcgnbphq3gm69pisc2s4wq2fkija1";
   }).outPath;
-  src = fetchgit ( removeAttrs (builtins.fromJSON ''{
-  "url": "https://github.com/alerque/cldr-lua.git",
-  "rev": "4602a7859535ca198ddfaba73a02f9bce3e81025",
-  "date": "2022-12-06T12:36:06+03:00",
-  "path": "/nix/store/3xgwqd2pica8301sbfrw4bmv0xm2wzx5-cldr-lua",
-  "sha256": "0hlfb115qhamczzskvckxczf9dpp8cv8h6vz7zgdl2n025ik9dp4",
-  "hash": "sha256-5LY0YxHACtreP38biDZD97bkPuuT7an/Z1VBXEJYjkI=",
-  "fetchLFS": false,
-  "fetchSubmodules": true,
-  "deepClone": false,
-  "leaveDotGit": false
-}
- '') ["date" "path" "sha256"]) ;
+  src = fetchFromGitHub {
+    owner = "alerque";
+    repo = "cldr-lua";
+    rev = "v0.3.0";
+    hash = "sha256-5LY0YxHACtreP38biDZD97bkPuuT7an/Z1VBXEJYjkI=";
+  };
 
-  disabled = (luaOlder "5.1");
-  propagatedBuildInputs = [ lua penlight ];
+  disabled = luaOlder "5.1";
+  propagatedBuildInputs = [ penlight ];
 
   meta = {
     homepage = "https://github.com/alerque/cldr-lua";
@@ -240,21 +200,20 @@ buildLuarocksPackage {
   };
 }) {};
 
-commons-nvim = callPackage({ buildLuarocksPackage, fetchurl, fetchzip, lua, luaOlder }:
+commons-nvim = callPackage({ buildLuarocksPackage, fetchurl, fetchzip, luaOlder }:
 buildLuarocksPackage {
   pname = "commons.nvim";
-  version = "15.0.0-1";
+  version = "15.0.2-1";
   knownRockspec = (fetchurl {
-    url    = "mirror://luarocks/commons.nvim-15.0.0-1.rockspec";
-    sha256 = "1f3izlp5jkr772pfbdm3q6qm5vmqqzdn4pl9qyq9fp9jzxrbv62r";
+    url    = "mirror://luarocks/commons.nvim-15.0.2-1.rockspec";
+    sha256 = "1n78bgp9y2smnhkjkdvn2c6lq6071k9dml4j6r7hk462hxsbjsqn";
   }).outPath;
   src = fetchzip {
-    url    = "https://github.com/linrongbin16/commons.nvim/archive/b50a5a220c25baa5d7568137451bdc8c3c08e80c.zip";
-    sha256 = "1ylvrywms5igixmkpgk6kv3a8w6d4c17dzlca9av0xxxj7ny3vgq";
+    url    = "https://github.com/linrongbin16/commons.nvim/archive/cc17fd28c5f171c5d55f75d668b812e2d70b4cf3.zip";
+    sha256 = "0w5z03r59jy3zb653dwp9c6fq8ivjj1j2ksnsx95wlmj1mx04ixi";
   };
 
-  disabled = (luaOlder "5.1");
-  propagatedBuildInputs = [ lua ];
+  disabled = luaOlder "5.1";
 
   meta = {
     homepage = "https://linrongbin16.github.io/commons.nvim/";
@@ -264,21 +223,20 @@ buildLuarocksPackage {
   };
 }) {};
 
-compat53 = callPackage({ buildLuarocksPackage, fetchurl, fetchzip, lua, luaAtLeast, luaOlder }:
+compat53 = callPackage({ buildLuarocksPackage, fetchurl, fetchzip, luaAtLeast, luaOlder }:
 buildLuarocksPackage {
   pname = "compat53";
-  version = "0.12-1";
+  version = "0.13-1";
   knownRockspec = (fetchurl {
-    url    = "mirror://luarocks/compat53-0.12-1.rockspec";
-    sha256 = "0ijp8ch3927rnj872l6cq79fd53dyfc2qg82y9b0g6kqs7cdl348";
+    url    = "mirror://luarocks/compat53-0.13-1.rockspec";
+    sha256 = "10gmhd526a5q0dl4dvjq7a5c7f3i7hcdla8hpygl79dhgbm649i3";
   }).outPath;
   src = fetchzip {
-    url    = "https://github.com/lunarmodules/lua-compat-5.3/archive/v0.12.zip";
-    sha256 = "177zk7rww76wqxqsd2kxwfzb0nd7wfacm81vxwqsc84bfccsl3j4";
+    url    = "https://github.com/lunarmodules/lua-compat-5.3/archive/v0.13.zip";
+    sha256 = "06kpx5qyk1zki2r2g6z3alwhvmays50670z7mbl55h7s0kff2cpz";
   };
 
-  disabled = (luaOlder "5.1") || (luaAtLeast "5.5");
-  propagatedBuildInputs = [ lua ];
+  disabled = luaOlder "5.1" || luaAtLeast "5.5";
 
   meta = {
     homepage = "https://github.com/lunarmodules/lua-compat-5.3";
@@ -288,7 +246,7 @@ buildLuarocksPackage {
   };
 }) {};
 
-cosmo = callPackage({ buildLuarocksPackage, fetchgit, fetchurl, lpeg }:
+cosmo = callPackage({ buildLuarocksPackage, fetchFromGitHub, fetchurl, lpeg }:
 buildLuarocksPackage {
   pname = "cosmo";
   version = "16.06.04-1";
@@ -296,31 +254,23 @@ buildLuarocksPackage {
     url    = "mirror://luarocks/cosmo-16.06.04-1.rockspec";
     sha256 = "0ipv1hrlhvaz1myz6qxabq7b7kb3bz456cya3r292487a3g9h9pb";
   }).outPath;
-  src = fetchgit ( removeAttrs (builtins.fromJSON ''{
-  "url": "https://github.com/mascarenhas/cosmo.git",
-  "rev": "e774f08cbf8d271185812a803536af8a8240ac51",
-  "date": "2016-06-17T05:39:58-07:00",
-  "path": "/nix/store/k3p4xc4cfihp4h8aj6vacr25rpcsjd96-cosmo",
-  "sha256": "03b5gwsgxd777970d2h6rx86p7ivqx7bry8xmx2r396g3w85qy2p",
-  "hash": "sha256-V3hcEB/PpJFFrx35vE7HO55rUM8GigZOOue0/jR/ZQ0=",
-  "fetchLFS": false,
-  "fetchSubmodules": true,
-  "deepClone": false,
-  "leaveDotGit": false
-}
- '') ["date" "path" "sha256"]) ;
+  src = fetchFromGitHub {
+    owner = "mascarenhas";
+    repo = "cosmo";
+    rev = "v16.06.04";
+    hash = "sha256-mJE5GkDnfZ3qAQyyyKj+aXOtlITeYs8lerGJSTzU/Tk=";
+  };
 
   propagatedBuildInputs = [ lpeg ];
 
   meta = {
     homepage = "http://cosmo.luaforge.net";
     description = "Safe templates for Lua";
-    maintainers = with lib.maintainers; [ ];
     license.fullName = "MIT/X11";
   };
 }) {};
 
-coxpcall = callPackage({ buildLuarocksPackage, fetchgit, fetchurl }:
+coxpcall = callPackage({ buildLuarocksPackage, fetchFromGitHub, fetchurl }:
 buildLuarocksPackage {
   pname = "coxpcall";
   version = "1.17.0-1";
@@ -328,19 +278,12 @@ buildLuarocksPackage {
     url    = "mirror://luarocks/coxpcall-1.17.0-1.rockspec";
     sha256 = "0mf0nggg4ajahy5y1q5zh2zx9rmgzw06572bxx6k8b736b8j7gca";
   }).outPath;
-  src = fetchgit ( removeAttrs (builtins.fromJSON ''{
-  "url": "https://github.com/keplerproject/coxpcall",
-  "rev": "ea22f44e490430e40217f0792bf82eaeaec51903",
-  "date": "2018-02-26T19:53:11-03:00",
-  "path": "/nix/store/1q4p5qvr6rlwisyarlgnmk4dx6vp8xdl-coxpcall",
-  "sha256": "1k3q1rr2kavkscf99b5njxhibhp6iwhclrjk6nnnp233iwc2jvqi",
-  "hash": "sha256-EW8pGI9jiGutNVNmyiCP5sIVYZe2rJQc03OrKXIOeMw=",
-  "fetchLFS": false,
-  "fetchSubmodules": true,
-  "deepClone": false,
-  "leaveDotGit": false
-}
- '') ["date" "path" "sha256"]) ;
+  src = fetchFromGitHub {
+    owner = "keplerproject";
+    repo = "coxpcall";
+    rev = "v1_17_0";
+    hash = "sha256-EW8pGI9jiGutNVNmyiCP5sIVYZe2rJQc03OrKXIOeMw=";
+  };
 
 
   meta = {
@@ -353,18 +296,17 @@ buildLuarocksPackage {
 cqueues = callPackage({ buildLuarocksPackage, fetchurl, lua }:
 buildLuarocksPackage {
   pname = "cqueues";
-  version = "20200726.51-0";
+  version = "20200726.52-0";
   knownRockspec = (fetchurl {
-    url    = "mirror://luarocks/cqueues-20200726.51-0.rockspec";
-    sha256 = "1y7dqvw75cj9ifn7cyhd98znaga4lksnbddcqmh512crawlf5sxv";
+    url    = "mirror://luarocks/cqueues-20200726.52-0.rockspec";
+    sha256 = "0w2kq9w0wda56k02rjmvmzccz6bc3mn70s9v7npjadh85i5zlhhp";
   }).outPath;
   src = fetchurl {
     url    = "https://github.com/wahern/cqueues/archive/rel-20200726.tar.gz";
     sha256 = "0lhd02ag3r1sxr2hx847rdjkddm04l1vf5234v5cz9bd4kfjw4cy";
   };
 
-  disabled = (lua.luaversion != "5.1");
-  propagatedBuildInputs = [ lua ];
+  disabled = lua.luaversion != "5.2";
 
   meta = {
     homepage = "http://25thandclement.com/~william/projects/cqueues.html";
@@ -374,7 +316,7 @@ buildLuarocksPackage {
   };
 }) {};
 
-cyan = callPackage({ argparse, buildLuarocksPackage, fetchgit, fetchurl, luafilesystem, tl }:
+cyan = callPackage({ argparse, buildLuarocksPackage, fetchFromGitHub, fetchurl, luafilesystem, tl }:
 buildLuarocksPackage {
   pname = "cyan";
   version = "0.3.0-1";
@@ -382,19 +324,12 @@ buildLuarocksPackage {
     url    = "mirror://luarocks/cyan-0.3.0-1.rockspec";
     sha256 = "1bs5gwgdhibj2gm8y3810b0hh6s9n00fgij8nnjag9kpqrd80vsj";
   }).outPath;
-  src = fetchgit ( removeAttrs (builtins.fromJSON ''{
-  "url": "https://github.com/teal-language/cyan",
-  "rev": "57650a3a0314a5e894c6ead30a5a52f7825f009c",
-  "date": "2023-12-07T02:47:54-06:00",
-  "path": "/nix/store/g3rqlf5cj06y2qqjlhkms51y4l142waf-cyan",
-  "sha256": "0xww1p3l0rbm7xiyax37524zybgmbrsjkpvgg327w8yndqysidfd",
-  "hash": "sha256-zbWoPW7WI37EeG/fKXVe9S3/iShndOVjP3VlQMcNnHc=",
-  "fetchLFS": false,
-  "fetchSubmodules": true,
-  "deepClone": false,
-  "leaveDotGit": false
-}
- '') ["date" "path" "sha256"]) ;
+  src = fetchFromGitHub {
+    owner = "teal-language";
+    repo = "cyan";
+    rev = "51649e4a814c05deaf5dde929ba82803f5170bbc";
+    hash = "sha256-83F2hFAXHLg4l5O0+j3zbwTv0TaCWEfWErO9C0V9W04=";
+  };
 
   propagatedBuildInputs = [ argparse luafilesystem tl ];
 
@@ -405,27 +340,23 @@ buildLuarocksPackage {
   };
 }) {};
 
-digestif = callPackage({ buildLuarocksPackage, fetchgit, lpeg, lua, luaOlder, luafilesystem }:
+digestif = callPackage({ buildLuarocksPackage, fetchFromGitHub, fetchurl, lpeg, luaOlder }:
 buildLuarocksPackage {
   pname = "digestif";
-  version = "dev-1";
-
-  src = fetchgit ( removeAttrs (builtins.fromJSON ''{
-  "url": "https://github.com/astoff/digestif",
-  "rev": "c0199f9cd86021c0a89662002d7a3411d12fb168",
-  "date": "2023-03-10T15:04:26+01:00",
-  "path": "/nix/store/3s849fwc80lf7pvgsiavqmvc5538cwwd-digestif",
-  "sha256": "0xccrrfwvcj03nnrzs3iwig7y2ahl706h413hkywcplyd5407dv9",
-  "hash": "sha256-abcDSGmeXsb9hCMQaMChUAl/XuRx6J+tHUCyzV3OjHU=",
-  "fetchLFS": false,
-  "fetchSubmodules": true,
-  "deepClone": false,
-  "leaveDotGit": false
-}
- '') ["date" "path" "sha256"]) ;
+  version = "0.5.1-1";
+  knownRockspec = (fetchurl {
+    url    = "mirror://luarocks/digestif-0.5.1-1.rockspec";
+    sha256 = "03hhzpq1szdw43slq38wbndwh8knv71q9pgwd7hvvkp9wykzjhwr";
+  }).outPath;
+  src = fetchFromGitHub {
+    owner = "astoff";
+    repo = "digestif";
+    rev = "v0.5.1";
+    hash = "sha256-8QTc4IKD1tjRlyrSZy7cyUzRkvm6IHwlOXchPf2BaMk=";
+  };
 
-  disabled = (luaOlder "5.3");
-  propagatedBuildInputs = [ lpeg lua luafilesystem ];
+  disabled = luaOlder "5.3";
+  propagatedBuildInputs = [ lpeg ];
 
   meta = {
     homepage = "https://github.com/astoff/digestif/";
@@ -434,21 +365,20 @@ buildLuarocksPackage {
   };
 }) {};
 
-dkjson = callPackage({ buildLuarocksPackage, fetchurl, lua, luaAtLeast, luaOlder }:
+dkjson = callPackage({ buildLuarocksPackage, fetchurl, luaAtLeast, luaOlder }:
 buildLuarocksPackage {
   pname = "dkjson";
   version = "2.7-1";
   knownRockspec = (fetchurl {
     url    = "mirror://luarocks/dkjson-2.7-1.rockspec";
-    sha256 = "sha256-rVMDFF/yY7fTlY4Icj4LWt72qmKMCwedbgoigqx/+U0=";
+    sha256 = "0kgrgyn848hadsfhf2wccamgdpjs1cz7424fjp9vfqzjbwa06lxd";
   }).outPath;
   src = fetchurl {
     url    = "http://dkolf.de/dkjson-lua/dkjson-2.7.tar.gz";
     sha256 = "sha256-TFGmIQLy9r23Z3fx23NgUJtKARaANYi06CVfQ1ryOVw=";
   };
 
-  disabled = (luaOlder "5.1") || (luaAtLeast "5.5");
-  propagatedBuildInputs = [ lua ];
+  disabled = luaOlder "5.1" || luaAtLeast "5.5";
 
   meta = {
     homepage = "http://dkolf.de/dkjson-lua/";
@@ -457,21 +387,20 @@ buildLuarocksPackage {
   };
 }) {};
 
-fennel = callPackage({ buildLuarocksPackage, fetchurl, lua, luaOlder }:
+fennel = callPackage({ buildLuarocksPackage, fetchurl, luaOlder }:
 buildLuarocksPackage {
   pname = "fennel";
-  version = "1.4.0-1";
+  version = "1.4.2-1";
   knownRockspec = (fetchurl {
-    url    = "mirror://luarocks/fennel-1.4.0-1.rockspec";
-    sha256 = "1ldbcrzap8ajgwmxf70g0nw7sjdpabba56y2lg3z4hpnxccpb80n";
+    url    = "mirror://luarocks/fennel-1.4.2-1.rockspec";
+    sha256 = "17ygacyqdvplyz3046ay3xr4z83sdjrxkcl21mklpxx29j8p0bv1";
   }).outPath;
   src = fetchurl {
-    url    = "https://fennel-lang.org/downloads/fennel-1.4.0.tar.gz";
-    sha256 = "0g1lzkpmzhvhkc08kmn48k3m02pkcwgslz29fb23apbhydkavlx2";
+    url    = "https://fennel-lang.org/downloads/fennel-1.4.2.tar.gz";
+    sha256 = "1inhy8rrywx8svdzhy1yaaa0cfyrmi21ckj7h8xmd7yqaw66ma86";
   };
 
-  disabled = (luaOlder "5.1");
-  propagatedBuildInputs = [ lua ];
+  disabled = luaOlder "5.1";
 
   meta = {
     homepage = "https://fennel-lang.org/";
@@ -481,7 +410,7 @@ buildLuarocksPackage {
   };
 }) {};
 
-fidget-nvim = callPackage({ buildLuarocksPackage, fetchurl, fetchzip, lua, luaOlder }:
+fidget-nvim = callPackage({ buildLuarocksPackage, fetchurl, fetchzip, luaOlder }:
 buildLuarocksPackage {
   pname = "fidget.nvim";
   version = "1.1.0-1";
@@ -494,8 +423,7 @@ buildLuarocksPackage {
     sha256 = "0bwjcqkb735wqnzc8rngvpq1b2rxgc7m0arjypvnvzsxw6wd1f61";
   };
 
-  disabled = (luaOlder "5.1");
-  propagatedBuildInputs = [ lua ];
+  disabled = luaOlder "5.1";
 
   meta = {
     homepage = "https://github.com/j-hui/fidget.nvim";
@@ -505,12 +433,12 @@ buildLuarocksPackage {
   };
 }) {};
 
-fifo = callPackage({ buildLuarocksPackage, fetchurl, fetchzip, lua }:
+fifo = callPackage({ buildLuarocksPackage, fetchurl, fetchzip }:
 buildLuarocksPackage {
   pname = "fifo";
   version = "0.2-0";
   knownRockspec = (fetchurl {
-    url    = "mirror://luarocks/fifo-0.2-0.rockspec";
+    url    = "https://raw.githubusercontent.com/rocks-moonscript-org/moonrocks-mirror/master/fifo-0.2-0.rockspec";
     sha256 = "0vr9apmai2cyra2n573nr3dyk929gzcs4nm1096jdxcixmvh2ymq";
   }).outPath;
   src = fetchzip {
@@ -518,7 +446,6 @@ buildLuarocksPackage {
     sha256 = "1800k7h5hxsvm05bjdr65djjml678lwb0661cll78z1ys2037nzn";
   };
 
-  propagatedBuildInputs = [ lua ];
 
   meta = {
     homepage = "https://github.com/daurnimator/fifo.lua";
@@ -527,7 +454,7 @@ buildLuarocksPackage {
   };
 }) {};
 
-fluent = callPackage({ buildLuarocksPackage, cldr, fetchgit, fetchurl, lua, luaOlder, luaepnf, penlight }:
+fluent = callPackage({ buildLuarocksPackage, cldr, fetchFromGitHub, fetchurl, luaOlder, luaepnf, penlight }:
 buildLuarocksPackage {
   pname = "fluent";
   version = "0.2.0-0";
@@ -535,22 +462,15 @@ buildLuarocksPackage {
     url    = "mirror://luarocks/fluent-0.2.0-0.rockspec";
     sha256 = "1x3nk8xdf923rvdijr0jx8v6w3wxxfch7ri3kxca0pw80b5bc2fa";
   }).outPath;
-  src = fetchgit ( removeAttrs (builtins.fromJSON ''{
-  "url": "https://github.com/alerque/fluent-lua.git",
-  "rev": "e1cd4130e460bcd52f9118b7d9f9a72d2e8b902c",
-  "date": "2022-04-16T23:08:20+03:00",
-  "path": "/nix/store/flxlnrzg6rx75qikiggmy494npx59p0b-fluent-lua",
-  "sha256": "12js8l4hcxhziza0sry0f01kfm8f8m6kx843dmcky36z1y2mccmq",
-  "hash": "sha256-uDJWhQ/fDD9ZbYOgPk1FDlU3A3DAZw3Ujx92BglFWoo=",
-  "fetchLFS": false,
-  "fetchSubmodules": true,
-  "deepClone": false,
-  "leaveDotGit": false
-}
- '') ["date" "path" "sha256"]) ;
+  src = fetchFromGitHub {
+    owner = "alerque";
+    repo = "fluent-lua";
+    rev = "v0.2.0";
+    hash = "sha256-uDJWhQ/fDD9ZbYOgPk1FDlU3A3DAZw3Ujx92BglFWoo=";
+  };
 
-  disabled = (luaOlder "5.1");
-  propagatedBuildInputs = [ cldr lua luaepnf penlight ];
+  disabled = luaOlder "5.1";
+  propagatedBuildInputs = [ cldr luaepnf penlight ];
 
   meta = {
     homepage = "https://github.com/alerque/fluent-lua";
@@ -560,7 +480,7 @@ buildLuarocksPackage {
   };
 }) {};
 
-funnyfiles-nvim = callPackage({ buildLuarocksPackage, fetchurl, fetchzip, lua, luaOlder }:
+funnyfiles-nvim = callPackage({ buildLuarocksPackage, fetchurl, fetchzip, luaOlder }:
 buildLuarocksPackage {
   pname = "funnyfiles.nvim";
   version = "1.0.1-1";
@@ -573,8 +493,7 @@ buildLuarocksPackage {
     sha256 = "00p026r05gldbf18mmv8da9ap09di8dhy0rrd586pr2s2s36nzpd";
   };
 
-  disabled = (luaOlder "5.1");
-  propagatedBuildInputs = [ lua ];
+  disabled = luaOlder "5.1";
 
   meta = {
     homepage = "https://github.com/aikooo7/funnyfiles.nvim";
@@ -584,21 +503,20 @@ buildLuarocksPackage {
   };
 }) {};
 
-fzf-lua = callPackage({ buildLuarocksPackage, fetchurl, fetchzip, lua, luaOlder }:
+fzf-lua = callPackage({ buildLuarocksPackage, fetchurl, fetchzip, luaOlder }:
 buildLuarocksPackage {
   pname = "fzf-lua";
-  version = "0.0.1195-1";
+  version = "0.0.1243-1";
   knownRockspec = (fetchurl {
-    url    = "mirror://luarocks/fzf-lua-0.0.1195-1.rockspec";
-    sha256 = "1bcjis9mkbzq7178fkpqkafs6656bhvq1wh13vm1r3khbvi0jkp1";
+    url    = "mirror://luarocks/fzf-lua-0.0.1243-1.rockspec";
+    sha256 = "1qg36v2gx36k313jisxyf6yjywzqngak2qcx211hd2wzxdnsaxdb";
   }).outPath;
   src = fetchzip {
-    url    = "https://github.com/ibhagwan/fzf-lua/archive/0c884bb24ab0fef204f315f34e711b13ece0ea9f.zip";
-    sha256 = "04gif5hyb6qzh649xzcwzx81rlrk2glking05q8wxp2cpa3nifpw";
+    url    = "https://github.com/ibhagwan/fzf-lua/archive/9a0912d171940e8701d1f65d5ee2b23b810720c1.zip";
+    sha256 = "0xzgpng4r9paza87fnxc3cfn331g1pmcayv1vky7jmriy5xsrxh6";
   };
 
-  disabled = (luaOlder "5.1");
-  propagatedBuildInputs = [ lua ];
+  disabled = luaOlder "5.1";
 
   meta = {
     homepage = "https://github.com/ibhagwan/fzf-lua";
@@ -608,60 +526,42 @@ buildLuarocksPackage {
   };
 }) {};
 
-fzy = callPackage({ buildLuarocksPackage, fetchgit, fetchurl, lua, luaOlder }:
+fzy = callPackage({ buildLuarocksPackage, fetchurl, fetchzip, luaOlder }:
 buildLuarocksPackage {
   pname = "fzy";
-  version = "1.0-1";
+  version = "1.0.3-1";
   knownRockspec = (fetchurl {
-    url    = "mirror://luarocks/fzy-1.0-1.rockspec";
-    sha256 = "1v050lm3rn1k5wwi2nimlbp1b7j6b8vkwvhc1npyqzj8jv7w9w9n";
+    url    = "mirror://luarocks/fzy-1.0.3-1.rockspec";
+    sha256 = "07d07afjs73bl5krfbaqx4pw2wpfrkyw2iksamkfa8dlqn9ajn1a";
   }).outPath;
-  src = fetchgit ( removeAttrs (builtins.fromJSON ''{
-  "url": "https://github.com/swarn/fzy-lua",
-  "rev": "2d018a56e3a240bca4b3142a723b2f56392f3e4a",
-  "date": "2023-01-29T07:05:02-06:00",
-  "path": "/nix/store/nz19glmy52jbz46wl7xf0jd8m441klf0-fzy-lua",
-  "sha256": "0xknm5513a6nlariwxgqndf3wj8xals26swjsv06hx133ihna01x",
-  "hash": "sha256-PQBlYRwjdGjA1pJrIzRVHUk+XLP4dR6zotaoEUqpdnY=",
-  "fetchLFS": false,
-  "fetchSubmodules": true,
-  "deepClone": false,
-  "leaveDotGit": false
-}
- '') ["date" "path" "sha256"]) ;
+  src = fetchzip {
+    url    = "https://github.com/swarn/fzy-lua/archive/v1.0.3.zip";
+    sha256 = "0w3alddhn0jd19vmminbi1b79mzlagyl1lygmfpxhzzccdv4vapm";
+  };
 
-  disabled = (luaOlder "5.1");
-  propagatedBuildInputs = [ lua ];
+  disabled = luaOlder "5.1";
 
   meta = {
     homepage = "https://github.com/swarn/fzy-lua";
-    description = "A fuzzy string-matching algorithm";
+    description = "A lua implementation of the fzy fuzzy matching algorithm";
     maintainers = with lib.maintainers; [ mrcjkb ];
     license.fullName = "MIT";
   };
 }) {};
 
-gitsigns-nvim = callPackage({ buildLuarocksPackage, fetchgit, lua }:
+gitsigns-nvim = callPackage({ buildLuarocksPackage, fetchFromGitHub, lua }:
 buildLuarocksPackage {
   pname = "gitsigns.nvim";
   version = "scm-1";
 
-  src = fetchgit ( removeAttrs (builtins.fromJSON ''{
-  "url": "https://github.com/lewis6991/gitsigns.nvim",
-  "rev": "6ef8c54fb526bf3a0bc4efb0b2fe8e6d9a7daed2",
-  "date": "2023-11-29T12:07:41+00:00",
-  "path": "/nix/store/2ihnjknz2xdwsijjimqk8i3pi9cbpvhf-gitsigns.nvim",
-  "sha256": "086jmhzgpavwjvp7ssd8ga0wxgnz480zzjiv84h4ivva2nv3lnvi",
-  "hash": "sha256-cVs6thVq70ggQTvK/wEi377OgXqoaX3ulnyr+z6s0iA=",
-  "fetchLFS": false,
-  "fetchSubmodules": true,
-  "deepClone": false,
-  "leaveDotGit": false
-}
- '') ["date" "path" "sha256"]) ;
+  src = fetchFromGitHub {
+    owner = "lewis6991";
+    repo = "gitsigns.nvim";
+    rev = "035da036e68e509ed158414416c827d022d914bd";
+    hash = "sha256-UK3DyvrQ0kLm9wrMQ6tLDoDunoThbY/Yfjn+eCZpuMw=";
+  };
 
-  disabled = (lua.luaversion != "5.1");
-  propagatedBuildInputs = [ lua ];
+  disabled = lua.luaversion != "5.1";
 
   meta = {
     homepage = "http://github.com/lewis6991/gitsigns.nvim";
@@ -670,30 +570,30 @@ buildLuarocksPackage {
   };
 }) {};
 
-haskell-tools-nvim = callPackage({ buildLuarocksPackage, fetchurl, fetchzip, lua, luaOlder }:
+haskell-tools-nvim = callPackage({ buildLuarocksPackage, fetchurl, fetchzip, luaOlder }:
 buildLuarocksPackage {
   pname = "haskell-tools.nvim";
-  version = "3.0.2-1";
+  version = "3.1.8-1";
   knownRockspec = (fetchurl {
-    url    = "mirror://luarocks/haskell-tools.nvim-3.0.2-1.rockspec";
-    sha256 = "1gls4dc4b8p0827jsvzf1n3gxfmqn1r7n8hi1rnfxwcragjxxn8x";
+    url    = "mirror://luarocks/haskell-tools.nvim-3.1.8-1.rockspec";
+    sha256 = "1jhms5gpah8lk0mn1gx127afmihyaq1fj8qrd6a8yh3wy12k1qxc";
   }).outPath;
   src = fetchzip {
-    url    = "https://github.com/mrcjkb/haskell-tools.nvim/archive/3.0.2.zip";
-    sha256 = "1rv1r0laizq866lj06akhy97zr9wdfczp1caql36k2xk4d8sbzx7";
+    url    = "https://github.com/mrcjkb/haskell-tools.nvim/archive/3.1.8.zip";
+    sha256 = "14nk6jyq2y4q93ij56bdjy17h3jlmjwsspw3l6ahvjsl6yg1lv75";
   };
 
-  disabled = (luaOlder "5.1");
-  propagatedBuildInputs = [ lua ];
+  disabled = luaOlder "5.1";
 
   meta = {
     homepage = "https://github.com/mrcjkb/haskell-tools.nvim";
     description = "Supercharge your Haskell experience in neovim!";
+    maintainers = with lib.maintainers; [ mrcjkb ];
     license.fullName = "GPL-2.0";
   };
 }) {};
 
-http = callPackage({ basexx, binaryheap, bit32, buildLuarocksPackage, compat53, cqueues, fetchurl, fetchzip, fifo, lpeg, lpeg_patterns, lua, luaOlder, luaossl }:
+http = callPackage({ basexx, binaryheap, bit32, buildLuarocksPackage, compat53, cqueues, fetchurl, fetchzip, fifo, lpeg, lpeg_patterns, luaOlder, luaossl }:
 buildLuarocksPackage {
   pname = "http";
   version = "0.3-0";
@@ -706,8 +606,8 @@ buildLuarocksPackage {
     sha256 = "1pqxxxifl2j1cik3kgayx43v6py5jp6r22myhvxfffysb3b84a2l";
   };
 
-  disabled = (luaOlder "5.1");
-  propagatedBuildInputs = [ basexx binaryheap bit32 compat53 cqueues fifo lpeg lpeg_patterns lua luaossl ];
+  disabled = luaOlder "5.1";
+  propagatedBuildInputs = [ basexx binaryheap bit32 compat53 cqueues fifo lpeg lpeg_patterns luaossl ];
 
   meta = {
     homepage = "https://github.com/daurnimator/lua-http";
@@ -717,8 +617,7 @@ buildLuarocksPackage {
   };
 }) {};
 
-image-nvim = callPackage(
-{ buildLuarocksPackage, fetchurl, fetchzip, lua, luaOlder, magick }:
+image-nvim = callPackage({ buildLuarocksPackage, fetchurl, fetchzip, luaOlder, magick }:
 buildLuarocksPackage {
   pname = "image.nvim";
   version = "1.2.0-1";
@@ -731,17 +630,18 @@ buildLuarocksPackage {
     sha256 = "1v4db60yykjajabmf12zjcg47bb814scjrig0wvn4yc11isinymg";
   };
 
-  disabled = (luaOlder "5.1");
-  propagatedBuildInputs = [ lua magick ];
+  disabled = luaOlder "5.1";
+  propagatedBuildInputs = [ magick ];
 
   meta = {
     homepage = "https://github.com/3rd/image.nvim";
     description = "🖼️ Bringing images to Neovim.";
+    maintainers = with lib.maintainers; [ teto ];
     license.fullName = "MIT";
   };
 }) {};
 
-inspect = callPackage({ buildLuarocksPackage, fetchurl, lua, luaOlder }:
+inspect = callPackage({ buildLuarocksPackage, fetchurl, luaOlder }:
 buildLuarocksPackage {
   pname = "inspect";
   version = "3.1.3-0";
@@ -754,8 +654,7 @@ buildLuarocksPackage {
     sha256 = "1sqylz5hmj5sbv4gi9988j6av3cb5lwkd7wiyim1h5lr7xhnlf23";
   };
 
-  disabled = (luaOlder "5.1");
-  propagatedBuildInputs = [ lua ];
+  disabled = luaOlder "5.1";
 
   meta = {
     homepage = "https://github.com/kikito/inspect.lua";
@@ -764,30 +663,22 @@ buildLuarocksPackage {
   };
 }) {};
 
-jsregexp = callPackage({ buildLuarocksPackage, fetchgit, fetchurl, lua, luaOlder }:
+jsregexp = callPackage({ buildLuarocksPackage, fetchFromGitHub, fetchurl, luaOlder }:
 buildLuarocksPackage {
   pname = "jsregexp";
-  version = "0.0.6-1";
+  version = "0.0.7-1";
   knownRockspec = (fetchurl {
-    url    = "mirror://luarocks/jsregexp-0.0.6-1.rockspec";
-    sha256 = "1m3vqv1p44akk020c3l3n8pdxs30rl5509gbs3rr13hmqlvil4cs";
+    url    = "mirror://luarocks/jsregexp-0.0.7-1.rockspec";
+    sha256 = "1yx0340h51xk23n0g8irj5c9bs35zy6p1zl5kp7vy2cwxazbipbl";
   }).outPath;
-  src = fetchgit ( removeAttrs (builtins.fromJSON ''{
-  "url": "https://github.com/kmarius/jsregexp.git",
-  "rev": "b5a81e21d0875667ba2458ac8ae903afd5568698",
-  "date": "2023-02-12T14:19:03+01:00",
-  "path": "/nix/store/aj42wy1yp53w406id33dyxpv1ws23g4b-jsregexp",
-  "sha256": "0l7hn5f2jl4n2bpikb72szfzgc192jy3ig5pxx9061j44amyq89m",
-  "hash": "sha256-NSHsqyJEBgNS77e8OLwUKbD33dfirBnvEpZQKVyx8FA=",
-  "fetchLFS": false,
-  "fetchSubmodules": true,
-  "deepClone": false,
-  "leaveDotGit": false
-}
- '') ["date" "path" "sha256"]) ;
+  src = fetchFromGitHub {
+    owner = "kmarius";
+    repo = "jsregexp";
+    rev = "v0.0.7";
+    hash = "sha256-aXRGmo6w7jgKlR2BwKhbFGHC0mOTwHfYsh+lvqNuFtQ=";
+  };
 
-  disabled = (luaOlder "5.1");
-  propagatedBuildInputs = [ lua ];
+  disabled = luaOlder "5.1";
 
   meta = {
     homepage = "https://github.com/kmarius/jsregexp";
@@ -796,7 +687,7 @@ buildLuarocksPackage {
   };
 }) {};
 
-ldbus = callPackage({ buildLuarocksPackage, fetchgit, fetchurl, lua, luaAtLeast, luaOlder }:
+ldbus = callPackage({ buildLuarocksPackage, fetchFromGitHub, fetchurl, luaAtLeast, luaOlder }:
 buildLuarocksPackage {
   pname = "ldbus";
   version = "scm-0";
@@ -804,22 +695,14 @@ buildLuarocksPackage {
     url    = "mirror://luarocks/ldbus-scm-0.rockspec";
     sha256 = "1c0h6fx7avzh89hl17v6simy1p4mjg8bimlsbjybks0zxznd8rbm";
   }).outPath;
-  src = fetchgit ( removeAttrs (builtins.fromJSON ''{
-  "url": "https://github.com/daurnimator/ldbus.git",
-  "rev": "6d4909c983c8a0e2c7384bac8055c628aa524ea2",
-  "date": "2021-11-10T23:58:54+11:00",
-  "path": "/nix/store/j830jk2hkanz7abkdsbvg2warsyr0a2c-ldbus",
-  "sha256": "18q98b98mfvjzbyssf18bpnlx4hsx4s9lwcwia4z9dxiaiw7b77j",
-  "hash": "sha256-8px1eFSxt/SJipxxmjTpGpJO7V0oOK39+nK7itJCCaM=",
-  "fetchLFS": false,
-  "fetchSubmodules": true,
-  "deepClone": false,
-  "leaveDotGit": false
-}
- '') ["date" "path" "sha256"]) ;
+  src = fetchFromGitHub {
+    owner = "daurnimator";
+    repo = "ldbus";
+    rev = "6d4909c983c8a0e2c7384bac8055c628aa524ea2";
+    hash = "sha256-8px1eFSxt/SJipxxmjTpGpJO7V0oOK39+nK7itJCCaM=";
+  };
 
-  disabled = (luaOlder "5.1") || (luaAtLeast "5.5");
-  propagatedBuildInputs = [ lua ];
+  disabled = luaOlder "5.1" || luaAtLeast "5.5";
 
   meta = {
     homepage = "https://github.com/daurnimator/ldbus";
@@ -828,7 +711,7 @@ buildLuarocksPackage {
   };
 }) {};
 
-ldoc = callPackage({ buildLuarocksPackage, fetchgit, fetchurl, markdown, penlight }:
+ldoc = callPackage({ buildLuarocksPackage, fetchFromGitHub, fetchurl, markdown, penlight }:
 buildLuarocksPackage {
   pname = "ldoc";
   version = "1.5.0-1";
@@ -836,19 +719,12 @@ buildLuarocksPackage {
     url    = "mirror://luarocks/ldoc-1.5.0-1.rockspec";
     sha256 = "1c0yx9j3yqlzxpmspz7n7l1nvh2sww84zhkb1fsbg042sr8h9bxp";
   }).outPath;
-  src = fetchgit ( removeAttrs (builtins.fromJSON ''{
-  "url": "https://github.com/lunarmodules/ldoc.git",
-  "rev": "09f82c959c50d8c3d5a968c379b1c75de66b002d",
-  "date": "2023-05-03T00:05:39+03:00",
-  "path": "/nix/store/7l5xpw1grnwr5m8myll63gyy4311glb1-ldoc",
-  "sha256": "0g65dd51l42693jr3251p6s40950wcwfr1kspjvc2frkwm7qpv9i",
-  "hash": "sha256-Me2LT+UzO8G2vHqG7DjjoCRAtLmhiJHlSEYQGkprxTw=",
-  "fetchLFS": false,
-  "fetchSubmodules": true,
-  "deepClone": false,
-  "leaveDotGit": false
-}
- '') ["date" "path" "sha256"]) ;
+  src = fetchFromGitHub {
+    owner = "lunarmodules";
+    repo = "ldoc";
+    rev = "v1.5.0";
+    hash = "sha256-Me2LT+UzO8G2vHqG7DjjoCRAtLmhiJHlSEYQGkprxTw=";
+  };
 
   propagatedBuildInputs = [ markdown penlight ];
 
@@ -859,7 +735,7 @@ buildLuarocksPackage {
   };
 }) {};
 
-lgi = callPackage({ buildLuarocksPackage, fetchgit, fetchurl, lua, luaOlder }:
+lgi = callPackage({ buildLuarocksPackage, fetchFromGitHub, fetchurl, luaOlder }:
 buildLuarocksPackage {
   pname = "lgi";
   version = "0.9.2-1";
@@ -867,22 +743,14 @@ buildLuarocksPackage {
     url    = "mirror://luarocks/lgi-0.9.2-1.rockspec";
     sha256 = "1gqi07m4bs7xibsy4vx8qgyp3yb1wnh0gdq1cpwqzv35y6hn5ds3";
   }).outPath;
-  src = fetchgit ( removeAttrs (builtins.fromJSON ''{
-  "url": "https://github.com/pavouk/lgi.git",
-  "rev": "0fdcf8c677094d0c109dfb199031fdbc0c9c47ea",
-  "date": "2017-10-09T20:55:55+02:00",
-  "path": "/nix/store/vh82n8pc8dy5c8nph0vssk99vv7q4qg2-lgi",
-  "sha256": "03rbydnj411xpjvwsyvhwy4plm96481d7jax544mvk7apd8sd5jj",
-  "hash": "sha256-UpamUbvqzF0JKV3J0wIiJlV6iedwe823vD0EIm3zKw8=",
-  "fetchLFS": false,
-  "fetchSubmodules": true,
-  "deepClone": false,
-  "leaveDotGit": false
-}
- '') ["date" "path" "sha256"]) ;
+  src = fetchFromGitHub {
+    owner = "pavouk";
+    repo = "lgi";
+    rev = "0.9.2";
+    hash = "sha256-UpamUbvqzF0JKV3J0wIiJlV6iedwe823vD0EIm3zKw8=";
+  };
 
-  disabled = (luaOlder "5.1");
-  propagatedBuildInputs = [ lua ];
+  disabled = luaOlder "5.1";
 
   meta = {
     homepage = "http://github.com/pavouk/lgi";
@@ -891,7 +759,7 @@ buildLuarocksPackage {
   };
 }) {};
 
-linenoise = callPackage({ buildLuarocksPackage, fetchurl, lua, luaOlder }:
+linenoise = callPackage({ buildLuarocksPackage, fetchurl, luaOlder }:
 buildLuarocksPackage {
   pname = "linenoise";
   version = "0.9-1";
@@ -901,8 +769,7 @@ buildLuarocksPackage {
     sha256 = "177h6gbq89arwiwxah9943i8hl5gvd9wivnd1nhmdl7d8x0dn76c";
   };
 
-  disabled = (luaOlder "5.1");
-  propagatedBuildInputs = [ lua ];
+  disabled = luaOlder "5.1";
 
   meta = {
     homepage = "https://github.com/hoelzro/lua-linenoise";
@@ -924,8 +791,7 @@ buildLuarocksPackage {
     sha256 = "1w9g36nhxv92cypjia7igg1xpfrn3dbs3hfy6gnnz5mx14v50abf";
   };
 
-  disabled = (lua.luaversion != "5.1");
-  propagatedBuildInputs = [ lua ];
+  disabled = lua.luaversion != "5.1";
 
   meta = {
     homepage = "http://www.myriabit.com/ljsyscall/";
@@ -935,7 +801,7 @@ buildLuarocksPackage {
   };
 }) {};
 
-lmathx = callPackage({ buildLuarocksPackage, fetchurl, lua }:
+lmathx = callPackage({ buildLuarocksPackage, fetchurl }:
 buildLuarocksPackage {
   pname = "lmathx";
   version = "20150624-1";
@@ -948,7 +814,6 @@ buildLuarocksPackage {
     sha256 = "1r0ax3lq4xx6469aqc6qlfl3jynlghzhl5j65mpdj0kyzv4nknzf";
   };
 
-  propagatedBuildInputs = [ lua ];
 
   meta = {
     homepage = "http://www.tecgraf.puc-rio.br/~lhf/ftp/lua/#lmathx";
@@ -958,7 +823,7 @@ buildLuarocksPackage {
   };
 }) {};
 
-lmpfrlib = callPackage({ buildLuarocksPackage, fetchurl, lua, luaAtLeast, luaOlder }:
+lmpfrlib = callPackage({ buildLuarocksPackage, fetchurl, luaAtLeast, luaOlder }:
 buildLuarocksPackage {
   pname = "lmpfrlib";
   version = "20170112-2";
@@ -971,8 +836,7 @@ buildLuarocksPackage {
     sha256 = "1bkfwdacj1drzqsfxf352fjppqqwi5d4j084jr9vj9dvjb31rbc1";
   };
 
-  disabled = (luaOlder "5.3") || (luaAtLeast "5.5");
-  propagatedBuildInputs = [ lua ];
+  disabled = luaOlder "5.3" || luaAtLeast "5.5";
 
   meta = {
     homepage = "http://www.circuitwizard.de/lmpfrlib/lmpfrlib.html";
@@ -982,7 +846,7 @@ buildLuarocksPackage {
   };
 }) {};
 
-loadkit = callPackage({ buildLuarocksPackage, fetchgit, fetchurl, lua, luaOlder }:
+loadkit = callPackage({ buildLuarocksPackage, fetchFromGitHub, fetchurl, luaOlder }:
 buildLuarocksPackage {
   pname = "loadkit";
   version = "1.1.0-1";
@@ -990,22 +854,14 @@ buildLuarocksPackage {
     url    = "mirror://luarocks/loadkit-1.1.0-1.rockspec";
     sha256 = "08fx0xh90r2zvjlfjkyrnw2p95xk1a0qgvlnq4siwdb2mm6fq12l";
   }).outPath;
-  src = fetchgit ( removeAttrs (builtins.fromJSON ''{
-  "url": "https://github.com/leafo/loadkit.git",
-  "rev": "95b13a36442f59b41ab52df96d52233c4a725dfd",
-  "date": "2023-08-17T11:36:25-07:00",
-  "path": "/nix/store/9xcy2p5pxiq0p17szv8p2lagb6xzb8c8-loadkit",
-  "sha256": "0hivmn5r1scxv3nckm4hqfplq33wiab3ypjwsfdkmp3bdri0dhxs",
-  "hash": "sha256-usMGYm5r3Dqb01xeP5aKfAxMr8OQ1Mns2J3pkIutO0I=",
-  "fetchLFS": false,
-  "fetchSubmodules": true,
-  "deepClone": false,
-  "leaveDotGit": false
-}
- '') ["date" "path" "sha256"]) ;
+  src = fetchFromGitHub {
+    owner = "leafo";
+    repo = "loadkit";
+    rev = "v1.1.0";
+    hash = "sha256-fw+aoP9+yDpme4qXupE07cV1QGZjb2aU7IOHapG+ihU=";
+  };
 
-  disabled = (luaOlder "5.1");
-  propagatedBuildInputs = [ lua ];
+  disabled = luaOlder "5.1";
 
   meta = {
     homepage = "https://github.com/leafo/loadkit";
@@ -1015,7 +871,7 @@ buildLuarocksPackage {
   };
 }) {};
 
-lpeg = callPackage({ buildLuarocksPackage, fetchurl, lua, luaOlder }:
+lpeg = callPackage({ buildLuarocksPackage, fetchurl, luaOlder }:
 buildLuarocksPackage {
   pname = "lpeg";
   version = "1.1.0-1";
@@ -1028,8 +884,7 @@ buildLuarocksPackage {
     sha256 = "0aimsjpcpkh3kk65f0pg1z2bp6d83rn4dg6pgbx1yv14s9kms5ab";
   };
 
-  disabled = (luaOlder "5.1");
-  propagatedBuildInputs = [ lua ];
+  disabled = luaOlder "5.1";
 
   meta = {
     homepage = "http://www.inf.puc-rio.br/~roberto/lpeg.html";
@@ -1039,7 +894,7 @@ buildLuarocksPackage {
   };
 }) {};
 
-lpeg_patterns = callPackage({ buildLuarocksPackage, fetchurl, fetchzip, lpeg, lua }:
+lpeg_patterns = callPackage({ buildLuarocksPackage, fetchurl, fetchzip, lpeg }:
 buildLuarocksPackage {
   pname = "lpeg_patterns";
   version = "0.5-0";
@@ -1052,7 +907,7 @@ buildLuarocksPackage {
     sha256 = "1s3c179a64r45ffkawv9dnxw4mzwkzj00nr9z2gs5haajgpjivw6";
   };
 
-  propagatedBuildInputs = [ lpeg lua ];
+  propagatedBuildInputs = [ lpeg ];
 
   meta = {
     homepage = "https://github.com/daurnimator/lpeg_patterns/archive/v0.5.zip";
@@ -1061,7 +916,7 @@ buildLuarocksPackage {
   };
 }) {};
 
-lpeglabel = callPackage({ buildLuarocksPackage, fetchurl, lua, luaOlder }:
+lpeglabel = callPackage({ buildLuarocksPackage, fetchurl, luaOlder }:
 buildLuarocksPackage {
   pname = "lpeglabel";
   version = "1.6.0-1";
@@ -1074,8 +929,7 @@ buildLuarocksPackage {
     sha256 = "1i02lsxj20iygqm8fy6dih1gh21lqk5qj1mv14wlrkaywnv35wcv";
   };
 
-  disabled = (luaOlder "5.1");
-  propagatedBuildInputs = [ lua ];
+  disabled = luaOlder "5.1";
 
   meta = {
     homepage = "https://github.com/sqmedeiros/lpeglabel/";
@@ -1084,7 +938,7 @@ buildLuarocksPackage {
   };
 }) {};
 
-lrexlib-gnu = callPackage({ buildLuarocksPackage, fetchgit, fetchurl, lua, luaOlder }:
+lrexlib-gnu = callPackage({ buildLuarocksPackage, fetchFromGitHub, fetchurl, luaOlder }:
 buildLuarocksPackage {
   pname = "lrexlib-gnu";
   version = "2.9.2-1";
@@ -1092,22 +946,14 @@ buildLuarocksPackage {
     url    = "mirror://luarocks/lrexlib-gnu-2.9.2-1.rockspec";
     sha256 = "14dp5lzpz2prvimpcbqjygbyh9h791h0ywjknj9wgrjjd62qsy6i";
   }).outPath;
-  src = fetchgit ( removeAttrs (builtins.fromJSON ''{
-  "url": "https://github.com/rrthomas/lrexlib.git",
-  "rev": "9aa5e7e9ca47da1bd0e023dfa0b1b2d43aa358f3",
-  "date": "2023-11-05T17:32:50+00:00",
-  "path": "/nix/store/z74bw029468iizgrv19wllpzsvazj3bg-lrexlib",
-  "sha256": "15y9ha28qq08b100a32s72h6rx1bqs7gl5h7j3zacy5ixyyl6cqg",
-  "hash": "sha256-DzNDve+xeKb+kAcW+o7GK/RsoDhaDAVAWAhgjISCyZc=",
-  "fetchLFS": false,
-  "fetchSubmodules": true,
-  "deepClone": false,
-  "leaveDotGit": false
-}
- '') ["date" "path" "sha256"]) ;
+  src = fetchFromGitHub {
+    owner = "rrthomas";
+    repo = "lrexlib";
+    rev = "rel-2-9-2";
+    hash = "sha256-DzNDve+xeKb+kAcW+o7GK/RsoDhaDAVAWAhgjISCyZc=";
+  };
 
-  disabled = (luaOlder "5.1");
-  propagatedBuildInputs = [ lua ];
+  disabled = luaOlder "5.1";
 
   meta = {
     homepage = "https://github.com/rrthomas/lrexlib";
@@ -1116,7 +962,7 @@ buildLuarocksPackage {
   };
 }) {};
 
-lrexlib-pcre = callPackage({ buildLuarocksPackage, fetchgit, fetchurl, lua, luaOlder }:
+lrexlib-pcre = callPackage({ buildLuarocksPackage, fetchFromGitHub, fetchurl, luaOlder }:
 buildLuarocksPackage {
   pname = "lrexlib-pcre";
   version = "2.9.2-1";
@@ -1124,22 +970,14 @@ buildLuarocksPackage {
     url    = "mirror://luarocks/lrexlib-pcre-2.9.2-1.rockspec";
     sha256 = "1214ssm6apgprryqvijjjn82ikb27ylq94yijqf7qjyiy6pz7dc1";
   }).outPath;
-  src = fetchgit ( removeAttrs (builtins.fromJSON ''{
-  "url": "https://github.com/rrthomas/lrexlib.git",
-  "rev": "9aa5e7e9ca47da1bd0e023dfa0b1b2d43aa358f3",
-  "date": "2023-11-05T17:32:50+00:00",
-  "path": "/nix/store/z74bw029468iizgrv19wllpzsvazj3bg-lrexlib",
-  "sha256": "15y9ha28qq08b100a32s72h6rx1bqs7gl5h7j3zacy5ixyyl6cqg",
-  "hash": "sha256-DzNDve+xeKb+kAcW+o7GK/RsoDhaDAVAWAhgjISCyZc=",
-  "fetchLFS": false,
-  "fetchSubmodules": true,
-  "deepClone": false,
-  "leaveDotGit": false
-}
- '') ["date" "path" "sha256"]) ;
+  src = fetchFromGitHub {
+    owner = "rrthomas";
+    repo = "lrexlib";
+    rev = "rel-2-9-2";
+    hash = "sha256-DzNDve+xeKb+kAcW+o7GK/RsoDhaDAVAWAhgjISCyZc=";
+  };
 
-  disabled = (luaOlder "5.1");
-  propagatedBuildInputs = [ lua ];
+  disabled = luaOlder "5.1";
 
   meta = {
     homepage = "https://github.com/rrthomas/lrexlib";
@@ -1149,7 +987,7 @@ buildLuarocksPackage {
   };
 }) {};
 
-lrexlib-posix = callPackage({ buildLuarocksPackage, fetchgit, fetchurl, lua, luaOlder }:
+lrexlib-posix = callPackage({ buildLuarocksPackage, fetchFromGitHub, fetchurl, luaOlder }:
 buildLuarocksPackage {
   pname = "lrexlib-posix";
   version = "2.9.2-1";
@@ -1157,22 +995,14 @@ buildLuarocksPackage {
     url    = "mirror://luarocks/lrexlib-posix-2.9.2-1.rockspec";
     sha256 = "1i11cdvz09a3wjhfjgc88g0mdmdrk13fnhhgskzgm5cmhsdx4s0i";
   }).outPath;
-  src = fetchgit ( removeAttrs (builtins.fromJSON ''{
-  "url": "https://github.com/rrthomas/lrexlib.git",
-  "rev": "9aa5e7e9ca47da1bd0e023dfa0b1b2d43aa358f3",
-  "date": "2023-11-05T17:32:50+00:00",
-  "path": "/nix/store/z74bw029468iizgrv19wllpzsvazj3bg-lrexlib",
-  "sha256": "15y9ha28qq08b100a32s72h6rx1bqs7gl5h7j3zacy5ixyyl6cqg",
-  "hash": "sha256-DzNDve+xeKb+kAcW+o7GK/RsoDhaDAVAWAhgjISCyZc=",
-  "fetchLFS": false,
-  "fetchSubmodules": true,
-  "deepClone": false,
-  "leaveDotGit": false
-}
- '') ["date" "path" "sha256"]) ;
+  src = fetchFromGitHub {
+    owner = "rrthomas";
+    repo = "lrexlib";
+    rev = "rel-2-9-2";
+    hash = "sha256-DzNDve+xeKb+kAcW+o7GK/RsoDhaDAVAWAhgjISCyZc=";
+  };
 
-  disabled = (luaOlder "5.1");
-  propagatedBuildInputs = [ lua ];
+  disabled = luaOlder "5.1";
 
   meta = {
     homepage = "https://github.com/rrthomas/lrexlib";
@@ -1181,7 +1011,7 @@ buildLuarocksPackage {
   };
 }) {};
 
-lua-cjson = callPackage({ buildLuarocksPackage, fetchgit, fetchurl, lua, luaOlder }:
+lua-cjson = callPackage({ buildLuarocksPackage, fetchFromGitHub, fetchurl, luaOlder }:
 buildLuarocksPackage {
   pname = "lua-cjson";
   version = "2.1.0.10-1";
@@ -1189,22 +1019,14 @@ buildLuarocksPackage {
     url    = "mirror://luarocks/lua-cjson-2.1.0.10-1.rockspec";
     sha256 = "05sp7rq72x4kdkyid1ch0yyscwsi5wk85d2hj6xwssz3h8n8drdg";
   }).outPath;
-  src = fetchgit ( removeAttrs (builtins.fromJSON ''{
-  "url": "https://github.com/openresty/lua-cjson",
-  "rev": "96e6e0ce67ed070a52223c1e9518c9018b1ce376",
-  "date": "2021-12-10T20:19:58+08:00",
-  "path": "/nix/store/1ac8lz6smfa8zqfipqfsg749l9rw4ly9-lua-cjson",
-  "sha256": "03hdsv7d77mggis58k8fmlpbh1d544m0lfqyl9rpjcqkiqs1qvza",
-  "hash": "sha256-6m8cNI4TM3lzoh47CiohpQW4Lq0OTVR0fK+e087WDQ4=",
-  "fetchLFS": false,
-  "fetchSubmodules": true,
-  "deepClone": false,
-  "leaveDotGit": false
-}
- '') ["date" "path" "sha256"]) ;
+  src = fetchFromGitHub {
+    owner = "openresty";
+    repo = "lua-cjson";
+    rev = "2.1.0.10";
+    hash = "sha256-/SeQro0FaJn91bAGjsVIin+mJF89VUm/G0KyJkV9Qps=";
+  };
 
-  disabled = (luaOlder "5.1");
-  propagatedBuildInputs = [ lua ];
+  disabled = luaOlder "5.1";
 
   meta = {
     homepage = "http://www.kyne.com.au/~mark/software/lua-cjson.php";
@@ -1213,7 +1035,7 @@ buildLuarocksPackage {
   };
 }) {};
 
-lua-cmsgpack = callPackage({ buildLuarocksPackage, fetchgit, fetchurl, lua, luaOlder }:
+lua-cmsgpack = callPackage({ buildLuarocksPackage, fetchFromGitHub, fetchurl, luaOlder }:
 buildLuarocksPackage {
   pname = "lua-cmsgpack";
   version = "0.4.0-0";
@@ -1221,22 +1043,14 @@ buildLuarocksPackage {
     url    = "mirror://luarocks/lua-cmsgpack-0.4.0-0.rockspec";
     sha256 = "10cvr6knx3qvjcw1q9v05f2qy607mai7lbq321nx682aa0n1fzin";
   }).outPath;
-  src = fetchgit ( removeAttrs (builtins.fromJSON ''{
-  "url": "https://github.com/antirez/lua-cmsgpack.git",
-  "rev": "dec1810a70d2948725f2e32cc38163de62b9d9a7",
-  "date": "2015-06-03T08:39:04+02:00",
-  "path": "/nix/store/ksqvl7hbd5s7nb6hjffyic1shldac4z2-lua-cmsgpack",
-  "sha256": "0j0ahc9rprgl6dqxybaxggjam2r5i2wqqsd6764n0d7fdpj9fqm0",
-  "hash": "sha256-oGKX5G3uNGCJOaZpjLmIJYuq5HtdLd9xM/TlmxODCkg=",
-  "fetchLFS": false,
-  "fetchSubmodules": true,
-  "deepClone": false,
-  "leaveDotGit": false
-}
- '') ["date" "path" "sha256"]) ;
+  src = fetchFromGitHub {
+    owner = "antirez";
+    repo = "lua-cmsgpack";
+    rev = "0.4.0";
+    hash = "sha256-oGKX5G3uNGCJOaZpjLmIJYuq5HtdLd9xM/TlmxODCkg=";
+  };
 
-  disabled = (luaOlder "5.1");
-  propagatedBuildInputs = [ lua ];
+  disabled = luaOlder "5.1";
 
   meta = {
     homepage = "http://github.com/antirez/lua-cmsgpack";
@@ -1245,7 +1059,7 @@ buildLuarocksPackage {
   };
 }) {};
 
-lua-curl = callPackage({ buildLuarocksPackage, fetchurl, fetchzip, lua, luaAtLeast, luaOlder }:
+lua-curl = callPackage({ buildLuarocksPackage, fetchurl, fetchzip, luaAtLeast, luaOlder }:
 buildLuarocksPackage {
   pname = "lua-curl";
   version = "0.3.13-1";
@@ -1258,8 +1072,7 @@ buildLuarocksPackage {
     sha256 = "0gn59bwrnb2mvl8i0ycr6m3jmlgx86xlr9mwnc85zfhj7zhi5anp";
   };
 
-  disabled = (luaOlder "5.1") || (luaAtLeast "5.5");
-  propagatedBuildInputs = [ lua ];
+  disabled = luaOlder "5.1" || luaAtLeast "5.5";
 
   meta = {
     homepage = "https://github.com/Lua-cURL";
@@ -1268,30 +1081,22 @@ buildLuarocksPackage {
   };
 }) {};
 
-lua-ffi-zlib = callPackage({ buildLuarocksPackage, fetchgit, fetchurl, lua, luaOlder }:
+lua-ffi-zlib = callPackage({ buildLuarocksPackage, fetchFromGitHub, fetchurl, luaOlder }:
 buildLuarocksPackage {
   pname = "lua-ffi-zlib";
   version = "0.6-0";
   knownRockspec = (fetchurl {
-    url    = "mirror://luarocks/lua-ffi-zlib-0.6-0.rockspec";
+    url    = "https://raw.githubusercontent.com/rocks-moonscript-org/moonrocks-mirror/master/lua-ffi-zlib-0.6-0.rockspec";
     sha256 = "060sac715f1ris13fjv6gwqm0lk6by0a2zhldxd8hdrc0jss8p34";
   }).outPath;
-  src = fetchgit ( removeAttrs (builtins.fromJSON ''{
-  "url": "https://github.com/hamishforbes/lua-ffi-zlib",
-  "rev": "61e95cb434e4047c8bc65a180c293a05bf754416",
-  "date": "2023-08-11T09:28:16+12:00",
-  "path": "/nix/store/gfyr81q84mgpgwyh28xpzlf34ndjkfwc-lua-ffi-zlib",
-  "sha256": "0r6vima495h0d4f8ibf3fv9b6k7rqnavgvsy78dybslrm7lwsz4p",
-  "hash": "sha256-l3zN6amZ6uUbOl7vt5XF+Uyz0nbDrYgcaQCWRFSN22Q=",
-  "fetchLFS": false,
-  "fetchSubmodules": true,
-  "deepClone": false,
-  "leaveDotGit": false
-}
- '') ["date" "path" "sha256"]) ;
+  src = fetchFromGitHub {
+    owner = "hamishforbes";
+    repo = "lua-ffi-zlib";
+    rev = "v0.6";
+    hash = "sha256-l3zN6amZ6uUbOl7vt5XF+Uyz0nbDrYgcaQCWRFSN22Q=";
+  };
 
-  disabled = (luaOlder "5.1");
-  propagatedBuildInputs = [ lua ];
+  disabled = luaOlder "5.1";
 
   meta = {
     homepage = "https://github.com/hamishforbes/lua-ffi-zlib";
@@ -1299,7 +1104,7 @@ buildLuarocksPackage {
   };
 }) {};
 
-lua-iconv = callPackage({ buildLuarocksPackage, fetchurl, lua, luaOlder }:
+lua-iconv = callPackage({ buildLuarocksPackage, fetchurl, luaOlder }:
 buildLuarocksPackage {
   pname = "lua-iconv";
   version = "7.0.0-4";
@@ -1312,8 +1117,7 @@ buildLuarocksPackage {
     sha256 = "0arp0h342hpp4kfdxc69yxspziky4v7c13jbf12yrs8f1lnjzr0x";
   };
 
-  disabled = (luaOlder "5.1");
-  propagatedBuildInputs = [ lua ];
+  disabled = luaOlder "5.1";
 
   meta = {
     homepage = "https://github.com/lunarmodules/lua-iconv/";
@@ -1322,30 +1126,23 @@ buildLuarocksPackage {
   };
 }) {};
 
-lua-lsp = callPackage({ buildLuarocksPackage, dkjson, fetchgit, fetchurl, inspect, lpeglabel, lua, luaAtLeast, luaOlder }:
+lua-lsp = callPackage({ buildLuarocksPackage, dkjson, fetchFromGitHub, fetchurl, inspect, lpeglabel, luaAtLeast, luaOlder }:
 buildLuarocksPackage {
   pname = "lua-lsp";
   version = "0.1.0-2";
   knownRockspec = (fetchurl {
-    url    = "mirror://luarocks/lua-lsp-0.1.0-2.rockspec";
+    url    = "https://raw.githubusercontent.com/rocks-moonscript-org/moonrocks-mirror/master/lua-lsp-0.1.0-2.rockspec";
     sha256 = "19jsz00qlgbyims6cg8i40la7v8kr7zsxrrr3dg0kdg0i36xqs6c";
   }).outPath;
-  src = fetchgit ( removeAttrs (builtins.fromJSON ''{
-  "url": "https://github.com/Alloyed/lua-lsp",
-  "rev": "6afbe53b43d9fb2e70edad50081cc3062ca3d78f",
-  "date": "2020-10-17T15:07:11-04:00",
-  "path": "/nix/store/qn9syhm875k1qardhhsp025cm3dbnqvm-lua-lsp",
-  "sha256": "17k3jq61jz6j9bz4vc3hmsfx1s26cfgq1acja8fqyixljklmsbqp",
-  "hash": "sha256-Fy9d6ZS0R48dUpKpgJ9jRujQna5wsE3+StJ8GQyWY54=",
-  "fetchLFS": false,
-  "fetchSubmodules": true,
-  "deepClone": false,
-  "leaveDotGit": false
-}
- '') ["date" "path" "sha256"]) ;
+  src = fetchFromGitHub {
+    owner = "Alloyed";
+    repo = "lua-lsp";
+    rev = "v0.1.0";
+    hash = "sha256-Fy9d6ZS0R48dUpKpgJ9jRujQna5wsE3+StJ8GQyWY54=";
+  };
 
-  disabled = (luaOlder "5.1") || (luaAtLeast "5.4");
-  propagatedBuildInputs = [ dkjson inspect lpeglabel lua ];
+  disabled = luaOlder "5.1" || luaAtLeast "5.4";
+  propagatedBuildInputs = [ dkjson inspect lpeglabel ];
 
   meta = {
     homepage = "https://github.com/Alloyed/lua-lsp";
@@ -1354,7 +1151,7 @@ buildLuarocksPackage {
   };
 }) {};
 
-lua-messagepack = callPackage({ buildLuarocksPackage, fetchurl, lua, luaOlder }:
+lua-messagepack = callPackage({ buildLuarocksPackage, fetchurl, luaOlder }:
 buildLuarocksPackage {
   pname = "lua-messagepack";
   version = "0.5.4-1";
@@ -1367,8 +1164,7 @@ buildLuarocksPackage {
     sha256 = "0kk1n9kf6wip8k2xx4wjlv7647biji2p86v4jf0h6d6wkaypq0kz";
   };
 
-  disabled = (luaOlder "5.1");
-  propagatedBuildInputs = [ lua ];
+  disabled = luaOlder "5.1";
 
   meta = {
     homepage = "https://fperrad.frama.io/lua-MessagePack/";
@@ -1377,30 +1173,22 @@ buildLuarocksPackage {
   };
 }) {};
 
-lua-protobuf = callPackage({ buildLuarocksPackage, fetchgit, fetchurl, lua, luaOlder }:
+lua-protobuf = callPackage({ buildLuarocksPackage, fetchFromGitHub, fetchurl, luaOlder }:
 buildLuarocksPackage {
   pname = "lua-protobuf";
-  version = "0.5.0-1";
+  version = "0.5.1-1";
   knownRockspec = (fetchurl {
-    url    = "mirror://luarocks/lua-protobuf-0.5.0-1.rockspec";
-    sha256 = "08z73rsqi7ysdyjcwfqyr8z6i5r43kx5fd8l32wlzv6cx6yvlqc9";
+    url    = "mirror://luarocks/lua-protobuf-0.5.1-1.rockspec";
+    sha256 = "1ljn0xwrhcr49k4fzrh0g1q13j16sa6h3wd5q62995q4jlrmnhja";
   }).outPath;
-  src = fetchgit ( removeAttrs (builtins.fromJSON ''{
-  "url": "https://github.com/starwing/lua-protobuf.git",
-  "rev": "a256c34e12cad643d6ad189bddcbc314da9b0658",
-  "date": "2023-04-30T02:11:27+08:00",
-  "path": "/nix/store/n7ihjh36kp2f80016f9y8xydia2pclzq-lua-protobuf",
-  "sha256": "1kbanbgvmzcfnxq30f8hmirgc1d768lacpjihis9961pc7w96l9n",
-  "hash": "sha256-NlGT+GE3mJR0hFFepigypwX2cqwQOTBwt479ut+yas0=",
-  "fetchLFS": false,
-  "fetchSubmodules": true,
-  "deepClone": false,
-  "leaveDotGit": false
-}
- '') ["date" "path" "sha256"]) ;
+  src = fetchFromGitHub {
+    owner = "starwing";
+    repo = "lua-protobuf";
+    rev = "0.5.1";
+    hash = "sha256-Di4fahYlTFfJ2xM6KMs5BY44JV7IKBxxR345uk8X9W8=";
+  };
 
-  disabled = (luaOlder "5.1");
-  propagatedBuildInputs = [ lua ];
+  disabled = luaOlder "5.1";
 
   meta = {
     homepage = "https://github.com/starwing/lua-protobuf";
@@ -1410,30 +1198,22 @@ buildLuarocksPackage {
   };
 }) {};
 
-lua-resty-http = callPackage({ buildLuarocksPackage, fetchgit, fetchurl, lua, luaOlder }:
+lua-resty-http = callPackage({ buildLuarocksPackage, fetchFromGitHub, fetchurl, luaOlder }:
 buildLuarocksPackage {
   pname = "lua-resty-http";
-  version = "0.17.1-0";
+  version = "0.17.2-0";
   knownRockspec = (fetchurl {
-    url    = "mirror://luarocks/lua-resty-http-0.17.1-0.rockspec";
-    sha256 = "05gid7c5i459clw707z1jic42s52ap4z66dbr9ims5znaq5s3wdk";
+    url    = "mirror://luarocks/lua-resty-http-0.17.2-0.rockspec";
+    sha256 = "10swbq779d1q794d17269v0ln26hblsk7kvxj9s60rx71skzql6s";
   }).outPath;
-  src = fetchgit ( removeAttrs (builtins.fromJSON ''{
-  "url": "https://github.com/ledgetech/lua-resty-http",
-  "rev": "4ab4269cf442ba52507aa2c718f606054452fcad",
-  "date": "2023-03-22T09:48:56+00:00",
-  "path": "/nix/store/ykd1d5fa56i1c286k58jm233lqvdv2mi-lua-resty-http",
-  "sha256": "0xdhygjqjpfkq1bq8b09fichww57q1z694lz16i3hcc3g4sr4hxg",
-  "hash": "sha256-r0OSNXmDMTiiCZ+SZH7Ap3AOWXQJLIRXwNNdieXzsHU=",
-  "fetchLFS": false,
-  "fetchSubmodules": true,
-  "deepClone": false,
-  "leaveDotGit": false
-}
- '') ["date" "path" "sha256"]) ;
+  src = fetchFromGitHub {
+    owner = "ledgetech";
+    repo = "lua-resty-http";
+    rev = "v0.17.2";
+    hash = "sha256-Ph3PpzQYKYMvPvjYwx4TeZ9RYoryMsO6mLpkAq/qlHY=";
+  };
 
-  disabled = (luaOlder "5.1");
-  propagatedBuildInputs = [ lua ];
+  disabled = luaOlder "5.1";
 
   meta = {
     homepage = "https://github.com/ledgetech/lua-resty-http";
@@ -1442,7 +1222,7 @@ buildLuarocksPackage {
   };
 }) {};
 
-lua-resty-jwt = callPackage({ buildLuarocksPackage, fetchgit, fetchurl, lua, lua-resty-openssl, luaOlder }:
+lua-resty-jwt = callPackage({ buildLuarocksPackage, fetchFromGitHub, fetchurl, lua-resty-openssl, luaOlder }:
 buildLuarocksPackage {
   pname = "lua-resty-jwt";
   version = "0.2.3-0";
@@ -1450,22 +1230,15 @@ buildLuarocksPackage {
     url    = "mirror://luarocks/lua-resty-jwt-0.2.3-0.rockspec";
     sha256 = "1fxdwfr4pna3fdfm85kin97n53caq73h807wjb59wpqiynbqzc8c";
   }).outPath;
-  src = fetchgit ( removeAttrs (builtins.fromJSON ''{
-  "url": "https://github.com/cdbattags/lua-resty-jwt",
-  "rev": "b3d5c085643fa95099e72a609c57095802106ff9",
-  "date": "2021-01-20T16:53:57-05:00",
-  "path": "/nix/store/z4a8ffxj2i3gbjp0f8r377cdp88lkzl4-lua-resty-jwt",
-  "sha256": "07w8r8gqbby06x493qzislig7a3giw0anqr4ivp3g2ms8v9fnng6",
-  "hash": "sha256-5lnr0ka6ijfujiRjqwCPb6jzItXx45FIN8CvhR/KiB8=",
-  "fetchLFS": false,
-  "fetchSubmodules": true,
-  "deepClone": false,
-  "leaveDotGit": false
-}
- '') ["date" "path" "sha256"]) ;
+  src = fetchFromGitHub {
+    owner = "cdbattags";
+    repo = "lua-resty-jwt";
+    rev = "v0.2.3";
+    hash = "sha256-m8UbvKk2DR8yCYX9Uv5HjXcZDVyVeRlUKp7UiaN/SkA=";
+  };
 
-  disabled = (luaOlder "5.1");
-  propagatedBuildInputs = [ lua lua-resty-openssl ];
+  disabled = luaOlder "5.1";
+  propagatedBuildInputs = [ lua-resty-openssl ];
 
   meta = {
     homepage = "https://github.com/cdbattags/lua-resty-jwt";
@@ -1474,7 +1247,7 @@ buildLuarocksPackage {
   };
 }) {};
 
-lua-resty-openidc = callPackage({ buildLuarocksPackage, fetchgit, fetchurl, lua, lua-resty-http, lua-resty-jwt, lua-resty-session, luaOlder }:
+lua-resty-openidc = callPackage({ buildLuarocksPackage, fetchFromGitHub, fetchurl, lua-resty-http, lua-resty-jwt, lua-resty-session, luaOlder }:
 buildLuarocksPackage {
   pname = "lua-resty-openidc";
   version = "1.7.6-3";
@@ -1482,22 +1255,15 @@ buildLuarocksPackage {
     url    = "mirror://luarocks/lua-resty-openidc-1.7.6-3.rockspec";
     sha256 = "08nq24kxw51xiyyp5jailyqjfsgz4m4fzy4hb7g3fv76vcsf8msp";
   }).outPath;
-  src = fetchgit ( removeAttrs (builtins.fromJSON ''{
-  "url": "https://github.com/zmartzone/lua-resty-openidc",
-  "rev": "5a7b9e2cfe4f5aab7c60032e6ca94d2d534f7d19",
-  "date": "2023-01-30T19:06:51+01:00",
-  "path": "/nix/store/nyd2jqhlq8gx4chapqyxk2q4dsxgm8hz-lua-resty-openidc",
-  "sha256": "15dh9z7y84n840x02xsn2m9h9hdakbbv4p1z7dfz85v5w5i6c86p",
-  "hash": "sha256-1yBmYuFlF/RdOz9csteaqsEEUxVWdwE6IMgS5M9PsJU=",
-  "fetchLFS": false,
-  "fetchSubmodules": true,
-  "deepClone": false,
-  "leaveDotGit": false
-}
- '') ["date" "path" "sha256"]) ;
+  src = fetchFromGitHub {
+    owner = "zmartzone";
+    repo = "lua-resty-openidc";
+    rev = "v1.7.6";
+    hash = "sha256-1yBmYuFlF/RdOz9csteaqsEEUxVWdwE6IMgS5M9PsJU=";
+  };
 
-  disabled = (luaOlder "5.1");
-  propagatedBuildInputs = [ lua lua-resty-http lua-resty-jwt lua-resty-session ];
+  disabled = luaOlder "5.1";
+  propagatedBuildInputs = [ lua-resty-http lua-resty-jwt lua-resty-session ];
 
   meta = {
     homepage = "https://github.com/zmartzone/lua-resty-openidc";
@@ -1506,27 +1272,20 @@ buildLuarocksPackage {
   };
 }) {};
 
-lua-resty-openssl = callPackage({ buildLuarocksPackage, fetchgit, fetchurl }:
+lua-resty-openssl = callPackage({ buildLuarocksPackage, fetchFromGitHub, fetchurl }:
 buildLuarocksPackage {
   pname = "lua-resty-openssl";
-  version = "1.0.2-1";
+  version = "1.3.1-1";
   knownRockspec = (fetchurl {
-    url    = "mirror://luarocks/lua-resty-openssl-1.0.2-1.rockspec";
-    sha256 = "000ak4rfm56z7g2b7jr7k2m4hp6kcx970cnv29acjazrz6kr60r2";
+    url    = "mirror://luarocks/lua-resty-openssl-1.3.1-1.rockspec";
+    sha256 = "1rqsmsnnnz78yb0x2xf7764l3rk54ngk3adm6an4g7dm5kryv33f";
   }).outPath;
-  src = fetchgit ( removeAttrs (builtins.fromJSON ''{
-  "url": "https://github.com/fffonion/lua-resty-openssl.git",
-  "rev": "5aba923e78ae0f213f3b4719effa879e3971821f",
-  "date": "2023-11-22T15:44:01+08:00",
-  "path": "/nix/store/fww02frnja73z8bhxqz5nyji5nam77ab-lua-resty-openssl",
-  "sha256": "10fxfjafl9wyv2jz7j25xkklx1c2ykvi0yqskyij45d0rzimil5z",
-  "hash": "sha256-v9BY48+gFSKjnxp7EPf0goVO5+xFyPOl2J4n6pR03YE=",
-  "fetchLFS": false,
-  "fetchSubmodules": true,
-  "deepClone": false,
-  "leaveDotGit": false
-}
- '') ["date" "path" "sha256"]) ;
+  src = fetchFromGitHub {
+    owner = "fffonion";
+    repo = "lua-resty-openssl";
+    rev = "1.3.1";
+    hash = "sha256-4h6oIdiMyW9enJToUBtRuUdnKSyWuFFxIDvj4dFRKDs=";
+  };
 
 
   meta = {
@@ -1536,7 +1295,7 @@ buildLuarocksPackage {
   };
 }) {};
 
-lua-resty-session = callPackage({ buildLuarocksPackage, fetchgit, fetchurl, lua, lua-ffi-zlib, lua-resty-openssl, luaOlder }:
+lua-resty-session = callPackage({ buildLuarocksPackage, fetchFromGitHub, fetchurl, lua-ffi-zlib, lua-resty-openssl, luaOlder }:
 buildLuarocksPackage {
   pname = "lua-resty-session";
   version = "4.0.5-1";
@@ -1544,22 +1303,15 @@ buildLuarocksPackage {
     url    = "mirror://luarocks/lua-resty-session-4.0.5-1.rockspec";
     sha256 = "0h0kqwna46mrraq310qjb7yigxwv13n4czk24xnqr21czxsskzkg";
   }).outPath;
-  src = fetchgit ( removeAttrs (builtins.fromJSON ''{
-  "url": "https://github.com/bungle/lua-resty-session.git",
-  "rev": "5f2aed616d16fa7ca04dc40e23d6941740cd634d",
-  "date": "2023-08-16T18:24:43+03:00",
-  "path": "/nix/store/s6i1idv9lx52x7lcl0kc2c9sm9pic4kq-lua-resty-session",
-  "sha256": "08pih1baqhlvsqvcr1zzympmn8v7gskmis6ffhigll37hbzvljcz",
-  "hash": "sha256-n0m6/4JnUPoidM7oWKd+ZyNbb/X/h8w21ptCrFaA8SI=",
-  "fetchLFS": false,
-  "fetchSubmodules": true,
-  "deepClone": false,
-  "leaveDotGit": false
-}
- '') ["date" "path" "sha256"]) ;
+  src = fetchFromGitHub {
+    owner = "bungle";
+    repo = "lua-resty-session";
+    rev = "v4.0.5";
+    hash = "sha256-n0m6/4JnUPoidM7oWKd+ZyNbb/X/h8w21ptCrFaA8SI=";
+  };
 
-  disabled = (luaOlder "5.1");
-  propagatedBuildInputs = [ lua lua-ffi-zlib lua-resty-openssl ];
+  disabled = luaOlder "5.1";
+  propagatedBuildInputs = [ lua-ffi-zlib lua-resty-openssl ];
 
   meta = {
     homepage = "https://github.com/bungle/lua-resty-session";
@@ -1568,27 +1320,20 @@ buildLuarocksPackage {
   };
 }) {};
 
-lua-rtoml = callPackage({ buildLuarocksPackage, fetchgit, lua, luaOlder, luarocks-build-rust-mlua }:
+lua-rtoml = callPackage({ buildLuarocksPackage, fetchFromGitHub, luaOlder, luarocks-build-rust-mlua }:
 buildLuarocksPackage {
   pname = "lua-rtoml";
   version = "0.2-0";
 
-  src = fetchgit ( removeAttrs (builtins.fromJSON ''{
-  "url": "https://github.com/lblasc/lua-rtoml.git",
-  "rev": "c83f56b9519d85968d663308e303f384c55c7b18",
-  "date": "2023-11-02T14:28:19+01:00",
-  "path": "/nix/store/x6mm838p27gwk45j23jkd0cpzxncxgci-lua-rtoml",
-  "sha256": "11i2km1k686nbh2ylfrcn3grd816vdhnigjjaiykkgwj0i8il6ix",
-  "hash": "sha256-PRoaUQSSvzl9VFK+aGHbJqCW37AsO+oFXNYgM0OdIoY=",
-  "fetchLFS": false,
-  "fetchSubmodules": true,
-  "deepClone": false,
-  "leaveDotGit": false
-}
- '') ["date" "path" "sha256"]) ;
+  src = fetchFromGitHub {
+    owner = "lblasc";
+    repo = "lua-rtoml";
+    rev = "c83f56b9519d85968d663308e303f384c55c7b18";
+    hash = "sha256-PRoaUQSSvzl9VFK+aGHbJqCW37AsO+oFXNYgM0OdIoY=";
+  };
 
-  disabled = (luaOlder "5.1");
-  propagatedBuildInputs = [ lua luarocks-build-rust-mlua ];
+  disabled = luaOlder "5.1";
+  propagatedBuildInputs = [ luarocks-build-rust-mlua ];
 
   meta = {
     homepage = "https://github.com/lblasc/lua-rtoml";
@@ -1598,27 +1343,19 @@ buildLuarocksPackage {
   };
 }) {};
 
-lua-subprocess = callPackage({ buildLuarocksPackage, fetchgit, lua, luaOlder }:
+lua-subprocess = callPackage({ buildLuarocksPackage, fetchFromGitHub, luaOlder }:
 buildLuarocksPackage {
   pname = "subprocess";
   version = "scm-1";
 
-  src = fetchgit ( removeAttrs (builtins.fromJSON ''{
-  "url": "https://github.com/0x0ade/lua-subprocess.git",
-  "rev": "bfa8e97da774141f301cfd1106dca53a30a4de54",
-  "date": "2021-01-09T22:31:54+01:00",
-  "path": "/nix/store/3lr7n1k85kbf718wxr51xd40i8dfs5qd-lua-subprocess",
-  "sha256": "0p91hda0b0hpgdbff5drcyygaizq086gw8vnvzn0y0fg3mc9if70",
-  "hash": "sha256-4LiYWB3PAQ/s33Yj/gwC+Ef1vGe5FedWexeCBVSDIV0=",
-  "fetchLFS": false,
-  "fetchSubmodules": true,
-  "deepClone": false,
-  "leaveDotGit": false
-}
- '') ["date" "path" "sha256"]) ;
+  src = fetchFromGitHub {
+    owner = "0x0ade";
+    repo = "lua-subprocess";
+    rev = "bfa8e97da774141f301cfd1106dca53a30a4de54";
+    hash = "sha256-4LiYWB3PAQ/s33Yj/gwC+Ef1vGe5FedWexeCBVSDIV0=";
+  };
 
-  disabled = (luaOlder "5.1");
-  propagatedBuildInputs = [ lua ];
+  disabled = luaOlder "5.1";
 
   meta = {
     homepage = "https://github.com/xlq/lua-subprocess";
@@ -1631,14 +1368,14 @@ buildLuarocksPackage {
 lua-term = callPackage({ buildLuarocksPackage, fetchurl }:
 buildLuarocksPackage {
   pname = "lua-term";
-  version = "0.7-1";
+  version = "0.8-1";
   knownRockspec = (fetchurl {
-    url    = "mirror://luarocks/lua-term-0.7-1.rockspec";
-    sha256 = "0r9g5jw7pqr1dyj6w58dqlr7y7l0jp077n8nnji4phf10biyrvg2";
+    url    = "mirror://luarocks/lua-term-0.8-1.rockspec";
+    sha256 = "1728lj3x8shc5m1yczrl75szq15rnfpzk36n0m49181ly9wxn7s0";
   }).outPath;
   src = fetchurl {
-    url    = "https://github.com/hoelzro/lua-term/archive/0.07.tar.gz";
-    sha256 = "0c3zc0cl3a5pbdn056vnlan16g0wimv0p9bq52h7w507f72x18f1";
+    url    = "https://github.com/hoelzro/lua-term/archive/0.08.tar.gz";
+    sha256 = "1vfdg5dzqdi3gn6wpc9a3djhsl6fn2ikqdwr8rrqrnd91qwlzycg";
   };
 
 
@@ -1649,7 +1386,7 @@ buildLuarocksPackage {
   };
 }) {};
 
-lua-toml = callPackage({ buildLuarocksPackage, fetchgit, fetchurl, lua, luaOlder }:
+lua-toml = callPackage({ buildLuarocksPackage, fetchFromGitHub, fetchurl, luaOlder }:
 buildLuarocksPackage {
   pname = "lua-toml";
   version = "2.0-1";
@@ -1657,22 +1394,14 @@ buildLuarocksPackage {
     url    = "mirror://luarocks/lua-toml-2.0-1.rockspec";
     sha256 = "0zd3hrj1ifq89rjby3yn9y96vk20ablljvqdap981navzlbb7zvq";
   }).outPath;
-  src = fetchgit ( removeAttrs (builtins.fromJSON ''{
-  "url": "https://github.com/jonstoler/lua-toml.git",
-  "rev": "13731a5dd48c8c314d2451760604810bd6221085",
-  "date": "2017-12-08T16:30:50-08:00",
-  "path": "/nix/store/cnpflpyj441c65jhb68hjr2bcvnj9han-lua-toml",
-  "sha256": "0lklhgs4n7gbgva5frs39240da1y4nwlx6yxaj3ix6r5lp9sh07b",
-  "hash": "sha256-6wCo06Ulmx6HVN2bTrklPqgGiEhDZ1fUfusdS/SDdFI=",
-  "fetchLFS": false,
-  "fetchSubmodules": true,
-  "deepClone": false,
-  "leaveDotGit": false
-}
- '') ["date" "path" "sha256"]) ;
+  src = fetchFromGitHub {
+    owner = "jonstoler";
+    repo = "lua-toml";
+    rev = "v2.0.1";
+    hash = "sha256-6wCo06Ulmx6HVN2bTrklPqgGiEhDZ1fUfusdS/SDdFI=";
+  };
 
-  disabled = (luaOlder "5.1");
-  propagatedBuildInputs = [ lua ];
+  disabled = luaOlder "5.1";
 
   meta = {
     homepage = "https://github.com/jonstoler/lua-toml";
@@ -1681,7 +1410,30 @@ buildLuarocksPackage {
   };
 }) {};
 
-lua-yajl = callPackage({ buildLuarocksPackage, fetchgit, fetchurl, lua, luaOlder }:
+lua-utils-nvim = callPackage({ buildLuarocksPackage, fetchurl, fetchzip, luaOlder }:
+buildLuarocksPackage {
+  pname = "lua-utils.nvim";
+  version = "1.0.2-1";
+  knownRockspec = (fetchurl {
+    url    = "mirror://luarocks/lua-utils.nvim-1.0.2-1.rockspec";
+    sha256 = "0s11j4vd26haz72rb0c5m5h953292rh8r62mvlxbss6i69v2dkr9";
+  }).outPath;
+  src = fetchzip {
+    url    = "https://github.com/nvim-neorg/lua-utils.nvim/archive/v1.0.2.zip";
+    sha256 = "0bnl2kvxs55l8cjhfpa834bm010n8r4gmsmivjcp548c076msagn";
+  };
+
+  disabled = luaOlder "5.1";
+
+  meta = {
+    homepage = "https://github.com/nvim-neorg/lua-utils.nvim";
+    description = "A set of utility functions for Neovim plugins.";
+    maintainers = with lib.maintainers; [ mrcjkb ];
+    license.fullName = "MIT";
+  };
+}) {};
+
+lua-yajl = callPackage({ buildLuarocksPackage, fetchFromGitHub, fetchurl, luaOlder }:
 buildLuarocksPackage {
   pname = "lua-yajl";
   version = "2.0-1";
@@ -1689,22 +1441,14 @@ buildLuarocksPackage {
     url    = "mirror://luarocks/lua-yajl-2.0-1.rockspec";
     sha256 = "0h600zgq5qc9z3cid1kr35q3qb98alg0m3qf0a3mfj33hya6pcxp";
   }).outPath;
-  src = fetchgit ( removeAttrs (builtins.fromJSON ''{
-  "url": "https://github.com/brimworks/lua-yajl.git",
-  "rev": "c0b598a70966b6cabc57a110037faf9091436f30",
-  "date": "2020-11-12T06:22:23-08:00",
-  "path": "/nix/store/9acgxpqk52kwn03m5xasn4f6mmsby2r9-lua-yajl",
-  "sha256": "1frry90y7vqnw1rd1dfnksilynh0n24gfhkmjd6wwba73prrg0pf",
-  "hash": "sha256-7oKX8x1HLc5Nk3VC94iwAFpPo57WtdBy4Bbv40HyObs=",
-  "fetchLFS": false,
-  "fetchSubmodules": true,
-  "deepClone": false,
-  "leaveDotGit": false
-}
- '') ["date" "path" "sha256"]) ;
+  src = fetchFromGitHub {
+    owner = "brimworks";
+    repo = "lua-yajl";
+    rev = "v2.0";
+    hash = "sha256-/UhdjTUzd5ZsQG3CaS6i0cYOgkLR4TJCUAcw5yYhYEI=";
+  };
 
-  disabled = (luaOlder "5.1");
-  propagatedBuildInputs = [ lua ];
+  disabled = luaOlder "5.1";
 
   meta = {
     homepage = "http://github.com/brimworks/lua-yajl";
@@ -1714,7 +1458,7 @@ buildLuarocksPackage {
   };
 }) {};
 
-lua-zlib = callPackage({ buildLuarocksPackage, fetchgit, fetchurl, lua, luaOlder }:
+lua-zlib = callPackage({ buildLuarocksPackage, fetchFromGitHub, fetchurl, luaOlder }:
 buildLuarocksPackage {
   pname = "lua-zlib";
   version = "1.2-2";
@@ -1722,22 +1466,14 @@ buildLuarocksPackage {
     url    = "mirror://luarocks/lua-zlib-1.2-2.rockspec";
     sha256 = "1ycjy59w6rkhasqqbiyra0f1sj87fswcz25zwxy4gyv7rrwy5hxd";
   }).outPath;
-  src = fetchgit ( removeAttrs (builtins.fromJSON ''{
-  "url": "https://github.com/brimworks/lua-zlib.git",
-  "rev": "a305d98f473d0a253b6fd740ce60d7d5a5f1cda0",
-  "date": "2017-10-07T08:26:37-07:00",
-  "path": "/nix/store/6hjfczd3xkilkdxidgqzdrwmaiwnlf05-lua-zlib",
-  "sha256": "1cv12s5c5lihmf3hb0rz05qf13yihy1bjpb7448v8mkiss6y1s5c",
-  "hash": "sha256-rOjgjdZxVrQRIWdduYKH0Y/gcAE/gwWHqzDSwooWYbM=",
-  "fetchLFS": false,
-  "fetchSubmodules": true,
-  "deepClone": false,
-  "leaveDotGit": false
-}
- '') ["date" "path" "sha256"]) ;
+  src = fetchFromGitHub {
+    owner = "brimworks";
+    repo = "lua-zlib";
+    rev = "v1.2";
+    hash = "sha256-3gDYO4KcGUmcJFV22NDXWrFDwHNmPvMp++iXrz+QbC0=";
+  };
 
-  disabled = (luaOlder "5.1");
-  propagatedBuildInputs = [ lua ];
+  disabled = luaOlder "5.1";
 
   meta = {
     homepage = "https://github.com/brimworks/lua-zlib";
@@ -1747,50 +1483,43 @@ buildLuarocksPackage {
   };
 }) {};
 
-lua_cliargs = callPackage({ buildLuarocksPackage, fetchurl, lua, luaOlder }:
+lua_cliargs = callPackage({ buildLuarocksPackage, fetchFromGitHub, fetchurl, luaOlder }:
 buildLuarocksPackage {
   pname = "lua_cliargs";
-  version = "3.0-2";
+  version = "3.0.2-1";
   knownRockspec = (fetchurl {
-    url    = "mirror://luarocks/lua_cliargs-3.0-2.rockspec";
-    sha256 = "0vlmwrldwlxdfkak9kapydfs4ny4pwg3qpkv5agn6lw6gq0aq5za";
+    url    = "mirror://luarocks/lua_cliargs-3.0.2-1.rockspec";
+    sha256 = "1gp3n9ipaqdk59ilqx1ci5faxmx4dh9sgg3279jb8yfa7wg5b8pf";
   }).outPath;
-  src = fetchurl {
-    url    = "https://github.com/amireh/lua_cliargs/archive/v3.0-2.tar.gz";
-    sha256 = "0vhpgmy9a8wlxp8a15pnfqfk0aj7pyyb5m41nnfxynx580a6y7cp";
+  src = fetchFromGitHub {
+    owner = "lunarmodules";
+    repo = "lua_cliargs";
+    rev = "v3.0.2";
+    hash = "sha256-wL3qBQ8Lu3q8DK2Kaeo1dgzIHd8evaxFYJg47CcQiSg=";
   };
 
-  disabled = (luaOlder "5.1");
-  propagatedBuildInputs = [ lua ];
+  disabled = luaOlder "5.1";
 
   meta = {
-    homepage = "https://github.com/amireh/lua_cliargs";
-    description = "A command-line argument parser.";
-    license.fullName = "MIT <http://opensource.org/licenses/MIT>";
+    homepage = "https://github.com/lunarmodules/lua_cliargs.git";
+    description = "A command-line argument parsing module for Lua";
+    license.fullName = "MIT";
   };
 }) {};
 
-luabitop = callPackage({ buildLuarocksPackage, fetchgit, lua, luaAtLeast, luaOlder }:
+luabitop = callPackage({ buildLuarocksPackage, fetchFromGitHub, luaAtLeast, luaOlder }:
 buildLuarocksPackage {
   pname = "luabitop";
   version = "1.0.2-3";
 
-  src = fetchgit ( removeAttrs (builtins.fromJSON ''{
-  "url": "https://github.com/teto/luabitop.git",
-  "rev": "8d7b674386460ca83e9510b3a8a4481344eb90ad",
-  "date": "2021-08-30T10:14:03+02:00",
-  "path": "/nix/store/sdnza0zpmlkz9jppnysasbvqy29f4zia-luabitop",
-  "sha256": "1b57f99lrjbwsi4m23cq5kpj0dbpxh3xwr0mxs2rzykr2ijpgwrw",
-  "hash": "sha256-PPN3ZRR5+p+F7hVk3gfsdzUg7yyYDVFJ1HzJTFNyp6w=",
-  "fetchLFS": false,
-  "fetchSubmodules": true,
-  "deepClone": false,
-  "leaveDotGit": false
-}
- '') ["date" "path" "sha256"]) ;
+  src = fetchFromGitHub {
+    owner = "teto";
+    repo = "luabitop";
+    rev = "96f0a3d73ae5183d0a81bc2f29326eaa06becbfd";
+    hash = "sha256-PrM8ncb3TaqgVhFdRa+rUsJ5WuIzS4/DRqVqj8tCaeg=";
+  };
 
-  disabled = (luaOlder "5.1") || (luaAtLeast "5.3");
-  propagatedBuildInputs = [ lua ];
+  disabled = luaOlder "5.1" || luaAtLeast "5.3";
 
   meta = {
     homepage = "http://bitop.luajit.org/";
@@ -1799,30 +1528,23 @@ buildLuarocksPackage {
   };
 }) {};
 
-luacheck = callPackage({ argparse, buildLuarocksPackage, fetchgit, fetchurl, lua, luaOlder, luafilesystem }:
+luacheck = callPackage({ argparse, buildLuarocksPackage, fetchFromGitHub, fetchurl, luaOlder, luafilesystem }:
 buildLuarocksPackage {
   pname = "luacheck";
-  version = "1.1.1-1";
+  version = "1.1.2-1";
   knownRockspec = (fetchurl {
-    url    = "mirror://luarocks/luacheck-1.1.1-1.rockspec";
-    sha256 = "11nrryqff2yis5s7jscbyv221p21i9sh924x7g9l3d6ijns8zmba";
+    url    = "mirror://luarocks/luacheck-1.1.2-1.rockspec";
+    sha256 = "11p7kf7v1b5rhi3m57g2zqwzmnnp79v76gh13b0fg2c78ljkq1k9";
   }).outPath;
-  src = fetchgit ( removeAttrs (builtins.fromJSON ''{
-  "url": "https://github.com/lunarmodules/luacheck.git",
-  "rev": "ababb6d403d634eb74d2c541035e9ede966e710d",
-  "date": "2023-06-10T11:27:25+03:00",
-  "path": "/nix/store/wkrhda7nww45g1waxdv9ghm35mwbvlfq-luacheck",
-  "sha256": "0abd5rfxv667n8d8v3g9cnkyghiwzhj3yk498gr2agd3mfcni7d7",
-  "hash": "sha256-p51omaujPSXyQ4lMPyT8PMLnp2XpjY0asseY3V0ubSk=",
-  "fetchLFS": false,
-  "fetchSubmodules": true,
-  "deepClone": false,
-  "leaveDotGit": false
-}
- '') ["date" "path" "sha256"]) ;
+  src = fetchFromGitHub {
+    owner = "lunarmodules";
+    repo = "luacheck";
+    rev = "v1.1.2";
+    hash = "sha256-AUEHRuldlnuxBWGRzcbjM4zu5IBGfbNEUakPmpS4VIo=";
+  };
 
-  disabled = (luaOlder "5.1");
-  propagatedBuildInputs = [ argparse lua luafilesystem ];
+  disabled = luaOlder "5.1";
+  propagatedBuildInputs = [ argparse luafilesystem ];
 
   meta = {
     homepage = "https://github.com/lunarmodules/luacheck";
@@ -1831,7 +1553,7 @@ buildLuarocksPackage {
   };
 }) {};
 
-luacov = callPackage({ buildLuarocksPackage, fetchgit, fetchurl, lua, luaAtLeast, luaOlder }:
+luacov = callPackage({ buildLuarocksPackage, fetchFromGitHub, fetchurl, luaAtLeast, luaOlder }:
 buildLuarocksPackage {
   pname = "luacov";
   version = "0.15.0-1";
@@ -1839,22 +1561,14 @@ buildLuarocksPackage {
     url    = "mirror://luarocks/luacov-0.15.0-1.rockspec";
     sha256 = "18byfl23c73pazi60hsx0vd74hqq80mzixab76j36cyn8k4ni9db";
   }).outPath;
-  src = fetchgit ( removeAttrs (builtins.fromJSON ''{
-  "url": "https://github.com/keplerproject/luacov.git",
-  "rev": "19b52ca0298c8942df82dd441d7a4a588db4c413",
-  "date": "2021-02-15T18:47:58-03:00",
-  "path": "/nix/store/9vm38il9knzx2m66m250qj1fzdfzqg0y-luacov",
-  "sha256": "08550nna6qcb5jn6ds1hjm6010y8973wx4qbf9vrvrcn1k2yr6ki",
-  "hash": "sha256-cZrsxQyW5Z13cguTzsdJyIMATJUw6GasLItho6wFpSA=",
-  "fetchLFS": false,
-  "fetchSubmodules": true,
-  "deepClone": false,
-  "leaveDotGit": false
-}
- '') ["date" "path" "sha256"]) ;
+  src = fetchFromGitHub {
+    owner = "keplerproject";
+    repo = "luacov";
+    rev = "v0.15.0";
+    hash = "sha256-cZrsxQyW5Z13cguTzsdJyIMATJUw6GasLItho6wFpSA=";
+  };
 
-  disabled = (luaOlder "5.1") || (luaAtLeast "5.5");
-  propagatedBuildInputs = [ lua ];
+  disabled = luaOlder "5.1" || luaAtLeast "5.5";
 
   meta = {
     homepage = "https://keplerproject.github.io/luacov/";
@@ -1863,30 +1577,22 @@ buildLuarocksPackage {
   };
 }) {};
 
-luadbi = callPackage({ buildLuarocksPackage, fetchgit, fetchurl, lua, luaAtLeast, luaOlder }:
+luadbi = callPackage({ buildLuarocksPackage, fetchFromGitHub, fetchurl, luaAtLeast, luaOlder }:
 buildLuarocksPackage {
   pname = "luadbi";
-  version = "0.7.2-1";
+  version = "0.7.3-1";
   knownRockspec = (fetchurl {
-    url    = "mirror://luarocks/luadbi-0.7.2-1.rockspec";
-    sha256 = "0lj1qki20w6bl76cvlcazlmwh170b9wkv5nwlxbrr3cn6w7h370b";
+    url    = "mirror://luarocks/luadbi-0.7.3-1.rockspec";
+    sha256 = "0lyiwyg6qnnj7d5rxim6b9p68nbszmwhg57xjlvalbcgwgipk1ns";
   }).outPath;
-  src = fetchgit ( removeAttrs (builtins.fromJSON ''{
-  "url": "https://github.com/mwild1/luadbi",
-  "rev": "73a234c4689e4f87b7520276b6159cc7f6cfd6e0",
-  "date": "2019-01-14T09:39:17+00:00",
-  "path": "/nix/store/a3qgawila4r4jc2lpdc4mwyzd1gvzazd-luadbi",
-  "sha256": "167ivwmczhp98bxzpz3wdxcfj6vi0a10gpi7rdfjs2rbfwkzqvjh",
-  "hash": "sha256-UG78J3crCy1dyyfeB4ICcRvpWG98/Pv7QunCzyrf8Zg=",
-  "fetchLFS": false,
-  "fetchSubmodules": true,
-  "deepClone": false,
-  "leaveDotGit": false
-}
- '') ["date" "path" "sha256"]) ;
+  src = fetchFromGitHub {
+    owner = "mwild1";
+    repo = "luadbi";
+    rev = "v0.7.3";
+    hash = "sha256-L2i/e44HvPRhGKH4pUE/6QzO8pHYymHdj2SpHf6YO/I=";
+  };
 
-  disabled = (luaOlder "5.1") || (luaAtLeast "5.4");
-  propagatedBuildInputs = [ lua ];
+  disabled = luaOlder "5.1" || luaAtLeast "5.5";
 
   meta = {
     homepage = "https://github.com/mwild1/luadbi";
@@ -1895,30 +1601,23 @@ buildLuarocksPackage {
   };
 }) {};
 
-luadbi-mysql = callPackage({ buildLuarocksPackage, fetchgit, fetchurl, lua, luaAtLeast, luaOlder, luadbi }:
+luadbi-mysql = callPackage({ buildLuarocksPackage, fetchFromGitHub, fetchurl, luaAtLeast, luaOlder, luadbi }:
 buildLuarocksPackage {
   pname = "luadbi-mysql";
-  version = "0.7.2-1";
+  version = "0.7.3-1";
   knownRockspec = (fetchurl {
-    url    = "mirror://luarocks/luadbi-mysql-0.7.2-1.rockspec";
-    sha256 = "0gnyqnvcfif06rzzrdw6w6hchp4jrjiwm0rmfx2r8ljchj2bvml5";
+    url    = "https://raw.githubusercontent.com/rocks-moonscript-org/moonrocks-mirror/master/luadbi-mysql-0.7.3-1.rockspec";
+    sha256 = "1x0pl6qpdi4vmhxs2076kkxmikbv0asndh8lp34r47lym37hcrr3";
   }).outPath;
-  src = fetchgit ( removeAttrs (builtins.fromJSON ''{
-  "url": "https://github.com/mwild1/luadbi",
-  "rev": "73a234c4689e4f87b7520276b6159cc7f6cfd6e0",
-  "date": "2019-01-14T09:39:17+00:00",
-  "path": "/nix/store/a3qgawila4r4jc2lpdc4mwyzd1gvzazd-luadbi",
-  "sha256": "167ivwmczhp98bxzpz3wdxcfj6vi0a10gpi7rdfjs2rbfwkzqvjh",
-  "hash": "sha256-UG78J3crCy1dyyfeB4ICcRvpWG98/Pv7QunCzyrf8Zg=",
-  "fetchLFS": false,
-  "fetchSubmodules": true,
-  "deepClone": false,
-  "leaveDotGit": false
-}
- '') ["date" "path" "sha256"]) ;
+  src = fetchFromGitHub {
+    owner = "mwild1";
+    repo = "luadbi";
+    rev = "v0.7.3";
+    hash = "sha256-L2i/e44HvPRhGKH4pUE/6QzO8pHYymHdj2SpHf6YO/I=";
+  };
 
-  disabled = (luaOlder "5.1") || (luaAtLeast "5.4");
-  propagatedBuildInputs = [ lua luadbi ];
+  disabled = luaOlder "5.1" || luaAtLeast "5.5";
+  propagatedBuildInputs = [ luadbi ];
 
   meta = {
     homepage = "https://github.com/mwild1/luadbi";
@@ -1927,30 +1626,23 @@ buildLuarocksPackage {
   };
 }) {};
 
-luadbi-postgresql = callPackage({ buildLuarocksPackage, fetchgit, fetchurl, lua, luaAtLeast, luaOlder, luadbi }:
+luadbi-postgresql = callPackage({ buildLuarocksPackage, fetchFromGitHub, fetchurl, luaAtLeast, luaOlder, luadbi }:
 buildLuarocksPackage {
   pname = "luadbi-postgresql";
-  version = "0.7.2-1";
+  version = "0.7.3-1";
   knownRockspec = (fetchurl {
-    url    = "mirror://luarocks/luadbi-postgresql-0.7.2-1.rockspec";
-    sha256 = "07rx4agw4hjyzf8157apdwfqh9s26nqndmkr3wm7v09ygjvdjiix";
+    url    = "mirror://luarocks/luadbi-postgresql-0.7.3-1.rockspec";
+    sha256 = "1bnjsgk7cl6wmfhmn8b0av49yabf8flhdi1jhczksvvpf32p77bw";
   }).outPath;
-  src = fetchgit ( removeAttrs (builtins.fromJSON ''{
-  "url": "https://github.com/mwild1/luadbi",
-  "rev": "73a234c4689e4f87b7520276b6159cc7f6cfd6e0",
-  "date": "2019-01-14T09:39:17+00:00",
-  "path": "/nix/store/a3qgawila4r4jc2lpdc4mwyzd1gvzazd-luadbi",
-  "sha256": "167ivwmczhp98bxzpz3wdxcfj6vi0a10gpi7rdfjs2rbfwkzqvjh",
-  "hash": "sha256-UG78J3crCy1dyyfeB4ICcRvpWG98/Pv7QunCzyrf8Zg=",
-  "fetchLFS": false,
-  "fetchSubmodules": true,
-  "deepClone": false,
-  "leaveDotGit": false
-}
- '') ["date" "path" "sha256"]) ;
+  src = fetchFromGitHub {
+    owner = "mwild1";
+    repo = "luadbi";
+    rev = "v0.7.3";
+    hash = "sha256-L2i/e44HvPRhGKH4pUE/6QzO8pHYymHdj2SpHf6YO/I=";
+  };
 
-  disabled = (luaOlder "5.1") || (luaAtLeast "5.4");
-  propagatedBuildInputs = [ lua luadbi ];
+  disabled = luaOlder "5.1" || luaAtLeast "5.5";
+  propagatedBuildInputs = [ luadbi ];
 
   meta = {
     homepage = "https://github.com/mwild1/luadbi";
@@ -1959,30 +1651,23 @@ buildLuarocksPackage {
   };
 }) {};
 
-luadbi-sqlite3 = callPackage({ buildLuarocksPackage, fetchgit, fetchurl, lua, luaAtLeast, luaOlder, luadbi }:
+luadbi-sqlite3 = callPackage({ buildLuarocksPackage, fetchFromGitHub, fetchurl, luaAtLeast, luaOlder, luadbi }:
 buildLuarocksPackage {
   pname = "luadbi-sqlite3";
-  version = "0.7.2-1";
+  version = "0.7.3-1";
   knownRockspec = (fetchurl {
-    url    = "mirror://luarocks/luadbi-sqlite3-0.7.2-1.rockspec";
-    sha256 = "022iba0jbiafz8iv1h0iv95rhcivbfq5yg341nxk3dm87yf220vh";
+    url    = "mirror://luarocks/luadbi-sqlite3-0.7.3-1.rockspec";
+    sha256 = "0ppkk1jkxw2fhc4x26h7h2bks51shl3am552phn7all5h3k7h3by";
   }).outPath;
-  src = fetchgit ( removeAttrs (builtins.fromJSON ''{
-  "url": "https://github.com/mwild1/luadbi",
-  "rev": "73a234c4689e4f87b7520276b6159cc7f6cfd6e0",
-  "date": "2019-01-14T09:39:17+00:00",
-  "path": "/nix/store/a3qgawila4r4jc2lpdc4mwyzd1gvzazd-luadbi",
-  "sha256": "167ivwmczhp98bxzpz3wdxcfj6vi0a10gpi7rdfjs2rbfwkzqvjh",
-  "hash": "sha256-UG78J3crCy1dyyfeB4ICcRvpWG98/Pv7QunCzyrf8Zg=",
-  "fetchLFS": false,
-  "fetchSubmodules": true,
-  "deepClone": false,
-  "leaveDotGit": false
-}
- '') ["date" "path" "sha256"]) ;
+  src = fetchFromGitHub {
+    owner = "mwild1";
+    repo = "luadbi";
+    rev = "v0.7.3";
+    hash = "sha256-L2i/e44HvPRhGKH4pUE/6QzO8pHYymHdj2SpHf6YO/I=";
+  };
 
-  disabled = (luaOlder "5.1") || (luaAtLeast "5.4");
-  propagatedBuildInputs = [ lua luadbi ];
+  disabled = luaOlder "5.1" || luaAtLeast "5.5";
+  propagatedBuildInputs = [ luadbi ];
 
   meta = {
     homepage = "https://github.com/mwild1/luadbi";
@@ -1991,7 +1676,7 @@ buildLuarocksPackage {
   };
 }) {};
 
-luaepnf = callPackage({ buildLuarocksPackage, fetchgit, fetchurl, lpeg, lua, luaAtLeast, luaOlder }:
+luaepnf = callPackage({ buildLuarocksPackage, fetchFromGitHub, fetchurl, lpeg, luaAtLeast, luaOlder }:
 buildLuarocksPackage {
   pname = "luaepnf";
   version = "0.3-2";
@@ -1999,22 +1684,15 @@ buildLuarocksPackage {
     url    = "mirror://luarocks/luaepnf-0.3-2.rockspec";
     sha256 = "0kqmnj11wmfpc9mz04zzq8ab4mnbkrhcgc525wrq6pgl3p5li8aa";
   }).outPath;
-  src = fetchgit ( removeAttrs (builtins.fromJSON ''{
-  "url": "https://github.com/siffiejoe/lua-luaepnf.git",
-  "rev": "4e0a867ff54cf424e1558781f5d2c85d2dc2137c",
-  "date": "2015-01-15T16:54:10+01:00",
-  "path": "/nix/store/n7gb0z26sl7dzdyy3bx1y3cz3npsna7d-lua-luaepnf",
-  "sha256": "1lvsi3fklhvz671jgg0iqn0xbkzn9qjcbf2ks41xxjz3lapjr6c9",
-  "hash": "sha256-iZksr6Ljy94D0VO4xSRO9s/VgcURvCfDMX9DOt2IetM=",
-  "fetchLFS": false,
-  "fetchSubmodules": true,
-  "deepClone": false,
-  "leaveDotGit": false
-}
- '') ["date" "path" "sha256"]) ;
+  src = fetchFromGitHub {
+    owner = "siffiejoe";
+    repo = "lua-luaepnf";
+    rev = "v0.3";
+    hash = "sha256-iZksr6Ljy94D0VO4xSRO9s/VgcURvCfDMX9DOt2IetM=";
+  };
 
-  disabled = (luaOlder "5.1") || (luaAtLeast "5.5");
-  propagatedBuildInputs = [ lpeg lua ];
+  disabled = luaOlder "5.1" || luaAtLeast "5.5";
+  propagatedBuildInputs = [ lpeg ];
 
   meta = {
     homepage = "http://siffiejoe.github.io/lua-luaepnf/";
@@ -2023,7 +1701,7 @@ buildLuarocksPackage {
   };
 }) {};
 
-luaevent = callPackage({ buildLuarocksPackage, fetchurl, lua, luaOlder }:
+luaevent = callPackage({ buildLuarocksPackage, fetchurl, luaOlder }:
 buildLuarocksPackage {
   pname = "luaevent";
   version = "0.4.6-1";
@@ -2036,8 +1714,7 @@ buildLuarocksPackage {
     sha256 = "0pbh315d3p7hxgzmbhphkcldxv2dadbka96131b8j5914nxvl4nx";
   };
 
-  disabled = (luaOlder "5.1");
-  propagatedBuildInputs = [ lua ];
+  disabled = luaOlder "5.1";
 
   meta = {
     homepage = "https://github.com/harningt/luaevent";
@@ -2046,7 +1723,7 @@ buildLuarocksPackage {
   };
 }) {};
 
-luaexpat = callPackage({ buildLuarocksPackage, fetchgit, fetchurl, lua, luaOlder }:
+luaexpat = callPackage({ buildLuarocksPackage, fetchFromGitHub, fetchurl, luaOlder }:
 buildLuarocksPackage {
   pname = "luaexpat";
   version = "1.4.1-1";
@@ -2054,22 +1731,14 @@ buildLuarocksPackage {
     url    = "mirror://luarocks/luaexpat-1.4.1-1.rockspec";
     sha256 = "1abwd385x7wnza7qqz5s4aj6m2l1c23pjmbgnpq73q0s17pn1h0c";
   }).outPath;
-  src = fetchgit ( removeAttrs (builtins.fromJSON ''{
-  "url": "https://github.com/lunarmodules/luaexpat.git",
-  "rev": "57f8966088abf8a00f8ab0bf88e1b6deea89c0bb",
-  "date": "2022-10-04T16:36:23+02:00",
-  "path": "/nix/store/dgrdkalikpqdap642qhppha1ajdnsvx0-luaexpat",
-  "sha256": "1b4ck23p01ks3hgayan9n33f2kb6jvv63v4ww2mqczc09rqi0q46",
-  "hash": "sha256-hmAQcU6AfYar4JzsYfaWZk3hxrDJKq8eHHoGcIeYjKw=",
-  "fetchLFS": false,
-  "fetchSubmodules": true,
-  "deepClone": false,
-  "leaveDotGit": false
-}
- '') ["date" "path" "sha256"]) ;
+  src = fetchFromGitHub {
+    owner = "lunarmodules";
+    repo = "luaexpat";
+    rev = "1.4.1";
+    hash = "sha256-SnI+a7555R/EFFdnrvJohP6uzwQiMNQPqgp0jxAI178=";
+  };
 
-  disabled = (luaOlder "5.1");
-  propagatedBuildInputs = [ lua ];
+  disabled = luaOlder "5.1";
 
   meta = {
     homepage = "https://lunarmodules.github.io/luaexpat";
@@ -2079,7 +1748,7 @@ buildLuarocksPackage {
   };
 }) {};
 
-luaffi = callPackage({ buildLuarocksPackage, fetchgit, fetchurl, lua, luaOlder }:
+luaffi = callPackage({ buildLuarocksPackage, fetchFromGitHub, fetchurl, luaOlder }:
 buildLuarocksPackage {
   pname = "luaffi";
   version = "scm-1";
@@ -2087,22 +1756,14 @@ buildLuarocksPackage {
     url    = "mirror://luarocks/luaffi-scm-1.rockspec";
     sha256 = "1nia0g4n1yv1sbv5np572y8yfai56a8bnscir807s5kj5bs0xhxm";
   }).outPath;
-  src = fetchgit ( removeAttrs (builtins.fromJSON ''{
-  "url": "https://github.com/facebook/luaffifb.git",
-  "rev": "a1cb731b08c91643b0665935eb5622b3d621211b",
-  "date": "2021-03-01T11:46:30-05:00",
-  "path": "/nix/store/6dwfn64p3clcsxkq41b307q8izi0fvji-luaffifb",
-  "sha256": "0nj76fw3yi57vfn35yvbdmpdbg9gmn5j1gw84ajs9w1j86sc0661",
-  "hash": "sha256-wRjAtEEy8KSlIoi/IIutL73Vbm1r+zKs26dEP7gzR1o=",
-  "fetchLFS": false,
-  "fetchSubmodules": true,
-  "deepClone": false,
-  "leaveDotGit": false
-}
- '') ["date" "path" "sha256"]) ;
+  src = fetchFromGitHub {
+    owner = "facebook";
+    repo = "luaffifb";
+    rev = "a1cb731b08c91643b0665935eb5622b3d621211b";
+    hash = "sha256-wRjAtEEy8KSlIoi/IIutL73Vbm1r+zKs26dEP7gzR1o=";
+  };
 
-  disabled = (luaOlder "5.1");
-  propagatedBuildInputs = [ lua ];
+  disabled = luaOlder "5.1";
 
   meta = {
     homepage = "https://github.com/facebook/luaffifb";
@@ -2111,7 +1772,7 @@ buildLuarocksPackage {
   };
 }) {};
 
-luafilesystem = callPackage({ buildLuarocksPackage, fetchgit, fetchurl, lua, luaOlder }:
+luafilesystem = callPackage({ buildLuarocksPackage, fetchFromGitHub, fetchurl, luaOlder }:
 buildLuarocksPackage {
   pname = "luafilesystem";
   version = "1.8.0-1";
@@ -2119,22 +1780,14 @@ buildLuarocksPackage {
     url    = "mirror://luarocks/luafilesystem-1.8.0-1.rockspec";
     sha256 = "18nkaks0b75dmycljg5vljap5w8d0ysdkg96yl5szgzr7nzrymfa";
   }).outPath;
-  src = fetchgit ( removeAttrs (builtins.fromJSON ''{
-  "url": "https://github.com/keplerproject/luafilesystem",
-  "rev": "7c6e1b013caec0602ca4796df3b1d7253a2dd258",
-  "date": "2020-04-22T22:16:42-03:00",
-  "path": "/nix/store/qzjav1cmn4zwclpfs0xzykpbv835d84z-luafilesystem",
-  "sha256": "16hpwhj6zgkjns3zilcg3lxfijm3cl71v39y9n5lbjk4b9kkwh54",
-  "hash": "sha256-pEA+Z1pkykWLTT6NHQ5lo8roOh2P0fiHtnK+byTkF5o=",
-  "fetchLFS": false,
-  "fetchSubmodules": true,
-  "deepClone": false,
-  "leaveDotGit": false
-}
- '') ["date" "path" "sha256"]) ;
+  src = fetchFromGitHub {
+    owner = "keplerproject";
+    repo = "luafilesystem";
+    rev = "v1_8_0";
+    hash = "sha256-pEA+Z1pkykWLTT6NHQ5lo8roOh2P0fiHtnK+byTkF5o=";
+  };
 
-  disabled = (luaOlder "5.1");
-  propagatedBuildInputs = [ lua ];
+  disabled = luaOlder "5.1";
 
   meta = {
     homepage = "https://github.com/keplerproject/luafilesystem";
@@ -2144,7 +1797,7 @@ buildLuarocksPackage {
   };
 }) {};
 
-lualdap = callPackage({ buildLuarocksPackage, fetchgit, fetchurl, lua, luaOlder }:
+lualdap = callPackage({ buildLuarocksPackage, fetchFromGitHub, fetchurl, luaOlder }:
 buildLuarocksPackage {
   pname = "lualdap";
   version = "1.4.0-1";
@@ -2152,22 +1805,14 @@ buildLuarocksPackage {
     url    = "mirror://luarocks/lualdap-1.4.0-1.rockspec";
     sha256 = "0n924gxm6ccr9hjk4bi5z70vgh7g75dl7293pab41a2qcrlsj9nk";
   }).outPath;
-  src = fetchgit ( removeAttrs (builtins.fromJSON ''{
-  "url": "https://github.com/lualdap/lualdap",
-  "rev": "7a73c883012f9d12a05563afbb3481a57055368c",
-  "date": "2023-11-04T09:38:06+01:00",
-  "path": "/nix/store/7j6wl1f9qg4kh9zwm8fnc0ky7zhf7qbf-lualdap",
-  "sha256": "0xq0xi3ymg5lk6dh7782ddjnz5bjycd2xnc5dp1cwssi37nm7pdv",
-  "hash": "sha256-u91T7RlRa87CbYXZLhrzcpVvZWsCnQObmbS86kfsAHc=",
-  "fetchLFS": false,
-  "fetchSubmodules": true,
-  "deepClone": false,
-  "leaveDotGit": false
-}
- '') ["date" "path" "sha256"]) ;
+  src = fetchFromGitHub {
+    owner = "lualdap";
+    repo = "lualdap";
+    rev = "v1.4.0";
+    hash = "sha256-u91T7RlRa87CbYXZLhrzcpVvZWsCnQObmbS86kfsAHc=";
+  };
 
-  disabled = (luaOlder "5.1");
-  propagatedBuildInputs = [ lua ];
+  disabled = luaOlder "5.1";
 
   meta = {
     homepage = "https://lualdap.github.io/lualdap/";
@@ -2177,7 +1822,7 @@ buildLuarocksPackage {
   };
 }) {};
 
-lualogging = callPackage({ buildLuarocksPackage, fetchgit, fetchurl, luasocket }:
+lualogging = callPackage({ buildLuarocksPackage, fetchFromGitHub, fetchurl, luasocket }:
 buildLuarocksPackage {
   pname = "lualogging";
   version = "1.8.2-1";
@@ -2185,19 +1830,12 @@ buildLuarocksPackage {
     url    = "mirror://luarocks/lualogging-1.8.2-1.rockspec";
     sha256 = "164c4xgwkv2ya8fbb22wm48ywc4gx939b574r6bgl8zqayffdqmx";
   }).outPath;
-  src = fetchgit ( removeAttrs (builtins.fromJSON ''{
-  "url": "https://github.com/lunarmodules/lualogging.git",
-  "rev": "465c994788f1bc18fca950934fa5ec9a909f496c",
-  "date": "2023-01-27T20:29:41+01:00",
-  "path": "/nix/store/pvb3yq11xgqhq6559sjd8rkf1x991rrz-lualogging",
-  "sha256": "1mz5iiv9pfikkm4ay7j0q6mk3bmcxylnlg9piwda47xxc1zyb1j4",
-  "hash": "sha256-RIblf2C9H6Iajzc9aqnvrK4xq8FAHq9InTO6m3aM5dc=",
-  "fetchLFS": false,
-  "fetchSubmodules": true,
-  "deepClone": false,
-  "leaveDotGit": false
-}
- '') ["date" "path" "sha256"]) ;
+  src = fetchFromGitHub {
+    owner = "lunarmodules";
+    repo = "lualogging";
+    rev = "v1.8.2";
+    hash = "sha256-RIblf2C9H6Iajzc9aqnvrK4xq8FAHq9InTO6m3aM5dc=";
+  };
 
   propagatedBuildInputs = [ luasocket ];
 
@@ -2208,7 +1846,7 @@ buildLuarocksPackage {
   };
 }) {};
 
-luaossl = callPackage({ buildLuarocksPackage, fetchurl, fetchzip, lua }:
+luaossl = callPackage({ buildLuarocksPackage, fetchurl, fetchzip }:
 buildLuarocksPackage {
   pname = "luaossl";
   version = "20220711-0";
@@ -2221,7 +1859,6 @@ buildLuarocksPackage {
     sha256 = "1a9pgmc6fbhgh1m9ksz9fq057yzz46npqgakcsy9vngg47xacfdb";
   };
 
-  propagatedBuildInputs = [ lua ];
 
   meta = {
     homepage = "http://25thandclement.com/~william/projects/luaossl.html";
@@ -2230,7 +1867,7 @@ buildLuarocksPackage {
   };
 }) {};
 
-luaposix = callPackage({ bit32, buildLuarocksPackage, fetchurl, fetchzip, lua, luaAtLeast, luaOlder }:
+luaposix = callPackage({ bit32, buildLuarocksPackage, fetchurl, fetchzip, luaAtLeast, luaOlder }:
 buildLuarocksPackage {
   pname = "luaposix";
   version = "34.1.1-1";
@@ -2243,8 +1880,8 @@ buildLuarocksPackage {
     sha256 = "0863r8c69yx92lalj174qdhavqmcs2cdimjim6k55qj9yn78v9zl";
   };
 
-  disabled = (luaOlder "5.1") || (luaAtLeast "5.4");
-  propagatedBuildInputs = [ bit32 lua ];
+  disabled = luaOlder "5.1" || luaAtLeast "5.4";
+  propagatedBuildInputs = [ bit32 ];
 
   meta = {
     homepage = "http://github.com/luaposix/luaposix/";
@@ -2254,7 +1891,7 @@ buildLuarocksPackage {
   };
 }) {};
 
-luarepl = callPackage({ buildLuarocksPackage, fetchurl, lua, luaOlder }:
+luarepl = callPackage({ buildLuarocksPackage, fetchurl, luaOlder }:
 buildLuarocksPackage {
   pname = "luarepl";
   version = "0.10-1";
@@ -2267,8 +1904,7 @@ buildLuarocksPackage {
     sha256 = "0wv37h9w6y5pgr39m7yxbf8imkwvaila6rnwjcp0xsxl5c1rzfjm";
   };
 
-  disabled = (luaOlder "5.1");
-  propagatedBuildInputs = [ lua ];
+  disabled = luaOlder "5.1";
 
   meta = {
     homepage = "https://github.com/hoelzro/lua-repl";
@@ -2277,27 +1913,20 @@ buildLuarocksPackage {
   };
 }) {};
 
-luarocks-build-rust-mlua = callPackage({ buildLuarocksPackage, fetchgit, fetchurl }:
+luarocks-build-rust-mlua = callPackage({ buildLuarocksPackage, fetchFromGitHub, fetchurl }:
 buildLuarocksPackage {
   pname = "luarocks-build-rust-mlua";
-  version = "0.1.2-1";
+  version = "0.2.0-1";
   knownRockspec = (fetchurl {
-    url    = "mirror://luarocks/luarocks-build-rust-mlua-0.1.2-1.rockspec";
-    sha256 = "1sx908fm2ihpxz2mm54xzkfmdzlqdvrqjkh1zz7rcjgmqba4mh1j";
+    url    = "mirror://luarocks/luarocks-build-rust-mlua-0.2.0-1.rockspec";
+    sha256 = "0mpxj2wpzgqffic1j6agisaawbfhh16gis29x6y60kyjq446mv0z";
   }).outPath;
-  src = fetchgit ( removeAttrs (builtins.fromJSON ''{
-  "url": "https://github.com/khvzak/luarocks-build-rust-mlua",
-  "rev": "c8080aa0832563b7f8b2cb85a195c1598ce312e0",
-  "date": "2023-06-29T16:47:41+01:00",
-  "path": "/nix/store/n7id28r1m11xd550hayv99xhz96vpdjq-luarocks-build-rust-mlua",
-  "sha256": "1zh1p5k7xpczi5db3k0fw0ljw9w0xxk1qjjcfg5rcznqjf48i3x7",
-  "hash": "sha256-p4+IiJPYfpbLc0xKHGbvgCcuKeAOzLFaiZ/dfma5Af4=",
-  "fetchLFS": false,
-  "fetchSubmodules": true,
-  "deepClone": false,
-  "leaveDotGit": false
-}
- '') ["date" "path" "sha256"]) ;
+  src = fetchFromGitHub {
+    owner = "khvzak";
+    repo = "luarocks-build-rust-mlua";
+    rev = "0.2.0";
+    hash = "sha256-f6trXv2/gzbitLXwHHrZnowEA/V5Yjb3Q9YlYr+9NBw=";
+  };
 
 
   meta = {
@@ -2308,7 +1937,31 @@ buildLuarocksPackage {
   };
 }) {};
 
-luasec = callPackage({ buildLuarocksPackage, fetchgit, fetchurl, lua, luaOlder, luasocket }:
+luarocks-build-treesitter-parser = callPackage({ buildLuarocksPackage, fetchurl, fetchzip, lua, luaOlder, luafilesystem }:
+buildLuarocksPackage {
+  pname = "luarocks-build-treesitter-parser";
+  version = "2.0.0-1";
+  knownRockspec = (fetchurl {
+    url    = "mirror://luarocks/luarocks-build-treesitter-parser-2.0.0-1.rockspec";
+    sha256 = "0ylax1r0yl5k742p8n0fq5irs2r632npigqp1qckfx7kwi89gxhb";
+  }).outPath;
+  src = fetchzip {
+    url    = "https://github.com/nvim-neorocks/luarocks-build-treesitter-parser/archive/v2.0.0.zip";
+    sha256 = "0gqiwk7dk1xn5n2m0iq5c7xkrgyaxwyd1spb573l289gprvlrbn5";
+  };
+
+  disabled = (luaOlder "5.1");
+  propagatedBuildInputs = [ lua luafilesystem ];
+
+  meta = {
+    homepage = "https://github.com/nvim-neorocks/luarocks-build-treesitter-parser";
+    description = "A luarocks build backend for tree-sitter parsers.";
+    maintainers = with lib.maintainers; [ mrcjkb ];
+    license.fullName = "MIT";
+  };
+}) {};
+
+luasec = callPackage({ buildLuarocksPackage, fetchFromGitHub, fetchurl, luaOlder, luasocket }:
 buildLuarocksPackage {
   pname = "luasec";
   version = "1.3.2-1";
@@ -2316,22 +1969,15 @@ buildLuarocksPackage {
     url    = "mirror://luarocks/luasec-1.3.2-1.rockspec";
     sha256 = "09nqs60cmbq1bi70cdh7v5xjnlsm2mrxv9pmbbvczijvz184jh33";
   }).outPath;
-  src = fetchgit ( removeAttrs (builtins.fromJSON ''{
-  "url": "https://github.com/brunoos/luasec",
-  "rev": "4c06287052d68fdbe7429b8f967cdc8ee94aa44a",
-  "date": "2023-08-31T17:09:53-03:00",
-  "path": "/nix/store/wnl78b5l3dxw52slphmi4rmr1cd8bd3r-luasec",
-  "sha256": "0rrdfbnkd8pgqwh3f0iyd5cxy7g1h0568a88m3sq1z7715js4yx3",
-  "hash": "sha256-o3uiZQnn/ID1qAgpZAqA4R3fWWk+Ajcgx++iNu1yLWc=",
-  "fetchLFS": false,
-  "fetchSubmodules": true,
-  "deepClone": false,
-  "leaveDotGit": false
-}
- '') ["date" "path" "sha256"]) ;
+  src = fetchFromGitHub {
+    owner = "brunoos";
+    repo = "luasec";
+    rev = "v1.3.2";
+    hash = "sha256-o3uiZQnn/ID1qAgpZAqA4R3fWWk+Ajcgx++iNu1yLWc=";
+  };
 
-  disabled = (luaOlder "5.1");
-  propagatedBuildInputs = [ lua luasocket ];
+  disabled = luaOlder "5.1";
+  propagatedBuildInputs = [ luasocket ];
 
   meta = {
     homepage = "https://github.com/brunoos/luasec/wiki";
@@ -2341,21 +1987,21 @@ buildLuarocksPackage {
   };
 }) {};
 
-luasnip = callPackage({ buildLuarocksPackage, fetchurl, fetchzip, jsregexp, lua, luaOlder }:
+luasnip = callPackage({ buildLuarocksPackage, fetchurl, fetchzip, jsregexp, luaOlder }:
 buildLuarocksPackage {
   pname = "luasnip";
-  version = "2.1.1-1";
+  version = "2.3.0-1";
   knownRockspec = (fetchurl {
-    url    = "mirror://luarocks/luasnip-2.1.1-1.rockspec";
-    sha256 = "1jrdai8qsanr6x2vqp70hipsxrxh0abvwr2xwh9p4wr29k4wyycb";
+    url    = "mirror://luarocks/luasnip-2.3.0-1.rockspec";
+    sha256 = "022srpvwwbms8i97mdhkwq0yg0pfjm7a6673iyf7cr1xj15pq23v";
   }).outPath;
   src = fetchzip {
-    url    = "https://github.com/L3MON4D3/LuaSnip/archive/v2.1.1.zip";
-    sha256 = "0mbpwf3sxfrmrza13d9w0hlcmzlrj551g332syp1qhs94abfnnrd";
+    url    = "https://github.com/L3MON4D3/LuaSnip/archive/v2.3.0.zip";
+    sha256 = "0bbackpym8k11gm32iwwzqjnqanpralanfjkl4lrs33xl7lsylqk";
   };
 
-  disabled = (luaOlder "5.1");
-  propagatedBuildInputs = [ jsregexp lua ];
+  disabled = luaOlder "5.1";
+  propagatedBuildInputs = [ jsregexp ];
 
   meta = {
     homepage = "https://github.com/L3MON4D3/LuaSnip";
@@ -2364,7 +2010,7 @@ buildLuarocksPackage {
   };
 }) {};
 
-luasocket = callPackage({ buildLuarocksPackage, fetchgit, fetchurl, lua, luaOlder }:
+luasocket = callPackage({ buildLuarocksPackage, fetchFromGitHub, fetchurl, luaOlder }:
 buildLuarocksPackage {
   pname = "luasocket";
   version = "3.1.0-1";
@@ -2372,22 +2018,14 @@ buildLuarocksPackage {
     url    = "mirror://luarocks/luasocket-3.1.0-1.rockspec";
     sha256 = "0wg9735cyz2gj7r9za8yi83w765g0f4pahnny7h0pdpx58pgfx4r";
   }).outPath;
-  src = fetchgit ( removeAttrs (builtins.fromJSON ''{
-  "url": "https://github.com/lunarmodules/luasocket.git",
-  "rev": "95b7efa9da506ef968c1347edf3fc56370f0deed",
-  "date": "2022-07-27T10:07:00+03:00",
-  "path": "/nix/store/r5pqxqjkdwl80nmjkv400mbls7cfymjc-luasocket",
-  "sha256": "13hyf9cvny0kxwyg08929kkl31w74j66fj6zg1myyjr9nh5b795h",
-  "hash": "sha256-sKSzCrQpS+9reN9IZ4wkh4dB50wiIfA87xN4u1lyHo4=",
-  "fetchLFS": false,
-  "fetchSubmodules": true,
-  "deepClone": false,
-  "leaveDotGit": false
-}
- '') ["date" "path" "sha256"]) ;
+  src = fetchFromGitHub {
+    owner = "lunarmodules";
+    repo = "luasocket";
+    rev = "v3.1.0";
+    hash = "sha256-sKSzCrQpS+9reN9IZ4wkh4dB50wiIfA87xN4u1lyHo4=";
+  };
 
-  disabled = (luaOlder "5.1");
-  propagatedBuildInputs = [ lua ];
+  disabled = luaOlder "5.1";
 
   meta = {
     homepage = "https://github.com/lunarmodules/luasocket";
@@ -2396,40 +2034,32 @@ buildLuarocksPackage {
   };
 }) {};
 
-luasql-sqlite3 = callPackage({ buildLuarocksPackage, fetchgit, fetchurl, lua, luaOlder }:
+luasql-sqlite3 = callPackage({ buildLuarocksPackage, fetchFromGitHub, fetchurl, luaOlder }:
 buildLuarocksPackage {
   pname = "luasql-sqlite3";
-  version = "2.6.0-2";
+  version = "2.6.1-3";
   knownRockspec = (fetchurl {
-    url    = "mirror://luarocks/luasql-sqlite3-2.6.0-2.rockspec";
-    sha256 = "1xpbcpl4qhnzpyyszhdsrxhx2qc1dmndh926lv91xwphw7inwdwg";
+    url    = "mirror://luarocks/luasql-sqlite3-2.6.1-3.rockspec";
+    sha256 = "1qf8cx4cmsngwp65ksdsf5dsv6yhb4qwdrd2lkpyqaq6p55jfkyb";
   }).outPath;
-  src = fetchgit ( removeAttrs (builtins.fromJSON ''{
-  "url": "https://github.com/keplerproject/luasql.git",
-  "rev": "25bf4ffce9323d28cb6f382f7ec9e8951e3084f9",
-  "date": "2023-07-19T14:20:27-03:00",
-  "path": "/nix/store/949886jxp7sx3yx910lc6d1yf3ym9mx5-luasql",
-  "sha256": "00q73j2nzqsm0vmxjkv83qh1dncmr5dgmkrkyxnb5ggygvcbh7w5",
-  "hash": "sha256-hR+42H7+vbJs9zPP+lrJldkWIB5oT9nrBlXjb4UcBwM=",
-  "fetchLFS": false,
-  "fetchSubmodules": true,
-  "deepClone": false,
-  "leaveDotGit": false
-}
- '') ["date" "path" "sha256"]) ;
+  src = fetchFromGitHub {
+    owner = "lunarmodules";
+    repo = "luasql";
+    rev = "2.6.0";
+    hash = "sha256-bRddE9K9f6TFBD2nY5kkS0BzXilfUP7Z358QLPfna+I=";
+  };
 
-  disabled = (luaOlder "5.1");
-  propagatedBuildInputs = [ lua ];
+  disabled = luaOlder "5.1";
 
   meta = {
-    homepage = "http://www.keplerproject.org/luasql/";
+    homepage = "https://lunarmodules.github.io/luasql/";
     description = "Database connectivity for Lua (SQLite3 driver)";
     maintainers = with lib.maintainers; [ vyp ];
     license.fullName = "MIT/X11";
   };
 }) {};
 
-luassert = callPackage({ buildLuarocksPackage, fetchgit, fetchurl, lua, luaOlder, say }:
+luassert = callPackage({ buildLuarocksPackage, fetchFromGitHub, fetchurl, luaOlder, say }:
 buildLuarocksPackage {
   pname = "luassert";
   version = "1.9.0-1";
@@ -2437,22 +2067,15 @@ buildLuarocksPackage {
     url    = "mirror://luarocks/luassert-1.9.0-1.rockspec";
     sha256 = "1bkzr03190p33lprgy51nl84aq082fyc3f7s3wkk7zlay4byycxd";
   }).outPath;
-  src = fetchgit ( removeAttrs (builtins.fromJSON ''{
-  "url": "https://github.com/lunarmodules/luassert.git",
-  "rev": "8d8dc8a54cc468048a128a867f6449a6c3fdd11a",
-  "date": "2022-08-24T00:00:45+03:00",
-  "path": "/nix/store/vfcl25wxps5kvh5prjkkjlj1ga3kgw63-luassert",
-  "sha256": "0wlp6qdm9dkwzs8lvnj7zvmid4y12v717ywlhxn2brkbjpvl2dwf",
-  "hash": "sha256-jjdB95Vr5iVsh5T7E84WwZMW6/5H2k2R/ny2VBs2l3I=",
-  "fetchLFS": false,
-  "fetchSubmodules": true,
-  "deepClone": false,
-  "leaveDotGit": false
-}
- '') ["date" "path" "sha256"]) ;
+  src = fetchFromGitHub {
+    owner = "lunarmodules";
+    repo = "luassert";
+    rev = "v1.9.0";
+    hash = "sha256-jjdB95Vr5iVsh5T7E84WwZMW6/5H2k2R/ny2VBs2l3I=";
+  };
 
-  disabled = (luaOlder "5.1");
-  propagatedBuildInputs = [ lua say ];
+  disabled = luaOlder "5.1";
+  propagatedBuildInputs = [ say ];
 
   meta = {
     homepage = "https://lunarmodules.github.io/busted/";
@@ -2461,30 +2084,55 @@ buildLuarocksPackage {
   };
 }) {};
 
-luasystem = callPackage({ buildLuarocksPackage, fetchurl, lua, luaOlder }:
+luasystem = callPackage({ buildLuarocksPackage, fetchFromGitHub, fetchurl, luaOlder }:
 buildLuarocksPackage {
   pname = "luasystem";
-  version = "0.2.1-0";
+  version = "0.3.0-2";
   knownRockspec = (fetchurl {
-    url    = "mirror://luarocks/luasystem-0.2.1-0.rockspec";
-    sha256 = "0xj5q7lzsbmlw5d3zbjqf3jpj78wcn348h2jcxn5ph4n4hx73z3n";
+    url    = "mirror://luarocks/luasystem-0.3.0-2.rockspec";
+    sha256 = "02kwkcwf81v6ncxl1ng2pxlhalz78q2476snh5xxv3wnwqwbp10a";
   }).outPath;
-  src = fetchurl {
-    url    = "https://github.com/o-lim/luasystem/archive/v0.2.1.tar.gz";
-    sha256 = "150bbklchh02gsvpngv56xrrlxxvwpqwrh0yy6z95fnvks7gd0qb";
+  src = fetchFromGitHub {
+    owner = "lunarmodules";
+    repo = "luasystem";
+    rev = "v0.3.0";
+    hash = "sha256-oTFH0x94gSo1sqk1GsDheoVrjJHxFWZLtlJ45GwupoU=";
   };
 
-  disabled = (luaOlder "5.1");
-  propagatedBuildInputs = [ lua ];
+  disabled = luaOlder "5.1";
 
   meta = {
-    homepage = "http://olivinelabs.com/luasystem/";
+    homepage = "https://github.com/lunarmodules/luasystem";
     description = "Platform independent system calls for Lua.";
     license.fullName = "MIT <http://opensource.org/licenses/MIT>";
   };
 }) {};
 
-luaunbound = callPackage({ buildLuarocksPackage, fetchurl, lua, luaAtLeast, luaOlder }:
+luatext = callPackage({ buildLuarocksPackage, fetchFromGitHub, fetchurl, luaOlder }:
+buildLuarocksPackage {
+  pname = "luatext";
+  version = "1.2.1-0";
+  knownRockspec = (fetchurl {
+    url    = "mirror://luarocks/luatext-1.2.1-0.rockspec";
+    sha256 = "12ia4ibihd537mjmvdasnwgkinaygqwk03bsj3s0qrfhy6yz84ka";
+  }).outPath;
+  src = fetchFromGitHub {
+    owner = "f4z3r";
+    repo = "luatext";
+    rev = "v1.2.1";
+    hash = "sha256-StxCmjSSy3ok0hNkKTQyq4yS1LfX980R5pULCUjLPek=";
+  };
+
+  disabled = luaOlder "5.1";
+
+  meta = {
+    homepage = "https://github.com/f4z3r/luatext/tree/main";
+    description = "A small library to print colored text";
+    license.fullName = "MIT";
+  };
+}) {};
+
+luaunbound = callPackage({ buildLuarocksPackage, fetchurl, luaAtLeast, luaOlder }:
 buildLuarocksPackage {
   pname = "luaunbound";
   version = "1.0.0-1";
@@ -2497,8 +2145,7 @@ buildLuarocksPackage {
     sha256 = "1lsh0ylp5xskygxl5qdv6mhkm1x8xp0vfd5prk5hxkr19jk5mr3d";
   };
 
-  disabled = (luaOlder "5.1") || (luaAtLeast "5.5");
-  propagatedBuildInputs = [ lua ];
+  disabled = luaOlder "5.1" || luaAtLeast "5.5";
 
   meta = {
     homepage = "https://www.zash.se/luaunbound.html";
@@ -2507,7 +2154,7 @@ buildLuarocksPackage {
   };
 }) {};
 
-luaunit = callPackage({ buildLuarocksPackage, fetchurl, fetchzip, lua, luaAtLeast, luaOlder }:
+luaunit = callPackage({ buildLuarocksPackage, fetchurl, fetchzip, luaAtLeast, luaOlder }:
 buildLuarocksPackage {
   pname = "luaunit";
   version = "3.4-1";
@@ -2520,8 +2167,7 @@ buildLuarocksPackage {
     sha256 = "0qf07y3229lq3qq1mfkv83gzbc7dgyr67hysqjb5bbk333flv56r";
   };
 
-  disabled = (luaOlder "5.1") || (luaAtLeast "5.5");
-  propagatedBuildInputs = [ lua ];
+  disabled = luaOlder "5.1" || luaAtLeast "5.5";
 
   meta = {
     homepage = "http://github.com/bluebird75/luaunit";
@@ -2531,7 +2177,7 @@ buildLuarocksPackage {
   };
 }) {};
 
-luautf8 = callPackage({ buildLuarocksPackage, fetchurl, lua, luaOlder }:
+luautf8 = callPackage({ buildLuarocksPackage, fetchurl, luaOlder }:
 buildLuarocksPackage {
   pname = "luautf8";
   version = "0.1.5-2";
@@ -2544,8 +2190,7 @@ buildLuarocksPackage {
     sha256 = "077ji840wfmy7hq0y13l01dv6jhasznykf89gk9m672jhz6dxggl";
   };
 
-  disabled = (luaOlder "5.1");
-  propagatedBuildInputs = [ lua ];
+  disabled = luaOlder "5.1";
 
   meta = {
     homepage = "http://github.com/starwing/luautf8";
@@ -2555,31 +2200,7 @@ buildLuarocksPackage {
   };
 }) {};
 
-lua-utils-nvim = callPackage({ buildLuarocksPackage, fetchurl, fetchzip, lua, luaOlder }:
-buildLuarocksPackage {
-  pname = "lua-utils.nvim";
-  version = "1.0.2-1";
-  knownRockspec = (fetchurl {
-    url    = "mirror://luarocks/lua-utils.nvim-1.0.2-1.rockspec";
-    sha256 = "0s11j4vd26haz72rb0c5m5h953292rh8r62mvlxbss6i69v2dkr9";
-  }).outPath;
-  src = fetchzip {
-    url    = "https://github.com/nvim-neorg/lua-utils.nvim/archive/v1.0.2.zip";
-    sha256 = "0bnl2kvxs55l8cjhfpa834bm010n8r4gmsmivjcp548c076msagn";
-  };
-
-  disabled = (luaOlder "5.1");
-  propagatedBuildInputs = [ lua ];
-
-  meta = {
-    homepage = "https://github.com/nvim-neorg/lua-utils.nvim";
-    description = "A set of utility functions for Neovim plugins.";
-    maintainers = with lib.maintainers; [ mrcjkb ];
-    license.fullName = "MIT";
-  };
-}) {};
-
-luazip = callPackage({ buildLuarocksPackage, fetchgit, fetchurl, lua, luaAtLeast, luaOlder }:
+luazip = callPackage({ buildLuarocksPackage, fetchFromGitHub, fetchurl, luaAtLeast, luaOlder }:
 buildLuarocksPackage {
   pname = "luazip";
   version = "1.2.7-1";
@@ -2587,22 +2208,14 @@ buildLuarocksPackage {
     url    = "mirror://luarocks/luazip-1.2.7-1.rockspec";
     sha256 = "1wxy3p2ksaq4s8lg925mi9cvbh875gsapgkzm323dr8qaxxg7mba";
   }).outPath;
-  src = fetchgit ( removeAttrs (builtins.fromJSON ''{
-  "url": "https://github.com/mpeterv/luazip",
-  "rev": "e424f667cc5c78dd19bb5eca5a86b3c8698e0ce5",
-  "date": "2017-09-05T14:02:52+03:00",
-  "path": "/nix/store/idllj442c0iwnx1cpkrifx2afb7vh821-luazip",
-  "sha256": "1jlqzqlds3aa3hnp737fm2awcx0hzmwyd87klv0cv13ny5v9f2x4",
-  "hash": "sha256-pAuXdvF2hM3ApvOg5nn9EHTGlajujHMtHEoN3Sj+mMo=",
-  "fetchLFS": false,
-  "fetchSubmodules": true,
-  "deepClone": false,
-  "leaveDotGit": false
-}
- '') ["date" "path" "sha256"]) ;
+  src = fetchFromGitHub {
+    owner = "mpeterv";
+    repo = "luazip";
+    rev = "1.2.7";
+    hash = "sha256-pAuXdvF2hM3ApvOg5nn9EHTGlajujHMtHEoN3Sj+mMo=";
+  };
 
-  disabled = (luaOlder "5.1") || (luaAtLeast "5.4");
-  propagatedBuildInputs = [ lua ];
+  disabled = luaOlder "5.1" || luaAtLeast "5.4";
 
   meta = {
     homepage = "https://github.com/mpeterv/luazip";
@@ -2611,27 +2224,22 @@ buildLuarocksPackage {
   };
 }) {};
 
-lush-nvim = callPackage({ buildLuarocksPackage, fetchgit, lua, luaAtLeast, luaOlder }:
+lush-nvim = callPackage({ buildLuarocksPackage, fetchFromGitHub, fetchurl, luaAtLeast, luaOlder }:
 buildLuarocksPackage {
   pname = "lush.nvim";
   version = "scm-1";
+  knownRockspec = (fetchurl {
+    url    = "mirror://luarocks/lush.nvim-scm-1.rockspec";
+    sha256 = "0ivir5p3mmv051pyya2hj1yrnflrv8bp38dx033i3kzfbpyg23ca";
+  }).outPath;
+  src = fetchFromGitHub {
+    owner = "rktjmp";
+    repo = "lush.nvim";
+    rev = "7c0e27f50901481fe83b974493c4ea67a4296aeb";
+    hash = "sha256-GVGIZPBrunaWexwdnkbc0LxM3xMHslrwON2FunN3TDE=";
+  };
 
-  src = fetchgit ( removeAttrs (builtins.fromJSON ''{
-  "url": "https://github.com/rktjmp/lush.nvim",
-  "rev": "f76741886b356586f9dfe8e312fbd1ab0fd1084f",
-  "date": "2023-12-06T09:56:43+11:00",
-  "path": "/nix/store/m0zsbahbzqxfzvbgw93qw78g7r4fjhdb-lush.nvim",
-  "sha256": "1jvfycqg5s72gmib8038kzyy8fyanl06mkz74rjy878zv8r6nf59",
-  "hash": "sha256-qThrMtofHeRlJufPagC1yjvk/Z9oALRifeLo8jDzbss=",
-  "fetchLFS": false,
-  "fetchSubmodules": true,
-  "deepClone": false,
-  "leaveDotGit": false
-}
- '') ["date" "path" "sha256"]) ;
-
-  disabled = (luaOlder "5.1") || (luaAtLeast "5.4");
-  propagatedBuildInputs = [ lua ];
+  disabled = luaOlder "5.1" || luaAtLeast "5.4";
 
   meta = {
     homepage = "https://github.com/rktjmp/lush.nvim";
@@ -2641,7 +2249,7 @@ buildLuarocksPackage {
   };
 }) {};
 
-luuid = callPackage({ buildLuarocksPackage, fetchurl, lua, luaAtLeast, luaOlder}:
+luuid = callPackage({ buildLuarocksPackage, fetchurl, luaAtLeast, luaOlder }:
 buildLuarocksPackage {
   pname = "luuid";
   version = "20120509-2";
@@ -2654,8 +2262,7 @@ buildLuarocksPackage {
     sha256 = "1bfkj613d05yps3fivmz0j1bxf2zkg9g1yl0ifffgw0vy00hpnvm";
   };
 
-  disabled = (luaOlder "5.2") || (luaAtLeast "5.4");
-  propagatedBuildInputs = [ lua ];
+  disabled = luaOlder "5.2" || luaAtLeast "5.4";
 
   meta = {
     homepage = "http://www.tecgraf.puc-rio.br/~lhf/ftp/lua/#luuid";
@@ -2664,7 +2271,7 @@ buildLuarocksPackage {
   };
 }) {};
 
-luv = callPackage({ buildLuarocksPackage, fetchurl, lua, luaOlder }:
+luv = callPackage({ buildLuarocksPackage, cmake, fetchurl, luaOlder }:
 buildLuarocksPackage {
   pname = "luv";
   version = "1.44.2-1";
@@ -2677,8 +2284,8 @@ buildLuarocksPackage {
     sha256 = "0c2wkszxw6gwa4l6g1d2zzh660j13lif6c7a910vq7zn8jycgd9y";
   };
 
-  disabled = (luaOlder "5.1");
-  propagatedBuildInputs = [ lua ];
+  disabled = luaOlder "5.1";
+  nativeBuildInputs = [ cmake ];
 
   meta = {
     homepage = "https://github.com/luvit/luv";
@@ -2687,7 +2294,7 @@ buildLuarocksPackage {
   };
 }) {};
 
-lyaml = callPackage({ buildLuarocksPackage, fetchurl, fetchzip, lua, luaAtLeast, luaOlder }:
+lyaml = callPackage({ buildLuarocksPackage, fetchurl, fetchzip, luaAtLeast, luaOlder }:
 buildLuarocksPackage {
   pname = "lyaml";
   version = "6.2.8-1";
@@ -2700,8 +2307,7 @@ buildLuarocksPackage {
     sha256 = "0r3jjsd8x2fs1aanki0s1mvpznl16f32c1qfgmicy0icgy5xfch0";
   };
 
-  disabled = (luaOlder "5.1") || (luaAtLeast "5.5");
-  propagatedBuildInputs = [ lua ];
+  disabled = luaOlder "5.1" || luaAtLeast "5.5";
 
   meta = {
     homepage = "http://github.com/gvvaughan/lyaml";
@@ -2711,7 +2317,7 @@ buildLuarocksPackage {
   };
 }) {};
 
-magick = callPackage({ buildLuarocksPackage, fetchgit, fetchurl, lua }:
+magick = callPackage({ buildLuarocksPackage, fetchFromGitHub, fetchurl, lua }:
 buildLuarocksPackage {
   pname = "magick";
   version = "1.6.0-1";
@@ -2719,22 +2325,14 @@ buildLuarocksPackage {
     url    = "mirror://luarocks/magick-1.6.0-1.rockspec";
     sha256 = "1pg150xsxnqvlhxpiy17s9hm4dkc84v46mlwi9rhriynqz8qks9w";
   }).outPath;
-  src = fetchgit ( removeAttrs (builtins.fromJSON ''{
-  "url": "https://github.com/leafo/magick.git",
-  "rev": "6971fa700c4d392130492a3925344b51c7cc54aa",
-  "date": "2022-03-10T20:02:11-08:00",
-  "path": "/nix/store/fpl99q09zg3qnk4kagxk1djabl1dm47l-magick",
-  "sha256": "01b9qsz27f929rz5z7vapqhazxak74sichdwkjwb219nlhrwfncm",
-  "hash": "sha256-lVnHM6Q2BbG4nLxBFjU5U/WvIL5qn19+TiK5I77GaQU=",
-  "fetchLFS": false,
-  "fetchSubmodules": true,
-  "deepClone": false,
-  "leaveDotGit": false
-}
- '') ["date" "path" "sha256"]) ;
+  src = fetchFromGitHub {
+    owner = "leafo";
+    repo = "magick";
+    rev = "v1.6.0";
+    hash = "sha256-gda+vLrWyMQ553jVCIRl1qYTS/rXsGhxrBsrJyI8EN4=";
+  };
 
-  disabled = (lua.luaversion != "5.1");
-  propagatedBuildInputs = [ lua ];
+  disabled = lua.luaversion != "5.1";
 
   meta = {
     homepage = "https://github.com/leafo/magick.git";
@@ -2744,7 +2342,7 @@ buildLuarocksPackage {
   };
 }) {};
 
-markdown = callPackage({ buildLuarocksPackage, fetchgit, fetchurl, lua, luaAtLeast, luaOlder }:
+markdown = callPackage({ buildLuarocksPackage, fetchFromGitHub, fetchurl, luaAtLeast, luaOlder }:
 buildLuarocksPackage {
   pname = "markdown";
   version = "0.33-1";
@@ -2752,22 +2350,14 @@ buildLuarocksPackage {
     url    = "mirror://luarocks/markdown-0.33-1.rockspec";
     sha256 = "02sixijfi6av8h59kx3ngrhygjn2sx1c85c0qfy20gxiz72wi1pl";
   }).outPath;
-  src = fetchgit ( removeAttrs (builtins.fromJSON ''{
-  "url": "https://github.com/mpeterv/markdown",
-  "rev": "8c09109924b218aaecbfd4d4b1de538269c4d765",
-  "date": "2015-09-27T17:49:28+03:00",
-  "path": "/nix/store/akl80hh077hm20bdqj1lksy0fn2285b5-markdown",
-  "sha256": "019bk2qprszqncnm8zy6ns6709iq1nwkf7i86nr38f035j4lc11y",
-  "hash": "sha256-PgRGiSwDODSyNSgeN7kNOCZwjLbGf1Qts/jrfLGYKwU=",
-  "fetchLFS": false,
-  "fetchSubmodules": true,
-  "deepClone": false,
-  "leaveDotGit": false
-}
- '') ["date" "path" "sha256"]) ;
+  src = fetchFromGitHub {
+    owner = "mpeterv";
+    repo = "markdown";
+    rev = "0.33";
+    hash = "sha256-PgRGiSwDODSyNSgeN7kNOCZwjLbGf1Qts/jrfLGYKwU=";
+  };
 
-  disabled = (luaOlder "5.1") || (luaAtLeast "5.4");
-  propagatedBuildInputs = [ lua ];
+  disabled = luaOlder "5.1" || luaAtLeast "5.4";
 
   meta = {
     homepage = "https://github.com/mpeterv/markdown";
@@ -2776,7 +2366,7 @@ buildLuarocksPackage {
   };
 }) {};
 
-mediator_lua = callPackage({ buildLuarocksPackage, fetchurl, lua, luaOlder }:
+mediator_lua = callPackage({ buildLuarocksPackage, fetchurl, luaOlder }:
 buildLuarocksPackage {
   pname = "mediator_lua";
   version = "1.1.2-0";
@@ -2789,8 +2379,7 @@ buildLuarocksPackage {
     sha256 = "16zzzhiy3y35v8advmlkzpryzxv5vji7727vwkly86q8sagqbxgs";
   };
 
-  disabled = (luaOlder "5.1");
-  propagatedBuildInputs = [ lua ];
+  disabled = luaOlder "5.1";
 
   meta = {
     homepage = "http://olivinelabs.com/mediator_lua/";
@@ -2799,7 +2388,7 @@ buildLuarocksPackage {
   };
 }) {};
 
-middleclass = callPackage({ buildLuarocksPackage, fetchurl, lua, luaOlder }:
+middleclass = callPackage({ buildLuarocksPackage, fetchurl, luaOlder }:
 buildLuarocksPackage {
   pname = "middleclass";
   version = "4.1.1-0";
@@ -2812,8 +2401,7 @@ buildLuarocksPackage {
     sha256 = "11ahv0b9wgqfnabv57rb7ilsvn2vcvxb1czq6faqrsqylvr5l7nh";
   };
 
-  disabled = (luaOlder "5.1");
-  propagatedBuildInputs = [ lua ];
+  disabled = luaOlder "5.1";
 
   meta = {
     homepage = "https://github.com/kikito/middleclass";
@@ -2822,7 +2410,7 @@ buildLuarocksPackage {
   };
 }) {};
 
-mimetypes = callPackage({ buildLuarocksPackage, fetchurl, lua, luaOlder }:
+mimetypes = callPackage({ buildLuarocksPackage, fetchurl, luaOlder }:
 buildLuarocksPackage {
   pname = "mimetypes";
   version = "1.0.0-3";
@@ -2835,8 +2423,7 @@ buildLuarocksPackage {
     sha256 = "1rc5lnzvw4cg8wxn4w4sar2xgf5vaivdd2hgpxxcqfzzcmblg1zk";
   };
 
-  disabled = (luaOlder "5.1");
-  propagatedBuildInputs = [ lua ];
+  disabled = luaOlder "5.1";
 
   meta = {
     homepage = "https://github/lunarmodules/lua-mimetypes/";
@@ -2845,28 +2432,20 @@ buildLuarocksPackage {
   };
 }) {};
 
-
-moonscript = callPackage({ argparse, buildLuarocksPackage, fetchgit, lpeg, lua, luaOlder, luafilesystem }:
+moonscript = callPackage({ argparse, buildLuarocksPackage, fetchFromGitHub, lpeg, luaOlder, luafilesystem }:
 buildLuarocksPackage {
   pname = "moonscript";
   version = "dev-1";
 
-  src = fetchgit ( removeAttrs (builtins.fromJSON ''{
-  "url": "https://github.com/leafo/moonscript.git",
-  "rev": "d5341c9093c49d3724072b209cde28b5cb0f47c9",
-  "date": "2023-11-06T12:54:51-08:00",
-  "path": "/nix/store/djmh6brp03gy8nyzxjfvzkpy440fj05z-moonscript",
-  "sha256": "1h65cxh5rhnxx99asdydkc9yf6gnf61m97jvl03g31f65jl22lxi",
-  "hash": "sha256-sVMhqCzGhfEGoFueVINx9hnnE5vNN61S6t3CXGBnxcA=",
-  "fetchLFS": false,
-  "fetchSubmodules": true,
-  "deepClone": false,
-  "leaveDotGit": false
-}
- '') ["date" "path" "sha256"]) ;
+  src = fetchFromGitHub {
+    owner = "leafo";
+    repo = "moonscript";
+    rev = "d5341c9093c49d3724072b209cde28b5cb0f47c9";
+    hash = "sha256-sVMhqCzGhfEGoFueVINx9hnnE5vNN61S6t3CXGBnxcA=";
+  };
 
-  disabled = (luaOlder "5.1");
-  propagatedBuildInputs = [ argparse lpeg lua luafilesystem ];
+  disabled = luaOlder "5.1";
+  propagatedBuildInputs = [ argparse lpeg luafilesystem ];
 
   meta = {
     homepage = "http://moonscript.org";
@@ -2879,14 +2458,14 @@ buildLuarocksPackage {
 mpack = callPackage({ buildLuarocksPackage, fetchurl }:
 buildLuarocksPackage {
   pname = "mpack";
-  version = "1.0.11-0";
+  version = "1.0.12-0";
   knownRockspec = (fetchurl {
-    url    = "mirror://luarocks/mpack-1.0.11-0.rockspec";
-    sha256 = "0alydkccamxldij7ki42imd37630d9qnqg22pndcgkawfclfqzqa";
+    url    = "mirror://luarocks/mpack-1.0.12-0.rockspec";
+    sha256 = "01jr8vvkqdvadr5kpgsd17gjyz729hbd609qsm682ylggabgqsyy";
   }).outPath;
   src = fetchurl {
-    url    = "https://github.com/libmpack/libmpack-lua/releases/download/1.0.11/libmpack-lua-1.0.11.tar.gz";
-    sha256 = "15np7603rijavycvrjgjp12y64zs36390lg2hsnr5av790cfrnd2";
+    url    = "https://github.com/libmpack/libmpack-lua/releases/download/1.0.12/libmpack-lua-1.0.12.tar.gz";
+    sha256 = "1gzqks9cq3krd9rs3dq9jm1m23pjpqjv9ymkxj9gbyjcy6qn5dh6";
   };
 
 
@@ -2897,21 +2476,21 @@ buildLuarocksPackage {
   };
 }) {};
 
-neotest = callPackage({ buildLuarocksPackage, fetchurl, fetchzip, lua, luaOlder, plenary-nvim }:
+neotest = callPackage({ buildLuarocksPackage, fetchurl, fetchzip, luaOlder, nvim-nio, plenary-nvim }:
 buildLuarocksPackage {
   pname = "neotest";
-  version = "4.2.0-1";
+  version = "5.2.3-1";
   knownRockspec = (fetchurl {
-    url    = "mirror://luarocks/neotest-4.2.0-1.rockspec";
-    sha256 = "0mkjwag6h7psff6rmsirn945ax38dszag0kwch2az2axk1nl6nj8";
+    url    = "mirror://luarocks/neotest-5.2.3-1.rockspec";
+    sha256 = "16pwkwv2dmi9aqhp6bdbgwhksi891iz73rvksqmv136jx6fi7za1";
   }).outPath;
   src = fetchzip {
-    url    = "https://github.com/nvim-neotest/neotest/archive/a2f1cb4072bb29fcc067605fb712bbd83917513e.zip";
-    sha256 = "0f8rn9v26v3a6yq0wngdzrgz5rdwlpmnc74b98l1aqb2ikn6gxvd";
+    url    = "https://github.com/nvim-neotest/neotest/archive/5caac5cc235d495a2382bc2980630ef36ac87032.zip";
+    sha256 = "1i1d6m17wf3p76nm75jk4ayd4zyhslmqi2pc7j8qx87391mnz2c4";
   };
 
-  disabled = (luaOlder "5.1");
-  propagatedBuildInputs = [ lua plenary-nvim ];
+  disabled = luaOlder "5.1";
+  propagatedBuildInputs = [ nvim-nio plenary-nvim ];
 
   meta = {
     homepage = "https://github.com/nvim-neotest/neotest";
@@ -2921,7 +2500,7 @@ buildLuarocksPackage {
   };
 }) {};
 
-nlua = callPackage({ buildLuarocksPackage, fetchurl, fetchzip, lua, luaOlder }:
+nlua = callPackage({ buildLuarocksPackage, fetchurl, fetchzip, luaOlder }:
 buildLuarocksPackage {
   pname = "nlua";
   version = "0.1.0-1";
@@ -2934,37 +2513,30 @@ buildLuarocksPackage {
     sha256 = "1x3pbv5ngbk0sjgwfpjsv3x49wzq4x29d9rm0hgyyb2g2mwag3jc";
   };
 
-  disabled = (luaOlder "5.1");
-  propagatedBuildInputs = [ lua ];
+  disabled = luaOlder "5.1";
 
   meta = {
     homepage = "https://github.com/mfussenegger/nlua";
     description = "Neovim as Lua interpreter";
+    maintainers = with lib.maintainers; [ teto ];
     license.fullName = "GPL-3.0";
   };
 }) {};
 
-nui-nvim = callPackage({ buildLuarocksPackage, fetchgit, fetchurl }:
+nui-nvim = callPackage({ buildLuarocksPackage, fetchFromGitHub, fetchurl }:
 buildLuarocksPackage {
   pname = "nui.nvim";
-  version = "0.2.0-1";
+  version = "0.3.0-1";
   knownRockspec = (fetchurl {
-    url    = "mirror://luarocks/nui.nvim-0.2.0-1.rockspec";
-    sha256 = "0v2z6lgl6hrzcjlzhis8nrkdkh9kvx8zg3q5svi5gyklg7vmcbc2";
+    url    = "mirror://luarocks/nui.nvim-0.3.0-1.rockspec";
+    sha256 = "0ng75wzbc0bn4zgwqk7dx5hazybfqxpjfzp7k2syh7kajmsy8z8b";
   }).outPath;
-  src = fetchgit ( removeAttrs (builtins.fromJSON ''{
-  "url": "https://github.com/MunifTanjim/nui.nvim.git",
-  "rev": "9e3916e784660f55f47daa6f26053ad044db5d6a",
-  "date": "2023-07-20T10:45:09+06:00",
-  "path": "/nix/store/8zdhjgipjjhi9b1y40r2yk5np4lp39as-nui.nvim",
-  "sha256": "14a73dwl56kah9h36b40ir6iylvfs261ysz17qvi9vhp63vjq9cx",
-  "hash": "sha256-nSUs9zAX7hQ3PuFrH4zQblMfTY6ALDNggmqaQnkbR5E=",
-  "fetchLFS": false,
-  "fetchSubmodules": true,
-  "deepClone": false,
-  "leaveDotGit": false
-}
- '') ["date" "path" "sha256"]) ;
+  src = fetchFromGitHub {
+    owner = "MunifTanjim";
+    repo = "nui.nvim";
+    rev = "0.3.0";
+    hash = "sha256-L0ebXtv794357HOAgT17xlEJsmpqIHGqGlYfDB20WTo=";
+  };
 
 
   meta = {
@@ -2975,27 +2547,19 @@ buildLuarocksPackage {
   };
 }) {};
 
-nvim-cmp = callPackage({ buildLuarocksPackage, fetchgit, lua, luaAtLeast, luaOlder }:
+nvim-cmp = callPackage({ buildLuarocksPackage, fetchFromGitHub, luaAtLeast, luaOlder }:
 buildLuarocksPackage {
   pname = "nvim-cmp";
   version = "scm-1";
 
-  src = fetchgit ( removeAttrs (builtins.fromJSON ''{
-  "url": "https://github.com/hrsh7th/nvim-cmp",
-  "rev": "0b751f6beef40fd47375eaf53d3057e0bfa317e4",
-  "date": "2023-11-06T17:58:22+09:00",
-  "path": "/nix/store/4z8lkalcj6sk2s5aw2xcalimh3rcgixj-nvim-cmp",
-  "sha256": "1qp7s2iam9zzdlw5sgkk6c623z7vjgga0rcg63ja0f836l90grba",
-  "hash": "sha256-auUHEjUDOaDkMI9loN6T+/whDDNzPl04bf+nqqLQ5+I=",
-  "fetchLFS": false,
-  "fetchSubmodules": true,
-  "deepClone": false,
-  "leaveDotGit": false
-}
- '') ["date" "path" "sha256"]) ;
+  src = fetchFromGitHub {
+    owner = "hrsh7th";
+    repo = "nvim-cmp";
+    rev = "8f3c541407e691af6163e2447f3af1bd6e17f9a3";
+    hash = "sha256-rz+JMd/hsUEDNVan2sCuEGtbsOVi6oRmPtps+7qSXQE=";
+  };
 
-  disabled = (luaOlder "5.1") || (luaAtLeast "5.4");
-  propagatedBuildInputs = [ lua ];
+  disabled = luaOlder "5.1" || luaAtLeast "5.4";
 
   meta = {
     homepage = "https://github.com/hrsh7th/nvim-cmp";
@@ -3004,21 +2568,20 @@ buildLuarocksPackage {
   };
 }) {};
 
-nvim-nio = callPackage({ buildLuarocksPackage, fetchurl, fetchzip, lua, luaOlder }:
+nvim-nio = callPackage({ buildLuarocksPackage, fetchurl, fetchzip, luaOlder }:
 buildLuarocksPackage {
   pname = "nvim-nio";
-  version = "1.8.1-1";
+  version = "1.9.0-1";
   knownRockspec = (fetchurl {
-    url    = "mirror://luarocks/nvim-nio-1.8.1-1.rockspec";
-    sha256 = "0f9ccrli5jcvcyawkjd99nm6himnnnd6z54938rd0wjp21d8s4s9";
+    url    = "mirror://luarocks/nvim-nio-1.9.0-1.rockspec";
+    sha256 = "0hwjkz0pjd8dfc4l7wk04ddm8qzrv5m15gskhz9gllb4frnk6hik";
   }).outPath;
   src = fetchzip {
-    url    = "https://github.com/nvim-neotest/nvim-nio/archive/v1.8.1.zip";
-    sha256 = "0zax50chrh7qrgh56avd5ny0lb3i0y906wk13mhbkp9i5d9anw1h";
+    url    = "https://github.com/nvim-neotest/nvim-nio/archive/v1.9.0.zip";
+    sha256 = "0y3afl42z41ymksk29al5knasmm9wmqzby860x8zj0i0mfb1q5k5";
   };
 
-  disabled = (luaOlder "5.1");
-  propagatedBuildInputs = [ lua ];
+  disabled = luaOlder "5.1";
 
   meta = {
     homepage = "https://github.com/nvim-neotest/nvim-nio";
@@ -3028,21 +2591,21 @@ buildLuarocksPackage {
   };
 }) {};
 
-pathlib-nvim = callPackage({ buildLuarocksPackage, fetchurl, fetchzip, lua, luaOlder, nvim-nio }:
+pathlib-nvim = callPackage({ buildLuarocksPackage, fetchurl, fetchzip, luaOlder, nvim-nio }:
 buildLuarocksPackage {
   pname = "pathlib.nvim";
-  version = "2.2.0-1";
+  version = "2.2.2-1";
   knownRockspec = (fetchurl {
-    url    = "mirror://luarocks/pathlib.nvim-2.2.0-1.rockspec";
-    sha256 = "0zj3psdq06822y8vl117z3y7zlc6jxwqppbv9irgwzr60wdz517n";
+    url    = "mirror://luarocks/pathlib.nvim-2.2.2-1.rockspec";
+    sha256 = "04dklc0ibl6dbfckmkpj2s1gvjfmr0k2hyagw37rxypifncrffkr";
   }).outPath;
   src = fetchzip {
-    url    = "https://github.com/pysan3/pathlib.nvim/archive/v2.2.0.zip";
-    sha256 = "1nyl3y0z2rrr35dyk2ypv8xjx43zamqxlpdq468iyyhfvkplz9yw";
+    url    = "https://github.com/pysan3/pathlib.nvim/archive/v2.2.2.zip";
+    sha256 = "10jhbdffaw1rh1qppzllmy96dbsn741bk46mph5kxpjq4ldx27hz";
   };
 
-  disabled = (luaOlder "5.1");
-  propagatedBuildInputs = [ lua nvim-nio ];
+  disabled = luaOlder "5.1";
+  propagatedBuildInputs = [ nvim-nio ];
 
   meta = {
     homepage = "https://pysan3.github.io/pathlib.nvim/";
@@ -3051,27 +2614,23 @@ buildLuarocksPackage {
   };
 }) {};
 
-penlight = callPackage({ buildLuarocksPackage, fetchgit, lua, luaOlder, luafilesystem }:
+penlight = callPackage({ buildLuarocksPackage, fetchFromGitHub, fetchurl, luaOlder, luafilesystem }:
 buildLuarocksPackage {
   pname = "penlight";
-  version = "dev-1";
-
-  src = fetchgit ( removeAttrs (builtins.fromJSON ''{
-  "url": "https://github.com/lunarmodules/penlight.git",
-  "rev": "dc6d19c5c1e1b4ac55b14df17b7645af6b410140",
-  "date": "2023-09-21T10:51:09+02:00",
-  "path": "/nix/store/vbi0d32mbaqcra3jligv8ajq17m1wxa4-penlight",
-  "sha256": "12ppgby8ldh4zxwcr7cknacbdvk30fi92sgyzh1zbgvym4l44g0c",
-  "hash": "sha256-DDxCKKl+v/UD/P5pkaIDY+62mLKTncx4/wQ2ivx694o=",
-  "fetchLFS": false,
-  "fetchSubmodules": true,
-  "deepClone": false,
-  "leaveDotGit": false
-}
- '') ["date" "path" "sha256"]) ;
+  version = "1.14.0-1";
+  knownRockspec = (fetchurl {
+    url    = "mirror://luarocks/penlight-1.14.0-1.rockspec";
+    sha256 = "1zmibf0pgcnf0lj1xmxs0srbyy1cswvb9g1jajy9lhicnpqqlgvh";
+  }).outPath;
+  src = fetchFromGitHub {
+    owner = "lunarmodules";
+    repo = "penlight";
+    rev = "1.14.0";
+    hash = "sha256-4zAt0GgQEkg9toaUaDn3ST3RvjLUDsuOzrKi9lhq0fQ=";
+  };
 
-  disabled = (luaOlder "5.1");
-  propagatedBuildInputs = [ lua luafilesystem ];
+  disabled = luaOlder "5.1";
+  propagatedBuildInputs = [ luafilesystem ];
 
   meta = {
     homepage = "https://lunarmodules.github.io/penlight";
@@ -3081,27 +2640,20 @@ buildLuarocksPackage {
   };
 }) {};
 
-plenary-nvim = callPackage({ buildLuarocksPackage, fetchgit, lua, luaAtLeast, luaOlder, luassert }:
+plenary-nvim = callPackage({ buildLuarocksPackage, fetchFromGitHub, luaAtLeast, luaOlder, luassert }:
 buildLuarocksPackage {
   pname = "plenary.nvim";
   version = "scm-1";
 
-  src = fetchgit ( removeAttrs (builtins.fromJSON ''{
-  "url": "https://github.com/nvim-lua/plenary.nvim",
-  "rev": "55d9fe89e33efd26f532ef20223e5f9430c8b0c0",
-  "date": "2023-11-30T12:17:20+01:00",
-  "path": "/nix/store/wf35h8i4s3fdskvcy376vvzp5gi6s6mx-plenary.nvim",
-  "sha256": "1f6vqqafk78njpl47xgsf8p199mmvw4h4b9axab9rl86fdlibikz",
-  "hash": "sha256-f8YVaXMG0ZyW6iotAgnftaYULnL69UPolRad6RTG27g=",
-  "fetchLFS": false,
-  "fetchSubmodules": true,
-  "deepClone": false,
-  "leaveDotGit": false
-}
- '') ["date" "path" "sha256"]) ;
+  src = fetchFromGitHub {
+    owner = "nvim-lua";
+    repo = "plenary.nvim";
+    rev = "08e301982b9a057110ede7a735dd1b5285eb341f";
+    hash = "sha256-vy0MXEoSM4rvYpfwbc2PnilvMOA30Urv0FAxjXuvqQ8=";
+  };
 
-  disabled = (luaOlder "5.1") || (luaAtLeast "5.4");
-  propagatedBuildInputs = [ lua luassert ];
+  disabled = luaOlder "5.1" || luaAtLeast "5.4";
+  propagatedBuildInputs = [ luassert ];
 
   meta = {
     homepage = "http://github.com/nvim-lua/plenary.nvim";
@@ -3110,27 +2662,23 @@ buildLuarocksPackage {
   };
 }) {};
 
-rapidjson = callPackage({ buildLuarocksPackage, fetchgit, lua, luaOlder }:
+rapidjson = callPackage({ buildLuarocksPackage, cmake, fetchFromGitHub, fetchurl, luaOlder }:
 buildLuarocksPackage {
   pname = "rapidjson";
   version = "0.7.1-1";
+  knownRockspec = (fetchurl {
+    url    = "mirror://luarocks/rapidjson-0.7.1-1.rockspec";
+    sha256 = "01lbsn9rckdyx0va7nm9dammic9117kxiawp55yg2h5q3p978d41";
+  }).outPath;
+  src = fetchFromGitHub {
+    owner = "xpol";
+    repo = "lua-rapidjson";
+    rev = "v0.7.1";
+    hash = "sha256-y/czEVPtCt4uN1n49Qi7BrgZmkG+SDXlM5D2GvvO2qg=";
+  };
 
-  src = fetchgit ( removeAttrs (builtins.fromJSON ''{
-  "url": "https://github.com/xpol/lua-rapidjson",
-  "rev": "242b40c8eaceb0cc43bcab88309736461cac1234",
-  "date": "2021-04-09T19:59:20+08:00",
-  "path": "/nix/store/65l71ph27pmipgrq8j4whg6n8h2avvs4-lua-rapidjson",
-  "sha256": "1a6srvximxlh6gjkaj5y86d1kf06pc4gby2r6wpdw2pdac8k7xyb",
-  "hash": "sha256-y/czEVPtCt4uN1n49Qi7BrgZmkG+SDXlM5D2GvvO2qg=",
-  "fetchLFS": false,
-  "fetchSubmodules": true,
-  "deepClone": false,
-  "leaveDotGit": false
-}
- '') ["date" "path" "sha256"]) ;
-
-  disabled = (luaOlder "5.1");
-  propagatedBuildInputs = [ lua ];
+  disabled = luaOlder "5.1";
+  nativeBuildInputs = [ cmake ];
 
   meta = {
     homepage = "https://github.com/xpol/lua-rapidjson";
@@ -3139,45 +2687,45 @@ buildLuarocksPackage {
   };
 }) {};
 
-rest-nvim = callPackage({ buildLuarocksPackage, fetchurl, fetchzip, lua, luaOlder }:
+rest-nvim = callPackage({ buildLuarocksPackage, fetchurl, fetchzip, lua-curl, luaOlder, mimetypes, nvim-nio, xml2lua }:
 buildLuarocksPackage {
   pname = "rest.nvim";
-  version = "0.2-1";
+  version = "2.0.1-1";
   knownRockspec = (fetchurl {
-    url    = "mirror://luarocks/rest.nvim-0.2-1.rockspec";
-    sha256 = "1yq8gx585c10j8kybp20swyv9q0i3lm5k0rrv4bgsbwz3ychn0k1";
+    url    = "mirror://luarocks/rest.nvim-2.0.1-1.rockspec";
+    sha256 = "1ra76wnhi4nh56amyd8zqmg0mpsnhp3m41m3iyiq4hp1fah6nbqb";
   }).outPath;
   src = fetchzip {
-    url    = "https://github.com/rest-nvim/rest.nvim/archive/0.2.zip";
-    sha256 = "0ycjrrl37z465p71bdkas3q2ky1jmgr2cjnirnskdc6wz14wl09g";
+    url    = "https://github.com/rest-nvim/rest.nvim/archive/v2.0.1.zip";
+    sha256 = "09rs04d5h061zns1kdfycryx4ll8ix15q3ybpmqsdyp2gn8l77df";
   };
 
-  disabled = (luaOlder "5.1");
-  propagatedBuildInputs = [ lua ];
+  disabled = luaOlder "5.1";
+  propagatedBuildInputs = [ lua-curl mimetypes nvim-nio xml2lua ];
 
   meta = {
     homepage = "https://github.com/rest-nvim/rest.nvim";
     description = "A fast Neovim http client written in Lua";
     maintainers = with lib.maintainers; [ teto ];
-    license.fullName = "MIT";
+    license.fullName = "GPL-3.0";
   };
 }) {};
 
-rocks-config-nvim = callPackage({ buildLuarocksPackage, fetchurl, fetchzip, lua, luaOlder, rocks-nvim }:
+rocks-config-nvim = callPackage({ buildLuarocksPackage, fetchurl, fetchzip, luaOlder, rocks-nvim }:
 buildLuarocksPackage {
   pname = "rocks-config.nvim";
-  version = "1.2.3-1";
+  version = "1.5.0-1";
   knownRockspec = (fetchurl {
-    url    = "mirror://luarocks/rocks-config.nvim-1.2.3-1.rockspec";
-    sha256 = "0lwy0fkmrxbnj46jh35i9l1hmfa88a879spmasmh7kw4vpd1bbpr";
+    url    = "mirror://luarocks/rocks-config.nvim-1.5.0-1.rockspec";
+    sha256 = "14rj1p7grmdhi3xm683c3c441xxcldhi5flh6lg1fab1rm9mij6b";
   }).outPath;
   src = fetchzip {
-    url    = "https://github.com/nvim-neorocks/rocks-config.nvim/archive/v1.2.3.zip";
-    sha256 = "0byf1q18ykgs3hsz8wyjimkcnq0pl26ikxjlv0ly0acxrg9x9kcp";
+    url    = "https://github.com/nvim-neorocks/rocks-config.nvim/archive/v1.5.0.zip";
+    sha256 = "0kpvd9ddj1vhkz54ckqsym4fbj1krzpp8cslb20k8qk2n1ccjynv";
   };
 
-  disabled = (luaOlder "5.1");
-  propagatedBuildInputs = [ lua rocks-nvim ];
+  disabled = luaOlder "5.1";
+  propagatedBuildInputs = [ rocks-nvim ];
 
   meta = {
     homepage = "https://github.com/nvim-neorocks/rocks-config.nvim";
@@ -3211,21 +2759,21 @@ buildLuarocksPackage {
   };
 }) {};
 
-rocks-git-nvim = callPackage({ buildLuarocksPackage, fetchurl, fetchzip, lua, luaOlder, nvim-nio, rocks-nvim }:
+rocks-git-nvim = callPackage({ buildLuarocksPackage, fetchurl, fetchzip, luaOlder, nvim-nio, rocks-nvim }:
 buildLuarocksPackage {
   pname = "rocks-git.nvim";
-  version = "1.3.0-1";
+  version = "1.4.0-1";
   knownRockspec = (fetchurl {
-    url    = "mirror://luarocks/rocks-git.nvim-1.3.0-1.rockspec";
-    sha256 = "196wjjdkjgqdx1lj8cxcn1xh6dysn0a0w544yc62vg6h227c6igi";
+    url    = "mirror://luarocks/rocks-git.nvim-1.4.0-1.rockspec";
+    sha256 = "04zx6yvp5pg306wqaw6fymqci5qnzpzg27xjrycflcyxxq4xmnmg";
   }).outPath;
   src = fetchzip {
-    url    = "https://github.com/nvim-neorocks/rocks-git.nvim/archive/v1.3.0.zip";
-    sha256 = "024zvl91ixb25rkpikwcxb73qfd6wsc2a5qwkwfy6sibkff7jgaq";
+    url    = "https://github.com/nvim-neorocks/rocks-git.nvim/archive/v1.4.0.zip";
+    sha256 = "0yjigf9pzy53yylznnnb68dwmylx9a3qv84kdc2whsf4cj23m2nj";
   };
 
-  disabled = (luaOlder "5.1");
-  propagatedBuildInputs = [ lua nvim-nio rocks-nvim ];
+  disabled = luaOlder "5.1";
+  propagatedBuildInputs = [ nvim-nio rocks-nvim ];
 
   meta = {
     homepage = "https://github.com/nvim-neorocks/rocks-git.nvim";
@@ -3235,45 +2783,67 @@ buildLuarocksPackage {
   };
 }) {};
 
-rocks-nvim = callPackage({ buildLuarocksPackage, fetchurl, fetchzip, fidget-nvim, fzy, lua, luaOlder, nvim-nio, toml, toml-edit }:
+rocks-nvim = callPackage({ buildLuarocksPackage, fetchurl, fetchzip, fidget-nvim, fzy, luaOlder, nvim-nio, rtp-nvim, toml-edit }:
 buildLuarocksPackage {
   pname = "rocks.nvim";
-  version = "2.19.1-1";
+  version = "2.26.0-1";
   knownRockspec = (fetchurl {
-    url    = "mirror://luarocks/rocks.nvim-2.19.1-1.rockspec";
-    sha256 = "1n712a8wqhli2hbq8s6isa9jaxxvqy20737njakqdkakqp2xsdbs";
+    url    = "mirror://luarocks/rocks.nvim-2.26.0-1.rockspec";
+    sha256 = "1piypyxq1c6l203f3w8z4fhfi649h5ppl58lckvxph9dvidg11lf";
   }).outPath;
   src = fetchzip {
-    url    = "https://github.com/nvim-neorocks/rocks.nvim/archive/v2.19.1.zip";
-    sha256 = "1n3za055vdi6v1hx72sdrh9dpgs6g58b2haq0ad3q5ncsy951h0q";
+    url    = "https://github.com/nvim-neorocks/rocks.nvim/archive/v2.26.0.zip";
+    sha256 = "10wck99dfwxv49pkd9pva7lqr4a79zccbqvb75qbxkgnj0yd5awc";
   };
 
-  disabled = (luaOlder "5.1");
-  propagatedBuildInputs = [ fidget-nvim fzy lua nvim-nio toml toml-edit ];
+  disabled = luaOlder "5.1";
+  propagatedBuildInputs = [ fidget-nvim fzy nvim-nio rtp-nvim toml-edit ];
 
   meta = {
     homepage = "https://github.com/nvim-neorocks/rocks.nvim";
-    description = "Neovim plugin management inspired by Cargo.";
+    description = "Neovim plugin management inspired by Cargo, powered by luarocks";
     maintainers = with lib.maintainers; [ mrcjkb ];
     license.fullName = "GPL-3.0";
   };
 }) {};
 
-rustaceanvim = callPackage({ buildLuarocksPackage, fetchurl, fetchzip, lua, luaOlder }:
+
+rtp-nvim = callPackage ({ buildLuarocksPackage, fetchurl, fetchzip, luaOlder }:
+buildLuarocksPackage {
+  pname = "rtp.nvim";
+  version = "1.0.0-1";
+  knownRockspec = (fetchurl {
+    url    = "mirror://luarocks/rtp.nvim-1.0.0-1.rockspec";
+    sha256 = "0ddlwhk62g3yx1ysddsmlggfqv0hj7dljgczfwij1ijbz7qyp3hy";
+  }).outPath;
+  src = fetchzip {
+    url    = "https://github.com/nvim-neorocks/rtp.nvim/archive/v1.0.0.zip";
+    sha256 = "1kx7qzdz8rpwsjcp63wwn619nrkxn6xd0nr5pfm3g0z4072nnpzn";
+  };
+
+  disabled = luaOlder "5.1";
+
+  meta = {
+    homepage = "https://github.com/nvim-neorocks/rtp.nvim";
+    description = "Source plugin and ftdetect directories on the Neovim runtimepath.";
+    license.fullName = "GPL-3.0";
+  };
+}) {};
+
+rustaceanvim = callPackage({ buildLuarocksPackage, fetchurl, fetchzip, luaOlder }:
 buildLuarocksPackage {
   pname = "rustaceanvim";
-  version = "3.9.6-1";
+  version = "4.22.8-1";
   knownRockspec = (fetchurl {
-    url    = "mirror://luarocks/rustaceanvim-3.9.6-1.rockspec";
-    sha256 = "1wlzqm8x2w9clskj2k9n9i4f0pn17dsp99a3gwwrypdlbvm9x77k";
+    url    = "mirror://luarocks/rustaceanvim-4.22.8-1.rockspec";
+    sha256 = "18hghs9v9j3kv3fxwdp7qk9vhbxn4c8xd8pyxwnyjq5ad7ninr82";
   }).outPath;
   src = fetchzip {
-    url    = "https://github.com/mrcjkb/rustaceanvim/archive/3.9.6.zip";
-    sha256 = "0qmifxb0xgyym0zbizqds5scy4qrnp0hr17rg0synp2fk5iv6s5b";
+    url    = "https://github.com/mrcjkb/rustaceanvim/archive/4.22.8.zip";
+    sha256 = "1n9kqr8xdqamc8hd8a155h7rzyda8bz39n0zdgdw0j8hqc214vmm";
   };
 
-  disabled = (luaOlder "5.1");
-  propagatedBuildInputs = [ lua ];
+  disabled = luaOlder "5.1";
 
   meta = {
     homepage = "https://github.com/mrcjkb/rustaceanvim";
@@ -3283,27 +2853,22 @@ buildLuarocksPackage {
   };
 }) {};
 
-say = callPackage({ buildLuarocksPackage, fetchgit, lua, luaOlder }:
+say = callPackage({ buildLuarocksPackage, fetchFromGitHub, fetchurl, luaOlder }:
 buildLuarocksPackage {
   pname = "say";
-  version = "scm-1";
-
-  src = fetchgit ( removeAttrs (builtins.fromJSON ''{
-  "url": "https://github.com/lunarmodules/say.git",
-  "rev": "3e1f783d0aa496eb21d16e85b2235335cb9332df",
-  "date": "2023-08-13T02:37:27+03:00",
-  "path": "/nix/store/5biavac0k8z0xg4rr3bm8z3kdi8mm8c0-say",
-  "sha256": "04dkf0av6n71vmz0h86i5brklvaf9p91lkldn1xldpdr0qqs0x63",
-  "hash": "sha256-w3SgMQa53UZ7sI1OGtJNTm068yrRIAh+3eFYsxVwsxE=",
-  "fetchLFS": false,
-  "fetchSubmodules": true,
-  "deepClone": false,
-  "leaveDotGit": false
-}
- '') ["date" "path" "sha256"]) ;
+  version = "1.4.1-3";
+  knownRockspec = (fetchurl {
+    url    = "mirror://luarocks/say-1.4.1-3.rockspec";
+    sha256 = "0iibmq5m5092y168banckgs15ngj2yjx11n40fyk7jly4pbasljq";
+  }).outPath;
+  src = fetchFromGitHub {
+    owner = "lunarmodules";
+    repo = "say";
+    rev = "v1.4.1";
+    hash = "sha256-IjNkK1leVtYgbEjUqguVMjbdW+0BHAOCE0pazrVuF50=";
+  };
 
-  disabled = (luaOlder "5.1");
-  propagatedBuildInputs = [ lua ];
+  disabled = luaOlder "5.1";
 
   meta = {
     homepage = "https://lunarmodules.github.io/say";
@@ -3312,30 +2877,22 @@ buildLuarocksPackage {
   };
 }) {};
 
-serpent = callPackage({ buildLuarocksPackage, fetchgit, fetchurl, lua, luaAtLeast, luaOlder }:
+serpent = callPackage({ buildLuarocksPackage, fetchFromGitHub, fetchurl, luaAtLeast, luaOlder }:
 buildLuarocksPackage {
   pname = "serpent";
   version = "0.30-2";
   knownRockspec = (fetchurl {
-    url    = "mirror://luarocks/serpent-0.30-2.rockspec";
-    sha256 = "0v83lr9ars1n0djbh7np8jjqdhhaw0pdy2nkcqzqrhv27rzv494n";
+    url    = "https://raw.githubusercontent.com/rocks-moonscript-org/moonrocks-mirror/master/serpent-0.30-2.rockspec";
+    sha256 = "01696wwp1m8jlcj0y1wwscnz3cpcjdvm8pcnc6c6issa2s4544vr";
   }).outPath;
-  src = fetchgit ( removeAttrs (builtins.fromJSON ''{
-  "url": "https://github.com/pkulchenko/serpent",
-  "rev": "d78683597606c6e13a1fed039bc91d86eb8f600f",
-  "date": "2017-09-01T21:35:14-07:00",
-  "path": "/nix/store/z6df44n3p07n4bia7s514vgngbkbpnap-serpent",
-  "sha256": "0q80yfrgqgr01qprf0hrp284ngb7fbcq1v9rbzmdkhbm9lpgy8v8",
-  "hash": "sha256-aCP/Lk11wdnqXzntgNlyZz1LkLgZApcvDiA//LLzAGE=",
-  "fetchLFS": false,
-  "fetchSubmodules": true,
-  "deepClone": false,
-  "leaveDotGit": false
-}
- '') ["date" "path" "sha256"]) ;
+  src = fetchFromGitHub {
+    owner = "pkulchenko";
+    repo = "serpent";
+    rev = "0.30";
+    hash = "sha256-aCP/Lk11wdnqXzntgNlyZz1LkLgZApcvDiA//LLzAGE=";
+  };
 
-  disabled = (luaOlder "5.1") || (luaAtLeast "5.5");
-  propagatedBuildInputs = [ lua ];
+  disabled = luaOlder "5.1" || luaAtLeast "5.5";
 
   meta = {
     homepage = "https://github.com/pkulchenko/serpent";
@@ -3345,7 +2902,7 @@ buildLuarocksPackage {
   };
 }) {};
 
-sqlite = callPackage({ buildLuarocksPackage, fetchgit, fetchurl, luv }:
+sqlite = callPackage({ buildLuarocksPackage, fetchFromGitHub, fetchurl, luv }:
 buildLuarocksPackage {
   pname = "sqlite";
   version = "v1.2.2-0";
@@ -3353,19 +2910,12 @@ buildLuarocksPackage {
     url    = "mirror://luarocks/sqlite-v1.2.2-0.rockspec";
     sha256 = "0jxsl9lpxsbzc6s5bwmh27mglkqz1299lz68vfxayvailwl3xbxm";
   }).outPath;
-  src = fetchgit ( removeAttrs (builtins.fromJSON ''{
-  "url": "https://github.com/tami5/sqlite.lua.git",
-  "rev": "6c00ab414dc1b69621b145908c582b747f24b46e",
-  "date": "2022-06-17T15:57:13+03:00",
-  "path": "/nix/store/637s46bsvsxfnzmy6ygig3y0vqmf3r8p-sqlite.lua",
-  "sha256": "0ckifx6xxrannn9szacgiiqjsp4rswghxscdl3s411dhas8djj1m",
-  "hash": "sha256-NUjZkFawhUD0oI3pDh/XmVwtcYyPqa+TtVbl3k13cTI=",
-  "fetchLFS": false,
-  "fetchSubmodules": true,
-  "deepClone": false,
-  "leaveDotGit": false
-}
- '') ["date" "path" "sha256"]) ;
+  src = fetchFromGitHub {
+    owner = "tami5";
+    repo = "sqlite.lua";
+    rev = "v1.2.2";
+    hash = "sha256-NUjZkFawhUD0oI3pDh/XmVwtcYyPqa+TtVbl3k13cTI=";
+  };
 
   propagatedBuildInputs = [ luv ];
 
@@ -3376,27 +2926,20 @@ buildLuarocksPackage {
   };
 }) {};
 
-std-_debug = callPackage({ buildLuarocksPackage, fetchgit, lua, luaAtLeast, luaOlder }:
+std-_debug = callPackage({ buildLuarocksPackage, fetchurl, fetchzip, luaAtLeast, luaOlder }:
 buildLuarocksPackage {
   pname = "std._debug";
-  version = "git-1";
-
-  src = fetchgit ( removeAttrs (builtins.fromJSON ''{
-  "url": "https://github.com/lua-stdlib/_debug.git",
-  "rev": "8b80b14bbbe7259a47c160176546bb152bb2d6f1",
-  "date": "2023-01-31T16:39:35-07:00",
-  "path": "/nix/store/i24iz2hvnjp18iz9z8kljsy9iv17m2zl-_debug",
-  "sha256": "07z5lz3gy8wzzks79r3v68vckj42i3sybhfmqx7h2s58ld2kn5fd",
-  "hash": "sha256-zRU7RaOoaAFPx9XB5fWIgsjJNjJ75HT0/J8j/8an5R8=",
-  "fetchLFS": false,
-  "fetchSubmodules": true,
-  "deepClone": false,
-  "leaveDotGit": false
-}
- '') ["date" "path" "sha256"]) ;
+  version = "1.0.1-1";
+  knownRockspec = (fetchurl {
+    url    = "mirror://luarocks/std._debug-1.0.1-1.rockspec";
+    sha256 = "0mr9hgzfr9v37da9rfys2wjq48hi3lv27i3g38433dlgbxipsbc4";
+  }).outPath;
+  src = fetchzip {
+    url    = "http://github.com/lua-stdlib/_debug/archive/v1.0.1.zip";
+    sha256 = "19vfpv389q79vgxwhhr09l6l6hf6h2yjp09zvnp0l07ar4v660pv";
+  };
 
-  disabled = (luaOlder "5.1") || (luaAtLeast "5.5");
-  propagatedBuildInputs = [ lua ];
+  disabled = luaOlder "5.1" || luaAtLeast "5.5";
 
   meta = {
     homepage = "http://lua-stdlib.github.io/_debug";
@@ -3405,7 +2948,7 @@ buildLuarocksPackage {
   };
 }) {};
 
-std-normalize = callPackage({ buildLuarocksPackage, fetchurl, fetchzip, lua, luaAtLeast, luaOlder, std-_debug }:
+std-normalize = callPackage({ buildLuarocksPackage, fetchurl, fetchzip, luaAtLeast, luaOlder, std-_debug }:
 buildLuarocksPackage {
   pname = "std.normalize";
   version = "2.0.3-1";
@@ -3418,8 +2961,8 @@ buildLuarocksPackage {
     sha256 = "1gyywglxd2y7ck3hk8ap73w0x7hf9irpg6vgs8yc6k9k4c5g3fgi";
   };
 
-  disabled = (luaOlder "5.1") || (luaAtLeast "5.5");
-  propagatedBuildInputs = [ lua std-_debug ];
+  disabled = luaOlder "5.1" || luaAtLeast "5.5";
+  propagatedBuildInputs = [ std-_debug ];
 
   meta = {
     homepage = "https://lua-stdlib.github.io/normalize";
@@ -3428,7 +2971,7 @@ buildLuarocksPackage {
   };
 }) {};
 
-stdlib = callPackage({ buildLuarocksPackage, fetchurl, fetchzip, lua, luaAtLeast, luaOlder }:
+stdlib = callPackage({ buildLuarocksPackage, fetchurl, fetchzip, luaAtLeast, luaOlder }:
 buildLuarocksPackage {
   pname = "stdlib";
   version = "41.2.2-1";
@@ -3441,8 +2984,7 @@ buildLuarocksPackage {
     sha256 = "0ry6k0wh4vyar1z68s0qmqzkdkfn9lcznsl8av7x78qz6l16wfw4";
   };
 
-  disabled = (luaOlder "5.1") || (luaAtLeast "5.5");
-  propagatedBuildInputs = [ lua ];
+  disabled = luaOlder "5.1" || luaAtLeast "5.5";
 
   meta = {
     homepage = "http://lua-stdlib.github.io/lua-stdlib";
@@ -3452,7 +2994,7 @@ buildLuarocksPackage {
   };
 }) {};
 
-teal-language-server = callPackage({ buildLuarocksPackage, cyan, dkjson, fetchgit, fetchurl, luafilesystem }:
+teal-language-server = callPackage({ buildLuarocksPackage, cyan, dkjson, fetchFromGitHub, fetchurl, luafilesystem }:
 buildLuarocksPackage {
   pname = "teal-language-server";
   version = "dev-1";
@@ -3460,19 +3002,12 @@ buildLuarocksPackage {
     url    = "mirror://luarocks/teal-language-server-dev-1.rockspec";
     sha256 = "01l44c6bknz7ff9xqgich31hlb0yk4ms5k1hs4rhm3cs95s5vlzc";
   }).outPath;
-  src = fetchgit ( removeAttrs (builtins.fromJSON ''{
-  "url": "https://git@github.com/teal-language/teal-language-server.git",
-  "rev": "67b5d7cad60b9df472851a2c61591f2aab97da47",
-  "date": "2022-12-21T20:33:53-06:00",
-  "path": "/nix/store/qyaz38njm8qgyfxca6m6f8i4lkfcfdb0-teal-language-server",
-  "sha256": "12nqarykmdvxxci9l6gq2yhn4pjzzqlxyrl2c8svb97hka68wjvx",
-  "hash": "sha256-fUuOjJrwpLU1YoJm3yn+X15ioRf4GZoi6323On1W2Io=",
-  "fetchLFS": false,
-  "fetchSubmodules": true,
-  "deepClone": false,
-  "leaveDotGit": false
-}
- '') ["date" "path" "sha256"]) ;
+  src = fetchFromGitHub {
+    owner = "teal-language";
+    repo = "teal-language-server";
+    rev = "67b5d7cad60b9df472851a2c61591f2aab97da47";
+    hash = "sha256-fUuOjJrwpLU1YoJm3yn+X15ioRf4GZoi6323On1W2Io=";
+  };
 
   propagatedBuildInputs = [ cyan dkjson luafilesystem ];
 
@@ -3483,21 +3018,21 @@ buildLuarocksPackage {
   };
 }) {};
 
-telescope-manix = callPackage({ buildLuarocksPackage, fetchurl, fetchzip, lua, luaOlder, telescope-nvim }:
+telescope-manix = callPackage({ buildLuarocksPackage, fetchurl, fetchzip, luaOlder, telescope-nvim }:
 buildLuarocksPackage {
   pname = "telescope-manix";
-  version = "1.0.0-1";
+  version = "1.0.2-1";
   knownRockspec = (fetchurl {
-    url    = "mirror://luarocks/telescope-manix-1.0.0-1.rockspec";
-    sha256 = "0fhcglrnsjyhg1g2ldlb24fck9b5fnzy7kc67yjgkw62d557vjgk";
+    url    = "mirror://luarocks/telescope-manix-1.0.2-1.rockspec";
+    sha256 = "0a5cg3kx2pv8jsr0jdpxd1ahprh55n12ggzlqiailyyskzpx94bl";
   }).outPath;
   src = fetchzip {
-    url    = "https://github.com/mrcjkb/telescope-manix/archive/1.0.0.zip";
-    sha256 = "1svw724jlhchsl191bmgr50zbjl9vghkaxk3j8g0nzvrn9677b22";
+    url    = "https://github.com/mrcjkb/telescope-manix/archive/1.0.2.zip";
+    sha256 = "0y3n270zkii123r3987xzvp194dl0q1hy234v95w7l48cf4v495k";
   };
 
-  disabled = (luaOlder "5.1");
-  propagatedBuildInputs = [ lua telescope-nvim ];
+  disabled = luaOlder "5.1";
+  propagatedBuildInputs = [ telescope-nvim ];
 
   meta = {
     homepage = "https://github.com/mrcjkb/telescope-manix";
@@ -3506,7 +3041,7 @@ buildLuarocksPackage {
   };
 }) {};
 
-telescope-nvim = callPackage({ buildLuarocksPackage, fetchgit, fetchurl, lua, plenary-nvim }:
+telescope-nvim = callPackage({ buildLuarocksPackage, fetchFromGitHub, fetchurl, lua, plenary-nvim }:
 buildLuarocksPackage {
   pname = "telescope.nvim";
   version = "scm-1";
@@ -3514,22 +3049,15 @@ buildLuarocksPackage {
     url    = "mirror://luarocks/telescope.nvim-scm-1.rockspec";
     sha256 = "07mjkv1nv9b3ifxk2bbpbhvp0awblyklyz6aaqw418x4gm4q1g35";
   }).outPath;
-  src = fetchgit ( removeAttrs (builtins.fromJSON ''{
-  "url": "https://github.com/nvim-telescope/telescope.nvim",
-  "rev": "6213322ab56eb27356fdc09a5078e41e3ea7f3bc",
-  "date": "2023-12-06T03:50:38+00:00",
-  "path": "/nix/store/h1v5377aylxb6vq8v7m7wrl585vb1dzi-telescope.nvim",
-  "sha256": "074bq8p1bkyr12z1wy31bipb97vmqia4lsmdp2aj1v1r5x5ph736",
-  "hash": "sha256-Zhx4Sy857CCVuK1qSlTEdZ+0blxheB6+CNnPFS7Cixw=",
-  "fetchLFS": false,
-  "fetchSubmodules": true,
-  "deepClone": false,
-  "leaveDotGit": false
-}
- '') ["date" "path" "sha256"]) ;
+  src = fetchFromGitHub {
+    owner = "nvim-telescope";
+    repo = "telescope.nvim";
+    rev = "35f94f0ef32d70e3664a703cefbe71bd1456d899";
+    hash = "sha256-AtvZ7b2bg+Iaei4rRzTBYf76vHJH2Yq5tJAJZrZw/pk=";
+  };
 
-  disabled = (lua.luaversion != "5.1");
-  propagatedBuildInputs = [ lua plenary-nvim ];
+  disabled = lua.luaversion != "5.1";
+  propagatedBuildInputs = [ plenary-nvim ];
 
   meta = {
     homepage = "https://github.com/nvim-telescope/telescope.nvim";
@@ -3538,7 +3066,7 @@ buildLuarocksPackage {
   };
 }) {};
 
-tiktoken_core = callPackage({ buildLuarocksPackage, fetchgit, fetchurl, lua, luaOlder, luarocks-build-rust-mlua }:
+tiktoken_core = callPackage({ buildLuarocksPackage, fetchFromGitHub, fetchurl, luaOlder, luarocks-build-rust-mlua }:
 buildLuarocksPackage {
   pname = "tiktoken_core";
   version = "0.2.1-1";
@@ -3546,22 +3074,15 @@ buildLuarocksPackage {
     url    = "mirror://luarocks/tiktoken_core-0.2.1-1.rockspec";
     sha256 = "0mdmrpg82vmk0cqiqdayyk4vvl299z0xqrg58q18dfs5nc27wkla";
   }).outPath;
-  src = fetchgit ( removeAttrs (builtins.fromJSON ''{
-  "url": "https://github.com/gptlang/lua-tiktoken",
-  "rev": "61d831a81a01ba095f8c94e148b721b3aa7b1e45",
-  "date": "2024-03-03T23:24:06+00:00",
-  "path": "/nix/store/5ik17k726wl8hpz295n7dqq3438k8ddj-lua-tiktoken",
-  "sha256": "11lpzxmmb4zglkp9czlzggd8i46r7whpq021b5d3fx7bc5a81d3n",
-  "hash": "sha256-drSAVGHrdDdaWUEAfCE/2ZCI2nuffpbupO+TVWv/l4Y=",
-  "fetchLFS": false,
-  "fetchSubmodules": true,
-  "deepClone": false,
-  "leaveDotGit": false
-}
- '') ["date" "path" "sha256"]) ;
+  src = fetchFromGitHub {
+    owner = "gptlang";
+    repo = "lua-tiktoken";
+    rev = "0.2.1";
+    hash = "sha256-drSAVGHrdDdaWUEAfCE/2ZCI2nuffpbupO+TVWv/l4Y=";
+  };
 
-  disabled = (luaOlder "5.1");
-  propagatedBuildInputs = [ lua luarocks-build-rust-mlua ];
+  disabled = luaOlder "5.1";
+  propagatedBuildInputs = [ luarocks-build-rust-mlua ];
 
   meta = {
     homepage = "https://github.com/gptlang/lua-tiktoken";
@@ -3571,7 +3092,7 @@ buildLuarocksPackage {
   };
 }) {};
 
-tl = callPackage({ argparse, buildLuarocksPackage, compat53, fetchgit, fetchurl, luafilesystem }:
+tl = callPackage({ argparse, buildLuarocksPackage, compat53, fetchFromGitHub, fetchurl, luafilesystem }:
 buildLuarocksPackage {
   pname = "tl";
   version = "0.15.3-1";
@@ -3579,19 +3100,12 @@ buildLuarocksPackage {
     url    = "mirror://luarocks/tl-0.15.3-1.rockspec";
     sha256 = "15p67r5bjp997pymjq80yn1gyf7r5g2nwkachkwx88100ihblqrc";
   }).outPath;
-  src = fetchgit ( removeAttrs (builtins.fromJSON ''{
-  "url": "https://github.com/teal-language/tl",
-  "rev": "28f8fd9eb1a756267b8cde25990dfae27f8f5bcc",
-  "date": "2023-11-05T23:31:17-03:00",
-  "path": "/nix/store/8qbkpkni2ci042ryzjh0nfxnrmmckg3l-tl",
-  "sha256": "0spr0zajy8i91n0jqmjpgdcsryrlras6fv60np9ml1rfirh0yk4y",
-  "hash": "sha256-nkwPYI4uB1rTtcBsZ7TKNPusWXtXViyBDSkiL9UH+Wo=",
-  "fetchLFS": false,
-  "fetchSubmodules": true,
-  "deepClone": false,
-  "leaveDotGit": false
-}
- '') ["date" "path" "sha256"]) ;
+  src = fetchFromGitHub {
+    owner = "teal-language";
+    repo = "tl";
+    rev = "v0.15.3";
+    hash = "sha256-nkwPYI4uB1rTtcBsZ7TKNPusWXtXViyBDSkiL9UH+Wo=";
+  };
 
   propagatedBuildInputs = [ argparse compat53 luafilesystem ];
 
@@ -3636,7 +3150,7 @@ buildLuarocksPackage {
   };
 }) {};
 
-toml-edit = callPackage({ buildLuarocksPackage, fetchzip, fetchurl, lua, luaOlder }:
+toml-edit = callPackage({ buildLuarocksPackage, fetchurl, fetchzip, luaOlder, luarocks-build-rust-mlua }:
 buildLuarocksPackage {
   pname = "toml-edit";
   version = "0.3.6-1";
@@ -3649,8 +3163,8 @@ buildLuarocksPackage {
     sha256 = "19v6axraj2n22lmilfr4x9nr40kcjb6wnpsfhf1mh2zy9nsd6ji6";
   };
 
-  disabled = (luaOlder "5.1");
-  propagatedBuildInputs = [ lua ];
+  disabled = luaOlder "5.1";
+  nativeBuildInputs = [ luarocks-build-rust-mlua ];
 
   meta = {
     homepage = "https://github.com/vhyrro/toml-edit.lua";
@@ -3660,27 +3174,43 @@ buildLuarocksPackage {
   };
 }) {};
 
-vstruct = callPackage({ buildLuarocksPackage, fetchgit, lua, luaOlder }:
+tree-sitter-norg = callPackage({ buildLuarocksPackage, fetchurl, fetchzip }:
+buildLuarocksPackage {
+  pname = "tree-sitter-norg";
+  version = "0.2.4-1";
+  knownRockspec = (fetchurl {
+    url    = "mirror://luarocks/tree-sitter-norg-0.2.4-1.rockspec";
+    sha256 = "00mgn1kmhhrink64s1yjnz78lc7qbv0f021dsvr6z3b44srhcxb9";
+  }).outPath;
+  src = fetchzip {
+    url    = "https://github.com/nvim-neorg/tree-sitter-norg/archive/v0.2.4.zip";
+    sha256 = "08bsk3v61r0xhracanjv25jccqv80ahipx0mv5a1slzhcyymv8kd";
+  };
+
+
+  meta = {
+    homepage = "https://github.com/nvim-neorg/tree-sitter-norg";
+    description = "The official tree-sitter parser for Norg documents.";
+    license.fullName = "MIT";
+  };
+}) {};
+
+vstruct = callPackage({ buildLuarocksPackage, fetchFromGitHub, fetchurl, luaOlder }:
 buildLuarocksPackage {
   pname = "vstruct";
   version = "2.1.1-1";
+  knownRockspec = (fetchurl {
+    url    = "mirror://luarocks/vstruct-2.1.1-1.rockspec";
+    sha256 = "111ff5207hspda9fpj9dqdd699rax0df3abdnfbmdbdy3j07dd04";
+  }).outPath;
+  src = fetchFromGitHub {
+    owner = "ToxicFrog";
+    repo = "vstruct";
+    rev = "v2.1.1";
+    hash = "sha256-p9yRJ3Kr6WQ4vBSTOVLoX6peNCJW6b6kgXCySg7aiWo=";
+  };
 
-  src = fetchgit ( removeAttrs (builtins.fromJSON ''{
-  "url": "https://github.com/ToxicFrog/vstruct.git",
-  "rev": "924d3dd63043189e4a7ef6b1b54b19208054cc0f",
-  "date": "2020-05-06T23:13:06-04:00",
-  "path": "/nix/store/a4i9k5hx9xiz38bij4hb505dg088jkss-vstruct",
-  "sha256": "0sl9v874mckhh6jbxsan48s5xajzx193k4qlphw69sdbf8kr3p57",
-  "hash": "sha256-p9yRJ3Kr6WQ4vBSTOVLoX6peNCJW6b6kgXCySg7aiWo=",
-  "fetchLFS": false,
-  "fetchSubmodules": true,
-  "deepClone": false,
-  "leaveDotGit": false
-}
- '') ["date" "path" "sha256"]) ;
-
-  disabled = (luaOlder "5.1");
-  propagatedBuildInputs = [ lua ];
+  disabled = luaOlder "5.1";
 
   meta = {
     homepage = "https://github.com/ToxicFrog/vstruct";
@@ -3688,29 +3218,22 @@ buildLuarocksPackage {
   };
 }) {};
 
-vusted = callPackage({ buildLuarocksPackage, busted, fetchgit, fetchurl }:
+vusted = callPackage({ buildLuarocksPackage, busted, fetchFromGitHub, fetchurl, luasystem }:
 buildLuarocksPackage {
   pname = "vusted";
-  version = "2.3.3-1";
+  version = "2.3.4-1";
   knownRockspec = (fetchurl {
-    url    = "mirror://luarocks/vusted-2.3.3-1.rockspec";
-    sha256 = "0h1v9p327yfqnbwi2rw3k47vwbpqx5rn679rfx5dszn3s6wp5g6p";
+    url    = "mirror://luarocks/vusted-2.3.4-1.rockspec";
+    sha256 = "1yzdr0xgsjfr4a80a2zrj58ls0gmms407q4h1dx75sszppzvm1wc";
   }).outPath;
-  src = fetchgit ( removeAttrs (builtins.fromJSON ''{
-  "url": "https://github.com/notomo/vusted.git",
-  "rev": "69a5a5f453cf2fc2984e1ba4eea91384e59f9da1",
-  "date": "2023-11-06T21:06:04+09:00",
-  "path": "/nix/store/85m6md82nl3jj853s9mhsc4dy0isws8b-vusted",
-  "sha256": "012n09hy4q0im2bv0vprkanv6xqdppaz6f7gwp87nxsmk88q8mxv",
-  "hash": "sha256-u1eEEZpVd3vQ5e8489W9DXezrZr5brCXqBFg4mECVgQ=",
-  "fetchLFS": false,
-  "fetchSubmodules": true,
-  "deepClone": false,
-  "leaveDotGit": false
-}
- '') ["date" "path" "sha256"]) ;
+  src = fetchFromGitHub {
+    owner = "notomo";
+    repo = "vusted";
+    rev = "v2.3.4";
+    hash = "sha256-Zh54mHNrbFH5qygzsXVv+Vc7oUP+RIQXBvK+UvaGvxY=";
+  };
 
-  propagatedBuildInputs = [ busted ];
+  propagatedBuildInputs = [ busted luasystem ];
 
   meta = {
     homepage = "https://github.com/notomo/vusted";
@@ -3720,7 +3243,7 @@ buildLuarocksPackage {
   };
 }) {};
 
-xml2lua = callPackage({ buildLuarocksPackage, fetchgit, fetchurl, lua, luaOlder }:
+xml2lua = callPackage({ buildLuarocksPackage, fetchFromGitHub, fetchurl, luaOlder }:
 buildLuarocksPackage {
   pname = "xml2lua";
   version = "1.5-2";
@@ -3728,29 +3251,23 @@ buildLuarocksPackage {
     url    = "mirror://luarocks/xml2lua-1.5-2.rockspec";
     sha256 = "1h0zszjzi65jc2rmpam7ai38sx2ph09q66jkik5mgzr6cxm1cm4h";
   }).outPath;
-  src = fetchgit ( removeAttrs (builtins.fromJSON ''{
-  "url": "https://github.com/manoelcampos/xml2lua",
-  "rev": "b24be89a154d49b33295958584944bfd7ba2b24e",
-  "date": "2021-07-13T10:22:09-03:00",
-  "path": "/nix/store/i5dvpc0mhhw7jbrvg4bsz1scs0kvmx5f-xml2lua",
-  "sha256": "1vk3chcpq8b98dss5kwskbzxig58zar0jgi8mizdccw4rx698c44",
-  "hash": "sha256-hDCUTM+EM9Z+rCg+CbL6qLzY/5qaz6J1Q2khfBlkY+4=",
-  "fetchLFS": false,
-  "fetchSubmodules": true,
-  "deepClone": false,
-  "leaveDotGit": false
-}
- '') ["date" "path" "sha256"]) ;
+  src = fetchFromGitHub {
+    owner = "manoelcampos";
+    repo = "xml2lua";
+    rev = "v1.5-2";
+    hash = "sha256-hDCUTM+EM9Z+rCg+CbL6qLzY/5qaz6J1Q2khfBlkY+4=";
+  };
 
-  disabled = (luaOlder "5.1");
-  propagatedBuildInputs = [ lua ];
+  disabled = luaOlder "5.1";
 
   meta = {
     homepage = "http://manoelcampos.github.io/xml2lua/";
     description = "An XML Parser written entirely in Lua that works for Lua 5.1+";
+    maintainers = with lib.maintainers; [ teto ];
     license.fullName = "MIT";
   };
 }) {};
 
+
 }
 /* GENERATED - do not edit this file */
diff --git a/pkgs/development/lua-modules/nfd/default.nix b/pkgs/development/lua-modules/nfd/default.nix
index 5c2ffabc9b54..1cc8d66044c7 100644
--- a/pkgs/development/lua-modules/nfd/default.nix
+++ b/pkgs/development/lua-modules/nfd/default.nix
@@ -1,5 +1,4 @@
-{ stdenv, fetchFromGitHub, buildLuarocksPackage, lua, pkg-config, lib
-, substituteAll, zenity, AppKit }:
+{ stdenv, fetchFromGitHub, buildLuarocksPackage, lua51Packages, lua, pkg-config, lib, substituteAll, zenity, AppKit}:
 
 buildLuarocksPackage {
   pname = "nfd";
@@ -22,15 +21,22 @@ buildLuarocksPackage {
   ];
   knownRockspec = "lua/nfd-scm-1.rockspec";
 
-  luarocksConfig.LUA_LIBDIR = "${lua}/lib";
+  luarocksConfig.variables.LUA_LIBDIR = "${lua}/lib";
   nativeBuildInputs = [ pkg-config ];
 
   buildInputs = lib.optionals stdenv.isDarwin [ AppKit ];
 
-  fixupPhase = ''
+  postInstall = ''
     find $out -name nfd_zenity.so -execdir mv {} nfd.so \;
   '';
 
+  doInstallCheck = true;
+  installCheckInputs = [ lua.pkgs.busted ];
+  installCheckPhase= ''
+    busted lua/spec/
+ '';
+
+
   meta = {
     description =
       "A tiny, neat lua library that portably invokes native file open and save dialogs.";
diff --git a/pkgs/development/lua-modules/overrides.nix b/pkgs/development/lua-modules/overrides.nix
index 45cd51b71753..7eea1ba9930c 100644
--- a/pkgs/development/lua-modules/overrides.nix
+++ b/pkgs/development/lua-modules/overrides.nix
@@ -6,6 +6,7 @@
 # plenary utilities
 , which
 , findutils
+, clang
 , coreutils
 , curl
 , cyrus_sasl
@@ -47,6 +48,7 @@
 , sol2
 , sqlite
 , tomlplusplus
+, tree-sitter
 , unbound
 , vimPlugins
 , vimUtils
@@ -91,7 +93,7 @@ in
     ];
     postConfigure = ''
       substituteInPlace ''${rockspecFilename} \
-        --replace "'lua_cliargs = 3.0-1'," "'lua_cliargs >= 3.0-1',"
+        --replace-fail "'lua_cliargs = 3.0'," "'lua_cliargs >= 3.0-1',"
     '';
     postInstall = ''
       installShellCompletion --cmd busted \
@@ -150,9 +152,9 @@ in
   # we have to invoke busted manually
   fzy = prev.fzy.overrideAttrs(oa: {
     doCheck = true;
-    nativeCheckInputs = [ prev.busted ];
+    nativeCheckInputs = [ final.busted ];
     checkPhase = ''
-      busted test/test.lua
+      busted
     '';
   });
 
@@ -235,6 +237,10 @@ in
     preConfigure = ''
       make rock
     '';
+
+    # Lua 5.4 support is experimental at the moment, see
+    # https://github.com/lgi-devs/lgi/pull/249
+    meta.broken = luaOlder "5.1" || luaAtLeast "5.4";
   });
 
   lmathx = prev.luaLib.overrideLuarocks prev.lmathx (drv:
@@ -427,6 +433,13 @@ in
   #   meta.broken = true;
   # });
 
+  lua-resty-openidc =  prev.lua-resty-openidc.overrideAttrs (_: {
+    postConfigure = ''
+      substituteInPlace ''${rockspecFilename} \
+        --replace '"lua-resty-session >= 2.8, <= 3.10",' '"lua-resty-session >= 2.8",'
+    '';
+  });
+
   lua-yajl =  prev.lua-yajl.overrideAttrs (oa: {
     buildInputs = oa.buildInputs ++ [
       yajl
@@ -636,7 +649,8 @@ in
       tar xf *.tar.gz
     '';
 
-    propagatedBuildInputs = [ lua luaposix
+    propagatedBuildInputs = [
+      luaposix
       readline.out
     ];
 
@@ -691,12 +705,15 @@ in
   toml = prev.toml.overrideAttrs (oa: {
     patches = [ ./toml.patch ];
 
-    propagatedBuildInputs = oa.propagatedBuildInputs ++ [ magic-enum sol2 ];
+    nativeBuildInputs = oa.nativeBuildInputs ++ [ tomlplusplus ];
+    propagatedBuildInputs = oa.propagatedBuildInputs ++ [ sol2 ];
 
     postPatch = ''
-      substituteInPlace CMakeLists.txt --replace \
-        "TOML_PLUS_PLUS_SRC" \
-        "${tomlplusplus.src}"
+      substituteInPlace CMakeLists.txt \
+        --replace-fail "TOML_PLUS_PLUS_SRC" "${tomlplusplus.src}/include/toml++" \
+        --replace-fail "MAGIC_ENUM_SRC" "${magic-enum.src}/include/magic_enum"
+
+      cat CMakeLists.txt
     '';
   });
 
@@ -707,11 +724,7 @@ in
       hash = "sha256-2P+mokkjdj2PccQG/kAGnIoUPVnK2FqNfYpHPhsp8kw=";
     };
 
-    nativeBuildInputs = let
-      # HACK: luarocks-nix doesn't pick up rockspec build dependencies,
-      # so we have to pass the correct package in here.
-      lua = lib.head oa.propagatedBuildInputs;
-    in oa.nativeBuildInputs ++ [
+    nativeBuildInputs = oa.nativeBuildInputs ++ [
       cargo
       rustPlatform.cargoSetupHook
       lua.pkgs.luarocks-build-rust-mlua
@@ -719,11 +732,31 @@ in
 
   });
 
+  tree-sitter-norg = prev.tree-sitter-norg.overrideAttrs (oa: {
+    nativeBuildInputs = let
+      # HACK: luarocks-nix doesn't pick up rockspec build dependencies,
+      # so we have to pass the correct package in here.
+      lua = lib.head oa.propagatedBuildInputs;
+    in oa.nativeBuildInputs ++ [
+      lua.pkgs.luarocks-build-treesitter-parser
+    ] ++ (lib.optionals stdenv.isDarwin [
+      clang
+      tree-sitter
+    ]);
+    meta.broken = (luaOlder "5.1" || stdenv.isDarwin);
+  });
+
   vstruct = prev.vstruct.overrideAttrs (_: {
     meta.broken = (luaOlder "5.1" || luaAtLeast "5.4");
   });
 
   vusted = prev.vusted.overrideAttrs (_: {
+    postConfigure = ''
+      cat ''${rockspecFilename}
+      substituteInPlace ''${rockspecFilename} \
+        --replace-fail '"luasystem = 0.2.1",' "'luasystem >= 0.2',"
+    '';
+
     # make sure vusted_entry.vim doesn't get wrapped
     postInstall = ''
       chmod -x $out/bin/vusted_entry.vim
diff --git a/pkgs/development/lua-modules/toml.patch b/pkgs/development/lua-modules/toml.patch
index 5f9f57a445db..e04fc5d630f9 100644
--- a/pkgs/development/lua-modules/toml.patch
+++ b/pkgs/development/lua-modules/toml.patch
@@ -1,8 +1,8 @@
 diff --git a/CMakeLists.txt b/CMakeLists.txt
-index ab3884c..9432df7 100644
+index ab3884c..c0fd356 100644
 --- a/CMakeLists.txt
 +++ b/CMakeLists.txt
-@@ -38,26 +38,17 @@ include(FetchContent)
+@@ -38,32 +38,23 @@ include(FetchContent)
  
  FetchContent_Declare(
  	${TOML++}
@@ -32,12 +32,30 @@ index ab3884c..9432df7 100644
  )
  
  FetchContent_GetProperties(${TOML++})
+ if(NOT ${TOML++}_POPULATED)
+     message(STATUS "Cloning ${TOML++}")
+-	FetchContent_Populate(${TOML++}) 
++	FetchContent_Populate(${TOML++})
+     FetchContent_MakeAvailable(${TOML++})
+ endif()
+ 
 @@ -113,7 +104,7 @@ if(NOT LUA_INCLUDE_DIR OR (WIN32 AND NOT LUA_LIBRARIES))
      find_package(Lua)
  endif()
  
 -include_directories(${LUA_INCLUDE_DIR} src src/include ${${TOML++}_SOURCE_DIR} ${${SOL2}_SOURCE_DIR}/include ${${MAGIC_ENUM}_SOURCE_DIR}/include)
-+include_directories(${LUA_INCLUDE_DIR} src src/include TOML_PLUS_PLUS_SRC ${${SOL2}_SOURCE_DIR}/include ${${MAGIC_ENUM}_SOURCE_DIR}/include)
++include_directories(${LUA_INCLUDE_DIR} src src/include TOML_PLUS_PLUS_SRC ${${SOL2}_SOURCE_DIR}/include MAGIC_ENUM_SRC)
  
  set(SOURCES
      src/toml.cpp
+@@ -129,8 +120,8 @@ source_group(src FILES ${SOURCES})
+ 
+ if(WIN32 AND "${CMAKE_CXX_COMPILER_ID}" MATCHES "Clang")
+ 	target_link_options(toml.lua PUBLIC ${PROJECT_SOURCE_DIR}\\libs\\lua51.lib)
+-else() 
+-    target_link_libraries(toml.lua ${LUA_LIBRARIES})    
++else()
++    target_link_libraries(toml.lua ${LUA_LIBRARIES})
+ endif()
+ 
+ if (LINK_FLAGS)
diff --git a/pkgs/development/lua-modules/updater/.flake8 b/pkgs/development/lua-modules/updater/.flake8
index 16f76a43624c..7ad3e937c9a5 100644
--- a/pkgs/development/lua-modules/updater/.flake8
+++ b/pkgs/development/lua-modules/updater/.flake8
@@ -4,3 +4,5 @@
 # E123 buggy
 ignore =
 	E501,E265,E402
+
+max-line-length = 120
diff --git a/pkgs/development/lua-modules/updater/updater.py b/pkgs/development/lua-modules/updater/updater.py
index 407b4104b774..f0a91a313919 100755
--- a/pkgs/development/lua-modules/updater/updater.py
+++ b/pkgs/development/lua-modules/updater/updater.py
@@ -49,8 +49,8 @@ FOOTER = """
 class LuaPlugin:
     name: str
     """Name of the plugin, as seen on luarocks.org"""
-    src: str
-    """address to the git repository"""
+    rockspec: str
+    """Full path towards the rockspec"""
     ref: Optional[str]
     """git reference (branch name/tag)"""
     version: Optional[str]
@@ -103,7 +103,7 @@ class LuaEditor(pluginupdate.Editor):
             f.write(HEADER)
             header2 = textwrap.dedent(
                 """
-                { stdenv, lib, fetchurl, fetchgit, callPackage, ... } @ args:
+                { stdenv, lib, fetchurl, fetchgit, callPackage, ... }:
                 final: prev:
                 {
             """
@@ -171,16 +171,17 @@ def generate_pkg_nix(plug: LuaPlugin):
     if plug.maintainers:
         cmd.append(f"--maintainers={plug.maintainers}")
 
-    if plug.src != "":
-        if plug.src is None:
+    if plug.rockspec != "":
+        if plug.ref or plug.version:
             msg = (
-                "src must be set when 'version' is set to \"src\" for package %s"
+                "'version' and 'ref' will be ignored as the rockspec is hardcoded for package %s"
                 % plug.name
             )
-            log.error(msg)
-            raise RuntimeError(msg)
-        log.debug("Updating from source %s", plug.src)
-        cmd.append(plug.src)
+            log.warn(msg)
+
+        log.debug("Updating from rockspec %s", plug.rockspec)
+        cmd.append(plug.rockspec)
+
     # update the plugin from luarocks
     else:
         cmd.append(plug.name)
diff --git a/pkgs/development/misc/brev-cli/default.nix b/pkgs/development/misc/brev-cli/default.nix
index 146d41321c6a..812f063a3c62 100644
--- a/pkgs/development/misc/brev-cli/default.nix
+++ b/pkgs/development/misc/brev-cli/default.nix
@@ -5,13 +5,13 @@
 
 buildGoModule rec {
   pname = "brev-cli";
-  version = "0.6.279";
+  version = "0.6.284";
 
   src = fetchFromGitHub {
     owner = "brevdev";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-jQkaMFTArXPSCm6aBQb/vb4JEkgHtmzJl/Iz/f/pBSY=";
+    sha256 = "sha256-G70309GQ3C7ZBS4baRKN3Ms4MBvCmLmPorbByZy4Qh4=";
   };
 
   vendorHash = "sha256-IR/tgqh8rS4uN5jSOcopCutbHCKHSU9icUfRhOgu4t8=";
diff --git a/pkgs/development/misc/loc/default.nix b/pkgs/development/misc/loc/default.nix
index 405c45cd4ae9..23453e92e7f8 100644
--- a/pkgs/development/misc/loc/default.nix
+++ b/pkgs/development/misc/loc/default.nix
@@ -18,7 +18,7 @@ rustPlatform.buildRustPackage rec {
     description = "Count lines of code quickly";
     mainProgram = "loc";
     license = lib.licenses.mit;
-    maintainers = with lib.maintainers; [ ];
+    maintainers = with lib.maintainers; [ sigmanificient ];
     platforms = platforms.unix;
   };
 }
diff --git a/pkgs/development/misc/resholve/README.md b/pkgs/development/misc/resholve/README.md
index 734ff26d8c4e..3d8ae6d966f3 100644
--- a/pkgs/development/misc/resholve/README.md
+++ b/pkgs/development/misc/resholve/README.md
@@ -102,19 +102,19 @@ trivial, so I'll also link to some real-world examples:
 ```nix
 {
   resholvedScript = resholve.writeScript "name" {
-      inputs = [ file ];
-      interpreter = "${bash}/bin/bash";
-    } ''
-      echo "Hello"
-      file .
-    '';
+    inputs = [ file ];
+    interpreter = "${bash}/bin/bash";
+  } ''
+    echo "Hello"
+    file .
+  '';
   resholvedScriptBin = resholve.writeScriptBin "name" {
-      inputs = [ file ];
-      interpreter = "${bash}/bin/bash";
-    } ''
-      echo "Hello"
-      file .
-    '';
+    inputs = [ file ];
+    interpreter = "${bash}/bin/bash";
+  } ''
+    echo "Hello"
+    file .
+  '';
 }
 ```
 
@@ -230,7 +230,7 @@ from the manpage, and the Nix equivalents:
     # all single-word directives use `true` as value
     aliases = true;
     "$GIT" = [ "gix" ];
-    interpreter = "/bin/bash";
+    "/bin/bash" = true;
   };
 
   # --keep 'source:$HOME /etc/bashrc ~/.bashrc'
diff --git a/pkgs/development/misc/resholve/source.nix b/pkgs/development/misc/resholve/source.nix
index 1492e3685779..7d843d61b163 100644
--- a/pkgs/development/misc/resholve/source.nix
+++ b/pkgs/development/misc/resholve/source.nix
@@ -3,11 +3,11 @@
 }:
 
 rec {
-  version = "0.10.2";
+  version = "0.10.5";
   rSrc = fetchFromGitHub {
     owner = "abathur";
     repo = "resholve";
     rev = "v${version}";
-    hash = "sha256-QXIX3Ai9HUFosvhfYTUJILZ588cvxTzULUUp1LYkQ0A=";
+    hash = "sha256-SzJbA0wLeSwvXnAE4bTNqh0tnpFPkn6N1hp7sZGAkB4=";
   };
 }
diff --git a/pkgs/development/misc/resholve/test.nix b/pkgs/development/misc/resholve/test.nix
index e9551b5be2a9..887c4e45cd88 100644
--- a/pkgs/development/misc/resholve/test.nix
+++ b/pkgs/development/misc/resholve/test.nix
@@ -18,7 +18,6 @@
 , gettext
 , rSrc
 , runDemo ? false
-, fetchpatch
 , binlore
 , sqlite
 , unixtools
@@ -26,6 +25,39 @@
 , rlwrap
 , gnutar
 , bc
+# override testing
+, esh
+, getconf
+, libarchive
+, locale
+, mount
+, ncurses
+, nixos-install-tools
+, nixos-rebuild
+, procps
+, ps
+# known consumers
+, aaxtomp3
+, arch-install-scripts
+, bashup-events32
+, dgoss
+, git-ftp
+, ix
+, lesspipe
+, locate-dominating-file
+, mons
+, msmtp
+, nix-direnv
+, pdf2odt
+, pdfmm
+, rancid
+, s0ix-selftest-tool
+, unix-privesc-check
+, wgnord
+, wsl-vpnkit
+, xdg-utils
+, yadm
+, zxfer
 }:
 
 let
@@ -123,21 +155,6 @@ rec {
     name = "resholve-test";
     src = rSrc;
 
-    # TODO: should be removable on next resholve update--just
-    # temporarily work around test breaks caused by changes in
-    # bats 1.10.0. Since this is just about fixing tests, I'm
-    # patching test source to avoid going through staging.
-    patches = [
-      (fetchpatch {
-        url = "https://github.com/abathur/resholve/commit/e1d6ccbc9cd5ec26122997610954dcb7d826f652.patch";
-        hash = "sha256-XA9KUc/OAD2S8Vpt+C7KcjTP44rnZ4FLdgnnRqVWdWY=";
-      })
-      (fetchpatch {
-        url = "https://github.com/abathur/resholve/commit/50db1a6a97baa7d7543a8abe33dddda62b487c65.patch";
-        hash = "sha256-m1dKaLI02Wag7uacG4BkcdCXw30Kn6J4ydTqPd7bsak=";
-      })
-    ];
-
     dontBuild = true;
 
     installPhase = ''
@@ -206,4 +223,71 @@ rec {
     echo "Hello"
     file .
   '';
+  # spot-check lore overrides
+  loreOverrides = resholve.writeScriptBin "verify-overrides" {
+    inputs = [
+      coreutils
+      esh
+      getconf
+      libarchive
+      locale
+      mount
+      ncurses
+      procps
+      ps
+    ] ++ lib.optionals stdenv.isLinux [
+      nixos-install-tools
+      nixos-rebuild
+    ];
+    interpreter = "none";
+    execer = [
+      "cannot:${esh}/bin/esh"
+    ];
+    fix = {
+      mount = true;
+    };
+  } (''
+    env b2sum fake args
+    b2sum fake args
+    esh fake args
+    getconf fake args
+    bsdtar fake args
+    locale fake args
+    mount fake args
+    reset fake args
+    tput fake args
+    tset fake args
+    ps fake args
+    top fake args
+  '' + lib.optionalString stdenv.isLinux ''
+    nixos-generate-config fake args
+    nixos-rebuild fake args
+  '');
+
+  # ensure known consumers in nixpkgs keep working
+  inherit aaxtomp3;
+  inherit bashup-events32;
+  inherit bats;
+  inherit git-ftp;
+  inherit ix;
+  inherit lesspipe;
+  inherit locate-dominating-file;
+  inherit mons;
+  inherit msmtp;
+  inherit nix-direnv;
+  inherit pdf2odt;
+  inherit pdfmm;
+  inherit shunit2;
+  inherit xdg-utils;
+  inherit yadm;
+} // lib.optionalAttrs stdenv.isLinux {
+  inherit arch-install-scripts;
+  inherit dgoss;
+  inherit rancid;
+  inherit unix-privesc-check;
+  inherit wgnord;
+  inherit wsl-vpnkit;
+  inherit zxfer;
+} // lib.optionalAttrs (stdenv.isLinux && (stdenv.isi686 || stdenv.isx86_64)) {
+  inherit s0ix-selftest-tool;
 }
diff --git a/pkgs/development/mobile/genymotion/default.nix b/pkgs/development/mobile/genymotion/default.nix
index a70000ca56a5..a2e81531c174 100644
--- a/pkgs/development/mobile/genymotion/default.nix
+++ b/pkgs/development/mobile/genymotion/default.nix
@@ -66,7 +66,8 @@ stdenv.mkDerivation rec {
       patchInterpreter "$1"
       wrapProgram "$out/libexec/genymotion/$1" \
         --set "LD_LIBRARY_PATH" "${libPath}" \
-        --unset "QML2_IMPORT_PATH"
+        --unset "QML2_IMPORT_PATH" \
+        --unset "QT_PLUGIN_PATH"
     }
 
     patchTool() {
@@ -77,8 +78,8 @@ stdenv.mkDerivation rec {
 
     patchExecutable genymotion
     patchExecutable player
-    patchExecutable qemu/x86_64/bin/qemu-img
-    patchExecutable qemu/x86_64/bin/qemu-system-x86_64
+    patchInterpreter qemu/x86_64/bin/qemu-img
+    patchInterpreter qemu/x86_64/bin/qemu-system-x86_64
 
     patchTool adb
     patchTool aapt
diff --git a/pkgs/development/ocaml-modules/alcotest/default.nix b/pkgs/development/ocaml-modules/alcotest/default.nix
index 0e459315fa88..d8310ce23eea 100644
--- a/pkgs/development/ocaml-modules/alcotest/default.nix
+++ b/pkgs/development/ocaml-modules/alcotest/default.nix
@@ -1,4 +1,4 @@
-{ lib, buildDunePackage, fetchurl
+{ lib, buildDunePackage, fetchurl, fetchpatch
 , astring, cmdliner, fmt, re, stdlib-shims, uutf, ocaml-syntax-shims
 }:
 
@@ -6,13 +6,17 @@ buildDunePackage rec {
   pname = "alcotest";
   version = "1.7.0";
 
-  duneVersion = "3";
-
   src = fetchurl {
     url = "https://github.com/mirage/alcotest/releases/download/${version}/alcotest-${version}.tbz";
     hash = "sha256-gSus2zS0XoiZXgfXMGvasvckee8ZlmN/HV0fQWZ5At8=";
   };
 
+  # Fix tests with OCaml 5.2
+  patches = fetchpatch {
+    url = "https://github.com/mirage/alcotest/commit/aa437168b258db97680021116af176c55e1bd53b.patch";
+    hash = "sha256-cytuJFg4Mft47LsAEcz2zvzyy1wNzMdeLK+cjaFANpo=";
+  };
+
   nativeBuildInputs = [ ocaml-syntax-shims ];
 
   propagatedBuildInputs = [ astring cmdliner fmt re stdlib-shims uutf ];
diff --git a/pkgs/development/ocaml-modules/arp/default.nix b/pkgs/development/ocaml-modules/arp/default.nix
index c2109b49af1b..a4facc6cddfc 100644
--- a/pkgs/development/ocaml-modules/arp/default.nix
+++ b/pkgs/development/ocaml-modules/arp/default.nix
@@ -22,11 +22,11 @@
 
 buildDunePackage rec {
   pname = "arp";
-  version = "3.1.0";
+  version = "3.1.1";
 
   src = fetchurl {
     url = "https://github.com/mirage/${pname}/releases/download/v${version}/${pname}-${version}.tbz";
-    hash = "sha256-g/aEhpufQcyS/vCtKk0Z1sYaYNRmQFaZ9rTp9F4nq54=";
+    hash = "sha256-6jPFiene6jAPtivCugtVfP3+6k9A5gBoWzpoxoaPBvE=";
   };
 
   minimalOCamlVersion = "4.08";
diff --git a/pkgs/development/ocaml-modules/eliom/default.nix b/pkgs/development/ocaml-modules/eliom/default.nix
index 73f7c0aaccd2..30b955876ace 100644
--- a/pkgs/development/ocaml-modules/eliom/default.nix
+++ b/pkgs/development/ocaml-modules/eliom/default.nix
@@ -1,7 +1,6 @@
 { buildDunePackage
 , lib
 , fetchFromGitHub
-, fetchpatch
 , which
 , ocsigen_server
 , lwt_react
@@ -18,19 +17,13 @@
 
 buildDunePackage rec {
   pname = "eliom";
-  version = "10.3.1";
+  version = "10.4.1";
 
   src = fetchFromGitHub {
     owner = "ocsigen";
     repo = "eliom";
     rev = version;
-    hash = "sha256-REOyxwnQqWOKywVYwN/WP22cNKZv5Nv0OpFVbNBPJN8=";
-  };
-
-  # Compatibility with tyxml 4.6.x
-  patches = fetchpatch {
-    url = "https://github.com/ocsigen/eliom/commit/9a6adcce3959a37b971890999331335d07f4f732.patch";
-    hash = "sha256-rgsqohSAHHljvag3c+HNGEgW9qwmqPq8qfTpX6vVKtg=";
+    hash = "sha256-j4t6GEd8hYyM87b9XvgcnaV9XMkouz6+v0SYW22/bqg=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/ocaml-modules/janestreet/0.16.nix b/pkgs/development/ocaml-modules/janestreet/0.16.nix
index 526ea44808cd..59cd7539d1f1 100644
--- a/pkgs/development/ocaml-modules/janestreet/0.16.nix
+++ b/pkgs/development/ocaml-modules/janestreet/0.16.nix
@@ -569,13 +569,17 @@ with self;
     propagatedBuildInputs = [ base ppx_jane ];
   };
 
-  ocaml-compiler-libs = janePackage {
+  ocaml-compiler-libs = janePackage ({
     pname = "ocaml-compiler-libs";
-    version = "0.12.4";
-    hash = "00if2f7j9d8igdkj4rck3p74y17j6b233l91mq02drzrxj199qjv";
     minimalOCamlVersion = "4.04.1";
     meta.description = "OCaml compiler libraries repackaged";
-  };
+  } // (if lib.versionAtLeast ocaml.version "5.2" then {
+    version = "0.17.0";
+    hash = "sha256-QaC6BWrpFblra6X1+TrlK+J3vZxLvLJZ2b0427DiQzM=";
+  } else {
+    version = "0.12.4";
+    hash = "00if2f7j9d8igdkj4rck3p74y17j6b233l91mq02drzrxj199qjv";
+  }));
 
   ocaml-embed-file = janePackage {
     pname = "ocaml-embed-file";
diff --git a/pkgs/development/ocaml-modules/menhir/lib.nix b/pkgs/development/ocaml-modules/menhir/lib.nix
index 9deceded4068..a694c7a54c3c 100644
--- a/pkgs/development/ocaml-modules/menhir/lib.nix
+++ b/pkgs/development/ocaml-modules/menhir/lib.nix
@@ -2,14 +2,15 @@
 
 buildDunePackage rec {
   pname = "menhirLib";
-  version = "20230608";
+  version = "20231231";
+  minimalOCamlVersion = "4.03";
 
   src = fetchFromGitLab {
     domain = "gitlab.inria.fr";
     owner = "fpottier";
     repo = "menhir";
     rev = version;
-    sha256 = "sha256-dUPoIUVr3gqvE5bniyQh/b37tNfRsZN8X3e99GFkyLY=";
+    hash = "sha256-veB0ORHp6jdRwCyDDAfc7a7ov8sOeHUmiELdOFf/QYk=";
   };
 
   meta = with lib; {
diff --git a/pkgs/development/ocaml-modules/ocamlformat/generic.nix b/pkgs/development/ocaml-modules/ocamlformat/generic.nix
index ca5c78bca7d9..f8f8c9d99195 100644
--- a/pkgs/development/ocaml-modules/ocamlformat/generic.nix
+++ b/pkgs/development/ocaml-modules/ocamlformat/generic.nix
@@ -1,4 +1,4 @@
-{ lib, fetchurl, version ? "0.26.1", astring, base, camlp-streams, cmdliner_1_0
+{ lib, fetchurl, version ? "0.26.2", astring, base, camlp-streams, cmdliner_1_0
 , cmdliner_1_1, csexp, dune-build-info, either, fix, fpath, menhirLib, menhirSdk
 , ocaml-version, ocp-indent, odoc-parser, result, stdio, uuseg, uutf, ... }:
 
@@ -24,6 +24,7 @@ rec {
       "0.25.1" = "sha256-3I8qMwyjkws2yssmI7s2Dti99uSorNKT29niJBpv0z0=";
       "0.26.0" = "sha256-AxSUq3cM7xCo9qocvrVmDkbDqmwM1FexEP7IWadeh30=";
       "0.26.1" = "sha256-2gBuQn8VuexhL7gI1EZZm9m3w+4lq+s9VVdHpw10xtc=";
+      "0.26.2" = "sha256-Lk9Za/eqNnqET+g7oPawvxSyplF53cCCNj/peT0DdcU=";
     }."${version}";
   };
 
diff --git a/pkgs/development/ocaml-modules/ocamlformat/ocamlformat.nix b/pkgs/development/ocaml-modules/ocamlformat/ocamlformat.nix
index 7b1faaf3e88b..e56b86409685 100644
--- a/pkgs/development/ocaml-modules/ocamlformat/ocamlformat.nix
+++ b/pkgs/development/ocaml-modules/ocamlformat/ocamlformat.nix
@@ -12,7 +12,8 @@
 let inherit (callPackage ./generic.nix args) src version library_deps;
 in
 
-lib.throwIf (lib.versionAtLeast ocaml.version "5.0" && !lib.versionAtLeast version "0.23")
+lib.throwIf (lib.versionAtLeast ocaml.version "5.0" && !lib.versionAtLeast version "0.23"
+          || lib.versionAtLeast ocaml.version "5.2" && !lib.versionAtLeast version "0.26.2")
   "ocamlformat ${version} is not available for OCaml ${ocaml.version}"
 
 buildDunePackage {
diff --git a/pkgs/development/ocaml-modules/odoc-parser/default.nix b/pkgs/development/ocaml-modules/odoc-parser/default.nix
index 90e99427ec09..5d22d2d71238 100644
--- a/pkgs/development/ocaml-modules/odoc-parser/default.nix
+++ b/pkgs/development/ocaml-modules/odoc-parser/default.nix
@@ -1,23 +1,22 @@
-{ lib, fetchurl, buildDunePackage, ocaml, astring, result, camlp-streams, version ? "2.0.0" }:
+{ lib, fetchurl, buildDunePackage, ocaml, astring, result, camlp-streams, version ? "2.4.2" }:
 
 let param = {
+  "2.4.2" = {
+    sha256 = "sha256-Vjz9uybsijDnN6nPKFoG4LuulT9I4lu7D2n3qZwrpAs=";
+  };
   "2.0.0" = {
     sha256 = "sha256-QHkZ+7DrlXYdb8bsZ3dijZSqGQc0O9ymeLGIC6+zOSI=";
-    extraBuildInputs = [ camlp-streams ];
   };
   "1.0.1" = {
     sha256 = "sha256-orvo5CAbYOmAurAeluQfK6CwW6P1C0T3WDfoovuQfSw=";
-    extraBuildInputs = [ camlp-streams ];
   };
   "1.0.0" = {
     sha256 = "sha256-tqoI6nGp662bK+vE2h7aDXE882dObVfRBFnZNChueqE=";
     max_version = "5.0";
-    extraBuildInputs = [];
   };
   "0.9.0" = {
     sha256 = "sha256-3w2tG605v03mvmZsS2O5c71y66O3W+n3JjFxIbXwvXk=";
     max_version = "5.0";
-    extraBuildInputs = [];
   };
 }."${version}"; in
 
@@ -31,11 +30,14 @@ buildDunePackage rec {
   minimalOCamlVersion = "4.02";
 
   src = fetchurl {
-    url = "https://github.com/ocaml-doc/odoc-parser/releases/download/${version}/odoc-parser-${version}.tbz";
+    url = if lib.versionAtLeast version "2.4"
+      then "https://github.com/ocaml/odoc/releases/download/${version}/odoc-${version}.tbz"
+      else "https://github.com/ocaml-doc/odoc-parser/releases/download/${version}/odoc-parser-${version}.tbz";
     inherit (param) sha256;
   };
 
-  propagatedBuildInputs = [ astring result ] ++ param.extraBuildInputs;
+  propagatedBuildInputs = [ astring result ] ++
+    lib.optional (lib.versionAtLeast version "1.0.1") camlp-streams;
 
   meta = {
     description = "Parser for Ocaml documentation comments";
diff --git a/pkgs/development/ocaml-modules/odoc/default.nix b/pkgs/development/ocaml-modules/odoc/default.nix
index 18be9801a9c0..92d605be157a 100644
--- a/pkgs/development/ocaml-modules/odoc/default.nix
+++ b/pkgs/development/ocaml-modules/odoc/default.nix
@@ -1,4 +1,5 @@
 { lib, fetchurl, buildDunePackage, ocaml
+, ocaml-crunch
 , astring, cmdliner, cppo, fpath, result, tyxml
 , markup, yojson, sexplib0, jq
 , odoc-parser, ppx_expect, bash, fmt
@@ -6,14 +7,9 @@
 
 buildDunePackage rec {
   pname = "odoc";
-  version = "2.2.1";
+  inherit (odoc-parser) version src;
 
-  src = fetchurl {
-    url = "https://github.com/ocaml/odoc/releases/download/${version}/odoc-${version}.tbz";
-    sha256 = "sha256-F4blO/CCT+HHx7gdKn2EaEal0RZ3lp5jljYfd6OBaAM=";
-  };
-
-  nativeBuildInputs = [ cppo ];
+  nativeBuildInputs = [ cppo ocaml-crunch ];
   buildInputs = [ astring cmdliner fpath result tyxml odoc-parser fmt ];
 
   nativeCheckInputs = [ bash jq ];
diff --git a/pkgs/development/ocaml-modules/pecu/default.nix b/pkgs/development/ocaml-modules/pecu/default.nix
index 746c75fccc1c..66d9e56c6dc3 100644
--- a/pkgs/development/ocaml-modules/pecu/default.nix
+++ b/pkgs/development/ocaml-modules/pecu/default.nix
@@ -2,15 +2,13 @@
 
 buildDunePackage rec {
   pname = "pecu";
-  version = "0.6";
-
-  duneVersion = "3";
+  version = "0.7";
 
   minimalOCamlVersion = "4.03";
 
   src = fetchurl {
-    url = "https://github.com/mirage/pecu/releases/download/v${version}/pecu-v${version}.tbz";
-    sha256 = "a9d2b7da444c83b20f879f6c3b7fc911d08ac1e6245ad7105437504f9394e5c7";
+    url = "https://github.com/mirage/pecu/releases/download/v${version}/pecu-${version}.tbz";
+    hash = "sha256-rXR3tbFkKNM8MkQAZ2hJU9lO+qQ/qvYghXkYus6f13g=";
   };
 
   # crowbar availability
diff --git a/pkgs/development/ocaml-modules/ppx_import/default.nix b/pkgs/development/ocaml-modules/ppx_import/default.nix
index 8330aead80ea..23454e2dadcc 100644
--- a/pkgs/development/ocaml-modules/ppx_import/default.nix
+++ b/pkgs/development/ocaml-modules/ppx_import/default.nix
@@ -6,18 +6,9 @@
 , ppx_deriving
 , ppx_sexp_conv
 , ppxlib
-, version ? if lib.versionAtLeast ocaml.version "4.11" then "1.10.0" else "1.9.1"
+, version ? if lib.versionAtLeast ocaml.version "4.11" then "1.11.0" else "1.9.1"
 }:
 
-let param = {
-  "1.9.1" = {
-    sha256 = "sha256-0bSY4u44Ds84XPIbcT5Vt4AG/4PkzFKMl9CDGFZyIdI=";
-  };
-  "1.10.0" = {
-    sha256 = "sha256-MA8sf0F7Ch1wJDL8E8470ukKx7KieWyjWJnJQsqBVW8=";
-  };
-}."${version}"; in
-
 lib.throwIfNot (lib.versionAtLeast ppxlib.version "0.24.0")
   "ppx_import is not available with ppxlib-${ppxlib.version}"
 
@@ -26,11 +17,15 @@ buildDunePackage rec {
   inherit version;
 
   minimalOCamlVersion = "4.05";
-  duneVersion = "3";
 
   src = fetchurl {
-    url = "https://github.com/ocaml-ppx/ppx_import/releases/download/${version}/ppx_import-${version}.tbz";
-    inherit (param) sha256;
+    url = let dir = if lib.versionAtLeast version "1.11" then "v${version}" else "${version}"; in
+      "https://github.com/ocaml-ppx/ppx_import/releases/download/${dir}/ppx_import-${version}.tbz";
+
+    hash = {
+      "1.9.1" = "sha256-0bSY4u44Ds84XPIbcT5Vt4AG/4PkzFKMl9CDGFZyIdI=";
+      "1.11.0" = "sha256-Jmfv1IkQoaTkyxoxp9FI0ChNESqCaoDsA7D4ZUbOrBo=";
+    }."${version}";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/ocaml-modules/ppx_tools/default.nix b/pkgs/development/ocaml-modules/ppx_tools/default.nix
index 7a07daf8ddcd..41db9313fe7f 100644
--- a/pkgs/development/ocaml-modules/ppx_tools/default.nix
+++ b/pkgs/development/ocaml-modules/ppx_tools/default.nix
@@ -1,5 +1,9 @@
 { lib, stdenv, fetchFromGitHub, buildDunePackage, ocaml, findlib, cppo }:
 
+if lib.versionAtLeast ocaml.version "5.2"
+then throw "ppx_tools is not available for OCaml ${ocaml.version}"
+else
+
 let param =
   let v6_6 = {
     version = "6.6";
@@ -58,7 +62,6 @@ then
   buildDunePackage {
     inherit pname src meta;
     inherit (param) version buildInputs nativeBuildInputs;
-    duneVersion = "3";
   }
 else
   stdenv.mkDerivation {
diff --git a/pkgs/development/ocaml-modules/unstrctrd/default.nix b/pkgs/development/ocaml-modules/unstrctrd/default.nix
index f9e287e21620..d1ac4ca9acf5 100644
--- a/pkgs/development/ocaml-modules/unstrctrd/default.nix
+++ b/pkgs/development/ocaml-modules/unstrctrd/default.nix
@@ -14,15 +14,13 @@
 
 buildDunePackage rec {
   pname = "unstrctrd";
-  version = "0.3";
+  version = "0.4";
 
   src = fetchzip {
-    url = "https://github.com/dinosaure/unstrctrd/releases/download/v${version}/unstrctrd-v${version}.tbz";
-    sha256 = "0mjm4v7kk75iwwsfnpmxc3bsl8aisz53y7z21sykdp60f4rxnah7";
+    url = "https://github.com/dinosaure/unstrctrd/releases/download/v${version}/unstrctrd-${version}.tbz";
+    hash = "sha256-CGcDqEr+VDTbDYkjxeYB6IFWiTkOTLJJl/Y2bHtv19g=";
   };
 
-  duneVersion = "3";
-
   propagatedBuildInputs = [
     angstrom
     uutf
diff --git a/pkgs/development/ocaml-modules/uring/default.nix b/pkgs/development/ocaml-modules/uring/default.nix
index 1930aa5bbff5..9da63a8cd895 100644
--- a/pkgs/development/ocaml-modules/uring/default.nix
+++ b/pkgs/development/ocaml-modules/uring/default.nix
@@ -11,23 +11,15 @@
 
 buildDunePackage rec {
   pname = "uring";
-  version = "0.8";
+  version = "0.9";
 
   minimalOCamlVersion = "4.12";
 
   src = fetchurl {
     url = "https://github.com/ocaml-multicore/ocaml-${pname}/releases/download/v${version}/${pname}-${version}.tbz";
-    hash = "sha256-4OGst19vqEzuNVxO5xxtzS+mEilEBFoEc7lC3j3sTk4=";
+    hash = "sha256-eXWIxfL9UsKKf4sanBjKfr6Od4fPDctVnkU+wjIXW0M=";
   };
 
-  patches = [
-    (fetchpatch {
-      name = "musl-1.2.5.patch";
-      url = "https://github.com/ocaml-multicore/ocaml-uring/commit/abe340086574c124061434054937d1f19ee6bb71.patch";
-      hash = "sha256-J4ZQAdQZ9fhT3/vAh5FYMyvMllTowe4GyHJy5RGUTv0=";
-    })
-  ];
-
   propagatedBuildInputs = [
     cstruct
     fmt
diff --git a/pkgs/development/octave-modules/ga/default.nix b/pkgs/development/octave-modules/ga/default.nix
index 83d444959423..6c7f8e094602 100644
--- a/pkgs/development/octave-modules/ga/default.nix
+++ b/pkgs/development/octave-modules/ga/default.nix
@@ -5,11 +5,11 @@
 
 buildOctavePackage rec {
   pname = "ga";
-  version = "0.10.3";
+  version = "0.10.4";
 
   src = fetchurl {
     url = "mirror://sourceforge/octave/${pname}-${version}.tar.gz";
-    sha256 = "sha256-cbP7ucua7DdxLL422INxjZxz/x1pHoIq+jkjrtfaabE=";
+    sha256 = "sha256-hsrjh2rZFhP6WA+qaKjiGfJkDtT2nTlXlKr3jAJ5Y44=";
   };
 
   meta = with lib; {
diff --git a/pkgs/development/perl-modules/ImageExifTool/default.nix b/pkgs/development/perl-modules/ImageExifTool/default.nix
index 5ca983f32c05..b46ddbdc3367 100644
--- a/pkgs/development/perl-modules/ImageExifTool/default.nix
+++ b/pkgs/development/perl-modules/ImageExifTool/default.nix
@@ -1,23 +1,25 @@
-{ lib
-, stdenv
-, buildPerlPackage
-, exiftool
-, fetchurl
-, gitUpdater
-, shortenPerlShebang
-, testers
+{
+  buildPerlPackage,
+  exiftool,
+  fetchurl,
+  gitUpdater,
+  lib,
+  shortenPerlShebang,
+  stdenv,
+  testers,
 }:
 
 buildPerlPackage rec {
   pname = "Image-ExifTool";
-  version = "12.82";
+  version = "12.84";
 
   src = fetchurl {
     url = "https://exiftool.org/Image-ExifTool-${version}.tar.gz";
-    hash = "sha256-1MfWz0AR+SaM2Ar7gAfLs38OJhOnP4cRekpe1uSjDD4=";
+    hash = "sha256-sfSnx5bS7vI0KIhBOpB5VYzP6g8oi0rR7mUTxxNWEA0=";
   };
 
   nativeBuildInputs = lib.optional stdenv.isDarwin shortenPerlShebang;
+
   postInstall = lib.optionalString stdenv.isDarwin ''
     shortenPerlShebang $out/bin/exiftool
   '';
@@ -28,9 +30,7 @@ buildPerlPackage rec {
       command = "${lib.getExe exiftool} -ver";
       package = exiftool;
     };
-    updateScript = gitUpdater {
-      url = "https://github.com/exiftool/exiftool.git";
-    };
+    updateScript = gitUpdater { url = "https://github.com/exiftool/exiftool.git"; };
   };
 
   meta = {
diff --git a/pkgs/development/php-packages/amqp/default.nix b/pkgs/development/php-packages/amqp/default.nix
index 4d19fd758997..8891aba7cd9d 100644
--- a/pkgs/development/php-packages/amqp/default.nix
+++ b/pkgs/development/php-packages/amqp/default.nix
@@ -1,8 +1,14 @@
-{ buildPecl, lib, rabbitmq-c, fetchFromGitHub }:
+{
+  buildPecl,
+  lib,
+  rabbitmq-c,
+  fetchFromGitHub,
+}:
 
 let
   version = "2.1.2";
-in buildPecl {
+in
+buildPecl {
   inherit version;
   pname = "amqp";
 
diff --git a/pkgs/development/php-packages/apcu/default.nix b/pkgs/development/php-packages/apcu/default.nix
index 9aec7d660763..f8b8ff1d83b7 100644
--- a/pkgs/development/php-packages/apcu/default.nix
+++ b/pkgs/development/php-packages/apcu/default.nix
@@ -1,8 +1,16 @@
-{ buildPecl, lib, pcre2, fetchFromGitHub, php, fetchpatch }:
+{
+  buildPecl,
+  lib,
+  pcre2,
+  fetchFromGitHub,
+  php,
+  fetchpatch,
+}:
 
 let
   version = "5.1.23";
-in buildPecl {
+in
+buildPecl {
   inherit version;
   pname = "apcu";
 
@@ -16,9 +24,15 @@ in buildPecl {
   buildInputs = [ pcre2 ];
   doCheck = true;
   checkTarget = "test";
-  checkFlagsArray = [ "REPORT_EXIT_STATUS=1" "NO_INTERACTION=1" ];
+  checkFlagsArray = [
+    "REPORT_EXIT_STATUS=1"
+    "NO_INTERACTION=1"
+  ];
   makeFlags = [ "phpincludedir=$(dev)/include" ];
-  outputs = [ "out" "dev" ];
+  outputs = [
+    "out"
+    "dev"
+  ];
 
   meta = with lib; {
     changelog = "https://github.com/krakjoe/apcu/releases/tag/v${version}";
diff --git a/pkgs/development/php-packages/ast/default.nix b/pkgs/development/php-packages/ast/default.nix
index d04ba25b7f11..662588be521c 100644
--- a/pkgs/development/php-packages/ast/default.nix
+++ b/pkgs/development/php-packages/ast/default.nix
@@ -1,8 +1,13 @@
-{ buildPecl, lib, fetchFromGitHub }:
+{
+  buildPecl,
+  lib,
+  fetchFromGitHub,
+}:
 
 let
   version = "1.1.1";
-in buildPecl {
+in
+buildPecl {
   inherit version;
   pname = "ast";
 
diff --git a/pkgs/development/php-packages/box/default.nix b/pkgs/development/php-packages/box/default.nix
index f9b77995e56e..1407064044dc 100644
--- a/pkgs/development/php-packages/box/default.nix
+++ b/pkgs/development/php-packages/box/default.nix
@@ -1,17 +1,21 @@
-{ lib, php82, fetchFromGitHub }:
+{
+  lib,
+  php82,
+  fetchFromGitHub,
+}:
 
 php82.buildComposerProject (finalAttrs: {
   pname = "box";
-  version = "4.6.1";
+  version = "4.6.2";
 
   src = fetchFromGitHub {
     owner = "box-project";
     repo = "box";
     rev = finalAttrs.version;
-    hash = "sha256-58L0eWIuUleb90ICBrmeHEQDVYySX0TdSaJBnBtmBXc=";
+    hash = "sha256-gYIAP9pTjahNkpNNXx0c8sQm+9Kaq6/IAo/xI5bNy7Y=";
   };
 
-  vendorHash = "sha256-9kTqU+1i6ICLOlCZe+JCyKn8VN/67Uk9vmn8ng8+HdI=";
+  vendorHash = "sha256-HCbjW4HdyQNWDEHXj9U1t3S3EKcrPV1z/9I1ClFsMsc=";
 
   meta = {
     changelog = "https://github.com/box-project/box/releases/tag/${finalAttrs.version}";
diff --git a/pkgs/development/php-packages/castor/default.nix b/pkgs/development/php-packages/castor/default.nix
index 1b6b3f6be9d4..c191d7978cd7 100644
--- a/pkgs/development/php-packages/castor/default.nix
+++ b/pkgs/development/php-packages/castor/default.nix
@@ -1,10 +1,11 @@
-{ lib
-, fetchFromGitHub
-, fetchpatch
-, installShellFiles
-, php
-, nix-update-script
-, testers
+{
+  lib,
+  fetchFromGitHub,
+  fetchpatch,
+  installShellFiles,
+  php,
+  nix-update-script,
+  testers,
 }:
 
 php.buildComposerProject (finalAttrs: {
diff --git a/pkgs/development/php-packages/composer/default.nix b/pkgs/development/php-packages/composer/default.nix
index 28606fdfa2e2..d98c3155bb91 100644
--- a/pkgs/development/php-packages/composer/default.nix
+++ b/pkgs/development/php-packages/composer/default.nix
@@ -1,14 +1,15 @@
-{ lib
-, callPackage
-, fetchFromGitHub
-, php
-, unzip
-, _7zz
-, xz
-, git
-, curl
-, cacert
-, makeBinaryWrapper
+{
+  lib,
+  callPackage,
+  fetchFromGitHub,
+  php,
+  unzip,
+  _7zz,
+  xz,
+  git,
+  curl,
+  cacert,
+  makeBinaryWrapper,
 }:
 
 php.buildComposerProject (finalAttrs: {
@@ -16,7 +17,7 @@ php.buildComposerProject (finalAttrs: {
   # use together with the version from this package to keep the
   # bootstrap phar file up-to-date together with the end user composer
   # package.
-  passthru.pharHash = "sha256-/MAv8ES1oE++z/AVjLYEHCXo94rElAmHNv7NK7TzgeQ=";
+  passthru.pharHash = "sha256-KdyaGe8zU12wYbMRgLKoM6fPjSz0FFszovg1BId7ugg=";
 
   composer = callPackage ../../../build-support/php/pkgs/composer-phar.nix {
     inherit (finalAttrs) version;
@@ -24,20 +25,29 @@ php.buildComposerProject (finalAttrs: {
   };
 
   pname = "composer";
-  version = "2.7.3";
+  version = "2.7.6";
 
   src = fetchFromGitHub {
     owner = "composer";
     repo = "composer";
     rev = finalAttrs.version;
-    hash = "sha256-4cQ/p6lC8qgba/GSKuP2rFc0mZrUc+HuwvBMXnVERoU=";
+    hash = "sha256-LZwg3PR3zl07Nb6MS8oKkRfjLgqtT/c4sfUOzWE4S+U=";
   };
 
   nativeBuildInputs = [ makeBinaryWrapper ];
 
   postInstall = ''
     wrapProgram $out/bin/composer \
-      --prefix PATH : ${lib.makeBinPath [ _7zz cacert curl git unzip xz ]}
+      --prefix PATH : ${
+        lib.makeBinPath [
+          _7zz
+          cacert
+          curl
+          git
+          unzip
+          xz
+        ]
+      }
   '';
 
   vendorHash = "sha256-dNNV9fTyGyRoGeDV/vBjn0aMgkaUMsrKQv5AOoiYokQ=";
diff --git a/pkgs/development/php-packages/couchbase/default.nix b/pkgs/development/php-packages/couchbase/default.nix
index 2ff867348db5..e638d4c470ab 100644
--- a/pkgs/development/php-packages/couchbase/default.nix
+++ b/pkgs/development/php-packages/couchbase/default.nix
@@ -1,4 +1,13 @@
-{ lib, buildPecl, fetchFromGitHub, writeText, libcouchbase, zlib, php, substituteAll }:
+{
+  lib,
+  buildPecl,
+  fetchFromGitHub,
+  writeText,
+  libcouchbase,
+  zlib,
+  php,
+  substituteAll,
+}:
 let
   pname = "couchbase";
   version = "3.2.2";
@@ -15,7 +24,10 @@ buildPecl {
 
   configureFlags = [ "--with-couchbase" ];
 
-  buildInputs = [ libcouchbase zlib ];
+  buildInputs = [
+    libcouchbase
+    zlib
+  ];
 
   patches = [
     (substituteAll {
diff --git a/pkgs/development/php-packages/datadog_trace/default.nix b/pkgs/development/php-packages/datadog_trace/default.nix
index 2b8b7ea4fb7f..15b16582435d 100644
--- a/pkgs/development/php-packages/datadog_trace/default.nix
+++ b/pkgs/development/php-packages/datadog_trace/default.nix
@@ -1,14 +1,15 @@
-{ lib
-, stdenv
-, buildPecl
-, cargo
-, rustc
-, fetchFromGitHub
-, rustPlatform
-, curl
-, pcre2
-, libiconv
-, darwin
+{
+  lib,
+  stdenv,
+  buildPecl,
+  cargo,
+  rustc,
+  fetchFromGitHub,
+  rustPlatform,
+  curl,
+  pcre2,
+  libiconv,
+  darwin,
 }:
 
 buildPecl rec {
@@ -32,31 +33,39 @@ buildPecl rec {
 
   env.NIX_CFLAGS_COMPILE = "-O2";
 
-  nativeBuildInputs = [
-    cargo
-    rustc
-  ] ++ lib.optionals stdenv.isLinux [
-    rustPlatform.bindgenHook
-    rustPlatform.cargoSetupHook
-  ] ++ lib.optionals stdenv.isDarwin [
-    darwin.apple_sdk_11_0.rustPlatform.bindgenHook
-    darwin.apple_sdk_11_0.rustPlatform.cargoSetupHook
-  ];
+  nativeBuildInputs =
+    [
+      cargo
+      rustc
+    ]
+    ++ lib.optionals stdenv.isLinux [
+      rustPlatform.bindgenHook
+      rustPlatform.cargoSetupHook
+    ]
+    ++ lib.optionals stdenv.isDarwin [
+      darwin.apple_sdk_11_0.rustPlatform.bindgenHook
+      darwin.apple_sdk_11_0.rustPlatform.cargoSetupHook
+    ];
 
-  buildInputs = [
-    curl
-    pcre2
-  ] ++ lib.optionals stdenv.isDarwin [
-    darwin.apple_sdk.frameworks.CoreFoundation
-    darwin.apple_sdk.frameworks.Security
-    libiconv
-  ];
+  buildInputs =
+    [
+      curl
+      pcre2
+    ]
+    ++ lib.optionals stdenv.isDarwin [
+      darwin.apple_sdk.frameworks.CoreFoundation
+      darwin.apple_sdk.frameworks.Security
+      libiconv
+    ];
 
   meta = {
     changelog = "https://github.com/DataDog/dd-trace-php/blob/${src.rev}/CHANGELOG.md";
     description = "Datadog Tracing PHP Client";
     homepage = "https://github.com/DataDog/dd-trace-php";
-    license = with lib.licenses; [ asl20 bsd3 ];
+    license = with lib.licenses; [
+      asl20
+      bsd3
+    ];
     maintainers = lib.teams.php.members;
   };
 }
diff --git a/pkgs/development/php-packages/deployer/default.nix b/pkgs/development/php-packages/deployer/default.nix
index 44a2e97f7ab7..6575338e4d64 100644
--- a/pkgs/development/php-packages/deployer/default.nix
+++ b/pkgs/development/php-packages/deployer/default.nix
@@ -1,22 +1,24 @@
-{ lib
-, fetchFromGitHub
-, php
+{
+  lib,
+  fetchFromGitHub,
+  php,
 }:
 
 php.buildComposerProject (finalAttrs: {
   pname = "deployer";
-  version = "7.3.3";
+  version = "7.4.0";
 
   src = fetchFromGitHub {
     owner = "deployphp";
     repo = "deployer";
     rev = "v${finalAttrs.version}^";
-    hash = "sha256-zvK7NwIACAhWN/7D8lVY1Bv8x6xKAp/L826SovQhDYg=";
+    hash = "sha256-nSrW4o0Tb8H056AAjjMzbsAVvWY2z1pdWmPFZDpDr1k=";
   };
 
   vendorHash = "sha256-BDq2uryNWC31AEAEZJL9zGaAPbhXZ6hmfpsnr4wlixE=";
 
   meta = {
+    changelog = "https://github.com/deployphp/deployer/releases/tag/v${finalAttrs.version}";
     description = "The PHP deployment tool with support for popular frameworks out of the box";
     homepage = "https://deployer.org/";
     license = lib.licenses.mit;
diff --git a/pkgs/development/php-packages/ds/default.nix b/pkgs/development/php-packages/ds/default.nix
index 7e37c8a2d3e0..6d44b0aaabcb 100644
--- a/pkgs/development/php-packages/ds/default.nix
+++ b/pkgs/development/php-packages/ds/default.nix
@@ -1,8 +1,15 @@
-{ buildPecl, lib, pcre2, php, fetchFromGitHub }:
+{
+  buildPecl,
+  lib,
+  pcre2,
+  php,
+  fetchFromGitHub,
+}:
 
 let
   version = "1.5.0";
-in buildPecl {
+in
+buildPecl {
   inherit version;
   pname = "ds";
 
diff --git a/pkgs/development/php-packages/event/default.nix b/pkgs/development/php-packages/event/default.nix
index a497d934627a..46107a446c4a 100644
--- a/pkgs/development/php-packages/event/default.nix
+++ b/pkgs/development/php-packages/event/default.nix
@@ -1,4 +1,11 @@
-{ buildPecl, lib, php, pkg-config, openssl, libevent }:
+{
+  buildPecl,
+  lib,
+  php,
+  pkg-config,
+  openssl,
+  libevent,
+}:
 buildPecl {
   pname = "event";
 
@@ -19,7 +26,10 @@ buildPecl {
   '';
 
   nativeBuildInputs = [ pkg-config ];
-  buildInputs = [ openssl libevent ];
+  buildInputs = [
+    openssl
+    libevent
+  ];
   internalDeps = [ php.extensions.sockets ];
 
   meta = with lib; {
diff --git a/pkgs/development/php-packages/gnupg/default.nix b/pkgs/development/php-packages/gnupg/default.nix
index 1341ca2d1696..7e646e151cf2 100644
--- a/pkgs/development/php-packages/gnupg/default.nix
+++ b/pkgs/development/php-packages/gnupg/default.nix
@@ -1,8 +1,17 @@
-{ buildPecl, lib, gpgme, file, gnupg, php, fetchFromGitHub }:
+{
+  buildPecl,
+  lib,
+  gpgme,
+  file,
+  gnupg,
+  php,
+  fetchFromGitHub,
+}:
 
 let
   version = "1.5.1";
-in buildPecl {
+in
+buildPecl {
   inherit version;
   pname = "gnupg";
 
diff --git a/pkgs/development/php-packages/grpc/default.nix b/pkgs/development/php-packages/grpc/default.nix
index e70432f37ee8..5dcd2a4a33ef 100644
--- a/pkgs/development/php-packages/grpc/default.nix
+++ b/pkgs/development/php-packages/grpc/default.nix
@@ -1,7 +1,8 @@
-{ buildPecl
-, pkg-config
-, lib
-, grpc
+{
+  buildPecl,
+  pkg-config,
+  lib,
+  grpc,
 }:
 
 buildPecl {
diff --git a/pkgs/development/php-packages/grumphp/default.nix b/pkgs/development/php-packages/grumphp/default.nix
index 4d1b2438950c..5a585bdca7d7 100644
--- a/pkgs/development/php-packages/grumphp/default.nix
+++ b/pkgs/development/php-packages/grumphp/default.nix
@@ -1,6 +1,7 @@
-{ fetchFromGitHub
-, lib
-, php
+{
+  fetchFromGitHub,
+  lib,
+  php,
 }:
 
 php.buildComposerProject (finalAttrs: {
diff --git a/pkgs/development/php-packages/igbinary/default.nix b/pkgs/development/php-packages/igbinary/default.nix
index b2f8c270c4e2..6b8d426c379f 100644
--- a/pkgs/development/php-packages/igbinary/default.nix
+++ b/pkgs/development/php-packages/igbinary/default.nix
@@ -7,7 +7,10 @@ buildPecl {
 
   configureFlags = [ "--enable-igbinary" ];
   makeFlags = [ "phpincludedir=$(dev)/include" ];
-  outputs = [ "out" "dev" ];
+  outputs = [
+    "out"
+    "dev"
+  ];
 
   meta = {
     description = "Binary serialization for PHP";
diff --git a/pkgs/development/php-packages/imagick/default.nix b/pkgs/development/php-packages/imagick/default.nix
index 5150833945b0..d8570ee24ba8 100644
--- a/pkgs/development/php-packages/imagick/default.nix
+++ b/pkgs/development/php-packages/imagick/default.nix
@@ -1,4 +1,10 @@
-{ buildPecl, lib, imagemagick, pkg-config, pcre2 }:
+{
+  buildPecl,
+  lib,
+  imagemagick,
+  pkg-config,
+  pcre2,
+}:
 
 buildPecl {
   pname = "imagick";
diff --git a/pkgs/development/php-packages/inotify/default.nix b/pkgs/development/php-packages/inotify/default.nix
index 4296df1d81ba..b68af7ec6e80 100644
--- a/pkgs/development/php-packages/inotify/default.nix
+++ b/pkgs/development/php-packages/inotify/default.nix
@@ -1,6 +1,4 @@
-{ buildPecl
-, lib
-}:
+{ buildPecl, lib }:
 
 buildPecl {
   pname = "inotify";
diff --git a/pkgs/development/php-packages/ioncube-loader/default.nix b/pkgs/development/php-packages/ioncube-loader/default.nix
index 290abdffbedd..4c691a913ddd 100644
--- a/pkgs/development/php-packages/ioncube-loader/default.nix
+++ b/pkgs/development/php-packages/ioncube-loader/default.nix
@@ -1,7 +1,8 @@
-{ stdenv
-, lib
-, fetchzip
-, php
+{
+  stdenv,
+  lib,
+  fetchzip,
+  php,
 }:
 
 let
@@ -42,7 +43,9 @@ stdenv.mkDerivation {
 
   installPhase = ''
     mkdir -p $out/lib/php/extensions
-    cp $src/ioncube_loader_${variant.${stdenv.hostPlatform.system}.prefix}_${phpVersion}.so $out/lib/php/extensions/ioncube-loader.so
+    cp $src/ioncube_loader_${
+      variant.${stdenv.hostPlatform.system}.prefix
+    }_${phpVersion}.so $out/lib/php/extensions/ioncube-loader.so
   '';
 
   meta = with lib; {
@@ -52,6 +55,11 @@ stdenv.mkDerivation {
     sourceProvenance = [ sourceTypes.binaryNativeCode ];
     license = licenses.unfree;
     maintainers = with maintainers; [ neverbehave ];
-    platforms = [ "x86_64-linux" "aarch64-linux" "x86_64-darwin" "aarch64-darwin" ];
+    platforms = [
+      "x86_64-linux"
+      "aarch64-linux"
+      "x86_64-darwin"
+      "aarch64-darwin"
+    ];
   };
 }
diff --git a/pkgs/development/php-packages/mailparse/default.nix b/pkgs/development/php-packages/mailparse/default.nix
index c6d0975d7bcf..e0dba768aa80 100644
--- a/pkgs/development/php-packages/mailparse/default.nix
+++ b/pkgs/development/php-packages/mailparse/default.nix
@@ -1,4 +1,8 @@
-{ buildPecl, lib, php }:
+{
+  buildPecl,
+  lib,
+  php,
+}:
 
 buildPecl {
   pname = "mailparse";
diff --git a/pkgs/development/php-packages/maxminddb/default.nix b/pkgs/development/php-packages/maxminddb/default.nix
index 80f54c567683..33c9fba690d6 100644
--- a/pkgs/development/php-packages/maxminddb/default.nix
+++ b/pkgs/development/php-packages/maxminddb/default.nix
@@ -1,4 +1,9 @@
-{ buildPecl, lib, fetchFromGitHub, libmaxminddb }:
+{
+  buildPecl,
+  lib,
+  fetchFromGitHub,
+  libmaxminddb,
+}:
 let
   pname = "maxminddb";
   version = "1.11.1";
diff --git a/pkgs/development/php-packages/memcache/default.nix b/pkgs/development/php-packages/memcache/default.nix
index 6cb205c61ff6..30180ed16723 100644
--- a/pkgs/development/php-packages/memcache/default.nix
+++ b/pkgs/development/php-packages/memcache/default.nix
@@ -1,4 +1,11 @@
-{ buildPecl, lib, fetchFromGitHub, php, zlib, pkg-config }:
+{
+  buildPecl,
+  lib,
+  fetchFromGitHub,
+  php,
+  zlib,
+  pkg-config,
+}:
 
 buildPecl rec {
   pname = "memcache";
@@ -11,13 +18,9 @@ buildPecl rec {
     hash = "sha256-77GvQ59XUpIZmdYZP6IhtjdkYwXKuNBSG+LBScz2BtI=";
   };
 
-  internalDeps = [
-    php.extensions.session
-  ];
+  internalDeps = [ php.extensions.session ];
 
-  configureFlags = [
-    "--with-zlib-dir=${zlib.dev}"
-  ];
+  configureFlags = [ "--with-zlib-dir=${zlib.dev}" ];
 
   nativeBuildInputs = [ pkg-config ];
   buildInputs = [ zlib ];
diff --git a/pkgs/development/php-packages/memcached/default.nix b/pkgs/development/php-packages/memcached/default.nix
index 9724904d52b3..bbf4f9856f3d 100644
--- a/pkgs/development/php-packages/memcached/default.nix
+++ b/pkgs/development/php-packages/memcached/default.nix
@@ -1,4 +1,13 @@
-{ buildPecl, lib, fetchFromGitHub, php, cyrus_sasl, zlib, pkg-config, libmemcached }:
+{
+  buildPecl,
+  lib,
+  fetchFromGitHub,
+  php,
+  cyrus_sasl,
+  zlib,
+  pkg-config,
+  libmemcached,
+}:
 
 buildPecl rec {
   pname = "memcached";
@@ -11,9 +20,7 @@ buildPecl rec {
     sha256 = "sha256-g9IzGSZUxLlOE32o9ZJOa3erb5Qs1ntR8nzS3kRd/EU=";
   };
 
-  internalDeps = [
-    php.extensions.session
-  ];
+  internalDeps = [ php.extensions.session ];
 
   configureFlags = [
     "--with-zlib-dir=${zlib.dev}"
@@ -21,7 +28,10 @@ buildPecl rec {
   ];
 
   nativeBuildInputs = [ pkg-config ];
-  buildInputs = [ cyrus_sasl zlib ];
+  buildInputs = [
+    cyrus_sasl
+    zlib
+  ];
 
   meta = with lib; {
     description = "PHP extension for interfacing with memcached via libmemcached library";
diff --git a/pkgs/development/php-packages/meminfo/default.nix b/pkgs/development/php-packages/meminfo/default.nix
index d170243be20c..d7cca10ba328 100644
--- a/pkgs/development/php-packages/meminfo/default.nix
+++ b/pkgs/development/php-packages/meminfo/default.nix
@@ -1,4 +1,8 @@
-{ buildPecl, lib, fetchFromGitHub }:
+{
+  buildPecl,
+  lib,
+  fetchFromGitHub,
+}:
 
 buildPecl rec {
   version = "unstable-2022-03-25";
diff --git a/pkgs/development/php-packages/memprof/default.nix b/pkgs/development/php-packages/memprof/default.nix
index 04ef8e6be590..f5839e9663e9 100644
--- a/pkgs/development/php-packages/memprof/default.nix
+++ b/pkgs/development/php-packages/memprof/default.nix
@@ -1,12 +1,14 @@
-{ buildPecl
-, lib
-, fetchFromGitHub
-, judy
+{
+  buildPecl,
+  lib,
+  fetchFromGitHub,
+  judy,
 }:
 
 let
   version = "3.0.2";
-in buildPecl {
+in
+buildPecl {
   inherit version;
   pname = "memprof";
 
@@ -17,9 +19,7 @@ in buildPecl {
     hash = "sha256-K8YcvCobErBkaWFTkVGLXXguQPOLIgQuRGWJF+HAIRA=";
   };
 
-  configureFlags = [
-    "--with-judy-dir=${judy}"
-  ];
+  configureFlags = [ "--with-judy-dir=${judy}" ];
 
   doCheck = true;
 
diff --git a/pkgs/development/php-packages/mongodb/default.nix b/pkgs/development/php-packages/mongodb/default.nix
index 02771c90167e..8a1b224627d0 100644
--- a/pkgs/development/php-packages/mongodb/default.nix
+++ b/pkgs/development/php-packages/mongodb/default.nix
@@ -1,43 +1,46 @@
-{ stdenv
-, buildPecl
-, fetchFromGitHub
-, lib
-, libiconv
-, pcre2
-, pkg-config
-, cyrus_sasl
-, icu64
-, openssl
-, snappy
-, zlib
-, darwin
+{
+  stdenv,
+  buildPecl,
+  fetchFromGitHub,
+  lib,
+  libiconv,
+  pcre2,
+  pkg-config,
+  cyrus_sasl,
+  icu64,
+  openssl,
+  snappy,
+  zlib,
+  darwin,
 }:
 
 buildPecl rec {
   pname = "mongodb";
-  version = "1.18.1";
+  version = "1.19.0";
 
   src = fetchFromGitHub {
     owner = "mongodb";
     repo = "mongo-php-driver";
     rev = version;
-    hash = "sha256-GstDJShuwzXZqlzhLWMEkvrNgCdmORAkGncpmPe879Q=";
+    hash = "sha256-hog6bOKAhLwZMjrUD5yOJ607B1MLYaZJjq6CXIYPlH4=";
     fetchSubmodules = true;
   };
 
   nativeBuildInputs = [ pkg-config ];
-  buildInputs = [
-    cyrus_sasl
-    icu64
-    openssl
-    snappy
-    zlib
-    pcre2
-  ] ++ lib.optionals stdenv.isDarwin [
-    darwin.apple_sdk_11_0.frameworks.Security
-    darwin.apple_sdk_11_0.Libsystem
-    libiconv
-  ];
+  buildInputs =
+    [
+      cyrus_sasl
+      icu64
+      openssl
+      snappy
+      zlib
+      pcre2
+    ]
+    ++ lib.optionals stdenv.isDarwin [
+      darwin.apple_sdk_11_0.frameworks.Security
+      darwin.apple_sdk_11_0.Libsystem
+      libiconv
+    ];
 
   meta = {
     description = "The Official MongoDB PHP driver";
diff --git a/pkgs/development/php-packages/oci8/default.nix b/pkgs/development/php-packages/oci8/default.nix
index 495d511f3aae..bd0fe21e2401 100644
--- a/pkgs/development/php-packages/oci8/default.nix
+++ b/pkgs/development/php-packages/oci8/default.nix
@@ -1,16 +1,27 @@
-{ buildPecl, lib, oracle-instantclient, php }:
+{
+  buildPecl,
+  lib,
+  oracle-instantclient,
+  php,
+}:
 
 let
-  versionData = if (lib.versionOlder php.version "8.1") then {
-    version = "3.0.1";
-    sha256 = "108ds92620dih5768z19hi0jxfa7wfg5hdvyyvpapir87c0ap914";
-  } else if (lib.versionOlder php.version "8.2") then {
-    version = "3.2.1";
-    sha256 = "sha256-zyF703DzRZDBhlNFFt/dknmZ7layqhgjG1/ZDN+PEsg=";
-  } else {
-    version = "3.3.0";
-    sha256 = "sha256-0y5VnRKspJYE6xWeBcX2OG2pJTNbB+27GMywDv4gzwQ=";
-  };
+  versionData =
+    if (lib.versionOlder php.version "8.1") then
+      {
+        version = "3.0.1";
+        sha256 = "108ds92620dih5768z19hi0jxfa7wfg5hdvyyvpapir87c0ap914";
+      }
+    else if (lib.versionOlder php.version "8.2") then
+      {
+        version = "3.2.1";
+        sha256 = "sha256-zyF703DzRZDBhlNFFt/dknmZ7layqhgjG1/ZDN+PEsg=";
+      }
+    else
+      {
+        version = "3.3.0";
+        sha256 = "sha256-0y5VnRKspJYE6xWeBcX2OG2pJTNbB+27GMywDv4gzwQ=";
+      };
 in
 buildPecl {
   pname = "oci8";
diff --git a/pkgs/development/php-packages/openswoole/default.nix b/pkgs/development/php-packages/openswoole/default.nix
index dd0dd17b244d..83c59fb3212c 100644
--- a/pkgs/development/php-packages/openswoole/default.nix
+++ b/pkgs/development/php-packages/openswoole/default.nix
@@ -1,8 +1,16 @@
-{ lib, stdenv, buildPecl, valgrind, pcre2, fetchFromGitHub }:
+{
+  lib,
+  stdenv,
+  buildPecl,
+  valgrind,
+  pcre2,
+  fetchFromGitHub,
+}:
 
 let
   version = "22.1.2";
-in buildPecl {
+in
+buildPecl {
   inherit version;
   pname = "openswoole";
 
diff --git a/pkgs/development/php-packages/opentelemetry/default.nix b/pkgs/development/php-packages/opentelemetry/default.nix
index 6770ecb432a6..044e18060708 100644
--- a/pkgs/development/php-packages/opentelemetry/default.nix
+++ b/pkgs/development/php-packages/opentelemetry/default.nix
@@ -1,8 +1,13 @@
-{ lib, buildPecl, fetchFromGitHub }:
+{
+  lib,
+  buildPecl,
+  fetchFromGitHub,
+}:
 
 let
-  version = "1.0.2";
-in buildPecl rec {
+  version = "1.0.3";
+in
+buildPecl rec {
   inherit version;
   pname = "opentelemetry";
 
@@ -10,7 +15,7 @@ in buildPecl rec {
     owner = "open-telemetry";
     repo = "opentelemetry-php-instrumentation";
     rev = version;
-    hash = "sha256-w6Gkjh9+I6KlQyztv4o1XZ6nJ+Yn4wXXN6nma8/dLTU=";
+    hash = "sha256-KqLbKnAHxXbldNYVN7eMQ7NdZmPecu0UKHQdlUm7Ur0=";
   };
 
   sourceRoot = "${src.name}/ext";
diff --git a/pkgs/development/php-packages/pcov/default.nix b/pkgs/development/php-packages/pcov/default.nix
index a25479893dbf..ccce782c168a 100644
--- a/pkgs/development/php-packages/pcov/default.nix
+++ b/pkgs/development/php-packages/pcov/default.nix
@@ -1,8 +1,15 @@
-{ buildPecl, lib, php, pcre2, fetchFromGitHub }:
+{
+  buildPecl,
+  lib,
+  php,
+  pcre2,
+  fetchFromGitHub,
+}:
 
 let
   version = "1.0.11";
-in buildPecl {
+in
+buildPecl {
   inherit version;
   pname = "pcov";
 
diff --git a/pkgs/development/php-packages/pdlib/default.nix b/pkgs/development/php-packages/pdlib/default.nix
index 19312ef985c0..b6b86b13393b 100644
--- a/pkgs/development/php-packages/pdlib/default.nix
+++ b/pkgs/development/php-packages/pdlib/default.nix
@@ -1,4 +1,10 @@
-{ buildPecl, fetchFromGitHub, lib, pkg-config, dlib }:
+{
+  buildPecl,
+  fetchFromGitHub,
+  lib,
+  pkg-config,
+  dlib,
+}:
 let
   pname = "pdlib";
   version = "1.1.0";
diff --git a/pkgs/development/php-packages/pdo_sqlsrv/default.nix b/pkgs/development/php-packages/pdo_sqlsrv/default.nix
index c8411a1e8ee0..7da343ac5564 100644
--- a/pkgs/development/php-packages/pdo_sqlsrv/default.nix
+++ b/pkgs/development/php-packages/pdo_sqlsrv/default.nix
@@ -1,4 +1,11 @@
-{ stdenv, buildPecl, lib, libiconv, unixODBC, php }:
+{
+  stdenv,
+  buildPecl,
+  lib,
+  libiconv,
+  unixODBC,
+  php,
+}:
 
 buildPecl {
   pname = "pdo_sqlsrv";
diff --git a/pkgs/development/php-packages/phalcon/default.nix b/pkgs/development/php-packages/phalcon/default.nix
index 07854fdf3b11..a8d19fa96b0a 100644
--- a/pkgs/development/php-packages/phalcon/default.nix
+++ b/pkgs/development/php-packages/phalcon/default.nix
@@ -1,4 +1,11 @@
-{ buildPecl, lib, pcre2, fetchFromGitHub, php, pkg-config }:
+{
+  buildPecl,
+  lib,
+  pcre2,
+  fetchFromGitHub,
+  php,
+  pkg-config,
+}:
 
 buildPecl rec {
   pname = "phalcon";
@@ -11,7 +18,10 @@ buildPecl rec {
     hash = "sha256-AgyV9pxyXcXuhrRgozN2p67u8xZMepbWrzYaBZMFn6k=";
   };
 
-  internalDeps = [ php.extensions.session php.extensions.pdo ];
+  internalDeps = [
+    php.extensions.session
+    php.extensions.pdo
+  ];
 
   nativeBuildInputs = [ pkg-config ];
   buildInputs = [ pcre2 ];
diff --git a/pkgs/development/php-packages/phan/default.nix b/pkgs/development/php-packages/phan/default.nix
index e390389eef22..af95847c37bf 100644
--- a/pkgs/development/php-packages/phan/default.nix
+++ b/pkgs/development/php-packages/phan/default.nix
@@ -1,30 +1,32 @@
-{ lib
-, fetchFromGitHub
-, php
+{
+  lib,
+  fetchFromGitHub,
+  php,
 }:
 
-(php.withExtensions({ enabled, all }: enabled ++ (with all; [ ast ]))).buildComposerProject (finalAttrs: {
-  pname = "phan";
-  version = "5.4.3";
+(php.withExtensions ({ enabled, all }: enabled ++ (with all; [ ast ]))).buildComposerProject
+  (finalAttrs: {
+    pname = "phan";
+    version = "5.4.3";
 
-  src = fetchFromGitHub {
-    owner = "phan";
-    repo = "phan";
-    rev = finalAttrs.version;
-    hash = "sha256-O0dtnDsz6X99B99VbRQf3Wr/xJfsJqd+2l5Z5iWxHyU=";
-  };
+    src = fetchFromGitHub {
+      owner = "phan";
+      repo = "phan";
+      rev = finalAttrs.version;
+      hash = "sha256-O0dtnDsz6X99B99VbRQf3Wr/xJfsJqd+2l5Z5iWxHyU=";
+    };
 
-  vendorHash = "sha256-yE85MBseJa0VGV5EbjT0te4QT3697YvtumGkMMfZtxI=";
+    vendorHash = "sha256-yE85MBseJa0VGV5EbjT0te4QT3697YvtumGkMMfZtxI=";
 
-  meta = {
-    description = "Static analyzer for PHP";
-    homepage = "https://github.com/phan/phan";
-    license = lib.licenses.mit;
-    longDescription = ''
-      Phan is a static analyzer for PHP. Phan prefers to avoid false-positives
-      and attempts to prove incorrectness rather than correctness.
-    '';
-    mainProgram = "phan";
-    maintainers = with lib.maintainers; [ apeschar ] ++ lib.teams.php.members;
-  };
-})
+    meta = {
+      description = "Static analyzer for PHP";
+      homepage = "https://github.com/phan/phan";
+      license = lib.licenses.mit;
+      longDescription = ''
+        Phan is a static analyzer for PHP. Phan prefers to avoid false-positives
+        and attempts to prove incorrectness rather than correctness.
+      '';
+      mainProgram = "phan";
+      maintainers = with lib.maintainers; [ apeschar ] ++ lib.teams.php.members;
+    };
+  })
diff --git a/pkgs/development/php-packages/phing/default.nix b/pkgs/development/php-packages/phing/default.nix
index 9c0a155ff726..dfda99220f9b 100644
--- a/pkgs/development/php-packages/phing/default.nix
+++ b/pkgs/development/php-packages/phing/default.nix
@@ -1,29 +1,31 @@
-{ lib
-, fetchFromGitHub
-, php
+{
+  lib,
+  fetchFromGitHub,
+  php,
 }:
 
-(php.withExtensions({ enabled, all }: enabled ++ (with all; [ xsl ]))).buildComposerProject (finalAttrs: {
-  pname = "phing";
-  version = "3.0.0-rc6";
+(php.withExtensions ({ enabled, all }: enabled ++ (with all; [ xsl ]))).buildComposerProject
+  (finalAttrs: {
+    pname = "phing";
+    version = "3.0.0-rc6";
 
-  src = fetchFromGitHub {
-    owner = "phingofficial";
-    repo = "phing";
-    rev = finalAttrs.version;
-    hash = "sha256-pOt6uQaz69WuHKYZhq6FFbjyHGrEc+Bf0Sw9uCS3Nrc=";
-  };
+    src = fetchFromGitHub {
+      owner = "phingofficial";
+      repo = "phing";
+      rev = finalAttrs.version;
+      hash = "sha256-pOt6uQaz69WuHKYZhq6FFbjyHGrEc+Bf0Sw9uCS3Nrc=";
+    };
 
-  # TODO: Open a PR against https://github.com/phingofficial/phing
-  # Their `composer.lock` is out of date therefore, we need to provide one
-  composerLock = ./composer.lock;
-  vendorHash = "sha256-ueTbbz3FGyRcRvlcJNirHdC77Tko4RKtYMFB3+4JdnQ=";
+    # TODO: Open a PR against https://github.com/phingofficial/phing
+    # Their `composer.lock` is out of date therefore, we need to provide one
+    composerLock = ./composer.lock;
+    vendorHash = "sha256-ueTbbz3FGyRcRvlcJNirHdC77Tko4RKtYMFB3+4JdnQ=";
 
-  meta = {
-    description = "PHing Is Not GNU make; it's a PHP project build system or build tool based on Apache Ant";
-    homepage = "https://github.com/phingofficial/phing";
-    license = lib.licenses.lgpl3;
-    mainProgram = "phing";
-    maintainers = lib.teams.php.members;
-  };
-})
+    meta = {
+      description = "PHing Is Not GNU make; it's a PHP project build system or build tool based on Apache Ant";
+      homepage = "https://github.com/phingofficial/phing";
+      license = lib.licenses.lgpl3;
+      mainProgram = "phing";
+      maintainers = lib.teams.php.members;
+    };
+  })
diff --git a/pkgs/development/php-packages/phive/default.nix b/pkgs/development/php-packages/phive/default.nix
index f8efa3621ede..82b5681cb168 100644
--- a/pkgs/development/php-packages/phive/default.nix
+++ b/pkgs/development/php-packages/phive/default.nix
@@ -1,6 +1,7 @@
-{ lib
-, fetchFromGitHub
-, php
+{
+  lib,
+  fetchFromGitHub,
+  php,
 }:
 
 php.buildComposerProject (finalAttrs: {
diff --git a/pkgs/development/php-packages/php-codesniffer/default.nix b/pkgs/development/php-packages/php-codesniffer/default.nix
index 0075c387d6e3..5ea2977be6f9 100644
--- a/pkgs/development/php-packages/php-codesniffer/default.nix
+++ b/pkgs/development/php-packages/php-codesniffer/default.nix
@@ -1,6 +1,7 @@
-{ fetchFromGitHub
-, lib
-, php
+{
+  fetchFromGitHub,
+  lib,
+  php,
 }:
 
 php.buildComposerProject (finalAttrs: {
diff --git a/pkgs/development/php-packages/php-cs-fixer/default.nix b/pkgs/development/php-packages/php-cs-fixer/default.nix
index 351d2e4d7b90..92f61c96166c 100644
--- a/pkgs/development/php-packages/php-cs-fixer/default.nix
+++ b/pkgs/development/php-packages/php-cs-fixer/default.nix
@@ -1,6 +1,7 @@
-{ lib
-, fetchFromGitHub
-, php
+{
+  lib,
+  fetchFromGitHub,
+  php,
 }:
 
 php.buildComposerProject (finalAttrs: {
diff --git a/pkgs/development/php-packages/php-parallel-lint/default.nix b/pkgs/development/php-packages/php-parallel-lint/default.nix
index fbd6e264e1af..dc14ac21981e 100644
--- a/pkgs/development/php-packages/php-parallel-lint/default.nix
+++ b/pkgs/development/php-packages/php-parallel-lint/default.nix
@@ -1,6 +1,7 @@
-{ fetchFromGitHub
-, lib
-, php
+{
+  fetchFromGitHub,
+  lib,
+  php,
 }:
 
 php.buildComposerProject (finalAttrs: {
diff --git a/pkgs/development/php-packages/phpinsights/composer.lock b/pkgs/development/php-packages/phpinsights/composer.lock
index 8fe99422b57f..a068e3a435a8 100644
--- a/pkgs/development/php-packages/phpinsights/composer.lock
+++ b/pkgs/development/php-packages/phpinsights/composer.lock
@@ -73,16 +73,16 @@
         },
         {
             "name": "composer/pcre",
-            "version": "3.1.2",
+            "version": "3.1.3",
             "source": {
                 "type": "git",
                 "url": "https://github.com/composer/pcre.git",
-                "reference": "4775f35b2d70865807c89d32c8e7385b86eb0ace"
+                "reference": "5b16e25a5355f1f3afdfc2f954a0a80aec4826a8"
             },
             "dist": {
                 "type": "zip",
-                "url": "https://api.github.com/repos/composer/pcre/zipball/4775f35b2d70865807c89d32c8e7385b86eb0ace",
-                "reference": "4775f35b2d70865807c89d32c8e7385b86eb0ace",
+                "url": "https://api.github.com/repos/composer/pcre/zipball/5b16e25a5355f1f3afdfc2f954a0a80aec4826a8",
+                "reference": "5b16e25a5355f1f3afdfc2f954a0a80aec4826a8",
                 "shasum": ""
             },
             "require": {
@@ -124,7 +124,7 @@
             ],
             "support": {
                 "issues": "https://github.com/composer/pcre/issues",
-                "source": "https://github.com/composer/pcre/tree/3.1.2"
+                "source": "https://github.com/composer/pcre/tree/3.1.3"
             },
             "funding": [
                 {
@@ -140,7 +140,7 @@
                     "type": "tidelift"
                 }
             ],
-            "time": "2024-03-07T15:38:35+00:00"
+            "time": "2024-03-19T10:26:25+00:00"
         },
         {
             "name": "composer/semver",
@@ -225,16 +225,16 @@
         },
         {
             "name": "composer/xdebug-handler",
-            "version": "3.0.3",
+            "version": "3.0.5",
             "source": {
                 "type": "git",
                 "url": "https://github.com/composer/xdebug-handler.git",
-                "reference": "ced299686f41dce890debac69273b47ffe98a40c"
+                "reference": "6c1925561632e83d60a44492e0b344cf48ab85ef"
             },
             "dist": {
                 "type": "zip",
-                "url": "https://api.github.com/repos/composer/xdebug-handler/zipball/ced299686f41dce890debac69273b47ffe98a40c",
-                "reference": "ced299686f41dce890debac69273b47ffe98a40c",
+                "url": "https://api.github.com/repos/composer/xdebug-handler/zipball/6c1925561632e83d60a44492e0b344cf48ab85ef",
+                "reference": "6c1925561632e83d60a44492e0b344cf48ab85ef",
                 "shasum": ""
             },
             "require": {
@@ -245,7 +245,7 @@
             "require-dev": {
                 "phpstan/phpstan": "^1.0",
                 "phpstan/phpstan-strict-rules": "^1.1",
-                "symfony/phpunit-bridge": "^6.0"
+                "phpunit/phpunit": "^8.5 || ^9.6 || ^10.5"
             },
             "type": "library",
             "autoload": {
@@ -269,9 +269,9 @@
                 "performance"
             ],
             "support": {
-                "irc": "irc://irc.freenode.org/composer",
+                "irc": "ircs://irc.libera.chat:6697/composer",
                 "issues": "https://github.com/composer/xdebug-handler/issues",
-                "source": "https://github.com/composer/xdebug-handler/tree/3.0.3"
+                "source": "https://github.com/composer/xdebug-handler/tree/3.0.5"
             },
             "funding": [
                 {
@@ -287,7 +287,7 @@
                     "type": "tidelift"
                 }
             ],
-            "time": "2022-02-25T21:32:43+00:00"
+            "time": "2024-05-06T16:37:16+00:00"
         },
         {
             "name": "dealerdirect/phpcodesniffer-composer-installer",
@@ -369,16 +369,16 @@
         },
         {
             "name": "friendsofphp/php-cs-fixer",
-            "version": "v3.51.0",
+            "version": "v3.56.1",
             "source": {
                 "type": "git",
                 "url": "https://github.com/PHP-CS-Fixer/PHP-CS-Fixer.git",
-                "reference": "127fa74f010da99053e3f5b62672615b72dd6efd"
+                "reference": "69c6168ae8bc96dc656c7f6c7271120a68ae5903"
             },
             "dist": {
                 "type": "zip",
-                "url": "https://api.github.com/repos/PHP-CS-Fixer/PHP-CS-Fixer/zipball/127fa74f010da99053e3f5b62672615b72dd6efd",
-                "reference": "127fa74f010da99053e3f5b62672615b72dd6efd",
+                "url": "https://api.github.com/repos/PHP-CS-Fixer/PHP-CS-Fixer/zipball/69c6168ae8bc96dc656c7f6c7271120a68ae5903",
+                "reference": "69c6168ae8bc96dc656c7f6c7271120a68ae5903",
                 "shasum": ""
             },
             "require": {
@@ -402,6 +402,7 @@
             },
             "require-dev": {
                 "facile-it/paraunit": "^1.3 || ^2.0",
+                "infection/infection": "^0.27.11",
                 "justinrainbow/json-schema": "^5.2",
                 "keradus/cli-executor": "^2.1",
                 "mikey179/vfsstream": "^1.6.11",
@@ -449,7 +450,7 @@
             ],
             "support": {
                 "issues": "https://github.com/PHP-CS-Fixer/PHP-CS-Fixer/issues",
-                "source": "https://github.com/PHP-CS-Fixer/PHP-CS-Fixer/tree/v3.51.0"
+                "source": "https://github.com/PHP-CS-Fixer/PHP-CS-Fixer/tree/v3.56.1"
             },
             "funding": [
                 {
@@ -457,7 +458,7 @@
                     "type": "github"
                 }
             ],
-            "time": "2024-02-28T19:50:06+00:00"
+            "time": "2024-05-10T11:31:15+00:00"
         },
         {
             "name": "justinrainbow/json-schema",
@@ -613,16 +614,16 @@
         },
         {
             "name": "php-parallel-lint/php-parallel-lint",
-            "version": "v1.3.2",
+            "version": "v1.4.0",
             "source": {
                 "type": "git",
                 "url": "https://github.com/php-parallel-lint/PHP-Parallel-Lint.git",
-                "reference": "6483c9832e71973ed29cf71bd6b3f4fde438a9de"
+                "reference": "6db563514f27e19595a19f45a4bf757b6401194e"
             },
             "dist": {
                 "type": "zip",
-                "url": "https://api.github.com/repos/php-parallel-lint/PHP-Parallel-Lint/zipball/6483c9832e71973ed29cf71bd6b3f4fde438a9de",
-                "reference": "6483c9832e71973ed29cf71bd6b3f4fde438a9de",
+                "url": "https://api.github.com/repos/php-parallel-lint/PHP-Parallel-Lint/zipball/6db563514f27e19595a19f45a4bf757b6401194e",
+                "reference": "6db563514f27e19595a19f45a4bf757b6401194e",
                 "shasum": ""
             },
             "require": {
@@ -660,26 +661,30 @@
                     "email": "ahoj@jakubonderka.cz"
                 }
             ],
-            "description": "This tool check syntax of PHP files about 20x faster than serial check.",
+            "description": "This tool checks the syntax of PHP files about 20x faster than serial check.",
             "homepage": "https://github.com/php-parallel-lint/PHP-Parallel-Lint",
+            "keywords": [
+                "lint",
+                "static analysis"
+            ],
             "support": {
                 "issues": "https://github.com/php-parallel-lint/PHP-Parallel-Lint/issues",
-                "source": "https://github.com/php-parallel-lint/PHP-Parallel-Lint/tree/v1.3.2"
+                "source": "https://github.com/php-parallel-lint/PHP-Parallel-Lint/tree/v1.4.0"
             },
-            "time": "2022-02-21T12:50:22+00:00"
+            "time": "2024-03-27T12:14:49+00:00"
         },
         {
             "name": "phpstan/phpdoc-parser",
-            "version": "1.26.0",
+            "version": "1.29.0",
             "source": {
                 "type": "git",
                 "url": "https://github.com/phpstan/phpdoc-parser.git",
-                "reference": "231e3186624c03d7e7c890ec662b81e6b0405227"
+                "reference": "536889f2b340489d328f5ffb7b02bb6b183ddedc"
             },
             "dist": {
                 "type": "zip",
-                "url": "https://api.github.com/repos/phpstan/phpdoc-parser/zipball/231e3186624c03d7e7c890ec662b81e6b0405227",
-                "reference": "231e3186624c03d7e7c890ec662b81e6b0405227",
+                "url": "https://api.github.com/repos/phpstan/phpdoc-parser/zipball/536889f2b340489d328f5ffb7b02bb6b183ddedc",
+                "reference": "536889f2b340489d328f5ffb7b02bb6b183ddedc",
                 "shasum": ""
             },
             "require": {
@@ -711,9 +716,9 @@
             "description": "PHPDoc parser with support for nullable, intersection and generic types",
             "support": {
                 "issues": "https://github.com/phpstan/phpdoc-parser/issues",
-                "source": "https://github.com/phpstan/phpdoc-parser/tree/1.26.0"
+                "source": "https://github.com/phpstan/phpdoc-parser/tree/1.29.0"
             },
-            "time": "2024-02-23T16:05:55+00:00"
+            "time": "2024-05-06T12:04:23+00:00"
         },
         {
             "name": "phpunit/php-file-iterator",
@@ -1220,16 +1225,16 @@
         },
         {
             "name": "squizlabs/php_codesniffer",
-            "version": "3.9.0",
+            "version": "3.9.2",
             "source": {
                 "type": "git",
                 "url": "https://github.com/PHPCSStandards/PHP_CodeSniffer.git",
-                "reference": "d63cee4890a8afaf86a22e51ad4d97c91dd4579b"
+                "reference": "aac1f6f347a5c5ac6bc98ad395007df00990f480"
             },
             "dist": {
                 "type": "zip",
-                "url": "https://api.github.com/repos/PHPCSStandards/PHP_CodeSniffer/zipball/d63cee4890a8afaf86a22e51ad4d97c91dd4579b",
-                "reference": "d63cee4890a8afaf86a22e51ad4d97c91dd4579b",
+                "url": "https://api.github.com/repos/PHPCSStandards/PHP_CodeSniffer/zipball/aac1f6f347a5c5ac6bc98ad395007df00990f480",
+                "reference": "aac1f6f347a5c5ac6bc98ad395007df00990f480",
                 "shasum": ""
             },
             "require": {
@@ -1296,35 +1301,35 @@
                     "type": "open_collective"
                 }
             ],
-            "time": "2024-02-16T15:06:51+00:00"
+            "time": "2024-04-23T20:25:34+00:00"
         },
         {
             "name": "symfony/cache",
-            "version": "v7.0.4",
+            "version": "v6.4.7",
             "source": {
                 "type": "git",
                 "url": "https://github.com/symfony/cache.git",
-                "reference": "fc822951dd360a593224bb2cef90a087d0dff60f"
+                "reference": "b9e9b93c9817ec6c789c7943f5e54b57a041c16a"
             },
             "dist": {
                 "type": "zip",
-                "url": "https://api.github.com/repos/symfony/cache/zipball/fc822951dd360a593224bb2cef90a087d0dff60f",
-                "reference": "fc822951dd360a593224bb2cef90a087d0dff60f",
+                "url": "https://api.github.com/repos/symfony/cache/zipball/b9e9b93c9817ec6c789c7943f5e54b57a041c16a",
+                "reference": "b9e9b93c9817ec6c789c7943f5e54b57a041c16a",
                 "shasum": ""
             },
             "require": {
-                "php": ">=8.2",
+                "php": ">=8.1",
                 "psr/cache": "^2.0|^3.0",
                 "psr/log": "^1.1|^2|^3",
                 "symfony/cache-contracts": "^2.5|^3",
                 "symfony/service-contracts": "^2.5|^3",
-                "symfony/var-exporter": "^6.4|^7.0"
+                "symfony/var-exporter": "^6.3.6|^7.0"
             },
             "conflict": {
-                "doctrine/dbal": "<3.6",
-                "symfony/dependency-injection": "<6.4",
-                "symfony/http-kernel": "<6.4",
-                "symfony/var-dumper": "<6.4"
+                "doctrine/dbal": "<2.13.1",
+                "symfony/dependency-injection": "<5.4",
+                "symfony/http-kernel": "<5.4",
+                "symfony/var-dumper": "<5.4"
             },
             "provide": {
                 "psr/cache-implementation": "2.0|3.0",
@@ -1333,15 +1338,15 @@
             },
             "require-dev": {
                 "cache/integration-tests": "dev-master",
-                "doctrine/dbal": "^3.6|^4",
+                "doctrine/dbal": "^2.13.1|^3|^4",
                 "predis/predis": "^1.1|^2.0",
                 "psr/simple-cache": "^1.0|^2.0|^3.0",
-                "symfony/config": "^6.4|^7.0",
-                "symfony/dependency-injection": "^6.4|^7.0",
-                "symfony/filesystem": "^6.4|^7.0",
-                "symfony/http-kernel": "^6.4|^7.0",
-                "symfony/messenger": "^6.4|^7.0",
-                "symfony/var-dumper": "^6.4|^7.0"
+                "symfony/config": "^5.4|^6.0|^7.0",
+                "symfony/dependency-injection": "^5.4|^6.0|^7.0",
+                "symfony/filesystem": "^5.4|^6.0|^7.0",
+                "symfony/http-kernel": "^5.4|^6.0|^7.0",
+                "symfony/messenger": "^5.4|^6.0|^7.0",
+                "symfony/var-dumper": "^5.4|^6.0|^7.0"
             },
             "type": "library",
             "autoload": {
@@ -1376,7 +1381,7 @@
                 "psr6"
             ],
             "support": {
-                "source": "https://github.com/symfony/cache/tree/v7.0.4"
+                "source": "https://github.com/symfony/cache/tree/v6.4.7"
             },
             "funding": [
                 {
@@ -1392,20 +1397,20 @@
                     "type": "tidelift"
                 }
             ],
-            "time": "2024-02-22T20:27:20+00:00"
+            "time": "2024-04-18T09:22:46+00:00"
         },
         {
             "name": "symfony/cache-contracts",
-            "version": "v3.4.0",
+            "version": "v3.5.0",
             "source": {
                 "type": "git",
                 "url": "https://github.com/symfony/cache-contracts.git",
-                "reference": "1d74b127da04ffa87aa940abe15446fa89653778"
+                "reference": "df6a1a44c890faded49a5fca33c2d5c5fd3c2197"
             },
             "dist": {
                 "type": "zip",
-                "url": "https://api.github.com/repos/symfony/cache-contracts/zipball/1d74b127da04ffa87aa940abe15446fa89653778",
-                "reference": "1d74b127da04ffa87aa940abe15446fa89653778",
+                "url": "https://api.github.com/repos/symfony/cache-contracts/zipball/df6a1a44c890faded49a5fca33c2d5c5fd3c2197",
+                "reference": "df6a1a44c890faded49a5fca33c2d5c5fd3c2197",
                 "shasum": ""
             },
             "require": {
@@ -1415,7 +1420,7 @@
             "type": "library",
             "extra": {
                 "branch-alias": {
-                    "dev-main": "3.4-dev"
+                    "dev-main": "3.5-dev"
                 },
                 "thanks": {
                     "name": "symfony/contracts",
@@ -1452,7 +1457,7 @@
                 "standards"
             ],
             "support": {
-                "source": "https://github.com/symfony/cache-contracts/tree/v3.4.0"
+                "source": "https://github.com/symfony/cache-contracts/tree/v3.5.0"
             },
             "funding": [
                 {
@@ -1468,20 +1473,20 @@
                     "type": "tidelift"
                 }
             ],
-            "time": "2023-09-25T12:52:38+00:00"
+            "time": "2024-04-18T09:32:20+00:00"
         },
         {
             "name": "symfony/console",
-            "version": "v6.4.4",
+            "version": "v6.4.7",
             "source": {
                 "type": "git",
                 "url": "https://github.com/symfony/console.git",
-                "reference": "0d9e4eb5ad413075624378f474c4167ea202de78"
+                "reference": "a170e64ae10d00ba89e2acbb590dc2e54da8ad8f"
             },
             "dist": {
                 "type": "zip",
-                "url": "https://api.github.com/repos/symfony/console/zipball/0d9e4eb5ad413075624378f474c4167ea202de78",
-                "reference": "0d9e4eb5ad413075624378f474c4167ea202de78",
+                "url": "https://api.github.com/repos/symfony/console/zipball/a170e64ae10d00ba89e2acbb590dc2e54da8ad8f",
+                "reference": "a170e64ae10d00ba89e2acbb590dc2e54da8ad8f",
                 "shasum": ""
             },
             "require": {
@@ -1546,7 +1551,7 @@
                 "terminal"
             ],
             "support": {
-                "source": "https://github.com/symfony/console/tree/v6.4.4"
+                "source": "https://github.com/symfony/console/tree/v6.4.7"
             },
             "funding": [
                 {
@@ -1562,20 +1567,20 @@
                     "type": "tidelift"
                 }
             ],
-            "time": "2024-02-22T20:27:10+00:00"
+            "time": "2024-04-18T09:22:46+00:00"
         },
         {
             "name": "symfony/deprecation-contracts",
-            "version": "v3.4.0",
+            "version": "v3.5.0",
             "source": {
                 "type": "git",
                 "url": "https://github.com/symfony/deprecation-contracts.git",
-                "reference": "7c3aff79d10325257a001fcf92d991f24fc967cf"
+                "reference": "0e0d29ce1f20deffb4ab1b016a7257c4f1e789a1"
             },
             "dist": {
                 "type": "zip",
-                "url": "https://api.github.com/repos/symfony/deprecation-contracts/zipball/7c3aff79d10325257a001fcf92d991f24fc967cf",
-                "reference": "7c3aff79d10325257a001fcf92d991f24fc967cf",
+                "url": "https://api.github.com/repos/symfony/deprecation-contracts/zipball/0e0d29ce1f20deffb4ab1b016a7257c4f1e789a1",
+                "reference": "0e0d29ce1f20deffb4ab1b016a7257c4f1e789a1",
                 "shasum": ""
             },
             "require": {
@@ -1584,7 +1589,7 @@
             "type": "library",
             "extra": {
                 "branch-alias": {
-                    "dev-main": "3.4-dev"
+                    "dev-main": "3.5-dev"
                 },
                 "thanks": {
                     "name": "symfony/contracts",
@@ -1613,7 +1618,7 @@
             "description": "A generic function and convention to trigger deprecation notices",
             "homepage": "https://symfony.com",
             "support": {
-                "source": "https://github.com/symfony/deprecation-contracts/tree/v3.4.0"
+                "source": "https://github.com/symfony/deprecation-contracts/tree/v3.5.0"
             },
             "funding": [
                 {
@@ -1629,28 +1634,28 @@
                     "type": "tidelift"
                 }
             ],
-            "time": "2023-05-23T14:45:45+00:00"
+            "time": "2024-04-18T09:32:20+00:00"
         },
         {
             "name": "symfony/event-dispatcher",
-            "version": "v7.0.3",
+            "version": "v6.4.7",
             "source": {
                 "type": "git",
                 "url": "https://github.com/symfony/event-dispatcher.git",
-                "reference": "834c28d533dd0636f910909d01b9ff45cc094b5e"
+                "reference": "d84384f3f67de3cb650db64d685d70395dacfc3f"
             },
             "dist": {
                 "type": "zip",
-                "url": "https://api.github.com/repos/symfony/event-dispatcher/zipball/834c28d533dd0636f910909d01b9ff45cc094b5e",
-                "reference": "834c28d533dd0636f910909d01b9ff45cc094b5e",
+                "url": "https://api.github.com/repos/symfony/event-dispatcher/zipball/d84384f3f67de3cb650db64d685d70395dacfc3f",
+                "reference": "d84384f3f67de3cb650db64d685d70395dacfc3f",
                 "shasum": ""
             },
             "require": {
-                "php": ">=8.2",
+                "php": ">=8.1",
                 "symfony/event-dispatcher-contracts": "^2.5|^3"
             },
             "conflict": {
-                "symfony/dependency-injection": "<6.4",
+                "symfony/dependency-injection": "<5.4",
                 "symfony/service-contracts": "<2.5"
             },
             "provide": {
@@ -1659,13 +1664,13 @@
             },
             "require-dev": {
                 "psr/log": "^1|^2|^3",
-                "symfony/config": "^6.4|^7.0",
-                "symfony/dependency-injection": "^6.4|^7.0",
-                "symfony/error-handler": "^6.4|^7.0",
-                "symfony/expression-language": "^6.4|^7.0",
-                "symfony/http-foundation": "^6.4|^7.0",
+                "symfony/config": "^5.4|^6.0|^7.0",
+                "symfony/dependency-injection": "^5.4|^6.0|^7.0",
+                "symfony/error-handler": "^5.4|^6.0|^7.0",
+                "symfony/expression-language": "^5.4|^6.0|^7.0",
+                "symfony/http-foundation": "^5.4|^6.0|^7.0",
                 "symfony/service-contracts": "^2.5|^3",
-                "symfony/stopwatch": "^6.4|^7.0"
+                "symfony/stopwatch": "^5.4|^6.0|^7.0"
             },
             "type": "library",
             "autoload": {
@@ -1693,7 +1698,7 @@
             "description": "Provides tools that allow your application components to communicate with each other by dispatching events and listening to them",
             "homepage": "https://symfony.com",
             "support": {
-                "source": "https://github.com/symfony/event-dispatcher/tree/v7.0.3"
+                "source": "https://github.com/symfony/event-dispatcher/tree/v6.4.7"
             },
             "funding": [
                 {
@@ -1709,20 +1714,20 @@
                     "type": "tidelift"
                 }
             ],
-            "time": "2024-01-23T15:02:46+00:00"
+            "time": "2024-04-18T09:22:46+00:00"
         },
         {
             "name": "symfony/event-dispatcher-contracts",
-            "version": "v3.4.0",
+            "version": "v3.5.0",
             "source": {
                 "type": "git",
                 "url": "https://github.com/symfony/event-dispatcher-contracts.git",
-                "reference": "a76aed96a42d2b521153fb382d418e30d18b59df"
+                "reference": "8f93aec25d41b72493c6ddff14e916177c9efc50"
             },
             "dist": {
                 "type": "zip",
-                "url": "https://api.github.com/repos/symfony/event-dispatcher-contracts/zipball/a76aed96a42d2b521153fb382d418e30d18b59df",
-                "reference": "a76aed96a42d2b521153fb382d418e30d18b59df",
+                "url": "https://api.github.com/repos/symfony/event-dispatcher-contracts/zipball/8f93aec25d41b72493c6ddff14e916177c9efc50",
+                "reference": "8f93aec25d41b72493c6ddff14e916177c9efc50",
                 "shasum": ""
             },
             "require": {
@@ -1732,7 +1737,7 @@
             "type": "library",
             "extra": {
                 "branch-alias": {
-                    "dev-main": "3.4-dev"
+                    "dev-main": "3.5-dev"
                 },
                 "thanks": {
                     "name": "symfony/contracts",
@@ -1769,7 +1774,7 @@
                 "standards"
             ],
             "support": {
-                "source": "https://github.com/symfony/event-dispatcher-contracts/tree/v3.4.0"
+                "source": "https://github.com/symfony/event-dispatcher-contracts/tree/v3.5.0"
             },
             "funding": [
                 {
@@ -1785,26 +1790,27 @@
                     "type": "tidelift"
                 }
             ],
-            "time": "2023-05-23T14:45:45+00:00"
+            "time": "2024-04-18T09:32:20+00:00"
         },
         {
             "name": "symfony/filesystem",
-            "version": "v7.0.3",
+            "version": "v6.4.7",
             "source": {
                 "type": "git",
                 "url": "https://github.com/symfony/filesystem.git",
-                "reference": "2890e3a825bc0c0558526c04499c13f83e1b6b12"
+                "reference": "78dde75f8f6dbbca4ec436a4b0087f7af02076d4"
             },
             "dist": {
                 "type": "zip",
-                "url": "https://api.github.com/repos/symfony/filesystem/zipball/2890e3a825bc0c0558526c04499c13f83e1b6b12",
-                "reference": "2890e3a825bc0c0558526c04499c13f83e1b6b12",
+                "url": "https://api.github.com/repos/symfony/filesystem/zipball/78dde75f8f6dbbca4ec436a4b0087f7af02076d4",
+                "reference": "78dde75f8f6dbbca4ec436a4b0087f7af02076d4",
                 "shasum": ""
             },
             "require": {
-                "php": ">=8.2",
+                "php": ">=8.1",
                 "symfony/polyfill-ctype": "~1.8",
-                "symfony/polyfill-mbstring": "~1.8"
+                "symfony/polyfill-mbstring": "~1.8",
+                "symfony/process": "^5.4|^6.4"
             },
             "type": "library",
             "autoload": {
@@ -1832,7 +1838,7 @@
             "description": "Provides basic utilities for the filesystem",
             "homepage": "https://symfony.com",
             "support": {
-                "source": "https://github.com/symfony/filesystem/tree/v7.0.3"
+                "source": "https://github.com/symfony/filesystem/tree/v6.4.7"
             },
             "funding": [
                 {
@@ -1848,27 +1854,27 @@
                     "type": "tidelift"
                 }
             ],
-            "time": "2024-01-23T15:02:46+00:00"
+            "time": "2024-04-18T09:22:46+00:00"
         },
         {
             "name": "symfony/finder",
-            "version": "v7.0.0",
+            "version": "v6.4.7",
             "source": {
                 "type": "git",
                 "url": "https://github.com/symfony/finder.git",
-                "reference": "6e5688d69f7cfc4ed4a511e96007e06c2d34ce56"
+                "reference": "511c48990be17358c23bf45c5d71ab85d40fb764"
             },
             "dist": {
                 "type": "zip",
-                "url": "https://api.github.com/repos/symfony/finder/zipball/6e5688d69f7cfc4ed4a511e96007e06c2d34ce56",
-                "reference": "6e5688d69f7cfc4ed4a511e96007e06c2d34ce56",
+                "url": "https://api.github.com/repos/symfony/finder/zipball/511c48990be17358c23bf45c5d71ab85d40fb764",
+                "reference": "511c48990be17358c23bf45c5d71ab85d40fb764",
                 "shasum": ""
             },
             "require": {
-                "php": ">=8.2"
+                "php": ">=8.1"
             },
             "require-dev": {
-                "symfony/filesystem": "^6.4|^7.0"
+                "symfony/filesystem": "^6.0|^7.0"
             },
             "type": "library",
             "autoload": {
@@ -1896,7 +1902,7 @@
             "description": "Finds files and directories via an intuitive fluent interface",
             "homepage": "https://symfony.com",
             "support": {
-                "source": "https://github.com/symfony/finder/tree/v7.0.0"
+                "source": "https://github.com/symfony/finder/tree/v6.4.7"
             },
             "funding": [
                 {
@@ -1912,31 +1918,32 @@
                     "type": "tidelift"
                 }
             ],
-            "time": "2023-10-31T17:59:56+00:00"
+            "time": "2024-04-23T10:36:43+00:00"
         },
         {
             "name": "symfony/http-client",
-            "version": "v7.0.5",
+            "version": "v6.4.7",
             "source": {
                 "type": "git",
                 "url": "https://github.com/symfony/http-client.git",
-                "reference": "425f462a59d8030703ee04a9e1c666575ed5db3b"
+                "reference": "3683d8107cf1efdd24795cc5f7482be1eded34ac"
             },
             "dist": {
                 "type": "zip",
-                "url": "https://api.github.com/repos/symfony/http-client/zipball/425f462a59d8030703ee04a9e1c666575ed5db3b",
-                "reference": "425f462a59d8030703ee04a9e1c666575ed5db3b",
+                "url": "https://api.github.com/repos/symfony/http-client/zipball/3683d8107cf1efdd24795cc5f7482be1eded34ac",
+                "reference": "3683d8107cf1efdd24795cc5f7482be1eded34ac",
                 "shasum": ""
             },
             "require": {
-                "php": ">=8.2",
+                "php": ">=8.1",
                 "psr/log": "^1|^2|^3",
-                "symfony/http-client-contracts": "^3",
+                "symfony/deprecation-contracts": "^2.5|^3",
+                "symfony/http-client-contracts": "^3.4.1",
                 "symfony/service-contracts": "^2.5|^3"
             },
             "conflict": {
                 "php-http/discovery": "<1.15",
-                "symfony/http-foundation": "<6.4"
+                "symfony/http-foundation": "<6.3"
             },
             "provide": {
                 "php-http/async-client-implementation": "*",
@@ -1949,15 +1956,15 @@
                 "amphp/http-client": "^4.2.1",
                 "amphp/http-tunnel": "^1.0",
                 "amphp/socket": "^1.1",
-                "guzzlehttp/promises": "^1.4",
+                "guzzlehttp/promises": "^1.4|^2.0",
                 "nyholm/psr7": "^1.0",
                 "php-http/httplug": "^1.0|^2.0",
                 "psr/http-client": "^1.0",
-                "symfony/dependency-injection": "^6.4|^7.0",
-                "symfony/http-kernel": "^6.4|^7.0",
-                "symfony/messenger": "^6.4|^7.0",
-                "symfony/process": "^6.4|^7.0",
-                "symfony/stopwatch": "^6.4|^7.0"
+                "symfony/dependency-injection": "^5.4|^6.0|^7.0",
+                "symfony/http-kernel": "^5.4|^6.0|^7.0",
+                "symfony/messenger": "^5.4|^6.0|^7.0",
+                "symfony/process": "^5.4|^6.0|^7.0",
+                "symfony/stopwatch": "^5.4|^6.0|^7.0"
             },
             "type": "library",
             "autoload": {
@@ -1988,7 +1995,7 @@
                 "http"
             ],
             "support": {
-                "source": "https://github.com/symfony/http-client/tree/v7.0.5"
+                "source": "https://github.com/symfony/http-client/tree/v6.4.7"
             },
             "funding": [
                 {
@@ -2004,20 +2011,20 @@
                     "type": "tidelift"
                 }
             ],
-            "time": "2024-03-02T12:46:12+00:00"
+            "time": "2024-04-18T09:22:46+00:00"
         },
         {
             "name": "symfony/http-client-contracts",
-            "version": "v3.4.0",
+            "version": "v3.5.0",
             "source": {
                 "type": "git",
                 "url": "https://github.com/symfony/http-client-contracts.git",
-                "reference": "1ee70e699b41909c209a0c930f11034b93578654"
+                "reference": "20414d96f391677bf80078aa55baece78b82647d"
             },
             "dist": {
                 "type": "zip",
-                "url": "https://api.github.com/repos/symfony/http-client-contracts/zipball/1ee70e699b41909c209a0c930f11034b93578654",
-                "reference": "1ee70e699b41909c209a0c930f11034b93578654",
+                "url": "https://api.github.com/repos/symfony/http-client-contracts/zipball/20414d96f391677bf80078aa55baece78b82647d",
+                "reference": "20414d96f391677bf80078aa55baece78b82647d",
                 "shasum": ""
             },
             "require": {
@@ -2026,7 +2033,7 @@
             "type": "library",
             "extra": {
                 "branch-alias": {
-                    "dev-main": "3.4-dev"
+                    "dev-main": "3.5-dev"
                 },
                 "thanks": {
                     "name": "symfony/contracts",
@@ -2066,7 +2073,7 @@
                 "standards"
             ],
             "support": {
-                "source": "https://github.com/symfony/http-client-contracts/tree/v3.4.0"
+                "source": "https://github.com/symfony/http-client-contracts/tree/v3.5.0"
             },
             "funding": [
                 {
@@ -2082,24 +2089,24 @@
                     "type": "tidelift"
                 }
             ],
-            "time": "2023-07-30T20:28:31+00:00"
+            "time": "2024-04-18T09:32:20+00:00"
         },
         {
             "name": "symfony/options-resolver",
-            "version": "v7.0.0",
+            "version": "v6.4.7",
             "source": {
                 "type": "git",
                 "url": "https://github.com/symfony/options-resolver.git",
-                "reference": "700ff4096e346f54cb628ea650767c8130f1001f"
+                "reference": "9a3c92b490716ba6771f5beced13c6eda7183eed"
             },
             "dist": {
                 "type": "zip",
-                "url": "https://api.github.com/repos/symfony/options-resolver/zipball/700ff4096e346f54cb628ea650767c8130f1001f",
-                "reference": "700ff4096e346f54cb628ea650767c8130f1001f",
+                "url": "https://api.github.com/repos/symfony/options-resolver/zipball/9a3c92b490716ba6771f5beced13c6eda7183eed",
+                "reference": "9a3c92b490716ba6771f5beced13c6eda7183eed",
                 "shasum": ""
             },
             "require": {
-                "php": ">=8.2",
+                "php": ">=8.1",
                 "symfony/deprecation-contracts": "^2.5|^3"
             },
             "type": "library",
@@ -2133,7 +2140,7 @@
                 "options"
             ],
             "support": {
-                "source": "https://github.com/symfony/options-resolver/tree/v7.0.0"
+                "source": "https://github.com/symfony/options-resolver/tree/v6.4.7"
             },
             "funding": [
                 {
@@ -2149,7 +2156,7 @@
                     "type": "tidelift"
                 }
             ],
-            "time": "2023-08-08T10:20:21+00:00"
+            "time": "2024-04-18T09:22:46+00:00"
         },
         {
             "name": "symfony/polyfill-ctype",
@@ -2627,16 +2634,16 @@
         },
         {
             "name": "symfony/process",
-            "version": "v6.4.4",
+            "version": "v6.4.7",
             "source": {
                 "type": "git",
                 "url": "https://github.com/symfony/process.git",
-                "reference": "710e27879e9be3395de2b98da3f52a946039f297"
+                "reference": "cdb1c81c145fd5aa9b0038bab694035020943381"
             },
             "dist": {
                 "type": "zip",
-                "url": "https://api.github.com/repos/symfony/process/zipball/710e27879e9be3395de2b98da3f52a946039f297",
-                "reference": "710e27879e9be3395de2b98da3f52a946039f297",
+                "url": "https://api.github.com/repos/symfony/process/zipball/cdb1c81c145fd5aa9b0038bab694035020943381",
+                "reference": "cdb1c81c145fd5aa9b0038bab694035020943381",
                 "shasum": ""
             },
             "require": {
@@ -2668,7 +2675,7 @@
             "description": "Executes commands in sub-processes",
             "homepage": "https://symfony.com",
             "support": {
-                "source": "https://github.com/symfony/process/tree/v6.4.4"
+                "source": "https://github.com/symfony/process/tree/v6.4.7"
             },
             "funding": [
                 {
@@ -2684,25 +2691,26 @@
                     "type": "tidelift"
                 }
             ],
-            "time": "2024-02-20T12:31:00+00:00"
+            "time": "2024-04-18T09:22:46+00:00"
         },
         {
             "name": "symfony/service-contracts",
-            "version": "v3.4.1",
+            "version": "v3.5.0",
             "source": {
                 "type": "git",
                 "url": "https://github.com/symfony/service-contracts.git",
-                "reference": "fe07cbc8d837f60caf7018068e350cc5163681a0"
+                "reference": "bd1d9e59a81d8fa4acdcea3f617c581f7475a80f"
             },
             "dist": {
                 "type": "zip",
-                "url": "https://api.github.com/repos/symfony/service-contracts/zipball/fe07cbc8d837f60caf7018068e350cc5163681a0",
-                "reference": "fe07cbc8d837f60caf7018068e350cc5163681a0",
+                "url": "https://api.github.com/repos/symfony/service-contracts/zipball/bd1d9e59a81d8fa4acdcea3f617c581f7475a80f",
+                "reference": "bd1d9e59a81d8fa4acdcea3f617c581f7475a80f",
                 "shasum": ""
             },
             "require": {
                 "php": ">=8.1",
-                "psr/container": "^1.1|^2.0"
+                "psr/container": "^1.1|^2.0",
+                "symfony/deprecation-contracts": "^2.5|^3"
             },
             "conflict": {
                 "ext-psr": "<1.1|>=2"
@@ -2710,7 +2718,7 @@
             "type": "library",
             "extra": {
                 "branch-alias": {
-                    "dev-main": "3.4-dev"
+                    "dev-main": "3.5-dev"
                 },
                 "thanks": {
                     "name": "symfony/contracts",
@@ -2750,7 +2758,7 @@
                 "standards"
             ],
             "support": {
-                "source": "https://github.com/symfony/service-contracts/tree/v3.4.1"
+                "source": "https://github.com/symfony/service-contracts/tree/v3.5.0"
             },
             "funding": [
                 {
@@ -2766,24 +2774,24 @@
                     "type": "tidelift"
                 }
             ],
-            "time": "2023-12-26T14:02:43+00:00"
+            "time": "2024-04-18T09:32:20+00:00"
         },
         {
             "name": "symfony/stopwatch",
-            "version": "v7.0.3",
+            "version": "v6.4.7",
             "source": {
                 "type": "git",
                 "url": "https://github.com/symfony/stopwatch.git",
-                "reference": "983900d6fddf2b0cbaacacbbad07610854bd8112"
+                "reference": "ffec95ba269e541eb2232126c0c20f83086b5c68"
             },
             "dist": {
                 "type": "zip",
-                "url": "https://api.github.com/repos/symfony/stopwatch/zipball/983900d6fddf2b0cbaacacbbad07610854bd8112",
-                "reference": "983900d6fddf2b0cbaacacbbad07610854bd8112",
+                "url": "https://api.github.com/repos/symfony/stopwatch/zipball/ffec95ba269e541eb2232126c0c20f83086b5c68",
+                "reference": "ffec95ba269e541eb2232126c0c20f83086b5c68",
                 "shasum": ""
             },
             "require": {
-                "php": ">=8.2",
+                "php": ">=8.1",
                 "symfony/service-contracts": "^2.5|^3"
             },
             "type": "library",
@@ -2812,7 +2820,7 @@
             "description": "Provides a way to profile code",
             "homepage": "https://symfony.com",
             "support": {
-                "source": "https://github.com/symfony/stopwatch/tree/v7.0.3"
+                "source": "https://github.com/symfony/stopwatch/tree/v6.4.7"
             },
             "funding": [
                 {
@@ -2828,24 +2836,24 @@
                     "type": "tidelift"
                 }
             ],
-            "time": "2024-01-23T15:02:46+00:00"
+            "time": "2024-04-18T09:22:46+00:00"
         },
         {
             "name": "symfony/string",
-            "version": "v7.0.4",
+            "version": "v6.4.7",
             "source": {
                 "type": "git",
                 "url": "https://github.com/symfony/string.git",
-                "reference": "f5832521b998b0bec40bee688ad5de98d4cf111b"
+                "reference": "ffeb9591c61f65a68d47f77d12b83fa530227a69"
             },
             "dist": {
                 "type": "zip",
-                "url": "https://api.github.com/repos/symfony/string/zipball/f5832521b998b0bec40bee688ad5de98d4cf111b",
-                "reference": "f5832521b998b0bec40bee688ad5de98d4cf111b",
+                "url": "https://api.github.com/repos/symfony/string/zipball/ffeb9591c61f65a68d47f77d12b83fa530227a69",
+                "reference": "ffeb9591c61f65a68d47f77d12b83fa530227a69",
                 "shasum": ""
             },
             "require": {
-                "php": ">=8.2",
+                "php": ">=8.1",
                 "symfony/polyfill-ctype": "~1.8",
                 "symfony/polyfill-intl-grapheme": "~1.0",
                 "symfony/polyfill-intl-normalizer": "~1.0",
@@ -2855,11 +2863,11 @@
                 "symfony/translation-contracts": "<2.5"
             },
             "require-dev": {
-                "symfony/error-handler": "^6.4|^7.0",
-                "symfony/http-client": "^6.4|^7.0",
-                "symfony/intl": "^6.4|^7.0",
+                "symfony/error-handler": "^5.4|^6.0|^7.0",
+                "symfony/http-client": "^5.4|^6.0|^7.0",
+                "symfony/intl": "^6.2|^7.0",
                 "symfony/translation-contracts": "^2.5|^3.0",
-                "symfony/var-exporter": "^6.4|^7.0"
+                "symfony/var-exporter": "^5.4|^6.0|^7.0"
             },
             "type": "library",
             "autoload": {
@@ -2898,7 +2906,7 @@
                 "utf8"
             ],
             "support": {
-                "source": "https://github.com/symfony/string/tree/v7.0.4"
+                "source": "https://github.com/symfony/string/tree/v6.4.7"
             },
             "funding": [
                 {
@@ -2914,27 +2922,30 @@
                     "type": "tidelift"
                 }
             ],
-            "time": "2024-02-01T13:17:36+00:00"
+            "time": "2024-04-18T09:22:46+00:00"
         },
         {
             "name": "symfony/var-exporter",
-            "version": "v7.0.4",
+            "version": "v6.4.7",
             "source": {
                 "type": "git",
                 "url": "https://github.com/symfony/var-exporter.git",
-                "reference": "dfb0acb6803eb714f05d97dd4c5abe6d5fa9fe41"
+                "reference": "825f9b00c37bbe1c1691cc1aff9b5451fc9b4405"
             },
             "dist": {
                 "type": "zip",
-                "url": "https://api.github.com/repos/symfony/var-exporter/zipball/dfb0acb6803eb714f05d97dd4c5abe6d5fa9fe41",
-                "reference": "dfb0acb6803eb714f05d97dd4c5abe6d5fa9fe41",
+                "url": "https://api.github.com/repos/symfony/var-exporter/zipball/825f9b00c37bbe1c1691cc1aff9b5451fc9b4405",
+                "reference": "825f9b00c37bbe1c1691cc1aff9b5451fc9b4405",
                 "shasum": ""
             },
             "require": {
-                "php": ">=8.2"
+                "php": ">=8.1",
+                "symfony/deprecation-contracts": "^2.5|^3"
             },
             "require-dev": {
-                "symfony/var-dumper": "^6.4|^7.0"
+                "symfony/property-access": "^6.4|^7.0",
+                "symfony/serializer": "^6.4|^7.0",
+                "symfony/var-dumper": "^5.4|^6.0|^7.0"
             },
             "type": "library",
             "autoload": {
@@ -2972,7 +2983,7 @@
                 "serialize"
             ],
             "support": {
-                "source": "https://github.com/symfony/var-exporter/tree/v7.0.4"
+                "source": "https://github.com/symfony/var-exporter/tree/v6.4.7"
             },
             "funding": [
                 {
@@ -2988,7 +2999,7 @@
                     "type": "tidelift"
                 }
             ],
-            "time": "2024-02-26T10:35:24+00:00"
+            "time": "2024-04-18T09:22:46+00:00"
         }
     ],
     "packages-dev": [
@@ -3281,32 +3292,85 @@
             "time": "2020-07-09T08:09:16+00:00"
         },
         {
+            "name": "illuminate/bus",
+            "version": "v10.48.10",
+            "source": {
+                "type": "git",
+                "url": "https://github.com/illuminate/bus.git",
+                "reference": "33993b8f54e91b03fb5000e55693e146e7370763"
+            },
+            "dist": {
+                "type": "zip",
+                "url": "https://api.github.com/repos/illuminate/bus/zipball/33993b8f54e91b03fb5000e55693e146e7370763",
+                "reference": "33993b8f54e91b03fb5000e55693e146e7370763",
+                "shasum": ""
+            },
+            "require": {
+                "illuminate/collections": "^10.0",
+                "illuminate/contracts": "^10.0",
+                "illuminate/pipeline": "^10.0",
+                "illuminate/support": "^10.0",
+                "php": "^8.1"
+            },
+            "suggest": {
+                "illuminate/queue": "Required to use closures when chaining jobs (^7.0)."
+            },
+            "type": "library",
+            "extra": {
+                "branch-alias": {
+                    "dev-master": "10.x-dev"
+                }
+            },
+            "autoload": {
+                "psr-4": {
+                    "Illuminate\\Bus\\": ""
+                }
+            },
+            "notification-url": "https://packagist.org/downloads/",
+            "license": [
+                "MIT"
+            ],
+            "authors": [
+                {
+                    "name": "Taylor Otwell",
+                    "email": "taylor@laravel.com"
+                }
+            ],
+            "description": "The Illuminate Bus package.",
+            "homepage": "https://laravel.com",
+            "support": {
+                "issues": "https://github.com/laravel/framework/issues",
+                "source": "https://github.com/laravel/framework"
+            },
+            "time": "2024-02-23T15:38:25+00:00"
+        },
+        {
             "name": "illuminate/collections",
-            "version": "v9.52.16",
+            "version": "v10.48.10",
             "source": {
                 "type": "git",
                 "url": "https://github.com/illuminate/collections.git",
-                "reference": "d3710b0b244bfc62c288c1a87eaa62dd28352d1f"
+                "reference": "f9589f1063a449111dcaa1d68285b507d9483a95"
             },
             "dist": {
                 "type": "zip",
-                "url": "https://api.github.com/repos/illuminate/collections/zipball/d3710b0b244bfc62c288c1a87eaa62dd28352d1f",
-                "reference": "d3710b0b244bfc62c288c1a87eaa62dd28352d1f",
+                "url": "https://api.github.com/repos/illuminate/collections/zipball/f9589f1063a449111dcaa1d68285b507d9483a95",
+                "reference": "f9589f1063a449111dcaa1d68285b507d9483a95",
                 "shasum": ""
             },
             "require": {
-                "illuminate/conditionable": "^9.0",
-                "illuminate/contracts": "^9.0",
-                "illuminate/macroable": "^9.0",
-                "php": "^8.0.2"
+                "illuminate/conditionable": "^10.0",
+                "illuminate/contracts": "^10.0",
+                "illuminate/macroable": "^10.0",
+                "php": "^8.1"
             },
             "suggest": {
-                "symfony/var-dumper": "Required to use the dump method (^6.0)."
+                "symfony/var-dumper": "Required to use the dump method (^6.2)."
             },
             "type": "library",
             "extra": {
                 "branch-alias": {
-                    "dev-master": "9.x-dev"
+                    "dev-master": "10.x-dev"
                 }
             },
             "autoload": {
@@ -3333,20 +3397,20 @@
                 "issues": "https://github.com/laravel/framework/issues",
                 "source": "https://github.com/laravel/framework"
             },
-            "time": "2023-06-11T21:17:10+00:00"
+            "time": "2024-03-20T20:09:13+00:00"
         },
         {
             "name": "illuminate/conditionable",
-            "version": "v9.52.16",
+            "version": "v10.48.10",
             "source": {
                 "type": "git",
                 "url": "https://github.com/illuminate/conditionable.git",
-                "reference": "bea24daa0fa84b7e7b0d5b84f62c71b7e2dc3364"
+                "reference": "d0958e4741fc9d6f516a552060fd1b829a85e009"
             },
             "dist": {
                 "type": "zip",
-                "url": "https://api.github.com/repos/illuminate/conditionable/zipball/bea24daa0fa84b7e7b0d5b84f62c71b7e2dc3364",
-                "reference": "bea24daa0fa84b7e7b0d5b84f62c71b7e2dc3364",
+                "url": "https://api.github.com/repos/illuminate/conditionable/zipball/d0958e4741fc9d6f516a552060fd1b829a85e009",
+                "reference": "d0958e4741fc9d6f516a552060fd1b829a85e009",
                 "shasum": ""
             },
             "require": {
@@ -3355,7 +3419,7 @@
             "type": "library",
             "extra": {
                 "branch-alias": {
-                    "dev-master": "9.x-dev"
+                    "dev-master": "10.x-dev"
                 }
             },
             "autoload": {
@@ -3379,43 +3443,48 @@
                 "issues": "https://github.com/laravel/framework/issues",
                 "source": "https://github.com/laravel/framework"
             },
-            "time": "2023-02-01T21:42:32+00:00"
+            "time": "2023-02-03T08:06:17+00:00"
         },
         {
             "name": "illuminate/console",
-            "version": "v9.20.0",
+            "version": "v10.48.10",
             "source": {
                 "type": "git",
                 "url": "https://github.com/illuminate/console.git",
-                "reference": "5eeadc4fecb6a23c31b705eddf0e7d65d2a8fa38"
+                "reference": "d001036218ea5fbb382ee5c845292b067ea8b46f"
             },
             "dist": {
                 "type": "zip",
-                "url": "https://api.github.com/repos/illuminate/console/zipball/5eeadc4fecb6a23c31b705eddf0e7d65d2a8fa38",
-                "reference": "5eeadc4fecb6a23c31b705eddf0e7d65d2a8fa38",
+                "url": "https://api.github.com/repos/illuminate/console/zipball/d001036218ea5fbb382ee5c845292b067ea8b46f",
+                "reference": "d001036218ea5fbb382ee5c845292b067ea8b46f",
                 "shasum": ""
             },
             "require": {
-                "illuminate/collections": "^9.0",
-                "illuminate/contracts": "^9.0",
-                "illuminate/macroable": "^9.0",
-                "illuminate/support": "^9.0",
-                "php": "^8.0.2",
-                "symfony/console": "^6.0",
-                "symfony/process": "^6.0"
+                "ext-mbstring": "*",
+                "illuminate/collections": "^10.0",
+                "illuminate/contracts": "^10.0",
+                "illuminate/macroable": "^10.0",
+                "illuminate/support": "^10.0",
+                "illuminate/view": "^10.0",
+                "laravel/prompts": "^0.1.9",
+                "nunomaduro/termwind": "^1.13",
+                "php": "^8.1",
+                "symfony/console": "^6.2",
+                "symfony/process": "^6.2"
             },
             "suggest": {
-                "dragonmantank/cron-expression": "Required to use scheduler (^3.1).",
-                "guzzlehttp/guzzle": "Required to use the ping methods on schedules (^7.2).",
-                "illuminate/bus": "Required to use the scheduled job dispatcher (^9.0).",
-                "illuminate/container": "Required to use the scheduler (^9.0).",
-                "illuminate/filesystem": "Required to use the generator command (^9.0).",
-                "illuminate/queue": "Required to use closures for scheduled jobs (^9.0)."
+                "dragonmantank/cron-expression": "Required to use scheduler (^3.3.2).",
+                "ext-pcntl": "Required to use signal trapping.",
+                "guzzlehttp/guzzle": "Required to use the ping methods on schedules (^7.5).",
+                "illuminate/bus": "Required to use the scheduled job dispatcher (^10.0).",
+                "illuminate/container": "Required to use the scheduler (^10.0).",
+                "illuminate/filesystem": "Required to use the generator command (^10.0).",
+                "illuminate/queue": "Required to use closures for scheduled jobs (^10.0)."
             },
             "type": "library",
             "extra": {
                 "branch-alias": {
-                    "dev-master": "9.x-dev"
+                    "dev-master": "10.x-dev"
                 }
             },
             "autoload": {
@@ -3439,31 +3508,82 @@
                 "issues": "https://github.com/laravel/framework/issues",
                 "source": "https://github.com/laravel/framework"
             },
-            "time": "2022-07-12T13:39:25+00:00"
+            "time": "2024-03-21T13:10:17+00:00"
+        },
+        {
+            "name": "illuminate/container",
+            "version": "v10.48.10",
+            "source": {
+                "type": "git",
+                "url": "https://github.com/illuminate/container.git",
+                "reference": "ddc26273085fad3c471b2602ad820e0097ff7939"
+            },
+            "dist": {
+                "type": "zip",
+                "url": "https://api.github.com/repos/illuminate/container/zipball/ddc26273085fad3c471b2602ad820e0097ff7939",
+                "reference": "ddc26273085fad3c471b2602ad820e0097ff7939",
+                "shasum": ""
+            },
+            "require": {
+                "illuminate/contracts": "^10.0",
+                "php": "^8.1",
+                "psr/container": "^1.1.1|^2.0.1"
+            },
+            "provide": {
+                "psr/container-implementation": "1.1|2.0"
+            },
+            "type": "library",
+            "extra": {
+                "branch-alias": {
+                    "dev-master": "10.x-dev"
+                }
+            },
+            "autoload": {
+                "psr-4": {
+                    "Illuminate\\Container\\": ""
+                }
+            },
+            "notification-url": "https://packagist.org/downloads/",
+            "license": [
+                "MIT"
+            ],
+            "authors": [
+                {
+                    "name": "Taylor Otwell",
+                    "email": "taylor@laravel.com"
+                }
+            ],
+            "description": "The Illuminate Container package.",
+            "homepage": "https://laravel.com",
+            "support": {
+                "issues": "https://github.com/laravel/framework/issues",
+                "source": "https://github.com/laravel/framework"
+            },
+            "time": "2023-06-18T09:12:03+00:00"
         },
         {
             "name": "illuminate/contracts",
-            "version": "v9.52.16",
+            "version": "v10.48.10",
             "source": {
                 "type": "git",
                 "url": "https://github.com/illuminate/contracts.git",
-                "reference": "44f65d723b13823baa02ff69751a5948bde60c22"
+                "reference": "8d7152c4a1f5d9cf7da3e8b71f23e4556f6138ac"
             },
             "dist": {
                 "type": "zip",
-                "url": "https://api.github.com/repos/illuminate/contracts/zipball/44f65d723b13823baa02ff69751a5948bde60c22",
-                "reference": "44f65d723b13823baa02ff69751a5948bde60c22",
+                "url": "https://api.github.com/repos/illuminate/contracts/zipball/8d7152c4a1f5d9cf7da3e8b71f23e4556f6138ac",
+                "reference": "8d7152c4a1f5d9cf7da3e8b71f23e4556f6138ac",
                 "shasum": ""
             },
             "require": {
-                "php": "^8.0.2",
+                "php": "^8.1",
                 "psr/container": "^1.1.1|^2.0.1",
                 "psr/simple-cache": "^1.0|^2.0|^3.0"
             },
             "type": "library",
             "extra": {
                 "branch-alias": {
-                    "dev-master": "9.x-dev"
+                    "dev-master": "10.x-dev"
                 }
             },
             "autoload": {
@@ -3487,29 +3607,151 @@
                 "issues": "https://github.com/laravel/framework/issues",
                 "source": "https://github.com/laravel/framework"
             },
-            "time": "2023-02-08T14:36:30+00:00"
+            "time": "2024-01-15T18:52:32+00:00"
+        },
+        {
+            "name": "illuminate/events",
+            "version": "v10.48.10",
+            "source": {
+                "type": "git",
+                "url": "https://github.com/illuminate/events.git",
+                "reference": "a931bfa88edc6ac52c9abbfd7b769343d321d3eb"
+            },
+            "dist": {
+                "type": "zip",
+                "url": "https://api.github.com/repos/illuminate/events/zipball/a931bfa88edc6ac52c9abbfd7b769343d321d3eb",
+                "reference": "a931bfa88edc6ac52c9abbfd7b769343d321d3eb",
+                "shasum": ""
+            },
+            "require": {
+                "illuminate/bus": "^10.0",
+                "illuminate/collections": "^10.0",
+                "illuminate/container": "^10.0",
+                "illuminate/contracts": "^10.0",
+                "illuminate/macroable": "^10.0",
+                "illuminate/support": "^10.0",
+                "php": "^8.1"
+            },
+            "type": "library",
+            "extra": {
+                "branch-alias": {
+                    "dev-master": "10.x-dev"
+                }
+            },
+            "autoload": {
+                "files": [
+                    "functions.php"
+                ],
+                "psr-4": {
+                    "Illuminate\\Events\\": ""
+                }
+            },
+            "notification-url": "https://packagist.org/downloads/",
+            "license": [
+                "MIT"
+            ],
+            "authors": [
+                {
+                    "name": "Taylor Otwell",
+                    "email": "taylor@laravel.com"
+                }
+            ],
+            "description": "The Illuminate Events package.",
+            "homepage": "https://laravel.com",
+            "support": {
+                "issues": "https://github.com/laravel/framework/issues",
+                "source": "https://github.com/laravel/framework"
+            },
+            "time": "2024-03-04T14:41:04+00:00"
+        },
+        {
+            "name": "illuminate/filesystem",
+            "version": "v10.48.10",
+            "source": {
+                "type": "git",
+                "url": "https://github.com/illuminate/filesystem.git",
+                "reference": "592fb581a52fba43bf78c2e4b22db540c9f9f149"
+            },
+            "dist": {
+                "type": "zip",
+                "url": "https://api.github.com/repos/illuminate/filesystem/zipball/592fb581a52fba43bf78c2e4b22db540c9f9f149",
+                "reference": "592fb581a52fba43bf78c2e4b22db540c9f9f149",
+                "shasum": ""
+            },
+            "require": {
+                "illuminate/collections": "^10.0",
+                "illuminate/contracts": "^10.0",
+                "illuminate/macroable": "^10.0",
+                "illuminate/support": "^10.0",
+                "php": "^8.1",
+                "symfony/finder": "^6.2"
+            },
+            "suggest": {
+                "ext-fileinfo": "Required to use the Filesystem class.",
+                "ext-ftp": "Required to use the Flysystem FTP driver.",
+                "ext-hash": "Required to use the Filesystem class.",
+                "illuminate/http": "Required for handling uploaded files (^7.0).",
+                "league/flysystem": "Required to use the Flysystem local driver (^3.0.16).",
+                "league/flysystem-aws-s3-v3": "Required to use the Flysystem S3 driver (^3.0).",
+                "league/flysystem-ftp": "Required to use the Flysystem FTP driver (^3.0).",
+                "league/flysystem-sftp-v3": "Required to use the Flysystem SFTP driver (^3.0).",
+                "psr/http-message": "Required to allow Storage::put to accept a StreamInterface (^1.0).",
+                "symfony/filesystem": "Required to enable support for relative symbolic links (^6.2).",
+                "symfony/mime": "Required to enable support for guessing extensions (^6.2)."
+            },
+            "type": "library",
+            "extra": {
+                "branch-alias": {
+                    "dev-master": "10.x-dev"
+                }
+            },
+            "autoload": {
+                "files": [
+                    "functions.php"
+                ],
+                "psr-4": {
+                    "Illuminate\\Filesystem\\": ""
+                }
+            },
+            "notification-url": "https://packagist.org/downloads/",
+            "license": [
+                "MIT"
+            ],
+            "authors": [
+                {
+                    "name": "Taylor Otwell",
+                    "email": "taylor@laravel.com"
+                }
+            ],
+            "description": "The Illuminate Filesystem package.",
+            "homepage": "https://laravel.com",
+            "support": {
+                "issues": "https://github.com/laravel/framework/issues",
+                "source": "https://github.com/laravel/framework"
+            },
+            "time": "2024-03-11T21:45:53+00:00"
         },
         {
             "name": "illuminate/macroable",
-            "version": "v9.52.16",
+            "version": "v10.48.10",
             "source": {
                 "type": "git",
                 "url": "https://github.com/illuminate/macroable.git",
-                "reference": "e3bfaf6401742a9c6abca61b9b10e998e5b6449a"
+                "reference": "dff667a46ac37b634dcf68909d9d41e94dc97c27"
             },
             "dist": {
                 "type": "zip",
-                "url": "https://api.github.com/repos/illuminate/macroable/zipball/e3bfaf6401742a9c6abca61b9b10e998e5b6449a",
-                "reference": "e3bfaf6401742a9c6abca61b9b10e998e5b6449a",
+                "url": "https://api.github.com/repos/illuminate/macroable/zipball/dff667a46ac37b634dcf68909d9d41e94dc97c27",
+                "reference": "dff667a46ac37b634dcf68909d9d41e94dc97c27",
                 "shasum": ""
             },
             "require": {
-                "php": "^8.0.2"
+                "php": "^8.1"
             },
             "type": "library",
             "extra": {
                 "branch-alias": {
-                    "dev-master": "9.x-dev"
+                    "dev-master": "10.x-dev"
                 }
             },
             "autoload": {
@@ -3533,20 +3775,68 @@
                 "issues": "https://github.com/laravel/framework/issues",
                 "source": "https://github.com/laravel/framework"
             },
-            "time": "2022-08-09T13:29:29+00:00"
+            "time": "2023-06-05T12:46:42+00:00"
+        },
+        {
+            "name": "illuminate/pipeline",
+            "version": "v10.48.10",
+            "source": {
+                "type": "git",
+                "url": "https://github.com/illuminate/pipeline.git",
+                "reference": "f802187e917a171332cc90f8c1a102939c57405d"
+            },
+            "dist": {
+                "type": "zip",
+                "url": "https://api.github.com/repos/illuminate/pipeline/zipball/f802187e917a171332cc90f8c1a102939c57405d",
+                "reference": "f802187e917a171332cc90f8c1a102939c57405d",
+                "shasum": ""
+            },
+            "require": {
+                "illuminate/contracts": "^10.0",
+                "illuminate/support": "^10.0",
+                "php": "^8.1"
+            },
+            "type": "library",
+            "extra": {
+                "branch-alias": {
+                    "dev-master": "10.x-dev"
+                }
+            },
+            "autoload": {
+                "psr-4": {
+                    "Illuminate\\Pipeline\\": ""
+                }
+            },
+            "notification-url": "https://packagist.org/downloads/",
+            "license": [
+                "MIT"
+            ],
+            "authors": [
+                {
+                    "name": "Taylor Otwell",
+                    "email": "taylor@laravel.com"
+                }
+            ],
+            "description": "The Illuminate Pipeline package.",
+            "homepage": "https://laravel.com",
+            "support": {
+                "issues": "https://github.com/laravel/framework/issues",
+                "source": "https://github.com/laravel/framework"
+            },
+            "time": "2023-12-19T14:47:26+00:00"
         },
         {
             "name": "illuminate/support",
-            "version": "v9.52.16",
+            "version": "v10.48.10",
             "source": {
                 "type": "git",
                 "url": "https://github.com/illuminate/support.git",
-                "reference": "223c608dbca27232df6213f776bfe7bdeec24874"
+                "reference": "ee3a1aaed36d916654ce0ae09dfbd38644a4f582"
             },
             "dist": {
                 "type": "zip",
-                "url": "https://api.github.com/repos/illuminate/support/zipball/223c608dbca27232df6213f776bfe7bdeec24874",
-                "reference": "223c608dbca27232df6213f776bfe7bdeec24874",
+                "url": "https://api.github.com/repos/illuminate/support/zipball/ee3a1aaed36d916654ce0ae09dfbd38644a4f582",
+                "reference": "ee3a1aaed36d916654ce0ae09dfbd38644a4f582",
                 "shasum": ""
             },
             "require": {
@@ -3554,30 +3844,30 @@
                 "ext-ctype": "*",
                 "ext-filter": "*",
                 "ext-mbstring": "*",
-                "illuminate/collections": "^9.0",
-                "illuminate/conditionable": "^9.0",
-                "illuminate/contracts": "^9.0",
-                "illuminate/macroable": "^9.0",
-                "nesbot/carbon": "^2.62.1",
-                "php": "^8.0.2",
+                "illuminate/collections": "^10.0",
+                "illuminate/conditionable": "^10.0",
+                "illuminate/contracts": "^10.0",
+                "illuminate/macroable": "^10.0",
+                "nesbot/carbon": "^2.67",
+                "php": "^8.1",
                 "voku/portable-ascii": "^2.0"
             },
             "conflict": {
                 "tightenco/collect": "<5.5.33"
             },
             "suggest": {
-                "illuminate/filesystem": "Required to use the composer class (^9.0).",
+                "illuminate/filesystem": "Required to use the composer class (^10.0).",
                 "league/commonmark": "Required to use Str::markdown() and Stringable::markdown() (^2.0.2).",
                 "ramsey/uuid": "Required to use Str::uuid() (^4.7).",
-                "symfony/process": "Required to use the composer class (^6.0).",
-                "symfony/uid": "Required to use Str::ulid() (^6.0).",
-                "symfony/var-dumper": "Required to use the dd function (^6.0).",
+                "symfony/process": "Required to use the composer class (^6.2).",
+                "symfony/uid": "Required to use Str::ulid() (^6.2).",
+                "symfony/var-dumper": "Required to use the dd function (^6.2).",
                 "vlucas/phpdotenv": "Required to use the Env class and env helper (^5.4.1)."
             },
             "type": "library",
             "extra": {
                 "branch-alias": {
-                    "dev-master": "9.x-dev"
+                    "dev-master": "10.x-dev"
                 }
             },
             "autoload": {
@@ -3604,20 +3894,132 @@
                 "issues": "https://github.com/laravel/framework/issues",
                 "source": "https://github.com/laravel/framework"
             },
-            "time": "2023-06-11T21:11:53+00:00"
+            "time": "2024-04-07T17:47:33+00:00"
+        },
+        {
+            "name": "illuminate/view",
+            "version": "v10.48.10",
+            "source": {
+                "type": "git",
+                "url": "https://github.com/illuminate/view.git",
+                "reference": "504d55e0f2d90c75588627e6a77a4d1228cf1a02"
+            },
+            "dist": {
+                "type": "zip",
+                "url": "https://api.github.com/repos/illuminate/view/zipball/504d55e0f2d90c75588627e6a77a4d1228cf1a02",
+                "reference": "504d55e0f2d90c75588627e6a77a4d1228cf1a02",
+                "shasum": ""
+            },
+            "require": {
+                "ext-tokenizer": "*",
+                "illuminate/collections": "^10.0",
+                "illuminate/container": "^10.0",
+                "illuminate/contracts": "^10.0",
+                "illuminate/events": "^10.0",
+                "illuminate/filesystem": "^10.0",
+                "illuminate/macroable": "^10.0",
+                "illuminate/support": "^10.0",
+                "php": "^8.1"
+            },
+            "type": "library",
+            "extra": {
+                "branch-alias": {
+                    "dev-master": "10.x-dev"
+                }
+            },
+            "autoload": {
+                "psr-4": {
+                    "Illuminate\\View\\": ""
+                }
+            },
+            "notification-url": "https://packagist.org/downloads/",
+            "license": [
+                "MIT"
+            ],
+            "authors": [
+                {
+                    "name": "Taylor Otwell",
+                    "email": "taylor@laravel.com"
+                }
+            ],
+            "description": "The Illuminate View package.",
+            "homepage": "https://laravel.com",
+            "support": {
+                "issues": "https://github.com/laravel/framework/issues",
+                "source": "https://github.com/laravel/framework"
+            },
+            "time": "2024-03-12T16:33:42+00:00"
+        },
+        {
+            "name": "laravel/prompts",
+            "version": "v0.1.21",
+            "source": {
+                "type": "git",
+                "url": "https://github.com/laravel/prompts.git",
+                "reference": "23ea808e8a145653e0ab29e30d4385e49f40a920"
+            },
+            "dist": {
+                "type": "zip",
+                "url": "https://api.github.com/repos/laravel/prompts/zipball/23ea808e8a145653e0ab29e30d4385e49f40a920",
+                "reference": "23ea808e8a145653e0ab29e30d4385e49f40a920",
+                "shasum": ""
+            },
+            "require": {
+                "ext-mbstring": "*",
+                "illuminate/collections": "^10.0|^11.0",
+                "php": "^8.1",
+                "symfony/console": "^6.2|^7.0"
+            },
+            "conflict": {
+                "illuminate/console": ">=10.17.0 <10.25.0",
+                "laravel/framework": ">=10.17.0 <10.25.0"
+            },
+            "require-dev": {
+                "mockery/mockery": "^1.5",
+                "pestphp/pest": "^2.3",
+                "phpstan/phpstan": "^1.11",
+                "phpstan/phpstan-mockery": "^1.1"
+            },
+            "suggest": {
+                "ext-pcntl": "Required for the spinner to be animated."
+            },
+            "type": "library",
+            "extra": {
+                "branch-alias": {
+                    "dev-main": "0.1.x-dev"
+                }
+            },
+            "autoload": {
+                "files": [
+                    "src/helpers.php"
+                ],
+                "psr-4": {
+                    "Laravel\\Prompts\\": "src/"
+                }
+            },
+            "notification-url": "https://packagist.org/downloads/",
+            "license": [
+                "MIT"
+            ],
+            "description": "Add beautiful and user-friendly forms to your command-line applications.",
+            "support": {
+                "issues": "https://github.com/laravel/prompts/issues",
+                "source": "https://github.com/laravel/prompts/tree/v0.1.21"
+            },
+            "time": "2024-04-30T12:46:16+00:00"
         },
         {
             "name": "mockery/mockery",
-            "version": "1.6.9",
+            "version": "1.6.11",
             "source": {
                 "type": "git",
                 "url": "https://github.com/mockery/mockery.git",
-                "reference": "0cc058854b3195ba21dc6b1f7b1f60f4ef3a9c06"
+                "reference": "81a161d0b135df89951abd52296adf97deb0723d"
             },
             "dist": {
                 "type": "zip",
-                "url": "https://api.github.com/repos/mockery/mockery/zipball/0cc058854b3195ba21dc6b1f7b1f60f4ef3a9c06",
-                "reference": "0cc058854b3195ba21dc6b1f7b1f60f4ef3a9c06",
+                "url": "https://api.github.com/repos/mockery/mockery/zipball/81a161d0b135df89951abd52296adf97deb0723d",
+                "reference": "81a161d0b135df89951abd52296adf97deb0723d",
                 "shasum": ""
             },
             "require": {
@@ -3629,8 +4031,8 @@
                 "phpunit/phpunit": "<8.0"
             },
             "require-dev": {
-                "phpunit/phpunit": "^8.5 || ^9.6.10",
-                "symplify/easy-coding-standard": "^12.0.8"
+                "phpunit/phpunit": "^8.5 || ^9.6.17",
+                "symplify/easy-coding-standard": "^12.1.14"
             },
             "type": "library",
             "autoload": {
@@ -3687,7 +4089,7 @@
                 "security": "https://github.com/mockery/mockery/security/advisories",
                 "source": "https://github.com/mockery/mockery"
             },
-            "time": "2023-12-10T02:24:34+00:00"
+            "time": "2024-03-21T18:34:15+00:00"
         },
         {
             "name": "myclabs/deep-copy",
@@ -3912,6 +4314,92 @@
             "time": "2024-03-17T08:10:35+00:00"
         },
         {
+            "name": "nunomaduro/termwind",
+            "version": "v1.15.1",
+            "source": {
+                "type": "git",
+                "url": "https://github.com/nunomaduro/termwind.git",
+                "reference": "8ab0b32c8caa4a2e09700ea32925441385e4a5dc"
+            },
+            "dist": {
+                "type": "zip",
+                "url": "https://api.github.com/repos/nunomaduro/termwind/zipball/8ab0b32c8caa4a2e09700ea32925441385e4a5dc",
+                "reference": "8ab0b32c8caa4a2e09700ea32925441385e4a5dc",
+                "shasum": ""
+            },
+            "require": {
+                "ext-mbstring": "*",
+                "php": "^8.0",
+                "symfony/console": "^5.3.0|^6.0.0"
+            },
+            "require-dev": {
+                "ergebnis/phpstan-rules": "^1.0.",
+                "illuminate/console": "^8.0|^9.0",
+                "illuminate/support": "^8.0|^9.0",
+                "laravel/pint": "^1.0.0",
+                "pestphp/pest": "^1.21.0",
+                "pestphp/pest-plugin-mock": "^1.0",
+                "phpstan/phpstan": "^1.4.6",
+                "phpstan/phpstan-strict-rules": "^1.1.0",
+                "symfony/var-dumper": "^5.2.7|^6.0.0",
+                "thecodingmachine/phpstan-strict-rules": "^1.0.0"
+            },
+            "type": "library",
+            "extra": {
+                "laravel": {
+                    "providers": [
+                        "Termwind\\Laravel\\TermwindServiceProvider"
+                    ]
+                }
+            },
+            "autoload": {
+                "files": [
+                    "src/Functions.php"
+                ],
+                "psr-4": {
+                    "Termwind\\": "src/"
+                }
+            },
+            "notification-url": "https://packagist.org/downloads/",
+            "license": [
+                "MIT"
+            ],
+            "authors": [
+                {
+                    "name": "Nuno Maduro",
+                    "email": "enunomaduro@gmail.com"
+                }
+            ],
+            "description": "Its like Tailwind CSS, but for the console.",
+            "keywords": [
+                "cli",
+                "console",
+                "css",
+                "package",
+                "php",
+                "style"
+            ],
+            "support": {
+                "issues": "https://github.com/nunomaduro/termwind/issues",
+                "source": "https://github.com/nunomaduro/termwind/tree/v1.15.1"
+            },
+            "funding": [
+                {
+                    "url": "https://www.paypal.com/paypalme/enunomaduro",
+                    "type": "custom"
+                },
+                {
+                    "url": "https://github.com/nunomaduro",
+                    "type": "github"
+                },
+                {
+                    "url": "https://github.com/xiCO2k",
+                    "type": "github"
+                }
+            ],
+            "time": "2023-02-08T01:06:31+00:00"
+        },
+        {
             "name": "phar-io/manifest",
             "version": "2.0.4",
             "source": {
@@ -4405,16 +4893,16 @@
         },
         {
             "name": "phpunit/phpunit",
-            "version": "10.5.13",
+            "version": "10.5.20",
             "source": {
                 "type": "git",
                 "url": "https://github.com/sebastianbergmann/phpunit.git",
-                "reference": "20a63fc1c6db29b15da3bd02d4b6cf59900088a7"
+                "reference": "547d314dc24ec1e177720d45c6263fb226cc2ae3"
             },
             "dist": {
                 "type": "zip",
-                "url": "https://api.github.com/repos/sebastianbergmann/phpunit/zipball/20a63fc1c6db29b15da3bd02d4b6cf59900088a7",
-                "reference": "20a63fc1c6db29b15da3bd02d4b6cf59900088a7",
+                "url": "https://api.github.com/repos/sebastianbergmann/phpunit/zipball/547d314dc24ec1e177720d45c6263fb226cc2ae3",
+                "reference": "547d314dc24ec1e177720d45c6263fb226cc2ae3",
                 "shasum": ""
             },
             "require": {
@@ -4486,7 +4974,7 @@
             "support": {
                 "issues": "https://github.com/sebastianbergmann/phpunit/issues",
                 "security": "https://github.com/sebastianbergmann/phpunit/security/policy",
-                "source": "https://github.com/sebastianbergmann/phpunit/tree/10.5.13"
+                "source": "https://github.com/sebastianbergmann/phpunit/tree/10.5.20"
             },
             "funding": [
                 {
@@ -4502,7 +4990,7 @@
                     "type": "tidelift"
                 }
             ],
-            "time": "2024-03-12T15:37:41+00:00"
+            "time": "2024-04-24T06:32:35+00:00"
         },
         {
             "name": "psr/clock",
@@ -4859,16 +5347,16 @@
         },
         {
             "name": "sebastian/environment",
-            "version": "6.0.1",
+            "version": "6.1.0",
             "source": {
                 "type": "git",
                 "url": "https://github.com/sebastianbergmann/environment.git",
-                "reference": "43c751b41d74f96cbbd4e07b7aec9675651e2951"
+                "reference": "8074dbcd93529b357029f5cc5058fd3e43666984"
             },
             "dist": {
                 "type": "zip",
-                "url": "https://api.github.com/repos/sebastianbergmann/environment/zipball/43c751b41d74f96cbbd4e07b7aec9675651e2951",
-                "reference": "43c751b41d74f96cbbd4e07b7aec9675651e2951",
+                "url": "https://api.github.com/repos/sebastianbergmann/environment/zipball/8074dbcd93529b357029f5cc5058fd3e43666984",
+                "reference": "8074dbcd93529b357029f5cc5058fd3e43666984",
                 "shasum": ""
             },
             "require": {
@@ -4883,7 +5371,7 @@
             "type": "library",
             "extra": {
                 "branch-alias": {
-                    "dev-main": "6.0-dev"
+                    "dev-main": "6.1-dev"
                 }
             },
             "autoload": {
@@ -4911,7 +5399,7 @@
             "support": {
                 "issues": "https://github.com/sebastianbergmann/environment/issues",
                 "security": "https://github.com/sebastianbergmann/environment/security/policy",
-                "source": "https://github.com/sebastianbergmann/environment/tree/6.0.1"
+                "source": "https://github.com/sebastianbergmann/environment/tree/6.1.0"
             },
             "funding": [
                 {
@@ -4919,7 +5407,7 @@
                     "type": "github"
                 }
             ],
-            "time": "2023-04-11T05:39:26+00:00"
+            "time": "2024-03-23T08:47:14+00:00"
         },
         {
             "name": "sebastian/exporter",
@@ -5405,16 +5893,16 @@
         },
         {
             "name": "symfony/translation",
-            "version": "v6.4.4",
+            "version": "v6.4.7",
             "source": {
                 "type": "git",
                 "url": "https://github.com/symfony/translation.git",
-                "reference": "bce6a5a78e94566641b2594d17e48b0da3184a8e"
+                "reference": "7495687c58bfd88b7883823747b0656d90679123"
             },
             "dist": {
                 "type": "zip",
-                "url": "https://api.github.com/repos/symfony/translation/zipball/bce6a5a78e94566641b2594d17e48b0da3184a8e",
-                "reference": "bce6a5a78e94566641b2594d17e48b0da3184a8e",
+                "url": "https://api.github.com/repos/symfony/translation/zipball/7495687c58bfd88b7883823747b0656d90679123",
+                "reference": "7495687c58bfd88b7883823747b0656d90679123",
                 "shasum": ""
             },
             "require": {
@@ -5480,7 +5968,7 @@
             "description": "Provides tools to internationalize your application",
             "homepage": "https://symfony.com",
             "support": {
-                "source": "https://github.com/symfony/translation/tree/v6.4.4"
+                "source": "https://github.com/symfony/translation/tree/v6.4.7"
             },
             "funding": [
                 {
@@ -5496,20 +5984,20 @@
                     "type": "tidelift"
                 }
             ],
-            "time": "2024-02-20T13:16:58+00:00"
+            "time": "2024-04-18T09:22:46+00:00"
         },
         {
             "name": "symfony/translation-contracts",
-            "version": "v3.4.1",
+            "version": "v3.5.0",
             "source": {
                 "type": "git",
                 "url": "https://github.com/symfony/translation-contracts.git",
-                "reference": "06450585bf65e978026bda220cdebca3f867fde7"
+                "reference": "b9d2189887bb6b2e0367a9fc7136c5239ab9b05a"
             },
             "dist": {
                 "type": "zip",
-                "url": "https://api.github.com/repos/symfony/translation-contracts/zipball/06450585bf65e978026bda220cdebca3f867fde7",
-                "reference": "06450585bf65e978026bda220cdebca3f867fde7",
+                "url": "https://api.github.com/repos/symfony/translation-contracts/zipball/b9d2189887bb6b2e0367a9fc7136c5239ab9b05a",
+                "reference": "b9d2189887bb6b2e0367a9fc7136c5239ab9b05a",
                 "shasum": ""
             },
             "require": {
@@ -5518,7 +6006,7 @@
             "type": "library",
             "extra": {
                 "branch-alias": {
-                    "dev-main": "3.4-dev"
+                    "dev-main": "3.5-dev"
                 },
                 "thanks": {
                     "name": "symfony/contracts",
@@ -5558,7 +6046,7 @@
                 "standards"
             ],
             "support": {
-                "source": "https://github.com/symfony/translation-contracts/tree/v3.4.1"
+                "source": "https://github.com/symfony/translation-contracts/tree/v3.5.0"
             },
             "funding": [
                 {
@@ -5574,36 +6062,38 @@
                     "type": "tidelift"
                 }
             ],
-            "time": "2023-12-26T14:02:43+00:00"
+            "time": "2024-04-18T09:32:20+00:00"
         },
         {
             "name": "symfony/var-dumper",
-            "version": "v7.0.4",
+            "version": "v6.4.7",
             "source": {
                 "type": "git",
                 "url": "https://github.com/symfony/var-dumper.git",
-                "reference": "e03ad7c1535e623edbb94c22cc42353e488c6670"
+                "reference": "7a9cd977cd1c5fed3694bee52990866432af07d7"
             },
             "dist": {
                 "type": "zip",
-                "url": "https://api.github.com/repos/symfony/var-dumper/zipball/e03ad7c1535e623edbb94c22cc42353e488c6670",
-                "reference": "e03ad7c1535e623edbb94c22cc42353e488c6670",
+                "url": "https://api.github.com/repos/symfony/var-dumper/zipball/7a9cd977cd1c5fed3694bee52990866432af07d7",
+                "reference": "7a9cd977cd1c5fed3694bee52990866432af07d7",
                 "shasum": ""
             },
             "require": {
-                "php": ">=8.2",
+                "php": ">=8.1",
+                "symfony/deprecation-contracts": "^2.5|^3",
                 "symfony/polyfill-mbstring": "~1.0"
             },
             "conflict": {
-                "symfony/console": "<6.4"
+                "symfony/console": "<5.4"
             },
             "require-dev": {
                 "ext-iconv": "*",
-                "symfony/console": "^6.4|^7.0",
-                "symfony/http-kernel": "^6.4|^7.0",
-                "symfony/process": "^6.4|^7.0",
-                "symfony/uid": "^6.4|^7.0",
-                "twig/twig": "^3.0.4"
+                "symfony/console": "^5.4|^6.0|^7.0",
+                "symfony/error-handler": "^6.3|^7.0",
+                "symfony/http-kernel": "^5.4|^6.0|^7.0",
+                "symfony/process": "^5.4|^6.0|^7.0",
+                "symfony/uid": "^5.4|^6.0|^7.0",
+                "twig/twig": "^2.13|^3.0.4"
             },
             "bin": [
                 "Resources/bin/var-dump-server"
@@ -5641,7 +6131,7 @@
                 "dump"
             ],
             "support": {
-                "source": "https://github.com/symfony/var-dumper/tree/v7.0.4"
+                "source": "https://github.com/symfony/var-dumper/tree/v6.4.7"
             },
             "funding": [
                 {
@@ -5657,7 +6147,7 @@
                     "type": "tidelift"
                 }
             ],
-            "time": "2024-02-15T11:33:06+00:00"
+            "time": "2024-04-18T09:22:46+00:00"
         },
         {
             "name": "thecodingmachine/phpstan-strict-rules",
diff --git a/pkgs/development/php-packages/phpinsights/default.nix b/pkgs/development/php-packages/phpinsights/default.nix
index dd5b1ebce02b..621ac9de0b29 100644
--- a/pkgs/development/php-packages/phpinsights/default.nix
+++ b/pkgs/development/php-packages/phpinsights/default.nix
@@ -1,6 +1,7 @@
-{ lib
-, fetchFromGitHub
-, php
+{
+  lib,
+  fetchFromGitHub,
+  php,
 }:
 
 php.buildComposerProject (finalAttrs: {
@@ -14,7 +15,7 @@ php.buildComposerProject (finalAttrs: {
     hash = "sha256-7ATlfAlCFv78JSKg5cD/VcYoq/EAM/6/GjH3lkfVCJ8=";
   };
 
-  vendorHash = "sha256-ykAv7laYMvzd+uD6raMRQiZmCEa0ELQj1hJPb8UvjCk=";
+  vendorHash = "sha256-MOq7xmX8wqDk9W3M2gkejyXXPTcVFFgU0ohmDpL0Tvg=";
 
   composerLock = ./composer.lock;
 
@@ -24,6 +25,6 @@ php.buildComposerProject (finalAttrs: {
     homepage = "https://phpinsights.com/";
     license = lib.licenses.mit;
     mainProgram = "phpinsights";
-    maintainers = [ ];
+    maintainers = with lib.maintainers; [ patka ];
   };
 })
diff --git a/pkgs/development/php-packages/phpmd/default.nix b/pkgs/development/php-packages/phpmd/default.nix
index 4c08728ae7bb..ae190e9102a4 100644
--- a/pkgs/development/php-packages/phpmd/default.nix
+++ b/pkgs/development/php-packages/phpmd/default.nix
@@ -1,6 +1,7 @@
-{ lib
-, fetchFromGitHub
-, php
+{
+  lib,
+  fetchFromGitHub,
+  php,
 }:
 
 php.buildComposerProject (finalAttrs: {
diff --git a/pkgs/development/php-packages/phpspy/default.nix b/pkgs/development/php-packages/phpspy/default.nix
index 4ae9f22c1a10..5cc936a63dd8 100644
--- a/pkgs/development/php-packages/phpspy/default.nix
+++ b/pkgs/development/php-packages/phpspy/default.nix
@@ -1,9 +1,10 @@
-{ lib
-, stdenv
-, fetchFromGitHub
-, php
-, testers
-, phpPackages
+{
+  lib,
+  stdenv,
+  fetchFromGitHub,
+  php,
+  testers,
+  phpPackages,
 }:
 
 stdenv.mkDerivation (finalAttrs: {
diff --git a/pkgs/development/php-packages/phpstan/default.nix b/pkgs/development/php-packages/phpstan/default.nix
index c206a881eb15..da7d11a870ff 100644
--- a/pkgs/development/php-packages/phpstan/default.nix
+++ b/pkgs/development/php-packages/phpstan/default.nix
@@ -1,17 +1,21 @@
-{ fetchFromGitHub, lib, php }:
+{
+  fetchFromGitHub,
+  lib,
+  php,
+}:
 
 php.buildComposerProject (finalAttrs: {
   pname = "phpstan";
-  version = "1.10.66";
+  version = "1.11.0";
 
   src = fetchFromGitHub {
     owner = "phpstan";
     repo = "phpstan-src";
     rev = finalAttrs.version;
-    hash = "sha256-ZEQ6oP6zyi0cL69J9ck8gAht5taPkzH+iW5ALC4saAQ=";
+    hash = "sha256-zf6u7fGMMx+DeXcS4SxyK3aQ53jnXzQ8YPrJ89vG65Y=";
   };
 
-  vendorHash = "sha256-Qp/eMhcKK32N1EMgeIspBDs28Oofwn6n2bEFKqvSx9E=";
+  vendorHash = "sha256-Uv2BoE/hTK59uxHsdm4M5hfozDw4LwwZH4MHd+vN60Y=";
   composerStrictValidation = false;
 
   meta = {
diff --git a/pkgs/development/php-packages/pinba/default.nix b/pkgs/development/php-packages/pinba/default.nix
index 7d4e020f406b..759d02b9c352 100644
--- a/pkgs/development/php-packages/pinba/default.nix
+++ b/pkgs/development/php-packages/pinba/default.nix
@@ -1,4 +1,8 @@
-{ buildPecl, lib, fetchFromGitHub }:
+{
+  buildPecl,
+  lib,
+  fetchFromGitHub,
+}:
 
 buildPecl rec {
   pname = "pinba";
@@ -7,7 +11,7 @@ buildPecl rec {
   src = fetchFromGitHub {
     owner = "tony2001";
     repo = "pinba_extension";
-    rev = "RELEASE_${lib.replaceStrings ["."] ["_"] version}";
+    rev = "RELEASE_${lib.replaceStrings [ "." ] [ "_" ] version}";
     sha256 = "0wqcqq6sb51wiawa37hbd1h9dbvmyyndzdvz87xqji7lpr9vn8jy";
   };
 
diff --git a/pkgs/development/php-packages/protobuf/default.nix b/pkgs/development/php-packages/protobuf/default.nix
index 94c15c95946a..4d84d9183214 100644
--- a/pkgs/development/php-packages/protobuf/default.nix
+++ b/pkgs/development/php-packages/protobuf/default.nix
@@ -1,4 +1,8 @@
-{ buildPecl, lib, pcre2 }:
+{
+  buildPecl,
+  lib,
+  pcre2,
+}:
 
 buildPecl {
   pname = "protobuf";
diff --git a/pkgs/development/php-packages/psalm/default.nix b/pkgs/development/php-packages/psalm/default.nix
index b20bbbf301c6..842b96a828fa 100644
--- a/pkgs/development/php-packages/psalm/default.nix
+++ b/pkgs/development/php-packages/psalm/default.nix
@@ -1,6 +1,7 @@
-{ lib
-, fetchFromGitHub
-, php
+{
+  lib,
+  fetchFromGitHub,
+  php,
 }:
 
 php.buildComposerProject (finalAttrs: {
diff --git a/pkgs/development/php-packages/psysh/default.nix b/pkgs/development/php-packages/psysh/default.nix
index 1f443f136578..1e75910a496c 100644
--- a/pkgs/development/php-packages/psysh/default.nix
+++ b/pkgs/development/php-packages/psysh/default.nix
@@ -1,4 +1,8 @@
-{ fetchFromGitHub, lib, php }:
+{
+  fetchFromGitHub,
+  lib,
+  php,
+}:
 
 php.buildComposerProject (finalAttrs: {
   pname = "psysh";
diff --git a/pkgs/development/php-packages/rdkafka/default.nix b/pkgs/development/php-packages/rdkafka/default.nix
index f07bc87dd39b..71d411b594e9 100644
--- a/pkgs/development/php-packages/rdkafka/default.nix
+++ b/pkgs/development/php-packages/rdkafka/default.nix
@@ -1,4 +1,9 @@
-{ buildPecl, lib, rdkafka, pcre2 }:
+{
+  buildPecl,
+  lib,
+  rdkafka,
+  pcre2,
+}:
 
 buildPecl {
   pname = "rdkafka";
@@ -6,7 +11,10 @@ buildPecl {
   version = "6.0.3";
   sha256 = "sha256-Euqrl21JaX4x8WOLR4ietexhrbdYcIlBESsVf47H3Ug=";
 
-  buildInputs = [ rdkafka pcre2 ];
+  buildInputs = [
+    rdkafka
+    pcre2
+  ];
 
   postPhpize = ''
     substituteInPlace configure \
diff --git a/pkgs/development/php-packages/redis/default.nix b/pkgs/development/php-packages/redis/default.nix
index 4fc9d9464793..b5219da07da3 100644
--- a/pkgs/development/php-packages/redis/default.nix
+++ b/pkgs/development/php-packages/redis/default.nix
@@ -1,8 +1,14 @@
-{ buildPecl, lib, php, fetchFromGitHub }:
+{
+  buildPecl,
+  lib,
+  php,
+  fetchFromGitHub,
+}:
 
 let
   version = "6.0.2";
-in buildPecl {
+in
+buildPecl {
   inherit version;
   pname = "redis";
 
@@ -13,9 +19,7 @@ in buildPecl {
     hash = "sha256-Ie31zak6Rqxm2+jGXWg6KN4czHe9e+190jZRQ5VoB+M=";
   };
 
-  internalDeps = with php.extensions; [
-    session
-  ];
+  internalDeps = with php.extensions; [ session ];
 
   meta = with lib; {
     changelog = "https://github.com/phpredis/phpredis/releases/tag/${version}";
diff --git a/pkgs/development/php-packages/relay/default.nix b/pkgs/development/php-packages/relay/default.nix
index ee393c91d568..3120607482c7 100644
--- a/pkgs/development/php-packages/relay/default.nix
+++ b/pkgs/development/php-packages/relay/default.nix
@@ -1,15 +1,16 @@
-{ stdenv
-, lib
-, fetchurl
-, php
-, openssl
-, hiredis
-, zstd
-, lz4
-, autoPatchelfHook
-, writeShellScript
-, curl
-, common-updater-scripts
+{
+  stdenv,
+  lib,
+  fetchurl,
+  php,
+  openssl,
+  hiredis,
+  zstd,
+  lz4,
+  autoPatchelfHook,
+  writeShellScript,
+  curl,
+  common-updater-scripts,
 }:
 
 let
@@ -53,11 +54,19 @@ let
     };
   };
 
-  makeSource = { system, phpMajor }: fetchurl {
-    url = "https://builds.r2.relay.so/v${version}/relay-v${version}-php"
-      + phpMajor + "-" + hashes.${system}.platform + ".tar.gz";
-    sha256 = hashes.${system}.hash.${phpMajor} or (throw "Unsupported PHP version for relay ${phpMajor} on ${system}");
-  };
+  makeSource =
+    { system, phpMajor }:
+    fetchurl {
+      url =
+        "https://builds.r2.relay.so/v${version}/relay-v${version}-php"
+        + phpMajor
+        + "-"
+        + hashes.${system}.platform
+        + ".tar.gz";
+      sha256 =
+        hashes.${system}.hash.${phpMajor}
+          or (throw "Unsupported PHP version for relay ${phpMajor} on ${system}");
+    };
 in
 stdenv.mkDerivation (finalAttrs: {
   inherit version;
@@ -68,50 +77,65 @@ stdenv.mkDerivation (finalAttrs: {
     system = stdenv.hostPlatform.system;
     phpMajor = lib.versions.majorMinor php.version;
   };
-  nativeBuildInputs = lib.optionals (!stdenv.isDarwin) [
-    autoPatchelfHook
-  ];
+  nativeBuildInputs = lib.optionals (!stdenv.isDarwin) [ autoPatchelfHook ];
   buildInputs = lib.optionals (!stdenv.isDarwin) [
     openssl
     zstd
     lz4
   ];
-  installPhase = ''
-    runHook preInstall
-
-    mkdir -p $out/lib/php/extensions
-    cp relay-pkg.so $out/lib/php/extensions/relay.so
-    chmod +w $out/lib/php/extensions/relay.so
-  '' + (if stdenv.isDarwin then
-    let
-      args = lib.strings.concatMapStrings
-        (v: " -change ${v.name}" + " ${lib.strings.makeLibraryPath [ v.value ]}/${builtins.baseNameOf v.name}")
-        (with lib.attrsets; [
-          (nameValuePair "/opt/homebrew/opt/hiredis/lib/libhiredis.1.1.0.dylib" hiredis)
-          (nameValuePair "/opt/homebrew/opt/hiredis/lib/libhiredis_ssl.dylib.1.1.0" hiredis)
-          (nameValuePair "/opt/homebrew/opt/openssl@3/lib/libssl.3.dylib" openssl)
-          (nameValuePair "/opt/homebrew/opt/openssl@3/lib/libcrypto.3.dylib" openssl)
-          (nameValuePair "/opt/homebrew/opt/zstd/lib/libzstd.1.dylib" zstd)
-          (nameValuePair "/opt/homebrew/opt/lz4/lib/liblz4.1.dylib" lz4)
-        ]);
-    in
-    # fixDarwinDylibNames can't be used here because we need to completely remap .dylibs, not just add absolute paths
+  installPhase =
     ''
-      install_name_tool${args} $out/lib/php/extensions/relay.so
+      runHook preInstall
+
+      mkdir -p $out/lib/php/extensions
+      cp relay-pkg.so $out/lib/php/extensions/relay.so
+      chmod +w $out/lib/php/extensions/relay.so
     ''
-  else
-    "") + ''
-    # Random UUID that's required by the extension. Can be anything, but must be different from default.
-    sed -i "s/00000000-0000-0000-0000-000000000000/aced680f-30e9-40cc-a868-390ead14ba0c/" $out/lib/php/extensions/relay.so
-    chmod -w $out/lib/php/extensions/relay.so
+    + (
+      if stdenv.isDarwin then
+        let
+          args =
+            lib.strings.concatMapStrings
+              (
+                v:
+                " -change ${v.name}" + " ${lib.strings.makeLibraryPath [ v.value ]}/${builtins.baseNameOf v.name}"
+              )
+              (
+                with lib.attrsets;
+                [
+                  (nameValuePair "/opt/homebrew/opt/hiredis/lib/libhiredis.1.1.0.dylib" hiredis)
+                  (nameValuePair "/opt/homebrew/opt/hiredis/lib/libhiredis_ssl.dylib.1.1.0" hiredis)
+                  (nameValuePair "/opt/homebrew/opt/openssl@3/lib/libssl.3.dylib" openssl)
+                  (nameValuePair "/opt/homebrew/opt/openssl@3/lib/libcrypto.3.dylib" openssl)
+                  (nameValuePair "/opt/homebrew/opt/zstd/lib/libzstd.1.dylib" zstd)
+                  (nameValuePair "/opt/homebrew/opt/lz4/lib/liblz4.1.dylib" lz4)
+                ]
+              );
+        in
+        # fixDarwinDylibNames can't be used here because we need to completely remap .dylibs, not just add absolute paths
+        ''
+          install_name_tool${args} $out/lib/php/extensions/relay.so
+        ''
+      else
+        ""
+    )
+    + ''
+      # Random UUID that's required by the extension. Can be anything, but must be different from default.
+      sed -i "s/00000000-0000-0000-0000-000000000000/aced680f-30e9-40cc-a868-390ead14ba0c/" $out/lib/php/extensions/relay.so
+      chmod -w $out/lib/php/extensions/relay.so
 
-    runHook postInstall
-  '';
+      runHook postInstall
+    '';
 
   passthru = {
     updateScript = writeShellScript "update-${finalAttrs.pname}" ''
       set -o errexit
-      export PATH="$PATH:${lib.makeBinPath [ curl common-updater-scripts ]}"
+      export PATH="$PATH:${
+        lib.makeBinPath [
+          curl
+          common-updater-scripts
+        ]
+      }"
       NEW_VERSION=$(curl --silent https://builds.r2.relay.so/meta/builds | tail -n1 | cut -c2-)
 
       if [[ "${version}" = "$NEW_VERSION" ]]; then
@@ -129,23 +153,22 @@ stdenv.mkDerivation (finalAttrs: {
     updateables =
       builtins.listToAttrs
         # Collect all leaf attributes (containing hashes).
-        (lib.collect
-          (attrs: attrs ? name)
-          # create an attr containing
-          (lib.mapAttrsRecursive
+        (
+          lib.collect (attrs: attrs ? name)
+            # create an attr containing
             (
-              path: _value:
-                lib.nameValuePair
-                  (builtins.replaceStrings [ "." ] [ "_" ] (lib.concatStringsSep "_" path))
-                  (finalAttrs.finalPackage.overrideAttrs (attrs: {
+              lib.mapAttrsRecursive (
+                path: _value:
+                lib.nameValuePair (builtins.replaceStrings [ "." ] [ "_" ] (lib.concatStringsSep "_" path)) (
+                  finalAttrs.finalPackage.overrideAttrs (attrs: {
                     src = makeSource {
                       system = builtins.head path;
                       phpMajor = builtins.head (builtins.tail (builtins.tail path));
                     };
-                  }))
+                  })
+                )
+              ) (lib.filterAttrsRecursive (name: _value: name != "platform") hashes)
             )
-            (lib.filterAttrsRecursive (name: _value: name != "platform") hashes)
-          )
         );
   };
 
@@ -155,7 +178,15 @@ stdenv.mkDerivation (finalAttrs: {
     homepage = "https://relay.so/";
     sourceProvenance = [ sourceTypes.binaryNativeCode ];
     license = licenses.unfree;
-    maintainers = with maintainers; [ tillkruss ostrolucky ];
-    platforms = [ "x86_64-linux" "aarch64-linux" "x86_64-darwin" "aarch64-darwin" ];
+    maintainers = with maintainers; [
+      tillkruss
+      ostrolucky
+    ];
+    platforms = [
+      "x86_64-linux"
+      "aarch64-linux"
+      "x86_64-darwin"
+      "aarch64-darwin"
+    ];
   };
 })
diff --git a/pkgs/development/php-packages/rrd/default.nix b/pkgs/development/php-packages/rrd/default.nix
index a89f9a3b71b1..6df71d4be53e 100644
--- a/pkgs/development/php-packages/rrd/default.nix
+++ b/pkgs/development/php-packages/rrd/default.nix
@@ -1,4 +1,9 @@
-{ buildPecl, lib, pkg-config, rrdtool }:
+{
+  buildPecl,
+  lib,
+  pkg-config,
+  rrdtool,
+}:
 
 buildPecl {
   pname = "rrd";
@@ -6,7 +11,10 @@ buildPecl {
   version = "2.0.3";
   hash = "sha256-pCFh5YzcioU7cs/ymJidy96CsPdkVt1ZzgKFTJK3MPc=";
 
-  nativeBuildInputs = [ pkg-config rrdtool ];
+  nativeBuildInputs = [
+    pkg-config
+    rrdtool
+  ];
 
   meta = {
     description = "PHP bindings to RRD tool system";
diff --git a/pkgs/development/php-packages/smbclient/default.nix b/pkgs/development/php-packages/smbclient/default.nix
index 65cfad9ea3ad..02654068666e 100644
--- a/pkgs/development/php-packages/smbclient/default.nix
+++ b/pkgs/development/php-packages/smbclient/default.nix
@@ -1,4 +1,9 @@
-{ buildPecl, lib, samba, pkg-config }:
+{
+  buildPecl,
+  lib,
+  samba,
+  pkg-config,
+}:
 buildPecl {
   pname = "smbclient";
   version = "1.0.6";
diff --git a/pkgs/development/php-packages/snuffleupagus/default.nix b/pkgs/development/php-packages/snuffleupagus/default.nix
index c3b5d84ff195..aa5faa665afb 100644
--- a/pkgs/development/php-packages/snuffleupagus/default.nix
+++ b/pkgs/development/php-packages/snuffleupagus/default.nix
@@ -1,11 +1,12 @@
-{ stdenv
-, buildPecl
-, lib
-, libiconv
-, php
-, fetchFromGitHub
-, pcre2
-, darwin
+{
+  stdenv,
+  buildPecl,
+  lib,
+  libiconv,
+  php,
+  fetchFromGitHub,
+  pcre2,
+  darwin,
 }:
 
 buildPecl rec {
@@ -19,23 +20,19 @@ buildPecl rec {
     hash = "sha256-NwG8gBaToBaJGrZoCD7bDym7hQidWU0ArckoQCHN81o=";
   };
 
-  buildInputs = [
-    pcre2
-  ] ++ lib.optionals stdenv.isDarwin [
-    darwin.apple_sdk_11_0.frameworks.CoreFoundation
-    darwin.apple_sdk_11_0.Libsystem
-    libiconv
-  ];
+  buildInputs =
+    [ pcre2 ]
+    ++ lib.optionals stdenv.isDarwin [
+      darwin.apple_sdk_11_0.frameworks.CoreFoundation
+      darwin.apple_sdk_11_0.Libsystem
+      libiconv
+    ];
 
-  internalDeps = with php.extensions; [
-    session
-  ];
+  internalDeps = with php.extensions; [ session ];
 
   sourceRoot = "${src.name}/src";
 
-  configureFlags = [
-    "--enable-snuffleupagus"
-  ];
+  configureFlags = [ "--enable-snuffleupagus" ];
 
   postPhpize = ''
     ./configure --enable-snuffleupagus
diff --git a/pkgs/development/php-packages/spx/default.nix b/pkgs/development/php-packages/spx/default.nix
index b6f7598ffe5a..10bf66272615 100644
--- a/pkgs/development/php-packages/spx/default.nix
+++ b/pkgs/development/php-packages/spx/default.nix
@@ -1,8 +1,14 @@
-{ buildPecl, lib, fetchFromGitHub, zlib }:
+{
+  buildPecl,
+  lib,
+  fetchFromGitHub,
+  zlib,
+}:
 
 let
   version = "0.4.15";
-in buildPecl {
+in
+buildPecl {
   inherit version;
   pname = "spx";
 
@@ -13,9 +19,7 @@ in buildPecl {
     hash = "sha256-gw6wbPt1Qy0vNfT0flq7bxpnGU3SgJvPVhk8H0Imvx4=";
   };
 
-  configureFlags = [
-    "--with-zlib-dir=${zlib.dev}"
-  ];
+  configureFlags = [ "--with-zlib-dir=${zlib.dev}" ];
 
   preConfigure = ''
     substituteInPlace Makefile.frag \
diff --git a/pkgs/development/php-packages/sqlsrv/default.nix b/pkgs/development/php-packages/sqlsrv/default.nix
index 6bbf7cc4f6d1..303f2327d1e5 100644
--- a/pkgs/development/php-packages/sqlsrv/default.nix
+++ b/pkgs/development/php-packages/sqlsrv/default.nix
@@ -1,4 +1,10 @@
-{ stdenv, buildPecl, lib, unixODBC, libiconv }:
+{
+  stdenv,
+  buildPecl,
+  lib,
+  unixODBC,
+  libiconv,
+}:
 
 buildPecl {
   pname = "sqlsrv";
@@ -6,9 +12,7 @@ buildPecl {
   version = "5.10.1";
   sha256 = "sha256-XNrttNiihjQ+azuZmS2fy0So+2ndAqpde8IOsupeWdI=";
 
-  buildInputs = [
-    unixODBC
-  ] ++ lib.optionals stdenv.isDarwin [ libiconv ];
+  buildInputs = [ unixODBC ] ++ lib.optionals stdenv.isDarwin [ libiconv ];
 
   meta = with lib; {
     description = "Microsoft Drivers for PHP for SQL Server";
diff --git a/pkgs/development/php-packages/ssh2/default.nix b/pkgs/development/php-packages/ssh2/default.nix
index 058702d65c0b..d3ff860de3ad 100644
--- a/pkgs/development/php-packages/ssh2/default.nix
+++ b/pkgs/development/php-packages/ssh2/default.nix
@@ -1,4 +1,8 @@
-{ buildPecl, lib, libssh2 }:
+{
+  buildPecl,
+  lib,
+  libssh2,
+}:
 
 buildPecl rec {
   version = "1.3.1";
diff --git a/pkgs/development/php-packages/swoole/default.nix b/pkgs/development/php-packages/swoole/default.nix
index f9dcb781c0e9..f519522a8357 100644
--- a/pkgs/development/php-packages/swoole/default.nix
+++ b/pkgs/development/php-packages/swoole/default.nix
@@ -1,15 +1,17 @@
-{ lib
-, stdenv
-, buildPecl
-, php
-, valgrind
-, pcre2
-, fetchFromGitHub
- }:
+{
+  lib,
+  stdenv,
+  buildPecl,
+  php,
+  valgrind,
+  pcre2,
+  fetchFromGitHub,
+}:
 
 let
   version = "5.1.2";
-in buildPecl {
+in
+buildPecl {
   inherit version;
   pname = "swoole";
 
diff --git a/pkgs/development/php-packages/uv/default.nix b/pkgs/development/php-packages/uv/default.nix
index d681113ec6bc..1bbc6450d0b2 100644
--- a/pkgs/development/php-packages/uv/default.nix
+++ b/pkgs/development/php-packages/uv/default.nix
@@ -1,4 +1,9 @@
-{ buildPecl, lib, fetchFromGitHub, libuv }:
+{
+  buildPecl,
+  lib,
+  fetchFromGitHub,
+  libuv,
+}:
 
 buildPecl rec {
   pname = "uv";
diff --git a/pkgs/development/php-packages/vld/default.nix b/pkgs/development/php-packages/vld/default.nix
index 8e5f7dec4039..6ae6a60005f2 100644
--- a/pkgs/development/php-packages/vld/default.nix
+++ b/pkgs/development/php-packages/vld/default.nix
@@ -1,11 +1,13 @@
-{ lib
-, buildPecl
-, fetchFromGitHub
+{
+  lib,
+  buildPecl,
+  fetchFromGitHub,
 }:
 
 let
   version = "0.18.0";
-in buildPecl {
+in
+buildPecl {
   inherit version;
 
   pname = "vld";
@@ -20,7 +22,7 @@ in buildPecl {
   # Tests relies on PHP 7.0
   doCheck = false;
 
-  meta =  {
+  meta = {
     changelog = "https://github.com/derickr/vld/releases/tag/${version}";
     description = "The Vulcan Logic Dumper hooks into the Zend Engine and dumps all the opcodes (execution units) of a script.";
     homepage = "https://github.com/derickr/vld";
diff --git a/pkgs/development/php-packages/xdebug/default.nix b/pkgs/development/php-packages/xdebug/default.nix
index 3b5caffb963d..83e6950b0fe7 100644
--- a/pkgs/development/php-packages/xdebug/default.nix
+++ b/pkgs/development/php-packages/xdebug/default.nix
@@ -1,8 +1,13 @@
-{ buildPecl, lib, fetchFromGitHub }:
+{
+  buildPecl,
+  lib,
+  fetchFromGitHub,
+}:
 
 let
   version = "3.3.2";
-in buildPecl {
+in
+buildPecl {
   inherit version;
 
   pname = "xdebug";
diff --git a/pkgs/development/php-packages/yaml/default.nix b/pkgs/development/php-packages/yaml/default.nix
index aa825107715d..e3fec9a5d885 100644
--- a/pkgs/development/php-packages/yaml/default.nix
+++ b/pkgs/development/php-packages/yaml/default.nix
@@ -1,4 +1,9 @@
-{ buildPecl, lib, pkg-config, libyaml }:
+{
+  buildPecl,
+  lib,
+  pkg-config,
+  libyaml,
+}:
 
 buildPecl {
   pname = "yaml";
@@ -8,7 +13,10 @@ buildPecl {
 
   configureFlags = [ "--with-yaml=${libyaml.dev}" ];
 
-  nativeBuildInputs = [ pkg-config libyaml ];
+  nativeBuildInputs = [
+    pkg-config
+    libyaml
+  ];
 
   meta = {
     description = "YAML-1.1 parser and emitter";
diff --git a/pkgs/development/php-packages/zstd/default.nix b/pkgs/development/php-packages/zstd/default.nix
index a9428ca477a0..73334f675c3d 100644
--- a/pkgs/development/php-packages/zstd/default.nix
+++ b/pkgs/development/php-packages/zstd/default.nix
@@ -1,8 +1,15 @@
-{ buildPecl, lib, zstd, pkg-config, fetchFromGitHub }:
+{
+  buildPecl,
+  lib,
+  zstd,
+  pkg-config,
+  fetchFromGitHub,
+}:
 
 let
   version = "0.13.3";
-in buildPecl {
+in
+buildPecl {
   inherit version;
   pname = "zstd";
 
@@ -13,15 +20,11 @@ in buildPecl {
     hash = "sha256-jEuL93ScF0/FlfUvib6uZafOkIe0+VkWV/frpSjTkvY=";
   };
 
-  nativeBuildInputs = [
-    pkg-config
-  ];
+  nativeBuildInputs = [ pkg-config ];
 
   buildInputs = [ zstd ];
 
-  configureFlags = [
-    "--with-libzstd"
-  ];
+  configureFlags = [ "--with-libzstd" ];
 
   meta = with lib; {
     description = "Zstd Extension for PHP";
diff --git a/pkgs/development/python-modules/absl-py/default.nix b/pkgs/development/python-modules/absl-py/default.nix
index eb412275a882..99271645f19a 100644
--- a/pkgs/development/python-modules/absl-py/default.nix
+++ b/pkgs/development/python-modules/absl-py/default.nix
@@ -1,10 +1,8 @@
 { buildPythonPackage
 , lib
-, pythonOlder
 , fetchPypi
 , setuptools
 , six
-, enum34
 }:
 
 buildPythonPackage rec {
@@ -23,8 +21,6 @@ buildPythonPackage rec {
 
   propagatedBuildInputs = [
     six
-  ] ++ lib.optionals (pythonOlder "3.4") [
-    enum34
   ];
 
   # checks use bazel; should be revisited
diff --git a/pkgs/development/python-modules/accelerate/default.nix b/pkgs/development/python-modules/accelerate/default.nix
index eecbd37a9063..b32cadab4b2d 100644
--- a/pkgs/development/python-modules/accelerate/default.nix
+++ b/pkgs/development/python-modules/accelerate/default.nix
@@ -2,7 +2,9 @@
 , lib
 , buildPythonPackage
 , fetchFromGitHub
+, pythonAtLeast
 , pythonOlder
+, llvmPackages
 , pytest7CheckHook
 , setuptools
 , numpy
@@ -20,21 +22,25 @@
 
 buildPythonPackage rec {
   pname = "accelerate";
-  version = "0.27.0";
+  version = "0.30.0";
   pyproject = true;
 
-  disabled = pythonOlder "3.7";
+  disabled = pythonOlder "3.8";
 
   src = fetchFromGitHub {
     owner = "huggingface";
-    repo = pname;
+    repo = "accelerate";
     rev = "refs/tags/v${version}";
-    hash = "sha256-7rnI8UXyAql8fLMKoSRrWzVw5CnyYVE2o6dJOzSgWxw=";
+    hash = "sha256-E20pI5BrcTrMYrhriuOUl5/liSaQQy6eqRyCoauwb9Q=";
   };
 
-  nativeBuildInputs = [ setuptools ];
+  buildInputs = [
+    llvmPackages.openmp
+  ];
+
+  build-system = [ setuptools ];
 
-  propagatedBuildInputs = [
+  dependencies = [
     numpy
     packaging
     psutil
@@ -71,11 +77,20 @@ buildPythonPackage rec {
     "test_remote_code"
     "test_transformers_model"
 
+    # nondeterministic, tests GC behaviour by thresholding global ram usage
+    "test_free_memory_dereferences_prepared_components"
+
     # set the environment variable, CC, which conflicts with standard environment
     "test_patch_environment_key_exists"
+  ] ++ lib.optionals (pythonAtLeast "3.12") [
+    # RuntimeError: Dynamo is not supported on Python 3.12+
+    "test_convert_to_fp32"
+    "test_send_to_device_compiles"
   ] ++ lib.optionals (stdenv.isLinux && stdenv.isAarch64) [
     # usual aarch64-linux RuntimeError: DataLoader worker (pid(s) <...>) exited unexpectedly
     "CheckpointTest"
+    # TypeError: unsupported operand type(s) for /: 'NoneType' and 'int' (it seems cpuinfo doesn't work here)
+    "test_mpi_multicpu_config_cmd"
   ] ++ lib.optionals (!config.cudaSupport) [
     # requires ptxas from cudatoolkit, which is unfree
     "test_dynamo_extract_model"
@@ -96,6 +111,8 @@ buildPythonPackage rec {
     "accelerate"
   ];
 
+  __darwinAllowLocalNetworking = true;
+
   meta = with lib; {
     homepage = "https://huggingface.co/docs/accelerate";
     description = "A simple way to train and use PyTorch models with multi-GPU, TPU, mixed-precision";
diff --git a/pkgs/development/python-modules/accessible-pygments/default.nix b/pkgs/development/python-modules/accessible-pygments/default.nix
index 9c516a5f6e85..2686ff12ecf0 100644
--- a/pkgs/development/python-modules/accessible-pygments/default.nix
+++ b/pkgs/development/python-modules/accessible-pygments/default.nix
@@ -2,13 +2,14 @@
 , buildPythonPackage
 , fetchPypi
 , pythonOlder
+, setuptools
 , pygments
 }:
 
 buildPythonPackage rec {
   pname = "accessible-pygments";
   version = "0.0.4";
-  format = "setuptools";
+  pyproject = true;
 
   disabled = pythonOlder "3.7";
 
@@ -17,7 +18,11 @@ buildPythonPackage rec {
     hash = "sha256-57V6mxWVjpYBx+nrB6RAyBMoNUWiCXPyV0pfRT0OlT4=";
   };
 
-  propagatedBuildInputs = [
+  build-system = [
+    setuptools
+  ];
+
+  dependencies = [
     pygments
   ];
 
diff --git a/pkgs/development/python-modules/accupy/default.nix b/pkgs/development/python-modules/accupy/default.nix
index 6c2906fcb7ee..ee8e3c80a945 100644
--- a/pkgs/development/python-modules/accupy/default.nix
+++ b/pkgs/development/python-modules/accupy/default.nix
@@ -3,6 +3,7 @@
 , buildPythonPackage
 , fetchFromGitHub
 , pythonOlder
+, setuptools
 , mpmath
 , numpy
 , pybind11
@@ -18,17 +19,19 @@
 buildPythonPackage rec {
   pname = "accupy";
   version = "0.3.6";
-  format = "setuptools";
+  pyproject = true;
+
   disabled = pythonOlder "3.7";
 
   src = fetchFromGitHub {
     owner = "nschloe";
-    repo = pname;
+    repo = "accupy";
     rev = version;
-    sha256 = "0sxkwpp2xy2jgakhdxr4nh1cspqv8l89kz6s832h05pbpyc0n767";
+    hash = "sha256-xxwLmL/rFgDFQNr8mRBFG1/NArQk9wanelL4Lu7ls2s=";
   };
 
-  nativeBuildInputs = [
+  build-system = [
+    setuptools
     pybind11
   ];
 
@@ -36,7 +39,7 @@ buildPythonPackage rec {
     eigen
   ];
 
-  propagatedBuildInputs = [
+  dependencies = [
     mpmath
     numpy
     pyfma
@@ -51,7 +54,7 @@ buildPythonPackage rec {
 
   postConfigure = ''
    substituteInPlace setup.py \
-     --replace "/usr/include/eigen3/" "${eigen}/include/eigen3/"
+     --replace-fail "/usr/include/eigen3/" "${eigen}/include/eigen3/"
   '';
 
   preBuild = ''
@@ -66,10 +69,12 @@ buildPythonPackage rec {
   # decouple ourselves from an unnecessary build dep
   preCheck = ''
     for f in test/test*.py ; do
-      substituteInPlace $f --replace 'import perfplot' ""
+      substituteInPlace $f --replace-quiet 'import perfplot' ""
     done
   '';
+
   disabledTests = [ "test_speed_comparison1" "test_speed_comparison2" ];
+
   pythonImportsCheck = [ "accupy" ];
 
   meta = with lib; {
diff --git a/pkgs/development/python-modules/acquire/default.nix b/pkgs/development/python-modules/acquire/default.nix
index 555a60412bf4..d03aa8456bec 100644
--- a/pkgs/development/python-modules/acquire/default.nix
+++ b/pkgs/development/python-modules/acquire/default.nix
@@ -17,7 +17,7 @@
 
 buildPythonPackage rec {
   pname = "acquire";
-  version = "3.13";
+  version = "3.14";
   pyproject = true;
 
   disabled = pythonOlder "3.9";
@@ -26,15 +26,15 @@ buildPythonPackage rec {
     owner = "fox-it";
     repo = "acquire";
     rev = "refs/tags/${version}";
-    hash = "sha256-Z85bHM3MtS2MLX9BaKi8VqA13QjO9KdrgqhuyBzjILQ=";
+    hash = "sha256-QW5+npgjrIzyI2hztFovA5s6TMzgCCEiZx9aZREmYII=";
   };
 
-  nativeBuildInputs = [
+  build-system = [
     setuptools
     setuptools-scm
   ];
 
-  propagatedBuildInputs = [
+  dependencies = [
     defusedxml
     dissect-cstruct
     dissect-target
diff --git a/pkgs/development/python-modules/adafruit-platformdetect/default.nix b/pkgs/development/python-modules/adafruit-platformdetect/default.nix
index bee4d68d5d73..3e220a23092f 100644
--- a/pkgs/development/python-modules/adafruit-platformdetect/default.nix
+++ b/pkgs/development/python-modules/adafruit-platformdetect/default.nix
@@ -1,33 +1,30 @@
-{ lib
-, buildPythonPackage
-, fetchPypi
-, setuptools-scm
-, pythonOlder
+{
+  lib,
+  buildPythonPackage,
+  fetchPypi,
+  setuptools-scm,
+  pythonOlder,
 }:
 
 buildPythonPackage rec {
   pname = "adafruit-platformdetect";
-  version = "3.62.0";
+  version = "3.63.0";
   pyproject = true;
 
   disabled = pythonOlder "3.7";
 
   src = fetchPypi {
-    pname = "Adafruit-PlatformDetect";
+    pname = "adafruit_platformdetect";
     inherit version;
-    hash = "sha256-L2CbqWqyOo4mq+KsO8FYAyHClRKFXMLWWtfYEg0SD34=";
+    hash = "sha256-bntcP/P0eoQsjIQQcJLtsXsPcSylKVNUp+f/RC/U5m4=";
   };
 
-  nativeBuildInputs = [
-    setuptools-scm
-  ];
+  build-system = [ setuptools-scm ];
 
   # Project has not published tests yet
   doCheck = false;
 
-  pythonImportsCheck = [
-    "adafruit_platformdetect"
-  ];
+  pythonImportsCheck = [ "adafruit_platformdetect" ];
 
   meta = with lib; {
     description = "Platform detection for use by Adafruit libraries";
diff --git a/pkgs/development/python-modules/adal/default.nix b/pkgs/development/python-modules/adal/default.nix
index cbce5d2af148..926f1696dfa8 100644
--- a/pkgs/development/python-modules/adal/default.nix
+++ b/pkgs/development/python-modules/adal/default.nix
@@ -6,12 +6,13 @@
 , pytestCheckHook
 , python-dateutil
 , requests
+, setuptools
 }:
 
 buildPythonPackage rec {
   pname = "adal";
   version = "1.2.7";
-  format = "setuptools";
+  pyproject = true;
 
   src = fetchFromGitHub {
     owner = "AzureAD";
@@ -24,7 +25,11 @@ buildPythonPackage rec {
     sed -i '/cryptography/d' setup.py
   '';
 
-  propagatedBuildInputs = [
+  build-system = [
+    setuptools
+  ];
+
+  dependencies = [
     pyjwt
     python-dateutil
     requests
diff --git a/pkgs/development/python-modules/adext/default.nix b/pkgs/development/python-modules/adext/default.nix
index c5a05d19bee8..8a7345613de7 100644
--- a/pkgs/development/python-modules/adext/default.nix
+++ b/pkgs/development/python-modules/adext/default.nix
@@ -1,40 +1,39 @@
-{ lib
-, buildPythonPackage
-, fetchFromGitHub
-, setuptools-scm
-, alarmdecoder
-, pytestCheckHook
+{
+  lib,
+  buildPythonPackage,
+  fetchFromGitHub,
+  setuptools-scm,
+  alarmdecoder,
+  pytestCheckHook,
+  pythonOlder,
 }:
 
 buildPythonPackage rec {
   pname = "adext";
-  version = "0.4.2";
-  format = "setuptools";
+  version = "0.4.3";
+  pyproject = true;
+
+  disabled = pythonOlder "3.7";
 
   src = fetchFromGitHub {
     owner = "ajschmidt8";
-    repo = pname;
-    rev = "v${version}";
-    sha256 = "0h5k9kzms2f0r48pdhsgv8pimk0vsxw8vs0k6880mank8ij914wr";
+    repo = "adext";
+    rev = "refs/tags/v${version}";
+    hash = "sha256-y8BvcSc3vD0FEWiyzW2Oh6PBS2Itjs2sz+9Dzh5yqSg=";
   };
 
-  nativeBuildInputs = [
-    setuptools-scm
-  ];
+  build-system = [ setuptools-scm ];
 
-  propagatedBuildInputs = [
-    alarmdecoder
-  ];
+  dependencies = [ alarmdecoder ];
 
-  nativeCheckInputs = [
-    pytestCheckHook
-  ];
+  nativeCheckInputs = [ pytestCheckHook ];
 
   pythonImportsCheck = [ "adext" ];
 
   meta = with lib; {
     description = "Python extension for AlarmDecoder";
     homepage = "https://github.com/ajschmidt8/adext";
+    changelog = "https://github.com/ajschmidt8/adext/releases/tag/v${version}";
     license = with licenses; [ mit ];
     maintainers = with maintainers; [ fab ];
   };
diff --git a/pkgs/development/python-modules/aeppl/default.nix b/pkgs/development/python-modules/aeppl/default.nix
index 1633be12bb97..514e585d6033 100644
--- a/pkgs/development/python-modules/aeppl/default.nix
+++ b/pkgs/development/python-modules/aeppl/default.nix
@@ -1,29 +1,34 @@
 { lib
-, aesara
 , buildPythonPackage
+, pythonOlder
 , fetchFromGitHub
-, numdifftools
+, setuptools
+, aesara
 , numpy
-, pytestCheckHook
-, pythonOlder
 , scipy
+, numdifftools
+, pytestCheckHook
 }:
 
 buildPythonPackage rec {
   pname = "aeppl";
   version = "0.1.5";
-  format = "setuptools";
+  pyproject = true;
 
-  disabled = pythonOlder "3.7";
+  disabled = pythonOlder "3.8";
 
   src = fetchFromGitHub {
     owner = "aesara-devs";
-    repo = pname;
+    repo = "aeppl";
     rev = "refs/tags/v${version}";
     hash = "sha256-mqBbXwWJwQA2wSHuEdBeXQMfTIcgwYEjpq8AVmOjmHM=";
   };
 
-  propagatedBuildInputs = [
+  build-system = [
+    setuptools
+  ];
+
+  dependencies = [
     aesara
     numpy
     scipy
@@ -47,6 +52,14 @@ buildPythonPackage rec {
     "test_initial_values"
   ];
 
+  pytestFlagsArray = [
+    # `numpy.distutils` is deprecated since NumPy 1.23.0, as a result of the deprecation of `distutils` itself.
+    # It will be removed for Python >= 3.12. For older Python versions it will remain present.
+    "-Wignore::DeprecationWarning"
+    # Blas cannot be found, allow fallback to the numpy slower implementation
+    "-Wignore::UserWarning"
+  ];
+
   meta = with lib; {
     description = "Library for an Aesara-based PPL";
     homepage = "https://github.com/aesara-devs/aeppl";
diff --git a/pkgs/development/python-modules/aesara/default.nix b/pkgs/development/python-modules/aesara/default.nix
index 589799c1b848..edf3f989ecbc 100644
--- a/pkgs/development/python-modules/aesara/default.nix
+++ b/pkgs/development/python-modules/aesara/default.nix
@@ -16,6 +16,7 @@
 , numba-scipy
 , numpy
 , pytestCheckHook
+, pythonAtLeast
 , pythonOlder
 , scipy
 , typing-extensions
@@ -24,9 +25,10 @@
 buildPythonPackage rec {
   pname = "aesara";
   version = "2.9.3";
-  format = "pyproject";
+  pyproject = true;
 
-  disabled = pythonOlder "3.8";
+  # Python 3.12 is not supported: https://github.com/aesara-devs/aesara/issues/1520
+  disabled = pythonOlder "3.8" || pythonAtLeast "3.12";
 
   src = fetchFromGitHub {
     owner = "aesara-devs";
@@ -35,13 +37,13 @@ buildPythonPackage rec {
     hash = "sha256-aO0+O7Ts9phsV4ghunNolxfAruGBbC+tHjVkmFedcCI=";
   };
 
-  nativeBuildInputs = [
+  build-system = [
     cython
     hatch-vcs
     hatchling
   ];
 
-  propagatedBuildInputs = [
+  dependencies = [
     cons
     etuples
     filelock
@@ -62,7 +64,8 @@ buildPythonPackage rec {
 
   postPatch = ''
     substituteInPlace pyproject.toml \
-      --replace "--durations=50" ""
+      --replace-fail "--durations=50" "" \
+      --replace-fail "hatch-vcs >=0.3.0,<0.4.0" "hatch-vcs"
   '';
 
   preBuild = ''
@@ -81,12 +84,23 @@ buildPythonPackage rec {
     "tests/sparse/sandbox/"
     # JAX is not available on all platform and often broken
     "tests/link/jax/"
+
+    # 2024-04-27: The current nixpkgs numba version is too recent and incompatible with aesara 2.9.3
+    "tests/link/numba/"
   ];
 
   disabledTests = [
     # Disable all benchmark tests
     "test_scan_multiple_output"
     "test_logsumexp_benchmark"
+
+    # TypeError: exceptions must be derived from Warning, not <class 'NoneType'>
+    "test_api_deprecation_warning"
+    # AssertionError: assert ['Elemwise{Co..._i{0} 0', ...] == ['Elemwise{Co..._i{0} 0', ...]
+    # At index 3 diff: '| |Gemv{inplace} d={0: [0]} 2' != '| |CGemv{inplace} d={0: [0]} 2'
+    "test_debugprint"
+    # ValueError: too many values to unpack (expected 3)
+    "test_ExternalCOp_c_code_cache_version"
   ];
 
   meta = with lib; {
diff --git a/pkgs/development/python-modules/ago/default.nix b/pkgs/development/python-modules/ago/default.nix
index ad095c441db2..59aaf184a6fc 100644
--- a/pkgs/development/python-modules/ago/default.nix
+++ b/pkgs/development/python-modules/ago/default.nix
@@ -1,11 +1,7 @@
 { lib
 , buildPythonPackage
 , fetchPypi
-
-, pythonOlder
-
 , pytestCheckHook
-
 , setuptools
 }:
 
@@ -14,8 +10,6 @@ buildPythonPackage rec {
   version = "0.0.95";
   pyproject = true;
 
-  disabled = pythonOlder "3.3";
-
   src = fetchPypi {
     inherit pname version;
     hash = "sha256-0gEPXqw99UTsSOwRYQLgaFkaNFsaWA8ylz24pQX8p0Q=";
diff --git a/pkgs/development/python-modules/ailment/default.nix b/pkgs/development/python-modules/ailment/default.nix
index 5b496bf9c45d..c64eece601c5 100644
--- a/pkgs/development/python-modules/ailment/default.nix
+++ b/pkgs/development/python-modules/ailment/default.nix
@@ -9,7 +9,7 @@
 
 buildPythonPackage rec {
   pname = "ailment";
-  version = "9.2.101";
+  version = "9.2.102";
   pyproject = true;
 
   disabled = pythonOlder "3.11";
@@ -18,7 +18,7 @@ buildPythonPackage rec {
     owner = "angr";
     repo = "ailment";
     rev = "refs/tags/v${version}";
-    hash = "sha256-3JPoO9GpnVEc4UQhhXxpj53PwK5eRsy6Ikt4qw5jGa8=";
+    hash = "sha256-xHxWP16XbVcsT+UIyouqyhbnxPBNx7oH1unBhJU44fI=";
   };
 
   build-system = [ setuptools ];
diff --git a/pkgs/development/python-modules/aioairq/default.nix b/pkgs/development/python-modules/aioairq/default.nix
index 5be97a3d9c9d..274b25202a3a 100644
--- a/pkgs/development/python-modules/aioairq/default.nix
+++ b/pkgs/development/python-modules/aioairq/default.nix
@@ -1,35 +1,49 @@
-{ lib
-, aiohttp
-, buildPythonPackage
-, fetchFromGitHub
-, pycryptodome
-, pythonOlder
+{
+  lib,
+  aiohttp,
+  buildPythonPackage,
+  fetchFromGitHub,
+  pycryptodome,
+  pytest-asyncio,
+  pytestCheckHook,
+  pythonOlder,
+  setuptools,
 }:
 
 buildPythonPackage rec {
   pname = "aioairq";
-  version = "0.3.2";
-  format = "setuptools";
+  version = "0.4.2";
+  pyproject = true;
 
   disabled = pythonOlder "3.9";
 
   src = fetchFromGitHub {
     owner = "CorantGmbH";
-    repo = pname;
+    repo = "aioairq";
     rev = "refs/tags/v${version}";
-    hash = "sha256-Sau0Ih+9WRChbztl8yjXVWy4/QxyllQKOPslbZroBeQ=";
+    hash = "sha256-ppjhGBAoA5iV+ZfUKkUCNJRYN82JtclRe36pbe85i5w=";
   };
 
-  propagatedBuildInputs = [
+  build-system = [ setuptools ];
+
+  dependencies = [
     aiohttp
     pycryptodome
   ];
 
   # Module has no tests
-  doCheck = false;
+  #doCheck = false;
+
+  nativeCheckInputs = [
+    pytest-asyncio
+    pytestCheckHook
+  ];
+
+  pythonImportsCheck = [ "aioairq" ];
 
-  pythonImportsCheck = [
-    "aioairq"
+  disabledTestPaths = [
+    # Tests require network access
+    "tests/test_core_on_device.py"
   ];
 
   meta = with lib; {
diff --git a/pkgs/development/python-modules/aioairzone-cloud/default.nix b/pkgs/development/python-modules/aioairzone-cloud/default.nix
index c6c6e11e293f..63815d39e47a 100644
--- a/pkgs/development/python-modules/aioairzone-cloud/default.nix
+++ b/pkgs/development/python-modules/aioairzone-cloud/default.nix
@@ -9,7 +9,7 @@
 
 buildPythonPackage rec {
   pname = "aioairzone-cloud";
-  version = "0.4.7";
+  version = "0.5.1";
   pyproject = true;
 
   disabled = pythonOlder "3.7";
@@ -18,7 +18,7 @@ buildPythonPackage rec {
     owner = "Noltari";
     repo = "aioairzone-cloud";
     rev = "refs/tags/${version}";
-    hash = "sha256-DIWRYGDdK/wq1TrPSo9I1oZv5jX4rY4z+u7CTwJtyts=";
+    hash = "sha256-L5Gb+V0W+9duGV6lRc01jrAfh4U+MS77Y238EeXe0TU=";
   };
 
   build-system = [ setuptools ];
diff --git a/pkgs/development/python-modules/aioamqp/default.nix b/pkgs/development/python-modules/aioamqp/default.nix
index 8bdc72a019ed..a23d248bbd41 100644
--- a/pkgs/development/python-modules/aioamqp/default.nix
+++ b/pkgs/development/python-modules/aioamqp/default.nix
@@ -3,23 +3,28 @@
 , fetchFromGitHub
 , pamqp
 , pythonOlder
+, setuptools
 }:
 
 buildPythonPackage rec {
   pname = "aioamqp";
   version = "0.15.0";
-  format = "setuptools";
+  pyproject = true;
 
   disabled = pythonOlder "3.7";
 
   src = fetchFromGitHub {
     owner = "Polyconseil";
-    repo = pname;
-    rev = "${pname}-${version}";
+    repo = "aioamqp";
+    rev = "aioamqp-${version}";
     hash = "sha256-fssPknJn1tLtzb+2SFyZjfdhUdD8jqkwlInoi5uaplk=";
   };
 
-  propagatedBuildInputs = [
+  build-system = [
+    setuptools
+  ];
+
+  dependencies = [
     pamqp
   ];
 
diff --git a/pkgs/development/python-modules/aioautomower/default.nix b/pkgs/development/python-modules/aioautomower/default.nix
index 99d8175b62ed..9cb79bf9d2fa 100644
--- a/pkgs/development/python-modules/aioautomower/default.nix
+++ b/pkgs/development/python-modules/aioautomower/default.nix
@@ -1,21 +1,21 @@
-{ lib
-, aiohttp
-, buildPythonPackage
-, fetchFromGitHub
-, freezegun
-, mashumaro
-, poetry-core
-, pyjwt
-, pytest-asyncio
-, pytestCheckHook
-, pythonOlder
-, setuptools
-, syrupy
+{
+  lib,
+  aiohttp,
+  buildPythonPackage,
+  fetchFromGitHub,
+  freezegun,
+  mashumaro,
+  poetry-core,
+  pyjwt,
+  pytest-asyncio,
+  pytestCheckHook,
+  pythonOlder,
+  syrupy,
 }:
 
 buildPythonPackage rec {
   pname = "aioautomower";
-  version = "2024.4.0";
+  version = "2024.4.4";
   pyproject = true;
 
   disabled = pythonOlder "3.11";
@@ -24,21 +24,19 @@ buildPythonPackage rec {
     owner = "Thomas55555";
     repo = "aioautomower";
     rev = "refs/tags/${version}";
-    hash = "sha256-W6aZdvg+EZKv0pmIaPOBaJaWipq3AENTVAVon/lFuI4=";
+    hash = "sha256-/mwKomgY+yifN27bpCK9FjhbZRdllr471Ku+Kn2rUPM=";
   };
 
   postPatch = ''
     # Upstream doesn't set a version
     substituteInPlace pyproject.toml \
-      --replace-fail 'version = "0.0.0"' 'version = "${version}"'
+      --replace-fail 'version = "0.0.0"' 'version = "${version}"' \
+      --replace-fail "--cov" ""
   '';
 
-  nativeBuildInputs = [
-    poetry-core
-    setuptools
-  ];
+  build-system = [ poetry-core ];
 
-  propagatedBuildInputs = [
+  dependencies = [
     aiohttp
     mashumaro
     pyjwt
@@ -51,13 +49,9 @@ buildPythonPackage rec {
     syrupy
   ];
 
-  pythonImportsCheck = [
-    "aioautomower"
-  ];
+  pythonImportsCheck = [ "aioautomower" ];
 
-  pytestFlagsArray = [
-    "--snapshot-update"
-  ];
+  pytestFlagsArray = [ "--snapshot-update" ];
 
   disabledTests = [
     # File is missing
diff --git a/pkgs/development/python-modules/aioazuredevops/default.nix b/pkgs/development/python-modules/aioazuredevops/default.nix
index 377c96798629..aaab9a1a4cc5 100644
--- a/pkgs/development/python-modules/aioazuredevops/default.nix
+++ b/pkgs/development/python-modules/aioazuredevops/default.nix
@@ -1,30 +1,56 @@
 { lib
 , buildPythonPackage
-, isPy27
-, fetchPypi
+, pythonOlder
+, fetchFromGitHub
+
+# build-system
+, setuptools
+
+# dependencies
 , aiohttp
-, click
+, incremental
+
+# tests
+, aioresponses
+, pytest-aiohttp
+, pytest-asyncio
+, pytest-socket
+, pytestCheckHook
+, syrupy
 }:
 
 buildPythonPackage rec {
   pname = "aioazuredevops";
-  version = "1.4.3";
-  format = "setuptools";
+  version = "2.0.0";
+  pyproject = true;
 
-  disabled = isPy27;
+  disabled = pythonOlder "3.11";
 
-  src = fetchPypi {
-    inherit pname version;
-    hash = "sha256-vNTvSQYjjptdPsHz0zM9paq3iodZrhcEralPm6YRZJE=";
+  src = fetchFromGitHub {
+    owner = "timmo001";
+    repo = "aioazuredevops";
+    rev = "refs/tags/${version}";
+    hash = "sha256-QEIVAcBoTvuOeLN2kfDa3uYfrUm5Qu1TLp9C0uU+mW4=";
   };
 
-  propagatedBuildInputs = [
+  build-system = [
+    incremental
+    setuptools
+  ];
+
+  dependencies = [
     aiohttp
-    click
+    incremental
   ];
 
-  # no tests implemented
-  doCheck = false;
+  nativeCheckInputs = [
+    aioresponses
+    pytest-aiohttp
+    pytest-asyncio
+    pytest-socket
+    pytestCheckHook
+    syrupy
+  ];
 
   pythonImportsCheck = [
     "aioazuredevops.builds"
@@ -33,6 +59,7 @@ buildPythonPackage rec {
   ];
 
   meta = with lib; {
+    changelog = "https://github.com/timmo001/aioazuredevops/releases/tag/${version}";
     description = "Get data from the Azure DevOps API";
     mainProgram = "aioazuredevops";
     homepage = "https://github.com/timmo001/aioazuredevops";
diff --git a/pkgs/development/python-modules/aiobiketrax/default.nix b/pkgs/development/python-modules/aiobiketrax/default.nix
index 93333448ad11..9d6d7ab52114 100644
--- a/pkgs/development/python-modules/aiobiketrax/default.nix
+++ b/pkgs/development/python-modules/aiobiketrax/default.nix
@@ -14,34 +14,37 @@
 
 buildPythonPackage rec {
   pname = "aiobiketrax";
-  version = "1.1.2";
-  format = "pyproject";
+  version = "1.3.0";
+  pyproject = true;
 
   disabled = pythonOlder "3.9";
 
   src = fetchFromGitHub {
     owner = "basilfx";
-    repo = pname;
+    repo = "aiobiketrax";
     rev = "refs/tags/v${version}";
-    hash = "sha256-71gPdA1snPJCR0Pmcaki55Ukf5xtUjuZ+xX8VvspKC4=";
+    hash = "sha256-6hSSPanagYKZxoyU8mp/1bWRcpJJkhNw3Rh82ogKGr4=";
   };
 
   postPatch = ''
     # https://github.com/basilfx/aiobiketrax/pull/63
     substituteInPlace aiobiketrax/api.py \
-      --replace "auth0.v3" "auth0"
+      --replace-fail "auth0.v3" "auth0"
   '';
 
   pythonRelaxDeps = [
     "auth0-python"
   ];
 
-  nativeBuildInputs = [
+  build-system = [
     poetry-core
+  ];
+
+  nativeBuildInputs = [
     pythonRelaxDepsHook
   ];
 
-  propagatedBuildInputs = [
+  dependencies = [
     aiohttp
     auth0-python
     python-dateutil
diff --git a/pkgs/development/python-modules/aiobotocore/default.nix b/pkgs/development/python-modules/aiobotocore/default.nix
index 525e482a42f7..5c421c99f6d0 100644
--- a/pkgs/development/python-modules/aiobotocore/default.nix
+++ b/pkgs/development/python-modules/aiobotocore/default.nix
@@ -20,7 +20,7 @@
 
 buildPythonPackage rec {
   pname = "aiobotocore";
-  version = "2.12.1";
+  version = "2.12.3";
   pyproject = true;
 
   disabled = pythonOlder "3.8";
@@ -29,7 +29,7 @@ buildPythonPackage rec {
     owner = "aio-libs";
     repo = "aiobotocore";
     rev = "refs/tags/${version}";
-    hash = "sha256-+CXKDk6crCPTVpVfcDWy+1UzS05oTu1RtIvDcVrEmFU=";
+    hash = "sha256-Us94kT7UhTTwMxF63iLLczXZhfr/Z8cJr12DKEphkog=";
   };
 
   # Relax version constraints: aiobotocore works with newer botocore versions
diff --git a/pkgs/development/python-modules/aiocache/default.nix b/pkgs/development/python-modules/aiocache/default.nix
index fd4e5f3a154a..5d78252791b3 100644
--- a/pkgs/development/python-modules/aiocache/default.nix
+++ b/pkgs/development/python-modules/aiocache/default.nix
@@ -1,8 +1,15 @@
 { lib
+, aiohttp
+, aiomcache
 , buildPythonPackage
 , fetchFromGitHub
+, marshmallow
 , msgpack
+, pkgs
 , pythonOlder
+, pytest-asyncio
+, pytest-mock
+, pytestCheckHook
 , redis
 , setuptools
 }:
@@ -21,21 +28,60 @@ buildPythonPackage rec {
     hash = "sha256-yvXDNJL8uxReaU81klVWudJwh1hmvg5GeeILcNpm/YA=";
   };
 
-  nativeBuildInputs = [
+  postPatch = ''
+    substituteInPlace setup.cfg \
+      --replace-fail "--cov=aiocache --cov=tests/ --cov-report term" ""
+  '';
+
+  build-system = [
     setuptools
   ];
 
-  passthru.optional-dependencies = {
+  optional-dependencies = {
     redis = [
       redis
     ];
+    memcached = [
+      aiomcache
+    ];
     msgpack = [
       msgpack
     ];
   };
 
-  # aiomcache would be required but last release was in 2017
-  doCheck = false;
+  nativeCheckInputs = [
+    aiohttp
+    marshmallow
+    pytest-asyncio
+    pytest-mock
+    pytestCheckHook
+  ] ++ lib.flatten (lib.attrValues optional-dependencies);
+
+  pytestFlagsArray = [
+    "-W" "ignore::DeprecationWarning"
+    # TypeError: object MagicMock can't be used in 'await' expression
+    "--deselect=tests/ut/backends/test_redis.py::TestRedisBackend::test_close"
+  ];
+
+  disabledTests = [
+    # calls apache benchmark and fails, no usable output
+    "test_concurrency_error_rates"
+  ];
+
+  preCheck = ''
+    ${lib.getBin pkgs.redis}/bin/redis-server &
+    REDIS_PID=$!
+
+    ${lib.getBin pkgs.memcached}/bin/memcached &
+    MEMCACHED_PID=$!
+  '';
+
+  postCheck = ''
+    kill $REDIS_PID
+    kill $MEMCACHED_PID
+  '';
+
+  __darwinAllowLocalNetworking = true;
 
   pythonImportsCheck = [
     "aiocache"
diff --git a/pkgs/development/python-modules/aiocoap/default.nix b/pkgs/development/python-modules/aiocoap/default.nix
index af2b220a21c2..5aff82034bcc 100644
--- a/pkgs/development/python-modules/aiocoap/default.nix
+++ b/pkgs/development/python-modules/aiocoap/default.nix
@@ -1,44 +1,37 @@
-{ lib
-, buildPythonPackage
-, fetchFromGitHub
-, pythonAtLeast
-, pythonOlder
-
-# build-system
-, setuptools
-
-# optionals
-, cbor2
-, cbor-diag
-, cryptography
-, filelock
-, ge25519
-, dtlssocket
-, websockets
-, termcolor
-, pygments
-
-# tests
-, pytestCheckHook
+{
+  lib,
+  buildPythonPackage,
+  cbor-diag,
+  cbor2,
+  cryptography,
+  dtlssocket,
+  fetchFromGitHub,
+  filelock,
+  ge25519,
+  pygments,
+  pytestCheckHook,
+  pythonAtLeast,
+  pythonOlder,
+  setuptools,
+  termcolor,
+  websockets,
 }:
 
 buildPythonPackage rec {
   pname = "aiocoap";
-  version = "0.4.7";
+  version = "0.4.8";
   pyproject = true;
 
   disabled = pythonOlder "3.7";
 
   src = fetchFromGitHub {
     owner = "chrysn";
-    repo = pname;
+    repo = "aiocoap";
     rev = "refs/tags/${version}";
-    hash = "sha256-4iwoPfmIwk+PlWUp60aqA5qZgzyj34pnZHf9uH5UhnY=";
+    hash = "sha256-jBRxorHr5/CgAR6WVXBUycZpJ6n1DYVFQk6kqVv8D1Q=";
   };
 
-  nativeBuildInputs = [
-    setuptools
-  ];
+  build-system = [ setuptools ];
 
   passthru.optional-dependencies = {
     oscore = [
@@ -47,12 +40,8 @@ buildPythonPackage rec {
       filelock
       ge25519
     ];
-    tinydtls = [
-      dtlssocket
-    ];
-    ws = [
-      websockets
-    ];
+    tinydtls = [ dtlssocket ];
+    ws = [ websockets ];
     prettyprint = [
       termcolor
       cbor2
@@ -61,26 +50,7 @@ buildPythonPackage rec {
     ];
   };
 
-  nativeCheckInputs = [
-    pytestCheckHook
-  ];
-
-  pytestFlagsArray = lib.optionals (pythonAtLeast "3.12") [
-    # https://github.com/chrysn/aiocoap/issues/339
-    "--deselect=tests/test_server.py::TestServerTCP::test_big_resource"
-    "--deselect=tests/test_server.py::TestServerTCP::test_empty_accept"
-    "--deselect=tests/test_server.py::TestServerTCP::test_error_resources"
-    "--deselect=tests/test_server.py::TestServerTCP::test_fast_resource"
-    "--deselect=tests/test_server.py::TestServerTCP::test_js_accept"
-    "--deselect=tests/test_server.py::TestServerTCP::test_manualbig_resource"
-    "--deselect=tests/test_server.py::TestServerTCP::test_nonexisting_resource"
-    "--deselect=tests/test_server.py::TestServerTCP::test_replacing_resource"
-    "--deselect=tests/test_server.py::TestServerTCP::test_root_resource"
-    "--deselect=tests/test_server.py::TestServerTCP::test_slow_resource"
-    "--deselect=tests/test_server.py::TestServerTCP::test_slowbig_resource"
-    "--deselect=tests/test_server.py::TestServerTCP::test_spurious_resource"
-    "--deselect=tests/test_server.py::TestServerTCP::test_unacceptable_accept"
-  ];
+  nativeCheckInputs = [ pytestCheckHook ];
 
   disabledTestPaths = [
     # Don't test the plugins
@@ -89,14 +59,29 @@ buildPythonPackage rec {
     "tests/test_oscore_plugtest.py"
   ];
 
-  disabledTests = [
-    # Communication is not properly mocked
-    "test_uri_parser"
-  ];
+  disabledTests =
+    [
+      # Communication is not properly mocked
+      "test_uri_parser"
+    ]
+    ++ lib.optionals (pythonAtLeast "3.12") [
+      # https://github.com/chrysn/aiocoap/issues/339
+      "TestServerTCP::test_big_resource"
+      "TestServerTCP::test_empty_accept"
+      "TestServerTCP::test_error_resources"
+      "TestServerTCP::test_fast_resource"
+      "TestServerTCP::test_js_accept"
+      "TestServerTCP::test_manualbig_resource"
+      "TestServerTCP::test_nonexisting_resource"
+      "TestServerTCP::test_replacing_resource"
+      "TestServerTCP::test_root_resource"
+      "TestServerTCP::test_slow_resource"
+      "TestServerTCP::test_slowbig_resource"
+      "TestServerTCP::test_spurious_resource"
+      "TestServerTCP::test_unacceptable_accept"
+    ];
 
-  pythonImportsCheck = [
-    "aiocoap"
-  ];
+  pythonImportsCheck = [ "aiocoap" ];
 
   meta = with lib; {
     description = "Python CoAP library";
diff --git a/pkgs/development/python-modules/aioconsole/default.nix b/pkgs/development/python-modules/aioconsole/default.nix
index 8cb67f32a920..0c5346eebd67 100644
--- a/pkgs/development/python-modules/aioconsole/default.nix
+++ b/pkgs/development/python-modules/aioconsole/default.nix
@@ -17,7 +17,7 @@
 # wrapped to be able to find aioconsole and any other packages.
 buildPythonPackage rec {
   pname = "aioconsole";
-  version = "0.7.0";
+  version = "0.7.1";
   pyproject = true;
 
   disabled = pythonOlder "3.8";
@@ -26,7 +26,7 @@ buildPythonPackage rec {
     owner = "vxgmichel";
     repo = "aioconsole";
     rev = "refs/tags/v${version}";
-    hash = "sha256-SKJLc1Tauwpmh2xtFFyHqKRaaQAK99SpbbGLFmAbKcQ=";
+    hash = "sha256-c8zeKebS04bZS9pMIKAauaLPvRrWaGoDKbnF906tFzQ=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/python-modules/aiocontextvars/default.nix b/pkgs/development/python-modules/aiocontextvars/default.nix
index 24f6f1b2e488..d1048db7de98 100644
--- a/pkgs/development/python-modules/aiocontextvars/default.nix
+++ b/pkgs/development/python-modules/aiocontextvars/default.nix
@@ -1,6 +1,7 @@
 { lib
 , buildPythonPackage
 , fetchFromGitHub
+, setuptools
 , pytestCheckHook
 , pytest-asyncio
 , isPy27
@@ -9,21 +10,24 @@
 buildPythonPackage rec {
   pname = "aiocontextvars";
   version = "0.2.2";
-  format = "setuptools";
+  pyproject = true;
+
   disabled = isPy27;
 
   src = fetchFromGitHub {
     owner = "fantix";
-    repo = pname;
+    repo = "aiocontextvars";
     rev = "v${version}";
-    sha256 = "0a2gmrm9csiknc8n3si67sgzffkydplh9d7ga1k87ygk2aj22mmk";
+    hash = "sha256-s1YhpBLz+YNmUO+0BOltfjr3nz4m6mERszNqlmquTyg=";
   };
 
   postPatch = ''
     substituteInPlace setup.py \
-      --replace "'pytest-runner'," ""
+      --replace-fail "'pytest-runner'," ""
   '';
 
+  build-system = [ setuptools ];
+
   nativeCheckInputs = [
     pytestCheckHook
     pytest-asyncio
diff --git a/pkgs/development/python-modules/aiodhcpwatcher/default.nix b/pkgs/development/python-modules/aiodhcpwatcher/default.nix
index 5c8adc9b4b99..1cdc26eead5d 100644
--- a/pkgs/development/python-modules/aiodhcpwatcher/default.nix
+++ b/pkgs/development/python-modules/aiodhcpwatcher/default.nix
@@ -52,5 +52,6 @@ buildPythonPackage rec {
     changelog = "https://github.com/bdraco/aiodhcpwatcher/blob/${src.rev}/CHANGELOG.md";
     license = licenses.gpl3Only;
     maintainers = with maintainers; [ hexa ];
+    platforms = platforms.linux;
   };
 }
diff --git a/pkgs/development/python-modules/aiodns/default.nix b/pkgs/development/python-modules/aiodns/default.nix
index 1da999978b58..95b17ac6a25a 100644
--- a/pkgs/development/python-modules/aiodns/default.nix
+++ b/pkgs/development/python-modules/aiodns/default.nix
@@ -1,40 +1,34 @@
-{ lib
-, buildPythonPackage
-, fetchFromGitHub
-, pycares
-, pythonOlder
-, setuptools
-
+{
+  lib,
+  buildPythonPackage,
+  fetchFromGitHub,
+  pycares,
+  pythonOlder,
+  setuptools,
 }:
 
 buildPythonPackage rec {
   pname = "aiodns";
-  version = "3.1.1";
+  version = "3.2.0";
   pyproject = true;
 
-  disabled = pythonOlder "3.6";
+  disabled = pythonOlder "3.8";
 
   src = fetchFromGitHub {
     owner = "saghul";
     repo = "aiodns";
     rev = "refs/tags/v${version}";
-    sha256 = "sha256-JZS53kICsrXDot3CKjG30AOjkYycKpMJvC9yS3c1v5Q=";
+    hash = "sha256-aXae9/x0HVp4KqydCf5/+p5PlSKUQ5cE3iVeD08rtf0=";
   };
 
-  nativeBuildInputs = [
-    setuptools
-  ];
+  build-system = [ setuptools ];
 
-  propagatedBuildInputs = [
-    pycares
-  ];
+  dependencies = [ pycares ];
 
   # Could not contact DNS servers
   doCheck = false;
 
-  pythonImportsCheck = [
-    "aiodns"
-  ];
+  pythonImportsCheck = [ "aiodns" ];
 
   meta = with lib; {
     description = "Simple DNS resolver for asyncio";
diff --git a/pkgs/development/python-modules/aioesphomeapi/default.nix b/pkgs/development/python-modules/aioesphomeapi/default.nix
index 282e27f3f8af..fff33bbb6aca 100644
--- a/pkgs/development/python-modules/aioesphomeapi/default.nix
+++ b/pkgs/development/python-modules/aioesphomeapi/default.nix
@@ -25,7 +25,7 @@
 
 buildPythonPackage rec {
   pname = "aioesphomeapi";
-  version = "23.2.0";
+  version = "24.3.0";
   pyproject = true;
 
   disabled = pythonOlder "3.9";
@@ -34,7 +34,7 @@ buildPythonPackage rec {
     owner = "esphome";
     repo = "aioesphomeapi";
     rev = "refs/tags/v${version}";
-    hash = "sha256-GFQ87Ic0xHXs8ZgmzH7kOFbDSNmtj0hx+YHKnrz/sG0=";
+    hash = "sha256-wQR3dwN5O++TdtQh+Wcj7c7TNMaRj2lMlOuXOAPVU0Q=";
   };
 
   build-system = [
diff --git a/pkgs/development/python-modules/aiogram/default.nix b/pkgs/development/python-modules/aiogram/default.nix
index 74d9f070a721..e15d1a993dcc 100644
--- a/pkgs/development/python-modules/aiogram/default.nix
+++ b/pkgs/development/python-modules/aiogram/default.nix
@@ -25,7 +25,7 @@
 
 buildPythonPackage rec {
   pname = "aiogram";
-  version = "3.5.0";
+  version = "3.6.0";
   pyproject = true;
 
   disabled = pythonOlder "3.8";
@@ -34,7 +34,7 @@ buildPythonPackage rec {
     owner = "aiogram";
     repo = "aiogram";
     rev = "refs/tags/v${version}";
-    hash = "sha256-NOaI01Lb969Lp/v38u2UipN9UbOQNJQEbN2JS3lmFno=";
+    hash = "sha256-8hbB6/j9mWONFNpQuC3p91xnHR/74TWA9Cq8E+Gsnlw=";
   };
 
   build-system = [ hatchling ];
diff --git a/pkgs/development/python-modules/aiohttp-isal/default.nix b/pkgs/development/python-modules/aiohttp-isal/default.nix
new file mode 100644
index 000000000000..dbaac3028777
--- /dev/null
+++ b/pkgs/development/python-modules/aiohttp-isal/default.nix
@@ -0,0 +1,56 @@
+{ lib
+, buildPythonPackage
+, fetchFromGitHub
+
+# build-system
+, poetry-core
+
+# dependencies
+, aiohttp
+, isal
+
+# tests
+, pytestCheckHook
+}:
+
+buildPythonPackage rec {
+  pname = "aiohttp-isal";
+  version = "0.3.1";
+  pyproject = true;
+
+  src = fetchFromGitHub {
+    owner = "bdraco";
+    repo = "aiohttp-isal";
+    rev = "v${version}";
+    hash = "sha256-rSXV5Z5JdznQGtRI83UIbaSfbIYkUHphJTVK/LM2V4U=";
+  };
+
+  build-system = [
+    poetry-core
+  ];
+
+  dependencies = [
+    aiohttp
+    isal
+  ];
+
+  nativeCheckInputs = [
+    pytestCheckHook
+  ];
+
+  preCheck = ''
+    sed -i '/addopts/d' pyproject.toml
+  '';
+
+  pythonImportsCheck = [
+    "aiohttp_isal"
+  ];
+
+  meta = with lib; {
+    changelog = "https://github.com/bdraco/aiohttp-isal/blob/${src.rev}/CHANGELOG.md";
+    description = "Isal support for aiohttp";
+    homepage = "https://github.com/bdraco/aiohttp-isal";
+    license = licenses.asl20;
+    maintainers = with maintainers; [ hexa ];
+  };
+}
diff --git a/pkgs/development/python-modules/aiohttp-jinja2/default.nix b/pkgs/development/python-modules/aiohttp-jinja2/default.nix
index 8e78784457ca..9584316d8554 100644
--- a/pkgs/development/python-modules/aiohttp-jinja2/default.nix
+++ b/pkgs/development/python-modules/aiohttp-jinja2/default.nix
@@ -6,12 +6,13 @@
 , pytest-aiohttp
 , pytestCheckHook
 , pythonOlder
+, setuptools
 }:
 
 buildPythonPackage rec {
   pname = "aiohttp-jinja2";
   version = "1.6";
-  format = "setuptools";
+  pyproject = true;
 
   disabled = pythonOlder "3.7";
 
@@ -20,7 +21,11 @@ buildPythonPackage rec {
     hash = "sha256-o6f/UmTlvKUuiuVHu/0HYbcklSMNQ40FtsCRW+YZsOI=";
   };
 
-  propagatedBuildInputs = [
+  build-system = [
+    setuptools
+  ];
+
+  dependencies = [
     aiohttp
     jinja2
   ];
@@ -31,8 +36,8 @@ buildPythonPackage rec {
   ];
 
   postPatch = ''
-    substituteInPlace setup.cfg \
-      --replace " --cov=aiohttp_jinja2 --cov-report xml --cov-report html --cov-report term" ""
+    substituteInPlace pytest.ini \
+      --replace-fail "--cov=aiohttp_jinja2/ --cov=tests/ --cov-report term" ""
   '';
 
   pytestFlagsArray = [
@@ -44,10 +49,6 @@ buildPythonPackage rec {
     "aiohttp_jinja2"
   ];
 
-  # Tests are outdated (1.5)
-  # pytest.PytestUnhandledCoroutineWarning: async def functions...
-  doCheck = false;
-
   meta = with lib; {
     description = "Jinja2 support for aiohttp";
     homepage = "https://github.com/aio-libs/aiohttp_jinja2";
diff --git a/pkgs/development/python-modules/aiohttp-openmetrics/default.nix b/pkgs/development/python-modules/aiohttp-openmetrics/default.nix
index 11b979c4f6c2..871b9e33bded 100644
--- a/pkgs/development/python-modules/aiohttp-openmetrics/default.nix
+++ b/pkgs/development/python-modules/aiohttp-openmetrics/default.nix
@@ -4,12 +4,13 @@
 , aiohttp
 , prometheus-client
 , pythonOlder
+, setuptools
 }:
 
 buildPythonPackage rec {
   pname = "aiohttp-openmetrics";
   version = "0.0.12";
-  format = "setuptools";
+  pyproject = true;
 
   disabled = pythonOlder "3.7";
 
@@ -18,7 +19,11 @@ buildPythonPackage rec {
     hash = "sha256-/ZRngcMlroCVTvIl+30DR4SI8LsSnTovuzg3YduWgWA=";
   };
 
-  propagatedBuildInputs = [
+  build-system = [
+    setuptools
+  ];
+
+  dependencies = [
     aiohttp
     prometheus-client
   ];
diff --git a/pkgs/development/python-modules/aiohttp-session/default.nix b/pkgs/development/python-modules/aiohttp-session/default.nix
new file mode 100644
index 000000000000..31acba3ebd52
--- /dev/null
+++ b/pkgs/development/python-modules/aiohttp-session/default.nix
@@ -0,0 +1,59 @@
+{ lib
+, buildPythonPackage
+, fetchFromGitHub
+
+# build-system
+, setuptools
+
+# dependencies
+, aiohttp
+
+# optional-dependencies
+, aiomcache
+, cryptography
+, pynacl
+, redis
+}:
+
+buildPythonPackage rec {
+  pname = "aiohttp-session";
+  version = "2.12.0";
+  pyproject = true;
+
+  src = fetchFromGitHub {
+    owner = "aio-libs";
+    repo = "aiohttp-session";
+    rev = "v${version}";
+    hash = "sha256-7MNah4OIQnoxLoZkLOdeu5uCwSyPMhc6Wsht8dFconc=";
+  };
+
+  build-system = [
+    setuptools
+  ];
+
+  dependencies = [
+    aiohttp
+  ];
+
+  optional-dependencies = {
+    aioredis = [ redis ];
+    aiomcache = [ aiomcache ];
+    pycrypto = [ cryptography ];
+    secure = [ cryptography ];
+    pynacl = [ pynacl ];
+  };
+
+  doCheck = false; # runs redis in docker
+
+  pythonImportsCheck = [
+    "aiohttp_session"
+  ];
+
+  meta = with lib; {
+    description = "Web sessions for aiohttp.web";
+    homepage = "https://github.com/aio-libs/aiohttp-session";
+    changelog = "https://github.com/aio-libs/aiohttp-session/blob/${src.rev}/CHANGES.txt";
+    license = licenses.asl20;
+    maintainers = with maintainers; [ hexa ];
+  };
+}
diff --git a/pkgs/development/python-modules/aiohttp/default.nix b/pkgs/development/python-modules/aiohttp/default.nix
index e46b5989dd76..a84a54e2c6fa 100644
--- a/pkgs/development/python-modules/aiohttp/default.nix
+++ b/pkgs/development/python-modules/aiohttp/default.nix
@@ -5,6 +5,7 @@
 , fetchFromGitHub
 , substituteAll
 , llhttp
+, python
 # build_requires
 , cython
 , setuptools
@@ -29,7 +30,7 @@
 
 buildPythonPackage rec {
   pname = "aiohttp";
-  version = "3.9.3";
+  version = "3.9.5";
   pyproject = true;
 
   disabled = pythonOlder "3.8";
@@ -38,7 +39,7 @@ buildPythonPackage rec {
     owner = "aio-libs";
     repo = "aiohttp";
     rev = "refs/tags/v${version}";
-    hash = "sha256-dEeMHruFJ1o0J6VUJcpUk7LhEC8sV8hUKXoKcd618lE=";
+    hash = "sha256-FRtirmwgU8v+ee3db7rOFsmy0rNW8A7+yRZC5d6uYNA=";
   };
 
   patches = [
@@ -57,7 +58,7 @@ buildPythonPackage rec {
     touch .git  # tools/gen.py uses .git to find the project root
   '';
 
-  nativeBuildInputs = [
+  build-system = [
     cython
     setuptools
   ];
@@ -66,7 +67,7 @@ buildPythonPackage rec {
     make cythonize
   '';
 
-  propagatedBuildInputs = [
+  dependencies = [
     attrs
     multidict
     async-timeout
@@ -77,6 +78,11 @@ buildPythonPackage rec {
     brotli
   ];
 
+  postInstall = ''
+    # remove source code file with reference to dev dependencies
+    rm $out/${python.sitePackages}/aiohttp/_cparser.pxd{,.orig}
+  '';
+
   # NOTE: pytest-xdist cannot be added because it is flaky. See https://github.com/NixOS/nixpkgs/issues/230597 for more info.
   nativeCheckInputs = [
     freezegun
@@ -96,14 +102,6 @@ buildPythonPackage rec {
     "test_client_session_timeout_zero"
     "test_mark_formdata_as_processed"
     "test_requote_redirect_url_default"
-    # Disable tests that trigger deprecation warnings in pytest
-    "test_async_with_session"
-    "test_session_close_awaitable"
-    "test_close_run_until_complete_not_deprecated"
-    # https://github.com/aio-libs/aiohttp/issues/7130
-    "test_static_file_if_none_match"
-    "test_static_file_if_match"
-    "test_static_file_if_modified_since_past_date"
     # don't run benchmarks
     "test_import_time"
   ] ++ lib.optionals stdenv.is32bit [
diff --git a/pkgs/development/python-modules/aiokafka/default.nix b/pkgs/development/python-modules/aiokafka/default.nix
index 45f79d81948c..cddfbc9295d4 100644
--- a/pkgs/development/python-modules/aiokafka/default.nix
+++ b/pkgs/development/python-modules/aiokafka/default.nix
@@ -9,6 +9,7 @@
 , packaging
 , python-snappy
 , pythonOlder
+, setuptools
 , zlib
 , zstandard
 }:
@@ -16,32 +17,33 @@
 buildPythonPackage rec {
   pname = "aiokafka";
   version = "0.10.0";
-  format = "setuptools";
+  pyproject = true;
 
   disabled = pythonOlder "3.7";
 
   src = fetchFromGitHub {
     owner = "aio-libs";
-    repo = pname;
+    repo = "aiokafka";
     rev = "refs/tags/v${version}";
     hash = "sha256-G9Q77nWUUW+hG/wm9z/S8gea4U1wHZdj7WdK2LsKBos=";
   };
 
-  nativeBuildInputs = [
+  build-system = [
     cython
+    setuptools
   ];
 
   buildInputs = [
     zlib
   ];
 
-  propagatedBuildInputs = [
+  dependencies = [
     async-timeout
     kafka-python
     packaging
   ];
 
-  passthru.optional-dependencies = {
+  optional-dependencies = {
     snappy = [
       python-snappy
     ];
diff --git a/pkgs/development/python-modules/aiomcache/default.nix b/pkgs/development/python-modules/aiomcache/default.nix
new file mode 100644
index 000000000000..c5349ce13fc2
--- /dev/null
+++ b/pkgs/development/python-modules/aiomcache/default.nix
@@ -0,0 +1,49 @@
+{ lib
+, buildPythonPackage
+, fetchFromGitHub
+, pythonOlder
+
+# build-system
+, setuptools
+
+# dependencies
+, python-memcached
+, typing-extensions
+}:
+
+buildPythonPackage rec {
+  pname = "aiomcache";
+  version = "0.8.2";
+  pyproject = true;
+
+  src = fetchFromGitHub {
+    owner = "aio-libs";
+    repo = "aiomcache";
+    rev = "v${version}";
+    hash = "sha256-+rlKHDop0kNxJ0HoXROs/oyI4zE3MDyxXXhWZtVDMj4=";
+  };
+
+  build-system = [
+    setuptools
+  ];
+
+  dependencies = [
+    python-memcached
+  ] ++ lib.optionals (pythonOlder "3.11") [
+    typing-extensions
+  ];
+
+  doCheck = false; # executes memcached in docker
+
+  pythonImportsCheck = [
+    "aiomcache"
+  ];
+
+  meta = with lib; {
+    changelog = "https://github.com/aio-libs/aiomcache/blob/${src.rev}/CHANGES.rst";
+    description = "Minimal asyncio memcached client";
+    homepage = "https://github.com/aio-libs/aiomcache/";
+    license = licenses.bsd2;
+    maintainers = with maintainers; [ hexa ];
+  };
+}
diff --git a/pkgs/development/python-modules/aiomisc-pytest/default.nix b/pkgs/development/python-modules/aiomisc-pytest/default.nix
index 674aef1d02ef..01230505b2b6 100644
--- a/pkgs/development/python-modules/aiomisc-pytest/default.nix
+++ b/pkgs/development/python-modules/aiomisc-pytest/default.nix
@@ -1,16 +1,17 @@
-{ lib
-, aiomisc
-, buildPythonPackage
-, fetchPypi
-, poetry-core
-, pytest
-, pythonOlder
-, pythonRelaxDepsHook
+{
+  lib,
+  aiomisc,
+  buildPythonPackage,
+  fetchPypi,
+  poetry-core,
+  pytest,
+  pythonOlder,
+  pythonRelaxDepsHook,
 }:
 
 buildPythonPackage rec {
   pname = "aiomisc-pytest";
-  version = "1.1.2";
+  version = "1.2.1";
   pyproject = true;
 
   disabled = pythonOlder "3.7";
@@ -18,29 +19,20 @@ buildPythonPackage rec {
   src = fetchPypi {
     pname = "aiomisc_pytest";
     inherit version;
-    hash = "sha256-Zja0cNFrn6mUFlZOtzAtBJ/Gn27akD59qX6p88ytD6w=";
+    hash = "sha256-4mWP77R3CoX+XhoT6BbxQtxpINpdmeozjYUsegNfMyU=";
   };
 
-  nativeBuildInputs = [
-    poetry-core
-    pythonRelaxDepsHook
-  ];
+  build-system = [ poetry-core ];
 
-  pythonRelaxDeps = [
-    "pytest"
-  ];
+  nativeBuildInputs = [ pythonRelaxDepsHook ];
 
-  buildInputs = [
-    pytest
-  ];
+  pythonRelaxDeps = [ "pytest" ];
 
-  propagatedBuildInputs = [
-    aiomisc
-  ];
+  buildInputs = [ pytest ];
 
-  pythonImportsCheck = [
-    "aiomisc_pytest"
-  ];
+  dependencies = [ aiomisc ];
+
+  pythonImportsCheck = [ "aiomisc_pytest" ];
 
   # Module has no tests
   doCheck = false;
diff --git a/pkgs/development/python-modules/aiomisc/default.nix b/pkgs/development/python-modules/aiomisc/default.nix
index 9182859bb90e..0b4bf7483d84 100644
--- a/pkgs/development/python-modules/aiomisc/default.nix
+++ b/pkgs/development/python-modules/aiomisc/default.nix
@@ -22,14 +22,14 @@
 
 buildPythonPackage rec {
   pname = "aiomisc";
-  version = "17.5.6";
+  version = "17.5.19";
   pyproject = true;
 
   disabled = pythonOlder "3.8";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-oq4z+ULN6VYkXX4Oz/JqKZSIh55AHOxFJVLyaNGqaNA=";
+    hash = "sha256-0tcWfi4zxqDDMknDPOLNm+S+K1qmHQ5n/PqNFyNbwZg=";
   };
 
   build-system = [ poetry-core ];
diff --git a/pkgs/development/python-modules/aiomqtt/default.nix b/pkgs/development/python-modules/aiomqtt/default.nix
index 16450a8758b9..3a5321198edf 100644
--- a/pkgs/development/python-modules/aiomqtt/default.nix
+++ b/pkgs/development/python-modules/aiomqtt/default.nix
@@ -13,7 +13,7 @@
 buildPythonPackage rec {
   pname = "aiomqtt";
   version = "2.0.1";
-  format = "pyproject";
+  pyproject = true;
 
   disabled = pythonOlder "3.8";
 
@@ -24,12 +24,12 @@ buildPythonPackage rec {
     hash = "sha256-bV1elEO1518LVLwNDN5pzjxRgcG34K1XUsK7fTw8h+8=";
   };
 
-  nativeBuildInputs = [
+  build-system = [
     poetry-core
     poetry-dynamic-versioning
   ];
 
-  propagatedBuildInputs = [
+  dependencies = [
     paho-mqtt
     typing-extensions
   ];
diff --git a/pkgs/development/python-modules/aiomysql/default.nix b/pkgs/development/python-modules/aiomysql/default.nix
index acd3cc56e4a8..140ddfd0e517 100644
--- a/pkgs/development/python-modules/aiomysql/default.nix
+++ b/pkgs/development/python-modules/aiomysql/default.nix
@@ -4,6 +4,7 @@
 , fetchpatch
 , pymysql
 , pythonOlder
+, setuptools
 , setuptools-scm
 , wheel
 }:
@@ -11,13 +12,13 @@
 buildPythonPackage rec {
   pname = "aiomysql";
   version = "0.2.0";
-  format = "pyproject";
+  pyproject = true;
 
   disabled = pythonOlder "3.7";
 
   src = fetchFromGitHub {
     owner = "aio-libs";
-    repo = pname;
+    repo = "aiomysql";
     rev = "refs/tags/v${version}";
     hash = "sha256-m/EgoBU3e+s3soXyYtACMDSjJfMLBOk/00qPtgawwQ8=";
   };
@@ -33,6 +34,7 @@ buildPythonPackage rec {
   ];
 
   nativeBuildInputs = [
+    setuptools
     setuptools-scm
     wheel
   ];
diff --git a/pkgs/development/python-modules/aiorpcx/default.nix b/pkgs/development/python-modules/aiorpcx/default.nix
index 09a2bfb8562d..5686a7dafd12 100644
--- a/pkgs/development/python-modules/aiorpcx/default.nix
+++ b/pkgs/development/python-modules/aiorpcx/default.nix
@@ -7,13 +7,13 @@
 
 buildPythonPackage rec {
   pname = "aiorpcx";
-  version = "0.22.1";
+  version = "0.23.1";
   format = "setuptools";
 
   src = fetchPypi {
     inherit version;
     pname = "aiorpcX";
-    sha256 = "0lx54bcinp44fmr8q4bbffsqbkg8kdcwykf9i5jj0bj3sfzgf9k0";
+    sha256 = "sha256-WyMALxpNXTCF4xVVoHUZxe+NTEAHHrSZVW/9qBFIYKI=";
   };
 
   propagatedBuildInputs = [ attrs ];
diff --git a/pkgs/development/python-modules/aiorun/default.nix b/pkgs/development/python-modules/aiorun/default.nix
index f0e63e0ae374..1d181dc7cf4f 100644
--- a/pkgs/development/python-modules/aiorun/default.nix
+++ b/pkgs/development/python-modules/aiorun/default.nix
@@ -12,13 +12,13 @@
 buildPythonPackage rec {
   pname = "aiorun";
   version = "2023.7.2";
-  format = "pyproject";
+  pyproject = true;
 
   disabled = pythonOlder "3.7";
 
   src = fetchFromGitHub {
     owner = "cjrh";
-    repo = pname;
+    repo = "aiorun";
     rev = "refs/tags/v${version}";
     hash = "sha256-3AGsT8IUNi5SZHBsBfd7akj8eQ+xb0mrR7ydIr3T8gs=";
   };
@@ -31,11 +31,11 @@ buildPythonPackage rec {
     })
   ];
 
-  nativeBuildInputs = [
+  build-system = [
     flit-core
   ];
 
-  propagatedBuildInputs = [
+  dependencies = [
     pygments
   ];
 
diff --git a/pkgs/development/python-modules/aioshelly/default.nix b/pkgs/development/python-modules/aioshelly/default.nix
index 55c60d8e921a..8011abb1882c 100644
--- a/pkgs/development/python-modules/aioshelly/default.nix
+++ b/pkgs/development/python-modules/aioshelly/default.nix
@@ -1,34 +1,33 @@
-{ lib
-, aiohttp
-, bluetooth-data-tools
-, buildPythonPackage
-, fetchFromGitHub
-, habluetooth
-, orjson
-, pythonOlder
-, setuptools
-, yarl
+{
+  lib,
+  aiohttp,
+  bluetooth-data-tools,
+  buildPythonPackage,
+  fetchFromGitHub,
+  habluetooth,
+  orjson,
+  pythonOlder,
+  setuptools,
+  yarl,
 }:
 
 buildPythonPackage rec {
   pname = "aioshelly";
-  version = "8.2.0";
+  version = "9.0.0";
   pyproject = true;
 
   disabled = pythonOlder "3.10";
 
   src = fetchFromGitHub {
     owner = "home-assistant-libs";
-    repo = pname;
+    repo = "aioshelly";
     rev = "refs/tags/${version}";
-    hash = "sha256-ZJ6lb3pd8DhNagaVq1uFwadtviuHCg44YZkh29ipu5U=";
+    hash = "sha256-yVjQlP4vIs3Nk94ZcafpLzxVMIJfLsPGee5G5IdnCRs=";
   };
 
-  nativeBuildInputs = [
-    setuptools
-  ];
+  build-system = [ setuptools ];
 
-  propagatedBuildInputs = [
+  dependencies = [
     aiohttp
     bluetooth-data-tools
     habluetooth
@@ -39,9 +38,7 @@ buildPythonPackage rec {
   # Project has no test
   doCheck = false;
 
-  pythonImportsCheck = [
-    "aioshelly"
-  ];
+  pythonImportsCheck = [ "aioshelly" ];
 
   meta = with lib; {
     description = "Python library to control Shelly";
diff --git a/pkgs/development/python-modules/aiosmtpd/default.nix b/pkgs/development/python-modules/aiosmtpd/default.nix
index 2f3c5e3b836c..39050153be2e 100644
--- a/pkgs/development/python-modules/aiosmtpd/default.nix
+++ b/pkgs/development/python-modules/aiosmtpd/default.nix
@@ -6,23 +6,28 @@
 , pytest-mock
 , pytestCheckHook
 , pythonOlder
+, setuptools
 , typing-extensions
 }:
 
 buildPythonPackage rec {
   pname = "aiosmtpd";
   version = "1.4.5";
-  format = "setuptools";
+  pyproject = true;
 
   disabled = pythonOlder "3.6";
 
   src = fetchFromGitHub {
     owner = "aio-libs";
-    repo = pname;
+    repo = "aiosmtpd";
     rev = "refs/tags/v${version}";
     hash = "sha256-8nQ4BVSLYgZHRGkbujy/olV/+GABlkDhe5wef3hyQpQ=";
   };
 
+  nativeBuildInputs = [
+    setuptools
+  ];
+
   propagatedBuildInputs = [
     atpublic
     attrs
@@ -53,6 +58,7 @@ buildPythonPackage rec {
     description = "Asyncio based SMTP server";
     mainProgram = "aiosmtpd";
     homepage = "https://aiosmtpd.readthedocs.io/";
+    changelog = "https://github.com/aio-libs/aiosmtpd/releases/tag/v${version}";
     longDescription = ''
       This is a server for SMTP and related protocols, similar in utility to the
       standard library's smtpd.py module.
diff --git a/pkgs/development/python-modules/aiounifi/default.nix b/pkgs/development/python-modules/aiounifi/default.nix
index e36d82b521c5..1bf95b718742 100644
--- a/pkgs/development/python-modules/aiounifi/default.nix
+++ b/pkgs/development/python-modules/aiounifi/default.nix
@@ -16,7 +16,7 @@
 
 buildPythonPackage rec {
   pname = "aiounifi";
-  version = "76";
+  version = "78";
   pyproject = true;
 
   disabled = pythonOlder "3.11";
@@ -25,7 +25,7 @@ buildPythonPackage rec {
     owner = "Kane610";
     repo = "aiounifi";
     rev = "refs/tags/v${version}";
-    hash = "sha256-N9N7sMHBiEhYUFok4bTSJZyp5pkJzj9pMxahY6FTx+I=";
+    hash = "sha256-fY3VsXJfs/uqqQjR6Sp03XlkCOk+8GvXq476dgagJQ8=";
   };
 
   postPatch = ''
diff --git a/pkgs/development/python-modules/airthings-ble/default.nix b/pkgs/development/python-modules/airthings-ble/default.nix
index 1f9458541065..9e84b10802f9 100644
--- a/pkgs/development/python-modules/airthings-ble/default.nix
+++ b/pkgs/development/python-modules/airthings-ble/default.nix
@@ -1,18 +1,19 @@
-{ lib
-, async-interrupt
-, async-timeout
-, bleak
-, bleak-retry-connector
-, buildPythonPackage
-, fetchFromGitHub
-, poetry-core
-, pytestCheckHook
-, pythonOlder
+{
+  lib,
+  async-interrupt,
+  async-timeout,
+  bleak,
+  bleak-retry-connector,
+  buildPythonPackage,
+  fetchFromGitHub,
+  poetry-core,
+  pytestCheckHook,
+  pythonOlder,
 }:
 
 buildPythonPackage rec {
   pname = "airthings-ble";
-  version = "0.7.1";
+  version = "0.9.0";
   pyproject = true;
 
   disabled = pythonOlder "3.9";
@@ -21,7 +22,7 @@ buildPythonPackage rec {
     owner = "vincegio";
     repo = "airthings-ble";
     rev = "refs/tags/${version}";
-    hash = "sha256-BeOrGRVxvfQR1xqIpOp4tOTvlqTKCZHUjVKDqVjVnYM=";
+    hash = "sha256-920Vgk8kY5NsjYrOGYoRtcdHl4KKO7ytieH8cJ0S3RE=";
   };
 
   postPatch = ''
@@ -29,30 +30,22 @@ buildPythonPackage rec {
       --replace-fail "-v -Wdefault --cov=airthings_ble --cov-report=term-missing:skip-covered" ""
   '';
 
-  nativeBuildInputs = [
-    poetry-core
-  ];
+  build-system = [ poetry-core ];
 
-  propagatedBuildInputs = [
+  dependencies = [
     async-interrupt
     bleak
     bleak-retry-connector
-  ]  ++ lib.optionals (pythonOlder "3.11") [
-    async-timeout
-  ];
+  ] ++ lib.optionals (pythonOlder "3.11") [ async-timeout ];
 
-  nativeCheckInputs = [
-    pytestCheckHook
-  ];
+  nativeCheckInputs = [ pytestCheckHook ];
 
-  pythonImportsCheck = [
-    "airthings_ble"
-  ];
+  pythonImportsCheck = [ "airthings_ble" ];
 
   meta = with lib; {
     description = "Library for Airthings BLE devices";
     homepage = "https://github.com/vincegio/airthings-ble";
-    changelog = "https://github.com/vincegio/airthings-ble/releases/tag/v${version}";
+    changelog = "https://github.com/vincegio/airthings-ble/releases/tag/${version}";
     license = with licenses; [ mit ];
     maintainers = with maintainers; [ fab ];
   };
diff --git a/pkgs/development/python-modules/albumentations/default.nix b/pkgs/development/python-modules/albumentations/default.nix
index 17e9c7fc7974..7e15fcf6c116 100644
--- a/pkgs/development/python-modules/albumentations/default.nix
+++ b/pkgs/development/python-modules/albumentations/default.nix
@@ -1,31 +1,35 @@
 { lib
 , buildPythonPackage
-, fetchPypi
+, fetchFromGitHub
 , setuptools
+, deepdiff
 , numpy
 , opencv4
 , pyyaml
-, qudida
 , scikit-image
+, scikit-learn
 , scipy
-, deepdiff
+, pydantic
 , pytestCheckHook
 , pythonOlder
 , pythonRelaxDepsHook
 , torch
 , torchvision
+, typing-extensions
 }:
 
 buildPythonPackage rec {
   pname = "albumentations";
-  version = "1.4.2";
+  version = "1.4.4";
   pyproject = true;
 
   disabled = pythonOlder "3.8";
 
-  src = fetchPypi {
-    inherit pname version;
-    hash = "sha256-lznWLJocXdfwnhAZ33V5ZdlFCAsNa0u/rjfkjmHBQOg=";
+  src = fetchFromGitHub {
+    owner = "albumentations-team";
+    repo = "albumentations";
+    rev = "refs/tags/${version}";
+    hash = "sha256-7t1+22zzFtkZaAyOo6xjk+MXT9N44PmQ/NRRfvLeRVk=";
   };
 
   nativeBuildInputs = [
@@ -34,6 +38,7 @@ buildPythonPackage rec {
 
   pythonRemoveDeps = [
     "opencv-python"
+    "pydantic"
   ];
 
   build-system = [
@@ -43,10 +48,12 @@ buildPythonPackage rec {
   dependencies = [
     numpy
     opencv4
+    pydantic
     pyyaml
-    qudida
     scikit-image
+    scikit-learn
     scipy
+    typing-extensions
   ];
 
   nativeCheckInputs = [
diff --git a/pkgs/development/python-modules/alembic/default.nix b/pkgs/development/python-modules/alembic/default.nix
index cd7b0696afd4..47c6a22ea181 100644
--- a/pkgs/development/python-modules/alembic/default.nix
+++ b/pkgs/development/python-modules/alembic/default.nix
@@ -22,7 +22,7 @@
 buildPythonPackage rec {
   pname = "alembic";
   version = "1.13.1";
-  format = "setuptools";
+  pyproject = true;
 
   disabled = pythonOlder "3.6";
 
@@ -31,11 +31,11 @@ buildPythonPackage rec {
     hash = "sha256-STLIVYv2jy7pK5u8uCGGccYnBk1bCJOUN69td9wF5ZU=";
   };
 
-  nativeBuildInputs = [
+  build-system = [
     setuptools
   ];
 
-  propagatedBuildInputs = [
+  dependencies = [
     mako
     sqlalchemy
     typing-extensions
diff --git a/pkgs/development/python-modules/aliyun-python-sdk-kms/default.nix b/pkgs/development/python-modules/aliyun-python-sdk-kms/default.nix
index 55288c2b6d2a..7364654c8322 100644
--- a/pkgs/development/python-modules/aliyun-python-sdk-kms/default.nix
+++ b/pkgs/development/python-modules/aliyun-python-sdk-kms/default.nix
@@ -1,32 +1,32 @@
-{ lib
-, aliyun-python-sdk-core
-, buildPythonPackage
-, fetchPypi
-, pythonOlder
+{
+  lib,
+  aliyun-python-sdk-core,
+  buildPythonPackage,
+  fetchPypi,
+  pythonOlder,
+  setuptools,
 }:
 
 buildPythonPackage rec {
   pname = "aliyun-python-sdk-kms";
-  version = "2.16.2";
-  format = "setuptools";
+  version = "2.16.3";
+  pyproject = true;
 
   disabled = pythonOlder "3.7";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-+HI0qLZNRXyiM4+HZQ2xijzn99vJv+9x7+jyiUre09Y=";
+    hash = "sha256-wxt9JOFTJxowQ+gB57a2s/DbR+lag8jRDNq4wRZi/Dk=";
   };
 
-  propagatedBuildInputs = [
-    aliyun-python-sdk-core
-  ];
+  build-system = [ setuptools ];
+
+  dependencies = [ aliyun-python-sdk-core ];
 
   # All components are stored in a mono repo
   doCheck = false;
 
-  pythonImportsCheck = [
-    "aliyunsdkkms"
-  ];
+  pythonImportsCheck = [ "aliyunsdkkms" ];
 
   meta = with lib; {
     description = "KMS module of Aliyun Python SDK";
diff --git a/pkgs/development/python-modules/allure-behave/default.nix b/pkgs/development/python-modules/allure-behave/default.nix
index 8f39c1fb628e..ef9e8fc2bf20 100644
--- a/pkgs/development/python-modules/allure-behave/default.nix
+++ b/pkgs/development/python-modules/allure-behave/default.nix
@@ -9,14 +9,14 @@
 
 buildPythonPackage rec {
   pname = "allure-behave";
-  version = "2.13.2";
+  version = "2.13.5";
   format = "setuptools";
 
   disabled = pythonOlder "3.7";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-mxXb7+1tvf5EmVbD6eOmGfza9lAjbEVoxWZBSeZmPxQ=";
+    hash = "sha256-M4yizHOV0e491y9dfZLYkg8a3g4H3evGN7OOYeBtyNw=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/python-modules/allure-pytest/default.nix b/pkgs/development/python-modules/allure-pytest/default.nix
index ba86e0723a5d..504f118bc3a7 100644
--- a/pkgs/development/python-modules/allure-pytest/default.nix
+++ b/pkgs/development/python-modules/allure-pytest/default.nix
@@ -9,14 +9,14 @@
 
 buildPythonPackage rec {
   pname = "allure-pytest";
-  version = "2.13.2";
+  version = "2.13.5";
   pyproject = true;
 
   disabled = pythonOlder "3.7";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-IiQxWejsgc4rUlS0ATgCGYghsbQvEY9p1KKJOWYHx7M=";
+    hash = "sha256-DvjheQxEqYjba4PE1PXpFFHixMjqEGAd+ohSjSOvz24=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/python-modules/allure-python-commons-test/default.nix b/pkgs/development/python-modules/allure-python-commons-test/default.nix
index 4a75e18835a4..2e08bef31d70 100644
--- a/pkgs/development/python-modules/allure-python-commons-test/default.nix
+++ b/pkgs/development/python-modules/allure-python-commons-test/default.nix
@@ -1,7 +1,6 @@
 { lib
 , fetchPypi
 , buildPythonPackage
-, pythonOlder
 , attrs
 , pluggy
 , six
@@ -12,14 +11,12 @@
 
 buildPythonPackage rec {
   pname = "allure-python-commons-test";
-  version = "2.13.4";
+  version = "2.13.5";
   format = "setuptools";
 
-  disabled = pythonOlder "3.4";
-
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-WPthxhyKlN6fGdKXJLrjh3nbQ8h6CacYToyadh/p49M=";
+    hash = "sha256-pWkLVfBrLEhdhuTE95K3aqrhEY2wEyo5uRzuJC3ngjE=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/python-modules/allure-python-commons/default.nix b/pkgs/development/python-modules/allure-python-commons/default.nix
index 2e6a38e51341..c63466ce8e25 100644
--- a/pkgs/development/python-modules/allure-python-commons/default.nix
+++ b/pkgs/development/python-modules/allure-python-commons/default.nix
@@ -12,14 +12,14 @@
 
 buildPythonPackage rec {
   pname = "allure-python-commons";
-  version = "2.13.2";
+  version = "2.13.5";
   format = "setuptools";
 
   disabled = pythonOlder "3.7";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-igNoEzAjGx3q3Ya5f/aIQcZZEyARSuY4Vw8e1g16IDM=";
+    hash = "sha256-ojLnlVgR+Yjkmkwd1sFszn6bgdDqBCKx5WVNMlTiyvM=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/python-modules/android-backup/default.nix b/pkgs/development/python-modules/android-backup/default.nix
index 647a36f78b33..e958e853b046 100644
--- a/pkgs/development/python-modules/android-backup/default.nix
+++ b/pkgs/development/python-modules/android-backup/default.nix
@@ -2,8 +2,6 @@
 , buildPythonPackage
 , fetchFromGitHub
 , pycrypto
-, pythonOlder
-, enum34
 , python
 }:
 
@@ -21,7 +19,7 @@ buildPythonPackage rec {
 
   propagatedBuildInputs = [
     pycrypto
-  ] ++ lib.optional (pythonOlder "3.4") enum34;
+  ];
 
   checkPhase = ''
     ${python.interpreter} -m android_backup.tests
diff --git a/pkgs/development/python-modules/androidtvremote2/default.nix b/pkgs/development/python-modules/androidtvremote2/default.nix
index a0c066c4d975..df179dab636b 100644
--- a/pkgs/development/python-modules/androidtvremote2/default.nix
+++ b/pkgs/development/python-modules/androidtvremote2/default.nix
@@ -1,40 +1,37 @@
-{ lib
-, aiofiles
-, buildPythonPackage
-, cryptography
-, fetchFromGitHub
-, protobuf
-, pythonOlder
-, setuptools
+{
+  lib,
+  aiofiles,
+  buildPythonPackage,
+  cryptography,
+  fetchFromGitHub,
+  protobuf,
+  pythonOlder,
+  setuptools,
 }:
 
 buildPythonPackage rec {
   pname = "androidtvremote2";
-  version = "0.0.15";
-  format = "pyproject";
+  version = "0.1.1";
+  pyproject = true;
 
-  disabled = pythonOlder "3.7";
+  disabled = pythonOlder "3.10";
 
   src = fetchFromGitHub {
     owner = "tronikos";
     repo = "androidtvremote2";
     rev = "refs/tags/v${version}";
-    hash = "sha256-aLNmuMuwaMhl/Utv6bVU4fR8zmhj0fUiInL4RHT4dVw=";
+    hash = "sha256-Zem2IWBUWmyVdBjqoVKFk+/lg5T7CPXCKFXhFusQFLY=";
   };
 
-  nativeBuildInputs = [
-    setuptools
-  ];
+  build-system = [ setuptools ];
 
-  propagatedBuildInputs = [
+  dependencies = [
     aiofiles
     cryptography
     protobuf
   ];
 
-  pythonImportsCheck = [
-    "androidtvremote2"
-  ];
+  pythonImportsCheck = [ "androidtvremote2" ];
 
   # Module only has a dummy test
   doCheck = false;
diff --git a/pkgs/development/python-modules/angr/default.nix b/pkgs/development/python-modules/angr/default.nix
index b47510fcc4b1..b7f04cace729 100644
--- a/pkgs/development/python-modules/angr/default.nix
+++ b/pkgs/development/python-modules/angr/default.nix
@@ -37,7 +37,7 @@
 
 buildPythonPackage rec {
   pname = "angr";
-  version = "9.2.101";
+  version = "9.2.102";
   pyproject = true;
 
   disabled = pythonOlder "3.11";
@@ -46,7 +46,7 @@ buildPythonPackage rec {
     owner = "angr";
     repo = "angr";
     rev = "refs/tags/v${version}";
-    hash = "sha256-btj1bGpS/t1uQxmMiZ+PTBqiIb7eigg1vGTPjzr4/p4=";
+    hash = "sha256-NZO4aQQfp+P9nbVr+cFd5Z2Ziz9cYzuLUi6nVY+Czr0=";
   };
 
   pythonRelaxDeps = [ "capstone" ];
diff --git a/pkgs/development/python-modules/ansible-compat/default.nix b/pkgs/development/python-modules/ansible-compat/default.nix
index b3455fac82f4..0461bf66d805 100644
--- a/pkgs/development/python-modules/ansible-compat/default.nix
+++ b/pkgs/development/python-modules/ansible-compat/default.nix
@@ -6,6 +6,7 @@
 , pytest-mock
 , pytestCheckHook
 , pyyaml
+, setuptools
 , setuptools-scm
 , subprocess-tee
 , pythonOlder
@@ -14,7 +15,7 @@
 buildPythonPackage rec {
   pname = "ansible-compat";
   version = "4.1.11";
-  format = "pyproject";
+  pyproject = true;
 
   disabled = pythonOlder "3.7";
 
@@ -24,10 +25,11 @@ buildPythonPackage rec {
   };
 
   nativeBuildInputs = [
+    setuptools
     setuptools-scm
   ];
 
-  propagatedBuildInputs = [
+  dependencies = [
     pyyaml
     subprocess-tee
   ];
diff --git a/pkgs/development/python-modules/ansible-kernel/default.nix b/pkgs/development/python-modules/ansible-kernel/default.nix
index dda1fe09fad4..4bc9f89aec35 100644
--- a/pkgs/development/python-modules/ansible-kernel/default.nix
+++ b/pkgs/development/python-modules/ansible-kernel/default.nix
@@ -2,6 +2,7 @@
 , buildPythonPackage
 , fetchPypi
 , writeText
+, setuptools
 , ipywidgets
 , six
 , docopt
@@ -25,14 +26,16 @@ in
 buildPythonPackage rec {
   pname = "ansible-kernel";
   version = "1.0.0";
-  format = "setuptools";
+  pyproject = true;
 
   src = fetchPypi {
     inherit pname version;
     hash = "sha256-UJjm9FpmXSznXtaIR2rVv5YJS/H83FvRkNz09vwoe0c=";
   };
 
-  propagatedBuildInputs = [ ipywidgets six docopt tqdm jupyter psutil pyyaml ansible-runner ansible ];
+  build-system = [ setuptools ];
+
+  dependencies = [ ipywidgets six docopt tqdm jupyter psutil pyyaml ansible-runner ansible ];
 
   postPatch = ''
    # remove when merged
diff --git a/pkgs/development/python-modules/ansible-runner/default.nix b/pkgs/development/python-modules/ansible-runner/default.nix
index e4cb4c205d25..b0145a3113ee 100644
--- a/pkgs/development/python-modules/ansible-runner/default.nix
+++ b/pkgs/development/python-modules/ansible-runner/default.nix
@@ -18,13 +18,14 @@
 , pythonOlder
 , python-daemon
 , pyyaml
+, setuptools
 , six
 }:
 
 buildPythonPackage rec {
   pname = "ansible-runner";
   version = "2.3.6";
-  format = "setuptools";
+  pyproject = true;
 
   disabled = pythonOlder "3.8";
 
@@ -40,13 +41,19 @@ buildPythonPackage rec {
       hash = "sha256-eTnQkftvjK0YHU+ovotRVSuVlvaVeXp5SvYk1DPCg88=";
       excludes = [ ".github/workflows/ci.yml" "tox.ini" ];
     })
+    (fetchpatch {
+      # python 3.12 compat
+      url = "https://github.com/ansible/ansible-runner/commit/dc248497bb2375a363222ce755bf3a31f21d5f64.patch";
+      hash = "sha256-QT28Iw0uENoO35rqZpYBcmJB/GNDEF4m86SKf6p0XQU=";
+    })
   ];
 
-  nativeBuildInputs = [
+  build-system = [
+    setuptools
     pbr
   ];
 
-  propagatedBuildInputs = [
+  dependencies = [
     ansible-core
     psutil
     pexpect
diff --git a/pkgs/development/python-modules/ansiwrap/default.nix b/pkgs/development/python-modules/ansiwrap/default.nix
index 8dbfa99687c8..66ff581b9ba5 100644
--- a/pkgs/development/python-modules/ansiwrap/default.nix
+++ b/pkgs/development/python-modules/ansiwrap/default.nix
@@ -5,38 +5,39 @@
 , pytestCheckHook
 , pythonAtLeast
 , pythonOlder
+, setuptools
 , textwrap3
 }:
 
 buildPythonPackage rec {
   pname = "ansiwrap";
   version = "0.8.4";
-  format = "setuptools";
+  pyproject = true;
 
   disabled = pythonOlder "3.7" || pythonAtLeast "3.12";
 
   src = fetchPypi {
     inherit pname version;
     extension = "zip";
-    sha256 = "ca0c740734cde59bf919f8ff2c386f74f9a369818cdc60efe94893d01ea8d9b7";
+    hash = "sha256-ygx0BzTN5Zv5Gfj/LDhvdPmjaYGM3GDv6UiT0B6o2bc=";
   };
 
   postPatch = ''
     # https://github.com/jonathaneunice/ansiwrap/issues/18
     substituteInPlace test/test_ansiwrap.py \
-      --replace "set(range(20, 120)).difference(LINE_LENGTHS)" "sorted(set(range(20, 120)).difference(LINE_LENGTHS))" \
-      --replace "set(range(120, 400)).difference(LINE_LENGTHS)" "sorted(set(range(120, 400)).difference(LINE_LENGTHS))"
+      --replace-fail "set(range(20, 120)).difference(LINE_LENGTHS)" "sorted(set(range(20, 120)).difference(LINE_LENGTHS))" \
+      --replace-fail "set(range(120, 400)).difference(LINE_LENGTHS)" "sorted(set(range(120, 400)).difference(LINE_LENGTHS))"
   '';
 
-  checkInputs = [
+  build-system = [ setuptools ];
+
+  dependencies = [ textwrap3 ];
+
+  nativeCheckInputs = [
     ansicolors
     pytestCheckHook
   ];
 
-  propagatedBuildInputs = [
-    textwrap3
-  ];
-
   pythonImportsCheck = [
     "ansiwrap"
   ];
diff --git a/pkgs/development/python-modules/anthropic/default.nix b/pkgs/development/python-modules/anthropic/default.nix
index 5eef6a51010a..bfa36713ca09 100644
--- a/pkgs/development/python-modules/anthropic/default.nix
+++ b/pkgs/development/python-modules/anthropic/default.nix
@@ -21,7 +21,7 @@
 
 buildPythonPackage rec {
   pname = "anthropic";
-  version = "0.25.6";
+  version = "0.25.8";
   pyproject = true;
 
   disabled = pythonOlder "3.8";
@@ -30,7 +30,7 @@ buildPythonPackage rec {
     owner = "anthropics";
     repo = "anthropic-sdk-python";
     rev = "refs/tags/v${version}";
-    hash = "sha256-83TufOgu6W9UvoCEUgDiw6gXDAdwyIKEALVF0hjj6wk=";
+    hash = "sha256-CBe5rzO2+m1AGfDbAqxCzZ+Rm1Er4e0JuxtFRzgHV/Q=";
   };
 
   build-system = [
diff --git a/pkgs/development/python-modules/anyascii/default.nix b/pkgs/development/python-modules/anyascii/default.nix
index d781a552cca1..3e001d5a1874 100644
--- a/pkgs/development/python-modules/anyascii/default.nix
+++ b/pkgs/development/python-modules/anyascii/default.nix
@@ -1,6 +1,5 @@
 { lib
 , buildPythonPackage
-, pythonOlder
 , fetchPypi
 , pytestCheckHook
 }:
@@ -9,7 +8,6 @@ buildPythonPackage rec {
   pname = "anyascii";
   version = "0.3.2";
   format = "setuptools";
-  disabled = pythonOlder "3.3";
 
   src = fetchPypi {
     inherit pname version;
diff --git a/pkgs/development/python-modules/apipkg/default.nix b/pkgs/development/python-modules/apipkg/default.nix
index b37c1b11fe6f..7fa8bdf06f58 100644
--- a/pkgs/development/python-modules/apipkg/default.nix
+++ b/pkgs/development/python-modules/apipkg/default.nix
@@ -9,16 +9,16 @@
 buildPythonPackage rec {
   pname = "apipkg";
   version = "3.0.2";
-  format = "pyproject";
+  pyproject = true;
 
   src = fetchFromGitHub {
     owner = "pytest-dev";
-    repo = pname;
+    repo = "apipkg";
     rev = "refs/tags/v${version}";
     hash = "sha256-ANLD7fUMKN3RmAVjVkcpwUH6U9ASalXdwKtPpoC8Urs=";
   };
 
-  nativeBuildInputs = [
+  build-system = [
     hatch-vcs
     hatchling
   ];
diff --git a/pkgs/development/python-modules/app-model/default.nix b/pkgs/development/python-modules/app-model/default.nix
index 7dc1c65349ea..bf2130e22417 100644
--- a/pkgs/development/python-modules/app-model/default.nix
+++ b/pkgs/development/python-modules/app-model/default.nix
@@ -1,20 +1,21 @@
-{ lib
-, buildPythonPackage
-, fetchFromGitHub
-, hatch-vcs
-, hatchling
-, in-n-out
-, psygnal
-, pydantic
-, pydantic-compat
-, pytestCheckHook
-, pythonOlder
-, typing-extensions
+{
+  lib,
+  buildPythonPackage,
+  fetchFromGitHub,
+  hatch-vcs,
+  hatchling,
+  in-n-out,
+  psygnal,
+  pydantic,
+  pydantic-compat,
+  pytestCheckHook,
+  pythonOlder,
+  typing-extensions,
 }:
 
 buildPythonPackage rec {
   pname = "app-model";
-  version = "0.2.6";
+  version = "0.2.7";
   pyproject = true;
 
   disabled = pythonOlder "3.8";
@@ -23,15 +24,15 @@ buildPythonPackage rec {
     owner = "pyapp-kit";
     repo = "app-model";
     rev = "refs/tags/v${version}";
-    hash = "sha256-EMlxY9Xna9e3kWJ7X8oRuLHEmivwVFcEXRDvZfN2rNY=";
+    hash = "sha256-ISMSt7c8CoxffMhg7XC/ebKkgXFTBihDr1fGkqMCBoc=";
   };
 
-  nativeBuildInputs = [
+  build-system = [
     hatch-vcs
     hatchling
   ];
 
-  propagatedBuildInputs = [
+  dependencies = [
     psygnal
     pydantic
     pydantic-compat
@@ -39,13 +40,9 @@ buildPythonPackage rec {
     typing-extensions
   ];
 
-  nativeCheckInputs = [
-    pytestCheckHook
-  ];
+  nativeCheckInputs = [ pytestCheckHook ];
 
-  pythonImportsCheck = [
-    "app_model"
-  ];
+  pythonImportsCheck = [ "app_model" ];
 
   meta = with lib; {
     description = "Module to implement generic application schema";
diff --git a/pkgs/development/python-modules/apprise/default.nix b/pkgs/development/python-modules/apprise/default.nix
index 4d65c1babd19..e079703d17a0 100644
--- a/pkgs/development/python-modules/apprise/default.nix
+++ b/pkgs/development/python-modules/apprise/default.nix
@@ -1,39 +1,44 @@
-{ lib
-, babel
-, buildPythonPackage
-, click
-, cryptography
-, fetchPypi
-, gntp
-, installShellFiles
-, markdown
-, paho-mqtt
-, pytest-mock
-, pytest-xdist
-, pytestCheckHook
-, pythonOlder
-, pyyaml
-, requests
-, requests-oauthlib
+{
+  lib,
+  babel,
+  buildPythonPackage,
+  click,
+  cryptography,
+  fetchPypi,
+  gntp,
+  installShellFiles,
+  markdown,
+  paho-mqtt,
+  pytest-mock,
+  pytest-xdist,
+  pytestCheckHook,
+  pythonOlder,
+  pyyaml,
+  requests,
+  requests-oauthlib,
+  setuptools,
 }:
 
 buildPythonPackage rec {
   pname = "apprise";
-  version = "1.7.6";
-  format = "setuptools";
+  version = "1.8.0";
+  pyproject = true;
 
   disabled = pythonOlder "3.7";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-B38JMJzIpskGPb1hSzQ4B9Un1UZpO3/o/FpEM1Av6mw=";
+    hash = "sha256-6PWM6/6ho09WnLTGiAmjF1voDsBvCi7Ec1IrkgIyEsU=";
   };
 
-  nativeBuildInputs = [
-    installShellFiles
+  nativeBuildInputs = [ installShellFiles ];
+
+  build-system = [
+    babel
+    setuptools
   ];
 
-  propagatedBuildInputs = [
+  dependencies = [
     click
     cryptography
     markdown
@@ -43,7 +48,6 @@ buildPythonPackage rec {
   ];
 
   nativeCheckInputs = [
-    babel
     gntp
     paho-mqtt
     pytest-mock
@@ -53,7 +57,11 @@ buildPythonPackage rec {
 
   disabledTests = [
     "test_apprise_cli_nux_env"
+    # Nondeterministic. Fails with `assert 0 == 1`
+    "test_notify_emoji_general"
     "test_plugin_mqtt_general"
+    # Nondeterministic. Fails with `AssertionError`
+    "test_plugin_xbmc_kodi_urls"
   ];
 
   disabledTestPaths = [
@@ -65,16 +73,14 @@ buildPythonPackage rec {
     installManPage packaging/man/apprise.1
   '';
 
-  pythonImportsCheck = [
-    "apprise"
-  ];
+  pythonImportsCheck = [ "apprise" ];
 
   meta = with lib; {
     description = "Push Notifications that work with just about every platform";
     homepage = "https://github.com/caronc/apprise";
     changelog = "https://github.com/caronc/apprise/releases/tag/v${version}";
     license = licenses.bsd3;
-    maintainers = with maintainers; [ ];
+    maintainers = with maintainers; [ getchoo ];
     mainProgram = "apprise";
   };
 }
diff --git a/pkgs/development/python-modules/apscheduler/default.nix b/pkgs/development/python-modules/apscheduler/default.nix
index 771d9a3d0200..7de46a521651 100644
--- a/pkgs/development/python-modules/apscheduler/default.nix
+++ b/pkgs/development/python-modules/apscheduler/default.nix
@@ -19,7 +19,7 @@
 buildPythonPackage rec {
   pname = "apscheduler";
   version = "3.10.4";
-  format = "setuptools";
+  pyproject = true;
 
   disabled = pythonOlder "3.7";
 
@@ -29,11 +29,12 @@ buildPythonPackage rec {
     hash = "sha256-5t8HGyfZvomOSGvHlAp75QtK8unafAjwdEqW1L1M70o=";
   };
 
-  buildInputs = [
+  build-system = [
+    setuptools
     setuptools-scm
   ];
 
-  propagatedBuildInputs = [
+  dependencies = [
     pytz
     setuptools
     six
@@ -51,7 +52,7 @@ buildPythonPackage rec {
 
   postPatch = ''
     substituteInPlace setup.cfg \
-      --replace " --cov --tb=short" ""
+      --replace-fail " --cov --tb=short" ""
   '';
 
   disabledTests = [
diff --git a/pkgs/development/python-modules/archinfo/default.nix b/pkgs/development/python-modules/archinfo/default.nix
index fe6ca55ad91b..47eef407bcb7 100644
--- a/pkgs/development/python-modules/archinfo/default.nix
+++ b/pkgs/development/python-modules/archinfo/default.nix
@@ -10,7 +10,7 @@
 
 buildPythonPackage rec {
   pname = "archinfo";
-  version = "9.2.101";
+  version = "9.2.102";
   pyproject = true;
 
   disabled = pythonOlder "3.8";
@@ -19,7 +19,7 @@ buildPythonPackage rec {
     owner = "angr";
     repo = "archinfo";
     rev = "refs/tags/v${version}";
-    hash = "sha256-58iijDVs4OqZytHDjhGqYRMSIVGPCWTUNRy74OQZcPw=";
+    hash = "sha256-aZwU/i1tBT6M5+PNR77vYzPKklWERXhvG1kknwC0RQQ=";
   };
 
   build-system = [ setuptools ];
diff --git a/pkgs/development/python-modules/argcomplete/default.nix b/pkgs/development/python-modules/argcomplete/default.nix
index 4427e75089fa..363b07758a2a 100644
--- a/pkgs/development/python-modules/argcomplete/default.nix
+++ b/pkgs/development/python-modules/argcomplete/default.nix
@@ -8,7 +8,7 @@
 
 buildPythonPackage rec {
   pname = "argcomplete";
-  version = "3.2.3";
+  version = "3.3.0";
   pyproject = true;
 
   disabled = pythonOlder "3.8";
@@ -17,7 +17,7 @@ buildPythonPackage rec {
     owner = "kislyuk";
     repo = pname;
     rev = "refs/tags/v${version}";
-    hash = "sha256-sGXHRHmzapJM/c4D4j3QWhkTNzPNZPLO7JOptnTXuR8=";
+    hash = "sha256-ekTmT6jYkC36X2e0ukwHfDGwdPg3jK8jML2naBCgNI8=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/python-modules/argilla/default.nix b/pkgs/development/python-modules/argilla/default.nix
index d3b87ca99f44..2d2e25a83ed5 100644
--- a/pkgs/development/python-modules/argilla/default.nix
+++ b/pkgs/development/python-modules/argilla/default.nix
@@ -1,145 +1,98 @@
-{ lib
-, buildPythonPackage
-, fetchFromGitHub
-, pythonOlder
-, pythonRelaxDepsHook
-, deprecated
-, rich
-, backoff
-, packaging
-, pydantic
-, typer
-, tqdm
-, wrapt
-, numpy
-, httpx
-, pandas
-, monotonic
-# optional-dependencies
-, fastapi
-, opensearch-py
-, elasticsearch8
-, uvicorn
-, smart-open
-, brotli-asgi
-, alembic
-, sqlalchemy
-, greenlet
-, aiosqlite
-, luqum
-, scikit-learn
-, aiofiles
-, pyyaml
-, python-multipart
-, python-jose
-, passlib
-, psutil
-# , segment-analytics-python
-, asyncpg
-, psycopg2
-, schedule
-, prodict
-, cleanlab
-, datasets
-, huggingface-hub
+{
+  lib,
+  aiofiles,
+  aiosqlite,
+  alembic,
+  asyncpg,
+  backoff,
+  brotli-asgi,
+  buildPythonPackage,
+  cleanlab,
+  datasets,
+  deprecated,
+  elasticsearch8,
+  evaluate,
+  factory-boy,
+  faiss,
+  fastapi,
+  fetchFromGitHub,
+  flyingsquid,
+  greenlet,
+  httpx,
+  huggingface-hub,
+  luqum,
+  monotonic,
+  numpy,
+  openai,
+  opensearch-py,
+  packaging,
+  pandas,
+  passlib,
+  peft,
+  pgmpy,
+  plotly,
+  prodict,
+  psutil,
+  psycopg2,
+  pydantic,
+  pytest-asyncio,
+  pytest-mock,
+  pytestCheckHook,
+  python-jose,
+  python-multipart,
+  pythonOlder,
+  pythonRelaxDepsHook,
+  pyyaml,
+  rich,
+  schedule,
+  scikit-learn,
+  sentence-transformers,
+  seqeval,
+  setuptools,
+  smart-open,
+  snorkel,
+  spacy,
+  spacy-transformers,
+  sqlalchemy,
+  tqdm,
+  transformers,
+  typer,
+  uvicorn,
+  wrapt,
 # , flair
-, faiss
-, flyingsquid
-, pgmpy
-, plotly
-, snorkel
-, spacy
-, transformers
-, evaluate
-, seqeval
 # , setfit
+# , spacy-huggingface-hub
 # , span_marker
-, openai
-, peft
-# test dependencies
-, pytestCheckHook
-, pytest-cov
-, pytest-mock
-, pytest-asyncio
-, factory-boy
+# , trl
 }:
-let
+
+buildPythonPackage rec {
   pname = "argilla";
-  version = "1.27.0";
-  optional-dependencies = {
-    server = [
-      fastapi
-      opensearch-py
-      elasticsearch8
-      uvicorn
-      smart-open
-      brotli-asgi
-      alembic
-      sqlalchemy
-      greenlet
-      aiosqlite
-      luqum
-      scikit-learn
-      aiofiles
-      pyyaml
-      python-multipart
-      python-jose
-      passlib
-      psutil
-      # segment-analytics-python
-    ] ++
-      elasticsearch8.optional-dependencies.async ++
-      uvicorn.optional-dependencies.standard ++
-      python-jose.optional-dependencies.cryptography ++
-      passlib.optional-dependencies.bcrypt;
-    postgresql = [ asyncpg psycopg2 ];
-    listeners = [ schedule prodict ];
-    integrations = [
-      pyyaml
-      cleanlab
-      datasets
-      huggingface-hub
-      # flair
-      faiss
-      flyingsquid
-      pgmpy
-      plotly
-      snorkel
-      spacy
-      transformers
-      evaluate
-      seqeval
-      # setfit
-      # span_marker
-      openai
-      peft
-    ] ++ transformers.optional-dependencies.torch;
-  };
-in
-buildPythonPackage {
-  inherit pname version;
-  format = "setuptools";
+  version = "1.28.0";
+  pyproject = true;
 
   disabled = pythonOlder "3.8";
 
   src = fetchFromGitHub {
     owner = "argilla-io";
-    repo = pname;
+    repo = "argilla";
     rev = "refs/tags/v${version}";
-    hash = "sha256-CBVP/+XFKnJBMcxsDd7lgQ1JFX7zFlHmdBwkAMmq85g=";
+    hash = "sha256-gQpJ2umi3IE5BhRu3bM7ONPIP0hb2YG37jGvDKQHZWA=";
   };
 
   pythonRelaxDeps = [
-    "typer"
-    "rich"
+    "httpx"
     "numpy"
+    "rich"
+    "typer"
+    "wrapt"
   ];
 
-  nativeBuildInputs = [
-    pythonRelaxDepsHook
-  ];
+  build-system = [ setuptools ];
+
+  nativeBuildInputs = [ pythonRelaxDepsHook ];
 
-  propagatedBuildInputs = [
+  dependencies = [
     httpx
     deprecated
     packaging
@@ -154,7 +107,67 @@ buildPythonPackage {
     typer
   ];
 
-  # still quite a bit of optional dependencies missing
+  passthru.optional-dependencies = {
+    server =
+      [
+        aiofiles
+        aiosqlite
+        alembic
+        brotli-asgi
+        elasticsearch8
+        fastapi
+        greenlet
+        luqum
+        opensearch-py
+        passlib
+        psutil
+        python-jose
+        python-multipart
+        pyyaml
+        scikit-learn
+        smart-open
+        sqlalchemy
+        uvicorn
+      ]
+      ++ elasticsearch8.optional-dependencies.async
+      ++ uvicorn.optional-dependencies.standard
+      ++ python-jose.optional-dependencies.cryptography
+      ++ passlib.optional-dependencies.bcrypt;
+    postgresql = [
+      asyncpg
+      psycopg2
+    ];
+    listeners = [
+      schedule
+      prodict
+    ];
+    integrations = [
+      cleanlab
+      datasets
+      evaluate
+      faiss
+      flyingsquid
+      huggingface-hub
+      openai
+      peft
+      pgmpy
+      plotly
+      pyyaml
+      sentence-transformers
+      seqeval
+      snorkel
+      spacy
+      spacy-transformers
+      transformers
+      # flair
+      # setfit
+      # span_marker
+      # trl
+      # spacy-huggingface-hub
+    ] ++ transformers.optional-dependencies.torch;
+  };
+
+  # Still quite a bit of optional dependencies missing
   doCheck = false;
 
   preCheck = ''
@@ -163,26 +176,19 @@ buildPythonPackage {
 
   nativeCheckInputs = [
     pytestCheckHook
-    pytest-cov
     pytest-mock
     pytest-asyncio
     factory-boy
-  ]
-    ++ optional-dependencies.server
-    ++ optional-dependencies.postgresql
-    ++ optional-dependencies.listeners
-    ++ optional-dependencies.integrations;
+  ] ++ lib.flatten (builtins.attrValues passthru.optional-dependencies);
 
-  pytestFlagsArray = [ "--ignore=tests/server/datasets/test_dao.py" ];
-
-  passthru.optional-dependencies = optional-dependencies;
+  disabledTestPaths = [ "tests/server/datasets/test_dao.py" ];
 
   meta = with lib; {
-    description = "Argilla: the open-source data curation platform for LLMs";
-    mainProgram = "argilla";
+    description = "Open-source data curation platform for LLMs";
     homepage = "https://github.com/argilla-io/argilla";
     changelog = "https://github.com/argilla-io/argilla/releases/tag/v${version}";
     license = licenses.asl20;
     maintainers = with maintainers; [ happysalada ];
+    mainProgram = "argilla";
   };
 }
diff --git a/pkgs/development/python-modules/argostranslate/default.nix b/pkgs/development/python-modules/argostranslate/default.nix
index 57ea8db15a3d..f631da6ea800 100644
--- a/pkgs/development/python-modules/argostranslate/default.nix
+++ b/pkgs/development/python-modules/argostranslate/default.nix
@@ -18,13 +18,13 @@ let
 in
 buildPythonPackage rec {
   pname = "argostranslate";
-  version = "1.9.3";
+  version = "1.9.6";
 
   format = "setuptools";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "sha256-N1Dh8238cDKpIMeQT645lDvYMbOWjVqGuWxt37+TQmQ=";
+    sha256 = "sha256-3YzBMnqmcTIpn5UOFg3SDTFLjPSE9UDw0i8fB8LYh2s=";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/art/default.nix b/pkgs/development/python-modules/art/default.nix
index c1fbd475bc07..3b64d927324e 100644
--- a/pkgs/development/python-modules/art/default.nix
+++ b/pkgs/development/python-modules/art/default.nix
@@ -5,14 +5,14 @@
 
 buildPythonPackage rec {
   pname = "art";
-  version = "6.1";
+  version = "6.2";
   format = "setuptools";
 
   src = fetchFromGitHub {
     owner = "sepandhaghighi";
     repo = "art";
-    rev = "v${version}";
-    hash = "sha256-RJexYOGWwAwxQ7lWGgXzFSR2aly1twB9pC4QFs5m7k8=";
+    rev = "refs/tags/v${version}";
+    hash = "sha256-lFe6J3R+A1WE+LGywupjOGwhOcrUH5JE26Cit0DaT/4=";
   };
 
   pythonImportsCheck = [ "art" ];
diff --git a/pkgs/development/python-modules/asana/default.nix b/pkgs/development/python-modules/asana/default.nix
index a37a70844d6e..bdad7887ba7a 100644
--- a/pkgs/development/python-modules/asana/default.nix
+++ b/pkgs/development/python-modules/asana/default.nix
@@ -1,18 +1,19 @@
 { lib
 , buildPythonPackage
 , fetchFromGitHub
-, pytestCheckHook
 , pythonOlder
-, requests
-, requests-oauthlib
-, responses
+, setuptools
+, certifi
 , six
+, python-dateutil
+, urllib3
+, pytestCheckHook
 }:
 
 buildPythonPackage rec {
   pname = "asana";
   version = "5.0.3";
-  format = "setuptools";
+  pyproject = true;
 
   disabled = pythonOlder "3.7";
 
@@ -23,15 +24,17 @@ buildPythonPackage rec {
     hash = "sha256-9F63DvwMh9NwlTqFuhiXfgRRRxAFjjRYmYzsuOhlQJ0=";
   };
 
-  propagatedBuildInputs = [
-    requests
-    requests-oauthlib
+  build-system = [ setuptools ];
+
+  dependencies = [
+    certifi
     six
+    python-dateutil
+    urllib3
   ];
 
   nativeCheckInputs = [
     pytestCheckHook
-    responses
   ];
 
   pythonImportsCheck = [
diff --git a/pkgs/development/python-modules/asciitree/default.nix b/pkgs/development/python-modules/asciitree/default.nix
index 323e1fbf8739..206793653665 100644
--- a/pkgs/development/python-modules/asciitree/default.nix
+++ b/pkgs/development/python-modules/asciitree/default.nix
@@ -1,28 +1,29 @@
 { lib
 , buildPythonPackage
 , fetchFromGitHub
-, pytest
+, setuptools
+, pytestCheckHook
 }:
 
 buildPythonPackage rec {
   pname = "asciitree";
   version = "0.3.3";
-  format = "setuptools";
+  pyproject = true;
 
   src = fetchFromGitHub {
     owner = "mbr";
-    repo = pname;
+    repo = "asciitree";
     rev = version;
-    sha256 = "071wlpyi8pa262sj9xdy0zbj163z84dasxad363z3sfndqxw78h1";
+    hash = "sha256-AaLDO27W6fGHGU11rRpBf5gg1we+9SS1MEJdFP2lPBw=";
   };
 
-  nativeCheckInputs = [
-    pytest
+  build-system = [
+    setuptools
   ];
 
-  checkPhase = ''
-    pytest
-  '';
+  nativeCheckInputs = [
+    pytestCheckHook
+  ];
 
   meta = with lib; {
     description = "Draws ASCII trees";
diff --git a/pkgs/development/python-modules/asdf/default.nix b/pkgs/development/python-modules/asdf/default.nix
index a6508229a3f0..43fa7ae2fdca 100644
--- a/pkgs/development/python-modules/asdf/default.nix
+++ b/pkgs/development/python-modules/asdf/default.nix
@@ -1,98 +1,73 @@
 { lib
 , asdf-standard
 , asdf-transform-schemas
-, astropy
+, attrs
 , buildPythonPackage
 , fetchFromGitHub
-, fetchpatch
-, importlib-resources
+, fsspec
+, importlib-metadata
 , jmespath
-, jsonschema
 , lz4
 , numpy
 , packaging
-, pytest-astropy
+, psutil
+, pytest-remotedata
 , pytestCheckHook
 , pythonOlder
 , pyyaml
 , semantic-version
+, setuptools
 , setuptools-scm
 }:
 
 buildPythonPackage rec {
   pname = "asdf";
-  version = "2.13.0";
-  format = "pyproject";
+  version = "3.2.0";
+  pyproject = true;
 
-  disabled = pythonOlder "3.8";
+  disabled = pythonOlder "3.9";
 
   src = fetchFromGitHub {
-    owner = "asdf-format/";
-    repo = pname;
+    owner = "asdf-format";
+    repo = "asdf";
     rev = "refs/tags/${version}";
-    hash = "sha256-u8e7ot5NDRqQFH0eLVnGinBQmQD73BlR5K9HVjA7SIg=";
+    hash = "sha256-r+cEv6g7fq3I/h2mlszzJRQcazy7qP9pg0hfYG/Sa9E=";
   };
 
-  patches = [
-    # Fix default validation, https://github.com/asdf-format/asdf/pull/1203
-    (fetchpatch {
-      name = "default-validation.patch";
-      url = "https://github.com/asdf-format/asdf/commit/6f79f620b4632e20178d9bd53528702605d3e976.patch";
-      hash = "sha256-h/dYhXRCf5oIIC+u6+8C91mJnmEzuNmlEzqc0UEhLy0=";
-      excludes = [
-          "CHANGES.rst"
-      ];
-    })
-  ];
-
-  postPatch = ''
-    # https://github.com/asdf-format/asdf/pull/1203
-    substituteInPlace pyproject.toml \
-      --replace "'jsonschema >=4.0.1, <4.10.0'," "'jsonschema >=4.0.1',"
-  '';
-
-  nativeBuildInputs = [
+  build-system = [
+    setuptools
     setuptools-scm
   ];
 
-  propagatedBuildInputs = [
+  dependencies = [
     asdf-standard
     asdf-transform-schemas
+    importlib-metadata
     jmespath
-    jsonschema
     numpy
     packaging
     pyyaml
     semantic-version
-  ] ++ lib.optionals (pythonOlder "3.9") [
-    importlib-resources
+    attrs
   ];
 
   nativeCheckInputs = [
-    astropy
+    fsspec
     lz4
-    pytest-astropy
+    psutil
+    pytest-remotedata
     pytestCheckHook
   ];
 
-  preCheck = ''
-    export PY_IGNORE_IMPORTMISMATCH=1
-  '';
 
   pythonImportsCheck = [
     "asdf"
   ];
 
-  disabledTests = [
-    "config.rst"
-  ];
-
   meta = with lib; {
     description = "Python tools to handle ASDF files";
     homepage = "https://github.com/asdf-format/asdf";
     license = licenses.bsd3;
     maintainers = with maintainers; [ ];
-    # Many tests fail, according to Hydra
-    broken = true;
   };
 }
diff --git a/pkgs/development/python-modules/ase/default.nix b/pkgs/development/python-modules/ase/default.nix
index ed3c019146e5..087e7415b58b 100644
--- a/pkgs/development/python-modules/ase/default.nix
+++ b/pkgs/development/python-modules/ase/default.nix
@@ -2,18 +2,24 @@
 , fetchPypi
 , buildPythonPackage
 , isPy27
+, pythonAtLeast
+, setuptools
 , numpy
 , scipy
 , matplotlib
 , flask
 , pillow
 , psycopg2
+, pytestCheckHook
+, pytest-mock
+, pytest-xdist
 }:
 
 buildPythonPackage rec {
   pname = "ase";
   version = "3.22.1";
-  format = "setuptools";
+  pyproject = true;
+
   disabled = isPy27;
 
   src = fetchPypi {
@@ -21,14 +27,28 @@ buildPythonPackage rec {
     hash = "sha256-AE32sOoEsRFMeQ+t/kXUEl6w5TElxmqTQlr4U9gqtDI=";
   };
 
-  propagatedBuildInputs = [ numpy scipy matplotlib flask pillow psycopg2 ];
+  build-system = [ setuptools ];
 
-  checkPhase = ''
-    $out/bin/ase test
-  '';
+  dependencies = [ numpy scipy matplotlib flask pillow psycopg2 ];
+
+  nativeCheckInputs = [ pytestCheckHook pytest-mock pytest-xdist ];
 
-  # tests just hang most likely due to something with subprocesses and cli
-  doCheck = false;
+  disabledTests = [
+    "test_fundamental_params"
+    "test_ase_bandstructure"
+    "test_imports"
+    "test_units"
+    "test_favicon"
+    "test_vibrations_methods" # missing attribute
+    "test_jmol_roundtrip" # missing attribute
+  ]
+  ++ lib.optionals (pythonAtLeast "3.12") [
+    "test_info_calculators"
+  ];
+
+  preCheck = ''
+    export PATH="$out/bin:$PATH"
+  '';
 
   pythonImportsCheck = [ "ase" ];
 
diff --git a/pkgs/development/python-modules/aspell-python/default.nix b/pkgs/development/python-modules/aspell-python/default.nix
index 1af34b43fc29..1f66b49869e0 100644
--- a/pkgs/development/python-modules/aspell-python/default.nix
+++ b/pkgs/development/python-modules/aspell-python/default.nix
@@ -6,12 +6,13 @@
 , isPy27
 , pytestCheckHook
 , pythonAtLeast
+, setuptools
 }:
 
 buildPythonPackage rec {
   pname = "aspell-python";
   version = "1.15";
-  format = "setuptools";
+  pyproject = true;
 
   disabled = isPy27;
 
@@ -22,6 +23,10 @@ buildPythonPackage rec {
     hash = "sha256-IEKRDmQY5fOH9bQk0dkUAy7UzpBOoZW4cNtVvLMcs40=";
   };
 
+  build-system = [
+    setuptools
+  ];
+
   buildInputs = [
     aspell
   ];
diff --git a/pkgs/development/python-modules/astropy-healpix/default.nix b/pkgs/development/python-modules/astropy-healpix/default.nix
index 23db660f951b..26be3405964c 100644
--- a/pkgs/development/python-modules/astropy-healpix/default.nix
+++ b/pkgs/development/python-modules/astropy-healpix/default.nix
@@ -14,17 +14,22 @@
 
 buildPythonPackage rec {
   pname = "astropy-healpix";
-  version = "1.0.2";
+  version = "1.0.3";
   pyproject = true;
 
   src = fetchPypi {
     inherit version;
     pname = lib.replaceStrings ["-"] ["_"] pname;
-    hash = "sha256-BW+m7ZOWvtx3HTdNh3zeg9lGCj9ip4/gXb+boDlAMjo=";
+    hash = "sha256-3l0qfsl7FnBFBmlx8loVDR5AYfBxWb4jZJY02zbnl0Y=";
   };
 
+  postPatch = ''
+    substituteInPlace pyproject.toml --replace "numpy>=2.0.0rc1" "numpy"
+  '';
+
   nativeBuildInputs = [
     astropy-extension-helpers
+    numpy
     setuptools
     setuptools-scm
   ];
diff --git a/pkgs/development/python-modules/astroquery/default.nix b/pkgs/development/python-modules/astroquery/default.nix
index 610238559a2c..79bb6b03c243 100644
--- a/pkgs/development/python-modules/astroquery/default.nix
+++ b/pkgs/development/python-modules/astroquery/default.nix
@@ -10,6 +10,8 @@
 , pillow
 , pytest
 , pytest-astropy
+, pytest-dependency
+, pytest-rerunfailures
 , pytestCheckHook
 , pyvo
 , astropy-helpers
@@ -19,12 +21,12 @@
 
 buildPythonPackage rec {
   pname = "astroquery";
-  version = "0.4.6";
+  version = "0.4.7";
   format = "pyproject";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-MHylVMtzSgypoi+G9e/+fkE6+ROuZeFXiXLYR7H+E+4=";
+    hash = "sha256-BH+6ywpPrsTNtiZ16RnCRMHDXmYQRPy7bJqTMzF0fsk=";
   };
 
   disabled = !isPy3k;
@@ -46,11 +48,16 @@ buildPythonPackage rec {
   '';
 
   nativeCheckInputs = [
+    pytestCheckHook
+  ];
+
+  checkInputs = [
     matplotlib
     pillow
     pytest
     pytest-astropy
-    pytestCheckHook
+    pytest-dependency
+    pytest-rerunfailures
   ];
 
   pytestFlagsArray = [
diff --git a/pkgs/development/python-modules/asyncio-dgram/default.nix b/pkgs/development/python-modules/asyncio-dgram/default.nix
index f999cd3b3b34..cdd6ac9b9781 100644
--- a/pkgs/development/python-modules/asyncio-dgram/default.nix
+++ b/pkgs/development/python-modules/asyncio-dgram/default.nix
@@ -1,32 +1,33 @@
-{ lib
-, stdenv
-, buildPythonPackage
-, fetchFromGitHub
-, pytest-asyncio
-, pytestCheckHook
-, pythonOlder
+{
+  lib,
+  stdenv,
+  buildPythonPackage,
+  fetchFromGitHub,
+  pytest-asyncio,
+  pytestCheckHook,
+  pythonOlder,
+  setuptools,
 }:
 
 buildPythonPackage rec {
   pname = "asyncio-dgram";
-  version = "2.1.2";
-  format = "setuptools";
+  version = "2.2.0";
+  pyproject = true;
 
-  disabled = pythonOlder "3.5";
+  disabled = pythonOlder "3.7";
 
   src = fetchFromGitHub {
     owner = "jsbronder";
-    repo = pname;
-    rev = "refs/tagsv${version}";
+    repo = "asyncio-dgram";
+    rev = "refs/tags/v${version}";
     hash = "sha256-Eb/9JtgPT2yOlfnn5Ox8M0kcQhSlRCuX8+Rq6amki8Q=";
   };
 
-  nativeCheckInputs = [
-    pytestCheckHook
-  ];
+  build-system = [ setuptools ];
 
-  checkInputs = [
+  nativeCheckInputs = [
     pytest-asyncio
+    pytestCheckHook
   ];
 
   # OSError: AF_UNIX path too long
@@ -38,9 +39,7 @@ buildPythonPackage rec {
     "test_from_socket_bad_socket"
   ];
 
-  pythonImportsCheck = [
-    "asyncio_dgram"
-  ];
+  pythonImportsCheck = [ "asyncio_dgram" ];
 
   meta = with lib; {
     description = "Python support for higher level Datagram";
diff --git a/pkgs/development/python-modules/asyncssh/default.nix b/pkgs/development/python-modules/asyncssh/default.nix
index 735e831c0324..993947d5d7ea 100644
--- a/pkgs/development/python-modules/asyncssh/default.nix
+++ b/pkgs/development/python-modules/asyncssh/default.nix
@@ -1,5 +1,4 @@
 { lib
-, stdenv
 , bcrypt
 , buildPythonPackage
 , cryptography
@@ -15,13 +14,14 @@
 , pytestCheckHook
 , python-pkcs11
 , pythonOlder
+, setuptools
 , typing-extensions
 }:
 
 buildPythonPackage rec {
   pname = "asyncssh";
   version = "2.14.2";
-  format = "setuptools";
+  pyproject = true;
 
   disabled = pythonOlder "3.6";
 
@@ -30,14 +30,19 @@ buildPythonPackage rec {
     hash = "sha256-6Va/iYjQega6MwX2YE4mH0ygFMSiMvCHPxx2kvvjz8I=";
   };
 
-  propagatedBuildInputs = [
+  build-system = [ setuptools ];
+
+  dependencies = [
     cryptography
-    libsodium
     nettle
     typing-extensions
   ];
 
-  passthru.optional-dependencies = {
+  buildInputs = [
+    libsodium
+  ];
+
+  optional-dependencies = {
     bcrypt = [
       bcrypt
     ];
@@ -64,7 +69,7 @@ buildPythonPackage rec {
     openssh
     openssl
     pytestCheckHook
-  ] ++ lib.flatten (builtins.attrValues passthru.optional-dependencies);
+  ] ++ lib.flatten (builtins.attrValues optional-dependencies);
 
   patches = [
     # Reverts https://github.com/ronf/asyncssh/commit/4b3dec994b3aa821dba4db507030b569c3a32730
diff --git a/pkgs/development/python-modules/asyncwhois/default.nix b/pkgs/development/python-modules/asyncwhois/default.nix
index 084c9ee8d306..938ff02ce7e8 100644
--- a/pkgs/development/python-modules/asyncwhois/default.nix
+++ b/pkgs/development/python-modules/asyncwhois/default.nix
@@ -1,19 +1,20 @@
-{ lib
-, buildPythonPackage
-, fetchFromGitHub
-, pytest-asyncio
-, pytest-mock
-, pytestCheckHook
-, python-socks
-, pythonOlder
-, setuptools
-, tldextract
-, whodap
+{
+  lib,
+  buildPythonPackage,
+  fetchFromGitHub,
+  pytest-asyncio,
+  pytest-mock,
+  pytestCheckHook,
+  python-socks,
+  pythonOlder,
+  setuptools,
+  tldextract,
+  whodap,
 }:
 
 buildPythonPackage rec {
   pname = "asyncwhois";
-  version = "1.1.0";
+  version = "1.1.2";
   pyproject = true;
 
   disabled = pythonOlder "3.9";
@@ -22,14 +23,17 @@ buildPythonPackage rec {
     owner = "pogzyb";
     repo = "asyncwhois";
     rev = "refs/tags/v${version}";
-    hash = "sha256-rJwJhSOFrZZ3WXEZmPMfdosBBW/R5/PMqs0QLnsPMoI=";
+    hash = "sha256-ESVgK4Z26OAamdHPEVxysnlJ0rEUlr8KNd24fawHuEg=";
   };
 
-  nativeBuildInputs = [
-    setuptools
-  ];
+  postPatch = ''
+    substituteInPlace setup.py \
+      --replace-fail "python-socks[asyncio]" "python-socks"
+  '';
+
+  build-system = [ setuptools ];
 
-  propagatedBuildInputs = [
+  dependencies = [
     python-socks
     tldextract
     whodap
@@ -41,11 +45,6 @@ buildPythonPackage rec {
     pytestCheckHook
   ];
 
-  postPatch = ''
-    substituteInPlace setup.py \
-      --replace-fail "python-socks[asyncio]" "python-socks"
-  '';
-
   disabledTests = [
     # Tests require network access
     "test_pywhois_aio_get_hostname_from_ip"
@@ -63,9 +62,7 @@ buildPythonPackage rec {
     "test__get_top_level_domain"
   ];
 
-  pythonImportsCheck = [
-    "asyncwhois"
-  ];
+  pythonImportsCheck = [ "asyncwhois" ];
 
   meta = with lib; {
     description = "Python module for retrieving WHOIS information";
diff --git a/pkgs/development/python-modules/atomman/default.nix b/pkgs/development/python-modules/atomman/default.nix
index a245c93e3618..fca4cd88e48c 100644
--- a/pkgs/development/python-modules/atomman/default.nix
+++ b/pkgs/development/python-modules/atomman/default.nix
@@ -22,10 +22,10 @@
 , pythonRelaxDepsHook
 }:
 
-buildPythonPackage rec {
-  version = "unstable-2023-07-28";
+buildPythonPackage {
   pname = "atomman";
-  format = "pyproject";
+  version = "1.4.6-unstable-2023-07-28";
+  pyproject = true;
 
   disabled = pythonOlder "3.7";
 
@@ -36,14 +36,16 @@ buildPythonPackage rec {
     hash = "sha256-WfB+OY61IPprT6OCVHl8VA60p7lLVkRGuyYX+nm7bbA=";
   };
 
-  nativeBuildInputs = [
+  nativeBuildInputs = [ pythonRelaxDepsHook ];
+
+  build-system = [
     setuptools
     wheel
-    pythonRelaxDepsHook
+    numpy
+    cython
   ];
 
-  propagatedBuildInputs = [
-    cython
+  dependencies = [
     datamodeldict
     matplotlib
     numericalunits
diff --git a/pkgs/development/python-modules/atpublic/default.nix b/pkgs/development/python-modules/atpublic/default.nix
index 41cbe28b8a26..616581ffc6f5 100644
--- a/pkgs/development/python-modules/atpublic/default.nix
+++ b/pkgs/development/python-modules/atpublic/default.nix
@@ -3,25 +3,25 @@
 , fetchPypi
 , pytestCheckHook
 , pythonOlder
-, pdm-backend
+, hatchling
 , sybil
 , typing-extensions
 }:
 
 buildPythonPackage rec {
   pname = "atpublic";
-  version = "4.0";
+  version = "4.1.0";
   format = "pyproject";
 
   disabled = pythonOlder "3.6";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-D0BDMhnhJO3xFcbDY4CMpvDhz6fRYNhrL7lHkwhtEpQ=";
+    hash = "sha256-0cjNkxr3Rh9tGLxgYzg+hlTZ6e8Z1Y7m3AHoUVu/Vd8=";
   };
 
   nativeBuildInputs = [
-    pdm-backend
+    hatchling
   ];
 
   propagatedBuildInputs = lib.optionals (pythonOlder "3.8") [
diff --git a/pkgs/development/python-modules/atsim-potentials/default.nix b/pkgs/development/python-modules/atsim-potentials/default.nix
index b06ef867c21f..d391ef74539e 100644
--- a/pkgs/development/python-modules/atsim-potentials/default.nix
+++ b/pkgs/development/python-modules/atsim-potentials/default.nix
@@ -1,6 +1,8 @@
 { lib
 , buildPythonPackage
+, pythonAtLeast
 , fetchFromGitHub
+, setuptools
 , configparser
 , pyparsing
 , pytestCheckHook
@@ -14,23 +16,22 @@
 }:
 
 buildPythonPackage rec {
-  version = "0.4.1";
-  format = "setuptools";
   pname = "atsim-potentials";
+  version = "0.4.1";
+  pyproject = true;
 
   src = fetchFromGitHub {
     owner = "mjdrushton";
-    repo = pname;
+    repo = "atsim-potentials";
     rev = "refs/tags/${version}";
     hash = "sha256-G7lNqwEUwAT0f7M2nUTCxpXOAl6FWKlh7tcsvbur1eM=";
   };
 
-  postPatch = ''
-    # Remove conflicting openpyxl dependency version check
-    sed -i '/openpyxl==2.6.4/d' setup.py
-  '';
+  build-system = [
+    setuptools
+  ];
 
-  propagatedBuildInputs = [
+  dependencies = [
     cexprtk
     configparser
     future
@@ -46,10 +47,21 @@ buildPythonPackage rec {
     pytestCheckHook
   ];
 
+  # these files try to import `distutils` removed in Python 3.12
+  disabledTestPaths = lib.optionals (pythonAtLeast "3.12") [
+    "tests/config/test_configuration_eam.py"
+    "tests/config/test_configuration_eam_fs.py"
+    "tests/config/test_configuration_pair.py"
+    "tests/test_dlpoly_writeTABEAM.py"
+    "tests/test_documentation_examples.py"
+    "tests/test_eam_adp_writer.py"
+    "tests/test_gulp_writer.py"
+    "tests/test_lammpsWriteEAM.py"
+  ];
+
   disabledTests = [
     # Missing lammps executable
     "eam_tabulate_example2TestCase"
-    "test_pymath"
   ];
 
   pythonImportsCheck = [ "atsim.potentials" ];
diff --git a/pkgs/development/python-modules/attacut/default.nix b/pkgs/development/python-modules/attacut/default.nix
new file mode 100644
index 000000000000..70e8a98ccfd4
--- /dev/null
+++ b/pkgs/development/python-modules/attacut/default.nix
@@ -0,0 +1,73 @@
+{
+  lib,
+  buildPythonPackage,
+  fetchFromGitHub,
+  fetchpatch,
+
+  setuptools,
+
+  pytestCheckHook,
+
+  docopt,
+  fire,
+  numpy,
+  python-crfsuite,
+  pyyaml,
+  six,
+  ssg,
+  torch,
+}:
+
+buildPythonPackage rec {
+  pname = "attacut";
+  version = "1.1.0-dev";
+  pyproject = true;
+
+  src = fetchFromGitHub {
+    owner = "PyThaiNLP";
+    repo = "attacut";
+    rev = "refs/tags/v${version}";
+    hash = "sha256-x3JJC1Xd+tsOAHJEHGzIrhIrNGSvLSanAFc7+uXb2Kk=";
+  };
+
+  # no more need, see patch...
+  postPatch = ''
+    sed -i "/nptyping>=/d" setup.py
+  '';
+
+  patches = [
+    (fetchpatch {
+      name = "fix-nptyping-deprecated-array.patch";
+      url = "https://github.com/PyThaiNLP/attacut/commit/a707297b3f08a015d32d8ac241aa8cb11128cbd4.patch";
+      includes = [ "attacut/evaluation.py" ];
+      hash = "sha256-k2DJPwiH1Fyf5u6+zavx0bankCXsJVZrw1MGcf8ZL+M=";
+    })
+  ];
+
+  build-system = [ setuptools ];
+
+  dependencies = [
+    docopt
+    fire
+    numpy
+    python-crfsuite
+    pyyaml
+    six
+    ssg
+    torch
+  ];
+
+  nativeCheckInputs = [ pytestCheckHook ];
+
+  pytestFlagsArray = [ "tests/*" ];
+
+  pythonImportsCheck = [ "attacut" ];
+
+  meta = with lib; {
+    description = "A Fast and Accurate Neural Thai Word Segmenter";
+    homepage = "https://github.com/PyThaiNLP/attacut";
+    license = licenses.mit;
+    maintainers = with maintainers; [ vizid ];
+    mainProgram = "attacut-cli";
+  };
+}
diff --git a/pkgs/development/python-modules/aubio/default.nix b/pkgs/development/python-modules/aubio/default.nix
index b810544e4043..7ce07795bc5f 100644
--- a/pkgs/development/python-modules/aubio/default.nix
+++ b/pkgs/development/python-modules/aubio/default.nix
@@ -1,6 +1,7 @@
 { lib
 , buildPythonPackage
 , fetchFromGitHub
+, setuptools
 , numpy
 , pytestCheckHook
 , stdenv
@@ -10,18 +11,22 @@
 buildPythonPackage rec {
   pname = "aubio";
   version = "0.4.9";
-  format = "setuptools";
+  pyproject = true;
 
   src = fetchFromGitHub {
-    owner = pname;
-    repo = pname;
+    owner = "aubio";
+    repo = "aubio";
     rev = version;
-    sha256 = "0fhxikvlr010nbh02g455d5y8bq6j5yw180cdh4gsd0hb43y3z26";
+    hash = "sha256-RvzhB1kQNP0IbAygwH2RBi/kSyuFPAHgsiCATPeMHTo=";
   };
 
   buildInputs = lib.optionals stdenv.isDarwin (with darwin.apple_sdk.frameworks; [ Accelerate AudioToolbox CoreVideo CoreGraphics ]);
 
-  propagatedBuildInputs = [
+  build-system = [
+    setuptools
+  ];
+
+  dependencies = [
     numpy
   ];
 
diff --git a/pkgs/development/python-modules/audiotools/default.nix b/pkgs/development/python-modules/audiotools/default.nix
index 427faa4fe37b..6d85e2b18483 100644
--- a/pkgs/development/python-modules/audiotools/default.nix
+++ b/pkgs/development/python-modules/audiotools/default.nix
@@ -1,6 +1,7 @@
 { lib
 , buildPythonPackage
 , fetchFromGitHub
+, setuptools
 , stdenv
 , AudioToolbox
 , AudioUnit
@@ -10,7 +11,9 @@
 buildPythonPackage rec {
   pname = "audiotools";
   version = "3.1.1";
-  format = "setuptools";
+  pyproject = true;
+
+  build-system = [ setuptools ];
 
   buildInputs = lib.optionals stdenv.isDarwin [
     AudioToolbox
diff --git a/pkgs/development/python-modules/augmax/default.nix b/pkgs/development/python-modules/augmax/default.nix
index 2ab159cfc6f8..3be4c4713600 100644
--- a/pkgs/development/python-modules/augmax/default.nix
+++ b/pkgs/development/python-modules/augmax/default.nix
@@ -10,7 +10,7 @@
 
 buildPythonPackage rec {
   pname = "augmax";
-  version = "0.3.1";
+  version = "0.3.2";
   pyproject = true;
 
   disbaled = pythonOlder "3.6";
@@ -19,14 +19,17 @@ buildPythonPackage rec {
     owner = "khdlr";
     repo = "augmax";
     rev = "refs/tags/v${version}";
-    hash = "sha256-hDNNoE7KVaH3jrXZA4A8f0UoQJPl6KHA3XwMc3Ccohk=";
+    hash = "sha256-xz6yJiVZUkRcRa2rKZdytfpP+XCk/QI4xtKlNaS9FYo=";
   };
 
-  nativeBuildInputs = [
+  build-system = [
     setuptools
   ];
 
-  propagatedBuildInputs = [ einops jax ];
+  dependencies = [
+    einops
+    jax
+  ];
 
   # augmax does not have any tests at the time of writing (2022-02-19), but
   # jaxlib is necessary for the pythonImportsCheckPhase.
@@ -37,7 +40,7 @@ buildPythonPackage rec {
   meta = with lib; {
     description = "Efficiently Composable Data Augmentation on the GPU with Jax";
     homepage = "https://github.com/khdlr/augmax";
-    changelog = "https://github.com/khdlr/augmax/blob/${src.rev}/CHANGELOG.md";
+    changelog = "https://github.com/khdlr/augmax/blob/v${version}/CHANGELOG.md";
     license = licenses.asl20;
     maintainers = with maintainers; [ samuela ];
   };
diff --git a/pkgs/development/python-modules/autobahn/default.nix b/pkgs/development/python-modules/autobahn/default.nix
index 2bfbc16e8f91..238dbd8bba95 100644
--- a/pkgs/development/python-modules/autobahn/default.nix
+++ b/pkgs/development/python-modules/autobahn/default.nix
@@ -34,6 +34,7 @@
   # , pytrie
 , rlp
 , service-identity
+, setuptools
 , spake2
 , twisted
 , txaio
@@ -49,7 +50,7 @@
 buildPythonPackage rec {
   pname = "autobahn";
   version = "23.6.2";
-  format = "setuptools";
+  pyproject = true;
 
   disabled = pythonOlder "3.9";
 
@@ -60,10 +61,14 @@ buildPythonPackage rec {
 
   postPatch = ''
     substituteInPlace setup.py \
-      --replace "pytest>=2.8.6,<3.3.0" "pytest"
+      --replace-fail "pytest>=2.8.6,<3.3.0" "pytest"
   '';
 
-  propagatedBuildInputs = [
+  build-system = [
+    setuptools
+  ];
+
+  dependencies = [
     cryptography
     hyperlink
     pynacl
@@ -74,9 +79,9 @@ buildPythonPackage rec {
     mock
     pytest-asyncio_0_21
     pytestCheckHook
-  ] ++ passthru.optional-dependencies.scram
-  ++ passthru.optional-dependencies.serialization
-  ++ passthru.optional-dependencies.xbr;
+  ] ++ optional-dependencies.scram
+  ++ optional-dependencies.serialization
+  ++ optional-dependencies.xbr;
 
   preCheck = ''
     # Run asyncio tests (requires twisted)
@@ -91,7 +96,7 @@ buildPythonPackage rec {
     "autobahn"
   ];
 
-  passthru.optional-dependencies = rec {
+  optional-dependencies = rec {
     all = accelerate ++ compress ++ encryption ++ nvx ++ serialization ++ scram ++ twisted ++ ui ++ xbr;
     accelerate = [ /* wsaccel */ ];
     compress = [ python-snappy ];
diff --git a/pkgs/development/python-modules/av/default.nix b/pkgs/development/python-modules/av/default.nix
index b57472867005..7d2f6c14a7ee 100644
--- a/pkgs/development/python-modules/av/default.nix
+++ b/pkgs/development/python-modules/av/default.nix
@@ -3,6 +3,7 @@
 , buildPythonPackage
 , cython
 , fetchFromGitHub
+, fetchpatch
 , ffmpeg_5-headless
 , numpy
 , pillow
@@ -26,6 +27,15 @@ buildPythonPackage rec {
     hash = "sha256-pCKP+4ZmZCJcG7/Qy9H6aS4svQdgaRA9S1QVNWFYhSQ=";
   };
 
+  patches = [
+    # merged upstream PR: https://github.com/PyAV-Org/PyAV/pull/1387
+    (fetchpatch {
+      name = "use-pkg-config-env-var-fix-cross.patch";
+      url = "https://github.com/PyAV-Org/PyAV/commit/ba7a2c9f716af506838d399e6ed27ed6d64d2435.patch";
+      sha256 = "sha256-oH+g8sVoVCQe6DimRN38VT2GdziriwHYRAhldNxz9/E=";
+    })
+  ];
+
   nativeBuildInputs = [
     cython
     pkg-config
diff --git a/pkgs/development/python-modules/avro/default.nix b/pkgs/development/python-modules/avro/default.nix
index 21246fae4743..4b1f85e7d203 100644
--- a/pkgs/development/python-modules/avro/default.nix
+++ b/pkgs/development/python-modules/avro/default.nix
@@ -12,6 +12,7 @@ buildPythonPackage rec {
   version = "1.11.3";
   pyproject = true;
 
+  # distutils usage: https://github.com/search?q=repo%3Aapache%2Favro%20distutils&type=code
   disabled = pythonOlder "3.6";
 
   src = fetchPypi {
diff --git a/pkgs/development/python-modules/avwx-engine/default.nix b/pkgs/development/python-modules/avwx-engine/default.nix
new file mode 100644
index 000000000000..ccaaa09e5b09
--- /dev/null
+++ b/pkgs/development/python-modules/avwx-engine/default.nix
@@ -0,0 +1,84 @@
+{
+  lib,
+  buildPythonPackage,
+  fetchFromGitHub,
+  geopy,
+  httpx,
+  numpy,
+  poetry-core,
+  pytestCheckHook,
+  pytest-asyncio,
+  python-dateutil,
+  pythonOlder,
+  rapidfuzz,
+  scipy,
+  shapely,
+  time-machine,
+  xmltodict,
+}:
+
+buildPythonPackage rec {
+  pname = "avwx-engine";
+  version = "1.8.28";
+  pyproject = true;
+
+  disabled = pythonOlder "3.10";
+
+  src = fetchFromGitHub {
+    owner = "avwx-rest";
+    repo = "avwx-engine";
+    rev = "refs/tags/${version}";
+    hash = "sha256-sxOLhcmTJg/dTrtemr9BcfcBoHTP1eGo8U1ab8iSvUM=";
+  };
+
+  postPatch = ''
+    sed -i -e "/--cov/d" -e "/--no-cov/d" pyproject.toml
+  '';
+
+  build-system = [ poetry-core ];
+
+  dependencies = [
+    geopy
+    httpx
+    python-dateutil
+    xmltodict
+  ];
+
+  passthru.optional-dependencies = {
+    all = [
+      numpy
+      rapidfuzz
+      scipy
+      shapely
+    ];
+    fuzz = [ rapidfuzz ];
+    scipy = [
+      numpy
+      scipy
+    ];
+    shape = [ shapely ];
+  };
+
+  nativeCheckInputs = [
+    pytest-asyncio
+    pytestCheckHook
+    time-machine
+  ] ++ lib.flatten (builtins.attrValues passthru.optional-dependencies);
+
+  pythonImportsCheck = [ "avwx" ];
+
+  disabledTests = [
+    # Tests require network access
+    "fetch"
+    "test_nbm_all"
+    "test_station_nearest_ip"
+  ];
+
+  meta = with lib; {
+    description = "Aviation Weather parsing engine";
+    homepage = "https://github.com/avwx-rest/avwx-engine";
+    changelog = "https://github.com/avwx-rest/avwx-engine/blob/${version}/changelog.md";
+    license = licenses.mit;
+    maintainers = with maintainers; [ fab ];
+  };
+}
diff --git a/pkgs/development/python-modules/awkward-cpp/default.nix b/pkgs/development/python-modules/awkward-cpp/default.nix
index bd5c3197a097..e7d43e5cfae3 100644
--- a/pkgs/development/python-modules/awkward-cpp/default.nix
+++ b/pkgs/development/python-modules/awkward-cpp/default.nix
@@ -11,24 +11,24 @@
 
 buildPythonPackage rec {
   pname = "awkward-cpp";
-  version = "32";
+  version = "33";
   pyproject = true;
 
   disabled = pythonOlder "3.8";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-rYxa+GIG+w9DSxZ0nMXMppoVqI4WykPpHlbFzKd0IfA=";
+    hash = "sha256-VQrevM0ynRjQLpUibQuJaYGI/TPkTwdFCULGkogZJ9g=";
   };
 
-  nativeBuildInputs = [
+  build-system = [
     cmake
     ninja
     pybind11
     scikit-build-core
   ] ++ scikit-build-core.optional-dependencies.pyproject;
 
-  propagatedBuildInputs = [
+  dependencies = [
     numpy
   ];
 
diff --git a/pkgs/development/python-modules/awkward/default.nix b/pkgs/development/python-modules/awkward/default.nix
index d347b623d407..31e92178427a 100644
--- a/pkgs/development/python-modules/awkward/default.nix
+++ b/pkgs/development/python-modules/awkward/default.nix
@@ -24,7 +24,7 @@
 
 buildPythonPackage rec {
   pname = "awkward";
-  version = "2.6.3";
+  version = "2.6.4";
   pyproject = true;
 
   disabled = pythonOlder "3.8";
@@ -33,15 +33,15 @@ buildPythonPackage rec {
     owner = "scikit-hep";
     repo = "awkward";
     rev = "refs/tags/v${version}";
-    hash = "sha256-zII5TZ0bzVEo5hTrLr45N7oL3lYhkCyNfZif+0vkEo4=";
+    hash = "sha256-hoNxNxWfoSlBg6CsKvgEknM4vd+rN/9EFD5nC2y45OA=";
   };
 
-  nativeBuildInputs = [
+  build-system = [
     hatch-fancy-pypi-readme
     hatchling
   ];
 
-  propagatedBuildInputs = [
+  dependencies = [
     awkward-cpp
     fsspec
     importlib-metadata
diff --git a/pkgs/development/python-modules/aws-lambda-builders/default.nix b/pkgs/development/python-modules/aws-lambda-builders/default.nix
index 9e32768ee18d..561942aa79ce 100644
--- a/pkgs/development/python-modules/aws-lambda-builders/default.nix
+++ b/pkgs/development/python-modules/aws-lambda-builders/default.nix
@@ -13,7 +13,7 @@
 
 buildPythonPackage rec {
   pname = "aws-lambda-builders";
-  version = "1.48.0";
+  version = "1.49.0";
   pyproject = true;
 
   disabled = pythonOlder "3.8";
@@ -22,7 +22,7 @@ buildPythonPackage rec {
     owner = "awslabs";
     repo = "aws-lambda-builders";
     rev = "refs/tags/v${version}";
-    hash = "sha256-g1f0OL41lvs8OLyLcBk6XJk9wZO/oWluUj5sUcXlUIE=";
+    hash = "sha256-14qG3AuIlQI6n2XouPfUx7LNZqR0gSnI4OlkiYS62jA=";
   };
 
   postPatch = ''
diff --git a/pkgs/development/python-modules/ax/default.nix b/pkgs/development/python-modules/ax/default.nix
index f0bba36c3c2f..91da12fc1f73 100644
--- a/pkgs/development/python-modules/ax/default.nix
+++ b/pkgs/development/python-modules/ax/default.nix
@@ -20,14 +20,14 @@
 
 buildPythonPackage rec {
   pname = "ax";
-  version = "0.3.7";
+  version = "0.4.0";
   format = "pyproject";
 
   src = fetchFromGitHub {
     owner = "facebook";
     repo = pname;
     rev = "refs/tags/${version}";
-    hash = "sha256-UOX8Q7F5c9J1KSfQUy8aoL5CNb9YmEI4X7Fd5B16UqQ=";
+    hash = "sha256-dj6Gig8N4oLtcZLwPl4QDHG/FwA2nFBtYxSARnWiJJU=";
   };
 
   nativeBuildInputs = [
@@ -73,6 +73,8 @@ buildPythonPackage rec {
     "test_get_standard_plots_moo"
     # AssertionError: Expected 'warning' to be called once. Called 3 times
     "test_validate_kwarg_typing"
+    # uses torch.equal
+    "test_convert_observations"
   ];
   pythonImportsCheck = [ "ax" ];
 
diff --git a/pkgs/development/python-modules/azure-cosmos/default.nix b/pkgs/development/python-modules/azure-cosmos/default.nix
index df687eb52ac5..3b593399469e 100644
--- a/pkgs/development/python-modules/azure-cosmos/default.nix
+++ b/pkgs/development/python-modules/azure-cosmos/default.nix
@@ -10,14 +10,14 @@
 
 buildPythonPackage rec {
   pname = "azure-cosmos";
-  version = "4.6.0";
+  version = "4.7.0";
   pyproject = true;
 
   disabled = pythonOlder "3.8";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-2uxqwgHGRzsJK2Ku5x44G+62w6jcNhJJgytwSMTwYeI=";
+    hash = "sha256-ctcUAzE0ZWMCouiVfEuTWQZzvSiLDKYMsSPjSK6ZokE=";
   };
 
   build-system = [ setuptools ];
diff --git a/pkgs/development/python-modules/azure-identity/default.nix b/pkgs/development/python-modules/azure-identity/default.nix
index add836eee03f..18e21134a8db 100644
--- a/pkgs/development/python-modules/azure-identity/default.nix
+++ b/pkgs/development/python-modules/azure-identity/default.nix
@@ -10,14 +10,14 @@
 
 buildPythonPackage rec {
   pname = "azure-identity";
-  version = "1.15.0";
+  version = "1.16.0";
   format = "setuptools";
 
   disabled = pythonOlder "3.8";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-TCj8JGt/kmVhDrUmHWWTEYPQGaI9Sw6ZNX+ssubCJ8g=";
+    hash = "sha256-b/HWZ83Ngdoc6rQvgKC+Y8qEZin1GKki9zF6fjyEThs=";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/azure-mgmt-cdn/default.nix b/pkgs/development/python-modules/azure-mgmt-cdn/default.nix
index 3b6c5fd88b7b..7c53f86ca6c4 100644
--- a/pkgs/development/python-modules/azure-mgmt-cdn/default.nix
+++ b/pkgs/development/python-modules/azure-mgmt-cdn/default.nix
@@ -9,14 +9,15 @@
 
 buildPythonPackage rec {
   pname = "azure-mgmt-cdn";
-  version = "13.0.0";
+  version = "13.1.0";
   format = "setuptools";
 
   disabled = pythonOlder "3.8";
 
   src = fetchPypi {
-    inherit pname version;
-    hash = "sha256-yJ8jTeT4Gu23YSHl5GZ0+zdlC3s+GIxS4ir8z/HBkA4=";
+    pname = "azure_mgmt_cdn";
+    inherit version;
+    hash = "sha256-Igpr2snnXkwAyEGlnY3j7JAQ4LnhQS3snmwka2GeO/I=";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/azure-mgmt-containerservice/default.nix b/pkgs/development/python-modules/azure-mgmt-containerservice/default.nix
index 94417bc47ec7..c03cf2582452 100644
--- a/pkgs/development/python-modules/azure-mgmt-containerservice/default.nix
+++ b/pkgs/development/python-modules/azure-mgmt-containerservice/default.nix
@@ -1,31 +1,30 @@
-{ lib
-, azure-common
-, azure-mgmt-core
-, azure-mgmt-nspkg
-, buildPythonPackage
-, fetchPypi
-, isodate
-, pythonOlder
-, setuptools
+{
+  lib,
+  azure-common,
+  azure-mgmt-core,
+  azure-mgmt-nspkg,
+  buildPythonPackage,
+  fetchPypi,
+  isodate,
+  pythonOlder,
+  setuptools,
 }:
 
 buildPythonPackage rec {
   pname = "azure-mgmt-containerservice";
-  version = "29.1.0";
+  version = "30.0.0";
   pyproject = true;
 
   disabled = pythonOlder "3.8";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-RohxeLsQNZM/BvpjEhwaydTFhx8gKuK4a8Svbh47NU8=";
+    hash = "sha256-bGLmrFkONP7dc5/iSzGzdQcToBRhZpbqjUTHvMgcBrc=";
   };
 
-  nativeBuildInputs = [
-    setuptools
-  ];
+  build-system = [ setuptools ];
 
-  propagatedBuildInputs = [
+  dependencies = [
     azure-common
     azure-mgmt-core
     isodate
@@ -34,9 +33,7 @@ buildPythonPackage rec {
   # has no tests
   doCheck = false;
 
-  pythonImportsCheck = [
-    "azure.mgmt.containerservice"
-  ];
+  pythonImportsCheck = [ "azure.mgmt.containerservice" ];
 
   meta = with lib; {
     description = "This is the Microsoft Azure Container Service Management Client Library";
diff --git a/pkgs/development/python-modules/azure-mgmt-datafactory/default.nix b/pkgs/development/python-modules/azure-mgmt-datafactory/default.nix
index 7f760eecf397..9bbf7cec42ee 100644
--- a/pkgs/development/python-modules/azure-mgmt-datafactory/default.nix
+++ b/pkgs/development/python-modules/azure-mgmt-datafactory/default.nix
@@ -10,14 +10,14 @@
 
 buildPythonPackage rec {
   pname = "azure-mgmt-datafactory";
-  version = "6.1.0";
+  version = "7.0.0";
   pyproject = true;
 
   disabled = pythonOlder "3.8";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-9WMsfVh9ca/nbbTPVuj1BwhIv6kGZlPbTzqzhvadBps=";
+    hash = "sha256-99uvyPwzRnUxp4ePA5Xa19QVTRvkAjvHDVIGgbcBP7o=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/python-modules/azure-mgmt-recoveryservices/default.nix b/pkgs/development/python-modules/azure-mgmt-recoveryservices/default.nix
index 5f6377d54edd..5399eef058a8 100644
--- a/pkgs/development/python-modules/azure-mgmt-recoveryservices/default.nix
+++ b/pkgs/development/python-modules/azure-mgmt-recoveryservices/default.nix
@@ -10,14 +10,14 @@
 
 buildPythonPackage rec {
   pname = "azure-mgmt-recoveryservices";
-  version = "2.5.0";
+  version = "3.0.0";
   format = "setuptools";
 
   disabled = pythonOlder "3.7";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-XxowjEhYx5uD/4vY5hGSCSvcarmdbdc5Y2GLHciEurU=";
+    hash = "sha256-3yEt+t+8xlnDEjHD4XCqt8IRRNFysPiCaKsPWtjpWII=";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/b2sdk/default.nix b/pkgs/development/python-modules/b2sdk/default.nix
index 266443af70f0..aa5fa2e2c40d 100644
--- a/pkgs/development/python-modules/b2sdk/default.nix
+++ b/pkgs/development/python-modules/b2sdk/default.nix
@@ -21,7 +21,7 @@
 
 buildPythonPackage rec {
   pname = "b2sdk";
-  version = "2.1.0";
+  version = "2.2.1";
   pyproject = true;
 
   disabled = pythonOlder "3.7";
@@ -30,7 +30,7 @@ buildPythonPackage rec {
     owner = "Backblaze";
     repo = "b2-sdk-python";
     rev = "refs/tags/v${version}";
-    hash = "sha256-/TuPT+Y0asGGtfRNxxvpX0WkS4O4asFmIuqSdQ4I9fQ=";
+    hash = "sha256-ENEAynUd66sjS+/Qoy9qyffPpSvxdnY1Nwdi+JTE96I=";
   };
 
   build-system = [ pdm-backend ];
diff --git a/pkgs/development/python-modules/bash-kernel/default.nix b/pkgs/development/python-modules/bash-kernel/default.nix
index c3ab6083ba1d..57f28860fca9 100644
--- a/pkgs/development/python-modules/bash-kernel/default.nix
+++ b/pkgs/development/python-modules/bash-kernel/default.nix
@@ -6,7 +6,7 @@
 , ipykernel
 , python
 , pexpect
-, bash
+, bashInteractive
 , substituteAll
 }:
 
@@ -24,7 +24,7 @@ buildPythonPackage rec {
   patches = [
     (substituteAll {
       src = ./bash-path.patch;
-      bash = lib.getExe bash;
+      bash = lib.getExe bashInteractive;
     })
   ];
 
@@ -45,8 +45,20 @@ buildPythonPackage rec {
     ${python.pythonOnBuildForHost.interpreter} -m bash_kernel.install --prefix $out
   '';
 
-  # no tests
-  doCheck = false;
+  checkPhase = ''
+    runHook preCheck
+
+    # Create a JUPYTER_PATH with the kernelspec
+    export JUPYTER_PATH=$(mktemp -d)
+    mkdir -p $JUPYTER_PATH/kernels/bash
+    echo '{ "language": "bash", "argv": [ "${python}/bin/python", "-m", "bash_kernel", "-f", "{connection_file}" ] }' > $JUPYTER_PATH/kernels/bash/kernel.json
+
+    # Evaluate a test notebook with papermill
+    cd $(mktemp -d)
+    ${python.withPackages (ps: [ps.papermill])}/bin/papermill --kernel bash ${./test.ipynb} out.ipynb
+
+    runHook postCheck
+  '';
 
   meta = with lib; {
     description = "Bash Kernel for Jupyter";
diff --git a/pkgs/development/python-modules/bash-kernel/test.ipynb b/pkgs/development/python-modules/bash-kernel/test.ipynb
new file mode 100644
index 000000000000..4d061381b96d
--- /dev/null
+++ b/pkgs/development/python-modules/bash-kernel/test.ipynb
@@ -0,0 +1,26 @@
+{
+  "cells": [
+    {
+      "cell_type": "code",
+      "execution_count": null,
+      "metadata": {},
+      "outputs": [],
+      "source": [
+        "echo hi"
+      ]
+    }
+  ],
+  "metadata": {
+    "kernel_info": {
+      "display_name": "Unknown",
+      "name": "bash"
+    },
+    "language_info": {
+      "file_extension": ".ipynb",
+      "name": "bash",
+      "version": "5.0"
+    }
+  },
+  "nbformat": 4,
+  "nbformat_minor": 2
+}
diff --git a/pkgs/development/python-modules/bayespy/default.nix b/pkgs/development/python-modules/bayespy/default.nix
index ef82df7dfb95..7768dd5a8d7c 100644
--- a/pkgs/development/python-modules/bayespy/default.nix
+++ b/pkgs/development/python-modules/bayespy/default.nix
@@ -1,30 +1,44 @@
-{ stdenv, lib, buildPythonPackage, fetchPypi, pythonOlder
-, pytestCheckHook, nose, glibcLocales, fetchpatch
-, numpy, scipy, matplotlib, h5py }:
+{
+  lib,
+  buildPythonPackage,
+  fetchFromGitHub,
+  setuptools,
+  numpy,
+  scipy,
+  h5py,
+  truncnorm,
+  pytestCheckHook,
+}:
 
 buildPythonPackage rec {
   pname = "bayespy";
   version = "0.6.1";
-  format = "setuptools";
+  pyproject = true;
 
-  # Python 2 not supported and not some old Python 3 because MPL doesn't support
-  # them properly.
-  disabled = pythonOlder "3.4";
-
-  src = fetchPypi {
-    inherit pname version;
-    sha256 = "sha256-3N8w/LiTLsDZbHp3z26FvDg3vStB2l3XkIWx+Mma1G0=";
+  src = fetchFromGitHub {
+    owner = "bayespy";
+    repo = "bayespy";
+    rev = "refs/tags/${version}";
+    hash = "sha256-X7CwJBrKHlU1jqMkt/7XEzaiwul1Yzkb/V64lXG4Aqo=";
   };
 
-  nativeCheckInputs = [ pytestCheckHook nose glibcLocales ];
+  postPatch = ''
+    substituteInPlace versioneer.py \
+      --replace-fail SafeConfigParser ConfigParser \
+      --replace-fail readfp read_file
+  '';
 
-  propagatedBuildInputs = [ numpy scipy matplotlib h5py ];
+  build-system = [ setuptools ];
 
-  disabledTests = [
-    # Assertion error
-    "test_message_to_parents"
+  dependencies = [
+    numpy
+    scipy
+    h5py
+    truncnorm
   ];
 
+  nativeCheckInputs = [ pytestCheckHook ];
+
   pythonImportsCheck = [ "bayespy" ];
 
   meta = with lib; {
diff --git a/pkgs/development/python-modules/bc-detect-secrets/default.nix b/pkgs/development/python-modules/bc-detect-secrets/default.nix
index df19afca09d5..7e2a162df53f 100644
--- a/pkgs/development/python-modules/bc-detect-secrets/default.nix
+++ b/pkgs/development/python-modules/bc-detect-secrets/default.nix
@@ -1,22 +1,23 @@
-{ lib
-, buildPythonPackage
-, fetchFromGitHub
-, gibberish-detector
-, mock
-, pkgs
-, pyahocorasick
-, pytestCheckHook
-, pythonOlder
-, pyyaml
-, requests
-, responses
-, setuptools
-, unidiff
+{
+  lib,
+  buildPythonPackage,
+  fetchFromGitHub,
+  gibberish-detector,
+  mock,
+  pkgs,
+  pyahocorasick,
+  pytestCheckHook,
+  pythonOlder,
+  pyyaml,
+  requests,
+  responses,
+  setuptools,
+  unidiff,
 }:
 
 buildPythonPackage rec {
   pname = "bc-detect-secrets";
-  version = "1.5.5";
+  version = "1.5.10";
   pyproject = true;
 
   disabled = pythonOlder "3.8";
@@ -25,12 +26,10 @@ buildPythonPackage rec {
     owner = "bridgecrewio";
     repo = "detect-secrets";
     rev = "refs/tags/${version}";
-    hash = "sha256-05hxc34ecSoAp0GBVf9yq2BC928wxZOLZJHAbJ7cdtk=";
+    hash = "sha256-b0t5xv4fWiErQsYvDKTJuweiGLqS2WpR9ECGo/cpvQ8=";
   };
 
-  build-system = [
-    setuptools
-  ];
+  build-system = [ setuptools ];
 
   dependencies = [
     pyyaml
@@ -39,12 +38,8 @@ buildPythonPackage rec {
   ];
 
   passthru.optional-dependencies = {
-    word_list = [
-      pyahocorasick
-    ];
-    gibberish = [
-      gibberish-detector
-    ];
+    word_list = [ pyahocorasick ];
+    gibberish = [ gibberish-detector ];
   };
 
   nativeCheckInputs = [
@@ -71,9 +66,7 @@ buildPythonPackage rec {
     "TestModifiesBaselineFromVersionChange"
   ];
 
-  pythonImportsCheck = [
-    "detect_secrets"
-  ];
+  pythonImportsCheck = [ "detect_secrets" ];
 
   meta = with lib; {
     description = "Tool to detect secrets in the code";
@@ -82,4 +75,3 @@ buildPythonPackage rec {
     maintainers = with maintainers; [ fab ];
   };
 }
-
diff --git a/pkgs/development/python-modules/bdffont/default.nix b/pkgs/development/python-modules/bdffont/default.nix
index baa20facc81f..29cbe658db4d 100644
--- a/pkgs/development/python-modules/bdffont/default.nix
+++ b/pkgs/development/python-modules/bdffont/default.nix
@@ -12,13 +12,13 @@
 
 buildPythonPackage rec {
   pname = "bdffont";
-  version = "0.0.17";
+  version = "0.0.24";
 
   disabled = pythonOlder "3.11";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-JBPo5tmwnXRzPpZbBrcW2wEC/XNd8M+mi58CRIpOVL0=";
+    hash = "sha256-3HJwtBV78zsMUlmwJrPj74Vd5cru1zflvies5mNGcy4=";
   };
 
   format = "pyproject";
diff --git a/pkgs/development/python-modules/beancount-black/default.nix b/pkgs/development/python-modules/beancount-black/default.nix
index f1e1ee3a4b02..0b4eb2ba6996 100644
--- a/pkgs/development/python-modules/beancount-black/default.nix
+++ b/pkgs/development/python-modules/beancount-black/default.nix
@@ -10,7 +10,7 @@
 
 buildPythonPackage rec {
   pname = "beancount-black";
-  version = "0.2.1";
+  version = "1.0.2";
 
   disabled = pythonOlder "3.9";
   format = "pyproject";
@@ -19,7 +19,7 @@ buildPythonPackage rec {
     owner = "LaunchPlatform";
     repo = "beancount-black";
     rev = version;
-    hash = "sha256-wvAQnwnyHn5Koc/UN4zpJ3JDmFbDoUrpCTmJCpSP7Mg=";
+    hash = "sha256-SoAic9UYKE9lhMpl44VosJmmjKJjDrKOyMeUO931Ztg=";
   };
 
   buildInputs = [
diff --git a/pkgs/development/python-modules/beancount-parser/default.nix b/pkgs/development/python-modules/beancount-parser/default.nix
index b7fe986209fb..f3319a58b06e 100644
--- a/pkgs/development/python-modules/beancount-parser/default.nix
+++ b/pkgs/development/python-modules/beancount-parser/default.nix
@@ -9,7 +9,7 @@
 
 buildPythonPackage rec {
   pname = "beancount-parser";
-  version = "0.2.0";
+  version = "1.2.3";
   format = "pyproject";
 
   disabled = pythonOlder "3.9";
@@ -18,7 +18,7 @@ buildPythonPackage rec {
     owner = "LaunchPlatform";
     repo = "beancount-parser";
     rev = "refs/tags/${version}";
-    hash = "sha256-VSl+Jde/mDSUpICXjmPKID6qZiKUUaK8ixztP1qaoDM=";
+    hash = "sha256-8YcrsLdSRTixKXU/IM821kNcBo0jB/8DXA1/KiedsBY=";
   };
 
   buildInputs = [
diff --git a/pkgs/development/python-modules/beanhub-cli/default.nix b/pkgs/development/python-modules/beanhub-cli/default.nix
new file mode 100644
index 000000000000..25c003e19292
--- /dev/null
+++ b/pkgs/development/python-modules/beanhub-cli/default.nix
@@ -0,0 +1,78 @@
+{ lib
+, fetchFromGitHub
+, buildPythonPackage
+, pythonOlder
+, pytestCheckHook
+, beancount-black
+, beancount-parser
+, beanhub-forms
+, beanhub-import
+, click
+, fastapi
+, httpx
+, jinja2
+, poetry-core
+, pydantic
+, pydantic-core
+, pydantic-settings
+, pytz
+, pyyaml
+, rich
+, starlette-wtf
+, uvicorn
+}:
+
+buildPythonPackage rec {
+  pname = "beanhub-cli";
+  version = "1.1.3";
+  pyproject = true;
+
+  disabled = pythonOlder "3.10";
+
+  src = fetchFromGitHub {
+    owner = "LaunchPlatform";
+    repo = "beanhub-cli";
+    rev = "refs/tags/${version}";
+    hash = "sha256-vYBbaUVJAs+aIp6aQpJb62DEDxe/sQTzgOkjPq6ADoc=";
+  };
+
+  build-system = [
+    poetry-core
+  ];
+
+  dependencies = [
+    beancount-black
+    beancount-parser
+    beanhub-forms
+    beanhub-import
+    click
+    fastapi
+    jinja2
+    pydantic
+    pydantic-core
+    pydantic-settings
+    pytz
+    pyyaml
+    rich
+    starlette-wtf
+    uvicorn
+  ];
+
+  nativeCheckInputs = [
+    pytestCheckHook
+    httpx
+  ];
+
+  pythonImportsCheck = [
+    "beanhub_cli"
+  ];
+
+  meta = {
+    description = "Command line tools for BeanHub or Beancount users";
+    mainProgram = "bh";
+    homepage = "https://github.com/LaunchPlatform/beanhub-cli/";
+    changelog = "https://github.com/LaunchPlatform/beanhub-cli/releases/tag/${version}";
+    license = with lib.licenses; [ mit ];
+    maintainers = with lib.maintainers; [ fangpen ];
+  };
+}
diff --git a/pkgs/development/python-modules/beanhub-extract/default.nix b/pkgs/development/python-modules/beanhub-extract/default.nix
new file mode 100644
index 000000000000..c0c623b88f30
--- /dev/null
+++ b/pkgs/development/python-modules/beanhub-extract/default.nix
@@ -0,0 +1,47 @@
+{ lib
+, fetchFromGitHub
+, buildPythonPackage
+, pythonOlder
+, pytestCheckHook
+, poetry-core
+, pytz
+}:
+
+buildPythonPackage rec {
+  pname = "beanhub-extract";
+  version = "0.0.7";
+  pyproject = true;
+
+  disabled = pythonOlder "3.9";
+
+  src = fetchFromGitHub {
+    owner = "LaunchPlatform";
+    repo = "beanhub-extract";
+    rev = "refs/tags/${version}";
+    hash = "sha256-Wt8ZCyCaERNXEd0/Q89QWUW/wGFSHAP2RZLhnv5xkgY=";
+  };
+
+  build-system = [
+    poetry-core
+  ];
+
+  dependencies = [
+    pytz
+  ];
+
+  nativeCheckInputs = [
+    pytestCheckHook
+  ];
+
+  pythonImportsCheck = [
+    "beanhub_extract"
+  ];
+
+  meta = {
+    description = "The simple library for extracting all kind of bank account transaction export files, mostly for beanhub-import to ingest and generate transactions";
+    homepage = "https://github.com/LaunchPlatform/beanhub-extract/";
+    changelog = "https://github.com/LaunchPlatform/beanhub-extract/releases/tag/${version}";
+    license = with lib.licenses; [ mit ];
+    maintainers = with lib.maintainers; [ fangpen ];
+  };
+}
diff --git a/pkgs/development/python-modules/beanhub-forms/default.nix b/pkgs/development/python-modules/beanhub-forms/default.nix
new file mode 100644
index 000000000000..27cf644b96f0
--- /dev/null
+++ b/pkgs/development/python-modules/beanhub-forms/default.nix
@@ -0,0 +1,55 @@
+{ lib
+, fetchFromGitHub
+, buildPythonPackage
+, pythonOlder
+, pytestCheckHook
+, jinja2
+, multidict
+, poetry-core
+, pydantic
+, pyyaml
+, wtforms
+}:
+
+buildPythonPackage rec {
+  pname = "beanhub-forms";
+  version = "0.1.3";
+  pyproject = true;
+
+  disabled = pythonOlder "3.9";
+
+  src = fetchFromGitHub {
+    owner = "LaunchPlatform";
+    repo = "beanhub-forms";
+    rev = "refs/tags/${version}";
+    hash = "sha256-313c+ENmTe1LyfEiMXNB9AUoGx3Yv/1D0T3HnAbd+Zw=";
+  };
+
+  build-system = [
+    poetry-core
+  ];
+
+  dependencies = [
+    jinja2
+    pydantic
+    pyyaml
+    wtforms
+  ];
+
+  nativeCheckInputs = [
+    multidict
+    pytestCheckHook
+  ];
+
+  pythonImportsCheck = [
+    "beanhub_forms"
+  ];
+
+  meta = {
+    description = "Library for generating and processing BeanHub's custom forms";
+    homepage = "https://github.com/LaunchPlatform/beanhub-forms/";
+    changelog = "https://github.com/LaunchPlatform/beanhub-forms/releases/tag/${version}";
+    license = with lib.licenses; [ mit ];
+    maintainers = with lib.maintainers; [ fangpen ];
+  };
+}
diff --git a/pkgs/development/python-modules/beanhub-import/default.nix b/pkgs/development/python-modules/beanhub-import/default.nix
new file mode 100644
index 000000000000..7097c45356a1
--- /dev/null
+++ b/pkgs/development/python-modules/beanhub-import/default.nix
@@ -0,0 +1,59 @@
+{ lib
+, fetchFromGitHub
+, buildPythonPackage
+, pythonOlder
+, pytestCheckHook
+, beancount-black
+, beancount-parser
+, beanhub-extract
+, jinja2
+, poetry-core
+, pydantic
+, pytz
+, pyyaml
+}:
+
+buildPythonPackage rec {
+  pname = "beanhub-import";
+  version = "0.1.5";
+  pyproject = true;
+
+  disabled = pythonOlder "3.9";
+
+  src = fetchFromGitHub {
+    owner = "LaunchPlatform";
+    repo = "beanhub-import";
+    rev = "refs/tags/${version}";
+    hash = "sha256-BH+d7cKC83b7T2Z1Xlwpsv3KACo1vDn6v65tElhir/c=";
+  };
+
+  build-system = [
+    poetry-core
+  ];
+
+  dependencies = [
+    beancount-black
+    beancount-parser
+    beanhub-extract
+    jinja2
+    pydantic
+    pytz
+    pyyaml
+  ];
+
+  nativeCheckInputs = [
+    pytestCheckHook
+  ];
+
+  pythonImportsCheck = [
+    "beanhub_import"
+  ];
+
+  meta = {
+    description = "Declarative idempotent rule-based Beancount transaction import engine in Python";
+    homepage = "https://github.com/LaunchPlatform/beanhub-import/";
+    changelog = "https://github.com/LaunchPlatform/beanhub-import/releases/tag/${version}";
+    license = with lib.licenses; [ mit ];
+    maintainers = with lib.maintainers; [ fangpen ];
+  };
+}
diff --git a/pkgs/development/python-modules/bellows/default.nix b/pkgs/development/python-modules/bellows/default.nix
index 38c938bb7424..5d4c38803383 100644
--- a/pkgs/development/python-modules/bellows/default.nix
+++ b/pkgs/development/python-modules/bellows/default.nix
@@ -1,24 +1,24 @@
-{ lib
-, async-timeout
-, buildPythonPackage
-, click
-, click-log
-, fetchFromGitHub
-, fetchpatch2
-, pure-pcapy3
-, pyserial-asyncio
-, pytest-asyncio
-, pytest-timeout
-, pytestCheckHook
-, pythonOlder
-, setuptools
-, voluptuous
-, zigpy
+{
+  lib,
+  async-timeout,
+  buildPythonPackage,
+  click,
+  click-log,
+  fetchFromGitHub,
+  pure-pcapy3,
+  pyserial-asyncio,
+  pytest-asyncio,
+  pytest-timeout,
+  pytestCheckHook,
+  pythonOlder,
+  setuptools,
+  voluptuous,
+  zigpy,
 }:
 
 buildPythonPackage rec {
   pname = "bellows";
-  version = "0.38.1";
+  version = "0.38.4";
   pyproject = true;
 
   disabled = pythonOlder "3.8";
@@ -27,25 +27,16 @@ buildPythonPackage rec {
     owner = "zigpy";
     repo = "bellows";
     rev = "refs/tags/${version}";
-    hash = "sha256-oxPzjDb+FdHeHsgeGKH3SVvKb0vCB9dIhT7lGzhDcBw=";
+    hash = "sha256-IyJQgKTRrff/LqY14IaATrJTkmVDEv0JFHAxCydNk7Y=";
   };
 
-  patches = [
-    (fetchpatch2 {
-      url = "https://github.com/zigpy/bellows/commit/7833647083f27f55b7ad345f4aaa7dffaa369abc.patch";
-      hash = "sha256-v+BOPqikWoyNtZ1qRWe3RwraG6nQnfZqoV6yj9PpGX8=";
-    })
-  ];
-
   postPatch = ''
     substituteInPlace pyproject.toml \
       --replace-fail '"setuptools-git-versioning<2"' "" \
       --replace-fail 'dynamic = ["version"]' 'version = "${version}"'
   '';
 
-  build-system = [
-    setuptools
-  ];
+  build-system = [ setuptools ];
 
   dependencies = [
     click
@@ -54,9 +45,7 @@ buildPythonPackage rec {
     pyserial-asyncio
     voluptuous
     zigpy
-  ] ++ lib.optionals (pythonOlder "3.11") [
-    async-timeout
-  ];
+  ] ++ lib.optionals (pythonOlder "3.11") [ async-timeout ];
 
   nativeCheckInputs = [
     pytestCheckHook
@@ -64,9 +53,7 @@ buildPythonPackage rec {
     pytest-timeout
   ];
 
-  pythonImportsCheck = [
-    "bellows"
-  ];
+  pythonImportsCheck = [ "bellows" ];
 
   meta = with lib; {
     description = "Python module to implement EZSP for EmberZNet devices";
diff --git a/pkgs/development/python-modules/betterproto/default.nix b/pkgs/development/python-modules/betterproto/default.nix
index a20daf344f06..5f42d46b1e58 100644
--- a/pkgs/development/python-modules/betterproto/default.nix
+++ b/pkgs/development/python-modules/betterproto/default.nix
@@ -61,6 +61,7 @@ buildPythonPackage rec {
   # The tests require the generation of code before execution. This requires
   # the protoc-gen-python_betterproto script from the package to be on PATH.
   preCheck = ''
+    (($(ulimit -n) < 1024)) && ulimit -n 1024
     export PATH=$PATH:$out/bin
     patchShebangs src/betterproto/plugin/main.py
     ${python.interpreter} -m tests.generate
diff --git a/pkgs/development/python-modules/bids-validator/default.nix b/pkgs/development/python-modules/bids-validator/default.nix
index 7512515c706d..6779e42c580d 100644
--- a/pkgs/development/python-modules/bids-validator/default.nix
+++ b/pkgs/development/python-modules/bids-validator/default.nix
@@ -10,14 +10,14 @@
 
 buildPythonPackage rec {
   pname = "bids-validator";
-  version = "1.14.4";
+  version = "1.14.5";
   pyproject = true;
 
   disabled = pythonOlder "3.7";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-Q0pghEFmK5qJ3sWgrxs4jWUm+Ox7LO5sDR8GUJWBr/o=";
+    hash = "sha256-TXIb1ff7D6aM+8L5F47O5Dvupp1Sn4Rnl+GQaUdEgno=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/python-modules/bimmer-connected/default.nix b/pkgs/development/python-modules/bimmer-connected/default.nix
index 48ddcc9e7d62..39c8874f7f3f 100644
--- a/pkgs/development/python-modules/bimmer-connected/default.nix
+++ b/pkgs/development/python-modules/bimmer-connected/default.nix
@@ -18,26 +18,26 @@
 
 buildPythonPackage rec {
   pname = "bimmer-connected";
-  version = "0.14.6";
+  version = "0.15.2";
   pyproject = true;
 
-  disabled = pythonOlder "3.6";
+  disabled = pythonOlder "3.8";
 
   src = fetchFromGitHub {
     owner = "bimmerconnected";
     repo = "bimmer_connected";
     rev = "refs/tags/${version}";
-    hash = "sha256-/FL9czp5x/BcKSXXzT19kgGiPFd61BpU7HLtgyyHlIs=";
+    hash = "sha256-UCzPD+3v74eB32q0/blsyHAsN0yNskGky5nrBKzFFaE=";
   };
 
-  nativeBuildInputs = [
+  build-system = [
     pbr
     setuptools
   ];
 
   PBR_VERSION = version;
 
-  propagatedBuildInputs = [
+  dependencies = [
     httpx
     pycryptodome
     pyjwt
diff --git a/pkgs/development/python-modules/binance-connector/default.nix b/pkgs/development/python-modules/binance-connector/default.nix
new file mode 100644
index 000000000000..c8d3b044b558
--- /dev/null
+++ b/pkgs/development/python-modules/binance-connector/default.nix
@@ -0,0 +1,61 @@
+{ lib
+, buildPythonPackage
+, fetchFromGitHub
+, pycryptodome
+, pythonOlder
+, requests
+, websocket-client
+# dependencies for tests
+, pytest-cov
+, pytest
+, sure
+, responses
+, pytestCheckHook
+}:
+
+buildPythonPackage rec {
+  pname = "binance-connector";
+  version = "3.7.0";
+  format = "setuptools";
+
+  disabled = pythonOlder "3.7";
+
+  src = fetchFromGitHub {
+    owner = "binance";
+    repo = "${pname}-python";
+    rev = "refs/tags/v${version}";
+    hash = "sha256-hmn8WKr+krzOzHNJ/aynXAbf+rHxDfyKDgycdQQU3xk=";
+  };
+
+  propagatedBuildInputs = [
+    requests
+    pycryptodome
+    websocket-client
+  ];
+
+  nativeCheckInputs = [
+    pytest-cov
+    pytest
+    sure
+    responses
+    pytestCheckHook
+  ];
+
+  # pytestCheckHook attempts to run examples directory, which requires
+  # network access
+  disabledTestPaths = [
+    "examples/"
+  ];
+
+  pythonImportsCheck = [
+    "binance.spot"
+    "binance.websocket"
+  ];
+
+  meta = with lib; {
+    description = "Simple connector to Binance Public API";
+    homepage = "https://github.com/binance/binance-connector-python";
+    license = licenses.mit;
+    maintainers = with maintainers; [ trishtzy ];
+  };
+}
diff --git a/pkgs/development/python-modules/biom-format/default.nix b/pkgs/development/python-modules/biom-format/default.nix
new file mode 100644
index 000000000000..ca5ff3a83fb7
--- /dev/null
+++ b/pkgs/development/python-modules/biom-format/default.nix
@@ -0,0 +1,71 @@
+{
+  lib,
+  buildPythonPackage,
+  fetchFromGitHub,
+  fetchpatch,
+  setuptools,
+  cython,
+  click,
+  numpy,
+  scipy,
+  pandas,
+  h5py,
+  pytestCheckHook,
+}:
+
+buildPythonPackage rec {
+  pname = "biom-format";
+  version = "2.1.15";
+  pyproject = true;
+
+  src = fetchFromGitHub {
+    owner = "biocore";
+    repo = "biom-format";
+    rev = "refs/tags/${version}";
+    hash = "sha256-WRBc+C/UWme7wYogy4gH4KTIdIqU3KmBm2jWzGNxGQg=";
+  };
+
+  patches = [
+    # fixes a test, can be removed in next version after 2.1.15
+    (fetchpatch {
+      name = "fix-dataframe-comparison.patch";
+      url = "https://github.com/biocore/biom-format/commit/5d1c921ca2cde5d7332508503ce990a7209d1fdc.patch";
+      hash = "sha256-nyHi469ivjJSQ01yIk/6ZMXFdoo9wVuazJHnFdy2nBg=";
+    })
+  ];
+
+  build-system = [
+    setuptools
+    cython
+    numpy
+  ];
+
+  dependencies = [
+    click
+    numpy
+    scipy
+    pandas
+    h5py
+  ];
+
+  # make pytest resolve the package from $out
+  # some tests don't work if we change the level of directory nesting
+  preCheck = ''
+    mkdir biom_tests
+    mv biom/tests biom_tests/tests
+    rm -r biom
+  '';
+
+  nativeCheckInputs = [ pytestCheckHook ];
+
+  pytestFlagsArray = [ "biom_tests/tests" ];
+
+  pythonImportsCheck = [ "biom" ];
+
+  meta = {
+    homepage = "http://biom-format.org/";
+    description = "Biological Observation Matrix (BIOM) format";
+    license = lib.licenses.bsd3;
+    maintainers = with lib.maintainers; [ tomasajt ];
+  };
+}
diff --git a/pkgs/development/python-modules/biopython/close_parser_on_time.patch b/pkgs/development/python-modules/biopython/close_parser_on_time.patch
new file mode 100644
index 000000000000..05d22e22ed9e
--- /dev/null
+++ b/pkgs/development/python-modules/biopython/close_parser_on_time.patch
@@ -0,0 +1,18 @@
+diff --git a/Bio/SeqIO/SeqXmlIO.py b/Bio/SeqIO/SeqXmlIO.py
+index 8fe75ebb728..6758317d05f 100644
+--- a/Bio/SeqIO/SeqXmlIO.py
++++ b/Bio/SeqIO/SeqXmlIO.py
+@@ -498,11 +498,12 @@ def iterate(self, handle):
+             if not text:
+                 break
+             parser.feed(text)
++        # Closing the parser ensures that all XML data fed into it are processed
++        parser.close()
+         # We have reached the end of the XML file;
+         # send out the remaining records
+         yield from records
+         records.clear()
+-        parser.close()
+ 
+ 
+ class SeqXmlWriter(SequenceWriter):
diff --git a/pkgs/development/python-modules/biopython/default.nix b/pkgs/development/python-modules/biopython/default.nix
index 2ec814f56aef..051f66845dec 100644
--- a/pkgs/development/python-modules/biopython/default.nix
+++ b/pkgs/development/python-modules/biopython/default.nix
@@ -1,9 +1,10 @@
-{ lib
-, buildPythonPackage
-, fetchPypi
-, pythonOlder
-, setuptools
-, numpy
+{
+  lib,
+  buildPythonPackage,
+  fetchPypi,
+  pythonOlder,
+  setuptools,
+  numpy,
 }:
 
 buildPythonPackage rec {
@@ -18,15 +19,17 @@ buildPythonPackage rec {
     hash = "sha256-eOa/t43mMDQDev01/nfLbgqeW2Jwa+z3in2SKxbtg/c=";
   };
 
-  nativeBuildInputs = [
-    setuptools
+  patches = [
+    # cherry-picked from https://github.com/biopython/biopython/commit/3f9bda7ef44f533dadbaa0de29ac21929bc0b2f1
+    # fixes SeqXMLIO parser to process all data. remove on next update
+    ./close_parser_on_time.patch
   ];
 
-  propagatedBuildInputs = [ numpy ];
+  build-system = [ setuptools ];
 
-  pythonImportsCheck = [
-    "Bio"
-  ];
+  dependencies = [ numpy ];
+
+  pythonImportsCheck = [ "Bio" ];
 
   checkPhase = ''
     runHook preCheck
diff --git a/pkgs/development/python-modules/bitbox02/default.nix b/pkgs/development/python-modules/bitbox02/default.nix
index 7d6f89175608..0217979d31da 100644
--- a/pkgs/development/python-modules/bitbox02/default.nix
+++ b/pkgs/development/python-modules/bitbox02/default.nix
@@ -1,29 +1,33 @@
-{ lib
-, buildPythonPackage
-, pythonOlder
-, fetchPypi
-, base58
-, ecdsa
-, hidapi
-, noiseprotocol
-, protobuf
-, semver
-, typing-extensions
+{
+  lib,
+  base58,
+  buildPythonPackage,
+  ecdsa,
+  fetchPypi,
+  hidapi,
+  noiseprotocol,
+  protobuf,
+  pythonOlder,
+  semver,
+  setuptools,
+  typing-extensions,
 }:
 
 buildPythonPackage rec {
   pname = "bitbox02";
-  version = "6.2.0";
-  format = "setuptools";
+  version = "6.3.0";
+  pyproject = true;
 
   disabled = pythonOlder "3.7";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-zt4G45nJjtU2/tbYpCEgjaoA+Xtpe9g2OpQaxfMzCb8=";
+    hash = "sha256-0D+yIovlYw8dfDUeW+vcualbvmLs+IySkTpmHwk2meM=";
   };
 
-  propagatedBuildInputs = [
+  build-system = [ setuptools ];
+
+  dependencies = [
     base58
     ecdsa
     hidapi
@@ -36,9 +40,7 @@ buildPythonPackage rec {
   # does not contain tests
   doCheck = false;
 
-  pythonImportsCheck = [
-    "bitbox02"
-  ];
+  pythonImportsCheck = [ "bitbox02" ];
 
   meta = with lib; {
     description = "Firmware code of the BitBox02 hardware wallet";
diff --git a/pkgs/development/python-modules/black/default.nix b/pkgs/development/python-modules/black/default.nix
index ec11de747c1e..48f1c3305558 100644
--- a/pkgs/development/python-modules/black/default.nix
+++ b/pkgs/development/python-modules/black/default.nix
@@ -24,14 +24,14 @@
 
 buildPythonPackage rec {
   pname = "black";
-  version = "24.3.0";
+  version = "24.4.0";
   format = "pyproject";
 
   disabled = pythonOlder "3.8";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-oMnEoHca/GkZV4zscc6Co+MeBUkE5xl96svJOCZxxB8=";
+    hash = "sha256-8Htp/aIFeDZ+rrvWcP+PxlOrGB4f+V2ESX+fog59BkE=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/python-modules/blackjax/default.nix b/pkgs/development/python-modules/blackjax/default.nix
index 7ecc4eda9519..4a0807cd7c49 100644
--- a/pkgs/development/python-modules/blackjax/default.nix
+++ b/pkgs/development/python-modules/blackjax/default.nix
@@ -1,4 +1,5 @@
 { lib
+, stdenv
 , buildPythonPackage
 , pythonOlder
 , fetchFromGitHub
@@ -15,7 +16,7 @@
 
 buildPythonPackage rec {
   pname = "blackjax";
-  version = "1.1.1";
+  version = "1.2.1";
   pyproject = true;
 
   disabled = pythonOlder "3.9";
@@ -24,12 +25,14 @@ buildPythonPackage rec {
     owner = "blackjax-devs";
     repo = "blackjax";
     rev = "refs/tags/${version}";
-    hash = "sha256-6+ElY1F8oRCtWT4a/LIG6hYMthlq5mDx2baKAc6zIns=";
+    hash = "sha256-VoWBCjFMyE5LVJyf7du/pKlnvDHj22lguiP6ZUzH9ak=";
   };
 
-  nativeBuildInputs = [ setuptools-scm ];
+  build-system = [
+    setuptools-scm
+  ];
 
-  propagatedBuildInputs = [
+  dependencies = [
     fastprogress
     jax
     jaxlib
@@ -42,10 +45,21 @@ buildPythonPackage rec {
     pytestCheckHook
     pytest-xdist
   ];
-  disabledTestPaths = [ "tests/test_benchmarks.py" ];
+
+  disabledTestPaths = [
+    "tests/test_benchmarks.py"
+  ] ++ lib.optionals (stdenv.isLinux && stdenv.isAarch64) [
+    # Assertion errors on numerical values
+    "tests/mcmc/test_integrators.py"
+  ];
+
   disabledTests = [
     # too slow
     "test_adaptive_tempered_smc"
+  ] ++ lib.optionals (stdenv.isLinux && stdenv.isAarch64) [
+    # Numerical test (AssertionError)
+    # https://github.com/blackjax-devs/blackjax/issues/668
+    "test_chees_adaptation"
   ];
 
   pythonImportsCheck = [
diff --git a/pkgs/development/python-modules/bleak/default.nix b/pkgs/development/python-modules/bleak/default.nix
index f53f614867ec..7fad7492d704 100644
--- a/pkgs/development/python-modules/bleak/default.nix
+++ b/pkgs/development/python-modules/bleak/default.nix
@@ -13,7 +13,7 @@
 
 buildPythonPackage rec {
   pname = "bleak";
-  version = "0.21.1";
+  version = "0.22.1";
   format = "pyproject";
 
   disabled = pythonOlder "3.8";
@@ -22,7 +22,7 @@ buildPythonPackage rec {
     owner = "hbldh";
     repo = pname;
     rev = "refs/tags/v${version}";
-    hash = "sha256-T0im8zKyNLbskAEDeUUFS/daJtvttlHlttjscqP8iSk=";
+    hash = "sha256-kBKNBVbEq1xHLu/gKUL2SwlA2WKjzqFVC5o4N+qnqLM=";
   };
 
   postPatch = ''
diff --git a/pkgs/development/python-modules/bloodyad/default.nix b/pkgs/development/python-modules/bloodyad/default.nix
index 11d26f32fbae..47ff7565a297 100644
--- a/pkgs/development/python-modules/bloodyad/default.nix
+++ b/pkgs/development/python-modules/bloodyad/default.nix
@@ -1,19 +1,23 @@
-{ lib
-, buildPythonPackage
-, cryptography
-, fetchFromGitHub
-, gssapi
-, hatchling
-, ldap3
-, pyasn1
-, pytestCheckHook
-, pythonOlder
-, winacl
+{
+  lib,
+  asn1crypto,
+  buildPythonPackage,
+  cryptography,
+  dnspython,
+  fetchFromGitHub,
+  gssapi,
+  hatchling,
+  ldap3,
+  msldap,
+  pyasn1,
+  pytestCheckHook,
+  pythonOlder,
+  winacl,
 }:
 
 buildPythonPackage rec {
   pname = "bloodyad";
-  version = "1.1.1";
+  version = "2.0.3";
   pyproject = true;
 
   disabled = pythonOlder "3.8";
@@ -22,28 +26,25 @@ buildPythonPackage rec {
     owner = "CravateRouge";
     repo = "bloodyAD";
     rev = "refs/tags/v${version}";
-    hash = "sha256-wnq+HTAPnC7pSGI2iytSyHmdqtUq2pUnNwZnsGX8CL4=";
+    hash = "sha256-+Lw9Apm+zzUlM19fGgxOb2bTmmKQ1Nd7dUjF9rhHXKQ=";
   };
 
-  nativeBuildInputs = [
-    hatchling
-  ];
+  build-system = [ hatchling ];
 
-  propagatedBuildInputs = [
+  dependencies = [
+    asn1crypto
     cryptography
+    dnspython
     gssapi
     ldap3
+    msldap
     pyasn1
     winacl
   ];
 
-  nativeCheckInputs = [
-    pytestCheckHook
-  ];
+  nativeCheckInputs = [ pytestCheckHook ];
 
-  pythonImportsCheck = [
-    "bloodyAD"
-  ];
+  pythonImportsCheck = [ "bloodyAD" ];
 
   disabledTests = [
     # Tests require network access
diff --git a/pkgs/development/python-modules/bluetooth-adapters/default.nix b/pkgs/development/python-modules/bluetooth-adapters/default.nix
index cf6924f2f3d6..c41d87173529 100644
--- a/pkgs/development/python-modules/bluetooth-adapters/default.nix
+++ b/pkgs/development/python-modules/bluetooth-adapters/default.nix
@@ -13,12 +13,13 @@
 , pythonOlder
 , sphinx-rtd-theme
 , sphinxHook
+, uart-devices
 , usb-devices
 }:
 
 buildPythonPackage rec {
   pname = "bluetooth-adapters";
-  version = "0.18.0";
+  version = "0.19.2";
   pyproject = true;
 
   disabled = pythonOlder "3.9";
@@ -27,7 +28,7 @@ buildPythonPackage rec {
     owner = "Bluetooth-Devices";
     repo = "bluetooth-adapters";
     rev = "refs/tags/v${version}";
-    hash = "sha256-KPmCOPCK7muT0qptJMKQwWU/6tvepkdHwlNYcrvpRLg=";
+    hash = "sha256-hPs6YnmndJ2Z5RotcIRIYWPdvMyX56ul84l1Cs8kqH0=";
   };
 
   postPatch = ''
@@ -40,20 +41,21 @@ buildPythonPackage rec {
     "doc"
   ];
 
-  nativeBuildInputs = [
+  build-system = [
     myst-parser
     poetry-core
     sphinx-rtd-theme
     sphinxHook
   ];
 
-  propagatedBuildInputs = [
+  dependencies = [
     aiohttp
     aiooui
     async-timeout
     bleak
     dbus-fast
     mac-vendor-lookup
+    uart-devices
     usb-devices
   ];
 
diff --git a/pkgs/development/python-modules/bluetooth-auto-recovery/default.nix b/pkgs/development/python-modules/bluetooth-auto-recovery/default.nix
index a3e137cae493..861aaab2d138 100644
--- a/pkgs/development/python-modules/bluetooth-auto-recovery/default.nix
+++ b/pkgs/development/python-modules/bluetooth-auto-recovery/default.nix
@@ -14,7 +14,7 @@
 
 buildPythonPackage rec {
   pname = "bluetooth-auto-recovery";
-  version = "1.4.1";
+  version = "1.4.2";
   pyproject = true;
 
   disabled = pythonOlder "3.9";
@@ -23,7 +23,7 @@ buildPythonPackage rec {
     owner = "Bluetooth-Devices";
     repo = "bluetooth-auto-recovery";
     rev = "refs/tags/v${version}";
-    hash = "sha256-4LgEb90QsjTMsVat6fe9B3b6f93bHTgJgQNsRbyti2M=";
+    hash = "sha256-JaFazXjbHohj4+rPkQA/SaBP0irHrre3vaCqz7T2bwE=";
   };
 
   postPatch = ''
diff --git a/pkgs/development/python-modules/bokeh/default.nix b/pkgs/development/python-modules/bokeh/default.nix
index 63fa524f9fa3..8f052c4b5b17 100644
--- a/pkgs/development/python-modules/bokeh/default.nix
+++ b/pkgs/development/python-modules/bokeh/default.nix
@@ -1,5 +1,4 @@
 { lib
-, stdenv
 , buildPythonPackage
 , fetchPypi
 , fetchFromGitHub
@@ -8,7 +7,6 @@
 , colorama
 , contourpy
 , jinja2
-, mock
 , numpy
 , nodejs
 , packaging
@@ -48,14 +46,14 @@
 buildPythonPackage rec {
   pname = "bokeh";
   # update together with panel which is not straightforward
-  version = "3.3.4";
+  version = "3.4.1";
   format = "pyproject";
 
   disabled = pythonOlder "3.9";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-c7eYLcK43xW/Zgzd3I04JegpGVxDgBWl0Jgk8acCg2g=";
+    hash = "sha256-2CSWHkJlNnsHUM5YsH5WStC4PKZLM1UhzTQh6bnxDYk=";
   };
 
   src_test = fetchFromGitHub {
diff --git a/pkgs/development/python-modules/bokeh/hardcode-nodejs-npmjs-paths.patch b/pkgs/development/python-modules/bokeh/hardcode-nodejs-npmjs-paths.patch
index 4ebfc7e3f2d6..6dcec9ae5177 100644
--- a/pkgs/development/python-modules/bokeh/hardcode-nodejs-npmjs-paths.patch
+++ b/pkgs/development/python-modules/bokeh/hardcode-nodejs-npmjs-paths.patch
@@ -1,14 +1,15 @@
-diff -ru a/src/bokeh/util/compiler.py b/src/bokeh/util/compiler.py
+diff --git a/src/bokeh/util/compiler.py b/src/bokeh/util/compiler.py
+index 4f4314ac8..726610f4c 100644
 --- a/src/bokeh/util/compiler.py
 +++ b/src/bokeh/util/compiler.py
-@@ -411,8 +411,8 @@
+@@ -411,8 +411,8 @@ def _detect_nodejs() -> Path:
      raise RuntimeError(f'node.js v{version_repr} or higher is needed to allow compilation of custom models ' +
                         '("conda install nodejs" or follow https://nodejs.org/en/download/)')
  
--_nodejs = None
--_npmjs = None
+-_nodejs: Path | None = None
+-_npmjs: Path | None = None
 +_nodejs = "@node_bin@"
 +_npmjs = "@npm_bin@"
  
- def _nodejs_path() -> str:
+ def _nodejs_path() -> Path:
      global _nodejs
diff --git a/pkgs/development/python-modules/boto3-stubs/default.nix b/pkgs/development/python-modules/boto3-stubs/default.nix
index 1d7e839665c9..c4a35e42730f 100644
--- a/pkgs/development/python-modules/boto3-stubs/default.nix
+++ b/pkgs/development/python-modules/boto3-stubs/default.nix
@@ -366,7 +366,7 @@
 
 buildPythonPackage rec {
   pname = "boto3-stubs";
-  version = "1.34.96";
+  version = "1.34.108";
   pyproject = true;
 
   disabled = pythonOlder "3.7";
@@ -374,7 +374,7 @@ buildPythonPackage rec {
   src = fetchPypi {
     pname = "boto3_stubs";
     inherit version;
-    hash = "sha256-gkpimXGE45wP34h7JCxEodaauH4hVMKzHVDGSvqKT8U=";
+    hash = "sha256-4T5VsYHuwOwZD0qpHgxKuZ7KTBxBdOFq7cVLuygOYXk=";
   };
 
   build-system = [ setuptools ];
diff --git a/pkgs/development/python-modules/botocore/default.nix b/pkgs/development/python-modules/botocore/default.nix
index f956687016ef..0c9dfaa7920a 100644
--- a/pkgs/development/python-modules/botocore/default.nix
+++ b/pkgs/development/python-modules/botocore/default.nix
@@ -14,14 +14,14 @@
 
 buildPythonPackage rec {
   pname = "botocore";
-  version = "1.34.58"; # N.B: if you change this, change boto3 and awscli to a matching version
+  version = "1.34.87"; # N.B: if you change this, change boto3 and awscli to a matching version
   pyproject = true;
 
   disabled = pythonOlder "3.8";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-11IWlSiG3FE+obXil5pq8I/u0vU34/wQLkoKLq1WOjU=";
+    hash = "sha256-o6TYV/CUHZih5c6M1kw5BiJx/qC+TZ89DWr/bLWBI7k=";
   };
 
   pythonRelaxDeps = [
diff --git a/pkgs/development/python-modules/botorch/default.nix b/pkgs/development/python-modules/botorch/default.nix
index e81609908758..bddf584fa91b 100644
--- a/pkgs/development/python-modules/botorch/default.nix
+++ b/pkgs/development/python-modules/botorch/default.nix
@@ -16,14 +16,14 @@
 
 buildPythonPackage rec {
   pname = "botorch";
-  version = "0.10.0";
+  version = "0.11.0";
   format = "pyproject";
 
   src = fetchFromGitHub {
     owner = "pytorch";
     repo = pname;
     rev = "refs/tags/v${version}";
-    hash = "sha256-IaFtQWrgOhVHDOiPQ4oG8l+Q0igWamYVWEReGccbVoI=";
+    hash = "sha256-eL0buwqrGt4qcwdzCwD85IyiWjAFuP1n8aUb2pvvIKw=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/python-modules/boxx/default.nix b/pkgs/development/python-modules/boxx/default.nix
index a42cc2c0ee55..67d862941c8e 100644
--- a/pkgs/development/python-modules/boxx/default.nix
+++ b/pkgs/development/python-modules/boxx/default.nix
@@ -19,14 +19,14 @@
 
 buildPythonPackage rec {
   pname = "boxx";
-  version = "0.10.13";
+  version = "0.10.14";
   format = "setuptools";
 
   disabled = pythonOlder "3.7";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-Z1mmNTGjK77GNdlYAXQzp+9Z7TeiKZGvio4SXGwgOPk=";
+    hash = "sha256-unGnmPksEuqFXHTWJkj9Gv2G/qPDgT6AZXYiG2gtkEA=";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/breathe/default.nix b/pkgs/development/python-modules/breathe/default.nix
index ca6c66261660..35bc0b698675 100644
--- a/pkgs/development/python-modules/breathe/default.nix
+++ b/pkgs/development/python-modules/breathe/default.nix
@@ -1,5 +1,6 @@
 { lib
 , buildPythonPackage
+, defusedxml
 , docutils
 , fetchFromGitHub
 , fetchpatch
@@ -40,6 +41,10 @@ buildPythonPackage rec {
     pytestCheckHook
   ];
 
+  checkInputs = [
+    defusedxml
+  ];
+
   pythonImportsCheck = [
     "breathe"
   ];
diff --git a/pkgs/development/python-modules/bsddb3/default.nix b/pkgs/development/python-modules/bsddb3/default.nix
index 4edc9e1524b4..4e617c546985 100644
--- a/pkgs/development/python-modules/bsddb3/default.nix
+++ b/pkgs/development/python-modules/bsddb3/default.nix
@@ -1,22 +1,30 @@
 { lib
 , buildPythonPackage
 , fetchPypi
+, setuptools
 , pkgs
 , python
+, pythonOlder
 }:
 
 buildPythonPackage rec {
   pname = "bsddb3";
   version = "6.2.9";
-  format = "setuptools";
+  pyproject = true;
 
   src = fetchPypi {
     inherit pname version;
     sha256 = "70d05ec8dc568f42e70fc919a442e0daadc2a905a1cfb7ca77f549d49d6e7801";
   };
 
+  build-system = [
+    setuptools
+  ];
+
   buildInputs = [ pkgs.db ];
 
+  doCheck = pythonOlder "3.12"; # distutils usage
+
   checkPhase = ''
     ${python.interpreter} test.py
   '';
diff --git a/pkgs/development/python-modules/bthome-ble/default.nix b/pkgs/development/python-modules/bthome-ble/default.nix
index cc99d7696c5b..f0f92ec11904 100644
--- a/pkgs/development/python-modules/bthome-ble/default.nix
+++ b/pkgs/development/python-modules/bthome-ble/default.nix
@@ -1,19 +1,20 @@
-{ lib
-, bluetooth-data-tools
-, bluetooth-sensor-state-data
-, buildPythonPackage
-, cryptography
-, fetchFromGitHub
-, poetry-core
-, pytestCheckHook
-, pythonOlder
-, pytz
-, sensor-state-data
+{
+  lib,
+  bluetooth-data-tools,
+  bluetooth-sensor-state-data,
+  buildPythonPackage,
+  cryptography,
+  fetchFromGitHub,
+  poetry-core,
+  pytestCheckHook,
+  pythonOlder,
+  pytz,
+  sensor-state-data,
 }:
 
 buildPythonPackage rec {
   pname = "bthome-ble";
-  version = "3.8.1";
+  version = "3.9.0";
   pyproject = true;
 
   disabled = pythonOlder "3.9";
@@ -22,14 +23,17 @@ buildPythonPackage rec {
     owner = "Bluetooth-Devices";
     repo = "bthome-ble";
     rev = "refs/tags/v${version}";
-    hash = "sha256-eaRFHrISxYovQLtNUPrgNw3ATClHqpZ+Us+JGmNNbyY=";
+    hash = "sha256-umRPB0eUdFL4kIvqSfbw/Jzh7NZMY6WR4dK+1cyK3EI=";
   };
 
-  nativeBuildInputs = [
-    poetry-core
-  ];
+  postPatch = ''
+    substituteInPlace pyproject.toml \
+      --replace-fail " --cov=bthome_ble --cov-report=term-missing:skip-covered" ""
+  '';
+
+  build-system = [ poetry-core ];
 
-  propagatedBuildInputs = [
+  dependencies = [
     bluetooth-data-tools
     bluetooth-sensor-state-data
     cryptography
@@ -37,18 +41,9 @@ buildPythonPackage rec {
     pytz
   ];
 
-  nativeCheckInputs = [
-    pytestCheckHook
-  ];
+  nativeCheckInputs = [ pytestCheckHook ];
 
-  postPatch = ''
-    substituteInPlace pyproject.toml \
-      --replace " --cov=bthome_ble --cov-report=term-missing:skip-covered" ""
-  '';
-
-  pythonImportsCheck = [
-    "bthome_ble"
-  ];
+  pythonImportsCheck = [ "bthome_ble" ];
 
   meta = with lib; {
     description = "Library for BThome BLE devices";
diff --git a/pkgs/development/python-modules/btrfs/default.nix b/pkgs/development/python-modules/btrfs/default.nix
index a534257c6dbe..66a7a05676a9 100644
--- a/pkgs/development/python-modules/btrfs/default.nix
+++ b/pkgs/development/python-modules/btrfs/default.nix
@@ -5,12 +5,12 @@
 
 buildPythonPackage rec {
   pname = "btrfs";
-  version = "13";
+  version = "14.1";
   format = "setuptools";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-NSyzhpHYDkunuU104XnbVCcVRNDoVBz4KuJRrE7WMO0=";
+    hash = "sha256-BPKPwT33i8fQYJkUZbnJ8nQNbmKw0Dq6ekb9mr7awEY=";
   };
 
   # no tests (in v12)
diff --git a/pkgs/development/python-modules/buienradar/default.nix b/pkgs/development/python-modules/buienradar/default.nix
index 23a19f89f279..3a0c5fbd3dd1 100644
--- a/pkgs/development/python-modules/buienradar/default.nix
+++ b/pkgs/development/python-modules/buienradar/default.nix
@@ -1,6 +1,5 @@
 { lib
 , buildPythonPackage
-, pythonOlder
 , fetchFromGitHub
 , docopt
 , pytz
@@ -16,8 +15,6 @@ buildPythonPackage rec {
   version = "1.0.5";
   format = "setuptools";
 
-  disabled = pythonOlder "3.4";
-
   src = fetchFromGitHub {
     owner = "mjj4791";
     repo = "python-buienradar";
diff --git a/pkgs/development/python-modules/build/default.nix b/pkgs/development/python-modules/build/default.nix
index 7d56257a377d..4f30c8f18629 100644
--- a/pkgs/development/python-modules/build/default.nix
+++ b/pkgs/development/python-modules/build/default.nix
@@ -19,7 +19,7 @@
 
 buildPythonPackage rec {
   pname = "build";
-  version = "1.1.1";
+  version = "1.2.1";
   format = "pyproject";
 
   disabled = pythonOlder "3.7";
@@ -28,7 +28,7 @@ buildPythonPackage rec {
     owner = "pypa";
     repo = "build";
     rev = "refs/tags/${version}";
-    hash = "sha256-SGWpm+AGIfqKMpDfmz2aMYmcs+XVREbHIXSuU4R7U/k=";
+    hash = "sha256-G0g+1v19sQMUuQlZKGELZOwwX07i7TIdEdaYzr8bKtI=";
   };
 
   postPatch = ''
diff --git a/pkgs/development/python-modules/cadquery/default.nix b/pkgs/development/python-modules/cadquery/default.nix
deleted file mode 100644
index 5db0b6ae2c99..000000000000
--- a/pkgs/development/python-modules/cadquery/default.nix
+++ /dev/null
@@ -1,100 +0,0 @@
-{ lib
-, buildPythonPackage
-, toPythonModule
-, pythonOlder
-, pythonAtLeast
-, fetchFromGitHub
-, pyparsing
-, opencascade-occt
-, stdenv
-, python
-, cmake
-, swig
-, freetype
-, libGL
-, libGLU
-, libX11
-, six
-, pytest
-, makeFontsConf
-, freefont_ttf
-, Cocoa
-}:
-
-let
-  pythonocc-core-cadquery = toPythonModule (stdenv.mkDerivation {
-    pname = "pythonocc-core-cadquery";
-    version = "0.18.2";
-    format = "setuptools";
-
-    src = fetchFromGitHub {
-      owner = "CadQuery";
-      repo = "pythonocc-core";
-      # no proper release to to use, this commit copied from the Anaconda receipe
-      rev = "701e924ae40701cbe6f9992bcbdc2ef22aa9b5ab";
-      sha256 = "07zmiiw74dyj4v0ar5vqkvk30wzcpjjzbi04nsdk5mnlzslmyi6c";
-    };
-
-    nativeBuildInputs = [
-      cmake
-      swig
-    ];
-
-    buildInputs = [
-      python
-      opencascade-occt
-      freetype
-      libGL
-      libGLU
-      libX11
-    ] ++ lib.optionals stdenv.isDarwin [ Cocoa ];
-
-    propagatedBuildInputs = [
-      six
-    ];
-
-    cmakeFlags = [
-      "-Wno-dev"
-      "-DPYTHONOCC_INSTALL_DIRECTORY=${placeholder "out"}/${python.sitePackages}/OCC"
-    ];
-  });
-
-in
-  buildPythonPackage rec {
-    pname = "cadquery";
-    version = "2.0";
-
-    src = fetchFromGitHub {
-      owner = "CadQuery";
-      repo = pname;
-      rev = version;
-      sha256 = "1n63b6cjjrdwdfmwq0zx1xabjnhndk9mgfkm4w7z9ardcfpvg84l";
-    };
-
-    buildInputs = [
-      opencascade-occt
-    ];
-
-    propagatedBuildInputs = [
-      pyparsing
-      pythonocc-core-cadquery
-    ];
-
-    FONTCONFIG_FILE = makeFontsConf {
-      fontDirectories = [ freefont_ttf ];
-    };
-
-    nativeCheckInputs = [
-      pytest
-    ];
-
-    disabled = pythonOlder "3.6" || pythonAtLeast "3.8";
-
-    meta = with lib; {
-      description = "Parametric scripting language for creating and traversing CAD models";
-      homepage = "https://github.com/CadQuery/cadquery";
-      license = licenses.asl20;
-      maintainers = with maintainers; [ marcus7070 ];
-      broken = true;
-    };
-  }
diff --git a/pkgs/development/python-modules/cartopy/default.nix b/pkgs/development/python-modules/cartopy/default.nix
index 05529a9c00da..17d6b014caef 100644
--- a/pkgs/development/python-modules/cartopy/default.nix
+++ b/pkgs/development/python-modules/cartopy/default.nix
@@ -23,7 +23,7 @@
 
 buildPythonPackage rec {
   pname = "cartopy";
-  version = "0.22.0";
+  version = "0.23.0";
 
   disabled = pythonOlder "3.8";
 
@@ -32,7 +32,7 @@ buildPythonPackage rec {
   src = fetchPypi {
     inherit version;
     pname = "Cartopy";
-    hash = "sha256-swD5ASCTHUPxHvh8Bk6h2s7BtZpJQKp26/gs8JVIu0k=";
+    hash = "sha256-Ix83s1cB8rox2UlZzKdebaBMLuo6fxTOHHXuOw6udnY=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/python-modules/casa-formats-io/default.nix b/pkgs/development/python-modules/casa-formats-io/default.nix
index 4e4d10bd2731..49f1b18dc8bd 100644
--- a/pkgs/development/python-modules/casa-formats-io/default.nix
+++ b/pkgs/development/python-modules/casa-formats-io/default.nix
@@ -1,41 +1,48 @@
-{ lib
-, fetchPypi
-, buildPythonPackage
-, astropy
-, dask
-, numpy
-, oldest-supported-numpy
-, setuptools-scm
-, wheel
+{
+  lib,
+  astropy,
+  buildPythonPackage,
+  dask,
+  fetchPypi,
+  numpy,
+  oldest-supported-numpy,
+  pythonOlder,
+  setuptools-scm,
 }:
 
 buildPythonPackage rec {
   pname = "casa-formats-io";
-  version = "0.2.2";
-  format = "pyproject";
+  version = "0.3.0";
+  prproject = true;
+
+  disabled = pythonOlder "3.9";
 
   src = fetchPypi {
-    inherit pname version;
-    hash = "sha256-EOX+tal9nrON2K7mHVYSTTxja6mu2k3Bag8bhL3JHJs=";
+    pname = "casa_formats_io";
+    inherit version;
+    hash = "sha256-FpQj0XeZ7vvOzUM/+5qG6FRwNXl3gzoUBItYdQ1M4m4=";
   };
 
-  nativeBuildInputs = [
-    oldest-supported-numpy
-    setuptools-scm
-    wheel
-  ];
+  build-system = [ setuptools-scm ];
 
-  propagatedBuildInputs = [ astropy dask numpy ];
+  nativeBuildInputs = [ oldest-supported-numpy ];
+
+  dependencies = [
+    astropy
+    dask
+    numpy
+  ];
 
   # Tests require a large (800 Mb) dataset
   doCheck = false;
 
   pythonImportsCheck = [ "casa_formats_io" ];
 
-  meta = {
+  meta = with lib; {
     description = "Dask-based reader for CASA data";
     homepage = "https://casa-formats-io.readthedocs.io/";
-    license = lib.licenses.lgpl2Only;
-    maintainers = with lib.maintainers; [ smaret ];
+    changelog = "https://github.com/radio-astro-tools/casa-formats-io/blob/v${version}/CHANGES.rst";
+    license = licenses.lgpl2Only;
+    maintainers = with maintainers; [ smaret ];
   };
 }
diff --git a/pkgs/development/python-modules/cbor2/default.nix b/pkgs/development/python-modules/cbor2/default.nix
index 73f994cce5a8..c9d2ecbaca4f 100644
--- a/pkgs/development/python-modules/cbor2/default.nix
+++ b/pkgs/development/python-modules/cbor2/default.nix
@@ -15,14 +15,14 @@
 
 buildPythonPackage rec {
   pname = "cbor2";
-  version = "5.6.2";
+  version = "5.6.3";
   pyproject = true;
 
   disabled = pythonOlder "3.8";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-t1E8LeqIaJkfrX74iZiQ68+LGZubRGHDwR160670gg0=";
+    hash = "sha256-5vCuJ1HC0zOpYOCAfAYRSU6xJFYxoWeWWsvBAFCUVdM=";
   };
 
   postPatch = ''
diff --git a/pkgs/development/python-modules/celery/default.nix b/pkgs/development/python-modules/celery/default.nix
index a787e1fce4ea..f62840490908 100644
--- a/pkgs/development/python-modules/celery/default.nix
+++ b/pkgs/development/python-modules/celery/default.nix
@@ -1,45 +1,57 @@
 { stdenv
 , lib
-, backports-zoneinfo
-, billiard
-, boto3
 , buildPythonPackage
-, case
+, fetchPypi
+, pythonOlder
+
+# build-system
+, setuptools
+
+# dependencies
+, billiard
+, kombu
+, vine
 , click
 , click-didyoumean
-, click-plugins
 , click-repl
-, dnspython
-, fetchPypi
-, kombu
+, click-plugins
+, tzdata
+, python-dateutil
+
+# optional-dependencies
+, google-cloud-storage
 , moto
+, msgpack
 , pymongo
+, pyyaml
+
+# tests
 , pytest-celery
 , pytest-click
 , pytest-subtests
 , pytest-timeout
 , pytest-xdist
 , pytestCheckHook
-, python-dateutil
-, pythonOlder
-, tzdata
-, vine
 , nixosTests
 }:
 
 buildPythonPackage rec {
   pname = "celery";
-  version = "5.3.6";
-  format = "setuptools";
+  version = "5.4.0";
+  pyproject = true;
 
   disabled = pythonOlder "3.8";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-hwzHHXN8AgDDlykNcwNEzJkdE6BXU0NT0STJOAJnqrk=";
+    hash = "sha256-UEoZFA6NMCnVrK2IMwxUHUw/ZMeJ2F+UdWdi2Lyn5wY=";
   };
 
-  propagatedBuildInputs = [
+  build-system = [
+    setuptools
+  ];
+
+  dependencies = [
     billiard
     click
     click-didyoumean
@@ -49,24 +61,29 @@ buildPythonPackage rec {
     python-dateutil
     tzdata
     vine
-  ]
-  ++ lib.optionals (pythonOlder "3.9") [
-    backports-zoneinfo
   ];
 
+  optional-dependencies = {
+    gcs = [ google-cloud-storage ];
+    mongodb = [ pymongo ];
+    msgpack = [ msgpack ];
+    yaml = [ pyyaml ];
+  };
+
   nativeCheckInputs = [
-    boto3
-    case
-    dnspython
     moto
-    pymongo
     pytest-celery
     pytest-click
     pytest-subtests
     pytest-timeout
     pytest-xdist
     pytestCheckHook
-  ];
+  ]
+  # based on https://github.com/celery/celery/blob/main/requirements/test.txt
+  ++ optional-dependencies.yaml
+  ++ optional-dependencies.msgpack
+  ++ optional-dependencies.mongodb
+  ++ optional-dependencies.gcs;
 
   disabledTestPaths = [
     # test_eventlet touches network
diff --git a/pkgs/development/python-modules/cepa/default.nix b/pkgs/development/python-modules/cepa/default.nix
deleted file mode 100644
index 1b12ea1e5efb..000000000000
--- a/pkgs/development/python-modules/cepa/default.nix
+++ /dev/null
@@ -1,48 +0,0 @@
-{ lib
-, buildPythonPackage
-, fetchpatch
-, fetchPypi
-, python
-, mock
-}:
-
-buildPythonPackage rec {
-  pname = "cepa";
-  version = "1.8.4";
-  format = "setuptools";
-
-  src = fetchPypi {
-    inherit pname version;
-    hash = "sha256-P7xwGsP8ic1/abxYptDXNbAU+kC2Hiwu/Tge0g21ipY=";
-  };
-
-  patches = [
-    (fetchpatch {
-      name = "python-3.11-compatibility.patch";
-      url = "https://github.com/onionshare/cepa/commit/0bf9aee7151e65594c532826bb04636e1d80fb6f.patch";
-      hash = "sha256-roSt9N5OvnOOxKZUee86zGXt0AsZCcbBdV2cLz1MB2k=";
-    })
-  ];
-
-  postPatch = ''
-    rm test/unit/installation.py
-    sed -i "/test.unit.installation/d" test/settings.cfg
-    # https://github.com/torproject/stem/issues/56
-    sed -i '/MOCK_VERSION/d' run_tests.py
-  '';
-
-  nativeCheckInputs = [ mock ];
-
-  checkPhase = ''
-    touch .gitignore
-    ${python.interpreter} run_tests.py -u
-  '';
-
-  meta = with lib; {
-    description = "Controller library that allows applications to interact with Tor";
-    mainProgram = "tor-prompt";
-    homepage = "https://github.com/onionshare/cepa";
-    license = licenses.lgpl3Only;
-    maintainers = with maintainers; [ bbjubjub ];
-  };
-}
diff --git a/pkgs/development/python-modules/cgen/default.nix b/pkgs/development/python-modules/cgen/default.nix
index 966a6b7ff159..d2a4878f240f 100644
--- a/pkgs/development/python-modules/cgen/default.nix
+++ b/pkgs/development/python-modules/cgen/default.nix
@@ -30,6 +30,6 @@ buildPythonPackage rec {
     description = "C/C++ source generation from an AST";
     homepage = "https://github.com/inducer/cgen";
     license = licenses.mit;
-    maintainers = [ ];
+    maintainers = with lib.maintainers; [ sigmanificient ];
   };
 }
diff --git a/pkgs/development/python-modules/chai/default.nix b/pkgs/development/python-modules/chai/default.nix
index 6146ec692c75..7fb8e6d3489f 100644
--- a/pkgs/development/python-modules/chai/default.nix
+++ b/pkgs/development/python-modules/chai/default.nix
@@ -10,6 +10,14 @@ buildPythonPackage rec {
     sha256 = "ff8d2b6855f660cd23cd5ec79bd10264d39f24f6235773331b48e7fcd637d6cc";
   };
 
+  postPatch = ''
+    # python 3.12 compatibility
+    substituteInPlace tests/*.py \
+      --replace "assertEquals" "assertEqual" \
+      --replace "assertNotEquals" "assertNotEqual" \
+      --replace "assert_equals" "assert_equal"
+  '';
+
   meta = with lib; {
     description = "Mocking, stubbing and spying framework for python";
   };
diff --git a/pkgs/development/python-modules/character-encoding-utils/default.nix b/pkgs/development/python-modules/character-encoding-utils/default.nix
index dd0e3b60fe1f..85e418ca7957 100644
--- a/pkgs/development/python-modules/character-encoding-utils/default.nix
+++ b/pkgs/development/python-modules/character-encoding-utils/default.nix
@@ -10,14 +10,14 @@
 
 buildPythonPackage rec {
   pname = "character-encoding-utils";
-  version = "0.0.6";
+  version = "0.0.7";
 
   disabled = pythonOlder "3.11";
 
   src = fetchPypi {
     pname = "character_encoding_utils";
     inherit version;
-    hash = "sha256-ugzWiSpa/xxlraVyVPTSq/uxPg11kOyePgb1cmzX3ug=";
+    hash = "sha256-cUggyNz5xphDF+7dSrx3vr3v3R8ISryHj9accMJfDbg=";
   };
 
   format = "pyproject";
diff --git a/pkgs/development/python-modules/chart-studio/default.nix b/pkgs/development/python-modules/chart-studio/default.nix
index 4f78d8728120..b61091ca69a9 100644
--- a/pkgs/development/python-modules/chart-studio/default.nix
+++ b/pkgs/development/python-modules/chart-studio/default.nix
@@ -13,7 +13,7 @@
 
 buildPythonPackage rec {
   pname = "chart-studio";
-  version = "5.20.0";
+  version = "5.22.0";
   pyproject = true;
 
   # chart-studio was split from plotly
@@ -21,7 +21,7 @@ buildPythonPackage rec {
     owner = "plotly";
     repo = "plotly.py";
     rev = "refs/tags/v${version}";
-    hash = "sha256-i//LKTNmoIrusBnpfSGc9cDijPxg/dY/7fumV3kfTAY=";
+    hash = "sha256-cEm0vLQ4PAVxvplqK+yayxLpNCvyfZtjZva0Bl2Sdfs=";
   };
 
   sourceRoot = "${src.name}/packages/python/chart-studio";
diff --git a/pkgs/development/python-modules/cheroot/default.nix b/pkgs/development/python-modules/cheroot/default.nix
index 602afd0f755f..72a85ffab1c2 100644
--- a/pkgs/development/python-modules/cheroot/default.nix
+++ b/pkgs/development/python-modules/cheroot/default.nix
@@ -19,14 +19,14 @@
 
 buildPythonPackage rec {
   pname = "cheroot";
-  version = "10.0.0";
+  version = "10.0.1";
   format = "setuptools";
 
   disabled = pythonOlder "3.7";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-WcShh3/vmWmzw8CAyqrzd+J4CRlDeFP8DTKp30CzEfA=";
+    hash = "sha256-4LgveXZY0muGE+yOtWPDsI5r1qeSHp1Qib0Rda0bF0A=";
   };
 
   # remove setuptools-scm-git-archive dependency
diff --git a/pkgs/development/python-modules/chromadb/default.nix b/pkgs/development/python-modules/chromadb/default.nix
index 2042758efd8a..471b6111a93d 100644
--- a/pkgs/development/python-modules/chromadb/default.nix
+++ b/pkgs/development/python-modules/chromadb/default.nix
@@ -132,6 +132,7 @@ buildPythonPackage rec {
   pytestFlagsArray = [ "-x" ];
 
   preCheck = ''
+    (($(ulimit -n) < 1024)) && ulimit -n 1024
     export HOME=$(mktemp -d)
   '';
 
diff --git a/pkgs/development/python-modules/clarifai/default.nix b/pkgs/development/python-modules/clarifai/default.nix
index b1085bdc5b99..3130098a6cca 100644
--- a/pkgs/development/python-modules/clarifai/default.nix
+++ b/pkgs/development/python-modules/clarifai/default.nix
@@ -25,7 +25,7 @@
 
 buildPythonPackage rec {
   pname = "clarifai";
-  version = "10.3.1";
+  version = "10.3.3";
   pyproject = true;
 
   disabled = pythonOlder "3.8";
@@ -34,7 +34,7 @@ buildPythonPackage rec {
     owner = "Clarifai";
     repo = "clarifai-python";
     rev = "refs/tags/${version}";
-    hash = "sha256-KCJ1Ev0fgww0JU1tDp9X/A9EIcXQRaFKeA/MRNnp5ng=";
+    hash = "sha256-M0OrBqjNjrpxVM/A7NVqarcP8S+VqunYGI4C+Wis6UI=";
   };
 
   pythonRelaxDeps = [ "clarifai-grpc" ];
diff --git a/pkgs/development/python-modules/claripy/default.nix b/pkgs/development/python-modules/claripy/default.nix
index c10d32e6b189..d7e3079efdc3 100644
--- a/pkgs/development/python-modules/claripy/default.nix
+++ b/pkgs/development/python-modules/claripy/default.nix
@@ -14,7 +14,7 @@
 
 buildPythonPackage rec {
   pname = "claripy";
-  version = "9.2.101";
+  version = "9.2.102";
   pyproject = true;
 
   disabled = pythonOlder "3.11";
@@ -23,7 +23,7 @@ buildPythonPackage rec {
     owner = "angr";
     repo = "claripy";
     rev = "refs/tags/v${version}";
-    hash = "sha256-ecYyoFtCIsrlzcraqL8X4cZgqc243E9WXZix/70eksY=";
+    hash = "sha256-U7aN6MOptGjW61HDfZDM7Vit5G+rm1LujgHoo6oRX3s=";
   };
 
   # z3 does not provide a dist-info, so python-runtime-deps-check will fail
diff --git a/pkgs/development/python-modules/cle/default.nix b/pkgs/development/python-modules/cle/default.nix
index 4457c6586796..d1d719e370f8 100644
--- a/pkgs/development/python-modules/cle/default.nix
+++ b/pkgs/development/python-modules/cle/default.nix
@@ -18,14 +18,14 @@
 
 let
   # The binaries are following the argr projects release cycle
-  version = "9.2.101";
+  version = "9.2.102";
 
   # Binary files from https://github.com/angr/binaries (only used for testing and only here)
   binaries = fetchFromGitHub {
     owner = "angr";
     repo = "binaries";
     rev = "refs/tags/v${version}";
-    hash = "sha256-8uvhjxZOgMjE2csOxS+kUPeo/pswovBDOLp5w8d4JSk=";
+    hash = "sha256-6FVxlQ1MiJP2mtu4V/mPAyaeCRdBp/sk+u4fdFqxTyA=";
   };
 in
 buildPythonPackage rec {
@@ -39,7 +39,7 @@ buildPythonPackage rec {
     owner = "angr";
     repo = "cle";
     rev = "refs/tags/v${version}";
-    hash = "sha256-cG9j3cMDwjm2DGvvgJgYfigf5e/61HKWFudgezE2zz8=";
+    hash = "sha256-BPKNrFBEKV8UuSdrl+HIgBqFClHTvRsGidz+X81bBLI=";
   };
 
   build-system = [ setuptools ];
diff --git a/pkgs/development/python-modules/click-didyoumean/default.nix b/pkgs/development/python-modules/click-didyoumean/default.nix
index 8c1bf6f26e94..110855c60a42 100644
--- a/pkgs/development/python-modules/click-didyoumean/default.nix
+++ b/pkgs/development/python-modules/click-didyoumean/default.nix
@@ -1,18 +1,29 @@
-{ lib, buildPythonPackage, fetchPypi,
-  click
+{
+  lib,
+  buildPythonPackage,
+  fetchFromGitHub,
+  poetry-core,
+  click,
+  pytestCheckHook
 }:
 
 buildPythonPackage rec {
   pname = "click-didyoumean";
-  version = "0.3.0";
-  format = "setuptools";
+  version = "0.3.1";
+  pyproject = true;
 
-  src = fetchPypi {
-    inherit pname version;
-    sha256 = "f184f0d851d96b6d29297354ed981b7dd71df7ff500d82fa6d11f0856bee8035";
+  src = fetchFromGitHub {
+    owner = "click-contrib";
+    repo = "click-didyoumean";
+    rev = "refs/tags/v${version}";
+    hash = "sha256-C8OrJUfBFiDM/Jnf1iJo8pGEd0tUhar1vu4fVIfGzq8=";
   };
 
-  propagatedBuildInputs = [ click ];
+  build-system = [ poetry-core ];
+
+  dependencies = [ click ];
+
+  nativeCheckInputs = [ pytestCheckHook ];
 
   meta = with lib; {
     description = "Enable git-like did-you-mean feature in click";
diff --git a/pkgs/development/python-modules/click-spinner/default.nix b/pkgs/development/python-modules/click-spinner/default.nix
index 0c281c29ab4c..dd9ee1c021f2 100644
--- a/pkgs/development/python-modules/click-spinner/default.nix
+++ b/pkgs/development/python-modules/click-spinner/default.nix
@@ -1,30 +1,48 @@
-{ lib
-, buildPythonPackage
-, fetchPypi
-, click
-, six
-, pytestCheckHook
+{
+  lib,
+  buildPythonPackage,
+  click,
+  fetchPypi,
+  pytestCheckHook,
+  pythonOlder,
+  setuptools,
+  six,
+  versioneer,
 }:
 
 buildPythonPackage rec {
   pname = "click-spinner";
   version = "0.1.10";
-  format = "setuptools";
+  pyproject = true;
+
+  disabled = pythonOlder "3.7";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "h+rPnXKYlzol12Fe9X1Hgq6/kTpTK7pLKKN+Nm6XXa8=";
+    hash = "sha256-h+rPnXKYlzol12Fe9X1Hgq6/kTpTK7pLKKN+Nm6XXa8=";
   };
 
+  postPatch = ''
+    rm versioneer.py
+  '';
+
+  build-system = [
+    setuptools
+    versioneer
+  ];
+
   nativeCheckInputs = [
     click
-    six
     pytestCheckHook
+    six
   ];
 
+  pythonImportsCheck = [ "click_spinner" ];
+
   meta = with lib; {
     description = "Add support for showwing that command line app is active to Click";
     homepage = "https://github.com/click-contrib/click-spinner";
+    changelog = "https://github.com/click-contrib/click-spinner/releases/tag/v${version}";
     license = licenses.mit;
     maintainers = with maintainers; [ ];
   };
diff --git a/pkgs/development/python-modules/cloudflare/default.nix b/pkgs/development/python-modules/cloudflare/default.nix
index 1bfdafaba5a4..34ca3c05bdcd 100644
--- a/pkgs/development/python-modules/cloudflare/default.nix
+++ b/pkgs/development/python-modules/cloudflare/default.nix
@@ -12,14 +12,14 @@
 
 buildPythonPackage rec {
   pname = "cloudflare";
-  version = "2.19.2";
+  version = "2.20.0";
   pyproject = true;
 
   disabled = pythonOlder "3.7";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-ENS5ayrd7gffo2meChZ9930qjVq3+G5lkOqm6ofW3Bg=";
+    hash = "sha256-Rq78Od+qI2XWObQjzsLNU1CuERU8ckfT6zVFvc8Bpoo=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/python-modules/cnvkit/default.nix b/pkgs/development/python-modules/cnvkit/default.nix
index 35195b1db529..f705cfbeff9f 100644
--- a/pkgs/development/python-modules/cnvkit/default.nix
+++ b/pkgs/development/python-modules/cnvkit/default.nix
@@ -22,7 +22,7 @@
 
 buildPythonPackage rec {
   pname = "cnvkit";
-  version = "0.9.10";
+  version = "0.9.11";
   format = "setuptools";
 
   disabled = pythonOlder "3.7";
@@ -31,7 +31,7 @@ buildPythonPackage rec {
     owner = "etal";
     repo = "cnvkit";
     rev = "refs/tags/v${version}";
-    hash = "sha256-mCQXo3abwC06x/g51UBshqUk3dpqEVNUvx+cJ/EdYGQ=";
+    hash = "sha256-tlR1LsR+M1nkzk3CgrkkNcSGP3juv25GXddWDDWJ5ao=";
   };
 
   postPatch = ''
diff --git a/pkgs/development/python-modules/coffea/default.nix b/pkgs/development/python-modules/coffea/default.nix
index 86090e3b2556..2f390d3bab16 100644
--- a/pkgs/development/python-modules/coffea/default.nix
+++ b/pkgs/development/python-modules/coffea/default.nix
@@ -4,6 +4,7 @@
 , fetchFromGitHub
 , hatchling
 , hatch-vcs
+, aiohttp
 , awkward
 , cachetools
 , cloudpickle
@@ -21,6 +22,7 @@
 , packaging
 , pandas
 , pyarrow
+, requests
 , scipy
 , toml
 , tqdm
@@ -32,7 +34,7 @@
 
 buildPythonPackage rec {
   pname = "coffea";
-  version = "2024.4.1";
+  version = "2024.5.0";
   pyproject = true;
 
   disabled = pythonOlder "3.8";
@@ -41,20 +43,16 @@ buildPythonPackage rec {
     owner = "CoffeaTeam";
     repo = "coffea";
     rev = "refs/tags/v${version}";
-    hash = "sha256-Iu1GHnLUqdhYO7hoHaf+O/S6KO0P+dvl0wgfRA5vtGI=";
+    hash = "sha256-FHE7/VL0mnf0eBPzCsrr8ISr7OmfFvI9xuV0CPa7JdU=";
   };
 
-  postPatch = ''
-    substituteInPlace pyproject.toml \
-      --replace-fail "numba>=0.58.1" "numba"
-  '';
-
-  nativeBuildInputs = [
+  build-system = [
     hatchling
     hatch-vcs
   ];
 
-  propagatedBuildInputs = [
+  dependencies = [
+    aiohttp
     awkward
     cachetools
     cloudpickle
@@ -72,6 +70,7 @@ buildPythonPackage rec {
     packaging
     pandas
     pyarrow
+    requests
     scipy
     toml
     tqdm
@@ -88,6 +87,14 @@ buildPythonPackage rec {
     "coffea"
   ];
 
+  disabledTests = [
+    # Requires internet access
+    # https://github.com/CoffeaTeam/coffea/issues/1094
+    "test_lumimask"
+  ];
+
+  __darwinAllowLocalNetworking = true;
+
   meta = with lib; {
     description = "Basic tools and wrappers for enabling not-too-alien syntax when running columnar Collider HEP analysis";
     homepage = "https://github.com/CoffeaTeam/coffea";
diff --git a/pkgs/development/python-modules/cohere/default.nix b/pkgs/development/python-modules/cohere/default.nix
index 26deb98e3d45..73af79e3c589 100644
--- a/pkgs/development/python-modules/cohere/default.nix
+++ b/pkgs/development/python-modules/cohere/default.nix
@@ -15,14 +15,14 @@
 
 buildPythonPackage rec {
   pname = "cohere";
-  version = "5.3.3";
+  version = "5.3.4";
   pyproject = true;
 
   disabled = pythonOlder "3.7";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-+/WcC6sN7U0oCR+gwZOhFtgwPEwLCaQnId2KEjDqJ8M=";
+    hash = "sha256-tFoshbAl3RU2fWm/knSN5KMOyCq7Swj6UwG3LokFH+I=";
   };
 
   build-system = [
diff --git a/pkgs/development/python-modules/comicon/default.nix b/pkgs/development/python-modules/comicon/default.nix
index 04382d3ee340..c13234b85d28 100644
--- a/pkgs/development/python-modules/comicon/default.nix
+++ b/pkgs/development/python-modules/comicon/default.nix
@@ -3,22 +3,25 @@
 , fetchFromGitHub
 , poetry-core
 , pythonRelaxDepsHook
+, pythonOlder
 , ebooklib
 , lxml
 , pillow
 , pypdf
+, python-slugify
 }:
 
 buildPythonPackage rec {
   pname = "comicon";
-  version = "1.0.1";
+  version = "1.1.0";
   pyproject = true;
+  disabled = pythonOlder "3.10";
 
   src = fetchFromGitHub {
     owner = "potatoeggy";
     repo = "comicon";
     rev = "v${version}";
-    hash = "sha256-e9YEr8IwttMlj6FOxk+/kw79qiF1N8/e2qusfw3WH00=";
+    hash = "sha256-VP4n2pWXHge2gJ67O2nErJ30gI0vaAMn0VOpX8sLkfs=";
   };
 
   nativeBuildInputs = [
@@ -27,8 +30,7 @@ buildPythonPackage rec {
   ];
 
   pythonRelaxDeps = [
-    "lxml"
-    "pillow"
+    "pypdf"
   ];
 
   propagatedBuildInputs = [
@@ -36,6 +38,7 @@ buildPythonPackage rec {
     lxml
     pillow
     pypdf
+    python-slugify
   ];
 
   pythonImportsCheck = [ "comicon" ];
diff --git a/pkgs/development/python-modules/command-runner/default.nix b/pkgs/development/python-modules/command-runner/default.nix
index fb8fd94f8030..f50e32abd5f3 100644
--- a/pkgs/development/python-modules/command-runner/default.nix
+++ b/pkgs/development/python-modules/command-runner/default.nix
@@ -1,17 +1,36 @@
-{ lib, buildPythonPackage, fetchPypi, psutil }:
+{
+  lib,
+  buildPythonPackage,
+  fetchFromGitHub,
+  psutil,
+  pytestCheckHook,
+  pythonOlder,
+  setuptools,
+}:
 
 buildPythonPackage rec {
   pname = "command-runner";
   version = "1.6.0";
-  format = "setuptools";
+  pyproject = true;
 
-  src = fetchPypi {
-    pname = "command_runner";
-    inherit version;
-    sha256 = "sha256-lzt1UhhrPqQrBKsRmPhqhtOIfFlCteQqo6sZ6rOut0A=";
+  disabled = pythonOlder "3.7";
+
+  src = fetchFromGitHub {
+    owner = "netinvent";
+    repo = "command_runner";
+    rev = "refs/tags/v${version}";
+    hash = "sha256-QzqkcF2/YExK/dz+b0Uk0Af/rAXRMuRIeEynyFgDql8=";
   };
 
-  propagatedBuildInputs = [ psutil ];
+  build-system = [ setuptools ];
+
+  dependencies = [ psutil ];
+
+  # Tests are execute ping
+  # ping: socket: Operation not permitted
+  doCheck = false;
+
+  pythonImportsCheck = [ "command_runner" ];
 
   meta = with lib; {
     homepage = "https://github.com/netinvent/command_runner";
@@ -19,6 +38,7 @@ buildPythonPackage rec {
       Platform agnostic command execution, timed background jobs with live
       stdout/stderr output capture, and UAC/sudo elevation
     '';
+    changelog = "https://github.com/netinvent/command_runner/releases/tag/v${version}";
     license = licenses.bsd3;
     maintainers = teams.wdz.members;
   };
diff --git a/pkgs/development/python-modules/conda/default.nix b/pkgs/development/python-modules/conda/default.nix
index e2ec8bd2d46e..adebce0b2377 100644
--- a/pkgs/development/python-modules/conda/default.nix
+++ b/pkgs/development/python-modules/conda/default.nix
@@ -27,15 +27,15 @@
 }:
 buildPythonPackage rec {
   pname = "conda";
-  version = "24.1.2";
+  version = "24.4.0";
   pyproject = true;
 
   src = fetchFromGitHub {
     inherit pname version;
     owner = "conda";
     repo = "conda";
-    rev = version;
-    hash = "sha256-L/Y7Bb3R5YqXbjTN4CRPFnkgymVLrxuFmjVzpvt28dE=";
+    rev = "refs/tags/${version}";
+    hash = "sha256-LdoBlR5EFYd2mQIjOgp1MH3w6osfRfurPq+N5Y1iaFw=";
   };
 
   nativeBuildInputs = [ pythonRelaxDepsHook ];
diff --git a/pkgs/development/python-modules/contexttimer/default.nix b/pkgs/development/python-modules/contexttimer/default.nix
index f908783fb0b6..422ac17fb3de 100644
--- a/pkgs/development/python-modules/contexttimer/default.nix
+++ b/pkgs/development/python-modules/contexttimer/default.nix
@@ -1,5 +1,6 @@
 { lib
 , buildPythonPackage
+, pythonAtLeast
 , fetchFromGitHub
 , mock
 , fetchpatch
@@ -11,6 +12,8 @@ buildPythonPackage rec {
   version = "unstable-2019-03-30";
   format = "setuptools";
 
+  disabled = pythonAtLeast "3.12";
+
   src = fetchFromGitHub {
     owner = "brouberol";
     repo = "contexttimer";
diff --git a/pkgs/development/python-modules/contourpy/default.nix b/pkgs/development/python-modules/contourpy/default.nix
index 5e12a4531b33..1f606a932d2e 100644
--- a/pkgs/development/python-modules/contourpy/default.nix
+++ b/pkgs/development/python-modules/contourpy/default.nix
@@ -23,7 +23,7 @@
 , pytestCheckHook
 }:
 
-let countourpy = buildPythonPackage rec {
+let contourpy = buildPythonPackage rec {
   pname = "contourpy";
   version = "1.2.0";
   format = "pyproject";
@@ -61,7 +61,7 @@ let countourpy = buildPythonPackage rec {
   ];
 
   passthru.tests = {
-    check = countourpy.overridePythonAttrs (_: { doCheck = true; });
+    check = contourpy.overridePythonAttrs (_: { doCheck = true; });
   };
 
   pythonImportsCheck = [
@@ -76,4 +76,4 @@ let countourpy = buildPythonPackage rec {
     maintainers = with maintainers; [ ];
   };
 };
-in countourpy
+in contourpy
diff --git a/pkgs/development/python-modules/controku/default.nix b/pkgs/development/python-modules/controku/default.nix
index e2dd1d32b76a..80c4505175f2 100644
--- a/pkgs/development/python-modules/controku/default.nix
+++ b/pkgs/development/python-modules/controku/default.nix
@@ -8,7 +8,7 @@
 , pygobject3
 , gobject-introspection
 , gtk3
-, wrapGAppsHook
+, wrapGAppsHook3
 , buildApplication ? false
 }:
 
@@ -28,7 +28,7 @@ python3Packages.buildPythonPackage rec {
     setuptools
   ] ++ lib.optionals buildApplication [
     gobject-introspection
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/coordinates/default.nix b/pkgs/development/python-modules/coordinates/default.nix
index e699e1b9a015..454a2b7083cb 100644
--- a/pkgs/development/python-modules/coordinates/default.nix
+++ b/pkgs/development/python-modules/coordinates/default.nix
@@ -1,33 +1,37 @@
-{ lib, buildPythonPackage, fetchFromGitHub, pythonOlder
-, pytest
+{
+  lib,
+  buildPythonPackage,
+  fetchFromGitHub,
+  pythonOlder,
+  pytestCheckHook,
+  setuptools,
 }:
 
 buildPythonPackage rec {
   pname = "coordinates";
   version = "0.4.0";
-  format = "setuptools";
+  pyproject = true;
 
-  disabled = pythonOlder "3.5";
+  disabled = pythonOlder "3.7";
 
   src = fetchFromGitHub {
     owner = "clbarnes";
     repo = "coordinates";
-    rev = "v${version}";
-    sha256 = "1zha594rshjg3qjq9mrai2hfldya282ihasp2i3km7b2j4gjdw2b";
+    rev = "refs/tags/v${version}";
+    hash = "sha256-S/AmH5FinTpHFFcrGAUSyjfqoIgq14QlHk9CnUkqCv4=";
   };
 
-  nativeCheckInputs = [ pytest ];
+  build-system = [ setuptools ];
 
-  checkPhase = ''
-    runHook preCheck
-    pytest tests/
-    runHook postCheck
-  '';
+  nativeCheckInputs = [ pytestCheckHook ];
+
+  pythonImportsCheck = [ "coordinates" ];
 
   meta = with lib; {
     description = "Convenience class for doing maths with explicit coordinates";
     homepage = "https://github.com/clbarnes/coordinates";
+    changelog = "https://github.com/clbarnes/coordinates/releases/tag/v${version}";
     license = licenses.mit;
-    maintainers = [ ];
+    maintainers = with maintainers; [ ];
   };
 }
diff --git a/pkgs/development/python-modules/cornice/default.nix b/pkgs/development/python-modules/cornice/default.nix
index ff6ede5dcf20..6484e549daf7 100644
--- a/pkgs/development/python-modules/cornice/default.nix
+++ b/pkgs/development/python-modules/cornice/default.nix
@@ -1,26 +1,42 @@
 { lib
 , buildPythonPackage
-, fetchPypi
+, fetchFromGitHub
+, setuptools
+, setuptools-scm
 , pyramid
-, simplejson
-, six
-, venusian
+, pytestCheckHook
+, pytest-cache
+, webtest
+, marshmallow
+, colander
 }:
 
 buildPythonPackage rec {
   pname = "cornice";
   version = "6.1.0";
-  format = "setuptools";
+  pyproject = true;
 
-  src = fetchPypi {
-    inherit pname version;
-    sha256 = "sha256-v9G2wqmRp8yxsggrbenjuPGYtqK0oHqwgA4F3wWkU2E=";
+  src = fetchFromGitHub {
+    owner = "Cornices";
+    repo = "cornice";
+    rev = version;
+    hash = "sha256-jAf8unDPpr/ZAWkb9LhOW4URjwcRnaYVUKmfnYBStTg=";
   };
 
-  propagatedBuildInputs = [ pyramid simplejson six venusian ];
+  build-system = [
+    setuptools
+    setuptools-scm
+  ];
 
-  # tests not packaged with pypi release
-  doCheck = false;
+  dependencies = [ pyramid ];
+
+  nativeCheckInputs = [
+    pytestCheckHook
+    pytest-cache
+    webtest
+    marshmallow
+    colander
+  ];
   pythonImportsCheck = [ "cornice" ];
 
   meta = with lib; {
diff --git a/pkgs/development/python-modules/courlan/default.nix b/pkgs/development/python-modules/courlan/default.nix
index bd73aad1977d..fd2cfc01b6e8 100644
--- a/pkgs/development/python-modules/courlan/default.nix
+++ b/pkgs/development/python-modules/courlan/default.nix
@@ -1,56 +1,58 @@
-{ lib
-, buildPythonPackage
-, fetchPypi
-, langcodes
-, pytestCheckHook
-, tld
-, urllib3
-, pythonOlder
+{
+  lib,
+  babel,
+  buildPythonPackage,
+  fetchPypi,
+  langcodes,
+  pytestCheckHook,
+  pythonOlder,
+  setuptools,
+  tld,
+  urllib3,
 }:
 
 buildPythonPackage rec {
   pname = "courlan";
-  version = "1.0.0";
-  format = "setuptools";
+  version = "1.1.0";
+  pyproject = true;
 
   disabled = pythonOlder "3.6";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-PDVRHDZSXLL5Qc1nCbejp0LtlfC55WyX7sDBb9wDUYM=";
+    hash = "sha256-1wZoQzTxi+StofvVfyaArfADZkj22ECFL3pIItOt/Y0=";
   };
 
-  propagatedBuildInputs = [
+  # Tests try to write to /tmp directly. use $TMPDIR instead.
+  postPatch = ''
+    substituteInPlace tests/unit_tests.py \
+      --replace-fail "\"courlan --help\"" "\"$out/bin/courlan --help\"" \
+      --replace-fail "courlan_bin = \"courlan\"" "courlan_bin = \"$out/bin/courlan\"" \
+      --replace-fail "/tmp" "$TMPDIR"
+  '';
+
+  build-system = [ setuptools ];
+
+  dependencies = [
+    babel
     langcodes
     tld
     urllib3
   ];
 
-  nativeCheckInputs = [
-    pytestCheckHook
-  ];
+  nativeCheckInputs = [ pytestCheckHook ];
 
   # disable tests that require an internet connection
-  disabledTests = [
-    "test_urlcheck"
-  ];
-
-  # tests try to write to /tmp directly. use $TMPDIR instead.
-  postPatch = ''
-    substituteInPlace tests/unit_tests.py \
-      --replace "\"courlan --help\"" "\"$out/bin/courlan --help\"" \
-      --replace "courlan_bin = \"courlan\"" "courlan_bin = \"$out/bin/courlan\"" \
-      --replace "/tmp" "$TMPDIR"
-  '';
+  disabledTests = [ "test_urlcheck" ];
 
   pythonImportsCheck = [ "courlan" ];
 
   meta = with lib; {
     description = "Clean, filter and sample URLs to optimize data collection";
-    mainProgram = "courlan";
     homepage = "https://github.com/adbar/courlan";
     changelog = "https://github.com/adbar/courlan/blob/v${version}/HISTORY.md";
     license = licenses.asl20;
     maintainers = with maintainers; [ jokatzke ];
+    mainProgram = "courlan";
   };
 }
diff --git a/pkgs/development/python-modules/coverage/default.nix b/pkgs/development/python-modules/coverage/default.nix
index 4e4c86ae1063..43919f97fc2f 100644
--- a/pkgs/development/python-modules/coverage/default.nix
+++ b/pkgs/development/python-modules/coverage/default.nix
@@ -8,7 +8,7 @@
 
 buildPythonPackage rec {
   pname = "coverage";
-  version = "7.4.3";
+  version = "7.4.4";
   pyproject = true;
 
   # uses f strings
@@ -16,7 +16,7 @@ buildPythonPackage rec {
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-J29gd6XGFEekjRM+0T51nAnmKv8NyEJ0po3BhmAQTVI=";
+    hash = "sha256-yQHfg9CXZJ4lfoA74iWSrt/VGC8Hs8yH1kC7ua/VD0k=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/python-modules/craft-application/default.nix b/pkgs/development/python-modules/craft-application/default.nix
index 03753c8c35b8..998be770d518 100644
--- a/pkgs/development/python-modules/craft-application/default.nix
+++ b/pkgs/development/python-modules/craft-application/default.nix
@@ -27,7 +27,7 @@
 
 buildPythonPackage rec {
   pname = "craft-application";
-  version = "2.6.1";
+  version = "2.6.3";
   pyproject = true;
 
   disabled = pythonOlder "3.10";
@@ -36,7 +36,7 @@ buildPythonPackage rec {
     owner = "canonical";
     repo = "craft-application";
     rev = "refs/tags/${version}";
-    hash = "sha256-mWXEc54JsZAl6KD33RF8juzDhFheQOLviJbM1B8RPSo=";
+    hash = "sha256-ZhZoR8O5oxcF8+zzihiIbiC/j3AkDL7AjaJSlZ0N48s=";
   };
 
   postPatch = ''
diff --git a/pkgs/development/python-modules/cramjam/default.nix b/pkgs/development/python-modules/cramjam/default.nix
index 7a799429907e..e61e75da117f 100644
--- a/pkgs/development/python-modules/cramjam/default.nix
+++ b/pkgs/development/python-modules/cramjam/default.nix
@@ -1,30 +1,31 @@
-{ lib
-, buildPythonPackage
-, fetchFromGitHub
-, rustPlatform
-, stdenv
-, libiconv
-, hypothesis
-, numpy
-, pytest-xdist
-, pytestCheckHook
+{
+  lib,
+  buildPythonPackage,
+  fetchFromGitHub,
+  rustPlatform,
+  stdenv,
+  libiconv,
+  hypothesis,
+  numpy,
+  pytest-xdist,
+  pytestCheckHook,
 }:
 
 buildPythonPackage rec {
   pname = "cramjam";
-  version = "2.8.2";
+  version = "2.8.3";
   pyproject = true;
 
   src = fetchFromGitHub {
     owner = "milesgranger";
     repo = "pyrus-cramjam";
     rev = "refs/tags/v${version}";
-    hash = "sha256-BO35s7qOW4+l968I9qn9L1m2BtgRFNYUNlA7W1sctT8=";
+    hash = "sha256-1KD5/oZjfdXav1ZByQoyyiDSzbmY4VJsSJg/FtUFdDE=";
   };
 
   cargoDeps = rustPlatform.fetchCargoTarball {
     inherit src;
-    hash = "sha256-YWXf+ZDJLq6VxI5sa9G63fCPz2377BVSTmPM0mQSu8M=";
+    hash = "sha256-Bp7EtyuLdLUfU3yvouNVE42klfqYt9QOwt+iGe521yI=";
   };
 
   buildAndTestSubdir = "cramjam-python";
@@ -43,17 +44,17 @@ buildPythonPackage rec {
     pytestCheckHook
   ];
 
-  pytestFlagsArray = [
-    "cramjam-python/tests"
-  ];
+  pytestFlagsArray = [ "cramjam-python/tests" ];
 
   disabledTestPaths = [
     "cramjam-python/benchmarks/test_bench.py"
+    # test_variants.py appears to be flaky
+    #
+    # https://github.com/NixOS/nixpkgs/pull/311584#issuecomment-2117656380
+    "cramjam-python/tests/test_variants.py"
   ];
 
-  pythonImportsCheck = [
-    "cramjam"
-  ];
+  pythonImportsCheck = [ "cramjam" ];
 
   meta = with lib; {
     description = "Thin Python bindings to de/compression algorithms in Rust";
diff --git a/pkgs/development/python-modules/croniter/default.nix b/pkgs/development/python-modules/croniter/default.nix
index 8db83b619969..86786baa2ee8 100644
--- a/pkgs/development/python-modules/croniter/default.nix
+++ b/pkgs/development/python-modules/croniter/default.nix
@@ -11,14 +11,14 @@
 
 buildPythonPackage rec {
   pname = "croniter";
-  version = "2.0.3";
+  version = "2.0.5";
   pyproject = true;
 
   disabled = pythonOlder "3.7";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-KHY605xAThWRQIdPCAEM/YoY9MKnzqHOc+lQakOAz8E=";
+    hash = "sha256-8fjKCvZCEvvpmxvuEl7lobU6nBtDOWjYvKiBe3nSN/M=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/python-modules/cryptacular/default.nix b/pkgs/development/python-modules/cryptacular/default.nix
deleted file mode 100644
index 977de2396f2c..000000000000
--- a/pkgs/development/python-modules/cryptacular/default.nix
+++ /dev/null
@@ -1,27 +0,0 @@
-{ lib, buildPythonPackage, fetchPypi, isPy27, pythonAtLeast
-, coverage, nose, pbkdf2 }:
-
-buildPythonPackage rec {
-  pname = "cryptacular";
-  version = "1.6.2";
-  format = "setuptools";
-
-  src = fetchPypi {
-    inherit pname version;
-    sha256 = "7b529cb2b8a3c7e5be77921bf1ebc653d4d3a8f791375cc6f971b20db2404176";
-  };
-
-  buildInputs = [ coverage nose ];
-  propagatedBuildInputs = [ pbkdf2 ];
-
-  # TODO: tests fail: TypeError: object of type 'NoneType' has no len()
-  doCheck = false;
-
-  # Python >=2.7.15, >=3.6.5 are incompatible:
-  # https://bitbucket.org/dholth/cryptacular/issues/11
-  disabled = isPy27 || pythonAtLeast "3.6";
-
-  meta = with lib; {
-    maintainers = with maintainers; [ domenkozar ];
-  };
-}
diff --git a/pkgs/development/python-modules/cryptodatahub/default.nix b/pkgs/development/python-modules/cryptodatahub/default.nix
index e19a4137e4f3..0a42e56d405a 100644
--- a/pkgs/development/python-modules/cryptodatahub/default.nix
+++ b/pkgs/development/python-modules/cryptodatahub/default.nix
@@ -16,7 +16,7 @@
 
 buildPythonPackage rec {
   pname = "cryptodatahub";
-  version = "0.12.2";
+  version = "0.12.4";
   pyproject = true;
 
   disabled = pythonOlder "3.7";
@@ -25,19 +25,19 @@ buildPythonPackage rec {
     owner = "coroner";
     repo = "cryptodatahub";
     rev = "refs/tags/v${version}";
-    hash = "sha256-zVHHBQYcl26zTtXPAs/AgKOojKQORu08rpkfY0l1zjM=";
+    hash = "sha256-+IGzXYSaeZjN5AxBu7jXgrnGtrtaSveFiVeNQRBZMNg=";
   };
 
   postPatch = ''
     substituteInPlace requirements.txt  \
-      --replace-warn "attrs>=20.3.0,<22.0.1" "attrs>=20.3.0"
+      --replace-fail "attrs>=20.3.0,<22.0.1" "attrs>=20.3.0"
   '';
 
-  nativeBuildInputs = [
+  build-system = [
     setuptools
   ];
 
-  propagatedBuildInputs = [
+  dependencies = [
     asn1crypto
     attrs
     pathlib2
diff --git a/pkgs/development/python-modules/cryptoparser/default.nix b/pkgs/development/python-modules/cryptoparser/default.nix
index fc18fadc3a3a..61efe59f0637 100644
--- a/pkgs/development/python-modules/cryptoparser/default.nix
+++ b/pkgs/development/python-modules/cryptoparser/default.nix
@@ -1,36 +1,38 @@
-{ lib
-, buildPythonPackage
-, fetchPypi
-, setuptools
-, attrs
-, asn1crypto
-, cryptodatahub
-, python-dateutil
-, urllib3
-, pytestCheckHook
+{
+  lib,
+  asn1crypto,
+  attrs,
+  buildPythonPackage,
+  cryptodatahub,
+  fetchPypi,
+  pytestCheckHook,
+  python-dateutil,
+  pythonOlder,
+  setuptools,
+  unittestCheckHook,
+  urllib3,
 }:
 
 buildPythonPackage rec {
   pname = "cryptoparser";
-  version = "0.12.3";
+  version = "0.12.4";
   pyproject = true;
 
+  disabled = pythonOlder "3.7";
+
   src = fetchPypi {
-    pname = "CryptoParser";
-    inherit version;
-    hash = "sha256-1A0VEpUPsYtEu2aT+ldt/Z/PtV8lvD+9jSx75yGB6Ao=";
+    inherit pname version;
+    hash = "sha256-y5rpc0tn5JJQr4xdRUJbsq8XT/YqqJqZr3CXjqN7k7I=";
   };
 
   postPatch = ''
     substituteInPlace requirements.txt  \
-      --replace-warn "attrs>=20.3.0,<22.0.1" "attrs>=20.3.0"
+      --replace-fail "attrs>=20.3.0,<22.0.1" "attrs>=20.3.0"
   '';
 
-  nativeBuildInputs = [
-    setuptools
-  ];
+  build-system = [ setuptools ];
 
-  propagatedBuildInputs = [
+  dependencies = [
     asn1crypto
     attrs
     cryptodatahub
@@ -38,9 +40,7 @@ buildPythonPackage rec {
     urllib3
   ];
 
-  pythonImportsCheck = [
-    "cryptoparser"
-  ];
+  pythonImportsCheck = [ "cryptoparser" ];
 
   meta = with lib; {
     description = "Security protocol parser and generator";
diff --git a/pkgs/development/python-modules/css-inline/Cargo.lock b/pkgs/development/python-modules/css-inline/Cargo.lock
index 429622a63cb8..cbd1794e6994 100644
--- a/pkgs/development/python-modules/css-inline/Cargo.lock
+++ b/pkgs/development/python-modules/css-inline/Cargo.lock
@@ -18,6 +18,24 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "f26201604c87b1e01bd3d98f8d5d9a8fcbb815e8cedb41ffccbeb4bf593a35fe"
 
 [[package]]
+name = "ahash"
+version = "0.8.11"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "e89da841a80418a9b391ebaea17f5c112ffaaa96f621d2c285b5174da76b9011"
+dependencies = [
+ "cfg-if",
+ "once_cell",
+ "version_check",
+ "zerocopy",
+]
+
+[[package]]
+name = "allocator-api2"
+version = "0.2.18"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "5c6cb57a04249c6480766f7f7cef5467412af1490f8d1e243141daddada3264f"
+
+[[package]]
 name = "android-tzdata"
 version = "0.1.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -34,15 +52,15 @@ dependencies = [
 
 [[package]]
 name = "autocfg"
-version = "1.1.0"
+version = "1.3.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d468802bab17cbc0cc575e9b053f41e72aa36bfa6b7f55e3529ffa43161b97fa"
+checksum = "0c4b4d0bd25bd0b74681c0ad21497610ce1b7c91b1022cd21c80c6fbdd9476b0"
 
 [[package]]
 name = "backtrace"
-version = "0.3.69"
+version = "0.3.71"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2089b7e3f35b9dd2d0ed921ead4f6d318c27680d4a5bd167b3ee120edb105837"
+checksum = "26b05800d2e817c8b3b4b54abd461726265fa9789ae34330622f2db9ee696f9d"
 dependencies = [
  "addr2line",
  "cc",
@@ -55,27 +73,21 @@ dependencies = [
 
 [[package]]
 name = "base64"
-version = "0.21.7"
+version = "0.22.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9d297deb1925b89f2ccc13d7635fa0714f12c87adce1c75356b39ca9b7178567"
+checksum = "72b3254f16251a8381aa12e40e3c4d2f0199f8c6508fbecb9d91f575e0fbb8c6"
 
 [[package]]
 name = "bitflags"
-version = "1.3.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a"
-
-[[package]]
-name = "bitflags"
-version = "2.4.2"
+version = "2.5.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ed570934406eb16438a4e976b1b4500774099c13b8cb96eec99f620f05090ddf"
+checksum = "cf4b9d6a944f767f8e5e0db018570623c85f3d925ac718db4e06d0187adb21c1"
 
 [[package]]
 name = "built"
-version = "0.7.1"
+version = "0.7.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "38d17f4d6e4dc36d1a02fbedc2753a096848e7c1b0772f7654eab8e2c927dd53"
+checksum = "41bfbdb21256b87a8b5e80fab81a8eed158178e812fd7ba451907518b2742f16"
 dependencies = [
  "cargo-lock",
  "chrono",
@@ -83,9 +95,9 @@ dependencies = [
 
 [[package]]
 name = "bumpalo"
-version = "3.15.0"
+version = "3.16.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d32a994c2b3ca201d9b263612a374263f05e7adde37c4707f693dcd375076d1f"
+checksum = "79296716171880943b8470b5f8d03aa55eb2e645a4874bdbb28adb49162e012c"
 
 [[package]]
 name = "byteorder"
@@ -95,9 +107,9 @@ checksum = "1fd0f2584146f6f2ef48085050886acf353beff7305ebd1ae69500e27c67f64b"
 
 [[package]]
 name = "bytes"
-version = "1.5.0"
+version = "1.6.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a2bd12c1caf447e69cd4528f47f94d203fd2582878ecb9e9465484c4148a8223"
+checksum = "514de17de45fdb8dc022b1a7975556c53c86f9f0aa5f534b98977b171857c2c9"
 
 [[package]]
 name = "cargo-lock"
@@ -113,12 +125,9 @@ dependencies = [
 
 [[package]]
 name = "cc"
-version = "1.0.83"
+version = "1.0.96"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f1174fb0b6ec23863f8b971027804a42614e347eafb0a95bf0b12cdae21fc4d0"
-dependencies = [
- "libc",
-]
+checksum = "065a29261d53ba54260972629f9ca6bffa69bac13cd1fed61420f7fa68b9f8bd"
 
 [[package]]
 name = "cfg-if"
@@ -128,24 +137,14 @@ checksum = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd"
 
 [[package]]
 name = "chrono"
-version = "0.4.34"
+version = "0.4.38"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5bc015644b92d5890fab7489e49d21f879d5c990186827d42ec511919404f38b"
+checksum = "a21f936df1771bf62b77f047b726c4625ff2e8aa607c01ec06e5a05bd8463401"
 dependencies = [
  "android-tzdata",
  "iana-time-zone",
  "num-traits",
- "windows-targets 0.52.0",
-]
-
-[[package]]
-name = "core-foundation"
-version = "0.9.4"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "91e195e091a93c46f7102ec7818a2aa394e1e1771c3ab4825963fa03e45afb8f"
-dependencies = [
- "core-foundation-sys",
- "libc",
+ "windows-targets 0.52.5",
 ]
 
 [[package]]
@@ -181,11 +180,12 @@ checksum = "248e3bacc7dc6baa3b21e405ee045c3047101a49145e7e9eca583ab4c2ca5345"
 
 [[package]]
 name = "css-inline"
-version = "0.13.0"
+version = "0.14.1"
 dependencies = [
  "cssparser",
  "html5ever",
  "indexmap",
+ "lru",
  "reqwest",
  "rustc-hash",
  "selectors",
@@ -195,7 +195,7 @@ dependencies = [
 
 [[package]]
 name = "css-inline-python"
-version = "0.13.0"
+version = "0.14.1"
 dependencies = [
  "built",
  "css-inline",
@@ -225,7 +225,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "13b588ba4ac1a99f7f2964d24b3d896ddc6bf847ee3855dbd4366f058cfcd331"
 dependencies = [
  "quote",
- "syn 2.0.49",
+ "syn 2.0.60",
 ]
 
 [[package]]
@@ -256,18 +256,9 @@ dependencies = [
 
 [[package]]
 name = "either"
-version = "1.10.0"
+version = "1.11.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "11157ac094ffbdde99aa67b23417ebdd801842852b500e395a45a9c0aac03e4a"
-
-[[package]]
-name = "encoding_rs"
-version = "0.8.33"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7268b386296a025e474d5140678f75d6de9493ae55a5d709eeb9dd08149945e1"
-dependencies = [
- "cfg-if",
-]
+checksum = "a47c1c47d2f5964e29c61246e81db715514cd532db6b5116a25ea3c03d6780a2"
 
 [[package]]
 name = "equivalent"
@@ -307,6 +298,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "eac8f7d7865dcb88bd4373ab671c8cf4508703796caa2b1985a9ca867b3fcb78"
 dependencies = [
  "futures-core",
+ "futures-sink",
 ]
 
 [[package]]
@@ -341,6 +333,7 @@ checksum = "3d6401deb83407ab3da39eba7e33987a73c3df0c82b4bb5813ee871c19c41d48"
 dependencies = [
  "futures-core",
  "futures-io",
+ "futures-sink",
  "futures-task",
  "memchr",
  "pin-project-lite",
@@ -359,9 +352,9 @@ dependencies = [
 
 [[package]]
 name = "getrandom"
-version = "0.2.12"
+version = "0.2.14"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "190092ea657667030ac6a35e305e62fc4dd69fd98ac98631e5d3a2b1575a12b5"
+checksum = "94b22e06ecb0110981051723910cbf0b5f5e09a2062dd7663334ee79a9d1286c"
 dependencies = [
  "cfg-if",
  "libc",
@@ -375,31 +368,16 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "4271d37baee1b8c7e4b708028c57d816cf9d2434acb33a549475f78c181f6253"
 
 [[package]]
-name = "h2"
-version = "0.3.24"
+name = "hashbrown"
+version = "0.14.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "bb2c4422095b67ee78da96fbb51a4cc413b3b25883c7717ff7ca1ab31022c9c9"
+checksum = "e5274423e17b7c9fc20b6e7e208532f9b19825d82dfd615708b70edd83df41f1"
 dependencies = [
- "bytes",
- "fnv",
- "futures-core",
- "futures-sink",
- "futures-util",
- "http",
- "indexmap",
- "slab",
- "tokio",
- "tokio-util",
- "tracing",
+ "ahash",
+ "allocator-api2",
 ]
 
 [[package]]
-name = "hashbrown"
-version = "0.14.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "290f1a1d9242c78d09ce40a5e87e7554ee637af1351968159f4952f028f75604"
-
-[[package]]
 name = "heck"
 version = "0.4.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -407,29 +385,29 @@ checksum = "95505c38b4572b2d910cecb0281560f54b440a19336cbbcb27bf6ce6adc6f5a8"
 
 [[package]]
 name = "hermit-abi"
-version = "0.3.6"
+version = "0.3.9"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "bd5256b483761cd23699d0da46cc6fd2ee3be420bbe6d020ae4a091e70b7e9fd"
+checksum = "d231dfb89cfffdbc30e7fc41579ed6066ad03abda9e567ccafae602b97ec5024"
 
 [[package]]
 name = "html5ever"
-version = "0.26.0"
+version = "0.27.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "bea68cab48b8459f17cf1c944c67ddc572d272d9f2b274140f223ecb1da4a3b7"
+checksum = "c13771afe0e6e846f1e67d038d4cb29998a6779f93c809212e4e9c32efd244d4"
 dependencies = [
  "log",
  "mac",
  "markup5ever",
  "proc-macro2",
  "quote",
- "syn 1.0.109",
+ "syn 2.0.60",
 ]
 
 [[package]]
 name = "http"
-version = "0.2.11"
+version = "1.1.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8947b1a6fad4393052c7ba1f4cd97bed3e953a95c79c92ad9b051a04611d9fbb"
+checksum = "21b9ddb458710bc376481b842f5da65cdf31522de232c1ca8146abce2a358258"
 dependencies = [
  "bytes",
  "fnv",
@@ -438,12 +416,24 @@ dependencies = [
 
 [[package]]
 name = "http-body"
-version = "0.4.6"
+version = "1.0.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7ceab25649e9960c0311ea418d17bee82c0dcec1bd053b5f9a66e265a693bed2"
+checksum = "1cac85db508abc24a2e48553ba12a996e87244a0395ce011e62b37158745d643"
 dependencies = [
  "bytes",
  "http",
+]
+
+[[package]]
+name = "http-body-util"
+version = "0.1.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "0475f8b2ac86659c21b64320d5d653f9efe42acd2a4e560073ec61a155a34f1d"
+dependencies = [
+ "bytes",
+ "futures-core",
+ "http",
+ "http-body",
  "pin-project-lite",
 ]
 
@@ -454,47 +444,59 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "d897f394bad6a705d5f4104762e116a75639e470d80901eed05a860a95cb1904"
 
 [[package]]
-name = "httpdate"
-version = "1.0.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "df3b46402a9d5adb4c86a0cf463f42e19994e3ee891101b1841f30a545cb49a9"
-
-[[package]]
 name = "hyper"
-version = "0.14.28"
+version = "1.3.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "bf96e135eb83a2a8ddf766e426a841d8ddd7449d5f00d34ea02b41d2f19eef80"
+checksum = "fe575dd17d0862a9a33781c8c4696a55c320909004a67a00fb286ba8b1bc496d"
 dependencies = [
  "bytes",
  "futures-channel",
- "futures-core",
  "futures-util",
- "h2",
  "http",
  "http-body",
  "httparse",
- "httpdate",
  "itoa",
  "pin-project-lite",
- "socket2",
+ "smallvec",
  "tokio",
- "tower-service",
- "tracing",
  "want",
 ]
 
 [[package]]
 name = "hyper-rustls"
-version = "0.24.2"
+version = "0.26.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ec3efd23720e2049821a693cbc7e65ea87c72f1c58ff2f9522ff332b1491e590"
+checksum = "a0bea761b46ae2b24eb4aef630d8d1c398157b6fc29e6350ecf090a0b70c952c"
 dependencies = [
  "futures-util",
  "http",
  "hyper",
+ "hyper-util",
  "rustls",
+ "rustls-pki-types",
  "tokio",
  "tokio-rustls",
+ "tower-service",
+]
+
+[[package]]
+name = "hyper-util"
+version = "0.1.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "ca38ef113da30126bbff9cd1705f9273e15d45498615d138b0c20279ac7a76aa"
+dependencies = [
+ "bytes",
+ "futures-channel",
+ "futures-util",
+ "http",
+ "http-body",
+ "hyper",
+ "pin-project-lite",
+ "socket2",
+ "tokio",
+ "tower",
+ "tower-service",
+ "tracing",
 ]
 
 [[package]]
@@ -532,9 +534,9 @@ dependencies = [
 
 [[package]]
 name = "indexmap"
-version = "2.2.3"
+version = "2.2.6"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "233cf39063f058ea2caae4091bf4a3ef70a653afbc026f5c4a4135d114e3c177"
+checksum = "168fb715dda47215e360912c096649d23d58bf392ac62f73919e831745e40f26"
 dependencies = [
  "equivalent",
  "hashbrown",
@@ -542,9 +544,9 @@ dependencies = [
 
 [[package]]
 name = "indoc"
-version = "2.0.4"
+version = "2.0.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1e186cfbae8084e513daff4240b4797e342f988cecda4fb6c939150f96315fd8"
+checksum = "b248f5224d1d606005e02c97f5aa4e88eeb230488bcc03bc9ca4d7991399f2b5"
 
 [[package]]
 name = "ipnet"
@@ -554,30 +556,30 @@ checksum = "8f518f335dce6725a761382244631d86cf0ccb2863413590b31338feb467f9c3"
 
 [[package]]
 name = "itoa"
-version = "1.0.10"
+version = "1.0.11"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b1a46d1a171d865aa5f83f92695765caa047a9b4cbae2cbf37dbd613a793fd4c"
+checksum = "49f1f14873335454500d59611f1cf4a4b0f786f9ac11f4312a78e4cf2566695b"
 
 [[package]]
 name = "js-sys"
-version = "0.3.68"
+version = "0.3.69"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "406cda4b368d531c842222cf9d2600a9a4acce8d29423695379c6868a143a9ee"
+checksum = "29c15563dc2726973df627357ce0c9ddddbea194836909d655df6a75d2cf296d"
 dependencies = [
  "wasm-bindgen",
 ]
 
 [[package]]
 name = "libc"
-version = "0.2.153"
+version = "0.2.154"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9c198f91728a82281a64e1f4f9eeb25d82cb32a5de251c6bd1b5154d63a8e7bd"
+checksum = "ae743338b92ff9146ce83992f766a31066a91a8c84a45e0e9f21e7cf6de6d346"
 
 [[package]]
 name = "lock_api"
-version = "0.4.11"
+version = "0.4.12"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3c168f8615b12bc01f9c17e2eb0cc07dcae1940121185446edc3744920e8ef45"
+checksum = "07af8b9cdd281b7915f413fa73f29ebd5d55d0d3f0155584dade1ff18cea1b17"
 dependencies = [
  "autocfg",
  "scopeguard",
@@ -585,9 +587,18 @@ dependencies = [
 
 [[package]]
 name = "log"
-version = "0.4.20"
+version = "0.4.21"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b5e6163cb8c49088c2c36f57875e58ccd8c87c7427f7fbd50ea6710b2f3f2e8f"
+checksum = "90ed8c1e510134f979dbc4f070f87d4313098b704861a105fe34231c70a3901c"
+
+[[package]]
+name = "lru"
+version = "0.12.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "d3262e75e648fce39813cb56ac41f3c3e3f65217ebf3844d818d1f9398cfb0dc"
+dependencies = [
+ "hashbrown",
+]
 
 [[package]]
 name = "mac"
@@ -597,13 +608,13 @@ checksum = "c41e0c4fef86961ac6d6f8a82609f55f31b05e4fce149ac5710e439df7619ba4"
 
 [[package]]
 name = "markup5ever"
-version = "0.11.0"
+version = "0.12.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7a2629bb1404f3d34c2e921f21fd34ba00b206124c81f65c50b43b6aaefeb016"
+checksum = "16ce3abbeba692c8b8441d036ef91aea6df8da2c6b6e21c7e14d3c18e526be45"
 dependencies = [
  "log",
- "phf 0.10.1",
- "phf_codegen",
+ "phf 0.11.2",
+ "phf_codegen 0.11.2",
  "string_cache",
  "string_cache_codegen",
  "tendril",
@@ -611,15 +622,15 @@ dependencies = [
 
 [[package]]
 name = "memchr"
-version = "2.7.1"
+version = "2.7.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "523dc4f511e55ab87b694dc30d0f820d60906ef06413f93d4d7a1385599cc149"
+checksum = "6c8640c5d730cb13ebd907d8d04b52f55ac9a2eec55b440c8892f40d56c76c1d"
 
 [[package]]
 name = "memoffset"
-version = "0.9.0"
+version = "0.9.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5a634b1c61a95585bd15607c6ab0c4e5b226e695ff2800ba0cdccddf208c406c"
+checksum = "488016bfae457b036d996092f6cb448677611ce4449e970ceaf42695203f218a"
 dependencies = [
  "autocfg",
 ]
@@ -641,26 +652,26 @@ dependencies = [
 
 [[package]]
 name = "mio"
-version = "0.8.10"
+version = "0.8.11"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8f3d0b296e374a4e6f3c7b0a1f5a51d748a0d34c85e7dc48fc3fa9a87657fe09"
+checksum = "a4a650543ca06a924e8b371db273b2756685faae30f8487da1b56505a8f78b0c"
 dependencies = [
  "libc",
  "wasi",
- "windows-sys",
+ "windows-sys 0.48.0",
 ]
 
 [[package]]
 name = "new_debug_unreachable"
-version = "1.0.4"
+version = "1.0.6"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e4a24736216ec316047a1fc4252e27dabb04218aa4a3f37c6e7ddbf1f9782b54"
+checksum = "650eef8c711430f1a879fdd01d4745a7deea475becfb90269c06775983bbf086"
 
 [[package]]
 name = "num-traits"
-version = "0.2.18"
+version = "0.2.19"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "da0df0e5185db44f69b44f26786fe401b6c293d1907744beaa7fa62b2e5a517a"
+checksum = "071dfc062690e90b734c0b2273ce72ad0ffa95f0c74596bc250dcfd960262841"
 dependencies = [
  "autocfg",
 ]
@@ -692,9 +703,9 @@ checksum = "3fdb12b2476b595f9358c5161aa467c2438859caa136dec86c26fdd2efe17b92"
 
 [[package]]
 name = "parking_lot"
-version = "0.12.1"
+version = "0.12.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3742b2c103b9f06bc9fff0a37ff4912935851bee6d36f3c02bcc755bcfec228f"
+checksum = "7e4af0ca4f6caed20e900d564c242b8e5d4903fdacf31d3daf527b66fe6f42fb"
 dependencies = [
  "lock_api",
  "parking_lot_core",
@@ -702,15 +713,15 @@ dependencies = [
 
 [[package]]
 name = "parking_lot_core"
-version = "0.9.9"
+version = "0.9.10"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4c42a9226546d68acdd9c0a280d17ce19bfe27a46bf68784e4066115788d008e"
+checksum = "1e401f977ab385c9e4e3ab30627d6f26d00e2c73eef317493c4ec6d468726cf8"
 dependencies = [
  "cfg-if",
  "libc",
  "redox_syscall",
  "smallvec",
- "windows-targets 0.48.5",
+ "windows-targets 0.52.5",
 ]
 
 [[package]]
@@ -749,6 +760,16 @@ dependencies = [
 ]
 
 [[package]]
+name = "phf_codegen"
+version = "0.11.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "e8d39688d359e6b34654d328e262234662d16cc0f60ec8dcbe5e718709342a5a"
+dependencies = [
+ "phf_generator 0.11.2",
+ "phf_shared 0.11.2",
+]
+
+[[package]]
 name = "phf_generator"
 version = "0.10.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -778,7 +799,7 @@ dependencies = [
  "phf_shared 0.11.2",
  "proc-macro2",
  "quote",
- "syn 2.0.49",
+ "syn 2.0.60",
 ]
 
 [[package]]
@@ -800,10 +821,30 @@ dependencies = [
 ]
 
 [[package]]
+name = "pin-project"
+version = "1.1.5"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "b6bf43b791c5b9e34c3d182969b4abb522f9343702850a2e57f460d00d09b4b3"
+dependencies = [
+ "pin-project-internal",
+]
+
+[[package]]
+name = "pin-project-internal"
+version = "1.1.5"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "2f38a4412a78282e09a2cf38d195ea5420d15ba0602cb375210efbc877243965"
+dependencies = [
+ "proc-macro2",
+ "quote",
+ "syn 2.0.60",
+]
+
+[[package]]
 name = "pin-project-lite"
-version = "0.2.13"
+version = "0.2.14"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8afb450f006bf6385ca15ef45d71d2288452bc3683ce2e2cacc0d18e4be60b58"
+checksum = "bda66fc9667c18cb2758a2ac84d1167245054bcf85d5d1aaa6923f45801bdd02"
 
 [[package]]
 name = "pin-utils"
@@ -812,6 +853,12 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "8b870d8c151b6f2fb93e84a13146138f05d02ed11c7e7c54f8826aaaf7c9f184"
 
 [[package]]
+name = "portable-atomic"
+version = "1.6.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "7170ef9988bc169ba16dd36a7fa041e5c4cbeb6a35b76d4c03daded371eae7c0"
+
+[[package]]
 name = "ppv-lite86"
 version = "0.2.17"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -825,24 +872,25 @@ checksum = "925383efa346730478fb4838dbe9137d2a47675ad789c546d150a6e1dd4ab31c"
 
 [[package]]
 name = "proc-macro2"
-version = "1.0.78"
+version = "1.0.81"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e2422ad645d89c99f8f3e6b88a9fdeca7fabeac836b1002371c4367c8f984aae"
+checksum = "3d1597b0c024618f09a9c3b8655b7e430397a36d23fdafec26d6965e9eec3eba"
 dependencies = [
  "unicode-ident",
 ]
 
 [[package]]
 name = "pyo3"
-version = "0.20.2"
+version = "0.21.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9a89dc7a5850d0e983be1ec2a463a171d20990487c3cfcd68b5363f1ee3d6fe0"
+checksum = "a5e00b96a521718e08e03b1a622f01c8a8deb50719335de3f60b3b3950f069d8"
 dependencies = [
  "cfg-if",
  "indoc",
  "libc",
  "memoffset",
  "parking_lot",
+ "portable-atomic",
  "pyo3-build-config",
  "pyo3-ffi",
  "pyo3-macros",
@@ -851,9 +899,9 @@ dependencies = [
 
 [[package]]
 name = "pyo3-build-config"
-version = "0.20.2"
+version = "0.21.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "07426f0d8fe5a601f26293f300afd1a7b1ed5e78b2a705870c5f30893c5163be"
+checksum = "7883df5835fafdad87c0d888b266c8ec0f4c9ca48a5bed6bbb592e8dedee1b50"
 dependencies = [
  "once_cell",
  "target-lexicon",
@@ -861,15 +909,15 @@ dependencies = [
 
 [[package]]
 name = "pyo3-built"
-version = "0.4.7"
+version = "0.5.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "be6d574e0f8cab2cdd1eeeb640cbf845c974519fa9e9b62fa9c08ecece0ca5de"
+checksum = "35ee655adc94166665a1d714b439e27857dd199b947076891d6a17d32d396cde"
 
 [[package]]
 name = "pyo3-ffi"
-version = "0.20.2"
+version = "0.21.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "dbb7dec17e17766b46bca4f1a4215a85006b4c2ecde122076c562dd058da6cf1"
+checksum = "01be5843dc60b916ab4dad1dca6d20b9b4e6ddc8e15f50c47fe6d85f1fb97403"
 dependencies = [
  "libc",
  "pyo3-build-config",
@@ -877,33 +925,34 @@ dependencies = [
 
 [[package]]
 name = "pyo3-macros"
-version = "0.20.2"
+version = "0.21.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "05f738b4e40d50b5711957f142878cfa0f28e054aa0ebdfc3fd137a843f74ed3"
+checksum = "77b34069fc0682e11b31dbd10321cbf94808394c56fd996796ce45217dfac53c"
 dependencies = [
  "proc-macro2",
  "pyo3-macros-backend",
  "quote",
- "syn 2.0.49",
+ "syn 2.0.60",
 ]
 
 [[package]]
 name = "pyo3-macros-backend"
-version = "0.20.2"
+version = "0.21.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0fc910d4851847827daf9d6cdd4a823fbdaab5b8818325c5e97a86da79e8881f"
+checksum = "08260721f32db5e1a5beae69a55553f56b99bd0e1c3e6e0a5e8851a9d0f5a85c"
 dependencies = [
  "heck",
  "proc-macro2",
+ "pyo3-build-config",
  "quote",
- "syn 2.0.49",
+ "syn 2.0.60",
 ]
 
 [[package]]
 name = "quote"
-version = "1.0.35"
+version = "1.0.36"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "291ec9ab5efd934aaf503a6466c5d5251535d108ee747472c3977cc5acc868ef"
+checksum = "0fa76aaf39101c457836aec0ce2316dbdc3ab723cdda1c6bd4e6ad4208acaca7"
 dependencies = [
  "proc-macro2",
 ]
@@ -940,9 +989,9 @@ dependencies = [
 
 [[package]]
 name = "rayon"
-version = "1.8.1"
+version = "1.10.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "fa7237101a77a10773db45d62004a272517633fbcc3df19d96455ede1122e051"
+checksum = "b418a60154510ca1a002a752ca9714984e21e4241e804d32555251faf8b78ffa"
 dependencies = [
  "either",
  "rayon-core",
@@ -960,29 +1009,30 @@ dependencies = [
 
 [[package]]
 name = "redox_syscall"
-version = "0.4.1"
+version = "0.5.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4722d768eff46b75989dd134e5c353f0d6296e5aaa3132e776cbdb56be7731aa"
+checksum = "469052894dcb553421e483e4209ee581a45100d31b4018de03e5a7ad86374a7e"
 dependencies = [
- "bitflags 1.3.2",
+ "bitflags",
 ]
 
 [[package]]
 name = "reqwest"
-version = "0.11.24"
+version = "0.12.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c6920094eb85afde5e4a138be3f2de8bbdf28000f0029e72c45025a56b042251"
+checksum = "566cafdd92868e0939d3fb961bd0dc25fcfaaed179291093b3d43e6b3150ea10"
 dependencies = [
  "base64",
  "bytes",
- "encoding_rs",
+ "futures-channel",
  "futures-core",
  "futures-util",
- "h2",
  "http",
  "http-body",
+ "http-body-util",
  "hyper",
  "hyper-rustls",
+ "hyper-util",
  "ipnet",
  "js-sys",
  "log",
@@ -992,11 +1042,11 @@ dependencies = [
  "pin-project-lite",
  "rustls",
  "rustls-pemfile",
+ "rustls-pki-types",
  "serde",
  "serde_json",
  "serde_urlencoded",
  "sync_wrapper",
- "system-configuration",
  "tokio",
  "tokio-rustls",
  "tower-service",
@@ -1010,16 +1060,17 @@ dependencies = [
 
 [[package]]
 name = "ring"
-version = "0.17.7"
+version = "0.17.8"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "688c63d65483050968b2a8937f7995f443e27041a0f7700aa59b0822aedebb74"
+checksum = "c17fa4cb658e3583423e915b9f3acc01cceaee1860e33d59ebae66adc3a2dc0d"
 dependencies = [
  "cc",
+ "cfg-if",
  "getrandom",
  "libc",
  "spin",
  "untrusted",
- "windows-sys",
+ "windows-sys 0.52.0",
 ]
 
 [[package]]
@@ -1036,40 +1087,50 @@ checksum = "08d43f7aa6b08d49f382cde6a7982047c3426db949b1424bc4b7ec9ae12c6ce2"
 
 [[package]]
 name = "rustls"
-version = "0.21.10"
+version = "0.22.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f9d5a6813c0759e4609cd494e8e725babae6a2ca7b62a5536a13daaec6fcb7ba"
+checksum = "bf4ef73721ac7bcd79b2b315da7779d8fc09718c6b3d2d1b2d94850eb8c18432"
 dependencies = [
  "log",
  "ring",
+ "rustls-pki-types",
  "rustls-webpki",
- "sct",
+ "subtle",
+ "zeroize",
 ]
 
 [[package]]
 name = "rustls-pemfile"
-version = "1.0.4"
+version = "2.1.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1c74cae0a4cf6ccbbf5f359f08efdf8ee7e1dc532573bf0db71968cb56b1448c"
+checksum = "29993a25686778eb88d4189742cd713c9bce943bc54251a33509dc63cbacf73d"
 dependencies = [
  "base64",
+ "rustls-pki-types",
 ]
 
 [[package]]
+name = "rustls-pki-types"
+version = "1.5.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "beb461507cee2c2ff151784c52762cf4d9ff6a61f3e80968600ed24fa837fa54"
+
+[[package]]
 name = "rustls-webpki"
-version = "0.101.7"
+version = "0.102.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8b6275d1ee7a1cd780b64aca7726599a1dbc893b1e64144529e55c3c2f745765"
+checksum = "f3bce581c0dd41bce533ce695a1437fa16a7ab5ac3ccfa99fe1a620a7885eabf"
 dependencies = [
  "ring",
+ "rustls-pki-types",
  "untrusted",
 ]
 
 [[package]]
 name = "ryu"
-version = "1.0.16"
+version = "1.0.17"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f98d2aa92eebf49b69786be48e4477826b256916e84a57ff2a4f21923b48eb4c"
+checksum = "e86697c916019a8588c99b5fac3cead74ec0b4b819707a682fd4d23fa0ce1ba1"
 
 [[package]]
 name = "scopeguard"
@@ -1078,29 +1139,19 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "94143f37725109f92c262ed2cf5e59bce7498c01bcc1502d7b9afe439a4e9f49"
 
 [[package]]
-name = "sct"
-version = "0.7.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "da046153aa2352493d6cb7da4b6e5c0c057d8a1d0a9aa8560baffdd945acd414"
-dependencies = [
- "ring",
- "untrusted",
-]
-
-[[package]]
 name = "selectors"
 version = "0.25.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "4eb30575f3638fc8f6815f448d50cb1a2e255b0897985c8c59f4d37b72a07b06"
 dependencies = [
- "bitflags 2.4.2",
+ "bitflags",
  "cssparser",
  "derive_more",
  "fxhash",
  "log",
  "new_debug_unreachable",
  "phf 0.10.1",
- "phf_codegen",
+ "phf_codegen 0.10.0",
  "precomputed-hash",
  "servo_arc",
  "smallvec",
@@ -1108,38 +1159,38 @@ dependencies = [
 
 [[package]]
 name = "semver"
-version = "1.0.21"
+version = "1.0.22"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b97ed7a9823b74f99c7742f5336af7be5ecd3eeafcb1507d1fa93347b1d589b0"
+checksum = "92d43fe69e652f3df9bdc2b85b2854a0825b86e4fb76bc44d945137d053639ca"
 dependencies = [
  "serde",
 ]
 
 [[package]]
 name = "serde"
-version = "1.0.196"
+version = "1.0.200"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "870026e60fa08c69f064aa766c10f10b1d62db9ccd4d0abb206472bee0ce3b32"
+checksum = "ddc6f9cc94d67c0e21aaf7eda3a010fd3af78ebf6e096aa6e2e13c79749cce4f"
 dependencies = [
  "serde_derive",
 ]
 
 [[package]]
 name = "serde_derive"
-version = "1.0.196"
+version = "1.0.200"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "33c85360c95e7d137454dc81d9a4ed2b8efd8fbe19cee57357b32b9771fccb67"
+checksum = "856f046b9400cee3c8c94ed572ecdb752444c24528c035cd35882aad6f492bcb"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.49",
+ "syn 2.0.60",
 ]
 
 [[package]]
 name = "serde_json"
-version = "1.0.113"
+version = "1.0.116"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "69801b70b1c3dac963ecb03a364ba0ceda9cf60c71cfe475e99864759c8b8a79"
+checksum = "3e17db7126d17feb94eb3fad46bf1a96b034e8aacbc2e775fe81505f8b0b2813"
 dependencies = [
  "itoa",
  "ryu",
@@ -1193,18 +1244,18 @@ dependencies = [
 
 [[package]]
 name = "smallvec"
-version = "1.13.1"
+version = "1.13.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e6ecd384b10a64542d77071bd64bd7b231f4ed5940fba55e98c3de13824cf3d7"
+checksum = "3c5e1a9a646d36c3599cd173a41282daf47c44583ad367b8e6837255952e5c67"
 
 [[package]]
 name = "socket2"
-version = "0.5.5"
+version = "0.5.7"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7b5fac59a5cb5dd637972e5fca70daf0523c9067fcdc4842f053dae04a18f8e9"
+checksum = "ce305eb0b4296696835b71df73eb912e0f1ffd2556a501fcede6e0c50349191c"
 dependencies = [
  "libc",
- "windows-sys",
+ "windows-sys 0.52.0",
 ]
 
 [[package]]
@@ -1246,6 +1297,12 @@ dependencies = [
 ]
 
 [[package]]
+name = "subtle"
+version = "2.5.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "81cdd64d312baedb58e21336b31bc043b77e01cc99033ce76ef539f78e965ebc"
+
+[[package]]
 name = "syn"
 version = "1.0.109"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -1258,9 +1315,9 @@ dependencies = [
 
 [[package]]
 name = "syn"
-version = "2.0.49"
+version = "2.0.60"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "915aea9e586f80826ee59f8453c1101f9d1c4b3964cd2460185ee8e299ada496"
+checksum = "909518bc7b1c9b779f1bbf07f2929d35af9f0f37e47c6e9ef7f9dddc1e1821f3"
 dependencies = [
  "proc-macro2",
  "quote",
@@ -1274,31 +1331,10 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "2047c6ded9c721764247e62cd3b03c09ffc529b2ba5b10ec482ae507a4a70160"
 
 [[package]]
-name = "system-configuration"
-version = "0.5.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ba3a3adc5c275d719af8cb4272ea1c4a6d668a777f37e115f6d11ddbc1c8e0e7"
-dependencies = [
- "bitflags 1.3.2",
- "core-foundation",
- "system-configuration-sys",
-]
-
-[[package]]
-name = "system-configuration-sys"
-version = "0.5.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a75fb188eb626b924683e3b95e3a48e63551fcfb51949de2f06a9d91dbee93c9"
-dependencies = [
- "core-foundation-sys",
- "libc",
-]
-
-[[package]]
 name = "target-lexicon"
-version = "0.12.13"
+version = "0.12.14"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "69758bda2e78f098e4ccb393021a0963bb3442eac05f135c30f61b7370bbafae"
+checksum = "e1fc403891a21bcfb7c37834ba66a547a8f402146eba7265b5a6d88059c9ff2f"
 
 [[package]]
 name = "tendril"
@@ -1328,9 +1364,9 @@ checksum = "1f3ccbac311fea05f86f61904b462b55fb3df8837a366dfc601a0161d0532f20"
 
 [[package]]
 name = "tokio"
-version = "1.36.0"
+version = "1.37.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "61285f6515fa018fb2d1e46eb21223fff441ee8db5d0f1435e8ab4f5cdb80931"
+checksum = "1adbebffeca75fcfd058afa480fb6c0b81e165a0323f9c9d39c9697e37c46787"
 dependencies = [
  "backtrace",
  "bytes",
@@ -1339,34 +1375,21 @@ dependencies = [
  "num_cpus",
  "pin-project-lite",
  "socket2",
- "windows-sys",
+ "windows-sys 0.48.0",
 ]
 
 [[package]]
 name = "tokio-rustls"
-version = "0.24.1"
+version = "0.25.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c28327cf380ac148141087fbfb9de9d7bd4e84ab5d2c28fbc911d753de8a7081"
+checksum = "775e0c0f0adb3a2f22a00c4745d728b479985fc15ee7ca6a2608388c5569860f"
 dependencies = [
  "rustls",
+ "rustls-pki-types",
  "tokio",
 ]
 
 [[package]]
-name = "tokio-util"
-version = "0.7.10"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5419f34732d9eb6ee4c3578b7989078579b7f039cbbb9ca2c4da015749371e15"
-dependencies = [
- "bytes",
- "futures-core",
- "futures-sink",
- "pin-project-lite",
- "tokio",
- "tracing",
-]
-
-[[package]]
 name = "toml"
 version = "0.7.8"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -1401,6 +1424,28 @@ dependencies = [
 ]
 
 [[package]]
+name = "tower"
+version = "0.4.13"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "b8fa9be0de6cf49e536ce1851f987bd21a43b771b09473c3549a6c853db37c1c"
+dependencies = [
+ "futures-core",
+ "futures-util",
+ "pin-project",
+ "pin-project-lite",
+ "tokio",
+ "tower-layer",
+ "tower-service",
+ "tracing",
+]
+
+[[package]]
+name = "tower-layer"
+version = "0.3.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "c20c8dbed6283a09604c3e69b4b7eeb54e298b8a600d4d5ecb5ad39de609f1d0"
+
+[[package]]
 name = "tower-service"
 version = "0.3.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -1412,6 +1457,7 @@ version = "0.1.40"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "c3523ab5a71916ccf420eebdf5521fcef02141234bbc0b8a49f2fdc4544364ef"
 dependencies = [
+ "log",
  "pin-project-lite",
  "tracing-core",
 ]
@@ -1445,9 +1491,9 @@ checksum = "3354b9ac3fae1ff6755cb6db53683adb661634f67557942dea4facebec0fee4b"
 
 [[package]]
 name = "unicode-normalization"
-version = "0.1.22"
+version = "0.1.23"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5c5713f0fc4b5db668a2ac63cdb7bb4469d8c9fed047b1d0292cc7b0ce2ba921"
+checksum = "a56d1686db2308d901306f92a263857ef59ea39678a5458e7cb17f01415101f5"
 dependencies = [
  "tinyvec",
 ]
@@ -1482,6 +1528,12 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "09cc8ee72d2a9becf2f2febe0205bbed8fc6615b7cb429ad062dc7b7ddd036a9"
 
 [[package]]
+name = "version_check"
+version = "0.9.4"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "49874b5167b65d7193b8aba1567f5c7d93d001cafc34600cee003eda787e483f"
+
+[[package]]
 name = "want"
 version = "0.3.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -1498,9 +1550,9 @@ checksum = "9c8d87e72b64a3b4db28d11ce29237c246188f4f51057d65a7eab63b7987e423"
 
 [[package]]
 name = "wasm-bindgen"
-version = "0.2.91"
+version = "0.2.92"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c1e124130aee3fb58c5bdd6b639a0509486b0338acaaae0c84a5124b0f588b7f"
+checksum = "4be2531df63900aeb2bca0daaaddec08491ee64ceecbee5076636a3b026795a8"
 dependencies = [
  "cfg-if",
  "wasm-bindgen-macro",
@@ -1508,24 +1560,24 @@ dependencies = [
 
 [[package]]
 name = "wasm-bindgen-backend"
-version = "0.2.91"
+version = "0.2.92"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c9e7e1900c352b609c8488ad12639a311045f40a35491fb69ba8c12f758af70b"
+checksum = "614d787b966d3989fa7bb98a654e369c762374fd3213d212cfc0251257e747da"
 dependencies = [
  "bumpalo",
  "log",
  "once_cell",
  "proc-macro2",
  "quote",
- "syn 2.0.49",
+ "syn 2.0.60",
  "wasm-bindgen-shared",
 ]
 
 [[package]]
 name = "wasm-bindgen-futures"
-version = "0.4.41"
+version = "0.4.42"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "877b9c3f61ceea0e56331985743b13f3d25c406a7098d45180fb5f09bc19ed97"
+checksum = "76bc14366121efc8dbb487ab05bcc9d346b3b5ec0eaa76e46594cabbe51762c0"
 dependencies = [
  "cfg-if",
  "js-sys",
@@ -1535,9 +1587,9 @@ dependencies = [
 
 [[package]]
 name = "wasm-bindgen-macro"
-version = "0.2.91"
+version = "0.2.92"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b30af9e2d358182b5c7449424f017eba305ed32a7010509ede96cdc4696c46ed"
+checksum = "a1f8823de937b71b9460c0c34e25f3da88250760bec0ebac694b49997550d726"
 dependencies = [
  "quote",
  "wasm-bindgen-macro-support",
@@ -1545,28 +1597,28 @@ dependencies = [
 
 [[package]]
 name = "wasm-bindgen-macro-support"
-version = "0.2.91"
+version = "0.2.92"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "642f325be6301eb8107a83d12a8ac6c1e1c54345a7ef1a9261962dfefda09e66"
+checksum = "e94f17b526d0a461a191c78ea52bbce64071ed5c04c9ffe424dcb38f74171bb7"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.49",
+ "syn 2.0.60",
  "wasm-bindgen-backend",
  "wasm-bindgen-shared",
 ]
 
 [[package]]
 name = "wasm-bindgen-shared"
-version = "0.2.91"
+version = "0.2.92"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4f186bd2dcf04330886ce82d6f33dd75a7bfcf69ecf5763b89fcde53b6ac9838"
+checksum = "af190c94f2773fdb3729c55b007a722abb5384da03bc0986df4c289bf5567e96"
 
 [[package]]
 name = "web-sys"
-version = "0.3.68"
+version = "0.3.69"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "96565907687f7aceb35bc5fc03770a8a0471d82e479f25832f54a0e3f4b28446"
+checksum = "77afa9a11836342370f4817622a2f0f418b134426d91a82dfb48f532d2ec13ef"
 dependencies = [
  "js-sys",
  "wasm-bindgen",
@@ -1574,9 +1626,12 @@ dependencies = [
 
 [[package]]
 name = "webpki-roots"
-version = "0.25.4"
+version = "0.26.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5f20c57d8d7db6d3b86154206ae5d8fba62dd39573114de97c2cb0578251f8e1"
+checksum = "b3de34ae270483955a94f4b21bdaaeb83d508bb84a01435f393818edb0012009"
+dependencies = [
+ "rustls-pki-types",
+]
 
 [[package]]
 name = "windows-core"
@@ -1584,7 +1639,7 @@ version = "0.52.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "33ab640c8d7e35bf8ba19b884ba838ceb4fba93a4e8c65a9059d08afcfc683d9"
 dependencies = [
- "windows-targets 0.52.0",
+ "windows-targets 0.52.5",
 ]
 
 [[package]]
@@ -1597,6 +1652,15 @@ dependencies = [
 ]
 
 [[package]]
+name = "windows-sys"
+version = "0.52.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "282be5f36a8ce781fad8c8ae18fa3f9beff57ec1b52cb3de0789201425d9a33d"
+dependencies = [
+ "windows-targets 0.52.5",
+]
+
+[[package]]
 name = "windows-targets"
 version = "0.48.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -1613,17 +1677,18 @@ dependencies = [
 
 [[package]]
 name = "windows-targets"
-version = "0.52.0"
+version = "0.52.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8a18201040b24831fbb9e4eb208f8892e1f50a37feb53cc7ff887feb8f50e7cd"
+checksum = "6f0713a46559409d202e70e28227288446bf7841d3211583a4b53e3f6d96e7eb"
 dependencies = [
- "windows_aarch64_gnullvm 0.52.0",
- "windows_aarch64_msvc 0.52.0",
- "windows_i686_gnu 0.52.0",
- "windows_i686_msvc 0.52.0",
- "windows_x86_64_gnu 0.52.0",
- "windows_x86_64_gnullvm 0.52.0",
- "windows_x86_64_msvc 0.52.0",
+ "windows_aarch64_gnullvm 0.52.5",
+ "windows_aarch64_msvc 0.52.5",
+ "windows_i686_gnu 0.52.5",
+ "windows_i686_gnullvm",
+ "windows_i686_msvc 0.52.5",
+ "windows_x86_64_gnu 0.52.5",
+ "windows_x86_64_gnullvm 0.52.5",
+ "windows_x86_64_msvc 0.52.5",
 ]
 
 [[package]]
@@ -1634,9 +1699,9 @@ checksum = "2b38e32f0abccf9987a4e3079dfb67dcd799fb61361e53e2882c3cbaf0d905d8"
 
 [[package]]
 name = "windows_aarch64_gnullvm"
-version = "0.52.0"
+version = "0.52.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "cb7764e35d4db8a7921e09562a0304bf2f93e0a51bfccee0bd0bb0b666b015ea"
+checksum = "7088eed71e8b8dda258ecc8bac5fb1153c5cffaf2578fc8ff5d61e23578d3263"
 
 [[package]]
 name = "windows_aarch64_msvc"
@@ -1646,9 +1711,9 @@ checksum = "dc35310971f3b2dbbf3f0690a219f40e2d9afcf64f9ab7cc1be722937c26b4bc"
 
 [[package]]
 name = "windows_aarch64_msvc"
-version = "0.52.0"
+version = "0.52.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "bbaa0368d4f1d2aaefc55b6fcfee13f41544ddf36801e793edbbfd7d7df075ef"
+checksum = "9985fd1504e250c615ca5f281c3f7a6da76213ebd5ccc9561496568a2752afb6"
 
 [[package]]
 name = "windows_i686_gnu"
@@ -1658,9 +1723,15 @@ checksum = "a75915e7def60c94dcef72200b9a8e58e5091744960da64ec734a6c6e9b3743e"
 
 [[package]]
 name = "windows_i686_gnu"
-version = "0.52.0"
+version = "0.52.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a28637cb1fa3560a16915793afb20081aba2c92ee8af57b4d5f28e4b3e7df313"
+checksum = "88ba073cf16d5372720ec942a8ccbf61626074c6d4dd2e745299726ce8b89670"
+
+[[package]]
+name = "windows_i686_gnullvm"
+version = "0.52.5"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "87f4261229030a858f36b459e748ae97545d6f1ec60e5e0d6a3d32e0dc232ee9"
 
 [[package]]
 name = "windows_i686_msvc"
@@ -1670,9 +1741,9 @@ checksum = "8f55c233f70c4b27f66c523580f78f1004e8b5a8b659e05a4eb49d4166cca406"
 
 [[package]]
 name = "windows_i686_msvc"
-version = "0.52.0"
+version = "0.52.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ffe5e8e31046ce6230cc7215707b816e339ff4d4d67c65dffa206fd0f7aa7b9a"
+checksum = "db3c2bf3d13d5b658be73463284eaf12830ac9a26a90c717b7f771dfe97487bf"
 
 [[package]]
 name = "windows_x86_64_gnu"
@@ -1682,9 +1753,9 @@ checksum = "53d40abd2583d23e4718fddf1ebec84dbff8381c07cae67ff7768bbf19c6718e"
 
 [[package]]
 name = "windows_x86_64_gnu"
-version = "0.52.0"
+version = "0.52.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3d6fa32db2bc4a2f5abeacf2b69f7992cd09dca97498da74a151a3132c26befd"
+checksum = "4e4246f76bdeff09eb48875a0fd3e2af6aada79d409d33011886d3e1581517d9"
 
 [[package]]
 name = "windows_x86_64_gnullvm"
@@ -1694,9 +1765,9 @@ checksum = "0b7b52767868a23d5bab768e390dc5f5c55825b6d30b86c844ff2dc7414044cc"
 
 [[package]]
 name = "windows_x86_64_gnullvm"
-version = "0.52.0"
+version = "0.52.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1a657e1e9d3f514745a572a6846d3c7aa7dbe1658c056ed9c3344c4109a6949e"
+checksum = "852298e482cd67c356ddd9570386e2862b5673c85bd5f88df9ab6802b334c596"
 
 [[package]]
 name = "windows_x86_64_msvc"
@@ -1706,9 +1777,9 @@ checksum = "ed94fce61571a4006852b7389a063ab983c02eb1bb37b47f8272ce92d06d9538"
 
 [[package]]
 name = "windows_x86_64_msvc"
-version = "0.52.0"
+version = "0.52.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "dff9641d1cd4be8d1a070daf9e3773c5f67e78b4d9d42263020c057706765c04"
+checksum = "bec47e5bfd1bff0eeaf6d8b485cc1074891a197ab4225d504cb7a1ab88b02bf0"
 
 [[package]]
 name = "winnow"
@@ -1721,10 +1792,36 @@ dependencies = [
 
 [[package]]
 name = "winreg"
-version = "0.50.0"
+version = "0.52.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "524e57b2c537c0f9b1e69f1965311ec12182b4122e45035b1508cd24d2adadb1"
+checksum = "a277a57398d4bfa075df44f501a17cfdf8542d224f0d36095a2adc7aee4ef0a5"
 dependencies = [
  "cfg-if",
- "windows-sys",
+ "windows-sys 0.48.0",
 ]
+
+[[package]]
+name = "zerocopy"
+version = "0.7.33"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "087eca3c1eaf8c47b94d02790dd086cd594b912d2043d4de4bfdd466b3befb7c"
+dependencies = [
+ "zerocopy-derive",
+]
+
+[[package]]
+name = "zerocopy-derive"
+version = "0.7.33"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "6f4b6c273f496d8fd4eaf18853e6b448760225dc030ff2c485a786859aea6393"
+dependencies = [
+ "proc-macro2",
+ "quote",
+ "syn 2.0.60",
+]
+
+[[package]]
+name = "zeroize"
+version = "1.7.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "525b4ec142c6b68a2d10f01f7bbf6755599ca3f81ea53b8431b7dd348f5fdb2d"
diff --git a/pkgs/development/python-modules/css-inline/default.nix b/pkgs/development/python-modules/css-inline/default.nix
index 41caa34dedac..a265fcafeb97 100644
--- a/pkgs/development/python-modules/css-inline/default.nix
+++ b/pkgs/development/python-modules/css-inline/default.nix
@@ -18,14 +18,14 @@
 
 buildPythonPackage rec {
   pname = "css-inline";
-  version = "0.13.0";
+  version = "0.14.1";
   pyproject = true;
 
   src = fetchFromGitHub {
     owner = "Stranger6667";
     repo = "css-inline";
     rev = "python-v${version}";
-    hash = "sha256-hhjeOr7EJc4Tmn/eQ1vF0xChSIlgfSmtqi6s7WCUq00=";
+    hash = "sha256-+hX05y+ii2/wAbcc3SPK3ns4slUKFGqHURb3Z08yhVw=";
   };
 
   postPatch = ''
@@ -42,7 +42,7 @@ buildPythonPackage rec {
       ln -s ${./Cargo.lock} Cargo.lock
     '';
     name = "${pname}-${version}";
-    hash = "sha256-noYBSwCfdpuwb55toyx4K/16Z4A0NWjnMuzwTi5g8AU=";
+    hash = "sha256-ogzj8JxiFX2VWEeEnKACycd2Bud9VUpLuF4h35eUls0=";
   };
 
   nativeBuildInputs = [
@@ -67,6 +67,7 @@ buildPythonPackage rec {
 
   disabledTests = [
     # fails to connect to local server
+    "test_cache"
     "test_remote_stylesheet"
   ] ++ lib.optionals (stdenv.isDarwin) [
     # pyo3_runtime.PanicException: event loop thread panicked
diff --git a/pkgs/development/python-modules/curl-cffi/default.nix b/pkgs/development/python-modules/curl-cffi/default.nix
new file mode 100644
index 000000000000..00b87dff252e
--- /dev/null
+++ b/pkgs/development/python-modules/curl-cffi/default.nix
@@ -0,0 +1,49 @@
+{ lib
+, buildPythonPackage
+, fetchFromGitHub
+, setuptools
+, curl-impersonate-chrome
+, cffi
+, certifi
+}:
+
+buildPythonPackage rec {
+  pname = "curl-cffi";
+  version = "0.6.4";
+
+  src = fetchFromGitHub {
+    owner = "yifeikong";
+    repo = "curl_cffi";
+    rev = "refs/tags/v${version}";
+    hash = "sha256-bNBpZAIdfub2osByo827RBw/gouCmNt8uVN0y1KdcUk=";
+  };
+
+  patches = [
+    ./use-system-libs.patch
+  ];
+  buildInputs = [
+    curl-impersonate-chrome
+  ];
+
+  format = "pyproject";
+  build-system = [
+    setuptools
+  ];
+
+  nativeBuildInputs = [
+    cffi
+  ];
+  propagatedBuildInputs = [
+    cffi
+    certifi
+  ];
+
+  pythonImportsCheck = [ "curl_cffi" ];
+
+  meta = with lib; {
+    description = "Python binding for curl-impersonate via cffi";
+    homepage = "https://curl-cffi.readthedocs.io";
+    license = licenses.mit;
+    maintainers = with maintainers; [ chuangzhu ];
+  };
+}
diff --git a/pkgs/development/python-modules/curl-cffi/use-system-libs.patch b/pkgs/development/python-modules/curl-cffi/use-system-libs.patch
new file mode 100644
index 000000000000..1d044873e461
--- /dev/null
+++ b/pkgs/development/python-modules/curl-cffi/use-system-libs.patch
@@ -0,0 +1,23 @@
+diff --git a/scripts/build.py b/scripts/build.py
+index b705a0d..9bfcaab 100644
+--- a/scripts/build.py
++++ b/scripts/build.py
+@@ -105,7 +105,6 @@ def get_curl_libraries():
+ ffibuilder = FFI()
+ system = platform.system()
+ root_dir = Path(__file__).parent.parent
+-download_libcurl()
+ 
+ 
+ ffibuilder.set_source(
+@@ -114,9 +113,7 @@ ffibuilder.set_source(
+         #include "shim.h"
+     """,
+     # FIXME from `curl-impersonate`
+-    libraries=get_curl_libraries(),
+-    extra_objects=get_curl_archives(),
+-    library_dirs=[arch["libdir"]],
++    libraries=["curl-impersonate-chrome"],
+     source_extension=".c",
+     include_dirs=[
+         str(root_dir / "include"),
diff --git a/pkgs/development/python-modules/customtkinter/default.nix b/pkgs/development/python-modules/customtkinter/default.nix
new file mode 100644
index 000000000000..2aa4364816b7
--- /dev/null
+++ b/pkgs/development/python-modules/customtkinter/default.nix
@@ -0,0 +1,53 @@
+{
+  lib,
+  buildPythonPackage,
+  pythonOlder,
+  fetchPypi,
+  setuptools,
+  wheel,
+  tkinter,
+  darkdetect,
+}:
+let
+  pname = "customtkinter";
+  version = "5.2.2";
+in
+buildPythonPackage {
+  inherit pname version;
+  pyproject = true;
+  disabled = pythonOlder "3.7";
+
+  src = fetchPypi {
+    inherit pname version;
+    hash = "sha256-/Y2zuvqWHJgu5gMNuoC0wuJYWGMHVrUTmG2xkRPY0gc=";
+  };
+
+  nativeBuildInputs = [
+    setuptools
+    wheel
+  ];
+  buildInputs = [ tkinter ];
+  propagatedBuildInputs = [ darkdetect ];
+
+  # No tests
+  doCheck = false;
+  pythonImportsCheck = [ "customtkinter" ];
+
+  meta = {
+    description = "A modern and customizable python UI-library based on Tkinter";
+    homepage = "https://github.com/TomSchimansky/CustomTkinter";
+    license = lib.licenses.mit;
+    longDescription = ''
+      CustomTkinter is a python UI-library based on Tkinter, which provides
+      new, modern and fully customizable widgets. They are created and
+      used like normal Tkinter widgets and can also be used in combination
+      with normal Tkinter elements. The widgets and the window colors
+      either adapt to the system appearance or the manually set mode
+      ('light', 'dark'), and all CustomTkinter widgets and windows support
+      HighDPI scaling (Windows, macOS). With CustomTkinter you'll get
+      a consistent and modern look across all desktop platforms
+      (Windows, macOS, Linux).
+    '';
+    maintainers = with lib.maintainers; [ donteatoreo ];
+  };
+}
diff --git a/pkgs/development/python-modules/cvelib/default.nix b/pkgs/development/python-modules/cvelib/default.nix
index c269c351c1da..b51d4ea6f64f 100644
--- a/pkgs/development/python-modules/cvelib/default.nix
+++ b/pkgs/development/python-modules/cvelib/default.nix
@@ -1,48 +1,55 @@
-{ lib
-, buildPythonPackage
-, click
-, fetchFromGitHub
-, jsonschema
-, pytestCheckHook
-, pythonOlder
-, requests
-, testers
-, cve
+{
+  lib,
+  buildPythonPackage,
+  click,
+  cve,
+  fetchFromGitHub,
+  jsonschema,
+  pytestCheckHook,
+  pythonOlder,
+  requests,
+  setuptools,
+  testers,
 }:
 
 buildPythonPackage rec {
   pname = "cvelib";
-  version = "1.3.0";
-  format = "setuptools";
+  version = "1.4.0";
+  pyproject = true;
 
   disabled = pythonOlder "3.7";
 
   src = fetchFromGitHub {
     owner = "RedHatProductSecurity";
     repo = "cvelib";
-    rev = "tags/${version}";
-    hash = "sha256-PCZUAKgE80PD//4qK8ap55IN9vtx9WdpRZUAC3UdaWM=";
+    rev = "refs/tags/${version}";
+    hash = "sha256-nj5bkep8jYJE1qh2zNxivjKOpHj93UZ8bU+qNs2On8s=";
   };
 
-  propagatedBuildInputs = [
+  postPatch = ''
+    # collective.checkdocs is unmaintained for over 10 years
+    substituteInPlace pyproject.toml \
+      --replace-fail '"collective.checkdocs",' ""
+  '';
+
+  build-system = [ setuptools ];
+
+  dependencies = [
     click
     jsonschema
     requests
   ];
 
-  nativeCheckInputs = [
-    pytestCheckHook
-  ];
+  nativeCheckInputs = [ pytestCheckHook ];
 
-  pythonImportsCheck = [
-    "cvelib"
-  ];
+  pythonImportsCheck = [ "cvelib" ];
 
   passthru.tests.version = testers.testVersion { package = cve; };
 
   meta = with lib; {
     description = "Library and a command line interface for the CVE Services API";
     homepage = "https://github.com/RedHatProductSecurity/cvelib";
+    changelog = "https://github.com/RedHatProductSecurity/cvelib/blob/${version}/CHANGELOG.md";
     license = licenses.mit;
     maintainers = with maintainers; [ raboof ];
     mainProgram = "cve";
diff --git a/pkgs/development/python-modules/cvxpy/default.nix b/pkgs/development/python-modules/cvxpy/default.nix
index 16a5adbf1594..d3b057401eb0 100644
--- a/pkgs/development/python-modules/cvxpy/default.nix
+++ b/pkgs/development/python-modules/cvxpy/default.nix
@@ -1,7 +1,6 @@
 { lib
 , stdenv
 , buildPythonPackage
-, fetchpatch
 , clarabel
 , cvxopt
 , ecos
@@ -20,26 +19,16 @@
 
 buildPythonPackage rec {
   pname = "cvxpy";
-  version = "1.4.2";
+  version = "1.4.3";
   format = "pyproject";
 
   disabled = pythonOlder "3.7";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-CjhqV4jb14t7IN0HFSTsY2yPpys2KOafGrxxTI+YEeU=";
+    hash = "sha256-sbB4yMBZI60Sjn2BSwvhwzesBSYqeLdXqOb5V2SK2VM=";
   };
 
-  patches = [
-    # fix QP tests. remove on next update
-    # https://github.com/cvxpy/cvxpy/pull/2343
-    (fetchpatch {
-      name = "fix-QP-tests.patch";
-      url = "https://github.com/cvxpy/cvxpy/commit/4c8549b9820e64c1b06f5d71c5d3f36528dd4a76.patch";
-      hash = "sha256-43zjS1STEBaGgj1jEOlX3XzMsE4wjoKAk8ApJo98AzY=";
-    })
-  ];
-
   # we need to patch out numpy version caps from upstream
   postPatch = ''
     sed -i 's/\(numpy>=[0-9.]*\),<[0-9.]*;/\1;/g' pyproject.toml
diff --git a/pkgs/development/python-modules/cyclonedx-python-lib/default.nix b/pkgs/development/python-modules/cyclonedx-python-lib/default.nix
index 10cd64f83e62..4a2318693bec 100644
--- a/pkgs/development/python-modules/cyclonedx-python-lib/default.nix
+++ b/pkgs/development/python-modules/cyclonedx-python-lib/default.nix
@@ -1,29 +1,30 @@
-{ lib
-, buildPythonPackage
-, ddt
-, fetchFromGitHub
-, importlib-metadata
-, jsonschema
-, license-expression
-, lxml
-, packageurl-python
-, py-serializable
-, pythonRelaxDepsHook
-, poetry-core
-, pytestCheckHook
-, pythonOlder
-, requirements-parser
-, sortedcontainers
-, setuptools
-, toml
-, types-setuptools
-, types-toml
-, xmldiff
+{
+  lib,
+  buildPythonPackage,
+  ddt,
+  fetchFromGitHub,
+  importlib-metadata,
+  jsonschema,
+  license-expression,
+  lxml,
+  packageurl-python,
+  py-serializable,
+  pythonRelaxDepsHook,
+  poetry-core,
+  pytestCheckHook,
+  pythonOlder,
+  requirements-parser,
+  sortedcontainers,
+  setuptools,
+  toml,
+  types-setuptools,
+  types-toml,
+  xmldiff,
 }:
 
 buildPythonPackage rec {
   pname = "cyclonedx-python-lib";
-  version = "6.4.4";
+  version = "7.3.4";
   pyproject = true;
 
   disabled = pythonOlder "3.9";
@@ -32,15 +33,14 @@ buildPythonPackage rec {
     owner = "CycloneDX";
     repo = "cyclonedx-python-lib";
     rev = "refs/tags/v${version}";
-    hash = "sha256-PNacp16WZHNblFyA117hSL87IKGMrW0OYNXCSoBoO8Q=";
+    hash = "sha256-rFxCeQTCQSpg0LQYyOxhk150KOUyV9PXdXo1mOA0KPw=";
   };
 
-  nativeBuildInputs = [
-    poetry-core
-    pythonRelaxDepsHook
-  ];
+  build-system = [ poetry-core ];
+
+  nativeBuildInputs = [ pythonRelaxDepsHook ];
 
-  propagatedBuildInputs = [
+  dependencies = [
     importlib-metadata
     license-expression
     packageurl-python
@@ -61,21 +61,15 @@ buildPythonPackage rec {
     xmldiff
   ];
 
-  pythonImportsCheck = [
-    "cyclonedx"
-  ];
+  pythonImportsCheck = [ "cyclonedx" ];
 
-  pythonRelaxDeps = [
-    "py-serializable"
-  ];
+  pythonRelaxDeps = [ "py-serializable" ];
 
   preCheck = ''
     export PYTHONPATH=tests''${PYTHONPATH+:$PYTHONPATH}
   '';
 
-  pytestFlagsArray = [
-    "tests/"
-  ];
+  pytestFlagsArray = [ "tests/" ];
 
   disabledTests = [
     # These tests require network access
diff --git a/pkgs/development/python-modules/cypari2/default.nix b/pkgs/development/python-modules/cypari2/default.nix
index 025692de1f74..315492e38ee3 100644
--- a/pkgs/development/python-modules/cypari2/default.nix
+++ b/pkgs/development/python-modules/cypari2/default.nix
@@ -7,6 +7,9 @@
 , gmp
 , cython
 , cysignals
+
+# Reverse dependency
+, sage
 }:
 
 buildPythonPackage rec {
@@ -53,6 +56,8 @@ buildPythonPackage rec {
     make check
   '';
 
+  passthru.tests = { inherit sage; };
+
   meta = with lib; {
     description = "Cython bindings for PARI";
     license = licenses.gpl2Plus;
diff --git a/pkgs/development/python-modules/cypherpunkpay/default.nix b/pkgs/development/python-modules/cypherpunkpay/default.nix
index 9bf5e8fcd85d..4f562c00a444 100644
--- a/pkgs/development/python-modules/cypherpunkpay/default.nix
+++ b/pkgs/development/python-modules/cypherpunkpay/default.nix
@@ -44,6 +44,7 @@ buildPythonPackage rec {
     "pypng"
     "tzlocal"
     "yoyo-migrations"
+    "waitress"
   ];
 
   nativeBuildInputs = [
diff --git a/pkgs/development/python-modules/cysignals/default.nix b/pkgs/development/python-modules/cysignals/default.nix
index 62cc3dd30d8a..fc53c5c9f168 100644
--- a/pkgs/development/python-modules/cysignals/default.nix
+++ b/pkgs/development/python-modules/cysignals/default.nix
@@ -4,6 +4,9 @@
 , buildPythonPackage
 , cython
 , pariSupport ? true, pari # for interfacing with the PARI/GP signal handler
+
+# Reverse dependency
+, sage
 }:
 
 assert pariSupport -> pari != null;
@@ -46,6 +49,8 @@ buildPythonPackage rec {
 
   enableParallelBuilding = true;
 
+  passthru.tests = { inherit sage; };
+
   meta = with lib; {
     description = "Interrupt and signal handling for Cython";
     mainProgram = "cysignals-CSI";
diff --git a/pkgs/development/python-modules/cython/default.nix b/pkgs/development/python-modules/cython/default.nix
index 2062ae03863b..fecb9cad26ce 100644
--- a/pkgs/development/python-modules/cython/default.nix
+++ b/pkgs/development/python-modules/cython/default.nix
@@ -8,6 +8,9 @@
 , gdb
 , numpy
 , ncurses
+
+# Reverse dependency
+, sage
 }:
 
 let
@@ -24,13 +27,13 @@ let
 
 in buildPythonPackage rec {
   pname = "cython";
-  version = "3.0.9";
+  version = "3.0.10";
   pyproject = true;
 
   src = fetchPypi {
     pname = "Cython";
     inherit version;
-    hash = "sha256-otNU8FnR8FXTTPqmLFtovHisLOq2QHFI1H+1CM87pPM=";
+    hash = "sha256-3MlnOTMfuFTc9QP5RgdXbP6EiAZsYcpQ39VYNvEy3pk=";
   };
 
   build-system = [
@@ -57,6 +60,8 @@ in buildPythonPackage rec {
   doCheck = false;
   # doCheck = !stdenv.isDarwin;
 
+  passthru.tests = { inherit sage; };
+
   # force regeneration of generated code in source distributions
   # https://github.com/cython/cython/issues/5089
   setupHook = ./setup-hook.sh;
diff --git a/pkgs/development/python-modules/dash/default.nix b/pkgs/development/python-modules/dash/default.nix
index 89601f3f482d..61fbeb9ae6b7 100644
--- a/pkgs/development/python-modules/dash/default.nix
+++ b/pkgs/development/python-modules/dash/default.nix
@@ -36,7 +36,7 @@
 
 buildPythonPackage rec {
   pname = "dash";
-  version = "2.16.1";
+  version = "2.17.0";
   pyproject = true;
 
   disabled = pythonOlder "3.8";
@@ -45,7 +45,7 @@ buildPythonPackage rec {
     owner = "plotly";
     repo = "dash";
     rev = "refs/tags/v${version}";
-    hash = "sha256-IPyGQXrC2FTTSIC4IFGwKTceyzPYAe4jwDoO5C9YeF0=";
+    hash = "sha256-45nSQ3N7VcPsXthmMj3gMWFPi/i9z0peI1Wc6fUT7So=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/python-modules/dask-awkward/default.nix b/pkgs/development/python-modules/dask-awkward/default.nix
index e24b06a23b68..26f2c2bb5191 100644
--- a/pkgs/development/python-modules/dask-awkward/default.nix
+++ b/pkgs/development/python-modules/dask-awkward/default.nix
@@ -77,6 +77,8 @@ buildPythonPackage rec {
     "test_basic_root_works"
   ];
 
+  __darwinAllowLocalNetworking = true;
+
   meta = with lib; {
     description = "Native Dask collection for awkward arrays, and the library to use it";
     homepage = "https://github.com/dask-contrib/dask-awkward";
diff --git a/pkgs/development/python-modules/dask-expr/default.nix b/pkgs/development/python-modules/dask-expr/default.nix
index 68dca5fe42fe..657d588931e7 100644
--- a/pkgs/development/python-modules/dask-expr/default.nix
+++ b/pkgs/development/python-modules/dask-expr/default.nix
@@ -15,7 +15,7 @@
 
 buildPythonPackage rec {
   pname = "dask-expr";
-  version = "1.0.12";
+  version = "1.1.0";
   pyproject = true;
 
   disabled = pythonOlder "3.9";
@@ -24,7 +24,7 @@ buildPythonPackage rec {
     owner = "dask";
     repo = "dask-expr";
     rev = "refs/tags/v${version}";
-    hash = "sha256-B/BkLOZhvUyjinaFKp0ecUfzvLb5S90q+YHmJwS6WSQ=";
+    hash = "sha256-yVwaOOjxHVxAhFlEENnjpX8LbJs9MW0OOmwAH5RhPgE=";
   };
 
   postPatch = ''
@@ -51,6 +51,8 @@ buildPythonPackage rec {
     pytestCheckHook
   ];
 
+  __darwinAllowLocalNetworking = true;
+
   meta = with lib; {
     description = "";
     homepage = "https://github.com/dask/dask-expr";
diff --git a/pkgs/development/python-modules/dask-glm/default.nix b/pkgs/development/python-modules/dask-glm/default.nix
index dd5cfe0d2981..15a7df7fe029 100644
--- a/pkgs/development/python-modules/dask-glm/default.nix
+++ b/pkgs/development/python-modules/dask-glm/default.nix
@@ -59,6 +59,8 @@ buildPythonPackage rec {
     "test_determinism_distributed"
   ];
 
+  __darwinAllowLocalNetworking = true;
+
   meta = with lib; {
     description = "Generalized Linear Models with Dask";
     homepage = "https://github.com/dask/dask-glm/";
diff --git a/pkgs/development/python-modules/dask-jobqueue/default.nix b/pkgs/development/python-modules/dask-jobqueue/default.nix
index dc668ea2639a..69ef4a56f962 100644
--- a/pkgs/development/python-modules/dask-jobqueue/default.nix
+++ b/pkgs/development/python-modules/dask-jobqueue/default.nix
@@ -8,6 +8,7 @@
 , fetchPypi
 , pytest-asyncio
 , pytestCheckHook
+, pythonAtLeast
 , pythonOlder
 }:
 
@@ -16,7 +17,8 @@ buildPythonPackage rec {
   version = "0.8.5";
   format = "setuptools";
 
-  disabled = pythonOlder "3.8";
+  # Python 3.12 support should be added in 0.8.6
+  disabled = pythonOlder "3.8" || pythonAtLeast "3.12";
 
   src = fetchPypi {
     inherit pname version;
diff --git a/pkgs/development/python-modules/dask-ml/default.nix b/pkgs/development/python-modules/dask-ml/default.nix
index 3cb7ed9618b1..9c19a072ee58 100644
--- a/pkgs/development/python-modules/dask-ml/default.nix
+++ b/pkgs/development/python-modules/dask-ml/default.nix
@@ -1,37 +1,47 @@
 { lib
 , buildPythonPackage
+, pythonOlder
+, fetchFromGitHub
+, hatch-vcs
+, hatchling
+, setuptools-scm
 , dask
+, dask-expr
 , dask-glm
 , distributed
-, fetchPypi
 , multipledispatch
 , numba
 , numpy
 , packaging
 , pandas
-, pythonOlder
 , scikit-learn
 , scipy
-, setuptools-scm
+, pytest-mock
+, pytestCheckHook
 }:
 
 buildPythonPackage rec {
   pname = "dask-ml";
-  version = "2023.3.24";
-  format = "setuptools";
+  version = "2024.4.4";
+  pyproject = true;
 
   disabled = pythonOlder "3.6";
 
-  src = fetchPypi {
-    inherit pname version;
-    hash = "sha256-lsCQ220yg2U24/Ccpk3rWZ6GRYeqjj1NLGtK9YhzMwc=";
+  src = fetchFromGitHub {
+    owner = "dask";
+    repo = "dask-ml";
+    rev = "refs/tags/v${version}";
+    hash = "sha256-ZiBpCk3b4Tk0Hwb4uapJLEx+Nb/qHFROCnkBTNGDzoU=";
   };
 
-  nativeBuildInputs = [
+  build-system = [
+    hatch-vcs
+    hatchling
     setuptools-scm
   ];
 
-  propagatedBuildInputs = [
+  dependencies = [
+    dask-expr
     dask-glm
     distributed
     multipledispatch
@@ -44,9 +54,6 @@ buildPythonPackage rec {
   ] ++ dask.optional-dependencies.array
     ++ dask.optional-dependencies.dataframe;
 
-  # has non-standard build from source, and pypi doesn't include tests
-  doCheck = false;
-
   pythonImportsCheck = [
     "dask_ml"
     "dask_ml.naive_bayes"
@@ -54,10 +61,17 @@ buildPythonPackage rec {
     "dask_ml.utils"
   ];
 
+  nativeCheckInputs = [
+    pytest-mock
+    pytestCheckHook
+  ];
+
+  __darwinAllowLocalNetworking = true;
+
   meta = with lib; {
     description = "Scalable Machine Learn with Dask";
     homepage = "https://github.com/dask/dask-ml";
     license = licenses.bsd3;
-    maintainers = with maintainers; [ ];
+    maintainers = with maintainers; [ GaetanLepage ];
   };
 }
diff --git a/pkgs/development/python-modules/dask-yarn/default.nix b/pkgs/development/python-modules/dask-yarn/default.nix
index acea511b2495..c14f52aa43c9 100644
--- a/pkgs/development/python-modules/dask-yarn/default.nix
+++ b/pkgs/development/python-modules/dask-yarn/default.nix
@@ -1,20 +1,22 @@
 { lib
-, stdenv
 , buildPythonPackage
-, dask
-, distributed
+, pythonOlder
 , fetchFromGitHub
 , fetchpatch
+, setuptools
+, versioneer
+, dask
+, distributed
 , grpcio
-, pytestCheckHook
-, pythonOlder
 , skein
+, pytestCheckHook
+, stdenv
 }:
 
 buildPythonPackage rec {
   pname = "dask-yarn";
   version = "0.9";
-  format = "setuptools";
+  pyproject = true;
 
   disabled = pythonOlder "3.7";
 
@@ -33,9 +35,18 @@ buildPythonPackage rec {
     })
   ];
 
-  propagatedBuildInputs = [
-    distributed
+  postPatch = ''
+    rm versioneer.py
+  '';
+
+  build-system = [
+    setuptools
+    versioneer
+  ];
+
+  dependencies = [
     dask
+    distributed
     grpcio
     skein
   ];
diff --git a/pkgs/development/python-modules/dask/default.nix b/pkgs/development/python-modules/dask/default.nix
index 0327aebaaf84..8de709f446c9 100644
--- a/pkgs/development/python-modules/dask/default.nix
+++ b/pkgs/development/python-modules/dask/default.nix
@@ -39,7 +39,7 @@
 
 let self = buildPythonPackage rec {
   pname = "dask";
-  version = "2024.4.2";
+  version = "2024.5.0";
   pyproject = true;
 
   disabled = pythonOlder "3.9";
@@ -48,7 +48,7 @@ let self = buildPythonPackage rec {
     owner = "dask";
     repo = "dask";
     rev = "refs/tags/${version}";
-    hash = "sha256-iD+diwctXaQlOpL0fjOiFoWVONtlMq7AonbC0vCmXc0=";
+    hash = "sha256-2tkY02Inhpo8upTjhen//EvsZwd93roPCID215NOxwQ=";
   };
 
   nativeBuildInputs = [
@@ -191,5 +191,6 @@ let self = buildPythonPackage rec {
     homepage = "https://dask.org/";
     changelog = "https://docs.dask.org/en/latest/changelog.html";
     license = licenses.bsd3;
+    maintainers = with maintainers; [ GaetanLepage ];
   };
 }; in self
diff --git a/pkgs/development/python-modules/databricks-connect/default.nix b/pkgs/development/python-modules/databricks-connect/default.nix
index 2e3132fb5b50..85e64fea7823 100644
--- a/pkgs/development/python-modules/databricks-connect/default.nix
+++ b/pkgs/development/python-modules/databricks-connect/default.nix
@@ -9,14 +9,14 @@
 
 buildPythonPackage rec {
   pname = "databricks-connect";
-  version = "11.3.26";
+  version = "11.3.33";
   format = "setuptools";
 
   disabled = pythonOlder "3.7";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-YjUY4i8PtXc+fWcGjvnRbZkiINprKcS1K9HT5+86E8c=";
+    hash = "sha256-KcqJ2B2df85H/VIx4ToX0pJ7rYbjDRp3eR7jAFW67do=";
   };
 
   sourceRoot = ".";
diff --git a/pkgs/development/python-modules/dataclasses-json/default.nix b/pkgs/development/python-modules/dataclasses-json/default.nix
index 2718a88379c9..9c8c350185de 100644
--- a/pkgs/development/python-modules/dataclasses-json/default.nix
+++ b/pkgs/development/python-modules/dataclasses-json/default.nix
@@ -1,42 +1,43 @@
-{ lib
-, buildPythonPackage
-, fetchFromGitHub
-, hypothesis
-, marshmallow-enum
-, poetry-core
-, poetry-dynamic-versioning
-, pytestCheckHook
-, pythonOlder
-, typing-inspect
+{
+  lib,
+  buildPythonPackage,
+  fetchFromGitHub,
+  hypothesis,
+  marshmallow,
+  poetry-core,
+  poetry-dynamic-versioning,
+  pytestCheckHook,
+  pythonOlder,
+  typing-inspect,
 }:
 
 buildPythonPackage rec {
   pname = "dataclasses-json";
-  version = "0.6.4";
-  format = "pyproject";
+  version = "0.6.6";
+  pyproject = true;
 
   disabled = pythonOlder "3.7";
 
   src = fetchFromGitHub {
     owner = "lidatong";
-    repo = pname;
+    repo = "dataclasses-json";
     rev = "refs/tags/v${version}";
-    hash = "sha256-izNDvljUWw60joi5WfCfoqL5SDM8Jz5Pz+lI/RP35n8=";
+    hash = "sha256-JpZwRln7QC0SO/+8xFxc6xrC+ZBFSHVQ9NJscAO+Lf8=";
   };
 
   postPatch = ''
     substituteInPlace pyproject.toml \
-      --replace 'version = "0.0.0"' 'version = "${version}"'
+      --replace-fail 'version = "0.0.0"' 'version = "${version}"'
   '';
 
-  nativeBuildInputs = [
+  build-system = [
     poetry-core
     poetry-dynamic-versioning
   ];
 
-  propagatedBuildInputs = [
+  dependencies = [
     typing-inspect
-    marshmallow-enum
+    marshmallow
   ];
 
   nativeCheckInputs = [
@@ -51,9 +52,7 @@ buildPythonPackage rec {
     "tests/test_annotations.py"
   ];
 
-  pythonImportsCheck = [
-    "dataclasses_json"
-  ];
+  pythonImportsCheck = [ "dataclasses_json" ];
 
   meta = with lib; {
     description = "Simple API for encoding and decoding dataclasses to and from JSON";
diff --git a/pkgs/development/python-modules/dataprep-ml/default.nix b/pkgs/development/python-modules/dataprep-ml/default.nix
index 3bb919b6dc10..eef2f7f4f6fa 100644
--- a/pkgs/development/python-modules/dataprep-ml/default.nix
+++ b/pkgs/development/python-modules/dataprep-ml/default.nix
@@ -27,7 +27,7 @@ let
 in
 buildPythonPackage rec {
   pname = "dataprep-ml";
-  version = "0.0.23";
+  version = "24.5.1.2";
   pyproject = true;
 
   disabled = pythonOlder "3.8";
@@ -36,7 +36,7 @@ buildPythonPackage rec {
   src = fetchPypi {
     pname = "dataprep_ml";
     inherit version;
-    hash = "sha256-NYlKLdV2xZPODXpHvaFB8cRFTdCndl3UOd6bCfNbsZo=";
+    hash = "sha256-pZhHlNcQJLBww7ur2Z6Yb2IdbRsBtjzQAzfa4UzGKt4=";
   };
 
   pythonRelaxDeps = [
diff --git a/pkgs/development/python-modules/datasets/default.nix b/pkgs/development/python-modules/datasets/default.nix
index 3555387b3ab1..0ff05992b016 100644
--- a/pkgs/development/python-modules/datasets/default.nix
+++ b/pkgs/development/python-modules/datasets/default.nix
@@ -21,7 +21,7 @@
 
 buildPythonPackage rec {
   pname = "datasets";
-  version = "2.18.0";
+  version = "2.19.0";
   format = "setuptools";
 
   disabled = pythonOlder "3.8";
@@ -30,7 +30,7 @@ buildPythonPackage rec {
     owner = "huggingface";
     repo = pname;
     rev = "refs/tags/${version}";
-    hash = "sha256-mLiIE1RYUNUhh8nhG7TBr7XUdWlJzeWDuUNvoBk0eyw=";
+    hash = "sha256-m3x3/MCezA0WjYKBa2F12emMZdwLKi/9bFBf59A4qs8=";
   };
 
   # remove pyarrow<14.0.1 vulnerability fix
diff --git a/pkgs/development/python-modules/datashader/default.nix b/pkgs/development/python-modules/datashader/default.nix
index 899da93bfc5d..87ac07e6a838 100644
--- a/pkgs/development/python-modules/datashader/default.nix
+++ b/pkgs/development/python-modules/datashader/default.nix
@@ -25,14 +25,14 @@
 
 buildPythonPackage rec {
   pname = "datashader";
-  version = "0.16.0";
+  version = "0.16.1";
   format = "setuptools";
 
   disabled = pythonOlder "3.7";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-7UwRGVdXjcs/z/ly2VT3dYba/XGnNF/VzQadn7BQ0NE=";
+    hash = "sha256-Wy8d1Eje/OIG7MFumWD+k3jzIwfqH8sMKYwiwU9YyIE=";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/datauri/default.nix b/pkgs/development/python-modules/datauri/default.nix
index d5ed9bf0525e..58fec0584968 100644
--- a/pkgs/development/python-modules/datauri/default.nix
+++ b/pkgs/development/python-modules/datauri/default.nix
@@ -1,43 +1,48 @@
-{ lib
-, buildPythonPackage
-, fetchFromGitHub
-, setuptools
-, pydantic
-, pytestCheckHook
+{
+  lib,
+  buildPythonPackage,
+  fetchFromGitHub,
+  pydantic,
+  pytestCheckHook,
+  pythonOlder,
+  setuptools,
+  typing-extensions,
 }:
 
 buildPythonPackage rec {
   pname = "datauri";
-  version = "2.0.0";
-  format = "pyproject";
+  version = "2.1.1";
+  pyproject = true;
+
+  disabled = pythonOlder "3.7";
 
   src = fetchFromGitHub {
     owner = "fcurella";
     repo = "python-datauri";
     rev = "refs/tags/v${version}";
-    hash = "sha256-k4tlWRasGa2oQykCD9QJl65UAoZQMJVdyCfqlUBBgqY=";
+    hash = "sha256-+R1J4IjJ+Vf/+V2kiZyIyAqTAgGLTMJjGePyVRuO5rs=";
   };
 
-  nativeBuildInputs = [
-    setuptools
-  ];
+  build-system = [ setuptools ];
 
-  pythonImportsCheck = [
-    "datauri"
-  ];
+  dependencies = [ typing-extensions ];
 
   nativeCheckInputs = [
     pydantic
     pytestCheckHook
   ];
 
+  pythonImportsCheck = [ "datauri" ];
+
   disabledTests = [
-    "test_pydantic" # incompatible with pydantic v2
+    # Test is incompatible with pydantic >=2
+    "test_pydantic"
   ];
 
   meta = with lib; {
-    description = "Data URI manipulation made easy.";
+    description = "Module for Data URI manipulation";
     homepage = "https://github.com/fcurella/python-datauri";
+    changelog = "https://github.com/fcurella/python-datauri/releases/tag/v${version}";
     license = licenses.unlicense;
     maintainers = with maintainers; [ yuu ];
   };
diff --git a/pkgs/development/python-modules/dbt-bigquery/default.nix b/pkgs/development/python-modules/dbt-bigquery/default.nix
index d6401c6502a0..2ad6e8b1a42e 100644
--- a/pkgs/development/python-modules/dbt-bigquery/default.nix
+++ b/pkgs/development/python-modules/dbt-bigquery/default.nix
@@ -15,7 +15,7 @@
 
 buildPythonPackage rec {
   pname = "dbt-bigquery";
-  version = "1.7.7";
+  version = "1.7.8";
   pyproject = true;
 
   disabled = pythonOlder "3.7";
@@ -24,7 +24,7 @@ buildPythonPackage rec {
     owner = "dbt-labs";
     repo = "dbt-bigquery";
     rev = "refs/tags/v${version}";
-    hash = "sha256-+UF49ReSxKQ8ouutOv1b9JcU/6CNk7Yw8f1/tlRvwnU=";
+    hash = "sha256-Uc842hkrCYDR92ACDtNW+Iqq5l54CSp40D1tOL7wt8o=";
   };
 
   pythonRelaxDeps = [
diff --git a/pkgs/development/python-modules/dbt-core/default.nix b/pkgs/development/python-modules/dbt-core/default.nix
index e440fb6919b1..db61698ebfaa 100644
--- a/pkgs/development/python-modules/dbt-core/default.nix
+++ b/pkgs/development/python-modules/dbt-core/default.nix
@@ -33,7 +33,7 @@
 
 buildPythonPackage rec {
   pname = "dbt-core";
-  version = "1.7.12";
+  version = "1.7.13";
   pyproject = true;
 
   disabled = pythonOlder "3.8";
@@ -42,7 +42,7 @@ buildPythonPackage rec {
     owner = "dbt-labs";
     repo = "dbt-core";
     rev = "refs/tags/v${version}";
-    hash = "sha256-mkqtlItr6oRsF5S+CPw4fAP/INJ2yw3vcKxEYeB3ItI=";
+    hash = "sha256-uai1ihdmJpFkQqpx7edWiwwy0ek4dbclR/2OuiNbaXM=";
   };
 
   sourceRoot = "${src.name}/core";
diff --git a/pkgs/development/python-modules/dbus-fast/default.nix b/pkgs/development/python-modules/dbus-fast/default.nix
index d4db4490415b..736605ebece8 100644
--- a/pkgs/development/python-modules/dbus-fast/default.nix
+++ b/pkgs/development/python-modules/dbus-fast/default.nix
@@ -1,44 +1,43 @@
-{ lib
-, async-timeout
-, buildPythonPackage
-, cython
-, fetchFromGitHub
-, poetry-core
-, pytest-asyncio
-, pytestCheckHook
-, pythonOlder
-, setuptools
-, wheel
+{
+  lib,
+  async-timeout,
+  buildPythonPackage,
+  cython,
+  fetchFromGitHub,
+  poetry-core,
+  pytest-asyncio,
+  pytestCheckHook,
+  pythonOlder,
+  setuptools,
+  wheel,
 }:
 
 buildPythonPackage rec {
   pname = "dbus-fast";
-  version = "2.21.1";
-  format = "pyproject";
+  version = "2.21.2";
+  pyproject = true;
 
   disabled = pythonOlder "3.7";
 
   src = fetchFromGitHub {
     owner = "Bluetooth-Devices";
-    repo = pname;
+    repo = "dbus-fast";
     rev = "refs/tags/v${version}";
-    hash = "sha256-L3PZjxbcVfqWktWuN5l8JxfR1GyxuA+1ZtO/W2YqFZA=";
+    hash = "sha256-CLv8pNs6P2XRNK5wjo2SbRUuasJVXvd9LFABOwjDA9k=";
   };
 
   # The project can build both an optimized cython version and an unoptimized
   # python version. This ensures we fail if we build the wrong one.
   env.REQUIRE_CYTHON = 1;
 
-  nativeBuildInputs = [
+  build-system = [
     cython
     poetry-core
     setuptools
     wheel
   ];
 
-  propagatedBuildInputs = [
-    async-timeout
-  ];
+  dependencies = [ async-timeout ];
 
   nativeCheckInputs = [
     pytest-asyncio
diff --git a/pkgs/development/python-modules/dbus-python/default.nix b/pkgs/development/python-modules/dbus-python/default.nix
index be7504e5dc37..4e6f67f0a8ec 100644
--- a/pkgs/development/python-modules/dbus-python/default.nix
+++ b/pkgs/development/python-modules/dbus-python/default.nix
@@ -1,47 +1,99 @@
-{ lib, stdenv, fetchPypi, buildPythonPackage, python, pkg-config, dbus, dbus-glib, isPyPy
-, ncurses, pygobject3, isPy3k, pythonAtLeast }:
+{ lib
+, fetchPypi
+, buildPythonPackage
+, fetchpatch
+, isPyPy
+, python
+
+# build-system
+, meson
+, meson-python
+, pkg-config
+
+# native dependencies
+, dbus
+, dbus-glib
+}:
 
 buildPythonPackage rec {
   pname = "dbus-python";
-  version = "1.2.18";
+  version = "1.3.2";
+  pyproject = true;
 
-  # ModuleNotFoundError: No module named 'distutils'
-  disabled = isPyPy || pythonAtLeast "3.12";
-  format = "other";
-  outputs = [ "out" "dev" ];
+  disabled = isPyPy;
+
+  outputs = [
+    "out"
+    "dev"
+  ];
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "0q3jrw515z98mqdk9x822nd95rky455zz9876f1nqna5igkd3gcj";
+    hash = "sha256-rWeBkwhhi1BpU3viN/jmjKHH/Mle5KEh/mhFsUGCSPg=";
   };
 
   patches = [
-    ./fix-includedir.patch
+    # reduce required dependencies
+    # https://gitlab.freedesktop.org/dbus/dbus-python/-/merge_requests/23
+    (fetchpatch {
+      url = "https://gitlab.freedesktop.org/dbus/dbus-python/-/commit/d5e19698a8d6e1485f05b67a5b2daa2392819aaf.patch";
+      hash = "sha256-Rmj/ByRLiLnIF3JsMBElJugxsG8IARcBdixLhoWgIYU=";
+    })
   ];
 
-  preConfigure = lib.optionalString (lib.versionAtLeast stdenv.hostPlatform.darwinMinVersion "11" && stdenv.isDarwin) ''
-    MACOSX_DEPLOYMENT_TARGET=10.16
+  postPatch = ''
+    # we provide patchelf natively, not through the python package
+    sed -i '/patchelf/d' pyproject.toml
+
+    # dont run autotols configure phase
+    rm configure.ac configure
+
+    patchShebangs test/*.sh
   '';
 
-  configureFlags = [
-    "PYTHON=${python.pythonOnBuildForHost.interpreter}"
+  nativeBuildInputs = [
+    meson
+    meson-python
+    pkg-config
   ];
 
-  nativeBuildInputs = [ pkg-config ];
-  buildInputs = [ dbus dbus-glib ]
-    # My guess why it's sometimes trying to -lncurses.
-    # It seems not to retain the dependency anyway.
-    ++ lib.optional (! python ? modules) ncurses;
+  buildInputs = [
+    dbus
+    dbus-glib
+  ];
 
-  doCheck = isPy3k;
-  nativeCheckInputs = [ dbus.out pygobject3 ];
+  pypaBuildFlags = [
+    # Don't discard meson build directory, still needed for tests!
+    "-Cbuild-dir=_meson-build"
+  ];
 
+  # workaround bug in meson-python
+  # https://github.com/mesonbuild/meson-python/issues/240
   postInstall = ''
-    cp -r dbus_python.egg-info $out/${python.sitePackages}/
+    mkdir -p $dev/lib
+    mv $out/${python.sitePackages}/.dbus_python.mesonpy.libs/pkgconfig/ $dev/lib
+  '';
+
+  # make sure the Cflags in the pkgconfig file are correct and make the structure backwards compatible
+  postFixup = ''
+    ln -s $dev/include/*/dbus_python/dbus-1.0/ $dev/include/dbus-1.0
+  '';
+
+  nativeCheckInputs = [
+    dbus.out
+  ];
+
+  checkPhase = ''
+    runHook preCheck
+
+    meson test -C _meson-build --no-rebuild --print-errorlogs
+
+    runHook postCheck
   '';
 
   meta = with lib; {
     description = "Python DBus bindings";
+    homepage = "https://gitlab.freedesktop.org/dbus/dbus-python";
     license = licenses.mit;
     platforms = dbus.meta.platforms;
     maintainers = with maintainers; [ ];
diff --git a/pkgs/development/python-modules/dbus-python/fix-includedir.patch b/pkgs/development/python-modules/dbus-python/fix-includedir.patch
deleted file mode 100644
index e3bb0682b5c4..000000000000
--- a/pkgs/development/python-modules/dbus-python/fix-includedir.patch
+++ /dev/null
@@ -1,8 +0,0 @@
---- a/dbus-python.pc.in
-+++ b/dbus-python.pc.in
-@@ -9,4 +9,4 @@
- Description: Python bindings for D-Bus
- Requires: dbus-1 >= 1.0
- Version: @VERSION@
--Cflags: -I${includedir}
-+Cflags: -I${includedir}/dbus-1.0
diff --git a/pkgs/development/python-modules/dbutils/default.nix b/pkgs/development/python-modules/dbutils/default.nix
index 570f770e7777..49d3d00c110a 100644
--- a/pkgs/development/python-modules/dbutils/default.nix
+++ b/pkgs/development/python-modules/dbutils/default.nix
@@ -1,23 +1,28 @@
 { lib
 , buildPythonPackage
 , fetchPypi
+, setuptools
 , pytestCheckHook
 , pythonOlder
 }:
 
 buildPythonPackage rec {
   pname = "dbutils";
-  version = "3.0.3";
-  format = "setuptools";
+  version = "3.1.0";
+  pyproject = true;
 
   disabled = pythonOlder "3.6";
 
   src = fetchPypi {
     inherit version;
     pname = "DBUtils";
-    hash = "sha256-jkhWWxKtK0sfIU3gKU3utLKFePWyq7QNaMKSS2TX4Ac=";
+    hash = "sha256-6lKLoRBjJA7qgjRevG98yTJMBuQulCCwC80kWpW/zCQ=";
   };
 
+  nativeBuildInputs = [
+    setuptools
+  ];
+
   nativeCheckInputs = [
     pytestCheckHook
   ];
@@ -26,10 +31,11 @@ buildPythonPackage rec {
     "dbutils"
   ];
 
-  meta = with lib; {
+  meta = {
     description = "Database connections for multi-threaded environments";
     homepage = "https://webwareforpython.github.io/DBUtils/";
-    license = licenses.mit;
-    maintainers = with maintainers; [ ];
+    changelog = "https://webwareforpython.github.io/DBUtils/changelog.html";
+    license = lib.licenses.mit;
+    maintainers = [ ];
   };
 }
diff --git a/pkgs/development/python-modules/deebot-client/default.nix b/pkgs/development/python-modules/deebot-client/default.nix
index 31c5b2d4e959..17edaa445de7 100644
--- a/pkgs/development/python-modules/deebot-client/default.nix
+++ b/pkgs/development/python-modules/deebot-client/default.nix
@@ -21,7 +21,7 @@
 
 buildPythonPackage rec {
   pname = "deebot-client";
-  version = "7.0.0";
+  version = "7.2.0";
   pyproject = true;
 
   disabled = pythonOlder "3.12";
@@ -30,7 +30,7 @@ buildPythonPackage rec {
     owner = "DeebotUniverse";
     repo = "client.py";
     rev = "refs/tags/${version}";
-    hash = "sha256-RlLWC1TLjrwQ7t727WpjePJA1zGj4460Ioj6efm/jSw=";
+    hash = "sha256-5GALvd9p+ksxWqkfkSd07mPNzQSbdeGzrUjQU2nWs3g=";
   };
 
   build-system = [
diff --git a/pkgs/development/python-modules/desktop-notifier/default.nix b/pkgs/development/python-modules/desktop-notifier/default.nix
index 708c971943ec..f406bcd4cc5b 100644
--- a/pkgs/development/python-modules/desktop-notifier/default.nix
+++ b/pkgs/development/python-modules/desktop-notifier/default.nix
@@ -11,8 +11,8 @@
 
 buildPythonPackage rec {
   pname = "desktop-notifier";
-  version = "3.5.6";
-  format = "pyproject";
+  version = "4.0.0";
+  pyproject = true;
 
   disabled = pythonOlder "3.7";
 
@@ -20,14 +20,14 @@ buildPythonPackage rec {
     owner = "SamSchott";
     repo = pname;
     rev = "refs/tags/v${version}";
-    hash = "sha256-txUWRCWLQ6jWrdEJ/D5+CsflNad5Onr/wLycENri1z8=";
+    hash = "sha256-6FtxfY0vjCbCueeXdAXOy6XSjne4I7brQ5OvJ+Q1KsQ=";
   };
 
-  nativeBuildInputs = [
+  build-system = [
     setuptools
   ];
 
-  propagatedBuildInputs = [
+  dependencies = [
     packaging
   ] ++ lib.optionals stdenv.isLinux [
     dbus-next
diff --git a/pkgs/development/python-modules/devito/default.nix b/pkgs/development/python-modules/devito/default.nix
index 064899b8e78e..719bdf3aafb0 100644
--- a/pkgs/development/python-modules/devito/default.nix
+++ b/pkgs/development/python-modules/devito/default.nix
@@ -15,7 +15,6 @@
 , nbval
 , psutil
 , py-cpuinfo
-, pyrevolve
 , pytest-xdist
 , pytestCheckHook
 , pythonOlder
@@ -26,7 +25,7 @@
 
 buildPythonPackage rec {
   pname = "devito";
-  version = "4.8.3";
+  version = "4.8.6";
   format = "setuptools";
 
   disabled = pythonOlder "3.7";
@@ -35,7 +34,7 @@ buildPythonPackage rec {
     owner = "devitocodes";
     repo = "devito";
     rev = "refs/tags/v${version}";
-    hash = "sha256-g9rRJF1JrZ6+s3tj4RZHuGOjt5LJjtK9I5CJmq4CJL4=";
+    hash = "sha256-unuJLp+zTyGpOk5O78xYbW6Zrzp60WyqgT9mf2YpTG4=";
   };
 
   pythonRemoveDeps = [
@@ -51,7 +50,7 @@ buildPythonPackage rec {
     pythonRelaxDepsHook
   ];
 
-  propagatedBuildInputs = [
+  dependencies = [
     anytree
     cached-property
     cgen
@@ -62,7 +61,6 @@ buildPythonPackage rec {
     multidict
     psutil
     py-cpuinfo
-    pyrevolve
     scipy
     sympy
   ] ++ lib.optionals stdenv.cc.isClang [
@@ -99,6 +97,20 @@ buildPythonPackage rec {
     "test_setupWOverQ"
     "test_shortcuts"
     "test_subdomainset_mpi"
+    "test_subdomains_mpi"
+  ] ++ lib.optionals (stdenv.isLinux && stdenv.isAarch64) [
+    # FAILED tests/test_unexpansion.py::Test2Pass::test_v0 - assert False
+    "test_v0"
+  ] ++ lib.optionals stdenv.isDarwin [
+    # FAILED tests/test_caching.py::TestCaching::test_special_symbols - ValueError: not enough values to unpack (expected 3, got 2)
+    "test_special_symbols"
+
+    # FAILED tests/test_unexpansion.py::Test2Pass::test_v0 - codepy.CompileError: module compilation failed
+    "test_v0"
+  ] ++ lib.optionals (stdenv.isDarwin && stdenv.isAarch64) [
+    # Numerical tests
+    "test_lm_fb"
+    "test_lm_ds"
   ];
 
   disabledTestPaths = [
@@ -109,6 +121,8 @@ buildPythonPackage rec {
     "tests/test_data.py"
     "tests/test_dse.py"
     "tests/test_gradient.py"
+  ] ++ lib.optionals ((stdenv.isLinux && stdenv.isAarch64) || stdenv.isDarwin) [
+    "tests/test_dle.py"
   ];
 
   pythonImportsCheck = [
diff --git a/pkgs/development/python-modules/diffusers/default.nix b/pkgs/development/python-modules/diffusers/default.nix
index 39464efe47fd..19fe676abb64 100644
--- a/pkgs/development/python-modules/diffusers/default.nix
+++ b/pkgs/development/python-modules/diffusers/default.nix
@@ -1,8 +1,9 @@
 { lib
 , stdenv
 , buildPythonPackage
-, fetchFromGitHub
 , pythonOlder
+, fetchFromGitHub
+, fetchpatch
 , writeText
 , setuptools
 , wheel
@@ -35,6 +36,7 @@
 , sentencepiece
 , torchsde
 , transformers
+, pythonAtLeast
 }:
 
 buildPythonPackage rec {
@@ -51,12 +53,26 @@ buildPythonPackage rec {
     hash = "sha256-aRnbU3jN40xaCsoMFyRt1XB+hyIYMJP2b/T1yZho90c=";
   };
 
-  nativeBuildInputs = [
+  patches = [
+    # fix python3.12 build
+    (fetchpatch { # https://github.com/huggingface/diffusers/pull/7455
+      name = "001-remove-distutils.patch";
+      url = "https://github.com/huggingface/diffusers/compare/363699044e365ef977a7646b500402fa585e1b6b...3c67864c5acb30413911730b1ed4a9ad47c0a15c.patch";
+      hash = "sha256-Qyvyp1GyTVXN+A+lA1r2hf887ubTtaUknbKd4r46NZQ=";
+    })
+    (fetchpatch { # https://github.com/huggingface/diffusers/pull/7461
+      name = "002-fix-removed-distutils.patch";
+      url = "https://github.com/huggingface/diffusers/commit/efbbbc38e436a1abb1df41a6eccfd6f9f0333f97.patch";
+      hash = "sha256-scdtpX1RYFFEDHcaMb+gDZSsPafkvnIO/wQlpzrQhLA=";
+    })
+  ];
+
+  build-system = [
     setuptools
     wheel
   ];
 
-  propagatedBuildInputs = [
+  dependencies = [
     filelock
     huggingface-hub
     importlib-metadata
@@ -143,6 +159,10 @@ buildPythonPackage rec {
     "test_model_cpu_offload_forward_pass"
     # tries to run ruff which we have intentionally removed from nativeCheckInputs
     "test_is_copy_consistent"
+  ] ++ lib.optionals (pythonAtLeast "3.12") [
+
+    # RuntimeError: Dynamo is not supported on Python 3.12+
+    "test_from_save_pretrained_dynamo"
   ];
 
   meta = with lib; {
diff --git a/pkgs/development/python-modules/dirigera/default.nix b/pkgs/development/python-modules/dirigera/default.nix
index 36789741f83a..7b5f5d536601 100644
--- a/pkgs/development/python-modules/dirigera/default.nix
+++ b/pkgs/development/python-modules/dirigera/default.nix
@@ -12,7 +12,7 @@
 
 buildPythonPackage rec {
   pname = "dirigera";
-  version = "1.1.6";
+  version = "1.1.7";
   pyproject = true;
 
   disabled = pythonOlder "3.7";
@@ -21,7 +21,7 @@ buildPythonPackage rec {
     owner = "Leggin";
     repo = "dirigera";
     rev = "refs/tags/v${version}";
-    hash = "sha256-OXq8eJyZQBsJEK81GxstfMHqDShlZyOWSXLwP9Zfpqw=";
+    hash = "sha256-KAwXpcs0EvmaxBVgZ7TlT1hDI0m7f8hJigUTluVATsw=";
   };
 
   build-system = [ setuptools ];
diff --git a/pkgs/development/python-modules/dissect-archive/default.nix b/pkgs/development/python-modules/dissect-archive/default.nix
new file mode 100644
index 000000000000..864e6eb1ff18
--- /dev/null
+++ b/pkgs/development/python-modules/dissect-archive/default.nix
@@ -0,0 +1,45 @@
+{
+  lib,
+  buildPythonPackage,
+  dissect-cstruct,
+  dissect-util,
+  fetchFromGitHub,
+  pythonOlder,
+  setuptools,
+  setuptools-scm,
+}:
+
+buildPythonPackage rec {
+  pname = "dissect-archive";
+  version = "1.1";
+  pyproject = true;
+
+  disabled = pythonOlder "3.9";
+
+  src = fetchFromGitHub {
+    owner = "fox-it";
+    repo = "dissect.archive";
+    rev = "refs/tags/${version}";
+    hash = "sha256-DUAJUbG3k6sbO7mqvNzQQns+4l8XHDUh0xZ/RA5LWEY=";
+  };
+
+  build-system = [
+    setuptools
+    setuptools-scm
+  ];
+
+  dependencies = [
+    dissect-cstruct
+    dissect-util
+  ];
+
+  pythonImportsCheck = [ "dissect.archive" ];
+
+  meta = with lib; {
+    description = "Dissect module implementing parsers for various archive and backup formats";
+    homepage = "https://github.com/fox-it/dissect.archive";
+    changelog = "https://github.com/fox-it/dissect.archive/releases/tag/${version}";
+    license = licenses.agpl3Only;
+    maintainers = with maintainers; [ fab ];
+  };
+}
diff --git a/pkgs/development/python-modules/dissect-btrfs/default.nix b/pkgs/development/python-modules/dissect-btrfs/default.nix
index 8b492ae66701..72f5fd96695b 100644
--- a/pkgs/development/python-modules/dissect-btrfs/default.nix
+++ b/pkgs/development/python-modules/dissect-btrfs/default.nix
@@ -13,7 +13,7 @@
 
 buildPythonPackage rec {
   pname = "dissect-btrfs";
-  version = "1.2";
+  version = "1.3";
   pyproject = true;
 
   disabled = pythonOlder "3.7";
@@ -22,7 +22,7 @@ buildPythonPackage rec {
     owner = "fox-it";
     repo = "dissect.btrfs";
     rev = "refs/tags/${version}";
-    hash = "sha256-nWgeChHHCAjD5I98h2/1HrO5688aZUM4j2PJiD1xP0g=";
+    hash = "sha256-Xn7y9om/IuCaPR77lSuC0peF5umIxu2BS9esMPXsv+Y=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/python-modules/dissect-cim/default.nix b/pkgs/development/python-modules/dissect-cim/default.nix
index c9aef3e961ec..9073873f148d 100644
--- a/pkgs/development/python-modules/dissect-cim/default.nix
+++ b/pkgs/development/python-modules/dissect-cim/default.nix
@@ -1,45 +1,42 @@
-{ lib
-, buildPythonPackage
-, dissect-cstruct
-, dissect-util
-, fetchFromGitHub
-, setuptools
-, setuptools-scm
-, pytestCheckHook
-, pythonOlder
+{
+  lib,
+  buildPythonPackage,
+  dissect-cstruct,
+  dissect-util,
+  fetchFromGitHub,
+  setuptools,
+  setuptools-scm,
+  pytestCheckHook,
+  pythonOlder,
 }:
 
 buildPythonPackage rec {
   pname = "dissect-cim";
-  version = "3.8";
-  format = "pyproject";
+  version = "3.9";
+  pyproject = true;
 
-  disabled = pythonOlder "3.8";
+  disabled = pythonOlder "3.9";
 
   src = fetchFromGitHub {
     owner = "fox-it";
     repo = "dissect.cim";
     rev = "refs/tags/${version}";
-    hash = "sha256-NbGI6d1C3X7PbTsbDSCS4AUK6ueCBOuQDTNhkULrLYc=";
+    hash = "sha256-UZ4mlshaKqZKoysvnGfcaoMOrMwfsN/qOJ8hrpMcQL0=";
   };
 
-  nativeBuildInputs = [
+  build-system = [
     setuptools
     setuptools-scm
   ];
 
-  propagatedBuildInputs = [
+  dependencies = [
     dissect-cstruct
     dissect-util
   ];
 
-  nativeCheckInputs = [
-    pytestCheckHook
-  ];
+  nativeCheckInputs = [ pytestCheckHook ];
 
-  pythonImportsCheck = [
-    "dissect.cim"
-  ];
+  pythonImportsCheck = [ "dissect.cim" ];
 
   meta = with lib; {
     description = "Dissect module implementing a parser for the Windows Common Information Model (CIM) database";
diff --git a/pkgs/development/python-modules/dissect-clfs/default.nix b/pkgs/development/python-modules/dissect-clfs/default.nix
index 1007dcc07c62..287896b2448d 100644
--- a/pkgs/development/python-modules/dissect-clfs/default.nix
+++ b/pkgs/development/python-modules/dissect-clfs/default.nix
@@ -1,16 +1,17 @@
-{ lib
-, buildPythonPackage
-, dissect-cstruct
-, fetchFromGitHub
-, setuptools
-, setuptools-scm
-, pytestCheckHook
-, pythonOlder
+{
+  lib,
+  buildPythonPackage,
+  dissect-cstruct,
+  fetchFromGitHub,
+  setuptools,
+  setuptools-scm,
+  pytestCheckHook,
+  pythonOlder,
 }:
 
 buildPythonPackage rec {
   pname = "dissect-clfs";
-  version = "1.7";
+  version = "1.8";
   pyproject = true;
 
   disabled = pythonOlder "3.9";
@@ -19,25 +20,19 @@ buildPythonPackage rec {
     owner = "fox-it";
     repo = "dissect.clfs";
     rev = "refs/tags/${version}";
-    hash = "sha256-DBnZlyk7rjuTpOjgFUmSNxqvIZk8OxACNqyFDcENFHM=";
+    hash = "sha256-C1a85OLMkj0vjnRpenfC/xyxJ1TjYSlHPOq0jIrA/Ng=";
   };
 
-  nativeBuildInputs = [
+  build-system = [
     setuptools
     setuptools-scm
   ];
 
-  propagatedBuildInputs = [
-    dissect-cstruct
-  ];
+  dependencies = [ dissect-cstruct ];
 
-  nativeCheckInputs = [
-    pytestCheckHook
-  ];
+  nativeCheckInputs = [ pytestCheckHook ];
 
-  pythonImportsCheck = [
-    "dissect.clfs"
-  ];
+  pythonImportsCheck = [ "dissect.clfs" ];
 
   meta = with lib; {
     description = "Dissect module implementing a parser for the CLFS (Common Log File System) file system";
diff --git a/pkgs/development/python-modules/dissect-cobaltstrike/default.nix b/pkgs/development/python-modules/dissect-cobaltstrike/default.nix
index 7b25a817aa64..3924f0c5164b 100644
--- a/pkgs/development/python-modules/dissect-cobaltstrike/default.nix
+++ b/pkgs/development/python-modules/dissect-cobaltstrike/default.nix
@@ -1,25 +1,26 @@
-{ lib
-, buildPythonPackage
-, dissect-cstruct
-, dissect-util
-, fetchFromGitHub
-, flow-record
-, httpx
-, lark
-, pycryptodome
-, pyshark
-, pytest-httpserver
-, pytestCheckHook
-, pythonOlder
-, rich
-, setuptools
-, setuptools-scm
+{
+  lib,
+  buildPythonPackage,
+  dissect-cstruct,
+  dissect-util,
+  fetchFromGitHub,
+  flow-record,
+  httpx,
+  lark,
+  pycryptodome,
+  pyshark,
+  pytest-httpserver,
+  pytestCheckHook,
+  pythonOlder,
+  rich,
+  setuptools,
+  setuptools-scm,
 }:
 
 buildPythonPackage rec {
   pname = "dissect-cobaltstrike";
   version = "1.0.0";
-  format = "pyproject";
+  pyproject = true;
 
   disabled = pythonOlder "3.7";
 
@@ -30,12 +31,12 @@ buildPythonPackage rec {
     hash = "sha256-CS50c3r7sdxp3CRS6XJ4QUmUFtmhFg6rSdKfYzJSOV4=";
   };
 
-  nativeBuildInputs = [
+  build-system = [
     setuptools
     setuptools-scm
   ];
 
-  propagatedBuildInputs = [
+  dependencies = [
     dissect-cstruct
     dissect-util
     lark
@@ -69,9 +70,7 @@ buildPythonPackage rec {
     pytestCheckHook
   ] ++ lib.flatten (builtins.attrValues passthru.optional-dependencies);
 
-  pythonImportsCheck = [
-    "dissect.cobaltstrike"
-  ];
+  pythonImportsCheck = [ "dissect.cobaltstrike" ];
 
   meta = with lib; {
     description = "Dissect module implementing a parser for Cobalt Strike related data";
diff --git a/pkgs/development/python-modules/dissect-cstruct/default.nix b/pkgs/development/python-modules/dissect-cstruct/default.nix
index a1ed699aef37..04a64d8a9e7b 100644
--- a/pkgs/development/python-modules/dissect-cstruct/default.nix
+++ b/pkgs/development/python-modules/dissect-cstruct/default.nix
@@ -1,15 +1,16 @@
-{ lib
-, buildPythonPackage
-, fetchFromGitHub
-, setuptools
-, setuptools-scm
-, pytestCheckHook
-, pythonOlder
+{
+  lib,
+  buildPythonPackage,
+  fetchFromGitHub,
+  setuptools,
+  setuptools-scm,
+  pytestCheckHook,
+  pythonOlder,
 }:
 
 buildPythonPackage rec {
   pname = "dissect-cstruct";
-  version = "3.13";
+  version = "3.14";
   pyproject = true;
 
   disabled = pythonOlder "3.9";
@@ -18,21 +19,17 @@ buildPythonPackage rec {
     owner = "fox-it";
     repo = "dissect.cstruct";
     rev = "refs/tags/${version}";
-    hash = "sha256-QfnvWCI67y8GdCfXIRaehzb26IVZ8N0muUnNpr1NGJo=";
+    hash = "sha256-Et6Pb7iRVlxcrR4gZf+5h7mVikf7CyDd7N+q4TH18vg=";
   };
 
-  nativeBuildInputs = [
+  build-system = [
     setuptools
     setuptools-scm
   ];
 
-  nativeCheckInputs = [
-    pytestCheckHook
-  ];
+  nativeCheckInputs = [ pytestCheckHook ];
 
-  pythonImportsCheck = [
-    "dissect.cstruct"
-  ];
+  pythonImportsCheck = [ "dissect.cstruct" ];
 
   meta = with lib; {
     description = "Dissect module implementing a parser for C-like structures";
diff --git a/pkgs/development/python-modules/dissect-esedb/default.nix b/pkgs/development/python-modules/dissect-esedb/default.nix
index 0a6810749b6d..5784939b2ca2 100644
--- a/pkgs/development/python-modules/dissect-esedb/default.nix
+++ b/pkgs/development/python-modules/dissect-esedb/default.nix
@@ -11,7 +11,7 @@
 
 buildPythonPackage rec {
   pname = "dissect-esedb";
-  version = "3.12";
+  version = "3.13";
   pyproject = true;
 
   disabled = pythonOlder "3.9";
@@ -20,7 +20,7 @@ buildPythonPackage rec {
     owner = "fox-it";
     repo = "dissect.esedb";
     rev = "refs/tags/${version}";
-    hash = "sha256-s3ZIK4ZtHU5B3f9ojVTC2Aqn3G7CosTvdV6U3cwEatY=";
+    hash = "sha256-GdHMKLO44hR+H3fQ9h3t6sL8ACMwIVeg4nrg9brYmsU=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/python-modules/dissect-etl/default.nix b/pkgs/development/python-modules/dissect-etl/default.nix
index c7b9236c75c3..10ceff3e6eef 100644
--- a/pkgs/development/python-modules/dissect-etl/default.nix
+++ b/pkgs/development/python-modules/dissect-etl/default.nix
@@ -1,17 +1,18 @@
-{ lib
-, buildPythonPackage
-, dissect-cstruct
-, dissect-util
-, fetchFromGitHub
-, setuptools
-, setuptools-scm
-, pytestCheckHook
-, pythonOlder
+{
+  lib,
+  buildPythonPackage,
+  dissect-cstruct,
+  dissect-util,
+  fetchFromGitHub,
+  setuptools,
+  setuptools-scm,
+  pytestCheckHook,
+  pythonOlder,
 }:
 
 buildPythonPackage rec {
   pname = "dissect-etl";
-  version = "3.8";
+  version = "3.9";
   pyproject = true;
 
   disabled = pythonOlder "3.9";
@@ -20,26 +21,22 @@ buildPythonPackage rec {
     owner = "fox-it";
     repo = "dissect.etl";
     rev = "refs/tags/${version}";
-    hash = "sha256-yGpDZAaw11Sr5OPWxbY/NpZAV3jJUIgtTgDykCvYDtM=";
+    hash = "sha256-gLxBVHhtQS4Ep64H4jvndGyjUW1cQ68f346utVI9eC4=";
   };
 
-  nativeBuildInputs = [
+  build-system = [
     setuptools
     setuptools-scm
   ];
 
-  propagatedBuildInputs = [
+  dependencies = [
     dissect-cstruct
     dissect-util
   ];
 
-  nativeCheckInputs = [
-    pytestCheckHook
-  ];
+  nativeCheckInputs = [ pytestCheckHook ];
 
-  pythonImportsCheck = [
-    "dissect.etl"
-  ];
+  pythonImportsCheck = [ "dissect.etl" ];
 
   meta = with lib; {
     description = "Dissect module implementing a parser for Event Trace Log (ETL) files";
diff --git a/pkgs/development/python-modules/dissect-eventlog/default.nix b/pkgs/development/python-modules/dissect-eventlog/default.nix
index d8ace9285434..a57ddd56cc91 100644
--- a/pkgs/development/python-modules/dissect-eventlog/default.nix
+++ b/pkgs/development/python-modules/dissect-eventlog/default.nix
@@ -11,16 +11,16 @@
 
 buildPythonPackage rec {
   pname = "dissect-eventlog";
-  version = "3.7";
+  version = "3.8";
   format = "pyproject";
 
-  disabled = pythonOlder "3.7";
+  disabled = pythonOlder "3.8";
 
   src = fetchFromGitHub {
     owner = "fox-it";
     repo = "dissect.eventlog";
     rev = "refs/tags/${version}";
-    hash = "sha256-YiWW1olaIKoBfiZfr4TfIEsnj/C4cmn6sYosvjeiEfM=";
+    hash = "sha256-MvCHeeuwwE/EOK5rh5vtwTtMrSO/BtfFenQZn5VTgb0=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/python-modules/dissect-evidence/default.nix b/pkgs/development/python-modules/dissect-evidence/default.nix
index d8f9823634f4..6f617db679a3 100644
--- a/pkgs/development/python-modules/dissect-evidence/default.nix
+++ b/pkgs/development/python-modules/dissect-evidence/default.nix
@@ -1,17 +1,18 @@
-{ lib
-, buildPythonPackage
-, dissect-cstruct
-, dissect-util
-, fetchFromGitHub
-, setuptools
-, setuptools-scm
-, pytestCheckHook
-, pythonOlder
+{
+  lib,
+  buildPythonPackage,
+  dissect-cstruct,
+  dissect-util,
+  fetchFromGitHub,
+  setuptools,
+  setuptools-scm,
+  pytestCheckHook,
+  pythonOlder,
 }:
 
 buildPythonPackage rec {
   pname = "dissect-evidence";
-  version = "3.8";
+  version = "3.9";
   pyproject = true;
 
   disabled = pythonOlder "3.9";
@@ -20,26 +21,22 @@ buildPythonPackage rec {
     owner = "fox-it";
     repo = "dissect.evidence";
     rev = "refs/tags/${version}";
-    hash = "sha256-/zmMPSVR6F6SIU7xuotErmU2SsKEV43rs/4oTVKAWz0=";
+    hash = "sha256-0WLX5mD+opJoRdnk4w8mMySn41473PcRod4YxEk3S2s=";
   };
 
-  nativeBuildInputs = [
+  build-system = [
     setuptools
     setuptools-scm
   ];
 
-  propagatedBuildInputs = [
+  dependencies = [
     dissect-cstruct
     dissect-util
   ];
 
-  nativeCheckInputs = [
-    pytestCheckHook
-  ];
+  nativeCheckInputs = [ pytestCheckHook ];
 
-  pythonImportsCheck = [
-    "dissect.evidence"
-  ];
+  pythonImportsCheck = [ "dissect.evidence" ];
 
   meta = with lib; {
     description = "Dissect module implementing a parsers for various forensic evidence file containers";
diff --git a/pkgs/development/python-modules/dissect-executable/default.nix b/pkgs/development/python-modules/dissect-executable/default.nix
index 8511b2df9448..c8d9c456fa99 100644
--- a/pkgs/development/python-modules/dissect-executable/default.nix
+++ b/pkgs/development/python-modules/dissect-executable/default.nix
@@ -1,16 +1,17 @@
-{ lib
-, buildPythonPackage
-, dissect-cstruct
-, dissect-util
-, fetchFromGitHub
-, setuptools
-, setuptools-scm
-, pythonOlder
+{
+  lib,
+  buildPythonPackage,
+  dissect-cstruct,
+  dissect-util,
+  fetchFromGitHub,
+  setuptools,
+  setuptools-scm,
+  pythonOlder,
 }:
 
 buildPythonPackage rec {
   pname = "dissect-executable";
-  version = "1.5";
+  version = "1.6";
   pyproject = true;
 
   disabled = pythonOlder "3.7";
@@ -19,22 +20,20 @@ buildPythonPackage rec {
     owner = "fox-it";
     repo = "dissect.executable";
     rev = "refs/tags/${version}";
-    hash = "sha256-aAalU0TUqXc13WnxJvirG3QzQyMstecOfnXMdFT8IzU=";
+    hash = "sha256-b8xPOIUMn6JdYlvuoV5UeBdyISh6CC2Gh6E6U5ZZ7qY=";
   };
 
-  nativeBuildInputs = [
+  build-system = [
     setuptools
     setuptools-scm
   ];
 
-  propagatedBuildInputs = [
+  dependencies = [
     dissect-cstruct
     dissect-util
   ];
 
-  pythonImportsCheck = [
-    "dissect.executable"
-  ];
+  pythonImportsCheck = [ "dissect.executable" ];
 
   meta = with lib; {
     description = "Dissect module implementing a parser for various executable formats such as PE, ELF and Macho-O";
diff --git a/pkgs/development/python-modules/dissect-extfs/default.nix b/pkgs/development/python-modules/dissect-extfs/default.nix
index 6838350cb8de..95d31f8f7a34 100644
--- a/pkgs/development/python-modules/dissect-extfs/default.nix
+++ b/pkgs/development/python-modules/dissect-extfs/default.nix
@@ -11,16 +11,16 @@
 
 buildPythonPackage rec {
   pname = "dissect-extfs";
-  version = "3.9";
+  version = "3.10";
   format = "pyproject";
 
-  disabled = pythonOlder "3.9";
+  disabled = pythonOlder "3.10";
 
   src = fetchFromGitHub {
     owner = "fox-it";
     repo = "dissect.extfs";
     rev = "refs/tags/${version}";
-    hash = "sha256-xZEULUm0I754f9MEIUZEua76SaY/WMFp4Q5BMNZ8fWU=";
+    hash = "sha256-EIM2kS5V2+e7/bvuB8ezBZQl3XopdlzZ7Cmwr+Ns/Us=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/python-modules/dissect-fat/default.nix b/pkgs/development/python-modules/dissect-fat/default.nix
index 636265f4129c..6e14afb3f1e0 100644
--- a/pkgs/development/python-modules/dissect-fat/default.nix
+++ b/pkgs/development/python-modules/dissect-fat/default.nix
@@ -1,16 +1,17 @@
-{ lib
-, buildPythonPackage
-, dissect-cstruct
-, dissect-util
-, fetchFromGitHub
-, setuptools
-, setuptools-scm
-, pythonOlder
+{
+  lib,
+  buildPythonPackage,
+  dissect-cstruct,
+  dissect-util,
+  fetchFromGitHub,
+  setuptools,
+  setuptools-scm,
+  pythonOlder,
 }:
 
 buildPythonPackage rec {
   pname = "dissect-fat";
-  version = "3.8";
+  version = "3.9";
   pyproject = true;
 
   disabled = pythonOlder "3.9";
@@ -19,15 +20,15 @@ buildPythonPackage rec {
     owner = "fox-it";
     repo = "dissect.fat";
     rev = "refs/tags/${version}";
-    hash = "sha256-xFfB7QOZ3KjsOPQ1cPTRkqb0hgD4waOq8kkSTJStQ+E=";
+    hash = "sha256-U7SSLvEK6IYZjjUIGT9n1w7oLdB8Q2/msQ/EBJfatJY=";
   };
 
-  nativeBuildInputs = [
+  build-system = [
     setuptools
     setuptools-scm
   ];
 
-  propagatedBuildInputs = [
+  dependencies = [
     dissect-cstruct
     dissect-util
   ];
@@ -35,9 +36,7 @@ buildPythonPackage rec {
   # dissect.fat.exceptions.InvalidBPB: Invalid BS_jmpBoot
   doCheck = false;
 
-  pythonImportsCheck = [
-    "dissect.fat"
-  ];
+  pythonImportsCheck = [ "dissect.fat" ];
 
   meta = with lib; {
     description = "Dissect module implementing a parser for the FAT file system";
diff --git a/pkgs/development/python-modules/dissect-ffs/default.nix b/pkgs/development/python-modules/dissect-ffs/default.nix
index f95319ade135..fac9898633bc 100644
--- a/pkgs/development/python-modules/dissect-ffs/default.nix
+++ b/pkgs/development/python-modules/dissect-ffs/default.nix
@@ -1,45 +1,42 @@
-{ lib
-, buildPythonPackage
-, dissect-cstruct
-, dissect-util
-, fetchFromGitHub
-, setuptools
-, setuptools-scm
-, pytestCheckHook
-, pythonOlder
+{
+  lib,
+  buildPythonPackage,
+  dissect-cstruct,
+  dissect-util,
+  fetchFromGitHub,
+  setuptools,
+  setuptools-scm,
+  pytestCheckHook,
+  pythonOlder,
 }:
 
 buildPythonPackage rec {
   pname = "dissect-ffs";
-  version = "3.7";
-  format = "pyproject";
+  version = "3.8";
+  pyproject = true;
 
-  disabled = pythonOlder "3.7";
+  disabled = pythonOlder "3.8";
 
   src = fetchFromGitHub {
     owner = "fox-it";
     repo = "dissect.ffs";
     rev = "refs/tags/${version}";
-    hash = "sha256-f7lXYJ2U8M+rZXrlbrAXAjizCVz6rAAZbeSg+iOmKdo=";
+    hash = "sha256-L2LL+Er5nSYpRBW5CO9EBkYY85vnDkuvaOP0kbkH2T4=";
   };
 
-  nativeBuildInputs = [
+  build-system = [
     setuptools
     setuptools-scm
   ];
 
-  propagatedBuildInputs = [
+  dependencies = [
     dissect-cstruct
     dissect-util
   ];
 
-  nativeCheckInputs = [
-    pytestCheckHook
-  ];
+  nativeCheckInputs = [ pytestCheckHook ];
 
-  pythonImportsCheck = [
-    "dissect.ffs"
-  ];
+  pythonImportsCheck = [ "dissect.ffs" ];
 
   meta = with lib; {
     description = "Dissect module implementing a parser for the FFS file system";
diff --git a/pkgs/development/python-modules/dissect-hypervisor/default.nix b/pkgs/development/python-modules/dissect-hypervisor/default.nix
index 27bf9056e258..b24f1e69f867 100644
--- a/pkgs/development/python-modules/dissect-hypervisor/default.nix
+++ b/pkgs/development/python-modules/dissect-hypervisor/default.nix
@@ -1,20 +1,21 @@
-{ lib
-, buildPythonPackage
-, defusedxml
-, dissect-cstruct
-, dissect-util
-, fetchFromGitHub
-, pycryptodome
-, pytestCheckHook
-, pythonOlder
-, rich
-, setuptools
-, setuptools-scm
+{
+  lib,
+  buildPythonPackage,
+  defusedxml,
+  dissect-cstruct,
+  dissect-util,
+  fetchFromGitHub,
+  pycryptodome,
+  pytestCheckHook,
+  pythonOlder,
+  rich,
+  setuptools,
+  setuptools-scm,
 }:
 
 buildPythonPackage rec {
   pname = "dissect-hypervisor";
-  version = "3.12";
+  version = "3.13";
   pyproject = true;
 
   disabled = pythonOlder "3.9";
@@ -23,15 +24,15 @@ buildPythonPackage rec {
     owner = "fox-it";
     repo = "dissect.hypervisor";
     rev = "refs/tags/${version}";
-    hash = "sha256-uQt+oyETjZHPa1QZfswpUX92ZCdzkR5x9deo15J+Fxo=";
+    hash = "sha256-6sjRkhZOmAckzu/lUA4Sw48cmKfMOGLGgB5dB6M06qQ=";
   };
 
-  nativeBuildInputs = [
+  build-system = [
     setuptools
     setuptools-scm
   ];
 
-  propagatedBuildInputs = [
+  dependencies = [
     defusedxml
     dissect-cstruct
     dissect-util
@@ -44,13 +45,9 @@ buildPythonPackage rec {
     ];
   };
 
-  nativeCheckInputs = [
-    pytestCheckHook
-  ];
+  nativeCheckInputs = [ pytestCheckHook ];
 
-  pythonImportsCheck = [
-    "dissect.hypervisor"
-  ];
+  pythonImportsCheck = [ "dissect.hypervisor" ];
 
   meta = with lib; {
     description = "Dissect module implementing parsers for various hypervisor disk, backup and configuration files";
diff --git a/pkgs/development/python-modules/dissect-jffs/default.nix b/pkgs/development/python-modules/dissect-jffs/default.nix
index 234f61e007e3..31edb777123c 100644
--- a/pkgs/development/python-modules/dissect-jffs/default.nix
+++ b/pkgs/development/python-modules/dissect-jffs/default.nix
@@ -10,7 +10,7 @@
 
 buildPythonPackage rec {
   pname = "dissect-jffs";
-  version = "1.1";
+  version = "1.2";
   pyproject = true;
 
   disabled = pythonOlder "3.9";
@@ -19,7 +19,7 @@ buildPythonPackage rec {
     owner = "fox-it";
     repo = "dissect.jffs";
     rev = "refs/tags/${version}";
-    hash = "sha256-jzSPR4pkvXRQ3Q/qL7Oa3mLX3hW2IhbXuuO0jTc8Gvg=";
+    hash = "sha256-aElQR9QDC2110QZdk+PKkBky6FUXz9pSTJV7weTBvAE=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/python-modules/dissect-ntfs/default.nix b/pkgs/development/python-modules/dissect-ntfs/default.nix
index 61f3eaa64560..19c414c74d3c 100644
--- a/pkgs/development/python-modules/dissect-ntfs/default.nix
+++ b/pkgs/development/python-modules/dissect-ntfs/default.nix
@@ -11,16 +11,16 @@
 
 buildPythonPackage rec {
   pname = "dissect-ntfs";
-  version = "3.9";
+  version = "3.10";
   format = "pyproject";
 
-  disabled = pythonOlder "3.9";
+  disabled = pythonOlder "3.10";
 
   src = fetchFromGitHub {
     owner = "fox-it";
     repo = "dissect.ntfs";
     rev = "refs/tags/${version}";
-    hash = "sha256-gjmxoxz4Qf2FsCP72siEpVLeqlZfvhuFZHSGr1n+cY0=";
+    hash = "sha256-7D+5Btvm9fWwtVjVpKNc0VU7seyZXFxR7tEh7CAh7io=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/python-modules/dissect-ole/default.nix b/pkgs/development/python-modules/dissect-ole/default.nix
index 1d527d33ab08..cb84b16aa8fe 100644
--- a/pkgs/development/python-modules/dissect-ole/default.nix
+++ b/pkgs/development/python-modules/dissect-ole/default.nix
@@ -1,33 +1,34 @@
-{ lib
-, buildPythonPackage
-, dissect-cstruct
-, dissect-util
-, fetchFromGitHub
-, setuptools
-, setuptools-scm
-, pythonOlder
+{
+  lib,
+  buildPythonPackage,
+  dissect-cstruct,
+  dissect-util,
+  fetchFromGitHub,
+  setuptools,
+  setuptools-scm,
+  pythonOlder,
 }:
 
 buildPythonPackage rec {
   pname = "dissect-ole";
-  version = "3.7";
-  format = "pyproject";
+  version = "3.8";
+  pyproject = true;
 
-  disabled = pythonOlder "3.7";
+  disabled = pythonOlder "3.8";
 
   src = fetchFromGitHub {
     owner = "fox-it";
     repo = "dissect.ole";
     rev = "refs/tags/${version}";
-    hash = "sha256-Df6OU1vVsQl7d119W8+8YmUiy2+m6Dw3LpKnMVSRRR4=";
+    hash = "sha256-VWbgQhKV1vJBRQROrJXbJ7qDIVOfZwvjsRwUbm7q7OQ=";
   };
 
-  nativeBuildInputs = [
+  build-system = [
     setuptools
     setuptools-scm
   ];
 
-  propagatedBuildInputs = [
+  dependencies = [
     dissect-cstruct
     dissect-util
   ];
@@ -35,9 +36,7 @@ buildPythonPackage rec {
   # Module has no tests
   doCheck = false;
 
-  pythonImportsCheck = [
-    "dissect.ole"
-  ];
+  pythonImportsCheck = [ "dissect.ole" ];
 
   meta = with lib; {
     description = "Dissect module implementing a parser for the Object Linking & Embedding (OLE) format";
diff --git a/pkgs/development/python-modules/dissect-regf/default.nix b/pkgs/development/python-modules/dissect-regf/default.nix
index 8f8ae56b383d..4e09bfb4067a 100644
--- a/pkgs/development/python-modules/dissect-regf/default.nix
+++ b/pkgs/development/python-modules/dissect-regf/default.nix
@@ -11,16 +11,16 @@
 
 buildPythonPackage rec {
   pname = "dissect-regf";
-  version = "3.9";
+  version = "3.10";
   pyproject = true;
 
-  disabled = pythonOlder "3.9";
+  disabled = pythonOlder "3.10";
 
   src = fetchFromGitHub {
     owner = "fox-it";
     repo = "dissect.regf";
     rev = "refs/tags/${version}";
-    hash = "sha256-NLhZnStcJCtXMBkayLjvuG7aK2aN3sWGZaPKVXIoRew=";
+    hash = "sha256-uMC5av4NAzDF5JRUz4L8/jTLrBv9blNMYtM6dOuHe5s=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/python-modules/dissect-shellitem/default.nix b/pkgs/development/python-modules/dissect-shellitem/default.nix
index 6ee624cc4256..454614199614 100644
--- a/pkgs/development/python-modules/dissect-shellitem/default.nix
+++ b/pkgs/development/python-modules/dissect-shellitem/default.nix
@@ -1,45 +1,42 @@
-{ lib
-, buildPythonPackage
-, dissect-cstruct
-, dissect-util
-, fetchFromGitHub
-, setuptools
-, setuptools-scm
-, pytestCheckHook
-, pythonOlder
+{
+  lib,
+  buildPythonPackage,
+  dissect-cstruct,
+  dissect-util,
+  fetchFromGitHub,
+  setuptools,
+  setuptools-scm,
+  pytestCheckHook,
+  pythonOlder,
 }:
 
 buildPythonPackage rec {
   pname = "dissect-shellitem";
-  version = "3.7";
-  format = "pyproject";
+  version = "3.8";
+  pyproject = true;
 
-  disabled = pythonOlder "3.7";
+  disabled = pythonOlder "3.8";
 
   src = fetchFromGitHub {
     owner = "fox-it";
     repo = "dissect.shellitem";
     rev = "refs/tags/${version}";
-    hash = "sha256-E5v7WuAd47X/1LSeaje4EUv+GuFq5Ksg4ndOScFreYE=";
+    hash = "sha256-zoq42Au2dNJTryj3GNXJrEGvE0az8psPuMXoJNc74QM=";
   };
 
-  nativeBuildInputs = [
+  build-system = [
     setuptools
     setuptools-scm
   ];
 
-  propagatedBuildInputs = [
+  dependencies = [
     dissect-cstruct
     dissect-util
   ];
 
-  nativeCheckInputs = [
-    pytestCheckHook
-  ];
+  nativeCheckInputs = [ pytestCheckHook ];
 
-  pythonImportsCheck = [
-    "dissect.shellitem"
-  ];
+  pythonImportsCheck = [ "dissect.shellitem" ];
 
   meta = with lib; {
     description = "Dissect module implementing a parser for the Shellitem structures";
diff --git a/pkgs/development/python-modules/dissect-sql/default.nix b/pkgs/development/python-modules/dissect-sql/default.nix
index 275e1a2913d3..6c61796409ec 100644
--- a/pkgs/development/python-modules/dissect-sql/default.nix
+++ b/pkgs/development/python-modules/dissect-sql/default.nix
@@ -1,45 +1,42 @@
-{ lib
-, buildPythonPackage
-, dissect-cstruct
-, dissect-util
-, fetchFromGitHub
-, pytestCheckHook
-, pythonOlder
-, setuptools
-, setuptools-scm
+{
+  lib,
+  buildPythonPackage,
+  dissect-cstruct,
+  dissect-util,
+  fetchFromGitHub,
+  pytestCheckHook,
+  pythonOlder,
+  setuptools,
+  setuptools-scm,
 }:
 
 buildPythonPackage rec {
   pname = "dissect-sql";
-  version = "3.8";
-  format = "pyproject";
+  version = "3.9";
+  pyproject = true;
 
-  disabled = pythonOlder "3.8";
+  disabled = pythonOlder "3.9";
 
   src = fetchFromGitHub {
     owner = "fox-it";
     repo = "dissect.sql";
     rev = "refs/tags/${version}";
-    hash = "sha256-f19l1NxIdkQRaqEAgeTIuloPY079TmnNZ/DLQEXFQIA=";
+    hash = "sha256-aq/p6oa+6C2BS2TV8YYXwGP580tIHYZqO455bYm0yeo=";
   };
 
-  nativeBuildInputs = [
+  build-system = [
     setuptools
     setuptools-scm
   ];
 
-  propagatedBuildInputs = [
+  dependencies = [
     dissect-cstruct
     dissect-util
   ];
 
-  nativeCheckInputs = [
-    pytestCheckHook
-  ];
+  nativeCheckInputs = [ pytestCheckHook ];
 
-  pythonImportsCheck = [
-    "dissect.sql"
-  ];
+  pythonImportsCheck = [ "dissect.sql" ];
 
   meta = with lib; {
     description = "Dissect module implementing a parsers for the SQLite database file format";
diff --git a/pkgs/development/python-modules/dissect-squashfs/default.nix b/pkgs/development/python-modules/dissect-squashfs/default.nix
index 9deecad41773..6303663d2b07 100644
--- a/pkgs/development/python-modules/dissect-squashfs/default.nix
+++ b/pkgs/development/python-modules/dissect-squashfs/default.nix
@@ -1,20 +1,21 @@
-{ lib
-, buildPythonPackage
-, dissect-cstruct
-, dissect-util
-, fetchFromGitHub
-, lz4
-, python-lzo
-, pythonOlder
-, setuptools
-, setuptools-scm
-, zstandard
+{
+  lib,
+  buildPythonPackage,
+  dissect-cstruct,
+  dissect-util,
+  fetchFromGitHub,
+  lz4,
+  python-lzo,
+  pythonOlder,
+  setuptools,
+  setuptools-scm,
+  zstandard,
 }:
 
 buildPythonPackage rec {
   pname = "dissect-squashfs";
-  version = "1.4";
-  format = "pyproject";
+  version = "1.5";
+  pyproject = true;
 
   disabled = pythonOlder "3.7";
 
@@ -22,15 +23,15 @@ buildPythonPackage rec {
     owner = "fox-it";
     repo = "dissect.squashfs";
     rev = "refs/tags/${version}";
-    hash = "sha256-y6RXtHJev83m7mYdNLG640TRUPEGbi6l942zlMWXky0=";
+    hash = "sha256-eylLBPim3dmo8h95lRmlh8O9m458K07TH2uK+hn3nKs=";
   };
 
-  nativeBuildInputs = [
+  build-system = [
     setuptools
     setuptools-scm
   ];
 
-  propagatedBuildInputs = [
+  dependencies = [
     dissect-cstruct
     dissect-util
   ];
@@ -43,9 +44,7 @@ buildPythonPackage rec {
     ];
   };
 
-  pythonImportsCheck = [
-    "dissect.squashfs"
-  ];
+  pythonImportsCheck = [ "dissect.squashfs" ];
 
   meta = with lib; {
     description = "Dissect module implementing a parser for the SquashFS file system";
diff --git a/pkgs/development/python-modules/dissect-target/default.nix b/pkgs/development/python-modules/dissect-target/default.nix
index 0e6e14be7239..a8fdd93b879f 100644
--- a/pkgs/development/python-modules/dissect-target/default.nix
+++ b/pkgs/development/python-modules/dissect-target/default.nix
@@ -3,6 +3,7 @@
 , asn1crypto
 , buildPythonPackage
 , defusedxml
+, dissect-btrfs
 , dissect-cim
 , dissect-clfs
 , dissect-cstruct
@@ -16,8 +17,8 @@
 , dissect-hypervisor
 , dissect-ntfs
 , dissect-regf
-, dissect-sql
 , dissect-shellitem
+, dissect-sql
 , dissect-thumbcache
 , dissect-util
 , dissect-volume
@@ -25,21 +26,24 @@
 , fetchFromGitHub
 , flow-record
 , fusepy
+, impacket
 , ipython
+, paho-mqtt
 , pycryptodome
 , pytestCheckHook
 , pythonOlder
-, pyyaml
+, ruamel-yaml
 , setuptools
 , setuptools-scm
 , structlog
+, tomli
 , yara-python
 , zstandard
 }:
 
 buildPythonPackage rec {
   pname = "dissect-target";
-  version = "3.16";
+  version = "3.17";
   pyproject = true;
 
   disabled = pythonOlder "3.9";
@@ -48,20 +52,20 @@ buildPythonPackage rec {
     owner = "fox-it";
     repo = "dissect.target";
     rev = "refs/tags/${version}";
-    hash = "sha256-2c8OFwbgSc7zwbjQm2g8y1ZyiYM0KPFjTEUrk06c174=";
+    hash = "sha256-UIgHjSTHaxo8jCqe+R6rRxQXX8RUFKAI5+zscInAtgg=";
   };
 
   postPatch = ''
     substituteInPlace pyproject.toml \
-      --replace-warn "flow.record~=" "flow.record>="
+      --replace-fail "flow.record~=" "flow.record>="
   '';
 
-  nativeBuildInputs = [
+  build-system = [
     setuptools
     setuptools-scm
   ];
 
-  propagatedBuildInputs = [
+  dependencies = [
     defusedxml
     dissect-cstruct
     dissect-eventlog
@@ -78,6 +82,7 @@ buildPythonPackage rec {
   passthru.optional-dependencies = {
     full = [
       asn1crypto
+      dissect-btrfs
       dissect-cim
       dissect-clfs
       dissect-esedb
@@ -92,10 +97,19 @@ buildPythonPackage rec {
       fusepy
       ipython
       pycryptodome
-      pyyaml
+      ruamel-yaml
       yara-python
       zstandard
-    ];
+    ] ++ lib.optionals (pythonOlder "3.11") [ tomli ];
+    yara = [
+      yara-python
+    ] ++ passthru.optional-dependencies.full;
+    smb = [
+      impacket
+    ] ++ passthru.optional-dependencies.full;
+    mqtt = [
+      paho-mqtt
+    ] ++ passthru.optional-dependencies.full;
   };
 
   nativeCheckInputs = [
@@ -121,18 +135,34 @@ buildPythonPackage rec {
     # Tests compare dates and times
     "yum"
     # Filesystem access, windows defender tests
+    "test_config_tree_plugin"
     "test_defender_quarantine_recovery"
+    "test_execute_pipeline"
+    "test_keychain_register_keychain_file"
+    "test_plugins_child_docker"
+    "test_plugins_child_wsl"
+    "test_reg_output"
+    "test_regflex"
+    "test_systemd_basic_syntax"
+    "test_target_cli_unicode_argparse"
+    "test_target_query"
   ] ++
   # test is broken on Darwin
   lib.optional stdenv.hostPlatform.isDarwin "test_fs_attrs_no_os_listxattr";
 
   disabledTestPaths = [
-    # Tests are using Windows paths
-    "tests/plugins/apps/browser/"
+    # Tests are using Windows paths, missing test files
+    "tests/plugins/apps/"
     # ValueError: Invalid Locate file magic. Expected /x00LOCATE02/x00
     "tests/plugins/os/unix/locate/"
     # Missing plugin support
-    "tests/tools/test_reg.py"
+    "tests/tools/test_dump.py"
+    "tests/plugins/os/"
+    "tests/plugins/filesystem/"
+    "tests/test_registration.py"
+    "tests/filesystems/"
+    "tests/test_filesystem.py"
+    "tests/loaders/"
   ];
 
   meta = with lib; {
diff --git a/pkgs/development/python-modules/dissect-thumbcache/default.nix b/pkgs/development/python-modules/dissect-thumbcache/default.nix
index 6c1a68b64785..60091bb17823 100644
--- a/pkgs/development/python-modules/dissect-thumbcache/default.nix
+++ b/pkgs/development/python-modules/dissect-thumbcache/default.nix
@@ -1,17 +1,18 @@
-{ lib
-, buildPythonPackage
-, dissect-cstruct
-, dissect-util
-, fetchFromGitHub
-, pytestCheckHook
-, pythonOlder
-, setuptools
-, setuptools-scm
+{
+  lib,
+  buildPythonPackage,
+  dissect-cstruct,
+  dissect-util,
+  fetchFromGitHub,
+  pytestCheckHook,
+  pythonOlder,
+  setuptools,
+  setuptools-scm,
 }:
 
 buildPythonPackage rec {
   pname = "dissect-thumbcache";
-  version = "1.7";
+  version = "1.8";
   pyproject = true;
 
   disabled = pythonOlder "3.9";
@@ -20,26 +21,22 @@ buildPythonPackage rec {
     owner = "fox-it";
     repo = "dissect.thumbcache";
     rev = "refs/tags/${version}";
-    hash = "sha256-t5LovLS+YMWQWMCFP6jh3SNiLb/Jy9we4FX6MmsIJmY=";
+    hash = "sha256-LcuuRVSnZVFtht03MD8qVNNPljVUzGa8vXu9GQPOgjs=";
   };
 
-  nativeBuildInputs = [
+  build-system = [
     setuptools
     setuptools-scm
   ];
 
-  propagatedBuildInputs = [
+  dependencies = [
     dissect-cstruct
     dissect-util
   ];
 
-  nativeCheckInputs = [
-    pytestCheckHook
-  ];
+  nativeCheckInputs = [ pytestCheckHook ];
 
-  pythonImportsCheck = [
-    "dissect.thumbcache"
-  ];
+  pythonImportsCheck = [ "dissect.thumbcache" ];
 
   disabledTests = [
     # Don't run Windows related tests
diff --git a/pkgs/development/python-modules/dissect-util/default.nix b/pkgs/development/python-modules/dissect-util/default.nix
index d085d842b711..9210cc6ca774 100644
--- a/pkgs/development/python-modules/dissect-util/default.nix
+++ b/pkgs/development/python-modules/dissect-util/default.nix
@@ -9,7 +9,7 @@
 
 buildPythonPackage rec {
   pname = "dissect-util";
-  version = "3.15";
+  version = "3.16";
   format = "pyproject";
 
   disabled = pythonOlder "3.9";
@@ -18,7 +18,7 @@ buildPythonPackage rec {
     owner = "fox-it";
     repo = "dissect.util";
     rev = "refs/tags/${version}";
-    hash = "sha256-JIrk6YRuW5B30d9fNaRFesO01ajcSy8ErkpFtM1Coaw=";
+    hash = "sha256-OHlWOWB476KERerEo2ZYLMIIO+eIpKlNLOHMCiE5jdE=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/python-modules/dissect-vmfs/default.nix b/pkgs/development/python-modules/dissect-vmfs/default.nix
index 147b048aee7d..95775fb18ce2 100644
--- a/pkgs/development/python-modules/dissect-vmfs/default.nix
+++ b/pkgs/development/python-modules/dissect-vmfs/default.nix
@@ -11,16 +11,16 @@
 
 buildPythonPackage rec {
   pname = "dissect-vmfs";
-  version = "3.7";
+  version = "3.8";
   format = "pyproject";
 
-  disabled = pythonOlder "3.7";
+  disabled = pythonOlder "3.8";
 
   src = fetchFromGitHub {
     owner = "fox-it";
     repo = "dissect.vmfs";
     rev = "refs/tags/${version}";
-    hash = "sha256-HJV7cwNMFvHURt2dk/c1YbgFaHXRESREJ5ucmUsuS78=";
+    hash = "sha256-AcVWKUgykgTgP0haBOtWR+wNWzc/PN9qIwVJMqNg8hg=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/python-modules/dissect-volume/default.nix b/pkgs/development/python-modules/dissect-volume/default.nix
index abddcf5d1d61..a312667bb620 100644
--- a/pkgs/development/python-modules/dissect-volume/default.nix
+++ b/pkgs/development/python-modules/dissect-volume/default.nix
@@ -11,16 +11,16 @@
 
 buildPythonPackage rec {
   pname = "dissect-volume";
-  version = "3.9";
+  version = "3.10";
   pyproject = true;
 
-  disabled = pythonOlder "3.9";
+  disabled = pythonOlder "3.10";
 
   src = fetchFromGitHub {
     owner = "fox-it";
     repo = "dissect.volume";
     rev = "refs/tags/${version}";
-    hash = "sha256-Bhi3p0joTNx1y/yBhehhG06WmM7gUJhIJbmqZY4DzLQ=";
+    hash = "sha256-tQNmSnQBchj3SUq2XPsK/LWrKiCw4MFKmopHbxnzMxg=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/python-modules/dissect-xfs/default.nix b/pkgs/development/python-modules/dissect-xfs/default.nix
index 1843ff00f8e0..cc137632f7d7 100644
--- a/pkgs/development/python-modules/dissect-xfs/default.nix
+++ b/pkgs/development/python-modules/dissect-xfs/default.nix
@@ -1,45 +1,42 @@
-{ lib
-, buildPythonPackage
-, dissect-cstruct
-, dissect-util
-, fetchFromGitHub
-, setuptools
-, setuptools-scm
-, pytestCheckHook
-, pythonOlder
+{
+  lib,
+  buildPythonPackage,
+  dissect-cstruct,
+  dissect-util,
+  fetchFromGitHub,
+  setuptools,
+  setuptools-scm,
+  pytestCheckHook,
+  pythonOlder,
 }:
 
 buildPythonPackage rec {
   pname = "dissect-xfs";
-  version = "3.8";
-  format = "pyproject";
+  version = "3.9";
+  pyproject = true;
 
-  disabled = pythonOlder "3.8";
+  disabled = pythonOlder "3.9";
 
   src = fetchFromGitHub {
     owner = "fox-it";
     repo = "dissect.xfs";
     rev = "refs/tags/${version}";
-    hash = "sha256-U/VDFeCyOPlefFL/QVRVknpCBDLuVYvVHI49QSe+QFM=";
+    hash = "sha256-jUNstyHVPJazf4idXNe9xICpi0MKkz8q0rWUEHjk2ZA=";
   };
 
-  nativeBuildInputs = [
+  build-system = [
     setuptools
     setuptools-scm
   ];
 
-  propagatedBuildInputs = [
+  dependencies = [
     dissect-cstruct
     dissect-util
   ];
 
-  nativeCheckInputs = [
-    pytestCheckHook
-  ];
+  nativeCheckInputs = [ pytestCheckHook ];
 
-  pythonImportsCheck = [
-    "dissect.xfs"
-  ];
+  pythonImportsCheck = [ "dissect.xfs" ];
 
   # Archive files seems to be corrupt
   doCheck = false;
diff --git a/pkgs/development/python-modules/dissect/default.nix b/pkgs/development/python-modules/dissect/default.nix
index 6827b7e5f701..73f022e97eaa 100644
--- a/pkgs/development/python-modules/dissect/default.nix
+++ b/pkgs/development/python-modules/dissect/default.nix
@@ -1,41 +1,43 @@
-{ lib
-, buildPythonPackage
-, dissect-btrfs
-, dissect-cim
-, dissect-clfs
-, dissect-cobaltstrike
-, dissect-cstruct
-, dissect-esedb
-, dissect-etl
-, dissect-eventlog
-, dissect-evidence
-, dissect-executable
-, dissect-extfs
-, dissect-fat
-, dissect-ffs
-, dissect-hypervisor
-, dissect-jffs
-, dissect-ntfs
-, dissect-ole
-, dissect-regf
-, dissect-shellitem
-, dissect-sql
-, dissect-squashfs
-, dissect-target
-, dissect-util
-, dissect-vmfs
-, dissect-volume
-, dissect-xfs
-, fetchFromGitHub
-, pythonOlder
-, pythonRelaxDepsHook
-, setuptools
-, setuptools-scm
+{
+  lib,
+  buildPythonPackage,
+  dissect-archive,
+  dissect-btrfs,
+  dissect-cim,
+  dissect-clfs,
+  dissect-cobaltstrike,
+  dissect-cstruct,
+  dissect-esedb,
+  dissect-etl,
+  dissect-eventlog,
+  dissect-evidence,
+  dissect-executable,
+  dissect-extfs,
+  dissect-fat,
+  dissect-ffs,
+  dissect-hypervisor,
+  dissect-jffs,
+  dissect-ntfs,
+  dissect-ole,
+  dissect-regf,
+  dissect-shellitem,
+  dissect-sql,
+  dissect-squashfs,
+  dissect-target,
+  dissect-util,
+  dissect-vmfs,
+  dissect-volume,
+  dissect-xfs,
+  fetchFromGitHub,
+  pythonOlder,
+  pythonRelaxDepsHook,
+  setuptools,
+  setuptools-scm,
 }:
 
 buildPythonPackage rec {
   pname = "dissect";
-  version = "3.13";
+  version = "3.14";
   pyproject = true;
 
   disabled = pythonOlder "3.9";
@@ -44,18 +46,20 @@ buildPythonPackage rec {
     owner = "fox-it";
     repo = "dissect";
     rev = "refs/tags/${version}";
-    hash = "sha256-cnNaqXECePP2DmLRAm/Fi9m88rYSsVVMrpcqYd0iL1E=";
+    hash = "sha256-wHLpysvOkJ1t0KKJXwfeRp/7mSom5WvrJ0lyRGoDwJM=";
   };
 
   pythonRelaxDeps = true;
 
-  nativeBuildInputs = [
-    pythonRelaxDepsHook
+  build-system = [
     setuptools
     setuptools-scm
   ];
 
-  propagatedBuildInputs = [
+  nativeBuildInputs = [ pythonRelaxDepsHook ];
+
+  dependencies = [
+    dissect-archive
     dissect-btrfs
     dissect-cim
     dissect-clfs
@@ -87,9 +91,7 @@ buildPythonPackage rec {
   # Module has no tests
   doCheck = false;
 
-  pythonImportsCheck = [
-    "dissect"
-  ];
+  pythonImportsCheck = [ "dissect" ];
 
   meta = with lib; {
     description = "Dissect meta module";
diff --git a/pkgs/development/python-modules/distributed/default.nix b/pkgs/development/python-modules/distributed/default.nix
index 890f579207ca..35c1df57422a 100644
--- a/pkgs/development/python-modules/distributed/default.nix
+++ b/pkgs/development/python-modules/distributed/default.nix
@@ -25,7 +25,7 @@
 
 buildPythonPackage rec {
   pname = "distributed";
-  version = "2024.4.2";
+  version = "2024.5.0";
   pyproject = true;
 
   disabled = pythonOlder "3.9";
@@ -34,7 +34,7 @@ buildPythonPackage rec {
     owner = "dask";
     repo = "distributed";
     rev = "refs/tags/${version}";
-    hash = "sha256-xoQ+b7qzstZl9gRNs4jssNOsGQHDdvTXU7pTjBSuyWs=";
+    hash = "sha256-9W5BpBQHw1ZXCOWiFPeIlMns/Yys1gtdwQ4Lhd7qjK8=";
   };
 
   postPatch = ''
@@ -43,7 +43,7 @@ buildPythonPackage rec {
       --replace 'dynamic = ["version"]' 'version = "${version}"'
   '';
 
-  nativeBuildInputs = [
+  build-system = [
     pythonRelaxDepsHook
     setuptools
     setuptools-scm
@@ -54,7 +54,7 @@ buildPythonPackage rec {
     "dask"
   ];
 
-  propagatedBuildInputs = [
+  dependencies = [
     click
     cloudpickle
     dask
diff --git a/pkgs/development/python-modules/dj-rest-auth/default.nix b/pkgs/development/python-modules/dj-rest-auth/default.nix
index e415977d8637..49e0c49e75bb 100644
--- a/pkgs/development/python-modules/dj-rest-auth/default.nix
+++ b/pkgs/development/python-modules/dj-rest-auth/default.nix
@@ -1,61 +1,46 @@
-{ lib
-, buildPythonPackage
-, django
-, django-allauth
-, djangorestframework
-, djangorestframework-simplejwt
-, fetchFromGitHub
-, fetchpatch
-, python
-, pythonOlder
-, responses
-, setuptools
-, unittest-xml-reporting
+{
+  lib,
+  buildPythonPackage,
+  django,
+  django-allauth,
+  djangorestframework,
+  djangorestframework-simplejwt,
+  fetchFromGitHub,
+  python,
+  pythonOlder,
+  responses,
+  setuptools,
+  unittest-xml-reporting,
 }:
 
 buildPythonPackage rec {
   pname = "dj-rest-auth";
-  version = "5.0.2";
+  version = "6.0.0";
   pyproject = true;
 
-  disabled = pythonOlder "3.6";
+  disabled = pythonOlder "3.8";
 
   src = fetchFromGitHub {
     owner = "iMerica";
     repo = "dj-rest-auth";
     rev = "refs/tags/${version}";
-    hash = "sha256-TqeNpxXn+v89fEiJ4AVNhp8blCfYQKFQfYmZ6/QlRbQ=";
+    hash = "sha256-fNy1uN3oH54Wd9+EqYpiV0ot1MbSSC7TZoAARQeR81s=";
   };
 
-  patches = [
-    # https://github.com/iMerica/dj-rest-auth/pull/597
-    (fetchpatch {
-      name = "disable-email-confirmation-ratelimit-in-tests-to-support-new-allauth.patch";
-      url = "https://github.com/iMerica/dj-rest-auth/commit/c8f19e18a93f4959da875f9c5cdd32f7d9363bba.patch";
-      hash = "sha256-Y/YBjV+c5Gw1wMR5r/4VnyV/ewUVG0z4pjY/MB4ca9Y=";
-    })
-  ];
-
   postPatch = ''
     substituteInPlace setup.py \
-      --replace "==" ">="
+      --replace-fail "==" ">="
+    substituteInPlace dj_rest_auth/tests/test_api.py \
+      --replace-fail "assertEquals" "assertEqual"
   '';
 
-  nativeBuildInputs = [
-    setuptools
-  ];
+  build-system = [ setuptools ];
 
-  buildInputs = [
-    django
-  ];
+  buildInputs = [ django ];
 
-  propagatedBuildInputs = [
-    djangorestframework
-  ];
+  dependencies = [ djangorestframework ];
 
-  passthru.optional-dependencies.with_social = [
-    django-allauth
-  ];
+  passthru.optional-dependencies.with_social = [ django-allauth ];
 
   nativeCheckInputs = [
     djangorestframework-simplejwt
@@ -66,7 +51,7 @@ buildPythonPackage rec {
   preCheck = ''
     # Test connects to graph.facebook.com
     substituteInPlace dj_rest_auth/tests/test_serializers.py \
-      --replace "def test_http_error" "def dont_test_http_error"
+      --replace-fail "def test_http_error" "def dont_test_http_error"
   '';
 
   checkPhase = ''
@@ -75,9 +60,7 @@ buildPythonPackage rec {
     runHook postCheck
   '';
 
-  pythonImportsCheck = [
-    "dj_rest_auth"
-  ];
+  pythonImportsCheck = [ "dj_rest_auth" ];
 
   meta = with lib; {
     description = "Authentication for Django Rest Framework";
diff --git a/pkgs/development/python-modules/django-allauth/default.nix b/pkgs/development/python-modules/django-allauth/default.nix
index 8a1f6dc8ac06..6046f1964d8f 100644
--- a/pkgs/development/python-modules/django-allauth/default.nix
+++ b/pkgs/development/python-modules/django-allauth/default.nix
@@ -2,10 +2,14 @@
 , buildPythonPackage
 , fetchFromGitHub
 , pythonOlder
+, python
 
 # build-system
 , setuptools
 
+# build-time dependencies
+, gettext
+
 # dependencies
 , django
 , python3-openid
@@ -41,6 +45,7 @@ buildPythonPackage rec {
   };
 
   nativeBuildInputs = [
+    gettext
     setuptools
   ];
 
@@ -52,6 +57,8 @@ buildPythonPackage rec {
     requests-oauthlib
   ] ++ pyjwt.optional-dependencies.crypto;
 
+  preBuild = "${python.interpreter} -m django compilemessages";
+
   passthru.optional-dependencies = {
     saml = [
       python3-saml
diff --git a/pkgs/development/python-modules/django-auditlog/default.nix b/pkgs/development/python-modules/django-auditlog/default.nix
index 4a176b0b14ec..ef7fbb133f47 100644
--- a/pkgs/development/python-modules/django-auditlog/default.nix
+++ b/pkgs/development/python-modules/django-auditlog/default.nix
@@ -14,14 +14,14 @@
 
 buildPythonPackage rec {
   pname = "django-auditlog";
-  version = "2.2.2";
+  version = "3.0.0";
   pyproject = true;
 
   src = fetchFromGitHub {
     owner = "jazzband";
-    repo = pname;
+    repo = "django-auditlog";
     rev = "v${version}";
-    hash = "sha256-QHSGqtpkOgltAg+RlG/Ik3DfEjtSWt45sqlD+Zw4Bh0=";
+    hash = "sha256-SJ4GJp/gVIxiLbdAj3ZS+weevqIDZCMQnW/pqc5liJU=";
   };
 
   nativeBuildInputs = [
@@ -46,9 +46,11 @@ buildPythonPackage rec {
   checkPhase = ''
     runHook preCheck
 
+    # strip escape codes otherwise tests fail
+    # see https://github.com/jazzband/django-auditlog/issues/644
     TEST_DB_USER=$PGUSER \
     TEST_DB_HOST=$PGHOST \
-    ${python.interpreter} runtests.py
+    ${python.interpreter} runtests.py | cat
 
     runHook postCheck
   '';
diff --git a/pkgs/development/python-modules/django-auth-ldap/default.nix b/pkgs/development/python-modules/django-auth-ldap/default.nix
index 3983cf3f3661..b2f5fa74b41c 100644
--- a/pkgs/development/python-modules/django-auth-ldap/default.nix
+++ b/pkgs/development/python-modules/django-auth-ldap/default.nix
@@ -17,14 +17,14 @@
 
 buildPythonPackage rec {
   pname = "django-auth-ldap";
-  version = "4.7.0";
+  version = "4.8.0";
   format = "pyproject";
 
   disabled = isPy27;
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-jeplN2uLL6G+7lI0h2DjCC5kKTmlA4y+iBpeY4G2W4o=";
+    hash = "sha256-YEJQk43cn9phnyR8elmwsvBuU6fT9GoVbyiqMN1xpzg=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/python-modules/django-bootstrap3/default.nix b/pkgs/development/python-modules/django-bootstrap3/default.nix
index 6a29fc7630aa..4ac4695bd16c 100644
--- a/pkgs/development/python-modules/django-bootstrap3/default.nix
+++ b/pkgs/development/python-modules/django-bootstrap3/default.nix
@@ -16,14 +16,14 @@
 
 buildPythonPackage rec {
   pname = "django-bootstrap3";
-  version = "23.6";
+  version = "24.2";
   format = "pyproject";
 
   src = fetchFromGitHub {
     owner = "zostera";
     repo = "django-bootstrap3";
     rev = "refs/tags/v${version}";
-    hash = "sha256-qqG9w0bQYoQgWXCks/WwwQVoh2DhIMLaFXDQ4z6D84g=";
+    hash = "sha256-5nBJ5vfsoGoaG1s3K1hCHcSnGf51ZirYYg+uJGsBmG8=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/python-modules/django-bootstrap4/default.nix b/pkgs/development/python-modules/django-bootstrap4/default.nix
index b0a11d9044d3..d148162b9ab0 100644
--- a/pkgs/development/python-modules/django-bootstrap4/default.nix
+++ b/pkgs/development/python-modules/django-bootstrap4/default.nix
@@ -18,14 +18,14 @@
 
 buildPythonPackage rec {
   pname = "django-bootstrap4";
-  version = "24.1";
+  version = "24.3";
   format = "pyproject";
 
   src = fetchFromGitHub {
     owner = "zostera";
     repo = "django-bootstrap4";
     rev = "refs/tags/v${version}";
-    hash = "sha256-TCHie5h/VRJ9NSg7wKnWotFHm328kxIp+xFXEa8wL1c=";
+    hash = "sha256-sZY/0f1PbYQu9fN65H6H7xLvsdE9AXK0cMt9TyAKuUw=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/python-modules/django-bootstrap5/default.nix b/pkgs/development/python-modules/django-bootstrap5/default.nix
index 76405e9e5cd6..ac983c5ac5e4 100644
--- a/pkgs/development/python-modules/django-bootstrap5/default.nix
+++ b/pkgs/development/python-modules/django-bootstrap5/default.nix
@@ -4,35 +4,53 @@
 , pythonOlder
 
 # build-system
-, hatchling
+, setuptools
+, setuptools-scm
 
 # dependencies
+, django
+
+# tests
 , beautifulsoup4
 , pillow
-, django
+, pytest-django
+, pytestCheckHook
 }:
 
 buildPythonPackage rec {
   pname = "django-bootstrap5";
-  version = "23.3";
-  format = "pyproject";
+  version = "24.1";
+  pyproject = true;
+
   disabled = pythonOlder "3.7";
 
   src = fetchFromGitHub {
     owner = "zostera";
     repo = "django-bootstrap5";
     rev = "v${version}";
-    hash = "sha256-FIwDyZ5I/FSaEiQKRfanzAGij86u8y85Wal0B4TrI7c=";
+    hash = "sha256-JbmwEPkj34tsK3tUtb56FPjU0emwERVXEc4fzlepdXY=";
   };
 
-  nativeBuildInputs = [
-    hatchling
+  build-system = [
+    setuptools
+    setuptools-scm
   ];
 
-  propagatedBuildInputs = [
-    django
+  nativeCheckInputs = [
     beautifulsoup4
+    (django.override { withGdal = true; })
     pillow
+    pytest-django
+    pytestCheckHook
+  ];
+
+  preCheck = ''
+    export DJANGO_SETTINGS_MODULE=tests.app.settings
+  '';
+
+  disabledTests = [
+    # urllib.error.URLError: <urlopen error [Errno -3] Temporary failure in name resolution>
+    "test_get_bootstrap_setting"
   ];
 
   pythonImportsCheck = [
diff --git a/pkgs/development/python-modules/django-configurations/default.nix b/pkgs/development/python-modules/django-configurations/default.nix
index 087ffab30139..53d75bed9bfa 100644
--- a/pkgs/development/python-modules/django-configurations/default.nix
+++ b/pkgs/development/python-modules/django-configurations/default.nix
@@ -14,14 +14,14 @@
 
 buildPythonPackage rec {
   pname = "django-configurations";
-  version = "2.5";
+  version = "2.5.1";
   format = "setuptools";
 
   disabled = pythonOlder "3.6";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-Y/olLEDciOoXuLkPX0oxonJuWGrLH/Dtx0wijGHxnl0=";
+    hash = "sha256-blCDdX4rvfm7eFBWdTa5apNRX2sXUD10ko/2KNsuDpQ=";
   };
 
   buildInputs = [
diff --git a/pkgs/development/python-modules/django-extensions/default.nix b/pkgs/development/python-modules/django-extensions/default.nix
index 5e77c5bfc590..6581fcfbb8d6 100644
--- a/pkgs/development/python-modules/django-extensions/default.nix
+++ b/pkgs/development/python-modules/django-extensions/default.nix
@@ -1,13 +1,21 @@
 { lib
 , buildPythonPackage
 , fetchFromGitHub
+, pythonAtLeast
+
+# build-system
+, setuptools
+
+# dependencies
 , django
+
+# tests
 , factory-boy
 , mock
 , pip
 , pygments
-, pytest-django
 , pytestCheckHook
+, pytest-django
 , shortuuid
 , vobject
 , werkzeug
@@ -16,7 +24,11 @@
 buildPythonPackage rec {
   pname = "django-extensions";
   version = "3.2.3";
-  format = "setuptools";
+  pyproject = true;
+
+  # https://github.com/django-extensions/django-extensions/issues/1831
+  # Requires asyncore, which was dropped in 3.12
+  disabled = pythonAtLeast "3.12";
 
   src = fetchFromGitHub {
     owner = pname;
@@ -30,7 +42,11 @@ buildPythonPackage rec {
       --replace "--cov=django_extensions --cov-report html --cov-report term" ""
   '';
 
-  propagatedBuildInputs = [
+  build-system = [
+    setuptools
+  ];
+
+  dependencies = [
     django
   ];
 
diff --git a/pkgs/development/python-modules/django-hierarkey/default.nix b/pkgs/development/python-modules/django-hierarkey/default.nix
index 77f33f0b526c..7f78dd604047 100644
--- a/pkgs/development/python-modules/django-hierarkey/default.nix
+++ b/pkgs/development/python-modules/django-hierarkey/default.nix
@@ -2,6 +2,9 @@
 , buildPythonPackage
 , fetchFromGitHub
 
+# build-system
+, setuptools
+
 # propagates
 , python-dateutil
 
@@ -13,18 +16,21 @@
 
 buildPythonPackage rec {
   pname = "django-hierarkey";
-  version = "1.1.0";
-  format = "setuptools";
+  version = "1.2.0";
+  pyproject = true;
 
   src = fetchFromGitHub {
     owner = "raphaelm";
     repo = "django-hierarkey";
-    # https://github.com/raphaelm/django-hierarkey/commit/c81ace02ca404a8756e2931bb6faf55b6365e140
-    rev = "c81ace02ca404a8756e2931bb6faf55b6365e140";
-    hash = "sha256-sCARyTjuuAUptlOsFmApnsQpcksP+uYnq0lukXDMcuk=";
+    rev = "refs/tags/${version}";
+    hash = "sha256-1LSH9GwoNF3NrDVNUIHDAVsktyKIprDgB5XlIHeM3fM=";
   };
 
-  propagatedBuildInputs = [
+  build-system = [
+    setuptools
+  ];
+
+  dependencies = [
     python-dateutil
   ];
 
diff --git a/pkgs/development/python-modules/django-ipware/default.nix b/pkgs/development/python-modules/django-ipware/default.nix
index 26b4cc7308b8..1f5c23aa1a31 100644
--- a/pkgs/development/python-modules/django-ipware/default.nix
+++ b/pkgs/development/python-modules/django-ipware/default.nix
@@ -7,14 +7,14 @@
 
 buildPythonPackage rec {
   pname = "django-ipware";
-  version = "6.0.5";
+  version = "7.0.1";
   format = "setuptools";
 
   disabled = pythonOlder "3.7";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-s54nQDKH1r6wUT5pQCQBfbpY0Sn9QQoQFKyKFYTnP84=";
+    hash = "sha256-2exD0r983yFv7Y1JSghN61dhpUhgpTsudDRqTzhM/0c=";
   };
 
   propagatedBuildInputs = [ django ];
diff --git a/pkgs/development/python-modules/django-mailman3/default.nix b/pkgs/development/python-modules/django-mailman3/default.nix
index 026788caf646..094ca8a6d91d 100644
--- a/pkgs/development/python-modules/django-mailman3/default.nix
+++ b/pkgs/development/python-modules/django-mailman3/default.nix
@@ -2,7 +2,10 @@
 , buildPythonPackage
 , fetchPypi
 
-# propagates
+# build-system
+, pdm-backend
+
+# dependencies
 , django-gravatar2
 , django-allauth
 , mailmanclient
@@ -17,20 +20,20 @@
 
 buildPythonPackage rec {
   pname = "django-mailman3";
-  version = "1.3.11";
-  format = "setuptools";
+  version = "1.3.12";
+  pyproject = true;
 
   src = fetchPypi {
-    inherit pname version;
-    hash = "sha256-uIjJaZHWL2evj+oISLprvKWT5Sm5f2EKgUD1twL1VbQ=";
+    pname = "django_mailman3";
+    inherit version;
+    hash = "sha256-MnQlT5ElNnStLUKyOXnI7ZDDaBwfp+h9tbOC+cwB0es=";
   };
 
-  postPatch = ''
-    substituteInPlace setup.py \
-      --replace 'django>=3.2,<4.2' 'django>=3.2,<4.3'
-  '';
+  build-system = [
+    pdm-backend
+  ];
 
-  propagatedBuildInputs = [
+  dependencies = [
     django-allauth
     django-gravatar2
     mailmanclient
@@ -43,6 +46,10 @@ buildPythonPackage rec {
     pytestCheckHook
   ];
 
+  preCheck = ''
+    export DJANGO_SETTINGS_MODULE=django_mailman3.tests.settings_test
+  '';
+
   pythonImportsCheck = [
     "django_mailman3"
   ];
diff --git a/pkgs/development/python-modules/django-model-utils/default.nix b/pkgs/development/python-modules/django-model-utils/default.nix
index 0e39d901aae8..38d03dca2010 100644
--- a/pkgs/development/python-modules/django-model-utils/default.nix
+++ b/pkgs/development/python-modules/django-model-utils/default.nix
@@ -8,7 +8,7 @@
 
 buildPythonPackage rec {
   pname = "django-model-utils";
-  version = "4.5.0";
+  version = "4.5.1";
   pyproject = true;
 
   disabled = pythonOlder "3.8";
@@ -17,7 +17,7 @@ buildPythonPackage rec {
     owner = "jazzband";
     repo = "django-model-utils";
     rev = "refs/tags/${version}";
-    hash = "sha256-ZEnDk4kCXyhLvq3CZTK/zP3IK6BsNRqbkfqKAuU6Mfk=";
+    hash = "sha256-GaBTCrEwEkJyVeY5YVptPioYcmivyQtBKjs+TgC9IqA=";
   };
 
   build-system = [
diff --git a/pkgs/development/python-modules/django-mysql/default.nix b/pkgs/development/python-modules/django-mysql/default.nix
index 9db6be33ed0d..a363bad3b00c 100644
--- a/pkgs/development/python-modules/django-mysql/default.nix
+++ b/pkgs/development/python-modules/django-mysql/default.nix
@@ -7,7 +7,6 @@
 
 # dependencies
 , django
-, mysqlclient
 
 # tests
 , pytest-django
@@ -16,23 +15,22 @@
 
 buildPythonPackage rec {
   pname = "django-mysql";
-  version = "4.12.0";
+  version = "4.13.0";
   pyproject = true;
 
   src = fetchFromGitHub {
     owner = "adamchainz";
     repo = "django-mysql";
     rev = "refs/tags/${version}";
-    hash = "sha256-AieI6zUPFXQsrvoms5bu/Bb3J+DvfLA4rCCsjhYBEZQ=";
+    hash = "sha256-hIvkLLv9R23u+JC6t/zwbMvmgLMstYp0ytuSqNiohJg=";
   };
 
-  nativeBuildInputs = [
+  build-system = [
     setuptools
   ];
 
-  buildInputs = [
+  dependencies = [
     django
-    mysqlclient
   ];
 
   doCheck = false; # requires mysql/mariadb server
@@ -44,6 +42,10 @@ buildPythonPackage rec {
     pytestCheckHook
   ];
 
+  pythonImportsCheck = [
+    "django_mysql"
+  ];
+
   meta = with lib; {
     changelog = "https://github.com/adamchainz/django-mysql/blob/${version}/docs/changelog.rst";
     description = "Extensions to Django for use with MySQL/MariaD";
diff --git a/pkgs/development/python-modules/django-otp/default.nix b/pkgs/development/python-modules/django-otp/default.nix
index c1078160b6eb..dc73a461b793 100644
--- a/pkgs/development/python-modules/django-otp/default.nix
+++ b/pkgs/development/python-modules/django-otp/default.nix
@@ -11,14 +11,14 @@
 
 buildPythonPackage rec {
   pname = "django-otp";
-  version = "1.3.0post1";
+  version = "1.5.0";
   pyproject = true;
 
   src = fetchFromGitHub {
     owner = "django-otp";
     repo = "django-otp";
     rev = "v${version}";
-    hash = "sha256-Q8YTCYERyoAXenSiDabxuxaWiD6ZeJKKKgaR/Rg3y20=";
+    hash = "sha256-c0Yr41S1LFBzcDIK2etOP3rYcCPaThDs+XGiw4WP/ks=";
   };
 
   build-system = [
diff --git a/pkgs/development/python-modules/django-statici18n/default.nix b/pkgs/development/python-modules/django-statici18n/default.nix
index 8ce7bc0340a9..5638443a2eea 100644
--- a/pkgs/development/python-modules/django-statici18n/default.nix
+++ b/pkgs/development/python-modules/django-statici18n/default.nix
@@ -16,15 +16,14 @@
 
 buildPythonPackage rec {
   pname = "django-statici18n";
-  version = "2.4.0";
+  version = "2.5.0";
   pyproject = true;
 
   src = fetchFromGitHub {
     owner = "zyegfryed";
     repo = "django-statici18n";
-    # https://github.com/zyegfryed/django-statici18n/issues/59
-    rev = "9b83a8f0f2e625dd5f56d53cfe4e07aca9479ab6";
-    hash = "sha256-KrIlWmN7um9ad2avfANOza579bjYkxTo9F0UFpvLu3A=";
+    rev = "refs/tags/v${version}";
+    hash = "sha256-n6HqHcXvz2ihwN+gJr5P+/Yt4RpuOu2yAjo9fiNZB54=";
   };
 
   build-system = [
diff --git a/pkgs/development/python-modules/django/4.nix b/pkgs/development/python-modules/django/4.nix
index bc1fcbdfe9c8..4ee0ab76175e 100644
--- a/pkgs/development/python-modules/django/4.nix
+++ b/pkgs/development/python-modules/django/4.nix
@@ -1,8 +1,7 @@
 { lib
 , stdenv
 , buildPythonPackage
-, fetchPypi
-, fetchpatch2
+, fetchFromGitHub
 , pythonAtLeast
 , pythonOlder
 , substituteAll
@@ -44,15 +43,16 @@
 
 buildPythonPackage rec {
   pname = "django";
-  version = "4.2.11";
+  version = "4.2.12";
   format = "pyproject";
 
   disabled = pythonOlder "3.8";
 
-  src = fetchPypi {
-    pname = "Django";
-    inherit version;
-    hash = "sha256-bm/z2y2N0MmGtO7IVUyOT5GbXB/2KltDkMF6/y7W5cQ=";
+  src = fetchFromGitHub {
+    owner = "django";
+    repo = "django";
+    rev = "refs/tags/${version}";
+    hash = "sha256-n6esWUpZpCP4J4bNckNKJ9E61qFjTPS7XF+WgxNS2JE=";
   };
 
   patches = [
@@ -64,13 +64,6 @@ buildPythonPackage rec {
     # and disable failing tests
     ./django_4_tests.patch
 
-    (fetchpatch2 {
-      # https://github.com/django/django/pull/17979
-      name = "django-mime-utf8-surrogates.patch";
-      url = "https://github.com/django/django/commit/0d3ddcaf2c74638a32781f361d467af572ced95f.patch";
-      hash = "sha256-AoIFvehBsXIrzIlCsqOZ++RqtDFl/H+zXqA25OMQr7g=";
-    })
-
   ] ++ lib.optionals withGdal [
     (substituteAll {
       src = ./django_4_set_geos_gdal_lib.patch;
diff --git a/pkgs/development/python-modules/django/5.nix b/pkgs/development/python-modules/django/5.nix
index fc4ba20245fc..637bbb652869 100644
--- a/pkgs/development/python-modules/django/5.nix
+++ b/pkgs/development/python-modules/django/5.nix
@@ -1,7 +1,7 @@
 { lib
 , stdenv
 , buildPythonPackage
-, fetchPypi
+, fetchFromGitHub
 , fetchpatch2
 , pythonAtLeast
 , pythonOlder
@@ -44,15 +44,16 @@
 
 buildPythonPackage rec {
   pname = "django";
-  version = "5.0.4";
+  version = "5.0.5";
   pyproject = true;
 
   disabled = pythonOlder "3.10";
 
-  src = fetchPypi {
-    pname = "Django";
-    inherit version;
-    hash = "sha256-S9AajIMLt3qKOw59iyW4h+U2rReoG6Lc5UdhNcczEr0=";
+  src = fetchFromGitHub {
+    owner = "django";
+    repo = "django";
+    rev = "refs/tags/${version}";
+    hash = "sha256-0/AbPmTl38E9BpHVKs0r79fISjEa1d4XO/se1pA7zxg=";
   };
 
   patches = [
@@ -65,13 +66,6 @@ buildPythonPackage rec {
     # disable test that excpects timezone issues
     ./django_5_disable_failing_tests.patch
 
-    (fetchpatch2 {
-      # https://github.com/django/django/pull/17979
-      name = "django-mime-utf8-surrogates.patch";
-      url = "https://github.com/django/django/commit/b231bcd19e57267ce1fc21d42d46f0b65fdcfcf8.patch";
-      hash = "sha256-HhmRwi24VkoPoh+NygAThCoMywoMwrLijU4ZsDfVU34=";
-    })
-
   ] ++ lib.optionals withGdal [
     (substituteAll {
       src = ./django_5_set_geos_gdal_lib.patch;
diff --git a/pkgs/development/python-modules/dkimpy/default.nix b/pkgs/development/python-modules/dkimpy/default.nix
index 6b639f8cc8c3..541c3bef56e9 100644
--- a/pkgs/development/python-modules/dkimpy/default.nix
+++ b/pkgs/development/python-modules/dkimpy/default.nix
@@ -3,12 +3,12 @@
 
 buildPythonPackage rec {
   pname = "dkimpy";
-  version = "1.1.5";
+  version = "1.1.6";
   format = "setuptools";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-mmZ/hmS3Lrn4qhJQsHV8w5gqto9wxIrzkxe1jPYvLXU=";
+    hash = "sha256-DOctlh9EPo+fBWlLNUVC3uU04I4rjFtgxi1drKfB2g8=";
 };
 
   nativeCheckInputs = [ pytest ];
diff --git a/pkgs/development/python-modules/dm-control/default.nix b/pkgs/development/python-modules/dm-control/default.nix
new file mode 100644
index 000000000000..6418163b6bc7
--- /dev/null
+++ b/pkgs/development/python-modules/dm-control/default.nix
@@ -0,0 +1,98 @@
+{ lib
+, buildPythonPackage
+, pythonOlder
+, fetchFromGitHub
+, absl-py
+, mujoco
+, pyparsing
+, pythonRelaxDepsHook
+, setuptools
+, wheel
+, dm-env
+, dm-tree
+, fsspec
+, glfw
+, h5py
+, lxml
+, mock
+, nose
+, nose-xunitmp
+, numpy
+, pillow
+, protobuf
+, pyopengl
+, requests
+, scipy
+, tqdm
+, etils
+}:
+
+buildPythonPackage rec {
+  pname = "dm-control";
+  version = "1.0.19";
+  pyproject = true;
+
+  disabled = pythonOlder "3.8";
+
+  src = fetchFromGitHub {
+    owner = "google-deepmind";
+    repo = "dm_control";
+    rev = "refs/tags/${version}";
+    hash = "sha256-q9hY/icvc1tPI0xBYxExc2a+gv0i6utaB4GBnJwQPCw=";
+  };
+
+  build-system = [
+    absl-py
+    mujoco
+    pyparsing
+    pythonRelaxDepsHook
+    setuptools
+    wheel
+  ];
+
+  pythonRemoveDeps = [
+    # Unpackaged
+    "labmaze"
+  ];
+
+  dependencies = [
+    absl-py
+    dm-env
+    dm-tree
+    fsspec
+    glfw
+    h5py
+    lxml
+    mock
+    mujoco
+    nose
+    nose-xunitmp
+    numpy
+    pillow
+    protobuf
+    pyopengl
+    pyparsing
+    requests
+    scipy
+    setuptools
+    tqdm
+  ] ++ etils.optional-dependencies.epath;
+
+  pythonImportsCheck = [
+    "dm_control"
+  ];
+
+  # The installed library clashes with the `dm_control` directory remaining in the source path.
+  # Usually, we get around this by `rm -rf` the python source files to ensure that the installed package is used.
+  # Here, we cannot do that as it would also remove the tests which are also in the `dm_control` directory.
+  # See https://github.com/google-deepmind/dm_control/issues/6
+  doCheck = false;
+
+  meta = {
+    changelog = "https://github.com/google-deepmind/dm_control/releases/tag/${version}";
+    description = "Google DeepMind's software stack for physics-based simulation and Reinforcement Learning environments, using MuJoCo";
+    homepage = "https://github.com/google-deepmind/dm_control";
+    license = lib.licenses.asl20;
+    maintainers = with lib.maintainers; [ GaetanLepage ];
+  };
+}
diff --git a/pkgs/development/python-modules/dnfile/default.nix b/pkgs/development/python-modules/dnfile/default.nix
index 40b97b6b6d8a..950f1bb45672 100644
--- a/pkgs/development/python-modules/dnfile/default.nix
+++ b/pkgs/development/python-modules/dnfile/default.nix
@@ -40,7 +40,7 @@ buildPythonPackage rec {
 
   meta = with lib; {
     description = "Module to parse .NET executable files";
-    homepage = "hhttps://github.com/malwarefrank/dnfile";
+    homepage = "https://github.com/malwarefrank/dnfile";
     changelog = "https://github.com/malwarefrank/dnfile/blob/v${version}/HISTORY.rst";
     license = with licenses; [ mit ];
     maintainers = with maintainers; [ fab ];
diff --git a/pkgs/development/python-modules/docformatter/default.nix b/pkgs/development/python-modules/docformatter/default.nix
index 517b777735d7..02b2108541e4 100644
--- a/pkgs/development/python-modules/docformatter/default.nix
+++ b/pkgs/development/python-modules/docformatter/default.nix
@@ -51,6 +51,12 @@ buildPythonPackage rec {
     pytestCheckHook
   ];
 
+  # Disable failing tests until https://github.com/PyCQA/docformatter/issues/274 is fixed upstream
+  disabledTests = [
+    "test_do_format_code.py"
+    "test_docformatter.py"
+  ];
+
   pythonImportsCheck = [ "docformatter" ];
 
   meta = {
diff --git a/pkgs/development/python-modules/docplex/default.nix b/pkgs/development/python-modules/docplex/default.nix
index 2f5c485cf631..dde6772864b3 100644
--- a/pkgs/development/python-modules/docplex/default.nix
+++ b/pkgs/development/python-modules/docplex/default.nix
@@ -2,6 +2,7 @@
 , buildPythonPackage
 , fetchPypi
 , isPy27
+, setuptools
 , futures ? null
 , docloud
 , requests
@@ -9,15 +10,24 @@
 
 buildPythonPackage rec {
   pname = "docplex";
-  version = "2.25.236";
-  format = "setuptools";
+  version = "2.27.239";
+  pyproject = true;
 
   # No source available from official repo
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-JWkUtMAROk4cePMuogx9dtyO/ihv6JAnDnXPrVD+UQ8=";
+    hash = "sha256-Ug5+jDBBbamqd0JebzHvjLZoTRRPYWQiJl6g8BK0aMQ=";
   };
 
+  postPatch = ''
+    substituteInPlace pyproject.toml \
+      --replace-fail "setuptools~=68.2.2" "setuptools>=68.2.2"
+  '';
+
+  build-system = [
+    setuptools
+  ];
+
   propagatedBuildInputs = [
     docloud
     requests
diff --git a/pkgs/development/python-modules/docstr-coverage/default.nix b/pkgs/development/python-modules/docstr-coverage/default.nix
index b9a6080fa7df..603e826908b9 100644
--- a/pkgs/development/python-modules/docstr-coverage/default.nix
+++ b/pkgs/development/python-modules/docstr-coverage/default.nix
@@ -8,7 +8,7 @@
 , pytest-mock
 }:
 let
-  version = "2.3.1";
+  version = "2.3.2";
 in
 buildPythonPackage {
   pname = "docstr-coverage";
@@ -18,7 +18,7 @@ buildPythonPackage {
     owner = "HunterMcGushion";
     repo = "docstr_coverage";
     rev = "refs/tags/v${version}";
-    hash = "sha256-QmQE6KZ2NdXKQun+uletxYPktWvfkrj6NPAVl/mmpAY=";
+    hash = "sha256-k1ny4fWS+CmgLNWPlYPsscjei2UZ6h8QJrZSay5abck=";
   };
 
   propagatedBuildInputs = [ click pyyaml tqdm ];
diff --git a/pkgs/development/python-modules/docutils/default.nix b/pkgs/development/python-modules/docutils/default.nix
index 136f679fcf6e..fdf766f37f05 100644
--- a/pkgs/development/python-modules/docutils/default.nix
+++ b/pkgs/development/python-modules/docutils/default.nix
@@ -1,24 +1,39 @@
 { stdenv
 , lib
-, fetchPypi
+, fetchFromRepoOrCz
 , buildPythonPackage
+, flit-core
+, pillow
 , python
 , pythonOlder
 }:
 
-buildPythonPackage rec {
+# Note: this package is used to build LLVM’s documentation, which is part of the Darwin stdenv.
+# It cannot use `fetchgit` because that would pull curl into the bootstrap, which is disallowed.
+
+let self = buildPythonPackage rec {
   pname = "docutils";
-  version = "0.20.1";
+  version = "0.21.2";
+  pyproject = true;
 
   disabled = pythonOlder "3.7";
 
-  format = "setuptools";
-
-  src = fetchPypi {
-    inherit pname version;
-    hash = "sha256-8IpOJ2w6FYOobc4+NKuj/gTQK7ot1R7RYQYkToqSPjs=";
+  src = fetchFromRepoOrCz {
+    repo = "docutils";
+    rev = "docutils-${version}";
+    hash = "sha256-Q+9yW+BYUEvPYV504368JsAoKKoaTZTeKh4tVeiNv5Y=";
   };
 
+  build-system = [ flit-core ];
+
+  # infinite recursion via sphinx and pillow
+  doCheck = false;
+  passthru.tests.pytest = self.overridePythonAttrs { doCheck = true; };
+
+  nativeCheckInputs = [
+    pillow
+  ];
+
   # Only Darwin needs LANG, but we could set it in general.
   # It's done here conditionally to prevent mass-rebuilds.
   checkPhase = lib.optionalString stdenv.isDarwin ''LANG="en_US.UTF-8" LC_ALL="en_US.UTF-8" '' + ''
@@ -38,4 +53,5 @@ buildPythonPackage rec {
     license = with licenses; [ publicDomain bsd2 psfl gpl3Plus ];
     maintainers = with maintainers; [ AndersonTorres ];
   };
-}
+};
+in self
diff --git a/pkgs/development/python-modules/dogpile-cache/default.nix b/pkgs/development/python-modules/dogpile-cache/default.nix
index 51d799b90f13..e03a72626a97 100644
--- a/pkgs/development/python-modules/dogpile-cache/default.nix
+++ b/pkgs/development/python-modules/dogpile-cache/default.nix
@@ -12,7 +12,7 @@
 
 buildPythonPackage rec {
   pname = "dogpile-cache";
-  version = "1.3.2";
+  version = "1.3.3";
   format = "pyproject";
 
   disabled = pythonOlder "3.6";
@@ -20,7 +20,7 @@ buildPythonPackage rec {
   src = fetchPypi {
     pname = "dogpile.cache";
     inherit version;
-    hash = "sha256-T3HcAzOtNRycb3BPW6Kje/Ucbu0EN9Gt9W4HWVmv5js=";
+    hash = "sha256-+EuO0LD7KX0VEFVEf6jcr3uuVm1Nve/s3MHzdmKrWIs=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/python-modules/dogtail/default.nix b/pkgs/development/python-modules/dogtail/default.nix
index d0b7e983a099..5186d9567058 100644
--- a/pkgs/development/python-modules/dogtail/default.nix
+++ b/pkgs/development/python-modules/dogtail/default.nix
@@ -11,7 +11,7 @@
 , fetchurl
 , dbus
 , xvfb-run
-, wrapGAppsHook
+, wrapGAppsHook3
 # , fetchPypi
 }:
 
@@ -36,7 +36,7 @@ buildPythonPackage {
     ./nix-support.patch
   ];
 
-  nativeBuildInputs = [ gobject-introspection dbus xvfb-run wrapGAppsHook ]; # for setup hooks
+  nativeBuildInputs = [ gobject-introspection dbus xvfb-run wrapGAppsHook3 ]; # for setup hooks
   propagatedBuildInputs = [ at-spi2-core gtk3 pygobject3 pyatspi pycairo ];
 
   checkPhase = ''
diff --git a/pkgs/development/python-modules/domeneshop/default.nix b/pkgs/development/python-modules/domeneshop/default.nix
index ab01424c0940..c48d7603a045 100644
--- a/pkgs/development/python-modules/domeneshop/default.nix
+++ b/pkgs/development/python-modules/domeneshop/default.nix
@@ -1,25 +1,19 @@
 { lib
 , buildPythonPackage
 , fetchPypi
-, pythonOlder
 , setuptools
 , urllib3
-, pyopenssl
-, cryptography
-, idna
 , certifi
 }:
 
 buildPythonPackage rec {
   pname = "domeneshop";
-  version = "0.4.3";
+  version = "0.4.4";
   pyproject = true;
 
-  disabled = pythonOlder "3.4";
-
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-kL0X1mEsmVWqnq5NgsMBxeAu48zjmi3muhZYryTCOMo=";
+    hash = "sha256-UCxIDnhIAkxZ1oQXYRyAMdGgUsUZ6AlYXwsxL49TFAg=";
   };
 
   nativeBuildInputs = [
@@ -37,6 +31,7 @@ buildPythonPackage rec {
   pythonImportsCheck = [ "domeneshop" ];
 
   meta = with lib; {
+    changelog = "https://github.com/domeneshop/python-domeneshop/releases/tag/v${version}";
     description = "Python library for working with the Domeneshop API";
     homepage = "https://api.domeneshop.no/docs/";
     license = licenses.mit;
diff --git a/pkgs/development/python-modules/dramatiq/default.nix b/pkgs/development/python-modules/dramatiq/default.nix
index 35c2b79c438d..fb434bf0e8b4 100644
--- a/pkgs/development/python-modules/dramatiq/default.nix
+++ b/pkgs/development/python-modules/dramatiq/default.nix
@@ -15,7 +15,7 @@
 
 buildPythonPackage rec {
   pname = "dramatiq";
-  version = "1.16.0";
+  version = "1.17.0";
   format = "setuptools";
 
   disabled = pythonOlder "3.7";
@@ -24,7 +24,7 @@ buildPythonPackage rec {
     owner = "Bogdanp";
     repo = "dramatiq";
     rev = "refs/tags/v${version}";
-    hash = "sha256-gC1vWnG3zDuFT61i2VgDrP/qIwmGN5GkGv6EVxqUf4U=";
+    hash = "sha256-xKHTBo2AirxDXe/CLSqo++3AgxP4pVkGTNdgS5CCZ3c=";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/drawsvg/default.nix b/pkgs/development/python-modules/drawsvg/default.nix
new file mode 100644
index 000000000000..84fd89373ffc
--- /dev/null
+++ b/pkgs/development/python-modules/drawsvg/default.nix
@@ -0,0 +1,61 @@
+{
+  lib,
+  buildPythonPackage,
+  fetchFromGitHub,
+  setuptools,
+  pythonOlder,
+  numpy,
+  imageio,
+  cairosvg,
+  imageio-ffmpeg,
+  pwkit,
+}:
+
+buildPythonPackage rec {
+  pname = "drawsvg";
+  version = "2.3.0";
+  pyproject = true;
+
+  disabled = pythonOlder "3.9";
+
+  src = fetchFromGitHub {
+    owner = "cduck";
+    repo = "drawsvg";
+    rev = "refs/tags/${version}";
+    hash = "sha256-LoA5yYeHO4GqS3dk7EMg1ZC42HBgmM6rSfigWMc4yUQ=";
+  };
+
+  build-system = [ setuptools ];
+
+  passthru.optional-dependencies = {
+    all = [
+      numpy
+      imageio
+      cairosvg
+      imageio-ffmpeg
+      pwkit
+    ];
+    raster = [
+      numpy
+      imageio
+      cairosvg
+      imageio-ffmpeg
+    ];
+    color = [
+      pwkit
+      numpy
+    ];
+  };
+
+  # Module has no tests
+  doCheck = false;
+
+  pythonImportsCheck = [ "drawsvg" ];
+
+  meta = with lib; {
+    description = "Programmatically generate SVG (vector) images, animations, and interactive Jupyter widgets";
+    homepage = "https://github.com/cduck/drawsvg";
+    license = licenses.mit;
+    maintainers = with maintainers; [ fab ];
+  };
+}
diff --git a/pkgs/development/python-modules/drf-spectacular/default.nix b/pkgs/development/python-modules/drf-spectacular/default.nix
index f38a2fbf86bc..9b957b53d4a0 100644
--- a/pkgs/development/python-modules/drf-spectacular/default.nix
+++ b/pkgs/development/python-modules/drf-spectacular/default.nix
@@ -1,42 +1,47 @@
-{ lib
-, buildPythonPackage
-, fetchFromGitHub
-, fetchpatch
-, dj-rest-auth
-, django
-, django-allauth
-, django-filter
-, django-oauth-toolkit
-, django-polymorphic
-, django-rest-auth
-, django-rest-polymorphic
-, djangorestframework
-, djangorestframework-camel-case
-, djangorestframework-dataclasses
-, djangorestframework-recursive
-, djangorestframework-simplejwt
-, drf-jwt
-, drf-nested-routers
-, drf-spectacular-sidecar
-, inflection
-, jsonschema
-, psycopg2
-, pytest-django
-, pytestCheckHook
-, pyyaml
-, uritemplate
+{
+  lib,
+  buildPythonPackage,
+  dj-rest-auth,
+  django,
+  django-allauth,
+  django-filter,
+  django-oauth-toolkit,
+  django-polymorphic,
+  django-rest-auth,
+  django-rest-polymorphic,
+  djangorestframework,
+  djangorestframework-camel-case,
+  djangorestframework-dataclasses,
+  djangorestframework-recursive,
+  djangorestframework-simplejwt,
+  drf-jwt,
+  drf-nested-routers,
+  drf-spectacular-sidecar,
+  fetchFromGitHub,
+  fetchpatch,
+  inflection,
+  jsonschema,
+  psycopg2,
+  pytest-django,
+  pytestCheckHook,
+  pythonOlder,
+  pyyaml,
+  setuptools,
+  uritemplate,
 }:
 
 buildPythonPackage rec {
   pname = "drf-spectacular";
-  version = "0.27.1";
-  format = "setuptools";
+  version = "0.27.2";
+  pyproject = true;
+
+  disabled = pythonOlder "3.7";
 
   src = fetchFromGitHub {
     owner = "tfranzel";
     repo = "drf-spectacular";
     rev = "refs/tags/${version}";
-    hash = "sha256-R6rxEo9SNNziXRWB+01UUInParpGcFDIkDZtN4k+dFE=";
+    hash = "sha256-lOgFDkAY+PqSeyLSvWFT7KPVicSJZxd6yl17GAGHbRs=";
   };
 
   patches = [
@@ -47,7 +52,9 @@ buildPythonPackage rec {
     })
   ];
 
-  propagatedBuildInputs = [
+  build-system = [ setuptools ];
+
+  dependencies = [
     django
     djangorestframework
     inflection
@@ -77,10 +84,11 @@ buildPythonPackage rec {
   ];
 
   disabledTests = [
-    # requires django with gdal
+    # Test requires django with gdal
     "test_rest_framework_gis"
-    # outdated test artifact
+    # Outdated test artifact
     "test_pydantic_decoration"
+    "test_knox_auth_token"
   ];
 
   pythonImportsCheck = [ "drf_spectacular" ];
diff --git a/pkgs/development/python-modules/dronecan/default.nix b/pkgs/development/python-modules/dronecan/default.nix
index 49c5dbb51db4..fc051d105bf6 100644
--- a/pkgs/development/python-modules/dronecan/default.nix
+++ b/pkgs/development/python-modules/dronecan/default.nix
@@ -1,7 +1,6 @@
 { lib
 , buildPythonPackage
 , fetchPypi
-, pythonOlder
 , pytestCheckHook
 }:
 
@@ -9,7 +8,6 @@ buildPythonPackage rec {
   pname = "dronecan";
   version = "1.0.26";
   format = "setuptools";
-  disabled = pythonOlder "3.3";
 
   src = fetchPypi {
     inherit pname version;
diff --git a/pkgs/development/python-modules/dropbox/default.nix b/pkgs/development/python-modules/dropbox/default.nix
index 762b9b7ff8cf..b090f81da975 100644
--- a/pkgs/development/python-modules/dropbox/default.nix
+++ b/pkgs/development/python-modules/dropbox/default.nix
@@ -2,8 +2,8 @@
 , buildPythonPackage
 , pythonOlder
 , fetchFromGitHub
-, requests
 , setuptools
+, requests
 , six
 , stone
 , mock
@@ -15,9 +15,10 @@
 buildPythonPackage rec {
   pname = "dropbox";
   version = "11.36.2";
-  format = "setuptools";
+  pyproject = true;
 
   disabled = pythonOlder "3.7";
+
   outputs = ["out" "doc"];
 
   src = fetchFromGitHub {
@@ -27,9 +28,12 @@ buildPythonPackage rec {
     hash = "sha256-d++lxsbwPxnz1JPguWkImHXB+GQpMa9Uo3JNIxIe2ok=";
   };
 
-  propagatedBuildInputs = [
-    requests
+  build-system = [
     setuptools
+  ];
+
+  dependencies = [
+    requests
     six
     stone
   ];
diff --git a/pkgs/development/python-modules/dtlssocket/default.nix b/pkgs/development/python-modules/dtlssocket/default.nix
index bad1a6c73377..16b60266c6a7 100644
--- a/pkgs/development/python-modules/dtlssocket/default.nix
+++ b/pkgs/development/python-modules/dtlssocket/default.nix
@@ -8,14 +8,14 @@
 
 buildPythonPackage rec {
   pname = "dtlssocket";
-  version = "0.1.16";
+  version = "0.1.18";
 
   format = "pyproject";
 
   src = fetchPypi {
     pname = "DTLSSocket";
     inherit version;
-    hash = "sha256-MLEIrkX84cAz4+9sLd1+dBgGKuN0Io46f6lpslQ2ajk=";
+    hash = "sha256-TnS2LYe6CeAlezc83bGpRqOpQbPJMQHzJn6PnXon4FI=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/python-modules/duckdb/default.nix b/pkgs/development/python-modules/duckdb/default.nix
index 34f20998ef3d..242502ab1bf6 100644
--- a/pkgs/development/python-modules/duckdb/default.nix
+++ b/pkgs/development/python-modules/duckdb/default.nix
@@ -69,6 +69,9 @@ buildPythonPackage rec {
     # tries to make http request
     "test_install_non_existent_extension"
 
+    # test is flaky https://github.com/duckdb/duckdb/issues/11961
+    "test_fetchmany"
+
     # https://github.com/duckdb/duckdb/issues/10702
     # tests are racy and interrupt can be delivered before or after target point
     # causing a later test to fail with a spurious KeyboardInterrupt
diff --git a/pkgs/development/python-modules/duckduckgo-search/default.nix b/pkgs/development/python-modules/duckduckgo-search/default.nix
index 708762bb2622..a06c16586b0a 100644
--- a/pkgs/development/python-modules/duckduckgo-search/default.nix
+++ b/pkgs/development/python-modules/duckduckgo-search/default.nix
@@ -1,20 +1,52 @@
-{ lib
-, aiofiles
-, buildPythonPackage
-, click
-, fetchFromGitHub
-, h2
-, httpx
-, lxml
-, pythonOlder
-, requests
-, setuptools
-, socksio
+{
+  lib,
+  buildPythonPackage,
+  click,
+  fetchFromGitHub,
+  pythonOlder,
+  setuptools,
+  orjson,
+  curl-cffi,
+
+  # To build orjson
+  rustPlatform,
+
+  # Optional dependencies
+  lxml,
 }:
+let
+  curl-cffi_0_7_0 = curl-cffi.overrideAttrs (
+    final: old: {
+      version = "0.7.0b4";
+      src = fetchFromGitHub {
+        owner = "yifeikong";
+        repo = "curl_cffi";
+        rev = "v${final.version}";
+        hash = "sha256-txrJNUzswAPeH4Iazn0iKJI0Rqk0HHRoDrtTfDHKMoo=";
+      };
+    }
+  );
 
+  orjson_3_10_3 = orjson.overrideAttrs (
+    final: old: {
+      version = "3.10.3";
+      src = fetchFromGitHub {
+        owner = "ijl";
+        repo = "orjson";
+        rev = "refs/tags/${final.version}";
+        hash = "sha256-bK6wA8P/IXEbiuJAx7psd0nUUKjR1jX4scFfJr1MBAk=";
+      };
+      cargoDeps = rustPlatform.fetchCargoTarball {
+        inherit (final) src;
+        name = "${old.pname}-${final.version}";
+        hash = "sha256-ilGq+/gPSuNwURUWy2ZxInzmUv+PxYMxd8esxrMpr2o=";
+      };
+    }
+  );
+in
 buildPythonPackage rec {
   pname = "duckduckgo-search";
-  version = "5.0";
+  version = "v5.3.1";
   pyproject = true;
 
   disabled = pythonOlder "3.8";
@@ -22,36 +54,32 @@ buildPythonPackage rec {
   src = fetchFromGitHub {
     owner = "deedy5";
     repo = "duckduckgo_search";
-    rev = "refs/tags/v${version}";
-    hash = "sha256-OZFkSFyXC2MFP2MbKwF/qR8zvCFzPKgLmX+nuIztOpw=";
+    rev = version;
+    hash = "sha256-T7rlB3dU7y+HbHr1Ss9KkejlXFORhnv9Va7cFTRtfQU=";
   };
 
-  nativeBuildInputs = [
-    setuptools
-  ];
+  nativeBuildInputs = [ setuptools ];
 
   propagatedBuildInputs = [
-    aiofiles
     click
-    h2
-    httpx
-    lxml
-    requests
-    socksio
-  ] ++ httpx.optional-dependencies.brotli
-    ++ httpx.optional-dependencies.http2
-    ++ httpx.optional-dependencies.socks;
-
-  pythonImportsCheck = [
-    "duckduckgo_search"
+    orjson_3_10_3
+    curl-cffi_0_7_0
   ];
 
-  meta = with lib; {
+  passthru.optional-dependencies = {
+    lxml = [ lxml ];
+  };
+
+  doCheck = false; # tests require network access
+
+  pythonImportsCheck = [ "duckduckgo_search" ];
+
+  meta = {
     description = "Python CLI and library for searching for words, documents, images, videos, news, maps and text translation using the DuckDuckGo.com search engine";
     mainProgram = "ddgs";
     homepage = "https://github.com/deedy5/duckduckgo_search";
-    changelog = "https://github.com/deedy5/duckduckgo_search/releases/tag/v${version}";
-    license = licenses.mit;
-    maintainers = with maintainers; [ ];
+    changelog = "https://github.com/deedy5/duckduckgo_search/releases/tag/${version}";
+    license = lib.licenses.mit;
+    maintainers = with lib.maintainers; [ drawbu ];
   };
 }
diff --git a/pkgs/development/python-modules/dugong/default.nix b/pkgs/development/python-modules/dugong/default.nix
index 7cfc29c9ff81..e66763b23d5e 100644
--- a/pkgs/development/python-modules/dugong/default.nix
+++ b/pkgs/development/python-modules/dugong/default.nix
@@ -2,7 +2,6 @@
 , buildPythonPackage
 , fetchFromGitHub
 , pythonOlder
-, pythonAtLeast
 , pytestCheckHook
 }:
 
@@ -10,7 +9,6 @@ buildPythonPackage rec {
   pname = "dugong";
   version = "3.8.1";
   format = "setuptools";
-  disabled = pythonOlder "3.3";
 
   src = fetchFromGitHub {
     owner = "python-dugong";
diff --git a/pkgs/development/python-modules/dulwich/default.nix b/pkgs/development/python-modules/dulwich/default.nix
index 49789421af34..65a4eb19d88d 100644
--- a/pkgs/development/python-modules/dulwich/default.nix
+++ b/pkgs/development/python-modules/dulwich/default.nix
@@ -76,6 +76,8 @@ buildPythonPackage rec {
     "test_cyrillic"
     # OSError: [Errno 84] Invalid or incomplete multibyte or wide character: b'/build/tmpfseetobk/test/\xc0'
     "test_commit_no_encode_decode"
+    # https://github.com/jelmer/dulwich/issues/1279
+    "test_init_connector"
   ];
 
   disabledTestPaths = [
diff --git a/pkgs/development/python-modules/dvclive/default.nix b/pkgs/development/python-modules/dvclive/default.nix
index 7090433431a9..fd78c6ca873d 100644
--- a/pkgs/development/python-modules/dvclive/default.nix
+++ b/pkgs/development/python-modules/dvclive/default.nix
@@ -32,7 +32,7 @@
 
 buildPythonPackage rec {
   pname = "dvclive";
-  version = "3.45.0";
+  version = "3.46.0";
   pyproject = true;
 
   disabled = pythonOlder "3.9";
@@ -41,7 +41,7 @@ buildPythonPackage rec {
     owner = "iterative";
     repo = "dvclive";
     rev = "refs/tags/${version}";
-    hash = "sha256-76PjBPr3m1y5osW024dkhuvuXl2FiZ5oxlJ1Ucq8msI=";
+    hash = "sha256-yIViKlkCdoG2vSZdScL38fZd9musLRKzBd9wSR6lJdk=";
   };
 
   build-system = [
diff --git a/pkgs/development/python-modules/dwdwfsapi/default.nix b/pkgs/development/python-modules/dwdwfsapi/default.nix
index 58b62032e33b..824d23cbe23e 100644
--- a/pkgs/development/python-modules/dwdwfsapi/default.nix
+++ b/pkgs/development/python-modules/dwdwfsapi/default.nix
@@ -1,6 +1,7 @@
 { lib
 , buildPythonPackage
 , fetchPypi
+, hatchling
 , requests
 , ciso8601
 , pythonOlder
@@ -8,17 +9,21 @@
 
 buildPythonPackage rec {
   pname = "dwdwfsapi";
-  version = "1.0.7";
-  format = "setuptools";
+  version = "1.1.0";
+  pyproject = true;
 
   disabled = pythonOlder "3.6";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-7le1F+581JwrBX/C1aaqsDaSpIt0yNsNKiGnJtHUg5s=";
+    hash = "sha256-7dIVD+4MiYtsjAM5j67MlbiUN2Q5DpK6bUU0ZuHN2rk=";
   };
 
-  propagatedBuildInputs = [
+  build-system = [
+    hatchling
+  ];
+
+  dependencies = [
     requests
     ciso8601
   ];
diff --git a/pkgs/development/python-modules/dynalite-panel/default.nix b/pkgs/development/python-modules/dynalite-panel/default.nix
index 33be58906c75..960f5544d30e 100644
--- a/pkgs/development/python-modules/dynalite-panel/default.nix
+++ b/pkgs/development/python-modules/dynalite-panel/default.nix
@@ -1,6 +1,5 @@
 { lib
 , buildPythonPackage
-, pythonOlder
 , fetchPypi
 , setuptools
 }:
@@ -10,8 +9,6 @@ buildPythonPackage rec {
   version = "0.0.4";
   pyproject = true;
 
-  disabled = pythonOlder "3.4";
-
   src = fetchPypi {
     inherit pname version;
     hash = "sha256-m7nQzbxRe2qXUWAMeQlDZtc9F01DsbTzF/kI0ci3TFE=";
diff --git a/pkgs/development/python-modules/ecdsa/default.nix b/pkgs/development/python-modules/ecdsa/default.nix
index 2ce07e5b6b2b..3380d0f09616 100644
--- a/pkgs/development/python-modules/ecdsa/default.nix
+++ b/pkgs/development/python-modules/ecdsa/default.nix
@@ -7,12 +7,12 @@
 
 buildPythonPackage rec {
   pname = "ecdsa";
-  version = "0.18.0";
+  version = "0.19.0";
   format = "setuptools";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-GQNIBBVZ4hsiodZc7khSgsoRpvgdUD/duE1QF+ntHkk=";
+    hash = "sha256-YOqtEZllmQDdCvUh7UYreTu9+GdDKzlI6HQWrkyva/g=";
   };
 
   propagatedBuildInputs = [ six ];
diff --git a/pkgs/development/python-modules/einops/default.nix b/pkgs/development/python-modules/einops/default.nix
index 9c2de1bad9ce..dc775fcd6d11 100644
--- a/pkgs/development/python-modules/einops/default.nix
+++ b/pkgs/development/python-modules/einops/default.nix
@@ -13,7 +13,7 @@
 
 buildPythonPackage rec {
   pname = "einops";
-  version = "0.7.0";
+  version = "0.8.0";
   pyproject = true;
 
   disabled = pythonOlder "3.7";
@@ -22,7 +22,7 @@ buildPythonPackage rec {
     owner = "arogozhnikov";
     repo = pname;
     rev = "refs/tags/v${version}";
-    hash = "sha256-wCs3rMnYCk07kJ3iPItxwCQATflKBYHk6tfBCjiF+bc=";
+    hash = "sha256-6x9AttvSvgYrHaS5ESKOwyEnXxD2BitYTGtqqSKur+0=";
   };
 
   nativeBuildInputs = [ hatchling ];
diff --git a/pkgs/development/python-modules/elastic-transport/default.nix b/pkgs/development/python-modules/elastic-transport/default.nix
index ac2acebc6f7f..c4f6b0435e84 100644
--- a/pkgs/development/python-modules/elastic-transport/default.nix
+++ b/pkgs/development/python-modules/elastic-transport/default.nix
@@ -4,19 +4,24 @@
 , certifi
 , fetchFromGitHub
 , mock
+, opentelemetry-api
+, opentelemetry-sdk
+, orjson
 , pytest-asyncio
 , pytest-httpserver
 , pytestCheckHook
 , pythonOlder
 , requests
+, respx
+, setuptools
 , trustme
 , urllib3
 }:
 
 buildPythonPackage rec {
   pname = "elastic-transport";
-  version = "8.12.0";
-  format = "setuptools";
+  version = "8.13.0";
+  pyproject = true;
 
   disabled = pythonOlder "3.7";
 
@@ -24,7 +29,7 @@ buildPythonPackage rec {
     owner = "elastic";
     repo = "elastic-transport-python";
     rev = "refs/tags/v${version}";
-    hash = "sha256-ZLzaCiopdkhpqjzZzv/NT1+f5bHZYuqQvSgM5jeMaqg=";
+    hash = "sha256-KmZCaAbzbfqbPwFuF43ckwgVhZVbPvwjF7uqPKHml9Q=";
   };
 
   postPatch = ''
@@ -32,6 +37,10 @@ buildPythonPackage rec {
       --replace " --cov-report=term-missing --cov=elastic_transport" ""
   '';
 
+  build-system = [
+    setuptools
+  ];
+
   propagatedBuildInputs = [
     urllib3
     certifi
@@ -40,10 +49,14 @@ buildPythonPackage rec {
   nativeCheckInputs = [
     aiohttp
     mock
+    opentelemetry-api
+    opentelemetry-sdk
+    orjson
     pytest-asyncio
     pytest-httpserver
     pytestCheckHook
     requests
+    respx
     trustme
   ];
 
diff --git a/pkgs/development/python-modules/elasticsearch/default.nix b/pkgs/development/python-modules/elasticsearch/default.nix
index a89cb3f0a4c5..12aac19267e8 100644
--- a/pkgs/development/python-modules/elasticsearch/default.nix
+++ b/pkgs/development/python-modules/elasticsearch/default.nix
@@ -11,14 +11,14 @@
 
 buildPythonPackage rec {
   pname = "elasticsearch";
-  version = "8.12.1";
+  version = "8.13.0";
   format = "setuptools";
 
   disabled = pythonOlder "3.7";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "sha256-AMmXcg+9Dyr+VBfIGTz2XRFoF6AlDeBSHjDD6B8AuKw=";
+    sha256 = "sha256-5Ovrsi0J8O+DnCa2qpjhnM1ja8t38IwStWKwLKzV50Q=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/python-modules/elasticsearch8/default.nix b/pkgs/development/python-modules/elasticsearch8/default.nix
index c83de92d03bf..c1fa2c91372c 100644
--- a/pkgs/development/python-modules/elasticsearch8/default.nix
+++ b/pkgs/development/python-modules/elasticsearch8/default.nix
@@ -10,14 +10,14 @@
 
 buildPythonPackage rec {
   pname = "elasticsearch8";
-  version = "8.12.1";
+  version = "8.13.0";
   format = "setuptools";
 
   disabled = pythonOlder "3.7";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-RuL1zYmEZEaaXb2LEW+BUmo7TcdGHH/5fjgesxXtbls=";
+    hash = "sha256-NWg+/dr8jXCCLeXBAXY1yL6/2CB0xCO5tswY4y/5erw=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/python-modules/emv/default.nix b/pkgs/development/python-modules/emv/default.nix
index c7be7ba9e7fa..69d3a9ef910e 100644
--- a/pkgs/development/python-modules/emv/default.nix
+++ b/pkgs/development/python-modules/emv/default.nix
@@ -1,58 +1,59 @@
-{ lib
-, buildPythonPackage
-, fetchFromGitHub
-, click
-, pyscard
-, pycountry
-, terminaltables
-, pytestCheckHook
-, pythonOlder
+{
+  lib,
+  buildPythonPackage,
+  fetchFromGitHub,
+  click,
+  pyscard,
+  pycountry,
+  terminaltables,
+  pytestCheckHook,
+  setuptools,
+  pythonOlder,
 }:
 
 buildPythonPackage rec {
   pname = "emv";
   version = "1.0.14";
-  format = "setuptools";
+  pyproject = true;
 
-  disabled = pythonOlder "3.4";
+  disabled = pythonOlder "3.7";
 
   src = fetchFromGitHub {
     owner = "russss";
     repo = "python-emv";
-    rev = "v${version}";
+    rev = "refs/tags/v${version}";
     hash = "sha256-MnaeQZ0rA3i0CoUA6HgJQpwk5yo4rm9e+pc5XzRd1eg=";
   };
 
-  propagatedBuildInputs = [
+  postPatch = ''
+    substituteInPlace setup.py \
+      --replace-fail '"enum-compat==0.0.3",' "" \
+      --replace-fail '"argparse==1.4.0",' "" \
+      --replace-fail "click==7.1.2" "click" \
+      --replace-fail "pyscard==2.0.0" "pyscard" \
+      --replace-fail "pycountry==20.7.3" "pycountry" \
+      --replace-fail "terminaltables==3.1.0" "terminaltables"
+  '';
+
+  build-system = [ setuptools ];
+
+  dependencies = [
     click
     pyscard
     pycountry
     terminaltables
   ];
 
-  nativeCheckInputs = [
-    pytestCheckHook
-  ];
+  nativeCheckInputs = [ pytestCheckHook ];
 
-  postPatch = ''
-    substituteInPlace setup.py \
-      --replace '"enum-compat==0.0.3",' "" \
-      --replace '"argparse==1.4.0",' "" \
-      --replace "click==7.1.2" "click" \
-      --replace "pyscard==2.0.0" "pyscard" \
-      --replace "pycountry==20.7.3" "pycountry" \
-      --replace "terminaltables==3.1.0" "terminaltables"
-  '';
-
-  pythonImportsCheck = [
-    "emv"
-  ];
+  pythonImportsCheck = [ "emv" ];
 
   meta = with lib; {
     description = "Implementation of the EMV chip-and-pin smartcard protocol";
-    mainProgram = "emvtool";
     homepage = "https://github.com/russss/python-emv";
+    changelog = "https://github.com/russss/python-emv/releases/tag/v${version}";
     license = licenses.mit;
     maintainers = with maintainers; [ lukegb ];
+    mainProgram = "emvtool";
   };
 }
diff --git a/pkgs/development/python-modules/env-canada/default.nix b/pkgs/development/python-modules/env-canada/default.nix
index f11b85d8bf7b..4b0fab97e95f 100644
--- a/pkgs/development/python-modules/env-canada/default.nix
+++ b/pkgs/development/python-modules/env-canada/default.nix
@@ -10,13 +10,14 @@
 , pytestCheckHook
 , python-dateutil
 , pythonOlder
+, setuptools
 , voluptuous
 }:
 
 buildPythonPackage rec {
   pname = "env-canada";
-  version = "0.6.1";
-  format = "setuptools";
+  version = "0.6.2";
+  pyproject = true;
 
   disabled = pythonOlder "3.8";
 
@@ -24,10 +25,14 @@ buildPythonPackage rec {
     owner = "michaeldavie";
     repo = "env_canada";
     rev = "refs/tags/v${version}";
-    hash = "sha256-6p4holWMAoaosmTL8AveRGuBS/MymC7usvK3I7CBEKQ=";
+    hash = "sha256-2lrZpjOdijE/udGRzUXT63xI+f9yI+04arfWdt6fMSA=";
   };
 
-  propagatedBuildInputs = [
+  build-system = [
+    setuptools
+  ];
+
+  dependencies = [
     aiohttp
     geopy
     imageio
diff --git a/pkgs/development/python-modules/equinox/default.nix b/pkgs/development/python-modules/equinox/default.nix
index 976406b399b1..cd4f60e8bad4 100644
--- a/pkgs/development/python-modules/equinox/default.nix
+++ b/pkgs/development/python-modules/equinox/default.nix
@@ -48,8 +48,21 @@ buildPythonPackage rec {
   pythonImportsCheck = [ "equinox" ];
 
   disabledTests = [
-    # Failed: DID NOT WARN. No warnings of type (<class 'UserWarning'>,) were emitted.
-    "test_tracetime"
+    # For simplicity, JAX has removed its internal frames from the traceback of the following exception.
+    # https://github.com/patrick-kidger/equinox/issues/716
+    "test_abstract"
+    "test_complicated"
+    "test_grad"
+    "test_jvp"
+    "test_mlp"
+    "test_num_traces"
+    "test_pytree_in"
+    "test_simple"
+    "test_vmap"
+
+    # AssertionError: assert 'foo:\n   pri...pe=float32)\n' == 'foo:\n   pri...pe=float32)\n'
+    # Also reported in patrick-kidger/equinox#716
+    "test_backward_nan"
   ];
 
   meta = with lib; {
diff --git a/pkgs/development/python-modules/exchangelib/default.nix b/pkgs/development/python-modules/exchangelib/default.nix
index c41a7da3a807..1e560b59895b 100644
--- a/pkgs/development/python-modules/exchangelib/default.nix
+++ b/pkgs/development/python-modules/exchangelib/default.nix
@@ -29,7 +29,7 @@
 
 buildPythonPackage rec {
   pname = "exchangelib";
-  version = "5.3.0";
+  version = "5.4.0";
   pyproject = true;
 
   disabled = pythonOlder "3.7";
@@ -38,7 +38,7 @@ buildPythonPackage rec {
     owner = "ecederstrand";
     repo = "exchangelib";
     rev = "refs/tags/v${version}";
-    hash = "sha256-rcXQJYjyWLPrlMci/j8IY7EbDEyyc+5uSOOXo0YwjKo=";
+    hash = "sha256-GBfSdX9gFLx+CCV8DWHWtVpWi6zI3fg/3g/MiIvRoVM=";
   };
 
   build-system = [ setuptools ];
diff --git a/pkgs/development/python-modules/execnb/default.nix b/pkgs/development/python-modules/execnb/default.nix
index 56b1bf1388ed..bd3d91a10e51 100644
--- a/pkgs/development/python-modules/execnb/default.nix
+++ b/pkgs/development/python-modules/execnb/default.nix
@@ -1,34 +1,45 @@
-{ lib
-, buildPythonPackage
-, fetchPypi
-, fastcore
-, traitlets
-, ipython
-, pythonOlder
+{
+  lib,
+  buildPythonPackage,
+  fastcore,
+  fetchPypi,
+  ipython,
+  pythonOlder,
+  setuptools,
+  traitlets,
 }:
 
 buildPythonPackage rec {
   pname = "execnb";
-  version = "0.1.5";
-  format = "setuptools";
+  version = "0.1.6";
+  pyproject = true;
+
   disabled = pythonOlder "3.6";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "sha256-nuAp4OMAfA3u3DJyORjFw7y7ZLsLCKEfxSFIXqNh+k0=";
+    hash = "sha256-KJ2XEHqFY0SxbAiVPWBFO0cyC0EWgGDso8wt7lBLTgU=";
   };
 
-  propagatedBuildInputs = [ fastcore traitlets ipython ];
+  build-system = [ setuptools ];
+
+  dependencies = [
+    fastcore
+    ipython
+    traitlets
+  ];
 
   # no real tests
   doCheck = false;
+
   pythonImportsCheck = [ "execnb" ];
 
   meta = with lib; {
-    homepage = "https://github.com/fastai/execnb";
     description = "Execute a jupyter notebook, fast, without needing jupyter";
-    mainProgram = "exec_nb";
+    homepage = "https://github.com/fastai/execnb";
+    changelog = "https://github.com/fastai/execnb/releases/tag/${version}";
     license = licenses.asl20;
     maintainers = with maintainers; [ rxiao ];
+    mainProgram = "exec_nb";
   };
 }
diff --git a/pkgs/development/python-modules/execnet/default.nix b/pkgs/development/python-modules/execnet/default.nix
index eb184c180d5b..76f9b9b4df65 100644
--- a/pkgs/development/python-modules/execnet/default.nix
+++ b/pkgs/development/python-modules/execnet/default.nix
@@ -10,12 +10,12 @@
 
 buildPythonPackage rec {
   pname = "execnet";
-  version = "2.0.2";
+  version = "2.1.1";
   format = "pyproject";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-zFm8RCN0L9ca0icSLrDdRNtR77PcQJW0WsmgjHcAlq8=";
+    hash = "sha256-UYm1LGEhwk/q4ogWarQbMlScfiNIZSc2VAuebn1OcuM=";
   };
 
   postPatch = ''
diff --git a/pkgs/development/python-modules/faker/default.nix b/pkgs/development/python-modules/faker/default.nix
index ec667330a62b..c0944e473fe7 100644
--- a/pkgs/development/python-modules/faker/default.nix
+++ b/pkgs/development/python-modules/faker/default.nix
@@ -13,13 +13,13 @@
 
 buildPythonPackage rec {
   pname = "faker";
-  version = "24.0.0";
+  version = "24.11.0";
   pyproject = true;
 
   src = fetchPypi {
     pname = "Faker";
     inherit version;
-    hash = "sha256-6m94TEBzDeD3cGfknnjN1ZDvsAvsPTP1d0kiYiBsF/w=";
+    hash = "sha256-NLlHWBwrztNAw5s1+J2/rE81aTLP/4/ok73oVJA/Dm4=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/python-modules/fakeredis/default.nix b/pkgs/development/python-modules/fakeredis/default.nix
index 45a2a512d513..a89d85efcafd 100644
--- a/pkgs/development/python-modules/fakeredis/default.nix
+++ b/pkgs/development/python-modules/fakeredis/default.nix
@@ -1,23 +1,24 @@
-{ lib
-, buildPythonPackage
-, fetchFromGitHub
-, hypothesis
-, jsonpath-ng
-, lupa
-, poetry-core
-, pybloom-live
-, pyprobables
-, pytest-asyncio
-, pytest-mock
-, pytestCheckHook
-, pythonOlder
-, redis
-, sortedcontainers
+{
+  lib,
+  buildPythonPackage,
+  fetchFromGitHub,
+  hypothesis,
+  jsonpath-ng,
+  lupa,
+  poetry-core,
+  pybloom-live,
+  pyprobables,
+  pytest-asyncio,
+  pytest-mock,
+  pytestCheckHook,
+  pythonOlder,
+  redis,
+  sortedcontainers,
 }:
 
 buildPythonPackage rec {
   pname = "fakeredis";
-  version = "2.21.3";
+  version = "2.23.1";
   pyproject = true;
 
   disabled = pythonOlder "3.7";
@@ -26,14 +27,12 @@ buildPythonPackage rec {
     owner = "dsoftwareinc";
     repo = "fakeredis-py";
     rev = "refs/tags/v${version}";
-    hash = "sha256-GIg+a8G5S0dmbvMKqS/Vn+wzNM6iNIs3bKPqhecsQt4=";
+    hash = "sha256-IMYxzlvPgwJNpb976jYXNW+6veQlUxQph43ZClyC4Eg=";
   };
 
-  nativeBuildInputs = [
-    poetry-core
-  ];
+  build-system = [ poetry-core ];
 
-  propagatedBuildInputs = [
+  dependencies = [
     redis
     sortedcontainers
   ];
@@ -46,25 +45,18 @@ buildPythonPackage rec {
   ];
 
   passthru.optional-dependencies = {
-    lua = [
-      lupa
-    ];
-    json = [
-      jsonpath-ng
-    ];
-    bf = [
-      pyprobables
-    ];
-    cf = [
-      pyprobables
-    ];
-    probabilistic = [
-      pyprobables
-    ];
+    lua = [ lupa ];
+    json = [ jsonpath-ng ];
+    bf = [ pyprobables ];
+    cf = [ pyprobables ];
+    probabilistic = [ pyprobables ];
   };
 
-  pythonImportsCheck = [
-    "fakeredis"
+  pythonImportsCheck = [ "fakeredis" ];
+
+  disabledTests = [
+    # AssertionError
+    "test_command"
   ];
 
   meta = with lib; {
diff --git a/pkgs/development/python-modules/fastai/default.nix b/pkgs/development/python-modules/fastai/default.nix
index ff8ac701cf27..cd4bcc9f4b67 100644
--- a/pkgs/development/python-modules/fastai/default.nix
+++ b/pkgs/development/python-modules/fastai/default.nix
@@ -18,14 +18,14 @@
 
 buildPythonPackage rec {
   pname = "fastai";
-  version = "2.7.14";
+  version = "2.7.15";
   format = "setuptools";
 
   disabled = pythonOlder "3.7";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-QiVyYojI/xs7wYl3umhky0j+xzptNS7Fv+fLMRy/4jc=";
+    hash = "sha256-8swg/RjN9exzjMVtKdVN51iH1IrRX501z1DDjTqFaSM=";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/fastapi/default.nix b/pkgs/development/python-modules/fastapi/default.nix
index 67193638dd5a..92850c336bba 100644
--- a/pkgs/development/python-modules/fastapi/default.nix
+++ b/pkgs/development/python-modules/fastapi/default.nix
@@ -38,7 +38,7 @@
 
 buildPythonPackage rec {
   pname = "fastapi";
-  version = "0.110.0";
+  version = "0.110.2";
   pyproject = true;
 
   disabled = pythonOlder "3.7";
@@ -47,7 +47,7 @@ buildPythonPackage rec {
     owner = "tiangolo";
     repo = "fastapi";
     rev = "refs/tags/${version}";
-    hash = "sha256-OXWJ1PKJSJGzYNT8HHXvxMxjUtI4K6edpI+Z5B3TvhI=";
+    hash = "sha256-qUh5exkXVRcKIO0t4KIOZhhpsftj3BrWaL2asf8RqUI=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/python-modules/fastbencode/default.nix b/pkgs/development/python-modules/fastbencode/default.nix
index 369d991aaa93..92eb19e0a0ee 100644
--- a/pkgs/development/python-modules/fastbencode/default.nix
+++ b/pkgs/development/python-modules/fastbencode/default.nix
@@ -1,30 +1,30 @@
-{ lib
-, buildPythonPackage
-, fetchPypi
-, python
-, pythonOlder
-, cython
+{
+  lib,
+  buildPythonPackage,
+  cython,
+  fetchPypi,
+  python,
+  pythonOlder,
+  setuptools,
 }:
 
 buildPythonPackage rec {
   pname = "fastbencode";
-  version = "0.2";
-  format = "setuptools";
+  version = "0.3.1";
+  pyproject = true;
 
-  disabled = pythonOlder "3.7";
+  disabled = pythonOlder "3.8";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-V465xHANZwXXH7yNfVe8os2Yfsos7B2ed7ngcC2x5W8=";
+    hash = "sha256-X+DLfRc2iRr2HSreQM6UiUHUbpCLFvU4P1XxJ4SNoZc=";
   };
 
-  nativeBuildInputs = [
-    cython
-  ];
+  build-system = [ setuptools ];
 
-  pythonImportsCheck = [
-    "fastbencode"
-  ];
+  nativeBuildInputs = [ cython ];
+
+  pythonImportsCheck = [ "fastbencode" ];
 
   checkPhase = ''
     ${python.interpreter} -m unittest fastbencode.tests.test_suite
@@ -33,6 +33,7 @@ buildPythonPackage rec {
   meta = with lib; {
     description = "Fast implementation of bencode";
     homepage = "https://github.com/breezy-team/fastbencode";
+    changelog = "https://github.com/breezy-team/fastbencode/releases/tag/v${version}";
     license = licenses.gpl2Plus;
     maintainers = with maintainers; [ ];
   };
diff --git a/pkgs/development/python-modules/fastcore/default.nix b/pkgs/development/python-modules/fastcore/default.nix
index 544bb26936d6..5311a0add549 100644
--- a/pkgs/development/python-modules/fastcore/default.nix
+++ b/pkgs/development/python-modules/fastcore/default.nix
@@ -1,35 +1,35 @@
-{ lib
-, buildPythonPackage
-, fetchFromGitHub
-, packaging
-, pytestCheckHook
-, pythonOlder
+{
+  lib,
+  buildPythonPackage,
+  fetchFromGitHub,
+  packaging,
+  pytestCheckHook,
+  pythonOlder,
+  setuptools,
 }:
 
 buildPythonPackage rec {
   pname = "fastcore";
-  version = "1.5.29";
-  format = "setuptools";
+  version = "1.5.35";
+  pyproject = true;
 
   disabled = pythonOlder "3.8";
 
   src = fetchFromGitHub {
     owner = "fastai";
-    repo = pname;
+    repo = "fastcore";
     rev = "refs/tags/${version}";
-    hash = "sha256-yCPOF150TdkPHfLl8Jo2oow+91IzRKgnXo3eQMn5wK0=";
+    hash = "sha256-dhYmy7dAHmmRfC2mpn49UsE4+hpqMbB1PHGmrowCTIQ=";
   };
 
-  propagatedBuildInputs = [
-    packaging
-  ];
+  build-system = [ setuptools ];
+
+  dependencies = [ packaging ];
 
   # Module has no tests
   doCheck = false;
 
-  pythonImportsCheck = [
-    "fastcore"
-  ];
+  pythonImportsCheck = [ "fastcore" ];
 
   meta = with lib; {
     description = "Python module for Fast AI";
diff --git a/pkgs/development/python-modules/faster-fifo/default.nix b/pkgs/development/python-modules/faster-fifo/default.nix
index 1d77707b6aa5..a3b8f491a9da 100644
--- a/pkgs/development/python-modules/faster-fifo/default.nix
+++ b/pkgs/development/python-modules/faster-fifo/default.nix
@@ -1,6 +1,8 @@
 { lib
 , buildPythonPackage
 , fetchFromGitHub
+, stdenv
+, gcc12Stdenv
 
 # build-system
 , cython
@@ -11,11 +13,17 @@
 , unittestCheckHook
 }:
 
+let
+  stdenv' = if stdenv.isLinux then gcc12Stdenv else stdenv;
+in
 buildPythonPackage rec {
   pname = "faster-fifo";
   version = "1.4.5";
   format = "pyproject";
 
+  # https://github.com/alex-petrenko/faster-fifo/issues/47\
+  stdenv = stdenv';
+
   src = fetchFromGitHub {
     owner = "alex-petrenko";
     repo = "faster-fifo";
diff --git a/pkgs/development/python-modules/faster-whisper/default.nix b/pkgs/development/python-modules/faster-whisper/default.nix
index 2fe0b785cea6..4a54757640b9 100644
--- a/pkgs/development/python-modules/faster-whisper/default.nix
+++ b/pkgs/development/python-modules/faster-whisper/default.nix
@@ -19,14 +19,14 @@
 
 buildPythonPackage rec {
   pname = "faster-whisper";
-  version = "1.0.1";
+  version = "1.0.2";
   pyproject = true;
 
   src = fetchFromGitHub {
     owner = "SYSTRAN";
     repo = "faster-whisper";
     rev = "refs/tags/v${version}";
-    hash = "sha256-b8P9fI32ubOrdayA0vnjLhpZ4qffB6W+8TEOA1YLKqo=";
+    hash = "sha256-O2RRwb+omgSpfckHh3oPu454g2ULT4gyolrg5olHcRc=";
   };
 
   build-system = [
@@ -62,9 +62,9 @@ buildPythonPackage rec {
   '';
 
   meta = with lib; {
-    changelog = "https://github.com/guillaumekln/faster-whisper/releases/tag/${version}";
+    changelog = "https://github.com/SYSTRAN/faster-whisper/releases/tag/v${version}";
     description = "Faster Whisper transcription with CTranslate2";
-    homepage = "https://github.com/guillaumekln/faster-whisper";
+    homepage = "https://github.com/SYSTRAN/faster-whisper";
     license = licenses.mit;
     maintainers = with maintainers; [ hexa ];
   };
diff --git a/pkgs/development/python-modules/ffmpy/default.nix b/pkgs/development/python-modules/ffmpy/default.nix
index 974e2bcd8fda..880a8f84ee75 100644
--- a/pkgs/development/python-modules/ffmpy/default.nix
+++ b/pkgs/development/python-modules/ffmpy/default.nix
@@ -1,4 +1,5 @@
 { lib
+, stdenv
 , buildPythonPackage
 , fetchFromGitHub
 , pythonOlder
@@ -44,6 +45,11 @@ buildPythonPackage rec {
     go
   ];
 
+  disabledTests = lib.optionals stdenv.isDarwin [
+    # expects a FFExecutableNotFoundError, gets a NotADirectoryError raised by os
+    "test_invalid_executable_path"
+  ];
+
   # the vendored ffmpeg mock binary assumes FHS
   preCheck = ''
     rm -v tests/ffmpeg/ffmpeg
diff --git a/pkgs/development/python-modules/file-read-backwards/default.nix b/pkgs/development/python-modules/file-read-backwards/default.nix
index 9317021f4506..ddb141b8ac7c 100644
--- a/pkgs/development/python-modules/file-read-backwards/default.nix
+++ b/pkgs/development/python-modules/file-read-backwards/default.nix
@@ -1,22 +1,39 @@
-{ lib, buildPythonPackage, fetchPypi, mock }:
+{
+  lib,
+  buildPythonPackage,
+  fetchPypi,
+  mock,
+  pythonOlder,
+  setuptools,
+  unittestCheckHook,
+}:
 
 buildPythonPackage rec {
   pname = "file-read-backwards";
-  version = "3.0.0";
-  format = "setuptools";
+  version = "3.1.0";
+  pyproject = true;
+
+  disabled = pythonOlder "3.7";
 
   src = fetchPypi {
     pname = "file_read_backwards";
     inherit version;
-    sha256 = "sha256-USw+U0BDUnqPrioLcVGqJV8towPnf9QPfc9CoeCRzCY=";
+    hash = "sha256-vQRZO8GTigAyJL5FHV1zXx9EkOHnClaM6NMwu3ZSpoQ=";
   };
 
-  nativeCheckInputs = [ mock ];
+  build-system = [ setuptools ];
+
+  nativeCheckInputs = [
+    mock
+    unittestCheckHook
+  ];
+
   pythonImportsCheck = [ "file_read_backwards" ];
 
   meta = with lib; {
-    homepage = "https://github.com/RobinNil/file_read_backwards";
     description = "Memory efficient way of reading files line-by-line from the end of file";
+    homepage = "https://github.com/RobinNil/file_read_backwards";
+    changelog = "https://github.com/RobinNil/file_read_backwards/blob/v${version}/HISTORY.rst";
     license = licenses.mit;
     maintainers = with maintainers; [ j0hax ];
   };
diff --git a/pkgs/development/python-modules/filedate/default.nix b/pkgs/development/python-modules/filedate/default.nix
new file mode 100644
index 000000000000..5317169caa68
--- /dev/null
+++ b/pkgs/development/python-modules/filedate/default.nix
@@ -0,0 +1,59 @@
+{
+  lib,
+  buildPythonPackage,
+  fetchFromGitHub,
+  pytestCheckHook,
+  python-dateutil,
+  setuptools,
+}:
+buildPythonPackage rec {
+  pname = "filedate";
+  version = "3.0";
+  pyproject = true;
+
+  src = fetchFromGitHub {
+    owner = "kubinka0505";
+    repo = "filedate";
+    rev = version;
+    hash = "sha256-HvuGP+QlUlfAUfFmaVVvtPHGdrbWVxghQipnqTTvAQc=";
+  };
+
+  sourceRoot = "${src.name}/Files";
+
+  # The repo stores everything in "src" and uses setup.py to move "src" ->
+  # "filedate" before calling setup() and then tries to rename "filedate" back
+  # to "src" after.
+  postPatch = ''
+    mv src filedate
+    substituteInPlace setup.py \
+      --replace-fail "__title__ = os.path.basename(os.path.dirname(os.path.dirname(__file__)))" '__title__ = "filedate"'
+    substituteInPlace setup.py \
+      --replace-fail "cleanup = True" "cleanup = False"
+
+    # Disable renaming "filedate" dir back to "src"
+    substituteInPlace setup.py \
+      --replace-fail "if os.path.exists(__title__):" ""
+    substituteInPlace setup.py \
+      --replace-fail "	os.rename(__title__, directory)" ""
+  '';
+
+  build-system = [ setuptools ];
+
+  dependencies = [ python-dateutil ];
+
+  pythonImportsCheck = [ "filedate" ];
+
+  nativeCheckInputs = [ pytestCheckHook ];
+
+  pytestFlagsArray = [ "tests/unit.py" ];
+
+  disabledTests = [ "test_created" ];
+
+  meta = {
+    description = "Simple, convenient and cross-platform file date changing library";
+    homepage = "https://github.com/kubinka0505/filedate";
+    changelog = "https://github.com/kubinka0505/filedate/blob/${src.rev}/Documents/ChangeLog.md";
+    license = lib.licenses.gpl3Only;
+    maintainers = with lib.maintainers; [ thornycrackers ];
+  };
+}
diff --git a/pkgs/development/python-modules/filelock/default.nix b/pkgs/development/python-modules/filelock/default.nix
index b32335bb2475..5b739bcc8fda 100644
--- a/pkgs/development/python-modules/filelock/default.nix
+++ b/pkgs/development/python-modules/filelock/default.nix
@@ -10,14 +10,14 @@
 
 buildPythonPackage rec {
   pname = "filelock";
-  version = "3.13.1";
+  version = "3.13.4";
   format = "pyproject";
 
   disabled = pythonOlder "3.7";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-Uh9fVsUPhCb14DrTsoG0kKh+8VvGxSbxaCkPDHFI1E4=";
+    hash = "sha256-0T9GZhi/3nK9LBglXiafclQsbnDnusg6AjLWscxcjPQ=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/python-modules/flask-appbuilder/default.nix b/pkgs/development/python-modules/flask-appbuilder/default.nix
index 3598500e37f5..2e7f5fb80850 100644
--- a/pkgs/development/python-modules/flask-appbuilder/default.nix
+++ b/pkgs/development/python-modules/flask-appbuilder/default.nix
@@ -15,7 +15,6 @@
 , flask-jwt-extended
 , jsonschema
 , marshmallow
-, marshmallow-enum
 , marshmallow-sqlalchemy
 , python-dateutil
 , pythonOlder
@@ -53,7 +52,6 @@ buildPythonPackage rec {
     flask-jwt-extended
     jsonschema
     marshmallow
-    marshmallow-enum
     marshmallow-sqlalchemy
     python-dateutil
     prison
diff --git a/pkgs/development/python-modules/flask/default.nix b/pkgs/development/python-modules/flask/default.nix
index 8c60066b1975..77d26dc24b82 100644
--- a/pkgs/development/python-modules/flask/default.nix
+++ b/pkgs/development/python-modules/flask/default.nix
@@ -31,12 +31,12 @@
 
 buildPythonPackage rec {
   pname = "flask";
-  version = "3.0.2";
+  version = "3.0.3";
   format = "pyproject";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-giwD9LeZIEJQp+6Ese3cQGZTlTM5c9+53uv+Ql/vy30=";
+    hash = "sha256-zrJ7CvOCPqJzeSik2Z0SWgYXW4USxEXL2anOIA73aEI=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/python-modules/flax/default.nix b/pkgs/development/python-modules/flax/default.nix
index ce41f8e56139..6afe4ef9a2f3 100644
--- a/pkgs/development/python-modules/flax/default.nix
+++ b/pkgs/development/python-modules/flax/default.nix
@@ -25,7 +25,7 @@
 
 buildPythonPackage rec {
   pname = "flax";
-  version = "0.8.2";
+  version = "0.8.3";
   pyproject = true;
 
   disabled = pythonOlder "3.9";
@@ -34,16 +34,16 @@ buildPythonPackage rec {
     owner = "google";
     repo = "flax";
     rev = "refs/tags/v${version}";
-    hash = "sha256-UABgJGe1grUSkwOJpjeIoFqhXsqG//HlC1YyYPxXV+g=";
+    hash = "sha256-uDGTyksUZTTL6FiTJP+qteFLOjr75dcTj9yRJ6Jm8xU=";
   };
 
-  nativeBuildInputs = [
+  build-system = [
     jaxlib
     pythonRelaxDepsHook
     setuptools-scm
   ];
 
-  propagatedBuildInputs = [
+  dependencies = [
     jax
     msgpack
     numpy
diff --git a/pkgs/development/python-modules/flexmock/default.nix b/pkgs/development/python-modules/flexmock/default.nix
index 45b2981ba959..7ec46f29da6f 100644
--- a/pkgs/development/python-modules/flexmock/default.nix
+++ b/pkgs/development/python-modules/flexmock/default.nix
@@ -10,14 +10,14 @@
 
 buildPythonPackage rec {
   pname = "flexmock";
-  version = "0.12.0";
+  version = "0.12.1";
   pyproject = true;
 
   disabled = pythonOlder "3.6";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-YdBvPRRCuBW3qoWh9HvoONBW9fXRTO/teuv7A0c9FKs=";
+    hash = "sha256-ILaQr6T/jG8xVI2JbW1BzKH8kFCkz2KLll6kNOxUjuM=";
   };
 
   build-system = [
diff --git a/pkgs/development/python-modules/flow-record/default.nix b/pkgs/development/python-modules/flow-record/default.nix
index 3e836772aa85..d9c61a791615 100644
--- a/pkgs/development/python-modules/flow-record/default.nix
+++ b/pkgs/development/python-modules/flow-record/default.nix
@@ -1,21 +1,21 @@
-{ lib
-, buildPythonPackage
-, elasticsearch
-, fastavro
-, fetchFromGitHub
-, lz4
-, msgpack
-, pytest7CheckHook
-, pythonOlder
-, setuptools
-, setuptools-scm
-, wheel
-, zstandard
+{
+  lib,
+  buildPythonPackage,
+  elasticsearch,
+  fastavro,
+  fetchFromGitHub,
+  lz4,
+  msgpack,
+  pytest7CheckHook,
+  pythonOlder,
+  setuptools,
+  setuptools-scm,
+  zstandard,
 }:
 
 buildPythonPackage rec {
   pname = "flow-record";
-  version = "3.14";
+  version = "3.15";
   pyproject = true;
 
   disabled = pythonOlder "3.8";
@@ -24,48 +24,37 @@ buildPythonPackage rec {
     owner = "fox-it";
     repo = "flow.record";
     rev = "refs/tags/${version}";
-    hash = "sha256-8XQeXfrgTk+jHR1ABlEEIn3E/MkUkGnvkgzePws4qhQ=";
+    hash = "sha256-j5N66p7feB9Ae+Fu5RhVzh8XCHiq55jJMg0Fe+C6Jvg=";
   };
 
-  nativeBuildInputs = [
+  build-system = [
     setuptools
     setuptools-scm
-    wheel
   ];
 
-  propagatedBuildInputs = [
-    msgpack
-  ];
+  dependencies = [ msgpack ];
 
   passthru.optional-dependencies = {
     compression = [
       lz4
       zstandard
     ];
-    elastic = [
-      elasticsearch
-    ];
-    avro = [
-      fastavro
-    ] ++ fastavro.optional-dependencies.snappy;
+    elastic = [ elasticsearch ];
+    avro = [ fastavro ] ++ fastavro.optional-dependencies.snappy;
   };
 
   nativeCheckInputs = [
     pytest7CheckHook
   ] ++ lib.flatten (builtins.attrValues passthru.optional-dependencies);
 
-  pythonImportsCheck = [
-    "flow.record"
-  ];
+  pythonImportsCheck = [ "flow.record" ];
 
   disabledTestPaths = [
     # Test requires rdump
     "tests/test_rdump.py"
   ];
 
-  disabledTests = [
-    "test_rdump_fieldtype_path_json"
-  ];
+  disabledTests = [ "test_rdump_fieldtype_path_json" ];
 
   meta = with lib; {
     description = "Library for defining and creating structured data";
diff --git a/pkgs/development/python-modules/fontbakery/default.nix b/pkgs/development/python-modules/fontbakery/default.nix
index 3076e6a4c469..313e6d7c7e48 100644
--- a/pkgs/development/python-modules/fontbakery/default.nix
+++ b/pkgs/development/python-modules/fontbakery/default.nix
@@ -47,11 +47,11 @@
 
 buildPythonPackage rec {
   pname = "fontbakery";
-  version = "0.11.2";
+  version = "0.12.5";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-61EXlf+d5kJeUF41OEnGNLaOcSvFWUDFgarVvHQZYmw=";
+    hash = "sha256-DN1v5MQtMhHO12tVPkJUuIfh+X3kb1o71zAwNgtLH+I=";
   };
 
   pyproject = true;
diff --git a/pkgs/development/python-modules/fontbakery/tests.nix b/pkgs/development/python-modules/fontbakery/tests.nix
index 4725b1fee3e3..d968d6ec056d 100644
--- a/pkgs/development/python-modules/fontbakery/tests.nix
+++ b/pkgs/development/python-modules/fontbakery/tests.nix
@@ -10,13 +10,10 @@ runCommand "${pname}-tests" { meta.timeout = 5; } ''
   # Check the version matches what we packaged.
   ${fontbakery}/bin/fontbakery --version | grep -q "${version}"
 
-  # Can it list its own subcommands?
-  ${fontbakery}/bin/fontbakery --list-subcommands >>$out
-
   # Unpack src to get some test fonts.
   tar -xzf ${src} --strip-components=1 ${pname}-${version}/data/test
 
   # Run some font checks.
-  ${fontbakery}/bin/fontbakery check-ufo-sources --no-progress --no-colors data/test/test.ufo >>$out
+  ${fontbakery}/bin/fontbakery check-ufo --no-progress --no-colors data/test/test.ufo >>$out
   # TODO add more
 ''
diff --git a/pkgs/development/python-modules/fontmake/default.nix b/pkgs/development/python-modules/fontmake/default.nix
index 7911750bbeeb..9ad75847b466 100644
--- a/pkgs/development/python-modules/fontmake/default.nix
+++ b/pkgs/development/python-modules/fontmake/default.nix
@@ -12,12 +12,12 @@
 
 buildPythonPackage rec {
   pname = "fontmake";
-  version = "3.8.1";
-  format = "setuptools";
+  version = "3.9.0";
+  pyproject = true;
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-m0cRLm9Jbqlsf9NwR7Lma2NZYUjy5IDJYOorVbdLDuw=";
+    hash = "sha256-KrfT0fvE1fhaM2RH4LqRUda7yMHg2T59UdGi3SSZP7s=";
     extension = "zip";
   };
 
diff --git a/pkgs/development/python-modules/fonttools/default.nix b/pkgs/development/python-modules/fonttools/default.nix
index be573a627e99..57e8372efa76 100644
--- a/pkgs/development/python-modules/fonttools/default.nix
+++ b/pkgs/development/python-modules/fonttools/default.nix
@@ -26,7 +26,7 @@
 
 buildPythonPackage rec {
   pname = "fonttools";
-  version = "4.49.0";
+  version = "4.51.0";
   pyproject = true;
 
   disabled = pythonOlder "3.8";
@@ -35,7 +35,7 @@ buildPythonPackage rec {
     owner  = pname;
     repo   = pname;
     rev = "refs/tags/${version}";
-    hash = "sha256-8xQVuAnIS/mwYKwI+ow0YArIP8wFTKWGLZ+NCgIFYok=";
+    hash = "sha256-JUAFGLjyq/2OXlhTB6dIcO3Mq7Rx1HII+sg2TaQfPYU=";
   };
 
   build-system = [
diff --git a/pkgs/development/python-modules/fpdf2/default.nix b/pkgs/development/python-modules/fpdf2/default.nix
index fdd43f1ca5c8..b3a764724c46 100644
--- a/pkgs/development/python-modules/fpdf2/default.nix
+++ b/pkgs/development/python-modules/fpdf2/default.nix
@@ -57,6 +57,9 @@ buildPythonPackage rec {
     "test_png_url" # tries to download file
     "test_page_background" # tries to download file
     "test_share_images_cache" # uses timing functions
+    "test_bidi_character" # tries to download file
+    "test_bidi_conformance" # tries to download file
+    "test_insert_jpg_jpxdecode" # JPEG2000 is broken
   ];
 
   meta = {
diff --git a/pkgs/development/python-modules/fpylll/default.nix b/pkgs/development/python-modules/fpylll/default.nix
index 95358d5f4aaf..2b4571b53edb 100644
--- a/pkgs/development/python-modules/fpylll/default.nix
+++ b/pkgs/development/python-modules/fpylll/default.nix
@@ -15,6 +15,9 @@
 , fplll
 , numpy
 
+# Reverse dependency
+, sage
+
 # tests
 , pytestCheckHook
 }:
@@ -72,6 +75,8 @@ buildPythonPackage rec {
     export PY_IGNORE_IMPORTMISMATCH=1
   '';
 
+  passthru.tests = { inherit sage; };
+
   meta = with lib; {
     description = "A Python interface for fplll";
     changelog = "https://github.com/fplll/fpylll/releases/tag/${version}";
diff --git a/pkgs/development/python-modules/frozendict/default.nix b/pkgs/development/python-modules/frozendict/default.nix
index 5405e570ed8d..c3f5d2a5600b 100644
--- a/pkgs/development/python-modules/frozendict/default.nix
+++ b/pkgs/development/python-modules/frozendict/default.nix
@@ -9,7 +9,7 @@
 
 buildPythonPackage rec {
   pname = "frozendict";
-  version = "2.4.2";
+  version = "2.4.4";
   pyproject = true;
 
   disabled = pythonOlder "3.6";
@@ -18,7 +18,7 @@ buildPythonPackage rec {
     owner = "Marco-Sulla";
     repo = "python-frozendict";
     rev = "refs/tags/v${version}";
-    hash = "sha256-SXUPzFDVw8+CmD/Jxm/EB70UBdOmauQs69hNr0l3l90=";
+    hash = "sha256-TgXhffUvx74fU2SgDV04R1yS9xGbiP/ksQ+3KGT5bdQ=";
   };
 
   # build C version if it exists
diff --git a/pkgs/development/python-modules/functools32/default.nix b/pkgs/development/python-modules/functools32/default.nix
deleted file mode 100644
index be907e963c10..000000000000
--- a/pkgs/development/python-modules/functools32/default.nix
+++ /dev/null
@@ -1,22 +0,0 @@
-{ lib
-, buildPythonPackage
-, fetchPypi
-, isPy3k
-}:
-
-if isPy3k then null else buildPythonPackage rec {
-  pname = "functools32";
-  version = "3.2.3-2";
-
-  src = fetchPypi {
-    inherit pname version;
-    sha256 = "0v8ya0b58x47wp216n1zamimv4iw57cxz3xxhzix52jkw3xks9gn";
-  };
-
-  meta = with lib; {
-    description = "This is a backport of the functools standard library module from";
-    homepage = "https://github.com/MiCHiLU/python-functools32";
-    license = licenses.psfl;
-  };
-
-}
diff --git a/pkgs/development/python-modules/fuzzytm/default.nix b/pkgs/development/python-modules/fuzzytm/default.nix
index e7dae0d02ee1..3a86d0c55397 100644
--- a/pkgs/development/python-modules/fuzzytm/default.nix
+++ b/pkgs/development/python-modules/fuzzytm/default.nix
@@ -1,28 +1,32 @@
-{ lib
-, buildPythonPackage
-, fetchPypi
-, gensim
-, numpy
-, pandas
-, pyfume
-, scipy
-, pythonOlder
+{
+  lib,
+  buildPythonPackage,
+  fetchPypi,
+  gensim,
+  numpy,
+  pandas,
+  pyfume,
+  setuptools,
+  scipy,
+  pythonOlder,
 }:
 
 buildPythonPackage rec {
   pname = "fuzzytm";
-  version = "2.0.5";
-  format = "setuptools";
+  version = "2.0.9";
+  pyproject = true;
 
   disabled = pythonOlder "3.7";
 
   src = fetchPypi {
     pname = "FuzzyTM";
     inherit version;
-    hash = "sha256-IELkjd3/yc2lBYsLP6mms9LEcXOfVtNNooEKCMf9BtU=";
+    hash = "sha256-z0ESYtB7BqssxIHlrd0F+/qapOM1nrDi3Zih5SvgDGY=";
   };
 
-  propagatedBuildInputs = [
+  build-system = [ setuptools ];
+
+  dependencies = [
     gensim
     numpy
     pandas
@@ -33,9 +37,7 @@ buildPythonPackage rec {
   # Module has no tests
   doCheck = false;
 
-  pythonImportsCheck = [
-    "FuzzyTM"
-  ];
+  pythonImportsCheck = [ "FuzzyTM" ];
 
   meta = with lib; {
     description = "Library for Fuzzy Topic Models";
diff --git a/pkgs/development/python-modules/fyta-cli/default.nix b/pkgs/development/python-modules/fyta-cli/default.nix
index 7e0b2971be50..79189827c7e9 100644
--- a/pkgs/development/python-modules/fyta-cli/default.nix
+++ b/pkgs/development/python-modules/fyta-cli/default.nix
@@ -9,7 +9,7 @@
 
 buildPythonPackage rec {
   pname = "fyta-cli";
-  version = "0.4.0";
+  version = "0.4.1";
   pyproject = true;
 
   disabled = pythonOlder "3.8";
@@ -18,7 +18,7 @@ buildPythonPackage rec {
     owner = "dontinelli";
     repo = "fyta_cli";
     rev = "refs/tags/v${version}";
-    hash = "sha256-ThxC+s0vkvFQw9FKMWO+cHJB1ci+USdxQa4PRqHrKLM=";
+    hash = "sha256-eWuuHIq79n1oFsvBfVySfGCtHz+MlFRR3j8uqtVR+V0=";
   };
 
   build-system = [ hatchling ];
diff --git a/pkgs/development/python-modules/gamble/default.nix b/pkgs/development/python-modules/gamble/default.nix
index 6cdfc4410b34..171eb03a7529 100644
--- a/pkgs/development/python-modules/gamble/default.nix
+++ b/pkgs/development/python-modules/gamble/default.nix
@@ -1,22 +1,29 @@
 { lib
 , buildPythonPackage
-, fetchPypi
+, fetchFromGitHub
 , pytestCheckHook
 , pythonOlder
+, poetry-core
 }:
 
 buildPythonPackage rec {
   pname = "gamble";
-  version = "0.11";
-  format = "setuptools";
+  version = "0.13";
+  pyproject = true;
 
-  disabled = pythonOlder "3.7";
+  disabled = pythonOlder "3.8";
 
-  src = fetchPypi {
-    inherit pname version;
-    hash = "sha256-zsEBqhKidgO1e0lpKhw+LY75I2Df+IefNLaSkBBFKFU=";
+  src = fetchFromGitHub {
+    owner = "jpetrucciani";
+    repo = "gamble";
+    rev = "refs/tags/${version}";
+    hash = "sha256-eHosY/JfJr317S7WI8phy7DNHf3cZzs6c5MMfw7yzAE=";
   };
 
+  build-system = [
+    poetry-core
+  ];
+
   nativeCheckInputs = [
     pytestCheckHook
   ];
diff --git a/pkgs/development/python-modules/gcal-sync/default.nix b/pkgs/development/python-modules/gcal-sync/default.nix
index 7a2ce7e51197..59914e233582 100644
--- a/pkgs/development/python-modules/gcal-sync/default.nix
+++ b/pkgs/development/python-modules/gcal-sync/default.nix
@@ -14,7 +14,7 @@
 
 buildPythonPackage rec {
   pname = "gcal-sync";
-  version = "6.0.4";
+  version = "6.1.0";
   pyproject = true;
 
   disabled = pythonOlder "3.10";
@@ -23,7 +23,7 @@ buildPythonPackage rec {
     owner = "allenporter";
     repo = "gcal_sync";
     rev = "refs/tags/${version}";
-    hash = "sha256-ufoe9+4zhlixcSGMAhuhJx2Y2vrN036N8UvyP3xuTRQ=";
+    hash = "sha256-mZn/3oROIUSv6cCxXs3rBJtlmKsqNflTW2pcER8GisE=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/python-modules/gcovr/default.nix b/pkgs/development/python-modules/gcovr/default.nix
index 7b8b32b2c5de..98051cc1a40c 100644
--- a/pkgs/development/python-modules/gcovr/default.nix
+++ b/pkgs/development/python-modules/gcovr/default.nix
@@ -46,6 +46,6 @@ buildPythonPackage rec {
     homepage = "https://www.gcovr.com/";
     changelog = "https://github.com/gcovr/gcovr/blob/${version}/CHANGELOG.rst";
     license = licenses.bsd0;
-    maintainers = with maintainers; [ ];
+    maintainers = with maintainers; [ sigmanificient ];
   };
 }
diff --git a/pkgs/development/python-modules/gdown/default.nix b/pkgs/development/python-modules/gdown/default.nix
index 1b0b3aa70b92..881840e2a0e8 100644
--- a/pkgs/development/python-modules/gdown/default.nix
+++ b/pkgs/development/python-modules/gdown/default.nix
@@ -15,14 +15,14 @@
 
 buildPythonPackage rec {
   pname = "gdown";
-  version = "5.1.0";
+  version = "5.2.0";
   pyproject = true;
 
   disabled = pythonOlder "3.7";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-VQpy3FyigZ/kvMFdgNBdfJjAuQ5XJWJUt30CVrnfRoM=";
+    hash = "sha256-IUUWUGLYVSCjzZizVsntUixeeYTUCFNUCf1G+U3vx4c=";
   };
 
   build-system = [
diff --git a/pkgs/development/python-modules/gemfileparser/default.nix b/pkgs/development/python-modules/gemfileparser/default.nix
index e6b91d24f804..73ef12c7496f 100644
--- a/pkgs/development/python-modules/gemfileparser/default.nix
+++ b/pkgs/development/python-modules/gemfileparser/default.nix
@@ -1,31 +1,38 @@
-{ lib
-, fetchPypi
-, buildPythonPackage
-, pytestCheckHook
+{
+  lib,
+  buildPythonPackage,
+  fetchPypi,
+  pytestCheckHook,
+  pythonOlder,
+  setuptools,
 }:
+
 buildPythonPackage rec {
   pname = "gemfileparser";
   version = "0.8.0";
-  format = "setuptools";
+  pyproject = true;
+
+  disabled = pythonOlder "3.7";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "839592e49ea3fd985cec003ef58f8e77009a69ed7644a0c0acc94cf6dd9b8d6e";
+    hash = "sha256-g5WS5J6j/Zhc7AA+9Y+OdwCaae12RKDArMlM9t2bjW4=";
   };
 
-  nativeCheckInputs = [
-    pytestCheckHook
-  ];
+  build-system = [ setuptools ];
+
+  nativeCheckInputs = [ pytestCheckHook ];
 
-  pythonImportsCheck = [
-    "gemfileparser"
-  ];
+  pythonImportsCheck = [ "gemfileparser" ];
 
   meta = with lib; {
     description = "A library to parse Ruby Gemfile, .gemspec and Cocoapod .podspec file using Python";
-    mainProgram = "parsegemfile";
     homepage = "https://github.com/gemfileparser/gemfileparser";
-    license = with licenses; [ gpl3Plus /* or */ mit ];
-    maintainers = [ ];
+    license = with licenses; [
+      gpl3Plus
+      mit
+    ];
+    maintainers = with maintainers; [ ];
+    mainProgram = "parsegemfile";
   };
 }
diff --git a/pkgs/development/python-modules/gensim/default.nix b/pkgs/development/python-modules/gensim/default.nix
index f43bfb518cfb..171c0faabf92 100644
--- a/pkgs/development/python-modules/gensim/default.nix
+++ b/pkgs/development/python-modules/gensim/default.nix
@@ -2,6 +2,7 @@
 , buildPythonPackage
 , cython
 , fetchPypi
+, fetchpatch
 , mock
 , numpy
 , scipy
@@ -24,6 +25,16 @@ buildPythonPackage rec {
     hash = "sha256-maxq9v/UBoLnAVXtn5Lsv0OE1Z+1CvEg00PqXuGzCKs=";
   };
 
+  patches = [
+    # https://github.com/piskvorky/gensim/pull/3524
+    # Import deprecated scipy.linalg.triu from numpy.triu. remove on next update
+    (fetchpatch {
+      name = "scipi-linalg-triu-fix.patch";
+      url = "https://github.com/piskvorky/gensim/commit/ad68ee3f105fc37cf8db333bfb837fe889ff74ac.patch";
+      hash = "sha256-Ij6HvVD8M2amzcjihu5bo8Lk0iCPl3iIq0lcOnI6G2s=";
+    })
+  ];
+
   nativeBuildInputs = [
     cython
   ];
diff --git a/pkgs/development/python-modules/geoalchemy2/default.nix b/pkgs/development/python-modules/geoalchemy2/default.nix
index 8e49a7d14b71..df89acd2b6b7 100644
--- a/pkgs/development/python-modules/geoalchemy2/default.nix
+++ b/pkgs/development/python-modules/geoalchemy2/default.nix
@@ -13,7 +13,7 @@
 
 buildPythonPackage rec {
   pname = "geoalchemy2";
-  version = "0.15.0";
+  version = "0.15.1";
   pyproject = true;
 
   disabled = pythonOlder "3.7";
@@ -22,7 +22,7 @@ buildPythonPackage rec {
     owner = "geoalchemy";
     repo = "geoalchemy2";
     rev = "refs/tags/${version}";
-    hash = "sha256-cQixNLtjHPQrnNcxg0MrIdzvun2f1BqKY/2SxfcM2Nc=";
+    hash = "sha256-EMsaB6VDDDvXg9LKa9ms0+AfzX1rG+yeR898EK59DDs=";
   };
 
   build-system = [
diff --git a/pkgs/development/python-modules/geventhttpclient/default.nix b/pkgs/development/python-modules/geventhttpclient/default.nix
index 1943888df752..d61e390135c3 100644
--- a/pkgs/development/python-modules/geventhttpclient/default.nix
+++ b/pkgs/development/python-modules/geventhttpclient/default.nix
@@ -3,10 +3,12 @@
 , buildPythonPackage
 , certifi
 , dpkt
-, fetchPypi
+, fetchFromGitHub
 , gevent
+, llhttp
 , pytestCheckHook
 , pythonOlder
+, setuptools
 , six
 , stdenv
 , urllib3
@@ -14,27 +16,34 @@
 
 buildPythonPackage rec {
   pname = "geventhttpclient";
-  version = "2.0.12";
-  format = "setuptools";
+  version = "2.3.1";
+  pyproject = true;
 
   disabled = pythonOlder "3.6";
 
-  src = fetchPypi {
-    inherit pname version;
-    hash = "sha256-6+oI55wap9A7Q5NrNHwPhzVub7HGhFc1oR8jyUnGVfc=";
+  src = fetchFromGitHub {
+    owner = "geventhttpclient";
+    repo = "geventhttpclient";
+    rev = "refs/tags/${version}";
+    # TODO: unvendor llhttp
+    fetchSubmodules = true;
+    hash = "sha256-uOGnwPbvTam14SFTUT0UrwxHfP4a5cn3a7EhLoGBUrA=";
   };
 
-  propagatedBuildInputs = [
+  build-system = [
+    setuptools
+  ];
+
+  dependencies = [
     brotli
     certifi
     gevent
-    six
+    urllib3
   ];
 
   nativeCheckInputs = [
     dpkt
     pytestCheckHook
-    urllib3
   ];
 
   # lots of: [Errno 48] Address already in use: ('127.0.0.1', 54323)
@@ -42,15 +51,12 @@ buildPythonPackage rec {
 
   __darwinAllowLocalNetworking = true;
 
-  disabledTests = [
-    # socket.gaierror: [Errno -3] Temporary failure in name resolution
-    "test_client_simple"
-    "test_client_without_leading_slas"
-    "test_request_with_headers"
-    "test_response_context_manager"
-    "test_client_ssl"
-    "test_ssl_fail_invalid_certificate"
-    "test_multi_queries_greenlet_safe"
+  preCheck = ''
+    rm -rf geventhttpclient
+  '';
+
+  pytestFlagsArray = [
+    "-m 'not network'"
   ];
 
   pythonImportsCheck = [
diff --git a/pkgs/development/python-modules/gflanguages/default.nix b/pkgs/development/python-modules/gflanguages/default.nix
index 9a3f77f957c0..0a6023a81749 100644
--- a/pkgs/development/python-modules/gflanguages/default.nix
+++ b/pkgs/development/python-modules/gflanguages/default.nix
@@ -13,13 +13,13 @@
 
 buildPythonPackage rec {
   pname = "gflanguages";
-  version = "0.5.17";
+  version = "0.6.0";
 
   disabled = pythonOlder "3.7";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-dScgRQ6usjSqV0FqDyP+KGvHL06wlTFVcO+MmZ2NMAs=";
+    hash = "sha256-kaJZ0STN2U/4vQ7g5VbpPGv64czryK8jXmIJ97bkItA=";
   };
 
   pyproject = true;
diff --git a/pkgs/development/python-modules/gguf/default.nix b/pkgs/development/python-modules/gguf/default.nix
new file mode 100644
index 000000000000..767a8472adf8
--- /dev/null
+++ b/pkgs/development/python-modules/gguf/default.nix
@@ -0,0 +1,33 @@
+{ lib
+, buildPythonPackage
+, fetchPypi
+, numpy
+, poetry-core
+, pythonOlder
+}:
+buildPythonPackage rec {
+  pname = "gguf";
+  version = "0.6.0";
+  format = "pyproject";
+
+  disabled = pythonOlder "3.7";
+
+  src = fetchPypi {
+    inherit pname version;
+    hash = "sha256-suIuq6KhBsGtFIGGoUrZ8pxCk1Fob+nXzhbfOaBgfmU=";
+  };
+
+  dependencies = [
+    numpy
+    poetry-core
+  ];
+
+  doCheck = false;
+
+  meta = with lib; {
+    description = "A module for writing binary files in the GGUF format";
+    homepage = "https://ggml.ai/";
+    license = licenses.mit;
+    maintainers = with maintainers; [ mitchmindtree ];
+  };
+}
diff --git a/pkgs/development/python-modules/gipc/default.nix b/pkgs/development/python-modules/gipc/default.nix
index 297b6c9865de..7a0529cc89af 100644
--- a/pkgs/development/python-modules/gipc/default.nix
+++ b/pkgs/development/python-modules/gipc/default.nix
@@ -1,33 +1,56 @@
-{ lib
-, buildPythonPackage
-, fetchFromGitHub
-, gevent
-, pytestCheckHook
+{
+  lib,
+  buildPythonPackage,
+  fetchFromGitHub,
+  gevent,
+  pytestCheckHook,
+  pythonOlder,
+  setuptools,
 }:
 
 buildPythonPackage rec {
   pname = "gipc";
-  version = "1.4.0";
-  format = "setuptools";
+  version = "1.6.0";
+  pyproject = true;
+
+  disabled = pythonOlder "3.8";
 
   src = fetchFromGitHub {
     owner = "jgehrcke";
     repo = "gipc";
     rev = "refs/tags/${version}";
-    hash = "sha256-T5TqLanODyzJGyjDZz+75bbz3THxoobYnfJFQxAB76E=";
+    hash = "sha256-eYE7A1VDJ0NSshvdJKxPwGyVdW6BnyWoRSR1i1iTr8Y=";
   };
 
   postPatch = ''
     substituteInPlace setup.py \
-      --replace "gevent>=1.5,<=21.12.0" "gevent>=1.5"
+      --replace-fail "gevent>=1.5,<=23.9.1" "gevent>=1.5"
   '';
 
-  propagatedBuildInputs = [
-    gevent
-  ];
+  build-system = [ setuptools ];
+
+  dependencies = [ gevent ];
 
-  nativeCheckInputs = [
-    pytestCheckHook
+  nativeCheckInputs = [ pytestCheckHook ];
+
+  pythonImportsCheck = [ "gipc" ];
+
+  disabledTests = [
+    # AttributeError
+    "test_all_handles_length"
+    "test_child"
+    "test_closeread"
+    "test_closewrite"
+    "test_early_readchild_exit"
+    "test_handlecount"
+    "test_handler"
+    "test_onewriter"
+    "test_readclose"
+    "test_singlemsg"
+    "test_twochannels_singlemsg"
+    "test_twoclose"
+    "test_twowriters"
+    "test_write_closewrite_read"
   ];
 
   meta = with lib; {
@@ -41,7 +64,8 @@ buildPythonPackage rec {
       anywhere within your gevent-powered application.
     '';
     homepage = "http://gehrcke.de/gipc";
+    changelog = "https://github.com/jgehrcke/gipc/blob/${version}/CHANGELOG.rst";
     license = licenses.mit;
+    maintainers = with maintainers; [ ];
   };
-
 }
diff --git a/pkgs/development/python-modules/glean-parser/default.nix b/pkgs/development/python-modules/glean-parser/default.nix
index 86a4c6248f5d..510d3c9d8c1b 100644
--- a/pkgs/development/python-modules/glean-parser/default.nix
+++ b/pkgs/development/python-modules/glean-parser/default.nix
@@ -9,13 +9,14 @@
 , pytestCheckHook
 , pythonOlder
 , pyyaml
+, setuptools
 , setuptools-scm
 , yamllint
 }:
 
 buildPythonPackage rec {
   pname = "glean-parser";
-  version = "13.0.1";
+  version = "14.1.2";
   format = "setuptools";
 
   disabled = pythonOlder "3.8";
@@ -23,7 +24,7 @@ buildPythonPackage rec {
   src = fetchPypi {
     pname = "glean_parser";
     inherit version;
-    hash = "sha256-/urUy+xpMO04pI31uunrTuSGu0Am3fLzIGuF+AJ50ec=";
+    hash = "sha256-OL59Tg+rD4M0DjQnkU4IqGMcf6sIioxg6bVDyrbqgww=";
   };
 
   postPatch = ''
@@ -43,6 +44,7 @@ buildPythonPackage rec {
     jinja2
     jsonschema
     pyyaml
+    setuptools
     yamllint
   ];
 
diff --git a/pkgs/development/python-modules/glob2/default.nix b/pkgs/development/python-modules/glob2/default.nix
index 5d75da953ed5..24658f2f7874 100644
--- a/pkgs/development/python-modules/glob2/default.nix
+++ b/pkgs/development/python-modules/glob2/default.nix
@@ -22,6 +22,6 @@ buildPythonPackage rec {
     description = "Version of the glob module that can capture patterns and supports recursive wildcards";
     homepage = "https://github.com/miracle2k/python-glob2/";
     license = licenses.bsd3;
-    maintainers = [ ];
+    maintainers = with lib.maintainers; [ sigmanificient ];
   };
 }
diff --git a/pkgs/development/python-modules/globre/default.nix b/pkgs/development/python-modules/globre/default.nix
deleted file mode 100644
index a270a2b4c430..000000000000
--- a/pkgs/development/python-modules/globre/default.nix
+++ /dev/null
@@ -1,29 +0,0 @@
-{ lib
-, pythonAtLeast
-, buildPythonPackage
-, fetchPypi
-, nose
-, coverage
-}:
-
-buildPythonPackage rec {
-  pname = "globre";
-  version = "0.1.5";
-  format = "setuptools";
-  # https://github.com/metagriffin/globre/issues/7
-  disabled = pythonAtLeast "3.7";
-
-  src = fetchPypi {
-    inherit pname version;
-    sha256 = "1qhjpg0722871dm5m7mmldf6c7mx58fbdvk1ix5i3s9py82448gf";
-  };
-
-  nativeCheckInputs = [ nose coverage ];
-
-  meta = with lib; {
-    homepage = "https://github.com/metagriffin/globre";
-    description = "A python glob-like regular expression generation library.";
-    maintainers = with maintainers; [ glittershark ];
-    license = licenses.gpl3;
-  };
-}
diff --git a/pkgs/development/python-modules/globus-sdk/default.nix b/pkgs/development/python-modules/globus-sdk/default.nix
index cd8528125780..646fb31650d1 100644
--- a/pkgs/development/python-modules/globus-sdk/default.nix
+++ b/pkgs/development/python-modules/globus-sdk/default.nix
@@ -2,18 +2,20 @@
 , buildPythonPackage
 , cryptography
 , fetchFromGitHub
+, flaky
 , pyjwt
 , pytestCheckHook
 , pythonOlder
 , requests
 , responses
+, setuptools
 , typing-extensions
 }:
 
 buildPythonPackage rec {
   pname = "globus-sdk";
-  version = "3.39.0";
-  format = "setuptools";
+  version = "3.41.0";
+  pyproject = true;
 
   disabled = pythonOlder "3.7";
 
@@ -21,10 +23,14 @@ buildPythonPackage rec {
     owner = "globus";
     repo = "globus-sdk-python";
     rev = "refs/tags/${version}";
-    hash = "sha256-DjGwwpXzYRq5/hiUs/l8kD/yA58vbhvrKirKDlWoAmY=";
+    hash = "sha256-FQO1D960mg0G/zYMo4J5MtJbPID4oE8UWNpTPKWtsic=";
   };
 
-  propagatedBuildInputs = [
+  build-system = [
+    setuptools
+  ];
+
+  dependencies = [
     cryptography
     requests
     pyjwt
@@ -34,17 +40,11 @@ buildPythonPackage rec {
 
   nativeCheckInputs = [
     pytestCheckHook
-    responses
   ];
 
-  postPatch = ''
-    substituteInPlace setup.py \
-    --replace "pyjwt[crypto]>=2.0.0,<3.0.0" "pyjwt[crypto]>=2.0.0,<3.0.0"
-  '';
-
-  pytestFlagsArray = [
-    "-W"
-    "ignore::DeprecationWarning"
+  checkInputs = [
+    flaky
+    responses
   ];
 
   pythonImportsCheck = [
diff --git a/pkgs/development/python-modules/glymur/default.nix b/pkgs/development/python-modules/glymur/default.nix
index 4ff23443e40d..0f8ad79c72b2 100644
--- a/pkgs/development/python-modules/glymur/default.nix
+++ b/pkgs/development/python-modules/glymur/default.nix
@@ -1,10 +1,13 @@
 { lib
 , stdenv
 , buildPythonPackage
+, substituteAll
+, glibc
+, libtiff
+, openjpeg
 , fetchFromGitHub
 , lxml
 , numpy
-, openjpeg
 , pytestCheckHook
 , pythonOlder
 , scikit-image
@@ -13,54 +16,66 @@
 
 buildPythonPackage rec {
   pname = "glymur";
-  version = "0.12.5";
-  format = "pyproject";
+  version = "0.13.2";
+  pyproject = true;
 
   disabled = pythonOlder "3.6";
 
   src = fetchFromGitHub {
     owner = "quintusdias";
-    repo = pname;
+    repo = "glymur";
     rev = "refs/tags/v${version}";
-    hash = "sha256-9NMSAt5yFRnlCUDP37/ozhDsS8FTdRkfjUz8kQwWzVc=";
+    hash = "sha256-GUqe9mdMm2O/cbZw8Reohh4X1kO+xOMWHb83PjNvdu8=";
   };
 
-  nativeBuildInputs = [
+  patches = [
+    (substituteAll {
+      src = ./set-lib-paths.patch;
+      openjp2_lib = "${lib.getLib openjpeg}/lib/libopenjp2${stdenv.hostPlatform.extensions.sharedLibrary}";
+      tiff_lib = "${lib.getLib libtiff}/lib/libtiff${stdenv.hostPlatform.extensions.sharedLibrary}";
+    })
+  ];
+
+  postPatch = lib.optionalString (!stdenv.isDarwin) ''
+    substituteInPlace glymur/lib/tiff.py \
+        --replace-fail "glymur_config('c')" "ctypes.CDLL('${lib.getLib glibc}/lib/libc.so.6')"
+  '';
+
+  __propagatedImpureHostDeps = lib.optional stdenv.isDarwin "/usr/lib/libc.dylib";
+
+  build-system = [
     setuptools
   ];
 
-  propagatedBuildInputs = [
+  dependencies = [
+    lxml
     numpy
   ];
 
   nativeCheckInputs = [
-    lxml
     pytestCheckHook
     scikit-image
   ];
 
-  postConfigure = ''
-    substituteInPlace glymur/config.py \
-    --replace "path = read_config_file(libname)" "path = '${openjpeg}/lib/lib' + libname + ${if stdenv.isDarwin then "'.dylib'" else "'.so'"}"
+  preCheck = ''
+    export PATH="$out/bin:$PATH"
   '';
 
   disabledTestPaths = [
     # this test involves glymur's different ways of finding the openjpeg path on
     # fsh systems by reading an .rc file and such, and is obviated by the patch
-    # in postConfigure
     "tests/test_config.py"
-    "tests/test_tiff2jp2.py"
   ];
 
   pythonImportsCheck = [
     "glymur"
   ];
 
-  meta = with lib; {
+  meta = {
     description = "Tools for accessing JPEG2000 files";
     homepage = "https://github.com/quintusdias/glymur";
     changelog = "https://github.com/quintusdias/glymur/blob/v${version}/CHANGES.txt";
-    license = licenses.mit;
-    maintainers = with maintainers; [ ];
+    license = lib.licenses.mit;
+    maintainers = with lib.maintainers; [ tomasajt ];
   };
 }
diff --git a/pkgs/development/python-modules/glymur/set-lib-paths.patch b/pkgs/development/python-modules/glymur/set-lib-paths.patch
new file mode 100644
index 000000000000..4ae7b58b1cdc
--- /dev/null
+++ b/pkgs/development/python-modules/glymur/set-lib-paths.patch
@@ -0,0 +1,16 @@
+diff --git a/glymur/config.py b/glymur/config.py
+index 962e299..dab44ba 100644
+--- a/glymur/config.py
++++ b/glymur/config.py
+@@ -53,6 +53,11 @@ def _determine_full_path(libname):
+     if path is not None:
+         return path
+ 
++    if libname == "openjp2":
++        return "@openjp2_lib@"
++    if libname == "tiff":
++        return "@tiff_lib@"
++
+     # No joy on config file.  Cygwin?  Cygwin is a bit of an odd case.
+     if platform.system().startswith('CYGWIN'):
+         g = pathlib.Path('/usr/bin').glob('cygopenjp2*.dll')
diff --git a/pkgs/development/python-modules/glyphsets/default.nix b/pkgs/development/python-modules/glyphsets/default.nix
index f59e7f09607d..a686f67a64d9 100644
--- a/pkgs/development/python-modules/glyphsets/default.nix
+++ b/pkgs/development/python-modules/glyphsets/default.nix
@@ -6,6 +6,7 @@
 , gflanguages
 , glyphslib
 , pytestCheckHook
+, pyyaml
 , requests
 , setuptools
 , setuptools-scm
@@ -14,12 +15,12 @@
 
 buildPythonPackage rec {
   pname = "glyphsets";
-  version = "0.6.14";
+  version = "1.0.0";
   pyproject = true;
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-lMRgchadgKyfFLw6ZF1sJAKBAK75zmw77L34MW9p7TI=";
+    hash = "sha256-fa+W1IGIZcn1P1xNKm1Yb/TOuf4QdDVnIvlDkOLOcLY=";
   };
 
   dependencies = [
@@ -27,6 +28,7 @@ buildPythonPackage rec {
     fonttools
     gflanguages
     glyphslib
+    pyyaml
     requests
     setuptools
     unicodedata2
diff --git a/pkgs/development/python-modules/glyphslib/default.nix b/pkgs/development/python-modules/glyphslib/default.nix
index 37f527f29e1b..99e519ef3728 100644
--- a/pkgs/development/python-modules/glyphslib/default.nix
+++ b/pkgs/development/python-modules/glyphslib/default.nix
@@ -16,7 +16,7 @@
 
 buildPythonPackage rec {
   pname = "glyphslib";
-  version = "6.7.0";
+  version = "6.7.1";
 
   format = "pyproject";
 
@@ -24,7 +24,7 @@ buildPythonPackage rec {
     owner = "googlefonts";
     repo = "glyphsLib";
     rev = "refs/tags/v${version}";
-    hash = "sha256-Fhp/2nK1LFgpJ3J7ZTxl2jKT6sCDyqT5qlLCtbnUejM=";
+    hash = "sha256-mUwbUGLhxwoYEwjbT558rTA8dtWxQXyqWYNEVy/WpIU=";
   };
 
   nativeBuildInputs = [ setuptools-scm ];
diff --git a/pkgs/development/python-modules/gmpy/default.nix b/pkgs/development/python-modules/gmpy/default.nix
index 072ef985dc01..d68f038ec3b9 100644
--- a/pkgs/development/python-modules/gmpy/default.nix
+++ b/pkgs/development/python-modules/gmpy/default.nix
@@ -1,28 +1,39 @@
-{ buildPythonPackage, fetchurl, isPyPy, gmp, pythonAtLeast } :
+{
+  lib,
+  buildPythonPackage,
+  fetchFromGitHub,
+  isPyPy,
+  pythonAtLeast,
+  setuptools,
+  gmp,
+}:
 
-let
+buildPythonPackage rec {
   pname = "gmpy";
   version = "1.17";
-  format = "setuptools";
-in
-
-buildPythonPackage {
-  inherit pname version;
+  pyproject = true;
 
   # Python 3.11 has finally made changes to its C API for which gmpy 1.17,
   # published in 2013, would require patching. It seems unlikely that any
   # patches will be forthcoming.
   disabled = isPyPy || pythonAtLeast "3.11";
 
-  src = fetchurl {
-    url = "mirror://pypi/g/gmpy/${pname}-${version}.zip";
-    sha256 = "1a79118a5332b40aba6aa24b051ead3a31b9b3b9642288934da754515da8fa14";
+  src = fetchFromGitHub {
+    owner = "aleaxit";
+    repo = "gmpy";
+    rev = "refs/tags/gmpy_${lib.replaceStrings [ "." ] [ "_" ] version}";
+    hash = "sha256-kMidOjhKJlDRu2qaiq9c+XcwD1tNAoPhRTvvGcOJe8I=";
   };
 
+  build-system = [ setuptools ];
+
   buildInputs = [ gmp ];
 
+  pythonImportsCheck = [ "gmpy" ];
+
   meta = {
     description = "GMP or MPIR interface to Python 2.4+ and 3.x";
     homepage = "https://github.com/aleaxit/gmpy/";
+    license = lib.licenses.lgpl21Plus;
   };
 }
diff --git a/pkgs/development/python-modules/gmpy2/default.nix b/pkgs/development/python-modules/gmpy2/default.nix
index b5a602d4f222..7bf82ed02b2d 100644
--- a/pkgs/development/python-modules/gmpy2/default.nix
+++ b/pkgs/development/python-modules/gmpy2/default.nix
@@ -1,37 +1,73 @@
-{ lib
-, buildPythonPackage
-, fetchFromGitHub
-, isPyPy
-, gmp
-, mpfr
-, libmpc
+{
+  lib,
+  stdenv,
+  buildPythonPackage,
+  fetchFromGitHub,
+  isPyPy,
+  pythonOlder,
+  setuptools,
+  gmp,
+  mpfr,
+  libmpc,
+  pytestCheckHook,
+  hypothesis,
+  cython,
+  mpmath,
+  # Reverse dependency
+  sage,
 }:
 
-let
+buildPythonPackage rec {
   pname = "gmpy2";
-  version = "2.1.2";
-  format = "setuptools";
-in
+  version = "2.2.0a2";
+  pyproject = true;
 
-buildPythonPackage {
-  inherit pname version;
-
-  disabled = isPyPy;
+  disabled = isPyPy || pythonOlder "3.7";
 
   src = fetchFromGitHub {
     owner = "aleaxit";
     repo = "gmpy";
-    rev = "gmpy2-${version}";
-    hash = "sha256-ARCttNzRA+Ji2j2NYaSCDXgvoEg01T9BnYadyqON2o0=";
+    rev = "refs/tags/gmpy2-${version}";
+    hash = "sha256-luLEDEY1cezhzZo4fXmM/MUg2YyAaz7n0HwSpbNayP8=";
   };
 
-  buildInputs = [ gmp mpfr libmpc ];
+  build-system = [ setuptools ];
+
+  buildInputs = [
+    gmp
+    mpfr
+    libmpc
+  ];
+
+  # make relative imports in tests work properly
+  preCheck = ''
+    rm gmpy2 -r
+  '';
+
+  nativeCheckInputs = [
+    pytestCheckHook
+    hypothesis
+    cython
+    mpmath
+  ];
+
+  disabledTests = lib.optionals (stdenv.isLinux && stdenv.isAarch64) [
+    # issue with some overflow logic
+    "test_mpz_to_bytes"
+    "test_mpz_from_bytes"
+  ];
 
   pythonImportsCheck = [ "gmpy2" ];
 
-  meta = with lib; {
-    description = "GMP/MPIR, MPFR, and MPC interface to Python 2.6+ and 3.x";
+  passthru.tests = {
+    inherit sage;
+  };
+
+  meta = {
+    changelog = "https://github.com/aleaxit/gmpy/blob/${src.rev}/docs/history.rst";
+    description = "Interface to GMP, MPFR, and MPC for Python 3.7+";
     homepage = "https://github.com/aleaxit/gmpy/";
-    license = licenses.gpl3Plus;
+    license = lib.licenses.lgpl3Plus;
+    maintainers = with lib.maintainers; [ tomasajt ];
   };
 }
diff --git a/pkgs/development/python-modules/goodwe/default.nix b/pkgs/development/python-modules/goodwe/default.nix
index 8e4eb71a97dc..a7811fbf5c03 100644
--- a/pkgs/development/python-modules/goodwe/default.nix
+++ b/pkgs/development/python-modules/goodwe/default.nix
@@ -9,7 +9,7 @@
 
 buildPythonPackage rec {
   pname = "goodwe";
-  version = "0.3.3";
+  version = "0.4.2";
   pyproject = true;
 
   disabled = pythonOlder "3.8";
@@ -18,7 +18,7 @@ buildPythonPackage rec {
     owner = "marcelblijleven";
     repo = "goodwe";
     rev = "refs/tags/v${version}";
-    hash = "sha256-CIEv3srjyVWQ1UGKVRwPXpzrND/8hTbw6HSlko9+AIk=";
+    hash = "sha256-Zptw8iEPjakMQ/OytGAqDaG973XuMy5UzsNv4LONlRU=";
   };
 
   postPatch = ''
diff --git a/pkgs/development/python-modules/google-ai-generativelanguage/default.nix b/pkgs/development/python-modules/google-ai-generativelanguage/default.nix
index f19df6658fd2..37194dc41b01 100644
--- a/pkgs/development/python-modules/google-ai-generativelanguage/default.nix
+++ b/pkgs/development/python-modules/google-ai-generativelanguage/default.nix
@@ -17,14 +17,14 @@
 
 buildPythonPackage rec {
   pname = "google-ai-generativelanguage";
-  version = "0.6.2";
+  version = "0.6.3";
   pyproject = true;
 
   disabled = pythonOlder "3.7";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-MIeRrDudrQFbNZFylwc5qjdT3VQhQqQW0H+foEfiI4Y=";
+    hash = "sha256-EKEfHhu4Rw/1ADDBrNcps6unopreLDDPHRyRcpE2bGc=";
   };
 
   build-system = [ setuptools ];
diff --git a/pkgs/development/python-modules/google-auth/default.nix b/pkgs/development/python-modules/google-auth/default.nix
index efe5dcd33541..b8ff0805b01e 100644
--- a/pkgs/development/python-modules/google-auth/default.nix
+++ b/pkgs/development/python-modules/google-auth/default.nix
@@ -26,14 +26,14 @@
 
 buildPythonPackage rec {
   pname = "google-auth";
-  version = "2.28.1";
+  version = "2.29.0";
   pyproject = true;
 
   disabled = pythonOlder "3.7";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-NPwwRsJXztzxYi/Esx/Cvnkj2bTUSXPUgRJezFDYOIU=";
+    hash = "sha256-Zy3/My0HMidVD/x0V4aKxCGNbFALFV/mzBfSsTYCw2A=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/python-modules/google-cloud-bigquery-storage/default.nix b/pkgs/development/python-modules/google-cloud-bigquery-storage/default.nix
index 1cda61e13757..a669bd364133 100644
--- a/pkgs/development/python-modules/google-cloud-bigquery-storage/default.nix
+++ b/pkgs/development/python-modules/google-cloud-bigquery-storage/default.nix
@@ -14,14 +14,14 @@
 
 buildPythonPackage rec {
   pname = "google-cloud-bigquery-storage";
-  version = "2.24.0";
+  version = "2.25.0";
   format = "setuptools";
 
   disabled = pythonOlder "3.7";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-tK9bmqzYOWuEB9G4d2AaN22O6m0ZKCOop4gb0v3Ads4=";
+    hash = "sha256-GV/9KxgOnqoivqs+QKC2Hs0UbssyZnz0Immo1xEbTUg=";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/google-cloud-bigquery/default.nix b/pkgs/development/python-modules/google-cloud-bigquery/default.nix
index a079fffd2510..564ea58c7136 100644
--- a/pkgs/development/python-modules/google-cloud-bigquery/default.nix
+++ b/pkgs/development/python-modules/google-cloud-bigquery/default.nix
@@ -30,14 +30,14 @@
 
 buildPythonPackage rec {
   pname = "google-cloud-bigquery";
-  version = "3.21.0";
+  version = "3.22.0";
   pyproject = true;
 
   disabled = pythonOlder "3.7";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-YmXDn51b31DxHLganCoGBdKF3zSsE53g0jM7ElCt0P8=";
+    hash = "sha256-lXWR5vlI18tKoPeo5OR7RhfNfwJp4opxw3lTw5tuikw=";
   };
 
   build-system = [ setuptools ];
@@ -93,8 +93,10 @@ buildPythonPackage rec {
     "test_arrow_extension_types_same_for_storage_and_REST_APIs_894"
     "test_list_rows_empty_table"
     "test_list_rows_page_size"
-    "test_list_rows_scalars"
+    "test_list_rows_range_csv"
+    "test_list_rows_range"
     "test_list_rows_scalars_extreme"
+    "test_list_rows_scalars"
     "test_dry_run"
     "test_session"
     # Mocking of _ensure_bqstorage_client fails
diff --git a/pkgs/development/python-modules/google-cloud-dlp/default.nix b/pkgs/development/python-modules/google-cloud-dlp/default.nix
index f3895b8e3ef1..52c1ee3e4f2d 100644
--- a/pkgs/development/python-modules/google-cloud-dlp/default.nix
+++ b/pkgs/development/python-modules/google-cloud-dlp/default.nix
@@ -14,14 +14,14 @@
 
 buildPythonPackage rec {
   pname = "google-cloud-dlp";
-  version = "3.16.0";
+  version = "3.17.0";
   pyproject = true;
 
   disabled = pythonOlder "3.7";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-DWmh96XviHVsmeVrivTDnq5A0hBog/DieUxcs2QmltU=";
+    hash = "sha256-YMUEBj8c154KA5Y/cm1gbypDxkfY4ncCq5wbym5rS9s=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/python-modules/google-cloud-iam/default.nix b/pkgs/development/python-modules/google-cloud-iam/default.nix
index 93c85687dd4c..c5b192169bef 100644
--- a/pkgs/development/python-modules/google-cloud-iam/default.nix
+++ b/pkgs/development/python-modules/google-cloud-iam/default.nix
@@ -12,14 +12,14 @@
 
 buildPythonPackage rec {
   pname = "google-cloud-iam";
-  version = "2.14.3";
+  version = "2.15.0";
   format = "setuptools";
 
   disabled = pythonOlder "3.6";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-yC6ZP4qSGcW6H84TnDSu1vAZ3V+bRc6VbVQwWD0q8m4=";
+    hash = "sha256-6TgaGCPlFi9owoBI/xowe6Og5Tja9getfUHP47dWpvA=";
   };
 
   propagatedBuildInputs = [
@@ -34,6 +34,11 @@ buildPythonPackage rec {
     pytestCheckHook
   ];
 
+  disabledTestPaths =[
+    # unmaintained, reference wrong import path for google.cloud.iam.v1
+    "tests/unit/gapic/iam_admin_v1/test_iam.py"
+  ];
+
   pythonImportsCheck = [
     "google.cloud.iam_credentials"
     "google.cloud.iam_credentials_v1"
diff --git a/pkgs/development/python-modules/google-cloud-kms/default.nix b/pkgs/development/python-modules/google-cloud-kms/default.nix
index 45fd8082d3d0..2dec1cea50a3 100644
--- a/pkgs/development/python-modules/google-cloud-kms/default.nix
+++ b/pkgs/development/python-modules/google-cloud-kms/default.nix
@@ -14,14 +14,14 @@
 
 buildPythonPackage rec {
   pname = "google-cloud-kms";
-  version = "2.21.3";
+  version = "2.21.4";
   pyproject = true;
 
   disabled = pythonOlder "3.7";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-XofVp7fY9bXJ8PZI81KniGlRqLTHJwPrnOe6gHb8JTM=";
+    hash = "sha256-AQW8FKOYt/05GUO766/VkY8+NAaCepiXObLcOInMEhg=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/python-modules/google-generativeai/default.nix b/pkgs/development/python-modules/google-generativeai/default.nix
index 4425966a0063..a595dae0dc24 100644
--- a/pkgs/development/python-modules/google-generativeai/default.nix
+++ b/pkgs/development/python-modules/google-generativeai/default.nix
@@ -17,7 +17,7 @@
 
 buildPythonPackage rec {
   pname = "google-generativeai";
-  version = "0.5.2";
+  version = "0.5.4";
   pyproject = true;
 
   disabled = pythonOlder "3.9";
@@ -26,7 +26,7 @@ buildPythonPackage rec {
     owner = "google";
     repo = "generative-ai-python";
     rev = "refs/tags/v${version}";
-    hash = "sha256-R1ndVzGKXWRNkWvvuP4HFBXbuk54bCZZvMJY+yalJGU=";
+    hash = "sha256-g/strcvXNT21pD4Lt9sgFBgEgiFid+D/cUlTm6k3R6s=";
   };
 
   pythonRelaxDeps = [ "google-ai-generativelanguage" ];
diff --git a/pkgs/development/python-modules/gotailwind/default.nix b/pkgs/development/python-modules/gotailwind/default.nix
index f1ae7880a279..8593c49ddc11 100644
--- a/pkgs/development/python-modules/gotailwind/default.nix
+++ b/pkgs/development/python-modules/gotailwind/default.nix
@@ -1,25 +1,26 @@
-{ lib
-, aiohttp
-, aresponses
-, awesomeversion
-, backoff
-, buildPythonPackage
-, fetchFromGitHub
-, mashumaro
-, orjson
-, poetry-core
-, pytest-asyncio
-, pytestCheckHook
-, pythonOlder
-, syrupy
-, typer
-, yarl
-, zeroconf
+{
+  lib,
+  aiohttp,
+  aresponses,
+  awesomeversion,
+  backoff,
+  buildPythonPackage,
+  fetchFromGitHub,
+  mashumaro,
+  orjson,
+  poetry-core,
+  pytest-asyncio,
+  pytestCheckHook,
+  pythonOlder,
+  syrupy,
+  typer,
+  yarl,
+  zeroconf,
 }:
 
 buildPythonPackage rec {
   pname = "gotailwind";
-  version = "0.2.2";
+  version = "0.2.3";
   pyproject = true;
 
   disabled = pythonOlder "3.11";
@@ -28,21 +29,19 @@ buildPythonPackage rec {
     owner = "frenck";
     repo = "python-gotailwind";
     rev = "refs/tags/v${version}";
-    hash = "sha256-JtMBud3iON4xLc9dQdXniv51EBqs7zkat8cYm3q0uEE=";
+    hash = "sha256-FRFcFn5aRg+H9M6ZwEfLO1Dwcybvs0ODQv2ruCG+4v0=";
   };
 
   postPatch = ''
     # Upstream doesn't set a version for the pyproject.toml
     substituteInPlace pyproject.toml \
-      --replace "0.0.0" "${version}" \
-      --replace "--cov" ""
+      --replace-fail "0.0.0" "${version}" \
+      --replace-fail "--cov" ""
   '';
 
-  nativeBuildInputs = [
-    poetry-core
-  ];
+  build-system = [ poetry-core ];
 
-  propagatedBuildInputs = [
+  dependencies = [
     aiohttp
     awesomeversion
     backoff
@@ -53,9 +52,7 @@ buildPythonPackage rec {
   ];
 
   passthru.optional-dependencies = {
-    cli = [
-      typer
-    ];
+    cli = [ typer ];
   };
 
   nativeCheckInputs = [
@@ -65,16 +62,14 @@ buildPythonPackage rec {
     syrupy
   ];
 
-  pythonImportsCheck = [
-    "gotailwind"
-  ];
+  pythonImportsCheck = [ "gotailwind" ];
 
   meta = with lib; {
     description = "Modul to communicate with Tailwind garage door openers";
-    mainProgram = "tailwind";
     homepage = "https://github.com/frenck/python-gotailwind";
     changelog = "https://github.com/frenck/python-gotailwind/releases/tag/v$version";
     license = licenses.mit;
     maintainers = with maintainers; [ fab ];
+    mainProgram = "tailwind";
   };
 }
diff --git a/pkgs/development/python-modules/govee-local-api/default.nix b/pkgs/development/python-modules/govee-local-api/default.nix
index 6cf2fa9b29c2..1b1d8fcde5ca 100644
--- a/pkgs/development/python-modules/govee-local-api/default.nix
+++ b/pkgs/development/python-modules/govee-local-api/default.nix
@@ -2,15 +2,15 @@
   lib,
   buildPythonPackage,
   fetchFromGitHub,
+  fetchpatch2,
   poetry-core,
-  poetry-dynamic-versioning,
   pytestCheckHook,
   pythonOlder,
 }:
 
 buildPythonPackage rec {
   pname = "govee-local-api";
-  version = "1.4.4";
+  version = "1.4.5";
   pyproject = true;
 
   disabled = pythonOlder "3.10";
@@ -19,12 +19,19 @@ buildPythonPackage rec {
     owner = "Galorhallen";
     repo = "govee-local-api";
     rev = "refs/tags/v${version}";
-    hash = "sha256-J4SG4n6LIZ/G6pEXAzliV7uTWzqsH7rtFe3Y7BJ2dWE=";
+    hash = "sha256-kmIuo/e3eLJTgmI+2Oq9Y0jov/133jXwgoBayGv33r4=";
   };
 
+  patches = [
+    (fetchpatch2 {
+      # configure pep517 build-backend
+      url = "https://github.com/Galorhallen/govee-local-api/commit/897a21ae723ff94343bbf4ba1541e3a1d3e03c94.patch";
+      hash = "sha256-/d5jGKGME768Ar+WWWQUByHJPGB31OHShI4oLjcMUIU=";
+    })
+  ];
+
   build-system = [
     poetry-core
-    poetry-dynamic-versioning
   ];
 
   nativeCheckInputs = [ pytestCheckHook ];
diff --git a/pkgs/development/python-modules/gpapi/default.nix b/pkgs/development/python-modules/gpapi/default.nix
index 307e8dfb63b8..1ec16d8216aa 100644
--- a/pkgs/development/python-modules/gpapi/default.nix
+++ b/pkgs/development/python-modules/gpapi/default.nix
@@ -2,7 +2,6 @@
 , cryptography
 , fetchPypi
 , lib
-, pythonOlder
 , protobuf
 , pycryptodome
 , requests
@@ -12,7 +11,6 @@ buildPythonPackage rec {
   version = "0.4.4";
   format = "setuptools";
   pname = "gpapi";
-  disabled = pythonOlder "3.3"; # uses shutil.which(), added in 3.3
 
   src = fetchPypi {
     inherit version pname;
diff --git a/pkgs/development/python-modules/gpaw/default.nix b/pkgs/development/python-modules/gpaw/default.nix
index 37b12c6f5ed4..033a7a418597 100644
--- a/pkgs/development/python-modules/gpaw/default.nix
+++ b/pkgs/development/python-modules/gpaw/default.nix
@@ -6,6 +6,7 @@
 , blas
 , lapack
 , mpi
+, fftw
 , scalapack
 , libxc
 , libvdwxc
@@ -89,9 +90,9 @@ in buildPythonPackage rec {
   # execute `rsh` as a side-effect.
   nativeBuildInputs = [ which inetutils ];
 
-  buildInputs = [ blas scalapack libxc libvdwxc ];
+  buildInputs = [ blas scalapack libxc libvdwxc fftw ];
 
-  propagatedBuildInputs = [ ase scipy numpy mpi pyyaml ];
+  propagatedBuildInputs = [ ase scipy numpy (lib.getBin mpi) pyyaml ];
 
   patches = [ ./SetupPath.patch ];
 
diff --git a/pkgs/development/python-modules/gradio/client.nix b/pkgs/development/python-modules/gradio/client.nix
index 96c293d399c5..bbf4d468ce69 100644
--- a/pkgs/development/python-modules/gradio/client.nix
+++ b/pkgs/development/python-modules/gradio/client.nix
@@ -28,8 +28,8 @@
 
 buildPythonPackage rec {
   pname = "gradio-client";
-  version = "0.14.0";
-  format = "pyproject";
+  version = "0.16.1";
+  pyproject = true;
 
   disabled = pythonOlder "3.8";
 
@@ -37,9 +37,9 @@ buildPythonPackage rec {
   src = fetchFromGitHub {
     owner = "gradio-app";
     repo = "gradio";
-    rev = "refs/tags/@gradio/client@${version}";
+    rev = "refs/tags/gradio_client@${version}";
     sparseCheckout = [ "client/python" ];
-    hash = "sha256-7oC/Z3YUiOFZdv/60q7PkfluV77broRkHgWiY9Vim9Y=";
+    hash = "sha256-SVUm9LrjYG0r3U1yOd3rctxVMYlnAOW+Opqy9c3osnw=";
   };
   prePatch = ''
     cd client/python
@@ -52,7 +52,7 @@ buildPythonPackage rec {
     "websockets"
   ];
 
-  nativeBuildInputs = [
+  build-system = [
     hatchling
     hatch-requirements-txt
     hatch-fancy-pypi-readme
diff --git a/pkgs/development/python-modules/gradio/default.nix b/pkgs/development/python-modules/gradio/default.nix
index 6c735123aca1..d5fc508e1622 100644
--- a/pkgs/development/python-modules/gradio/default.nix
+++ b/pkgs/development/python-modules/gradio/default.nix
@@ -62,7 +62,7 @@
 
 buildPythonPackage rec {
   pname = "gradio";
-  version = "4.22.0";
+  version = "4.29.0";
   format = "pyproject";
 
   disabled = pythonOlder "3.7";
@@ -71,7 +71,7 @@ buildPythonPackage rec {
   # and upstream has stopped tagging releases since 3.41.0
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-nhrT509xB3+R+HF6TF5AQGnfufT6iNmzjxZgcVL7fBo=";
+    hash = "sha256-17KT0b9kBO+xLgIgxfpwjETDoRM4aTJPlJv7HjkJXjo=";
   };
 
   # fix packaging.ParserSyntaxError, which can't handle comments
@@ -202,6 +202,8 @@ buildPythonPackage rec {
     #"-W" "ignore" # uncomment for debugging help
   ];
 
+  __darwinAllowLocalNetworking = true;
+
   # check the binary works outside the build env
   doInstallCheck = true;
   postInstallCheck = ''
diff --git a/pkgs/development/python-modules/griffe/default.nix b/pkgs/development/python-modules/griffe/default.nix
index 6f385ff9fb7c..c913971f6d35 100644
--- a/pkgs/development/python-modules/griffe/default.nix
+++ b/pkgs/development/python-modules/griffe/default.nix
@@ -13,7 +13,7 @@
 
 buildPythonPackage rec {
   pname = "griffe";
-  version = "0.44.0";
+  version = "0.45.0";
   pyproject = true;
 
   disabled = pythonOlder "3.8";
@@ -22,7 +22,7 @@ buildPythonPackage rec {
     owner = "mkdocstrings";
     repo = "griffe";
     rev = "refs/tags/${version}";
-    hash = "sha256-jZ5QK6HiQ0C5miFYGavIlScJHmocy6frzC2c8xTvYOw=";
+    hash = "sha256-nczu6Neh1feSZyyMrXyiXU1aDIjOsX6RKqaH+Qw8yrQ=";
   };
 
   build-system = [ pdm-backend ];
diff --git a/pkgs/development/python-modules/grpcio-channelz/default.nix b/pkgs/development/python-modules/grpcio-channelz/default.nix
index ba66ffe4e344..d4af46832018 100644
--- a/pkgs/development/python-modules/grpcio-channelz/default.nix
+++ b/pkgs/development/python-modules/grpcio-channelz/default.nix
@@ -8,12 +8,12 @@
 
 buildPythonPackage rec {
   pname = "grpcio-channelz";
-  version = "1.62.1";
+  version = "1.62.2";
   format = "setuptools";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-e+8XBt/tt4lNbgNGemBjrBCxUAR7aWXi+0gU1MKmQkU=";
+    hash = "sha256-bkrCxD12skXF9m2Y9SPbCHhrGGEoplXubyCjCn5o5Pk=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/python-modules/grpcio-status/default.nix b/pkgs/development/python-modules/grpcio-status/default.nix
index 4fd21a8bf159..033e8ae58ae4 100644
--- a/pkgs/development/python-modules/grpcio-status/default.nix
+++ b/pkgs/development/python-modules/grpcio-status/default.nix
@@ -9,14 +9,14 @@
 
 buildPythonPackage rec {
   pname = "grpcio-status";
-  version = "1.62.1";
+  version = "1.62.2";
   format = "setuptools";
 
   disabled = pythonOlder "3.6";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-NDHIq7qwBUkSxB31xy8D3fO3pnvoooe7PBijRW+W/3c=";
+    hash = "sha256-YuG/ywICWhzXNzKi0zZy0+nQ300hwSxR4LvK8JurdCo=";
   };
 
   postPatch = ''
diff --git a/pkgs/development/python-modules/grpcio-testing/default.nix b/pkgs/development/python-modules/grpcio-testing/default.nix
index c5cdf76a5ef6..54022a0433ce 100644
--- a/pkgs/development/python-modules/grpcio-testing/default.nix
+++ b/pkgs/development/python-modules/grpcio-testing/default.nix
@@ -10,14 +10,14 @@
 
 buildPythonPackage rec {
   pname = "grpcio-testing";
-  version = "1.62.1";
+  version = "1.62.2";
   pyproject = true;
 
   disabled = pythonOlder "3.7";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-yyaVEAqykAtRz9vbVv4SEA1JWA8QrgZ6LKsRfo/HRu0=";
+    hash = "sha256-dNGeGQnpQbGmvvf71fnvMwWZ9nb7BrsGB8hFDtVVnfI=";
   };
 
   postPatch = ''
diff --git a/pkgs/development/python-modules/grpcio-tools/default.nix b/pkgs/development/python-modules/grpcio-tools/default.nix
index 4aef9f5fbd0f..6b5c5cdda99f 100644
--- a/pkgs/development/python-modules/grpcio-tools/default.nix
+++ b/pkgs/development/python-modules/grpcio-tools/default.nix
@@ -2,12 +2,12 @@
 
 buildPythonPackage rec {
   pname = "grpcio-tools";
-  version = "1.62.1";
+  version = "1.62.2";
   format = "setuptools";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-pJkeXuipereRKW079+hwCxRFY1zBgozJjflFyhgC1/I=";
+    hash = "sha256-X9XhWCtnjmuUHuX1gJNAvl4HJGkd9SmaroImZA+U4Y8=";
   };
 
   postPatch = ''
diff --git a/pkgs/development/python-modules/grpcio/default.nix b/pkgs/development/python-modules/grpcio/default.nix
index e890280c676c..582314bf1073 100644
--- a/pkgs/development/python-modules/grpcio/default.nix
+++ b/pkgs/development/python-modules/grpcio/default.nix
@@ -18,11 +18,11 @@
 buildPythonPackage rec {
   pname = "grpcio";
   format = "setuptools";
-  version = "1.62.1";
+  version = "1.62.2";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-bEVeAI+obZ6anYW7dtpCd8DX2WaKO/pw2+hunzx1mUc=";
+    hash = "sha256-x3YYBx2Wt6i+LBBwGphTeCO5xluiVsC5Bn4FlM29lU0=";
   };
 
   outputs = [ "out" "dev" ];
diff --git a/pkgs/development/python-modules/gst-python/default.nix b/pkgs/development/python-modules/gst-python/default.nix
index 7b557a605a5b..8a6ee21ede7d 100644
--- a/pkgs/development/python-modules/gst-python/default.nix
+++ b/pkgs/development/python-modules/gst-python/default.nix
@@ -14,7 +14,7 @@
 
 buildPythonPackage rec {
   pname = "gst-python";
-  version = "1.22.9";
+  version = "1.24.2";
 
   format = "other";
 
@@ -22,7 +22,7 @@ buildPythonPackage rec {
 
   src = fetchurl {
     url = "https://gstreamer.freedesktop.org/src/gst-python/${pname}-${version}.tar.xz";
-    hash = "sha256-P51cb/79omhwN0S1kqazmDqmcjJzsSIOy8tiwqWAAAk=";
+    hash = "sha256-vZDzvIrxfc478mtmU377SVGGn/zmQD9ZhGG5heKy144=";
   };
 
   # Python 2.x is not supported.
diff --git a/pkgs/development/python-modules/gurobipy/default.nix b/pkgs/development/python-modules/gurobipy/default.nix
index 7793009abe96..9dc2cc10676d 100644
--- a/pkgs/development/python-modules/gurobipy/default.nix
+++ b/pkgs/development/python-modules/gurobipy/default.nix
@@ -17,14 +17,14 @@ let
   };
   platform = platforms.${stdenv.system} or (throw "Unsupported system: ${stdenv.system}");
   hashes = rec {
-    cp311-aarch64-darwin = "sha256-pMwq4TXvr0mrKxZppeW2MQE/KrplWWFGmjKRLKwbHCI=";
-    cp311-aarch64-linux = "sha256-fxJSQUt+nk7JBGtkDi+qTl/js0hnWGZGyht4AqD9g60=";
+    cp311-aarch64-darwin = "sha256-jODaasqXupII5JDE1QLUK+Jd07WJfAtxB3NIHCeuDa4=";
+    cp311-aarch64-linux = "sha256-hx6BgCbI8ojXRA/NS4Qr7N8QBvQ0lfxPbj7G2bi6PXo=";
     cp311-x86_64-darwin = cp311-aarch64-darwin;
-    cp311-x86_64-linux = "sha256-q1nmuWmlDPeNWWw4bX3KECOChNQkwU+6hItYqWcyY4M=";
-    cp312-aarch64-darwin = "sha256-5+1QxYOhjbs01S3gqhkQ9Bx/0/NhbXEi710BGpiC5kM=";
-    cp312-aarch64-linux = "sha256-N7cFtibenj+SrZ7ZtevZtDUdW48DnLC4p5jB9vrWlb8=";
+    cp311-x86_64-linux = "sha256-hiZbepqPPlMcG77m5hwefQtoJk6XZ5W0z3rsaLnmbrg=";
+    cp312-aarch64-darwin = "sha256-H5J44n2CUqOo8jzn2G6gZPehWsbPnZtHXi4Iygx2RRM=";
+    cp312-aarch64-linux = "sha256-xFUR7yizqSsytyfStRigKlZ7q8uY+VgRR/j29DKPWp0=";
     cp312-x86_64-darwin = cp312-aarch64-darwin;
-    cp312-x86_64-linux = "sha256-Aw5xxvCwdgfdT7HMrWT/jKWx3RDjs8IuB4in0ZGdqcw=";
+    cp312-x86_64-linux = "sha256-giNHTNfLX1hIiWOPQlLOnqjrbPWkKQrA4KXug6ujYxI=";
   };
   hash =
     hashes."${pyShortVersion}-${stdenv.system}"
@@ -32,7 +32,7 @@ let
 in
 buildPythonPackage rec {
   pname = "gurobipy";
-  version = "11.0.1";
+  version = "11.0.2";
   inherit format;
 
   src = fetchPypi {
diff --git a/pkgs/development/python-modules/h5py/default.nix b/pkgs/development/python-modules/h5py/default.nix
index 4afd562e033d..0da90d4ccb9e 100644
--- a/pkgs/development/python-modules/h5py/default.nix
+++ b/pkgs/development/python-modules/h5py/default.nix
@@ -2,7 +2,6 @@
 , fetchPypi
 , buildPythonPackage
 , pythonOlder
-, oldest-supported-numpy
 , setuptools
 , wheel
 , numpy
@@ -21,21 +20,27 @@ let
   mpi = hdf5.mpi;
   mpiSupport = hdf5.mpiSupport;
 in buildPythonPackage rec {
-  version = "3.10.0";
+  version = "3.11.0";
   pname = "h5py";
-  format = "pyproject";
+  pyproject = true;
 
   disabled = pythonOlder "3.7";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-2TrcSM7rMzR+skpjT7eH78euRkTm6kunM9CZYFBFwEk=";
+    hash = "sha256-e36PeAcqLt7IfJg28l80ID/UkqRHVwmhi0F6M8+yH6k=";
   };
 
+  patches = [
+    # Unlock an overly strict locking of mpi4py version (seems not to be necessary).
+    # See also: https://github.com/h5py/h5py/pull/2418/files#r1589372479
+    ./mpi4py-requirement.patch
+  ];
+
   # avoid strict pinning of numpy
   postPatch = ''
-    substituteInPlace setup.py \
-      --replace "mpi4py ==" "mpi4py >="
+    substituteInPlace pyproject.toml \
+      --replace-fail "numpy >=2.0.0rc1" "numpy"
   '';
 
   HDF5_DIR = "${hdf5}";
@@ -51,7 +56,7 @@ in buildPythonPackage rec {
 
   nativeBuildInputs = [
     cython_0
-    oldest-supported-numpy
+    numpy
     pkgconfig
     setuptools
     wheel
diff --git a/pkgs/development/python-modules/h5py/mpi4py-requirement.patch b/pkgs/development/python-modules/h5py/mpi4py-requirement.patch
new file mode 100644
index 000000000000..b32e804ebe5f
--- /dev/null
+++ b/pkgs/development/python-modules/h5py/mpi4py-requirement.patch
@@ -0,0 +1,13 @@
+diff --git a/setup.py b/setup.py
+index b1463422..7f0c7b10 100755
+--- a/setup.py
++++ b/setup.py
+@@ -47,7 +47,7 @@ if setup_configure.mpi_enabled():
+     # incompatible with newer setuptools.
+     RUN_REQUIRES.append('mpi4py >=3.1.1')
+     SETUP_REQUIRES.append("mpi4py ==3.1.1; python_version<'3.11'")
+-    SETUP_REQUIRES.append("mpi4py ==3.1.4; python_version>='3.11'")
++    SETUP_REQUIRES.append("mpi4py >=3.1.4; python_version>='3.11'")
+ 
+ # Set the environment variable H5PY_SETUP_REQUIRES=0 if we need to skip
+ # setup_requires for any reason.
diff --git a/pkgs/development/python-modules/habluetooth/default.nix b/pkgs/development/python-modules/habluetooth/default.nix
index e84fa94ae0c1..702ffc382115 100644
--- a/pkgs/development/python-modules/habluetooth/default.nix
+++ b/pkgs/development/python-modules/habluetooth/default.nix
@@ -1,4 +1,5 @@
 { lib
+, async-interrupt
 , bleak
 , bleak-retry-connector
 , bluetooth-adapters
@@ -16,7 +17,7 @@
 
 buildPythonPackage rec {
   pname = "habluetooth";
-  version = "2.4.2";
+  version = "2.8.1";
   pyproject = true;
 
   disabled = pythonOlder "3.10";
@@ -25,22 +26,23 @@ buildPythonPackage rec {
     owner = "Bluetooth-Devices";
     repo = "habluetooth";
     rev = "refs/tags/v${version}";
-    hash = "sha256-IoVXmq9ShwLpGtoxVOtoirSirJJ1DqBI/mP7PmK7OUs=";
+    hash = "sha256-2QiV32gDaoIBLUv/a3YzosFl6+E/nm0WoSUcTx9ph8s=";
   };
 
   postPatch = ''
     substituteInPlace pyproject.toml \
-      --replace " --cov=habluetooth --cov-report=term-missing:skip-covered" ""
+      --replace-fail " --cov=habluetooth --cov-report=term-missing:skip-covered" ""
   '';
 
-  nativeBuildInputs = [
+  build-system = [
     cython
     poetry-core
     setuptools
     wheel
   ];
 
-  propagatedBuildInputs = [
+  dependencies = [
+    async-interrupt
     bleak
     bleak-retry-connector
     bluetooth-adapters
diff --git a/pkgs/development/python-modules/hass-nabucasa/default.nix b/pkgs/development/python-modules/hass-nabucasa/default.nix
index ac32e43cf932..ecaa475906d6 100644
--- a/pkgs/development/python-modules/hass-nabucasa/default.nix
+++ b/pkgs/development/python-modules/hass-nabucasa/default.nix
@@ -23,7 +23,7 @@
 
 buildPythonPackage rec {
   pname = "hass-nabucasa";
-  version = "0.80.0";
+  version = "0.81.0";
   pyproject = true;
 
   disabled = pythonOlder "3.11";
@@ -32,7 +32,7 @@ buildPythonPackage rec {
     owner = "nabucasa";
     repo = "hass-nabucasa";
     rev = "refs/tags/${version}";
-    hash = "sha256-8KxnS6LTK077/hr81JOiOj8GaNWBXO8XlvpYBm/sZbI=";
+    hash = "sha256-61pdl9bjtvC9Fa7jCtSPEz/5PJiANmKqOSSHjK7is2s=";
   };
 
   pythonRelaxDeps = [ "acme" ];
diff --git a/pkgs/development/python-modules/hatchling/default.nix b/pkgs/development/python-modules/hatchling/default.nix
index 4d5d345d625d..fa5f239acacc 100644
--- a/pkgs/development/python-modules/hatchling/default.nix
+++ b/pkgs/development/python-modules/hatchling/default.nix
@@ -20,13 +20,13 @@
 
 buildPythonPackage rec {
   pname = "hatchling";
-  version = "1.22.4";
+  version = "1.24.2";
   format = "pyproject";
   disabled = pythonOlder "3.8";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-ii3OyW1/uEg4LvWEjlrEP9rmQfNaCKP6tRFr1JXzQW4=";
+    hash = "sha256-Qd3CfNsl2573tovvB1+CnITLNJqhv/gkB5fQElEFR7A=";
   };
 
   # listed in backend/pyproject.toml
diff --git a/pkgs/development/python-modules/hawkauthlib/default.nix b/pkgs/development/python-modules/hawkauthlib/default.nix
index 9df850b78829..b7c6c73820a2 100644
--- a/pkgs/development/python-modules/hawkauthlib/default.nix
+++ b/pkgs/development/python-modules/hawkauthlib/default.nix
@@ -1,28 +1,45 @@
-{ lib
-, buildPythonPackage
-, fetchFromGitHub
-, requests
-, webob
+{
+  lib,
+  buildPythonPackage,
+  fetchFromGitHub,
+  setuptools,
+  requests,
+  webob,
+  unittestCheckHook,
 }:
 
 buildPythonPackage rec {
   pname = "hawkauthlib";
   version = "0.1.1";
-  format = "setuptools";
+  pyproject = true;
 
   src = fetchFromGitHub {
     owner = "mozilla-services";
-    repo = pname;
+    repo = "hawkauthlib";
     rev = "refs/tags/v${version}";
-    sha256 = "0mr1mpx4j9q7sch9arwfvpysnpf2p7ijy7072wilxm8pnj0bwvsi";
+    hash = "sha256-UW++gLQX1U4jFwccL+O5wl2r/d2OZ5Ug0wcnSfqtIVc=";
   };
 
-  propagatedBuildInputs = [ requests webob ];
+  postPatch = ''
+    substituteInPlace hawkauthlib/tests/* \
+        --replace-warn 'assertEquals' 'assertEqual'
+  '';
+
+  build-system = [ setuptools ];
+
+  dependencies = [
+    requests
+    webob
+  ];
+
+  pythonImportsCheck = [ "hawkauthlib" ];
+
+  nativeCheckInputs = [ unittestCheckHook ];
 
   meta = with lib; {
     homepage = "https://github.com/mozilla-services/hawkauthlib";
     description = "Hawk Access Authentication protocol";
     license = licenses.mpl20;
+    maintainers = with maintainers; [ ];
   };
-
 }
diff --git a/pkgs/development/python-modules/hcs-utils/default.nix b/pkgs/development/python-modules/hcs-utils/default.nix
index 2dc90870b614..d8d6bb67e47f 100644
--- a/pkgs/development/python-modules/hcs-utils/default.nix
+++ b/pkgs/development/python-modules/hcs-utils/default.nix
@@ -1,4 +1,4 @@
-{ lib, pythonOlder, buildPythonPackage, fetchPypi, six, glibcLocales, pytest }:
+{ lib, buildPythonPackage, fetchPypi, six, glibcLocales, pytest }:
 
 buildPythonPackage rec {
   pname = "hcs-utils";
@@ -21,8 +21,6 @@ buildPythonPackage rec {
   buildInputs = [ six glibcLocales ];
   nativeCheckInputs = [ pytest ];
 
-  disabled = pythonOlder "3.4";
-
   meta = with lib; {
     description = "Library collecting some useful snippets";
     homepage    = "https://pypi.python.org/pypi/hcs_utils/1.3";
diff --git a/pkgs/development/python-modules/heatzypy/default.nix b/pkgs/development/python-modules/heatzypy/default.nix
index 9093afc2353a..843c8cbf1348 100644
--- a/pkgs/development/python-modules/heatzypy/default.nix
+++ b/pkgs/development/python-modules/heatzypy/default.nix
@@ -1,17 +1,17 @@
-{ lib
-, aiohttp
-, buildPythonPackage
-, fetchFromGitHub
-, requests
-, pytestCheckHook
-, pythonOlder
-, setuptools
-, wheel
+{
+  lib,
+  aiohttp,
+  buildPythonPackage,
+  fetchFromGitHub,
+  pytestCheckHook,
+  pythonOlder,
+  setuptools,
+  setuptools-scm,
 }:
 
 buildPythonPackage rec {
   pname = "heatzypy";
-  version = "2.2.0";
+  version = "2.5.4";
   pyproject = true;
 
   disabled = pythonOlder "3.11";
@@ -20,30 +20,20 @@ buildPythonPackage rec {
     owner = "Cyr-ius";
     repo = "heatzypy";
     rev = "refs/tags/${version}";
-    hash = "sha256-Q6v1Ob1PY8tpMnd8hchepq983dsZ6lJPCKz83RRwL3w=";
+    hash = "sha256-A01e3duNQmVv9vyOs6+gF/BdevLiYi/uXSq5bKmuRao=";
   };
 
-  postPatch = ''
-    substituteInPlace pyproject.toml \
-      --replace "replace_by_workflow" "${version}"
-  '';
-
-  nativeBuildInputs = [
+  build-system = [
     setuptools
-    wheel
+    setuptools-scm
   ];
 
-  propagatedBuildInputs = [
-    aiohttp
-    requests
-  ];
+  dependencies = [ aiohttp ];
 
   # Module has no tests
   doCheck = false;
 
-  pythonImportsCheck = [
-    "heatzypy"
-  ];
+  pythonImportsCheck = [ "heatzypy" ];
 
   meta = with lib; {
     description = "Module to interact with Heatzy devices";
diff --git a/pkgs/development/python-modules/hid/default.nix b/pkgs/development/python-modules/hid/default.nix
index deb4006dfe78..7c33cb5b9d3c 100644
--- a/pkgs/development/python-modules/hid/default.nix
+++ b/pkgs/development/python-modules/hid/default.nix
@@ -1,30 +1,40 @@
 { lib
 , buildPythonPackage
 , fetchPypi
+, setuptools
 , hidapi
-, nose
 }:
 
 buildPythonPackage rec {
   pname = "hid";
   version = "1.0.6";
-  format = "setuptools";
+  pyproject = true;
 
   src = fetchPypi {
     inherit pname version;
     hash = "sha256-SNdk166XRroSO5bb9FeJPKgCaLd5HEsdLgUTEO64OGA=";
   };
 
-  propagatedBuildInputs = [ hidapi ];
-
-  nativeCheckInputs = [ nose ];
-
  postPatch = ''
-    hidapi=${hidapi}/lib/
-    test -d $hidapi || { echo "ERROR: $hidapi doesn't exist, please update/fix this build expression."; exit 1; }
-    sed -i -e "s|libhidapi|$hidapi/libhidapi|" hid/__init__.py
+   hidapi=${hidapi}/lib/
+   test -d $hidapi || { echo "ERROR: $hidapi doesn't exist, please update/fix this build expression."; exit 1; }
+   sed -i -e "s|libhidapi|$hidapi/libhidapi|" hid/__init__.py
   '';
 
+  build-system = [
+    setuptools
+  ];
+
+  dependencies = [
+    hidapi
+  ];
+
+  doCheck = false; # no tests
+
+  pythonImportsCheck = [
+    "hid"
+  ];
+
   meta = with lib; {
     description = "hidapi bindings in ctypes";
     homepage = "https://github.com/apmorton/pyhidapi";
diff --git a/pkgs/development/python-modules/hikari-lightbulb/default.nix b/pkgs/development/python-modules/hikari-lightbulb/default.nix
new file mode 100644
index 000000000000..3295dd637d8c
--- /dev/null
+++ b/pkgs/development/python-modules/hikari-lightbulb/default.nix
@@ -0,0 +1,48 @@
+{
+  lib,
+  buildPythonPackage,
+  fetchFromGitHub,
+  setuptools,
+  wheel,
+  hikari,
+  croniter,
+}:
+
+buildPythonPackage rec {
+  pname = "hikari-lightbulb";
+  version = "2.3.5";
+  pyproject = true;
+
+  src = fetchFromGitHub {
+    owner = "tandemdude";
+    repo = "hikari-lightbulb";
+    rev = version;
+    hash = "sha256-gqbbex2xj48LZqW4bVSPDW1UZEFVeOHbNQVM6nhpl1Y=";
+  };
+
+  nativeBuildInputs = [
+    setuptools
+    wheel
+  ];
+
+  propagatedBuildInputs = [ hikari ];
+
+  passthru.optional-dependencies = {
+    crontrigger = [ croniter ];
+  };
+
+  pythonImportsCheck = [ "lightbulb" ];
+
+  meta = with lib; {
+    description = "A command handler for Hikari, the Python Discord API wrapper library";
+    longDescription = ''
+      Lightbulb is designed to be an easy to use command handler library that integrates with the Discord API wrapper library for Python, Hikari.
+
+      This library aims to make it simple for you to make your own Discord bots and provide all the utilities and functions you need to help make this job easier.
+    '';
+    homepage = "https://hikari-lightbulb.readthedocs.io/en/latest/";
+    # https://github.com/tandemdude/hikari-lightbulb/blob/d87df463488d1c1d947144ac0bafa4304e12ddfd/setup.py#L68
+    license = licenses.lgpl3Only;
+    maintainers = with maintainers; [ tomodachi94 ];
+  };
+}
diff --git a/pkgs/development/python-modules/hikari/default.nix b/pkgs/development/python-modules/hikari/default.nix
index e76d7780c0bf..062a6a9ebe14 100644
--- a/pkgs/development/python-modules/hikari/default.nix
+++ b/pkgs/development/python-modules/hikari/default.nix
@@ -17,13 +17,13 @@
 }:
 buildPythonPackage rec {
   pname = "hikari";
-  version = "2.0.0.dev124";
+  version = "2.0.0.dev125";
 
   src = fetchFromGitHub {
     owner = "hikari-py";
     repo = "hikari";
     rev = version;
-    hash = "sha256-zDgU3Ol/I3YNnwXm+aBh20KwonW746p5TObuwuWORog=";
+    hash = "sha256-qxgIYquXUWrm8bS8EamERMHOnjI2aPyK7bQieVG66uA=";
     # The git commit is part of the `hikari.__git_sha1__` original output;
     # leave that output the same in nixpkgs. Use the `.git` directory
     # to retrieve the commit SHA, and remove the directory afterwards,
diff --git a/pkgs/development/python-modules/hikvision/default.nix b/pkgs/development/python-modules/hikvision/default.nix
index 23f6387853a8..354edc5d7798 100644
--- a/pkgs/development/python-modules/hikvision/default.nix
+++ b/pkgs/development/python-modules/hikvision/default.nix
@@ -1,35 +1,39 @@
-{ lib
-, buildPythonPackage
-, fetchFromGitHub
-, requests
-, pytestCheckHook
+{
+  lib,
+  buildPythonPackage,
+  fetchFromGitHub,
+  pytestCheckHook,
+  pythonOlder,
+  requests,
+  setuptools,
 }:
 
 buildPythonPackage rec {
   pname = "hikvision";
   version = "2.0.4";
-  format = "setuptools";
+  pyproject = true;
+
+  disabled = pythonOlder "3.7";
 
   src = fetchFromGitHub {
     owner = "fbradyirl";
-    repo = pname;
-    rev = "v${version}";
-    sha256 = "1l0zvir4hf1pcwwcmrhkspbdljzmi4lknxar5bkipdanpsm588mn";
+    repo = "hikvision";
+    rev = "refs/tags/v${version}";
+    hash = "sha256-tiJUqr5WtRvnKll1OymJ9Uva1tUT5so4Zzc4SHLcH9A=";
   };
 
-  propagatedBuildInputs = [
-    requests
-  ];
+  build-system = [ setuptools ];
+
+  dependencies = [ requests ];
 
-  nativeCheckInputs = [
-    pytestCheckHook
-  ];
+  nativeCheckInputs = [ pytestCheckHook ];
 
   pythonImportsCheck = [ "hikvision.api" ];
 
   meta = with lib; {
     description = "Python module for interacting with Hikvision IP Cameras";
     homepage = "https://github.com/fbradyirl/hikvision";
+    changelog = "https://github.com/fbradyirl/hikvision/releases/tag/v${version}";
     license = with licenses; [ mit ];
     maintainers = with maintainers; [ fab ];
   };
diff --git a/pkgs/development/python-modules/hiyapyco/default.nix b/pkgs/development/python-modules/hiyapyco/default.nix
index 96baf1790b04..4fd8f10bd111 100644
--- a/pkgs/development/python-modules/hiyapyco/default.nix
+++ b/pkgs/development/python-modules/hiyapyco/default.nix
@@ -8,14 +8,14 @@
 
 buildPythonPackage rec {
   pname = "hiyapyco";
-  version = "0.5.5";
+  version = "0.5.6";
   pyproject = true;
 
   src = fetchFromGitHub {
     owner = "zerwes";
     repo = pname;
     rev = "refs/tags/release-${version}";
-    hash = "sha256-LuENNwVB/1GyPLsfMRwHjz87c7+3/7U82m1MnHfRHdU=";
+    hash = "sha256-WBSOjOX4naa0XDTnO593EAvtz5EjVPWCbiZaPXdx0e4=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/python-modules/hjson/default.nix b/pkgs/development/python-modules/hjson/default.nix
index 44aa789f0d04..46ae9f518a34 100644
--- a/pkgs/development/python-modules/hjson/default.nix
+++ b/pkgs/development/python-modules/hjson/default.nix
@@ -1,25 +1,34 @@
-{ lib
-, buildPythonPackage
-, fetchFromGitHub
-, python
-, makeWrapper
+{
+  lib,
+  buildPythonPackage,
+  fetchFromGitHub,
+  makeWrapper,
+  pytestCheckHook,
+  python,
+  pythonOlder,
+  setuptools,
 }:
 
 buildPythonPackage rec {
   pname = "hjson";
   version = "3.0.2";
-  format = "setuptools";
+  pyproject = true;
+
+  disabled = pythonOlder "3.5";
 
-  # N.B. pypi src tarball does not have tests
   src = fetchFromGitHub {
     owner = "hjson";
     repo = "hjson-py";
-    rev = "v${version}";
-    sha256 = "1jc7j790rcqnhbrfj4lhnz3f6768dc55aij840wmx16jylfqpc2n";
+    rev = "refs/tags/v${version}";
+    hash = "sha256-VrCLHfXShF45IEhGVQpryBzjxreQEunyghazDNKRh8k=";
   };
 
+  build-system = [ setuptools ];
+
   nativeBuildInputs = [ makeWrapper ];
 
+  nativeCheckInputs = [ pytestCheckHook ];
+
   pythonImportsCheck = [ "hjson" ];
 
   postInstall = ''
@@ -29,11 +38,17 @@ buildPythonPackage rec {
       --prefix PATH : ${lib.makeBinPath [ python ]}
   '';
 
+  disabledTestPaths = [
+    # AttributeError:  b'/build/source/hjson/tool.py:14: Deprecati[151 chars]ools' != b''
+    "hjson/tests/test_tool.py"
+  ];
+
   meta = with lib; {
     description = "A user interface for JSON";
-    mainProgram = "hjson";
     homepage = "https://github.com/hjson/hjson-py";
+    changelog = "https://github.com/hjson/hjson-py/releases/tag/v${version}";
     license = licenses.mit;
     maintainers = with maintainers; [ bhipple ];
+    mainProgram = "hjson";
   };
 }
diff --git a/pkgs/development/python-modules/holidays/default.nix b/pkgs/development/python-modules/holidays/default.nix
index 82dc5a9882cf..79e5fc8d523a 100644
--- a/pkgs/development/python-modules/holidays/default.nix
+++ b/pkgs/development/python-modules/holidays/default.nix
@@ -14,7 +14,7 @@
 
 buildPythonPackage rec {
   pname = "holidays";
-  version = "0.47";
+  version = "0.48";
   pyproject = true;
 
   disabled = pythonOlder "3.8";
@@ -23,7 +23,7 @@ buildPythonPackage rec {
     owner = "vacanza";
     repo = "python-holidays";
     rev = "refs/tags/v${version}";
-    hash = "sha256-A4viSzUia4QBdD0svkqYtsCq/la7Nrf2xu/fVDZHb00=";
+    hash = "sha256-PKa4knEUkULeGbwjEViF2J3QyUOOvKHYxy0ChmRQf6A=";
   };
 
   build-system = [
diff --git a/pkgs/development/python-modules/homematicip/default.nix b/pkgs/development/python-modules/homematicip/default.nix
index 34016262e93b..f4aa29cfcb8d 100644
--- a/pkgs/development/python-modules/homematicip/default.nix
+++ b/pkgs/development/python-modules/homematicip/default.nix
@@ -1,25 +1,26 @@
-{ lib
-, aenum
-, aiohttp
-, aiohttp-wsgi
-, async-timeout
-, buildPythonPackage
-, fetchFromGitHub
-, pytest7CheckHook
-, pythonAtLeast
-, pythonOlder
-, pytest-aiohttp
-, pytest-asyncio
-, requests
-, setuptools
-, setuptools-scm
-, websocket-client
-, websockets
+{
+  lib,
+  aenum,
+  aiohttp,
+  aiohttp-wsgi,
+  async-timeout,
+  buildPythonPackage,
+  fetchFromGitHub,
+  pytest7CheckHook,
+  pythonAtLeast,
+  pythonOlder,
+  pytest-aiohttp,
+  pytest-asyncio,
+  requests,
+  setuptools,
+  setuptools-scm,
+  websocket-client,
+  websockets,
 }:
 
 buildPythonPackage rec {
   pname = "homematicip";
-  version = "1.1.0";
+  version = "1.1.1";
   pyproject = true;
 
   disabled = pythonOlder "3.10";
@@ -28,15 +29,15 @@ buildPythonPackage rec {
     owner = "hahn-th";
     repo = "homematicip-rest-api";
     rev = "refs/tags/${version}";
-    hash = "sha256-tx7/amXG3rLdUFgRPQcuf57qkBLAPxPWjLGSO7MrcWU=";
+    hash = "sha256-VMHInAmNO0Nw0ohZnIJ9c77h35YSSNNnPNYaUpBlKOQ=";
   };
 
-  nativeBuildInputs = [
+  build-system = [
     setuptools
     setuptools-scm
   ];
 
-  propagatedBuildInputs = [
+  dependencies = [
     aenum
     aiohttp
     async-timeout
@@ -52,44 +53,42 @@ buildPythonPackage rec {
     pytest7CheckHook
   ];
 
-  pytestFlagsArray = [
-    "--asyncio-mode=auto"
-  ];
+  pytestFlagsArray = [ "--asyncio-mode=auto" ];
 
-  disabledTests = [
-    # Assert issues with datetime
-    "test_contact_interface_device"
-    "test_dimmer"
-    "test_external_device"
-    "test_heating_failure_alert_group"
-    "test_heating"
-    "test_humidity_warning_rule_group"
-    "test_meta_group"
-    "test_pluggable_switch_measuring"
-    "test_rotary_handle_sensor"
-    "test_security_group"
-    "test_security_zone"
-    "test_shutter_device"
-    "test_smoke_detector"
-    "test_switching_group"
-    "test_temperature_humidity_sensor_outdoor"
-    "test_wall_mounted_thermostat_pro"
-    "test_weather_sensor"
-    # Random failures
-    "test_home_getSecurityJournal"
-    "test_home_unknown_types"
-    # Requires network access
-    "test_websocket"
-  ] ++ lib.optionals (pythonAtLeast "3.10") [
-    "test_connection_lost"
-    "test_user_disconnect_and_reconnect"
-    "test_ws_message"
-    "test_ws_no_pong"
-  ];
+  disabledTests =
+    [
+      # Assert issues with datetime
+      "test_contact_interface_device"
+      "test_dimmer"
+      "test_external_device"
+      "test_heating_failure_alert_group"
+      "test_heating"
+      "test_humidity_warning_rule_group"
+      "test_meta_group"
+      "test_pluggable_switch_measuring"
+      "test_rotary_handle_sensor"
+      "test_security_group"
+      "test_security_zone"
+      "test_shutter_device"
+      "test_smoke_detector"
+      "test_switching_group"
+      "test_temperature_humidity_sensor_outdoor"
+      "test_wall_mounted_thermostat_pro"
+      "test_weather_sensor"
+      # Random failures
+      "test_home_getSecurityJournal"
+      "test_home_unknown_types"
+      # Requires network access
+      "test_websocket"
+    ]
+    ++ lib.optionals (pythonAtLeast "3.10") [
+      "test_connection_lost"
+      "test_user_disconnect_and_reconnect"
+      "test_ws_message"
+      "test_ws_no_pong"
+    ];
 
-  pythonImportsCheck = [
-    "homematicip"
-  ];
+  pythonImportsCheck = [ "homematicip" ];
 
   meta = with lib; {
     description = "Module for the homematicIP REST API";
diff --git a/pkgs/development/python-modules/hstspreload/default.nix b/pkgs/development/python-modules/hstspreload/default.nix
index f8c4e32faf94..692cd31354ed 100644
--- a/pkgs/development/python-modules/hstspreload/default.nix
+++ b/pkgs/development/python-modules/hstspreload/default.nix
@@ -1,13 +1,14 @@
-{ lib
-, buildPythonPackage
-, fetchFromGitHub
-, pythonOlder
-, setuptools
+{
+  lib,
+  buildPythonPackage,
+  fetchFromGitHub,
+  pythonOlder,
+  setuptools,
 }:
 
 buildPythonPackage rec {
   pname = "hstspreload";
-  version = "2024.4.1";
+  version = "2024.5.1";
   pyproject = true;
 
   disabled = pythonOlder "3.6";
@@ -16,19 +17,15 @@ buildPythonPackage rec {
     owner = "sethmlarson";
     repo = "hstspreload";
     rev = "refs/tags/${version}";
-    hash = "sha256-kbcUf06tgVgr5qu5YSCwHtlBVzUEEqF1A/D+4RCnUcc=";
+    hash = "sha256-Ut2VhU2+o4wm4WY4zz/25EyDLvrYoBu3iVFkx3FZVYo=";
   };
 
-  build-system = [
-    setuptools
-  ];
+  build-system = [ setuptools ];
 
   # Tests require network connection
   doCheck = false;
 
-  pythonImportsCheck = [
-    "hstspreload"
-  ];
+  pythonImportsCheck = [ "hstspreload" ];
 
   meta = with lib; {
     description = "Chromium HSTS Preload list as a Python package and updated daily";
diff --git a/pkgs/development/python-modules/html-text/default.nix b/pkgs/development/python-modules/html-text/default.nix
index 00d2fb426d38..43d7ca228bb0 100644
--- a/pkgs/development/python-modules/html-text/default.nix
+++ b/pkgs/development/python-modules/html-text/default.nix
@@ -1,37 +1,43 @@
-{ lib
-, buildPythonPackage
-, fetchFromGitHub
-, lxml
-, six
-, pytestCheckHook
+{
+  lib,
+  buildPythonPackage,
+  fetchFromGitHub,
+  lxml,
+  lxml-html-clean,
+  pytestCheckHook,
+  pythonOlder,
+  setuptools,
 }:
 
 buildPythonPackage rec {
   pname = "html-text";
-  version = "0.5.2";
-  format = "setuptools";
+  version = "0.6.2";
+  pyproject = true;
+
+  disabled = pythonOlder "3.8";
 
   src = fetchFromGitHub {
-    owner = "TeamHG-Memex";
+    owner = "zytedata";
     repo = "html-text";
-    rev = version;
-    hash = "sha256-jw/hpz0QfcgP5OEJcmre0h1OzOfpPtaROxHm+YUqces=";
+    rev = "refs/tags/${version}";
+    hash = "sha256-e9gkibQv8mn1Jbt77UmpauOeTqhJQhY9R5Sge/iYi+U=";
   };
 
-  propagatedBuildInputs = [
+  build-system = [ setuptools ];
+
+  dependencies = [
     lxml
+    lxml-html-clean
   ];
 
-  nativeCheckInputs = [
-    pytestCheckHook
-    six
-  ];
+  nativeCheckInputs = [ pytestCheckHook ];
 
   pythonImportsCheck = [ "html_text" ];
 
   meta = with lib; {
     description = "Extract text from HTML";
-    homepage = "https://github.com/TeamHG-Memex/html-text";
+    homepage = "https://github.com/zytedata/html-text";
+    changelog = "https://github.com/zytedata/html-text/blob/${version}/CHANGES.rst";
     license = licenses.mit;
     maintainers = with maintainers; [ ambroisie ];
   };
diff --git a/pkgs/development/python-modules/html2text/default.nix b/pkgs/development/python-modules/html2text/default.nix
index bda7879eab0a..236b312e343d 100644
--- a/pkgs/development/python-modules/html2text/default.nix
+++ b/pkgs/development/python-modules/html2text/default.nix
@@ -1,38 +1,38 @@
-{ lib
-, buildPythonPackage
-, fetchFromGitHub
-, pythonOlder
-, pytestCheckHook
-, setuptools
+{
+  lib,
+  buildPythonPackage,
+  fetchFromGitHub,
+  pythonOlder,
+  pytestCheckHook,
+  setuptools,
 }:
 
 buildPythonPackage rec {
   pname = "html2text";
   version = "2024.2.26";
   pyproject = true;
+
   disabled = pythonOlder "3.8";
 
   src = fetchFromGitHub {
     owner = "Alir3z4";
     repo = "html2text";
     rev = "refs/tags/${version}";
-    sha256 = "sha256-1CLkTFR+/XQ428WjMF7wliyAG6CB+n8JSsLDdLHPO7I=";
+    hash = "sha256-1CLkTFR+/XQ428WjMF7wliyAG6CB+n8JSsLDdLHPO7I=";
   };
 
-  nativeBuildInputs = [
-    setuptools
-  ];
+  build-system = [ setuptools ];
 
   nativeCheckInputs = [ pytestCheckHook ];
 
   pythonImportsCheck = [ "html2text" ];
 
   meta = with lib; {
-    changelog = "https://github.com/Alir3z4/html2text/blob/${src.rev}/ChangeLog.rst";
     description = "Turn HTML into equivalent Markdown-structured text";
     homepage = "https://github.com/Alir3z4/html2text/";
+    changelog = "https://github.com/Alir3z4/html2text/blob/${src.rev}/ChangeLog.rst";
     license = licenses.gpl3Only;
+    maintainers = with maintainers; [ ];
     mainProgram = "html2text";
-    maintainers = [ ];
   };
 }
diff --git a/pkgs/development/python-modules/htseq/default.nix b/pkgs/development/python-modules/htseq/default.nix
index 9d69a8bfef54..caa47f5197d6 100644
--- a/pkgs/development/python-modules/htseq/default.nix
+++ b/pkgs/development/python-modules/htseq/default.nix
@@ -1,29 +1,79 @@
-{ lib, buildPythonPackage, fetchFromGitHub, cython, numpy, pysam, matplotlib, python, isPy27, isPy3k }:
+{
+  lib,
+  buildPythonPackage,
+  fetchFromGitHub,
+  fetchpatch,
+  swig,
+  cython,
+  matplotlib,
+  numpy,
+  pandas,
+  pysam,
+  setuptools,
+  pytestCheckHook,
+  nix-update-script,
+}:
 buildPythonPackage rec {
-  version = "0.12.4";
-  format = "setuptools";
   pname = "htseq";
+  version = "2.0.4";
+  pyproject = true;
 
   src = fetchFromGitHub {
     owner = "htseq";
     repo = "htseq";
     rev = "release_${version}";
-    sha256 = "0y7vh249sljqjnv81060w4xkdx6f1y5zdqkh38yk926x6v9riijm";
+    hash = "sha256-7ocrmuj9LOtPz9XbI5rKGcdE5JbFz/pZh00Nie65XxE=";
   };
 
-  nativeBuildInputs = [ cython ];
-  propagatedBuildInputs = [ numpy pysam matplotlib ];
+  patches = [
+    # https://github.com/htseq/htseq/pull/84
+    (fetchpatch {
+      name = "replace-distutils-with-sysconfig.patch";
+      url = "https://github.com/htseq/htseq/commit/f0f1e464ee9aee56f0b44f905e7b3355b0bb8f29.patch";
+      hash = "sha256-yDYkXCPy+YFgnk1rnXwCB998aZwVd5nJeejZIgeEzAo=";
+     })
+  ];
 
-  checkPhase = lib.optionalString isPy27 ''
-    ${python.interpreter} python2/test/test_general.py
-  '' + lib.optionalString isPy3k ''
-    ${python.interpreter} python3/test/test_general.py
+  nativeBuildInputs = [ swig ];
+
+  build-system = [
+    cython
+    numpy
+    pysam
+    setuptools
+  ];
+
+  dependencies = [
+    numpy
+    pysam
+  ];
+
+  optional-dependencies = {
+    htseq-qa = [ matplotlib ];
+  };
+
+  pythonImportsCheck = [ "HTSeq" ];
+
+  nativeCheckInputs = [
+    pandas
+    pytestCheckHook
+  ] ++ optional-dependencies.htseq-qa;
+
+  preCheck = ''
+    rm -r src HTSeq
+    export PATH=$out/bin:$PATH
   '';
 
+  passthru.updateScript = nix-update-script {
+    extraArgs = [
+      "--version-regex"
+      "release_(.+)"
+    ];
+  };
+
   meta = with lib; {
     homepage = "https://htseq.readthedocs.io/";
     description = "A framework to work with high-throughput sequencing data";
     maintainers = with maintainers; [ unode ];
-    platforms = platforms.unix;
   };
 }
diff --git a/pkgs/development/python-modules/http-parser/default.nix b/pkgs/development/python-modules/http-parser/default.nix
index 05cd4397dbf9..7e53465939f2 100644
--- a/pkgs/development/python-modules/http-parser/default.nix
+++ b/pkgs/development/python-modules/http-parser/default.nix
@@ -1,9 +1,11 @@
-{ lib
-, buildPythonPackage
-, fetchFromGitHub
-, cython
-, setuptools
-, pytestCheckHook
+{
+  lib,
+  buildPythonPackage,
+  fetchFromGitHub,
+  cython,
+  setuptools,
+  pytestCheckHook,
+  fetchpatch,
 }:
 
 buildPythonPackage rec {
@@ -28,18 +30,24 @@ buildPythonPackage rec {
     make -B
   '';
 
-  pythonImportsCheck = [
-    "http_parser"
-  ];
+  pythonImportsCheck = [ "http_parser" ];
 
-  nativeCheckInputs = [
-    pytestCheckHook
+  # The imp module is deprecated since version 3.4, and was removed in 3.12
+  # https://docs.python.org/3.11/library/imp.html
+  # Fix from: https://github.com/benoitc/http-parser/pull/101/
+  patches = [
+    (fetchpatch {
+      url = "https://github.com/benoitc/http-parser/commit/4d4984ce129253f9de475bfd3c683301c916e8b1.patch";
+      hash = "sha256-d3k1X41/D9PpPWsDety2AiYyLv9LJIhpkOo3a6qKcB8=";
+    })
   ];
 
-  meta = with lib; {
+  nativeCheckInputs = [ pytestCheckHook ];
+
+  meta = {
     description = "HTTP request/response parser for python in C";
     homepage = "https://github.com/benoitc/http-parser";
-    license = licenses.mit;
-    maintainers = with maintainers; [ ];
+    license = lib.licenses.mit;
+    maintainers = [ ];
   };
 }
diff --git a/pkgs/development/python-modules/httpcore/default.nix b/pkgs/development/python-modules/httpcore/default.nix
index 212db973e9e0..df9ec754352e 100644
--- a/pkgs/development/python-modules/httpcore/default.nix
+++ b/pkgs/development/python-modules/httpcore/default.nix
@@ -18,11 +18,12 @@
 # for passthru.tests
 , httpx
 , httpx-socks
+, respx
 }:
 
 buildPythonPackage rec {
   pname = "httpcore";
-  version = "1.0.4";
+  version = "1.0.5";
   pyproject = true;
 
   disabled = pythonOlder "3.8";
@@ -31,7 +32,7 @@ buildPythonPackage rec {
     owner = "encode";
     repo = "httpcore";
     rev = "refs/tags/${version}";
-    hash = "sha256-DK5avYEtQcTFogpdEjw0NB4qkzDm5cZKPjAE8MC6Sng=";
+    hash = "sha256-05jYLrBiPRg1qQEz8mRvYJKHFsfneh7z9yHIXuYYa5o=";
   };
 
   nativeBuildInputs = [
@@ -74,7 +75,7 @@ buildPythonPackage rec {
   __darwinAllowLocalNetworking = true;
 
   passthru.tests = {
-    inherit httpx httpx-socks;
+    inherit httpx httpx-socks respx;
   };
 
   meta = with lib; {
diff --git a/pkgs/development/python-modules/httpserver/default.nix b/pkgs/development/python-modules/httpserver/default.nix
index 6d1374075886..59530ab5a704 100644
--- a/pkgs/development/python-modules/httpserver/default.nix
+++ b/pkgs/development/python-modules/httpserver/default.nix
@@ -1,4 +1,4 @@
-{ lib, fetchPypi, buildPythonPackage, docopt, pythonOlder }:
+{ lib, fetchPypi, buildPythonPackage, docopt }:
 
 buildPythonPackage rec {
   pname = "httpserver";
@@ -11,9 +11,6 @@ buildPythonPackage rec {
   # drivers.
   doCheck = false;
 
-  # Because it uses asyncio
-  disabled = pythonOlder "3.4";
-
   src = fetchPypi {
     inherit pname version;
     sha256 = "1q62g324dvb0hqdwwrnj41sqr4d3ly78v9nc26rz1whj4pwdmhsv";
diff --git a/pkgs/development/python-modules/httpx-ws/default.nix b/pkgs/development/python-modules/httpx-ws/default.nix
new file mode 100644
index 000000000000..fd02d918f04f
--- /dev/null
+++ b/pkgs/development/python-modules/httpx-ws/default.nix
@@ -0,0 +1,68 @@
+{
+  lib,
+  buildPythonPackage,
+  fetchFromGitHub,
+  pythonOlder,
+  hatchling,
+  anyio,
+  httpcore,
+  httpx,
+  wsproto,
+  pytestCheckHook,
+  starlette,
+  trio,
+  uvicorn,
+}:
+
+buildPythonPackage rec {
+  pname = "httpx-ws";
+  version = "0.6.0";
+  pyproject = true;
+
+  disabled = pythonOlder "3.8";
+
+  src = fetchFromGitHub {
+    owner = "frankie567";
+    repo = "httpx-ws";
+    rev = "refs/tags/v${version}";
+    hash = "sha256-eDc21FiGHi98doS4Zbubb/MVw4IjQ1q496TFHCX4xB4=";
+  };
+
+  # we don't need to use the hatch-regex-commit plugin
+  postPatch = ''
+    substituteInPlace pyproject.toml \
+      --replace-fail 'source = "regex_commit"' "" \
+      --replace-fail 'commit_extra_args = ["-e"]' "" \
+      --replace-fail '"hatch-regex-commit"' "" \
+      --replace-fail 'addopts = "--cov=httpx_ws/ --cov-report=term-missing"' ""
+  '';
+
+  build-system = [ hatchling ];
+
+  dependencies = [
+    anyio
+    httpcore
+    httpx
+    wsproto
+  ];
+
+  pythonImportsCheck = [ "httpx_ws" ];
+
+  nativeCheckInputs = [
+    pytestCheckHook
+    starlette
+    trio
+    uvicorn
+  ];
+
+  disabledTestPaths = [
+    # hang
+    "tests/test_api.py"
+  ];
+
+  meta = with lib; {
+    description = "WebSocket support for HTTPX";
+    homepage = "https://github.com/frankie567/httpx-ws";
+    license = licenses.mit;
+  };
+}
diff --git a/pkgs/development/python-modules/humanfriendly/default.nix b/pkgs/development/python-modules/humanfriendly/default.nix
index d8a3fa92e483..2c60b0b294b8 100644
--- a/pkgs/development/python-modules/humanfriendly/default.nix
+++ b/pkgs/development/python-modules/humanfriendly/default.nix
@@ -1,8 +1,6 @@
 { lib
-, pythonOlder
 , buildPythonPackage
 , fetchPypi
-, monotonic
 }:
 
 buildPythonPackage rec {
@@ -15,8 +13,6 @@ buildPythonPackage rec {
     sha256 = "6b0b831ce8f15f7300721aa49829fc4e83921a9a301cc7f606be6686a2288ddc";
   };
 
-  propagatedBuildInputs = lib.optional (pythonOlder "3.3") monotonic;
-
   # humanfriendly tests depends on coloredlogs which itself depends on
   # humanfriendly. This lead to infinite recursion when trying to
   # build this package so we have to disable the test suite :(
diff --git a/pkgs/development/python-modules/hurry-filesize/default.nix b/pkgs/development/python-modules/hurry-filesize/default.nix
index 62bd1f810f9d..7dd168bf9704 100644
--- a/pkgs/development/python-modules/hurry-filesize/default.nix
+++ b/pkgs/development/python-modules/hurry-filesize/default.nix
@@ -1,9 +1,6 @@
 { lib
 , buildPythonPackage
 , fetchPypi
-
-, pythonOlder
-
 , setuptools
 }:
 
@@ -12,8 +9,6 @@ buildPythonPackage rec {
   version = "0.9";
   pyproject = true;
 
-  disabled = pythonOlder "3.3";
-
   src = fetchPypi {
     pname = "hurry.filesize";
     inherit version;
diff --git a/pkgs/development/python-modules/hvac/default.nix b/pkgs/development/python-modules/hvac/default.nix
index 42f09f7266cc..f9309dcac3da 100644
--- a/pkgs/development/python-modules/hvac/default.nix
+++ b/pkgs/development/python-modules/hvac/default.nix
@@ -9,14 +9,14 @@
 
 buildPythonPackage rec {
   pname = "hvac";
-  version = "2.1.0";
+  version = "2.2.0";
   format = "pyproject";
 
   disabled = pythonOlder "3.8";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-tIvNoRpKsKe2xHIyx7p8h/2jGK4tSnZigAxGWnh0KJQ=";
+    hash = "sha256-5LAkjFZyy5pvWXTnyPUnGgnGxmPL+KsRczoifz0tssI=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/python-modules/hypercorn/default.nix b/pkgs/development/python-modules/hypercorn/default.nix
index 57d56fa417ca..b7add0e1a997 100644
--- a/pkgs/development/python-modules/hypercorn/default.nix
+++ b/pkgs/development/python-modules/hypercorn/default.nix
@@ -2,12 +2,11 @@
 , buildPythonPackage
 , fetchFromGitHub
 , pythonOlder
-, typing-extensions
-, wsproto
-, toml
+, exceptiongroup
+, h11
 , h2
 , priority
-, mock
+, wsproto
 , poetry-core
 , pytest-asyncio
 , pytest-trio
@@ -16,33 +15,44 @@
 
 buildPythonPackage rec {
   pname = "hypercorn";
-  version = "0.14.3";
-  disabled = pythonOlder "3.7";
+  version = "0.16.0";
   format = "pyproject";
 
+  disabled = pythonOlder "3.11"; # missing taskgroup dependency
+
   src = fetchFromGitHub {
     owner = "pgjones";
     repo = "Hypercorn";
     rev = version;
-    hash = "sha256-ECREs8UwqTWUweUrwnUwpVotCII2v4Bz7ZCk3DSAd8I=";
+    hash = "sha256-pIUZCQmC3c6FiV0iMMwJGs9TMi6B/YM+vaSx//sAmKE=";
   };
 
   postPatch = ''
     sed -i "/^addopts/d" pyproject.toml
   '';
 
-  nativeBuildInputs = [
+  build-system = [
     poetry-core
   ];
 
-  propagatedBuildInputs = [ wsproto toml h2 priority ]
-    ++ lib.optionals (pythonOlder "3.8") [ typing-extensions ];
+  dependencies = [
+    exceptiongroup
+    h11
+    h2
+    priority
+    wsproto
+  ];
 
   nativeCheckInputs = [
     pytest-asyncio
     pytest-trio
     pytestCheckHook
-  ] ++ lib.optionals (pythonOlder "3.8") [ mock ];
+  ];
+
+  disabledTests = [
+    # https://github.com/pgjones/hypercorn/issues/217
+    "test_startup_failure"
+  ];
 
   pythonImportsCheck = [ "hypercorn" ];
 
diff --git a/pkgs/development/python-modules/hypothesis/default.nix b/pkgs/development/python-modules/hypothesis/default.nix
index 5cf3408c89b7..09de31843bba 100644
--- a/pkgs/development/python-modules/hypothesis/default.nix
+++ b/pkgs/development/python-modules/hypothesis/default.nix
@@ -22,7 +22,7 @@
 
 buildPythonPackage rec {
   pname = "hypothesis";
-  version = "6.99.12";
+  version = "6.100.1";
   pyproject = true;
 
   disabled = pythonOlder "3.7";
@@ -31,7 +31,7 @@ buildPythonPackage rec {
     owner = "HypothesisWorks";
     repo = "hypothesis";
     rev = "hypothesis-python-${version}";
-    hash = "sha256-0nzjRDv4L3bxxnC0lBY5S7FP9CFhyzHzNchWXoX91Zg=";
+    hash = "sha256-3Mwa1nS6rvFBcU5QXLH4/wa38qCvDX9sRina1aJS1Rs=";
   };
 
   # I tried to package sphinx-selective-exclude, but it throws
diff --git a/pkgs/development/python-modules/iapws/default.nix b/pkgs/development/python-modules/iapws/default.nix
index 8e2e3fd07a81..169950593f5a 100644
--- a/pkgs/development/python-modules/iapws/default.nix
+++ b/pkgs/development/python-modules/iapws/default.nix
@@ -2,12 +2,12 @@
 
 buildPythonPackage rec {
   pname = "iapws";
-  version = "1.5.3";
+  version = "1.5.4";
   format = "setuptools";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-QVxbf9EF9YwAVPewAqhc1WZD6jVr/rFXQUw/jJ7kkDU=";
+    hash = "sha256-nw+qOaln12/F5flfYdki4TVFMZLgK/h10HJC8T1uqlU=";
   };
 
   propagatedBuildInputs = [ scipy ];
diff --git a/pkgs/development/python-modules/ibis-framework/default.nix b/pkgs/development/python-modules/ibis-framework/default.nix
index c6d68d83dbff..4021eeceb565 100644
--- a/pkgs/development/python-modules/ibis-framework/default.nix
+++ b/pkgs/development/python-modules/ibis-framework/default.nix
@@ -42,6 +42,7 @@
 , pytest-mock
 , pytest-randomly
 , pytest-snapshot
+, pytest-timeout
 , pytest-xdist
 , python-dateutil
 , pytz
@@ -65,15 +66,15 @@ let
     name = "ibis-testing-data";
     owner = "ibis-project";
     repo = "testing-data";
-    # https://github.com/ibis-project/ibis/blob/8.0.0/nix/overlay.nix#L20-L26
-    rev = "2c6a4bb5d5d525058d8d5b2312a9fee5dafc5476";
-    hash = "sha256-Lq503bqh9ESZJSk6yVq/uZwkAubzmSmoTBZSsqMm0DY=";
+    # https://github.com/ibis-project/ibis/blob/9.0.0/nix/overlay.nix#L20-L26
+    rev = "1922bd4617546b877e66e78bb2b87abeb510cf8e";
+    hash = "sha256-l5d7r/6Voy6N2pXq3IivLX3N0tNfKKwsbZXRexzc8Z8=";
   };
 in
 
 buildPythonPackage rec {
   pname = "ibis-framework";
-  version = "8.0.0";
+  version = "9.0.0";
   pyproject = true;
 
   disabled = pythonOlder "3.9";
@@ -83,7 +84,7 @@ buildPythonPackage rec {
     repo = "ibis";
     owner = "ibis-project";
     rev = "refs/tags/${version}";
-    hash = "sha256-KcNZslqmSbu8uPYKpkyvd7d8Fsf0nQt80y0auXsI8fs=";
+    hash = "sha256-ebTYCBL1zm2Rmwg998x2kYvKhyQDk8Di1pcx5lR37xo=";
   };
 
   nativeBuildInputs = [
@@ -120,6 +121,7 @@ buildPythonPackage rec {
     pytest-mock
     pytest-randomly
     pytest-snapshot
+    pytest-timeout
     pytest-xdist
   ] ++ lib.concatMap (name: passthru.optional-dependencies.${name}) testBackends;
 
@@ -133,8 +135,11 @@ buildPythonPackage rec {
     # breakage from sqlalchemy2 truediv changes
     "test_tpc_h17"
     # tries to download duckdb extensions
-    "test_register_sqlite"
+    "test_attach_sqlite"
+    "test_connect_extensions"
+    "test_load_extension"
     "test_read_sqlite"
+    "test_register_sqlite"
     # duckdb does not respect sample_size=2 (reads 3 lines of csv).
     "test_csv_reregister_schema"
     # duckdb fails with:
diff --git a/pkgs/development/python-modules/ibm-cloud-sdk-core/default.nix b/pkgs/development/python-modules/ibm-cloud-sdk-core/default.nix
index 46a5eb3e3691..65ddf3d5c071 100644
--- a/pkgs/development/python-modules/ibm-cloud-sdk-core/default.nix
+++ b/pkgs/development/python-modules/ibm-cloud-sdk-core/default.nix
@@ -12,14 +12,14 @@
 
 buildPythonPackage rec {
   pname = "ibm-cloud-sdk-core";
-  version = "3.19.2";
+  version = "3.20.0";
   pyproject = true;
 
   disabled = pythonOlder "3.8";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-qodN9ALyAfzsrCAiPT3t02JJRCBqFCNVWlsQP+4d3do=";
+    hash = "sha256-CqbZcEP1ianvRRpx527KBjQTjvGBzlSmoKY1Pe5MXRA=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/python-modules/ical/default.nix b/pkgs/development/python-modules/ical/default.nix
index 7807d5d7b279..2d573dcaeafd 100644
--- a/pkgs/development/python-modules/ical/default.nix
+++ b/pkgs/development/python-modules/ical/default.nix
@@ -1,22 +1,23 @@
-{ lib
-, buildPythonPackage
-, emoji
-, fetchFromGitHub
-, freezegun
-, tzdata
-, pyparsing
-, pydantic
-, pytest-benchmark
-, pytestCheckHook
-, pythonOlder
-, python-dateutil
-, setuptools
-, syrupy
+{
+  lib,
+  buildPythonPackage,
+  emoji,
+  fetchFromGitHub,
+  freezegun,
+  tzdata,
+  pyparsing,
+  pydantic,
+  pytest-benchmark,
+  pytestCheckHook,
+  pythonOlder,
+  python-dateutil,
+  setuptools,
+  syrupy,
 }:
 
 buildPythonPackage rec {
   pname = "ical";
-  version = "8.0.0";
+  version = "8.0.2";
   pyproject = true;
 
   disabled = pythonOlder "3.10";
@@ -25,12 +26,10 @@ buildPythonPackage rec {
     owner = "allenporter";
     repo = "ical";
     rev = "refs/tags/${version}";
-    hash = "sha256-nwF6iInQzHdOtmcC1fi6CS2LnYRCxc/DS9bg8IxTlFg=";
+    hash = "sha256-NrnRId+bgRh31+ocWBjWE2Zo3gOvPJ2fYtOVWOWD5EY=";
   };
 
-  build-system = [
-    setuptools
-  ];
+  build-system = [ setuptools ];
 
   dependencies = [
     python-dateutil
@@ -47,9 +46,7 @@ buildPythonPackage rec {
     syrupy
   ];
 
-  pythonImportsCheck = [
-    "ical"
-  ];
+  pythonImportsCheck = [ "ical" ];
 
   meta = with lib; {
     description = "Library for handling iCalendar";
diff --git a/pkgs/development/python-modules/idna/default.nix b/pkgs/development/python-modules/idna/default.nix
index 77aeb4483dc3..ec47eb675112 100644
--- a/pkgs/development/python-modules/idna/default.nix
+++ b/pkgs/development/python-modules/idna/default.nix
@@ -7,15 +7,15 @@
 
 buildPythonPackage rec {
   pname = "idna";
-  version = "3.6";
-  format = "pyproject";
+  version = "3.7";
+  pyproject = true;
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-ns270IOwZ5iuHoaty/6KsUec+GTk7jD+TkagA9Ekkco=";
+    hash = "sha256-Ao/zqt8GCcH9J42OowiSmUEqeoub0AXdCLn4KFvLXPw=";
   };
 
-  nativeBuildInputs = [
+  build-system = [
     flit-core
   ];
 
@@ -25,6 +25,7 @@ buildPythonPackage rec {
 
   meta = {
     homepage = "https://github.com/kjd/idna/";
+    changelog = "https://github.com/kjd/idna/releases/tag/v${version}";
     description = "Internationalized Domain Names in Applications (IDNA)";
     license = lib.licenses.bsd3;
   };
diff --git a/pkgs/development/python-modules/ifcopenshell/default.nix b/pkgs/development/python-modules/ifcopenshell/default.nix
index 3fc63b13bb39..7288eb8d96bc 100644
--- a/pkgs/development/python-modules/ifcopenshell/default.nix
+++ b/pkgs/development/python-modules/ifcopenshell/default.nix
@@ -7,11 +7,13 @@
 , icu
 , swig
 , pcre
-, opencascade-occt
+, opencascade-occt_7_6
 , opencollada
 , libxml2
 }:
-
+let
+  opencascade-occt = opencascade-occt_7_6;
+in
 buildPythonPackage rec {
   pname = "ifcopenshell";
   version = "240306";
diff --git a/pkgs/development/python-modules/igraph/default.nix b/pkgs/development/python-modules/igraph/default.nix
index 98f38528c144..8aa1583cc8a8 100644
--- a/pkgs/development/python-modules/igraph/default.nix
+++ b/pkgs/development/python-modules/igraph/default.nix
@@ -14,7 +14,7 @@
 
 buildPythonPackage rec {
   pname = "igraph";
-  version = "0.11.4";
+  version = "0.11.5";
 
   disabled = pythonOlder "3.8";
 
@@ -24,7 +24,7 @@ buildPythonPackage rec {
     owner = "igraph";
     repo = "python-igraph";
     rev = "refs/tags/${version}";
-    hash = "sha256-sR9OqsBxP2DvcYz1dhIP29rrQ56CRKW02oNAXUNttio=";
+    hash = "sha256-nfXCAjTKxtslVk17h60+v/JQusQTmaTRCPvvFG4/OPk=";
   };
 
   postPatch = ''
diff --git a/pkgs/development/python-modules/ihm/default.nix b/pkgs/development/python-modules/ihm/default.nix
index 2cfb69178b10..3991ce9a4339 100644
--- a/pkgs/development/python-modules/ihm/default.nix
+++ b/pkgs/development/python-modules/ihm/default.nix
@@ -10,14 +10,14 @@
 
 buildPythonPackage rec {
   pname = "ihm";
-  version = "1.0";
+  version = "1.1";
   pyproject = true;
 
   src = fetchFromGitHub {
     owner = "ihmwg";
     repo = "python-ihm";
     rev = "refs/tags/${version}";
-    hash = "sha256-a1M3YihN71M9TnkldAzN6N1UuPksDk6SPiBgr4HyC8g=";
+    hash = "sha256-auzArRwiue2CFo2DNS0NAF+aoZFvadhP6ARM0lRGcSA=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/python-modules/imgtool/default.nix b/pkgs/development/python-modules/imgtool/default.nix
index dc8a9ec63089..52f203f9b1e9 100644
--- a/pkgs/development/python-modules/imgtool/default.nix
+++ b/pkgs/development/python-modules/imgtool/default.nix
@@ -12,14 +12,14 @@
 
 buildPythonPackage rec {
   pname = "imgtool";
-  version = "2.0.0";
+  version = "2.1.0";
   pyproject = true;
 
   disabled = pythonOlder "3.6";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-elQSVeae7B8Sqjjc4fHU/iDYISZ3xoqbbsY0ypGgZhI=";
+    hash = "sha256-T3+831PETqqmImUEUQzLUvfvAMmXUDz5STSzMMlge2A=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/python-modules/importlib-metadata/default.nix b/pkgs/development/python-modules/importlib-metadata/default.nix
index 995d625f5604..df3106aac420 100644
--- a/pkgs/development/python-modules/importlib-metadata/default.nix
+++ b/pkgs/development/python-modules/importlib-metadata/default.nix
@@ -7,11 +7,14 @@
 , typing-extensions
 , toml
 , zipp
+
+# Reverse dependency
+, sage
 }:
 
 buildPythonPackage rec {
   pname = "importlib-metadata";
-  version = "7.0.2";
+  version = "7.1.0";
   format = "pyproject";
 
   disabled = pythonOlder "3.7";
@@ -19,7 +22,7 @@ buildPythonPackage rec {
   src = fetchPypi {
     pname = "importlib_metadata";
     inherit version;
-    hash = "sha256-GY9WjzIwh4yxtE+9eXX4eQbCIzbbouSn8FJ4woH715I=";
+    hash = "sha256-t4k4uSbujV8CD8R3LUhwRYBaVd260uzyHG1gk43H/NI=";
   };
 
   nativeBuildInputs = [
@@ -41,6 +44,8 @@ buildPythonPackage rec {
     "importlib_metadata"
   ];
 
+  passthru.tests = { inherit sage; };
+
   meta = with lib; {
     description = "Read metadata from Python packages";
     homepage = "https://importlib-metadata.readthedocs.io/";
diff --git a/pkgs/development/python-modules/importlib-resources/default.nix b/pkgs/development/python-modules/importlib-resources/default.nix
index 79012fa9677a..1f4b01a41992 100644
--- a/pkgs/development/python-modules/importlib-resources/default.nix
+++ b/pkgs/development/python-modules/importlib-resources/default.nix
@@ -10,6 +10,9 @@
 # dependencies
 , importlib-metadata
 
+# Reverse dependency
+, sage
+
 # tests
 , jaraco-collections
 , pytestCheckHook
@@ -17,7 +20,7 @@
 
 buildPythonPackage rec {
   pname = "importlib-resources";
-  version = "6.1.3";
+  version = "6.3.2";
   pyproject = true;
 
   disabled = pythonOlder "3.6";
@@ -25,7 +28,7 @@ buildPythonPackage rec {
   src = fetchPypi {
     pname = "importlib_resources";
     inherit version;
-    hash = "sha256-VvtFJRl7eFRKM1TqJ3k5UquT+TW7S/dGuEa7EBUCDys=";
+    hash = "sha256-lj63lkklKwFgwa/P5aHT/jrWbt0KixFL6s/7cMBnQiM=";
   };
 
   build-system = [
@@ -46,6 +49,8 @@ buildPythonPackage rec {
     "importlib_resources"
   ];
 
+  passthru.tests = { inherit sage; };
+
   meta = with lib; {
     description = "Read resources from Python packages";
     homepage = "https://importlib-resources.readthedocs.io/";
diff --git a/pkgs/development/python-modules/indexed-zstd/default.nix b/pkgs/development/python-modules/indexed-zstd/default.nix
index 88cb6f05930a..e7980f88a9fd 100644
--- a/pkgs/development/python-modules/indexed-zstd/default.nix
+++ b/pkgs/development/python-modules/indexed-zstd/default.nix
@@ -9,14 +9,14 @@
 
 buildPythonPackage rec {
   pname = "indexed_zstd";
-  version = "1.6.0";
+  version = "1.6.1";
   pyproject = true;
 
   disabled = pythonOlder "3.6";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-icCerrv6ihBjSTS4Fsw7qhoA5ha8yegfMVRiIOhTvvY=";
+    hash = "sha256-i3Q3j5Rh/OqxdSFbZeHEiYZN2zS9gWBYk2pifwzKOos=";
   };
 
   nativeBuildInputs = [ cython setuptools ];
diff --git a/pkgs/development/python-modules/inflect/default.nix b/pkgs/development/python-modules/inflect/default.nix
index d6317d00841b..35760249f742 100644
--- a/pkgs/development/python-modules/inflect/default.nix
+++ b/pkgs/development/python-modules/inflect/default.nix
@@ -2,25 +2,31 @@
 , buildPythonPackage
 , fetchPypi
 , isPy27
+, more-itertools
 , setuptools-scm
 , pydantic
 , pytestCheckHook
+, typeguard
 }:
 
 buildPythonPackage rec {
   pname = "inflect";
-  version = "7.0.0";
+  version = "7.2.0";
   disabled = isPy27;
   format = "pyproject";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-Y9qTJa0p2oHsI+BVtBIleVq3k7TstIO+XcH6Nj/UcX4=";
+    hash = "sha256-Mv6s+s/K4vIub8zeoQ8N3yamOPrENNDd2q+8oANPN4Q=";
   };
 
   nativeBuildInputs = [ setuptools-scm ];
 
-  propagatedBuildInputs = [ pydantic ];
+  propagatedBuildInputs = [
+    more-itertools
+    pydantic
+    typeguard
+  ];
 
   nativeCheckInputs = [ pytestCheckHook ];
 
diff --git a/pkgs/development/python-modules/influxdb/default.nix b/pkgs/development/python-modules/influxdb/default.nix
index ca962f4e4792..1f7e7c017501 100644
--- a/pkgs/development/python-modules/influxdb/default.nix
+++ b/pkgs/development/python-modules/influxdb/default.nix
@@ -1,26 +1,28 @@
-{ lib
-, buildPythonPackage
-, python-dateutil
-, fetchPypi
-, mock
-, msgpack
-, pynose
-, pandas
-, pytestCheckHook
-, pytz
-, requests
-, requests-mock
-, six
+{
+  lib,
+  buildPythonPackage,
+  fetchPypi,
+  mock,
+  msgpack,
+  pandas,
+  pynose,
+  pytestCheckHook,
+  python-dateutil,
+  pytz,
+  requests,
+  requests-mock,
+  setuptools,
+  six,
 }:
 
 buildPythonPackage rec {
   pname = "influxdb";
-  version = "5.3.1";
-  format = "setuptools";
+  version = "5.3.2";
+  pyproject = true;
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "0ymjv322mv6y424fmpd70f87152w55mbwwj6i7p3sjzf0ixmxy26";
+    hash = "sha256-WMZH9gQ3Et2G6a7hLrTM+7tUFUZ7yZEKSKqMdMEQiXA=";
   };
 
   postPatch = ''
@@ -35,25 +37,28 @@ buildPythonPackage rec {
     done
   '';
 
-  propagatedBuildInputs = [
-    requests
+  build-system = [ setuptools ];
+
+  dependencies = [
+    msgpack
     python-dateutil
     pytz
+    requests
     six
-    msgpack
   ];
 
   __darwinAllowLocalNetworking = true;
 
   nativeCheckInputs = [
-    pytestCheckHook
-    requests-mock
     mock
-    pynose
     pandas
+    pynose
+    pytestCheckHook
+    requests-mock
   ];
 
   disabledTests = [
+    "socket"
     # Tests cause FutureWarning due to use of 'record' instead of 'records' in pandas.
     #   https://github.com/influxdata/influxdb-python/pull/845
     # Also type mismatches in assertEqual on DataFrame:
@@ -78,6 +83,7 @@ buildPythonPackage rec {
   meta = with lib; {
     description = "Python client for InfluxDB";
     homepage = "https://github.com/influxdb/influxdb-python";
+    changelog = "https://github.com/influxdata/influxdb-python/blob/v${version}/CHANGELOG.md";
     license = licenses.mit;
     maintainers = with maintainers; [ fab ];
   };
diff --git a/pkgs/development/python-modules/inform/default.nix b/pkgs/development/python-modules/inform/default.nix
index a95e9e9cc8e8..1f57a9add043 100644
--- a/pkgs/development/python-modules/inform/default.nix
+++ b/pkgs/development/python-modules/inform/default.nix
@@ -11,7 +11,7 @@
 
 buildPythonPackage rec {
   pname = "inform";
-  version = "1.28";
+  version = "1.29";
   format = "pyproject";
 
   disabled = pythonOlder "3.7";
@@ -20,7 +20,7 @@ buildPythonPackage rec {
     owner = "KenKundert";
     repo = "inform";
     rev = "refs/tags/v${version}";
-    hash = "sha256-RA8/or3HTS/rQmG4A/Eg5j24YElaTEpnHa1yksARVMQ=";
+    hash = "sha256-quJGgXMvVZGqZA6M/AjU/cjYeL0R2nuPDoL0Ji0Ow6I=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/python-modules/intbitset/default.nix b/pkgs/development/python-modules/intbitset/default.nix
index 96e1698002f0..b3e2294f1a7e 100644
--- a/pkgs/development/python-modules/intbitset/default.nix
+++ b/pkgs/development/python-modules/intbitset/default.nix
@@ -1,14 +1,16 @@
-{ lib
-, fetchPypi
-, buildPythonPackage
-, pytestCheckHook
-, pythonOlder
+{
+  lib,
+  fetchPypi,
+  buildPythonPackage,
+  pytestCheckHook,
+  pythonOlder,
+  setuptools
 }:
 
 buildPythonPackage rec {
   pname = "intbitset";
   version = "3.1.0";
-  format = "setuptools";
+  pyproject = true;
 
   disabled = pythonOlder "3.7";
 
@@ -17,19 +19,16 @@ buildPythonPackage rec {
     hash = "sha256-boPFun/aJSCqhWVCi7r4Qt63KT1mXzzYKByzklTS/3E=";
   };
 
-  nativeCheckInputs = [
-    pytestCheckHook
-  ];
+  build-system = [ setuptools ];
+  nativeCheckInputs = [ pytestCheckHook ];
 
-  pythonImportsCheck = [
-    "intbitset"
-  ];
+  pythonImportsCheck = [ "intbitset" ];
 
   meta = with lib; {
     description = "C-based extension implementing fast integer bit sets";
     homepage = "https://github.com/inveniosoftware/intbitset";
     changelog = "https://github.com/inveniosoftware-contrib/intbitset/blob/v${version}/CHANGELOG.rst";
     license = licenses.lgpl3Plus;
-    maintainers = [ ];
+    maintainers = with maintainers; [ sigmanificient ];
   };
 }
diff --git a/pkgs/development/python-modules/internetarchive/default.nix b/pkgs/development/python-modules/internetarchive/default.nix
index 11a089b376d3..5beb0cc44e1a 100644
--- a/pkgs/development/python-modules/internetarchive/default.nix
+++ b/pkgs/development/python-modules/internetarchive/default.nix
@@ -16,7 +16,7 @@
 
 buildPythonPackage rec {
   pname = "internetarchive";
-  version = "4.0.1";
+  version = "4.1.0";
   pyproject = true;
 
   disabled = pythonOlder "3.8";
@@ -25,7 +25,7 @@ buildPythonPackage rec {
     owner = "jjjake";
     repo = "internetarchive";
     rev = "refs/tags/v${version}";
-    hash = "sha256-U6idxc5U2Bt581c/vnGgIou5+hoEJJZSPCo97MEDaW4=";
+    hash = "sha256-CqfwAKhrq4VEBU258x19JT8+ay2vOYIzVoFWjAzh3wY=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/python-modules/ipykernel/default.nix b/pkgs/development/python-modules/ipykernel/default.nix
index 394974103537..35cd3bad0aa4 100644
--- a/pkgs/development/python-modules/ipykernel/default.nix
+++ b/pkgs/development/python-modules/ipykernel/default.nix
@@ -18,6 +18,9 @@
 , pyzmq
 , tornado
 , traitlets
+
+# Reverse dependency
+, sage
 }:
 
 buildPythonPackage rec {
@@ -63,6 +66,7 @@ buildPythonPackage rec {
 
   passthru.tests = {
     pytest = callPackage ./tests.nix { };
+    inherit sage;
   };
 
   meta = {
diff --git a/pkgs/development/python-modules/ipympl/default.nix b/pkgs/development/python-modules/ipympl/default.nix
index f461659c6500..b25f5fd58ae3 100644
--- a/pkgs/development/python-modules/ipympl/default.nix
+++ b/pkgs/development/python-modules/ipympl/default.nix
@@ -13,14 +13,16 @@
 
 buildPythonPackage rec {
   pname = "ipympl";
-  version = "0.9.3";
+  version = "0.9.4";
   format = "wheel";
 
   disabled = pythonOlder "3.5";
 
   src = fetchPypi {
     inherit pname version format;
-    hash = "sha256-0RPNVYkbr+myfvmbbdERqHvra7KuVQxAQpInIQO+gBM=";
+    hash = "sha256-WwwIxvT26mVbpYI5NjRXwQ+5IVV/UDjBpG20RX1taw4=";
+    dist = "py3";
+    python = "py3";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/ipynbname/default.nix b/pkgs/development/python-modules/ipynbname/default.nix
index 03a27ec19d8c..bd158be55f52 100644
--- a/pkgs/development/python-modules/ipynbname/default.nix
+++ b/pkgs/development/python-modules/ipynbname/default.nix
@@ -1,20 +1,25 @@
 { lib
 , buildPythonPackage
 , fetchPypi
+, setuptools
 , ipykernel
 }:
 
 buildPythonPackage rec {
   pname = "ipynbname";
-  version = "2023.2.0.0";
-  format = "setuptools";
+  version = "2024.1.0.0";
+  pyproject = true;
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-Riu915VmJIdtxOqB+nkoRas4cOREyh9res2uo32Mnr8=";
+    hash = "sha256-HTxpze6Kl4FPRWpyBOnMGVtLu0ueRcvnV3lrFiST9gY=";
   };
 
-  propagatedBuildInputs = [
+  build-system = [
+    setuptools
+  ];
+
+  dependencies = [
     ipykernel
   ];
 
diff --git a/pkgs/development/python-modules/ipython/default.nix b/pkgs/development/python-modules/ipython/default.nix
index 7a10725f2451..577b78804907 100644
--- a/pkgs/development/python-modules/ipython/default.nix
+++ b/pkgs/development/python-modules/ipython/default.nix
@@ -29,6 +29,9 @@
 , notebook
 , qtconsole
 
+# Reverse dependency
+, sage
+
 # Test dependencies
 , pickleshare
 , pytest-asyncio
@@ -106,6 +109,8 @@ buildPythonPackage rec {
     "test_clipboard_get"
   ];
 
+  passthru.tests = { inherit sage; };
+
   meta = with lib; {
     description = "IPython: Productive Interactive Computing";
     downloadPage = "https://github.com/ipython/ipython/";
diff --git a/pkgs/development/python-modules/ipyvue/default.nix b/pkgs/development/python-modules/ipyvue/default.nix
index 2be0ddfe8075..a7a49a8d906e 100644
--- a/pkgs/development/python-modules/ipyvue/default.nix
+++ b/pkgs/development/python-modules/ipyvue/default.nix
@@ -1,24 +1,26 @@
 { lib
-, isPy27
 , buildPythonPackage
 , fetchPypi
   # Python Inputs
+, setuptools
 , ipywidgets
 }:
 
 buildPythonPackage rec {
   pname = "ipyvue";
-  version = "1.11.0";
-  format = "setuptools";
-
-  disabled = isPy27;
+  version = "1.11.1";
+  pyproject = true;
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-ez2ygBvgU12FX/+qDkARlizq50rEgZYp4UH5Sx4E2QA=";
+    hash = "sha256-AwgE/5GgRK0/oHrjTjlSo9IxmDdnhDSqqZrkiLp0mls=";
   };
 
-  propagatedBuildInputs = [ ipywidgets ];
+  build-system = [
+    setuptools
+  ];
+
+  dependencies = [ ipywidgets ];
 
   doCheck = false;  # No tests in package or GitHub
   pythonImportsCheck = [ "ipyvue" ];
diff --git a/pkgs/development/python-modules/isal/default.nix b/pkgs/development/python-modules/isal/default.nix
new file mode 100644
index 000000000000..c37d9357ec53
--- /dev/null
+++ b/pkgs/development/python-modules/isal/default.nix
@@ -0,0 +1,67 @@
+{ lib
+, buildPythonPackage
+, fetchFromGitHub
+
+# build-system
+, setuptools
+
+# native dependencies
+, isa-l
+
+# tests
+, pytest-timeout
+, pytestCheckHook
+}:
+
+buildPythonPackage rec {
+  pname = "isal";
+  version = "1.6.1";
+  pyproject = true;
+
+  src = fetchFromGitHub {
+    owner = "pycompression";
+    repo = "python-isal";
+    rev = "v${version}";
+    hash = "sha256-EhdKT2ftyU2zevFg9Yi3q2FVx0FmKwJMzszsK1NS3Qg=";
+  };
+
+  build-system = [
+    setuptools
+  ];
+
+  buildInputs = [
+    isa-l
+  ];
+
+  env.PYTHON_ISAL_LINK_DYNAMIC = true;
+
+  nativeCheckInputs = [
+    pytest-timeout
+    pytestCheckHook
+  ];
+
+  pytestFlagsArray = [
+    "tests"
+  ];
+
+   disabledTests = [
+    # calls `python -m isal` and fails on import
+    "test_compress_fast_best_are_exclusive"
+    "test_compress_infile_outfile"
+    "test_compress_infile_outfile_default"
+    "test_decompress_cannot_have_flags_compression"
+    "test_decompress_infile_outfile_error"
+  ];
+
+  pythonImportsCheck = [
+    "isal"
+  ];
+
+  meta = with lib; {
+    changelog = "https://github.com/pycompression/python-isal/blob/${src.rev}/CHANGELOG.rst";
+    description = "Faster zlib and gzip compatible compression and decompression by providing python bindings for the isa-l library";
+    homepage = "https://github.com/pycompression/python-isal";
+    license = licenses.psfl;
+    maintainers = with maintainers; [ hexa ];
+  };
+}
diff --git a/pkgs/development/python-modules/islpy/default.nix b/pkgs/development/python-modules/islpy/default.nix
index ca84beae2eef..83f0b26c0047 100644
--- a/pkgs/development/python-modules/islpy/default.nix
+++ b/pkgs/development/python-modules/islpy/default.nix
@@ -1,41 +1,71 @@
-{ lib
-, buildPythonPackage
-, fetchPypi
-, isl
-, pybind11
-, pytestCheckHook
-, pythonOlder
-, six
+{
+  lib,
+  buildPythonPackage,
+  fetchFromGitHub,
+  pythonOlder,
+
+  setuptools,
+  cmake,
+  nanobind,
+  ninja,
+  pcpp,
+  scikit-build,
+  isl,
+
+  pytestCheckHook,
 }:
 
 buildPythonPackage rec {
   pname = "islpy";
   version = "2023.2.5";
-  format = "setuptools";
+  pyproject = true;
 
-  disabled = pythonOlder "3.6";
+  disabled = pythonOlder "3.8";
 
-  src = fetchPypi {
-    inherit pname version;
-    sha256 = "sha256-3XQ5i682k4q7fCqdmCjMGi5UnGyASFzsiwaymr+q0Y8=";
+  src = fetchFromGitHub {
+    owner = "inducer";
+    repo = "islpy";
+    rev = "v${version}";
+    hash = "sha256-0m41G5HlPrgt4rDY3Y9cKBJGHSnLg/R+IywBO1anRpQ=";
   };
 
-  postConfigure = ''
-    substituteInPlace setup.py \
-      --replace "\"pytest>=2\"," ""
+  postPatch = ''
+    substituteInPlace pyproject.toml \
+        --replace-fail "setuptools>=42,<64;python_version<'3.12'" "setuptools>=42"
   '';
 
-  buildInputs = [ isl pybind11 ];
-  propagatedBuildInputs = [ six ];
+  build-system = [
+    setuptools
+    cmake
+    nanobind
+    ninja
+    pcpp
+    scikit-build
+  ];
+
+  buildInputs = [ isl ];
+
+  dontUseCmakeConfigure = true;
+
+  preConfigure = ''
+    python ./configure.py \
+        --no-use-shipped-isl \
+        --isl-inc-dir=${lib.getDev isl}/include \
+  '';
+
+  # Force resolving the package from $out to make generated ext files usable by tests
+  preCheck = ''
+    mv islpy islpy.hidden
+  '';
 
-  preCheck = "mv islpy islpy.hidden";
   nativeCheckInputs = [ pytestCheckHook ];
+
   pythonImportsCheck = [ "islpy" ];
 
-  meta = with lib; {
+  meta = {
     description = "Python wrapper around isl, an integer set library";
     homepage = "https://github.com/inducer/islpy";
-    license = licenses.mit;
-    maintainers = [ ];
+    license = lib.licenses.mit;
+    maintainers = with lib.maintainers; [ tomasajt ];
   };
 }
diff --git a/pkgs/development/python-modules/iterable-io/default.nix b/pkgs/development/python-modules/iterable-io/default.nix
new file mode 100644
index 000000000000..81799c7aec4f
--- /dev/null
+++ b/pkgs/development/python-modules/iterable-io/default.nix
@@ -0,0 +1,37 @@
+{
+  lib,
+  buildPythonPackage,
+  pythonOlder,
+  fetchFromGitHub,
+  setuptools,
+  pytestCheckHook,
+}:
+
+buildPythonPackage rec {
+  pname = "iterable-io";
+  version = "1.0.0";
+  pyproject = true;
+
+  disabled = pythonOlder "3.7";
+
+  src = fetchFromGitHub {
+    owner = "pR0Ps";
+    repo = "iterable-io";
+    rev = "refs/tags/v${version}";
+    hash = "sha256-+PSINKS7/FeGHYvkOASA5m+1pBpKfURfylZ8CwKijgA=";
+  };
+
+  nativeBuildInputs = [ setuptools ];
+
+  pythonImportsCheck = [ "iterableio" ];
+
+  nativeCheckInputs = [ pytestCheckHook ];
+
+  meta = {
+    description = "Library to adapt iterables to a file-like interface";
+    homepage = "https://github.com/pR0Ps/iterable-io";
+    changelog = "https://github.com/pR0Ps/iterable-io/blob/v${version}/CHANGELOG.md";
+    license = lib.licenses.lgpl3Only;
+    maintainers = [ lib.maintainers.mjoerg ];
+  };
+}
diff --git a/pkgs/development/python-modules/itsdangerous/default.nix b/pkgs/development/python-modules/itsdangerous/default.nix
index cfc364a4a399..edd1b149905f 100644
--- a/pkgs/development/python-modules/itsdangerous/default.nix
+++ b/pkgs/development/python-modules/itsdangerous/default.nix
@@ -2,31 +2,32 @@
 , buildPythonPackage
 , pythonOlder
 , fetchPypi
+, flit-core
 , freezegun
 , pytestCheckHook
 }:
 
 buildPythonPackage rec {
   pname = "itsdangerous";
-  version = "2.1.2";
-  format = "setuptools";
+  version = "2.2.0";
+  pyproject = true;
+
   disabled = pythonOlder "3.6";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-XbvGizF+XkLzJ/kCF2NUXcP8O/4i5t65aq8fw4h0FWo=";
+    hash = "sha256-4AUMC32h7qU/+vFJwM+7XG4uK2nEvvIsgfputz5fYXM=";
   };
 
+  build-system = [ flit-core ];
+
   nativeCheckInputs = [
     freezegun
     pytestCheckHook
   ];
 
-  pytestFlagsArray = [
-    "-W" "ignore::DeprecationWarning"
-  ];
-
   meta = with lib; {
+    changelog = "https://github.com/pallets/itsdangerous/blob/${version}/CHANGES.rst";
     description = "Safely pass data to untrusted environments and back";
     homepage = "https://itsdangerous.palletsprojects.com";
     license = licenses.bsd3;
diff --git a/pkgs/development/python-modules/jaraco-collections/default.nix b/pkgs/development/python-modules/jaraco-collections/default.nix
index bab89a3f7a60..ecef3939c9c5 100644
--- a/pkgs/development/python-modules/jaraco-collections/default.nix
+++ b/pkgs/development/python-modules/jaraco-collections/default.nix
@@ -9,13 +9,13 @@
 
 buildPythonPackage rec {
   pname = "jaraco-collections";
-  version = "5.0.0";
+  version = "5.0.1";
   format = "pyproject";
 
   src = fetchPypi {
     pname = "jaraco.collections";
     inherit version;
-    hash = "sha256-FoDo0J8pX2Jce6kmiAF1om/b5wkrTHbRmOMEdrIc/mg=";
+    hash = "sha256-gIYxsXS4Sk4qWSSQ1i9i38FdgEeg9xVyYJjcQ7gabPo=";
   };
 
   postPatch = ''
diff --git a/pkgs/development/python-modules/jaraco-functools/default.nix b/pkgs/development/python-modules/jaraco-functools/default.nix
index 28a7d64e11f9..d3b899281887 100644
--- a/pkgs/development/python-modules/jaraco-functools/default.nix
+++ b/pkgs/development/python-modules/jaraco-functools/default.nix
@@ -2,21 +2,25 @@
 , buildPythonPackage
 , fetchPypi
 , more-itertools
+, setuptools
 , setuptools-scm
 }:
 
 buildPythonPackage rec {
   pname = "jaraco-functools";
-  version = "4.0.0";
-  format = "pyproject";
+  version = "4.0.1";
+  pyproject = true;
 
   src = fetchPypi {
-    pname = "jaraco.functools";
+    pname = "jaraco_functools";
     inherit version;
-    hash = "sha256-wnnLJMk9aU73Jw+XDUmcq004E/TggnP5U5hlGmNPCSU=";
+    hash = "sha256-0z+nZTdMBhG1L4s6eV+JAIaaqIyEdp1NF0bNaPsow+g=";
   };
 
-  nativeBuildInputs = [ setuptools-scm ];
+  nativeBuildInputs = [
+    setuptools
+    setuptools-scm
+  ];
 
   propagatedBuildInputs = [
     more-itertools
diff --git a/pkgs/development/python-modules/jax/default.nix b/pkgs/development/python-modules/jax/default.nix
index e160eec612cf..80b02765550f 100644
--- a/pkgs/development/python-modules/jax/default.nix
+++ b/pkgs/development/python-modules/jax/default.nix
@@ -29,7 +29,7 @@ let
 in
 buildPythonPackage rec {
   pname = "jax";
-  version = "0.4.25";
+  version = "0.4.28";
   pyproject = true;
 
   disabled = pythonOlder "3.9";
@@ -39,7 +39,7 @@ buildPythonPackage rec {
     repo = "jax";
     # google/jax contains tags for jax and jaxlib. Only use jax tags!
     rev = "refs/tags/jax-v${version}";
-    hash = "sha256-poQQo2ZgEhPYzK3aCs+BjaHTNZbezJAECd+HOdY1Yok=";
+    hash = "sha256-qSHPwi3is6Ts7pz5s4KzQHBMbcjGp+vAOsejW3o36Ek=";
   };
 
   nativeBuildInputs = [
@@ -81,6 +81,14 @@ buildPythonPackage rec {
     "tests/"
   ];
 
+  # Prevents `tests/export_back_compat_test.py::CompatTest::test_*` tests from failing on darwin with
+  # PermissionError: [Errno 13] Permission denied: '/tmp/back_compat_testdata/test_*.py'
+  # See https://github.com/google/jax/blob/jaxlib-v0.4.27/jax/_src/internal_test_util/export_back_compat_test_util.py#L240-L241
+  # NOTE: this doesn't seem to be an issue on linux
+  preCheck = lib.optionalString stdenv.isDarwin ''
+    export TEST_UNDECLARED_OUTPUTS_DIR=$(mktemp -d)
+  '';
+
   disabledTests = [
     # Exceeds tolerance when the machine is busy
     "test_custom_linear_solve_aux"
diff --git a/pkgs/development/python-modules/jaxlib/bin.nix b/pkgs/development/python-modules/jaxlib/bin.nix
index 54abdfe48c34..d2bf3604a78d 100644
--- a/pkgs/development/python-modules/jaxlib/bin.nix
+++ b/pkgs/development/python-modules/jaxlib/bin.nix
@@ -20,17 +20,17 @@
 , stdenv
   # Options:
 , cudaSupport ? config.cudaSupport
-, cudaPackagesGoogle
+, cudaPackages
 }:
 
 let
-  inherit (cudaPackagesGoogle) cudaVersion;
+  inherit (cudaPackages) cudaVersion;
 
-  version = "0.4.24";
+  version = "0.4.28";
 
   inherit (python) pythonVersion;
 
-  cudaLibPath = lib.makeLibraryPath (with cudaPackagesGoogle; [
+  cudaLibPath = lib.makeLibraryPath (with cudaPackages; [
     cuda_cudart.lib # libcudart.so
     cuda_cupti.lib # libcupti.so
     cudnn.lib # libcudnn.so
@@ -56,65 +56,65 @@ let
       "3.9-x86_64-linux" = getSrcFromPypi {
         platform = "manylinux2014_x86_64";
         dist = "cp39";
-        hash = "sha256-6P5ArMoLZiUkHUoQ/mJccbNj5/7el/op+Qo6cGQ33xE=";
+        hash = "sha256-Slbr8FtKTBeRaZ2HTgcvP4CPCYa0AQsU+1SaackMqdw=";
       };
       "3.9-aarch64-darwin" = getSrcFromPypi {
         platform = "macosx_11_0_arm64";
         dist = "cp39";
-        hash = "sha256-23JQZRwMLtt7sK/JlCBqqRyfTVIAVJFN2sL+nAkQgvU=";
+        hash = "sha256-sBVi7IrXVxm30DiXUkiel+trTctMjBE75JFjTVKCrTw=";
       };
       "3.9-x86_64-darwin" = getSrcFromPypi {
         platform = "macosx_10_14_x86_64";
         dist = "cp39";
-        hash = "sha256-OgMedn9GHGs5THZf3pkP3Aw/jJ0vL5qK1b+Lzf634Ik=";
+        hash = "sha256-T5jMg3srbG3P4Kt/+esQkxSSCUYRmqOvn6oTlxj/J4c=";
       };
 
       "3.10-x86_64-linux" = getSrcFromPypi {
         platform = "manylinux2014_x86_64";
         dist = "cp310";
-        hash = "sha256-/VwUIIa7mTs/wLz0ArsEfNrz2pGriVVT5GX9XRFRxfY=";
+        hash = "sha256-47zcb45g+FVPQVwU2TATTmAuPKM8OOVGJ0/VRfh1dps=";
       };
       "3.10-aarch64-darwin" = getSrcFromPypi {
         platform = "macosx_11_0_arm64";
         dist = "cp310";
-        hash = "sha256-LgICOyDGts840SQQJh+yOMobMASb62llvJjpGvhzrSw=";
+        hash = "sha256-8Djmi9ENGjVUcisLvjbmpEg4RDenWqnSg/aW8O2fjAk=";
       };
       "3.10-x86_64-darwin" = getSrcFromPypi {
         platform = "macosx_10_14_x86_64";
         dist = "cp310";
-        hash = "sha256-vhyULw+zBpz1UEi2tqgBMQEzY9a6YBgEIg6A4PPh3bQ=";
+        hash = "sha256-pCHSN/jCXShQFm0zRgPGc925tsJvUrxJZwS4eCKXvWY=";
       };
 
       "3.11-x86_64-linux" = getSrcFromPypi {
         platform = "manylinux2014_x86_64";
         dist = "cp311";
-        hash = "sha256-VJO/VVwBFkOEtq4y/sLVgAV8Cung01JULiuT6W96E/8=";
+        hash = "sha256-Rc4PPIQM/4I2z/JsN/Jsn/B4aV+T4MFiwyDCgfUEEnU=";
       };
       "3.11-aarch64-darwin" = getSrcFromPypi {
         platform = "macosx_11_0_arm64";
         dist = "cp311";
-        hash = "sha256-VtuwXxurpSp1KI8ty1bizs5cdy8GEBN2MgS227sOCmE=";
+        hash = "sha256-eThX+vN/Nxyv51L+pfyBH0NeQ7j7S1AgWERKf17M+Ck=";
       };
       "3.11-x86_64-darwin" = getSrcFromPypi {
         platform = "macosx_10_14_x86_64";
         dist = "cp311";
-        hash = "sha256-4Dj5dEGKb9hpg3HlVogNO1Gc9UibJhy1eym2mjivxAQ=";
+        hash = "sha256-L/gpDtx7ksfq5SUX9lSSYz4mey6QZ7rT5MMj0hPnfPU=";
       };
 
       "3.12-x86_64-linux" = getSrcFromPypi {
         platform = "manylinux2014_x86_64";
         dist = "cp312";
-        hash = "sha256-TlrGVtb3NTLmhnILWPLJR+jISCZ5SUV4wxNFpSfkCBo=";
+        hash = "sha256-RqGqhX9P7uikP8upXA4Kti1AwmzJcwtsaWVZCLo1n40=";
       };
       "3.12-aarch64-darwin" = getSrcFromPypi {
         platform = "macosx_11_0_arm64";
         dist = "cp312";
-        hash = "sha256-FIwK5CGykQjteuWzLZnbtAggIxLQeGV96bXlZGEytN0=";
+        hash = "sha256-jdi//jhTcC9jzZJNoO4lc0pNGc1ckmvgM9dyun0cF10=";
       };
       "3.12-x86_64-darwin" = getSrcFromPypi {
         platform = "macosx_10_14_x86_64";
         dist = "cp312";
-        hash = "sha256-9/jw/wr6oUD9pOadVAaMRL086iVMUXwVgnUMcG1UNvE=";
+        hash = "sha256-1sCaVFMpciRhrwVuc1FG0sjHTCKsdCaoRetp8ya096A=";
       };
     };
 
@@ -130,35 +130,19 @@ let
   gpuSrcs = {
     "cuda12.2-3.9" = fetchurl {
       url = "https://storage.googleapis.com/jax-releases/cuda12/jaxlib-${version}+cuda12.cudnn89-cp39-cp39-manylinux2014_x86_64.whl";
-      hash = "sha256-xdJKLPtx+CIza2CrWKM3M0cZJzyNFVTTTsvlgh38bfM=";
+      hash = "sha256-d8LIl22gIvmWfoyKfXKElZJXicPQIZxdS4HumhwQGCw=";
     };
     "cuda12.2-3.10" = fetchurl {
       url = "https://storage.googleapis.com/jax-releases/cuda12/jaxlib-${version}+cuda12.cudnn89-cp310-cp310-manylinux2014_x86_64.whl";
-      hash = "sha256-QCjrOczD2mp+CDwVXBc0/4rJnAizeV62AK0Dpx9X6TE=";
+      hash = "sha256-PXtWv+UEcMWF8LhWe6Z1UGkf14PG3dkJ0Iop0LiimnQ=";
     };
     "cuda12.2-3.11" = fetchurl {
       url = "https://storage.googleapis.com/jax-releases/cuda12/jaxlib-${version}+cuda12.cudnn89-cp311-cp311-manylinux2014_x86_64.whl";
-      hash = "sha256-Ipy3vk1yUplpNzECAFt63aOIhgEWgXG7hkoeTIk9bQQ=";
+      hash = "sha256-QO2WSOzmJ48VaCha596mELiOfPsAGLpGctmdzcCHE/o=";
     };
     "cuda12.2-3.12" = fetchurl {
       url = "https://storage.googleapis.com/jax-releases/cuda12/jaxlib-${version}+cuda12.cudnn89-cp312-cp312-manylinux2014_x86_64.whl";
-      hash = "sha256-LSnZHaUga/8Z65iKXWBnZDk4yUpNykFTu3vukCchO6Q=";
-    };
-    "cuda11.8-3.9" = fetchurl {
-      url = "https://storage.googleapis.com/jax-releases/cuda11/jaxlib-${version}+cuda11.cudnn86-cp39-cp39-manylinux2014_x86_64.whl";
-      hash = "sha256-UmyugL0VjlXkiD7fuDPWgW8XUpr/QaP5ggp6swoZTzU=";
-    };
-    "cuda11.8-3.10" = fetchurl {
-      url = "https://storage.googleapis.com/jax-releases/cuda11/jaxlib-${version}+cuda11.cudnn86-cp310-cp310-manylinux2014_x86_64.whl";
-      hash = "sha256-luKULEiV1t/sO6eckDxddJTiOFa0dtJeDlrvp+WYmHk=";
-    };
-    "cuda11.8-3.11" = fetchurl {
-      url = "https://storage.googleapis.com/jax-releases/cuda11/jaxlib-${version}+cuda11.cudnn86-cp311-cp311-manylinux2014_x86_64.whl";
-      hash = "sha256-4+uJ8Ij6mFGEmjFEgi3fLnSLZs+v18BRoOt7mZuqydw=";
-    };
-    "cuda11.8-3.12" = fetchurl {
-      url = "https://storage.googleapis.com/jax-releases/cuda11/jaxlib-${version}+cuda11.cudnn86-cp312-cp312-manylinux2014_x86_64.whl";
-      hash = "sha256-bUDFb94Ar/65SzzR9RLIs/SL/HdjaPT1Su5whmjkS00=";
+      hash = "sha256-ixWMaIChy4Ammsn23/3cCoala0lFibuUxyUr3tjfFKU=";
     };
   };
 
@@ -213,7 +197,7 @@ buildPythonPackage {
   # for more info.
   postInstall = lib.optional cudaSupport ''
     mkdir -p $out/${python.sitePackages}/jaxlib/cuda/bin
-    ln -s ${lib.getExe' cudaPackagesGoogle.cuda_nvcc "ptxas"} $out/${python.sitePackages}/jaxlib/cuda/bin/ptxas
+    ln -s ${lib.getExe' cudaPackages.cuda_nvcc "ptxas"} $out/${python.sitePackages}/jaxlib/cuda/bin/ptxas
   '';
 
   inherit (jaxlib-build) pythonImportsCheck;
@@ -227,8 +211,13 @@ buildPythonPackage {
     platforms = [ "aarch64-darwin" "x86_64-linux" "x86_64-darwin" ];
     broken =
       !(cudaSupport -> lib.versionAtLeast cudaVersion "11.1")
-      || !(cudaSupport -> lib.versionAtLeast cudaPackagesGoogle.cudnn.version "8.2")
+      || !(cudaSupport -> lib.versionAtLeast cudaPackages.cudnn.version "8.2")
       || !(cudaSupport -> stdenv.isLinux)
-      || !(cudaSupport -> (gpuSrcs ? "cuda${cudaVersion}-${pythonVersion}"));
+      || !(cudaSupport -> (gpuSrcs ? "cuda${cudaVersion}-${pythonVersion}"))
+      # Fails at pythonImportsCheckPhase:
+      # ...-python-imports-check-hook.sh/nix-support/setup-hook: line 10: 28017 Illegal instruction: 4
+      # /nix/store/5qpssbvkzfh73xih07xgmpkj5r565975-python3-3.11.9/bin/python3.11 -c
+      # 'import os; import importlib; list(map(lambda mod: importlib.import_module(mod), os.environ["pythonImportsCheck"].split()))'
+      || (stdenv.isDarwin && stdenv.isx86_64);
   };
 }
diff --git a/pkgs/development/python-modules/jaxlib/default.nix b/pkgs/development/python-modules/jaxlib/default.nix
index cfca1f170ea4..8854d7927ea6 100644
--- a/pkgs/development/python-modules/jaxlib/default.nix
+++ b/pkgs/development/python-modules/jaxlib/default.nix
@@ -13,7 +13,6 @@
 , curl
 , cython
 , fetchFromGitHub
-, fetchpatch
 , git
 , IOKit
 , jsoncpp
@@ -45,22 +44,22 @@
 , config
   # CUDA flags:
 , cudaSupport ? config.cudaSupport
-, cudaPackagesGoogle
+, cudaPackages
 
   # MKL:
 , mklSupport ? true
 }@inputs:
 
 let
-  inherit (cudaPackagesGoogle) cudaFlags cudaVersion cudnn nccl;
+  inherit (cudaPackages) cudaFlags cudaVersion cudnn nccl;
 
   pname = "jaxlib";
-  version = "0.4.24";
+  version = "0.4.28";
 
   # It's necessary to consistently use backendStdenv when building with CUDA
   # support, otherwise we get libstdc++ errors downstream
   stdenv = throw "Use effectiveStdenv instead";
-  effectiveStdenv = if cudaSupport then cudaPackagesGoogle.backendStdenv else inputs.stdenv;
+  effectiveStdenv = if cudaSupport then cudaPackages.backendStdenv else inputs.stdenv;
 
   meta = with lib; {
     description = "JAX is Autograd and XLA, brought together for high-performance machine learning research.";
@@ -78,7 +77,7 @@ let
   # These are necessary at build time and run time.
   cuda_libs_joined = symlinkJoin {
     name = "cuda-joined";
-    paths = with cudaPackagesGoogle; [
+    paths = with cudaPackages; [
       cuda_cudart.lib # libcudart.so
       cuda_cudart.static # libcudart_static.a
       cuda_cupti.lib # libcupti.so
@@ -92,11 +91,11 @@ let
   # These are only necessary at build time.
   cuda_build_deps_joined = symlinkJoin {
     name = "cuda-build-deps-joined";
-    paths = with cudaPackagesGoogle; [
+    paths = with cudaPackages; [
       cuda_libs_joined
 
       # Binaries
-      cudaPackagesGoogle.cuda_nvcc.bin # nvcc
+      cudaPackages.cuda_nvcc.bin # nvcc
 
       # Headers
       cuda_cccl.dev # block_load.cuh
@@ -181,19 +180,10 @@ let
       owner = "openxla";
       repo = "xla";
       # Update this according to https://github.com/google/jax/blob/jaxlib-v${version}/third_party/xla/workspace.bzl.
-      rev = "12eee889e1f2ad41e27d7b0e970cb92d282d3ec5";
-      hash = "sha256-68kjjgwYjRlcT0TVJo9BN6s+WTkdu5UMJqQcfHpBT90=";
+      rev = "e8247c3ea1d4d7f31cf27def4c7ac6f2ce64ecd4";
+      hash = "sha256-ZhgMIVs3Z4dTrkRWDqaPC/i7yJz2dsYXrZbjzqvPX3E=";
     };
 
-    patches = [
-      # Resolves "could not convert ‘result’ from ‘SmallVector<[...],6>’ to
-      # ‘SmallVector<[...],4>’" compilation error. See https://github.com/google/jax/issues/19814#issuecomment-1945141259.
-      (fetchpatch {
-        url = "https://github.com/openxla/xla/commit/7a614cd346594fc7ea2fe75570c9c53a4a444f60.patch";
-        hash = "sha256-RtuQTH8wzNiJcOtISLhf+gMlH1gg8hekvxEB+4wX6BM=";
-      })
-    ];
-
     dontBuild = true;
 
     # This is necessary for patchShebangs to know the right path to use.
@@ -220,7 +210,7 @@ let
       repo = "jax";
       # google/jax contains tags for jax and jaxlib. Only use jaxlib tags!
       rev = "refs/tags/${pname}-v${version}";
-      hash = "sha256-hmx7eo3pephc6BQfoJ3U0QwWBWmhkAc+7S4QmW32qQs=";
+      hash = "sha256-qSHPwi3is6Ts7pz5s4KzQHBMbcjGp+vAOsejW3o36Ek=";
     };
 
     nativeBuildInputs = [
@@ -364,10 +354,10 @@ let
       ];
 
       sha256 = (if cudaSupport then {
-        x86_64-linux = "sha256-8JilAoTbqOjOOJa/Zc/n/quaEDcpdcLXCNb34mfB+OM=";
+        x86_64-linux = "sha256-VGNMf5/DgXbgsu1w5J1Pmrukw+7UO31BNU+crKVsX5k=";
       } else {
-        x86_64-linux = "sha256-iqS+I1FQLNWXNMsA20cJp7YkyGUeshee5b2QfRBNZtk=";
-        aarch64-linux = "sha256-qmJ0Fm/VGMTmko4PhKs1P8/GLEJmVxb8xg+ss/HsakY==";
+        x86_64-linux = "sha256-uOoAyMBLHPX6jzdN43b5wZV5eW0yI8sCDD7BSX2h4oQ=";
+        aarch64-linux = "sha256-+SnGKY9LIT1Qhu/x6Uh7sHRaAEjlc//qyKj1m4t16PA=";
       }).${effectiveStdenv.system} or (throw "jaxlib: unsupported system: ${effectiveStdenv.system}");
     };
 
@@ -414,7 +404,7 @@ buildPythonPackage {
   # for more info.
   postInstall = lib.optionalString cudaSupport ''
     mkdir -p $out/bin
-    ln -s ${cudaPackagesGoogle.cuda_nvcc.bin}/bin/ptxas $out/bin/ptxas
+    ln -s ${cudaPackages.cuda_nvcc.bin}/bin/ptxas $out/bin/ptxas
 
     find $out -type f \( -name '*.so' -or -name '*.so.*' \) | while read lib; do
       patchelf --add-rpath "${lib.makeLibraryPath [cuda_libs_joined cudnn nccl]}" "$lib"
@@ -423,7 +413,7 @@ buildPythonPackage {
 
   nativeBuildInputs = lib.optionals cudaSupport [ autoAddDriverRunpath ];
 
-  propagatedBuildInputs = [
+  dependencies = [
     absl-py
     curl
     double-conversion
diff --git a/pkgs/development/python-modules/jaxopt/default.nix b/pkgs/development/python-modules/jaxopt/default.nix
index af924cea5ab2..1216b15f83f2 100644
--- a/pkgs/development/python-modules/jaxopt/default.nix
+++ b/pkgs/development/python-modules/jaxopt/default.nix
@@ -6,6 +6,7 @@
 , fetchpatch
 , pytest-xdist
 , pytestCheckHook
+, setuptools
 , absl-py
 , cvxpy
 , jax
@@ -20,7 +21,7 @@
 buildPythonPackage rec {
   pname = "jaxopt";
   version = "0.8.3";
-  format = "setuptools";
+  pyproject = true;
 
   disabled = pythonOlder "3.8";
 
@@ -41,7 +42,11 @@ buildPythonPackage rec {
     })
   ];
 
-  propagatedBuildInputs = [
+  build-system = [
+    setuptools
+  ];
+
+  dependencies = [
     absl-py
     jax
     jaxlib
@@ -66,11 +71,20 @@ buildPythonPackage rec {
     "jaxopt.tree_util"
   ];
 
-  disabledTests = lib.optionals (stdenv.isLinux && stdenv.isAarch64) [
+  disabledTests = [
+    # https://github.com/google/jaxopt/issues/592
+    "test_solve_sparse"
+  ] ++ lib.optionals (stdenv.isLinux && stdenv.isAarch64) [
     # https://github.com/google/jaxopt/issues/577
     "test_binary_logit_log_likelihood"
     "test_solve_sparse"
     "test_logreg_with_intercept_manual_loop3"
+
+    # https://github.com/google/jaxopt/issues/593
+    # Makes the test suite crash
+    "test_dtype_consistency"
+    # AssertionError: Array(0.01411963, dtype=float32) not less than or equal to 0.01
+    "test_multiclass_logreg6"
   ];
 
   meta = with lib; {
diff --git a/pkgs/development/python-modules/jenkins-job-builder/default.nix b/pkgs/development/python-modules/jenkins-job-builder/default.nix
index 852b529e8bcc..2ed276bfaef3 100644
--- a/pkgs/development/python-modules/jenkins-job-builder/default.nix
+++ b/pkgs/development/python-modules/jenkins-job-builder/default.nix
@@ -9,12 +9,12 @@
 
 buildPythonPackage rec {
   pname = "jenkins-job-builder";
-  version = "6.2.0";
+  version = "6.3.0";
   format = "setuptools";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-kV2g1qbS5L7bEqfPijj60eK+pbTc8SAs/tctpNv0PFs=";
+    hash = "sha256-RD9VQFlwLJ3TiReKty+q056CjsOnSD2J2bpASmqHIEM=";
   };
 
   postPatch = ''
diff --git a/pkgs/development/python-modules/jinja2/default.nix b/pkgs/development/python-modules/jinja2/default.nix
index 1c260e37c7b0..f36f67f1d3d2 100644
--- a/pkgs/development/python-modules/jinja2/default.nix
+++ b/pkgs/development/python-modules/jinja2/default.nix
@@ -4,31 +4,33 @@
 , buildPythonPackage
 , pythonOlder
 , fetchPypi
+, flit-core
 , babel
 , markupsafe
 , pytestCheckHook
 , sphinxHook
 , pallets-sphinx-themes
-, setuptools
 , sphinxcontrib-log-cabinet
 , sphinx-issues
+
+# Reverse dependency
+, sage
 }:
 
 buildPythonPackage rec {
   pname = "jinja2";
-  version = "3.1.3";
+  version = "3.1.4";
   pyproject = true;
 
   disabled = pythonOlder "3.7";
 
   src = fetchPypi {
-    pname = "Jinja2";
-    inherit version;
-    hash = "sha256-rIvWVE1Lssl5K/OhWegLuo/afwfoG8Ou1WVDLVklupA=";
+    inherit pname version;
+    hash = "sha256-Sjruesu+cwOu3o6WSNE7i/iKQpKCqmEiqZPwrIAMs2k=";
   };
 
   nativeBuildInputs = [
-    setuptools
+    flit-core
   ];
 
   propagatedBuildInputs = [
@@ -76,6 +78,8 @@ buildPythonPackage rec {
     inherit meta;
   };
 
+  passthru.tests = { inherit sage; };
+
   meta = with lib; {
     changelog = "https://github.com/pallets/jinja/blob/${version}/CHANGES.rst";
     description = "Very fast and expressive template engine";
diff --git a/pkgs/development/python-modules/jiwer/default.nix b/pkgs/development/python-modules/jiwer/default.nix
index 2c1566350246..66ab13cdd8fc 100644
--- a/pkgs/development/python-modules/jiwer/default.nix
+++ b/pkgs/development/python-modules/jiwer/default.nix
@@ -10,24 +10,24 @@
 
 buildPythonPackage rec {
   pname = "jiwer";
-  version = "3.0.3";
-  format = "pyproject";
+  version = "3.04";
+  pyproject = true;
 
   disabled = pythonOlder "3.7";
 
   src = fetchFromGitHub {
     owner = "jitsi";
-    repo = pname;
+    repo = "jiwer";
     rev = "refs/tags/v${version}";
-    hash = "sha256-32bpSBYl6yxb4lJhHnfnYhtye7DaBZT0VAe9rDcleTc=";
+    hash = "sha256-2LzAOgABK00Pz3v5WWYUAcZOYcTbRKfgw7U5DOohB/Q=";
   };
 
-  nativeBuildInputs = [
+  build-system = [
     poetry-core
     pythonRelaxDepsHook
   ];
 
-  propagatedBuildInputs = [
+  dependencies = [
     rapidfuzz
     click
   ];
diff --git a/pkgs/development/python-modules/joblib/default.nix b/pkgs/development/python-modules/joblib/default.nix
index 298a2ce83adf..e592c8089f72 100644
--- a/pkgs/development/python-modules/joblib/default.nix
+++ b/pkgs/development/python-modules/joblib/default.nix
@@ -2,7 +2,6 @@
 , buildPythonPackage
 , pythonOlder
 , fetchPypi
-, fetchpatch
 , pythonAtLeast
 , stdenv
 
@@ -22,24 +21,16 @@
 
 buildPythonPackage rec {
   pname = "joblib";
-  version = "1.3.2";
+  version = "1.4.0";
   format = "pyproject";
 
   disabled = pythonOlder "3.7";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-kvhl5iHhd4TnlVCAttBCSJ47jilJScxExurDBPWXcrE=";
+    hash = "sha256-HrDcCRkZzThEkN6JDLXf1ThBCm1LO1Tu8J+4xQtAmxw=";
   };
 
-  patches = [
-    (fetchpatch {
-      name = "suppress-deprecation-warnings-with-python312.patch";
-      url = "https://github.com/joblib/joblib/commit/05caf0772d605799e5d2337018fd32ac829b37aa.patch";
-      hash = "sha256-bfqxCLFkCnuWMIkIbcjh+nCTv38A8jxvyCHeJPxoZwg=";
-    })
-  ];
-
   nativeBuildInputs = [
     setuptools
   ];
diff --git a/pkgs/development/python-modules/jpylyzer/default.nix b/pkgs/development/python-modules/jpylyzer/default.nix
index 64b616382518..0fc6f7cc125e 100644
--- a/pkgs/development/python-modules/jpylyzer/default.nix
+++ b/pkgs/development/python-modules/jpylyzer/default.nix
@@ -17,20 +17,20 @@ let
   testFiles = fetchFromGitHub {
     owner = "openpreserve";
     repo = "jpylyzer-test-files";
-    rev = "146cb0029b5ea9d8ef22dc6683cec8afae1cc63a";
-    hash = "sha256-uKUau7mYXqGs4dSnXGPnPsH9k81ZCK0aPj5F9HWBMZ8=";
+    rev = "0290e98bae9c5480c995954d3f14b4cf0a0395ff";
+    hash = "sha256-dr3hC6dGd3HNSE4nRj1xrfFSW9cepQ1mdVH8S3YQdtw=";
   };
 
 in buildPythonPackage rec {
   pname = "jpylyzer";
-  version = "2.2.0";
+  version = "2.2.1";
   format = "setuptools";
 
   src = fetchFromGitHub {
     owner = "openpreserve";
     repo = pname;
     rev = version;
-    hash = "sha256-SK6Z+JkFBD9V99reRZf+jM8Z2SiDNSG72gusp2FPfmI=";
+    hash = "sha256-P42qAks8suI/Xknwd8WAkymbGE7RApRa/a11J/V4LA0=";
   };
 
   propagatedBuildInputs = [ six ];
@@ -40,14 +40,9 @@ in buildPythonPackage rec {
   # don't depend on testFiles unless doFullCheck as it may not be extractable
   # on some filesystems due to weird filenames
   preCheck = lib.optionalString doFullCheck ''
-    sed -i '/^testFilesDir = /ctestFilesDir = "${testFiles}"' tests/unit/test_testfiles.py
+    sed -i '/^testFilesDir = /ctestFilesDir = "${testFiles}/files"' tests/unit/test_testfiles.py
   '';
 
-  disabledTests = [
-    # missing file, but newer test files breaks other tests
-    "test_groundtruth_complete"
-  ];
-
   disabledTestPaths = lib.optionals (!doFullCheck) [
     "tests/unit/test_testfiles.py"
   ];
diff --git a/pkgs/development/python-modules/json-logging/default.nix b/pkgs/development/python-modules/json-logging/default.nix
index 3d22f4e878ba..f904d6d44ac9 100644
--- a/pkgs/development/python-modules/json-logging/default.nix
+++ b/pkgs/development/python-modules/json-logging/default.nix
@@ -6,17 +6,18 @@
 , httpx
 , pytestCheckHook
 , pythonOlder
+, pythonAtLeast
 , quart
 , requests
 , sanic
+, setuptools
 , uvicorn
-, wheel
 }:
 
 buildPythonPackage rec {
   pname = "json-logging";
   version = "1.5.0-rc0";
-  format = "setuptools";
+  pyproject = true;
 
   disabled = pythonOlder "3.7";
 
@@ -27,16 +28,28 @@ buildPythonPackage rec {
     hash = "sha256-WOAEY1pONH+Gx1b8zHZDMNgJJSn7jvMO60LYTA8z/dE=";
   };
 
-  nativeCheckInputs = [
+  # The logging module introduced the `taskName` field in Python 3.12, which the tests don't expect
+  postPatch = lib.optionalString (pythonAtLeast "3.12") ''
+    substituteInPlace tests/helpers/constants.py \
+        --replace-fail '"written_at",' '"taskName", "written_at",'
+  '';
+
+  build-system = [
+    setuptools
+  ];
+
+  dependencies = [
     fastapi
     flask
     httpx
-    pytestCheckHook
     quart
     requests
     sanic
     uvicorn
-    wheel
+  ];
+
+  nativeCheckInputs = [
+    pytestCheckHook
   ];
 
   pythonImportsCheck = [
diff --git a/pkgs/development/python-modules/json-schema-for-humans/default.nix b/pkgs/development/python-modules/json-schema-for-humans/default.nix
index f758ae924496..6b976adc6b1e 100644
--- a/pkgs/development/python-modules/json-schema-for-humans/default.nix
+++ b/pkgs/development/python-modules/json-schema-for-humans/default.nix
@@ -1,25 +1,26 @@
-{ lib
-, beautifulsoup4
-, buildPythonPackage
-, click
-, dataclasses-json
-, fetchFromGitHub
-, htmlmin
-, jinja2
-, markdown2
-, poetry-core
-, pygments
-, pytestCheckHook
-, pythonOlder
-, pythonRelaxDepsHook
-, pytz
-, pyyaml
-, requests
+{
+  lib,
+  beautifulsoup4,
+  buildPythonPackage,
+  click,
+  dataclasses-json,
+  fetchFromGitHub,
+  htmlmin,
+  jinja2,
+  markdown2,
+  poetry-core,
+  pygments,
+  pytestCheckHook,
+  pythonOlder,
+  pythonRelaxDepsHook,
+  pytz,
+  pyyaml,
+  requests,
 }:
 
 buildPythonPackage rec {
   pname = "json-schema-for-humans";
-  version = "0.47";
+  version = "1.0.2";
   pyproject = true;
 
   disabled = pythonOlder "3.7";
@@ -28,19 +29,16 @@ buildPythonPackage rec {
     owner = "coveooss";
     repo = "json-schema-for-humans";
     rev = "refs/tags/v${version}";
-    hash = "sha256-yioYsCp+q5YWdIWDlNZkpaLqo++n+dV5jyEeIhUDHr4=";
+    hash = "sha256-SSMUHC4IsMIIhmRrG0ZWNO2MNKKvoBSybmEEibAY5q0=";
   };
 
-  pythonRelaxDeps = [
-    "dataclasses-json"
-  ];
+  pythonRelaxDeps = [ "dataclasses-json" ];
 
-  nativeBuildInputs = [
-    poetry-core
-    pythonRelaxDepsHook
-  ];
+  build-system = [ poetry-core ];
+
+  nativeBuildInputs = [ pythonRelaxDepsHook ];
 
-  propagatedBuildInputs = [
+  dependencies = [
     click
     dataclasses-json
     htmlmin
@@ -64,16 +62,14 @@ buildPythonPackage rec {
     "TestMdGenerate"
   ];
 
-  pythonImportsCheck = [
-    "json_schema_for_humans"
-  ];
+  pythonImportsCheck = [ "json_schema_for_humans" ];
 
   meta = with lib; {
     description = "Quickly generate HTML documentation from a JSON schema";
-    mainProgram = "generate-schema-doc";
     homepage = "https://github.com/coveooss/json-schema-for-humans";
     changelog = "https://github.com/coveooss/json-schema-for-humans/releases/tag/v${version}";
     license = licenses.asl20;
     maintainers = with maintainers; [ astro ];
+    mainProgram = "generate-schema-doc";
   };
 }
diff --git a/pkgs/development/python-modules/json-stream-rs-tokenizer/default.nix b/pkgs/development/python-modules/json-stream-rs-tokenizer/default.nix
index 9609d68c6961..ce2a48bae9c8 100644
--- a/pkgs/development/python-modules/json-stream-rs-tokenizer/default.nix
+++ b/pkgs/development/python-modules/json-stream-rs-tokenizer/default.nix
@@ -2,7 +2,7 @@
 , stdenv
 , buildPythonPackage
 , cargo
-, darwin
+, libiconv
 , fetchFromGitHub
 , json-stream
 , json-stream-rs-tokenizer
@@ -45,7 +45,7 @@ buildPythonPackage rec {
   ];
 
   buildInputs = lib.optionals stdenv.isDarwin [
-    darwin.libiconv
+    libiconv
   ];
 
   # Tests depend on json-stream, which depends on this package.
diff --git a/pkgs/development/python-modules/jsonpickle/default.nix b/pkgs/development/python-modules/jsonpickle/default.nix
index 4e3fd813144b..fbe0efd86bb3 100644
--- a/pkgs/development/python-modules/jsonpickle/default.nix
+++ b/pkgs/development/python-modules/jsonpickle/default.nix
@@ -13,12 +13,12 @@
 
 buildPythonPackage rec {
   pname = "jsonpickle";
-  version = "3.0.3";
+  version = "3.0.4";
   pyproject = true;
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-VpH0RJUyeFirOpW5xECnm0HjVCG+Gm4JpHtsm5Qh/QY=";
+    hash = "sha256-obFMjWIhzY85TyqX5zXqHX7ckn+9E1sm8vhwBlfIxis=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/python-modules/jupyter-collaboration/default.nix b/pkgs/development/python-modules/jupyter-collaboration/default.nix
index 1c01c6d4d1d6..c4ba4a6f051b 100644
--- a/pkgs/development/python-modules/jupyter-collaboration/default.nix
+++ b/pkgs/development/python-modules/jupyter-collaboration/default.nix
@@ -19,7 +19,7 @@
 
 buildPythonPackage rec {
   pname = "jupyter-collaboration";
-  version = "2.0.11";
+  version = "2.1.1";
   pyproject = true;
 
   disabled = pythonOlder "3.8";
@@ -27,7 +27,7 @@ buildPythonPackage rec {
   src = fetchPypi {
     pname = "jupyter_collaboration";
     inherit version;
-    hash = "sha256-K7HN5yzadY5Sb6Sfn/K/QCzu14AcDEGHq+TSHkLhgTY=";
+    hash = "sha256-T1DCXG2BEmwW3q+S0r14o5svy4ZpDc5pa0AGt0DXHB8=";
   };
 
   postPatch = ''
@@ -71,6 +71,8 @@ buildPythonPackage rec {
   disabledTests = [
     # ExceptionGroup: unhandled errors in a TaskGroup (1 sub-exception)
     "test_dirty"
+    # causes a hang
+    "test_rooms"
   ];
 
   __darwinAllowLocalNetworking = true;
diff --git a/pkgs/development/python-modules/jupyter-core/default.nix b/pkgs/development/python-modules/jupyter-core/default.nix
index 799e098920a8..c1faa97b1ef8 100644
--- a/pkgs/development/python-modules/jupyter-core/default.nix
+++ b/pkgs/development/python-modules/jupyter-core/default.nix
@@ -7,6 +7,9 @@
 , traitlets
 , pip
 , pytestCheckHook
+
+# Reverse dependency
+, sage
 }:
 
 buildPythonPackage rec {
@@ -61,6 +64,8 @@ buildPythonPackage rec {
 
   pythonImportsCheck = [ "jupyter_core" ];
 
+  passthru.tests = { inherit sage; };
+
   meta = with lib; {
     description = "Base package on which Jupyter projects rely";
     homepage = "https://jupyter.org/";
diff --git a/pkgs/development/python-modules/jupytext/default.nix b/pkgs/development/python-modules/jupytext/default.nix
index 699cb58e6c38..6935fd46ce7e 100644
--- a/pkgs/development/python-modules/jupytext/default.nix
+++ b/pkgs/development/python-modules/jupytext/default.nix
@@ -14,33 +14,34 @@
 , pytestCheckHook
 , pythonOlder
 , pyyaml
-, toml
+, tomli
 }:
 
 buildPythonPackage rec {
   pname = "jupytext";
-  version = "1.16.1";
+  version = "1.16.2";
   pyproject = true;
 
   disabled = pythonOlder "3.8";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-aMe2hoXocOgOYP2oKG+9Ymnpx03B30MW32/kbqvJTJk=";
+    hash = "sha256-hifdm+y769ecxKTtRyfYnXjmBrS0ZOq3I1ezsCkCOhQ=";
   };
 
-  nativeBuildInputs = [
+  build-system = [
     hatch-jupyter-builder
     hatchling
   ];
 
-  propagatedBuildInputs = [
+  dependencies = [
     markdown-it-py
     mdit-py-plugins
     nbformat
     packaging
     pyyaml
-    toml
+  ] ++ lib.optionals (pythonOlder "3.11") [
+    tomli
   ];
 
   nativeCheckInputs = [
diff --git a/pkgs/development/python-modules/justext/default.nix b/pkgs/development/python-modules/justext/default.nix
index 82f0aa804565..2446dccf0823 100644
--- a/pkgs/development/python-modules/justext/default.nix
+++ b/pkgs/development/python-modules/justext/default.nix
@@ -7,14 +7,14 @@
 
 buildPythonPackage rec {
   pname = "justext";
-  version = "3.0.0";
+  version = "3.0.1";
   format = "setuptools";
 
   src = fetchFromGitHub {
     owner = "miso-belica";
     repo = "jusText";
     rev = "refs/tags/v${version}";
-    hash = "sha256-WNxDoM5666tEHS9pMl5dOoig4S7dSYaCLZq71tehWqw=";
+    hash = "sha256-9i7hzCK/ijh8xw9l2ZbVhVj5IBf0WD/49/R1tSWgqrQ=";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/kasa-crypt/default.nix b/pkgs/development/python-modules/kasa-crypt/default.nix
index 2247b2ece99d..44d86fc29a5a 100644
--- a/pkgs/development/python-modules/kasa-crypt/default.nix
+++ b/pkgs/development/python-modules/kasa-crypt/default.nix
@@ -1,17 +1,18 @@
-{ lib
-, buildPythonPackage
-, fetchFromGitHub
-, cython
-, poetry-core
-, pytestCheckHook
-, setuptools
-, pythonOlder
+{
+  lib,
+  buildPythonPackage,
+  fetchFromGitHub,
+  cython,
+  poetry-core,
+  pytestCheckHook,
+  setuptools,
+  pythonOlder,
 }:
 
 buildPythonPackage rec {
   pname = "kasa-crypt";
-  version = "0.4.1";
-  format = "pyproject";
+  version = "0.4.2";
+  pyproject = true;
 
   disabled = pythonOlder "3.7";
 
@@ -19,27 +20,23 @@ buildPythonPackage rec {
     owner = "bdraco";
     repo = "kasa-crypt";
     rev = "refs/tags/v${version}";
-    hash = "sha256-ZAynSL6tIQoe9veYGusel9GQEffeLQ8dBA9HfA6TMzI=";
+    hash = "sha256-7PLOuWxA5ziOuysSu+nLWNmNA3/sbuUCuZcMRBflf6U=";
   };
 
   postPatch = ''
     substituteInPlace pyproject.toml \
-      --replace " --cov=kasa_crypt --cov-report=term-missing:skip-covered" ""
+      --replace-fail " --cov=kasa_crypt --cov-report=term-missing:skip-covered" ""
   '';
 
-  nativeBuildInputs = [
+  build-system = [
     cython
     poetry-core
     setuptools
   ];
 
-  nativeCheckInputs = [
-    pytestCheckHook
-  ];
+  nativeCheckInputs = [ pytestCheckHook ];
 
-  pythonImportsCheck = [
-    "kasa_crypt"
-  ];
+  pythonImportsCheck = [ "kasa_crypt" ];
 
   meta = with lib; {
     description = "Fast kasa crypt";
diff --git a/pkgs/development/python-modules/kazoo/default.nix b/pkgs/development/python-modules/kazoo/default.nix
index eedbd7da41f1..73f041f49f23 100644
--- a/pkgs/development/python-modules/kazoo/default.nix
+++ b/pkgs/development/python-modules/kazoo/default.nix
@@ -4,7 +4,7 @@
 , six
 , eventlet
 , gevent
-, nose
+, pynose
 , mock
 , coverage
 , pkgs
@@ -21,7 +21,7 @@ buildPythonPackage rec {
   };
 
   propagatedBuildInputs = [ six ];
-  buildInputs = [ eventlet gevent nose mock coverage pkgs.openjdk8 ];
+  buildInputs = [ eventlet gevent pynose mock coverage pkgs.openjdk8 ];
 
   # not really needed
   preBuild = ''
diff --git a/pkgs/development/python-modules/keras/default.nix b/pkgs/development/python-modules/keras/default.nix
index c74579296223..156f8f5c2cd5 100644
--- a/pkgs/development/python-modules/keras/default.nix
+++ b/pkgs/development/python-modules/keras/default.nix
@@ -1,17 +1,17 @@
 { lib, buildPythonPackage, fetchPypi
 , pytest, pytest-cov, pytest-xdist
-, six, numpy, scipy, pyyaml, h5py
+, six, numpy, scipy, pyyaml, h5py, optree
 , keras-applications, keras-preprocessing
 }:
 
 buildPythonPackage rec {
   pname = "keras";
-  version = "3.0.5";
+  version = "3.2.1";
   format = "wheel";
 
   src = fetchPypi {
     inherit format pname version;
-    hash = "sha256-SgIvLpfqWj2xLtgJ/8t84e+NNP6urFIxXshVPe0tz5c=";
+    hash = "sha256-C+HomwQeaXvlYthCLsuVjuVIGs/AiZEyAJJsVh0ligM=";
     python = "py3";
     dist = "py3";
   };
diff --git a/pkgs/development/python-modules/keyrings-alt/default.nix b/pkgs/development/python-modules/keyrings-alt/default.nix
index f463b18950dd..2ad45c6e717f 100644
--- a/pkgs/development/python-modules/keyrings-alt/default.nix
+++ b/pkgs/development/python-modules/keyrings-alt/default.nix
@@ -2,6 +2,7 @@
 , buildPythonPackage
 , fetchPypi
 , jaraco-classes
+, jaraco-context
 , keyring
 , pytestCheckHook
 , pythonOlder
@@ -10,7 +11,7 @@
 
 buildPythonPackage rec {
   pname = "keyrings-alt";
-  version = "5.0.0";
+  version = "5.0.1";
   format = "pyproject";
 
   disabled = pythonOlder "3.8";
@@ -18,7 +19,7 @@ buildPythonPackage rec {
   src = fetchPypi {
     pname = "keyrings.alt";
     inherit version;
-    hash = "sha256-nURstHu86pD/ouzD6AA6z0FXP8IBv0S0vxO9DhFISCg=";
+    hash = "sha256-zTcqHsRGobxakGJKUsiOg7kzAhjjkEemyaSK430RZ0U=";
   };
 
   nativeBuildInputs = [
@@ -27,6 +28,7 @@ buildPythonPackage rec {
 
   propagatedBuildInputs = [
     jaraco-classes
+    jaraco-context
   ];
 
   nativeCheckInputs = [
diff --git a/pkgs/development/python-modules/kombu/default.nix b/pkgs/development/python-modules/kombu/default.nix
index a6867075d9b5..c4aad1fab20f 100644
--- a/pkgs/development/python-modules/kombu/default.nix
+++ b/pkgs/development/python-modules/kombu/default.nix
@@ -27,14 +27,14 @@
 
 buildPythonPackage rec {
   pname = "kombu";
-  version = "5.3.5";
+  version = "5.3.7";
   format = "setuptools";
 
   disabled = pythonOlder "3.8";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-MORw8aa0nHDcb20Tw+TMTheKpsRpzra81VZFOF/IS5M=";
+    hash = "sha256-ARxM2aNVwUod6NNdJXMUodJFbVK3FAOIVhrKw88al78=";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/kornia-rs/default.nix b/pkgs/development/python-modules/kornia-rs/default.nix
index 57aaa325d2b6..f493d74a6b8d 100644
--- a/pkgs/development/python-modules/kornia-rs/default.nix
+++ b/pkgs/development/python-modules/kornia-rs/default.nix
@@ -1,10 +1,12 @@
 { lib
+, stdenv
 , fetchFromGitHub
 , buildPythonPackage
 , rustPlatform
 , cmake
 , nasm
 , substituteAll
+, libiconv
 }:
 
 buildPythonPackage rec {
@@ -26,6 +28,8 @@ buildPythonPackage rec {
     nasm # Only for dependencies.
   ];
 
+  buildInputs = lib.optional stdenv.hostPlatform.isDarwin libiconv;
+
   cargoRoot = "py-kornia";
   cargoDeps = rustPlatform.importCargoLock {
     lockFile = ./Cargo.lock;
diff --git a/pkgs/development/python-modules/lacuscore/default.nix b/pkgs/development/python-modules/lacuscore/default.nix
index 950c215e9005..d03376184bba 100644
--- a/pkgs/development/python-modules/lacuscore/default.nix
+++ b/pkgs/development/python-modules/lacuscore/default.nix
@@ -16,7 +16,7 @@
 
 buildPythonPackage rec {
   pname = "lacuscore";
-  version = "1.9.2";
+  version = "1.9.3";
   pyproject = true;
 
   disabled = pythonOlder "3.8";
@@ -25,7 +25,7 @@ buildPythonPackage rec {
     owner = "ail-project";
     repo = "LacusCore";
     rev = "refs/tags/v${version}";
-    hash = "sha256-vfhRbbutNuZW/oI/eCJUXydCn47ThOlWRz2NJJrE3Tw=";
+    hash = "sha256-jfbDg74vHwOFvbOETPSaApFCpzw9Khu8PgGpsoAwSGc=";
   };
 
   pythonRelaxDeps = [
diff --git a/pkgs/development/python-modules/langchain-community/default.nix b/pkgs/development/python-modules/langchain-community/default.nix
index af29f6068b04..e8e028570abd 100644
--- a/pkgs/development/python-modules/langchain-community/default.nix
+++ b/pkgs/development/python-modules/langchain-community/default.nix
@@ -18,7 +18,7 @@
 
 buildPythonPackage rec {
   pname = "langchain-community";
-  version = "0.0.36";
+  version = "0.0.38";
   pyproject = true;
 
   disabled = pythonOlder "3.8";
@@ -26,7 +26,7 @@ buildPythonPackage rec {
   src = fetchPypi {
     pname = "langchain_community";
     inherit version;
-    hash = "sha256-l76dAM8RnJYeA+0ibgTmcPUbXUL1sF/8NRhZj6bSDHQ=";
+    hash = "sha256-En/Et1vGe2L+gnxmwC5xWnMP74/mm9ICPUZrqwa1gQ0=";
   };
 
   build-system = [ poetry-core ];
diff --git a/pkgs/development/python-modules/langchain-core/default.nix b/pkgs/development/python-modules/langchain-core/default.nix
index 3c0b42156449..8cfa8cafd9ee 100644
--- a/pkgs/development/python-modules/langchain-core/default.nix
+++ b/pkgs/development/python-modules/langchain-core/default.nix
@@ -17,7 +17,7 @@
 
 buildPythonPackage rec {
   pname = "langchain-core";
-  version = "0.1.48";
+  version = "0.1.52";
   pyproject = true;
 
   disabled = pythonOlder "3.8";
@@ -25,7 +25,7 @@ buildPythonPackage rec {
   src = fetchPypi {
     pname = "langchain_core";
     inherit version;
-    hash = "sha256-8KmwqPIvIZ72/YTisdkqgBToRRTAobVTNw/UApaBPBY=";
+    hash = "sha256-CEw/xFL1ppZsKKs+xdvIuNJvw/YzeAc5KPTinZC2OT8=";
   };
 
   pythonRelaxDeps = [
diff --git a/pkgs/development/python-modules/langchain-text-splitters/default.nix b/pkgs/development/python-modules/langchain-text-splitters/default.nix
index 81cb942e5155..3f8fa837af7a 100644
--- a/pkgs/development/python-modules/langchain-text-splitters/default.nix
+++ b/pkgs/development/python-modules/langchain-text-splitters/default.nix
@@ -1,15 +1,16 @@
-{ lib
-, buildPythonPackage
-, fetchPypi
-, poetry-core
-, langchain-core
-, lxml
-, pythonOlder
+{
+  lib,
+  buildPythonPackage,
+  fetchPypi,
+  poetry-core,
+  langchain-core,
+  lxml,
+  pythonOlder,
 }:
 
 buildPythonPackage rec {
   pname = "langchain-text-splitters";
-  version = "0.0.1";
+  version = "0.0.2";
   pyproject = true;
 
   disabled = pythonOlder "3.9";
@@ -17,14 +18,12 @@ buildPythonPackage rec {
   src = fetchPypi {
     pname = "langchain_text_splitters";
     inherit version;
-    hash = "sha256-rEWfqYeZ9RF61UJakzCyGWEyHjC8GaKi+fdh3a3WKqE=";
+    hash = "sha256-rIkn3AugjrpwL2lhye19986tjeGan3EBqyteo0IBs8E=";
   };
 
-  nativeBuildInputs = [
-    poetry-core
-  ];
+  build-system = [ poetry-core ];
 
-  propagatedBuildInputs = [
+  dependencies = [
     langchain-core
     lxml
   ];
@@ -32,9 +31,7 @@ buildPythonPackage rec {
   # PyPI source does not have tests
   doCheck = false;
 
-  pythonImportsCheck = [
-    "langchain_text_splitters"
-  ];
+  pythonImportsCheck = [ "langchain_text_splitters" ];
 
   meta = with lib; {
     description = "Build context-aware reasoning applications";
diff --git a/pkgs/development/python-modules/langchain/default.nix b/pkgs/development/python-modules/langchain/default.nix
index ddcb01d7c450..804f63a88e9f 100644
--- a/pkgs/development/python-modules/langchain/default.nix
+++ b/pkgs/development/python-modules/langchain/default.nix
@@ -51,7 +51,7 @@
 
 buildPythonPackage rec {
   pname = "langchain";
-  version = "0.1.16";
+  version = "0.1.52";
   pyproject = true;
 
   disabled = pythonOlder "3.8";
@@ -59,8 +59,8 @@ buildPythonPackage rec {
   src = fetchFromGitHub {
     owner = "langchain-ai";
     repo = "langchain";
-    rev = "refs/tags/v${version}";
-    hash = "sha256-Xv8juma/1qGC2Rb659dJBvRzRh5W+zU+O8W6peElFGc=";
+    rev = "refs/tags/langchain-core==${version}";
+    hash = "sha256-H8rtysRIwyuJEUFI93vid3MsqReyRCER88xztsuYpOc=";
   };
 
   sourceRoot = "${src.name}/libs/langchain";
@@ -160,6 +160,8 @@ buildPythonPackage rec {
     "test_generic_fake_chat_model"
     # Test is outdated
     "test_serializable_mapping"
+    "test_person"
+    "test_aliases_hidden"
   ];
 
   pythonImportsCheck = [ "langchain" ];
diff --git a/pkgs/development/python-modules/langsmith/default.nix b/pkgs/development/python-modules/langsmith/default.nix
index 9bf32dc7a158..4e7bc1d107f3 100644
--- a/pkgs/development/python-modules/langsmith/default.nix
+++ b/pkgs/development/python-modules/langsmith/default.nix
@@ -22,7 +22,7 @@
 
 buildPythonPackage rec {
   pname = "langsmith";
-  version = "0.1.52";
+  version = "0.1.59";
   pyproject = true;
 
   disabled = pythonOlder "3.8";
@@ -31,7 +31,7 @@ buildPythonPackage rec {
     owner = "langchain-ai";
     repo = "langsmith-sdk";
     rev = "refs/tags/v${version}";
-    hash = "sha256-kTl+H1odRYDZc1KEuopZV9PvOQBd4QioWMhb3pD6xKE=";
+    hash = "sha256-k9WsJUiJPCahwUHzsOblBCm58z2dHQZGk3U6GMm7SpQ=";
   };
 
   sourceRoot = "${src.name}/python";
diff --git a/pkgs/development/python-modules/language-data/default.nix b/pkgs/development/python-modules/language-data/default.nix
index ff04b036dc05..da1a35456152 100644
--- a/pkgs/development/python-modules/language-data/default.nix
+++ b/pkgs/development/python-modules/language-data/default.nix
@@ -1,45 +1,39 @@
-{ lib
-, buildPythonPackage
-, fetchFromGitHub
-, marisa-trie
-, poetry-core
-, pythonOlder
-, setuptools
+{
+  lib,
+  buildPythonPackage,
+  fetchFromGitHub,
+  marisa-trie,
+  pythonOlder,
+  setuptools-scm,
 }:
 
 buildPythonPackage rec {
   pname = "language-data";
-  version = "1.0.1";
-  format = "pyproject";
+  version = "1.2.0";
+  pyproject = true;
 
-  disabled = pythonOlder "3.6";
+  disabled = pythonOlder "3.8";
 
   src = fetchFromGitHub {
-    owner = "rspeer";
+    owner = "georgkrause";
     repo = "language_data";
-    rev = "v${version}";
-    sha256 = "51TUVHXPHG6ofbnxI6+o5lrtr+QCIpGKu+OjDK3l7Mc=";
+    rev = "refs/tags/v${version}";
+    hash = "sha256-TVWyDEDI6NBioc8DqhXzpLS22EFKsZ/nan2vfgFsieQ=";
   };
 
-  nativeBuildInputs = [
-    poetry-core
-    setuptools
-  ];
+  build-system = [ setuptools-scm ];
 
-  propagatedBuildInputs = [
-    marisa-trie
-  ];
+  dependencies = [ marisa-trie ];
 
-  # Module has no tests
-  doCheck = false;
+  pythonImportsCheck = [ "language_data" ];
 
-  pythonImportsCheck = [
-    "language_data"
-  ];
+  # No unittests
+  doCheck = false;
 
   meta = with lib; {
     description = "Supplement module for langcodes";
-    homepage = "https://github.com/rspeer/language_data";
+    homepage = "https://github.com/georgkrause/language_data";
+    changelog = "https://github.com/georgkrause/language_data/releases/tag/v${version}";
     license = licenses.mit;
     maintainers = with maintainers; [ fab ];
   };
diff --git a/pkgs/development/python-modules/latex2mathml/default.nix b/pkgs/development/python-modules/latex2mathml/default.nix
index 99d9dcc5fb74..0cf0276a73a0 100644
--- a/pkgs/development/python-modules/latex2mathml/default.nix
+++ b/pkgs/development/python-modules/latex2mathml/default.nix
@@ -11,6 +11,7 @@
 buildPythonPackage rec {
   pname = "latex2mathml";
   version = "3.77.0";
+  pyproject = true;
 
   disabled = pythonOlder "3.8";
 
@@ -21,9 +22,7 @@ buildPythonPackage rec {
     hash = "sha256-DLdSFMsNA0gD6Iw0kn+0IrbvyI0VEGOpz0ZYD48nRkY=";
   };
 
-  format = "pyproject";
-
-  nativeBuildInputs = [
+  build-system = [
     poetry-core
   ];
 
@@ -45,6 +44,7 @@ buildPythonPackage rec {
     homepage = "https://github.com/roniemartinez/latex2mathml";
     changelog = "https://github.com/roniemartinez/latex2mathml/releases/tag/${version}";
     license = licenses.mit;
+    mainProgram = "latex2mathml";
     maintainers = with maintainers; [ sfrijters ];
   };
 }
diff --git a/pkgs/development/python-modules/ldappool/default.nix b/pkgs/development/python-modules/ldappool/default.nix
index 2cb2155bfed4..3d56668c8814 100644
--- a/pkgs/development/python-modules/ldappool/default.nix
+++ b/pkgs/development/python-modules/ldappool/default.nix
@@ -1,42 +1,56 @@
-{ lib
-, buildPythonPackage
-, fetchPypi
-, pbr
-, python-ldap
-, prettytable
-, six
-, fixtures
-, testresources
-, testtools
+{
+  lib,
+  buildPythonPackage,
+  fetchPypi,
+  setuptools,
+  pbr,
+  python-ldap,
+  prettytable,
+  six,
+  unittestCheckHook,
+  fixtures,
+  testresources,
+  testtools,
 }:
 
 buildPythonPackage rec {
   pname = "ldappool";
   version = "3.0.0";
-  format = "setuptools";
+  pyproject = true;
 
   src = fetchPypi {
     pname = "ldappool";
     inherit version;
-    sha256 = "4bb59b7d6b11407f48ee01a781267e3c8ba98d91f426806ac7208612ae087b86";
+    hash = "sha256-S7WbfWsRQH9I7gGngSZ+PIupjZH0JoBqxyCGEq4Ie4Y=";
   };
 
-  postPatch = ''
-    # Tests run without most of the dependencies
-    echo "" > test-requirements.txt
-    # PrettyTable is now maintained again
-    substituteInPlace requirements.txt --replace "PrettyTable<0.8,>=0.7.2" "PrettyTable"
-  '';
+  build-system = [
+    setuptools
+    pbr
+  ];
 
-  nativeBuildInputs = [ pbr ];
+  dependencies = [
+    python-ldap
+    prettytable
+    six
+  ];
 
-  propagatedBuildInputs = [ python-ldap prettytable six ];
+  nativeCheckInputs = [
+    unittestCheckHook
+    fixtures
+    testresources
+    testtools
+  ];
 
-  nativeCheckInputs = [ fixtures testresources testtools ];
+  pythonImportsCheck = [ "ldappool" ];
 
   meta = with lib; {
     description = "A simple connector pool for python-ldap";
     homepage = "https://opendev.org/openstack/ldappool/";
-    license = with licenses; [ mpl11 lgpl21Plus gpl2Plus ];
+    license = with licenses; [
+      mpl11
+      lgpl21Plus
+      gpl2Plus
+    ];
   };
 }
diff --git a/pkgs/development/python-modules/ledgerblue/default.nix b/pkgs/development/python-modules/ledgerblue/default.nix
index 9342f8d3b5da..4e93a641cd01 100644
--- a/pkgs/development/python-modules/ledgerblue/default.nix
+++ b/pkgs/development/python-modules/ledgerblue/default.nix
@@ -12,24 +12,38 @@
 , pycrypto
 , pycryptodomex
 , pyelftools
+, python-gnupg
 , python-u2flib-host
 , pythonOlder
+, pythonRelaxDepsHook
+, setuptools
+, setuptools-scm
 , websocket-client
 }:
 
 buildPythonPackage rec {
   pname = "ledgerblue";
-  version = "0.1.48";
-  format = "setuptools";
+  version = "0.1.53";
+  pyproject = true;
 
   disabled = pythonOlder "3.7";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-LVRNcsTmJOR3zTBhbKV4V0zCQk0sk/Uf6kSmfbAhgfY=";
+    hash = "sha256-j5FCQnp+MNrJ8zgYeLRuWF+Gdq0FwJeBYyJALb+H8So=";
   };
 
-  propagatedBuildInputs = [
+  build-system = [
+    setuptools
+    setuptools-scm
+    pythonRelaxDepsHook
+  ];
+
+  pythonRelaxDeps = [
+    "protobuf"
+  ];
+
+  dependencies = [
     ecpy
     future
     hidapi
@@ -39,6 +53,7 @@ buildPythonPackage rec {
     pycrypto
     pycryptodomex
     pyelftools
+    python-gnupg
     python-u2flib-host
     websocket-client
   ]
diff --git a/pkgs/development/python-modules/lib4sbom/default.nix b/pkgs/development/python-modules/lib4sbom/default.nix
new file mode 100644
index 000000000000..0840b14c70b7
--- /dev/null
+++ b/pkgs/development/python-modules/lib4sbom/default.nix
@@ -0,0 +1,61 @@
+{ lib
+, buildPythonPackage
+, fetchFromGitHub
+, pyyaml
+, semantic-version
+, defusedxml
+, pytestCheckHook
+}:
+
+buildPythonPackage rec {
+  pname = "lib4sbom";
+  version = "0.7.1";
+  format = "setuptools";
+
+  src = fetchFromGitHub {
+    owner = "anthonyharrison";
+    repo = pname;
+    rev = "v${version}";
+    hash = "sha256-UQZZYTRDbUqSH6F8hjhp9L70025cRO3zXQ8Aoznotg4=";
+  };
+
+  dependencies = [
+    pyyaml
+    semantic-version
+    defusedxml
+  ];
+
+  nativeCheckInputs = [
+    pytestCheckHook
+  ];
+
+  disabledTests = [
+    # stub tests that always fail
+    "TestCycloneDXGenerator"
+    "TestCcycloneDX_parser"
+    "TestGenerator"
+    "TestOutput"
+    "TestParser"
+    "TestSPDX_Generator"
+    "TestSPDX_Parser"
+    # tests with missing getters
+    "test_set_downloadlocation"
+    "test_set_homepage"
+    "test_set_checksum"
+    "test_set_externalreference"
+    # checks for invalid return type
+    "test_set_type"
+    # wrong capilatization
+    "test_set_supplier"
+    "test_set_originator"
+  ];
+
+  pythonImportsCheck = [ "lib4sbom" ];
+
+  meta = with lib; {
+    description = "Library to ingest and generate SBOMs";
+    homepage = "https://github.com/anthonyharrison/lib4sbom";
+    license = licenses.asl20;
+    maintainers = with maintainers; [ teatwig ];
+  };
+}
diff --git a/pkgs/development/python-modules/libarcus/default.nix b/pkgs/development/python-modules/libarcus/default.nix
index b95c2b295257..989967719d09 100644
--- a/pkgs/development/python-modules/libarcus/default.nix
+++ b/pkgs/development/python-modules/libarcus/default.nix
@@ -1,6 +1,6 @@
 { lib, buildPythonPackage, python, fetchFromGitHub
 , fetchpatch
-, cmake, sip4, protobuf, pythonOlder }:
+, cmake, sip4, protobuf }:
 
 buildPythonPackage rec {
   pname = "libarcus";
@@ -23,8 +23,6 @@ buildPythonPackage rec {
     })
   ];
 
-  disabled = pythonOlder "3.4";
-
   propagatedBuildInputs = [ sip4 ];
   nativeBuildInputs = [ cmake ];
   buildInputs = [ protobuf ];
diff --git a/pkgs/development/python-modules/libgravatar/default.nix b/pkgs/development/python-modules/libgravatar/default.nix
new file mode 100644
index 000000000000..37d3373c7aa2
--- /dev/null
+++ b/pkgs/development/python-modules/libgravatar/default.nix
@@ -0,0 +1,37 @@
+{
+  lib,
+  buildPythonPackage,
+  fetchFromGitHub,
+  setuptools,
+  pytestCheckHook,
+  pythonOlder,
+}:
+
+buildPythonPackage rec {
+  pname = "libgravatar";
+  version = "1.0.4";
+  pyproject = true;
+
+  disabled = pythonOlder "3.8";
+
+  src = fetchFromGitHub {
+    owner = "pabluk";
+    repo = "libgravatar";
+    rev = "refs/tags/${version}";
+    hash = "sha256-rJv/jfdT+JldxR0kKtXQLOI5wXQYSQRWJnqwExwWjTA=";
+  };
+
+  build-system = [ setuptools ];
+
+  nativeCheckInputs = [ pytestCheckHook ];
+
+  pythonImportsCheck = [ "libgravatar" ];
+
+  meta = with lib; {
+    description = "A library that provides a Python 3 interface for the Gravatar API";
+    homepage = "https://github.com/pabluk/libgravatar";
+    changelog = "https://github.com/pabluk/libgravatar/releases/tag/${version}";
+    license = licenses.gpl3Plus;
+    maintainers = with maintainers; [ gador ];
+  };
+}
diff --git a/pkgs/development/python-modules/libretranslate/default.nix b/pkgs/development/python-modules/libretranslate/default.nix
index 042fd5d404d1..c339a7708024 100644
--- a/pkgs/development/python-modules/libretranslate/default.nix
+++ b/pkgs/development/python-modules/libretranslate/default.nix
@@ -30,14 +30,14 @@
 
 buildPythonPackage rec {
   pname = "libretranslate";
-  version = "1.5.6";
+  version = "1.5.7";
   pyproject = true;
 
   src = fetchFromGitHub {
     owner = "LibreTranslate";
     repo = "LibreTranslate";
     rev = "refs/tags/v${version}";
-    hash = "sha256-43VnxgtapMRKyXxqsvBgSMUxvpbLI+iOfW3FA0/POpE=";
+    hash = "sha256-lOVi/809ig+KtiNwdt9Wovn+2Q8I6amps1sZ5JJy7WE=";
   };
 
   build-system = [
diff --git a/pkgs/development/python-modules/librosa/default.nix b/pkgs/development/python-modules/librosa/default.nix
index 62d712aa7b1f..77bfb6aeca90 100644
--- a/pkgs/development/python-modules/librosa/default.nix
+++ b/pkgs/development/python-modules/librosa/default.nix
@@ -2,7 +2,6 @@
 , stdenv
 , buildPythonPackage
 , fetchFromGitHub
-, fetchpatch
 
 # build-system
 , setuptools
@@ -34,7 +33,7 @@
 
 buildPythonPackage rec {
   pname = "librosa";
-  version = "0.10.1";
+  version = "0.10.2";
   format = "pyproject";
 
   src = fetchFromGitHub {
@@ -42,26 +41,16 @@ buildPythonPackage rec {
     repo = "librosa";
     rev = "refs/tags/${version}";
     fetchSubmodules = true; # for test data
-    hash = "sha256-zbmU87hI9A1CVcBZ/5FU8z0t6SS4jfJk9bj9kLe/EHI=";
+    hash = "sha256-zUKljPKWOhyb3Zv4KEUcvLsVkxVhL+rzErKycAl6jIg=";
   };
 
   nativeBuildInputs = [
     setuptools
   ];
 
-  patches = [
-    (fetchpatch {
-      # https://github.com/librosa/librosa/issues/1754
-      # https://github.com/librosa/librosa/pull/1755
-      name = "matplotlib-3.8-compat.patch";
-      url = "https://github.com/librosa/librosa/commit/beef47885ce1255b43b65e48ea2054ddace37c6c.patch";
-      hash = "sha256-rrnlUHXHY2me4BWGs3wFq8WJmz75CbXTWKFp3VdJKzE=";
-    })
-  ];
-
   postPatch = ''
     substituteInPlace setup.cfg \
-      --replace "--cov-report term-missing --cov librosa --cov-report=xml " ""
+      --replace-fail "--cov-report term-missing --cov librosa --cov-report=xml " ""
   '';
 
   propagatedBuildInputs = [
@@ -107,11 +96,20 @@ buildPythonPackage rec {
     "test_example"
     "test_example_info"
     "test_load_resample"
-    # does not converge
-    "test_nnls_vector"
+    "test_cite_released"
+    "test_cite_badversion"
+    "test_cite_unreleased"
   ] ++ lib.optionals stdenv.isDarwin [
-    # https://github.com/librosa/librosa/pull/1808
-    "test_pyin_multi_center"
+    # crashing the python interpreter
+    "test_unknown_time_unit"
+    "test_unknown_wavaxis"
+    "test_waveshow_unknown_wavaxis"
+    "test_waveshow_bad_maxpoints"
+    "test_waveshow_deladaptor"
+    "test_waveshow_disconnect"
+    "test_unknown_axis"
+    "test_axis_bound_warning"
+    "test_auto_aspect"
   ];
 
   meta = with lib; {
diff --git a/pkgs/development/python-modules/lightning-utilities/default.nix b/pkgs/development/python-modules/lightning-utilities/default.nix
index 3af06818b8ee..7dba0a125f57 100644
--- a/pkgs/development/python-modules/lightning-utilities/default.nix
+++ b/pkgs/development/python-modules/lightning-utilities/default.nix
@@ -1,6 +1,7 @@
 { lib
 , buildPythonPackage
 , fetchFromGitHub
+, pythonAtLeast
 
 # build
 , setuptools
@@ -16,21 +17,21 @@
 
 buildPythonPackage rec {
   pname = "lightning-utilities";
-  version = "0.10.1";
-  format = "pyproject";
+  version = "0.11.2";
+  pyproject = true;
 
   src = fetchFromGitHub {
     owner = "Lightning-AI";
     repo = "utilities";
     rev = "refs/tags/v${version}";
-    hash = "sha256-kP7BllA9FR/nMNTxRCxmG6IJYHz/Nxqb1HoF9KxuKl8=";
+    hash = "sha256-IT9aRAUNc2cP2erLr0MglZSVLfDjOxg8PVIIe9AvO0o=";
   };
 
-  nativeBuildInputs = [
+  build-system = [
     setuptools
   ];
 
-  propagatedBuildInputs = [
+  dependencies = [
     packaging
     typing-extensions
   ];
@@ -53,6 +54,8 @@ buildPythonPackage rec {
     # fails another test
     "lightning_utilities.core.imports.ModuleAvailableCache"
     "lightning_utilities.core.imports.requires"
+    # Failed: DID NOT RAISE <class 'AssertionError'>
+    "test_no_warning_call"
   ];
 
   disabledTestPaths = [
@@ -71,6 +74,7 @@ buildPythonPackage rec {
     description = "Common Python utilities and GitHub Actions in Lightning Ecosystem";
     homepage = "https://github.com/Lightning-AI/utilities";
     license = licenses.asl20;
-    maintainers = with maintainers; [ ];
+    maintainers = with maintainers; [ GaetanLepage ];
+    broken = pythonAtLeast "3.12";
   };
 }
diff --git a/pkgs/development/python-modules/limnoria/default.nix b/pkgs/development/python-modules/limnoria/default.nix
index b791095ed68d..3eba2971c645 100644
--- a/pkgs/development/python-modules/limnoria/default.nix
+++ b/pkgs/development/python-modules/limnoria/default.nix
@@ -15,14 +15,14 @@
 
 buildPythonPackage rec {
   pname = "limnoria";
-  version = "2023.11.18";
+  version = "2024.4.26";
   format = "setuptools";
 
   disabled = pythonOlder "3.6";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-Ftm5OGTt1emQsYso3hAUA9yMNBkIK5jybdFaRKJJk0o=";
+    hash = "sha256-H8GAJvmkYJy8PJsXn4Yl9qY3zb9aFBa7sr4DN0bKYfQ=";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/line-profiler/default.nix b/pkgs/development/python-modules/line-profiler/default.nix
index 73fa920139de..85d8cdf8d8af 100644
--- a/pkgs/development/python-modules/line-profiler/default.nix
+++ b/pkgs/development/python-modules/line-profiler/default.nix
@@ -13,7 +13,7 @@
 
 buildPythonPackage rec {
   pname = "line-profiler";
-  version = "4.1.2";
+  version = "4.1.3";
   format = "setuptools";
 
   disabled = pythonOlder "3.6" || isPyPy;
@@ -21,7 +21,7 @@ buildPythonPackage rec {
   src = fetchPypi {
     pname = "line_profiler";
     inherit version;
-    hash = "sha256-qlZXiw/1p1b+GAs/2nvWfCe71Hiz0BJGEtjPAOSiHfI=";
+    hash = "sha256-5fESPDZywyGLoGPCO9ZKURWeRGSf7WeAuZPHgfte0xg=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/python-modules/linknlink/default.nix b/pkgs/development/python-modules/linknlink/default.nix
index ea158b5cb2a1..2fd6c15d6b00 100644
--- a/pkgs/development/python-modules/linknlink/default.nix
+++ b/pkgs/development/python-modules/linknlink/default.nix
@@ -9,7 +9,7 @@
 
 buildPythonPackage rec {
   pname = "linknlink";
-  version = "0.2.2";
+  version = "0.2.4";
   pyproject = true;
 
   disabled = pythonOlder "3.7";
@@ -18,7 +18,7 @@ buildPythonPackage rec {
     owner = "xuanxuan000";
     repo = "python-linknlink";
     rev = "refs/tags/${version}";
-    hash = "sha256-G0URNUHIh/td+A8MhIC0mePx2SmhEXhIzOpbVft33+w=";
+    hash = "sha256-ObPEcdDHi+SPFjuVKBtu7/5/IgHcam+IWblxxS3+mmI=";
   };
 
   build-system = [ setuptools ];
diff --git a/pkgs/development/python-modules/litellm/default.nix b/pkgs/development/python-modules/litellm/default.nix
index 25c8068a199a..d5446110c6c0 100644
--- a/pkgs/development/python-modules/litellm/default.nix
+++ b/pkgs/development/python-modules/litellm/default.nix
@@ -33,7 +33,7 @@
 
 buildPythonPackage rec {
   pname = "litellm";
-  version = "1.35.32";
+  version = "1.37.9";
   pyproject = true;
 
   disabled = pythonOlder "3.8";
@@ -42,7 +42,7 @@ buildPythonPackage rec {
     owner = "BerriAI";
     repo = "litellm";
     rev = "refs/tags/v${version}";
-    hash = "sha256-vNmhFd1lm1pfni2ZK0DshBC9cDRiSWhXTUHAPh/oGJc=";
+    hash = "sha256-yLJprng/33bwLpfSwBKSIFtk7/KsYWHqm0H5O1w00ZM=";
   };
 
   postPatch = ''
diff --git a/pkgs/development/python-modules/llama-index-agent-openai/default.nix b/pkgs/development/python-modules/llama-index-agent-openai/default.nix
index 2fb90a615f46..09f2d549225d 100644
--- a/pkgs/development/python-modules/llama-index-agent-openai/default.nix
+++ b/pkgs/development/python-modules/llama-index-agent-openai/default.nix
@@ -11,7 +11,7 @@
 
 buildPythonPackage rec {
   pname = "llama-index-agent-openai";
-  version = "0.2.3";
+  version = "0.2.4";
   pyproject = true;
 
   disabled = pythonOlder "3.8";
@@ -19,7 +19,7 @@ buildPythonPackage rec {
   src = fetchPypi {
     pname = "llama_index_agent_openai";
     inherit version;
-    hash = "sha256-yJnZCzIDZlao74bQ8DeNQWjgDrLXWhCQHqtYulsmVqQ=";
+    hash = "sha256-zUpY+L8jNyjO2lVMuzTeVqK2u7v/bOgBw/j/DIKAv1U=";
   };
 
   pythonRelaxDeps = [ "llama-index-llms-openai" ];
diff --git a/pkgs/development/python-modules/llama-index-core/default.nix b/pkgs/development/python-modules/llama-index-core/default.nix
index d49c0f042f54..c5043d3d4a05 100644
--- a/pkgs/development/python-modules/llama-index-core/default.nix
+++ b/pkgs/development/python-modules/llama-index-core/default.nix
@@ -44,7 +44,7 @@ in
 
 buildPythonPackage rec {
   pname = "llama-index-core";
-  version = "0.10.33";
+  version = "0.10.36";
   pyproject = true;
 
   disabled = pythonOlder "3.8";
@@ -53,7 +53,7 @@ buildPythonPackage rec {
     owner = "run-llama";
     repo = "llama_index";
     rev = "refs/tags/v${version}";
-    hash = "sha256-UlKZX7qWb8/XeqxNTW9PawKauwZRsMjsFP+xXI1CyeE=";
+    hash = "sha256-yP/60DLg43UOOogxbDvb1p5n8dnfBUjGhcfO5g5g0gA=";
   };
 
   sourceRoot = "${src.name}/${pname}";
diff --git a/pkgs/development/python-modules/llama-index-llms-openai/default.nix b/pkgs/development/python-modules/llama-index-llms-openai/default.nix
index 288fa1d35c4d..a6987b224fc5 100644
--- a/pkgs/development/python-modules/llama-index-llms-openai/default.nix
+++ b/pkgs/development/python-modules/llama-index-llms-openai/default.nix
@@ -9,7 +9,7 @@
 
 buildPythonPackage rec {
   pname = "llama-index-llms-openai";
-  version = "0.1.16";
+  version = "0.1.19";
   pyproject = true;
 
   disabled = pythonOlder "3.8";
@@ -17,7 +17,7 @@ buildPythonPackage rec {
   src = fetchPypi {
     pname = "llama_index_llms_openai";
     inherit version;
-    hash = "sha256-MTu8F8JBmSQwpr9oahse3EJ2yCVq1rBVCqG+oeD+0aY=";
+    hash = "sha256-9htkqZeJLkJPs81UcJDSecWyEO8VthT8Od6FTTzKp+c=";
   };
 
   build-system = [ poetry-core ];
diff --git a/pkgs/development/python-modules/llama-index-multi-modal-llms-openai/default.nix b/pkgs/development/python-modules/llama-index-multi-modal-llms-openai/default.nix
index 389f2c6fe763..76fa73298cd4 100644
--- a/pkgs/development/python-modules/llama-index-multi-modal-llms-openai/default.nix
+++ b/pkgs/development/python-modules/llama-index-multi-modal-llms-openai/default.nix
@@ -10,7 +10,7 @@
 
 buildPythonPackage rec {
   pname = "llama-index-multi-modal-llms-openai";
-  version = "0.1.5";
+  version = "0.1.6";
   pyproject = true;
 
   disabled = pythonOlder "3.8";
@@ -18,7 +18,7 @@ buildPythonPackage rec {
   src = fetchPypi {
     pname = "llama_index_multi_modal_llms_openai";
     inherit version;
-    hash = "sha256-miN/T4htHiDCfpST6As+H4dThZSB/xtY/iW3qjmxmKI=";
+    hash = "sha256-EN51qHekRK81MGOF+q2bnwYkOR5VMJlwVkEUoICgV4w=";
   };
 
   build-system = [ poetry-core ];
diff --git a/pkgs/development/python-modules/llama-index-readers-database/default.nix b/pkgs/development/python-modules/llama-index-readers-database/default.nix
index 7b01a5738bbb..d7aa3bf51e03 100644
--- a/pkgs/development/python-modules/llama-index-readers-database/default.nix
+++ b/pkgs/development/python-modules/llama-index-readers-database/default.nix
@@ -9,7 +9,7 @@
 
 buildPythonPackage rec {
   pname = "llama-index-readers-database";
-  version = "0.1.3";
+  version = "0.1.4";
   pyproject = true;
 
   disabled = pythonOlder "3.8";
@@ -17,7 +17,7 @@ buildPythonPackage rec {
   src = fetchPypi {
     pname = "llama_index_readers_database";
     inherit version;
-    hash = "sha256-1J6FE6iID4U9cEcPPUK5CvCTmbgVWxI4AFLrx+gPGWg=";
+    hash = "sha256-x71+szDNDZNaVc8AMXruKvxSNXg561ibE2+kx53zHfI=";
   };
 
   build-system = [
diff --git a/pkgs/development/python-modules/llama-index-readers-file/default.nix b/pkgs/development/python-modules/llama-index-readers-file/default.nix
index 999fb9040880..d0f42bec9eed 100644
--- a/pkgs/development/python-modules/llama-index-readers-file/default.nix
+++ b/pkgs/development/python-modules/llama-index-readers-file/default.nix
@@ -14,7 +14,7 @@
 
 buildPythonPackage rec {
   pname = "llama-index-readers-file";
-  version = "0.1.19";
+  version = "0.1.22";
   pyproject = true;
 
   disabled = pythonOlder "3.8";
@@ -22,7 +22,7 @@ buildPythonPackage rec {
   src = fetchPypi {
     pname = "llama_index_readers_file";
     inherit version;
-    hash = "sha256-GUwbm4XCZRWbcwLH2ArbqTeqsG8FwXCvf9lcTnqK7DU=";
+    hash = "sha256-N95UrQz73GB8GVUyuaKSQXpHFPV3c1cLhwJ7jcOB8OI=";
   };
 
   pythonRelaxDeps = [
diff --git a/pkgs/development/python-modules/llama-index-vector-stores-chroma/default.nix b/pkgs/development/python-modules/llama-index-vector-stores-chroma/default.nix
index 73c20444860c..de65df2055f3 100644
--- a/pkgs/development/python-modules/llama-index-vector-stores-chroma/default.nix
+++ b/pkgs/development/python-modules/llama-index-vector-stores-chroma/default.nix
@@ -9,7 +9,7 @@
 
 buildPythonPackage rec {
   pname = "llama-index-vector-stores-chroma";
-  version = "0.1.7";
+  version = "0.1.8";
   pyproject = true;
 
   disabled = pythonOlder "3.8";
@@ -17,7 +17,7 @@ buildPythonPackage rec {
   src = fetchPypi {
     pname = "llama_index_vector_stores_chroma";
     inherit version;
-    hash = "sha256-E7DXWubBvMhru31XmNva6iPm2adJKmmt5pFqKZ8fquk=";
+    hash = "sha256-nFdLrzcPr0Vry2e51eonOm+h8rT9IFpZxHtoESNkuec=";
   };
 
   build-system = [
diff --git a/pkgs/development/python-modules/llama-parse/default.nix b/pkgs/development/python-modules/llama-parse/default.nix
index 1f6183df9ae3..e56d34436ce9 100644
--- a/pkgs/development/python-modules/llama-parse/default.nix
+++ b/pkgs/development/python-modules/llama-parse/default.nix
@@ -1,14 +1,15 @@
-{ lib
-, buildPythonPackage
-, fetchPypi
-, llama-index-core
-, poetry-core
-, pythonOlder
+{
+  lib,
+  buildPythonPackage,
+  fetchPypi,
+  llama-index-core,
+  poetry-core,
+  pythonOlder,
 }:
 
 buildPythonPackage rec {
   pname = "llama-parse";
-  version = "0.4.2";
+  version = "0.4.3";
   pyproject = true;
 
   disabled = pythonOlder "3.8";
@@ -16,20 +17,14 @@ buildPythonPackage rec {
   src = fetchPypi {
     pname = "llama_parse";
     inherit version;
-    hash = "sha256-+gTAlzCxAhVfZQXenPkZmMhtM0WB8PEll8XrR8pduFk=";
+    hash = "sha256-AYNhR7UjiHOySn3UHFq5QrAbCbktdVcPMM8oYcCEoOs=";
   };
 
-  build-system = [
-    poetry-core
-  ];
+  build-system = [ poetry-core ];
 
-  dependencies = [
-    llama-index-core
-  ];
+  dependencies = [ llama-index-core ];
 
-  pythonImportsCheck = [
-    "llama_parse"
-  ];
+  pythonImportsCheck = [ "llama_parse" ];
 
   meta = with lib; {
     description = "Parse files into RAG-Optimized formats";
diff --git a/pkgs/development/python-modules/llm/default.nix b/pkgs/development/python-modules/llm/default.nix
index 5626da5e3858..582cba89763f 100644
--- a/pkgs/development/python-modules/llm/default.nix
+++ b/pkgs/development/python-modules/llm/default.nix
@@ -12,7 +12,7 @@
 let
   llm = buildPythonPackage rec {
     pname = "llm";
-    version = "0.13.1";
+    version = "0.14";
     pyproject = true;
 
     disabled = pythonOlder "3.8";
@@ -21,7 +21,7 @@ let
       owner = "simonw";
       repo = "llm";
       rev = "refs/tags/${version}";
-      hash = "sha256-Nq6pduzl8IK+nA3pctst/W4ux7+P6mBFTEHMF+vtBQw=";
+      hash = "sha256-CgGVFUsntVkF0zORAtYQQMAeGtIwBbj9hE0Ei1OCGq4=";
     };
 
     patches = [
diff --git a/pkgs/development/python-modules/lmfit/default.nix b/pkgs/development/python-modules/lmfit/default.nix
index d96eb4d4c9ad..a7e8c6970bdb 100644
--- a/pkgs/development/python-modules/lmfit/default.nix
+++ b/pkgs/development/python-modules/lmfit/default.nix
@@ -4,6 +4,7 @@
   setuptools,
   setuptools-scm,
   asteval,
+  dill,
   numpy,
   scipy,
   uncertainties,
@@ -14,17 +15,17 @@
 
 buildPythonPackage rec {
   pname = "lmfit";
-  version = "1.2.2";
+  version = "1.3.1";
 
-  format = "pyproject";
+  pyproject = true;
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-BEoFKhGmHaBXYnRQTBfrfigDtBEo4lgh6WYyIH8jyIw=";
+    hash = "sha256-vDhiRK29EO8aKixPnRez3vkFVSwKZK74VPCtRswwnMU=";
   };
 
   postPatch = ''
-    substituteInPlace setup.cfg --replace "--cov=lmfit --cov-report html" ""
+    substituteInPlace pyproject.toml --replace "--cov=lmfit --cov-report html" ""
   '';
 
   nativeBuildInputs = [
@@ -34,6 +35,7 @@ buildPythonPackage rec {
 
   propagatedBuildInputs = [
     asteval
+    dill
     numpy
     scipy
     uncertainties
@@ -45,13 +47,6 @@ buildPythonPackage rec {
     matplotlib
   ];
 
-  disabledTests = [
-    # https://github.com/lmfit/lmfit-py/issues/878
-    "test_emcee_multiprocessing"
-    "test_explicit_independent_vars"
-    "test_result_eval_custom_x"
-  ];
-
   meta = with lib; {
     description = "Least-Squares Minimization with Bounds and Constraints";
     homepage = "https://lmfit-py.readthedocs.io/";
diff --git a/pkgs/development/python-modules/loadcredential/default.nix b/pkgs/development/python-modules/loadcredential/default.nix
new file mode 100644
index 000000000000..b0cc59754bb8
--- /dev/null
+++ b/pkgs/development/python-modules/loadcredential/default.nix
@@ -0,0 +1,34 @@
+{
+  lib,
+  buildPythonPackage,
+  fetchFromGitHub,
+  setuptools,
+  wheel,
+}:
+
+buildPythonPackage rec {
+  pname = "loadcredential";
+  version = "1.1";
+  pyproject = true;
+
+  src = fetchFromGitHub {
+    owner = "Tom-Hubrecht";
+    repo = "loadcredential";
+    rev = "v${version}";
+    hash = "sha256-GXpMqGLDmDnTGa9cBYe0CP3Evm5sQ3AK9u6k3mLAW34=";
+  };
+
+  build-system = [
+    setuptools
+    wheel
+  ];
+
+  pythonImportsCheck = [ "loadcredential" ];
+
+  meta = {
+    description = "A simple python package to read credentials passed through systemd's LoadCredential, with a fallback on env variables ";
+    homepage = "https://github.com/Tom-Hubrecht/loadcredential";
+    license = lib.licenses.mit;
+    maintainers = with lib.maintainers; [ thubrecht ];
+  };
+}
diff --git a/pkgs/development/python-modules/localzone/default.nix b/pkgs/development/python-modules/localzone/default.nix
index 84c5acd27690..02319312ce22 100644
--- a/pkgs/development/python-modules/localzone/default.nix
+++ b/pkgs/development/python-modules/localzone/default.nix
@@ -1,34 +1,39 @@
-{ lib
-, buildPythonPackage
-, fetchFromGitHub
-, dnspython
-, sphinx
-, pytest
+{
+  lib,
+  buildPythonPackage,
+  fetchFromGitHub,
+  dnspython,
+  pytestCheckHook,
+  setuptools,
+  pythonOlder,
 }:
 
 buildPythonPackage rec {
   pname = "localzone";
   version = "0.9.8";
-  format = "setuptools";
+  pyproject = true;
+
+  disabled = pythonOlder "3.7";
 
   src = fetchFromGitHub {
     owner = "ags-slc";
-    repo = pname;
-    rev = "v${version}";
-    sha256 = "1cbiv21yryjqy46av9hbjccks95sxznrx8nypd3yzihf1vkjiq5a";
+    repo = "localzone";
+    rev = "refs/tags/v${version}";
+    hash = "sha256-quAo5w4Oxu9Hu96inu3vuiQ9GZMLpq0M8Vj67IPYcbE=";
   };
 
-  propagatedBuildInputs = [ dnspython sphinx ];
+  build-system = [ setuptools ];
+
+  dependencies = [ dnspython ];
 
-  nativeCheckInputs = [ pytest ];
+  nativeCheckInputs = [ pytestCheckHook ];
 
-  checkPhase = ''
-    pytest
-  '';
+  pythonImportsCheck = [ "localzone" ];
 
   meta = with lib; {
     description = "A simple DNS library for managing zone files";
     homepage = "https://localzone.iomaestro.com";
+    changelog = "https://github.com/ags-slc/localzone/blob/v${version}/CHANGELOG.rst";
     license = licenses.bsd3;
     maintainers = with maintainers; [ flyfloh ];
   };
diff --git a/pkgs/development/python-modules/lockfile/default.nix b/pkgs/development/python-modules/lockfile/default.nix
index 0fb64ad0baf9..1ee92f4ce38a 100644
--- a/pkgs/development/python-modules/lockfile/default.nix
+++ b/pkgs/development/python-modules/lockfile/default.nix
@@ -1,25 +1,32 @@
 { lib
 , buildPythonPackage
 , fetchPypi
+, setuptools
 , pbr
-, nose
+, pynose
 }:
 
 buildPythonPackage rec {
   pname = "lockfile";
   version = "0.12.2";
-  format = "setuptools";
+  pyproject = true;
 
   src = fetchPypi {
     inherit pname version;
     sha256 = "6aed02de03cba24efabcd600b30540140634fc06cfa603822d508d5361e9f799";
   };
 
-  buildInputs = [ pbr ];
-  nativeCheckInputs = [ nose ];
+  build-system = [
+    pbr
+    setuptools
+  ];
+
+  nativeCheckInputs = [ pynose ];
 
   checkPhase = ''
+    runHook preCheck
     nosetests
+    runHook postcheck
   '';
 
   meta = with lib; {
diff --git a/pkgs/development/python-modules/logilab/common.nix b/pkgs/development/python-modules/logilab/common.nix
index b8fadc0832ad..3e2797b6d675 100644
--- a/pkgs/development/python-modules/logilab/common.nix
+++ b/pkgs/development/python-modules/logilab/common.nix
@@ -1,19 +1,21 @@
-{ lib
-, buildPythonPackage
-, fetchPypi
-, pythonOlder
-, setuptools
-, importlib-metadata
-, mypy-extensions
-, typing-extensions
-, pytestCheckHook
-, pytz
+{
+  lib,
+  buildPythonPackage,
+  fetchPypi,
+  importlib-metadata,
+  mypy-extensions,
+  pytestCheckHook,
+  pythonAtLeast,
+  pythonOlder,
+  pytz,
+  setuptools,
+  typing-extensions,
 }:
 
 buildPythonPackage rec {
   pname = "logilab-common";
   version = "2.0.0";
-  format = "pyproject";
+  pyproject = true;
 
   disabled = pythonOlder "3.6";
 
@@ -22,17 +24,18 @@ buildPythonPackage rec {
     hash = "sha256-ojvR2k3Wpj5Ej0OS57I4aFX/cGFVeL/PmT7riCTelws=";
   };
 
-  nativeBuildInputs = [
-    setuptools
-  ];
+  postPatch = lib.optionals (pythonAtLeast "3.12") ''
+    substituteInPlace logilab/common/testlib.py \
+      --replace-fail "_TextTestResult" "TextTestResult"
+  '';
+
+  build-system = [ setuptools ];
 
-  propagatedBuildInputs = [
+  dependencies = [
     setuptools
     mypy-extensions
     typing-extensions
-  ] ++ lib.optionals (pythonOlder "3.8") [
-    importlib-metadata
-  ];
+  ] ++ lib.optionals (pythonOlder "3.8") [ importlib-metadata ];
 
   nativeCheckInputs = [
     pytestCheckHook
@@ -44,10 +47,11 @@ buildPythonPackage rec {
   '';
 
   meta = with lib; {
-    description = "Python packages and modules used by Logilab ";
-    mainProgram = "logilab-pytest";
+    description = "Python packages and modules used by Logilab";
     homepage = "https://logilab-common.readthedocs.io/";
     changelog = "https://forge.extranet.logilab.fr/open-source/logilab-common/-/blob/branch/default/CHANGELOG.md";
     license = licenses.lgpl21Plus;
+    maintainers = with maintainers; [ ];
+    mainProgram = "logilab-pytest";
   };
 }
diff --git a/pkgs/development/python-modules/logutils/default.nix b/pkgs/development/python-modules/logutils/default.nix
index 7f3584578563..b46ff4b13442 100644
--- a/pkgs/development/python-modules/logutils/default.nix
+++ b/pkgs/development/python-modules/logutils/default.nix
@@ -3,24 +3,38 @@
 , buildPythonPackage
 , fetchPypi
 , pytestCheckHook
+, pythonOlder
 , redis
 , redis-server
+, setuptools
 }:
 
 buildPythonPackage rec {
   pname = "logutils";
   version = "0.3.5";
-  format = "setuptools";
+  pyproject = true;
+
+  disabled = pythonOlder "3.7";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "bc058a25d5c209461f134e1f03cab637d66a7a5ccc12e593db56fbb279899a82";
+    hash = "sha256-vAWKJdXCCUYfE04fA8q2N9ZqelzMEuWT21b7snmJmoI=";
   };
 
-  nativeCheckInputs = [
+  postPatch = ''
+    substituteInPlace tests/test_dictconfig.py \
+      --replace-fail "assertEquals" "assertEqual"
+    substituteInPlace tests/test_redis.py \
+      --replace-fail "'redis-server'" "'${redis-server}/bin/redis-server'"
+  '';
+
+  build-system = [
+    setuptools
+  ];
+
+  dependencies = [
     pytestCheckHook
     redis
-    redis-server
   ];
 
   disabledTests = [
@@ -33,9 +47,14 @@ buildPythonPackage rec {
     "tests/test_redis.py"
   ];
 
+  pythonImportsCheck = [
+    "logutils"
+  ];
+
   meta = with lib; {
     description = "Logging utilities";
     homepage = "https://bitbucket.org/vinay.sajip/logutils/";
     license = licenses.bsd0;
+    maintainers = with maintainers; [ ];
   };
 }
diff --git a/pkgs/development/python-modules/loopy/default.nix b/pkgs/development/python-modules/loopy/default.nix
index 995c99e100ec..488d055b7213 100644
--- a/pkgs/development/python-modules/loopy/default.nix
+++ b/pkgs/development/python-modules/loopy/default.nix
@@ -1,39 +1,47 @@
-{ lib
-, buildPythonPackage
-, codepy
-, cgen
-, colorama
-, fetchFromGitHub
-, genpy
-, islpy
-, mako
-, numpy
-, pymbolic
-, pyopencl
-, pyrsistent
-, pythonOlder
-, pytools
+{
+  lib,
+  buildPythonPackage,
+  codepy,
+  cgen,
+  colorama,
+  fetchFromGitHub,
+  genpy,
+  immutables,
+  islpy,
+  mako,
+  numpy,
+  pymbolic,
+  pyopencl,
+  pyrsistent,
+  pythonOlder,
+  pytools,
+  setuptools,
+  typing-extensions,
 }:
 
 buildPythonPackage rec {
   pname = "loopy";
   version = "2024.1";
-  format = "setuptools";
+  pyproject = true;
 
-  disabled = pythonOlder "3.7";
+  disabled = pythonOlder "3.8";
 
   src = fetchFromGitHub {
     owner = "inducer";
-    repo = pname;
+    repo = "loopy";
     rev = "refs/tags/v${version}";
-    hash = "sha256-R0Wry4r8Y7VKqsyrZ3odEOUy4T9di9rFQzq7BD0LG58=";
+    hash = "sha256-mU8vXEPR88QpJpzXZlZdDhMtlwIx5YpeYhXU8Vw2T9g=";
+    fetchSubmodules = true; # submodule at `loopy/target/c/compyte`
   };
 
-  propagatedBuildInputs = [
+  build-system = [ setuptools ];
+
+  dependencies = [
     codepy
     cgen
     colorama
     genpy
+    immutables
     islpy
     mako
     numpy
@@ -41,15 +49,22 @@ buildPythonPackage rec {
     pyopencl
     pyrsistent
     pytools
+    typing-extensions
   ];
 
+  postConfigure = ''
+    export HOME=$(mktemp -d)
+  '';
+
+  pythonImportsCheck = [ "loopy" ];
+
   # pyopencl._cl.LogicError: clGetPlatformIDs failed: PLATFORM_NOT_FOUND_KHR
   doCheck = false;
 
-  meta = with lib; {
+  meta = {
     description = "A code generator for array-based code on CPUs and GPUs";
     homepage = "https://github.com/inducer/loopy";
-    license = licenses.mit;
-    maintainers = with maintainers; [ ];
+    license = lib.licenses.mit;
+    maintainers = with lib.maintainers; [ tomasajt ];
   };
 }
diff --git a/pkgs/development/python-modules/losant-rest/default.nix b/pkgs/development/python-modules/losant-rest/default.nix
index 3d14dbf313e0..21a285711976 100644
--- a/pkgs/development/python-modules/losant-rest/default.nix
+++ b/pkgs/development/python-modules/losant-rest/default.nix
@@ -1,42 +1,40 @@
-{ lib
-, buildPythonPackage
-, fetchFromGitHub
-, pytestCheckHook
-, pythonOlder
-, requests
-, requests-mock
+{
+  lib,
+  buildPythonPackage,
+  fetchFromGitHub,
+  pytestCheckHook,
+  pythonOlder,
+  requests,
+  requests-mock,
+  setuptools,
 }:
 
 buildPythonPackage rec {
   pname = "losant-rest";
-  version = "1.19.5";
-  format = "setuptools";
+  version = "1.19.6";
+  pyproject = true;
 
   disabled = pythonOlder "3.7";
 
   src = fetchFromGitHub {
     owner = "Losant";
     repo = "losant-rest-python";
-    rev = "v${version}";
-    hash = "sha256-oYwbCpX2mD1RMk/0ymxaA8NF9kaJ+pGQdUKk3l5Jmrs=";
+    rev = "refs/tags/v${version}";
+    hash = "sha256-sbNR95FhcRhgHh/ulLC8lL6EHal0BBK3wP6i29VElmY=";
   };
 
-  propagatedBuildInputs = [
-    requests
-  ];
+  build-system = [ setuptools ];
+
+  dependencies = [ requests ];
 
   nativeCheckInputs = [
     pytestCheckHook
     requests-mock
   ];
 
-  pytestFlagsArray = [
-    "tests/losantrest_tests.py"
-  ];
+  pytestFlagsArray = [ "tests/platformrest_tests.py" ];
 
-  pythonImportsCheck = [
-    "losantrest"
-  ];
+  pythonImportsCheck = [ "platformrest" ];
 
   meta = with lib; {
     description = "Python module for consuming the Losant IoT Platform API";
diff --git a/pkgs/development/python-modules/lsassy/default.nix b/pkgs/development/python-modules/lsassy/default.nix
index a36a70f11bbd..8123a9967e22 100644
--- a/pkgs/development/python-modules/lsassy/default.nix
+++ b/pkgs/development/python-modules/lsassy/default.nix
@@ -13,7 +13,7 @@
 
 buildPythonPackage rec {
   pname = "lsassy";
-  version = "3.1.10";
+  version = "3.1.11";
   pyproject = true;
 
   disabled = pythonOlder "3.7";
@@ -22,7 +22,7 @@ buildPythonPackage rec {
     owner = "Hackndo";
     repo = "lsassy";
     rev = "refs/tags/v${version}";
-    hash = "sha256-Eqparqj1O0gK0MvR4BBkGVNji2WXEnMsdWvKiR6XHFk=";
+    hash = "sha256-boPFrmPqaHpezxXM3VM50i+n+n+gXkuwP4ErpMpN/AI=";
   };
 
   pythonRelaxDeps = [
diff --git a/pkgs/development/python-modules/m2crypto/default.nix b/pkgs/development/python-modules/m2crypto/default.nix
index ae2e7b87ded1..8b87fc606c98 100644
--- a/pkgs/development/python-modules/m2crypto/default.nix
+++ b/pkgs/development/python-modules/m2crypto/default.nix
@@ -1,18 +1,19 @@
-{ lib
-, stdenv
-, buildPythonPackage
-, fetchPypi
-, openssl
-, parameterized
-, pytestCheckHook
-, pythonOlder
-, swig2
+{
+  lib,
+  stdenv,
+  buildPythonPackage,
+  fetchPypi,
+  openssl,
+  pytestCheckHook,
+  pythonOlder,
+  setuptools,
+  swig,
 }:
 
 buildPythonPackage rec {
   pname = "m2crypto";
   version = "0.41.0";
-  format = "setuptools";
+  pyproject = true;
 
   disabled = pythonOlder "3.7";
 
@@ -22,28 +23,29 @@ buildPythonPackage rec {
     hash = "sha256-OhNYx+6EkEbZF4Knd/F4a/AnocHVG1+vjxlDW/w/FJU=";
   };
 
-  nativeBuildInputs = [
-    swig2
-    openssl
-  ];
+  build-system = [ setuptools ];
 
-  buildInputs = [
-    openssl
-    parameterized
-  ];
+  nativeBuildInputs = [ swig ];
 
-  env.NIX_CFLAGS_COMPILE = lib.optionalString stdenv.isDarwin (toString [
-    "-Wno-error=implicit-function-declaration"
-    "-Wno-error=incompatible-pointer-types"
-  ]);
+  buildInputs = [ openssl ];
+
+  env =
+    {
+      NIX_CFLAGS_COMPILE = lib.optionalString stdenv.isDarwin (toString [
+        "-Wno-error=implicit-function-declaration"
+        "-Wno-error=incompatible-pointer-types"
+      ]);
+    }
+    // lib.optionalAttrs (stdenv.hostPlatform != stdenv.buildPlatform) {
+      CPP = "${stdenv.cc.targetPrefix}cpp";
+    };
 
   nativeCheckInputs = [
     pytestCheckHook
+    openssl
   ];
 
-  pythonImportsCheck = [
-    "M2Crypto"
-  ];
+  pythonImportsCheck = [ "M2Crypto" ];
 
   meta = with lib; {
     description = "A Python crypto and SSL toolkit";
diff --git a/pkgs/development/python-modules/maestral/default.nix b/pkgs/development/python-modules/maestral/default.nix
index 885911b181c8..52c24504174d 100644
--- a/pkgs/development/python-modules/maestral/default.nix
+++ b/pkgs/development/python-modules/maestral/default.nix
@@ -31,7 +31,7 @@
 buildPythonPackage rec {
   pname = "maestral";
   version = "1.9.3";
-  format = "pyproject";
+  pyproject = true;
 
   disabled = pythonOlder "3.8";
 
@@ -42,7 +42,11 @@ buildPythonPackage rec {
     hash = "sha256-h7RDaCVICi3wl6/b1s01cINhFirDOpOXoxTPZIBH3jE=";
   };
 
-  propagatedBuildInputs = [
+  build-system = [
+    setuptools
+  ];
+
+  dependencies = [
     click
     desktop-notifier
     dbus-python
@@ -67,7 +71,7 @@ buildPythonPackage rec {
 
   makeWrapperArgs = [
     # Add the installed directories to the python path so the daemon can find them
-    "--prefix PYTHONPATH : ${makePythonPath propagatedBuildInputs}"
+    "--prefix PYTHONPATH : ${makePythonPath dependencies}"
     "--prefix PYTHONPATH : $out/${python.sitePackages}"
   ];
 
diff --git a/pkgs/development/python-modules/magic-wormhole-mailbox-server/default.nix b/pkgs/development/python-modules/magic-wormhole-mailbox-server/default.nix
index fc9636c351a0..d74be9e45f93 100644
--- a/pkgs/development/python-modules/magic-wormhole-mailbox-server/default.nix
+++ b/pkgs/development/python-modules/magic-wormhole-mailbox-server/default.nix
@@ -3,27 +3,29 @@
 , buildPythonPackage
 , fetchPypi
 , fetchpatch
+, setuptools
 , six
 , attrs
 , twisted
-, pyopenssl
-, service-identity
 , autobahn
 , treq
 , mock
 , pythonOlder
+, pythonAtLeast
+, pytestCheckHook
 }:
 
 buildPythonPackage rec {
   pname = "magic-wormhole-mailbox-server";
   version = "0.4.1";
-  format = "setuptools";
+  pyproject = true;
 
-  disabled = pythonOlder "3.7";
+  # python 3.12 support: https://github.com/magic-wormhole/magic-wormhole-mailbox-server/issues/41
+  disabled = pythonOlder "3.7" || pythonAtLeast "3.12";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "1af10592909caaf519c00e706eac842c5e77f8d4356215fe9c61c7b2258a88fb";
+    hash = "sha256-GvEFkpCcqvUZwA5wbqyELF53+NQ1YhX+nGHHsiWKiPs=";
   };
 
   patches = [
@@ -35,6 +37,8 @@ buildPythonPackage rec {
     })
   ];
 
+  nativeBuildInputs = [ setuptools ];
+
   propagatedBuildInputs = [
     attrs
     six
@@ -43,27 +47,24 @@ buildPythonPackage rec {
   ] ++ autobahn.optional-dependencies.twisted
   ++ twisted.optional-dependencies.tls;
 
+  pythonImportsCheck = [ "wormhole_mailbox_server" ];
+
   nativeCheckInputs = [
+    pytestCheckHook
     treq
     mock
-    twisted
   ];
 
-  # Fails in Darwin's sandbox
-  postPatch = lib.optionalString stdenv.isDarwin ''
-    echo 'LogRequests.skip = "Operation not permitted"' >> src/wormhole_mailbox_server/test/test_web.py
-    echo 'WebSocketAPI.skip = "Operation not permitted"' >> src/wormhole_mailbox_server/test/test_web.py
-  '';
-
-  checkPhase = ''
-    trial -j$NIX_BUILD_CORES wormhole_mailbox_server
-  '';
+  disabledTestPaths = lib.optionals stdenv.isDarwin [
+    # these tests fail in Darwin's sandbox
+    "src/wormhole_mailbox_server/test/test_web.py"
+  ];
 
-  meta = with lib; {
+  meta = {
     description = "Securely transfer data between computers";
-    homepage = "https://github.com/warner/magic-wormhole-mailbox-server";
+    homepage = "https://github.com/magic-wormhole/magic-wormhole-mailbox-server";
     changelog = "https://github.com/magic-wormhole/magic-wormhole-mailbox-server/blob/${version}/NEWS.md";
-    license = licenses.mit;
-    maintainers = with maintainers; [ ];
+    license = lib.licenses.mit;
+    maintainers = [ lib.maintainers.mjoerg ];
   };
 }
diff --git a/pkgs/development/python-modules/magic-wormhole-transit-relay/default.nix b/pkgs/development/python-modules/magic-wormhole-transit-relay/default.nix
index 463b3560457d..d98080545d35 100644
--- a/pkgs/development/python-modules/magic-wormhole-transit-relay/default.nix
+++ b/pkgs/development/python-modules/magic-wormhole-transit-relay/default.nix
@@ -1,33 +1,40 @@
 { lib
 , buildPythonPackage
 , fetchPypi
+, setuptools
 , autobahn
 , mock
 , twisted
+, pythonOlder
+, pythonAtLeast
+, pytestCheckHook
 }:
 
 buildPythonPackage rec {
   pname = "magic-wormhole-transit-relay";
   version = "0.2.1";
-  format = "setuptools";
+  pyproject = true;
+
+  disabled = pythonOlder "3.7" || pythonAtLeast "3.12";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "0ppsx2s1ysikns1h053x67z2zmficbn3y3kf52bzzslhd2s02j6b";
+    hash = "sha256-y0gBtGiQ6v+XKG4OP+xi0dUv/jF9FACDtjNqH7To+l4=";
   };
 
+  nativeBuildInputs = [ setuptools ];
+
   propagatedBuildInputs = [ autobahn twisted ];
 
-  nativeCheckInputs = [ mock twisted ];
+  pythonImportsCheck = [ "wormhole_transit_relay" ];
 
-  checkPhase = ''
-    trial -j$NIX_BUILD_CORES wormhole_transit_relay
-  '';
+  nativeCheckInputs = [ pytestCheckHook mock twisted ];
 
-  meta = with lib; {
+  meta = {
     description = "Transit Relay server for Magic-Wormhole";
     homepage = "https://github.com/magic-wormhole/magic-wormhole-transit-relay";
-    license = licenses.mit;
-    maintainers = with maintainers; [ ];
+    changelog = "https://github.com/magic-wormhole/magic-wormhole-transit-relay/blob/${version}/NEWS.md";
+    license = lib.licenses.mit;
+    maintainers = [ lib.maintainers.mjoerg ];
   };
 }
diff --git a/pkgs/development/python-modules/magic-wormhole/default.nix b/pkgs/development/python-modules/magic-wormhole/default.nix
index 353e2c0e053b..d1bf85f0530a 100644
--- a/pkgs/development/python-modules/magic-wormhole/default.nix
+++ b/pkgs/development/python-modules/magic-wormhole/default.nix
@@ -17,7 +17,9 @@
 , tqdm
 , click
 , humanize
+, iterable-io
 , txtorcon
+, zipstream-ng
 
 # optional-dependencies
 , noiseprotocol
@@ -33,12 +35,12 @@
 
 buildPythonPackage rec {
   pname = "magic-wormhole";
-  version = "0.13.0";
-  format = "pyproject";
+  version = "0.14.0";
+  pyproject = true;
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-rDvWgoYnDn8UnAYUmo5Anl+jTX/rDoiESibSnu0tFRY=";
+    hash = "sha256-AG0jn4i/98N7wu/2CgBOJj+vklj3J5GS0Gugyc7WsIA=";
   };
 
   nativeBuildInputs = [
@@ -56,7 +58,9 @@ buildPythonPackage rec {
     tqdm
     click
     humanize
+    iterable-io
     txtorcon
+    zipstream-ng
   ]
   ++ autobahn.optional-dependencies.twisted
   ++ twisted.optional-dependencies.tls;
@@ -111,12 +115,12 @@ buildPythonPackage rec {
     install -Dm644 docs/wormhole.1 $out/share/man/man1/wormhole.1
   '';
 
-  meta = with lib; {
+  meta = {
     changelog = "https://github.com/magic-wormhole/magic-wormhole/blob/${version}/NEWS.md";
     description = "Securely transfer data between computers";
     homepage = "https://github.com/magic-wormhole/magic-wormhole";
-    license = licenses.mit;
-    maintainers = with maintainers; [ asymmetric ];
+    license = lib.licenses.mit;
+    maintainers = [ lib.maintainers.mjoerg ];
     mainProgram = "wormhole";
   };
 }
diff --git a/pkgs/development/python-modules/magika/default.nix b/pkgs/development/python-modules/magika/default.nix
index 6e4099004317..f2a7cbd85a11 100644
--- a/pkgs/development/python-modules/magika/default.nix
+++ b/pkgs/development/python-modules/magika/default.nix
@@ -16,13 +16,13 @@
 
 buildPythonPackage rec {
   pname = "magika";
-  version = "0.5.0";
+  version = "0.5.1";
   pyproject = true;
   disabled = pythonOlder "3.9";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-r6C7iDCG/o3JEvweQGb4upr+LuHvmNtkwtduZGehCsc=";
+    hash = "sha256-Q9wRU6FjcyciWmJqFVDAo5Wh1F6jPsH11GubCAI4vuA=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/python-modules/mahotas/default.nix b/pkgs/development/python-modules/mahotas/default.nix
index e5ad5a283db7..2c5f449c139f 100644
--- a/pkgs/development/python-modules/mahotas/default.nix
+++ b/pkgs/development/python-modules/mahotas/default.nix
@@ -12,14 +12,14 @@
 
 buildPythonPackage rec {
   pname = "mahotas";
-  version = "1.4.13";
+  version = "1.4.14";
   format = "setuptools";
 
   src = fetchFromGitHub {
     owner = "luispedro";
     repo = "mahotas";
-    rev = "v${version}";
-    hash = "sha256-AmctF/9hLgHw6FUm0s61eCdcc12lBa1t0OkXclis//w=";
+    rev = "refs/tags/v${version}";
+    hash = "sha256-9tjk3rhcfAYROZKwmwHzHAN7Ui0EgmxPErQyF//K0r8=";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/mako/default.nix b/pkgs/development/python-modules/mako/default.nix
index 0f512f8ec3a7..a1629b4cf366 100644
--- a/pkgs/development/python-modules/mako/default.nix
+++ b/pkgs/development/python-modules/mako/default.nix
@@ -22,7 +22,7 @@
 
 buildPythonPackage rec {
   pname = "mako";
-  version = "1.3.2";
+  version = "1.3.3";
   pyproject = true;
 
   disabled = pythonOlder "3.7";
@@ -30,7 +30,7 @@ buildPythonPackage rec {
   src = fetchPypi {
     pname = "Mako";
     inherit version;
-    hash = "sha256-KgyK1/YnQnGzu3Rn3TfPnMbatLwZy2mk7xBmlALeaY4=";
+    hash = "sha256-4WwB2aucEfcpDu8c/vwJP7WkXuSj2gni/sLk0brlTnM=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/python-modules/malduck/default.nix b/pkgs/development/python-modules/malduck/default.nix
index 0f15b6a1066c..204003bdddbc 100644
--- a/pkgs/development/python-modules/malduck/default.nix
+++ b/pkgs/development/python-modules/malduck/default.nix
@@ -1,34 +1,38 @@
-{ lib
-, buildPythonPackage
-, capstone
-, click
-, cryptography
-, dnfile
-, fetchFromGitHub
-, pefile
-, pycryptodomex
-, pyelftools
-, pythonOlder
-, pytestCheckHook
-, typing-extensions
-, yara-python
+{
+  lib,
+  buildPythonPackage,
+  capstone,
+  click,
+  cryptography,
+  dnfile,
+  fetchFromGitHub,
+  pefile,
+  pycryptodomex,
+  pyelftools,
+  pythonOlder,
+  setuptools,
+  pytestCheckHook,
+  typing-extensions,
+  yara-python,
 }:
 
 buildPythonPackage rec {
   pname = "malduck";
-  version = "4.4.0";
-  format = "setuptools";
+  version = "4.4.1";
+  pyproject = true;
 
-  disabled = pythonOlder "3.7";
+  disabled = pythonOlder "3.8";
 
   src = fetchFromGitHub {
     owner = "CERT-Polska";
-    repo = pname;
+    repo = "malduck";
     rev = "refs/tags/v${version}";
-    hash = "sha256-CXHbU1AudvOJrG9MKYDQXeEtwrJODRPQtK43dQzZASE=";
+    hash = "sha256-Btx0HxiZWrb0TDpBokQGtBE2EDK0htONe/DwqlPgAd4=";
   };
 
-  propagatedBuildInputs = [
+  build-system = [ setuptools ];
+
+  dependencies = [
     capstone
     click
     cryptography
@@ -40,26 +44,16 @@ buildPythonPackage rec {
     yara-python
   ];
 
-  postPatch = ''
-    substituteInPlace requirements.txt \
-      --replace "pefile==2019.4.18" "pefile" \
-      --replace "dnfile==0.11.0" "dnfile"
-  '';
-
-  nativeCheckInputs = [
-    pytestCheckHook
-  ];
+  nativeCheckInputs = [ pytestCheckHook ];
 
-  pythonImportsCheck = [
-    "malduck"
-  ];
+  pythonImportsCheck = [ "malduck" ];
 
   meta = with lib; {
     description = "Helper for malware analysis";
-    mainProgram = "malduck";
     homepage = "https://github.com/CERT-Polska/malduck";
     changelog = "https://github.com/CERT-Polska/malduck/releases/tag/v${version}";
     license = with licenses; [ bsd3 ];
     maintainers = with maintainers; [ fab ];
+    mainProgram = "malduck";
   };
 }
diff --git a/pkgs/development/python-modules/mandown/default.nix b/pkgs/development/python-modules/mandown/default.nix
index eae43bc8d951..d32696de51e9 100644
--- a/pkgs/development/python-modules/mandown/default.nix
+++ b/pkgs/development/python-modules/mandown/default.nix
@@ -9,6 +9,7 @@
 , filetype
 , lxml
 , natsort
+, nix-update-script
 , pillow
 , python-slugify
 , requests
@@ -18,14 +19,14 @@
 
 buildPythonPackage rec {
   pname = "mandown";
-  version = "1.7.0";
+  version = "1.8.2";
   pyproject = true;
 
   src = fetchFromGitHub {
     owner = "potatoeggy";
     repo = "mandown";
     rev = "refs/tags/v${version}";
-    hash = "sha256-oHa7/2fv+BG5KIKFIICYBqddub5SokDvAI6frbVwGSo=";
+    hash = "sha256-DSbxWff5pY7tjB9aXY8/rQJzCQyDN2+OrmP10uEeXWM=";
   };
 
   nativeBuildInputs = [
@@ -34,6 +35,7 @@ buildPythonPackage rec {
   ];
 
   pythonRelaxDeps = [
+    "lxml"
     "pillow"
     "typer"
   ];
@@ -55,6 +57,7 @@ buildPythonPackage rec {
     gui = [
       pyside6
     ];
+    updateScript = nix-update-script { };
   };
 
   pythonImportsCheck = [ "mandown" ];
diff --git a/pkgs/development/python-modules/manim-slides/default.nix b/pkgs/development/python-modules/manim-slides/default.nix
index 8f89346b81b8..f028035d53e7 100644
--- a/pkgs/development/python-modules/manim-slides/default.nix
+++ b/pkgs/development/python-modules/manim-slides/default.nix
@@ -34,7 +34,7 @@
 }:
 buildPythonPackage rec {
   pname = "manim-slides";
-  version = "5.1.5";
+  version = "5.1.6";
   pyproject = true;
 
   disabled = pythonOlder "3.9";
@@ -43,7 +43,7 @@ buildPythonPackage rec {
     owner = "jeertmans";
     repo = "manim-slides";
     rev = "refs/tags/v${version}";
-    hash = "sha256-YOveWGukizXvEUOhId7UDJema64ypbg7w06JzrTsKjw=";
+    hash = "sha256-BFfp/jeKBXr+Ukh0jNEtMPHlstlBjhSnvA803ddYoZE=";
   };
 
   build-system = [
diff --git a/pkgs/development/python-modules/markdown/default.nix b/pkgs/development/python-modules/markdown/default.nix
index f31af525f1e6..70bff8d2c854 100644
--- a/pkgs/development/python-modules/markdown/default.nix
+++ b/pkgs/development/python-modules/markdown/default.nix
@@ -10,28 +10,30 @@
 
 buildPythonPackage rec {
   pname = "markdown";
-  version = "3.5.2";
+  version = "3.6";
+  pyproject = true;
 
   disabled = pythonOlder "3.8";
 
-  pyproject = true;
-
   src = fetchFromGitHub {
     owner = "Python-Markdown";
     repo = "markdown";
     rev = "refs/tags/${version}";
-    hash = "sha256-YLOLDiS93zpjJWzkWXcutjZw9iB/FfbjxQXjau2B+JQ=";
+    hash = "sha256-jGo9/ZS2EhMDl/o1ref7Owqckuc7am578Ojmcz2aWIE=";
   };
 
-  nativeBuildInputs = [
+  build-system = [
     setuptools
   ];
 
-  propagatedBuildInputs = lib.optionals (pythonOlder "3.10") [
+  dependencies = lib.optionals (pythonOlder "3.10") [
     importlib-metadata
   ];
 
-  nativeCheckInputs = [ unittestCheckHook pyyaml ];
+  nativeCheckInputs = [
+    unittestCheckHook
+    pyyaml
+  ];
 
   pythonImportsCheck = [ "markdown" ];
 
diff --git a/pkgs/development/python-modules/marshmallow-dataclass/default.nix b/pkgs/development/python-modules/marshmallow-dataclass/default.nix
index 7b5b2932407a..4bb06720ca23 100644
--- a/pkgs/development/python-modules/marshmallow-dataclass/default.nix
+++ b/pkgs/development/python-modules/marshmallow-dataclass/default.nix
@@ -2,7 +2,6 @@
 , buildPythonPackage
 , fetchFromGitHub
 , marshmallow
-, marshmallow-enum
 , pytestCheckHook
 , pythonAtLeast
 , pythonOlder
@@ -15,7 +14,7 @@ buildPythonPackage rec {
   version = "8.6.1";
   format = "setuptools";
 
-  disabled = pythonOlder "3.6";
+  disabled = pythonOlder "3.7";
 
   src = fetchFromGitHub {
     owner = "lovasoa";
@@ -30,7 +29,6 @@ buildPythonPackage rec {
   ];
 
   nativeCheckInputs = [
-    marshmallow-enum
     pytestCheckHook
     typeguard
   ];
diff --git a/pkgs/development/python-modules/marshmallow-enum/default.nix b/pkgs/development/python-modules/marshmallow-enum/default.nix
deleted file mode 100644
index fdf2771deebd..000000000000
--- a/pkgs/development/python-modules/marshmallow-enum/default.nix
+++ /dev/null
@@ -1,43 +0,0 @@
-{ lib
-, buildPythonPackage
-, fetchFromGitHub
-, setuptools
-, marshmallow
-, pytest7CheckHook
-}:
-
-buildPythonPackage rec {
-  pname = "marshmallow-enum";
-  version = "1.5.1";
-  pyproject = true;
-
-  src = fetchFromGitHub {
-    owner = "justanr";
-    repo = "marshmallow_enum";
-    rev = "v${version}";
-    sha256 = "1ihrcmyfjabivg6hc44i59hnw5ijlg1byv3zs1rqxfynp8xr7398";
-  };
-
-  postPatch = ''
-    sed -i '/addopts/d' tox.ini
-  '';
-
-  build-system = [
-    setuptools
-  ];
-
-  dependencies = [
-    marshmallow
-  ];
-
-  nativeCheckInputs = [
-    pytest7CheckHook
-  ];
-
-  meta = with lib; {
-    description = "Enum field for Marshmallow";
-    homepage = "https://github.com/justanr/marshmallow_enum";
-    license = licenses.mit;
-    maintainers = [ ];
-  };
-}
diff --git a/pkgs/development/python-modules/mat2/default.nix b/pkgs/development/python-modules/mat2/default.nix
index 1646d3ac7246..fe627c8b99d5 100644
--- a/pkgs/development/python-modules/mat2/default.nix
+++ b/pkgs/development/python-modules/mat2/default.nix
@@ -9,7 +9,7 @@
 , exiftool
 , ffmpeg
 , mailcap
-, wrapGAppsHook
+, wrapGAppsHook3
 , gdk-pixbuf
 , gobject-introspection
 , librsvg
@@ -66,7 +66,7 @@ buildPythonPackage rec {
 
   nativeBuildInputs = [
     gobject-introspection
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
diff --git a/pkgs/development/python-modules/matlink-gpapi/default.nix b/pkgs/development/python-modules/matlink-gpapi/default.nix
index 3c3cda1bf8db..c88638e4391f 100644
--- a/pkgs/development/python-modules/matlink-gpapi/default.nix
+++ b/pkgs/development/python-modules/matlink-gpapi/default.nix
@@ -2,7 +2,6 @@
 , cryptography
 , fetchPypi
 , lib
-, pythonOlder
 , protobuf
 , pycryptodome
 , requests
@@ -12,7 +11,6 @@ buildPythonPackage rec {
   version = "0.4.4.5";
   format = "setuptools";
   pname = "matlink-gpapi";
-  disabled = pythonOlder "3.3"; # uses shutil.which(), added in 3.3
 
   src = fetchPypi {
     inherit version pname;
diff --git a/pkgs/development/python-modules/matplotlib-inline/default.nix b/pkgs/development/python-modules/matplotlib-inline/default.nix
index 90cbd00dc4d1..e35111fd191c 100644
--- a/pkgs/development/python-modules/matplotlib-inline/default.nix
+++ b/pkgs/development/python-modules/matplotlib-inline/default.nix
@@ -1,4 +1,8 @@
-{ lib, buildPythonPackage, fetchPypi
+{ lib
+, buildPythonPackage
+, fetchFromGitHub
+, pythonOlder
+, setuptools
 , traitlets
 
 # tests
@@ -7,15 +11,23 @@
 
 buildPythonPackage rec {
   pname = "matplotlib-inline";
-  version = "0.1.6";
-  format = "setuptools";
+  version = "0.1.7";
+  pyproject = true;
 
-  src = fetchPypi {
-    inherit pname version;
-    hash = "sha256-+Ifl8Qupjo0rFQ3c9HAsHl+LOiAAXrD3S/29Ng7m8wQ=";
+  disabled = pythonOlder "3.8";
+
+  src = fetchFromGitHub {
+    owner = "ipython";
+    repo = "matplotlib-inline";
+    rev = "refs/tags/${version}";
+    hash = "sha256-y7T8BshNa8NVWzH8oLS4dTAyhG+YmkkYQJFAyMXsJFA=";
   };
 
-  propagatedBuildInputs = [
+  build-system = [
+    setuptools
+  ];
+
+  dependencies = [
     traitlets
   ];
 
diff --git a/pkgs/development/python-modules/matplotlib/default.nix b/pkgs/development/python-modules/matplotlib/default.nix
index 788df3d9458e..a23b9540538c 100644
--- a/pkgs/development/python-modules/matplotlib/default.nix
+++ b/pkgs/development/python-modules/matplotlib/default.nix
@@ -12,7 +12,6 @@
 , pybind11
 , setuptools
 , setuptools-scm
-, wheel
 
 # native libraries
 , ffmpeg-headless
@@ -70,6 +69,9 @@
 # required for headless detection
 , libX11
 , wayland
+
+# Reverse dependency
+, sage
 }:
 
 let
@@ -77,15 +79,15 @@ let
 in
 
 buildPythonPackage rec {
-  version = "3.8.3";
+  version = "3.8.4";
   pname = "matplotlib";
-  format = "pyproject";
+  pyproject = true;
 
   disabled = pythonOlder "3.8";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-e0FiOemuOL5UsCirv5BIr/UFSpq6VBa+8L0X+RYs4WE=";
+    hash = "sha256-iqw5fV6ewViWDjHDgcX/xS3dUr2aR3F+KmlAOBZ9/+o=";
   };
 
   env.XDG_RUNTIME_DIR = "/tmp";
@@ -100,7 +102,10 @@ buildPythonPackage rec {
     let
       tcl_tk_cache = ''"${tk}/lib", "${tcl}/lib", "${lib.strings.substring 0 3 tk.version}"'';
     in
-    lib.optionalString enableTk ''
+    ''
+      substituteInPlace pyproject.toml \
+        --replace-fail '"numpy>=2.0.0rc1,<2.3",' ""
+    '' + lib.optionalString enableTk ''
       sed -i '/self.tcl_tk_cache = None/s|None|${tcl_tk_cache}|' setupext.py
     '' + lib.optionalString (stdenv.isLinux && interactive) ''
       # fix paths to libraries in dlopen calls (headless detection)
@@ -110,13 +115,7 @@ buildPythonPackage rec {
     '';
 
   nativeBuildInputs = [
-    certifi
-    numpy
     pkg-config
-    pybind11
-    setuptools
-    setuptools-scm
-    wheel
   ] ++ lib.optionals enableGtk3 [
     gobject-introspection
   ];
@@ -143,7 +142,15 @@ buildPythonPackage rec {
     "strictoverflow"
   ];
 
-  propagatedBuildInputs = [
+  build-system = [
+    certifi
+    numpy
+    pybind11
+    setuptools
+    setuptools-scm
+  ];
+
+  dependencies = [
     # explicit
     contourpy
     cycler
@@ -179,6 +186,8 @@ buildPythonPackage rec {
     };
   };
 
+  passthru.tests = { inherit sage; };
+
   env.MPLSETUPCFG = writeText "mplsetup.cfg" (lib.generators.toINI {} passthru.config);
 
   # Encountering a ModuleNotFoundError, as describved and investigated at:
diff --git a/pkgs/development/python-modules/maxminddb/default.nix b/pkgs/development/python-modules/maxminddb/default.nix
index 3f95408364db..100191643be8 100644
--- a/pkgs/development/python-modules/maxminddb/default.nix
+++ b/pkgs/development/python-modules/maxminddb/default.nix
@@ -9,14 +9,14 @@
 
 buildPythonPackage rec {
   pname = "maxminddb";
-  version = "2.5.2";
+  version = "2.6.1";
   format = "setuptools";
 
   disabled = pythonOlder "3.7";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-s8M+T8eCHubJ9Ag3EW4Wq2F1hj1KZO7gJMW+xoZpCoc=";
+    hash = "sha256-bF1ZH2JeA7CjTfDH/4FYBnY5e4M14T7OEwxuOeSjr7k=";
   };
 
   buildInputs = [
diff --git a/pkgs/development/python-modules/mayavi/default.nix b/pkgs/development/python-modules/mayavi/default.nix
index a34f98cdae39..ad41d36ee027 100644
--- a/pkgs/development/python-modules/mayavi/default.nix
+++ b/pkgs/development/python-modules/mayavi/default.nix
@@ -18,9 +18,11 @@
 
 buildPythonPackage rec {
   pname = "mayavi";
+  # TODO: Remove meta.broken on next release.
   version = "4.8.1";
   format = "setuptools";
-  disabled = pythonOlder "3.8" || pythonAtLeast "3.11";
+
+  disabled = pythonOlder "3.8";
 
   src = fetchPypi {
     inherit pname version;
@@ -85,5 +87,8 @@ buildPythonPackage rec {
     homepage = "https://github.com/enthought/mayavi";
     license = licenses.bsdOriginal;
     maintainers = with maintainers; [ knedlsepp ];
+    # Should be fixed in a version from after March 26, see:
+    # https://github.com/enthought/mayavi/issues/1284#issuecomment-2020631244
+    broken = pythonAtLeast "3.12";
   };
 }
diff --git a/pkgs/development/python-modules/mdformat-mkdocs/default.nix b/pkgs/development/python-modules/mdformat-mkdocs/default.nix
index 611c5b11dc0c..9415fee83d7a 100644
--- a/pkgs/development/python-modules/mdformat-mkdocs/default.nix
+++ b/pkgs/development/python-modules/mdformat-mkdocs/default.nix
@@ -14,7 +14,7 @@
 
 buildPythonPackage rec {
   pname = "mdformat-mkdocs";
-  version = "2.0.10";
+  version = "2.0.11";
   pyproject = true;
 
   disabled = pythonOlder "3.8";
@@ -23,7 +23,7 @@ buildPythonPackage rec {
     owner = "KyleKing";
     repo = "mdformat-mkdocs";
     rev = "refs/tags/v${version}";
-    hash = "sha256-N1VU9bOdVENIX6QsFa0jeVugmXjl3gNkVPS/m8gEB2Q=";
+    hash = "sha256-wx95Lsqgi7fM/1s6fSHxXOs396mIR9S9yCRebC2VFpI=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/python-modules/mdtraj/default.nix b/pkgs/development/python-modules/mdtraj/default.nix
index 971688348a1d..a99b36c78765 100644
--- a/pkgs/development/python-modules/mdtraj/default.nix
+++ b/pkgs/development/python-modules/mdtraj/default.nix
@@ -11,6 +11,7 @@
 , wheel
 , astunparse
 , numpy
+, packaging
 , pyparsing
 , scipy
 , gsd
@@ -39,9 +40,31 @@ buildPythonPackage rec {
       url = "https://github.com/mdtraj/mdtraj/commit/81209d00817ab07cfc4668bf5ec88088d16904c0.patch";
       hash = "sha256-ttNmij7csxF0Z5wPPwhGumRX055W2IgFjRAe6nI6GNY=";
     })
+    # remove pkg_resources usage
+    # https://github.com/mdtraj/mdtraj/pull/1837
+    (fetchpatch {
+      name = "fix-runtime-error.patch";
+      url = "https://github.com/mdtraj/mdtraj/commit/02d44d4db7039fceb199c85b4f993244804f470d.patch";
+      hash = "sha256-nhbi3iOrDSM87DyIp1KVt383Vvb6aYOgkjuYzviqiq8=";
+    })
+    # remove distutils usage
+    # https://github.com/mdtraj/mdtraj/pull/1834
+    (fetchpatch {
+      name = "python312-compatibility.patch";
+      url = "https://github.com/mdtraj/mdtraj/commit/95d79747deef42c976ca362a57806b61933409f3.patch";
+      hash = "sha256-Cq7/d745q6ZgAyWGM4ULnSsWezsbnu1CjSz5eqYSb+g=";
+    })
+    # disable intrinsics when SIMD is not available
+    # TODO: enable SIMD with python3.12
+    # https://github.com/mdtraj/mdtraj/pull/1884
+    (fetchpatch {
+      name = "fix-intrinsics-flag.patch";
+      url = "https://github.com/mdtraj/mdtraj/commit/d6041c645d51898e2a09030633210213eec7d4c5.patch";
+      hash = "sha256-kcnlHMoA/exJzV8iQltH+LWXrvSk7gsUV+yWK6xn0jg=";
+     })
   ];
 
-  nativeBuildInputs = [
+  build-system = [
     cython_0
     oldest-supported-numpy
     setuptools
@@ -54,9 +77,10 @@ buildPythonPackage rec {
     llvmPackages.openmp
   ];
 
-  propagatedBuildInputs = [
+  dependencies = [
     astunparse
     numpy
+    packaging
     pyparsing
     scipy
   ];
@@ -87,7 +111,9 @@ buildPythonPackage rec {
     "test_read_atomindices_2"
 
     # flaky test
+    "test_compare_rdf_t_master"
     "test_distances_t"
+    "test_precentered_2"
   ];
 
   pythonImportsCheck = [ "mdtraj" ];
diff --git a/pkgs/development/python-modules/mecab-python3/default.nix b/pkgs/development/python-modules/mecab-python3/default.nix
index e347aa107d7c..f661fad48846 100644
--- a/pkgs/development/python-modules/mecab-python3/default.nix
+++ b/pkgs/development/python-modules/mecab-python3/default.nix
@@ -9,14 +9,15 @@
 
 buildPythonPackage rec {
   pname = "mecab-python3";
-  version = "1.0.8";
+  version = "1.0.9";
   format = "setuptools";
 
   disabled = pythonOlder "3.7";
 
   src = fetchPypi {
-    inherit pname version;
-    hash = "sha256-cJiLqyY2lkVvddPYkQx1rqR3qdCAVK1++FvlRw3T9ls=";
+    pname = "mecab_python3";
+    inherit version;
+    hash = "sha256-LYkfSgEZ+3Zvp5bijYgaVXk6DDVE5EbP9k3JRq1yJ8w=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/python-modules/mechanize/default.nix b/pkgs/development/python-modules/mechanize/default.nix
index 3724fa64d06e..a84fe51da4f2 100644
--- a/pkgs/development/python-modules/mechanize/default.nix
+++ b/pkgs/development/python-modules/mechanize/default.nix
@@ -1,48 +1,32 @@
-{ lib
-, buildPythonPackage
-, fetchPypi
-, fetchpatch2
-, html5lib
-, pytestCheckHook
-, pythonOlder
-, setuptools
+{
+  lib,
+  buildPythonPackage,
+  fetchPypi,
+  html5lib,
+  pytestCheckHook,
+  pythonOlder,
+  setuptools,
 }:
 
 buildPythonPackage rec {
   pname = "mechanize";
-  version = "0.4.9";
+  version = "0.4.10";
   pyproject = true;
 
   disabled = pythonOlder "3.7";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-aaXtsJYvkh6LEINzaMIkLYrQSfC5H/aZzn9gG/xDFSE=";
+    hash = "sha256-HeqUf5vn6gq2EPe7xKTja0XWv9/O6imtPTiaiKGVfd8=";
   };
 
-  patches = [
-    (fetchpatch2 {
-      # python 3.11+ compat
-      url = "https://github.com/python-mechanize/mechanize/commit/1324b09b661aaac7d4cdc7e1e9d49e1c3851db2c.patch";
-      hash = "sha256-d0Zuz6m2Uv8pnR8TC0L+AStS82rPPTpQrrjkCZnJliE=";
-    })
-  ];
-
-  nativeBuildInputs = [
-    setuptools
-  ];
+  build-system = [ setuptools ];
 
-  propagatedBuildInputs = [
-    html5lib
-  ];
+  dependencies = [ html5lib ];
 
-  nativeCheckInputs = [
-    pytestCheckHook
-  ];
+  nativeCheckInputs = [ pytestCheckHook ];
 
-  pythonImportsCheck = [
-    "mechanize"
-  ];
+  pythonImportsCheck = [ "mechanize" ];
 
   disabledTestPaths = [
     # Tests require network access
diff --git a/pkgs/development/python-modules/meilisearch/default.nix b/pkgs/development/python-modules/meilisearch/default.nix
index e5e47b934fd3..4ad70db3281b 100644
--- a/pkgs/development/python-modules/meilisearch/default.nix
+++ b/pkgs/development/python-modules/meilisearch/default.nix
@@ -1,38 +1,35 @@
-{ lib
-, buildPythonPackage
-, camel-converter
-, fetchFromGitHub
-, pythonOlder
-, setuptools
-, requests
+{
+  lib,
+  buildPythonPackage,
+  camel-converter,
+  fetchFromGitHub,
+  pythonOlder,
+  setuptools,
+  requests,
 }:
 
 buildPythonPackage rec {
   pname = "meilisearch";
-  version = "0.31.0";
+  version = "0.31.1";
   pyproject = true;
 
-  disabled = pythonOlder "3.7";
+  disabled = pythonOlder "3.8";
 
   src = fetchFromGitHub {
     owner = "meilisearch";
     repo = "meilisearch-python";
     rev = "refs/tags/v${version}";
-    hash = "sha256-mgslzRd2hvDI0SbQR3eY2vzvaaOVI6mUihdNPKe4jcg=";
+    hash = "sha256-rD9f0J8Ez+WrpEyDZa3GVuBxj6Kv7McBzIuk9RtsjHk=";
   };
 
-  nativeBuildInputs = [
-    setuptools
-  ];
+  build-system = [ setuptools ];
 
-  propagatedBuildInputs = [
+  dependencies = [
     camel-converter
     requests
   ] ++ camel-converter.optional-dependencies.pydantic;
 
-  pythonImportsCheck = [
-    "meilisearch"
-  ];
+  pythonImportsCheck = [ "meilisearch" ];
 
   # Tests spin up a local server and are not mocking the requests
   doCheck = false;
diff --git a/pkgs/development/python-modules/memestra/default.nix b/pkgs/development/python-modules/memestra/default.nix
index db7d4e254a73..0bbf08a84698 100644
--- a/pkgs/development/python-modules/memestra/default.nix
+++ b/pkgs/development/python-modules/memestra/default.nix
@@ -6,7 +6,6 @@
 , gast
 , nbconvert
 , nbformat
-, pythonOlder
 , pyyaml
 }:
 
@@ -15,8 +14,6 @@ buildPythonPackage rec {
   version = "0.2.1";
   format = "setuptools";
 
-  disabled = pythonOlder "3.4";
-
   src = fetchPypi {
     inherit pname version;
     hash = "sha256-6shwf9BoDfZMy0itP8esNP4ov6fw6LJpO3Y5ZahwDZw=";
diff --git a/pkgs/development/python-modules/memory-allocator/default.nix b/pkgs/development/python-modules/memory-allocator/default.nix
index c4ddc5d06a1b..34dd55bb8dc6 100644
--- a/pkgs/development/python-modules/memory-allocator/default.nix
+++ b/pkgs/development/python-modules/memory-allocator/default.nix
@@ -2,6 +2,9 @@
 , fetchPypi
 , buildPythonPackage
 , cython
+
+# Reverse dependency
+, sage
 }:
 
 buildPythonPackage rec {
@@ -19,6 +22,8 @@ buildPythonPackage rec {
 
   pythonImportsCheck = [ "memory_allocator" ];
 
+  passthru.tests = { inherit sage; };
+
   meta = with lib; {
     description = "An extension class to allocate memory easily with cython";
     homepage = "https://github.com/sagemath/memory_allocator/";
diff --git a/pkgs/development/python-modules/meraki/default.nix b/pkgs/development/python-modules/meraki/default.nix
index f0d0e4087e36..1e1d3c3f67d6 100644
--- a/pkgs/development/python-modules/meraki/default.nix
+++ b/pkgs/development/python-modules/meraki/default.nix
@@ -8,14 +8,14 @@
 
 buildPythonPackage rec {
   pname = "meraki";
-  version = "1.45.0";
+  version = "1.46.0";
   format = "setuptools";
 
   disabled = pythonOlder "3.8";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-PBeeohKNzAMlEdAjzB8fsVPc+ml+mcaWHoVWPeP93Bo=";
+    hash = "sha256-f3K+59+9NO33GO1SBZhKfqHPO9p5kivDeLNd780cZu8=";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/meson-python/default.nix b/pkgs/development/python-modules/meson-python/default.nix
index 01912c906094..c92c0705aaae 100644
--- a/pkgs/development/python-modules/meson-python/default.nix
+++ b/pkgs/development/python-modules/meson-python/default.nix
@@ -13,13 +13,13 @@
 
 buildPythonPackage rec {
   pname = "meson-python";
-  version = "0.15.0";
+  version = "0.16.0";
   format = "pyproject";
 
   src = fetchPypi {
     inherit version;
     pname = "meson_python";
-    hash = "sha256-/dtz7s1J6JwcQch5N82JwtC2WhxjuigjhoHUvZSE0m8=";
+    hash = "sha256-kGjBfjbInWx/9wn/+yqKmSXozQsCYpco5c6vLsUFy18=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/python-modules/miasm/0001-setup.py-use-valid-semver.patch b/pkgs/development/python-modules/miasm/0001-setup.py-use-valid-semver.patch
new file mode 100644
index 000000000000..ac98a5fc4d30
--- /dev/null
+++ b/pkgs/development/python-modules/miasm/0001-setup.py-use-valid-semver.patch
@@ -0,0 +1,26 @@
+From c85780ce97798f332d627bd44cbbfa19c9ea565e Mon Sep 17 00:00:00 2001
+From: Moritz Sanft <58110325+msanft@users.noreply.github.com>
+Date: Sat, 11 May 2024 11:03:34 +0200
+Subject: [PATCH] setup.py: use valid semver
+
+Signed-off-by: Moritz Sanft <58110325+msanft@users.noreply.github.com>
+---
+ setup.py | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/setup.py b/setup.py
+index e1e54434..98e29fee 100644
+--- a/setup.py
++++ b/setup.py
+@@ -314,7 +314,7 @@ def build_all():
+         try:
+             s = setup(
+                 name = "miasm",
+-                version = __import__("miasm").VERSION,
++                version = "v0.0.0",
+                 packages = packages,
+                 data_files=[("", ["README.md"])],
+                 package_data = {
+-- 
+2.44.0
+
diff --git a/pkgs/development/python-modules/miasm/0002-core-remove-IDAPython-dependency.patch b/pkgs/development/python-modules/miasm/0002-core-remove-IDAPython-dependency.patch
new file mode 100644
index 000000000000..20262d8102b1
--- /dev/null
+++ b/pkgs/development/python-modules/miasm/0002-core-remove-IDAPython-dependency.patch
@@ -0,0 +1,65 @@
+From fd2a6b2899c8b836a086b43ec9ebccf726f71ec4 Mon Sep 17 00:00:00 2001
+From: Moritz Sanft <58110325+msanft@users.noreply.github.com>
+Date: Sat, 11 May 2024 11:04:19 +0200
+Subject: [PATCH] core: remove IDAPython dependency
+
+Signed-off-by: Moritz Sanft <58110325+msanft@users.noreply.github.com>
+---
+ miasm/core/bin_stream_ida.py | 45 ------------------------------------
+ 1 file changed, 45 deletions(-)
+ delete mode 100644 miasm/core/bin_stream_ida.py
+
+diff --git a/miasm/core/bin_stream_ida.py b/miasm/core/bin_stream_ida.py
+deleted file mode 100644
+index 15bd9d8b..00000000
+--- a/miasm/core/bin_stream_ida.py
++++ /dev/null
+@@ -1,45 +0,0 @@
+-from builtins import range
+-from idc import get_wide_byte, get_segm_end
+-from idautils import Segments
+-from idaapi import is_mapped
+-
+-from miasm.core.utils import int_to_byte
+-from miasm.core.bin_stream import bin_stream_str
+-
+-
+-class bin_stream_ida(bin_stream_str):
+-    """
+-    bin_stream implementation for IDA
+-
+-    Don't generate xrange using address computation:
+-    It can raise error on overflow 7FFFFFFF with 32 bit python
+-    """
+-    def _getbytes(self, start, l=1):
+-        out = []
+-        for ad in range(l):
+-            offset = ad + start + self.base_address
+-            if not is_mapped(offset):
+-                raise IOError(f"not enough bytes @ offset {offset:x}")
+-            out.append(int_to_byte(get_wide_byte(offset)))
+-        return b''.join(out)
+-
+-    def readbs(self, l=1):
+-        if self.offset + l > self.l:
+-            raise IOError("not enough bytes")
+-        content = self.getbytes(self.offset)
+-        self.offset += l
+-        return content
+-
+-    def __str__(self):
+-        raise NotImplementedError('Not fully functional')
+-
+-    def setoffset(self, val):
+-        self.offset = val
+-
+-    def getlen(self):
+-        # Lazy version
+-        if hasattr(self, "_getlen"):
+-            return self._getlen
+-        max_addr = get_segm_end(list(Segments())[-1]  - (self.offset - self.base_address))
+-        self._getlen = max_addr
+-        return max_addr
+-- 
+2.44.0
+
diff --git a/pkgs/development/python-modules/miasm/default.nix b/pkgs/development/python-modules/miasm/default.nix
new file mode 100644
index 000000000000..4d220bf97662
--- /dev/null
+++ b/pkgs/development/python-modules/miasm/default.nix
@@ -0,0 +1,58 @@
+{ buildPythonPackage
+, fetchFromGitHub
+, lib
+, future
+, gcc
+, llvmlite
+, parameterized
+, pycparser
+, pyparsing
+, z3-solver
+, setuptools
+}:
+let
+  commit = "90dc1671b59077ee27c3d44d9d536d6659eb3bbe";
+in
+buildPythonPackage rec {
+  pname = "miasm";
+  version = "0.1.5-unstable-2024-04-28";
+
+  pyproject = true;
+  build-system = [ setuptools ];
+
+  src = fetchFromGitHub {
+    owner = "cea-sec";
+    repo = "miasm";
+    rev = commit;
+    hash = "sha256-nkRcirJLmTwSL7lwd+Yk6mteU3YPnm5ekJ4eFF5FmYo=";
+  };
+
+  patches = [
+    #  Use a valid semver as now required by setuptools
+    ./0001-setup.py-use-valid-semver.patch
+
+    # Removes the (unfree) IDAPython dependency
+    ./0002-core-remove-IDAPython-dependency.patch
+  ];
+
+  dependencies = [
+    future
+    llvmlite
+    parameterized
+    pycparser
+    pyparsing
+    z3-solver
+  ];
+
+  buildInputs = [ gcc ];
+
+  pythonImportsCheck = [ "miasm" ];
+
+  meta = {
+    description = "Reverse engineering framework in Python";
+    homepage = "https://github.com/cea-sec/miasm";
+    changelog = "https://github.com/cea-sec/miasm/blob/${commit}/CHANGELOG.md";
+    license = lib.licenses.gpl2Plus;
+    maintainers = with lib.maintainers; [ msanft ];
+  };
+}
diff --git a/pkgs/development/python-modules/minari/default.nix b/pkgs/development/python-modules/minari/default.nix
new file mode 100644
index 000000000000..45c3f0fc36ec
--- /dev/null
+++ b/pkgs/development/python-modules/minari/default.nix
@@ -0,0 +1,88 @@
+{ lib
+, buildPythonPackage
+, pythonOlder
+, fetchFromGitHub
+, setuptools
+, wheel
+, google-cloud-storage
+, gymnasium
+, h5py
+, numpy
+, packaging
+, portion
+, rich
+, tqdm
+, typer
+, typing-extensions
+, imageio
+, nbmake
+, pytest
+, pytest-markdown-docs
+, pytestCheckHook
+}:
+
+buildPythonPackage rec {
+  pname = "minari";
+  version = "0.4.3";
+  pyproject = true;
+
+  disabled = pythonOlder "3.8";
+
+  src = fetchFromGitHub {
+    owner = "Farama-Foundation";
+    repo = "Minari";
+    rev = "refs/tags/v${version}";
+    hash = "sha256-DwuANo0PCb2pPTVST8EwuJHe5HKRV8JIpFBpSqoJNh8=";
+  };
+
+  build-system = [
+    setuptools
+    wheel
+  ];
+
+  dependencies = [
+    google-cloud-storage
+    gymnasium
+    h5py
+    numpy
+    packaging
+    portion
+    rich
+    tqdm
+    typer
+    typing-extensions
+  ];
+
+  passthru.optional-dependencies = {
+    testing = [
+      # gymnasium-robotics
+      imageio
+      nbmake
+      pytest
+      pytest-markdown-docs
+    ];
+  };
+
+  pythonImportsCheck = [
+    "minari"
+  ];
+
+  nativeCheckInputs = [
+    pytestCheckHook
+  ];
+
+  disabledTestPaths = [
+    # Require internet access
+    "tests/dataset/test_dataset_download.py"
+    "tests/test_cli.py"
+  ];
+
+  meta = with lib; {
+    description = "A standard format for offline reinforcement learning datasets, with popular reference datasets and related utilities";
+    homepage = "https://github.com/Farama-Foundation/Minari";
+    changelog = "https://github.com/Farama-Foundation/Minari/releases/tag/v${version}";
+    license = with licenses; [ asl20 mit ];
+    maintainers = with maintainers; [ GaetanLepage ];
+    mainProgram = "minari";
+  };
+}
diff --git a/pkgs/development/python-modules/mindsdb-evaluator/default.nix b/pkgs/development/python-modules/mindsdb-evaluator/default.nix
index 9cc654911fc5..311f8761bc44 100644
--- a/pkgs/development/python-modules/mindsdb-evaluator/default.nix
+++ b/pkgs/development/python-modules/mindsdb-evaluator/default.nix
@@ -12,7 +12,7 @@
 
 buildPythonPackage rec {
   pname = "mindsdb-evaluator";
-  version = "0.0.12";
+  version = "0.0.13";
   pyproject = true;
 
   disabled = pythonOlder "3.8";
@@ -21,7 +21,7 @@ buildPythonPackage rec {
   src = fetchPypi {
     pname = "mindsdb_evaluator";
     inherit version;
-    hash = "sha256-SqcBtoY7WZcorAaoyhqNDscf1MkSz0pE993mz1MRXCU=";
+    hash = "sha256-SW3GYe9ykbs6ZViScdAgwiBAP9ix4v1VbSm/kJK2jDA=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/python-modules/minidb/default.nix b/pkgs/development/python-modules/minidb/default.nix
index 8bd0aea36ca4..20a2eba687d2 100644
--- a/pkgs/development/python-modules/minidb/default.nix
+++ b/pkgs/development/python-modules/minidb/default.nix
@@ -1,14 +1,16 @@
-{ lib
-, buildPythonPackage
-, fetchFromGitHub
-, pytestCheckHook
-, pythonOlder
+{
+  lib,
+  buildPythonPackage,
+  fetchFromGitHub,
+  pytestCheckHook,
+  pythonOlder,
+  setuptools,
 }:
 
 buildPythonPackage rec {
   pname = "minidb";
-  version = "2.0.7";
-  format = "setuptools";
+  version = "2.0.8";
+  pyproject = true;
 
   disabled = pythonOlder "3.7";
 
@@ -16,16 +18,14 @@ buildPythonPackage rec {
     owner = "thp";
     repo = "minidb";
     rev = "refs/tags/${version}";
-    hash = "sha256-0f2usKoHs4NO/Ir8MhyiAVZFYnUkVH5avdh3QdHzY6s=";
+    hash = "sha256-e7wVR+xr+5phNoRnGIxnmrjB1QU9JmyfQiu88PYapA8=";
   };
 
-  nativeCheckInputs = [
-    pytestCheckHook
-  ];
+  build-system = [ setuptools ];
 
-  pythonImportsCheck = [
-    "minidb"
-  ];
+  nativeCheckInputs = [ pytestCheckHook ];
+
+  pythonImportsCheck = [ "minidb" ];
 
   meta = with lib; {
     description = "SQLite3-based store for Python objects";
@@ -34,4 +34,3 @@ buildPythonPackage rec {
     maintainers = with maintainers; [ tv ];
   };
 }
-
diff --git a/pkgs/development/python-modules/mizani/default.nix b/pkgs/development/python-modules/mizani/default.nix
index f6761ad445f9..c0620198144f 100644
--- a/pkgs/development/python-modules/mizani/default.nix
+++ b/pkgs/development/python-modules/mizani/default.nix
@@ -12,7 +12,7 @@
 
 buildPythonPackage rec {
   pname = "mizani";
-  version = "0.11.2";
+  version = "0.11.3";
   pyproject = true;
 
   disabled = pythonOlder "3.9";
@@ -21,14 +21,14 @@ buildPythonPackage rec {
     owner = "has2k1";
     repo = "mizani";
     rev = "refs/tags/v${version}";
-    hash = "sha256-tOydQvRZcY052Xh98NbFUezc55JJ8LRj0REIAzpcCp0=";
+    hash = "sha256-aEataiB432yKnQ80TxJvsU9DO9wI4ZVGq1k73qeuEv0=";
   };
 
-  nativeBuildInputs = [
+  build-system = [
     setuptools-scm
   ];
 
-  propagatedBuildInputs = [
+  dependencies = [
     matplotlib
     palettable
     pandas
diff --git a/pkgs/development/python-modules/mkdocs-git-authors-plugin/default.nix b/pkgs/development/python-modules/mkdocs-git-authors-plugin/default.nix
index 01eb0fa2375e..ddb611da7fb8 100644
--- a/pkgs/development/python-modules/mkdocs-git-authors-plugin/default.nix
+++ b/pkgs/development/python-modules/mkdocs-git-authors-plugin/default.nix
@@ -7,7 +7,7 @@
 
 buildPythonPackage rec {
   pname = "mkdocs-git-authors-plugin";
-  version = "0.8.0";
+  version = "0.9.0";
   format = "setuptools";
 
   disabled = pythonOlder "3.7";
@@ -16,7 +16,7 @@ buildPythonPackage rec {
     owner = "timvink";
     repo = "mkdocs-git-authors-plugin";
     rev = "refs/tags/v${version}";
-    hash = "sha256-ie6kDrj7ulmdQ7w3n7MnKgIWs321uPFxpQC3DNUGsTg=";
+    hash = "sha256-UomcEXWNt5aVE9JxP9wskkHkFYXKN/+jXwr1SXCmeyE=";
   };
 
   propagatedBuildInputs = [ mkdocs ];
diff --git a/pkgs/development/python-modules/mkdocs-git-revision-date-localized-plugin/default.nix b/pkgs/development/python-modules/mkdocs-git-revision-date-localized-plugin/default.nix
index c885727a2538..0a76166dd406 100644
--- a/pkgs/development/python-modules/mkdocs-git-revision-date-localized-plugin/default.nix
+++ b/pkgs/development/python-modules/mkdocs-git-revision-date-localized-plugin/default.nix
@@ -12,7 +12,7 @@
 
 buildPythonPackage rec {
   pname = "mkdocs-git-revision-date-localized-plugin";
-  version = "1.2.4";
+  version = "1.2.5";
   format = "setuptools";
 
   disabled = pythonOlder "3.7";
@@ -21,7 +21,7 @@ buildPythonPackage rec {
     owner = "timvink";
     repo = "mkdocs-git-revision-date-localized-plugin";
     rev = "refs/tags/v${version}";
-    hash = "sha256-sN3cuRjB3zkwp0xYoH20IJ8edXqi5rw66e3N4DuNqVU=";
+    hash = "sha256-cezL65Wsdaa9W4dGLgTz1x3UFrDRDJaGuttr58CBcuw=";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/mkdocs-rss-plugin/default.nix b/pkgs/development/python-modules/mkdocs-rss-plugin/default.nix
index 5328c196c31e..a11dd831e8bb 100644
--- a/pkgs/development/python-modules/mkdocs-rss-plugin/default.nix
+++ b/pkgs/development/python-modules/mkdocs-rss-plugin/default.nix
@@ -14,7 +14,7 @@
 
 buildPythonPackage rec {
   pname = "mkdocs-rss-plugin";
-  version = "1.12.1";
+  version = "1.12.2";
   pyproject = true;
 
   disabled = pythonOlder "3.9";
@@ -23,7 +23,7 @@ buildPythonPackage rec {
     owner = "Guts";
     repo = "mkdocs-rss-plugin";
     rev = "refs/tags/${version}";
-    hash = "sha256-cLQfhMYW/9Eb+IamQIC7fZRTm/ORD8xbcrmKkSkUrMs=";
+    hash = "sha256-CeVt4Vkr3tGvWsDQtw8eAaRS5jBeDei0TrS5rViSCaI=";
   };
 
   postPatch = ''
diff --git a/pkgs/development/python-modules/mkdocs-swagger-ui-tag/default.nix b/pkgs/development/python-modules/mkdocs-swagger-ui-tag/default.nix
index 62f5286747f0..06fb3a3f02a9 100644
--- a/pkgs/development/python-modules/mkdocs-swagger-ui-tag/default.nix
+++ b/pkgs/development/python-modules/mkdocs-swagger-ui-tag/default.nix
@@ -11,7 +11,7 @@
 
 buildPythonPackage rec {
   pname = "mkdocs-swagger-ui-tag";
-  version = "0.6.9";
+  version = "0.6.10";
   format = "setuptools";
 
   disabled = pythonOlder "3.7";
@@ -20,7 +20,7 @@ buildPythonPackage rec {
     owner = "Blueswen";
     repo = "mkdocs-swagger-ui-tag";
     rev = "refs/tags/v${version}";
-    hash = "sha256-4cRElwF8AOvTLZJq1NF9Yqa7g44uiT96giyhqKZKp5M=";
+    hash = "sha256-Wfctu8rqj2HxPgXYMeL5Hovet8yjol7RfLH233Gl+v4=";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/mkdocstrings-python/default.nix b/pkgs/development/python-modules/mkdocstrings-python/default.nix
index 7a57a73338ad..5e634d2da0ea 100644
--- a/pkgs/development/python-modules/mkdocstrings-python/default.nix
+++ b/pkgs/development/python-modules/mkdocstrings-python/default.nix
@@ -12,7 +12,7 @@
 
 buildPythonPackage rec {
   pname = "mkdocstrings-python";
-  version = "1.9.2";
+  version = "1.10.2";
   pyproject = true;
 
   disabled = pythonOlder "3.8";
@@ -21,7 +21,7 @@ buildPythonPackage rec {
     owner = "mkdocstrings";
     repo = "python";
     rev = "refs/tags/${version}";
-    hash = "sha256-UJSDnkdohFn+U7i5fYiRVMLZZ8Nyb0fdihBZl2z2RBc=";
+    hash = "sha256-Dz74q7bsa8bInxn4RpP9MFXFDEL2yWifDe64K8AOl8k=";
   };
 
   build-system = [ pdm-backend ];
diff --git a/pkgs/development/python-modules/mkdocstrings/default.nix b/pkgs/development/python-modules/mkdocstrings/default.nix
index f82916c3a784..011442e70f2a 100644
--- a/pkgs/development/python-modules/mkdocstrings/default.nix
+++ b/pkgs/development/python-modules/mkdocstrings/default.nix
@@ -17,7 +17,7 @@
 
 buildPythonPackage rec {
   pname = "mkdocstrings";
-  version = "0.25.0";
+  version = "0.25.1";
   pyproject = true;
 
   disabled = pythonOlder "3.8";
@@ -26,7 +26,7 @@ buildPythonPackage rec {
     owner = "mkdocstrings";
     repo = "mkdocstrings";
     rev = "refs/tags/${version}";
-    hash = "sha256-VKjK58KK9x5RCc7VVy46zax42ySCv2NzqAat+XF+3a8=";
+    hash = "sha256-Z4mX6EXEFmNd/CNa39hN9mwJSv9OkqwEmWMzJ9r+EBM=";
   };
 
   postPatch = ''
diff --git a/pkgs/development/python-modules/mlflow/default.nix b/pkgs/development/python-modules/mlflow/default.nix
index 371db9450996..cf1a43e9c3ba 100644
--- a/pkgs/development/python-modules/mlflow/default.nix
+++ b/pkgs/development/python-modules/mlflow/default.nix
@@ -38,14 +38,14 @@
 
 buildPythonPackage rec {
   pname = "mlflow";
-  version = "2.12.1";
+  version = "2.12.2";
   pyproject = true;
 
   disabled = pythonOlder "3.8";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-qpKuuyN5qcVITL6QHN93nVQIrJamQeSx+KLR/5dNt8k=";
+    hash = "sha256-1xLxr51E8eueG67oymT3MR4YW3Vy/DweCoOkyM7/aq0=";
   };
 
   # Remove currently broken dependency `shap`, a model explainability package.
diff --git a/pkgs/development/python-modules/mock-open/default.nix b/pkgs/development/python-modules/mock-open/default.nix
index 704054c46c04..413c5f832d29 100644
--- a/pkgs/development/python-modules/mock-open/default.nix
+++ b/pkgs/development/python-modules/mock-open/default.nix
@@ -1,4 +1,4 @@
-{ lib, buildPythonPackage, fetchFromGitHub, fetchpatch, pythonOlder, mock }:
+{ lib, buildPythonPackage, fetchFromGitHub }:
 
 buildPythonPackage rec {
   pname = "mock-open";
@@ -13,15 +13,6 @@ buildPythonPackage rec {
     sha256 = "0qlz4y8jqxsnmqg03yp9f87rmnjrvmxm5qvm6n1218gm9k5dixbm";
   };
 
-  patches = lib.optional (pythonOlder "3.0")
-    (fetchpatch {
-      name = "ascii-only.patch";
-      url = "https://github.com/das-g/mock-open/commit/521ff260da127949fe4aceff1667cba223c5b07b.patch";
-      sha256 = "0ampbhk7kwkn0q5d2h9wrflkr8fji2bybmdck4qdzw1qkslfwwrn";
-    });
-
-  propagatedBuildInputs = lib.optional (pythonOlder "3.3") mock;
-
   meta = with lib; {
     homepage = "https://github.com/nivbend/mock-open";
     description = "A better mock for file I/O";
diff --git a/pkgs/development/python-modules/mocket/default.nix b/pkgs/development/python-modules/mocket/default.nix
index 2a44707bff1b..116e85ce2c34 100644
--- a/pkgs/development/python-modules/mocket/default.nix
+++ b/pkgs/development/python-modules/mocket/default.nix
@@ -35,12 +35,12 @@
 
 buildPythonPackage rec {
   pname = "mocket";
-  version = "3.12.4";
+  version = "3.12.5";
   pyproject = true;
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-O+IRX59Z4D188XEmiSCT8H3sg1jhtaboHS3QINEnE0s=";
+    hash = "sha256-6yWo7SBlVldK+AxUBnQOXjQBxz9HbIC+Ch977xiZxek=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/python-modules/monty/default.nix b/pkgs/development/python-modules/monty/default.nix
index a2af96582ca5..e88b9d585d2e 100644
--- a/pkgs/development/python-modules/monty/default.nix
+++ b/pkgs/development/python-modules/monty/default.nix
@@ -17,7 +17,7 @@
 
 buildPythonPackage rec {
   pname = "monty";
-  version = "2024.3.31";
+  version = "2024.4.17";
   pyproject = true;
 
   disabled = pythonOlder "3.9";
@@ -26,7 +26,7 @@ buildPythonPackage rec {
     owner = "materialsvirtuallab";
     repo = "monty";
     rev = "refs/tags/v${version}";
-    hash = "sha256-Gg9KTsS7Np11jYBA8MgblQM6OmzOM/MPLsVZ6fUKT6g=";
+    hash = "sha256-UqpRkw6F8RAvchq0HBSfdHHO8Lgg+yLdBku+wsPKg0E=";
   };
 
   postPatch = ''
diff --git a/pkgs/development/python-modules/mpegdash/default.nix b/pkgs/development/python-modules/mpegdash/default.nix
new file mode 100644
index 000000000000..3480c4dcafd8
--- /dev/null
+++ b/pkgs/development/python-modules/mpegdash/default.nix
@@ -0,0 +1,36 @@
+{
+  lib,
+  buildPythonPackage,
+  fetchFromGitHub,
+  pytestCheckHook,
+  setuptools,
+}:
+buildPythonPackage rec {
+  pname = "mpegdash";
+  version = "0.4.0";
+  pyproject = true;
+
+  src = fetchFromGitHub {
+    owner = "sangwonl";
+    repo = "python-mpegdash";
+    rev = version;
+    hash = "sha256-eKtJ+QzeoMog5X1r1ix9vrmGTi/9KzdJiu80vrTX14I=";
+  };
+
+  nativeBuildInputs = [ setuptools ];
+  nativeCheckInputs = [ pytestCheckHook ];
+
+  disabledTests = [
+    # requires network access
+    "test_xml2mpd_from_url"
+  ];
+
+  pythonImportsCheck = [ "mpegdash" ];
+
+  meta = {
+    description = "MPEG-DASH MPD(Media Presentation Description) Parser";
+    homepage = "https://github.com/sangwonl/python-mpegdash";
+    license = lib.licenses.mit;
+    maintainers = with lib.maintainers; [ drawbu ];
+  };
+}
diff --git a/pkgs/development/python-modules/mplhep/default.nix b/pkgs/development/python-modules/mplhep/default.nix
index cbf4e46b499e..845d9942f741 100644
--- a/pkgs/development/python-modules/mplhep/default.nix
+++ b/pkgs/development/python-modules/mplhep/default.nix
@@ -16,12 +16,12 @@
 
 buildPythonPackage rec {
   pname = "mplhep";
-  version = "0.3.47";
+  version = "0.3.48";
   format = "pyproject";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-GDLI/Y6tWiI5JcmQJ7BnwvKPGwdAwJDN4yGOgINcdB8=";
+    hash = "sha256-rAIiaTTSf1xINdadjHk32KOpW4SMg8jdwFt8z1oiLis=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/python-modules/mpmath/default.nix b/pkgs/development/python-modules/mpmath/default.nix
index 1a8e4c030979..20e7049ac370 100644
--- a/pkgs/development/python-modules/mpmath/default.nix
+++ b/pkgs/development/python-modules/mpmath/default.nix
@@ -5,6 +5,9 @@
 , isPyPy
 , setuptools
 , pytestCheckHook
+
+# Reverse dependency
+, sage
 }:
 
 buildPythonPackage rec {
@@ -29,6 +32,8 @@ buildPythonPackage rec {
     ];
   };
 
+  passthru.tests = { inherit sage; };
+
   nativeCheckInputs = [
     pytestCheckHook
   ];
diff --git a/pkgs/development/python-modules/msgraph-sdk/default.nix b/pkgs/development/python-modules/msgraph-sdk/default.nix
index 7dc4e3fd062f..5740955f6d63 100644
--- a/pkgs/development/python-modules/msgraph-sdk/default.nix
+++ b/pkgs/development/python-modules/msgraph-sdk/default.nix
@@ -17,7 +17,7 @@
 
 buildPythonPackage rec {
   pname = "msgraph-sdk";
-  version = "1.2.0";
+  version = "1.4.0";
   pyproject = true;
 
   disabled = pythonOlder "3.8";
@@ -26,7 +26,7 @@ buildPythonPackage rec {
     owner = "microsoftgraph";
     repo = "msgraph-sdk-python";
     rev = "refs/tags/v${version}";
-    hash = "sha256-UaGdusPGWlF7gTzpCq9WrF/evdDSK5srrkH8/Vz9O8M=";
+    hash = "sha256-afnxk79duKzTykNnSHPE6lZhMkOt+9JhEskj/KjQpQI=";
   };
 
   build-system = [ setuptools ];
diff --git a/pkgs/development/python-modules/mujoco/default.nix b/pkgs/development/python-modules/mujoco/default.nix
index 9237dbb6501c..3c8787488523 100644
--- a/pkgs/development/python-modules/mujoco/default.nix
+++ b/pkgs/development/python-modules/mujoco/default.nix
@@ -17,7 +17,7 @@
 
 buildPythonPackage rec {
   pname = "mujoco";
-  version = "3.1.4";
+  version = "3.1.5";
 
   pyproject = true;
 
@@ -27,7 +27,7 @@ buildPythonPackage rec {
   # in the project's CI.
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-GdeL1zMri/ArjXyjXTgan48WVPTHDA1/SZxtTYB8QFk=";
+    hash = "sha256-kJm6YAE0HMnji3uUuO96ZzRsdjj6PpT1IHQ6NXiR8pY=";
   };
 
   nativeBuildInputs = [ cmake setuptools ];
diff --git a/pkgs/development/python-modules/mypy-protobuf/default.nix b/pkgs/development/python-modules/mypy-protobuf/default.nix
index 0010e40800ec..73e0a331799a 100644
--- a/pkgs/development/python-modules/mypy-protobuf/default.nix
+++ b/pkgs/development/python-modules/mypy-protobuf/default.nix
@@ -1,45 +1,59 @@
-{ lib
-, fetchPypi
-, buildPythonPackage
-, protobuf
-, types-protobuf
-, grpcio-tools
-, pytestCheckHook
-, pythonOlder
+{
+  buildPythonPackage,
+  fetchPypi,
+  grpcio-tools,
+  lib,
+  mypy-protobuf,
+  protobuf,
+  pytestCheckHook,
+  pythonOlder,
+  pythonRelaxDepsHook,
+  setuptools,
+  testers,
+  types-protobuf,
 }:
 
 buildPythonPackage rec {
   pname = "mypy-protobuf";
-  version = "3.5.0";
-  format = "pyproject";
+  version = "3.6.0";
+  pyproject = true;
 
   disabled = pythonOlder "3.8";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-IfJw2gqXkqnax2sN9GPAJ+VhZkq2lzxZvk5NBk3+Z9w=";
+    hash = "sha256-AvJC6zQJ9miJ8rGjqlg1bsTZCc3Q+TEVYi6ecDZuyjw=";
   };
 
-  propagatedBuildInputs = [
+  nativeBuildInputs = [ pythonRelaxDepsHook ];
+
+  pythonRelaxDeps = [ "protobuf" ];
+
+  build-system = [ setuptools ];
+
+  dependencies = [
+    grpcio-tools
     protobuf
     types-protobuf
-    grpcio-tools
   ];
 
   doCheck = false; # ModuleNotFoundError: No module named 'testproto'
 
-  nativeCheckInputs = [
-    pytestCheckHook
-  ];
+  nativeCheckInputs = [ pytestCheckHook ];
 
-  pythonImportsCheck = [
-    "mypy_protobuf"
-  ];
+  pythonImportsCheck = [ "mypy_protobuf" ];
+
+  passthru.tests.version = testers.testVersion {
+    package = mypy-protobuf;
+    command = "${lib.getExe mypy-protobuf} --version";
+  };
 
-  meta = with lib; {
+  meta = {
+    changelog = "https://github.com/nipunn1313/mypy-protobuf/blob/v${version}/CHANGELOG.md";
     description = "Generate mypy stub files from protobuf specs";
-    homepage = "https://github.com/dropbox/mypy-protobuf";
-    license = licenses.asl20;
-    maintainers = with maintainers; [ lnl7 ];
+    homepage = "https://github.com/nipunn1313/mypy-protobuf";
+    license = lib.licenses.asl20;
+    mainProgram = "protoc-gen-mypy";
+    maintainers = with lib.maintainers; [ lnl7 ];
   };
 }
diff --git a/pkgs/development/python-modules/myst-docutils/default.nix b/pkgs/development/python-modules/myst-docutils/default.nix
index 66c07489dfaa..8fa7ddd6e934 100644
--- a/pkgs/development/python-modules/myst-docutils/default.nix
+++ b/pkgs/development/python-modules/myst-docutils/default.nix
@@ -13,13 +13,13 @@
 
 buildPythonPackage rec {
   pname = "myst-docutils";
-  version = "2.0.0";
+  version = "3.0.1";
   format = "pyproject";
 
   src = fetchPypi {
     pname = "myst_docutils";
     inherit version;
-    hash = "sha256-WmmPEg+bINmeId+pjR6bbp8qzjfSXfEel+sQEdPIu8Y=";
+    hash = "sha256-alQvF0OWNjDck022ORJ1Nl4t1jgzMZKEbJxPHsrmBcI=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/python-modules/myst-parser/default.nix b/pkgs/development/python-modules/myst-parser/default.nix
index e485b768a750..12ddb2ec769e 100644
--- a/pkgs/development/python-modules/myst-parser/default.nix
+++ b/pkgs/development/python-modules/myst-parser/default.nix
@@ -4,6 +4,7 @@
 , fetchpatch
 , flit-core
 , pythonOlder
+, defusedxml
 , docutils
 , jinja2
 , markdown-it-py
@@ -16,6 +17,7 @@
 , pytest-regressions
 , sphinx-pytest
 , pytestCheckHook
+, pythonRelaxDepsHook
 }:
 
 buildPythonPackage rec {
@@ -40,7 +42,10 @@ buildPythonPackage rec {
     })
   ];
 
-  nativeBuildInputs = [ flit-core ];
+  nativeBuildInputs = [
+    flit-core
+    pythonRelaxDepsHook
+  ];
 
   propagatedBuildInputs = [
     docutils
@@ -54,6 +59,7 @@ buildPythonPackage rec {
 
   nativeCheckInputs = [
     beautifulsoup4
+    defusedxml
     pytest-param-files
     pytest-regressions
     sphinx-pytest
@@ -64,6 +70,10 @@ buildPythonPackage rec {
     "myst_parser"
   ];
 
+  pythonRelaxDeps = [
+    "docutils"
+  ];
+
   disabledTests = [
     # AssertionError due to different files
     "test_basic"
@@ -72,6 +82,9 @@ buildPythonPackage rec {
     "test_fieldlist_extension"
     # docutils 0.19 expectation mismatches
     "test_docutils_roles"
+    # sphinx 7.0 expectation mismatches
+    "test_heading_slug_func"
+    "test_references_singlehtml"
     # sphinx 6.0 expectation mismatches
     "test_sphinx_directives"
     # sphinx 5.3 expectation mismatches
diff --git a/pkgs/development/python-modules/nanobind/default.nix b/pkgs/development/python-modules/nanobind/default.nix
index 27460b65a8db..9e632ff0f1b2 100644
--- a/pkgs/development/python-modules/nanobind/default.nix
+++ b/pkgs/development/python-modules/nanobind/default.nix
@@ -51,8 +51,10 @@ buildPythonPackage rec {
     scipy
     torch
     tensorflow
-    jax
-    jaxlib
+    # Uncomment at next release (1.9.3)
+    # See https://github.com/wjakob/nanobind/issues/578
+    # jax
+    # jaxlib
   ];
 
   meta = with lib; {
diff --git a/pkgs/development/python-modules/nanomsg-python/default.nix b/pkgs/development/python-modules/nanomsg-python/default.nix
index 06b2ed5f634f..1125b88c0e4e 100644
--- a/pkgs/development/python-modules/nanomsg-python/default.nix
+++ b/pkgs/development/python-modules/nanomsg-python/default.nix
@@ -1,22 +1,35 @@
-{ lib, buildPythonPackage, fetchFromGitHub, nanomsg }:
+{
+  lib,
+  buildPythonPackage,
+  fetchFromGitHub,
+  nanomsg,
+  setuptools,
+  pythonOlder,
+}:
 
 buildPythonPackage {
   pname = "nanomsg-python";
   version = "1.0.20190114";
-  format = "setuptools";
+  pyproject = true;
+
+  disabled = pythonOlder "3.7";
 
   src = fetchFromGitHub {
     owner = "tonysimpson";
     repo = "nanomsg-python";
     rev = "3acd9160f90f91034d4a43ce603aaa19fbaf1f2e";
-    sha256 = "1qgybcpmm9xxrn39alcgdcpvwphgm1glkbnwx0ljpz4nd1jsnyrl";
+    hash = "sha256-NHurZWiW/Csp6NyuSV+oD16+L2uPUZWGzb2nWi9b/uE=";
   };
 
+  build-system = [ setuptools ];
+
   buildInputs = [ nanomsg ];
 
   # Tests requires network connections
   doCheck = false;
 
+  pythonImportsCheck = [ "nanomsg" ];
+
   meta = with lib; {
     description = "Bindings for nanomsg";
     homepage = "https://github.com/tonysimpson/nanomsg-python";
diff --git a/pkgs/development/python-modules/nanotime/default.nix b/pkgs/development/python-modules/nanotime/default.nix
index aeabc540eb00..d41126916b0b 100644
--- a/pkgs/development/python-modules/nanotime/default.nix
+++ b/pkgs/development/python-modules/nanotime/default.nix
@@ -1,24 +1,31 @@
-{ lib, buildPythonPackage, fetchPypi, nose }:
+{
+  lib,
+  buildPythonPackage,
+  fetchPypi,
+  setuptools,
+  pythonOlder,
+}:
 
 buildPythonPackage rec {
   pname = "nanotime";
   version = "0.5.2";
-  format = "setuptools";
+  pyproject = true;
+
+  disabled = pythonOlder "3.7";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "c7cc231fc5f6db401b448d7ab51c96d0a4733f4b69fabe569a576f89ffdf966b";
+    hash = "sha256-x8wjH8X220AbRI16tRyW0KRzP0tp+r5Wmldvif/flms=";
   };
 
-  nativeCheckInputs = [ nose ];
-
-  checkPhase = ''
-    nosetests
-  '';
+  build-system = [ setuptools ];
 
-  # tests currently fail
+  # Tests currently failing
+  # https://github.com/jbenet/nanotime/issues/2
   doCheck = false;
 
+  pythonImportsCheck = [ "nanotime" ];
+
   meta = with lib; {
     description = "Provides a time object that keeps time as the number of nanoseconds since the UNIX epoch";
     homepage = "https://github.com/jbenet/nanotime/tree/master/python";
diff --git a/pkgs/development/python-modules/napari-console/default.nix b/pkgs/development/python-modules/napari-console/default.nix
index 9072ada93f42..07b8d735736a 100644
--- a/pkgs/development/python-modules/napari-console/default.nix
+++ b/pkgs/development/python-modules/napari-console/default.nix
@@ -1,47 +1,44 @@
-{ lib
-, buildPythonPackage
-, fetchFromGitHub
-, imageio
-, ipykernel
-, ipython
-, napari-plugin-engine
-, pythonOlder
-, qtconsole
-, setuptools-scm
+{
+  lib,
+  buildPythonPackage,
+  fetchFromGitHub,
+  imageio,
+  ipykernel,
+  ipython,
+  napari-plugin-engine,
+  pythonOlder,
+  qtconsole,
+  qtpy,
+  setuptools-scm,
 }:
 
 buildPythonPackage rec {
   pname = "napari-console";
-  version = "0.0.7";
-  format = "pyproject";
+  version = "0.0.9";
+  pyproject = true;
 
   disabled = pythonOlder "3.8";
 
   src = fetchFromGitHub {
     owner = "napari";
-    repo = pname;
+    repo = "napari-console";
     rev = "refs/tags/v${version}";
-    hash = "sha256-vHLCVMgrcs54pGb48wQpc0h7QBIfE6r7hCSoDNI3QvA=";
+    hash = "sha256-3gOfiPx06G5c4eaLQ5kP45hUr6yw91esznJFacpO66Q=";
   };
 
-  nativeBuildInputs = [
-    setuptools-scm
-  ];
+  build-system = [ setuptools-scm ];
 
-  propagatedBuildInputs = [
-    imageio
+  dependencies = [
     ipykernel
     ipython
-    napari-plugin-engine
     qtconsole
+    qtpy
   ];
 
   # Circular dependency: napari
   doCheck = false;
 
-  pythonImportsCheck = [
-    "napari_console"
-  ];
+  pythonImportsCheck = [ "napari_console" ];
 
   meta = with lib; {
     description = "A plugin that adds a console to napari";
diff --git a/pkgs/development/python-modules/napari/default.nix b/pkgs/development/python-modules/napari/default.nix
index 0bccb016570c..b5baed96a441 100644
--- a/pkgs/development/python-modules/napari/default.nix
+++ b/pkgs/development/python-modules/napari/default.nix
@@ -1,67 +1,69 @@
-{ lib
-, mkDerivationWith
-, appdirs
-, app-model
-, buildPythonPackage
-, cachey
-, certifi
-, dask
-, docstring-parser
-, fetchFromGitHub
-, imageio
-, jsonschema
-, magicgui
-, napari-console
-, napari-npe2
-, napari-svg
-, numpydoc
-, pint
-, psutil
-, pydantic
-, pyopengl
-, pillow
-, pythonOlder
-, pyyaml
-, scikit-image
-, scipy
-, setuptools-scm
-, sphinx
-, superqt
-, tifffile
-, toolz
-, tqdm
-, typing-extensions
-, vispy
-, wrapQtAppsHook
-, wrapt
+{
+  lib,
+  app-model,
+  appdirs,
+  buildPythonPackage,
+  cachey,
+  certifi,
+  dask,
+  docstring-parser,
+  fetchFromGitHub,
+  imageio,
+  jsonschema,
+  magicgui,
+  mkDerivationWith,
+  napari-console,
+  napari-npe2,
+  napari-svg,
+  numpydoc,
+  pandas,
+  pillow,
+  pint,
+  psutil,
+  pydantic,
+  pyopengl,
+  pythonOlder,
+  pyyaml,
+  scikit-image,
+  scipy,
+  setuptools,
+  setuptools-scm,
+  superqt,
+  tifffile,
+  toolz,
+  tqdm,
+  typing-extensions,
+  vispy,
+  wrapQtAppsHook,
+  wrapt,
 }:
 
 mkDerivationWith buildPythonPackage rec {
   pname = "napari";
   version = "0.4.19.post1";
-  format = "pyproject";
+  pyproject = true;
 
-  disabled = pythonOlder "3.8";
+  disabled = pythonOlder "3.9";
 
   src = fetchFromGitHub {
     owner = "napari";
-    repo = pname;
+    repo = "napari";
     rev = "refs/tags/v${version}";
     hash = "sha256-qw5WdFPySNkmm+dNu+hqsmr+csBpHnSl9bMpb4nKEqI=";
   };
 
   postPatch = ''
     substituteInPlace setup.cfg \
-      --replace "scikit-image>=0.19.1" "scikit-image" \
-      --replace "sphinx<5" "sphinx" \
-      --replace "vispy>=0.11.0,<0.12" "vispy"
+      --replace-fail "scikit-image[data]>=0.19.1" "scikit-image"
   '';
 
-  nativeBuildInputs = [
+  build-system = [
+    setuptools
     setuptools-scm
-    wrapQtAppsHook
   ];
 
+  nativeBuildInputs = [ wrapQtAppsHook ];
+
   propagatedBuildInputs = [
     app-model
     appdirs
@@ -76,15 +78,15 @@ mkDerivationWith buildPythonPackage rec {
     napari-npe2
     napari-svg
     numpydoc
-    pint
+    pandas
     pillow
+    pint
     psutil
     pydantic
     pyopengl
     pyyaml
     scikit-image
     scipy
-    sphinx
     superqt
     tifffile
     toolz
diff --git a/pkgs/development/python-modules/nats-python/default.nix b/pkgs/development/python-modules/nats-python/default.nix
index 9662dddd5ddb..f93b2feab69c 100644
--- a/pkgs/development/python-modules/nats-python/default.nix
+++ b/pkgs/development/python-modules/nats-python/default.nix
@@ -1,41 +1,39 @@
-{ lib
-, buildPythonPackage
-, fetchFromGitHub
-, fetchpatch
-, poetry-core
-, pythonOlder
-, setuptools
+{
+  lib,
+  buildPythonPackage,
+  fetchFromGitHub,
+  fetchpatch,
+  poetry-core,
+  pythonOlder,
+  setuptools,
 }:
 
 buildPythonPackage rec {
   pname = "nats-python";
   version = "0.8.0";
-  disabled = pythonOlder "3.6";
-  format = "pyproject";
+  pyproject = true;
+
+  disabled = pythonOlder "3.7";
 
   src = fetchFromGitHub {
     owner = "Gr1N";
     repo = "nats-python";
-    rev = version;
-    sha256 = "1j7skyxldir3mphvnsyhjxmf3cimv4h7n5v58jl2gff4yd0hdw7g";
+    rev = "refs/tags/${version}";
+    hash = "sha256-7/AGQfPEuSeoRGUXeyDZNbLhapfQa7vhrSPHRruf+sg=";
   };
 
-  nativeBuildInputs = [
-    poetry-core
-  ];
-
   patches = [
     # Switch to poetry-core, https://github.com/Gr1N/nats-python/pull/19
     (fetchpatch {
       name = "use-poetry-core.patch";
       url = "https://github.com/Gr1N/nats-python/commit/71b25b324212dccd7fc06ba3914491adba22e83f.patch";
-      sha256 = "1fip1qpzk2ka7qgkrdpdr6vnrnb1p8cwapa51xp0h26nm7yis1gl";
+      hash = "sha256-9AUd/anWCAhuD0VdxRm6Ydlst8nttjwfPmqK+S8ON7o=";
     })
   ];
 
-  propagatedBuildInputs = [
-    setuptools
-  ];
+  build-system = [ poetry-core ];
+
+  dependencies = [ setuptools ];
 
   # Tests require a running NATS server
   doCheck = false;
@@ -45,6 +43,7 @@ buildPythonPackage rec {
   meta = with lib; {
     description = "Python client for NATS messaging system";
     homepage = "https://github.com/Gr1N/nats-python";
+    changelog = "https://github.com/Gr1N/nats-python/releases/tag/${version}";
     license = with licenses; [ mit ];
     maintainers = with maintainers; [ fab ];
   };
diff --git a/pkgs/development/python-modules/naturalsort/default.nix b/pkgs/development/python-modules/naturalsort/default.nix
index 9d7572fb0f70..8be9da8328f2 100644
--- a/pkgs/development/python-modules/naturalsort/default.nix
+++ b/pkgs/development/python-modules/naturalsort/default.nix
@@ -1,20 +1,36 @@
-{ lib, buildPythonPackage, fetchFromGitHub }:
+{
+  lib,
+  buildPythonPackage,
+  fetchFromGitHub,
+  pytestCheckHook,
+  pythonOlder,
+  setuptools,
+}:
 
 buildPythonPackage rec {
   pname = "naturalsort";
   version = "1.5.1";
-  format = "setuptools";
+  pyproject = true;
+
+  disabled = pythonOlder "3.7";
 
   src = fetchFromGitHub {
     owner = "xolox";
     repo = "python-naturalsort";
-    rev = version;
-    sha256 = "0w43vlddzh97hffnvxp2zkrns9qyirx5g8ijxnxkbx1c4b4gq5ih";
+    rev = "refs/tags/${version}";
+    hash = "sha256-MBb8yCIs9DW77TKiV3qOHidt8/zi9m2dgyfB3xrdg3A=";
   };
 
+  build-system = [ setuptools ];
+
+  nativeCheckInputs = [ pytestCheckHook ];
+
+  pythonImportsCheck = [ "natsort" ];
+
   meta = with lib; {
     description = "Simple natural order sorting API for Python that just works";
     homepage = "https://github.com/xolox/python-naturalsort";
+    changelog = "https://github.com/xolox/python-naturalsort/releases/tag/${version}";
     license = licenses.mit;
     maintainers = with maintainers; [ eyjhb ];
   };
diff --git a/pkgs/development/python-modules/nbconvert/default.nix b/pkgs/development/python-modules/nbconvert/default.nix
index b80f75dc4549..4375b18486d2 100644
--- a/pkgs/development/python-modules/nbconvert/default.nix
+++ b/pkgs/development/python-modules/nbconvert/default.nix
@@ -33,14 +33,14 @@ let
   };
 in buildPythonPackage rec {
   pname = "nbconvert";
-  version = "7.16.3";
+  version = "7.16.4";
   pyproject = true;
 
   disabled = pythonOlder "3.8";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-pnM7eM49R8P4XlBJmElbB+bqnPm/bsHJjdpj7GrRkUI=";
+    hash = "sha256-hsqRuiZrCkSNyW+mxbnZiv+r3ihns2MlhwNTaAf59/Q=";
   };
 
   # Add $out/share/jupyter to the list of paths that are used to search for
diff --git a/pkgs/development/python-modules/nbdev/default.nix b/pkgs/development/python-modules/nbdev/default.nix
index ee82753ae822..4178f611e43d 100644
--- a/pkgs/development/python-modules/nbdev/default.nix
+++ b/pkgs/development/python-modules/nbdev/default.nix
@@ -15,14 +15,14 @@
 
 buildPythonPackage rec {
   pname = "nbdev";
-  version = "2.3.14";
+  version = "2.3.21";
   pyproject = true;
 
   disabled = pythonOlder "3.7";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-9Tacr4mWmjXspKKCkFDWYeT7KkBh4/3f6UOkfj0/leg=";
+    hash = "sha256-H3KHnVOdy+Hdpka+dxp/qPj1HZSXIbXJshnZuXVo9DQ=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/python-modules/nbmake/default.nix b/pkgs/development/python-modules/nbmake/default.nix
new file mode 100644
index 000000000000..03606d7b0787
--- /dev/null
+++ b/pkgs/development/python-modules/nbmake/default.nix
@@ -0,0 +1,74 @@
+{ lib
+, buildPythonPackage
+, pythonOlder
+, fetchFromGitHub
+, poetry-core
+, pythonRelaxDepsHook
+, setuptools
+, wheel
+, ipykernel
+, nbclient
+, nbformat
+, pygments
+, pytest
+, pyyaml
+, pytest-xdist
+, pytestCheckHook
+, typing-extensions
+}:
+
+buildPythonPackage rec {
+  pname = "nbmake";
+  version = "1.5.3";
+  pyproject = true;
+
+  disabled = pythonOlder "3.8";
+
+  src = fetchFromGitHub {
+    owner = "treebeardtech";
+    repo = "nbmake";
+    rev = "refs/tags/v${version}";
+    hash = "sha256-sX0YqyBchLlo0QPIpLvl11/gwoiZknG5rBDzmQKiXhs=";
+  };
+
+  build-system = [
+    poetry-core
+    pythonRelaxDepsHook
+    setuptools
+    wheel
+  ];
+
+  dependencies = [
+    ipykernel
+    nbclient
+    nbformat
+    pygments
+    pytest
+    pyyaml
+  ];
+
+  pythonRelaxDeps = [
+    "nbclient"
+  ];
+
+  pythonImportsCheck = [
+    "nbmake"
+  ];
+
+  nativeCheckInputs = [
+    pytest-xdist
+    pytestCheckHook
+    typing-extensions
+  ];
+
+  __darwinAllowLocalNetworking = true;
+
+
+  meta = with lib; {
+    description = "Pytest plugin for testing notebooks";
+    homepage = "https://github.com/treebeardtech/nbmake";
+    changelog = "https://github.com/treebeardtech/nbmake/releases/tag/v${version}";
+    license = licenses.asl20;
+    maintainers = with maintainers; [ GaetanLepage ];
+  };
+}
diff --git a/pkgs/development/python-modules/nbsphinx/default.nix b/pkgs/development/python-modules/nbsphinx/default.nix
index de0d972aa986..8fd5a9ce5263 100644
--- a/pkgs/development/python-modules/nbsphinx/default.nix
+++ b/pkgs/development/python-modules/nbsphinx/default.nix
@@ -1,6 +1,7 @@
 { lib
 , buildPythonPackage
 , fetchPypi
+, setuptools
 , docutils
 , jinja2
 , nbconvert
@@ -12,17 +13,21 @@
 
 buildPythonPackage rec {
   pname = "nbsphinx";
-  version = "0.9.3";
-  format = "setuptools";
+  version = "0.9.4";
+  pyproject = true;
 
   disabled = pythonOlder "3.7";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-7DOchpG2iPhnYQSjZ6S4zz6gH9CJ3CjSTewi1WOxFWI=";
+    hash = "sha256-BCpggG/CPVGbxb71nZVXBxORP+RC/adZ1T46r2IQR5Q=";
   };
 
-  propagatedBuildInputs = [
+  build-system = [
+    setuptools
+  ];
+
+  dependencies = [
     docutils
     jinja2
     nbconvert
diff --git a/pkgs/development/python-modules/neo/default.nix b/pkgs/development/python-modules/neo/default.nix
index d23d2fdc57ed..d4b5265ba8ed 100644
--- a/pkgs/development/python-modules/neo/default.nix
+++ b/pkgs/development/python-modules/neo/default.nix
@@ -11,14 +11,14 @@
 
 buildPythonPackage rec {
   pname = "neo";
-  version = "0.13.0";
+  version = "0.13.1";
   pyproject = true;
 
   disabled = pythonOlder "3.7";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-VnXR+jgaU8LH7ri16SnsA5neILsLUkU+G5nsbWbckfM=";
+    hash = "sha256-gVhbKLZaTciakucc7TlCxdv9qnG90sw4U3G3ebVlTK0=";
   };
 
   nativeBuildInputs = [ setuptools ];
diff --git a/pkgs/development/python-modules/netcdf4/default.nix b/pkgs/development/python-modules/netcdf4/default.nix
index 39994519db17..72b03ef5d7f6 100644
--- a/pkgs/development/python-modules/netcdf4/default.nix
+++ b/pkgs/development/python-modules/netcdf4/default.nix
@@ -7,6 +7,7 @@
 , oldest-supported-numpy
 , setuptools
 , wheel
+, certifi
 , numpy
 , zlib
 , netcdf
@@ -19,7 +20,7 @@
 
 buildPythonPackage rec {
   pname = "netcdf4";
-  version = "1.6.2";
+  version = "1.6.5";
   format = "pyproject";
 
   disabled = isPyPy;
@@ -27,7 +28,7 @@ buildPythonPackage rec {
   src = fetchPypi {
     pname = "netCDF4";
     inherit version;
-    hash = "sha256-A4KwL/aiiEGfb/7IXexA9FH0G4dVVHFUxXXd2fD0rlM=";
+    hash = "sha256-gkiB0KrP3lvZgtat7dhXQlnIVVN4HnuD4M6CuJC/oO8=";
   };
 
   nativeBuildInputs = [
@@ -38,6 +39,7 @@ buildPythonPackage rec {
   ];
 
   propagatedBuildInputs = [
+    certifi
     cftime
     numpy
     zlib
diff --git a/pkgs/development/python-modules/nethsm/default.nix b/pkgs/development/python-modules/nethsm/default.nix
index 902fa62e3387..9120b29638fc 100644
--- a/pkgs/development/python-modules/nethsm/default.nix
+++ b/pkgs/development/python-modules/nethsm/default.nix
@@ -12,7 +12,7 @@
 
 let
   pname = "nethsm";
-  version = "1.0.0";
+  version = "1.1.0";
 in
 
 buildPythonPackage {
@@ -21,7 +21,7 @@ buildPythonPackage {
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-sENuSdA4pYt8v2w2RvDkcQLYCP9V0vZOdWOlkNBi3/o=";
+    hash = "sha256-CQhheHQ0BlfznKjoOSRvbDtnlTvv/SLtl0GWd7LUSt8=";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/nettigo-air-monitor/default.nix b/pkgs/development/python-modules/nettigo-air-monitor/default.nix
index a33f9d528630..f450b85abd1e 100644
--- a/pkgs/development/python-modules/nettigo-air-monitor/default.nix
+++ b/pkgs/development/python-modules/nettigo-air-monitor/default.nix
@@ -16,7 +16,7 @@
 
 buildPythonPackage rec {
   pname = "nettigo-air-monitor";
-  version = "3.0.0";
+  version = "3.0.1";
   pyproject = true;
 
   disabled = pythonOlder "3.11";
@@ -25,7 +25,7 @@ buildPythonPackage rec {
     owner = "bieniu";
     repo = "nettigo-air-monitor";
     rev = "refs/tags/${version}";
-    hash = "sha256-aiJoY+6sNfBmE1057UuMjV80hjVJ29t2X16IIe6dxWs=";
+    hash = "sha256-Ysvyg2cj09Bb+xpNPapYAQSBDKfGsYZcHj9xxIR8KGw=";
   };
 
   build-system = [ setuptools ];
diff --git a/pkgs/development/python-modules/netutils/default.nix b/pkgs/development/python-modules/netutils/default.nix
index 93b1d2b2e3bb..50473f84651d 100644
--- a/pkgs/development/python-modules/netutils/default.nix
+++ b/pkgs/development/python-modules/netutils/default.nix
@@ -15,7 +15,7 @@
 
 buildPythonPackage rec {
   pname = "netutils";
-  version = "1.8.0";
+  version = "1.8.1";
   pyproject = true;
 
   disabled = pythonOlder "3.8";
@@ -24,7 +24,7 @@ buildPythonPackage rec {
     owner = "networktocode";
     repo = "netutils";
     rev = "refs/tags/v${version}";
-    hash = "sha256-Eqs/YkU2XrjD7x2WgvvR89/Pdi9AW9vhw3alJ8kIDgc=";
+    hash = "sha256-09SRSzA1RiBhJjq+dlln23myWvXFhr8krsPz7N80JKw=";
   };
 
   build-system = [ poetry-core ];
diff --git a/pkgs/development/python-modules/networkx/default.nix b/pkgs/development/python-modules/networkx/default.nix
index 0c4993cdd694..ac0bd456bcda 100644
--- a/pkgs/development/python-modules/networkx/default.nix
+++ b/pkgs/development/python-modules/networkx/default.nix
@@ -19,19 +19,22 @@
 # tests
 , pytest-xdist
 , pytestCheckHook
+
+# reverse dependency
+, sage
 }:
 
 buildPythonPackage rec {
   pname = "networkx";
   # upgrade may break sage, please test the sage build or ping @timokau on upgrade
-  version = "3.2.1";
+  version = "3.3";
   pyproject = true;
 
   disabled = pythonOlder "3.8";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-nxu1zzQJvzJOCnIsIL20wg7jm/HDDOiuSZyFArC14MY=";
+    hash = "sha256-DBJ9iy9IZfWa6cuKr81gtccPMkHr1m997618SrkBJsk=";
   };
 
   nativeBuildInputs = [
@@ -53,6 +56,8 @@ buildPythonPackage rec {
     ];
   };
 
+  passthru.tests = { inherit sage; };
+
   nativeCheckInputs = [
     pytest-xdist
     pytestCheckHook
diff --git a/pkgs/development/python-modules/niaaml/default.nix b/pkgs/development/python-modules/niaaml/default.nix
index 855908721490..d2b9868cacac 100644
--- a/pkgs/development/python-modules/niaaml/default.nix
+++ b/pkgs/development/python-modules/niaaml/default.nix
@@ -14,7 +14,7 @@
 
 buildPythonPackage rec {
   pname = "niaaml";
-  version = "1.2.0";
+  version = "2.0.0";
   pyproject = true;
 
   disabled = pythonOlder "3.9";
@@ -23,7 +23,7 @@ buildPythonPackage rec {
     owner = "lukapecnik";
     repo = "NiaAML";
     rev = "refs/tags/${version}";
-    hash = "sha256-jGbsxYlRJ81g74LqSKpquciPsLP+KSoNBTJPEaD/CHM=";
+    hash = "sha256-d6UlpMrT0GBZlcD1BCZxInXTdyFMBVltxnSyUFbSy0g=";
   };
 
   pythonRelaxDeps = [
diff --git a/pkgs/development/python-modules/nidaqmx/default.nix b/pkgs/development/python-modules/nidaqmx/default.nix
index 7c010a224340..04ae611925db 100644
--- a/pkgs/development/python-modules/nidaqmx/default.nix
+++ b/pkgs/development/python-modules/nidaqmx/default.nix
@@ -5,8 +5,6 @@
 , numpy
 , pytestCheckHook
 , pykka
-, enum34
-, pythonOlder
 , pythonAtLeast
 }:
 
@@ -32,8 +30,6 @@ buildPythonPackage rec {
   propagatedBuildInputs = [
     numpy
     six
-  ] ++ lib.optionals (pythonOlder "3.4") [
-    enum34
   ];
 
   nativeCheckInputs = [
diff --git a/pkgs/development/python-modules/nilearn/default.nix b/pkgs/development/python-modules/nilearn/default.nix
index ce7cdee635b3..c4088ca7e42d 100644
--- a/pkgs/development/python-modules/nilearn/default.nix
+++ b/pkgs/development/python-modules/nilearn/default.nix
@@ -17,14 +17,14 @@
 
 buildPythonPackage rec {
   pname = "nilearn";
-  version = "0.10.3";
+  version = "0.10.4";
   pyproject = true;
 
   disabled = pythonOlder "3.8";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-d4GTMTFMTKXBXAdjT2n4Vfr9+a3QUbGILjpgCtUnV9g=";
+    hash = "sha256-lFC9Vqd22ZezJPRd0Yv5bom9jYAWCXT8x1kzP7rqNcI=";
   };
 
   nativeBuildInputs = [ hatch-vcs ];
diff --git a/pkgs/development/python-modules/nocasedict/default.nix b/pkgs/development/python-modules/nocasedict/default.nix
index 9d727ec0ecba..eb9677438e62 100644
--- a/pkgs/development/python-modules/nocasedict/default.nix
+++ b/pkgs/development/python-modules/nocasedict/default.nix
@@ -7,12 +7,12 @@
 
 buildPythonPackage rec {
   pname = "nocasedict";
-  version = "2.0.1";
+  version = "2.0.3";
   format = "setuptools";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-lgy2mfEgnagKw546tQqnNC/oyp9wYGwjRHpRBVBDXlA=";
+    hash = "sha256-HJImx/WoqXrVHcsK4xV6cg4/fLnEVo0i6joF4/hWWKk=";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/nocaselist/default.nix b/pkgs/development/python-modules/nocaselist/default.nix
index fcad1844e2f6..dd667c0a3c71 100644
--- a/pkgs/development/python-modules/nocaselist/default.nix
+++ b/pkgs/development/python-modules/nocaselist/default.nix
@@ -8,14 +8,14 @@
 
 buildPythonPackage rec {
   pname = "nocaselist";
-  version = "2.0.0";
+  version = "2.0.2";
   format = "setuptools";
 
   disabled = pythonOlder "3.7";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-RWqgAMZ3fF0hsCnFLlMvlDKNT7TxWtKk3T3WLbMLOJI=";
+    hash = "sha256-MnCLcAoaUxM+a7XMUzMsl3Wwx8lZpflyV5MXH9L0yKU=";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/noiseprotocol/default.nix b/pkgs/development/python-modules/noiseprotocol/default.nix
index d1cc83e517ad..8192e2dd4f30 100644
--- a/pkgs/development/python-modules/noiseprotocol/default.nix
+++ b/pkgs/development/python-modules/noiseprotocol/default.nix
@@ -1,18 +1,30 @@
-{ lib, buildPythonPackage, fetchFromGitHub, cryptography, pytestCheckHook }:
+{
+  lib,
+  buildPythonPackage,
+  cryptography,
+  fetchFromGitHub,
+  pytestCheckHook,
+  pythonOlder,
+  setuptools,
+}:
 
 buildPythonPackage rec {
   pname = "noiseprotocol";
   version = "0.3.1";
-  format = "setuptools";
+  pyproject = true;
+
+  disabled = pythonOlder "3.7";
 
   src = fetchFromGitHub {
     owner = "plizonczyk";
     repo = "noiseprotocol";
-    rev = "v${version}";
-    sha256 = "1mk0rqpjifdv3v1cjwkdnjbrfmzzjm9f3qqs1r8vii4j2wvhm6am";
+    rev = "refs/tags/v${version}";
+    hash = "sha256-VZkKNxeSxLhRDhrj4VKV/1eXl7RtcsnCHru5KC/OYNY=";
   };
 
-  propagatedBuildInputs = [ cryptography ];
+  build-system = [ setuptools ];
+
+  dependencies = [ cryptography ];
 
   nativeCheckInputs = [ pytestCheckHook ];
 
@@ -21,6 +33,7 @@ buildPythonPackage rec {
   meta = with lib; {
     description = "Noise Protocol Framework";
     homepage = "https://github.com/plizonczyk/noiseprotocol/";
+    changelog = "https://github.com/plizonczyk/noiseprotocol/blob/v${version}/CHANGELOG.rst";
     license = licenses.mit;
     maintainers = with maintainers; [ ];
   };
diff --git a/pkgs/development/python-modules/normality/default.nix b/pkgs/development/python-modules/normality/default.nix
index 862b3af92958..966e399b2478 100644
--- a/pkgs/development/python-modules/normality/default.nix
+++ b/pkgs/development/python-modules/normality/default.nix
@@ -1,43 +1,48 @@
-{ lib
-, fetchFromGitHub
-, buildPythonPackage
-, text-unidecode
-, chardet
-, banal
-, pyicu
-, pytestCheckHook
+{
+  lib,
+  fetchFromGitHub,
+  buildPythonPackage,
+  setuptools,
+  setuptools-scm,
+  text-unidecode,
+  charset-normalizer,
+  chardet,
+  banal,
+  pyicu,
+  pytestCheckHook,
 }:
 buildPythonPackage rec {
   pname = "normality";
-  version = "2.2.5";
-  format = "setuptools";
+  version = "2.5.0";
+  pyproject = true;
 
   src = fetchFromGitHub {
     owner = "pudo";
     repo = "normality";
     rev = version;
-    sha256 = "n8Ycm5DeFItmMJTolazZKGIyN7CTg2ajDCwi/UqzVe8=";
+    hash = "sha256-cGQpNhUqlT2B9wKDoDeDmyCNQLwWR7rTCLxnPHhMR0w=";
   };
 
+  buildInputs = [
+    setuptools
+    setuptools-scm
+  ];
+
   propagatedBuildInputs = [
+    charset-normalizer
     text-unidecode
     chardet
     banal
     pyicu
   ];
 
-  nativeCheckInputs = [
-    pytestCheckHook
-  ];
-
-  pythonImportsCheck = [
-    "normality"
-  ];
+  nativeCheckInputs = [ pytestCheckHook ];
+  pythonImportsCheck = [ "normality" ];
 
   meta = with lib; {
     description = "Micro-library to normalize text strings";
     homepage = "https://github.com/pudo/normality";
     license = licenses.mit;
-    maintainers = [ ];
+    maintainers = with lib.maintainers; [ sigmanificient ];
   };
 }
diff --git a/pkgs/development/python-modules/nose-xunitmp/default.nix b/pkgs/development/python-modules/nose-xunitmp/default.nix
new file mode 100644
index 000000000000..ee344b2e07ca
--- /dev/null
+++ b/pkgs/development/python-modules/nose-xunitmp/default.nix
@@ -0,0 +1,39 @@
+{ lib
+, buildPythonPackage
+, fetchPypi
+, setuptools
+, wheel
+, nose
+}:
+
+buildPythonPackage rec {
+  pname = "nose-xunitmp";
+  version = "0.4.1";
+  pyproject = true;
+
+  src = fetchPypi {
+    pname = "nose_xunitmp";
+    inherit version;
+    hash = "sha256-wt9y9HYHUdMBU9Rzgiqr8afD1GL2ZKp/f9uNxibcfEA=";
+  };
+
+  build-system = [
+    setuptools
+    wheel
+  ];
+
+  dependencies = [
+    nose
+  ];
+
+  pythonImportsCheck = [
+    "nose_xunitmp"
+  ];
+
+  meta = {
+    description = "Xunit output when running multiprocess tests using nose";
+    homepage = "https://pypi.org/project/nose_xunitmp/";
+    license = lib.licenses.mit;
+    maintainers = with lib.maintainers; [ GaetanLepage ];
+  };
+}
diff --git a/pkgs/development/python-modules/numexpr/default.nix b/pkgs/development/python-modules/numexpr/default.nix
index 4de1e4a7de05..ca8e329771fe 100644
--- a/pkgs/development/python-modules/numexpr/default.nix
+++ b/pkgs/development/python-modules/numexpr/default.nix
@@ -2,30 +2,38 @@
 , buildPythonPackage
 , fetchPypi
 , numpy
-, packaging
-, python
-, pythonOlder
+, pytestCheckHook
+, setuptools
+, wheel
 }:
 
 buildPythonPackage rec {
   pname = "numexpr";
-  version = "2.9.0";
-  format = "setuptools";
-
-  disabled = pythonOlder "3.6";
+  version = "2.10.0";
+  pyproject = true;
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-8h0S9sQyzjSQieuVNCur9mKa67P93xh6RJLTqtqtqvA=";
+    hash = "sha256-yJ6TB1JjnfBAU5FgMm2PmahBWbvqQZQ6uOlgWR7arvA=";
   };
 
-  nativeBuildInputs = [
+  # patch for compatibility with numpy < 2.0
+  # see more details, https://numpy.org/devdocs/numpy_2_0_migration_guide.html#c-api-changes
+  postPatch = ''
+    substituteInPlace pyproject.toml \
+      --replace-fail "numpy>=2.0.0rc1" "numpy"
+    sed -i "1i#define PyDataType_SET_ELSIZE(descr, elsize)" numexpr/interpreter.cpp
+    sed -i "1i#define PyDataType_ELSIZE(descr) ((descr)->elsize)" numexpr/interpreter.cpp
+  '';
+
+  build-system = [
+    setuptools
+    wheel
     numpy
   ];
 
-  propagatedBuildInputs = [
+  dependencies = [
     numpy
-    packaging
   ];
 
   preBuild = ''
@@ -33,13 +41,25 @@ buildPythonPackage rec {
     ln -s ${numpy.cfg} site.cfg
   '';
 
-  checkPhase = ''
-    runtest="$(pwd)/numexpr/tests/test_numexpr.py"
-    pushd "$out"
-    ${python.interpreter} "$runtest"
+  nativeCheckInputs = [
+    pytestCheckHook
+  ];
+
+  preCheck = ''
+    pushd $out
+  '';
+
+  postCheck = ''
     popd
   '';
 
+  disabledTests = [
+    # fails on computers with more than 8 threads
+    # https://github.com/pydata/numexpr/issues/479
+    "test_numexpr_max_threads_empty_string"
+    "test_omp_num_threads_empty_string"
+  ];
+
   pythonImportsCheck = [
     "numexpr"
   ];
diff --git a/pkgs/development/python-modules/numpy/default.nix b/pkgs/development/python-modules/numpy/default.nix
index 4299c6d4dc63..f0acca333f85 100644
--- a/pkgs/development/python-modules/numpy/default.nix
+++ b/pkgs/development/python-modules/numpy/default.nix
@@ -19,6 +19,9 @@
 , blas
 , lapack
 
+# Reverse dependency
+, sage
+
 # tests
 , hypothesis
 , pytest-xdist
@@ -88,6 +91,9 @@ in buildPythonPackage rec {
     # remove needless reference to full Python path stored in built wheel
     substituteInPlace numpy/meson.build \
       --replace 'py.full_path()' "'python'"
+
+    substituteInPlace pyproject.toml \
+      --replace-fail "meson-python>=0.15.0,<0.16.0" "meson-python"
   '';
 
   nativeBuildInputs = [
@@ -174,6 +180,7 @@ in buildPythonPackage rec {
     blas = blas.provider;
     blasImplementation = blas.implementation;
     inherit cfg;
+    tests = { inherit sage; };
   };
 
   # Disable test
diff --git a/pkgs/development/python-modules/numpyro/default.nix b/pkgs/development/python-modules/numpyro/default.nix
index a38b43b2d8f9..857ce48b90f2 100644
--- a/pkgs/development/python-modules/numpyro/default.nix
+++ b/pkgs/development/python-modules/numpyro/default.nix
@@ -2,6 +2,7 @@
 , buildPythonPackage
 , pythonOlder
 , fetchPypi
+, setuptools
 , jax
 , jaxlib
 , multipledispatch
@@ -15,17 +16,21 @@
 
 buildPythonPackage rec {
   pname = "numpyro";
-  version = "0.14.0";
-  format = "setuptools";
+  version = "0.15.0";
+  pyproject = true;
 
   disabled = pythonOlder "3.9";
 
   src = fetchPypi {
     inherit version pname;
-    hash = "sha256-PkPqqchDRz166TnBg+ENsU4ju0KwrR3pCuFaRRF23kg=";
+    hash = "sha256-4WyfR8wx4qollYSgtslEMSCB0zypJAYCJjKtWEsOYA0=";
   };
 
-  propagatedBuildInputs = [
+  build-system = [
+    setuptools
+  ];
+
+  dependencies = [
     jax
     jaxlib
     multipledispatch
diff --git a/pkgs/development/python-modules/objax/default.nix b/pkgs/development/python-modules/objax/default.nix
index 7f2725e9d286..68ef0f449287 100644
--- a/pkgs/development/python-modules/objax/default.nix
+++ b/pkgs/development/python-modules/objax/default.nix
@@ -1,7 +1,6 @@
 { lib
 , buildPythonPackage
 , fetchFromGitHub
-, fetchpatch
 , jax
 , jaxlib
 , keras
@@ -30,7 +29,12 @@ buildPythonPackage rec {
     hash = "sha256-WD+pmR8cEay4iziRXqF3sHUzCMBjmLJ3wZ3iYOD+hzk=";
   };
 
-  nativeBuildInputs = [
+  patches = [
+    # Issue reported upstream: https://github.com/google/objax/issues/270
+    ./replace-deprecated-device_buffers.patch
+  ];
+
+  build-system = [
     setuptools
   ];
 
@@ -40,7 +44,7 @@ buildPythonPackage rec {
     jaxlib
   ];
 
-  propagatedBuildInputs = [
+  dependencies = [
     jax
     numpy
     parameterized
diff --git a/pkgs/development/python-modules/objax/replace-deprecated-device_buffers.patch b/pkgs/development/python-modules/objax/replace-deprecated-device_buffers.patch
new file mode 100644
index 000000000000..fc0fd50a90ce
--- /dev/null
+++ b/pkgs/development/python-modules/objax/replace-deprecated-device_buffers.patch
@@ -0,0 +1,14 @@
+diff --git a/objax/util/util.py b/objax/util/util.py
+index c31a356..344cf9a 100644
+--- a/objax/util/util.py
++++ b/objax/util/util.py
+@@ -117,7 +117,8 @@ def get_local_devices():
+     if _local_devices is None:
+         x = jn.zeros((jax.local_device_count(), 1), dtype=jn.float32)
+         sharded_x = map_to_device(x)
+-        _local_devices = [b.device() for b in sharded_x.device_buffers]
++        device_buffers = [buf.data for buf in sharded_x.addressable_shards]
++        _local_devices = [list(b.devices())[0] for b in device_buffers]
+     return _local_devices
+ 
+ 
diff --git a/pkgs/development/python-modules/oci/default.nix b/pkgs/development/python-modules/oci/default.nix
index b1bb84dba786..c0d759db7b22 100644
--- a/pkgs/development/python-modules/oci/default.nix
+++ b/pkgs/development/python-modules/oci/default.nix
@@ -14,7 +14,7 @@
 
 buildPythonPackage rec {
   pname = "oci";
-  version = "2.126.1";
+  version = "2.126.2";
   format = "setuptools";
 
   disabled = pythonOlder "3.7";
@@ -23,7 +23,7 @@ buildPythonPackage rec {
     owner = "oracle";
     repo = "oci-python-sdk";
     rev = "refs/tags/v${version}";
-    hash = "sha256-emWfpI+4oyb3p8RzhLKm1iWkvLu7OZTrEnyvZ5AI9Zw=";
+    hash = "sha256-eejIDpKpPekxrm1H9x2skxK67KNUm9mmrGM23hZ6ztM=";
   };
 
   pythonRelaxDeps = [
diff --git a/pkgs/development/python-modules/oelint-parser/default.nix b/pkgs/development/python-modules/oelint-parser/default.nix
index 9fc4de88fb9f..b4df20c9da78 100644
--- a/pkgs/development/python-modules/oelint-parser/default.nix
+++ b/pkgs/development/python-modules/oelint-parser/default.nix
@@ -9,13 +9,13 @@
 
 buildPythonPackage rec {
   pname = "oelint-parser";
-  version = "3.5.0";
+  version = "3.5.2";
   format = "setuptools";
 
   src = fetchPypi {
     inherit version;
     pname = "oelint_parser";
-    hash = "sha256-MvLHi0/tMkWBARyIVm/cuMbS2euK37xvQUbkmOrUyVU=";
+    hash = "sha256-ep3kU6Rdbev5SKnqQq9t4tC7RWp4b+uaWBWfE2Pydqc=";
   };
 
   buildInputs = [ pip ];
diff --git a/pkgs/development/python-modules/oemthermostat/default.nix b/pkgs/development/python-modules/oemthermostat/default.nix
index f40e39f10bf6..154a3f7f1e6b 100644
--- a/pkgs/development/python-modules/oemthermostat/default.nix
+++ b/pkgs/development/python-modules/oemthermostat/default.nix
@@ -1,45 +1,39 @@
-{ lib
-, buildPythonPackage
-, fetchFromGitHub
-, pytestCheckHook
-, pythonOlder
-, requests
-, setuptools-scm
+{
+  lib,
+  buildPythonPackage,
+  fetchFromGitHub,
+  pytestCheckHook,
+  pythonOlder,
+  requests,
+  setuptools-scm,
 }:
 
 buildPythonPackage rec {
   pname = "oemthermostat";
   version = "1.1.1";
-  format = "setuptools";
+  pyproject = true;
 
   disabled = pythonOlder "3.8";
 
   src = fetchFromGitHub {
     owner = "Cadair";
     repo = "openenergymonitor_thermostat";
-    rev = "v${version}";
-    sha256 = "vrMw3/X8MtejO1WyUA1DOlfVCPTCPgcK5p3+OlTWcM4=";
+    rev = "refs/tags/v${version}";
+    hash = "sha256-vrMw3/X8MtejO1WyUA1DOlfVCPTCPgcK5p3+OlTWcM4=";
   };
 
-  nativeBuildInputs = [
-    setuptools-scm
-  ];
+  build-system = [ setuptools-scm ];
 
-  propagatedBuildInputs = [
-    requests
-  ];
+  dependencies = [ requests ];
 
-  nativeCheckInputs = [
-    pytestCheckHook
-  ];
+  nativeCheckInputs = [ pytestCheckHook ];
 
-  pythonImportsCheck = [
-    "oemthermostat"
-  ];
+  pythonImportsCheck = [ "oemthermostat" ];
 
   meta = with lib; {
     description = "Python module to interact with OpenEnergyMonitor thermostats";
     homepage = "https://github.com/Cadair/openenergymonitor_thermostat";
+    changelog = "https://github.com/Cadair/openenergymonitor_thermostat/blob/v${version}/CHANGELOG.rst";
     license = licenses.bsd3;
     maintainers = with maintainers; [ fab ];
   };
diff --git a/pkgs/development/python-modules/okta/default.nix b/pkgs/development/python-modules/okta/default.nix
index 13218b0d8f08..6b4787570c36 100644
--- a/pkgs/development/python-modules/okta/default.nix
+++ b/pkgs/development/python-modules/okta/default.nix
@@ -22,14 +22,14 @@
 
 buildPythonPackage rec {
   pname = "okta";
-  version = "2.9.5";
+  version = "2.9.6";
   format = "setuptools";
 
   disabled = pythonOlder "3.7";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-qMcO0TTbMPjc+r2IOlwJqbaSOztat9MmYWH4kgy9vwA=";
+    hash = "sha256-WRWbS8bYUafnvnTKLHlV7YV5410E0jk2UYos2F20A7k=";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/ollama/default.nix b/pkgs/development/python-modules/ollama/default.nix
index 4d1999a8aae8..299af4e9c964 100644
--- a/pkgs/development/python-modules/ollama/default.nix
+++ b/pkgs/development/python-modules/ollama/default.nix
@@ -14,7 +14,7 @@
 
 buildPythonPackage rec {
   pname = "ollama";
-  version = "0.1.9";
+  version = "0.2.0";
   pyproject = true;
 
   disabled = pythonOlder "3.8";
@@ -23,7 +23,7 @@ buildPythonPackage rec {
     owner = "ollama";
     repo = "ollama-python";
     rev = "refs/tags/v${version}";
-    hash = "sha256-ilJgRMzCn/T+6Lr7IuvaCnKhN5cyyEOWuV0N1FtR+Yg=";
+    hash = "sha256-kfotKUUXBekUd0X32BYAjNWvQJO94bdEDCSrBg2yJRQ=";
   };
 
   postPatch = ''
diff --git a/pkgs/development/python-modules/ome-zarr/default.nix b/pkgs/development/python-modules/ome-zarr/default.nix
index 0412a0f80718..b87e8f925931 100644
--- a/pkgs/development/python-modules/ome-zarr/default.nix
+++ b/pkgs/development/python-modules/ome-zarr/default.nix
@@ -48,6 +48,27 @@ buildPythonPackage rec {
     "test_s3_info"
   ];
 
+  pytestFlagsArray = [
+    # Fail with RecursionError
+    # https://github.com/ome/ome-zarr-py/issues/352
+    "--deselect=tests/test_cli.py::TestCli::test_astronaut_download"
+    "--deselect=tests/test_cli.py::TestCli::test_astronaut_info"
+    "--deselect=tests/test_cli.py::TestCli::test_coins_info"
+    "--deselect=tests/test_emitter.py::test_close"
+    "--deselect=tests/test_emitter.py::test_create_wrong_encoding"
+    "--deselect=tests/test_node.py::TestNode::test_image"
+    "--deselect=tests/test_node.py::TestNode::test_label"
+    "--deselect=tests/test_node.py::TestNode::test_labels"
+    "--deselect=tests/test_ome_zarr.py::TestOmeZarr::test_download"
+    "--deselect=tests/test_ome_zarr.py::TestOmeZarr::test_info"
+    "--deselect=tests/test_reader.py::TestReader::test_image"
+    "--deselect=tests/test_reader.py::TestReader::test_label"
+    "--deselect=tests/test_reader.py::TestReader::test_labels"
+    "--deselect=tests/test_starting_points.py::TestStartingPoints::test_label"
+    "--deselect=tests/test_starting_points.py::TestStartingPoints::test_labels"
+    "--deselect=tests/test_starting_points.py::TestStartingPoints::test_top_level"
+  ];
+
   pythonImportsCheck = [
     "ome_zarr"
     "ome_zarr.cli"
diff --git a/pkgs/development/python-modules/open-clip-torch/default.nix b/pkgs/development/python-modules/open-clip-torch/default.nix
index 6de2c610fbf6..81b686332883 100644
--- a/pkgs/development/python-modules/open-clip-torch/default.nix
+++ b/pkgs/development/python-modules/open-clip-torch/default.nix
@@ -69,6 +69,8 @@ buildPythonPackage rec {
     "test_inference_with_data"
     "test_pretrained_text_encoder"
     "test_training_mt5"
+    # fails due to type errors
+    "test_num_shards"
   ] ++ lib.optionals (stdenv.isAarch64 && stdenv.isLinux) [
     "test_training"
     "test_training_coca"
diff --git a/pkgs/development/python-modules/openai-triton/default.nix b/pkgs/development/python-modules/openai-triton/default.nix
index 2bdb8d918af3..e4679a7bbdee 100644
--- a/pkgs/development/python-modules/openai-triton/default.nix
+++ b/pkgs/development/python-modules/openai-triton/default.nix
@@ -189,7 +189,7 @@ buildPythonPackage rec {
   meta = with lib; {
     description = "Language and compiler for writing highly efficient custom Deep-Learning primitives";
     homepage = "https://github.com/openai/triton";
-    platforms = lib.platforms.unix;
+    platforms = platforms.linux;
     license = licenses.mit;
     maintainers = with maintainers; [ SomeoneSerge Madouura ];
   };
diff --git a/pkgs/development/python-modules/openai-whisper/default.nix b/pkgs/development/python-modules/openai-whisper/default.nix
index 0038098e586a..88f0ffab5dc7 100644
--- a/pkgs/development/python-modules/openai-whisper/default.nix
+++ b/pkgs/development/python-modules/openai-whisper/default.nix
@@ -1,4 +1,5 @@
 { lib
+, stdenv
 , fetchFromGitHub
 , buildPythonPackage
 , substituteAll
@@ -44,17 +45,17 @@ buildPythonPackage rec {
 
   nativeBuildInputs = [
     setuptools
-    scipy
   ];
 
   propagatedBuildInputs = [
     more-itertools
     numba
     numpy
-    openai-triton
     tiktoken
     torch
     tqdm
+  ] ++ lib.optionals (lib.meta.availableOn stdenv.hostPlatform openai-triton) [
+    openai-triton
   ];
 
   preCheck = ''
@@ -63,6 +64,7 @@ buildPythonPackage rec {
 
   nativeCheckInputs = [
     pytestCheckHook
+    scipy
   ];
 
   disabledTests = [
diff --git a/pkgs/development/python-modules/openai/default.nix b/pkgs/development/python-modules/openai/default.nix
index a2720bfb8567..d29d6deec129 100644
--- a/pkgs/development/python-modules/openai/default.nix
+++ b/pkgs/development/python-modules/openai/default.nix
@@ -25,7 +25,7 @@
 
 buildPythonPackage rec {
   pname = "openai";
-  version = "1.23.6";
+  version = "1.28.0";
   pyproject = true;
 
   disabled = pythonOlder "3.7.1";
@@ -34,7 +34,7 @@ buildPythonPackage rec {
     owner = "openai";
     repo = "openai-python";
     rev = "refs/tags/v${version}";
-    hash = "sha256-b7LkZc8XGNOG0HHStlFikatKWQ5gob98XLsei/vOq4c=";
+    hash = "sha256-zWvrLCAN/OsSiNLQ2jvEh9anoSpMXgEYhAFwh9btWEM=";
   };
 
   build-system = [
diff --git a/pkgs/development/python-modules/opencensus-ext-azure/default.nix b/pkgs/development/python-modules/opencensus-ext-azure/default.nix
index 4effafe3311a..121b162b2fe1 100644
--- a/pkgs/development/python-modules/opencensus-ext-azure/default.nix
+++ b/pkgs/development/python-modules/opencensus-ext-azure/default.nix
@@ -1,7 +1,6 @@
 { lib
 , buildPythonPackage
 , fetchPypi
-, pythonOlder
 , azure-core
 , azure-identity
 , opencensus
@@ -14,8 +13,6 @@ buildPythonPackage rec {
   version = "1.1.13";
   format = "setuptools";
 
-  disabled = pythonOlder "3.4";
-
   src = fetchPypi {
     inherit pname version;
     hash = "sha256-rsMEchdwBTebpWpwKgl9YYxfV1WOG7ZnbsdflIEwaSo=";
diff --git a/pkgs/development/python-modules/openrazer/daemon.nix b/pkgs/development/python-modules/openrazer/daemon.nix
index 317d36b30576..aa6055c19c70 100644
--- a/pkgs/development/python-modules/openrazer/daemon.nix
+++ b/pkgs/development/python-modules/openrazer/daemon.nix
@@ -10,7 +10,7 @@
 , pyudev
 , setproctitle
 , setuptools
-, wrapGAppsHook
+, wrapGAppsHook3
 , notify2
 }:
 
diff --git a/pkgs/development/python-modules/openusd/default.nix b/pkgs/development/python-modules/openusd/default.nix
index bc67c43a6b0b..4110e887dc4f 100644
--- a/pkgs/development/python-modules/openusd/default.nix
+++ b/pkgs/development/python-modules/openusd/default.nix
@@ -18,6 +18,8 @@
   lib,
   libGL,
   libX11,
+  libXt,
+  materialx,
   ninja,
   numpy,
   opencolorio,
@@ -86,6 +88,7 @@ buildPythonPackage rec {
     (lib.cmakeBool "PXR_BUILD_PYTHON_DOCUMENTATION" withDocs)
     (lib.cmakeBool "PXR_BUILD_USDVIEW" withUsdView)
     (lib.cmakeBool "PXR_BUILD_USD_TOOLS" withTools)
+    (lib.cmakeBool "PXR_ENABLE_MATERIALX_SUPPORT" true)
     (lib.cmakeBool "PXR_ENABLE_OSL_SUPPORT" (!stdenv.isDarwin && withOsl))
   ];
 
@@ -111,6 +114,7 @@ buildPythonPackage rec {
       embree
       flex
       imath
+      materialx
       opencolorio
       openimageio
       opensubdiv
@@ -120,6 +124,7 @@ buildPythonPackage rec {
     ++ lib.optionals stdenv.isLinux [
       libGL
       libX11
+      libXt
     ]
     ++ lib.optionals stdenv.isDarwin (with darwin.apple_sdk_11_0.frameworks; [ Cocoa ])
     ++ lib.optionals withOsl [ osl ]
diff --git a/pkgs/development/python-modules/openwrt-ubus-rpc/default.nix b/pkgs/development/python-modules/openwrt-ubus-rpc/default.nix
index c5a5ac35b3cd..efafabe29d61 100644
--- a/pkgs/development/python-modules/openwrt-ubus-rpc/default.nix
+++ b/pkgs/development/python-modules/openwrt-ubus-rpc/default.nix
@@ -1,34 +1,43 @@
-{ lib
-, buildPythonPackage
-, fetchFromGitHub
-, requests
-, urllib3
+{
+  lib,
+  buildPythonPackage,
+  fetchFromGitHub,
+  pythonOlder,
+  requests,
+  setuptools,
+  urllib3,
 }:
 
 buildPythonPackage rec {
   pname = "openwrt-ubus-rpc";
   version = "0.0.3";
-  format = "setuptools";
+  pyproject = true;
+
+  disabled = pythonOlder "3.8";
 
   src = fetchFromGitHub {
     owner = "Noltari";
     repo = "python-ubus-rpc";
-    rev = version;
-    sha256 = "19scncc1w9ar3pw4yrw24akjgm74n2m7y308hzl1i360daf5p21k";
+    rev = "refs/tags/${version}";
+    hash = "sha256-M4hbnGrAjBjohwgMf6qw5NQnpyKCZ0/4HVklHhizTKc=";
   };
 
-  propagatedBuildInputs = [
+  build-system = [ setuptools ];
+
+  dependencies = [
     requests
     urllib3
   ];
 
   # Project has no tests
   doCheck = false;
+
   pythonImportsCheck = [ "openwrt.ubus" ];
 
   meta = with lib; {
     description = "Python API for OpenWrt ubus RPC";
     homepage = "https://github.com/Noltari/python-ubus-rpc";
+    changelog = "https://github.com/Noltari/python-ubus-rpc/releases/tag/${version}";
     license = with licenses; [ gpl2Only ];
     maintainers = with maintainers; [ fab ];
   };
diff --git a/pkgs/development/python-modules/opower/default.nix b/pkgs/development/python-modules/opower/default.nix
index 2c00224e9229..d889c97c3278 100644
--- a/pkgs/development/python-modules/opower/default.nix
+++ b/pkgs/development/python-modules/opower/default.nix
@@ -13,7 +13,7 @@
 
 buildPythonPackage rec {
   pname = "opower";
-  version = "0.4.4";
+  version = "0.4.5";
   pyproject = true;
 
   disabled = pythonOlder "3.9";
@@ -22,7 +22,7 @@ buildPythonPackage rec {
     owner = "tronikos";
     repo = "opower";
     rev = "refs/tags/v${version}";
-    hash = "sha256-GG7r0/rZcB4cuog3m0qCOrmcYiscPQggQhRC9sQGG40=";
+    hash = "sha256-PBxxLbVOvJSFmDXgKeI5sICUR7NJGUEUUahK9eBsvbE=";
   };
 
   build-system = [ setuptools ];
diff --git a/pkgs/development/python-modules/optimum/default.nix b/pkgs/development/python-modules/optimum/default.nix
index 5c096eab5952..ecc214e1051d 100644
--- a/pkgs/development/python-modules/optimum/default.nix
+++ b/pkgs/development/python-modules/optimum/default.nix
@@ -22,7 +22,7 @@
 
 buildPythonPackage rec {
   pname = "optimum";
-  version = "1.19.1";
+  version = "1.19.2";
   format = "setuptools";
 
   disabled = pythonOlder "3.7";
@@ -31,7 +31,7 @@ buildPythonPackage rec {
     owner = "huggingface";
     repo = "optimum";
     rev = "refs/tags/v${version}";
-    hash = "sha256-EHu3p3M7xBjMnf3tKsneYOZtd9YWsC0qok1fnk4TMAg=";
+    hash = "sha256-GYgLh6vlOoVvTvhNPfBT4YEqRhB7gZMqlOuab6maVGU=";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/optree/default.nix b/pkgs/development/python-modules/optree/default.nix
new file mode 100644
index 000000000000..d592c6d51f39
--- /dev/null
+++ b/pkgs/development/python-modules/optree/default.nix
@@ -0,0 +1,60 @@
+{ stdenv
+, buildPythonPackage
+, fetchFromGitHub
+, pythonOlder
+, lib
+, cmake
+, setuptools
+, typing-extensions
+, pybind11
+, pytestCheckHook
+}:
+
+buildPythonPackage rec {
+  pname = "optree";
+  version = "0.11.0";
+  pyproject = true;
+
+  disabled = pythonOlder "3.7";
+
+  src = fetchFromGitHub {
+    owner = "metaopt";
+    repo = pname;
+    rev = "v${version}";
+    hash = "sha256-VnnnEoXkYJO+S7baH+JZvsW18Tk3TiY9+Cd230OlZWo=";
+  };
+
+  dontUseCmakeConfigure = true;
+
+  propagatedBuildInputs = [
+    typing-extensions
+  ];
+  nativeBuildInputs = [
+    setuptools
+    pybind11
+    cmake
+  ];
+
+  nativeCheckInputs = [
+    pytestCheckHook
+  ];
+  # prevent import failures from pytest
+  preCheck = ''
+    rm -r optree
+  '';
+  disabledTests = [
+    # Fails because the 'test_treespec' module can't be found
+    "test_treespec_pickle_missing_registration"
+  ];
+  pythonImportsCheck = [
+    "optree"
+  ];
+
+  meta = with lib; {
+    homepage = "https://github.com/metaopt/optree";
+    changelog = "https://github.com/metaopt/optree/releases/tag/v${version}";
+    description = "Optimized PyTree Utilities";
+    maintainers = with maintainers; [ pandapip1 ];
+    license = licenses.asl20;
+  };
+}
diff --git a/pkgs/development/python-modules/opuslib/default.nix b/pkgs/development/python-modules/opuslib/default.nix
index c30d70851186..2f5bbf8b2581 100644
--- a/pkgs/development/python-modules/opuslib/default.nix
+++ b/pkgs/development/python-modules/opuslib/default.nix
@@ -1,17 +1,20 @@
-{ buildPythonPackage,
+{
+  buildPythonPackage,
   fetchFromGitHub,
   fetchpatch,
   isPy27,
   libopus,
-  nose,
-  lib, stdenv,
+  pynose,
+  lib,
+  stdenv,
   substituteAll,
+  setuptools,
 }:
 
 buildPythonPackage rec {
   pname = "opuslib";
   version = "3.0.3";
-  format = "setuptools";
+  pyproject = true;
 
   disabled = isPy27;
 
@@ -41,7 +44,11 @@ buildPythonPackage rec {
     })
   ];
 
-  nativeCheckInputs = [ nose ];
+  build-system = [
+    setuptools
+  ];
+
+  nativeCheckInputs = [ pynose ];
 
   meta = with lib; {
     description = "Python bindings to the libopus, IETF low-delay audio codec";
diff --git a/pkgs/development/python-modules/oracledb/default.nix b/pkgs/development/python-modules/oracledb/default.nix
index 4434d5a386d3..356883e2c56e 100644
--- a/pkgs/development/python-modules/oracledb/default.nix
+++ b/pkgs/development/python-modules/oracledb/default.nix
@@ -1,23 +1,24 @@
-{ lib
-, buildPythonPackage
-, cryptography
-, cython
-, fetchPypi
-, pythonOlder
-, setuptools
-, wheel
+{
+  lib,
+  buildPythonPackage,
+  cryptography,
+  cython,
+  fetchPypi,
+  pythonOlder,
+  setuptools,
+  wheel,
 }:
 
 buildPythonPackage rec {
   pname = "oracledb";
-  version = "2.1.2";
+  version = "2.2.0";
   pyproject = true;
 
   disabled = pythonOlder "3.7";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-MFS8wpXXN4g0unpazrhlmF6VSRX5sHqEPqhMOCTGoLI=";
+    hash = "sha256-9Sx984sTJDtc5YNFe4B0ijRoK5u4Nw2iSXhotxl2eYs=";
   };
 
   build-system = [
@@ -26,22 +27,21 @@ buildPythonPackage rec {
     wheel
   ];
 
-  dependencies = [
-    cryptography
-  ];
+  dependencies = [ cryptography ];
 
   # Checks need an Oracle database
   doCheck = false;
 
-  pythonImportsCheck = [
-    "oracledb"
-  ];
+  pythonImportsCheck = [ "oracledb" ];
 
   meta = with lib; {
     description = "Python driver for Oracle Database";
     homepage = "https://oracle.github.io/python-oracledb";
     changelog = "https://github.com/oracle/python-oracledb/blob/v${version}/doc/src/release_notes.rst";
-    license = with licenses; [ asl20 /* and or */ upl ];
+    license = with licenses; [
+      asl20 # and or
+      upl
+    ];
     maintainers = with maintainers; [ harvidsen ];
   };
 }
diff --git a/pkgs/development/python-modules/orange-canvas-core/default.nix b/pkgs/development/python-modules/orange-canvas-core/default.nix
index 592aa2afa509..37683a999488 100644
--- a/pkgs/development/python-modules/orange-canvas-core/default.nix
+++ b/pkgs/development/python-modules/orange-canvas-core/default.nix
@@ -18,12 +18,12 @@
 
 buildPythonPackage rec {
   pname = "orange-canvas-core";
-  version = "0.2.0";
+  version = "0.1.35";
   format = "setuptools";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-KMEFZkAZkDhuDPpAts+u825p5pFJZbyrsMW/S1AArp4=";
+    hash = "sha256-xLCwjeNDx9RqxlNkIWMo0Pcrg7akGuu4Rv9oRDgOK18=";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/orange-widget-base/default.nix b/pkgs/development/python-modules/orange-widget-base/default.nix
index 95dadbb04d79..3a1d5cd6e893 100644
--- a/pkgs/development/python-modules/orange-widget-base/default.nix
+++ b/pkgs/development/python-modules/orange-widget-base/default.nix
@@ -16,12 +16,12 @@
 
 buildPythonPackage rec {
   pname = "orange-widget-base";
-  version = "4.23.0";
+  version = "4.22.0";
   format = "setuptools";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-mz+BcZEdg1p9V0ewYRrw3jKBWLMbL9RR6o4hUEUx9DA=";
+    hash = "sha256-nV2aBPZzn7K+QECtCVoLLh5smG31zE2G9jFTKlxh9qM=";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/orange3/default.nix b/pkgs/development/python-modules/orange3/default.nix
index 1c4531254ae8..a5f9d5f85fd4 100644
--- a/pkgs/development/python-modules/orange3/default.nix
+++ b/pkgs/development/python-modules/orange3/default.nix
@@ -1,4 +1,5 @@
 { lib
+, stdenv
 , baycomp
 , bottleneck
 , buildPythonPackage
@@ -24,12 +25,15 @@
 , orange-canvas-core
 , orange-widget-base
 , pandas
+, pytestCheckHook
+, pytest-qt
 , pyqtgraph
 , pyqtwebengine
 , python
 , python-louvain
 , pythonOlder
 , pyyaml
+, pip
 , qt5
 , qtconsole
 , recommonmark
@@ -112,6 +116,7 @@ let
       keyrings-alt
       pyyaml
       baycomp
+      pip
     ];
 
     # FIXME: ImportError: cannot import name '_variable' from partially initialized module 'Orange.data' (most likely due to a circular import) (/build/source/Orange/data/__init__.py)
@@ -146,9 +151,9 @@ let
 
     passthru = {
       updateScript = nix-update-script { };
-      tests.unittests = self.overridePythonAttrs (old: {
-        pname = "${old.pname}-tests";
-        format = "other";
+      tests.unittests = stdenv.mkDerivation {
+        name = "${self.name}-tests";
+        inherit (self) src;
 
         preCheck = ''
           export HOME=$(mktemp -d)
@@ -160,23 +165,32 @@ let
           cp -r ${self}/${python.sitePackages}/Orange .
           chmod +w -R .
 
-          rm Orange/tests/test_url_reader.py # uses network
-          rm Orange/tests/test_ada_boost.py # broken: The 'base_estimator' parameter of AdaBoostRegressor must be an object implementing 'fit' and 'predict' or a str among {'deprecated'}. Got None instead.
-        '';
+          substituteInPlace Orange/classification/tests/test_xgb_cls.py \
+            --replace test_learners mk_test_learners
+
+          substituteInPlace Orange/modelling/tests/test_xgb.py \
+            --replace test_learners mk_test_learners
+
+          substituteInPlace Orange/**/tests/*.py \
+            --replace test_filename filename_test
+
+          # TODO: debug why orange is crashing on GC, may be a upstream issue
+          chmod +x Orange/__init__.py
+          echo "import gc; gc.disable()" | tee -a Orange/__init__.py
 
-        checkPhase = ''
-          runHook preCheck
-          ${python.interpreter} -m unittest -b -v ./Orange/**/test*.py
-          runHook postCheck
         '';
 
-        postInstall = "";
+        nativeBuildInputs = [ pytestCheckHook pytest-qt ];
+
+        postCheck = ''
+          touch $out
+        '';
 
         doBuild = false;
         doInstall = false;
 
-        nativeBuildInputs = [ self ] ++ old.nativeBuildInputs;
-      });
+        buildInputs = [ self ];
+      };
     };
 
     meta = with lib; {
diff --git a/pkgs/development/python-modules/orjson/default.nix b/pkgs/development/python-modules/orjson/default.nix
index ede3b10fc718..bd1d06e5c266 100644
--- a/pkgs/development/python-modules/orjson/default.nix
+++ b/pkgs/development/python-modules/orjson/default.nix
@@ -30,22 +30,22 @@
 
 buildPythonPackage rec {
   pname = "orjson";
-  version = "3.9.15";
+  version = "3.10.1";
   pyproject = true;
 
-  disabled = pythonOlder "3.7";
+  disabled = pythonOlder "3.8";
 
   src = fetchFromGitHub {
     owner = "ijl";
     repo = "orjson";
     rev = "refs/tags/${version}";
-    hash = "sha256-6fcj64d/uFCxaez+xxOdHd+NqILKOPqK+YlxYX7D0DI=";
+    hash = "sha256-vEJriLd7f+zlYcMIyhDTkq2kmNc5MaNLHo0qMLS5hro=";
   };
 
   cargoDeps = rustPlatform.fetchCargoTarball {
     inherit src;
     name = "${pname}-${version}";
-    hash = "sha256-/Aa3saUP4QjSBIS9T8Vd0yggiJn2SIk7dYMA5icb1yA=";
+    hash = "sha256-yQkpjedHwgsZiiZEzYV66aa9RepCFW0PBqtD29tfoMI=";
   };
 
   maturinBuildFlags = [ "--interpreter ${python.executable}" ];
diff --git a/pkgs/development/python-modules/osc-sdk-python/default.nix b/pkgs/development/python-modules/osc-sdk-python/default.nix
index 74d617efe500..2475ef8bc784 100644
--- a/pkgs/development/python-modules/osc-sdk-python/default.nix
+++ b/pkgs/development/python-modules/osc-sdk-python/default.nix
@@ -1,23 +1,22 @@
-{
-  lib
-  , buildPythonPackage
-  , fetchFromGitHub
-  , pytestCheckHook
-  , requests
-  , ruamel-yaml
-  , setuptools
+{ lib
+, buildPythonPackage
+, fetchFromGitHub
+, pytestCheckHook
+, requests
+, ruamel-yaml
+, setuptools
 }:
 
 buildPythonPackage rec {
   pname = "osc-sdk-python";
-  version = "0.27.0";
+  version = "0.29.0";
   pyproject = true;
 
   src = fetchFromGitHub {
     owner = "outscale";
     repo = "osc-sdk-python";
     rev = "v${version}";
-    hash = "sha256-dp4yE8cTeXAPoixJ6ZtsvcTSKdYpDIebHkddUiqJe5Q=";
+    hash = "sha256-WtKG2ujEGUW0nhYWxfYDkxicN/uEqBxKCh9FcCfjmHM=";
     fetchSubmodules = true;
   };
 
diff --git a/pkgs/development/python-modules/outcome/default.nix b/pkgs/development/python-modules/outcome/default.nix
index 0fa4ba74deab..7aa65b2d1d22 100644
--- a/pkgs/development/python-modules/outcome/default.nix
+++ b/pkgs/development/python-modules/outcome/default.nix
@@ -1,7 +1,6 @@
 { lib
 , buildPythonPackage
 , fetchPypi
-, pythonOlder
 , setuptools
 , attrs
 , pytest
@@ -11,8 +10,6 @@ buildPythonPackage rec {
   pname = "outcome";
   version = "1.3.0.post0";
 
-  disabled = pythonOlder "3.4";
-
   src = fetchPypi {
     inherit pname version;
     hash = "sha256-nc8C5l8pcbgAR7N3Ro5yomjhXArzzxI45v8U9/kRQ7g=";
diff --git a/pkgs/development/python-modules/owslib/default.nix b/pkgs/development/python-modules/owslib/default.nix
index 8bf7b8bcbe85..efa0a744f4b5 100644
--- a/pkgs/development/python-modules/owslib/default.nix
+++ b/pkgs/development/python-modules/owslib/default.nix
@@ -2,6 +2,7 @@
 , stdenv
 , buildPythonPackage
 , fetchFromGitHub
+
 , lxml
 , pyproj
 , pytestCheckHook
@@ -10,12 +11,11 @@
 , pytz
 , pyyaml
 , requests
-, python
 }:
 
 buildPythonPackage rec {
   pname = "owslib";
-  version = "0.30.0";
+  version = "0.31.0";
   format = "setuptools";
 
   disabled = pythonOlder "3.7";
@@ -23,8 +23,8 @@ buildPythonPackage rec {
   src = fetchFromGitHub {
     owner = "geopython";
     repo = "OWSLib";
-    rev = "refs/tags/${version}";
-    hash = "sha256-miKAgZBiqZ6+0qDvlf8+VZ6omH5hlImO0E7AVK7FuD0=";
+    rev = version;
+    hash = "sha256-vjJsLavVOqTTrVtYbtA0G+nl0HanKeGtzNFFj92Frw8=";
   };
 
   postPatch = ''
diff --git a/pkgs/development/python-modules/paddle2onnx/default.nix b/pkgs/development/python-modules/paddle2onnx/default.nix
index e358c2ec4986..0ba25c3046c4 100644
--- a/pkgs/development/python-modules/paddle2onnx/default.nix
+++ b/pkgs/development/python-modules/paddle2onnx/default.nix
@@ -9,7 +9,7 @@
 }:
 let
   pname = "paddle2onnx";
-  version = "1.1.0";
+  version = "1.2.0";
   format = "wheel";
   pyShortVersion = "cp${builtins.replaceStrings ["."] [""] python.pythonVersion}";
   src = fetchPypi {
@@ -18,7 +18,7 @@ let
     python = pyShortVersion;
     abi = pyShortVersion;
     platform = "manylinux_2_12_x86_64.manylinux2010_x86_64";
-    hash = "sha256-HI/lIj9ezdCry5fYDi5Pia6hvOjN6/Slm9BMfLeq8AU=";
+    hash = "sha256-18eStagm7V4D87fiPoigAyXxVGoo//8UENutSqNfUBI=";
   };
 in
 buildPythonPackage {
diff --git a/pkgs/development/python-modules/pandas-datareader/default.nix b/pkgs/development/python-modules/pandas-datareader/default.nix
index e5222cf7ef83..de9f285a4a5f 100644
--- a/pkgs/development/python-modules/pandas-datareader/default.nix
+++ b/pkgs/development/python-modules/pandas-datareader/default.nix
@@ -1,7 +1,9 @@
 { lib
 , buildPythonPackage
+, pythonOlder
+, pythonAtLeast
 , fetchPypi
-, isPy27
+, setuptools
 , pandas
 , lxml
 , requests
@@ -10,20 +12,29 @@
 buildPythonPackage rec {
   pname = "pandas-datareader";
   version = "0.10.0";
-  format = "setuptools";
-  disabled = isPy27;
+  pyproject = true;
+
+  disabled = pythonOlder "3.6" || pythonAtLeast "3.12";
 
   src = fetchPypi {
     inherit pname version;
     sha256 = "9fc3c63d39bc0c10c2683f1c6d503ff625020383e38f6cbe14134826b454d5a6";
   };
 
+  build-system = [
+    setuptools
+  ];
+
+  dependencies = [
+    pandas
+    lxml
+    requests
+  ];
+
   # Tests are trying to load data over the network
   doCheck = false;
   pythonImportsCheck = [ "pandas_datareader" ];
 
-  propagatedBuildInputs = [ pandas lxml requests ];
-
   meta = with lib; {
     description = "Up to date remote data access for pandas, works for multiple versions of pandas";
     homepage = "https://github.com/pydata/pandas-datareader";
diff --git a/pkgs/development/python-modules/panel/default.nix b/pkgs/development/python-modules/panel/default.nix
index 4a4b93035d73..d8e0e071df4d 100644
--- a/pkgs/development/python-modules/panel/default.nix
+++ b/pkgs/development/python-modules/panel/default.nix
@@ -16,7 +16,7 @@
 
 buildPythonPackage rec {
   pname = "panel";
-  version = "1.3.8";
+  version = "1.4.1";
 
   format = "wheel";
 
@@ -25,7 +25,9 @@ buildPythonPackage rec {
   # tries to fetch even more artifacts
   src = fetchPypi {
     inherit pname version format;
-    hash = "sha256-Sb85MZhqDd8/e0vaPGXGoxHVJ3UkrNtOC/9py6a/V3U=";
+    hash = "sha256-x7ywbO2uY1r06bDXV/+X/7cs9f6jFawyDHeo8pLWZVE=";
+    dist = "py3";
+    python = "py3";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/python-modules/parametrize-from-file/default.nix b/pkgs/development/python-modules/parametrize-from-file/default.nix
index b6ee36c3dce2..2bfd6411631a 100644
--- a/pkgs/development/python-modules/parametrize-from-file/default.nix
+++ b/pkgs/development/python-modules/parametrize-from-file/default.nix
@@ -14,13 +14,13 @@
 
 buildPythonPackage rec {
   pname = "parametrize-from-file";
-  version = "0.19.0";
+  version = "0.20.0";
   format = "pyproject";
 
   src = fetchPypi {
     inherit version;
     pname = "parametrize_from_file";
-    hash = "sha256-FPTO2hYZT7bsQyPNcjBEk8SZKp51o/eMV5/U58W5SPI=";
+    hash = "sha256-t4WLNDkC/ErBnOGK6FoYIfjoL/zF9MxPThJtGM1nUL4=";
   };
 
   # patch out coveralls since it doesn't provide us value
diff --git a/pkgs/development/python-modules/parsedmarc/default.nix b/pkgs/development/python-modules/parsedmarc/default.nix
index b9d4df1d58ee..3a2dbe638dbb 100644
--- a/pkgs/development/python-modules/parsedmarc/default.nix
+++ b/pkgs/development/python-modules/parsedmarc/default.nix
@@ -41,14 +41,14 @@ let
 in
 buildPythonPackage rec {
   pname = "parsedmarc";
-  version = "8.8.0";
+  version = "8.11.0";
   pyproject = true;
 
   disabled = pythonOlder "3.7";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-tK/cxOw50awcDAGRDTQ+Nxb9aJl2+zLZHuJq88xNmXM=";
+    hash = "sha256-OBxiaXB8NKNMviRI19rYYJxpnfnaEL3zSPmYB4urIug=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/python-modules/parsel/default.nix b/pkgs/development/python-modules/parsel/default.nix
index ee817f70665a..639f973e7754 100644
--- a/pkgs/development/python-modules/parsel/default.nix
+++ b/pkgs/development/python-modules/parsel/default.nix
@@ -13,14 +13,14 @@
 
 buildPythonPackage rec {
   pname = "parsel";
-  version = "1.9.0";
+  version = "1.9.1";
   format = "setuptools";
 
   disabled = pythonOlder "3.7";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-paa8sMX8dBVAujB1Y2/1y5aIUqeMwWroIlDl1Ib6fUg=";
+    hash = "sha256-FOANwHcxyQMNtiDBlfyuiEtbSEjp+cUjxhGfcIzPqaw=";
   };
 
   postPatch = ''
diff --git a/pkgs/development/python-modules/parso/default.nix b/pkgs/development/python-modules/parso/default.nix
index 7d76ef5d80aa..03b052a46dd7 100644
--- a/pkgs/development/python-modules/parso/default.nix
+++ b/pkgs/development/python-modules/parso/default.nix
@@ -9,13 +9,13 @@
 
 buildPythonPackage rec {
   pname = "parso";
-  version = "0.8.3";
+  version = "0.8.4";
   format = "setuptools";
   disabled = pythonOlder "3.6";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-jAe+KQu1nwNYiRWSHinopQACrK8s3F+g4BFPkXCfr6A=";
+    hash = "sha256-6zp7WCQPuZCZo0VXHe7MD5VA6l9N0v4UwqmdaygauS0=";
   };
 
   nativeCheckInputs = [ pytestCheckHook ];
diff --git a/pkgs/development/python-modules/paste/default.nix b/pkgs/development/python-modules/paste/default.nix
index a13706dacb54..8b6b3e9765ba 100644
--- a/pkgs/development/python-modules/paste/default.nix
+++ b/pkgs/development/python-modules/paste/default.nix
@@ -10,7 +10,7 @@
 
 buildPythonPackage rec {
   pname = "paste";
-  version = "3.9.0";
+  version = "3.10.1";
   format = "setuptools";
 
   disabled = pythonOlder "3.7";
@@ -19,7 +19,7 @@ buildPythonPackage rec {
     owner = "cdent";
     repo = "paste";
     rev = "refs/tags/${version}";
-    hash = "sha256-HdeShtslnvjmuiUb0W3ASnSWcZnyDJcthsIOjYmuD8I=";
+    hash = "sha256-NY/h6hbpluEu1XAv3o4mqoG+l0LXfM1dw7+G0Rm1E4o=";
   };
 
   postPatch = ''
diff --git a/pkgs/development/python-modules/path/default.nix b/pkgs/development/python-modules/path/default.nix
index e88a7efd60f5..3629d8b11db5 100644
--- a/pkgs/development/python-modules/path/default.nix
+++ b/pkgs/development/python-modules/path/default.nix
@@ -10,14 +10,14 @@
 
 buildPythonPackage rec {
   pname = "path";
-  version = "16.10.0";
+  version = "16.14.0";
   pyproject = true;
 
   disabled = pythonOlder "3.7";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-sysit2/oEKje1tE2JozItmmK58R8KblKnqEmI/MFHkY=";
+    hash = "sha256-26qn79RgL9a6jYKJDceCPWnl3nQKboQtmRmw+q8rao4=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/python-modules/pathlib/default.nix b/pkgs/development/python-modules/pathlib/default.nix
deleted file mode 100644
index 1e34b92a4314..000000000000
--- a/pkgs/development/python-modules/pathlib/default.nix
+++ /dev/null
@@ -1,27 +0,0 @@
-{ lib
-, buildPythonPackage
-, fetchPypi
-, unittestCheckHook
-, pythonAtLeast
-}:
-
-buildPythonPackage rec {
-  pname = "pathlib";
-  version = "1.0.1";
-  format = "setuptools";
-  disabled = pythonAtLeast "3.4"; # Was added to std library in Python 3.4
-
-  src = fetchPypi {
-    inherit pname version;
-    sha256 = "17zajiw4mjbkkv6ahp3xf025qglkj0805m9s41c45zryzj6p2h39";
-  };
-
-  nativeCheckInputs = [ unittestCheckHook ];
-
-  meta = {
-    description = "Object-oriented filesystem paths";
-    homepage = "https://pathlib.readthedocs.org/";
-    license = lib.licenses.mit;
-    maintainers = with lib.maintainers; [ ];
-  };
-}
diff --git a/pkgs/development/python-modules/pathlib2/default.nix b/pkgs/development/python-modules/pathlib2/default.nix
index 15238a858990..ab1948005fe8 100644
--- a/pkgs/development/python-modules/pathlib2/default.nix
+++ b/pkgs/development/python-modules/pathlib2/default.nix
@@ -5,7 +5,6 @@
 , pythonOlder
 , scandir ? null
 , glibcLocales
-, mock
 , typing
 }:
 
@@ -21,8 +20,7 @@ buildPythonPackage rec {
 
   propagatedBuildInputs = [ six ]
     ++ lib.optionals (pythonOlder "3.5") [ scandir typing ];
-  nativeCheckInputs = [ glibcLocales ]
-    ++ lib.optional (pythonOlder "3.3") mock;
+  nativeCheckInputs = [ glibcLocales ];
 
   preCheck = ''
     export LC_ALL="en_US.UTF-8"
diff --git a/pkgs/development/python-modules/paypalhttp/default.nix b/pkgs/development/python-modules/paypalhttp/default.nix
index 25c6aa1ba878..ab0228ef06ab 100644
--- a/pkgs/development/python-modules/paypalhttp/default.nix
+++ b/pkgs/development/python-modules/paypalhttp/default.nix
@@ -24,6 +24,11 @@ buildPythonPackage rec {
     hash = "sha256-3ihcpYtpcejPkiyf4g4jveyNU6flQB2sv9EZ5Pd7tUc=";
   };
 
+  postPatch = ''
+    substituteInPlace tests/http_response_test.py \
+      --replace-fail assertEquals assertEqual
+  '';
+
   propagatedBuildInputs = [
     requests
     six
diff --git a/pkgs/development/python-modules/pcffont/default.nix b/pkgs/development/python-modules/pcffont/default.nix
new file mode 100644
index 000000000000..7c4c0ca54dd3
--- /dev/null
+++ b/pkgs/development/python-modules/pcffont/default.nix
@@ -0,0 +1,44 @@
+{ lib
+, buildPythonPackage
+, fetchFromGitHub
+, hatchling
+, bdffont
+, pytestCheckHook
+, nix-update-script
+}:
+
+buildPythonPackage rec {
+  pname = "pcffont";
+  version = "0.0.11";
+  pyproject = true;
+
+  src = fetchFromGitHub {
+    owner = "TakWolf";
+    repo = "pcffont";
+    rev = "refs/tags/${version}";
+    hash = "sha256-gu9niWxYTw3rcA++z8B+MdKp5XaqAGjmvd+PdSDosfg=";
+  };
+
+  build-system = [
+    hatchling
+  ];
+
+  dependencies = [
+    bdffont
+  ];
+
+  nativeCheckInputs = [
+    pytestCheckHook
+  ];
+
+  pythonImportsCheck = [ "pcffont" ];
+
+  passthru.updateScript = nix-update-script { };
+
+  meta = {
+    description = "Library for manipulating Portable Compiled Format (PCF) fonts";
+    homepage = "https://github.com/TakWolf/pcffont";
+    license = lib.licenses.mit;
+    maintainers = with lib.maintainers; [ ];
+  };
+}
diff --git a/pkgs/development/python-modules/pdm-backend/default.nix b/pkgs/development/python-modules/pdm-backend/default.nix
index 0e1cc04f920b..d2d77f67fc25 100644
--- a/pkgs/development/python-modules/pdm-backend/default.nix
+++ b/pkgs/development/python-modules/pdm-backend/default.nix
@@ -9,25 +9,26 @@
 # tests
 , editables
 , git
+, mercurial
 , pytestCheckHook
 , setuptools
 }:
 
 buildPythonPackage rec {
   pname = "pdm-backend";
-  version = "2.1.8";
+  version = "2.3.0";
   format = "pyproject";
 
   src = fetchFromGitHub {
     owner = "pdm-project";
     repo = "pdm-backend";
     rev = "refs/tags/${version}";
-    hash = "sha256-d8i+FvxNFPM18W7NmOwh9bqZnMUenF7eCPdcCw4BT7s=";
+    hash = "sha256-V+NESf7NavR6L6ko4Oh4KhAR2iIN5GiHZPELwvkpr4c=";
   };
 
   env.PDM_BUILD_SCM_VERSION = version;
 
-  propagatedBuildInputs = lib.optionals (pythonOlder "3.10") [
+  dependencies = lib.optionals (pythonOlder "3.10") [
     importlib-metadata
   ];
 
@@ -38,12 +39,17 @@ buildPythonPackage rec {
   nativeCheckInputs = [
     editables
     git
+    mercurial
     pytestCheckHook
     setuptools
   ];
 
   preCheck = ''
     unset PDM_BUILD_SCM_VERSION
+
+    # tests require a configured git identity
+    export HOME=$TMPDIR
+    git config --global user.email nixbld@localhost
   '';
 
   setupHook = ./setup-hook.sh;
diff --git a/pkgs/development/python-modules/peaqevcore/default.nix b/pkgs/development/python-modules/peaqevcore/default.nix
index cbc81c1a0340..ff4baf1aa2be 100644
--- a/pkgs/development/python-modules/peaqevcore/default.nix
+++ b/pkgs/development/python-modules/peaqevcore/default.nix
@@ -8,14 +8,14 @@
 
 buildPythonPackage rec {
   pname = "peaqevcore";
-  version = "19.9.2";
+  version = "19.10.8";
   pyproject = true;
 
   disabled = pythonOlder "3.7";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-X5JKfIE6rISXb3F2liuyLrVHm5xw3DoFeMhqhEsdEIY=";
+    hash = "sha256-H9AJErjJC/zo5Fy1sZFLw6GCMm4YirMzwWbAhzXM7mg=";
   };
 
   postPatch = ''
diff --git a/pkgs/development/python-modules/peco/default.nix b/pkgs/development/python-modules/peco/default.nix
index 961b0c623d92..9b2001789cd2 100644
--- a/pkgs/development/python-modules/peco/default.nix
+++ b/pkgs/development/python-modules/peco/default.nix
@@ -1,29 +1,28 @@
-{ lib
-, aiohttp
-, buildPythonPackage
-, fetchPypi
-, pydantic
-, pythonOlder
-, setuptools
+{
+  lib,
+  aiohttp,
+  buildPythonPackage,
+  fetchPypi,
+  pydantic,
+  pythonOlder,
+  setuptools,
 }:
 
 buildPythonPackage rec {
   pname = "peco";
-  version = "0.0.29";
-  format = "pyproject";
+  version = "0.0.30";
+  pyproject = true;
 
   disabled = pythonOlder "3.7";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-zL0tBTwm+l5eyxlWr2xoE+nLpMfUKri1/yD+WgTUqHQ=";
+    hash = "sha256-a3MPqtbDftbLGtpJ66CFVC5wJFa9L3dqOKPfBZCaHpM=";
   };
 
-  nativeBuildInputs = [
-    setuptools
-  ];
+  build-system = [ setuptools ];
 
-  propagatedBuildInputs = [
+  dependencies = [
     aiohttp
     pydantic
   ];
@@ -31,9 +30,7 @@ buildPythonPackage rec {
   # Module has no tests
   doCheck = false;
 
-  pythonImportsCheck = [
-    "peco"
-  ];
+  pythonImportsCheck = [ "peco" ];
 
   meta = with lib; {
     description = "Library for interacting with the PECO outage map";
diff --git a/pkgs/development/python-modules/peewee/default.nix b/pkgs/development/python-modules/peewee/default.nix
index d839ad705ea7..93b27731359c 100644
--- a/pkgs/development/python-modules/peewee/default.nix
+++ b/pkgs/development/python-modules/peewee/default.nix
@@ -1,32 +1,36 @@
-{ lib
-, apsw
-, buildPythonPackage
-, cython
-, fetchFromGitHub
-, flask
-, python
-, sqlite
-, withMysql ? false
-, mysql-connector
-, withPostgres ? false
-, psycopg2
-, pythonOlder
+{
+  lib,
+  apsw,
+  buildPythonPackage,
+  cython,
+  fetchFromGitHub,
+  flask,
+  python,
+  sqlite,
+  withMysql ? false,
+  mysql-connector,
+  withPostgres ? false,
+  psycopg2,
+  pythonOlder,
+  setuptools,
 }:
 
 buildPythonPackage rec {
   pname = "peewee";
-  version = "3.17.1";
-  format = "setuptools";
+  version = "3.17.5";
+  pyproject = true;
 
   disabled = pythonOlder "3.7";
 
   src = fetchFromGitHub {
     owner = "coleifer";
-    repo = pname;
+    repo = "peewee";
     rev = "refs/tags/${version}";
-    hash = "sha256-Gob2qBPPxAeIO/I7+9r4dBIxhvKnnZWD2nYcrMANM8U=";
+    hash = "sha256-2SrqWPyeDBKOweLu7bEcDIAqCCtnKv0VBdzfpaA22ow=";
   };
 
+  build-system = [ setuptools ];
+
   buildInputs = [
     sqlite
     cython
@@ -34,15 +38,9 @@ buildPythonPackage rec {
 
   propagatedBuildInputs = [
     apsw
-  ] ++ lib.optionals withPostgres [
-    psycopg2
-  ] ++ lib.optionals withMysql [
-    mysql-connector
-  ];
+  ] ++ lib.optionals withPostgres [ psycopg2 ] ++ lib.optionals withMysql [ mysql-connector ];
 
-  nativeCheckInputs = [
-    flask
-  ];
+  nativeCheckInputs = [ flask ];
 
   doCheck = withPostgres;
 
@@ -51,15 +49,14 @@ buildPythonPackage rec {
     ${python.interpreter} runtests.py
   '';
 
-  pythonImportsCheck = [
-    "peewee"
-  ];
+  pythonImportsCheck = [ "peewee" ];
 
   meta = with lib; {
     description = "Python ORM with support for various database implementation";
-    mainProgram = "pwiz.py";
     homepage = "http://peewee-orm.com";
+    changelog = "https://github.com/coleifer/peewee/blob/${version}/CHANGELOG.md";
     license = licenses.mit;
     maintainers = with maintainers; [ ];
+    mainProgram = "pwiz.py";
   };
 }
diff --git a/pkgs/development/python-modules/pettingzoo/default.nix b/pkgs/development/python-modules/pettingzoo/default.nix
new file mode 100644
index 000000000000..389abd5f8907
--- /dev/null
+++ b/pkgs/development/python-modules/pettingzoo/default.nix
@@ -0,0 +1,135 @@
+{ lib
+, buildPythonPackage
+, pythonOlder
+, fetchFromGitHub
+, setuptools
+, wheel
+, gymnasium
+, numpy
+, chess
+, pillow
+, pybox2d
+, pygame
+, pymunk
+, rlcard
+, scipy
+, pre-commit
+, pynput
+, pytest
+, pytest-cov
+, pytest-markdown-docs
+, pytest-xdist
+, pytestCheckHook
+, stdenv
+}:
+
+buildPythonPackage rec {
+  pname = "pettingzoo";
+  version = "1.24.3";
+  pyproject = true;
+
+  disabled = pythonOlder "3.8";
+
+  src = fetchFromGitHub {
+    owner = "Farama-Foundation";
+    repo = "PettingZoo";
+    rev = "refs/tags/${version}";
+    hash = "sha256-TVM4MrA4W6AIWEdBIecI85ahJAAc21f27OzCxSpOoZU=";
+  };
+
+  build-system = [
+    setuptools
+    wheel
+  ];
+
+  dependencies = [
+    gymnasium
+    numpy
+  ];
+
+  passthru.optional-dependencies = {
+    all = [
+      chess
+      # multi-agent-ale-py
+      pillow
+      pybox2d
+      pygame
+      pymunk
+      rlcard
+      scipy
+      # shimmy
+    ];
+    atari = [
+      # multi-agent-ale-py
+      pygame
+    ];
+    butterfly = [
+      pygame
+      pymunk
+    ];
+    classic = [
+      chess
+      pygame
+      rlcard
+      # shimmy
+    ];
+    mpe = [
+      pygame
+    ];
+    other = [
+      pillow
+    ];
+    sisl = [
+      pybox2d
+      pygame
+      pymunk
+      scipy
+    ];
+    testing = [
+      # autorom
+      pre-commit
+      pynput
+      pytest
+      pytest-cov
+      pytest-markdown-docs
+      pytest-xdist
+    ];
+  };
+
+  pythonImportsCheck = [
+    "pettingzoo"
+  ];
+
+  nativeCheckInputs = [
+    chess
+    pygame
+    pymunk
+    pytest-markdown-docs
+    pytest-xdist
+    pytestCheckHook
+    rlcard
+  ];
+
+  disabledTestPaths = [
+    # Require unpackaged multi_agent_ale_py
+    "test/all_parameter_combs_test.py"
+    "test/pickle_test.py"
+    "test/unwrapped_test.py"
+  ];
+
+  disabledTests = [
+    # ImportError: cannot import name 'pytest_plugins' from 'pettingzoo.classic'
+    "test_chess"
+  ] ++ lib.optionals stdenv.isDarwin [
+    # Crashes on darwin: `Fatal Python error: Aborted`
+    "test_multi_episode_parallel_env_wrapper"
+  ];
+
+  meta = with lib; {
+    description = "An API standard for multi-agent reinforcement learning environments, with popular reference environments and related utilities";
+    homepage = "https://github.com/Farama-Foundation/PettingZoo";
+    changelog = "https://github.com/Farama-Foundation/PettingZoo/releases/tag/${version}";
+    license = licenses.mit;
+    maintainers = with maintainers; [ GaetanLepage ];
+  };
+}
diff --git a/pkgs/development/python-modules/pexpect/default.nix b/pkgs/development/python-modules/pexpect/default.nix
index e8c5efc3cba3..f98e531c0d54 100644
--- a/pkgs/development/python-modules/pexpect/default.nix
+++ b/pkgs/development/python-modules/pexpect/default.nix
@@ -3,6 +3,9 @@
 , fetchPypi
 , setuptools
 , ptyprocess
+
+# Reverse dependency
+, sage
 }:
 
 buildPythonPackage (rec {
@@ -24,6 +27,8 @@ buildPythonPackage (rec {
 
   propagatedBuildInputs = [ ptyprocess ];
 
+  passthru.tests = { inherit sage; };
+
   meta = with lib; {
     homepage = "http://www.noah.org/wiki/Pexpect";
     description = "Automate interactive console applications such as ssh, ftp, etc";
diff --git a/pkgs/development/python-modules/pg8000/default.nix b/pkgs/development/python-modules/pg8000/default.nix
index 3bd937c6d492..05e520137581 100644
--- a/pkgs/development/python-modules/pg8000/default.nix
+++ b/pkgs/development/python-modules/pg8000/default.nix
@@ -6,28 +6,28 @@
 , python-dateutil
 , pythonOlder
 , scramp
-, setuptools
+, hatchling
 , versioningit
 }:
 
 buildPythonPackage rec {
   pname = "pg8000";
-  version = "1.30.5";
-  format = "pyproject";
+  version = "1.31.1";
+  pyproject = true;
 
-  disabled = pythonOlder "3.7";
+  disabled = pythonOlder "3.8";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-By960AzXI2lcsun8AsHfuEx4FFXpe43m9MQoHuoIB4w=";
+    hash = "sha256-sREw1MYV3TBi6o/tgUMGSnl4t/5tRPFLciYdQ8jicIc=";
   };
 
-  nativeBuildInputs = [
-    setuptools
+  build-system = [
+    hatchling
     versioningit
   ];
 
-  propagatedBuildInputs = [
+  dependencies = [
     passlib
     python-dateutil
     scramp
diff --git a/pkgs/development/python-modules/pgspecial/default.nix b/pkgs/development/python-modules/pgspecial/default.nix
index 5c4e1bf84a2a..6ce163dd74c4 100644
--- a/pkgs/development/python-modules/pgspecial/default.nix
+++ b/pkgs/development/python-modules/pgspecial/default.nix
@@ -1,24 +1,31 @@
-{ lib
-, buildPythonPackage
-, fetchPypi
-, pytestCheckHook
-, psycopg
-, click
-, configobj
-, sqlparse
+{
+  lib,
+  buildPythonPackage,
+  click,
+  configobj,
+  fetchPypi,
+  psycopg,
+  pytestCheckHook,
+  pythonOlder,
+  setuptools,
+  sqlparse,
 }:
 
 buildPythonPackage rec {
   pname = "pgspecial";
-  version = "2.1.1";
-  format = "setuptools";
+  version = "2.1.2";
+  pyproject = true;
+
+  disabled = pythonOlder "3.7";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-o4I5zZYfrDPObaNcRm11istvlCkBWY19905bgv5vVjY=";
+    hash = "sha256-8EGeGzt4+zpy/jtUb2eIpxIJFTLVmf51k7X27lWoj4c=";
   };
 
-  propagatedBuildInputs = [
+  build-system = [ setuptools ];
+
+  dependencies = [
     click
     sqlparse
     psycopg
@@ -30,13 +37,14 @@ buildPythonPackage rec {
   ];
 
   disabledTests = [
-    # requires a postgresql server
+    # Test requires a Postgresql server
     "test_slash_dp_pattern_schema"
   ];
 
   meta = with lib; {
     description = "Meta-commands handler for Postgres Database";
     homepage = "https://github.com/dbcli/pgspecial";
+    changelog = "https://github.com/dbcli/pgspecial/releases/tag/v${version}";
     license = licenses.bsd3;
     maintainers = with maintainers; [ ];
   };
diff --git a/pkgs/development/python-modules/phe/default.nix b/pkgs/development/python-modules/phe/default.nix
index 0dc423883c4b..98f6a02f2f19 100644
--- a/pkgs/development/python-modules/phe/default.nix
+++ b/pkgs/development/python-modules/phe/default.nix
@@ -1,31 +1,48 @@
-{ lib, buildPythonPackage, fetchPypi, isPyPy, isPy3k, click, gmpy2, numpy } :
+{
+  lib,
+  buildPythonPackage,
+  fetchFromGitHub,
+  isPyPy,
+  isPy3k,
+  setuptools,
+  click,
+  gmpy2,
+  pytestCheckHook,
+  numpy,
+}:
 
-let
+buildPythonPackage rec {
   pname = "phe";
   version = "1.5.0";
-  format = "setuptools";
-in
+  pyproject = true;
 
-buildPythonPackage {
-  inherit pname version;
+  # https://github.com/data61/python-paillier/issues/51
+  disabled = isPyPy || !isPy3k;
 
-  # https://github.com/n1analytics/python-paillier/issues/51
-  disabled = isPyPy || ! isPy3k;
-
-  src = fetchPypi {
-    inherit pname version;
-    hash = "sha256-mS+3CR0kJ/DZczlG+PNQrN1NHQEgV/Kq02S6eflwM5w=";
+  src = fetchFromGitHub {
+    owner = "data61";
+    repo = "python-paillier";
+    rev = "refs/tags/${version}";
+    hash = "sha256-fsZ8x/K+8V4zyVgkci6XNAm89zQFWEbmRVp4jazFfVY=";
   };
 
-  buildInputs = [ click gmpy2 numpy ];
+  build-system = [ setuptools ];
+
+  dependencies = [
+    click
+    gmpy2 # optional, but major speed improvement
+  ];
 
-  # 29/233 tests fail
-  doCheck = false;
+  nativeCheckInputs = [
+    pytestCheckHook
+    numpy
+  ];
 
   meta = with lib; {
     description = "A library for Partially Homomorphic Encryption in Python";
     mainProgram = "pheutil";
-    homepage = "https://github.com/n1analytics/python-paillier";
+    homepage = "https://github.com/data61/python-paillier";
     license = licenses.gpl3;
+    maintainers = with maintainers; [ tomasajt ];
   };
 }
diff --git a/pkgs/development/python-modules/phik/default.nix b/pkgs/development/python-modules/phik/default.nix
index b2dae6f29b1e..bc7dd2a58265 100644
--- a/pkgs/development/python-modules/phik/default.nix
+++ b/pkgs/development/python-modules/phik/default.nix
@@ -3,20 +3,17 @@
 , cmake
 , fetchFromGitHub
 , joblib
-, jupyter
-, jupyter-client
 , matplotlib
-, nbconvert
 , ninja
-, numba
 , numpy
 , pandas
+, pathspec
+, pyproject-metadata
 , pybind11
 , pytestCheckHook
 , pythonOlder
-, scikit-build
+, scikit-build-core
 , scipy
-, setuptools
 }:
 
 buildPythonPackage rec {
@@ -24,7 +21,7 @@ buildPythonPackage rec {
   version = "0.12.4";
   pyproject = true;
 
-  disabled = pythonOlder "3.7";
+  disabled = pythonOlder "3.8";
 
   src = fetchFromGitHub {
     owner = "KaveIO";
@@ -33,58 +30,39 @@ buildPythonPackage rec {
     hash = "sha256-YsH7vVn6gzejunUjUY/RIcvWtaQ/W1gbciJWKi5LDTk=";
   };
 
-  nativeBuildInputs = [
+  build-system = [
     cmake
     ninja
-    scikit-build
-    setuptools
+    pathspec
+    pybind11
+    pyproject-metadata
+    scikit-build-core
   ];
 
-  propagatedBuildInputs = [
+  dependencies = [
     joblib
+    matplotlib
     numpy
-    scipy
     pandas
-    matplotlib
-    numba
-    pybind11
+    scipy
   ];
 
   nativeCheckInputs = [
     pytestCheckHook
-    nbconvert
-    jupyter
-    jupyter-client
   ];
 
-  # Uses setuptools to drive build process
+  # Uses scikit-build-core to drive build process
   dontUseCmakeConfigure = true;
 
   pythonImportsCheck = [
     "phik"
   ];
 
-  postInstall = ''
-    rm -r $out/bin
-  '';
-
   preCheck = ''
     # import from $out
     rm -r phik
   '';
 
-  disabledTests = [
-    # TypeError: 'numpy.float64' object cannot be interpreted as an integer
-    # https://github.com/KaveIO/PhiK/issues/73
-    "test_significance_matrix_hybrid"
-    "test_significance_matrix_mc"
-  ];
-
-  disabledTestPaths = [
-    # Don't test integrations
-    "tests/phik_python/integration/"
-  ];
-
   meta = with lib; {
     description = "Phi_K correlation analyzer library";
     longDescription = ''
diff --git a/pkgs/development/python-modules/phonenumbers/default.nix b/pkgs/development/python-modules/phonenumbers/default.nix
index b2bb4cbfd01d..85153b6fa905 100644
--- a/pkgs/development/python-modules/phonenumbers/default.nix
+++ b/pkgs/development/python-modules/phonenumbers/default.nix
@@ -7,14 +7,14 @@
 
 buildPythonPackage rec {
   pname = "phonenumbers";
-  version = "8.13.31";
+  version = "8.13.34";
   format = "setuptools";
 
   disabled = pythonOlder "3.7";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-J0IHHJ0K8JJ0yKWyom2aNqy/LqXLYpQ8ws6ttcDIdkE=";
+    hash = "sha256-fCZ2vge30PdEEeJ14GYDgKDsPuDTWfBw1xlCS9LF9i4=";
   };
 
   nativeCheckInputs = [
diff --git a/pkgs/development/python-modules/phonopy/default.nix b/pkgs/development/python-modules/phonopy/default.nix
index 0cdd9d8bff13..f0c443136adf 100644
--- a/pkgs/development/python-modules/phonopy/default.nix
+++ b/pkgs/development/python-modules/phonopy/default.nix
@@ -14,14 +14,14 @@
 
 buildPythonPackage rec {
   pname = "phonopy";
-  version = "2.22.1";
+  version = "2.23.1";
   pyproject = true;
 
   disabled = pythonOlder "3.7";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-nux6/1z1xBr+4+fWrR/oOc+zVOI9j60p/SHHAPZ+hWI=";
+    hash = "sha256-xJohROJNAPdEITtM/VncAYL8ASkfgThKy8XXnqiS3hU=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/python-modules/phunspell/default.nix b/pkgs/development/python-modules/phunspell/default.nix
new file mode 100644
index 000000000000..c4d8cf4ddc16
--- /dev/null
+++ b/pkgs/development/python-modules/phunspell/default.nix
@@ -0,0 +1,53 @@
+{
+  lib,
+  buildPythonPackage,
+  fetchFromGitHub,
+  fetchpatch,
+
+  setuptools,
+
+  spylls,
+}:
+
+buildPythonPackage rec {
+  pname = "phunspell";
+  version = "0.1.6";
+  pyproject = true;
+
+  src = fetchFromGitHub {
+    owner = "dvwright";
+    repo = "phunspell";
+    rev = "refs/tags/v${version}";
+    hash = "sha256-TlO9Ccr2iRN+s3JV+3P36RF9oFY32fj+24sKslZZCVk=";
+  };
+
+  patches = [
+    (fetchpatch {
+      name = "fix-package-data-warning.patch";
+      url = "https://github.com/dvwright/phunspell/commit/70a0ee8af8442797e03916cea31637c21e6d32d9.patch";
+      hash = "sha256-kSaKHd7dVJM8+2dqxjs26Hv0feNXAXXymUE97DNVBFM=";
+    })
+    (fetchpatch {
+      name = "replace-description-file-deprecated-option.patch";
+      url = "https://github.com/dvwright/phunspell/commit/331c593b486cebe1a9b72befa568de9b51033f15.patch";
+      hash = "sha256-gdYfeG1vBtjnDDCjmg+ZSuToqVe0hrzB3RIqBLGNvBQ=";
+    })
+  ];
+
+  build-system = [ setuptools ];
+
+  dependencies = [ spylls ];
+
+  # for tests need lots of RAM, just skip...
+  doCheck = false;
+
+  pythonImportsCheck = [ "phunspell" ];
+
+  meta = with lib; {
+    description = "Pure Python spell checker, wrapping spylls a port of Hunspell";
+    homepage = "https://github.com/dvwright/phunspell";
+    changelog = "https://github.com/dvwright/phunspell/releases/tag/v${version}";
+    license = licenses.mit;
+    maintainers = with maintainers; [ vizid ];
+  };
+}
diff --git a/pkgs/development/python-modules/pickleshare/default.nix b/pkgs/development/python-modules/pickleshare/default.nix
index d6be608aaa2b..52ddc9367251 100644
--- a/pkgs/development/python-modules/pickleshare/default.nix
+++ b/pkgs/development/python-modules/pickleshare/default.nix
@@ -2,8 +2,6 @@
 , buildPythonPackage
 , fetchPypi
 , path
-, pathlib2
-, pythonOlder
 }:
 
 buildPythonPackage rec {
@@ -16,8 +14,7 @@ buildPythonPackage rec {
     sha256 = "87683d47965c1da65cdacaf31c8441d12b8044cdec9aca500cd78fc2c683afca";
   };
 
-  propagatedBuildInputs = [ path ]
-    ++ lib.optional (pythonOlder "3.4") pathlib2;
+  propagatedBuildInputs = [ path ];
 
   # No proper test suite
   doCheck = false;
diff --git a/pkgs/development/python-modules/piep/default.nix b/pkgs/development/python-modules/piep/default.nix
index 0825380a925b..ec3a9f5ec53c 100644
--- a/pkgs/development/python-modules/piep/default.nix
+++ b/pkgs/development/python-modules/piep/default.nix
@@ -10,7 +10,7 @@ buildPythonPackage rec {
   version = "0.10.0";
   format = "setuptools";
   pname = "piep";
-  disabled = isPy3k;
+  disabled = !isPy3k;
 
   src = fetchPypi {
     inherit pname version;
diff --git a/pkgs/development/python-modules/pikepdf/default.nix b/pkgs/development/python-modules/pikepdf/default.nix
index bfcd4c0589c2..ba0ce17b0c3a 100644
--- a/pkgs/development/python-modules/pikepdf/default.nix
+++ b/pkgs/development/python-modules/pikepdf/default.nix
@@ -24,7 +24,7 @@
 
 buildPythonPackage rec {
   pname = "pikepdf";
-  version = "8.13.0";
+  version = "8.14.0";
   pyproject = true;
 
   disabled = pythonOlder "3.8";
@@ -39,7 +39,7 @@ buildPythonPackage rec {
     postFetch = ''
       rm "$out/.git_archival.txt"
     '';
-    hash = "sha256-6HCFPHIQ6+SHt4Zu6CZ0R2Ah+jFnztGOCMhQfvR6FxY=";
+    hash = "sha256-3ORvbhO3eLu/NIE0Lwdf93QtUHUmyMf7LmdMBJpkYIg=";
   };
 
   patches = [
diff --git a/pkgs/development/python-modules/pikepdf/paths.patch b/pkgs/development/python-modules/pikepdf/paths.patch
index 1bd030c186c2..83cebed5cc23 100644
--- a/pkgs/development/python-modules/pikepdf/paths.patch
+++ b/pkgs/development/python-modules/pikepdf/paths.patch
@@ -12,10 +12,10 @@ index da40043f..4f566f01 100644
              check=True,
          )
 diff --git a/src/pikepdf/jbig2.py b/src/pikepdf/jbig2.py
-index f89b4f90..f187ebdf 100644
+index 901f3b6f..45551820 100644
 --- a/src/pikepdf/jbig2.py
 +++ b/src/pikepdf/jbig2.py
-@@ -63,7 +63,7 @@ class JBIG2Decoder(JBIG2DecoderInterface):
+@@ -72,7 +72,7 @@ class JBIG2Decoder(JBIG2DecoderInterface):
              output_path = Path(tmpdir) / "outfile"
  
              args = [
@@ -24,12 +24,12 @@ index f89b4f90..f187ebdf 100644
                  "--embedded",
                  "--format",
                  "png",
-@@ -90,7 +90,7 @@ class JBIG2Decoder(JBIG2DecoderInterface):
+@@ -101,7 +101,7 @@ class JBIG2Decoder(JBIG2DecoderInterface):
      def _version(self) -> Version:
          try:
              proc = self._run(
--                ['jbig2dec', '--version'], stdout=PIPE, check=True, encoding='ascii'
-+                ['@jbig2dec@', '--version'], stdout=PIPE, check=True, encoding='ascii'
-             )
-         except (CalledProcessError, FileNotFoundError) as e:
-             raise DependencyError("jbig2dec - not installed or not found") from e
+-                ['jbig2dec', '--version'],
++                ['@jbig2dec@', '--version'],
+                 stdout=PIPE,
+                 check=True,
+                 encoding='ascii',
diff --git a/pkgs/development/python-modules/pillow/default.nix b/pkgs/development/python-modules/pillow/default.nix
index f101d6b361ec..f320000eecdc 100644
--- a/pkgs/development/python-modules/pillow/default.nix
+++ b/pkgs/development/python-modules/pillow/default.nix
@@ -7,12 +7,12 @@
 , defusedxml, olefile, freetype, libjpeg, zlib, libtiff, libwebp, libxcrypt, tcl, lcms2, tk, libX11
 , libxcb, openjpeg, libimagequant, numpy, pytestCheckHook, setuptools
 # for passthru.tests
-, imageio, matplotlib, pilkit, pydicom, reportlab
+, imageio, matplotlib, pilkit, pydicom, reportlab, sage
 }@args:
 
 import ./generic.nix (rec {
   pname = "pillow";
-  version = "10.2.0";
+  version = "10.3.0";
   format = "pyproject";
 
   disabled = pythonOlder "3.8";
@@ -20,11 +20,11 @@ import ./generic.nix (rec {
   src = fetchPypi {
     pname = "pillow";
     inherit version;
-    hash = "sha256-6H8LLHgVfhLXaGsn1jwHD9ZdmU6N2ubzKODc9KDNAH4=";
+    hash = "sha256-nSRV+/RMkUhAx5PomqgtDhdjoUJToAB0NxmuWUaBSy0=";
   };
 
   passthru.tests = {
-    inherit imageio matplotlib pilkit pydicom reportlab;
+    inherit imageio matplotlib pilkit pydicom reportlab sage;
   };
 
   meta = with lib; {
diff --git a/pkgs/development/python-modules/pinecone-client/default.nix b/pkgs/development/python-modules/pinecone-client/default.nix
index ae21d2042c57..84460718dfdb 100644
--- a/pkgs/development/python-modules/pinecone-client/default.nix
+++ b/pkgs/development/python-modules/pinecone-client/default.nix
@@ -1,24 +1,25 @@
-{ lib
-, buildPythonPackage
-, dnspython
-, fetchPypi
-, loguru
-, numpy
-, poetry-core
-, python-dateutil
-, pythonOlder
-, pythonRelaxDepsHook
-, pyyaml
-, requests
-, setuptools
-, tqdm
-, typing-extensions
-, urllib3
+{
+  lib,
+  buildPythonPackage,
+  dnspython,
+  fetchPypi,
+  loguru,
+  numpy,
+  poetry-core,
+  python-dateutil,
+  pythonOlder,
+  pythonRelaxDepsHook,
+  pyyaml,
+  requests,
+  setuptools,
+  tqdm,
+  typing-extensions,
+  urllib3,
 }:
 
 buildPythonPackage rec {
   pname = "pinecone-client";
-  version = "4.0.0";
+  version = "4.1.0";
   pyproject = true;
 
   disabled = pythonOlder "3.8";
@@ -26,16 +27,12 @@ buildPythonPackage rec {
   src = fetchPypi {
     pname = "pinecone_client";
     inherit version;
-    hash = "sha256-1E2yEuZKo0PRTvybCOnkXZi6e2gfYymLhwM1QuoBfyM=";
+    hash = "sha256-QgYqYo56lB0Lwku4r7Am861NJkzwbWpiej3lgyFK494=";
   };
 
-  pythonRelaxDeps = [
-    "urllib3"
-  ];
+  pythonRelaxDeps = [ "urllib3" ];
 
-  nativeBuildInputs = [
-    pythonRelaxDepsHook
-  ];
+  nativeBuildInputs = [ pythonRelaxDepsHook ];
 
   build-system = [
     setuptools
@@ -57,9 +54,7 @@ buildPythonPackage rec {
   # Tests require network access
   doCheck = false;
 
-  pythonImportsCheck = [
-    "pinecone"
-  ];
+  pythonImportsCheck = [ "pinecone" ];
 
   meta = with lib; {
     description = "The Pinecone python client";
diff --git a/pkgs/development/python-modules/pipdeptree/default.nix b/pkgs/development/python-modules/pipdeptree/default.nix
index 8dad1316c1a7..3aa70970fc65 100644
--- a/pkgs/development/python-modules/pipdeptree/default.nix
+++ b/pkgs/development/python-modules/pipdeptree/default.nix
@@ -7,6 +7,7 @@
   graphviz,
   hatchling,
   hatch-vcs,
+  packaging,
   pytest-mock,
   pytestCheckHook,
   pip,
@@ -15,7 +16,7 @@
 
 buildPythonPackage rec {
   pname = "pipdeptree";
-  version = "2.19.1";
+  version = "2.20.0";
   pyproject = true;
 
   disabled = pythonOlder "3.8";
@@ -24,7 +25,7 @@ buildPythonPackage rec {
     owner = "tox-dev";
     repo = "pipdeptree";
     rev = "refs/tags/${version}";
-    hash = "sha256-kXRz78UHQtVyHFFnURSjOOXX8Me2I5tG2bX+u2yGyzY=";
+    hash = "sha256-Mng5YUM2+T3OFrr4uGVvq5mP0aq10r21pp46tw6lLno=";
   };
 
   build-system = [
@@ -32,7 +33,10 @@ buildPythonPackage rec {
     hatch-vcs
   ];
 
-  dependencies = [ pip ];
+  dependencies = [
+    pip
+    packaging
+  ];
 
   passthru.optional-dependencies = {
     graphviz = [ graphviz ];
diff --git a/pkgs/development/python-modules/pipenv-poetry-migrate/default.nix b/pkgs/development/python-modules/pipenv-poetry-migrate/default.nix
index 9f04970f9680..82707a5d98d1 100644
--- a/pkgs/development/python-modules/pipenv-poetry-migrate/default.nix
+++ b/pkgs/development/python-modules/pipenv-poetry-migrate/default.nix
@@ -11,7 +11,7 @@
 
 buildPythonPackage rec {
   pname = "pipenv-poetry-migrate";
-  version = "0.5.5";
+  version = "0.5.6";
   format = "pyproject";
 
   disabled = pythonOlder "3.8";
@@ -20,7 +20,7 @@ buildPythonPackage rec {
     owner = "yhino";
     repo = "pipenv-poetry-migrate";
     rev = "refs/tags/v${version}";
-    hash = "sha256-6K8rTfASpK7OvBwUy40X6xzgpfWL7lIJvpfRiGfBK6U=";
+    hash = "sha256-+OkfuIwbDx6SN5lawDJZYBrjHn9rsT/FT+GQ2MOAtg0=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/python-modules/pipetools/default.nix b/pkgs/development/python-modules/pipetools/default.nix
new file mode 100644
index 000000000000..9003f61b28e8
--- /dev/null
+++ b/pkgs/development/python-modules/pipetools/default.nix
@@ -0,0 +1,32 @@
+{
+  lib,
+  buildPythonPackage,
+  fetchFromGitHub,
+  pytestCheckHook,
+  setuptools,
+}:
+
+buildPythonPackage rec {
+  pname = "pipetools";
+  version = "1.1.0";
+
+  # Used github as the src since the pypi package does not include the tests
+  src = fetchFromGitHub {
+    owner = "0101";
+    repo = pname;
+    rev = "6cba9fadab07a16fd85eed16d5cffc609f84c62b";
+    hash = "sha256-BoZFePQCQfz1dkct5p/WQLuXoNX3eLcnKf3Mf0fG6u8=";
+  };
+
+  nativeCheckInputs = [ pytestCheckHook ];
+
+  propagatedBuildInputs = [ setuptools ];
+
+  pythonImportsCheck = [ "pipetools" ];
+
+  meta = {
+    description = "A library that enables function composition similar to using Unix pipes";
+    homepage = "https://0101.github.io/pipetools/";
+    license = lib.licenses.mit;
+  };
+}
diff --git a/pkgs/development/python-modules/pixel-font-builder/default.nix b/pkgs/development/python-modules/pixel-font-builder/default.nix
index bd67a88905f7..d8908fe265ef 100644
--- a/pkgs/development/python-modules/pixel-font-builder/default.nix
+++ b/pkgs/development/python-modules/pixel-font-builder/default.nix
@@ -10,23 +10,32 @@
 , brotli
 , fonttools
 , pypng
+, pcffont
+, pythonRelaxDepsHook
 }:
 
 buildPythonPackage rec {
   pname = "pixel-font-builder";
-  version = "0.0.15";
+  version = "0.0.24";
+  pyproject = true;
 
   disabled = pythonOlder "3.11";
 
   src = fetchPypi {
     pname = "pixel_font_builder";
     inherit version;
-    hash = "sha256-2QnbnJk3onwxmjZ6aUgXFGsx6GtqJDV9Bgs3p5Czvns=";
+    hash = "sha256-hBlTTIPx4TRgeXapVnSaKPUwseR3uYT0gcgKLGmmSZI=";
   };
 
-  format = "pyproject";
+  pythonRelaxDeps = [
+    "fonttools"
+  ];
 
   nativeBuildInputs = [
+    pythonRelaxDepsHook
+  ];
+
+  build-system = [
     hatch-vcs
     hatchling
   ];
@@ -36,10 +45,11 @@ buildPythonPackage rec {
     pypng
   ];
 
-  propagatedBuildInputs = [
+  dependencies = [
     bdffont
     brotli
     fonttools
+    pcffont
   ];
 
   passthru.updateScript = nix-update-script { };
diff --git a/pkgs/development/python-modules/plaid-python/default.nix b/pkgs/development/python-modules/plaid-python/default.nix
index f3a92c1954c8..88df10cfc7f5 100644
--- a/pkgs/development/python-modules/plaid-python/default.nix
+++ b/pkgs/development/python-modules/plaid-python/default.nix
@@ -9,14 +9,14 @@
 
 buildPythonPackage rec {
   pname = "plaid-python";
-  version = "21.0.0";
+  version = "21.1.0";
   format = "setuptools";
 
   disabled = pythonOlder "3.6";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-ksYTV10FGUjBIkJru4CiJIlPLT4S7fbpsNrjYczTFlI=";
+    hash = "sha256-KZGfr60RclPMis3y/XPY+VMQr0IxGXMwI7tPxNOlmhg=";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/plantuml-markdown/default.nix b/pkgs/development/python-modules/plantuml-markdown/default.nix
index 8013e90e71f8..0ec4ad920fdd 100644
--- a/pkgs/development/python-modules/plantuml-markdown/default.nix
+++ b/pkgs/development/python-modules/plantuml-markdown/default.nix
@@ -13,7 +13,7 @@
 
 buildPythonPackage rec {
   pname = "plantuml-markdown";
-  version = "3.9.5";
+  version = "3.9.7";
   format = "setuptools";
 
   disabled = pythonOlder "3.7";
@@ -22,7 +22,7 @@ buildPythonPackage rec {
     owner = "mikitex70";
     repo = pname;
     rev = "refs/tags/${version}";
-    hash = "sha256-bfbji517y0/PXMfLg2gGWlogg7IPhXvQ5vekLzc4/ow=";
+    hash = "sha256-/lsu7kiUyQ6LUFINX+/aCFSKm1pGyIfUzSuUehwCz7I=";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/playwright/default.nix b/pkgs/development/python-modules/playwright/default.nix
index ff22cdf0cb8d..c0032e5ebf83 100644
--- a/pkgs/development/python-modules/playwright/default.nix
+++ b/pkgs/development/python-modules/playwright/default.nix
@@ -51,7 +51,7 @@ buildPythonPackage rec {
 
     substituteInPlace setup.py \
       --replace "setuptools-scm==8.0.4" "setuptools-scm" \
-      --replace "wheel==0.41.2" "wheel"
+      --replace-fail "wheel==0.42.0" "wheel"
 
     substituteInPlace pyproject.toml \
       --replace 'requires = ["setuptools==68.2.2", "setuptools-scm==8.0.4", "wheel==0.42.0", "auditwheel==5.4.0"]' \
diff --git a/pkgs/development/python-modules/playwrightcapture/default.nix b/pkgs/development/python-modules/playwrightcapture/default.nix
index 36c701b1a49f..c13df7c6fea1 100644
--- a/pkgs/development/python-modules/playwrightcapture/default.nix
+++ b/pkgs/development/python-modules/playwrightcapture/default.nix
@@ -21,7 +21,7 @@
 
 buildPythonPackage rec {
   pname = "playwrightcapture";
-  version = "1.24.6";
+  version = "1.24.8";
   pyproject = true;
 
   disabled = pythonOlder "3.8";
@@ -30,7 +30,7 @@ buildPythonPackage rec {
     owner = "Lookyloo";
     repo = "PlaywrightCapture";
     rev = "refs/tags/v${version}";
-    hash = "sha256-DFMnlFN9CooQ7HBiw6Ur6KMTMrEw6JxkT6IxlVU+PdY=";
+    hash = "sha256-91EVR4cW383HiwcAg4BuhuC5jlwLwP1IFodD1iIo1j4=";
   };
 
   pythonRelaxDeps = [
diff --git a/pkgs/development/python-modules/plotly/default.nix b/pkgs/development/python-modules/plotly/default.nix
index 0bec07c3bad2..a0e26e354ed9 100644
--- a/pkgs/development/python-modules/plotly/default.nix
+++ b/pkgs/development/python-modules/plotly/default.nix
@@ -9,12 +9,12 @@
 
 buildPythonPackage rec {
   pname = "plotly";
-  version = "5.20.0";
+  version = "5.21.0";
   format = "setuptools";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-v5AcgF0iAyz6U0sv98WqawZZ4DfxnsHgzKf1hZGLXIk=";
+    hash = "sha256-aSQ/jBZdS+JsDfHG8LeyWOLf7v4DJ2NAStfn+318IHM=";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/plotnine/default.nix b/pkgs/development/python-modules/plotnine/default.nix
index fb86d44472d2..6368f8c66785 100644
--- a/pkgs/development/python-modules/plotnine/default.nix
+++ b/pkgs/development/python-modules/plotnine/default.nix
@@ -17,7 +17,7 @@
 
 buildPythonPackage rec {
   pname = "plotnine";
-  version = "0.13.5";
+  version = "0.13.6";
   pyproject = true;
 
   disabled = pythonOlder "3.9";
@@ -26,7 +26,7 @@ buildPythonPackage rec {
     owner = "has2k1";
     repo = "plotnine";
     rev = "refs/tags/v${version}";
-    hash = "sha256-vGxsBcY4CRT4rBUq0AQ4oo0etKK+CtUD487VvnoK/rI=";
+    hash = "sha256-/yxRYK3ZTrYj+l3TQhFllyICnJjCZPd4ebNurCLZAYg=";
   };
 
   postPatch = ''
@@ -57,6 +57,12 @@ buildPythonPackage rec {
 
   pythonImportsCheck = [ "plotnine" ];
 
+  disabledTests = [
+    # Tries to change locale. The issued warning causes this test to fail.
+    # UserWarning: Could not set locale to English/United States. Some date-related tests may fail
+    "test_no_after_scale_warning"
+  ];
+
   disabledTestPaths = [
     # Assertion Errors:
     # Generated plot images do not exactly match the expected files.
diff --git a/pkgs/development/python-modules/plugwise/default.nix b/pkgs/development/python-modules/plugwise/default.nix
index 358b81eb4c20..9f70d36118df 100644
--- a/pkgs/development/python-modules/plugwise/default.nix
+++ b/pkgs/development/python-modules/plugwise/default.nix
@@ -22,7 +22,7 @@
 
 buildPythonPackage rec {
   pname = "plugwise";
-  version = "0.37.3";
+  version = "0.37.5";
   pyproject = true;
 
   disabled = pythonOlder "3.11";
@@ -31,7 +31,7 @@ buildPythonPackage rec {
     owner = "plugwise";
     repo = "python-plugwise";
     rev = "refs/tags/v${version}";
-    hash = "sha256-aQz0p+DNi1XVoFwdFjc3RjpHqA2kGf4pU1QS6m271gU=";
+    hash = "sha256-37GnuF8Z2UC02TqP6f14qxct5QCWi+8k7KUDhd7EYRQ=";
   };
 
   postPatch = ''
diff --git a/pkgs/development/python-modules/portion/default.nix b/pkgs/development/python-modules/portion/default.nix
new file mode 100644
index 000000000000..5cba2a579294
--- /dev/null
+++ b/pkgs/development/python-modules/portion/default.nix
@@ -0,0 +1,49 @@
+{ lib
+, buildPythonPackage
+, pythonOlder
+, fetchFromGitHub
+, setuptools
+, wheel
+, sortedcontainers
+, pytestCheckHook
+}:
+
+buildPythonPackage rec {
+  pname = "portion";
+  version = "2.4.2";
+  pyproject = true;
+
+  disabled = pythonOlder "3.7";
+
+  src = fetchFromGitHub {
+    owner = "AlexandreDecan";
+    repo = "portion";
+    rev = "refs/tags/${version}";
+    hash = "sha256-URoyuE0yivUqPjJZbvATkAnTxicY4F2eiJ16rIUdY3Y=";
+  };
+
+  build-system = [
+    setuptools
+    wheel
+  ];
+
+  dependencies = [
+    sortedcontainers
+  ];
+
+  pythonImportsCheck = [
+    "portion"
+  ];
+
+  nativeCheckInputs = [
+    pytestCheckHook
+  ];
+
+  meta = with lib; {
+    description = "Portion, a Python library providing data structure and operations for intervals";
+    homepage = "https://github.com/AlexandreDecan/portion";
+    changelog = "https://github.com/AlexandreDecan/portion/blob/${src.rev}/CHANGELOG.md";
+    license = licenses.lgpl3;
+    maintainers = with maintainers; [ GaetanLepage ];
+  };
+}
diff --git a/pkgs/development/python-modules/pplpy/default.nix b/pkgs/development/python-modules/pplpy/default.nix
index 641008be07fc..4a4d97c554cf 100644
--- a/pkgs/development/python-modules/pplpy/default.nix
+++ b/pkgs/development/python-modules/pplpy/default.nix
@@ -9,6 +9,9 @@
 , cysignals
 , gmpy2
 , sphinx
+
+# Reverse dependency
+, sage
 }:
 
 buildPythonPackage rec {
@@ -54,6 +57,8 @@ buildPythonPackage rec {
     mv docs/build/html "$doc/share/doc/pplpy"
   '';
 
+  passthru.tests = { inherit sage; };
+
   meta = with lib; {
     description = "A Python wrapper for ppl";
     homepage = "https://gitlab.com/videlec/pplpy";
diff --git a/pkgs/development/python-modules/pretty-errors/default.nix b/pkgs/development/python-modules/pretty-errors/default.nix
new file mode 100644
index 000000000000..ce9b646a543c
--- /dev/null
+++ b/pkgs/development/python-modules/pretty-errors/default.nix
@@ -0,0 +1,40 @@
+{ lib
+, buildPythonPackage
+, fetchPypi
+, setuptools
+, wheel
+, colorama
+}:
+
+buildPythonPackage rec {
+  pname = "pretty-errors";
+  version = "1.2.25";
+  pyproject = true;
+
+  src = fetchPypi {
+    pname = "pretty_errors";
+    inherit version;
+    hash = "sha256-oWulx1LIfCY7+S+LS1hiTjseKScak5H1ZPErhuk8Z1U=";
+  };
+
+  build-system = [
+    setuptools
+    wheel
+  ];
+
+  dependencies = [
+    colorama
+  ];
+
+  pythonImportsCheck = [ "pretty_errors" ];
+
+  # No test
+  doCheck = false;
+
+  meta = with lib; {
+    description = "Prettifies Python exception output to make it legible";
+    homepage = "https://pypi.org/project/pretty-errors/";
+    license = licenses.mit;
+    maintainers = with maintainers; [ GaetanLepage ];
+  };
+}
diff --git a/pkgs/development/python-modules/primecountpy/default.nix b/pkgs/development/python-modules/primecountpy/default.nix
index 463a0cf50be6..60ae77e7dd94 100644
--- a/pkgs/development/python-modules/primecountpy/default.nix
+++ b/pkgs/development/python-modules/primecountpy/default.nix
@@ -4,6 +4,9 @@
 , primecount
 , cython
 , cysignals
+
+# Reverse dependency
+, sage
 }:
 
 buildPythonPackage rec {
@@ -25,6 +28,8 @@ buildPythonPackage rec {
 
   pythonImportsCheck = [ "primecountpy" ];
 
+  passthru.tests = { inherit sage; };
+
   meta = with lib; {
     description = "Cython interface for C++ primecount library";
     homepage = "https://github.com/dimpase/primecountpy/";
diff --git a/pkgs/development/python-modules/private-gpt/default.nix b/pkgs/development/python-modules/private-gpt/default.nix
new file mode 100644
index 000000000000..226489d046cb
--- /dev/null
+++ b/pkgs/development/python-modules/private-gpt/default.nix
@@ -0,0 +1,119 @@
+{ lib
+, buildPythonPackage
+, python
+, fetchFromGitHub
+, poetry-core
+, fastapi
+, injector
+, llama-index-core
+, llama-index-readers-file
+, huggingface-hub
+, python-multipart
+, pyyaml
+, transformers
+, uvicorn
+, watchdog
+, gradio
+, fetchurl
+, fetchpatch
+}:
+
+buildPythonPackage rec {
+  pname = "private-gpt";
+  version = "0.5.0";
+  pyproject = true;
+
+  src = fetchFromGitHub {
+    owner = "zylon-ai";
+    repo = "private-gpt";
+    rev = "v${version}";
+    hash = "sha256-bjydzJhOJjmbflcJbuMyNsmby7HtNPFW3MY2Tw12cHw=";
+  };
+
+  patches = [
+    # Fix a vulnerability, to be removed in the next bump version
+    # See https://github.com/zylon-ai/private-gpt/pull/1890
+    (fetchpatch {
+      url = "https://github.com/zylon-ai/private-gpt/commit/86368c61760c9cee5d977131d23ad2a3e063cbe9.patch";
+      hash = "sha256-4ysRUuNaHW4bmNzg4fn++89b430LP6AzYDoX2HplVH0=";
+    })
+  ];
+
+  build-system = [
+    poetry-core
+  ];
+
+  dependencies = [
+    fastapi
+    injector
+    llama-index-core
+    llama-index-readers-file
+    python-multipart
+    pyyaml
+    transformers
+    uvicorn
+    watchdog
+  ] ++ lib.flatten (builtins.attrValues passthru.optional-dependencies);
+
+  # This is needed for running the tests and the service in offline mode,
+  # See related issue at https://github.com/zylon-ai/private-gpt/issues/1870
+  passthru.cl100k_base.tiktoken = fetchurl {
+    url = "https://openaipublic.blob.core.windows.net/encodings/cl100k_base.tiktoken";
+    hash = "sha256-Ijkht27pm96ZW3/3OFE+7xAPtR0YyTWXoRO8/+hlsqc=";
+  };
+
+  passthru.optional-dependencies = with python.pkgs; {
+    embeddings-huggingface = [
+      huggingface-hub
+      llama-index-embeddings-huggingface
+    ];
+    embeddings-ollama = [
+      llama-index-embeddings-ollama
+    ];
+    embeddings-openai = [
+      llama-index-embeddings-openai
+    ];
+    embeddings-sagemaker = [
+      boto3
+    ];
+    llms-ollama = [
+      llama-index-llms-ollama
+    ];
+    llms-openai = [
+      llama-index-llms-openai
+    ];
+    llms-openai-like = [
+      llama-index-llms-openai-like
+    ];
+    llms-sagemaker = [
+      boto3
+    ];
+    ui = [
+      gradio
+    ];
+    vector-stores-chroma = [
+      llama-index-vector-stores-chroma
+    ];
+    vector-stores-postgres = [
+      llama-index-vector-stores-postgres
+    ];
+    vector-stores-qdrant = [
+      llama-index-vector-stores-qdrant
+    ];
+  };
+
+  postInstall = ''
+    cp settings*.yaml $out/${python.sitePackages}/private_gpt/
+  '';
+
+  pythonImportsCheck = [ "private_gpt" ];
+
+  meta = {
+    changelog = "https://github.com/zylon-ai/private-gpt/blob/${src.rev}/CHANGELOG.md";
+    description = "Interact with your documents using the power of GPT, 100% privately, no data leaks";
+    homepage = "https://github.com/zylon-ai/private-gpt";
+    license = lib.licenses.asl20;
+    mainProgram = "private-gpt";
+    maintainers = with lib.maintainers; [ drupol ];
+  };
+}
diff --git a/pkgs/development/python-modules/prometrix/default.nix b/pkgs/development/python-modules/prometrix/default.nix
index 58b3ac27361e..fefbfd5f8298 100644
--- a/pkgs/development/python-modules/prometrix/default.nix
+++ b/pkgs/development/python-modules/prometrix/default.nix
@@ -1,36 +1,46 @@
 { lib
-, buildPythonPackage
-, fetchFromGitHub
 , boto3
 , botocore
+, buildPythonPackage
 , dateparser
+, fetchFromGitHub
 , matplotlib
 , numpy
 , pandas
 , poetry-core
 , prometheus-api-client
-, pydantic_1
+, pydantic
+, pythonRelaxDepsHook
 , requests
 }:
 
 buildPythonPackage rec {
   pname = "prometrix";
-  version = "unstable-2024-02-20";
-  format = "pyproject";
+  version = "0.1.18-unstable-2024-04-30";
+  pyproject = true;
 
   src = fetchFromGitHub {
     owner = "robusta-dev";
     repo = "prometrix";
-    rev = "ab2dad2192ed3df91c1a25446a4f54b8f2f6742f";
-    hash = "sha256-/72Qkd2BojYgiQi5rq7dVsEje7M0aQQXhenvIM7lSy4=";
+    # https://github.com/robusta-dev/prometrix/issues/19
+    rev = "35128847d46016b88455e0a98f0eeec08d042107";
+    hash = "sha256-g8ZqgL9ETVwpKLMQS7s7A4GpSGfaFEDLOr8JBvFl2C4=";
   };
 
-  postPatch = ''
-    substituteInPlace pyproject.toml \
-      --replace-fail 'pydantic = "^1.8.1"' 'pydantic = "*"'
-  '';
+  pythonRelaxDeps = [
+    "pydantic"
+    "urllib3"
+  ];
+
+  build-system = [
+    poetry-core
+  ];
+
+  nativeBuildInputs = [
+    pythonRelaxDepsHook
+  ];
 
-  propagatedBuildInputs = [
+  dependencies = [
     boto3
     botocore
     dateparser
@@ -38,13 +48,13 @@ buildPythonPackage rec {
     numpy
     pandas
     prometheus-api-client
-    pydantic_1
+    pydantic
     requests
   ];
 
-  nativeBuildInputs = [
-    poetry-core
-  ];
+  # Fixture is missing
+  # https://github.com/robusta-dev/prometrix/issues/9
+  doCheck = false;
 
   pythonImportsCheck = [
     "prometrix"
@@ -56,7 +66,11 @@ buildPythonPackage rec {
       This Python package provides a unified Prometheus client that can be used
       to connect to and query various types of Prometheus instances.
     '';
+    homepage = "https://github.com/robusta-dev/prometrix";
     license = licenses.mit;
     maintainers = with maintainers; [ azahi ];
+    # prometheus-api-client 0.5.5 is not working
+    # https://github.com/robusta-dev/prometrix/issues/14
+    broken = versionAtLeast prometheus-api-client.version "0.5.3";
   };
 }
diff --git a/pkgs/development/python-modules/proxy-py/default.nix b/pkgs/development/python-modules/proxy-py/default.nix
index 72630b722bc4..384dd6c1ec08 100644
--- a/pkgs/development/python-modules/proxy-py/default.nix
+++ b/pkgs/development/python-modules/proxy-py/default.nix
@@ -24,7 +24,7 @@
 
 buildPythonPackage rec {
   pname = "proxy-py";
-  version = "2.4.4rc5";
+  version = "2.4.4";
   pyproject = true;
 
   disabled = pythonOlder "3.7";
@@ -33,7 +33,7 @@ buildPythonPackage rec {
     owner = "abhinavsingh";
     repo = "proxy.py";
     rev = "refs/tags/v${version}";
-    hash = "sha256-ngIskWzN6699C0WjSX/ZbHxV3Eb8ikQPNYZFzfzt7xU=";
+    hash = "sha256-QWwIbNt2MtRfQaX7uZJzYmS++2MH+gTjWO0aEKYSETI=";
   };
 
   postPatch = ''
diff --git a/pkgs/development/python-modules/psycopg2cffi/default.nix b/pkgs/development/python-modules/psycopg2cffi/default.nix
index f791f953d3f0..608bae034ea5 100644
--- a/pkgs/development/python-modules/psycopg2cffi/default.nix
+++ b/pkgs/development/python-modules/psycopg2cffi/default.nix
@@ -5,35 +5,46 @@
 , postgresql
 , postgresqlTestHook
 , pytestCheckHook
+, setuptools
 , six
+, stdenv
 }:
 
 buildPythonPackage rec {
   pname = "psycopg2cffi";
-  version = "2.8.1";
-  format = "setuptools";
-
-  # NB: This is a fork.
-  # The original repo exists at https://github.com/chtd/psycopg2cffi, however
-  # this is mostly unmaintained and does not build for PyPy. Given that the
-  # whole point of this cffi alternative to psycopg2 is to use it with PyPy, I
-  # chose to use a working fork instead, which was linked in the relevant issue:
-  # https://github.com/chtd/psycopg2cffi/issues/113#issuecomment-730548574
-  #
-  # If/when these changes get merged back upstream we should revert to using the
-  # original source as opposed to the fork.
+  version = "2.9.0";
+  pyproject = true;
+
   src = fetchFromGitHub {
-    owner = "Omegapol";
-    repo = pname;
-    rev = "c202b25cd861d5e8f0f55c329764ff1da9f020c0";
-    sha256 = "09hsnjkix1c0vlhmfvrp8pchpnz2ya4xrchyq15czj527nx2dmy2";
+    owner = "chtd";
+    repo = "psycopg2cffi";
+    rev = "refs/tags/${version}";
+    hash = "sha256-9r5MYxw9cvdbLVj8StmMmn0AKQepOpCc7TIBGXZGWe4=";
   };
 
-  nativeBuildInputs = [ postgresql ];
+  postPatch = ''
+    substituteInPlace psycopg2cffi/_impl/_build_libpq.py \
+      --replace-fail "from distutils import sysconfig" "import sysconfig" \
+      --replace-fail "sysconfig.get_python_inc()" "sysconfig.get_path('include')"
+  '';
+
+  build-system = [
+    postgresql
+    setuptools
+  ];
+
+  dependencies = [
+    cffi
+    six
+  ];
 
-  propagatedBuildInputs = [ six cffi ];
+  # FATAL: could not create shared memory segment: Operation not permitted
+  doCheck = !stdenv.isDarwin;
 
-  nativeCheckInputs = [ postgresqlTestHook pytestCheckHook ];
+  nativeCheckInputs = [
+    postgresqlTestHook
+    pytestCheckHook
+  ];
 
   disabledTests = [
     # AssertionError: '{}' != []
diff --git a/pkgs/development/python-modules/publicsuffixlist/default.nix b/pkgs/development/python-modules/publicsuffixlist/default.nix
index a8cd6193d74b..a693890d4566 100644
--- a/pkgs/development/python-modules/publicsuffixlist/default.nix
+++ b/pkgs/development/python-modules/publicsuffixlist/default.nix
@@ -11,14 +11,14 @@
 
 buildPythonPackage rec {
   pname = "publicsuffixlist";
-  version = "0.10.0.20240420";
+  version = "0.10.0.20240515";
   pyproject = true;
 
   disabled = pythonOlder "3.7";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-s8xPkes/xFlejqfOlMZOPLmNK92e2TLK18UZmv3/a6I=";
+    hash = "sha256-0BlbqefYDjYRIWv5UgjTRInD12l1wGp+nnwJBE5vbXs=";
   };
 
   build-system = [ setuptools ];
diff --git a/pkgs/development/python-modules/pubnub/default.nix b/pkgs/development/python-modules/pubnub/default.nix
index 58b6bd159d50..868926ba95f1 100644
--- a/pkgs/development/python-modules/pubnub/default.nix
+++ b/pkgs/development/python-modules/pubnub/default.nix
@@ -16,7 +16,7 @@
 
 buildPythonPackage rec {
   pname = "pubnub";
-  version = "7.4.4";
+  version = "8.0.0";
   pyproject = true;
 
   disabled = pythonOlder "3.7";
@@ -25,7 +25,7 @@ buildPythonPackage rec {
     owner = "pubnub";
     repo = "python";
     rev = "refs/tags/v${version}";
-    hash = "sha256-4Paodw3t2RvAKrDMcWHIGLs5JNtH/9sP+BTyAm/hj4E=";
+    hash = "sha256-GKJv/GJ/h/LVbEa8Wz7iXc8J38UTTlNa0/08+p5sYCA=";
   };
 
   build-system = [ setuptools ];
diff --git a/pkgs/development/python-modules/pure-cdb/default.nix b/pkgs/development/python-modules/pure-cdb/default.nix
index f8df017c9b18..b07843c8eaa6 100644
--- a/pkgs/development/python-modules/pure-cdb/default.nix
+++ b/pkgs/development/python-modules/pure-cdb/default.nix
@@ -1,10 +1,9 @@
-{ lib, fetchFromGitHub, buildPythonPackage, pythonOlder, flake8 }:
+{ lib, fetchFromGitHub, buildPythonPackage, flake8 }:
 
 buildPythonPackage rec {
   pname = "pure-cdb";
   version = "4.0.0";
   format = "setuptools";
-  disabled = pythonOlder "3.4";
 
   # Archive on pypi has no tests.
   src = fetchFromGitHub {
diff --git a/pkgs/development/python-modules/puremagic/default.nix b/pkgs/development/python-modules/puremagic/default.nix
index 72f0dfc4dde7..fc54dbdaa6ec 100644
--- a/pkgs/development/python-modules/puremagic/default.nix
+++ b/pkgs/development/python-modules/puremagic/default.nix
@@ -1,31 +1,31 @@
-{ lib
-, buildPythonPackage
-, fetchFromGitHub
-, pytestCheckHook
-, pythonOlder
+{
+  lib,
+  buildPythonPackage,
+  fetchFromGitHub,
+  pytestCheckHook,
+  pythonOlder,
+  setuptools,
 }:
 
 buildPythonPackage rec {
   pname = "puremagic";
-  version = "1.21";
-  format = "setuptools";
+  version = "1.23";
+  pyproject = true;
 
   disabled = pythonOlder "3.7";
 
   src = fetchFromGitHub {
     owner = "cdgriffith";
-    repo = pname;
+    repo = "puremagic";
     rev = "refs/tags/${version}";
-    hash = "sha256-ObJp3+gk1tf1+9wBpvzs0wwP7ptDlfGwX9b4wlCb1RI=";
+    hash = "sha256-DhOTx4Zpux2IiHkw/0nWwWfpnoqxrqqMJw4hrS4ZNGE=";
   };
 
-  nativeCheckInputs = [
-    pytestCheckHook
-  ];
+  build-system = [ setuptools ];
 
-  pythonImportsCheck = [
-    "puremagic"
-  ];
+  nativeCheckInputs = [ pytestCheckHook ];
+
+  pythonImportsCheck = [ "puremagic" ];
 
   meta = with lib; {
     description = "Implementation of magic file detection";
diff --git a/pkgs/development/python-modules/pvlib/default.nix b/pkgs/development/python-modules/pvlib/default.nix
index 986fd4ed8b4d..4abf6f287497 100644
--- a/pkgs/development/python-modules/pvlib/default.nix
+++ b/pkgs/development/python-modules/pvlib/default.nix
@@ -1,43 +1,42 @@
-{ lib
-, buildPythonPackage
-, fetchPypi
-, h5py
-, numpy
-, pandas
-, pytestCheckHook
-, pytest-mock
-, pytest-remotedata
-, pytest-rerunfailures
-, pytest-timeout
-, pythonOlder
-, pytz
-, requests
-, requests-mock
-, scipy
-, setuptools
-, setuptools-scm
-, wheel
+{
+  lib,
+  buildPythonPackage,
+  fetchPypi,
+  h5py,
+  numpy,
+  pandas,
+  pytestCheckHook,
+  pytest-mock,
+  pytest-remotedata,
+  pytest-rerunfailures,
+  pytest-timeout,
+  pythonOlder,
+  pytz,
+  requests,
+  requests-mock,
+  scipy,
+  setuptools,
+  setuptools-scm,
 }:
 
 buildPythonPackage rec {
   pname = "pvlib";
-  version = "0.10.4";
+  version = "0.10.5";
   pyproject = true;
 
   disabled = pythonOlder "3.7";
 
-  src = fetchPypi{
+  src = fetchPypi {
     inherit pname version;
-    hash = "sha256-DF+ov+ixSjmjC/7+WmzwFksuvYKikSbbPZBqhNk5+HI=";
+    hash = "sha256-I+y59o4L+wLOF+hARLUh+341NYHlOKMfnq0ETs0ZUL0=";
   };
 
-  nativeBuildInputs = [
+  build-system = [
     setuptools
     setuptools-scm
-    wheel
   ];
 
-  propagatedBuildInputs = [
+  dependencies = [
     h5py
     numpy
     pandas
@@ -47,21 +46,19 @@ buildPythonPackage rec {
   ];
 
   nativeCheckInputs = [
-    pytestCheckHook
     pytest-mock
     pytest-remotedata
     pytest-rerunfailures
     pytest-timeout
+    pytestCheckHook
     requests-mock
   ];
 
-  pythonImportsCheck = [
-    "pvlib"
-  ];
+  pythonImportsCheck = [ "pvlib" ];
 
   meta = with lib; {
-    homepage = "https://pvlib-python.readthedocs.io";
     description = "Simulate the performance of photovoltaic energy systems";
+    homepage = "https://pvlib-python.readthedocs.io";
     changelog = "https://pvlib-python.readthedocs.io/en/v${version}/whatsnew.html";
     license = licenses.bsd3;
     maintainers = with maintainers; [ jluttine ];
diff --git a/pkgs/development/python-modules/pwkit/default.nix b/pkgs/development/python-modules/pwkit/default.nix
new file mode 100644
index 000000000000..f1fe2ad54556
--- /dev/null
+++ b/pkgs/development/python-modules/pwkit/default.nix
@@ -0,0 +1,40 @@
+{
+  lib,
+  buildPythonPackage,
+  fetchFromGitHub,
+  numpy,
+  pythonOlder,
+  setuptools,
+}:
+
+buildPythonPackage rec {
+  pname = "pwkit";
+  version = "1.2.0";
+  pyproject = true;
+
+  disabled = pythonOlder "3.9";
+
+  src = fetchFromGitHub {
+    owner = "pkgw";
+    repo = "pwkit";
+    rev = "refs/tags/pwkit@${version}";
+    hash = "sha256-bQno1SIbxAJ1TL068eshfFgAkRXFmbGu2GTbv1BRGU0=";
+  };
+
+  build-system = [ setuptools ];
+
+  dependencies = [ numpy ];
+
+  # Module has no tests
+  doCheck = false;
+
+  pythonImportsCheck = [ "pwkit" ];
+
+  meta = with lib; {
+    description = "Miscellaneous science/astronomy tools";
+    homepage = "https://github.com/pkgw/pwkit/";
+    changelog = "https://github.com/pkgw/pwkit/blob/${src.rev}/CHANGELOG.md";
+    license = licenses.mit;
+    maintainers = with maintainers; [ fab ];
+  };
+}
diff --git a/pkgs/development/python-modules/pxml/default.nix b/pkgs/development/python-modules/pxml/default.nix
deleted file mode 100644
index 360a761d8897..000000000000
--- a/pkgs/development/python-modules/pxml/default.nix
+++ /dev/null
@@ -1,37 +0,0 @@
-{ lib
-, pythonAtLeast
-, buildPythonPackage
-, fetchPypi
-, blessings
-, six
-, nose
-, coverage
-}:
-
-buildPythonPackage rec {
-  pname = "pxml";
-  version = "0.2.13";
-  format = "setuptools";
-  disabled = pythonAtLeast "3.8";
-
-  src = fetchPypi {
-    inherit pname version;
-    sha256 = "0c9zzfv6ciyf9qm7556wil45xxgykg1cj8isp1b88gimwcb2hxg4";
-  };
-
-  propagatedBuildInputs = [ blessings six ];
-  nativeCheckInputs = [ nose coverage ];
-
-  # test_prefixedWhitespace fails due to a python3 StringIO issue requiring
-  # bytes rather than str
-  checkPhase = ''
-    nosetests -e 'test_prefixedWhitespace'
-  '';
-
-  meta = with lib; {
-    homepage = "https://github.com/metagriffin/pxml";
-    description = ''A python library and command-line tool to "prettify" and colorize XML.'';
-    maintainers = with maintainers; [ glittershark ];
-    license = licenses.gpl3;
-  };
-}
diff --git a/pkgs/development/python-modules/py-libzfs/default.nix b/pkgs/development/python-modules/py-libzfs/default.nix
index 661a79dd6485..c65f50b4e5ff 100644
--- a/pkgs/development/python-modules/py-libzfs/default.nix
+++ b/pkgs/development/python-modules/py-libzfs/default.nix
@@ -2,22 +2,30 @@
 , stdenv
 , buildPythonPackage
 , fetchFromGitHub
+, fetchpatch2
 , cython_0
 , zfs
 }:
 
 buildPythonPackage rec {
   pname = "py-libzfs";
-  version = "22.12.4.2";
+  version = "24.04.0";
   format = "setuptools";
 
   src = fetchFromGitHub {
     owner = "truenas";
     repo = pname;
     rev = "TS-${version}";
-    hash = "sha256-vBLbjP1gQEQNsTLc2W6uRzCFHQXZp+jGiwE0Pe8VTuw=";
+    hash = "sha256-Uiu0RNE06++iNWUNcKpbZvreT2D7/EqHlFZJXKe3F4A=";
   };
 
+  patches = [
+    (fetchpatch2 {
+      url = "https://github.com/truenas/py-libzfs/commit/b5ffe1f1d6097df6e2f5cc6dd3c968872ec60804.patch";
+      hash = "sha256-6r5hQ/o7c4vq4Tfh0l1WbeK3AuPvi+1wzkwkIn1qEes=";
+    })
+  ];
+
   nativeBuildInputs = [ cython_0 ];
   buildInputs = [ zfs ];
 
diff --git a/pkgs/development/python-modules/py-multihash/default.nix b/pkgs/development/python-modules/py-multihash/default.nix
index 9ae0d1a1d3db..bf860e83e6b6 100644
--- a/pkgs/development/python-modules/py-multihash/default.nix
+++ b/pkgs/development/python-modules/py-multihash/default.nix
@@ -4,7 +4,6 @@
 , fetchFromGitHub
 , morphys
 , pytestCheckHook
-, pythonOlder
 , six
 , varint
 }:
@@ -14,8 +13,6 @@ buildPythonPackage rec {
   version = "2.0.1";
   format = "setuptools";
 
-  disabled = pythonOlder "3.4";
-
   src = fetchFromGitHub {
     owner = "multiformats";
     repo = pname;
diff --git a/pkgs/development/python-modules/py-synologydsm-api/default.nix b/pkgs/development/python-modules/py-synologydsm-api/default.nix
index 415d95f8b324..1226e25bfa34 100644
--- a/pkgs/development/python-modules/py-synologydsm-api/default.nix
+++ b/pkgs/development/python-modules/py-synologydsm-api/default.nix
@@ -11,7 +11,7 @@
 
 buildPythonPackage rec {
   pname = "py-synologydsm-api";
-  version = "2.4.2";
+  version = "2.4.3";
   format = "pyproject";
 
   disabled = pythonOlder "3.8";
@@ -20,7 +20,7 @@ buildPythonPackage rec {
     owner = "mib1185";
     repo = "py-synologydsm-api";
     rev = "refs/tags/v${version}";
-    hash = "sha256-uqQY0vt+3JGjciG0t9eh8zK5dnq1QhU6FkzWkKX/+DM=";
+    hash = "sha256-KhYK72kIPeZ32bdJ+3j8rcq/LIrcuELQD+/OQYhktog=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/python-modules/py-zabbix/default.nix b/pkgs/development/python-modules/py-zabbix/default.nix
index b39a706c6538..e9251892bd07 100644
--- a/pkgs/development/python-modules/py-zabbix/default.nix
+++ b/pkgs/development/python-modules/py-zabbix/default.nix
@@ -1,15 +1,18 @@
-{ lib
-, buildPythonPackage
-, fetchFromGitHub
-, fetchpatch
-, pytestCheckHook
-, pythonOlder
+{
+  lib,
+  buildPythonPackage,
+  fetchFromGitHub,
+  fetchpatch,
+  pytestCheckHook,
+  pythonAtLeast,
+  pythonOlder,
+  setuptools,
 }:
 
 buildPythonPackage rec {
   pname = "py-zabbix";
   version = "1.1.7";
-  format = "setuptools";
+  pyproject = true;
 
   disabled = pythonOlder "3.8";
 
@@ -29,17 +32,21 @@ buildPythonPackage rec {
     })
   ];
 
-  nativeCheckInputs = [
-    pytestCheckHook
-  ];
+  build-system = [ setuptools ];
+
+  nativeCheckInputs = [ pytestCheckHook ];
+
+  pythonImportsCheck = [ "pyzabbix" ];
 
-  pythonImportsCheck = [
-    "pyzabbix"
+  disabledTests = lib.optionals (pythonAtLeast "3.12") [
+    # AttributeError: 'RawConfigParser' object has no attribute 'readfp'
+    "config"
   ];
 
   meta = with lib; {
     description = "Python module to interact with Zabbix";
     homepage = "https://github.com/adubkov/py-zabbix";
+    changelog = "https://github.com/adubkov/py-zabbix/releases/tag/${version}";
     license = licenses.gpl2Only;
     maintainers = with maintainers; [ fab ];
   };
diff --git a/pkgs/development/python-modules/py65/default.nix b/pkgs/development/python-modules/py65/default.nix
index 3c06f5932f00..9f73ed1eb686 100644
--- a/pkgs/development/python-modules/py65/default.nix
+++ b/pkgs/development/python-modules/py65/default.nix
@@ -1,40 +1,42 @@
-{ lib
-, buildPythonPackage
-, pythonOlder
-, fetchFromGitHub
+{
+  lib,
+  buildPythonPackage,
+  fetchFromGitHub,
+  setuptools,
+  unittestCheckHook,
 }:
 
 buildPythonPackage rec {
   pname = "py65";
-  version = "1.1.0";
-  format = "setuptools";
-
-  disabled = pythonOlder "3.6";
+  version = "1.2.0";
+  pyproject = true;
 
   src = fetchFromGitHub {
     owner = "mnaberez";
     repo = "py65";
     rev = "refs/tags/${version}";
-    hash = "sha256-WLs3TAZovuphWZIvMvM3CZnqg1aZfMF4Yrqw46k+bLA=";
+    hash = "sha256-BMX+sMPx/YBFA4NFkaY0rl0EPicGHgb6xXVvLEIdllA=";
   };
 
-  postPatch = ''
-    substituteInPlace py65/tests/test_monitor.py \
-          --replace "test_argv_rom" "dont_test_argv_rom" \
-          --replace "test_argv_combination_rom_mpu" "dont_test_argv_combination_rom_mpu"
-  '';
+  build-system = [ setuptools ];
+
+  nativeCheckInputs = [ unittestCheckHook ];
 
   meta = {
-    homepage = "https://py65.readthedocs.io/";
+    homepage = "https://github.com/mnaberez/py65";
     description = "Emulate 6502-based microcomputer systems in Python";
-    mainProgram = "py65mon";
     longDescription = ''
       Py65 includes a program called Py65Mon that functions as a machine
       language monitor. This kind of program is sometimes also called a
       debugger. Py65Mon provides a command line with many convenient commands
       for interacting with the simulated 6502-based system.
     '';
+    changelog = "https://github.com/mnaberez/py65/blob/${src.rev}/CHANGES.txt";
     license = lib.licenses.bsd3;
-    maintainers = with lib.maintainers; [ AndersonTorres tomasajt ];
+    mainProgram = "py65mon";
+    maintainers = with lib.maintainers; [
+      AndersonTorres
+      tomasajt
+    ];
   };
 }
diff --git a/pkgs/development/python-modules/pyTelegramBotAPI/default.nix b/pkgs/development/python-modules/pyTelegramBotAPI/default.nix
index 90b623c35ef4..9659da0e0aaa 100644
--- a/pkgs/development/python-modules/pyTelegramBotAPI/default.nix
+++ b/pkgs/development/python-modules/pyTelegramBotAPI/default.nix
@@ -20,7 +20,7 @@
 
 buildPythonPackage rec {
   pname = "pytelegrambotapi";
-  version = "4.17.0";
+  version = "4.18.0";
   pyproject = true;
 
   disabled = pythonOlder "3.7";
@@ -29,7 +29,7 @@ buildPythonPackage rec {
     owner = "eternnoir";
     repo = "pyTelegramBotAPI";
     rev = "refs/tags/${version}";
-    hash = "sha256-Asw6wpZs0FgsUYLVQ4u4qQgIFdvShcsN3XvgHn48cbI=";
+    hash = "sha256-MlKLLLoEbB+ju+ewYDSEUCLVpCt+MsRKzTDVDuxDr8I=";
   };
 
   build-system = [ hatchling ];
diff --git a/pkgs/development/python-modules/pyais/default.nix b/pkgs/development/python-modules/pyais/default.nix
new file mode 100644
index 000000000000..2070b0616cb1
--- /dev/null
+++ b/pkgs/development/python-modules/pyais/default.nix
@@ -0,0 +1,49 @@
+{
+  lib,
+  attrs,
+  bitarray,
+  buildPythonPackage,
+  fetchFromGitHub,
+  pytestCheckHook,
+  pythonOlder,
+  setuptools,
+}:
+
+buildPythonPackage rec {
+  pname = "pyais";
+  version = "2.6.5";
+  pyproject = true;
+
+  disabled = pythonOlder "3.7";
+
+  src = fetchFromGitHub {
+    owner = "M0r13n";
+    repo = "pyais";
+    rev = "refs/tags/v${version}";
+    hash = "sha256-/I/4ATvX/0ya8xtineXyjSFJBGhDNy/tosh2NdnKLK4=";
+  };
+
+  nativeBuildInputs = [ setuptools ];
+
+  dependencies = [
+    attrs
+    bitarray
+  ];
+
+  nativeCheckInputs = [ pytestCheckHook ];
+
+  pythonImportsCheck = [ "pyais" ];
+
+  disabledTestPaths = [
+    # Tests the examples which have additional requirements
+    "tests/test_examples.py"
+  ];
+
+  meta = with lib; {
+    description = "Module for decoding and encoding AIS messages (AIVDM/AIVDO)";
+    homepage = "https://github.com/M0r13n/pyais";
+    changelog = "https://github.com/M0r13n/pyais/blob/${version}/CHANGELOG.txt";
+    license = licenses.mit;
+    maintainers = with maintainers; [ fab ];
+  };
+}
diff --git a/pkgs/development/python-modules/pyannote-core/default.nix b/pkgs/development/python-modules/pyannote-core/default.nix
index 453bb0c4d60d..85c01bcee578 100644
--- a/pkgs/development/python-modules/pyannote-core/default.nix
+++ b/pkgs/development/python-modules/pyannote-core/default.nix
@@ -1,12 +1,15 @@
-{ lib
-, buildPythonPackage
-, fetchFromGitHub
-, setuptools
-, wheel
-, sortedcontainers
-, numpy
-, scipy
-, typing-extensions
+{
+  lib,
+  buildPythonPackage,
+  fetchFromGitHub,
+  numpy,
+  pandas,
+  pytestCheckHook,
+  scipy,
+  setuptools,
+  sortedcontainers,
+  typing-extensions,
+  versioneer,
 }:
 
 buildPythonPackage rec {
@@ -17,20 +20,30 @@ buildPythonPackage rec {
   src = fetchFromGitHub {
     owner = "pyannote";
     repo = "pyannote-core";
-    rev = version;
+    rev = "refs/tags/${version}";
     hash = "sha256-XQVEMy60LkfFr2TKXTeg6cGHRx5BUZ5qDgzIdKy/19Y=";
   };
 
-  propagatedBuildInputs = [
+  postPatch = ''
+    # Remove vendorized versioneer.py
+    rm versioneer.py
+  '';
+
+  build-system = [
+    setuptools
+    versioneer
+  ];
+
+  dependencies = [
     sortedcontainers
     numpy
     scipy
     typing-extensions
   ];
 
-  nativeBuildInputs = [
-    setuptools
-    wheel
+  nativeCheckInputs = [
+    pandas
+    pytestCheckHook
   ];
 
   pythonImportsCheck = [ "pyannote.core" ];
@@ -38,6 +51,7 @@ buildPythonPackage rec {
   meta = with lib; {
     description = "Advanced data structures for handling temporal segments with attached labels";
     homepage = "https://github.com/pyannote/pyannote-core";
+    changelog = "https://github.com/pyannote/pyannote-core/releases/tag/${version}";
     license = licenses.mit;
     maintainers = with maintainers; [ ];
   };
diff --git a/pkgs/development/python-modules/pyannote-database/default.nix b/pkgs/development/python-modules/pyannote-database/default.nix
index e3e3ac56ca70..8cb35b26061d 100644
--- a/pkgs/development/python-modules/pyannote-database/default.nix
+++ b/pkgs/development/python-modules/pyannote-database/default.nix
@@ -1,12 +1,14 @@
-{ lib
-, buildPythonPackage
-, fetchFromGitHub
-, setuptools
-, wheel
-, pyannote-core
-, pyyaml
-, pandas
-, typer
+{
+  lib,
+  buildPythonPackage,
+  fetchFromGitHub,
+  pandas,
+  pyannote-core,
+  pythonOlder,
+  pyyaml,
+  setuptools,
+  typer,
+  versioneer,
 }:
 
 buildPythonPackage rec {
@@ -14,32 +16,39 @@ buildPythonPackage rec {
   version = "5.0.1";
   pyproject = true;
 
+  disabled = pythonOlder "3.9";
+
   src = fetchFromGitHub {
     owner = "pyannote";
     repo = "pyannote-database";
-    rev = version;
+    rev = "refs/tags/${version}";
     hash = "sha256-A7Xr24O8OvVAlURrR+SDCh8Uv9Yz3AUJSFDyDShVVjA=";
   };
 
-  propagatedBuildInputs = [
+  postPatch = ''
+    # Remove vendorized versioneer.py
+    rm versioneer.py
+  '';
+
+  build-system = [
+    setuptools
+    versioneer
+  ];
+
+  dependencies = [
     pyannote-core
     pyyaml
     pandas
     typer
   ];
 
-  nativeBuildInputs = [
-    setuptools
-    wheel
-  ];
-
   pythonImportsCheck = [ "pyannote.database" ];
 
   meta = with lib; {
     description = "Reproducible experimental protocols for multimedia (audio, video, text) database";
-    mainProgram = "pyannote-database";
     homepage = "https://github.com/pyannote/pyannote-database";
     license = licenses.mit;
     maintainers = with maintainers; [ matthewcroughan ];
+    mainProgram = "pyannote-database";
   };
 }
diff --git a/pkgs/development/python-modules/pyannote-pipeline/default.nix b/pkgs/development/python-modules/pyannote-pipeline/default.nix
index 00b7eab6344a..0b85c50474d5 100644
--- a/pkgs/development/python-modules/pyannote-pipeline/default.nix
+++ b/pkgs/development/python-modules/pyannote-pipeline/default.nix
@@ -1,16 +1,17 @@
-{ lib
-, buildPythonPackage
-, fetchFromGitHub
-, setuptools
-, wheel
-, pyannote-core
-, pyannote-database
-, pyyaml
-, optuna
-, tqdm
-, docopt
-, filelock
-, scikit-learn
+{
+  lib,
+  buildPythonPackage,
+  docopt,
+  fetchFromGitHub,
+  filelock,
+  optuna,
+  pyannote-core,
+  pyannote-database,
+  pyyaml,
+  scikit-learn,
+  setuptools,
+  tqdm,
+  versioneer,
 }:
 
 buildPythonPackage rec {
@@ -21,11 +22,21 @@ buildPythonPackage rec {
   src = fetchFromGitHub {
     owner = "pyannote";
     repo = "pyannote-pipeline";
-    rev = version;
+    rev = "refs/tags/${version}";
     hash = "sha256-0wSgy6kbKi9Wa5dimOz34IV5/8fSwaHDMUpaBW7tm2Y=";
   };
 
-  propagatedBuildInputs = [
+  postPatch = ''
+    # Remove vendorized versioeer.py
+    rm versioneer.py
+  '';
+
+  build-system = [
+    setuptools
+    versioneer
+  ];
+
+  dependencies = [
     pyannote-core
     pyannote-database
     pyyaml
@@ -36,18 +47,13 @@ buildPythonPackage rec {
     scikit-learn
   ];
 
-  nativeBuildInputs = [
-    setuptools
-    wheel
-  ];
-
   pythonImportsCheck = [ "pyannote.pipeline" ];
 
   meta = with lib; {
     description = "Tunable pipelines";
-    mainProgram = "pyannote-pipeline";
     homepage = "https://github.com/pyannote/pyannote-pipeline";
     license = licenses.mit;
     maintainers = with maintainers; [ ];
+    mainProgram = "pyannote-pipeline";
   };
 }
diff --git a/pkgs/development/python-modules/pyasn1/default.nix b/pkgs/development/python-modules/pyasn1/default.nix
index d4fb73d50998..c9e542a6e1ba 100644
--- a/pkgs/development/python-modules/pyasn1/default.nix
+++ b/pkgs/development/python-modules/pyasn1/default.nix
@@ -7,14 +7,14 @@
 
 buildPythonPackage rec {
   pname = "pyasn1";
-  version = "0.5.1";
+  version = "0.6.0";
   pyproject = true;
 
   disabled = pythonOlder "3.7";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-bTkaluWbIxMKXPp01v1/OI274mzI8e3zn93fCNnWZ2w=";
+    hash = "sha256-OjWrLEte+Y4X397IqwdARvvaduKBxacGzNgjKM/I9kw=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/python-modules/pyathena/default.nix b/pkgs/development/python-modules/pyathena/default.nix
index 00c4fd2bd874..036ec8c5e2d7 100644
--- a/pkgs/development/python-modules/pyathena/default.nix
+++ b/pkgs/development/python-modules/pyathena/default.nix
@@ -15,14 +15,14 @@
 
 buildPythonPackage rec {
   pname = "pyathena";
-  version = "3.7.0";
+  version = "3.8.2";
   pyproject = true;
 
   disabled = pythonOlder "3.8";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-PqIrXLsdi4jAE7K5WUFuTdRPs29GLUefNQlU6hzrLWI=";
+    hash = "sha256-uVYnhxQJy6BvSZ/7JbKZPtE+uJkOtEZrd3uTokfZ3f8=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/python-modules/pybrowserid/default.nix b/pkgs/development/python-modules/pybrowserid/default.nix
index 1a4cd7c43058..10346ee04cc3 100644
--- a/pkgs/development/python-modules/pybrowserid/default.nix
+++ b/pkgs/development/python-modules/pybrowserid/default.nix
@@ -1,24 +1,44 @@
-{ lib, buildPythonPackage, fetchPypi
-, requests, mock }:
+{
+  lib,
+  buildPythonPackage,
+  fetchPypi,
+  setuptools,
+  requests,
+  unittestCheckHook,
+  mock,
+}:
 
 buildPythonPackage rec {
   pname = "pybrowserid";
   version = "0.14.0";
+  pyproject = true;
 
   src = fetchPypi {
     pname = "PyBrowserID";
     inherit version;
-    sha256 = "1qvi79kfb8x9kxkm5lw2mp42hm82cpps1xknmsb5ghkwx1lpc8kc";
+    hash = "sha256-bCJ2aeh8wleWrnb2oO9lAlUoyK2C01Jnn6mj5WY6ceM=";
   };
 
-  propagatedBuildInputs = [ requests ];
+  postPatch = ''
+    substituteInPlace browserid/tests/* \
+        --replace-warn 'assertEquals' 'assertEqual'
+  '';
 
-  nativeCheckInputs = [ mock ];
+  build-system = [ setuptools ];
+
+  dependencies = [ requests ];
+
+  pythonImportsCheck = [ "browserid" ];
+
+  nativeCheckInputs = [
+    unittestCheckHook
+    mock
+  ];
 
   meta = with lib; {
     description = "Python library for the BrowserID Protocol";
-    homepage    = "https://github.com/mozilla/PyBrowserID";
-    license     = licenses.mpl20;
+    homepage = "https://github.com/mozilla/PyBrowserID";
+    license = licenses.mpl20;
     maintainers = with maintainers; [ ];
   };
 }
diff --git a/pkgs/development/python-modules/pycognito/default.nix b/pkgs/development/python-modules/pycognito/default.nix
index e0f4e1d190a7..fc601fca868d 100644
--- a/pkgs/development/python-modules/pycognito/default.nix
+++ b/pkgs/development/python-modules/pycognito/default.nix
@@ -1,38 +1,42 @@
-{ lib
-, boto3
-, buildPythonPackage
-, envs
-, fetchFromGitHub
-, isPy27
-, freezegun
-, mock
-, moto
-, pyjwt
-, pytestCheckHook
-, requests
-, requests-mock
+{
+  lib,
+  boto3,
+  buildPythonPackage,
+  envs,
+  fetchFromGitHub,
+  freezegun,
+  mock,
+  moto,
+  pyjwt,
+  pytestCheckHook,
+  pythonOlder,
+  requests,
+  requests-mock,
+  setuptools,
 }:
 
 buildPythonPackage rec {
   pname = "pycognito";
-  version = "2024.2.0";
-  format = "setuptools";
-  disabled = isPy27;
+  version = "2024.5.1";
+  pyproject = true;
+
+  disabled = pythonOlder "3.8";
 
   src = fetchFromGitHub {
     owner = "pvizeli";
-    repo = pname;
+    repo = "pycognito";
     rev = "refs/tags/${version}";
-    hash = "sha256-VYko5KcJvnhPUceTll2BBJWb88SYnSL7S3mZ7XSLPSQ=";
+    hash = "sha256-U23fFLru4j6GnWMcYtsCW9BVJkVcCoefPH6oMijYGew=";
   };
 
-  propagatedBuildInputs = [
+  build-system = [ setuptools ];
+
+  dependencies = [
     boto3
     envs
     pyjwt
     requests
-  ]
-  ++ pyjwt.optional-dependencies.crypto;
+  ] ++ pyjwt.optional-dependencies.crypto;
 
   nativeCheckInputs = [
     freezegun
@@ -40,18 +44,12 @@ buildPythonPackage rec {
     moto
     pytestCheckHook
     requests-mock
-  ]
-  ++ moto.optional-dependencies.cognitoidp;
-
-  postPatch = ''
-    substituteInPlace setup.py \
-      --replace 'python-jose[cryptography]' 'python-jose'
-  '';
+  ] ++ moto.optional-dependencies.cognitoidp;
 
   pytestFlagsArray = [ "tests.py" ];
 
   disabledTests = [
-    # requires network access
+    # Test requires network access
     "test_srp_requests_http_auth"
   ];
 
@@ -60,6 +58,7 @@ buildPythonPackage rec {
   meta = with lib; {
     description = "Python class to integrate Boto3's Cognito client so it is easy to login users. With SRP support";
     homepage = "https://github.com/pvizeli/pycognito";
+    changelog = "https://github.com/NabuCasa/pycognito/releases/tag/${version}";
     license = licenses.asl20;
     maintainers = with maintainers; [ mic92 ];
   };
diff --git a/pkgs/development/python-modules/pycomm3/default.nix b/pkgs/development/python-modules/pycomm3/default.nix
new file mode 100644
index 000000000000..a6d219110bd0
--- /dev/null
+++ b/pkgs/development/python-modules/pycomm3/default.nix
@@ -0,0 +1,47 @@
+{ lib
+, buildPythonPackage
+, fetchFromGitHub
+, setuptools
+, pytestCheckHook
+, pythonOlder
+}:
+
+buildPythonPackage rec {
+  pname = "pycomm3";
+  version = "1.2.14";
+  pyproject = true;
+
+  disabled = pythonOlder "3.7";
+
+  src = fetchFromGitHub {
+    owner = "ottowayi";
+    repo = "pycomm3";
+    rev = "refs/tags/v${version}";
+    hash = "sha256-KdvmISMH2HHU8N665QevVw7q9Qs5CwjXxcWpLoziY/Y=";
+  };
+
+  build-system = [
+    setuptools
+  ];
+
+  nativeCheckInputs = [
+    pytestCheckHook
+  ];
+
+  pythonImportsCheck = [ "pycomm3" ];
+
+  disabledTestPaths = [
+    # Don't test examples as some have aditional requirements
+    "examples/"
+    # No physical PLC available
+    "tests/online/"
+  ];
+
+  meta = with lib; {
+    description = "A Python Ethernet/IP library for communicating with Allen-Bradley PLCs";
+    homepage = "https://github.com/ottowayi/pycomm3";
+    changelog = "https://github.com/ottowayi/pycomm3/releases/tag/v${version}";
+    license = licenses.mit;
+    maintainers = with maintainers; [ fab ];
+  };
+}
diff --git a/pkgs/development/python-modules/pycparser/default.nix b/pkgs/development/python-modules/pycparser/default.nix
index fa0622df9ff9..4aa2c104d8a0 100644
--- a/pkgs/development/python-modules/pycparser/default.nix
+++ b/pkgs/development/python-modules/pycparser/default.nix
@@ -1,16 +1,17 @@
-{ lib, buildPythonPackage, fetchPypi, unittestCheckHook }:
+{ lib, buildPythonPackage, fetchPypi, unittestCheckHook, pythonOlder }:
 
 buildPythonPackage rec {
   pname = "pycparser";
-  version = "2.21";
+  version = "2.22";
   format = "setuptools";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "e644fdec12f7872f86c58ff790da456218b10f863970249516d60a5eaca77206";
+    sha256 = "sha256-SRyL6cBA9TkPW/RKWwd1K9B/Vu35kjgbBccBQ57sEPY=";
   };
 
   nativeCheckInputs = [ unittestCheckHook ];
+  disabled = pythonOlder "3.8";
 
   unittestFlagsArray = [ "-s" "tests" ];
 
diff --git a/pkgs/development/python-modules/pycrdt-websocket/default.nix b/pkgs/development/python-modules/pycrdt-websocket/default.nix
index 74e34811279f..f713b194f79a 100644
--- a/pkgs/development/python-modules/pycrdt-websocket/default.nix
+++ b/pkgs/development/python-modules/pycrdt-websocket/default.nix
@@ -3,19 +3,22 @@
 , fetchFromGitHub
 , pythonOlder
 , hatchling
-, aiosqlite
 , anyio
 , channels
+, httpx-ws
+, hypercorn
 , pycrdt
 , pytest-asyncio
 , pytestCheckHook
+, sqlite-anyio
+, trio
 , uvicorn
 , websockets
 }:
 
 buildPythonPackage rec {
   pname = "pycrdt-websocket";
-  version = "0.12.7";
+  version = "0.13.4";
   pyproject = true;
 
   disabled = pythonOlder "3.8";
@@ -24,20 +27,20 @@ buildPythonPackage rec {
     owner = "jupyter-server";
     repo = "pycrdt-websocket";
     rev = "refs/tags/v${version}";
-    hash = "sha256-e4VEEudsdtfC2ek8wODxxoFuaOwl4GKS1cX3QeshuD8=";
+    hash = "sha256-nkm1ZQ6bYBRDDoREovhEthDZoHApYxzAnwVgDgpWW/s=";
   };
 
-  nativeBuildInputs = [
+  build-system = [
     hatchling
   ];
 
-  propagatedBuildInputs = [
-    aiosqlite
+  dependencies = [
     anyio
     pycrdt
+    sqlite-anyio
   ];
 
-  passthru.optional-dependencies = {
+  optional-dependencies = {
     django = [
       channels
     ];
@@ -48,8 +51,11 @@ buildPythonPackage rec {
   ];
 
   nativeCheckInputs = [
+    httpx-ws
+    hypercorn
     pytest-asyncio
     pytestCheckHook
+    trio
     uvicorn
     websockets
   ];
diff --git a/pkgs/development/python-modules/pycrdt/Cargo.lock b/pkgs/development/python-modules/pycrdt/Cargo.lock
index ac98cbf0d09f..a0140aa4c260 100644
--- a/pkgs/development/python-modules/pycrdt/Cargo.lock
+++ b/pkgs/development/python-modules/pycrdt/Cargo.lock
@@ -4,9 +4,9 @@ version = 3
 
 [[package]]
 name = "arc-swap"
-version = "1.7.0"
+version = "1.7.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7b3d0060af21e8d11a926981cc00c6c1541aa91dd64b9f881985c3da1094425f"
+checksum = "69f7f8c3906b62b754cd5326047894316021dcfe5a194c8ea52bdd94934a3457"
 
 [[package]]
 name = "atomic_refcell"
@@ -16,21 +16,21 @@ checksum = "41e67cd8309bbd06cd603a9e693a784ac2e5d1e955f11286e355089fcab3047c"
 
 [[package]]
 name = "autocfg"
-version = "1.1.0"
+version = "1.3.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d468802bab17cbc0cc575e9b053f41e72aa36bfa6b7f55e3529ffa43161b97fa"
+checksum = "0c4b4d0bd25bd0b74681c0ad21497610ce1b7c91b1022cd21c80c6fbdd9476b0"
 
 [[package]]
 name = "bitflags"
-version = "1.3.2"
+version = "2.5.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a"
+checksum = "cf4b9d6a944f767f8e5e0db018570623c85f3d925ac718db4e06d0187adb21c1"
 
 [[package]]
 name = "bumpalo"
-version = "3.15.4"
+version = "3.16.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7ff69b9dd49fd426c69a0db9fc04dd934cdb6645ff000864d98f7e2af8830eaa"
+checksum = "79296716171880943b8470b5f8d03aa55eb2e645a4874bdbb28adb49162e012c"
 
 [[package]]
 name = "cfg-if"
@@ -40,18 +40,18 @@ checksum = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd"
 
 [[package]]
 name = "fastrand"
-version = "2.0.1"
+version = "2.1.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "25cbce373ec4653f1a01a31e8a5e5ec0c622dc27ff9c4e6606eefef5cbbed4a5"
+checksum = "9fc0510504f03c51ada170672ac806f1f105a88aa97a5281117e1ddc3368e51a"
 dependencies = [
  "getrandom",
 ]
 
 [[package]]
 name = "getrandom"
-version = "0.2.12"
+version = "0.2.15"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "190092ea657667030ac6a35e305e62fc4dd69fd98ac98631e5d3a2b1575a12b5"
+checksum = "c4567c8db10ae91089c99af84c68c38da3ec2f087c3f82960bcdbf3656b6f4d7"
 dependencies = [
  "cfg-if",
  "js-sys",
@@ -68,15 +68,15 @@ checksum = "95505c38b4572b2d910cecb0281560f54b440a19336cbbcb27bf6ce6adc6f5a8"
 
 [[package]]
 name = "indoc"
-version = "2.0.4"
+version = "2.0.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1e186cfbae8084e513daff4240b4797e342f988cecda4fb6c939150f96315fd8"
+checksum = "b248f5224d1d606005e02c97f5aa4e88eeb230488bcc03bc9ca4d7991399f2b5"
 
 [[package]]
 name = "itoa"
-version = "1.0.10"
+version = "1.0.11"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b1a46d1a171d865aa5f83f92695765caa047a9b4cbae2cbf37dbd613a793fd4c"
+checksum = "49f1f14873335454500d59611f1cf4a4b0f786f9ac11f4312a78e4cf2566695b"
 
 [[package]]
 name = "js-sys"
@@ -89,15 +89,15 @@ dependencies = [
 
 [[package]]
 name = "libc"
-version = "0.2.153"
+version = "0.2.154"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9c198f91728a82281a64e1f4f9eeb25d82cb32a5de251c6bd1b5154d63a8e7bd"
+checksum = "ae743338b92ff9146ce83992f766a31066a91a8c84a45e0e9f21e7cf6de6d346"
 
 [[package]]
 name = "lock_api"
-version = "0.4.11"
+version = "0.4.12"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3c168f8615b12bc01f9c17e2eb0cc07dcae1940121185446edc3744920e8ef45"
+checksum = "07af8b9cdd281b7915f413fa73f29ebd5d55d0d3f0155584dade1ff18cea1b17"
 dependencies = [
  "autocfg",
  "scopeguard",
@@ -111,9 +111,9 @@ checksum = "90ed8c1e510134f979dbc4f070f87d4313098b704861a105fe34231c70a3901c"
 
 [[package]]
 name = "memoffset"
-version = "0.9.0"
+version = "0.9.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5a634b1c61a95585bd15607c6ab0c4e5b226e695ff2800ba0cdccddf208c406c"
+checksum = "488016bfae457b036d996092f6cb448677611ce4449e970ceaf42695203f218a"
 dependencies = [
  "autocfg",
 ]
@@ -126,9 +126,9 @@ checksum = "3fdb12b2476b595f9358c5161aa467c2438859caa136dec86c26fdd2efe17b92"
 
 [[package]]
 name = "parking_lot"
-version = "0.12.1"
+version = "0.12.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3742b2c103b9f06bc9fff0a37ff4912935851bee6d36f3c02bcc755bcfec228f"
+checksum = "7e4af0ca4f6caed20e900d564c242b8e5d4903fdacf31d3daf527b66fe6f42fb"
 dependencies = [
  "lock_api",
  "parking_lot_core",
@@ -136,9 +136,9 @@ dependencies = [
 
 [[package]]
 name = "parking_lot_core"
-version = "0.9.9"
+version = "0.9.10"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4c42a9226546d68acdd9c0a280d17ce19bfe27a46bf68784e4066115788d008e"
+checksum = "1e401f977ab385c9e4e3ab30627d6f26d00e2c73eef317493c4ec6d468726cf8"
 dependencies = [
  "cfg-if",
  "libc",
@@ -155,16 +155,16 @@ checksum = "7170ef9988bc169ba16dd36a7fa041e5c4cbeb6a35b76d4c03daded371eae7c0"
 
 [[package]]
 name = "proc-macro2"
-version = "1.0.79"
+version = "1.0.82"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e835ff2298f5721608eb1a980ecaee1aef2c132bf95ecc026a11b7bf3c01c02e"
+checksum = "8ad3d49ab951a01fbaafe34f2ec74122942fe18a3f9814c3268f1bb72042131b"
 dependencies = [
  "unicode-ident",
 ]
 
 [[package]]
 name = "pycrdt"
-version = "0.8.13"
+version = "0.8.24"
 dependencies = [
  "pyo3",
  "yrs",
@@ -235,27 +235,27 @@ dependencies = [
 
 [[package]]
 name = "quote"
-version = "1.0.35"
+version = "1.0.36"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "291ec9ab5efd934aaf503a6466c5d5251535d108ee747472c3977cc5acc868ef"
+checksum = "0fa76aaf39101c457836aec0ce2316dbdc3ab723cdda1c6bd4e6ad4208acaca7"
 dependencies = [
  "proc-macro2",
 ]
 
 [[package]]
 name = "redox_syscall"
-version = "0.4.1"
+version = "0.5.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4722d768eff46b75989dd134e5c353f0d6296e5aaa3132e776cbdb56be7731aa"
+checksum = "469052894dcb553421e483e4209ee581a45100d31b4018de03e5a7ad86374a7e"
 dependencies = [
  "bitflags",
 ]
 
 [[package]]
 name = "ryu"
-version = "1.0.17"
+version = "1.0.18"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e86697c916019a8588c99b5fac3cead74ec0b4b819707a682fd4d23fa0ce1ba1"
+checksum = "f3cb5ba0dc43242ce17de99c180e96db90b235b8a9fdc9543c96d2209116bd9f"
 
 [[package]]
 name = "scopeguard"
@@ -265,18 +265,18 @@ checksum = "94143f37725109f92c262ed2cf5e59bce7498c01bcc1502d7b9afe439a4e9f49"
 
 [[package]]
 name = "serde"
-version = "1.0.197"
+version = "1.0.200"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3fb1c873e1b9b056a4dc4c0c198b24c3ffa059243875552b2bd0933b1aee4ce2"
+checksum = "ddc6f9cc94d67c0e21aaf7eda3a010fd3af78ebf6e096aa6e2e13c79749cce4f"
 dependencies = [
  "serde_derive",
 ]
 
 [[package]]
 name = "serde_derive"
-version = "1.0.197"
+version = "1.0.200"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7eb0b34b42edc17f6b7cac84a52a1c5f0e1bb2227e997ca9011ea3dd34e8610b"
+checksum = "856f046b9400cee3c8c94ed572ecdb752444c24528c035cd35882aad6f492bcb"
 dependencies = [
  "proc-macro2",
  "quote",
@@ -285,9 +285,9 @@ dependencies = [
 
 [[package]]
 name = "serde_json"
-version = "1.0.114"
+version = "1.0.116"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c5f09b1bd632ef549eaa9f60a1f8de742bdbc698e6cee2095fc84dde5f549ae0"
+checksum = "3e17db7126d17feb94eb3fad46bf1a96b034e8aacbc2e775fe81505f8b0b2813"
 dependencies = [
  "itoa",
  "ryu",
@@ -305,15 +305,15 @@ dependencies = [
 
 [[package]]
 name = "smallvec"
-version = "1.13.1"
+version = "1.13.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e6ecd384b10a64542d77071bd64bd7b231f4ed5940fba55e98c3de13824cf3d7"
+checksum = "3c5e1a9a646d36c3599cd173a41282daf47c44583ad367b8e6837255952e5c67"
 
 [[package]]
 name = "syn"
-version = "2.0.53"
+version = "2.0.61"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7383cd0e49fff4b6b90ca5670bfd3e9d6a733b3f90c686605aa7eec8c4996032"
+checksum = "c993ed8ccba56ae856363b1845da7266a7cb78e1d146c8a32d54b45a8b831fc9"
 dependencies = [
  "proc-macro2",
  "quote",
@@ -328,18 +328,18 @@ checksum = "e1fc403891a21bcfb7c37834ba66a547a8f402146eba7265b5a6d88059c9ff2f"
 
 [[package]]
 name = "thiserror"
-version = "1.0.58"
+version = "1.0.60"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "03468839009160513471e86a034bb2c5c0e4baae3b43f79ffc55c4a5427b3297"
+checksum = "579e9083ca58dd9dcf91a9923bb9054071b9ebbd800b342194c9feb0ee89fc18"
 dependencies = [
  "thiserror-impl",
 ]
 
 [[package]]
 name = "thiserror-impl"
-version = "1.0.58"
+version = "1.0.60"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c61f3ba182994efc43764a46c018c347bc492c79f024e705f46567b418f6d4f7"
+checksum = "e2470041c06ec3ac1ab38d0356a6119054dedaea53e12fbefc0de730a1c08524"
 dependencies = [
  "proc-macro2",
  "quote",
@@ -420,13 +420,14 @@ checksum = "af190c94f2773fdb3729c55b007a722abb5384da03bc0986df4c289bf5567e96"
 
 [[package]]
 name = "windows-targets"
-version = "0.48.5"
+version = "0.52.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9a2fa6e2155d7247be68c096456083145c183cbbbc2764150dda45a87197940c"
+checksum = "6f0713a46559409d202e70e28227288446bf7841d3211583a4b53e3f6d96e7eb"
 dependencies = [
  "windows_aarch64_gnullvm",
  "windows_aarch64_msvc",
  "windows_i686_gnu",
+ "windows_i686_gnullvm",
  "windows_i686_msvc",
  "windows_x86_64_gnu",
  "windows_x86_64_gnullvm",
@@ -435,51 +436,57 @@ dependencies = [
 
 [[package]]
 name = "windows_aarch64_gnullvm"
-version = "0.48.5"
+version = "0.52.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2b38e32f0abccf9987a4e3079dfb67dcd799fb61361e53e2882c3cbaf0d905d8"
+checksum = "7088eed71e8b8dda258ecc8bac5fb1153c5cffaf2578fc8ff5d61e23578d3263"
 
 [[package]]
 name = "windows_aarch64_msvc"
-version = "0.48.5"
+version = "0.52.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "dc35310971f3b2dbbf3f0690a219f40e2d9afcf64f9ab7cc1be722937c26b4bc"
+checksum = "9985fd1504e250c615ca5f281c3f7a6da76213ebd5ccc9561496568a2752afb6"
 
 [[package]]
 name = "windows_i686_gnu"
-version = "0.48.5"
+version = "0.52.5"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "88ba073cf16d5372720ec942a8ccbf61626074c6d4dd2e745299726ce8b89670"
+
+[[package]]
+name = "windows_i686_gnullvm"
+version = "0.52.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a75915e7def60c94dcef72200b9a8e58e5091744960da64ec734a6c6e9b3743e"
+checksum = "87f4261229030a858f36b459e748ae97545d6f1ec60e5e0d6a3d32e0dc232ee9"
 
 [[package]]
 name = "windows_i686_msvc"
-version = "0.48.5"
+version = "0.52.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8f55c233f70c4b27f66c523580f78f1004e8b5a8b659e05a4eb49d4166cca406"
+checksum = "db3c2bf3d13d5b658be73463284eaf12830ac9a26a90c717b7f771dfe97487bf"
 
 [[package]]
 name = "windows_x86_64_gnu"
-version = "0.48.5"
+version = "0.52.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "53d40abd2583d23e4718fddf1ebec84dbff8381c07cae67ff7768bbf19c6718e"
+checksum = "4e4246f76bdeff09eb48875a0fd3e2af6aada79d409d33011886d3e1581517d9"
 
 [[package]]
 name = "windows_x86_64_gnullvm"
-version = "0.48.5"
+version = "0.52.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0b7b52767868a23d5bab768e390dc5f5c55825b6d30b86c844ff2dc7414044cc"
+checksum = "852298e482cd67c356ddd9570386e2862b5673c85bd5f88df9ab6802b334c596"
 
 [[package]]
 name = "windows_x86_64_msvc"
-version = "0.48.5"
+version = "0.52.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ed94fce61571a4006852b7389a063ab983c02eb1bb37b47f8272ce92d06d9538"
+checksum = "bec47e5bfd1bff0eeaf6d8b485cc1074891a197ab4225d504cb7a1ab88b02bf0"
 
 [[package]]
 name = "yrs"
-version = "0.18.0"
+version = "0.18.7"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5ad19cd99f9c036345d66331db64c7b2c823ca1ac2c30c5ca26eed149c6b4672"
+checksum = "d58fbc807677598fedfab76f99f6e1aa5c644411255002b5438ea0ab14672398"
 dependencies = [
  "arc-swap",
  "atomic_refcell",
diff --git a/pkgs/development/python-modules/pycrdt/default.nix b/pkgs/development/python-modules/pycrdt/default.nix
index c77c360516a0..c42fb0723df1 100644
--- a/pkgs/development/python-modules/pycrdt/default.nix
+++ b/pkgs/development/python-modules/pycrdt/default.nix
@@ -6,6 +6,7 @@
 , cargo
 , rustPlatform
 , rustc
+, objsize
 , pydantic
 , pytestCheckHook
 , y-py
@@ -13,14 +14,14 @@
 
 buildPythonPackage rec {
   pname = "pycrdt";
-  version = "0.8.13";
+  version = "0.8.24";
   pyproject = true;
 
   src = fetchFromGitHub {
     owner = "jupyter-server";
     repo = "pycrdt";
     rev = "refs/tags/v${version}";
-    hash = "sha256-puYJ0mR1JpwD823P6JrXmNjFvqZUPqEj2T4Wk81oBMU=";
+    hash = "sha256-3j5OhjeVE42n4EEOOMUGlQGdnQ/xia0KD543uCMFpCo=";
   };
 
   postPatch = ''
@@ -44,13 +45,11 @@ buildPythonPackage rec {
 
   pythonImportsCheck = [ "pycrdt" ];
 
-  # requires pydantic>=2.5
-  doCheck = false;
-
   nativeCheckInputs = [
+    objsize
+    pydantic
     pytestCheckHook
     y-py
-    pydantic
   ];
 
   meta = with lib; {
diff --git a/pkgs/development/python-modules/pyct/default.nix b/pkgs/development/python-modules/pyct/default.nix
index 4897a7e54917..7f8f85b1b650 100644
--- a/pkgs/development/python-modules/pyct/default.nix
+++ b/pkgs/development/python-modules/pyct/default.nix
@@ -3,7 +3,7 @@
 , fetchPypi
 , param
 , pytestCheckHook
-, pythonOlder
+, pythonAtLeast
 , pyyaml
 , requests
 }:
@@ -13,7 +13,7 @@ buildPythonPackage rec {
   version = "0.5.0";
   format = "setuptools";
 
-  disabled = pythonOlder "3.7";
+  disabled = pythonAtLeast "3.12";
 
   src = fetchPypi {
     inherit pname version;
diff --git a/pkgs/development/python-modules/pycups/default.nix b/pkgs/development/python-modules/pycups/default.nix
index 9b4a1a2d0ee7..12adc1f669af 100644
--- a/pkgs/development/python-modules/pycups/default.nix
+++ b/pkgs/development/python-modules/pycups/default.nix
@@ -2,12 +2,12 @@
 
 buildPythonPackage rec {
   pname = "pycups";
-  version = "2.0.1";
+  version = "2.0.4";
   format = "setuptools";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-V0NM5fYlSOsSlJyoIX8Gb07rIaXWq4sTRx3ONQ44DJA=";
+    hash = "sha256-hD44XB2/aUmWyoTvAqfzDCg3YDVYj1++rNa64AXPfI0=";
   };
 
   buildInputs = [ cups ] ++ lib.optional stdenv.isDarwin libiconv;
diff --git a/pkgs/development/python-modules/pydeck/default.nix b/pkgs/development/python-modules/pydeck/default.nix
index 6edd7a379b3e..d5468492162b 100644
--- a/pkgs/development/python-modules/pydeck/default.nix
+++ b/pkgs/development/python-modules/pydeck/default.nix
@@ -16,14 +16,14 @@
 
 buildPythonPackage rec {
   pname = "pydeck";
-  version = "0.8.0";
+  version = "0.9.1";
   format = "pyproject";
 
   disabled = pythonOlder "3.7";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-B+3egz98/O9nSRJDURlap9zSRmPUkJ/XiY29C2+8Aew=";
+    hash = "sha256-90R1rmN5UdY/LuWDJnV/jU+c2fKkV89ClQcVAD4stgU=";
   };
 
   # upstream has an invalid pyproject.toml
diff --git a/pkgs/development/python-modules/pyduotecno/default.nix b/pkgs/development/python-modules/pyduotecno/default.nix
index a52d43e06a0f..da84cb7bffe3 100644
--- a/pkgs/development/python-modules/pyduotecno/default.nix
+++ b/pkgs/development/python-modules/pyduotecno/default.nix
@@ -8,7 +8,7 @@
 
 buildPythonPackage rec {
   pname = "pyduotecno";
-  version = "2024.3.2";
+  version = "2024.5.0";
   pyproject = true;
 
   disabled = pythonOlder "3.9";
@@ -17,7 +17,7 @@ buildPythonPackage rec {
     owner = "Cereal2nd";
     repo = "pyDuotecno";
     rev = "refs/tags/${version}";
-    hash = "sha256-aak1e8NOxj7kncOyChpCEAQP1jpduhiSKDqm3mf5bqs=";
+    hash = "sha256-59dwSr/IlNmHoJnPEBTR2FOXZ8JiFIo1V69/r0yxKNM=";
   };
 
   build-system = [ setuptools ];
diff --git a/pkgs/development/python-modules/pyelftools/default.nix b/pkgs/development/python-modules/pyelftools/default.nix
index 84cdda65f1f9..85110fdf94aa 100644
--- a/pkgs/development/python-modules/pyelftools/default.nix
+++ b/pkgs/development/python-modules/pyelftools/default.nix
@@ -4,22 +4,27 @@
 , fetchFromGitHub
 , python
 , pythonOlder
+, setuptools
 }:
 
 buildPythonPackage rec {
   pname = "pyelftools";
-  version = "0.30";
-  format = "setuptools";
+  version = "0.31";
+  pyproject = true;
 
   disabled = pythonOlder "3.7";
 
   src = fetchFromGitHub {
     owner = "eliben";
-    repo = pname;
-    rev = "v${version}";
-    hash = "sha256-A9etnN7G24/Gu8YlV/YDpxZV+TG2eVXGx2ZjVnA9ZD4=";
+    repo = "pyelftools";
+    rev = "refs/tags/v${version}";
+    hash = "sha256-kX89fMXqrEvhMAAjqKHzHmrYizKBt1uCWMOJtFNNhy4=";
   };
 
+  build-system = [
+    setuptools
+  ];
+
   doCheck = stdenv.hostPlatform.system == "x86_64-linux" && stdenv.hostPlatform.isGnu;
 
   checkPhase = ''
@@ -33,12 +38,18 @@ buildPythonPackage rec {
     "elftools"
   ];
 
-  meta = with lib; {
+  meta = {
     description = "Python library for analyzing ELF files and DWARF debugging information";
-    mainProgram = "readelf.py";
     homepage = "https://github.com/eliben/pyelftools";
     changelog = "https://github.com/eliben/pyelftools/blob/v${version}/CHANGES";
-    license = licenses.publicDomain;
-    maintainers = with maintainers; [ igsha pamplemousse ];
+    license = with lib.licenses; [
+      # Public domain with Unlicense waiver.
+      unlicense
+      # pyelftools bundles construct library that is licensed under MIT license.
+      # See elftools/construct/{LICENSE,README} in the source code.
+      mit
+    ];
+    maintainers = with lib.maintainers; [ igsha pamplemousse ];
+    mainProgram = "readelf.py";
   };
 }
diff --git a/pkgs/development/python-modules/pyenphase/default.nix b/pkgs/development/python-modules/pyenphase/default.nix
index 45e4b014db72..3081ed70edb5 100644
--- a/pkgs/development/python-modules/pyenphase/default.nix
+++ b/pkgs/development/python-modules/pyenphase/default.nix
@@ -19,7 +19,7 @@
 
 buildPythonPackage rec {
   pname = "pyenphase";
-  version = "1.20.2";
+  version = "1.20.3";
   pyproject = true;
 
   disabled = pythonOlder "3.11";
@@ -28,7 +28,7 @@ buildPythonPackage rec {
     owner = "pyenphase";
     repo = "pyenphase";
     rev = "refs/tags/v${version}";
-    hash = "sha256-sjZaLqTYoXJ1cpaSuyLNAsUrACOMVah7DKaKxGkG0zE=";
+    hash = "sha256-4lMsyzw56gFimUs52mEzy5eKYF9s2ClNi3yfdIBbccY=";
   };
 
   postPatch = ''
diff --git a/pkgs/development/python-modules/pyerfa/default.nix b/pkgs/development/python-modules/pyerfa/default.nix
index 8561738f8428..fd7348f3ca59 100644
--- a/pkgs/development/python-modules/pyerfa/default.nix
+++ b/pkgs/development/python-modules/pyerfa/default.nix
@@ -2,9 +2,8 @@
 , buildPythonPackage
 , fetchPypi
 , jinja2
-, oldest-supported-numpy
+, setuptools
 , setuptools-scm
-, wheel
 , liberfa
 , packaging
 , numpy
@@ -14,23 +13,27 @@
 
 buildPythonPackage rec {
   pname = "pyerfa";
-  format = "pyproject";
-  version = "2.0.1.1";
+  version = "2.0.1.4";
+  pyproject = true;
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-26x07409Ow8i7wrTu72zCyqeEFcLH6Wpi+NMe+Nsmms=";
+    hash = "sha256-rLimcTIy6jXAS8bkCsTkYd/MgX05XvKjyAUcGjMkndM=";
   };
 
-  nativeBuildInputs = [
+  postPatch = ''
+    substituteInPlace pyproject.toml \
+      --replace-fail "numpy>=2.0.0rc1" "numpy"
+  '';
+
+  build-system = [
     jinja2
-    oldest-supported-numpy
     packaging
+    setuptools
     setuptools-scm
-    wheel
   ];
 
-  propagatedBuildInputs = [
+  dependencies = [
     numpy
   ];
   buildInputs = [
diff --git a/pkgs/development/python-modules/pyexploitdb/default.nix b/pkgs/development/python-modules/pyexploitdb/default.nix
index c59205aa3f1a..763b5a4a62c7 100644
--- a/pkgs/development/python-modules/pyexploitdb/default.nix
+++ b/pkgs/development/python-modules/pyexploitdb/default.nix
@@ -1,26 +1,30 @@
-{ lib
-, buildPythonPackage
-, fetchPypi
-, gitpython
-, pytestCheckHook
-, pythonOlder
-, requests
+{
+  lib,
+  buildPythonPackage,
+  fetchPypi,
+  gitpython,
+  pytestCheckHook,
+  pythonOlder,
+  requests,
+  setuptools,
 }:
 
 buildPythonPackage rec {
   pname = "pyexploitdb";
-  version = "0.2.9";
-  format = "setuptools";
+  version = "0.2.17";
+  pyproject = true;
 
   disabled = pythonOlder "3.7";
 
   src = fetchPypi {
     pname = "pyExploitDb";
     inherit version;
-    hash = "sha256-q16YB0lLlw9nXohcT20l41Bv40CqshWzE8nVBBSEppE=";
+    hash = "sha256-I7uDmKvHVx8mpqlq+kOyp57wCii8fy9ecJTSm7uHbZ0=";
   };
 
-  propagatedBuildInputs = [
+  build-system = [ setuptools ];
+
+  dependencies = [
     gitpython
     requests
   ];
@@ -28,14 +32,12 @@ buildPythonPackage rec {
   # Module has no tests
   doCheck = false;
 
-  pythonImportsCheck = [
-    "pyExploitDb"
-  ];
+  pythonImportsCheck = [ "pyExploitDb" ];
 
   meta = with lib; {
     description = "Library to fetch the most recent exploit-database";
     homepage = "https://github.com/GoVanguard/pyExploitDb";
-    changelog = "https://github.com/GoVanguard/pyExploitDb/blob/master/Changelog.txt";
+    changelog = "https://github.com/GoVanguard/pyExploitDb/blob/master/ChangeLog.md";
     license = licenses.gpl3Plus;
     maintainers = with maintainers; [ fab ];
   };
diff --git a/pkgs/development/python-modules/pyfaidx/default.nix b/pkgs/development/python-modules/pyfaidx/default.nix
index 4999b1dcddf9..551814d9fe81 100644
--- a/pkgs/development/python-modules/pyfaidx/default.nix
+++ b/pkgs/development/python-modules/pyfaidx/default.nix
@@ -1,39 +1,37 @@
-{ lib
-, buildPythonPackage
-, fetchPypi
-, importlib-metadata
-, nose
-, numpy
-, setuptools
-, setuptools-scm
-, six
-, glibcLocales
-, pytestCheckHook
+{
+  lib,
+  buildPythonPackage,
+  fetchPypi,
+  glibcLocales,
+  importlib-metadata,
+  numpy,
+  pytestCheckHook,
+  pythonOlder,
+  setuptools,
+  setuptools-scm,
 }:
 
 buildPythonPackage rec {
   pname = "pyfaidx";
   version = "0.8.1.1";
-  format = "pyproject";
+  pyproject = true;
+
+  disabled = pythonOlder "3.7";
 
   src = fetchPypi {
     inherit pname version;
     hash = "sha256-bwSCNSYZ8sxWADyiIyG9sNB2S2VnlbweQGKx+psIaGs=";
   };
 
-  nativeBuildInputs = [
+  build-system = [
     setuptools
     setuptools-scm
   ];
 
-  propagatedBuildInputs = [
-    importlib-metadata
-    six
-  ];
+  dependencies = [ importlib-metadata ];
 
   nativeCheckInputs = [
     glibcLocales
-    nose
     numpy
     pytestCheckHook
   ];
@@ -43,15 +41,14 @@ buildPythonPackage rec {
     "tests/test_Fasta_bgzip.py"
   ];
 
-  pythonImportsCheck = [
-    "pyfaidx"
-  ];
+  pythonImportsCheck = [ "pyfaidx" ];
 
   meta = with lib; {
-    homepage = "https://github.com/mdshw5/pyfaidx";
     description = "Python classes for indexing, retrieval, and in-place modification of FASTA files using a samtools compatible index";
-    mainProgram = "faidx";
+    homepage = "https://github.com/mdshw5/pyfaidx";
+    changelog = "https://github.com/mdshw5/pyfaidx/releases/tag/v${version}";
     license = licenses.bsd3;
     maintainers = with maintainers; [ jbedo ];
+    mainProgram = "faidx";
   };
 }
diff --git a/pkgs/development/python-modules/pyfakefs/default.nix b/pkgs/development/python-modules/pyfakefs/default.nix
index c588607f5c12..6e31c1e2e236 100644
--- a/pkgs/development/python-modules/pyfakefs/default.nix
+++ b/pkgs/development/python-modules/pyfakefs/default.nix
@@ -8,20 +8,21 @@
 , setuptools
 
 # tests
+, pandas
 , pytestCheckHook
 , undefined
 }:
 
 buildPythonPackage rec {
   pname = "pyfakefs";
-  version = "5.3.5";
+  version = "5.4.1";
   pyproject = true;
 
   disabled = pythonOlder "3.5";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-fNxQCzWiFMt6YU4ZQFQ6zGZQ5pqUrHbjDzPJNzvZz5A=";
+    hash = "sha256-IMtR6GDC8/+DhZFirVE0u4sKHnqB3woYz8zEhi0Nncw=";
   };
 
   postPatch = ''
@@ -46,6 +47,7 @@ buildPythonPackage rec {
   ];
 
   nativeCheckInputs = [
+    pandas
     pytestCheckHook
     undefined
   ];
diff --git a/pkgs/development/python-modules/pyftpdlib/default.nix b/pkgs/development/python-modules/pyftpdlib/default.nix
index 5ff81a268f2e..e154e6f9a1a8 100644
--- a/pkgs/development/python-modules/pyftpdlib/default.nix
+++ b/pkgs/development/python-modules/pyftpdlib/default.nix
@@ -1,17 +1,19 @@
-{ lib
-, buildPythonPackage
-, fetchPypi
-, mock
-, psutil
-, pyopenssl
-, pysendfile
-, pythonOlder
+{
+  lib,
+  buildPythonPackage,
+  fetchPypi,
+  mock,
+  psutil,
+  pyopenssl,
+  pysendfile,
+  pythonOlder,
+  setuptools,
 }:
 
 buildPythonPackage rec {
   pname = "pyftpdlib";
   version = "1.5.9";
-  format = "setuptools";
+  pyproject = true;
 
   disabled = pythonOlder "3.7";
 
@@ -20,14 +22,12 @@ buildPythonPackage rec {
     hash = "sha256-Mj1MQvFAau203xj69oD2TzLAgP9m9sJgkLpZL1v8Sg8=";
   };
 
-  propagatedBuildInputs = [
-    pysendfile
-  ];
+  build-system = [ setuptools ];
+
+  dependencies = [ pysendfile ];
 
   passthru.optional-dependencies = {
-    ssl = [
-      pyopenssl
-    ];
+    ssl = [ pyopenssl ];
   };
 
   nativeCheckInputs = [
@@ -39,15 +39,14 @@ buildPythonPackage rec {
   # on Hydra: https://hydra.nixos.org/build/84374861
   doCheck = false;
 
-  pythonImportsCheck = [
-    "pyftpdlib"
-  ];
+  pythonImportsCheck = [ "pyftpdlib" ];
 
   meta = with lib; {
     description = "Asynchronous FTP server library";
-    mainProgram = "ftpbench";
     homepage = "https://github.com/giampaolo/pyftpdlib/";
+    changelog = "https://github.com/giampaolo/pyftpdlib/blob/release-${version}/HISTORY.rst";
     license = licenses.mit;
     maintainers = with maintainers; [ ];
+    mainProgram = "ftpbench";
   };
 }
diff --git a/pkgs/development/python-modules/pyfxa/default.nix b/pkgs/development/python-modules/pyfxa/default.nix
index 39794d592103..259370299db2 100644
--- a/pkgs/development/python-modules/pyfxa/default.nix
+++ b/pkgs/development/python-modules/pyfxa/default.nix
@@ -18,7 +18,7 @@
 buildPythonPackage rec {
   pname = "pyfxa";
   version = "0.7.8";
-  format = "setuptools";
+  pyproject = true;
 
   disabled = pythonOlder "3.7";
 
@@ -28,7 +28,11 @@ buildPythonPackage rec {
     hash = "sha256-DMFZl1hbYNaScOTWkAbK2nKti6wD5SS5A30q7TW5vO4=";
   };
 
-  propagatedBuildInputs = [
+  build-system = [
+    setuptools
+  ];
+
+  dependencies = [
     cryptography
     hawkauthlib
     pybrowserid
diff --git a/pkgs/development/python-modules/pygame-sdl2/default.nix b/pkgs/development/python-modules/pygame-sdl2/default.nix
index 0201c9cb4a8a..8d8c5dee83a6 100644
--- a/pkgs/development/python-modules/pygame-sdl2/default.nix
+++ b/pkgs/development/python-modules/pygame-sdl2/default.nix
@@ -1,16 +1,32 @@
-{ lib, buildPythonPackage, fetchurl, isPy27, renpy
-, cython_0, SDL2, SDL2_image, SDL2_ttf, SDL2_mixer, libjpeg, libpng }:
-
-buildPythonPackage rec {
+{
+  lib,
+  buildPythonPackage,
+  fetchurl,
+  isPy27,
+  renpy,
+  cython_0,
+  SDL2,
+  SDL2_image,
+  SDL2_ttf,
+  SDL2_mixer,
+  libjpeg,
+  libpng,
+  setuptools,
+}:
+let
   pname = "pygame-sdl2";
   version = "2.1.0";
-  format = "setuptools";
   renpy_version = renpy.base_version;
+in
+
+buildPythonPackage {
+  inherit pname version;
   name = "${pname}-${version}-${renpy_version}";
+  pyproject = true;
 
   src = fetchurl {
     url = "https://www.renpy.org/dl/${renpy_version}/pygame_sdl2-${version}+renpy${renpy_version}.tar.gz";
-    hash = "sha256-mrfrsRAVEqw7fwtYdeATp/8AtMn74x9pJEXwYZPOl2I=";
+    hash = "sha256-Zib39NyQ1pGVCWPrK5/Tl3dAylUlmKZKxU8pf+OpAdY=";
   };
 
   # force rebuild of headers needed for install
@@ -24,27 +40,26 @@ buildPythonPackage rec {
   '';
 
   nativeBuildInputs = [
-    SDL2.dev cython_0
+    SDL2.dev
+    cython_0
+    setuptools
   ];
 
   buildInputs = [
-    SDL2 SDL2_image SDL2_ttf SDL2_mixer
-    libjpeg libpng
+    SDL2
+    SDL2_image
+    SDL2_ttf
+    SDL2_mixer
+    libjpeg
+    libpng
   ];
 
-
   doCheck = isPy27; # python3 tests are non-functional
 
-  postInstall = ''
-    ( cd "$out"/include/python*/ ;
-      ln -s pygame-sdl2 pygame_sdl2 || true ; )
-  '';
-
-  meta = with lib; {
+  meta = {
     description = "A reimplementation of parts of pygame API using SDL2";
-    homepage    = "https://github.com/renpy/pygame_sdl2";
-    # Some parts are also available under Zlib License
-    license     = licenses.lgpl2;
-    maintainers = with maintainers; [ raskin ];
+    homepage = "https://github.com/renpy/pygame_sdl2";
+    license = with lib.licenses; [ lgpl2 zlib ];
+    maintainers = with lib.maintainers; [ raskin ];
   };
 }
diff --git a/pkgs/development/python-modules/pyglet/default.nix b/pkgs/development/python-modules/pyglet/default.nix
index 62c8598f5918..21ecabb0ff86 100644
--- a/pkgs/development/python-modules/pyglet/default.nix
+++ b/pkgs/development/python-modules/pyglet/default.nix
@@ -62,7 +62,7 @@ buildPythonPackage rec {
             elif name == 'freetype':
                 path = '${freetype}/lib/libfreetype${ext}'
             elif name[0:2] == 'av' or name[0:2] == 'sw':
-                path = '${ffmpeg-full}/lib/lib' + name + '${ext}'
+                path = '${lib.getLib ffmpeg-full}/lib/lib' + name + '${ext}'
             elif name == 'openal':
                 path = '${openal}/lib/libopenal${ext}'
             elif name == 'pulse':
diff --git a/pkgs/development/python-modules/pygobject/3.nix b/pkgs/development/python-modules/pygobject/3.nix
index cc2d41147bca..f1dff5b24e31 100644
--- a/pkgs/development/python-modules/pygobject/3.nix
+++ b/pkgs/development/python-modules/pygobject/3.nix
@@ -17,7 +17,7 @@
 
 buildPythonPackage rec {
   pname = "pygobject";
-  version = "3.46.0";
+  version = "3.48.2";
 
   outputs = [ "out" "dev" ];
 
@@ -27,7 +27,7 @@ buildPythonPackage rec {
 
   src = fetchurl {
     url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
-    sha256 = "QmAIstrVSMmvHHsDtZ3wRA/eXDPzj7VAaxA6Q9ZTyvw=";
+    hash = "sha256-B5SutKm+MaCSrCBiG19U7CgPkYWUPTKLEFza5imK0ac=";
   };
 
   depsBuildBuild = [
@@ -50,6 +50,7 @@ buildPythonPackage rec {
 
   propagatedBuildInputs = [
     pycairo
+    gobject-introspection # e.g. try building: python3Packages.urwid python3Packages.pydbus
   ];
 
   mesonFlags = [
diff --git a/pkgs/development/python-modules/pygount/default.nix b/pkgs/development/python-modules/pygount/default.nix
index 4b1236428836..36c0ae86304b 100644
--- a/pkgs/development/python-modules/pygount/default.nix
+++ b/pkgs/development/python-modules/pygount/default.nix
@@ -11,14 +11,14 @@
 
 buildPythonPackage rec {
   pname = "pygount";
-  version = "1.6.1";
+  version = "1.8.0";
   pyproject = true;
 
   src = fetchFromGitHub {
     owner = "roskakori";
     repo = "pygount";
     rev = "refs/tags/v${version}";
-    hash = "sha256-j+mXIyF/54MCm0yv7Z+ymy/EeZz7iS/a+/5I9lo1+Zo=";
+    hash = "sha256-PFqcSnJoGL4bXFy3hu3Iurbb8QK1NqCDs8aJmMxP4Hc=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/python-modules/pygraphviz/default.nix b/pkgs/development/python-modules/pygraphviz/default.nix
index 61fee2859d18..89d245e6e6ae 100644
--- a/pkgs/development/python-modules/pygraphviz/default.nix
+++ b/pkgs/development/python-modules/pygraphviz/default.nix
@@ -12,7 +12,7 @@
 
 buildPythonPackage rec {
   pname = "pygraphviz";
-  version = "1.12";
+  version = "1.13";
   pyproject = true;
 
   disabled = pythonOlder "3.10";
@@ -20,8 +20,8 @@ buildPythonPackage rec {
   src = fetchFromGitHub {
     owner = "pygraphviz";
     repo = "pygraphviz";
-    rev = "pygraphviz-${version}";
-    hash = "sha256-XDP77H724eiMa/V18OtLxpUpxlIVDmcFLMYOAbazquo=";
+    rev = "refs/tags/pygraphviz-${version}";
+    hash = "sha256-/H7eHgs3jtbgat8//1Y1S3iV5s0UBKW+J+zK+f8qGqI=";
   };
 
   patches = [
diff --git a/pkgs/development/python-modules/pygsl/default.nix b/pkgs/development/python-modules/pygsl/default.nix
index 13a4644962b3..0880ff181097 100644
--- a/pkgs/development/python-modules/pygsl/default.nix
+++ b/pkgs/development/python-modules/pygsl/default.nix
@@ -1,6 +1,6 @@
 { lib
 , buildPythonPackage
-, fetchPypi
+, fetchFromGitHub
 , gsl
 , swig
 , numpy
@@ -9,12 +9,14 @@
 
 buildPythonPackage rec {
   pname = "pygsl";
-  version = "2.3.3";
+  version = "2.3.4";
   format = "setuptools";
 
-  src = fetchPypi {
-    inherit pname version;
-    hash = "sha256-F3m85Bs8sONw0Rv0EAOFK6R1DFHfW4dxuzQmXo4PHfM=";
+  src = fetchFromGitHub {
+    owner = "pygsl";
+    repo = "pygsl";
+    rev = "refs/tags/v.${version}";
+    hash = "sha256-2TalLKDDoJdKGZHr7eNNvVW8fL7wQJjnZv34LJokfow=";
   };
 
   nativeBuildInputs = [
@@ -24,10 +26,14 @@ buildPythonPackage rec {
   buildInputs = [
     gsl
   ];
-  propagatedBuildInputs = [
+  dependencies = [
     numpy
   ];
 
+  preBuild = ''
+    python setup.py build_ext --inplace
+  '';
+
   preCheck = ''
     cd tests
   '';
diff --git a/pkgs/development/python-modules/pyinsteon/default.nix b/pkgs/development/python-modules/pyinsteon/default.nix
index 22242ee62bf4..0f52f3dbf45c 100644
--- a/pkgs/development/python-modules/pyinsteon/default.nix
+++ b/pkgs/development/python-modules/pyinsteon/default.nix
@@ -1,23 +1,24 @@
-{ lib
-, aiofiles
-, aiohttp
-, async-timeout
-, async-generator
-, buildPythonPackage
-, fetchFromGitHub
-, pypubsub
-, pyserial
-, pyserial-asyncio
-, pytestCheckHook
-, pythonAtLeast
-, pythonOlder
-, setuptools
-, voluptuous
+{
+  lib,
+  aiofiles,
+  aiohttp,
+  async-timeout,
+  async-generator,
+  buildPythonPackage,
+  fetchFromGitHub,
+  pypubsub,
+  pyserial,
+  pyserial-asyncio,
+  pytestCheckHook,
+  pythonAtLeast,
+  pythonOlder,
+  setuptools,
+  voluptuous,
 }:
 
 buildPythonPackage rec {
   pname = "pyinsteon";
-  version = "1.5.3";
+  version = "1.6.1";
   pyproject = true;
 
   disabled = pythonOlder "3.8";
@@ -26,12 +27,10 @@ buildPythonPackage rec {
     owner = "pyinsteon";
     repo = "pyinsteon";
     rev = "refs/tags/${version}";
-    hash = "sha256-9d6QbekUv63sjKdK+ZogYOkGfFXVW+JB6ITHnehLwtM=";
+    hash = "sha256-s8YRDu+UpU1sisdscd87CpcLl3csOUDdIuKqx48GZsw=";
   };
 
-  build-system = [
-    setuptools
-  ];
+  build-system = [ setuptools ];
 
   dependencies = [
     aiofiles
@@ -48,14 +47,17 @@ buildPythonPackage rec {
     pytestCheckHook
   ];
 
+  disabledTests = [
+    # RuntimeError: BUG: Dead Listener called, still subscribed!
+    "test_linking_with_i1_device"
+  ];
+
   disabledTestPaths = lib.optionals (pythonAtLeast "3.12") [
     # Tests are blocking or failing
     "tests/test_handlers/"
   ];
 
-  pythonImportsCheck = [
-    "pyinsteon"
-  ];
+  pythonImportsCheck = [ "pyinsteon" ];
 
   meta = with lib; {
     description = "Python library to support Insteon home automation projects";
diff --git a/pkgs/development/python-modules/pyipp/default.nix b/pkgs/development/python-modules/pyipp/default.nix
index bfeb5e4a5eee..284fb8368ffd 100644
--- a/pkgs/development/python-modules/pyipp/default.nix
+++ b/pkgs/development/python-modules/pyipp/default.nix
@@ -1,49 +1,49 @@
-{ lib
-, aiohttp
-, aresponses
-, awesomeversion
-, backoff
-, buildPythonPackage
-, deepmerge
-, fetchFromGitHub
-, poetry-core
-, pytest-asyncio
-, pytestCheckHook
-, pythonOlder
-, yarl
+{
+  lib,
+  aiohttp,
+  aresponses,
+  async-timeout,
+  awesomeversion,
+  backoff,
+  buildPythonPackage,
+  deepmerge,
+  fetchFromGitHub,
+  poetry-core,
+  pytest-asyncio,
+  pytestCheckHook,
+  pythonOlder,
+  yarl,
 }:
 
 buildPythonPackage rec {
   pname = "pyipp";
-  version = "0.15.0";
-  format = "pyproject";
+  version = "0.16.0";
+  pyproject = true;
 
   disabled = pythonOlder "3.9";
 
   src = fetchFromGitHub {
-   owner = "ctalkington";
-   repo = "python-ipp";
-   rev = "refs/tags/${version}";
-   hash = "sha256-k7NSCmugGov+lJXWeopUwKkGKL/EGhvxSSiby4CcmFM=";
+    owner = "ctalkington";
+    repo = "python-ipp";
+    rev = "refs/tags/${version}";
+    hash = "sha256-ddI9K0lJDZbVgO+hptP4I+EH//5vOoFDYXWxGALF8Ik=";
   };
 
   postPatch = ''
     substituteInPlace pyproject.toml \
-      --replace 'version = "0.0.0"' 'version = "${version}"' \
-      --replace "--cov" ""
+      --replace-fail 'version = "0.0.0"' 'version = "${version}"' \
+      --replace-fail "--cov" ""
   '';
 
-  nativeBuildInputs = [
-    poetry-core
-  ];
+  build-system = [ poetry-core ];
 
-  propagatedBuildInputs = [
+  dependencies = [
     aiohttp
     awesomeversion
     backoff
     deepmerge
     yarl
-  ];
+  ] ++ lib.optionals (pythonOlder "3.11") [ async-timeout ];
 
   nativeCheckInputs = [
     aresponses
@@ -53,9 +53,7 @@ buildPythonPackage rec {
 
   __darwinAllowLocalNetworking = true;
 
-  pythonImportsCheck = [
-    "pyipp"
-  ];
+  pythonImportsCheck = [ "pyipp" ];
 
   meta = with lib; {
     changelog = "https://github.com/ctalkington/python-ipp/releases/tag/${version}";
diff --git a/pkgs/development/python-modules/pyjet/default.nix b/pkgs/development/python-modules/pyjet/default.nix
deleted file mode 100644
index ed0a5281e0fa..000000000000
--- a/pkgs/development/python-modules/pyjet/default.nix
+++ /dev/null
@@ -1,35 +0,0 @@
-{ lib, buildPythonPackage, pythonOlder, fetchFromGitHub, cython, pytest, importlib-resources, numpy }:
-
-buildPythonPackage rec {
-  pname = "pyjet";
-  version = "1.9.0";
-  format = "setuptools";
-
-  # tests not included in pypi tarball
-  src = fetchFromGitHub {
-    owner = "scikit-hep";
-    repo = pname;
-    rev = "refs/tags/${version}";
-    hash = "sha256-0g0fCf0FIwde5Vsc/BJxjgMcs5llpD8JqOgFbMjOooc=";
-  };
-
-  nativeBuildInputs = [ cython ];
-  propagatedBuildInputs = [
-    numpy
-  ] ++ lib.optionals (pythonOlder "3.9") [
-    importlib-resources
-  ];
-
-  nativeCheckInputs = [ pytest ];
-  checkPhase = ''
-    mv pyjet _pyjet
-    pytest tests/
-  '';
-
-  meta = with lib; {
-    homepage = "https://github.com/scikit-hep/pyjet";
-    description = "The interface between FastJet and NumPy";
-    license = licenses.gpl2Plus;
-    maintainers = with maintainers; [ veprbl ];
-  };
-}
diff --git a/pkgs/development/python-modules/pyjson5/default.nix b/pkgs/development/python-modules/pyjson5/default.nix
new file mode 100644
index 000000000000..19f933ddc3d9
--- /dev/null
+++ b/pkgs/development/python-modules/pyjson5/default.nix
@@ -0,0 +1,44 @@
+{
+  lib,
+  buildPythonPackage,
+  cython,
+  fetchFromGitHub,
+  pythonOlder,
+  setuptools,
+  wheel,
+}:
+
+buildPythonPackage rec {
+  pname = "pyjson5";
+  version = "1.6.6";
+  pyproject = true;
+
+  disabled = pythonOlder "3.7";
+
+  src = fetchFromGitHub {
+    owner = "Kijewski";
+    repo = "pyjson5";
+    rev = "refs/tags/v${version}";
+    hash = "sha256-LNcz9JEOw6HO9eIf71w4NJdPOB4yixBfBeD7B/NLbfE=";
+    fetchSubmodules = true;
+  };
+
+  build-system = [
+    cython
+    setuptools
+    wheel
+  ];
+
+  # Module has no tests
+  doCheck = false;
+
+  pythonImportsCheck = [ "pyjson5" ];
+
+  meta = with lib; {
+    description = "A JSON5 serializer and parser library";
+    homepage = "https://github.com/Kijewski/pyjson5";
+    changelog = "https://github.com/Kijewski/pyjson5/blob/${version}/CHANGELOG.md";
+    license = licenses.asl20;
+    maintainers = with maintainers; [ fab ];
+  };
+}
diff --git a/pkgs/development/python-modules/pykalman/default.nix b/pkgs/development/python-modules/pykalman/default.nix
index 7073e9382d3d..401ff4fc6fe7 100644
--- a/pkgs/development/python-modules/pykalman/default.nix
+++ b/pkgs/development/python-modules/pykalman/default.nix
@@ -9,12 +9,12 @@
 
 buildPythonPackage rec {
   pname = "pykalman";
-  version = "0.9.5";
+  version = "0.9.7";
   format = "setuptools";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-gWr0dyDZJKTGAW+nS54sjCEWWgjZFpPDIqF0Ho4H+zg=";
+    hash = "sha256-E1d5IAOTxrNwIhmQ9zFnQEcvVBNG6SEdEWMOLC2PuKA=";
   };
 
   patches = [
diff --git a/pkgs/development/python-modules/pykdtree/default.nix b/pkgs/development/python-modules/pykdtree/default.nix
index b720f5b838b3..3418c47175cb 100644
--- a/pkgs/development/python-modules/pykdtree/default.nix
+++ b/pkgs/development/python-modules/pykdtree/default.nix
@@ -16,14 +16,19 @@
 
 buildPythonPackage rec {
   pname = "pykdtree";
-  version = "1.3.11";
+  version = "1.3.12";
   pyproject = true;
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-bBI8e65SE68iPFKai0FhwH64VKb+QDizaVK62iEx68s=";
+    hash = "sha256-zCCypnxkBWSFoxTSwrbbo1SvfuHI+42uG+byk2o3Q0E=";
   };
 
+  postPatch = ''
+    substituteInPlace pyproject.toml \
+      --replace-warn "numpy>=2.0.0rc1,<3" "numpy"
+  '';
+
   nativeBuildInputs = [
     cython
     numpy
diff --git a/pkgs/development/python-modules/pykrakenapi/default.nix b/pkgs/development/python-modules/pykrakenapi/default.nix
index 832658039531..02d00afd628f 100644
--- a/pkgs/development/python-modules/pykrakenapi/default.nix
+++ b/pkgs/development/python-modules/pykrakenapi/default.nix
@@ -1,6 +1,5 @@
 { lib
 , buildPythonPackage
-, pythonOlder
 , fetchFromGitHub
 , krakenex
 , pandas
@@ -10,8 +9,6 @@ buildPythonPackage rec {
   pname = "pykrakenapi";
   version = "0.3.2";
 
-  disabled = pythonOlder "3.3";
-
   format = "setuptools";
 
   src = fetchFromGitHub {
diff --git a/pkgs/development/python-modules/pylint/default.nix b/pkgs/development/python-modules/pylint/default.nix
index 046277a5fa58..cfa1b686a72a 100644
--- a/pkgs/development/python-modules/pylint/default.nix
+++ b/pkgs/development/python-modules/pylint/default.nix
@@ -1,28 +1,29 @@
-{ stdenv
-, lib
-, buildPythonPackage
-, fetchFromGitHub
-, pythonOlder
-, astroid
-, dill
-, isort
-, mccabe
-, platformdirs
-, requests
-, setuptools
-, tomli
-, tomlkit
-, typing-extensions
-, gitpython
-, py
-, pytest-timeout
-, pytest-xdist
-, pytest7CheckHook
+{
+  lib,
+  stdenv,
+  astroid,
+  buildPythonPackage,
+  dill,
+  fetchFromGitHub,
+  gitpython,
+  isort,
+  mccabe,
+  platformdirs,
+  py,
+  pytest-timeout,
+  pytest-xdist,
+  pytest7CheckHook,
+  pythonOlder,
+  requests,
+  setuptools,
+  tomli,
+  tomlkit,
+  typing-extensions,
 }:
 
 buildPythonPackage rec {
   pname = "pylint";
-  version = "3.1.0";
+  version = "3.1.1";
   pyproject = true;
 
   disabled = pythonOlder "3.8";
@@ -31,25 +32,22 @@ buildPythonPackage rec {
     owner = "pylint-dev";
     repo = "pylint";
     rev = "refs/tags/v${version}";
-    hash = "sha256-JHtMaZNwl+yLwEDD4Nl0vOt9NQ9DO7iIy5LR/9ta1Pw=";
+    hash = "sha256-LmpLt2GCzYU73BUpORHaFbGqkxyYqoPoKZpUJSChqKQ=";
   };
 
-  nativeBuildInputs = [
-    setuptools
-  ];
+  build-system = [ setuptools ];
 
-  propagatedBuildInputs = [
-    astroid
-    dill
-    isort
-    mccabe
-    platformdirs
-    tomlkit
-  ] ++ lib.optionals (pythonOlder "3.11") [
-    tomli
-  ] ++ lib.optionals (pythonOlder "3.9") [
-    typing-extensions
-  ];
+  dependencies =
+    [
+      astroid
+      dill
+      isort
+      mccabe
+      platformdirs
+      tomlkit
+    ]
+    ++ lib.optionals (pythonOlder "3.11") [ tomli ]
+    ++ lib.optionals (pythonOlder "3.10") [ typing-extensions ];
 
   nativeCheckInputs = [
     gitpython
@@ -67,7 +65,8 @@ buildPythonPackage rec {
     # displaying implemented interfaces in pylint 3.0. The
     # implementation relies on the '__implements__'  attribute proposed
     # in PEP 245, which was rejected in 2006.
-    "-W" "ignore::DeprecationWarning"
+    "-W"
+    "ignore::DeprecationWarning"
     "-v"
   ];
 
@@ -84,30 +83,32 @@ buildPythonPackage rec {
     "tests/pyreverse/test_writer.py"
   ];
 
-  disabledTests = [
-    # AssertionError when self executing and checking output
-    # expected output looks like it should match though
-    "test_invocation_of_pylint_config"
-    "test_generate_rcfile"
-    "test_generate_toml_config"
-    "test_help_msg"
-    "test_output_of_callback_options"
-    # Failed: DID NOT WARN. No warnings of type (<class 'UserWarning'>,) were emitted. The list of emitted warnings is: [].
-    "test_save_and_load_not_a_linter_stats"
-    # Truncated string expectation mismatch
-    "test_truncated_compare"
-    # Probably related to pytest versions, see pylint-dev/pylint#9477 and pylint-dev/pylint#9483
-    "test_functional"
-    # AssertionError: assert [('specializa..., 'Ancestor')] == [('aggregatio..., 'Ancestor')]
-    "test_functional_relation_extraction"
-  ] ++ lib.optionals stdenv.isDarwin [
-    "test_parallel_execution"
-    "test_py3k_jobs_option"
-  ];
+  disabledTests =
+    [
+      # AssertionError when self executing and checking output
+      # expected output looks like it should match though
+      "test_invocation_of_pylint_config"
+      "test_generate_rcfile"
+      "test_generate_toml_config"
+      "test_help_msg"
+      "test_output_of_callback_options"
+      # Failed: DID NOT WARN. No warnings of type (<class 'UserWarning'>,) were emitted. The list of emitted warnings is: [].
+      "test_save_and_load_not_a_linter_stats"
+      # Truncated string expectation mismatch
+      "test_truncated_compare"
+      # Probably related to pytest versions, see pylint-dev/pylint#9477 and pylint-dev/pylint#9483
+      "test_functional"
+      # AssertionError: assert [('specializa..., 'Ancestor')] == [('aggregatio..., 'Ancestor')]
+      "test_functional_relation_extraction"
+    ]
+    ++ lib.optionals stdenv.isDarwin [
+      "test_parallel_execution"
+      "test_py3k_jobs_option"
+    ];
 
   meta = with lib; {
-    homepage = "https://pylint.readthedocs.io/en/stable/";
     description = "A bug and style checker for Python";
+    homepage = "https://pylint.readthedocs.io/en/stable/";
     changelog = "https://github.com/pylint-dev/pylint/releases/tag/v${version}";
     longDescription = ''
       Pylint is a Python static code analysis tool which looks for programming errors,
@@ -118,7 +119,7 @@ buildPythonPackage rec {
       - symilar: an independent similarities checker
       - epylint: Emacs and Flymake compatible Pylint
     '';
-    license = licenses.gpl1Plus;
+    license = licenses.gpl2Plus;
     maintainers = with maintainers; [ ];
   };
 }
diff --git a/pkgs/development/python-modules/pylutron/default.nix b/pkgs/development/python-modules/pylutron/default.nix
index 49ee5e278485..f486b45c6798 100644
--- a/pkgs/development/python-modules/pylutron/default.nix
+++ b/pkgs/development/python-modules/pylutron/default.nix
@@ -1,34 +1,34 @@
-{ lib
-, buildPythonPackage
-, fetchPypi
-, setuptools
+{
+  lib,
+  buildPythonPackage,
+  fetchPypi,
+  pythonOlder,
+  setuptools,
 }:
 
 buildPythonPackage rec {
   pname = "pylutron";
-  version = "0.2.12";
+  version = "0.2.13";
   pyproject = true;
 
+  disabled = pythonOlder "3.7";
+
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-UTn4HfyiyQAekIZD4I5lacYb7ySRhW8OUgiOg33JZtQ=";
+    hash = "sha256-s5qprIVPlq495XWKjgIuohDzPV0EfU43zkfQ2DvH04Y=";
   };
 
-  nativeBuildInputs = [
-    setuptools
-  ];
+  build-system = [ setuptools ];
 
   # Project has no tests
   doCheck = false;
 
-  pythonImportsCheck = [
-    "pylutron"
-  ];
+  pythonImportsCheck = [ "pylutron" ];
 
   meta = with lib; {
-    changelog = "https://github.com/thecynic/pylutron/releases/tag/${version}";
     description = "Python library for controlling a Lutron RadioRA 2 system";
     homepage = "https://github.com/thecynic/pylutron";
+    changelog = "https://github.com/thecynic/pylutron/releases/tag/${version}";
     license = with licenses; [ mit ];
     maintainers = with maintainers; [ fab ];
   };
diff --git a/pkgs/development/python-modules/pymarshal/default.nix b/pkgs/development/python-modules/pymarshal/default.nix
index 755c03501e56..6a4736c3fb21 100644
--- a/pkgs/development/python-modules/pymarshal/default.nix
+++ b/pkgs/development/python-modules/pymarshal/default.nix
@@ -1,7 +1,6 @@
 { lib
 , buildPythonPackage
 , fetchFromGitHub
-, pythonOlder
 , bson
 , pytestCheckHook
 , pyyaml
@@ -12,7 +11,6 @@ buildPythonPackage rec {
   pname = "pymarshal";
   version = "2.2.0";
   format = "setuptools";
-  disabled = pythonOlder "3.0";
 
   src = fetchFromGitHub {
     owner = "stargateaudio";
diff --git a/pkgs/development/python-modules/pymatgen/default.nix b/pkgs/development/python-modules/pymatgen/default.nix
index 59981da7e780..5547279c0654 100644
--- a/pkgs/development/python-modules/pymatgen/default.nix
+++ b/pkgs/development/python-modules/pymatgen/default.nix
@@ -32,7 +32,7 @@
 
 buildPythonPackage rec {
   pname = "pymatgen";
-  version = "2024.4.13";
+  version = "2024.5.1";
   pyproject = true;
 
   disabled = pythonOlder "3.8";
@@ -41,7 +41,7 @@ buildPythonPackage rec {
     owner = "materialsproject";
     repo = "pymatgen";
     rev = "refs/tags/v${version}";
-    hash = "sha256-vjasWQgwjtoM/6Y1HwK1otMFejRWEj+YBxaIYDDSeeo=";
+    hash = "sha256-ZMOZ4eFtIaIcBPGT6bgAV+47LEGWAAnF/ml68j0fXws=";
   };
 
   build-system = [ setuptools ];
diff --git a/pkgs/development/python-modules/pymc/default.nix b/pkgs/development/python-modules/pymc/default.nix
index 947aaa424186..3e991423cf6d 100644
--- a/pkgs/development/python-modules/pymc/default.nix
+++ b/pkgs/development/python-modules/pymc/default.nix
@@ -16,7 +16,7 @@
 
 buildPythonPackage rec {
   pname = "pymc";
-  version = "5.14.0";
+  version = "5.15.0";
   pyproject = true;
 
   disabled = pythonOlder "3.10";
@@ -25,7 +25,7 @@ buildPythonPackage rec {
     owner = "pymc-devs";
     repo = "pymc";
     rev = "refs/tags/v${version}";
-    hash = "sha256-ZVGMzkStKSPLgBoyzA8SOvsof7QRR7TLmLhh5NmD/F8=";
+    hash = "sha256-KJXQz7LES3AqLkq5FPnaECraYSM4vfuDyfRJSclz1RQ=";
   };
 
   postPatch = ''
diff --git a/pkgs/development/python-modules/pymdown-extensions/default.nix b/pkgs/development/python-modules/pymdown-extensions/default.nix
index d760b9cd0dd4..733f124d3655 100644
--- a/pkgs/development/python-modules/pymdown-extensions/default.nix
+++ b/pkgs/development/python-modules/pymdown-extensions/default.nix
@@ -63,6 +63,11 @@ buildPythonPackage rec {
     pyyaml
   ];
 
+  disabledTests = [
+    # test artifact mismatch
+    "test_toc_tokens"
+  ];
+
   pythonImportsCheck = map (ext: "pymdownx.${ext}") extensions;
 
   passthru.tests = {
diff --git a/pkgs/development/python-modules/pymilter/default.nix b/pkgs/development/python-modules/pymilter/default.nix
index be0ee9bd2bc4..9cefa458d7e9 100644
--- a/pkgs/development/python-modules/pymilter/default.nix
+++ b/pkgs/development/python-modules/pymilter/default.nix
@@ -1,4 +1,15 @@
-{ lib, python, buildPythonPackage, fetchFromGitHub, libmilter, bsddb3, pydns, iana-etc, libredirect }:
+{ lib
+, python
+, buildPythonPackage
+, fetchFromGitHub
+, fetchpatch
+, libmilter
+, bsddb3
+, pydns
+, iana-etc
+, libredirect
+, pyasyncore
+}:
 
 buildPythonPackage rec {
   pname = "pymilter";
@@ -13,7 +24,14 @@ buildPythonPackage rec {
   };
 
   buildInputs = [ libmilter ];
+  nativeCheckInputs = [ pyasyncore ];
   propagatedBuildInputs = [ bsddb3 pydns ];
+  patches = [ (fetchpatch {
+    name = "Remove-calls-to-the-deprecated-method-assertEquals";
+    url = "https://github.com/sdgathman/pymilter/pull/57.patch";
+    hash = "sha256-/5LlDR15nMR3l7rkVjT3w4FbDTFAAgNdERWlPNL2TVg=";
+    })
+  ];
 
   preBuild = ''
     sed -i 's/import thread/import _thread as thread/' Milter/greylist.py
diff --git a/pkgs/development/python-modules/pymongo/default.nix b/pkgs/development/python-modules/pymongo/default.nix
index 3d17ea66f1e7..1ca7ca08ad50 100644
--- a/pkgs/development/python-modules/pymongo/default.nix
+++ b/pkgs/development/python-modules/pymongo/default.nix
@@ -15,14 +15,14 @@
 
 buildPythonPackage rec {
   pname = "pymongo";
-  version = "4.6.2";
+  version = "4.6.3";
   format = "setuptools";
 
   disabled = pythonOlder "3.7";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-q30BrIMqFmPa1ZLMvZK7Dwd1vI+YoZI8Xhp9f+rUla8=";
+    hash = "sha256-QAB0CQuaYx8SC0LGGyIv10NJDBM6XS+ZwCCM78zMlk4=";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/pymysql/default.nix b/pkgs/development/python-modules/pymysql/default.nix
index e7711f5902b9..1b5a00c27ac1 100644
--- a/pkgs/development/python-modules/pymysql/default.nix
+++ b/pkgs/development/python-modules/pymysql/default.nix
@@ -1,19 +1,25 @@
 { lib
 , buildPythonPackage
 , fetchPypi
+, setuptools
 , cryptography
 }:
 
 buildPythonPackage rec {
   pname = "pymysql";
-  version = "1.0.2";
+  version = "1.1.0";
+  pyproject = true;
 
   src = fetchPypi {
     pname = "PyMySQL";
     inherit version;
-    sha256 = "816927a350f38d56072aeca5dfb10221fe1dc653745853d30a216637f5d7ad36";
+    hash = "sha256-TxOn34vzalHoHdnzYF/t5FpIeP4C+SNjSf2Co/BhL5Y=";
   };
 
+  build-system = [
+    setuptools
+  ];
+
   propagatedBuildInputs = [ cryptography ];
 
   # Wants to connect to MySQL
diff --git a/pkgs/development/python-modules/pynetbox/default.nix b/pkgs/development/python-modules/pynetbox/default.nix
index 0a08f4affa59..1051764887b1 100644
--- a/pkgs/development/python-modules/pynetbox/default.nix
+++ b/pkgs/development/python-modules/pynetbox/default.nix
@@ -2,6 +2,7 @@
 , buildPythonPackage
 , fetchFromGitHub
 , setuptools-scm
+, packaging
 , requests
 , six
 , pytestCheckHook
@@ -25,6 +26,7 @@ buildPythonPackage rec {
   ];
 
   propagatedBuildInputs = [
+    packaging
     requests
     six
   ];
diff --git a/pkgs/development/python-modules/pynmeagps/default.nix b/pkgs/development/python-modules/pynmeagps/default.nix
index 7791bb13f315..fa306cf7b52b 100644
--- a/pkgs/development/python-modules/pynmeagps/default.nix
+++ b/pkgs/development/python-modules/pynmeagps/default.nix
@@ -1,37 +1,41 @@
-{ lib
-, buildPythonPackage
-, fetchFromGitHub
-, pytestCheckHook
-, setuptools
-, pytest-cov
+{
+  lib,
+  buildPythonPackage,
+  fetchFromGitHub,
+  pytestCheckHook,
+  pythonOlder,
+  setuptools,
 }:
 
 buildPythonPackage rec {
   pname = "pynmeagps";
-  version = "1.0.35";
+  version = "1.0.36";
   pyproject = true;
 
+  disabled = pythonOlder "3.8";
+
   src = fetchFromGitHub {
     owner = "semuconsulting";
     repo = "pynmeagps";
-    rev = "v${version}";
-    hash = "sha256-ULGBfTHCFGUSF3cmJ4GEUrgGDo4uJwstBj8nZ7tj0AA=";
+    rev = "refs/tags/v${version}";
+    hash = "sha256-n7dCr85TeBLxdrD1ZAA7PGJd9+3+xFJ8gjRU/JOFysY=";
   };
 
-  nativeBuildInputs = [ setuptools ];
+  postPatch = ''
+    substituteInPlace pyproject.toml \
+      --replace-fail "--cov --cov-report html --cov-fail-under 95" ""
+  '';
+
+  build-system = [ setuptools ];
 
-  nativeCheckInputs = [
-    pytestCheckHook
-    pytest-cov
-  ];
+  nativeCheckInputs = [ pytestCheckHook ];
 
-  pythonImportsCheck = [
-    "pynmeagps"
-  ];
+  pythonImportsCheck = [ "pynmeagps" ];
 
   meta = {
-    homepage = "https://github.com/semuconsulting/pynmeagps";
     description = "NMEA protocol parser and generator";
+    homepage = "https://github.com/semuconsulting/pynmeagps";
+    changelog = "https://github.com/semuconsulting/pynmeagps/releases/tag/v${version}";
     license = lib.licenses.bsd3;
     maintainers = with lib.maintainers; [ dylan-gonzalez ];
   };
diff --git a/pkgs/development/python-modules/pynvml/default.nix b/pkgs/development/python-modules/pynvml/default.nix
index f73f5bd7d56d..f84a8e0370c4 100644
--- a/pkgs/development/python-modules/pynvml/default.nix
+++ b/pkgs/development/python-modules/pynvml/default.nix
@@ -6,6 +6,7 @@
 , addOpenGLRunpath
 , setuptools
 , pytestCheckHook
+, versioneer
 }:
 
 buildPythonPackage rec {
@@ -28,8 +29,14 @@ buildPythonPackage rec {
     })
   ];
 
+  # unvendor versioneer
+  postPatch = ''
+    rm versioneer.py
+  '';
+
   nativeBuildInputs = [
     setuptools
+    versioneer
   ];
 
   pythonImportsCheck = [ "pynvml" "pynvml.smi" ];
diff --git a/pkgs/development/python-modules/pynws/default.nix b/pkgs/development/python-modules/pynws/default.nix
index 5c3b5c7c49a2..5e2dc4547e9f 100644
--- a/pkgs/development/python-modules/pynws/default.nix
+++ b/pkgs/development/python-modules/pynws/default.nix
@@ -1,47 +1,60 @@
-{ lib
-, aiohttp
-, buildPythonPackage
-, fetchFromGitHub
-, freezegun
-, metar
-, pytest-aiohttp
-, pytest-asyncio
-, pytest-cov
-, pytestCheckHook
-, pythonOlder
+{
+  lib,
+  aiohttp,
+  buildPythonPackage,
+  fetchFromGitHub,
+  freezegun,
+  metar,
+  pytest-aiohttp,
+  pytest-asyncio,
+  pytest-cov,
+  pytestCheckHook,
+  pythonOlder,
+  setuptools,
+  setuptools-scm,
+  tenacity,
 }:
 
 buildPythonPackage rec {
   pname = "pynws";
-  version = "1.6.0";
-  format = "setuptools";
-  disabled = pythonOlder "3.6";
+  version = "1.8.0";
+  pyproject = true;
+
+  disabled = pythonOlder "3.8";
 
   src = fetchFromGitHub {
     owner = "MatthewFlamm";
-    repo = pname;
+    repo = "pynws";
     rev = "refs/tags/v${version}";
-    hash = "sha256-x56kfnmdVV0Fc7XSI60rrtEl4k3uzpIdZxTofUbkUHU=";
+    hash = "sha256-KUCylHYng6mn2TWKf8C7k0IoerM22OIQ7pJMKi5SF3A=";
   };
 
-  propagatedBuildInputs = [
+  build-system = [
+    setuptools
+    setuptools-scm
+  ];
+
+  dependencies = [
     aiohttp
     metar
   ];
 
+  optional-dependencies.retry = [ tenacity ];
+
   nativeCheckInputs = [
     freezegun
     pytest-aiohttp
     pytest-asyncio
     pytest-cov
     pytestCheckHook
-  ];
+  ] ++ lib.flatten (lib.attrValues optional-dependencies);
 
   pythonImportsCheck = [ "pynws" ];
 
   meta = with lib; {
     description = "Python library to retrieve data from NWS/NOAA";
     homepage = "https://github.com/MatthewFlamm/pynws";
+    changelog = "https://github.com/MatthewFlamm/pynws/releases/tag/v${version}";
     license = with licenses; [ mit ];
     maintainers = with maintainers; [ fab ];
   };
diff --git a/pkgs/development/python-modules/pyomo/default.nix b/pkgs/development/python-modules/pyomo/default.nix
index 35ab0ecec509..b96dcac4fd35 100644
--- a/pkgs/development/python-modules/pyomo/default.nix
+++ b/pkgs/development/python-modules/pyomo/default.nix
@@ -1,16 +1,18 @@
-{ lib
-, buildPythonPackage
-, fetchFromGitHub
-, parameterized
-, ply
-, pytestCheckHook
-, pythonOlder
+{
+  lib,
+  buildPythonPackage,
+  fetchFromGitHub,
+  parameterized,
+  ply,
+  pytestCheckHook,
+  pythonOlder,
+  setuptools,
 }:
 
 buildPythonPackage rec {
   pname = "pyomo";
-  version = "6.7.1";
-  format = "setuptools";
+  version = "6.7.2";
+  pyproject = true;
 
   disabled = pythonOlder "3.8";
 
@@ -18,21 +20,19 @@ buildPythonPackage rec {
     repo = "pyomo";
     owner = "pyomo";
     rev = "refs/tags/${version}";
-    hash = "sha256-eTItw+wYo5lCla4oKSF97N4TFajjFtCMMq4DU9ahi1U=";
+    hash = "sha256-v3KVb9KZPbUlpRySzJV8dmApScKT06aJc8SULCHcnPI=";
   };
 
-  propagatedBuildInputs = [
-    ply
-  ];
+  build-system = [ setuptools ];
+
+  dependencies = [ ply ];
 
   nativeCheckInputs = [
     parameterized
     pytestCheckHook
   ];
 
-  pythonImportsCheck = [
-    "pyomo"
-  ];
+  pythonImportsCheck = [ "pyomo" ];
 
   preCheck = ''
     export HOME=$(mktemp -d);
@@ -53,10 +53,10 @@ buildPythonPackage rec {
 
   meta = with lib; {
     description = "Python Optimization Modeling Objects";
-    mainProgram = "pyomo";
-    homepage = "http://pyomo.org";
+    homepage = "http://www.pyomo.org/";
     changelog = "https://github.com/Pyomo/pyomo/releases/tag/${version}";
     license = licenses.bsd3;
     maintainers = with maintainers; [ ];
+    mainProgram = "pyomo";
   };
 }
diff --git a/pkgs/development/python-modules/pyopenssl/default.nix b/pkgs/development/python-modules/pyopenssl/default.nix
index 31e9e810c9ed..e59a9a4b43f7 100644
--- a/pkgs/development/python-modules/pyopenssl/default.nix
+++ b/pkgs/development/python-modules/pyopenssl/default.nix
@@ -9,18 +9,18 @@
 , pretend
 , sphinxHook
 , sphinx-rtd-theme
-, flaky
+, pytest-rerunfailures
 }:
 
 buildPythonPackage rec {
   pname = "pyopenssl";
-  version = "24.0.0";
+  version = "24.1.0";
   pyproject = true;
 
   src = fetchPypi {
     pname = "pyOpenSSL";
     inherit version;
-    hash = "sha256-aqMwOak//6RWPmVbYdETZNASZL6My0mQYQHgKjNFML8=";
+    hash = "sha256-yr7Uv6pd+fGhbA72Sgy2Uxi1zQd6ftp9aXATHKL0Gm8=";
   };
 
   outputs = [
@@ -46,8 +46,8 @@ buildPythonPackage rec {
   ];
 
   nativeCheckInputs = [
-    flaky
     pretend
+    pytest-rerunfailures
     pytestCheckHook
   ];
 
diff --git a/pkgs/development/python-modules/pypass/default.nix b/pkgs/development/python-modules/pypass/default.nix
index 7e609cbe1ccd..b900618e4dd2 100644
--- a/pkgs/development/python-modules/pypass/default.nix
+++ b/pkgs/development/python-modules/pypass/default.nix
@@ -3,7 +3,6 @@
 , buildPythonPackage
 , click
 , colorama
-, enum34
 , fetchPypi
 , git
 , gnugrep
@@ -12,7 +11,6 @@
 , pbr
 , pexpect
 , pythonAtLeast
-, pythonOlder
 , substituteAll
 , tree
 , xclip
@@ -53,7 +51,7 @@ buildPythonPackage rec {
     click
     colorama
     pexpect
-  ] ++ lib.optional (pythonOlder "3.4") enum34;
+  ];
 
   nativeCheckInputs = [ nose ];
 
diff --git a/pkgs/development/python-modules/pyphen/default.nix b/pkgs/development/python-modules/pyphen/default.nix
index 15eb6342988f..6d6830e42478 100644
--- a/pkgs/development/python-modules/pyphen/default.nix
+++ b/pkgs/development/python-modules/pyphen/default.nix
@@ -8,14 +8,14 @@
 
 buildPythonPackage rec {
   pname = "pyphen";
-  version = "0.14.0";
+  version = "0.15.0";
   format = "pyproject";
 
-  disabled = pythonOlder "3.7";
+  disabled = pythonOlder "3.8";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-WWyLO+HBpwQRul9lF9nM/jCDx1iuK5SkXycHNG2OZvo=";
+    hash = "sha256-pDBiPeysU9w2kSQSUyY8uja53XpE/9JoC3Bq82jNovI=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/python-modules/pypng/default.nix b/pkgs/development/python-modules/pypng/default.nix
index c79ec4f92a0e..ca47266e9dfc 100644
--- a/pkgs/development/python-modules/pypng/default.nix
+++ b/pkgs/development/python-modules/pypng/default.nix
@@ -1,20 +1,20 @@
 { lib
 , buildPythonPackage
-, fetchFromGitHub
+, fetchFromGitLab
 , pytestCheckHook
 , setuptools
 }:
 
 buildPythonPackage rec {
   pname = "pypng";
-  version = "0.0.21";
-  format = "pyproject";
+  version = "0.20220715.0";
+  pyproject = true;
 
-  src = fetchFromGitHub {
+  src = fetchFromGitLab {
     owner = "drj11";
     repo = "pypng";
     rev = "refs/tags/${pname}-${version}";
-    hash = "sha256-JU1GCSTm2s6Kczn6aRcF5DizPJVpizNtnAMJxTBi9vo=";
+    hash = "sha256-tTnsGCAmHexDWm/T5xpHpcBaQcBEqMfTFaoOAeC+pDs=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/python-modules/pyproject-metadata/default.nix b/pkgs/development/python-modules/pyproject-metadata/default.nix
index e5f5e157a52d..f0bdb9379ec8 100644
--- a/pkgs/development/python-modules/pyproject-metadata/default.nix
+++ b/pkgs/development/python-modules/pyproject-metadata/default.nix
@@ -1,6 +1,7 @@
 { lib
 , buildPythonPackage
 , fetchPypi
+, flit-core
 , packaging
 , pytestCheckHook
 , pythonOlder
@@ -11,22 +12,22 @@
 
 buildPythonPackage rec {
   pname = "pyproject-metadata";
-  version = "0.7.1";
+  version = "0.8.0";
   format = "pyproject";
 
   disabled = pythonOlder "3.7";
 
-  src = fetchPypi rec {
-    inherit pname version;
-    hash = "sha256-CpTxixCLmyHzomo9VB8FbDTtyxfchyoUShVhj+1672c=";
+  src = fetchPypi {
+    pname = "pyproject_metadata";
+    inherit version;
+    hash = "sha256-N21aAHZKwpRApUV5+I5mt9nLfmKdNcNaHHJIv+vJtFU=";
   };
 
-  nativeBuildInputs = [
-    setuptools
-    wheel
+  build-system = [
+    flit-core
   ];
 
-  propagatedBuildInputs = [
+  dependencies = [
     packaging
   ];
 
diff --git a/pkgs/development/python-modules/pyqt-builder/default.nix b/pkgs/development/python-modules/pyqt-builder/default.nix
index 1bf96713a4fe..5bd7cca6189e 100644
--- a/pkgs/development/python-modules/pyqt-builder/default.nix
+++ b/pkgs/development/python-modules/pyqt-builder/default.nix
@@ -3,23 +3,25 @@
 , fetchPypi
 , packaging
 , setuptools
+, setuptools-scm
 , sip
 , wheel
 }:
 
 buildPythonPackage rec {
   pname = "pyqt-builder";
-  version = "1.15.4";
+  version = "1.16.0";
   format = "pyproject";
 
   src = fetchPypi {
     pname = "PyQt-builder";
     inherit version;
-    hash = "sha256-OfjHXbF9nOF8trvz3xZQtc68HqTlvXOEPSHMlmErKuE=";
+    hash = "sha256-R7vSz6VDACAQj59AMB4WbL6pi27z5TlTNQvdTGsxqxg=";
   };
 
   nativeBuildInputs = [
     setuptools
+    setuptools-scm
     wheel
   ];
 
diff --git a/pkgs/development/python-modules/pyqtgraph/default.nix b/pkgs/development/python-modules/pyqtgraph/default.nix
index e3e96571b1e8..f09ed4fa0cb7 100644
--- a/pkgs/development/python-modules/pyqtgraph/default.nix
+++ b/pkgs/development/python-modules/pyqtgraph/default.nix
@@ -11,6 +11,7 @@
 , freefont_ttf
 , makeFontsConf
 , setuptools
+, python
 }:
 
 let
@@ -20,14 +21,14 @@ let
 in
 buildPythonPackage rec {
   pname = "pyqtgraph";
-  version = "0.13.4";
+  version = "0.13.7";
   format = "pyproject";
 
   src = fetchFromGitHub {
     owner = "pyqtgraph";
     repo = "pyqtgraph";
     rev = "refs/tags/pyqtgraph-${version}";
-    hash = "sha256-KVgsfvaVbR3eMRNqhJSBO4Hfk7KJgMdsZjKffx6vt84=";
+    hash = "sha256-MUwg1v6oH2TGmJ14Hp9i6KYierJbzPggK59QaHSXHVA=";
   };
 
   nativeBuildInputs = [
@@ -70,6 +71,7 @@ buildPythonPackage rec {
     homepage = "https://www.pyqtgraph.org/";
     changelog = "https://github.com/pyqtgraph/pyqtgraph/blob/master/CHANGELOG";
     license = licenses.mit;
+    broken = lib.versionAtLeast python.version "3.12";
     platforms = platforms.unix;
     maintainers = with maintainers; [ koral ];
   };
diff --git a/pkgs/development/python-modules/pyrad/default.nix b/pkgs/development/python-modules/pyrad/default.nix
index 8a7074888716..9e2cb672d95a 100644
--- a/pkgs/development/python-modules/pyrad/default.nix
+++ b/pkgs/development/python-modules/pyrad/default.nix
@@ -1,60 +1,58 @@
-{ buildPythonPackage
-, fetchFromGitHub
-, fetchpatch
-, lib
-, poetry-core
-, netaddr
-, six
-, unittestCheckHook
+{
+  buildPythonPackage,
+  fetchFromGitHub,
+  lib,
+  poetry-core,
+  netaddr,
+  six,
+  unittestCheckHook,
+  fetchPypi,
 }:
+let
+  netaddr_0_8_0 = netaddr.overridePythonAttrs (oldAttrs: rec {
+    version = "0.8.0";
+
+    src = fetchPypi {
+      pname = "netaddr";
+      inherit version;
+      hash = "sha256-1sxXx6B7HZ0ukXqos2rozmHDW6P80bg8oxxaDuK1okM=";
+    };
+  });
+in
 
 buildPythonPackage rec {
   pname = "pyrad";
-  version = "2.4";
+  version = "2.4-unstable-2023-06-13";
   format = "pyproject";
 
   src = fetchFromGitHub {
     owner = "pyradius";
     repo = pname;
-    rev = version;
-    hash = "sha256-oqgkE0xG/8cmLeRZdGoHkaHbjtByeJwzBJwEdxH8oNY=";
+    rev = "dd34c5a29b46d83b0bea841e85fd72b79f315b87";
+    hash = "sha256-U4VVGkDDyN4J/tRDaDGSr2TSA4JmqIoQj5qn9qBAvQU=";
   };
 
-  patches = [
-    (fetchpatch {
-      # Migrate to poetry-core
-      url = "https://github.com/pyradius/pyrad/commit/a4b70067dd6269e14a2f9530d820390a8a454231.patch";
-      hash = "sha256-1We9wrVY3Or3GLIKK6hZvEjVYv6JOaahgP9zOMvgErE=";
-    })
-  ];
-
-  nativeBuildInputs = [
-    poetry-core
-  ];
+  nativeBuildInputs = [ poetry-core ];
 
   propagatedBuildInputs = [
-    netaddr
+    netaddr_0_8_0
     six
   ];
 
   preCheck = ''
     substituteInPlace tests/testServer.py \
-      --replace "def testBind(self):" "def dontTestBind(self):" \
-      --replace "def testBindv6(self):" "def dontTestBindv6(self):"
+      --replace-warn "def testBind(self):" "def dontTestBind(self):" \
+      --replace-warn "def testBindv6(self):" "def dontTestBindv6(self):" \
   '';
 
-  nativeCheckInputs = [
-    unittestCheckHook
-  ];
+  nativeCheckInputs = [ unittestCheckHook ];
 
-  pythonImportsCheck = [
-    "pyrad"
-  ];
+  pythonImportsCheck = [ "pyrad" ];
 
-  meta = with lib; {
+  meta = {
     description = "Python RADIUS Implementation";
     homepage = "https://github.com/pyradius/pyrad";
-    license = licenses.bsd3;
-    maintainers = with maintainers; [ ];
+    license = lib.licenses.bsd3;
+    maintainers = with lib.maintainers; [ drawbu ];
   };
 }
diff --git a/pkgs/development/python-modules/pyrainbird/default.nix b/pkgs/development/python-modules/pyrainbird/default.nix
index bca013babd9e..131cf9f551de 100644
--- a/pkgs/development/python-modules/pyrainbird/default.nix
+++ b/pkgs/development/python-modules/pyrainbird/default.nix
@@ -1,29 +1,30 @@
-{ lib
-, aiohttp-retry
-, buildPythonPackage
-, fetchFromGitHub
-, freezegun
-, ical
-, parameterized
-, pycryptodome
-, pydantic
-, pytest-aiohttp
-, pytest-asyncio
-, pytest-golden
-, pytest-mock
-, pytestCheckHook
-, python-dateutil
-, pythonOlder
-, pyyaml
-, requests
-, requests-mock
-, responses
-, setuptools
+{
+  lib,
+  aiohttp-retry,
+  buildPythonPackage,
+  fetchFromGitHub,
+  freezegun,
+  ical,
+  mashumaro,
+  parameterized,
+  pycryptodome,
+  pytest-aiohttp,
+  pytest-asyncio,
+  pytest-golden,
+  pytest-mock,
+  pytestCheckHook,
+  python-dateutil,
+  pythonOlder,
+  pyyaml,
+  requests,
+  requests-mock,
+  responses,
+  setuptools,
 }:
 
 buildPythonPackage rec {
   pname = "pyrainbird";
-  version = "4.0.2";
+  version = "6.0.1";
   pyproject = true;
 
   disabled = pythonOlder "3.10";
@@ -32,7 +33,7 @@ buildPythonPackage rec {
     owner = "allenporter";
     repo = "pyrainbird";
     rev = "refs/tags/${version}";
-    hash = "sha256-4AoxLZv0u8wCG3ihw0JqsqsO5zG5UyP4ebSX99ve8sg=";
+    hash = "sha256-kRPRyEt31SJpNRXcTshGByKAfPzEj+CDNpEQp4Klgks=";
   };
 
   postPatch = ''
@@ -40,15 +41,13 @@ buildPythonPackage rec {
       --replace-fail "--cov=pyrainbird --cov-report=term-missing" ""
   '';
 
-  nativeBuildInputs = [
-    setuptools
-  ];
+  build-system = [ setuptools ];
 
-  propagatedBuildInputs = [
+  dependencies = [
     aiohttp-retry
     ical
+    mashumaro
     pycryptodome
-    pydantic
     python-dateutil
     pyyaml
     requests
@@ -68,9 +67,7 @@ buildPythonPackage rec {
     responses
   ];
 
-  pythonImportsCheck = [
-    "pyrainbird"
-  ];
+  pythonImportsCheck = [ "pyrainbird" ];
 
   meta = with lib; {
     description = "Module to interact with Rainbird controllers";
diff --git a/pkgs/development/python-modules/pyramid-beaker/default.nix b/pkgs/development/python-modules/pyramid-beaker/default.nix
index aad88af5f16a..a49e01a378f1 100644
--- a/pkgs/development/python-modules/pyramid-beaker/default.nix
+++ b/pkgs/development/python-modules/pyramid-beaker/default.nix
@@ -2,13 +2,13 @@
 
 buildPythonPackage rec {
   pname = "pyramid-beaker";
-  version = "0.8";
+  version = "0.9";
   format = "setuptools";
 
   src = fetchPypi {
     pname = "pyramid_beaker";
     inherit version;
-    sha256 = "0hflx3qkcdml1mwpq53sz46s7jickpfn0zy0ns2c7j445j66bp3p";
+    sha256 = "sha256-zMUT60z7W0Flfym25rKMor17O/n9qRMGoQKa7pLRz6U=";
   };
 
   checkPhase = ''
diff --git a/pkgs/development/python-modules/pyrisco/default.nix b/pkgs/development/python-modules/pyrisco/default.nix
index ee84881ff5f9..129d5935fb35 100644
--- a/pkgs/development/python-modules/pyrisco/default.nix
+++ b/pkgs/development/python-modules/pyrisco/default.nix
@@ -9,7 +9,7 @@
 
 buildPythonPackage rec {
   pname = "pyrisco";
-  version = "0.6.1";
+  version = "0.6.2";
   pyproject = true;
 
   disabled = pythonOlder "3.7";
@@ -18,7 +18,7 @@ buildPythonPackage rec {
     owner = "OnFreund";
     repo = "pyrisco";
     rev = "refs/tags/v${version}";
-    hash = "sha256-NviB3C+YApOo3WGQ1L8Qwyh8C9l8sCgaSA+xn2wYhjg=";
+    hash = "sha256-sksM84BvBVfegYtRo1NNRbDvqNCr/V4K2Ol9X2Il8D0=";
   };
 
   build-system = [ setuptools ];
diff --git a/pkgs/development/python-modules/pyscard/default.nix b/pkgs/development/python-modules/pyscard/default.nix
index 5fa9e60ae5c6..3fd9d3c2fbd4 100644
--- a/pkgs/development/python-modules/pyscard/default.nix
+++ b/pkgs/development/python-modules/pyscard/default.nix
@@ -1,13 +1,14 @@
-{ lib
-, stdenv
-, fetchFromGitHub
-, buildPythonPackage
-, setuptools
-, pkg-config
-, swig
-, pcsclite
-, PCSC
-, pytestCheckHook
+{
+  lib,
+  buildPythonPackage,
+  fetchFromGitHub,
+  PCSC,
+  pcsclite,
+  pkg-config,
+  pytestCheckHook,
+  setuptools,
+  stdenv,
+  swig,
 }:
 
 let
@@ -16,8 +17,8 @@ let
 in
 
 buildPythonPackage rec {
-  version = "2.0.9";
   pname = "pyscard";
+  version = "2.0.9";
   pyproject = true;
 
   src = fetchFromGitHub {
@@ -27,40 +28,45 @@ buildPythonPackage rec {
     hash = "sha256-DO4Ea+mlrWPpOLI8Eki+03UnsOXEhN2PAl0+gdN5sTo=";
   };
 
-  nativeBuildInputs = [
-    setuptools
-    swig
-  ] ++ lib.optionals (!withApplePCSC) [
-    pkg-config
-  ];
+  build-system = [ setuptools ];
+
+  nativeBuildInputs = [ swig ] ++ lib.optionals (!withApplePCSC) [ pkg-config ];
 
   buildInputs = if withApplePCSC then [ PCSC ] else [ pcsclite ];
 
-  nativeCheckInputs = [
-    pytestCheckHook
-  ];
+  nativeCheckInputs = [ pytestCheckHook ];
 
   postPatch =
-    if withApplePCSC then ''
-      substituteInPlace smartcard/scard/winscarddll.c \
-        --replace "/System/Library/Frameworks/PCSC.framework/PCSC" \
-                  "${PCSC}/Library/Frameworks/PCSC.framework/PCSC"
-    '' else ''
-      substituteInPlace setup.py --replace "pkg-config" "$PKG_CONFIG"
-      substituteInPlace smartcard/scard/winscarddll.c \
-        --replace "libpcsclite.so.1" \
-                  "${lib.getLib pcsclite}/lib/libpcsclite${stdenv.hostPlatform.extensions.sharedLibrary}"
-    '';
+    if withApplePCSC then
+      ''
+        substituteInPlace smartcard/scard/winscarddll.c \
+          --replace-fail "/System/Library/Frameworks/PCSC.framework/PCSC" \
+                    "${PCSC}/Library/Frameworks/PCSC.framework/PCSC"
+      ''
+    else
+      ''
+        substituteInPlace setup.py --replace "pkg-config" "$PKG_CONFIG"
+        substituteInPlace smartcard/scard/winscarddll.c \
+          --replace-fail "libpcsclite.so.1" \
+                    "${lib.getLib pcsclite}/lib/libpcsclite${stdenv.hostPlatform.extensions.sharedLibrary}"
+      '';
 
   preCheck = ''
     # remove src module, so tests use the installed module instead
     rm -r smartcard
   '';
 
+  disabledTests = [
+    # AssertionError
+    "test_hresult"
+    "test_low_level"
+  ];
+
   meta = with lib; {
-    homepage = "https://pyscard.sourceforge.io/";
     description = "Smartcard library for python";
-    license = licenses.lgpl21;
+    homepage = "https://pyscard.sourceforge.io/";
+    changelog = "https://github.com/LudovicRousseau/pyscard/releases/tag/${version}";
+    license = licenses.lgpl21Plus;
     maintainers = with maintainers; [ layus ];
   };
 }
diff --git a/pkgs/development/python-modules/pyscss/default.nix b/pkgs/development/python-modules/pyscss/default.nix
index 912b4acc14e9..624217eba534 100644
--- a/pkgs/development/python-modules/pyscss/default.nix
+++ b/pkgs/development/python-modules/pyscss/default.nix
@@ -3,9 +3,6 @@
 , fetchFromGitHub
 , pytestCheckHook
 , six
-, enum34
-, pathlib
-, pythonOlder
 }:
 
 buildPythonPackage rec {
@@ -21,8 +18,7 @@ buildPythonPackage rec {
 
   nativeCheckInputs = [ pytestCheckHook ];
 
-  propagatedBuildInputs = [ six ]
-    ++ lib.optionals (pythonOlder "3.4") [ enum34 pathlib ];
+  propagatedBuildInputs = [ six ];
 
   # Test suite is broken.
   # See https://github.com/Kronuz/pyScss/issues/415
diff --git a/pkgs/development/python-modules/pysendfile/default.nix b/pkgs/development/python-modules/pysendfile/default.nix
index af3c07cb851c..0edd04ae331a 100644
--- a/pkgs/development/python-modules/pysendfile/default.nix
+++ b/pkgs/development/python-modules/pysendfile/default.nix
@@ -1,31 +1,37 @@
-{ stdenv
-, lib
-, buildPythonPackage
-, fetchPypi
-, python
+{
+  lib,
+  stdenv,
+  buildPythonPackage,
+  fetchPypi,
+  pythonOlder,
+  setuptools,
 }:
 
 buildPythonPackage rec {
   pname = "pysendfile";
   version = "2.0.1";
-  format = "setuptools";
+  pyproject = true;
+
+  disabled = pythonOlder "3.7";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "05qf0m32isflln1zjgxlpw0wf469lj86vdwwqyizp1h94x5l22ji";
+    hash = "sha256-UQpBSycJhvujx5y3bZCkyRDHAb+0P/mDpdTpKEYFDhc=";
   };
 
-  checkPhase = ''
-    # this test takes too long
-    sed -i 's/test_big_file/noop/' test/test_sendfile.py
-    ${python.executable} test/test_sendfile.py
-  '';
+  build-system = [ setuptools ];
+
+  # Tests depend on asynchat and asyncore
+  doCheck = false;
+
+  pythonImportsCheck = [ "sendfile" ];
 
   meta = with lib; {
-    broken = stdenv.isDarwin;
-    homepage = "https://github.com/giampaolo/pysendfile";
     description = "A Python interface to sendfile(2)";
+    homepage = "https://github.com/giampaolo/pysendfile";
+    changelog = "https://github.com/giampaolo/pysendfile/blob/release-${version}/HISTORY.rst";
     license = licenses.mit;
+    maintainers = with maintainers; [ ];
+    broken = stdenv.isDarwin;
   };
-
 }
diff --git a/pkgs/development/python-modules/pyserial/default.nix b/pkgs/development/python-modules/pyserial/default.nix
index a515c5acfcd1..ea51736d6dd9 100644
--- a/pkgs/development/python-modules/pyserial/default.nix
+++ b/pkgs/development/python-modules/pyserial/default.nix
@@ -3,8 +3,6 @@
 , buildPythonPackage
 , fetchPypi
 , unittestCheckHook
-, pythonOlder
-, isPy3k
 }:
 
 buildPythonPackage rec {
@@ -12,9 +10,6 @@ buildPythonPackage rec {
   version = "3.5";
   format = "setuptools";
 
-  # Supports Python 2.7 and 3.4+
-  disabled = isPy3k && pythonOlder "3.4";
-
   src = fetchPypi {
     inherit pname version;
     hash = "sha256-PHfgFBcN//vYFub/wgXphC77EL6fWOwW0+hnW0klzds=";
diff --git a/pkgs/development/python-modules/pysigma-backend-insightidr/default.nix b/pkgs/development/python-modules/pysigma-backend-insightidr/default.nix
index 1fef60d8acf5..c10bf0108761 100644
--- a/pkgs/development/python-modules/pysigma-backend-insightidr/default.nix
+++ b/pkgs/development/python-modules/pysigma-backend-insightidr/default.nix
@@ -10,7 +10,7 @@
 
 buildPythonPackage rec {
   pname = "pysigma-backend-insightidr";
-  version = "0.2.2";
+  version = "0.2.3";
   format = "pyproject";
 
   disabled = pythonOlder "3.8";
@@ -19,7 +19,7 @@ buildPythonPackage rec {
     owner = "SigmaHQ";
     repo = "pySigma-backend-insightidr";
     rev = "refs/tags/v${version}";
-    hash = "sha256-B42MADteF0+GC/CPJPLaTGdGcQjC8KEsK9u3tBmtObg=";
+    hash = "sha256-wQMnnJ0KU+53MS3PIBkwIhUiyUdCrDbdUT6upk2Pp/8=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/python-modules/pysigma-backend-opensearch/default.nix b/pkgs/development/python-modules/pysigma-backend-opensearch/default.nix
index 666816669929..5716a6ebd79e 100644
--- a/pkgs/development/python-modules/pysigma-backend-opensearch/default.nix
+++ b/pkgs/development/python-modules/pysigma-backend-opensearch/default.nix
@@ -1,18 +1,19 @@
-{ lib
-, buildPythonPackage
-, fetchFromGitHub
-, poetry-core
-, pysigma
-, pysigma-backend-elasticsearch
-, pytestCheckHook
-, pythonOlder
-, pythonRelaxDepsHook
-, requests
+{
+  lib,
+  buildPythonPackage,
+  fetchFromGitHub,
+  poetry-core,
+  pysigma,
+  pysigma-backend-elasticsearch,
+  pytestCheckHook,
+  pythonOlder,
+  pythonRelaxDepsHook,
+  requests,
 }:
 
 buildPythonPackage rec {
   pname = "pysigma-backend-opensearch";
-  version = "1.0.1";
+  version = "1.0.2";
   pyproject = true;
 
   disabled = pythonOlder "3.8";
@@ -21,7 +22,7 @@ buildPythonPackage rec {
     owner = "SigmaHQ";
     repo = "pySigma-backend-opensearch";
     rev = "refs/tags/v${version}";
-    hash = "sha256-g3kGaNq07yMu3mnRDeZB3Ck8wwzK3HcOIzkl36cNOs8=";
+    hash = "sha256-VEMt9CKbhPRj1182WcLOqF9JOEzorrz9Yyqp0+FAA88=";
   };
 
   postPatch = ''
@@ -29,16 +30,13 @@ buildPythonPackage rec {
       --replace-fail " --cov=sigma --cov-report term --cov-report xml:cov.xml" ""
   '';
 
-  pythonRelaxDeps = [
-    "pysigma"
-  ];
+  pythonRelaxDeps = [ "pysigma" ];
 
-  nativeBuildInputs = [
-    poetry-core
-    pythonRelaxDepsHook
-  ];
+  build-system = [ poetry-core ];
 
-  propagatedBuildInputs = [
+  nativeBuildInputs = [ pythonRelaxDepsHook ];
+
+  dependencies = [
     pysigma
     pysigma-backend-elasticsearch
   ];
@@ -48,9 +46,7 @@ buildPythonPackage rec {
     requests
   ];
 
-  pythonImportsCheck = [
-    "sigma.backends.opensearch"
-  ];
+  pythonImportsCheck = [ "sigma.backends.opensearch" ];
 
   disabledTests = [
     # Tests requires network access
diff --git a/pkgs/development/python-modules/pysimplegui/default.nix b/pkgs/development/python-modules/pysimplegui/default.nix
index 58deefb4f3d3..71234522f9fb 100644
--- a/pkgs/development/python-modules/pysimplegui/default.nix
+++ b/pkgs/development/python-modules/pysimplegui/default.nix
@@ -7,7 +7,7 @@
 
 buildPythonPackage rec {
   pname = "pysimplegui";
-  version = "5.0.3";
+  version = "5.0.4";
   format = "setuptools";
 
   disabled = pythonOlder "3.6";
@@ -15,7 +15,7 @@ buildPythonPackage rec {
   src = fetchPypi {
     pname = "PySimpleGUI";
     inherit version;
-    hash = "sha256-bnjPVGMVfma/tn8oCg6FLMI1W+9rtHMKNdarbNg61GM=";
+    hash = "sha256-pThG6BBWxy98REUae91yBZDKK8Q1Zc1PHpoW7nhdmAw=";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/pyslurm/default.nix b/pkgs/development/python-modules/pyslurm/default.nix
index b910da5b69e2..f65aae69cded 100644
--- a/pkgs/development/python-modules/pyslurm/default.nix
+++ b/pkgs/development/python-modules/pyslurm/default.nix
@@ -1,8 +1,8 @@
 { lib
 , pythonOlder
 , fetchFromGitHub
-, fetchpatch
 , buildPythonPackage
+, setuptools
 , cython
 , slurm
 }:
@@ -10,7 +10,7 @@
 buildPythonPackage rec {
   pname = "pyslurm";
   version = "23.11.0";
-  format = "setuptools";
+  pyproject = true;
 
   disabled = pythonOlder "3.6";
 
@@ -21,15 +21,16 @@ buildPythonPackage rec {
     hash = "sha256-Qi0XftneKj7hdDiLY2hoRONRrPv49mfQlvlNkudH54Y=";
   };
 
-  patches = [ (fetchpatch {
-    name = "remove-undeclared-KILL_JOB_ARRAY";
-    url = "https://github.com/PySlurm/pyslurm/commit/f7a7d8beb8ceb4e4c1b248bab2ebb995dcae77e2.patch";
-    hash = "sha256-kQLGiGzAhqP8Z6pObz9vdTRdITd12w7KuUDXsfyLIU8=";
-  })];
+  nativeBuildInputs = [
+    setuptools
+  ];
 
   buildInputs = [ cython slurm ];
 
-  setupPyBuildFlags = [ "--slurm-lib=${lib.getLib slurm}/lib" "--slurm-inc=${lib.getDev slurm}/include" ];
+  env = {
+    SLURM_LIB_DIR = "${lib.getLib slurm}/lib";
+    SLURM_INCLUDE_DIR = "${lib.getDev slurm}/include";
+  };
 
   # Test cases need /etc/slurm/slurm.conf and require a working slurm installation
   doCheck = false;
diff --git a/pkgs/development/python-modules/pysqlcipher3/default.nix b/pkgs/development/python-modules/pysqlcipher3/default.nix
index 1b573628edda..1bfd129cf21e 100644
--- a/pkgs/development/python-modules/pysqlcipher3/default.nix
+++ b/pkgs/development/python-modules/pysqlcipher3/default.nix
@@ -1,12 +1,10 @@
-{ lib, buildPythonPackage, fetchPypi, pythonOlder, sqlcipher }:
+{ lib, buildPythonPackage, fetchPypi, sqlcipher }:
 
 buildPythonPackage rec {
   pname = "pysqlcipher3";
   version = "1.2.0";
   format = "setuptools";
 
-  disabled = pythonOlder "3.3";
-
   src = fetchPypi {
     inherit pname version;
     hash = "sha256-PIAzgSZVlH6/KagJrFEGsrxpvgJ06szva1j0WAyNBsU=";
diff --git a/pkgs/development/python-modules/pysqlitecipher/default.nix b/pkgs/development/python-modules/pysqlitecipher/default.nix
index 6eaa1d13eb7d..34f474c50a32 100644
--- a/pkgs/development/python-modules/pysqlitecipher/default.nix
+++ b/pkgs/development/python-modules/pysqlitecipher/default.nix
@@ -31,7 +31,7 @@ buildPythonPackage rec {
 
   meta = {
     description = "Lightweight and easy to use sqlite wrapper with built-in encryption system";
-    homepage = "Ghttps://github.com/harshnative/pysqlitecipher";
+    homepage = "https://github.com/harshnative/pysqlitecipher";
     license = lib.licenses.gpl3Only;
     maintainers = with lib.maintainers; [ dotlambda ];
   };
diff --git a/pkgs/development/python-modules/pystemd/default.nix b/pkgs/development/python-modules/pystemd/default.nix
index 44251a333ed9..57db690b04cb 100644
--- a/pkgs/development/python-modules/pystemd/default.nix
+++ b/pkgs/development/python-modules/pystemd/default.nix
@@ -1,7 +1,6 @@
 { stdenv
 , buildPythonPackage
 , lib
-, python
 , fetchPypi
 , systemd
 , lxml
@@ -19,8 +18,6 @@ buildPythonPackage rec {
     hash = "sha256-Tc+ksTpVaFxJ09F8EGMeyhjDN3D2Yxb47yM3uJUcwUQ=";
   };
 
-  disabled = python.pythonOlder "3.4";
-
   buildInputs = [ systemd ];
 
   nativeBuildInputs = [ pkg-config ];
diff --git a/pkgs/development/python-modules/pytado/default.nix b/pkgs/development/python-modules/pytado/default.nix
index 8a9a3f4cf2fa..5d84a47702b0 100644
--- a/pkgs/development/python-modules/pytado/default.nix
+++ b/pkgs/development/python-modules/pytado/default.nix
@@ -9,7 +9,7 @@
 
 buildPythonPackage rec {
   pname = "pytado";
-  version = "0.17.5";
+  version = "0.17.6";
   pyproject = true;
 
   disabled = pythonOlder "3.7";
@@ -18,7 +18,7 @@ buildPythonPackage rec {
     owner = "wmalgadey";
     repo = "PyTado";
     rev = "refs/tags/${version}";
-    hash = "sha256-FjdqZc4Zt2sLYJpnD/MAzr8Y9lGHteHB5psQqheS84I=";
+    hash = "sha256-KcYxUKQuO7TLS4YPg2mrBjP+DMnvZeJokGzwmeM/CvE=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/python-modules/pytapo/default.nix b/pkgs/development/python-modules/pytapo/default.nix
index d369ace859f6..f61e7089f2d2 100644
--- a/pkgs/development/python-modules/pytapo/default.nix
+++ b/pkgs/development/python-modules/pytapo/default.nix
@@ -1,37 +1,37 @@
-{ lib
-, buildPythonPackage
-, fetchPypi
-, pythonOlder
-
-# propagates
-, pycryptodome
-, requests
-, rtp
-, urllib3
+{
+  lib,
+  buildPythonPackage,
+  fetchPypi,
+  pythonOlder,
+  pycryptodome,
+  requests,
+  rtp,
+  urllib3,
+  setuptools,
 }:
 
 buildPythonPackage rec {
   pname = "pytapo";
-  version = "3.3.19";
-  format = "setuptools";
+  version = "3.3.21";
+  pyproject = true;
 
   disabled = pythonOlder "3.7";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-Zm/ll6vOFW05euRgJN+SghVmMkSGQc9CVZkRu3h6AQQ=";
+    hash = "sha256-rc9XhV99vzgoUF5ERFmJHHB9GMwq5Y44CJKg+g5tjOo=";
   };
 
-  propagatedBuildInputs = [
+  build-system = [ setuptools ];
+
+  dependencies = [
     pycryptodome
     requests
     rtp
     urllib3
   ];
 
-  pythonImportsCheck = [
-    "pytapo"
-  ];
+  pythonImportsCheck = [ "pytapo" ];
 
   # Tests require actual hardware
   doCheck = false;
diff --git a/pkgs/development/python-modules/pytest-ansible/default.nix b/pkgs/development/python-modules/pytest-ansible/default.nix
index b73ae05a8cce..4e1a0c1c4153 100644
--- a/pkgs/development/python-modules/pytest-ansible/default.nix
+++ b/pkgs/development/python-modules/pytest-ansible/default.nix
@@ -15,7 +15,7 @@
 
 buildPythonPackage rec {
   pname = "pytest-ansible";
-  version = "24.1.2";
+  version = "24.1.3";
   pyproject = true;
 
   disabled = pythonOlder "3.10";
@@ -24,7 +24,7 @@ buildPythonPackage rec {
     owner = "ansible";
     repo = "pytest-ansible";
     rev = "refs/tags/v${version}";
-    hash = "sha256-NtGk+azpSZZm9PUf6Q1Qipo/zaUH+bed7k3oFnQyKjw=";
+    hash = "sha256-pQNm7Q9NAc/jLlR6f0132tpXyBoQaKpm7JoEgqOJL8U=";
   };
 
   postPatch = ''
diff --git a/pkgs/development/python-modules/pytest-fixture-config/default.nix b/pkgs/development/python-modules/pytest-fixture-config/default.nix
index 31ab985dbff2..5be97cd7471c 100644
--- a/pkgs/development/python-modules/pytest-fixture-config/default.nix
+++ b/pkgs/development/python-modules/pytest-fixture-config/default.nix
@@ -1,17 +1,30 @@
-{ lib, buildPythonPackage, fetchPypi
-, setuptools-git, pytest }:
+{
+  lib,
+  buildPythonPackage,
+  fetchFromGitHub,
+  setuptools,
+  setuptools-git,
+  pytest,
+}:
 
 buildPythonPackage rec {
   pname = "pytest-fixture-config";
-  version = "1.7.0";
-  format = "setuptools";
+  version = "1.7.1-unstable-2022-10-03";
+  pyproject = true;
 
-  src = fetchPypi {
-    inherit pname version;
-    sha256 = "13i1qpz22w3x4dmw8vih5jdnbqfqvl7jiqs0dg764s0zf8bp98a1";
+  src = fetchFromGitHub {
+    owner = "man-group";
+    repo = "pytest-plugins";
+    rev = "5f9b88a65a8c1e506885352bbd9b2a47900f5014";
+    hash = "sha256-huN3RzwtfVf4iMJ96VRP/ldOxTUlUMF1wJIdbcGXHn4=";
   };
 
-  nativeBuildInputs = [ setuptools-git ];
+  sourceRoot = "${src.name}/pytest-fixture-config";
+
+  nativeBuildInputs = [
+    setuptools
+    setuptools-git
+  ];
 
   buildInputs = [ pytest ];
 
diff --git a/pkgs/development/python-modules/pytest-markdown-docs/default.nix b/pkgs/development/python-modules/pytest-markdown-docs/default.nix
new file mode 100644
index 000000000000..46dcd7d94043
--- /dev/null
+++ b/pkgs/development/python-modules/pytest-markdown-docs/default.nix
@@ -0,0 +1,48 @@
+{ lib
+, buildPythonPackage
+, pythonOlder
+, fetchFromGitHub
+, poetry-core
+, markdown-it-py
+, pytest
+, pytestCheckHook
+}:
+
+buildPythonPackage rec {
+  pname = "pytest-markdown-docs";
+  version = "0.5.1";
+  pyproject = true;
+
+  disabled = pythonOlder "3.8";
+
+  src = fetchFromGitHub {
+    owner = "modal-com";
+    repo = "pytest-markdown-docs";
+    rev = "refs/tags/v${version}";
+    hash = "sha256-mclN28tfPcoFxswECjbrkeOI51XXSqUXfbvuSHrd7Sw=";
+  };
+
+  build-system = [
+    poetry-core
+  ];
+
+  dependencies = [
+    markdown-it-py
+    pytest
+  ];
+
+  pythonImportsCheck = [
+    "pytest_markdown_docs"
+  ];
+
+  nativeCheckInputs = [
+    pytestCheckHook
+  ];
+
+  meta = with lib; {
+    description = "Run pytest on markdown code fence blocks";
+    homepage = "https://github.com/modal-com/pytest-markdown-docs";
+    license = licenses.mit;
+    maintainers = with maintainers; [ GaetanLepage ];
+  };
+}
diff --git a/pkgs/development/python-modules/pytest-mock/default.nix b/pkgs/development/python-modules/pytest-mock/default.nix
index f956a62e1a5a..966304cdc83d 100644
--- a/pkgs/development/python-modules/pytest-mock/default.nix
+++ b/pkgs/development/python-modules/pytest-mock/default.nix
@@ -12,14 +12,14 @@
 
 buildPythonPackage rec {
   pname = "pytest-mock";
-  version = "3.12.0";
+  version = "3.14.0";
   pyproject = true;
 
   disabled = pythonOlder "3.7";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-MaQPA4wiytMih7tDkyBURR/1WD/wlLym9nXfL4vBpuk=";
+    hash = "sha256-JxklWh7+zq28BW1r8989HFAVUw+0DPNHwPmvrIhBC9A=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/python-modules/pytest-mpl/default.nix b/pkgs/development/python-modules/pytest-mpl/default.nix
index f0ea49d1b767..2399379fdb24 100644
--- a/pkgs/development/python-modules/pytest-mpl/default.nix
+++ b/pkgs/development/python-modules/pytest-mpl/default.nix
@@ -5,7 +5,7 @@
 , pytest
 , jinja2
 , matplotlib
-, nose
+, pynose
 , pillow
 , pytestCheckHook
 }:
@@ -31,7 +31,7 @@ buildPythonPackage rec {
   propagatedBuildInputs = [
     jinja2
     matplotlib
-    nose
+    pynose
     pillow
   ];
 
diff --git a/pkgs/development/python-modules/pytest-mypy/default.nix b/pkgs/development/python-modules/pytest-mypy/default.nix
index bfe9fb613e24..84d12cfd825f 100644
--- a/pkgs/development/python-modules/pytest-mypy/default.nix
+++ b/pkgs/development/python-modules/pytest-mypy/default.nix
@@ -42,6 +42,6 @@ buildPythonPackage rec {
     description = "Mypy static type checker plugin for Pytest";
     homepage = "https://github.com/dbader/pytest-mypy";
     license = licenses.mit;
-    maintainers = [ ];
+    maintainers = with lib.maintainers; [ sigmanificient ];
   };
 }
diff --git a/pkgs/development/python-modules/pytest-order/default.nix b/pkgs/development/python-modules/pytest-order/default.nix
index 389ce90eddce..ebb7bbe09d43 100644
--- a/pkgs/development/python-modules/pytest-order/default.nix
+++ b/pkgs/development/python-modules/pytest-order/default.nix
@@ -10,12 +10,12 @@
 
 buildPythonPackage rec {
   pname = "pytest-order";
-  version = "1.2.0";
+  version = "1.2.1";
   format = "setuptools";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-lE+GttRBqnsdqA+AHGq2W4S766Ry0KehLrQ7omZQEBo=";
+    hash = "sha256-RFG9iCG6T6IQlFWi/MiCr2DvjlPgnSRNZ2dL4I9W6sM=";
   };
 
   buildInputs = [ pytest ];
@@ -27,10 +27,12 @@ buildPythonPackage rec {
     pytest-mock
   ];
 
-  meta = {
+  strictDeps = true;
+
+  meta = with lib; {
     description = "Pytest plugin that allows you to customize the order in which your tests are run";
     homepage = "https://github.com/pytest-dev/pytest-order";
-    license = lib.licenses.mit;
-    maintainers = [ lib.maintainers.jacg ];
+    license = licenses.mit;
+    maintainers = with maintainers; [ jacg Luflosi ];
   };
 }
diff --git a/pkgs/development/python-modules/pytest-playwright/default.nix b/pkgs/development/python-modules/pytest-playwright/default.nix
index df1045a19955..4c52a882988d 100644
--- a/pkgs/development/python-modules/pytest-playwright/default.nix
+++ b/pkgs/development/python-modules/pytest-playwright/default.nix
@@ -14,7 +14,7 @@
 
 buildPythonPackage rec {
   pname = "pytest-playwright";
-  version = "0.4.4";
+  version = "0.5.0";
   format = "setuptools";
 
   disabled = pythonOlder "3.8";
@@ -23,7 +23,7 @@ buildPythonPackage rec {
     owner = "microsoft";
     repo = "playwright-pytest";
     rev = "refs/tags/v${version}";
-    hash = "sha256-jCK2i27wRGsv65zfzW+Ef72HNQd4Qu/Mw3HX66ZMQ9Y=";
+    hash = "sha256-HS0Qpr5R4dAoXe0bpPGU7JABB7CmwugReRD75XeJ8l4=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/python-modules/pytest-server-fixtures/default.nix b/pkgs/development/python-modules/pytest-server-fixtures/default.nix
index 29f26251b022..1466371e1af4 100644
--- a/pkgs/development/python-modules/pytest-server-fixtures/default.nix
+++ b/pkgs/development/python-modules/pytest-server-fixtures/default.nix
@@ -1,26 +1,45 @@
-{ lib, buildPythonPackage, fetchPypi
-, pytest, pytest-shutil, pytest-fixture-config, psutil
-, requests, future, retry }:
+{
+  lib,
+  buildPythonPackage,
+  fetchFromGitHub,
+  future,
+  psutil,
+  pytest,
+  pytest-shutil,
+  pytest-fixture-config,
+  requests,
+  retry,
+  six,
+  setuptools,
+}:
 
 buildPythonPackage rec {
   pname = "pytest-server-fixtures";
-  version = "1.7.1";
-  format = "setuptools";
+  inherit (pytest-fixture-config) version src;
+  pyproject = true;
 
-  src = fetchPypi {
-    inherit pname version;
-    sha256 = "sha256-xecz0gqNDnc8pRPjYOS6JkeVLqlCj6K9BVFsYoHqPOc=";
-  };
+  sourceRoot = "${src.name}/pytest-server-fixtures";
+
+  build-system = [ setuptools ];
 
   buildInputs = [ pytest ];
-  propagatedBuildInputs = [ pytest-shutil pytest-fixture-config psutil requests future retry ];
 
-  # RuntimeError: Unable to find a free server number to start Xvfb
+  dependencies = [
+    future
+    psutil
+    pytest-shutil
+    pytest-fixture-config
+    requests
+    retry
+    six
+  ];
+
+  # Don't run intergration tests
   doCheck = false;
 
   meta = with lib; {
     description = "Extensible server fixures for py.test";
-    homepage  = "https://github.com/manahl/pytest-plugins";
+    homepage = "https://github.com/manahl/pytest-plugins";
     license = licenses.mit;
     maintainers = with maintainers; [ ];
   };
diff --git a/pkgs/development/python-modules/pytest-shutil/default.nix b/pkgs/development/python-modules/pytest-shutil/default.nix
index 480c15b87c36..d9c80a93510e 100644
--- a/pkgs/development/python-modules/pytest-shutil/default.nix
+++ b/pkgs/development/python-modules/pytest-shutil/default.nix
@@ -1,13 +1,15 @@
 { lib
 , isPyPy
 , buildPythonPackage
-, fetchPypi
+, pytest-fixture-config
+, fetchpatch
 
-# build
-, pytest
+# build-time
+, setuptools
+, setuptools-git
 
 # runtime
-, setuptools-git
+, pytest
 , mock
 , path
 , execnet
@@ -15,32 +17,34 @@
 , six
 
 # tests
-, cmdline
 , pytestCheckHook
  }:
 
 buildPythonPackage rec {
   pname = "pytest-shutil";
-  version = "1.7.0";
-  format = "setuptools";
+  inherit (pytest-fixture-config) version src;
+  pyproject = true;
 
-  src = fetchPypi {
-    inherit pname version;
-    hash = "sha256-2BZSYd5251CFBcNB2UwCsRPclj8nRUOrynTb+r0CEmE=";
-  };
+  sourceRoot = "${src.name}/pytest-shutil";
 
-  postPatch = ''
-    substituteInPlace setup.py \
-      --replace "contextlib2" 'contextlib2;python_version<"3"' \
-      --replace "path.py" "path"
-  '';
-
-  buildInputs = [
-    pytest
+  # imp was removed in Python 3.12
+  patches = [
+    (fetchpatch {
+      name = "stop-using-imp.patch";
+      url = "https://build.opensuse.org/public/source/openSUSE:Factory/python-pytest-shutil/stop-using-imp.patch?rev=10";
+      hash = "sha256-L8tXoQ9q8o6aP3TpJY/sUVVbUd/ebw0h6de6dBj1WNY=";
+      stripLen = 1;
+    })
   ];
 
-  propagatedBuildInputs = [
+  build-system = [
+    setuptools
     setuptools-git
+  ];
+
+  buildInputs = [ pytest ];
+
+  dependencies = [
     mock
     path
     execnet
@@ -49,7 +53,6 @@ buildPythonPackage rec {
   ];
 
   nativeCheckInputs = [
-    cmdline
     pytestCheckHook
   ];
 
diff --git a/pkgs/development/python-modules/pytest-virtualenv/default.nix b/pkgs/development/python-modules/pytest-virtualenv/default.nix
index 408430d5127c..494209517eb3 100644
--- a/pkgs/development/python-modules/pytest-virtualenv/default.nix
+++ b/pkgs/development/python-modules/pytest-virtualenv/default.nix
@@ -1,21 +1,43 @@
-{ lib, buildPythonPackage, fetchPypi
-, pytest, pytest-cov, mock, cmdline, pytest-fixture-config, pytest-shutil, virtualenv }:
+{
+  lib,
+  buildPythonPackage,
+  cmdline,
+  importlib-metadata,
+  mock,
+  pytestCheckHook,
+  pytest,
+  pytest-fixture-config,
+  pytest-shutil,
+  setuptools,
+  virtualenv,
+}:
 
 buildPythonPackage rec {
   pname = "pytest-virtualenv";
-  version = "1.7.0";
-  format = "setuptools";
+  inherit (pytest-fixture-config) version src;
+  pyproject = true;
 
-  src = fetchPypi {
-    inherit pname version;
-    sha256 = "03w2zz3crblj1p6i8nq17946hbn3zqp9z7cfnifw47hi4a4fww12";
-  };
+  sourceRoot = "${src.name}/pytest-virtualenv";
+
+  build-system = [ setuptools ];
+
+  buildInputs = [ pytest ];
+
+  dependencies = [
+    importlib-metadata
+    pytest-fixture-config
+    pytest-shutil
+    virtualenv
+  ];
 
-  nativeCheckInputs = [ pytest pytest-cov mock cmdline ];
-  propagatedBuildInputs = [ pytest-fixture-config pytest-shutil virtualenv ];
-  checkPhase = "py.test tests/unit ";
+  nativeCheckInputs = [
+    cmdline
+    mock
+    pytestCheckHook
+  ];
 
-  nativeBuildInputs = [ pytest ];
+  # Don't run integration tests
+  disabledTestPaths = [ "tests/integration/*" ];
 
   meta = with lib; {
     description = "Create a Python virtual environment in your test that cleans up on teardown. The fixture has utility methods to install packages and list what’s installed.";
diff --git a/pkgs/development/python-modules/python-creole/default.nix b/pkgs/development/python-modules/python-creole/default.nix
index 7f27466fa2be..0291c0473f42 100644
--- a/pkgs/development/python-modules/python-creole/default.nix
+++ b/pkgs/development/python-modules/python-creole/default.nix
@@ -86,6 +86,15 @@ buildPythonPackage rec {
     "creole/tests/test_rest2html.py"
   ];
 
+  pytestFlagsArray = [
+    # fixture mismatch after docutils update
+    "--deselect=creole/rest_tools/clean_writer.py::creole.rest_tools.clean_writer.rest2html"
+    "--deselect=creole/tests/test_cross_compare_all.py::CrossCompareTests::test_link"
+    "--deselect=creole/tests/test_cross_compare_all.py::CrossCompareTests::test_link_with_at_sign"
+    "--deselect=creole/tests/test_cross_compare_all.py::CrossCompareTests::test_link_with_unknown_protocol"
+    "--deselect=creole/tests/test_cross_compare_all.py::CrossCompareTests::test_link_without_title"
+  ];
+
   meta = with lib; {
     description = "Creole markup tools written in Python";
     homepage = "https://github.com/jedie/python-creole";
diff --git a/pkgs/development/python-modules/python-dbusmock/default.nix b/pkgs/development/python-modules/python-dbusmock/default.nix
index 2a676f72832e..cec0275dfdbe 100644
--- a/pkgs/development/python-modules/python-dbusmock/default.nix
+++ b/pkgs/development/python-modules/python-dbusmock/default.nix
@@ -3,6 +3,7 @@
 , fetchFromGitHub
 , nose
 , dbus
+, gobject-introspection
 , dbus-python
 , pygobject3
 , bluez
@@ -40,6 +41,7 @@ in buildPythonPackage rec {
 
   nativeCheckInputs = [
     dbus
+    gobject-introspection
     pygobject3
     bluez
     pbap-client
diff --git a/pkgs/development/python-modules/python-ecobee-api/default.nix b/pkgs/development/python-modules/python-ecobee-api/default.nix
index 4d12ee0c99d7..ad51ef12d5c9 100644
--- a/pkgs/development/python-modules/python-ecobee-api/default.nix
+++ b/pkgs/development/python-modules/python-ecobee-api/default.nix
@@ -1,22 +1,29 @@
-{ lib
-, buildPythonPackage
-, fetchPypi
-, requests
+{
+  lib,
+  buildPythonPackage,
+  fetchFromGitHub,
+  pythonOlder,
+  requests,
+  setuptools,
 }:
 
 buildPythonPackage rec {
   pname = "python-ecobee-api";
-  version = "0.2.17";
-  format = "setuptools";
+  version = "0.2.18";
+  pyproject = true;
 
-  src = fetchPypi {
-    inherit pname version;
-    hash = "sha256-lJCbNOQJ8xmMa4V+tSFZx4QasK8ZLfsFavMP9Zge4K4=";
+  disabled = pythonOlder "3.8";
+
+  src = fetchFromGitHub {
+    owner = "nkgilley";
+    repo = "python-ecobee-api";
+    rev = "refs/tags/${version}";
+    hash = "sha256-WBVHlA7cAQGCFRNSANX6PqPQYMRw74GEAlTFwSBxVQU=";
   };
 
-  propagatedBuildInputs = [
-    requests
-  ];
+  build-system = [ setuptools ];
+
+  dependencies = [ requests ];
 
   # no tests implemented
   doCheck = false;
@@ -26,6 +33,7 @@ buildPythonPackage rec {
   meta = with lib; {
     description = "Python API for talking to Ecobee thermostats";
     homepage = "https://github.com/nkgilley/python-ecobee-api";
+    changelog = "https://github.com/nkgilley/python-ecobee-api/releases/tag/${version}";
     license = licenses.mit;
     maintainers = with maintainers; [ dotlambda ];
   };
diff --git a/pkgs/development/python-modules/python-glanceclient/default.nix b/pkgs/development/python-modules/python-glanceclient/default.nix
index 9fd1f21a083d..0130c690ef4c 100644
--- a/pkgs/development/python-modules/python-glanceclient/default.nix
+++ b/pkgs/development/python-modules/python-glanceclient/default.nix
@@ -1,40 +1,57 @@
-{ lib
-, buildPythonPackage
-, fetchPypi
-, coreutils
-, pbr
-, prettytable
-, keystoneauth1
-, requests
-, warlock
-, oslo-utils
-, oslo-i18n
-, wrapt
-, pyopenssl
-, pythonOlder
-, stestr
-, testscenarios
-, ddt
-, requests-mock
+{
+  lib,
+  buildPythonPackage,
+  fetchPypi,
+  coreutils,
+  setuptools,
+  pbr,
+  prettytable,
+  keystoneauth1,
+  requests,
+  warlock,
+  oslo-utils,
+  oslo-i18n,
+  wrapt,
+  pyopenssl,
+  pythonOlder,
+  stestr,
+  testscenarios,
+  ddt,
+  requests-mock,
+  writeText,
 }:
-
-buildPythonPackage rec {
+let
   pname = "python-glanceclient";
-  version = "4.5.0";
-  format = "setuptools";
+  version = "4.6.0";
+
+  disabledTests = [
+    "test_http_chunked_response"
+    "test_v1_download_has_no_stray_output_to_stdout"
+    "test_v2_requests_valid_cert_verification"
+    "test_download_has_no_stray_output_to_stdout"
+    "test_v2_download_has_no_stray_output_to_stdout"
+    "test_v2_requests_valid_cert_verification_no_compression"
+    "test_log_request_id_once"
+  ];
+in
+buildPythonPackage {
+  inherit pname version;
+  pyproject = true;
 
   disabled = pythonOlder "3.8";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-ZGTE1be+S/4Tbhw6Px+9qMgkNTZgoDn6lnAJhNvVYuA=";
+    hash = "sha256-gJm4TzxtIjvkpOlbN82MPbY0JmDdiwlEMGGxZvTR+Po=";
   };
 
   postPatch = ''
     substituteInPlace glanceclient/tests/unit/v1/test_shell.py \
-      --replace "/bin/echo" "${coreutils}/bin/echo"
+      --replace-fail "/bin/echo" "${lib.getExe' coreutils "echo"}"
   '';
 
+  nativeBuildInputs = [ setuptools ];
+
   propagatedBuildInputs = [
     pbr
     prettytable
@@ -55,12 +72,12 @@ buildPythonPackage rec {
   ];
 
   checkPhase = ''
-    stestr run
+    runHook preCheck
+    stestr run -e ${writeText "disabled-tests" (lib.concatStringsSep "\n" disabledTests)}
+    runHook postCheck
   '';
 
-  pythonImportsCheck = [
-    "glanceclient"
-  ];
+  pythonImportsCheck = [ "glanceclient" ];
 
   meta = with lib; {
     description = "Python bindings for the OpenStack Images API";
diff --git a/pkgs/development/python-modules/python-homeassistant-analytics/default.nix b/pkgs/development/python-modules/python-homeassistant-analytics/default.nix
index 633e8baf5853..4af23c95cc61 100644
--- a/pkgs/development/python-modules/python-homeassistant-analytics/default.nix
+++ b/pkgs/development/python-modules/python-homeassistant-analytics/default.nix
@@ -58,8 +58,7 @@ buildPythonPackage rec {
   pythonImportsCheck = [ "python_homeassistant_analytics" ];
 
   meta = with lib; {
-    changelog = "https://github.com/joostlek/python-homeassistant-analytics
-/releases/tag/v${version}";
+    changelog = "https://github.com/joostlek/python-homeassistant-analytics/releases/tag/v${version}";
     description = "Asynchronous Python client for Homeassistant Analytics";
     homepage = "https://github.com/joostlek/python-homeassistant-analytics
 ";
diff --git a/pkgs/development/python-modules/python-hosts/default.nix b/pkgs/development/python-modules/python-hosts/default.nix
index 7452abb860c3..c866a5fc72d2 100644
--- a/pkgs/development/python-modules/python-hosts/default.nix
+++ b/pkgs/development/python-modules/python-hosts/default.nix
@@ -9,14 +9,14 @@
 
 buildPythonPackage rec {
   pname = "python-hosts";
-  version = "1.0.5";
+  version = "1.0.6";
   pyproject = true;
 
   disabled = pythonOlder "3.7";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-xabbGnvzXNiE0koQVq9dmEib5Cv7kg1JjpZAyb7IZM0=";
+    hash = "sha256-LfWfBzJ3UyArcHxrIUDsIa8pIr1WkUikf6F6v+IVLG4=";
   };
 
   # win_inet_pton is required for Windows support
diff --git a/pkgs/development/python-modules/python-ironicclient/default.nix b/pkgs/development/python-modules/python-ironicclient/default.nix
index 7e9a3b4ee7c2..feb8849b21d3 100644
--- a/pkgs/development/python-modules/python-ironicclient/default.nix
+++ b/pkgs/development/python-modules/python-ironicclient/default.nix
@@ -20,12 +20,12 @@
 
 buildPythonPackage rec {
   pname = "python-ironicclient";
-  version = "5.5.0";
+  version = "5.6.0";
   format = "setuptools";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-JlO487QSPsBJZqPYRhsQYFA7noIN2q/stH4eZXAFLnY=";
+    hash = "sha256-zWlfy+Pfu0l7vBQnLOIP9vaXzx+i35k4oQqPUtLg3cE=";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/python-jose/default.nix b/pkgs/development/python-modules/python-jose/default.nix
index 6e3f406fe5a3..9739e5bf7f65 100644
--- a/pkgs/development/python-modules/python-jose/default.nix
+++ b/pkgs/development/python-modules/python-jose/default.nix
@@ -64,7 +64,12 @@ buildPythonPackage rec {
 
   nativeCheckInputs = [
     pytestCheckHook
-  ] ++ lib.flatten (builtins.attrValues passthru.optional-dependencies);
+  ] ++ lib.flatten (lib.attrValues passthru.optional-dependencies);
+
+  disabledTests = [
+    # https://github.com/mpdavis/python-jose/issues/348
+    "TestBackendEcdsaCompatibility"
+  ];
 
   meta = with lib; {
     changelog = "https://github.com/mpdavis/python-jose/releases/tag/${version}";
diff --git a/pkgs/development/python-modules/python-jsonrpc-server/default.nix b/pkgs/development/python-modules/python-jsonrpc-server/default.nix
index 2cb13c747742..4a659c1e26a5 100644
--- a/pkgs/development/python-modules/python-jsonrpc-server/default.nix
+++ b/pkgs/development/python-modules/python-jsonrpc-server/default.nix
@@ -1,6 +1,6 @@
-{ lib, buildPythonPackage, fetchFromGitHub, pythonOlder
+{ lib, buildPythonPackage, fetchFromGitHub
 , pytestCheckHook, mock, pytest-cov, coverage
-, future, futures ? null, ujson}:
+, future, ujson}:
 
 buildPythonPackage rec {
   pname = "python-jsonrpc-server";
@@ -22,8 +22,7 @@ buildPythonPackage rec {
     pytestCheckHook mock pytest-cov coverage
   ];
 
-  propagatedBuildInputs = [ future ujson ]
-    ++ lib.optional (pythonOlder "3.2") futures;
+  propagatedBuildInputs = [ future ujson ];
 
   meta = with lib; {
     homepage = "https://github.com/palantir/python-jsonrpc-server";
diff --git a/pkgs/development/python-modules/python-keycloak/default.nix b/pkgs/development/python-modules/python-keycloak/default.nix
index a4adbf787aac..9150b1a24036 100644
--- a/pkgs/development/python-modules/python-keycloak/default.nix
+++ b/pkgs/development/python-modules/python-keycloak/default.nix
@@ -1,41 +1,40 @@
-{ lib
-, buildPythonPackage
-, fetchFromGitHub
-, poetry-core
-, python-jose
-, pythonOlder
-, requests
-, requests-toolbelt
-, urllib3
+{
+  lib,
+  buildPythonPackage,
+  deprecation,
+  fetchFromGitHub,
+  jwcrypto,
+  poetry-core,
+  pythonOlder,
+  requests,
+  requests-toolbelt,
 }:
 
 buildPythonPackage rec {
   pname = "python-keycloak";
-  version = "2.6.0";
-  format = "pyproject";
+  version = "4.0.0";
+  pyproject = true;
 
-  disabled = pythonOlder "3.7";
+  disabled = pythonOlder "3.8";
 
   src = fetchFromGitHub {
     owner = "marcospereirampj";
     repo = "python-keycloak";
-    rev = "v${version}";
-    hash = "sha256-cuj0gJlZDkbJ2HRSMcQvO4nxpjw65CKGEpWCL5sucvg=";
+    rev = "refs/tags/v${version}";
+    hash = "sha256-ZXS29bND4GsJNhTGiUsLo+4FYd8Tubvg/+PJ33tqovY=";
   };
 
   postPatch = ''
+    # Upstream doesn't set version
     substituteInPlace pyproject.toml \
-      --replace 'version = "0.0.0"' 'version = "${version}"' \
-      --replace 'requests-toolbelt = "^0.9.1"' 'requests-toolbelt = "*"'
+      --replace-fail 'version = "0.0.0"' 'version = "${version}"'
   '';
 
-  buildInputs = [
-    poetry-core
-  ];
+  build-system = [ poetry-core ];
 
-  propagatedBuildInputs = [
-    python-jose
-    urllib3
+  dependencies = [
+    deprecation
+    jwcrypto
     requests
     requests-toolbelt
   ];
@@ -43,13 +42,12 @@ buildPythonPackage rec {
   # Test fixtures require a running keycloak instance
   doCheck = false;
 
-  pythonImportsCheck = [
-    "keycloak"
-  ];
+  pythonImportsCheck = [ "keycloak" ];
 
   meta = with lib; {
     description = "Provides access to the Keycloak API";
     homepage = "https://github.com/marcospereirampj/python-keycloak";
+    changelog = "https://github.com/marcospereirampj/python-keycloak/blob/v${version}/CHANGELOG.md";
     license = licenses.mit;
     maintainers = with maintainers; [ ];
   };
diff --git a/pkgs/development/python-modules/python-ldap/default.nix b/pkgs/development/python-modules/python-ldap/default.nix
index 5bc9f3fecfcc..c54395cabe7d 100644
--- a/pkgs/development/python-modules/python-ldap/default.nix
+++ b/pkgs/development/python-modules/python-ldap/default.nix
@@ -1,22 +1,24 @@
-{ lib
-, stdenv
-, buildPythonPackage
-, fetchFromGitHub
-, pythonOlder
+{
+  lib,
+  stdenv,
+  buildPythonPackage,
+  fetchFromGitHub,
+  pythonAtLeast,
+  pythonOlder,
 
-# build-system
-, setuptools
+  # build-system
+  setuptools,
 
-# native dependencies
-, openldap
-, cyrus_sasl
+  # native dependencies
+  openldap,
+  cyrus_sasl,
 
-# dependencies
-, pyasn1
-, pyasn1-modules
+  # dependencies
+  pyasn1,
+  pyasn1-modules,
 
-# tests
-, pytestCheckHook
+  # tests
+  pytestCheckHook,
 }:
 
 buildPythonPackage rec {
@@ -24,7 +26,7 @@ buildPythonPackage rec {
   version = "3.4.4";
   pyproject = true;
 
-  disabled = pythonOlder "3.6";
+  disabled = pythonOlder "3.6" || pythonAtLeast "3.12"; # requires distutils
 
   src = fetchFromGitHub {
     owner = "python-ldap";
@@ -33,23 +35,19 @@ buildPythonPackage rec {
     hash = "sha256-v1cWoRGxbvvFnHqnwoIfmiQQcxfaA8Bf3+M5bE5PtuU=";
   };
 
-  nativeBuildInputs = [
-    setuptools
-  ];
+  build-system = [ setuptools ];
 
   buildInputs = [
     openldap
     cyrus_sasl
   ];
 
-  propagatedBuildInputs = [
+  dependencies = [
     pyasn1
     pyasn1-modules
   ];
 
-  nativeCheckInputs = [
-    pytestCheckHook
-  ];
+  nativeCheckInputs = [ pytestCheckHook ];
 
   preCheck = ''
     # Needed by tests to setup a mockup ldap server.
diff --git a/pkgs/development/python-modules/python-manilaclient/default.nix b/pkgs/development/python-modules/python-manilaclient/default.nix
index b2fbfef19f8c..61fbc746f7cc 100644
--- a/pkgs/development/python-modules/python-manilaclient/default.nix
+++ b/pkgs/development/python-modules/python-manilaclient/default.nix
@@ -22,12 +22,12 @@
 
 buildPythonPackage rec {
   pname = "python-manilaclient";
-  version = "4.8.0";
+  version = "4.9.0";
   format = "setuptools";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-TwvDtbYGkDZFIsr0GgwD2R0Il7pV2GCuDw3OZXxDXso=";
+    hash = "sha256-Q7ADjuGQh5C88WqT5II+NMYLYFwTip/bzZinca/xqFY=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/python-modules/python-matter-server/default.nix b/pkgs/development/python-modules/python-matter-server/default.nix
index b157eba228ac..98c0efd01d0a 100644
--- a/pkgs/development/python-modules/python-matter-server/default.nix
+++ b/pkgs/development/python-modules/python-matter-server/default.nix
@@ -55,7 +55,7 @@ in
 
 buildPythonPackage rec {
   pname = "python-matter-server";
-  version = "5.9.0";
+  version = "5.10.0";
   format = "pyproject";
 
   disabled = pythonOlder "3.10";
@@ -64,7 +64,7 @@ buildPythonPackage rec {
     owner = "home-assistant-libs";
     repo = "python-matter-server";
     rev = "refs/tags/${version}";
-    hash = "sha256-O3AJ7vBjuwRGa4AMwWIdxn5m2F45rLCjCHeff18b/5E=";
+    hash = "sha256-rfpGclSgCBTxlTgVqgNz3ixoldB9M+6mLmogkNDDdWs=";
   };
 
   patches = [
diff --git a/pkgs/development/python-modules/python-musicpd/default.nix b/pkgs/development/python-modules/python-musicpd/default.nix
index cc4ab6b722f0..c105dcea14da 100644
--- a/pkgs/development/python-modules/python-musicpd/default.nix
+++ b/pkgs/development/python-modules/python-musicpd/default.nix
@@ -5,12 +5,12 @@
 
 buildPythonPackage rec {
   pname = "python-musicpd";
-  version = "0.8.0";
+  version = "0.9.0";
 
   src = fetchPypi {
     inherit pname;
     inherit version;
-    sha256 = "sha256-5Br4rZO1c/pPmAZ/UecYjuVLttR8R+xeReKsc/xnaeI=";
+    sha256 = "sha256-/FdM0UolVqhJNpS60Q/nra1hSHKL/LiSMX7/Hcipwco=";
   };
 
   format = "setuptools";
diff --git a/pkgs/development/python-modules/python-roborock/default.nix b/pkgs/development/python-modules/python-roborock/default.nix
index 49ea2cc277d3..1417b78a9235 100644
--- a/pkgs/development/python-modules/python-roborock/default.nix
+++ b/pkgs/development/python-modules/python-roborock/default.nix
@@ -20,7 +20,7 @@
 
 buildPythonPackage rec {
   pname = "python-roborock";
-  version = "2.0.0";
+  version = "2.2.2";
   pyproject = true;
 
   disabled = pythonOlder "3.10";
@@ -29,7 +29,7 @@ buildPythonPackage rec {
     owner = "humbertogontijo";
     repo = "python-roborock";
     rev = "refs/tags/v${version}";
-    hash = "sha256-vtT6hsyiP1FxWo5PezcjJACknCT9JEhqSQ6C4FpU+Jg=";
+    hash = "sha256-W/42NUs3fQKCxM6hlJTmNQ7E8FevxO3XJCOYyZHQsqs=";
   };
 
   postPatch = ''
diff --git a/pkgs/development/python-modules/python-tado/default.nix b/pkgs/development/python-modules/python-tado/default.nix
index a273b33a2084..6fb45f4f7282 100644
--- a/pkgs/development/python-modules/python-tado/default.nix
+++ b/pkgs/development/python-modules/python-tado/default.nix
@@ -1,15 +1,17 @@
-{ buildPythonPackage
-, fetchFromGitHub
-, lib
-, pytestCheckHook
-, pythonOlder
-, requests
+{
+  lib,
+  buildPythonPackage,
+  fetchFromGitHub,
+  pytestCheckHook,
+  pythonOlder,
+  requests,
+  setuptools,
 }:
 
 buildPythonPackage rec {
   pname = "python-tado";
-  version = "0.17.5";
-  format = "setuptools";
+  version = "0.17.6";
+  pyproject = true;
 
   disabled = pythonOlder "3.5";
 
@@ -17,23 +19,23 @@ buildPythonPackage rec {
     owner = "wmalgadey";
     repo = "PyTado";
     rev = "refs/tags/${version}";
-    hash = "sha256-FjdqZc4Zt2sLYJpnD/MAzr8Y9lGHteHB5psQqheS84I=";
+    hash = "sha256-KcYxUKQuO7TLS4YPg2mrBjP+DMnvZeJokGzwmeM/CvE=";
   };
 
-  propagatedBuildInputs = [
-    requests
-  ];
+  build-system = [ setuptools ];
 
-  nativeCheckInputs = [
-    pytestCheckHook
-  ];
+  dependencies = [ requests ];
+
+  nativeCheckInputs = [ pytestCheckHook ];
+
+  pythonImportsCheck = [ "PyTado" ];
 
   meta = with lib; {
     description = "Python binding for Tado web API. Pythonize your central heating!";
-    mainProgram = "pytado";
     homepage = "https://github.com/wmalgadey/PyTado";
     changelog = "https://github.com/wmalgadey/PyTado/releases/tag/${version}";
     license = licenses.gpl3Plus;
     maintainers = with maintainers; [ jamiemagee ];
+    mainProgram = "pytado";
   };
 }
diff --git a/pkgs/development/python-modules/python-telegram-bot/default.nix b/pkgs/development/python-modules/python-telegram-bot/default.nix
index adb2fc81c977..a15e31941ecc 100644
--- a/pkgs/development/python-modules/python-telegram-bot/default.nix
+++ b/pkgs/development/python-modules/python-telegram-bot/default.nix
@@ -21,7 +21,7 @@
 
 buildPythonPackage rec {
   pname = "python-telegram-bot";
-  version = "21.1";
+  version = "21.1.1";
   pyproject = true;
 
   disabled = pythonOlder "3.8";
@@ -30,7 +30,7 @@ buildPythonPackage rec {
     owner = "python-telegram-bot";
     repo = "python-telegram-bot";
     rev = "refs/tags/v${version}";
-    hash = "sha256-s5C3f17VP5ooH78/4JQMkzuV1byi7rFPTmVr3lZliFc=";
+    hash = "sha256-BZrcYZxivrZIkHKqi+x9M4A9XE9dD//2PqzRwA3vuGU=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/python-modules/python3-gnutls/default.nix b/pkgs/development/python-modules/python3-gnutls/default.nix
index 72f695326d75..6adaf3c03393 100644
--- a/pkgs/development/python-modules/python3-gnutls/default.nix
+++ b/pkgs/development/python-modules/python3-gnutls/default.nix
@@ -1,20 +1,22 @@
 { lib, fetchFromGitHub, substituteAll, buildPythonPackage, isPy3k, gnutls
-, twisted, pyopenssl, service-identity }:
+, twisted, pyopenssl, service-identity, setuptools }:
 
 buildPythonPackage rec {
   pname = "python3-gnutls";
-  version = "3.1.9";
-  format = "setuptools";
+  version = "3.1.10";
+  pyproject = true;
 
   disabled = !isPy3k;
 
   src = fetchFromGitHub {
     owner = "AGProjects";
     repo = "python3-gnutls";
-    rev = "324b78f7cd3d9fe58c89c7f0b2bf94199bd6a6e5"; # version not tagged
-    hash = "sha256-18T8bAHlNERHobsspUFvSC6ulN55nrFFb5aqNwU8T00=";
+    rev = "refs/tags/release-${version}";
+    hash = "sha256-AdFRF3ZlkkAoSm5rvf/09FSYIo7SsZ38sD2joOLyukA=";
   };
 
+  nativeBuildInputs = [ setuptools ];
+
   propagatedBuildInputs = [ twisted pyopenssl service-identity ];
 
   patches = [
diff --git a/pkgs/development/python-modules/pytools/default.nix b/pkgs/development/python-modules/pytools/default.nix
index 7689e40c5b8e..ed4ac27bf63a 100644
--- a/pkgs/development/python-modules/pytools/default.nix
+++ b/pkgs/development/python-modules/pytools/default.nix
@@ -11,13 +11,13 @@
 
 buildPythonPackage rec {
   pname = "pytools";
-  version = "2024.1.1";
+  version = "2024.1.2";
   format = "setuptools";
   disabled = pythonOlder "3.6";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-LIjt+pkMjjJRZ8N2WfseEKPBEz3691K719hFZAK43P8=";
+    hash = "sha256-CBhx5FFQXEuYbrr6aK7qv9x76z+qG6pQ9yauviHh0Fc=";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/pytorch-lightning/default.nix b/pkgs/development/python-modules/pytorch-lightning/default.nix
index f7a50ce337fc..780b2be18ca7 100644
--- a/pkgs/development/python-modules/pytorch-lightning/default.nix
+++ b/pkgs/development/python-modules/pytorch-lightning/default.nix
@@ -20,14 +20,14 @@
 
 buildPythonPackage rec {
   pname = "pytorch-lightning";
-  version = "2.2.1";
+  version = "2.2.4";
   format = "pyproject";
 
   src = fetchFromGitHub {
     owner = "Lightning-AI";
     repo = "pytorch-lightning";
     rev = "refs/tags/${version}";
-    hash = "sha256-H2gbVCvGKbeHZVlvz6SmKI8Gzw649DxcwYgfGcehsmg=";
+    hash = "sha256-IkoSID7nEPbKrhEMlo/UaMcF80HYldvndFA54DoHT+M=";
   };
 
   preConfigure = ''
diff --git a/pkgs/development/python-modules/pytrydan/default.nix b/pkgs/development/python-modules/pytrydan/default.nix
index 5a191bf800fe..6ee8162b4ba0 100644
--- a/pkgs/development/python-modules/pytrydan/default.nix
+++ b/pkgs/development/python-modules/pytrydan/default.nix
@@ -1,22 +1,23 @@
-{ lib
-, buildPythonPackage
-, fetchFromGitHub
-, httpx
-, orjson
-, poetry-core
-, pytest-asyncio
-, pytestCheckHook
-, pythonOlder
-, respx
-, rich
-, syrupy
-, tenacity
-, typer
+{
+  lib,
+  buildPythonPackage,
+  fetchFromGitHub,
+  httpx,
+  orjson,
+  poetry-core,
+  pytest-asyncio,
+  pytestCheckHook,
+  pythonOlder,
+  respx,
+  rich,
+  syrupy,
+  tenacity,
+  typer,
 }:
 
 buildPythonPackage rec {
   pname = "pytrydan";
-  version = "0.4.0";
+  version = "0.6.1";
   pyproject = true;
 
   disabled = pythonOlder "3.10";
@@ -25,19 +26,17 @@ buildPythonPackage rec {
     owner = "dgomes";
     repo = "pytrydan";
     rev = "refs/tags/v${version}";
-    hash = "sha256-9PyRICtZ+0Ezinu28oFgFOSnOyCmD7zZbdc/chN+sCo=";
+    hash = "sha256-5sTHfxNV4JEonGke8ZZ/pXoLA15iCuJ/iSW1XwFMltg=";
   };
 
   postPatch = ''
     substituteInPlace pyproject.toml \
-      --replace " --cov=pytrydan --cov-report=term-missing:skip-covered" ""
+      --replace-fail " --cov=pytrydan --cov-report=term-missing:skip-covered" ""
   '';
 
-  nativeBuildInputs = [
-    poetry-core
-  ];
+  build-system = [ poetry-core ];
 
-  propagatedBuildInputs = [
+  dependencies = [
     httpx
     orjson
     rich
@@ -52,16 +51,14 @@ buildPythonPackage rec {
     syrupy
   ];
 
-  pythonImportsCheck = [
-    "pytrydan"
-  ];
+  pythonImportsCheck = [ "pytrydan" ];
 
   meta = with lib; {
     description = "Library to interface with V2C EVSE Trydan";
-    mainProgram = "pytrydan";
     homepage = "https://github.com/dgomes/pytrydan";
     changelog = "https://github.com/dgomes/pytrydan/blob/${version}/CHANGELOG.md";
     license = licenses.mit;
     maintainers = with maintainers; [ fab ];
+    mainProgram = "pytrydan";
   };
 }
diff --git a/pkgs/development/python-modules/pyvex/default.nix b/pkgs/development/python-modules/pyvex/default.nix
index a3d62043d901..d3765866dc61 100644
--- a/pkgs/development/python-modules/pyvex/default.nix
+++ b/pkgs/development/python-modules/pyvex/default.nix
@@ -11,14 +11,14 @@
 
 buildPythonPackage rec {
   pname = "pyvex";
-  version = "9.2.101";
+  version = "9.2.102";
   pyproject = true;
 
   disabled = pythonOlder "3.11";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-zI86NYe0b9ppm9Zv6+zfB3UclhIm1TTqcC9vrBn3NR8=";
+    hash = "sha256-P16jsBmFkuzMHcVTvGEK7/SzIkVpFJsUlxFeHCHivig=";
   };
 
   build-system = [
diff --git a/pkgs/development/python-modules/pyvista/default.nix b/pkgs/development/python-modules/pyvista/default.nix
index e0bfb1246f52..4985df3f9cc8 100644
--- a/pkgs/development/python-modules/pyvista/default.nix
+++ b/pkgs/development/python-modules/pyvista/default.nix
@@ -14,7 +14,7 @@
 
 buildPythonPackage rec {
   pname = "pyvista";
-  version = "0.43.6";
+  version = "0.43.7";
   pyproject = true;
 
   disabled = pythonOlder "3.8";
@@ -23,7 +23,7 @@ buildPythonPackage rec {
     owner = pname;
     repo = pname;
     rev = "refs/tags/v${version}";
-    hash = "sha256-EhhnX7r8yHynEVahMSB6LxCAquQcUF4cI0S4oW+IZ/Y=";
+    hash = "sha256-z/IO25hcHv1pimUecIIX5hZPYF2/1QkROqZ2D4Tk7DE=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/python-modules/pywavelets/default.nix b/pkgs/development/python-modules/pywavelets/default.nix
index a4d8117fc372..af598a1439ca 100644
--- a/pkgs/development/python-modules/pywavelets/default.nix
+++ b/pkgs/development/python-modules/pywavelets/default.nix
@@ -1,34 +1,44 @@
 { lib
 , buildPythonPackage
-, fetchPypi
-, isPy27
+, fetchFromGitHub
+, pythonOlder
+, meson-python
 , cython
-, nose
-, pytest
+, pytestCheckHook
 , numpy
 }:
 
 buildPythonPackage rec {
   pname = "pywavelets";
-  version = "1.4.1";
-  disabled = isPy27;
+  version = "1.6.0";
+  pyproject = true;
 
-  src = fetchPypi {
-    pname = "PyWavelets";
-    inherit version;
-    hash = "sha256-ZDevPd8IMRjCbY+Xq0OwckuVbJ+Vjp6niGWfaig0upM=";
+  disabled = pythonOlder "3.9";
+
+  src = fetchFromGitHub {
+    owner = "PyWavelets";
+    repo = "pywt";
+    rev = "refs/tags/v${version}";
+    hash = "sha256-Dr6LWGVlYGDD21l1RQ7elScovcen5uuFdJJXe3deB5o=";
   };
 
-  nativeCheckInputs = [ nose pytest ];
+  postPatch = ''
+    substituteInPlace pyproject.toml \
+      --replace-fail '"numpy>=2.0.0rc1,<2.3",' ""
+  '';
+
+  build-system = [
+    meson-python
+    cython
+    numpy
+  ];
 
-  buildInputs = [ cython ];
+  dependencies = [ numpy ];
 
-  propagatedBuildInputs = [ numpy ];
+  nativeCheckInputs = [ pytestCheckHook ];
 
-  # Somehow nosetests doesn't run the tests, so let's use pytest instead
-  doCheck = false; # tests use relative paths, which fail to resolve
-  checkPhase = ''
-    py.test pywt/tests
+  preCheck = ''
+    cd $out
   '';
 
   # ensure compiled modules are present
@@ -43,6 +53,7 @@ buildPythonPackage rec {
   meta = with lib; {
     description = "Wavelet transform module";
     homepage = "https://github.com/PyWavelets/pywt";
+    changelog = "https://github.com/PyWavelets/pywt/releases/tag/v${version}";
     license = licenses.mit;
   };
 
diff --git a/pkgs/development/python-modules/pywbem/default.nix b/pkgs/development/python-modules/pywbem/default.nix
index bba152dd4367..4f06262c59d2 100644
--- a/pkgs/development/python-modules/pywbem/default.nix
+++ b/pkgs/development/python-modules/pywbem/default.nix
@@ -24,14 +24,14 @@
 
 buildPythonPackage rec {
   pname = "pywbem";
-  version = "1.6.3";
+  version = "1.7.2";
   format = "setuptools";
 
   disabled = pythonOlder "3.7";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-eN8w3umMUIYgtZm4lR8yKoHGwKnXt4/+XgF7lBfNl7k=";
+    hash = "sha256-3Dt4WEABf1/LY4HFZoJZjOu/yEUYUXaPheIxioTga2g=";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/pywlroots/default.nix b/pkgs/development/python-modules/pywlroots/default.nix
index ec3936457391..a3d52e1bbb6b 100644
--- a/pkgs/development/python-modules/pywlroots/default.nix
+++ b/pkgs/development/python-modules/pywlroots/default.nix
@@ -20,14 +20,14 @@
 
 buildPythonPackage rec {
   pname = "pywlroots";
-  version = "0.16.7";
+  version = "0.16.8";
   format = "setuptools";
 
   disabled = pythonOlder "3.7";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-zfjcXQCXysG+JMw00YES/GQk/yjHH9kCksb9SlZt9wo=";
+    hash = "sha256-jAkDZKAm75MlAMNuX+21ZV6kHb53zgIOJctJC2bXH1k=";
   };
 
   nativeBuildInputs = [ pkg-config ];
diff --git a/pkgs/development/python-modules/pyzufall/default.nix b/pkgs/development/python-modules/pyzufall/default.nix
deleted file mode 100644
index 71418c1607d0..000000000000
--- a/pkgs/development/python-modules/pyzufall/default.nix
+++ /dev/null
@@ -1,30 +0,0 @@
-{ lib, fetchPypi, python, buildPythonPackage, nose, future, coverage }:
-
-buildPythonPackage rec {
-  pname = "pyzufall";
-  version = "0.13.2";
-
-  src = fetchPypi {
-    pname = "PyZufall";
-    inherit version;
-    sha256 = "1jffhi20m82fdf78bjhncbdxkfzcskrlipxlrqq9741xdvrn14b5";
-  };
-
-  # disable tests due to problem with nose
-  # https://github.com/nose-devs/nose/issues/1037
-  doCheck = false;
-
-  nativeCheckInputs = [ nose coverage ];
-  propagatedBuildInputs = [ future ];
-
-  checkPhase = ''
-    ${python.interpreter} setup.py nosetests
-  '';
-
-  meta = with lib; {
-    homepage = "https://pyzufall.readthedocs.io/de/latest/";
-    description = "Library for generating random data and sentences in german language";
-    license = licenses.gpl3Plus;
-    maintainers = with maintainers; [ davidak ];
-  };
-}
diff --git a/pkgs/development/python-modules/qcs-api-client/default.nix b/pkgs/development/python-modules/qcs-api-client/default.nix
index 98e3b05812f1..c884dfe01e62 100644
--- a/pkgs/development/python-modules/qcs-api-client/default.nix
+++ b/pkgs/development/python-modules/qcs-api-client/default.nix
@@ -8,6 +8,7 @@
   iso8601,
   poetry-core,
   pydantic,
+  pydantic-settings,
   pyjwt,
   pytest-asyncio,
   pytestCheckHook,
@@ -60,6 +61,7 @@ buildPythonPackage rec {
     httpx
     iso8601
     pydantic
+    pydantic-settings
     pyjwt
     python-dateutil
     retrying
diff --git a/pkgs/development/python-modules/qcs-sdk-python/default.nix b/pkgs/development/python-modules/qcs-sdk-python/default.nix
index 100a7874fd18..d63eb97b9faa 100644
--- a/pkgs/development/python-modules/qcs-sdk-python/default.nix
+++ b/pkgs/development/python-modules/qcs-sdk-python/default.nix
@@ -1,5 +1,6 @@
 {
   lib,
+  stdenv,
   buildPythonPackage,
   fetchFromGitHub,
   pytest-asyncio,
@@ -7,6 +8,8 @@
   pythonOlder,
   quil,
   rustPlatform,
+  darwin,
+  libiconv,
   syrupy,
 }:
 
@@ -40,6 +43,12 @@ buildPythonPackage rec {
 
   dependencies = [ quil ];
 
+  buildInputs = lib.optionals stdenv.isDarwin [
+    darwin.apple_sdk.frameworks.Security
+    darwin.apple_sdk.frameworks.SystemConfiguration
+    libiconv
+  ];
+
   nativeCheckInputs = [
     pytest-asyncio
     pytestCheckHook
diff --git a/pkgs/development/python-modules/qdldl/default.nix b/pkgs/development/python-modules/qdldl/default.nix
index a5af403d4d7a..10d05be78696 100644
--- a/pkgs/development/python-modules/qdldl/default.nix
+++ b/pkgs/development/python-modules/qdldl/default.nix
@@ -10,12 +10,12 @@
 
 buildPythonPackage rec {
   pname = "qdldl";
-  version = "0.1.7.post1";
+  version = "0.1.7.post2";
   format = "setuptools";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-eY2IwW4CU2rmXHHwa2Tj+/MbdNfke8EP+YFnaGMrOmQ=";
+    hash = "sha256-SxU5pewQzHV6/XFW1960AGAHythtd0yfD9w+NEFVV9M=";
   };
 
   dontUseCmakeConfigure = true;
diff --git a/pkgs/development/python-modules/qdrant-client/default.nix b/pkgs/development/python-modules/qdrant-client/default.nix
index 33fdd38d4edb..0a6a476979c1 100644
--- a/pkgs/development/python-modules/qdrant-client/default.nix
+++ b/pkgs/development/python-modules/qdrant-client/default.nix
@@ -18,7 +18,7 @@
 
 buildPythonPackage rec {
   pname = "qdrant-client";
-  version = "1.9.0";
+  version = "1.9.1";
   pyproject = true;
 
   disabled = pythonOlder "3.7";
@@ -27,7 +27,7 @@ buildPythonPackage rec {
     owner = "qdrant";
     repo = "qdrant-client";
     rev = "refs/tags/v${version}";
-    hash = "sha256-ka5qhs9yhvbGkxXlq9Z3ZMuY1muf9HaODTxCgSLU4io=";
+    hash = "sha256-1QYL2othFA/xTgdj549MA1aVDH6jjiuL+aN2Q/supp8=";
   };
 
   build-system = [ poetry-core ];
diff --git a/pkgs/development/python-modules/qrcode/default.nix b/pkgs/development/python-modules/qrcode/default.nix
index b5c3d2aec6b3..3d7ad90dbaaf 100644
--- a/pkgs/development/python-modules/qrcode/default.nix
+++ b/pkgs/development/python-modules/qrcode/default.nix
@@ -51,6 +51,9 @@ buildPythonPackage rec {
 
   disabledTests = lib.optionals (pythonAtLeast "3.12") [
     "test_change"
+  ] ++ [
+    # Attempts to open a file which doesn't exist in sandbox
+    "test_piped"
   ];
 
   meta = with lib; {
diff --git a/pkgs/development/python-modules/qreactor/default.nix b/pkgs/development/python-modules/qreactor/default.nix
index e4648919d9f7..77d2c30fa32b 100644
--- a/pkgs/development/python-modules/qreactor/default.nix
+++ b/pkgs/development/python-modules/qreactor/default.nix
@@ -1,6 +1,5 @@
 { lib
 , buildPythonPackage
-, pythonOlder
 , fetchFromGitHub
 , twisted
 , qtpy
@@ -18,8 +17,6 @@ buildPythonPackage rec {
     sha256 = "1nb5iwg0nfz86shw28a2kj5pyhd4jvvxhf73fhnfbl8scgnvjv9h";
   };
 
-  disabled = pythonOlder "3.0";
-
   propagatedBuildInputs = [
     twisted qtpy
   ];
diff --git a/pkgs/development/python-modules/qtconsole/default.nix b/pkgs/development/python-modules/qtconsole/default.nix
index db6f65abdda3..43dc6ce2a114 100644
--- a/pkgs/development/python-modules/qtconsole/default.nix
+++ b/pkgs/development/python-modules/qtconsole/default.nix
@@ -11,22 +11,27 @@
 , pythonOlder
 , pyzmq
 , qtpy
+, setuptools
 , traitlets
 }:
 
 buildPythonPackage rec {
   pname = "qtconsole";
-  version = "5.5.1";
-  format = "setuptools";
+  version = "5.5.2";
+  pyproject = true;
 
   disabled = pythonOlder "3.7";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-oOgGxpUduUkGKOTfgMrslmm2UUnHukD5vwM8AlpbVrw=";
+    hash = "sha256-a1+xEnSyl0Y3Bq+E3LvVySJzsfYZ5tJdCIdLCohRaYk=";
   };
 
-  propagatedBuildInputs = [
+  build-system = [
+    setuptools
+  ];
+
+  dependencies = [
     ipykernel
     ipython-genutils
     jupyter-core
diff --git a/pkgs/development/python-modules/qtile/default.nix b/pkgs/development/python-modules/qtile/default.nix
index 6dc9cc011943..a4d8bb91ea16 100644
--- a/pkgs/development/python-modules/qtile/default.nix
+++ b/pkgs/development/python-modules/qtile/default.nix
@@ -34,7 +34,7 @@
 buildPythonPackage rec {
   pname = "qtile";
   version = "0.25.0";
-  format = "setuptools";
+  pyproject = true;
 
   src = fetchFromGitHub {
     owner = "qtile";
@@ -59,13 +59,13 @@ buildPythonPackage rec {
         --replace /usr/include/libdrm ${lib.getDev libdrm}/include/libdrm
   '';
 
-  nativeBuildInputs = [
-    pkg-config
+  build-system = [
     setuptools
     setuptools-scm
+    pkg-config
   ];
 
-  propagatedBuildInputs = [
+  dependencies = [
     (cairocffi.override { withXcffib = true; })
     dbus-next
     dbus-python
@@ -102,6 +102,6 @@ buildPythonPackage rec {
     description = "A small, flexible, scriptable tiling window manager written in Python";
     mainProgram = "qtile";
     platforms = platforms.linux;
-    maintainers = with maintainers; [ arjan-s ];
+    maintainers = with maintainers; [ arjan-s sigmanificient ];
   };
 }
diff --git a/pkgs/development/python-modules/quantile-forest/default.nix b/pkgs/development/python-modules/quantile-forest/default.nix
index 3b6bd12cd4c8..0b6d5df933b1 100644
--- a/pkgs/development/python-modules/quantile-forest/default.nix
+++ b/pkgs/development/python-modules/quantile-forest/default.nix
@@ -16,7 +16,7 @@
 
 buildPythonPackage rec {
   pname = "quantile-forest";
-  version = "1.3.4";
+  version = "1.3.5";
   pyproject = true;
 
   disabled = pythonOlder "3.8";
@@ -25,7 +25,7 @@ buildPythonPackage rec {
     owner = "zillow";
     repo = "quantile-forest";
     rev = "refs/tags/v${version}";
-    hash = "sha256-hzLJq0y+qjc48PfHW3i73x9safGOy0V1HEQ5WR8IXpI=";
+    hash = "sha256-0zlj9nks5KsgsLSflRW+4uiYlYVQsF0HMkZ3zG3if2E=";
   };
 
   build-system = [
diff --git a/pkgs/development/python-modules/queuelib/default.nix b/pkgs/development/python-modules/queuelib/default.nix
index e9643b813d77..d2622ffbf5fb 100644
--- a/pkgs/development/python-modules/queuelib/default.nix
+++ b/pkgs/development/python-modules/queuelib/default.nix
@@ -6,12 +6,12 @@
 
 buildPythonPackage rec {
   pname = "queuelib";
-  version = "1.6.2";
+  version = "1.7.0";
   format = "setuptools";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "4b207267f2642a8699a1f806045c56eb7ad1a85a10c0e249884580d139c2fcd2";
+    sha256 = "sha256-KFUWIJbPAjBRCJCzVDeeocD/GdEF0xR9NJ0kM7siKwg=";
   };
 
   buildInputs = [ pytest ];
diff --git a/pkgs/development/python-modules/quil/default.nix b/pkgs/development/python-modules/quil/default.nix
index 41f79d79bdf3..4043f8b332fd 100644
--- a/pkgs/development/python-modules/quil/default.nix
+++ b/pkgs/development/python-modules/quil/default.nix
@@ -1,5 +1,6 @@
 {
   lib,
+  stdenv,
   buildPythonPackage,
   pythonOlder,
   fetchFromGitHub,
@@ -7,6 +8,7 @@
   numpy,
   pytestCheckHook,
   syrupy,
+  libiconv
 }:
 
 buildPythonPackage rec {
@@ -40,6 +42,8 @@ buildPythonPackage rec {
     rustPlatform.maturinBuildHook
   ];
 
+  buildInputs = lib.optionals stdenv.isDarwin [ libiconv ];
+
   dependencies = [ numpy ];
 
   pythonImportsCheck = [ "numpy" ];
diff --git a/pkgs/development/python-modules/rarfile/default.nix b/pkgs/development/python-modules/rarfile/default.nix
index 4f3cbc28ea77..c0c462cb4478 100644
--- a/pkgs/development/python-modules/rarfile/default.nix
+++ b/pkgs/development/python-modules/rarfile/default.nix
@@ -1,6 +1,14 @@
-{ lib, buildPythonPackage, fetchFromGitHub, pytestCheckHook, nose, libarchive, glibcLocales, isPy27
-# unrar is non-free software
-, useUnrar ? false, unrar
+{
+  lib,
+  buildPythonPackage,
+  fetchFromGitHub,
+  pytestCheckHook,
+  libarchive,
+  pythonOlder,
+  setuptools,
+  # unrar is non-free software
+  useUnrar ? false,
+  unrar,
 }:
 
 assert useUnrar -> unrar != null;
@@ -9,35 +17,47 @@ assert !useUnrar -> libarchive != null;
 buildPythonPackage rec {
   pname = "rarfile";
   version = "4.2";
-  format = "setuptools";
-  disabled = isPy27;
+  pyproject = true;
+
+  disabled = pythonOlder "3.6";
 
   src = fetchFromGitHub {
     owner = "markokr";
     repo = "rarfile";
     rev = "refs/tags/v${version}";
-    sha256 = "sha256-ZiwD2LG25fMd4Z+QWsh/x3ceG5QRBH4s/TZDwMnfpNI=";
+    hash = "sha256-ZiwD2LG25fMd4Z+QWsh/x3ceG5QRBH4s/TZDwMnfpNI=";
   };
 
-  nativeCheckInputs = [ pytestCheckHook nose glibcLocales ];
-
-  prePatch = ''
-    substituteInPlace rarfile.py \
-  '' + (if useUnrar then
-        ''--replace 'UNRAR_TOOL = "unrar"' "UNRAR_TOOL = \"${unrar}/bin/unrar\""
+  prePatch =
+    ''
+      substituteInPlace rarfile.py \
+    ''
+    + (
+      if useUnrar then
+        ''
+          --replace 'UNRAR_TOOL = "unrar"' "UNRAR_TOOL = \"${unrar}/bin/unrar\""
+        ''
+      else
+        ''
+          --replace 'ALT_TOOL = "bsdtar"' "ALT_TOOL = \"${libarchive}/bin/bsdtar\""
         ''
-       else
-        ''--replace 'ALT_TOOL = "bsdtar"' "ALT_TOOL = \"${libarchive}/bin/bsdtar\""
-        '')
-     + "";
-  # the tests only work with the standard unrar package
+    )
+    + "";
+
+  build-system = [ setuptools ];
+
+  nativeCheckInputs = [ pytestCheckHook ];
+
+  # The tests only work with the standard unrar package
   doCheck = useUnrar;
-  LC_ALL = "en_US.UTF-8";
+
   pythonImportsCheck = [ "rarfile" ];
 
   meta = with lib; {
     description = "RAR archive reader for Python";
     homepage = "https://github.com/markokr/rarfile";
+    changelog = "https://github.com/markokr/rarfile/releases/tag/v${version}";
     license = licenses.isc;
+    maintainers = with maintainers; [ ];
   };
 }
diff --git a/pkgs/development/python-modules/readme-renderer/default.nix b/pkgs/development/python-modules/readme-renderer/default.nix
index 13a8074a5690..bcc961bc18ff 100644
--- a/pkgs/development/python-modules/readme-renderer/default.nix
+++ b/pkgs/development/python-modules/readme-renderer/default.nix
@@ -44,17 +44,8 @@ buildPythonPackage rec {
   ++ optional-dependencies.md;
 
   disabledTests = [
-    # https://github.com/pypa/readme_renderer/issues/221
-    "test_GFM_"
-    # https://github.com/pypa/readme_renderer/issues/274
-    "test_CommonMark_008.md"
+    "test_rst_fixtures"
     "test_rst_008.rst"
-    # Relies on old distutils behaviour removed by setuptools (TypeError: dist must be a Distribution instance)
-    "test_valid_rst"
-    "test_invalid_rst"
-    "test_malicious_rst"
-    "test_invalid_missing"
-    "test_invalid_empty"
   ];
 
   pythonImportsCheck = [
@@ -64,6 +55,7 @@ buildPythonPackage rec {
   meta = with lib; {
     description = "Python library for rendering readme descriptions";
     homepage = "https://github.com/pypa/readme_renderer";
+    changelog = "https://github.com/pypa/readme_renderer/releases/tag/${version}";
     license = with licenses; [ asl20 ];
     maintainers = with maintainers; [ fab ];
   };
diff --git a/pkgs/development/python-modules/redis-om/default.nix b/pkgs/development/python-modules/redis-om/default.nix
index 1549b891636f..4e84e3ea37c4 100644
--- a/pkgs/development/python-modules/redis-om/default.nix
+++ b/pkgs/development/python-modules/redis-om/default.nix
@@ -21,7 +21,7 @@
 
 buildPythonPackage rec {
   pname = "redis-om";
-  version = "0.2.2";
+  version = "0.3.1";
   pyproject = true;
 
   disabled = pythonOlder "3.8";
@@ -30,7 +30,7 @@ buildPythonPackage rec {
     owner = "redis";
     repo = "redis-om-python";
     rev = "refs/tags/v${version}";
-    hash = "sha256-E11wpTrE+HIT+jgn1zMC8L7RGas83DAJd1R0WWHp7Jc=";
+    hash = "sha256-jwFtRnj/jhH+AKjExdOCgUfgEWweFCXVuz6F3qQRcs0=";
   };
 
   build-system = [
diff --git a/pkgs/development/python-modules/redis/default.nix b/pkgs/development/python-modules/redis/default.nix
index d987092e48f0..9e583447e101 100644
--- a/pkgs/development/python-modules/redis/default.nix
+++ b/pkgs/development/python-modules/redis/default.nix
@@ -21,14 +21,14 @@
 
 buildPythonPackage rec {
   pname = "redis";
-  version = "5.0.1";
+  version = "5.0.3";
   format = "setuptools";
 
   disabled = pythonOlder "3.7";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-DatJXNV1MGnTvGUKDd6Kj57d4W/FaRtomlZu2lgQDQ8=";
+    hash = "sha256-SXO650RMD77WSga4dEb3k2HLfk7BU4wCLWlu16UBVYA=";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/referencing/default.nix b/pkgs/development/python-modules/referencing/default.nix
index 0113f23e4742..3e7063e42ecc 100644
--- a/pkgs/development/python-modules/referencing/default.nix
+++ b/pkgs/development/python-modules/referencing/default.nix
@@ -1,39 +1,39 @@
-{ lib
-, attrs
-, buildPythonPackage
-, fetchFromGitHub
-, hatch-vcs
-, hatchling
-, jsonschema
-, pytest-subtests
-, pytestCheckHook
-, pythonOlder
-, rpds-py
+{
+  lib,
+  attrs,
+  buildPythonPackage,
+  fetchFromGitHub,
+  hatch-vcs,
+  hatchling,
+  jsonschema,
+  pytest-subtests,
+  pytestCheckHook,
+  pythonOlder,
+  rpds-py,
 }:
 
-
 let
   self = buildPythonPackage rec {
     pname = "referencing";
-    version = "0.33.0";
-    format = "pyproject";
+    version = "0.34.0";
+    pyproject = true;
 
-    disabled = pythonOlder "3.7";
+    disabled = pythonOlder "3.8";
 
     src = fetchFromGitHub {
       owner = "python-jsonschema";
       repo = "referencing";
       rev = "refs/tags/v${version}";
       fetchSubmodules = true;
-      hash = "sha256-QP/F6UNiKHGNMhGphDJgEFZnpGU5izExcI/A9WJjA5Q=";
+      hash = "sha256-Vx+WVgt09I04Z/sIYsLLtPCwuo5wW0Z2o2OTH2V17UY=";
     };
 
-    nativeBuildInputs = [
+    build-system = [
       hatch-vcs
       hatchling
     ];
 
-    propagatedBuildInputs = [
+    dependencies = [
       attrs
       rpds-py
     ];
@@ -44,22 +44,20 @@ let
       pytestCheckHook
     ];
 
-    # avoid infinite recursion with jsonschema
+    # Avoid infinite recursion with jsonschema
     doCheck = false;
 
     passthru.tests.referencing = self.overridePythonAttrs { doCheck = true; };
 
-    pythonImportsCheck = [
-      "referencing"
-    ];
+    pythonImportsCheck = [ "referencing" ];
 
     meta = with lib; {
       description = "Cross-specification JSON referencing";
       homepage = "https://github.com/python-jsonschema/referencing";
-      changelog = "https://github.com/python-jsonschema/referencing/blob/${version}/CHANGELOG.rst";
+      changelog = "https://github.com/python-jsonschema/referencing/releases/tag/v${version}";
       license = licenses.mit;
       maintainers = with maintainers; [ fab ];
     };
   };
 in
-  self
+self
diff --git a/pkgs/development/python-modules/relatorio/default.nix b/pkgs/development/python-modules/relatorio/default.nix
index 14460fb9b17b..23a3a87df727 100644
--- a/pkgs/development/python-modules/relatorio/default.nix
+++ b/pkgs/development/python-modules/relatorio/default.nix
@@ -11,7 +11,7 @@
 
 buildPythonPackage rec {
   pname = "relatorio";
-  version = "0.10.1";
+  version = "0.10.2";
 
   disabled = pythonOlder "3.5";
 
@@ -19,7 +19,7 @@ buildPythonPackage rec {
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "a0c72302d50d5dfa433ddab191672eec1dde1c6ed26330a378b720e5a3012e23";
+    sha256 = "sha256-zgCOmcR9FWj0lpi78U0G1CKR5kyNyr541HusIrBpF/Q=";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/reolink-aio/default.nix b/pkgs/development/python-modules/reolink-aio/default.nix
index b1fb08c4bdf3..65746304921a 100644
--- a/pkgs/development/python-modules/reolink-aio/default.nix
+++ b/pkgs/development/python-modules/reolink-aio/default.nix
@@ -1,17 +1,18 @@
-{ lib
-, aiohttp
-, aiortsp
-, buildPythonPackage
-, fetchFromGitHub
-, orjson
-, pythonOlder
-, setuptools
-, typing-extensions
+{
+  lib,
+  aiohttp,
+  aiortsp,
+  buildPythonPackage,
+  fetchFromGitHub,
+  orjson,
+  pythonOlder,
+  setuptools,
+  typing-extensions,
 }:
 
 buildPythonPackage rec {
   pname = "reolink-aio";
-  version = "0.8.9";
+  version = "0.8.10";
   pyproject = true;
 
   disabled = pythonOlder "3.9";
@@ -20,23 +21,19 @@ buildPythonPackage rec {
     owner = "starkillerOG";
     repo = "reolink_aio";
     rev = "refs/tags/${version}";
-    hash = "sha256-MUhB8A51dj+FA3+lvBrFyAWizKq5CpYwo38E1euJsHs=";
+    hash = "sha256-qawrTTLp+qFUVn5TUQ73TcPu37c0EywzJl+8oFW8L04=";
   };
 
-  nativeBuildInputs = [
-    setuptools
-  ];
+  build-system = [ setuptools ];
 
-  propagatedBuildInputs = [
+  dependencies = [
     aiohttp
     aiortsp
     orjson
     typing-extensions
   ];
 
-  pythonImportsCheck = [
-    "reolink_aio"
-  ];
+  pythonImportsCheck = [ "reolink_aio" ];
 
   # All tests require a network device
   doCheck = false;
diff --git a/pkgs/development/python-modules/reportlab-qrcode/default.nix b/pkgs/development/python-modules/reportlab-qrcode/default.nix
new file mode 100644
index 000000000000..97d1e9d13732
--- /dev/null
+++ b/pkgs/development/python-modules/reportlab-qrcode/default.nix
@@ -0,0 +1,49 @@
+{ lib
+, buildPythonPackage
+, fetchPypi
+, setuptools
+, wheel
+, qrcode
+, reportlab
+, pillow
+, pytest
+, pyzbar
+}:
+
+buildPythonPackage rec {
+  pname = "reportlab-qrcode";
+  version = "0.1.6";
+  pyproject = true;
+
+  src = fetchPypi {
+    inherit pname version;
+    hash = "sha256-m/oeuA797MEBOJBIG157VIa7TbEbRRVK/O8Arz/oO/o=";
+  };
+
+  nativeBuildInputs = [
+    setuptools
+    wheel
+  ];
+
+  propagatedBuildInputs = [
+    qrcode
+    reportlab
+  ];
+
+  passthru.optional-dependencies = {
+    testing = [
+      pillow
+      pytest
+      pyzbar
+    ];
+  };
+
+  pythonImportsCheck = [ "reportlab_qrcode" ];
+
+  meta = with lib; {
+    description = "Allows to create QR codes for use with the ReportLab PDF library";
+    homepage = "https://pypi.org/project/reportlab-qrcode/";
+    license = licenses.mit;
+    maintainers = with maintainers; [ xanderio ];
+  };
+}
diff --git a/pkgs/development/python-modules/reportlab/default.nix b/pkgs/development/python-modules/reportlab/default.nix
index ef0a575789e7..2024b2835a75 100644
--- a/pkgs/development/python-modules/reportlab/default.nix
+++ b/pkgs/development/python-modules/reportlab/default.nix
@@ -14,7 +14,7 @@ let
   ft = freetype.overrideAttrs (oldArgs: { dontDisableStatic = true; });
 in buildPythonPackage rec {
   pname = "reportlab";
-  version = "4.1.0";
+  version = "4.2.0";
   pyproject = true;
 
   # See https://bitbucket.org/pypy/compatibility/wiki/reportlab%20toolkit
@@ -22,7 +22,7 @@ in buildPythonPackage rec {
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-Opn69BJpEVnAaLP/AcFTB84v0s9rhgGZQ0h04AIECoQ=";
+    hash = "sha256-R0+yjWNDGl1H11yQ1YA5MFDffUkaCceHffMpGi6fbQo=";
   };
 
   postPatch = ''
diff --git a/pkgs/development/python-modules/reproject/default.nix b/pkgs/development/python-modules/reproject/default.nix
index ff6e3070cf7e..940e2d0daac5 100644
--- a/pkgs/development/python-modules/reproject/default.nix
+++ b/pkgs/development/python-modules/reproject/default.nix
@@ -9,7 +9,6 @@
 , fetchPypi
 , fsspec
 , numpy
-, oldest-supported-numpy
 , pytest-astropy
 , pytestCheckHook
 , pythonOlder
@@ -20,26 +19,26 @@
 
 buildPythonPackage rec {
   pname = "reproject";
-  version = "0.13.0";
+  version = "0.13.1";
   pyproject = true;
 
-  disabled = pythonOlder "3.9";
+  disabled = pythonOlder "3.10";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-lL6MkKVSWmV6KPkG/9fjc2c2dFQ14i9fiJAr3VFfcuI=";
+    hash = "sha256-Y+Ne7ZUgCieWcC4zqfrqPzmr/kGUdFroGfIPKWACaPY=";
   };
 
   postPatch = ''
     substituteInPlace pyproject.toml \
-      --replace "cython==" "cython>="
+      --replace "cython==" "cython>=" \
+      --replace "numpy>=2.0.0rc1" "numpy"
   '';
 
   nativeBuildInputs = [
     astropy-extension-helpers
     cython
     numpy
-    oldest-supported-numpy
     setuptools-scm
   ];
 
@@ -65,6 +64,8 @@ buildPythonPackage rec {
     "-p no:warnings"
     # Uses network
     "--ignore build/lib*/reproject/interpolation/"
+    # prevent "'filterwarnings' not found in `markers` configuration option" error
+    "-o 'markers=filterwarnings'"
   ];
 
   pythonImportsCheck = [
diff --git a/pkgs/development/python-modules/requests-mock/default.nix b/pkgs/development/python-modules/requests-mock/default.nix
index 4e72ce67364a..9273875ab688 100644
--- a/pkgs/development/python-modules/requests-mock/default.nix
+++ b/pkgs/development/python-modules/requests-mock/default.nix
@@ -4,24 +4,31 @@
 , fixtures
 , purl
 , pytestCheckHook
-, python
 , requests
 , requests-futures
-, six
+, setuptools
+, setuptools-scm
 , testtools
 }:
 
 buildPythonPackage rec {
   pname = "requests-mock";
-  version = "1.11.0";
-  format = "setuptools";
+  version = "1.12.1";
+  pyproject = true;
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-7xC1crSJpfKOCbcIaXIIxKOyuJ74Cp8BWENA6jV+w8Q=";
+    hash = "sha256-6eEuMztSUVboKjyFLyIBa5FYIg0vR0VN6crop303FAE=";
   };
 
-  propagatedBuildInputs = [ requests six ];
+  build-system = [
+    setuptools
+    setuptools-scm
+  ];
+
+  dependencies = [
+    requests
+  ];
 
   nativeCheckInputs = [
     fixtures
diff --git a/pkgs/development/python-modules/requirements-detector/default.nix b/pkgs/development/python-modules/requirements-detector/default.nix
index aab180853d5a..164500d3e218 100644
--- a/pkgs/development/python-modules/requirements-detector/default.nix
+++ b/pkgs/development/python-modules/requirements-detector/default.nix
@@ -7,7 +7,6 @@
 , semver
 , pytestCheckHook
 , pythonOlder
-, pythonRelaxDepsHook
 , toml
 }:
 
@@ -25,16 +24,11 @@ buildPythonPackage rec {
     hash = "sha256-qmrHFQRypBJOI1N6W/Dtc5ss9JGqoPhFlbqrLHcb6vc=";
   };
 
-  pythonRelaxDeps = [
-    "astroid"
-  ];
-
-  nativeBuildInputs = [
+  build-system = [
     poetry-core
-    pythonRelaxDepsHook
   ];
 
-  propagatedBuildInputs = [
+  dependencies = [
     astroid
     packaging
     toml
@@ -51,10 +45,12 @@ buildPythonPackage rec {
 
   meta = with lib; {
     description = "Python tool to find and list requirements of a Python project";
-    mainProgram = "detect-requirements";
     homepage = "https://github.com/landscapeio/requirements-detector";
     changelog = "https://github.com/landscapeio/requirements-detector/releases/tag/${version}";
     license = licenses.mit;
     maintainers = with maintainers; [ kamadorueda ];
+    mainProgram = "detect-requirements";
+    # https://github.com/landscapeio/requirements-detector/issues/48
+    broken = versionAtLeast astroid.version "3";
   };
 }
diff --git a/pkgs/development/python-modules/resend/default.nix b/pkgs/development/python-modules/resend/default.nix
index 5ce129dd6716..ddd38de916f8 100644
--- a/pkgs/development/python-modules/resend/default.nix
+++ b/pkgs/development/python-modules/resend/default.nix
@@ -1,15 +1,17 @@
-{ lib
-, buildPythonPackage
-, fetchFromGitHub
-, setuptools
-, pythonOlder
-, pytestCheckHook
-, requests
+{
+  lib,
+  buildPythonPackage,
+  fetchFromGitHub,
+  setuptools,
+  pythonOlder,
+  pytestCheckHook,
+  requests,
+  typing-extensions,
 }:
 
 buildPythonPackage rec {
   pname = "resend";
-  version = "0.8.0";
+  version = "1.0.2";
   pyproject = true;
 
   disabled = pythonOlder "3.7";
@@ -18,24 +20,19 @@ buildPythonPackage rec {
     owner = "resend";
     repo = "resend-python";
     rev = "refs/tags/v${version}";
-    hash = "sha256-6cQtI3it2AS8UdT83fp3y3IcbjSyPmBlQuymN74fBNo=";
+    hash = "sha256-lBeVHG3MuHtEEXPgH116yNs9pBX3kEj5Oyws2deui/o=";
   };
 
-  nativeBuildInputs = [
-    setuptools
-  ];
+  build-system = [ setuptools ];
 
-  propagatedBuildInputs = [
+  dependencies = [
     requests
+    typing-extensions
   ];
 
-  nativeCheckInputs = [
-    pytestCheckHook
-  ];
+  nativeCheckInputs = [ pytestCheckHook ];
 
-  pythonImportsCheck = [
-    "resend"
-  ];
+  pythonImportsCheck = [ "resend" ];
 
   meta = with lib; {
     description = "SDK for Resend";
diff --git a/pkgs/development/python-modules/rich-rst/default.nix b/pkgs/development/python-modules/rich-rst/default.nix
index 5db47dfc65ea..ef101fd2fccc 100644
--- a/pkgs/development/python-modules/rich-rst/default.nix
+++ b/pkgs/development/python-modules/rich-rst/default.nix
@@ -1,31 +1,33 @@
-{ lib
-, buildPythonPackage
-, fetchFromGitHub
-, setuptools
-, docutils
-, rich
+{
+  lib,
+  buildPythonPackage,
+  fetchFromGitHub,
+  setuptools,
+  docutils,
+  rich,
+  pytestCheckHook,
 }:
 
 buildPythonPackage rec {
   pname = "rich-rst";
-  version = "1.2.0";
-  format = "pyproject";
+  version = "1.3.0";
+  pyproject = true;
 
   src = fetchFromGitHub {
     owner = "wasi-master";
-    repo = pname;
+    repo = "rich-rst";
     rev = "refs/tags/v${version}";
-    hash = "sha256-jFPboZ5/T2I6EuyVM+45lrLWen8Kqf94gWXS1WDf1qU=";
+    hash = "sha256-A3SPbu1N5X55c32S8z8UPpmniJT+mdqfb1+zQEJMA5k=";
   };
 
-  nativeBuildInputs = [
-    setuptools
-  ];
+  build-system = [ setuptools ];
 
-  propagatedBuildInputs = [ docutils rich ];
+  dependencies = [
+    docutils
+    rich
+  ];
 
-  # Module has no tests
-  doCheck = false;
+  nativeCheckInputs = [ pytestCheckHook ];
 
   pythonImportsCheck = [ "rich_rst" ];
 
diff --git a/pkgs/development/python-modules/riscv-config/default.nix b/pkgs/development/python-modules/riscv-config/default.nix
index 298772e12cc7..dbbf8f7b29d6 100644
--- a/pkgs/development/python-modules/riscv-config/default.nix
+++ b/pkgs/development/python-modules/riscv-config/default.nix
@@ -13,7 +13,7 @@
 
 buildPythonPackage rec {
   pname = "riscv-config";
-  version = "3.18.1";
+  version = "3.18.2";
   pyproject = true;
 
   disabled = pythonOlder "3.7";
@@ -22,7 +22,7 @@ buildPythonPackage rec {
     owner = "riscv-software-src";
     repo = "riscv-config";
     rev = "refs/tags/${version}";
-    hash = "sha256-lBjSHfnuNPi4Ks5ZCRLqJx3/l4GMmMEEIud8ZVl/S4Q=";
+    hash = "sha256-ADmf7EN3D+8isZRFx6WRMYq91YHunGavuwy3a3M3gCc=";
   };
 
   pythonRelaxDeps = [ "pyyaml" ];
diff --git a/pkgs/development/python-modules/rlcard/default.nix b/pkgs/development/python-modules/rlcard/default.nix
new file mode 100644
index 000000000000..5477a50ba291
--- /dev/null
+++ b/pkgs/development/python-modules/rlcard/default.nix
@@ -0,0 +1,77 @@
+{ lib
+, buildPythonPackage
+, fetchFromGitHub
+, setuptools
+, wheel
+, numpy
+, pip
+, termcolor
+, pytestCheckHook
+, torch
+, pythonAtLeast
+}:
+
+buildPythonPackage rec {
+  pname = "rlcard";
+  version = "1.0.7";
+  pyproject = true;
+
+  src = fetchFromGitHub {
+    owner = "datamllab";
+    repo = "rlcard";
+    rev = "refs/tags/${version}";
+    hash = "sha256-SWj6DBItQzSM+nioV54a350Li7tbBaVXsQxNAqVgB0k=";
+  };
+
+  build-system = [
+    setuptools
+    wheel
+  ];
+
+  dependencies = [
+    numpy
+    # pip is required at runtime (https://github.com/datamllab/rlcard/blob/1.0.7/rlcard/utils/utils.py#L10)
+    pip
+    termcolor
+  ];
+
+  pythonImportsCheck = [
+    "rlcard"
+  ];
+
+  nativeCheckInputs = [
+    pytestCheckHook
+    torch
+  ];
+
+  disabledTests = [
+    # AttributeError: module 'numpy' has no attribute 'int'.
+    # https://github.com/datamllab/rlcard/issues/266
+    "test_decode_action"
+    "test_get_legal_actions"
+    "test_get_perfect_information"
+    "test_get_player_id"
+    "test_init_game"
+    "test_is_deterministic"
+    "test_proceed_game"
+    "test_reset_and_extract_state"
+    "test_run"
+    "test_step"
+    "test_step"
+    "test_step_back"
+    "test_step_back"
+
+    # ValueError: setting an array element with a sequence. The requested array has an inhomogeneous shape after 3 dimensions. The detected shape was (1, 1, 5) + inhomogeneous part.
+    "test_reorganize"
+  ];
+
+  meta = with lib; {
+    description = "Reinforcement Learning / AI Bots in Card (Poker) Games - Blackjack, Leduc, Texas, DouDizhu, Mahjong, UNO";
+    homepage = "https://github.com/datamllab/rlcard";
+    changelog = "https://github.com/datamllab/rlcard/releases/tag/${version}";
+    license = licenses.mit;
+    maintainers = with maintainers; [ GaetanLepage ];
+    # Relies on deprecated distutils
+    broken = pythonAtLeast "3.12";
+  };
+}
diff --git a/pkgs/development/python-modules/rnginline/default.nix b/pkgs/development/python-modules/rnginline/default.nix
index acea2482f32c..7505cfd7346a 100644
--- a/pkgs/development/python-modules/rnginline/default.nix
+++ b/pkgs/development/python-modules/rnginline/default.nix
@@ -15,23 +15,28 @@
 buildPythonPackage rec {
   pname = "rnginline";
   version = "1.0.0";
-  format = "pyproject";
+  pyproject = true;
 
   src = fetchPypi {
     inherit pname version;
     hash = "sha256-JWqzs+OqOynIAWYVgGrZiuiCqObAgGe6rBt0DcP3U6E=";
   };
 
-  nativeBuildInputs = [
+  pythonRelaxDeps = [
+    "docopt-ng"
+    "importlib-metadata"
+    "lxml"
+  ];
+
+  build-system = [
     poetry-core
-    pythonRelaxDepsHook
   ];
 
-  pythonRelaxDeps = [
-    "docopt-ng"
+  nativeBuildInputs = [
+    pythonRelaxDepsHook
   ];
 
-  propagatedBuildInputs = [
+  dependencies = [
     docopt-ng
     lxml
     typing-extensions
@@ -49,6 +54,7 @@ buildPythonPackage rec {
   meta = with lib; {
     description = "A Python library and command-line tool for loading multi-file RELAX NG schemas from arbitary URLs, and flattening them into a single RELAX NG schema";
     homepage = "https://github.com/h4l/rnginline";
+    changelog = "https://github.com/h4l/rnginline/blob/${version}/CHANGELOG.md";
     license = licenses.asl20;
     maintainers = with maintainers; [ lesuisse ];
   };
diff --git a/pkgs/development/python-modules/rns/default.nix b/pkgs/development/python-modules/rns/default.nix
index 0df16e875cf1..6c3c582b2b0e 100644
--- a/pkgs/development/python-modules/rns/default.nix
+++ b/pkgs/development/python-modules/rns/default.nix
@@ -1,16 +1,17 @@
-{ lib
-, buildPythonPackage
-, cryptography
-, fetchFromGitHub
-, netifaces
-, pyserial
-, pythonOlder
-, setuptools
+{
+  lib,
+  buildPythonPackage,
+  cryptography,
+  fetchFromGitHub,
+  netifaces,
+  pyserial,
+  pythonOlder,
+  setuptools,
 }:
 
 buildPythonPackage rec {
   pname = "rns";
-  version = "0.7.3";
+  version = "0.7.4";
   pyproject = true;
 
   disabled = pythonOlder "3.7";
@@ -19,14 +20,12 @@ buildPythonPackage rec {
     owner = "markqvist";
     repo = "Reticulum";
     rev = "refs/tags/${version}";
-    hash = "sha256-QcYjqqeXBKx+Ef00Bw1OJMWDMdQgp/fqh3r5yhsa0Kg=";
+    hash = "sha256-M6iI554lv6PF5sIdOoaMIlQHP5YU8WM8YxfHMWhLSdE=";
   };
 
-  nativeBuildInputs = [
-    setuptools
-  ];
+  build-system = [ setuptools ];
 
-  propagatedBuildInputs = [
+  dependencies = [
     cryptography
     netifaces
     pyserial
@@ -35,9 +34,7 @@ buildPythonPackage rec {
   # Module has no tests
   doCheck = false;
 
-  pythonImportsCheck = [
-    "RNS"
-  ];
+  pythonImportsCheck = [ "RNS" ];
 
   meta = with lib; {
     description = "Cryptography-based networking stack for wide-area networks";
diff --git a/pkgs/development/python-modules/roadlib/default.nix b/pkgs/development/python-modules/roadlib/default.nix
index 303024a90f52..c2ac5e3cba69 100644
--- a/pkgs/development/python-modules/roadlib/default.nix
+++ b/pkgs/development/python-modules/roadlib/default.nix
@@ -1,30 +1,29 @@
-{ lib
-, adal
-, buildPythonPackage
-, fetchPypi
-, pyjwt
-, pythonOlder
-, setuptools
-, sqlalchemy
+{
+  lib,
+  adal,
+  buildPythonPackage,
+  fetchPypi,
+  pyjwt,
+  pythonOlder,
+  setuptools,
+  sqlalchemy,
 }:
 
 buildPythonPackage rec {
   pname = "roadlib";
-  version = "0.23.0";
+  version = "0.24.1";
   pyproject = true;
 
   disabled = pythonOlder "3.7";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-0hDiuF0dBRyR2B9dp4c7/jsC6li8uOduQBbhs6fFLfU=";
+    hash = "sha256-tQbJWHXxvjGhqGBI9nn8EL7rJcVyH095FfNSsxkrImQ=";
   };
 
-  nativeBuildInputs = [
-    setuptools
-  ];
+  build-system = [ setuptools ];
 
-  propagatedBuildInputs = [
+  dependencies = [
     adal
     pyjwt
     sqlalchemy
@@ -33,9 +32,7 @@ buildPythonPackage rec {
   # Module has no test
   doCheck = false;
 
-  pythonImportsCheck = [
-    "roadtools.roadlib"
-  ];
+  pythonImportsCheck = [ "roadtools.roadlib" ];
 
   meta = with lib; {
     description = "ROADtools common components library";
diff --git a/pkgs/development/python-modules/roadtx/default.nix b/pkgs/development/python-modules/roadtx/default.nix
index 4ea50269cd76..d390acea281d 100644
--- a/pkgs/development/python-modules/roadtx/default.nix
+++ b/pkgs/development/python-modules/roadtx/default.nix
@@ -1,34 +1,33 @@
-{ lib
-, buildPythonPackage
-, fetchPypi
-, pycryptodomex
-, pyotp
-, pythonOlder
-, requests
-, roadlib
-, selenium
-, selenium-wire
-, setuptools
-, signxml
+{
+  lib,
+  buildPythonPackage,
+  fetchPypi,
+  pycryptodomex,
+  pyotp,
+  pythonOlder,
+  requests,
+  roadlib,
+  selenium,
+  selenium-wire,
+  setuptools,
+  signxml,
 }:
 
 buildPythonPackage rec {
   pname = "roadtx";
-  version = "1.7.0";
+  version = "1.8.2";
   pyproject = true;
 
   disabled = pythonOlder "3.7";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-qnumJbuBH+ajzfG+bLTrYPvB5uNnL8dJsTZoT2vo6g0=";
+    hash = "sha256-BJYBQBxgYbozY0rPgxpiduUxb6wEFBJxXY8TRVlLz5M=";
   };
 
-  nativeBuildInputs = [
-    setuptools
-  ];
+  build-system = [ setuptools ];
 
-  propagatedBuildInputs = [
+  dependencies = [
     pycryptodomex
     pyotp
     requests
@@ -38,9 +37,7 @@ buildPythonPackage rec {
     signxml
   ];
 
-  pythonImportsCheck = [
-    "roadtools.roadtx"
-  ];
+  pythonImportsCheck = [ "roadtools.roadtx" ];
 
   meta = with lib; {
     description = "ROADtools Token eXchange";
diff --git a/pkgs/development/python-modules/rokuecp/default.nix b/pkgs/development/python-modules/rokuecp/default.nix
index 0a204c11be28..47800983f5e3 100644
--- a/pkgs/development/python-modules/rokuecp/default.nix
+++ b/pkgs/development/python-modules/rokuecp/default.nix
@@ -1,24 +1,25 @@
-{ lib
-, aiohttp
-, aresponses
-, awesomeversion
-, backoff
-, buildPythonPackage
-, cachetools
-, fetchFromGitHub
-, poetry-core
-, pytest-asyncio
-, pytest-freezegun
-, pytestCheckHook
-, pythonOlder
-, xmltodict
-, yarl
+{
+  lib,
+  aiohttp,
+  aresponses,
+  awesomeversion,
+  backoff,
+  buildPythonPackage,
+  cachetools,
+  fetchFromGitHub,
+  poetry-core,
+  pytest-asyncio,
+  pytest-freezegun,
+  pytestCheckHook,
+  pythonOlder,
+  xmltodict,
+  yarl,
 }:
 
 buildPythonPackage rec {
   pname = "rokuecp";
-  version = "0.19.2";
-  format = "pyproject";
+  version = "0.19.3";
+  pyproject = true;
 
   disabled = pythonOlder "3.9";
 
@@ -26,14 +27,18 @@ buildPythonPackage rec {
     owner = "ctalkington";
     repo = "python-rokuecp";
     rev = "refs/tags/${version}";
-    hash = "sha256-L6uedckc2lEQ6CUlQGEyDhnuVsxRRgDQJUEsZTfm2sU=";
+    hash = "sha256-XMJ2V59E4SEVlEhgc1hstLmtzl1gxwCsq+4vmkL3CPM=";
   };
 
-  nativeBuildInputs = [
-    poetry-core
-  ];
+  postPatch = ''
+    substituteInPlace pyproject.toml \
+      --replace-fail 'version = "0.0.0"' 'version = "${version}"' \
+      --replace-fail "--cov" ""
+  '';
+
+  build-system = [ poetry-core ];
 
-  propagatedBuildInputs = [
+  dependencies = [
     aiohttp
     backoff
     cachetools
@@ -49,12 +54,6 @@ buildPythonPackage rec {
     pytestCheckHook
   ];
 
-  postPatch = ''
-    substituteInPlace pyproject.toml \
-      --replace 'version = "0.0.0"' 'version = "${version}"' \
-      --replace "--cov" ""
-  '';
-
   disabledTests = [
     # Network related tests are having troube in the sandbox
     "test_resolve_hostname"
@@ -66,9 +65,7 @@ buildPythonPackage rec {
     "test_get_tv_channels_single_channel"
   ];
 
-  pythonImportsCheck = [
-    "rokuecp"
-  ];
+  pythonImportsCheck = [ "rokuecp" ];
 
   meta = with lib; {
     description = "Asynchronous Python client for Roku (ECP)";
diff --git a/pkgs/development/python-modules/rotary-embedding-torch/default.nix b/pkgs/development/python-modules/rotary-embedding-torch/default.nix
index a04262e40173..22720a759238 100644
--- a/pkgs/development/python-modules/rotary-embedding-torch/default.nix
+++ b/pkgs/development/python-modules/rotary-embedding-torch/default.nix
@@ -14,14 +14,14 @@
 
 buildPythonPackage rec {
   pname = "rotary-embedding-torch";
-  version = "0.5.3";
+  version = "0.6.1";
   pyproject = true;
 
   src = fetchFromGitHub {
     owner = "lucidrains";
     repo = "rotary-embedding-torch";
     rev = "refs/tags/${version}";
-    hash = "sha256-CCz/va5oydgU1JRDHKooRezbDbeGZHtD8Zy6fWJ2uRg=";
+    hash = "sha256-/gVBQ9lUzVN/eEtm6qPajw0TZs87JOC7d02qnQ8sdVk=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/python-modules/rpy2/default.nix b/pkgs/development/python-modules/rpy2/default.nix
index c10b23414b42..2f3e66b76ba1 100644
--- a/pkgs/development/python-modules/rpy2/default.nix
+++ b/pkgs/development/python-modules/rpy2/default.nix
@@ -25,26 +25,20 @@
 }:
 
 buildPythonPackage rec {
-    version = "3.5.15";
+    version = "3.5.16";
     format = "setuptools";
     pname = "rpy2";
 
     disabled = isPyPy;
     src = fetchPypi {
       inherit version pname;
-      hash = "sha256-RE+uSoTcfyM7cOqrCqgTmO4BR8ThrjjdRSTXedbyWys=";
+      hash = "sha256-g34vdFg2WKXEwzl2GnP5Q08z75ztPjDGTadWIWXCgBs=";
     };
 
     patches = [
       # R_LIBS_SITE is used by the nix r package to point to the installed R libraries.
       # This patch sets R_LIBS_SITE when rpy2 is imported.
       ./rpy2-3.x-r-libs-site.patch
-
-      # https://github.com/rpy2/rpy2/pull/1094
-      (fetchpatch {
-        url = "https://github.com/rpy2/rpy2/commit/026d069a008163a62d12567bcb938410d0f9bf7a.diff";
-        hash = "sha256-x778upSY3zab5EiRyOcsbDpPj7vN/7XzefEs+wvkNg0=";
-      })
     ];
 
     postPatch = ''
diff --git a/pkgs/development/python-modules/rq/default.nix b/pkgs/development/python-modules/rq/default.nix
index 45c8627be5df..47a0a7dcfc5e 100644
--- a/pkgs/development/python-modules/rq/default.nix
+++ b/pkgs/development/python-modules/rq/default.nix
@@ -20,7 +20,7 @@
 
 buildPythonPackage rec {
   pname = "rq";
-  version = "1.16.1";
+  version = "1.16.2";
   pyproject = true;
 
   disabled = pythonOlder "3.7";
@@ -29,7 +29,7 @@ buildPythonPackage rec {
     owner = "rq";
     repo = "rq";
     rev = "refs/tags/v${version}";
-    hash = "sha256-1E7jPTSQCjuKZVFL4uZqL1WZHnxWSLTNcnpyvfHz7oY=";
+    hash = "sha256-8uhCV4aJNbY273jOa9D5OlgEG1w3hXVncClKQTO9Pyk=";
   };
 
   build-system = [
@@ -47,25 +47,26 @@ buildPythonPackage rec {
     sentry-sdk
   ];
 
-  preCheck = lib.optionalString stdenv.isLinux ''
+  preCheck = ''
     PATH=$out/bin:$PATH
     ${redis-server}/bin/redis-server &
-    REDIS_PID=$!
   '';
 
-  postCheck = lib.optionalString stdenv.isLinux ''
-    kill $REDIS_PID
+  postCheck = ''
+    kill %%
   '';
 
-  pythonImportsCheck = [
-    "rq"
-  ];
+  __darwinAllowLocalNetworking = true;
 
   disabledTests = [
-    # AttributeError
+    # https://github.com/rq/rq/commit/fd261d5d8fc0fe604fa396ee6b9c9b7a7bb4142f
     "test_clean_large_registry"
   ];
 
+  pythonImportsCheck = [
+    "rq"
+  ];
+
   meta = with lib; {
     description = "Library for creating background jobs and processing them";
     homepage = "https://github.com/nvie/rq/";
diff --git a/pkgs/development/python-modules/rst2pdf/default.nix b/pkgs/development/python-modules/rst2pdf/default.nix
index f40da3a301f7..956767735cb8 100644
--- a/pkgs/development/python-modules/rst2pdf/default.nix
+++ b/pkgs/development/python-modules/rst2pdf/default.nix
@@ -1,6 +1,7 @@
 { lib
 , buildPythonPackage
 , fetchPypi
+, installShellFiles
 , setuptools
 , setuptools-scm
 , wheel
@@ -31,6 +32,7 @@ buildPythonPackage rec {
   outputs = [ "out" "man" ];
 
   nativeBuildInputs = [
+    installShellFiles
     setuptools
     setuptools-scm
     wheel
@@ -62,8 +64,8 @@ buildPythonPackage rec {
   doCheck = false;
 
   postInstall = ''
-    mkdir -p $man/share/man/man1/
-    ${docutils}/bin/rst2man.py doc/rst2pdf.rst $man/share/man/man1/rst2pdf.1
+    ${lib.getExe' docutils "rst2man"} doc/rst2pdf.rst rst2pdf.1
+    installManPage rst2pdf.1
   '';
 
   meta = with lib; {
@@ -72,6 +74,6 @@ buildPythonPackage rec {
     homepage = "https://rst2pdf.org/";
     changelog = "https://github.com/rst2pdf/rst2pdf/blob/${version}/CHANGES.rst";
     license = licenses.mit;
-    maintainers = with maintainers; [ ];
+    maintainers = with maintainers; [ pyrox0 ];
   };
 }
diff --git a/pkgs/development/python-modules/rtsp-to-webrtc/default.nix b/pkgs/development/python-modules/rtsp-to-webrtc/default.nix
index 812a4fc1ba1f..5686b12f4492 100644
--- a/pkgs/development/python-modules/rtsp-to-webrtc/default.nix
+++ b/pkgs/development/python-modules/rtsp-to-webrtc/default.nix
@@ -1,42 +1,43 @@
-{ lib
-, aiohttp
-, buildPythonPackage
-, fetchFromGitHub
-, pytest-aiohttp
-, pytestCheckHook
-, pythonOlder
+{
+  lib,
+  aiohttp,
+  buildPythonPackage,
+  fetchFromGitHub,
+  pytest-aiohttp,
+  pytestCheckHook,
+  pythonOlder,
+  setuptools,
 }:
 
 buildPythonPackage rec {
   pname = "rtsp-to-webrtc";
-  version = "0.5.1";
-  format = "setuptools";
+  version = "0.6.1";
+  pyproject = true;
 
-  disabled = pythonOlder "3.7";
+  disabled = pythonOlder "3.10";
 
   src = fetchFromGitHub {
     owner = "allenporter";
     repo = "rtsp-to-webrtc-client";
-    rev = version;
-    hash = "sha256-miMBN/8IO4v03mMoclCa3GFl6HCS3Sh6z2HOQ39MRZY=";
+    rev = "refs/tags/${version}";
+    hash = "sha256-D022d2CDKtHTuvEGo8GkOGWHi5sV4g6UwNB9xS2xxIs=";
   };
 
-  propagatedBuildInputs = [
-    aiohttp
-  ];
+  build-system = [ setuptools ];
+
+  dependencies = [ aiohttp ];
 
   nativeCheckInputs = [
     pytest-aiohttp
     pytestCheckHook
   ];
 
-  pythonImportsCheck = [
-    "rtsp_to_webrtc"
-  ];
+  pythonImportsCheck = [ "rtsp_to_webrtc" ];
 
   meta = with lib; {
     description = "Module for RTSPtoWeb and RTSPtoWebRTC";
     homepage = "https://github.com/allenporter/rtsp-to-webrtc-client";
+    changelog = "https://github.com/allenporter/rtsp-to-webrtc-client/releases/tag/${version}";
     license = with licenses; [ asl20 ];
     maintainers = with maintainers; [ fab ];
   };
diff --git a/pkgs/development/python-modules/s3fs/default.nix b/pkgs/development/python-modules/s3fs/default.nix
index 46c7044759ed..c267f253102d 100644
--- a/pkgs/development/python-modules/s3fs/default.nix
+++ b/pkgs/development/python-modules/s3fs/default.nix
@@ -1,5 +1,4 @@
 { lib
-, stdenv
 , aiobotocore
 , aiohttp
 , buildPythonPackage
@@ -45,7 +44,6 @@ buildPythonPackage rec {
   ];
 
   meta = with lib; {
-    broken = stdenv.isDarwin;
     description = "A Pythonic file interface for S3";
     homepage = "https://github.com/fsspec/s3fs";
     changelog = "https://github.com/fsspec/s3fs/raw/${version}/docs/source/changelog.rst";
diff --git a/pkgs/development/python-modules/s3transfer/default.nix b/pkgs/development/python-modules/s3transfer/default.nix
index 124b44f097cc..52bf82fc502d 100644
--- a/pkgs/development/python-modules/s3transfer/default.nix
+++ b/pkgs/development/python-modules/s3transfer/default.nix
@@ -10,7 +10,7 @@
 
 buildPythonPackage rec {
   pname = "s3transfer";
-  version = "0.10.0";
+  version = "0.10.1";
   pyproject = true;
 
   disabled = pythonOlder "3.8";
@@ -19,7 +19,7 @@ buildPythonPackage rec {
     owner = "boto";
     repo = "s3transfer";
     rev = "refs/tags/${version}";
-    hash = "sha256-21xycx1+84uY4gFr7N+ra98dpsEwxy9zeSl4QA66nUc=";
+    hash = "sha256-EHNkYviafnuU8AADp9oyaDuAnoPOdOVNSLCcoONnHPY=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/python-modules/sacn/default.nix b/pkgs/development/python-modules/sacn/default.nix
index 609d8969be6b..f03c7a263271 100644
--- a/pkgs/development/python-modules/sacn/default.nix
+++ b/pkgs/development/python-modules/sacn/default.nix
@@ -6,14 +6,14 @@
 
 buildPythonPackage rec {
   pname = "sacn";
-  version = "1.9.0";
+  version = "1.9.1";
   format = "setuptools";
 
   disabled = pythonOlder "3.6";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-LimA0I8y1tdjFk244iWvKJj0Rx3OEaYOSIJtirRHh4o=";
+    hash = "sha256-ppXWRBZVm4QroxZ19S388sRuI5zpaDgJrJqhnwefr3k=";
   };
 
   # no tests
diff --git a/pkgs/development/python-modules/safety/default.nix b/pkgs/development/python-modules/safety/default.nix
index 529ed4d8d4c2..00cd2758f0ba 100644
--- a/pkgs/development/python-modules/safety/default.nix
+++ b/pkgs/development/python-modules/safety/default.nix
@@ -24,7 +24,7 @@
 
 buildPythonPackage rec {
   pname = "safety";
-  version = "3.0.1";
+  version = "3.2.0";
 
   disabled = pythonOlder "3.7";
 
@@ -32,7 +32,7 @@ buildPythonPackage rec {
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-HyAA8DZS86C/xn+P0emLxXI8y3bhXLG91oVFw9gD3wE=";
+    hash = "sha256-i9XKtfPYphzg6m6Y8mfBAG0FYJfEXGRP7nr+/31ZScE=";
   };
 
   postPatch = ''
@@ -89,8 +89,12 @@ buildPythonPackage rec {
     "test_check_live_cached"
     "test_get_packages_licenses_without_api_key"
     "test_validate_with_policy_file_using_invalid_keyword"
+    "test_validate_with_basic_policy_file"
   ];
 
+  # ImportError: cannot import name 'get_command_for' from partially initialized module 'safety.cli_util' (most likely due to a circular import)
+  disabledTestPaths = [ "tests/alerts/test_utils.py" ];
+
   preCheck = ''
     export HOME=$(mktemp -d)
   '';
diff --git a/pkgs/development/python-modules/sagemaker/default.nix b/pkgs/development/python-modules/sagemaker/default.nix
index 33e0c85697c1..49156ec55306 100644
--- a/pkgs/development/python-modules/sagemaker/default.nix
+++ b/pkgs/development/python-modules/sagemaker/default.nix
@@ -32,7 +32,7 @@
 
 buildPythonPackage rec {
   pname = "sagemaker";
-  version = "2.217.0";
+  version = "2.219.0";
   pyproject = true;
 
   disabled = pythonOlder "3.8";
@@ -41,7 +41,7 @@ buildPythonPackage rec {
     owner = "aws";
     repo = "sagemaker-python-sdk";
     rev = "refs/tags/v${version}";
-    hash = "sha256-p73M0hBVpakdXGM56ECr4D3mQCBmB7Ud/p+Rj1+/Bic=";
+    hash = "sha256-TZpRRkoAlXU+Ccgxq49t+Cz0JOIUvYp7ok3x3sphncE=";
   };
 
   patches = [
diff --git a/pkgs/development/python-modules/samplerate/default.nix b/pkgs/development/python-modules/samplerate/default.nix
index 7ac9950a6966..0b7d81a94d96 100644
--- a/pkgs/development/python-modules/samplerate/default.nix
+++ b/pkgs/development/python-modules/samplerate/default.nix
@@ -2,33 +2,56 @@
 , stdenv
 , buildPythonPackage
 , fetchFromGitHub
+
+# build-system
+, cmake
+, setuptools
+, setuptools-scm
+, pybind11
+
+# dependencies
 , cffi
 , numpy
+
+# native dependencies
 , libsamplerate
+
+# tests
 , pytestCheckHook
 }:
 
 buildPythonPackage rec {
   pname = "samplerate";
-  version = "0.1.0";
-  format = "setuptools";
+  version = "0.2.1";
+  pyproject = true;
 
   src = fetchFromGitHub {
     owner = "tuxu";
     repo = "python-samplerate";
-    rev = "refs/tags/${version}";
-    hash = "sha256-lHZ9SVnKcsEsnKYXR/QocGbKPEoA7yCZxXvrNPeH1rA=";
+    rev = "refs/tags/v${version}";
+    hash = "sha256-/9NFJcn8R0DFjVhFAIYOtzZM90hjVIfsVXFlS0nHNhA=";
   };
 
   postPatch = ''
-    substituteInPlace setup.py \
-      --replace ", 'pytest-runner'" ""
-
-    substituteInPlace samplerate/lowlevel.py --replace \
-      "lib_filename = _find_library('samplerate')" \
-      'lib_filename = "${libsamplerate.out}/lib/libsamplerate${stdenv.hostPlatform.extensions.sharedLibrary}"'
+    # unvendor pybind11, libsamplerate
+    rm -r external
+    substituteInPlace CMakeLists.txt \
+      --replace-fail "add_subdirectory(external)" "find_package(pybind11 REQUIRED)"
   '';
 
+  build-system = [
+    cmake
+    setuptools
+    setuptools-scm
+    pybind11
+  ];
+
+  dontUseCmakeConfigure = true;
+
+  buildInputs = [
+    libsamplerate
+  ];
+
   propagatedBuildInputs = [
     cffi
     numpy
diff --git a/pkgs/development/python-modules/sarif-tools/default.nix b/pkgs/development/python-modules/sarif-tools/default.nix
new file mode 100644
index 000000000000..785c26e34529
--- /dev/null
+++ b/pkgs/development/python-modules/sarif-tools/default.nix
@@ -0,0 +1,69 @@
+{ lib
+, fetchFromGitHub
+, buildPythonPackage
+, poetry-core
+, jsonpath-ng
+, jinja2
+, python
+, python-docx
+, matplotlib
+, pyyaml
+, pytestCheckHook
+, pythonOlder
+, pythonRelaxDepsHook
+}:
+
+buildPythonPackage rec {
+  pname = "sarif-tools";
+  version = "2.0.0";
+  pyproject = true;
+
+  src = fetchFromGitHub {
+    owner = "microsoft";
+    repo = "sarif-tools";
+    rev = "v${version}";
+    hash = "sha256-80amYGnf7xZdpxzTjBGwgg39YN/jJsEkTm0uAlVbH0w=";
+  };
+
+  disabled = pythonOlder "3.8";
+
+  nativeBuildInputs = [
+    poetry-core
+    pythonRelaxDepsHook
+  ];
+
+  propagatedBuildInputs = [
+    jsonpath-ng
+    jinja2
+    python
+    python-docx
+    matplotlib
+    pyyaml
+  ];
+
+  nativeCheckInputs = [
+    pytestCheckHook
+  ];
+
+  pythonRelaxDeps = [
+    "python-docx"
+  ];
+
+  disabledTests = [
+    # Broken, re-enable once https://github.com/microsoft/sarif-tools/pull/41 is merged
+    "test_version"
+  ];
+
+  pythonImportsCheck = [
+    "sarif"
+  ];
+
+  meta = {
+    description = "A set of command line tools and Python library for working with SARIF files";
+    homepage = "https://github.com/microsoft/sarif-tools";
+    changelog = "https://github.com/microsoft/sarif-tools/releases/tag/v${version}";
+    license = lib.licenses.mit;
+    maintainers = with lib.maintainers; [ puzzlewolf ];
+    mainProgram = "sarif";
+  };
+}
diff --git a/pkgs/development/python-modules/scalene/default.nix b/pkgs/development/python-modules/scalene/default.nix
index 29a51e38b631..69004f67a196 100644
--- a/pkgs/development/python-modules/scalene/default.nix
+++ b/pkgs/development/python-modules/scalene/default.nix
@@ -18,24 +18,15 @@
 
 buildPythonPackage rec {
   pname = "scalene";
-  version = "1.5.38";
+  version = "1.5.41";
   pyproject = true;
   disabled = pythonOlder "3.9";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-LR1evkn2m6FNBmJnUUJubesxIPeHG6RDgLFBHDuxe38=";
+    hash = "sha256-akjxv9Qot2lGntZxkxfFqz65VboL1qduykfjyEg1Ivg=";
   };
 
-  patches = [
-    # fix scalene_config import. remove on next update
-    (fetchpatch {
-      name = "scalene_config-import-fix.patch";
-      url = "https://github.com/plasma-umass/scalene/commit/cd437be11f600ac0925ce77efa516e6d83934200.patch";
-      hash = "sha256-YjFh+mu5jyIJYUQFhmGqLXhec6lgQAdj4tWxij3NkwU=";
-    })
-  ];
-
   nativeBuildInputs = [
     cython
     setuptools
@@ -61,14 +52,6 @@ buildPythonPackage rec {
     numpy
   ];
 
-  disabledTestPaths = [
-    # remove on next update
-    # Failing Darwin-specific tests that were subsequently removed from the source repo.
-    "tests/test_coverup_35.py"
-    "tests/test_coverup_42.py"
-    "tests/test_coverup_43.py"
-  ];
-
   # remove scalene directory to prevent pytest import confusion
   preCheck = ''
     rm -rf scalene
diff --git a/pkgs/development/python-modules/schemdraw/default.nix b/pkgs/development/python-modules/schemdraw/default.nix
index 441e668f81fc..08eecb1d8a2d 100644
--- a/pkgs/development/python-modules/schemdraw/default.nix
+++ b/pkgs/development/python-modules/schemdraw/default.nix
@@ -14,8 +14,8 @@
 
 buildPythonPackage rec {
   pname = "schemdraw";
-  version = "0.18";
-  format = "pyproject";
+  version = "0.19";
+  pyproject = true;
 
   disabled = pythonOlder "3.8";
 
@@ -23,18 +23,18 @@ buildPythonPackage rec {
     owner = "cdelker";
     repo = pname;
     rev = version;
-    hash = "sha256-JJc3LA+fqB+2g7pPIZ8YMV921EyYpLZrHSJCYyYThZg=";
+    hash = "sha256-vqEHcazE5DNHr0FceOWLqq+RZmMK5ovHDVjy/2wbTJU=";
   };
 
-  nativeBuildInputs = [
+  build-system = [
     setuptools
   ];
 
-  propagatedBuildInputs = [
+  dependencies = [
     pyparsing
   ];
 
-  passthru.optional-dependencies = {
+  optional-dependencies = {
     matplotlib = [
       matplotlib
     ];
@@ -59,6 +59,8 @@ buildPythonPackage rec {
     substituteInPlace test/test_styles.ipynb --replace "font='Times', " ""
   '';
 
+  preCheck = "rm test/test_pictorial.ipynb";   # Tries to download files
+
   pytestFlagsArray = [ "--nbval-lax" ];
 
   pythonImportsCheck = [ "schemdraw" ];
diff --git a/pkgs/development/python-modules/schwifty/default.nix b/pkgs/development/python-modules/schwifty/default.nix
index 1a33c71f7ff5..6a74fb741577 100644
--- a/pkgs/development/python-modules/schwifty/default.nix
+++ b/pkgs/development/python-modules/schwifty/default.nix
@@ -7,6 +7,7 @@
 , hatch-vcs
 
 # dependencies
+, importlib-resources
 , iso3166
 , pycountry
 
@@ -21,14 +22,14 @@
 
 buildPythonPackage rec {
   pname = "schwifty";
-  version = "2024.1.1.post0";
-  format = "pyproject";
+  version = "2024.4.0";
+  pyproject = true;
 
-  disabled = pythonOlder "3.7";
+  disabled = pythonOlder "3.8";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-ZFDu+stuKdsVc8bTuSZ4LZX8BuQhORjyEMosnrk1rX0=";
+    hash = "sha256-1EV2oi2LBcjw2U7nKqdVUVDlFCzR8RqX5tVIciw1trg=";
   };
 
   nativeBuildInputs = [
@@ -39,6 +40,8 @@ buildPythonPackage rec {
   propagatedBuildInputs = [
     iso3166
     pycountry
+  ] ++ lib.optionals (pythonOlder "3.12") [
+    importlib-resources
   ];
 
   passthru.optional-dependencies = {
diff --git a/pkgs/development/python-modules/scikit-bio/default.nix b/pkgs/development/python-modules/scikit-bio/default.nix
index c08f992f2293..7068063a8cb5 100644
--- a/pkgs/development/python-modules/scikit-bio/default.nix
+++ b/pkgs/development/python-modules/scikit-bio/default.nix
@@ -1,53 +1,64 @@
-{ lib
-, buildPythonPackage
-, fetchPypi
-, cython
-, lockfile
-, cachecontrol
-, decorator
-, h5py
-, ipython
-, matplotlib
-, natsort
-, numpy
-, pandas
-, scipy
-, hdmedians
-, scikit-learn
-, coverage
-, python
-, isPy3k
+{
+  lib,
+  buildPythonPackage,
+  fetchFromGitHub,
+  setuptools,
+  cython,
+  oldest-supported-numpy,
+  requests,
+  decorator,
+  natsort,
+  numpy,
+  pandas,
+  scipy,
+  h5py,
+  hdmedians,
+  biom-format,
+  python,
+  pytestCheckHook,
 }:
 
 buildPythonPackage rec {
-  version = "0.5.9";
-  format = "setuptools";
   pname = "scikit-bio";
-  disabled = !isPy3k;
+  version = "0.6.0";
+  pyproject = true;
 
-  src = fetchPypi {
-    inherit pname version;
-    hash = "sha256-euBE3IvuIxkAJIrcOoZZB352FA1WrJ9CvQH7eYEBSRA=";
+  src = fetchFromGitHub {
+    owner = "scikit-bio";
+    repo = "scikit-bio";
+    rev = "refs/tags/${version}";
+    hash = "sha256-v8/r52pJpMi34SekPQBf7CqRbs+ZEyPR3WO5RBB7uKg=";
   };
 
-  nativeBuildInputs = [ cython ];
-  nativeCheckInputs = [ coverage ];
-  propagatedBuildInputs = [ lockfile cachecontrol decorator ipython matplotlib natsort numpy pandas scipy h5py hdmedians scikit-learn ];
+  build-system = [
+    setuptools
+    cython
+    oldest-supported-numpy
+  ];
 
-  # cython package not included for tests
-  doCheck = false;
+  dependencies = [
+    requests
+    decorator
+    natsort
+    numpy
+    pandas
+    scipy
+    h5py
+    hdmedians
+    biom-format
+  ];
 
-  checkPhase = ''
-    ${python.interpreter} -m skbio.test
-  '';
+  nativeCheckInputs = [ pytestCheckHook ];
+
+  # only the $out dir contains the built cython extensions, so we run the tests inside there
+  pytestFlagsArray = [ "${placeholder "out"}/${python.sitePackages}/skbio" ];
 
   pythonImportsCheck = [ "skbio" ];
 
-  meta = with lib; {
+  meta = {
     homepage = "http://scikit-bio.org/";
     description = "Data structures, algorithms and educational resources for bioinformatics";
-    license = licenses.bsd3;
-    platforms = [ "x86_64-linux" "x86_64-darwin" ];
-    maintainers = [ ];
+    license = lib.licenses.bsd3;
+    maintainers = with lib.maintainers; [ tomasajt ];
   };
 }
diff --git a/pkgs/development/python-modules/scikit-build/default.nix b/pkgs/development/python-modules/scikit-build/default.nix
index acaf74e10953..0d35ccf4a8ed 100644
--- a/pkgs/development/python-modules/scikit-build/default.nix
+++ b/pkgs/development/python-modules/scikit-build/default.nix
@@ -92,6 +92,8 @@ buildPythonPackage rec {
     "test_dual_pep518" # pip exits with code 1
     "test_isolated_env_trigger_reconfigure" # Regex pattern 'exit skbuild saving cmake spec' does not match 'exit skbuild running make'.
     "test_hello_wheel" # [Errno 2] No such file or directory: '_skbuild/linux-x86_64-3.9/setuptools/bdist.linux-x86_64/wheel/helloModule.py'
+    "test_hello_cython_sdist" # [Errno 2] No such file or directory: 'dist/hello-cython-1.2.3.tar.gz'
+    "test_hello_pure_sdist" # [Errno 2] No such file or directory: 'dist/hello-pure-1.2.3.tar.gz'
     # sdist contents differ, contains additional setup.py
     "test_hello_sdist"
     "test_manifest_in_sdist"
diff --git a/pkgs/development/python-modules/scikit-learn/default.nix b/pkgs/development/python-modules/scikit-learn/default.nix
index bbcb44de2c02..88927aa4f20b 100644
--- a/pkgs/development/python-modules/scikit-learn/default.nix
+++ b/pkgs/development/python-modules/scikit-learn/default.nix
@@ -2,7 +2,6 @@
 , lib
 , buildPythonPackage
 , fetchPypi
-, fetchpatch
 
 # build-system
 , cython
@@ -16,6 +15,7 @@
 , glibcLocales
 , llvmPackages
 , pytestCheckHook
+, pythonRelaxDepsHook
 , pytest-xdist
 , pillow
 , joblib
@@ -25,23 +25,21 @@
 
 buildPythonPackage rec {
   pname = "scikit-learn";
-  version = "1.4.1.post1";
+  version = "1.4.2";
   pyproject = true;
 
   disabled = pythonOlder "3.9";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-k9PUlv8ZZUcPmXfQXl7DN2+x5jsQ5P2l450jwtiWmjA=";
+    hash = "sha256-2qHEcdlbrQgMbkS0lGyTkKSEKtwwglcsIOT4iE456Vk=";
   };
 
-  patches = [
-    (fetchpatch { # included in >= 1.4.2
-      name = "test_standard_scaler_dtype.patch";
-      url = "https://github.com/jeremiedbb/scikit-learn/commit/87c32d35eeb8f6f7fec63dc3d97d9c416545f053.diff";
-      hash = "sha256-iOBOoWHuWChCTnZ5go7MobPcHRGMChROpCI7V/5ik1Y=";
-    })
-  ];
+  # Avoid build-system requirements causing failure
+  prePatch = ''
+    substituteInPlace pyproject.toml \
+      --replace-fail "numpy==2.0.0rc1" "numpy"
+  '';
 
   buildInputs = [
     pillow
@@ -52,6 +50,7 @@ buildPythonPackage rec {
 
   nativeBuildInputs = [
     gfortran
+    pythonRelaxDepsHook
   ];
 
   build-system = [
diff --git a/pkgs/development/python-modules/scikit-posthocs/default.nix b/pkgs/development/python-modules/scikit-posthocs/default.nix
index e8f3933299a7..1aba1d935c4e 100644
--- a/pkgs/development/python-modules/scikit-posthocs/default.nix
+++ b/pkgs/development/python-modules/scikit-posthocs/default.nix
@@ -16,7 +16,7 @@
 buildPythonPackage rec {
   pname = "scikit-posthocs";
   version = "0.9.0";
-  format = "pyproject";
+  pyproject = true;
 
   src = fetchFromGitHub {
     owner = "maximtrp";
@@ -25,13 +25,6 @@ buildPythonPackage rec {
     hash = "sha256-sRop5DKakrZEBswzTvumn68wKqU15zM5aCLfZ/PdsFg=";
   };
 
-  patches = [
-    # Fixed on master: https://github.com/maximtrp/scikit-posthocs/commit/02266a00ce0eb6a089e7efe07816da1aa5152fc9
-    ./0001-increased-abs-tolerance-for-wilcoxon-test.patch
-    # Fixed on master: https://github.com/maximtrp/scikit-posthocs/commit/5416ffba3ab01aebab3909400b5a9e847022898e
-    ./0002-Update-test_posthocs.py.patch
-  ];
-
   nativeBuildInputs = [
     setuptools
     wheel
diff --git a/pkgs/development/python-modules/scikit-rf/default.nix b/pkgs/development/python-modules/scikit-rf/default.nix
index aa49911009eb..3ee1f89adf4c 100644
--- a/pkgs/development/python-modules/scikit-rf/default.nix
+++ b/pkgs/development/python-modules/scikit-rf/default.nix
@@ -32,7 +32,7 @@
 
 buildPythonPackage rec {
   pname = "scikit-rf";
-  version = "0.32.0";
+  version = "1.0.0";
   pyproject = true;
 
   disabled = pythonOlder "3.7";
@@ -40,8 +40,8 @@ buildPythonPackage rec {
   src = fetchFromGitHub {
     owner = "scikit-rf";
     repo = pname;
-    rev = "refs/tags/v.${version}";
-    hash = "sha256-J7V4nQ8OxW4w75OyiMdUal8k5oXSn96g4w6k1+KV1Dw=";
+    rev = "refs/tags/v${version}";
+    hash = "sha256-TtRj9pqm5153y78MzhlVpL1EvNiNJyjUH1aOlAWU0WE=";
   };
 
   buildInputs = [
diff --git a/pkgs/development/python-modules/scipy/default.nix b/pkgs/development/python-modules/scipy/default.nix
index 64e261c37403..57769c7f6afe 100644
--- a/pkgs/development/python-modules/scipy/default.nix
+++ b/pkgs/development/python-modules/scipy/default.nix
@@ -25,6 +25,9 @@
 , xsimd
 , blas
 , lapack
+
+# Reverse dependency
+, sage
 }:
 
 let
@@ -193,6 +196,7 @@ in buildPythonPackage {
     # Pass it the names of the datasets to update their hashes
     ++ (builtins.attrNames datasetsHashes)
     ;
+    tests = { inherit sage; };
   };
 
   SCIPY_USE_G77_ABI_WRAPPER = 1;
diff --git a/pkgs/development/python-modules/scooby/default.nix b/pkgs/development/python-modules/scooby/default.nix
index 869a1a589501..229ba0526a97 100644
--- a/pkgs/development/python-modules/scooby/default.nix
+++ b/pkgs/development/python-modules/scooby/default.nix
@@ -13,7 +13,7 @@
 
 buildPythonPackage rec {
   pname = "scooby";
-  version = "0.9.2";
+  version = "0.10.0";
   format = "setuptools";
 
   disabled = pythonOlder "3.7";
@@ -22,7 +22,7 @@ buildPythonPackage rec {
     owner = "banesullivan";
     repo = "scooby";
     rev = "refs/tags/v${version}";
-    hash = "sha256-x6GPRo0OuXJtN41urviY0joZKzq0SQjUdRBpIylgcXY=";
+    hash = "sha256-KXhLN8KPz61l+4v88+kVSvodT6OXDJ3Pw9A9aFWSqYE=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/python-modules/scrapy/default.nix b/pkgs/development/python-modules/scrapy/default.nix
index 68bb9460c14f..058f1f8f5607 100644
--- a/pkgs/development/python-modules/scrapy/default.nix
+++ b/pkgs/development/python-modules/scrapy/default.nix
@@ -5,6 +5,7 @@
 , cryptography
 , cssselect
 , fetchPypi
+, fetchpatch
 , glibcLocales
 , installShellFiles
 , itemadapter
@@ -43,6 +44,16 @@ buildPythonPackage rec {
     hash = "sha256-czoDnHQj5StpvygQtTMgk9TkKoSEYDWcB7Auz/j3Pr4=";
   };
 
+  patches = [
+    # https://github.com/scrapy/scrapy/pull/6316
+    # fix test_get_func_args. remove on next update
+    (fetchpatch {
+      name = "test_get_func_args.patch";
+      url = "https://github.com/scrapy/scrapy/commit/b1fe97dc6c8509d58b29c61cf7801eeee1b409a9.patch";
+      hash = "sha256-POlmsuW4SD9baKwZieKfmlp2vtdlb7aKQ62VOmNXsr0=";
+    })
+  ];
+
   nativeBuildInputs = [
     installShellFiles
     setuptools
diff --git a/pkgs/development/python-modules/sdkmanager/default.nix b/pkgs/development/python-modules/sdkmanager/default.nix
index 2900c012cf79..ebace96d136b 100644
--- a/pkgs/development/python-modules/sdkmanager/default.nix
+++ b/pkgs/development/python-modules/sdkmanager/default.nix
@@ -11,7 +11,7 @@
 
 buildPythonPackage rec {
   pname = "sdkmanager";
-  version = "0.6.6";
+  version = "0.6.7";
   format = "setuptools";
 
   disabled = pythonOlder "3.5";
@@ -20,7 +20,7 @@ buildPythonPackage rec {
     owner = "fdroid";
     repo = pname;
     rev = version;
-    hash = "sha256-Vuht2gH9ivNG7PgG+XKtkdKoszkkoI91reQKg6D50xs=";
+    hash = "sha256-8Iq3sVp9/dZi4zNZIgNm38ntoA2koS/Ism+pIVATr4Q=";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/setuptools-gettext/default.nix b/pkgs/development/python-modules/setuptools-gettext/default.nix
index 394f4c4693fa..31440a40e5a3 100644
--- a/pkgs/development/python-modules/setuptools-gettext/default.nix
+++ b/pkgs/development/python-modules/setuptools-gettext/default.nix
@@ -1,37 +1,44 @@
-{ lib
-, buildPythonPackage
-, fetchFromGitHub
-, pythonOlder
-, setuptools
+{
+  lib,
+  buildPythonPackage,
+  fetchFromGitHub,
+  pythonOlder,
+  setuptools,
+  tomli,
+  pytestCheckHook,
+  gettext,
 }:
 
 buildPythonPackage rec {
   pname = "setuptools-gettext";
-  version = "0.1.11";
-  format = "setuptools";
+  version = "0.1.14";
+  pyproject = true;
 
-  disabled = pythonOlder "3.7";
+  disabled = pythonOlder "3.8";
 
   src = fetchFromGitHub {
     owner = "breezy-team";
     repo = "setuptools-gettext";
     rev = "refs/tags/v${version}";
-    hash = "sha256-yLKn4wwGgRdlsISAT71lD2vkIefsTJRB+OEA030adZY=";
+    hash = "sha256-05xKWRxmoI8tnRENuiK3Z3WNMyjgXIX5p3vhzSUeytQ=";
   };
 
-  propagatedBuildInputs = [
-    setuptools
-  ];
+  build-system = [ setuptools ];
+
+  dependencies = [ setuptools ] ++ lib.optionals (pythonOlder "3.11") [ tomli ];
+
+  pythonImportsCheck = [ "setuptools_gettext" ];
 
-  pythonImportsCheck = [
-    "setuptools_gettext"
+  nativeCheckInputs = [
+    pytestCheckHook
+    gettext
   ];
 
-  meta = with lib; {
+  meta = {
     changelog = "https://github.com/breezy-team/setuptools-gettext/releases/tag/v${version}";
     description = "setuptools plugin for building mo files";
     homepage = "https://github.com/breezy-team/setuptools-gettext";
-    license = licenses.gpl2Plus;
-    maintainers = with maintainers; [ ];
+    license = lib.licenses.gpl2Plus;
+    maintainers = with lib.maintainers; [ tomasajt ];
   };
 }
diff --git a/pkgs/development/python-modules/setuptools/default.nix b/pkgs/development/python-modules/setuptools/default.nix
index 46a2597ed141..c7cfd09dc49d 100644
--- a/pkgs/development/python-modules/setuptools/default.nix
+++ b/pkgs/development/python-modules/setuptools/default.nix
@@ -8,14 +8,14 @@
 
 buildPythonPackage rec {
   pname = "setuptools";
-  version = "69.2.0";
+  version = "69.5.1";
   format = "pyproject";
 
   src = fetchFromGitHub {
     owner = "pypa";
     repo = "setuptools";
     rev = "refs/tags/v${version}";
-    hash = "sha256-kll4zYFQn4g/8Fq0Y5vLvDXtotxYMbiNAgGa0sClFQk=";
+    hash = "sha256-X0ntFlDIhUjxtWzz0LxybQSuxhRpHlMeBYtOGwqDl4A=";
   };
 
   patches = [
diff --git a/pkgs/development/python-modules/setuptools/setuptools-distutils-C++.patch b/pkgs/development/python-modules/setuptools/setuptools-distutils-C++.patch
index 399e1682357d..16dfd34c2def 100644
--- a/pkgs/development/python-modules/setuptools/setuptools-distutils-C++.patch
+++ b/pkgs/development/python-modules/setuptools/setuptools-distutils-C++.patch
@@ -1,8 +1,8 @@
 diff --git a/setuptools/_distutils/cygwinccompiler.py b/setuptools/_distutils/cygwinccompiler.py
-index 47efa377..5cdbbe10 100644
+index 539f09d8f..a3d3020cb 100644
 --- a/setuptools/_distutils/cygwinccompiler.py
 +++ b/setuptools/_distutils/cygwinccompiler.py
-@@ -101,14 +101,19 @@ class CygwinCCompiler(UnixCCompiler):
+@@ -99,14 +99,19 @@ class CygwinCCompiler(UnixCCompiler):
          self.cxx = os.environ.get('CXX', 'g++')
  
          self.linker_dll = self.cc
@@ -12,17 +12,17 @@ index 47efa377..5cdbbe10 100644
          self.set_executables(
              compiler='%s -mcygwin -O -Wall' % self.cc,
              compiler_so='%s -mcygwin -mdll -O -Wall' % self.cc,
-             compiler_cxx='%s -mcygwin -O -Wall' % self.cxx,
 +            compiler_so_cxx='%s -mcygwin -mdll -O -Wall' % self.cxx,
+             compiler_cxx='%s -mcygwin -O -Wall' % self.cxx,
              linker_exe='%s -mcygwin' % self.cc,
-             linker_so=('{} -mcygwin {}'.format(self.linker_dll, shared_option)),
+             linker_so=(f'{self.linker_dll} -mcygwin {shared_option}'),
 +            linker_exe_cxx='%s -mcygwin' % self.cxx,
 +            linker_so_cxx=('%s -mcygwin %s' %
 +                (self.linker_dll_cxx, shared_option)),
          )
  
          # Include the appropriate MSVC runtime library if Python was built
-@@ -140,9 +145,12 @@ class CygwinCCompiler(UnixCCompiler):
+@@ -138,9 +143,12 @@ class CygwinCCompiler(UnixCCompiler):
                  raise CompileError(msg)
          else:  # for other files use the C-compiler
              try:
@@ -38,24 +38,24 @@ index 47efa377..5cdbbe10 100644
              except DistutilsExecError as msg:
                  raise CompileError(msg)
  
-@@ -278,9 +286,12 @@ class Mingw32CCompiler(CygwinCCompiler):
+@@ -276,9 +284,12 @@ class Mingw32CCompiler(CygwinCCompiler):
          self.set_executables(
              compiler='%s -O -Wall' % self.cc,
              compiler_so='%s -mdll -O -Wall' % self.cc,
 +            compiler_so_cxx='%s -mdll -O -Wall' % self.cxx,
              compiler_cxx='%s -O -Wall' % self.cxx,
              linker_exe='%s' % self.cc,
-             linker_so='{} {}'.format(self.linker_dll, shared_option),
+             linker_so=f'{self.linker_dll} {shared_option}',
 +            linker_exe_cxx='%s' % self.cxx,
 +            linker_so_cxx='%s %s' % (self.linker_dll_cxx, shared_option)
          )
  
      def runtime_library_dir_option(self, dir):
 diff --git a/setuptools/_distutils/sysconfig.py b/setuptools/_distutils/sysconfig.py
-index a40a7231..e5aad4f4 100644
+index 1a38e9fa7..034ed6566 100644
 --- a/setuptools/_distutils/sysconfig.py
 +++ b/setuptools/_distutils/sysconfig.py
-@@ -297,6 +297,7 @@ def customize_compiler(compiler):  # noqa: C901
+@@ -300,6 +300,7 @@ def customize_compiler(compiler):  # noqa: C901
              cflags,
              ccshared,
              ldshared,
@@ -63,7 +63,7 @@ index a40a7231..e5aad4f4 100644
              shlib_suffix,
              ar,
              ar_flags,
-@@ -306,11 +307,14 @@ def customize_compiler(compiler):  # noqa: C901
+@@ -309,11 +310,14 @@ def customize_compiler(compiler):  # noqa: C901
              'CFLAGS',
              'CCSHARED',
              'LDSHARED',
@@ -78,7 +78,7 @@ index a40a7231..e5aad4f4 100644
          if 'CC' in os.environ:
              newcc = os.environ['CC']
              if 'LDSHARED' not in os.environ and ldshared.startswith(cc):
-@@ -322,19 +326,27 @@ def customize_compiler(compiler):  # noqa: C901
+@@ -325,19 +329,27 @@ def customize_compiler(compiler):  # noqa: C901
              cxx = os.environ['CXX']
          if 'LDSHARED' in os.environ:
              ldshared = os.environ['LDSHARED']
@@ -107,7 +107,7 @@ index a40a7231..e5aad4f4 100644
          if 'AR' in os.environ:
              ar = os.environ['AR']
          if 'ARFLAGS' in os.environ:
-@@ -343,13 +355,17 @@ def customize_compiler(compiler):  # noqa: C901
+@@ -346,13 +358,17 @@ def customize_compiler(compiler):  # noqa: C901
              archiver = ar + ' ' + ar_flags
  
          cc_cmd = cc + ' ' + cflags
@@ -127,10 +127,10 @@ index a40a7231..e5aad4f4 100644
          )
  
 diff --git a/setuptools/_distutils/unixccompiler.py b/setuptools/_distutils/unixccompiler.py
-index 6ca2332a..5ac64128 100644
+index 0248bde87..9508e6cff 100644
 --- a/setuptools/_distutils/unixccompiler.py
 +++ b/setuptools/_distutils/unixccompiler.py
-@@ -115,9 +115,12 @@ class UnixCCompiler(CCompiler):
+@@ -118,9 +118,12 @@ class UnixCCompiler(CCompiler):
          'preprocessor': None,
          'compiler': ["cc"],
          'compiler_so': ["cc"],
@@ -144,7 +144,7 @@ index 6ca2332a..5ac64128 100644
          'archiver': ["ar", "-cr"],
          'ranlib': None,
      }
-@@ -181,8 +184,13 @@ class UnixCCompiler(CCompiler):
+@@ -184,8 +187,13 @@ class UnixCCompiler(CCompiler):
  
      def _compile(self, obj, src, ext, cc_args, extra_postargs, pp_opts):
          compiler_so = compiler_fixup(self.compiler_so, cc_args + extra_postargs)
@@ -159,7 +159,7 @@ index 6ca2332a..5ac64128 100644
          except DistutilsExecError as msg:
              raise CompileError(msg)
  
-@@ -250,7 +258,8 @@ class UnixCCompiler(CCompiler):
+@@ -253,7 +261,8 @@ class UnixCCompiler(CCompiler):
                  # building an executable or linker_so (with shared options)
                  # when building a shared library.
                  building_exe = target_desc == CCompiler.EXECUTABLE
diff --git a/pkgs/development/python-modules/shap/default.nix b/pkgs/development/python-modules/shap/default.nix
index 2bc1a8f5c2ec..2e0b5c0f814c 100644
--- a/pkgs/development/python-modules/shap/default.nix
+++ b/pkgs/development/python-modules/shap/default.nix
@@ -31,7 +31,7 @@
 
 buildPythonPackage rec {
   pname = "shap";
-  version = "0.45.0";
+  version = "0.45.1";
   pyproject = true;
 
   disabled = pythonOlder "3.8";
@@ -40,7 +40,7 @@ buildPythonPackage rec {
     owner = "slundberg";
     repo = "shap";
     rev = "refs/tags/v${version}";
-    hash = "sha256-x8845saPoLsWu3Z8Thkhqo3HeLmfAZANj3KE0ftVqZc=";
+    hash = "sha256-REMAubT9WRe0exfhO4UCLt3FFQHq4HApHnI6i2F/V1o=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/python-modules/shimmy/default.nix b/pkgs/development/python-modules/shimmy/default.nix
new file mode 100644
index 000000000000..cbe0ca7cc8d7
--- /dev/null
+++ b/pkgs/development/python-modules/shimmy/default.nix
@@ -0,0 +1,92 @@
+{ lib
+, buildPythonPackage
+, pythonOlder
+, fetchFromGitHub
+, setuptools
+, wheel
+, gymnasium
+, numpy
+, ale-py
+, bsuite
+, dm-control
+, gym
+, imageio
+, pettingzoo
+, pytestCheckHook
+}:
+
+buildPythonPackage rec {
+  pname = "shimmy";
+  version = "1.3.0";
+  pyproject = true;
+
+  disabled = pythonOlder "3.8";
+
+  src = fetchFromGitHub {
+    owner = "Farama-Foundation";
+    repo = "Shimmy";
+    rev = "refs/tags/v${version}";
+    hash = "sha256-rYBbGyMSFF/iIGruKn2JXKAVIZIfJDEHUEZUESiUg/k=";
+  };
+
+  build-system = [
+    setuptools
+    wheel
+  ];
+
+  dependencies = [
+    gymnasium
+    numpy
+  ];
+
+  pythonImportsCheck = [ "shimmy" ];
+
+  nativeCheckInputs = [
+    ale-py
+    bsuite
+    dm-control
+    gym
+    imageio
+    pettingzoo
+    pytestCheckHook
+  ];
+
+  disabledTestPaths = [
+    # Requires unpackaged pyspiel
+    "tests/test_openspiel.py"
+  ];
+
+  preCheck = ''
+    export HOME=$(mktemp -d)
+  '';
+
+  disabledTests = [
+    # Require network access
+    "test_check_env[bsuite/mnist_noise-v0]"
+    "test_check_env[bsuite/mnist_scale-v0]"
+    "test_check_env[bsuite/mnist-v0]"
+    "test_existing_env"
+    "test_loading_env"
+    "test_pickle[bsuite/mnist-v0]"
+    "test_seeding[bsuite/mnist_noise-v0]"
+    "test_seeding[bsuite/mnist_scale-v0]"
+    "test_seeding[bsuite/mnist-v0]"
+    "test_seeding"
+
+    # RuntimeError: std::exception
+    "test_check_env"
+    "test_seeding[dm_control/quadruped-escape-v0]"
+    "test_rendering_camera_id"
+    "test_rendering_multiple_cameras"
+    "test_rendering_depth"
+    "test_render_height_widths"
+  ];
+
+  meta = {
+    changelog = "https://github.com/Farama-Foundation/Shimmy/releases/tag/v${version}";
+    description = "An API conversion tool for popular external reinforcement learning environments";
+    homepage = "https://github.com/Farama-Foundation/Shimmy";
+    license = lib.licenses.mit;
+    maintainers = with lib.maintainers; [ GaetanLepage ];
+  };
+}
diff --git a/pkgs/development/python-modules/shiv/default.nix b/pkgs/development/python-modules/shiv/default.nix
index a508ee2ec695..d799069324d9 100644
--- a/pkgs/development/python-modules/shiv/default.nix
+++ b/pkgs/development/python-modules/shiv/default.nix
@@ -11,12 +11,12 @@
 
 buildPythonPackage rec {
   pname = "shiv";
-  version = "1.0.5";
+  version = "1.0.6";
   format = "pyproject";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-3eryU4+4HFfMIrmst1Vlm6GounzvtCfFiAYFhAH/RdU=";
+    hash = "sha256-4iJ2gTWXe+vftcDRp9/qKVV8VmtY0wDVuMJTXvIj13Y=";
   };
 
   propagatedBuildInputs = [ click pip setuptools wheel ];
diff --git a/pkgs/development/python-modules/sigstore-protobuf-specs/default.nix b/pkgs/development/python-modules/sigstore-protobuf-specs/default.nix
index 5e89670edef6..56da9cd5f403 100644
--- a/pkgs/development/python-modules/sigstore-protobuf-specs/default.nix
+++ b/pkgs/development/python-modules/sigstore-protobuf-specs/default.nix
@@ -8,7 +8,7 @@
 
 buildPythonPackage rec {
   pname = "sigstore-protobuf-specs";
-  version = "0.3.0";
+  version = "0.3.1";
   pyproject = true;
 
   disabled = pythonOlder "3.8";
@@ -16,7 +16,7 @@ buildPythonPackage rec {
   src = fetchPypi {
     pname = "sigstore_protobuf_specs";
     inherit version;
-    hash = "sha256-MyKttzmSvKDz3G1MLDi6wpCGoR0mMamDrbJ5jljjKlQ=";
+    hash = "sha256-xAthl1uVeukG6ymlvHBA7AFbaLa0YAXMWAXmKUk+jew=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/python-modules/sigtools/default.nix b/pkgs/development/python-modules/sigtools/default.nix
index 87dc4e91e6e9..7e9e7971e137 100644
--- a/pkgs/development/python-modules/sigtools/default.nix
+++ b/pkgs/development/python-modules/sigtools/default.nix
@@ -3,7 +3,6 @@
 , buildPythonPackage
 , fetchPypi
 , mock
-, pythonOlder
 , repeated-test
 , setuptools-scm
 , sphinx
@@ -15,8 +14,6 @@ buildPythonPackage rec {
   version = "4.0.1";
   format = "pyproject";
 
-  disabled = pythonOlder "3.4";
-
   src = fetchPypi {
     inherit pname version;
     hash = "sha256-S44TWpzU0uoA2mcMCTNy105nK6OruH9MmNjnPepURFw=";
diff --git a/pkgs/development/python-modules/simple-term-menu/default.nix b/pkgs/development/python-modules/simple-term-menu/default.nix
index 7a348b1f602d..f6b808cf31c8 100644
--- a/pkgs/development/python-modules/simple-term-menu/default.nix
+++ b/pkgs/development/python-modules/simple-term-menu/default.nix
@@ -1,6 +1,5 @@
 { lib
 , buildPythonPackage
-, pythonOlder
 , fetchPypi
 , setuptools
 }:
@@ -10,8 +9,6 @@ buildPythonPackage rec {
   version = "1.6.4";
   pyproject = true;
 
-  disabled = pythonOlder "3.4";
-
   src = fetchPypi {
     inherit pname version;
     hash = "sha256-vpxdvY3xKkBLFM2Oldb8AtWMYOJVX2Xd3kF3fEh/s7k=";
diff --git a/pkgs/development/python-modules/skein/default.nix b/pkgs/development/python-modules/skein/default.nix
index ff0884330b39..738a6b21d8e1 100644
--- a/pkgs/development/python-modules/skein/default.nix
+++ b/pkgs/development/python-modules/skein/default.nix
@@ -2,6 +2,7 @@
 , callPackage
 , fetchPypi
 , isPy27
+, pythonOlder
 , lib
 , cryptography
 , grpcio
@@ -10,6 +11,8 @@
 , hadoop
 , pytestCheckHook
 , python
+, setuptools
+, versioneer
 }:
 
 buildPythonPackage rec {
@@ -25,7 +28,8 @@ buildPythonPackage rec {
   jarHash = "sha256-x2KH6tnoG7sogtjrJvUaxy0PCEA8q/zneuI969oBOKo=";
   skeinJar = callPackage ./skeinjar.nix { inherit pname version jarHash; };
 
-  propagatedBuildInputs = [ cryptography grpcio pyyaml ];
+  propagatedBuildInputs = [ cryptography grpcio pyyaml ]
+    ++ lib.optionals (!pythonOlder "3.12") [ setuptools ];
   buildInputs = [ grpcio-tools ];
 
   preBuild = ''
@@ -37,8 +41,17 @@ buildPythonPackage rec {
   postPatch = ''
     substituteInPlace skein/core.py --replace "'yarn'" "'${hadoop}/bin/yarn'" \
       --replace "else 'java'" "else '${hadoop.jdk}/bin/java'"
+    # Remove vendorized versioneer
+    rm versioneer.py
+  '' + lib.optionalString (!pythonOlder "3.12") ''
+    substituteInPlace skein/utils.py \
+      --replace-fail "distutils" "setuptools._distutils"
   '';
 
+  build-system = [
+    versioneer
+  ];
+
   pythonImportsCheck = [ "skein" ];
 
   nativeCheckInputs = [ pytestCheckHook ];
@@ -51,12 +64,12 @@ buildPythonPackage rec {
     "test_cli"
   ];
 
-  meta = with lib; {
+  meta = {
     homepage = "https://jcristharif.com/skein";
     description = "A tool and library for easily deploying applications on Apache YARN";
     mainProgram = "skein";
-    license = licenses.bsd3;
-    maintainers = with maintainers; [ alexbiehl illustris ];
+    license = lib.licenses.bsd3;
+    maintainers = with lib.maintainers; [ alexbiehl illustris ];
     # https://github.com/NixOS/nixpkgs/issues/48663#issuecomment-1083031627
     # replace with https://github.com/NixOS/nixpkgs/pull/140325 once it is merged
     broken = lib.traceIf isPy27 "${pname} not supported on ${python.executable}" isPy27;
diff --git a/pkgs/development/python-modules/skytemple-ssb-debugger/default.nix b/pkgs/development/python-modules/skytemple-ssb-debugger/default.nix
index 324f34f33524..7b50a7ae6c19 100644
--- a/pkgs/development/python-modules/skytemple-ssb-debugger/default.nix
+++ b/pkgs/development/python-modules/skytemple-ssb-debugger/default.nix
@@ -17,7 +17,7 @@
 , skytemple-files
 , skytemple-icons
 , skytemple-ssb-emulator
-, wrapGAppsHook
+, wrapGAppsHook3
 }:
 
 buildPythonPackage rec {
@@ -33,7 +33,7 @@ buildPythonPackage rec {
   };
 
   buildInputs = [ gtk3 gtksourceview4 ];
-  nativeBuildInputs = [ gobject-introspection wrapGAppsHook ];
+  nativeBuildInputs = [ gobject-introspection wrapGAppsHook3 ];
   propagatedBuildInputs = [
     explorerscript
     ndspy
diff --git a/pkgs/development/python-modules/slack-bolt/default.nix b/pkgs/development/python-modules/slack-bolt/default.nix
index 94291d7a9cc4..8b2e41c782c4 100644
--- a/pkgs/development/python-modules/slack-bolt/default.nix
+++ b/pkgs/development/python-modules/slack-bolt/default.nix
@@ -1,33 +1,35 @@
-{ aiohttp
-, bottle
-, buildPythonPackage
-, chalice
-, cherrypy
-, django
-, docker
-, falcon
-, fastapi
-, fetchFromGitHub
-, flask
-, flask-sockets
-, gunicorn
-, lib
-, moto
-, numpy
-, pyramid
-, pytest-asyncio
-, pytestCheckHook
-, pythonOlder
-, sanic
-, setuptools
-, sanic-testing
-, slack-sdk
-, starlette
-, tornado
-, uvicorn
-, websocket-client
-, websockets
-, werkzeug
+{
+  lib,
+  aiohttp,
+  bottle,
+  buildPythonPackage,
+  chalice,
+  cherrypy,
+  django,
+  docker,
+  falcon,
+  fastapi,
+  fetchFromGitHub,
+  fetchpatch,
+  flask,
+  flask-sockets,
+  gunicorn,
+  moto,
+  numpy,
+  pyramid,
+  pytest-asyncio,
+  pytestCheckHook,
+  pythonOlder,
+  sanic,
+  setuptools,
+  sanic-testing,
+  slack-sdk,
+  starlette,
+  tornado,
+  uvicorn,
+  websocket-client,
+  websockets,
+  werkzeug,
 }:
 
 buildPythonPackage rec {
@@ -44,19 +46,23 @@ buildPythonPackage rec {
     hash = "sha256-UwVStemFVA4hgqnSpCKpQGwLYG+p5z7MwFXXnIhrvNk=";
   };
 
-  # The packaged pytest-runner version is too new as of 2023-07-27. It's not really needed anyway. Unfortunately,
-  # pythonRelaxDepsHook doesn't work on setup_requires packages.
   postPatch = ''
-    substituteInPlace setup.py --replace "pytest-runner==5.2" ""
+    substituteInPlace setup.py \
+      --replace-fail "pytest-runner==5.2" ""
   '';
 
-  nativeBuildInputs = [
-    setuptools
+  patches = [
+    # moto >=5 support, https://github.com/slackapi/bolt-python/pull/1046
+    (fetchpatch {
+      name = "moto-support.patch";
+      url = "https://github.com/slackapi/bolt-python/commit/69c2015ef49773de111f184dca9668aefac9e7c0.patch";
+      hash = "sha256-KW7KPeOqanV4n1UOv4DCadplJsqsPY+ju4ry0IvUqpA=";
+    })
   ];
 
-  propagatedBuildInputs = [
-    slack-sdk
-  ];
+  build-system = [ setuptools ];
+
+  dependencies = [ slack-sdk ];
 
   passthru.optional-dependencies = {
     async = [
@@ -91,7 +97,6 @@ buildPythonPackage rec {
     pytestCheckHook
   ] ++ lib.flatten (builtins.attrValues passthru.optional-dependencies);
 
-  # Work around "Read-only file system: '/homeless-shelter'" errors
   preCheck = ''
     export HOME="$(mktemp -d)"
   '';
diff --git a/pkgs/development/python-modules/slack-sdk/default.nix b/pkgs/development/python-modules/slack-sdk/default.nix
index 2782b5eea5db..4ef216531c62 100644
--- a/pkgs/development/python-modules/slack-sdk/default.nix
+++ b/pkgs/development/python-modules/slack-sdk/default.nix
@@ -1,27 +1,28 @@
-{ stdenv
-, lib
-, aiodns
-, aiohttp
-, boto3
-, buildPythonPackage
-, codecov
-, fetchFromGitHub
-, flake8
-, flask-sockets
-, moto
-, pythonOlder
-, psutil
-, pytest-asyncio
-, pytestCheckHook
-, setuptools
-, sqlalchemy
-, websocket-client
-, websockets
+{
+  lib,
+  stdenv,
+  aiodns,
+  aiohttp,
+  boto3,
+  buildPythonPackage,
+  codecov,
+  fetchFromGitHub,
+  flake8,
+  flask-sockets,
+  moto,
+  pythonOlder,
+  psutil,
+  pytest-asyncio,
+  pytestCheckHook,
+  setuptools,
+  sqlalchemy,
+  websocket-client,
+  websockets,
 }:
 
 buildPythonPackage rec {
   pname = "slack-sdk";
-  version = "3.27.1";
+  version = "3.27.2";
   pyproject = true;
 
   disabled = pythonOlder "3.6";
@@ -30,7 +31,7 @@ buildPythonPackage rec {
     owner = "slackapi";
     repo = "python-slack-sdk";
     rev = "refs/tags/v${version}";
-    hash = "sha256-fBHu4e6pSt8yzXbLWr5cwjRFDfvdH2jzpSNzdMBg4N0=";
+    hash = "sha256-1I08OUseiwCN9vUd56f9IFzCSB9kGjTLojyWm2dIimE=";
   };
 
   postPatch = ''
@@ -38,11 +39,9 @@ buildPythonPackage rec {
       --replace-fail ', "pytest-runner"' ""
   '';
 
-  nativeBuildInputs = [
-    setuptools
-  ];
+  build-system = [ setuptools ];
 
-  propagatedBuildInputs = [
+  dependencies = [
     aiodns
     aiohttp
     boto3
@@ -78,15 +77,13 @@ buildPythonPackage rec {
     "test_issue_690_oauth_access"
   ];
 
-  pythonImportsCheck = [
-    "slack_sdk"
-  ];
+  pythonImportsCheck = [ "slack_sdk" ];
 
   meta = with lib; {
     description = "Slack Developer Kit for Python";
     homepage = "https://slack.dev/python-slack-sdk/";
     changelog = "https://github.com/slackapi/python-slack-sdk/releases/tag/v${version}";
-    license = with licenses; [ mit ];
+    license = licenses.mit;
     maintainers = with maintainers; [ fab ];
   };
 }
diff --git a/pkgs/development/python-modules/slicedimage/default.nix b/pkgs/development/python-modules/slicedimage/default.nix
index 680bb0f6a5be..5287d25fb349 100644
--- a/pkgs/development/python-modules/slicedimage/default.nix
+++ b/pkgs/development/python-modules/slicedimage/default.nix
@@ -3,15 +3,12 @@
 , fetchFromGitHub
 , boto3
 , diskcache
-, enum34
 , packaging
-, pathlib
 , numpy
 , requests
 , scikit-image
 , six
 , pytestCheckHook
-, isPy27
 , tifffile
 }:
 
@@ -36,7 +33,7 @@ buildPythonPackage rec {
     scikit-image
     six
     tifffile
-  ] ++ lib.optionals isPy27 [ pathlib enum34 ];
+  ];
 
   nativeCheckInputs = [
     pytestCheckHook
diff --git a/pkgs/development/python-modules/slicer/default.nix b/pkgs/development/python-modules/slicer/default.nix
index f678dfb2eaa2..41b3e434bc71 100644
--- a/pkgs/development/python-modules/slicer/default.nix
+++ b/pkgs/development/python-modules/slicer/default.nix
@@ -12,47 +12,25 @@
 
 buildPythonPackage rec {
   pname = "slicer";
-  version = "0.0.7";
-  format = "setuptools";
-  disabled = pythonOlder "3.6";
+  version = "0.0.8";
+  pyproject = true;
+  disabled = pythonOlder "3.8";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-9dX3tF+Y0VW5wLplVPqXcMaybVeTo+d6EDD7VpEOvuw=";
+    hash = "sha256-LnVTr3PwwMLTVfSvzD7Pl8byFW/PRZOVXD9Wz2xNbrc=";
   };
 
   prePatch = ''
     dos2unix slicer/*
   '';
 
-  patches = [
-    # these patches add support for numpy>=1.24
-    (fetchpatch {
-      url = "https://github.com/interpretml/slicer/commit/028e09e639c4a3c99abe1d537cce30af2eebb081.patch";
-      hash = "sha256-jh/cbz7cx2ks6jMNh1gI1n5RS/OHBtSIDZRxUGyrl/I=";
-    })
-    (fetchpatch {
-      url = "https://github.com/interpretml/slicer/commit/d4bb09f136d7e1f64711633c16a37e7bee738696.patch";
-      hash = "sha256-9rh99s4JWF4iKClZ19jvqSeRulL32xB5Use8PGkh/SA=";
-    })
-    (fetchpatch {
-      url = "https://github.com/interpretml/slicer/commit/74b3683a5a7bd982f9eaaf8d8d665dfdaf2c6604.patch";
-      hash = "sha256-R3zsC3udYPFUT93eRhb6wyc9S5n2wceiOunWJ8K+648=";
-    })
-  ];
-
   nativeBuildInputs = [
     dos2unix
   ];
 
   nativeCheckInputs = [ pytestCheckHook pandas torch scipy ];
 
-  disabledTests = [
-    # IndexError: too many indices for array
-    "test_slicer_sparse"
-    "test_operations_2d"
-  ];
-
   meta = with lib; {
     description = "Wraps tensor-like objects and provides a uniform slicing interface via __getitem__";
     homepage = "https://github.com/interpretml/slicer";
diff --git a/pkgs/development/python-modules/smart-meter-texas/default.nix b/pkgs/development/python-modules/smart-meter-texas/default.nix
index 556f978c7312..de9f007af7ba 100644
--- a/pkgs/development/python-modules/smart-meter-texas/default.nix
+++ b/pkgs/development/python-modules/smart-meter-texas/default.nix
@@ -5,13 +5,14 @@
 , aiohttp
 , asn1
 , python-dateutil
+, setuptools
 , tenacity
 }:
 
 buildPythonPackage rec {
   pname = "smart-meter-texas";
-  version = "0.5.3";
-  format = "setuptools";
+  version = "0.5.5";
+  pyproject = true;
 
   disabled = pythonOlder "3.6";
 
@@ -19,15 +20,19 @@ buildPythonPackage rec {
     owner = "grahamwetzler";
     repo = "smart-meter-texas";
     rev = "refs/tags/v${version}";
-    hash = "sha256-8htd5fLrtkaVlSEm+RB7tWA5YZkcAOjAXVNzZiMwP7k=";
+    hash = "sha256-dHWcYrBtmKdEIU45rMy4KvoPX88hnRpd4KBlbJaNvgI=";
   };
 
   postPatch = ''
     substituteInPlace setup.py \
-      --replace "pytest-runner" ""
+      --replace-fail "pytest-runner" ""
   '';
 
-  propagatedBuildInputs = [
+  build-system = [
+    setuptools
+  ];
+
+  dependencies = [
     aiohttp
     asn1
     python-dateutil
diff --git a/pkgs/development/python-modules/smart-open/default.nix b/pkgs/development/python-modules/smart-open/default.nix
index b9622276bdf8..470de7e118e0 100644
--- a/pkgs/development/python-modules/smart-open/default.nix
+++ b/pkgs/development/python-modules/smart-open/default.nix
@@ -2,6 +2,7 @@
 , buildPythonPackage
 , pythonOlder
 , fetchFromGitHub
+, fetchpatch
 , azure-common
 , azure-core
 , azure-storage-blob
@@ -31,6 +32,16 @@ buildPythonPackage rec {
     hash = "sha256-4HOTaF6AKXGlVCvSGKnnaH73aa4IO0aRxz03XQ4gSd8=";
   };
 
+  patches = [
+    # https://github.com/RaRe-Technologies/smart_open/pull/822
+    # fix test_smart_open.py on python 3.12
+    (fetchpatch {
+      name = "fix-smart-open-test.patch";
+      url = "https://github.com/RaRe-Technologies/smart_open/commit/3d29564ca034a56d343c9d14b178aaa0ff4c937c.patch";
+      hash = "sha256-CrAeqaIMM8bctWiFnq9uamnIlkaslDyjaWL6k9wUjT8=";
+    })
+  ];
+
   build-system = [
     setuptools
   ];
diff --git a/pkgs/development/python-modules/smtpdfix/default.nix b/pkgs/development/python-modules/smtpdfix/default.nix
index 5d34cd6693bf..3d541263c05a 100644
--- a/pkgs/development/python-modules/smtpdfix/default.nix
+++ b/pkgs/development/python-modules/smtpdfix/default.nix
@@ -13,12 +13,12 @@
 
 buildPythonPackage rec {
   pname = "smtpdfix";
-  version = "0.5.1";
+  version = "0.5.2";
   format = "pyproject";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-882i0T6EySZ6jxOgoM11MU+ha41XfKjDDhUjeX7qvp4=";
+    hash = "sha256-5NGs6Q83EqGRJ+2IdOaXqGFIwfSNKy2wwHIJaOjj7JU=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/python-modules/snakemake-storage-plugin-s3/default.nix b/pkgs/development/python-modules/snakemake-storage-plugin-s3/default.nix
index 9f194eb25357..a029348d4ffa 100644
--- a/pkgs/development/python-modules/snakemake-storage-plugin-s3/default.nix
+++ b/pkgs/development/python-modules/snakemake-storage-plugin-s3/default.nix
@@ -12,14 +12,14 @@
 
 buildPythonPackage rec {
   pname = "snakemake-storage-plugin-s3";
-  version = "0.2.10";
+  version = "0.2.11";
   format = "pyproject";
 
   src = fetchFromGitHub {
     owner = "snakemake";
     repo = pname;
     rev = "refs/tags/v${version}";
-    hash = "sha256-k21DRQdSUFkdwNb7MZJmClhIg+pdSc7H6FkDrbf4DT8=";
+    hash = "sha256-pAMrWJe4+PWHglZ/C83Af+uHBg9wupfSlH4W8CvO9as=";
   };
 
   postPatch = ''
diff --git a/pkgs/development/python-modules/snitun/default.nix b/pkgs/development/python-modules/snitun/default.nix
index 10df69781826..a0192ee1188e 100644
--- a/pkgs/development/python-modules/snitun/default.nix
+++ b/pkgs/development/python-modules/snitun/default.nix
@@ -1,36 +1,37 @@
-{ lib
-, stdenv
-, setuptools
-, async-timeout
-, attrs
-, buildPythonPackage
-, cryptography
-, fetchFromGitHub
-, pytest-aiohttp
-, pytestCheckHook
-, pythonAtLeast
-, pythonOlder
+{
+  lib,
+  stdenv,
+  aiohttp,
+  async-timeout,
+  attrs,
+  buildPythonPackage,
+  cryptography,
+  fetchFromGitHub,
+  pytest-aiohttp,
+  pytestCheckHook,
+  pythonAtLeast,
+  pythonOlder,
+  setuptools,
 }:
 
 buildPythonPackage rec {
   pname = "snitun";
-  version = "0.36.2";
+  version = "0.39.1";
   pyproject = true;
 
-  disabled = pythonOlder "3.7";
+  disabled = pythonOlder "3.10";
 
   src = fetchFromGitHub {
     owner = "NabuCasa";
     repo = "snitun";
     rev = "refs/tags/${version}";
-    hash = "sha256-ViNsmTq1iLxNujA71b9JZB5AZ79ZbiqdTyDeBGd4gUA=";
+    hash = "sha256-jewDQqvLUh/066BSEADXkCvjLFRnodKtUPKfvi0KUpI=";
   };
 
-  nativeBuildInputs = [
-    setuptools
-  ];
+  build-system = [ setuptools ];
 
-  propagatedBuildInputs = [
+  dependencies = [
+    aiohttp
     async-timeout
     attrs
     cryptography
@@ -41,41 +42,44 @@ buildPythonPackage rec {
     pytestCheckHook
   ];
 
-  disabledTests = [
-    # AssertionError: Expected 'fileno' to not have been called. Called 1 times.
-    "test_client_stop_no_wait"
-  ] ++ lib.optionals stdenv.isDarwin [
-    "test_multiplexer_data_channel_abort_full" # https://github.com/NabuCasa/snitun/issues/61
-    # port binding conflicts
-    "test_snitun_single_runner_timeout"
-    "test_snitun_single_runner_throttling"
-    # ConnectionResetError: [Errno 54] Connection reset by peer
-    "test_peer_listener_timeout"
-  ] ++ lib.optionals (pythonAtLeast "3.12") [
-    # blocking
-    "test_flow_client_peer"
-    "test_close_client_peer"
-    "test_init_connector"
-    "test_flow_connector"
-    "test_close_connector_remote"
-    "test_init_connector_whitelist"
-    "test_init_multiplexer_server"
-    "test_init_multiplexer_client"
-    "test_init_multiplexer_server_throttling"
-    "test_init_multiplexer_client_throttling"
-    "test_multiplexer_ping"
-    "test_multiplexer_ping_error"
-    "test_multiplexer_init_channel_full"
-    "test_multiplexer_close_channel_full"
-    "test_init_dual_peer_with_multiplexer"
-  ];
+  disabledTests =
+    [
+      # AssertionError: Expected 'fileno' to not have been called. Called 1 times.
+      "test_client_stop_no_wait"
+    ]
+    ++ lib.optionals stdenv.isDarwin [
+      "test_multiplexer_data_channel_abort_full" # https://github.com/NabuCasa/snitun/issues/61
+      # port binding conflicts
+      "test_snitun_single_runner_timeout"
+      "test_snitun_single_runner_throttling"
+      # ConnectionResetError: [Errno 54] Connection reset by peer
+      "test_peer_listener_timeout"
+    ]
+    ++ lib.optionals (pythonAtLeast "3.12") [
+      # blocking
+      "test_flow_client_peer"
+      "test_close_client_peer"
+      "test_init_connector"
+      "test_flow_connector"
+      "test_close_connector_remote"
+      "test_init_connector_whitelist"
+      "test_init_multiplexer_server"
+      "test_init_multiplexer_client"
+      "test_init_multiplexer_server_throttling"
+      "test_init_multiplexer_client_throttling"
+      "test_multiplexer_ping"
+      "test_multiplexer_ping_error"
+      "test_multiplexer_init_channel_full"
+      "test_multiplexer_close_channel_full"
+      "test_init_dual_peer_with_multiplexer"
+    ];
 
   pythonImportsCheck = [ "snitun" ];
 
   meta = with lib; {
+    description = "SNI proxy with TCP multiplexer";
     changelog = "https://github.com/NabuCasa/snitun/releases/tag/${version}";
     homepage = "https://github.com/nabucasa/snitun";
-    description = "SNI proxy with TCP multiplexer";
     license = licenses.gpl3Only;
     maintainers = with maintainers; [ Scriptkiddi ];
     platforms = platforms.linux;
diff --git a/pkgs/development/python-modules/snowflake-sqlalchemy/default.nix b/pkgs/development/python-modules/snowflake-sqlalchemy/default.nix
index d8857b971a31..66824e6ccd0f 100644
--- a/pkgs/development/python-modules/snowflake-sqlalchemy/default.nix
+++ b/pkgs/development/python-modules/snowflake-sqlalchemy/default.nix
@@ -9,14 +9,14 @@
 
 buildPythonPackage rec {
   pname = "snowflake-sqlalchemy";
-  version = "1.5.1";
+  version = "1.5.3";
   format = "setuptools";
 
   disabled = pythonOlder "3.7";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-TxODQC/8iTEZdL2BDe4iADrvSvDzEqD9tVd4MzrRq/c=";
+    hash = "sha256-eRkew/6/syvP/s1m8qfdVhvVcTRepLzL9BzB+1wGgv8=";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/soco/default.nix b/pkgs/development/python-modules/soco/default.nix
index 347273e453e6..191f963c7594 100644
--- a/pkgs/development/python-modules/soco/default.nix
+++ b/pkgs/development/python-modules/soco/default.nix
@@ -18,7 +18,7 @@
 
 buildPythonPackage rec {
   pname = "soco";
-  version = "0.30.3";
+  version = "0.30.4";
   pyproject = true;
 
   disabled = pythonOlder "3.6";
@@ -27,7 +27,7 @@ buildPythonPackage rec {
     owner = "SoCo";
     repo = "SoCo";
     rev = "refs/tags/v${version}";
-    hash = "sha256-QAF3f1JMGFFsgdZzoyo+RwKKMaLG+hy+lvZwCzceU/g=";
+    hash = "sha256-t5Cxlm5HhN6WY6ty4i2MAtqjbC7DwZqSp1g5nybFAH4=";
   };
 
   build-system = [ setuptools ];
diff --git a/pkgs/development/python-modules/softlayer/default.nix b/pkgs/development/python-modules/softlayer/default.nix
index 8ce880889d66..02e38fcc3786 100644
--- a/pkgs/development/python-modules/softlayer/default.nix
+++ b/pkgs/development/python-modules/softlayer/default.nix
@@ -21,7 +21,7 @@
 
 buildPythonPackage rec {
   pname = "softlayer";
-  version = "6.1.11";
+  version = "6.2.0";
   format = "setuptools";
 
   disabled = pythonOlder "3.7";
@@ -30,7 +30,7 @@ buildPythonPackage rec {
     owner = pname;
     repo = "softlayer-python";
     rev = "refs/tags/v${version}";
-    hash = "sha256-2iN3T58aICQlGwr10/e/mWE9pA4rbJCBTE1jTu3GeGk=";
+    hash = "sha256-kOElL6VtHrtbA0lNAnDOC6VPX1mC7Rvk5x6N5x2Z1B0=";
   };
 
   postPatch = ''
diff --git a/pkgs/development/python-modules/solax/default.nix b/pkgs/development/python-modules/solax/default.nix
index ffba0140becd..f63ea26d5adf 100644
--- a/pkgs/development/python-modules/solax/default.nix
+++ b/pkgs/development/python-modules/solax/default.nix
@@ -13,21 +13,21 @@
 
 buildPythonPackage rec {
   pname = "solax";
-  version = "3.0.5";
+  version = "3.1.0";
   pyproject = true;
 
   disabled = pythonOlder "3.8";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-PQ7qJCNfXGNF2RK6pHwf0U1DXgv2j2uQ64Nv/qh8f8s=";
+    hash = "sha256-vc1NAbcQQxjpXnjZvTsnebzMc/LoMwBveDHBxBbhnEo=";
   };
 
-  nativeBuildInputs = [
+  build-system = [
     setuptools-scm
   ];
 
-  propagatedBuildInputs = [
+  dependencies = [
     aiohttp
     async-timeout
     voluptuous
diff --git a/pkgs/development/python-modules/speechrecognition/default.nix b/pkgs/development/python-modules/speechrecognition/default.nix
index a6e839ead5ce..8629af8a075f 100644
--- a/pkgs/development/python-modules/speechrecognition/default.nix
+++ b/pkgs/development/python-modules/speechrecognition/default.nix
@@ -1,19 +1,20 @@
-{ lib
-, buildPythonPackage
-, fetchFromGitHub
-, numpy
-, pytestCheckHook
-, pythonOlder
-, torch
-, requests
-, setuptools
-, soundfile
-, typing-extensions
+{
+  lib,
+  buildPythonPackage,
+  fetchFromGitHub,
+  numpy,
+  pytestCheckHook,
+  pythonOlder,
+  torch,
+  requests,
+  setuptools,
+  soundfile,
+  typing-extensions,
 }:
 
 buildPythonPackage rec {
   pname = "speechrecognition";
-  version = "3.10.3";
+  version = "3.10.4";
   pyproject = true;
 
   disabled = pythonOlder "3.8";
@@ -22,12 +23,10 @@ buildPythonPackage rec {
     owner = "Uberi";
     repo = "speech_recognition";
     rev = "refs/tags/${version}";
-    hash = "sha256-g2DE3u2nuJHqWA2X8S6zw5nUVS1yvSqO0VI3zKoIUgg=";
+    hash = "sha256-icXZUg2lVLo8Z5t9ptDj67BjQLnEgrG8geYZ/lZeJt4=";
   };
 
-  build-system = [
-    setuptools
-  ];
+  build-system = [ setuptools ];
 
   dependencies = [
     requests
@@ -41,9 +40,7 @@ buildPythonPackage rec {
     soundfile
   ];
 
-  pythonImportsCheck = [
-    "speech_recognition"
-  ];
+  pythonImportsCheck = [ "speech_recognition" ];
 
   disabledTests = [
     # Test files are missing in source
@@ -57,7 +54,11 @@ buildPythonPackage rec {
   meta = with lib; {
     description = "Speech recognition module for Python, supporting several engines and APIs, online and offline";
     homepage = "https://github.com/Uberi/speech_recognition";
-    license = with licenses; [ gpl2Only bsd3 ];
+    changelog = "https://github.com/Uberi/speech_recognition/releases/tag/${version}";
+    license = with licenses; [
+      gpl2Only
+      bsd3
+    ];
     maintainers = with maintainers; [ fab ];
   };
 }
diff --git a/pkgs/development/python-modules/spglib/default.nix b/pkgs/development/python-modules/spglib/default.nix
index 2939ab51989c..5255fedd044b 100644
--- a/pkgs/development/python-modules/spglib/default.nix
+++ b/pkgs/development/python-modules/spglib/default.nix
@@ -20,12 +20,12 @@
 
 buildPythonPackage rec {
   pname = "spglib";
-  version = "2.3.1";
+  version = "2.4.0";
   format = "pyproject";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-c24l7GfCIMsg+rcBfE/mOC7t7iIwdtV/QEc0KxvGjOM=";
+    hash = "sha256-bmP57mG3DxU6ItO1ULGD2lMfiQR1kX/OIDutRZeqwkM=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/python-modules/sphinx-autoapi/default.nix b/pkgs/development/python-modules/sphinx-autoapi/default.nix
index ca80a717ba54..f10e8be83da6 100644
--- a/pkgs/development/python-modules/sphinx-autoapi/default.nix
+++ b/pkgs/development/python-modules/sphinx-autoapi/default.nix
@@ -53,6 +53,8 @@ buildPythonPackage rec {
     # failing typing assertions
     "test_integration"
     "test_annotations"
+    # sphinx.errors.SphinxWarning: cannot cache unpickable configuration value: 'autoapi_prepare_jinja_env' (because it contains a function, class, or module object)
+    "test_custom_jinja_filters"
   ];
 
   pythonImportsCheck = [
diff --git a/pkgs/development/python-modules/sphinx-autobuild/default.nix b/pkgs/development/python-modules/sphinx-autobuild/default.nix
index d4ad4cedab8c..50189474d4c1 100644
--- a/pkgs/development/python-modules/sphinx-autobuild/default.nix
+++ b/pkgs/development/python-modules/sphinx-autobuild/default.nix
@@ -1,21 +1,32 @@
 { lib
 , buildPythonPackage
-, fetchPypi
+, fetchFromGitHub
+
+# build-system
 , flit-core
+
+# dependencies
 , colorama
 , sphinx
-, livereload
+, starlette
+, uvicorn
+, watchfiles
+, websockets
+
+# tests
+, pytestCheckHook
 }:
 
 buildPythonPackage rec {
   pname = "sphinx-autobuild";
-  version = "2024.2.4";
+  version = "2024.04.16";
   pyproject = true;
 
-  src = fetchPypi {
-    pname = "sphinx_autobuild";
-    inherit version;
-    hash = "sha256-y50hIaF21i1FRxYkhyr8X613Va1mJzir5ADs9KeVQwM=";
+  src = fetchFromGitHub {
+    owner = "sphinx-doc";
+    repo = "sphinx-autobuild";
+    rev = "refs/tags/${version}";
+    hash = "sha256-5HgRqt2ZTGcQ6X2sZN0gRfahmwlqpDbae5gOnGa02L0=";
   };
 
   build-system = [
@@ -25,11 +36,15 @@ buildPythonPackage rec {
   dependencies = [
     colorama
     sphinx
-    livereload
+    starlette
+    uvicorn
+    watchfiles
+    websockets
   ];
 
-  # No tests included.
-  doCheck = false;
+  nativeCheckInputs = [
+    pytestCheckHook
+  ];
 
   pythonImportsCheck = [ "sphinx_autobuild" ];
 
diff --git a/pkgs/development/python-modules/sphinx-autodoc-typehints/default.nix b/pkgs/development/python-modules/sphinx-autodoc-typehints/default.nix
index e5bba673e4ce..45ef02367fbe 100644
--- a/pkgs/development/python-modules/sphinx-autodoc-typehints/default.nix
+++ b/pkgs/development/python-modules/sphinx-autodoc-typehints/default.nix
@@ -10,7 +10,7 @@
 
 let
   pname = "sphinx-autodoc-typehints";
-  version = "2.0.0";
+  version = "2.1.0";
 in
 
 buildPythonPackage {
@@ -22,7 +22,7 @@ buildPythonPackage {
   src = fetchPypi {
     pname = "sphinx_autodoc_typehints";
     inherit version;
-    hash = "sha256-fyzawucP2Xh5Jrbp5UHNTe0eg40rRv2iobsKdexbfzo=";
+    hash = "sha256-Ub+Nx3xPunR+MvBzUAKpFQB0fQVTyuYWhjhI6PXkn+g=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/python-modules/sphinx-intl/default.nix b/pkgs/development/python-modules/sphinx-intl/default.nix
index 1fdf937ae650..0e719aaa6e73 100644
--- a/pkgs/development/python-modules/sphinx-intl/default.nix
+++ b/pkgs/development/python-modules/sphinx-intl/default.nix
@@ -12,14 +12,14 @@
 
 buildPythonPackage rec {
   pname = "sphinx-intl";
-  version = "2.1.0";
-  format = "setuptools";
+  version = "2.2.0";
+  format = "pyproject";
 
  src = fetchFromGitHub {
     owner = "sphinx-doc";
     repo = pname;
     rev = version;
-    hash = "sha256-U/YCviGrsZNruVzfP0P2dGcB0K0Afh+XUZtp71OeP6c=";
+    hash = "sha256-4sFKrUSk8DqPbEM+Q3cRijXyxRSIdkIEAI/mAmB0wB0=";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/sphinx-jupyterbook-latex/default.nix b/pkgs/development/python-modules/sphinx-jupyterbook-latex/default.nix
index 3d015a15f44a..9918f80f6dab 100644
--- a/pkgs/development/python-modules/sphinx-jupyterbook-latex/default.nix
+++ b/pkgs/development/python-modules/sphinx-jupyterbook-latex/default.nix
@@ -12,6 +12,7 @@
 , sphinx-external-toc
 , sphinxcontrib-bibtex
 , texsoup
+, defusedxml
 }:
 
 buildPythonPackage rec {
@@ -47,6 +48,7 @@ buildPythonPackage rec {
     sphinx-external-toc
     sphinxcontrib-bibtex
     texsoup
+    defusedxml
   ];
 
   meta = with lib; {
diff --git a/pkgs/development/python-modules/sphinx-pytest/default.nix b/pkgs/development/python-modules/sphinx-pytest/default.nix
index 7bc41418fe46..e89183641e40 100644
--- a/pkgs/development/python-modules/sphinx-pytest/default.nix
+++ b/pkgs/development/python-modules/sphinx-pytest/default.nix
@@ -4,6 +4,7 @@
 , flit-core
 , pytest
 , sphinx
+, defusedxml
 , pytestCheckHook
 }:
 
@@ -36,6 +37,7 @@ buildPythonPackage rec {
   ];
 
   nativeCheckInputs = [
+    defusedxml
     pytestCheckHook
   ];
 
diff --git a/pkgs/development/python-modules/sphinx-rtd-theme/default.nix b/pkgs/development/python-modules/sphinx-rtd-theme/default.nix
index 1e8e0cd4b1e7..61e443333b3e 100644
--- a/pkgs/development/python-modules/sphinx-rtd-theme/default.nix
+++ b/pkgs/development/python-modules/sphinx-rtd-theme/default.nix
@@ -40,6 +40,11 @@ buildPythonPackage rec {
     readthedocs-sphinx-ext
   ];
 
+  disabledTests = [
+    # docutils 0.21 compat
+    "test_basic"
+  ];
+
   pythonRelaxDeps = [
     "docutils"
     "sphinxcontrib-jquery"
diff --git a/pkgs/development/python-modules/sphinx/default.nix b/pkgs/development/python-modules/sphinx/default.nix
index 43b7ebcd99ee..6608cbfff56c 100644
--- a/pkgs/development/python-modules/sphinx/default.nix
+++ b/pkgs/development/python-modules/sphinx/default.nix
@@ -1,14 +1,13 @@
 { lib
 , buildPythonPackage
-, pythonAtLeast
 , pythonOlder
 , fetchFromGitHub
 , isPyPy
 
-# nativeBuildInputs
+# build-system
 , flit-core
 
-# propagatedBuildInputs
+# dependencies
 , babel
 , alabaster
 , docutils
@@ -26,8 +25,10 @@
 , sphinxcontrib-qthelp
 , sphinxcontrib-serializinghtml
 , sphinxcontrib-websupport
+, tomli
 
 # check phase
+, defusedxml
 , filelock
 , html5lib
 , pytestCheckHook
@@ -36,7 +37,7 @@
 
 buildPythonPackage rec {
   pname = "sphinx";
-  version = "7.2.6";
+  version = "7.3.7";
   format = "pyproject";
   disabled = pythonOlder "3.9";
 
@@ -51,14 +52,14 @@ buildPythonPackage rec {
       mv tests/roots/test-images/{testimäge,testimæge}.png
       sed -i 's/testimäge/testimæge/g' tests/{test_build*.py,roots/test-images/index.rst}
     '';
-    hash = "sha256-IjpRGeGpGfzrEvwIKtuu2l1S74w8W+AbqDOGnWwtRck=";
+    hash = "sha256-XGGRWEvd1SbQsK8W5yxDzBd5hlvXcDzr8t5Qa6skH/M=";
   };
 
-  nativeBuildInputs = [
+  build-system = [
     flit-core
   ];
 
-  propagatedBuildInputs = [
+  dependencies = [
     alabaster
     babel
     docutils
@@ -76,6 +77,8 @@ buildPythonPackage rec {
     sphinxcontrib-serializinghtml
     # extra[docs]
     sphinxcontrib-websupport
+  ] ++ lib.optionals (pythonOlder "3.11") [
+    tomli
   ] ++ lib.optionals (pythonOlder "3.10") [
     importlib-metadata
   ];
@@ -83,6 +86,7 @@ buildPythonPackage rec {
   __darwinAllowLocalNetworking = true;
 
   nativeCheckInputs = [
+    defusedxml
     filelock
     html5lib
     pytestCheckHook
@@ -110,6 +114,8 @@ buildPythonPackage rec {
     "test_decorators"
     # requires cython_0, but fails miserably on 3.11
     "test_cython"
+    # Could not fetch remote image: http://localhost:7777/sphinx.png
+    "test_copy_images"
   ] ++ lib.optionals isPyPy [
     # PyPy has not __builtins__ which get asserted
     # https://doc.pypy.org/en/latest/cpython_differences.html#miscellaneous
@@ -122,9 +128,6 @@ buildPythonPackage rec {
     "test_isattributedescriptor"
     "test_methoddescriptor"
     "test_partialfunction"
-  ] ++ lib.optionals (pythonAtLeast "3.12") [
-    # https://github.com/sphinx-doc/sphinx/issues/12202 (Fixed in 7.3)
-    "test_enum_class"
   ];
 
   meta = {
diff --git a/pkgs/development/python-modules/sphinxcontrib-confluencebuilder/default.nix b/pkgs/development/python-modules/sphinxcontrib-confluencebuilder/default.nix
index 240e51c72418..4d7373310410 100644
--- a/pkgs/development/python-modules/sphinxcontrib-confluencebuilder/default.nix
+++ b/pkgs/development/python-modules/sphinxcontrib-confluencebuilder/default.nix
@@ -10,13 +10,13 @@
 
 buildPythonPackage rec {
   pname = "sphinxcontrib-confluencebuilder";
-  version = "2.5.1";
+  version = "2.5.2";
   format = "pyproject";
 
   src = fetchPypi {
     pname = "sphinxcontrib_confluencebuilder";
     inherit version;
-    hash = "sha256-PQpkwQ95UVJwDGTAq1xdcSvd07FZpZfA/4jq3ywlMas=";
+    hash = "sha256-FwjjlMTIhAD/v4Ig+uqrJJybdPqpPG+7OMuJwSqWo84=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/python-modules/sphinxcontrib-jquery/default.nix b/pkgs/development/python-modules/sphinxcontrib-jquery/default.nix
index fef662c85dae..0ca9fad7b731 100644
--- a/pkgs/development/python-modules/sphinxcontrib-jquery/default.nix
+++ b/pkgs/development/python-modules/sphinxcontrib-jquery/default.nix
@@ -3,6 +3,7 @@
 , fetchFromGitHub
 , fetchpatch
 , flit-core
+, defusedxml
 , pytestCheckHook
 , sphinx
 }:
@@ -42,6 +43,7 @@ buildPythonPackage rec {
   ];
 
   nativeCheckInputs = [
+    defusedxml
     pytestCheckHook
     sphinx
   ];
diff --git a/pkgs/development/python-modules/sphinxcontrib-tikz/default.nix b/pkgs/development/python-modules/sphinxcontrib-tikz/default.nix
index fb44f8ce343a..a52ebdd83d6f 100644
--- a/pkgs/development/python-modules/sphinxcontrib-tikz/default.nix
+++ b/pkgs/development/python-modules/sphinxcontrib-tikz/default.nix
@@ -8,12 +8,12 @@
 
 buildPythonPackage rec {
   pname = "sphinxcontrib-tikz";
-  version = "0.4.18";
+  version = "0.4.19";
   format = "setuptools";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-+IQV2uoKqAGQzq0te6z7vi+NnvQGZ0Sb7XjhdT05Tzo=";
+    hash = "sha256-gen+bH4NvEbxnxr5HStisB1BqyKIS4n1VoHyAK4mXUk=";
   };
 
   postPatch = ''
diff --git a/pkgs/development/python-modules/sqlalchemy-utils/default.nix b/pkgs/development/python-modules/sqlalchemy-utils/default.nix
index 1ace2eab9590..8b0a1a374754 100644
--- a/pkgs/development/python-modules/sqlalchemy-utils/default.nix
+++ b/pkgs/development/python-modules/sqlalchemy-utils/default.nix
@@ -38,23 +38,17 @@
 
 buildPythonPackage rec {
   pname = "sqlalchemy-utils";
-  version = "0.41.1";
+  version = "0.41.2";
   format = "setuptools";
 
   src = fetchPypi {
     inherit version;
     pname = "SQLAlchemy-Utils";
-    hash = "sha256-ohgb/wHuuER544Vx0sBxjrUgQvmv2MGU0NAod+hLfXQ=";
+    hash = "sha256-vFmcjDszGeU85sXDxHESC9Ml0AcftvOKEOkk49B7mZA=";
   };
 
   patches = [
     ./skip-database-tests.patch
-
-    (fetchpatch {
-      # sqlalchemy 2.0.22+ compat; https://github.com/kvesteri/sqlalchemy-utils/pull/725
-      url = "https://github.com/kvesteri/sqlalchemy-utils/commit/712aabaefc5c8ca3680751c705cf5a5984c74af1.patch";
-      hash = "sha256-xBdiUtFWjlUhBzHgGFbaKBt3at6NDo+mv9sd8WwiPOA=";
-    })
   ];
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/sqlalchemy/default.nix b/pkgs/development/python-modules/sqlalchemy/default.nix
index ae1f22b4c2f6..aa557ca55553 100644
--- a/pkgs/development/python-modules/sqlalchemy/default.nix
+++ b/pkgs/development/python-modules/sqlalchemy/default.nix
@@ -40,7 +40,7 @@
 
 buildPythonPackage rec {
   pname = "sqlalchemy";
-  version = "2.0.29";
+  version = "2.0.30";
   format = "pyproject";
 
   disabled = pythonOlder "3.7";
@@ -49,7 +49,7 @@ buildPythonPackage rec {
     owner = "sqlalchemy";
     repo = "sqlalchemy";
     rev = "refs/tags/rel_${lib.replaceStrings [ "." ] [ "_" ] version}";
-    hash = "sha256-jEkuvwq/KKjcsREWDvvTFT87kgu3TSBR3JaseOs54qc=";
+    hash = "sha256-l6VxBK4RT/sAFkz3g633MrfQH9Bvp/JE12mdtqjsxd8=";
   };
 
   postPatch = ''
diff --git a/pkgs/development/python-modules/sqlbag/default.nix b/pkgs/development/python-modules/sqlbag/default.nix
index 8b21d89ad5da..8ff8305b4d4f 100644
--- a/pkgs/development/python-modules/sqlbag/default.nix
+++ b/pkgs/development/python-modules/sqlbag/default.nix
@@ -1,11 +1,9 @@
 { lib
 , buildPythonPackage
 , fetchFromGitHub
-, isPy27
 , psycopg2
 , pymysql
 , sqlalchemy
-, pathlib
 , six
 , flask
 , pendulum
@@ -17,7 +15,6 @@
 , pytest-sugar
 , postgresql
 , postgresqlTestHook
-,
 }:
 buildPythonPackage rec {
   pname = "sqlbag";
@@ -46,8 +43,7 @@ buildPythonPackage rec {
       pymysql
 
       setuptools # needed for 'pkg_resources'
-    ]
-    ++ lib.optional isPy27 pathlib;
+    ];
 
   nativeCheckInputs = [
     pytestCheckHook
@@ -91,5 +87,6 @@ buildPythonPackage rec {
     homepage = "https://github.com/djrobstep/sqlbag";
     license = with licenses; [ unlicense ];
     maintainers = with maintainers; [ soispha ];
+    broken = true; # Fails to build against the current flask version
   };
 }
diff --git a/pkgs/development/python-modules/sqlite-anyio/default.nix b/pkgs/development/python-modules/sqlite-anyio/default.nix
new file mode 100644
index 000000000000..80926de7f47a
--- /dev/null
+++ b/pkgs/development/python-modules/sqlite-anyio/default.nix
@@ -0,0 +1,42 @@
+{
+  lib,
+  buildPythonPackage,
+  fetchFromGitHub,
+  pythonOlder,
+  hatchling,
+  anyio,
+  pytestCheckHook,
+  trio,
+}:
+
+buildPythonPackage rec {
+  pname = "sqlite-anyio";
+  version = "0.2.0";
+  pyproject = true;
+
+  disabled = pythonOlder "3.8";
+
+  src = fetchFromGitHub {
+    owner = "davidbrochart";
+    repo = "sqlite-anyio";
+    rev = "refs/tags/v${version}";
+    hash = "sha256-6khHta7Rzp3g8G/xZnsNZuURFB35JyHz04NTzNJIiBw=";
+  };
+
+  build-system = [ hatchling ];
+
+  dependencies = [ anyio ];
+
+  pythonImportsCheck = [ "sqlite_anyio" ];
+
+  nativeCheckInputs = [
+    pytestCheckHook
+    trio
+  ];
+
+  meta = with lib; {
+    description = "Asynchronous client for SQLite using AnyIO";
+    homepage = "https://github.com/davidbrochart/sqlite-anyio";
+    license = licenses.mit;
+  };
+}
diff --git a/pkgs/development/python-modules/sqlmap/default.nix b/pkgs/development/python-modules/sqlmap/default.nix
index 9771771c8d0f..08a23ed4f273 100644
--- a/pkgs/development/python-modules/sqlmap/default.nix
+++ b/pkgs/development/python-modules/sqlmap/default.nix
@@ -10,14 +10,14 @@
 
 buildPythonPackage rec {
   pname = "sqlmap";
-  version = "1.8.4";
+  version = "1.8.5";
   pyproject = true;
 
   disabled = pythonOlder "3.7";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-zTFdGDzvPlNebsepPxXn2++22YANlDu82yprs7eHfac=";
+    hash = "sha256-ADs0Tfd8iR1OSGkV7pFdRw0RDHbxk6Ztje1AvSIdWqI=";
   };
 
   postPatch = ''
diff --git a/pkgs/development/python-modules/sqlparse/default.nix b/pkgs/development/python-modules/sqlparse/default.nix
index c0afa5eeb7c1..2e63191e033c 100644
--- a/pkgs/development/python-modules/sqlparse/default.nix
+++ b/pkgs/development/python-modules/sqlparse/default.nix
@@ -1,10 +1,10 @@
 { lib
 , buildPythonPackage
 , fetchPypi
-, flit-core
+, hatchling
 , installShellFiles
 , pytestCheckHook
-, isPy3k
+, pythonOlder
 
 # for passthru.tests
 , django
@@ -15,18 +15,19 @@
 
 buildPythonPackage rec {
   pname = "sqlparse";
-  version = "0.4.4";
+  version = "0.5.0";
+  pyproject = true;
 
-  disabled = !isPy3k;
+  disabled = pythonOlder "3.8";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-1EYYPoS4NJ+jBh8P5/BsqUumW0JpRv/r5uPoKVMyQgw=";
+    hash = "sha256-cU0KSTLAWdFhifWO9UEewih6Q2DxfN0O3S0J1MUIfJM=";
   };
 
-  format = "pyproject";
+  build-system = [ hatchling ];
 
-  nativeBuildInputs = [ flit-core installShellFiles ];
+  nativeBuildInputs = [ installShellFiles ];
 
   nativeCheckInputs = [ pytestCheckHook ];
 
@@ -40,11 +41,12 @@ buildPythonPackage rec {
 
   meta = with lib; {
     description = "Non-validating SQL parser for Python";
-    mainProgram = "sqlformat";
     longDescription = ''
       Provides support for parsing, splitting and formatting SQL statements.
     '';
     homepage = "https://github.com/andialbrecht/sqlparse";
+    changelog = "https://github.com/andialbrecht/sqlparse/blob/${version}/CHANGELOG";
     license = licenses.bsd3;
+    mainProgram = "sqlformat";
   };
 }
diff --git a/pkgs/development/python-modules/sqlsoup/default.nix b/pkgs/development/python-modules/sqlsoup/default.nix
deleted file mode 100644
index d75621cc6345..000000000000
--- a/pkgs/development/python-modules/sqlsoup/default.nix
+++ /dev/null
@@ -1,23 +0,0 @@
-{ buildPythonPackage, fetchPypi, lib, sqlalchemy, nose }:
-
-buildPythonPackage rec {
-  pname = "sqlsoup";
-  version = "0.9.1";
-  format = "setuptools";
-
-  src = fetchPypi {
-    inherit pname version;
-    sha256 = "1mj00fhxj75ac3i8xk9jmm7hvcjz9p4x2r3yndcwsgb659rvgbrg";
-  };
-
-  propagatedBuildInputs = [ sqlalchemy ];
-  nativeCheckInputs = [ nose ];
-
-  meta = with lib; {
-    description = "A one step database access tool, built on the SQLAlchemy ORM";
-    homepage = "https://github.com/zzzeek/sqlsoup";
-    license = licenses.mit;
-    maintainers = [];
-    broken = true; # incompatible with sqlalchemy>=1.4 and unmaintained since 2016
-  };
-}
diff --git a/pkgs/development/python-modules/srt/default.nix b/pkgs/development/python-modules/srt/default.nix
index 8fb0d7276141..9bd76b15d2bd 100644
--- a/pkgs/development/python-modules/srt/default.nix
+++ b/pkgs/development/python-modules/srt/default.nix
@@ -3,7 +3,6 @@
 , fetchPypi
 , hypothesis
 , pytestCheckHook
-, pythonOlder
 }:
 
 buildPythonPackage rec {
@@ -11,8 +10,6 @@ buildPythonPackage rec {
   version = "3.5.3";
   format = "setuptools";
 
-  disabled = pythonOlder "2.7";
-
   src = fetchPypi {
     inherit pname version;
     sha256 = "sha256-SIQxUEOk8HQP0fh47WyqN2rAbXDhNfMGptxEYy7tDMA=";
diff --git a/pkgs/development/python-modules/stack-data/default.nix b/pkgs/development/python-modules/stack-data/default.nix
index d6cbacf3abd0..a3fe6964f755 100644
--- a/pkgs/development/python-modules/stack-data/default.nix
+++ b/pkgs/development/python-modules/stack-data/default.nix
@@ -3,39 +3,33 @@
 , cython
 , executing
 , fetchFromGitHub
-, git
 , lib
 , littleutils
 , pure-eval
 , pygments
 , pytestCheckHook
 , setuptools-scm
-, toml
 , typeguard
+, setuptools
+, wheel
 }:
 
 buildPythonPackage rec {
   pname = "stack-data";
-  version = "0.2.0";
-  format = "setuptools";
+  version = "0.6.3";
+  pyproject = true;
 
   src = fetchFromGitHub {
     owner = "alexmojaki";
     repo = "stack_data";
-    rev = "v${version}";
-    hash = "sha256-brXFrk1UU5hxCVeRvGK7wzRA0Hoj9fgqoxTIwInPrEc=";
+    rev = "refs/tags/v${version}";
+    hash = "sha256-dmBhfCg60KX3gWp3k1CGRxW14z3BLlair0PjLW9HFYo=";
   };
 
-  nativeBuildInputs = [
-    git
+  build-system = [
+    setuptools
     setuptools-scm
-    toml
-  ];
-
-  propagatedBuildInputs = [
-    asttokens
-    executing
-    pure-eval
+    wheel
   ];
 
   nativeCheckInputs = [
@@ -46,9 +40,11 @@ buildPythonPackage rec {
     typeguard
   ];
 
-  # https://github.com/alexmojaki/stack_data/issues/50
-  # incompatible with typeguard>=3
-  doCheck = false;
+  dependencies = [
+    asttokens
+    executing
+    pure-eval
+  ];
 
   disabledTests = [
     # AssertionError
@@ -63,7 +59,9 @@ buildPythonPackage rec {
   meta = with lib; {
     description = "Extract data from stack frames and tracebacks";
     homepage = "https://github.com/alexmojaki/stack_data/";
+    changelog = "https://github.com/alexmojaki/stack_data/releases/tag/v${version}";
     license = licenses.mit;
     maintainers = with maintainers; [ jluttine ];
+    mainProgram = "stack-data";
   };
 }
diff --git a/pkgs/development/python-modules/starlette-wtf/default.nix b/pkgs/development/python-modules/starlette-wtf/default.nix
index 3ca744a71f2f..bacbbb0a1c59 100644
--- a/pkgs/development/python-modules/starlette-wtf/default.nix
+++ b/pkgs/development/python-modules/starlette-wtf/default.nix
@@ -13,14 +13,14 @@
 
 buildPythonPackage rec {
   pname = "starlette-wtf";
-  version = "0.4.3";
+  version = "0.4.5";
   format = "pyproject";
 
   src = fetchFromGitHub {
     owner = "muicss";
     repo = "starlette-wtf";
-    rev = "v${version}";
-    hash = "sha256-TSxcIgINRjQwiyhpGOEEpXJKcPlhFCxMQh4/GY1g1lw=";
+    rev = "refs/tags/${version}";
+    hash = "sha256-88zU2NAsdty2OhHauwQ5+6LazuRDYPoqN9IIipI1t2Q=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/python-modules/stashy/default.nix b/pkgs/development/python-modules/stashy/default.nix
index fbac0df71f1d..24a157360636 100644
--- a/pkgs/development/python-modules/stashy/default.nix
+++ b/pkgs/development/python-modules/stashy/default.nix
@@ -2,7 +2,6 @@
 , buildPythonPackage
 , decorator
 , fetchPypi
-, pythonOlder
 , requests
  }:
 
@@ -10,7 +9,6 @@ buildPythonPackage rec {
   pname = "stashy";
   version = "0.7";
   format = "setuptools";
-  disabled = pythonOlder "3.4";
 
   src = fetchPypi {
     inherit pname version;
diff --git a/pkgs/development/python-modules/statsmodels/default.nix b/pkgs/development/python-modules/statsmodels/default.nix
index d92e618c99be..24dc020859d8 100644
--- a/pkgs/development/python-modules/statsmodels/default.nix
+++ b/pkgs/development/python-modules/statsmodels/default.nix
@@ -3,37 +3,39 @@
 , cython
 , fetchPypi
 , numpy
-, oldest-supported-numpy
 , packaging
 , pandas
 , patsy
-, pythonAtLeast
 , pythonOlder
 , scipy
 , setuptools
 , setuptools-scm
+, stdenv
 }:
 
 buildPythonPackage rec {
   pname = "statsmodels";
-  version = "0.14.1";
+  version = "0.14.2";
   pyproject = true;
 
   disabled = pythonOlder "3.8";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-ImDv3B74nznGcKC9gVGx0IQ1Z3gbyv7GzaBTTrR6lPY=";
+    hash = "sha256-iQVQFHrTqBzaJPC6GlxAIa3BYBCAvQDhka581v7s1q0=";
   };
 
+  postPatch = ''
+    substituteInPlace pyproject.toml \
+      --replace-fail "numpy>=2.0.0rc1,<3" "numpy"
+  '';
+
   build-system = [
     cython
-    oldest-supported-numpy
+    numpy
     scipy
     setuptools
     setuptools-scm
-  ] ++ lib.optionals (pythonAtLeast "3.12") [
-    numpy
   ];
 
   dependencies = [
@@ -56,5 +58,7 @@ buildPythonPackage rec {
     homepage = "https://www.github.com/statsmodels/statsmodels";
     changelog = "https://github.com/statsmodels/statsmodels/releases/tag/v${version}";
     license = licenses.bsd3;
+    # Fails at build time
+    broken = stdenv.isDarwin;
   };
 }
diff --git a/pkgs/development/python-modules/stdlibs/default.nix b/pkgs/development/python-modules/stdlibs/default.nix
index 677d282f0653..fb9c0f54479f 100644
--- a/pkgs/development/python-modules/stdlibs/default.nix
+++ b/pkgs/development/python-modules/stdlibs/default.nix
@@ -1,14 +1,15 @@
-{ lib
-, buildPythonPackage
-, fetchFromGitHub
-, flit-core
-, pythonOlder
+{
+  lib,
+  buildPythonPackage,
+  fetchFromGitHub,
+  flit-core,
+  pythonOlder,
 }:
 
 buildPythonPackage rec {
   pname = "stdlibs";
-  version = "2024.1.28";
-  format = "pyproject";
+  version = "2024.5.15";
+  pyproject = true;
 
   disabled = pythonOlder "3.8";
 
@@ -16,19 +17,15 @@ buildPythonPackage rec {
     owner = "omnilib";
     repo = "stdlibs";
     rev = "refs/tags/v${version}";
-    hash = "sha256-xf46ih7viVUKNIT1tLs5MQPNjNtQlQ2N9BJIGPt4Srk=";
+    hash = "sha256-DthHvL5x3HVwACLnxeyuoC0hb8OokabODircEY9eEhE=";
   };
 
-  nativeBuildInputs = [
-    flit-core
-  ];
+  build-system = [ flit-core ];
 
   # Module has no tests
   doCheck = false;
 
-  pythonImportsCheck = [
-    "stdlibs"
-  ];
+  pythonImportsCheck = [ "stdlibs" ];
 
   meta = with lib; {
     description = "Overview of the Python stdlib";
diff --git a/pkgs/development/python-modules/stem/default.nix b/pkgs/development/python-modules/stem/default.nix
index 7d9dc7564a09..bebab6f59d6d 100644
--- a/pkgs/development/python-modules/stem/default.nix
+++ b/pkgs/development/python-modules/stem/default.nix
@@ -2,6 +2,7 @@
 , buildPythonPackage
 , pythonOlder
 , fetchFromGitHub
+, fetchpatch
 , setuptools
 , cryptography
 , mock
@@ -23,6 +24,14 @@ buildPythonPackage rec {
     hash = "sha256-Oc73Jx31SLzuhT9Iym5HHszKfflKZ+3aky5flXudvmI=";
   };
 
+  patches = [
+    # fixes deprecated test assertion, assertRaisesRegexp in python 3
+    (fetchpatch {
+      url = "https://github.com/trishtzy/stem/commit/d5012a1039f05c69ebe832723ce96ecbe8f79fe1.patch";
+      hash = "sha256-ozOTx4/c86sW/9Ss5eZ6ZxX63ByJT5x7JF6wBBd+VFY=";
+    })
+  ];
+
   nativeBuildInputs = [
     setuptools
   ];
diff --git a/pkgs/development/python-modules/stickytape/default.nix b/pkgs/development/python-modules/stickytape/default.nix
index 99e63ebd3dfb..71d5327ef5cf 100644
--- a/pkgs/development/python-modules/stickytape/default.nix
+++ b/pkgs/development/python-modules/stickytape/default.nix
@@ -1,10 +1,6 @@
 { lib
 , buildPythonPackage
 , fetchFromGitHub
-, nose
-, pytestCheckHook
-, pythonOlder
-, spur
 }:
 
 buildPythonPackage rec {
@@ -12,8 +8,6 @@ buildPythonPackage rec {
   version = "0.2.1";
   format = "setuptools";
 
-  disabled = pythonOlder "3.4";
-
   src = fetchFromGitHub {
     owner = "mwilliamson";
     repo = pname;
diff --git a/pkgs/development/python-modules/stim/default.nix b/pkgs/development/python-modules/stim/default.nix
index 3e95b74ef9ef..ca76e41880af 100644
--- a/pkgs/development/python-modules/stim/default.nix
+++ b/pkgs/development/python-modules/stim/default.nix
@@ -32,7 +32,7 @@ buildPythonPackage rec {
   postPatch = ''
     # asked to relax this in https://github.com/quantumlib/Stim/issues/623
     substituteInPlace pyproject.toml \
-      --replace "pybind11==" "pybind11>="
+      --replace-quiet "pybind11~=" "pybind11>="
   '';
 
   nativeBuildInputs = [
diff --git a/pkgs/development/python-modules/stix2-patterns/default.nix b/pkgs/development/python-modules/stix2-patterns/default.nix
index b291e2cd7242..4ca5ee040a75 100644
--- a/pkgs/development/python-modules/stix2-patterns/default.nix
+++ b/pkgs/development/python-modules/stix2-patterns/default.nix
@@ -1,12 +1,12 @@
-{ lib
-, antlr4-python3-runtime
-, buildPythonPackage
-, fetchFromGitHub
-, pythonOlder
-, setuptools
-, pytestCheckHook
-, wheel
-, six
+{
+  lib,
+  antlr4-python3-runtime,
+  buildPythonPackage,
+  fetchFromGitHub,
+  pytestCheckHook,
+  pythonOlder,
+  setuptools,
+  six,
 }:
 
 buildPythonPackage rec {
@@ -25,26 +25,19 @@ buildPythonPackage rec {
 
   postPatch = ''
     substituteInPlace setup.py \
-      --replace "antlr4-python3-runtime~=" "antlr4-python3-runtime>="
+      --replace-fail "antlr4-python3-runtime~=" "antlr4-python3-runtime>="
   '';
 
-  nativeBuildInputs = [
-    setuptools
-    wheel
-  ];
+  build-system = [ setuptools ];
 
-  propagatedBuildInputs = [
+  dependencies = [
     antlr4-python3-runtime
     six
   ];
 
-  nativeCheckInputs = [
-    pytestCheckHook
-  ];
+  nativeCheckInputs = [ pytestCheckHook ];
 
-  pythonImportsCheck = [
-    "stix2patterns"
-  ];
+  pythonImportsCheck = [ "stix2patterns" ];
 
   disabledTestPaths = [
     # Exception: Could not deserialize ATN with version  (expected 4)
diff --git a/pkgs/development/python-modules/strct/default.nix b/pkgs/development/python-modules/strct/default.nix
index c5f9bc2f994b..5148958b9789 100644
--- a/pkgs/development/python-modules/strct/default.nix
+++ b/pkgs/development/python-modules/strct/default.nix
@@ -1,6 +1,5 @@
 { lib
 , fetchFromGitHub
-, fetchpatch
 , buildPythonPackage
 , setuptools
 , pytestCheckHook
@@ -9,36 +8,26 @@
 
 buildPythonPackage rec {
   pname = "strct";
-  version = "0.0.32";
+  version = "0.0.34";
   pyproject = true;
 
   src = fetchFromGitHub {
     owner = "shaypal5";
     repo = "strct";
     rev = "v${version}";
-    hash = "sha256-ctafvdfSOdp7tlCUYg7d5XTXR1qBcWvOVtGtNUnhYIw=";
+    hash = "sha256-uPM2U+emZUCGqEhIeTBmaOu8eSfK4arqvv9bItBWpUs=";
   };
 
-  patches = [
-    # https://github.com/shaypal5/strct/pull/4
-    (fetchpatch {
-      name = "fix-versioneer-on-python312.patch";
-      url = "https://github.com/shaypal5/strct/commit/a1e5b6ca9045b52efdfdbb3c82e12a01e251d41b.patch";
-      hash = "sha256-xXADCSIhq1ARny2twzrhR1J8LkMFWFl6tmGxrM8RvkU=";
-    })
-  ];
-
   postPatch = ''
-    substituteInPlace pytest.ini \
+    substituteInPlace pyproject.toml \
       --replace-fail  \
-        "--cov" \
-        "#--cov"
-
-    # configure correct version, which fails due to missing .git
-    substituteInPlace versioneer.py strct/_version.py \
-      --replace-fail '"0+unknown"' '"${version}"'
+        '"--cov' \
+        '#"--cov'
   '';
 
+  # don't append .dev0 to version
+  env.RELEASING_PROCESS = "1";
+
   nativeBuildInputs = [
     setuptools
   ];
diff --git a/pkgs/development/python-modules/streamlit/default.nix b/pkgs/development/python-modules/streamlit/default.nix
index 7dc7395749b3..4b36ad61faa0 100644
--- a/pkgs/development/python-modules/streamlit/default.nix
+++ b/pkgs/development/python-modules/streamlit/default.nix
@@ -33,14 +33,14 @@
 
 buildPythonPackage rec {
   pname = "streamlit";
-  version = "1.33.0";
+  version = "1.34.0";
   pyproject = true;
 
   disabled = pythonOlder "3.8";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-qNqP9G9blIxW0tx6ynphz42ZX08hdEz4IliudeYwBLo=";
+    hash = "sha256-E1o7eaaGsxMrc/IERQrW6IneBPM0nWkpJeCfDiHnS1I=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/python-modules/streamz/default.nix b/pkgs/development/python-modules/streamz/default.nix
index ff12abf47ae3..87a54da43115 100644
--- a/pkgs/development/python-modules/streamz/default.nix
+++ b/pkgs/development/python-modules/streamz/default.nix
@@ -1,16 +1,18 @@
-{ stdenv
-, lib
+{ lib
+, stdenv
 , buildPythonPackage
+, pythonOlder
+, fetchPypi
+, setuptools
 , confluent-kafka
+, dask
+, dask-expr
 , distributed
-, fetchpatch
-, fetchPypi
 , flaky
 , graphviz
 , networkx
 , pytest-asyncio
 , pytestCheckHook
-, pythonOlder
 , requests
 , six
 , toolz
@@ -21,7 +23,7 @@
 buildPythonPackage rec {
   pname = "streamz";
   version = "0.6.4";
-  format = "setuptools";
+  pyproject = true;
 
   disabled = pythonOlder "3.6";
 
@@ -30,7 +32,11 @@ buildPythonPackage rec {
     hash = "sha256-VXfWkEwuxInBQVQJV3IQXgGVRkiBmYfUZCBMbjyWNPM=";
   };
 
-  propagatedBuildInputs = [
+  build-system = [
+    setuptools
+  ];
+
+  dependencies = [
     networkx
     six
     toolz
@@ -40,6 +46,8 @@ buildPythonPackage rec {
 
   nativeCheckInputs = [
     confluent-kafka
+    dask
+    dask-expr
     distributed
     flaky
     graphviz
diff --git a/pkgs/development/python-modules/stripe/default.nix b/pkgs/development/python-modules/stripe/default.nix
index fe31361a65be..9017a5b7a6ff 100644
--- a/pkgs/development/python-modules/stripe/default.nix
+++ b/pkgs/development/python-modules/stripe/default.nix
@@ -9,14 +9,14 @@
 
 buildPythonPackage rec {
   pname = "stripe";
-  version = "9.4.0";
+  version = "9.6.0";
   pyproject = true;
 
   disabled = pythonOlder "3.8";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-D94cu/Re4Nd71/vYVhiG37bawPNuWp5T/cpKc4biPsw=";
+    hash = "sha256-kwXYSc6nFdxZxeOdAYkUdbguEO252V7h2BiUV+XeeS8=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/python-modules/succulent/default.nix b/pkgs/development/python-modules/succulent/default.nix
index 74d369acefc1..f3d90ec52abf 100644
--- a/pkgs/development/python-modules/succulent/default.nix
+++ b/pkgs/development/python-modules/succulent/default.nix
@@ -2,6 +2,7 @@
 , buildPythonPackage
 , fetchFromGitHub
 , flask
+, lxml
 , pandas
 , pyyaml
 , poetry-core
@@ -9,14 +10,15 @@
 , pythonRelaxDepsHook
 , pythonOlder
 , toml-adapt
+, xmltodict
 }:
 
 buildPythonPackage rec {
   pname = "succulent";
   version = "0.3.3";
-  format = "pyproject";
+  pyproject = true;
 
-  disabled = pythonOlder "3.7";
+  disabled = pythonOlder "3.8";
 
   src = fetchFromGitHub {
     owner = "firefly-cpp";
@@ -27,7 +29,6 @@ buildPythonPackage rec {
 
   pythonRelaxDeps = [
     "flask"
-    "pandas"
   ];
 
   nativeBuildInputs = [
@@ -37,8 +38,10 @@ buildPythonPackage rec {
 
   propagatedBuildInputs = [
     flask
+    lxml
     pandas
     pyyaml
+    xmltodict
   ];
 
   nativeCheckInputs = [
diff --git a/pkgs/development/python-modules/sunpy/default.nix b/pkgs/development/python-modules/sunpy/default.nix
index 17aa79c34020..88a803fa46fb 100644
--- a/pkgs/development/python-modules/sunpy/default.nix
+++ b/pkgs/development/python-modules/sunpy/default.nix
@@ -31,14 +31,14 @@
 
 buildPythonPackage rec {
   pname = "sunpy";
-  version = "5.1.1";
+  version = "5.1.2";
   format = "setuptools";
 
   disabled = pythonOlder "3.8";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-k2fsmvKjl/zVljiyAHII1O6vntJOPo3CWWwmsYlsLh8=";
+    hash = "sha256-1/oz2Ir1K7nR6B2TPZzSjbyiADyQyRlzE9KqTg7EwkA=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/python-modules/superqt/default.nix b/pkgs/development/python-modules/superqt/default.nix
index e7c3aaa04589..a54f3df4a7f5 100644
--- a/pkgs/development/python-modules/superqt/default.nix
+++ b/pkgs/development/python-modules/superqt/default.nix
@@ -1,44 +1,66 @@
-{ lib
-, buildPythonPackage
-, fetchFromGitHub
-, setuptools-scm
-, pyqt5
-, qtpy
-, typing-extensions
-, pytestCheckHook
-, pygments
+{
+  lib,
+  buildPythonPackage,
+  fetchFromGitHub,
+  hatch-vcs,
+  hatchling,
+  pint,
+  pygments,
+  pyqt5,
+  pyqt6,
+  pyside2,
+  pyside6,
+  pytestCheckHook,
+  pythonOlder,
+  qtpy,
+  typing-extensions,
 }:
 
 buildPythonPackage rec {
   pname = "superqt";
-  version = "0.3.8";
-  format = "pyproject";
+  version = "0.6.6";
+  pyproject = true;
+
+  disabled = pythonOlder "3.8";
 
   src = fetchFromGitHub {
-    owner = "napari";
-    repo = pname;
+    owner = "pyapp-kit";
+    repo = "superqt";
     rev = "refs/tags/v${version}";
-    hash = "sha256-zEMG2zscGDlRxtLn/lUTEjZBPabcwzMcj/kMcy3yOs8=";
+    hash = "sha256-AJXX460sm0rrimizkiBIjYFRtWbscEjlwo5ZLcgjzcA=";
   };
 
-  nativeBuildInputs = [ setuptools-scm ];
+  build-system = [
+    hatch-vcs
+    hatchling
+  ];
 
-  propagatedBuildInputs = [
+  dependencies = [
+    pygments
     pyqt5
     qtpy
     typing-extensions
-    pygments
   ];
 
+  passthru.optional-dependencies = {
+    quantity = [ pint ];
+    pyside2 = [ pyside2 ];
+    pyside6 = [ pyside6 ];
+    pyqt6 = [ pyqt6 ];
+  };
+
   nativeCheckInputs = [ pytestCheckHook ];
 
-  doCheck = false; # Segfaults...
+  # Segmentation fault
+  doCheck = false;
 
-  pythonImportsCheck = [ "superqt" ];
+  # Segmentation fault
+  # pythonImportsCheck = [ "superqt" ];
 
   meta = with lib; {
     description = "Missing widgets and components for Qt-python (napari/superqt)";
     homepage = "https://github.com/napari/superqt";
+    changelog = "https://github.com/pyapp-kit/superqt/releases/tag/v${version}";
     license = licenses.bsd3;
     maintainers = with maintainers; [ SomeoneSerge ];
   };
diff --git a/pkgs/development/python-modules/sympy/default.nix b/pkgs/development/python-modules/sympy/default.nix
index d2a10492153e..1954f8bc591f 100644
--- a/pkgs/development/python-modules/sympy/default.nix
+++ b/pkgs/development/python-modules/sympy/default.nix
@@ -3,6 +3,9 @@
 , fetchPypi
 , glibcLocales
 , mpmath
+
+# Reverse dependency
+, sage
 }:
 
 buildPythonPackage rec {
@@ -27,6 +30,8 @@ buildPythonPackage rec {
     export LANG="en_US.UTF-8"
   '';
 
+  passthru.tests = { inherit sage; };
+
   meta = with lib; {
     description = "A Python library for symbolic mathematics";
     mainProgram = "isympy";
diff --git a/pkgs/development/python-modules/tablib/default.nix b/pkgs/development/python-modules/tablib/default.nix
index 679f8df11559..66388b285686 100644
--- a/pkgs/development/python-modules/tablib/default.nix
+++ b/pkgs/development/python-modules/tablib/default.nix
@@ -17,14 +17,14 @@
 
 buildPythonPackage rec {
   pname = "tablib";
-  version = "3.5.0";
+  version = "3.6.1";
   format = "pyproject";
 
   disabled = pythonOlder "3.7";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-9mYd/EXh1PUfqKYjn5yDSTgIWaW/qnMoBkXwRtbJbjM=";
+    hash = "sha256-BAaF/eEekjdnX0Pphe25S2MlCl6SNvidVhzm+xRluDk=";
   };
 
   postPatch = ''
diff --git a/pkgs/development/python-modules/tabula-py/default.nix b/pkgs/development/python-modules/tabula-py/default.nix
index bdc31012cf2d..4556443136b2 100644
--- a/pkgs/development/python-modules/tabula-py/default.nix
+++ b/pkgs/development/python-modules/tabula-py/default.nix
@@ -1,20 +1,21 @@
-{ lib
-, buildPythonPackage
-, distro
-, fetchFromGitHub
-, jre
-, numpy
-, pandas
-, pytestCheckHook
-, pythonOlder
-, setuptools
-, setuptools-scm
-, jpype1
+{
+  lib,
+  buildPythonPackage,
+  distro,
+  fetchFromGitHub,
+  jre,
+  numpy,
+  pandas,
+  pytestCheckHook,
+  pythonOlder,
+  setuptools,
+  setuptools-scm,
+  jpype1,
 }:
 
 buildPythonPackage rec {
   pname = "tabula-py";
-  version = "2.9.0";
+  version = "2.9.1";
   pyproject = true;
 
   disabled = pythonOlder "3.8";
@@ -23,37 +24,31 @@ buildPythonPackage rec {
     owner = "chezou";
     repo = "tabula-py";
     rev = "refs/tags/v${version}";
-    hash = "sha256-MGv2n8DoSjumD3lRcqwI0sEsaEDgs1n+st8DwZuZauo=";
+    hash = "sha256-C06du4mhpnF2qxcEMZxp5O/8xpNaj9Jp8LFaxBkGF/Q=";
   };
 
   postPatch = ''
     substituteInPlace tabula/backend.py \
-      --replace '"java"' '"${lib.getExe jre}"'
+      --replace-fail '"java"' '"${lib.getExe jre}"'
   '';
 
-  nativeBuildInputs = [
+  build-system = [
     setuptools
     setuptools-scm
   ];
 
-  buildInputs = [
-    jre
-  ];
+  buildInputs = [ jre ];
 
-  propagatedBuildInputs = [
+  dependencies = [
     distro
     numpy
     pandas
     jpype1
   ];
 
-  nativeCheckInputs = [
-    pytestCheckHook
-  ];
+  nativeCheckInputs = [ pytestCheckHook ];
 
-  pythonImportsCheck = [
-    "tabula"
-  ];
+  pythonImportsCheck = [ "tabula" ];
 
   disabledTests = [
     # Tests require network access
diff --git a/pkgs/development/python-modules/tencentcloud-sdk-python/default.nix b/pkgs/development/python-modules/tencentcloud-sdk-python/default.nix
index 502e791ddd30..5b0513a0d831 100644
--- a/pkgs/development/python-modules/tencentcloud-sdk-python/default.nix
+++ b/pkgs/development/python-modules/tencentcloud-sdk-python/default.nix
@@ -10,7 +10,7 @@
 
 buildPythonPackage rec {
   pname = "tencentcloud-sdk-python";
-  version = "3.0.1139";
+  version = "3.0.1149";
   pyproject = true;
 
   disabled = pythonOlder "3.9";
@@ -19,7 +19,7 @@ buildPythonPackage rec {
     owner = "TencentCloud";
     repo = "tencentcloud-sdk-python";
     rev = "refs/tags/${version}";
-    hash = "sha256-DH+15I/kMuUbRU8jYGLaDWxO7zumJ7Bh5yze3mmrh/M=";
+    hash = "sha256-3c5MxP2u539++7R6ZMfRMqcxu9THTAWGjaPSdGbqTC8=";
   };
 
   build-system = [ setuptools ];
diff --git a/pkgs/development/python-modules/tensordict/default.nix b/pkgs/development/python-modules/tensordict/default.nix
index 6c64ca00c5ee..6dceda423658 100644
--- a/pkgs/development/python-modules/tensordict/default.nix
+++ b/pkgs/development/python-modules/tensordict/default.nix
@@ -11,11 +11,12 @@
 , h5py
 , pytestCheckHook
 , stdenv
+, pythonAtLeast
 }:
 
 buildPythonPackage rec {
   pname = "tensordict";
-  version = "0.3.1";
+  version = "0.4.0";
   pyproject = true;
 
   disabled = pythonOlder "3.8";
@@ -24,17 +25,17 @@ buildPythonPackage rec {
     owner = "pytorch";
     repo = "tensordict";
     rev = "refs/tags/v${version}";
-    hash = "sha256-eCx1r7goqOdGX/0mSGCiLhdGQTh4Swa5aFiLSsL56p0=";
+    hash = "sha256-wKEzNaaazGEkoElzp93RIlq/r5uRUdM7UyDy/DygIEc=";
   };
 
-  nativeBuildInputs = [
+  build-system = [
     setuptools
     torch
     wheel
     which
   ];
 
-  propagatedBuildInputs = [
+  dependencies = [
     cloudpickle
     numpy
     torch
@@ -72,5 +73,7 @@ buildPythonPackage rec {
     homepage = "https://github.com/pytorch/tensordict";
     license = licenses.mit;
     maintainers = with maintainers; [ GaetanLepage ];
+    # No python 3.12 support yet: https://github.com/pytorch/rl/issues/2035
+    broken = pythonAtLeast "3.12";
   };
 }
diff --git a/pkgs/development/python-modules/tensorflow/bin.nix b/pkgs/development/python-modules/tensorflow/bin.nix
index 104002361926..65ca45f05666 100644
--- a/pkgs/development/python-modules/tensorflow/bin.nix
+++ b/pkgs/development/python-modules/tensorflow/bin.nix
@@ -22,7 +22,7 @@
 , tensorboard
 , config
 , cudaSupport ? config.cudaSupport
-, cudaPackagesGoogle
+, cudaPackages
 , zlib
 , python
 , keras-applications
@@ -43,7 +43,7 @@ assert ! (stdenv.isDarwin && cudaSupport);
 
 let
   packages = import ./binary-hashes.nix;
-  inherit (cudaPackagesGoogle) cudatoolkit cudnn;
+  inherit (cudaPackages) cudatoolkit cudnn;
 in buildPythonPackage {
   pname = "tensorflow" + lib.optionalString cudaSupport "-gpu";
   inherit (packages) version;
@@ -199,10 +199,6 @@ in buildPythonPackage {
     "tensorflow.python.framework"
   ];
 
-  passthru = {
-    cudaPackages = cudaPackagesGoogle;
-  };
-
   meta = with lib; {
     description = "Computation using data flow graphs for scalable machine learning";
     homepage = "http://tensorflow.org";
diff --git a/pkgs/development/python-modules/tensorflow/default.nix b/pkgs/development/python-modules/tensorflow/default.nix
index 069b87b76f84..2c44b89aefea 100644
--- a/pkgs/development/python-modules/tensorflow/default.nix
+++ b/pkgs/development/python-modules/tensorflow/default.nix
@@ -1,7 +1,7 @@
 { stdenv, bazel_5, buildBazelPackage, lib, fetchFromGitHub, symlinkJoin
 , addOpenGLRunpath, fetchpatch, fetchzip, linkFarm
 # Python deps
-, buildPythonPackage, pythonOlder, python
+, buildPythonPackage, pythonAtLeast, pythonOlder, python
 # Python libraries
 , numpy, tensorboard, abseil-cpp, absl-py
 , packaging, setuptools, wheel, keras-preprocessing, google-pasta
@@ -19,8 +19,8 @@
 # https://groups.google.com/a/tensorflow.org/forum/#!topic/developers/iRCt5m4qUz0
 , config
 , cudaSupport ? config.cudaSupport
-, cudaPackagesGoogle
-, cudaCapabilities ? cudaPackagesGoogle.cudaFlags.cudaCapabilities
+, cudaPackages
+, cudaCapabilities ? cudaPackages.cudaFlags.cudaCapabilities
 , mklSupport ? false, mkl
 , tensorboardSupport ? true
 # XLA without CUDA is broken
@@ -50,15 +50,15 @@ let
   # __ZN4llvm11SmallPtrSetIPKNS_10AllocaInstELj8EED1Ev in any of the
   # translation units, so the build fails at link time
   stdenv =
-    if cudaSupport then cudaPackagesGoogle.backendStdenv
+    if cudaSupport then cudaPackages.backendStdenv
     else if originalStdenv.isDarwin then llvmPackages.stdenv
     else originalStdenv;
-  inherit (cudaPackagesGoogle) cudatoolkit nccl;
+  inherit (cudaPackages) cudatoolkit nccl;
   # use compatible cuDNN (https://www.tensorflow.org/install/source#gpu)
   # cudaPackages.cudnn led to this:
   # https://github.com/tensorflow/tensorflow/issues/60398
   cudnnAttribute = "cudnn_8_6";
-  cudnn = cudaPackagesGoogle.${cudnnAttribute};
+  cudnn = cudaPackages.${cudnnAttribute};
   gentoo-patches = fetchzip {
     url = "https://dev.gentoo.org/~perfinion/patches/tensorflow-patches-2.12.0.tar.bz2";
     hash = "sha256-SCRX/5/zML7LmKEPJkcM5Tebez9vv/gmE4xhT/jyqWs=";
@@ -490,8 +490,8 @@ let
       broken =
         stdenv.isDarwin
         || !(xlaSupport -> cudaSupport)
-        || !(cudaSupport -> builtins.hasAttr cudnnAttribute cudaPackagesGoogle)
-        || !(cudaSupport -> cudaPackagesGoogle ? cudatoolkit);
+        || !(cudaSupport -> builtins.hasAttr cudnnAttribute cudaPackages)
+        || !(cudaSupport -> cudaPackages ? cudatoolkit);
     } // lib.optionalAttrs stdenv.isDarwin {
       timeout = 86400; # 24 hours
       maxSilent = 14400; # 4h, double the default of 7200s
@@ -500,7 +500,7 @@ let
 
 in buildPythonPackage {
   inherit version pname;
-  disabled = pythonOlder "3.8";
+  disabled = pythonAtLeast "3.12";
 
   src = bazel-build.python;
 
@@ -594,7 +594,6 @@ in buildPythonPackage {
   # Regression test for #77626 removed because not more `tensorflow.contrib`.
 
   passthru = {
-    cudaPackages = cudaPackagesGoogle;
     deps = bazel-build.deps;
     libtensorflow = bazel-build.out;
   };
diff --git a/pkgs/development/python-modules/tesla-fleet-api/default.nix b/pkgs/development/python-modules/tesla-fleet-api/default.nix
index fad5795a930e..95b4e84390b1 100644
--- a/pkgs/development/python-modules/tesla-fleet-api/default.nix
+++ b/pkgs/development/python-modules/tesla-fleet-api/default.nix
@@ -1,15 +1,16 @@
-{ lib
-, aiohttp
-, aiolimiter
-, buildPythonPackage
-, fetchFromGitHub
-, pythonOlder
-, setuptools
+{
+  lib,
+  aiohttp,
+  aiolimiter,
+  buildPythonPackage,
+  fetchFromGitHub,
+  pythonOlder,
+  setuptools,
 }:
 
 buildPythonPackage rec {
   pname = "tesla-fleet-api";
-  version = "0.5.6";
+  version = "0.5.11";
   pyproject = true;
 
   disabled = pythonOlder "3.10";
@@ -18,12 +19,10 @@ buildPythonPackage rec {
     owner = "Teslemetry";
     repo = "python-tesla-fleet-api";
     rev = "refs/tags/v${version}";
-    hash = "sha256-dkxKC0WAgfDvUD9YktRrNCgXpw2+6apfsMVqStZICII=";
+    hash = "sha256-CwgIWTcLHlV+0ZoSUduQIX/lzmz65dFb+rWkQ/qfKY4=";
   };
 
-  build-system = [
-    setuptools
-  ];
+  build-system = [ setuptools ];
 
   dependencies = [
     aiohttp
@@ -31,11 +30,9 @@ buildPythonPackage rec {
   ];
 
   # Module has no tests
-  doCheck  =false;
+  doCheck = false;
 
-  pythonImportsCheck = [
-    "tesla_fleet_api"
-  ];
+  pythonImportsCheck = [ "tesla_fleet_api" ];
 
   meta = with lib; {
     description = "Python library for Tesla Fleet API and Teslemetry";
diff --git a/pkgs/development/python-modules/testcontainers/default.nix b/pkgs/development/python-modules/testcontainers/default.nix
index 66607ed06fff..975537d1fc88 100644
--- a/pkgs/development/python-modules/testcontainers/default.nix
+++ b/pkgs/development/python-modules/testcontainers/default.nix
@@ -11,7 +11,7 @@
 
 buildPythonPackage rec {
   pname = "testcontainers";
-  version = "4.4.0";
+  version = "4.4.1";
   disabled = pythonOlder "3.9";
 
   pyproject = true;
@@ -20,14 +20,14 @@ buildPythonPackage rec {
     owner = "testcontainers";
     repo = "testcontainers-python";
     rev = "refs/tags/testcontainers-v${version}";
-    hash = "sha256-1iwbfArEjYxpEpMlmJ8rzVLXA8OSNT7ozkpTVTIL91U=";
+    hash = "sha256-osWppbptWpBSHcrHlAqNpn6j2n/qQ7iCobH3TVqB2bc=";
   };
 
   postPatch = ''
     echo "${version}" > VERSION
   '';
 
-  nativeBuildInputs = [
+  build-system = [
     poetry-core
   ];
 
diff --git a/pkgs/development/python-modules/textdistance/default.nix b/pkgs/development/python-modules/textdistance/default.nix
index c362e936eb32..9f386dc2bc82 100644
--- a/pkgs/development/python-modules/textdistance/default.nix
+++ b/pkgs/development/python-modules/textdistance/default.nix
@@ -6,14 +6,14 @@
 
 buildPythonPackage rec {
   pname = "textdistance";
-  version = "4.6.1";
+  version = "4.6.2";
   format = "setuptools";
 
   disabled = pythonOlder "3.7";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-JYllgBse+FaGppq/bDzv3F2iHC+9iMkMaHJfV6fUXyE=";
+    hash = "sha256-AeH7z3uHHrj0GRHZT0YbC5nPgAM4TuDhw0ylwaerLtA=";
   };
 
   # There aren't tests
diff --git a/pkgs/development/python-modules/theano/default.nix b/pkgs/development/python-modules/theano/default.nix
index 78a2a0836e76..ef8b80953390 100644
--- a/pkgs/development/python-modules/theano/default.nix
+++ b/pkgs/development/python-modules/theano/default.nix
@@ -53,7 +53,7 @@ in buildPythonPackage rec {
   version = "1.0.5";
   format = "setuptools";
 
-  disabled = isPyPy || pythonOlder "2.6" || (isPy3k && pythonOlder "3.3");
+  disabled = isPyPy || pythonOlder "2.6";
 
   src = fetchPypi {
     inherit pname version;
diff --git a/pkgs/development/python-modules/thriftpy2/default.nix b/pkgs/development/python-modules/thriftpy2/default.nix
index e6a696dec9bb..4a125dd1775b 100644
--- a/pkgs/development/python-modules/thriftpy2/default.nix
+++ b/pkgs/development/python-modules/thriftpy2/default.nix
@@ -1,32 +1,34 @@
-{ lib
-, buildPythonPackage
-, cython
-, fetchFromGitHub
-, ply
-, pythonOlder
-, six
-, tornado
+{
+  lib,
+  buildPythonPackage,
+  cython,
+  fetchFromGitHub,
+  ply,
+  pythonOlder,
+  six,
+  setuptools,
+  tornado,
 }:
 
 buildPythonPackage rec {
   pname = "thriftpy2";
-  version = "0.4.20";
-  format = "setuptools";
+  version = "0.5.0";
+  pyproject = true;
 
   disabled = pythonOlder "3.6";
 
   src = fetchFromGitHub {
     owner = "Thriftpy";
-    repo = pname;
+    repo = "thriftpy2";
     rev = "refs/tags/v${version}";
-    hash = "sha256-IEYoSLaJUeQdwHaXR0UUlCZg5zBEh5Y2/IwB4RVEAcg=";
+    hash = "sha256-Pjy9OPwFfKaw+XVl7IbbAKPz050TlqI4+yLqSITOkSY=";
   };
 
-  nativeBuildInputs = [
-    cython
-  ];
+  build-system = [ setuptools ];
+
+  nativeBuildInputs = [ cython ];
 
-  propagatedBuildInputs = [
+  dependencies = [
     ply
     six
     tornado
@@ -35,9 +37,7 @@ buildPythonPackage rec {
   # Not all needed files seems to be present
   doCheck = false;
 
-  pythonImportsCheck = [
-    "thriftpy2"
-  ];
+  pythonImportsCheck = [ "thriftpy2" ];
 
   meta = with lib; {
     description = "Python module for Apache Thrift";
diff --git a/pkgs/development/python-modules/tidalapi/default.nix b/pkgs/development/python-modules/tidalapi/default.nix
index 8c3c2429dc72..dcd27bffb2bc 100644
--- a/pkgs/development/python-modules/tidalapi/default.nix
+++ b/pkgs/development/python-modules/tidalapi/default.nix
@@ -1,42 +1,45 @@
-{ lib
-, stdenv
-, buildPythonPackage
-, fetchPypi
-, python-dateutil
-, poetry-core
-, requests
+{
+  lib,
+  buildPythonPackage,
+  fetchPypi,
+  python-dateutil,
+  poetry-core,
+  requests,
+  isodate,
+  ratelimit,
+  typing-extensions,
+  mpegdash,
 }:
-
 buildPythonPackage rec {
   pname = "tidalapi";
-  version = "0.7.5";
-  format = "pyproject";
+  version = "0.7.6";
+  pyproject = true;
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-QzrIWQ7cWpPAu3+/zqAqX9eDWOF8F3Xj8Rt5D8I6h9M=";
+    hash = "sha256-X6U34T1sM4P+JFpOfcI7CmULcGZ4SCXwP2fFHKi1cWE=";
   };
 
-  nativeBuildInputs = [
-    poetry-core
-  ];
+  nativeBuildInputs = [ poetry-core ];
 
   propagatedBuildInputs = [
     requests
     python-dateutil
+    mpegdash
+    isodate
+    ratelimit
+    typing-extensions
   ];
 
   doCheck = false; # tests require internet access
 
-  pythonImportsCheck = [
-    "tidalapi"
-  ];
+  pythonImportsCheck = [ "tidalapi" ];
 
-  meta = with lib; {
+  meta = {
     changelog = "https://github.com/tamland/python-tidal/releases/tag/v${version}";
     description = "Unofficial Python API for TIDAL music streaming service";
     homepage = "https://github.com/tamland/python-tidal";
-    license = licenses.gpl3;
-    maintainers = [ ];
+    license = lib.licenses.gpl3;
+    maintainers = with lib.maintainers; [ drawbu ];
   };
 }
diff --git a/pkgs/development/python-modules/tifffile/default.nix b/pkgs/development/python-modules/tifffile/default.nix
index 30d99043f04c..21931254d202 100644
--- a/pkgs/development/python-modules/tifffile/default.nix
+++ b/pkgs/development/python-modules/tifffile/default.nix
@@ -12,14 +12,14 @@
 
 buildPythonPackage rec {
   pname = "tifffile";
-  version = "2024.2.12";
+  version = "2024.4.18";
   format = "setuptools";
 
   disabled = pythonOlder "3.9";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-SSCj7I6OAD5nPTxlMYY8me7dVw0bi34UHAcu14/4Aw0=";
+    hash = "sha256-X/zXe513w6raEnhjGvXIrHiEOEUv2i6xubYNVVPpXII=";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/timm/default.nix b/pkgs/development/python-modules/timm/default.nix
index 18ac893e9261..087b25003acc 100644
--- a/pkgs/development/python-modules/timm/default.nix
+++ b/pkgs/development/python-modules/timm/default.nix
@@ -15,7 +15,7 @@
 
 buildPythonPackage rec {
   pname = "timm";
-  version = "0.9.16";
+  version = "1.0.3";
   pyproject = true;
 
   disabled = pythonOlder "3.7";
@@ -24,14 +24,14 @@ buildPythonPackage rec {
     owner = "huggingface";
     repo = "pytorch-image-models";
     rev = "refs/tags/v${version}";
-    hash = "sha256-IWEDKuI2565Z07q1MxTpzKS+CROPR6SyaD5fKcQ5eXk=";
+    hash = "sha256-h2J1v2zXUMGRKBBqq+RnxrXKOzlD5RRrVoODWSuj9Ms=";
   };
 
-  nativeBuildInputs = [
+  build-system = [
     pdm-backend
   ];
 
-  propagatedBuildInputs = [
+  dependencies = [
     huggingface-hub
     pyyaml
     safetensors
@@ -64,11 +64,11 @@ buildPythonPackage rec {
     "timm.data"
   ];
 
-  meta = with lib; {
+  meta = {
     description = "PyTorch image models, scripts, and pretrained weights";
     homepage = "https://huggingface.co/docs/timm/index";
     changelog = "https://github.com/huggingface/pytorch-image-models/blob/v${version}/README.md#whats-new";
-    license = licenses.asl20;
-    maintainers = with maintainers; [ bcdarwin ];
+    license = lib.licenses.asl20;
+    maintainers = with lib.maintainers; [ bcdarwin ];
   };
 }
diff --git a/pkgs/development/python-modules/tinytuya/default.nix b/pkgs/development/python-modules/tinytuya/default.nix
new file mode 100644
index 000000000000..36c15f79825a
--- /dev/null
+++ b/pkgs/development/python-modules/tinytuya/default.nix
@@ -0,0 +1,50 @@
+{ lib
+, buildPythonPackage
+, fetchFromGitHub
+
+# build-system
+, setuptools
+
+# dependencies
+, cryptography
+, requests
+, colorama
+}:
+
+buildPythonPackage rec {
+  pname = "tinytuya";
+  version = "1.13.2";
+  pyproject = true;
+
+  src = fetchFromGitHub {
+    owner = "jasonacox";
+    repo = "tinytuya";
+    rev = "refs/tags/v${version}";
+    hash = "sha256-44x5P+Ej/d6B5n53iDuLDBzkeZZvArpcgzXLJBcIJe0=";
+  };
+
+  build-system = [
+    setuptools
+  ];
+
+  dependencies = [
+    cryptography
+    requests
+    colorama
+  ];
+
+  # Tests require real network resources
+  doCheck = false;
+
+  pythonImportsCheck = [
+    "tinytuya"
+  ];
+
+  meta = with lib; {
+    description = "Python API for Tuya WiFi smart devices using a direct local area network (LAN) connection or the cloud (TuyaCloud API)";
+    homepage = "https://github.com/jasonacox/tinytuya";
+    changelog = "https://github.com/jasonacox/tinytuya/releases/tag/v${version}";
+    license = licenses.mit;
+    maintainers = with maintainers; [ pathob ];
+  };
+}
diff --git a/pkgs/development/python-modules/torch/bin.nix b/pkgs/development/python-modules/torch/bin.nix
index d92767b87d4b..f952351083dc 100644
--- a/pkgs/development/python-modules/torch/bin.nix
+++ b/pkgs/development/python-modules/torch/bin.nix
@@ -25,7 +25,7 @@ let
   pyVerNoDot = builtins.replaceStrings [ "." ] [ "" ] python.pythonVersion;
   srcs = import ./binary-hashes.nix version;
   unsupported = throw "Unsupported system";
-  version = "2.2.2";
+  version = "2.3.0";
 in buildPythonPackage {
   inherit version;
 
@@ -34,7 +34,7 @@ in buildPythonPackage {
 
   format = "wheel";
 
-  disabled = (pythonOlder "3.8") || (pythonAtLeast "3.12");
+  disabled = (pythonOlder "3.8") || (pythonAtLeast "3.13");
 
   src = fetchurl srcs."${stdenv.system}-${pyVerNoDot}" or unsupported;
 
@@ -109,7 +109,7 @@ in buildPythonPackage {
     # torch-bin used to vendor CUDA. It still links against CUDA and MKL.
     license = with licenses; [ bsd3 issl unfreeRedistributable ];
     sourceProvenance = with sourceTypes; [ binaryNativeCode ];
-    platforms = [ "aarch64-darwin" "aarch64-linux" "x86_64-darwin" "x86_64-linux" ];
+    platforms = [ "aarch64-darwin" "aarch64-linux" "x86_64-linux" ];
     hydraPlatforms = []; # output size 3.2G on 1.11.0
     maintainers = with maintainers; [ junjihashimoto ];
   };
diff --git a/pkgs/development/python-modules/torch/binary-hashes.nix b/pkgs/development/python-modules/torch/binary-hashes.nix
index 8cd3bccc121c..eb4f9883e574 100644
--- a/pkgs/development/python-modules/torch/binary-hashes.nix
+++ b/pkgs/development/python-modules/torch/binary-hashes.nix
@@ -6,86 +6,81 @@
 # To add a new version, run "prefetch.sh 'new-version'" to paste the generated file as follows.
 
 version : builtins.getAttr version {
-  "2.2.2" = {
+  "2.3.0" = {
     x86_64-linux-38 = {
-      name = "torch-2.2.2-cp38-cp38-linux_x86_64.whl";
-      url = "https://download.pytorch.org/whl/cu121/torch-2.2.2%2Bcu121-cp38-cp38-linux_x86_64.whl";
-      hash = "sha256-wXi+srsB93NgF3e8SBx2Ub5bHxic8YDwwKzqwHiaqaU=";
+      name = "torch-2.3.0-cp38-cp38-linux_x86_64.whl";
+      url = "https://download.pytorch.org/whl/cu121/torch-2.3.0%2Bcu121-cp38-cp38-linux_x86_64.whl";
+      hash = "sha256-lZi5WfVk7j6+NgOwugHSQXTKgBb+ypgQTwMB8UkGF8o=";
     };
     x86_64-linux-39 = {
-      name = "torch-2.2.2-cp39-cp39-linux_x86_64.whl";
-      url = "https://download.pytorch.org/whl/cu121/torch-2.2.2%2Bcu121-cp39-cp39-linux_x86_64.whl";
-      hash = "sha256-EU6TlYZ+6GAWZWLYzB8oCSJfnil4PdXnIXXZqaeoUFw=";
+      name = "torch-2.3.0-cp39-cp39-linux_x86_64.whl";
+      url = "https://download.pytorch.org/whl/cu121/torch-2.3.0%2Bcu121-cp39-cp39-linux_x86_64.whl";
+      hash = "sha256-PMFeTCaCqFUYEhogUNa+eXbZj8SEO7wTtvW+4nWhtu4=";
     };
     x86_64-linux-310 = {
-      name = "torch-2.2.2-cp310-cp310-linux_x86_64.whl";
-      url = "https://download.pytorch.org/whl/cu121/torch-2.2.2%2Bcu121-cp310-cp310-linux_x86_64.whl";
-      hash = "sha256-yt5P1sjOfYJtvPq9ZfHVOw7goFjbjBgJ1lv9YFG1VTA=";
+      name = "torch-2.3.0-cp310-cp310-linux_x86_64.whl";
+      url = "https://download.pytorch.org/whl/cu121/torch-2.3.0%2Bcu121-cp310-cp310-linux_x86_64.whl";
+      hash = "sha256-ChKqmqa8RC3/iCOsi0jZkf0HcVYuqjhZP5yBltZfcAc=";
     };
     x86_64-linux-311 = {
-      name = "torch-2.2.2-cp311-cp311-linux_x86_64.whl";
-      url = "https://download.pytorch.org/whl/cu121/torch-2.2.2%2Bcu121-cp311-cp311-linux_x86_64.whl";
-      hash = "sha256-TJTk0aItcKu9/3Ft7Jm6Xv+UtDQP+nO0+2KflA27inU=";
+      name = "torch-2.3.0-cp311-cp311-linux_x86_64.whl";
+      url = "https://download.pytorch.org/whl/cu121/torch-2.3.0%2Bcu121-cp311-cp311-linux_x86_64.whl";
+      hash = "sha256-XffjyzlhAYqJHk7e8eC8HzMEqNlD+BskqMa/aHykmmc=";
     };
-    x86_64-darwin-38 = {
-      name = "torch-2.2.2-cp38-none-macosx_10_9_x86_64.whl";
-      url = "https://download.pytorch.org/whl/cpu/torch-2.2.2-cp38-none-macosx_10_9_x86_64.whl";
-      hash = "sha256-gVF29iyPN8z7shCBwHaaiLG6pptxaRGapCtl7l8QTi0=";
-    };
-    x86_64-darwin-39 = {
-      name = "torch-2.2.2-cp39-none-macosx_10_9_x86_64.whl";
-      url = "https://download.pytorch.org/whl/cpu/torch-2.2.2-cp39-none-macosx_10_9_x86_64.whl";
-      hash = "sha256-8TdigY3CgP7KfjD2CZWhe6jR0asz/vttB/0sj/FXHqo=";
-    };
-    x86_64-darwin-310 = {
-      name = "torch-2.2.2-cp310-none-macosx_10_9_x86_64.whl";
-      url = "https://download.pytorch.org/whl/cpu/torch-2.2.2-cp310-none-macosx_10_9_x86_64.whl";
-      hash = "sha256-5nfE102wz8KxCSPeG95XXZgculRQXdwIKwUI2WQRmFA=";
-    };
-    x86_64-darwin-311 = {
-      name = "torch-2.2.2-cp311-none-macosx_10_9_x86_64.whl";
-      url = "https://download.pytorch.org/whl/cpu/torch-2.2.2-cp311-none-macosx_10_9_x86_64.whl";
-      hash = "sha256-QwDLu00EKMUbXBlBkBaQGNW4GP2fb6/Ci76P2E3tF0A=";
+    x86_64-linux-312 = {
+      name = "torch-2.3.0-cp312-cp312-linux_x86_64.whl";
+      url = "https://download.pytorch.org/whl/cu121/torch-2.3.0%2Bcu121-cp312-cp312-linux_x86_64.whl";
+      hash = "sha256-8VtvVJ7rxuayKyZ1Tk8dfkRpvNLUuh6qtXJorYC8ypY=";
     };
     aarch64-darwin-38 = {
-      name = "torch-2.2.2-cp38-none-macosx_11_0_arm64.whl";
-      url = "https://download.pytorch.org/whl/cpu/torch-2.2.2-cp38-none-macosx_11_0_arm64.whl";
-      hash = "sha256-7RTSpDZEIEkDg9JveQCj99XFDDLlzf3d3/+Dd22eD9Q=";
+      name = "torch-2.3.0-cp38-none-macosx_11_0_arm64.whl";
+      url = "https://download.pytorch.org/whl/cpu/torch-2.3.0-cp38-none-macosx_11_0_arm64.whl";
+      hash = "sha256-aun2SwlRa6pO+JCvBnLcmBwgsfDYKc4RXUQgokfoj7o=";
     };
     aarch64-darwin-39 = {
-      name = "torch-2.2.2-cp39-none-macosx_11_0_arm64.whl";
-      url = "https://download.pytorch.org/whl/cpu/torch-2.2.2-cp39-none-macosx_11_0_arm64.whl";
-      hash = "sha256-/q2//ddjTP40Xqh9fuQDGzAPnHZFIFkOA0idZYtpMds=";
+      name = "torch-2.3.0-cp39-none-macosx_11_0_arm64.whl";
+      url = "https://download.pytorch.org/whl/cpu/torch-2.3.0-cp39-none-macosx_11_0_arm64.whl";
+      hash = "sha256-dg+L7f9QbOnm4QNJj5senhWAngCDaFlMOma/dKilE4A=";
     };
     aarch64-darwin-310 = {
-      name = "torch-2.2.2-cp310-none-macosx_11_0_arm64.whl";
-      url = "https://download.pytorch.org/whl/cpu/torch-2.2.2-cp310-none-macosx_11_0_arm64.whl";
-      hash = "sha256-tSDRTS8oEK1dp1i+oQyveXjvNkNWW8APkN6JLgDXeSU=";
+      name = "torch-2.3.0-cp310-none-macosx_11_0_arm64.whl";
+      url = "https://download.pytorch.org/whl/cpu/torch-2.3.0-cp310-none-macosx_11_0_arm64.whl";
+      hash = "sha256-dY75ON6HomU7unS5H3A0WMFVafFWK/S2xjxi2cWgwfU=";
     };
     aarch64-darwin-311 = {
-      name = "torch-2.2.2-cp311-none-macosx_11_0_arm64.whl";
-      url = "https://download.pytorch.org/whl/cpu/torch-2.2.2-cp311-none-macosx_11_0_arm64.whl";
-      hash = "sha256-gipYlnXLqKzwRX1qTltspEGtO0w6RKHLyPizGueWRF4=";
+      name = "torch-2.3.0-cp311-none-macosx_11_0_arm64.whl";
+      url = "https://download.pytorch.org/whl/cpu/torch-2.3.0-cp311-none-macosx_11_0_arm64.whl";
+      hash = "sha256-0k4ygibY4q98+A/LHS8dEI4N4yd3+rSqorN7l2XYvnM=";
+    };
+    aarch64-darwin-312 = {
+      name = "torch-2.3.0-cp312-none-macosx_11_0_arm64.whl";
+      url = "https://download.pytorch.org/whl/cpu/torch-2.3.0-cp312-none-macosx_11_0_arm64.whl";
+      hash = "sha256-3KmGIUJns0Blp5AAzuVCMuYrQd/x7Cyrmrw/yLPe4K0=";
     };
     aarch64-linux-38 = {
-      name = "torch-2.2.2-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl";
-      url = "https://download.pytorch.org/whl/cpu/torch-2.2.2-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl";
-      hash = "sha256-mJTc3W71tbYDzYzqPjcR+eJ3CC/3sPFLFSb90ay4JSE=";
+      name = "torch-2.3.0-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl";
+      url = "https://download.pytorch.org/whl/cpu/torch-2.3.0-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl";
+      hash = "sha256-RunxqfQgKcBuY/v5yXE0PYsqCIZyO8T/McZ6m3pHNXM=";
     };
     aarch64-linux-39 = {
-      name = "torch-2.2.2-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl";
-      url = "https://download.pytorch.org/whl/cpu/torch-2.2.2-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl";
-      hash = "sha256-1dhev9E/fNA+UGMlP4R57RpXBSZBZtXdH8abS5YjGyA=";
+      name = "torch-2.3.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl";
+      url = "https://download.pytorch.org/whl/cpu/torch-2.3.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl";
+      hash = "sha256-N7zdkm811ccvGm0oIpczJEuyZTqPp3nEwQ3ZfjMNa6I=";
     };
     aarch64-linux-310 = {
-      name = "torch-2.2.2-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl";
-      url = "https://download.pytorch.org/whl/cpu/torch-2.2.2-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl";
-      hash = "sha256-OiwHUhgIHvnHv4xVxwbyNtrrt1PaQd5JispxYyVzgL0=";
+      name = "torch-2.3.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl";
+      url = "https://download.pytorch.org/whl/cpu/torch-2.3.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl";
+      hash = "sha256-fiTBOMO6zIxRHGuCEfCcO/VH08vjdWMhrOwb3OQP7Gs=";
     };
     aarch64-linux-311 = {
-      name = "torch-2.2.2-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl";
-      url = "https://download.pytorch.org/whl/cpu/torch-2.2.2-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl";
-      hash = "sha256-WUgt9dxA2uEF5z9I3Sk/TMxndkCCLCzjQnOjh1SZA64=";
+      name = "torch-2.3.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl";
+      url = "https://download.pytorch.org/whl/cpu/torch-2.3.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl";
+      hash = "sha256-FHmS068B4/KncqaId+iTeYnlfEIluCpJidPNlYLIvNE=";
+    };
+    aarch64-linux-312 = {
+      name = "torch-2.3.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl";
+      url = "https://download.pytorch.org/whl/cpu/torch-2.3.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl";
+      hash = "sha256-bhOCYa8GzZAqgmUmCCreU0tmCTudj2/y1AHOQ5qiNQw=";
     };
   };
 }
diff --git a/pkgs/development/python-modules/torch/default.nix b/pkgs/development/python-modules/torch/default.nix
index 3bd019375046..d8d3a6532a50 100644
--- a/pkgs/development/python-modules/torch/default.nix
+++ b/pkgs/development/python-modules/torch/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, lib, fetchFromGitHub, fetchpatch, buildPythonPackage, python,
+{ stdenv, lib, fetchFromGitHub, buildPythonPackage, python,
   config, cudaSupport ? config.cudaSupport, cudaPackages,
   autoAddDriverRunpath,
   effectiveMagma ?
@@ -14,7 +14,7 @@
   buildDocs ? false,
 
   # Native build inputs
-  cmake, linkFarm, symlinkJoin, which, pybind11, removeReferencesTo,
+  cmake, symlinkJoin, which, pybind11, removeReferencesTo,
   pythonRelaxDepsHook,
 
   # Build inputs
@@ -130,7 +130,7 @@ let
 in buildPythonPackage rec {
   pname = "torch";
   # Don't forget to update torch-bin to the same version.
-  version = "2.2.2";
+  version = "2.3.0";
   pyproject = true;
 
   disabled = pythonOlder "3.8.0";
@@ -148,7 +148,7 @@ in buildPythonPackage rec {
     repo = "pytorch";
     rev = "refs/tags/v${version}";
     fetchSubmodules = true;
-    hash = "sha256-la9wL9pOlgrSfq5V8aRKXt3hjW+Er/6484m0oUujlzk=";
+    hash = "sha256-UmH4Mv5QL7Mz4Y4pvxn8F1FGBR/UzYZjE2Ys8Oc0FWQ=";
   };
 
   patches = lib.optionals cudaSupport [
@@ -205,8 +205,8 @@ in buildPythonPackage rec {
   # error: no member named 'aligned_alloc' in the global namespace; did you mean simply 'aligned_alloc'
   # This lib overrided aligned_alloc hence the error message. Tltr: his function is linkable but not in header.
   + lib.optionalString (stdenv.isDarwin && lib.versionOlder stdenv.hostPlatform.darwinSdkVersion "11.0") ''
-    substituteInPlace third_party/pocketfft/pocketfft_hdronly.h --replace '#if __cplusplus >= 201703L
-    inline void *aligned_alloc(size_t align, size_t size)' '#if __cplusplus >= 201703L && 0
+    substituteInPlace third_party/pocketfft/pocketfft_hdronly.h --replace-fail '#if (__cplusplus >= 201703L) && (!defined(__MINGW32__)) && (!defined(_MSC_VER))
+    inline void *aligned_alloc(size_t align, size_t size)' '#if 0
     inline void *aligned_alloc(size_t align, size_t size)'
   '';
 
diff --git a/pkgs/development/python-modules/torch/prefetch.sh b/pkgs/development/python-modules/torch/prefetch.sh
index 7b9c26de35f2..88cbfa2c346e 100755
--- a/pkgs/development/python-modules/torch/prefetch.sh
+++ b/pkgs/development/python-modules/torch/prefetch.sh
@@ -15,18 +15,17 @@ url_and_key_list=(
   "x86_64-linux-39 $linux_cuda_bucket/torch-${version}%2B${linux_cuda_version}-cp39-cp39-linux_x86_64.whl torch-${version}-cp39-cp39-linux_x86_64.whl"
   "x86_64-linux-310 $linux_cuda_bucket/torch-${version}%2B${linux_cuda_version}-cp310-cp310-linux_x86_64.whl torch-${version}-cp310-cp310-linux_x86_64.whl"
   "x86_64-linux-311 $linux_cuda_bucket/torch-${version}%2B${linux_cuda_version}-cp311-cp311-linux_x86_64.whl torch-${version}-cp311-cp311-linux_x86_64.whl"
-  "x86_64-darwin-38 $darwin_bucket/torch-${version}-cp38-none-macosx_10_9_x86_64.whl torch-${version}-cp38-none-macosx_10_9_x86_64.whl"
-  "x86_64-darwin-39 $darwin_bucket/torch-${version}-cp39-none-macosx_10_9_x86_64.whl torch-${version}-cp39-none-macosx_10_9_x86_64.whl"
-  "x86_64-darwin-310 $darwin_bucket/torch-${version}-cp310-none-macosx_10_9_x86_64.whl torch-${version}-cp310-none-macosx_10_9_x86_64.whl"
-  "x86_64-darwin-311 $darwin_bucket/torch-${version}-cp311-none-macosx_10_9_x86_64.whl torch-${version}-cp311-none-macosx_10_9_x86_64.whl"
+  "x86_64-linux-312 $linux_cuda_bucket/torch-${version}%2B${linux_cuda_version}-cp312-cp312-linux_x86_64.whl torch-${version}-cp312-cp312-linux_x86_64.whl"
   "aarch64-darwin-38 $darwin_bucket/torch-${version}-cp38-none-macosx_11_0_arm64.whl torch-${version}-cp38-none-macosx_11_0_arm64.whl"
   "aarch64-darwin-39 $darwin_bucket/torch-${version}-cp39-none-macosx_11_0_arm64.whl torch-${version}-cp39-none-macosx_11_0_arm64.whl"
   "aarch64-darwin-310 $darwin_bucket/torch-${version}-cp310-none-macosx_11_0_arm64.whl torch-${version}-cp310-none-macosx_11_0_arm64.whl"
   "aarch64-darwin-311 $darwin_bucket/torch-${version}-cp311-none-macosx_11_0_arm64.whl torch-${version}-cp311-none-macosx_11_0_arm64.whl"
+  "aarch64-darwin-312 $darwin_bucket/torch-${version}-cp312-none-macosx_11_0_arm64.whl torch-${version}-cp312-none-macosx_11_0_arm64.whl"
   "aarch64-linux-38 $linux_cpu_bucket/torch-${version}-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl torch-${version}-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl"
   "aarch64-linux-39 $linux_cpu_bucket/torch-${version}-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl torch-${version}-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl"
   "aarch64-linux-310 $linux_cpu_bucket/torch-${version}-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl torch-${version}-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl"
   "aarch64-linux-311 $linux_cpu_bucket/torch-${version}-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl torch-${version}-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl"
+  "aarch64-linux-312 $linux_cpu_bucket/torch-${version}-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl torch-${version}-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl"
 )
 
 hashfile="binary-hashes-$version.nix"
diff --git a/pkgs/development/python-modules/torchaudio/bin.nix b/pkgs/development/python-modules/torchaudio/bin.nix
index dc69195b693a..29b923b92858 100644
--- a/pkgs/development/python-modules/torchaudio/bin.nix
+++ b/pkgs/development/python-modules/torchaudio/bin.nix
@@ -17,7 +17,7 @@
 
 buildPythonPackage rec {
   pname = "torchaudio";
-  version = "2.2.2";
+  version = "2.3.0";
   format = "wheel";
 
   src =
@@ -27,9 +27,15 @@ buildPythonPackage rec {
     in
     fetchurl srcs;
 
-  disabled = (pythonOlder "3.8") || (pythonAtLeast "3.12");
+  disabled = (pythonOlder "3.8") || (pythonAtLeast "3.13");
 
-  buildInputs = with cudaPackages; [
+  buildInputs = [
+    # We need to patch the lib/_torchaudio_ffmpeg[4-6]
+    ffmpeg_4.dev
+    ffmpeg_5.dev
+    ffmpeg_6.dev
+    sox
+  ] ++ lib.optionals stdenv.isLinux (with cudaPackages; [
     # $out/${sitePackages}/torchaudio/lib/libtorchaudio*.so wants libcudart.so.11.0 but torch/lib only ships
     # libcudart.$hash.so.11.0
     cuda_cudart
@@ -37,24 +43,18 @@ buildPythonPackage rec {
     # $out/${sitePackages}/torchaudio/lib/libtorchaudio*.so wants libnvToolsExt.so.2 but torch/lib only ships
     # libnvToolsExt-$hash.so.1
     cuda_nvtx
+  ]);
 
-    # We need to patch the lib/_torchaudio_ffmpeg[4-6]
-    ffmpeg_4.dev
-    ffmpeg_5.dev
-    ffmpeg_6.dev
-    sox
-  ];
-
-  nativeBuildInputs = [
+  nativeBuildInputs = lib.optionals stdenv.isLinux [
     autoPatchelfHook
     addOpenGLRunpath
   ];
 
-  propagatedBuildInputs = [
+  dependencies = [
     torch-bin
   ];
 
-  preInstall = ''
+  preInstall = lib.optionals stdenv.isLinux ''
     addAutoPatchelfSearchPath "${torch-bin}/${python.sitePackages}/torch"
   '';
 
@@ -72,7 +72,7 @@ buildPythonPackage rec {
     # https://www.intel.com/content/www/us/en/developer/articles/license/onemkl-license-faq.html
     license = licenses.bsd3;
     sourceProvenance = with sourceTypes; [ binaryNativeCode ];
-    platforms = [ "aarch64-linux" "x86_64-linux" "aarch64-darwin" "x86_64-darwin" ];
+    platforms = [ "aarch64-linux" "x86_64-linux" "aarch64-darwin" ];
     maintainers = with maintainers; [ junjihashimoto ];
   };
 }
diff --git a/pkgs/development/python-modules/torchaudio/binary-hashes.nix b/pkgs/development/python-modules/torchaudio/binary-hashes.nix
index a15dffc4856a..379ea48073e4 100644
--- a/pkgs/development/python-modules/torchaudio/binary-hashes.nix
+++ b/pkgs/development/python-modules/torchaudio/binary-hashes.nix
@@ -6,86 +6,81 @@
 # To add a new version, run "prefetch.sh 'new-version'" to paste the generated file as follows.
 
 version : builtins.getAttr version {
-  "2.2.2" = {
+  "2.3.0" = {
     x86_64-linux-38 = {
-      name = "torchaudio-2.2.2-cp38-cp38-linux_x86_64.whl";
-      url = "https://download.pytorch.org/whl/cu121/torchaudio-2.2.2%2Bcu121-cp38-cp38-linux_x86_64.whl";
-      hash = "sha256-KPwkn2+sVuS9GbZdk7f6lSJ956D1WLY2YS7k3qE3tog=";
+      name = "torchaudio-2.3.0-cp38-cp38-linux_x86_64.whl";
+      url = "https://download.pytorch.org/whl/cu121/torchaudio-2.3.0%2Bcu121-cp38-cp38-linux_x86_64.whl";
+      hash = "sha256-Q/Iv/36izuH9uzAqE26aC51XFTUXaaYn1JDGfKzsCfQ=";
     };
     x86_64-linux-39 = {
-      name = "torchaudio-2.2.2-cp39-cp39-linux_x86_64.whl";
-      url = "https://download.pytorch.org/whl/cu121/torchaudio-2.2.2%2Bcu121-cp39-cp39-linux_x86_64.whl";
-      hash = "sha256-YzzBeuAiMH0HPyZhvK/z9Q2bPW99MukXMFRCAybiDRs=";
+      name = "torchaudio-2.3.0-cp39-cp39-linux_x86_64.whl";
+      url = "https://download.pytorch.org/whl/cu121/torchaudio-2.3.0%2Bcu121-cp39-cp39-linux_x86_64.whl";
+      hash = "sha256-4n2qE/jPQ8sLyq81TIEj7qlpBsg/FDNCZiCSvMH7atc=";
     };
     x86_64-linux-310 = {
-      name = "torchaudio-2.2.2-cp310-cp310-linux_x86_64.whl";
-      url = "https://download.pytorch.org/whl/cu121/torchaudio-2.2.2%2Bcu121-cp310-cp310-linux_x86_64.whl";
-      hash = "sha256-/eGFVNhP0AR1iPC87QPXcPZVPxeFGjtEE3kWShPJmwc=";
+      name = "torchaudio-2.3.0-cp310-cp310-linux_x86_64.whl";
+      url = "https://download.pytorch.org/whl/cu121/torchaudio-2.3.0%2Bcu121-cp310-cp310-linux_x86_64.whl";
+      hash = "sha256-OLSTk/jDItyqKdGeWsv1oLGXjPG3GURatnDx+0huOqY=";
     };
     x86_64-linux-311 = {
-      name = "torchaudio-2.2.2-cp311-cp311-linux_x86_64.whl";
-      url = "https://download.pytorch.org/whl/cu121/torchaudio-2.2.2%2Bcu121-cp311-cp311-linux_x86_64.whl";
-      hash = "sha256-DgdNBcIlizAU3aAu7wB60Xq0TP0B2XgMmpFOXZcqwAs=";
+      name = "torchaudio-2.3.0-cp311-cp311-linux_x86_64.whl";
+      url = "https://download.pytorch.org/whl/cu121/torchaudio-2.3.0%2Bcu121-cp311-cp311-linux_x86_64.whl";
+      hash = "sha256-jdZpE+ewjGPHayGwcGEwwkruTtStwLwS+NYt+YtcbqA=";
     };
-    x86_64-darwin-38 = {
-      name = "torchaudio-2.2.2-cp38-cp38-macosx_10_9_x86_64.whl";
-      url = "https://download.pytorch.org/whl/cpu/torchaudio-2.2.2-cp38-cp38-macosx_10_13_x86_64.whl";
-      hash = "sha256-jOTfBlqUmRHStngqpME2h++t6iP/x8em8V9+euXIlSQ=";
-    };
-    x86_64-darwin-39 = {
-      name = "torchaudio-2.2.2-cp39-cp39-macosx_10_9_x86_64.whl";
-      url = "https://download.pytorch.org/whl/cpu/torchaudio-2.2.2-cp39-cp39-macosx_10_13_x86_64.whl";
-      hash = "sha256-23CxOocaSUh72QQr8EsS90rtd7GofS++to0J2bZLxSg=";
-    };
-    x86_64-darwin-310 = {
-      name = "torchaudio-2.2.2-cp310-cp310-macosx_10_9_x86_64.whl";
-      url = "https://download.pytorch.org/whl/cpu/torchaudio-2.2.2-cp310-cp310-macosx_10_13_x86_64.whl";
-      hash = "sha256-sdWCAdEI6F2z41uEMZ8ziE9h8yfDjq2GkTIYyMGsw90=";
-    };
-    x86_64-darwin-311 = {
-      name = "torchaudio-2.2.2-cp311-cp311-macosx_10_9_x86_64.whl";
-      url = "https://download.pytorch.org/whl/cpu/torchaudio-2.2.2-cp311-cp311-macosx_10_13_x86_64.whl";
-      hash = "sha256-8agaUYo+hsAEEl64kfxDPOj7I0MpW11hLQ83sk4THv0=";
+    x86_64-linux-312 = {
+      name = "torchaudio-2.3.0-cp312-cp312-linux_x86_64.whl";
+      url = "https://download.pytorch.org/whl/cu121/torchaudio-2.3.0%2Bcu121-cp312-cp312-linux_x86_64.whl";
+      hash = "sha256-IA7PUlHYPRTook/X9V3odqrSVR/5jqvxzdhCeQXJXFU=";
     };
     aarch64-darwin-38 = {
-      name = "torchaudio-2.2.2-cp38-cp38-macosx_11_0_arm64.whl";
-      url = "https://download.pytorch.org/whl/cpu/torchaudio-2.2.2-cp38-cp38-macosx_11_0_arm64.whl";
-      hash = "sha256-s7ir4msGfpxKbj26FWuR16hSR+iN2nC3xDhZ9VuXjdw=";
+      name = "torchaudio-2.3.0-cp38-cp38-macosx_11_0_arm64.whl";
+      url = "https://download.pytorch.org/whl/cpu/torchaudio-2.3.0-cp38-cp38-macosx_11_0_arm64.whl";
+      hash = "sha256-e6kyZUVdw2M4XpjAz8rrWGt0Aa+KLIJIEe4UZhNKTzA=";
     };
     aarch64-darwin-39 = {
-      name = "torchaudio-2.2.2-cp39-cp39-macosx_11_0_arm64.whl";
-      url = "https://download.pytorch.org/whl/cpu/torchaudio-2.2.2-cp39-cp39-macosx_11_0_arm64.whl";
-      hash = "sha256-S3ioShib89pLlmN1zr3sxYSk3F9g4L3nIdc0Ae1crUU=";
+      name = "torchaudio-2.3.0-cp39-cp39-macosx_11_0_arm64.whl";
+      url = "https://download.pytorch.org/whl/cpu/torchaudio-2.3.0-cp39-cp39-macosx_11_0_arm64.whl";
+      hash = "sha256-9Lkzd28go2r13cV5aPyz2jTdA4gduNZ2Dz4RdoA7nPg=";
     };
     aarch64-darwin-310 = {
-      name = "torchaudio-2.2.2-cp310-cp310-macosx_11_0_arm64.whl";
-      url = "https://download.pytorch.org/whl/cpu/torchaudio-2.2.2-cp310-cp310-macosx_11_0_arm64.whl";
-      hash = "sha256-pSDhTqC6idncJ5IutGCfnqxcAcJ5gw4PIWucngF9Q4s=";
+      name = "torchaudio-2.3.0-cp310-cp310-macosx_11_0_arm64.whl";
+      url = "https://download.pytorch.org/whl/cpu/torchaudio-2.3.0-cp310-cp310-macosx_11_0_arm64.whl";
+      hash = "sha256-NCEI2oOqGaRXyaEosSBvrbYDdTtRzKAiufWFqsL0dUw=";
     };
     aarch64-darwin-311 = {
-      name = "torchaudio-2.2.2-cp311-cp311-macosx_11_0_arm64.whl";
-      url = "https://download.pytorch.org/whl/cpu/torchaudio-2.2.2-cp311-cp311-macosx_11_0_arm64.whl";
-      hash = "sha256-AUgvyFEX+F7kT4qo6cEbHAIjJhc+B0h4ntQrIZECk38=";
+      name = "torchaudio-2.3.0-cp311-cp311-macosx_11_0_arm64.whl";
+      url = "https://download.pytorch.org/whl/cpu/torchaudio-2.3.0-cp311-cp311-macosx_11_0_arm64.whl";
+      hash = "sha256-NByjBIzm7cxzFRmzAYfwsTrLJFxO/hb5JfafnVM1RuE=";
+    };
+    aarch64-darwin-312 = {
+      name = "torchaudio-2.3.0-cp312-cp312-macosx_11_0_arm64.whl";
+      url = "https://download.pytorch.org/whl/cpu/torchaudio-2.3.0-cp312-cp312-macosx_11_0_arm64.whl";
+      hash = "sha256-U1FEovu6lfuzuIMiT/z0R4jkzsurvknEoa4+enT3FIU=";
     };
     aarch64-linux-38 = {
-      name = "torchaudio-2.2.2-cp38-cp38-manylinux2014_aarch64.whl";
-      url = "https://download.pytorch.org/whl/cpu/torchaudio-2.2.2-cp38-cp38-linux_aarch64.whl";
-      hash = "sha256-T3VqbmZ92IQb8hoH6tPv7ap6J9VYUnecJm9vKhBkyZQ=";
+      name = "torchaudio-2.3.0-cp38-cp38-manylinux2014_aarch64.whl";
+      url = "https://download.pytorch.org/whl/cpu/torchaudio-2.3.0-cp38-cp38-linux_aarch64.whl";
+      hash = "sha256-7Rhm9QjcaJxPaC0zCy7UyDEI01hl5PuJQxgZNk2K2e0=";
     };
     aarch64-linux-39 = {
-      name = "torchaudio-2.2.2-cp39-cp39-manylinux2014_aarch64.whl";
-      url = "https://download.pytorch.org/whl/cpu/torchaudio-2.2.2-cp39-cp39-linux_aarch64.whl";
-      hash = "sha256-cj9OV7XQwSA1fKYM1VtObPrIRbwOzMtLQXpEqk68Ums=";
+      name = "torchaudio-2.3.0-cp39-cp39-manylinux2014_aarch64.whl";
+      url = "https://download.pytorch.org/whl/cpu/torchaudio-2.3.0-cp39-cp39-linux_aarch64.whl";
+      hash = "sha256-0kO7ih7iY8LNr7n+7RVpw3QtgTVzHo94GN4S9ODIPig=";
     };
     aarch64-linux-310 = {
-      name = "torchaudio-2.2.2-cp310-cp310-manylinux2014_aarch64.whl";
-      url = "https://download.pytorch.org/whl/cpu/torchaudio-2.2.2-cp310-cp310-linux_aarch64.whl";
-      hash = "sha256-sPOOfTVIkU14qvwn/wD3cBsaUL/N3FiWX1RfySzNSmY=";
+      name = "torchaudio-2.3.0-cp310-cp310-manylinux2014_aarch64.whl";
+      url = "https://download.pytorch.org/whl/cpu/torchaudio-2.3.0-cp310-cp310-linux_aarch64.whl";
+      hash = "sha256-5btQt6SHTtlwhsnlFt2QsQPZVO3LXtSzb0/CLEAApac=";
     };
     aarch64-linux-311 = {
-      name = "torchaudio-2.2.2-cp311-cp311-manylinux2014_aarch64.whl";
-      url = "https://download.pytorch.org/whl/cpu/torchaudio-2.2.2-cp311-cp311-linux_aarch64.whl";
-      hash = "sha256-CgOki21V0X1I9Bmn8dDUAY1IoEx2WFwWqbXmkoH5L5Q=";
+      name = "torchaudio-2.3.0-cp311-cp311-manylinux2014_aarch64.whl";
+      url = "https://download.pytorch.org/whl/cpu/torchaudio-2.3.0-cp311-cp311-linux_aarch64.whl";
+      hash = "sha256-Ye2wKunA7+pDmfnB+JlgETayTzXUMFSChOqOr2zL474=";
+    };
+    aarch64-linux-312 = {
+      name = "torchaudio-2.3.0-cp312-cp312-manylinux2014_aarch64.whl";
+      url = "https://download.pytorch.org/whl/cpu/torchaudio-2.3.0-cp312-cp312-linux_aarch64.whl";
+      hash = "sha256-ZoqLaU5VIs/yjNXgLQGqG3XOlAqp+0BICJK9xiOxc10=";
     };
   };
 }
diff --git a/pkgs/development/python-modules/torchaudio/default.nix b/pkgs/development/python-modules/torchaudio/default.nix
index 3ca33cc36b65..ff56db53a675 100644
--- a/pkgs/development/python-modules/torchaudio/default.nix
+++ b/pkgs/development/python-modules/torchaudio/default.nix
@@ -15,14 +15,14 @@
 
 buildPythonPackage rec {
   pname = "torchaudio";
-  version = "2.2.2";
+  version = "2.3.0";
   pyproject = true;
 
   src = fetchFromGitHub {
     owner = "pytorch";
     repo = "audio";
     rev = "refs/tags/v${version}";
-    hash = "sha256-rW4xLUFTpGpUeMnTBdrI/2OjgZX1ihK0EfcVK6snmpk=";
+    hash = "sha256-8EPoZ/dfxrQjdtE0rZ+2pOaXxlyhRuweYnVuA9i0Fgc=";
   };
 
   patches = [
@@ -82,7 +82,7 @@ buildPythonPackage rec {
     homepage = "https://pytorch.org/";
     changelog = "https://github.com/pytorch/audio/releases/tag/v${version}";
     license = licenses.bsd2;
-    platforms = platforms.unix;
+    platforms = [ "aarch64-darwin" "aarch64-linux" "x86_64-linux" ];
     maintainers = with maintainers; [ junjihashimoto ];
   };
 }
diff --git a/pkgs/development/python-modules/torchaudio/prefetch.sh b/pkgs/development/python-modules/torchaudio/prefetch.sh
index 89422ff7c65e..e4a9b9c90f6c 100755
--- a/pkgs/development/python-modules/torchaudio/prefetch.sh
+++ b/pkgs/development/python-modules/torchaudio/prefetch.sh
@@ -15,18 +15,17 @@ url_and_key_list=(
     "x86_64-linux-39 $linux_cuda_bucket/torchaudio-${version}%2B${linux_cuda_version}-cp39-cp39-linux_x86_64.whl torchaudio-${version}-cp39-cp39-linux_x86_64.whl"
     "x86_64-linux-310 $linux_cuda_bucket/torchaudio-${version}%2B${linux_cuda_version}-cp310-cp310-linux_x86_64.whl torchaudio-${version}-cp310-cp310-linux_x86_64.whl"
     "x86_64-linux-311 $linux_cuda_bucket/torchaudio-${version}%2B${linux_cuda_version}-cp311-cp311-linux_x86_64.whl torchaudio-${version}-cp311-cp311-linux_x86_64.whl"
-    "x86_64-darwin-38 $darwin_bucket/torchaudio-${version}-cp38-cp38-macosx_10_13_x86_64.whl torchaudio-${version}-cp38-cp38-macosx_10_9_x86_64.whl"
-    "x86_64-darwin-39 $darwin_bucket/torchaudio-${version}-cp39-cp39-macosx_10_13_x86_64.whl torchaudio-${version}-cp39-cp39-macosx_10_9_x86_64.whl"
-    "x86_64-darwin-310 $darwin_bucket/torchaudio-${version}-cp310-cp310-macosx_10_13_x86_64.whl torchaudio-${version}-cp310-cp310-macosx_10_9_x86_64.whl"
-    "x86_64-darwin-311 $darwin_bucket/torchaudio-${version}-cp311-cp311-macosx_10_13_x86_64.whl torchaudio-${version}-cp311-cp311-macosx_10_9_x86_64.whl"
+    "x86_64-linux-312 $linux_cuda_bucket/torchaudio-${version}%2B${linux_cuda_version}-cp312-cp312-linux_x86_64.whl torchaudio-${version}-cp312-cp312-linux_x86_64.whl"
     "aarch64-darwin-38 $darwin_bucket/torchaudio-${version}-cp38-cp38-macosx_11_0_arm64.whl torchaudio-${version}-cp38-cp38-macosx_11_0_arm64.whl"
     "aarch64-darwin-39 $darwin_bucket/torchaudio-${version}-cp39-cp39-macosx_11_0_arm64.whl torchaudio-${version}-cp39-cp39-macosx_11_0_arm64.whl"
     "aarch64-darwin-310 $darwin_bucket/torchaudio-${version}-cp310-cp310-macosx_11_0_arm64.whl torchaudio-${version}-cp310-cp310-macosx_11_0_arm64.whl"
     "aarch64-darwin-311 $darwin_bucket/torchaudio-${version}-cp311-cp311-macosx_11_0_arm64.whl torchaudio-${version}-cp311-cp311-macosx_11_0_arm64.whl"
+    "aarch64-darwin-312 $darwin_bucket/torchaudio-${version}-cp312-cp312-macosx_11_0_arm64.whl torchaudio-${version}-cp312-cp312-macosx_11_0_arm64.whl"
     "aarch64-linux-38 $linux_cpu_bucket/torchaudio-${version}-cp38-cp38-linux_aarch64.whl torchaudio-${version}-cp38-cp38-manylinux2014_aarch64.whl"
     "aarch64-linux-39 $linux_cpu_bucket/torchaudio-${version}-cp39-cp39-linux_aarch64.whl torchaudio-${version}-cp39-cp39-manylinux2014_aarch64.whl"
     "aarch64-linux-310 $linux_cpu_bucket/torchaudio-${version}-cp310-cp310-linux_aarch64.whl torchaudio-${version}-cp310-cp310-manylinux2014_aarch64.whl"
     "aarch64-linux-311 $linux_cpu_bucket/torchaudio-${version}-cp311-cp311-linux_aarch64.whl torchaudio-${version}-cp311-cp311-manylinux2014_aarch64.whl"
+    "aarch64-linux-312 $linux_cpu_bucket/torchaudio-${version}-cp312-cp312-linux_aarch64.whl torchaudio-${version}-cp312-cp312-manylinux2014_aarch64.whl"
 )
 
 hashfile=binary-hashes-"$version".nix
diff --git a/pkgs/development/python-modules/torchmetrics/default.nix b/pkgs/development/python-modules/torchmetrics/default.nix
index e5c05c6dd497..c9485359cb87 100644
--- a/pkgs/development/python-modules/torchmetrics/default.nix
+++ b/pkgs/development/python-modules/torchmetrics/default.nix
@@ -8,6 +8,7 @@
 , scikit-learn
 , scikit-image
 , packaging
+, pretty-errors
 , psutil
 , py-deprecate
 , torch
@@ -20,7 +21,7 @@
 
 let
   pname = "torchmetrics";
-  version = "1.3.2";
+  version = "1.4.0.post0";
 in
 buildPythonPackage {
   inherit pname version;
@@ -32,13 +33,14 @@ buildPythonPackage {
     owner = "Lightning-AI";
     repo = "torchmetrics";
     rev = "refs/tags/v${version}";
-    hash = "sha256-0lverGF8HVlnwWmnCjScWoSfWPLZlMF2cHDG+uxNCCQ=";
+    hash = "sha256-tQqlLfdk8rSJqwR3rC7kqnM+pLFYZSPHfI7RmIi2Iq4=";
   };
 
-  propagatedBuildInputs = [
+  dependencies = [
     numpy
     lightning-utilities
     packaging
+    pretty-errors
     py-deprecate
   ];
 
diff --git a/pkgs/development/python-modules/torchrl/default.nix b/pkgs/development/python-modules/torchrl/default.nix
index 591e59302ea6..76592f6adf7a 100644
--- a/pkgs/development/python-modules/torchrl/default.nix
+++ b/pkgs/development/python-modules/torchrl/default.nix
@@ -12,13 +12,22 @@
 , ale-py
 , gym
 , pygame
+, torchsnapshot
 , gymnasium
 , mujoco
+, h5py
+, huggingface-hub
+, minari
+, pandas
+, pillow
+, requests
+, scikit-learn
+, torchvision
+, tqdm
 , moviepy
 , git
 , hydra-core
 , tensorboard
-, tqdm
 , wandb
 , packaging
 , tensordict
@@ -27,11 +36,12 @@
 , pytestCheckHook
 , pyyaml
 , scipy
+, stdenv
 }:
 
 buildPythonPackage rec {
   pname = "torchrl";
-  version = "0.3.1";
+  version = "0.4.0";
   pyproject = true;
 
   disabled = pythonOlder "3.8";
@@ -40,17 +50,17 @@ buildPythonPackage rec {
     owner = "pytorch";
     repo = "rl";
     rev = "refs/tags/v${version}";
-    hash = "sha256-lETW996IKPUGgZpe+cyzrXvVmDSwj5G4XFreFmGxReQ=";
+    hash = "sha256-8wSyyErqveP9zZS/UGvWVBYyylu9BuA447GEjXIzBIk=";
   };
 
-  nativeBuildInputs = [
+  build-system = [
     ninja
     setuptools
     wheel
     which
   ];
 
-  propagatedBuildInputs = [
+  dependencies = [
     cloudpickle
     numpy
     packaging
@@ -64,10 +74,24 @@ buildPythonPackage rec {
       gym
       pygame
     ];
+    checkpointing = [
+      torchsnapshot
+    ];
     gym-continuous = [
       gymnasium
       mujoco
     ];
+    offline-data = [
+      h5py
+      huggingface-hub
+      minari
+      pandas
+      pillow
+      requests
+      scikit-learn
+      torchvision
+      tqdm
+    ];
     rendering = [
       moviepy
     ];
@@ -103,6 +127,7 @@ buildPythonPackage rec {
     pytestCheckHook
     pyyaml
     scipy
+    torchvision
   ]
   ++ passthru.optional-dependencies.atari
   ++ passthru.optional-dependencies.gym-continuous
@@ -137,5 +162,7 @@ buildPythonPackage rec {
     changelog = "https://github.com/pytorch/rl/releases/tag/v${version}";
     license = licenses.mit;
     maintainers = with maintainers; [ GaetanLepage ];
+    # ~3k tests fail with: RuntimeError: internal error
+    broken = stdenv.isLinux && stdenv.isAarch64;
   };
 }
diff --git a/pkgs/development/python-modules/torchsnapshot/default.nix b/pkgs/development/python-modules/torchsnapshot/default.nix
new file mode 100644
index 000000000000..62f6fd6b24de
--- /dev/null
+++ b/pkgs/development/python-modules/torchsnapshot/default.nix
@@ -0,0 +1,71 @@
+{
+  lib,
+  buildPythonPackage,
+  pythonOlder,
+  fetchFromGitHub,
+  setuptools,
+  wheel,
+  aiofiles,
+  aiohttp,
+  importlib-metadata,
+  nest-asyncio,
+  psutil,
+  pyyaml,
+  torch,
+  typing-extensions,
+  pytest-asyncio,
+  pytestCheckHook,
+  pythonAtLeast,
+  stdenv,
+}:
+
+buildPythonPackage rec {
+  pname = "torchsnapshot";
+  version = "0.1.0";
+  pyproject = true;
+
+  disabled = pythonOlder "3.7";
+
+  src = fetchFromGitHub {
+    owner = "pytorch";
+    repo = "torchsnapshot";
+    rev = "refs/tags/${version}";
+    hash = "sha256-F8OaxLH8BL6MPNLFv1hBuVmeEdnEQ5w2Qny6by1wP6k=";
+  };
+
+  build-system = [
+    setuptools
+    wheel
+  ];
+
+  dependencies = [
+    aiofiles
+    aiohttp
+    importlib-metadata
+    nest-asyncio
+    psutil
+    pyyaml
+    torch
+    typing-extensions
+  ];
+
+  pythonImportsCheck = [ "torchsnapshot" ];
+
+  nativeCheckInputs = [
+    pytest-asyncio
+    pytestCheckHook
+  ];
+
+  meta = with lib; {
+    description = "A performant, memory-efficient checkpointing library for PyTorch applications, designed with large, complex distributed workloads in mind";
+    homepage = "https://github.com/pytorch/torchsnapshot/";
+    changelog = "https://github.com/pytorch/torchsnapshot/releases/tag/${version}";
+    license = licenses.bsd3;
+    maintainers = with maintainers; [ GaetanLepage ];
+    broken =
+      # https://github.com/pytorch/torchsnapshot/issues/175
+      pythonAtLeast "3.12"
+      # ModuleNotFoundError: No module named 'torch._C._distributed_c10d'; 'torch._C' is not a package
+      || stdenv.isDarwin;
+  };
+}
diff --git a/pkgs/development/python-modules/torchvision/bin.nix b/pkgs/development/python-modules/torchvision/bin.nix
index 70026bb363df..eda64ff4a038 100644
--- a/pkgs/development/python-modules/torchvision/bin.nix
+++ b/pkgs/development/python-modules/torchvision/bin.nix
@@ -16,7 +16,7 @@ let
   pyVerNoDot = builtins.replaceStrings [ "." ] [ "" ] python.pythonVersion;
   srcs = import ./binary-hashes.nix version;
   unsupported = throw "Unsupported system";
-  version = "0.17.2";
+  version = "0.18.0";
 in buildPythonPackage {
   inherit version;
 
@@ -26,7 +26,7 @@ in buildPythonPackage {
 
   src = fetchurl srcs."${stdenv.system}-${pyVerNoDot}" or unsupported;
 
-  disabled = (pythonOlder "3.8") || (pythonAtLeast "3.12");
+  disabled = (pythonOlder "3.8") || (pythonAtLeast "3.13");
 
   # Note that we don't rely on config.cudaSupport here, because the Linux wheels all come built with CUDA support.
   buildInputs = with cudaPackages; lib.optionals stdenv.isLinux [
@@ -63,7 +63,7 @@ in buildPythonPackage {
     # https://www.intel.com/content/www/us/en/developer/articles/license/onemkl-license-faq.html
     license = licenses.bsd3;
     sourceProvenance = with sourceTypes; [ binaryNativeCode ];
-    platforms = [ "aarch64-darwin" "x86_64-darwin" "x86_64-linux" ];
+    platforms = [ "aarch64-darwin" "x86_64-linux" "aarch64-linux" ];
     maintainers = with maintainers; [ junjihashimoto ];
   };
 }
diff --git a/pkgs/development/python-modules/torchvision/binary-hashes.nix b/pkgs/development/python-modules/torchvision/binary-hashes.nix
index 3a5654b18ca7..d1dfd0c46ed5 100644
--- a/pkgs/development/python-modules/torchvision/binary-hashes.nix
+++ b/pkgs/development/python-modules/torchvision/binary-hashes.nix
@@ -6,66 +6,81 @@
 # To add a new version, run "prefetch.sh 'new-version'" to paste the generated file as follows.
 
 version : builtins.getAttr version {
-  "0.17.2" = {
+  "0.18.0" = {
     x86_64-linux-38 = {
-      name = "torchvision-0.17.2-cp38-cp38-linux_x86_64.whl";
-      url = "https://download.pytorch.org/whl/cu121/torchvision-0.17.2%2Bcu121-cp38-cp38-linux_x86_64.whl";
-      hash = "sha256-3450y7tN4KYPEc18KNggEWAnzTlJiT+XxVtvEjJr168=";
+      name = "torchvision-0.18.0-cp38-cp38-linux_x86_64.whl";
+      url = "https://download.pytorch.org/whl/cu121/torchvision-0.18.0%2Bcu121-cp38-cp38-linux_x86_64.whl";
+      hash = "sha256-wkg7LMYiePuqa2fSqdgI0kUET4tkqCFZbq5o7GoNXtA=";
     };
     x86_64-linux-39 = {
-      name = "torchvision-0.17.2-cp39-cp39-linux_x86_64.whl";
-      url = "https://download.pytorch.org/whl/cu121/torchvision-0.17.2%2Bcu121-cp39-cp39-linux_x86_64.whl";
-      hash = "sha256-839ZLjEovz2ZloraWhKPEY+a7R2rYJ4nKscjEUb8aEM=";
+      name = "torchvision-0.18.0-cp39-cp39-linux_x86_64.whl";
+      url = "https://download.pytorch.org/whl/cu121/torchvision-0.18.0%2Bcu121-cp39-cp39-linux_x86_64.whl";
+      hash = "sha256-G/4MZ/1UYaOlk/jxfhVE8Hpr1mhuFVIA3SRJRwdPzVE=";
     };
     x86_64-linux-310 = {
-      name = "torchvision-0.17.2-cp310-cp310-linux_x86_64.whl";
-      url = "https://download.pytorch.org/whl/cu121/torchvision-0.17.2%2Bcu121-cp310-cp310-linux_x86_64.whl";
-      hash = "sha256-wPMlY1+INPpV5pq2EHX7K7y7RTlamFu6HbN4sVYnEEs=";
+      name = "torchvision-0.18.0-cp310-cp310-linux_x86_64.whl";
+      url = "https://download.pytorch.org/whl/cu121/torchvision-0.18.0%2Bcu121-cp310-cp310-linux_x86_64.whl";
+      hash = "sha256-E+G0jcXOQcy4EAqz3Sb98x2PHpBOzyhlrFJEkwE9DfU=";
     };
     x86_64-linux-311 = {
-      name = "torchvision-0.17.2-cp311-cp311-linux_x86_64.whl";
-      url = "https://download.pytorch.org/whl/cu121/torchvision-0.17.2%2Bcu121-cp311-cp311-linux_x86_64.whl";
-      hash = "sha256-BZ+GocjSsnayZshKj1qSzIQm1DwqLCSNxzwUCrOoIvM=";
+      name = "torchvision-0.18.0-cp311-cp311-linux_x86_64.whl";
+      url = "https://download.pytorch.org/whl/cu121/torchvision-0.18.0%2Bcu121-cp311-cp311-linux_x86_64.whl";
+      hash = "sha256-HlFneVIPySFX1sskWsD9P3mHL+gchLhZOo8umYEG9bE=";
     };
-    x86_64-darwin-38 = {
-      name = "torchvision-0.17.2-cp38-cp38-macosx_10_9_x86_64.whl";
-      url = "https://download.pytorch.org/whl/cpu/torchvision-0.17.2-cp38-cp38-macosx_10_13_x86_64.whl";
-      hash = "sha256-uDqsjXj0iYEUbVghaNdbbJR8+wp2k/duIZ8ZJvbllaM=";
-    };
-    x86_64-darwin-39 = {
-      name = "torchvision-0.17.2-cp39-cp39-macosx_10_9_x86_64.whl";
-      url = "https://download.pytorch.org/whl/cpu/torchvision-0.17.2-cp39-cp39-macosx_10_13_x86_64.whl";
-      hash = "sha256-SGi7+lV1jIEH5poOfdXne4kFYDXNOLdnrVuYzbccDw0=";
-    };
-    x86_64-darwin-310 = {
-      name = "torchvision-0.17.2-cp310-cp310-macosx_10_9_x86_64.whl";
-      url = "https://download.pytorch.org/whl/cpu/torchvision-0.17.2-cp310-cp310-macosx_10_13_x86_64.whl";
-      hash = "sha256-HykQ/jwhrWh1snINRvrYNbLkszbpVT0xyjZNJMkLHU8=";
-    };
-    x86_64-darwin-311 = {
-      name = "torchvision-0.17.2-cp311-cp311-macosx_10_9_x86_64.whl";
-      url = "https://download.pytorch.org/whl/cpu/torchvision-0.17.2-cp311-cp311-macosx_10_13_x86_64.whl";
-      hash = "sha256-m4PlXufQoXBPUrnArIc4jnptHZimveews1+atU172lQ=";
+    x86_64-linux-312 = {
+      name = "torchvision-0.18.0-cp312-cp312-linux_x86_64.whl";
+      url = "https://download.pytorch.org/whl/cu121/torchvision-0.18.0%2Bcu121-cp312-cp312-linux_x86_64.whl";
+      hash = "sha256-cA9gGb6+6eDuiwvL2xWIgJyUouuUeh/eLgatw0tg2io=";
     };
     aarch64-darwin-38 = {
-      name = "torchvision-0.17.2-cp38-cp38-macosx_11_0_arm64.whl";
-      url = "https://download.pytorch.org/whl/cpu/torchvision-0.17.2-cp38-cp38-macosx_11_0_arm64.whl";
-      hash = "sha256-Hs5AVX4SLXmXWGCgBap+Kp4ubDUKA+eKAOwUUAgzEv0=";
+      name = "torchvision-0.18.0-cp38-cp38-macosx_11_0_arm64.whl";
+      url = "https://download.pytorch.org/whl/cpu/torchvision-0.18.0-cp38-cp38-macosx_11_0_arm64.whl";
+      hash = "sha256-IRWhkGwBX12pzu3ECpgzE7D9biyKFxCKkpkXBvUfaYc=";
     };
     aarch64-darwin-39 = {
-      name = "torchvision-0.17.2-cp39-cp39-macosx_11_0_arm64.whl";
-      url = "https://download.pytorch.org/whl/cpu/torchvision-0.17.2-cp39-cp39-macosx_11_0_arm64.whl";
-      hash = "sha256-79bQ3QZo4V0Bos/63HQGhDOzLLz1aS4MSqFfxcslDOc=";
+      name = "torchvision-0.18.0-cp39-cp39-macosx_11_0_arm64.whl";
+      url = "https://download.pytorch.org/whl/cpu/torchvision-0.18.0-cp39-cp39-macosx_11_0_arm64.whl";
+      hash = "sha256-deIuz0ShO4+VuK1CHAJhKC2FnGGBa62soZWeBzzN1pE=";
     };
     aarch64-darwin-310 = {
-      name = "torchvision-0.17.2-cp310-cp310-macosx_11_0_arm64.whl";
-      url = "https://download.pytorch.org/whl/cpu/torchvision-0.17.2-cp310-cp310-macosx_11_0_arm64.whl";
-      hash = "sha256-7MHFA/qKVPurd34Gp8IoAyuKt47+vzWyi8jyL1RPUfE=";
+      name = "torchvision-0.18.0-cp310-cp310-macosx_11_0_arm64.whl";
+      url = "https://download.pytorch.org/whl/cpu/torchvision-0.18.0-cp310-cp310-macosx_11_0_arm64.whl";
+      hash = "sha256-3WFiij0YnGhSoS3F7UzS7s5m0tZ/Nahmyxbx3LBsjGI=";
     };
     aarch64-darwin-311 = {
-      name = "torchvision-0.17.2-cp311-cp311-macosx_11_0_arm64.whl";
-      url = "https://download.pytorch.org/whl/cpu/torchvision-0.17.2-cp311-cp311-macosx_11_0_arm64.whl";
-      hash = "sha256-4DEAShvEMsmAp71kL2wYmj78MW5CP8MLVWmDcWak4o0=";
+      name = "torchvision-0.18.0-cp311-cp311-macosx_11_0_arm64.whl";
+      url = "https://download.pytorch.org/whl/cpu/torchvision-0.18.0-cp311-cp311-macosx_11_0_arm64.whl";
+      hash = "sha256-aJalIWi+/hEF+zyTNShzkO0ifnHR5OxNaLYuijCZ/Ak=";
+    };
+    aarch64-darwin-312 = {
+      name = "torchvision-0.18.0-cp312-cp312-macosx_11_0_arm64.whl";
+      url = "https://download.pytorch.org/whl/cpu/torchvision-0.18.0-cp312-cp312-macosx_11_0_arm64.whl";
+      hash = "sha256-652DwOHbtU7LD7BMh/eGMz46b7i5xACsp8MQgfmqVwc=";
+    };
+    aarch64-linux-38 = {
+      name = "torchvision-0.18.0-cp38-cp38-linux_aarch64.whl";
+      url = "https://download.pytorch.org/whl/cpu/torchvision-0.18.0-cp38-cp38-linux_aarch64.whl";
+      hash = "sha256-kl0KgszPb5hsGLKbQ5KpQttly9tzwToSnISTgi65428=";
+    };
+    aarch64-linux-39 = {
+      name = "torchvision-0.18.0-cp39-cp39-linux_aarch64.whl";
+      url = "https://download.pytorch.org/whl/cpu/torchvision-0.18.0-cp39-cp39-linux_aarch64.whl";
+      hash = "sha256-Nu/YcAHGvuI4PgQ+RqAlr/sDF5dHyPR3e5kYUn/851Y=";
+    };
+    aarch64-linux-310 = {
+      name = "torchvision-0.18.0-cp310-cp310-linux_aarch64.whl";
+      url = "https://download.pytorch.org/whl/cpu/torchvision-0.18.0-cp310-cp310-linux_aarch64.whl";
+      hash = "sha256-Uzf2rPof6VnVyzQNAaAGFNazHOekgkzLlUNahcUnO5U=";
+    };
+    aarch64-linux-311 = {
+      name = "torchvision-0.18.0-cp311-cp311-linux_aarch64.whl";
+      url = "https://download.pytorch.org/whl/cpu/torchvision-0.18.0-cp311-cp311-linux_aarch64.whl";
+      hash = "sha256-5aJNYgzqFKS7ifJKorUGIwwKFqOtpX/FOtgM/SVqISg=";
+    };
+    aarch64-linux-312 = {
+      name = "torchvision-0.18.0-cp312-cp312-linux_aarch64.whl";
+      url = "https://download.pytorch.org/whl/cpu/torchvision-0.18.0-cp312-cp312-linux_aarch64.whl";
+      hash = "sha256-qWSvvH3fUKRrlBR39sNXKbQW3u3ROXVr79SIJF4uIm0=";
     };
   };
 }
diff --git a/pkgs/development/python-modules/torchvision/default.nix b/pkgs/development/python-modules/torchvision/default.nix
index 496a8c08710b..6ae31186731a 100644
--- a/pkgs/development/python-modules/torchvision/default.nix
+++ b/pkgs/development/python-modules/torchvision/default.nix
@@ -17,7 +17,7 @@ let
   inherit (cudaPackages) backendStdenv;
 
   pname = "torchvision";
-  version = "0.17.2";
+  version = "0.18.0";
 in
 buildPythonPackage {
   inherit pname version;
@@ -26,7 +26,7 @@ buildPythonPackage {
     owner = "pytorch";
     repo = "vision";
     rev = "refs/tags/v${version}";
-    hash = "sha256-Y7TkdbdrdiXQO2pBkUePCLw1EYQjsAqkV2OTMzxbU78=";
+    hash = "sha256-VWbalbLSV5a+t9eAO7QzQ/e11KkhGg6MHgd5vXcAUXc=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/python-modules/torchvision/prefetch.sh b/pkgs/development/python-modules/torchvision/prefetch.sh
index e80718a50530..47ccbd935c8a 100755
--- a/pkgs/development/python-modules/torchvision/prefetch.sh
+++ b/pkgs/development/python-modules/torchvision/prefetch.sh
@@ -14,14 +14,17 @@ url_and_key_list=(
   "x86_64-linux-39 $linux_bucket/torchvision-${version}%2B${linux_cuda_version}-cp39-cp39-linux_x86_64.whl torchvision-${version}-cp39-cp39-linux_x86_64.whl"
   "x86_64-linux-310 $linux_bucket/torchvision-${version}%2B${linux_cuda_version}-cp310-cp310-linux_x86_64.whl torchvision-${version}-cp310-cp310-linux_x86_64.whl"
   "x86_64-linux-311 $linux_bucket/torchvision-${version}%2B${linux_cuda_version}-cp311-cp311-linux_x86_64.whl torchvision-${version}-cp311-cp311-linux_x86_64.whl"
-  "x86_64-darwin-38 $darwin_bucket/torchvision-${version}-cp38-cp38-macosx_10_13_x86_64.whl torchvision-${version}-cp38-cp38-macosx_10_9_x86_64.whl"
-  "x86_64-darwin-39 $darwin_bucket/torchvision-${version}-cp39-cp39-macosx_10_13_x86_64.whl torchvision-${version}-cp39-cp39-macosx_10_9_x86_64.whl"
-  "x86_64-darwin-310 $darwin_bucket/torchvision-${version}-cp310-cp310-macosx_10_13_x86_64.whl torchvision-${version}-cp310-cp310-macosx_10_9_x86_64.whl"
-  "x86_64-darwin-311 $darwin_bucket/torchvision-${version}-cp311-cp311-macosx_10_13_x86_64.whl torchvision-${version}-cp311-cp311-macosx_10_9_x86_64.whl"
+  "x86_64-linux-312 $linux_bucket/torchvision-${version}%2B${linux_cuda_version}-cp312-cp312-linux_x86_64.whl torchvision-${version}-cp312-cp312-linux_x86_64.whl"
   "aarch64-darwin-38 $darwin_bucket/torchvision-${version}-cp38-cp38-macosx_11_0_arm64.whl torchvision-${version}-cp38-cp38-macosx_11_0_arm64.whl"
   "aarch64-darwin-39 $darwin_bucket/torchvision-${version}-cp39-cp39-macosx_11_0_arm64.whl torchvision-${version}-cp39-cp39-macosx_11_0_arm64.whl"
   "aarch64-darwin-310 $darwin_bucket/torchvision-${version}-cp310-cp310-macosx_11_0_arm64.whl torchvision-${version}-cp310-cp310-macosx_11_0_arm64.whl"
   "aarch64-darwin-311 $darwin_bucket/torchvision-${version}-cp311-cp311-macosx_11_0_arm64.whl torchvision-${version}-cp311-cp311-macosx_11_0_arm64.whl"
+  "aarch64-darwin-312 $darwin_bucket/torchvision-${version}-cp312-cp312-macosx_11_0_arm64.whl torchvision-${version}-cp312-cp312-macosx_11_0_arm64.whl"
+  "aarch64-linux-38 $darwin_bucket/torchvision-${version}-cp38-cp38-linux_aarch64.whl torchvision-${version}-cp38-cp38-linux_aarch64.whl"
+  "aarch64-linux-39 $darwin_bucket/torchvision-${version}-cp39-cp39-linux_aarch64.whl torchvision-${version}-cp39-cp39-linux_aarch64.whl"
+  "aarch64-linux-310 $darwin_bucket/torchvision-${version}-cp310-cp310-linux_aarch64.whl torchvision-${version}-cp310-cp310-linux_aarch64.whl"
+  "aarch64-linux-311 $darwin_bucket/torchvision-${version}-cp311-cp311-linux_aarch64.whl torchvision-${version}-cp311-cp311-linux_aarch64.whl"
+  "aarch64-linux-312 $darwin_bucket/torchvision-${version}-cp312-cp312-linux_aarch64.whl torchvision-${version}-cp312-cp312-linux_aarch64.whl"
 )
 
 hashfile="binary-hashes-$version.nix"
diff --git a/pkgs/development/python-modules/total-connect-client/default.nix b/pkgs/development/python-modules/total-connect-client/default.nix
index e7b85cf199b6..6770e65194cc 100644
--- a/pkgs/development/python-modules/total-connect-client/default.nix
+++ b/pkgs/development/python-modules/total-connect-client/default.nix
@@ -1,41 +1,34 @@
-{ lib
-, buildPythonPackage
-, fetchFromGitHub
-, pytestCheckHook
-, pythonOlder
-, setuptools
-, zeep
+{
+  lib,
+  buildPythonPackage,
+  fetchFromGitHub,
+  pytestCheckHook,
+  pythonOlder,
+  setuptools,
+  zeep,
 }:
 
 buildPythonPackage rec {
   pname = "total-connect-client";
-  version = "2024.4";
+  version = "2024.5";
   pyproject = true;
 
-  disabled = pythonOlder "3.7";
+  disabled = pythonOlder "3.10";
 
   src = fetchFromGitHub {
     owner = "craigjmidwinter";
     repo = "total-connect-client";
     rev = "refs/tags/${version}";
-    hash = "sha256-LuPyhidbAzt/AU5WuXyxggGxjm9yArHsbn6iAaccMEc=";
+    hash = "sha256-NGiI4gn59U7NiRYtB6UydxOu+lVtmbl8qF3nbAjiYwk=";
   };
 
-  build-system = [
-    setuptools
-  ];
+  build-system = [ setuptools ];
 
-  dependencies = [
-    zeep
-  ];
+  dependencies = [ zeep ];
 
-  nativeCheckInputs = [
-    pytestCheckHook
-  ];
+  nativeCheckInputs = [ pytestCheckHook ];
 
-  pythonImportsCheck = [
-    "total_connect_client"
-  ];
+  pythonImportsCheck = [ "total_connect_client" ];
 
   meta = with lib; {
     description = "Interact with Total Connect 2 alarm systems";
diff --git a/pkgs/development/python-modules/tpm2-pytss/default.nix b/pkgs/development/python-modules/tpm2-pytss/default.nix
index 7b5fd56b0a10..0346943304a2 100644
--- a/pkgs/development/python-modules/tpm2-pytss/default.nix
+++ b/pkgs/development/python-modules/tpm2-pytss/default.nix
@@ -1,5 +1,6 @@
 { lib
 , stdenv
+, fetchurl
 , substituteAll
 , buildPythonPackage
 , fetchPypi
@@ -37,6 +38,10 @@ buildPythonPackage rec {
   patches = [
     # Fix hardcoded `fapi-config.json` configuration path
     ./fapi-config.patch
+    (fetchurl {
+      url = "https://github.com/tpm2-software/tpm2-pytss/pull/571/commits/b02fdc8e259fe977c1065389c042be69e2985bdf.patch";
+      hash = "sha256-+jZFv+s9p52JxtUcNeJx7ayzKDVtPoQSSGgyZqPDuEc=";
+    })
   ] ++ lib.optionals isCross [
     # pytss will regenerate files from headers of tpm2-tss.
     # Those headers are fed through a compiler via pycparser. pycparser expects `cpp`
diff --git a/pkgs/development/python-modules/trafilatura/default.nix b/pkgs/development/python-modules/trafilatura/default.nix
index 35212c343443..a8183bf3f841 100644
--- a/pkgs/development/python-modules/trafilatura/default.nix
+++ b/pkgs/development/python-modules/trafilatura/default.nix
@@ -1,35 +1,43 @@
-{ lib
-, buildPythonPackage
-, fetchPypi
-, pytestCheckHook
-, pythonOlder
-, certifi
-, charset-normalizer
-, courlan
-, htmldate
-, justext
-, lxml
-, urllib3
-, setuptools
+{
+  lib,
+  buildPythonPackage,
+  certifi,
+  charset-normalizer,
+  courlan,
+  fetchPypi,
+  htmldate,
+  justext,
+  lxml,
+  pytestCheckHook,
+  pythonOlder,
+  setuptools,
+  urllib3,
 }:
 
 buildPythonPackage rec {
   pname = "trafilatura";
-  version = "1.8.1";
+  version = "1.9.0";
   pyproject = true;
 
   disabled = pythonOlder "3.9";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-a4eN/b1cXftV0Pgwfyt9wVrDRYBU90hh/5ihcvXjhyA=";
+    hash = "sha256-5oM9KauKE+2FOTfXyR5oaLxi774QIUrCsQZDbdI9FBI=";
   };
 
-  nativeBuildInputs = [
-    setuptools
-  ];
+  # Patch out gui cli because it is not supported in this packaging and
+  # nixify path to the trafilatura binary in the test suite
+  postPatch = ''
+    substituteInPlace setup.py \
+      --replace-fail '"trafilatura_gui=trafilatura.gui:main",' ""
+    substituteInPlace tests/cli_tests.py \
+      --replace-fail "trafilatura_bin = 'trafilatura'" "trafilatura_bin = '$out/bin/trafilatura'"
+  '';
+
+  build-system = [ setuptools ];
 
-  propagatedBuildInputs = [
+  dependencies = [
     certifi
     charset-normalizer
     courlan
@@ -39,34 +47,22 @@ buildPythonPackage rec {
     urllib3
   ];
 
-  nativeCheckInputs = [
-    pytestCheckHook
-  ];
+  nativeCheckInputs = [ pytestCheckHook ];
 
   disabledTests = [
     # Disable tests that require an internet connection
+    "test_cli_pipeline"
+    "test_crawl_page"
     "test_download"
     "test_fetch"
-    "test_redirection"
     "test_meta_redirections"
-    "test_crawl_page"
-    "test_whole"
     "test_probing"
-    "test_cli_pipeline"
+    "test_queue"
+    "test_redirection"
+    "test_whole"
   ];
 
-  # patch out gui cli because it is not supported in this packaging
-  # nixify path to the trafilatura binary in the test suite
-  postPatch = ''
-    substituteInPlace setup.py \
-      --replace-fail '"trafilatura_gui=trafilatura.gui:main",' ""
-    substituteInPlace tests/cli_tests.py \
-      --replace-fail "trafilatura_bin = 'trafilatura'" "trafilatura_bin = '$out/bin/trafilatura'"
-  '';
-
-  pythonImportsCheck = [
-    "trafilatura"
-  ];
+  pythonImportsCheck = [ "trafilatura" ];
 
   meta = with lib; {
     description = "Python package and command-line tool designed to gather text on the Web";
diff --git a/pkgs/development/python-modules/traitlets/default.nix b/pkgs/development/python-modules/traitlets/default.nix
index 5394e7f4091a..51336a0f9195 100644
--- a/pkgs/development/python-modules/traitlets/default.nix
+++ b/pkgs/development/python-modules/traitlets/default.nix
@@ -14,14 +14,14 @@
 
 buildPythonPackage rec {
   pname = "traitlets";
-  version = "5.14.1";
+  version = "5.14.2";
   format = "pyproject";
 
   disabled = pythonOlder "3.7";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-hYUQWzcaBLgxakPVzinAmFdcLkd4ULYrhIuWTxREUn4=";
+    hash = "sha256-jN2DwEDat9He6CJnjl9dEAtRT3tysBYVsm/FcYkW/fk=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/python-modules/transformers/default.nix b/pkgs/development/python-modules/transformers/default.nix
index 5bcbeb035f67..4883f7118287 100644
--- a/pkgs/development/python-modules/transformers/default.nix
+++ b/pkgs/development/python-modules/transformers/default.nix
@@ -54,7 +54,7 @@
 
 buildPythonPackage rec {
   pname = "transformers";
-  version = "4.40.1";
+  version = "4.41.0";
   pyproject = true;
 
   disabled = pythonOlder "3.8";
@@ -63,14 +63,14 @@ buildPythonPackage rec {
     owner = "huggingface";
     repo = "transformers";
     rev = "refs/tags/v${version}";
-    hash = "sha256-w9BVJwYS2QV58UTOpcoQwdC+dxZuhLS2h8PqN5W2Yjc=";
+    hash = "sha256-FUYQeEksjDasFvQraycNFAx3cLHfDdPpgZssqN8OIJw=";
   };
 
   build-system = [
     setuptools
   ];
 
-  propagatedBuildInputs = [
+  dependencies = [
     filelock
     huggingface-hub
     numpy
diff --git a/pkgs/development/python-modules/transitions/default.nix b/pkgs/development/python-modules/transitions/default.nix
index 8ed221cd23e9..7e73b9c73aba 100644
--- a/pkgs/development/python-modules/transitions/default.nix
+++ b/pkgs/development/python-modules/transitions/default.nix
@@ -15,12 +15,12 @@
 
 buildPythonPackage rec {
   pname = "transitions";
-  version = "0.9.0";
+  version = "0.9.1";
   pyproject = true;
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-L1TRG9siV3nX5ykBHpOp+3F2aM49xl+NT1pde6L0jhA=";
+    hash = "sha256-NULDcQjpPirl8hUgjsVzLJSncpN4VKECzXNFuWf+5hs=";
   };
 
   build-system = [
diff --git a/pkgs/development/python-modules/trio-asyncio/default.nix b/pkgs/development/python-modules/trio-asyncio/default.nix
index a74b3889facd..258bb61b66e8 100644
--- a/pkgs/development/python-modules/trio-asyncio/default.nix
+++ b/pkgs/development/python-modules/trio-asyncio/default.nix
@@ -1,6 +1,6 @@
 { lib
 , buildPythonPackage
-, fetchPypi
+, fetchFromGitHub
 , setuptools
 , greenlet
 , trio
@@ -14,27 +14,28 @@
 
 buildPythonPackage rec {
   pname = "trio-asyncio";
-  version = "0.14.0";
+  version = "0.14.1";
   pyproject = true;
 
   disabled = pythonOlder "3.8";
 
-  src = fetchPypi {
-    pname = "trio_asyncio";
-    inherit version;
-    hash = "sha256-msSKQ8vhZxtBIh7HNq4M2qc0yKOErGNiCWLBXXse3WQ=";
+  src = fetchFromGitHub {
+    owner = "python-trio";
+    repo = "trio-asyncio";
+    rev = "refs/tags/v${version}";
+    hash = "sha256-634fcYAn5J1WW71J/USAMkJaZI8JmKoQneQEhz2gYFc=";
   };
 
   postPatch = ''
     substituteInPlace setup.py \
-      --replace '"pytest-runner"' ""
+      --replace-fail '"pytest-runner"' ""
   '';
 
-  nativeBuildInputs = [
+  build-system = [
     setuptools
   ];
 
-  propagatedBuildInputs = [
+  dependencies = [
     greenlet
     trio
     outcome
@@ -43,18 +44,16 @@ buildPythonPackage rec {
     exceptiongroup
   ];
 
-  # RuntimeWarning: Can't run the Python asyncio tests because they're not installed. On a Debian/Ubuntu system, you might need to install the libpython3.11-testsuite package.
-  doCheck = false;
+  pytestFlagsArray = [
+    # RuntimeWarning: Can't run the Python asyncio tests because they're not installed
+    "-W" "ignore::RuntimeWarning"
+  ];
 
   nativeCheckInputs = [
     pytest-trio
     pytestCheckHook
   ];
 
-  disabledTestPaths = [
-    "tests/python" # tries to import internal API test.test_asyncio
-  ];
-
   pythonImportsCheck = [
     "trio_asyncio"
   ];
diff --git a/pkgs/development/python-modules/trio-websocket/default.nix b/pkgs/development/python-modules/trio-websocket/default.nix
index 98fdcfae0c16..8ffa3de60fc3 100644
--- a/pkgs/development/python-modules/trio-websocket/default.nix
+++ b/pkgs/development/python-modules/trio-websocket/default.nix
@@ -2,6 +2,8 @@
 , stdenv
 , buildPythonPackage
 , fetchFromGitHub
+, pythonOlder
+, setuptools
 , exceptiongroup
 , pytest-trio
 , pytestCheckHook
@@ -12,20 +14,25 @@
 
 buildPythonPackage rec {
   pname = "trio-websocket";
-  version = "0.10.2";
-  format = "setuptools";
+  version = "0.11.1";
+  pyproject = true;
 
   src = fetchFromGitHub {
     owner = "HyperionGray";
     repo = "trio-websocket";
     rev = version;
-    hash = "sha256-djoTxkIKY52l+WnxL1FwlqrU/zvsLVkPUAHn9BxJ45k=";
+    hash = "sha256-ddLbYkb1m9zRjv3Lb7YwUzj26gYbK4nYN6jN+FAuiOs=";
   };
 
-  propagatedBuildInputs = [
-    exceptiongroup
+  build-system = [
+    setuptools
+  ];
+
+  dependencies = [
     trio
     wsproto
+  ] ++ lib.optionals (pythonOlder "3.11") [
+    exceptiongroup
   ];
 
   nativeCheckInputs = [
@@ -34,7 +41,16 @@ buildPythonPackage rec {
     trustme
   ];
 
-  disabledTests = lib.optionals stdenv.isDarwin [
+  disabledTests = [
+    # https://github.com/python-trio/trio-websocket/issues/187
+    "test_handshake_exception_before_accept"
+    "test_reject_handshake"
+    "test_reject_handshake_invalid_info_status"
+    "test_client_open_timeout"
+    "test_client_close_timeout"
+    "test_client_connect_networking_error"
+    "test_finalization_dropped_exception"
+  ] ++ lib.optionals stdenv.isDarwin [
     # Failed: DID NOT RAISE <class 'ValueError'>
     "test_finalization_dropped_exception"
     # Timing related
diff --git a/pkgs/development/python-modules/trio/default.nix b/pkgs/development/python-modules/trio/default.nix
index cc276fef5c52..84215b5122a6 100644
--- a/pkgs/development/python-modules/trio/default.nix
+++ b/pkgs/development/python-modules/trio/default.nix
@@ -1,6 +1,6 @@
 { lib
 , buildPythonPackage
-, fetchPypi
+, fetchFromGitHub
 , pythonOlder
 , stdenv
 
@@ -37,26 +37,23 @@ let
 in
 buildPythonPackage rec {
   pname = "trio";
-  version = "0.24.0";
+  version = "0.25.0";
   pyproject = true;
 
   disabled = pythonOlder "3.8";
 
-  src = fetchPypi {
-    inherit pname version;
-    hash = "sha256-/6CadKa/gbhPhhOQn7C+ruhHV0UBg6ei4LR7RVwMrF0=";
+  src = fetchFromGitHub {
+    owner = "python-trio";
+    repo = "trio";
+    rev = "refs/tags/v${version}";
+    hash = "sha256-JQ493U4WINOG6ob4IzfNQt5Lgs3DmEM2BDwbae7Bvsw=";
   };
 
-  postPatch = ''
-    substituteInPlace src/trio/_tests/test_subprocess.py \
-      --replace "/bin/sleep" "${coreutils}/bin/sleep"
-  '';
-
-  nativeBuildInputs = [
+  build-system = [
     setuptools
   ];
 
-  propagatedBuildInputs = [
+  dependencies = [
     attrs
     idna
     outcome
@@ -103,11 +100,8 @@ buildPythonPackage rec {
     "src/trio/_tests/tools/test_gen_exports.py"
   ];
 
-  pytestFlagsArray = [
-    "-W" "ignore::DeprecationWarning"
-  ];
-
   meta = {
+    changelog = "https://github.com/python-trio/trio/blob/v${version}/docs/source/history.rst";
     description = "An async/await-native I/O library for humans and snake people";
     homepage = "https://github.com/python-trio/trio";
     license = with lib.licenses; [ mit asl20 ];
diff --git a/pkgs/development/python-modules/trove-classifiers/default.nix b/pkgs/development/python-modules/trove-classifiers/default.nix
index 64829175c198..61ef9858d2dd 100644
--- a/pkgs/development/python-modules/trove-classifiers/default.nix
+++ b/pkgs/development/python-modules/trove-classifiers/default.nix
@@ -10,14 +10,14 @@
 let
   self = buildPythonPackage rec {
     pname = "trove-classifiers";
-    version = "2024.3.3";
+    version = "2024.4.10";
     pyproject = true;
 
     disabled = pythonOlder "3.7";
 
     src = fetchPypi {
       inherit pname version;
-      hash = "sha256-337f+cZ/+GtzNiiZgzCxgOgdElseCWU22DrA/XlnP9w=";
+      hash = "sha256-SfQLtqdGtyocuk+NVe6CUhac2g9wgC4/0k8Et/slpJI=";
     };
 
     postPatch = ''
diff --git a/pkgs/development/python-modules/truncnorm/default.nix b/pkgs/development/python-modules/truncnorm/default.nix
new file mode 100644
index 000000000000..b9b9d77b22f6
--- /dev/null
+++ b/pkgs/development/python-modules/truncnorm/default.nix
@@ -0,0 +1,44 @@
+{
+  lib,
+  buildPythonPackage,
+  fetchFromGitHub,
+  setuptools,
+  setuptools-scm,
+  numpy,
+  scipy,
+}:
+
+buildPythonPackage rec {
+  pname = "truncnorm";
+  version = "0.0.2";
+  pyproject = true;
+
+  src = fetchFromGitHub {
+    owner = "jluttine";
+    repo = "truncnorm";
+    rev = "refs/tags/${version}";
+    hash = "sha256-F+RBXN/pjxmHf26/Vxptz1NbF58eqU018l3zmepSoJk=";
+  };
+
+  build-system = [
+    setuptools
+    setuptools-scm
+  ];
+
+  dependencies = [
+    numpy
+    scipy
+  ];
+
+  # No checks
+  doCheck = false;
+
+  pythonImportsCheck = [ "truncnorm" ];
+
+  meta = with lib; {
+    homepage = "https://pypi.org/project/truncnorm";
+    description = "Moments for doubly truncated multivariate normal distributions";
+    license = licenses.mit;
+    maintainers = with maintainers; [ jluttine ];
+  };
+}
diff --git a/pkgs/development/python-modules/trytond/default.nix b/pkgs/development/python-modules/trytond/default.nix
index 5e89da7f3504..1a00120a80da 100644
--- a/pkgs/development/python-modules/trytond/default.nix
+++ b/pkgs/development/python-modules/trytond/default.nix
@@ -25,14 +25,14 @@
 
 buildPythonPackage rec {
   pname = "trytond";
-  version = "7.0.9";
+  version = "7.2.1";
   format = "setuptools";
 
   disabled = pythonOlder "3.7";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-DlPuIaGTpJu4FyLOTNAy2CAEJHoe7+8e34wacz8C7d8=";
+    hash = "sha256-gIWWzm7emSwgKoO5geNIXUqKNsDiq6fle5OHb+KvhLE=";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/tubes/default.nix b/pkgs/development/python-modules/tubes/default.nix
index 28d7b7bc4be2..7d593371d11e 100644
--- a/pkgs/development/python-modules/tubes/default.nix
+++ b/pkgs/development/python-modules/tubes/default.nix
@@ -1,19 +1,30 @@
-{ lib, buildPythonPackage, fetchPypi, python
-, characteristic, six, twisted
+{
+  lib,
+  buildPythonPackage,
+  fetchFromGitHub,
+  python,
+  characteristic,
+  six,
+  twisted,
 }:
 
 buildPythonPackage rec {
   pname = "tubes";
-  version = "0.2.1";
+  version = "0.2.1-unstable-2023-11-06";
   format = "setuptools";
 
-  src = fetchPypi {
-    pname = "Tubes";
-    inherit version;
-    hash = "sha256-WbkZfy+m9/xrwygd5VeXrccpu3XJxhO09tbEFZnw14s=";
+  src = fetchFromGitHub {
+    owner = "twisted";
+    repo = "tubes";
+    rev = "b74680b8e7bcfe64362865356bb9461b77bbd5c0";
+    hash = "sha256-E8brnt8CtTEEP1KQTsTsgnl54H4zRGp+1IuoI/Qf5NA=";
   };
 
-  propagatedBuildInputs = [ characteristic six twisted ];
+  propagatedBuildInputs = [
+    characteristic
+    six
+    twisted
+  ];
 
   checkPhase = ''
     ${python.interpreter} -m twisted.trial -j $NIX_BUILD_CORES tubes
@@ -23,8 +34,8 @@ buildPythonPackage rec {
 
   meta = with lib; {
     description = "a data-processing and flow-control engine for event-driven programs";
-    homepage    = "https://github.com/twisted/tubes";
-    license     = licenses.mit;
+    homepage = "https://github.com/twisted/tubes";
+    license = licenses.mit;
     maintainers = with maintainers; [ exarkun ];
   };
 }
diff --git a/pkgs/development/python-modules/type-infer/default.nix b/pkgs/development/python-modules/type-infer/default.nix
index 55af22a1c94b..d9b1b0717f95 100644
--- a/pkgs/development/python-modules/type-infer/default.nix
+++ b/pkgs/development/python-modules/type-infer/default.nix
@@ -10,6 +10,7 @@
 , numpy
 , pandas
 , psutil
+, py3langid
 , python-dateutil
 , scipy
 , toml
@@ -24,7 +25,7 @@ let
 in
 buildPythonPackage rec {
   pname = "type-infer";
-  version = "0.0.18";
+  version = "0.0.20";
   format = "pyproject";
 
   disabled = pythonOlder "3.8";
@@ -33,7 +34,7 @@ buildPythonPackage rec {
   src = fetchPypi {
     pname = "type_infer";
     inherit version;
-    hash = "sha256-nA5TlyHpCueFWqUggS7T/eKSLlffp0pIyGCouwXPZ28=";
+    hash = "sha256-F+gfA7ofrbMEE5SrVt9H3s2mZKQLyr6roNUmL4EMJbI=";
   };
 
   nativeBuildInputs = [
@@ -48,6 +49,7 @@ buildPythonPackage rec {
     numpy
     pandas
     psutil
+    py3langid
     python-dateutil
     scipy
     toml
diff --git a/pkgs/development/python-modules/typer/default.nix b/pkgs/development/python-modules/typer/default.nix
index b072f3a6d8ca..a1f0a9033e10 100644
--- a/pkgs/development/python-modules/typer/default.nix
+++ b/pkgs/development/python-modules/typer/default.nix
@@ -4,9 +4,8 @@
 , click
 , colorama
 , coverage
-, fetchpatch
 , fetchPypi
-, flit-core
+, pdm-backend
 , pytest-sugar
 , pytest-xdist
 , pytestCheckHook
@@ -18,27 +17,18 @@
 
 buildPythonPackage rec {
   pname = "typer";
-  version = "0.9.0";
+  version = "0.12.3";
   format = "pyproject";
 
   disabled = pythonOlder "3.6";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-UJIv15rqL0dRqOBAj/ENJmK9DIu/qEdVppnzutopeLI=";
+    hash = "sha256-SecxMUgdgEKI72JZjZehzu8wWJBapTahE0+QiRujVII=";
   };
 
-  patches = [
-    # https://github.com/tiangolo/typer/pull/651
-    (fetchpatch {
-      name = "unpin-flit-core-dependency.patch";
-      url = "https://github.com/tiangolo/typer/commit/78a0ee2eec9f54ad496420e177fdaad84984def1.patch";
-      hash = "sha256-VVUzFvF2KCXXkCfCU5xu9acT6OLr+PlQQPeVGONtU4A=";
-    })
-  ];
-
   nativeBuildInputs = [
-    flit-core
+    pdm-backend
   ];
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/types-beautifulsoup4/default.nix b/pkgs/development/python-modules/types-beautifulsoup4/default.nix
index 687dadc3eb65..57c1f550b2e4 100644
--- a/pkgs/development/python-modules/types-beautifulsoup4/default.nix
+++ b/pkgs/development/python-modules/types-beautifulsoup4/default.nix
@@ -1,29 +1,29 @@
-{ lib
-, buildPythonPackage
-, fetchPypi
-, types-html5lib
+{
+  lib,
+  buildPythonPackage,
+  fetchPypi,
+  setuptools,
+  types-html5lib,
 }:
 
 buildPythonPackage rec {
   pname = "types-beautifulsoup4";
-  version = "4.12.0.20240229";
-  format = "setuptools";
+  version = "4.12.0.20240511";
+  pyproject = true;
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-435M+hGwOwF3VzLlbSwBDLJO4Qd4Yne65rwPo+MFtoY=";
+    hash = "sha256-AE9glv3YOxnNv2yxDk6uV7ECBezMNl0Kadd9qDYBLig=";
   };
 
-  propagatedBuildInputs = [
-    types-html5lib
-  ];
+  build-system = [ setuptools ];
+
+  dependencies = [ types-html5lib ];
 
   # Module has no tests
   doCheck = false;
 
-  pythonImportsCheck = [
-    "bs4-stubs"
-  ];
+  pythonImportsCheck = [ "bs4-stubs" ];
 
   meta = with lib; {
     description = "Typing stubs for beautifulsoup4";
diff --git a/pkgs/development/python-modules/types-pillow/default.nix b/pkgs/development/python-modules/types-pillow/default.nix
index adb92251b8f1..db173d39e74b 100644
--- a/pkgs/development/python-modules/types-pillow/default.nix
+++ b/pkgs/development/python-modules/types-pillow/default.nix
@@ -5,13 +5,13 @@
 
 buildPythonPackage rec {
   pname = "types-pillow";
-  version = "10.2.0.20240331";
+  version = "10.2.0.20240415";
   format = "setuptools";
 
   src = fetchPypi {
     inherit version;
     pname = "types-Pillow";
-    hash = "sha256-xgTjmutwcZ5GPTWRV6Iji/wOgb+cZYN1cD97mM/WB9o=";
+    hash = "sha256-3WBYAnY5vNxmuniyKMwl/a5CUkwhUMeMgE2kJ+fnbnA=";
   };
 
   # Modules doesn't have tests
diff --git a/pkgs/development/python-modules/types-protobuf/default.nix b/pkgs/development/python-modules/types-protobuf/default.nix
index c09cb206cf04..6482d4e30ba1 100644
--- a/pkgs/development/python-modules/types-protobuf/default.nix
+++ b/pkgs/development/python-modules/types-protobuf/default.nix
@@ -6,12 +6,12 @@
 
 buildPythonPackage rec {
   pname = "types-protobuf";
-  version = "4.24.0.20240311";
+  version = "4.25.0.20240417";
   format = "setuptools";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-yAQm+fubIa7lFGkelqsypc1pSoLirAeWSzUsPn4Bgrw=";
+    hash = "sha256-w07/F7mzoK22gwYi8PMCSE5MCJ9TOkbj8UdWgxNUQ1I=";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/types-pyopenssl/default.nix b/pkgs/development/python-modules/types-pyopenssl/default.nix
index d7cf53e4ff68..586e5138aaac 100644
--- a/pkgs/development/python-modules/types-pyopenssl/default.nix
+++ b/pkgs/development/python-modules/types-pyopenssl/default.nix
@@ -6,13 +6,13 @@
 
 buildPythonPackage rec {
   pname = "types-pyopenssl";
-  version = "24.0.0.20240311";
+  version = "24.1.0.20240425";
   format = "setuptools";
 
   src = fetchPypi {
     pname = "types-pyOpenSSL";
     inherit version;
-    hash = "sha256-e8oAz8Tn75xdJmPGocBow1eY5ZZwWVQ59ilue6PVgIM=";
+    hash = "sha256-Cn6CYmwZg9yNxZKSvyBlSlHDw4gby7mzN8HabjLwIE4=";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/types-python-dateutil/default.nix b/pkgs/development/python-modules/types-python-dateutil/default.nix
index 04f146e40e54..0bee1e8ddca2 100644
--- a/pkgs/development/python-modules/types-python-dateutil/default.nix
+++ b/pkgs/development/python-modules/types-python-dateutil/default.nix
@@ -6,12 +6,12 @@
 
 buildPythonPackage rec {
   pname = "types-python-dateutil";
-  version = "2.8.19.20240106";
+  version = "2.9.0.20240316";
   pyproject = true;
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-H42yIcO5jmygLqg6WDcbIsN09Crlu98YbbnJp2WBRZ8=";
+    hash = "sha256-XS8uJAuGkF5AlE3Xh9ttqSY/Deq+8Qdt2u15c1HsAgI=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/python-modules/types-pytz/default.nix b/pkgs/development/python-modules/types-pytz/default.nix
index bf1b49ccc918..8f86e7be43d8 100644
--- a/pkgs/development/python-modules/types-pytz/default.nix
+++ b/pkgs/development/python-modules/types-pytz/default.nix
@@ -6,12 +6,12 @@
 
 buildPythonPackage rec {
   pname = "types-pytz";
-  version = "2024.1.0.20240203";
+  version = "2024.1.0.20240417";
   pyproject = true;
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-yTdR7iDfxuBUoBSPj1InuaALeckKTTyfRkcRpzF5yJ4=";
+    hash = "sha256-aBDIofaPIf3w9PN0pDJIfHdkWgrAsx3kv0aQzyGtOYE=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/python-modules/types-pyyaml/default.nix b/pkgs/development/python-modules/types-pyyaml/default.nix
index c8735dbfe6de..35f02941b6d5 100644
--- a/pkgs/development/python-modules/types-pyyaml/default.nix
+++ b/pkgs/development/python-modules/types-pyyaml/default.nix
@@ -5,13 +5,13 @@
 
 buildPythonPackage rec {
   pname = "types-pyyaml";
-  version = "6.0.12.12";
+  version = "6.0.12.20240311";
   format = "setuptools";
 
   src = fetchPypi {
     pname = "types-PyYAML";
     inherit version;
-    hash = "sha256-M0Nz05L94P35WvXD8WYYhfoQxSFnsUWT64ViieGFUGI=";
+    hash = "sha256-qeDw+I3INXObDBylHukNBMoqiXpxr3nemuxfOMsKU0I=";
   };
 
   # Module doesn't have tests
diff --git a/pkgs/development/python-modules/types-s3transfer/default.nix b/pkgs/development/python-modules/types-s3transfer/default.nix
index eb90a554174e..30533010fbe0 100644
--- a/pkgs/development/python-modules/types-s3transfer/default.nix
+++ b/pkgs/development/python-modules/types-s3transfer/default.nix
@@ -6,13 +6,13 @@
 
 buildPythonPackage rec {
   pname = "types-s3transfer";
-  version = "0.10.0";
+  version = "0.10.1";
   pyproject = true;
 
   src = fetchPypi {
     pname = "types_s3transfer";
     inherit version;
-    hash = "sha256-NeSZjCXff4mFrWne3I5IYOivO0O3YV6UDVPADUE73Gk=";
+    hash = "sha256-AhVMzkZSgoetdq0aAVOEDgSSI5oIh+iDNGbsz4S5jaA=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/python-modules/types-setuptools/default.nix b/pkgs/development/python-modules/types-setuptools/default.nix
index a2a0a9f125bd..557a065c68e9 100644
--- a/pkgs/development/python-modules/types-setuptools/default.nix
+++ b/pkgs/development/python-modules/types-setuptools/default.nix
@@ -6,12 +6,12 @@
 
 buildPythonPackage rec {
   pname = "types-setuptools";
-  version = "69.2.0.20240317";
+  version = "69.5.0.20240415";
   pyproject = true;
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-tgfExIhC7z7kncDH/pwbrXVwCwceEBi7TX46xJLUcEg=";
+    hash = "sha256-6mSvCpamdPjEC6NMCcJU88cLw/IYxr/6HQkSvZFYSi8=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/python-modules/types-toml/default.nix b/pkgs/development/python-modules/types-toml/default.nix
index 140664989f3b..db58fbc181b5 100644
--- a/pkgs/development/python-modules/types-toml/default.nix
+++ b/pkgs/development/python-modules/types-toml/default.nix
@@ -5,12 +5,12 @@
 
 buildPythonPackage rec {
   pname = "types-toml";
-  version = "0.10.8.7";
+  version = "0.10.8.20240310";
   format = "setuptools";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-WLB4HGgeZx/wtcAxkwmRBon0q0DookMeIF1wyUu277E=";
+    hash = "sha256-PUFQEwKXJDamuLI5yFCyZollfiUoG0j/DsBjRbiDAzE=";
   };
 
   # Module doesn't have tests
diff --git a/pkgs/development/python-modules/types-ujson/default.nix b/pkgs/development/python-modules/types-ujson/default.nix
index eb46df9c9337..cbd3c4c7c08b 100644
--- a/pkgs/development/python-modules/types-ujson/default.nix
+++ b/pkgs/development/python-modules/types-ujson/default.nix
@@ -1,23 +1,26 @@
-{ lib
-, buildPythonPackage
-, fetchPypi
+{
+  lib,
+  buildPythonPackage,
+  fetchPypi,
+  setuptools,
 }:
 
 buildPythonPackage rec {
   pname = "types-ujson";
-  version = "5.9.0.0";
-  format = "setuptools";
+  version = "5.10.0.20240515";
+  pyproject = true;
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-fnBCRU3HzX8xsJxCDXyvNrk9ML30uNuTeRvQVhcT0Bc=";
+    hash = "sha256-zq5xJ/Da/kr13Q7PmO4T6ddZUe+WO1xam36pLg1x8Nc=";
   };
 
+  build-system = [ setuptools ];
+
+  # Module has no tests
   doCheck = false;
 
-  pythonImportsCheck = [
-    "ujson-stubs"
-  ];
+  pythonImportsCheck = [ "ujson-stubs" ];
 
   meta = with lib; {
     description = "Typing stubs for ujson";
diff --git a/pkgs/development/python-modules/typing-extensions/default.nix b/pkgs/development/python-modules/typing-extensions/default.nix
index eb1c9c58d690..b20fe1a05106 100644
--- a/pkgs/development/python-modules/typing-extensions/default.nix
+++ b/pkgs/development/python-modules/typing-extensions/default.nix
@@ -7,7 +7,7 @@
 
 buildPythonPackage rec {
   pname = "typing-extensions";
-  version = "4.10.0";
+  version = "4.11.0";
   pyproject = true;
 
   disabled = pythonOlder "3.8";
@@ -15,7 +15,7 @@ buildPythonPackage rec {
   src = fetchPypi {
     pname = "typing_extensions";
     inherit version;
-    hash = "sha256-sKvXyJ6PuW+Y2xjYYQb/HZCraSAE63Rs9u2iaC+Rs8s=";
+    hash = "sha256-g/CFvVylnIApX8KoKrXaxnnL4CufM/fYOvaOJBvqUbA=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/python-modules/ucsmsdk/default.nix b/pkgs/development/python-modules/ucsmsdk/default.nix
index 7d285b062880..f2442d2a6078 100644
--- a/pkgs/development/python-modules/ucsmsdk/default.nix
+++ b/pkgs/development/python-modules/ucsmsdk/default.nix
@@ -7,14 +7,14 @@
 
 buildPythonPackage rec {
   pname = "ucsmsdk";
-  version = "0.9.16";
+  version = "0.9.17";
   format = "setuptools";
 
   src = fetchFromGitHub {
     owner = "CiscoUcs";
     repo = "ucsmsdk";
     rev = "refs/tags/v${version}";
-    hash = "sha256-9ksHA8uvBv370/6Umt5iz/4F8VsDDI9X8kVc5Lv0RVk=";
+    hash = "sha256-Ejn99MArKZjCHsl81WSHfpWV3Kz/mBrItIa0tPVProU=";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/ufo2ft/default.nix b/pkgs/development/python-modules/ufo2ft/default.nix
index 5cbcf1370372..d167d66b3529 100644
--- a/pkgs/development/python-modules/ufo2ft/default.nix
+++ b/pkgs/development/python-modules/ufo2ft/default.nix
@@ -6,6 +6,7 @@
 , cu2qu
 , defcon
 , fetchPypi
+, fontmath
 , fonttools
 , pytestCheckHook
 , pythonOlder
@@ -17,14 +18,14 @@
 
 buildPythonPackage rec {
   pname = "ufo2ft";
-  version = "3.1.0";
+  version = "3.2.2";
   pyproject = true;
 
   disabled = pythonOlder "3.8";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-5EUrML1Yd88tVEP+Kd9TmXm+5Ejk/XIH/USYBakK/wQ=";
+    hash = "sha256-5HWhRxKs4KQdC1v0LaLgndgMwtcGKLVz9tYtesdJ8Oo=";
   };
 
   nativeBuildInputs = [
@@ -38,6 +39,7 @@ buildPythonPackage rec {
 
   propagatedBuildInputs = [
     cu2qu
+    fontmath
     fonttools
     defcon
     compreffor
diff --git a/pkgs/development/python-modules/unittest-xml-reporting/default.nix b/pkgs/development/python-modules/unittest-xml-reporting/default.nix
index 36768b0fccb7..030ab4337ec7 100644
--- a/pkgs/development/python-modules/unittest-xml-reporting/default.nix
+++ b/pkgs/development/python-modules/unittest-xml-reporting/default.nix
@@ -1,44 +1,48 @@
-{ lib
-, fetchFromGitHub
-, buildPythonPackage
-, lxml
-, pythonAtLeast
-, pythonOlder
-, pytestCheckHook
+{
+  lib,
+  buildPythonPackage,
+  fetchFromGitHub,
+  lxml,
+  pytestCheckHook,
+  pythonAtLeast,
+  pythonOlder,
+  setuptools,
 }:
 
 buildPythonPackage rec {
   pname = "unittest-xml-reporting";
   version = "3.2.0";
-  format = "setuptools";
+  pyproject = true;
+
   disabled = pythonOlder "3.7";
 
   src = fetchFromGitHub {
     owner = "xmlrunner";
     repo = "unittest-xml-reporting";
-    rev = version;
+    rev = "refs/tags/${version}";
     hash = "sha256-lOJ/+8CVJUXdIaZLLF5PpPkG0DzlNgo46kRZ1Xy7Ju0=";
   };
 
-  propagatedBuildInputs = [
-    lxml
-  ];
+  build-system = [ setuptools ];
+
+  dependencies = [ lxml ];
 
-  nativeCheckInputs = [
-    pytestCheckHook
-  ];
+  nativeCheckInputs = [ pytestCheckHook ];
 
-  pytestFlagsArray = lib.optionals (pythonAtLeast "3.11") [
-    # AttributeError: 'tuple' object has no attribute 'shortDescription'
-    "--deselect=tests/testsuite.py::XMLTestRunnerTestCase::test_basic_unittest_constructs"
-    "--deselect=tests/testsuite.py::XMLTestRunnerTestCase::test_unexpected_success"
-  ];
+  disabledTests =
+    lib.optionals (pythonAtLeast "3.11") [
+      # AttributeError: 'tuple' object has no attribute 'shortDescription'
+      "test_basic_unittest_constructs"
+      "test_unexpected_success"
+    ]
+    ++ lib.optionals (pythonAtLeast "3.12") [ "test_xmlrunner_hold_traceback" ];
 
   pythonImportsCheck = [ "xmlrunner" ];
 
   meta = with lib; {
+    description = "Unittest-based test runner with Ant/JUnit like XML reporting";
     homepage = "https://github.com/xmlrunner/unittest-xml-reporting";
-    description = "unittest-based test runner with Ant/JUnit like XML reporting";
+    changelog = "https://github.com/xmlrunner/unittest-xml-reporting/releases/tag/${version}";
     license = licenses.bsd2;
     maintainers = with maintainers; [ rprospero ];
   };
diff --git a/pkgs/development/python-modules/unstructured/default.nix b/pkgs/development/python-modules/unstructured/default.nix
index 3b797ed297d7..1340b1c79c7e 100644
--- a/pkgs/development/python-modules/unstructured/default.nix
+++ b/pkgs/development/python-modules/unstructured/default.nix
@@ -56,7 +56,7 @@
 , grpcio
 }:
 let
-  version = "0.13.2";
+  version = "0.13.7";
   optional-dependencies = {
     huggingflace = [
       langdetect
@@ -90,7 +90,7 @@ buildPythonPackage {
     owner = "Unstructured-IO";
     repo = "unstructured";
     rev = "refs/tags/${version}";
-    hash = "sha256-6pR/tewHWstgIqqD8Jwj+AQutdhXU5aufm6RiEpXr9s=";
+    hash = "sha256-Ekfa454mL7isMX79bd/YXPPHnetSzo1Mlg/XJakYyDM=";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/uproot/default.nix b/pkgs/development/python-modules/uproot/default.nix
index 4fd55870b0f4..094e118340ff 100644
--- a/pkgs/development/python-modules/uproot/default.nix
+++ b/pkgs/development/python-modules/uproot/default.nix
@@ -19,7 +19,7 @@
 
 buildPythonPackage rec {
   pname = "uproot";
-  version = "5.3.2";
+  version = "5.3.7";
   pyproject = true;
 
   disabled = pythonOlder "3.8";
@@ -28,15 +28,15 @@ buildPythonPackage rec {
     owner = "scikit-hep";
     repo = "uproot5";
     rev = "refs/tags/v${version}";
-    hash = "sha256-dq362pevqgLx5KwZ19zQ6aOn5NCyiqynPCF7YdI6tkw=";
+    hash = "sha256-ptfT31eUNSpVaZfXAyRcIc2T2p82rXmzUyySSVbI9lI=";
   };
 
-  nativeBuildInputs = [
+  build-system = [
     hatch-vcs
     hatchling
   ];
 
-  propagatedBuildInputs = [
+  dependencies = [
     awkward
     cramjam
     numpy
@@ -76,6 +76,7 @@ buildPythonPackage rec {
     "test_http_size"
     "test_http_size_port"
     "test_issue_1054_filename_colons"
+    "test_multiple_page_lists"
     "test_no_multipart"
     "test_open_fsspec_github"
     "test_open_fsspec_http"
@@ -83,6 +84,7 @@ buildPythonPackage rec {
     "test_pickle_roundtrip_http"
     "test_split_ranges_if_large_file_in_http"
     # Cyclic dependency with dask-awkward
+    "test_dask_duplicated_keys"
     "test_decompression_executor_for_dask"
   ];
 
diff --git a/pkgs/development/python-modules/uptime/default.nix b/pkgs/development/python-modules/uptime/default.nix
index 7dd3710b81d3..d20bd4dc5506 100644
--- a/pkgs/development/python-modules/uptime/default.nix
+++ b/pkgs/development/python-modules/uptime/default.nix
@@ -1,23 +1,34 @@
-{ lib
-, buildPythonPackage
-, fetchPypi
+{
+  lib,
+  buildPythonPackage,
+  fetchPypi,
+  pythonOlder,
+  setuptools,
 }:
 
 buildPythonPackage rec {
   pname = "uptime";
   version = "3.0.1";
-  format = "setuptools";
+  pyproject = true;
+
+  disabled = pythonOlder "3.7";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "0wr9jkixprlywz0plyn5p42a5fd31aiwvjrxdvj7r02vfxa04c3w";
+    hash = "sha256-fDACVHdbgHzkbj3LzaMKo7miBLnFenrB557m2+OUKXM=";
   };
 
+  build-system = [ setuptools ];
+
+  # Tests are not shipped
+  doCheck = false;
+
+  pythonImportsCheck = [ "uptime" ];
+
   meta = with lib; {
-    homepage = "https://github.com/Cairnarvon/uptime";
     description = "Cross-platform way to retrieve system uptime and boot time";
+    homepage = "https://github.com/Cairnarvon/uptime";
     license = licenses.bsd2;
     maintainers = with maintainers; [ rob ];
   };
-
 }
diff --git a/pkgs/development/python-modules/uqbar/default.nix b/pkgs/development/python-modules/uqbar/default.nix
index c7c6e8e2eea6..046e3425a785 100644
--- a/pkgs/development/python-modules/uqbar/default.nix
+++ b/pkgs/development/python-modules/uqbar/default.nix
@@ -4,21 +4,23 @@
 , pytestCheckHook
 , pythonAtLeast
 , pythonOlder
+, defusedxml
 , setuptools
 , sphinx
+, typing-extensions
 , unidecode
 }:
 
 buildPythonPackage rec {
   pname = "uqbar";
-  version = "0.7.3";
+  version = "0.7.4";
   pyproject = true;
 
   disabled = pythonOlder "3.8";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-9KQmLCsIiHcdiAu4GeEu+wa3lGwEZOO+oHWuhFNosR0=";
+    hash = "sha256-q4p+ki5wA/gYGWnt2tzCiEakk4fBl9P96ONz2ZxlCCg=";
   };
 
   postPatch = ''
@@ -40,6 +42,11 @@ buildPythonPackage rec {
     pytestCheckHook
   ];
 
+  checkInputs = [
+    defusedxml
+    typing-extensions
+  ];
+
   disabledTests = [
     # UnboundLocalError: local variable 'output_path' referenced before assignment
     "test_01"
diff --git a/pkgs/development/python-modules/uvicorn/default.nix b/pkgs/development/python-modules/uvicorn/default.nix
index 6201bb615726..2694880594b0 100644
--- a/pkgs/development/python-modules/uvicorn/default.nix
+++ b/pkgs/development/python-modules/uvicorn/default.nix
@@ -17,16 +17,16 @@
 
 buildPythonPackage rec {
   pname = "uvicorn";
-  version = "0.27.1";
+  version = "0.29.0";
   disabled = pythonOlder "3.8";
 
   pyproject = true;
 
   src = fetchFromGitHub {
     owner = "encode";
-    repo = pname;
+    repo = "uvicorn";
     rev = "refs/tags/${version}";
-    hash = "sha256-p0iPQE66RJfd811x6cnv7m3yvD/L9v7evBXlaIQSE0M=";
+    hash = "sha256-D0FdZxaDB+9N/7p73GF8qw0UwbXTQrKc1WOgy9UltxA=";
   };
 
   outputs = [
@@ -34,9 +34,9 @@ buildPythonPackage rec {
     "testsout"
   ];
 
-  nativeBuildInputs = [ hatchling ];
+  build-system = [ hatchling ];
 
-  propagatedBuildInputs = [
+  dependencies = [
     click
     h11
   ] ++ lib.optionals (pythonOlder "3.11") [
diff --git a/pkgs/development/python-modules/uxsim/add-qt-plugin-path-to-env.patch b/pkgs/development/python-modules/uxsim/add-qt-plugin-path-to-env.patch
new file mode 100644
index 000000000000..42f001085d05
--- /dev/null
+++ b/pkgs/development/python-modules/uxsim/add-qt-plugin-path-to-env.patch
@@ -0,0 +1,24 @@
+diff --git a/uxsim/__init__.py b/uxsim/__init__.py
+index 01e1ad1..de1f0fd 100644
+--- a/uxsim/__init__.py
++++ b/uxsim/__init__.py
+@@ -1,8 +1,14 @@
+-from .uxsim import *
+-from .utils import *
++import os
++
+ from .analyzer import *
++from .utils import *
++from .uxsim import *
++
++# Only set our own plugin path if it's not already set
++if not os.getenv("QT_PLUGIN_PATH"): 
++    os.environ["QT_PLUGIN_PATH"] = "$NIX_QT_PLUGIN_PATH"
+ 
+ __version__ = "1.1.1"
+ __author__ = "Toru Seo"
+ __copyright__ = "Copyright (c) 2023 Toru Seo"
+-__license__ = "MIT License"
+\ No newline at end of file
++__license__ = "MIT License"
+
diff --git a/pkgs/development/python-modules/uxsim/default.nix b/pkgs/development/python-modules/uxsim/default.nix
new file mode 100644
index 000000000000..e08eec1d6cf6
--- /dev/null
+++ b/pkgs/development/python-modules/uxsim/default.nix
@@ -0,0 +1,69 @@
+{
+  lib,
+  buildPythonPackage,
+  fetchFromGitHub,
+  setuptools,
+  wheel,
+  qt5,
+  hackgen-font,
+  python3,
+  matplotlib,
+  numpy,
+  pandas,
+  pillow,
+  pyqt5,
+  scipy,
+  tqdm,
+}:
+buildPythonPackage rec {
+  pname = "uxsim";
+  version = "1.1.1";
+  pyproject = true;
+
+  src = fetchFromGitHub {
+    owner = "toruseo";
+    repo = "UXsim";
+    rev = "v${version}";
+    hash = "sha256-qPAFodvx+Z7RsRhzdTq1TRsbvrUFaqRJZxYg3FM6q8A=";
+  };
+
+  patches = [
+    ./add-qt-plugin-path-to-env.patch
+  ];
+
+  nativeBuildInputs = [
+    setuptools
+    wheel
+  ];
+
+  propagatedBuildInputs = [
+    matplotlib
+    numpy
+    pandas
+    pillow
+    pyqt5
+    scipy
+    tqdm
+  ];
+
+  pythonImportsCheck = ["uxsim"];
+
+
+  # QT_PLUGIN_PATH is required to be set for the program to produce its images
+  # our patch sets it to $NIX_QT_PLUGIN_PATH if QT_PLUGIN_PATH is not set
+  # and here we replace this string with the actual path to qt plugins
+  postInstall = ''
+    substituteInPlace $out/${python3.sitePackages}/uxsim/__init__.py \
+      --replace-fail '$NIX_QT_PLUGIN_PATH' '${qt5.qtbase.bin}/${qt5.qtbase.qtPluginPrefix}'
+
+    mkdir -p $out/${python3.sitePackages}/uxsim/files
+    ln -s ${hackgen-font}/share/fonts/hackgen/HackGen-Regular.ttf $out/${python3.sitePackages}/uxsim/files/
+  '';
+
+  meta = with lib; {
+    description = "Vehicular traffic flow simulator in road network, written in pure Python";
+    homepage = "https://github.com/toruseo/UXsim";
+    license = licenses.mit;
+    maintainers = with maintainers; [vinnymeller];
+  };
+}
diff --git a/pkgs/development/python-modules/validator-collection/default.nix b/pkgs/development/python-modules/validator-collection/default.nix
index 8625956d7754..60cc3c9c6f5e 100644
--- a/pkgs/development/python-modules/validator-collection/default.nix
+++ b/pkgs/development/python-modules/validator-collection/default.nix
@@ -135,6 +135,14 @@ buildPythonPackage rec {
 
   pythonImportsCheck = [ "validator_collection" ];
 
+  disabledTests = [
+    # Issues with fake filesystem /var/data
+    "test_writeable"
+    "test_executable"
+    "test_readable"
+    "test_is_readable"
+  ];
+
   meta = with lib; {
     description = "Python library of 60+ commonly-used validator functions";
     homepage = "https://github.com/insightindustry/validator-collection/";
diff --git a/pkgs/development/python-modules/validators/default.nix b/pkgs/development/python-modules/validators/default.nix
index 8e29effda9a2..4a5e2f7df1cf 100644
--- a/pkgs/development/python-modules/validators/default.nix
+++ b/pkgs/development/python-modules/validators/default.nix
@@ -1,15 +1,16 @@
-{ lib
-, buildPythonPackage
-, fetchFromGitHub
-, pytestCheckHook
-, pythonOlder
-, setuptools
+{
+  lib,
+  buildPythonPackage,
+  fetchFromGitHub,
+  pytestCheckHook,
+  pythonOlder,
+  setuptools,
 }:
 
 buildPythonPackage rec {
   pname = "validators";
-  version = "0.22.0";
-  format = "pyproject";
+  version = "0.28.0";
+  pyproject = true;
 
   disabled = pythonOlder "3.8";
 
@@ -17,26 +18,20 @@ buildPythonPackage rec {
     owner = "python-validators";
     repo = "validators";
     rev = "refs/tags/${version}";
-    hash = "sha256-Qu6Tu9uIluT1KBJYkFjDFt9AWN2Kez3uCYDQknXqYrU=";
+    hash = "sha256-r3SQvt96y8e9odWxz0GjVKH3+Pa0Lqs+tbhryeGaZUU=";
   };
 
-  nativeBuildInputs = [
-    setuptools
-  ];
+  build-system = [ setuptools ];
 
-  nativeCheckInputs = [
-    pytestCheckHook
-  ];
+  nativeCheckInputs = [ pytestCheckHook ];
 
-  pythonImportsCheck = [
-    "validators"
-  ];
+  pythonImportsCheck = [ "validators" ];
 
   meta = with lib; {
     description = "Python Data Validation for Humans";
     homepage = "https://github.com/python-validators/validators";
     changelog = "https://github.com/python-validators/validators/blob/${version}/CHANGES.md";
     license = licenses.mit;
-    maintainers = [ ];
+    maintainers = with maintainers; [ fab ];
   };
 }
diff --git a/pkgs/development/python-modules/versioningit/default.nix b/pkgs/development/python-modules/versioningit/default.nix
index a58f2d6133aa..f5c6180b2344 100644
--- a/pkgs/development/python-modules/versioningit/default.nix
+++ b/pkgs/development/python-modules/versioningit/default.nix
@@ -17,14 +17,14 @@
 
 buildPythonPackage rec {
   pname = "versioningit";
-  version = "3.0.0";
+  version = "3.1.0";
   format = "pyproject";
 
   disabled = pythonOlder "3.8";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-TjzkemQk2FCunlXhsTSgIOn8vLiVM48QfytcUdNMnBs=";
+    hash = "sha256-eqxxPDGlPrNnprvC6LPejMK4bRDUXFEBr9ZRRGyxD9c=";
   };
 
   postPatch = ''
diff --git a/pkgs/development/python-modules/virt-firmware/default.nix b/pkgs/development/python-modules/virt-firmware/default.nix
index 8f2f0c073609..d5da9d57c40f 100644
--- a/pkgs/development/python-modules/virt-firmware/default.nix
+++ b/pkgs/development/python-modules/virt-firmware/default.nix
@@ -9,13 +9,13 @@
 
 buildPythonPackage rec {
   pname = "virt-firmware";
-  version = "24.2";
+  version = "24.4";
 
   pyproject = true;
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-bvk3MIgPY6DJ+y0eKQHLffClNjPAEP7AJ15rFObiMig=";
+    hash = "sha256-rqhaKDOQEOj6bcRz3qZJ+a4yG1qTC9SUjuxMhZlnmwU=";
   };
 
   pythonImportsCheck = [ "virt.firmware.efi" ];
diff --git a/pkgs/development/python-modules/virtualenv-clone/default.nix b/pkgs/development/python-modules/virtualenv-clone/default.nix
index 51c1d12b184d..2ae7abe457db 100644
--- a/pkgs/development/python-modules/virtualenv-clone/default.nix
+++ b/pkgs/development/python-modules/virtualenv-clone/default.nix
@@ -20,7 +20,7 @@ buildPythonPackage rec {
   postPatch = ''
     substituteInPlace tests/__init__.py \
       --replace "'virtualenv'" "'${virtualenv}/bin/virtualenv'" \
-      --replace "'3.9', '3.10']" "'3.9', '3.10', '3.11']" # if the Python version used isn't in this list, tests fail
+      --replace "'3.9', '3.10']" "'3.9', '3.10', '3.11', '3.12']" # if the Python version used isn't in this list, tests fail
 
     substituteInPlace tests/test_virtualenv_sys.py \
       --replace "'virtualenv'" "'${virtualenv}/bin/virtualenv'"
diff --git a/pkgs/development/python-modules/virtualenv/default.nix b/pkgs/development/python-modules/virtualenv/default.nix
index 44ca0ff4f4f3..d2b60338121b 100644
--- a/pkgs/development/python-modules/virtualenv/default.nix
+++ b/pkgs/development/python-modules/virtualenv/default.nix
@@ -21,14 +21,14 @@
 
 buildPythonPackage rec {
   pname = "virtualenv";
-  version = "20.25.1";
+  version = "20.25.3";
   format = "pyproject";
 
   disabled = pythonOlder "3.7";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-4I4T7NynoL1TeY81bVgxQ0r6Wwe5Pwq98Hl7egb/4Zc=";
+    hash = "sha256-e7VUu9/qrMM0n6YU6lv/asMA/HwzXp+s86O8/HA/Rb4=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/python-modules/waybackpy/default.nix b/pkgs/development/python-modules/waybackpy/default.nix
new file mode 100644
index 000000000000..1faa3beaef8f
--- /dev/null
+++ b/pkgs/development/python-modules/waybackpy/default.nix
@@ -0,0 +1,34 @@
+{ lib
+, buildPythonPackage
+, fetchPypi
+, click
+, urllib3
+, requests
+, pytest
+}:
+buildPythonPackage rec {
+  pname = "waybackpy";
+  version = "3.0.6";
+
+  src = fetchPypi {
+    inherit pname version;
+    hash = "sha256-SXo3F1arp2ROt62g69TtsVy4xTvBNMyXO/AjoSyv+D8=";
+  };
+
+  dependencies = [
+    click
+    urllib3
+    requests
+  ];
+
+  nativeBuildInputs = [ pytest ];
+
+  pythonImportsCheck = [ "waybackpy" ];
+
+  meta = with lib; {
+    homepage = "https://akamhy.github.io/waybackpy/";
+    description = "Wayback Machine API interface & a command-line tool";
+    license = licenses.mit;
+    maintainers = with maintainers; [ chpatrick ];
+  };
+}
diff --git a/pkgs/development/python-modules/wcmatch/default.nix b/pkgs/development/python-modules/wcmatch/default.nix
index fa5a75c13268..7f86afe62117 100644
--- a/pkgs/development/python-modules/wcmatch/default.nix
+++ b/pkgs/development/python-modules/wcmatch/default.nix
@@ -8,12 +8,12 @@
 
 buildPythonPackage rec {
   pname = "wcmatch";
-  version = "8.5.1";
+  version = "8.5.2";
   format = "pyproject";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-wAiMf2Qmz2vyflMOK3tzQDGQX35JBHX9g8fFAIq1gbM=";
+    hash = "sha256-pwIiuG3qgvs4Ldh7cyeMEHVsE4vW+PcU4hgxKIh7nrI=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/python-modules/weasel/default.nix b/pkgs/development/python-modules/weasel/default.nix
index 26418749c80f..e38c815d7c7f 100644
--- a/pkgs/development/python-modules/weasel/default.nix
+++ b/pkgs/development/python-modules/weasel/default.nix
@@ -33,6 +33,7 @@ buildPythonPackage rec {
   pythonRelaxDeps = [
     "cloudpathlib"
     "smart-open"
+    "typer"
   ];
 
   nativeBuildInputs = [
diff --git a/pkgs/development/python-modules/weaviate-client/default.nix b/pkgs/development/python-modules/weaviate-client/default.nix
index f92ef94177d5..9047bc8fb176 100644
--- a/pkgs/development/python-modules/weaviate-client/default.nix
+++ b/pkgs/development/python-modules/weaviate-client/default.nix
@@ -17,7 +17,7 @@
 
 buildPythonPackage rec {
   pname = "weaviate-client";
-  version = "4.5.6";
+  version = "4.6.0";
   pyproject = true;
 
   disabled = pythonOlder "3.8";
@@ -26,7 +26,7 @@ buildPythonPackage rec {
     owner = "weaviate";
     repo = "weaviate-python-client";
     rev = "refs/tags/v${version}";
-    hash = "sha256-P1GiTsRDbJssoLZR//c+b4IJ2Zyb/0PaBLL+wmmI6zc=";
+    hash = "sha256-F4FFG8W8zjEcD1OssioKTik0sy6B/kGITYfW+bqhNkQ=";
   };
 
   pythonRelaxDeps = [
diff --git a/pkgs/development/python-modules/webauthn/default.nix b/pkgs/development/python-modules/webauthn/default.nix
index ad28892290ee..f1197fe4a7af 100644
--- a/pkgs/development/python-modules/webauthn/default.nix
+++ b/pkgs/development/python-modules/webauthn/default.nix
@@ -10,7 +10,7 @@
 
 buildPythonPackage rec {
   pname = "webauthn";
-  version = "2.0.0";
+  version = "2.1.0";
   format = "setuptools";
 
   disabled = pythonOlder "3.8";
@@ -19,7 +19,7 @@ buildPythonPackage rec {
     owner = "duo-labs";
     repo = "py_webauthn";
     rev = "refs/tags/v${version}";
-    hash = "sha256-StqoSrzErV13/OUpSWbI+6N5tSFPEpvnmQcDiZMaXPI=";
+    hash = "sha256-AfQ3lt0WvoThU5kCE7MzhAXwbqmNaCrUqOMWI937hO4=";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/webdataset/default.nix b/pkgs/development/python-modules/webdataset/default.nix
index 5f18d28f9fbd..1215d5a1c8c4 100644
--- a/pkgs/development/python-modules/webdataset/default.nix
+++ b/pkgs/development/python-modules/webdataset/default.nix
@@ -16,14 +16,14 @@
 }:
 buildPythonPackage rec {
   pname = "webdataset";
-  version = "0.2.86";
+  version = "0.2.90";
   pyproject = true;
 
   src = fetchFromGitHub {
     owner = "webdataset";
     repo = "webdataset";
     rev = "refs/tags/${version}";
-    hash = "sha256-aTjxoSoQ9LH4gcFmV+7Aj0HNIpvsFHTrxFUpAtB3nkM=";
+    hash = "sha256-selj7XD7NS831lbPnx/4o46bNpsxuFdSEIIb4S2b7S0=";
   };
 
   nativeBuildInputs = [
@@ -51,21 +51,26 @@ buildPythonPackage rec {
   disabledTests = [
     # requires network
     "test_batched"
+    "test_cache_dir"
+    "test_concurrent_download_and_open"
     "test_dataloader"
     "test_decode_handlers"
     "test_decoder"
-    "test_decoder"
     "test_download"
     "test_handlers"
     "test_pipe"
+    "test_remote_file"
     "test_shard_syntax"
     "test_torchvision"
-    "test_torchvision"
     "test_unbatched"
     "test_yaml3"
   ] ++ lib.optionals stdenv.isDarwin [
     # pickling error
     "test_background_download"
+  ] ++ lib.optionals (stdenv.isx86_64 && stdenv.isDarwin) [
+    "test_concurrent_access"
+    # fails to patch 'init_process_group' from torch.distributed
+    "TestDistributedChunkedSampler"
   ] ++ lib.optionals (stdenv.isAarch64 && stdenv.isLinux) [
     # segfaults on aarch64-linux
     "test_webloader"
@@ -78,6 +83,7 @@ buildPythonPackage rec {
     description = "A high-performance Python-based I/O system for large (and small) deep learning problems, with strong support for PyTorch";
     mainProgram = "widsindex";
     homepage = "https://github.com/webdataset/webdataset";
+    changelog = "https://github.com/webdataset/webdataset/releases/tag/${version}";
     license = licenses.bsd3;
     maintainers = with maintainers; [ iynaix ];
   };
diff --git a/pkgs/development/python-modules/webexteamssdk/default.nix b/pkgs/development/python-modules/webexteamssdk/default.nix
index 1e81e90af9a6..30eeb64d83a1 100644
--- a/pkgs/development/python-modules/webexteamssdk/default.nix
+++ b/pkgs/development/python-modules/webexteamssdk/default.nix
@@ -1,28 +1,41 @@
-{ lib
-, buildPythonPackage
-, fetchFromGitHub
-, future
-, pyjwt
-, pythonOlder
-, requests
-, requests-toolbelt
+{
+  lib,
+  buildPythonPackage,
+  fetchFromGitHub,
+  future,
+  pyjwt,
+  pythonOlder,
+  requests,
+  requests-toolbelt,
+  setuptools,
+  versioneer,
 }:
 
 buildPythonPackage rec {
   pname = "webexteamssdk";
   version = "1.6.1";
-  format = "setuptools";
+  pyproject = true;
 
   disabled = pythonOlder "3.7";
 
   src = fetchFromGitHub {
     owner = "CiscoDevNet";
-    repo = pname;
-    rev = "v${version}";
+    repo = "webexteamssdk";
+    rev = "refs/tags/v${version}";
     hash = "sha256-xlkmXl4tVm48drXmkUijv9GNXzJcDnfSKbOMciPIRRo=";
   };
 
-  propagatedBuildInputs = [
+  postPatch = ''
+    # Remove vendorized versioneer
+    rm versioneer.py
+  '';
+
+  build-system = [
+    setuptools
+    versioneer
+  ];
+
+  dependencies = [
     future
     pyjwt
     requests
@@ -32,13 +45,12 @@ buildPythonPackage rec {
   # Tests require a Webex Teams test domain
   doCheck = false;
 
-  pythonImportsCheck = [
-    "webexteamssdk"
-  ];
+  pythonImportsCheck = [ "webexteamssdk" ];
 
   meta = with lib; {
     description = "Python module for Webex Teams APIs";
     homepage = "https://github.com/CiscoDevNet/webexteamssdk";
+    changelog = "https://github.com/WebexCommunity/WebexPythonSDK/releases/tag/v${version}";
     license = with licenses; [ mit ];
     maintainers = with maintainers; [ fab ];
   };
diff --git a/pkgs/development/python-modules/werkzeug/default.nix b/pkgs/development/python-modules/werkzeug/default.nix
index 51e380ece2a1..80ed4c53539a 100644
--- a/pkgs/development/python-modules/werkzeug/default.nix
+++ b/pkgs/development/python-modules/werkzeug/default.nix
@@ -3,7 +3,6 @@
 , buildPythonPackage
 , pythonOlder
 , fetchPypi
-, fetchpatch2
 
 # build-system
 , flit-core
@@ -29,24 +28,16 @@
 
 buildPythonPackage rec {
   pname = "werkzeug";
-  version = "3.0.1";
+  version = "3.0.2";
   format = "pyproject";
 
   disabled = pythonOlder "3.8";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-UH6BHs6nKxikBJR63tSzOQ4duPgmtJTXZVDvRbs7Hcw=";
+    hash = "sha256-45tkWmrJKCJYjns5ppLngockzq4LDXAu+WcB+Q5wEo0=";
   };
 
-  patches = [
-    (fetchpatch2 {
-      name = "werkzeug-pytest8-compat.patch";
-      url = "https://github.com/pallets/werkzeug/commit/4e5bdca7f8227d10cae828f8064fb98190ace4aa.patch";
-      hash = "sha256-lVknzvC+HIM6TagpyIOhnb+7tx0UXuGw0tINjsujISI=";
-    })
-  ];
-
   nativeBuildInputs = [
     flit-core
   ];
diff --git a/pkgs/development/python-modules/wheel-inspect/default.nix b/pkgs/development/python-modules/wheel-inspect/default.nix
index bf2ff4ece67b..30c8b30a095c 100644
--- a/pkgs/development/python-modules/wheel-inspect/default.nix
+++ b/pkgs/development/python-modules/wheel-inspect/default.nix
@@ -11,6 +11,7 @@
 , pytestCheckHook
 , pythonOlder
 , readme-renderer
+, setuptools
 , wheel-filename
 }:
 
@@ -53,10 +54,14 @@ buildPythonPackage rec {
   ];
 
   nativeCheckInputs = [
-    jsonschema
     pytestCheckHook
   ];
 
+  checkInputs = [
+    setuptools
+    jsonschema
+  ];
+
   pythonImportsCheck = [
     "wheel_inspect"
   ];
diff --git a/pkgs/development/python-modules/wheel/default.nix b/pkgs/development/python-modules/wheel/default.nix
index 14339d2056f3..6a682fc300c9 100644
--- a/pkgs/development/python-modules/wheel/default.nix
+++ b/pkgs/development/python-modules/wheel/default.nix
@@ -6,14 +6,14 @@
 
 buildPythonPackage rec {
   pname = "wheel";
-  version = "0.42.0";
+  version = "0.43.0";
   format = "pyproject";
 
   src = fetchFromGitHub {
     owner = "pypa";
     repo = pname;
     rev = "refs/tags/${version}";
-    hash = "sha256-WML3/gAK1R9DEeRVZWeO0VRFuNVKP52i5I5mYV6vQcI=";
+    hash = "sha256-cATYN7GtS1l3GxcqBl95RsBTuszWoFB9CtuRgUSL0/A=";
     postFetch = ''
       cd $out
       mv tests/testdata/unicode.dist/unicodedist/åäö_日本語.py \
diff --git a/pkgs/development/python-modules/wheezy-template/default.nix b/pkgs/development/python-modules/wheezy-template/default.nix
index 0baba9c564e5..53a0bf2867d0 100644
--- a/pkgs/development/python-modules/wheezy-template/default.nix
+++ b/pkgs/development/python-modules/wheezy-template/default.nix
@@ -5,11 +5,11 @@
 
 buildPythonPackage rec {
   pname = "wheezy.template";
-  version = "3.1.0";
+  version = "3.2.2";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-4RAHysczaNzhKZjjS2bEdgFrtGFHH/weTVboQALslg8=";
+    hash = "sha256-hknPXHGPPNjRAr0TYVosPaTntsjwQjOKZBCU+qFlIHw=";
   };
 
   pythonImportsCheck = [ "wheezy.template" ];
diff --git a/pkgs/development/python-modules/willow/default.nix b/pkgs/development/python-modules/willow/default.nix
index 2b0058357d88..cb4d128eb246 100644
--- a/pkgs/development/python-modules/willow/default.nix
+++ b/pkgs/development/python-modules/willow/default.nix
@@ -1,7 +1,6 @@
 { lib
 , buildPythonPackage
 , fetchFromGitHub
-, pythonOlder
 
 # build-system
 , flit-core
@@ -26,8 +25,6 @@ buildPythonPackage rec {
   version = "1.8.0";
   format = "pyproject";
 
-  disabled = pythonOlder "2.7";
-
   src = fetchFromGitHub {
     owner = "wagtail";
     repo = "Willow";
diff --git a/pkgs/development/python-modules/winacl/default.nix b/pkgs/development/python-modules/winacl/default.nix
index ab27147d6519..3ff55cf32a72 100644
--- a/pkgs/development/python-modules/winacl/default.nix
+++ b/pkgs/development/python-modules/winacl/default.nix
@@ -1,37 +1,32 @@
-{ lib
-, buildPythonPackage
-, cryptography
-, fetchPypi
-, pythonOlder
+{
+  lib,
+  buildPythonPackage,
+  cryptography,
+  fetchPypi,
+  pythonOlder,
+  setuptools,
 }:
 
 buildPythonPackage rec {
   pname = "winacl";
-  version = "0.1.8";
-  format = "setuptools";
+  version = "0.1.9";
+  pyproject = true;
 
   disabled = pythonOlder "3.7";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-RCcaMCVi3lFin2jvFUDUDzom57wBc2RrAaZ3nO2tZEw=";
+    hash = "sha256-r3DC7DAXi/njyKHEjCXoeBI1/iwbMhrbRuLyrh+NSqs=";
   };
 
-  propagatedBuildInputs = [
-    cryptography
-  ];
+  build-system = [ setuptools ];
 
-  postPatch = ''
-    substituteInPlace setup.py \
-      --replace "cryptography>=38.0.1" "cryptography"
-  '';
+  dependencies = [ cryptography ];
 
   # Project doesn't have tests
   doCheck = false;
 
-  pythonImportsCheck = [
-    "winacl"
-  ];
+  pythonImportsCheck = [ "winacl" ];
 
   meta = with lib; {
     description = "Python module for ACL/ACE/Security descriptor manipulation";
diff --git a/pkgs/development/python-modules/wktutils/default.nix b/pkgs/development/python-modules/wktutils/default.nix
index 549e7f480b08..23529f04a356 100644
--- a/pkgs/development/python-modules/wktutils/default.nix
+++ b/pkgs/development/python-modules/wktutils/default.nix
@@ -1,25 +1,25 @@
-{ lib
-, buildPythonPackage
-, dateparser
-, defusedxml
-, fetchFromGitHub
-, fiona
-, geomet
-, geopandas
-, kml2geojson
-, pyshp
-, pythonOlder
-, pyyaml
-, regex
-, requests
-, shapely
-, scikit-learn
+{
+  lib,
+  buildPythonPackage,
+  dateparser,
+  defusedxml,
+  fetchFromGitHub,
+  geomet,
+  geopandas,
+  kml2geojson,
+  pyshp,
+  pythonOlder,
+  pyyaml,
+  requests,
+  setuptools-scm,
+  shapely,
+  scikit-learn,
 }:
 
 buildPythonPackage rec {
   pname = "wktutils";
-  version = "1.1.6";
-  format = "setuptools";
+  version = "2.0.0";
+  pyproject = true;
 
   disabled = pythonOlder "3.7";
 
@@ -27,39 +27,43 @@ buildPythonPackage rec {
     owner = "asfadmin";
     repo = "Discovery-WKTUtils";
     rev = "refs/tags/v${version}";
-    hash = "sha256-PFeIMIFOff9ztdmIP7jcFzKkmhm01G0QnDm20AafUsg=";
+    hash = "sha256-mB+joEZq/aFPcRqFAzPgwG26Wi7WiRCeQeFottk+4Ho=";
   };
 
-  propagatedBuildInputs = [
+  postPatch = ''
+    substituteInPlace pyproject.toml \
+      --replace-fail '"twine",' ""
+  '';
+
+  build-system = [ setuptools-scm ];
+
+  dependencies = [
     dateparser
     defusedxml
-    fiona
     geomet
     geopandas
     kml2geojson
     pyshp
     pyyaml
-    regex
-    requests
     shapely
-    scikit-learn
   ];
 
-  postPatch = ''
-    substituteInPlace setup.py \
-      --replace "sklearn" "scikit-learn"
-  '';
+  passthru.optional-dependencies = {
+    extras = [
+      requests
+      scikit-learn
+    ];
+  };
 
   # Module doesn't have tests
   doCheck = false;
 
-  pythonImportsCheck = [
-    "WKTUtils"
-  ];
+  pythonImportsCheck = [ "WKTUtils" ];
 
   meta = with lib; {
     description = "Collection of tools for handling WKTs";
     homepage = "https://github.com/asfadmin/Discovery-WKTUtils";
+    changelog = "https://github.com/asfadmin/Discovery-WKTUtils/blob/v${version}/CHANGELOG.md";
     license = licenses.bsd3;
     maintainers = with maintainers; [ fab ];
   };
diff --git a/pkgs/development/python-modules/wled/default.nix b/pkgs/development/python-modules/wled/default.nix
index 7d90c554907c..fe0b4b9a19cf 100644
--- a/pkgs/development/python-modules/wled/default.nix
+++ b/pkgs/development/python-modules/wled/default.nix
@@ -16,7 +16,7 @@
 
 buildPythonPackage rec {
   pname = "wled";
-  version = "0.17.0";
+  version = "0.17.1";
   format = "pyproject";
 
   disabled = pythonOlder "3.11";
@@ -25,7 +25,7 @@ buildPythonPackage rec {
     owner = "frenck";
     repo = "python-wled";
     rev = "refs/tags/v${version}";
-    hash = "sha256-y32zynkVsn5vWw+BZ6ZRf9zemGOWJMN4yfNQZ0bRpos=";
+    hash = "sha256-9682AbcADhd9m5XrYeDFiX+sJCCe+pnuvntJDnpzJ+U=";
   };
 
   postPatch = ''
diff --git a/pkgs/development/python-modules/woob/default.nix b/pkgs/development/python-modules/woob/default.nix
index abc876b388a8..96a3f5ebc9c0 100644
--- a/pkgs/development/python-modules/woob/default.nix
+++ b/pkgs/development/python-modules/woob/default.nix
@@ -2,6 +2,7 @@
 , babel
 , buildPythonPackage
 , fetchFromGitLab
+, fetchpatch
 , pythonRelaxDepsHook
 , html2text
 , lxml
@@ -11,6 +12,7 @@
 , pycountry
 , pytestCheckHook
 , python-dateutil
+, python-jose
 , pythonOlder
 , pyyaml
 , requests
@@ -35,6 +37,14 @@ buildPythonPackage rec {
     hash = "sha256-M9AjV954H1w64YGCVxDEGGSnoEbmocG3zwltob6IW04=";
   };
 
+  patches = [
+    (fetchpatch {
+      name = "no-deprecated-pkg_resources.patch";
+      url = "https://gitlab.com/woob/woob/-/commit/3283c4c1a935cc71acea98b2d8c88bc4bf28f643.patch";
+      hash = "sha256-3bRuv93ivKRxbGr52coO023DlxHZWwUeInXTPqQAeL8=";
+    })
+  ];
+
   nativeBuildInputs = [
     setuptools
     pythonRelaxDepsHook
@@ -47,6 +57,7 @@ buildPythonPackage rec {
   propagatedBuildInputs = [
     babel
     python-dateutil
+    python-jose
     html2text
     lxml
     packaging
diff --git a/pkgs/development/python-modules/wsgidav/default.nix b/pkgs/development/python-modules/wsgidav/default.nix
index db7e85e1937e..c05415323093 100644
--- a/pkgs/development/python-modules/wsgidav/default.nix
+++ b/pkgs/development/python-modules/wsgidav/default.nix
@@ -1,22 +1,23 @@
-{ lib
-, buildPythonPackage
-, cheroot
-, fetchFromGitHub
-, pytestCheckHook
-, pythonOlder
-, defusedxml
-, jinja2
-, json5
-, python-pam
-, pyyaml
-, requests
-, setuptools
-, webtest
+{
+  lib,
+  buildPythonPackage,
+  cheroot,
+  fetchFromGitHub,
+  pytestCheckHook,
+  pythonOlder,
+  defusedxml,
+  jinja2,
+  json5,
+  python-pam,
+  pyyaml,
+  requests,
+  setuptools,
+  webtest,
 }:
 
 buildPythonPackage rec {
   pname = "wsgidav";
-  version = "4.3.2";
+  version = "4.3.3";
   pyproject = true;
 
   disabled = pythonOlder "3.7";
@@ -25,12 +26,12 @@ buildPythonPackage rec {
     owner = "mar10";
     repo = "wsgidav";
     rev = "refs/tags/v${version}";
-    hash = "sha256-93+8h+vRLnspQ/lmdjKYpzSEJSKcqCkB4qRqTuKHNRA=";
+    hash = "sha256-vUqNC7ixpta0s7wRC5ROSKMa/MsgEBu5rr0XNu69FRw=";
   };
 
-  build-system = [
-    setuptools
-  ];
+  __darwinAllowLocalNetworking = true;
+
+  build-system = [ setuptools ];
 
   dependencies = [
     defusedxml
@@ -40,8 +41,6 @@ buildPythonPackage rec {
     pyyaml
   ];
 
-  __darwinAllowLocalNetworking = true;
-
   nativeCheckInputs = [
     cheroot
     pytestCheckHook
@@ -49,9 +48,7 @@ buildPythonPackage rec {
     webtest
   ];
 
-  pythonImportsCheck = [
-    "wsgidav"
-  ];
+  pythonImportsCheck = [ "wsgidav" ];
 
   meta = with lib; {
     description = "Generic and extendable WebDAV server based on WSGI";
diff --git a/pkgs/development/python-modules/wsgitools/default.nix b/pkgs/development/python-modules/wsgitools/default.nix
index 948f932271c1..17eb56ec4e2b 100644
--- a/pkgs/development/python-modules/wsgitools/default.nix
+++ b/pkgs/development/python-modules/wsgitools/default.nix
@@ -1,18 +1,32 @@
-{lib
-,buildPythonPackage
-,fetchPypi
+{
+  lib,
+  buildPythonPackage,
+  pythonAtLeast,
+  fetchPypi,
+  setuptools,
+  pyasyncore,
+  unittestCheckHook,
 }:
 
 buildPythonPackage rec {
   pname = "wsgitools";
   version = "0.3.1";
-  format = "setuptools";
+  pyproject = true;
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "0q6kmrkqf02fgww7z1g9cw8f70fimdzs1bvv9inb7fsk0c3pcf1i";
+    hash = "sha256-MTh2BwNTu7NsTHuvoH+r0YHjEGfphX84f04Ah2eu02A=";
   };
 
+  build-system = [ setuptools ];
+
+  # the built-in asyncore library was removed in python 3.12
+  dependencies = lib.optionals (pythonAtLeast "3.12") [ pyasyncore ];
+
+  pythonImportsCheck = [ "wsgitools" ];
+
+  nativeCheckInputs = [ unittestCheckHook ];
+
   meta = with lib; {
     maintainers = with maintainers; [ clkamp ];
     description = "A set of tools working with WSGI";
diff --git a/pkgs/development/python-modules/wurlitzer/default.nix b/pkgs/development/python-modules/wurlitzer/default.nix
index ee93a2c6454d..a5af618cb8ff 100644
--- a/pkgs/development/python-modules/wurlitzer/default.nix
+++ b/pkgs/development/python-modules/wurlitzer/default.nix
@@ -7,14 +7,14 @@
 
 buildPythonPackage rec {
   pname = "wurlitzer";
-  version = "3.0.3";
+  version = "3.1.0";
   format = "setuptools";
 
   disabled = pythonOlder "3.7";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-Ik9f5wYYvjhywF393IxFcZHsGHBlRZYnn8we2t6+Pls=";
+    hash = "sha256-sx07GKtrg5SzrbiyGEGtbUtrsZW5tkKVOHLburTCmyo=";
   };
 
   nativeCheckInputs = [
diff --git a/pkgs/development/python-modules/wxpython/4.2.nix b/pkgs/development/python-modules/wxpython/4.2.nix
index 70175f58c449..c2e4f1b0c36e 100644
--- a/pkgs/development/python-modules/wxpython/4.2.nix
+++ b/pkgs/development/python-modules/wxpython/4.2.nix
@@ -2,7 +2,7 @@
 , stdenv
 , buildPythonPackage
 , setuptools
-, pythonOlder
+, pythonAtLeast
 , fetchPypi
 , substituteAll
 
@@ -43,7 +43,7 @@ buildPythonPackage rec {
   pname = "wxpython";
   version = "4.2.1";
   format = "other";
-  disabled = pythonOlder "3.7";
+  disabled = pythonAtLeast "3.12";
 
   src = fetchPypi {
     pname = "wxPython";
diff --git a/pkgs/development/python-modules/xarray-dataclasses/default.nix b/pkgs/development/python-modules/xarray-dataclasses/default.nix
index aae2cdd7f1d7..44d19a689008 100644
--- a/pkgs/development/python-modules/xarray-dataclasses/default.nix
+++ b/pkgs/development/python-modules/xarray-dataclasses/default.nix
@@ -4,6 +4,7 @@
 , pythonOlder
 , poetry-core
 , pytestCheckHook
+, pythonRelaxDepsHook
 , numpy
 , typing-extensions
 , xarray
@@ -25,6 +26,11 @@ buildPythonPackage rec {
 
   nativeBuildInputs = [
     poetry-core
+    pythonRelaxDepsHook
+  ];
+
+  pythonRelaxDeps = [
+    "xarray"
   ];
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/xcffib/default.nix b/pkgs/development/python-modules/xcffib/default.nix
index b0b00da0dc32..ff5215ccb4cc 100644
--- a/pkgs/development/python-modules/xcffib/default.nix
+++ b/pkgs/development/python-modules/xcffib/default.nix
@@ -47,11 +47,15 @@ buildPythonPackage rec {
     "xcffib"
   ];
 
+  # Tests use xvfb
+  __darwinAllowLocalNetworking = true;
+
   meta = with lib; {
     description = "A drop in replacement for xpyb, an XCB python binding";
     homepage = "https://github.com/tych0/xcffib";
     changelog = "https://github.com/tych0/xcffib/releases/tag/v${version}";
     license = licenses.asl20;
+    platforms = platforms.linux ++ platforms.darwin ++ platforms.windows;
     maintainers = with maintainers; [ kamilchm ];
   };
 }
diff --git a/pkgs/development/python-modules/xdot/default.nix b/pkgs/development/python-modules/xdot/default.nix
index f0bfe71fcbb0..3cf0564c70a3 100644
--- a/pkgs/development/python-modules/xdot/default.nix
+++ b/pkgs/development/python-modules/xdot/default.nix
@@ -3,7 +3,7 @@
 , fetchFromGitHub
 , python
 , xvfb-run
-, wrapGAppsHook
+, wrapGAppsHook3
 , gobject-introspection
 , pygobject3
 , graphviz
@@ -25,7 +25,7 @@ buildPythonPackage rec {
 
   nativeBuildInputs = [
     gobject-introspection
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
   propagatedBuildInputs = [
     pygobject3
diff --git a/pkgs/development/python-modules/xiaomi-ble/default.nix b/pkgs/development/python-modules/xiaomi-ble/default.nix
index 221346d2c76a..02f6bc25c86a 100644
--- a/pkgs/development/python-modules/xiaomi-ble/default.nix
+++ b/pkgs/development/python-modules/xiaomi-ble/default.nix
@@ -1,23 +1,24 @@
-{ lib
-, bleak
-, bleak-retry-connector
-, bluetooth-data-tools
-, bluetooth-sensor-state-data
-, buildPythonPackage
-, cryptography
-, fetchFromGitHub
-, home-assistant-bluetooth
-, poetry-core
-, pycryptodomex
-, pytestCheckHook
-, pythonOlder
-, pythonRelaxDepsHook
-, sensor-state-data
+{
+  lib,
+  bleak,
+  bleak-retry-connector,
+  bluetooth-data-tools,
+  bluetooth-sensor-state-data,
+  buildPythonPackage,
+  cryptography,
+  fetchFromGitHub,
+  home-assistant-bluetooth,
+  poetry-core,
+  pycryptodomex,
+  pytestCheckHook,
+  pythonOlder,
+  pythonRelaxDepsHook,
+  sensor-state-data,
 }:
 
 buildPythonPackage rec {
   pname = "xiaomi-ble";
-  version = "0.28.0";
+  version = "0.29.0";
   pyproject = true;
 
   disabled = pythonOlder "3.9";
@@ -26,7 +27,7 @@ buildPythonPackage rec {
     owner = "Bluetooth-Devices";
     repo = "xiaomi-ble";
     rev = "refs/tags/v${version}";
-    hash = "sha256-Va/fzGDjBR/h1lUN47AixZnDYzEPNXQKTVXILKayhBc=";
+    hash = "sha256-+zMjnLUzI8ctucvxXts7V4lN4Gp0ZQtArhpXUCBvhF0=";
   };
 
   postPatch = ''
@@ -34,14 +35,11 @@ buildPythonPackage rec {
       --replace-fail " --cov=xiaomi_ble --cov-report=term-missing:skip-covered" ""
   '';
 
-  build-system = [
-    poetry-core
-    pythonRelaxDepsHook
-  ];
+  build-system = [ poetry-core ];
 
-  pythonRelaxDeps = [
-    "pycryptodomex"
-  ];
+  nativeBuildInputs = [ pythonRelaxDepsHook ];
+
+  pythonRelaxDeps = [ "pycryptodomex" ];
 
   dependencies = [
     bleak
@@ -54,13 +52,9 @@ buildPythonPackage rec {
     sensor-state-data
   ];
 
-  nativeCheckInputs = [
-    pytestCheckHook
-  ];
+  nativeCheckInputs = [ pytestCheckHook ];
 
-  pythonImportsCheck = [
-    "xiaomi_ble"
-  ];
+  pythonImportsCheck = [ "xiaomi_ble" ];
 
   meta = with lib; {
     description = "Library for Xiaomi BLE devices";
diff --git a/pkgs/development/python-modules/xmldiff/default.nix b/pkgs/development/python-modules/xmldiff/default.nix
index 6356b9bff352..2fc4a739e258 100644
--- a/pkgs/development/python-modules/xmldiff/default.nix
+++ b/pkgs/development/python-modules/xmldiff/default.nix
@@ -10,7 +10,7 @@
 buildPythonPackage rec {
   pname = "xmldiff";
   version = "2.6.3";
-  format = "setuptools";
+  pyproject = true;
 
   disabled = pythonOlder "3.7";
 
@@ -19,7 +19,11 @@ buildPythonPackage rec {
     hash = "sha256-GbAws/o30fC1xa2a2pBZiEw78sdRxd2PHrTtSc/j/GA=";
   };
 
-  propagatedBuildInputs = [
+  build-system = [
+    setuptools
+  ];
+
+  dependencies = [
     lxml
     setuptools
   ];
diff --git a/pkgs/development/python-modules/xmlsec/default.nix b/pkgs/development/python-modules/xmlsec/default.nix
index 94af405e8f64..28dfd80dcd9d 100644
--- a/pkgs/development/python-modules/xmlsec/default.nix
+++ b/pkgs/development/python-modules/xmlsec/default.nix
@@ -15,12 +15,12 @@
 
 buildPythonPackage rec {
   pname = "xmlsec";
-  version = "1.3.13";
+  version = "1.3.14";
   format = "pyproject";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-kW9deOgEH2zZORq7plnajJSk/vcZbRJtQK8f9Bfyz4Y=";
+    hash = "sha256-k0+ATy+JW824bx6u4ja2YQE1YO5p7BCNKc3W5fKSotk=";
   };
 
   nativeBuildInputs = [ pkg-config pkgconfig setuptools-scm ];
diff --git a/pkgs/development/python-modules/xmltodict/default.nix b/pkgs/development/python-modules/xmltodict/default.nix
index bd4e2cbb0f2d..3b06401c3924 100644
--- a/pkgs/development/python-modules/xmltodict/default.nix
+++ b/pkgs/development/python-modules/xmltodict/default.nix
@@ -2,14 +2,12 @@
 , buildPythonPackage
 , fetchPypi
 , pytestCheckHook
-, pythonOlder
 }:
 
 buildPythonPackage rec {
   pname = "xmltodict";
   version = "0.13.0";
   format = "setuptools";
-  disabled = pythonOlder "3.4";
 
   src = fetchPypi {
     inherit pname version;
diff --git a/pkgs/development/python-modules/yalexs/default.nix b/pkgs/development/python-modules/yalexs/default.nix
index 0400906ea883..88b13859455d 100644
--- a/pkgs/development/python-modules/yalexs/default.nix
+++ b/pkgs/development/python-modules/yalexs/default.nix
@@ -19,7 +19,7 @@
 
 buildPythonPackage rec {
   pname = "yalexs";
-  version = "3.0.1";
+  version = "3.1.0";
   pyproject = true;
 
   disabled = pythonOlder "3.9";
@@ -28,7 +28,7 @@ buildPythonPackage rec {
     owner = "bdraco";
     repo = "yalexs";
     rev = "refs/tags/v${version}";
-    hash = "sha256-+FdQQzQhKhIOEnOym2DNT9uQL2uAbfE8tUXUHIFFK2I=";
+    hash = "sha256-+Sn+d6CuxIUEDLkDvcq7OT3AumElJFfWCwM02LPIeyg=";
   };
 
   postPatch = ''
diff --git a/pkgs/development/python-modules/yamale/default.nix b/pkgs/development/python-modules/yamale/default.nix
index 96d69aaddea7..b02cec6577cf 100644
--- a/pkgs/development/python-modules/yamale/default.nix
+++ b/pkgs/development/python-modules/yamale/default.nix
@@ -11,7 +11,7 @@
 
 buildPythonPackage rec {
   pname = "yamale";
-  version = "5.2.0";
+  version = "5.2.1";
   pyproject = true;
 
   disabled = pythonOlder "3.6";
@@ -20,7 +20,7 @@ buildPythonPackage rec {
     owner = "23andMe";
     repo = "yamale";
     rev = "refs/tags/${version}";
-    hash = "sha256-UTtase1b8Zjaixhp/g0tLtT6QZS4cyaSHcFz+h9Qoos=";
+    hash = "sha256-iiiQAZ050FintRSV3l2zfikTNmphhJgrn+4tUHORiSk=";
   };
 
   build-system = [ setuptools ];
diff --git a/pkgs/development/python-modules/yapf/default.nix b/pkgs/development/python-modules/yapf/default.nix
index 70f31fe5308b..01b84b2f3dc2 100644
--- a/pkgs/development/python-modules/yapf/default.nix
+++ b/pkgs/development/python-modules/yapf/default.nix
@@ -66,6 +66,7 @@ buildPythonPackage rec {
       takes away some of the drudgery of maintaining your code.
     '';
     license = lib.licenses.asl20;
+    mainProgram = "yapf";
     maintainers = with lib.maintainers; [ AndersonTorres siddharthist ];
   };
 }
diff --git a/pkgs/development/python-modules/ydiff/default.nix b/pkgs/development/python-modules/ydiff/default.nix
index 04f9be193aac..fa91086ed5d5 100644
--- a/pkgs/development/python-modules/ydiff/default.nix
+++ b/pkgs/development/python-modules/ydiff/default.nix
@@ -1,15 +1,15 @@
-{ lib, buildPythonPackage, fetchPypi, docutils, pygments
+{ lib, buildPythonPackage, fetchPypi, pygments
 , gitMinimal, mercurial, subversion, patchutils, less
 }:
 
 buildPythonPackage rec {
   pname = "ydiff";
-  version = "1.2";
+  version = "1.3";
   format = "setuptools";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "f5430577ecd30974d766ee9b8333e06dc76a947b4aae36d39612a0787865a121";
+    sha256 = "sha256-ii6EWI7zHT5SVwD6lksfmqth8MnEYoHgU0GlbgHc17g=";
   };
 
   patchPhase = ''
@@ -26,11 +26,11 @@ buildPythonPackage rec {
     patchShebangs tests/*.sh
   '';
 
-  nativeCheckInputs = [ docutils pygments ];
+  nativeCheckInputs = [ pygments ];
 
   checkPhase = ''
     runHook preCheck
-    make doc-check reg # We don't want the linter or coverage check.
+    make reg # We don't want the linter or coverage check.
     runHook postCheck
   '';
 
diff --git a/pkgs/development/python-modules/yolink-api/default.nix b/pkgs/development/python-modules/yolink-api/default.nix
index c1b4703ea4d4..8a567cd5a51e 100644
--- a/pkgs/development/python-modules/yolink-api/default.nix
+++ b/pkgs/development/python-modules/yolink-api/default.nix
@@ -12,7 +12,7 @@
 
 buildPythonPackage rec {
   pname = "yolink-api";
-  version = "0.4.3";
+  version = "0.4.4";
   pyproject = true;
 
   disabled = pythonOlder "3.7";
@@ -21,7 +21,7 @@ buildPythonPackage rec {
     owner = "YoSmart-Inc";
     repo = "yolink-api";
     rev = "refs/tags/v${version}";
-    hash = "sha256-cLuto2V5i3au1MRYYbgR2plw9YBpgIAxsG2fu4t37jk=";
+    hash = "sha256-yRxv3Itj+SkLtj5rErOzJoxj0JhsAWrdi0DucKZKKIU=";
   };
 
   build-system = [ setuptools ];
diff --git a/pkgs/development/python-modules/youless-api/default.nix b/pkgs/development/python-modules/youless-api/default.nix
index ff10359238b4..5c923e0bb313 100644
--- a/pkgs/development/python-modules/youless-api/default.nix
+++ b/pkgs/development/python-modules/youless-api/default.nix
@@ -1,48 +1,39 @@
-{ lib
-, buildPythonPackage
-, fetchFromBitbucket
-, pythonOlder
-, certifi
-, chardet
-, idna
-, pynose
-, requests
-, urllib3
+{
+  lib,
+  buildPythonPackage,
+  fetchFromGitHub,
+  pytestCheckHook,
+  pythonOlder,
+  requests,
+  setuptools,
 }:
 
 buildPythonPackage rec {
   pname = "youless-api";
-  version = "1.0.1";
-  format = "setuptools";
+  version = "1.1.1";
+  pyproject = true;
 
   disabled = pythonOlder "3.7";
 
-  src = fetchFromBitbucket {
-    owner = "jongsoftdev";
+  src = fetchFromGitHub {
+    owner = "gjong";
     repo = "youless-python-bridge";
-    rev = version;
-    hash = "sha256-49/HmkGr87aDhr8GEtARpXvr2RcgmLdAqhvMLI5x+vQ=";
+    rev = "refs/tags/${version}";
+    hash = "sha256-J3YRRVcA4LYxuJMi//LJO8Qt8hapJruZGzONODE3SsQ=";
   };
 
-  propagatedBuildInputs = [
-    certifi
-    chardet
-    idna
-    requests
-    urllib3
-  ];
+  build-system = [ setuptools ];
 
-  nativeCheckInputs = [
-    pynose
-  ];
+  dependencies = [ requests ];
 
-  pythonImportsCheck = [
-    "youless_api"
-  ];
+  nativeCheckInputs = [ pytestCheckHook ];
+
+  pythonImportsCheck = [ "youless_api" ];
 
   meta = with lib; {
     description = "Python library for YouLess sensors";
-    homepage = "https://pypi.org/project/youless-api/";
+    homepage = "https://github.com/gjong/youless-python-bridge";
+    changelog = "https://github.com/gjong/youless-python-bridge/releases/tag/${version}";
     license = with licenses; [ mit ];
     maintainers = with maintainers; [ fab ];
   };
diff --git a/pkgs/development/python-modules/yq/default.nix b/pkgs/development/python-modules/yq/default.nix
index 6a7c58c7d895..febf3aad2fd1 100644
--- a/pkgs/development/python-modules/yq/default.nix
+++ b/pkgs/development/python-modules/yq/default.nix
@@ -13,12 +13,12 @@
 
 buildPythonPackage rec {
   pname = "yq";
-  version = "3.4.1";
+  version = "3.4.3";
   format = "setuptools";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-tVjatvFcA+JKHESHiVALINbzB+6cpMk2E4fzZYFjAA0=";
+    hash = "sha256-ulhqGm8wz3BbL5IgZxLfIoHNMgKAIQ57e4Cty48lbjs=";
   };
 
   patches = [
diff --git a/pkgs/development/python-modules/ytmusicapi/default.nix b/pkgs/development/python-modules/ytmusicapi/default.nix
index 380738008361..edaae03db7cc 100644
--- a/pkgs/development/python-modules/ytmusicapi/default.nix
+++ b/pkgs/development/python-modules/ytmusicapi/default.nix
@@ -1,15 +1,16 @@
-{ lib
-, buildPythonPackage
-, fetchFromGitHub
-, pythonOlder
-, requests
-, setuptools
-, setuptools-scm
+{
+  lib,
+  buildPythonPackage,
+  fetchFromGitHub,
+  pythonOlder,
+  requests,
+  setuptools,
+  setuptools-scm,
 }:
 
 buildPythonPackage rec {
   pname = "ytmusicapi";
-  version = "1.6.0";
+  version = "1.7.1";
   pyproject = true;
 
   disabled = pythonOlder "3.8";
@@ -18,30 +19,26 @@ buildPythonPackage rec {
     owner = "sigma67";
     repo = "ytmusicapi";
     rev = "refs/tags/${version}";
-    hash = "sha256-DqTcdWVivE2R51qm3XQ7cDnD1a90AocmX9TG+M5reto=";
+    hash = "sha256-HMWb9NScT4rRMFsUXw6TW/T0P1eH0a46OegUZ0JceiE=";
   };
 
-  nativeBuildInputs = [
+  build-system = [
     setuptools
     setuptools-scm
   ];
 
-  propagatedBuildInputs = [
-    requests
-  ];
+  dependencies = [ requests ];
 
   doCheck = false; # requires network access
 
-  pythonImportsCheck = [
-    "ytmusicapi"
-  ];
+  pythonImportsCheck = [ "ytmusicapi" ];
 
   meta = with lib; {
     description = "Python API for YouTube Music";
-    mainProgram = "ytmusicapi";
     homepage = "https://github.com/sigma67/ytmusicapi";
     changelog = "https://github.com/sigma67/ytmusicapi/releases/tag/${version}";
     license = licenses.mit;
     maintainers = with maintainers; [ dotlambda ];
+    mainProgram = "ytmusicapi";
   };
 }
diff --git a/pkgs/development/python-modules/zarr/default.nix b/pkgs/development/python-modules/zarr/default.nix
index fcb57b3731dd..826a496445f6 100644
--- a/pkgs/development/python-modules/zarr/default.nix
+++ b/pkgs/development/python-modules/zarr/default.nix
@@ -13,14 +13,14 @@
 
 buildPythonPackage rec {
   pname = "zarr";
-  version = "2.17.1";
+  version = "2.17.2";
   format = "pyproject";
 
   disabled = pythonOlder "3.8";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-Vks6oHISJUb+aaD6IXNvRmsg+tQXVDNLYmGfCIzkYmE=";
+    hash = "sha256-LLqmy040LUUVLUp6SyATwzf806jnvJglNWAYDeYFUs4=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/python-modules/zdaemon/default.nix b/pkgs/development/python-modules/zdaemon/default.nix
index 54c096b64257..4e72500da1dc 100644
--- a/pkgs/development/python-modules/zdaemon/default.nix
+++ b/pkgs/development/python-modules/zdaemon/default.nix
@@ -7,14 +7,14 @@
 
 buildPythonPackage rec {
   pname = "zdaemon";
-  version = "5.0";
+  version = "5.1";
   format = "setuptools";
 
   disabled = pythonOlder "3.7";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-ml7GxRmigLvPqPfnP04Q2AjnuCcQq2COD0Sb88BtQ9U=";
+    hash = "sha256-Iun+UFDq67ngPZrWTk9jzNheBMOP2zUc8RO+9vaNt6Q=";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/zephyr-python-api/default.nix b/pkgs/development/python-modules/zephyr-python-api/default.nix
index 8ff111b605fa..c91feacb7f6d 100644
--- a/pkgs/development/python-modules/zephyr-python-api/default.nix
+++ b/pkgs/development/python-modules/zephyr-python-api/default.nix
@@ -7,12 +7,13 @@
 
 buildPythonPackage rec {
   pname = "zephyr-python-api";
-  version = "0.0.4";
+  version = "0.1.0";
   format = "pyproject";
 
   src = fetchPypi {
-    inherit pname version;
-    hash = "sha256-GIXxpItbRH31PJ7dX48w92LrYY0axbZQoAFXrRGeLas=";
+    pname = "zephyr_python_api";
+    inherit version;
+    hash = "sha256-YupGiybfhwb+I4ofr6RNBzS6LQfx5BQD/SU5nYrnqFk=";
   };
 
   nativeBuildInputs = [ setuptools ];
diff --git a/pkgs/development/python-modules/zha-quirks/default.nix b/pkgs/development/python-modules/zha-quirks/default.nix
index 03413fc6f1fc..c512dd55bc1f 100644
--- a/pkgs/development/python-modules/zha-quirks/default.nix
+++ b/pkgs/development/python-modules/zha-quirks/default.nix
@@ -12,7 +12,7 @@
 
 buildPythonPackage rec {
   pname = "zha-quirks";
-  version = "0.0.114";
+  version = "0.0.115";
   pyproject = true;
 
   disabled = pythonOlder "3.12";
@@ -21,7 +21,7 @@ buildPythonPackage rec {
     owner = "zigpy";
     repo = "zha-device-handlers";
     rev = "refs/tags/${version}";
-    hash = "sha256-FipD4VCz2/FYlf17+q7LTej9ZtT72/R4ELkAQtw7RvE=";
+    hash = "sha256-qqPBCLYS6yLpK8PzC3atQ73yi15XE3ywIUBVO7JPYVE=";
   };
 
   postPatch = ''
diff --git a/pkgs/development/python-modules/zha/default.nix b/pkgs/development/python-modules/zha/default.nix
index d6d23f46611a..0987ddfab283 100644
--- a/pkgs/development/python-modules/zha/default.nix
+++ b/pkgs/development/python-modules/zha/default.nix
@@ -45,6 +45,7 @@ buildPythonPackage rec {
   '';
 
   pythonRelaxDeps = [
+    "bellows"
     "universal-silabs-flasher"
     "zha-quirks"
   ];
diff --git a/pkgs/development/python-modules/ziafont/default.nix b/pkgs/development/python-modules/ziafont/default.nix
index 788dda332941..d50e5fdefe17 100644
--- a/pkgs/development/python-modules/ziafont/default.nix
+++ b/pkgs/development/python-modules/ziafont/default.nix
@@ -9,9 +9,8 @@
 
 buildPythonPackage rec {
   pname = "ziafont";
-  version = "0.7";
-
-  format = "pyproject";
+  version = "0.8";
+  pyproject = true;
 
   disabled = pythonOlder "3.8";
 
@@ -19,10 +18,10 @@ buildPythonPackage rec {
     owner = "cdelker";
     repo = pname;
     rev = version;
-    hash = "sha256-DQEVWYOgiGSP3WlmZzEweyRa0UY7fxjjpbued+5EH5I=";
+    hash = "sha256-C+dC+mNquDuj6RfJpiEbeuGZOIXcgSrTB4XM21reBPs=";
   };
 
-  nativeBuildInputs = [
+  build-system = [
     setuptools
   ];
 
diff --git a/pkgs/development/python-modules/ziamath/default.nix b/pkgs/development/python-modules/ziamath/default.nix
index c2d72a25f810..592e486edce1 100644
--- a/pkgs/development/python-modules/ziamath/default.nix
+++ b/pkgs/development/python-modules/ziamath/default.nix
@@ -11,8 +11,8 @@
 
 buildPythonPackage rec {
   pname = "ziamath";
-  version = "0.9";
-  format = "pyproject";
+  version = "0.10";
+  pyproject = true;
 
   disabled = pythonOlder "3.8";
 
@@ -20,14 +20,14 @@ buildPythonPackage rec {
     owner = "cdelker";
     repo = pname;
     rev = version;
-    hash = "sha256-ISd+J7R8qZ0NXdlyHMj+torzr+541UAhNCSaUH8ytSQ=";
+    hash = "sha256-Drssi+YySh4OhVYAOvgIwzeeu5dQbUUXuhwTedhUUt8=";
   };
 
-  nativeBuildInputs = [
+  build-system = [
     setuptools
   ];
 
-  propagatedBuildInputs = [
+  dependencies = [
     ziafont
   ];
 
diff --git a/pkgs/development/python-modules/zigpy/default.nix b/pkgs/development/python-modules/zigpy/default.nix
index 0a32dea6649a..a52549728bb6 100644
--- a/pkgs/development/python-modules/zigpy/default.nix
+++ b/pkgs/development/python-modules/zigpy/default.nix
@@ -1,4 +1,5 @@
 { lib
+, stdenv
 , aiohttp
 , aioresponses
 , aiosqlite
@@ -24,7 +25,7 @@
 
 buildPythonPackage rec {
   pname = "zigpy";
-  version = "0.63.5";
+  version = "0.64.0";
   pyproject = true;
 
   disabled = pythonOlder "3.8";
@@ -33,7 +34,7 @@ buildPythonPackage rec {
     owner = "zigpy";
     repo = "zigpy";
     rev = "refs/tags/${version}";
-    hash = "sha256-iZxHXxheyoA5vo0Pxojs7QE8rSyTpsYpJ6/OzDSZJ20=";
+    hash = "sha256-4p/CUAZQLiADWzjXMOeYUX0OJgZczHrI2/sVRuXiFSI=";
   };
 
   postPatch = ''
@@ -72,9 +73,9 @@ buildPythonPackage rec {
   ];
 
   disabledTests = [
-    # # Our two manual scans succeeded and the periodic one was attempted
-    # assert len(mock_scan.mock_calls) == 3
-    # AssertionError: assert 4 == 3
+    # assert quirked.quirk_metadata.quirk_location.endswith("zigpy/tests/test_quirks_v2.py]-line:104") is False
+    "test_quirks_v2"
+  ] ++ lib.optionals (stdenv.isLinux && stdenv.isx86_64) [
     "test_periodic_scan_priority"
   ];
 
diff --git a/pkgs/development/python-modules/zipp/default.nix b/pkgs/development/python-modules/zipp/default.nix
index 6555d172ce2e..9ddbd4b43313 100644
--- a/pkgs/development/python-modules/zipp/default.nix
+++ b/pkgs/development/python-modules/zipp/default.nix
@@ -9,14 +9,14 @@
 
 let zipp = buildPythonPackage rec {
   pname = "zipp";
-  version = "3.17.0";
+  version = "3.18.1";
   format = "pyproject";
 
   disabled = pythonOlder "3.7";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-hOZKHCjPfpHtIHi7jMjCWcsZt2lCCWyNe4SUdpDKuvA=";
+    hash = "sha256-KITtIufYlh3hyaBRQutpokfxICkbwCBqAKdkLwm1txU=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/python-modules/zlib-ng/default.nix b/pkgs/development/python-modules/zlib-ng/default.nix
index 7cb498bbb12f..71f2c0b768ae 100644
--- a/pkgs/development/python-modules/zlib-ng/default.nix
+++ b/pkgs/development/python-modules/zlib-ng/default.nix
@@ -15,14 +15,14 @@
 
 buildPythonPackage rec {
   pname = "zlib-ng";
-  version = "0.4.1";
+  version = "0.4.3";
   pyproject = true;
 
   src = fetchFromGitHub {
     owner = "pycompression";
     repo = "python-zlib-ng";
     rev = "v${version}";
-    hash = "sha256-uK6Md8ZOVUNwXCjzM4zTVr3WBwzLdnvT9n8yBvf968k=";
+    hash = "sha256-M0R39vUX3JMDEDJfsRzg1ipxbWJ/kl0FzW6ZUMXvGDs=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/r-modules/default.nix b/pkgs/development/r-modules/default.nix
index f2c398c0f452..8d4004d7580f 100644
--- a/pkgs/development/r-modules/default.nix
+++ b/pkgs/development/r-modules/default.nix
@@ -335,6 +335,7 @@ let
     Cardinal = [ pkgs.which ];
     chebpol = [ pkgs.fftw.dev ];
     ChemmineOB = [ pkgs.pkg-config ];
+    interpolation = [ pkgs.pkg-config ];
     clarabel = [ pkgs.cargo ];
     curl = [ pkgs.curl.dev ];
     CytoML = [ pkgs.libxml2.dev ];
@@ -379,6 +380,7 @@ let
     LOMAR = [ pkgs.gmp.dev ];
     lpsymphony = with pkgs; [ pkg-config gfortran gettext ];
     lwgeom = with pkgs; [ proj geos gdal ];
+    rsbml = [ pkgs.pkg-config ];
     rvg = [ pkgs.libpng.dev ];
     MAGEE = [ pkgs.zlib.dev pkgs.bzip2.dev ];
     magick = [ pkgs.imagemagick.dev ];
@@ -413,6 +415,7 @@ let
     RcppZiggurat = [ pkgs.gsl ];
     reprex = [ pkgs.which ];
     rgdal = with pkgs; [ proj.dev gdal ];
+    Rhisat2 = [ pkgs.which pkgs.hostname ];
     gdalcubes = [ pkgs.pkg-config ];
     rgeos = [ pkgs.geos ];
     Rglpk = [ pkgs.glpk ];
@@ -533,6 +536,7 @@ let
     Rbwa = [ pkgs.zlib.dev ];
     trackViewer = [ pkgs.zlib.dev ];
     themetagenomics = [ pkgs.zlib.dev ];
+    Rsymphony = [ pkgs.pkg-config ];
     NanoMethViz = [ pkgs.zlib.dev ];
     RcppMeCab = [ pkgs.pkg-config ];
     HilbertVisGUI = with pkgs; [ pkg-config which ];
@@ -562,6 +566,7 @@ let
     deepSNV = with pkgs; [ xz.dev bzip2.dev zlib.dev ];
     epialleleR = with pkgs; [ xz.dev bzip2.dev zlib.dev ];
     gdalraster = with pkgs; [ gdal proj.dev sqlite.dev ];
+    mitoClone2 = with pkgs; [ xz.dev bzip2.dev zlib.dev ];
     gpg = [ pkgs.gpgme ];
     webp = [ pkgs.libwebp ];
     RMark = [ pkgs.which ];
@@ -585,12 +590,14 @@ let
     gdtools = [ pkgs.pkg-config ];
     archive = [ pkgs.libarchive];
     gdalcubes = with pkgs; [ proj.dev gdal sqlite.dev netcdf ];
+    rsbml = [ pkgs.libsbml ];
     SuperGauss = [ pkgs.pkg-config pkgs.fftw.dev];
     specklestar = [ pkgs.fftw.dev ];
     cartogramR = [ pkgs.fftw.dev ];
     jqr = [ pkgs.jq.lib ];
     kza = [ pkgs.pkg-config ];
     igraph = with pkgs; [ gmp libxml2.dev glpk ];
+    interpolation = [ pkgs.gmp ];
     image_textlinedetector = with pkgs; [ pkg-config opencv ];
     lwgeom = with pkgs; [ pkg-config proj.dev sqlite.dev ];
     magick = [ pkgs.pkg-config ];
@@ -618,7 +625,7 @@ let
     mashr = [ pkgs.gsl ];
     hadron = [ pkgs.gsl ];
     AMOUNTAIN = [ pkgs.gsl ];
-    Rsymphony = with pkgs; [ pkg-config doxygen graphviz subversion ];
+    Rsymphony = with pkgs; [ symphony doxygen graphviz subversion cgl clp];
     tcltk2 = with pkgs; [ tcl tk ];
     rswipl = with pkgs; [ ncurses.dev libxcrypt zlib.dev ];
     tikzDevice = with pkgs; [ which texliveMedium ];
@@ -1090,6 +1097,21 @@ let
       ];
     });
 
+    timeless = old.timeless.overrideAttrs (attrs: {
+      cargoDeps = pkgs.rustPlatform.fetchCargoTarball {
+        src = attrs.src;
+        sourceRoot = "timeless/src/rust";
+        hash = "sha256-n0/52CV3NzWe7T3N6VoaURMxWrnqeYaUMPKkUy+LRQs=";
+      };
+
+      cargoRoot = "src/rust";
+
+      nativeBuildInputs = attrs.nativeBuildInputs ++ [
+        pkgs.rustPlatform.cargoSetupHook
+        pkgs.cargo
+      ];
+    });
+
     stringi = old.stringi.overrideAttrs (attrs: {
       postInstall = let
         icuName = "icudt52l";
@@ -1147,6 +1169,11 @@ let
       patchPhase = "patchShebangs configure";
     });
 
+    luajr = old.luajr.overrideAttrs (attrs: {
+      hardeningDisable = [ "format" ];
+      postPatch = "patchShebangs configure";
+    });
+
     RcppArmadillo = old.RcppArmadillo.overrideAttrs (attrs: {
       patchPhase = "patchShebangs configure";
     });
@@ -1176,6 +1203,15 @@ let
       patchPhase = "patchShebangs configure";
     });
 
+   rsgeo = old.rsgeo.overrideAttrs (attrs: {
+      nativeBuildInputs = [ pkgs.cargo ] ++ attrs.nativeBuildInputs;
+      postPatch = "patchShebangs configure";
+    });
+
+   instantiate = old.instantiate.overrideAttrs (attrs: {
+      postPatch = "patchShebangs configure";
+    });
+
     exifr = old.exifr.overrideAttrs (attrs: {
       postPatch = ''
         for f in .onLoad .onAttach ; do
@@ -1271,6 +1307,17 @@ let
       '';
     });
 
+    # backported patch from 1.9
+    Rhisat2= old.Rhisat2.overrideAttrs (attrs: {
+      patches = [ (pkgs.fetchpatch {
+        url = "https://github.com/fmicompbio/Rhisat2/commit/a0f27b018831b39f080f99e6db8a4b876fd56fc3.patch";
+        sha256 = "sha256-FbYkP/WFmbfQmxArkHgushgVgY0XSypbK8Z5ivQK8k4=";
+      }) ];
+      env = (attrs.env or { }) // {
+        NIX_CFLAGS_COMPILE = attrs.env.NIX_CFLAGS_COMPILE + " -w";
+      };
+    });
+
     s2 = old.s2.overrideAttrs (attrs: {
       PKGCONFIG_CFLAGS = "-I${pkgs.openssl.dev}/include";
       PKGCONFIG_LIBS = "-Wl,-rpath,${lib.getLib pkgs.openssl}/lib -L${lib.getLib pkgs.openssl}/lib -lssl -lcrypto";
@@ -1426,6 +1473,10 @@ let
     });
 
     OpenMx = old.OpenMx.overrideAttrs (attrs: {
+      env = (attrs.env or { }) // {
+        # needed to avoid "log limit exceeded" on Hydra
+        NIX_CFLAGS_COMPILE = attrs.env.NIX_CFLAGS_COMPILE + " -Wno-ignored-attributes";
+      };
       preConfigure = ''
         patchShebangs configure
         '';
diff --git a/pkgs/development/r-modules/generic-builder.nix b/pkgs/development/r-modules/generic-builder.nix
index 5939a425aefa..ecbd78c4057d 100644
--- a/pkgs/development/r-modules/generic-builder.nix
+++ b/pkgs/development/r-modules/generic-builder.nix
@@ -10,8 +10,11 @@ stdenv.mkDerivation ({
   env.NIX_CFLAGS_COMPILE =
     lib.optionalString stdenv.isDarwin "-I${lib.getDev libcxx}/include/c++/v1";
 
+  enableParallelBuilding = true;
+
   configurePhase = ''
     runHook preConfigure
+    export MAKEFLAGS+="''${enableParallelBuilding:+-j$NIX_BUILD_CORES}"
     export R_LIBS_SITE="$R_LIBS_SITE''${R_LIBS_SITE:+:}$out/library"
     runHook postConfigure
   '';
diff --git a/pkgs/development/ruby-modules/bundler/default.nix b/pkgs/development/ruby-modules/bundler/default.nix
index e59941e80538..b9389603670d 100644
--- a/pkgs/development/ruby-modules/bundler/default.nix
+++ b/pkgs/development/ruby-modules/bundler/default.nix
@@ -4,8 +4,8 @@ buildRubyGem rec {
   inherit ruby;
   name = "${gemName}-${version}";
   gemName = "bundler";
-  version = "2.5.7";
-  source.sha256 = "sha256-Df4EofDsE828V59yTND3+hdDfbB7iaQfWZfiC/SoNA4=";
+  version = "2.5.9";
+  source.sha256 = "sha256-4rYTJb41m85U6w/tiEBO/mfl4fgAPTSiIYQeO3Za7AY=";
   dontPatchShebangs = true;
 
   postFixup = ''
diff --git a/pkgs/development/ruby-modules/gem-config/default.nix b/pkgs/development/ruby-modules/gem-config/default.nix
index 45de779fcdaf..02d014bef899 100644
--- a/pkgs/development/ruby-modules/gem-config/default.nix
+++ b/pkgs/development/ruby-modules/gem-config/default.nix
@@ -24,7 +24,7 @@
 , libsodium, snappy, libossp_uuid, lxc, libpcap, xorg, gtk2, gtk3, buildRubyGem
 , cairo, expat, re2, rake, gobject-introspection, gdk-pixbuf, zeromq, czmq, graphicsmagick, libcxx
 , file, libvirt, glib, vips, taglib, libopus, linux-pam, libidn, protobuf, fribidi, harfbuzz
-, bison, flex, pango, python3, patchelf, binutils, freetds, wrapGAppsHook, atk
+, bison, flex, pango, python3, patchelf, binutils, freetds, wrapGAppsHook3, atk
 , bundler, libsass, dart-sass, libexif, libselinux, libsepol, shared-mime-info, libthai, libdatrie
 , CoreServices, DarwinTools, cctools, libtool, discount, exiv2, libepoxy, libxkbcommon, libmaxminddb, libyaml
 , cargo, rustc, rustPlatform
@@ -50,7 +50,7 @@ in
     dependencies = attrs.dependencies ++ [ "gobject-introspection" ];
     nativeBuildInputs = [ rake bundler pkg-config ]
       ++ lib.optionals stdenv.isDarwin [ DarwinTools ];
-    propagatedBuildInputs = [ gobject-introspection wrapGAppsHook atk ];
+    propagatedBuildInputs = [ gobject-introspection wrapGAppsHook3 atk ];
   };
 
   bundler = attrs:
@@ -230,13 +230,13 @@ in
   gdk_pixbuf2 = attrs: {
     nativeBuildInputs = [ pkg-config bundler rake ]
       ++ lib.optionals stdenv.isDarwin [ DarwinTools ];
-    propagatedBuildInputs = [ gobject-introspection wrapGAppsHook gdk-pixbuf ];
+    propagatedBuildInputs = [ gobject-introspection wrapGAppsHook3 gdk-pixbuf ];
   };
 
   gdk3 = attrs: {
     nativeBuildInputs = [ pkg-config bundler rake ]
       ++ lib.optionals stdenv.isDarwin [ DarwinTools ];
-    propagatedBuildInputs = [ gobject-introspection wrapGAppsHook gdk-pixbuf cairo ];
+    propagatedBuildInputs = [ gobject-introspection wrapGAppsHook3 gdk-pixbuf cairo ];
   };
 
   gpgme = attrs: {
@@ -395,7 +395,7 @@ in
   gobject-introspection = attrs: {
     nativeBuildInputs = [ pkg-config pcre2 ]
       ++ lib.optionals stdenv.isDarwin [ DarwinTools ];
-    propagatedBuildInputs = [ gobject-introspection wrapGAppsHook glib ];
+    propagatedBuildInputs = [ gobject-introspection wrapGAppsHook3 glib ];
   };
 
   gollum = attrs: {
@@ -586,7 +586,7 @@ in
     ];
   };
 
-  nokogiri = attrs: {
+  nokogiri = attrs: ({
     buildFlags = [
       "--use-system-libraries"
       "--with-zlib-lib=${zlib.out}/lib"
@@ -601,7 +601,9 @@ in
       "--with-iconv-dir=${libiconv}"
       "--with-opt-include=${libiconv}/include"
     ];
-  };
+  } // lib.optionalAttrs stdenv.isDarwin {
+    buildInputs = [ libxml2 ];
+  });
 
   openssl = attrs: {
     # https://github.com/ruby/openssl/issues/369
@@ -633,7 +635,7 @@ in
     ] ++ lib.optionals stdenv.isDarwin [ DarwinTools ];
     buildInputs = [ libdatrie libthai ]
       ++ lib.optionals stdenv.isLinux [ libselinux libsepol util-linux ];
-    propagatedBuildInputs = [ gobject-introspection wrapGAppsHook gtk2 ];
+    propagatedBuildInputs = [ gobject-introspection wrapGAppsHook3 gtk2 ];
   };
 
   patron = attrs: {
diff --git a/pkgs/development/skaware-packages/build-skaware-package.nix b/pkgs/development/skaware-packages/build-skaware-package.nix
index 56bbe6bec51b..4e912e3af2e8 100644
--- a/pkgs/development/skaware-packages/build-skaware-package.nix
+++ b/pkgs/development/skaware-packages/build-skaware-package.nix
@@ -26,7 +26,8 @@
 , maintainers ? [ ]
   # : passthru arguments (e.g. tests)
 , passthru ? { }
-
+  # : attributes to be merged into meta
+, broken ? false
 }:
 
 let
@@ -125,7 +126,7 @@ stdenv.mkDerivation {
 
   meta = {
     homepage = "https://skarnet.org/software/${pname}/";
-    inherit description platforms;
+    inherit broken description platforms;
     license = lib.licenses.isc;
     maintainers = with lib.maintainers;
       [ pmahoney Profpatsch qyliss ] ++ maintainers;
diff --git a/pkgs/development/skaware-packages/execline/default.nix b/pkgs/development/skaware-packages/execline/default.nix
index 80bef5feb512..fc8dffe32fde 100644
--- a/pkgs/development/skaware-packages/execline/default.nix
+++ b/pkgs/development/skaware-packages/execline/default.nix
@@ -1,14 +1,14 @@
 { lib, fetchFromGitHub, skawarePackages, skalibs }:
 
 let
-  version = "2.9.4.0";
+  version = "2.9.5.1";
 
 in skawarePackages.buildPackage {
   inherit version;
 
   pname = "execline";
   # ATTN: also check whether there is a new manpages version
-  sha256 = "mrVdVhU536dv9Kl5BvqZX8SiiOPeUiXLGp2PqenrxJs=";
+  sha256 = "33UANdD7IccmW/+37X4bZh3h6EKUSiJSvc3cMtDZchc=";
 
   # Maintainer of manpages uses following versioning scheme: for every
   # upstream $version he tags manpages release as ${version}.1, and,
@@ -16,8 +16,8 @@ in skawarePackages.buildPackage {
   # ${version}.3 and so on are created.
   manpages = skawarePackages.buildManPages {
     pname = "execline-man-pages";
-    version = "2.9.3.0.5";
-    sha256 = "0fcjrj4xp7y7n1c55k45rxr5m7zpv6cbhrkxlxymd4j603i9jh6d";
+    version = "2.9.5.1.1";
+    sha256 = "hLo0TJJ4F2UQ+NkyO9DvVHO0ec86Eps1z99HthBzoIc=";
     description = "Port of the documentation for the execline suite to mdoc";
     maintainers = [ lib.maintainers.sternenseemann ];
   };
diff --git a/pkgs/development/skaware-packages/s6/default.nix b/pkgs/development/skaware-packages/s6/default.nix
index b60659593648..761ee34e9702 100644
--- a/pkgs/development/skaware-packages/s6/default.nix
+++ b/pkgs/development/skaware-packages/s6/default.nix
@@ -2,13 +2,13 @@
 
 skawarePackages.buildPackage {
   pname = "s6";
-  version = "2.12.0.3";
-  sha256 = "gA0xIm9sJc3T7AtlJA+AtWzl7BNzQdCo0VTndjjlgQM=";
+  version = "2.12.0.4";
+  sha256 = "yV1ReHYC4MjI5PkqcQy9qk7nl+6IbnE0Jyfil0+VwGs=";
 
   manpages = skawarePackages.buildManPages {
     pname = "s6-man-pages";
-    version = "2.12.0.2.1";
-    sha256 = "sha256-fFU+cRwXb4SwHsI/r0ghuzCf6hEK/muPPp2XMvD8VtQ=";
+    version = "2.12.0.4.1";
+    sha256 = "9n4oIGfgcu+Q/UcY1Edr3n09Ecrbg77AI8TRBQoFzs0=";
     description = "Port of the documentation for the s6 supervision suite to mdoc";
     maintainers = [ lib.maintainers.sternenseemann ];
   };
diff --git a/pkgs/development/skaware-packages/tipidee/default.nix b/pkgs/development/skaware-packages/tipidee/default.nix
index 342fe2749843..8e858c858cb3 100644
--- a/pkgs/development/skaware-packages/tipidee/default.nix
+++ b/pkgs/development/skaware-packages/tipidee/default.nix
@@ -1,9 +1,9 @@
-{ skawarePackages, skalibs }:
+{ skawarePackages, stdenv, skalibs }:
 
 skawarePackages.buildPackage {
   pname = "tipidee";
-  version = "0.0.3.0";
-  sha256 = "0dk6k86UKgJ2ioX5H2Xoga9S+SwMy9NFrK2KEKoNxCA=";
+  version = "0.0.4.0";
+  sha256 = "sha256-FzZRGg8IBTkzXINb9WCdVukej9KyPFQIUuXfdcLz1RQ=";
 
   description = "A HTTP 1.1 webserver, serving static files and CGI/NPH";
 
@@ -35,4 +35,5 @@ skawarePackages.buildPackage {
     mv examples $doc/share/doc/tipidee/examples
   '';
 
+  broken = stdenv.isDarwin;
 }
diff --git a/pkgs/development/tools/air/default.nix b/pkgs/development/tools/air/default.nix
index 2ce9e3d06b2f..467f05150622 100644
--- a/pkgs/development/tools/air/default.nix
+++ b/pkgs/development/tools/air/default.nix
@@ -2,13 +2,13 @@
 
 buildGoModule rec {
   pname = "air";
-  version = "1.51.0";
+  version = "1.52.0";
 
   src = fetchFromGitHub {
     owner = "cosmtrek";
     repo = "air";
     rev = "v${version}";
-    hash = "sha256-Vkg3QPUvhJphmZ7Ek3tuFnSEjfSy6LfctGMA07IufUU=";
+    hash = "sha256-7iqS8p53Pyk2WQVkbTVA7eJNnD2KvO41S+JJBTFOToQ=";
   };
 
   vendorHash = "sha256-dSu00NAq6hEOdJxXp+12UaUq32z53Wzla3/u+2nxqPw=";
diff --git a/pkgs/development/tools/algolia-cli/default.nix b/pkgs/development/tools/algolia-cli/default.nix
index 1d02230ec96b..1f2456b8cc61 100644
--- a/pkgs/development/tools/algolia-cli/default.nix
+++ b/pkgs/development/tools/algolia-cli/default.nix
@@ -2,13 +2,13 @@
 
 buildGoModule rec {
   pname = "algolia-cli";
-  version = "1.6.8";
+  version = "1.6.9";
 
   src = fetchFromGitHub {
     owner = "algolia";
     repo = "cli";
     rev = "v${version}";
-    hash = "sha256-PqiFx1Bzv4cYwnlr1BDPGiumUUneT5sq64eFFcYPmaA=";
+    hash = "sha256-I4aANk/FurYsT2e3YFxRgbfpl7nEXgBwNiQeA2LMdkw=";
   };
 
   vendorHash = "sha256-cNuBTH7L2K4TgD0H9FZ9CjhE5AGXADaniGLD9Lhrtrk=";
diff --git a/pkgs/development/tools/altair-graphql-client/default.nix b/pkgs/development/tools/altair-graphql-client/default.nix
index 0f6cdeffe86c..f49c1cdfcc89 100644
--- a/pkgs/development/tools/altair-graphql-client/default.nix
+++ b/pkgs/development/tools/altair-graphql-client/default.nix
@@ -2,11 +2,11 @@
 
 let
   pname = "altair";
-  version = "6.4.0";
+  version = "7.0.1";
 
   src = fetchurl {
     url = "https://github.com/imolorhe/altair/releases/download/v${version}/altair_${version}_x86_64_linux.AppImage";
-    sha256 = "sha256-eUUPfMwCMrMHk2RcLfpI8VuolgI/7geY6/6QrWjkIXg=";
+    sha256 = "sha256-hcZwGJ409r3XKVScGfj0DonZdClDVvTcIZlmJ1Xd9Mw=";
   };
 
   appimageContents = appimageTools.extract { inherit pname version src; };
diff --git a/pkgs/development/tools/analysis/actionlint/default.nix b/pkgs/development/tools/analysis/actionlint/default.nix
index 71b361b61516..a17b62998e0b 100644
--- a/pkgs/development/tools/analysis/actionlint/default.nix
+++ b/pkgs/development/tools/analysis/actionlint/default.nix
@@ -10,7 +10,7 @@
 
 buildGoModule rec {
   pname = "actionlint";
-  version = "1.6.27";
+  version = "1.7.0";
 
   subPackages = [ "cmd/actionlint" ];
 
@@ -18,10 +18,10 @@ buildGoModule rec {
     owner = "rhysd";
     repo = "actionlint";
     rev = "v${version}";
-    hash = "sha256-v8RuSsayIVA31ADLiAOcWwXY3HKjG15FZ/PHnY651Ac=";
+    hash = "sha256-+Mnlqsdk4VzXtdBUtCRvnTJ6EIDPIsBNNQJ30TIO9kQ=";
   };
 
-  vendorHash = "sha256-DhZHfcnLm700i0M4pcvwlPdynbLRnG5rYsp5CrIDybw=";
+  vendorHash = "sha256-v0bmugCOP1XUrfe9xqN7gYKFchv6l/WpUK016xfyiCE=";
 
   nativeBuildInputs = [ makeWrapper ronn installShellFiles ];
 
diff --git a/pkgs/development/tools/analysis/cargo-tarpaulin/default.nix b/pkgs/development/tools/analysis/cargo-tarpaulin/default.nix
index accb456f1192..55a5108dbbda 100644
--- a/pkgs/development/tools/analysis/cargo-tarpaulin/default.nix
+++ b/pkgs/development/tools/analysis/cargo-tarpaulin/default.nix
@@ -10,16 +10,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "cargo-tarpaulin";
-  version = "0.29.0";
+  version = "0.30.0";
 
   src = fetchFromGitHub {
     owner = "xd009642";
     repo = "tarpaulin";
     rev = version;
-    hash = "sha256-eLLnSfuFnvlarpFBkhq3eumIyXOuuYU9ZJHpsKt0WQE=";
+    hash = "sha256-RtkW2FDey049URmr0WGNYcz5sTZXIQ7dZL/OlIaKX20=";
   };
 
-  cargoHash = "sha256-bTflBJ5Rz2Xdip2ptUyGi+CpR0ZN0ggVutSk1S9nW1c=";
+  cargoHash = "sha256-HBpEMjc2FQvFqvvcCtxHJBj2waFau77t+m+1ZfomguA=";
 
   nativeBuildInputs = [
     pkg-config
diff --git a/pkgs/development/tools/analysis/checkov/default.nix b/pkgs/development/tools/analysis/checkov/default.nix
index 1d0108049d76..9cf0dc6653b4 100644
--- a/pkgs/development/tools/analysis/checkov/default.nix
+++ b/pkgs/development/tools/analysis/checkov/default.nix
@@ -6,14 +6,14 @@
 
 python3.pkgs.buildPythonApplication rec {
   pname = "checkov";
-  version = "3.2.74";
+  version = "3.2.92";
   pyproject = true;
 
   src = fetchFromGitHub {
     owner = "bridgecrewio";
     repo = "checkov";
     rev = "refs/tags/${version}";
-    hash = "sha256-Ge0SCoZeBdEKGjvPXGzsYptKBzNWrUbjLEdNxsYUlcI=";
+    hash = "sha256-v1StSo9j0Psr3om3qbcE+Ha9Wz7t6EfGzbyAe34M2qY=";
   };
 
   patches = [ ./flake8-compat-5.x.patch ];
@@ -23,6 +23,7 @@ python3.pkgs.buildPythonApplication rec {
     "bc-python-hcl2"
     "boto3"
     "botocore"
+    "cyclonedx-python-lib"
     "dpath"
     "igraph"
     "license-expression"
@@ -122,6 +123,8 @@ python3.pkgs.buildPythonApplication rec {
     "test_runner"
     # AssertionError: assert ['<?xml versi...
     "test_get_cyclonedx_report"
+    # Test fails on Hydra
+    "test_sast_js_filtered_files_by_ts"
   ];
 
   disabledTestPaths = [
diff --git a/pkgs/development/tools/analysis/checkstyle/default.nix b/pkgs/development/tools/analysis/checkstyle/default.nix
index fc1dea1e5887..1565d7bdc546 100644
--- a/pkgs/development/tools/analysis/checkstyle/default.nix
+++ b/pkgs/development/tools/analysis/checkstyle/default.nix
@@ -1,12 +1,12 @@
 { lib, stdenvNoCC, fetchurl, makeBinaryWrapper, jre }:
 
 stdenvNoCC.mkDerivation rec {
-  version = "10.15.0";
+  version = "10.16.0";
   pname = "checkstyle";
 
   src = fetchurl {
     url = "https://github.com/checkstyle/checkstyle/releases/download/checkstyle-${version}/checkstyle-${version}-all.jar";
-    sha256 = "sha256-9p9JXjkkCHGCdNIs/Kh/I/JdU6xOVuc8Ff1WZERxiM4=";
+    sha256 = "sha256-0Hmg7WnLAGy9YOipW7Oe6KQDxRiRqZ5eI3bKQGU0aQQ=";
   };
 
   nativeBuildInputs = [ makeBinaryWrapper ];
diff --git a/pkgs/development/tools/analysis/codeql/default.nix b/pkgs/development/tools/analysis/codeql/default.nix
index fdad4466f91b..1dc4a2503d9f 100644
--- a/pkgs/development/tools/analysis/codeql/default.nix
+++ b/pkgs/development/tools/analysis/codeql/default.nix
@@ -2,7 +2,7 @@
 
 stdenv.mkDerivation rec {
   pname = "codeql";
-  version = "2.17.1";
+  version = "2.17.2";
 
   dontConfigure = true;
   dontBuild = true;
@@ -10,7 +10,7 @@ stdenv.mkDerivation rec {
 
   src = fetchzip {
     url = "https://github.com/github/codeql-cli-binaries/releases/download/v${version}/codeql.zip";
-    hash = "sha256-4S6xsxLGYdkdG9SrpqTiFAq5WZMQM2TbnT7c5mRV/kE=";
+    hash = "sha256-l1O3VrO1Ndfp1QIsDmTAhAiUpoOc7+TkQETsoo7m460=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/tools/analysis/cvehound/default.nix b/pkgs/development/tools/analysis/cvehound/default.nix
index 96f9b47d17bc..9eedade72dd9 100644
--- a/pkgs/development/tools/analysis/cvehound/default.nix
+++ b/pkgs/development/tools/analysis/cvehound/default.nix
@@ -7,13 +7,13 @@
 
 python3.pkgs.buildPythonApplication rec {
   pname = "cvehound";
-  version = "1.2.0";
+  version = "1.2.1";
 
   src = fetchFromGitHub {
     owner = "evdenis";
     repo = "cvehound";
     rev = "refs/tags/${version}";
-    hash = "sha256-DnrFlDFJT74irvrNs/j7zwO76DYjTOuY0t+mu5c8gpk=";
+    hash = "sha256-UvjmlAm/8B4KfE9grvvgn37Rui+ZRfs2oTLqYYgqcUQ=";
   };
 
   makeWrapperArgs = [
diff --git a/pkgs/development/tools/analysis/frama-c/default.nix b/pkgs/development/tools/analysis/frama-c/default.nix
index 37b44e1f8044..26cd487d9ebe 100644
--- a/pkgs/development/tools/analysis/frama-c/default.nix
+++ b/pkgs/development/tools/analysis/frama-c/default.nix
@@ -1,7 +1,7 @@
 { lib, stdenv, fetchurl, fetchpatch, makeWrapper, writeText
 , graphviz, doxygen
 , ocamlPackages, ltl2ba, coq, why3
-, gdk-pixbuf, wrapGAppsHook
+, gdk-pixbuf, wrapGAppsHook3
 }:
 
 let
@@ -53,7 +53,7 @@ stdenv.mkDerivation rec {
 
   strictDeps = true;
 
-  nativeBuildInputs = [ wrapGAppsHook ] ++ (with ocamlPackages; [ ocaml findlib dune_3 menhir ]);
+  nativeBuildInputs = [ wrapGAppsHook3 ] ++ (with ocamlPackages; [ ocaml findlib dune_3 menhir ]);
 
   buildInputs = with ocamlPackages; [
     dune-site dune-configurator
diff --git a/pkgs/development/tools/analysis/jacoco/default.nix b/pkgs/development/tools/analysis/jacoco/default.nix
index 62835c61d0f3..6fa9c520186c 100644
--- a/pkgs/development/tools/analysis/jacoco/default.nix
+++ b/pkgs/development/tools/analysis/jacoco/default.nix
@@ -7,12 +7,12 @@
 
 stdenv.mkDerivation rec {
   pname = "jacoco";
-  version = "0.8.11";
+  version = "0.8.12";
 
   src = fetchzip {
     url = "https://search.maven.org/remotecontent?filepath=org/jacoco/jacoco/${version}/jacoco-${version}.zip";
     stripRoot = false;
-    sha256 = "sha256-Sd4Kh5ts0IdHhd9vF1XZzZ2KFRb+rsnzpam6Ysxu910=";
+    sha256 = "sha256-7bN68fcUycehJDJeBAyCloz8rb3SXgjwmC9zpob8YdI=";
   };
 
   outputs = [ "out" "doc" ];
diff --git a/pkgs/development/tools/analysis/randoop/default.nix b/pkgs/development/tools/analysis/randoop/default.nix
index f5936704e304..552f5fef7cae 100644
--- a/pkgs/development/tools/analysis/randoop/default.nix
+++ b/pkgs/development/tools/analysis/randoop/default.nix
@@ -1,12 +1,12 @@
 { lib, stdenv, fetchurl, unzip }:
 
 stdenv.mkDerivation rec {
-  version = "4.3.2";
+  version = "4.3.3";
   pname = "randoop";
 
   src = fetchurl {
     url = "https://github.com/randoop/randoop/releases/download/v${version}/${pname}-${version}.zip";
-    sha256 = "sha256-lcYI0Yns/R5VeOUG68Xe8h1BO8wlKvL1CZIqzWkgsqo=";
+    sha256 = "sha256-x9kAoVa4wvUp3gpg9GCodvjwql3CBtn5EqJIZYSSqVI=";
   };
 
   nativeBuildInputs = [ unzip ];
diff --git a/pkgs/development/tools/analysis/snyk/default.nix b/pkgs/development/tools/analysis/snyk/default.nix
index dfaba8bc369a..1c983d6bfd6d 100644
--- a/pkgs/development/tools/analysis/snyk/default.nix
+++ b/pkgs/development/tools/analysis/snyk/default.nix
@@ -8,16 +8,16 @@
 
 buildNpmPackage rec {
   pname = "snyk";
-  version = "1.1287.0";
+  version = "1.1291.0";
 
   src = fetchFromGitHub {
     owner = "snyk";
     repo = "cli";
     rev = "refs/tags/v${version}";
-    hash = "sha256-d5MafGgxtecBzAkFxx+vi1a4ZQiVDJaISld7mQlNGFE=";
+    hash = "sha256-m70XujX2KOTvObjeBtoAbrYddi/+pLDLPXf/o+/DtmU=";
   };
 
-  npmDepsHash = "sha256-t+lYPVN/7mQak6A0VJUxnIj34iHB47nbcCV/dsO1/2E=";
+  npmDepsHash = "sha256-f7sY7eCF8k28UnGyKqOP/exhsZQzUC70nIIjEOXEeC4=";
 
   postPatch = ''
     substituteInPlace package.json \
diff --git a/pkgs/development/tools/analysis/stylelint/default.nix b/pkgs/development/tools/analysis/stylelint/default.nix
index 26bc3b7893fe..f2c478ea49cf 100644
--- a/pkgs/development/tools/analysis/stylelint/default.nix
+++ b/pkgs/development/tools/analysis/stylelint/default.nix
@@ -2,16 +2,16 @@
 
 buildNpmPackage rec {
   pname = "stylelint";
-  version = "16.4.0";
+  version = "16.5.0";
 
   src = fetchFromGitHub {
     owner = "stylelint";
     repo = "stylelint";
     rev = version;
-    hash = "sha256-N689OjxUo3KPN3mfNQ1cKYoe8DXcVTNkUO4NuZPGuXI=";
+    hash = "sha256-kbcf0OPAIeEdh5YI2qqaLJww+ZejfXt/llJTK10nE0M=";
   };
 
-  npmDepsHash = "sha256-V+hiUMenskHV+ccYysBDD5WoQH9vem+uEfQ5SWEdVFU=";
+  npmDepsHash = "sha256-tENUngFWjrmsJErvbmFflwGL0uxou0vQjC/MwfCpm+Y=";
 
   dontNpmBuild = true;
 
diff --git a/pkgs/development/tools/analysis/tflint-plugins/tflint-ruleset-aws.nix b/pkgs/development/tools/analysis/tflint-plugins/tflint-ruleset-aws.nix
index 92a35d9b3bc3..a765966e35cb 100644
--- a/pkgs/development/tools/analysis/tflint-plugins/tflint-ruleset-aws.nix
+++ b/pkgs/development/tools/analysis/tflint-plugins/tflint-ruleset-aws.nix
@@ -5,16 +5,16 @@
 
 buildGoModule rec {
   pname = "tflint-ruleset-aws";
-  version = "0.30.0";
+  version = "0.31.0";
 
   src = fetchFromGitHub {
     owner = "terraform-linters";
     repo = pname;
     rev = "v${version}";
-    hash = "sha256-mgYvzxIzh/HibPM+BQoJ7dKqEifMcuoqfOIZU4KcRC4=";
+    hash = "sha256-1ttqSRz++xJdpJIQ+rSCiGFhN5EJwW6tbAporc8J0LU=";
   };
 
-  vendorHash = "sha256-JaOVNWF4JMXwGo+JVyknGZrd/M6F9c2PTgGadCqoRsk=";
+  vendorHash = "sha256-4QH/KehKBSNQhW8z/tk5ExAXKQNQ5Rl3RKyj+0jm/eI=";
 
   # upstream Makefile also does a  go test $(go list ./... | grep -v integration)
   preCheck = ''
diff --git a/pkgs/development/tools/analysis/tflint-plugins/tflint-ruleset-google.nix b/pkgs/development/tools/analysis/tflint-plugins/tflint-ruleset-google.nix
index a1382df1c4f0..5dd442928060 100644
--- a/pkgs/development/tools/analysis/tflint-plugins/tflint-ruleset-google.nix
+++ b/pkgs/development/tools/analysis/tflint-plugins/tflint-ruleset-google.nix
@@ -5,16 +5,16 @@
 
 buildGoModule rec {
   pname = "tflint-ruleset-google";
-  version = "0.27.1";
+  version = "0.28.0";
 
   src = fetchFromGitHub {
     owner = "terraform-linters";
     repo = pname;
     rev = "v${version}";
-    hash = "sha256-APdAm7gBEA6LHYV3u7j3HtFmzkUqeABqOj5q3rwPO40=";
+    hash = "sha256-9/JCpT7zwuT8Tf8Pa2cj/pVlowFbQ8kv2XPvwJf/b10=";
   };
 
-  vendorHash = "sha256-n+nnftyNvCGVgEkYQIfVL7TS2QP8WpKb7l9jfeutJxw=";
+  vendorHash = "sha256-mh8RXD+RD8juhSY2jWGsmwqAnnudIZIZmq8JjHh/eNQ=";
 
   # upstream Makefile also does a go test $(go list ./... | grep -v integration)
   preCheck = ''
diff --git a/pkgs/development/tools/analysis/tflint/default.nix b/pkgs/development/tools/analysis/tflint/default.nix
index c5ded29ce9b5..93dbe645220a 100644
--- a/pkgs/development/tools/analysis/tflint/default.nix
+++ b/pkgs/development/tools/analysis/tflint/default.nix
@@ -10,16 +10,16 @@
 
 buildGoModule rec {
   pname = "tflint";
-  version = "0.50.3";
+  version = "0.51.1";
 
   src = fetchFromGitHub {
     owner = "terraform-linters";
     repo = pname;
     rev = "v${version}";
-    hash = "sha256-PfPynSPuMhiyQW9f6HY2WDNlmtltU4xOo0A88I/bCuI=";
+    hash = "sha256-f2U/DK2yaJI0t125k0N4SHjNvSUYPtqTjR91EJnimGQ=";
   };
 
-  vendorHash = "sha256-HjvEbEfPVeqAVmVKCJHYPSZjZc19DV1HDaz/HcBJAUg=";
+  vendorHash = "sha256-xx/WF/yR++oB+7az9i/JkhYuOZsPoCBgYITqBR1Gv5c=";
 
   doCheck = false;
 
diff --git a/pkgs/development/tools/analysis/tfsec/default.nix b/pkgs/development/tools/analysis/tfsec/default.nix
index e83ade116285..28aa1e39e89e 100644
--- a/pkgs/development/tools/analysis/tfsec/default.nix
+++ b/pkgs/development/tools/analysis/tfsec/default.nix
@@ -1,17 +1,18 @@
-{ lib
-, buildGoModule
-, fetchFromGitHub
+{
+  lib,
+  buildGoModule,
+  fetchFromGitHub,
 }:
 
 buildGoModule rec {
   pname = "tfsec";
-  version = "1.28.5";
+  version = "1.28.6";
 
   src = fetchFromGitHub {
     owner = "aquasecurity";
     repo = "tfsec";
     rev = "refs/tags/v${version}";
-    hash = "sha256-zMOAXuMOuWzV5uqzNvw+2DiEA9o/80v7DW5KDhoT/fg=";
+    hash = "sha256-Dc6eXw1qGr2KxRoG3Odfa07s2SYdnxVbJHeVQdETBIs=";
   };
 
   ldflags = [
@@ -22,7 +23,7 @@ buildGoModule rec {
     # "-extldflags '-fno-PIC -static'"
   ];
 
-  vendorHash = "sha256-nBjlsDFjkqwFBwNnGk8WC+XM5xBuopyrloPlQyOReuY=";
+  vendorHash = "sha256-RxsoTNj/V1UgcMq7vbjGlkJCMEVyvfmSz2IPncs53hY=";
 
   subPackages = [
     "cmd/tfsec"
@@ -35,6 +36,9 @@ buildGoModule rec {
     homepage = "https://github.com/aquasecurity/tfsec";
     changelog = "https://github.com/aquasecurity/tfsec/releases/tag/v${version}";
     license = licenses.mit;
-    maintainers = with maintainers; [ fab peterromfeldhk ];
+    maintainers = with maintainers; [
+      fab
+      peterromfeldhk
+    ];
   };
 }
diff --git a/pkgs/development/tools/apko/default.nix b/pkgs/development/tools/apko/default.nix
index 6a1ffc9376e2..879d88cf0a92 100644
--- a/pkgs/development/tools/apko/default.nix
+++ b/pkgs/development/tools/apko/default.nix
@@ -6,13 +6,13 @@
 
 buildGoModule rec {
   pname = "apko";
-  version = "0.13.2";
+  version = "0.14.1";
 
   src = fetchFromGitHub {
     owner = "chainguard-dev";
     repo = pname;
     rev = "v${version}";
-    hash = "sha256-PGRbJ7znsjvh/ATBF8k+pMnRO8wvGY0PAVswVmFaBUc=";
+    hash = "sha256-O1lU3b3dNmFcV0Dfkpw63Eu6AgLSLBi7MbF47OsjgL4=";
     # populate values that require us to use git. By doing this in postFetch we
     # can delete .git afterwards and maintain better reproducibility of the src.
     leaveDotGit = true;
@@ -24,7 +24,7 @@ buildGoModule rec {
       find "$out" -name .git -print0 | xargs -0 rm -rf
     '';
   };
-  vendorHash = "sha256-aqxXCqhvCGQKI+4FDjbqPNeFvELZviQ7Inwxl65sowk=";
+  vendorHash = "sha256-shnVJ6TcqWxUu1Ib2ewaz2VK4mi1Rt3R0Cmof9ilDJ4=";
 
   nativeBuildInputs = [ installShellFiles ];
 
diff --git a/pkgs/development/tools/argc/default.nix b/pkgs/development/tools/argc/default.nix
deleted file mode 100644
index 89ee93b1c5d8..000000000000
--- a/pkgs/development/tools/argc/default.nix
+++ /dev/null
@@ -1,37 +0,0 @@
-{ lib
-, rustPlatform
-, fetchFromGitHub
-, installShellFiles
-}:
-
-rustPlatform.buildRustPackage rec {
-  pname = "argc";
-  version = "1.14.0";
-
-  src = fetchFromGitHub {
-    owner = "sigoden";
-    repo = pname;
-    rev = "v${version}";
-    hash = "sha256-Li/K5/SLG6JuoRJDz2DQoj1Oi9LQgZWHNvtZ1HVbj88=";
-  };
-
-  cargoHash = "sha256-D1T9FWTvwKtAYoqFlR2OmLRLGWhPJ9D8J7lq/QKcBoM=";
-
-  nativeBuildInputs = [ installShellFiles ];
-
-  postInstall = ''
-    installShellCompletion --cmd argc \
-      --bash <($out/bin/argc --argc-completions bash) \
-      --fish <($out/bin/argc --argc-completions fish) \
-      --zsh <($out/bin/argc --argc-completions zsh)
-  '';
-
-  meta = with lib; {
-    description = "A command-line options, arguments and sub-commands parser for bash";
-    mainProgram = "argc";
-    homepage = "https://github.com/sigoden/argc";
-    changelog = "https://github.com/sigoden/argc/releases/tag/v${version}";
-    license = with licenses; [ mit /* or */ asl20 ];
-    maintainers = with maintainers; [ figsoda ];
-  };
-}
diff --git a/pkgs/development/tools/async-profiler/default.nix b/pkgs/development/tools/async-profiler/default.nix
deleted file mode 100644
index 57bb70c1dff1..000000000000
--- a/pkgs/development/tools/async-profiler/default.nix
+++ /dev/null
@@ -1,44 +0,0 @@
-{ lib, stdenv, fetchFromGitHub, jdk, makeWrapper }:
-
-stdenv.mkDerivation rec {
-  pname = "async-profiler";
-  version = "2.9";
-
-  src = fetchFromGitHub {
-    owner = "jvm-profiling-tools";
-    repo = "async-profiler";
-    rev = "v${version}";
-    sha256 = "sha256-ngLUg6Fq6Ay06klGa/y8lod8W6rYMqhMhXFn5OBCSpk=";
-  };
-
-  nativeBuildInputs = [ makeWrapper ];
-
-  buildInputs = [ jdk ];
-
-  installPhase = ''
-    runHook preInstall
-    install -D "$src/profiler.sh" "$out/bin/async-profiler"
-    install -D build/jattach "$out/bin/jattach"
-    install -D build/libasyncProfiler.so "$out/lib/libasyncProfiler.so"
-    install -D -t "$out/share/java/" build/*.jar
-    runHook postInstall
-  '';
-
-  fixupPhase = ''
-    substituteInPlace $out/bin/async-profiler \
-      --replace 'JATTACH=$SCRIPT_DIR/build/jattach' \
-                'JATTACH=${placeholder "out"}/bin/jattach' \
-      --replace 'PROFILER=$SCRIPT_DIR/build/libasyncProfiler.so' \
-                'PROFILER=${placeholder "out"}/lib/libasyncProfiler.so'
-
-    wrapProgram $out/bin/async-profiler --prefix PATH : ${lib.makeBinPath [ jdk ]}
-  '';
-
-  meta = with lib; {
-    description = "A low overhead sampling profiler for Java that does not suffer from Safepoint bias problem";
-    homepage    = "https://github.com/jvm-profiling-tools/async-profiler";
-    license     = licenses.asl20;
-    maintainers = with maintainers; [ mschuwalow ];
-    platforms   = platforms.all;
-  };
-}
diff --git a/pkgs/development/tools/bacon/default.nix b/pkgs/development/tools/bacon/default.nix
index 8e4816a859a3..93e301d7afb5 100644
--- a/pkgs/development/tools/bacon/default.nix
+++ b/pkgs/development/tools/bacon/default.nix
@@ -7,16 +7,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "bacon";
-  version = "2.16.0";
+  version = "2.17.0";
 
   src = fetchFromGitHub {
     owner = "Canop";
     repo = pname;
     rev = "refs/tags/v${version}";
-    hash = "sha256-lYj6WIb8HvOO/RlxeTzD3r7Jjfx4mDqZ9VKo0chvooU=";
+    hash = "sha256-pui5cHWRE+b06RlAPfOXIO6DfuWlKvFWx2vlQX9H7k0=";
   };
 
-  cargoHash = "sha256-G3IfxIhQ1t47ZhndTBmcUZNXHYehaaMVgIjBuD71zHE=";
+  cargoHash = "sha256-Eu9Pf1bKd054451ssLh7rEfNLEdityAybjfUqo+DXtY=";
 
   buildInputs = lib.optionals stdenv.isDarwin [
     CoreServices
diff --git a/pkgs/development/tools/bazel-watcher/default.nix b/pkgs/development/tools/bazel-watcher/default.nix
index 23d2c904022d..ae152a3782ab 100644
--- a/pkgs/development/tools/bazel-watcher/default.nix
+++ b/pkgs/development/tools/bazel-watcher/default.nix
@@ -2,7 +2,7 @@
 , bazel_5
 , fetchFromGitHub
 , git
-, go
+, go_1_21
 , python3
 , lib, stdenv
 }:
@@ -29,16 +29,16 @@ let
 in
 buildBazelPackage rec {
   pname = "bazel-watcher";
-  version = "0.24.0";
+  version = "0.25.2";
 
   src = fetchFromGitHub {
     owner = "bazelbuild";
     repo = "bazel-watcher";
     rev = "v${version}";
-    hash = "sha256-ebNHAYKyE3226KiCc2/VSz1OSITuPwuYlAIS3JrWzj0=";
+    hash = "sha256-lreGKA0DZiOd1bJq8NNQ+80cyDwiughoXCkKu1RaZmc=";
   };
 
-  nativeBuildInputs = [ go git python3 ];
+  nativeBuildInputs = [ go_1_21 git python3 ];
   removeRulesCC = false;
 
   bazel = bazel_5;
diff --git a/pkgs/development/tools/bearer/default.nix b/pkgs/development/tools/bearer/default.nix
index e735df312029..ce448845d3e3 100644
--- a/pkgs/development/tools/bearer/default.nix
+++ b/pkgs/development/tools/bearer/default.nix
@@ -8,16 +8,16 @@
 
 buildGoModule rec {
   pname = "bearer";
-  version = "1.43.2";
+  version = "1.43.3";
 
   src = fetchFromGitHub {
     owner = "bearer";
     repo = "bearer";
     rev = "refs/tags/v${version}";
-    hash = "sha256-F7BToROR8mcINmIVz7J6xRSyLDKQyUyp7o1yQVVHdp0=";
+    hash = "sha256-imSXfub1dn1Q0C777uMDAVoCP7glmvhMBvQ0HC/9CRE=";
   };
 
-  vendorHash = "sha256-g0AnL6r3dUfCIAytTknAD5aCPBsohDUMNfMAYKBebi4=";
+  vendorHash = "sha256-rRlOWQ5M+aNMsnt7zHphm/SQyvPBZUCWpZH1J7TZe28=";
 
   subPackages = [ "cmd/bearer" ];
 
diff --git a/pkgs/development/tools/benthos/default.nix b/pkgs/development/tools/benthos/default.nix
index 850adc445bad..26c03f7fa658 100644
--- a/pkgs/development/tools/benthos/default.nix
+++ b/pkgs/development/tools/benthos/default.nix
@@ -5,18 +5,18 @@
 
 buildGoModule rec {
   pname = "benthos";
-  version = "4.26.0";
+  version = "4.27.0";
 
   src = fetchFromGitHub {
     owner = "benthosdev";
     repo = "benthos";
     rev = "refs/tags/v${version}";
-    hash = "sha256-xFh0dmiLkU/o14OCefARtvkdN4Z1hzMfamyyB/mhf9s=";
+    hash = "sha256-Jswy4Ku/dxIEfC+jNjLXu/WW24enc4Qn0vrOHvNDVYQ=";
   };
 
   proxyVendor = true;
 
-  vendorHash = "sha256-Ce2vXPKbyj517N3uJEGc00hCVZhcRrPvXUSuK+jjK3U=";
+  vendorHash = "sha256-6CVDhy29bIn19EgKbKDNTBWdy+i18g0oz/NxABcQ6QE=";
 
   doCheck = false;
 
diff --git a/pkgs/development/tools/biome/default.nix b/pkgs/development/tools/biome/default.nix
index 2072adf22641..567484695251 100644
--- a/pkgs/development/tools/biome/default.nix
+++ b/pkgs/development/tools/biome/default.nix
@@ -12,16 +12,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "biome";
-  version = "1.6.3";
+  version = "1.7.3";
 
   src = fetchFromGitHub {
     owner = "biomejs";
     repo = "biome";
     rev = "cli/v${version}";
-    hash = "sha256-DooUOp+fr5oOrx04SLlTGro8xc2LieVPNtdvDyTLL/s=";
+    hash = "sha256-iSL0PRHj32PpKoUogej0bc/zXGpS4ZgZG/+9Pewhl4k=";
   };
 
-  cargoHash = "sha256-zMMfLDhiqG8Ahe+7PFjpOtwaBXbKkLDIIoHS329/4uQ=";
+  cargoHash = "sha256-no6ZrH1Ma+n66SLgA3h9dQX8FgeVjFVkxfqR35F/prs=";
 
   nativeBuildInputs = [
     pkg-config
@@ -41,7 +41,7 @@ rustPlatform.buildRustPackage rec {
 
   cargoBuildFlags = [ "-p=biome_cli" ];
   cargoTestFlags = cargoBuildFlags ++
-    # skip a broken test from v1.6.3 release
+    # skip a broken test from v1.7.3 release
     # this will be removed on the next version
     [ "-- --skip=diagnostics::test::termination_diagnostic_size" ];
 
diff --git a/pkgs/development/tools/bloom/default.nix b/pkgs/development/tools/bloom/default.nix
index dc0a35d06542..1b977e33027b 100644
--- a/pkgs/development/tools/bloom/default.nix
+++ b/pkgs/development/tools/bloom/default.nix
@@ -48,7 +48,7 @@ stdenv.mkDerivation rec {
     description = "Debug interface for AVR-based embedded systems development on GNU/Linux";
     homepage = "https://bloom.oscillate.io/";
     license = lib.licenses.lgpl3Only;
-    maintainers = with lib.maintainers; [ eclairevoyant ];
+    maintainers = with lib.maintainers; [ ];
     mainProgram = "bloom";
     platforms = lib.platforms.linux;
   };
diff --git a/pkgs/development/tools/bodyclose/default.nix b/pkgs/development/tools/bodyclose/default.nix
index 6f8686a7b7b1..9072fe4c1045 100644
--- a/pkgs/development/tools/bodyclose/default.nix
+++ b/pkgs/development/tools/bodyclose/default.nix
@@ -1,23 +1,26 @@
 { lib
 , buildGoModule
 , fetchFromGitHub
+, unstableGitUpdater
 }:
 
-buildGoModule rec {
+buildGoModule {
   pname = "bodyclose";
-  version = "2023-04-21";
+  version = "0-unstable-2024-01-26";
 
   src = fetchFromGitHub {
     owner = "timakin";
     repo = "bodyclose";
-    rev = "574207250966ef48b7c65325648b17ff2c3a900a";
-    hash = "sha256-qUt8uOk1vgj2rtzTevGh9c4McxbFKgEw83pq7IAlRdg=";
+    rev = "f835fa56326ac81b2d54408f1a3a6c43bca4d5aa";
+    hash = "sha256-yPvBDJx6ECrSLDazdNDRl79iogsZO2qNWHuUuwQoRHU=";
   };
 
-  vendorHash = "sha256-TSYaY7Rg0ZoXdIN1sTNmgjC4PcVcgwSTuE43FYbzlAs=";
+  vendorHash = "sha256-8grdJuV8aSETsJr2VazC/3ctfnGh3UgjOWD4/xf3uC8=";
 
   ldflags = [ "-s" "-w" ];
 
+  passthru.updateScript = unstableGitUpdater {};
+
   meta = with lib; {
     description = "Golang linter to check whether HTTP response body is closed and a re-use of TCP connection is not blocked";
     mainProgram = "bodyclose";
diff --git a/pkgs/development/tools/build-managers/bob/default.nix b/pkgs/development/tools/build-managers/bob/default.nix
index 6821dc19116f..98559d1ca4b4 100644
--- a/pkgs/development/tools/build-managers/bob/default.nix
+++ b/pkgs/development/tools/build-managers/bob/default.nix
@@ -1,4 +1,10 @@
-{ lib, stdenv, buildGoModule, fetchFromGitHub, installShellFiles }:
+{ lib
+, stdenv
+, buildGoModule
+, fetchFromGitHub
+, installShellFiles
+, fetchpatch
+}:
 
 buildGoModule rec {
   pname = "bob";
@@ -11,9 +17,18 @@ buildGoModule rec {
     hash = "sha256-zmWfOLBb+GWw9v6LdCC7/WaP1Wz7UipPwqkmI1+rG8Q=";
   };
 
+  patches = [
+    # Fix vulnerable dependencies
+    # Backport of https://github.com/benchkram/bob/pull/387
+    (fetchpatch {
+      url = "https://github.com/benchkram/bob/commit/5020e6fafbfbcb1b3add5d936886423ce882793d.patch";
+      hash = "sha256-if1ZErI0Un7d26eOkYSkEa87+VTRcEtF6JbsJYOHpHE=";
+    })
+  ];
+
   ldflags = [ "-s" "-w" "-X main.Version=${version}" ];
 
-  vendorHash = "sha256-S1XUgjdSVTWXehOLCxXcvj0SH12cxqvYadVlCw/saF4=";
+  vendorHash = "sha256-u0nFaTQWU9O7A/RAhGaLcBka+YNGjSlpycDF8TLQALw=";
 
   excludedPackages = [ "example/server-db" "test/e2e" "tui-example" ];
 
diff --git a/pkgs/development/tools/build-managers/moon/default.nix b/pkgs/development/tools/build-managers/moon/default.nix
index 08beabc6f74a..5fa78bee1dad 100644
--- a/pkgs/development/tools/build-managers/moon/default.nix
+++ b/pkgs/development/tools/build-managers/moon/default.nix
@@ -9,16 +9,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "moon";
-  version = "1.24.2";
+  version = "1.24.4";
 
   src = fetchFromGitHub {
     owner = "moonrepo";
     repo = pname;
     rev = "v${version}";
-    hash = "sha256-G1SblnbT0goOsefEy1QbCkp32JKs0usfKMWDsn3k7/M=";
+    hash = "sha256-LOUACki6uG8jDBI2eOO0C/tQrJ7L3aehwo+4pe9ONgo=";
   };
 
-  cargoHash = "sha256-z2Kgo8i6fk3sfX6bCBmyqIfFSw75v4NhnUFSBKJQwXs=";
+  cargoHash = "sha256-kTLWWtAqoSTmVBHYJKMUsV8jtSYzgERkSErLRMmZI7Y=";
 
   env = {
     RUSTFLAGS = "-C strip=symbols";
diff --git a/pkgs/development/tools/build-managers/sbt/default.nix b/pkgs/development/tools/build-managers/sbt/default.nix
index 580cf127b3c6..3596f94b61de 100644
--- a/pkgs/development/tools/build-managers/sbt/default.nix
+++ b/pkgs/development/tools/build-managers/sbt/default.nix
@@ -8,11 +8,11 @@
 
 stdenv.mkDerivation (finalAttrs: {
   pname = "sbt";
-  version = "1.9.9";
+  version = "1.10.0";
 
   src = fetchurl {
     url = "https://github.com/sbt/sbt/releases/download/v${finalAttrs.version}/sbt-${finalAttrs.version}.tgz";
-    hash = "sha256-xXyuYMISLKG7p3GE37TQ0l/GwYgFOUqzarYgiwwPJi8=";
+    hash = "sha256-FUt95sGSB8c9CjBPkByMS26tmpw6mamKnXKsGUGdJkA=";
   };
 
   postPatch = ''
diff --git a/pkgs/development/tools/build-managers/scala-cli/sources.json b/pkgs/development/tools/build-managers/scala-cli/sources.json
index e07a11c40d74..aa8a580f45ac 100644
--- a/pkgs/development/tools/build-managers/scala-cli/sources.json
+++ b/pkgs/development/tools/build-managers/scala-cli/sources.json
@@ -1,21 +1,21 @@
 {
-  "version": "1.3.0",
+  "version": "1.3.1",
   "assets": {
     "aarch64-darwin": {
       "asset": "scala-cli-aarch64-apple-darwin.gz",
-      "sha256": "140klmqcv8cjnznsn35vba7mgmifrp9p776n39m689hkprzz474w"
+      "sha256": "04piwgd7jy7m4mx263lmlxfwh839q02b9jzycrr9bydqgfx7i0sk"
     },
     "aarch64-linux": {
       "asset": "scala-cli-aarch64-pc-linux.gz",
-      "sha256": "1vxq4j2slrdvxzq0chm8nggdrrj3fdb7q1qqbhf83vlirgrf9da1"
+      "sha256": "0f01ilxr7zc0p6jcmn034j16ynjv1r2miik25pqlhcafjhv9sp20"
     },
     "x86_64-darwin": {
       "asset": "scala-cli-x86_64-apple-darwin.gz",
-      "sha256": "0df8jilv5hzka9xhwhhgq7imw4xik2ybdzh318ka77rwd58wy5yy"
+      "sha256": "1yj49fskajf1fffkxh5hyg3vcrxyhjgcha1hj61dw0iblazfa440"
     },
     "x86_64-linux": {
       "asset": "scala-cli-x86_64-pc-linux.gz",
-      "sha256": "0rw40xqchw3s07acyn2n35z0nlf7fyrvyixhl41wf28q999kbxwn"
+      "sha256": "1kr035l4vwv76041yy82347f01kvbl8n676jd3dayzw48xg6j5l2"
     }
   }
 }
diff --git a/pkgs/development/tools/buildah/default.nix b/pkgs/development/tools/buildah/default.nix
index 7535394a5551..d1ba00dc616d 100644
--- a/pkgs/development/tools/buildah/default.nix
+++ b/pkgs/development/tools/buildah/default.nix
@@ -17,13 +17,13 @@
 
 buildGoModule rec {
   pname = "buildah";
-  version = "1.35.3";
+  version = "1.35.4";
 
   src = fetchFromGitHub {
     owner = "containers";
     repo = "buildah";
     rev = "v${version}";
-    hash = "sha256-FqgYpCvEEqgnhCHdHN1/inxMJoOjoHLc/xMfhXsA1nc=";
+    hash = "sha256-lcB23yU7Wn+aILGFLDBnFg30NRDQgJt3J61FmGuQtRo=";
   };
 
   outputs = [ "out" "man" ];
diff --git a/pkgs/development/tools/buildkit/default.nix b/pkgs/development/tools/buildkit/default.nix
index a82c76af4af2..e4b9f050d6f3 100644
--- a/pkgs/development/tools/buildkit/default.nix
+++ b/pkgs/development/tools/buildkit/default.nix
@@ -2,13 +2,13 @@
 
 buildGoModule rec {
   pname = "buildkit";
-  version = "0.13.1";
+  version = "0.13.2";
 
   src = fetchFromGitHub {
     owner = "moby";
     repo = "buildkit";
     rev = "v${version}";
-    hash = "sha256-BrLDY3T40ndkjuWCx5kLZvMBp8xI5d3MFg9M3IpafWM=";
+    hash = "sha256-Kb5p838jezDTJnc2jcKnima1gE7ENMm+4cmN6F6vh+Y=";
   };
 
   vendorHash = null;
@@ -19,12 +19,12 @@ buildGoModule rec {
 
   doCheck = false;
 
-  meta = with lib; {
+  meta = {
     description = "Concurrent, cache-efficient, and Dockerfile-agnostic builder toolkit";
     homepage = "https://github.com/moby/buildkit";
     changelog = "https://github.com/moby/buildkit/releases/tag/v${version}";
-    license = licenses.asl20;
-    maintainers = with maintainers; [ vdemeester developer-guy ];
+    license = lib.licenses.asl20;
+    maintainers = with lib.maintainers; [ developer-guy vdemeester ];
     mainProgram = "buildctl";
   };
 }
diff --git a/pkgs/development/tools/cambalache/default.nix b/pkgs/development/tools/cambalache/default.nix
index 757ab10583a7..66ee1edbd1d5 100644
--- a/pkgs/development/tools/cambalache/default.nix
+++ b/pkgs/development/tools/cambalache/default.nix
@@ -8,11 +8,11 @@
 , gobject-introspection
 , desktop-file-utils
 , shared-mime-info
-, wrapGAppsHook
+, wrapGAppsHook4
 , glib
 , gtk3
 , gtk4
-, gtksourceview4
+, gtksourceview5
 , libadwaita
 , libhandy
 , webkitgtk_4_1
@@ -22,7 +22,7 @@
 
 python3.pkgs.buildPythonApplication rec {
   pname = "cambalache";
-  version = "0.16.0";
+  version = "0.90.2";
 
   format = "other";
 
@@ -30,9 +30,9 @@ python3.pkgs.buildPythonApplication rec {
   src = fetchFromGitLab {
     domain = "gitlab.gnome.org";
     owner = "jpu";
-    repo = pname;
+    repo = "cambalache";
     rev = version;
-    sha256 = "sha256-Ha94Ca5a7EUBYuSJvMrLc5895Q2/01/tbKpwlHLmTDc=";
+    hash = "sha256-m3rearoCFQUzdZMXY2xyKf4dgdq7G4QlUbetrIqW83U=";
   };
 
   nativeBuildInputs = [
@@ -42,7 +42,7 @@ python3.pkgs.buildPythonApplication rec {
     gobject-introspection # for setup hook
     desktop-file-utils # for update-desktop-database
     shared-mime-info # for update-mime-database
-    wrapGAppsHook
+    wrapGAppsHook4
   ];
 
   pythonPath = with python3.pkgs; [
@@ -54,7 +54,7 @@ python3.pkgs.buildPythonApplication rec {
     glib
     gtk3
     gtk4
-    gtksourceview4
+    gtksourceview5
     webkitgtk_4_1
     webkitgtk_6_0
     # For extra widgets support.
@@ -70,8 +70,8 @@ python3.pkgs.buildPythonApplication rec {
     # those programs are used at runtime not build time
     # https://gitlab.gnome.org/jpu/cambalache/-/blob/0.12.1/meson.build#L79-80
     substituteInPlace ./meson.build \
-      --replace "find_program('broadwayd', required: true)" "" \
-      --replace "find_program('gtk4-broadwayd', required: true)" ""
+      --replace-fail "find_program('broadwayd', required: true)" "" \
+      --replace-fail "find_program('gtk4-broadwayd', required: true)" ""
   '';
 
   preFixup = ''
diff --git a/pkgs/development/tools/cdecl/default.nix b/pkgs/development/tools/cdecl/default.nix
deleted file mode 100644
index 48870c7d2df1..000000000000
--- a/pkgs/development/tools/cdecl/default.nix
+++ /dev/null
@@ -1,26 +0,0 @@
-{lib, stdenv, fetchurl, bison, flex, readline, ncurses, gnused}:
-
-stdenv.mkDerivation rec {
-  pname = "cdecl";
-  version = "2.5";
-  src = fetchurl {
-    url = "https://www.cdecl.org/files/${pname}-blocks-${version}.tar.gz";
-    sha256 = "1b7k0ra30hh8mg8fqv0f0yzkaac6lfg6n376drgbpxg4wwml1rly";
-  };
-
-  patches = [ ./cdecl-2.5-lex.patch ];
-  preBuild = ''
-    ${gnused}/bin/sed 's/getline/cdecl_getline/g' -i cdecl.c;
-    makeFlagsArray=(CFLAGS="-DBSD -DUSE_READLINE -std=gnu89" LIBS=-lreadline);
-    makeFlags="$makeFlags PREFIX=$out BINDIR=$out/bin MANDIR=$out/man1 CATDIR=$out/cat1 CC=$CC";
-    mkdir -p $out/bin;
-  '';
-  buildInputs = [bison flex readline ncurses];
-
-  meta = {
-    description = "Translator English -- C/C++ declarations";
-    license = lib.licenses.publicDomain;
-    maintainers = with lib.maintainers; [ ];
-    platforms = lib.platforms.unix;
-  };
-}
diff --git a/pkgs/development/tools/changie/default.nix b/pkgs/development/tools/changie/default.nix
index a4050744f09a..b8fc6af5764b 100644
--- a/pkgs/development/tools/changie/default.nix
+++ b/pkgs/development/tools/changie/default.nix
@@ -6,16 +6,16 @@
 
 buildGoModule rec {
   pname = "changie";
-  version = "1.18.0";
+  version = "1.19.0";
 
   src = fetchFromGitHub {
     owner = "miniscruff";
     repo = "changie";
     rev = "v${version}";
-    hash = "sha256-pZe9T/WALFX5xwCiZKbf8fpaG3wmBJbqgM7FTPqlN2k=";
+    hash = "sha256-3GQ9C9UteJG3LfJmDsBbFJ9hnz7ouQ/6bZkQ/8CZ8PI=";
   };
 
-  vendorHash = "sha256-SdaDu9LXgelSEXdOCAbtvt1LnrSVpAIoN6MDSjTeEOs=";
+  vendorHash = "sha256-2SkHId5BDAv525PISLjlrP862Z2fJDN4L839rz8rWaw=";
 
   nativeBuildInputs = [
     installShellFiles
diff --git a/pkgs/development/tools/check-jsonschema/default.nix b/pkgs/development/tools/check-jsonschema/default.nix
index c75ca6e41b4b..c4cd5903ddeb 100644
--- a/pkgs/development/tools/check-jsonschema/default.nix
+++ b/pkgs/development/tools/check-jsonschema/default.nix
@@ -4,7 +4,7 @@ with python3.pkgs;
 
 buildPythonApplication rec {
   pname = "check-jsonschema";
-  version = "0.28.2";
+  version = "0.28.3";
   format = "setuptools";
 
   disabled = pythonOlder "3.7";
@@ -13,7 +13,7 @@ buildPythonApplication rec {
     owner = "python-jsonschema";
     repo = "check-jsonschema";
     rev = "refs/tags/${version}";
-    hash = "sha256-QHcpcpICYqQUUCkLAV4BpDYn7Te/TGbXFPgr8Emp0ew=";
+    hash = "sha256-1nbaaUr/3yX/ZTTXzlwLKCRsa58UFONQnDWmcvmdhsU=";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/tools/click/default.nix b/pkgs/development/tools/click/default.nix
index f8d73eec2580..da05368a2ce4 100644
--- a/pkgs/development/tools/click/default.nix
+++ b/pkgs/development/tools/click/default.nix
@@ -13,7 +13,7 @@
 , getopt
 , setuptools
 , pygobject3
-, wrapGAppsHook
+, wrapGAppsHook3
 }:
 
 buildPythonApplication {
@@ -57,7 +57,7 @@ buildPythonApplication {
     gobject-introspection
     vala
     getopt
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   # Tests were omitted for time constraint reasons
diff --git a/pkgs/development/tools/coder/default.nix b/pkgs/development/tools/coder/default.nix
index 832e73869bd0..df4522faf26e 100644
--- a/pkgs/development/tools/coder/default.nix
+++ b/pkgs/development/tools/coder/default.nix
@@ -13,15 +13,6 @@ let
 
   channels = {
     stable = {
-      version = "2.9.4";
-      hash = {
-        x86_64-linux = "sha256-Sw8wAx69oQFrr24Ukah+GfQvoyn2qX5LljZ398H6QFk=";
-        x86_64-darwin = "sha256-uSO2gVvyHTf4dWws0QVtfFUdluwJGkwpuYUDIlXwf+I=";
-        aarch64-linux = "sha256-qI43x2hL9X4GsG511PrEZN5MtRV8th1NRbtkbZ2gZ3A=";
-        aarch64-darwin = "sha256-KbUH2OeDqEXoRMx6kmMbe0tEcE3FLuSMkRoFFnfXLfE=";
-      };
-    };
-    mainline = {
       version = "2.10.2";
       hash = {
         x86_64-linux = "sha256-U3qHEjIKq8JkpDp6TehMs6t5L3GpSGt4D10XSAQ9Ii0=";
@@ -30,6 +21,15 @@ let
         aarch64-darwin = "sha256-3sHmR6PTRlBSIdD4rja4y8v0gOY4cbbyhW7qssgpqp8=";
       };
     };
+    mainline = {
+      version = "2.11.0";
+      hash = {
+        x86_64-linux = "sha256-aJwL4WCJXxSBrfaUHEECQqedz2lKBOa8sdRItSBpxp4=";
+        x86_64-darwin = "sha256-4D4MoDrEJtawFeUBG9BiJ6HZ9uqx9uQDIHHNB7m2pp8=";
+        aarch64-linux = "sha256-2UlCxykSfnK50OPb61YC42MTTlPL1njf0vpwmqaUbI8=";
+        aarch64-darwin = "sha256-mh0Lr+SH4jZTx1xH7QoqfSLDma5nS61sv31QuOYAgQk=";
+      };
+    };
   };
 in
 stdenvNoCC.mkDerivation (finalAttrs: {
diff --git a/pkgs/development/tools/confluent-cli/default.nix b/pkgs/development/tools/confluent-cli/default.nix
index 102ec3d996fd..e614fe7d947d 100644
--- a/pkgs/development/tools/confluent-cli/default.nix
+++ b/pkgs/development/tools/confluent-cli/default.nix
@@ -2,26 +2,26 @@
 
 stdenv.mkDerivation rec {
   pname = "confluent-cli";
-  version = "3.37.0";
+  version = "3.60.0";
 
   # To get the latest version:
   # curl -L https://cnfl.io/cli | sh -s -- -l | grep -v latest | sort -V | tail -n1
   src = {
     x86_64-linux = fetchurl {
       url = "https://s3-us-west-2.amazonaws.com/confluent.cloud/confluent-cli/archives/${version}/confluent_${version}_linux_amd64.tar.gz";
-      hash = "sha256-vJB/0odVA86fZtRh/Cg5KPD8q8CQFENlRzjpI41UOc8=";
+      hash = "sha256-GYA7T2yRcSNStvd9ZqI2iTJC3d6ymH9Dg5FVkIsM1f0=";
     };
     aarch64-linux = fetchurl {
       url = "https://s3-us-west-2.amazonaws.com/confluent.cloud/confluent-cli/archives/${version}/confluent_${version}_linux_arm64.tar.gz";
-      hash = "sha256-lj7i7oQzX1AfhYfrXDiOjz1/EV4y3/CI4MyPKzNGcss=";
+      hash = "sha256-BJJaZtRInKT6S0W22f96RCM8H18dIpOTP5lu357zh18=";
     };
     x86_64-darwin = fetchurl {
       url = "https://s3-us-west-2.amazonaws.com/confluent.cloud/confluent-cli/archives/${version}/confluent_${version}_darwin_amd64.tar.gz";
-      hash = "sha256-gEQBxChsM5CXFRsWBVVcQ88xQ2N4lqkIxHfZKPEMlOY";
+      hash = "sha256-94ur/FXxQWL4EOkEI1FSoWduRaMaY7DCNMiucpNC0B0=";
     };
     aarch64-darwin = fetchurl {
       url = "https://s3-us-west-2.amazonaws.com/confluent.cloud/confluent-cli/archives/${version}/confluent_${version}_darwin_arm64.tar.gz";
-      hash = "sha256-6i5Z3m0gMzPuqWm/SJOuxjO3ioh/Uhk3A9uykksYfPo=";
+      hash = "sha256-aEIKSrO0/6dJCAyzwBH2ZDAmwvURugx6jTzaepbRvH8=";
     };
   }.${stdenv.hostPlatform.system} or (throw "Unsupported system: ${stdenv.hostPlatform.system}");
 
diff --git a/pkgs/development/tools/continuous-integration/agola/default.nix b/pkgs/development/tools/continuous-integration/agola/default.nix
index 02cd0f25acd5..9022e0b171bb 100644
--- a/pkgs/development/tools/continuous-integration/agola/default.nix
+++ b/pkgs/development/tools/continuous-integration/agola/default.nix
@@ -4,7 +4,7 @@
 }:
 
 let
-  version = "0.8.0";
+  version = "0.9.1";
 in
 
 buildGoModule {
@@ -15,10 +15,10 @@ buildGoModule {
     owner = "agola-io";
     repo = "agola";
     rev = "v${version}";
-    hash = "sha256-nU04MVkUC+m6Ga4qDUH9KrA0zbYmttAicpvdxbaBG0Y=";
+    hash = "sha256-96D4E4H3JsXCHWUyTKzZxqsqylJdzbnbLi6engNR/Eg=";
   };
 
-  vendorHash = "sha256-k3Sip9CqTGRTWxr3RzZf0jCrm4AfUrpY/wSTmHy+yik=";
+  vendorHash = "sha256-Igtccundx/2PHFp8+L44CvOLG+/Ndinhonh/EDcQeoY=";
 
   ldflags = [
     "-s"
diff --git a/pkgs/development/tools/continuous-integration/codeberg-pages/default.nix b/pkgs/development/tools/continuous-integration/codeberg-pages/default.nix
index c9ec0cc84ad4..63324531f8e2 100644
--- a/pkgs/development/tools/continuous-integration/codeberg-pages/default.nix
+++ b/pkgs/development/tools/continuous-integration/codeberg-pages/default.nix
@@ -14,7 +14,10 @@ buildGoModule rec {
 
   vendorHash = "sha256-vTYB3ka34VooN2Wh/Rcj+2S1qAsA2a/VtXlILn1W7oU=";
 
-  patches = [ ./disable_httptest.patch ];
+  postPatch = ''
+    # disable httptest
+    rm server/handler/handler_test.go
+  '';
 
   ldflags = [ "-s" "-w" ];
 
diff --git a/pkgs/development/tools/continuous-integration/codeberg-pages/disable_httptest.patch b/pkgs/development/tools/continuous-integration/codeberg-pages/disable_httptest.patch
deleted file mode 100644
index 90c815712d38..000000000000
--- a/pkgs/development/tools/continuous-integration/codeberg-pages/disable_httptest.patch
+++ /dev/null
@@ -1,58 +0,0 @@
-diff --git a/server/handler/handler_test.go b/server/handler/handler_test.go
-deleted file mode 100644
-index 6521633..0000000
---- a/server/handler/handler_test.go
-+++ /dev/null
-@@ -1,52 +0,0 @@
--package handler
--
--import (
--	"net/http"
--	"net/http/httptest"
--	"testing"
--	"time"
--
--	"codeberg.org/codeberg/pages/server/cache"
--	"codeberg.org/codeberg/pages/server/gitea"
--	"github.com/rs/zerolog/log"
--)
--
--func TestHandlerPerformance(t *testing.T) {
--	giteaClient, _ := gitea.NewClient("https://codeberg.org", "", cache.NewKeyValueCache(), false, false)
--	testHandler := Handler(
--		"codeberg.page", "raw.codeberg.org",
--		giteaClient,
--		"https://docs.codeberg.org/pages/raw-content/",
--		[]string{"/.well-known/acme-challenge/"},
--		[]string{"raw.codeberg.org", "fonts.codeberg.org", "design.codeberg.org"},
--		[]string{"pages"},
--		cache.NewKeyValueCache(),
--		cache.NewKeyValueCache(),
--		cache.NewKeyValueCache(),
--	)
--
--	testCase := func(uri string, status int) {
--		t.Run(uri, func(t *testing.T) {
--			req := httptest.NewRequest("GET", uri, http.NoBody)
--			w := httptest.NewRecorder()
--
--			log.Printf("Start: %v\n", time.Now())
--			start := time.Now()
--			testHandler(w, req)
--			end := time.Now()
--			log.Printf("Done: %v\n", time.Now())
--
--			resp := w.Result()
--
--			if resp.StatusCode != status {
--				t.Errorf("request failed with status code %d", resp.StatusCode)
--			} else {
--				t.Logf("request took %d milliseconds", end.Sub(start).Milliseconds())
--			}
--		})
--	}
--
--	testCase("https://mondstern.codeberg.page/", 404) // TODO: expect 200
--	testCase("https://codeberg.page/", 404)           // TODO: expect 200
--	testCase("https://example.momar.xyz/", 424)
--}
diff --git a/pkgs/development/tools/continuous-integration/drone/default.nix b/pkgs/development/tools/continuous-integration/drone/default.nix
index e6f6b8bf4c45..26d98065c820 100644
--- a/pkgs/development/tools/continuous-integration/drone/default.nix
+++ b/pkgs/development/tools/continuous-integration/drone/default.nix
@@ -6,13 +6,13 @@
 
 buildGoModule rec {
   pname = "drone.io${lib.optionalString (!enableUnfree) "-oss"}";
-  version = "2.23.0";
+  version = "2.24.0";
 
   src = fetchFromGitHub {
     owner = "harness";
     repo = "drone";
     rev = "v${version}";
-    sha256 = "sha256-HkyR2h7dgbEhqexJXyGebP3zkoTLlzuY+1O2pidAveQ=";
+    sha256 = "sha256-IiSsw0bZDAVuOrm7JBTT14Cf7I/koeS2Yw6vWYBG7kA=";
   };
 
   vendorHash = "sha256-n4KbKkqAnHDIsXs8A/FE+rCkSKQKr5fv7npJ/X6t0mk=";
diff --git a/pkgs/development/tools/continuous-integration/gitea-actions-runner/default.nix b/pkgs/development/tools/continuous-integration/gitea-actions-runner/default.nix
index 68093f39e4f8..a2ed89e2ca76 100644
--- a/pkgs/development/tools/continuous-integration/gitea-actions-runner/default.nix
+++ b/pkgs/development/tools/continuous-integration/gitea-actions-runner/default.nix
@@ -7,17 +7,17 @@
 
 buildGoModule rec {
   pname = "gitea-actions-runner";
-  version = "0.2.6";
+  version = "0.2.10";
 
   src = fetchFromGitea {
     domain = "gitea.com";
     owner = "gitea";
     repo = "act_runner";
     rev = "v${version}";
-    hash = "sha256-GE9yqp5zWJ4lL0L/w3oSvU72AiHBNb+yh2qBPKPe9X0=";
+    hash = "sha256-YRWFBMHw9Fcmzkmglh2I1kXJkAAivqvCBcenLTjE/bI=";
   };
 
-  vendorHash = "sha256-NoaLq5pCwTuPd9ne5LYcvJsgUXAqcfkcW3Ck2K350JE=";
+  vendorHash = "sha256-8sdSQhg9DnRLgghDZzWrUMM4vjinhCgu3dTKU7MBVQU=";
 
   ldflags = [
     "-s"
diff --git a/pkgs/development/tools/continuous-integration/github-runner/default.nix b/pkgs/development/tools/continuous-integration/github-runner/default.nix
index f219438d134d..f93517265e65 100644
--- a/pkgs/development/tools/continuous-integration/github-runner/default.nix
+++ b/pkgs/development/tools/continuous-integration/github-runner/default.nix
@@ -22,13 +22,13 @@ assert builtins.all (x: builtins.elem x [ "node20" ]) nodeRuntimes;
 
 buildDotnetModule rec {
   pname = "github-runner";
-  version = "2.316.0";
+  version = "2.316.1";
 
   src = fetchFromGitHub {
     owner = "actions";
     repo = "runner";
     rev = "v${version}";
-    hash = "sha256-LoXVe4ZuVIFoqz+N8WK950Wm8zssCoKVj6HSkPvDFYU=";
+    hash = "sha256-y7HU71Pk0SrZ+IPaVa/XyMeHylfjUSEju+gp1vyVKtQ=";
     leaveDotGit = true;
     postFetch = ''
       git -C $out rev-parse --short HEAD > $out/.git-revision
diff --git a/pkgs/development/tools/continuous-integration/gitlab-runner/default.nix b/pkgs/development/tools/continuous-integration/gitlab-runner/default.nix
index 999a2ce7719b..a0e41743b8de 100644
--- a/pkgs/development/tools/continuous-integration/gitlab-runner/default.nix
+++ b/pkgs/development/tools/continuous-integration/gitlab-runner/default.nix
@@ -1,7 +1,7 @@
 { lib, buildGoModule, fetchFromGitLab, fetchurl, bash }:
 
 let
-  version = "16.11.0";
+  version = "16.11.1";
 in
 buildGoModule rec {
   inherit version;
@@ -17,13 +17,13 @@ buildGoModule rec {
   # For patchShebangs
   buildInputs = [ bash ];
 
-  vendorHash = "sha256-98ixme01PHbuyCJatWErbzTeuKYSbXsLbZxNGSd+zjY=";
+  vendorHash = "sha256-ms93Ea2Un/F9TDmNttSxi/CtZGsOnmptCf/hjtgCMB0=";
 
   src = fetchFromGitLab {
     owner = "gitlab-org";
     repo = "gitlab-runner";
     rev = "v${version}";
-    sha256 = "sha256-cPY+JAvyRb4+ytx5nwx1BaH/tZ5BW4kgWIEvD6a3aec=";
+    sha256 = "sha256-ISL11AvKIy/tW/3MhVZ2/XT5RcaYj+x9rHKWAB/9TdU=";
   };
 
   patches = [
diff --git a/pkgs/development/tools/coursier/default.nix b/pkgs/development/tools/coursier/default.nix
index 7c4c9e936cae..3732a1eec55f 100644
--- a/pkgs/development/tools/coursier/default.nix
+++ b/pkgs/development/tools/coursier/default.nix
@@ -8,11 +8,11 @@ let
 in
 stdenv.mkDerivation rec {
   pname = "coursier";
-  version = "2.1.9";
+  version = "2.1.10";
 
   src = fetchurl {
     url = "https://github.com/coursier/coursier/releases/download/v${version}/coursier";
-    hash = "sha256-Zj0nDCpbT7foGdUkxPG/FeljZj1alk/gvE0m/T4WlXE=";
+    hash = "sha256-fiZwmDDuaafBbYQdOxPpTrleMLOSakCteizpKwcGStk=";
   };
 
   dontUnpack = true;
diff --git a/pkgs/development/tools/database/atlas/default.nix b/pkgs/development/tools/database/atlas/default.nix
index 270d13492785..8fc770f92cd7 100644
--- a/pkgs/development/tools/database/atlas/default.nix
+++ b/pkgs/development/tools/database/atlas/default.nix
@@ -2,19 +2,19 @@
 
 buildGoModule rec {
   pname = "atlas";
-  version = "0.21.1";
+  version = "0.22.0";
 
   src = fetchFromGitHub {
     owner = "ariga";
     repo = "atlas";
     rev = "v${version}";
-    hash = "sha256-i0nqjlL22sM8eVXCD/SBJyNdy0l0Hq4rjW0Lr3CRZlE=";
+    hash = "sha256-NsSDNeciHwlc7LZmuTOzoLNVsjAE+4YGThD/omMbjaE=";
   };
 
   modRoot = "cmd/atlas";
 
   proxyVendor = true;
-  vendorHash = "sha256-48UmLwp93SjwPPrdySFVApjVf1Rsj3oNhi1lha4ZvyE=";
+  vendorHash = "sha256-rM2l7U/ZkL0NIGPPbmBQ+P6mzGxdX4aQeS8Hz6EFmQc=";
 
   nativeBuildInputs = [ installShellFiles ];
 
diff --git a/pkgs/development/tools/database/clickhouse-backup/default.nix b/pkgs/development/tools/database/clickhouse-backup/default.nix
index bf9ffa48e439..1f4764920ca4 100644
--- a/pkgs/development/tools/database/clickhouse-backup/default.nix
+++ b/pkgs/development/tools/database/clickhouse-backup/default.nix
@@ -7,16 +7,16 @@
 
 buildGoModule rec {
   pname = "clickhouse-backup";
-  version = "2.5.4";
+  version = "2.5.6";
 
   src = fetchFromGitHub {
     owner = "AlexAkulov";
     repo = "clickhouse-backup";
     rev = "v${version}";
-    hash = "sha256-uFQm7VRxFozV/I1tywey5ljWqzt08aShVjlwUT3oz5w=";
+    hash = "sha256-tX/ttOud6tSsuKhvfwFP3bav+VzSdfVvAdowomQ1YcY=";
   };
 
-  vendorHash = "sha256-T4afeclCWldFJTzk08Ku8VPnXr/Gz0Fpb7G9YrK/iro=";
+  vendorHash = "sha256-ybKCD8mZ8MumKsWicS09E/BW0laAPy1iqA6q8lfczHA=";
 
   ldflags = [
     "-X main.version=${version}"
diff --git a/pkgs/development/tools/database/litecli/default.nix b/pkgs/development/tools/database/litecli/default.nix
index 5179d245ebc2..69004289f528 100644
--- a/pkgs/development/tools/database/litecli/default.nix
+++ b/pkgs/development/tools/database/litecli/default.nix
@@ -5,12 +5,11 @@
 
 python3Packages.buildPythonApplication rec {
   pname = "litecli";
-  version = "1.10.1";
-  disabled = python3Packages.pythonOlder "3.4";
+  version = "1.11.0";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "sha256-N+aAH2vgDV1YU7iIHbH/276bCBfGxhuy2ceWL2z/oI8=";
+    sha256 = "sha256-YW3mjYfSuxi/XmaetrWmjVuTfqgaitQ5wfUaJdHIH1Y=";
   };
 
   propagatedBuildInputs = with python3Packages; [
diff --git a/pkgs/development/tools/database/sqlcl/default.nix b/pkgs/development/tools/database/sqlcl/default.nix
index 60421c59ed49..204f0f4e5a7a 100644
--- a/pkgs/development/tools/database/sqlcl/default.nix
+++ b/pkgs/development/tools/database/sqlcl/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation (finalAttrs: {
   pname = "sqlcl";
-  version = "23.4.0.023.2321";
+  version = "24.1.0.087.0929";
 
   src = fetchurl {
     url = "https://download.oracle.com/otn_software/java/sqldeveloper/sqlcl-${finalAttrs.version}.zip";
-    hash = "sha256-8K2yuLYMJI9fFeDcHpWHYmIxZGC06/heYBEW1z2tGc4=";
+    hash = "sha256-DHp3Wrwro1oaBEw1O7cyRGJKbhD2z86MeY2Xq2vzo1Q=";
   };
 
   nativeBuildInputs = [ makeWrapper unzip ];
diff --git a/pkgs/development/tools/database/sqlfluff/default.nix b/pkgs/development/tools/database/sqlfluff/default.nix
index 110131532e60..7db4d2c7d3a5 100644
--- a/pkgs/development/tools/database/sqlfluff/default.nix
+++ b/pkgs/development/tools/database/sqlfluff/default.nix
@@ -6,14 +6,14 @@
 
 python3.pkgs.buildPythonApplication rec {
   pname = "sqlfluff";
-  version = "3.0.5";
+  version = "3.0.6";
   pyproject = true;
 
   src = fetchFromGitHub {
     owner = "sqlfluff";
     repo = "sqlfluff";
     rev = "refs/tags/${version}";
-    hash = "sha256-jH6o1moyyugKtIIccp8Tbcg5EAMOxzNco9saUgoDzWY=";
+    hash = "sha256-VDLUCxDQKWQEeZQkeZP13KNm48GCQ3i4CLOAB/Kermo=";
   };
 
   build-system = with python3.pkgs; [ setuptools ];
diff --git a/pkgs/development/tools/database/sqlitebrowser/default.nix b/pkgs/development/tools/database/sqlitebrowser/default.nix
index a622d3481ce2..b13255f57a72 100644
--- a/pkgs/development/tools/database/sqlitebrowser/default.nix
+++ b/pkgs/development/tools/database/sqlitebrowser/default.nix
@@ -1,5 +1,5 @@
 { lib, stdenv, mkDerivation, fetchFromGitHub, cmake
-, qtbase, qttools, sqlcipher, wrapGAppsHook, qtmacextras
+, qtbase, qttools, sqlcipher, wrapGAppsHook3, qtmacextras
 }:
 
 mkDerivation rec {
@@ -19,7 +19,7 @@ mkDerivation rec {
   # We *really* should get that cleaned up.
   buildInputs = [ qtbase sqlcipher ] ++ lib.optionals stdenv.isDarwin [ qtmacextras ];
 
-  nativeBuildInputs = [ cmake qttools wrapGAppsHook ];
+  nativeBuildInputs = [ cmake qttools wrapGAppsHook3 ];
 
   cmakeFlags = [
     "-Dsqlcipher=1"
diff --git a/pkgs/development/tools/devbox/default.nix b/pkgs/development/tools/devbox/default.nix
index 31dcb4b06efa..c11e8cdf81ab 100644
--- a/pkgs/development/tools/devbox/default.nix
+++ b/pkgs/development/tools/devbox/default.nix
@@ -5,13 +5,13 @@
 }:
 buildGoModule rec {
   pname = "devbox";
-  version = "0.10.6";
+  version = "0.10.7";
 
   src = fetchFromGitHub {
     owner = "jetpack-io";
     repo = pname;
     rev = version;
-    hash = "sha256-E2kJiWuHY+rHyAR6p/NVbONys8RonpxvDHUTrx6ZSkk=";
+    hash = "sha256-iaPdFDoYmukv1T+HSaGRrbvjvkioX5PlCc9t2VHGJ30=";
   };
 
   ldflags = [
diff --git a/pkgs/development/tools/devpi-client/default.nix b/pkgs/development/tools/devpi-client/default.nix
index 66d84e5a3b12..ea60c216a8f5 100644
--- a/pkgs/development/tools/devpi-client/default.nix
+++ b/pkgs/development/tools/devpi-client/default.nix
@@ -1,37 +1,31 @@
-{ lib
-, devpi-server
-, git
-, glibcLocales
-, python3
-, fetchPypi
+{
+  lib,
+  devpi-server,
+  git,
+  glibcLocales,
+  python3,
+  fetchPypi,
 }:
 
 python3.pkgs.buildPythonApplication rec {
   pname = "devpi-client";
-  version = "7.0.2";
+  version = "7.0.3";
   pyproject = true;
 
   src = fetchPypi {
-    inherit pname version;
-    hash = "sha256-oOX5Z8WXgNJYsgXqHE2CsXdDnA3XmDF6axD1D318bPQ=";
+    pname = "devpi_client";
+    inherit version;
+    hash = "sha256-5aF6EIFnhfywDeAfWSN+eZUpaO6diPCP5QHT11Y/IQI=";
   };
 
-  postPatch = ''
-    substituteInPlace tox.ini \
-      --replace "--flake8" ""
-  '';
-
-  nativeBuildInputs = with python3.pkgs; [
+  build-system = with python3.pkgs; [
     setuptools
     setuptools-changelog-shortener
-    wheel
   ];
 
-  buildInputs = [
-    glibcLocales
-  ];
+  buildInputs = [ glibcLocales ];
 
-  propagatedBuildInputs = with python3.pkgs; [
+  dependencies = with python3.pkgs; [
     build
     check-manifest
     devpi-common
@@ -41,19 +35,21 @@ python3.pkgs.buildPythonApplication rec {
     platformdirs
   ];
 
-  nativeCheckInputs = [
-    devpi-server
-    git
-  ] ++ (with python3.pkgs; [
-    mercurial
-    mock
-    pypitoken
-    pytestCheckHook
-    sphinx
-    virtualenv
-    webtest
-    wheel
-  ]);
+  nativeCheckInputs =
+    [
+      devpi-server
+      git
+    ]
+    ++ (with python3.pkgs; [
+      mercurial
+      mock
+      pypitoken
+      pytestCheckHook
+      sphinx
+      virtualenv
+      webtest
+      wheel
+    ]);
 
   preCheck = ''
     export HOME=$(mktemp -d);
@@ -68,16 +64,17 @@ python3.pkgs.buildPythonApplication rec {
 
   __darwinAllowLocalNetworking = true;
 
-  pythonImportsCheck = [
-    "devpi"
-  ];
+  pythonImportsCheck = [ "devpi" ];
 
   meta = with lib; {
     description = "Client for devpi, a pypi index server and packaging meta tool";
-    mainProgram = "devpi";
     homepage = "http://doc.devpi.net";
     changelog = "https://github.com/devpi/devpi/blob/client-${version}/client/CHANGELOG";
     license = licenses.mit;
-    maintainers = with maintainers; [ lewo makefu ];
+    maintainers = with maintainers; [
+      lewo
+      makefu
+    ];
+    mainProgram = "devpi";
   };
 }
diff --git a/pkgs/development/tools/devpi-server/default.nix b/pkgs/development/tools/devpi-server/default.nix
index 0923182afa4f..c1dfc4841931 100644
--- a/pkgs/development/tools/devpi-server/default.nix
+++ b/pkgs/development/tools/devpi-server/default.nix
@@ -23,6 +23,7 @@
 , webtest
 , testers
 , devpi-server
+, nixosTests
 }:
 
 
@@ -108,8 +109,11 @@ buildPythonApplication rec {
     "devpi_server"
   ];
 
-  passthru.tests.version = testers.testVersion {
-    package = devpi-server;
+  passthru.tests = {
+    devpi-server = nixosTests.devpi-server;
+    version = testers.testVersion {
+      package = devpi-server;
+    };
   };
 
   meta = with lib;{
diff --git a/pkgs/development/tools/doctl/default.nix b/pkgs/development/tools/doctl/default.nix
index 496d25ca3d2c..f12baca26675 100644
--- a/pkgs/development/tools/doctl/default.nix
+++ b/pkgs/development/tools/doctl/default.nix
@@ -2,7 +2,7 @@
 
 buildGoModule rec {
   pname = "doctl";
-  version = "1.105.0";
+  version = "1.106.0";
 
   vendorHash = null;
 
@@ -31,7 +31,7 @@ buildGoModule rec {
     owner = "digitalocean";
     repo = "doctl";
     rev = "v${version}";
-    sha256 = "sha256-b7pks3a2ApR32tc06HZ9hG2MoZKVoWwCBATtcV1+WBo=";
+    sha256 = "sha256-Un1qBQbrgdudAfnviP8d6A7nNwi1ZGAFPN33NLKXNwI=";
   };
 
   meta = with lib; {
diff --git a/pkgs/development/tools/documentation/gtk-doc/default.nix b/pkgs/development/tools/documentation/gtk-doc/default.nix
index 18d53e51da43..b21bdfc500da 100644
--- a/pkgs/development/tools/documentation/gtk-doc/default.nix
+++ b/pkgs/development/tools/documentation/gtk-doc/default.nix
@@ -14,7 +14,7 @@
 
 python3.pkgs.buildPythonApplication rec {
   pname = "gtk-doc";
-  version = "1.33.2";
+  version = "1.34.0";
 
   outputDevdoc = "out";
 
@@ -25,7 +25,7 @@ python3.pkgs.buildPythonApplication rec {
     owner = "GNOME";
     repo = pname;
     rev = version;
-    sha256 = "A6OXpazrJ05SUIO1ZPVN0xHTXOSov8UnPvUolZAv/Iw=";
+    hash = "sha256-Jt6d5wbhAoSQ2sWyYWW68Y81duc3+QOJK/5JR/lCmnQ=";
   };
 
   patches = [
diff --git a/pkgs/development/tools/earthly/default.nix b/pkgs/development/tools/earthly/default.nix
index abc665d25c50..6b07221f1749 100644
--- a/pkgs/development/tools/earthly/default.nix
+++ b/pkgs/development/tools/earthly/default.nix
@@ -2,16 +2,16 @@
 
 buildGoModule rec {
   pname = "earthly";
-  version = "0.8.9";
+  version = "0.8.10";
 
   src = fetchFromGitHub {
     owner = "earthly";
     repo = "earthly";
     rev = "v${version}";
-    hash = "sha256-bybWd+7+bbzxg2cXvat9lOZm+JNHaB/MsimAgbpLwuE=";
+    hash = "sha256-oChedGnyTGN3do/B38CMEiY5cW7qdiDeUz1FjPeLQNU=";
   };
 
-  vendorHash = "sha256-66xN4uUeEFHpI/pAP7akG4YQhbY7ylu8AVOJnx60c7s=";
+  vendorHash = "sha256-gKl5SZQ2pxipL918uup62IdaPokJ7q/7xkY4xgXwq8M=";
   subPackages = [ "cmd/earthly" "cmd/debugger" ];
 
   CGO_ENABLED = 0;
diff --git a/pkgs/development/tools/electron/binary/default.nix b/pkgs/development/tools/electron/binary/default.nix
index 41b3f1022e06..b884428cf8b7 100644
--- a/pkgs/development/tools/electron/binary/default.nix
+++ b/pkgs/development/tools/electron/binary/default.nix
@@ -1,44 +1,11 @@
-{ callPackage }:
+{ lib, callPackage }:
 
 let
   mkElectron = callPackage ./generic.nix { };
+  infoJson = builtins.fromJSON (builtins.readFile ./info.json);
 in
-rec {
-  electron-bin = electron_29-bin;
-
-  electron_24-bin = mkElectron "24.8.6" {
-    armv7l-linux = "8f46901667a904a62df7043991f20dc1c2a00370a42159976855458562cda8fc";
-    aarch64-linux = "599e78a3a8127828ea3fa444927e7e51035dba9811ce0d81d59ad9b0bd02b4f6";
-    x86_64-linux = "61e87bbd361da101c6a8363cc9c1f8b8b51db61b076cf495d3f4424303265a96";
-    x86_64-darwin = "067ce05d628b44e1393369c506268915081ac9d96c0973d367262c71dcd91078";
-    aarch64-darwin = "d9093e6928b2247336b3f0811e4f66c4ae50a719ec9399c393ac9556c8e56cee";
-    headers = "009p1ffh2cyn98fcmprrjzq79jysp7h565v4f54wvjxjsq2nkr97";
-  };
-
-  electron_27-bin = mkElectron "27.3.11" {
-    armv7l-linux = "012127a3edf79e0e4623a08e853286e1cba512438a0414b1ab19b75d929c1cf2";
-    aarch64-linux = "ddbfcd5e04450178ca4e3113f776893454822af6757761adc792692f7978e0df";
-    x86_64-linux = "e3a6f55e54e7a623bba1a15016541248408eef5a19ab82a59d19c807aab14563";
-    x86_64-darwin = "357e70a1c8848d4ac7655346bec98dd18a7c0cee82452a7edf76142017779049";
-    aarch64-darwin = "a687b199fcb9890f43af90ac8a4d19dc7b15522394de89e42abd5f5c6b735804";
-    headers = "0vrjdvqllfyz09sw2y078mds1di219hnmska8bw8ni7j35wxr2br";
-  };
-
-  electron_28-bin = mkElectron "28.3.1" {
-    armv7l-linux = "2e22fbab2376a9bbeb8cbdd7d9bb3ca69fda6adeafa2b22ffb67157fcfcdb6ff";
-    aarch64-linux = "3e46c3076041386213f7b9ebc12335889fbad5822ffc306cf7514abb88de8512";
-    x86_64-linux = "e3be93e1a15d61f72e074aee021e12f20465b81f51b8c1170bd9072d7d695c3a";
-    x86_64-darwin = "bd8a220fd906625ad4a8edf92e80e8eff89d51f40c22168e05090daa7c12bd66";
-    aarch64-darwin = "53fc040cd09e955e013254f784cf51712029ded4a574559cf5fa19c9a911d75d";
-    headers = "07iv5fh0yxv17c1akb2j4ab5xhv29d9zsgi6dm2r0n4pnf72wxwr";
-  };
-
-  electron_29-bin = mkElectron "29.3.0" {
-    armv7l-linux = "51a8b2d67ae58b01919d6eb9e8eef255cd4bb3475b3acaf58ed1b8dc2448f206";
-    aarch64-linux = "bd74743eb03a77f40b65739b9ca751af264c6f428e16728d7e0332a4c94789a9";
-    x86_64-linux = "7274fe2bbb2e3b71f8fc084921e22d10e529220d380a354827b274f9567261da";
-    x86_64-darwin = "88873a315ddd2a70b82e83f2cb7495c0d9d7c7fb5c9ad14fcfee16af4ab89d5e";
-    aarch64-darwin = "b3145bbd45007918c2365b1df59a35b4d0636222cd43eea4803580de36b9a17d";
-    headers = "1smvjlgdp3ailmh0fvxj96p7cnvls19w7kdwn62v1s3xpl84b915";
-  };
-}
+lib.mapAttrs' (majorVersion: info:
+  lib.nameValuePair
+    "electron_${majorVersion}-bin"
+    (mkElectron info.version info.hashes)
+) infoJson
diff --git a/pkgs/development/tools/electron/binary/generic.nix b/pkgs/development/tools/electron/binary/generic.nix
index fb2fcdd6cb1f..f9e493e6b7cb 100644
--- a/pkgs/development/tools/electron/binary/generic.nix
+++ b/pkgs/development/tools/electron/binary/generic.nix
@@ -3,7 +3,7 @@
 , libXScrnSaver
 , makeWrapper
 , fetchurl
-, wrapGAppsHook
+, wrapGAppsHook3
 , glib
 , gtk3
 , unzip
@@ -112,7 +112,7 @@ let
     nativeBuildInputs = [
       unzip
       makeWrapper
-      wrapGAppsHook
+      wrapGAppsHook3
     ];
 
     dontUnpack = true;
diff --git a/pkgs/development/tools/electron/binary/info.json b/pkgs/development/tools/electron/binary/info.json
new file mode 100644
index 000000000000..f72fd9479c32
--- /dev/null
+++ b/pkgs/development/tools/electron/binary/info.json
@@ -0,0 +1,57 @@
+{
+    "24": {
+        "hashes": {
+            "aarch64-darwin": "d9093e6928b2247336b3f0811e4f66c4ae50a719ec9399c393ac9556c8e56cee",
+            "aarch64-linux": "599e78a3a8127828ea3fa444927e7e51035dba9811ce0d81d59ad9b0bd02b4f6",
+            "armv7l-linux": "8f46901667a904a62df7043991f20dc1c2a00370a42159976855458562cda8fc",
+            "headers": "009p1ffh2cyn98fcmprrjzq79jysp7h565v4f54wvjxjsq2nkr97",
+            "x86_64-darwin": "067ce05d628b44e1393369c506268915081ac9d96c0973d367262c71dcd91078",
+            "x86_64-linux": "61e87bbd361da101c6a8363cc9c1f8b8b51db61b076cf495d3f4424303265a96"
+        },
+        "version": "24.8.6"
+    },
+    "27": {
+        "hashes": {
+            "aarch64-darwin": "a687b199fcb9890f43af90ac8a4d19dc7b15522394de89e42abd5f5c6b735804",
+            "aarch64-linux": "ddbfcd5e04450178ca4e3113f776893454822af6757761adc792692f7978e0df",
+            "armv7l-linux": "012127a3edf79e0e4623a08e853286e1cba512438a0414b1ab19b75d929c1cf2",
+            "headers": "0vrjdvqllfyz09sw2y078mds1di219hnmska8bw8ni7j35wxr2br",
+            "x86_64-darwin": "357e70a1c8848d4ac7655346bec98dd18a7c0cee82452a7edf76142017779049",
+            "x86_64-linux": "e3a6f55e54e7a623bba1a15016541248408eef5a19ab82a59d19c807aab14563"
+        },
+        "version": "27.3.11"
+    },
+    "28": {
+        "hashes": {
+            "aarch64-darwin": "53fc040cd09e955e013254f784cf51712029ded4a574559cf5fa19c9a911d75d",
+            "aarch64-linux": "3e46c3076041386213f7b9ebc12335889fbad5822ffc306cf7514abb88de8512",
+            "armv7l-linux": "2e22fbab2376a9bbeb8cbdd7d9bb3ca69fda6adeafa2b22ffb67157fcfcdb6ff",
+            "headers": "07iv5fh0yxv17c1akb2j4ab5xhv29d9zsgi6dm2r0n4pnf72wxwr",
+            "x86_64-darwin": "bd8a220fd906625ad4a8edf92e80e8eff89d51f40c22168e05090daa7c12bd66",
+            "x86_64-linux": "e3be93e1a15d61f72e074aee021e12f20465b81f51b8c1170bd9072d7d695c3a"
+        },
+        "version": "28.3.1"
+    },
+    "29": {
+        "hashes": {
+            "aarch64-darwin": "838cc0f125b3d481c12fc59c37c941b8230770eb2f45529d33718ab2a09b2c51",
+            "aarch64-linux": "c2216bb8c90b6f971b180f2162a874e8838cc4e4e24cd7444b19ebb091a90222",
+            "armv7l-linux": "9fc8ddb64c8741cf37eac9a98f32313fa373bf4159ebbb0329c7eb5508863efd",
+            "headers": "0d4ncjwgi916jzb2cf0wp4hdp5q87bk5jq91s3x3crrcl1i6y1q8",
+            "x86_64-darwin": "f188f44a9bb900b583afed7de6a9268681f7872e5f0b57991cbfe530deda48d1",
+            "x86_64-linux": "a9eaa03e9b926938c118fd59c3810531c40bdc0da4582229be1da20f36c161e3"
+        },
+        "version": "29.3.3"
+    },
+    "30": {
+        "hashes": {
+            "aarch64-darwin": "e082df9ed071ec82358a805c739ca602de083ea953bedab6af619db6537d0628",
+            "aarch64-linux": "0275107afdf820309fd9b0fe09a621a7a53266998c123140cab25cb7ba5d5813",
+            "armv7l-linux": "2bd466054806c67c73774d9b7005b51580b19effcc7e993e53cef2458d0bb0af",
+            "headers": "0prhxzaaaagbr6bnis38y5iljx7rz24x62wbps1nby96p8gqh4sa",
+            "x86_64-darwin": "a4d8c8e161d53933fa3a104a0ca8fab3c914b3517114f209d8b927eedd6a7765",
+            "x86_64-linux": "585cb89f3f11ae11e70d60c47b8ece8833bd176760a3fda47dfa3fe1c4e7c34b"
+        },
+        "version": "30.0.3"
+    }
+}
diff --git a/pkgs/development/tools/electron/binary/print-hashes.sh b/pkgs/development/tools/electron/binary/print-hashes.sh
deleted file mode 100755
index 37cd7d3c662b..000000000000
--- a/pkgs/development/tools/electron/binary/print-hashes.sh
+++ /dev/null
@@ -1,38 +0,0 @@
-#!/usr/bin/env bash
-
-set -eu -o pipefail
-
-if [[ $# -lt 1 ]]; then
-    echo "$0: version" >&2
-    exit 1
-fi
-
-VERSION="$1"
-
-declare -A SYSTEMS HASHES
-SYSTEMS=(
-    [i686-linux]=linux-ia32
-    [x86_64-linux]=linux-x64
-    [armv7l-linux]=linux-armv7l
-    [aarch64-linux]=linux-arm64
-    [x86_64-darwin]=darwin-x64
-    [aarch64-darwin]=darwin-arm64
-)
-
-hashfile="$(nix-prefetch-url --print-path "https://github.com/electron/electron/releases/download/v${VERSION}/SHASUMS256.txt" | tail -n1)"
-headers="$(nix-prefetch-url "https://artifacts.electronjs.org/headers/dist/v${VERSION}/node-v${VERSION}-headers.tar.gz")"
-
-# Entry similar to the following goes in default.nix:
-
-echo "  electron_${VERSION%%.*}-bin = mkElectron \"${VERSION}\" {"
-
-for S in "${!SYSTEMS[@]}"; do
-  hash="$(grep " *electron-v${VERSION}-${SYSTEMS[$S]}.zip$" "$hashfile"|cut -f1 -d' ' || :)"
-  if [[ -n $hash ]]; then
-    echo "    $S = \"$hash\";"
-  fi
-done
-
-echo "    headers = \"$headers\";"
-
-echo "  };"
diff --git a/pkgs/development/tools/electron/common.nix b/pkgs/development/tools/electron/common.nix
index 0cde63f2b312..3ac10225bedf 100644
--- a/pkgs/development/tools/electron/common.nix
+++ b/pkgs/development/tools/electron/common.nix
@@ -49,7 +49,7 @@ in (chromium.override { upstream-info = info.chromium; }).mkDerivation (base: {
 
   src = null;
 
-  patches = base.patches ++ lib.optional (lib.versionAtLeast info.version "29")
+  patches = base.patches ++ lib.optional (lib.versionAtLeast info.version "29" && lib.versionOlder info.version "30")
     (substituteAll {
       # disable a component that requires CIPD blobs
       name = "disable-screen-ai.patch";
diff --git a/pkgs/development/tools/electron/info.json b/pkgs/development/tools/electron/info.json
index 0304f0bbec43..8eeb05107c83 100644
--- a/pkgs/development/tools/electron/info.json
+++ b/pkgs/development/tools/electron/info.json
@@ -1,2631 +1,3257 @@
 {
-    "28": {
-        "deps": {
-            "src/electron": {
-                "fetcher": "fetchFromGitHub",
-                "hash": "sha256-Y0uNoq5LhlFMxQfqrTjzOokbB7Y6UUAlBCj+Nghiz5w=",
-                "owner": "electron",
-                "repo": "electron",
-                "rev": "v28.3.1"
+    "27": {
+        "chrome": "118.0.5993.159",
+        "chromium": {
+            "deps": {
+                "gn": {
+                    "hash": "sha256-SwlET5h5xtDlQvlt8wbG73ZfUWJr4hlWc+uQsBH5x9M=",
+                    "rev": "cc56a0f98bb34accd5323316e0292575ff17a5d4",
+                    "url": "https://gn.googlesource.com/gn",
+                    "version": "2023-08-10"
+                }
             },
+            "version": "118.0.5993.159"
+        },
+        "chromium_npm_hash": "sha256-5cjqpYB45nw2gop54VP+tL7/0w63nQGfQ4x6a6KS7XQ=",
+        "deps": {
             "src": {
                 "fetcher": "fetchFromGitiles",
-                "hash": "sha256-g0aRiWCPrXPKBsOsAgtLmRbOeYigtm05MrWH6/fhQs0=",
-                "url": "https://chromium.googlesource.com/chromium/src.git",
-                "rev": "120.0.6099.291",
-                "postFetch": "rm -r $out/third_party/blink/web_tests; rm -r $out/third_party/hunspell/tests; rm -r $out/content/test/data; rm -r $out/courgette/testdata; rm -r $out/extensions/test/data; rm -r $out/media/test/data; "
-            },
-            "src/third_party/clang-format/script": {
-                "fetcher": "fetchFromGitiles",
-                "hash": "sha256-7VvofDDQe+SoMRBfVk26q+C+OPyOE7QH35wVWkfDKxs=",
-                "url": "https://chromium.googlesource.com/external/github.com/llvm/llvm-project/clang/tools/clang-format.git",
-                "rev": "e5337933f2951cacd3aeacd238ce4578163ca0b9"
-            },
-            "src/third_party/libc++/src": {
-                "fetcher": "fetchFromGitiles",
-                "hash": "sha256-DVO15xGxatRbUp13EoNslGEZ2QSHn97VbEBHyfMvKfQ=",
-                "url": "https://chromium.googlesource.com/external/github.com/llvm/llvm-project/libcxx.git",
-                "rev": "a429c26ae25c26a569ff12390d5f9be70c5e286b"
-            },
-            "src/third_party/libc++abi/src": {
-                "fetcher": "fetchFromGitiles",
-                "hash": "sha256-QjCPRgFU34wZ8GG/dl+6wi2gflje3fG/x+eokb9W02c=",
-                "url": "https://chromium.googlesource.com/external/github.com/llvm/llvm-project/libcxxabi.git",
-                "rev": "2ca9f38714b1465b9f55b5fbd0da5e4342811e2b"
-            },
-            "src/third_party/libunwind/src": {
-                "fetcher": "fetchFromGitiles",
-                "hash": "sha256-bQHo8CKDpqvJcVv6OzVO7LOGTqL9qHqD4n9TtRK0v5g=",
-                "url": "https://chromium.googlesource.com/external/github.com/llvm/llvm-project/libunwind.git",
-                "rev": "7686b5d38c69d14932abfb1c1a66ba56c78791ad"
+                "hash": "sha256-3yFHjd3LMXVbF4LX6Bi3yJF0CDVug0cDpGFbP8Ibvk4=",
+                "postFetch": "rm -r $out/third_party/blink/web_tests; rm -r $out/third_party/hunspell/tests; rm -r $out/content/test/data; rm -r $out/courgette/testdata; rm -r $out/extensions/test/data; rm -r $out/media/test/data; ",
+                "rev": "118.0.5993.159",
+                "url": "https://chromium.googlesource.com/chromium/src.git"
             },
             "src/chrome/test/data/perf/canvas_bench": {
                 "fetcher": "fetchFromGitiles",
                 "hash": "sha256-svOuyBGKloBLM11xLlWCDsB4PpRjdKTBdW2UEW4JQjM=",
-                "url": "https://chromium.googlesource.com/chromium/canvas_bench.git",
-                "rev": "a7b40ea5ae0239517d78845a5fc9b12976bfc732"
+                "rev": "a7b40ea5ae0239517d78845a5fc9b12976bfc732",
+                "url": "https://chromium.googlesource.com/chromium/canvas_bench.git"
             },
             "src/chrome/test/data/perf/frame_rate/content": {
                 "fetcher": "fetchFromGitiles",
                 "hash": "sha256-t4kcuvH0rkPBkcdiMsoNQaRwU09eU+oSvyHDiAHrKXo=",
-                "url": "https://chromium.googlesource.com/chromium/frame_rate/content.git",
-                "rev": "c10272c88463efeef6bb19c9ec07c42bc8fe22b9"
+                "rev": "c10272c88463efeef6bb19c9ec07c42bc8fe22b9",
+                "url": "https://chromium.googlesource.com/chromium/frame_rate/content.git"
             },
             "src/chrome/test/data/xr/webvr_info": {
                 "fetcher": "fetchFromGitiles",
                 "hash": "sha256-BsAPwc4oEWri0TlqhyxqFNqKdfgVSrB0vQyISmYY4eg=",
-                "url": "https://chromium.googlesource.com/external/github.com/toji/webvr.info.git",
-                "rev": "c58ae99b9ff9e2aa4c524633519570bf33536248"
+                "rev": "c58ae99b9ff9e2aa4c524633519570bf33536248",
+                "url": "https://chromium.googlesource.com/external/github.com/toji/webvr.info.git"
             },
             "src/docs/website": {
                 "fetcher": "fetchFromGitiles",
-                "hash": "sha256-+UawYfW5FAMpv0TbzSR8qITPGUQulLIZ0mUh6ZdnmMI=",
-                "url": "https://chromium.googlesource.com/website.git",
-                "rev": "07714da3c28b942dc8522affed4487403e971545"
+                "hash": "sha256-6/LSJGUVZuJe1WIBJEJO/dXZYnsby+X3EzeBbvWjUZU=",
+                "rev": "243c1406199960e001e1dceccafc6fc2db6897f9",
+                "url": "https://chromium.googlesource.com/website.git"
+            },
+            "src/electron": {
+                "fetcher": "fetchFromGitHub",
+                "hash": "sha256-DmDAKUUyiDASGGylDVQe2OkDVfiA1ficDG+oaMbKqdo=",
+                "owner": "electron",
+                "repo": "electron",
+                "rev": "v27.3.11"
             },
             "src/media/cdm/api": {
                 "fetcher": "fetchFromGitiles",
                 "hash": "sha256-6J6aSYW0or99VAgMNJJOdJqMJspoG7w1HxDN50MV5bw=",
-                "url": "https://chromium.googlesource.com/chromium/cdm.git",
-                "rev": "fef0b5aa1bd31efb88dfab804bdbe614f3d54f28"
+                "rev": "fef0b5aa1bd31efb88dfab804bdbe614f3d54f28",
+                "url": "https://chromium.googlesource.com/chromium/cdm.git"
             },
             "src/net/third_party/quiche/src": {
                 "fetcher": "fetchFromGitiles",
-                "hash": "sha256-JXWGEsJrXRXs2BrkWIC8cUBD6uvt8ftb9V5Dy2yLc/w=",
-                "url": "https://quiche.googlesource.com/quiche.git",
-                "rev": "a01a131ca6df63e774809d623f47e8cf28c574cc"
+                "hash": "sha256-hB3gUqi/9SI9PGNkXNpli/TifI1kJEBScqRFIw7hm4c=",
+                "rev": "7d201495d8a5ef115787765fb12af0d5575281c1",
+                "url": "https://quiche.googlesource.com/quiche.git"
             },
             "src/third_party/angle": {
                 "fetcher": "fetchFromGitiles",
-                "hash": "sha256-aOV7kxrF8FeoHYodZjaUrDDUtpXg2gUiZg6Olv90puk=",
-                "url": "https://chromium.googlesource.com/angle/angle.git",
-                "rev": "6fff8ebc937f07e31473ac014a55f662248ab39a"
+                "hash": "sha256-It05E3+qG17dEbhbaX/VQJaydWOQ1mpsj95dT5IJkgo=",
+                "rev": "05f45adc147393562b518ca1f82a3ccba7ee40f7",
+                "url": "https://chromium.googlesource.com/angle/angle.git"
+            },
+            "src/third_party/angle/third_party/VK-GL-CTS/src": {
+                "fetcher": "fetchFromGitiles",
+                "hash": "sha256-LWGll3KiMYndiLZBizhN+mzELjYpSxvtIctH+LO+20Q=",
+                "rev": "385ae8bed1f99e497cdf2f3a5640905b90e69292",
+                "url": "https://chromium.googlesource.com/external/github.com/KhronosGroup/VK-GL-CTS"
             },
             "src/third_party/angle/third_party/glmark2/src": {
                 "fetcher": "fetchFromGitiles",
                 "hash": "sha256-L7+zWM0qn8WFhmON7DGvarTsN1YHt1sn5+hazTOZrrk=",
-                "url": "https://chromium.googlesource.com/external/github.com/glmark2/glmark2",
-                "rev": "ca8de51fedb70bace5351c6b002eb952c747e889"
+                "rev": "ca8de51fedb70bace5351c6b002eb952c747e889",
+                "url": "https://chromium.googlesource.com/external/github.com/glmark2/glmark2"
             },
             "src/third_party/angle/third_party/rapidjson/src": {
                 "fetcher": "fetchFromGitiles",
                 "hash": "sha256-btUl1a/B0sXwf/+hyvCvVJjWqIkXfVYCpHm3TeBuOxk=",
-                "url": "https://chromium.googlesource.com/external/github.com/Tencent/rapidjson",
-                "rev": "781a4e667d84aeedbeb8184b7b62425ea66ec59f"
-            },
-            "src/third_party/angle/third_party/VK-GL-CTS/src": {
-                "fetcher": "fetchFromGitiles",
-                "hash": "sha256-+g1yjF1yETrL1X6Cxu5mhPWXukWygg1dnawU8S9cGkA=",
-                "url": "https://chromium.googlesource.com/external/github.com/KhronosGroup/VK-GL-CTS",
-                "rev": "7d738783bf286e82937e431c295d4682f3767267"
+                "rev": "781a4e667d84aeedbeb8184b7b62425ea66ec59f",
+                "url": "https://chromium.googlesource.com/external/github.com/Tencent/rapidjson"
             },
             "src/third_party/anonymous_tokens/src": {
                 "fetcher": "fetchFromGitiles",
-                "hash": "sha256-2B0j9vNF8nMhmedk+ghz4JJJiDKN6jnVfdqsa4zRWeU=",
-                "url": "https://chromium.googlesource.com/external/github.com/google/anonymous-tokens.git",
-                "rev": "47d423347823088a21b26262ca553eadb8e5b220"
-            },
-            "src/third_party/content_analysis_sdk/src": {
-                "fetcher": "fetchFromGitiles",
-                "hash": "sha256-f5Jmk1MiGjaRdLun+v/GKVl8Yv9hOZMTQUSxgiJalcY=",
-                "url": "https://chromium.googlesource.com/external/github.com/chromium/content_analysis_sdk.git",
-                "rev": "9a408736204513e0e95dd2ab3c08de0d95963efc"
-            },
-            "src/third_party/dav1d/libdav1d": {
-                "fetcher": "fetchFromGitiles",
-                "hash": "sha256-9SrbxiOqXKTFf4qZ4Wqg9aoOMY8zv7NczTqN2+lXwCI=",
-                "url": "https://chromium.googlesource.com/external/github.com/videolan/dav1d.git",
-                "rev": "47107e384bd1dc25674acf04d000a8cdc6195234"
-            },
-            "src/third_party/dawn": {
-                "fetcher": "fetchFromGitiles",
-                "hash": "sha256-5srmcwL9Zqv91LwoBf9xuyusq1ghDo30Aj27Xo96yPc=",
-                "url": "https://dawn.googlesource.com/dawn.git",
-                "rev": "c7ed440d75861649d8a1ef4b775384f31211d902"
-            },
-            "src/third_party/dawn/third_party/glfw": {
-                "fetcher": "fetchFromGitiles",
-                "hash": "sha256-TwAPRjQxIz3J+zbNxzCp5Tek7MwisxdekMpY5QGsKyg=",
-                "url": "https://chromium.googlesource.com/external/github.com/glfw/glfw",
-                "rev": "62e175ef9fae75335575964c845a302447c012c7"
-            },
-            "src/third_party/dawn/third_party/dxc": {
-                "fetcher": "fetchFromGitiles",
-                "hash": "sha256-EAfTm0QZcihcU6ufBHE1QsYRggNWNKHjVZXcrUp/T+c=",
-                "url": "https://chromium.googlesource.com/external/github.com/microsoft/DirectXShaderCompiler",
-                "rev": "64030a4e01e27c608b6c5f1ab5add43575e086f9"
-            },
-            "src/third_party/dawn/third_party/dxheaders": {
-                "fetcher": "fetchFromGitiles",
-                "hash": "sha256-0Miw1Cy/jmOo7bLFBOHuTRDV04cSeyvUEyPkpVsX9DA=",
-                "url": "https://chromium.googlesource.com/external/github.com/microsoft/DirectX-Headers",
-                "rev": "980971e835876dc0cde415e8f9bc646e64667bf7"
-            },
-            "src/third_party/dawn/third_party/khronos/OpenGL-Registry": {
-                "fetcher": "fetchFromGitiles",
-                "hash": "sha256-K3PcRIiD3AmnbiSm5TwaLs4Gu9hxaN8Y91WMKK8pOXE=",
-                "url": "https://chromium.googlesource.com/external/github.com/KhronosGroup/OpenGL-Registry",
-                "rev": "5bae8738b23d06968e7c3a41308568120943ae77"
-            },
-            "src/third_party/dawn/third_party/khronos/EGL-Registry": {
-                "fetcher": "fetchFromGitiles",
-                "hash": "sha256-Z6DwLfgQ1wsJXz0KKJyVieOatnDmx3cs0qJ6IEgSq1A=",
-                "url": "https://chromium.googlesource.com/external/github.com/KhronosGroup/EGL-Registry",
-                "rev": "7dea2ed79187cd13f76183c4b9100159b9e3e071"
-            },
-            "src/third_party/dawn/third_party/webgpu-cts": {
-                "fetcher": "fetchFromGitiles",
-                "hash": "sha256-DqQIyZU6kYYRoouIiJnJBit8l38wPu08zbJhM2BQbs4=",
-                "url": "https://chromium.googlesource.com/external/github.com/gpuweb/cts",
-                "rev": "2ef3f322027bec1bb5572f5083d478148d355d79"
-            },
-            "src/third_party/highway/src": {
-                "fetcher": "fetchFromGitiles",
-                "hash": "sha256-kNb9UVcFq2BIf9nftUgN8ciFFCzRCou/sLwVf08jf3E=",
-                "url": "https://chromium.googlesource.com/external/github.com/google/highway.git",
-                "rev": "8f20644eca693cfb74aa795b0006b6779c370e7a"
+                "hash": "sha256-TcNIocV0p53NJCudvy8wf+fIPIP2tnkoBf1F7mEBFLs=",
+                "rev": "8c8d20953d502db31fec2353b199e6c22ef0236e",
+                "url": "https://chromium.googlesource.com/external/github.com/google/anonymous-tokens.git"
             },
-            "src/third_party/google_benchmark/src": {
+            "src/third_party/beto-core/src": {
                 "fetcher": "fetchFromGitiles",
-                "hash": "sha256-h2ryAQAuHI54Cni88L85e7Np4KATGVTRdDcmUvCNeWc=",
-                "url": "https://chromium.googlesource.com/external/github.com/google/benchmark.git",
-                "rev": "b177433f3ee2513b1075140c723d73ab8901790f"
+                "hash": "sha256-qgsPK7RyVqGRji0sTcMck1JqX9iCsYIExGoGwNZyVT0=",
+                "rev": "b902b346037ea3f4aadf8177021f6f917b16e648",
+                "url": "https://beto-core.googlesource.com/beto-core.git"
             },
             "src/third_party/boringssl/src": {
                 "fetcher": "fetchFromGitiles",
-                "hash": "sha256-hxPNJzWS2f4iUsNYwRvxiTL9vRrcZzZT5KpIx3+WuGM=",
-                "url": "https://boringssl.googlesource.com/boringssl.git",
-                "rev": "c38dc29860a72540eb2c4fdb8a8bfb27ef94ddf3"
+                "hash": "sha256-P0Aj2Puy6S1aRIHrAhmokiAmSmHfuWQR6UW/AbQFW+M=",
+                "rev": "85081c6b3c0b26129893c1bff6bfa42bc3ba2d2c",
+                "url": "https://boringssl.googlesource.com/boringssl.git"
             },
             "src/third_party/breakpad/breakpad": {
                 "fetcher": "fetchFromGitiles",
                 "hash": "sha256-8AkC/8oX4OWAcV21laJ0AeMRB9G04rFc6UJFy7Wus4A=",
-                "url": "https://chromium.googlesource.com/breakpad/breakpad.git",
-                "rev": "8988364bcddd9b194b0bf931c10bc125987330ed"
+                "rev": "8988364bcddd9b194b0bf931c10bc125987330ed",
+                "url": "https://chromium.googlesource.com/breakpad/breakpad.git"
             },
             "src/third_party/cast_core/public/src": {
                 "fetcher": "fetchFromGitiles",
                 "hash": "sha256-AalRQhJmornCqmvE2+36J/3LubaA0jr6P1PXy32lX4I=",
-                "url": "https://chromium.googlesource.com/cast_core/public",
-                "rev": "71f51fd6fa45fac73848f65421081edd723297cd"
+                "rev": "71f51fd6fa45fac73848f65421081edd723297cd",
+                "url": "https://chromium.googlesource.com/cast_core/public"
             },
             "src/third_party/catapult": {
                 "fetcher": "fetchFromGitiles",
-                "hash": "sha256-jueHC5YC+WmGRtGZ8yD6QT2pVj21n1THpIz/vI9M334=",
-                "url": "https://chromium.googlesource.com/catapult.git",
-                "rev": "47efdb4b1428e549c58a6d6c2fa79c4a8ceaf9b4"
+                "hash": "sha256-AK85yVeCR3GKGtdW8G9Of+6UMJirJ9BNVyp9pffft7s=",
+                "rev": "f16ca3c78e46cefa982100444844da3fcb25390e",
+                "url": "https://chromium.googlesource.com/catapult.git"
             },
             "src/third_party/ced/src": {
                 "fetcher": "fetchFromGitiles",
                 "hash": "sha256-ySG74Rj2i2c/PltEgHVEDq+N8yd9gZmxNktc56zIUiY=",
-                "url": "https://chromium.googlesource.com/external/github.com/google/compact_enc_det.git",
-                "rev": "ba412eaaacd3186085babcd901679a48863c7dd5"
+                "rev": "ba412eaaacd3186085babcd901679a48863c7dd5",
+                "url": "https://chromium.googlesource.com/external/github.com/google/compact_enc_det.git"
             },
             "src/third_party/chromium-variations": {
                 "fetcher": "fetchFromGitiles",
-                "hash": "sha256-cRFzDmGoyrxwPDVvatGm3EutOXtWqqlI7v7BeX5d43s=",
-                "url": "https://chromium.googlesource.com/chromium-variations.git",
-                "rev": "cb7fe7e32de8b885ccdd6293444d8e4028b03eca"
+                "hash": "sha256-2lP3uGdqIZY3DpxGzfDhR2dW+o3Arduaeu56Au7h/5Q=",
+                "rev": "e0c145ca93c0439a65bcb1607e813edfbc97520b",
+                "url": "https://chromium.googlesource.com/chromium-variations.git"
+            },
+            "src/third_party/clang-format/script": {
+                "fetcher": "fetchFromGitiles",
+                "hash": "sha256-7VvofDDQe+SoMRBfVk26q+C+OPyOE7QH35wVWkfDKxs=",
+                "rev": "e5337933f2951cacd3aeacd238ce4578163ca0b9",
+                "url": "https://chromium.googlesource.com/external/github.com/llvm/llvm-project/clang/tools/clang-format.git"
             },
             "src/third_party/cld_3/src": {
                 "fetcher": "fetchFromGitiles",
                 "hash": "sha256-C3MOMBUy9jgkT9BAi/Fgm2UH4cxRuwSBEcRl3hzM2Ss=",
-                "url": "https://chromium.googlesource.com/external/github.com/google/cld_3.git",
-                "rev": "b48dc46512566f5a2d41118c8c1116c4f96dc661"
+                "rev": "b48dc46512566f5a2d41118c8c1116c4f96dc661",
+                "url": "https://chromium.googlesource.com/external/github.com/google/cld_3.git"
             },
             "src/third_party/colorama/src": {
                 "fetcher": "fetchFromGitiles",
                 "hash": "sha256-6ZTdPYSHdQOLYMSnE+Tp7PgsVTs3U2awGu9Qb4Rg/tk=",
-                "url": "https://chromium.googlesource.com/external/colorama.git",
-                "rev": "3de9f013df4b470069d03d250224062e8cf15c49"
+                "rev": "3de9f013df4b470069d03d250224062e8cf15c49",
+                "url": "https://chromium.googlesource.com/external/colorama.git"
+            },
+            "src/third_party/content_analysis_sdk/src": {
+                "fetcher": "fetchFromGitiles",
+                "hash": "sha256-auHBX00DSvyMyhEsZGkpKh9KOO2RcaeP9PK6kmmMYls=",
+                "rev": "8d5118720805fdce0dd3ee2999c964501de4532c",
+                "url": "https://chromium.googlesource.com/external/github.com/chromium/content_analysis_sdk.git"
             },
             "src/third_party/cpu_features/src": {
                 "fetcher": "fetchFromGitiles",
                 "hash": "sha256-E8LoVzhe+TAmARWZTSuINlsVhzpUJMxPPCGe/dHZcyA=",
-                "url": "https://chromium.googlesource.com/external/github.com/google/cpu_features.git",
-                "rev": "936b9ab5515dead115606559502e3864958f7f6e"
+                "rev": "936b9ab5515dead115606559502e3864958f7f6e",
+                "url": "https://chromium.googlesource.com/external/github.com/google/cpu_features.git"
             },
             "src/third_party/cpuinfo/src": {
                 "fetcher": "fetchFromGitiles",
-                "hash": "sha256-BcSG/1aa/cyT8CCd1Qdsm/yXa5bCrmrtaRxnYjwkspY=",
-                "url": "https://chromium.googlesource.com/external/github.com/pytorch/cpuinfo.git",
-                "rev": "76d5e8f5b563daa65340a60fce0e9aec73a936df"
+                "hash": "sha256-oZjA2cMQMyhFcI+m6eOmdZ9A1oPAbyISeLxNyaoGivk=",
+                "rev": "c13d0bbb266d200a13532b5915d704c30d21081b",
+                "url": "https://chromium.googlesource.com/external/github.com/pytorch/cpuinfo.git"
             },
             "src/third_party/crc32c/src": {
                 "fetcher": "fetchFromGitiles",
                 "hash": "sha256-urg0bmnfMfHagLPELp4WrNCz1gBZ6DFOWpDue1KsMtc=",
-                "url": "https://chromium.googlesource.com/external/github.com/google/crc32c.git",
-                "rev": "fa5ade41ee480003d9c5af6f43567ba22e4e17e6"
+                "rev": "fa5ade41ee480003d9c5af6f43567ba22e4e17e6",
+                "url": "https://chromium.googlesource.com/external/github.com/google/crc32c.git"
+            },
+            "src/third_party/cros-components/src": {
+                "fetcher": "fetchFromGitiles",
+                "hash": "sha256-s8pfcu5SkxXFCat76TJaDi1NTTQckZ1F+T8URCxOUdI=",
+                "rev": "bf7aaccb73b26c11e8bf21cb7d90314338e1743f",
+                "url": "https://chromium.googlesource.com/external/google3/cros_components.git"
             },
             "src/third_party/cros_system_api": {
                 "fetcher": "fetchFromGitiles",
-                "hash": "sha256-wI4rx+oQ6i8yIB8NBp/O471O4pVJL3l+ez0t8I5oD/w=",
-                "url": "https://chromium.googlesource.com/chromiumos/platform2/system_api.git",
-                "rev": "00c21541508ea2c6863f1cda24ef88ef30309ae8"
+                "hash": "sha256-wq7fJVNRSiyaADrCYB0TEmWQ//BJg4GYiHZNtMb1QlI=",
+                "rev": "81ac4449008dffea00e4e8f251f87fabc5abe0d3",
+                "url": "https://chromium.googlesource.com/chromiumos/platform2/system_api.git"
             },
             "src/third_party/crossbench": {
                 "fetcher": "fetchFromGitiles",
                 "hash": "sha256-s/+y5bMj+CRnljFZ5aWKirPCsRUjckLOZ5F65WnPYSY=",
-                "url": "https://chromium.googlesource.com/crossbench.git",
-                "rev": "06981428c28d66678ebec13ca1fac3785cf51bb1"
+                "rev": "06981428c28d66678ebec13ca1fac3785cf51bb1",
+                "url": "https://chromium.googlesource.com/crossbench.git"
+            },
+            "src/third_party/dav1d/libdav1d": {
+                "fetcher": "fetchFromGitiles",
+                "hash": "sha256-KSo2s3M3S13gY84NlAdnPsjoKfJZy7ipTlWSvUHD9Ak=",
+                "rev": "f8ae94eca0f53502a2cddd29a263c1edea4822a0",
+                "url": "https://chromium.googlesource.com/external/github.com/videolan/dav1d.git"
+            },
+            "src/third_party/dawn": {
+                "fetcher": "fetchFromGitiles",
+                "hash": "sha256-7iCJ1h51S/8pxQRMoDtGXzyuP6Dzxnc/1Cu4ALU8NYg=",
+                "rev": "deb3b674b26854204c8082ed93926207e42d3cf2",
+                "url": "https://dawn.googlesource.com/dawn.git"
+            },
+            "src/third_party/dawn/third_party/dxc": {
+                "fetcher": "fetchFromGitiles",
+                "hash": "sha256-u29t+pF7aRfhRmi36YyEPcQU7gIDqsjrf38+C0YIpFk=",
+                "rev": "50c4c887f1ccfa1a4bfb158b7dbc93058659ed01",
+                "url": "https://chromium.googlesource.com/external/github.com/microsoft/DirectXShaderCompiler"
+            },
+            "src/third_party/dawn/third_party/dxheaders": {
+                "fetcher": "fetchFromGitiles",
+                "hash": "sha256-0Miw1Cy/jmOo7bLFBOHuTRDV04cSeyvUEyPkpVsX9DA=",
+                "rev": "980971e835876dc0cde415e8f9bc646e64667bf7",
+                "url": "https://chromium.googlesource.com/external/github.com/microsoft/DirectX-Headers"
+            },
+            "src/third_party/dawn/third_party/glfw": {
+                "fetcher": "fetchFromGitiles",
+                "hash": "sha256-TwAPRjQxIz3J+zbNxzCp5Tek7MwisxdekMpY5QGsKyg=",
+                "rev": "62e175ef9fae75335575964c845a302447c012c7",
+                "url": "https://chromium.googlesource.com/external/github.com/glfw/glfw"
+            },
+            "src/third_party/dawn/third_party/khronos/EGL-Registry": {
+                "fetcher": "fetchFromGitiles",
+                "hash": "sha256-Z6DwLfgQ1wsJXz0KKJyVieOatnDmx3cs0qJ6IEgSq1A=",
+                "rev": "7dea2ed79187cd13f76183c4b9100159b9e3e071",
+                "url": "https://chromium.googlesource.com/external/github.com/KhronosGroup/EGL-Registry"
+            },
+            "src/third_party/dawn/third_party/khronos/OpenGL-Registry": {
+                "fetcher": "fetchFromGitiles",
+                "hash": "sha256-K3PcRIiD3AmnbiSm5TwaLs4Gu9hxaN8Y91WMKK8pOXE=",
+                "rev": "5bae8738b23d06968e7c3a41308568120943ae77",
+                "url": "https://chromium.googlesource.com/external/github.com/KhronosGroup/OpenGL-Registry"
+            },
+            "src/third_party/dawn/third_party/webgpu-cts": {
+                "fetcher": "fetchFromGitiles",
+                "hash": "sha256-gbZpmcbqLisjLb6vnKKvHS6eRqjqvavvTRgxJsaE/RQ=",
+                "rev": "5dfa3b88f0863c3949f713804e0461c9cc34a030",
+                "url": "https://chromium.googlesource.com/external/github.com/gpuweb/cts"
             },
             "src/third_party/depot_tools": {
                 "fetcher": "fetchFromGitiles",
-                "hash": "sha256-WtosDcMOV9eh0PhTbB5w3x3AYQs3Ui4h3mV0Ib0CBlc=",
-                "url": "https://chromium.googlesource.com/chromium/tools/depot_tools.git",
-                "rev": "9f3b33a275e7a5b19d8ce4aba7960d2a38858681"
+                "hash": "sha256-EXxlQGA7qwjuZ2Qg/rZinkllkdfCbKXz8c4JJEr4mtU=",
+                "rev": "7e251262409b3401809e57c5314dd158210355b8",
+                "url": "https://chromium.googlesource.com/chromium/tools/depot_tools.git"
             },
             "src/third_party/devtools-frontend/src": {
                 "fetcher": "fetchFromGitiles",
-                "hash": "sha256-B/2Qk5LSElBPNImlZHVF3A4g0GFE9OHG/+4QADpK+8w=",
-                "url": "https://chromium.googlesource.com/devtools/devtools-frontend",
-                "rev": "a6c7f00333881a7ecf7044b725052ab0c8776d6f"
+                "hash": "sha256-D3W8U19i5pHWPLviMKbpzhiDoF6A0+tClYJcZWdbTqk=",
+                "rev": "bcf0ed097be848d234fb5290c1e4d69672dc5405",
+                "url": "https://chromium.googlesource.com/devtools/devtools-frontend"
             },
             "src/third_party/dom_distiller_js/dist": {
                 "fetcher": "fetchFromGitiles",
                 "hash": "sha256-yuEBD2XQlV3FGI/i7lTmJbCqzeBiuG1Qow8wvsppGJw=",
-                "url": "https://chromium.googlesource.com/chromium/dom-distiller/dist.git",
-                "rev": "199de96b345ada7c6e7e6ba3d2fa7a6911b8767d"
+                "rev": "199de96b345ada7c6e7e6ba3d2fa7a6911b8767d",
+                "url": "https://chromium.googlesource.com/chromium/dom-distiller/dist.git"
             },
             "src/third_party/eigen3/src": {
                 "fetcher": "fetchFromGitiles",
-                "hash": "sha256-mfS/l+V0If3fmXvA1p5gtyrNCU6IqWYrBbzm4jkXC3I=",
-                "url": "https://chromium.googlesource.com/external/gitlab.com/libeigen/eigen.git",
-                "rev": "aa6964bf3a34fd607837dd8123bc42465185c4f8"
+                "hash": "sha256-c/4bf5+sJEgsKOJ34wPDNm1+6QUzETZZr/nE4SG5nKA=",
+                "rev": "66e8f38891841bf88ee976a316c0c78a52f0cee5",
+                "url": "https://chromium.googlesource.com/external/gitlab.com/libeigen/eigen.git"
+            },
+            "src/third_party/electron_node": {
+                "fetcher": "fetchFromGitHub",
+                "hash": "sha256-SI4qIix+sXWIS3WJyJoTdPb1cmSIhpLAmfa9iX/5Jlg=",
+                "owner": "nodejs",
+                "repo": "node",
+                "rev": "v18.17.1"
+            },
+            "src/third_party/emoji-segmenter/src": {
+                "fetcher": "fetchFromGitiles",
+                "hash": "sha256-oT9mAKoKnrsFsBAeTRfPOXM76HRQQabFAlPpfKUGFhs=",
+                "rev": "9ba6d25d0d9313569665d4a9d2b34f0f39f9a50e",
+                "url": "https://chromium.googlesource.com/external/github.com/google/emoji-segmenter.git"
+            },
+            "src/third_party/expat/src": {
+                "fetcher": "fetchFromGitiles",
+                "hash": "sha256-FXTDGAK03jc2wvazhRKqtsFRKZUYS/9HLpZNp4JfZJI=",
+                "rev": "441f98d02deafd9b090aea568282b28f66a50e36",
+                "url": "https://chromium.googlesource.com/external/github.com/libexpat/libexpat.git"
             },
             "src/third_party/farmhash/src": {
                 "fetcher": "fetchFromGitiles",
                 "hash": "sha256-5n58VEUxa/K//jAfZqG4cXyfxrp50ogWDNYcgiXVHdc=",
-                "url": "https://chromium.googlesource.com/external/github.com/google/farmhash.git",
-                "rev": "816a4ae622e964763ca0862d9dbd19324a1eaf45"
+                "rev": "816a4ae622e964763ca0862d9dbd19324a1eaf45",
+                "url": "https://chromium.googlesource.com/external/github.com/google/farmhash.git"
             },
             "src/third_party/ffmpeg": {
                 "fetcher": "fetchFromGitiles",
-                "hash": "sha256-lomUDmbbYW95BHEuYmm0pVqf++nYEa2XxeW4ag36tgc=",
-                "url": "https://chromium.googlesource.com/chromium/third_party/ffmpeg.git",
-                "rev": "e1ca3f06adec15150a171bc38f550058b4bbb23b"
+                "hash": "sha256-uRgHTVaCAEaoqY20SmePQbApPmjimgggm5922KKfnbc=",
+                "rev": "0ba37733400593b162e5ae9ff26b384cff49c250",
+                "url": "https://chromium.googlesource.com/chromium/third_party/ffmpeg.git"
             },
             "src/third_party/flac": {
                 "fetcher": "fetchFromGitiles",
                 "hash": "sha256-gvTFPNOlBfozptaH7lTb9iD/09AmpdT3kCl9ClszjEs=",
-                "url": "https://chromium.googlesource.com/chromium/deps/flac.git",
-                "rev": "689da3a7ed50af7448c3f1961d1791c7c1d9c85c"
+                "rev": "689da3a7ed50af7448c3f1961d1791c7c1d9c85c",
+                "url": "https://chromium.googlesource.com/chromium/deps/flac.git"
             },
             "src/third_party/flatbuffers/src": {
                 "fetcher": "fetchFromGitiles",
-                "hash": "sha256-LecJwLDG6szZZ/UOCFD+MDqH3NKawn0sdEwgnMt8wMM=",
-                "url": "https://chromium.googlesource.com/external/github.com/google/flatbuffers.git",
-                "rev": "bcb9ef187628fe07514e57756d05e6a6296f7dc5"
+                "hash": "sha256-yibx1WMAwNajROMGVqox3naMU09RSayxUaTCJ860euo=",
+                "rev": "28861d1d7d5ec6ce34d4bbdc10bec4aace341167",
+                "url": "https://chromium.googlesource.com/external/github.com/google/flatbuffers.git"
             },
             "src/third_party/fontconfig/src": {
                 "fetcher": "fetchFromGitiles",
                 "hash": "sha256-7PFmgr/+KNEYxCMuxMD2Zi9Ydcbp88IU7exr55a392Q=",
-                "url": "https://chromium.googlesource.com/external/fontconfig.git",
-                "rev": "2fb3419a92156569bc1ec707401258c922cd0d99"
+                "rev": "2fb3419a92156569bc1ec707401258c922cd0d99",
+                "url": "https://chromium.googlesource.com/external/fontconfig.git"
             },
             "src/third_party/fp16/src": {
                 "fetcher": "fetchFromGitiles",
                 "hash": "sha256-m2d9bqZoGWzuUPGkd29MsrdscnJRtuIkLIMp3fMmtRY=",
-                "url": "https://chromium.googlesource.com/external/github.com/Maratyszcza/FP16.git",
-                "rev": "0a92994d729ff76a58f692d3028ca1b64b145d91"
-            },
-            "src/third_party/gemmlowp/src": {
-                "fetcher": "fetchFromGitiles",
-                "hash": "sha256-O5wD8wxgis0qYMaY+xZ21GBDVQFphMRvInCOswS6inA=",
-                "url": "https://chromium.googlesource.com/external/github.com/google/gemmlowp.git",
-                "rev": "13d57703abca3005d97b19df1f2db731607a7dc2"
+                "rev": "0a92994d729ff76a58f692d3028ca1b64b145d91",
+                "url": "https://chromium.googlesource.com/external/github.com/Maratyszcza/FP16.git"
             },
-            "src/third_party/grpc/src": {
+            "src/third_party/freetype-testing/src": {
                 "fetcher": "fetchFromGitiles",
-                "hash": "sha256-64JEVCx/PCM0dvv7kAQvSjLc0QbRAZVBDzwD/FAV6T8=",
-                "url": "https://chromium.googlesource.com/external/github.com/grpc/grpc.git",
-                "rev": "822dab21d9995c5cf942476b35ca12a1aa9d2737"
+                "hash": "sha256-2aHPchIK5Oce5+XxdXVCC+8EM6i0XT0rFbjSIVa2L1A=",
+                "rev": "7a69b1a2b028476f840ab7d4a2ffdfe4eb2c389f",
+                "url": "https://chromium.googlesource.com/external/github.com/freetype/freetype2-testing.git"
             },
             "src/third_party/freetype/src": {
                 "fetcher": "fetchFromGitiles",
-                "hash": "sha256-wyaCNPPL2CTZYY6YUUuGnN3TjHxgKeHAYsw+r88ijMI=",
-                "url": "https://chromium.googlesource.com/chromium/src/third_party/freetype2.git",
-                "rev": "55d0287cfc31115760cb13caa346b407ef0c0ceb"
+                "hash": "sha256-RRieGqEeAk5AYzJqPRpF25FmxMpEYwR7AQWLzXkED50=",
+                "rev": "45903920b984540bb629bc89f4c010159c23a89a",
+                "url": "https://chromium.googlesource.com/chromium/src/third_party/freetype2.git"
             },
-            "src/third_party/freetype-testing/src": {
+            "src/third_party/fuzztest/src": {
                 "fetcher": "fetchFromGitiles",
-                "hash": "sha256-2aHPchIK5Oce5+XxdXVCC+8EM6i0XT0rFbjSIVa2L1A=",
-                "url": "https://chromium.googlesource.com/external/github.com/freetype/freetype2-testing.git",
-                "rev": "7a69b1a2b028476f840ab7d4a2ffdfe4eb2c389f"
+                "hash": "sha256-tVtrSbLxnHrbh027cafNbqkfjq/afQxw57rW9yGsRe0=",
+                "rev": "25f44f341f701eccc29d22f69313a54363c6099b",
+                "url": "https://chromium.googlesource.com/external/github.com/google/fuzztest.git"
             },
             "src/third_party/fxdiv/src": {
                 "fetcher": "fetchFromGitiles",
                 "hash": "sha256-LjX5kivfHbqCIA5pF9qUvswG1gjOFo3CMpX0VR+Cn38=",
-                "url": "https://chromium.googlesource.com/external/github.com/Maratyszcza/FXdiv.git",
-                "rev": "63058eff77e11aa15bf531df5dd34395ec3017c8"
+                "rev": "63058eff77e11aa15bf531df5dd34395ec3017c8",
+                "url": "https://chromium.googlesource.com/external/github.com/Maratyszcza/FXdiv.git"
             },
-            "src/third_party/harfbuzz-ng/src": {
+            "src/third_party/gemmlowp/src": {
                 "fetcher": "fetchFromGitiles",
-                "hash": "sha256-xCsfgbsWVSiuII5zFspssrqX4NrRuhzufYSq6fdnjKQ=",
-                "url": "https://chromium.googlesource.com/external/github.com/harfbuzz/harfbuzz.git",
-                "rev": "f26fd69d858642d76413b8f4068eaf9b57c40a5f"
+                "hash": "sha256-O5wD8wxgis0qYMaY+xZ21GBDVQFphMRvInCOswS6inA=",
+                "rev": "13d57703abca3005d97b19df1f2db731607a7dc2",
+                "url": "https://chromium.googlesource.com/external/github.com/google/gemmlowp.git"
             },
-            "src/third_party/emoji-segmenter/src": {
+            "src/third_party/google_benchmark/src": {
                 "fetcher": "fetchFromGitiles",
-                "hash": "sha256-oT9mAKoKnrsFsBAeTRfPOXM76HRQQabFAlPpfKUGFhs=",
-                "url": "https://chromium.googlesource.com/external/github.com/google/emoji-segmenter.git",
-                "rev": "9ba6d25d0d9313569665d4a9d2b34f0f39f9a50e"
+                "hash": "sha256-h2ryAQAuHI54Cni88L85e7Np4KATGVTRdDcmUvCNeWc=",
+                "rev": "b177433f3ee2513b1075140c723d73ab8901790f",
+                "url": "https://chromium.googlesource.com/external/github.com/google/benchmark.git"
             },
-            "src/third_party/ots/src": {
+            "src/third_party/googletest/src": {
                 "fetcher": "fetchFromGitiles",
-                "hash": "sha256-kiUXrXsaGOzPkKh0dVmU1I13WHt0Stzj7QLMqHN9FbU=",
-                "url": "https://chromium.googlesource.com/external/github.com/khaledhosny/ots.git",
-                "rev": "46bea9879127d0ff1c6601b078e2ce98e83fcd33"
+                "hash": "sha256-VYRjcM3dDY2FarviXyFMgSkXCqKfWXwtGAj2Msgm7zg=",
+                "rev": "af29db7ec28d6df1c7f0f745186884091e602e07",
+                "url": "https://chromium.googlesource.com/external/github.com/google/googletest.git"
             },
-            "src/third_party/libgav1/src": {
+            "src/third_party/grpc/src": {
                 "fetcher": "fetchFromGitiles",
-                "hash": "sha256-dT8/Mdit3Qc5Sno6DYKv1qSNr+6Lhiy24ZNNBKoVq8I=",
-                "url": "https://chromium.googlesource.com/codecs/libgav1.git",
-                "rev": "df0023cc95b8e606a2fd243522d823401ef86637"
+                "hash": "sha256-64JEVCx/PCM0dvv7kAQvSjLc0QbRAZVBDzwD/FAV6T8=",
+                "rev": "822dab21d9995c5cf942476b35ca12a1aa9d2737",
+                "url": "https://chromium.googlesource.com/external/github.com/grpc/grpc.git"
             },
-            "src/third_party/googletest/src": {
+            "src/third_party/harfbuzz-ng/src": {
                 "fetcher": "fetchFromGitiles",
-                "hash": "sha256-VYRjcM3dDY2FarviXyFMgSkXCqKfWXwtGAj2Msgm7zg=",
-                "url": "https://chromium.googlesource.com/external/github.com/google/googletest.git",
-                "rev": "af29db7ec28d6df1c7f0f745186884091e602e07"
+                "hash": "sha256-+fClyD9Rsge9qdGF8WCv8taLTWNL8iManpXZUzDL2LM=",
+                "rev": "db700b5670d9475cc8ed4880cc9447b232c5e432",
+                "url": "https://chromium.googlesource.com/external/github.com/harfbuzz/harfbuzz.git"
+            },
+            "src/third_party/highway/src": {
+                "fetcher": "fetchFromGitiles",
+                "hash": "sha256-kNb9UVcFq2BIf9nftUgN8ciFFCzRCou/sLwVf08jf3E=",
+                "rev": "8f20644eca693cfb74aa795b0006b6779c370e7a",
+                "url": "https://chromium.googlesource.com/external/github.com/google/highway.git"
             },
             "src/third_party/hunspell_dictionaries": {
                 "fetcher": "fetchFromGitiles",
                 "hash": "sha256-67mvpJRFFa9eMfyqFMURlbxOaTJBICnk+gl0b0mEHl8=",
-                "url": "https://chromium.googlesource.com/chromium/deps/hunspell_dictionaries.git",
-                "rev": "41cdffd71c9948f63c7ad36e1fb0ff519aa7a37e"
+                "rev": "41cdffd71c9948f63c7ad36e1fb0ff519aa7a37e",
+                "url": "https://chromium.googlesource.com/chromium/deps/hunspell_dictionaries.git"
             },
             "src/third_party/icu": {
                 "fetcher": "fetchFromGitiles",
                 "hash": "sha256-9yFRBrHdWcYgrZAaigS8XnxNsqJNklGdFkAAgVdHXFU=",
-                "url": "https://chromium.googlesource.com/chromium/deps/icu.git",
-                "rev": "a622de35ac311c5ad390a7af80724634e5dc61ed"
+                "rev": "a622de35ac311c5ad390a7af80724634e5dc61ed",
+                "url": "https://chromium.googlesource.com/chromium/deps/icu.git"
             },
             "src/third_party/jsoncpp/source": {
                 "fetcher": "fetchFromGitiles",
                 "hash": "sha256-bSLNcoYBz3QCt5VuTR056V9mU2PmBuYBa0W6hFg2m8Q=",
-                "url": "https://chromium.googlesource.com/external/github.com/open-source-parsers/jsoncpp.git",
-                "rev": "42e892d96e47b1f6e29844cc705e148ec4856448"
+                "rev": "42e892d96e47b1f6e29844cc705e148ec4856448",
+                "url": "https://chromium.googlesource.com/external/github.com/open-source-parsers/jsoncpp.git"
             },
             "src/third_party/leveldatabase/src": {
                 "fetcher": "fetchFromGitiles",
                 "hash": "sha256-TTX2FrmcWsgqrh4uzqMyGnnnG51cVC2ILfdLxD65MLY=",
-                "url": "https://chromium.googlesource.com/external/leveldb.git",
-                "rev": "068d5ee1a3ac40dabd00d211d5013af44be55bea"
+                "rev": "068d5ee1a3ac40dabd00d211d5013af44be55bea",
+                "url": "https://chromium.googlesource.com/external/leveldb.git"
             },
             "src/third_party/libFuzzer/src": {
                 "fetcher": "fetchFromGitiles",
-                "hash": "sha256-T0dO+1A0r6kLFoleMkY8heu80biPntCpvA6YfqA7b+E=",
-                "url": "https://chromium.googlesource.com/external/github.com/llvm/llvm-project/compiler-rt/lib/fuzzer.git",
-                "rev": "758bd21f103a501b362b1ca46fa8fcb692eaa303"
-            },
-            "src/third_party/fuzztest/src": {
-                "fetcher": "fetchFromGitiles",
-                "hash": "sha256-wuB/lbkVCbisZvVFuLdE8XNDuiLQcI47/Y0EqvOCytc=",
-                "url": "https://chromium.googlesource.com/external/github.com/google/fuzztest.git",
-                "rev": "b5dbc33890d9586e4f6a213f1bf163ad287e6aa4"
+                "hash": "sha256-Zp8Ea/7GwmEl964MEIk3UM6IR5+FtUz8InlqZaOniDA=",
+                "rev": "26cc39e59b2bf5cbc20486296248a842c536878d",
+                "url": "https://chromium.googlesource.com/external/github.com/llvm/llvm-project/compiler-rt/lib/fuzzer.git"
             },
             "src/third_party/libaddressinput/src": {
                 "fetcher": "fetchFromGitiles",
                 "hash": "sha256-xvUUQSPrvqUp5DI9AqlRTWurwDW087c6v4RvI+4sfOQ=",
-                "url": "https://chromium.googlesource.com/external/libaddressinput.git",
-                "rev": "e8712e415627f22d0b00ebee8db99547077f39bd"
+                "rev": "e8712e415627f22d0b00ebee8db99547077f39bd",
+                "url": "https://chromium.googlesource.com/external/libaddressinput.git"
             },
             "src/third_party/libaom/source/libaom": {
                 "fetcher": "fetchFromGitiles",
-                "hash": "sha256-6oZWYXRTZ1IC5yGvfPI19PwPU9O7mKBsW2wVxBGwU/I=",
-                "url": "https://aomedia.googlesource.com/aom.git",
-                "rev": "1dbe1c7fae2456f91ccc79fecb919e9ffea0727a"
+                "hash": "sha256-Z8td6FIvHibTQsB6x/A/69xduogj2b2lteiQB6l56vE=",
+                "rev": "5f8db64abce68a3698fb732697ae50880bc9cac4",
+                "url": "https://aomedia.googlesource.com/aom.git"
             },
             "src/third_party/libavif/src": {
                 "fetcher": "fetchFromGitiles",
-                "hash": "sha256-Jd/KwJJ1oeQMLg8CShTTDQhCVHEDpXcQHiA4+NXYOIA=",
-                "url": "https://chromium.googlesource.com/external/github.com/AOMediaCodec/libavif.git",
-                "rev": "1a78d970b8315e7cc6a8601861ec75189c50c214"
+                "hash": "sha256-KfRRGTS8kBwi9Z9wafpSwL29RU38THG2xBCvNBXtZtg=",
+                "rev": "b2d36b1c3bfc806694cd4ff0cb188270823fe6d8",
+                "url": "https://chromium.googlesource.com/external/github.com/AOMediaCodec/libavif.git"
             },
             "src/third_party/libavifinfo/src": {
                 "fetcher": "fetchFromGitiles",
-                "hash": "sha256-UAc4iYWrKWteH98hD3QLkD3JWmV/rsvWhFIVJN7tc+Q=",
-                "url": "https://aomedia.googlesource.com/libavifinfo.git",
-                "rev": "b496868f7c3fd17dfeeecc0364fe37e19edd548a"
-            },
-            "src/third_party/nearby/src": {
-                "fetcher": "fetchFromGitiles",
-                "hash": "sha256-9PT/tuxjREGsvSnYT2wyaL5sB52CcYPpKVKN0ZGldWU=",
-                "url": "https://chromium.googlesource.com/external/github.com/google/nearby-connections.git",
-                "rev": "629e7ba7c964a62c97f6a882bffaec3c8490bb1e"
-            },
-            "src/third_party/beto-core/src": {
-                "fetcher": "fetchFromGitiles",
-                "hash": "sha256-qgsPK7RyVqGRji0sTcMck1JqX9iCsYIExGoGwNZyVT0=",
-                "url": "https://beto-core.googlesource.com/beto-core.git",
-                "rev": "b902b346037ea3f4aadf8177021f6f917b16e648"
-            },
-            "src/third_party/securemessage/src": {
-                "fetcher": "fetchFromGitiles",
-                "hash": "sha256-GS4ccnuiqxMs/LVYAtvSlVAYFp4a5GoZsxcriTX3k78=",
-                "url": "https://chromium.googlesource.com/external/github.com/google/securemessage.git",
-                "rev": "fa07beb12babc3b25e0c5b1f38c16aa8cb6b8f84"
-            },
-            "src/third_party/speedometer/v3.0": {
-                "fetcher": "fetchFromGitiles",
-                "hash": "sha256-PqrwtPFU3TI840za3UU8p+t4ZdyX0l79esEA602Mbq0=",
-                "url": "https://chromium.googlesource.com/external/github.com/WebKit/Speedometer.git",
-                "rev": "5107c739c1b2a008e7293e3b489c4f80a8fb2e01"
+                "hash": "sha256-yTv1AGtWfxXcywZycpsQBkBRLwuUJMPFKtpj7nrsc4A=",
+                "rev": "707919b2f8ac1920b2f7ae252c233f9c6dcf84e1",
+                "url": "https://aomedia.googlesource.com/libavifinfo.git"
             },
-            "src/third_party/ukey2/src": {
+            "src/third_party/libc++/src": {
                 "fetcher": "fetchFromGitiles",
-                "hash": "sha256-aaLs6ZS+CdBlCJ6ZhsmdAPFxiBIij6oufsDcNeRSV1E=",
-                "url": "https://chromium.googlesource.com/external/github.com/google/ukey2.git",
-                "rev": "0275885d8e6038c39b8a8ca55e75d1d4d1727f47"
+                "hash": "sha256-YP1LAUaV8epDAsd9LOovdXUyzpaLgffOJcGM6VmTaKc=",
+                "rev": "84fb809dd6dae36d556dc0bb702c6cc2ce9d4b80",
+                "url": "https://chromium.googlesource.com/external/github.com/llvm/llvm-project/libcxx.git"
             },
-            "src/third_party/cros-components/src": {
+            "src/third_party/libc++abi/src": {
                 "fetcher": "fetchFromGitiles",
-                "hash": "sha256-ZjLMlNDDN08v9SUFAuroPsu/6ADLHZAAFpv+bmaJA2Y=",
-                "url": "https://chromium.googlesource.com/external/google3/cros_components.git",
-                "rev": "25159cae8d540780cbeb994692ce4a3ea14cc094"
+                "hash": "sha256-CBUw50T/jFMXU0cR+BQH6JyEY3mHamLM6kA8YdvI24Q=",
+                "rev": "331847d7a5e6f8706689cf5d468e6e58c868fa10",
+                "url": "https://chromium.googlesource.com/external/github.com/llvm/llvm-project/libcxxabi.git"
             },
             "src/third_party/libdrm/src": {
                 "fetcher": "fetchFromGitiles",
                 "hash": "sha256-NUxS2rBJ0nFblvHRQUfKT933+DAws5RUTDb+RLxRF4M=",
-                "url": "https://chromium.googlesource.com/chromiumos/third_party/libdrm.git",
-                "rev": "98e1db501173303e58ef6a1def94ab7a2d84afc1"
+                "rev": "98e1db501173303e58ef6a1def94ab7a2d84afc1",
+                "url": "https://chromium.googlesource.com/chromiumos/third_party/libdrm.git"
             },
-            "src/third_party/expat/src": {
+            "src/third_party/libgav1/src": {
                 "fetcher": "fetchFromGitiles",
-                "hash": "sha256-FXTDGAK03jc2wvazhRKqtsFRKZUYS/9HLpZNp4JfZJI=",
-                "url": "https://chromium.googlesource.com/external/github.com/libexpat/libexpat.git",
-                "rev": "441f98d02deafd9b090aea568282b28f66a50e36"
+                "hash": "sha256-dT8/Mdit3Qc5Sno6DYKv1qSNr+6Lhiy24ZNNBKoVq8I=",
+                "rev": "df0023cc95b8e606a2fd243522d823401ef86637",
+                "url": "https://chromium.googlesource.com/codecs/libgav1.git"
             },
             "src/third_party/libipp/libipp": {
                 "fetcher": "fetchFromGitiles",
                 "hash": "sha256-gxU92lHLd6uxO8T3QWhZIK0hGy97cki705DV0VimCPY=",
-                "url": "https://chromium.googlesource.com/chromiumos/platform2/libipp.git",
-                "rev": "2209bb84a8e122dab7c02fe66cc61a7b42873d7f"
+                "rev": "2209bb84a8e122dab7c02fe66cc61a7b42873d7f",
+                "url": "https://chromium.googlesource.com/chromiumos/platform2/libipp.git"
             },
             "src/third_party/libjpeg_turbo": {
                 "fetcher": "fetchFromGitiles",
-                "hash": "sha256-+t75ZAdOXc7Nd1/8zEQLX+enZb8upqIQuR6qzb9z7Cg=",
-                "url": "https://chromium.googlesource.com/chromium/deps/libjpeg_turbo.git",
-                "rev": "9b894306ec3b28cea46e84c32b56773a98c483da"
+                "hash": "sha256-bcmp8RqQYp4lRI9NfdfYgrAJsDLecJEhgRu9oosB9lQ=",
+                "rev": "30bdb85e302ecfc52593636b2f44af438e05e784",
+                "url": "https://chromium.googlesource.com/chromium/deps/libjpeg_turbo.git"
             },
             "src/third_party/liblouis/src": {
                 "fetcher": "fetchFromGitiles",
                 "hash": "sha256-EI/uaHXe0NlqdEw764q0SjerThYEVLRogUlmrsZwXnY=",
-                "url": "https://chromium.googlesource.com/external/liblouis-github.git",
-                "rev": "9700847afb92cb35969bdfcbbfbbb74b9c7b3376"
+                "rev": "9700847afb92cb35969bdfcbbfbbb74b9c7b3376",
+                "url": "https://chromium.googlesource.com/external/liblouis-github.git"
             },
             "src/third_party/libphonenumber/dist": {
                 "fetcher": "fetchFromGitiles",
                 "hash": "sha256-3hSnTFTD3KAdbyxfKg12qbIYTmw6YlTCH64gMP/HUJo=",
-                "url": "https://chromium.googlesource.com/external/libphonenumber.git",
-                "rev": "140dfeb81b753388e8a672900fb7a971e9a0d362"
+                "rev": "140dfeb81b753388e8a672900fb7a971e9a0d362",
+                "url": "https://chromium.googlesource.com/external/libphonenumber.git"
             },
             "src/third_party/libprotobuf-mutator/src": {
                 "fetcher": "fetchFromGitiles",
                 "hash": "sha256-ZyPweW+V5foxFQwjjMLkaRUo+FNV+kEDGIH/4oRV614=",
-                "url": "https://chromium.googlesource.com/external/github.com/google/libprotobuf-mutator.git",
-                "rev": "a304ec48dcf15d942607032151f7e9ee504b5dcf"
+                "rev": "a304ec48dcf15d942607032151f7e9ee504b5dcf",
+                "url": "https://chromium.googlesource.com/external/github.com/google/libprotobuf-mutator.git"
             },
             "src/third_party/libsrtp": {
                 "fetcher": "fetchFromGitiles",
                 "hash": "sha256-pfLFh2JGk/g0ZZxBKTaYW9/PBpkCm0rtJeyNePUMTTc=",
-                "url": "https://chromium.googlesource.com/chromium/deps/libsrtp.git",
-                "rev": "5b7c744eb8310250ccc534f3f86a2015b3887a0a"
+                "rev": "5b7c744eb8310250ccc534f3f86a2015b3887a0a",
+                "url": "https://chromium.googlesource.com/chromium/deps/libsrtp.git"
             },
             "src/third_party/libsync/src": {
                 "fetcher": "fetchFromGitiles",
                 "hash": "sha256-Mkl6C1LxF3RYLwYbxiSfoQPt8QKFwQWj/Ati2sNJ32E=",
-                "url": "https://chromium.googlesource.com/aosp/platform/system/core/libsync.git",
-                "rev": "f4f4387b6bf2387efbcfd1453af4892e8982faf6"
+                "rev": "f4f4387b6bf2387efbcfd1453af4892e8982faf6",
+                "url": "https://chromium.googlesource.com/aosp/platform/system/core/libsync.git"
+            },
+            "src/third_party/libunwind/src": {
+                "fetcher": "fetchFromGitiles",
+                "hash": "sha256-rqmY4JNm4zuYqXs7o+1QhNnaNX4Cmt7PTJMGploHPnY=",
+                "rev": "a321409e66c212098e755cfae1a978bbcff1ccbb",
+                "url": "https://chromium.googlesource.com/external/github.com/llvm/llvm-project/libunwind.git"
             },
             "src/third_party/libvpx/source/libvpx": {
                 "fetcher": "fetchFromGitiles",
-                "hash": "sha256-UA/pf35eWFArRM+QdN6i6LK0ePWzXEsviHlf3WUgMoM=",
-                "url": "https://chromium.googlesource.com/webm/libvpx.git",
-                "rev": "424723dc025ce451dab9568239a46b18d0919b4d"
+                "hash": "sha256-5x0Sk8/DXaTCIydK79vWZgIx3IHeQbLUxoNyE7E+Sdo=",
+                "rev": "38a707faef72eeff89d669c553e7bfe9e08dba8f",
+                "url": "https://chromium.googlesource.com/webm/libvpx.git"
             },
             "src/third_party/libwebm/source": {
                 "fetcher": "fetchFromGitiles",
                 "hash": "sha256-u/5nkJed0DzdhR5OLL2kIhZhOnrbyzL1Kx37vV/jcEo=",
-                "url": "https://chromium.googlesource.com/webm/libwebm.git",
-                "rev": "e4fbea0c9751ae8aa86629b197a28d8276a2b0da"
+                "rev": "e4fbea0c9751ae8aa86629b197a28d8276a2b0da",
+                "url": "https://chromium.googlesource.com/webm/libwebm.git"
             },
             "src/third_party/libwebp/src": {
                 "fetcher": "fetchFromGitiles",
-                "hash": "sha256-Wa33opOFgcmYtycezDUt2f6PqZBse6xYB5kLuSaw95o=",
-                "url": "https://chromium.googlesource.com/webm/libwebp.git",
-                "rev": "ca332209cb5567c9b249c86788cb2dbf8847e760"
+                "hash": "sha256-79peh0y3eeiW5cVQqVq0mUgDcGZ9BlY+OXkPZylKARY=",
+                "rev": "2af26267cdfcb63a88e5c74a85927a12d6ca1d76",
+                "url": "https://chromium.googlesource.com/webm/libwebp.git"
             },
             "src/third_party/libyuv": {
                 "fetcher": "fetchFromGitiles",
                 "hash": "sha256-jxs9kHI40gRFhm9cU6uS1Rxj+LLUUqT9b3myihxgW7s=",
-                "url": "https://chromium.googlesource.com/libyuv/libyuv.git",
-                "rev": "04821d1e7d60845525e8db55c7bcd41ef5be9406"
+                "rev": "04821d1e7d60845525e8db55c7bcd41ef5be9406",
+                "url": "https://chromium.googlesource.com/libyuv/libyuv.git"
             },
             "src/third_party/lss": {
                 "fetcher": "fetchFromGitiles",
                 "hash": "sha256-hE8uZf9Fst66qJkoVYChiB8G41ie+k9M4X0W+5JUSdw=",
-                "url": "https://chromium.googlesource.com/linux-syscall-support.git",
-                "rev": "ce877209e11aa69dcfffbd53ef90ea1d07136521"
+                "rev": "ce877209e11aa69dcfffbd53ef90ea1d07136521",
+                "url": "https://chromium.googlesource.com/linux-syscall-support.git"
             },
             "src/third_party/material_color_utilities/src": {
                 "fetcher": "fetchFromGitiles",
                 "hash": "sha256-oi28dWuTd6ijn/RKSPukDr5GSzYiCTM2klFb7WSMDHY=",
-                "url": "https://chromium.googlesource.com/external/github.com/material-foundation/material-color-utilities.git",
-                "rev": "234a000e507d586c20df6e3bf5b9e035bc5ce7b1"
+                "rev": "234a000e507d586c20df6e3bf5b9e035bc5ce7b1",
+                "url": "https://chromium.googlesource.com/external/github.com/material-foundation/material-color-utilities.git"
             },
             "src/third_party/minigbm/src": {
                 "fetcher": "fetchFromGitiles",
                 "hash": "sha256-9HwvjTETerbQ7YKXH9kUB2eWa8PxGWMAJfx1jAluhrs=",
-                "url": "https://chromium.googlesource.com/chromiumos/platform/minigbm.git",
-                "rev": "3018207f4d89395cc271278fb9a6558b660885f5"
+                "rev": "3018207f4d89395cc271278fb9a6558b660885f5",
+                "url": "https://chromium.googlesource.com/chromiumos/platform/minigbm.git"
+            },
+            "src/third_party/nan": {
+                "fetcher": "fetchFromGitHub",
+                "hash": "sha256-tur5CExvwuSmwqBwH9o8OZWzDuifRybjEb+4/tm6exk=",
+                "owner": "nodejs",
+                "repo": "nan",
+                "rev": "16fa32231e2ccd89d2804b3f765319128b20c4ac"
             },
             "src/third_party/nasm": {
                 "fetcher": "fetchFromGitiles",
                 "hash": "sha256-L+b3X3vsfpY6FSlIK/AHhxhmq2cXd50vND6uT6yn8Qs=",
-                "url": "https://chromium.googlesource.com/chromium/deps/nasm.git",
-                "rev": "7fc833e889d1afda72c06220e5bed8fb43b2e5ce"
+                "rev": "7fc833e889d1afda72c06220e5bed8fb43b2e5ce",
+                "url": "https://chromium.googlesource.com/chromium/deps/nasm.git"
+            },
+            "src/third_party/nearby/src": {
+                "fetcher": "fetchFromGitiles",
+                "hash": "sha256-5d7c8WvkjmBuwcwqhxQf0wRE3qaF8fFsiqUE1sHh0nc=",
+                "rev": "8725391822b8901784b379a4573ab8828e7091d3",
+                "url": "https://chromium.googlesource.com/external/github.com/google/nearby-connections.git"
             },
             "src/third_party/neon_2_sse/src": {
                 "fetcher": "fetchFromGitiles",
                 "hash": "sha256-299ZptvdTmCnIuVVBkrpf5ZTxKPwgcGUob81tEI91F0=",
-                "url": "https://chromium.googlesource.com/external/github.com/intel/ARM_NEON_2_x86_SSE.git",
-                "rev": "a15b489e1222b2087007546b4912e21293ea86ff"
+                "rev": "a15b489e1222b2087007546b4912e21293ea86ff",
+                "url": "https://chromium.googlesource.com/external/github.com/intel/ARM_NEON_2_x86_SSE.git"
             },
             "src/third_party/openh264/src": {
                 "fetcher": "fetchFromGitiles",
                 "hash": "sha256-J7Eqe2QevZh1xfap19W8AVCcwfRu7ztknnbKFJUAH1c=",
-                "url": "https://chromium.googlesource.com/external/github.com/cisco/openh264",
-                "rev": "09a4f3ec842a8932341b195c5b01e141c8a16eb7"
+                "rev": "09a4f3ec842a8932341b195c5b01e141c8a16eb7",
+                "url": "https://chromium.googlesource.com/external/github.com/cisco/openh264"
             },
             "src/third_party/openscreen/src": {
                 "fetcher": "fetchFromGitiles",
                 "hash": "sha256-TyZ/sZ0gnesWjKUnO2RVM2TTdpVIxsBWueHDgix0/wg=",
-                "url": "https://chromium.googlesource.com/openscreen",
-                "rev": "971d6055e7b78c474e2e734e55a2991fbb7ab665"
+                "rev": "971d6055e7b78c474e2e734e55a2991fbb7ab665",
+                "url": "https://chromium.googlesource.com/openscreen"
             },
             "src/third_party/openscreen/src/third_party/tinycbor/src": {
                 "fetcher": "fetchFromGitiles",
                 "hash": "sha256-fMKBFUSKmODQyg4hKIa1hwnEKIV6WBbY1Gb8DOSnaHA=",
-                "url": "https://chromium.googlesource.com/external/github.com/intel/tinycbor.git",
-                "rev": "d393c16f3eb30d0c47e6f9d92db62272f0ec4dc7"
+                "rev": "d393c16f3eb30d0c47e6f9d92db62272f0ec4dc7",
+                "url": "https://chromium.googlesource.com/external/github.com/intel/tinycbor.git"
+            },
+            "src/third_party/ots/src": {
+                "fetcher": "fetchFromGitiles",
+                "hash": "sha256-kiUXrXsaGOzPkKh0dVmU1I13WHt0Stzj7QLMqHN9FbU=",
+                "rev": "46bea9879127d0ff1c6601b078e2ce98e83fcd33",
+                "url": "https://chromium.googlesource.com/external/github.com/khaledhosny/ots.git"
             },
             "src/third_party/pdfium": {
                 "fetcher": "fetchFromGitiles",
-                "hash": "sha256-U1cScrfKN0F+cy307RT2iwB6RYKeCNDRnkYxzamezoY=",
-                "url": "https://pdfium.googlesource.com/pdfium.git",
-                "rev": "a3895af47f600e3f9677f31fa39e15bd01c18457"
+                "hash": "sha256-u+El2jEnvlcQs5j5TthpKj8s255n2AhJPW+Q/s0Ljm0=",
+                "rev": "6e55da0c45788fdc22fa3aab7ead414fc42b74c1",
+                "url": "https://pdfium.googlesource.com/pdfium.git"
             },
             "src/third_party/perfetto": {
                 "fetcher": "fetchFromGitiles",
-                "hash": "sha256-xLx+dnUysm+HS1esu2hAqBKg/GgTJK4SQu1ZINr2aYc=",
-                "url": "https://android.googlesource.com/platform/external/perfetto.git",
-                "rev": "7ce535ddfc62d30166f35a8ed0f121da5eb0437c"
+                "hash": "sha256-/8WQO0r10Hz3yLNh1MtjE8rGfzbpDkUowA2OPwEuRvA=",
+                "rev": "43b72e3ce703b676c9c923b04540472d10790f56",
+                "url": "https://android.googlesource.com/platform/external/perfetto.git"
             },
             "src/third_party/pthreadpool/src": {
                 "fetcher": "fetchFromGitiles",
-                "hash": "sha256-R4YmNzWEELSkAws/ejmNVxqXDTJwcqjLU/o/HvgRn2E=",
-                "url": "https://chromium.googlesource.com/external/github.com/Maratyszcza/pthreadpool.git",
-                "rev": "4fe0e1e183925bf8cfa6aae24237e724a96479b8"
+                "hash": "sha256-Pfvievhma1rOpbLdSrIX4KaZyRpdvrnjRzzPYl3fDQo=",
+                "rev": "1787867f6183f056420e532eec640cba25efafea",
+                "url": "https://chromium.googlesource.com/external/github.com/Maratyszcza/pthreadpool.git"
             },
             "src/third_party/pyelftools": {
                 "fetcher": "fetchFromGitiles",
                 "hash": "sha256-I/7p3IEvfP/gkes4kx18PvWwhAKilQKb67GXoW4zFB4=",
-                "url": "https://chromium.googlesource.com/chromiumos/third_party/pyelftools.git",
-                "rev": "19b3e610c86fcadb837d252c794cb5e8008826ae"
-            },
-            "src/third_party/quic_trace/src": {
-                "fetcher": "fetchFromGitiles",
-                "hash": "sha256-Nf9ZDLcE1JunhbpEMHhrY2ROnbgrvVZoRkPwWq1DU0g=",
-                "url": "https://chromium.googlesource.com/external/github.com/google/quic-trace.git",
-                "rev": "caa0a6eaba816ecb737f9a70782b7c80b8ac8dbc"
+                "rev": "19b3e610c86fcadb837d252c794cb5e8008826ae",
+                "url": "https://chromium.googlesource.com/chromiumos/third_party/pyelftools.git"
             },
             "src/third_party/pywebsocket3/src": {
                 "fetcher": "fetchFromGitiles",
                 "hash": "sha256-WEqqu2/7fLqcf/2/IcD7/FewRSZ6jTgVlVBvnihthYQ=",
-                "url": "https://chromium.googlesource.com/external/github.com/GoogleChromeLabs/pywebsocket3.git",
-                "rev": "50602a14f1b6da17e0b619833a13addc6ea78bc2"
+                "rev": "50602a14f1b6da17e0b619833a13addc6ea78bc2",
+                "url": "https://chromium.googlesource.com/external/github.com/GoogleChromeLabs/pywebsocket3.git"
+            },
+            "src/third_party/quic_trace/src": {
+                "fetcher": "fetchFromGitiles",
+                "hash": "sha256-Nf9ZDLcE1JunhbpEMHhrY2ROnbgrvVZoRkPwWq1DU0g=",
+                "rev": "caa0a6eaba816ecb737f9a70782b7c80b8ac8dbc",
+                "url": "https://chromium.googlesource.com/external/github.com/google/quic-trace.git"
             },
             "src/third_party/re2/src": {
                 "fetcher": "fetchFromGitiles",
-                "hash": "sha256-m3bJlSyyhmj/7jvy7ExNX/gol7yeu1mnmyAc8u8Pr8s=",
-                "url": "https://chromium.googlesource.com/external/github.com/google/re2.git",
-                "rev": "3d9bdbd0e208d3274a1cb1275c94d8b7626ddde2"
+                "hash": "sha256-9V/Q5o24sL1TJUDNifUqpyrQ2zTSrhU0Bxo9qDwd0+4=",
+                "rev": "87d09ef4f0307e53f1d3796843f4b90d41cfccaa",
+                "url": "https://chromium.googlesource.com/external/github.com/google/re2.git"
             },
             "src/third_party/ruy/src": {
                 "fetcher": "fetchFromGitiles",
-                "hash": "sha256-Zi3A49YqDE5S4iSpw9t9kTzitbQbcslm1zsepWX5cbw=",
-                "url": "https://chromium.googlesource.com/external/github.com/google/ruy.git",
-                "rev": "6ffa93a89376555b09134c59b84d8f5e9cfc6ce6"
+                "hash": "sha256-hNco0Jol4vQS1bkYiXaoZ1IPHwoRq3DD3iY0TeLygew=",
+                "rev": "c04e5e52ae6b144f74ac032652e3c538bda15c9b",
+                "url": "https://chromium.googlesource.com/external/github.com/google/ruy.git"
+            },
+            "src/third_party/securemessage/src": {
+                "fetcher": "fetchFromGitiles",
+                "hash": "sha256-GS4ccnuiqxMs/LVYAtvSlVAYFp4a5GoZsxcriTX3k78=",
+                "rev": "fa07beb12babc3b25e0c5b1f38c16aa8cb6b8f84",
+                "url": "https://chromium.googlesource.com/external/github.com/google/securemessage.git"
             },
             "src/third_party/skia": {
                 "fetcher": "fetchFromGitiles",
-                "hash": "sha256-CvoJxsBN1Nyh+RPgU+aptZW5WsfGB4hmSlhyma1wO+E=",
-                "url": "https://skia.googlesource.com/skia.git",
-                "rev": "349c1179c43ef46f2804404952b9460dc007d76a"
+                "hash": "sha256-Ck15ddYoo8pVLHcwW5P8Ei1sBQf23EGd/ySGOVSWAFQ=",
+                "rev": "b4f0c1163c955e42489f62d842585720cf0df0ea",
+                "url": "https://skia.googlesource.com/skia.git"
             },
             "src/third_party/smhasher/src": {
                 "fetcher": "fetchFromGitiles",
                 "hash": "sha256-RyC//me08hwGXRrWcK8GZ1uhIkBq4FByA7fHCVDsniw=",
-                "url": "https://chromium.googlesource.com/external/smhasher.git",
-                "rev": "e87738e57558e0ec472b2fc3a643b838e5b6e88f"
+                "rev": "e87738e57558e0ec472b2fc3a643b838e5b6e88f",
+                "url": "https://chromium.googlesource.com/external/smhasher.git"
             },
             "src/third_party/snappy/src": {
                 "fetcher": "fetchFromGitiles",
                 "hash": "sha256-5fV6NfO8vmqK+iCwpLtE2YjYOzjsshctauyjNIOxrH0=",
-                "url": "https://chromium.googlesource.com/external/github.com/google/snappy.git",
-                "rev": "c9f9edf6d75bb065fa47468bf035e051a57bec7c"
+                "rev": "c9f9edf6d75bb065fa47468bf035e051a57bec7c",
+                "url": "https://chromium.googlesource.com/external/github.com/google/snappy.git"
+            },
+            "src/third_party/speedometer/v3.0": {
+                "fetcher": "fetchFromGitiles",
+                "hash": "sha256-PqrwtPFU3TI840za3UU8p+t4ZdyX0l79esEA602Mbq0=",
+                "rev": "5107c739c1b2a008e7293e3b489c4f80a8fb2e01",
+                "url": "https://chromium.googlesource.com/external/github.com/WebKit/Speedometer.git"
             },
             "src/third_party/sqlite/src": {
                 "fetcher": "fetchFromGitiles",
-                "hash": "sha256-wKsfwZpDRQzYQp6qls07uapgy9K3TWLOEUQlhIFpJtw=",
-                "url": "https://chromium.googlesource.com/chromium/deps/sqlite.git",
-                "rev": "cd9486849ba3c3ec753f556fd29c0aabee122a28"
+                "hash": "sha256-35rSG+ptFMC62FsprLvAqfXZknKu40Ee6H2qpAcA3wI=",
+                "rev": "b7e480172bb2411f9afedefdcc69a57a12f18b7b",
+                "url": "https://chromium.googlesource.com/chromium/deps/sqlite.git"
+            },
+            "src/third_party/squirrel.mac": {
+                "fetcher": "fetchFromGitHub",
+                "hash": "sha256-4GfKQg0u3c9GI+jl3ixESNqWXQJKRMi+00QT0s2Shqw=",
+                "owner": "Squirrel",
+                "repo": "Squirrel.Mac",
+                "rev": "0e5d146ba13101a1302d59ea6e6e0b3cace4ae38"
+            },
+            "src/third_party/squirrel.mac/vendor/Mantle": {
+                "fetcher": "fetchFromGitHub",
+                "hash": "sha256-ogFkMJybf2Ue606ojXJu6Gy5aXSi1bSKm60qcTAIaPk=",
+                "owner": "Mantle",
+                "repo": "Mantle",
+                "rev": "78d3966b3c331292ea29ec38661b25df0a245948"
+            },
+            "src/third_party/squirrel.mac/vendor/ReactiveObjC": {
+                "fetcher": "fetchFromGitHub",
+                "hash": "sha256-/MCqC1oFe3N9TsmfVLgl+deR6qHU6ZFQQjudb9zB5Mo=",
+                "owner": "ReactiveCocoa",
+                "repo": "ReactiveObjC",
+                "rev": "74ab5baccc6f7202c8ac69a8d1e152c29dc1ea76"
             },
             "src/third_party/swiftshader": {
                 "fetcher": "fetchFromGitiles",
-                "hash": "sha256-Im4sdDo4b96YQIKDcAmqUk8PiJzejZgSDPur3hqPPRk=",
-                "url": "https://swiftshader.googlesource.com/SwiftShader.git",
-                "rev": "d9ec9befba05a8dfca09c1e88f3f7be0e4b153c6"
+                "hash": "sha256-PCPb5opTATGCCQmw8TGF09TbLL8QES+So+yaL68H//I=",
+                "rev": "32f9332d1d7aacbdba7c1aa5df894bb1890bb2cc",
+                "url": "https://swiftshader.googlesource.com/SwiftShader.git"
             },
             "src/third_party/text-fragments-polyfill/src": {
                 "fetcher": "fetchFromGitiles",
                 "hash": "sha256-4rW2u1cQAF4iPWHAt1FvVXIpz2pmI901rEPks/w/iFA=",
-                "url": "https://chromium.googlesource.com/external/github.com/GoogleChromeLabs/text-fragments-polyfill.git",
-                "rev": "c036420683f672d685e27415de0a5f5e85bdc23f"
+                "rev": "c036420683f672d685e27415de0a5f5e85bdc23f",
+                "url": "https://chromium.googlesource.com/external/github.com/GoogleChromeLabs/text-fragments-polyfill.git"
             },
             "src/third_party/tflite/src": {
                 "fetcher": "fetchFromGitiles",
-                "hash": "sha256-119/isDtopnj6MBRr3bzBvIppXw8M/ejcPx0CmIjXZU=",
-                "url": "https://chromium.googlesource.com/external/github.com/tensorflow/tensorflow.git",
-                "rev": "21e56c30e480ac67bed48335a5d122c59a6a6805"
+                "hash": "sha256-3gawK1S5+nr5yOAHgYozLWSoT1TbJmB6Md1fID6du9w=",
+                "rev": "91946956f81a2d9fd12a6d6baba20c997d3f8890",
+                "url": "https://chromium.googlesource.com/external/github.com/tensorflow/tensorflow.git"
+            },
+            "src/third_party/ukey2/src": {
+                "fetcher": "fetchFromGitiles",
+                "hash": "sha256-aaLs6ZS+CdBlCJ6ZhsmdAPFxiBIij6oufsDcNeRSV1E=",
+                "rev": "0275885d8e6038c39b8a8ca55e75d1d4d1727f47",
+                "url": "https://chromium.googlesource.com/external/github.com/google/ukey2.git"
             },
             "src/third_party/vulkan-deps": {
                 "fetcher": "fetchFromGitiles",
-                "hash": "sha256-lqCUx70IeHZ7YfE9DXia7dFok/JsFu/HSIv2AGi37YI=",
-                "url": "https://chromium.googlesource.com/vulkan-deps",
-                "rev": "2b783ed328d3a46e6a7a21218ced6b4dd1684114"
+                "hash": "sha256-xYX77wsgG+2TzS0AinFJndnID5P3/anY4TPh3cjRaIY=",
+                "rev": "4b7a5f2a3522cbc4e4334cdc64bfaf3f832b89c3",
+                "url": "https://chromium.googlesource.com/vulkan-deps"
             },
             "src/third_party/vulkan-deps/glslang/src": {
                 "fetcher": "fetchFromGitiles",
-                "hash": "sha256-+Qs+Q3p11y9oUKyWEbuaQ0vx6hppFZSFbFuU0ve6rRo=",
-                "url": "https://chromium.googlesource.com/external/github.com/KhronosGroup/glslang",
-                "rev": "ebb0a8b28e5ea7a13146a24b3ad87b1966dbdfa3"
+                "hash": "sha256-Y9AmEtFPj+sp/a5YnHChqlqgW/1kdaJ1CEbBB5r2cuI=",
+                "rev": "e3a711b6fc942307be7cb634698015dfd13c37fe",
+                "url": "https://chromium.googlesource.com/external/github.com/KhronosGroup/glslang"
             },
             "src/third_party/vulkan-deps/spirv-cross/src": {
                 "fetcher": "fetchFromGitiles",
-                "hash": "sha256-UIk5hihUPjXNzEeO2laS4dUef/rEExxXAZjMcftx+3A=",
-                "url": "https://chromium.googlesource.com/external/github.com/KhronosGroup/SPIRV-Cross",
-                "rev": "2de1265fca722929785d9acdec4ab728c47a0254"
+                "hash": "sha256-I8RXVat6//rlpmZuuC99Ar/Rct6MFce4FGKgQA2gBj0=",
+                "rev": "54997fb4bc3adeb47b9b9f7bb67f1c25eaca2204",
+                "url": "https://chromium.googlesource.com/external/github.com/KhronosGroup/SPIRV-Cross"
             },
             "src/third_party/vulkan-deps/spirv-headers/src": {
                 "fetcher": "fetchFromGitiles",
-                "hash": "sha256-JLFVzFNdXqxyKmg3NymIqqZmf2GAb7tYetQ6HJPsUIQ=",
-                "url": "https://chromium.googlesource.com/external/github.com/KhronosGroup/SPIRV-Headers",
-                "rev": "88bc5e321c2839707df8b1ab534e243e00744177"
+                "hash": "sha256-OqLxyrTzg1Q2zmQd0YalWtl7vX5lRJFmE2VH7fHC8/8=",
+                "rev": "d790ced752b5bfc06b6988baadef6eb2d16bdf96",
+                "url": "https://chromium.googlesource.com/external/github.com/KhronosGroup/SPIRV-Headers"
             },
             "src/third_party/vulkan-deps/spirv-tools/src": {
                 "fetcher": "fetchFromGitiles",
-                "hash": "sha256-+HUDsp0COKlPtKidOVvUk7lN1AiFw01i5ANc3MO+qjs=",
-                "url": "https://chromium.googlesource.com/external/github.com/KhronosGroup/SPIRV-Tools",
-                "rev": "5084f58e5d187b16f84d2af936ff94ea2f46a00c"
+                "hash": "sha256-wFdAzbOQdOqeuVaWl5036qkli1gkSiL5JHH82Z5cFL4=",
+                "rev": "4c16c35b16bbd462a0e89707ebeecc0bce956b2f",
+                "url": "https://chromium.googlesource.com/external/github.com/KhronosGroup/SPIRV-Tools"
             },
             "src/third_party/vulkan-deps/vulkan-headers/src": {
                 "fetcher": "fetchFromGitiles",
-                "hash": "sha256-UlaNc1NxTYulrF4Ol0rLysbLwbFR46Evq7WkWncPB8k=",
-                "url": "https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-Headers",
-                "rev": "f4bfcd885214675a6a0d7d4df07f52b511e6ea16"
+                "hash": "sha256-9+tHkkHsP5ft6+tbofOYV1yBFDpFlJz4Q6YS8c6T5As=",
+                "rev": "2634c969d7dc0e983f005f7f2e665cce8449efe6",
+                "url": "https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-Headers"
             },
             "src/third_party/vulkan-deps/vulkan-loader/src": {
                 "fetcher": "fetchFromGitiles",
-                "hash": "sha256-GbVr8LmwC6r7a13++5cYJXAq+H4P07quEHpTUV1qfqA=",
-                "url": "https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-Loader",
-                "rev": "7b7d15bc9f1d782e4d6ea34e61fd9a36a7952208"
+                "hash": "sha256-q7/dYKQ3O0aSs326YbEeLlS+SciFWugBGm/G+b8RNd0=",
+                "rev": "d34bfafff23602e857064bea6d99a35eb63f37f2",
+                "url": "https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-Loader"
             },
             "src/third_party/vulkan-deps/vulkan-tools/src": {
                 "fetcher": "fetchFromGitiles",
-                "hash": "sha256-vnrhYM7tcDTcXH4A+2leio5Wc1+b5H+7CQISEI+SPV8=",
-                "url": "https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-Tools",
-                "rev": "f7017f23337b90a2b2ceb65a4e1050e8ad89e065"
+                "hash": "sha256-tcaJmosHwTo38keV5qkumkLB1o1qq8v2ZmSsi2zDGoE=",
+                "rev": "389110e4600669d82bca042859fddf898387c0d2",
+                "url": "https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-Tools"
             },
             "src/third_party/vulkan-deps/vulkan-utility-libraries/src": {
                 "fetcher": "fetchFromGitiles",
-                "hash": "sha256-buxOdupK/w1sFGGHrEI+On2/mR0q5whvQNKUI8dxJ60=",
-                "url": "https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-Utility-Libraries",
-                "rev": "dcfce25b439a2785f2c90b184e1964898070b4f1"
+                "hash": "sha256-7M47ZCbNwIppaotMfJTFTRsYNvSZNc0FUufoyXyUu/g=",
+                "rev": "dd26ae7065a9ed60c8ab517ed79bf7935394aec7",
+                "url": "https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-Utility-Libraries"
             },
             "src/third_party/vulkan-deps/vulkan-validation-layers/src": {
                 "fetcher": "fetchFromGitiles",
-                "hash": "sha256-LJd7pkcFd8k4npEv8mJy+47xo/5CXMN75ZAtDp+v6FI=",
-                "url": "https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-ValidationLayers",
-                "rev": "281e1c1c6b51bb6b33f88c18ed4da58ac3024311"
+                "hash": "sha256-lj6MIQctcK6gsJlLdLwQ9PHbiAtTbNIPinii8vGZdGk=",
+                "rev": "b89f48ae89ec064c91e8b77468cebc18c3faa682",
+                "url": "https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-ValidationLayers"
             },
             "src/third_party/vulkan_memory_allocator": {
                 "fetcher": "fetchFromGitiles",
-                "hash": "sha256-YzxHZagz/M8Y54UnI4h1wu5jSTuaOgv0ifC9d3fJZlQ=",
-                "url": "https://chromium.googlesource.com/external/github.com/GPUOpen-LibrariesAndSDKs/VulkanMemoryAllocator.git",
-                "rev": "56300b29fbfcc693ee6609ddad3fdd5b7a449a21"
-            },
-            "src/third_party/wayland/src": {
-                "fetcher": "fetchFromGitiles",
-                "hash": "sha256-0ICSMZhnsLqMNfqSGjqM3p4ssxptkBtt7EMCpxknW4A=",
-                "url": "https://chromium.googlesource.com/external/anongit.freedesktop.org/git/wayland/wayland.git",
-                "rev": "3fda2fbf51db54398c0155facee82cc9533958a2"
+                "hash": "sha256-FdRPPdLZHj3RX3YzcmF58JJuIqeWQV3TDiiXPEW2lsc=",
+                "rev": "e87036508bb156f9986ea959323de1869e328f58",
+                "url": "https://chromium.googlesource.com/external/github.com/GPUOpen-LibrariesAndSDKs/VulkanMemoryAllocator.git"
             },
-            "src/third_party/wayland-protocols/src": {
+            "src/third_party/wayland-protocols/gtk": {
                 "fetcher": "fetchFromGitiles",
-                "hash": "sha256-3QK+ZN6IFUFkDxySSoQwP1J3JnTlD7JPaUk6Tr/d/k4=",
-                "url": "https://chromium.googlesource.com/external/anongit.freedesktop.org/git/wayland/wayland-protocols.git",
-                "rev": "4624cfaaf563cd7be5e2e2087c8de6d3a48ea867"
+                "hash": "sha256-75XNnLkF5Lt1LMRGT+T61k0/mLa3kkynfN+QWvZ0LiQ=",
+                "rev": "40ebed3a03aef096addc0af09fec4ec529d882a0",
+                "url": "https://chromium.googlesource.com/external/github.com/GNOME/gtk.git"
             },
             "src/third_party/wayland-protocols/kde": {
                 "fetcher": "fetchFromGitiles",
                 "hash": "sha256-Dmcp/2ms/k7NxPPmPkp0YNfM9z2Es1ZO0uX10bc7N2Y=",
-                "url": "https://chromium.googlesource.com/external/github.com/KDE/plasma-wayland-protocols.git",
-                "rev": "0b07950714b3a36c9b9f71fc025fc7783e82926e"
+                "rev": "0b07950714b3a36c9b9f71fc025fc7783e82926e",
+                "url": "https://chromium.googlesource.com/external/github.com/KDE/plasma-wayland-protocols.git"
             },
-            "src/third_party/wayland-protocols/gtk": {
+            "src/third_party/wayland-protocols/src": {
                 "fetcher": "fetchFromGitiles",
-                "hash": "sha256-75XNnLkF5Lt1LMRGT+T61k0/mLa3kkynfN+QWvZ0LiQ=",
-                "url": "https://chromium.googlesource.com/external/github.com/GNOME/gtk.git",
-                "rev": "40ebed3a03aef096addc0af09fec4ec529d882a0"
+                "hash": "sha256-3QK+ZN6IFUFkDxySSoQwP1J3JnTlD7JPaUk6Tr/d/k4=",
+                "rev": "4624cfaaf563cd7be5e2e2087c8de6d3a48ea867",
+                "url": "https://chromium.googlesource.com/external/anongit.freedesktop.org/git/wayland/wayland-protocols.git"
+            },
+            "src/third_party/wayland/src": {
+                "fetcher": "fetchFromGitiles",
+                "hash": "sha256-aVcy7bW1cqEKbowlVgfa9FI8/oG7k5CzPZbRl+cPcX8=",
+                "rev": "a8c7553ec9af6462474524fd2bb4e9a7dc7217dd",
+                "url": "https://chromium.googlesource.com/external/anongit.freedesktop.org/git/wayland/wayland.git"
             },
             "src/third_party/webdriver/pylib": {
                 "fetcher": "fetchFromGitiles",
                 "hash": "sha256-WIqWXIKVgElgg8P8laLAlUrgwodGdeVcwohZxnPKedw=",
-                "url": "https://chromium.googlesource.com/external/github.com/SeleniumHQ/selenium/py.git",
-                "rev": "fc5e7e70c098bfb189a9a74746809ad3c5c34e04"
+                "rev": "fc5e7e70c098bfb189a9a74746809ad3c5c34e04",
+                "url": "https://chromium.googlesource.com/external/github.com/SeleniumHQ/selenium/py.git"
             },
             "src/third_party/webgl/src": {
                 "fetcher": "fetchFromGitiles",
-                "hash": "sha256-dubsIPZKBGOzANGvMtQxFKFIHr0laDUGpzgRyEOjHMU=",
-                "url": "https://chromium.googlesource.com/external/khronosgroup/webgl.git",
-                "rev": "f4bf599a8b575df685c31d9c4729a70a04e377ed"
+                "hash": "sha256-h4by/1pp9oQGetZNnc1Rt5X5izgQf8ZUZDfsxQacqC0=",
+                "rev": "eab0468fc0405b21e59bea30a441d8e38c9db2b7",
+                "url": "https://chromium.googlesource.com/external/khronosgroup/webgl.git"
             },
             "src/third_party/webgpu-cts/src": {
                 "fetcher": "fetchFromGitiles",
-                "hash": "sha256-E39f0wy72TwQ9IM4QquqWxwDiHZOUI8hWkx2QDFcRog=",
-                "url": "https://chromium.googlesource.com/external/github.com/gpuweb/cts.git",
-                "rev": "3dbe4ce12983ccc1ad42e228057c7d8adc17cb78"
+                "hash": "sha256-Wch3opAvU/6rJVptOKxOJssev8NhNpbYZddScTlzuMw=",
+                "rev": "4c8d2f67ecd03fbd3cb4c517ef8461427b6d635d",
+                "url": "https://chromium.googlesource.com/external/github.com/gpuweb/cts.git"
             },
             "src/third_party/webrtc": {
                 "fetcher": "fetchFromGitiles",
-                "hash": "sha256-ju7sX1jrzg5BZOqdkcnFymRTqdFi7xkeHznKJQB1+08=",
-                "url": "https://webrtc.googlesource.com/src.git",
-                "rev": "5ab829e4ca8f63be6b4ed1d98eee382d7307d34e"
+                "hash": "sha256-KpiNGAue945kGCuQYGhxiWVUFTE1tcntSAXBZdkrE9A=",
+                "rev": "d8f2b0380b3ec980af35ce4b92ba6a211ec8c76d",
+                "url": "https://webrtc.googlesource.com/src.git"
             },
-            "src/third_party/wuffs/src": {
+            "src/third_party/weston/src": {
                 "fetcher": "fetchFromGitiles",
-                "hash": "sha256-HP8Vf1C9DuA9H+busf3lFoF9SsYqviLKv0l73CxmNEI=",
-                "url": "https://skia.googlesource.com/external/github.com/google/wuffs-mirror-release-c.git",
-                "rev": "fe9d08f2b6e80af691bfb1a718e144c49a1b9eba"
+                "hash": "sha256-sfJm1CBGXX13pFcqeOVPqWlXrUfwjRl+rYf2BoT8Bt8=",
+                "rev": "775f8a1edf357f59e6b2e284297f396f4fac95a4",
+                "url": "https://chromium.googlesource.com/external/anongit.freedesktop.org/git/wayland/weston.git"
             },
-            "src/third_party/weston/src": {
+            "src/third_party/wuffs/src": {
                 "fetcher": "fetchFromGitiles",
-                "hash": "sha256-y2srFaPUOoB2umzpo4+hFfhNlqXM2AoMGOpUy/ZSacg=",
-                "url": "https://chromium.googlesource.com/external/anongit.freedesktop.org/git/wayland/weston.git",
-                "rev": "ccf29cb237c3ed09c5f370f35239c93d07abfdd7"
+                "hash": "sha256-HP8Vf1C9DuA9H+busf3lFoF9SsYqviLKv0l73CxmNEI=",
+                "rev": "fe9d08f2b6e80af691bfb1a718e144c49a1b9eba",
+                "url": "https://skia.googlesource.com/external/github.com/google/wuffs-mirror-release-c.git"
             },
             "src/third_party/xdg-utils": {
                 "fetcher": "fetchFromGitiles",
-                "hash": "sha256-WuQ9uDq+QD17Y20ACFGres4nbkeOiTE2y+tY1avAT5U=",
-                "url": "https://chromium.googlesource.com/chromium/deps/xdg-utils.git",
-                "rev": "cb54d9db2e535ee4ef13cc91b65a1e2741a94a44"
+                "hash": "sha256-t3uV9JkkQQIwmezzSoEdTMLSizZdLQB7eLKTRQGH4kQ=",
+                "rev": "d80274d5869b17b8c9067a1022e4416ee7ed5e0d",
+                "url": "https://chromium.googlesource.com/chromium/deps/xdg-utils.git"
             },
             "src/third_party/xnnpack/src": {
                 "fetcher": "fetchFromGitiles",
-                "hash": "sha256-s9Avx9o+1igKulOpKhtbbkoINuh1wNercPszRaA4TZM=",
-                "url": "https://chromium.googlesource.com/external/github.com/google/XNNPACK.git",
-                "rev": "bbbaa7352a3ea729987d3e654d37be93e8009691"
+                "hash": "sha256-vsn3lrog5affus0qxc4TK2Z/tdd/E6hBYeUQRWoDZPQ=",
+                "rev": "b9d4073a6913891ce9cbd8965c8d506075d2a45a",
+                "url": "https://chromium.googlesource.com/external/github.com/google/XNNPACK.git"
             },
-            "src/tools/page_cycler/acid3": {
+            "src/third_party/zstd/src": {
                 "fetcher": "fetchFromGitiles",
-                "hash": "sha256-s/49EaYQRsyxuLejXc1zGDYTD7uO0ddaQIJBP50Bvw0=",
-                "url": "https://chromium.googlesource.com/chromium/deps/acid3.git",
-                "rev": "a926d0a32e02c4c03ae95bb798e6c780e0e184ba"
+                "hash": "sha256-yzv/R/GnqlXLeAjBEIev+8uM7MC0HeK0MfppnMTJ7Eg=",
+                "rev": "25822342be59d831bad65426ae51f5cc22157b09",
+                "url": "https://chromium.googlesource.com/external/github.com/facebook/zstd.git"
             },
-            "src/third_party/zstd/src": {
+            "src/tools/page_cycler/acid3": {
                 "fetcher": "fetchFromGitiles",
-                "hash": "sha256-95OOpYKGve+YWzqqguQIg1emTOAuaGyYpWxrWVDOKAQ=",
-                "url": "https://chromium.googlesource.com/external/github.com/facebook/zstd.git",
-                "rev": "cdceb0fce59785c841bf697e00067163106064e1"
+                "hash": "sha256-s/49EaYQRsyxuLejXc1zGDYTD7uO0ddaQIJBP50Bvw0=",
+                "rev": "a926d0a32e02c4c03ae95bb798e6c780e0e184ba",
+                "url": "https://chromium.googlesource.com/chromium/deps/acid3.git"
             },
             "src/v8": {
                 "fetcher": "fetchFromGitiles",
-                "hash": "sha256-GevDXfVX4UxwTbgp2ZQbp3AFOHv5tECmyqLGIyYi5Tw=",
-                "url": "https://chromium.googlesource.com/v8/v8.git",
-                "rev": "71b6b5a68e0883c155e01368aace6eb6d71b85f3"
-            },
-            "src/third_party/nan": {
-                "fetcher": "fetchFromGitHub",
-                "hash": "sha256-cwti+BWmF/l/dqa/cN0C587EK4WwRWcWy6gjFVkaMTg=",
-                "owner": "nodejs",
-                "repo": "nan",
-                "rev": "e14bdcd1f72d62bca1d541b66da43130384ec213"
-            },
-            "src/third_party/electron_node": {
-                "fetcher": "fetchFromGitHub",
-                "hash": "sha256-yvMU6dXRzHP7l6axo3g4svJ1H2edtFvX2MVMm3K1bEc=",
-                "owner": "nodejs",
-                "repo": "node",
-                "rev": "v18.18.2"
-            },
-            "src/third_party/squirrel.mac": {
-                "fetcher": "fetchFromGitHub",
-                "hash": "sha256-4GfKQg0u3c9GI+jl3ixESNqWXQJKRMi+00QT0s2Shqw=",
-                "owner": "Squirrel",
-                "repo": "Squirrel.Mac",
-                "rev": "0e5d146ba13101a1302d59ea6e6e0b3cace4ae38"
-            },
-            "src/third_party/squirrel.mac/vendor/ReactiveObjC": {
-                "fetcher": "fetchFromGitHub",
-                "hash": "sha256-/MCqC1oFe3N9TsmfVLgl+deR6qHU6ZFQQjudb9zB5Mo=",
-                "owner": "ReactiveCocoa",
-                "repo": "ReactiveObjC",
-                "rev": "74ab5baccc6f7202c8ac69a8d1e152c29dc1ea76"
-            },
-            "src/third_party/squirrel.mac/vendor/Mantle": {
-                "fetcher": "fetchFromGitHub",
-                "hash": "sha256-ogFkMJybf2Ue606ojXJu6Gy5aXSi1bSKm60qcTAIaPk=",
-                "owner": "Mantle",
-                "repo": "Mantle",
-                "rev": "78d3966b3c331292ea29ec38661b25df0a245948"
+                "hash": "sha256-Fn4HoS7O2J3nGXFyq7r7AheRQzKy80USTQnNnC4rWqM=",
+                "rev": "36e4828ab658b8ad72f80974883c4c94f6e7012c",
+                "url": "https://chromium.googlesource.com/v8/v8.git"
             }
         },
-        "version": "28.3.1",
-        "modules": "119",
+        "electron_yarn_hash": "1yq854829a4q0yqyjyn2lq4l3amsqdhfd7fjcnc3mz8l2ci3n964",
+        "modules": "118",
+        "node": "18.17.1",
+        "version": "27.3.11"
+    },
+    "28": {
         "chrome": "120.0.6099.291",
-        "node": "18.18.2",
         "chromium": {
-            "version": "120.0.6099.291",
             "deps": {
                 "gn": {
-                    "version": "2023-10-23",
-                    "url": "https://gn.googlesource.com/gn",
+                    "hash": "sha256-dwluGOfq05swtBM5gg4a6gY3IpFHaKKkD0TV1XW7c7k=",
                     "rev": "e4702d7409069c4f12d45ea7b7f0890717ca3f4b",
-                    "hash": "sha256-dwluGOfq05swtBM5gg4a6gY3IpFHaKKkD0TV1XW7c7k="
+                    "url": "https://gn.googlesource.com/gn",
+                    "version": "2023-10-23"
                 }
-            }
+            },
+            "version": "120.0.6099.291"
         },
         "chromium_npm_hash": "sha256-zexxXAAJDnhMmh7HfBO1V1z1Yds06C3gSpXacsbjUb4=",
-        "electron_yarn_hash": "117vxam1044yy2akwjfhvb5dpfnv667pwbg92ac43551xfn0slcg"
-    },
-    "27": {
         "deps": {
-            "src/electron": {
-                "fetcher": "fetchFromGitHub",
-                "hash": "sha256-DmDAKUUyiDASGGylDVQe2OkDVfiA1ficDG+oaMbKqdo=",
-                "owner": "electron",
-                "repo": "electron",
-                "rev": "v27.3.11"
-            },
             "src": {
                 "fetcher": "fetchFromGitiles",
-                "hash": "sha256-3yFHjd3LMXVbF4LX6Bi3yJF0CDVug0cDpGFbP8Ibvk4=",
-                "url": "https://chromium.googlesource.com/chromium/src.git",
-                "rev": "118.0.5993.159",
-                "postFetch": "rm -r $out/third_party/blink/web_tests; rm -r $out/third_party/hunspell/tests; rm -r $out/content/test/data; rm -r $out/courgette/testdata; rm -r $out/extensions/test/data; rm -r $out/media/test/data; "
-            },
-            "src/third_party/clang-format/script": {
-                "fetcher": "fetchFromGitiles",
-                "hash": "sha256-7VvofDDQe+SoMRBfVk26q+C+OPyOE7QH35wVWkfDKxs=",
-                "url": "https://chromium.googlesource.com/external/github.com/llvm/llvm-project/clang/tools/clang-format.git",
-                "rev": "e5337933f2951cacd3aeacd238ce4578163ca0b9"
-            },
-            "src/third_party/libc++/src": {
-                "fetcher": "fetchFromGitiles",
-                "hash": "sha256-YP1LAUaV8epDAsd9LOovdXUyzpaLgffOJcGM6VmTaKc=",
-                "url": "https://chromium.googlesource.com/external/github.com/llvm/llvm-project/libcxx.git",
-                "rev": "84fb809dd6dae36d556dc0bb702c6cc2ce9d4b80"
-            },
-            "src/third_party/libc++abi/src": {
-                "fetcher": "fetchFromGitiles",
-                "hash": "sha256-CBUw50T/jFMXU0cR+BQH6JyEY3mHamLM6kA8YdvI24Q=",
-                "url": "https://chromium.googlesource.com/external/github.com/llvm/llvm-project/libcxxabi.git",
-                "rev": "331847d7a5e6f8706689cf5d468e6e58c868fa10"
-            },
-            "src/third_party/libunwind/src": {
-                "fetcher": "fetchFromGitiles",
-                "hash": "sha256-rqmY4JNm4zuYqXs7o+1QhNnaNX4Cmt7PTJMGploHPnY=",
-                "url": "https://chromium.googlesource.com/external/github.com/llvm/llvm-project/libunwind.git",
-                "rev": "a321409e66c212098e755cfae1a978bbcff1ccbb"
+                "hash": "sha256-g0aRiWCPrXPKBsOsAgtLmRbOeYigtm05MrWH6/fhQs0=",
+                "postFetch": "rm -r $out/third_party/blink/web_tests; rm -r $out/third_party/hunspell/tests; rm -r $out/content/test/data; rm -r $out/courgette/testdata; rm -r $out/extensions/test/data; rm -r $out/media/test/data; ",
+                "rev": "120.0.6099.291",
+                "url": "https://chromium.googlesource.com/chromium/src.git"
             },
             "src/chrome/test/data/perf/canvas_bench": {
                 "fetcher": "fetchFromGitiles",
                 "hash": "sha256-svOuyBGKloBLM11xLlWCDsB4PpRjdKTBdW2UEW4JQjM=",
-                "url": "https://chromium.googlesource.com/chromium/canvas_bench.git",
-                "rev": "a7b40ea5ae0239517d78845a5fc9b12976bfc732"
+                "rev": "a7b40ea5ae0239517d78845a5fc9b12976bfc732",
+                "url": "https://chromium.googlesource.com/chromium/canvas_bench.git"
             },
             "src/chrome/test/data/perf/frame_rate/content": {
                 "fetcher": "fetchFromGitiles",
                 "hash": "sha256-t4kcuvH0rkPBkcdiMsoNQaRwU09eU+oSvyHDiAHrKXo=",
-                "url": "https://chromium.googlesource.com/chromium/frame_rate/content.git",
-                "rev": "c10272c88463efeef6bb19c9ec07c42bc8fe22b9"
+                "rev": "c10272c88463efeef6bb19c9ec07c42bc8fe22b9",
+                "url": "https://chromium.googlesource.com/chromium/frame_rate/content.git"
             },
             "src/chrome/test/data/xr/webvr_info": {
                 "fetcher": "fetchFromGitiles",
                 "hash": "sha256-BsAPwc4oEWri0TlqhyxqFNqKdfgVSrB0vQyISmYY4eg=",
-                "url": "https://chromium.googlesource.com/external/github.com/toji/webvr.info.git",
-                "rev": "c58ae99b9ff9e2aa4c524633519570bf33536248"
+                "rev": "c58ae99b9ff9e2aa4c524633519570bf33536248",
+                "url": "https://chromium.googlesource.com/external/github.com/toji/webvr.info.git"
             },
             "src/docs/website": {
                 "fetcher": "fetchFromGitiles",
-                "hash": "sha256-6/LSJGUVZuJe1WIBJEJO/dXZYnsby+X3EzeBbvWjUZU=",
-                "url": "https://chromium.googlesource.com/website.git",
-                "rev": "243c1406199960e001e1dceccafc6fc2db6897f9"
+                "hash": "sha256-+UawYfW5FAMpv0TbzSR8qITPGUQulLIZ0mUh6ZdnmMI=",
+                "rev": "07714da3c28b942dc8522affed4487403e971545",
+                "url": "https://chromium.googlesource.com/website.git"
+            },
+            "src/electron": {
+                "fetcher": "fetchFromGitHub",
+                "hash": "sha256-Y0uNoq5LhlFMxQfqrTjzOokbB7Y6UUAlBCj+Nghiz5w=",
+                "owner": "electron",
+                "repo": "electron",
+                "rev": "v28.3.1"
             },
             "src/media/cdm/api": {
                 "fetcher": "fetchFromGitiles",
                 "hash": "sha256-6J6aSYW0or99VAgMNJJOdJqMJspoG7w1HxDN50MV5bw=",
-                "url": "https://chromium.googlesource.com/chromium/cdm.git",
-                "rev": "fef0b5aa1bd31efb88dfab804bdbe614f3d54f28"
+                "rev": "fef0b5aa1bd31efb88dfab804bdbe614f3d54f28",
+                "url": "https://chromium.googlesource.com/chromium/cdm.git"
             },
             "src/net/third_party/quiche/src": {
                 "fetcher": "fetchFromGitiles",
-                "hash": "sha256-hB3gUqi/9SI9PGNkXNpli/TifI1kJEBScqRFIw7hm4c=",
-                "url": "https://quiche.googlesource.com/quiche.git",
-                "rev": "7d201495d8a5ef115787765fb12af0d5575281c1"
+                "hash": "sha256-JXWGEsJrXRXs2BrkWIC8cUBD6uvt8ftb9V5Dy2yLc/w=",
+                "rev": "a01a131ca6df63e774809d623f47e8cf28c574cc",
+                "url": "https://quiche.googlesource.com/quiche.git"
             },
             "src/third_party/angle": {
                 "fetcher": "fetchFromGitiles",
-                "hash": "sha256-It05E3+qG17dEbhbaX/VQJaydWOQ1mpsj95dT5IJkgo=",
-                "url": "https://chromium.googlesource.com/angle/angle.git",
-                "rev": "05f45adc147393562b518ca1f82a3ccba7ee40f7"
+                "hash": "sha256-aOV7kxrF8FeoHYodZjaUrDDUtpXg2gUiZg6Olv90puk=",
+                "rev": "6fff8ebc937f07e31473ac014a55f662248ab39a",
+                "url": "https://chromium.googlesource.com/angle/angle.git"
+            },
+            "src/third_party/angle/third_party/VK-GL-CTS/src": {
+                "fetcher": "fetchFromGitiles",
+                "hash": "sha256-+g1yjF1yETrL1X6Cxu5mhPWXukWygg1dnawU8S9cGkA=",
+                "rev": "7d738783bf286e82937e431c295d4682f3767267",
+                "url": "https://chromium.googlesource.com/external/github.com/KhronosGroup/VK-GL-CTS"
             },
             "src/third_party/angle/third_party/glmark2/src": {
                 "fetcher": "fetchFromGitiles",
                 "hash": "sha256-L7+zWM0qn8WFhmON7DGvarTsN1YHt1sn5+hazTOZrrk=",
-                "url": "https://chromium.googlesource.com/external/github.com/glmark2/glmark2",
-                "rev": "ca8de51fedb70bace5351c6b002eb952c747e889"
+                "rev": "ca8de51fedb70bace5351c6b002eb952c747e889",
+                "url": "https://chromium.googlesource.com/external/github.com/glmark2/glmark2"
             },
             "src/third_party/angle/third_party/rapidjson/src": {
                 "fetcher": "fetchFromGitiles",
                 "hash": "sha256-btUl1a/B0sXwf/+hyvCvVJjWqIkXfVYCpHm3TeBuOxk=",
-                "url": "https://chromium.googlesource.com/external/github.com/Tencent/rapidjson",
-                "rev": "781a4e667d84aeedbeb8184b7b62425ea66ec59f"
-            },
-            "src/third_party/angle/third_party/VK-GL-CTS/src": {
-                "fetcher": "fetchFromGitiles",
-                "hash": "sha256-LWGll3KiMYndiLZBizhN+mzELjYpSxvtIctH+LO+20Q=",
-                "url": "https://chromium.googlesource.com/external/github.com/KhronosGroup/VK-GL-CTS",
-                "rev": "385ae8bed1f99e497cdf2f3a5640905b90e69292"
+                "rev": "781a4e667d84aeedbeb8184b7b62425ea66ec59f",
+                "url": "https://chromium.googlesource.com/external/github.com/Tencent/rapidjson"
             },
             "src/third_party/anonymous_tokens/src": {
                 "fetcher": "fetchFromGitiles",
-                "hash": "sha256-TcNIocV0p53NJCudvy8wf+fIPIP2tnkoBf1F7mEBFLs=",
-                "url": "https://chromium.googlesource.com/external/github.com/google/anonymous-tokens.git",
-                "rev": "8c8d20953d502db31fec2353b199e6c22ef0236e"
-            },
-            "src/third_party/content_analysis_sdk/src": {
-                "fetcher": "fetchFromGitiles",
-                "hash": "sha256-auHBX00DSvyMyhEsZGkpKh9KOO2RcaeP9PK6kmmMYls=",
-                "url": "https://chromium.googlesource.com/external/github.com/chromium/content_analysis_sdk.git",
-                "rev": "8d5118720805fdce0dd3ee2999c964501de4532c"
-            },
-            "src/third_party/dav1d/libdav1d": {
-                "fetcher": "fetchFromGitiles",
-                "hash": "sha256-KSo2s3M3S13gY84NlAdnPsjoKfJZy7ipTlWSvUHD9Ak=",
-                "url": "https://chromium.googlesource.com/external/github.com/videolan/dav1d.git",
-                "rev": "f8ae94eca0f53502a2cddd29a263c1edea4822a0"
-            },
-            "src/third_party/dawn": {
-                "fetcher": "fetchFromGitiles",
-                "hash": "sha256-7iCJ1h51S/8pxQRMoDtGXzyuP6Dzxnc/1Cu4ALU8NYg=",
-                "url": "https://dawn.googlesource.com/dawn.git",
-                "rev": "deb3b674b26854204c8082ed93926207e42d3cf2"
-            },
-            "src/third_party/dawn/third_party/glfw": {
-                "fetcher": "fetchFromGitiles",
-                "hash": "sha256-TwAPRjQxIz3J+zbNxzCp5Tek7MwisxdekMpY5QGsKyg=",
-                "url": "https://chromium.googlesource.com/external/github.com/glfw/glfw",
-                "rev": "62e175ef9fae75335575964c845a302447c012c7"
-            },
-            "src/third_party/dawn/third_party/dxc": {
-                "fetcher": "fetchFromGitiles",
-                "hash": "sha256-u29t+pF7aRfhRmi36YyEPcQU7gIDqsjrf38+C0YIpFk=",
-                "url": "https://chromium.googlesource.com/external/github.com/microsoft/DirectXShaderCompiler",
-                "rev": "50c4c887f1ccfa1a4bfb158b7dbc93058659ed01"
-            },
-            "src/third_party/dawn/third_party/dxheaders": {
-                "fetcher": "fetchFromGitiles",
-                "hash": "sha256-0Miw1Cy/jmOo7bLFBOHuTRDV04cSeyvUEyPkpVsX9DA=",
-                "url": "https://chromium.googlesource.com/external/github.com/microsoft/DirectX-Headers",
-                "rev": "980971e835876dc0cde415e8f9bc646e64667bf7"
-            },
-            "src/third_party/dawn/third_party/khronos/OpenGL-Registry": {
-                "fetcher": "fetchFromGitiles",
-                "hash": "sha256-K3PcRIiD3AmnbiSm5TwaLs4Gu9hxaN8Y91WMKK8pOXE=",
-                "url": "https://chromium.googlesource.com/external/github.com/KhronosGroup/OpenGL-Registry",
-                "rev": "5bae8738b23d06968e7c3a41308568120943ae77"
-            },
-            "src/third_party/dawn/third_party/khronos/EGL-Registry": {
-                "fetcher": "fetchFromGitiles",
-                "hash": "sha256-Z6DwLfgQ1wsJXz0KKJyVieOatnDmx3cs0qJ6IEgSq1A=",
-                "url": "https://chromium.googlesource.com/external/github.com/KhronosGroup/EGL-Registry",
-                "rev": "7dea2ed79187cd13f76183c4b9100159b9e3e071"
-            },
-            "src/third_party/dawn/third_party/webgpu-cts": {
-                "fetcher": "fetchFromGitiles",
-                "hash": "sha256-gbZpmcbqLisjLb6vnKKvHS6eRqjqvavvTRgxJsaE/RQ=",
-                "url": "https://chromium.googlesource.com/external/github.com/gpuweb/cts",
-                "rev": "5dfa3b88f0863c3949f713804e0461c9cc34a030"
-            },
-            "src/third_party/highway/src": {
-                "fetcher": "fetchFromGitiles",
-                "hash": "sha256-kNb9UVcFq2BIf9nftUgN8ciFFCzRCou/sLwVf08jf3E=",
-                "url": "https://chromium.googlesource.com/external/github.com/google/highway.git",
-                "rev": "8f20644eca693cfb74aa795b0006b6779c370e7a"
+                "hash": "sha256-2B0j9vNF8nMhmedk+ghz4JJJiDKN6jnVfdqsa4zRWeU=",
+                "rev": "47d423347823088a21b26262ca553eadb8e5b220",
+                "url": "https://chromium.googlesource.com/external/github.com/google/anonymous-tokens.git"
             },
-            "src/third_party/google_benchmark/src": {
+            "src/third_party/beto-core/src": {
                 "fetcher": "fetchFromGitiles",
-                "hash": "sha256-h2ryAQAuHI54Cni88L85e7Np4KATGVTRdDcmUvCNeWc=",
-                "url": "https://chromium.googlesource.com/external/github.com/google/benchmark.git",
-                "rev": "b177433f3ee2513b1075140c723d73ab8901790f"
+                "hash": "sha256-qgsPK7RyVqGRji0sTcMck1JqX9iCsYIExGoGwNZyVT0=",
+                "rev": "b902b346037ea3f4aadf8177021f6f917b16e648",
+                "url": "https://beto-core.googlesource.com/beto-core.git"
             },
             "src/third_party/boringssl/src": {
                 "fetcher": "fetchFromGitiles",
-                "hash": "sha256-P0Aj2Puy6S1aRIHrAhmokiAmSmHfuWQR6UW/AbQFW+M=",
-                "url": "https://boringssl.googlesource.com/boringssl.git",
-                "rev": "85081c6b3c0b26129893c1bff6bfa42bc3ba2d2c"
+                "hash": "sha256-hxPNJzWS2f4iUsNYwRvxiTL9vRrcZzZT5KpIx3+WuGM=",
+                "rev": "c38dc29860a72540eb2c4fdb8a8bfb27ef94ddf3",
+                "url": "https://boringssl.googlesource.com/boringssl.git"
             },
             "src/third_party/breakpad/breakpad": {
                 "fetcher": "fetchFromGitiles",
                 "hash": "sha256-8AkC/8oX4OWAcV21laJ0AeMRB9G04rFc6UJFy7Wus4A=",
-                "url": "https://chromium.googlesource.com/breakpad/breakpad.git",
-                "rev": "8988364bcddd9b194b0bf931c10bc125987330ed"
+                "rev": "8988364bcddd9b194b0bf931c10bc125987330ed",
+                "url": "https://chromium.googlesource.com/breakpad/breakpad.git"
             },
             "src/third_party/cast_core/public/src": {
                 "fetcher": "fetchFromGitiles",
                 "hash": "sha256-AalRQhJmornCqmvE2+36J/3LubaA0jr6P1PXy32lX4I=",
-                "url": "https://chromium.googlesource.com/cast_core/public",
-                "rev": "71f51fd6fa45fac73848f65421081edd723297cd"
+                "rev": "71f51fd6fa45fac73848f65421081edd723297cd",
+                "url": "https://chromium.googlesource.com/cast_core/public"
             },
             "src/third_party/catapult": {
                 "fetcher": "fetchFromGitiles",
-                "hash": "sha256-AK85yVeCR3GKGtdW8G9Of+6UMJirJ9BNVyp9pffft7s=",
-                "url": "https://chromium.googlesource.com/catapult.git",
-                "rev": "f16ca3c78e46cefa982100444844da3fcb25390e"
+                "hash": "sha256-jueHC5YC+WmGRtGZ8yD6QT2pVj21n1THpIz/vI9M334=",
+                "rev": "47efdb4b1428e549c58a6d6c2fa79c4a8ceaf9b4",
+                "url": "https://chromium.googlesource.com/catapult.git"
             },
             "src/third_party/ced/src": {
                 "fetcher": "fetchFromGitiles",
                 "hash": "sha256-ySG74Rj2i2c/PltEgHVEDq+N8yd9gZmxNktc56zIUiY=",
-                "url": "https://chromium.googlesource.com/external/github.com/google/compact_enc_det.git",
-                "rev": "ba412eaaacd3186085babcd901679a48863c7dd5"
+                "rev": "ba412eaaacd3186085babcd901679a48863c7dd5",
+                "url": "https://chromium.googlesource.com/external/github.com/google/compact_enc_det.git"
             },
             "src/third_party/chromium-variations": {
                 "fetcher": "fetchFromGitiles",
-                "hash": "sha256-2lP3uGdqIZY3DpxGzfDhR2dW+o3Arduaeu56Au7h/5Q=",
-                "url": "https://chromium.googlesource.com/chromium-variations.git",
-                "rev": "e0c145ca93c0439a65bcb1607e813edfbc97520b"
+                "hash": "sha256-cRFzDmGoyrxwPDVvatGm3EutOXtWqqlI7v7BeX5d43s=",
+                "rev": "cb7fe7e32de8b885ccdd6293444d8e4028b03eca",
+                "url": "https://chromium.googlesource.com/chromium-variations.git"
+            },
+            "src/third_party/clang-format/script": {
+                "fetcher": "fetchFromGitiles",
+                "hash": "sha256-7VvofDDQe+SoMRBfVk26q+C+OPyOE7QH35wVWkfDKxs=",
+                "rev": "e5337933f2951cacd3aeacd238ce4578163ca0b9",
+                "url": "https://chromium.googlesource.com/external/github.com/llvm/llvm-project/clang/tools/clang-format.git"
             },
             "src/third_party/cld_3/src": {
                 "fetcher": "fetchFromGitiles",
                 "hash": "sha256-C3MOMBUy9jgkT9BAi/Fgm2UH4cxRuwSBEcRl3hzM2Ss=",
-                "url": "https://chromium.googlesource.com/external/github.com/google/cld_3.git",
-                "rev": "b48dc46512566f5a2d41118c8c1116c4f96dc661"
+                "rev": "b48dc46512566f5a2d41118c8c1116c4f96dc661",
+                "url": "https://chromium.googlesource.com/external/github.com/google/cld_3.git"
             },
             "src/third_party/colorama/src": {
                 "fetcher": "fetchFromGitiles",
                 "hash": "sha256-6ZTdPYSHdQOLYMSnE+Tp7PgsVTs3U2awGu9Qb4Rg/tk=",
-                "url": "https://chromium.googlesource.com/external/colorama.git",
-                "rev": "3de9f013df4b470069d03d250224062e8cf15c49"
+                "rev": "3de9f013df4b470069d03d250224062e8cf15c49",
+                "url": "https://chromium.googlesource.com/external/colorama.git"
+            },
+            "src/third_party/content_analysis_sdk/src": {
+                "fetcher": "fetchFromGitiles",
+                "hash": "sha256-f5Jmk1MiGjaRdLun+v/GKVl8Yv9hOZMTQUSxgiJalcY=",
+                "rev": "9a408736204513e0e95dd2ab3c08de0d95963efc",
+                "url": "https://chromium.googlesource.com/external/github.com/chromium/content_analysis_sdk.git"
             },
             "src/third_party/cpu_features/src": {
                 "fetcher": "fetchFromGitiles",
                 "hash": "sha256-E8LoVzhe+TAmARWZTSuINlsVhzpUJMxPPCGe/dHZcyA=",
-                "url": "https://chromium.googlesource.com/external/github.com/google/cpu_features.git",
-                "rev": "936b9ab5515dead115606559502e3864958f7f6e"
+                "rev": "936b9ab5515dead115606559502e3864958f7f6e",
+                "url": "https://chromium.googlesource.com/external/github.com/google/cpu_features.git"
             },
             "src/third_party/cpuinfo/src": {
                 "fetcher": "fetchFromGitiles",
-                "hash": "sha256-oZjA2cMQMyhFcI+m6eOmdZ9A1oPAbyISeLxNyaoGivk=",
-                "url": "https://chromium.googlesource.com/external/github.com/pytorch/cpuinfo.git",
-                "rev": "c13d0bbb266d200a13532b5915d704c30d21081b"
+                "hash": "sha256-BcSG/1aa/cyT8CCd1Qdsm/yXa5bCrmrtaRxnYjwkspY=",
+                "rev": "76d5e8f5b563daa65340a60fce0e9aec73a936df",
+                "url": "https://chromium.googlesource.com/external/github.com/pytorch/cpuinfo.git"
             },
             "src/third_party/crc32c/src": {
                 "fetcher": "fetchFromGitiles",
                 "hash": "sha256-urg0bmnfMfHagLPELp4WrNCz1gBZ6DFOWpDue1KsMtc=",
-                "url": "https://chromium.googlesource.com/external/github.com/google/crc32c.git",
-                "rev": "fa5ade41ee480003d9c5af6f43567ba22e4e17e6"
+                "rev": "fa5ade41ee480003d9c5af6f43567ba22e4e17e6",
+                "url": "https://chromium.googlesource.com/external/github.com/google/crc32c.git"
+            },
+            "src/third_party/cros-components/src": {
+                "fetcher": "fetchFromGitiles",
+                "hash": "sha256-ZjLMlNDDN08v9SUFAuroPsu/6ADLHZAAFpv+bmaJA2Y=",
+                "rev": "25159cae8d540780cbeb994692ce4a3ea14cc094",
+                "url": "https://chromium.googlesource.com/external/google3/cros_components.git"
             },
             "src/third_party/cros_system_api": {
                 "fetcher": "fetchFromGitiles",
-                "hash": "sha256-wq7fJVNRSiyaADrCYB0TEmWQ//BJg4GYiHZNtMb1QlI=",
-                "url": "https://chromium.googlesource.com/chromiumos/platform2/system_api.git",
-                "rev": "81ac4449008dffea00e4e8f251f87fabc5abe0d3"
+                "hash": "sha256-wI4rx+oQ6i8yIB8NBp/O471O4pVJL3l+ez0t8I5oD/w=",
+                "rev": "00c21541508ea2c6863f1cda24ef88ef30309ae8",
+                "url": "https://chromium.googlesource.com/chromiumos/platform2/system_api.git"
             },
             "src/third_party/crossbench": {
                 "fetcher": "fetchFromGitiles",
                 "hash": "sha256-s/+y5bMj+CRnljFZ5aWKirPCsRUjckLOZ5F65WnPYSY=",
-                "url": "https://chromium.googlesource.com/crossbench.git",
-                "rev": "06981428c28d66678ebec13ca1fac3785cf51bb1"
+                "rev": "06981428c28d66678ebec13ca1fac3785cf51bb1",
+                "url": "https://chromium.googlesource.com/crossbench.git"
+            },
+            "src/third_party/dav1d/libdav1d": {
+                "fetcher": "fetchFromGitiles",
+                "hash": "sha256-9SrbxiOqXKTFf4qZ4Wqg9aoOMY8zv7NczTqN2+lXwCI=",
+                "rev": "47107e384bd1dc25674acf04d000a8cdc6195234",
+                "url": "https://chromium.googlesource.com/external/github.com/videolan/dav1d.git"
+            },
+            "src/third_party/dawn": {
+                "fetcher": "fetchFromGitiles",
+                "hash": "sha256-5srmcwL9Zqv91LwoBf9xuyusq1ghDo30Aj27Xo96yPc=",
+                "rev": "c7ed440d75861649d8a1ef4b775384f31211d902",
+                "url": "https://dawn.googlesource.com/dawn.git"
+            },
+            "src/third_party/dawn/third_party/dxc": {
+                "fetcher": "fetchFromGitiles",
+                "hash": "sha256-EAfTm0QZcihcU6ufBHE1QsYRggNWNKHjVZXcrUp/T+c=",
+                "rev": "64030a4e01e27c608b6c5f1ab5add43575e086f9",
+                "url": "https://chromium.googlesource.com/external/github.com/microsoft/DirectXShaderCompiler"
+            },
+            "src/third_party/dawn/third_party/dxheaders": {
+                "fetcher": "fetchFromGitiles",
+                "hash": "sha256-0Miw1Cy/jmOo7bLFBOHuTRDV04cSeyvUEyPkpVsX9DA=",
+                "rev": "980971e835876dc0cde415e8f9bc646e64667bf7",
+                "url": "https://chromium.googlesource.com/external/github.com/microsoft/DirectX-Headers"
+            },
+            "src/third_party/dawn/third_party/glfw": {
+                "fetcher": "fetchFromGitiles",
+                "hash": "sha256-TwAPRjQxIz3J+zbNxzCp5Tek7MwisxdekMpY5QGsKyg=",
+                "rev": "62e175ef9fae75335575964c845a302447c012c7",
+                "url": "https://chromium.googlesource.com/external/github.com/glfw/glfw"
+            },
+            "src/third_party/dawn/third_party/khronos/EGL-Registry": {
+                "fetcher": "fetchFromGitiles",
+                "hash": "sha256-Z6DwLfgQ1wsJXz0KKJyVieOatnDmx3cs0qJ6IEgSq1A=",
+                "rev": "7dea2ed79187cd13f76183c4b9100159b9e3e071",
+                "url": "https://chromium.googlesource.com/external/github.com/KhronosGroup/EGL-Registry"
+            },
+            "src/third_party/dawn/third_party/khronos/OpenGL-Registry": {
+                "fetcher": "fetchFromGitiles",
+                "hash": "sha256-K3PcRIiD3AmnbiSm5TwaLs4Gu9hxaN8Y91WMKK8pOXE=",
+                "rev": "5bae8738b23d06968e7c3a41308568120943ae77",
+                "url": "https://chromium.googlesource.com/external/github.com/KhronosGroup/OpenGL-Registry"
+            },
+            "src/third_party/dawn/third_party/webgpu-cts": {
+                "fetcher": "fetchFromGitiles",
+                "hash": "sha256-DqQIyZU6kYYRoouIiJnJBit8l38wPu08zbJhM2BQbs4=",
+                "rev": "2ef3f322027bec1bb5572f5083d478148d355d79",
+                "url": "https://chromium.googlesource.com/external/github.com/gpuweb/cts"
             },
             "src/third_party/depot_tools": {
                 "fetcher": "fetchFromGitiles",
-                "hash": "sha256-EXxlQGA7qwjuZ2Qg/rZinkllkdfCbKXz8c4JJEr4mtU=",
-                "url": "https://chromium.googlesource.com/chromium/tools/depot_tools.git",
-                "rev": "7e251262409b3401809e57c5314dd158210355b8"
+                "hash": "sha256-WtosDcMOV9eh0PhTbB5w3x3AYQs3Ui4h3mV0Ib0CBlc=",
+                "rev": "9f3b33a275e7a5b19d8ce4aba7960d2a38858681",
+                "url": "https://chromium.googlesource.com/chromium/tools/depot_tools.git"
             },
             "src/third_party/devtools-frontend/src": {
                 "fetcher": "fetchFromGitiles",
-                "hash": "sha256-D3W8U19i5pHWPLviMKbpzhiDoF6A0+tClYJcZWdbTqk=",
-                "url": "https://chromium.googlesource.com/devtools/devtools-frontend",
-                "rev": "bcf0ed097be848d234fb5290c1e4d69672dc5405"
+                "hash": "sha256-B/2Qk5LSElBPNImlZHVF3A4g0GFE9OHG/+4QADpK+8w=",
+                "rev": "a6c7f00333881a7ecf7044b725052ab0c8776d6f",
+                "url": "https://chromium.googlesource.com/devtools/devtools-frontend"
             },
             "src/third_party/dom_distiller_js/dist": {
                 "fetcher": "fetchFromGitiles",
                 "hash": "sha256-yuEBD2XQlV3FGI/i7lTmJbCqzeBiuG1Qow8wvsppGJw=",
-                "url": "https://chromium.googlesource.com/chromium/dom-distiller/dist.git",
-                "rev": "199de96b345ada7c6e7e6ba3d2fa7a6911b8767d"
+                "rev": "199de96b345ada7c6e7e6ba3d2fa7a6911b8767d",
+                "url": "https://chromium.googlesource.com/chromium/dom-distiller/dist.git"
             },
             "src/third_party/eigen3/src": {
                 "fetcher": "fetchFromGitiles",
-                "hash": "sha256-c/4bf5+sJEgsKOJ34wPDNm1+6QUzETZZr/nE4SG5nKA=",
-                "url": "https://chromium.googlesource.com/external/gitlab.com/libeigen/eigen.git",
-                "rev": "66e8f38891841bf88ee976a316c0c78a52f0cee5"
+                "hash": "sha256-mfS/l+V0If3fmXvA1p5gtyrNCU6IqWYrBbzm4jkXC3I=",
+                "rev": "aa6964bf3a34fd607837dd8123bc42465185c4f8",
+                "url": "https://chromium.googlesource.com/external/gitlab.com/libeigen/eigen.git"
+            },
+            "src/third_party/electron_node": {
+                "fetcher": "fetchFromGitHub",
+                "hash": "sha256-yvMU6dXRzHP7l6axo3g4svJ1H2edtFvX2MVMm3K1bEc=",
+                "owner": "nodejs",
+                "repo": "node",
+                "rev": "v18.18.2"
+            },
+            "src/third_party/emoji-segmenter/src": {
+                "fetcher": "fetchFromGitiles",
+                "hash": "sha256-oT9mAKoKnrsFsBAeTRfPOXM76HRQQabFAlPpfKUGFhs=",
+                "rev": "9ba6d25d0d9313569665d4a9d2b34f0f39f9a50e",
+                "url": "https://chromium.googlesource.com/external/github.com/google/emoji-segmenter.git"
+            },
+            "src/third_party/expat/src": {
+                "fetcher": "fetchFromGitiles",
+                "hash": "sha256-FXTDGAK03jc2wvazhRKqtsFRKZUYS/9HLpZNp4JfZJI=",
+                "rev": "441f98d02deafd9b090aea568282b28f66a50e36",
+                "url": "https://chromium.googlesource.com/external/github.com/libexpat/libexpat.git"
             },
             "src/third_party/farmhash/src": {
                 "fetcher": "fetchFromGitiles",
                 "hash": "sha256-5n58VEUxa/K//jAfZqG4cXyfxrp50ogWDNYcgiXVHdc=",
-                "url": "https://chromium.googlesource.com/external/github.com/google/farmhash.git",
-                "rev": "816a4ae622e964763ca0862d9dbd19324a1eaf45"
+                "rev": "816a4ae622e964763ca0862d9dbd19324a1eaf45",
+                "url": "https://chromium.googlesource.com/external/github.com/google/farmhash.git"
             },
             "src/third_party/ffmpeg": {
                 "fetcher": "fetchFromGitiles",
-                "hash": "sha256-uRgHTVaCAEaoqY20SmePQbApPmjimgggm5922KKfnbc=",
-                "url": "https://chromium.googlesource.com/chromium/third_party/ffmpeg.git",
-                "rev": "0ba37733400593b162e5ae9ff26b384cff49c250"
+                "hash": "sha256-lomUDmbbYW95BHEuYmm0pVqf++nYEa2XxeW4ag36tgc=",
+                "rev": "e1ca3f06adec15150a171bc38f550058b4bbb23b",
+                "url": "https://chromium.googlesource.com/chromium/third_party/ffmpeg.git"
             },
             "src/third_party/flac": {
                 "fetcher": "fetchFromGitiles",
                 "hash": "sha256-gvTFPNOlBfozptaH7lTb9iD/09AmpdT3kCl9ClszjEs=",
-                "url": "https://chromium.googlesource.com/chromium/deps/flac.git",
-                "rev": "689da3a7ed50af7448c3f1961d1791c7c1d9c85c"
+                "rev": "689da3a7ed50af7448c3f1961d1791c7c1d9c85c",
+                "url": "https://chromium.googlesource.com/chromium/deps/flac.git"
             },
             "src/third_party/flatbuffers/src": {
                 "fetcher": "fetchFromGitiles",
-                "hash": "sha256-yibx1WMAwNajROMGVqox3naMU09RSayxUaTCJ860euo=",
-                "url": "https://chromium.googlesource.com/external/github.com/google/flatbuffers.git",
-                "rev": "28861d1d7d5ec6ce34d4bbdc10bec4aace341167"
+                "hash": "sha256-LecJwLDG6szZZ/UOCFD+MDqH3NKawn0sdEwgnMt8wMM=",
+                "rev": "bcb9ef187628fe07514e57756d05e6a6296f7dc5",
+                "url": "https://chromium.googlesource.com/external/github.com/google/flatbuffers.git"
             },
             "src/third_party/fontconfig/src": {
                 "fetcher": "fetchFromGitiles",
                 "hash": "sha256-7PFmgr/+KNEYxCMuxMD2Zi9Ydcbp88IU7exr55a392Q=",
-                "url": "https://chromium.googlesource.com/external/fontconfig.git",
-                "rev": "2fb3419a92156569bc1ec707401258c922cd0d99"
+                "rev": "2fb3419a92156569bc1ec707401258c922cd0d99",
+                "url": "https://chromium.googlesource.com/external/fontconfig.git"
             },
             "src/third_party/fp16/src": {
                 "fetcher": "fetchFromGitiles",
                 "hash": "sha256-m2d9bqZoGWzuUPGkd29MsrdscnJRtuIkLIMp3fMmtRY=",
-                "url": "https://chromium.googlesource.com/external/github.com/Maratyszcza/FP16.git",
-                "rev": "0a92994d729ff76a58f692d3028ca1b64b145d91"
+                "rev": "0a92994d729ff76a58f692d3028ca1b64b145d91",
+                "url": "https://chromium.googlesource.com/external/github.com/Maratyszcza/FP16.git"
             },
-            "src/third_party/gemmlowp/src": {
-                "fetcher": "fetchFromGitiles",
-                "hash": "sha256-O5wD8wxgis0qYMaY+xZ21GBDVQFphMRvInCOswS6inA=",
-                "url": "https://chromium.googlesource.com/external/github.com/google/gemmlowp.git",
-                "rev": "13d57703abca3005d97b19df1f2db731607a7dc2"
-            },
-            "src/third_party/grpc/src": {
+            "src/third_party/freetype-testing/src": {
                 "fetcher": "fetchFromGitiles",
-                "hash": "sha256-64JEVCx/PCM0dvv7kAQvSjLc0QbRAZVBDzwD/FAV6T8=",
-                "url": "https://chromium.googlesource.com/external/github.com/grpc/grpc.git",
-                "rev": "822dab21d9995c5cf942476b35ca12a1aa9d2737"
+                "hash": "sha256-2aHPchIK5Oce5+XxdXVCC+8EM6i0XT0rFbjSIVa2L1A=",
+                "rev": "7a69b1a2b028476f840ab7d4a2ffdfe4eb2c389f",
+                "url": "https://chromium.googlesource.com/external/github.com/freetype/freetype2-testing.git"
             },
             "src/third_party/freetype/src": {
                 "fetcher": "fetchFromGitiles",
-                "hash": "sha256-RRieGqEeAk5AYzJqPRpF25FmxMpEYwR7AQWLzXkED50=",
-                "url": "https://chromium.googlesource.com/chromium/src/third_party/freetype2.git",
-                "rev": "45903920b984540bb629bc89f4c010159c23a89a"
+                "hash": "sha256-wyaCNPPL2CTZYY6YUUuGnN3TjHxgKeHAYsw+r88ijMI=",
+                "rev": "55d0287cfc31115760cb13caa346b407ef0c0ceb",
+                "url": "https://chromium.googlesource.com/chromium/src/third_party/freetype2.git"
             },
-            "src/third_party/freetype-testing/src": {
+            "src/third_party/fuzztest/src": {
                 "fetcher": "fetchFromGitiles",
-                "hash": "sha256-2aHPchIK5Oce5+XxdXVCC+8EM6i0XT0rFbjSIVa2L1A=",
-                "url": "https://chromium.googlesource.com/external/github.com/freetype/freetype2-testing.git",
-                "rev": "7a69b1a2b028476f840ab7d4a2ffdfe4eb2c389f"
+                "hash": "sha256-wuB/lbkVCbisZvVFuLdE8XNDuiLQcI47/Y0EqvOCytc=",
+                "rev": "b5dbc33890d9586e4f6a213f1bf163ad287e6aa4",
+                "url": "https://chromium.googlesource.com/external/github.com/google/fuzztest.git"
             },
             "src/third_party/fxdiv/src": {
                 "fetcher": "fetchFromGitiles",
                 "hash": "sha256-LjX5kivfHbqCIA5pF9qUvswG1gjOFo3CMpX0VR+Cn38=",
-                "url": "https://chromium.googlesource.com/external/github.com/Maratyszcza/FXdiv.git",
-                "rev": "63058eff77e11aa15bf531df5dd34395ec3017c8"
+                "rev": "63058eff77e11aa15bf531df5dd34395ec3017c8",
+                "url": "https://chromium.googlesource.com/external/github.com/Maratyszcza/FXdiv.git"
             },
-            "src/third_party/harfbuzz-ng/src": {
+            "src/third_party/gemmlowp/src": {
                 "fetcher": "fetchFromGitiles",
-                "hash": "sha256-+fClyD9Rsge9qdGF8WCv8taLTWNL8iManpXZUzDL2LM=",
-                "url": "https://chromium.googlesource.com/external/github.com/harfbuzz/harfbuzz.git",
-                "rev": "db700b5670d9475cc8ed4880cc9447b232c5e432"
+                "hash": "sha256-O5wD8wxgis0qYMaY+xZ21GBDVQFphMRvInCOswS6inA=",
+                "rev": "13d57703abca3005d97b19df1f2db731607a7dc2",
+                "url": "https://chromium.googlesource.com/external/github.com/google/gemmlowp.git"
             },
-            "src/third_party/emoji-segmenter/src": {
+            "src/third_party/google_benchmark/src": {
                 "fetcher": "fetchFromGitiles",
-                "hash": "sha256-oT9mAKoKnrsFsBAeTRfPOXM76HRQQabFAlPpfKUGFhs=",
-                "url": "https://chromium.googlesource.com/external/github.com/google/emoji-segmenter.git",
-                "rev": "9ba6d25d0d9313569665d4a9d2b34f0f39f9a50e"
+                "hash": "sha256-h2ryAQAuHI54Cni88L85e7Np4KATGVTRdDcmUvCNeWc=",
+                "rev": "b177433f3ee2513b1075140c723d73ab8901790f",
+                "url": "https://chromium.googlesource.com/external/github.com/google/benchmark.git"
             },
-            "src/third_party/ots/src": {
+            "src/third_party/googletest/src": {
                 "fetcher": "fetchFromGitiles",
-                "hash": "sha256-kiUXrXsaGOzPkKh0dVmU1I13WHt0Stzj7QLMqHN9FbU=",
-                "url": "https://chromium.googlesource.com/external/github.com/khaledhosny/ots.git",
-                "rev": "46bea9879127d0ff1c6601b078e2ce98e83fcd33"
+                "hash": "sha256-VYRjcM3dDY2FarviXyFMgSkXCqKfWXwtGAj2Msgm7zg=",
+                "rev": "af29db7ec28d6df1c7f0f745186884091e602e07",
+                "url": "https://chromium.googlesource.com/external/github.com/google/googletest.git"
             },
-            "src/third_party/libgav1/src": {
+            "src/third_party/grpc/src": {
                 "fetcher": "fetchFromGitiles",
-                "hash": "sha256-dT8/Mdit3Qc5Sno6DYKv1qSNr+6Lhiy24ZNNBKoVq8I=",
-                "url": "https://chromium.googlesource.com/codecs/libgav1.git",
-                "rev": "df0023cc95b8e606a2fd243522d823401ef86637"
+                "hash": "sha256-64JEVCx/PCM0dvv7kAQvSjLc0QbRAZVBDzwD/FAV6T8=",
+                "rev": "822dab21d9995c5cf942476b35ca12a1aa9d2737",
+                "url": "https://chromium.googlesource.com/external/github.com/grpc/grpc.git"
             },
-            "src/third_party/googletest/src": {
+            "src/third_party/harfbuzz-ng/src": {
                 "fetcher": "fetchFromGitiles",
-                "hash": "sha256-VYRjcM3dDY2FarviXyFMgSkXCqKfWXwtGAj2Msgm7zg=",
-                "url": "https://chromium.googlesource.com/external/github.com/google/googletest.git",
-                "rev": "af29db7ec28d6df1c7f0f745186884091e602e07"
+                "hash": "sha256-xCsfgbsWVSiuII5zFspssrqX4NrRuhzufYSq6fdnjKQ=",
+                "rev": "f26fd69d858642d76413b8f4068eaf9b57c40a5f",
+                "url": "https://chromium.googlesource.com/external/github.com/harfbuzz/harfbuzz.git"
+            },
+            "src/third_party/highway/src": {
+                "fetcher": "fetchFromGitiles",
+                "hash": "sha256-kNb9UVcFq2BIf9nftUgN8ciFFCzRCou/sLwVf08jf3E=",
+                "rev": "8f20644eca693cfb74aa795b0006b6779c370e7a",
+                "url": "https://chromium.googlesource.com/external/github.com/google/highway.git"
             },
             "src/third_party/hunspell_dictionaries": {
                 "fetcher": "fetchFromGitiles",
                 "hash": "sha256-67mvpJRFFa9eMfyqFMURlbxOaTJBICnk+gl0b0mEHl8=",
-                "url": "https://chromium.googlesource.com/chromium/deps/hunspell_dictionaries.git",
-                "rev": "41cdffd71c9948f63c7ad36e1fb0ff519aa7a37e"
+                "rev": "41cdffd71c9948f63c7ad36e1fb0ff519aa7a37e",
+                "url": "https://chromium.googlesource.com/chromium/deps/hunspell_dictionaries.git"
             },
             "src/third_party/icu": {
                 "fetcher": "fetchFromGitiles",
                 "hash": "sha256-9yFRBrHdWcYgrZAaigS8XnxNsqJNklGdFkAAgVdHXFU=",
-                "url": "https://chromium.googlesource.com/chromium/deps/icu.git",
-                "rev": "a622de35ac311c5ad390a7af80724634e5dc61ed"
+                "rev": "a622de35ac311c5ad390a7af80724634e5dc61ed",
+                "url": "https://chromium.googlesource.com/chromium/deps/icu.git"
             },
             "src/third_party/jsoncpp/source": {
                 "fetcher": "fetchFromGitiles",
                 "hash": "sha256-bSLNcoYBz3QCt5VuTR056V9mU2PmBuYBa0W6hFg2m8Q=",
-                "url": "https://chromium.googlesource.com/external/github.com/open-source-parsers/jsoncpp.git",
-                "rev": "42e892d96e47b1f6e29844cc705e148ec4856448"
+                "rev": "42e892d96e47b1f6e29844cc705e148ec4856448",
+                "url": "https://chromium.googlesource.com/external/github.com/open-source-parsers/jsoncpp.git"
             },
             "src/third_party/leveldatabase/src": {
                 "fetcher": "fetchFromGitiles",
                 "hash": "sha256-TTX2FrmcWsgqrh4uzqMyGnnnG51cVC2ILfdLxD65MLY=",
-                "url": "https://chromium.googlesource.com/external/leveldb.git",
-                "rev": "068d5ee1a3ac40dabd00d211d5013af44be55bea"
+                "rev": "068d5ee1a3ac40dabd00d211d5013af44be55bea",
+                "url": "https://chromium.googlesource.com/external/leveldb.git"
             },
             "src/third_party/libFuzzer/src": {
                 "fetcher": "fetchFromGitiles",
-                "hash": "sha256-Zp8Ea/7GwmEl964MEIk3UM6IR5+FtUz8InlqZaOniDA=",
-                "url": "https://chromium.googlesource.com/external/github.com/llvm/llvm-project/compiler-rt/lib/fuzzer.git",
-                "rev": "26cc39e59b2bf5cbc20486296248a842c536878d"
-            },
-            "src/third_party/fuzztest/src": {
-                "fetcher": "fetchFromGitiles",
-                "hash": "sha256-tVtrSbLxnHrbh027cafNbqkfjq/afQxw57rW9yGsRe0=",
-                "url": "https://chromium.googlesource.com/external/github.com/google/fuzztest.git",
-                "rev": "25f44f341f701eccc29d22f69313a54363c6099b"
+                "hash": "sha256-T0dO+1A0r6kLFoleMkY8heu80biPntCpvA6YfqA7b+E=",
+                "rev": "758bd21f103a501b362b1ca46fa8fcb692eaa303",
+                "url": "https://chromium.googlesource.com/external/github.com/llvm/llvm-project/compiler-rt/lib/fuzzer.git"
             },
             "src/third_party/libaddressinput/src": {
                 "fetcher": "fetchFromGitiles",
                 "hash": "sha256-xvUUQSPrvqUp5DI9AqlRTWurwDW087c6v4RvI+4sfOQ=",
-                "url": "https://chromium.googlesource.com/external/libaddressinput.git",
-                "rev": "e8712e415627f22d0b00ebee8db99547077f39bd"
+                "rev": "e8712e415627f22d0b00ebee8db99547077f39bd",
+                "url": "https://chromium.googlesource.com/external/libaddressinput.git"
             },
             "src/third_party/libaom/source/libaom": {
                 "fetcher": "fetchFromGitiles",
-                "hash": "sha256-Z8td6FIvHibTQsB6x/A/69xduogj2b2lteiQB6l56vE=",
-                "url": "https://aomedia.googlesource.com/aom.git",
-                "rev": "5f8db64abce68a3698fb732697ae50880bc9cac4"
+                "hash": "sha256-6oZWYXRTZ1IC5yGvfPI19PwPU9O7mKBsW2wVxBGwU/I=",
+                "rev": "1dbe1c7fae2456f91ccc79fecb919e9ffea0727a",
+                "url": "https://aomedia.googlesource.com/aom.git"
             },
             "src/third_party/libavif/src": {
                 "fetcher": "fetchFromGitiles",
-                "hash": "sha256-KfRRGTS8kBwi9Z9wafpSwL29RU38THG2xBCvNBXtZtg=",
-                "url": "https://chromium.googlesource.com/external/github.com/AOMediaCodec/libavif.git",
-                "rev": "b2d36b1c3bfc806694cd4ff0cb188270823fe6d8"
+                "hash": "sha256-Jd/KwJJ1oeQMLg8CShTTDQhCVHEDpXcQHiA4+NXYOIA=",
+                "rev": "1a78d970b8315e7cc6a8601861ec75189c50c214",
+                "url": "https://chromium.googlesource.com/external/github.com/AOMediaCodec/libavif.git"
             },
             "src/third_party/libavifinfo/src": {
                 "fetcher": "fetchFromGitiles",
-                "hash": "sha256-yTv1AGtWfxXcywZycpsQBkBRLwuUJMPFKtpj7nrsc4A=",
-                "url": "https://aomedia.googlesource.com/libavifinfo.git",
-                "rev": "707919b2f8ac1920b2f7ae252c233f9c6dcf84e1"
-            },
-            "src/third_party/nearby/src": {
-                "fetcher": "fetchFromGitiles",
-                "hash": "sha256-5d7c8WvkjmBuwcwqhxQf0wRE3qaF8fFsiqUE1sHh0nc=",
-                "url": "https://chromium.googlesource.com/external/github.com/google/nearby-connections.git",
-                "rev": "8725391822b8901784b379a4573ab8828e7091d3"
-            },
-            "src/third_party/beto-core/src": {
-                "fetcher": "fetchFromGitiles",
-                "hash": "sha256-qgsPK7RyVqGRji0sTcMck1JqX9iCsYIExGoGwNZyVT0=",
-                "url": "https://beto-core.googlesource.com/beto-core.git",
-                "rev": "b902b346037ea3f4aadf8177021f6f917b16e648"
-            },
-            "src/third_party/securemessage/src": {
-                "fetcher": "fetchFromGitiles",
-                "hash": "sha256-GS4ccnuiqxMs/LVYAtvSlVAYFp4a5GoZsxcriTX3k78=",
-                "url": "https://chromium.googlesource.com/external/github.com/google/securemessage.git",
-                "rev": "fa07beb12babc3b25e0c5b1f38c16aa8cb6b8f84"
-            },
-            "src/third_party/speedometer/v3.0": {
-                "fetcher": "fetchFromGitiles",
-                "hash": "sha256-PqrwtPFU3TI840za3UU8p+t4ZdyX0l79esEA602Mbq0=",
-                "url": "https://chromium.googlesource.com/external/github.com/WebKit/Speedometer.git",
-                "rev": "5107c739c1b2a008e7293e3b489c4f80a8fb2e01"
+                "hash": "sha256-UAc4iYWrKWteH98hD3QLkD3JWmV/rsvWhFIVJN7tc+Q=",
+                "rev": "b496868f7c3fd17dfeeecc0364fe37e19edd548a",
+                "url": "https://aomedia.googlesource.com/libavifinfo.git"
             },
-            "src/third_party/ukey2/src": {
+            "src/third_party/libc++/src": {
                 "fetcher": "fetchFromGitiles",
-                "hash": "sha256-aaLs6ZS+CdBlCJ6ZhsmdAPFxiBIij6oufsDcNeRSV1E=",
-                "url": "https://chromium.googlesource.com/external/github.com/google/ukey2.git",
-                "rev": "0275885d8e6038c39b8a8ca55e75d1d4d1727f47"
+                "hash": "sha256-DVO15xGxatRbUp13EoNslGEZ2QSHn97VbEBHyfMvKfQ=",
+                "rev": "a429c26ae25c26a569ff12390d5f9be70c5e286b",
+                "url": "https://chromium.googlesource.com/external/github.com/llvm/llvm-project/libcxx.git"
             },
-            "src/third_party/cros-components/src": {
+            "src/third_party/libc++abi/src": {
                 "fetcher": "fetchFromGitiles",
-                "hash": "sha256-s8pfcu5SkxXFCat76TJaDi1NTTQckZ1F+T8URCxOUdI=",
-                "url": "https://chromium.googlesource.com/external/google3/cros_components.git",
-                "rev": "bf7aaccb73b26c11e8bf21cb7d90314338e1743f"
+                "hash": "sha256-QjCPRgFU34wZ8GG/dl+6wi2gflje3fG/x+eokb9W02c=",
+                "rev": "2ca9f38714b1465b9f55b5fbd0da5e4342811e2b",
+                "url": "https://chromium.googlesource.com/external/github.com/llvm/llvm-project/libcxxabi.git"
             },
             "src/third_party/libdrm/src": {
                 "fetcher": "fetchFromGitiles",
                 "hash": "sha256-NUxS2rBJ0nFblvHRQUfKT933+DAws5RUTDb+RLxRF4M=",
-                "url": "https://chromium.googlesource.com/chromiumos/third_party/libdrm.git",
-                "rev": "98e1db501173303e58ef6a1def94ab7a2d84afc1"
+                "rev": "98e1db501173303e58ef6a1def94ab7a2d84afc1",
+                "url": "https://chromium.googlesource.com/chromiumos/third_party/libdrm.git"
             },
-            "src/third_party/expat/src": {
+            "src/third_party/libgav1/src": {
                 "fetcher": "fetchFromGitiles",
-                "hash": "sha256-FXTDGAK03jc2wvazhRKqtsFRKZUYS/9HLpZNp4JfZJI=",
-                "url": "https://chromium.googlesource.com/external/github.com/libexpat/libexpat.git",
-                "rev": "441f98d02deafd9b090aea568282b28f66a50e36"
+                "hash": "sha256-dT8/Mdit3Qc5Sno6DYKv1qSNr+6Lhiy24ZNNBKoVq8I=",
+                "rev": "df0023cc95b8e606a2fd243522d823401ef86637",
+                "url": "https://chromium.googlesource.com/codecs/libgav1.git"
             },
             "src/third_party/libipp/libipp": {
                 "fetcher": "fetchFromGitiles",
                 "hash": "sha256-gxU92lHLd6uxO8T3QWhZIK0hGy97cki705DV0VimCPY=",
-                "url": "https://chromium.googlesource.com/chromiumos/platform2/libipp.git",
-                "rev": "2209bb84a8e122dab7c02fe66cc61a7b42873d7f"
+                "rev": "2209bb84a8e122dab7c02fe66cc61a7b42873d7f",
+                "url": "https://chromium.googlesource.com/chromiumos/platform2/libipp.git"
             },
             "src/third_party/libjpeg_turbo": {
                 "fetcher": "fetchFromGitiles",
-                "hash": "sha256-bcmp8RqQYp4lRI9NfdfYgrAJsDLecJEhgRu9oosB9lQ=",
-                "url": "https://chromium.googlesource.com/chromium/deps/libjpeg_turbo.git",
-                "rev": "30bdb85e302ecfc52593636b2f44af438e05e784"
+                "hash": "sha256-+t75ZAdOXc7Nd1/8zEQLX+enZb8upqIQuR6qzb9z7Cg=",
+                "rev": "9b894306ec3b28cea46e84c32b56773a98c483da",
+                "url": "https://chromium.googlesource.com/chromium/deps/libjpeg_turbo.git"
             },
             "src/third_party/liblouis/src": {
                 "fetcher": "fetchFromGitiles",
                 "hash": "sha256-EI/uaHXe0NlqdEw764q0SjerThYEVLRogUlmrsZwXnY=",
-                "url": "https://chromium.googlesource.com/external/liblouis-github.git",
-                "rev": "9700847afb92cb35969bdfcbbfbbb74b9c7b3376"
+                "rev": "9700847afb92cb35969bdfcbbfbbb74b9c7b3376",
+                "url": "https://chromium.googlesource.com/external/liblouis-github.git"
             },
             "src/third_party/libphonenumber/dist": {
                 "fetcher": "fetchFromGitiles",
                 "hash": "sha256-3hSnTFTD3KAdbyxfKg12qbIYTmw6YlTCH64gMP/HUJo=",
-                "url": "https://chromium.googlesource.com/external/libphonenumber.git",
-                "rev": "140dfeb81b753388e8a672900fb7a971e9a0d362"
+                "rev": "140dfeb81b753388e8a672900fb7a971e9a0d362",
+                "url": "https://chromium.googlesource.com/external/libphonenumber.git"
             },
             "src/third_party/libprotobuf-mutator/src": {
                 "fetcher": "fetchFromGitiles",
                 "hash": "sha256-ZyPweW+V5foxFQwjjMLkaRUo+FNV+kEDGIH/4oRV614=",
-                "url": "https://chromium.googlesource.com/external/github.com/google/libprotobuf-mutator.git",
-                "rev": "a304ec48dcf15d942607032151f7e9ee504b5dcf"
+                "rev": "a304ec48dcf15d942607032151f7e9ee504b5dcf",
+                "url": "https://chromium.googlesource.com/external/github.com/google/libprotobuf-mutator.git"
             },
             "src/third_party/libsrtp": {
                 "fetcher": "fetchFromGitiles",
                 "hash": "sha256-pfLFh2JGk/g0ZZxBKTaYW9/PBpkCm0rtJeyNePUMTTc=",
-                "url": "https://chromium.googlesource.com/chromium/deps/libsrtp.git",
-                "rev": "5b7c744eb8310250ccc534f3f86a2015b3887a0a"
+                "rev": "5b7c744eb8310250ccc534f3f86a2015b3887a0a",
+                "url": "https://chromium.googlesource.com/chromium/deps/libsrtp.git"
             },
             "src/third_party/libsync/src": {
                 "fetcher": "fetchFromGitiles",
                 "hash": "sha256-Mkl6C1LxF3RYLwYbxiSfoQPt8QKFwQWj/Ati2sNJ32E=",
-                "url": "https://chromium.googlesource.com/aosp/platform/system/core/libsync.git",
-                "rev": "f4f4387b6bf2387efbcfd1453af4892e8982faf6"
+                "rev": "f4f4387b6bf2387efbcfd1453af4892e8982faf6",
+                "url": "https://chromium.googlesource.com/aosp/platform/system/core/libsync.git"
+            },
+            "src/third_party/libunwind/src": {
+                "fetcher": "fetchFromGitiles",
+                "hash": "sha256-bQHo8CKDpqvJcVv6OzVO7LOGTqL9qHqD4n9TtRK0v5g=",
+                "rev": "7686b5d38c69d14932abfb1c1a66ba56c78791ad",
+                "url": "https://chromium.googlesource.com/external/github.com/llvm/llvm-project/libunwind.git"
             },
             "src/third_party/libvpx/source/libvpx": {
                 "fetcher": "fetchFromGitiles",
-                "hash": "sha256-5x0Sk8/DXaTCIydK79vWZgIx3IHeQbLUxoNyE7E+Sdo=",
-                "url": "https://chromium.googlesource.com/webm/libvpx.git",
-                "rev": "38a707faef72eeff89d669c553e7bfe9e08dba8f"
+                "hash": "sha256-UA/pf35eWFArRM+QdN6i6LK0ePWzXEsviHlf3WUgMoM=",
+                "rev": "424723dc025ce451dab9568239a46b18d0919b4d",
+                "url": "https://chromium.googlesource.com/webm/libvpx.git"
             },
             "src/third_party/libwebm/source": {
                 "fetcher": "fetchFromGitiles",
                 "hash": "sha256-u/5nkJed0DzdhR5OLL2kIhZhOnrbyzL1Kx37vV/jcEo=",
-                "url": "https://chromium.googlesource.com/webm/libwebm.git",
-                "rev": "e4fbea0c9751ae8aa86629b197a28d8276a2b0da"
+                "rev": "e4fbea0c9751ae8aa86629b197a28d8276a2b0da",
+                "url": "https://chromium.googlesource.com/webm/libwebm.git"
             },
             "src/third_party/libwebp/src": {
                 "fetcher": "fetchFromGitiles",
-                "hash": "sha256-79peh0y3eeiW5cVQqVq0mUgDcGZ9BlY+OXkPZylKARY=",
-                "url": "https://chromium.googlesource.com/webm/libwebp.git",
-                "rev": "2af26267cdfcb63a88e5c74a85927a12d6ca1d76"
+                "hash": "sha256-Wa33opOFgcmYtycezDUt2f6PqZBse6xYB5kLuSaw95o=",
+                "rev": "ca332209cb5567c9b249c86788cb2dbf8847e760",
+                "url": "https://chromium.googlesource.com/webm/libwebp.git"
             },
             "src/third_party/libyuv": {
                 "fetcher": "fetchFromGitiles",
                 "hash": "sha256-jxs9kHI40gRFhm9cU6uS1Rxj+LLUUqT9b3myihxgW7s=",
-                "url": "https://chromium.googlesource.com/libyuv/libyuv.git",
-                "rev": "04821d1e7d60845525e8db55c7bcd41ef5be9406"
+                "rev": "04821d1e7d60845525e8db55c7bcd41ef5be9406",
+                "url": "https://chromium.googlesource.com/libyuv/libyuv.git"
             },
             "src/third_party/lss": {
                 "fetcher": "fetchFromGitiles",
                 "hash": "sha256-hE8uZf9Fst66qJkoVYChiB8G41ie+k9M4X0W+5JUSdw=",
-                "url": "https://chromium.googlesource.com/linux-syscall-support.git",
-                "rev": "ce877209e11aa69dcfffbd53ef90ea1d07136521"
+                "rev": "ce877209e11aa69dcfffbd53ef90ea1d07136521",
+                "url": "https://chromium.googlesource.com/linux-syscall-support.git"
             },
             "src/third_party/material_color_utilities/src": {
                 "fetcher": "fetchFromGitiles",
                 "hash": "sha256-oi28dWuTd6ijn/RKSPukDr5GSzYiCTM2klFb7WSMDHY=",
-                "url": "https://chromium.googlesource.com/external/github.com/material-foundation/material-color-utilities.git",
-                "rev": "234a000e507d586c20df6e3bf5b9e035bc5ce7b1"
+                "rev": "234a000e507d586c20df6e3bf5b9e035bc5ce7b1",
+                "url": "https://chromium.googlesource.com/external/github.com/material-foundation/material-color-utilities.git"
             },
             "src/third_party/minigbm/src": {
                 "fetcher": "fetchFromGitiles",
                 "hash": "sha256-9HwvjTETerbQ7YKXH9kUB2eWa8PxGWMAJfx1jAluhrs=",
-                "url": "https://chromium.googlesource.com/chromiumos/platform/minigbm.git",
-                "rev": "3018207f4d89395cc271278fb9a6558b660885f5"
+                "rev": "3018207f4d89395cc271278fb9a6558b660885f5",
+                "url": "https://chromium.googlesource.com/chromiumos/platform/minigbm.git"
+            },
+            "src/third_party/nan": {
+                "fetcher": "fetchFromGitHub",
+                "hash": "sha256-cwti+BWmF/l/dqa/cN0C587EK4WwRWcWy6gjFVkaMTg=",
+                "owner": "nodejs",
+                "repo": "nan",
+                "rev": "e14bdcd1f72d62bca1d541b66da43130384ec213"
             },
             "src/third_party/nasm": {
                 "fetcher": "fetchFromGitiles",
                 "hash": "sha256-L+b3X3vsfpY6FSlIK/AHhxhmq2cXd50vND6uT6yn8Qs=",
-                "url": "https://chromium.googlesource.com/chromium/deps/nasm.git",
-                "rev": "7fc833e889d1afda72c06220e5bed8fb43b2e5ce"
+                "rev": "7fc833e889d1afda72c06220e5bed8fb43b2e5ce",
+                "url": "https://chromium.googlesource.com/chromium/deps/nasm.git"
+            },
+            "src/third_party/nearby/src": {
+                "fetcher": "fetchFromGitiles",
+                "hash": "sha256-9PT/tuxjREGsvSnYT2wyaL5sB52CcYPpKVKN0ZGldWU=",
+                "rev": "629e7ba7c964a62c97f6a882bffaec3c8490bb1e",
+                "url": "https://chromium.googlesource.com/external/github.com/google/nearby-connections.git"
             },
             "src/third_party/neon_2_sse/src": {
                 "fetcher": "fetchFromGitiles",
                 "hash": "sha256-299ZptvdTmCnIuVVBkrpf5ZTxKPwgcGUob81tEI91F0=",
-                "url": "https://chromium.googlesource.com/external/github.com/intel/ARM_NEON_2_x86_SSE.git",
-                "rev": "a15b489e1222b2087007546b4912e21293ea86ff"
+                "rev": "a15b489e1222b2087007546b4912e21293ea86ff",
+                "url": "https://chromium.googlesource.com/external/github.com/intel/ARM_NEON_2_x86_SSE.git"
             },
             "src/third_party/openh264/src": {
                 "fetcher": "fetchFromGitiles",
                 "hash": "sha256-J7Eqe2QevZh1xfap19W8AVCcwfRu7ztknnbKFJUAH1c=",
-                "url": "https://chromium.googlesource.com/external/github.com/cisco/openh264",
-                "rev": "09a4f3ec842a8932341b195c5b01e141c8a16eb7"
+                "rev": "09a4f3ec842a8932341b195c5b01e141c8a16eb7",
+                "url": "https://chromium.googlesource.com/external/github.com/cisco/openh264"
             },
             "src/third_party/openscreen/src": {
                 "fetcher": "fetchFromGitiles",
                 "hash": "sha256-TyZ/sZ0gnesWjKUnO2RVM2TTdpVIxsBWueHDgix0/wg=",
-                "url": "https://chromium.googlesource.com/openscreen",
-                "rev": "971d6055e7b78c474e2e734e55a2991fbb7ab665"
+                "rev": "971d6055e7b78c474e2e734e55a2991fbb7ab665",
+                "url": "https://chromium.googlesource.com/openscreen"
             },
             "src/third_party/openscreen/src/third_party/tinycbor/src": {
                 "fetcher": "fetchFromGitiles",
                 "hash": "sha256-fMKBFUSKmODQyg4hKIa1hwnEKIV6WBbY1Gb8DOSnaHA=",
-                "url": "https://chromium.googlesource.com/external/github.com/intel/tinycbor.git",
-                "rev": "d393c16f3eb30d0c47e6f9d92db62272f0ec4dc7"
+                "rev": "d393c16f3eb30d0c47e6f9d92db62272f0ec4dc7",
+                "url": "https://chromium.googlesource.com/external/github.com/intel/tinycbor.git"
+            },
+            "src/third_party/ots/src": {
+                "fetcher": "fetchFromGitiles",
+                "hash": "sha256-kiUXrXsaGOzPkKh0dVmU1I13WHt0Stzj7QLMqHN9FbU=",
+                "rev": "46bea9879127d0ff1c6601b078e2ce98e83fcd33",
+                "url": "https://chromium.googlesource.com/external/github.com/khaledhosny/ots.git"
             },
             "src/third_party/pdfium": {
                 "fetcher": "fetchFromGitiles",
-                "hash": "sha256-u+El2jEnvlcQs5j5TthpKj8s255n2AhJPW+Q/s0Ljm0=",
-                "url": "https://pdfium.googlesource.com/pdfium.git",
-                "rev": "6e55da0c45788fdc22fa3aab7ead414fc42b74c1"
+                "hash": "sha256-U1cScrfKN0F+cy307RT2iwB6RYKeCNDRnkYxzamezoY=",
+                "rev": "a3895af47f600e3f9677f31fa39e15bd01c18457",
+                "url": "https://pdfium.googlesource.com/pdfium.git"
             },
             "src/third_party/perfetto": {
                 "fetcher": "fetchFromGitiles",
-                "hash": "sha256-/8WQO0r10Hz3yLNh1MtjE8rGfzbpDkUowA2OPwEuRvA=",
-                "url": "https://android.googlesource.com/platform/external/perfetto.git",
-                "rev": "43b72e3ce703b676c9c923b04540472d10790f56"
+                "hash": "sha256-xLx+dnUysm+HS1esu2hAqBKg/GgTJK4SQu1ZINr2aYc=",
+                "rev": "7ce535ddfc62d30166f35a8ed0f121da5eb0437c",
+                "url": "https://android.googlesource.com/platform/external/perfetto.git"
             },
             "src/third_party/pthreadpool/src": {
                 "fetcher": "fetchFromGitiles",
-                "hash": "sha256-Pfvievhma1rOpbLdSrIX4KaZyRpdvrnjRzzPYl3fDQo=",
-                "url": "https://chromium.googlesource.com/external/github.com/Maratyszcza/pthreadpool.git",
-                "rev": "1787867f6183f056420e532eec640cba25efafea"
+                "hash": "sha256-R4YmNzWEELSkAws/ejmNVxqXDTJwcqjLU/o/HvgRn2E=",
+                "rev": "4fe0e1e183925bf8cfa6aae24237e724a96479b8",
+                "url": "https://chromium.googlesource.com/external/github.com/Maratyszcza/pthreadpool.git"
             },
             "src/third_party/pyelftools": {
                 "fetcher": "fetchFromGitiles",
                 "hash": "sha256-I/7p3IEvfP/gkes4kx18PvWwhAKilQKb67GXoW4zFB4=",
-                "url": "https://chromium.googlesource.com/chromiumos/third_party/pyelftools.git",
-                "rev": "19b3e610c86fcadb837d252c794cb5e8008826ae"
-            },
-            "src/third_party/quic_trace/src": {
-                "fetcher": "fetchFromGitiles",
-                "hash": "sha256-Nf9ZDLcE1JunhbpEMHhrY2ROnbgrvVZoRkPwWq1DU0g=",
-                "url": "https://chromium.googlesource.com/external/github.com/google/quic-trace.git",
-                "rev": "caa0a6eaba816ecb737f9a70782b7c80b8ac8dbc"
+                "rev": "19b3e610c86fcadb837d252c794cb5e8008826ae",
+                "url": "https://chromium.googlesource.com/chromiumos/third_party/pyelftools.git"
             },
             "src/third_party/pywebsocket3/src": {
                 "fetcher": "fetchFromGitiles",
                 "hash": "sha256-WEqqu2/7fLqcf/2/IcD7/FewRSZ6jTgVlVBvnihthYQ=",
-                "url": "https://chromium.googlesource.com/external/github.com/GoogleChromeLabs/pywebsocket3.git",
-                "rev": "50602a14f1b6da17e0b619833a13addc6ea78bc2"
+                "rev": "50602a14f1b6da17e0b619833a13addc6ea78bc2",
+                "url": "https://chromium.googlesource.com/external/github.com/GoogleChromeLabs/pywebsocket3.git"
+            },
+            "src/third_party/quic_trace/src": {
+                "fetcher": "fetchFromGitiles",
+                "hash": "sha256-Nf9ZDLcE1JunhbpEMHhrY2ROnbgrvVZoRkPwWq1DU0g=",
+                "rev": "caa0a6eaba816ecb737f9a70782b7c80b8ac8dbc",
+                "url": "https://chromium.googlesource.com/external/github.com/google/quic-trace.git"
             },
             "src/third_party/re2/src": {
                 "fetcher": "fetchFromGitiles",
-                "hash": "sha256-9V/Q5o24sL1TJUDNifUqpyrQ2zTSrhU0Bxo9qDwd0+4=",
-                "url": "https://chromium.googlesource.com/external/github.com/google/re2.git",
-                "rev": "87d09ef4f0307e53f1d3796843f4b90d41cfccaa"
+                "hash": "sha256-m3bJlSyyhmj/7jvy7ExNX/gol7yeu1mnmyAc8u8Pr8s=",
+                "rev": "3d9bdbd0e208d3274a1cb1275c94d8b7626ddde2",
+                "url": "https://chromium.googlesource.com/external/github.com/google/re2.git"
             },
             "src/third_party/ruy/src": {
                 "fetcher": "fetchFromGitiles",
-                "hash": "sha256-hNco0Jol4vQS1bkYiXaoZ1IPHwoRq3DD3iY0TeLygew=",
-                "url": "https://chromium.googlesource.com/external/github.com/google/ruy.git",
-                "rev": "c04e5e52ae6b144f74ac032652e3c538bda15c9b"
+                "hash": "sha256-Zi3A49YqDE5S4iSpw9t9kTzitbQbcslm1zsepWX5cbw=",
+                "rev": "6ffa93a89376555b09134c59b84d8f5e9cfc6ce6",
+                "url": "https://chromium.googlesource.com/external/github.com/google/ruy.git"
+            },
+            "src/third_party/securemessage/src": {
+                "fetcher": "fetchFromGitiles",
+                "hash": "sha256-GS4ccnuiqxMs/LVYAtvSlVAYFp4a5GoZsxcriTX3k78=",
+                "rev": "fa07beb12babc3b25e0c5b1f38c16aa8cb6b8f84",
+                "url": "https://chromium.googlesource.com/external/github.com/google/securemessage.git"
             },
             "src/third_party/skia": {
                 "fetcher": "fetchFromGitiles",
-                "hash": "sha256-Ck15ddYoo8pVLHcwW5P8Ei1sBQf23EGd/ySGOVSWAFQ=",
-                "url": "https://skia.googlesource.com/skia.git",
-                "rev": "b4f0c1163c955e42489f62d842585720cf0df0ea"
+                "hash": "sha256-CvoJxsBN1Nyh+RPgU+aptZW5WsfGB4hmSlhyma1wO+E=",
+                "rev": "349c1179c43ef46f2804404952b9460dc007d76a",
+                "url": "https://skia.googlesource.com/skia.git"
             },
             "src/third_party/smhasher/src": {
                 "fetcher": "fetchFromGitiles",
                 "hash": "sha256-RyC//me08hwGXRrWcK8GZ1uhIkBq4FByA7fHCVDsniw=",
-                "url": "https://chromium.googlesource.com/external/smhasher.git",
-                "rev": "e87738e57558e0ec472b2fc3a643b838e5b6e88f"
+                "rev": "e87738e57558e0ec472b2fc3a643b838e5b6e88f",
+                "url": "https://chromium.googlesource.com/external/smhasher.git"
             },
             "src/third_party/snappy/src": {
                 "fetcher": "fetchFromGitiles",
                 "hash": "sha256-5fV6NfO8vmqK+iCwpLtE2YjYOzjsshctauyjNIOxrH0=",
-                "url": "https://chromium.googlesource.com/external/github.com/google/snappy.git",
-                "rev": "c9f9edf6d75bb065fa47468bf035e051a57bec7c"
+                "rev": "c9f9edf6d75bb065fa47468bf035e051a57bec7c",
+                "url": "https://chromium.googlesource.com/external/github.com/google/snappy.git"
+            },
+            "src/third_party/speedometer/v3.0": {
+                "fetcher": "fetchFromGitiles",
+                "hash": "sha256-PqrwtPFU3TI840za3UU8p+t4ZdyX0l79esEA602Mbq0=",
+                "rev": "5107c739c1b2a008e7293e3b489c4f80a8fb2e01",
+                "url": "https://chromium.googlesource.com/external/github.com/WebKit/Speedometer.git"
             },
             "src/third_party/sqlite/src": {
                 "fetcher": "fetchFromGitiles",
-                "hash": "sha256-35rSG+ptFMC62FsprLvAqfXZknKu40Ee6H2qpAcA3wI=",
-                "url": "https://chromium.googlesource.com/chromium/deps/sqlite.git",
-                "rev": "b7e480172bb2411f9afedefdcc69a57a12f18b7b"
+                "hash": "sha256-wKsfwZpDRQzYQp6qls07uapgy9K3TWLOEUQlhIFpJtw=",
+                "rev": "cd9486849ba3c3ec753f556fd29c0aabee122a28",
+                "url": "https://chromium.googlesource.com/chromium/deps/sqlite.git"
+            },
+            "src/third_party/squirrel.mac": {
+                "fetcher": "fetchFromGitHub",
+                "hash": "sha256-4GfKQg0u3c9GI+jl3ixESNqWXQJKRMi+00QT0s2Shqw=",
+                "owner": "Squirrel",
+                "repo": "Squirrel.Mac",
+                "rev": "0e5d146ba13101a1302d59ea6e6e0b3cace4ae38"
+            },
+            "src/third_party/squirrel.mac/vendor/Mantle": {
+                "fetcher": "fetchFromGitHub",
+                "hash": "sha256-ogFkMJybf2Ue606ojXJu6Gy5aXSi1bSKm60qcTAIaPk=",
+                "owner": "Mantle",
+                "repo": "Mantle",
+                "rev": "78d3966b3c331292ea29ec38661b25df0a245948"
+            },
+            "src/third_party/squirrel.mac/vendor/ReactiveObjC": {
+                "fetcher": "fetchFromGitHub",
+                "hash": "sha256-/MCqC1oFe3N9TsmfVLgl+deR6qHU6ZFQQjudb9zB5Mo=",
+                "owner": "ReactiveCocoa",
+                "repo": "ReactiveObjC",
+                "rev": "74ab5baccc6f7202c8ac69a8d1e152c29dc1ea76"
             },
             "src/third_party/swiftshader": {
                 "fetcher": "fetchFromGitiles",
-                "hash": "sha256-PCPb5opTATGCCQmw8TGF09TbLL8QES+So+yaL68H//I=",
-                "url": "https://swiftshader.googlesource.com/SwiftShader.git",
-                "rev": "32f9332d1d7aacbdba7c1aa5df894bb1890bb2cc"
+                "hash": "sha256-Im4sdDo4b96YQIKDcAmqUk8PiJzejZgSDPur3hqPPRk=",
+                "rev": "d9ec9befba05a8dfca09c1e88f3f7be0e4b153c6",
+                "url": "https://swiftshader.googlesource.com/SwiftShader.git"
             },
             "src/third_party/text-fragments-polyfill/src": {
                 "fetcher": "fetchFromGitiles",
                 "hash": "sha256-4rW2u1cQAF4iPWHAt1FvVXIpz2pmI901rEPks/w/iFA=",
-                "url": "https://chromium.googlesource.com/external/github.com/GoogleChromeLabs/text-fragments-polyfill.git",
-                "rev": "c036420683f672d685e27415de0a5f5e85bdc23f"
+                "rev": "c036420683f672d685e27415de0a5f5e85bdc23f",
+                "url": "https://chromium.googlesource.com/external/github.com/GoogleChromeLabs/text-fragments-polyfill.git"
             },
             "src/third_party/tflite/src": {
                 "fetcher": "fetchFromGitiles",
-                "hash": "sha256-3gawK1S5+nr5yOAHgYozLWSoT1TbJmB6Md1fID6du9w=",
-                "url": "https://chromium.googlesource.com/external/github.com/tensorflow/tensorflow.git",
-                "rev": "91946956f81a2d9fd12a6d6baba20c997d3f8890"
+                "hash": "sha256-119/isDtopnj6MBRr3bzBvIppXw8M/ejcPx0CmIjXZU=",
+                "rev": "21e56c30e480ac67bed48335a5d122c59a6a6805",
+                "url": "https://chromium.googlesource.com/external/github.com/tensorflow/tensorflow.git"
+            },
+            "src/third_party/ukey2/src": {
+                "fetcher": "fetchFromGitiles",
+                "hash": "sha256-aaLs6ZS+CdBlCJ6ZhsmdAPFxiBIij6oufsDcNeRSV1E=",
+                "rev": "0275885d8e6038c39b8a8ca55e75d1d4d1727f47",
+                "url": "https://chromium.googlesource.com/external/github.com/google/ukey2.git"
             },
             "src/third_party/vulkan-deps": {
                 "fetcher": "fetchFromGitiles",
-                "hash": "sha256-xYX77wsgG+2TzS0AinFJndnID5P3/anY4TPh3cjRaIY=",
-                "url": "https://chromium.googlesource.com/vulkan-deps",
-                "rev": "4b7a5f2a3522cbc4e4334cdc64bfaf3f832b89c3"
+                "hash": "sha256-lqCUx70IeHZ7YfE9DXia7dFok/JsFu/HSIv2AGi37YI=",
+                "rev": "2b783ed328d3a46e6a7a21218ced6b4dd1684114",
+                "url": "https://chromium.googlesource.com/vulkan-deps"
             },
             "src/third_party/vulkan-deps/glslang/src": {
                 "fetcher": "fetchFromGitiles",
-                "hash": "sha256-Y9AmEtFPj+sp/a5YnHChqlqgW/1kdaJ1CEbBB5r2cuI=",
-                "url": "https://chromium.googlesource.com/external/github.com/KhronosGroup/glslang",
-                "rev": "e3a711b6fc942307be7cb634698015dfd13c37fe"
+                "hash": "sha256-+Qs+Q3p11y9oUKyWEbuaQ0vx6hppFZSFbFuU0ve6rRo=",
+                "rev": "ebb0a8b28e5ea7a13146a24b3ad87b1966dbdfa3",
+                "url": "https://chromium.googlesource.com/external/github.com/KhronosGroup/glslang"
             },
             "src/third_party/vulkan-deps/spirv-cross/src": {
                 "fetcher": "fetchFromGitiles",
-                "hash": "sha256-I8RXVat6//rlpmZuuC99Ar/Rct6MFce4FGKgQA2gBj0=",
-                "url": "https://chromium.googlesource.com/external/github.com/KhronosGroup/SPIRV-Cross",
-                "rev": "54997fb4bc3adeb47b9b9f7bb67f1c25eaca2204"
+                "hash": "sha256-UIk5hihUPjXNzEeO2laS4dUef/rEExxXAZjMcftx+3A=",
+                "rev": "2de1265fca722929785d9acdec4ab728c47a0254",
+                "url": "https://chromium.googlesource.com/external/github.com/KhronosGroup/SPIRV-Cross"
             },
             "src/third_party/vulkan-deps/spirv-headers/src": {
                 "fetcher": "fetchFromGitiles",
-                "hash": "sha256-OqLxyrTzg1Q2zmQd0YalWtl7vX5lRJFmE2VH7fHC8/8=",
-                "url": "https://chromium.googlesource.com/external/github.com/KhronosGroup/SPIRV-Headers",
-                "rev": "d790ced752b5bfc06b6988baadef6eb2d16bdf96"
+                "hash": "sha256-JLFVzFNdXqxyKmg3NymIqqZmf2GAb7tYetQ6HJPsUIQ=",
+                "rev": "88bc5e321c2839707df8b1ab534e243e00744177",
+                "url": "https://chromium.googlesource.com/external/github.com/KhronosGroup/SPIRV-Headers"
             },
             "src/third_party/vulkan-deps/spirv-tools/src": {
                 "fetcher": "fetchFromGitiles",
-                "hash": "sha256-wFdAzbOQdOqeuVaWl5036qkli1gkSiL5JHH82Z5cFL4=",
-                "url": "https://chromium.googlesource.com/external/github.com/KhronosGroup/SPIRV-Tools",
-                "rev": "4c16c35b16bbd462a0e89707ebeecc0bce956b2f"
+                "hash": "sha256-+HUDsp0COKlPtKidOVvUk7lN1AiFw01i5ANc3MO+qjs=",
+                "rev": "5084f58e5d187b16f84d2af936ff94ea2f46a00c",
+                "url": "https://chromium.googlesource.com/external/github.com/KhronosGroup/SPIRV-Tools"
             },
             "src/third_party/vulkan-deps/vulkan-headers/src": {
                 "fetcher": "fetchFromGitiles",
-                "hash": "sha256-9+tHkkHsP5ft6+tbofOYV1yBFDpFlJz4Q6YS8c6T5As=",
-                "url": "https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-Headers",
-                "rev": "2634c969d7dc0e983f005f7f2e665cce8449efe6"
+                "hash": "sha256-UlaNc1NxTYulrF4Ol0rLysbLwbFR46Evq7WkWncPB8k=",
+                "rev": "f4bfcd885214675a6a0d7d4df07f52b511e6ea16",
+                "url": "https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-Headers"
             },
             "src/third_party/vulkan-deps/vulkan-loader/src": {
                 "fetcher": "fetchFromGitiles",
-                "hash": "sha256-q7/dYKQ3O0aSs326YbEeLlS+SciFWugBGm/G+b8RNd0=",
-                "url": "https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-Loader",
-                "rev": "d34bfafff23602e857064bea6d99a35eb63f37f2"
+                "hash": "sha256-GbVr8LmwC6r7a13++5cYJXAq+H4P07quEHpTUV1qfqA=",
+                "rev": "7b7d15bc9f1d782e4d6ea34e61fd9a36a7952208",
+                "url": "https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-Loader"
             },
             "src/third_party/vulkan-deps/vulkan-tools/src": {
                 "fetcher": "fetchFromGitiles",
-                "hash": "sha256-tcaJmosHwTo38keV5qkumkLB1o1qq8v2ZmSsi2zDGoE=",
-                "url": "https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-Tools",
-                "rev": "389110e4600669d82bca042859fddf898387c0d2"
+                "hash": "sha256-vnrhYM7tcDTcXH4A+2leio5Wc1+b5H+7CQISEI+SPV8=",
+                "rev": "f7017f23337b90a2b2ceb65a4e1050e8ad89e065",
+                "url": "https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-Tools"
             },
             "src/third_party/vulkan-deps/vulkan-utility-libraries/src": {
                 "fetcher": "fetchFromGitiles",
-                "hash": "sha256-7M47ZCbNwIppaotMfJTFTRsYNvSZNc0FUufoyXyUu/g=",
-                "url": "https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-Utility-Libraries",
-                "rev": "dd26ae7065a9ed60c8ab517ed79bf7935394aec7"
+                "hash": "sha256-buxOdupK/w1sFGGHrEI+On2/mR0q5whvQNKUI8dxJ60=",
+                "rev": "dcfce25b439a2785f2c90b184e1964898070b4f1",
+                "url": "https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-Utility-Libraries"
             },
             "src/third_party/vulkan-deps/vulkan-validation-layers/src": {
                 "fetcher": "fetchFromGitiles",
-                "hash": "sha256-lj6MIQctcK6gsJlLdLwQ9PHbiAtTbNIPinii8vGZdGk=",
-                "url": "https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-ValidationLayers",
-                "rev": "b89f48ae89ec064c91e8b77468cebc18c3faa682"
+                "hash": "sha256-LJd7pkcFd8k4npEv8mJy+47xo/5CXMN75ZAtDp+v6FI=",
+                "rev": "281e1c1c6b51bb6b33f88c18ed4da58ac3024311",
+                "url": "https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-ValidationLayers"
             },
             "src/third_party/vulkan_memory_allocator": {
                 "fetcher": "fetchFromGitiles",
-                "hash": "sha256-FdRPPdLZHj3RX3YzcmF58JJuIqeWQV3TDiiXPEW2lsc=",
-                "url": "https://chromium.googlesource.com/external/github.com/GPUOpen-LibrariesAndSDKs/VulkanMemoryAllocator.git",
-                "rev": "e87036508bb156f9986ea959323de1869e328f58"
-            },
-            "src/third_party/wayland/src": {
-                "fetcher": "fetchFromGitiles",
-                "hash": "sha256-aVcy7bW1cqEKbowlVgfa9FI8/oG7k5CzPZbRl+cPcX8=",
-                "url": "https://chromium.googlesource.com/external/anongit.freedesktop.org/git/wayland/wayland.git",
-                "rev": "a8c7553ec9af6462474524fd2bb4e9a7dc7217dd"
+                "hash": "sha256-YzxHZagz/M8Y54UnI4h1wu5jSTuaOgv0ifC9d3fJZlQ=",
+                "rev": "56300b29fbfcc693ee6609ddad3fdd5b7a449a21",
+                "url": "https://chromium.googlesource.com/external/github.com/GPUOpen-LibrariesAndSDKs/VulkanMemoryAllocator.git"
             },
-            "src/third_party/wayland-protocols/src": {
+            "src/third_party/wayland-protocols/gtk": {
                 "fetcher": "fetchFromGitiles",
-                "hash": "sha256-3QK+ZN6IFUFkDxySSoQwP1J3JnTlD7JPaUk6Tr/d/k4=",
-                "url": "https://chromium.googlesource.com/external/anongit.freedesktop.org/git/wayland/wayland-protocols.git",
-                "rev": "4624cfaaf563cd7be5e2e2087c8de6d3a48ea867"
+                "hash": "sha256-75XNnLkF5Lt1LMRGT+T61k0/mLa3kkynfN+QWvZ0LiQ=",
+                "rev": "40ebed3a03aef096addc0af09fec4ec529d882a0",
+                "url": "https://chromium.googlesource.com/external/github.com/GNOME/gtk.git"
             },
             "src/third_party/wayland-protocols/kde": {
                 "fetcher": "fetchFromGitiles",
                 "hash": "sha256-Dmcp/2ms/k7NxPPmPkp0YNfM9z2Es1ZO0uX10bc7N2Y=",
-                "url": "https://chromium.googlesource.com/external/github.com/KDE/plasma-wayland-protocols.git",
-                "rev": "0b07950714b3a36c9b9f71fc025fc7783e82926e"
+                "rev": "0b07950714b3a36c9b9f71fc025fc7783e82926e",
+                "url": "https://chromium.googlesource.com/external/github.com/KDE/plasma-wayland-protocols.git"
             },
-            "src/third_party/wayland-protocols/gtk": {
+            "src/third_party/wayland-protocols/src": {
                 "fetcher": "fetchFromGitiles",
-                "hash": "sha256-75XNnLkF5Lt1LMRGT+T61k0/mLa3kkynfN+QWvZ0LiQ=",
-                "url": "https://chromium.googlesource.com/external/github.com/GNOME/gtk.git",
-                "rev": "40ebed3a03aef096addc0af09fec4ec529d882a0"
+                "hash": "sha256-3QK+ZN6IFUFkDxySSoQwP1J3JnTlD7JPaUk6Tr/d/k4=",
+                "rev": "4624cfaaf563cd7be5e2e2087c8de6d3a48ea867",
+                "url": "https://chromium.googlesource.com/external/anongit.freedesktop.org/git/wayland/wayland-protocols.git"
+            },
+            "src/third_party/wayland/src": {
+                "fetcher": "fetchFromGitiles",
+                "hash": "sha256-0ICSMZhnsLqMNfqSGjqM3p4ssxptkBtt7EMCpxknW4A=",
+                "rev": "3fda2fbf51db54398c0155facee82cc9533958a2",
+                "url": "https://chromium.googlesource.com/external/anongit.freedesktop.org/git/wayland/wayland.git"
             },
             "src/third_party/webdriver/pylib": {
                 "fetcher": "fetchFromGitiles",
                 "hash": "sha256-WIqWXIKVgElgg8P8laLAlUrgwodGdeVcwohZxnPKedw=",
-                "url": "https://chromium.googlesource.com/external/github.com/SeleniumHQ/selenium/py.git",
-                "rev": "fc5e7e70c098bfb189a9a74746809ad3c5c34e04"
+                "rev": "fc5e7e70c098bfb189a9a74746809ad3c5c34e04",
+                "url": "https://chromium.googlesource.com/external/github.com/SeleniumHQ/selenium/py.git"
             },
             "src/third_party/webgl/src": {
                 "fetcher": "fetchFromGitiles",
-                "hash": "sha256-h4by/1pp9oQGetZNnc1Rt5X5izgQf8ZUZDfsxQacqC0=",
-                "url": "https://chromium.googlesource.com/external/khronosgroup/webgl.git",
-                "rev": "eab0468fc0405b21e59bea30a441d8e38c9db2b7"
+                "hash": "sha256-dubsIPZKBGOzANGvMtQxFKFIHr0laDUGpzgRyEOjHMU=",
+                "rev": "f4bf599a8b575df685c31d9c4729a70a04e377ed",
+                "url": "https://chromium.googlesource.com/external/khronosgroup/webgl.git"
             },
             "src/third_party/webgpu-cts/src": {
                 "fetcher": "fetchFromGitiles",
-                "hash": "sha256-Wch3opAvU/6rJVptOKxOJssev8NhNpbYZddScTlzuMw=",
-                "url": "https://chromium.googlesource.com/external/github.com/gpuweb/cts.git",
-                "rev": "4c8d2f67ecd03fbd3cb4c517ef8461427b6d635d"
+                "hash": "sha256-E39f0wy72TwQ9IM4QquqWxwDiHZOUI8hWkx2QDFcRog=",
+                "rev": "3dbe4ce12983ccc1ad42e228057c7d8adc17cb78",
+                "url": "https://chromium.googlesource.com/external/github.com/gpuweb/cts.git"
             },
             "src/third_party/webrtc": {
                 "fetcher": "fetchFromGitiles",
-                "hash": "sha256-KpiNGAue945kGCuQYGhxiWVUFTE1tcntSAXBZdkrE9A=",
-                "url": "https://webrtc.googlesource.com/src.git",
-                "rev": "d8f2b0380b3ec980af35ce4b92ba6a211ec8c76d"
+                "hash": "sha256-ju7sX1jrzg5BZOqdkcnFymRTqdFi7xkeHznKJQB1+08=",
+                "rev": "5ab829e4ca8f63be6b4ed1d98eee382d7307d34e",
+                "url": "https://webrtc.googlesource.com/src.git"
             },
-            "src/third_party/wuffs/src": {
+            "src/third_party/weston/src": {
                 "fetcher": "fetchFromGitiles",
-                "hash": "sha256-HP8Vf1C9DuA9H+busf3lFoF9SsYqviLKv0l73CxmNEI=",
-                "url": "https://skia.googlesource.com/external/github.com/google/wuffs-mirror-release-c.git",
-                "rev": "fe9d08f2b6e80af691bfb1a718e144c49a1b9eba"
+                "hash": "sha256-y2srFaPUOoB2umzpo4+hFfhNlqXM2AoMGOpUy/ZSacg=",
+                "rev": "ccf29cb237c3ed09c5f370f35239c93d07abfdd7",
+                "url": "https://chromium.googlesource.com/external/anongit.freedesktop.org/git/wayland/weston.git"
             },
-            "src/third_party/weston/src": {
+            "src/third_party/wuffs/src": {
                 "fetcher": "fetchFromGitiles",
-                "hash": "sha256-sfJm1CBGXX13pFcqeOVPqWlXrUfwjRl+rYf2BoT8Bt8=",
-                "url": "https://chromium.googlesource.com/external/anongit.freedesktop.org/git/wayland/weston.git",
-                "rev": "775f8a1edf357f59e6b2e284297f396f4fac95a4"
+                "hash": "sha256-HP8Vf1C9DuA9H+busf3lFoF9SsYqviLKv0l73CxmNEI=",
+                "rev": "fe9d08f2b6e80af691bfb1a718e144c49a1b9eba",
+                "url": "https://skia.googlesource.com/external/github.com/google/wuffs-mirror-release-c.git"
             },
             "src/third_party/xdg-utils": {
                 "fetcher": "fetchFromGitiles",
-                "hash": "sha256-t3uV9JkkQQIwmezzSoEdTMLSizZdLQB7eLKTRQGH4kQ=",
-                "url": "https://chromium.googlesource.com/chromium/deps/xdg-utils.git",
-                "rev": "d80274d5869b17b8c9067a1022e4416ee7ed5e0d"
+                "hash": "sha256-WuQ9uDq+QD17Y20ACFGres4nbkeOiTE2y+tY1avAT5U=",
+                "rev": "cb54d9db2e535ee4ef13cc91b65a1e2741a94a44",
+                "url": "https://chromium.googlesource.com/chromium/deps/xdg-utils.git"
             },
             "src/third_party/xnnpack/src": {
                 "fetcher": "fetchFromGitiles",
-                "hash": "sha256-vsn3lrog5affus0qxc4TK2Z/tdd/E6hBYeUQRWoDZPQ=",
-                "url": "https://chromium.googlesource.com/external/github.com/google/XNNPACK.git",
-                "rev": "b9d4073a6913891ce9cbd8965c8d506075d2a45a"
+                "hash": "sha256-s9Avx9o+1igKulOpKhtbbkoINuh1wNercPszRaA4TZM=",
+                "rev": "bbbaa7352a3ea729987d3e654d37be93e8009691",
+                "url": "https://chromium.googlesource.com/external/github.com/google/XNNPACK.git"
             },
-            "src/tools/page_cycler/acid3": {
+            "src/third_party/zstd/src": {
                 "fetcher": "fetchFromGitiles",
-                "hash": "sha256-s/49EaYQRsyxuLejXc1zGDYTD7uO0ddaQIJBP50Bvw0=",
-                "url": "https://chromium.googlesource.com/chromium/deps/acid3.git",
-                "rev": "a926d0a32e02c4c03ae95bb798e6c780e0e184ba"
+                "hash": "sha256-95OOpYKGve+YWzqqguQIg1emTOAuaGyYpWxrWVDOKAQ=",
+                "rev": "cdceb0fce59785c841bf697e00067163106064e1",
+                "url": "https://chromium.googlesource.com/external/github.com/facebook/zstd.git"
             },
-            "src/third_party/zstd/src": {
+            "src/tools/page_cycler/acid3": {
                 "fetcher": "fetchFromGitiles",
-                "hash": "sha256-yzv/R/GnqlXLeAjBEIev+8uM7MC0HeK0MfppnMTJ7Eg=",
-                "url": "https://chromium.googlesource.com/external/github.com/facebook/zstd.git",
-                "rev": "25822342be59d831bad65426ae51f5cc22157b09"
+                "hash": "sha256-s/49EaYQRsyxuLejXc1zGDYTD7uO0ddaQIJBP50Bvw0=",
+                "rev": "a926d0a32e02c4c03ae95bb798e6c780e0e184ba",
+                "url": "https://chromium.googlesource.com/chromium/deps/acid3.git"
             },
             "src/v8": {
                 "fetcher": "fetchFromGitiles",
-                "hash": "sha256-Fn4HoS7O2J3nGXFyq7r7AheRQzKy80USTQnNnC4rWqM=",
-                "url": "https://chromium.googlesource.com/v8/v8.git",
-                "rev": "36e4828ab658b8ad72f80974883c4c94f6e7012c"
-            },
-            "src/third_party/nan": {
-                "fetcher": "fetchFromGitHub",
-                "hash": "sha256-tur5CExvwuSmwqBwH9o8OZWzDuifRybjEb+4/tm6exk=",
-                "owner": "nodejs",
-                "repo": "nan",
-                "rev": "16fa32231e2ccd89d2804b3f765319128b20c4ac"
-            },
-            "src/third_party/electron_node": {
-                "fetcher": "fetchFromGitHub",
-                "hash": "sha256-SI4qIix+sXWIS3WJyJoTdPb1cmSIhpLAmfa9iX/5Jlg=",
-                "owner": "nodejs",
-                "repo": "node",
-                "rev": "v18.17.1"
-            },
-            "src/third_party/squirrel.mac": {
-                "fetcher": "fetchFromGitHub",
-                "hash": "sha256-4GfKQg0u3c9GI+jl3ixESNqWXQJKRMi+00QT0s2Shqw=",
-                "owner": "Squirrel",
-                "repo": "Squirrel.Mac",
-                "rev": "0e5d146ba13101a1302d59ea6e6e0b3cace4ae38"
-            },
-            "src/third_party/squirrel.mac/vendor/ReactiveObjC": {
-                "fetcher": "fetchFromGitHub",
-                "hash": "sha256-/MCqC1oFe3N9TsmfVLgl+deR6qHU6ZFQQjudb9zB5Mo=",
-                "owner": "ReactiveCocoa",
-                "repo": "ReactiveObjC",
-                "rev": "74ab5baccc6f7202c8ac69a8d1e152c29dc1ea76"
-            },
-            "src/third_party/squirrel.mac/vendor/Mantle": {
-                "fetcher": "fetchFromGitHub",
-                "hash": "sha256-ogFkMJybf2Ue606ojXJu6Gy5aXSi1bSKm60qcTAIaPk=",
-                "owner": "Mantle",
-                "repo": "Mantle",
-                "rev": "78d3966b3c331292ea29ec38661b25df0a245948"
+                "hash": "sha256-GevDXfVX4UxwTbgp2ZQbp3AFOHv5tECmyqLGIyYi5Tw=",
+                "rev": "71b6b5a68e0883c155e01368aace6eb6d71b85f3",
+                "url": "https://chromium.googlesource.com/v8/v8.git"
             }
         },
-        "version": "27.3.11",
-        "modules": "118",
-        "chrome": "118.0.5993.159",
-        "node": "18.17.1",
+        "electron_yarn_hash": "117vxam1044yy2akwjfhvb5dpfnv667pwbg92ac43551xfn0slcg",
+        "modules": "119",
+        "node": "18.18.2",
+        "version": "28.3.1"
+    },
+    "29": {
+        "chrome": "122.0.6261.156",
         "chromium": {
-            "version": "118.0.5993.159",
             "deps": {
                 "gn": {
-                    "version": "2023-08-10",
+                    "hash": "sha256-UhdDsq9JyP0efGpAaJ/nLp723BbjM6pkFPcAnQbgMKY=",
+                    "rev": "f99e015ac35f689cfdbf46e4eb174e5d2da78d8e",
                     "url": "https://gn.googlesource.com/gn",
-                    "rev": "cc56a0f98bb34accd5323316e0292575ff17a5d4",
-                    "hash": "sha256-SwlET5h5xtDlQvlt8wbG73ZfUWJr4hlWc+uQsBH5x9M="
+                    "version": "2024-01-22"
                 }
-            }
+            },
+            "version": "122.0.6261.156"
         },
-        "chromium_npm_hash": "sha256-5cjqpYB45nw2gop54VP+tL7/0w63nQGfQ4x6a6KS7XQ=",
-        "electron_yarn_hash": "1yq854829a4q0yqyjyn2lq4l3amsqdhfd7fjcnc3mz8l2ci3n964"
-    },
-    "29": {
+        "chromium_npm_hash": "sha256-9eFsK673j3pTDOcsU35RN4hagFygA/v/ahCqVVEV0Rs=",
         "deps": {
-            "src/electron": {
-                "fetcher": "fetchFromGitHub",
-                "hash": "sha256-buW6hC7GIA59MTuyWg9/+EzQlFgJVN2IZrxlfisLemM=",
-                "owner": "electron",
-                "repo": "electron",
-                "rev": "v29.3.0"
-            },
             "src": {
                 "fetcher": "fetchFromGitiles",
                 "hash": "sha256-5AmRq2pl3p0QtqyIjx4XDVE9Mnps18F9Z9MyH+38a0Y=",
-                "url": "https://chromium.googlesource.com/chromium/src.git",
+                "postFetch": "rm -r $out/third_party/blink/web_tests; rm -r $out/third_party/hunspell/tests; rm -r $out/content/test/data; rm -r $out/courgette/testdata; rm -r $out/extensions/test/data; rm -r $out/media/test/data; ",
                 "rev": "122.0.6261.156",
-                "postFetch": "rm -r $out/third_party/blink/web_tests; rm -r $out/third_party/hunspell/tests; rm -r $out/content/test/data; rm -r $out/courgette/testdata; rm -r $out/extensions/test/data; rm -r $out/media/test/data; "
-            },
-            "src/third_party/clang-format/script": {
-                "fetcher": "fetchFromGitiles",
-                "hash": "sha256-7VvofDDQe+SoMRBfVk26q+C+OPyOE7QH35wVWkfDKxs=",
-                "url": "https://chromium.googlesource.com/external/github.com/llvm/llvm-project/clang/tools/clang-format.git",
-                "rev": "e5337933f2951cacd3aeacd238ce4578163ca0b9"
-            },
-            "src/third_party/libc++/src": {
-                "fetcher": "fetchFromGitiles",
-                "hash": "sha256-/3VxptC6qAv9NCt8y1peJKTXTFI7blbvnpZ6D0VYyDk=",
-                "url": "https://chromium.googlesource.com/external/github.com/llvm/llvm-project/libcxx.git",
-                "rev": "28aa23ffb4c7344914a5b4ac7169f12e5a12333f"
-            },
-            "src/third_party/libc++abi/src": {
-                "fetcher": "fetchFromGitiles",
-                "hash": "sha256-O337gqiB4uiTWUgIfPdEa1Du+/ww+xYpmmZW9Py7uyQ=",
-                "url": "https://chromium.googlesource.com/external/github.com/llvm/llvm-project/libcxxabi.git",
-                "rev": "9986707a5f2fc6d5d1ffa7f224a032bdd45c95fd"
-            },
-            "src/third_party/libunwind/src": {
-                "fetcher": "fetchFromGitiles",
-                "hash": "sha256-WPd6BlhNNF9n/qFU8atEh1fagbc05dWsFzBugw55boY=",
-                "url": "https://chromium.googlesource.com/external/github.com/llvm/llvm-project/libunwind.git",
-                "rev": "f400fdb561d4416b59b8f8a33d8ec8b79da60495"
+                "url": "https://chromium.googlesource.com/chromium/src.git"
             },
             "src/chrome/test/data/perf/canvas_bench": {
                 "fetcher": "fetchFromGitiles",
                 "hash": "sha256-svOuyBGKloBLM11xLlWCDsB4PpRjdKTBdW2UEW4JQjM=",
-                "url": "https://chromium.googlesource.com/chromium/canvas_bench.git",
-                "rev": "a7b40ea5ae0239517d78845a5fc9b12976bfc732"
+                "rev": "a7b40ea5ae0239517d78845a5fc9b12976bfc732",
+                "url": "https://chromium.googlesource.com/chromium/canvas_bench.git"
             },
             "src/chrome/test/data/perf/frame_rate/content": {
                 "fetcher": "fetchFromGitiles",
                 "hash": "sha256-t4kcuvH0rkPBkcdiMsoNQaRwU09eU+oSvyHDiAHrKXo=",
-                "url": "https://chromium.googlesource.com/chromium/frame_rate/content.git",
-                "rev": "c10272c88463efeef6bb19c9ec07c42bc8fe22b9"
+                "rev": "c10272c88463efeef6bb19c9ec07c42bc8fe22b9",
+                "url": "https://chromium.googlesource.com/chromium/frame_rate/content.git"
             },
             "src/chrome/test/data/xr/webvr_info": {
                 "fetcher": "fetchFromGitiles",
                 "hash": "sha256-BsAPwc4oEWri0TlqhyxqFNqKdfgVSrB0vQyISmYY4eg=",
-                "url": "https://chromium.googlesource.com/external/github.com/toji/webvr.info.git",
-                "rev": "c58ae99b9ff9e2aa4c524633519570bf33536248"
+                "rev": "c58ae99b9ff9e2aa4c524633519570bf33536248",
+                "url": "https://chromium.googlesource.com/external/github.com/toji/webvr.info.git"
             },
             "src/docs/website": {
                 "fetcher": "fetchFromGitiles",
                 "hash": "sha256-sKbrY/m75LVWjWjhhjaeQnfXQP5AkEsEkZ+GmMNQJVo=",
-                "url": "https://chromium.googlesource.com/website.git",
-                "rev": "7474472013397bdb177cda70099f6411a5bd8212"
+                "rev": "7474472013397bdb177cda70099f6411a5bd8212",
+                "url": "https://chromium.googlesource.com/website.git"
+            },
+            "src/electron": {
+                "fetcher": "fetchFromGitHub",
+                "hash": "sha256-u9o+2M3dURfZkKSzb+bjZcvHygXDbt2IjaYLoSjWeBw=",
+                "owner": "electron",
+                "repo": "electron",
+                "rev": "v29.3.3"
             },
             "src/media/cdm/api": {
                 "fetcher": "fetchFromGitiles",
                 "hash": "sha256-6J6aSYW0or99VAgMNJJOdJqMJspoG7w1HxDN50MV5bw=",
-                "url": "https://chromium.googlesource.com/chromium/cdm.git",
-                "rev": "fef0b5aa1bd31efb88dfab804bdbe614f3d54f28"
+                "rev": "fef0b5aa1bd31efb88dfab804bdbe614f3d54f28",
+                "url": "https://chromium.googlesource.com/chromium/cdm.git"
             },
             "src/net/third_party/quiche/src": {
                 "fetcher": "fetchFromGitiles",
                 "hash": "sha256-mrnKQh2d6ewg1X8sCx8U4frHXyFKHuIUpvi0WBzg+PU=",
-                "url": "https://quiche.googlesource.com/quiche.git",
-                "rev": "0e39ce016ee1ec8271aa7216d547917c239db525"
+                "rev": "0e39ce016ee1ec8271aa7216d547917c239db525",
+                "url": "https://quiche.googlesource.com/quiche.git"
             },
             "src/third_party/angle": {
                 "fetcher": "fetchFromGitiles",
                 "hash": "sha256-h2b/f8MmldZSk3c84rvwO5+UZK36BFf/H9BStWFbDoo=",
-                "url": "https://chromium.googlesource.com/angle/angle.git",
-                "rev": "f9bad5e27d61e2ab6a7504b1793be5aa14eb1414"
+                "rev": "f9bad5e27d61e2ab6a7504b1793be5aa14eb1414",
+                "url": "https://chromium.googlesource.com/angle/angle.git"
+            },
+            "src/third_party/angle/third_party/VK-GL-CTS/src": {
+                "fetcher": "fetchFromGitiles",
+                "hash": "sha256-zBY7MY6FXazzTW+nXvknkNar/odL0tzHXxHPmpYuy7E=",
+                "rev": "0f6fd3de81102058dc2ae299af1ad5287d2145dd",
+                "url": "https://chromium.googlesource.com/external/github.com/KhronosGroup/VK-GL-CTS"
             },
             "src/third_party/angle/third_party/glmark2/src": {
                 "fetcher": "fetchFromGitiles",
                 "hash": "sha256-L7+zWM0qn8WFhmON7DGvarTsN1YHt1sn5+hazTOZrrk=",
-                "url": "https://chromium.googlesource.com/external/github.com/glmark2/glmark2",
-                "rev": "ca8de51fedb70bace5351c6b002eb952c747e889"
+                "rev": "ca8de51fedb70bace5351c6b002eb952c747e889",
+                "url": "https://chromium.googlesource.com/external/github.com/glmark2/glmark2"
             },
             "src/third_party/angle/third_party/rapidjson/src": {
                 "fetcher": "fetchFromGitiles",
                 "hash": "sha256-btUl1a/B0sXwf/+hyvCvVJjWqIkXfVYCpHm3TeBuOxk=",
-                "url": "https://chromium.googlesource.com/external/github.com/Tencent/rapidjson",
-                "rev": "781a4e667d84aeedbeb8184b7b62425ea66ec59f"
-            },
-            "src/third_party/angle/third_party/VK-GL-CTS/src": {
-                "fetcher": "fetchFromGitiles",
-                "hash": "sha256-zBY7MY6FXazzTW+nXvknkNar/odL0tzHXxHPmpYuy7E=",
-                "url": "https://chromium.googlesource.com/external/github.com/KhronosGroup/VK-GL-CTS",
-                "rev": "0f6fd3de81102058dc2ae299af1ad5287d2145dd"
+                "rev": "781a4e667d84aeedbeb8184b7b62425ea66ec59f",
+                "url": "https://chromium.googlesource.com/external/github.com/Tencent/rapidjson"
             },
             "src/third_party/anonymous_tokens/src": {
                 "fetcher": "fetchFromGitiles",
                 "hash": "sha256-3+/zvwYAv3OGoKJatg+/c3OM1IyGq2iCyFWgu3b8VoU=",
-                "url": "https://chromium.googlesource.com/external/github.com/google/anonymous-tokens.git",
-                "rev": "d024f05b39e21bb2a0b8205a7ce72b1b185b84c2"
-            },
-            "src/third_party/content_analysis_sdk/src": {
-                "fetcher": "fetchFromGitiles",
-                "hash": "sha256-f5Jmk1MiGjaRdLun+v/GKVl8Yv9hOZMTQUSxgiJalcY=",
-                "url": "https://chromium.googlesource.com/external/github.com/chromium/content_analysis_sdk.git",
-                "rev": "9a408736204513e0e95dd2ab3c08de0d95963efc"
-            },
-            "src/third_party/dav1d/libdav1d": {
-                "fetcher": "fetchFromGitiles",
-                "hash": "sha256-9SrbxiOqXKTFf4qZ4Wqg9aoOMY8zv7NczTqN2+lXwCI=",
-                "url": "https://chromium.googlesource.com/external/github.com/videolan/dav1d.git",
-                "rev": "47107e384bd1dc25674acf04d000a8cdc6195234"
-            },
-            "src/third_party/dawn": {
-                "fetcher": "fetchFromGitiles",
-                "hash": "sha256-/lG4wfy5LVCMGuqKRZgf/NoxsAuCvyUdV1Anbzi0q+U=",
-                "url": "https://dawn.googlesource.com/dawn.git",
-                "rev": "6a6719ee09f1078356fdd31c69061e07b5c61c2d"
+                "rev": "d024f05b39e21bb2a0b8205a7ce72b1b185b84c2",
+                "url": "https://chromium.googlesource.com/external/github.com/google/anonymous-tokens.git"
             },
-            "src/third_party/dawn/third_party/glfw": {
-                "fetcher": "fetchFromGitiles",
-                "hash": "sha256-TwAPRjQxIz3J+zbNxzCp5Tek7MwisxdekMpY5QGsKyg=",
-                "url": "https://chromium.googlesource.com/external/github.com/glfw/glfw",
-                "rev": "62e175ef9fae75335575964c845a302447c012c7"
-            },
-            "src/third_party/dawn/third_party/dxc": {
-                "fetcher": "fetchFromGitiles",
-                "hash": "sha256-PGGwxNYgvZ//k+cr19iTG2QwC9Agu2T9k9QOhnX565s=",
-                "url": "https://chromium.googlesource.com/external/github.com/microsoft/DirectXShaderCompiler",
-                "rev": "701a2b1da0387ac6abf73bdbaf7864b9615db033"
-            },
-            "src/third_party/dawn/third_party/dxheaders": {
-                "fetcher": "fetchFromGitiles",
-                "hash": "sha256-0Miw1Cy/jmOo7bLFBOHuTRDV04cSeyvUEyPkpVsX9DA=",
-                "url": "https://chromium.googlesource.com/external/github.com/microsoft/DirectX-Headers",
-                "rev": "980971e835876dc0cde415e8f9bc646e64667bf7"
-            },
-            "src/third_party/dawn/third_party/khronos/OpenGL-Registry": {
-                "fetcher": "fetchFromGitiles",
-                "hash": "sha256-K3PcRIiD3AmnbiSm5TwaLs4Gu9hxaN8Y91WMKK8pOXE=",
-                "url": "https://chromium.googlesource.com/external/github.com/KhronosGroup/OpenGL-Registry",
-                "rev": "5bae8738b23d06968e7c3a41308568120943ae77"
-            },
-            "src/third_party/dawn/third_party/khronos/EGL-Registry": {
-                "fetcher": "fetchFromGitiles",
-                "hash": "sha256-Z6DwLfgQ1wsJXz0KKJyVieOatnDmx3cs0qJ6IEgSq1A=",
-                "url": "https://chromium.googlesource.com/external/github.com/KhronosGroup/EGL-Registry",
-                "rev": "7dea2ed79187cd13f76183c4b9100159b9e3e071"
-            },
-            "src/third_party/dawn/third_party/webgpu-cts": {
-                "fetcher": "fetchFromGitiles",
-                "hash": "sha256-wlneFqVEhM6fe9p10T22dx4dxnZzWwKHw+35eIlDGVM=",
-                "url": "https://chromium.googlesource.com/external/github.com/gpuweb/cts",
-                "rev": "dedb6316202c8c55b898e52248f1345241299125"
-            },
-            "src/third_party/highway/src": {
-                "fetcher": "fetchFromGitiles",
-                "hash": "sha256-kNb9UVcFq2BIf9nftUgN8ciFFCzRCou/sLwVf08jf3E=",
-                "url": "https://chromium.googlesource.com/external/github.com/google/highway.git",
-                "rev": "8f20644eca693cfb74aa795b0006b6779c370e7a"
-            },
-            "src/third_party/google_benchmark/src": {
+            "src/third_party/beto-core/src": {
                 "fetcher": "fetchFromGitiles",
-                "hash": "sha256-h2ryAQAuHI54Cni88L85e7Np4KATGVTRdDcmUvCNeWc=",
-                "url": "https://chromium.googlesource.com/external/github.com/google/benchmark.git",
-                "rev": "b177433f3ee2513b1075140c723d73ab8901790f"
+                "hash": "sha256-PkvHqVKjGHxAYntylJxR5xnUVU1o8DJuBmsd9qkl/Yo=",
+                "rev": "4d202dab960a0b6a6e4757ab4393945aca5a09db",
+                "url": "https://beto-core.googlesource.com/beto-core.git"
             },
             "src/third_party/boringssl/src": {
                 "fetcher": "fetchFromGitiles",
                 "hash": "sha256-shqUB+x7oXgtQqqfhkwXHwLLaJW1/L1vh1O+jvdsDP8=",
-                "url": "https://boringssl.googlesource.com/boringssl.git",
-                "rev": "414f69504d30d0848b69f6453ea7fb5e88004cb4"
+                "rev": "414f69504d30d0848b69f6453ea7fb5e88004cb4",
+                "url": "https://boringssl.googlesource.com/boringssl.git"
             },
             "src/third_party/breakpad/breakpad": {
                 "fetcher": "fetchFromGitiles",
                 "hash": "sha256-7SmO5e/U2shYVslmCRPVLyfU5N4Rp1mzls8lLqIW8x8=",
-                "url": "https://chromium.googlesource.com/breakpad/breakpad.git",
-                "rev": "62ecd463583d09eb7d15b1d410055f30b2c7bcb4"
+                "rev": "62ecd463583d09eb7d15b1d410055f30b2c7bcb4",
+                "url": "https://chromium.googlesource.com/breakpad/breakpad.git"
             },
             "src/third_party/cast_core/public/src": {
                 "fetcher": "fetchFromGitiles",
                 "hash": "sha256-AalRQhJmornCqmvE2+36J/3LubaA0jr6P1PXy32lX4I=",
-                "url": "https://chromium.googlesource.com/cast_core/public",
-                "rev": "71f51fd6fa45fac73848f65421081edd723297cd"
+                "rev": "71f51fd6fa45fac73848f65421081edd723297cd",
+                "url": "https://chromium.googlesource.com/cast_core/public"
             },
             "src/third_party/catapult": {
                 "fetcher": "fetchFromGitiles",
                 "hash": "sha256-ixfmLcWTgVcHi2CXAulMXTaAyPYT42Q8VflStxmNRXc=",
-                "url": "https://chromium.googlesource.com/catapult.git",
-                "rev": "ab03292694695864b523636060e2a96b2c9b2df2"
+                "rev": "ab03292694695864b523636060e2a96b2c9b2df2",
+                "url": "https://chromium.googlesource.com/catapult.git"
             },
             "src/third_party/ced/src": {
                 "fetcher": "fetchFromGitiles",
                 "hash": "sha256-ySG74Rj2i2c/PltEgHVEDq+N8yd9gZmxNktc56zIUiY=",
-                "url": "https://chromium.googlesource.com/external/github.com/google/compact_enc_det.git",
-                "rev": "ba412eaaacd3186085babcd901679a48863c7dd5"
+                "rev": "ba412eaaacd3186085babcd901679a48863c7dd5",
+                "url": "https://chromium.googlesource.com/external/github.com/google/compact_enc_det.git"
             },
             "src/third_party/chromium-variations": {
                 "fetcher": "fetchFromGitiles",
                 "hash": "sha256-px8BHI5Cp3vBRyei50dbxCTn/gydLsps1/SmJxxeGKw=",
-                "url": "https://chromium.googlesource.com/chromium-variations.git",
-                "rev": "d0dcd8802c22c1ac4a7d112782a4c75f0c6ca8ee"
+                "rev": "d0dcd8802c22c1ac4a7d112782a4c75f0c6ca8ee",
+                "url": "https://chromium.googlesource.com/chromium-variations.git"
+            },
+            "src/third_party/clang-format/script": {
+                "fetcher": "fetchFromGitiles",
+                "hash": "sha256-7VvofDDQe+SoMRBfVk26q+C+OPyOE7QH35wVWkfDKxs=",
+                "rev": "e5337933f2951cacd3aeacd238ce4578163ca0b9",
+                "url": "https://chromium.googlesource.com/external/github.com/llvm/llvm-project/clang/tools/clang-format.git"
             },
             "src/third_party/cld_3/src": {
                 "fetcher": "fetchFromGitiles",
                 "hash": "sha256-C3MOMBUy9jgkT9BAi/Fgm2UH4cxRuwSBEcRl3hzM2Ss=",
-                "url": "https://chromium.googlesource.com/external/github.com/google/cld_3.git",
-                "rev": "b48dc46512566f5a2d41118c8c1116c4f96dc661"
+                "rev": "b48dc46512566f5a2d41118c8c1116c4f96dc661",
+                "url": "https://chromium.googlesource.com/external/github.com/google/cld_3.git"
             },
             "src/third_party/colorama/src": {
                 "fetcher": "fetchFromGitiles",
                 "hash": "sha256-6ZTdPYSHdQOLYMSnE+Tp7PgsVTs3U2awGu9Qb4Rg/tk=",
-                "url": "https://chromium.googlesource.com/external/colorama.git",
-                "rev": "3de9f013df4b470069d03d250224062e8cf15c49"
+                "rev": "3de9f013df4b470069d03d250224062e8cf15c49",
+                "url": "https://chromium.googlesource.com/external/colorama.git"
+            },
+            "src/third_party/content_analysis_sdk/src": {
+                "fetcher": "fetchFromGitiles",
+                "hash": "sha256-f5Jmk1MiGjaRdLun+v/GKVl8Yv9hOZMTQUSxgiJalcY=",
+                "rev": "9a408736204513e0e95dd2ab3c08de0d95963efc",
+                "url": "https://chromium.googlesource.com/external/github.com/chromium/content_analysis_sdk.git"
             },
             "src/third_party/cpu_features/src": {
                 "fetcher": "fetchFromGitiles",
                 "hash": "sha256-E8LoVzhe+TAmARWZTSuINlsVhzpUJMxPPCGe/dHZcyA=",
-                "url": "https://chromium.googlesource.com/external/github.com/google/cpu_features.git",
-                "rev": "936b9ab5515dead115606559502e3864958f7f6e"
+                "rev": "936b9ab5515dead115606559502e3864958f7f6e",
+                "url": "https://chromium.googlesource.com/external/github.com/google/cpu_features.git"
             },
             "src/third_party/cpuinfo/src": {
                 "fetcher": "fetchFromGitiles",
                 "hash": "sha256-56XE95dvaDF8E89V/le19Gk52fR0pqqyE38UgQo+GQM=",
-                "url": "https://chromium.googlesource.com/external/github.com/pytorch/cpuinfo.git",
-                "rev": "76cc10d627add77922dc24521b332a055a4d6d77"
+                "rev": "76cc10d627add77922dc24521b332a055a4d6d77",
+                "url": "https://chromium.googlesource.com/external/github.com/pytorch/cpuinfo.git"
             },
             "src/third_party/crc32c/src": {
                 "fetcher": "fetchFromGitiles",
                 "hash": "sha256-urg0bmnfMfHagLPELp4WrNCz1gBZ6DFOWpDue1KsMtc=",
-                "url": "https://chromium.googlesource.com/external/github.com/google/crc32c.git",
-                "rev": "fa5ade41ee480003d9c5af6f43567ba22e4e17e6"
+                "rev": "fa5ade41ee480003d9c5af6f43567ba22e4e17e6",
+                "url": "https://chromium.googlesource.com/external/github.com/google/crc32c.git"
+            },
+            "src/third_party/cros-components/src": {
+                "fetcher": "fetchFromGitiles",
+                "hash": "sha256-2FuyB/TLKMbqgjvw0q19lcG85fedwlOmKKNlGevEzos=",
+                "rev": "ab7bdff32543991f52872c25cecf1f926702dfe3",
+                "url": "https://chromium.googlesource.com/external/google3/cros_components.git"
             },
             "src/third_party/cros_system_api": {
                 "fetcher": "fetchFromGitiles",
                 "hash": "sha256-Tzn7Sx6k7BpH/UqMZHdLTk26FBp5QNcX0xWhztgRKrw=",
-                "url": "https://chromium.googlesource.com/chromiumos/platform2/system_api.git",
-                "rev": "12d5e386005a211570cfdf9849d2fa6a3b38594b"
+                "rev": "12d5e386005a211570cfdf9849d2fa6a3b38594b",
+                "url": "https://chromium.googlesource.com/chromiumos/platform2/system_api.git"
             },
             "src/third_party/crossbench": {
                 "fetcher": "fetchFromGitiles",
                 "hash": "sha256-VxH1eOsJGQUk93EYexl1QrCpHTpgCOQP7H+oN0MZNpA=",
-                "url": "https://chromium.googlesource.com/crossbench.git",
-                "rev": "1983b3f517da56c35c91296467458f71ad5b9340"
+                "rev": "1983b3f517da56c35c91296467458f71ad5b9340",
+                "url": "https://chromium.googlesource.com/crossbench.git"
+            },
+            "src/third_party/dav1d/libdav1d": {
+                "fetcher": "fetchFromGitiles",
+                "hash": "sha256-9SrbxiOqXKTFf4qZ4Wqg9aoOMY8zv7NczTqN2+lXwCI=",
+                "rev": "47107e384bd1dc25674acf04d000a8cdc6195234",
+                "url": "https://chromium.googlesource.com/external/github.com/videolan/dav1d.git"
+            },
+            "src/third_party/dawn": {
+                "fetcher": "fetchFromGitiles",
+                "hash": "sha256-/lG4wfy5LVCMGuqKRZgf/NoxsAuCvyUdV1Anbzi0q+U=",
+                "rev": "6a6719ee09f1078356fdd31c69061e07b5c61c2d",
+                "url": "https://dawn.googlesource.com/dawn.git"
+            },
+            "src/third_party/dawn/third_party/dxc": {
+                "fetcher": "fetchFromGitiles",
+                "hash": "sha256-PGGwxNYgvZ//k+cr19iTG2QwC9Agu2T9k9QOhnX565s=",
+                "rev": "701a2b1da0387ac6abf73bdbaf7864b9615db033",
+                "url": "https://chromium.googlesource.com/external/github.com/microsoft/DirectXShaderCompiler"
+            },
+            "src/third_party/dawn/third_party/dxheaders": {
+                "fetcher": "fetchFromGitiles",
+                "hash": "sha256-0Miw1Cy/jmOo7bLFBOHuTRDV04cSeyvUEyPkpVsX9DA=",
+                "rev": "980971e835876dc0cde415e8f9bc646e64667bf7",
+                "url": "https://chromium.googlesource.com/external/github.com/microsoft/DirectX-Headers"
+            },
+            "src/third_party/dawn/third_party/glfw": {
+                "fetcher": "fetchFromGitiles",
+                "hash": "sha256-TwAPRjQxIz3J+zbNxzCp5Tek7MwisxdekMpY5QGsKyg=",
+                "rev": "62e175ef9fae75335575964c845a302447c012c7",
+                "url": "https://chromium.googlesource.com/external/github.com/glfw/glfw"
+            },
+            "src/third_party/dawn/third_party/khronos/EGL-Registry": {
+                "fetcher": "fetchFromGitiles",
+                "hash": "sha256-Z6DwLfgQ1wsJXz0KKJyVieOatnDmx3cs0qJ6IEgSq1A=",
+                "rev": "7dea2ed79187cd13f76183c4b9100159b9e3e071",
+                "url": "https://chromium.googlesource.com/external/github.com/KhronosGroup/EGL-Registry"
+            },
+            "src/third_party/dawn/third_party/khronos/OpenGL-Registry": {
+                "fetcher": "fetchFromGitiles",
+                "hash": "sha256-K3PcRIiD3AmnbiSm5TwaLs4Gu9hxaN8Y91WMKK8pOXE=",
+                "rev": "5bae8738b23d06968e7c3a41308568120943ae77",
+                "url": "https://chromium.googlesource.com/external/github.com/KhronosGroup/OpenGL-Registry"
+            },
+            "src/third_party/dawn/third_party/webgpu-cts": {
+                "fetcher": "fetchFromGitiles",
+                "hash": "sha256-wlneFqVEhM6fe9p10T22dx4dxnZzWwKHw+35eIlDGVM=",
+                "rev": "dedb6316202c8c55b898e52248f1345241299125",
+                "url": "https://chromium.googlesource.com/external/github.com/gpuweb/cts"
             },
             "src/third_party/depot_tools": {
                 "fetcher": "fetchFromGitiles",
                 "hash": "sha256-C1l4piDzNENx6Vvtzu03HsBZTHIavO5AkmO6QXErh3Y=",
-                "url": "https://chromium.googlesource.com/chromium/tools/depot_tools.git",
-                "rev": "6fc0c97ab284021b72e3bc962f7fa879ffcad65b"
+                "rev": "6fc0c97ab284021b72e3bc962f7fa879ffcad65b",
+                "url": "https://chromium.googlesource.com/chromium/tools/depot_tools.git"
             },
             "src/third_party/devtools-frontend/src": {
                 "fetcher": "fetchFromGitiles",
                 "hash": "sha256-Y7XPBkKU8p210dj7ydIDVJgiXx6ZQPP4D5Jfw3t9FCc=",
-                "url": "https://chromium.googlesource.com/devtools/devtools-frontend",
-                "rev": "3fa1fc736f46022f45c7ba7d817d1df1519c55d7"
+                "rev": "3fa1fc736f46022f45c7ba7d817d1df1519c55d7",
+                "url": "https://chromium.googlesource.com/devtools/devtools-frontend"
             },
             "src/third_party/dom_distiller_js/dist": {
                 "fetcher": "fetchFromGitiles",
                 "hash": "sha256-yuEBD2XQlV3FGI/i7lTmJbCqzeBiuG1Qow8wvsppGJw=",
-                "url": "https://chromium.googlesource.com/chromium/dom-distiller/dist.git",
-                "rev": "199de96b345ada7c6e7e6ba3d2fa7a6911b8767d"
+                "rev": "199de96b345ada7c6e7e6ba3d2fa7a6911b8767d",
+                "url": "https://chromium.googlesource.com/chromium/dom-distiller/dist.git"
             },
             "src/third_party/eigen3/src": {
                 "fetcher": "fetchFromGitiles",
                 "hash": "sha256-a9QAnv6vIM8a9Bn8ZmfeMT0+kbtb0QGxM0+m5xwIqm8=",
-                "url": "https://chromium.googlesource.com/external/gitlab.com/libeigen/eigen.git",
-                "rev": "454f89af9d6f3525b1df5f9ef9c86df58bf2d4d3"
+                "rev": "454f89af9d6f3525b1df5f9ef9c86df58bf2d4d3",
+                "url": "https://chromium.googlesource.com/external/gitlab.com/libeigen/eigen.git"
+            },
+            "src/third_party/electron_node": {
+                "fetcher": "fetchFromGitHub",
+                "hash": "sha256-lGNDwe3IiQMLg5o0AMhLfNpyfu4dXVk05YRO0yMzg0I=",
+                "owner": "nodejs",
+                "repo": "node",
+                "rev": "v20.9.0"
+            },
+            "src/third_party/emoji-segmenter/src": {
+                "fetcher": "fetchFromGitiles",
+                "hash": "sha256-oT9mAKoKnrsFsBAeTRfPOXM76HRQQabFAlPpfKUGFhs=",
+                "rev": "9ba6d25d0d9313569665d4a9d2b34f0f39f9a50e",
+                "url": "https://chromium.googlesource.com/external/github.com/google/emoji-segmenter.git"
+            },
+            "src/third_party/engflow-reclient-configs": {
+                "fetcher": "fetchFromGitHub",
+                "hash": "sha256-aZXYPj9KYBiZnljqOLlWJWS396Fg3EhjiQLZmkwCBsY=",
+                "owner": "EngFlow",
+                "repo": "reclient-configs",
+                "rev": "955335c30a752e9ef7bff375baab5e0819b6c00d"
+            },
+            "src/third_party/expat/src": {
+                "fetcher": "fetchFromGitiles",
+                "hash": "sha256-FXTDGAK03jc2wvazhRKqtsFRKZUYS/9HLpZNp4JfZJI=",
+                "rev": "441f98d02deafd9b090aea568282b28f66a50e36",
+                "url": "https://chromium.googlesource.com/external/github.com/libexpat/libexpat.git"
             },
             "src/third_party/farmhash/src": {
                 "fetcher": "fetchFromGitiles",
                 "hash": "sha256-5n58VEUxa/K//jAfZqG4cXyfxrp50ogWDNYcgiXVHdc=",
-                "url": "https://chromium.googlesource.com/external/github.com/google/farmhash.git",
-                "rev": "816a4ae622e964763ca0862d9dbd19324a1eaf45"
+                "rev": "816a4ae622e964763ca0862d9dbd19324a1eaf45",
+                "url": "https://chromium.googlesource.com/external/github.com/google/farmhash.git"
             },
             "src/third_party/ffmpeg": {
                 "fetcher": "fetchFromGitiles",
                 "hash": "sha256-NRyMXRxnHJi5JiEJUxOxJyPGe5BGTxNbNyEOu1GyO8E=",
-                "url": "https://chromium.googlesource.com/chromium/third_party/ffmpeg.git",
-                "rev": "17525de887d54b970ffdd421a0879c1db1952307"
+                "rev": "17525de887d54b970ffdd421a0879c1db1952307",
+                "url": "https://chromium.googlesource.com/chromium/third_party/ffmpeg.git"
             },
             "src/third_party/flac": {
                 "fetcher": "fetchFromGitiles",
                 "hash": "sha256-gvTFPNOlBfozptaH7lTb9iD/09AmpdT3kCl9ClszjEs=",
-                "url": "https://chromium.googlesource.com/chromium/deps/flac.git",
-                "rev": "689da3a7ed50af7448c3f1961d1791c7c1d9c85c"
+                "rev": "689da3a7ed50af7448c3f1961d1791c7c1d9c85c",
+                "url": "https://chromium.googlesource.com/chromium/deps/flac.git"
             },
             "src/third_party/flatbuffers/src": {
                 "fetcher": "fetchFromGitiles",
                 "hash": "sha256-LecJwLDG6szZZ/UOCFD+MDqH3NKawn0sdEwgnMt8wMM=",
-                "url": "https://chromium.googlesource.com/external/github.com/google/flatbuffers.git",
-                "rev": "bcb9ef187628fe07514e57756d05e6a6296f7dc5"
+                "rev": "bcb9ef187628fe07514e57756d05e6a6296f7dc5",
+                "url": "https://chromium.googlesource.com/external/github.com/google/flatbuffers.git"
             },
             "src/third_party/fontconfig/src": {
                 "fetcher": "fetchFromGitiles",
                 "hash": "sha256-7PFmgr/+KNEYxCMuxMD2Zi9Ydcbp88IU7exr55a392Q=",
-                "url": "https://chromium.googlesource.com/external/fontconfig.git",
-                "rev": "2fb3419a92156569bc1ec707401258c922cd0d99"
+                "rev": "2fb3419a92156569bc1ec707401258c922cd0d99",
+                "url": "https://chromium.googlesource.com/external/fontconfig.git"
             },
             "src/third_party/fp16/src": {
                 "fetcher": "fetchFromGitiles",
                 "hash": "sha256-m2d9bqZoGWzuUPGkd29MsrdscnJRtuIkLIMp3fMmtRY=",
-                "url": "https://chromium.googlesource.com/external/github.com/Maratyszcza/FP16.git",
-                "rev": "0a92994d729ff76a58f692d3028ca1b64b145d91"
+                "rev": "0a92994d729ff76a58f692d3028ca1b64b145d91",
+                "url": "https://chromium.googlesource.com/external/github.com/Maratyszcza/FP16.git"
             },
-            "src/third_party/gemmlowp/src": {
-                "fetcher": "fetchFromGitiles",
-                "hash": "sha256-O5wD8wxgis0qYMaY+xZ21GBDVQFphMRvInCOswS6inA=",
-                "url": "https://chromium.googlesource.com/external/github.com/google/gemmlowp.git",
-                "rev": "13d57703abca3005d97b19df1f2db731607a7dc2"
-            },
-            "src/third_party/grpc/src": {
+            "src/third_party/freetype-testing/src": {
                 "fetcher": "fetchFromGitiles",
-                "hash": "sha256-64JEVCx/PCM0dvv7kAQvSjLc0QbRAZVBDzwD/FAV6T8=",
-                "url": "https://chromium.googlesource.com/external/github.com/grpc/grpc.git",
-                "rev": "822dab21d9995c5cf942476b35ca12a1aa9d2737"
+                "hash": "sha256-2aHPchIK5Oce5+XxdXVCC+8EM6i0XT0rFbjSIVa2L1A=",
+                "rev": "7a69b1a2b028476f840ab7d4a2ffdfe4eb2c389f",
+                "url": "https://chromium.googlesource.com/external/github.com/freetype/freetype2-testing.git"
             },
             "src/third_party/freetype/src": {
                 "fetcher": "fetchFromGitiles",
                 "hash": "sha256-ogBt+haM+MoETsPIhwPDPZCLwQB9u9+w7OHL4us6kg8=",
-                "url": "https://chromium.googlesource.com/chromium/src/third_party/freetype2.git",
-                "rev": "57617782464411201ce7bbc93b086c1b4d7d84a5"
+                "rev": "57617782464411201ce7bbc93b086c1b4d7d84a5",
+                "url": "https://chromium.googlesource.com/chromium/src/third_party/freetype2.git"
             },
-            "src/third_party/freetype-testing/src": {
+            "src/third_party/fuzztest/src": {
                 "fetcher": "fetchFromGitiles",
-                "hash": "sha256-2aHPchIK5Oce5+XxdXVCC+8EM6i0XT0rFbjSIVa2L1A=",
-                "url": "https://chromium.googlesource.com/external/github.com/freetype/freetype2-testing.git",
-                "rev": "7a69b1a2b028476f840ab7d4a2ffdfe4eb2c389f"
+                "hash": "sha256-YEg+/562AX/hK0Adx9bUZqATt+5VDZjn/csWVhRji2M=",
+                "rev": "12e7428ab0847b1d1dc6c4b89203adfd1f16a1ad",
+                "url": "https://chromium.googlesource.com/external/github.com/google/fuzztest.git"
             },
             "src/third_party/fxdiv/src": {
                 "fetcher": "fetchFromGitiles",
                 "hash": "sha256-LjX5kivfHbqCIA5pF9qUvswG1gjOFo3CMpX0VR+Cn38=",
-                "url": "https://chromium.googlesource.com/external/github.com/Maratyszcza/FXdiv.git",
-                "rev": "63058eff77e11aa15bf531df5dd34395ec3017c8"
+                "rev": "63058eff77e11aa15bf531df5dd34395ec3017c8",
+                "url": "https://chromium.googlesource.com/external/github.com/Maratyszcza/FXdiv.git"
             },
-            "src/third_party/harfbuzz-ng/src": {
+            "src/third_party/gemmlowp/src": {
                 "fetcher": "fetchFromGitiles",
-                "hash": "sha256-VAan6P8PHSq8RsGE4YbI/wCfFAhzl3nJMt0cQBYi5Ls=",
-                "url": "https://chromium.googlesource.com/external/github.com/harfbuzz/harfbuzz.git",
-                "rev": "155015f4bec434ecc2f94621665844218f05ce51"
+                "hash": "sha256-O5wD8wxgis0qYMaY+xZ21GBDVQFphMRvInCOswS6inA=",
+                "rev": "13d57703abca3005d97b19df1f2db731607a7dc2",
+                "url": "https://chromium.googlesource.com/external/github.com/google/gemmlowp.git"
             },
-            "src/third_party/emoji-segmenter/src": {
+            "src/third_party/google_benchmark/src": {
                 "fetcher": "fetchFromGitiles",
-                "hash": "sha256-oT9mAKoKnrsFsBAeTRfPOXM76HRQQabFAlPpfKUGFhs=",
-                "url": "https://chromium.googlesource.com/external/github.com/google/emoji-segmenter.git",
-                "rev": "9ba6d25d0d9313569665d4a9d2b34f0f39f9a50e"
+                "hash": "sha256-h2ryAQAuHI54Cni88L85e7Np4KATGVTRdDcmUvCNeWc=",
+                "rev": "b177433f3ee2513b1075140c723d73ab8901790f",
+                "url": "https://chromium.googlesource.com/external/github.com/google/benchmark.git"
             },
-            "src/third_party/ots/src": {
+            "src/third_party/googletest/src": {
                 "fetcher": "fetchFromGitiles",
-                "hash": "sha256-kiUXrXsaGOzPkKh0dVmU1I13WHt0Stzj7QLMqHN9FbU=",
-                "url": "https://chromium.googlesource.com/external/github.com/khaledhosny/ots.git",
-                "rev": "46bea9879127d0ff1c6601b078e2ce98e83fcd33"
+                "hash": "sha256-VYRjcM3dDY2FarviXyFMgSkXCqKfWXwtGAj2Msgm7zg=",
+                "rev": "af29db7ec28d6df1c7f0f745186884091e602e07",
+                "url": "https://chromium.googlesource.com/external/github.com/google/googletest.git"
             },
-            "src/third_party/libgav1/src": {
+            "src/third_party/grpc/src": {
                 "fetcher": "fetchFromGitiles",
-                "hash": "sha256-ySRgjJUYFXTw5kys9WDSuxnmfzj1I4ImvTWi+7q0HXE=",
-                "url": "https://chromium.googlesource.com/codecs/libgav1.git",
-                "rev": "35fea10bfdb790cf131ae74a4ee346905f34dc3c"
+                "hash": "sha256-64JEVCx/PCM0dvv7kAQvSjLc0QbRAZVBDzwD/FAV6T8=",
+                "rev": "822dab21d9995c5cf942476b35ca12a1aa9d2737",
+                "url": "https://chromium.googlesource.com/external/github.com/grpc/grpc.git"
             },
-            "src/third_party/googletest/src": {
+            "src/third_party/harfbuzz-ng/src": {
                 "fetcher": "fetchFromGitiles",
-                "hash": "sha256-VYRjcM3dDY2FarviXyFMgSkXCqKfWXwtGAj2Msgm7zg=",
-                "url": "https://chromium.googlesource.com/external/github.com/google/googletest.git",
-                "rev": "af29db7ec28d6df1c7f0f745186884091e602e07"
+                "hash": "sha256-VAan6P8PHSq8RsGE4YbI/wCfFAhzl3nJMt0cQBYi5Ls=",
+                "rev": "155015f4bec434ecc2f94621665844218f05ce51",
+                "url": "https://chromium.googlesource.com/external/github.com/harfbuzz/harfbuzz.git"
+            },
+            "src/third_party/highway/src": {
+                "fetcher": "fetchFromGitiles",
+                "hash": "sha256-kNb9UVcFq2BIf9nftUgN8ciFFCzRCou/sLwVf08jf3E=",
+                "rev": "8f20644eca693cfb74aa795b0006b6779c370e7a",
+                "url": "https://chromium.googlesource.com/external/github.com/google/highway.git"
             },
             "src/third_party/hunspell_dictionaries": {
                 "fetcher": "fetchFromGitiles",
                 "hash": "sha256-67mvpJRFFa9eMfyqFMURlbxOaTJBICnk+gl0b0mEHl8=",
-                "url": "https://chromium.googlesource.com/chromium/deps/hunspell_dictionaries.git",
-                "rev": "41cdffd71c9948f63c7ad36e1fb0ff519aa7a37e"
+                "rev": "41cdffd71c9948f63c7ad36e1fb0ff519aa7a37e",
+                "url": "https://chromium.googlesource.com/chromium/deps/hunspell_dictionaries.git"
             },
             "src/third_party/icu": {
                 "fetcher": "fetchFromGitiles",
                 "hash": "sha256-YYoslfgGfmDpSTxtCOmGGfwQg6mVU1IggzAtWRwwcMc=",
-                "url": "https://chromium.googlesource.com/chromium/deps/icu.git",
-                "rev": "bad7ddbf921358177e56fd723c2f59f8041a370f"
+                "rev": "bad7ddbf921358177e56fd723c2f59f8041a370f",
+                "url": "https://chromium.googlesource.com/chromium/deps/icu.git"
             },
             "src/third_party/jsoncpp/source": {
                 "fetcher": "fetchFromGitiles",
                 "hash": "sha256-bSLNcoYBz3QCt5VuTR056V9mU2PmBuYBa0W6hFg2m8Q=",
-                "url": "https://chromium.googlesource.com/external/github.com/open-source-parsers/jsoncpp.git",
-                "rev": "42e892d96e47b1f6e29844cc705e148ec4856448"
+                "rev": "42e892d96e47b1f6e29844cc705e148ec4856448",
+                "url": "https://chromium.googlesource.com/external/github.com/open-source-parsers/jsoncpp.git"
             },
             "src/third_party/leveldatabase/src": {
                 "fetcher": "fetchFromGitiles",
                 "hash": "sha256-TTX2FrmcWsgqrh4uzqMyGnnnG51cVC2ILfdLxD65MLY=",
-                "url": "https://chromium.googlesource.com/external/leveldb.git",
-                "rev": "068d5ee1a3ac40dabd00d211d5013af44be55bea"
+                "rev": "068d5ee1a3ac40dabd00d211d5013af44be55bea",
+                "url": "https://chromium.googlesource.com/external/leveldb.git"
             },
             "src/third_party/libFuzzer/src": {
                 "fetcher": "fetchFromGitiles",
                 "hash": "sha256-T0dO+1A0r6kLFoleMkY8heu80biPntCpvA6YfqA7b+E=",
-                "url": "https://chromium.googlesource.com/external/github.com/llvm/llvm-project/compiler-rt/lib/fuzzer.git",
-                "rev": "758bd21f103a501b362b1ca46fa8fcb692eaa303"
-            },
-            "src/third_party/fuzztest/src": {
-                "fetcher": "fetchFromGitiles",
-                "hash": "sha256-YEg+/562AX/hK0Adx9bUZqATt+5VDZjn/csWVhRji2M=",
-                "url": "https://chromium.googlesource.com/external/github.com/google/fuzztest.git",
-                "rev": "12e7428ab0847b1d1dc6c4b89203adfd1f16a1ad"
+                "rev": "758bd21f103a501b362b1ca46fa8fcb692eaa303",
+                "url": "https://chromium.googlesource.com/external/github.com/llvm/llvm-project/compiler-rt/lib/fuzzer.git"
             },
             "src/third_party/libaddressinput/src": {
                 "fetcher": "fetchFromGitiles",
                 "hash": "sha256-xvUUQSPrvqUp5DI9AqlRTWurwDW087c6v4RvI+4sfOQ=",
-                "url": "https://chromium.googlesource.com/external/libaddressinput.git",
-                "rev": "e8712e415627f22d0b00ebee8db99547077f39bd"
+                "rev": "e8712e415627f22d0b00ebee8db99547077f39bd",
+                "url": "https://chromium.googlesource.com/external/libaddressinput.git"
             },
             "src/third_party/libaom/source/libaom": {
                 "fetcher": "fetchFromGitiles",
                 "hash": "sha256-f65sdsMAWCWpsdTgyTzx5fwM/2ESm/cBCvU41s2BEV0=",
-                "url": "https://aomedia.googlesource.com/aom.git",
-                "rev": "1a72ea323d65e46eb90d08d492c04891abb91926"
+                "rev": "1a72ea323d65e46eb90d08d492c04891abb91926",
+                "url": "https://aomedia.googlesource.com/aom.git"
             },
             "src/third_party/libavif/src": {
                 "fetcher": "fetchFromGitiles",
                 "hash": "sha256-rglws6GR11X8SdpYhK9CoxElWuPFYfp5b+vETjEoJOY=",
-                "url": "https://chromium.googlesource.com/external/github.com/AOMediaCodec/libavif.git",
-                "rev": "e170c9366090cdc389d5f47ee3c2d7db71d263bc"
+                "rev": "e170c9366090cdc389d5f47ee3c2d7db71d263bc",
+                "url": "https://chromium.googlesource.com/external/github.com/AOMediaCodec/libavif.git"
             },
             "src/third_party/libavifinfo/src": {
                 "fetcher": "fetchFromGitiles",
                 "hash": "sha256-UAc4iYWrKWteH98hD3QLkD3JWmV/rsvWhFIVJN7tc+Q=",
-                "url": "https://aomedia.googlesource.com/libavifinfo.git",
-                "rev": "b496868f7c3fd17dfeeecc0364fe37e19edd548a"
+                "rev": "b496868f7c3fd17dfeeecc0364fe37e19edd548a",
+                "url": "https://aomedia.googlesource.com/libavifinfo.git"
             },
-            "src/third_party/nearby/src": {
-                "fetcher": "fetchFromGitiles",
-                "hash": "sha256-XsQrfj0R88qf0C/LtRUsset/lnRpBkbpGUr/ZE3qmyk=",
-                "url": "https://chromium.googlesource.com/external/github.com/google/nearby-connections.git",
-                "rev": "4bdb5000ee7919724530cf89d50969e7b0ed58a7"
-            },
-            "src/third_party/beto-core/src": {
-                "fetcher": "fetchFromGitiles",
-                "hash": "sha256-PkvHqVKjGHxAYntylJxR5xnUVU1o8DJuBmsd9qkl/Yo=",
-                "url": "https://beto-core.googlesource.com/beto-core.git",
-                "rev": "4d202dab960a0b6a6e4757ab4393945aca5a09db"
-            },
-            "src/third_party/securemessage/src": {
-                "fetcher": "fetchFromGitiles",
-                "hash": "sha256-GS4ccnuiqxMs/LVYAtvSlVAYFp4a5GoZsxcriTX3k78=",
-                "url": "https://chromium.googlesource.com/external/github.com/google/securemessage.git",
-                "rev": "fa07beb12babc3b25e0c5b1f38c16aa8cb6b8f84"
-            },
-            "src/third_party/speedometer/v3.0": {
-                "fetcher": "fetchFromGitiles",
-                "hash": "sha256-FDsK5sNy3YOrmaGpN3AhSExzBY9D8RGwoZKkjg/5vo0=",
-                "url": "https://chromium.googlesource.com/external/github.com/WebKit/Speedometer.git",
-                "rev": "2ee210ca20767c949c4ff29bdffa1138eb0501fe"
-            },
-            "src/third_party/ukey2/src": {
+            "src/third_party/libc++/src": {
                 "fetcher": "fetchFromGitiles",
-                "hash": "sha256-aaLs6ZS+CdBlCJ6ZhsmdAPFxiBIij6oufsDcNeRSV1E=",
-                "url": "https://chromium.googlesource.com/external/github.com/google/ukey2.git",
-                "rev": "0275885d8e6038c39b8a8ca55e75d1d4d1727f47"
+                "hash": "sha256-/3VxptC6qAv9NCt8y1peJKTXTFI7blbvnpZ6D0VYyDk=",
+                "rev": "28aa23ffb4c7344914a5b4ac7169f12e5a12333f",
+                "url": "https://chromium.googlesource.com/external/github.com/llvm/llvm-project/libcxx.git"
             },
-            "src/third_party/cros-components/src": {
+            "src/third_party/libc++abi/src": {
                 "fetcher": "fetchFromGitiles",
-                "hash": "sha256-2FuyB/TLKMbqgjvw0q19lcG85fedwlOmKKNlGevEzos=",
-                "url": "https://chromium.googlesource.com/external/google3/cros_components.git",
-                "rev": "ab7bdff32543991f52872c25cecf1f926702dfe3"
+                "hash": "sha256-O337gqiB4uiTWUgIfPdEa1Du+/ww+xYpmmZW9Py7uyQ=",
+                "rev": "9986707a5f2fc6d5d1ffa7f224a032bdd45c95fd",
+                "url": "https://chromium.googlesource.com/external/github.com/llvm/llvm-project/libcxxabi.git"
             },
             "src/third_party/libdrm/src": {
                 "fetcher": "fetchFromGitiles",
                 "hash": "sha256-NUxS2rBJ0nFblvHRQUfKT933+DAws5RUTDb+RLxRF4M=",
-                "url": "https://chromium.googlesource.com/chromiumos/third_party/libdrm.git",
-                "rev": "98e1db501173303e58ef6a1def94ab7a2d84afc1"
+                "rev": "98e1db501173303e58ef6a1def94ab7a2d84afc1",
+                "url": "https://chromium.googlesource.com/chromiumos/third_party/libdrm.git"
             },
-            "src/third_party/expat/src": {
+            "src/third_party/libgav1/src": {
                 "fetcher": "fetchFromGitiles",
-                "hash": "sha256-FXTDGAK03jc2wvazhRKqtsFRKZUYS/9HLpZNp4JfZJI=",
-                "url": "https://chromium.googlesource.com/external/github.com/libexpat/libexpat.git",
-                "rev": "441f98d02deafd9b090aea568282b28f66a50e36"
+                "hash": "sha256-ySRgjJUYFXTw5kys9WDSuxnmfzj1I4ImvTWi+7q0HXE=",
+                "rev": "35fea10bfdb790cf131ae74a4ee346905f34dc3c",
+                "url": "https://chromium.googlesource.com/codecs/libgav1.git"
             },
             "src/third_party/libipp/libipp": {
                 "fetcher": "fetchFromGitiles",
                 "hash": "sha256-gxU92lHLd6uxO8T3QWhZIK0hGy97cki705DV0VimCPY=",
-                "url": "https://chromium.googlesource.com/chromiumos/platform2/libipp.git",
-                "rev": "2209bb84a8e122dab7c02fe66cc61a7b42873d7f"
+                "rev": "2209bb84a8e122dab7c02fe66cc61a7b42873d7f",
+                "url": "https://chromium.googlesource.com/chromiumos/platform2/libipp.git"
             },
             "src/third_party/libjpeg_turbo": {
                 "fetcher": "fetchFromGitiles",
                 "hash": "sha256-+t75ZAdOXc7Nd1/8zEQLX+enZb8upqIQuR6qzb9z7Cg=",
-                "url": "https://chromium.googlesource.com/chromium/deps/libjpeg_turbo.git",
-                "rev": "9b894306ec3b28cea46e84c32b56773a98c483da"
+                "rev": "9b894306ec3b28cea46e84c32b56773a98c483da",
+                "url": "https://chromium.googlesource.com/chromium/deps/libjpeg_turbo.git"
             },
             "src/third_party/liblouis/src": {
                 "fetcher": "fetchFromGitiles",
                 "hash": "sha256-EI/uaHXe0NlqdEw764q0SjerThYEVLRogUlmrsZwXnY=",
-                "url": "https://chromium.googlesource.com/external/liblouis-github.git",
-                "rev": "9700847afb92cb35969bdfcbbfbbb74b9c7b3376"
+                "rev": "9700847afb92cb35969bdfcbbfbbb74b9c7b3376",
+                "url": "https://chromium.googlesource.com/external/liblouis-github.git"
             },
             "src/third_party/libphonenumber/dist": {
                 "fetcher": "fetchFromGitiles",
                 "hash": "sha256-3hSnTFTD3KAdbyxfKg12qbIYTmw6YlTCH64gMP/HUJo=",
-                "url": "https://chromium.googlesource.com/external/libphonenumber.git",
-                "rev": "140dfeb81b753388e8a672900fb7a971e9a0d362"
+                "rev": "140dfeb81b753388e8a672900fb7a971e9a0d362",
+                "url": "https://chromium.googlesource.com/external/libphonenumber.git"
             },
             "src/third_party/libprotobuf-mutator/src": {
                 "fetcher": "fetchFromGitiles",
                 "hash": "sha256-ZyPweW+V5foxFQwjjMLkaRUo+FNV+kEDGIH/4oRV614=",
-                "url": "https://chromium.googlesource.com/external/github.com/google/libprotobuf-mutator.git",
-                "rev": "a304ec48dcf15d942607032151f7e9ee504b5dcf"
+                "rev": "a304ec48dcf15d942607032151f7e9ee504b5dcf",
+                "url": "https://chromium.googlesource.com/external/github.com/google/libprotobuf-mutator.git"
             },
             "src/third_party/libsrtp": {
                 "fetcher": "fetchFromGitiles",
                 "hash": "sha256-pfLFh2JGk/g0ZZxBKTaYW9/PBpkCm0rtJeyNePUMTTc=",
-                "url": "https://chromium.googlesource.com/chromium/deps/libsrtp.git",
-                "rev": "5b7c744eb8310250ccc534f3f86a2015b3887a0a"
+                "rev": "5b7c744eb8310250ccc534f3f86a2015b3887a0a",
+                "url": "https://chromium.googlesource.com/chromium/deps/libsrtp.git"
             },
             "src/third_party/libsync/src": {
                 "fetcher": "fetchFromGitiles",
                 "hash": "sha256-Mkl6C1LxF3RYLwYbxiSfoQPt8QKFwQWj/Ati2sNJ32E=",
-                "url": "https://chromium.googlesource.com/aosp/platform/system/core/libsync.git",
-                "rev": "f4f4387b6bf2387efbcfd1453af4892e8982faf6"
+                "rev": "f4f4387b6bf2387efbcfd1453af4892e8982faf6",
+                "url": "https://chromium.googlesource.com/aosp/platform/system/core/libsync.git"
+            },
+            "src/third_party/libunwind/src": {
+                "fetcher": "fetchFromGitiles",
+                "hash": "sha256-WPd6BlhNNF9n/qFU8atEh1fagbc05dWsFzBugw55boY=",
+                "rev": "f400fdb561d4416b59b8f8a33d8ec8b79da60495",
+                "url": "https://chromium.googlesource.com/external/github.com/llvm/llvm-project/libunwind.git"
             },
             "src/third_party/libvpx/source/libvpx": {
                 "fetcher": "fetchFromGitiles",
                 "hash": "sha256-AUNWUicLMpEL/+r5c3JVjgZu9URBVsebayMs+ogNN6M=",
-                "url": "https://chromium.googlesource.com/webm/libvpx.git",
-                "rev": "893c9f6d070cc3bd8503152480089673f57fdf76"
+                "rev": "893c9f6d070cc3bd8503152480089673f57fdf76",
+                "url": "https://chromium.googlesource.com/webm/libvpx.git"
             },
             "src/third_party/libwebm/source": {
                 "fetcher": "fetchFromGitiles",
                 "hash": "sha256-u/5nkJed0DzdhR5OLL2kIhZhOnrbyzL1Kx37vV/jcEo=",
-                "url": "https://chromium.googlesource.com/webm/libwebm.git",
-                "rev": "e4fbea0c9751ae8aa86629b197a28d8276a2b0da"
+                "rev": "e4fbea0c9751ae8aa86629b197a28d8276a2b0da",
+                "url": "https://chromium.googlesource.com/webm/libwebm.git"
             },
             "src/third_party/libwebp/src": {
                 "fetcher": "fetchFromGitiles",
                 "hash": "sha256-Wa33opOFgcmYtycezDUt2f6PqZBse6xYB5kLuSaw95o=",
-                "url": "https://chromium.googlesource.com/webm/libwebp.git",
-                "rev": "ca332209cb5567c9b249c86788cb2dbf8847e760"
+                "rev": "ca332209cb5567c9b249c86788cb2dbf8847e760",
+                "url": "https://chromium.googlesource.com/webm/libwebp.git"
             },
             "src/third_party/libyuv": {
                 "fetcher": "fetchFromGitiles",
                 "hash": "sha256-jxs9kHI40gRFhm9cU6uS1Rxj+LLUUqT9b3myihxgW7s=",
-                "url": "https://chromium.googlesource.com/libyuv/libyuv.git",
-                "rev": "04821d1e7d60845525e8db55c7bcd41ef5be9406"
+                "rev": "04821d1e7d60845525e8db55c7bcd41ef5be9406",
+                "url": "https://chromium.googlesource.com/libyuv/libyuv.git"
             },
             "src/third_party/lss": {
                 "fetcher": "fetchFromGitiles",
                 "hash": "sha256-hE8uZf9Fst66qJkoVYChiB8G41ie+k9M4X0W+5JUSdw=",
-                "url": "https://chromium.googlesource.com/linux-syscall-support.git",
-                "rev": "ce877209e11aa69dcfffbd53ef90ea1d07136521"
+                "rev": "ce877209e11aa69dcfffbd53ef90ea1d07136521",
+                "url": "https://chromium.googlesource.com/linux-syscall-support.git"
             },
             "src/third_party/material_color_utilities/src": {
                 "fetcher": "fetchFromGitiles",
                 "hash": "sha256-sYLpJbgwR5POWqbUqu7IdWJ2Gibjz1PsMdSK+7yPDt4=",
-                "url": "https://chromium.googlesource.com/external/github.com/material-foundation/material-color-utilities.git",
-                "rev": "bec7bab60e6431201a82761ea4482b98b54c2af9"
+                "rev": "bec7bab60e6431201a82761ea4482b98b54c2af9",
+                "url": "https://chromium.googlesource.com/external/github.com/material-foundation/material-color-utilities.git"
             },
             "src/third_party/minigbm/src": {
                 "fetcher": "fetchFromGitiles",
                 "hash": "sha256-9HwvjTETerbQ7YKXH9kUB2eWa8PxGWMAJfx1jAluhrs=",
-                "url": "https://chromium.googlesource.com/chromiumos/platform/minigbm.git",
-                "rev": "3018207f4d89395cc271278fb9a6558b660885f5"
+                "rev": "3018207f4d89395cc271278fb9a6558b660885f5",
+                "url": "https://chromium.googlesource.com/chromiumos/platform/minigbm.git"
+            },
+            "src/third_party/nan": {
+                "fetcher": "fetchFromGitHub",
+                "hash": "sha256-cwti+BWmF/l/dqa/cN0C587EK4WwRWcWy6gjFVkaMTg=",
+                "owner": "nodejs",
+                "repo": "nan",
+                "rev": "e14bdcd1f72d62bca1d541b66da43130384ec213"
             },
             "src/third_party/nasm": {
                 "fetcher": "fetchFromGitiles",
                 "hash": "sha256-SiRXHsUlWXtH6dbDjDjqNAm105ibEB3jOfNtQAM4CaY=",
-                "url": "https://chromium.googlesource.com/chromium/deps/nasm.git",
-                "rev": "f477acb1049f5e043904b87b825c5915084a9a29"
+                "rev": "f477acb1049f5e043904b87b825c5915084a9a29",
+                "url": "https://chromium.googlesource.com/chromium/deps/nasm.git"
+            },
+            "src/third_party/nearby/src": {
+                "fetcher": "fetchFromGitiles",
+                "hash": "sha256-XsQrfj0R88qf0C/LtRUsset/lnRpBkbpGUr/ZE3qmyk=",
+                "rev": "4bdb5000ee7919724530cf89d50969e7b0ed58a7",
+                "url": "https://chromium.googlesource.com/external/github.com/google/nearby-connections.git"
             },
             "src/third_party/neon_2_sse/src": {
                 "fetcher": "fetchFromGitiles",
                 "hash": "sha256-299ZptvdTmCnIuVVBkrpf5ZTxKPwgcGUob81tEI91F0=",
-                "url": "https://chromium.googlesource.com/external/github.com/intel/ARM_NEON_2_x86_SSE.git",
-                "rev": "a15b489e1222b2087007546b4912e21293ea86ff"
+                "rev": "a15b489e1222b2087007546b4912e21293ea86ff",
+                "url": "https://chromium.googlesource.com/external/github.com/intel/ARM_NEON_2_x86_SSE.git"
             },
             "src/third_party/openh264/src": {
                 "fetcher": "fetchFromGitiles",
                 "hash": "sha256-J7Eqe2QevZh1xfap19W8AVCcwfRu7ztknnbKFJUAH1c=",
-                "url": "https://chromium.googlesource.com/external/github.com/cisco/openh264",
-                "rev": "09a4f3ec842a8932341b195c5b01e141c8a16eb7"
+                "rev": "09a4f3ec842a8932341b195c5b01e141c8a16eb7",
+                "url": "https://chromium.googlesource.com/external/github.com/cisco/openh264"
             },
             "src/third_party/openscreen/src": {
                 "fetcher": "fetchFromGitiles",
                 "hash": "sha256-habWfKhK66T537zJb/fm0IWpDbD2xgd9Upg97xRBy/M=",
-                "url": "https://chromium.googlesource.com/openscreen",
-                "rev": "b70c552bedf189fc238e98f8f69e6c30e7925207"
+                "rev": "b70c552bedf189fc238e98f8f69e6c30e7925207",
+                "url": "https://chromium.googlesource.com/openscreen"
             },
             "src/third_party/openscreen/src/buildtools": {
                 "fetcher": "fetchFromGitiles",
                 "hash": "sha256-o974IZvLUG2KlB1pQPYFwnoPGo239CV96pQPoQO7lvM=",
-                "url": "https://chromium.googlesource.com/chromium/src/buildtools",
-                "rev": "a9a6f0c49d0e8fa0cda37337430b4736ab3dc944"
+                "rev": "a9a6f0c49d0e8fa0cda37337430b4736ab3dc944",
+                "url": "https://chromium.googlesource.com/chromium/src/buildtools"
             },
             "src/third_party/openscreen/src/third_party/tinycbor/src": {
                 "fetcher": "fetchFromGitiles",
                 "hash": "sha256-fMKBFUSKmODQyg4hKIa1hwnEKIV6WBbY1Gb8DOSnaHA=",
-                "url": "https://chromium.googlesource.com/external/github.com/intel/tinycbor.git",
-                "rev": "d393c16f3eb30d0c47e6f9d92db62272f0ec4dc7"
+                "rev": "d393c16f3eb30d0c47e6f9d92db62272f0ec4dc7",
+                "url": "https://chromium.googlesource.com/external/github.com/intel/tinycbor.git"
+            },
+            "src/third_party/ots/src": {
+                "fetcher": "fetchFromGitiles",
+                "hash": "sha256-kiUXrXsaGOzPkKh0dVmU1I13WHt0Stzj7QLMqHN9FbU=",
+                "rev": "46bea9879127d0ff1c6601b078e2ce98e83fcd33",
+                "url": "https://chromium.googlesource.com/external/github.com/khaledhosny/ots.git"
             },
             "src/third_party/pdfium": {
                 "fetcher": "fetchFromGitiles",
                 "hash": "sha256-XJAQBQjM0JzyeNy5ZU1KpfxE1U6lQtTEhg21riHHJ0E=",
-                "url": "https://pdfium.googlesource.com/pdfium.git",
-                "rev": "4c4f9ab25dab142d7888f3258ab54df24b97b44f"
+                "rev": "4c4f9ab25dab142d7888f3258ab54df24b97b44f",
+                "url": "https://pdfium.googlesource.com/pdfium.git"
             },
             "src/third_party/perfetto": {
                 "fetcher": "fetchFromGitiles",
                 "hash": "sha256-DLu7p6tDImRC7sk+PqIZvyjpOVIZl3I/8rYX498DVTk=",
-                "url": "https://android.googlesource.com/platform/external/perfetto.git",
-                "rev": "1e15d01da5d619ca617dcdd870efe3c35046a89c"
+                "rev": "1e15d01da5d619ca617dcdd870efe3c35046a89c",
+                "url": "https://android.googlesource.com/platform/external/perfetto.git"
             },
             "src/third_party/pthreadpool/src": {
                 "fetcher": "fetchFromGitiles",
                 "hash": "sha256-R4YmNzWEELSkAws/ejmNVxqXDTJwcqjLU/o/HvgRn2E=",
-                "url": "https://chromium.googlesource.com/external/github.com/Maratyszcza/pthreadpool.git",
-                "rev": "4fe0e1e183925bf8cfa6aae24237e724a96479b8"
+                "rev": "4fe0e1e183925bf8cfa6aae24237e724a96479b8",
+                "url": "https://chromium.googlesource.com/external/github.com/Maratyszcza/pthreadpool.git"
             },
             "src/third_party/pyelftools": {
                 "fetcher": "fetchFromGitiles",
                 "hash": "sha256-I/7p3IEvfP/gkes4kx18PvWwhAKilQKb67GXoW4zFB4=",
-                "url": "https://chromium.googlesource.com/chromiumos/third_party/pyelftools.git",
-                "rev": "19b3e610c86fcadb837d252c794cb5e8008826ae"
-            },
-            "src/third_party/quic_trace/src": {
-                "fetcher": "fetchFromGitiles",
-                "hash": "sha256-Nf9ZDLcE1JunhbpEMHhrY2ROnbgrvVZoRkPwWq1DU0g=",
-                "url": "https://chromium.googlesource.com/external/github.com/google/quic-trace.git",
-                "rev": "caa0a6eaba816ecb737f9a70782b7c80b8ac8dbc"
+                "rev": "19b3e610c86fcadb837d252c794cb5e8008826ae",
+                "url": "https://chromium.googlesource.com/chromiumos/third_party/pyelftools.git"
             },
             "src/third_party/pywebsocket3/src": {
                 "fetcher": "fetchFromGitiles",
                 "hash": "sha256-WEqqu2/7fLqcf/2/IcD7/FewRSZ6jTgVlVBvnihthYQ=",
-                "url": "https://chromium.googlesource.com/external/github.com/GoogleChromeLabs/pywebsocket3.git",
-                "rev": "50602a14f1b6da17e0b619833a13addc6ea78bc2"
+                "rev": "50602a14f1b6da17e0b619833a13addc6ea78bc2",
+                "url": "https://chromium.googlesource.com/external/github.com/GoogleChromeLabs/pywebsocket3.git"
+            },
+            "src/third_party/quic_trace/src": {
+                "fetcher": "fetchFromGitiles",
+                "hash": "sha256-Nf9ZDLcE1JunhbpEMHhrY2ROnbgrvVZoRkPwWq1DU0g=",
+                "rev": "caa0a6eaba816ecb737f9a70782b7c80b8ac8dbc",
+                "url": "https://chromium.googlesource.com/external/github.com/google/quic-trace.git"
             },
             "src/third_party/re2/src": {
                 "fetcher": "fetchFromGitiles",
                 "hash": "sha256-3eAhiKUIMnpVCEuLWVCVOK3alVsxAJrEWtHBzvdjZkY=",
-                "url": "https://chromium.googlesource.com/external/github.com/google/re2.git",
-                "rev": "826ad10e58a042faf57d7c329b0fd0a04b797e0b"
+                "rev": "826ad10e58a042faf57d7c329b0fd0a04b797e0b",
+                "url": "https://chromium.googlesource.com/external/github.com/google/re2.git"
             },
             "src/third_party/ruy/src": {
                 "fetcher": "fetchFromGitiles",
                 "hash": "sha256-gvzxHQEAK6D9qIr/Wf/s6TfBp9QorHlNi4qzSx5Ih/c=",
-                "url": "https://chromium.googlesource.com/external/github.com/google/ruy.git",
-                "rev": "cd7b92695b5d3f0c9ff65b865c2a1e19b99d766d"
+                "rev": "cd7b92695b5d3f0c9ff65b865c2a1e19b99d766d",
+                "url": "https://chromium.googlesource.com/external/github.com/google/ruy.git"
+            },
+            "src/third_party/securemessage/src": {
+                "fetcher": "fetchFromGitiles",
+                "hash": "sha256-GS4ccnuiqxMs/LVYAtvSlVAYFp4a5GoZsxcriTX3k78=",
+                "rev": "fa07beb12babc3b25e0c5b1f38c16aa8cb6b8f84",
+                "url": "https://chromium.googlesource.com/external/github.com/google/securemessage.git"
             },
             "src/third_party/skia": {
                 "fetcher": "fetchFromGitiles",
                 "hash": "sha256-iJlxnQL0JsDPOFSyD0ubEMWtDJhtbqCsBtaQqWZt8q0=",
-                "url": "https://skia.googlesource.com/skia.git",
-                "rev": "8464f41cf051974e499be9caeab3243506e025c2"
+                "rev": "8464f41cf051974e499be9caeab3243506e025c2",
+                "url": "https://skia.googlesource.com/skia.git"
             },
             "src/third_party/smhasher/src": {
                 "fetcher": "fetchFromGitiles",
                 "hash": "sha256-RyC//me08hwGXRrWcK8GZ1uhIkBq4FByA7fHCVDsniw=",
-                "url": "https://chromium.googlesource.com/external/smhasher.git",
-                "rev": "e87738e57558e0ec472b2fc3a643b838e5b6e88f"
+                "rev": "e87738e57558e0ec472b2fc3a643b838e5b6e88f",
+                "url": "https://chromium.googlesource.com/external/smhasher.git"
             },
             "src/third_party/snappy/src": {
                 "fetcher": "fetchFromGitiles",
                 "hash": "sha256-5fV6NfO8vmqK+iCwpLtE2YjYOzjsshctauyjNIOxrH0=",
-                "url": "https://chromium.googlesource.com/external/github.com/google/snappy.git",
-                "rev": "c9f9edf6d75bb065fa47468bf035e051a57bec7c"
+                "rev": "c9f9edf6d75bb065fa47468bf035e051a57bec7c",
+                "url": "https://chromium.googlesource.com/external/github.com/google/snappy.git"
+            },
+            "src/third_party/speedometer/v3.0": {
+                "fetcher": "fetchFromGitiles",
+                "hash": "sha256-FDsK5sNy3YOrmaGpN3AhSExzBY9D8RGwoZKkjg/5vo0=",
+                "rev": "2ee210ca20767c949c4ff29bdffa1138eb0501fe",
+                "url": "https://chromium.googlesource.com/external/github.com/WebKit/Speedometer.git"
             },
             "src/third_party/sqlite/src": {
                 "fetcher": "fetchFromGitiles",
                 "hash": "sha256-brDFYmagGIH7fvRAP/JaCAMyuFLJKrc0jf0106gofiw=",
-                "url": "https://chromium.googlesource.com/chromium/deps/sqlite.git",
-                "rev": "a5270ae741714a5aad187ba8dcd8bddca39f791f"
+                "rev": "a5270ae741714a5aad187ba8dcd8bddca39f791f",
+                "url": "https://chromium.googlesource.com/chromium/deps/sqlite.git"
+            },
+            "src/third_party/squirrel.mac": {
+                "fetcher": "fetchFromGitHub",
+                "hash": "sha256-4GfKQg0u3c9GI+jl3ixESNqWXQJKRMi+00QT0s2Shqw=",
+                "owner": "Squirrel",
+                "repo": "Squirrel.Mac",
+                "rev": "0e5d146ba13101a1302d59ea6e6e0b3cace4ae38"
+            },
+            "src/third_party/squirrel.mac/vendor/Mantle": {
+                "fetcher": "fetchFromGitHub",
+                "hash": "sha256-ogFkMJybf2Ue606ojXJu6Gy5aXSi1bSKm60qcTAIaPk=",
+                "owner": "Mantle",
+                "repo": "Mantle",
+                "rev": "78d3966b3c331292ea29ec38661b25df0a245948"
+            },
+            "src/third_party/squirrel.mac/vendor/ReactiveObjC": {
+                "fetcher": "fetchFromGitHub",
+                "hash": "sha256-/MCqC1oFe3N9TsmfVLgl+deR6qHU6ZFQQjudb9zB5Mo=",
+                "owner": "ReactiveCocoa",
+                "repo": "ReactiveObjC",
+                "rev": "74ab5baccc6f7202c8ac69a8d1e152c29dc1ea76"
             },
             "src/third_party/swiftshader": {
                 "fetcher": "fetchFromGitiles",
                 "hash": "sha256-k0WzWDa/+48ogpbmECNDJKIED4wGu/Hm0DyGnCT9xoU=",
-                "url": "https://swiftshader.googlesource.com/SwiftShader.git",
-                "rev": "2fa7e9b99ae4e70ea5ae2cc9c8d3afb43391384f"
+                "rev": "2fa7e9b99ae4e70ea5ae2cc9c8d3afb43391384f",
+                "url": "https://swiftshader.googlesource.com/SwiftShader.git"
             },
             "src/third_party/text-fragments-polyfill/src": {
                 "fetcher": "fetchFromGitiles",
                 "hash": "sha256-4rW2u1cQAF4iPWHAt1FvVXIpz2pmI901rEPks/w/iFA=",
-                "url": "https://chromium.googlesource.com/external/github.com/GoogleChromeLabs/text-fragments-polyfill.git",
-                "rev": "c036420683f672d685e27415de0a5f5e85bdc23f"
+                "rev": "c036420683f672d685e27415de0a5f5e85bdc23f",
+                "url": "https://chromium.googlesource.com/external/github.com/GoogleChromeLabs/text-fragments-polyfill.git"
             },
             "src/third_party/tflite/src": {
                 "fetcher": "fetchFromGitiles",
                 "hash": "sha256-LOQH+qtltrahcPIutw/zYvEhmvbSjFBWT1mrg/pUD/0=",
-                "url": "https://chromium.googlesource.com/external/github.com/tensorflow/tensorflow.git",
-                "rev": "296f1e3cce03308c7fd5cdc7a76fbc3e41ec5214"
+                "rev": "296f1e3cce03308c7fd5cdc7a76fbc3e41ec5214",
+                "url": "https://chromium.googlesource.com/external/github.com/tensorflow/tensorflow.git"
+            },
+            "src/third_party/ukey2/src": {
+                "fetcher": "fetchFromGitiles",
+                "hash": "sha256-aaLs6ZS+CdBlCJ6ZhsmdAPFxiBIij6oufsDcNeRSV1E=",
+                "rev": "0275885d8e6038c39b8a8ca55e75d1d4d1727f47",
+                "url": "https://chromium.googlesource.com/external/github.com/google/ukey2.git"
             },
             "src/third_party/vulkan-deps": {
                 "fetcher": "fetchFromGitiles",
                 "hash": "sha256-bxg82G3dkugLXpTkfk/kNcKHKWn2i8+cCKPgfbaIVZ8=",
-                "url": "https://chromium.googlesource.com/vulkan-deps",
-                "rev": "c00c99b8e979ca1b1eba221a60cb1e1d3b12f956"
+                "rev": "c00c99b8e979ca1b1eba221a60cb1e1d3b12f956",
+                "url": "https://chromium.googlesource.com/vulkan-deps"
             },
             "src/third_party/vulkan-deps/glslang/src": {
                 "fetcher": "fetchFromGitiles",
                 "hash": "sha256-QKSPJuIJe44vVNZ8fjqRKc73CZV0fECcnXvY6QRec+0=",
-                "url": "https://chromium.googlesource.com/external/github.com/KhronosGroup/glslang",
-                "rev": "57d86ab763da7b2cd1e00ecec8aa697403a8fd20"
+                "rev": "57d86ab763da7b2cd1e00ecec8aa697403a8fd20",
+                "url": "https://chromium.googlesource.com/external/github.com/KhronosGroup/glslang"
             },
             "src/third_party/vulkan-deps/spirv-cross/src": {
                 "fetcher": "fetchFromGitiles",
                 "hash": "sha256-VxwAs6mNOK/46VIJ0BroR41cNy2ywU+FQCgBatY1sBY=",
-                "url": "https://chromium.googlesource.com/external/github.com/KhronosGroup/SPIRV-Cross",
-                "rev": "b82536766d1b81631b126d1ddbe49baf42929bd3"
+                "rev": "b82536766d1b81631b126d1ddbe49baf42929bd3",
+                "url": "https://chromium.googlesource.com/external/github.com/KhronosGroup/SPIRV-Cross"
             },
             "src/third_party/vulkan-deps/spirv-headers/src": {
                 "fetcher": "fetchFromGitiles",
                 "hash": "sha256-TVfaGY9YjVHvR38OvuphsS68UIpBF21ghBg/2LL3gmE=",
-                "url": "https://chromium.googlesource.com/external/github.com/KhronosGroup/SPIRV-Headers",
-                "rev": "7b0309708da5126b89e4ce6f19835f36dc912f2f"
+                "rev": "7b0309708da5126b89e4ce6f19835f36dc912f2f",
+                "url": "https://chromium.googlesource.com/external/github.com/KhronosGroup/SPIRV-Headers"
             },
             "src/third_party/vulkan-deps/spirv-tools/src": {
                 "fetcher": "fetchFromGitiles",
                 "hash": "sha256-yUaUBCj3MqBwkGNC8ElJ/uvcm0Pl5BAdiWAw/Pi52Xo=",
-                "url": "https://chromium.googlesource.com/external/github.com/KhronosGroup/SPIRV-Tools",
-                "rev": "c96fe8b943564fbab3424219d924d21cac2e877a"
+                "rev": "c96fe8b943564fbab3424219d924d21cac2e877a",
+                "url": "https://chromium.googlesource.com/external/github.com/KhronosGroup/SPIRV-Tools"
             },
             "src/third_party/vulkan-deps/vulkan-headers/src": {
                 "fetcher": "fetchFromGitiles",
                 "hash": "sha256-kBOkj7mr4stPXUCBhNJpNL3A+9BebEwrIBEIroxdH8Y=",
-                "url": "https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-Headers",
-                "rev": "217e93c664ec6704ec2d8c36fa116c1a4a1e2d40"
+                "rev": "217e93c664ec6704ec2d8c36fa116c1a4a1e2d40",
+                "url": "https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-Headers"
             },
             "src/third_party/vulkan-deps/vulkan-loader/src": {
                 "fetcher": "fetchFromGitiles",
                 "hash": "sha256-qvpwu4mmmLAFolLZt5q9XYgZff6BHO2Yapg93JUpBVA=",
-                "url": "https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-Loader",
-                "rev": "0b2b71306aebf1e11304b9f961f9a29ab0234756"
+                "rev": "0b2b71306aebf1e11304b9f961f9a29ab0234756",
+                "url": "https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-Loader"
             },
             "src/third_party/vulkan-deps/vulkan-tools/src": {
                 "fetcher": "fetchFromGitiles",
                 "hash": "sha256-C4xJwYkMqzmYk6lP7SQNXhCt6FyuH4+pqOHltuxJkOA=",
-                "url": "https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-Tools",
-                "rev": "7c6d640a5ca3ab73c1f42d22312f672b54babfaf"
+                "rev": "7c6d640a5ca3ab73c1f42d22312f672b54babfaf",
+                "url": "https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-Tools"
             },
             "src/third_party/vulkan-deps/vulkan-utility-libraries/src": {
                 "fetcher": "fetchFromGitiles",
                 "hash": "sha256-gvia+Xb9BpOjPARKo3Sgp85Bfh1roFZ2PzCtXVFYeIU=",
-                "url": "https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-Utility-Libraries",
-                "rev": "4cfc176e3242b4dbdfd3f6c5680c5d8f2cb7db45"
+                "rev": "4cfc176e3242b4dbdfd3f6c5680c5d8f2cb7db45",
+                "url": "https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-Utility-Libraries"
             },
             "src/third_party/vulkan-deps/vulkan-validation-layers/src": {
                 "fetcher": "fetchFromGitiles",
                 "hash": "sha256-6YUjvPKjuuZdhBRfM+84btXvAHR2rj7ovocZnLS31JY=",
-                "url": "https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-ValidationLayers",
-                "rev": "d26b50b03815ff226e6df478b4ddc4b98d8deaee"
+                "rev": "d26b50b03815ff226e6df478b4ddc4b98d8deaee",
+                "url": "https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-ValidationLayers"
             },
             "src/third_party/vulkan_memory_allocator": {
                 "fetcher": "fetchFromGitiles",
                 "hash": "sha256-YzxHZagz/M8Y54UnI4h1wu5jSTuaOgv0ifC9d3fJZlQ=",
-                "url": "https://chromium.googlesource.com/external/github.com/GPUOpen-LibrariesAndSDKs/VulkanMemoryAllocator.git",
-                "rev": "56300b29fbfcc693ee6609ddad3fdd5b7a449a21"
-            },
-            "src/third_party/wayland/src": {
-                "fetcher": "fetchFromGitiles",
-                "hash": "sha256-By+3qSfYs4dM4Hcjq2j4ZlSSPhagwqtNl//HKMrc5LY=",
-                "url": "https://chromium.googlesource.com/external/anongit.freedesktop.org/git/wayland/wayland.git",
-                "rev": "af7f44122127b86a8c74cb7432909180f4899eaa"
+                "rev": "56300b29fbfcc693ee6609ddad3fdd5b7a449a21",
+                "url": "https://chromium.googlesource.com/external/github.com/GPUOpen-LibrariesAndSDKs/VulkanMemoryAllocator.git"
             },
-            "src/third_party/wayland-protocols/src": {
+            "src/third_party/wayland-protocols/gtk": {
                 "fetcher": "fetchFromGitiles",
-                "hash": "sha256-ljMcY59iOdGYeToadCuQ3t0lrBnsBdot+NiT6e+JJ04=",
-                "url": "https://chromium.googlesource.com/external/anongit.freedesktop.org/git/wayland/wayland-protocols.git",
-                "rev": "681c33c8547d6aefe24455ba2bffe1c5ae11fee5"
+                "hash": "sha256-75XNnLkF5Lt1LMRGT+T61k0/mLa3kkynfN+QWvZ0LiQ=",
+                "rev": "40ebed3a03aef096addc0af09fec4ec529d882a0",
+                "url": "https://chromium.googlesource.com/external/github.com/GNOME/gtk.git"
             },
             "src/third_party/wayland-protocols/kde": {
                 "fetcher": "fetchFromGitiles",
                 "hash": "sha256-Dmcp/2ms/k7NxPPmPkp0YNfM9z2Es1ZO0uX10bc7N2Y=",
-                "url": "https://chromium.googlesource.com/external/github.com/KDE/plasma-wayland-protocols.git",
-                "rev": "0b07950714b3a36c9b9f71fc025fc7783e82926e"
+                "rev": "0b07950714b3a36c9b9f71fc025fc7783e82926e",
+                "url": "https://chromium.googlesource.com/external/github.com/KDE/plasma-wayland-protocols.git"
             },
-            "src/third_party/wayland-protocols/gtk": {
+            "src/third_party/wayland-protocols/src": {
                 "fetcher": "fetchFromGitiles",
-                "hash": "sha256-75XNnLkF5Lt1LMRGT+T61k0/mLa3kkynfN+QWvZ0LiQ=",
-                "url": "https://chromium.googlesource.com/external/github.com/GNOME/gtk.git",
-                "rev": "40ebed3a03aef096addc0af09fec4ec529d882a0"
+                "hash": "sha256-ljMcY59iOdGYeToadCuQ3t0lrBnsBdot+NiT6e+JJ04=",
+                "rev": "681c33c8547d6aefe24455ba2bffe1c5ae11fee5",
+                "url": "https://chromium.googlesource.com/external/anongit.freedesktop.org/git/wayland/wayland-protocols.git"
+            },
+            "src/third_party/wayland/src": {
+                "fetcher": "fetchFromGitiles",
+                "hash": "sha256-By+3qSfYs4dM4Hcjq2j4ZlSSPhagwqtNl//HKMrc5LY=",
+                "rev": "af7f44122127b86a8c74cb7432909180f4899eaa",
+                "url": "https://chromium.googlesource.com/external/anongit.freedesktop.org/git/wayland/wayland.git"
             },
             "src/third_party/webdriver/pylib": {
                 "fetcher": "fetchFromGitiles",
                 "hash": "sha256-WIqWXIKVgElgg8P8laLAlUrgwodGdeVcwohZxnPKedw=",
-                "url": "https://chromium.googlesource.com/external/github.com/SeleniumHQ/selenium/py.git",
-                "rev": "fc5e7e70c098bfb189a9a74746809ad3c5c34e04"
+                "rev": "fc5e7e70c098bfb189a9a74746809ad3c5c34e04",
+                "url": "https://chromium.googlesource.com/external/github.com/SeleniumHQ/selenium/py.git"
             },
             "src/third_party/webgl/src": {
                 "fetcher": "fetchFromGitiles",
                 "hash": "sha256-dubsIPZKBGOzANGvMtQxFKFIHr0laDUGpzgRyEOjHMU=",
-                "url": "https://chromium.googlesource.com/external/khronosgroup/webgl.git",
-                "rev": "f4bf599a8b575df685c31d9c4729a70a04e377ed"
+                "rev": "f4bf599a8b575df685c31d9c4729a70a04e377ed",
+                "url": "https://chromium.googlesource.com/external/khronosgroup/webgl.git"
             },
             "src/third_party/webgpu-cts/src": {
                 "fetcher": "fetchFromGitiles",
                 "hash": "sha256-RC2t+H44HyIvHLRcZyebSgVZvbmtw0vsy2KJRUlvTKs=",
-                "url": "https://chromium.googlesource.com/external/github.com/gpuweb/cts.git",
-                "rev": "e082b08475761a2ba6a3349dfea72f704c8b68d4"
+                "rev": "e082b08475761a2ba6a3349dfea72f704c8b68d4",
+                "url": "https://chromium.googlesource.com/external/github.com/gpuweb/cts.git"
             },
             "src/third_party/webrtc": {
                 "fetcher": "fetchFromGitiles",
                 "hash": "sha256-KipyGhohU2fQF67dDm4tPeH9xbFC2FNxhU4yiga5pwg=",
-                "url": "https://webrtc.googlesource.com/src.git",
-                "rev": "6b419a0536b1a0ccfff3682f997c6f19bcbd9bd8"
-            },
-            "src/third_party/wuffs/src": {
-                "fetcher": "fetchFromGitiles",
-                "hash": "sha256-373d2F/STcgCHEq+PO+SCHrKVOo6uO1rqqwRN5eeBCw=",
-                "url": "https://skia.googlesource.com/external/github.com/google/wuffs-mirror-release-c.git",
-                "rev": "e3f919ccfe3ef542cfc983a82146070258fb57f8"
+                "rev": "6b419a0536b1a0ccfff3682f997c6f19bcbd9bd8",
+                "url": "https://webrtc.googlesource.com/src.git"
             },
             "src/third_party/weston/src": {
                 "fetcher": "fetchFromGitiles",
                 "hash": "sha256-y2srFaPUOoB2umzpo4+hFfhNlqXM2AoMGOpUy/ZSacg=",
-                "url": "https://chromium.googlesource.com/external/anongit.freedesktop.org/git/wayland/weston.git",
-                "rev": "ccf29cb237c3ed09c5f370f35239c93d07abfdd7"
+                "rev": "ccf29cb237c3ed09c5f370f35239c93d07abfdd7",
+                "url": "https://chromium.googlesource.com/external/anongit.freedesktop.org/git/wayland/weston.git"
+            },
+            "src/third_party/wuffs/src": {
+                "fetcher": "fetchFromGitiles",
+                "hash": "sha256-373d2F/STcgCHEq+PO+SCHrKVOo6uO1rqqwRN5eeBCw=",
+                "rev": "e3f919ccfe3ef542cfc983a82146070258fb57f8",
+                "url": "https://skia.googlesource.com/external/github.com/google/wuffs-mirror-release-c.git"
             },
             "src/third_party/xdg-utils": {
                 "fetcher": "fetchFromGitiles",
                 "hash": "sha256-WuQ9uDq+QD17Y20ACFGres4nbkeOiTE2y+tY1avAT5U=",
-                "url": "https://chromium.googlesource.com/chromium/deps/xdg-utils.git",
-                "rev": "cb54d9db2e535ee4ef13cc91b65a1e2741a94a44"
+                "rev": "cb54d9db2e535ee4ef13cc91b65a1e2741a94a44",
+                "url": "https://chromium.googlesource.com/chromium/deps/xdg-utils.git"
             },
             "src/third_party/xnnpack/src": {
                 "fetcher": "fetchFromGitiles",
                 "hash": "sha256-JE3qg3lTpKTLgnpiNw6+wkhVXGx55MiyVDuvEp7Dk0Y=",
-                "url": "https://chromium.googlesource.com/external/github.com/google/XNNPACK.git",
-                "rev": "a68aa0a24b0d3e1c75f2f7c0915b70121cee0470"
-            },
-            "src/tools/page_cycler/acid3": {
-                "fetcher": "fetchFromGitiles",
-                "hash": "sha256-s/49EaYQRsyxuLejXc1zGDYTD7uO0ddaQIJBP50Bvw0=",
-                "url": "https://chromium.googlesource.com/chromium/deps/acid3.git",
-                "rev": "a926d0a32e02c4c03ae95bb798e6c780e0e184ba"
+                "rev": "a68aa0a24b0d3e1c75f2f7c0915b70121cee0470",
+                "url": "https://chromium.googlesource.com/external/github.com/google/XNNPACK.git"
             },
             "src/third_party/zstd/src": {
                 "fetcher": "fetchFromGitiles",
                 "hash": "sha256-9FxRLrcbJoWAd+3Elr9mJ3vG6ilT6ZQZqdY9OiTpcWw=",
-                "url": "https://chromium.googlesource.com/external/github.com/facebook/zstd.git",
-                "rev": "050fec5c378d676fede8b2171ec5e84f6afa1504"
+                "rev": "050fec5c378d676fede8b2171ec5e84f6afa1504",
+                "url": "https://chromium.googlesource.com/external/github.com/facebook/zstd.git"
+            },
+            "src/tools/page_cycler/acid3": {
+                "fetcher": "fetchFromGitiles",
+                "hash": "sha256-s/49EaYQRsyxuLejXc1zGDYTD7uO0ddaQIJBP50Bvw0=",
+                "rev": "a926d0a32e02c4c03ae95bb798e6c780e0e184ba",
+                "url": "https://chromium.googlesource.com/chromium/deps/acid3.git"
             },
             "src/v8": {
                 "fetcher": "fetchFromGitiles",
                 "hash": "sha256-qDQ1rt/9nfv9L6RJLZDb1KTn9+Z70XDjkTs6gOt3u/Y=",
-                "url": "https://chromium.googlesource.com/v8/v8.git",
-                "rev": "ddb4756a90fb7d89dc789859f8b2a3639d8de125"
+                "rev": "ddb4756a90fb7d89dc789859f8b2a3639d8de125",
+                "url": "https://chromium.googlesource.com/v8/v8.git"
+            }
+        },
+        "electron_yarn_hash": "0f868gk3d2cablpczav8a4vhk4nfirph45yzjz18mgzgday7w8hf",
+        "modules": "121",
+        "node": "20.9.0",
+        "version": "29.3.3"
+    },
+    "30": {
+        "chrome": "124.0.6367.119",
+        "chromium": {
+            "deps": {
+                "gn": {
+                    "hash": "sha256-aEL1kIhgPAFqdb174dG093HoLhCJ07O1Kpqfu7r14wQ=",
+                    "rev": "22581fb46c0c0c9530caa67149ee4dd8811063cf",
+                    "url": "https://gn.googlesource.com/gn",
+                    "version": "2024-03-14"
+                }
+            },
+            "version": "124.0.6367.119"
+        },
+        "chromium_npm_hash": "sha256-oILlQlzTcc0YqAvK5htRvG/YXWJTDtJ60Z1EcBEj9dw=",
+        "deps": {
+            "src": {
+                "fetcher": "fetchFromGitiles",
+                "hash": "sha256-mhH2pQskQw39PUCociK/g7QLjI/cDh2GXk9PJIeJ7HU=",
+                "postFetch": "rm -r $out/third_party/blink/web_tests; rm -r $out/third_party/hunspell/tests; rm -r $out/content/test/data; rm -r $out/courgette/testdata; rm -r $out/extensions/test/data; rm -r $out/media/test/data; ",
+                "rev": "124.0.6367.119",
+                "url": "https://chromium.googlesource.com/chromium/src.git"
+            },
+            "src/chrome/test/data/perf/canvas_bench": {
+                "fetcher": "fetchFromGitiles",
+                "hash": "sha256-svOuyBGKloBLM11xLlWCDsB4PpRjdKTBdW2UEW4JQjM=",
+                "rev": "a7b40ea5ae0239517d78845a5fc9b12976bfc732",
+                "url": "https://chromium.googlesource.com/chromium/canvas_bench.git"
+            },
+            "src/chrome/test/data/perf/frame_rate/content": {
+                "fetcher": "fetchFromGitiles",
+                "hash": "sha256-t4kcuvH0rkPBkcdiMsoNQaRwU09eU+oSvyHDiAHrKXo=",
+                "rev": "c10272c88463efeef6bb19c9ec07c42bc8fe22b9",
+                "url": "https://chromium.googlesource.com/chromium/frame_rate/content.git"
+            },
+            "src/chrome/test/data/xr/webvr_info": {
+                "fetcher": "fetchFromGitiles",
+                "hash": "sha256-BsAPwc4oEWri0TlqhyxqFNqKdfgVSrB0vQyISmYY4eg=",
+                "rev": "c58ae99b9ff9e2aa4c524633519570bf33536248",
+                "url": "https://chromium.googlesource.com/external/github.com/toji/webvr.info.git"
+            },
+            "src/docs/website": {
+                "fetcher": "fetchFromGitiles",
+                "hash": "sha256-2WyiSqza9Mp2G8KHUnrzfikC7hGcUTLu4/W9AD6Zdi4=",
+                "rev": "02057aa20e0dd4598967e3daf2f25c815962ef1c",
+                "url": "https://chromium.googlesource.com/website.git"
+            },
+            "src/electron": {
+                "fetcher": "fetchFromGitHub",
+                "hash": "sha256-tW9LODdKT8W6UYmpqh1bwGTk5wQYJ3TSxSvxfAqc4uQ=",
+                "owner": "electron",
+                "repo": "electron",
+                "rev": "v30.0.3"
+            },
+            "src/media/cdm/api": {
+                "fetcher": "fetchFromGitiles",
+                "hash": "sha256-6J6aSYW0or99VAgMNJJOdJqMJspoG7w1HxDN50MV5bw=",
+                "rev": "fef0b5aa1bd31efb88dfab804bdbe614f3d54f28",
+                "url": "https://chromium.googlesource.com/chromium/cdm.git"
+            },
+            "src/net/third_party/quiche/src": {
+                "fetcher": "fetchFromGitiles",
+                "hash": "sha256-BJ3CCKFHOcIgIqnYxfjfOqbRhnt9ycrZfAFRZOLPYZQ=",
+                "rev": "9f8738892edd83219d2f83fdd73c7c14d5dbb80d",
+                "url": "https://quiche.googlesource.com/quiche.git"
+            },
+            "src/third_party/accessibility_test_framework/src": {
+                "fetcher": "fetchFromGitiles",
+                "hash": "sha256-mzVgoxxBWebesG6okyMxxmO6oH+TITA4o9ucHHMMzkQ=",
+                "rev": "4a764c690353ea136c82f1a696a70bf38d1ef5fe",
+                "url": "https://chromium.googlesource.com/external/github.com/google/Accessibility-Test-Framework-for-Android.git"
+            },
+            "src/third_party/angle": {
+                "fetcher": "fetchFromGitiles",
+                "hash": "sha256-O89W5dE97eUKpOnSuoBbl2BCigsDYK609Hq9pqd25CQ=",
+                "rev": "0b776d32f69a932acb61963d9daad9e13f610944",
+                "url": "https://chromium.googlesource.com/angle/angle.git"
+            },
+            "src/third_party/angle/third_party/VK-GL-CTS/src": {
+                "fetcher": "fetchFromGitiles",
+                "hash": "sha256-eQvZmm6aAsI+z++SMM9i/SsREjikIjMLpedzw57eKyA=",
+                "rev": "ec9827528085fcffca353c8d941ec20e3de7aaea",
+                "url": "https://chromium.googlesource.com/external/github.com/KhronosGroup/VK-GL-CTS"
+            },
+            "src/third_party/angle/third_party/glmark2/src": {
+                "fetcher": "fetchFromGitiles",
+                "hash": "sha256-L7+zWM0qn8WFhmON7DGvarTsN1YHt1sn5+hazTOZrrk=",
+                "rev": "ca8de51fedb70bace5351c6b002eb952c747e889",
+                "url": "https://chromium.googlesource.com/external/github.com/glmark2/glmark2"
+            },
+            "src/third_party/angle/third_party/rapidjson/src": {
+                "fetcher": "fetchFromGitiles",
+                "hash": "sha256-btUl1a/B0sXwf/+hyvCvVJjWqIkXfVYCpHm3TeBuOxk=",
+                "rev": "781a4e667d84aeedbeb8184b7b62425ea66ec59f",
+                "url": "https://chromium.googlesource.com/external/github.com/Tencent/rapidjson"
+            },
+            "src/third_party/anonymous_tokens/src": {
+                "fetcher": "fetchFromGitiles",
+                "hash": "sha256-ZKvfil6V4PexxVl/UCW/mUINlCHBTrZnhTB0UhTW0PQ=",
+                "rev": "321a40ba18a083feccb8ae2f99a8676bb1702676",
+                "url": "https://chromium.googlesource.com/external/github.com/google/anonymous-tokens.git"
+            },
+            "src/third_party/beto-core/src": {
+                "fetcher": "fetchFromGitiles",
+                "hash": "sha256-7GkqH4hgTVmISjUy/Km/X28tBSsiMs3JRnDmol1zaag=",
+                "rev": "8bd72cfb219344308ee857bcbe65a27fe91acfe8",
+                "url": "https://beto-core.googlesource.com/beto-core.git"
+            },
+            "src/third_party/boringssl/src": {
+                "fetcher": "fetchFromGitiles",
+                "hash": "sha256-RiDdH26xzoAD2NdTNKDraco9p2jKHXJxbRWI3pUhI78=",
+                "rev": "4fa4804c8ab4521079af62dba5260a99c34b8a29",
+                "url": "https://boringssl.googlesource.com/boringssl.git"
+            },
+            "src/third_party/breakpad/breakpad": {
+                "fetcher": "fetchFromGitiles",
+                "hash": "sha256-qAIXZ1jZous0Un0jVkOQ66nA2525NziV3Lbso2/+Z1Y=",
+                "rev": "76788faa4ef163081f82273bfca7fae8a734b971",
+                "url": "https://chromium.googlesource.com/breakpad/breakpad.git"
+            },
+            "src/third_party/cast_core/public/src": {
+                "fetcher": "fetchFromGitiles",
+                "hash": "sha256-AalRQhJmornCqmvE2+36J/3LubaA0jr6P1PXy32lX4I=",
+                "rev": "71f51fd6fa45fac73848f65421081edd723297cd",
+                "url": "https://chromium.googlesource.com/cast_core/public"
+            },
+            "src/third_party/catapult": {
+                "fetcher": "fetchFromGitiles",
+                "hash": "sha256-HhpP5OeGF9in2XEoZMfMCIAFHAqlDvJpfSWa8JfGWzM=",
+                "rev": "9128ec6d34905512199f953bc60ff75ca29d0cf2",
+                "url": "https://chromium.googlesource.com/catapult.git"
+            },
+            "src/third_party/ced/src": {
+                "fetcher": "fetchFromGitiles",
+                "hash": "sha256-ySG74Rj2i2c/PltEgHVEDq+N8yd9gZmxNktc56zIUiY=",
+                "rev": "ba412eaaacd3186085babcd901679a48863c7dd5",
+                "url": "https://chromium.googlesource.com/external/github.com/google/compact_enc_det.git"
+            },
+            "src/third_party/chromium-variations": {
+                "fetcher": "fetchFromGitiles",
+                "hash": "sha256-YwnqJynhunMvIduUcJ1/nBLabe/WS4RDox+XLMYMA2c=",
+                "rev": "e78e275e34f94fdf333245137878f0f6482db67d",
+                "url": "https://chromium.googlesource.com/chromium-variations.git"
+            },
+            "src/third_party/clang-format/script": {
+                "fetcher": "fetchFromGitiles",
+                "hash": "sha256-7VvofDDQe+SoMRBfVk26q+C+OPyOE7QH35wVWkfDKxs=",
+                "rev": "e5337933f2951cacd3aeacd238ce4578163ca0b9",
+                "url": "https://chromium.googlesource.com/external/github.com/llvm/llvm-project/clang/tools/clang-format.git"
+            },
+            "src/third_party/cld_3/src": {
+                "fetcher": "fetchFromGitiles",
+                "hash": "sha256-C3MOMBUy9jgkT9BAi/Fgm2UH4cxRuwSBEcRl3hzM2Ss=",
+                "rev": "b48dc46512566f5a2d41118c8c1116c4f96dc661",
+                "url": "https://chromium.googlesource.com/external/github.com/google/cld_3.git"
+            },
+            "src/third_party/colorama/src": {
+                "fetcher": "fetchFromGitiles",
+                "hash": "sha256-6ZTdPYSHdQOLYMSnE+Tp7PgsVTs3U2awGu9Qb4Rg/tk=",
+                "rev": "3de9f013df4b470069d03d250224062e8cf15c49",
+                "url": "https://chromium.googlesource.com/external/colorama.git"
+            },
+            "src/third_party/content_analysis_sdk/src": {
+                "fetcher": "fetchFromGitiles",
+                "hash": "sha256-f5Jmk1MiGjaRdLun+v/GKVl8Yv9hOZMTQUSxgiJalcY=",
+                "rev": "9a408736204513e0e95dd2ab3c08de0d95963efc",
+                "url": "https://chromium.googlesource.com/external/github.com/chromium/content_analysis_sdk.git"
+            },
+            "src/third_party/cpu_features/src": {
+                "fetcher": "fetchFromGitiles",
+                "hash": "sha256-E8LoVzhe+TAmARWZTSuINlsVhzpUJMxPPCGe/dHZcyA=",
+                "rev": "936b9ab5515dead115606559502e3864958f7f6e",
+                "url": "https://chromium.googlesource.com/external/github.com/google/cpu_features.git"
+            },
+            "src/third_party/cpuinfo/src": {
+                "fetcher": "fetchFromGitiles",
+                "hash": "sha256-9QRj4OA1qWlZujVJ6Z9x3190taVjTCZocM/272eepIs=",
+                "rev": "aa4b2163b99ac9534194520f70b93eeefb0b3b4e",
+                "url": "https://chromium.googlesource.com/external/github.com/pytorch/cpuinfo.git"
+            },
+            "src/third_party/crc32c/src": {
+                "fetcher": "fetchFromGitiles",
+                "hash": "sha256-urg0bmnfMfHagLPELp4WrNCz1gBZ6DFOWpDue1KsMtc=",
+                "rev": "fa5ade41ee480003d9c5af6f43567ba22e4e17e6",
+                "url": "https://chromium.googlesource.com/external/github.com/google/crc32c.git"
+            },
+            "src/third_party/cros-components/src": {
+                "fetcher": "fetchFromGitiles",
+                "hash": "sha256-w2VosAdg+GtalFaGxDB8FB2w7498PMudsXxX4SpJqYE=",
+                "rev": "a254b37189cf97cfc76634644e58be511aefb69a",
+                "url": "https://chromium.googlesource.com/external/google3/cros_components.git"
+            },
+            "src/third_party/cros_system_api": {
+                "fetcher": "fetchFromGitiles",
+                "hash": "sha256-dFp4Hy7fldUjXxUTtcyRXdt7zpIP2lchzDKkk0b+iko=",
+                "rev": "9a51dc89c4f21362e858b20a6a7cc8adfd7c7238",
+                "url": "https://chromium.googlesource.com/chromiumos/platform2/system_api.git"
+            },
+            "src/third_party/crossbench": {
+                "fetcher": "fetchFromGitiles",
+                "hash": "sha256-4gQn5y/Z6ccYA/0VjIQfMpFMkEuPA78jyCgZ+FpmsFs=",
+                "rev": "acbea986f40578f43c88239c78c797f61842e642",
+                "url": "https://chromium.googlesource.com/crossbench.git"
+            },
+            "src/third_party/dav1d/libdav1d": {
+                "fetcher": "fetchFromGitiles",
+                "hash": "sha256-AA2bcrsW1xFspyl5TqYUJeAwKM06rWTNtXr/uMVIJmw=",
+                "rev": "006ca01d387ac6652825d6cce1a57b2de67dbf8d",
+                "url": "https://chromium.googlesource.com/external/github.com/videolan/dav1d.git"
+            },
+            "src/third_party/dawn": {
+                "fetcher": "fetchFromGitiles",
+                "hash": "sha256-GUB25IUviLFxGI3UQJS/kf51BZBeoYFqbiaSTSY11qA=",
+                "rev": "394edde38c9323f7c910e3bdec9b7efc4ee39379",
+                "url": "https://dawn.googlesource.com/dawn.git"
+            },
+            "src/third_party/dawn/third_party/dxc": {
+                "fetcher": "fetchFromGitiles",
+                "hash": "sha256-wsQtYqH8gFsDmLTUA7SKvTYiGQWX7Vbcz1QtsAg/epY=",
+                "rev": "bd7aa97798735e1288d36de41dcda75e867550e4",
+                "url": "https://chromium.googlesource.com/external/github.com/microsoft/DirectXShaderCompiler"
+            },
+            "src/third_party/dawn/third_party/dxheaders": {
+                "fetcher": "fetchFromGitiles",
+                "hash": "sha256-0Miw1Cy/jmOo7bLFBOHuTRDV04cSeyvUEyPkpVsX9DA=",
+                "rev": "980971e835876dc0cde415e8f9bc646e64667bf7",
+                "url": "https://chromium.googlesource.com/external/github.com/microsoft/DirectX-Headers"
+            },
+            "src/third_party/dawn/third_party/glfw": {
+                "fetcher": "fetchFromGitiles",
+                "hash": "sha256-TwAPRjQxIz3J+zbNxzCp5Tek7MwisxdekMpY5QGsKyg=",
+                "rev": "62e175ef9fae75335575964c845a302447c012c7",
+                "url": "https://chromium.googlesource.com/external/github.com/glfw/glfw"
+            },
+            "src/third_party/dawn/third_party/khronos/EGL-Registry": {
+                "fetcher": "fetchFromGitiles",
+                "hash": "sha256-Z6DwLfgQ1wsJXz0KKJyVieOatnDmx3cs0qJ6IEgSq1A=",
+                "rev": "7dea2ed79187cd13f76183c4b9100159b9e3e071",
+                "url": "https://chromium.googlesource.com/external/github.com/KhronosGroup/EGL-Registry"
+            },
+            "src/third_party/dawn/third_party/khronos/OpenGL-Registry": {
+                "fetcher": "fetchFromGitiles",
+                "hash": "sha256-K3PcRIiD3AmnbiSm5TwaLs4Gu9hxaN8Y91WMKK8pOXE=",
+                "rev": "5bae8738b23d06968e7c3a41308568120943ae77",
+                "url": "https://chromium.googlesource.com/external/github.com/KhronosGroup/OpenGL-Registry"
+            },
+            "src/third_party/dawn/third_party/webgpu-cts": {
+                "fetcher": "fetchFromGitiles",
+                "hash": "sha256-VTYTdvBNxqRzYjEx5ml4LnkDEUGpyvssSzDOndHyYgU=",
+                "rev": "3e45aee0b16dc724a79a0feb0490e2ddb06c9f0d",
+                "url": "https://chromium.googlesource.com/external/github.com/gpuweb/cts"
+            },
+            "src/third_party/depot_tools": {
+                "fetcher": "fetchFromGitiles",
+                "hash": "sha256-YmjhwOjqCRxDhC7P+aRoNN+Vokl7hB4s6hDNFS5gLYo=",
+                "rev": "9c43bc14f1a7404fd4b6f744050d553acca557bf",
+                "url": "https://chromium.googlesource.com/chromium/tools/depot_tools.git"
+            },
+            "src/third_party/devtools-frontend/src": {
+                "fetcher": "fetchFromGitiles",
+                "hash": "sha256-FVYUoK3KWlIjQTWlNkjmnzJDfpRkEZ9sFWTr4GdOUJw=",
+                "rev": "694ad4ed3c55195acd701950d2b2528880e9201e",
+                "url": "https://chromium.googlesource.com/devtools/devtools-frontend"
+            },
+            "src/third_party/dom_distiller_js/dist": {
+                "fetcher": "fetchFromGitiles",
+                "hash": "sha256-yuEBD2XQlV3FGI/i7lTmJbCqzeBiuG1Qow8wvsppGJw=",
+                "rev": "199de96b345ada7c6e7e6ba3d2fa7a6911b8767d",
+                "url": "https://chromium.googlesource.com/chromium/dom-distiller/dist.git"
+            },
+            "src/third_party/eigen3/src": {
+                "fetcher": "fetchFromGitiles",
+                "hash": "sha256-tx/XR7xJ7IMh5RMvL8wRo/g+dfD3xcjZkLPSY4D9HaY=",
+                "rev": "2a9055b50ed22101da7d77e999b90ed50956fe0b",
+                "url": "https://chromium.googlesource.com/external/gitlab.com/libeigen/eigen.git"
+            },
+            "src/third_party/electron_node": {
+                "fetcher": "fetchFromGitHub",
+                "hash": "sha256-9/TPxYbnQPDpWf/Zti8bTh22e/uFRlzs7SCThfx/byQ=",
+                "owner": "nodejs",
+                "repo": "node",
+                "rev": "v20.11.1"
+            },
+            "src/third_party/emoji-segmenter/src": {
+                "fetcher": "fetchFromGitiles",
+                "hash": "sha256-oT9mAKoKnrsFsBAeTRfPOXM76HRQQabFAlPpfKUGFhs=",
+                "rev": "9ba6d25d0d9313569665d4a9d2b34f0f39f9a50e",
+                "url": "https://chromium.googlesource.com/external/github.com/google/emoji-segmenter.git"
+            },
+            "src/third_party/engflow-reclient-configs": {
+                "fetcher": "fetchFromGitHub",
+                "hash": "sha256-aZXYPj9KYBiZnljqOLlWJWS396Fg3EhjiQLZmkwCBsY=",
+                "owner": "EngFlow",
+                "repo": "reclient-configs",
+                "rev": "955335c30a752e9ef7bff375baab5e0819b6c00d"
+            },
+            "src/third_party/expat/src": {
+                "fetcher": "fetchFromGitiles",
+                "hash": "sha256-FXTDGAK03jc2wvazhRKqtsFRKZUYS/9HLpZNp4JfZJI=",
+                "rev": "441f98d02deafd9b090aea568282b28f66a50e36",
+                "url": "https://chromium.googlesource.com/external/github.com/libexpat/libexpat.git"
+            },
+            "src/third_party/farmhash/src": {
+                "fetcher": "fetchFromGitiles",
+                "hash": "sha256-5n58VEUxa/K//jAfZqG4cXyfxrp50ogWDNYcgiXVHdc=",
+                "rev": "816a4ae622e964763ca0862d9dbd19324a1eaf45",
+                "url": "https://chromium.googlesource.com/external/github.com/google/farmhash.git"
+            },
+            "src/third_party/ffmpeg": {
+                "fetcher": "fetchFromGitiles",
+                "hash": "sha256-5ynDd2wQ3QtS6SM2X+j3hTKB9aVhGrjoIlGSzy43K8Q=",
+                "rev": "52d8ef3799b2f16b66351dd0972bb0bcee1648ac",
+                "url": "https://chromium.googlesource.com/chromium/third_party/ffmpeg.git"
+            },
+            "src/third_party/flac": {
+                "fetcher": "fetchFromGitiles",
+                "hash": "sha256-gvTFPNOlBfozptaH7lTb9iD/09AmpdT3kCl9ClszjEs=",
+                "rev": "689da3a7ed50af7448c3f1961d1791c7c1d9c85c",
+                "url": "https://chromium.googlesource.com/chromium/deps/flac.git"
+            },
+            "src/third_party/flatbuffers/src": {
+                "fetcher": "fetchFromGitiles",
+                "hash": "sha256-LecJwLDG6szZZ/UOCFD+MDqH3NKawn0sdEwgnMt8wMM=",
+                "rev": "bcb9ef187628fe07514e57756d05e6a6296f7dc5",
+                "url": "https://chromium.googlesource.com/external/github.com/google/flatbuffers.git"
+            },
+            "src/third_party/fontconfig/src": {
+                "fetcher": "fetchFromGitiles",
+                "hash": "sha256-W5WIgC6A52kY4fNkbsDEa0o+dfd97Rl5NKfgnIRpI00=",
+                "rev": "14d466b30a8ab4a9d789977ed94f2c30e7209267",
+                "url": "https://chromium.googlesource.com/external/fontconfig.git"
+            },
+            "src/third_party/fp16/src": {
+                "fetcher": "fetchFromGitiles",
+                "hash": "sha256-m2d9bqZoGWzuUPGkd29MsrdscnJRtuIkLIMp3fMmtRY=",
+                "rev": "0a92994d729ff76a58f692d3028ca1b64b145d91",
+                "url": "https://chromium.googlesource.com/external/github.com/Maratyszcza/FP16.git"
+            },
+            "src/third_party/freetype-testing/src": {
+                "fetcher": "fetchFromGitiles",
+                "hash": "sha256-2aHPchIK5Oce5+XxdXVCC+8EM6i0XT0rFbjSIVa2L1A=",
+                "rev": "7a69b1a2b028476f840ab7d4a2ffdfe4eb2c389f",
+                "url": "https://chromium.googlesource.com/external/github.com/freetype/freetype2-testing.git"
+            },
+            "src/third_party/freetype/src": {
+                "fetcher": "fetchFromGitiles",
+                "hash": "sha256-FtFRJaxyp7vo4EPBiqx05OsKo1UA1g/h+9BjuoijLFA=",
+                "rev": "f42ce25563b73fed0123d18a2556b9ba01d2c76b",
+                "url": "https://chromium.googlesource.com/chromium/src/third_party/freetype2.git"
+            },
+            "src/third_party/fuzztest/src": {
+                "fetcher": "fetchFromGitiles",
+                "hash": "sha256-utl9uwFqMqDW9ll9/3lh3rfjmPHlv5sx/enQuPffQZ8=",
+                "rev": "bddcd9f77ba0a81a99ce50bcadf5149efe545df0",
+                "url": "https://chromium.googlesource.com/external/github.com/google/fuzztest.git"
+            },
+            "src/third_party/fxdiv/src": {
+                "fetcher": "fetchFromGitiles",
+                "hash": "sha256-LjX5kivfHbqCIA5pF9qUvswG1gjOFo3CMpX0VR+Cn38=",
+                "rev": "63058eff77e11aa15bf531df5dd34395ec3017c8",
+                "url": "https://chromium.googlesource.com/external/github.com/Maratyszcza/FXdiv.git"
+            },
+            "src/third_party/gemmlowp/src": {
+                "fetcher": "fetchFromGitiles",
+                "hash": "sha256-O5wD8wxgis0qYMaY+xZ21GBDVQFphMRvInCOswS6inA=",
+                "rev": "13d57703abca3005d97b19df1f2db731607a7dc2",
+                "url": "https://chromium.googlesource.com/external/github.com/google/gemmlowp.git"
+            },
+            "src/third_party/google_benchmark/src": {
+                "fetcher": "fetchFromGitiles",
+                "hash": "sha256-gztnxui9Fe/FTieMjdvfJjWHjkImtlsHn6fM1FruyME=",
+                "rev": "344117638c8ff7e239044fd0fa7085839fc03021",
+                "url": "https://chromium.googlesource.com/external/github.com/google/benchmark.git"
+            },
+            "src/third_party/googletest/src": {
+                "fetcher": "fetchFromGitiles",
+                "hash": "sha256-mNYS3k2fAc7Q6GlpnO7pkXSkGHfUH1MXuZXkCmwG4q4=",
+                "rev": "c231e6f5b152029dbd5fa4a9e0c04095035aec3f",
+                "url": "https://chromium.googlesource.com/external/github.com/google/googletest.git"
+            },
+            "src/third_party/grpc/src": {
+                "fetcher": "fetchFromGitiles",
+                "hash": "sha256-64JEVCx/PCM0dvv7kAQvSjLc0QbRAZVBDzwD/FAV6T8=",
+                "rev": "822dab21d9995c5cf942476b35ca12a1aa9d2737",
+                "url": "https://chromium.googlesource.com/external/github.com/grpc/grpc.git"
+            },
+            "src/third_party/harfbuzz-ng/src": {
+                "fetcher": "fetchFromGitiles",
+                "hash": "sha256-VAan6P8PHSq8RsGE4YbI/wCfFAhzl3nJMt0cQBYi5Ls=",
+                "rev": "155015f4bec434ecc2f94621665844218f05ce51",
+                "url": "https://chromium.googlesource.com/external/github.com/harfbuzz/harfbuzz.git"
+            },
+            "src/third_party/highway/src": {
+                "fetcher": "fetchFromGitiles",
+                "hash": "sha256-kNb9UVcFq2BIf9nftUgN8ciFFCzRCou/sLwVf08jf3E=",
+                "rev": "8f20644eca693cfb74aa795b0006b6779c370e7a",
+                "url": "https://chromium.googlesource.com/external/github.com/google/highway.git"
+            },
+            "src/third_party/hunspell_dictionaries": {
+                "fetcher": "fetchFromGitiles",
+                "hash": "sha256-67mvpJRFFa9eMfyqFMURlbxOaTJBICnk+gl0b0mEHl8=",
+                "rev": "41cdffd71c9948f63c7ad36e1fb0ff519aa7a37e",
+                "url": "https://chromium.googlesource.com/chromium/deps/hunspell_dictionaries.git"
+            },
+            "src/third_party/icu": {
+                "fetcher": "fetchFromGitiles",
+                "hash": "sha256-YYoslfgGfmDpSTxtCOmGGfwQg6mVU1IggzAtWRwwcMc=",
+                "rev": "bad7ddbf921358177e56fd723c2f59f8041a370f",
+                "url": "https://chromium.googlesource.com/chromium/deps/icu.git"
+            },
+            "src/third_party/jsoncpp/source": {
+                "fetcher": "fetchFromGitiles",
+                "hash": "sha256-bSLNcoYBz3QCt5VuTR056V9mU2PmBuYBa0W6hFg2m8Q=",
+                "rev": "42e892d96e47b1f6e29844cc705e148ec4856448",
+                "url": "https://chromium.googlesource.com/external/github.com/open-source-parsers/jsoncpp.git"
+            },
+            "src/third_party/leveldatabase/src": {
+                "fetcher": "fetchFromGitiles",
+                "hash": "sha256-TTX2FrmcWsgqrh4uzqMyGnnnG51cVC2ILfdLxD65MLY=",
+                "rev": "068d5ee1a3ac40dabd00d211d5013af44be55bea",
+                "url": "https://chromium.googlesource.com/external/leveldb.git"
+            },
+            "src/third_party/libFuzzer/src": {
+                "fetcher": "fetchFromGitiles",
+                "hash": "sha256-T0dO+1A0r6kLFoleMkY8heu80biPntCpvA6YfqA7b+E=",
+                "rev": "758bd21f103a501b362b1ca46fa8fcb692eaa303",
+                "url": "https://chromium.googlesource.com/external/github.com/llvm/llvm-project/compiler-rt/lib/fuzzer.git"
+            },
+            "src/third_party/libaddressinput/src": {
+                "fetcher": "fetchFromGitiles",
+                "hash": "sha256-xvUUQSPrvqUp5DI9AqlRTWurwDW087c6v4RvI+4sfOQ=",
+                "rev": "e8712e415627f22d0b00ebee8db99547077f39bd",
+                "url": "https://chromium.googlesource.com/external/libaddressinput.git"
+            },
+            "src/third_party/libaom/source/libaom": {
+                "fetcher": "fetchFromGitiles",
+                "hash": "sha256-zgtNjrQE+fzr8Aye0rAkQR5enzfacCAsRbC3crUrMQ4=",
+                "rev": "158761dfb40e77f3a54c3b14a596112837baa24b",
+                "url": "https://aomedia.googlesource.com/aom.git"
+            },
+            "src/third_party/libavif/src": {
+                "fetcher": "fetchFromGitiles",
+                "hash": "sha256-moVf7i0gZ/KW53ACcVIWKWNL0oAimOSU1m5IdQHz6z8=",
+                "rev": "43ec9ace31c6ca11efddddb61b94b744450d46e2",
+                "url": "https://chromium.googlesource.com/external/github.com/AOMediaCodec/libavif.git"
+            },
+            "src/third_party/libavifinfo/src": {
+                "fetcher": "fetchFromGitiles",
+                "hash": "sha256-UAc4iYWrKWteH98hD3QLkD3JWmV/rsvWhFIVJN7tc+Q=",
+                "rev": "b496868f7c3fd17dfeeecc0364fe37e19edd548a",
+                "url": "https://aomedia.googlesource.com/libavifinfo.git"
+            },
+            "src/third_party/libc++/src": {
+                "fetcher": "fetchFromGitiles",
+                "hash": "sha256-k2bSS8OhVyd0/metFpwFvRCWYOaLEU0Md4AW50GpGTM=",
+                "rev": "80307e66e74bae927fb8709a549859e777e3bf0b",
+                "url": "https://chromium.googlesource.com/external/github.com/llvm/llvm-project/libcxx.git"
+            },
+            "src/third_party/libc++abi/src": {
+                "fetcher": "fetchFromGitiles",
+                "hash": "sha256-AdyX58sg//O2e76HAcRC5DcuiTsd68QS4mNVkPv0Vck=",
+                "rev": "ec88f0ab262c5f2426dbf138b92ee9ae5961e431",
+                "url": "https://chromium.googlesource.com/external/github.com/llvm/llvm-project/libcxxabi.git"
+            },
+            "src/third_party/libdrm/src": {
+                "fetcher": "fetchFromGitiles",
+                "hash": "sha256-NUxS2rBJ0nFblvHRQUfKT933+DAws5RUTDb+RLxRF4M=",
+                "rev": "98e1db501173303e58ef6a1def94ab7a2d84afc1",
+                "url": "https://chromium.googlesource.com/chromiumos/third_party/libdrm.git"
+            },
+            "src/third_party/libgav1/src": {
+                "fetcher": "fetchFromGitiles",
+                "hash": "sha256-tB9Wzjs4Sct7QendDMKkaEE4ddD6ptnNCmj1yYKcQSc=",
+                "rev": "f9a93151adf7203c6ab90f3c94bbd5972b7967b8",
+                "url": "https://chromium.googlesource.com/codecs/libgav1.git"
+            },
+            "src/third_party/libipp/libipp": {
+                "fetcher": "fetchFromGitiles",
+                "hash": "sha256-gxU92lHLd6uxO8T3QWhZIK0hGy97cki705DV0VimCPY=",
+                "rev": "2209bb84a8e122dab7c02fe66cc61a7b42873d7f",
+                "url": "https://chromium.googlesource.com/chromiumos/platform2/libipp.git"
+            },
+            "src/third_party/libjpeg_turbo": {
+                "fetcher": "fetchFromGitiles",
+                "hash": "sha256-+t75ZAdOXc7Nd1/8zEQLX+enZb8upqIQuR6qzb9z7Cg=",
+                "rev": "9b894306ec3b28cea46e84c32b56773a98c483da",
+                "url": "https://chromium.googlesource.com/chromium/deps/libjpeg_turbo.git"
+            },
+            "src/third_party/liblouis/src": {
+                "fetcher": "fetchFromGitiles",
+                "hash": "sha256-EI/uaHXe0NlqdEw764q0SjerThYEVLRogUlmrsZwXnY=",
+                "rev": "9700847afb92cb35969bdfcbbfbbb74b9c7b3376",
+                "url": "https://chromium.googlesource.com/external/liblouis-github.git"
+            },
+            "src/third_party/libphonenumber/dist": {
+                "fetcher": "fetchFromGitiles",
+                "hash": "sha256-3hSnTFTD3KAdbyxfKg12qbIYTmw6YlTCH64gMP/HUJo=",
+                "rev": "140dfeb81b753388e8a672900fb7a971e9a0d362",
+                "url": "https://chromium.googlesource.com/external/libphonenumber.git"
+            },
+            "src/third_party/libprotobuf-mutator/src": {
+                "fetcher": "fetchFromGitiles",
+                "hash": "sha256-ZyPweW+V5foxFQwjjMLkaRUo+FNV+kEDGIH/4oRV614=",
+                "rev": "a304ec48dcf15d942607032151f7e9ee504b5dcf",
+                "url": "https://chromium.googlesource.com/external/github.com/google/libprotobuf-mutator.git"
+            },
+            "src/third_party/libsrtp": {
+                "fetcher": "fetchFromGitiles",
+                "hash": "sha256-pfLFh2JGk/g0ZZxBKTaYW9/PBpkCm0rtJeyNePUMTTc=",
+                "rev": "5b7c744eb8310250ccc534f3f86a2015b3887a0a",
+                "url": "https://chromium.googlesource.com/chromium/deps/libsrtp.git"
+            },
+            "src/third_party/libsync/src": {
+                "fetcher": "fetchFromGitiles",
+                "hash": "sha256-Mkl6C1LxF3RYLwYbxiSfoQPt8QKFwQWj/Ati2sNJ32E=",
+                "rev": "f4f4387b6bf2387efbcfd1453af4892e8982faf6",
+                "url": "https://chromium.googlesource.com/aosp/platform/system/core/libsync.git"
+            },
+            "src/third_party/libunwind/src": {
+                "fetcher": "fetchFromGitiles",
+                "hash": "sha256-/4/Trextb4F9UMDVrg4uG9QZl6S0H9FiwnL+2S5+ZpE=",
+                "rev": "419b03c0b8f20d6da9ddcb0d661a94a97cdd7dad",
+                "url": "https://chromium.googlesource.com/external/github.com/llvm/llvm-project/libunwind.git"
+            },
+            "src/third_party/libvpx/source/libvpx": {
+                "fetcher": "fetchFromGitiles",
+                "hash": "sha256-5IsUUvhcKKiWJFetS29+S7Wiz5JwqRZGK2t2ehld/M4=",
+                "rev": "19832b1702d5b0adf616a0e080abd5207c8445b5",
+                "url": "https://chromium.googlesource.com/webm/libvpx.git"
+            },
+            "src/third_party/libwebm/source": {
+                "fetcher": "fetchFromGitiles",
+                "hash": "sha256-u/5nkJed0DzdhR5OLL2kIhZhOnrbyzL1Kx37vV/jcEo=",
+                "rev": "e4fbea0c9751ae8aa86629b197a28d8276a2b0da",
+                "url": "https://chromium.googlesource.com/webm/libwebm.git"
+            },
+            "src/third_party/libwebp/src": {
+                "fetcher": "fetchFromGitiles",
+                "hash": "sha256-Wa33opOFgcmYtycezDUt2f6PqZBse6xYB5kLuSaw95o=",
+                "rev": "ca332209cb5567c9b249c86788cb2dbf8847e760",
+                "url": "https://chromium.googlesource.com/webm/libwebp.git"
+            },
+            "src/third_party/libyuv": {
+                "fetcher": "fetchFromGitiles",
+                "hash": "sha256-hD5B9fPNwf8M98iS/PYeUJgJxtBvvf2BrrlnBNYXSg0=",
+                "rev": "a6a2ec654b1be1166b376476a7555c89eca0c275",
+                "url": "https://chromium.googlesource.com/libyuv/libyuv.git"
+            },
+            "src/third_party/lss": {
+                "fetcher": "fetchFromGitiles",
+                "hash": "sha256-hE8uZf9Fst66qJkoVYChiB8G41ie+k9M4X0W+5JUSdw=",
+                "rev": "ce877209e11aa69dcfffbd53ef90ea1d07136521",
+                "url": "https://chromium.googlesource.com/linux-syscall-support.git"
+            },
+            "src/third_party/material_color_utilities/src": {
+                "fetcher": "fetchFromGitiles",
+                "hash": "sha256-Y85XU+z9W6tvmDNHJ/dXQnUKXvvDkO3nH/kUJRLqbc4=",
+                "rev": "13434b50dcb64a482cc91191f8cf6151d90f5465",
+                "url": "https://chromium.googlesource.com/external/github.com/material-foundation/material-color-utilities.git"
+            },
+            "src/third_party/minigbm/src": {
+                "fetcher": "fetchFromGitiles",
+                "hash": "sha256-9HwvjTETerbQ7YKXH9kUB2eWa8PxGWMAJfx1jAluhrs=",
+                "rev": "3018207f4d89395cc271278fb9a6558b660885f5",
+                "url": "https://chromium.googlesource.com/chromiumos/platform/minigbm.git"
             },
             "src/third_party/nan": {
                 "fetcher": "fetchFromGitHub",
@@ -2634,12 +3260,143 @@
                 "repo": "nan",
                 "rev": "e14bdcd1f72d62bca1d541b66da43130384ec213"
             },
-            "src/third_party/electron_node": {
-                "fetcher": "fetchFromGitHub",
-                "hash": "sha256-lGNDwe3IiQMLg5o0AMhLfNpyfu4dXVk05YRO0yMzg0I=",
-                "owner": "nodejs",
-                "repo": "node",
-                "rev": "v20.9.0"
+            "src/third_party/nasm": {
+                "fetcher": "fetchFromGitiles",
+                "hash": "sha256-SiRXHsUlWXtH6dbDjDjqNAm105ibEB3jOfNtQAM4CaY=",
+                "rev": "f477acb1049f5e043904b87b825c5915084a9a29",
+                "url": "https://chromium.googlesource.com/chromium/deps/nasm.git"
+            },
+            "src/third_party/nearby/src": {
+                "fetcher": "fetchFromGitiles",
+                "hash": "sha256-YotKuKutnjuphwiElfQO6qpoNLhZGP6bqWZnW3Zv6QI=",
+                "rev": "33e682f24427a0eb634bd3186fe3c6fd96bd6768",
+                "url": "https://chromium.googlesource.com/external/github.com/google/nearby-connections.git"
+            },
+            "src/third_party/neon_2_sse/src": {
+                "fetcher": "fetchFromGitiles",
+                "hash": "sha256-299ZptvdTmCnIuVVBkrpf5ZTxKPwgcGUob81tEI91F0=",
+                "rev": "a15b489e1222b2087007546b4912e21293ea86ff",
+                "url": "https://chromium.googlesource.com/external/github.com/intel/ARM_NEON_2_x86_SSE.git"
+            },
+            "src/third_party/openh264/src": {
+                "fetcher": "fetchFromGitiles",
+                "hash": "sha256-J7Eqe2QevZh1xfap19W8AVCcwfRu7ztknnbKFJUAH1c=",
+                "rev": "09a4f3ec842a8932341b195c5b01e141c8a16eb7",
+                "url": "https://chromium.googlesource.com/external/github.com/cisco/openh264"
+            },
+            "src/third_party/openscreen/src": {
+                "fetcher": "fetchFromGitiles",
+                "hash": "sha256-wUKhF9sU1HAZvs4fQHxeFfxkpkhBp6nTljJrQ4lH7lA=",
+                "rev": "a3f9719bed95289c59771d4c4bcb85f5ecacac43",
+                "url": "https://chromium.googlesource.com/openscreen"
+            },
+            "src/third_party/openscreen/src/buildtools": {
+                "fetcher": "fetchFromGitiles",
+                "hash": "sha256-SBorO59kMSnskcp3oP5lrGQg+9cr/Ymey2aZGlRTgu0=",
+                "rev": "0ac67b7cef80e421283f633ee9c2ce652f6e42cc",
+                "url": "https://chromium.googlesource.com/chromium/src/buildtools"
+            },
+            "src/third_party/openscreen/src/third_party/tinycbor/src": {
+                "fetcher": "fetchFromGitiles",
+                "hash": "sha256-fMKBFUSKmODQyg4hKIa1hwnEKIV6WBbY1Gb8DOSnaHA=",
+                "rev": "d393c16f3eb30d0c47e6f9d92db62272f0ec4dc7",
+                "url": "https://chromium.googlesource.com/external/github.com/intel/tinycbor.git"
+            },
+            "src/third_party/ots/src": {
+                "fetcher": "fetchFromGitiles",
+                "hash": "sha256-kiUXrXsaGOzPkKh0dVmU1I13WHt0Stzj7QLMqHN9FbU=",
+                "rev": "46bea9879127d0ff1c6601b078e2ce98e83fcd33",
+                "url": "https://chromium.googlesource.com/external/github.com/khaledhosny/ots.git"
+            },
+            "src/third_party/pdfium": {
+                "fetcher": "fetchFromGitiles",
+                "hash": "sha256-4CPHeZAJM756a2TIxs4ZX0D7j85deDIf/bTGow75m/U=",
+                "rev": "7b90b15a21cfdd3d74525616b5de04df94fa0583",
+                "url": "https://pdfium.googlesource.com/pdfium.git"
+            },
+            "src/third_party/perfetto": {
+                "fetcher": "fetchFromGitiles",
+                "hash": "sha256-FeI+nAa5N8mQoA8gDSmWn6nw6TSPhDGwJI8/7r/5z1c=",
+                "rev": "a66020f87046d8934c22e20acb2bb8a91901ce8e",
+                "url": "https://android.googlesource.com/platform/external/perfetto.git"
+            },
+            "src/third_party/protobuf-javascript/src": {
+                "fetcher": "fetchFromGitiles",
+                "hash": "sha256-TmP6xftUVTD7yML7UEM/DB8bcsL5RFlKPyCpcboD86U=",
+                "rev": "e34549db516f8712f678fcd4bc411613b5cc5295",
+                "url": "https://chromium.googlesource.com/external/github.com/protocolbuffers/protobuf-javascript"
+            },
+            "src/third_party/pthreadpool/src": {
+                "fetcher": "fetchFromGitiles",
+                "hash": "sha256-R4YmNzWEELSkAws/ejmNVxqXDTJwcqjLU/o/HvgRn2E=",
+                "rev": "4fe0e1e183925bf8cfa6aae24237e724a96479b8",
+                "url": "https://chromium.googlesource.com/external/github.com/Maratyszcza/pthreadpool.git"
+            },
+            "src/third_party/pyelftools": {
+                "fetcher": "fetchFromGitiles",
+                "hash": "sha256-I/7p3IEvfP/gkes4kx18PvWwhAKilQKb67GXoW4zFB4=",
+                "rev": "19b3e610c86fcadb837d252c794cb5e8008826ae",
+                "url": "https://chromium.googlesource.com/chromiumos/third_party/pyelftools.git"
+            },
+            "src/third_party/pywebsocket3/src": {
+                "fetcher": "fetchFromGitiles",
+                "hash": "sha256-WEqqu2/7fLqcf/2/IcD7/FewRSZ6jTgVlVBvnihthYQ=",
+                "rev": "50602a14f1b6da17e0b619833a13addc6ea78bc2",
+                "url": "https://chromium.googlesource.com/external/github.com/GoogleChromeLabs/pywebsocket3.git"
+            },
+            "src/third_party/quic_trace/src": {
+                "fetcher": "fetchFromGitiles",
+                "hash": "sha256-Nf9ZDLcE1JunhbpEMHhrY2ROnbgrvVZoRkPwWq1DU0g=",
+                "rev": "caa0a6eaba816ecb737f9a70782b7c80b8ac8dbc",
+                "url": "https://chromium.googlesource.com/external/github.com/google/quic-trace.git"
+            },
+            "src/third_party/re2/src": {
+                "fetcher": "fetchFromGitiles",
+                "hash": "sha256-gB6vW6UJ60LrrGeNP6NKAcirIK6jgZjHRc6TA+pNXAQ=",
+                "rev": "6598a8ecd57724c8c7d43b2fca8eb9f9969ce57c",
+                "url": "https://chromium.googlesource.com/external/github.com/google/re2.git"
+            },
+            "src/third_party/ruy/src": {
+                "fetcher": "fetchFromGitiles",
+                "hash": "sha256-cwmKQJpR+7lp+dq8fGu6U8A+qmkXz6SlWvAdhBkKZOw=",
+                "rev": "587c2cf8b11d3c32fa26887063eda3171a3d353e",
+                "url": "https://chromium.googlesource.com/external/github.com/google/ruy.git"
+            },
+            "src/third_party/securemessage/src": {
+                "fetcher": "fetchFromGitiles",
+                "hash": "sha256-GS4ccnuiqxMs/LVYAtvSlVAYFp4a5GoZsxcriTX3k78=",
+                "rev": "fa07beb12babc3b25e0c5b1f38c16aa8cb6b8f84",
+                "url": "https://chromium.googlesource.com/external/github.com/google/securemessage.git"
+            },
+            "src/third_party/skia": {
+                "fetcher": "fetchFromGitiles",
+                "hash": "sha256-8C8IMQjfJGeCXCXZyd/eSbDNsdcKI/Bul0m1wrqx1P8=",
+                "rev": "e2ea2eb3e0d37fff47968dfaaa337debb3b75b1e",
+                "url": "https://skia.googlesource.com/skia.git"
+            },
+            "src/third_party/smhasher/src": {
+                "fetcher": "fetchFromGitiles",
+                "hash": "sha256-RyC//me08hwGXRrWcK8GZ1uhIkBq4FByA7fHCVDsniw=",
+                "rev": "e87738e57558e0ec472b2fc3a643b838e5b6e88f",
+                "url": "https://chromium.googlesource.com/external/smhasher.git"
+            },
+            "src/third_party/snappy/src": {
+                "fetcher": "fetchFromGitiles",
+                "hash": "sha256-5fV6NfO8vmqK+iCwpLtE2YjYOzjsshctauyjNIOxrH0=",
+                "rev": "c9f9edf6d75bb065fa47468bf035e051a57bec7c",
+                "url": "https://chromium.googlesource.com/external/github.com/google/snappy.git"
+            },
+            "src/third_party/speedometer/v3.0": {
+                "fetcher": "fetchFromGitiles",
+                "hash": "sha256-qMQ4naX+4uUu3vtzzinjkhxX9/dNoTwj6vWCu4FdQmU=",
+                "rev": "8d67f28d0281ac4330f283495b7f48286654ad7d",
+                "url": "https://chromium.googlesource.com/external/github.com/WebKit/Speedometer.git"
+            },
+            "src/third_party/sqlite/src": {
+                "fetcher": "fetchFromGitiles",
+                "hash": "sha256-TsrSvL76H7SFhJWgHqyl8Y/BhAcnI9oaT2tUT6Ktan4=",
+                "rev": "f51e3fa404f5853650525549c78d7489a7f457b3",
+                "url": "https://chromium.googlesource.com/chromium/deps/sqlite.git"
             },
             "src/third_party/squirrel.mac": {
                 "fetcher": "fetchFromGitHub",
@@ -2648,13 +3405,6 @@
                 "repo": "Squirrel.Mac",
                 "rev": "0e5d146ba13101a1302d59ea6e6e0b3cace4ae38"
             },
-            "src/third_party/squirrel.mac/vendor/ReactiveObjC": {
-                "fetcher": "fetchFromGitHub",
-                "hash": "sha256-/MCqC1oFe3N9TsmfVLgl+deR6qHU6ZFQQjudb9zB5Mo=",
-                "owner": "ReactiveCocoa",
-                "repo": "ReactiveObjC",
-                "rev": "74ab5baccc6f7202c8ac69a8d1e152c29dc1ea76"
-            },
             "src/third_party/squirrel.mac/vendor/Mantle": {
                 "fetcher": "fetchFromGitHub",
                 "hash": "sha256-ogFkMJybf2Ue606ojXJu6Gy5aXSi1bSKm60qcTAIaPk=",
@@ -2662,30 +3412,197 @@
                 "repo": "Mantle",
                 "rev": "78d3966b3c331292ea29ec38661b25df0a245948"
             },
-            "src/third_party/engflow-reclient-configs": {
+            "src/third_party/squirrel.mac/vendor/ReactiveObjC": {
                 "fetcher": "fetchFromGitHub",
-                "hash": "sha256-aZXYPj9KYBiZnljqOLlWJWS396Fg3EhjiQLZmkwCBsY=",
-                "owner": "EngFlow",
-                "repo": "reclient-configs",
-                "rev": "955335c30a752e9ef7bff375baab5e0819b6c00d"
-            }
-        },
-        "version": "29.3.0",
-        "modules": "121",
-        "chrome": "122.0.6261.156",
-        "node": "20.9.0",
-        "chromium": {
-            "version": "122.0.6261.156",
-            "deps": {
-                "gn": {
-                    "version": "2024-01-22",
-                    "url": "https://gn.googlesource.com/gn",
-                    "rev": "f99e015ac35f689cfdbf46e4eb174e5d2da78d8e",
-                    "hash": "sha256-UhdDsq9JyP0efGpAaJ/nLp723BbjM6pkFPcAnQbgMKY="
-                }
+                "hash": "sha256-/MCqC1oFe3N9TsmfVLgl+deR6qHU6ZFQQjudb9zB5Mo=",
+                "owner": "ReactiveCocoa",
+                "repo": "ReactiveObjC",
+                "rev": "74ab5baccc6f7202c8ac69a8d1e152c29dc1ea76"
+            },
+            "src/third_party/swiftshader": {
+                "fetcher": "fetchFromGitiles",
+                "hash": "sha256-tU0maePvL35JIVKFm+9hmPYDM81szLNYqUJyTKMHT0k=",
+                "rev": "bbe6452b420c5ddc4b0fd421b0a3ce271262f4ca",
+                "url": "https://swiftshader.googlesource.com/SwiftShader.git"
+            },
+            "src/third_party/text-fragments-polyfill/src": {
+                "fetcher": "fetchFromGitiles",
+                "hash": "sha256-4rW2u1cQAF4iPWHAt1FvVXIpz2pmI901rEPks/w/iFA=",
+                "rev": "c036420683f672d685e27415de0a5f5e85bdc23f",
+                "url": "https://chromium.googlesource.com/external/github.com/GoogleChromeLabs/text-fragments-polyfill.git"
+            },
+            "src/third_party/tflite/src": {
+                "fetcher": "fetchFromGitiles",
+                "hash": "sha256-Iqun3uMTCjGzHxUDeTCrvZufNtobnbqYVPDt7ZJ06wM=",
+                "rev": "55bc062601e4ee5a4efa834a84ae5c5ec6b28306",
+                "url": "https://chromium.googlesource.com/external/github.com/tensorflow/tensorflow.git"
+            },
+            "src/third_party/ukey2/src": {
+                "fetcher": "fetchFromGitiles",
+                "hash": "sha256-aaLs6ZS+CdBlCJ6ZhsmdAPFxiBIij6oufsDcNeRSV1E=",
+                "rev": "0275885d8e6038c39b8a8ca55e75d1d4d1727f47",
+                "url": "https://chromium.googlesource.com/external/github.com/google/ukey2.git"
+            },
+            "src/third_party/vulkan-deps": {
+                "fetcher": "fetchFromGitiles",
+                "hash": "sha256-MokWdjOP8Mc5hmoRrSXHXkobMPWbbmMzAMBOOoKG3gk=",
+                "rev": "3cebaae6743688201c8aa9b3694bba6948f0fa68",
+                "url": "https://chromium.googlesource.com/vulkan-deps"
+            },
+            "src/third_party/vulkan-deps/glslang/src": {
+                "fetcher": "fetchFromGitiles",
+                "hash": "sha256-lP+N1d6jE+Cj5ofomgMEhbA6VbH5eKw83mY6zNIOfNk=",
+                "rev": "9f37ad360ea1c32162f0cc1799b1b292594fc771",
+                "url": "https://chromium.googlesource.com/external/github.com/KhronosGroup/glslang"
+            },
+            "src/third_party/vulkan-deps/spirv-cross/src": {
+                "fetcher": "fetchFromGitiles",
+                "hash": "sha256-H43M9DXfEuyKuvo6rjb5k0KEbYOSFodbPJh8ZKY4PQg=",
+                "rev": "b8fcf307f1f347089e3c46eb4451d27f32ebc8d3",
+                "url": "https://chromium.googlesource.com/external/github.com/KhronosGroup/SPIRV-Cross"
+            },
+            "src/third_party/vulkan-deps/spirv-headers/src": {
+                "fetcher": "fetchFromGitiles",
+                "hash": "sha256-kyOAwe4R0FmeA9IIJF2eoZR+7g9LiGKaZ7FuIfkrXJ4=",
+                "rev": "8b246ff75c6615ba4532fe4fde20f1be090c3764",
+                "url": "https://chromium.googlesource.com/external/github.com/KhronosGroup/SPIRV-Headers"
+            },
+            "src/third_party/vulkan-deps/spirv-tools/src": {
+                "fetcher": "fetchFromGitiles",
+                "hash": "sha256-/Cldtx75V+z3FuColEqwweyZHEqR2NaIj1Ha/vPoCsc=",
+                "rev": "c6615779ef8a1eb5ef48fef77bf3eb2cf4f5438d",
+                "url": "https://chromium.googlesource.com/external/github.com/KhronosGroup/SPIRV-Tools"
+            },
+            "src/third_party/vulkan-deps/vulkan-headers/src": {
+                "fetcher": "fetchFromGitiles",
+                "hash": "sha256-EnKiCtH6rh3ACQgokSSfp4FPFluMZW0dheP8IEzZtY4=",
+                "rev": "577baa05033cf1d9236b3d078ca4b3269ed87a2b",
+                "url": "https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-Headers"
+            },
+            "src/third_party/vulkan-deps/vulkan-loader/src": {
+                "fetcher": "fetchFromGitiles",
+                "hash": "sha256-zkJSPshRaZRDiBvLJbJo8l1MX10KXYZniqtNTNnokT4=",
+                "rev": "61a9c50248e09f3a0e0be7ce6f8bb1663855f979",
+                "url": "https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-Loader"
+            },
+            "src/third_party/vulkan-deps/vulkan-tools/src": {
+                "fetcher": "fetchFromGitiles",
+                "hash": "sha256-9qs0oS6W7x/1Z+wlFt91bqF09oxoloNPtjjH9mECJFk=",
+                "rev": "733fd2b522918f81f9c4669350dafd066f99c5d5",
+                "url": "https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-Tools"
+            },
+            "src/third_party/vulkan-deps/vulkan-utility-libraries/src": {
+                "fetcher": "fetchFromGitiles",
+                "hash": "sha256-mCD9/bpWUXRVJ+OyOqG0tXTgFuptIlcG6UR/RiNV1Z0=",
+                "rev": "a4140c5fd47dcf3a030726a60b293db61cfb54a3",
+                "url": "https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-Utility-Libraries"
+            },
+            "src/third_party/vulkan-deps/vulkan-validation-layers/src": {
+                "fetcher": "fetchFromGitiles",
+                "hash": "sha256-Bcm5yMo7JL/E6YZetlabkA0mkEFxbWriYNd8tRtgx5k=",
+                "rev": "5b8af92af052c83444ac560ff1e28c1c322424ef",
+                "url": "https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-ValidationLayers"
+            },
+            "src/third_party/vulkan_memory_allocator": {
+                "fetcher": "fetchFromGitiles",
+                "hash": "sha256-YzxHZagz/M8Y54UnI4h1wu5jSTuaOgv0ifC9d3fJZlQ=",
+                "rev": "56300b29fbfcc693ee6609ddad3fdd5b7a449a21",
+                "url": "https://chromium.googlesource.com/external/github.com/GPUOpen-LibrariesAndSDKs/VulkanMemoryAllocator.git"
+            },
+            "src/third_party/wayland-protocols/gtk": {
+                "fetcher": "fetchFromGitiles",
+                "hash": "sha256-75XNnLkF5Lt1LMRGT+T61k0/mLa3kkynfN+QWvZ0LiQ=",
+                "rev": "40ebed3a03aef096addc0af09fec4ec529d882a0",
+                "url": "https://chromium.googlesource.com/external/github.com/GNOME/gtk.git"
+            },
+            "src/third_party/wayland-protocols/kde": {
+                "fetcher": "fetchFromGitiles",
+                "hash": "sha256-Dmcp/2ms/k7NxPPmPkp0YNfM9z2Es1ZO0uX10bc7N2Y=",
+                "rev": "0b07950714b3a36c9b9f71fc025fc7783e82926e",
+                "url": "https://chromium.googlesource.com/external/github.com/KDE/plasma-wayland-protocols.git"
+            },
+            "src/third_party/wayland-protocols/src": {
+                "fetcher": "fetchFromGitiles",
+                "hash": "sha256-ljMcY59iOdGYeToadCuQ3t0lrBnsBdot+NiT6e+JJ04=",
+                "rev": "681c33c8547d6aefe24455ba2bffe1c5ae11fee5",
+                "url": "https://chromium.googlesource.com/external/anongit.freedesktop.org/git/wayland/wayland-protocols.git"
+            },
+            "src/third_party/wayland/src": {
+                "fetcher": "fetchFromGitiles",
+                "hash": "sha256-YSo1DznmcaYSUcJl/3voVSfZfuLokAFQt6F3M1Iat28=",
+                "rev": "c35d1a3d1c0a1735afe5eb227cb826faa878ec19",
+                "url": "https://chromium.googlesource.com/external/anongit.freedesktop.org/git/wayland/wayland.git"
+            },
+            "src/third_party/webdriver/pylib": {
+                "fetcher": "fetchFromGitiles",
+                "hash": "sha256-WIqWXIKVgElgg8P8laLAlUrgwodGdeVcwohZxnPKedw=",
+                "rev": "fc5e7e70c098bfb189a9a74746809ad3c5c34e04",
+                "url": "https://chromium.googlesource.com/external/github.com/SeleniumHQ/selenium/py.git"
+            },
+            "src/third_party/webgl/src": {
+                "fetcher": "fetchFromGitiles",
+                "hash": "sha256-dubsIPZKBGOzANGvMtQxFKFIHr0laDUGpzgRyEOjHMU=",
+                "rev": "f4bf599a8b575df685c31d9c4729a70a04e377ed",
+                "url": "https://chromium.googlesource.com/external/khronosgroup/webgl.git"
+            },
+            "src/third_party/webgpu-cts/src": {
+                "fetcher": "fetchFromGitiles",
+                "hash": "sha256-/duXwmqanyI2KEnV5izvr0kE8tJNI1F1jMMIY0ylLH8=",
+                "rev": "addbf812fd750dc8cebbd63732e7ce54a763fbee",
+                "url": "https://chromium.googlesource.com/external/github.com/gpuweb/cts.git"
+            },
+            "src/third_party/webrtc": {
+                "fetcher": "fetchFromGitiles",
+                "hash": "sha256-USSfh+vUFrWnXYvZIORRb4AEGNSCPub2cNqEdZD9mKM=",
+                "rev": "a55ff9e83e4592010969d428bee656bace8cbc3b",
+                "url": "https://webrtc.googlesource.com/src.git"
+            },
+            "src/third_party/weston/src": {
+                "fetcher": "fetchFromGitiles",
+                "hash": "sha256-y2srFaPUOoB2umzpo4+hFfhNlqXM2AoMGOpUy/ZSacg=",
+                "rev": "ccf29cb237c3ed09c5f370f35239c93d07abfdd7",
+                "url": "https://chromium.googlesource.com/external/anongit.freedesktop.org/git/wayland/weston.git"
+            },
+            "src/third_party/wuffs/src": {
+                "fetcher": "fetchFromGitiles",
+                "hash": "sha256-373d2F/STcgCHEq+PO+SCHrKVOo6uO1rqqwRN5eeBCw=",
+                "rev": "e3f919ccfe3ef542cfc983a82146070258fb57f8",
+                "url": "https://skia.googlesource.com/external/github.com/google/wuffs-mirror-release-c.git"
+            },
+            "src/third_party/xdg-utils": {
+                "fetcher": "fetchFromGitiles",
+                "hash": "sha256-WuQ9uDq+QD17Y20ACFGres4nbkeOiTE2y+tY1avAT5U=",
+                "rev": "cb54d9db2e535ee4ef13cc91b65a1e2741a94a44",
+                "url": "https://chromium.googlesource.com/chromium/deps/xdg-utils.git"
+            },
+            "src/third_party/xnnpack/src": {
+                "fetcher": "fetchFromGitiles",
+                "hash": "sha256-Cmw+rj805YTnnCwy2Zwzi2ZW4sdX5JWjTnBaUB6+YyU=",
+                "rev": "7e696d941310a528dd2d6fbee3d499d19b24746d",
+                "url": "https://chromium.googlesource.com/external/github.com/google/XNNPACK.git"
+            },
+            "src/third_party/zstd/src": {
+                "fetcher": "fetchFromGitiles",
+                "hash": "sha256-hWfYKiTzkmeiUTgNrSYXOFauusSVceVhD04Hgk69CK4=",
+                "rev": "621a263fb2e6c2175fbd489e5d77ee8038baa2b2",
+                "url": "https://chromium.googlesource.com/external/github.com/facebook/zstd.git"
+            },
+            "src/tools/page_cycler/acid3": {
+                "fetcher": "fetchFromGitiles",
+                "hash": "sha256-s/49EaYQRsyxuLejXc1zGDYTD7uO0ddaQIJBP50Bvw0=",
+                "rev": "a926d0a32e02c4c03ae95bb798e6c780e0e184ba",
+                "url": "https://chromium.googlesource.com/chromium/deps/acid3.git"
+            },
+            "src/v8": {
+                "fetcher": "fetchFromGitiles",
+                "hash": "sha256-rwEdjWYJz7shrwLWRyzOgbRvmIR0C9aZXn0vhcBLF50=",
+                "rev": "c6b8b43c3042d99f07d5cc0771e58511afaa66a3",
+                "url": "https://chromium.googlesource.com/v8/v8.git"
             }
         },
         "electron_yarn_hash": "0f868gk3d2cablpczav8a4vhk4nfirph45yzjz18mgzgday7w8hf",
-        "chromium_npm_hash": "sha256-9eFsK673j3pTDOcsU35RN4hagFygA/v/ahCqVVEV0Rs="
+        "modules": "123",
+        "node": "20.11.1",
+        "version": "30.0.3"
     }
 }
diff --git a/pkgs/development/tools/electron/update.py b/pkgs/development/tools/electron/update.py
index 128b1dc05067..bf0f7a3a4758 100755
--- a/pkgs/development/tools/electron/update.py
+++ b/pkgs/development/tools/electron/update.py
@@ -1,81 +1,105 @@
 #! /usr/bin/env nix-shell
 #! nix-shell -i python -p python3.pkgs.joblib python3.pkgs.click python3.pkgs.click-log nix nix-prefetch-git nix-universal-prefetch prefetch-yarn-deps prefetch-npm-deps
+"""
+electron updater
 
-import logging
-import click_log
-import click
-import random
-import traceback
-import csv
+A script for updating both binary and source hashes.
+
+It supports the following modes:
+
+| Mode         | Description                                     |
+|------------- | ----------------------------------------------- |
+| `update`     | for updating a specific Electron release        |
+| `update-all` | for updating all electron releases at once      |
+| `eval`       | just print the necessary sources to fetch       |
+
+The `eval` and `update` commands accept an optional `--version` flag
+to restrict the mechanism only to a given major release.
+
+The `update` and `update-all` commands accept an optional `--commit`
+flag to automatically commit the changes for you.
+
+The `update` and `update-all` commands accept optional `--bin-only`
+and `--source-only` flags to restict the update to binary or source
+releases.
+"""
 import base64
+import csv
+import json
+import logging
 import os
+import random
 import re
-import tempfile
 import subprocess
-import json
 import sys
-from joblib import Parallel, delayed, Memory
+import tempfile
+import traceback
+import urllib.request
+
+from abc import ABC
 from codecs import iterdecode
 from datetime import datetime
+from typing import Iterable, Optional, Tuple
 from urllib.request import urlopen
 
-os.chdir(os.path.dirname(__file__))
+import click
+import click_log
+
+from joblib import Parallel, delayed, Memory
 
 depot_tools_checkout = tempfile.TemporaryDirectory()
-subprocess.check_call([
-    "nix-prefetch-git",
-    "--builder", "--quiet",
-    "--url", "https://chromium.googlesource.com/chromium/tools/depot_tools",
-    "--out", depot_tools_checkout.name,
-    "--rev", "7a69b031d58081d51c9e8e89557b343bba8518b1"])
+subprocess.check_call(
+    [
+        "nix-prefetch-git",
+        "--builder",
+        "--quiet",
+        "--url",
+        "https://chromium.googlesource.com/chromium/tools/depot_tools",
+        "--out",
+        depot_tools_checkout.name,
+        "--rev",
+        "7a69b031d58081d51c9e8e89557b343bba8518b1",
+    ]
+)
 sys.path.append(depot_tools_checkout.name)
 
 import gclient_eval
 import gclient_utils
 
-memory = Memory("cache", verbose=0)
 
-@memory.cache
-def get_repo_hash(fetcher, args):
-    cmd = ['nix-universal-prefetch', fetcher]
-    for arg_name, arg in args.items():
-        cmd.append(f'--{arg_name}')
-        cmd.append(arg)
+# Relative path to the electron-source info.json
+SOURCE_INFO_JSON = "info.json"
 
-    print(" ".join(cmd), file=sys.stderr)
-    out = subprocess.check_output(cmd)
-    return out.decode('utf-8').strip()
+# Relatice path to the electron-bin info.json
+BINARY_INFO_JSON = "binary/info.json"
 
-@memory.cache
-def _get_yarn_hash(file):
-    print(f'prefetch-yarn-deps', file=sys.stderr)
-    with tempfile.TemporaryDirectory() as tmp_dir:
-        with open(tmp_dir + '/yarn.lock', 'w') as f:
-            f.write(file)
-        return subprocess.check_output(['prefetch-yarn-deps', tmp_dir + '/yarn.lock']).decode('utf-8').strip()
-def get_yarn_hash(repo, yarn_lock_path = 'yarn.lock'):
-    return _get_yarn_hash(repo.get_file(yarn_lock_path))
+# Number of spaces used for each indentation level
+JSON_INDENT = 4
+
+os.chdir(os.path.dirname(__file__))
+
+memory: Memory = Memory("cache", verbose=0)
+
+logger = logging.getLogger(__name__)
+click_log.basic_config(logger)
 
-@memory.cache
-def _get_npm_hash(file):
-    print(f'prefetch-npm-deps', file=sys.stderr)
-    with tempfile.TemporaryDirectory() as tmp_dir:
-        with open(tmp_dir + '/package-lock.json', 'w') as f:
-            f.write(file)
-        return subprocess.check_output(['prefetch-npm-deps', tmp_dir + '/package-lock.json']).decode('utf-8').strip()
-def get_npm_hash(repo, package_lock_path = 'package-lock.json'):
-    return _get_npm_hash(repo.get_file(package_lock_path))
 
 class Repo:
-    def __init__(self):
-        self.deps = {}
+    fetcher: str
+    args: dict
+
+    def __init__(self) -> None:
+        self.deps: dict = {}
         self.hash = "sha256-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA="
 
-    def get_deps(self, repo_vars, path):
-        print("evaluating " + json.dumps(self, default = vars), file=sys.stderr)
+    def get_deps(self, repo_vars: dict, path: str) -> None:
+        print(
+            "evaluating " + json.dumps(self, default=vars, sort_keys=True),
+            file=sys.stderr,
+        )
 
         deps_file = self.get_file("DEPS")
-        evaluated = gclient_eval.Parse(deps_file, filename='DEPS')
+        evaluated = gclient_eval.Parse(deps_file, filename="DEPS")
 
         repo_vars = dict(evaluated["vars"]) | repo_vars
 
@@ -84,7 +108,12 @@ class Repo:
         self.deps = {
             prefix + dep_name: repo_from_dep(dep)
             for dep_name, dep in evaluated["deps"].items()
-            if (gclient_eval.EvaluateCondition(dep["condition"], repo_vars) if "condition" in dep else True) and repo_from_dep(dep) != None
+            if (
+                gclient_eval.EvaluateCondition(dep["condition"], repo_vars)
+                if "condition" in dep
+                else True
+            )
+            and repo_from_dep(dep) != None
         }
 
         for key in evaluated.get("recursedeps", []):
@@ -92,80 +121,244 @@ class Repo:
             if dep_path in self.deps and dep_path != "src/third_party/squirrel.mac":
                 self.deps[dep_path].get_deps(repo_vars, dep_path)
 
-    def prefetch(self):
+    def prefetch(self) -> None:
         self.hash = get_repo_hash(self.fetcher, self.args)
 
-    def prefetch_all(self):
-        return sum([dep.prefetch_all() for [_, dep] in self.deps.items()], [delayed(self.prefetch)()])
+    def prefetch_all(self) -> int:
+        return sum(
+            [dep.prefetch_all() for [_, dep] in self.deps.items()],
+            [delayed(self.prefetch)()],
+        )
 
-    def flatten_repr(self):
-        return {
-            "fetcher": self.fetcher,
-            "hash": self.hash,
-            **self.args
-        }
+    def flatten_repr(self) -> dict:
+        return {"fetcher": self.fetcher, "hash": self.hash, **self.args}
 
-    def flatten(self, path):
-        out = {
-            path: self.flatten_repr()
-        }
+    def flatten(self, path: str) -> dict:
+        out = {path: self.flatten_repr()}
         for dep_path, dep in self.deps.items():
             out |= dep.flatten(dep_path)
         return out
 
+    def get_file(self, filepath: str) -> str:
+        raise NotImplementedError
+
+
 class GitRepo(Repo):
-    def __init__(self, url, rev):
+    def __init__(self, url: str, rev: str) -> None:
         super().__init__()
-        self.fetcher = 'fetchgit'
+        self.fetcher = "fetchgit"
         self.args = {
             "url": url,
             "rev": rev,
         }
 
+
 class GitHubRepo(Repo):
-    def __init__(self, owner, repo, rev):
+    def __init__(self, owner: str, repo: str, rev: str) -> None:
         super().__init__()
-        self.fetcher = 'fetchFromGitHub'
+        self.fetcher = "fetchFromGitHub"
         self.args = {
             "owner": owner,
             "repo": repo,
             "rev": rev,
         }
 
-    def get_file(self, filepath):
-        return urlopen(f"https://raw.githubusercontent.com/{self.args['owner']}/{self.args['repo']}/{self.args['rev']}/{filepath}").read().decode('utf-8')
+    def get_file(self, filepath: str) -> str:
+        return (
+            urlopen(
+                f"https://raw.githubusercontent.com/{self.args['owner']}/{self.args['repo']}/{self.args['rev']}/{filepath}"
+            )
+            .read()
+            .decode("utf-8")
+        )
+
 
 class GitilesRepo(Repo):
-    def __init__(self, url, rev):
+    def __init__(self, url: str, rev: str) -> None:
         super().__init__()
-        self.fetcher = 'fetchFromGitiles'
-        #self.fetcher = 'fetchgit'
+        self.fetcher = "fetchFromGitiles"
+        # self.fetcher = 'fetchgit'
         self.args = {
             "url": url,
             "rev": rev,
-            #"fetchSubmodules": "false",
+            # "fetchSubmodules": "false",
         }
 
         if url == "https://chromium.googlesource.com/chromium/src.git":
-            self.args['postFetch'] = "rm -r $out/third_party/blink/web_tests; "
-            self.args['postFetch'] += "rm -r $out/third_party/hunspell/tests; "
-            self.args['postFetch'] += "rm -r $out/content/test/data; "
-            self.args['postFetch'] += "rm -r $out/courgette/testdata; "
-            self.args['postFetch'] += "rm -r $out/extensions/test/data; "
-            self.args['postFetch'] += "rm -r $out/media/test/data; "
+            self.args["postFetch"] = "rm -r $out/third_party/blink/web_tests; "
+            self.args["postFetch"] += "rm -r $out/third_party/hunspell/tests; "
+            self.args["postFetch"] += "rm -r $out/content/test/data; "
+            self.args["postFetch"] += "rm -r $out/courgette/testdata; "
+            self.args["postFetch"] += "rm -r $out/extensions/test/data; "
+            self.args["postFetch"] += "rm -r $out/media/test/data; "
+
+    def get_file(self, filepath: str) -> str:
+        return base64.b64decode(
+            urlopen(
+                f"{self.args['url']}/+/{self.args['rev']}/{filepath}?format=TEXT"
+            ).read()
+        ).decode("utf-8")
+
+
+class ElectronBinRepo(GitHubRepo):
+    def __init__(self, owner: str, repo: str, rev: str) -> None:
+        super().__init__(owner, repo, rev)
+        self.systems = {
+            "i686-linux": "linux-ia32",
+            "x86_64-linux": "linux-x64",
+            "armv7l-linux": "linux-armv7l",
+            "aarch64-linux": "linux-arm64",
+            "x86_64-darwin": "darwin-x64",
+            "aarch64-darwin": "darwin-arm64",
+        }
+
+    def get_shasums256(self, version: str) -> list:
+        """Returns the contents of SHASUMS256.txt"""
+        try:
+            called_process: subprocess.CompletedProcess = subprocess.run(
+                [
+                    "nix-prefetch-url",
+                    "--print-path",
+                    f"https://github.com/electron/electron/releases/download/v{version}/SHASUMS256.txt",
+                ],
+                capture_output=True,
+                check=True,
+                text=True,
+            )
+
+            hash_file_path = called_process.stdout.split("\n")[1]
+
+            with open(hash_file_path, "r") as f:
+                return f.read().split("\n")
+
+        except subprocess.CalledProcessError as err:
+            print(err.stderr)
+            sys.exit(1)
+
+    def get_headers(self, version: str) -> str:
+        """Returns the hash of the release headers tarball"""
+        try:
+            called_process: subprocess.CompletedProcess = subprocess.run(
+                [
+                    "nix-prefetch-url",
+                    f"https://artifacts.electronjs.org/headers/dist/v{version}/node-v{version}-headers.tar.gz",
+                ],
+                capture_output=True,
+                check=True,
+                text=True,
+            )
+            return called_process.stdout.split("\n")[0]
+        except subprocess.CalledProcessError as err:
+            print(err.stderr)
+            sys.exit(1)
+
+    def get_hashes(self, major_version: str) -> dict:
+        """Returns a dictionary of hashes for a given major version"""
+        m, _ = get_latest_version(major_version)
+        version: str = m["version"]
+
+        out = {}
+        out[major_version] = {
+            "hashes": {},
+            "version": version,
+        }
+
+        hashes: list = self.get_shasums256(version)
+
+        for nix_system, electron_system in self.systems.items():
+            filename = f"*electron-v{version}-{electron_system}.zip"
+            if any([x.endswith(filename) for x in hashes]):
+                out[major_version]["hashes"][nix_system] = [
+                    x.split(" ")[0] for x in hashes if x.endswith(filename)
+                ][0]
+                out[major_version]["hashes"]["headers"] = self.get_headers(version)
+
+        return out
 
-    def get_file(self, filepath):
-        return base64.b64decode(urlopen(f"{self.args['url']}/+/{self.args['rev']}/{filepath}?format=TEXT").read()).decode('utf-8')
 
-def repo_from_dep(dep):
+# Releases that have reached end-of-life no longer receive any updates
+# and it is rather pointless trying to update those.
+#
+# https://endoflife.date/electron
+@memory.cache
+def supported_version_range() -> range:
+    """Returns a range of electron releases that have not reached end-of-life yet"""
+    releases_json = json.loads(
+        urlopen("https://endoflife.date/api/electron.json").read()
+    )
+    supported_releases = [
+        int(x["cycle"])
+        for x in releases_json
+        if x["eol"] == False
+        or datetime.strptime(x["eol"], "%Y-%m-%d") > datetime.today()
+    ]
+
+    return range(
+        min(supported_releases),  # incl.
+        # We have also packaged the beta release in nixpkgs,
+        # but it is not tracked by endoflife.date
+        max(supported_releases) + 2,  # excl.
+        1,
+    )
+
+
+@memory.cache
+def get_repo_hash(fetcher: str, args: dict) -> str:
+    cmd = ["nix-universal-prefetch", fetcher]
+    for arg_name, arg in args.items():
+        cmd.append(f"--{arg_name}")
+        cmd.append(arg)
+
+    print(" ".join(cmd), file=sys.stderr)
+    out = subprocess.check_output(cmd)
+    return out.decode("utf-8").strip()
+
+
+@memory.cache
+def _get_yarn_hash(path: str) -> str:
+    print(f"prefetch-yarn-deps", file=sys.stderr)
+    with tempfile.TemporaryDirectory() as tmp_dir:
+        with open(tmp_dir + "/yarn.lock", "w") as f:
+            f.write(path)
+        return (
+            subprocess.check_output(["prefetch-yarn-deps", tmp_dir + "/yarn.lock"])
+            .decode("utf-8")
+            .strip()
+        )
+
+
+def get_yarn_hash(repo: Repo, yarn_lock_path: str = "yarn.lock") -> str:
+    return _get_yarn_hash(repo.get_file(yarn_lock_path))
+
+
+@memory.cache
+def _get_npm_hash(filename: str) -> str:
+    print(f"prefetch-npm-deps", file=sys.stderr)
+    with tempfile.TemporaryDirectory() as tmp_dir:
+        with open(tmp_dir + "/package-lock.json", "w") as f:
+            f.write(filename)
+        return (
+            subprocess.check_output(
+                ["prefetch-npm-deps", tmp_dir + "/package-lock.json"]
+            )
+            .decode("utf-8")
+            .strip()
+        )
+
+
+def get_npm_hash(repo: Repo, package_lock_path: str = "package-lock.json") -> str:
+    return _get_npm_hash(repo.get_file(package_lock_path))
+
+
+def repo_from_dep(dep: dict) -> Optional[Repo]:
     if "url" in dep:
         url, rev = gclient_utils.SplitUrlRevision(dep["url"])
 
-        search_object = re.search(r'https://github.com/(.+)/(.+?)(\.git)?$', url)
+        search_object = re.search(r"https://github.com/(.+)/(.+?)(\.git)?$", url)
         if search_object:
             return GitHubRepo(search_object.group(1), search_object.group(2), rev)
 
-        if re.match(r'https://.+.googlesource.com', url):
+        if re.match(r"https://.+.googlesource.com", url):
             return GitilesRepo(url, rev)
 
         return GitRepo(url, rev)
@@ -173,107 +366,404 @@ def repo_from_dep(dep):
         # Not a git dependency; skip
         return None
 
-def get_gn_source(repo):
+
+def get_gn_source(repo: Repo) -> dict:
     gn_pattern = r"'gn_version': 'git_revision:([0-9a-f]{40})'"
     gn_commit = re.search(gn_pattern, repo.get_file("DEPS")).group(1)
-    gn = subprocess.check_output([
-        "nix-prefetch-git",
-        "--quiet",
-        "https://gn.googlesource.com/gn",
-        "--rev", gn_commit
-        ])
-    gn = json.loads(gn)
+    gn_prefetch: bytes = subprocess.check_output(
+        [
+            "nix-prefetch-git",
+            "--quiet",
+            "https://gn.googlesource.com/gn",
+            "--rev",
+            gn_commit,
+        ]
+    )
+    gn: dict = json.loads(gn_prefetch)
     return {
         "gn": {
             "version": datetime.fromisoformat(gn["date"]).date().isoformat(),
             "url": gn["url"],
             "rev": gn["rev"],
-            "hash": gn["hash"]
+            "hash": gn["hash"],
         }
     }
 
-def get_electron_info(major_version):
-    electron_releases = json.loads(urlopen("https://releases.electronjs.org/releases.json").read())
-    major_version_releases = filter(lambda item: item["version"].startswith(f"{major_version}."), electron_releases)
+
+def get_latest_version(major_version: str) -> Tuple[str, str]:
+    """Returns the latest version for a given major version"""
+    electron_releases: dict = json.loads(
+        urlopen("https://releases.electronjs.org/releases.json").read()
+    )
+    major_version_releases = filter(
+        lambda item: item["version"].startswith(f"{major_version}."), electron_releases
+    )
     m = max(major_version_releases, key=lambda item: item["date"])
 
-    rev=f"v{m['version']}"
+    rev = f"v{m['version']}"
+    return (m, rev)
 
-    electron_repo = GitHubRepo("electron", "electron", rev)
-    electron_repo.recurse = True
 
-    electron_repo.get_deps({
-        f"checkout_{platform}": platform == "linux"
-        for platform in ["ios", "chromeos", "android", "mac", "win", "linux"]
-    }, "src/electron")
+def get_electron_bin_info(major_version: str) -> Tuple[str, str, ElectronBinRepo]:
+    m, rev = get_latest_version(major_version)
 
+    electron_repo: ElectronBinRepo = ElectronBinRepo("electron", "electron", rev)
     return (major_version, m, electron_repo)
 
-logger = logging.getLogger(__name__)
-click_log.basic_config(logger)
 
-@click.group()
-def cli():
-    pass
+def get_electron_info(major_version: str) -> Tuple[str, str, GitHubRepo]:
+    m, rev = get_latest_version(major_version)
+
+    electron_repo: GitHubRepo = GitHubRepo("electron", "electron", rev)
+    electron_repo.get_deps(
+        {
+            f"checkout_{platform}": platform == "linux"
+            for platform in ["ios", "chromeos", "android", "mac", "win", "linux"]
+        },
+        "src/electron",
+    )
+
+    return (major_version, m, electron_repo)
 
-@cli.command("eval")
-@click.option("--version", help="The major version, e.g. '23'")
-def eval(version):
-    (_, _, repo) = electron_repo = get_electron_info(version)
-    tree = electron_repo.flatten("src/electron")
-    print(json.dumps(tree, indent=4, default = vars))
 
-def get_update(repo):
+def get_update(repo: Tuple[str, str, Repo]) -> Tuple[str, dict]:
     (major_version, m, electron_repo) = repo
 
     tasks = electron_repo.prefetch_all()
-    a = lambda: (
-        ("electron_yarn_hash", get_yarn_hash(electron_repo))
-    )
+    a = lambda: (("electron_yarn_hash", get_yarn_hash(electron_repo)))
     tasks.append(delayed(a)())
     a = lambda: (
-        ("chromium_npm_hash", get_npm_hash(electron_repo.deps["src"], "third_party/node/package-lock.json"))
+        (
+            "chromium_npm_hash",
+            get_npm_hash(
+                electron_repo.deps["src"], "third_party/node/package-lock.json"
+            ),
+        )
     )
     tasks.append(delayed(a)())
     random.shuffle(tasks)
 
-    task_results = {n[0]: n[1] for n in Parallel(n_jobs=3, require='sharedmem', return_as="generator")(tasks) if n != None}
+    task_results = {
+        n[0]: n[1]
+        for n in Parallel(n_jobs=3, require="sharedmem", return_as="generator")(tasks)
+        if n != None
+    }
 
     tree = electron_repo.flatten("src/electron")
 
-    return (f"{major_version}", {
-      "deps": tree,
-      **{key: m[key] for key in ["version", "modules", "chrome", "node"]},
-      "chromium": {
-          "version": m['chrome'],
-          "deps": get_gn_source(electron_repo.deps["src"])
-      },
-      **task_results
-    })
-
-@cli.command("update")
-@click.option("--version", help="The major version, e.g. '23'")
-def update(version):
+    return (
+        f"{major_version}",
+        {
+            "deps": tree,
+            **{key: m[key] for key in ["version", "modules", "chrome", "node"]},
+            "chromium": {
+                "version": m["chrome"],
+                "deps": get_gn_source(electron_repo.deps["src"]),
+            },
+            **task_results,
+        },
+    )
+
+
+def load_info_json(path: str) -> dict:
+    """Load the contents of a JSON file
+
+    Args:
+        path: The path to the JSON file
+
+    Returns: An empty dict if the path does not exist, otherwise the contents of the JSON file.
+    """
     try:
-        with open('info.json', 'r') as f:
-            old_info = json.loads(f.read())
+        with open(path, "r") as f:
+            return json.loads(f.read())
     except:
-        old_info = {}
-    repo = get_electron_info(version)
-    update = get_update(repo)
-    out = old_info | { update[0]: update[1] }
-    with open('info.json', 'w') as f:
-        f.write(json.dumps(out, indent=4, default = vars))
-        f.write('\n')
-
-@cli.command("update-all")
-def update_all():
-    repos = Parallel(n_jobs=2, require='sharedmem')(delayed(get_electron_info)(major_version) for major_version in range(28, 24, -1))
-    out = {n[0]: n[1] for n in Parallel(n_jobs=2, require='sharedmem')(delayed(get_update)(repo) for repo in repos)}
-
-    with open('info.json', 'w') as f:
-        f.write(json.dumps(out, indent=4, default = vars))
-        f.write('\n')
+        return {}
+
+
+def save_info_json(path: str, content: dict) -> None:
+    """Saves the given info to a JSON file
+
+    Args:
+        path: The path where the info should be saved
+        content: The content to be saved as JSON.
+    """
+    with open(path, "w") as f:
+        f.write(json.dumps(content, indent=JSON_INDENT, default=vars, sort_keys=True))
+        f.write("\n")
+
+
+def update_bin(major_version: str, commit: bool) -> None:
+    """Update a given electron-bin release
+
+    Args:
+        major_version: The major version number, e.g. '27'
+        commit: Whether the updater should commit the result
+    """
+    package_name = f"electron_{major_version}-bin"
+    print(f"Updating {package_name}")
+
+    electron_bin_info = get_electron_bin_info(major_version)
+    (_major_version, _version, repo) = electron_bin_info
+
+    old_info = load_info_json(BINARY_INFO_JSON)
+    new_info = repo.get_hashes(major_version)
+
+    out = old_info | new_info
+
+    save_info_json(BINARY_INFO_JSON, out)
+
+    old_version = (
+        old_info[major_version]["version"] if major_version in old_info else None
+    )
+    new_version = new_info[major_version]["version"]
+    if old_version == new_version:
+        print(f"{package_name} is up-to-date")
+    elif commit:
+        commit_result(package_name, old_version, new_version, BINARY_INFO_JSON)
+
+
+def update_source(major_version: str, commit: bool) -> None:
+    """Update a given electron-source release
+
+    Args:
+        major_version: The major version number, e.g. '27'
+        commit: Whether the updater should commit the result
+    """
+    package_name = f"electron-source.electron_{major_version}"
+    print(f"Updating electron-source.electron_{major_version}")
+
+    old_info = load_info_json(SOURCE_INFO_JSON)
+    old_version = (
+        old_info[str(major_version)]["version"]
+        if str(major_version) in old_info
+        else None
+    )
+
+    electron_source_info = get_electron_info(major_version)
+    new_info = get_update(electron_source_info)
+    out = old_info | {new_info[0]: new_info[1]}
+
+    save_info_json(SOURCE_INFO_JSON, out)
+
+    new_version = new_info[1]["version"]
+    if old_version == new_version:
+        print(f"{package_name} is up-to-date")
+    elif commit:
+        commit_result(package_name, old_version, new_version, SOURCE_INFO_JSON)
+
+
+def non_eol_releases(releases: Iterable[int]) -> Iterable[int]:
+    """Returns a list of releases that have not reached end-of-life yet."""
+    return tuple(filter(lambda x: x in supported_version_range(), releases))
+
+
+def update_all_source(commit: bool) -> None:
+    """Update all eletron-source releases at once
+
+    Args:
+        commit: Whether to commit the result
+    """
+    old_info = load_info_json(SOURCE_INFO_JSON)
+
+    filtered_releases = non_eol_releases(tuple(map(lambda x: int(x), old_info.keys())))
+
+    # This might take some time
+    repos = Parallel(n_jobs=2, require="sharedmem")(
+        delayed(get_electron_info)(major_version) for major_version in filtered_releases
+    )
+    new_info = {
+        n[0]: n[1]
+        for n in Parallel(n_jobs=2, require="sharedmem")(
+            delayed(get_update)(repo) for repo in repos
+        )
+    }
+
+    if commit:
+        for major_version in filtered_releases:
+            # Since the sources have been fetched at this point already,
+            # fetching them again will be much faster.
+            update_source(str(major_version), commit)
+    else:
+        out = old_info | {new_info[0]: new_info[1]}
+        save_info_json(SOURCE_INFO_JSON, out)
+
+
+def parse_cve_numbers(tag_name: str) -> Iterable[str]:
+    """Returns mentioned CVE numbers from a given release tag"""
+    cve_pattern = r"CVE-\d{4}-\d+"
+    url = f"https://api.github.com/repos/electron/electron/releases/tags/{tag_name}"
+    headers = {
+        "Accept": "application/vnd.github+json",
+        "X-GitHub-Api-Version": "2022-11-28",
+    }
+    request = urllib.request.Request(url=url, headers=headers)
+    release_note = ""
+    try:
+        with urlopen(request) as response:
+            release_note = json.loads(response.read().decode("utf-8"))["body"]
+    except:
+        print(
+            f"WARN: Fetching release note for {tag_name} from GitHub failed!",
+            file=sys.stderr,
+        )
+
+    return sorted(re.findall(cve_pattern, release_note))
+
+
+def commit_result(
+    package_name: str, old_version: Optional[str], new_version: str, path: str
+) -> None:
+    """Creates a git commit with a short description of the change
+
+    Args:
+        package_name: The package name, e.g. `electron-source.electron-{major_version}`
+            or `electron_{major_version}-bin`
+
+        old_version: Version number before the update.
+            Can be left empty when initializing a new release.
+
+        new_version: Version number after the update.
+
+        path: Path to the lockfile to be committed
+    """
+    assert (
+        isinstance(package_name, str) and len(package_name) > 0
+    ), "Argument `package_name` cannot be empty"
+    assert (
+        isinstance(new_version, str) and len(new_version) > 0
+    ), "Argument `new_version` cannot be empty"
+
+    if old_version != new_version:
+        major_version = new_version.split(".")[0]
+        cve_fixes_text = "\n".join(
+            list(
+                map(lambda cve: f"- Fixes {cve}", parse_cve_numbers(f"v{new_version}"))
+            )
+        )
+        init_msg = f"init at {new_version}"
+        update_msg = f"{old_version} -> {new_version}"
+        diff = f"- Diff: https://github.com/electron/electron/compare/refs/tags/v{old_version}...v{new_version}\n" if old_version != None else ""
+        commit_message = f"""{package_name}: {update_msg if old_version != None else init_msg}
+
+- Changelog: https://github.com/electron/electron/releases/tag/v{new_version}
+{diff}{cve_fixes_text}
+"""
+        subprocess.run(
+            [
+                "git",
+                "add",
+                path,
+            ]
+        )
+        subprocess.run(
+            [
+                "git",
+                "commit",
+                "-m",
+                commit_message,
+            ]
+        )
+
+
+@click.group()
+def cli() -> None:
+    """A script for updating electron-bin and electron-source hashes"""
+    pass
+
+
+@cli.command(
+    "eval", help="Print the necessary sources to fetch for a given major release"
+)
+@click.option("--version", help="The major version, e.g. '23'")
+def eval(version):
+    (_, _, repo) = electron_repo = get_electron_info(version)
+    tree = repo.flatten("src/electron")
+    print(json.dumps(tree, indent=JSON_INDENT, default=vars, sort_keys=True))
+
+
+@cli.command("update", help="Update a single major release")
+@click.option("-v", "--version", help="The major version, e.g. '23'")
+@click.option(
+    "-b",
+    "--bin-only",
+    is_flag=True,
+    default=False,
+    help="Only update electron-bin packages",
+)
+@click.option(
+    "-s",
+    "--source-only",
+    is_flag=True,
+    default=False,
+    help="Only update electron-source packages",
+)
+@click.option("-c", "--commit", is_flag=True, default=False, help="Commit the result")
+def update(version: str, bin_only: bool, source_only: bool, commit: bool) -> None:
+    assert isinstance(version, str) and len(version) > 0, "version must be non-empty"
+
+    if bin_only and source_only:
+        print(
+            "Error: Omit --bin-only and --source-only if you want to update both source and binary packages.",
+            file=sys.stderr,
+        )
+        sys.exit(1)
+
+    elif bin_only:
+        update_bin(version, commit)
+
+    elif source_only:
+        update_source(version, commit)
+
+    else:
+        update_bin(version, commit)
+        update_source(version, commit)
+
+
+@cli.command("update-all", help="Update all releases at once")
+@click.option(
+    "-b",
+    "--bin-only",
+    is_flag=True,
+    default=False,
+    help="Only update electron-bin packages",
+)
+@click.option(
+    "-s",
+    "--source-only",
+    is_flag=True,
+    default=False,
+    help="Only update electron-source packages",
+)
+@click.option("-c", "--commit", is_flag=True, default=False, help="Commit the result")
+def update_all(bin_only: bool, source_only: bool, commit: bool) -> None:
+    # Filter out releases that have reached end-of-life
+    filtered_bin_info = dict(
+        filter(
+            lambda entry: int(entry[0]) in supported_version_range(),
+            load_info_json(BINARY_INFO_JSON).items(),
+        )
+    )
+
+    if bin_only and source_only:
+        print(
+            "Error: omit --bin-only and --source-only if you want to update both source and binary packages.",
+            file=sys.stderr,
+        )
+        sys.exit(1)
+
+    elif bin_only:
+        for major_version, _ in filtered_bin_info.items():
+            update_bin(major_version, commit)
+
+    elif source_only:
+        update_all_source(commit)
+
+    else:
+        for major_version, _ in filtered_bin_info.items():
+            update_bin(major_version, commit)
+
+        update_all_source(commit)
+
 
 if __name__ == "__main__":
     cli()
diff --git a/pkgs/development/tools/electron/wrapper.nix b/pkgs/development/tools/electron/wrapper.nix
index 5ecb0387b6a8..c912c059e255 100644
--- a/pkgs/development/tools/electron/wrapper.nix
+++ b/pkgs/development/tools/electron/wrapper.nix
@@ -1,6 +1,6 @@
 { stdenv
 , electron-unwrapped
-, wrapGAppsHook
+, wrapGAppsHook3
 , makeWrapper
 , gsettings-desktop-schemas
 , glib
@@ -12,7 +12,7 @@ stdenv.mkDerivation {
   pname = "electron";
   inherit (electron-unwrapped) version;
 
-  nativeBuildInputs = [ wrapGAppsHook makeWrapper ];
+  nativeBuildInputs = [ wrapGAppsHook3 makeWrapper ];
   buildInputs = [
     # needed for GSETTINGS_SCHEMAS_PATH
     gsettings-desktop-schemas glib gtk3 gtk4
diff --git a/pkgs/development/tools/ent/default.nix b/pkgs/development/tools/ent/default.nix
index a1357c8ab2d3..58482135068c 100644
--- a/pkgs/development/tools/ent/default.nix
+++ b/pkgs/development/tools/ent/default.nix
@@ -2,16 +2,16 @@
 
 buildGoModule rec {
   pname = "ent-go";
-  version = "0.12.5";
+  version = "0.13.1";
 
   src = fetchFromGitHub {
     owner = "ent";
     repo = "ent";
     rev = "v${version}";
-    sha256 = "sha256-g4n9cOTv/35WkvMjrtP2eEcbiu5kiafVXifz1zlEuCY=";
+    sha256 = "sha256-OEQWNWGVs0QYhPuCGEFgAVaUnfswmvWVt+e0cAdkBKE=";
   };
 
-  vendorHash = "sha256-DUi4Ik+qFbx4LIm9MDJ4H9/+sIfCzK8MMGKp0GIGX7w=";
+  vendorHash = "sha256-9KdSGIyi95EVQq9jGoVqK8aq3JXlQXB+Qwlh/Kfz4Oc=";
 
   subPackages = [ "cmd/ent" ];
 
@@ -29,13 +29,13 @@ buildGoModule rec {
       --zsh <($out/bin/ent completion zsh)
   '';
 
-  meta = with lib; {
+  meta = {
     description = "An entity framework for Go";
     homepage = "https://entgo.io/";
+    changelog = "https://github.com/ent/ent/releases/tag/v${version}";
     downloadPage = "https://github.com/ent/ent";
-    license = licenses.asl20;
-    maintainers = with maintainers; [ ];
+    license = lib.licenses.asl20;
+    maintainers = [ ];
     mainProgram = "ent";
   };
 }
-
diff --git a/pkgs/development/tools/faas-cli/default.nix b/pkgs/development/tools/faas-cli/default.nix
index 2149eb50c278..da0151b8486e 100644
--- a/pkgs/development/tools/faas-cli/default.nix
+++ b/pkgs/development/tools/faas-cli/default.nix
@@ -18,13 +18,13 @@ let
 in
 buildGoModule rec {
   pname = "faas-cli";
-  version = "0.16.26";
+  version = "0.16.27";
 
   src = fetchFromGitHub {
     owner = "openfaas";
     repo = "faas-cli";
     rev = version;
-    sha256 = "sha256-eyQpeud0rW07eb6wtcTYem10LWf/g2dxRwQEMH29wL8=";
+    sha256 = "sha256-CZvIvvkDfpb4YPQIe5i8vZcmhLu7x0zTQGXCL8SxcvM=";
   };
 
   vendorHash = null;
diff --git a/pkgs/development/tools/firebase-tools/default.nix b/pkgs/development/tools/firebase-tools/default.nix
index 9c4d32133325..f6a23d437c7b 100644
--- a/pkgs/development/tools/firebase-tools/default.nix
+++ b/pkgs/development/tools/firebase-tools/default.nix
@@ -8,16 +8,16 @@
 
 buildNpmPackage rec {
   pname = "firebase-tools";
-  version = "13.7.5";
+  version = "13.9.0";
 
   src = fetchFromGitHub {
     owner = "firebase";
     repo = "firebase-tools";
     rev = "v${version}";
-    hash = "sha256-OPpLqXCxEkKOUB0U2gpvGipvRUcF3fM9yopdwkDMqXk=";
+    hash = "sha256-a/rtEDodVL0QCqxEhklDwiTSMFI1hKPrkbtsJH0Au64=";
   };
 
-  npmDepsHash = "sha256-dmySbwBdOJJ65gj1cBlDIS2o2Tnie6tx8cOyt0FoFyw=";
+  npmDepsHash = "sha256-z7h+Jh3KuMkxn5gUDHYlU1+UyABHdLh2IFJiu6wFkhU=";
 
   postPatch = ''
     ln -s npm-shrinkwrap.json package-lock.json
diff --git a/pkgs/development/tools/fsautocomplete/default.nix b/pkgs/development/tools/fsautocomplete/default.nix
index ac47bdfc2073..3a2374aa9c64 100644
--- a/pkgs/development/tools/fsautocomplete/default.nix
+++ b/pkgs/development/tools/fsautocomplete/default.nix
@@ -2,13 +2,13 @@
 
 buildDotnetModule rec {
   pname = "fsautocomplete";
-  version = "0.71.0";
+  version = "0.72.3";
 
   src = fetchFromGitHub {
     owner = "fsharp";
     repo = "FsAutoComplete";
     rev = "v${version}";
-    hash = "sha256-WajKmRDCMJ74qT2/NhUWRq+bytxt49vi98bm1QleEKo=";
+    hash = "sha256-YU2rb1rxlbreSXMO+IGS2BrdfmqntdSlLuxV3zekSaI=";
   };
 
   nugetDeps = ./deps.nix;
@@ -20,8 +20,8 @@ buildDotnetModule rec {
       --replace TargetFrameworks TargetFramework \
   '';
 
-  dotnet-sdk = with dotnetCorePackages; combinePackages [ sdk_6_0 sdk_7_0 ];
-  dotnet-runtime = dotnetCorePackages.sdk_7_0;
+  dotnet-sdk = with dotnetCorePackages; combinePackages [ sdk_6_0 sdk_7_0 sdk_8_0_2xx ];
+  dotnet-runtime = dotnetCorePackages.sdk_8_0_2xx;
 
   projectFile = "src/FsAutoComplete/FsAutoComplete.fsproj";
   executables = [ "fsautocomplete" ];
diff --git a/pkgs/development/tools/fsautocomplete/deps.nix b/pkgs/development/tools/fsautocomplete/deps.nix
index 192562146056..6dc9faa2b033 100644
--- a/pkgs/development/tools/fsautocomplete/deps.nix
+++ b/pkgs/development/tools/fsautocomplete/deps.nix
@@ -14,29 +14,15 @@
   (fetchNuGet { pname = "DotNet.ReproducibleBuilds"; version = "1.1.1"; sha256 = "0wa0xwbwv1lzjmqwg1vq06vrpb9kkbv3xw5nq50savj0dzhqakzq"; })
   (fetchNuGet { pname = "Expecto"; version = "10.1.0"; sha256 = "127yy5i0p2lybhm5xcy2wa6j1rcahk61mb1nbym687b23pgizrq9"; })
   (fetchNuGet { pname = "Expecto.Diff"; version = "9.0.4"; sha256 = "06g6nbr5kdr7hyayh24ry6xfghxpcfkqc8kma5qa5lcvhmy56f7j"; })
-  (fetchNuGet { pname = "Fake.Core.CommandLineParsing"; version = "6.0.0"; sha256 = "153m18jzji0rar0k1dqj1h90pfny00jyzbmp6vvlc9dcl89xfgvg"; })
-  (fetchNuGet { pname = "Fake.Core.Context"; version = "6.0.0"; sha256 = "1pqgc1zq50icw5j375wy9n7749r2rfqakajmdilyaxzczcxs4m2h"; })
-  (fetchNuGet { pname = "Fake.Core.Environment"; version = "6.0.0"; sha256 = "1r509s23djb1m62q0hmdgksrx975ksdanhzxzagh3xhmla49icni"; })
-  (fetchNuGet { pname = "Fake.Core.FakeVar"; version = "6.0.0"; sha256 = "0rmq31p6p5837q79nff6fmnwrnq4jkfmbq0sp639nzrcw72p9wql"; })
-  (fetchNuGet { pname = "Fake.Core.Process"; version = "6.0.0"; sha256 = "15zwgk6b1nk6a515n46x2cjj61hg9h4zq65z98v8amhasdml7vj1"; })
-  (fetchNuGet { pname = "Fake.Core.SemVer"; version = "6.0.0"; sha256 = "0j0w1wbg6zv84qn888ygh96saqpsbml7f3r5a9sfryvglxpzm6s3"; })
-  (fetchNuGet { pname = "Fake.Core.String"; version = "6.0.0"; sha256 = "05gyzydzvi9dnyzi7yrw9dy8bszikf3y3ayy7sg2zvwcskw65sma"; })
-  (fetchNuGet { pname = "Fake.Core.Target"; version = "6.0.0"; sha256 = "0wrf6vfp5yrm2hijdyb4nn9s4ac460m9kmqfnncrbqwdsg4yggpq"; })
-  (fetchNuGet { pname = "Fake.Core.Trace"; version = "6.0.0"; sha256 = "0v2m641d8ic04j9i8wrskqa85gpdaxcldg2d4ck4f0fpgb3py205"; })
-  (fetchNuGet { pname = "Fake.IO.FileSystem"; version = "6.0.0"; sha256 = "0kjj9ippsbi138kjipl34cx9pajmj71d205y9h5pmj7djilcvq47"; })
-  (fetchNuGet { pname = "Fake.Tools.Git"; version = "6.0.0"; sha256 = "18qj5r769r70bygn2si0d5xb921jxfdw6mg4v75i2fj79581bbcz"; })
-  (fetchNuGet { pname = "fantomas"; version = "6.2.3"; sha256 = "1x91w4sk402b6ah1y0r0c9rxwbbnjp4x4mr7x4n5zvjhiv97b282"; })
+  (fetchNuGet { pname = "fantomas"; version = "6.3.1"; sha256 = "0kkhdwcw0l7pa1hjil2hjpizjbp618ig32wgni5sfaqmxkc9iywq"; })
   (fetchNuGet { pname = "Fantomas.Client"; version = "0.9.0"; sha256 = "1zixwk61fyk7y9q6f8266kwxi6byr8fmyp1lf57qhbbvhq2waj9d"; })
-  (fetchNuGet { pname = "Fantomas.Core"; version = "6.2.0"; sha256 = "07yl2hr06zk1nl66scm24di3nf1zbrnd6329prwirnv370rz4q92"; })
-  (fetchNuGet { pname = "Fantomas.FCS"; version = "6.2.0"; sha256 = "1hhsa7hbxsm2d8ap4sqzwlzjmf4wsgg74i731rprr0nshjvd8ic7"; })
   (fetchNuGet { pname = "FParsec"; version = "1.1.1"; sha256 = "01s3zrxl9kfx0264wy0m555pfx0s0z165n4fvpgx63jlqwbd8m04"; })
-  (fetchNuGet { pname = "fsharp-analyzers"; version = "0.23.0"; sha256 = "115dqscxx02dss9s1shl6c1x6zc2dgrk9w8bj48cyjnwm79icqq9"; })
+  (fetchNuGet { pname = "fsharp-analyzers"; version = "0.25.0"; sha256 = "01i9yhqs7b0p9s1j9m8g3yd8w3a3xp9bp8791zmxp31l5ricjdwy"; })
   (fetchNuGet { pname = "FSharp.Analyzers.Build"; version = "0.3.0"; sha256 = "1c9ijc9lvyw4lfnd3m9260c8lwnh6ca91zslr29dpn525z9zgdif"; })
   (fetchNuGet { pname = "FSharp.Analyzers.SDK"; version = "0.25.0"; sha256 = "13s2bhizbl2ss9944wk3cka1ri22rs7aqhiiz2i9lyaj9jz863cy"; })
   (fetchNuGet { pname = "FSharp.Compiler.Service"; version = "43.8.200"; sha256 = "1jcp8by02n7vbs11p0gxmb42837l7q841f71ifmrqw7chmg14zik"; })
   (fetchNuGet { pname = "FSharp.Control.AsyncSeq"; version = "3.2.1"; sha256 = "02c8d8snd529rrcj6lsmab3wdq2sjh90j8sanx50ck9acfn9jd3v"; })
   (fetchNuGet { pname = "FSharp.Control.Reactive"; version = "5.0.5"; sha256 = "0ahvd3s5wfv610ks3b00ya5r71cqm34ap8ywx0pyrzhlsbk1ybqg"; })
-  (fetchNuGet { pname = "FSharp.Core"; version = "6.0.5"; sha256 = "07929km96znf6xnqzmxdk3h48kz2rg9msf4c5xxmnjqr0ikfb8c6"; })
   (fetchNuGet { pname = "FSharp.Core"; version = "8.0.200"; sha256 = "1v0w8n02wshggymckvy9l343yiznjfmif9nfd35f9a32s5wj4dn2"; })
   (fetchNuGet { pname = "FSharp.Data.Adaptive"; version = "1.2.13"; sha256 = "16l1h718h110yl2q83hzy1rpalyqlicdaxln7g0bf8kzq9b2v6rz"; })
   (fetchNuGet { pname = "FSharp.Formatting"; version = "14.0.1"; sha256 = "0sx4jlxzmrdcmc937arc9v0r90qkpf2gd1m9ngkpg88qvqcx4xsa"; })
@@ -57,13 +43,13 @@
   (fetchNuGet { pname = "Iced"; version = "1.17.0"; sha256 = "1999xavgpy2h83rh4indiq5mx5l509swqdi1raxj3ab6zvk49zpb"; })
   (fetchNuGet { pname = "IcedTasks"; version = "0.9.2"; sha256 = "1i4sg398qvxyrprca9jssn4lccwn67zndbg1a3a37cmsms5rlbvj"; })
   (fetchNuGet { pname = "ICSharpCode.Decompiler"; version = "7.2.1.6856"; sha256 = "19z68rgzl93lh1h8anbgzw119mhvcgr9nh5q2nxk6qihl2mx97ba"; })
-  (fetchNuGet { pname = "Ionide.Analyzers"; version = "0.7.0"; sha256 = "10s4wznblcdazrvghf64y59j1w4bvwar8iznjl0rncbka09ba4q5"; })
+  (fetchNuGet { pname = "Ionide.Analyzers"; version = "0.10.0"; sha256 = "1z97m2r6p13yg253zlx89x7fd4zvxmkggilav5h5wf4blsfxvzw1"; })
   (fetchNuGet { pname = "Ionide.KeepAChangelog.Tasks"; version = "0.1.8"; sha256 = "066zla2rp1sal6by3h3sg6ibpkk52kbhn30bzk58l6ym7q1kqa6b"; })
-  (fetchNuGet { pname = "Ionide.LanguageServerProtocol"; version = "0.4.20"; sha256 = "08ym8lljnkqk638f2djw3c0p6h0nzxycifz1dqhzzd2my5ss46zf"; })
-  (fetchNuGet { pname = "Ionide.ProjInfo"; version = "0.63.0"; sha256 = "1nvnckzr6bnzv5zlw7n8f8hv1a0vl31pv0jw2b0zd72qz1bs1dm4"; })
-  (fetchNuGet { pname = "Ionide.ProjInfo.FCS"; version = "0.63.0"; sha256 = "1viccl54v4ls8mhw4lpmblbyw47sblpzq8fscff06lqngbbqk6pr"; })
-  (fetchNuGet { pname = "Ionide.ProjInfo.ProjectSystem"; version = "0.63.0"; sha256 = "1pr95x6hfahcwqgkjnm7zaf43qyw7j9fwbqxvly9wpnz5drnk6yv"; })
-  (fetchNuGet { pname = "Ionide.ProjInfo.Sln"; version = "0.63.0"; sha256 = "1wpq3fm52zn7c57pkywadgcfrn072q50nnqvvnr41n6r7qj665gi"; })
+  (fetchNuGet { pname = "Ionide.LanguageServerProtocol"; version = "0.4.23"; sha256 = "0jfsan2d7aj68xksn1xrdiww1fdz34n7k91r5y4a77jx6h4ngbxq"; })
+  (fetchNuGet { pname = "Ionide.ProjInfo"; version = "0.64.0"; sha256 = "0sbd392f4fwmq4v652ak39md35vcgxl4q05y5dgrk71kpak6pg2w"; })
+  (fetchNuGet { pname = "Ionide.ProjInfo.FCS"; version = "0.64.0"; sha256 = "0srbqyaivq8i6xl20v5hg7zxkvby06zirmcppv1apwh9p1yvi68k"; })
+  (fetchNuGet { pname = "Ionide.ProjInfo.ProjectSystem"; version = "0.64.0"; sha256 = "0rzj97ysw4skavq4amhv5fd0h1dyyqi4rxzxzpd4cd07xc8bnfv6"; })
+  (fetchNuGet { pname = "Ionide.ProjInfo.Sln"; version = "0.64.0"; sha256 = "1yd30n5idc5rbqi7lr8gp4hb51l85q3canqinlaxa6raaml0xxsj"; })
   (fetchNuGet { pname = "LinkDotNet.StringBuilder"; version = "1.18.0"; sha256 = "0lgh4yjnim9qbqkmkgpx5fi2lha1cgcdbddvbsiw9jzp18fndxly"; })
   (fetchNuGet { pname = "McMaster.NETCore.Plugins"; version = "1.4.0"; sha256 = "1k2qz0qnf2b1kfwbzcynivy93jm7dcwl866d0fl7qlgq5vql7niy"; })
   (fetchNuGet { pname = "MessagePack"; version = "2.5.108"; sha256 = "0cnaz28lhrdmavnxjkakl9q8p2yv8mricvp1b0wxdfnz8v41gwzs"; })
@@ -106,9 +92,7 @@
   (fetchNuGet { pname = "Microsoft.NET.StringTools"; version = "17.4.0"; sha256 = "1smx30nq22plrn2mw4wb5vfgxk6hyx12b60c4wabmpnr81lq3nzv"; })
   (fetchNuGet { pname = "Microsoft.NET.Test.Sdk"; version = "17.4.1"; sha256 = "02p1j9fncd4fb2hyp51kw49d0dz30vvazhzk24c9f5ccc00ijpra"; })
   (fetchNuGet { pname = "Microsoft.NETCore.Platforms"; version = "1.1.1"; sha256 = "164wycgng4mi9zqi2pnsf1pq6gccbqvw6ib916mqizgjmd8f44pj"; })
-  (fetchNuGet { pname = "Microsoft.NETCore.Platforms"; version = "7.0.4"; sha256 = "0afmivk3m0hmwsiqnl87frzi7g57aiv5fwnjds0icl66djpb6zsm"; })
   (fetchNuGet { pname = "Microsoft.NETCore.Targets"; version = "1.1.3"; sha256 = "05smkcyxir59rgrmp7d6327vvrlacdgldfxhmyr1azclvga1zfsq"; })
-  (fetchNuGet { pname = "Microsoft.NETCore.Targets"; version = "5.0.0"; sha256 = "0z3qyv7qal5irvabc8lmkh58zsl42mrzd1i0sssvzhv4q4kl3cg6"; })
   (fetchNuGet { pname = "Microsoft.NETFramework.ReferenceAssemblies"; version = "1.0.3"; sha256 = "0hc4d4d4358g5192mf8faijwk0bpf9pjwcfd3h85sr67j0zhj6hl"; })
   (fetchNuGet { pname = "Microsoft.NETFramework.ReferenceAssemblies.net461"; version = "1.0.3"; sha256 = "1jcc552rwpaybd2ql0b31063ayj70sd3k6qqpf850xmqbyg2hlmx"; })
   (fetchNuGet { pname = "Microsoft.SourceLink.AzureRepos.Git"; version = "1.1.1"; sha256 = "059c8i2vybprn63sw2jr7xma4yyl2syx6hzygfdpr0zd5jlgy9rz"; })
@@ -130,7 +114,7 @@
   (fetchNuGet { pname = "OpenTelemetry"; version = "1.3.2"; sha256 = "1v9ipc75ipwjhhz4mkyjygw85i6ba5flcbhyspmf90vfi2nk7b79"; })
   (fetchNuGet { pname = "OpenTelemetry.Api"; version = "1.3.2"; sha256 = "0fgl99k6nm3n47vv9mx6y36pnljj2b5g641cs2zsw6l86n57qwv1"; })
   (fetchNuGet { pname = "OpenTelemetry.Exporter.OpenTelemetryProtocol"; version = "1.3.2"; sha256 = "14p6rn68mqrch3ani17vwyl4ggjz680nxkw1nf65xmf1ljlkb4iq"; })
-  (fetchNuGet { pname = "Paket"; version = "8.0.0-alpha002"; sha256 = "1c2kdndyb04plgwvqp78224zwk26dkicjy94pqh7shc9ifskrvsb"; })
+  (fetchNuGet { pname = "Paket"; version = "8.0.3"; sha256 = "12xm100rg82p5fvkn63mmjc8i38q8yvk5327snwzqijlfh3k60n0"; })
   (fetchNuGet { pname = "Perfolizer"; version = "0.2.1"; sha256 = "012aqqi3y3nfikqmn26yajpwd52c04zlzp0p91iyslw7mf26qncy"; })
   (fetchNuGet { pname = "runtime.debian.8-x64.runtime.native.System.Security.Cryptography.OpenSsl"; version = "4.3.2"; sha256 = "0rwpqngkqiapqc5c2cpkj7idhngrgss5qpnqg0yh40mbyflcxf8i"; })
   (fetchNuGet { pname = "runtime.fedora.23-x64.runtime.native.System.Security.Cryptography.OpenSsl"; version = "4.3.2"; sha256 = "1n06gxwlinhs0w7s8a94r1q3lwqzvynxwd3mp10ws9bg6gck8n4r"; })
diff --git a/pkgs/development/tools/gauge/default.nix b/pkgs/development/tools/gauge/default.nix
index 9c9c53c39073..456e5f8ad721 100644
--- a/pkgs/development/tools/gauge/default.nix
+++ b/pkgs/development/tools/gauge/default.nix
@@ -2,7 +2,7 @@
 
 buildGoModule rec {
   pname = "gauge";
-  version = "1.6.6";
+  version = "1.6.7";
 
   patches = [
     # adds a check which adds an error message when trying to
@@ -14,10 +14,10 @@ buildGoModule rec {
     owner = "getgauge";
     repo = "gauge";
     rev = "v${version}";
-    hash = "sha256-u64LEDWktnBqGmey1TGdpVerjBsgyyRKJKeAJU3ysZs=";
+    hash = "sha256-+6b34nCuoBGd9v9eoAgthxYboGWDM8rCU56VXpVKdQc=";
   };
 
-  vendorHash = "sha256-RC3oS4nD291p8BSiWZUmsej/XuadaR7Xz1+bEfZL3Oc=";
+  vendorHash = "sha256-VVHsldLfLrdufSBLbgSlniYK1+64651DL8gzw5VHans=";
 
   excludedPackages = [ "build" "man" ];
 
diff --git a/pkgs/development/tools/ginkgo/default.nix b/pkgs/development/tools/ginkgo/default.nix
index 60e67e17a86e..1c3355f3aef4 100644
--- a/pkgs/development/tools/ginkgo/default.nix
+++ b/pkgs/development/tools/ginkgo/default.nix
@@ -2,13 +2,13 @@
 
 buildGoModule rec {
   pname = "ginkgo";
-  version = "2.17.2";
+  version = "2.17.3";
 
   src = fetchFromGitHub {
     owner = "onsi";
     repo = "ginkgo";
     rev = "v${version}";
-    sha256 = "sha256-StvESO3kFo+mgiJgx7JvZzBnT62zT3ZxxWVjnVBTLlg=";
+    sha256 = "sha256-JIKEuYhzX/gTO2YYI3u1I9YBbXGkdmoQ3kiSfTwu/Qg=";
   };
   vendorHash = "sha256-qLyqG7A4TEsZSF8olXWc2BIYZukQx/xHsnbYTfC/w4A=";
 
diff --git a/pkgs/development/tools/git-ps-rs/default.nix b/pkgs/development/tools/git-ps-rs/default.nix
index 6d4a5be75418..b9e41327237b 100644
--- a/pkgs/development/tools/git-ps-rs/default.nix
+++ b/pkgs/development/tools/git-ps-rs/default.nix
@@ -10,16 +10,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "git-ps-rs";
-  version = "7.0.0";
+  version = "7.1.1";
 
   src = fetchFromGitHub {
     owner = "uptech";
     repo = "git-ps-rs";
     rev = version;
-    hash = "sha256-HPHFjYfug642NXeNmv50UzsdOAlDR9F/MtgYnzwiZP8=";
+    hash = "sha256-HkiCc/5Xx+1IKMz/vXPXwUp3c8qSjobhQaIJCzq8dqQ=";
   };
 
-  cargoHash = "sha256-mvRcOwCe5NQ+cJ9brnbZ6HLtLn+fnjYzSBQwA3Qn9PU=";
+  cargoHash = "sha256-r4cmnLkW8ocTcTECAbCk3S94T09lOUzHLQIGHv97W54=";
 
   nativeBuildInputs = [ pkg-config ];
 
diff --git a/pkgs/development/tools/glade/default.nix b/pkgs/development/tools/glade/default.nix
index da3dee87d221..84885d912129 100644
--- a/pkgs/development/tools/glade/default.nix
+++ b/pkgs/development/tools/glade/default.nix
@@ -12,7 +12,7 @@
 , enableWebkit2gtk ? stdenv.isLinux
 , webkitgtk_4_1
 , gobject-introspection
-, wrapGAppsHook
+, wrapGAppsHook3
 , itstool
 , libxml2
 , docbook-xsl-nons
@@ -38,7 +38,7 @@ stdenv.mkDerivation rec {
     pkg-config
     gettext
     itstool
-    wrapGAppsHook
+    wrapGAppsHook3
     docbook-xsl-nons
     docbook_xml_dtd_42
     libxslt
diff --git a/pkgs/development/tools/glamoroustoolkit/default.nix b/pkgs/development/tools/glamoroustoolkit/default.nix
index 3a32bfdaddaa..fed9323566de 100644
--- a/pkgs/development/tools/glamoroustoolkit/default.nix
+++ b/pkgs/development/tools/glamoroustoolkit/default.nix
@@ -1,7 +1,7 @@
 { lib
 , stdenv
 , fetchzip
-, wrapGAppsHook
+, wrapGAppsHook3
 , cairo
 , dbus
 , fontconfig
@@ -30,7 +30,7 @@ stdenv.mkDerivation (finalAttrs: {
     hash = "sha256-GQeYR232zoHLIt1AzznD7rp6u4zMiAdj1+0OfXfT6AQ=";
   };
 
-  nativeBuildInputs = [ wrapGAppsHook ];
+  nativeBuildInputs = [ wrapGAppsHook3 ];
 
   sourceRoot = ".";
 
diff --git a/pkgs/development/tools/go-minimock/default.nix b/pkgs/development/tools/go-minimock/default.nix
index 10010fa82223..8a02ab2c82da 100644
--- a/pkgs/development/tools/go-minimock/default.nix
+++ b/pkgs/development/tools/go-minimock/default.nix
@@ -2,20 +2,20 @@
 
 buildGoModule rec {
   pname = "go-minimock";
-  version = "3.3.7";
+  version = "3.3.8";
 
   src = fetchFromGitHub {
     owner = "gojuno";
     repo = "minimock";
     rev = "v${version}";
-    sha256 = "sha256-jwQT3JmVFS7e6wr+hCFLlA1YhiKdTrMai0RfClJafJQ=";
+    sha256 = "sha256-FPp2CunPCVxuz+MUKyy1HQdWc9TeLG7ri5vI7ig/xeM=";
   };
 
   ldflags = [
     "-s" "-w" "-X main.version=${version}"
   ];
 
-  vendorHash = "sha256-vcYhLMs/skZlhzdeEWUcv28VkRvraavziBwbwrgLZio=";
+  vendorHash = "sha256-O1Bp+zuSq3/UULpej4rXxeHcDiNAhECqj9Yh9aGeA0E=";
 
   doCheck = true;
 
diff --git a/pkgs/development/tools/go-mockery/default.nix b/pkgs/development/tools/go-mockery/default.nix
index 3b86b15aa4ac..2f343011cd11 100644
--- a/pkgs/development/tools/go-mockery/default.nix
+++ b/pkgs/development/tools/go-mockery/default.nix
@@ -2,13 +2,13 @@
 
 buildGoModule rec {
   pname = "go-mockery";
-  version = "2.43.0";
+  version = "2.43.1";
 
   src = fetchFromGitHub {
     owner = "vektra";
     repo = "mockery";
     rev = "v${version}";
-    sha256 = "sha256-R3J6TZO28x0I6vHjm5X7nMiJBhHuMIYdfp7IUNtu4Do=";
+    sha256 = "sha256-q4N8tAWlJ+P30KvOnt3AdO9Lee2Mg8mCBUXfT+i4m10=";
   };
 
   preCheck = ''
diff --git a/pkgs/development/tools/go-swagger/default.nix b/pkgs/development/tools/go-swagger/default.nix
index 5a536db51c22..9319bd499758 100644
--- a/pkgs/development/tools/go-swagger/default.nix
+++ b/pkgs/development/tools/go-swagger/default.nix
@@ -5,16 +5,16 @@
 
 buildGoModule rec {
   pname = "go-swagger";
-  version = "0.30.5";
+  version = "0.31.0";
 
   src = fetchFromGitHub {
     owner = "go-swagger";
     repo = pname;
     rev = "refs/tags/v${version}";
-    hash = "sha256-38Ytv/mQVi0xTydFTPNizJIjYPL+lOws6jHsRjxSC4o=";
+    hash = "sha256-PeH9bkRObsw4+ttuWhaPfPQQTOAw8pwlgTEtPoUBiIQ=";
   };
 
-  vendorHash = "sha256-TqoTzxPGF0BBUfLtYWkljRcmr08m4zo5iroWMklxL7U=";
+  vendorHash = "sha256-PBzJMXPZ2gVdrW3ZeerhR1BeT9vWIIS1vCTjz3UFHes=";
 
   doCheck = false;
 
diff --git a/pkgs/development/tools/go-task/default.nix b/pkgs/development/tools/go-task/default.nix
index 510acbbdf045..1ec7fec8c585 100644
--- a/pkgs/development/tools/go-task/default.nix
+++ b/pkgs/development/tools/go-task/default.nix
@@ -8,16 +8,16 @@
 
 buildGoModule rec {
   pname = "go-task";
-  version = "3.36.0";
+  version = "3.37.2";
 
   src = fetchFromGitHub {
     owner = pname;
     repo = "task";
     rev = "refs/tags/v${version}";
-    hash = "sha256-09dw6bDEKbgajH+/estVYDkbUdUiUUuqXYQqeOBTeQ0=";
+    hash = "sha256-yVQR7D3zpReBlYyuZNMBVs3lgWBR54doMUjRMhfgUJw=";
   };
 
-  vendorHash = "sha256-ahBpIPTHByZ5Qnl6PaOeTLNBq2hQ78+dUmaHvkJxkWg=";
+  vendorHash = "sha256-iugFWBIKt/Rm5ccQnIFR75P1AVZbbFhWN97dvr8DoBs=";
 
   doCheck = false;
 
diff --git a/pkgs/development/tools/goconvey/default.nix b/pkgs/development/tools/goconvey/default.nix
index 0ec9afb6101c..6717ff777be6 100644
--- a/pkgs/development/tools/goconvey/default.nix
+++ b/pkgs/development/tools/goconvey/default.nix
@@ -17,9 +17,9 @@ buildGoModule rec {
 
   ldflags = [ "-s" "-w" ];
 
-  preCheck = ''
-    buildFlagsArray+="-short"
-  '';
+  checkFlags = [
+    "-short"
+  ];
 
   meta = {
     description = "Go testing in the browser. Integrates with `go test`. Write behavioral tests in Go";
diff --git a/pkgs/development/tools/goda/default.nix b/pkgs/development/tools/goda/default.nix
index 19d363e1ef55..df8de49277cf 100644
--- a/pkgs/development/tools/goda/default.nix
+++ b/pkgs/development/tools/goda/default.nix
@@ -2,13 +2,13 @@
 
 buildGoModule rec {
   pname = "goda";
-  version = "0.5.7";
+  version = "0.5.8";
 
   src = fetchFromGitHub {
     owner = "loov";
     repo = "goda";
     rev = "v${version}";
-    sha256 = "sha256-kilFb/2wXdzn/gXy9mBg0PZH8rd+MFIom4AGAZLgnBo=";
+    hash = "sha256-WmOe3MfFWUnFSuwntHUjN+NeeT7TdxfBOgciviYZC0Y=";
   };
 
   vendorHash = "sha256-FYjlOYB0L4l6gF8hYtJroV1qMQD0ZmKWXBarjyConRs=";
diff --git a/pkgs/development/tools/godot/4/default.nix b/pkgs/development/tools/godot/4/default.nix
index b0db2e0b4f4f..111cf9e0a187 100644
--- a/pkgs/development/tools/godot/4/default.nix
+++ b/pkgs/development/tools/godot/4/default.nix
@@ -132,6 +132,8 @@ stdenv.mkDerivation rec {
   outputs = [ "out" "man" ];
 
   installPhase = ''
+    runHook preInstall
+
     mkdir -p "$out/bin"
     cp bin/godot.* $out/bin/godot4
 
@@ -144,6 +146,8 @@ stdenv.mkDerivation rec {
       --replace "Godot Engine" "Godot Engine 4"
     cp icon.svg "$out/share/icons/hicolor/scalable/apps/godot.svg"
     cp icon.png "$out/share/icons/godot.png"
+
+    runHook postInstall
   '';
 
   meta = {
diff --git a/pkgs/development/tools/golangci-lint/default.nix b/pkgs/development/tools/golangci-lint/default.nix
index e7deb9537000..342a2c19e41d 100644
--- a/pkgs/development/tools/golangci-lint/default.nix
+++ b/pkgs/development/tools/golangci-lint/default.nix
@@ -2,16 +2,16 @@
 
 buildGoModule rec {
   pname = "golangci-lint";
-  version = "1.57.2";
+  version = "1.58.1";
 
   src = fetchFromGitHub {
     owner = "golangci";
     repo = "golangci-lint";
     rev = "v${version}";
-    hash = "sha256-d3U56fRIyntj/uKTOHuKFvOZqh+6VtzYrbKDjcKzhbI=";
+    hash = "sha256-RnrD1KA0XNdFx5bs2vfCoBEuBjtesyyTXAvIWMeRPVQ=";
   };
 
-  vendorHash = "sha256-3gS/F1jcjegtkLfmPcBzYqDA4KmwABkKpPAhTxqguYw=";
+  vendorHash = "sha256-Q3y4yam9gRFopZbAlLzWSFj59j+WwWeflJMdYmmJh7U=";
 
   subPackages = [ "cmd/golangci-lint" ];
 
diff --git a/pkgs/development/tools/goperf/default.nix b/pkgs/development/tools/goperf/default.nix
index ed1a6c1a23b7..ffb644aaea40 100644
--- a/pkgs/development/tools/goperf/default.nix
+++ b/pkgs/development/tools/goperf/default.nix
@@ -8,7 +8,7 @@
 
 buildGoModule rec {
   pname = "goperf";
-  version = "unstable-2023-11-08";
+  version = "0-unstable-2023-11-08";
 
   src = fetchgit {
     url = "https://go.googlesource.com/perf";
@@ -22,8 +22,8 @@ buildGoModule rec {
     export UPDATE_NIX_ATTR_PATH=goperf
     ${lib.escapeShellArgs (unstableGitUpdater { inherit (src) url; })}
     set -x
-    oldhash="$(nix-instantiate . --eval --strict -A "goperf.go-modules.drvAttrs.outputHash" | cut -d'"' -f2)"
-    newhash="$(nix-build -A goperf.go-modules --no-out-link 2>&1 | tail -n3 | grep 'got:' | cut -d: -f2- | xargs echo || true)"
+    oldhash="$(nix-instantiate . --eval --strict -A "goperf.goModules.drvAttrs.outputHash" | cut -d'"' -f2)"
+    newhash="$(nix-build -A goperf.goModules --no-out-link 2>&1 | tail -n3 | grep 'got:' | cut -d: -f2- | xargs echo || true)"
     fname="$(nix-instantiate --eval -E 'with import ./. {}; (builtins.unsafeGetAttrPos "version" goperf).file' | cut -d'"' -f2)"
     ${lib.getExe sd} --string-mode "$oldhash" "$newhash" "$fname"
   '';
diff --git a/pkgs/development/tools/goresym/default.nix b/pkgs/development/tools/goresym/default.nix
index 9612b25254f5..d20a9a6c809a 100644
--- a/pkgs/development/tools/goresym/default.nix
+++ b/pkgs/development/tools/goresym/default.nix
@@ -6,13 +6,13 @@
 
 buildGoModule rec {
   pname = "goresym";
-  version = "2.7.3";
+  version = "2.7.4";
 
   src = fetchFromGitHub {
     owner = "mandiant";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-U3AjEKQKPS5ghrmEJTsGRIC2BoPYAWL6RDPhA+eN2hg=";
+    sha256 = "sha256-qFDacInIiV1thuYMjyzTG7ru5bkd2Af1iao7Oes1mRg=";
   };
 
   subPackages = [ "." ];
diff --git a/pkgs/development/tools/gosec/default.nix b/pkgs/development/tools/gosec/default.nix
index 34d26d853e6b..8068988d0e6f 100644
--- a/pkgs/development/tools/gosec/default.nix
+++ b/pkgs/development/tools/gosec/default.nix
@@ -5,16 +5,16 @@
 
 buildGoModule rec {
   pname = "gosec";
-  version = "2.19.0";
+  version = "2.20.0";
 
   src = fetchFromGitHub {
     owner = "securego";
     repo = pname;
     rev = "v${version}";
-    hash = "sha256-Yb0NEvGx0Ds3t2VjhSWw4oILmN1kR9Dlqe45/VRbu0A=";
+    hash = "sha256-QQD24Z755AurBFXZj/wlRBJegQ74kTvWVy2cN5PnblY=";
   };
 
-  vendorHash = "sha256-yphsGkubJyXDrlCAKh9tdKI5cDldNXvJ22fs3rY5I4Y=";
+  vendorHash = "sha256-VWbsSS3j8zgsZQzsO/ZyKoOUqhNhmMmDICImUZHmC9Y=";
 
   subPackages = [
     "cmd/gosec"
diff --git a/pkgs/development/tools/grpc-gateway/default.nix b/pkgs/development/tools/grpc-gateway/default.nix
index 83d5a575b838..39621abf85eb 100644
--- a/pkgs/development/tools/grpc-gateway/default.nix
+++ b/pkgs/development/tools/grpc-gateway/default.nix
@@ -2,16 +2,16 @@
 
 buildGoModule rec {
   pname = "grpc-gateway";
-  version = "2.19.1";
+  version = "2.20.0";
 
   src = fetchFromGitHub {
     owner = "grpc-ecosystem";
     repo = "grpc-gateway";
     rev = "v${version}";
-    sha256 = "sha256-CdGQpQfOSimeio8v1lZ7xzE/oAS2qFyu+uN+H9i7vpo=";
+    sha256 = "sha256-CnnJRgEGarwIaE2LkphN3gogzIhwQ5hAaUZFpLR/HxU=";
   };
 
-  vendorHash = "sha256-no7kZGpf/VOuceC3J+izGFQp5aMS3b+Rn+x4BFZ2zgs=";
+  vendorHash = "sha256-aNOWu+TXbXn3jZ29BwU+x+vWMtL76NZoPElFuUwcHiI=";
 
   ldflags = [
     "-X=main.version=${version}"
diff --git a/pkgs/development/tools/haskell/hadrian/disable-hyperlinked-source.patch b/pkgs/development/tools/haskell/hadrian/disable-hyperlinked-source.patch
index 72010f85cddc..103871bb65e1 100644
--- a/pkgs/development/tools/haskell/hadrian/disable-hyperlinked-source.patch
+++ b/pkgs/development/tools/haskell/hadrian/disable-hyperlinked-source.patch
@@ -1,7 +1,7 @@
 diff --git a/hadrian/src/Settings/Builders/Haddock.hs b/hadrian/src/Settings/Builders/Haddock.hs
 index 902b2f85e2..429a441c3b 100644
---- a/src/Settings/Builders/Haddock.hs
-+++ b/src/Settings/Builders/Haddock.hs
+--- a/hadrian/src/Settings/Builders/Haddock.hs
++++ b/hadrian/src/Settings/Builders/Haddock.hs
 @@ -57,7 +57,6 @@ haddockBuilderArgs = mconcat
              , arg $ "--odir=" ++ takeDirectory output
              , arg $ "--dump-interface=" ++ output
diff --git a/pkgs/development/tools/haskell/hadrian/hadrian-9.8.1-allow-Cabal-3.10.patch b/pkgs/development/tools/haskell/hadrian/hadrian-9.8.1-allow-Cabal-3.10.patch
index d813fef31c8d..eccf1a987d06 100644
--- a/pkgs/development/tools/haskell/hadrian/hadrian-9.8.1-allow-Cabal-3.10.patch
+++ b/pkgs/development/tools/haskell/hadrian/hadrian-9.8.1-allow-Cabal-3.10.patch
@@ -1,7 +1,7 @@
 diff --git a/hadrian.cabal b/hadrian.cabal
 index 70fded11aa..3893537f05 100644
---- a/hadrian.cabal
-+++ b/hadrian.cabal
+--- a/hadrian/hadrian.cabal
++++ b/hadrian/hadrian.cabal
 @@ -150,7 +150,7 @@ executable hadrian
                         , TypeOperators
      other-extensions:    MultiParamTypeClasses
diff --git a/pkgs/development/tools/haskell/hadrian/hadrian.nix b/pkgs/development/tools/haskell/hadrian/hadrian.nix
index 7a44e2eeffc2..d1368427f0c9 100644
--- a/pkgs/development/tools/haskell/hadrian/hadrian.nix
+++ b/pkgs/development/tools/haskell/hadrian/hadrian.nix
@@ -11,7 +11,6 @@
 , ghcVersion
   # Customization
 , userSettings ? null
-, enableHyperlinkedSource
 }:
 
 mkDerivation {
@@ -21,13 +20,6 @@ mkDerivation {
   postUnpack = ''
     sourceRoot="$sourceRoot/hadrian"
   '';
-  patches = lib.optionals (!enableHyperlinkedSource) [
-    ./disable-hyperlinked-source.patch
-  ] ++ lib.optionals (lib.elem ghcVersion [ "9.8.1" "9.8.2" ]) [
-    # Incorrect bounds on Cabal
-    # https://gitlab.haskell.org/ghc/ghc/-/issues/24100
-    ./hadrian-9.8.1-allow-Cabal-3.10.patch
-  ];
   # Overwrite UserSettings.hs with a provided custom one
   postPatch = lib.optionalString (userSettings != null) ''
     install -m644 "${writeText "UserSettings.hs" userSettings}" src/UserSettings.hs
diff --git a/pkgs/development/tools/haskell/hadrian/make-hadrian.nix b/pkgs/development/tools/haskell/hadrian/make-hadrian.nix
index 6aa30cb9e60c..fb9ee89f7cdb 100644
--- a/pkgs/development/tools/haskell/hadrian/make-hadrian.nix
+++ b/pkgs/development/tools/haskell/hadrian/make-hadrian.nix
@@ -32,10 +32,6 @@
   # Contents of a non-default UserSettings.hs to use when building hadrian, if any.
   # Should be a string or null.
 , userSettings ? null
-  # Whether to pass --hyperlinked-source to haddock or not. This is a custom
-  # workaround as we wait for this to be configurable via userSettings or similar.
-  # https://gitlab.haskell.org/ghc/ghc/-/issues/23625
-, enableHyperlinkedSource ? false
 }:
 
 let
@@ -50,7 +46,7 @@ let
 in
 
 callPackage' ./hadrian.nix ({
-  inherit userSettings enableHyperlinkedSource;
+  inherit userSettings;
 } // lib.optionalAttrs (lib.versionAtLeast ghcVersion "9.9") {
   # Starting with GHC 9.9 development, additional in tree packages are required
   # to build hadrian. (Hackage-released conditional dependencies are handled
diff --git a/pkgs/development/tools/headache/default.nix b/pkgs/development/tools/headache/default.nix
index 5781a8a54c18..b5f5e55f3f79 100644
--- a/pkgs/development/tools/headache/default.nix
+++ b/pkgs/development/tools/headache/default.nix
@@ -6,13 +6,13 @@ in
 
 buildDunePackage rec {
   pname = "headache";
-  version = "1.07";
+  version = "1.08";
 
   src = fetchFromGitHub {
     owner = "frama-c";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-RL80ggcJSJFu2UTECUNP6KufRhR8ZnG7sQeYzhrw37g=";
+    sha256 = "sha256-UXQIIsCyJZN4qos7Si7LLm9vQueOduUmLeYHuyT2GZo=";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/tools/heroku/default.nix b/pkgs/development/tools/heroku/default.nix
index ab8d2b6cd053..43be538a612e 100644
--- a/pkgs/development/tools/heroku/default.nix
+++ b/pkgs/development/tools/heroku/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation {
   pname = "heroku";
-  version = "8.11.4";
+  version = "8.11.5";
 
   src = fetchzip {
-    url = "https://cli-assets.heroku.com/versions/8.11.4/501330b/heroku-v8.11.4-501330b-linux-x64.tar.xz";
-    hash = "sha256-Q8kXXsk2VGNLv4LyUqnN3Rapozac/jgkyhSnkBOcDmo=";
+    url = "https://cli-assets.heroku.com/versions/8.11.5/df5cd30/heroku-v8.11.5-df5cd30-linux-x64.tar.xz";
+    hash = "sha256-in6VuJmoItXGL85XqN1oItGPkUmDb4n+LzxE5q4ycYc=";
   };
 
   nativeBuildInputs = [ makeWrapper ];
diff --git a/pkgs/development/tools/infisical/default.nix b/pkgs/development/tools/infisical/default.nix
index 73036f7691ac..e7408f87efbb 100644
--- a/pkgs/development/tools/infisical/default.nix
+++ b/pkgs/development/tools/infisical/default.nix
@@ -76,7 +76,7 @@ stdenv.mkDerivation {
     changelog = "https://github.com/infisical/infisical/releases/tag/infisical-cli%2Fv${version}";
     license = licenses.mit;
     mainProgram = "infisical";
-    maintainers = [ maintainers.ivanmoreau maintainers.jgoux ];
+    maintainers = teams.infisical.members;
     platforms = [
       "x86_64-linux"
       "aarch64-linux"
diff --git a/pkgs/development/tools/jqp/default.nix b/pkgs/development/tools/jqp/default.nix
index 9c604d5cab4c..ab99341c1a96 100644
--- a/pkgs/development/tools/jqp/default.nix
+++ b/pkgs/development/tools/jqp/default.nix
@@ -5,16 +5,16 @@
 
 buildGoModule rec {
   pname = "jqp";
-  version = "0.5.0";
+  version = "0.6.0";
 
   src = fetchFromGitHub {
     owner = "noahgorstein";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-z2EKtSM+/wWGgwsHKDcxtc/M6UZ01AiTZaaCYCWjU7M=";
+    sha256 = "sha256-zcv6fYrqPp/IMg4ivqJtlJwOs2M5E8niWoIOXYiEZuA=";
   };
 
-  vendorHash = "sha256-7UiQjTgcwGOTEJEaWywEdZvpkM/MoXU3d6k8oVmUiW8=";
+  vendorHash = "sha256-c+TZGLaUomlykIU4aN7awUp4kpIEoGOkkbvIC6ok7h4=";
 
   subPackages = [ "." ];
 
diff --git a/pkgs/development/tools/k6/default.nix b/pkgs/development/tools/k6/default.nix
index 3d1dfbd2d0b9..246cccbf3b08 100644
--- a/pkgs/development/tools/k6/default.nix
+++ b/pkgs/development/tools/k6/default.nix
@@ -2,13 +2,13 @@
 
 buildGoModule rec {
   pname = "k6";
-  version = "0.50.0";
+  version = "0.51.0";
 
   src = fetchFromGitHub {
     owner = "grafana";
     repo = pname;
     rev = "v${version}";
-    hash = "sha256-lR16M8TAP0ilvcrA9YjVoZMrsi+kwEFKx5Fd3birHHM=";
+    hash = "sha256-NlSb0UNe61AG/BQyUFqZEug3VnGTi0W0o0CblvV+oDg=";
   };
 
   subPackages = [ "./" ];
diff --git a/pkgs/development/tools/kind/default.nix b/pkgs/development/tools/kind/default.nix
index 6896e953abde..0d87b23022f0 100644
--- a/pkgs/development/tools/kind/default.nix
+++ b/pkgs/development/tools/kind/default.nix
@@ -2,13 +2,13 @@
 
 buildGoModule rec {
   pname = "kind";
-  version = "0.22.0";
+  version = "0.23.0";
 
   src = fetchFromGitHub {
     rev = "v${version}";
     owner = "kubernetes-sigs";
     repo = "kind";
-    hash = "sha256-DJTsyGEQA36MSmW5eWYTV1Tk6JOBIVJrEARA/x70S0U=";
+    hash = "sha256-S+kk3g/A1bio1v7zoXmvaTAYd0LBq5uip/9DvhkzZnM=";
   };
 
   patches = [
@@ -16,7 +16,7 @@ buildGoModule rec {
     ./kernel-module-path.patch
   ];
 
-  vendorHash = "sha256-J/sJd2LLMBr53Z3sGrWgnWA8Ry+XqqfCEObqFyUD96g=";
+  vendorHash = "sha256-YB2/MudoIVtTHU6FtvZOEhhxg5ss6OvENXOykPlQ12Y=";
 
   nativeBuildInputs = [ installShellFiles ];
 
diff --git a/pkgs/development/tools/ko/default.nix b/pkgs/development/tools/ko/default.nix
index f8fa01526b9d..a0714ba3530c 100644
--- a/pkgs/development/tools/ko/default.nix
+++ b/pkgs/development/tools/ko/default.nix
@@ -7,16 +7,16 @@
 
 buildGoModule rec {
   pname = "ko";
-  version = "0.15.2";
+  version = "0.15.3";
 
   src = fetchFromGitHub {
     owner = "ko-build";
     repo = pname;
     rev = "refs/tags/v${version}";
-    hash = "sha256-/1s335bXbBKlzKT4AevuHltLdU2qj6pJFngOrJCLtUw=";
+    hash = "sha256-H/S2TNzUIAjHDCrfQ3pkHC3yVf1k1DYkR5eBme8Cuq4=";
   };
 
-  vendorHash = null;
+  vendorHash = "sha256-RrcJJzjmihjR/E19Pqgl//+yweRsaqWZ0yPcd1AvOc0=";
 
   nativeBuildInputs = [ installShellFiles ];
 
diff --git a/pkgs/development/tools/language-servers/csharp-ls/default.nix b/pkgs/development/tools/language-servers/csharp-ls/default.nix
index dd8643b7cd94..eb8c6cd2bb31 100644
--- a/pkgs/development/tools/language-servers/csharp-ls/default.nix
+++ b/pkgs/development/tools/language-servers/csharp-ls/default.nix
@@ -8,9 +8,9 @@ in
 
 buildDotnetGlobalTool rec {
   pname = "csharp-ls";
-  version = "0.12.0";
+  version = "0.13.0";
 
-  nugetSha256 = "sha256-JQPIFgVisw/rRUcWpRGrFI3S67f5mOl0CWG1i8BlsXQ=";
+  nugetSha256 = "sha256-hhgMwDk3mT7E07REqZduTuEnS7D1tCgdxqN+MLNo9EI=";
 
   dotnet-sdk = sdk_8_0;
   dotnet-runtime = sdk_8_0;
diff --git a/pkgs/development/tools/language-servers/fortls/default.nix b/pkgs/development/tools/language-servers/fortls/default.nix
index 1fc614150b54..ccb70db0727c 100644
--- a/pkgs/development/tools/language-servers/fortls/default.nix
+++ b/pkgs/development/tools/language-servers/fortls/default.nix
@@ -8,13 +8,13 @@
 
 buildPythonApplication rec {
   pname = "fortls";
-  version = "2.13.0";
+  version = "3.0.0";
 
   src = fetchFromGitHub {
     owner = "fortran-lang";
     repo = pname;
-    rev = "v${version}";
-    hash = "sha256-kFk2Dlnb0FXM3Ysvsy+g2AAMgpWmwzxuyJPovDm/FJU=";
+    rev = "refs/tags/v${version}";
+    hash = "sha256-kRL4kLX1T2Sontl8f3VO8Hb7uI41JwhZBiH//gdcmNE=";
   };
 
   nativeBuildInputs = [ setuptools-scm ];
diff --git a/pkgs/development/tools/language-servers/helm-ls/default.nix b/pkgs/development/tools/language-servers/helm-ls/default.nix
index 337e45153f55..587a209562ab 100644
--- a/pkgs/development/tools/language-servers/helm-ls/default.nix
+++ b/pkgs/development/tools/language-servers/helm-ls/default.nix
@@ -8,16 +8,16 @@
 
 buildGoModule rec {
   pname = "helm-ls";
-  version = "0.0.15";
+  version = "0.0.16";
 
   src = fetchFromGitHub {
     owner = "mrjosh";
     repo = "helm-ls";
     rev = "v${version}";
-    hash = "sha256-RRpPmpwEHrORVVXn3mVgGcOAI7nmyrl+gwIuGXAZglY=";
+    hash = "sha256-y4FYcago8tVK4ru6tLizEgOLsMuryFmJUa2D8fXulDg=";
   };
 
-  vendorHash = "sha256-pV1FYhBLP0goetSr9v9iqXbeFTUHLdiIQ3ixqOsmp+Q=";
+  vendorHash = "sha256-ZeJeLpuac8ecKCOv2gXpT/P4GBFstB6lUaKOhQKFRAE=";
 
   nativeBuildInputs = [ installShellFiles ];
 
diff --git a/pkgs/development/tools/language-servers/lua-language-server/default.nix b/pkgs/development/tools/language-servers/lua-language-server/default.nix
index f20ed09ac696..7b9ad09191d0 100644
--- a/pkgs/development/tools/language-servers/lua-language-server/default.nix
+++ b/pkgs/development/tools/language-servers/lua-language-server/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation (finalAttrs: {
   pname = "lua-language-server";
-  version = "3.8.3";
+  version = "3.9.1";
 
   src = fetchFromGitHub {
     owner = "luals";
     repo = "lua-language-server";
     rev = finalAttrs.version;
-    hash = "sha256-Zl57KmsAuyMWbcKnU19m7ljox/LqWsa6gXbjaWiznfg=";
+    hash = "sha256-M4eTrs5Ue2+b40TPdW4LZEACGYCE/J9dQodEk9d+gpY=";
     fetchSubmodules = true;
   };
 
diff --git a/pkgs/development/tools/language-servers/neocmakelsp/default.nix b/pkgs/development/tools/language-servers/neocmakelsp/default.nix
index 547693200cf0..de395b61fbfa 100644
--- a/pkgs/development/tools/language-servers/neocmakelsp/default.nix
+++ b/pkgs/development/tools/language-servers/neocmakelsp/default.nix
@@ -5,16 +5,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "neocmakelsp";
-  version = "0.6.23";
+  version = "0.6.24";
 
   src = fetchFromGitHub {
     owner = "Decodetalkers";
     repo = "neocmakelsp";
     rev = "v${version}";
-    hash = "sha256-o35uoyrMBxKy31I56j7PAuNP/pyB51VRMp8Ip9vRXdU=";
+    hash = "sha256-Zpaw0LCdluU76epHrRDQJw1cVptjR5IH8Ufy8yLVECo=";
   };
 
-  cargoHash = "sha256-eMMJTY96S27mxpcS44UfvS695ImlhX/E2wuldcPVUtc=";
+  cargoHash = "sha256-Z3MdJdgR1oVPwTcq8rihHUXGkP38Ve/C+48NooeAWlo=";
 
   meta = with lib; {
     description = "A cmake lsp based on tower-lsp and treesitter";
diff --git a/pkgs/development/tools/language-servers/pylyzer/Cargo.lock b/pkgs/development/tools/language-servers/pylyzer/Cargo.lock
index 49986d256fd9..6127a15eead7 100644
--- a/pkgs/development/tools/language-servers/pylyzer/Cargo.lock
+++ b/pkgs/development/tools/language-servers/pylyzer/Cargo.lock
@@ -124,9 +124,9 @@ checksum = "11157ac094ffbdde99aa67b23417ebdd801842852b500e395a45a9c0aac03e4a"
 
 [[package]]
 name = "els"
-version = "0.1.48-nightly.0"
+version = "0.1.48-nightly.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9fc7d9b7e85dd36847b2e3fcb4a400c1f25a49c7ecfa0e9f25bdad91070cba32"
+checksum = "d1160cfdc48996a3f0f1e8e5b2d060e48ab7245e3931eef154fe0afc4de6d55e"
 dependencies = [
  "erg_common",
  "erg_compiler",
@@ -138,9 +138,9 @@ dependencies = [
 
 [[package]]
 name = "erg_common"
-version = "0.6.36-nightly.0"
+version = "0.6.36-nightly.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e25256e6a5de7886319cf6bc830b92b04a9f722eac3fdf43a82fc9d43e9336a1"
+checksum = "f19dd94255e83e016cd6d7cd18e99e9c927e2144cf9d17e759271c40c6cf1dcd"
 dependencies = [
  "backtrace-on-stack-overflow",
  "erg_proc_macros",
@@ -150,9 +150,9 @@ dependencies = [
 
 [[package]]
 name = "erg_compiler"
-version = "0.6.36-nightly.0"
+version = "0.6.36-nightly.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d224db567e7d13a30a52f7178623434922d781d8bc4310c7adae7052ec21cb18"
+checksum = "0c4712faf4c949016d752e7d697dab1df44043eaf94bea5a2ada73b1ab70dfe0"
 dependencies = [
  "erg_common",
  "erg_parser",
@@ -160,9 +160,9 @@ dependencies = [
 
 [[package]]
 name = "erg_parser"
-version = "0.6.36-nightly.0"
+version = "0.6.36-nightly.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "16ba6fbccd31c15bc032fbd52be75b7965f10a192adfed440e2d961bdd52e47f"
+checksum = "791e826192978d665e46aa30aa7330ef470b90e6e5ebe38c2b32a2a4141bc919"
 dependencies = [
  "erg_common",
  "erg_proc_macros",
@@ -171,9 +171,9 @@ dependencies = [
 
 [[package]]
 name = "erg_proc_macros"
-version = "0.6.36-nightly.0"
+version = "0.6.36-nightly.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "40f73fb45d76f14edb6076c1b0bbd0c9ee7531663595674dd6ae667d13fed769"
+checksum = "119857fa1bb184c6b2adba2e3b2a71797f6c7865bc6d4fdddac988fda9e55b77"
 dependencies = [
  "quote",
  "syn 1.0.109",
@@ -536,7 +536,7 @@ dependencies = [
 
 [[package]]
 name = "py2erg"
-version = "0.0.53"
+version = "0.0.54"
 dependencies = [
  "erg_common",
  "erg_compiler",
@@ -546,7 +546,7 @@ dependencies = [
 
 [[package]]
 name = "pylyzer"
-version = "0.0.53"
+version = "0.0.54"
 dependencies = [
  "els",
  "erg_common",
diff --git a/pkgs/development/tools/language-servers/pylyzer/default.nix b/pkgs/development/tools/language-servers/pylyzer/default.nix
index 97e927d3f442..92607901caf5 100644
--- a/pkgs/development/tools/language-servers/pylyzer/default.nix
+++ b/pkgs/development/tools/language-servers/pylyzer/default.nix
@@ -12,13 +12,13 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "pylyzer";
-  version = "0.0.53";
+  version = "0.0.54";
 
   src = fetchFromGitHub {
     owner = "mtshiba";
     repo = "pylyzer";
     rev = "refs/tags/v${version}";
-    hash = "sha256-x/52dDNuMOoN0gbBTPEhXZpfdVk0kJaBv9tMsh2pOiA=";
+    hash = "sha256-GUZMzV0yztlLcxvuTAuRoQ4eQhoMMyqjdu3cfOCJCJE=";
   };
 
   cargoLock = {
diff --git a/pkgs/development/tools/language-servers/vscode-langservers-extracted/default.nix b/pkgs/development/tools/language-servers/vscode-langservers-extracted/default.nix
index aa7705641615..2743bdac8073 100644
--- a/pkgs/development/tools/language-servers/vscode-langservers-extracted/default.nix
+++ b/pkgs/development/tools/language-servers/vscode-langservers-extracted/default.nix
@@ -2,16 +2,16 @@
 
 buildNpmPackage rec {
   pname = "vscode-langservers-extracted";
-  version = "4.8.0";
+  version = "4.9.0";
 
   src = fetchFromGitHub {
     owner = "hrsh7th";
     repo = pname;
     rev = "v${version}";
-    hash = "sha256-sGnxmEQ0J74zNbhRpsgF/cYoXwn4jh9yBVjk6UiUdK0=";
+    hash = "sha256-4qAQa8Pt7Br0T770ck2F912ZddrzgTKEliSAP/qLvgE=";
   };
 
-  npmDepsHash = "sha256-LFWC87Ahvjf2moijayFze1Jk0TmTc7rOUd/s489PHro=";
+  npmDepsHash = "sha256-2rRyg+UO3wnq5CuG5q87YOdGng9zBTh9aXueB0xf8ps=";
 
   buildPhase =
     let
diff --git a/pkgs/development/tools/melange/default.nix b/pkgs/development/tools/melange/default.nix
index 24e7584b76d3..90383cba4c03 100644
--- a/pkgs/development/tools/melange/default.nix
+++ b/pkgs/development/tools/melange/default.nix
@@ -6,13 +6,13 @@
 
 buildGoModule rec {
   pname = "melange";
-  version = "0.6.11";
+  version = "0.7.0";
 
   src = fetchFromGitHub {
     owner = "chainguard-dev";
     repo = pname;
     rev = "v${version}";
-    hash = "sha256-/P85vrcKWZHXNUIlzLpc9v0I5KEL7HUyr1SM2207l7o=";
+    hash = "sha256-RkX6jS3Oh0pRn7kwNDRi8RQ2apLx3W82yQYI1JLJXjQ=";
     # populate values that require us to use git. By doing this in postFetch we
     # can delete .git afterwards and maintain better reproducibility of the src.
     leaveDotGit = true;
@@ -25,7 +25,7 @@ buildGoModule rec {
     '';
   };
 
-  vendorHash = "sha256-R1Fo4N5q00ePkddOJKauC6iDPGMYk15FIKEXqWy6ifQ=";
+  vendorHash = "sha256-0IBpnwAkvrGkll/mE67BXb/TmwYJyX2oG/aBqsKcn4g=";
 
   subPackages = [ "." ];
 
diff --git a/pkgs/development/tools/metal-cli/default.nix b/pkgs/development/tools/metal-cli/default.nix
index e11a580ffb26..e3c95bbb244f 100644
--- a/pkgs/development/tools/metal-cli/default.nix
+++ b/pkgs/development/tools/metal-cli/default.nix
@@ -6,16 +6,16 @@
 
 buildGoModule rec {
   pname = "metal-cli";
-  version = "0.22.0";
+  version = "0.23.0";
 
   src = fetchFromGitHub {
     owner = "equinix";
     repo = pname;
     rev = "v${version}";
-    hash = "sha256-jnBD1MYQ3Tq/YzPEpCu5sifEUAI0cw59/NCbDLisEDo=";
+    hash = "sha256-6bdDxxY5HwYXer8R1C5b7UIXy0wdBVDYYNtTR6eHv10=";
   };
 
-  vendorHash = "sha256-dIZyBhoY6GkkMY4NQrDjVxKaOOPIdxGGRBFlTkyeFdo=";
+  vendorHash = "sha256-fNpfcBHxjPdWpfM9/OVdZ+ng13+Z/qdZE/MITTCjeC0=";
 
   ldflags = [
     "-s"
diff --git a/pkgs/development/tools/micronaut/default.nix b/pkgs/development/tools/micronaut/default.nix
index 0b1711283dbd..1adea9552be0 100644
--- a/pkgs/development/tools/micronaut/default.nix
+++ b/pkgs/development/tools/micronaut/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   pname = "micronaut";
-  version = "4.4.1";
+  version = "4.4.2";
 
   src = fetchzip {
     url = "https://github.com/micronaut-projects/micronaut-starter/releases/download/v${version}/micronaut-cli-${version}.zip";
-    sha256 = "sha256-tXXGjpf6nwx9yW9vBSi7iKlDJE+IeItcl+JE4drA7OM=";
+    sha256 = "sha256-5Loc9H5wqafoZYjPGCJ4kTNulS1/Njgn35T74zHr9s4=";
   };
 
   nativeBuildInputs = [ makeWrapper installShellFiles ];
diff --git a/pkgs/development/tools/misc/astyle/default.nix b/pkgs/development/tools/misc/astyle/default.nix
index f7c7a1f09cdb..a23e7936985c 100644
--- a/pkgs/development/tools/misc/astyle/default.nix
+++ b/pkgs/development/tools/misc/astyle/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   pname = "astyle";
-  version = "3.4.14";
+  version = "3.4.15";
 
   src = fetchurl {
     url = "mirror://sourceforge/${pname}/${pname}-${version}.tar.bz2";
-    hash = "sha256-YGqD85FGczGF9nYwWdKSQzxA85Prb1IELhY/jfThaj4=";
+    hash = "sha256-BQTHM7v+lmiLZsEHtt8/oFJj3vq7I4WOQsRLpVRYbms=";
   };
 
   nativeBuildInputs = [ cmake ];
diff --git a/pkgs/development/tools/misc/awf/default.nix b/pkgs/development/tools/misc/awf/default.nix
index b73f1dc04502..79d630d5688b 100644
--- a/pkgs/development/tools/misc/awf/default.nix
+++ b/pkgs/development/tools/misc/awf/default.nix
@@ -1,5 +1,5 @@
 { lib, stdenv, fetchFromGitHub, autoreconfHook, gtk2, gtk3, pkg-config
-, wrapGAppsHook }:
+, wrapGAppsHook3 }:
 
 stdenv.mkDerivation rec {
   pname = "awf";
@@ -12,7 +12,7 @@ stdenv.mkDerivation rec {
     sha256 = "0jl2kxwpvf2n8974zzyp69mqhsbjnjcqm39y0jvijvjb1iy8iman";
   };
 
-  nativeBuildInputs = [ autoreconfHook pkg-config wrapGAppsHook ];
+  nativeBuildInputs = [ autoreconfHook pkg-config wrapGAppsHook3 ];
 
   buildInputs = [ gtk2 gtk3 ];
 
diff --git a/pkgs/development/tools/misc/blackfire/default.nix b/pkgs/development/tools/misc/blackfire/default.nix
index 51056d7301b2..f8b7125f7fca 100644
--- a/pkgs/development/tools/misc/blackfire/default.nix
+++ b/pkgs/development/tools/misc/blackfire/default.nix
@@ -10,7 +10,7 @@
 
 stdenv.mkDerivation rec {
   pname = "blackfire";
-  version = "2.26.4";
+  version = "2.28.1";
 
   src = passthru.sources.${stdenv.hostPlatform.system} or (throw "Unsupported platform for blackfire: ${stdenv.hostPlatform.system}");
 
@@ -57,23 +57,23 @@ stdenv.mkDerivation rec {
     sources = {
       "x86_64-linux" = fetchurl {
         url = "https://packages.blackfire.io/debian/pool/any/main/b/blackfire/blackfire_${version}_amd64.deb";
-        sha256 = "czFzZ+Z2CYw0ETzsmimAMNKrpiIVufyguOYuZJu2L8s=";
+        sha256 = "n7bNRws6IwTYbWsUAHNtV1hfW+YDygJn/U1U5MaUuew=";
       };
       "i686-linux" = fetchurl {
         url = "https://packages.blackfire.io/debian/pool/any/main/b/blackfire/blackfire_${version}_i386.deb";
-        sha256 = "I/7ZESjJjlRSvV41ldEtdymp7fwe0tCCFeS/oouOUi8=";
+        sha256 = "zH6mEeW0EjYPVSAJ4cL3YpaQPd+h0zxO7qfN43qb67Q=";
       };
       "aarch64-linux" = fetchurl {
         url = "https://packages.blackfire.io/debian/pool/any/main/b/blackfire/blackfire_${version}_arm64.deb";
-        sha256 = "lJn9iRAPkLCpv+Vbk72a58DaNgNOTfyFiycyHosBiq4=";
+        sha256 = "ncX9aHxZJhth3Md591PBhMO3uhsiI03L7M60hOm4uko=";
       };
       "aarch64-darwin" = fetchurl {
         url = "https://packages.blackfire.io/blackfire/${version}/blackfire-darwin_arm64.pkg.tar.gz";
-        sha256 = "puvM/QB8nJgJaw1eDMJTb9aDrIdrqO3WVdDYWeayTAs=";
+        sha256 = "OcZ0tyNerGXZKwrJRN4a+1Z51CeHDokYvfA3ve0bNKA=";
       };
       "x86_64-darwin" = fetchurl {
         url = "https://packages.blackfire.io/blackfire/${version}/blackfire-darwin_amd64.pkg.tar.gz";
-        sha256 = "srv99KyjxzEJNRA4hjoobSqzSab+Ox7g80tTun3G9KY=";
+        sha256 = "ypCC+u6rpGDYkXtw4Q6bBBwLfcmRk4GmmcXHKvmXqFI=";
       };
     };
 
diff --git a/pkgs/development/tools/misc/blackfire/php-probe.nix b/pkgs/development/tools/misc/blackfire/php-probe.nix
index 748a153624ab..df6e223aeb19 100644
--- a/pkgs/development/tools/misc/blackfire/php-probe.nix
+++ b/pkgs/development/tools/misc/blackfire/php-probe.nix
@@ -14,47 +14,47 @@ assert lib.assertMsg (!php.ztsSupport) "blackfire only supports non zts versions
 let
   phpMajor = lib.versions.majorMinor php.version;
 
-  version = "1.92.13";
+  version = "1.92.15";
 
   hashes = {
     "x86_64-linux" = {
       system = "amd64";
       hash = {
-        "8.1" = "sha256-QpvnhIvjhm5tqOP72T2yVxV92M3ty/iDICaWsOVFpNg=";
-        "8.2" = "sha256-NhNbhOGRlhGvTcG4uZwTASWqLp7PQnfDW48GzROxkII=";
-        "8.3" = "sha256-Gn3M0ANj05QoAZB6W3HWj4zNCDya7lqa+OTv57fnEQ8=";
+        "8.1" = "sha256-CTh3HdTZS5tjnSN5JUX55aioFSqs3FQfy7S5ofXlyBs=";
+        "8.2" = "sha256-q/Zwpvm+pT6JdkC2nX7fEf+eDmWmtLniL+5Cys8kdNI=";
+        "8.3" = "sha256-8MGY3Spa4cWqUL4S/qHKPJql5DRhtvmYEE3oBLNNm3M=";
       };
     };
     "i686-linux" = {
       system = "i386";
       hash = {
-        "8.1" = "sha256-zhCjSPTO/RGcc+qvkYlEeV+9ulIXpA0dCMRlSWwj8ys=";
-        "8.2" = "sha256-J+zdMC4q+MHmwADivqdEfSq8h/KeD5TAanCJKZLuEog=";
-        "8.3" = "sha256-GGNje7mg1uaLN3zrDXG/igLW9+nhxvPp7nIYW6aJBa4=";
+        "8.1" = "sha256-mOiBQLXiPYMgHpcPTguEm0hffm+DZnv6MCbFbmRoEdE=";
+        "8.2" = "sha256-3xPG33DSxnQ9a9rbTov5ILi3hPWsruNZJS1NXttxfxQ=";
+        "8.3" = "sha256-4Nk+8ZIZ83/oeygDdhHI0mRRCvOEMmdWJoteDVkYuT4=";
       };
     };
     "aarch64-linux" = {
       system = "arm64";
       hash = {
-        "8.1" = "sha256-C2ie8tp3F0sr+edYbUBVw0b1YJtnjyneC8/+x6LWENg=";
-        "8.2" = "sha256-Ku1pulSErVMvBtiNvLgRw2NpE/bEOkjZ5TY7F/PYJto=";
-        "8.3" = "sha256-/U/qf7Aqxssvcnc06+K5JeG96Ab09zRvUYcwhSAW4b8=";
+        "8.1" = "sha256-5XUk2v65ceHqnfatLq9E1+J5QRgCDpKxR4ZFpCAsfdI=";
+        "8.2" = "sha256-Lr8wBAXYHXwPokwQMni5tsNncor9ZRjNwtL/5hodUq8=";
+        "8.3" = "sha256-KZLPFaa5NPksfhA99S8qV3FngJTDonhG+MMPkCwxUys=";
       };
     };
     "aarch64-darwin" = {
       system = "arm64";
       hash = {
-        "8.1" = "sha256-OdqG7G3TzuCVzBA0Xf+It05S6XaVlEd+ugM+gk70OiE=";
-        "8.2" = "sha256-/nCBQzimhcCrzNuwSVybHBmZZJImm75jKGqh2oXyyZA=";
-        "8.3" = "sha256-C2SxPYYXewU6PekQ3m1MBiPMPS5tE53gda2Qo7rZ1YQ=";
+        "8.1" = "sha256-G5wrH9M+b69BLKRI4n9FydGDV/q7Ch7u+Zvol2+ptwI=";
+        "8.2" = "sha256-zgcYT2oWCa2kc4wLx94nxRjg0sebjdGxuPJNbiBZ/Is=";
+        "8.3" = "sha256-l1zNH47lNpHj7qRgqoxJisn7dU2VzSGFt0v8/9VpYiI=";
       };
     };
     "x86_64-darwin" = {
       system = "amd64";
       hash = {
-        "8.1" = "sha256-W3reCFcN/bM3hrUeekJLG5qntH/Wvfb+JVly5+g2YEY=";
-        "8.2" = "sha256-d2YSmyV0mq7KBqoD4Bwdh3izh6hcKTBf6kP+q3QVnfI=";
-        "8.3" = "sha256-JiCw8Lew2laxOyb+2aSDqlZz2MafFwYwV46dqceEcBk=";
+        "8.1" = "sha256-mmmzmR4yzwmXAl6YoSOKSivF7uixGZYaFQVIqWd0Ud4=";
+        "8.2" = "sha256-1jnw3BADm38C1Hi4lBs5B+kJl1karTljVHxHGEfZmtw=";
+        "8.3" = "sha256-7a2JyeLP4HwyaYsb7zAio2HrUPbBVpVEOUjWKCilkFY=";
       };
     };
   };
diff --git a/pkgs/development/tools/misc/c2ffi/default.nix b/pkgs/development/tools/misc/c2ffi/default.nix
index a66ae2aa35ea..28364b8beeed 100644
--- a/pkgs/development/tools/misc/c2ffi/default.nix
+++ b/pkgs/development/tools/misc/c2ffi/default.nix
@@ -24,6 +24,9 @@ llvmPackages.stdenv.mkDerivation {
   passthru.updateScript = unstableGitUpdater {
     url = "https://github.com/rpav/c2ffi.git";
     branch = c2ffiBranch;
+    # Tags only exist for older LLVM versions, so they would result in nonsense names
+    # like: c2ffi-llvm-16.0.0-11.0.0.0-unstable-YYYY-MM-DD
+    hardcodeZeroVersion = true;
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/tools/misc/cppi/default.nix b/pkgs/development/tools/misc/cppi/default.nix
index d8144dd5e9b0..ef783b748cbc 100644
--- a/pkgs/development/tools/misc/cppi/default.nix
+++ b/pkgs/development/tools/misc/cppi/default.nix
@@ -27,7 +27,7 @@ stdenv.mkDerivation rec {
 
     license = lib.licenses.gpl3Plus;
 
-    maintainers = [ ];
+    maintainers = with lib.maintainers; [ sigmanificient ];
     platforms = lib.platforms.all;
   };
 }
diff --git a/pkgs/development/tools/misc/cwebbin/default.nix b/pkgs/development/tools/misc/cwebbin/default.nix
index 055a24f3fe0a..a5ed3e222aaa 100644
--- a/pkgs/development/tools/misc/cwebbin/default.nix
+++ b/pkgs/development/tools/misc/cwebbin/default.nix
@@ -1,9 +1,17 @@
 { lib, stdenv, fetchFromGitHub, fetchurl, tie }:
 
+let
+  cweb = fetchurl {
+    url = "https://www.ctan.org/tex-archive/web/c_cpp/cweb/cweb-3.64ah.tgz";
+    sha256 = "1hdzxfzaibnjxjzgp6d2zay8nsarnfy9hfq55hz1bxzzl23n35aj";
+  };
+in
 stdenv.mkDerivation rec {
   pname = "cwebbin";
   version = "22p";
 
+  __structuredAttrs = true;
+
   src = fetchFromGitHub {
     owner = "ascherer";
     repo = "cwebbin";
@@ -11,10 +19,9 @@ stdenv.mkDerivation rec {
     sha256 = "0zf93016hm9i74i2v384rwzcw16y3hg5vc2mibzkx1rzvqa50yfr";
   };
 
-  cweb = fetchurl {
-    url = "https://www.ctan.org/tex-archive/web/c_cpp/cweb/cweb-3.64ah.tgz";
-    sha256 = "1hdzxfzaibnjxjzgp6d2zay8nsarnfy9hfq55hz1bxzzl23n35aj";
-  };
+  prePatch = ''
+    tar xf ${cweb}
+  '';
 
   # Remove references to __DATE__ and __TIME__
   postPatch = ''
@@ -26,6 +33,8 @@ stdenv.mkDerivation rec {
 
   nativeBuildInputs = [ tie ];
 
+  makefile = "Makefile.unix";
+
   makeFlags = [
     "MACROSDIR=$(out)/share/texmf/tex/generic/cweb"
     "CWEBINPUTS=$(out)/lib/cweb"
@@ -35,18 +44,17 @@ stdenv.mkDerivation rec {
     "CP=cp"
     "RM=rm"
     "PDFTEX=echo"
-    "CC=${stdenv.cc.targetPrefix}c++"
+    # requires __structuredAttrs = true
+    "CC=$(CXX) -std=c++14"
   ];
 
-  buildPhase = ''
-    zcat ${cweb} | tar -xvpf -
-    make -f Makefile.unix boot $makeFlags
-    make -f Makefile.unix cautiously $makeFlags
-  '';
+  buildFlags = [
+    "boot"
+    "cautiously"
+  ];
 
-  installPhase = ''
+  preInstall = ''
     mkdir -p $out/share/man/man1 $out/share/texmf/tex/generic $out/share/emacs $out/lib
-    make -f Makefile.unix install $makeFlags
   '';
 
   meta = with lib; {
diff --git a/pkgs/development/tools/misc/d-spy/default.nix b/pkgs/development/tools/misc/d-spy/default.nix
index e48a51f4870f..c2812c2e1209 100644
--- a/pkgs/development/tools/misc/d-spy/default.nix
+++ b/pkgs/development/tools/misc/d-spy/default.nix
@@ -15,13 +15,13 @@
 
 stdenv.mkDerivation rec {
   pname = "d-spy";
-  version = "1.8.0";
+  version = "1.10.0";
 
   outputs = [ "out" "lib" "dev" ];
 
   src = fetchurl {
     url = "mirror://gnome/sources/d-spy/${lib.versions.majorMinor version}/d-spy-${version}.tar.xz";
-    sha256 = "+J15XQaG2C2h3OsjYUj3zlTVynjwuY4PEzayY6WvzqE=";
+    hash = "sha256-VVgSucZUBVHaWZ7oFHiArTkVuTyH4XV7bRz9kKDgXlM=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/tools/misc/dart-sass/default.nix b/pkgs/development/tools/misc/dart-sass/default.nix
index 6ca7e8f43987..6262260326ef 100644
--- a/pkgs/development/tools/misc/dart-sass/default.nix
+++ b/pkgs/development/tools/misc/dart-sass/default.nix
@@ -10,24 +10,24 @@
 }:
 
 let
-  embedded-protocol-version = "2.6.0";
+  embedded-protocol-version = "2.7.0";
 
   embedded-protocol = fetchFromGitHub {
     owner = "sass";
     repo = "sass";
     rev = "refs/tags/embedded-protocol-${embedded-protocol-version}";
-    hash = "sha256-pNQnbOKVxRW9AiPteuO2Gq6ejV5Yd9GTuxZSyC/0SlE=";
+    hash = "sha256-BQCQ4GE85teRkCY2iuvqFT4vyf6RzZ1ztoRhBCAwA4w=";
   };
 in
 buildDartApplication rec {
   pname = "dart-sass";
-  version = "1.75.0";
+  version = "1.77.0";
 
   src = fetchFromGitHub {
     owner = "sass";
     repo = pname;
     rev = version;
-    hash = "sha256-nj1CCg/eID5dmW/omIGQYNP/uOKNvMzgo3RLBGLULKI=";
+    hash = "sha256-x42T8nDmwktfsd89PS8jrSIw2Dc1hKwrZxSn7h7FqAs=";
   };
 
   pubspecLock = lib.importJSON ./pubspec.lock.json;
diff --git a/pkgs/development/tools/misc/dart-sass/pubspec.lock.json b/pkgs/development/tools/misc/dart-sass/pubspec.lock.json
index dc96a67bd282..a3f10f435ae1 100644
--- a/pkgs/development/tools/misc/dart-sass/pubspec.lock.json
+++ b/pkgs/development/tools/misc/dart-sass/pubspec.lock.json
@@ -24,11 +24,11 @@
       "dependency": "direct dev",
       "description": {
         "name": "archive",
-        "sha256": "22600aa1e926be775fa5fe7e6894e7fb3df9efda8891c73f70fb3262399a432d",
+        "sha256": "ecf4273855368121b1caed0d10d4513c7241dfc813f7d3c8933b36622ae9b265",
         "url": "https://pub.dev"
       },
       "source": "hosted",
-      "version": "3.4.10"
+      "version": "3.5.1"
     },
     "args": {
       "dependency": "direct main",
@@ -134,11 +134,11 @@
       "dependency": "transitive",
       "description": {
         "name": "coverage",
-        "sha256": "8acabb8306b57a409bf4c83522065672ee13179297a6bb0cb9ead73948df7c76",
+        "sha256": "3945034e86ea203af7a056d98e98e42a5518fff200d6e8e6647e1886b07e936e",
         "url": "https://pub.dev"
       },
       "source": "hosted",
-      "version": "1.7.2"
+      "version": "1.8.0"
     },
     "crypto": {
       "dependency": "direct dev",
@@ -314,11 +314,11 @@
       "dependency": "transitive",
       "description": {
         "name": "json_annotation",
-        "sha256": "b10a7b2ff83d83c777edba3c6a0f97045ddadd56c944e1a23a3fdf43a1bf4467",
+        "sha256": "1ce844379ca14835a50d2f019a3099f419082cfdd231cd86a142af94dd5c6bb1",
         "url": "https://pub.dev"
       },
       "source": "hosted",
-      "version": "4.8.1"
+      "version": "4.9.0"
     },
     "lints": {
       "dependency": "direct dev",
@@ -364,11 +364,11 @@
       "dependency": "direct main",
       "description": {
         "name": "meta",
-        "sha256": "25dfcaf170a0190f47ca6355bdd4552cb8924b430512ff0cafb8db9bd41fe33b",
+        "sha256": "bdb68674043280c3428e9ec998512fb681678676b3c54e773629ffe74419f8c7",
         "url": "https://pub.dev"
       },
       "source": "hosted",
-      "version": "1.14.0"
+      "version": "1.15.0"
     },
     "mime": {
       "dependency": "transitive",
@@ -384,11 +384,11 @@
       "dependency": "transitive",
       "description": {
         "name": "native_stack_traces",
-        "sha256": "c797830b9910d13b0f4e70ddef15cde034214fe3bdb8092c4ea5ffad2f74013f",
+        "sha256": "64d2f4bcf3b69326fb9bc91b4dd3a06f94bb5bbc3a65e25ae6467ace0b34bfd3",
         "url": "https://pub.dev"
       },
       "source": "hosted",
-      "version": "0.5.6"
+      "version": "0.5.7"
     },
     "native_synchronization": {
       "dependency": "direct main",
@@ -460,16 +460,6 @@
       "source": "hosted",
       "version": "6.0.2"
     },
-    "pointycastle": {
-      "dependency": "transitive",
-      "description": {
-        "name": "pointycastle",
-        "sha256": "70fe966348fe08c34bf929582f1d8247d9d9408130723206472b4687227e4333",
-        "url": "https://pub.dev"
-      },
-      "source": "hosted",
-      "version": "3.8.0"
-    },
     "pool": {
       "dependency": "direct main",
       "description": {
@@ -594,11 +584,11 @@
       "dependency": "transitive",
       "description": {
         "name": "shelf_web_socket",
-        "sha256": "9ca081be41c60190ebcb4766b2486a7d50261db7bd0f5d9615f2d653637a84c1",
+        "sha256": "073c147238594ecd0d193f3456a5fe91c4b0abbcc68bf5cd95b36c4e194ac611",
         "url": "https://pub.dev"
       },
       "source": "hosted",
-      "version": "1.0.4"
+      "version": "2.0.0"
     },
     "source_map_stack_trace": {
       "dependency": "transitive",
@@ -684,11 +674,11 @@
       "dependency": "direct dev",
       "description": {
         "name": "test",
-        "sha256": "d87214d19fb311997d8128ec501a980f77cb240ac4e7e219accf452813ff473c",
+        "sha256": "d11b55850c68c1f6c0cf00eabded4e66c4043feaf6c0d7ce4a36785137df6331",
         "url": "https://pub.dev"
       },
       "source": "hosted",
-      "version": "1.25.3"
+      "version": "1.25.5"
     },
     "test_api": {
       "dependency": "transitive",
@@ -704,11 +694,11 @@
       "dependency": "transitive",
       "description": {
         "name": "test_core",
-        "sha256": "2236f70be1e5ab405c675e88c36935a87dad9e05a506b57dd5c0f617f5aebcb2",
+        "sha256": "4d070a6bc36c1c4e89f20d353bfd71dc30cdf2bd0e14349090af360a029ab292",
         "url": "https://pub.dev"
       },
       "source": "hosted",
-      "version": "0.6.1"
+      "version": "0.6.2"
     },
     "test_descriptor": {
       "dependency": "direct dev",
@@ -764,11 +754,11 @@
       "dependency": "transitive",
       "description": {
         "name": "vm_service",
-        "sha256": "a75f83f14ad81d5fe4b3319710b90dec37da0e22612326b696c9e1b8f34bbf48",
+        "sha256": "7475cb4dd713d57b6f7464c0e13f06da0d535d8b2067e188962a59bac2cf280b",
         "url": "https://pub.dev"
       },
       "source": "hosted",
-      "version": "14.2.0"
+      "version": "14.2.2"
     },
     "watcher": {
       "dependency": "direct main",
@@ -790,15 +780,25 @@
       "source": "hosted",
       "version": "0.5.1"
     },
+    "web_socket": {
+      "dependency": "transitive",
+      "description": {
+        "name": "web_socket",
+        "sha256": "bfe704c186c6e32a46f6607f94d079cd0b747b9a489fceeecc93cd3adb98edd5",
+        "url": "https://pub.dev"
+      },
+      "source": "hosted",
+      "version": "0.1.3"
+    },
     "web_socket_channel": {
       "dependency": "transitive",
       "description": {
         "name": "web_socket_channel",
-        "sha256": "58c6666b342a38816b2e7e50ed0f1e261959630becd4c879c4f26bfa14aa5a42",
+        "sha256": "a2d56211ee4d35d9b344d9d4ce60f362e4f5d1aafb988302906bd732bc731276",
         "url": "https://pub.dev"
       },
       "source": "hosted",
-      "version": "2.4.5"
+      "version": "3.0.0"
     },
     "webkit_inspection_protocol": {
       "dependency": "transitive",
diff --git a/pkgs/development/tools/misc/gpuvis/default.nix b/pkgs/development/tools/misc/gpuvis/default.nix
index d553f29db06e..ad2d36e25021 100644
--- a/pkgs/development/tools/misc/gpuvis/default.nix
+++ b/pkgs/development/tools/misc/gpuvis/default.nix
@@ -7,7 +7,7 @@
 , pkg-config
 , SDL2
 , stdenv
-, wrapGAppsHook
+, wrapGAppsHook3
 }:
 
 stdenv.mkDerivation rec {
@@ -27,7 +27,7 @@ stdenv.mkDerivation rec {
       --replace "libgtk-3.so" "${lib.getLib gtk3}/lib/libgtk-3.so"
   '';
 
-  nativeBuildInputs = [ pkg-config meson ninja wrapGAppsHook ];
+  nativeBuildInputs = [ pkg-config meson ninja wrapGAppsHook3 ];
 
   buildInputs = [ SDL2 gtk3 freetype ];
 
diff --git a/pkgs/development/tools/misc/lttng-ust/default.nix b/pkgs/development/tools/misc/lttng-ust/default.nix
index b1fb9c83e8d0..7a0a918db74d 100644
--- a/pkgs/development/tools/misc/lttng-ust/default.nix
+++ b/pkgs/development/tools/misc/lttng-ust/default.nix
@@ -1,4 +1,4 @@
 import ./generic.nix {
-  version = "2.13.7";
-  sha256 = "sha256-X7TxfDB8jBt5xoVh6JvpVi0H50Jb9A5yjE1mdVNCpes=";
+  version = "2.13.8";
+  sha256 = "sha256-1O+Y2rmjetT1JMyv39UK9PJmA5tSjdWvq8545JAk2Tc=";
 }
diff --git a/pkgs/development/tools/misc/luarocks/default.nix b/pkgs/development/tools/misc/luarocks/default.nix
index 49d3eb280a07..ce832140703a 100644
--- a/pkgs/development/tools/misc/luarocks/default.nix
+++ b/pkgs/development/tools/misc/luarocks/default.nix
@@ -1,14 +1,11 @@
 { lib
 , stdenv
 , fetchFromGitHub
-, fetchpatch
 , curl
 , makeWrapper
 , which
 , unzip
 , lua
-, file
-, nix-prefetch-git
   # for 'luarocks pack'
 , zip
 , nix-update-script
@@ -81,8 +78,7 @@ stdenv.mkDerivation (finalAttrs: {
               --suffix LUA_PATH ";" "$(echo "$out"/share/lua/*/)?/init.lua" \
               --suffix LUA_CPATH ";" "$(echo "$out"/lib/lua/*/)?.so" \
               --suffix LUA_CPATH ";" "$(echo "$out"/share/lua/*/)?/init.lua" \
-              --suffix PATH : ${lib.makeBinPath ([ unzip ] ++
-                lib.optionals (finalAttrs.pname == "luarocks-nix") [ file nix-prefetch-git ])}
+              --suffix PATH : ${lib.makeBinPath finalAttrs.propagatedBuildInputs}
         }
     done
   '';
@@ -112,6 +108,7 @@ stdenv.mkDerivation (finalAttrs: {
     description = "A package manager for Lua";
     license = licenses.mit;
     maintainers = with maintainers; [ raskin teto ];
+    mainProgram = "luarocks";
     platforms = platforms.linux ++ platforms.darwin;
     downloadPage = "http://luarocks.org/releases/";
   };
diff --git a/pkgs/development/tools/misc/luarocks/luarocks-nix.nix b/pkgs/development/tools/misc/luarocks/luarocks-nix.nix
index 20acab5a8584..d64e3c91ae7e 100644
--- a/pkgs/development/tools/misc/luarocks/luarocks-nix.nix
+++ b/pkgs/development/tools/misc/luarocks/luarocks-nix.nix
@@ -1,23 +1,38 @@
-{ luarocks, fetchFromGitHub, unstableGitUpdater }:
+{ luarocks
+, fetchFromGitHub
+, unstableGitUpdater
+, nurl
+, file
+}:
 
 luarocks.overrideAttrs (old: {
   pname = "luarocks-nix";
-  version = "unstable-2023-10-19";
+  version = "0-unstable-2024-04-29";
 
   src = fetchFromGitHub {
     owner = "nix-community";
     repo = "luarocks-nix";
-    rev = "4240b25b95d7165cde66fc2acaf5a0f9ad40fd0c";
-    sha256 = "sha256-dqFFYehBgK0RqH0/1GtZXq7XLGCcc3Kfadq8ICYNCWk=";
+    rev = "a473a8f479711682f5b97a72362736d96efd463b";
+    hash = "sha256-hsjv+jlLsoIDM4gB/0mFeoVu1YZ1I9ELDALLTEnlCF0=";
   };
 
+  propagatedBuildInputs = old.propagatedBuildInputs ++ [
+    file
+    nurl
+  ];
+
   patches = [ ];
 
   passthru = {
-    updateScript = unstableGitUpdater { };
+    updateScript = unstableGitUpdater {
+      # tags incompletely inherited from regular luarocks
+      hardcodeZeroVersion = true;
+    };
   };
 
-  meta = old.meta // {
+  # old.meta // { /* ... */ } doesn't update meta.position, which breaks the updateScript
+  meta = {
+    inherit (old.meta) description license maintainers platforms;
     mainProgram = "luarocks";
   };
 })
diff --git a/pkgs/development/tools/misc/n98-magerun2/default.nix b/pkgs/development/tools/misc/n98-magerun2/default.nix
index 9cd87a29ec56..e0947e8f6fa6 100644
--- a/pkgs/development/tools/misc/n98-magerun2/default.nix
+++ b/pkgs/development/tools/misc/n98-magerun2/default.nix
@@ -5,16 +5,16 @@
 
 php.buildComposerProject (finalAttrs: {
   pname = "n98-magerun2";
-  version = "7.3.1";
+  version = "7.4.0";
 
   src = fetchFromGitHub {
     owner = "netz98";
     repo = "n98-magerun2";
     rev = finalAttrs.version;
-    hash = "sha256-a1T4SmeOEKRW/xS2VBPLZt6r9JdtaJn8YVvfRnzGdb4=";
+    hash = "sha256-OPvyZ0r7Zt4PC+rmRtBm9EkbaE4PeovnUHrhzXUqT8E=";
   };
 
-  vendorHash = "sha256-1j0/spum4C9j/HNVlHwUehAFYJOz7YvMVlC6dtbNYK0=";
+  vendorHash = "sha256-HSkcYbDQPK1ByG8Euq9YqzK0jqjKrWO+0R4ungFDOIY=";
 
   meta = {
     changelog = "https://magerun.net/category/magerun/";
diff --git a/pkgs/development/tools/misc/nix-bisect/default.nix b/pkgs/development/tools/misc/nix-bisect/default.nix
index a4c3179e8e58..7c9f474ab531 100644
--- a/pkgs/development/tools/misc/nix-bisect/default.nix
+++ b/pkgs/development/tools/misc/nix-bisect/default.nix
@@ -6,7 +6,7 @@
 
 let
   pname = "nix-bisect";
-  version = "0.4.1";
+  version = "0.4.1-unstable-2024-04-19";
 in
 python3.pkgs.buildPythonApplication {
   inherit pname version;
@@ -15,23 +15,10 @@ python3.pkgs.buildPythonApplication {
   src = fetchFromGitHub {
     owner = "timokau";
     repo = pname;
-    rev = "v${version}";
-    hash = "sha256-01vj35mMakqKi5zbMIPQ+R8xdkOWbzpnigd3/SU+svw=";
+    rev = "4f26082fec0817acbfa8cc6ca4c25caaf77ddcd2";
+    hash = "sha256-zyeE1jYo/9NEG8fB4gQBAR01siP4tyLvjjHN1yUS4Ug=";
   };
 
-  patches = [
-    (fetchpatch {
-      # Fixes compatibility with recent nix versions
-      url = "https://github.com/timokau/nix-bisect/commit/01eefe174b740cb90e48b06d67d5582d51786b96.patch";
-      hash = "sha256-Gls/NtHH7LujdEgLbcIRZ12KsJDrasXIMcHeeBVns4A=";
-    })
-    (fetchpatch {
-      # Fixes TypeError crashes associated with drvs_failed inconsistency
-      url = "https://github.com/timokau/nix-bisect/commit/9f3a17783046baae64c16f9e2be917c2603977fc.patch";
-      hash = "sha256-U9NUtgwslcgIf/wvH/WE7t0HGs2OP3wvYDKrb5j+lp0=";
-    })
-  ];
-
   propagatedBuildInputs = with python3.pkgs; [
     appdirs
     numpy
diff --git a/pkgs/development/tools/misc/patchelf/unstable.nix b/pkgs/development/tools/misc/patchelf/unstable.nix
index c2d9b2c0bede..212f0b8cebc4 100644
--- a/pkgs/development/tools/misc/patchelf/unstable.nix
+++ b/pkgs/development/tools/misc/patchelf/unstable.nix
@@ -2,7 +2,7 @@
 
 stdenv.mkDerivation rec {
   pname = "patchelf";
-  version = "unstable-2024-01-15";
+  version = "0.18.0-unstable-2024-01-15";
 
   src = fetchFromGitHub {
     owner = "NixOS";
diff --git a/pkgs/development/tools/misc/src-cli/default.nix b/pkgs/development/tools/misc/src-cli/default.nix
index 2d4ed5599d77..9d7978211ce0 100644
--- a/pkgs/development/tools/misc/src-cli/default.nix
+++ b/pkgs/development/tools/misc/src-cli/default.nix
@@ -10,16 +10,16 @@
 
 buildGoModule rec {
   pname = "src-cli";
-  version = "5.3.0";
+  version = "5.4.0";
 
   src = fetchFromGitHub {
     owner = "sourcegraph";
     repo = "src-cli";
     rev = version;
-    hash = "sha256-eN+MByapusaznL3BR1WOWJ3tMtxJ4yrxrcNCHOgoL0k=";
+    hash = "sha256-EFt/CnQcwtcm8Yr8e03+cSP5hgWwamtA2dILjD/QcMM=";
   };
 
-  vendorHash = "sha256-+7/bY0qrRRZ0GNkIcuqOi4MA8wE75/HllRI6e/IQgy4=";
+  vendorHash = "sha256-QR/Gcyx+QYK9cmCfotYOTcmcPOC+2ZA2+OQOUmNNmQE=";
 
   subPackages = [
     "cmd/src"
diff --git a/pkgs/development/tools/misc/stlink/default.nix b/pkgs/development/tools/misc/stlink/default.nix
index 2255fbfd8dcb..16785e4d4b89 100644
--- a/pkgs/development/tools/misc/stlink/default.nix
+++ b/pkgs/development/tools/misc/stlink/default.nix
@@ -5,7 +5,7 @@
 , libusb1
 , gtk3
 , pkg-config
-, wrapGAppsHook
+, wrapGAppsHook3
 , withGUI ? false
 }:
 
@@ -36,7 +36,7 @@ in stdenv.mkDerivation rec {
     cmake
   ] ++ lib.optionals withGUI [
     pkg-config
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   cmakeFlags = [
diff --git a/pkgs/development/tools/misc/strace/default.nix b/pkgs/development/tools/misc/strace/default.nix
index 3cae7fc017d4..e1cd72ea683a 100644
--- a/pkgs/development/tools/misc/strace/default.nix
+++ b/pkgs/development/tools/misc/strace/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   pname = "strace";
-  version = "6.8";
+  version = "6.9";
 
   src = fetchurl {
     url = "https://strace.io/files/${version}/${pname}-${version}.tar.xz";
-    sha256 = "sha256-umlQqWgkzfk6WE+gTwpzOJbSprxfCtn/5QXZtB6XAUk=";
+    sha256 = "sha256-2hiemQqC48o6WkYxAS9+z9SJ2rRZhU2C2Mr2qGXBNWo=";
   };
 
   depsBuildBuild = [ buildPackages.stdenv.cc ];
diff --git a/pkgs/development/tools/misc/sysbench/default.nix b/pkgs/development/tools/misc/sysbench/default.nix
index 6bba1ebfd611..fa39c310a269 100644
--- a/pkgs/development/tools/misc/sysbench/default.nix
+++ b/pkgs/development/tools/misc/sysbench/default.nix
@@ -5,7 +5,6 @@
 , pkg-config
 , libmysqlclient
 , libaio
-, libck
 , luajit
 # For testing:
 , testers
@@ -17,7 +16,7 @@ stdenv.mkDerivation rec {
   version = "1.0.20";
 
   nativeBuildInputs = [ autoreconfHook pkg-config ];
-  buildInputs = [ libmysqlclient luajit libck ] ++ lib.optionals stdenv.isLinux [ libaio ];
+  buildInputs = [ libmysqlclient luajit ] ++ lib.optionals stdenv.isLinux [ libaio ];
   depsBuildBuild = [ pkg-config ];
 
   src = fetchFromGitHub {
@@ -33,11 +32,30 @@ stdenv.mkDerivation rec {
     # The bundled version does not build on aarch64-darwin:
     # https://github.com/akopytov/sysbench/issues/416
     "--with-system-luajit"
-    "--with-system-ck"
     "--with-mysql-includes=${lib.getDev libmysqlclient}/include/mysql"
     "--with-mysql-libs=${libmysqlclient}/lib/mysql"
   ];
 
+  # We cannot use the regular nixpkgs ck here, since it has very
+  # different performance characteristics than the vendored one.
+  # On the downside the vendored libck version require more fixes for cross-compilation.
+  # Sysbench related on statically linked vendored libck.
+  postPatch = ''
+    substituteInPlace \
+      third_party/concurrency_kit/ck/configure \
+        --replace-fail \
+          'COMPILER=`./.1 2> /dev/null`' \
+          "COMPILER=${if stdenv.cc.isGNU then "gcc" else if stdenv.cc.isClang then "clang" else throw "Unsupported compiler"}" \
+        --replace-fail \
+          'PLATFORM=`uname -m 2> /dev/null`' \
+          "PLATFORM=${stdenv.hostPlatform.parsed.cpu.name}"
+    substituteInPlace \
+      third_party/concurrency_kit/ck/src/Makefile.in \
+        --replace-fail \
+          "ar rcs" \
+          "${stdenv.cc.targetPrefix}ar rcs"
+  '';
+
   passthru.tests = {
     versionTest = testers.testVersion {
       package = sysbench;
diff --git a/pkgs/development/tools/misc/terramate/default.nix b/pkgs/development/tools/misc/terramate/default.nix
index b6efe2732dca..880183c8bdf6 100644
--- a/pkgs/development/tools/misc/terramate/default.nix
+++ b/pkgs/development/tools/misc/terramate/default.nix
@@ -6,22 +6,25 @@
 
 buildGoModule rec {
   pname = "terramate";
-  version = "0.4.2";
+  version = "0.8.4";
 
   src = fetchFromGitHub {
     owner = "terramate-io";
     repo = "terramate";
     rev = "v${version}";
-    hash = "sha256-aOKUC1FtDDhdUbPUSLW6GrSwh6r29Y2ObC6y487W4Zc=";
+    hash = "sha256-jcmOS81iPzy1ul0Cj/SiJk84AUIq7mLI+CmspuPit+o=";
   };
 
-  vendorHash = "sha256-gl5xsaSkGXlh+MfieVBPHGAbYZVF3GBbIkmvVhlJvqw=";
+  vendorHash = "sha256-Na2XDPSwgwWTQrweslAtSOh2+B/ZFaPIdy8ssAFWkGs=";
 
   # required for version info
   nativeBuildInputs = [ git ];
 
   ldflags = [ "-extldflags" "-static" ];
 
+  # Disable failing E2E tests preventing the package from building
+  excludedPackages = [ "./cmd/terramate/e2etests/cloud" "./cmd/terramate/e2etests/core" ];
+
   meta = with lib; {
     description = "Adds code generation, stacks, orchestration, change detection, data sharing and more to Terraform";
     homepage = "https://github.com/terramate-io/terramate";
diff --git a/pkgs/development/tools/misc/texinfo/common.nix b/pkgs/development/tools/misc/texinfo/common.nix
index d8d63088ee7e..17bb656aac9b 100644
--- a/pkgs/development/tools/misc/texinfo/common.nix
+++ b/pkgs/development/tools/misc/texinfo/common.nix
@@ -1,7 +1,7 @@
 { version, sha256, patches ? [] }:
 
 { lib, stdenv, buildPackages, fetchurl, perl, xz, libintl, bash
-, gnulib, gawk
+, gnulib, gawk, libiconv
 
 # we are a dependency of gcc, this simplifies bootstraping
 , interactive ? false, ncurses, procps
@@ -13,11 +13,10 @@
 # files.
 
 let
+  inherit (lib) getDev getLib optional optionals optionalString;
   crossBuildTools = stdenv.hostPlatform != stdenv.buildPlatform;
 in
 
-with lib;
-
 stdenv.mkDerivation {
   pname = "texinfo${optionalString interactive "-interactive"}";
   inherit version;
@@ -83,7 +82,7 @@ stdenv.mkDerivation {
     done
   '';
 
-  meta = {
+  meta = with lib; {
     description = "The GNU documentation system";
     homepage = "https://www.gnu.org/software/texinfo/";
     changelog = "https://git.savannah.gnu.org/cgit/texinfo.git/plain/NEWS";
diff --git a/pkgs/development/tools/misc/tie/default.nix b/pkgs/development/tools/misc/tie/default.nix
index 70d64af37186..2db093cf018a 100644
--- a/pkgs/development/tools/misc/tie/default.nix
+++ b/pkgs/development/tools/misc/tie/default.nix
@@ -10,7 +10,7 @@ stdenv.mkDerivation rec {
   };
 
   buildPhase = ''
-    ${stdenv.cc.targetPrefix}cc tie.c -o tie
+    ${stdenv.cc.targetPrefix}cc -std=c89 tie.c -o tie
   '';
 
   installPhase = ''
diff --git a/pkgs/development/tools/misc/usb-modeswitch/default.nix b/pkgs/development/tools/misc/usb-modeswitch/default.nix
index 4f9dbe92d2b7..8451bead269e 100644
--- a/pkgs/development/tools/misc/usb-modeswitch/default.nix
+++ b/pkgs/development/tools/misc/usb-modeswitch/default.nix
@@ -10,7 +10,10 @@ stdenv.mkDerivation rec {
     sha256 = "18wbbxc5cfsmikba0msdvd5qlaga27b32nhrzicyd9mdddp265f2";
   };
 
-  patches = [ ./configurable-usb-modeswitch.patch ];
+  patches = [
+    ./configurable-usb-modeswitch.patch
+    ./pkg-config.patch
+  ];
 
   # Remove attempts to write to /etc and /var/lib.
   postPatch = ''
diff --git a/pkgs/development/tools/misc/usb-modeswitch/pkg-config.patch b/pkgs/development/tools/misc/usb-modeswitch/pkg-config.patch
new file mode 100644
index 000000000000..052ab7543eb9
--- /dev/null
+++ b/pkgs/development/tools/misc/usb-modeswitch/pkg-config.patch
@@ -0,0 +1,14 @@
+diff --git a/Makefile b/Makefile
+index 9aa7356..c5f2a87 100644
+--- a/Makefile
++++ b/Makefile
+@@ -2,7 +2,8 @@ PROG        = usb_modeswitch
+ VERS        = 2.6.0
+ CC          ?= gcc
+ CFLAGS      += -Wall -Wno-deprecated-declarations
+-LIBS        = `pkg-config --libs --cflags libusb-1.0`
++PKG_CONFIG  ?= pkg-config
++LIBS        = `$(PKG_CONFIG) --libs --cflags libusb-1.0`
+ RM          = /bin/rm -f
+ OBJS        = usb_modeswitch.c
+ PREFIX      = $(DESTDIR)/usr
diff --git a/pkgs/development/tools/mysql-shell/default.nix b/pkgs/development/tools/mysql-shell/default.nix
index fe8ad46fe2f2..96b51392f151 100644
--- a/pkgs/development/tools/mysql-shell/default.nix
+++ b/pkgs/development/tools/mysql-shell/default.nix
@@ -37,16 +37,16 @@ let
 in
 stdenv.mkDerivation (finalAttrs: {
   pname = "mysql-shell";
-  version = "8.0.36";
+  version = "8.0.37";
 
   srcs = [
     (fetchurl {
-      url = "https://cdn.mysql.com//Downloads/MySQL-${lib.versions.majorMinor finalAttrs.version}/mysql-${finalAttrs.version}.tar.gz";
-      hash = "sha256-9PJwa5WKinOA72yVjdlyMHvb7qRR76/DQuTEbim36d0=";
+      url = "https://dev.mysql.com/get/Downloads/MySQL-${lib.versions.majorMinor finalAttrs.version}/mysql-${finalAttrs.version}.tar.gz";
+      hash = "sha256-4GOgkazZ7EC7BfLATfZPiZan5OJuiDu2UChJ1fa0pho=";
     })
     (fetchurl {
-      url = "https://cdn.mysql.com//Downloads/MySQL-Shell/mysql-shell-${finalAttrs.version}-src.tar.gz";
-      hash = "sha256-s0+7dbcLcgS8u/6p7vpVAV9sR2gf2j9VDnSCJvw77fQ=";
+      url = "https://dev.mysql.com/get/Downloads/MySQL-Shell/mysql-shell-${finalAttrs.version}-src.tar.gz";
+      hash = "sha256-UtZ7/Ip5h9CXKy3lkSt8/TXJgbPPUO73rMSIFPfX0Is=";
     })
   ];
 
diff --git a/pkgs/development/tools/mysql-shell/innovation.nix b/pkgs/development/tools/mysql-shell/innovation.nix
index 0755b2271c03..56fab537ee10 100644
--- a/pkgs/development/tools/mysql-shell/innovation.nix
+++ b/pkgs/development/tools/mysql-shell/innovation.nix
@@ -34,8 +34,8 @@
 let
   pythonDeps = with python3.pkgs; [ certifi paramiko pyyaml ];
 
-  mysqlShellVersion = "8.3.0";
-  mysqlServerVersion = "8.3.0";
+  mysqlShellVersion = "8.4.0";
+  mysqlServerVersion = "8.4.0";
 in
 stdenv.mkDerivation (finalAttrs: {
   pname = "mysql-shell-innovation";
@@ -43,12 +43,12 @@ stdenv.mkDerivation (finalAttrs: {
 
   srcs = [
     (fetchurl {
-      url = "https://cdn.mysql.com//Downloads/MySQL-${lib.versions.majorMinor mysqlServerVersion}/mysql-${mysqlServerVersion}.tar.gz";
-      hash = "sha256-HyFJWgt6grJKRT1S4hU6gUs8pwTsz5mXZtVFvOUvOG4=";
+      url = "https://dev.mysql.com/get/Downloads/MySQL-${lib.versions.majorMinor mysqlServerVersion}/mysql-${mysqlServerVersion}.tar.gz";
+      hash = "sha256-R6VDP83WOduDa5nhtUWcK4E8va0j/ytd1K0n95K6kY4=";
     })
     (fetchurl {
-      url = "https://cdn.mysql.com//Downloads/MySQL-Shell/mysql-shell-${finalAttrs.version}-src.tar.gz";
-      hash = "sha256-O0j/gvS9fR/xp9plytjj249H7LY/+eyst1IsFpy318U=";
+      url = "https://dev.mysql.com/get/Downloads/MySQL-Shell/mysql-shell-${finalAttrs.version}-src.tar.gz";
+      hash = "sha256-QT30FNogn7JR/dQ3V86QaAZaMREMKvTocRTUaNLGVlg=";
     })
   ];
 
@@ -59,10 +59,10 @@ stdenv.mkDerivation (finalAttrs: {
   '';
 
   postPatch = ''
-    substituteInPlace ../mysql/cmake/libutils.cmake --replace /usr/bin/libtool libtool
-    substituteInPlace ../mysql/cmake/os/Darwin.cmake --replace /usr/bin/libtool libtool
+    substituteInPlace ../mysql/cmake/libutils.cmake --replace-quiet /usr/bin/libtool libtool
+    substituteInPlace ../mysql/cmake/os/Darwin.cmake --replace-quiet /usr/bin/libtool libtool
 
-    substituteInPlace cmake/libutils.cmake --replace /usr/bin/libtool libtool
+    substituteInPlace cmake/libutils.cmake --replace-quiet /usr/bin/libtool libtool
   '';
 
   nativeBuildInputs = [ pkg-config cmake git bison makeWrapper ]
@@ -100,18 +100,18 @@ stdenv.mkDerivation (finalAttrs: {
       -DFORCE_UNSUPPORTED_COMPILER=1 -S ../mysql -B ../mysql/build
 
     cmake --build ../mysql/build --parallel ''${NIX_BUILD_CORES:-1} --target mysqlclient mysqlxclient
-  '';
 
-  cmakeFlags = [
-    "-DMYSQL_SOURCE_DIR=../mysql"
-    "-DMYSQL_BUILD_DIR=../mysql/build"
-    "-DMYSQL_CONFIG_EXECUTABLE=../../mysql/build/scripts/mysql_config"
-    "-DWITH_ZSTD=system"
-    "-DWITH_LZ4=system"
-    "-DWITH_ZLIB=system"
-    "-DWITH_PROTOBUF=${protobuf}"
-    "-DHAVE_PYTHON=1"
-  ];
+    cmakeFlagsArray+=(
+      "-DMYSQL_SOURCE_DIR=''${NIX_BUILD_TOP}/mysql"
+      "-DMYSQL_BUILD_DIR=''${NIX_BUILD_TOP}/mysql/build"
+      "-DMYSQL_CONFIG_EXECUTABLE=''${NIX_BUILD_TOP}/mysql/build/scripts/mysql_config"
+      "-DWITH_ZSTD=system"
+      "-DWITH_LZ4=system"
+      "-DWITH_ZLIB=system"
+      "-DWITH_PROTOBUF=system"
+      "-DHAVE_PYTHON=1"
+    )
+  '';
 
   postFixup = ''
     wrapProgram $out/bin/mysqlsh --set PYTHONPATH "${lib.makeSearchPath python3.sitePackages pythonDeps}"
diff --git a/pkgs/development/tools/nemiver/default.nix b/pkgs/development/tools/nemiver/default.nix
index db25b9f5f4e5..c63761f23a0b 100644
--- a/pkgs/development/tools/nemiver/default.nix
+++ b/pkgs/development/tools/nemiver/default.nix
@@ -17,7 +17,7 @@
 , gtksourceview
 , gsettings-desktop-schemas
 , gtksourceviewmm
-, wrapGAppsHook
+, wrapGAppsHook3
 }:
 
 stdenv.mkDerivation rec {
@@ -34,7 +34,7 @@ stdenv.mkDerivation rec {
     intltool
     itstool
     pkg-config
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
diff --git a/pkgs/development/tools/nwjs/default.nix b/pkgs/development/tools/nwjs/default.nix
index 7ada7365ebb5..d66197d7f672 100644
--- a/pkgs/development/tools/nwjs/default.nix
+++ b/pkgs/development/tools/nwjs/default.nix
@@ -17,6 +17,7 @@
 , lib
 , libcap
 , libdrm
+, libGL
 , libnotify
 , libuuid
 , libxcb
@@ -31,7 +32,7 @@
 , stdenv
 , systemd
 , udev
-, wrapGAppsHook
+, wrapGAppsHook3
 , xorg
 }:
 
@@ -55,6 +56,7 @@ let
       gtk3
       libcap
       libdrm
+      libGL
       libnotify
       libxkbcommon
       mesa
@@ -85,7 +87,7 @@ let
     extraOutputsToInstall = [ "lib" "out" ];
   };
 
-  version = "0.85.0";
+  version = "0.87.0";
 in
 stdenv.mkDerivation {
   pname = "nwjs";
@@ -96,16 +98,16 @@ stdenv.mkDerivation {
     in fetchurl {
       url = "https://dl.nwjs.io/v${version}/nwjs-${flavor}v${version}-linux-${bits}.tar.gz";
       hash = {
-        "sdk-ia32" = "sha256-QcFKX+TLRBYAMt5oUYoVMfBgGFZZ/4pdhhtNI0OxF/M=";
-        "sdk-x64" = "sha256-Wqq0iI5VLa/hJLTNF10YpFTtLRP6okjCC2EzlXxeuWI=";
-        "ia32" = "sha256-st/J/Zejo3R0dKxxdM7XBvmAlfsO2+2i5lYlAv9A5lY=";
-        "x64" = "sha256-hxSyzNEH6UJVejUqoG01vpJxb319wrLgp7uyF6Pt5YQ=";
+        "sdk-ia32" = "sha256-We4tSI8rQbEIoxNgTP/IkL/sD7GegVQDAtXUSY4AoB0=";
+        "sdk-x64" = "sha256-pWsNVHNm1gVAy9ofZ6g1Im5TpzxM2bmJ6RENa21N4qM=";
+        "ia32" = "sha256-ExxzzErT3GBI1yLYycojDkzKZ2VuvsOjaingQiK1Kww=";
+        "x64" = "sha256-tKm3aTlfPuevdjqFFEVU6nvIixoBDUcnJPFyO1PNRqE=";
       }."${flavor + bits}";
     };
 
   nativeBuildInputs = [
     autoPatchelfHook
-    (wrapGAppsHook.override { inherit makeWrapper; })
+    (wrapGAppsHook3.override { inherit makeWrapper; })
   ];
 
   buildInputs = [ nwEnv ];
diff --git a/pkgs/development/tools/ocaml/js_of_ocaml/compiler.nix b/pkgs/development/tools/ocaml/js_of_ocaml/compiler.nix
index 5e82fafd129c..ed68482d0a86 100644
--- a/pkgs/development/tools/ocaml/js_of_ocaml/compiler.nix
+++ b/pkgs/development/tools/ocaml/js_of_ocaml/compiler.nix
@@ -5,12 +5,12 @@
 
 buildDunePackage rec {
   pname = "js_of_ocaml-compiler";
-  version = "5.7.1";
+  version = "5.8.1";
   minimalOCamlVersion = "4.08";
 
   src = fetchurl {
     url = "https://github.com/ocsigen/js_of_ocaml/releases/download/${version}/js_of_ocaml-${version}.tbz";
-    hash = "sha256-DqSOKqiQTsVi8iX6CT/2dLVODnUU2uhie4/Y93IQOD0=";
+    hash = "sha256-DohuELJzqMSNn0U9XEuHacofPrpe6VDgsYha3JQ/SlM=";
   };
 
   nativeBuildInputs = [ menhir ];
diff --git a/pkgs/development/tools/ocaml/ocp-index/default.nix b/pkgs/development/tools/ocaml/ocp-index/default.nix
index 98e8b06e795b..1c8897cb3dbc 100644
--- a/pkgs/development/tools/ocaml/ocp-index/default.nix
+++ b/pkgs/development/tools/ocaml/ocp-index/default.nix
@@ -2,7 +2,7 @@
 
 buildDunePackage rec {
   pname = "ocp-index";
-  version = "1.3.5";
+  version = "1.3.6";
 
   minimalOCamlVersion = "4.08";
 
@@ -10,7 +10,7 @@ buildDunePackage rec {
     owner = "OCamlPro";
     repo = "ocp-index";
     rev = version;
-    hash = "sha256-Zn3BPaMB68V363OljFFdmLyYf+S0wFJK44L8t1TSG1Q=";
+    hash = "sha256-EgRpC58NBVFO1w0xx11CnonatU2H7bECsEk6Y4c/odY=";
   };
 
   nativeBuildInputs = [ cppo ];
diff --git a/pkgs/development/tools/ols/default.nix b/pkgs/development/tools/ols/default.nix
index ecc5a54778ff..0737f56c2bde 100644
--- a/pkgs/development/tools/ols/default.nix
+++ b/pkgs/development/tools/ols/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation {
   pname = "ols";
-  version = "0-unstable-2024-04-28";
+  version = "0-unstable-2024-05-11";
 
   src = fetchFromGitHub {
     owner = "DanielGavin";
     repo = "ols";
-    rev = "49a63471d91120a23ec86f1621e99155d1be55c2";
-    hash = "sha256-fHCSPqeN24QbCzwMCLtvK5YnR0ExveDvXRuWL2nHt8M=";
+    rev = "30625d5568c085c622deece91ed8ac9e81ba28be";
+    hash = "sha256-iBrXpLrnBL5W47Iz0Uy4nd5h/ADqSnxZt2jWQi9eYiM=";
   };
 
   passthru.updateScript = unstableGitUpdater {
diff --git a/pkgs/development/tools/opcr-policy/default.nix b/pkgs/development/tools/opcr-policy/default.nix
index 568b6a172c4c..641dd140d8b2 100644
--- a/pkgs/development/tools/opcr-policy/default.nix
+++ b/pkgs/development/tools/opcr-policy/default.nix
@@ -5,15 +5,15 @@
 
 buildGoModule rec {
   pname = "opcr-policy";
-  version = "0.2.12";
+  version = "0.2.13";
 
   src = fetchFromGitHub {
     owner = "opcr-io";
     repo = "policy";
     rev = "v${version}";
-    sha256 = "sha256-3rMSk4oRqPWqJh4o+oGtfqpEz4zkr4CVaIyMvBopN/o=";
+    sha256 = "sha256-flmTVEEM0vEU4Aul7+PPo0ut1xv63l4HljEPXSPd6SU=";
   };
-  vendorHash = "sha256-ZP4EM7NZwfTLx0e47DikgMI7Y+IYmREdLL/r/CC9P7c=";
+  vendorHash = "sha256-XmJafFW5Hb8A8mKz/ewJIKMQ5hiZlAJk2yFdTB3VxNg=";
 
   ldflags = [ "-s" "-w" "-X github.com/opcr-io/policy/pkg/version.ver=${version}" ];
 
diff --git a/pkgs/development/tools/open-policy-agent/default.nix b/pkgs/development/tools/open-policy-agent/default.nix
index 243810ef77a0..146a2e0c3bbe 100644
--- a/pkgs/development/tools/open-policy-agent/default.nix
+++ b/pkgs/development/tools/open-policy-agent/default.nix
@@ -11,13 +11,13 @@ assert enableWasmEval && stdenv.isDarwin -> builtins.throw "building with wasm o
 
 buildGoModule rec {
   pname = "open-policy-agent";
-  version = "0.64.0";
+  version = "0.64.1";
 
   src = fetchFromGitHub {
     owner = "open-policy-agent";
     repo = "opa";
     rev = "v${version}";
-    hash = "sha256-BguL9ph7lNzOJs9s2l7jt/SjmD5Wy0MPrwIiEXL/Ip4=";
+    hash = "sha256-IIW6AXv5x+uQGCZulPPB7IhRlCq7Ww76qUhMHg3Fx7g=";
   };
 
   vendorHash = null;
diff --git a/pkgs/development/tools/operator-sdk/default.nix b/pkgs/development/tools/operator-sdk/default.nix
index 62bf98c593f4..fa9379ab62ee 100644
--- a/pkgs/development/tools/operator-sdk/default.nix
+++ b/pkgs/development/tools/operator-sdk/default.nix
@@ -7,13 +7,13 @@
 
 buildGoModule rec {
   pname = "operator-sdk";
-  version = "1.34.1";
+  version = "1.34.2";
 
   src = fetchFromGitHub {
     owner = "operator-framework";
     repo = pname;
     rev = "refs/tags/v${version}";
-    hash = "sha256-3S7jR76b9MZpqn4Hj9yhjfravBk1PiESJEbG5XR4tnI=";
+    hash = "sha256-vVa1ljPRSHSo7bVqPkRt/jbuSlzLmnVaLnyreskwOrM=";
   };
 
   vendorHash = "sha256-YspUrnSS6d8Ta8dmUjx9A5D/V5Bqm08DQJrRBaIGyQg=";
diff --git a/pkgs/development/tools/packer/default.nix b/pkgs/development/tools/packer/default.nix
index 529d9b69ed3b..b4c2afb08072 100644
--- a/pkgs/development/tools/packer/default.nix
+++ b/pkgs/development/tools/packer/default.nix
@@ -6,16 +6,16 @@
 
 buildGoModule rec {
   pname = "packer";
-  version = "1.10.2";
+  version = "1.10.3";
 
   src = fetchFromGitHub {
     owner = "hashicorp";
     repo = "packer";
     rev = "v${version}";
-    hash = "sha256-/ViyS7srbOoZJDvDCRoNYWkdCYi3F1Pr0gSSFF0M1ak=";
+    hash = "sha256-oLN7FU7Er0GnfOhoKd0bSsiB7uZsr2BNL3aSDrWJEUw=";
   };
 
-  vendorHash = "sha256-JNOlMf+PIONokw5t2xhz1Y+b5VwRDG7BKODl8fHCcJY=";
+  vendorHash = "sha256-2YsFwWalMhbZP4vdEQguCijGC9kCiqDpfZCAKVOk5bs=";
 
   subPackages = [ "." ];
 
diff --git a/pkgs/development/tools/parsing/tree-sitter/default.nix b/pkgs/development/tools/parsing/tree-sitter/default.nix
index 97554e53de20..14f5e32b505c 100644
--- a/pkgs/development/tools/parsing/tree-sitter/default.nix
+++ b/pkgs/development/tools/parsing/tree-sitter/default.nix
@@ -2,6 +2,7 @@
 , stdenv
 , fetchgit
 , fetchFromGitHub
+, nix-update-script
 , runCommand
 , which
 , rustPlatform
@@ -26,8 +27,8 @@ let
   # 2) nix-build -A tree-sitter.updater.update-all-grammars
   # 3) Set GITHUB_TOKEN env variable to avoid api rate limit (Use a Personal Access Token from https://github.com/settings/tokens It does not need any permissions)
   # 4) run the ./result script that is output by that (it updates ./grammars)
-  version = "0.22.2";
-  hash = "sha256-RhM3SgsCb8eLs56cm8/Yo1ptNnFrR21FriHAlMdvdrU=";
+  version = "0.22.5";
+  hash = "sha256-f8bdpiPNo5M8aefTmrQ2MQVg7lS0Yq7j312K1slortA=";
 
   src = fetchFromGitHub {
     owner = "tree-sitter";
@@ -62,6 +63,7 @@ let
         };
       grammars' = import ./grammars { inherit lib; } // extraGrammars;
       grammars = grammars' //
+        { tree-sitter-latex = grammars'.tree-sitter-latex // { generate = true; }; } //
         { tree-sitter-ocaml = grammars'.tree-sitter-ocaml // { location = "grammars/ocaml"; }; } //
         { tree-sitter-ocaml-interface = grammars'.tree-sitter-ocaml // { location = "grammars/interface"; }; } //
         { tree-sitter-org-nvim = grammars'.tree-sitter-org-nvim // { language = "org"; }; } //
@@ -110,7 +112,7 @@ rustPlatform.buildRustPackage {
   pname = "tree-sitter";
   inherit src version;
 
-  cargoHash = "sha256-QWqg84naOIPhkHj2yLchZVb2gvjL9+AEK2rRK7K8uQY=";
+  cargoHash = "sha256-Fk6V/kPKc/GL/q6QsaCUrq+ZG0R+N5FLOpIm77Y+n2A=";
 
   buildInputs =
     lib.optionals stdenv.isDarwin [ Security CoreServices ];
@@ -158,6 +160,8 @@ rustPlatform.buildRustPackage {
     };
     inherit grammars buildGrammar builtGrammars withPlugins allGrammars;
 
+    updateScript = nix-update-script { };
+
     tests = {
       # make sure all grammars build
       builtGrammars = lib.recurseIntoAttrs builtGrammars;
diff --git a/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-commonlisp.json b/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-commonlisp.json
index 190dda2ee3e9..b17e5ca89527 100644
--- a/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-commonlisp.json
+++ b/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-commonlisp.json
@@ -1,10 +1,10 @@
 {
   "url": "https://github.com/thehamsta/tree-sitter-commonlisp",
-  "rev": "cf10fc38bc24faf0549d59217ff37c789973dfdc",
-  "date": "2023-11-19T14:17:12+01:00",
-  "path": "/nix/store/91kc23ng7axqzd4xjiwrgij1mpriq459-tree-sitter-commonlisp",
-  "sha256": "1nq5cvf557w3vwr7rjzdgqcpcs3ikp1x5cs00f8z5n9hgdk1lvry",
-  "hash": "sha256-Pm8aZnsw2fKRA0Cz0sOdcWh2GX7ty3wy34OfUtxmBds=",
+  "rev": "25856774aaab983c573bb2f9cc1ebbc97941f7b9",
+  "date": "2024-04-06T22:22:41+02:00",
+  "path": "/nix/store/mlji0h6k2x17jni9q3y571dmk5k4xi85-tree-sitter-commonlisp",
+  "sha256": "12fh2sinasnfp6rfq5d9qq24nfg55bclc5rp8mnw3a2ccyc5icis",
+  "hash": "sha256-OrJYmGdMqMFtRTcXRtkq5TlLBMapFeyyuc5qZaMW0Ik=",
   "fetchLFS": false,
   "fetchSubmodules": false,
   "deepClone": false,
diff --git a/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-cpp.json b/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-cpp.json
index 4ba7b97a57d8..53a829c4a941 100644
--- a/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-cpp.json
+++ b/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-cpp.json
@@ -1,10 +1,10 @@
 {
   "url": "https://github.com/tree-sitter/tree-sitter-cpp",
-  "rev": "e0c1678a78731e78655b7d953efb4daecf58be46",
-  "date": "2024-02-18T08:20:42-05:00",
-  "path": "/nix/store/dw86n9mqgfn9ymlbr7s7h05dvf8q867i-tree-sitter-cpp",
-  "sha256": "0fjxjm3gjqvcjqgjyq6lg6sgyy0ly69dinq33rmy56806da45lq9",
-  "hash": "sha256-CdNCVDMAmeJrHgPb2JLxFHj/tHnUYC8flmxj+UaVXTo=",
+  "rev": "72fd00128f1c38319670cbf4bcedbba0dc849d96",
+  "date": "2024-04-14T21:38:58-04:00",
+  "path": "/nix/store/sy0ln7q947bv9k313q4z6kkibl2zgdi1-tree-sitter-cpp",
+  "sha256": "0qaa48gq4n3300apwx1mdcwqnfg59q8bdj88c3ssd45pr1n47s88",
+  "hash": "sha256-COlDbMi3kKb1YAjJthBO5TmLOWs1dH4VAGNYgh8iSmE=",
   "fetchLFS": false,
   "fetchSubmodules": false,
   "deepClone": false,
diff --git a/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-cuda.json b/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-cuda.json
index 376d5f83bf46..54bbe3214f4b 100644
--- a/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-cuda.json
+++ b/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-cuda.json
@@ -1,10 +1,10 @@
 {
   "url": "https://github.com/thehamsta/tree-sitter-cuda",
-  "rev": "221179d4287a2c24c08e4c67ff383ef67dc32156",
-  "date": "2024-02-20T23:55:20+01:00",
-  "path": "/nix/store/x8sqw6njbai4x9jlx6zn0mamvfjpcxy9-tree-sitter-cuda",
-  "sha256": "0n4c79iq5izdjrb50f5af02jkzfn6mp3kvr0iajfhxlj3x64ykbv",
-  "hash": "sha256-e01PTB+SduikiiDvOW411v0pBXCqOFBWlu3HgmM6jFg=",
+  "rev": "4ec5afdf98041d137c25b555958a1f825c7c1272",
+  "date": "2024-04-02T22:40:43+02:00",
+  "path": "/nix/store/2n6dkgdvhfd34qa48b5824qbw1pc7899-tree-sitter-cuda",
+  "sha256": "1n840xzsx56w3hys263f216ih901jh456yxdmm0i274ijwngn38h",
+  "hash": "sha256-EA37LJeRHBFBra17UwiUASQYTRBuGKE9HNyUrn8HBNk=",
   "fetchLFS": false,
   "fetchSubmodules": false,
   "deepClone": false,
diff --git a/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-dart.json b/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-dart.json
index 0cf8d54a9f4c..f492de75ad54 100644
--- a/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-dart.json
+++ b/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-dart.json
@@ -1,10 +1,10 @@
 {
   "url": "https://github.com/usernobody14/tree-sitter-dart",
-  "rev": "1a31399a08aefc93bc4cdbfadc0cb619136f86c1",
-  "date": "2024-02-10T18:16:57-07:00",
-  "path": "/nix/store/4pdnic3kb0856ajy2xfbxdn84lflvbw1-tree-sitter-dart",
-  "sha256": "0nx4hvvx239prxckddbcgadvk894lxl4ycmxxg7m30j2sp6a6049",
-  "hash": "sha256-iQCjzNVCglHP670yT2inJKG5m3pstTZZzzcN0feGpFs=",
+  "rev": "6da46473ab8accb13da48113f4634e729a71d335",
+  "date": "2024-04-07T18:27:24-06:00",
+  "path": "/nix/store/v04h2p45ngm7llrckpkkbnvj9m5763vm-tree-sitter-dart",
+  "sha256": "1jxz4s0j8pmjxl7cz7s9blzqhr1w5jannxihidqrd6dqxawc6gh1",
+  "hash": "sha256-AT7DuOq4mZZxizB2a5UsPGSIP11Jn88O7bJeJIEmv8s=",
   "fetchLFS": false,
   "fetchSubmodules": false,
   "deepClone": false,
diff --git a/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-elixir.json b/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-elixir.json
index 70e129ea41bd..405fd174824e 100644
--- a/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-elixir.json
+++ b/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-elixir.json
@@ -1,10 +1,10 @@
 {
   "url": "https://github.com/elixir-lang/tree-sitter-elixir",
-  "rev": "11426c5fd20eef360d5ecaf10729191f6bc5d715",
-  "date": "2023-12-04T13:06:21+07:00",
-  "path": "/nix/store/l3868ga8dvvq06k7px3k9i3kpynfjmis-tree-sitter-elixir",
-  "sha256": "1fqsvqdjscmjj7vaq3mgs6j49m3412g5i9jrm1r61n1d8yrg3mzy",
-  "hash": "sha256-/tfxskct2GByqFmmWJ4IZNREpNGvDqz2kbIyLRveGrs=",
+  "rev": "de690fa8a028f122af46d9d2685679fe5f2d7d60",
+  "date": "2024-04-08T19:02:42+02:00",
+  "path": "/nix/store/q46fy2kd4gvab4bpfv3zacg4qgkfc6dz-tree-sitter-elixir",
+  "sha256": "03fg2qj0i3n1dx8abkngg4nxqwpz86m5nr7q70hp5jw5bxccxxkf",
+  "hash": "sha256-bvbOWF+Fy3IhOPhkW6pB/3LcLXnPzqVQb8GOCCQWzw0=",
   "fetchLFS": false,
   "fetchSubmodules": false,
   "deepClone": false,
diff --git a/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-fish.json b/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-fish.json
index a1047117557c..f1e8bc7ccaf1 100644
--- a/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-fish.json
+++ b/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-fish.json
@@ -1,10 +1,10 @@
 {
   "url": "https://github.com/ram02z/tree-sitter-fish",
-  "rev": "f9176908c9eb2e11eb684d79e1d00f3b29bd65c9",
-  "date": "2023-02-12T14:42:20+00:00",
-  "path": "/nix/store/hg229jskwvgmfgi9awznvp9cj5riacay-tree-sitter-fish",
-  "sha256": "1yxvibmmpkwswwrg1mzvcnfj6y0rpccrwyg27k4wpr2630ma9xcw",
-  "hash": "sha256-nPWkKhhG5MvJPOJ5nhm7GXgjnWX71/Ay55rPW+uKu/s=",
+  "rev": "a78aef9abc395c600c38a037ac779afc7e3cc9e0",
+  "date": "2024-04-02T18:45:18+01:00",
+  "path": "/nix/store/v0bvl4iadrl1fzr617s72rlk2d214ak9-tree-sitter-fish",
+  "sha256": "0nmdwxw8wbqc9nm1p30s91p6mh8qp7w5wnw7lpz6fy6hq5k3gfqg",
+  "hash": "sha256-D7s3ZsHQeGf+pYdbXvi5GMFqbkgajBuqTQwvjnjnrVo=",
   "fetchLFS": false,
   "fetchSubmodules": false,
   "deepClone": false,
diff --git a/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-glsl.json b/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-glsl.json
index 0cf5f37e5366..eb12bf0a26a1 100644
--- a/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-glsl.json
+++ b/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-glsl.json
@@ -1,10 +1,10 @@
 {
   "url": "https://github.com/thehamsta/tree-sitter-glsl",
-  "rev": "284bed0e2f1d9f700756b96512baf33483642ff0",
-  "date": "2024-02-15T22:49:15+01:00",
-  "path": "/nix/store/vqnsavpda33cbzvfwk28cqz24m5lwrl7-tree-sitter-glsl",
-  "sha256": "1vcllf58mk1c1fiwh2amcjkgmq5m9dyhawvm744fx9phf0qlqb57",
-  "hash": "sha256-pyxMMXDwpu4IOXVzBX1LteD6pmRVCcijCyzMioqjlO0=",
+  "rev": "e7817c982e0e921c5ee89a1e0283121bb5cc5e01",
+  "date": "2024-04-14T19:48:45+02:00",
+  "path": "/nix/store/fs5zdqn1lilbd6f0g6kgjjl35dli61fv-tree-sitter-glsl",
+  "sha256": "1gxg9d3i7iyzxv0sijllbl57dl7ai7z48f1639xd8ljhwl7yyim6",
+  "hash": "sha256-pkbvD+VQUtR6GiY4RP6J6tB2Cl2UyqjB7t/HE0dLr78=",
   "fetchLFS": false,
   "fetchSubmodules": false,
   "deepClone": false,
diff --git a/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-haskell.json b/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-haskell.json
index a41c8bc056c4..f0bb17721691 100644
--- a/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-haskell.json
+++ b/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-haskell.json
@@ -1,10 +1,10 @@
 {
   "url": "https://github.com/tree-sitter/tree-sitter-haskell",
-  "rev": "6b5ec205c9d4f23eb36a163f1edc4f2db8c98e4a",
-  "date": "2024-02-26T15:02:24+01:00",
-  "path": "/nix/store/ia666bffpywmack992f64jid4321fvdq-tree-sitter-haskell",
-  "sha256": "1d3klbflb1xl234s6pw874j1d5r82bkx5jdi7il1irfvhgdkjljc",
-  "hash": "sha256-TFI524Pb5RhoPLHJ0ucSKJcWJDmIX6PJELSHRd2ic7Q=",
+  "rev": "95a4f0023741b3bee0cc500f3dab9c5bab2dc2be",
+  "date": "2024-03-24T15:47:21+01:00",
+  "path": "/nix/store/ay1m5h51pp7p84hh5mlmxir8fsr68bs5-tree-sitter-haskell",
+  "sha256": "0kwbknxk8f6824bijqqkmlfg04074v31ava8qsf97bqsgs6039vf",
+  "hash": "sha256-bqcBjH4ar5OcxkhtFcYmBxDwHK0TYxkXEcg4NLudi08=",
   "fetchLFS": false,
   "fetchSubmodules": false,
   "deepClone": false,
diff --git a/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-javascript.json b/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-javascript.json
index 7b03a8132773..67e30dd121ea 100644
--- a/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-javascript.json
+++ b/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-javascript.json
@@ -1,10 +1,10 @@
 {
   "url": "https://github.com/tree-sitter/tree-sitter-javascript",
-  "rev": "de1e682289a417354df5b4437a3e4f92e0722a0f",
-  "date": "2024-03-10T11:12:05-04:00",
-  "path": "/nix/store/8p9li6jcc247jzpy0x3cr4iskfyhqwmi-tree-sitter-javascript",
-  "sha256": "1mvvc6cv46zyhxhdjycmj7746hbss7lxcxks61bzrh229nlrh6hy",
-  "hash": "sha256-HhqYqU1CwPxXMHp21unRekFDzpGVedlgh/4bsplhe9c=",
+  "rev": "ac10a11e0c8db512f70e6b798260d2516d22454c",
+  "date": "2024-04-07T02:36:56-04:00",
+  "path": "/nix/store/b5fahwmcx0riy3bfaarlggncfgfkhx38-tree-sitter-javascript",
+  "sha256": "1f0k7mk785ijppw1swcrilr5bl2nddi7hifml431y4lsqm7y6kmg",
+  "hash": "sha256-r07jT8WaEh8GodVFeGJrVtBVMo2ZcR34vTIWdGY9E7g=",
   "fetchLFS": false,
   "fetchSubmodules": false,
   "deepClone": false,
diff --git a/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-json.json b/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-json.json
index 00991afc3136..3a43b67184e2 100644
--- a/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-json.json
+++ b/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-json.json
@@ -1,10 +1,10 @@
 {
   "url": "https://github.com/tree-sitter/tree-sitter-json",
-  "rev": "3b129203f4b72d532f58e72c5310c0a7db3b8e6d",
-  "date": "2024-02-23T13:05:26-08:00",
-  "path": "/nix/store/03dv24dlqkds0k1vjchzq6n8v6wys3ix-tree-sitter-json",
-  "sha256": "0rnfhmhr76fjlc6zzbxzrxrxa1xxpkg1jgq7vdw4630l1cg2nlbm",
-  "hash": "sha256-dVErHgsUDEN42wc/Gd68vQfVc8+/r/8No9KZk2GFzmY=",
+  "rev": "80e623c2165887f9829357acfa9c0a0bab34a3cd",
+  "date": "2024-04-07T15:21:58-04:00",
+  "path": "/nix/store/9cixfhx0x72pvn0ak349cbbzvhzlvhll-tree-sitter-json",
+  "sha256": "0mjphf34k5d0h28wwafwljk486h5mzx30dqdxz23lcmvnh0s79y1",
+  "hash": "sha256-waejAbS7MjrE7w03MPqvBRpEpqTcKc6RgKCVSYaDV1Y=",
   "fetchLFS": false,
   "fetchSubmodules": false,
   "deepClone": false,
diff --git a/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-julia.json b/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-julia.json
index b94837ef46d0..d55e2ca470ee 100644
--- a/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-julia.json
+++ b/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-julia.json
@@ -1,10 +1,10 @@
 {
   "url": "https://github.com/tree-sitter/tree-sitter-julia",
-  "rev": "e84f10db8eeb8b9807786bfc658808edaa1b4fa2",
-  "date": "2024-02-14T19:03:11-05:00",
-  "path": "/nix/store/wv5r1xw2f3bfk4rqg660m6pqkwfdin68-tree-sitter-julia",
-  "sha256": "1fqirr8yjwmjy5dnfxk0djafq0hnl18mf28i7zg2gsfvy9a27d4f",
-  "hash": "sha256-jrQjVPLb6SfePxEJV1GgFgLslGxgdmdb8bJy6VHOEbs=",
+  "rev": "0a80d33aca49dd257625ab25ef3a506e2b99a554",
+  "date": "2024-04-14T10:47:45-07:00",
+  "path": "/nix/store/zi4q89960k33nkic7wm19fiq05bhx2bq-tree-sitter-julia",
+  "sha256": "057hg3v4rzzq19swb2mv2zlxp8zd746zxklxc0vw1i1fkr2x34yi",
+  "hash": "sha256-0ZPRRZ4uxMA3YJ3O/g057aPb6Re7isV1Cvj/TPZ48BQ=",
   "fetchLFS": false,
   "fetchSubmodules": false,
   "deepClone": false,
diff --git a/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-just.json b/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-just.json
index e1b2ed4e1622..8e480f72a406 100644
--- a/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-just.json
+++ b/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-just.json
@@ -1,10 +1,10 @@
 {
   "url": "https://github.com/IndianBoy42/tree-sitter-just",
-  "rev": "442538ab5ae0913b05e0269a988b4d452dfa5361",
-  "date": "2024-03-19T12:21:46-05:00",
-  "path": "/nix/store/ibqsrr59gr2ww1z5f9vr4q2fdvz9gmmy-tree-sitter-just",
-  "sha256": "1zcc7qsapcq8rs0myknx8bd8svcb18gwgpcqzh5jw1cf1c45yryr",
-  "hash": "sha256-2WdfCAuOBS4L/Jjdxx8Ki22N2kLdTl+BzgizqzQ+jP0=",
+  "rev": "6c2f018ab1d90946c0ce029bb2f7d57f56895dff",
+  "date": "2024-03-22T16:21:21-05:00",
+  "path": "/nix/store/8p22m5p2clrcc563v2z6pmhnhh03yyvg-tree-sitter-just",
+  "sha256": "0752hfkkqk92g0s68b01wf5d5q2y7aw87wsj8kz2vxkbj0i38x8j",
+  "hash": "sha256-EnU0IpBr9i3+RFLzg7g6XuDSiuMBLGQ0eCJNPKeDohw=",
   "fetchLFS": false,
   "fetchSubmodules": false,
   "deepClone": false,
diff --git a/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-latex.json b/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-latex.json
index 1ae0d28cde67..9e6eb0167e0b 100644
--- a/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-latex.json
+++ b/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-latex.json
@@ -1,10 +1,10 @@
 {
   "url": "https://github.com/latex-lsp/tree-sitter-latex",
-  "rev": "8c75e93cd08ccb7ce1ccab22c1fbd6360e3bcea6",
-  "date": "2022-10-26T10:55:26+02:00",
-  "path": "/nix/store/zhx1vnr3xdrb0ry6kfjsfrzs6c3nf8i9-tree-sitter-latex",
-  "sha256": "0lc42x604f04x3kkp88vyqa5dx90wqyisiwl7nn861lyxl6phjnf",
-  "hash": "sha256-zkp4De2eBoOsPZRHHT3mIPVWFPYboTvn6AQ4AkwXhFE=",
+  "rev": "a834712c5e04029a451a262456bf6290b8ef6f37",
+  "date": "2024-04-01T14:31:04+02:00",
+  "path": "/nix/store/kn3vkfnysm170wc1dbjmb5y69hdlmyb4-tree-sitter-latex",
+  "sha256": "18dyda7299imb6i2jnjpr7z2jdrjn804c3958nkkpxzzfhbq39h7",
+  "hash": "sha256-B6aBF3T/9zunRSUNRgCyMjcp/slXWimiWTWmJI5qvqE=",
   "fetchLFS": false,
   "fetchSubmodules": false,
   "deepClone": false,
diff --git a/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-markdown.json b/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-markdown.json
index 68a671d810da..6f9a1b44406d 100644
--- a/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-markdown.json
+++ b/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-markdown.json
@@ -1,10 +1,10 @@
 {
   "url": "https://github.com/MDeiml/tree-sitter-markdown",
-  "rev": "b2f01981a76e3251f5b660378136c248ed106b81",
-  "date": "2024-03-13T23:51:05+02:00",
-  "path": "/nix/store/z986603ky7a41d48i0rxkd23y5k1bxc7-tree-sitter-markdown",
-  "sha256": "183ig6p39wzlmb8vz5hyjr4787s03b8gsw5p210qxkl3xs46s37a",
-  "hash": "sha256-6gxtiO6Dzo5BELdw/dAaQB90SJYelr/RqvTzNK55caA=",
+  "rev": "62516e8c78380e3b51d5b55727995d2c511436d8",
+  "date": "2024-03-22T11:52:05+02:00",
+  "path": "/nix/store/4hi3bz1ny9dz3yq7mr6d74gsfmcnh9rw-tree-sitter-markdown",
+  "sha256": "08wl8y8xgrr10m1p6xpmv0jbmnif30wgd2q5m28ghh1v37q2ixfp",
+  "hash": "sha256-1/Uo8Bk7QPiQqAWL9jgYLtq6JNj1dnNDBSHn15FHlCM=",
   "fetchLFS": false,
   "fetchSubmodules": false,
   "deepClone": false,
diff --git a/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-nix.json b/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-nix.json
index 9e3a8be40c22..91c713dae026 100644
--- a/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-nix.json
+++ b/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-nix.json
@@ -1,10 +1,10 @@
 {
   "url": "https://github.com/cstrahan/tree-sitter-nix",
-  "rev": "763168fa916a333a459434f1424b5d30645f015d",
-  "date": "2023-12-26T15:36:50+13:00",
-  "path": "/nix/store/wvnrjnrb3dgc5pg5n8nkwxm43478nk2k-tree-sitter-nix",
-  "sha256": "0nn3ij8k6wkbf3kcvkyyp0vhfjcksi31wyyfwmsbx66maf2xgaii",
-  "hash": "sha256-MarXhVPVmL505c57HkbUk0kHN7jez83mcGtyM5GMw1o=",
+  "rev": "b3cda619248e7dd0f216088bd152f59ce0bbe488",
+  "date": "2024-04-03T09:38:13+02:00",
+  "path": "/nix/store/5rz41r1yycp0w3s947cjs3m9d9v1082r-tree-sitter-nix",
+  "sha256": "1xh75z11d1b514qm997br8vmxalir2ah1pk7v3k1ppm28043ggr1",
+  "hash": "sha256-Ib83CECi3hvm2GfeAJXIkapeN8rrpFQxCWWFFsIvB/Y=",
   "fetchLFS": false,
   "fetchSubmodules": false,
   "deepClone": false,
diff --git a/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-norg-meta.json b/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-norg-meta.json
index 93f8737bb7d9..968e703cc352 100644
--- a/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-norg-meta.json
+++ b/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-norg-meta.json
@@ -1,10 +1,10 @@
 {
   "url": "https://github.com/nvim-neorg/tree-sitter-norg-meta",
-  "rev": "a479d1ca05848d0b51dd25bc9f71a17e0108b240",
-  "date": "2023-05-28T19:01:42+02:00",
-  "path": "/nix/store/7yp5rzpmdvyhhl38brhz0vl3gd9qv03y-tree-sitter-norg-meta",
-  "sha256": "1vvl39m41wgsq7xkfi523zx6nza03dkzgk6izc39igmwx5hsdl7f",
-  "hash": "sha256-7tCmYem8vpgG+9HM92cbQH1r+h+iRDf7wfrxQGoadO8=",
+  "rev": "6f0510cc516a3af3396a682fbd6655486c2c9d2d",
+  "date": "2024-04-13T19:12:46+02:00",
+  "path": "/nix/store/val14j7fz39yyqzp3xh2r7cbvfd1am4m-tree-sitter-norg-meta",
+  "sha256": "1vz74wc5yy5fykl9c3b16k6fsvskxp93acsy81p337jzg709v97j",
+  "hash": "sha256-8qSdwHlfnjFuQF4zNdLtU2/tzDRhDZbo9K54Xxgn5+8=",
   "fetchLFS": false,
   "fetchSubmodules": false,
   "deepClone": false,
diff --git a/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-norg.json b/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-norg.json
index 2fa6470e2a35..f9be1d893588 100644
--- a/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-norg.json
+++ b/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-norg.json
@@ -1,10 +1,10 @@
 {
   "url": "https://github.com/nvim-neorg/tree-sitter-norg",
-  "rev": "014073fe8016d1ac440c51d22c77e3765d8f6855",
-  "date": "2023-10-02T20:20:59+02:00",
-  "path": "/nix/store/xi96cyvgn1443wf54ykc90y80fqdmgzv-tree-sitter-norg",
-  "sha256": "05zrcglnpvyqx0gczzkx05qc95y5n3slbhjig7dqjyxvphyzf0nk",
-  "hash": "sha256-0wL3Pby7e4nbeVHCRfWwxZfEcAF9/s8e6Njva+lj+Rc=",
+  "rev": "ceb44e4cdb58fbeea52301835bdd461817ddb57e",
+  "date": "2024-04-14T13:26:39+02:00",
+  "path": "/nix/store/gmzacfd1sbdbgvc26bnv3cpyl5l3csq9-tree-sitter-norg",
+  "sha256": "1jzk1wxqah5ajgpxmmbhrjk43hhk9vpg1f7v9wnj1xgp7zv4w6mv",
+  "hash": "sha256-uxpO9j/39SAtT/u48O5OE8JBpsxw1drvk6pAhTsP88s=",
   "fetchLFS": false,
   "fetchSubmodules": false,
   "deepClone": false,
diff --git a/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-nu.json b/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-nu.json
index 7bb3fd3c6f1a..8a5f286af0c6 100644
--- a/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-nu.json
+++ b/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-nu.json
@@ -1,10 +1,10 @@
 {
   "url": "https://github.com/nushell/tree-sitter-nu",
-  "rev": "c5b7816043992b1cdc1462a889bc74dc08576fa6",
-  "date": "2024-03-09T11:27:22-06:00",
-  "path": "/nix/store/gcmmkjxfhf4y1qc3fvbaww5pfcdbjlhv-tree-sitter-nu",
-  "sha256": "0g9b7d6306z96x90w9v687nyws5jrh5jy2cm8yxhaz3xgq9v3s1z",
-  "hash": "sha256-P+ixE359fAW7R5UJLwvMsmju7UFmJw5SN+kbMEw7Kz0=",
+  "rev": "b090676f0205f52debb93745b9ad788385583276",
+  "date": "2024-04-14T14:09:50-05:00",
+  "path": "/nix/store/f8pjwwdy175mayqncxicn47lj7gw4vks-tree-sitter-nu",
+  "sha256": "10rmw80xzhpqhjhysfx13pkqzfm4a31wvvmq57wvrcrrrlqb982k",
+  "hash": "sha256-U6C0MM05s7z5KbjuzcNQpLqP5x2hO+2hhPjC3wHiNYM=",
   "fetchLFS": false,
   "fetchSubmodules": false,
   "deepClone": false,
diff --git a/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-ocaml.json b/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-ocaml.json
index 95e3bed434e4..d769f351e21d 100644
--- a/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-ocaml.json
+++ b/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-ocaml.json
@@ -1,10 +1,10 @@
 {
   "url": "https://github.com/tree-sitter/tree-sitter-ocaml",
-  "rev": "dabe60a96553fbbda0a58b6ccda12b7d44047cb5",
-  "date": "2024-03-17T14:43:34+01:00",
-  "path": "/nix/store/sv3zz52xfyda4iwjwxfkyadg0bj1d2kj-tree-sitter-ocaml",
-  "sha256": "0pkw9bclbndcakaywdwj0ffvak78h68fjlbckdainfz99xgvg732",
-  "hash": "sha256-Ypy3X0/pOxtVm2xR6ZCB6Ey1nQOSN+7VVKzZRdlKfF4=",
+  "rev": "f7e63111ed1bc1908eacafe6af1ee8d01bfcf7ae",
+  "date": "2024-03-23T14:49:30+01:00",
+  "path": "/nix/store/p4awlsbz7b3xlbr9l785l7vi1rnxgxlr-tree-sitter-ocaml",
+  "sha256": "04vscg6lkhdnzs15r1yqwwmc2lj73x4h3nf4mfpkwq6g870i04wj",
+  "hash": "sha256-khMQwUHPYD6vq8TZAUkfR1LBKufYh1yC/rbBSc1jehM=",
   "fetchLFS": false,
   "fetchSubmodules": false,
   "deepClone": false,
diff --git a/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-perl.json b/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-perl.json
index 025f5005b9dd..385e00ceb552 100644
--- a/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-perl.json
+++ b/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-perl.json
@@ -1,10 +1,10 @@
 {
   "url": "https://github.com/ganezdragon/tree-sitter-perl",
-  "rev": "a882a928d4930716896039d1c10e91b6d7444c48",
-  "date": "2024-03-03T23:09:15+05:30",
-  "path": "/nix/store/6v3jxaiad68k4rak3ihqn1vxqah1pi85-tree-sitter-perl",
-  "sha256": "0ss26x37ldj4v6pwbijrz0hbnvj8xrm8cj3y1n1f2xanzvcalz15",
-  "hash": "sha256-JXyq2P5WdeGCDX5IhmruSG67IPhZxsWv2UQ2ekY3Qms=",
+  "rev": "93bd92a6af01113140f1a0b4c1845d22adae7ab6",
+  "date": "2024-03-29T09:45:26+05:30",
+  "path": "/nix/store/v4fhidwmxfihmkkq32a2xj75zs9fs9cd-tree-sitter-perl",
+  "sha256": "1ldbqjiyc4apls5gfc96lw6l4y53k5adk8knf1pp3ar2x2dl8v6y",
+  "hash": "sha256-3mxEm+giq3FvcHai2VSZo3hCDacmMfeKplcR5qPEq9E=",
   "fetchLFS": false,
   "fetchSubmodules": false,
   "deepClone": false,
diff --git a/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-python.json b/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-python.json
index 257b3e405346..059ce3aed9a6 100644
--- a/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-python.json
+++ b/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-python.json
@@ -1,10 +1,10 @@
 {
   "url": "https://github.com/tree-sitter/tree-sitter-python",
-  "rev": "b8a4c64121ba66b460cb878e934e3157ecbfb124",
-  "date": "2024-03-12T19:59:41-04:00",
-  "path": "/nix/store/qyvpyxlyxxmc1rwqvy14j9z1pjnpxbw9-tree-sitter-python",
-  "sha256": "12bgdbhkxl7lrca4257wnjks1m4z3mv5mzw5cfbyr91ypv59cfk5",
-  "hash": "sha256-ZTqWyr4+pOyXY4X/WnYdn9Sgp7T8FEEUy/TQPuFqb4k=",
+  "rev": "a22761025cdac6c314b7e3aa48fb44fa9e594d6a",
+  "date": "2024-04-05T08:52:41-04:00",
+  "path": "/nix/store/4zxxl74gpdm4y3dcaxxy831c5zay31bw-tree-sitter-python",
+  "sha256": "1kr3rj4wszpb1bz7xjn8v5cmkp6817d1iyficpdafglv7rx89a1g",
+  "hash": "sha256-L6iEej6bPqfaZdH5GNoJyNxZWdnIyn7+Cut+zYnMI88=",
   "fetchLFS": false,
   "fetchSubmodules": false,
   "deepClone": false,
diff --git a/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-query.json b/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-query.json
index 80676906d8dd..b5ce91ba4c02 100644
--- a/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-query.json
+++ b/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-query.json
@@ -1,10 +1,10 @@
 {
   "url": "https://github.com/nvim-treesitter/tree-sitter-query",
-  "rev": "176a380df78800167565118bb0dadfc961abbd43",
-  "date": "2024-03-07T12:57:53+02:00",
-  "path": "/nix/store/wa9dwqw4z7gcsnizch00sssjfl35arpf-tree-sitter-query",
-  "sha256": "0w0f3zymch27s923j4wkxjn2rfgf2qrhsrcrxf56nxmsgbbkdlvg",
-  "hash": "sha256-b9M213q6dmuK65llDTMW7rksrOyTEzlE0kdAVv0fDnA=",
+  "rev": "2e31ca2771f6042b0e4e0c41a6290014a9e1face",
+  "date": "2024-03-26T11:42:51+02:00",
+  "path": "/nix/store/d80f3x65zd87i9zpi7z2rh28a5f03n1k-tree-sitter-query",
+  "sha256": "0g8234yicidpjqc1rc7dvpx5ja49g938w451796nnn02chxa204i",
+  "hash": "sha256-kQChOmQCWGtNOqEQjkZ6iShZ+t3tsBwYlrdFFj0ZAj0=",
   "fetchLFS": false,
   "fetchSubmodules": false,
   "deepClone": false,
diff --git a/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-rust.json b/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-rust.json
index 20b895d5d97a..3861a460d182 100644
--- a/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-rust.json
+++ b/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-rust.json
@@ -1,10 +1,10 @@
 {
   "url": "https://github.com/tree-sitter/tree-sitter-rust",
-  "rev": "3a56481f8d13b6874a28752502a58520b9139dc7",
-  "date": "2024-03-10T12:55:02-04:00",
-  "path": "/nix/store/91xc2kv7dql3waccf2ih7k55bjw03n4z-tree-sitter-rust",
-  "sha256": "12806974pngxqv1brj4r15yqzp2fdvid926n7941nylgmdw9f4z9",
-  "hash": "sha256-6ROXeKuPehtIOtaI1OJuTtyPfQmZyLzCxv3ZS04yAIk=",
+  "rev": "b77c0d8ac28a7c143224e6ed9b4f9e4bd044ff5b",
+  "date": "2024-04-08T18:09:37-04:00",
+  "path": "/nix/store/mzkmi2d933cn0imzhvfvm43rwzgv624n-tree-sitter-rust",
+  "sha256": "1i1and7lkrcpxkkm3y8p8v1d6wpb6z3b3vrxk9dlw84mwa03y97d",
+  "hash": "sha256-7SQ/gOKVIE5bmj3vscY363LTwkYX+VHn7JflSU+zKsQ=",
   "fetchLFS": false,
   "fetchSubmodules": false,
   "deepClone": false,
diff --git a/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-scheme.json b/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-scheme.json
index bdb762ed83cc..7e08f324213e 100644
--- a/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-scheme.json
+++ b/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-scheme.json
@@ -1,10 +1,10 @@
 {
   "url": "https://github.com/6cdh/tree-sitter-scheme",
-  "rev": "184e7596ee0cbaef79230cae1b4ee5bb4fbad314",
-  "date": "2024-03-15T19:06:15+08:00",
-  "path": "/nix/store/wdhalppgf16xgcrm3llj0al5dimya5pc-tree-sitter-scheme",
-  "sha256": "0sqccw5az31di8jhb88v3afryiz7a4136g9a9xq8qni4znifw7y3",
-  "hash": "sha256-wx/uov0kWoxwTyo9MwJR50efnRoboQUlii2MrwpnDGs=",
+  "rev": "8f9dff3d038f09934db5ea113cebc59c74447743",
+  "date": "2024-04-12T09:33:55+08:00",
+  "path": "/nix/store/myg0q8bjsdzgq712skhxk1vf2gqqr7b0-tree-sitter-scheme",
+  "sha256": "1n9f9zala2mv7bllwjb2nsh2xsr56zjh7j09vxzd77jnb10rjh20",
+  "hash": "sha256-QECZQVhWntN+3wnIA+U3JesuoLZiSU7pOrsKRdVPLtk=",
   "fetchLFS": false,
   "fetchSubmodules": false,
   "deepClone": false,
diff --git a/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-solidity.json b/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-solidity.json
index f777d50e6d5e..bc24e7aa108b 100644
--- a/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-solidity.json
+++ b/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-solidity.json
@@ -1,10 +1,10 @@
 {
   "url": "https://github.com/JoranHonig/tree-sitter-solidity",
-  "rev": "b239a95f94cfcc6e7b3e961bc73a28d55e214f02",
-  "date": "2024-03-12T10:13:22+00:00",
-  "path": "/nix/store/8bi3z4l3g890xgb7karzpqfinrcadk26-tree-sitter-solidity",
-  "sha256": "0kb8d6j81pv5bas7nfvq5wv12paicrv833d7iin5z0zy4y2fvqkg",
-  "hash": "sha256-b+LthCf+g19sjKeNgXZmUV0RNi94O3u0WmXfgKRpaE0=",
+  "rev": "c3da7d989747679305ec1c84b68082f01089d49f",
+  "date": "2024-04-13T15:44:09+02:00",
+  "path": "/nix/store/a9spnmq129v18p2mwh52ksnq8aj5ag0s-tree-sitter-solidity",
+  "sha256": "0ha57nxqina9jl2i1b0r38m971wk0lhxrivgb88yii0r07zdmp84",
+  "hash": "sha256-BN3a/gEZxOgRWm/H3CEFk4eTKhoZrBAFlUnZiLs9RUE=",
   "fetchLFS": false,
   "fetchSubmodules": false,
   "deepClone": false,
diff --git a/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-templ.json b/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-templ.json
index 256888ebf3fe..9173e9300fb9 100644
--- a/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-templ.json
+++ b/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-templ.json
@@ -1,10 +1,10 @@
 {
   "url": "https://github.com/vrischmann/tree-sitter-templ",
-  "rev": "592faa3186ef857c92e4bd1c31d73c07a4a334db",
-  "date": "2024-02-06T21:43:24+01:00",
-  "path": "/nix/store/nqchnmjz07500x1s9fqrvkzrzvzjls5d-tree-sitter-templ",
-  "sha256": "1i26q3ci8w14c8z5lsibpbza0xwn7cp6hl46c52c98wvr0zpwzax",
-  "hash": "sha256-XX1+P8ibo8REYYZQaC47lneg/roralo+YiRwFNnARsQ=",
+  "rev": "1f9dae9c273136551684cb41461d00e565150e23",
+  "date": "2024-04-14T01:39:30+02:00",
+  "path": "/nix/store/swrbx6wrw3k022j2g7vq625zvjbmaxnr-tree-sitter-templ",
+  "sha256": "0w9kr1awc9f30mvidz4aysqs5wk3v93yam6ybb2d2jmmnv9kx5zj",
+  "hash": "sha256-8pc+07a1StHEWt5U5UfaY/KisfaK/BZ3BcMlxlXIM3E=",
   "fetchLFS": false,
   "fetchSubmodules": false,
   "deepClone": false,
diff --git a/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-tlaplus.json b/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-tlaplus.json
index e42a0ec6fc17..eda4e2a9669c 100644
--- a/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-tlaplus.json
+++ b/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-tlaplus.json
@@ -1,10 +1,10 @@
 {
   "url": "https://github.com/tlaplus-community/tree-sitter-tlaplus",
-  "rev": "3896a5be761f04ffb22a841b2a0672f7a8a43ef9",
-  "date": "2024-03-11T11:12:33-04:00",
-  "path": "/nix/store/7dq157m7v3mq9iscmjbywm3sy1p9hgyh-tree-sitter-tlaplus",
-  "sha256": "0bjyf470anxialbmphn19r7pdnni181r45zyyfrl9db2fsgz3q0h",
-  "hash": "sha256-EODxn3ZitUSz8/4XkgMK0dp2T07BwlsXVbFbBQ5xXi4=",
+  "rev": "3c8ce503563ea04ba1cc07c468ed064b1974c3ba",
+  "date": "2024-04-12T21:02:56-04:00",
+  "path": "/nix/store/p9q0v9h09nf49ji1fnl3s87xsda7skmj-tree-sitter-tlaplus",
+  "sha256": "0vh0kdab362n1cm1nl1klqixshdzjnx5cxynadrmz021x2dx3xl7",
+  "hash": "sha256-h/bRm+hBgF9zU9Z3VrqVv0HdI6YzUBsqC1aYsVSbAG4=",
   "fetchLFS": false,
   "fetchSubmodules": false,
   "deepClone": false,
diff --git a/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-typst.json b/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-typst.json
index 4333285d9e51..1a10518cbfd3 100644
--- a/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-typst.json
+++ b/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-typst.json
@@ -1,10 +1,10 @@
 {
   "url": "https://github.com/uben0/tree-sitter-typst",
-  "rev": "77e23188c3a4287f6ff37f545722ac872a260ee8",
-  "date": "2023-12-30T18:08:13+01:00",
-  "path": "/nix/store/0zb749g1r03b3wnzfb3p98y33vyd8ybn-tree-sitter-typst",
-  "sha256": "02k5y63wh1gsfpfczrc86gkjr9ip4zqn21wbf6mxmm6qhmr5vkvz",
-  "hash": "sha256-f89dcoXY1NqrcYsHYfEnN6Ys5zOI5c/cdfoFyIfxZQo=",
+  "rev": "13863ddcbaa7b68ee6221cea2e3143415e64aea4",
+  "date": "2024-04-09T11:57:57+02:00",
+  "path": "/nix/store/y02g3bdn5nwqiykfki4fhsxmkp7y9kjm-tree-sitter-typst",
+  "sha256": "198rn8wdcqq51nz6hj1zxk7mplplr2z8vc36z6h1zpjjq925794z",
+  "hash": "sha256-n6RTRMJS3h+g+Wawjb7I9NJbz+w/SGi+DQVj1jiyGaU=",
   "fetchLFS": false,
   "fetchSubmodules": false,
   "deepClone": false,
diff --git a/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-wing.json b/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-wing.json
index 83c5a7ad6657..bb79674690e3 100644
--- a/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-wing.json
+++ b/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-wing.json
@@ -1,10 +1,10 @@
 {
   "url": "https://github.com/winglang/wing",
-  "rev": "a43b5524b0adbb553d874a6ea8d08a2d791f56c5",
-  "date": "2024-03-21T08:10:44+00:00",
-  "path": "/nix/store/v4qvjygfjjx04c5jn0p96hx5zd3skvsx-wing",
-  "sha256": "1wqj0ilb9mqbghsby5ls0qm7jf5vi2zsihnwjnksj9lnrng368xh",
-  "hash": "sha256-sCMzns2WJqmnldzCqL+Iuzh5KgaaFr80fAvXtGgEEvM=",
+  "rev": "f0b6b11709eb2ed56e5ef76a9b6fcc98615683b8",
+  "date": "2024-04-15T06:16:09+00:00",
+  "path": "/nix/store/iz1a2mwxdx9zqgdds0rfy8apq9l36xpb-wing",
+  "sha256": "105q2w5a3mx8pd0k0jhr6p3fprd85jr7fz3ndkj48yb2m8x2r1is",
+  "hash": "sha256-OoYsOqpieUTkbHZ8d7IsqOXrxjUZSjBBu6jXoQoXuIA=",
   "fetchLFS": false,
   "fetchSubmodules": false,
   "deepClone": false,
diff --git a/pkgs/development/tools/pet/default.nix b/pkgs/development/tools/pet/default.nix
index c911673e1168..bf4b4f0e633d 100644
--- a/pkgs/development/tools/pet/default.nix
+++ b/pkgs/development/tools/pet/default.nix
@@ -2,16 +2,16 @@
 
 buildGoModule rec {
   pname = "pet";
-  version = "0.7.1";
+  version = "0.8.4";
 
   src = fetchFromGitHub {
     owner = "knqyf263";
     repo = "pet";
     rev = "v${version}";
-    sha256 = "sha256-UN7UkwzMz5KGZZqfK+g3bja/dBO6oy682b8qqYgSfPU=";
+    sha256 = "sha256-XFizQxegyMIAUEKT8/kzWyC4TWICMUE7SuHQsTNpK4w=";
   };
 
-  vendorHash = "sha256-ebdPWKNL9i3sEGpfDCXIfOaFQjV5LXohug2qFXeWenk=";
+  vendorHash = "sha256-XvSg7EhFdK7wt1Eei56pj/emiE4qsVJkOpgPNsnDNc4=";
 
   ldflags = [
     "-s" "-w" "-X=github.com/knqyf263/pet/cmd.version=${version}"
diff --git a/pkgs/development/tools/profiling/pprof/default.nix b/pkgs/development/tools/profiling/pprof/default.nix
index e81446d7f12e..eba53210aa3e 100644
--- a/pkgs/development/tools/profiling/pprof/default.nix
+++ b/pkgs/development/tools/profiling/pprof/default.nix
@@ -5,20 +5,19 @@
 
 buildGoModule rec {
   pname = "pprof";
-  version = "unstable-2024-02-27";
+  version = "0-unstable-2024-05-09";
 
   src = fetchFromGitHub {
     owner = "google";
     repo = "pprof";
-    rev = "401108e1b7e7e113ef887df16b6227698eb5bb0f";
-    hash = "sha256-TD285HHXkePQA2J9W/dEciK5tOLmvbDPr54KNXeE1b4=";
+    rev = "723abb6459b72e964cbfb3f7064446bf3bb321dc";
+    hash = "sha256-zw9/xp5E5V/0D0pf5diWcx/SHX3ujwBtZNfH9tioiL0=";
   };
 
-  vendorHash = "sha256-XOcOt+pe1lZj4XHafxROLslhyJk4mTC72yn7R1k2JCk=";
+  vendorHash = "sha256-bQyloQPfweK4PlrkO1IcCFjyctj99e8C9mQbCj+HCXQ=";
 
   meta = with lib; {
     description = "A tool for visualization and analysis of profiling data";
-    mainProgram = "pprof";
     homepage = "https://github.com/google/pprof";
     license = licenses.asl20;
     longDescription = ''
@@ -41,5 +40,7 @@ buildGoModule rec {
 
       This is not an official Google product.
     '';
+    mainProgram = "pprof";
+    maintainers = with maintainers; [ hzeller ];
   };
 }
diff --git a/pkgs/development/tools/profiling/sysprof/default.nix b/pkgs/development/tools/profiling/sysprof/default.nix
index a3637a0188f8..7359fbb136fb 100644
--- a/pkgs/development/tools/profiling/sysprof/default.nix
+++ b/pkgs/development/tools/profiling/sysprof/default.nix
@@ -24,13 +24,13 @@
 
 stdenv.mkDerivation rec {
   pname = "sysprof";
-  version = "45.1";
+  version = "46.0";
 
   outputs = [ "out" "lib" "dev" ];
 
   src = fetchurl {
     url = "mirror://gnome/sources/${pname}/${lib.versions.major version}/${pname}-${version}.tar.xz";
-    sha256 = "Mju51YVhPWDEOUYDMUUAEfK5Cz1ScmJb2FjaTBnfLPk=";
+    hash = "sha256-c6p+deurPk4JRqBacj335u5CSeO56ITbo1UAq6Kh0XY=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/tools/protoc-gen-connect-go/default.nix b/pkgs/development/tools/protoc-gen-connect-go/default.nix
index b5a0e80f0b3e..516aa5927b97 100644
--- a/pkgs/development/tools/protoc-gen-connect-go/default.nix
+++ b/pkgs/development/tools/protoc-gen-connect-go/default.nix
@@ -5,16 +5,16 @@
 
 buildGoModule rec {
   pname = "protoc-gen-connect-go";
-  version = "1.16.1";
+  version = "1.16.2";
 
   src = fetchFromGitHub {
     owner = "connectrpc";
     repo = "connect-go";
     rev = "refs/tags/v${version}";
-    hash = "sha256-gYaOxUJzGcMKMrDdMou7mb66RVqChzSA1mc69O1zQv0=";
+    hash = "sha256-Ej8ya2sKtRVRQdMr63YpPbqzwtV0ZsqO+7xiif3gFr0=";
   };
 
-  vendorHash = "sha256-+bWw4/ZqMeqnkXnV+vwq2mxgvew0KmLwNcu/xA2l4HI=";
+  vendorHash = "sha256-OKTRxExgJ2V3736fIVvQX3FEa44jGngwCi2D/uk0F58=";
 
   subPackages = [
     "cmd/protoc-gen-connect-go"
diff --git a/pkgs/development/tools/protoc-gen-go/default.nix b/pkgs/development/tools/protoc-gen-go/default.nix
index 626d80eef577..cd2d261aa721 100644
--- a/pkgs/development/tools/protoc-gen-go/default.nix
+++ b/pkgs/development/tools/protoc-gen-go/default.nix
@@ -2,13 +2,13 @@
 
 buildGoModule rec {
   pname = "protoc-gen-go";
-  version = "1.33.0";
+  version = "1.34.1";
 
   src = fetchFromGitHub {
     owner = "protocolbuffers";
     repo = "protobuf-go";
     rev = "v${version}";
-    sha256 = "sha256-hA/UweNQSVzMeauIol73p9yYYCvnLcZNTYMrRWk9dBg=";
+    hash = "sha256-xbfqN/t6q5dFpg1CkxwxAQkUs8obfckMDqytYzuDwF4=";
   };
 
   vendorHash = "sha256-nGI/Bd6eMEoY0sBwWEtyhFowHVvwLKjbT4yfzFz6Z3E=";
diff --git a/pkgs/development/tools/protolint/default.nix b/pkgs/development/tools/protolint/default.nix
index 36338a665851..7da6f7851f79 100644
--- a/pkgs/development/tools/protolint/default.nix
+++ b/pkgs/development/tools/protolint/default.nix
@@ -1,16 +1,16 @@
 { lib, buildGoModule, fetchFromGitHub }:
 buildGoModule rec {
   pname = "protolint";
-  version = "0.49.6";
+  version = "0.49.7";
 
   src = fetchFromGitHub {
     owner = "yoheimuta";
     repo = pname;
     rev = "v${version}";
-    hash = "sha256-wGAHc0I2ewXJeHPH2qO6V3ScixUAMIX5U7zCBi4fqew=";
+    hash = "sha256-XXF37r9p6cAU7q3bOzkwPpy2kKXKhp944d22jtJox7k=";
   };
 
-  vendorHash = "sha256-0+GaTE/qKfPfZpkzUBglIXQoZD6fYkX6Z3QabkZ+IcE=";
+  vendorHash = "sha256-JmS80vAFP9tIyGjvASAEEY+0tk3SpNqXdZajvi9mH5E=";
 
   # Something about the way we run tests causes issues. It doesn't happen
   # when using "go test" directly:
diff --git a/pkgs/development/tools/purescript/spago/default.nix b/pkgs/development/tools/purescript/spago/default.nix
index 82d3be2fd469..b9d97c351b6d 100644
--- a/pkgs/development/tools/purescript/spago/default.nix
+++ b/pkgs/development/tools/purescript/spago/default.nix
@@ -1,7 +1,9 @@
 { haskell
+, haskellPackages
 , lib
 
 # The following are only needed for the passthru.tests:
+, spago
 , cacert
 , git
 , nodejs
@@ -9,53 +11,47 @@
 , runCommand
 }:
 
-let
-  spago =
-    lib.pipe
-      haskell.packages.ghc90.spago
-      [ haskell.lib.compose.justStaticExecutables
-        (haskell.lib.compose.overrideCabal (oldAttrs: {
-          changelog = "https://github.com/purescript/spago/releases/tag/${oldAttrs.version}";
-        }))
-      ];
-in
+lib.pipe
+  haskellPackages.spago
+  [
+    haskell.lib.compose.justStaticExecutables
 
-spago.overrideAttrs (oldAttrs: {
-  passthru = (oldAttrs.passthru or {}) // {
-    updateScript = ./update.sh;
+    (haskell.lib.compose.overrideCabal (oldAttrs: {
+      changelog = "https://github.com/purescript/spago/releases/tag/${oldAttrs.version}";
 
-    # These tests can be run with the following command.  The tests access the
-    # network, so they cannot be run in the nix sandbox.  sudo is needed in
-    # order to change the sandbox option.
-    #
-    # $ sudo nix-build -A spago.passthru.tests --option sandbox relaxed
-    #
-    tests =
-      runCommand
-        "spago-tests"
-        {
-          __noChroot = true;
-          nativeBuildInputs = [
-            cacert
-            git
-            nodejs
-            purescript
-            spago
-          ];
-        }
-        ''
-          # spago expects HOME to be set because it creates a cache file under
-          # home.
-          HOME=$(pwd)
+      passthru = (oldAttrs.passthru or {}) // {
+        updateScript = ./update.sh;
 
-          spago --verbose init
-          spago --verbose build
-          spago --verbose test
+        # These tests can be run with the following command.  The tests access the
+        # network, so they cannot be run in the nix sandbox.  sudo is needed in
+        # order to change the sandbox option.
+        #
+        # $ sudo nix-build -A spago.passthru.tests --option sandbox relaxed
+        #
+        tests =
+          runCommand
+            "spago-tests"
+            {
+              __noChroot = true;
+              nativeBuildInputs = [
+                cacert
+                git
+                nodejs
+                purescript
+                spago
+              ];
+            }
+            ''
+              # spago expects HOME to be set because it creates a cache file under
+              # home.
+              HOME=$(pwd)
 
-          touch $out
-        '';
-  };
-  meta = (oldAttrs.meta or {}) // {
-    mainProgram = "spago";
-  };
-})
+              spago --verbose init
+              spago --verbose build
+              spago --verbose test
+
+              touch $out
+            '';
+      };
+    }))
+  ]
diff --git a/pkgs/development/tools/purescript/spago/spago.nix b/pkgs/development/tools/purescript/spago/spago.nix
index e3636e16f58c..d0455081111f 100644
--- a/pkgs/development/tools/purescript/spago/spago.nix
+++ b/pkgs/development/tools/purescript/spago/spago.nix
@@ -9,16 +9,16 @@
 , optparse-applicative, prettyprinter, process, QuickCheck, retry
 , rio, rio-orphans, safe, semver-range, stm, stringsearch, tar
 , template-haskell, temporary, text, time, transformers, turtle
-, unliftio, unordered-containers, utf8-string, versions, with-utf8
-, zlib
+, unliftio, unordered-containers, uri-encode, utf8-string, versions
+, with-utf8, yaml, zlib
 }:
 mkDerivation {
   pname = "spago";
-  version = "0.20.9";
+  version = "0.21.0";
   src = fetchgit {
     url = "https://github.com/purescript/spago.git";
-    sha256 = "00vdqg7vaw3d9zwh47886lw9fhhlwjagzhaj3aqz4xm92pjavhih";
-    rev = "d16d4914200783fbd820ba89dbdf67270454faf5";
+    sha256 = "1v5y15nhw6smnir0y7y854pa70iv8asxsqph2y8rz1c9lkz5d41g";
+    rev = "c354f4a461f65fcb83aaa843830ea1589f6c7179";
     fetchSubmodules = true;
   };
   isLibrary = true;
@@ -31,7 +31,7 @@ mkDerivation {
     optparse-applicative prettyprinter process retry rio rio-orphans
     safe semver-range stm stringsearch tar template-haskell temporary
     text time transformers turtle unliftio unordered-containers
-    utf8-string versions with-utf8 zlib
+    uri-encode utf8-string versions with-utf8 yaml zlib
   ];
   executableHaskellDepends = [
     ansi-terminal base text turtle with-utf8
@@ -43,4 +43,5 @@ mkDerivation {
   testToolDepends = [ hspec-discover ];
   homepage = "https://github.com/purescript/spago#readme";
   license = lib.licenses.bsd3;
+  mainProgram = "spago";
 }
diff --git a/pkgs/development/tools/pyenv/default.nix b/pkgs/development/tools/pyenv/default.nix
index f55d7bb8fcd0..e93cb4cae934 100644
--- a/pkgs/development/tools/pyenv/default.nix
+++ b/pkgs/development/tools/pyenv/default.nix
@@ -6,13 +6,13 @@
 
 stdenv.mkDerivation rec {
   pname = "pyenv";
-  version = "2.4.0";
+  version = "2.4.1";
 
   src = fetchFromGitHub {
     owner = "pyenv";
     repo = "pyenv";
     rev = "refs/tags/v${version}";
-    hash = "sha256-urF0glUR6W2jtT3Ek3OpbpmImiQrwHGbS1/pGuTcgyA=";
+    hash = "sha256-dzL0wFAm+wUEWX6a8cgZstgdi9NMmyeDIUI5pPjJpZI=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/tools/qtcreator/default.nix b/pkgs/development/tools/qtcreator/default.nix
index 3843a989ec0b..a76d4e824434 100644
--- a/pkgs/development/tools/qtcreator/default.nix
+++ b/pkgs/development/tools/qtcreator/default.nix
@@ -30,11 +30,11 @@
 
 stdenv.mkDerivation rec {
   pname = "qtcreator";
-  version = "13.0.0";
+  version = "13.0.1";
 
   src = fetchurl {
     url = "https://download.qt.io/official_releases/${pname}/${lib.versions.majorMinor version}/${version}/qt-creator-opensource-src-${version}.tar.xz";
-    hash = "sha256-7BTwXycHFEVaLw1AuKqwLtkkHU+k8D6lOb/sWBnp4DY=";
+    hash = "sha256-gZAG0ZIfYcxnWYC8ydeVoiSM/XlhFdrUZqRFR1nasy4=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/tools/rain/default.nix b/pkgs/development/tools/rain/default.nix
index 340dc3085a8a..8132c2370458 100644
--- a/pkgs/development/tools/rain/default.nix
+++ b/pkgs/development/tools/rain/default.nix
@@ -7,16 +7,16 @@
 
 buildGoModule rec {
   pname = "rain";
-  version = "1.8.5";
+  version = "1.8.6";
 
   src = fetchFromGitHub {
     owner = "aws-cloudformation";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-AI7P5X9LNjXUQBkYTE0PCQ0xvK1CscVjnauoNVYp3GY=";
+    sha256 = "sha256-wQ767MgLSdcNm3Z1HL8VgmUk2tMFmIyACMaMhPr4lmY=";
   };
 
-  vendorHash = "sha256-CD7W+y/vQwWe7JFTl8+Zl7IKE88+Mu+Vvdr7Q1S+90w=";
+  vendorHash = "sha256-SXgyxf8pqSZzlMoOissGLBfeXueY4aSkCcd7ahT2KMA=";
 
   subPackages = [ "cmd/rain" ];
 
diff --git a/pkgs/development/tools/rbspy/default.nix b/pkgs/development/tools/rbspy/default.nix
index 6ae0df232727..2e693c7f44d3 100644
--- a/pkgs/development/tools/rbspy/default.nix
+++ b/pkgs/development/tools/rbspy/default.nix
@@ -9,16 +9,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "rbspy";
-  version = "0.19.1";
+  version = "0.20.0";
 
   src = fetchFromGitHub {
     owner = "rbspy";
     repo = "rbspy";
     rev = "refs/tags/v${version}";
-    hash = "sha256-2+miC7cp6YbeI7uucFlSdlDpPboJOhhBq7/eqXxZVqs=";
+    hash = "sha256-Ut/QeckPdgaVPYNWNjo6RCmLOc2EOXfcqRIC14I/Ruk=";
   };
 
-  cargoHash = "sha256-I+nh6cKniPIG5VYMMsABZNSP/c3DLWswsjenaQBh/X8=";
+  cargoHash = "sha256-EJ9ij3Q10CehhrJ/nyXOuqVhiVVfHHhyqIcq8fVmzTU=";
 
   # error: linker `aarch64-linux-gnu-gcc` not found
   postPatch = ''
diff --git a/pkgs/development/tools/redisinsight/default.nix b/pkgs/development/tools/redisinsight/default.nix
index 1131e495e86c..c27cd9b47dfd 100644
--- a/pkgs/development/tools/redisinsight/default.nix
+++ b/pkgs/development/tools/redisinsight/default.nix
@@ -24,28 +24,28 @@ let
 in
 stdenv.mkDerivation (finalAttrs: {
   pname = "redisinsight";
-  version = "2.32";
+  version = "2.48.0";
 
   src = fetchFromGitHub {
     owner = "RedisInsight";
     repo = "RedisInsight";
     rev = finalAttrs.version;
-    hash = "sha256-esaH10AyEooym/62F5LJL7oP5UmD6T2UX8g/9QniL9s=";
+    hash = "sha256-ek0Fp8v6j+mZPK2cEuFNrBgInXdYIKBBUg0UD1I51Sg=";
   };
 
   offlineCache = fetchYarnDeps {
     yarnLock = finalAttrs.src + "/yarn.lock";
-    hash = "sha256-NHKttywAaWAYkciGzYCnm1speHrWsv1t+dxL1DZgM7o=";
+    hash = "sha256-ohtU1h6wrg7asXDxTt1Jlzx9GaS3zDrGQD9P9tgzCOE=";
   };
 
   feOfflineCache = fetchYarnDeps {
     yarnLock = finalAttrs.src + "/redisinsight/yarn.lock";
-    hash = "sha256-1S1KNUOtmywQ0eyqVS2oRlhpjcL9eps8CR7AtC9ujSU=";
+    hash = "sha256-9xbIdDeLUEk4eNeK7RTwidqDGinA8SPfcumqml66kTw=";
   };
 
   apiOfflineCache = fetchYarnDeps {
     yarnLock = finalAttrs.src + "/redisinsight/api/yarn.lock";
-    hash = "sha256-P99+1Dhdg/vznC2KepPrVGNlrofJFydXkZVxgwprIx4=";
+    hash = "sha256-4zbffuneTceMEyKb8atTXTFhTv0DhrsRMdepZWgoxMQ=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/tools/reindeer/default.nix b/pkgs/development/tools/reindeer/default.nix
index 8b6925e860e2..e613ef36804c 100644
--- a/pkgs/development/tools/reindeer/default.nix
+++ b/pkgs/development/tools/reindeer/default.nix
@@ -11,16 +11,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "reindeer";
-  version = "2024.03.11.00";
+  version = "2024.05.13.00";
 
   src = fetchFromGitHub {
     owner = "facebookincubator";
     repo = "reindeer";
     rev = "refs/tags/v${version}";
-    hash = "sha256-cClbSJuEs4yIjx+13GSIevZO2PWEEHVDaMEmf729keA=";
+    hash = "sha256-yXHBcb4/IsT39x4J5baJ8JdgG+riJACr8DKpDdi6ARw=";
   };
 
-  cargoHash = "sha256-TtbkzU48j3dmqRocJdY8KJz/3YHYIi3SZYM/eB9zoIg=";
+  cargoHash = "sha256-PYIeXKAuYhb6OARuefYZwP9OgPMvcoKnEnbVUztBqDY=";
 
   nativeBuildInputs = [ pkg-config ];
   buildInputs =
@@ -30,9 +30,7 @@ rustPlatform.buildRustPackage rec {
       darwin.apple_sdk.frameworks.CoreServices
     ];
 
-  passthru.updateScript = nix-update-script {
-    extraArgs = [ "--version" "branch" ];
-  };
+  passthru.updateScript = nix-update-script { };
 
   meta = with lib; {
     description = "Reindeer is a tool which takes Rust Cargo dependencies and generates Buck build rules";
diff --git a/pkgs/development/tools/ruff/default.nix b/pkgs/development/tools/ruff/default.nix
index 79c438bbdc50..cc5caf9951cd 100644
--- a/pkgs/development/tools/ruff/default.nix
+++ b/pkgs/development/tools/ruff/default.nix
@@ -10,16 +10,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "ruff";
-  version = "0.4.2";
+  version = "0.4.4";
 
   src = fetchFromGitHub {
     owner = "astral-sh";
     repo = "ruff";
     rev = "refs/tags/v${version}";
-    hash = "sha256-AnAJi0srzwxU/22Uy+OjaSBdAEjCXH99J7VDvI03HDU=";
+    hash = "sha256-ViXKGcuDla428mI2Am67gtOxfia5VfR+ry2qyczXO/I=";
   };
 
-  cargoHash = "sha256-qMh2OvNYO4/0Gv/scE5/OWQMzLaetZY5DJFSeoLnISU=";
+  cargoHash = "sha256-VVdIWUQaquVX/8szJ30qPGtG6rFfRadeIvDONd8swro=";
 
   nativeBuildInputs = [
     installShellFiles
diff --git a/pkgs/development/tools/rust/cargo-about/default.nix b/pkgs/development/tools/rust/cargo-about/default.nix
index 8537cabcaca1..8ac62bdae111 100644
--- a/pkgs/development/tools/rust/cargo-about/default.nix
+++ b/pkgs/development/tools/rust/cargo-about/default.nix
@@ -1,10 +1,11 @@
-{ lib
-, rustPlatform
-, fetchFromGitHub
-, pkg-config
-, zstd
-, stdenv
-, darwin
+{
+  lib,
+  rustPlatform,
+  fetchFromGitHub,
+  pkg-config,
+  zstd,
+  stdenv,
+  darwin,
 }:
 
 rustPlatform.buildRustPackage rec {
@@ -22,9 +23,12 @@ rustPlatform.buildRustPackage rec {
 
   nativeBuildInputs = [ pkg-config ];
 
-  buildInputs = [ zstd ] ++ lib.optionals stdenv.isDarwin [
-    darwin.apple_sdk.frameworks.Security
-  ];
+  buildInputs =
+    [ zstd ]
+    ++ lib.optionals stdenv.isDarwin [
+      darwin.apple_sdk.frameworks.Security
+      darwin.apple_sdk.frameworks.SystemConfiguration
+    ];
 
   env = {
     ZSTD_SYS_USE_PKG_CONFIG = true;
@@ -34,8 +38,15 @@ rustPlatform.buildRustPackage rec {
     description = "Cargo plugin to generate list of all licenses for a crate";
     homepage = "https://github.com/EmbarkStudios/cargo-about";
     changelog = "https://github.com/EmbarkStudios/cargo-about/blob/${version}/CHANGELOG.md";
-    license = with licenses; [ mit /* or */ asl20 ];
-    maintainers = with maintainers; [ evanjs figsoda matthiasbeyer ];
+    license = with licenses; [
+      mit # or
+      asl20
+    ];
+    maintainers = with maintainers; [
+      evanjs
+      figsoda
+      matthiasbeyer
+    ];
     mainProgram = "cargo-about";
   };
 }
diff --git a/pkgs/development/tools/rust/cargo-binstall/default.nix b/pkgs/development/tools/rust/cargo-binstall/default.nix
index 8f0ae1b22dd0..3c7421f84101 100644
--- a/pkgs/development/tools/rust/cargo-binstall/default.nix
+++ b/pkgs/development/tools/rust/cargo-binstall/default.nix
@@ -11,16 +11,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "cargo-binstall";
-  version = "1.6.4";
+  version = "1.6.6";
 
   src = fetchFromGitHub {
     owner = "cargo-bins";
     repo = "cargo-binstall";
     rev = "v${version}";
-    hash = "sha256-xG2eLKqGv+wqpSGBUMoYGSQ22lrMHDpQzrSyxyHMHoc=";
+    hash = "sha256-o31/cEkQyn89URqmJpOZHG6YII8VOle1X3vwdgJF334=";
   };
 
-  cargoHash = "sha256-xNTSvJZWX19kmaFoLLHNKIrcsTFYWwN+7Ubym0hCwTA=";
+  cargoHash = "sha256-kZZ2S3XDdCREuit3RIByLXn/tEiqY+Oap242ZXx6y6s=";
 
   nativeBuildInputs = [
     pkg-config
diff --git a/pkgs/development/tools/rust/cargo-bisect-rustc/default.nix b/pkgs/development/tools/rust/cargo-bisect-rustc/default.nix
index 5c7d0d57fde0..9babac9ebade 100644
--- a/pkgs/development/tools/rust/cargo-bisect-rustc/default.nix
+++ b/pkgs/development/tools/rust/cargo-bisect-rustc/default.nix
@@ -1,13 +1,14 @@
-{ stdenv
-, lib
-, fetchFromGitHub
-, rustPlatform
-, pkg-config
-, openssl
-, runCommand
-, patchelf
-, zlib
-, Security
+{
+  stdenv,
+  lib,
+  fetchFromGitHub,
+  darwin,
+  rustPlatform,
+  pkg-config,
+  openssl,
+  runCommand,
+  patchelf,
+  zlib,
 }:
 
 rustPlatform.buildRustPackage rec {
@@ -23,41 +24,46 @@ rustPlatform.buildRustPackage rec {
 
   patches =
     let
-      patchelfPatch = runCommand "0001-dynamically-patchelf-binaries.patch"
-        {
-          CC = stdenv.cc;
-          patchelf = patchelf;
-          libPath = "$ORIGIN/../lib:${lib.makeLibraryPath [ zlib ]}";
-        }
-        ''
-          export dynamicLinker=$(cat $CC/nix-support/dynamic-linker)
-          substitute ${./0001-dynamically-patchelf-binaries.patch} $out \
-            --subst-var patchelf \
-            --subst-var dynamicLinker \
-            --subst-var libPath
-        '';
+      patchelfPatch =
+        runCommand "0001-dynamically-patchelf-binaries.patch"
+          {
+            CC = stdenv.cc;
+            patchelf = patchelf;
+            libPath = "$ORIGIN/../lib:${lib.makeLibraryPath [ zlib ]}";
+          }
+          ''
+            export dynamicLinker=$(cat $CC/nix-support/dynamic-linker)
+            substitute ${./0001-dynamically-patchelf-binaries.patch} $out \
+              --subst-var patchelf \
+              --subst-var dynamicLinker \
+              --subst-var libPath
+          '';
     in
     lib.optionals stdenv.isLinux [ patchelfPatch ];
 
   nativeBuildInputs = [ pkg-config ];
 
-  buildInputs = [
-    openssl
-  ] ++ lib.optionals stdenv.isDarwin [
-    Security
-  ];
+  buildInputs =
+    [ openssl ]
+    ++ lib.optionals stdenv.isDarwin [
+      darwin.apple_sdk.frameworks.Security
+      darwin.apple_sdk.frameworks.SystemConfiguration
+    ];
 
   cargoHash = "sha256-CgEs0cejquFRY3VN6CgbE23Gipg+LEuWp/jSIkITrjw=";
 
   checkFlags = [
-    "--skip test_github"  # requires internet
+    "--skip test_github" # requires internet
   ];
 
   meta = with lib; {
     description = "Bisects rustc, either nightlies or CI artifacts";
     mainProgram = "cargo-bisect-rustc";
     homepage = "https://github.com/rust-lang/cargo-bisect-rustc";
-    license = with licenses; [ asl20 mit ];
+    license = with licenses; [
+      asl20
+      mit
+    ];
     maintainers = with maintainers; [ davidtwco ];
   };
 }
diff --git a/pkgs/development/tools/rust/cargo-c/default.nix b/pkgs/development/tools/rust/cargo-c/default.nix
index 3356eee034bc..b370f1299277 100644
--- a/pkgs/development/tools/rust/cargo-c/default.nix
+++ b/pkgs/development/tools/rust/cargo-c/default.nix
@@ -13,16 +13,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "cargo-c";
-  version = "0.9.29";
+  version = "0.9.31";
 
   src = fetchCrate {
     inherit pname;
     # this version may need to be updated along with package version
-    version = "${version}+cargo-0.76.0";
-    hash = "sha256-Uy5Bm8WwN3jQO2btnV/ayxTlIJAe5q2FUvhxCCrn9U8=";
+    version = "${version}+cargo-0.78.0";
+    hash = "sha256-RqwUV3e02GykYH/pWHjoent+gix+CD+t3yAQxqUmo54=";
   };
 
-  cargoHash = "sha256-fkekUCZReiexdtiQcWx+Hqz4XDDbRGa4fGheBCNZ3Qw=";
+  cargoHash = "sha256-SfKDlcN+PW1twJu3YbmMsQOtFh6JHncAhdrVg+tweAE=";
 
   nativeBuildInputs = [ pkg-config (lib.getDev curl) ];
   buildInputs = [ openssl curl ] ++ lib.optionals stdenv.isDarwin [
@@ -55,6 +55,6 @@ rustPlatform.buildRustPackage rec {
     homepage = "https://github.com/lu-zero/cargo-c";
     changelog = "https://github.com/lu-zero/cargo-c/releases/tag/v${version}";
     license = licenses.mit;
-    maintainers = with maintainers; [ ];
+    maintainers = with maintainers; [ cpu ];
   };
 }
diff --git a/pkgs/development/tools/rust/cargo-component/default.nix b/pkgs/development/tools/rust/cargo-component/default.nix
index 7a791f75936e..eb216bbab11d 100644
--- a/pkgs/development/tools/rust/cargo-component/default.nix
+++ b/pkgs/development/tools/rust/cargo-component/default.nix
@@ -9,16 +9,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "cargo-component";
-  version = "0.11.0";
+  version = "0.12.0";
 
   src = fetchFromGitHub {
     owner = "bytecodealliance";
     repo = "cargo-component";
     rev = "v${version}";
-    hash = "sha256-XUzXqzgAIZKWNpfyBvkYX/g1R8JcIJlVTUb2N4zL96w=";
+    hash = "sha256-SYmKxcU2CxvIFLWoNWBjhJBxIfhZqO2LTyv8WUbuyAY=";
   };
 
-  cargoHash = "sha256-U2ocN9UENms0KZQuEu75jmxphyNGz5OYCLrh6vhvKiI=";
+  cargoHash = "sha256-ZbvZBdJ14fQxdVYvPQjCkT5o0Ip9AJyhATGLRAwFfp4=";
 
   nativeBuildInputs = [
     pkg-config
diff --git a/pkgs/development/tools/rust/cargo-deb/default.nix b/pkgs/development/tools/rust/cargo-deb/default.nix
index 236fd2f3e025..81f49e6b40d6 100644
--- a/pkgs/development/tools/rust/cargo-deb/default.nix
+++ b/pkgs/development/tools/rust/cargo-deb/default.nix
@@ -7,16 +7,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "cargo-deb";
-  version = "2.1.1";
+  version = "2.2.0";
 
   src = fetchFromGitHub {
     owner = "kornelski";
     repo = pname;
     rev = "v${version}";
-    hash = "sha256-FIBMwLgLLgf6m/ciSlYiQ46HHf1ux0QY4RkoidlaEjs=";
+    hash = "sha256-KVHci8h30cAZZffRA3e0gb1uAMv2UDiC9HkiqNaqSS4=";
   };
 
-  cargoHash = "sha256-MmHwaodr/FLxCucfCkV/Cuflyu8902kpEPuTCKkchNU=";
+  cargoHash = "sha256-swRiR+YeQVT7mMzJHQtCI4wcG9z44r34YDv8WmEPr08=";
 
   nativeBuildInputs = [
     makeWrapper
diff --git a/pkgs/development/tools/rust/cargo-deny/default.nix b/pkgs/development/tools/rust/cargo-deny/default.nix
index ad3827bc7494..a8ea1cc9c72a 100644
--- a/pkgs/development/tools/rust/cargo-deny/default.nix
+++ b/pkgs/development/tools/rust/cargo-deny/default.nix
@@ -9,16 +9,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "cargo-deny";
-  version = "0.14.22";
+  version = "0.14.23";
 
   src = fetchFromGitHub {
     owner = "EmbarkStudios";
     repo = "cargo-deny";
     rev = version;
-    hash = "sha256-04CRMlH31MzYpE2pRUrbAvSojbxan4ktqX9J/zjeTkk=";
+    hash = "sha256-TTBsxb+rC/0SL6pCZkf9HPwzExXb3UIT08cBQ4y855o=";
   };
 
-  cargoHash = "sha256-Nutx3Dvvh7qvgAtengWw0kJve4Ent9y7OXgovUZWTLE=";
+  cargoHash = "sha256-i1p/k+SGwdxp9RGXfxnJVq+E1pek7RSA50fMgVRJzCQ=";
 
   nativeBuildInputs = [
     pkg-config
diff --git a/pkgs/development/tools/rust/cargo-duplicates/default.nix b/pkgs/development/tools/rust/cargo-duplicates/default.nix
index d2f3b9c7a09d..a22d5239f4f5 100644
--- a/pkgs/development/tools/rust/cargo-duplicates/default.nix
+++ b/pkgs/development/tools/rust/cargo-duplicates/default.nix
@@ -12,16 +12,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "cargo-duplicates";
-  version = "0.5.1";
+  version = "0.6.0";
 
   src = fetchFromGitHub {
     owner = "Keruspe";
     repo = "cargo-duplicates";
     rev = "v${version}";
-    hash = "sha256-e0cegK4obUVIJyx5XKF+xicvkRvQwuObwB8tprrJnrw=";
+    hash = "sha256-OwytBecRGizkDC2S92FKAy3/mc4Jg/NwaYIPahfiG6k=";
   };
 
-  cargoHash = "sha256-i1IyHCa/w4DOGlPWjDE4IbVm3s/40DIwjwUGIMTYH4Y=";
+  cargoHash = "sha256-LsdzHCQ4uG6+dwiUoC36VPuqUf8oPlcMHxNgdkvYzu8=";
 
   nativeBuildInputs = [
     curl
diff --git a/pkgs/development/tools/rust/cargo-generate/default.nix b/pkgs/development/tools/rust/cargo-generate/default.nix
index dd6630d8d309..a63d82ddf295 100644
--- a/pkgs/development/tools/rust/cargo-generate/default.nix
+++ b/pkgs/development/tools/rust/cargo-generate/default.nix
@@ -11,16 +11,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "cargo-generate";
-  version = "0.20.0";
+  version = "0.21.0";
 
   src = fetchFromGitHub {
     owner = "cargo-generate";
     repo = "cargo-generate";
     rev = "v${version}";
-    sha256 = "sha256-k4bTuTRZMWx8mMi/hdAr4YPCWqe39fG8nkmHH2D80ew=";
+    sha256 = "sha256-utJYgbmCLi7rWKsRDZqJDCtEbVijAjnMqpYoALKO+Ho=";
   };
 
-  cargoHash = "sha256-wi1Y1eU+v9Q/4nkLNCUluPlDGfz6ld8nuVWR9orkDV4=";
+  cargoHash = "sha256-9rgdpoXNKaw850EnK6jDwT+jba/B/66PqQackx2knuk=";
 
   nativeBuildInputs = [ pkg-config ];
 
diff --git a/pkgs/development/tools/rust/cargo-llvm-lines/default.nix b/pkgs/development/tools/rust/cargo-llvm-lines/default.nix
index f3fa51fb21b0..614630549b77 100644
--- a/pkgs/development/tools/rust/cargo-llvm-lines/default.nix
+++ b/pkgs/development/tools/rust/cargo-llvm-lines/default.nix
@@ -2,16 +2,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "cargo-llvm-lines";
-  version = "0.4.37";
+  version = "0.4.39";
 
   src = fetchFromGitHub {
     owner = "dtolnay";
     repo = pname;
     rev = version;
-    hash = "sha256-9l6WkPVcc1BTRjmHa3+2Y1buLdHC5VIvpGys0fDwldY=";
+    hash = "sha256-iy8bZvF3JYnlABzhmsrzo89pmKAWQYVNSZ9HoplpWiY=";
   };
 
-  cargoHash = "sha256-MbjV3O9yDC8GHWdhWh4/sO+QfAd3kw3K5wLkZ8OlXIU=";
+  cargoHash = "sha256-vFj7U+30dcLkFJ1eet6lykTcJHzKWOSzAqPqKJrp6Gg=";
 
   meta = with lib; {
     description = "Count the number of lines of LLVM IR across all instantiations of a generic function";
diff --git a/pkgs/development/tools/rust/cargo-mutants/default.nix b/pkgs/development/tools/rust/cargo-mutants/default.nix
index fd83af91f15e..de2166f95922 100644
--- a/pkgs/development/tools/rust/cargo-mutants/default.nix
+++ b/pkgs/development/tools/rust/cargo-mutants/default.nix
@@ -7,16 +7,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "cargo-mutants";
-  version = "24.4.0";
+  version = "24.5.0";
 
   src = fetchFromGitHub {
     owner = "sourcefrog";
     repo = "cargo-mutants";
     rev = "v${version}";
-    hash = "sha256-u59NnxDFQN92BMkm2sHy8OhundFJElJ2H1SgdeLpOMs=";
+    hash = "sha256-qKgHlFb7sraXTpqf6QsOspzHGWtVZAUSOl3rl6pqQJk=";
   };
 
-  cargoHash = "sha256-7dLpqhT3v7b0I1wmn7Q6IL1M5Ul/Mu9xxrdwlI2xKAs=";
+  cargoHash = "sha256-h9nhE7pSwxE2NKJQtlA6Exwh36pC6Lp0y3u0AEh39N4=";
 
   buildInputs = lib.optionals stdenv.isDarwin [
     darwin.apple_sdk.frameworks.SystemConfiguration
diff --git a/pkgs/development/tools/rust/cargo-ndk/default.nix b/pkgs/development/tools/rust/cargo-ndk/default.nix
index 12b0b7bbdfbf..1c80788aebbd 100644
--- a/pkgs/development/tools/rust/cargo-ndk/default.nix
+++ b/pkgs/development/tools/rust/cargo-ndk/default.nix
@@ -8,16 +8,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "cargo-ndk";
-  version = "3.4.0";
+  version = "3.5.5";
 
   src = fetchFromGitHub {
     owner = "bbqsrc";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-PdRiiGRYdbnViK34PnYoLFteipoK2arw79IVOQnJKNE=";
+    sha256 = "sha256-2nL+NE4ntZbm2DdPZEoJLDeMAxaPXgrSSIvwAThlLlA=";
   };
 
-  cargoHash = "sha256-6rQwyogm62xx9JmDWfRtCpF1Rqjtt5SDYUdtZBfryuw=";
+  cargoHash = "sha256-Fa1pkHdjngJx7FwfvSQ76D61NPYC88jXqYnjWx6K2f8=";
 
   buildInputs = lib.optionals stdenv.isDarwin [
     CoreGraphics
diff --git a/pkgs/development/tools/rust/cargo-raze/default.nix b/pkgs/development/tools/rust/cargo-raze/default.nix
deleted file mode 100644
index b87d9d4570b6..000000000000
--- a/pkgs/development/tools/rust/cargo-raze/default.nix
+++ /dev/null
@@ -1,48 +0,0 @@
-{ lib
-, stdenv
-, fetchFromGitHub
-, rustPlatform
-, pkg-config
-, curl
-, libgit2
-, openssl
-, Security
-}:
-
-rustPlatform.buildRustPackage rec {
-  pname = "cargo-raze";
-  version = "0.16.0";
-
-  src = fetchFromGitHub {
-    owner = "google";
-    repo = pname;
-    rev = "v${version}";
-    hash = "sha256-ip0WuBn1b7uN/pAhOl5tfmToK73ZSHK7rucdtufsbCQ=";
-  };
-  sourceRoot = "${src.name}/impl";
-
-  cargoHash = "sha256-hNZgQwhm4UPqmANplZGxG0DYHa31tu06nmqYaCA7Vdg=";
-
-  nativeBuildInputs = [ pkg-config ];
-  buildInputs = [
-    libgit2
-    openssl
-    curl
-  ]
-  ++ lib.optional stdenv.isDarwin Security;
-
-  preCheck = lib.optionalString stdenv.isDarwin ''
-    # Darwin issue: Os { code: 24, kind: Uncategorized, message: "Too many open files" }
-    # https://github.com/google/cargo-raze/issues/544
-    ulimit -n 1024
-  '';
-
-  __darwinAllowLocalNetworking = true;
-
-  meta = with lib; {
-    description = "Generate Bazel BUILD files from Cargo dependencies";
-    homepage = "https://github.com/google/cargo-raze";
-    license = licenses.asl20;
-    maintainers = with maintainers; [ elasticdog ];
-  };
-}
diff --git a/pkgs/development/tools/rust/cargo-show-asm/default.nix b/pkgs/development/tools/rust/cargo-show-asm/default.nix
index 736d546ff2aa..077b7767886c 100644
--- a/pkgs/development/tools/rust/cargo-show-asm/default.nix
+++ b/pkgs/development/tools/rust/cargo-show-asm/default.nix
@@ -9,14 +9,14 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "cargo-show-asm";
-  version = "0.2.34";
+  version = "0.2.35";
 
   src = fetchCrate {
     inherit pname version;
-    hash = "sha256-+EzI17pnqO19A+KW1AsHtBpYZq1aENA03RkK03j31LI=";
+    hash = "sha256-23G4Re10ksoJSWRmzRjTpSGRLk3LLnkuzTjPOgf4oOk=";
   };
 
-  cargoHash = "sha256-VIfT7cXrXBE9mfHpDCI3diSD9ToRPH6UUP7ZOWvumbU=";
+  cargoHash = "sha256-OcGmlGA0relDY1Tn/edE1pX+vOhKFXJ8YeCdQ5b7ZnQ=";
 
   nativeBuildInputs = [
     installShellFiles
diff --git a/pkgs/development/tools/rust/cargo-tally/default.nix b/pkgs/development/tools/rust/cargo-tally/default.nix
index a1e2ffa295ee..c51b2e53f5b6 100644
--- a/pkgs/development/tools/rust/cargo-tally/default.nix
+++ b/pkgs/development/tools/rust/cargo-tally/default.nix
@@ -2,14 +2,14 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "cargo-tally";
-  version = "1.0.44";
+  version = "1.0.45";
 
   src = fetchCrate {
     inherit pname version;
-    hash = "sha256-CLMMrzEvw0QrlDPUfM67thzSXZ6hOfNw7mUVNdMcRgA=";
+    hash = "sha256-d0v34CUm3r9QScxrc5aKSLpNLPTK+OHAZ7JdS9A4lAw=";
   };
 
-  cargoHash = "sha256-XMuApConypaF6PNylDx9Dg2e1VvPy8m///Pnk/S14g8=";
+  cargoHash = "sha256-QNVySY5IEGXdRBwJDG2eLZ+u28X/qYcdCkFiBCpgNhE=";
 
   buildInputs = lib.optionals stdenv.isDarwin (with darwin.apple_sdk_11_0.frameworks; [
     DiskArbitration
diff --git a/pkgs/development/tools/rust/cargo-tauri/default.nix b/pkgs/development/tools/rust/cargo-tauri/default.nix
index a7737222d348..b90dca46c77d 100644
--- a/pkgs/development/tools/rust/cargo-tauri/default.nix
+++ b/pkgs/development/tools/rust/cargo-tauri/default.nix
@@ -17,20 +17,20 @@ let
 in
 rustPlatform.buildRustPackage rec {
   pname = "tauri";
-  version = "1.6.2";
+  version = "1.6.5";
 
   src = fetchFromGitHub {
     owner = "tauri-apps";
     repo = pname;
     rev = "tauri-v${version}";
-    hash = "sha256-sqBZVCVJkgqCK5JcNcJ6kKxL26XGxOA1uDlOOt/+iDo=";
+    hash = "sha256-5Hz6vJaClZ6/6KVN11dSinb4xerf/3Qiq230H8+j5q8=";
   };
 
   # Manually specify the sourceRoot since this crate depends on other crates in the workspace. Relevant info at
   # https://discourse.nixos.org/t/difficulty-using-buildrustpackage-with-a-src-containing-multiple-cargo-workspaces/10202
   sourceRoot = "${src.name}/tooling/cli";
 
-  cargoHash = "sha256-g1uDF7lL9dmZY5J8uNDAsA8dG5IVrV7MumN1w+fk1/8=";
+  cargoHash = "sha256-eb33aBG3qcMqBVY9/gzEvodS2w5rqioPAmiEKBEJIEw=";
 
   buildInputs = [ openssl ] ++ lib.optionals stdenv.isLinux [ glibc libsoup cairo gtk3 webkitgtk ]
     ++ lib.optionals stdenv.isDarwin [ CoreServices Security SystemConfiguration ];
diff --git a/pkgs/development/tools/rust/cargo-whatfeatures/default.nix b/pkgs/development/tools/rust/cargo-whatfeatures/default.nix
index e040971df830..2aa7b4760ca1 100644
--- a/pkgs/development/tools/rust/cargo-whatfeatures/default.nix
+++ b/pkgs/development/tools/rust/cargo-whatfeatures/default.nix
@@ -2,16 +2,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "cargo-whatfeatures";
-  version = "0.9.11";
+  version = "0.9.12";
 
   src = fetchFromGitHub {
     owner = "museun";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-lCS0EDSNnCii98OBZlPwwq7LBociN7zo8FZJvxt9X4w=";
+    sha256 = "sha256-62eEHxX+Gsz+Bif1ev0nTRituRkfqlGYZfa9cFkO26M=";
   };
 
-  cargoHash = "sha256-SNhulId9naSBO7UxiiX7q0RIVJngflAO2UfpxvKDIF4=";
+  cargoHash = "sha256-bk/mbQu4lzhA9ct7cws70MYuj8oNEBgC+0EjHlaN1lc=";
 
   nativeBuildInputs = [ pkg-config ];
 
diff --git a/pkgs/development/tools/rust/rust-analyzer/default.nix b/pkgs/development/tools/rust/rust-analyzer/default.nix
index f662c89f5969..14d398002382 100644
--- a/pkgs/development/tools/rust/rust-analyzer/default.nix
+++ b/pkgs/development/tools/rust/rust-analyzer/default.nix
@@ -13,14 +13,14 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "rust-analyzer-unwrapped";
-  version = "2024-04-08";
-  cargoSha256 = "sha256-lVVHp8kbi3bnDQ0lCZugGSNznJduXPftGDq7ByxXWgc=";
+  version = "2024-04-29";
+  cargoSha256 = "sha256-OvkaBWkq5c3amvDZj51iOXUrfevBMhbCaKGHmrA/23E=";
 
   src = fetchFromGitHub {
     owner = "rust-lang";
     repo = "rust-analyzer";
     rev = version;
-    sha256 = "sha256-St7ZQrkrr5lmQX9wC1ZJAFxL8W7alswnyZk9d1se3Us=";
+    sha256 = "sha256-zttBYGaoHpZfqWHQ8OI5f9OkGHCHb8tDBMySwsYNa2U=";
   };
 
   cargoBuildFlags = [ "--bin" "rust-analyzer" "--bin" "rust-analyzer-proc-macro-srv" ];
diff --git a/pkgs/development/tools/rust/svd2rust/default.nix b/pkgs/development/tools/rust/svd2rust/default.nix
index 260809a5c9bf..1844d25c706a 100644
--- a/pkgs/development/tools/rust/svd2rust/default.nix
+++ b/pkgs/development/tools/rust/svd2rust/default.nix
@@ -2,14 +2,14 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "svd2rust";
-  version = "0.33.1";
+  version = "0.33.3";
 
   src = fetchCrate {
     inherit pname version;
-    hash = "sha256-omAL/nRdB5wngOQTaZdnq9XaPnDj6kxda+27TQS7dUQ=";
+    hash = "sha256-Ed7dwVXjLOAtW9ZOh1g+yamnSzyoKo1lS4N2nyyqaJ8=";
   };
 
-  cargoHash = "sha256-YmnKZhGDQ+eqHy/KQxp3ZdCxKrZEKcS2R+5/t6HhOCg=";
+  cargoHash = "sha256-BppPMYsv0v7K6z9URYEWrz0SHPx+oe2jeP3EzydFcuI=";
 
   # error: linker `aarch64-linux-gnu-gcc` not found
   postPatch = ''
diff --git a/pkgs/development/tools/scenebuilder/default.nix b/pkgs/development/tools/scenebuilder/default.nix
index 6e0b80497f4b..14d6c8725904 100644
--- a/pkgs/development/tools/scenebuilder/default.nix
+++ b/pkgs/development/tools/scenebuilder/default.nix
@@ -6,7 +6,7 @@
 , copyDesktopItems
 , glib
 , makeWrapper
-, wrapGAppsHook
+, wrapGAppsHook3
 }:
 
 let
@@ -53,7 +53,7 @@ maven'.buildMavenPackage rec {
     copyDesktopItems
     glib
     makeWrapper
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   dontWrapGApps = true; # prevent double wrapping
diff --git a/pkgs/development/tools/sea-orm-cli/default.nix b/pkgs/development/tools/sea-orm-cli/default.nix
index a983924c0c01..98b52a55af8d 100644
--- a/pkgs/development/tools/sea-orm-cli/default.nix
+++ b/pkgs/development/tools/sea-orm-cli/default.nix
@@ -8,11 +8,11 @@
 }:
 rustPlatform.buildRustPackage rec {
   pname = "sea-orm-cli";
-  version = "0.12.10";
+  version = "0.12.15";
 
   src = fetchCrate {
     inherit pname version;
-    hash = "sha256-BVQbzP/+TJFqhnBeerYiLMpJJ8q9x582DR5X10K027U=";
+    hash = "sha256-eRsWQXaE8zzECPY+xxVIwTylbuSPT6ABamI4WNVkw8M=";
   };
 
   nativeBuildInputs = [ pkg-config ];
@@ -20,7 +20,7 @@ rustPlatform.buildRustPackage rec {
   buildInputs = [ openssl ]
     ++ lib.optionals stdenv.isDarwin [ darwin.apple_sdk.frameworks.SystemConfiguration ];
 
-  cargoHash = "sha256-qCcWReo72eHN9MoTVAmSHYVhpqw0kZ9VU/plYRcirVA=";
+  cargoHash = "sha256-sIyKkTO2DSLkRAlSUSRQYrZb8UtKZrszjn2jELNOSOU=";
 
   meta = with lib; {
     homepage = "https://www.sea-ql.org/SeaORM";
diff --git a/pkgs/development/tools/sentry-cli/default.nix b/pkgs/development/tools/sentry-cli/default.nix
index 324218082bc3..e291ed8eab37 100644
--- a/pkgs/development/tools/sentry-cli/default.nix
+++ b/pkgs/development/tools/sentry-cli/default.nix
@@ -11,13 +11,13 @@
 }:
 rustPlatform.buildRustPackage rec {
   pname = "sentry-cli";
-  version = "2.31.0";
+  version = "2.31.2";
 
   src = fetchFromGitHub {
     owner = "getsentry";
     repo = "sentry-cli";
     rev = version;
-    sha256 = "sha256-2F8f+vw559FI7CCiLkP8WLpLzDYzr3SHf/Ec8yFHu6g=";
+    sha256 = "sha256-UL8PJnz+fV67F0t24OEReF4tIUa8S2NzICYgUU7fgUo=";
   };
   doCheck = false;
 
@@ -27,7 +27,7 @@ rustPlatform.buildRustPackage rec {
   buildInputs = [ openssl ] ++ lib.optionals stdenv.isDarwin [ CoreServices Security SystemConfiguration ];
   nativeBuildInputs = [ installShellFiles pkg-config ];
 
-  cargoHash = "sha256-G/c84j9BquLCJcl60H0ZZZDxjTHpaGHflfJL/hzdgYQ=";
+  cargoHash = "sha256-S1NwnPn3PRL6GoRBFEhhNuy9StrAhG5qCDW2uWNyU4E=";
 
   postInstall = ''
     installShellCompletion --cmd sentry-cli \
diff --git a/pkgs/development/tools/skaffold/default.nix b/pkgs/development/tools/skaffold/default.nix
index a67c430dbfc1..da1a2db8c86c 100644
--- a/pkgs/development/tools/skaffold/default.nix
+++ b/pkgs/development/tools/skaffold/default.nix
@@ -2,13 +2,13 @@
 
 buildGoModule rec {
   pname = "skaffold";
-  version = "2.11.0";
+  version = "2.12.0";
 
   src = fetchFromGitHub {
     owner = "GoogleContainerTools";
     repo = "skaffold";
     rev = "v${version}";
-    hash = "sha256-xaRVgvYK6xWSy75K7AOkSw4ZjXn3xR0NqbBBbbK5MVU=";
+    hash = "sha256-q57n5Jo682u/YK+5bgYqMufjPuPOPsBgJzxSl1fdqxA=";
   };
 
   vendorHash = null;
diff --git a/pkgs/development/tools/skopeo/default.nix b/pkgs/development/tools/skopeo/default.nix
index b8f4ab5dc68d..7c66e7292566 100644
--- a/pkgs/development/tools/skopeo/default.nix
+++ b/pkgs/development/tools/skopeo/default.nix
@@ -18,13 +18,13 @@
 
 buildGoModule rec {
   pname = "skopeo";
-  version = "1.15.0";
+  version = "1.15.1";
 
   src = fetchFromGitHub {
     rev = "v${version}";
     owner = "containers";
     repo = "skopeo";
-    hash = "sha256-GMZjmKM2bFv57b2u7VjiA2OF6gD7vtoQ3ofS2rQfNrk=";
+    hash = "sha256-Zv36vSPfXcpBmxyEA8b3Xoo9HhSWtxnWPP/SubIcHDo=";
   };
 
   outputs = [ "out" "man" ];
diff --git a/pkgs/development/tools/sqldef/default.nix b/pkgs/development/tools/sqldef/default.nix
index 47f302a2ac78..7846d381aef2 100644
--- a/pkgs/development/tools/sqldef/default.nix
+++ b/pkgs/development/tools/sqldef/default.nix
@@ -2,18 +2,18 @@
 
 buildGoModule rec {
   pname = "sqldef";
-  version = "0.17.6";
+  version = "0.17.8";
 
   src = fetchFromGitHub {
     owner = "k0kubun";
     repo = "sqldef";
     rev = "v${version}";
-    hash = "sha256-VgPc78xhafRlEUfNMKiYDyWqZVtYDkqwVDQ3BG9r70w=";
+    hash = "sha256-60CN+Z5YZemYwn7eN0VZ/S8kAmQv6DBA1tCAhDLDKe0=";
   };
 
   proxyVendor = true;
 
-  vendorHash = "sha256-YmjQj116egYhcpJ9Vps1d30bfCY6pAu/mA9MEzXVJb8=";
+  vendorHash = "sha256-I1kyXotFYvnL8/FryjKJWGOYSTeXrXNB1+TNgR7q3qo=";
 
   ldflags = [ "-s" "-w" "-X main.version=${version}" ];
 
diff --git a/pkgs/development/tools/subxt/default.nix b/pkgs/development/tools/subxt/default.nix
index 6fd920e8b00c..b471f0ca5e85 100644
--- a/pkgs/development/tools/subxt/default.nix
+++ b/pkgs/development/tools/subxt/default.nix
@@ -8,16 +8,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "subxt";
-  version = "0.35.3";
+  version = "0.36.0";
 
   src = fetchFromGitHub {
     owner = "paritytech";
     repo = "subxt";
     rev = "v${version}";
-    hash = "sha256-5G5gFxr7CIvZ1RfkLIEF/z4t+wTj09fJXTNr2v0vuyg=";
+    hash = "sha256-13zPRp5lzUkQEcNpME1M8VMON0mq7VMQ90WL24fzcaI=";
   };
 
-  cargoHash = "sha256-5lAs2J5hkPhBN3tORt6N7834brS/dAkKsXvZ6C1K+OY=";
+  cargoHash = "sha256-7agdxuEVLZg1uTKyrtPnLdzMHlvdY41/w6QCDj7TC2E=";
 
   # Only build the command line client
   cargoBuildFlags = [ "--bin" "subxt" ];
diff --git a/pkgs/development/tools/supabase-cli/default.nix b/pkgs/development/tools/supabase-cli/default.nix
index cd2f0bacc96e..6311441c216d 100644
--- a/pkgs/development/tools/supabase-cli/default.nix
+++ b/pkgs/development/tools/supabase-cli/default.nix
@@ -9,16 +9,16 @@
 
 buildGoModule rec {
   pname = "supabase-cli";
-  version = "1.164.1";
+  version = "1.167.4";
 
   src = fetchFromGitHub {
     owner = "supabase";
     repo = "cli";
     rev = "v${version}";
-    hash = "sha256-VbJ/A+ohPCVf2DxODK79Va8coHMGlJBkQoSEcUvlr6Q=";
+    hash = "sha256-QRg7SskWXlNj/ob436aA2DzwSE7Zvp7BO64rNFpgmiM=";
   };
 
-  vendorHash = "sha256-mD0EmYwxCOrKcudJLr56p/bmM0uufNn4MgFTHTSa/ec=";
+  vendorHash = "sha256-X/iYUQDvzd5/BuHEVb40hapYcDVvIlMPwqQUNO6bFNE=";
 
   ldflags = [
     "-s"
diff --git a/pkgs/development/tools/swiftpm2nix/support.nix b/pkgs/development/tools/swiftpm2nix/support.nix
index dfc2d01a4501..3debda233c5f 100644
--- a/pkgs/development/tools/swiftpm2nix/support.nix
+++ b/pkgs/development/tools/swiftpm2nix/support.nix
@@ -1,6 +1,6 @@
 { lib, fetchgit, formats }:
-with lib;
 let
+  inherit (lib) concatStrings listToAttrs makeOverridable mapAttrsToList nameValuePair;
   json = formats.json { };
 in rec {
 
diff --git a/pkgs/development/tools/trunk/default.nix b/pkgs/development/tools/trunk/default.nix
index 39662c40edc1..c4ec27393a48 100644
--- a/pkgs/development/tools/trunk/default.nix
+++ b/pkgs/development/tools/trunk/default.nix
@@ -12,13 +12,13 @@ SystemConfiguration
 
 rustPlatform.buildRustPackage rec {
   pname = "trunk";
-  version = "0.18.8";
+  version = "0.20.1";
 
   src = fetchFromGitHub {
     owner = "trunk-rs";
     repo = "trunk";
     rev = "v${version}";
-    hash = "sha256-cx14IVqsu1SQezs8T1HFZ75+MPWkvf5RcvGCodW5G4A=";
+    hash = "sha256-VcTlXGfNfkbFoJiNmOp0AS0/NApgTaiZEafZSV2PuTI=";
   };
 
   nativeBuildInputs = [ pkg-config ];
@@ -28,28 +28,7 @@ rustPlatform.buildRustPackage rec {
   # requires network
   checkFlags = [ "--skip=tools::tests::download_and_install_binaries" ];
 
-  cargoHash = "sha256-zMkRCNFrfkUvq6oz/7GtaWNw9YS5NygBUYzoOAoQl40=";
-
-  # the dependency css-minify contains both README.md and Readme.md,
-  # which causes a hash mismatch on systems with a case-insensitive filesystem
-  # this removes the readme files and updates cargo's checksum file accordingly
-  depsExtraArgs = {
-    nativeBuildInputs = [
-      jq
-      moreutils
-    ];
-
-    postBuild = ''
-      pushd $name/css-minify
-
-      rm -f README.md Readme.md
-      jq 'del(.files."README.md") | del(.files."Readme.md")' \
-        .cargo-checksum.json -c \
-        | sponge .cargo-checksum.json
-
-      popd
-    '';
-  };
+  cargoHash = "sha256-jXp6B9eTYKfDgzzgp1oRMzwVJOzsh9h0+igQLBZmdsk=";
 
   meta = with lib; {
     homepage = "https://github.com/trunk-rs/trunk";
diff --git a/pkgs/development/tools/ttfb/default.nix b/pkgs/development/tools/ttfb/default.nix
index 145144528fef..c2c599f32ff7 100644
--- a/pkgs/development/tools/ttfb/default.nix
+++ b/pkgs/development/tools/ttfb/default.nix
@@ -7,18 +7,18 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "ttfb";
-  version = "1.11.0";
+  version = "1.12.0";
 
   src = fetchCrate {
     inherit pname version;
-    hash = "sha256-38mhwYfWoMZzdbkgv65hBpX23wCpAWwiahuzO5xRpmA=";
+    hash = "sha256-Cdup65w31wF1RZu0g4/msHfLESrNTcuCU5kxkk0gnW8=";
   };
 
   buildInputs = lib.optionals stdenv.isDarwin [
     darwin.apple_sdk.frameworks.Security
   ];
 
-  cargoHash = "sha256-Gqv4XvG3aYMRdMP1mzUlsCPN+NMLHq2nf283KBQCems==";
+  cargoHash = "sha256-U8CG0GqnUwya+ZK0qXtOFZ/MbbqSvB5egX7XJKtl88g=";
 
   # The bin feature activates all dependencies of the binary. Otherwise,
   # only the library is build.
diff --git a/pkgs/development/tools/turso-cli/default.nix b/pkgs/development/tools/turso-cli/default.nix
index 4b93bbd8442e..322d46ac2f56 100644
--- a/pkgs/development/tools/turso-cli/default.nix
+++ b/pkgs/development/tools/turso-cli/default.nix
@@ -8,13 +8,13 @@
 }:
 buildGoModule rec {
   pname = "turso-cli";
-  version = "0.93.0";
+  version = "0.93.8";
 
   src = fetchFromGitHub {
     owner = "tursodatabase";
     repo = "turso-cli";
     rev = "v${version}";
-    hash = "sha256-Q5SVudzJZJ5ftp5Xfeb75XQO44upGKlxQ/WceSSwHyU=";
+    hash = "sha256-glY1xWu38wZLo9eyPAR4NtGDfLl1BkaN+WICIACHECo=";
   };
 
   vendorHash = "sha256-2NjdjB09WYzHjQEl2hMUWN1/xsj/Hlr8lVYU/pkxTqQ=";
diff --git a/pkgs/development/tools/vala-lint/default.nix b/pkgs/development/tools/vala-lint/default.nix
index b3f4987146b8..8fd63f6e30a3 100644
--- a/pkgs/development/tools/vala-lint/default.nix
+++ b/pkgs/development/tools/vala-lint/default.nix
@@ -9,13 +9,13 @@
 , pkg-config
 , vala
 , gettext
-, wrapGAppsHook
+, wrapGAppsHook3
 , unstableGitUpdater
 }:
 
 stdenv.mkDerivation rec {
   pname = "vala-lint";
-  version = "unstable-2023-12-05";
+  version = "0-unstable-2023-12-05";
 
   src = fetchFromGitHub {
     owner = "vala-lang";
@@ -30,7 +30,7 @@ stdenv.mkDerivation rec {
     ninja
     pkg-config
     vala
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
diff --git a/pkgs/development/tools/vsce/default.nix b/pkgs/development/tools/vsce/default.nix
index a2be7f3abde5..45aa3f6ba509 100644
--- a/pkgs/development/tools/vsce/default.nix
+++ b/pkgs/development/tools/vsce/default.nix
@@ -12,13 +12,13 @@
 
 buildNpmPackage rec {
   pname = "vsce";
-  version = "2.26.0";
+  version = "2.26.1";
 
   src = fetchFromGitHub {
     owner = "microsoft";
     repo = "vscode-vsce";
     rev = "v${version}";
-    hash = "sha256-ILu09OerH5XNVN4el3R2GH2LtIzXiQ/ONU+W2pomHRg=";
+    hash = "sha256-VL7OMtboD3rUNWQbb10i1qL7MpuUsM8/DbBKLUl6DSs=";
   };
 
   npmDepsHash = "sha256-EtzcWeqPy4XVlheBXBpSwxrsHJ678lhTgnYqzIYZn4M=";
diff --git a/pkgs/development/tools/wabt/default.nix b/pkgs/development/tools/wabt/default.nix
index 64b8f4dd474c..3f61a7906b73 100644
--- a/pkgs/development/tools/wabt/default.nix
+++ b/pkgs/development/tools/wabt/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "wabt";
-  version = "1.0.34";
+  version = "1.0.35";
 
   src = fetchFromGitHub {
     owner = "WebAssembly";
     repo = "wabt";
     rev = version;
-    sha256 = "sha256-KlaMc3k1y6KviMDrMbKPcJOywJasrPZrnvSos8hgu+8=";
+    sha256 = "sha256-oWyHR2HRDA/N5Rm9EXhOi+lZ2N7In6HmE74ZL2Nyu9A=";
     fetchSubmodules = true;
   };
 
diff --git a/pkgs/development/tools/wails/default.nix b/pkgs/development/tools/wails/default.nix
index 7ebd579ae2df..9a158be022f3 100644
--- a/pkgs/development/tools/wails/default.nix
+++ b/pkgs/development/tools/wails/default.nix
@@ -14,16 +14,16 @@
 
 buildGoModule rec {
   pname = "wails";
-  version = "2.8.1";
+  version = "2.8.2";
 
   src = fetchFromGitHub {
     owner = "wailsapp";
     repo = pname;
     rev = "v${version}";
-    hash = "sha256-yIoCKnYKky+BlMjGBNRk0lKyxr3UWMdRsvyW2KUItBk=";
+    hash = "sha256-oJ/kxYphBTXxt7Da1x4GW/a78YV+m32iC/4N3MDjU/A=";
   } + "/v2";
 
-  vendorHash = "sha256-6QFnLuRnSzIqkQkK1qg7VBYxwjK8fSQWz5RxpuyutoY=";
+  vendorHash = "sha256-15Vo4AKmd9qOF0ea1klTlrXJOUs+IHvsNT2rw4R7ZiU=";
 
   proxyVendor = true;
 
diff --git a/pkgs/development/tools/wasm-bindgen-cli/default.nix b/pkgs/development/tools/wasm-bindgen-cli/default.nix
index afc968a3865f..6fce69be410a 100644
--- a/pkgs/development/tools/wasm-bindgen-cli/default.nix
+++ b/pkgs/development/tools/wasm-bindgen-cli/default.nix
@@ -8,9 +8,9 @@
 , stdenv
 , curl
 , Security
-, version ? "0.2.91"
-, hash ? "sha256-f/RK6s12ItqKJWJlA2WtOXtwX4Y0qa8bq/JHlLTAS3c="
-, cargoHash ? "sha256-3vxVI0BhNz/9m59b+P2YEIrwGwlp7K3pyPKt4VqQuHE="
+, version ? "0.2.92"
+, hash ? "sha256-1VwY8vQy7soKEgbki4LD+v259751kKxSxmo/gqE6yV0="
+, cargoHash ? "sha256-aACJ+lYNEU8FFBs158G1/JG8sc6Rq080PeKCMnwdpH0="
 }:
 
 rustPlatform.buildRustPackage rec {
diff --git a/pkgs/development/tools/wgo/default.nix b/pkgs/development/tools/wgo/default.nix
index e6a848a57a51..863d53bb0971 100644
--- a/pkgs/development/tools/wgo/default.nix
+++ b/pkgs/development/tools/wgo/default.nix
@@ -5,7 +5,7 @@
 
 let
   pname = "wgo";
-  version = "0.5.6c";
+  version = "0.5.6d";
 in
 buildGoModule {
   inherit pname version;
@@ -14,7 +14,7 @@ buildGoModule {
     owner = "bokwoon95";
     repo = "wgo";
     rev = "v${version}";
-    hash = "sha256-/blUmuUbM+GhczKj731TeYQN1BOunpQs6q3K/4FQiE8=";
+    hash = "sha256-PzBje046mS844zpU5X1eoRcULJH8sh49yf8lrxeA764=";
   };
 
   vendorHash = "sha256-w6UJxZToHbbQmuXkyqFzyssFcE+7uVNqOuIF/XKdEsU=";
diff --git a/pkgs/development/tools/yamlfmt/default.nix b/pkgs/development/tools/yamlfmt/default.nix
index 5f8c043b196f..3b7fbc20ca38 100644
--- a/pkgs/development/tools/yamlfmt/default.nix
+++ b/pkgs/development/tools/yamlfmt/default.nix
@@ -2,16 +2,16 @@
 
 buildGoModule rec {
   pname = "yamlfmt";
-  version = "0.11.0";
+  version = "0.12.1";
 
   src = fetchFromGitHub {
     owner = "google";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-7+ui5jEJkjejAZRdM+okoF3Qw8SJSTKJS7LNNnBgz0g=";
+    sha256 = "sha256-VAXDkD4JLoiTomCNtuex/ZEAZtWDEEg5cxETYemvQW8=";
   };
 
-  vendorHash = "sha256-JiFVc2+LcCgvnEX6W4XBtIgXcILEO2HZT4DTp62eUJU=";
+  vendorHash = "sha256-UfULQw7wAEJjTFp6+ACF5Ki04eFKeUEgmbt1c8pUolA=";
 
   doCheck = false;
 
diff --git a/pkgs/development/tools/yarn-berry/default.nix b/pkgs/development/tools/yarn-berry/default.nix
index 47ddf77634bf..b7caeb4f823e 100644
--- a/pkgs/development/tools/yarn-berry/default.nix
+++ b/pkgs/development/tools/yarn-berry/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation (finalAttrs: {
   pname = "yarn-berry";
-  version = "4.1.1";
+  version = "4.2.2";
 
   src = fetchFromGitHub {
     owner = "yarnpkg";
     repo = "berry";
     rev = "@yarnpkg/cli/${finalAttrs.version}";
-    hash = "sha256-75bERA1uZeywMjYznFDyk4+AtVDLo7eIajVtWdAD/RA=";
+    hash = "sha256-dOWcfeWotWgx1ctY/TEuxH1gkgp9Gxou6jaymJMBHLE=";
   };
 
   buildInputs = [
diff --git a/pkgs/development/tools/yq-go/default.nix b/pkgs/development/tools/yq-go/default.nix
index f4d8137c33eb..f54f77113e42 100644
--- a/pkgs/development/tools/yq-go/default.nix
+++ b/pkgs/development/tools/yq-go/default.nix
@@ -2,16 +2,16 @@
 
 buildGoModule rec {
   pname = "yq-go";
-  version = "4.43.1";
+  version = "4.44.1";
 
   src = fetchFromGitHub {
     owner = "mikefarah";
     repo = "yq";
     rev = "v${version}";
-    hash = "sha256-AQOHVuDREp6OpwlPFwpCUOQACOsDRH0uM6WwKyEK4JI=";
+    hash = "sha256-5l948J0NTeWOeUMlcoEQZws8viqtARdkJsGch4c6Trw=";
   };
 
-  vendorHash = "sha256-9GCqZS0fguJo8GkVPMgbstEVzrjIS0kdbNQEaT1HSFI=";
+  vendorHash = "sha256-j5vcx5wW2v1kNc2QCPR11JEb1fTA9q4E4mbJ2VJC37A=";
 
   nativeBuildInputs = [ installShellFiles ];
 
diff --git a/pkgs/development/web/bloomrpc/default.nix b/pkgs/development/web/bloomrpc/default.nix
index 87ef45ba981b..b2f3dbae4a25 100644
--- a/pkgs/development/web/bloomrpc/default.nix
+++ b/pkgs/development/web/bloomrpc/default.nix
@@ -21,9 +21,6 @@ appimageTools.wrapType2 {
     export LC_ALL=C.UTF-8
   '';
 
-  multiArch = false; # no 32bit needed
-  extraPkgs = pkgs: appimageTools.defaultFhsEnvArgs.multiPkgs pkgs ++ [ pkgs.bash ];
-
   extraInstallCommands = ''
     install -m 444 -D ${appimageContents}/${pname}.desktop $out/share/applications/${pname}.desktop
     install -m 444 -D ${appimageContents}/${pname}.png \
diff --git a/pkgs/development/web/bun/default.nix b/pkgs/development/web/bun/default.nix
index 52b20dee8b15..38f926c22eca 100644
--- a/pkgs/development/web/bun/default.nix
+++ b/pkgs/development/web/bun/default.nix
@@ -12,7 +12,7 @@
 }:
 
 stdenvNoCC.mkDerivation rec {
-  version = "1.1.6";
+  version = "1.1.8";
   pname = "bun";
 
   src = passthru.sources.${stdenvNoCC.hostPlatform.system} or (throw "Unsupported system: ${stdenvNoCC.hostPlatform.system}");
@@ -51,19 +51,19 @@ stdenvNoCC.mkDerivation rec {
     sources = {
       "aarch64-darwin" = fetchurl {
         url = "https://github.com/oven-sh/bun/releases/download/bun-v${version}/bun-darwin-aarch64.zip";
-        hash = "sha256-ffEu37NAT/74l1Kkr+e1hAkawbSeZlTQcHbqg/7jYOQ=";
+        hash = "sha256-n5ElTDuD0fap+llzrXN7de937jYaAG8dpJlKUB0npT4=";
       };
       "aarch64-linux" = fetchurl {
         url = "https://github.com/oven-sh/bun/releases/download/bun-v${version}/bun-linux-aarch64.zip";
-        hash = "sha256-qKWtazbPfPjDxLChZ0FVyV2qQhPUHwF4wpHrFdCRlYg=";
+        hash = "sha256-4/kEyaF2kmu8MAjlrPgBqKFDId8bBibu3Zll3b0w8Ro=";
       };
       "x86_64-darwin" = fetchurl {
         url = "https://github.com/oven-sh/bun/releases/download/bun-v${version}/bun-darwin-x64.zip";
-        hash = "sha256-a3ol9tkKyVa6MoBq5cscRLAS5o8OCcIUX43opKtePos=";
+        hash = "sha256-btyslaKqdk86whAnQV0on7NWTBTRTegFvMsOl0YyloY=";
       };
       "x86_64-linux" = fetchurl {
         url = "https://github.com/oven-sh/bun/releases/download/bun-v${version}/bun-linux-x64.zip";
-        hash = "sha256-IzjuIPXljt8EStcRdGj55SWIpqJdGQeVZVAS5u9sW+Y=";
+        hash = "sha256-JuDT+8FHbamdMVCDeSTGPYOvhPY2EZ9XeD2zjHEj36Y=";
       };
     };
     updateScript = writeShellScript "update-bun" ''
diff --git a/pkgs/development/web/cog/default.nix b/pkgs/development/web/cog/default.nix
index c350149f32e2..0a9be7e5682b 100644
--- a/pkgs/development/web/cog/default.nix
+++ b/pkgs/development/web/cog/default.nix
@@ -10,7 +10,7 @@
 , glib-networking
 , webkitgtk
 , makeWrapper
-, wrapGAppsHook
+, wrapGAppsHook3
 , gnome
 , gdk-pixbuf
 }:
@@ -42,7 +42,7 @@ stdenv.mkDerivation rec {
     pkg-config
     wayland
     makeWrapper
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   depsBuildsBuild = [
diff --git a/pkgs/development/web/cypress/default.nix b/pkgs/development/web/cypress/default.nix
index dedd94230b8c..8ce3c5aef739 100644
--- a/pkgs/development/web/cypress/default.nix
+++ b/pkgs/development/web/cypress/default.nix
@@ -10,7 +10,7 @@
 , stdenv
 , udev
 , unzip
-, wrapGAppsHook
+, wrapGAppsHook3
 , xorg
 }:
 
@@ -40,7 +40,7 @@ in stdenv.mkDerivation rec {
   # don't remove runtime deps
   dontPatchELF = true;
 
-  nativeBuildInputs = [ autoPatchelfHook wrapGAppsHook unzip ];
+  nativeBuildInputs = [ autoPatchelfHook wrapGAppsHook3 unzip ];
 
   buildInputs = with xorg; [
     libXScrnSaver
diff --git a/pkgs/development/web/deno/default.nix b/pkgs/development/web/deno/default.nix
index d9c4220d671d..068bee73e1b2 100644
--- a/pkgs/development/web/deno/default.nix
+++ b/pkgs/development/web/deno/default.nix
@@ -13,16 +13,16 @@
 }:
 rustPlatform.buildRustPackage rec {
   pname = "deno";
-  version = "1.42.4";
+  version = "1.43.1";
 
   src = fetchFromGitHub {
     owner = "denoland";
     repo = pname;
     rev = "v${version}";
-    hash = "sha256-O9R+i7hTKhRJ0UgjnylMOgQyDGqBeOUy7h3g/e1pTHM=";
+    hash = "sha256-Y/1c0b7CmT5jzgkRGzEnTNmUiLn5oDf5jTvzU2SU0RA=";
   };
 
-  cargoHash = "sha256-FsbmuOc+u8ZSu3lgS3oGTiwfWovQewuSPfL3HYKtwJk=";
+  cargoHash = "sha256-Hoe22bToJ+2nZeq9iy2XXwbXDEbfRjW1g3rhcT3Og04=";
 
   postPatch = ''
     # upstream uses lld on aarch64-darwin for faster builds
diff --git a/pkgs/development/web/deno/librusty_v8.nix b/pkgs/development/web/deno/librusty_v8.nix
index 73738af55213..c4b2d814ef30 100644
--- a/pkgs/development/web/deno/librusty_v8.nix
+++ b/pkgs/development/web/deno/librusty_v8.nix
@@ -10,11 +10,11 @@ let
   };
 in
 fetch_librusty_v8 {
-  version = "0.90.1";
+  version = "0.91.0";
   shas = {
-    x86_64-linux = "sha256-lEGvxBY91cg4GOTUCoLnKeZOcKOl+sdASe/q+s3epkM=";
-    aarch64-linux = "sha256-Z9cR1cIBlAFcPghFIMHzW0JP8g5yioK2Vgk1/tGEO0s=";
-    x86_64-darwin = "sha256-F/r36lmeQeraotkjK7F7XapXmmMZRRCoD4b5wR0gpCY=";
-    aarch64-darwin = "sha256-pE2wGU8YYU4pQlc8oQRYsEx2b0MTkGAwVrn6xW22vrk=";
+    x86_64-linux = "sha256-xLQnHOUuZq24/LhXJ1PgspI/Mpip3XSLMVQE/nh4chE=";
+    aarch64-linux = "sha256-zt05idUKlyPuVk8+N219dTfhtlcObO+cBb41Z6TTwfs=";
+    x86_64-darwin = "sha256-AFEUZO3aKNy4rEk9Mi611cuduE5p5lkE23RzLOTPP4Q=";
+    aarch64-darwin = "sha256-fldGauOMYSwWWP/kF0Ifp5s20h6akbb5sI8iw1hj/6s=";
   };
 }
diff --git a/pkgs/development/web/flyctl/default.nix b/pkgs/development/web/flyctl/default.nix
index 489a38efcf12..8ca6eca5268b 100644
--- a/pkgs/development/web/flyctl/default.nix
+++ b/pkgs/development/web/flyctl/default.nix
@@ -2,16 +2,16 @@
 
 buildGo122Module rec {
   pname = "flyctl";
-  version = "0.2.46";
+  version = "0.2.52";
 
   src = fetchFromGitHub {
     owner = "superfly";
     repo = "flyctl";
     rev = "v${version}";
-    hash = "sha256-x7ICqPm3c2bpNb18vNxZVlkxtgCL2GqLMv8TxI7cUfg=";
+    hash = "sha256-BCnMXyS94tuD+Un1DLqs3mdGi7XrVBoZGJ/XkpACOQI";
   };
 
-  vendorHash = "sha256-tLlWPKMRPFyMDZGkdjb/hF/7/OPpducGXyGlXExBG64=";
+  vendorHash = "sha256-eTiY65VGFBgGzCOrnp/WbOo9Lbdk4PYwT7CppjsZ4WE=";
 
   subPackages = [ "." ];
 
diff --git a/pkgs/development/web/ihp-new/default.nix b/pkgs/development/web/ihp-new/default.nix
index 63cd36581078..76e66a7ae454 100644
--- a/pkgs/development/web/ihp-new/default.nix
+++ b/pkgs/development/web/ihp-new/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "ihp-new";
-  version = "1.2.0";
+  version = "1.3.0";
 
   src = fetchFromGitHub {
     owner = "digitallyinduced";
     repo = "ihp";
     rev = "v${version}";
-    sha256 = "sha256-oQz7ZBrHe6WwYMwnxxUgnYM55CuH5Oxjz6mrLnYbB7U=";
+    sha256 = "sha256-DmaIr9kF+TG24wVNPVufxC74TYMCLziLYS9hCZHBDTc=";
   };
 
   dontConfigure = true;
diff --git a/pkgs/development/web/insomnia/default.nix b/pkgs/development/web/insomnia/default.nix
index 422c6b737889..0d9b0e422b50 100644
--- a/pkgs/development/web/insomnia/default.nix
+++ b/pkgs/development/web/insomnia/default.nix
@@ -1,6 +1,6 @@
 { lib, stdenv, makeWrapper, fetchurl, dpkg, alsa-lib, atk, cairo, cups, dbus, expat
 , fontconfig, freetype, gdk-pixbuf, glib, pango, mesa, nspr, nss, gtk3
-, at-spi2-atk, gsettings-desktop-schemas, gobject-introspection, wrapGAppsHook
+, at-spi2-atk, gsettings-desktop-schemas, gobject-introspection, wrapGAppsHook3
 , libX11, libXScrnSaver, libXcomposite, libXcursor, libXdamage, libXext
 , libXfixes, libXi, libXrandr, libXrender, libXtst, libxcb, libxshmfence, nghttp2
 , libudev0-shim, glibc, curl, openssl, autoPatchelfHook }:
@@ -28,7 +28,7 @@ in stdenv.mkDerivation rec {
     dpkg
     makeWrapper
     gobject-introspection
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
diff --git a/pkgs/development/web/nodejs/node-npm-build-npm-package-logic.patch b/pkgs/development/web/nodejs/node-npm-build-npm-package-logic.patch
index a9ac6b0589ef..a24ab07a3d80 100644
--- a/pkgs/development/web/nodejs/node-npm-build-npm-package-logic.patch
+++ b/pkgs/development/web/nodejs/node-npm-build-npm-package-logic.patch
@@ -49,7 +49,7 @@ index 1fa8b1f96..a026bb50d 100644
 +      if (process.env['NIX_NODEJS_BUILDNPMPACKAGE']) {
 +        const spawn = require('@npmcli/promise-spawn')
 +
-+        const npmWithNixFlags = (args, cmd) => spawn('bash', ['-c', 'npm ' + args + ` $npm${cmd}Flags "$\{npm${cmd}FlagsArray[@]}" $npmFlags "$\{npmFlagsArray[@]}"`], { cwd: dir, env: { ...process.env, _PACOTE_NO_PREPARE_: noPrepare.join('\n') } }, { message: `\`npm ${args}\` failed` })
++        const npmWithNixFlags = (args, cmd) => spawn('bash', ['-c', 'npm ' + args + ` $npm${cmd}Flags "$\{npm${cmd}FlagsArray[@]}" $npmFlags "$\{npmFlagsArray[@]}" || [ -n "$forceGitDeps" ]`], { cwd: dir, env: { ...process.env, _PACOTE_NO_PREPARE_: noPrepare.join('\n') } }, { message: `\`npm ${args}\` failed` })
 +        const patchShebangs = () => spawn('bash', ['-c', 'source $stdenv/setup; patchShebangs node_modules'], { cwd: dir })
 +
 +        // the DirFetcher will do its own preparation to run the prepare scripts
@@ -57,7 +57,7 @@ index 1fa8b1f96..a026bb50d 100644
 +        //
 +        // We ignore this.npmConfig to maintain an environment that's as close
 +        // to the rest of the build as possible.
-+        return spawn('bash', ['-c', '$prefetchNpmDeps --fixup-lockfile package-lock.json'], { cwd: dir })
++        return spawn('bash', ['-c', '$prefetchNpmDeps --fixup-lockfile package-lock.json || [ -n "$forceGitDeps" ]'], { cwd: dir })
 +        .then(() => npmWithNixFlags('ci --ignore-scripts', 'Install'))
 +        .then(patchShebangs)
 +        .then(() => npmWithNixFlags('rebuild', 'Rebuild'))
diff --git a/pkgs/development/web/nodejs/v22.nix b/pkgs/development/web/nodejs/v22.nix
index a72f22b6f498..676ef1c7e545 100644
--- a/pkgs/development/web/nodejs/v22.nix
+++ b/pkgs/development/web/nodejs/v22.nix
@@ -8,8 +8,8 @@ let
 in
 buildNodejs {
   inherit enableNpm;
-  version = "22.0.0";
-  sha256 = "sha256-IuKPv/MfaQc7gCTLQnReUQX4QEHzR1smC5fVoUEDnRo=";
+  version = "22.2.0";
+  sha256 = "sha256-iJkIqIKNFISRDX5lm2qlet6NUo/w45Dpp372WadihHQ=";
   patches = [
     ./disable-darwin-v8-system-instrumentation-node19.patch
     ./bypass-darwin-xcrun-node16.patch
diff --git a/pkgs/development/web/postman/darwin.nix b/pkgs/development/web/postman/darwin.nix
index 4e47a153fab3..79458298dcc1 100644
--- a/pkgs/development/web/postman/darwin.nix
+++ b/pkgs/development/web/postman/darwin.nix
@@ -11,12 +11,12 @@ let
   dist = {
     aarch64-darwin = {
       arch = "arm64";
-      sha256 = "sha256-P7x06KKH0e1Yro93SCEJyiWS/Uv25tWU8A85vxv85hI=";
+      sha256 = "sha256-V+JLXl12DnwZlPF0qNs2lQqRpWbSDiPXDTtl4FGcZcM=";
     };
 
     x86_64-darwin = {
       arch = "64";
-      sha256 = "sha256-/jlLU5NKF8sNZ49n90219b/oiVFT8EkFx2oYhIk8Tgw=";
+      sha256 = "sha256-l7J4Rrq+kUyk+0Chq5qo50K1VXC/7E3FC/hQ1DQ0PGA=";
     };
   }.${stdenvNoCC.hostPlatform.system} or (throw "Unsupported system: ${stdenvNoCC.hostPlatform.system}");
 
diff --git a/pkgs/development/web/postman/default.nix b/pkgs/development/web/postman/default.nix
index 0765c711e4f8..f9684f64feeb 100644
--- a/pkgs/development/web/postman/default.nix
+++ b/pkgs/development/web/postman/default.nix
@@ -2,7 +2,7 @@
 
 let
   pname = "postman";
-  version = "10.23.5";
+  version = "11.1.0";
   meta = with lib; {
     homepage = "https://www.getpostman.com";
     description = "API Development Environment";
diff --git a/pkgs/development/web/postman/linux.nix b/pkgs/development/web/postman/linux.nix
index 763337fd2538..3784cca31ae5 100644
--- a/pkgs/development/web/postman/linux.nix
+++ b/pkgs/development/web/postman/linux.nix
@@ -2,7 +2,7 @@
 , stdenv
 , fetchurl
 , makeDesktopItem
-, wrapGAppsHook
+, wrapGAppsHook3
 , atk
 , at-spi2-atk
 , at-spi2-core
@@ -54,12 +54,12 @@ let
   dist = {
     aarch64-linux = {
       arch = "arm64";
-      sha256 = "sha256-esboLFqCziTlCFHyK6GxFq9Rik9jHiqX6ED0D53P1K4=";
+      sha256 = "sha256-yq2J5KRv/NJDaQG7e7RKyzbJqKWRolSU9X6khHxlrNo=";
     };
 
     x86_64-linux = {
       arch = "64";
-      sha256 = "sha256-NH5bfz74/WIXbNdYs6Hoh/FF54v2+b4Ci5T7Y095Akw=";
+      sha256 = "sha256-fAaxrLZSXGBYr4Vu0Cz2pZwXivSTkaIF5wL217cB9qM=";
     };
   }.${stdenv.hostPlatform.system} or (throw "Unsupported system: ${stdenv.hostPlatform.system}");
 
@@ -126,7 +126,7 @@ stdenv.mkDerivation rec {
     xorg.libxshmfence
   ];
 
-  nativeBuildInputs = [ wrapGAppsHook copyDesktopItems ];
+  nativeBuildInputs = [ wrapGAppsHook3 copyDesktopItems ];
 
   installPhase = ''
     runHook preInstall
diff --git a/pkgs/development/web/publii/default.nix b/pkgs/development/web/publii/default.nix
index e09e21f174a7..9792f2686454 100644
--- a/pkgs/development/web/publii/default.nix
+++ b/pkgs/development/web/publii/default.nix
@@ -3,7 +3,7 @@
 , fetchurl
 , autoPatchelfHook
 , makeShellWrapper
-, wrapGAppsHook
+, wrapGAppsHook3
 , alsa-lib
 , at-spi2-atk
 , at-spi2-core
@@ -39,7 +39,7 @@ stdenv.mkDerivation rec {
   nativeBuildInputs = [
     autoPatchelfHook
     makeShellWrapper
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
diff --git a/pkgs/games/0ad/game.nix b/pkgs/games/0ad/game.nix
index eadb8bd27457..f85c9becb8d1 100644
--- a/pkgs/games/0ad/game.nix
+++ b/pkgs/games/0ad/game.nix
@@ -125,5 +125,6 @@ stdenv.mkDerivation rec {
     ];
     maintainers = with maintainers; [ chvp ];
     platforms = subtractLists platforms.i686 platforms.linux;
+    mainProgram = "0ad";
   };
 }
diff --git a/pkgs/games/chiaki4deck/default.nix b/pkgs/games/chiaki4deck/default.nix
index 83af55da1d01..fad7a26e356f 100644
--- a/pkgs/games/chiaki4deck/default.nix
+++ b/pkgs/games/chiaki4deck/default.nix
@@ -1,6 +1,5 @@
 { lib
 , fetchFromGitHub
-, fetchpatch
 , stdenv
 , cmake
 , pkg-config
@@ -19,7 +18,9 @@
 , libevdev
 , udev
 , hidapi
+, json_c
 , fftw
+, miniupnpc
 , speexdsp
 , libplacebo
 , vulkan-loader
@@ -33,13 +34,13 @@
 
 stdenv.mkDerivation rec {
   pname = "chiaki4deck";
-  version = "1.6.6";
+  version = "1.7.0";
 
   src = fetchFromGitHub {
     owner = "streetpea";
     repo = pname;
     rev = "v${version}";
-    hash = "sha256-hai7fIyeNcAURfeQtAIqOLb9j8erPNoy3zHK4rgLjc0=";
+    hash = "sha256-gJafzBryuGDU8ke3JTKkQdSEND+btSZ93Ei7ZRsqchg=";
     fetchSubmodules = true;
   };
 
@@ -66,7 +67,9 @@ stdenv.mkDerivation rec {
     protobuf
     SDL2
     hidapi
+    json_c
     fftw
+    miniupnpc
     libevdev
     udev
     speexdsp
diff --git a/pkgs/games/colobot/default.nix b/pkgs/games/colobot/default.nix
index e1070843811c..90018acd50d5 100644
--- a/pkgs/games/colobot/default.nix
+++ b/pkgs/games/colobot/default.nix
@@ -9,13 +9,13 @@ stdenv.mkDerivation rec {
   pname = "colobot";
   # Maybe require an update to package colobot-data as well
   # in file data.nix next to this one
-  version = "0.2.0-alpha";
+  version = "0.2.1-alpha";
 
   src = fetchFromGitHub {
     owner = "colobot";
     repo = pname;
     rev = "colobot-gold-${version}";
-    sha256 = "sha256-Nu7NyicNIk5yza9sXfd4KbGdB65guVuGREd6rwRU3lU=";
+    hash = "sha256-3iea2+5xCT0//NAjMHrynZKSoiOSgLTNMUQkRhXuXg8=";
   };
 
   nativeBuildInputs = [ cmake xmlstarlet doxygen python3 ];
diff --git a/pkgs/games/doom-ports/doomretro/default.nix b/pkgs/games/doom-ports/doomretro/default.nix
index 127220603bdf..4b016d78582a 100644
--- a/pkgs/games/doom-ports/doomretro/default.nix
+++ b/pkgs/games/doom-ports/doomretro/default.nix
@@ -11,13 +11,13 @@
 
 stdenv.mkDerivation (finalAttrs: {
   pname = "doomretro";
-  version = "5.3";
+  version = "5.4";
 
   src = fetchFromGitHub {
     owner = "bradharding";
     repo = "doomretro";
     rev = "v${finalAttrs.version}";
-    hash = "sha256-LCCBtsDEyjzsPS5ADPzsup714p84MO65FQDVjAHhSts=";
+    hash = "sha256-IOv58BmJvJtO7MMbrvf52MPYI0zjmPuRK7mcTwmBEY0=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/games/doom-ports/gzdoom/default.nix b/pkgs/games/doom-ports/gzdoom/default.nix
index 2800e770ba0e..f34276c7783f 100644
--- a/pkgs/games/doom-ports/gzdoom/default.nix
+++ b/pkgs/games/doom-ports/gzdoom/default.nix
@@ -27,14 +27,14 @@
 
 stdenv.mkDerivation rec {
   pname = "gzdoom";
-  version = "4.12.1";
+  version = "4.12.2";
 
   src = fetchFromGitHub {
     owner = "ZDoom";
     repo = "gzdoom";
     rev = "g${version}";
     fetchSubmodules = true;
-    hash = "sha256-ityjfxlazt/R9vD+azVGr+w7Sdjlbh+ekbJexkPSF1g=";
+    hash = "sha256-taie1Iod3pXvuxxBC7AArmtndkIV0Di9mtJoPvPkioo=";
   };
 
   outputs = [ "out" "doc" ];
diff --git a/pkgs/games/doom-ports/slade/default.nix b/pkgs/games/doom-ports/slade/default.nix
index 9ab3d1f458d5..bae685ccac47 100644
--- a/pkgs/games/doom-ports/slade/default.nix
+++ b/pkgs/games/doom-ports/slade/default.nix
@@ -15,7 +15,7 @@
 , glew
 , lua
 , mpg123
-, wrapGAppsHook
+, wrapGAppsHook3
 }:
 
 stdenv.mkDerivation rec {
@@ -39,7 +39,7 @@ stdenv.mkDerivation rec {
     pkg-config
     which
     zip
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
diff --git a/pkgs/games/doom-ports/slade/git.nix b/pkgs/games/doom-ports/slade/git.nix
index 7ecc5d5d1b6a..db85d405f8c5 100644
--- a/pkgs/games/doom-ports/slade/git.nix
+++ b/pkgs/games/doom-ports/slade/git.nix
@@ -20,7 +20,7 @@
 
 stdenv.mkDerivation rec {
   pname = "slade";
-  version = "unstable-2023-09-30";
+  version = "3.2.4-unstable-2023-09-30";
 
   src = fetchFromGitHub {
     owner = "sirjuddington";
diff --git a/pkgs/games/dwarf-fortress/default.nix b/pkgs/games/dwarf-fortress/default.nix
index ee02364a40a4..acf50d650c49 100644
--- a/pkgs/games/dwarf-fortress/default.nix
+++ b/pkgs/games/dwarf-fortress/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, stdenvNoCC, gccStdenv, lib, recurseIntoAttrs, libsForQt5, newScope, texliveBasic, perlPackages, jdk8, jre8 }:
+{ stdenv, stdenvNoCC, gccStdenv, lib, recurseIntoAttrs, libsForQt5, newScope, perlPackages, jdk8, jre8 }:
 
 # To whomever it may concern:
 #
@@ -49,7 +49,7 @@ let
   # The latest Dwarf Fortress version. Maintainers: when a new version comes
   # out, ensure that (unfuck|dfhack|twbt) are all up to date before changing
   # this. Note that unfuck and twbt are not required for 50.
-  latestVersion = "50.12";
+  latestVersion = "50.13";
 
   # Converts a version to a package name.
   versionToName = version: "dwarf-fortress_${replaceStrings ["."] ["_"] version}";
@@ -79,9 +79,7 @@ let
 
           dwarf-therapist = libsForQt5.callPackage ./dwarf-therapist/wrapper.nix {
             inherit dwarf-fortress;
-            dwarf-therapist = (libsForQt5.callPackage ./dwarf-therapist {
-              texlive = texliveBasic.withPackages (ps: with ps; [ float caption wrapfig adjmulticol sidecap preprint enumitem ]);
-            }).override (optionalAttrs (!isAtLeast50) {
+            dwarf-therapist = (libsForQt5.callPackage ./dwarf-therapist {}).override (optionalAttrs (!isAtLeast50) {
               # 41.2.5 is the last version to support Dwarf Fortress 0.47.
               version = "41.2.5";
               hash = "sha256-xfYBtnO1n6OcliVt07GsQ9alDJIfWdVhtuyWwuvXSZs=";
diff --git a/pkgs/games/dwarf-fortress/dfhack/default.nix b/pkgs/games/dwarf-fortress/dfhack/default.nix
index 156dac32c472..96a5dac52540 100644
--- a/pkgs/games/dwarf-fortress/dfhack/default.nix
+++ b/pkgs/games/dwarf-fortress/dfhack/default.nix
@@ -89,6 +89,11 @@ let
       hash = "sha256-2mO8DpNmZRCV7IRY0arf3SMvlO4Pxs61Kxfh3q3k3HU=";
       xmlRev = "980b1af13acc31660dce632f913c968f52e2b275";
     };
+    "50.13" = {
+      dfHackRelease = "50.13-r1.1";
+      hash = "sha256-FiXanXflszTr4ogz+EoDAUxzE2U9ODeZIJJ1u6Xm4Mo=";
+      xmlRev = "3507715fd07340de5a6c47064220f6e17343e5d5";
+    };
   };
 
   release =
diff --git a/pkgs/games/dwarf-fortress/dwarf-therapist/default.nix b/pkgs/games/dwarf-fortress/dwarf-therapist/default.nix
index d51c8274bb06..52560a0d52b5 100644
--- a/pkgs/games/dwarf-fortress/dwarf-therapist/default.nix
+++ b/pkgs/games/dwarf-fortress/dwarf-therapist/default.nix
@@ -4,10 +4,9 @@
 , qtbase
 , qtdeclarative
 , cmake
-, texlive
 , ninja
-, version ? "42.1.5"
-, hash ? "sha256-aUakfUjnIZWNDhCkG3A6u7BaaCG8kPMV/Fu2S73CoDg="
+, version ? "42.1.6"
+, hash ? "sha256-VjCXT4sl3HsFILrqTc3JJSeRedZaOXUbf4KvSzTo0uc="
 }:
 
 stdenv.mkDerivation rec {
@@ -22,7 +21,7 @@ stdenv.mkDerivation rec {
     inherit hash;
   };
 
-  nativeBuildInputs = [ texlive cmake ninja ];
+  nativeBuildInputs = [ cmake ninja ];
   buildInputs = [ qtbase qtdeclarative ];
 
   enableParallelBuilding = true;
diff --git a/pkgs/games/dwarf-fortress/game.json b/pkgs/games/dwarf-fortress/game.json
index c287a4dd8449..4fb341c350e9 100644
--- a/pkgs/games/dwarf-fortress/game.json
+++ b/pkgs/games/dwarf-fortress/game.json
@@ -144,5 +144,8 @@
   },
   "50.12": {
     "linux": "070014fzwszfgjyxjyij0k0hadah6s62lpi91ykp3vs220azya1m"
+  },
+  "50.13": {
+    "linux": "19wzgsdgv0vq7v2dxhypr9hayky3nm3lbra1kk9vn8ri96jdkfkw"
   }
 }
diff --git a/pkgs/games/eduke32/convert-bmp-to-png.diff b/pkgs/games/eduke32/convert-bmp-to-png.diff
new file mode 100644
index 000000000000..7d83ce4aabaf
--- /dev/null
+++ b/pkgs/games/eduke32/convert-bmp-to-png.diff
@@ -0,0 +1,23 @@
+diff --git a/GNUmakefile b/GNUmakefile
+index f83f04d..25a4fa8 100644
+--- a/GNUmakefile
++++ b/GNUmakefile
+@@ -798,6 +798,9 @@ libklzw$(DLLSUFFIX): $(engine_src)/klzw.cpp
+ 	$(COMPILE_STATUS)
+ 	$(RECIPE_IF) $(COMPILER_C) -shared -fPIC $< -o $@ $(RECIPE_RESULT_COMPILE)
+ 
++%.png: %.bmp
++	gm convert $< $@
++
+ # to debug the tools link phase, make a copy of this rule explicitly replacing % with the name of a tool, such as kextract
+ %$(EXESUFFIX): $(tools_obj)/%.$o $(foreach i,tools $(tools_deps),$(call expandobjs,$i))
+ 	$(LINK_STATUS)
+@@ -880,7 +883,7 @@ $$($1_obj)/%.$$o: $$($1_rsrc)/%.c | $$($1_obj)
+ 	$$(call MKDIR,$$(dir $$@))
+ 	$$(RECIPE_IF) $$(COMPILER_C) $$($1_cflags) -c $$< -o $$@ $$(RECIPE_RESULT_COMPILE)
+ 
+-$$($1_obj)/%_banner.c: $$($1_rsrc)/%.bmp | $$($1_obj)
++$$($1_obj)/%_banner.c: $$($1_rsrc)/%.png | $$($1_obj)
+ 	echo "#include \"gtkpixdata_shim.h\"" > $$@
+ 	gdk-pixbuf-csource --extern --struct --raw --name=startbanner_pixdata $$^ | sed 's/load_inc//' >> $$@
+ 
diff --git a/pkgs/games/eduke32/default.nix b/pkgs/games/eduke32/default.nix
index 1ddcccd27f9d..5bb9966602d8 100644
--- a/pkgs/games/eduke32/default.nix
+++ b/pkgs/games/eduke32/default.nix
@@ -37,6 +37,12 @@ in stdenv.mkDerivation (finalAttrs: {
     hash = "sha256-dyZ4JtDBxsTDe9uQDWxJe7M74X7m+5wpEHm+i+s9hwo=";
   };
 
+  patches = [
+    # gdk-pixbuf-csource no longer supports bmp so convert to png
+    # patch GNUMakefile to use graphicsmagick to convert bmp -> png
+    ./convert-bmp-to-png.diff
+  ];
+
   buildInputs = [
     flac
     libvorbis
diff --git a/pkgs/games/extremetuxracer/default.nix b/pkgs/games/extremetuxracer/default.nix
index 446c692ad81f..a1322499ea6a 100644
--- a/pkgs/games/extremetuxracer/default.nix
+++ b/pkgs/games/extremetuxracer/default.nix
@@ -5,12 +5,12 @@
 }:
 
 stdenv.mkDerivation rec {
-  version = "0.8.3";
+  version = "0.8.4";
   pname = "extremetuxracer";
 
   src = fetchurl {
     url = "mirror://sourceforge/extremetuxracer/etr-${version}.tar.xz";
-    sha256 = "sha256-LuQvP1/C+NSap1BW6xFvbKuE1lZBIOaWGuWSc2ckURM=";
+    sha256 = "sha256-+jKFzAx1Wlr/Up8/LOo1FkgRFMa0uOHsB2n+7/BHc+U=";
   };
 
   nativeBuildInputs = [ pkg-config intltool ];
diff --git a/pkgs/games/factorio/versions.json b/pkgs/games/factorio/versions.json
index a627e967d199..e32801b76974 100644
--- a/pkgs/games/factorio/versions.json
+++ b/pkgs/games/factorio/versions.json
@@ -2,56 +2,56 @@
   "x86_64-linux": {
     "alpha": {
       "experimental": {
-        "name": "factorio_alpha_x64-1.1.104.tar.xz",
+        "name": "factorio_alpha_x64-1.1.107.tar.xz",
         "needsAuth": true,
-        "sha256": "0aizllbfzbn2j0560n4f823jqq7v7qz813an4wlm39rfsfx7b0vq",
+        "sha256": "16hkyfwp02zcijka4yslifz62ry6hrvk0w9960618kqdw3gr7p82",
         "tarDirectory": "x64",
-        "url": "https://factorio.com/get-download/1.1.104/alpha/linux64",
-        "version": "1.1.104"
+        "url": "https://factorio.com/get-download/1.1.107/alpha/linux64",
+        "version": "1.1.107"
       },
       "stable": {
-        "name": "factorio_alpha_x64-1.1.104.tar.xz",
+        "name": "factorio_alpha_x64-1.1.107.tar.xz",
         "needsAuth": true,
-        "sha256": "0aizllbfzbn2j0560n4f823jqq7v7qz813an4wlm39rfsfx7b0vq",
+        "sha256": "16hkyfwp02zcijka4yslifz62ry6hrvk0w9960618kqdw3gr7p82",
         "tarDirectory": "x64",
-        "url": "https://factorio.com/get-download/1.1.104/alpha/linux64",
-        "version": "1.1.104"
+        "url": "https://factorio.com/get-download/1.1.107/alpha/linux64",
+        "version": "1.1.107"
       }
     },
     "demo": {
       "experimental": {
-        "name": "factorio_demo_x64-1.1.104.tar.xz",
+        "name": "factorio_demo_x64-1.1.107.tar.xz",
         "needsAuth": false,
-        "sha256": "0x08dy6pagfpqc9c2cl239b1f7pf0p4cghzp7avxmbkmbl1fan2l",
+        "sha256": "0qc36n6h4wcbnj9rnq162bsml4x3ag1dkjmywqz8f4ydaf86gyjw",
         "tarDirectory": "x64",
-        "url": "https://factorio.com/get-download/1.1.104/demo/linux64",
-        "version": "1.1.104"
+        "url": "https://factorio.com/get-download/1.1.107/demo/linux64",
+        "version": "1.1.107"
       },
       "stable": {
-        "name": "factorio_demo_x64-1.1.104.tar.xz",
+        "name": "factorio_demo_x64-1.1.107.tar.xz",
         "needsAuth": false,
-        "sha256": "0x08dy6pagfpqc9c2cl239b1f7pf0p4cghzp7avxmbkmbl1fan2l",
+        "sha256": "0qc36n6h4wcbnj9rnq162bsml4x3ag1dkjmywqz8f4ydaf86gyjw",
         "tarDirectory": "x64",
-        "url": "https://factorio.com/get-download/1.1.104/demo/linux64",
-        "version": "1.1.104"
+        "url": "https://factorio.com/get-download/1.1.107/demo/linux64",
+        "version": "1.1.107"
       }
     },
     "headless": {
       "experimental": {
-        "name": "factorio_headless_x64-1.1.104.tar.xz",
+        "name": "factorio_headless_x64-1.1.107.tar.xz",
         "needsAuth": false,
-        "sha256": "10qmq2mw2j97s64skwr3m7hmv21h3m0r8rdhnyfrhmrxn8x3a4wf",
+        "sha256": "10ds1nz9sbx9xz1lyypf16wncc6323vpm7l5p11d6iy4cha85wsw",
         "tarDirectory": "x64",
-        "url": "https://factorio.com/get-download/1.1.104/headless/linux64",
-        "version": "1.1.104"
+        "url": "https://factorio.com/get-download/1.1.107/headless/linux64",
+        "version": "1.1.107"
       },
       "stable": {
-        "name": "factorio_headless_x64-1.1.104.tar.xz",
+        "name": "factorio_headless_x64-1.1.107.tar.xz",
         "needsAuth": false,
-        "sha256": "10qmq2mw2j97s64skwr3m7hmv21h3m0r8rdhnyfrhmrxn8x3a4wf",
+        "sha256": "10ds1nz9sbx9xz1lyypf16wncc6323vpm7l5p11d6iy4cha85wsw",
         "tarDirectory": "x64",
-        "url": "https://factorio.com/get-download/1.1.104/headless/linux64",
-        "version": "1.1.104"
+        "url": "https://factorio.com/get-download/1.1.107/headless/linux64",
+        "version": "1.1.107"
       }
     }
   }
diff --git a/pkgs/games/freeciv/default.nix b/pkgs/games/freeciv/default.nix
index 6f653c46df86..6ecd9fcdade0 100644
--- a/pkgs/games/freeciv/default.nix
+++ b/pkgs/games/freeciv/default.nix
@@ -2,7 +2,7 @@
 , zlib, bzip2, curl, xz, gettext, libiconv, icu
 , SDL2, SDL2_mixer, SDL2_image, SDL2_ttf, SDL2_gfx, freetype, fluidsynth
 , sdl2Client ? false
-, gtkClient ? true, gtk3, wrapGAppsHook
+, gtkClient ? true, gtk3, wrapGAppsHook3
 , qtClient ? false, qt5
 , server ? true, readline
 , enableSqlite ? true, sqlite
@@ -10,13 +10,13 @@
 
 stdenv.mkDerivation rec {
   pname = "freeciv";
-  version = "3.1.0";
+  version = "3.1.1";
 
   src = fetchFromGitHub {
     owner = "freeciv";
     repo = "freeciv";
     rev = "R${lib.replaceStrings [ "." ] [ "_" ] version}";
-    hash = "sha256-8cMy0O5VxVi1ffvA/Gz4BnTB0WvJptMSgM7Zu992k5k=";
+    hash = "sha256-ImjXDJ1Bq85OfUhxGe184cd5eu4a8BrZh+YYhzUdrLo=";
   };
 
   postPatch = ''
@@ -31,7 +31,7 @@ stdenv.mkDerivation rec {
 
   nativeBuildInputs = [ autoreconfHook pkg-config ]
     ++ lib.optionals qtClient [ qt5.wrapQtAppsHook ]
-    ++ lib.optionals gtkClient [ wrapGAppsHook ];
+    ++ lib.optionals gtkClient [ wrapGAppsHook3 ];
 
   buildInputs = [ lua5_3 zlib bzip2 curl xz gettext libiconv icu ]
     ++ [ SDL2 SDL2_mixer SDL2_image SDL2_ttf SDL2_gfx freetype fluidsynth ]
@@ -70,7 +70,7 @@ stdenv.mkDerivation rec {
 
   enableParallelBuilding = true;
 
-  meta = with lib; {
+  meta = {
     description = "Multiplayer (or single player), turn-based strategy game";
     longDescription = ''
       Freeciv is a Free and Open Source empire-building strategy game
@@ -79,10 +79,10 @@ stdenv.mkDerivation rec {
       to the space age...
     '';
     homepage = "http://www.freeciv.org"; # http only
-    license = licenses.gpl2;
-    maintainers = with maintainers; [ pierron ];
-    platforms = platforms.unix;
-    hydraPlatforms = platforms.linux; # sdl-config times out on darwin
+    license = lib.licenses.gpl2;
+    maintainers = with lib.maintainers; [ pierron ];
+    platforms = lib.platforms.unix;
+    hydraPlatforms = lib.platforms.linux; # sdl-config times out on darwin
     broken = qtClient && stdenv.isDarwin; # Missing Qt5 development files
   };
 }
diff --git a/pkgs/games/gamehub/default.nix b/pkgs/games/gamehub/default.nix
index 87796d58c732..3bfbe71c3c0e 100644
--- a/pkgs/games/gamehub/default.nix
+++ b/pkgs/games/gamehub/default.nix
@@ -16,7 +16,7 @@
 , webkitgtk
 , libmanette
 , libXtst
-, wrapGAppsHook
+, wrapGAppsHook3
 }:
 
 stdenv.mkDerivation rec {
@@ -36,7 +36,7 @@ stdenv.mkDerivation rec {
     ninja
     pkg-config
     vala
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
diff --git a/pkgs/games/gnonograms/default.nix b/pkgs/games/gnonograms/default.nix
index 69d45e32fe26..57f38d61bbb5 100644
--- a/pkgs/games/gnonograms/default.nix
+++ b/pkgs/games/gnonograms/default.nix
@@ -9,7 +9,7 @@
 , appstream
 , python3
 , shared-mime-info
-, wrapGAppsHook
+, wrapGAppsHook3
 , gtk3
 , pantheon
 , libgee
@@ -40,7 +40,7 @@ stdenv.mkDerivation (finalAttrs: {
     appstream
     python3
     shared-mime-info
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
diff --git a/pkgs/games/gnuchess/default.nix b/pkgs/games/gnuchess/default.nix
index 3acf6a8aa62d..7e1bdd1d48ce 100644
--- a/pkgs/games/gnuchess/default.nix
+++ b/pkgs/games/gnuchess/default.nix
@@ -14,6 +14,11 @@ stdenv.mkDerivation rec {
   ];
   nativeBuildInputs = [ makeWrapper ];
 
+  configureFlags = [
+    # register keyword is removed in c++17 so stick to c++14
+    "CXXFLAGS=-std=c++14"
+  ];
+
   postInstall = ''
     wrapProgram $out/bin/gnuchessx --set PATH "$out/bin"
     wrapProgram $out/bin/gnuchessu --set PATH "$out/bin"
diff --git a/pkgs/games/grapejuice/default.nix b/pkgs/games/grapejuice/default.nix
index c8d1956eb9a5..9c2c8a594388 100644
--- a/pkgs/games/grapejuice/default.nix
+++ b/pkgs/games/grapejuice/default.nix
@@ -4,7 +4,7 @@
 , pciutils
 , python3Packages
 , gtk3
-, wrapGAppsHook
+, wrapGAppsHook3
 , glib
 , cairo
 , desktop-file-utils
@@ -33,7 +33,7 @@ python3Packages.buildPythonApplication rec  {
     gobject-introspection
     desktop-file-utils
     glib
-    wrapGAppsHook
+    wrapGAppsHook3
     python3Packages.pip
   ];
 
diff --git a/pkgs/games/gscrabble/default.nix b/pkgs/games/gscrabble/default.nix
index 28e2a58b0d00..453cbfedba94 100644
--- a/pkgs/games/gscrabble/default.nix
+++ b/pkgs/games/gscrabble/default.nix
@@ -1,5 +1,5 @@
 { lib, buildPythonApplication, fetchFromGitHub
-, gtk3, wrapGAppsHook, gst_all_1, gobject-introspection
+, gtk3, wrapGAppsHook3, gst_all_1, gobject-introspection
 , python3Packages, gnome }:
 
 buildPythonApplication {
@@ -15,7 +15,7 @@ buildPythonApplication {
 
   doCheck = false;
 
-  nativeBuildInputs = [ wrapGAppsHook gobject-introspection ];
+  nativeBuildInputs = [ wrapGAppsHook3 gobject-introspection ];
 
   buildInputs = with gst_all_1; [
     gst-plugins-base gst-plugins-good gst-plugins-ugly gst-plugins-bad
diff --git a/pkgs/games/gshogi/default.nix b/pkgs/games/gshogi/default.nix
index 350ab86aa22b..a4e9b903dc1c 100644
--- a/pkgs/games/gshogi/default.nix
+++ b/pkgs/games/gshogi/default.nix
@@ -3,7 +3,7 @@
 , gobject-introspection
 , gtk3
 , python3
-, wrapGAppsHook
+, wrapGAppsHook3
 }:
 
 python3.pkgs.buildPythonApplication rec {
@@ -23,7 +23,7 @@ python3.pkgs.buildPythonApplication rec {
     gtk3
   ];
 
-  nativeBuildInputs = [ wrapGAppsHook gobject-introspection ];
+  nativeBuildInputs = [ wrapGAppsHook3 gobject-introspection ];
 
   propagatedBuildInputs = with python3.pkgs; [
     pygobject3
diff --git a/pkgs/games/gtypist/default.nix b/pkgs/games/gtypist/default.nix
index 43b95bacefc8..169b0fa77db0 100644
--- a/pkgs/games/gtypist/default.nix
+++ b/pkgs/games/gtypist/default.nix
@@ -9,6 +9,8 @@ stdenv.mkDerivation rec {
     sha256 = "0xzrkkmj0b1dw3yr0m9hml2y634cc4h61im6zwcq57s7285z8fn1";
   };
 
+  CFLAGS = "-std=gnu89";
+
   nativeBuildInputs = [ makeWrapper ];
   buildInputs = [ ncurses perl fortune ]
    ++ lib.optional stdenv.isDarwin libiconv;
diff --git a/pkgs/games/gweled/default.nix b/pkgs/games/gweled/default.nix
index 484543ad8659..b27da3b2f7c4 100644
--- a/pkgs/games/gweled/default.nix
+++ b/pkgs/games/gweled/default.nix
@@ -1,5 +1,5 @@
 { lib, stdenv, fetchbzr, gettext
-, gtk2, wrapGAppsHook, autoreconfHook, pkg-config
+, gtk2, wrapGAppsHook3, autoreconfHook, pkg-config
 , libmikmod, librsvg, libcanberra-gtk2, hicolor-icon-theme }:
 
 stdenv.mkDerivation rec {
@@ -18,7 +18,7 @@ stdenv.mkDerivation rec {
     substituteInPlace configure.ac --replace "AM_GNU_GETTEXT_VERSION([0.19.8])" "AM_GNU_GETTEXT_VERSION([${gettext.version}])"
   '';
 
-  nativeBuildInputs = [ wrapGAppsHook gettext autoreconfHook pkg-config ];
+  nativeBuildInputs = [ wrapGAppsHook3 gettext autoreconfHook pkg-config ];
 
   buildInputs = [ gtk2 libmikmod librsvg hicolor-icon-theme libcanberra-gtk2 ];
 
diff --git a/pkgs/games/hmcl/default.nix b/pkgs/games/hmcl/default.nix
index 95a40f0a8d80..2dd9c7b7884e 100644
--- a/pkgs/games/hmcl/default.nix
+++ b/pkgs/games/hmcl/default.nix
@@ -3,7 +3,7 @@
 , fetchurl
 , makeBinaryWrapper
 , makeDesktopItem
-, wrapGAppsHook
+, wrapGAppsHook3
 , copyDesktopItems
 , imagemagick
 , jre
@@ -50,7 +50,7 @@ stdenv.mkDerivation (finalAttrs: {
 
   nativeBuildInputs = [
     makeBinaryWrapper
-    wrapGAppsHook
+    wrapGAppsHook3
     copyDesktopItems
     imagemagick
   ];
diff --git a/pkgs/games/instawow/default.nix b/pkgs/games/instawow/default.nix
index 02daa3207837..f45152155416 100644
--- a/pkgs/games/instawow/default.nix
+++ b/pkgs/games/instawow/default.nix
@@ -2,14 +2,14 @@
 
 python3.pkgs.buildPythonApplication rec {
   pname = "instawow";
-  version = "4.1.1";
+  version = "4.3.0";
   pyproject = true;
 
   src = fetchFromGitHub {
     owner = "layday";
     repo = pname;
     rev = "refs/tags/v${version}";
-    sha256 = "sha256-RRBuFja5vejzjrtOvRBIjT7sq/Wg/39FA/o9O8c2B0o=";
+    sha256 = "sha256-U4Y+P+fSyqxT0oHJXn2gwxPOJtnYBwaq9ca+FvGBUkA=";
   };
 
   extras = [ ];  # Disable GUI, most dependencies are not packaged.
diff --git a/pkgs/games/jfsw/default.nix b/pkgs/games/jfsw/default.nix
index 9b631551b579..ed82964e4d0e 100644
--- a/pkgs/games/jfsw/default.nix
+++ b/pkgs/games/jfsw/default.nix
@@ -5,7 +5,7 @@
 , SDL2
 , perl
 , pkg-config
-, wrapGAppsHook
+, wrapGAppsHook3
 , gtk3
 }:
 
@@ -26,7 +26,7 @@ stdenv.mkDerivation (finalAttrs: {
     SDL2
     perl
     pkg-config
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
diff --git a/pkgs/games/jumpnbump/default.nix b/pkgs/games/jumpnbump/default.nix
index 193d4dc0b585..b2f6a646c65f 100644
--- a/pkgs/games/jumpnbump/default.nix
+++ b/pkgs/games/jumpnbump/default.nix
@@ -4,7 +4,7 @@
 , SDL2, SDL2_mixer, SDL2_net
 , gtk3, gobject-introspection
 , python3Packages
-, wrapGAppsHook
+, wrapGAppsHook3
 }:
 
 let data = fetchzip {
@@ -27,7 +27,7 @@ stdenv.mkDerivation rec {
 
   makeFlags = [ "PREFIX=$(out)" ];
 
-  nativeBuildInputs = [ python3Packages.wrapPython wrapGAppsHook gobject-introspection ];
+  nativeBuildInputs = [ python3Packages.wrapPython wrapGAppsHook3 gobject-introspection ];
   buildInputs = [ SDL2 SDL2_mixer SDL2_net gtk3 ];
 
   postInstall = ''
diff --git a/pkgs/games/katago/default.nix b/pkgs/games/katago/default.nix
index e9ba507a3c95..a633430ee673 100644
--- a/pkgs/games/katago/default.nix
+++ b/pkgs/games/katago/default.nix
@@ -28,14 +28,14 @@ assert lib.assertOneOf "backend" backend [ "opencl" "cuda" "tensorrt" "eigen" ];
 # of gcc.  If you need to use cuda10, please override stdenv with gcc8Stdenv
 stdenv.mkDerivation rec {
   pname = "katago";
-  version = "1.14.0";
-  githash = "c6de1bbda837a0717eaeca46102f7326ed0da0d4";
+  version = "1.14.1";
+  githash = "f2dc582f98a79fefeb11b2c37de7db0905318f4f";
 
   src = fetchFromGitHub {
     owner = "lightvector";
     repo = "katago";
     rev = "v${version}";
-    sha256 = "sha256-0WB/weQIJkLXedcOJO7D/N85oXTufvbmyfIp8XdrACg=";
+    hash = "sha256-ZdvHvrtSLwQ5vFMzLdJSJEiGcSent9iskPgpbL1TfhI=";
   };
 
   fakegit = writeShellScriptBin "git" "echo ${githash}";
diff --git a/pkgs/games/liberation-circuit/default.nix b/pkgs/games/liberation-circuit/default.nix
index 5df48282f26d..cfae4282a04a 100644
--- a/pkgs/games/liberation-circuit/default.nix
+++ b/pkgs/games/liberation-circuit/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, lib, fetchFromGitHub, fetchurl, pkg-config, allegro5, libGL, wrapGAppsHook }:
+{ stdenv, lib, fetchFromGitHub, fetchurl, pkg-config, allegro5, libGL, wrapGAppsHook3 }:
 
 stdenv.mkDerivation rec {
   pname = "liberation-circuit";
@@ -11,7 +11,7 @@ stdenv.mkDerivation rec {
     hash = "sha256-zIwjh4CBSmKz7pF7GM5af+VslWho5jHOLsulbW4C8TY=";
   };
 
-  nativeBuildInputs = [ pkg-config wrapGAppsHook ];
+  nativeBuildInputs = [ pkg-config wrapGAppsHook3 ];
   buildInputs = [ allegro5 libGL ];
 
   dontWrapGApps = true;
diff --git a/pkgs/games/linthesia/default.nix b/pkgs/games/linthesia/default.nix
index 1200afa4f2f7..e918906af4f3 100644
--- a/pkgs/games/linthesia/default.nix
+++ b/pkgs/games/linthesia/default.nix
@@ -14,7 +14,7 @@
 , python3
 , sqlite
 , stdenv
-, wrapGAppsHook
+, wrapGAppsHook3
 }:
 
 stdenv.mkDerivation rec {
@@ -32,7 +32,7 @@ stdenv.mkDerivation rec {
     patchShebangs meson_post_install.py
   '';
 
-  nativeBuildInputs = [ meson ninja pkg-config python3 wrapGAppsHook ];
+  nativeBuildInputs = [ meson ninja pkg-config python3 wrapGAppsHook3 ];
   buildInputs = [
     libGL
     libGLU
diff --git a/pkgs/games/maptool/default.nix b/pkgs/games/maptool/default.nix
index 1e95e376825c..775879a957ad 100644
--- a/pkgs/games/maptool/default.nix
+++ b/pkgs/games/maptool/default.nix
@@ -8,7 +8,7 @@
 , makeDesktopItem
 , openjfx
 , stdenvNoCC
-, wrapGAppsHook
+, wrapGAppsHook3
 }:
 let
   pname = "maptool";
@@ -82,7 +82,7 @@ stdenvNoCC.mkDerivation {
   nativeBuildInputs = [
     copyDesktopItems
     libarchive
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   desktopItems = [
diff --git a/pkgs/games/mindustry/default.nix b/pkgs/games/mindustry/default.nix
index 0562ff40ac2d..906c6de2795b 100644
--- a/pkgs/games/mindustry/default.nix
+++ b/pkgs/games/mindustry/default.nix
@@ -98,6 +98,7 @@ let
     desktopName = "Mindustry";
     exec = "mindustry";
     icon = "mindustry";
+    categories = [ "Game" ];
   };
 
   cleanupMindustrySrc = ''
diff --git a/pkgs/games/minecraft-servers/versions.json b/pkgs/games/minecraft-servers/versions.json
index 15dbc82c6d90..5fece659ca41 100644
--- a/pkgs/games/minecraft-servers/versions.json
+++ b/pkgs/games/minecraft-servers/versions.json
@@ -1,115 +1,115 @@
 {
   "1.20": {
-    "sha1": "8dd1a28015f51b1803213892b50b7b4fc76e594d",
-    "url": "https://piston-data.mojang.com/v1/objects/8dd1a28015f51b1803213892b50b7b4fc76e594d/server.jar",
-    "version": "1.20.4",
-    "javaVersion": 17
+    "sha1": "145ff0858209bcfc164859ba735d4199aafa1eea",
+    "url": "https://piston-data.mojang.com/v1/objects/145ff0858209bcfc164859ba735d4199aafa1eea/server.jar",
+    "version": "1.20.6",
+    "javaVersion": 21
   },
   "1.19": {
-    "url": "https://piston-data.mojang.com/v1/objects/8f3112a1049751cc472ec13e397eade5336ca7ae/server.jar",
     "sha1": "8f3112a1049751cc472ec13e397eade5336ca7ae",
+    "url": "https://piston-data.mojang.com/v1/objects/8f3112a1049751cc472ec13e397eade5336ca7ae/server.jar",
     "version": "1.19.4",
     "javaVersion": 17
   },
   "1.18": {
-    "url": "https://piston-data.mojang.com/v1/objects/c8f83c5655308435b3dcf03c06d9fe8740a77469/server.jar",
     "sha1": "c8f83c5655308435b3dcf03c06d9fe8740a77469",
+    "url": "https://piston-data.mojang.com/v1/objects/c8f83c5655308435b3dcf03c06d9fe8740a77469/server.jar",
     "version": "1.18.2",
     "javaVersion": 17
   },
   "1.17": {
-    "url": "https://piston-data.mojang.com/v1/objects/a16d67e5807f57fc4e550299cf20226194497dc2/server.jar",
     "sha1": "a16d67e5807f57fc4e550299cf20226194497dc2",
+    "url": "https://piston-data.mojang.com/v1/objects/a16d67e5807f57fc4e550299cf20226194497dc2/server.jar",
     "version": "1.17.1",
     "javaVersion": 16
   },
   "1.16": {
-    "url": "https://piston-data.mojang.com/v1/objects/1b557e7b033b583cd9f66746b7a9ab1ec1673ced/server.jar",
     "sha1": "1b557e7b033b583cd9f66746b7a9ab1ec1673ced",
+    "url": "https://piston-data.mojang.com/v1/objects/1b557e7b033b583cd9f66746b7a9ab1ec1673ced/server.jar",
     "version": "1.16.5",
     "javaVersion": 8
   },
   "1.15": {
-    "url": "https://piston-data.mojang.com/v1/objects/bb2b6b1aefcd70dfd1892149ac3a215f6c636b07/server.jar",
     "sha1": "bb2b6b1aefcd70dfd1892149ac3a215f6c636b07",
+    "url": "https://piston-data.mojang.com/v1/objects/bb2b6b1aefcd70dfd1892149ac3a215f6c636b07/server.jar",
     "version": "1.15.2",
     "javaVersion": 8
   },
   "1.14": {
-    "url": "https://piston-data.mojang.com/v1/objects/3dc3d84a581f14691199cf6831b71ed1296a9fdf/server.jar",
     "sha1": "3dc3d84a581f14691199cf6831b71ed1296a9fdf",
+    "url": "https://piston-data.mojang.com/v1/objects/3dc3d84a581f14691199cf6831b71ed1296a9fdf/server.jar",
     "version": "1.14.4",
     "javaVersion": 8
   },
   "1.13": {
-    "url": "https://piston-data.mojang.com/v1/objects/3737db93722a9e39eeada7c27e7aca28b144ffa7/server.jar",
     "sha1": "3737db93722a9e39eeada7c27e7aca28b144ffa7",
+    "url": "https://piston-data.mojang.com/v1/objects/3737db93722a9e39eeada7c27e7aca28b144ffa7/server.jar",
     "version": "1.13.2",
     "javaVersion": 8
   },
   "1.12": {
-    "url": "https://piston-data.mojang.com/v1/objects/886945bfb2b978778c3a0288fd7fab09d315b25f/server.jar",
     "sha1": "886945bfb2b978778c3a0288fd7fab09d315b25f",
+    "url": "https://piston-data.mojang.com/v1/objects/886945bfb2b978778c3a0288fd7fab09d315b25f/server.jar",
     "version": "1.12.2",
     "javaVersion": 8
   },
   "1.11": {
-    "url": "https://piston-data.mojang.com/v1/objects/f00c294a1576e03fddcac777c3cf4c7d404c4ba4/server.jar",
     "sha1": "f00c294a1576e03fddcac777c3cf4c7d404c4ba4",
+    "url": "https://piston-data.mojang.com/v1/objects/f00c294a1576e03fddcac777c3cf4c7d404c4ba4/server.jar",
     "version": "1.11.2",
     "javaVersion": 8
   },
   "1.10": {
-    "url": "https://piston-data.mojang.com/v1/objects/3d501b23df53c548254f5e3f66492d178a48db63/server.jar",
     "sha1": "3d501b23df53c548254f5e3f66492d178a48db63",
+    "url": "https://piston-data.mojang.com/v1/objects/3d501b23df53c548254f5e3f66492d178a48db63/server.jar",
     "version": "1.10.2",
     "javaVersion": 8
   },
   "1.9": {
-    "url": "https://piston-data.mojang.com/v1/objects/edbb7b1758af33d365bf835eb9d13de005b1e274/server.jar",
     "sha1": "edbb7b1758af33d365bf835eb9d13de005b1e274",
+    "url": "https://piston-data.mojang.com/v1/objects/edbb7b1758af33d365bf835eb9d13de005b1e274/server.jar",
     "version": "1.9.4",
     "javaVersion": 8
   },
   "1.8": {
-    "url": "https://launcher.mojang.com/v1/objects/b58b2ceb36e01bcd8dbf49c8fb66c55a9f0676cd/server.jar",
     "sha1": "b58b2ceb36e01bcd8dbf49c8fb66c55a9f0676cd",
+    "url": "https://launcher.mojang.com/v1/objects/b58b2ceb36e01bcd8dbf49c8fb66c55a9f0676cd/server.jar",
     "version": "1.8.9",
     "javaVersion": 8
   },
   "1.7": {
-    "url": "https://launcher.mojang.com/v1/objects/952438ac4e01b4d115c5fc38f891710c4941df29/server.jar",
     "sha1": "952438ac4e01b4d115c5fc38f891710c4941df29",
+    "url": "https://launcher.mojang.com/v1/objects/952438ac4e01b4d115c5fc38f891710c4941df29/server.jar",
     "version": "1.7.10",
     "javaVersion": 8
   },
   "1.6": {
-    "url": "https://launcher.mojang.com/v1/objects/050f93c1f3fe9e2052398f7bd6aca10c63d64a87/server.jar",
     "sha1": "050f93c1f3fe9e2052398f7bd6aca10c63d64a87",
+    "url": "https://launcher.mojang.com/v1/objects/050f93c1f3fe9e2052398f7bd6aca10c63d64a87/server.jar",
     "version": "1.6.4",
     "javaVersion": null
   },
   "1.5": {
-    "url": "https://launcher.mojang.com/v1/objects/f9ae3f651319151ce99a0bfad6b34fa16eb6775f/server.jar",
     "sha1": "f9ae3f651319151ce99a0bfad6b34fa16eb6775f",
+    "url": "https://launcher.mojang.com/v1/objects/f9ae3f651319151ce99a0bfad6b34fa16eb6775f/server.jar",
     "version": "1.5.2",
     "javaVersion": 8
   },
   "1.4": {
-    "url": "https://launcher.mojang.com/v1/objects/2f0ec8efddd2f2c674c77be9ddb370b727dec676/server.jar",
     "sha1": "2f0ec8efddd2f2c674c77be9ddb370b727dec676",
+    "url": "https://launcher.mojang.com/v1/objects/2f0ec8efddd2f2c674c77be9ddb370b727dec676/server.jar",
     "version": "1.4.7",
     "javaVersion": 8
   },
   "1.3": {
-    "url": "https://launcher.mojang.com/v1/objects/3de2ae6c488135596e073a9589842800c9f53bfe/server.jar",
     "sha1": "3de2ae6c488135596e073a9589842800c9f53bfe",
+    "url": "https://launcher.mojang.com/v1/objects/3de2ae6c488135596e073a9589842800c9f53bfe/server.jar",
     "version": "1.3.2",
     "javaVersion": 8
   },
   "1.2": {
-    "url": "https://launcher.mojang.com/v1/objects/d8321edc9470e56b8ad5c67bbd16beba25843336/server.jar",
     "sha1": "d8321edc9470e56b8ad5c67bbd16beba25843336",
+    "url": "https://launcher.mojang.com/v1/objects/d8321edc9470e56b8ad5c67bbd16beba25843336/server.jar",
     "version": "1.2.5",
     "javaVersion": 8
   }
diff --git a/pkgs/games/minecraft/default.nix b/pkgs/games/minecraft/default.nix
index c9ce3bfb17f1..b4a74fecd4f5 100644
--- a/pkgs/games/minecraft/default.nix
+++ b/pkgs/games/minecraft/default.nix
@@ -4,7 +4,7 @@
 , copyDesktopItems
 , makeDesktopItem
 , makeWrapper
-, wrapGAppsHook
+, wrapGAppsHook3
 , gobject-introspection
 , jre # old or modded versions of the game may require Java 8 (https://aur.archlinux.org/packages/minecraft-launcher/#pinned-674960)
 , xorg
@@ -100,7 +100,7 @@ stdenv.mkDerivation rec {
     sha256 = "0w8z21ml79kblv20wh5lz037g130pxkgs8ll9s3bi94zn2pbrhim";
   };
 
-  nativeBuildInputs = [ makeWrapper wrapGAppsHook copyDesktopItems gobject-introspection ];
+  nativeBuildInputs = [ makeWrapper wrapGAppsHook3 copyDesktopItems gobject-introspection ];
 
   sourceRoot = ".";
 
@@ -151,6 +151,9 @@ stdenv.mkDerivation rec {
     sourceProvenance = with sourceTypes; [ binaryNativeCode ];
     license = licenses.unfree;
     platforms = [ "x86_64-linux" ];
+    # "minecraft-launcher will fail on NixOS for minecraft versions >1.19
+    # try prismlauncher or atlauncher instead"
+    broken = true;
   };
 
   passthru = {
diff --git a/pkgs/games/nile/default.nix b/pkgs/games/nile/default.nix
index b83eda87f934..928ba0743d04 100644
--- a/pkgs/games/nile/default.nix
+++ b/pkgs/games/nile/default.nix
@@ -15,14 +15,14 @@
 
 buildPythonApplication rec {
   pname = "nile";
-  version = "unstable-2024-03-09";
+  version = "1.0.3-unstable-2024-05-10";
   format = "pyproject";
 
   src = fetchFromGitHub {
     owner = "imLinguin";
     repo = "nile";
-    rev = "ae09acfc20fe4e462762666871f78caae70f6c74";
-    hash = "sha256-hqhIacsbultY3CvvkYAZHmhCkQLi1mkPQwkztaUOd10=";
+    rev = "74e3ca979b2a66f9174c04fd0279211e0276ac9c";
+    hash = "sha256-ezX9MLQsULRvX+X2NXYBQnKRzBRt9eN9JnJinzysI9o=";
   };
 
   disabled = pythonOlder "3.8";
@@ -56,5 +56,7 @@ buildPythonApplication rec {
     maintainers = with maintainers; [ aidalgol ];
   };
 
-  passthru.updateScript = unstableGitUpdater { };
+  passthru.updateScript = unstableGitUpdater {
+    tagPrefix = "v";
+  };
 }
diff --git a/pkgs/games/openclonk/default.nix b/pkgs/games/openclonk/default.nix
index 2249ab213a22..5dd8d8252d01 100644
--- a/pkgs/games/openclonk/default.nix
+++ b/pkgs/games/openclonk/default.nix
@@ -1,5 +1,6 @@
-{ lib, stdenv, fetchurl, fetchDebianPatch, fetchpatch, cmake, pkg-config
-, SDL2, libvorbis, libogg, libjpeg, libpng, freetype, glew, tinyxml, openal
+{ lib, stdenv, fetchurl, fetchFromGitHub, fetchDebianPatch, fetchpatch, cmake, pkg-config
+, SDL2, libvorbis, libogg, libjpeg, libpng, freetype, glew, tinyxml, openal, libepoxy
+, curl
 , freealut, readline, libb2, gcc-unwrapped
 , enableSoundtrack ? false # Enable the "Open Clonk Soundtrack - Explorers Journey" by David Oerther
 }:
@@ -10,12 +11,14 @@ let
     sha256 = "1ckj0dlpp5zsnkbb5qxxfxpkiq76jj2fgj91fyf3ll7n0gbwcgw5";
   };
 in stdenv.mkDerivation rec {
-  version = "8.1";
+  version = "unstable-2023-10-30";
   pname = "openclonk";
 
-  src = fetchurl {
-    url = "https://www.openclonk.org/builds/release/8.1/openclonk-${version}-src.tar.bz2";
-    sha256 = "0imkqjp8lww5p0cnqf4k4mb2v682mnsas63qmiz17rspakr7fxik";
+  src = fetchFromGitHub {
+    owner = "openclonk";
+    repo = "openclonk";
+    rev = "5275334a11ef7c23ce809f35d6b443abd91b415f";
+    sha256 = "14x5b2rh739156l4072rbsnv9n862jz1zafi6ng158ja5fwl16l2";
   };
 
   patches = [
@@ -26,15 +29,11 @@ in stdenv.mkDerivation rec {
       patch = "system-libb2.patch";
       hash = "sha256-zuH6zxSQXRhnt75092Xwb6XYv8UG391E5Arbnr7ApiI=";
     })
-    (fetchpatch {
-      name = "fix-gcc-11-build.patch";
-      url = "https://github.com/openclonk/openclonk/commit/e304efde2c8643bbc0fc1ad5e85024982744b233.patch";
-      hash = "sha256-jfVCgeZuYo4x53zhljKcnMDMIBECTRsUSxkl6JaL6HA=";
-    })
   ];
 
+  enableParallelInstalling = false;
+
   postInstall = ''
-    mv -v $out/games/openclonk $out/bin/
   '' + lib.optionalString enableSoundtrack ''
     ln -sv ${soundtrack_src} $out/share/games/openclonk/Music.ocg
   '';
@@ -43,6 +42,7 @@ in stdenv.mkDerivation rec {
 
   buildInputs = [
     SDL2 libvorbis libogg libjpeg libpng freetype glew tinyxml openal freealut
+    libepoxy curl
     readline libb2
   ];
 
diff --git a/pkgs/games/openlierox/default.nix b/pkgs/games/openlierox/default.nix
index 2543d71f0a88..f1fa65c403de 100644
--- a/pkgs/games/openlierox/default.nix
+++ b/pkgs/games/openlierox/default.nix
@@ -1,42 +1,79 @@
-{ lib, stdenv, fetchurl, libX11, xorgproto, gd, SDL, SDL_image, SDL_mixer, zlib
-, libxml2, pkg-config, curl, cmake, libzip }:
+{
+  lib,
+  stdenv,
+  fetchFromGitHub,
+  cmake,
+  pkg-config,
+  curl,
+  gd,
+  libX11,
+  libxml2,
+  libzip,
+  SDL,
+  SDL_image,
+  SDL_mixer,
+  zlib,
+}:
 
-stdenv.mkDerivation rec {
+stdenv.mkDerivation (finalAttrs: {
   pname = "openlierox";
-  version = "0.58rc3";
+  version = "0.58_rc5";
 
-  src = fetchurl {
-    url = "mirror://sourceforge/openlierox/OpenLieroX_0.58_rc3.src.tar.bz2";
-    sha256 = "1k35xppfqi3qfysv81xq3hj4qdy9j2ciinbkfdcmwclcsf3nh94z";
+  src = fetchFromGitHub {
+    owner = "albertz";
+    repo = "openlierox";
+    rev = finalAttrs.version;
+    hash = "sha256-4ofjroEHlfrQitc7M+YTNWut0LGgntgQoOeBWU8nscY=";
   };
 
-  env.NIX_CFLAGS_COMPILE = "-I${libxml2.dev}/include/libxml2 -std=c++98 -Wno-error";
+  postPatch = ''
+    sed 1i'#include <cstdint>' -i src/common/s*x.cpp
+    sed 1i'#include <libxml/parser.h>' -i include/XMLutils.h
+    substituteInPlace src/common/StringUtils.cpp \
+        --replace-fail "xmlErrorPtr" "const xmlError*"
+  '';
 
-  # The breakpad fails to build on x86_64, and it's only to report bugs upstream
-  cmakeFlags = [ "-DBREAKPAD=0" ];
+  strictDeps = true;
 
-  preConfigure = ''
-    cmakeFlags="$cmakeFlags -DSYSTEM_DATA_DIR=$out/share"
-  '';
+  nativeBuildInputs = [
+    cmake
+    pkg-config
+    SDL
+  ];
 
-  patchPhase = ''
-    sed -i s,curl/types.h,curl/curl.h, include/HTTP.h src/common/HTTP.cpp
-  '';
+  buildInputs = [
+    curl
+    gd
+    libX11
+    libxml2
+    libzip
+    SDL
+    SDL_image
+    SDL_mixer
+    zlib
+  ];
+
+  cmakeFlags = [ "-DSYSTEM_DATA_DIR=${placeholder "out"}/share" ];
+
+  env.NIX_CFLAGS_COMPILE = "-I${lib.getDev libxml2}/include/libxml2";
 
   installPhase = ''
-    mkdir -p $out/bin $out/share/OpenLieroX
-    cp bin/* $out/bin
-    cp -R ../share/gamedir/* $out/share/OpenLieroX
-  '';
+    runHook preInstall
 
-  nativeBuildInputs = [ cmake pkg-config curl ];
-  buildInputs = [ libX11 xorgproto gd SDL SDL_image SDL_mixer zlib libxml2
-    libzip ];
+    install -Dm755 bin/* -t $out/bin
+
+    mkdir -p $out/share/OpenLieroX
+    cp -r ../share/gamedir/* $out/share/OpenLieroX
+
+    runHook postInstall
+  '';
 
   meta = {
-    homepage = "http://openlierox.net";
     description = "Real-time game with Worms-like shooting";
+    homepage = "http://openlierox.net";
     license = lib.licenses.lgpl2Plus;
+    mainProgram = "openlierox";
+    maintainers = with lib.maintainers; [ tomasajt ];
     platforms = lib.platforms.linux;
   };
-}
+})
diff --git a/pkgs/games/openrct2/default.nix b/pkgs/games/openrct2/default.nix
index 485b7104b20a..4a8a1c255e89 100644
--- a/pkgs/games/openrct2/default.nix
+++ b/pkgs/games/openrct2/default.nix
@@ -30,27 +30,27 @@
 }:
 
 let
-  openrct2-version = "0.4.8";
+  openrct2-version = "0.4.11";
 
   # Those versions MUST match the pinned versions within the CMakeLists.txt
   # file. The REPLAYS repository from the CMakeLists.txt is not necessary.
-  objects-version = "1.3.13";
+  objects-version = "1.4.4";
   openmsx-version = "1.5";
-  opensfx-version = "1.0.3";
+  opensfx-version = "1.0.5";
   title-sequences-version = "0.4.6";
 
   openrct2-src = fetchFromGitHub {
     owner = "OpenRCT2";
     repo = "OpenRCT2";
     rev = "v${openrct2-version}";
-    hash = "sha256-jSKAgohNMHuyOu4gUHyyZf1I7UrsXGDV5XwwK1DQPyM=";
+    hash = "sha256-zaaVieU/hulc2G/F19diJug3xuj3ejn5ihnmKfkBDcQ=";
   };
 
   objects-src = fetchFromGitHub {
     owner = "OpenRCT2";
     repo = "objects";
     rev = "v${objects-version}";
-    hash = "sha256-7RvRe7skXH5x8RbkQgtKs1YMBwq8dHInVo/4FAJwUD0=";
+    hash = "sha256-wKxWp/DSKkxCEI0lp4X8F9LxQsUKZfLk2CgajQ+y84k=";
   };
 
   openmsx-src = fetchFromGitHub {
@@ -64,7 +64,7 @@ let
     owner = "OpenRCT2";
     repo = "OpenSoundEffects";
     rev = "v${opensfx-version}";
-    hash = "sha256-AMuCpq1Hszi2Vikto/cX9g81LwBDskaRMTLxNzU0/Gk=";
+    hash = "sha256-ucADnMLGm36eAo+NiioxEzeMqtu7YbGF9wsydK1mmoE=";
   };
 
   title-sequences-src = fetchFromGitHub {
diff --git a/pkgs/games/openttd/jgrpp.nix b/pkgs/games/openttd/jgrpp.nix
index d26c62dd8906..6dea02eb49f0 100644
--- a/pkgs/games/openttd/jgrpp.nix
+++ b/pkgs/games/openttd/jgrpp.nix
@@ -2,13 +2,13 @@
 
 openttd.overrideAttrs (oldAttrs: rec {
   pname = "openttd-jgrpp";
-  version = "0.58.2";
+  version = "0.59.0";
 
   src = fetchFromGitHub rec {
     owner = "JGRennison";
     repo = "OpenTTD-patches";
     rev = "jgrpp-${version}";
-    hash = "sha256-XwKCqfYgrqQpo/2L+vHCde/z2QV88BFL+WQqvsEYdhE=";
+    hash = "sha256-90swZyzEdCpWsZb0aZnwRrzGkJT6gef1kMB/q+EXE3M=";
   };
 
   buildInputs = oldAttrs.buildInputs ++ [ zstd ];
diff --git a/pkgs/games/principia/default.nix b/pkgs/games/principia/default.nix
index e97fc509c5b0..0cf659e448e0 100644
--- a/pkgs/games/principia/default.nix
+++ b/pkgs/games/principia/default.nix
@@ -3,7 +3,7 @@
 , fetchFromGitHub
 , cmake
 , pkg-config
-, wrapGAppsHook
+, wrapGAppsHook3
 
 , curl
 , freetype
@@ -33,7 +33,7 @@ stdenv.mkDerivation (finalAttrs: {
   nativeBuildInputs = [
     cmake
     pkg-config
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
diff --git a/pkgs/games/runescape-launcher/default.nix b/pkgs/games/runescape-launcher/default.nix
index 062a194c83dc..6bed4908f471 100644
--- a/pkgs/games/runescape-launcher/default.nix
+++ b/pkgs/games/runescape-launcher/default.nix
@@ -18,7 +18,7 @@
 , openssl_1_1
 , pango
 , SDL2
-, wrapGAppsHook
+, wrapGAppsHook3
 , xdg-utils
 , xorg
 , xorg_sys_opengl
@@ -40,7 +40,7 @@ let
     nativeBuildInputs = [
       autoPatchelfHook
       dpkg
-      wrapGAppsHook
+      wrapGAppsHook3
     ];
 
     buildInputs = [
diff --git a/pkgs/games/sgt-puzzles/default.nix b/pkgs/games/sgt-puzzles/default.nix
index e5be3c4ae71e..304c0f9b27c7 100644
--- a/pkgs/games/sgt-puzzles/default.nix
+++ b/pkgs/games/sgt-puzzles/default.nix
@@ -1,6 +1,6 @@
 { lib, stdenv, fetchurl, desktop-file-utils
 , gtk3, libX11, cmake, imagemagick
-, pkg-config, perl, wrapGAppsHook, nixosTests, writeScript
+, pkg-config, perl, wrapGAppsHook3, nixosTests, writeScript
 , isMobile ? false
 }:
 
@@ -24,7 +24,7 @@ stdenv.mkDerivation rec {
     imagemagick
     perl
     pkg-config
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   env.NIX_CFLAGS_COMPILE = lib.optionalString isMobile "-DSTYLUS_BASED";
diff --git a/pkgs/games/shattered-pixel-dungeon/default.nix b/pkgs/games/shattered-pixel-dungeon/default.nix
index fbafe8c1b326..dd5b5c082803 100644
--- a/pkgs/games/shattered-pixel-dungeon/default.nix
+++ b/pkgs/games/shattered-pixel-dungeon/default.nix
@@ -5,13 +5,13 @@
 
 callPackage ./generic.nix rec {
   pname = "shattered-pixel-dungeon";
-  version = "2.3.2";
+  version = "2.4.0";
 
   src = fetchFromGitHub {
     owner = "00-Evan";
     repo = "shattered-pixel-dungeon";
     rev = "v${version}";
-    hash = "sha256-CZOi3kLwYdA4U9LjgK4ukPTLFUodyubSQg9JaJpUB9s=";
+    hash = "sha256-WTmzSuEoXLhr14vm2eQAmhmbTX/v7uKioQ1DcLnvAUw=";
   };
 
   depsHash = "sha256-vihoR0bPh7590sRxeYJ1uuynNRxtRBuiFUrdmsRNUJc=";
diff --git a/pkgs/games/space-station-14-launcher/space-station-14-launcher.nix b/pkgs/games/space-station-14-launcher/space-station-14-launcher.nix
index d6eedb6e9f69..c2071552e4cc 100644
--- a/pkgs/games/space-station-14-launcher/space-station-14-launcher.nix
+++ b/pkgs/games/space-station-14-launcher/space-station-14-launcher.nix
@@ -2,7 +2,7 @@
 , buildDotnetModule
 , dotnetCorePackages
 , fetchFromGitHub
-, wrapGAppsHook
+, wrapGAppsHook3
 , iconConvTools
 , copyDesktopItems
 , makeDesktopItem
@@ -73,7 +73,7 @@ buildDotnetModule rec {
     "-nologo"
   ];
 
-  nativeBuildInputs = [ wrapGAppsHook iconConvTools copyDesktopItems ];
+  nativeBuildInputs = [ wrapGAppsHook3 iconConvTools copyDesktopItems ];
 
   runtimeDeps = [
     # Required by the game.
diff --git a/pkgs/games/starsector/default.nix b/pkgs/games/starsector/default.nix
index 535039c79f2f..8e38f232f21e 100644
--- a/pkgs/games/starsector/default.nix
+++ b/pkgs/games/starsector/default.nix
@@ -62,15 +62,17 @@ stdenv.mkDerivation rec {
 
   # it tries to run everything with relative paths, which makes it CWD dependent
   # also point mod, screenshot, and save directory to $XDG_DATA_HOME
-  # additionally, add some GC options to improve performance of the game
-  # and remove flags "PermSize" and "MaxPermSize" that were removed with Java 8
+  # additionally, add some GC options to improve performance of the game,
+  # remove flags "PermSize" and "MaxPermSize" that were removed with Java 8 and
+  # pass-through CLI args ($@) to the JVM.
   postPatch = ''
     substituteInPlace starsector.sh \
       --replace-fail "./jre_linux/bin/java" "${openjdk}/bin/java" \
       --replace-fail "./native/linux" "$out/share/starsector/native/linux" \
       --replace-fail "=." "=\''${XDG_DATA_HOME:-\$HOME/.local/share}/starsector" \
-      --replace-warn "-XX:+CompilerThreadHintNoPreempt" "-XX:+UnlockDiagnosticVMOptions -XX:-BytecodeVerificationRemote -XX:+CMSConcurrentMTEnabled -XX:+DisableExplicitGC" \
-      --replace-quiet " -XX:PermSize=192m -XX:MaxPermSize=192m" ""
+      --replace-fail "-XX:+CompilerThreadHintNoPreempt" "-XX:+UnlockDiagnosticVMOptions -XX:-BytecodeVerificationRemote -XX:+CMSConcurrentMTEnabled -XX:+DisableExplicitGC" \
+      --replace-quiet " -XX:PermSize=192m -XX:MaxPermSize=192m" "" \
+      --replace-fail "com.fs.starfarer.StarfarerLauncher" "\"\$@\" com.fs.starfarer.StarfarerLauncher"
   '';
 
   passthru.updateScript = writeScript "starsector-update-script" ''
diff --git a/pkgs/games/the-powder-toy/default.nix b/pkgs/games/the-powder-toy/default.nix
deleted file mode 100644
index 2cb972344fd6..000000000000
--- a/pkgs/games/the-powder-toy/default.nix
+++ /dev/null
@@ -1,65 +0,0 @@
-{ lib
-, stdenv
-, fetchFromGitHub
-, fetchpatch
-, meson
-, ninja
-, pkg-config
-, python3
-, SDL2
-, bzip2
-, curl
-, fftwFloat
-, lua
-, luajit
-, zlib
-, jsoncpp
-, libpng
-, Cocoa }:
-
-stdenv.mkDerivation rec {
-  pname = "the-powder-toy";
-  version = "97.0.352";
-
-  src = fetchFromGitHub {
-    owner = "The-Powder-Toy";
-    repo = "The-Powder-Toy";
-    rev = "v${version}";
-    sha256 = "sha256-LYohsqFU9LBgTXMaV6cf8/zf3fBvT+s5A1JBpPHekH8=";
-  };
-
-  patches = [
-    # Fix gcc-13 build failure:
-    #   https://github.com/The-Powder-Toy/The-Powder-Toy/pull/898
-    (fetchpatch {
-      name = "gcc-13.patch";
-      url = "https://github.com/The-Powder-Toy/The-Powder-Toy/commit/162bce9a1036e0c233399941410364c4a4370980.patch";
-      hash = "sha256-oQNwKemV3BjMLSUd6zMCKqiClcc3Ouxwn3jagf/Q1/I=";
-    })
-  ];
-
-  nativeBuildInputs = [ meson ninja pkg-config python3 ];
-
-  buildInputs = [ SDL2 bzip2 curl fftwFloat lua luajit zlib jsoncpp libpng ]
-  ++ lib.optionals stdenv.isDarwin [ Cocoa ];
-
-  mesonFlags = [ "-Dworkaround_elusive_bzip2=false" ];
-
-  installPhase = ''
-    install -Dm 755 powder $out/bin/powder
-
-    mkdir -p $out/share/applications
-    mv ../resources $out/share
-  '' + lib.optionalString stdenv.isLinux ''
-    mv ./resources/powder.desktop $out/share/applications
-  '';
-
-  meta = with lib; {
-    description = "A free 2D physics sandbox game";
-    homepage = "https://powdertoy.co.uk/";
-    platforms = platforms.unix;
-    license = licenses.gpl3Plus;
-    maintainers = with maintainers; [ abbradar siraben ];
-    mainProgram = "powder";
-  };
-}
diff --git a/pkgs/games/vassal/default.nix b/pkgs/games/vassal/default.nix
index 31996a30c1fe..1bb5c06ea98b 100644
--- a/pkgs/games/vassal/default.nix
+++ b/pkgs/games/vassal/default.nix
@@ -4,16 +4,16 @@
 , glib
 , jre
 , makeWrapper
-, wrapGAppsHook
+, wrapGAppsHook3
 }:
 
 stdenv.mkDerivation rec {
   pname = "VASSAL";
-  version = "3.7.10";
+  version = "3.7.12";
 
   src = fetchzip {
     url = "https://github.com/vassalengine/vassal/releases/download/${version}/${pname}-${version}-linux.tar.bz2";
-    sha256 = "sha256-cQ2tLd3KU46qe/PrMPh3I3+KQxNGBB4WbRfPHpT9IVA=";
+    sha256 = "sha256-pNpDaGx/h3W+AsX965zu3zZ94kMYvh1pV8C8qYN0imc=";
   };
 
   buildInputs = [
@@ -22,7 +22,7 @@ stdenv.mkDerivation rec {
 
   nativeBuildInputs = [
     makeWrapper
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   installPhase = ''
diff --git a/pkgs/games/worldofgoo/default.nix b/pkgs/games/worldofgoo/default.nix
index 06f6b71172ae..23ba7eb86155 100644
--- a/pkgs/games/worldofgoo/default.nix
+++ b/pkgs/games/worldofgoo/default.nix
@@ -35,7 +35,6 @@ stdenv.mkDerivation rec {
 
   nativeBuildInputs = [ unzip ];
   sourceRoot = pname;
-  phases = [ "unpackPhase installPhase" ];
 
   libPath = lib.makeLibraryPath [ stdenv.cc.cc.lib stdenv.cc.libc SDL2 SDL2_mixer
     libogg libvorbis ];
diff --git a/pkgs/games/xskat/default.nix b/pkgs/games/xskat/default.nix
index 6f28a6846ea7..993070c89c96 100644
--- a/pkgs/games/xskat/default.nix
+++ b/pkgs/games/xskat/default.nix
@@ -12,6 +12,8 @@ stdenv.mkDerivation rec {
     sha256 = "8ba52797ccbd131dce69b96288f525b0d55dee5de4008733f7a5a51deb831c10";
   };
 
+  env.NIX_CFLAGS_COMPILE = "-Wno-implicit-int";
+
   preInstall = ''
     sed -i Makefile \
       -e "s|.* BINDIR .*|   BINDIR = $out/bin|" \
diff --git a/pkgs/kde/frameworks/kfilemetadata/default.nix b/pkgs/kde/frameworks/kfilemetadata/default.nix
index b6b5f3a7bfbd..0e9fd5489e7e 100644
--- a/pkgs/kde/frameworks/kfilemetadata/default.nix
+++ b/pkgs/kde/frameworks/kfilemetadata/default.nix
@@ -5,7 +5,6 @@
   ebook_tools,
   exiv2,
   ffmpeg,
-  kcodecs,
   kconfig,
   kdegraphics-mobipocket,
   libappimage,
@@ -18,5 +17,5 @@ mkKdeDerivation {
   patches = [./cmake-install-paths.patch];
 
   extraNativeBuildInputs = [pkg-config];
-  extraBuildInputs = [attr ebook_tools exiv2 ffmpeg kcodecs kconfig kdegraphics-mobipocket libappimage];
+  extraBuildInputs = [attr ebook_tools exiv2 ffmpeg kconfig kdegraphics-mobipocket libappimage];
 }
diff --git a/pkgs/kde/frameworks/kguiaddons/default.nix b/pkgs/kde/frameworks/kguiaddons/default.nix
index 3c1fb8034a0a..3aa8bcdf29f5 100644
--- a/pkgs/kde/frameworks/kguiaddons/default.nix
+++ b/pkgs/kde/frameworks/kguiaddons/default.nix
@@ -2,12 +2,11 @@
   mkKdeDerivation,
   qtwayland,
   pkg-config,
-  wayland,
 }:
 mkKdeDerivation {
   pname = "kguiaddons";
 
   extraNativeBuildInputs = [pkg-config];
-  extraBuildInputs = [qtwayland wayland];
+  extraBuildInputs = [qtwayland];
   meta.mainProgram = "kde-geo-uri-handler";
 }
diff --git a/pkgs/kde/frameworks/kidletime/default.nix b/pkgs/kde/frameworks/kidletime/default.nix
index 8fd68f04ec14..7171822ec1da 100644
--- a/pkgs/kde/frameworks/kidletime/default.nix
+++ b/pkgs/kde/frameworks/kidletime/default.nix
@@ -2,12 +2,11 @@
   mkKdeDerivation,
   qtwayland,
   pkg-config,
-  wayland-protocols,
   xorg,
 }:
 mkKdeDerivation {
   pname = "kidletime";
 
   extraNativeBuildInputs = [pkg-config];
-  extraBuildInputs = [qtwayland xorg.libXScrnSaver wayland-protocols];
+  extraBuildInputs = [qtwayland xorg.libXScrnSaver];
 }
diff --git a/pkgs/kde/frameworks/kwindowsystem/default.nix b/pkgs/kde/frameworks/kwindowsystem/default.nix
index 711638cb106c..a5fb8eddb7ea 100644
--- a/pkgs/kde/frameworks/kwindowsystem/default.nix
+++ b/pkgs/kde/frameworks/kwindowsystem/default.nix
@@ -4,11 +4,10 @@
   qtdeclarative,
   qtwayland,
   pkg-config,
-  wayland,
 }:
 mkKdeDerivation {
   pname = "kwindowsystem";
 
   extraNativeBuildInputs = [qttools pkg-config];
-  extraBuildInputs = [qtdeclarative qtwayland wayland];
+  extraBuildInputs = [qtdeclarative qtwayland];
 }
diff --git a/pkgs/kde/frameworks/qqc2-desktop-style/default.nix b/pkgs/kde/frameworks/qqc2-desktop-style/default.nix
index d681efd14f41..3c756d9b9353 100644
--- a/pkgs/kde/frameworks/qqc2-desktop-style/default.nix
+++ b/pkgs/kde/frameworks/qqc2-desktop-style/default.nix
@@ -2,12 +2,10 @@
   mkKdeDerivation,
   qtdeclarative,
   qttools,
-  sonnet,
 }:
 mkKdeDerivation {
   pname = "qqc2-desktop-style";
 
   extraNativeBuildInputs = [qttools];
   extraBuildInputs = [qtdeclarative];
-  extraPropagatedBuildInputs = [sonnet];
 }
diff --git a/pkgs/kde/frameworks/solid/default.nix b/pkgs/kde/frameworks/solid/default.nix
index d59d15f16ead..2c628b8dbc3e 100644
--- a/pkgs/kde/frameworks/solid/default.nix
+++ b/pkgs/kde/frameworks/solid/default.nix
@@ -1,6 +1,5 @@
 {
   mkKdeDerivation,
-  fetchpatch,
   qttools,
   bison,
   flex,
@@ -12,13 +11,6 @@ mkKdeDerivation {
   patches = [
     # Also search /run/wrappers for mount/umount
     ./fix-search-path.patch
-
-    # Backport fix for mounting removable LUKS devices
-    # FIXME: remove in 6.2
-    (fetchpatch {
-      url = "https://invent.kde.org/frameworks/solid/-/commit/a3b18591ba144fae0cd0cfc087a45c64000d4e51.patch";
-      hash = "sha256-e7+amjOShUSzPb0pAxnAuuh/fbK/YLESqR0co1bs+wg=";
-    })
   ];
 
   extraNativeBuildInputs = [qttools bison flex];
diff --git a/pkgs/kde/gear/akonadi-search/default.nix b/pkgs/kde/gear/akonadi-search/default.nix
index 6e89f0b685ff..416dd91a9ee5 100644
--- a/pkgs/kde/gear/akonadi-search/default.nix
+++ b/pkgs/kde/gear/akonadi-search/default.nix
@@ -26,9 +26,8 @@ mkKdeDerivation rec {
   extraNativeBuildInputs = [
     rustPlatform.cargoSetupHook
     cargo
-    corrosion
     rustc
   ];
 
-  extraBuildInputs = [xapian];
+  extraBuildInputs = [corrosion xapian];
 }
diff --git a/pkgs/kde/gear/angelfish/default.nix b/pkgs/kde/gear/angelfish/default.nix
index 2250b5db6a43..0d9b4a341f05 100644
--- a/pkgs/kde/gear/angelfish/default.nix
+++ b/pkgs/kde/gear/angelfish/default.nix
@@ -25,9 +25,8 @@ mkKdeDerivation rec {
   extraNativeBuildInputs = [
     rustPlatform.cargoSetupHook
     cargo
-    corrosion
     rustc
   ];
 
-  extraBuildInputs = [qtsvg qtwebengine qcoro];
+  extraBuildInputs = [qtsvg qtwebengine corrosion qcoro];
 }
diff --git a/pkgs/kde/gear/arianna/default.nix b/pkgs/kde/gear/arianna/default.nix
index 9e56cfda9efe..247da11b6d3d 100644
--- a/pkgs/kde/gear/arianna/default.nix
+++ b/pkgs/kde/gear/arianna/default.nix
@@ -5,7 +5,6 @@
   qtwebchannel,
   qtwebengine,
   kitemmodels,
-  kquickcharts,
 }:
 mkKdeDerivation {
   pname = "arianna";
@@ -16,7 +15,6 @@ mkKdeDerivation {
     qtwebchannel
     qtwebengine
     kitemmodels
-    kquickcharts
   ];
   meta.mainProgram = "arianna";
 }
diff --git a/pkgs/kde/gear/ghostwriter/default.nix b/pkgs/kde/gear/ghostwriter/default.nix
index f4b4a3cee21e..273e805549e7 100644
--- a/pkgs/kde/gear/ghostwriter/default.nix
+++ b/pkgs/kde/gear/ghostwriter/default.nix
@@ -12,7 +12,7 @@
 mkKdeDerivation {
   pname = "ghostwriter";
 
-  extraNativeBuildInputs = [pkg-config kdoctools];
-  extraBuildInputs = [qtsvg qttools qtwebchannel qtwebengine qt5compat hunspell];
+  extraNativeBuildInputs = [pkg-config];
+  extraBuildInputs = [qtsvg qttools qtwebchannel qtwebengine qt5compat kdoctools hunspell];
   meta.mainProgram = "ghostwriter";
 }
diff --git a/pkgs/kde/gear/gwenview/default.nix b/pkgs/kde/gear/gwenview/default.nix
index 2788e592ef3e..4bbb5f98eb1e 100644
--- a/pkgs/kde/gear/gwenview/default.nix
+++ b/pkgs/kde/gear/gwenview/default.nix
@@ -10,8 +10,6 @@
   kimageannotator,
   lcms2,
   libtiff,
-  wayland,
-  wayland-protocols,
 }:
 mkKdeDerivation {
   pname = "gwenview";
@@ -29,7 +27,5 @@ mkKdeDerivation {
     kimageannotator
     lcms2
     libtiff
-    wayland
-    wayland-protocols
   ];
 }
diff --git a/pkgs/kde/gear/kasts/default.nix b/pkgs/kde/gear/kasts/default.nix
index 860af4a1f081..2375bb00af21 100644
--- a/pkgs/kde/gear/kasts/default.nix
+++ b/pkgs/kde/gear/kasts/default.nix
@@ -3,7 +3,6 @@
   qtsvg,
   qtmultimedia,
   pkg-config,
-  qqc2-desktop-style,
   taglib,
   libvlc,
 }:
@@ -14,7 +13,6 @@ mkKdeDerivation {
   extraBuildInputs = [
     qtsvg
     qtmultimedia
-    qqc2-desktop-style
     taglib
     libvlc
   ];
diff --git a/pkgs/kde/gear/kcalc/default.nix b/pkgs/kde/gear/kcalc/default.nix
index fdc55b353278..28f1d314ce96 100644
--- a/pkgs/kde/gear/kcalc/default.nix
+++ b/pkgs/kde/gear/kcalc/default.nix
@@ -8,7 +8,6 @@
 mkKdeDerivation {
   pname = "kcalc";
 
-  extraNativeBuildInputs = [kdoctools];
-  extraBuildInputs = [qt5compat gmp mpfr];
+  extraBuildInputs = [qt5compat gmp mpfr kdoctools];
   meta.mainProgram = "kcalc";
 }
diff --git a/pkgs/kde/gear/kdeconnect-kde/default.nix b/pkgs/kde/gear/kdeconnect-kde/default.nix
index fd8868cf41c2..2381dd58c868 100644
--- a/pkgs/kde/gear/kdeconnect-kde/default.nix
+++ b/pkgs/kde/gear/kdeconnect-kde/default.nix
@@ -1,5 +1,8 @@
 {
+  lib,
   mkKdeDerivation,
+  substituteAll,
+  sshfs,
   qtconnectivity,
   qtmultimedia,
   qtwayland,
@@ -11,6 +14,23 @@
 mkKdeDerivation {
   pname = "kdeconnect-kde";
 
+  patches = [
+    (substituteAll {
+      src = ./hardcode-sshfs-path.patch;
+      sshfs = lib.getExe sshfs;
+    })
+    # We build OpenSSH without ssh-dss support, so sshfs explodes at runtime.
+    # See: https://github.com/NixOS/nixpkgs/commit/6ee4b8c8bf815567f7d0fa131576d2b8c0a18167
+    # FIXME: upstream?
+    ./remove-ssh-dss.patch
+  ];
+
+  # Hardcoded as a QString, which is UTF-16 so Nix can't pick it up automatically
+  postFixup = ''
+    mkdir -p $out/nix-support
+    echo "${sshfs}" > $out/nix-support/depends
+  '';
+
   extraNativeBuildInputs = [pkg-config];
   extraBuildInputs = [qtconnectivity qtmultimedia qtwayland wayland wayland-protocols libfakekey];
 
diff --git a/pkgs/kde/gear/kdeconnect-kde/hardcode-sshfs-path.patch b/pkgs/kde/gear/kdeconnect-kde/hardcode-sshfs-path.patch
new file mode 100644
index 000000000000..df78f60fcf90
--- /dev/null
+++ b/pkgs/kde/gear/kdeconnect-kde/hardcode-sshfs-path.patch
@@ -0,0 +1,13 @@
+diff --git a/plugins/sftp/mounter.cpp b/plugins/sftp/mounter.cpp
+index 29e94f3b..c71e552f 100644
+--- a/plugins/sftp/mounter.cpp
++++ b/plugins/sftp/mounter.cpp
+@@ -94,7 +94,7 @@ void Mounter::onPacketReceived(const NetworkPacket &np)
+ 
+     QDir().mkpath(m_mountPoint);
+ 
+-    const QString program = QStringLiteral("sshfs");
++    const QString program = QStringLiteral("@sshfs@");
+ 
+     QString path;
+     if (np.has(QStringLiteral("multiPaths")))
diff --git a/pkgs/kde/gear/kdeconnect-kde/remove-ssh-dss.patch b/pkgs/kde/gear/kdeconnect-kde/remove-ssh-dss.patch
new file mode 100644
index 000000000000..b404132f4e97
--- /dev/null
+++ b/pkgs/kde/gear/kdeconnect-kde/remove-ssh-dss.patch
@@ -0,0 +1,13 @@
+diff --git a/plugins/sftp/mounter.cpp b/plugins/sftp/mounter.cpp
+index 29e94f3b..0f300c63 100644
+--- a/plugins/sftp/mounter.cpp
++++ b/plugins/sftp/mounter.cpp
+@@ -122,7 +122,7 @@ void Mounter::onPacketReceived(const NetworkPacket &np)
+                       << QStringLiteral("-o") << QStringLiteral("IdentityFile=") + KdeConnectConfig::instance().privateKeyPath()
+                       << QStringLiteral("-o") << QStringLiteral("StrictHostKeyChecking=no") // Do not ask for confirmation because it is not a known host
+                       << QStringLiteral("-o") << QStringLiteral("UserKnownHostsFile=/dev/null") // Prevent storing as a known host
+-                      << QStringLiteral("-o") << QStringLiteral("HostKeyAlgorithms=+ssh-dss\\,ssh-rsa") // https://bugs.kde.org/show_bug.cgi?id=351725
++                      << QStringLiteral("-o") << QStringLiteral("HostKeyAlgorithms=+ssh-rsa") // https://bugs.kde.org/show_bug.cgi?id=351725
+                       << QStringLiteral("-o") << QStringLiteral("PubkeyAcceptedKeyTypes=+ssh-rsa") // https://bugs.kde.org/show_bug.cgi?id=443155
+                       << QStringLiteral("-o") << QStringLiteral("uid=") + QString::number(getuid())
+                       << QStringLiteral("-o") << QStringLiteral("gid=") + QString::number(getgid())
diff --git a/pkgs/kde/gear/kdepim-addons/default.nix b/pkgs/kde/gear/kdepim-addons/default.nix
index e256ee8fdf1d..fded9e9b0205 100644
--- a/pkgs/kde/gear/kdepim-addons/default.nix
+++ b/pkgs/kde/gear/kdepim-addons/default.nix
@@ -4,8 +4,8 @@
   rustPlatform,
   cargo,
   rustc,
-  corrosion,
   discount,
+  corrosion,
   alpaka,
   # provided as callPackage input to enable easier overrides through overlays
   cargoHash ? "sha256-Yt1Gxw9Q1Q108YRJoUIpeNZlGjZ7yabLW3bRO4+x6Vo=",
@@ -28,9 +28,8 @@ mkKdeDerivation rec {
   extraNativeBuildInputs = [
     rustPlatform.cargoSetupHook
     cargo
-    corrosion
     rustc
   ];
 
-  extraBuildInputs = [discount alpaka];
+  extraBuildInputs = [discount corrosion alpaka];
 }
diff --git a/pkgs/kde/gear/kio-extras/default.nix b/pkgs/kde/gear/kio-extras/default.nix
index b80f9175a5e9..18cf46294137 100644
--- a/pkgs/kde/gear/kio-extras/default.nix
+++ b/pkgs/kde/gear/kio-extras/default.nix
@@ -3,7 +3,6 @@
   qt5compat,
   qtsvg,
   pkg-config,
-  libkexiv2,
   samba,
   libssh,
   libmtp,
@@ -24,7 +23,6 @@ mkKdeDerivation {
   extraBuildInputs = [
     qt5compat
     qtsvg
-    libkexiv2
 
     samba
     libssh
diff --git a/pkgs/kde/gear/koko/default.nix b/pkgs/kde/gear/koko/default.nix
index faec24560b6c..1241f68e12a7 100644
--- a/pkgs/kde/gear/koko/default.nix
+++ b/pkgs/kde/gear/koko/default.nix
@@ -7,7 +7,6 @@
   qtsvg,
   exiv2,
   kirigami-addons,
-  kquickimageeditor,
 }: let
   # URLs snapshotted through
   # https://web.archive.org/save/$url
@@ -41,7 +40,6 @@ in
       qtsvg
       exiv2
       kirigami-addons
-      kquickimageeditor
     ];
     meta.mainProgram = "koko";
   }
diff --git a/pkgs/kde/gear/kopeninghours/default.nix b/pkgs/kde/gear/kopeninghours/default.nix
index b315d765fb39..7ba5214ac09f 100644
--- a/pkgs/kde/gear/kopeninghours/default.nix
+++ b/pkgs/kde/gear/kopeninghours/default.nix
@@ -16,5 +16,6 @@ mkKdeDerivation {
       enablePython = true;
       python = python3;
     })
+    python3
   ];
 }
diff --git a/pkgs/kde/gear/plasmatube/default.nix b/pkgs/kde/gear/plasmatube/default.nix
index 05285f6b6c1d..63236fe00d76 100644
--- a/pkgs/kde/gear/plasmatube/default.nix
+++ b/pkgs/kde/gear/plasmatube/default.nix
@@ -3,18 +3,15 @@
   mkKdeDerivation,
   qtquick3d,
   qtsvg,
-  purpose,
-  qqc2-desktop-style,
   pkg-config,
-  mpv,
+  mpv-unwrapped,
   yt-dlp,
 }:
 mkKdeDerivation {
   pname = "plasmatube";
 
   extraNativeBuildInputs = [pkg-config];
-  extraBuildInputs = [qtquick3d qtsvg mpv qqc2-desktop-style];
-  extraPropagatedBuildInputs = [purpose];
+  extraBuildInputs = [qtquick3d qtsvg mpv-unwrapped];
 
   qtWrapperArgs = ["--prefix" "PATH" ":" (lib.makeBinPath [ yt-dlp ])];
   meta.mainProgram = "plasmatube";
diff --git a/pkgs/kde/gear/sweeper/default.nix b/pkgs/kde/gear/sweeper/default.nix
index e2b7fd934436..24e75b7c5301 100644
--- a/pkgs/kde/gear/sweeper/default.nix
+++ b/pkgs/kde/gear/sweeper/default.nix
@@ -1,10 +1,6 @@
-{
-  mkKdeDerivation,
-  plasma-activities-stats,
-}:
+{mkKdeDerivation}:
 mkKdeDerivation {
   pname = "sweeper";
 
-  extraBuildInputs = [plasma-activities-stats];
   meta.mainProgram = "sweeper";
 }
diff --git a/pkgs/kde/gear/tokodon/default.nix b/pkgs/kde/gear/tokodon/default.nix
index 1e12163eb98b..fd47144eda1d 100644
--- a/pkgs/kde/gear/tokodon/default.nix
+++ b/pkgs/kde/gear/tokodon/default.nix
@@ -5,14 +5,13 @@
   qtsvg,
   qtwebsockets,
   qtwebview,
-  mpv,
-  kitemmodels,
+  mpv-unwrapped,
   sonnet,
 }:
 mkKdeDerivation {
   pname = "tokodon";
 
   extraNativeBuildInputs = [pkg-config];
-  extraBuildInputs = [qtmultimedia qtsvg qtwebsockets qtwebview mpv kitemmodels sonnet];
+  extraBuildInputs = [qtmultimedia qtsvg qtwebsockets qtwebview mpv-unwrapped sonnet];
   meta.mainProgram = "tokodon";
 }
diff --git a/pkgs/kde/generated/dependencies.json b/pkgs/kde/generated/dependencies.json
index aed3f1281452..70f5499bfdbc 100644
--- a/pkgs/kde/generated/dependencies.json
+++ b/pkgs/kde/generated/dependencies.json
@@ -18,7 +18,6 @@
       "kcrash",
       "ki18n",
       "kiconthemes",
-      "kio",
       "kitemmodels",
       "kwidgetsaddons",
       "kxmlgui"
@@ -70,6 +69,7 @@
     "akonadi-mime": [
       "akonadi",
       "extra-cmake-modules",
+      "kio",
       "kmime"
     ],
     "akonadi-notes": [
@@ -144,6 +144,7 @@
       "ki18n",
       "kirigami",
       "kirigami-addons",
+      "qqc2-desktop-style",
       "syndication"
     ],
     "alpaka": [
@@ -275,6 +276,7 @@
       "kconfigwidgets",
       "kcoreaddons",
       "kcrash",
+      "kdbusaddons",
       "kdoctools",
       "ki18n",
       "kiconthemes",
@@ -509,7 +511,6 @@
       "knotifyconfig",
       "kparts",
       "ktextwidgets",
-      "kwallet",
       "kwidgetsaddons",
       "kwindowsystem",
       "kxmlgui",
@@ -704,6 +705,7 @@
     "dolphin-plugins": [
       "dolphin",
       "extra-cmake-modules",
+      "kconfig",
       "kcoreaddons",
       "ki18n",
       "kio",
@@ -769,6 +771,7 @@
       "kiconthemes",
       "kio",
       "kirigami",
+      "kirigami-addons",
       "kxmlgui",
       "qqc2-desktop-style"
     ],
@@ -812,7 +815,8 @@
       "kcoreaddons",
       "kdbusaddons",
       "ki18n",
-      "kirigami"
+      "kirigami",
+      "kirigami-addons"
     ],
     "filelight": [
       "extra-cmake-modules",
@@ -875,15 +879,6 @@
       "kxmlgui",
       "sonnet"
     ],
-    "glaxnimate": [
-      "extra-cmake-modules",
-      "karchive",
-      "kcompletion",
-      "kconfigwidgets",
-      "kcoreaddons",
-      "kcrash",
-      "kxmlgui"
-    ],
     "granatier": [
       "extra-cmake-modules",
       "kconfig",
@@ -952,7 +947,20 @@
       "kiconthemes",
       "kio",
       "kirigami",
-      "mpvqt"
+      "mpvqt",
+      "qqc2-desktop-style"
+    ],
+    "hash-o-matic": [
+      "extra-cmake-modules",
+      "kcolorscheme",
+      "kconfig",
+      "kcoreaddons",
+      "kdbusaddons",
+      "ki18n",
+      "kirigami",
+      "kwindowsystem",
+      "libkleo",
+      "qqc2-desktop-style"
     ],
     "heaptrack": [
       "extra-cmake-modules",
@@ -1117,6 +1125,14 @@
       "libkdepim",
       "pimcommon"
     ],
+    "kaidan": [
+      "extra-cmake-modules",
+      "kcoreaddons",
+      "kio",
+      "kirigami",
+      "kirigami-addons",
+      "kquickimageeditor"
+    ],
     "kajongg": [
       "extra-cmake-modules",
       "kdoctools",
@@ -1183,7 +1199,8 @@
       "kcrash",
       "ki18n",
       "kirigami",
-      "kirigami-addons"
+      "kirigami-addons",
+      "qqc2-desktop-style"
     ],
     "kalternatives": [
       "extra-cmake-modules",
@@ -1281,6 +1298,7 @@
       "ki18n",
       "kirigami",
       "kirigami-addons",
+      "qqc2-desktop-style",
       "qtkeychain",
       "syndication",
       "threadweaver"
@@ -2113,11 +2131,13 @@
       "ki18n",
       "kirigami",
       "kwidgetsaddons",
-      "kwindowsystem"
+      "kwindowsystem",
+      "qqc2-desktop-style"
     ],
     "kfilemetadata": [
       "extra-cmake-modules",
       "karchive",
+      "kcodecs",
       "kcoreaddons",
       "ki18n",
       "poppler",
@@ -2150,6 +2170,7 @@
       "kconfigwidgets",
       "kcoreaddons",
       "kcrash",
+      "kdbusaddons",
       "kdnssd",
       "kdoctools",
       "ki18n",
@@ -2332,6 +2353,7 @@
       "extra-cmake-modules"
     ],
     "kiconthemes": [
+      "breeze-icons",
       "extra-cmake-modules",
       "karchive",
       "kcolorscheme",
@@ -2574,6 +2596,7 @@
     ],
     "kirigami-addons": [
       "extra-cmake-modules",
+      "kconfig",
       "ki18n",
       "kirigami"
     ],
@@ -2898,7 +2921,6 @@
       "extra-cmake-modules",
       "kconfig",
       "kconfigwidgets",
-      "kcrash",
       "kdbusaddons",
       "kdoctools",
       "kglobalaccel",
@@ -3419,7 +3441,6 @@
       "kiconthemes",
       "kio",
       "ktextaddons",
-      "ktexttemplate",
       "kwidgetsaddons",
       "kxmlgui",
       "sonnet",
@@ -3496,8 +3517,7 @@
       "kcoreaddons",
       "ki18n",
       "kirigami",
-      "kirigami-addons",
-      "kwindowsystem"
+      "kirigami-addons"
     ],
     "kregexpeditor": [
       "extra-cmake-modules",
@@ -3506,7 +3526,6 @@
       "kdoctools",
       "ki18n",
       "kiconthemes",
-      "kservice",
       "ktextwidgets",
       "kwidgetsaddons",
       "kxmlgui"
@@ -3555,7 +3574,6 @@
       "extra-cmake-modules",
       "kconfig",
       "kcoreaddons",
-      "kcrash",
       "kdbusaddons",
       "kdnssd",
       "kdoctools",
@@ -3633,7 +3651,6 @@
       "kconfigwidgets",
       "kcoreaddons",
       "kdbusaddons",
-      "kglobalaccel",
       "ki18n",
       "kpackage",
       "kservice",
@@ -3698,6 +3715,7 @@
       "kconfigwidgets",
       "kcoreaddons",
       "kcrash",
+      "kdbusaddons",
       "kdoctools",
       "ki18n",
       "kio",
@@ -3761,6 +3779,20 @@
       "kwallet",
       "kwidgetsaddons"
     ],
+    "kstars": [
+      "breeze-icons",
+      "extra-cmake-modules",
+      "kconfig",
+      "kcrash",
+      "kdoctools",
+      "kguiaddons",
+      "ki18n",
+      "knewstuff",
+      "knotifications",
+      "knotifyconfig",
+      "kplotting",
+      "kxmlgui"
+    ],
     "kstatusnotifieritem": [
       "extra-cmake-modules",
       "kwindowsystem"
@@ -3772,6 +3804,7 @@
       "kconfigwidgets",
       "kcoreaddons",
       "kcrash",
+      "kdbusaddons",
       "kdoctools",
       "kguiaddons",
       "ki18n",
@@ -3988,6 +4021,7 @@
       "kconfigwidgets",
       "kcoreaddons",
       "kcrash",
+      "kdbusaddons",
       "kdoctools",
       "ki18n",
       "kwidgetsaddons",
@@ -4054,6 +4088,7 @@
       "kdoctools",
       "ki18n",
       "kio",
+      "kservice",
       "kstatusnotifieritem",
       "kwallet",
       "kwidgetsaddons",
@@ -4198,7 +4233,8 @@
       "ktexteditor",
       "kuserfeedback",
       "kwidgetsaddons",
-      "kxmlgui"
+      "kxmlgui",
+      "purpose"
     ],
     "latte-dock": [
       "extra-cmake-modules",
@@ -4339,21 +4375,12 @@
     "libksysguard": [
       "extra-cmake-modules",
       "kauth",
-      "kcodecs",
-      "kcompletion",
       "kconfig",
-      "kconfigwidgets",
       "kcoreaddons",
-      "kglobalaccel",
       "ki18n",
-      "kiconthemes",
-      "kio",
-      "kjobwidgets",
       "knewstuff",
       "kpackage",
       "kservice",
-      "kwidgetsaddons",
-      "kwindowsystem",
       "solid"
     ],
     "libktorrent": [
@@ -4426,6 +4453,7 @@
       "kconfig",
       "kcoreaddons",
       "kcrash",
+      "kdbusaddons",
       "kdoctools",
       "kguiaddons",
       "ki18n",
@@ -4469,10 +4497,13 @@
     ],
     "marknote": [
       "extra-cmake-modules",
+      "kcolorscheme",
       "kconfig",
       "kcoreaddons",
       "ki18n",
-      "kirigami"
+      "kirigami",
+      "kirigami-addons",
+      "kxmlgui"
     ],
     "massif-visualizer": [
       "extra-cmake-modules",
@@ -4598,6 +4629,7 @@
     ],
     "milou": [
       "extra-cmake-modules",
+      "kconfig",
       "ki18n",
       "krunner",
       "libplasma"
@@ -4629,6 +4661,7 @@
       "kcolorscheme",
       "kconfig",
       "kcoreaddons",
+      "kcrash",
       "kdbusaddons",
       "ki18n",
       "kio",
@@ -4642,6 +4675,7 @@
       "kwindowsystem",
       "libquotient",
       "prison",
+      "purpose",
       "qcoro",
       "qqc2-desktop-style",
       "qtkeychain",
@@ -4687,12 +4721,15 @@
       "breeze-icons",
       "karchive",
       "kbookmarks",
+      "kcolorscheme",
       "kdegraphics-mobipocket",
       "ki18n",
       "kio",
+      "kitemviews",
       "kparts",
       "kpty",
       "ktextwidgets",
+      "kwidgetsaddons",
       "kxmlgui",
       "libkexiv2",
       "phonon",
@@ -4700,6 +4737,15 @@
       "purpose",
       "threadweaver"
     ],
+    "optiimage": [
+      "extra-cmake-modules",
+      "kcoreaddons",
+      "ki18n",
+      "kio",
+      "kirigami",
+      "kirigami-addons",
+      "qqc2-desktop-style"
+    ],
     "oxygen": [
       "extra-cmake-modules",
       "frameworkintegration",
@@ -4731,6 +4777,7 @@
       "kconfigwidgets",
       "kcoreaddons",
       "kcrash",
+      "kdbusaddons",
       "kdoctools",
       "ki18n",
       "kio",
@@ -5210,18 +5257,11 @@
     ],
     "plasma-settings": [
       "extra-cmake-modules",
-      "kauth",
-      "kconfig",
+      "kcmutils",
       "kcoreaddons",
       "kdbusaddons",
       "ki18n",
-      "kio",
-      "kirigami-addons",
-      "kservice",
-      "libplasma",
-      "modemmanager-qt",
-      "networkmanager-qt",
-      "solid"
+      "kirigami-addons"
     ],
     "plasma-simplemenu": [
       "extra-cmake-modules",
@@ -5389,6 +5429,7 @@
       "kitemmodels",
       "mpvqt",
       "purpose",
+      "qqc2-desktop-style",
       "qtkeychain"
     ],
     "plymouth-kcm": [
@@ -5486,6 +5527,14 @@
       "kirigami",
       "kservice"
     ],
+    "pvfviewer": [
+      "extra-cmake-modules",
+      "kdoctools",
+      "ki18n",
+      "kio",
+      "kwidgetsaddons",
+      "kxmlgui"
+    ],
     "qmlkonsole": [
       "extra-cmake-modules",
       "kconfig",
@@ -5549,6 +5598,21 @@
       "messagelib",
       "pimcommon"
     ],
+    "rkward": [
+      "extra-cmake-modules",
+      "karchive",
+      "kconfig",
+      "kcoreaddons",
+      "kcrash",
+      "kdoctools",
+      "ki18n",
+      "knotifications",
+      "kparts",
+      "ktexteditor",
+      "kwidgetsaddons",
+      "kwindowsystem",
+      "kxmlgui"
+    ],
     "rocs": [
       "extra-cmake-modules",
       "karchive",
@@ -5606,7 +5670,6 @@
       "prison",
       "purpose",
       "qtkeychain",
-      "selenium-webdriver-at-spi",
       "sonnet",
       "syntax-highlighting"
     ],
@@ -5634,7 +5697,6 @@
       "extra-cmake-modules",
       "kpipewire",
       "kwayland",
-      "kwin",
       "kwindowsystem",
       "wayland"
     ],
@@ -5663,6 +5725,20 @@
       "kxmlgui",
       "purpose"
     ],
+    "skladnik": [
+      "extra-cmake-modules",
+      "kconfig",
+      "kconfigwidgets",
+      "kcoreaddons",
+      "kcrash",
+      "kdbusaddons",
+      "kdoctools",
+      "ki18n",
+      "kio",
+      "kwidgetsaddons",
+      "kxmlgui",
+      "libkdegames"
+    ],
     "skrooge": [
       "extra-cmake-modules",
       "karchive",
@@ -5758,7 +5834,8 @@
       "kxmlgui",
       "layer-shell-qt",
       "purpose",
-      "wayland"
+      "wayland",
+      "zxing-cpp"
     ],
     "step": [
       "extra-cmake-modules",
@@ -5859,8 +5936,8 @@
     ],
     "tellico": [
       "extra-cmake-modules",
-      "kcoreaddons",
-      "kcrash",
+      "kconfig",
+      "kconfigwidgets",
       "kdoctools",
       "kfilemetadata",
       "ki18n",
@@ -5868,9 +5945,7 @@
       "kio",
       "kitemmodels",
       "knewstuff",
-      "kparts",
-      "ktexteditor",
-      "kxmlgui",
+      "kwidgetsaddons",
       "libkcddb",
       "libksane"
     ],
@@ -5881,7 +5956,8 @@
       "kcrash",
       "ki18n",
       "kirigami",
-      "kirigami-addons"
+      "kirigami-addons",
+      "qqc2-desktop-style"
     ],
     "threadweaver": [
       "extra-cmake-modules"
@@ -6070,5 +6146,5 @@
       "kwindowsystem"
     ]
   },
-  "version": "c03e6379"
+  "version": "525ad8d3"
 }
\ No newline at end of file
diff --git a/pkgs/kde/generated/projects.json b/pkgs/kde/generated/projects.json
index 8986f2db0823..d798654c27d8 100644
--- a/pkgs/kde/generated/projects.json
+++ b/pkgs/kde/generated/projects.json
@@ -1058,7 +1058,7 @@
   "glaxnimate": {
     "description": "Simple vector animation program.",
     "name": "glaxnimate",
-    "project_path": "playground/graphics/glaxnimate",
+    "project_path": "kdereview/glaxnimate",
     "repo_path": "graphics/glaxnimate"
   },
   "gluon": {
@@ -1920,7 +1920,7 @@
     "repo_path": "unmaintained/kdenetwork-strigi-analyzers"
   },
   "kdenlive": {
-    "description": "Free and open source video editor, based on MLT Framework and KDE Frameworks 5",
+    "description": "Free and open source video editor, based on MLT Framework and KDE Frameworks",
     "name": "kdenlive",
     "project_path": "kde/kdemultimedia/kdenlive",
     "repo_path": "multimedia/kdenlive"
@@ -2808,9 +2808,9 @@
     "repo_path": "education/klettres"
   },
   "klevernotes": {
-    "description": "A convergent markdown note taking application.",
+    "description": "A note-taking and management application using markdown.",
     "name": "klevernotes",
-    "project_path": "playground/office/klevernotes",
+    "project_path": "kdereview/klevernotes",
     "repo_path": "office/klevernotes"
   },
   "klickety": {
@@ -7037,6 +7037,12 @@
     "project_path": "websites/discover-kde-org",
     "repo_path": "websites/discover-kde-org"
   },
+  "websites-docs-glaxnimate-org": {
+    "description": "Documentation website for Glaxnimate \u2014 docs.glaxnimate.org",
+    "name": "websites-docs-glaxnimate-org",
+    "project_path": "websites/docs-glaxnimate-org",
+    "repo_path": "websites/docs-glaxnimate-org"
+  },
   "websites-docs-kde-org": {
     "description": "Scripts and other materials needed to support and operate docs.kde.org",
     "name": "websites-docs-kde-org",
@@ -7163,11 +7169,11 @@
     "project_path": "websites/ghostwriter-kde-org",
     "repo_path": "websites/ghostwriter-kde-org"
   },
-  "websites-glaxnimate-kde-org": {
-    "description": "Website for Glaxnimate \u2014 glaxnimate.kde.org",
-    "name": "websites-glaxnimate-kde-org",
-    "project_path": "websites/glaxnimate-kde-org",
-    "repo_path": "websites/glaxnimate-kde-org"
+  "websites-glaxnimate-org": {
+    "description": "Website for Glaxnimate \u2014 glaxnimate.org",
+    "name": "websites-glaxnimate-org",
+    "project_path": "websites/glaxnimate-org",
+    "repo_path": "websites/glaxnimate-org"
   },
   "websites-go-kde-org": {
     "description": "Data for the KDE Short URL Redirector Service - go.kde.org",
diff --git a/pkgs/kde/generated/sources/frameworks.json b/pkgs/kde/generated/sources/frameworks.json
index a2b93aa05054..ed0b7e489a2b 100644
--- a/pkgs/kde/generated/sources/frameworks.json
+++ b/pkgs/kde/generated/sources/frameworks.json
@@ -1,362 +1,362 @@
 {
   "attica": {
-    "version": "6.1.0",
-    "url": "mirror://kde/stable/frameworks/6.1/attica-6.1.0.tar.xz",
-    "hash": "sha256-iz3KyaZ1Op0PeAeCww82ne0/UxxHjpXKHBlThK19taA="
+    "version": "6.2.0",
+    "url": "mirror://kde/stable/frameworks/6.2/attica-6.2.0.tar.xz",
+    "hash": "sha256-J1+wCz9INwTYAEhIg6N4l5ejGYsM5oDYUxPZl3/94vA="
   },
   "baloo": {
-    "version": "6.1.0",
-    "url": "mirror://kde/stable/frameworks/6.1/baloo-6.1.0.tar.xz",
-    "hash": "sha256-VNghxNwSGRs/GutedTwQeMi7RvFRXQIEZ3Bdf3xZzKo="
+    "version": "6.2.0",
+    "url": "mirror://kde/stable/frameworks/6.2/baloo-6.2.0.tar.xz",
+    "hash": "sha256-HqQTudutp9Bkah+Nw/BoiSjCZuY4hSjP0F1MB5p+Iqg="
   },
   "bluez-qt": {
-    "version": "6.1.0",
-    "url": "mirror://kde/stable/frameworks/6.1/bluez-qt-6.1.0.tar.xz",
-    "hash": "sha256-+UJO8V4H+BdPBpEa9GFqBt2Ird2pdflU+W6qqHHNjrs="
+    "version": "6.2.0",
+    "url": "mirror://kde/stable/frameworks/6.2/bluez-qt-6.2.0.tar.xz",
+    "hash": "sha256-lkh09OS0z6Y6lAy9CsIb0NxPwGwU/3qNtU+YEZv4tDA="
   },
   "breeze-icons": {
-    "version": "6.1.0",
-    "url": "mirror://kde/stable/frameworks/6.1/breeze-icons-6.1.0.tar.xz",
-    "hash": "sha256-sbqALQ0NvQ7NeGy9+q9UXy3TwheWa4lLkyGioYQmoWo="
+    "version": "6.2.0",
+    "url": "mirror://kde/stable/frameworks/6.2/breeze-icons-6.2.0.tar.xz",
+    "hash": "sha256-31o7FQdo3Vx4Gmw9GEjXn0sOsvMn4kjFQmoSNKpME1s="
   },
   "extra-cmake-modules": {
-    "version": "6.1.0",
-    "url": "mirror://kde/stable/frameworks/6.1/extra-cmake-modules-6.1.0.tar.xz",
-    "hash": "sha256-dsnt8AgH5s+NSuNfUZW0vD/pRkjZdv71Mr9/l9hjiL0="
+    "version": "6.2.0",
+    "url": "mirror://kde/stable/frameworks/6.2/extra-cmake-modules-6.2.0.tar.xz",
+    "hash": "sha256-Y3S/oN3ti+JlxwKs1d4R7s0oUcYluT4ch9jQ9fGo6+E="
   },
   "frameworkintegration": {
-    "version": "6.1.0",
-    "url": "mirror://kde/stable/frameworks/6.1/frameworkintegration-6.1.0.tar.xz",
-    "hash": "sha256-R7s4p3i5RAW9niUb53S6kQwrhc1qRRK6H26bb4eRROg="
+    "version": "6.2.0",
+    "url": "mirror://kde/stable/frameworks/6.2/frameworkintegration-6.2.0.tar.xz",
+    "hash": "sha256-5B9ksXitna3K1RsUW9WAhoq6Bh+4D/FWFCaNCexODXw="
   },
   "kapidox": {
-    "version": "6.1.0",
-    "url": "mirror://kde/stable/frameworks/6.1/kapidox-6.1.0.tar.xz",
-    "hash": "sha256-sSnxafopk6yomOcmGdPbr6Owfom/9L08unNh3QS8XBU="
+    "version": "6.2.0",
+    "url": "mirror://kde/stable/frameworks/6.2/kapidox-6.2.0.tar.xz",
+    "hash": "sha256-A6zTkjMxrztOTsJ9MlNfow1lg9LQhh/SgqtjgiOYdas="
   },
   "karchive": {
-    "version": "6.1.0",
-    "url": "mirror://kde/stable/frameworks/6.1/karchive-6.1.0.tar.xz",
-    "hash": "sha256-V2xxM8+5lLUwvXN3AwuSa9oieqKuQg1dhTjyaBkm+Cw="
+    "version": "6.2.0",
+    "url": "mirror://kde/stable/frameworks/6.2/karchive-6.2.0.tar.xz",
+    "hash": "sha256-FDXgnmS/TPJ87r/HZYLkTbnTexRT5Vru4Jd4vM/ZqLI="
   },
   "kauth": {
-    "version": "6.1.0",
-    "url": "mirror://kde/stable/frameworks/6.1/kauth-6.1.0.tar.xz",
-    "hash": "sha256-R+eAQCCAUJjMmrNwtsU5mRuwKAQfqvWmGat8srmS8Is="
+    "version": "6.2.0",
+    "url": "mirror://kde/stable/frameworks/6.2/kauth-6.2.0.tar.xz",
+    "hash": "sha256-NRHZ2FfA9pYrAFs4HsXi/vne1ZJE2hTjHdBnPgWmmwo="
   },
   "kbookmarks": {
-    "version": "6.1.0",
-    "url": "mirror://kde/stable/frameworks/6.1/kbookmarks-6.1.0.tar.xz",
-    "hash": "sha256-t2NWMhfB4+hINLS3d5iRxFEuj9J8srU68Aoqt2EtR0c="
+    "version": "6.2.0",
+    "url": "mirror://kde/stable/frameworks/6.2/kbookmarks-6.2.0.tar.xz",
+    "hash": "sha256-GvDWvnxDyxe8movaRkw3K58n+Z083zvpXsXyTjQ2jvs="
   },
   "kcalendarcore": {
-    "version": "6.1.0",
-    "url": "mirror://kde/stable/frameworks/6.1/kcalendarcore-6.1.0.tar.xz",
-    "hash": "sha256-HP/vMqQHa3nCZwXhIEP8t2y7/K74wSDvQLhYzESiE5s="
+    "version": "6.2.0",
+    "url": "mirror://kde/stable/frameworks/6.2/kcalendarcore-6.2.0.tar.xz",
+    "hash": "sha256-o+J3wBNqWd5jWmWfcRnXNoUsL/9QCy9f1Dn2kGbz8gk="
   },
   "kcmutils": {
-    "version": "6.1.0",
-    "url": "mirror://kde/stable/frameworks/6.1/kcmutils-6.1.0.tar.xz",
-    "hash": "sha256-PRebmormY26jNR5b4EFKNJkaeh9RTqSS0ki2gxXsKoY="
+    "version": "6.2.0",
+    "url": "mirror://kde/stable/frameworks/6.2/kcmutils-6.2.0.tar.xz",
+    "hash": "sha256-jO8UDKnqvynoighInHmQeOhSR5B/1vdBZa6v1O1AwLs="
   },
   "kcodecs": {
-    "version": "6.1.0",
-    "url": "mirror://kde/stable/frameworks/6.1/kcodecs-6.1.0.tar.xz",
-    "hash": "sha256-8fAHWVWy3WE7XF95mYROofngoJ/z8ssjBlOunL2EOBY="
+    "version": "6.2.0",
+    "url": "mirror://kde/stable/frameworks/6.2/kcodecs-6.2.0.tar.xz",
+    "hash": "sha256-0ED7A1EMqQlC5UMjsa/SbsANRZsbLFTm7u7OUWaELy8="
   },
   "kcolorscheme": {
-    "version": "6.1.0",
-    "url": "mirror://kde/stable/frameworks/6.1/kcolorscheme-6.1.0.tar.xz",
-    "hash": "sha256-wwqofzpgaAfEBo2rAIA5K9ykn4++8YVT4afeD3xbA2o="
+    "version": "6.2.0",
+    "url": "mirror://kde/stable/frameworks/6.2/kcolorscheme-6.2.0.tar.xz",
+    "hash": "sha256-CZDBcsWxKZa3wL48LlNTDO9l6vdtGShUzyB4cvupXxs="
   },
   "kcompletion": {
-    "version": "6.1.0",
-    "url": "mirror://kde/stable/frameworks/6.1/kcompletion-6.1.0.tar.xz",
-    "hash": "sha256-4eC+vh7diL6gi7D0eEbSNiTjRIbfnDozgGl/xBGEScg="
+    "version": "6.2.0",
+    "url": "mirror://kde/stable/frameworks/6.2/kcompletion-6.2.0.tar.xz",
+    "hash": "sha256-WMuTjrER6IWd0bqlEGJGfyJrjGfLH9uYdI0+l/q/COk="
   },
   "kconfig": {
-    "version": "6.1.0",
-    "url": "mirror://kde/stable/frameworks/6.1/kconfig-6.1.0.tar.xz",
-    "hash": "sha256-L9pfJb6sUmCnDz9ikUS1wim/NSyuIIiT7USpcyxtyvc="
+    "version": "6.2.0",
+    "url": "mirror://kde/stable/frameworks/6.2/kconfig-6.2.0.tar.xz",
+    "hash": "sha256-JRK8A2/EDNwjNFy/gDeFPHr9yTt/gVKFR6RR4PjEKek="
   },
   "kconfigwidgets": {
-    "version": "6.1.0",
-    "url": "mirror://kde/stable/frameworks/6.1/kconfigwidgets-6.1.0.tar.xz",
-    "hash": "sha256-CyUrLnlv9vBelKuSEw/nOeT+aYwiMjC+k2tXnp350XE="
+    "version": "6.2.0",
+    "url": "mirror://kde/stable/frameworks/6.2/kconfigwidgets-6.2.0.tar.xz",
+    "hash": "sha256-O15yxuVee50LPr7g/os5wJjdB6Vt452hVWiRkl632WM="
   },
   "kcontacts": {
-    "version": "6.1.0",
-    "url": "mirror://kde/stable/frameworks/6.1/kcontacts-6.1.0.tar.xz",
-    "hash": "sha256-vtC+W4MCz010kSAjTJjQ3GKdoEoBI2lBOGgaAiGEJk4="
+    "version": "6.2.0",
+    "url": "mirror://kde/stable/frameworks/6.2/kcontacts-6.2.0.tar.xz",
+    "hash": "sha256-cJyhnpB2+YdRdk0Cm41kjGphsXJiukghz5f5E8y9G/k="
   },
   "kcoreaddons": {
-    "version": "6.1.0",
-    "url": "mirror://kde/stable/frameworks/6.1/kcoreaddons-6.1.0.tar.xz",
-    "hash": "sha256-dgjvmiSDsoo6+CowJAVM2zxYzx/fvXkaAvcO/IDqM0M="
+    "version": "6.2.0",
+    "url": "mirror://kde/stable/frameworks/6.2/kcoreaddons-6.2.0.tar.xz",
+    "hash": "sha256-P5g2o85ecog78DJYe3Rc5VQ1qnYnF0V50uAY2nFzOO0="
   },
   "kcrash": {
-    "version": "6.1.0",
-    "url": "mirror://kde/stable/frameworks/6.1/kcrash-6.1.0.tar.xz",
-    "hash": "sha256-cn+C6XZ8L2R7fua9edUevUBpEnEyDct4NaMM+IBkee0="
+    "version": "6.2.0",
+    "url": "mirror://kde/stable/frameworks/6.2/kcrash-6.2.0.tar.xz",
+    "hash": "sha256-ALe0iFyyqS6DKBbpzB2oz1zMxMRILBNkjwIJiMhs9Yg="
   },
   "kdav": {
-    "version": "6.1.0",
-    "url": "mirror://kde/stable/frameworks/6.1/kdav-6.1.0.tar.xz",
-    "hash": "sha256-ZETT6lgdUU+4KvlC0JKwvAYToayi+iMTqQAC0UhZTCs="
+    "version": "6.2.0",
+    "url": "mirror://kde/stable/frameworks/6.2/kdav-6.2.0.tar.xz",
+    "hash": "sha256-8YJ4z8creo7tSKTUR+rgfkMdFCmNvPWbpFu5NihsZOE="
   },
   "kdbusaddons": {
-    "version": "6.1.0",
-    "url": "mirror://kde/stable/frameworks/6.1/kdbusaddons-6.1.0.tar.xz",
-    "hash": "sha256-tCOkyh/KuXO5RUOG77r13CxkLSHukSXXO4/Gf4BGNUE="
+    "version": "6.2.0",
+    "url": "mirror://kde/stable/frameworks/6.2/kdbusaddons-6.2.0.tar.xz",
+    "hash": "sha256-vKDfP8c2Hv/Pgf+3ldj/YuIYnqlnJJLWsmweAUT+3Wc="
   },
   "kdeclarative": {
-    "version": "6.1.0",
-    "url": "mirror://kde/stable/frameworks/6.1/kdeclarative-6.1.0.tar.xz",
-    "hash": "sha256-+UE41i4XNVgS83YTqpNvrS5RQP5PCankLk2b+piBxwI="
+    "version": "6.2.0",
+    "url": "mirror://kde/stable/frameworks/6.2/kdeclarative-6.2.0.tar.xz",
+    "hash": "sha256-qFw/FZnSKfBS7jeG6QQazlUQyZhEyO/Hv8ndrtGTbYQ="
   },
   "kded": {
-    "version": "6.1.0",
-    "url": "mirror://kde/stable/frameworks/6.1/kded-6.1.0.tar.xz",
-    "hash": "sha256-sY0O8jaZXBnakm5bo/JIaJhQ/95mDrhrGKto6HsRm6E="
+    "version": "6.2.0",
+    "url": "mirror://kde/stable/frameworks/6.2/kded-6.2.0.tar.xz",
+    "hash": "sha256-ym1pcbZhtRQu3mq5oay+JNQIXvvJ8TmIwXlkmxJhq08="
   },
   "kdesu": {
-    "version": "6.1.0",
-    "url": "mirror://kde/stable/frameworks/6.1/kdesu-6.1.0.tar.xz",
-    "hash": "sha256-pqOX4IzNNTfcmxMp6MwfBcpqzz2cGDluQRjlFEa6gn4="
+    "version": "6.2.0",
+    "url": "mirror://kde/stable/frameworks/6.2/kdesu-6.2.0.tar.xz",
+    "hash": "sha256-fGEv6kidnj49PJDKsNMU2YSGvcBgFKYPYJ/f8hUFgi8="
   },
   "kdnssd": {
-    "version": "6.1.0",
-    "url": "mirror://kde/stable/frameworks/6.1/kdnssd-6.1.0.tar.xz",
-    "hash": "sha256-O5gfemnyZe0zE0b1bUAw0xu98dk29iwnbH4zOztntxI="
+    "version": "6.2.0",
+    "url": "mirror://kde/stable/frameworks/6.2/kdnssd-6.2.0.tar.xz",
+    "hash": "sha256-UJARNnwRw7FwNNdD6mk0lRpvxSW5Un0Yw4r4H2Cwj0U="
   },
   "kdoctools": {
-    "version": "6.1.0",
-    "url": "mirror://kde/stable/frameworks/6.1/kdoctools-6.1.0.tar.xz",
-    "hash": "sha256-JAJUrbtSGEpXEHIGi/UEu8NXnrmBGYPGo3lVYyYO87U="
+    "version": "6.2.0",
+    "url": "mirror://kde/stable/frameworks/6.2/kdoctools-6.2.0.tar.xz",
+    "hash": "sha256-7POFVuxfnZnuLOssKHJ/TIA0IhfLabmqlFpvcC3D/08="
   },
   "kfilemetadata": {
-    "version": "6.1.0",
-    "url": "mirror://kde/stable/frameworks/6.1/kfilemetadata-6.1.0.tar.xz",
-    "hash": "sha256-1Sp4LFTq5doykSyodvGXX7fkv/4cseFyJtg2FKs7sco="
+    "version": "6.2.0",
+    "url": "mirror://kde/stable/frameworks/6.2/kfilemetadata-6.2.0.tar.xz",
+    "hash": "sha256-EGlBZUAkthZdo/rCYi++vTX/CfCDRa2TorLBq/oXfjA="
   },
   "kglobalaccel": {
-    "version": "6.1.0",
-    "url": "mirror://kde/stable/frameworks/6.1/kglobalaccel-6.1.0.tar.xz",
-    "hash": "sha256-iFsT04iO6+WFWJ3CiOOCYESrW/O44qdJuQcNk9MvZPI="
+    "version": "6.2.0",
+    "url": "mirror://kde/stable/frameworks/6.2/kglobalaccel-6.2.0.tar.xz",
+    "hash": "sha256-x0cn/vSjloDjbF7SfNtMW3VQQ3lfpSd07jvGo7Vo5yQ="
   },
   "kguiaddons": {
-    "version": "6.1.0",
-    "url": "mirror://kde/stable/frameworks/6.1/kguiaddons-6.1.0.tar.xz",
-    "hash": "sha256-CNiEUq5LzcBziRSZ2bQUEpzcWYK9O62Icm2+8o7lrFM="
+    "version": "6.2.0",
+    "url": "mirror://kde/stable/frameworks/6.2/kguiaddons-6.2.0.tar.xz",
+    "hash": "sha256-ulpeQtW5uUSGQZJjg2B0Qp/T+s/DZP1OOimlS8beXds="
   },
   "kholidays": {
-    "version": "6.1.0",
-    "url": "mirror://kde/stable/frameworks/6.1/kholidays-6.1.0.tar.xz",
-    "hash": "sha256-g2YVWatXcM1WGQLuuBvlFxkiQ1tTnZf0vBcnfaS5cwo="
+    "version": "6.2.0",
+    "url": "mirror://kde/stable/frameworks/6.2/kholidays-6.2.0.tar.xz",
+    "hash": "sha256-nXqAUofgQoHdWbjMsTAkBqkv4JQeJzysHHJO9hJfrCk="
   },
   "ki18n": {
-    "version": "6.1.0",
-    "url": "mirror://kde/stable/frameworks/6.1/ki18n-6.1.0.tar.xz",
-    "hash": "sha256-FjIZ8bXJ3qeq6m3cSg0oqLnhiE0jnPVjPmhMIUhRdkg="
+    "version": "6.2.0",
+    "url": "mirror://kde/stable/frameworks/6.2/ki18n-6.2.0.tar.xz",
+    "hash": "sha256-iqj0dA2wgPTwws6I0PKJdA1VyqBrf3a/IWPQ+5/TZg8="
   },
   "kiconthemes": {
-    "version": "6.1.0",
-    "url": "mirror://kde/stable/frameworks/6.1/kiconthemes-6.1.0.tar.xz",
-    "hash": "sha256-ec53cB1BlHluLCVQCPGQcUYKoD/yCKIRf8TkyTEMNAI="
+    "version": "6.2.0",
+    "url": "mirror://kde/stable/frameworks/6.2/kiconthemes-6.2.0.tar.xz",
+    "hash": "sha256-wP/mX1P1m3W/BDLE9X99NraEDIf4Dp6luIzrcaKLVkU="
   },
   "kidletime": {
-    "version": "6.1.0",
-    "url": "mirror://kde/stable/frameworks/6.1/kidletime-6.1.0.tar.xz",
-    "hash": "sha256-yNhcEp/S6VIL7DqpZwRJtOos8JIGClT9sky6Y0dfrzo="
+    "version": "6.2.0",
+    "url": "mirror://kde/stable/frameworks/6.2/kidletime-6.2.0.tar.xz",
+    "hash": "sha256-BpGC5Kv7g/k2YdW7Dq6xS0TjcF+jSS29uOwDv+bj2dw="
   },
   "kimageformats": {
-    "version": "6.1.0",
-    "url": "mirror://kde/stable/frameworks/6.1/kimageformats-6.1.0.tar.xz",
-    "hash": "sha256-sDP6BYq0yWV+G81oKonKlKW4geeQTd3uaqtKFLr8yV4="
+    "version": "6.2.0",
+    "url": "mirror://kde/stable/frameworks/6.2/kimageformats-6.2.0.tar.xz",
+    "hash": "sha256-mEQhkYXwP+eZCurm/7ql9FKw9sUFPIcovIfpdoJkNWE="
   },
   "kio": {
-    "version": "6.1.0",
-    "url": "mirror://kde/stable/frameworks/6.1/kio-6.1.0.tar.xz",
-    "hash": "sha256-R8sAJYyjj5we4qp5KfWxK8fZnLWA2lYK2nEFD6CJ/9I="
+    "version": "6.2.0",
+    "url": "mirror://kde/stable/frameworks/6.2/kio-6.2.0.tar.xz",
+    "hash": "sha256-Mx1v9rnLsOZSGl0HRrFSviWI/WMac9DiSbeM0s2mnM8="
   },
   "kirigami": {
-    "version": "6.1.0",
-    "url": "mirror://kde/stable/frameworks/6.1/kirigami-6.1.0.tar.xz",
-    "hash": "sha256-KlQ4GGts+IR6V5wDD+03eGOOX7Tl61T3HcJgLaRgcZY="
+    "version": "6.2.1",
+    "url": "mirror://kde/stable/frameworks/6.2/kirigami-6.2.1.tar.xz",
+    "hash": "sha256-kQQSdw55ucE92sQhmfp1EXcM2Uhbj1omTh72NjozDJk="
   },
   "kitemmodels": {
-    "version": "6.1.0",
-    "url": "mirror://kde/stable/frameworks/6.1/kitemmodels-6.1.0.tar.xz",
-    "hash": "sha256-UWfTKvab8A9slTHIlRPVS//hbt00qelI77SekjXj4wI="
+    "version": "6.2.0",
+    "url": "mirror://kde/stable/frameworks/6.2/kitemmodels-6.2.0.tar.xz",
+    "hash": "sha256-wGaIgxMmDXWiB5OTNLBWtAFLpzZLQ3MlVheQ63s3Qro="
   },
   "kitemviews": {
-    "version": "6.1.0",
-    "url": "mirror://kde/stable/frameworks/6.1/kitemviews-6.1.0.tar.xz",
-    "hash": "sha256-6ehsKqSSeMOJWbGAT+HGwgV/PpvolgkfiY+4FpKyCk0="
+    "version": "6.2.0",
+    "url": "mirror://kde/stable/frameworks/6.2/kitemviews-6.2.0.tar.xz",
+    "hash": "sha256-c2LZiT0emoY0glc+z8Or3djGNFEtihiE8JSl9UOvSik="
   },
   "kjobwidgets": {
-    "version": "6.1.0",
-    "url": "mirror://kde/stable/frameworks/6.1/kjobwidgets-6.1.0.tar.xz",
-    "hash": "sha256-rHndtIs4UnpgWpVkSFrTcMvP20BrleD5JV1VJWRU/bg="
+    "version": "6.2.0",
+    "url": "mirror://kde/stable/frameworks/6.2/kjobwidgets-6.2.0.tar.xz",
+    "hash": "sha256-L7dgLyu6gYvP/+GtExDXkAiJ4Q5T44S4dClfs1k/s6E="
   },
   "knewstuff": {
-    "version": "6.1.0",
-    "url": "mirror://kde/stable/frameworks/6.1/knewstuff-6.1.0.tar.xz",
-    "hash": "sha256-HGoHZBBTgIQCHP8e6wK+LzQoAoRxejQpDUKxHf47PT8="
+    "version": "6.2.0",
+    "url": "mirror://kde/stable/frameworks/6.2/knewstuff-6.2.0.tar.xz",
+    "hash": "sha256-9UlidWuOuYxnhANSoe/qRpjxWhfUvIKC9lrbDbCMV4A="
   },
   "knotifications": {
-    "version": "6.1.0",
-    "url": "mirror://kde/stable/frameworks/6.1/knotifications-6.1.0.tar.xz",
-    "hash": "sha256-AvNvS8HS0QlOGwIDo04DfOx4MDxqrZ1p+ayMc4is/Ks="
+    "version": "6.2.0",
+    "url": "mirror://kde/stable/frameworks/6.2/knotifications-6.2.0.tar.xz",
+    "hash": "sha256-lifCAPWN5eXcTnTRoTAFYkEVttI9oDTmSqG/MUPngWQ="
   },
   "knotifyconfig": {
-    "version": "6.1.0",
-    "url": "mirror://kde/stable/frameworks/6.1/knotifyconfig-6.1.0.tar.xz",
-    "hash": "sha256-3+haRVAEcKMG3zF29mWvJYlSHvUJBhLnqC7GGOBh/oc="
+    "version": "6.2.0",
+    "url": "mirror://kde/stable/frameworks/6.2/knotifyconfig-6.2.0.tar.xz",
+    "hash": "sha256-tb/sRYK8IvDIfHD90loF4UX9/l5KYKlj9RJXHgPTfMw="
   },
   "kpackage": {
-    "version": "6.1.0",
-    "url": "mirror://kde/stable/frameworks/6.1/kpackage-6.1.0.tar.xz",
-    "hash": "sha256-7XWRK0FlgKT5rNvt7jHlkLGX4VfNod6hOtKHURFrUq8="
+    "version": "6.2.0",
+    "url": "mirror://kde/stable/frameworks/6.2/kpackage-6.2.0.tar.xz",
+    "hash": "sha256-eMhGbXIB8qpoCdmFiCQq72MUvkpHFVYXxSnGoFSfOV0="
   },
   "kparts": {
-    "version": "6.1.0",
-    "url": "mirror://kde/stable/frameworks/6.1/kparts-6.1.0.tar.xz",
-    "hash": "sha256-38on49T+f6cDjLrT06CpVcVwvXO1vArOs5AOBxSVEB0="
+    "version": "6.2.0",
+    "url": "mirror://kde/stable/frameworks/6.2/kparts-6.2.0.tar.xz",
+    "hash": "sha256-BPcIKavHAzMn9C5eXuE2X026mWixhPNCEsVIbjapvrE="
   },
   "kpeople": {
-    "version": "6.1.0",
-    "url": "mirror://kde/stable/frameworks/6.1/kpeople-6.1.0.tar.xz",
-    "hash": "sha256-pfouLmexqa1l7JWpUgGvKOINxGLp0xAHA0rU2leOHWI="
+    "version": "6.2.0",
+    "url": "mirror://kde/stable/frameworks/6.2/kpeople-6.2.0.tar.xz",
+    "hash": "sha256-P1+qSO3h5H7j43R+8K3y8dgyDb76jw7G63X9L0q0WDc="
   },
   "kplotting": {
-    "version": "6.1.0",
-    "url": "mirror://kde/stable/frameworks/6.1/kplotting-6.1.0.tar.xz",
-    "hash": "sha256-uyExlyWyA4KkSpvi1wx2petY5sgM8otvMU9J6ctzsfo="
+    "version": "6.2.0",
+    "url": "mirror://kde/stable/frameworks/6.2/kplotting-6.2.0.tar.xz",
+    "hash": "sha256-zdx+leM3a+FiGjR/bp/6iK14e0haomx+AmM2wFJ3wW0="
   },
   "kpty": {
-    "version": "6.1.0",
-    "url": "mirror://kde/stable/frameworks/6.1/kpty-6.1.0.tar.xz",
-    "hash": "sha256-3yJs2Qum93NWBATHmVYrJ2StOdT0HxUQXy7Z+bLPWd8="
+    "version": "6.2.0",
+    "url": "mirror://kde/stable/frameworks/6.2/kpty-6.2.0.tar.xz",
+    "hash": "sha256-92g+i1zV271CV+jVrNJuWGhaO8PxYdwP4Q9ToHUkAmQ="
   },
   "kquickcharts": {
-    "version": "6.1.0",
-    "url": "mirror://kde/stable/frameworks/6.1/kquickcharts-6.1.0.tar.xz",
-    "hash": "sha256-dhtXOP8aG7H+aPBCfiiI4lyQG2+tRAFnY4biegbjpMc="
+    "version": "6.2.0",
+    "url": "mirror://kde/stable/frameworks/6.2/kquickcharts-6.2.0.tar.xz",
+    "hash": "sha256-/dlr9CGKMJvihSOsMYvXgW6L0f6/DncbEzWc1ljGdWs="
   },
   "krunner": {
-    "version": "6.1.0",
-    "url": "mirror://kde/stable/frameworks/6.1/krunner-6.1.0.tar.xz",
-    "hash": "sha256-+qIfmQ2YhmWe1Ex1PM+Nd86wfflOhMAYk/k7COBnYNQ="
+    "version": "6.2.0",
+    "url": "mirror://kde/stable/frameworks/6.2/krunner-6.2.0.tar.xz",
+    "hash": "sha256-8Y8VeP+MdsRVg3pLyaPnEnO7pKxUr9JOFDqdwgcGBB8="
   },
   "kservice": {
-    "version": "6.1.0",
-    "url": "mirror://kde/stable/frameworks/6.1/kservice-6.1.0.tar.xz",
-    "hash": "sha256-7i7n/eLEeVWJCHb4kKDRZ5LymwzHT9KWzKsVPYtc54E="
+    "version": "6.2.0",
+    "url": "mirror://kde/stable/frameworks/6.2/kservice-6.2.0.tar.xz",
+    "hash": "sha256-BkbJIZwNfZojcbkNxCfryGzzCtr8sitFjxMPAR3iiII="
   },
   "kstatusnotifieritem": {
-    "version": "6.1.0",
-    "url": "mirror://kde/stable/frameworks/6.1/kstatusnotifieritem-6.1.0.tar.xz",
-    "hash": "sha256-k+LJyqcNTM6AWapsuB5bFh1AVwHbGE3f+BMD+iT97xQ="
+    "version": "6.2.0",
+    "url": "mirror://kde/stable/frameworks/6.2/kstatusnotifieritem-6.2.0.tar.xz",
+    "hash": "sha256-BLn8CQW2FK/I4K/PVFEBjSoSbxZSIbbbIOQXG+L7H88="
   },
   "ksvg": {
-    "version": "6.1.0",
-    "url": "mirror://kde/stable/frameworks/6.1/ksvg-6.1.0.tar.xz",
-    "hash": "sha256-KGqOHshnjXYZYKPNK0wOncg3716bY5a8jXaw/rcba18="
+    "version": "6.2.0",
+    "url": "mirror://kde/stable/frameworks/6.2/ksvg-6.2.0.tar.xz",
+    "hash": "sha256-Vom/ncPvqyn92uoK8AquyMqDI+ZQT0kMO7O0eoLrdvM="
   },
   "ktexteditor": {
-    "version": "6.1.0",
-    "url": "mirror://kde/stable/frameworks/6.1/ktexteditor-6.1.0.tar.xz",
-    "hash": "sha256-O6GPQe9eV/6GjcKV0BhS0xsVkMC+iTrJfO7ZIpsJqd8="
+    "version": "6.2.0",
+    "url": "mirror://kde/stable/frameworks/6.2/ktexteditor-6.2.0.tar.xz",
+    "hash": "sha256-wQpeTMkhrrUbF+l9TymIOrGGtj0QgZnmoxlECjnx8qA="
   },
   "ktexttemplate": {
-    "version": "6.1.0",
-    "url": "mirror://kde/stable/frameworks/6.1/ktexttemplate-6.1.0.tar.xz",
-    "hash": "sha256-Iib5RyrdGWr9W4t1uVOkLYJJMWQ37QYNAkRid34t83E="
+    "version": "6.2.0",
+    "url": "mirror://kde/stable/frameworks/6.2/ktexttemplate-6.2.0.tar.xz",
+    "hash": "sha256-pZsObjrLlHN7gur6xH0UclJVxsbyHCNxzPnswQYs8so="
   },
   "ktextwidgets": {
-    "version": "6.1.0",
-    "url": "mirror://kde/stable/frameworks/6.1/ktextwidgets-6.1.0.tar.xz",
-    "hash": "sha256-cs1EchySCcwXvz6OHcy6gjvL6BVqo3AgXFzh/3RrZVM="
+    "version": "6.2.0",
+    "url": "mirror://kde/stable/frameworks/6.2/ktextwidgets-6.2.0.tar.xz",
+    "hash": "sha256-RpNow0EmWGXiViq20751TbloligL3KkME0EnsVAate0="
   },
   "kunitconversion": {
-    "version": "6.1.0",
-    "url": "mirror://kde/stable/frameworks/6.1/kunitconversion-6.1.0.tar.xz",
-    "hash": "sha256-323m8tQbOUOzHM7AUQE8sNT8bpl5qOUjLmQ245CzMew="
+    "version": "6.2.0",
+    "url": "mirror://kde/stable/frameworks/6.2/kunitconversion-6.2.0.tar.xz",
+    "hash": "sha256-5e1gV4ukw3hqEJzh+y5LNuSCWnkzjErKHd3JpJMAboA="
   },
   "kuserfeedback": {
-    "version": "6.1.0",
-    "url": "mirror://kde/stable/frameworks/6.1/kuserfeedback-6.1.0.tar.xz",
-    "hash": "sha256-zfpG/QJ3PyWCDVqAF9bKl0bRBUz0TjrjP/9pHrJmvF8="
+    "version": "6.2.0",
+    "url": "mirror://kde/stable/frameworks/6.2/kuserfeedback-6.2.0.tar.xz",
+    "hash": "sha256-gpxS2xXWm5Dm0isI3qze3NE0I8kB5Nq2OJPoFLTnaFg="
   },
   "kwallet": {
-    "version": "6.1.0",
-    "url": "mirror://kde/stable/frameworks/6.1/kwallet-6.1.0.tar.xz",
-    "hash": "sha256-z5Ktu9/nZDpOD5Oo0ilib7hZ/pA9C0tYQa0RQXW4RhM="
+    "version": "6.2.0",
+    "url": "mirror://kde/stable/frameworks/6.2/kwallet-6.2.0.tar.xz",
+    "hash": "sha256-LlgRmmRCywDjAU8BY26HIzfP82LsHvEgyvK6AYE70sE="
   },
   "kwidgetsaddons": {
-    "version": "6.1.0",
-    "url": "mirror://kde/stable/frameworks/6.1/kwidgetsaddons-6.1.0.tar.xz",
-    "hash": "sha256-gSJdfsLW6nON7VX+QZeN62OcP3ei2q0OsuVCOqBG5M4="
+    "version": "6.2.0",
+    "url": "mirror://kde/stable/frameworks/6.2/kwidgetsaddons-6.2.0.tar.xz",
+    "hash": "sha256-A87y9mrsa397InbEfnIL2rk5sFt3twNF5/B2096tghE="
   },
   "kwindowsystem": {
-    "version": "6.1.0",
-    "url": "mirror://kde/stable/frameworks/6.1/kwindowsystem-6.1.0.tar.xz",
-    "hash": "sha256-jAdUOIOqo4sBUI8GtEOVWdiQdwAG+On26OdpxdQiZZU="
+    "version": "6.2.0",
+    "url": "mirror://kde/stable/frameworks/6.2/kwindowsystem-6.2.0.tar.xz",
+    "hash": "sha256-D4+xK07qkmp/TPWeyF2VKXqMtn2Ak9xLGUtRocRnHYk="
   },
   "kxmlgui": {
-    "version": "6.1.0",
-    "url": "mirror://kde/stable/frameworks/6.1/kxmlgui-6.1.0.tar.xz",
-    "hash": "sha256-glugKq3KvBzhOlWDKVyLEDbC8UvR+kayZDHtxEzGzw0="
+    "version": "6.2.0",
+    "url": "mirror://kde/stable/frameworks/6.2/kxmlgui-6.2.0.tar.xz",
+    "hash": "sha256-/yKnn8onN+M8VGPYf60rRpIMjUjGWDJoqa4nCXqKyQI="
   },
   "modemmanager-qt": {
-    "version": "6.1.0",
-    "url": "mirror://kde/stable/frameworks/6.1/modemmanager-qt-6.1.0.tar.xz",
-    "hash": "sha256-hTuu9b2BDIpk1MYPdI7xhCtzaOapUqL5PNSNhetfSXA="
+    "version": "6.2.0",
+    "url": "mirror://kde/stable/frameworks/6.2/modemmanager-qt-6.2.0.tar.xz",
+    "hash": "sha256-89HbmsZKNTM0sHTkXNB/zktArBOIyWT4sml0bcNb7qg="
   },
   "networkmanager-qt": {
-    "version": "6.1.0",
-    "url": "mirror://kde/stable/frameworks/6.1/networkmanager-qt-6.1.0.tar.xz",
-    "hash": "sha256-bkl5tfiJr8/0+MdBfig8Hbnk3zbKBii7Pr7wm2Kr0wI="
+    "version": "6.2.0",
+    "url": "mirror://kde/stable/frameworks/6.2/networkmanager-qt-6.2.0.tar.xz",
+    "hash": "sha256-e+Iqa7xYQ7GtoKFw+1bJyWvvZD19SFQT8q95KRTtAtI="
   },
   "prison": {
-    "version": "6.1.0",
-    "url": "mirror://kde/stable/frameworks/6.1/prison-6.1.0.tar.xz",
-    "hash": "sha256-FwhxB2mvGVPn88yhUNQ725YghWT4lHees5e2fPUmHvQ="
+    "version": "6.2.0",
+    "url": "mirror://kde/stable/frameworks/6.2/prison-6.2.0.tar.xz",
+    "hash": "sha256-h3GWdcFlLwdzFJuN44T0BpSabWWr4lptNhHhENEtbKg="
   },
   "purpose": {
-    "version": "6.1.0",
-    "url": "mirror://kde/stable/frameworks/6.1/purpose-6.1.0.tar.xz",
-    "hash": "sha256-RhL/9M5RJ5ZCL0vePvqPX/Y/lri32S5I+H+WyJ4hGY4="
+    "version": "6.2.0",
+    "url": "mirror://kde/stable/frameworks/6.2/purpose-6.2.0.tar.xz",
+    "hash": "sha256-VbAtSTh7dvVOO+xI+CzXjzmLVAO8jRDUgr//fjCgAoo="
   },
   "qqc2-desktop-style": {
-    "version": "6.1.0",
-    "url": "mirror://kde/stable/frameworks/6.1/qqc2-desktop-style-6.1.0.tar.xz",
-    "hash": "sha256-6R2avPkWnso1fn3It/xQSjt+Xv8yT+qm/+zICR4WItk="
+    "version": "6.2.0",
+    "url": "mirror://kde/stable/frameworks/6.2/qqc2-desktop-style-6.2.0.tar.xz",
+    "hash": "sha256-uO0nDZMKrQXq3x7FpUCHDxEo2Mco2GFsQIAdaYCGmxw="
   },
   "solid": {
-    "version": "6.1.0",
-    "url": "mirror://kde/stable/frameworks/6.1/solid-6.1.0.tar.xz",
-    "hash": "sha256-B0qYS1jvUQF+52dUi/zgygC7cQ6IpKsAvJAgpGz6QmI="
+    "version": "6.2.0",
+    "url": "mirror://kde/stable/frameworks/6.2/solid-6.2.0.tar.xz",
+    "hash": "sha256-ACoNKydZm+vHIVFmgdMnh2li/cr5lA8DNjT7k6T51yI="
   },
   "sonnet": {
-    "version": "6.1.0",
-    "url": "mirror://kde/stable/frameworks/6.1/sonnet-6.1.0.tar.xz",
-    "hash": "sha256-wTzrSCasT9AnuwhSSqczk82KoMZxmvi2MU0L0YCi6/4="
+    "version": "6.2.0",
+    "url": "mirror://kde/stable/frameworks/6.2/sonnet-6.2.0.tar.xz",
+    "hash": "sha256-hOcSrVa8lP+O/Jvd+rQfbDJxIbPd1pAw6UCsyRM2J+0="
   },
   "syndication": {
-    "version": "6.1.0",
-    "url": "mirror://kde/stable/frameworks/6.1/syndication-6.1.0.tar.xz",
-    "hash": "sha256-CdU5Si4wJMEYi+e2kDR7efwhQabRuDO8W0lL3MMvloM="
+    "version": "6.2.0",
+    "url": "mirror://kde/stable/frameworks/6.2/syndication-6.2.0.tar.xz",
+    "hash": "sha256-UOw4Q6COx7GFNSyUuJvC0nIM6vF+uWGkw9pV+T0Frzw="
   },
   "syntax-highlighting": {
-    "version": "6.1.0",
-    "url": "mirror://kde/stable/frameworks/6.1/syntax-highlighting-6.1.0.tar.xz",
-    "hash": "sha256-HnRJBSsOPpfWFdYVflZHlY6buY+l2PnF1pSCnF1nyrY="
+    "version": "6.2.0",
+    "url": "mirror://kde/stable/frameworks/6.2/syntax-highlighting-6.2.0.tar.xz",
+    "hash": "sha256-Mn7VjSDVJQK7/ZJ4+hyeerSoRhWeXPYw0J++oUTru38="
   },
   "threadweaver": {
-    "version": "6.1.0",
-    "url": "mirror://kde/stable/frameworks/6.1/threadweaver-6.1.0.tar.xz",
-    "hash": "sha256-3aXVUI1hcH60y9BE83HjRID/L0Q4GtxM0bcDz05Fjcg="
+    "version": "6.2.0",
+    "url": "mirror://kde/stable/frameworks/6.2/threadweaver-6.2.0.tar.xz",
+    "hash": "sha256-503i3wu1AUisyKYWH5gJmRrksjNLWKnuCSuh2CcEQzc="
   }
 }
\ No newline at end of file
diff --git a/pkgs/kde/lib/mk-kde-derivation.nix b/pkgs/kde/lib/mk-kde-derivation.nix
index 975d2e4af93a..2a983782a417 100644
--- a/pkgs/kde/lib/mk-kde-derivation.nix
+++ b/pkgs/kde/lib/mk-kde-derivation.nix
@@ -88,6 +88,20 @@ in
     # but cross is currently very broken anyway, so we can figure this out later.
     deps = map (dep: self.${dep}) filteredDepNames;
 
+    traceDuplicateDeps = attrName: attrValue:
+      let
+        pretty = lib.generators.toPretty {};
+        duplicates = builtins.filter (dep: (builtins.elem (lib.getName dep) filteredDepNames)) attrValue;
+      in
+        if duplicates != []
+        then lib.warn "Duplicate dependencies in ${attrName} of package ${pname}: ${pretty duplicates}"
+        else lib.id;
+
+    traceAllDuplicateDeps = lib.flip lib.pipe [
+      (traceDuplicateDeps "extraBuildInputs" extraBuildInputs)
+      (traceDuplicateDeps "extraPropagatedBuildInputs" extraPropagatedBuildInputs)
+    ];
+
     defaultArgs = {
       inherit version src;
 
@@ -128,4 +142,4 @@ in
 
     pos = builtins.unsafeGetAttrPos "pname" args;
   in
-    stdenv.mkDerivation (defaultArgs // cleanArgs // { inherit meta pos; })
+    traceAllDuplicateDeps (stdenv.mkDerivation (defaultArgs // cleanArgs // { inherit meta pos; }))
diff --git a/pkgs/kde/misc/kirigami-addons/default.nix b/pkgs/kde/misc/kirigami-addons/default.nix
index 90106d588fed..c20cff446e00 100644
--- a/pkgs/kde/misc/kirigami-addons/default.nix
+++ b/pkgs/kde/misc/kirigami-addons/default.nix
@@ -7,11 +7,11 @@
 }:
 mkKdeDerivation rec {
   pname = "kirigami-addons";
-  version = "1.1.0";
+  version = "1.2.1";
 
   src = fetchurl {
     url = "mirror://kde/stable/kirigami-addons/kirigami-addons-${version}.tar.xz";
-    hash = "sha256-jvNSSZE5YWsxQqbXqSqyN0nFaEA+zo2FTwZKlB0IVTY=";
+    hash = "sha256-ZXQm+exVz+xafwSEjtK03yrIv8szwlYmrSOSGdRE7pg=";
   };
 
   extraBuildInputs = [qtdeclarative];
diff --git a/pkgs/kde/misc/mpvqt/default.nix b/pkgs/kde/misc/mpvqt/default.nix
index fc237f97a803..84d78e26bc00 100644
--- a/pkgs/kde/misc/mpvqt/default.nix
+++ b/pkgs/kde/misc/mpvqt/default.nix
@@ -2,7 +2,7 @@
   lib,
   mkKdeDerivation,
   fetchFromGitLab,
-  mpv,
+  mpv-unwrapped,
   qtdeclarative,
 }:
 mkKdeDerivation rec {
@@ -18,7 +18,7 @@ mkKdeDerivation rec {
   };
 
   extraBuildInputs = [qtdeclarative];
-  extraPropagatedBuildInputs = [mpv];
+  extraPropagatedBuildInputs = [mpv-unwrapped];
 
   meta.license = with lib.licenses; [bsd2 bsd3 cc-by-sa-40 cc0 lgpl21Only lgpl3Only lgpl3Plus mit];
 }
diff --git a/pkgs/kde/plasma/kde-gtk-config/default.nix b/pkgs/kde/plasma/kde-gtk-config/default.nix
index 0101a56e93c6..3126e2f8d9c0 100644
--- a/pkgs/kde/plasma/kde-gtk-config/default.nix
+++ b/pkgs/kde/plasma/kde-gtk-config/default.nix
@@ -1,7 +1,7 @@
 {
   mkKdeDerivation,
   pkg-config,
-  wrapGAppsHook,
+  wrapGAppsHook3,
   sass,
   qtsvg,
   gsettings-desktop-schemas,
@@ -16,7 +16,7 @@ mkKdeDerivation {
     NIX_CFLAGS_COMPILE+=" -DGSETTINGS_SCHEMAS_PATH=\"$GSETTINGS_SCHEMAS_PATH\""
   '';
 
-  extraNativeBuildInputs = [pkg-config wrapGAppsHook sass];
+  extraNativeBuildInputs = [pkg-config wrapGAppsHook3 sass];
   extraBuildInputs = [qtsvg];
   dontWrapGApps = true; # There is nothing to wrap
 
diff --git a/pkgs/kde/plasma/kwayland/default.nix b/pkgs/kde/plasma/kwayland/default.nix
index 341fd8d35608..86713b834bec 100644
--- a/pkgs/kde/plasma/kwayland/default.nix
+++ b/pkgs/kde/plasma/kwayland/default.nix
@@ -2,11 +2,10 @@
   mkKdeDerivation,
   pkg-config,
   qtwayland,
-  wayland-protocols,
 }:
 mkKdeDerivation {
   pname = "kwayland";
 
   extraNativeBuildInputs = [pkg-config];
-  extraBuildInputs = [qtwayland wayland-protocols];
+  extraBuildInputs = [qtwayland];
 }
diff --git a/pkgs/kde/plasma/kwin/0001-Lower-CAP_SYS_NICE-from-the-ambient-set.patch b/pkgs/kde/plasma/kwin/0001-Lower-CAP_SYS_NICE-from-the-ambient-set.patch
new file mode 100644
index 000000000000..e6408605aa43
--- /dev/null
+++ b/pkgs/kde/plasma/kwin/0001-Lower-CAP_SYS_NICE-from-the-ambient-set.patch
@@ -0,0 +1,40 @@
+From 232e480ab1303f37d37d295b57fdcbb6b6648bca Mon Sep 17 00:00:00 2001
+From: Alois Wohlschlager <alois1@gmx-topmail.de>
+Date: Sun, 7 Aug 2022 16:12:31 +0200
+Subject: [PATCH] Lower CAP_SYS_NICE from the ambient set
+
+The capabilities wrapper raises CAP_SYS_NICE into the ambient set so it
+is inherited by the wrapped program. However, we don't want it to leak
+into the entire desktop environment.
+
+Lower the capability again at startup so that the kernel will clear it
+on exec.
+---
+ src/main_wayland.cpp | 3 +++
+ 1 file changed, 3 insertions(+)
+
+diff --git a/src/main_wayland.cpp b/src/main_wayland.cpp
+index 1720e14e7..f2bb446b0 100644
+--- a/src/main_wayland.cpp
++++ b/src/main_wayland.cpp
+@@ -39,7 +39,9 @@
+ #include <QWindow>
+ #include <qplatformdefs.h>
+ 
++#include <linux/capability.h>
+ #include <sched.h>
++#include <sys/prctl.h>
+ #include <sys/resource.h>
+ 
+ #include <iomanip>
+@@ -285,6 +287,7 @@ static QString automaticBackendSelection()
+ 
+ int main(int argc, char *argv[])
+ {
++    prctl(PR_CAP_AMBIENT, PR_CAP_AMBIENT_LOWER, CAP_SYS_NICE, 0, 0);
+     KWin::Application::setupMalloc();
+     KWin::Application::setupLocalizedString();
+     KWin::gainRealTime();
+-- 
+2.37.1
+
diff --git a/pkgs/kde/plasma/kwin/default.nix b/pkgs/kde/plasma/kwin/default.nix
index fc5f00991d9e..7c3b0ce2bbe1 100644
--- a/pkgs/kde/plasma/kwin/default.nix
+++ b/pkgs/kde/plasma/kwin/default.nix
@@ -26,6 +26,7 @@ mkKdeDerivation {
     # The rest are NixOS-specific hacks
     ./0003-plugins-qpa-allow-using-nixos-wrapper.patch
     ./0001-NixOS-Unwrap-executable-name-for-.desktop-search.patch
+    ./0001-Lower-CAP_SYS_NICE-from-the-ambient-set.patch
   ];
 
   postPatch = ''
diff --git a/pkgs/kde/plasma/layer-shell-qt/default.nix b/pkgs/kde/plasma/layer-shell-qt/default.nix
index 9783220cddf2..dd7290379c5f 100644
--- a/pkgs/kde/plasma/layer-shell-qt/default.nix
+++ b/pkgs/kde/plasma/layer-shell-qt/default.nix
@@ -2,12 +2,10 @@
   mkKdeDerivation,
   qtwayland,
   pkg-config,
-  wayland,
-  wayland-protocols,
 }:
 mkKdeDerivation {
   pname = "layer-shell-qt";
 
   extraNativeBuildInputs = [pkg-config];
-  extraBuildInputs = [qtwayland wayland wayland-protocols];
+  extraBuildInputs = [qtwayland];
 }
diff --git a/pkgs/kde/plasma/xdg-desktop-portal-kde/default.nix b/pkgs/kde/plasma/xdg-desktop-portal-kde/default.nix
index 9d5be65fe097..7563e934e502 100644
--- a/pkgs/kde/plasma/xdg-desktop-portal-kde/default.nix
+++ b/pkgs/kde/plasma/xdg-desktop-portal-kde/default.nix
@@ -2,13 +2,11 @@
   mkKdeDerivation,
   pkg-config,
   qtwayland,
-  wayland,
-  wayland-protocols,
   cups,
 }:
 mkKdeDerivation {
   pname = "xdg-desktop-portal-kde";
 
   extraNativeBuildInputs = [pkg-config];
-  extraBuildInputs = [qtwayland wayland wayland-protocols cups];
+  extraBuildInputs = [qtwayland cups];
 }
diff --git a/pkgs/misc/drivers/epsonscan2/default.nix b/pkgs/misc/drivers/epsonscan2/default.nix
index 01d8e5c8f83b..6ee092b12e15 100644
--- a/pkgs/misc/drivers/epsonscan2/default.nix
+++ b/pkgs/misc/drivers/epsonscan2/default.nix
@@ -24,25 +24,25 @@
 let
   pname = "epsonscan2";
   description = "Epson Scan 2 scanner driver for many modern Epson scanners and multifunction printers";
-  version = "6.7.61.0";
+  version = "6.7.63.0";
 
   system = stdenv.hostPlatform.system;
 
   src = fetchzip {
-    url = "https://download3.ebz.epson.net/dsc/f/03/00/14/53/67/1a6447b4acc5568dfd970feba0518fabea35bca2/epsonscan2-${version}-1.src.tar.gz";
-    hash = "sha256-xwvdgmV6Mrs1RC18U2mA+HlTYybeYb0V5lz5hCvC7+8=";
+    url = "https://download3.ebz.epson.net/dsc/f/03/00/15/17/69/0ef02802c476a6564f13cac929859c394f40326a/epsonscan2-6.7.63.0-1.src.tar.gz";
+    hash = "sha256-ZLnbIk0I7g6ext5anPD+/lD4qNlk6f2fL0xdIWLcfbY=";
   };
   bundle = {
     "i686-linux" = fetchzip {
       name = "${pname}-bundle";
-      url = "https://download3.ebz.epson.net/dsc/f/03/00/14/53/69/3151031c0fb4deea3f48781fd051411b983ccee4/epsonscan2-bundle-${version}.i686.deb.tar.gz";
-      hash = "sha256-nq3Nqunt8aMcCf7U7JBYrVscvrhhcwcn8RlhYXLmC2c=";
+      url = "https://download3.ebz.epson.net/dsc/f/03/00/15/17/67/ceae6a02aaa81cb61012899987fbb5ab891b6ab2/epsonscan2-bundle-6.7.63.0.i686.deb.tar.gz";
+      hash = "sha256-h9beAzNdjOhTlZqW0rJbSQXGOpvFRGvTcWw0ZtOqiYY=";
     };
 
     "x86_64-linux" = fetchzip {
       name = "${pname}-bundle";
-      url = "https://download3.ebz.epson.net/dsc/f/03/00/14/53/68/a5e06101ba3f328dd747888e3dddebbb677bb8c8/epsonscan2-bundle-${version}.x86_64.deb.tar.gz";
-      hash = "sha256-cFx54CKkZtvhZ5ABuBwB8+IzhT2lu8D3+GZFaMuWf3Y=";
+      url = "https://download3.ebz.epson.net/dsc/f/03/00/15/17/68/050e5a55ed90f4efb4ca3bdd34e5797b149443ca/epsonscan2-bundle-6.7.63.0.x86_64.deb.tar.gz";
+      hash = "sha256-+S17FfS2h4zZCvE6W+yZvdJb6+OWYTt0ZWCA+pe1NZc=";
     };
   }."${system}" or (throw "Unsupported system: ${system}");
 
diff --git a/pkgs/misc/drivers/sc-controller/default.nix b/pkgs/misc/drivers/sc-controller/default.nix
index 48783b492387..1a7fce27013c 100644
--- a/pkgs/misc/drivers/sc-controller/default.nix
+++ b/pkgs/misc/drivers/sc-controller/default.nix
@@ -1,4 +1,4 @@
-{ lib, buildPythonApplication, fetchFromGitHub, wrapGAppsHook
+{ lib, buildPythonApplication, fetchFromGitHub, wrapGAppsHook3
 , pytestCheckHook
 , gtk3, gobject-introspection, libappindicator-gtk3, librsvg
 , evdev, pygobject3, pylibacl, bluez, vdf
@@ -17,7 +17,7 @@ buildPythonApplication rec {
     sha256 = "sha256-vK/5S+GyqVfKTqn5PaPmOV/tXE9PIW57gqYxvhGaJSg=";
   };
 
-  nativeBuildInputs = [ wrapGAppsHook gobject-introspection ];
+  nativeBuildInputs = [ wrapGAppsHook3 gobject-introspection ];
 
   buildInputs = [ gtk3 libappindicator-gtk3 librsvg ];
 
diff --git a/pkgs/misc/fastly/default.nix b/pkgs/misc/fastly/default.nix
index 712a28782af7..36e24bfe1226 100644
--- a/pkgs/misc/fastly/default.nix
+++ b/pkgs/misc/fastly/default.nix
@@ -10,13 +10,13 @@
 
 buildGoModule rec {
   pname = "fastly";
-  version = "10.8.10";
+  version = "10.9.0";
 
   src = fetchFromGitHub {
     owner = "fastly";
     repo = "cli";
     rev = "refs/tags/v${version}";
-    hash = "sha256-AUseetBbr4phJJZe0qh9vXeNX7IwFGhgm+uGCbVWx5s=";
+    hash = "sha256-KdgloTp/mlkPJpjqYJk4Wa7fhgIuwFpAkeIKNxwTfFk=";
     # The git commit is part of the `fastly version` original output;
     # leave that output the same in nixpkgs. Use the `.git` directory
     # to retrieve the commit SHA, and remove the directory afterwards,
@@ -33,7 +33,7 @@ buildGoModule rec {
     "cmd/fastly"
   ];
 
-  vendorHash = "sha256-L9U2MN7b2AU3fQSBKhF2Q6p7eN95bQGV0u9c0C6/yx0=";
+  vendorHash = "sha256-gjk+igFRVauDRC44YrZUB6uDNAfqnjDcqDPcAWUBhkc=";
 
   nativeBuildInputs = [
     installShellFiles
diff --git a/pkgs/misc/lilypond/unstable.nix b/pkgs/misc/lilypond/unstable.nix
index f500a7971315..fd5067b0faea 100644
--- a/pkgs/misc/lilypond/unstable.nix
+++ b/pkgs/misc/lilypond/unstable.nix
@@ -1,10 +1,10 @@
 { lib, fetchurl, lilypond }:
 
 lilypond.overrideAttrs (oldAttrs: rec {
-  version = "2.25.14";
+  version = "2.25.15";
   src = fetchurl {
     url = "https://lilypond.org/download/sources/v${lib.versions.majorMinor version}/lilypond-${version}.tar.gz";
-    hash = "sha256-b0qfNjr5jxEJbCYINX2/JhESMOIf9DefRHI47gn5Zio=";
+    hash = "sha256-K2CV4sWhUndiglBze44xbfrPe19nU+9qn+WOWLMA0R8=";
   };
 
   passthru.updateScript = {
diff --git a/pkgs/misc/plasma-hud/default.nix b/pkgs/misc/plasma-hud/default.nix
index b0adf0e1efc6..e70162b79af7 100644
--- a/pkgs/misc/plasma-hud/default.nix
+++ b/pkgs/misc/plasma-hud/default.nix
@@ -1,4 +1,4 @@
-{ wrapGAppsHook
+{ wrapGAppsHook3
 , lib
 , python3Packages
 , fetchFromGitHub
@@ -20,7 +20,7 @@ python3Packages.buildPythonApplication rec {
 
   nativeBuildInputs = [
     gobject-introspection
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   propagatedBuildInputs = (with python3Packages; [
diff --git a/pkgs/misc/screensavers/light-locker/default.nix b/pkgs/misc/screensavers/light-locker/default.nix
index 33db5825bc02..734f3f515d03 100644
--- a/pkgs/misc/screensavers/light-locker/default.nix
+++ b/pkgs/misc/screensavers/light-locker/default.nix
@@ -14,7 +14,7 @@
 , libXext
 , systemd
 , pantheon
-, wrapGAppsHook
+, wrapGAppsHook3
 }:
 
 stdenv.mkDerivation rec {
@@ -35,7 +35,7 @@ stdenv.mkDerivation rec {
     meson
     ninja
     pkg-config
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
diff --git a/pkgs/misc/solfege/default.nix b/pkgs/misc/solfege/default.nix
index 63606078abad..09964fd58bcc 100644
--- a/pkgs/misc/solfege/default.nix
+++ b/pkgs/misc/solfege/default.nix
@@ -1,4 +1,4 @@
-{ lib, fetchurl, gettext, pkg-config, texinfo, wrapGAppsHook
+{ lib, fetchurl, gettext, pkg-config, texinfo, wrapGAppsHook3
 , buildPythonApplication, pycairo, pygobject3
 , gdk-pixbuf, gobject-introspection, gtk3, librsvg
 , alsa-utils, timidity, mpg123, vorbis-tools, csound, lilypond
@@ -36,7 +36,7 @@ buildPythonApplication rec {
     txt2man
 
     gobject-introspection
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
diff --git a/pkgs/misc/tmux-plugins/default.nix b/pkgs/misc/tmux-plugins/default.nix
index dbdf6a24951b..167fe8f9475c 100644
--- a/pkgs/misc/tmux-plugins/default.nix
+++ b/pkgs/misc/tmux-plugins/default.nix
@@ -92,12 +92,12 @@ in rec {
 
   catppuccin = mkTmuxPlugin {
     pluginName = "catppuccin";
-    version = "unstable-2023-08-21";
+    version = "unstable-2024-05-15";
     src = fetchFromGitHub {
       owner = "catppuccin";
       repo = "tmux";
-      rev = "7a284c98e5df4cc84a1a45ad633916f0b2b916b2";
-      hash = "sha256-jxcxW0gEfXaSt8VM3UIs0dKNKaHb8JSEQBBV3SVjW/A=";
+      rev = "697087f593dae0163e01becf483b192894e69e33";
+      hash = "sha256-EHinWa6Zbpumu+ciwcMo6JIIvYFfWWEKH1lwfyZUNTo=";
     };
     postInstall = ''
       sed -i -e 's|''${PLUGIN_DIR}/catppuccin-selected-theme.tmuxtheme|''${TMUX_TMPDIR}/catppuccin-selected-theme.tmuxtheme|g' $target/catppuccin.tmux
diff --git a/pkgs/os-specific/bsd/freebsd/default.nix b/pkgs/os-specific/bsd/freebsd/default.nix
index b7cf5484c9e9..c605d9f70937 100644
--- a/pkgs/os-specific/bsd/freebsd/default.nix
+++ b/pkgs/os-specific/bsd/freebsd/default.nix
@@ -1,72 +1,64 @@
-{ stdenv, lib, stdenvNoCC
-, makeScopeWithSplicing', generateSplicesForMkScope
-, buildPackages
-, fetchgit, fetchzip
+{
+  lib,
+  makeScopeWithSplicing',
+  generateSplicesForMkScope,
+  callPackage,
+  crossLibcStdenv,
+  attributePathToSplice ? [ "freebsd" ],
+  branch ? "release/14.0.0",
 }:
 
 let
-  inherit (buildPackages.buildPackages) rsync;
-
   versions = builtins.fromJSON (builtins.readFile ./versions.json);
 
-  version = "13.1.0";
-  branch = "release/${version}";
-
-in makeScopeWithSplicing' {
-  otherSplices = generateSplicesForMkScope "freebsd";
-  f = (self: lib.packagesFromDirectoryRecursive {
-    callPackage = self.callPackage;
-    directory = ./pkgs;
-  } // {
-    sourceData = versions.${branch};
-
-    ports = fetchzip {
-      url = "https://cgit.freebsd.org/ports/snapshot/ports-dde3b2b456c3a4bdd217d0bf3684231cc3724a0a.tar.gz";
-      sha256 = "BpHqJfnGOeTE7tkFJBx0Wk8ryalmf4KNTit/Coh026E=";
-    };
-
-    compatIfNeeded = lib.optional (!stdenvNoCC.hostPlatform.isFreeBSD) self.compat;
-    freebsd-lib = import ./lib { inherit version; };
-
-    # The manual callPackages below should in principle be unnecessary, but are
-    # necessary. See note in ../netbsd/default.nix
-
-    compat = self.callPackage ./pkgs/compat/package.nix {
-      inherit stdenv;
-      inherit (buildPackages.freebsd) makeMinimal boot-install;
-    };
-
-    csu = self.callPackage ./pkgs/csu.nix {
-      inherit (buildPackages.freebsd) makeMinimal install gencat;
-      inherit (self) include;
-    };
-
-    include = self.callPackage ./pkgs/include/package.nix {
-      inherit (buildPackages.freebsd) makeMinimal install rpcgen;
+  badBranchError =
+    branch:
+    throw ''
+      Unknown FreeBSD branch ${branch}!
+      FreeBSD branches normally look like one of:
+      * `release/<major>.<minor>.0` for tagged releases without security updates
+      * `releng/<major>.<minor>` for release update branches with security updates
+      * `stable/<major>` for stable versions working towards the next minor release
+      * `main` for the latest development version
+
+      Branches can be selected by overriding the `branch` attribute on the freebsd package set.
+    '';
+
+  # `./package-set.nix` should never know the name of the package set we
+  # are constructing; just this function is allowed to know that. This
+  # is why we:
+  #
+  #  - do the splicing for cross compilation here
+  #
+  #  - construct the *anonymized* `buildFreebsd` attribute to be passed
+  #    to `./package-set.nix`.
+  callFreeBSDWithAttrs =
+    extraArgs:
+    let
+      # we do not include the branch in the splice here because the branch
+      # parameter to this file will only ever take on one value - more values
+      # are provided through overrides.
+      otherSplices = generateSplicesForMkScope attributePathToSplice;
+    in
+    makeScopeWithSplicing' {
+      inherit otherSplices;
+      f =
+        self:
+        {
+          inherit branch;
+        }
+        // callPackage ./package-set.nix (
+          {
+            sourceData = versions.${self.branch} or (throw (badBranchError self.branch));
+            versionData = self.sourceData.version;
+            buildFreebsd = otherSplices.selfBuildHost;
+            patchesRoot = ./patches/${self.versionData.revision};
+          }
+          // extraArgs
+        ) self;
     };
-
-    install = self.callPackage ./pkgs/install.nix {
-      inherit (buildPackages.freebsd) makeMinimal;
-      inherit (self) mtree libnetbsd;
-    };
-
-    libc = self.callPackage ./pkgs/libc/package.nix {
-      inherit (buildPackages.freebsd) makeMinimal install gencat rpcgen;
-      inherit (self) csu include;
-    };
-
-    libnetbsd = self.callPackage ./pkgs/libnetbsd/package.nix {
-      inherit (buildPackages.freebsd) makeMinimal;
-    };
-
-    mkDerivation = self.callPackage ./pkgs/mkDerivation.nix {
-      inherit stdenv;
-      inherit (buildPackages.freebsd) makeMinimal install tsort;
-    };
-
-    makeMinimal = self.callPackage ./pkgs/makeMinimal.nix {
-      inherit (self) make;
-    };
-
-  });
+in
+{
+  freebsd = callFreeBSDWithAttrs { };
+  freebsdCross = callFreeBSDWithAttrs { stdenv = crossLibcStdenv; };
 }
diff --git a/pkgs/os-specific/bsd/freebsd/evdev-proto/default.nix b/pkgs/os-specific/bsd/freebsd/evdev-proto/default.nix
index d62c01f5eb88..6696d12912e6 100644
--- a/pkgs/os-specific/bsd/freebsd/evdev-proto/default.nix
+++ b/pkgs/os-specific/bsd/freebsd/evdev-proto/default.nix
@@ -1,4 +1,11 @@
-{ lib, stdenv, linuxHeaders, freebsd, runCommandCC, buildPackages }:
+{
+  lib,
+  stdenv,
+  linuxHeaders,
+  freebsd,
+  runCommandCC,
+  buildPackages,
+}:
 
 stdenv.mkDerivation {
   pname = "evdev-proto";
@@ -28,7 +35,7 @@ stdenv.mkDerivation {
   TOUCH = "touch";
   XARGS = "xargs";
 
-  ABI_FILE = runCommandCC "abifile" {} "$CC -shared -o $out";
+  ABI_FILE = runCommandCC "abifile" { } "$CC -shared -o $out";
   CLEAN_FETCH_ENV = true;
   INSTALL_AS_USER = true;
   NO_CHECKSUM = true;
diff --git a/pkgs/os-specific/bsd/freebsd/lib/default.nix b/pkgs/os-specific/bsd/freebsd/lib/default.nix
index 30fea7e17dce..26119a8ba196 100644
--- a/pkgs/os-specific/bsd/freebsd/lib/default.nix
+++ b/pkgs/os-specific/bsd/freebsd/lib/default.nix
@@ -3,14 +3,16 @@
 {
   inherit version;
 
-  mkBsdArch = stdenv':  {
-    x86_64 = "amd64";
-    aarch64 = "arm64";
-    i486 = "i386";
-    i586 = "i386";
-    i686 = "i386";
-  }.${stdenv'.hostPlatform.parsed.cpu.name}
-    or stdenv'.hostPlatform.parsed.cpu.name;
+  mkBsdArch =
+    stdenv':
+    {
+      x86_64 = "amd64";
+      aarch64 = "arm64";
+      i486 = "i386";
+      i586 = "i386";
+      i686 = "i386";
+    }
+    .${stdenv'.hostPlatform.parsed.cpu.name} or stdenv'.hostPlatform.parsed.cpu.name;
 
   install-wrapper = builtins.readFile ./install-wrapper.sh;
 }
diff --git a/pkgs/os-specific/bsd/freebsd/package-set.nix b/pkgs/os-specific/bsd/freebsd/package-set.nix
new file mode 100644
index 000000000000..dfde4a0a31fa
--- /dev/null
+++ b/pkgs/os-specific/bsd/freebsd/package-set.nix
@@ -0,0 +1,96 @@
+{
+  stdenv,
+  lib,
+  stdenvNoCC,
+  fetchzip,
+  sourceData,
+  versionData,
+  buildFreebsd,
+  patchesRoot,
+}:
+
+self:
+
+lib.packagesFromDirectoryRecursive {
+  callPackage = self.callPackage;
+  directory = ./pkgs;
+}
+// {
+  inherit sourceData patchesRoot versionData;
+  patches = ./patches/${self.versionData.revision};
+
+  # Keep the crawled portion of Nixpkgs finite.
+  buildFreebsd = lib.dontRecurseIntoAttrs buildFreebsd;
+
+  ports = fetchzip {
+    url = "https://cgit.freebsd.org/ports/snapshot/ports-dde3b2b456c3a4bdd217d0bf3684231cc3724a0a.tar.gz";
+    sha256 = "BpHqJfnGOeTE7tkFJBx0Wk8ryalmf4KNTit/Coh026E=";
+  };
+
+  compatIsNeeded = !stdenvNoCC.hostPlatform.isFreeBSD;
+  compatIfNeeded = lib.optional self.compatIsNeeded self.compat;
+  freebsd-lib = import ./lib {
+    version = lib.concatStringsSep "." (
+      map toString (
+        lib.filter (x: x != null) [
+          self.versionData.major
+          self.versionData.minor
+          self.versionData.patch or null
+        ]
+      )
+    );
+  };
+
+  # The manual callPackages below should in principle be unnecessary, but are
+  # necessary. See note in ../netbsd/default.nix
+
+  compat = self.callPackage ./pkgs/compat/package.nix {
+    inherit stdenv;
+    inherit (buildFreebsd) makeMinimal;
+  };
+
+  csu = self.callPackage ./pkgs/csu.nix {
+    inherit (buildFreebsd) makeMinimal install gencat;
+    inherit (self) include;
+  };
+
+  include = self.callPackage ./pkgs/include/package.nix { inherit (buildFreebsd) rpcgen mtree; };
+
+  install = self.callPackage ./pkgs/install.nix {
+    inherit (buildFreebsd) makeMinimal;
+    inherit (self) libmd libnetbsd;
+  };
+
+  libc = self.callPackage ./pkgs/libc/package.nix {
+    inherit (buildFreebsd)
+      makeMinimal
+      install
+      gencat
+      rpcgen
+      mkcsmapper
+      mkesdb
+      ;
+    inherit (self) csu include;
+  };
+
+  libnetbsd = self.callPackage ./pkgs/libnetbsd/package.nix { inherit (buildFreebsd) makeMinimal; };
+
+  libmd = self.callPackage ./pkgs/libmd.nix { inherit (buildFreebsd) makeMinimal; };
+
+  mkDerivation = self.callPackage ./pkgs/mkDerivation.nix {
+    inherit stdenv;
+    inherit (buildFreebsd)
+      freebsdSetupHook
+      makeMinimal
+      install
+      tsort
+      lorder
+      ;
+  };
+
+  makeMinimal = self.callPackage ./pkgs/makeMinimal.nix { inherit (self) make; };
+
+  mtree = self.callPackage ./pkgs/mtree.nix { inherit (self) libnetbsd libmd; };
+
+  tsort = self.callPackage ./pkgs/tsort.nix { inherit (buildFreebsd) makeMinimal install; };
+}
diff --git a/pkgs/os-specific/bsd/freebsd/pkgs/compat/compat-fix-typedefs-locations.patch b/pkgs/os-specific/bsd/freebsd/patches/13.1/compat-fix-typedefs-locations.patch
index 3336a2504e58..3336a2504e58 100644
--- a/pkgs/os-specific/bsd/freebsd/pkgs/compat/compat-fix-typedefs-locations.patch
+++ b/pkgs/os-specific/bsd/freebsd/patches/13.1/compat-fix-typedefs-locations.patch
diff --git a/pkgs/os-specific/bsd/freebsd/pkgs/compat/compat-install-dirs.patch b/pkgs/os-specific/bsd/freebsd/patches/13.1/compat-install-dirs.patch
index 9bb2bea32ee9..9bb2bea32ee9 100644
--- a/pkgs/os-specific/bsd/freebsd/pkgs/compat/compat-install-dirs.patch
+++ b/pkgs/os-specific/bsd/freebsd/patches/13.1/compat-install-dirs.patch
diff --git a/pkgs/os-specific/bsd/freebsd/pkgs/libc/libc-msun-arch-subdir.patch b/pkgs/os-specific/bsd/freebsd/patches/13.1/libc-msun-arch-subdir.patch
index 4a69e85a986a..4a69e85a986a 100644
--- a/pkgs/os-specific/bsd/freebsd/pkgs/libc/libc-msun-arch-subdir.patch
+++ b/pkgs/os-specific/bsd/freebsd/patches/13.1/libc-msun-arch-subdir.patch
diff --git a/pkgs/os-specific/bsd/freebsd/pkgs/libc/libc-no-force--lcompiler-rt.patch b/pkgs/os-specific/bsd/freebsd/patches/13.1/libc-no-force--lcompiler-rt.patch
index 60176fb73cf7..60176fb73cf7 100644
--- a/pkgs/os-specific/bsd/freebsd/pkgs/libc/libc-no-force--lcompiler-rt.patch
+++ b/pkgs/os-specific/bsd/freebsd/patches/13.1/libc-no-force--lcompiler-rt.patch
diff --git a/pkgs/os-specific/bsd/freebsd/pkgs/libnetbsd/libnetbsd-do-install.patch b/pkgs/os-specific/bsd/freebsd/patches/13.1/libnetbsd-do-install.patch
index a7bd032d2be5..a7bd032d2be5 100644
--- a/pkgs/os-specific/bsd/freebsd/pkgs/libnetbsd/libnetbsd-do-install.patch
+++ b/pkgs/os-specific/bsd/freebsd/patches/13.1/libnetbsd-do-install.patch
diff --git a/pkgs/os-specific/bsd/freebsd/pkgs/libc/librpcsvc-include-subdir.patch b/pkgs/os-specific/bsd/freebsd/patches/13.1/librpcsvc-include-subdir.patch
index 38e06682869f..38e06682869f 100644
--- a/pkgs/os-specific/bsd/freebsd/pkgs/libc/librpcsvc-include-subdir.patch
+++ b/pkgs/os-specific/bsd/freebsd/patches/13.1/librpcsvc-include-subdir.patch
diff --git a/pkgs/os-specific/bsd/freebsd/patches/13.1/mtree-Makefile.patch b/pkgs/os-specific/bsd/freebsd/patches/13.1/mtree-Makefile.patch
new file mode 100644
index 000000000000..2a6e560d1d28
--- /dev/null
+++ b/pkgs/os-specific/bsd/freebsd/patches/13.1/mtree-Makefile.patch
@@ -0,0 +1,13 @@
+--- a/contrib/mtree/Makefile	2023-12-04 23:02:13.919144141 -0700
++++ b/contrib/mtree/Makefile		2023-12-04 23:02:58.371810109 -0700
+@@ -10,8 +10,8 @@
+ SRCS=  compare.c crc.c create.c excludes.c misc.c mtree.c spec.c specspec.c \
+        verify.c getid.c pack_dev.c only.c
+ .if (${HOSTPROG:U} == "")
+-DPADD+= ${LIBUTIL}
+-LDADD+= -lutil
++LIBADD+= ${LIBUTIL}
++#LIBADD+= -lutil
+ .endif
+
+ CPPFLAGS+=	-I${NETBSDSRCDIR}/sbin/mknod
diff --git a/pkgs/os-specific/bsd/freebsd/pkgs/include/no-perms-BSD.include.dist.patch b/pkgs/os-specific/bsd/freebsd/patches/13.1/no-perms-BSD.include.dist.patch
index 985617ee0f45..985617ee0f45 100644
--- a/pkgs/os-specific/bsd/freebsd/pkgs/include/no-perms-BSD.include.dist.patch
+++ b/pkgs/os-specific/bsd/freebsd/patches/13.1/no-perms-BSD.include.dist.patch
diff --git a/pkgs/os-specific/bsd/freebsd/pkgs/sys/sys-gnu-date.patch b/pkgs/os-specific/bsd/freebsd/patches/13.1/sys-gnu-date.patch
index 2356446baf85..2356446baf85 100644
--- a/pkgs/os-specific/bsd/freebsd/pkgs/sys/sys-gnu-date.patch
+++ b/pkgs/os-specific/bsd/freebsd/patches/13.1/sys-gnu-date.patch
diff --git a/pkgs/os-specific/bsd/freebsd/pkgs/sys/sys-no-explicit-intrinsics-dep.patch b/pkgs/os-specific/bsd/freebsd/patches/13.1/sys-no-explicit-intrinsics-dep.patch
index edf44de5bb0d..edf44de5bb0d 100644
--- a/pkgs/os-specific/bsd/freebsd/pkgs/sys/sys-no-explicit-intrinsics-dep.patch
+++ b/pkgs/os-specific/bsd/freebsd/patches/13.1/sys-no-explicit-intrinsics-dep.patch
diff --git a/pkgs/os-specific/bsd/freebsd/patches/14.0/bmake-no-compiler-rt.patch b/pkgs/os-specific/bsd/freebsd/patches/14.0/bmake-no-compiler-rt.patch
new file mode 100644
index 000000000000..f43d87c01e54
--- /dev/null
+++ b/pkgs/os-specific/bsd/freebsd/patches/14.0/bmake-no-compiler-rt.patch
@@ -0,0 +1,11 @@
+--- a/share/mk/src.libnames.mk	2023-12-21 23:56:50.767042385 -0800
++++ b/share/mk/src.libnames.mk	2023-12-21 23:56:39.671089506 -0800
+@@ -392,7 +392,7 @@
+ _DP_ztest=	geom m nvpair umem zpool pthread avl zfs_core spl zutil zfs uutil icp
+ # The libc dependencies are not strictly needed but are defined to make the
+ # assert happy.
+-_DP_c=		compiler_rt
++_DP_c=		
+ # Use libssp_nonshared only on i386 and power*.  Other archs emit direct calls
+ # to __stack_chk_fail, not __stack_chk_fail_local provided by libssp_nonshared.
+ .if ${MK_SSP} != "no" && \
diff --git a/pkgs/os-specific/bsd/freebsd/patches/14.0/compat-fix-typedefs-locations.patch b/pkgs/os-specific/bsd/freebsd/patches/14.0/compat-fix-typedefs-locations.patch
new file mode 100644
index 000000000000..3336a2504e58
--- /dev/null
+++ b/pkgs/os-specific/bsd/freebsd/patches/14.0/compat-fix-typedefs-locations.patch
@@ -0,0 +1,32 @@
+--- a/tools/build/cross-build/include/common/sys/_types.h
++++ b/tools/build/cross-build/include/common/sys/_types.h
+@@ -47,3 +47,6 @@
+  * Neither GLibc nor macOS define __va_list but many FreeBSD headers require it.
+  */
+ typedef __builtin_va_list __va_list;
++
++typedef __UINTPTR_TYPE__ __uintptr_t;
++typedef __INTPTR_TYPE__ __intptr_t;
+--- a/tools/build/cross-build/include/common/sys/types.h
++++ b/tools/build/cross-build/include/common/sys/types.h
+@@ -49,9 +49,6 @@
+ #include <sys/sysmacros.h>
+ #endif
+ 
+-typedef __UINTPTR_TYPE__ __uintptr_t;
+-typedef __INTPTR_TYPE__ __intptr_t;
+-
+ /* needed for gencat */
+ typedef int __nl_item;
+ 
+--- a/tools/build/cross-build/include/linux/sys/types.h
++++ b/tools/build/cross-build/include/linux/sys/types.h
+@@ -39,6 +39,8 @@
+ 
+ #include_next <sys/types.h>
+ 
++#include <sys/_types.h>
++
+ #ifndef __size_t
+ typedef __SIZE_TYPE__ __size_t;
+ #endif
diff --git a/pkgs/os-specific/bsd/freebsd/patches/14.0/compat-install-dirs.patch b/pkgs/os-specific/bsd/freebsd/patches/14.0/compat-install-dirs.patch
new file mode 100644
index 000000000000..4bc21cf8eb14
--- /dev/null
+++ b/pkgs/os-specific/bsd/freebsd/patches/14.0/compat-install-dirs.patch
@@ -0,0 +1,40 @@
+diff --git a/tools/build/Makefile b/tools/build/Makefile
+index 948a5f9dfdb..592af84eeae 100644
+--- a/tools/build/Makefile
++++ b/tools/build/Makefile
+@@ -327,14 +327,14 @@ host-symlinks:
+ # and cross-tools stages. We do this here using mkdir since mtree may not exist
+ # yet (this happens if we are crossbuilding from Linux/Mac).
+ INSTALLDIR_LIST= \
+-	bin \
+-	lib/geom \
+-	usr/include/casper \
+-	usr/include/private/ucl \
+-	usr/include/private/zstd \
+-	usr/lib \
+-	usr/libdata/pkgconfig \
+-	usr/libexec
++	${BINDIR} \
++	${LIBDIR}/geom \
++	${INCLUDEDIR}/casper \
++	${INCLUDEDIR}/private/ucl \
++	${INCLUDEDIR}/private/zstd \
++	${LIBDIR} \
++	${LIBDIR}/libdata/pkgconfig \
++	${LIBEXECDIR}
+ 
+ installdirs:
+ 	mkdir -p ${INSTALLDIR_LIST:S,^,${DESTDIR}/,}
+@@ -352,9 +352,9 @@ installdirs:
+ 	    rm -rf "${DESTDIR}/${_dir}"; \
+ 	fi
+ .endfor
+-	ln -sfn bin ${DESTDIR}/sbin
+-	ln -sfn ../bin ${DESTDIR}/usr/bin
+-	ln -sfn ../bin ${DESTDIR}/usr/sbin
++	ln -sfn bin ${DESTDIR}/${SBINDIR}
++	ln -sfn ../bin ${DESTDIR}/${BINDIR}
++	ln -sfn ../bin ${DESTDIR}/${SBINDIR}
+ .for _group in ${INCSGROUPS:NINCS}
+ 	mkdir -p "${DESTDIR}/${${_group}DIR}"
+ .endfor
diff --git a/pkgs/os-specific/bsd/freebsd/patches/14.0/install-bootstrap-Makefile.patch b/pkgs/os-specific/bsd/freebsd/patches/14.0/install-bootstrap-Makefile.patch
new file mode 100644
index 000000000000..a69c5501ddd1
--- /dev/null
+++ b/pkgs/os-specific/bsd/freebsd/patches/14.0/install-bootstrap-Makefile.patch
@@ -0,0 +1,11 @@
+--- a/usr.bin/xinstall/Makefile	2023-09-23 19:18:49.165192183 -0700
++++ b/usr.bin/xinstall/Makefile	2023-12-06 17:06:57.836888028 -0700
+@@ -14,7 +14,7 @@
+ CFLAGS+=	-I${SRCTOP}/lib/libnetbsd
+ 
+ LIBADD=		md
+-CFLAGS+=	-DWITH_MD5 -DWITH_RIPEMD160
++CFLAGS+=		-I${BSDSRCDIR}/contrib/libc-vis -I${BSDSRCDIR}/lib/libnetbsd
+ 
+ .ifdef BOOTSTRAPPING
+ # For the bootstrap we disable copy_file_range()
diff --git a/pkgs/os-specific/bsd/freebsd/patches/14.0/libc-msun-arch-subdir.patch b/pkgs/os-specific/bsd/freebsd/patches/14.0/libc-msun-arch-subdir.patch
new file mode 100644
index 000000000000..4a69e85a986a
--- /dev/null
+++ b/pkgs/os-specific/bsd/freebsd/patches/14.0/libc-msun-arch-subdir.patch
@@ -0,0 +1,11 @@
+--- a/lib/libc/Makefile
++++ b/lib/libc/Makefile
+@@ -194,7 +194,7 @@ SUBDIR.${MK_TESTS}+= tests
+ # recording a build dependency
+ CFLAGS+= -I${SRCTOP}/lib/libutil
+ # Same issue with libm
+-MSUN_ARCH_SUBDIR != ${MAKE} -B -C ${SRCTOP}/lib/msun -V ARCH_SUBDIR
++MSUN_ARCH_SUBDIR = ${MACHINE_CPUARCH:S/i386/i387/}
+ # unfortunately msun/src contains both private and public headers
+ CFLAGS+= -I${SRCTOP}/lib/msun/${MSUN_ARCH_SUBDIR}
+ .if ${MACHINE_CPUARCH} == "i386" || ${MACHINE_CPUARCH} == "amd64"
diff --git a/pkgs/os-specific/bsd/freebsd/patches/14.0/libc-no-force--lcompiler-rt.patch b/pkgs/os-specific/bsd/freebsd/patches/14.0/libc-no-force--lcompiler-rt.patch
new file mode 100644
index 000000000000..60176fb73cf7
--- /dev/null
+++ b/pkgs/os-specific/bsd/freebsd/patches/14.0/libc-no-force--lcompiler-rt.patch
@@ -0,0 +1,10 @@
+--- a/lib/libc/Makefile
++++ b/lib/libc/Makefile
+@@ -58,7 +58,6 @@ CFLAGS+=${CANCELPOINTS_CFLAGS}
+ # Link with static libcompiler_rt.a.
+ #
+ LDFLAGS+= -nodefaultlibs
+-LIBADD+=	compiler_rt
+ 
+ .if ${MK_SSP} != "no" && \
+     (${LIBC_ARCH} == "i386" || ${MACHINE_ARCH:Mpower*} != "")
diff --git a/pkgs/os-specific/bsd/freebsd/patches/14.0/libnetbsd-do-install.patch b/pkgs/os-specific/bsd/freebsd/patches/14.0/libnetbsd-do-install.patch
new file mode 100644
index 000000000000..a7bd032d2be5
--- /dev/null
+++ b/pkgs/os-specific/bsd/freebsd/patches/14.0/libnetbsd-do-install.patch
@@ -0,0 +1,32 @@
+diff --git a/Makefile b/Makefile
+index 22710f3d933..22effc848cf 100644
+--- a/lib/libnetbsd/Makefile
++++ b/lib/libnetbsd/Makefile
+@@ -9,6 +9,26 @@ CFLAGS+=	-I${.CURDIR}
+ 
+ SRCS+=	efun.c sockaddr_snprintf.c strsuftoll.c util.c util.h
+ 
+-INTERNALLIB=
++INCSGROUPS= INCS SYSINCS NETINETINCS
++
++INCS+= \
++	glob.h \
++	pthread.h \
++	rmd160.h \
++	sha1.h \
++	sha2.h \
++	stdlib.h \
++	util.h
++
++SYSINCSDIR= ${INCLUDEDIR}/sys
++SYSINCS+= \
++	sys/cdefs.h \
++	sys/event.h \
++	sys/types.h \
++	sys/wait.h
++
++NETINETINCSDIR= ${INCLUDEDIR}/netinet
++NETINETINCS+= \
++	netinet/in.h
+ 
+ .include <bsd.lib.mk>
diff --git a/pkgs/os-specific/bsd/freebsd/patches/14.0/librpcsvc-include-subdir.patch b/pkgs/os-specific/bsd/freebsd/patches/14.0/librpcsvc-include-subdir.patch
new file mode 100644
index 000000000000..38e06682869f
--- /dev/null
+++ b/pkgs/os-specific/bsd/freebsd/patches/14.0/librpcsvc-include-subdir.patch
@@ -0,0 +1,11 @@
+--- a/lib/librpcsvc/Makefile
++++ b/lib/librpcsvc/Makefile
+@@ -20,7 +20,7 @@ OTHERSRCS+= yp_passwd.c yp_update.c
+ 
+ RPCCOM=	RPCGEN_CPP=${CPP:Q} rpcgen -C
+ 
+-INCDIRS= -I${SYSROOT:U${DESTDIR}}/usr/include/rpcsvc
++INCDIRS= -I${INCLUDEDIR}/rpcsvc
+ 
+ CFLAGS+= -DYP ${INCDIRS}
+ 
diff --git a/pkgs/os-specific/bsd/freebsd/patches/14.0/mtree-Makefile.patch b/pkgs/os-specific/bsd/freebsd/patches/14.0/mtree-Makefile.patch
new file mode 100644
index 000000000000..2a6e560d1d28
--- /dev/null
+++ b/pkgs/os-specific/bsd/freebsd/patches/14.0/mtree-Makefile.patch
@@ -0,0 +1,13 @@
+--- a/contrib/mtree/Makefile	2023-12-04 23:02:13.919144141 -0700
++++ b/contrib/mtree/Makefile		2023-12-04 23:02:58.371810109 -0700
+@@ -10,8 +10,8 @@
+ SRCS=  compare.c crc.c create.c excludes.c misc.c mtree.c spec.c specspec.c \
+        verify.c getid.c pack_dev.c only.c
+ .if (${HOSTPROG:U} == "")
+-DPADD+= ${LIBUTIL}
+-LDADD+= -lutil
++LIBADD+= ${LIBUTIL}
++#LIBADD+= -lutil
+ .endif
+
+ CPPFLAGS+=	-I${NETBSDSRCDIR}/sbin/mknod
diff --git a/pkgs/os-specific/bsd/freebsd/patches/14.0/no-perms-BSD.include.dist.patch b/pkgs/os-specific/bsd/freebsd/patches/14.0/no-perms-BSD.include.dist.patch
new file mode 100644
index 000000000000..985617ee0f45
--- /dev/null
+++ b/pkgs/os-specific/bsd/freebsd/patches/14.0/no-perms-BSD.include.dist.patch
@@ -0,0 +1,11 @@
+--- a/etc/mtree/BSD.include.dist
++++ b/etc/mtree/BSD.include.dist
+@@ -3,7 +3,7 @@
+ # Please see the file src/etc/mtree/README before making changes to this file.
+ #
+ 
+-/set type=dir uname=root gname=wheel mode=0755
++/set type=dir
+ .
+     arpa
+     ..
diff --git a/pkgs/os-specific/bsd/freebsd/patches/14.0/rtld-no-force--lcompiler-rt.patch b/pkgs/os-specific/bsd/freebsd/patches/14.0/rtld-no-force--lcompiler-rt.patch
new file mode 100644
index 000000000000..45f0d0c51eec
--- /dev/null
+++ b/pkgs/os-specific/bsd/freebsd/patches/14.0/rtld-no-force--lcompiler-rt.patch
@@ -0,0 +1,10 @@
+--- a/libexec/rtld-elf/Makefile
++++ b/libexec/rtld-elf/Makefile
+@@ -86,7 +86,6 @@ 
+ 
+ # Some of the required math functions (div & mod) are implemented in
+ # libcompiler_rt on some architectures.
+-LIBADD+=	compiler_rt
+ 
+ .include <bsd.prog.mk>
+ ${PROG_FULL}:  ${VERSION_MAP}
diff --git a/pkgs/os-specific/bsd/freebsd/patches/14.0/sys-gnu-date.patch b/pkgs/os-specific/bsd/freebsd/patches/14.0/sys-gnu-date.patch
new file mode 100644
index 000000000000..2356446baf85
--- /dev/null
+++ b/pkgs/os-specific/bsd/freebsd/patches/14.0/sys-gnu-date.patch
@@ -0,0 +1,13 @@
+diff --git a/sys/conf/newvers.sh b/sys/conf/newvers.sh
+index c594724d814..d5287c7b992 100644
+--- a/sys/conf/newvers.sh
++++ b/sys/conf/newvers.sh
+@@ -177,7 +177,7 @@ u=${USER:-root}
+ d=$(pwd)
+ h=${HOSTNAME:-$(hostname)}
+ if [ -n "$SOURCE_DATE_EPOCH" ]; then
+-	if ! t=$(date -r $SOURCE_DATE_EPOCH 2>/dev/null); then
++	if ! t=$(date -d @$SOURCE_DATE_EPOCH 2>/dev/null); then
+ 		echo "Invalid SOURCE_DATE_EPOCH" >&2
+ 		exit 1
+ 	fi
diff --git a/pkgs/os-specific/bsd/freebsd/patches/14.0/sys-no-explicit-intrinsics-dep.patch b/pkgs/os-specific/bsd/freebsd/patches/14.0/sys-no-explicit-intrinsics-dep.patch
new file mode 100644
index 000000000000..5cf926d4519b
--- /dev/null
+++ b/pkgs/os-specific/bsd/freebsd/patches/14.0/sys-no-explicit-intrinsics-dep.patch
@@ -0,0 +1,42 @@
+--- a/sys/modules/aesni/Makefile	2023-12-16 09:19:28.454892154 -0700
++++ b/sys/Modules/aesni/Makefile	2023-12-16 09:19:41.975047684 -0700
+@@ -1,6 +1,5 @@
+ 
+ .PATH: ${SRCTOP}/sys/crypto/aesni
+-.PATH: ${SRCTOP}/contrib/llvm-project/clang/lib/Headers
+ 
+ KMOD=	aesni
+ SRCS=	aesni.c
+@@ -39,8 +38,8 @@
+ aesni_ghash.o: aesni.h
+ aesni_wrap.o: aesni.h
+ aesni_ccm.o: aesni.h
+-intel_sha1.o: sha_sse.h immintrin.h shaintrin.h tmmintrin.h xmmintrin.h
+-intel_sha256.o: sha_sse.h immintrin.h shaintrin.h tmmintrin.h xmmintrin.h
++intel_sha1.o: sha_sse.h
++intel_sha256.o: sha_sse.h
+ 
+ .include <bsd.kmod.mk>
+ 
+diff --git a/sys/modules/blake2/Makefile b/sys/modules/blake2/Makefile
+index e4b3fb9f126..5bfd9c2ae02 100644
+--- a/sys/modules/blake2/Makefile
++++ b/sys/modules/blake2/Makefile
+@@ -3,7 +3,6 @@
+ .PATH:	${SRCTOP}/sys/contrib/libb2
+ .PATH:	${SRCTOP}/sys/crypto/blake2
+ .PATH:	${SRCTOP}/sys/opencrypto
+-.PATH:	${SRCTOP}/contrib/llvm-project/clang/lib/Headers
+ 
+ KMOD	= blake2
+ 
+@@ -64,8 +63,7 @@ ${src:S/.c/.o/}: ${src}
+ 	    -D_MM_MALLOC_H_INCLUDED -Wno-unused-function ${.IMPSRC}
+ 	${CTFCONVERT_CMD}
+ 
+-${src:S/.c/.o/}: intrin.h emmintrin.h tmmintrin.h smmintrin.h immintrin.h \
+-    x86intrin.h ${SRCS:M*.h}
++${src:S/.c/.o/}: ${SRCS:M*.h}
+ .endfor
+ 
+ # FreeBSD-specific sources:
diff --git a/pkgs/os-specific/bsd/freebsd/pkgs/boot-install.nix b/pkgs/os-specific/bsd/freebsd/pkgs/boot-install.nix
index 71ecef1bcae4..966489d9aef3 100644
--- a/pkgs/os-specific/bsd/freebsd/pkgs/boot-install.nix
+++ b/pkgs/os-specific/bsd/freebsd/pkgs/boot-install.nix
@@ -1,7 +1,10 @@
 { buildPackages, freebsd-lib }:
 
 # Wrap NetBSD's install
-buildPackages.writeShellScriptBin "boot-install" (freebsd-lib.install-wrapper + ''
+buildPackages.writeShellScriptBin "boot-install" (
+  freebsd-lib.install-wrapper
+  + ''
 
-  ${buildPackages.netbsd.install}/bin/xinstall "''${args[@]}"
-'')
+    ${buildPackages.netbsd.install}/bin/xinstall "''${args[@]}"
+  ''
+)
diff --git a/pkgs/os-specific/bsd/freebsd/pkgs/compat/package.nix b/pkgs/os-specific/bsd/freebsd/pkgs/compat/package.nix
index 5e4528fbf46a..f597d6e3705b 100644
--- a/pkgs/os-specific/bsd/freebsd/pkgs/compat/package.nix
+++ b/pkgs/os-specific/bsd/freebsd/pkgs/compat/package.nix
@@ -1,102 +1,129 @@
-{ lib, stdenv, mkDerivation
-, bsdSetupHook, freebsdSetupHook
-, makeMinimal, boot-install
-, which
-, freebsd-lib
-, expat, zlib,
+{
+  lib,
+  stdenv,
+  mkDerivation,
+  versionData,
+  bsdSetupHook,
+  freebsdSetupHook,
+  makeMinimal,
+  boot-install,
+  which,
+  freebsd-lib,
+  expat,
+  zlib,
 }:
 
 let
   inherit (freebsd-lib) mkBsdArch;
 in
 
-mkDerivation rec {
+mkDerivation {
   pname = "compat";
   path = "tools/build";
-  extraPaths = [
-    "lib/libc/db"
-    "lib/libc/stdlib" # getopt
-    "lib/libc/gen" # getcap
-    "lib/libc/locale" # rpmatch
-  ] ++ lib.optionals stdenv.hostPlatform.isLinux [
-    "lib/libc/string" # strlcpy
-    "lib/libutil"
-  ] ++ [
-    "contrib/libc-pwcache"
-    "contrib/libc-vis"
-    "sys/libkern"
-    "sys/kern/subr_capability.c"
-
-    # Take only individual headers, or else we will clobber native libc, etc.
-
-    "sys/rpc/types.h"
-
-    # Listed in Makekfile as INC
-    "include/mpool.h"
-    "include/ndbm.h"
-    "include/err.h"
-    "include/stringlist.h"
-    "include/a.out.h"
-    "include/nlist.h"
-    "include/db.h"
-    "include/getopt.h"
-    "include/nl_types.h"
-    "include/elf.h"
-    "sys/sys/ctf.h"
-
-    # Listed in Makekfile as SYSINC
-
-    "sys/sys/capsicum.h"
-    "sys/sys/caprights.h"
-    "sys/sys/imgact_aout.h"
-    "sys/sys/nlist_aout.h"
-    "sys/sys/nv.h"
-    "sys/sys/dnv.h"
-    "sys/sys/cnv.h"
-
-    "sys/sys/elf32.h"
-    "sys/sys/elf64.h"
-    "sys/sys/elf_common.h"
-    "sys/sys/elf_generic.h"
-    "sys/${mkBsdArch stdenv}/include"
-  ] ++ lib.optionals stdenv.hostPlatform.isx86 [
-    "sys/x86/include"
-  ] ++ [
-
-    "sys/sys/queue.h"
-    "sys/sys/md5.h"
-    "sys/sys/sbuf.h"
-    "sys/sys/tree.h"
-    "sys/sys/font.h"
-    "sys/sys/consio.h"
-    "sys/sys/fnv_hash.h"
-
-    "sys/crypto/chacha20/_chacha.h"
-    "sys/crypto/chacha20/chacha.h"
-    # included too, despite ".c"
-    "sys/crypto/chacha20/chacha.c"
-
-    "sys/fs"
-    "sys/ufs"
-    "sys/sys/disk"
-
-    "lib/libcapsicum"
-    "lib/libcasper"
-  ];
-
-  patches = [
-    ./compat-install-dirs.patch
-    ./compat-fix-typedefs-locations.patch
-  ];
-
-  preBuild = ''
-    NIX_CFLAGS_COMPILE+=' -I../../include -I../../sys'
-
-    cp ../../sys/${mkBsdArch stdenv}/include/elf.h ../../sys/sys
-    cp ../../sys/${mkBsdArch stdenv}/include/elf.h ../../sys/sys/${mkBsdArch stdenv}
-  '' + lib.optionalString stdenv.hostPlatform.isx86 ''
-    cp ../../sys/x86/include/elf.h ../../sys/x86
-  '';
+  extraPaths =
+    [
+      "lib/libc/db"
+      "lib/libc/stdlib" # getopt
+      "lib/libc/gen" # getcap
+      "lib/libc/locale" # rpmatch
+    ]
+    ++ lib.optionals stdenv.hostPlatform.isLinux [
+      "lib/libc/string" # strlcpy
+      "lib/libutil"
+    ]
+    ++ [
+      "contrib/libc-pwcache"
+      "contrib/libc-vis"
+      "sys/libkern"
+      "sys/kern/subr_capability.c"
+
+      # Take only individual headers, or else we will clobber native libc, etc.
+
+      "sys/rpc/types.h"
+    ]
+    ++ lib.optionals (versionData.major == 14) [ "sys/sys/bitcount.h" ]
+    ++ [
+
+      # Listed in Makekfile as INC
+      "include/mpool.h"
+      "include/ndbm.h"
+      "include/err.h"
+      "include/stringlist.h"
+      "include/a.out.h"
+      "include/nlist.h"
+      "include/db.h"
+      "include/getopt.h"
+      "include/nl_types.h"
+      "include/elf.h"
+      "sys/sys/ctf.h"
+    ]
+    ++ lib.optionals (versionData.major == 14) [
+      "include/bitstring.h"
+      "sys/sys/bitstring.h"
+      "sys/sys/nv_namespace.h"
+    ]
+    ++ [
+
+      # Listed in Makekfile as SYSINC
+
+      "sys/sys/capsicum.h"
+      "sys/sys/caprights.h"
+      "sys/sys/imgact_aout.h"
+      "sys/sys/nlist_aout.h"
+      "sys/sys/nv.h"
+      "sys/sys/dnv.h"
+      "sys/sys/cnv.h"
+
+      "sys/sys/elf32.h"
+      "sys/sys/elf64.h"
+      "sys/sys/elf_common.h"
+      "sys/sys/elf_generic.h"
+      "sys/${mkBsdArch stdenv}/include"
+    ]
+    ++ lib.optionals stdenv.hostPlatform.isx86 [ "sys/x86/include" ]
+    ++ [
+
+      "sys/sys/queue.h"
+      "sys/sys/md5.h"
+      "sys/sys/sbuf.h"
+      "sys/sys/tree.h"
+      "sys/sys/font.h"
+      "sys/sys/consio.h"
+      "sys/sys/fnv_hash.h"
+      #"sys/sys/cdefs.h"
+      #"sys/sys/param.h"
+      "sys/sys/_null.h"
+      #"sys/sys/types.h"
+      "sys/sys/_pthreadtypes.h"
+      "sys/sys/_stdint.h"
+
+      "sys/crypto/chacha20/_chacha.h"
+      "sys/crypto/chacha20/chacha.h"
+      # included too, despite ".c"
+      "sys/crypto/chacha20/chacha.c"
+
+      "sys/fs"
+      "sys/ufs"
+      "sys/sys/disk"
+
+      "lib/libcapsicum"
+      "lib/libcasper"
+      "lib/libmd"
+
+      # idk bro
+      "sys/sys/kbio.h"
+    ];
+
+  preBuild =
+    ''
+      NIX_CFLAGS_COMPILE+=' -I../../include -I../../sys'
+
+      cp ../../sys/${mkBsdArch stdenv}/include/elf.h ../../sys/sys
+      cp ../../sys/${mkBsdArch stdenv}/include/elf.h ../../sys/sys/${mkBsdArch stdenv}
+    ''
+    + lib.optionalString stdenv.hostPlatform.isx86 ''
+      cp ../../sys/x86/include/elf.h ../../sys/x86
+    '';
 
   setupHooks = [
     ../../../../../build-support/setup-hooks/role.bash
@@ -109,13 +136,17 @@ mkDerivation rec {
   '';
 
   nativeBuildInputs = [
-    bsdSetupHook freebsdSetupHook
+    bsdSetupHook
+    freebsdSetupHook
     makeMinimal
     boot-install
 
     which
   ];
-  buildInputs = [ expat zlib ];
+  buildInputs = [
+    expat
+    zlib
+  ];
 
   makeFlags = [
     "STRIP=-s" # flag to install, not command
@@ -124,12 +155,20 @@ mkDerivation rec {
     "INSTALL=boot-install"
   ];
 
-  preIncludes = ''
-    mkdir -p $out/{0,1}-include
-    cp --no-preserve=mode -r cross-build/include/common/* $out/0-include
-  '' + lib.optionalString stdenv.hostPlatform.isLinux ''
-    cp --no-preserve=mode -r cross-build/include/linux/* $out/1-include
-  '' + lib.optionalString stdenv.hostPlatform.isDarwin ''
-    cp --no-preserve=mode -r cross-build/include/darwin/* $out/1-include
-  '';
+  preIncludes =
+    ''
+      mkdir -p $out/{0,1}-include
+      cp --no-preserve=mode -r cross-build/include/common/* $out/0-include
+    ''
+    + lib.optionalString stdenv.hostPlatform.isLinux ''
+      cp --no-preserve=mode -r cross-build/include/linux/* $out/1-include
+    ''
+    + lib.optionalString stdenv.hostPlatform.isDarwin ''
+      cp --no-preserve=mode -r cross-build/include/darwin/* $out/1-include
+    '';
+
+  # Compat is for making other platforms look like FreeBSD (e.g. to
+  # build build-time dependencies for building FreeBSD packages). It is
+  # not needed when building for FreeBSD.
+  meta.broken = stdenv.hostPlatform.isFreeBSD;
 }
diff --git a/pkgs/os-specific/bsd/freebsd/pkgs/config.nix b/pkgs/os-specific/bsd/freebsd/pkgs/config.nix
index 641cfc46b4e9..f7ba273ed558 100644
--- a/pkgs/os-specific/bsd/freebsd/pkgs/config.nix
+++ b/pkgs/os-specific/bsd/freebsd/pkgs/config.nix
@@ -1,17 +1,35 @@
-{ mkDerivation
-, bsdSetupHook, freebsdSetupHook
-, makeMinimal, install, mandoc, groff
-, flex, byacc, file2c
-, compatIfNeeded, libnv, libsbuf
+{
+  mkDerivation,
+  bsdSetupHook,
+  freebsdSetupHook,
+  makeMinimal,
+  install,
+  mandoc,
+  groff,
+  flex,
+  byacc,
+  file2c,
+  compatIfNeeded,
+  libnv,
+  libsbuf,
 }:
 
 mkDerivation {
   path = "usr.sbin/config";
   nativeBuildInputs = [
-    bsdSetupHook freebsdSetupHook
-    makeMinimal install mandoc groff
+    bsdSetupHook
+    freebsdSetupHook
+    makeMinimal
+    install
+    mandoc
+    groff
 
-    flex byacc file2c
+    flex
+    byacc
+    file2c
+  ];
+  buildInputs = compatIfNeeded ++ [
+    libnv
+    libsbuf
   ];
-  buildInputs = compatIfNeeded ++ [ libnv libsbuf ];
 }
diff --git a/pkgs/os-specific/bsd/freebsd/pkgs/csu.nix b/pkgs/os-specific/bsd/freebsd/pkgs/csu.nix
index 0b17cb1c8481..0f74d78b1d13 100644
--- a/pkgs/os-specific/bsd/freebsd/pkgs/csu.nix
+++ b/pkgs/os-specific/bsd/freebsd/pkgs/csu.nix
@@ -1,23 +1,32 @@
-{ lib, mkDerivation
-, bsdSetupHook, freebsdSetupHook
-, makeMinimal
-, install
-, flex, byacc, gencat
-, include
+{
+  lib,
+  mkDerivation,
+  bsdSetupHook,
+  freebsdSetupHook,
+  makeMinimal,
+  install,
+  flex,
+  byacc,
+  gencat,
+  include,
 }:
 
 mkDerivation {
+  isStatic = true;
   path = "lib/csu";
   extraPaths = [
     "lib/Makefile.inc"
     "lib/libc/include/libc_private.h"
   ];
   nativeBuildInputs = [
-    bsdSetupHook freebsdSetupHook
+    bsdSetupHook
+    freebsdSetupHook
     makeMinimal
     install
 
-    flex byacc gencat
+    flex
+    byacc
+    gencat
   ];
   buildInputs = [ include ];
   MK_TESTS = "no";
diff --git a/pkgs/os-specific/bsd/freebsd/pkgs/ctfconvert.nix b/pkgs/os-specific/bsd/freebsd/pkgs/ctfconvert.nix
index 0aebc9b3d0b9..9e653bb4f51e 100644
--- a/pkgs/os-specific/bsd/freebsd/pkgs/ctfconvert.nix
+++ b/pkgs/os-specific/bsd/freebsd/pkgs/ctfconvert.nix
@@ -1,7 +1,10 @@
-{ lib, stdenv, mkDerivation
-, bsdSetupHook, freebsdSetupHook
-, makeMinimal, install, mandoc, groff
-, compatIfNeeded, libelf, libdwarf, zlib, libspl
+{
+  lib,
+  mkDerivation,
+  compatIfNeeded,
+  libdwarf,
+  zlib,
+  libspl,
 }:
 
 mkDerivation {
@@ -15,14 +18,18 @@ mkDerivation {
   ];
   OPENSOLARIS_USR_DISTDIR = "$(SRCTOP)/cddl/contrib/opensolaris";
   OPENSOLARIS_SYS_DISTDIR = "$(SRCTOP)/sys/cddl/contrib/opensolaris";
-  nativeBuildInputs = [
-    bsdSetupHook freebsdSetupHook
-    makeMinimal install mandoc groff
 
-    # flex byacc file2c
+  makeFlags = [
+    "STRIP=-s"
+    "MK_WERROR=no"
+    "MK_TESTS=no"
   ];
+
   buildInputs = compatIfNeeded ++ [
-    libelf libdwarf zlib libspl
+    libdwarf
+    zlib
+    libspl
   ];
+
   meta.license = lib.licenses.cddl;
 }
diff --git a/pkgs/os-specific/bsd/freebsd/pkgs/filterSource.nix b/pkgs/os-specific/bsd/freebsd/pkgs/filterSource.nix
new file mode 100644
index 000000000000..dc215c18aecb
--- /dev/null
+++ b/pkgs/os-specific/bsd/freebsd/pkgs/filterSource.nix
@@ -0,0 +1,23 @@
+{
+  lib,
+  pkgsBuildBuild,
+  runCommand,
+  writeText,
+  source,
+}:
+
+{
+  pname,
+  path,
+  extraPaths ? [ ],
+}:
+
+let
+  sortedPaths = lib.naturalSort ([ path ] ++ extraPaths);
+  filterText = writeText "${pname}-src-include" (
+    lib.concatMapStringsSep "\n" (path: "/${path}") sortedPaths
+  );
+in
+runCommand "${pname}-filtered-src" { nativeBuildInputs = [ pkgsBuildBuild.rsync ]; } ''
+  rsync -a -r --files-from=${filterText} ${source}/ $out
+''
diff --git a/pkgs/os-specific/bsd/freebsd/pkgs/freebsdSetupHook/package.nix b/pkgs/os-specific/bsd/freebsd/pkgs/freebsdSetupHook/package.nix
index 430c4c5c43ac..ef4a14ccf4aa 100644
--- a/pkgs/os-specific/bsd/freebsd/pkgs/freebsdSetupHook/package.nix
+++ b/pkgs/os-specific/bsd/freebsd/pkgs/freebsdSetupHook/package.nix
@@ -1,5 +1,3 @@
 { makeSetupHook }:
 
-makeSetupHook {
-  name = "freebsd-setup-hook";
-} ./setup-hook.sh
+makeSetupHook { name = "freebsd-setup-hook"; } ./setup-hook.sh
diff --git a/pkgs/os-specific/bsd/freebsd/pkgs/freebsdSetupHook/setup-hook.sh b/pkgs/os-specific/bsd/freebsd/pkgs/freebsdSetupHook/setup-hook.sh
index 929782954ba7..96a3d14c80f7 100644
--- a/pkgs/os-specific/bsd/freebsd/pkgs/freebsdSetupHook/setup-hook.sh
+++ b/pkgs/os-specific/bsd/freebsd/pkgs/freebsdSetupHook/setup-hook.sh
@@ -5,7 +5,18 @@ setFreeBSDSrcTop() {
 addFreeBSDMakeFlags() {
   makeFlags="SBINDIR=${!outputBin}/bin $makeFlags"
   makeFlags="LIBEXECDIR=${!outputLib}/libexec $makeFlags"
+  makeFlags="LIBDATADIR=${!outputLib}/data $makeFlags"
   makeFlags="INCLUDEDIR=${!outputDev}/include $makeFlags"
+  makeFlags="CONFDIR=${!outputBin}/etc $makeFlags"
+  makeFlags="MANDIR=${!outputMan}/share/man/man $makeFlags"
+
+  if [ -n "$debug" ]; then
+    makeFlags="DEBUGFILEDIR=${debug}/lib/debug $makeFlags"
+  else
+    makeFlags="DEBUGFILEDIR=${out}/lib/debug $makeFlags"
+  fi
+
+  echo $makeFlags
 }
 
 postUnpackHooks+=(setFreeBSDSrcTop)
diff --git a/pkgs/os-specific/bsd/freebsd/pkgs/gencat.nix b/pkgs/os-specific/bsd/freebsd/pkgs/gencat.nix
index e9ae9f27cc05..ea701b6404ec 100644
--- a/pkgs/os-specific/bsd/freebsd/pkgs/gencat.nix
+++ b/pkgs/os-specific/bsd/freebsd/pkgs/gencat.nix
@@ -1,5 +1,3 @@
 { mkDerivation }:
 
-mkDerivation {
-  path = "usr.bin/gencat";
-}
+mkDerivation { path = "usr.bin/gencat"; }
diff --git a/pkgs/os-specific/bsd/freebsd/pkgs/include/package.nix b/pkgs/os-specific/bsd/freebsd/pkgs/include/package.nix
index 73fa887c5123..70734226a54f 100644
--- a/pkgs/os-specific/bsd/freebsd/pkgs/include/package.nix
+++ b/pkgs/os-specific/bsd/freebsd/pkgs/include/package.nix
@@ -1,12 +1,13 @@
-{ lib, mkDerivation
-, buildPackages
-, bsdSetupHook, freebsdSetupHook
-, makeMinimal
-, install
-, mandoc, groff, rsync /*, nbperf*/, rpcgen
+{
+  lib,
+  mkDerivation,
+  buildPackages,
+  rpcgen,
+  mtree,
 }:
 
 mkDerivation {
+  isStatic = true;
   path = "include";
 
   extraPaths = [
@@ -15,18 +16,9 @@ mkDerivation {
     "sys"
   ];
 
-  nativeBuildInputs =  [
-    bsdSetupHook freebsdSetupHook
-    makeMinimal
-    install
-    mandoc groff rsync /*nbperf*/ rpcgen
-
-    # HACK use NetBSD's for now
-    buildPackages.netbsd.mtree
-  ];
-
-  patches = [
-    ./no-perms-BSD.include.dist.patch
+  extraNativeBuildInputs = [
+    rpcgen
+    mtree
   ];
 
   # The makefiles define INCSDIR per subdirectory, so we have to set
@@ -37,11 +29,10 @@ mkDerivation {
       sed -i -E \
         -e 's_/usr/include_''${INCSDIR0}_' \
         {} \;
+    sed -E -i -e "/_PATH_LOGIN/d" $BSDSRCDIR/include/paths.h
   '';
 
-  makeFlags = [
-    "RPCGEN_CPP=${buildPackages.stdenv.cc.cc}/bin/cpp"
-  ];
+  makeFlags = [ "RPCGEN_CPP=${buildPackages.stdenv.cc.cc}/bin/cpp" ];
 
   # multiple header dirs, see above
   postConfigure = ''
diff --git a/pkgs/os-specific/bsd/freebsd/pkgs/install.nix b/pkgs/os-specific/bsd/freebsd/pkgs/install.nix
index 3db6cd3633d4..b8e59adb09c5 100644
--- a/pkgs/os-specific/bsd/freebsd/pkgs/install.nix
+++ b/pkgs/os-specific/bsd/freebsd/pkgs/install.nix
@@ -1,41 +1,67 @@
-{ lib, stdenv, mkDerivation, writeShellScript
-, freebsd-lib
-, mtree
-, bsdSetupHook, freebsdSetupHook
-, makeMinimal, mandoc, groff
-, boot-install, install
-, compatIfNeeded, libmd, libnetbsd
+{
+  lib,
+  stdenv,
+  mkDerivation,
+  writeShellScript,
+  freebsd-lib,
+  bsdSetupHook,
+  freebsdSetupHook,
+  makeMinimal,
+  mandoc,
+  groff,
+  boot-install,
+  install,
+  compatIfNeeded,
+  libmd,
+  libnetbsd,
 }:
 
 # HACK: to ensure parent directories exist. This emulates GNU
 # install’s -D option. No alternative seems to exist in BSD install.
 let
-  binstall = writeShellScript "binstall" (freebsd-lib.install-wrapper + ''
+  binstall = writeShellScript "binstall" (
+    freebsd-lib.install-wrapper
+    + ''
 
-    @out@/bin/xinstall "''${args[@]}"
-  '');
-in mkDerivation {
+      @out@/bin/xinstall "''${args[@]}"
+    ''
+  );
+in
+mkDerivation {
   path = "usr.bin/xinstall";
-  extraPaths = [ mtree.path ];
+  extraPaths = [ "contrib/mtree" ];
   nativeBuildInputs = [
-    bsdSetupHook freebsdSetupHook
-    makeMinimal mandoc groff
-    (if stdenv.hostPlatform == stdenv.buildPlatform
-     then boot-install
-     else install)
+    bsdSetupHook
+    freebsdSetupHook
+    makeMinimal
+    mandoc
+    groff
+    (if stdenv.hostPlatform == stdenv.buildPlatform then boot-install else install)
   ];
   skipIncludesPhase = true;
-  buildInputs = compatIfNeeded ++ [ libmd libnetbsd ];
-  makeFlags = [
-    "STRIP=-s" # flag to install, not command
-    "MK_WERROR=no"
-    "TESTSDIR=${builtins.placeholder "test"}"
-  ] ++ lib.optional (stdenv.hostPlatform == stdenv.buildPlatform) "INSTALL=boot-install";
+  buildInputs = compatIfNeeded ++ [
+    libmd
+    libnetbsd
+  ];
+  makeFlags =
+    [
+      "STRIP=-s" # flag to install, not command
+      "MK_WERROR=no"
+      "TESTSDIR=${builtins.placeholder "test"}"
+    ]
+    ++ lib.optionals (stdenv.hostPlatform == stdenv.buildPlatform) [
+      "BOOTSTRAPPING=1"
+      "INSTALL=boot-install"
+    ];
   postInstall = ''
-    install -D -m 0550 ${binstall} $out/bin/binstall
+    install -C -m 0550 ${binstall} $out/bin/binstall
     substituteInPlace $out/bin/binstall --subst-var out
     mv $out/bin/install $out/bin/xinstall
     ln -s ./binstall $out/bin/install
   '';
-  outputs = [ "out" "man" "test" ];
+  outputs = [
+    "out"
+    "man"
+    "test"
+  ];
 }
diff --git a/pkgs/os-specific/bsd/freebsd/pkgs/libc/package.nix b/pkgs/os-specific/bsd/freebsd/pkgs/libc/package.nix
index 0225d44be4c3..8f2cc976463e 100644
--- a/pkgs/os-specific/bsd/freebsd/pkgs/libc/package.nix
+++ b/pkgs/os-specific/bsd/freebsd/pkgs/libc/package.nix
@@ -1,79 +1,145 @@
-{ lib, stdenv, mkDerivation
+{
+  lib,
+  buildPackages,
+  stdenv,
+  mkDerivation,
 
-, bsdSetupHook, freebsdSetupHook
-, makeMinimal
-, install
-, flex, byacc, gencat, rpcgen
+  bsdSetupHook,
+  freebsdSetupHook,
+  makeMinimal,
+  install,
+  flex,
+  byacc,
+  gencat,
+  rpcgen,
+  mkcsmapper,
+  mkesdb,
 
-, csu, include
+  csu,
+  include,
+  versionData,
 }:
 
-mkDerivation rec {
+mkDerivation {
+  isStatic = true;
   pname = "libc";
   path = "lib/libc";
-  extraPaths = [
-    "etc/group"
-    "etc/master.passwd"
-    "etc/shells"
-    "lib/libmd"
-    "lib/libutil"
-    "lib/msun"
-    "sys/kern"
-    "sys/libkern"
-    "sys/sys"
-    "sys/crypto/chacha20"
-    "include/rpcsvc"
-    "contrib/jemalloc"
-    "contrib/gdtoa"
-    "contrib/libc-pwcache"
-    "contrib/libc-vis"
-    "contrib/tzcode/stdtime"
-
-    # libthr
-    "lib/libthr"
-    "lib/libthread_db"
-    "libexec/rtld-elf"
-
-    # librpcsvc
-    "lib/librpcsvc"
-
-    # librt
-    "lib/librt"
-
-    # libcrypt
-    "lib/libcrypt"
-    "lib/libmd"
-    "sys/crypto/sha2"
-  ];
+  extraPaths =
+    [
+      "lib/libc_nonshared"
+      "etc/group"
+      "etc/master.passwd"
+      "etc/shells"
+      "lib/libmd"
+      "lib/libutil"
+      "lib/msun"
+      "sys/kern"
+      "sys/libkern"
+      "sys/sys"
+      "sys/crypto/chacha20"
+      "include/rpcsvc"
+      "contrib/jemalloc"
+      "contrib/gdtoa"
+      "contrib/libc-pwcache"
+      "contrib/libc-vis"
+    ]
+    ++ lib.optionals (versionData.major == 13) [ "contrib/tzcode/stdtime" ]
+    ++ lib.optionals (versionData.major == 14) [ "contrib/tzcode" ]
+    ++ [
 
-  patches = [
-    # Hack around broken propogating MAKEFLAGS to submake, just inline logic
-    ./libc-msun-arch-subdir.patch
+      # libthr
+      "lib/libthr"
+      "lib/libthread_db"
+      "libexec/rtld-elf"
+      "lib/csu/common/crtbrand.S"
+      "lib/csu/common/notes.h"
 
-    # Don't force -lcompiler-rt, we don't actually call it that
-    ./libc-no-force--lcompiler-rt.patch
+      # librpcsvc
+      "lib/librpcsvc"
 
-    # Fix extra include dir to get rpcsvc headers.
-    ./librpcsvc-include-subdir.patch
-  ];
+      # librt
+      "lib/librt"
+
+      # libcrypt
+      "lib/libcrypt"
+      "lib/libmd"
+      "sys/crypto/sha2"
+      "sys/crypto/skein"
+
+      # libgcc and friends
+      "lib/libgcc_eh"
+      "lib/libgcc_s"
+      "lib/libcompiler_rt"
+      "contrib/llvm-project/libunwind"
+      "contrib/llvm-project/compiler-rt"
+      #"contrib/llvm-project/libcxx"
+
+      # terminfo
+      "lib/ncurses"
+      "contrib/ncurses"
+      "lib/Makefile.inc"
+    ]
+    ++ lib.optionals (stdenv.hostPlatform.isx86_32) [ "lib/libssp_nonshared" ]
+    ++ [
+      "lib/libexecinfo"
+      "contrib/libexecinfo"
+
+      "lib/libkvm"
+      "sys" # ummmmmmmmmm libkvm wants arch-specific headers from the kernel tree
+
+      "lib/libmemstat"
+
+      "lib/libprocstat"
+      "sys/contrib/openzfs"
+      "sys/contrib/pcg-c"
+      "sys/opencrypto"
+      "sys/contrib/ck"
+      "sys/crypto"
+
+      "lib/libdevstat"
+
+      "lib/libelf"
+      "contrib/elftoolchain"
+
+      "lib/libiconv_modules"
+      "share/i18n"
+      "include/paths.h"
+
+      "lib/libdl"
+    ];
 
   postPatch = ''
     substituteInPlace $COMPONENT_PATH/Makefile --replace '.include <src.opts.mk>' ""
+
+    substituteInPlace $BSDSRCDIR/include/paths.h \
+        --replace '/usr/lib/i18n' '${builtins.placeholder "out"}/lib/i18n' \
+        --replace '/usr/share/i18n' '${builtins.placeholder "out"}/share/i18n'
   '';
 
   nativeBuildInputs = [
-    bsdSetupHook freebsdSetupHook
+    bsdSetupHook
+    freebsdSetupHook
     makeMinimal
     install
 
-    flex byacc gencat rpcgen
+    flex
+    byacc
+    gencat
+    rpcgen
+    mkcsmapper
+    mkesdb
+  ];
+  buildInputs = [
+    include
+    csu
+  ];
+  env.NIX_CFLAGS_COMPILE = toString [
+    "-B${csu}/lib"
+    # These are supposed to have _RTLD_COMPAT_LIB_SUFFIX so we can get things like "lib32"
+    # but that's unnecessary
+    "-DSTANDARD_LIBRARY_PATH=\"${builtins.placeholder "out"}/lib\""
+    "-D_PATH_RTLD=\"${builtins.placeholder "out"}/libexec/ld-elf.so.1\""
   ];
-  buildInputs = [ include csu ];
-  env.NIX_CFLAGS_COMPILE = "-B${csu}/lib";
-
-  # Suppress lld >= 16 undefined version errors
-  # https://github.com/freebsd/freebsd-src/commit/2ba84b4bcdd6012e8cfbf8a0d060a4438623a638
-  env.NIX_LDFLAGS = lib.optionalString (stdenv.targetPlatform.linker == "lld") "--undefined-version";
 
   makeFlags = [
     "STRIP=-s" # flag to install, not command
@@ -84,7 +150,7 @@ mkDerivation rec {
   MK_SYMVER = "yes";
   MK_SSP = "yes";
   MK_NLS = "yes";
-  MK_ICONV = "no"; # TODO make srctop
+  MK_ICONV = "yes";
   MK_NS_CACHING = "yes";
   MK_INET6_SUPPORT = "yes";
   MK_HESIOD = "yes";
@@ -96,44 +162,125 @@ mkDerivation rec {
   MK_MALLOC_PRODUCTION = "yes";
 
   MK_TESTS = "no";
+  MACHINE_ABI = "";
+  MK_DETECT_TZ_CHANGES = "no";
+  MK_MACHDEP_OPTIMIZATIONS = "yes";
+  MK_ASAN = "no";
+  MK_UBSAN = "no";
+
+  NO_FSCHG = "yes";
+
+  preBuild = lib.optionalString (stdenv.hostPlatform.isx86_32) ''
+    make -C $BSDSRCDIR/lib/libssp_nonshared $makeFlags
+    make -C $BSDSRCDIR/lib/libssp_nonshared $makeFlags install
+  '';
+
+  postInstall =
+    ''
+      pushd ${include}
+      find . -type d -exec mkdir -p $out/\{} \;
+      find . \( -type f -o -type l \) -exec cp -pr \{} $out/\{} \;
+      popd
+
+      pushd ${csu}
+      find . -type d -exec mkdir -p $out/\{} \;
+      find . \( -type f -o -type l \) -exec cp -pr \{} $out/\{} \;
+      popd
+
+      mkdir $BSDSRCDIR/lib/libcompiler_rt/i386
+      make -C $BSDSRCDIR/lib/libcompiler_rt $makeFlags
+      make -C $BSDSRCDIR/lib/libcompiler_rt $makeFlags install
+
+      make -C $BSDSRCDIR/lib/libgcc_eh $makeFlags
+      make -C $BSDSRCDIR/lib/libgcc_eh $makeFlags install
+
+      ln -s $BSDSRCDIR/lib/libc/libc.so.7 $BSDSRCDIR/lib/libc/libc.so  # not sure
+      mkdir $BSDSRCDIR/lib/libgcc_s/i386
+      make -C $BSDSRCDIR/lib/libgcc_s $makeFlags
+      make -C $BSDSRCDIR/lib/libgcc_s $makeFlags install
+
+      NIX_CFLAGS_COMPILE+=" -B$out/lib"
+      NIX_CFLAGS_COMPILE+=" -I$out/include"
+      NIX_LDFLAGS+=" -L$out/lib"
+
+      make -C $BSDSRCDIR/lib/libc_nonshared $makeFlags
+      make -C $BSDSRCDIR/lib/libc_nonshared $makeFlags install
+
+      mkdir $BSDSRCDIR/lib/libmd/sys
+      make -C $BSDSRCDIR/lib/libmd $makeFlags
+      make -C $BSDSRCDIR/lib/libmd $makeFlags install
 
-  postInstall = ''
-    pushd ${include}
-    find . -type d -exec mkdir -p $out/\{} \;
-    find . \( -type f -o -type l \) -exec cp -pr \{} $out/\{} \;
-    popd
+      make -C $BSDSRCDIR/lib/libthr $makeFlags
+      make -C $BSDSRCDIR/lib/libthr $makeFlags install
 
-    pushd ${csu}
-    find . -type d -exec mkdir -p $out/\{} \;
-    find . \( -type f -o -type l \) -exec cp -pr \{} $out/\{} \;
-    popd
+      make -C $BSDSRCDIR/lib/msun $makeFlags
+      make -C $BSDSRCDIR/lib/msun $makeFlags install
 
-    sed -i -e 's| [^ ]*/libc_nonshared.a||' $out/lib/libc.so
+      make -C $BSDSRCDIR/lib/librpcsvc $makeFlags
+      make -C $BSDSRCDIR/lib/librpcsvc $makeFlags install
 
-    $CC -nodefaultlibs -lgcc -shared -o $out/lib/libgcc_s.so
+      make -C $BSDSRCDIR/lib/libutil $makeFlags
+      make -C $BSDSRCDIR/lib/libutil $makeFlags install
 
-    NIX_CFLAGS_COMPILE+=" -B$out/lib"
-    NIX_CFLAGS_COMPILE+=" -I$out/include"
-    NIX_LDFLAGS+=" -L$out/lib"
+      make -C $BSDSRCDIR/lib/librt $makeFlags
+      make -C $BSDSRCDIR/lib/librt $makeFlags install
 
-    make -C $BSDSRCDIR/lib/libthr $makeFlags
-    make -C $BSDSRCDIR/lib/libthr $makeFlags install
+      make -C $BSDSRCDIR/lib/libcrypt $makeFlags
+      make -C $BSDSRCDIR/lib/libcrypt $makeFlags install
 
-    make -C $BSDSRCDIR/lib/msun $makeFlags
-    make -C $BSDSRCDIR/lib/msun $makeFlags install
+      make -C $BSDSRCDIR/lib/libelf $makeFlags
+      make -C $BSDSRCDIR/lib/libelf $makeFlags install
 
-    make -C $BSDSRCDIR/lib/librpcsvc $makeFlags
-    make -C $BSDSRCDIR/lib/librpcsvc $makeFlags install
+      make -C $BSDSRCDIR/lib/libexecinfo $makeFlags
+      make -C $BSDSRCDIR/lib/libexecinfo $makeFlags install
 
-    make -C $BSDSRCDIR/lib/libutil $makeFlags
-    make -C $BSDSRCDIR/lib/libutil $makeFlags install
+      make -C $BSDSRCDIR/lib/libkvm $makeFlags
+      make -C $BSDSRCDIR/lib/libkvm $makeFlags install
 
-    make -C $BSDSRCDIR/lib/librt $makeFlags
-    make -C $BSDSRCDIR/lib/librt $makeFlags install
+      make -C $BSDSRCDIR/lib/libmemstat $makeFlags
+      make -C $BSDSRCDIR/lib/libmemstat $makeFlags install
 
-    make -C $BSDSRCDIR/lib/libcrypt $makeFlags
-    make -C $BSDSRCDIR/lib/libcrypt $makeFlags install
+      make -C $BSDSRCDIR/lib/libprocstat $makeFlags
+      make -C $BSDSRCDIR/lib/libprocstat $makeFlags install
+
+      make -C $BSDSRCDIR/lib/libdevstat $makeFlags
+      make -C $BSDSRCDIR/lib/libdevstat $makeFlags install
+
+      make -C $BSDSRCDIR/lib/libiconv_modules $makeFlags
+      make -C $BSDSRCDIR/lib/libiconv_modules $makeFlags SHLIBDIR=${builtins.placeholder "out"}/lib/i18n install
+
+      make -C $BSDSRCDIR/lib/libdl $makeFlags
+      make -C $BSDSRCDIR/lib/libdl $makeFlags install
+
+      make -C $BSDSRCDIR/share/i18n $makeFlags
+      make -C $BSDSRCDIR/share/i18n $makeFlags ESDBDIR=${builtins.placeholder "out"}/share/i18n/esdb CSMAPPERDIR=${builtins.placeholder "out"}/share/i18n/csmapper install
+
+    ''
+    + lib.optionalString stdenv.hostPlatform.isx86_32 ''
+      $CC -c $BSDSRCDIR/contrib/llvm-project/compiler-rt/lib/builtins/udivdi3.c -o $BSDSRCDIR/contrib/llvm-project/compiler-rt/lib/builtins/udivdi3.o
+      ORIG_NIX_LDFLAGS="$NIX_LDFLAGS"
+      NIX_LDFLAGS+=" $BSDSRCDIR/contrib/llvm-project/compiler-rt/lib/builtins/udivdi3.o"
+    ''
+    + ''
+      make -C $BSDSRCDIR/libexec/rtld-elf $makeFlags
+      make -C $BSDSRCDIR/libexec/rtld-elf $makeFlags install
+      rm -f $out/libexec/ld-elf.so.1
+      mv $out/bin/ld-elf.so.1 $out/libexec
+    '';
+
+  # libc should not be allowed to refer to anything other than itself
+  postFixup = ''
+    find $out -type f | xargs -n1 ${buildPackages.patchelf}/bin/patchelf --shrink-rpath --allowed-rpath-prefixes $out || true
   '';
 
   meta.platforms = lib.platforms.freebsd;
+
+  # definitely a bad idea to enable stack protection on the stack protection initializers
+  hardeningDisable = [ "stackprotector" ];
+
+  outputs = [
+    "out"
+    "man"
+    "debug"
+  ];
 }
diff --git a/pkgs/os-specific/bsd/freebsd/pkgs/libdwarf.nix b/pkgs/os-specific/bsd/freebsd/pkgs/libdwarf.nix
index 9fc8fc5f9a62..ee4d57b021b1 100644
--- a/pkgs/os-specific/bsd/freebsd/pkgs/libdwarf.nix
+++ b/pkgs/os-specific/bsd/freebsd/pkgs/libdwarf.nix
@@ -1,8 +1,8 @@
-{ lib, stdenv, mkDerivation
-, bsdSetupHook, freebsdSetupHook
-, makeMinimal, install, mandoc, groff
-, m4
-, compatIfNeeded, libelf
+{
+  mkDerivation,
+  m4,
+  compatIfNeeded,
+  zlib,
 }:
 
 mkDerivation {
@@ -14,14 +14,7 @@ mkDerivation {
     "sys/sys/elf64.h"
     "sys/sys/elf_common.h"
   ];
-  nativeBuildInputs = [
-    bsdSetupHook freebsdSetupHook
-    makeMinimal install mandoc groff
-
-    m4
-  ];
-  buildInputs = compatIfNeeded ++ [
-    libelf
-  ];
+  extraNativeBuildInputs = [ m4 ];
+  buildInputs = compatIfNeeded ++ [ zlib ];
   MK_TESTS = "no";
 }
diff --git a/pkgs/os-specific/bsd/freebsd/pkgs/libelf.nix b/pkgs/os-specific/bsd/freebsd/pkgs/libelf.nix
deleted file mode 100644
index a44ce1685e57..000000000000
--- a/pkgs/os-specific/bsd/freebsd/pkgs/libelf.nix
+++ /dev/null
@@ -1,24 +0,0 @@
-{ lib, stdenv, mkDerivation
-, bsdSetupHook, freebsdSetupHook
-, makeMinimal, install, mandoc, groff
-, m4
-}:
-
-mkDerivation {
-  path = "lib/libelf";
-  extraPaths = [
-    "contrib/elftoolchain/libelf"
-    "contrib/elftoolchain/common"
-    "sys/sys/elf32.h"
-    "sys/sys/elf64.h"
-    "sys/sys/elf_common.h"
-  ];
-  BOOTSTRAPPING = !stdenv.isFreeBSD;
-  nativeBuildInputs = [
-    bsdSetupHook freebsdSetupHook
-    makeMinimal install mandoc groff
-
-    m4
-  ];
-  MK_TESTS = "no";
-}
diff --git a/pkgs/os-specific/bsd/freebsd/pkgs/libmd.nix b/pkgs/os-specific/bsd/freebsd/pkgs/libmd.nix
new file mode 100644
index 000000000000..71d0c1e50d5e
--- /dev/null
+++ b/pkgs/os-specific/bsd/freebsd/pkgs/libmd.nix
@@ -0,0 +1,49 @@
+{
+  lib,
+  stdenv,
+  mkDerivation,
+  freebsdSetupHook,
+  bsdSetupHook,
+  makeMinimal,
+}:
+mkDerivation {
+  path = "lib/libmd";
+  extraPaths = [
+    "sys/sys/md5.h"
+    "sys/crypto/sha2"
+    "sys/crypto/skein"
+  ];
+  nativeBuildInputs = [
+    makeMinimal
+    bsdSetupHook
+    freebsdSetupHook
+  ];
+
+  makeFlags = [
+    "STRIP=-s" # flag to install, not command
+    "RELDIR=."
+  ] ++ lib.optional (!stdenv.hostPlatform.isFreeBSD) "MK_WERROR=no";
+
+  preBuild = ''
+    mkdir sys
+  '';
+
+  installPhase = ''
+    # libmd is used by install. do it yourself!
+    mkdir -p $out/include $out/lib $man/share/man
+    cp libmd.a $out/lib/libmd.a
+    for f in $(make $makeFlags -V INCS); do
+      if [ -e "$f" ]; then cp "$f" "$out/include/$f"; fi
+      if [ -e "$BSDSRCDIR/sys/crypto/sha2/$f" ]; then cp "$BSDSRCDIR/sys/crypto/sha2/$f" "$out/include/$f"; fi
+      if [ -e "$BSDSRCDIR/sys/crypto/skein/$f" ]; then cp "$BSDSRCDIR/sys/crypto/skein/$f" "$out/include/$f"; fi
+    done
+    for f in $(make $makeFlags -V MAN); do
+      cp "$f" "$man/share/man/$f"
+    done
+  '';
+
+  outputs = [
+    "out"
+    "man"
+  ];
+}
diff --git a/pkgs/os-specific/bsd/freebsd/pkgs/libnetbsd/package.nix b/pkgs/os-specific/bsd/freebsd/pkgs/libnetbsd/package.nix
index 4011e4d8a649..82a9e140102f 100644
--- a/pkgs/os-specific/bsd/freebsd/pkgs/libnetbsd/package.nix
+++ b/pkgs/os-specific/bsd/freebsd/pkgs/libnetbsd/package.nix
@@ -1,26 +1,28 @@
-{ lib, stdenv
-, mkDerivation
-, bsdSetupHook, freebsdSetupHook, makeMinimal, mandoc, groff
-, boot-install, install
-, compatIfNeeded
+{
+  lib,
+  stdenv,
+  mkDerivation,
+  bsdSetupHook,
+  freebsdSetupHook,
+  makeMinimal,
+  mandoc,
+  groff,
+  boot-install,
+  install,
 }:
 
 mkDerivation {
   path = "lib/libnetbsd";
   nativeBuildInputs = [
-    bsdSetupHook freebsdSetupHook
-    makeMinimal mandoc groff
-    (if stdenv.hostPlatform == stdenv.buildPlatform
-     then boot-install
-     else install)
-  ];
-  patches = lib.optionals (!stdenv.hostPlatform.isFreeBSD) [
-    ./libnetbsd-do-install.patch
-    #./libnetbsd-define-__va_list.patch
+    bsdSetupHook
+    freebsdSetupHook
+    makeMinimal
+    mandoc
+    groff
+    (if stdenv.hostPlatform == stdenv.buildPlatform then boot-install else install)
   ];
   makeFlags = [
     "STRIP=-s" # flag to install, not command
     "MK_WERROR=no"
   ] ++ lib.optional (stdenv.hostPlatform == stdenv.buildPlatform) "INSTALL=boot-install";
-  buildInputs = compatIfNeeded;
 }
diff --git a/pkgs/os-specific/bsd/freebsd/pkgs/libsbuf.nix b/pkgs/os-specific/bsd/freebsd/pkgs/libsbuf.nix
index 719474dbb11a..242492a3f2f2 100644
--- a/pkgs/os-specific/bsd/freebsd/pkgs/libsbuf.nix
+++ b/pkgs/os-specific/bsd/freebsd/pkgs/libsbuf.nix
@@ -2,8 +2,6 @@
 
 mkDerivation {
   path = "lib/libsbuf";
-  extraPaths = [
-    "sys/kern"
-  ];
+  extraPaths = [ "sys/kern" ];
   MK_TESTS = "no";
 }
diff --git a/pkgs/os-specific/bsd/freebsd/pkgs/libspl.nix b/pkgs/os-specific/bsd/freebsd/pkgs/libspl.nix
index da5445a09fcd..c444975549ad 100644
--- a/pkgs/os-specific/bsd/freebsd/pkgs/libspl.nix
+++ b/pkgs/os-specific/bsd/freebsd/pkgs/libspl.nix
@@ -3,19 +3,20 @@
 mkDerivation {
   path = "cddl/lib/libspl";
   extraPaths = [
-    "sys/contrib/openzfs/lib/libspl"
-    "sys/contrib/openzfs/include"
-
     "cddl/compat/opensolaris/include"
+    "sys/contrib/openzfs/include"
+    "sys/contrib/openzfs/lib/libspl"
     "sys/contrib/openzfs/module/icp/include"
-    "sys/modules/zfs"
+    "sys/modules/zfs/zfs_config.h"
   ];
-  # nativeBuildInputs = [
-  #   bsdSetupHook freebsdSetupHook
-  #   makeMinimal install mandoc groff
 
-  #   flex byacc file2c
-  # ];
-  # buildInputs = compatIfNeeded ++ [ libnv libsbuf ];
-  meta.license = lib.licenses.cddl;
+  # Without a prefix it will try to put object files in nonexistant directories
+  preBuild = ''
+    export MAKEOBJDIRPREFIX=$TMP/obj
+  '';
+
+  meta = with lib; {
+    platform = platforms.freebsd;
+    license = licenses.cddl;
+  };
 }
diff --git a/pkgs/os-specific/bsd/freebsd/pkgs/libutil.nix b/pkgs/os-specific/bsd/freebsd/pkgs/libutil.nix
index c420d0daf852..6df6fa740f45 100644
--- a/pkgs/os-specific/bsd/freebsd/pkgs/libutil.nix
+++ b/pkgs/os-specific/bsd/freebsd/pkgs/libutil.nix
@@ -1,7 +1,10 @@
-{ mkDerivation, lib, stdenv }:
+{
+  mkDerivation,
+  lib,
+  stdenv,
+}:
 mkDerivation {
   path = "lib/libutil";
-  extraPaths = ["lib/libc/gen"];
-  clangFixup = true;
+  extraPaths = [ "lib/libc/gen" ];
   MK_TESTS = "no";
 }
diff --git a/pkgs/os-specific/bsd/freebsd/pkgs/lorder.nix b/pkgs/os-specific/bsd/freebsd/pkgs/lorder.nix
index d1fd86ab5e46..25e7f491a1c9 100644
--- a/pkgs/os-specific/bsd/freebsd/pkgs/lorder.nix
+++ b/pkgs/os-specific/bsd/freebsd/pkgs/lorder.nix
@@ -1,8 +1,9 @@
-{ mkDerivation
-, bsdSetupHook, freebsdSetupHook
+{
+  mkDerivation,
+  bsdSetupHook,
+  freebsdSetupHook,
 }:
-
-mkDerivation rec {
+mkDerivation {
   path = "usr.bin/lorder";
   noCC = true;
   dontBuild = true;
@@ -13,8 +14,12 @@ mkDerivation rec {
     mv "lorder.1" "$man/share/man"
   '';
   nativeBuildInputs = [
-    bsdSetupHook freebsdSetupHook
+    bsdSetupHook
+    freebsdSetupHook
+  ];
+  buildInputs = [ ];
+  outputs = [
+    "out"
+    "man"
   ];
-  buildInputs = [];
-  outputs = [ "out" "man" ];
 }
diff --git a/pkgs/os-specific/bsd/freebsd/pkgs/make.nix b/pkgs/os-specific/bsd/freebsd/pkgs/make.nix
index fa1722cfec22..ecf231c30414 100644
--- a/pkgs/os-specific/bsd/freebsd/pkgs/make.nix
+++ b/pkgs/os-specific/bsd/freebsd/pkgs/make.nix
@@ -1,20 +1,25 @@
-{ lib, mkDerivation, stdenv }:
+{
+  lib,
+  mkDerivation,
+  stdenv,
+}:
 
 mkDerivation {
   path = "contrib/bmake";
   version = "9.2";
-  postPatch = ''
-    # make needs this to pick up our sys make files
-    export NIX_CFLAGS_COMPILE+=" -D_PATH_DEFSYSPATH=\"$out/share/mk\""
+  postPatch =
+    ''
+      # make needs this to pick up our sys make files
+      export NIX_CFLAGS_COMPILE+=" -D_PATH_DEFSYSPATH=\"$out/share/mk\""
 
-  '' + lib.optionalString stdenv.isDarwin ''
-    substituteInPlace $BSDSRCDIR/share/mk/bsd.sys.mk \
-      --replace '-Wl,--fatal-warnings' "" \
-      --replace '-Wl,--warn-shared-textrel' ""
-  '';
+    ''
+    + lib.optionalString stdenv.isDarwin ''
+      substituteInPlace $BSDSRCDIR/share/mk/bsd.sys.mk \
+        --replace '-Wl,--fatal-warnings' "" \
+        --replace '-Wl,--warn-shared-textrel' ""
+    '';
   postInstall = ''
     make -C $BSDSRCDIR/share/mk FILESDIR=$out/share/mk install
   '';
-  extraPaths = [ "share/mk" ]
-    ++ lib.optional (!stdenv.hostPlatform.isFreeBSD) "tools/build/mk";
+  extraPaths = [ "share/mk" ] ++ lib.optional (!stdenv.hostPlatform.isFreeBSD) "tools/build/mk";
 }
diff --git a/pkgs/os-specific/bsd/freebsd/pkgs/makeMinimal.nix b/pkgs/os-specific/bsd/freebsd/pkgs/makeMinimal.nix
index e6a8e38a4ace..069e74474852 100644
--- a/pkgs/os-specific/bsd/freebsd/pkgs/makeMinimal.nix
+++ b/pkgs/os-specific/bsd/freebsd/pkgs/makeMinimal.nix
@@ -1,25 +1,32 @@
-{ lib, stdenv, mkDerivation
-, make
-, bsdSetupHook, freebsdSetupHook
+{
+  lib,
+  stdenv,
+  mkDerivation,
+  make,
+  bsdSetupHook,
+  freebsdSetupHook,
 }:
 
-mkDerivation rec {
+mkDerivation {
   inherit (make) path;
 
-  buildInputs = [];
+  buildInputs = [ ];
   nativeBuildInputs = [
-    bsdSetupHook freebsdSetupHook
+    bsdSetupHook
+    freebsdSetupHook
   ];
 
   skipIncludesPhase = true;
 
-  makeFlags = [];
+  makeFlags = [ ];
 
   postPatch = ''
     patchShebangs configure
     ${make.postPatch}
   '';
 
+  configureFlags = [ "--with-filemon=no" ];
+
   buildPhase = ''
     runHook preBuild
 
diff --git a/pkgs/os-specific/bsd/freebsd/pkgs/mkDerivation.nix b/pkgs/os-specific/bsd/freebsd/pkgs/mkDerivation.nix
index 79428626b8ec..be195b3bc6fa 100644
--- a/pkgs/os-specific/bsd/freebsd/pkgs/mkDerivation.nix
+++ b/pkgs/os-specific/bsd/freebsd/pkgs/mkDerivation.nix
@@ -1,78 +1,164 @@
-{ lib, stdenv, stdenvNoCC
-, compatIfNeeded
-, runCommand, rsync
-, freebsd-lib
-, source
-, bsdSetupHook, freebsdSetupHook
-, makeMinimal
-, install, tsort, lorder, mandoc, groff
+{
+  lib,
+  stdenv,
+  stdenvNoCC,
+  versionData,
+  writeText,
+  patches,
+  compatIfNeeded,
+  freebsd-lib,
+  filterSource,
+  bsdSetupHook,
+  freebsdSetupHook,
+  makeMinimal,
+  install,
+  tsort,
+  lorder,
+  mandoc,
+  groff,
 }:
 
-lib.makeOverridable (attrs: let
-  stdenv' = if attrs.noCC or false then stdenvNoCC else stdenv;
-in stdenv'.mkDerivation (rec {
-  pname = "${attrs.pname or (baseNameOf attrs.path)}-freebsd";
-  inherit (freebsd-lib) version;
-  src = runCommand "${pname}-filtered-src" {
-    nativeBuildInputs = [ rsync ];
-  } ''
-    for p in ${lib.concatStringsSep " " ([ attrs.path ] ++ attrs.extraPaths or [])}; do
-      set -x
-      path="$out/$p"
-      mkdir -p "$(dirname "$path")"
-      src_path="${source}/$p"
-      if [[ -d "$src_path" ]]; then src_path+=/; fi
-      rsync --chmod="+w" -r "$src_path" "$path"
-      set +x
-    done
-  '';
+lib.makeOverridable (
+  attrs:
+  let
+    stdenv' = if attrs.noCC or false then stdenvNoCC else stdenv;
+  in
+  stdenv'.mkDerivation (
+    rec {
+      inherit (freebsd-lib) version;
+      pname = "${attrs.pname or (baseNameOf attrs.path)}";
+      src = filterSource {
+        inherit pname;
+        inherit (attrs) path;
+        extraPaths = attrs.extraPaths or [ ];
+      };
 
-  extraPaths = [ ];
+      nativeBuildInputs = [
+        bsdSetupHook
+        freebsdSetupHook
+        makeMinimal
+        install
+        tsort
+        lorder
+        mandoc
+        groff
+      ] ++ attrs.extraNativeBuildInputs or [ ];
+      buildInputs = compatIfNeeded;
 
-  nativeBuildInputs = [
-    bsdSetupHook freebsdSetupHook
-    makeMinimal
-    install tsort lorder mandoc groff #statHook
-  ];
-  buildInputs = compatIfNeeded;
+      HOST_SH = stdenv'.shell;
 
-  HOST_SH = stdenv'.shell;
+      # Since STRIP below is the flag
+      STRIPBIN = "${stdenv.cc.bintools.targetPrefix}strip";
 
-  # Since STRIP below is the flag
-  STRIPBIN = "${stdenv.cc.bintools.targetPrefix}strip";
+      makeFlags = [
+        "STRIP=-s" # flag to install, not command
+      ] ++ lib.optional (!stdenv.hostPlatform.isFreeBSD) "MK_WERROR=no";
 
-  makeFlags = [
-    "STRIP=-s" # flag to install, not command
-  ] ++ lib.optional (!stdenv.hostPlatform.isFreeBSD) "MK_WERROR=no";
+      # amd64 not x86_64 for this on unlike NetBSD
+      MACHINE_ARCH = freebsd-lib.mkBsdArch stdenv';
 
-  # amd64 not x86_64 for this on unlike NetBSD
-  MACHINE_ARCH = freebsd-lib.mkBsdArch stdenv';
+      MACHINE = freebsd-lib.mkBsdArch stdenv';
 
-  MACHINE = freebsd-lib.mkBsdArch stdenv';
+      MACHINE_CPUARCH = MACHINE_ARCH;
 
-  MACHINE_CPUARCH = MACHINE_ARCH;
+      COMPONENT_PATH = attrs.path or null;
 
-  COMPONENT_PATH = attrs.path or null;
+      strictDeps = true;
 
-  strictDeps = true;
-
-  meta = with lib; {
-    maintainers = with maintainers; [ ericson2314 ];
-    platforms = platforms.unix;
-    license = licenses.bsd2;
-  };
-} // lib.optionalAttrs stdenv'.hasCC {
-  # TODO should CC wrapper set this?
-  CPP = "${stdenv'.cc.targetPrefix}cpp";
-} // lib.optionalAttrs stdenv'.isDarwin {
-  MKRELRO = "no";
-} // lib.optionalAttrs (stdenv'.cc.isClang or false) {
-  HAVE_LLVM = lib.versions.major (lib.getVersion stdenv'.cc.cc);
-} // lib.optionalAttrs (stdenv'.cc.isGNU or false) {
-  HAVE_GCC = lib.versions.major (lib.getVersion stdenv'.cc.cc);
-} // lib.optionalAttrs (stdenv'.isx86_32) {
-  USE_SSP = "no";
-} // lib.optionalAttrs (attrs.headersOnly or false) {
-  installPhase = "includesPhase";
-  dontBuild = true;
-} // attrs))
+      meta =
+        with lib;
+        {
+          maintainers = with maintainers; [
+            rhelmot
+            artemist
+          ];
+          platforms = platforms.unix;
+          license = licenses.bsd2;
+        }
+        // attrs.meta or { };
+    }
+    // lib.optionalAttrs stdenv'.hasCC {
+      # TODO should CC wrapper set this?
+      CPP = "${stdenv'.cc.targetPrefix}cpp";
+    }
+    // lib.optionalAttrs stdenv'.isDarwin { MKRELRO = "no"; }
+    // lib.optionalAttrs (stdenv'.cc.isClang or false) {
+      HAVE_LLVM = lib.versions.major (lib.getVersion stdenv'.cc.cc);
+    }
+    // lib.optionalAttrs (stdenv'.cc.isGNU or false) {
+      HAVE_GCC = lib.versions.major (lib.getVersion stdenv'.cc.cc);
+    }
+    // lib.optionalAttrs (stdenv'.isx86_32) { USE_SSP = "no"; }
+    // lib.optionalAttrs (attrs.headersOnly or false) {
+      installPhase = "includesPhase";
+      dontBuild = true;
+    }
+    // attrs
+    // lib.optionalAttrs (stdenv'.hasCC && stdenv'.cc.isClang or false && attrs.clangFixup or true) {
+      preBuild =
+        ''
+          export NIX_CFLAGS_COMPILE="$NIX_CFLAGS_COMPILE -D_VA_LIST -D_VA_LIST_DECLARED -Dva_list=__builtin_va_list -D_SIZE_T_DECLARED -D_SIZE_T -Dsize_t=__SIZE_TYPE__ -D_WCHAR_T"
+        ''
+        + lib.optionalString (versionData.major == 13) ''
+          export NIX_LDFLAGS="$NIX_LDFLAGS --undefined-version"
+        ''
+        + (attrs.preBuild or "");
+    }
+    // {
+      patches =
+        let
+          isDir =
+            file:
+            let
+              base = baseNameOf file;
+              type = (builtins.readDir (dirOf file)).${base} or null;
+            in
+            file == /. || type == "directory";
+          consolidatePatches =
+            patches:
+            if (lib.isDerivation patches) then
+              [ patches ]
+            else if (builtins.isPath patches) then
+              (if (isDir patches) then (lib.filesystem.listFilesRecursive patches) else [ patches ])
+            else if (builtins.isList patches) then
+              (lib.flatten (builtins.map consolidatePatches patches))
+            else
+              throw "Bad patches - must be path or derivation or list thereof";
+          consolidated = consolidatePatches patches;
+          splitPatch =
+            patchFile:
+            let
+              foldFunc =
+                a: b:
+                if (lib.strings.hasPrefix "--- " b) then
+                  (a ++ [ [ b ] ])
+                else
+                  ((lib.lists.init a) ++ (lib.lists.singleton ((lib.lists.last a) ++ [ b ])));
+              partitionedPatches' = lib.lists.foldl foldFunc [ [ ] ] (
+                lib.strings.splitString "\n" (builtins.readFile patchFile)
+              );
+              partitionedPatches =
+                if (builtins.length partitionedPatches' > 1) then
+                  (lib.lists.drop 1 partitionedPatches')
+                else
+                  (throw "${patchFile} does not seem to be a unified patch (diff -u). this is required for FreeBSD.");
+              filterFunc =
+                patchLines:
+                let
+                  prefixedPath = builtins.elemAt (builtins.split " |\t" (builtins.elemAt patchLines 1)) 2;
+                  unfixedPath = lib.path.subpath.join (lib.lists.drop 1 (lib.path.subpath.components prefixedPath));
+                in
+                lib.lists.any (included: lib.path.hasPrefix (/. + ("/" + included)) (/. + ("/" + unfixedPath))) (
+                  (attrs.extraPaths or [ ]) ++ [ attrs.path ]
+                );
+              filteredLines = builtins.filter filterFunc partitionedPatches;
+              derive = patchLines: writeText "freebsd-patch" (lib.concatLines patchLines);
+              derivedPatches = builtins.map derive filteredLines;
+            in
+            derivedPatches;
+          picked = lib.lists.concatMap splitPatch consolidated;
+        in
+        picked ++ attrs.patches or [ ];
+    }
+  )
+)
diff --git a/pkgs/os-specific/bsd/freebsd/pkgs/mkcsmapper.nix b/pkgs/os-specific/bsd/freebsd/pkgs/mkcsmapper.nix
new file mode 100644
index 000000000000..60cef347446e
--- /dev/null
+++ b/pkgs/os-specific/bsd/freebsd/pkgs/mkcsmapper.nix
@@ -0,0 +1,22 @@
+{
+  stdenv,
+  mkDerivation,
+  byacc,
+  flex,
+}:
+
+mkDerivation {
+  path = "usr.bin/mkcsmapper";
+
+  extraPaths = [
+    "lib/libc/iconv"
+    "lib/libiconv_modules/mapper_std"
+  ];
+
+  BOOTSTRAPPING = !stdenv.hostPlatform.isFreeBSD;
+
+  extraNativeBuildInputs = [
+    byacc
+    flex
+  ];
+}
diff --git a/pkgs/os-specific/bsd/freebsd/pkgs/mkesdb.nix b/pkgs/os-specific/bsd/freebsd/pkgs/mkesdb.nix
new file mode 100644
index 000000000000..a503af529f27
--- /dev/null
+++ b/pkgs/os-specific/bsd/freebsd/pkgs/mkesdb.nix
@@ -0,0 +1,19 @@
+{
+  stdenv,
+  mkDerivation,
+  byacc,
+  flex,
+}:
+
+mkDerivation {
+  path = "usr.bin/mkesdb";
+
+  extraPaths = [ "lib/libc/iconv" ];
+
+  BOOTSTRAPPING = !stdenv.hostPlatform.isFreeBSD;
+
+  extraNativeBuildInputs = [
+    byacc
+    flex
+  ];
+}
diff --git a/pkgs/os-specific/bsd/freebsd/pkgs/mknod.nix b/pkgs/os-specific/bsd/freebsd/pkgs/mknod.nix
index 56dff7d606bd..bf7d8b7db689 100644
--- a/pkgs/os-specific/bsd/freebsd/pkgs/mknod.nix
+++ b/pkgs/os-specific/bsd/freebsd/pkgs/mknod.nix
@@ -1,5 +1,3 @@
 { mkDerivation }:
 
-mkDerivation {
-  path = "sbin/mknod";
-}
+mkDerivation { path = "sbin/mknod"; }
diff --git a/pkgs/os-specific/bsd/freebsd/pkgs/mtree.nix b/pkgs/os-specific/bsd/freebsd/pkgs/mtree.nix
index 23a4672069e6..bbcaff3a1c6a 100644
--- a/pkgs/os-specific/bsd/freebsd/pkgs/mtree.nix
+++ b/pkgs/os-specific/bsd/freebsd/pkgs/mtree.nix
@@ -1,6 +1,39 @@
-{ mkDerivation, mknod }:
+{
+  lib,
+  stdenv,
+  mkDerivation,
+  compatIfNeeded,
+  compatIsNeeded,
+  libmd,
+  libnetbsd,
+  libutil,
+}:
 
 mkDerivation {
   path = "contrib/mtree";
-  extraPaths = [ mknod.path ];
+  extraPaths = [ "contrib/mknod" ];
+  buildInputs =
+    compatIfNeeded
+    ++ [
+      libmd
+      libnetbsd
+    ]
+    ++ lib.optional (stdenv.isFreeBSD) libutil;
+
+  postPatch = ''
+    ln -s $BSDSRCDIR/contrib/mknod/*.c $BSDSRCDIR/contrib/mknod/*.h $BSDSRCDIR/contrib/mtree
+  '';
+
+  preBuild = ''
+    export NIX_LDFLAGS="$NIX_LDFLAGS ${
+      toString (
+        [
+          "-lmd"
+          "-lnetbsd"
+        ]
+        ++ lib.optional compatIsNeeded "-legacy"
+        ++ lib.optional stdenv.isFreeBSD "-lutil"
+      )
+    }"
+  '';
 }
diff --git a/pkgs/os-specific/bsd/freebsd/pkgs/rpcgen/package.nix b/pkgs/os-specific/bsd/freebsd/pkgs/rpcgen/package.nix
index 56141255af5e..e187cacbb0d0 100644
--- a/pkgs/os-specific/bsd/freebsd/pkgs/rpcgen/package.nix
+++ b/pkgs/os-specific/bsd/freebsd/pkgs/rpcgen/package.nix
@@ -1,6 +1,11 @@
-{ lib, mkDerivation, stdenv }:
+{
+  lib,
+  mkDerivation,
+  stdenv,
+  patchesRoot,
+}:
 
-mkDerivation rec {
+mkDerivation {
   path = "usr.bin/rpcgen";
   patches = lib.optionals (stdenv.hostPlatform.libc == "glibc") [
     # `WUNTRACED` is defined privately `bits/waitflags.h` in glibc.
@@ -12,7 +17,7 @@ mkDerivation rec {
     # those headers ends up included other headers...which ends up
     # including the other one, this means by the first time we reach
     # `#include `<bits/waitflags.h>`, both `_SYS_WAIT_H` and
-    # `_STDLIB_H` are already defined! Thus, we never ned up including
+    # `_STDLIB_H` are already defined! Thus, we never end up including
     # `<bits/waitflags.h>` and defining `WUNTRACED`.
     #
     # This hacks around this by manually including `WUNTRACED` until
diff --git a/pkgs/os-specific/bsd/freebsd/pkgs/sed.nix b/pkgs/os-specific/bsd/freebsd/pkgs/sed.nix
index 07b55afe133f..ec5bfee17d2c 100644
--- a/pkgs/os-specific/bsd/freebsd/pkgs/sed.nix
+++ b/pkgs/os-specific/bsd/freebsd/pkgs/sed.nix
@@ -1,7 +1,6 @@
-{ mkDerivation, source }:
+{ mkDerivation }:
 
 mkDerivation {
   path = "usr.bin/sed";
-  TESTSRC = "${source}/contrib/netbsd-tests";
   MK_TESTS = "no";
 }
diff --git a/pkgs/os-specific/bsd/freebsd/pkgs/source.nix b/pkgs/os-specific/bsd/freebsd/pkgs/source.nix
index 5e31f900e821..c14d26559047 100644
--- a/pkgs/os-specific/bsd/freebsd/pkgs/source.nix
+++ b/pkgs/os-specific/bsd/freebsd/pkgs/source.nix
@@ -4,7 +4,6 @@
 # If you want you could fetchgit from "https://git.FreeBSD.org/src.git" instead.
 # The update script still pulls directly from git.freebsd.org
 fetchFromGitHub {
-  name = "src"; # Want to rename this next rebuild
   owner = "freebsd";
   repo = "freebsd-src";
   inherit (sourceData) rev hash;
diff --git a/pkgs/os-specific/bsd/freebsd/pkgs/stat.nix b/pkgs/os-specific/bsd/freebsd/pkgs/stat.nix
index c730f00869f8..a801ab895441 100644
--- a/pkgs/os-specific/bsd/freebsd/pkgs/stat.nix
+++ b/pkgs/os-specific/bsd/freebsd/pkgs/stat.nix
@@ -1,13 +1,22 @@
-{ mkDerivation
-, bsdSetupHook, freebsdSetupHook
-, makeMinimal, install, mandoc, groff
+{
+  mkDerivation,
+  bsdSetupHook,
+  freebsdSetupHook,
+  makeMinimal,
+  install,
+  mandoc,
+  groff,
 }:
 
 # Don't add this to nativeBuildInputs directly.  Use statHook instead.
 mkDerivation {
   path = "usr.bin/stat";
   nativeBuildInputs = [
-    bsdSetupHook freebsdSetupHook
-    makeMinimal install mandoc groff
+    bsdSetupHook
+    freebsdSetupHook
+    makeMinimal
+    install
+    mandoc
+    groff
   ];
 }
diff --git a/pkgs/os-specific/bsd/freebsd/pkgs/statHook.nix b/pkgs/os-specific/bsd/freebsd/pkgs/statHook.nix
index 07129938b095..4609c004e6f5 100644
--- a/pkgs/os-specific/bsd/freebsd/pkgs/statHook.nix
+++ b/pkgs/os-specific/bsd/freebsd/pkgs/statHook.nix
@@ -1,12 +1,16 @@
-{ makeSetupHook, writeText, stat }:
+{
+  makeSetupHook,
+  writeText,
+  stat,
+}:
 
 # stat isn't in POSIX, and NetBSD stat supports a completely
 # different range of flags than GNU stat, so including it in PATH
 # breaks stdenv.  Work around that with a hook that will point
 # NetBSD's build system and NetBSD stat without including it in
 # PATH.
-makeSetupHook {
-  name = "netbsd-stat-hook";
-} (writeText "netbsd-stat-hook-impl" ''
-  makeFlagsArray+=(TOOL_STAT=${stat}/bin/stat)
-'')
+makeSetupHook { name = "netbsd-stat-hook"; } (
+  writeText "netbsd-stat-hook-impl" ''
+    makeFlagsArray+=(TOOL_STAT=${stat}/bin/stat)
+  ''
+)
diff --git a/pkgs/os-specific/bsd/freebsd/pkgs/sys/package.nix b/pkgs/os-specific/bsd/freebsd/pkgs/sys/package.nix
index 81cf4114e873..86f847cbd45c 100644
--- a/pkgs/os-specific/bsd/freebsd/pkgs/sys/package.nix
+++ b/pkgs/os-specific/bsd/freebsd/pkgs/sys/package.nix
@@ -1,67 +1,85 @@
-{ lib, stdenv, mkDerivation, freebsd-lib
-, buildPackages
-, bsdSetupHook, freebsdSetupHook
-, makeMinimal, install, mandoc, groff
-, config, rpcgen, file2c, gawk, uudecode, xargs-j #, ctfconvert
+{
+  stdenv,
+  mkDerivation,
+  freebsd-lib,
+  buildPackages,
+  bsdSetupHook,
+  freebsdSetupHook,
+  makeMinimal,
+  install,
+  mandoc,
+  groff,
+  config,
+  rpcgen,
+  file2c,
+  gawk,
+  uudecode,
+  xargs-j,
 }:
 
-mkDerivation (let
-  cfg = "MINIMAL";
-in rec {
-  path = "sys";
-
-  nativeBuildInputs = [
-    bsdSetupHook freebsdSetupHook
-    makeMinimal install mandoc groff
-
-    config rpcgen file2c gawk uudecode xargs-j
-    #ctfconvert
-  ];
-
-  patches = [
-    ./sys-gnu-date.patch
-    ./sys-no-explicit-intrinsics-dep.patch
-  ];
-
-  # --dynamic-linker /red/herring is used when building the kernel.
-  NIX_ENFORCE_PURITY = 0;
-
-  AWK = "${buildPackages.gawk}/bin/awk";
-
-  CWARNEXTRA = "-Wno-error=shift-negative-value -Wno-address-of-packed-member";
-
-  MK_CTF = "no";
-
-  KODIR = "${builtins.placeholder "out"}/kernel";
-  KMODDIR = "${builtins.placeholder "out"}/kernel";
-  DTBDIR = "${builtins.placeholder"out"}/dbt";
-
-  KERN_DEBUGDIR = "${builtins.placeholder "out"}/debug";
-  KERN_DEBUGDIR_KODIR = "${KERN_DEBUGDIR}/kernel";
-  KERN_DEBUGDIR_KMODDIR = "${KERN_DEBUGDIR}/kernel";
-
-  skipIncludesPhase = true;
-
-  configurePhase = ''
-    runHook preConfigure
-
-    for f in conf/kmod.mk contrib/dev/acpica/acpica_prep.sh; do
-      substituteInPlace "$f" --replace 'xargs -J' 'xargs-j '
-    done
-
-    for f in conf/*.mk; do
-      substituteInPlace "$f" --replace 'KERN_DEBUGDIR}''${' 'KERN_DEBUGDIR_'
-    done
-
-    cd ${freebsd-lib.mkBsdArch stdenv}/conf
-    sed -i ${cfg} \
-      -e 's/WITH_CTF=1/WITH_CTF=0/' \
-      -e '/KDTRACE/d'
-    config ${cfg}
-
-    runHook postConfigure
-  '';
-  preBuild = ''
-    cd ../compile/${cfg}
-  '';
-})
+mkDerivation (
+  let
+    cfg = "MINIMAL";
+  in
+  rec {
+    path = "sys";
+
+    nativeBuildInputs = [
+      bsdSetupHook
+      freebsdSetupHook
+      makeMinimal
+      install
+      mandoc
+      groff
+
+      config
+      rpcgen
+      file2c
+      gawk
+      uudecode
+      xargs-j
+    ];
+
+    # --dynamic-linker /red/herring is used when building the kernel.
+    NIX_ENFORCE_PURITY = 0;
+
+    AWK = "${buildPackages.gawk}/bin/awk";
+
+    CWARNEXTRA = "-Wno-error=shift-negative-value -Wno-address-of-packed-member";
+
+    MK_CTF = "no";
+
+    KODIR = "${builtins.placeholder "out"}/kernel";
+    KMODDIR = "${builtins.placeholder "out"}/kernel";
+    DTBDIR = "${builtins.placeholder "out"}/dbt";
+
+    KERN_DEBUGDIR = "${builtins.placeholder "out"}/debug";
+    KERN_DEBUGDIR_KODIR = "${KERN_DEBUGDIR}/kernel";
+    KERN_DEBUGDIR_KMODDIR = "${KERN_DEBUGDIR}/kernel";
+
+    skipIncludesPhase = true;
+
+    configurePhase = ''
+      runHook preConfigure
+
+      for f in conf/kmod.mk contrib/dev/acpica/acpica_prep.sh; do
+        substituteInPlace "$f" --replace 'xargs -J' 'xargs-j '
+      done
+
+      for f in conf/*.mk; do
+        substituteInPlace "$f" --replace 'KERN_DEBUGDIR}''${' 'KERN_DEBUGDIR_'
+      done
+
+      cd ${freebsd-lib.mkBsdArch stdenv}/conf
+      sed -i ${cfg} \
+        -e 's/WITH_CTF=1/WITH_CTF=0/' \
+        -e '/KDTRACE/d'
+      config ${cfg}
+
+      runHook postConfigure
+    '';
+    preBuild = ''
+      cd ../compile/${cfg}
+    '';
+  }
+)
diff --git a/pkgs/os-specific/bsd/freebsd/pkgs/tsort.nix b/pkgs/os-specific/bsd/freebsd/pkgs/tsort.nix
index cdc1b27ce8fe..04a45ff980cb 100644
--- a/pkgs/os-specific/bsd/freebsd/pkgs/tsort.nix
+++ b/pkgs/os-specific/bsd/freebsd/pkgs/tsort.nix
@@ -1,12 +1,28 @@
-{ mkDerivation
-, bsdSetupHook, freebsdSetupHook
-, makeMinimal, install, mandoc, groff
+{
+  lib,
+  mkDerivation,
+  bsdSetupHook,
+  freebsdSetupHook,
+  makeMinimal,
+  install,
+  mandoc,
+  groff,
 }:
 
 mkDerivation {
   path = "usr.bin/tsort";
-  nativeBuildInputs =  [
-    bsdSetupHook freebsdSetupHook
-    makeMinimal install mandoc groff
+  extraPaths = [ ];
+  outputs = [ "out" ];
+  MK_TESTS = "no";
+  makeFlags = [
+    "STRIP=-s" # flag to install, not command
+  ];
+  nativeBuildInputs = [
+    bsdSetupHook
+    freebsdSetupHook
+    makeMinimal
+    install
+    mandoc
+    groff
   ];
 }
diff --git a/pkgs/os-specific/bsd/freebsd/update.py b/pkgs/os-specific/bsd/freebsd/update.py
index cd20f67148fa..533a871a4b04 100755
--- a/pkgs/os-specific/bsd/freebsd/update.py
+++ b/pkgs/os-specific/bsd/freebsd/update.py
@@ -16,6 +16,7 @@ import typing
 import urllib.request
 
 _QUERY_VERSION_PATTERN = re.compile('^([A-Z]+)="(.+)"$')
+_RELEASE_PATCH_PATTERN = re.compile('^RELEASE-p([0-9]+)$')
 BASE_DIR = os.path.dirname(os.path.abspath(__file__))
 MIN_VERSION = packaging.version.Version("13.0.0")
 MAIN_BRANCH = "main"
@@ -60,7 +61,16 @@ def query_version(repo: git.Repo) -> dict[str, typing.Any]:
             continue
         fields[m[1].lower()] = m[2]
 
-    fields["major"] = packaging.version.parse(fields["revision"]).major
+    parsed = packaging.version.parse(fields["revision"])
+    fields["major"] = parsed.major
+    fields["minor"] = parsed.minor
+
+    # Extract the patch number from `RELAESE-p<patch>`, which is used
+    # e.g. in the "releng" branches.
+    m = _RELEASE_PATCH_PATTERN.match(fields["branch"])
+    if m is not None:
+        fields["patch"] = m[1]
+
     return fields
 
 
@@ -95,7 +105,7 @@ def handle_commit(
         "ref": ref_name,
         "refType": ref_type,
         "supported": ref_name in supported_refs,
-        "version": query_version(repo),
+        "version": version,
     }
 
 
@@ -151,6 +161,14 @@ def main() -> None:
         result = handle_commit(
             repo, tag.commit, tag.name, "tag", supported_refs, old_versions
         )
+
+        # Hack in the patch version from parsing the tag, if we didn't
+        # get one from the "branch" field (from newvers). This is
+        # probably 0.
+        versionObj = result["version"]
+        if "patch" not in versionObj:
+            versionObj["patch"] = version.micro
+
         versions[tag.name] = result
 
     for branch in repo.remote("origin").refs:
diff --git a/pkgs/os-specific/bsd/freebsd/versions.json b/pkgs/os-specific/bsd/freebsd/versions.json
index 736c4c3a3e3c..3f781b4eeaf2 100644
--- a/pkgs/os-specific/bsd/freebsd/versions.json
+++ b/pkgs/os-specific/bsd/freebsd/versions.json
@@ -1,14 +1,15 @@
 {
   "main": {
-    "hash": "sha256-C5ucT9BK/eK8a9HNSDDi8S1uhpPmiqV22XEooxAqbPw=",
+    "hash": "sha256-3aUsD2yRqVvb12z2XPmhE5/u4d9bqyD2ZHH3xNmwYwU=",
     "ref": "main",
     "refType": "branch",
-    "rev": "125c4560bc70971b950d035cfcd2255b89984011",
+    "rev": "aa34b1d20e44141749ffdecf16908fc1e5db4db6",
     "supported": false,
     "version": {
       "branch": "CURRENT",
       "major": 15,
-      "reldate": "1500017",
+      "minor": 0,
+      "reldate": "1500018",
       "release": "15.0-CURRENT",
       "revision": "15.0",
       "type": "FreeBSD",
@@ -24,6 +25,8 @@
     "version": {
       "branch": "RELEASE",
       "major": 13,
+      "minor": 0,
+      "patch": 0,
       "reldate": "1300139",
       "release": "13.0-RELEASE",
       "revision": "13.0",
@@ -40,6 +43,8 @@
     "version": {
       "branch": "RELEASE",
       "major": 13,
+      "minor": 1,
+      "patch": 0,
       "reldate": "1301000",
       "release": "13.1-RELEASE",
       "revision": "13.1",
@@ -56,6 +61,8 @@
     "version": {
       "branch": "RELEASE",
       "major": 13,
+      "minor": 2,
+      "patch": 0,
       "reldate": "1302001",
       "release": "13.2-RELEASE",
       "revision": "13.2",
@@ -72,6 +79,8 @@
     "version": {
       "branch": "RELEASE",
       "major": 13,
+      "minor": 3,
+      "patch": 0,
       "reldate": "1303001",
       "release": "13.3-RELEASE",
       "revision": "13.3",
@@ -88,6 +97,8 @@
     "version": {
       "branch": "RELEASE",
       "major": 14,
+      "minor": 0,
+      "patch": 0,
       "reldate": "1400097",
       "release": "14.0-RELEASE",
       "revision": "14.0",
@@ -104,6 +115,8 @@
     "version": {
       "branch": "RELEASE-p13",
       "major": 13,
+      "minor": 0,
+      "patch": "13",
       "reldate": "1300139",
       "release": "13.0-RELEASE-p13",
       "revision": "13.0",
@@ -120,6 +133,8 @@
     "version": {
       "branch": "RELEASE-p9",
       "major": 13,
+      "minor": 1,
+      "patch": "9",
       "reldate": "1301000",
       "release": "13.1-RELEASE-p9",
       "revision": "13.1",
@@ -136,6 +151,8 @@
     "version": {
       "branch": "RELEASE-p11",
       "major": 13,
+      "minor": 2,
+      "patch": "11",
       "reldate": "1302001",
       "release": "13.2-RELEASE-p11",
       "revision": "13.2",
@@ -144,19 +161,21 @@
     }
   },
   "releng/13.3": {
-    "hash": "sha256-huzUiMZHfyK/mgLD3hW+DaSGgAaTUIuM51xDp+IE3qE=",
+    "hash": "sha256-g3i9q9XihesdfQxGy3oC7IMGtbWaLNwFlNzbdvS/4ng=",
     "ref": "releng/13.3",
     "refType": "branch",
-    "rev": "7a0d63c9093222938f26cd63ff742e555168de77",
+    "rev": "be4f1894ef399f421bab451e8cf8557e27e5a948",
     "supported": true,
     "version": {
-      "branch": "RELEASE-p1",
+      "branch": "RELEASE-p2",
       "major": 13,
+      "minor": 3,
+      "patch": "2",
       "reldate": "1303001",
-      "release": "13.3-RELEASE-p1",
+      "release": "13.3-RELEASE-p2",
       "revision": "13.3",
       "type": "FreeBSD",
-      "version": "FreeBSD 13.3-RELEASE-p1"
+      "version": "FreeBSD 13.3-RELEASE-p2"
     }
   },
   "releng/14.0": {
@@ -168,6 +187,8 @@
     "version": {
       "branch": "RELEASE-p6",
       "major": 14,
+      "minor": 0,
+      "patch": "6",
       "reldate": "1400097",
       "release": "14.0-RELEASE-p6",
       "revision": "14.0",
@@ -176,15 +197,16 @@
     }
   },
   "stable/13": {
-    "hash": "sha256-XateLKKs2A/HCP9Lx/nBm1cybB3otrbeXQvyCL40S0M=",
+    "hash": "sha256-ItC8haDdxMSZt1thpCrn8p0xxvs7Uqh/uNo1OwMalj8=",
     "ref": "stable/13",
     "refType": "branch",
-    "rev": "e0a58ef24a3baf5ed4cc09a798b9fe2d85408052",
+    "rev": "825cb4c850f2b97cfd1b24ed421d7938bf37eee7",
     "supported": true,
     "version": {
       "branch": "STABLE",
       "major": 13,
-      "reldate": "1303502",
+      "minor": 3,
+      "reldate": "1303503",
       "release": "13.3-STABLE",
       "revision": "13.3",
       "type": "FreeBSD",
@@ -192,19 +214,20 @@
     }
   },
   "stable/14": {
-    "hash": "sha256-tIKnK/SYBDk9UnE5AfhjeDpqHnzspYbor0678ye/mrs=",
+    "hash": "sha256-iAj75IXJi4Oium6BqFvsyQipDP2crBZIGg0Dac8Zf1g=",
     "ref": "stable/14",
     "refType": "branch",
-    "rev": "ab872ab0bf195e872ed8d955aab3b2a537a230cd",
+    "rev": "a3b8266f5420601e231bc08c5402d9a4929fbdc0",
     "supported": true,
     "version": {
-      "branch": "STABLE",
+      "branch": "PRERELEASE",
       "major": 14,
-      "reldate": "1400510",
-      "release": "14.0-STABLE",
-      "revision": "14.0",
+      "minor": 1,
+      "reldate": "1400511",
+      "release": "14.1-PRERELEASE",
+      "revision": "14.1",
       "type": "FreeBSD",
-      "version": "FreeBSD 14.0-STABLE"
+      "version": "FreeBSD 14.1-PRERELEASE"
     }
   }
 }
diff --git a/pkgs/os-specific/bsd/netbsd/default.nix b/pkgs/os-specific/bsd/netbsd/default.nix
index fd5e24aa7102..e0d03108960c 100644
--- a/pkgs/os-specific/bsd/netbsd/default.nix
+++ b/pkgs/os-specific/bsd/netbsd/default.nix
@@ -1,137 +1,187 @@
-{ stdenv, lib, stdenvNoCC
-, makeScopeWithSplicing', generateSplicesForMkScope
-, buildPackages
-, fetchcvs
+{
+  stdenv,
+  lib,
+  stdenvNoCC,
+  makeScopeWithSplicing',
+  generateSplicesForMkScope,
+  buildPackages,
+  fetchcvs,
 }:
 
 makeScopeWithSplicing' {
   otherSplices = generateSplicesForMkScope "netbsd";
-  f = (self: lib.packagesFromDirectoryRecursive {
-    callPackage = self.callPackage;
-    directory = ./pkgs;
-  } // (let inherit (self) mkDerivation; in {
-
-    fetchNetBSD = path: version: sha256: fetchcvs {
-      cvsRoot = ":pserver:anoncvs@anoncvs.NetBSD.org:/cvsroot";
-      module = "src/${path}";
-      inherit sha256;
-      tag = "netbsd-${lib.replaceStrings ["."] ["-"] version}-RELEASE";
-    };
-
-    defaultMakeFlags = [
-      "MKSOFTFLOAT=${if stdenv.hostPlatform.gcc.float or (stdenv.hostPlatform.parsed.abi.float or "hard") == "soft"
-        then "yes"
-        else "no"}"
-    ];
-
-    compatIfNeeded = lib.optional (!stdenvNoCC.hostPlatform.isNetBSD) self.compat;
-
-    # The manual callPackages below should in principle be unnecessary because
-    # they're just selecting arguments that would be selected anyway. However,
-    # if we don't perform these manual calls, we get infinite recursion issues
-    # because of the splices.
-
-    mkDerivation = self.callPackage ./pkgs/mkDerivation.nix {
-      inherit stdenv stdenvNoCC;
-      inherit (buildPackages.netbsd) netbsdSetupHook makeMinimal install tsort lorder;
-      inherit (buildPackages) mandoc;
-      inherit (buildPackages.buildPackages) rsync;
-
-    };
-
-    makeMinimal = self.callPackage ./pkgs/makeMinimal.nix {
-      inherit (self) make;
-    };
-
-    compat = self.callPackage ./pkgs/compat/package.nix {
-      inherit (buildPackages) coreutils;
-      inherit (buildPackages.darwin) cctools-port;
-      inherit (buildPackages.buildPackages) rsync;
-      inherit (buildPackages.netbsd) makeMinimal;
-      inherit (self) install include libc libutil;
-    };
-
-    install = self.callPackage ./pkgs/install/package.nix {
-      inherit (self) fts mtree make compatIfNeeded;
-      inherit (buildPackages.buildPackages) rsync;
-      inherit (buildPackages.netbsd) makeMinimal;
-    };
-
-    # See note in pkgs/stat/package.nix
-    stat = self.callPackage ./pkgs/stat/package.nix {
-      inherit (buildPackages.netbsd) makeMinimal install;
-      inherit (buildPackages.buildPackages) rsync;
-    };
-
-    # See note in pkgs/stat/hook.nix
-    statHook = self.callPackage ./pkgs/stat/hook.nix {
-      inherit (self) stat;
-    };
-
-    tsort = self.callPackage ./pkgs/tsort.nix {
-      inherit (buildPackages.netbsd) makeMinimal install;
-      inherit (buildPackages.buildPackages) rsync;
-    };
-
-    lorder = self.callPackage ./pkgs/lorder.nix {
-      inherit (buildPackages.netbsd) makeMinimal install;
-      inherit (buildPackages.buildPackages) rsync;
-    };
-
-    config = self.callPackage ./pkgs/config.nix {
-      inherit (buildPackages.netbsd) makeMinimal install;
-      inherit (buildPackages.buildPackages) rsync;
-      inherit (self) cksum;
-    };
-
-    include = self.callPackage ./pkgs/include.nix {
-      inherit (buildPackages.netbsd)
-        makeMinimal install nbperf rpcgen;
-      inherit (buildPackages) stdenv;
-      inherit (buildPackages.buildPackages) rsync;
-    };
-
-    sys-headers = self.callPackage ./pkgs/sys/headers.nix {
-      inherit (buildPackages.netbsd)
-        makeMinimal install tsort lorder statHook uudecode config genassym;
-      inherit (buildPackages.buildPackages) rsync;
-    };
-
-    libutil = self.callPackage ./pkgs/libutil.nix {
-      inherit (self) libc sys;
-    };
-
-    libpthread-headers = self.callPackage ./pkgs/libpthread/headers.nix { };
-
-    csu = self.callPackage ./pkgs/csu.nix {
-      inherit (self) headers sys ld_elf_so;
-      inherit (buildPackages.netbsd)
-        netbsdSetupHook
-        makeMinimal
-        install
-        genassym gencat lorder tsort statHook;
-      inherit (buildPackages.buildPackages) rsync;
-    };
-
-    _mainLibcExtraPaths = with self; [
-        common i18n_module.src sys.src
-        ld_elf_so.src libpthread.src libm.src libresolv.src
-        librpcsvc.src libutil.src librt.src libcrypt.src
-    ];
-
-    libc = self.callPackage ./pkgs/libc.nix {
-      inherit (self) headers csu librt;
-      inherit (buildPackages.netbsd)
-        netbsdSetupHook
-        makeMinimal
-        install
-        genassym gencat lorder tsort statHook rpcgen;
-      inherit (buildPackages.buildPackages) rsync;
-    };
-
-    mtree = self.callPackage ./pkgs/mtree.nix {
-      inherit (self) mknod;
-    };
-
-  }));
+  f = (
+    self:
+    lib.packagesFromDirectoryRecursive {
+      callPackage = self.callPackage;
+      directory = ./pkgs;
+    }
+    // {
+
+      fetchNetBSD =
+        path: version: sha256:
+        fetchcvs {
+          cvsRoot = ":pserver:anoncvs@anoncvs.NetBSD.org:/cvsroot";
+          module = "src/${path}";
+          inherit sha256;
+          tag = "netbsd-${lib.replaceStrings [ "." ] [ "-" ] version}-RELEASE";
+        };
+
+      defaultMakeFlags = [
+        "MKSOFTFLOAT=${
+          if stdenv.hostPlatform.gcc.float or (stdenv.hostPlatform.parsed.abi.float or "hard") == "soft" then
+            "yes"
+          else
+            "no"
+        }"
+      ];
+
+      compatIfNeeded = lib.optional (!stdenvNoCC.hostPlatform.isNetBSD) self.compat;
+
+      # The manual callPackages below should in principle be unnecessary because
+      # they're just selecting arguments that would be selected anyway. However,
+      # if we don't perform these manual calls, we get infinite recursion issues
+      # because of the splices.
+
+      mkDerivation = self.callPackage ./pkgs/mkDerivation.nix {
+        inherit stdenv stdenvNoCC;
+        inherit (buildPackages.netbsd)
+          netbsdSetupHook
+          makeMinimal
+          install
+          tsort
+          lorder
+          ;
+        inherit (buildPackages) mandoc;
+        inherit (buildPackages.buildPackages) rsync;
+      };
+
+      makeMinimal = self.callPackage ./pkgs/makeMinimal.nix { inherit (self) make; };
+
+      compat = self.callPackage ./pkgs/compat/package.nix {
+        inherit (buildPackages) coreutils;
+        inherit (buildPackages.darwin) cctools-port;
+        inherit (buildPackages.buildPackages) rsync;
+        inherit (buildPackages.netbsd) makeMinimal;
+        inherit (self)
+          install
+          include
+          libc
+          libutil
+          ;
+      };
+
+      install = self.callPackage ./pkgs/install/package.nix {
+        inherit (self)
+          fts
+          mtree
+          make
+          compatIfNeeded
+          ;
+        inherit (buildPackages.buildPackages) rsync;
+        inherit (buildPackages.netbsd) makeMinimal;
+      };
+
+      # See note in pkgs/stat/package.nix
+      stat = self.callPackage ./pkgs/stat/package.nix {
+        inherit (buildPackages.netbsd) makeMinimal install;
+        inherit (buildPackages.buildPackages) rsync;
+      };
+
+      # See note in pkgs/stat/hook.nix
+      statHook = self.callPackage ./pkgs/stat/hook.nix { inherit (self) stat; };
+
+      tsort = self.callPackage ./pkgs/tsort.nix {
+        inherit (buildPackages.netbsd) makeMinimal install;
+        inherit (buildPackages.buildPackages) rsync;
+      };
+
+      lorder = self.callPackage ./pkgs/lorder.nix {
+        inherit (buildPackages.netbsd) makeMinimal install;
+        inherit (buildPackages.buildPackages) rsync;
+      };
+
+      config = self.callPackage ./pkgs/config.nix {
+        inherit (buildPackages.netbsd) makeMinimal install;
+        inherit (buildPackages.buildPackages) rsync;
+        inherit (self) cksum;
+      };
+
+      include = self.callPackage ./pkgs/include.nix {
+        inherit (buildPackages.netbsd)
+          makeMinimal
+          install
+          nbperf
+          rpcgen
+          ;
+        inherit (buildPackages) stdenv;
+        inherit (buildPackages.buildPackages) rsync;
+      };
+
+      sys-headers = self.callPackage ./pkgs/sys/headers.nix {
+        inherit (buildPackages.netbsd)
+          makeMinimal
+          install
+          tsort
+          lorder
+          statHook
+          uudecode
+          config
+          genassym
+          ;
+        inherit (buildPackages.buildPackages) rsync;
+      };
+
+      libutil = self.callPackage ./pkgs/libutil.nix { inherit (self) libc sys; };
+
+      libpthread-headers = self.callPackage ./pkgs/libpthread/headers.nix { };
+
+      csu = self.callPackage ./pkgs/csu.nix {
+        inherit (self) headers sys ld_elf_so;
+        inherit (buildPackages.netbsd)
+          netbsdSetupHook
+          makeMinimal
+          install
+          genassym
+          gencat
+          lorder
+          tsort
+          statHook
+          ;
+        inherit (buildPackages.buildPackages) rsync;
+      };
+
+      _mainLibcExtraPaths = with self; [
+        common
+        i18n_module.src
+        sys.src
+        ld_elf_so.src
+        libpthread.src
+        libm.src
+        libresolv.src
+        librpcsvc.src
+        libutil.src
+        librt.src
+        libcrypt.src
+      ];
+
+      libc = self.callPackage ./pkgs/libc.nix {
+        inherit (self) headers csu librt;
+        inherit (buildPackages.netbsd)
+          netbsdSetupHook
+          makeMinimal
+          install
+          genassym
+          gencat
+          lorder
+          tsort
+          statHook
+          rpcgen
+          ;
+        inherit (buildPackages.buildPackages) rsync;
+      };
+
+      mtree = self.callPackage ./pkgs/mtree.nix { inherit (self) mknod; };
+    }
+  );
 }
diff --git a/pkgs/os-specific/bsd/netbsd/pkgs/compat/package.nix b/pkgs/os-specific/bsd/netbsd/pkgs/compat/package.nix
index a1336ad52f6d..4c149e95c1ae 100644
--- a/pkgs/os-specific/bsd/netbsd/pkgs/compat/package.nix
+++ b/pkgs/os-specific/bsd/netbsd/pkgs/compat/package.nix
@@ -1,21 +1,29 @@
-{ lib, mkDerivation, stdenv
-, zlib
-, defaultMakeFlags
-, coreutils
-, cctools-port
-, include, libc, libutil
-, install
-, bsdSetupHook, netbsdSetupHook
-, makeMinimal
-, rsync
-, fetchNetBSD
-, _mainLibcExtraPaths
+{
+  lib,
+  mkDerivation,
+  stdenv,
+  zlib,
+  defaultMakeFlags,
+  coreutils,
+  cctools-port,
+  include,
+  libc,
+  libutil,
+  install,
+  bsdSetupHook,
+  netbsdSetupHook,
+  makeMinimal,
+  rsync,
+  fetchNetBSD,
+  _mainLibcExtraPaths,
 }:
 
-mkDerivation (let
+mkDerivation (
+  let
     version = "9.2";
     commonDeps = [ zlib ];
-  in {
+  in
+  {
     path = "tools/compat";
     sha256 = "1vsxg7136nlhc72vpa664vs22874xh7ila95nkmsd8crn3z3cyn0";
     inherit version;
@@ -29,19 +37,23 @@ mkDerivation (let
       make include/.stamp configure nbtool_config.h.in defs.mk.in
     '';
 
-    configurePlatforms = [ "build" "host" ];
-    configureFlags = [
-      "--cache-file=config.cache"
-    ] ++ lib.optionals stdenv.hostPlatform.isMusl [
-      # We include this header in our musl package only for legacy
-      # compatibility, and compat works fine without it (and having it
-      # know about sys/cdefs.h breaks packages like glib when built
-      # statically).
-      "ac_cv_header_sys_cdefs_h=no"
+    configurePlatforms = [
+      "build"
+      "host"
     ];
+    configureFlags =
+      [ "--cache-file=config.cache" ]
+      ++ lib.optionals stdenv.hostPlatform.isMusl [
+        # We include this header in our musl package only for legacy
+        # compatibility, and compat works fine without it (and having it
+        # know about sys/cdefs.h breaks packages like glib when built
+        # statically).
+        "ac_cv_header_sys_cdefs_h=no"
+      ];
 
     nativeBuildInputs = commonDeps ++ [
-      bsdSetupHook netbsdSetupHook
+      bsdSetupHook
+      netbsdSetupHook
       makeMinimal
       rsync
     ];
@@ -50,22 +62,27 @@ mkDerivation (let
 
     # temporarily use gnuinstall for bootstrapping
     # bsdinstall will be built later
-    makeFlags = defaultMakeFlags ++ [
-      "INSTALL=${coreutils}/bin/install"
-      "DATADIR=$(out)/share"
-      # Can't sort object files yet
-      "LORDER=echo"
-      "TSORT=cat"
-      # Can't process man pages yet
-      "MKSHARE=no"
-    ] ++ lib.optionals stdenv.hostPlatform.isDarwin [
-      # GNU objcopy produces broken .a libs which won't link into dependers.
-      # Makefiles only invoke `$OBJCOPY -x/-X`, so cctools strip works here.
-      "OBJCOPY=${cctools-port}/bin/strip"
-    ];
+    makeFlags =
+      defaultMakeFlags
+      ++ [
+        "INSTALL=${coreutils}/bin/install"
+        "DATADIR=$(out)/share"
+        # Can't sort object files yet
+        "LORDER=echo"
+        "TSORT=cat"
+        # Can't process man pages yet
+        "MKSHARE=no"
+      ]
+      ++ lib.optionals stdenv.hostPlatform.isDarwin [
+        # GNU objcopy produces broken .a libs which won't link into dependers.
+        # Makefiles only invoke `$OBJCOPY -x/-X`, so cctools strip works here.
+        "OBJCOPY=${cctools-port}/bin/strip"
+      ];
     RENAME = "-D";
 
-    passthru.tests = { netbsd-install = install; };
+    passthru.tests = {
+      netbsd-install = install;
+    };
 
     patches = [
       ./compat-cxx-safe-header.patch
@@ -79,42 +96,51 @@ mkDerivation (let
       makeFlagsArray+=('INSTALL_SYMLINK=''${INSTALL} ''${SYMLINK} ''${RENAME}')
     '';
 
-    postInstall = ''
-      # why aren't these installed by netbsd?
-      install -D compat_defs.h $out/include/compat_defs.h
-      install -D $BSDSRCDIR/include/cdbw.h $out/include/cdbw.h
-      install -D $BSDSRCDIR/sys/sys/cdbr.h $out/include/cdbr.h
-      install -D $BSDSRCDIR/sys/sys/featuretest.h \
-                 $out/include/sys/featuretest.h
-      install -D $BSDSRCDIR/sys/sys/md5.h $out/include/md5.h
-      install -D $BSDSRCDIR/sys/sys/rmd160.h $out/include/rmd160.h
-      install -D $BSDSRCDIR/sys/sys/sha1.h $out/include/sha1.h
-      install -D $BSDSRCDIR/sys/sys/sha2.h $out/include/sha2.h
-      install -D $BSDSRCDIR/sys/sys/queue.h $out/include/sys/queue.h
-      install -D $BSDSRCDIR/include/vis.h $out/include/vis.h
-      install -D $BSDSRCDIR/include/db.h $out/include/db.h
-      install -D $BSDSRCDIR/include/netconfig.h $out/include/netconfig.h
-      install -D $BSDSRCDIR/include/utmpx.h $out/include/utmpx.h
-      install -D $BSDSRCDIR/include/tzfile.h $out/include/tzfile.h
-      install -D $BSDSRCDIR/sys/sys/tree.h $out/include/sys/tree.h
-      install -D $BSDSRCDIR/include/nl_types.h $out/include/nl_types.h
-      install -D $BSDSRCDIR/include/stringlist.h $out/include/stringlist.h
+    postInstall =
+      ''
+        # why aren't these installed by netbsd?
+        install -D compat_defs.h $out/include/compat_defs.h
+        install -D $BSDSRCDIR/include/cdbw.h $out/include/cdbw.h
+        install -D $BSDSRCDIR/sys/sys/cdbr.h $out/include/cdbr.h
+        install -D $BSDSRCDIR/sys/sys/featuretest.h \
+                   $out/include/sys/featuretest.h
+        install -D $BSDSRCDIR/sys/sys/md5.h $out/include/md5.h
+        install -D $BSDSRCDIR/sys/sys/rmd160.h $out/include/rmd160.h
+        install -D $BSDSRCDIR/sys/sys/sha1.h $out/include/sha1.h
+        install -D $BSDSRCDIR/sys/sys/sha2.h $out/include/sha2.h
+        install -D $BSDSRCDIR/sys/sys/queue.h $out/include/sys/queue.h
+        install -D $BSDSRCDIR/include/vis.h $out/include/vis.h
+        install -D $BSDSRCDIR/include/db.h $out/include/db.h
+        install -D $BSDSRCDIR/include/netconfig.h $out/include/netconfig.h
+        install -D $BSDSRCDIR/include/utmpx.h $out/include/utmpx.h
+        install -D $BSDSRCDIR/include/tzfile.h $out/include/tzfile.h
+        install -D $BSDSRCDIR/sys/sys/tree.h $out/include/sys/tree.h
+        install -D $BSDSRCDIR/include/nl_types.h $out/include/nl_types.h
+        install -D $BSDSRCDIR/include/stringlist.h $out/include/stringlist.h
 
-      # Collapse includes slightly to fix dangling reference
-      install -D $BSDSRCDIR/common/include/rpc/types.h $out/include/rpc/types.h
-      sed -i '1s;^;#include "nbtool_config.h"\n;' $out/include/rpc/types.h
-   '' + lib.optionalString stdenv.isDarwin ''
-      mkdir -p $out/include/ssp
-      touch $out/include/ssp/ssp.h
-   '' + ''
-      mkdir -p $out/lib/pkgconfig
-      substitute ${./libbsd-overlay.pc} $out/lib/pkgconfig/libbsd-overlay.pc \
-        --subst-var-by out $out \
-        --subst-var-by version ${version}
-    '';
-    extraPaths = [ include.src libc.src libutil.src
+        # Collapse includes slightly to fix dangling reference
+        install -D $BSDSRCDIR/common/include/rpc/types.h $out/include/rpc/types.h
+        sed -i '1s;^;#include "nbtool_config.h"\n;' $out/include/rpc/types.h
+      ''
+      + lib.optionalString stdenv.isDarwin ''
+        mkdir -p $out/include/ssp
+        touch $out/include/ssp/ssp.h
+      ''
+      + ''
+        mkdir -p $out/lib/pkgconfig
+        substitute ${./libbsd-overlay.pc} $out/lib/pkgconfig/libbsd-overlay.pc \
+          --subst-var-by out $out \
+          --subst-var-by version ${version}
+      '';
+    extraPaths = [
+      include.src
+      libc.src
+      libutil.src
       (fetchNetBSD "external/bsd/flex" "9.2" "0h98jpfj7vx5zh7vd7bk6b1hmzgkcb757a8j6d9zgygxxv13v43m")
       (fetchNetBSD "sys/sys" "9.2" "0zawhw51klaigqqwkx0lzrx3mim2jywrc24cm7c66qsf1im9awgd")
-      (fetchNetBSD "common/include/rpc/types.h" "9.2" "0n2df12mlc3cbc48jxq35yzl1y7ghgpykvy7jnfh898rdhac7m9a")
+      (fetchNetBSD "common/include/rpc/types.h" "9.2"
+        "0n2df12mlc3cbc48jxq35yzl1y7ghgpykvy7jnfh898rdhac7m9a"
+      )
     ] ++ libutil.extraPaths ++ _mainLibcExtraPaths;
-  })
+  }
+)
diff --git a/pkgs/os-specific/bsd/netbsd/pkgs/config.nix b/pkgs/os-specific/bsd/netbsd/pkgs/config.nix
index 277d70129e6f..c423f3ca8676 100644
--- a/pkgs/os-specific/bsd/netbsd/pkgs/config.nix
+++ b/pkgs/os-specific/bsd/netbsd/pkgs/config.nix
@@ -1,8 +1,15 @@
-{ mkDerivation
-, bsdSetupHook, netbsdSetupHook
-, makeMinimal, install, mandoc, byacc, flex, rsync
-, compatIfNeeded
-, cksum
+{
+  mkDerivation,
+  bsdSetupHook,
+  netbsdSetupHook,
+  makeMinimal,
+  install,
+  mandoc,
+  byacc,
+  flex,
+  rsync,
+  compatIfNeeded,
+  cksum,
 }:
 mkDerivation {
   path = "usr.bin/config";
@@ -10,8 +17,14 @@ mkDerivation {
   sha256 = "1yz3n4hncdkk6kp595fh2q5lg150vpqg8iw2dccydkyw4y3hgsjj";
   env.NIX_CFLAGS_COMPILE = toString [ "-DMAKE_BOOTSTRAP" ];
   nativeBuildInputs = [
-    bsdSetupHook netbsdSetupHook
-    makeMinimal install mandoc byacc flex rsync
+    bsdSetupHook
+    netbsdSetupHook
+    makeMinimal
+    install
+    mandoc
+    byacc
+    flex
+    rsync
   ];
   buildInputs = compatIfNeeded;
   extraPaths = [ cksum.src ];
diff --git a/pkgs/os-specific/bsd/netbsd/pkgs/csu.nix b/pkgs/os-specific/bsd/netbsd/pkgs/csu.nix
index 2d13ced6d5ed..66443331490f 100644
--- a/pkgs/os-specific/bsd/netbsd/pkgs/csu.nix
+++ b/pkgs/os-specific/bsd/netbsd/pkgs/csu.nix
@@ -1,11 +1,23 @@
-{ lib, mkDerivation
-, bsdSetupHook, netbsdSetupHook
-, makeMinimal
-, install, mandoc, groff, flex
-, byacc, genassym, gencat, lorder, tsort, statHook, rsync
-, headers
-, sys
-, ld_elf_so
+{
+  lib,
+  mkDerivation,
+  bsdSetupHook,
+  netbsdSetupHook,
+  makeMinimal,
+  install,
+  mandoc,
+  groff,
+  flex,
+  byacc,
+  genassym,
+  gencat,
+  lorder,
+  tsort,
+  statHook,
+  rsync,
+  headers,
+  sys,
+  ld_elf_so,
 }:
 
 mkDerivation {
@@ -14,11 +26,24 @@ mkDerivation {
   sha256 = "0al5jfazvhlzn9hvmnrbchx4d0gm282hq5gp4xs2zmj9ycmf6d03";
   meta.platforms = lib.platforms.netbsd;
   nativeBuildInputs = [
-    bsdSetupHook netbsdSetupHook
+    bsdSetupHook
+    netbsdSetupHook
     makeMinimal
-    install mandoc groff flex
-    byacc genassym gencat lorder tsort statHook rsync
+    install
+    mandoc
+    groff
+    flex
+    byacc
+    genassym
+    gencat
+    lorder
+    tsort
+    statHook
+    rsync
   ];
   buildInputs = [ headers ];
-  extraPaths = [ sys.src ld_elf_so.src ];
+  extraPaths = [
+    sys.src
+    ld_elf_so.src
+  ];
 }
diff --git a/pkgs/os-specific/bsd/netbsd/pkgs/fts/package.nix b/pkgs/os-specific/bsd/netbsd/pkgs/fts/package.nix
index 0393d36357f6..7c64658bf2e5 100644
--- a/pkgs/os-specific/bsd/netbsd/pkgs/fts/package.nix
+++ b/pkgs/os-specific/bsd/netbsd/pkgs/fts/package.nix
@@ -1,7 +1,10 @@
-{ mkDerivation
-, bsdSetupHook, netbsdSetupHook, rsync
-, compatIfNeeded
-, fetchNetBSD
+{
+  mkDerivation,
+  bsdSetupHook,
+  netbsdSetupHook,
+  rsync,
+  compatIfNeeded,
+  fetchNetBSD,
 }:
 
 mkDerivation {
@@ -10,12 +13,16 @@ mkDerivation {
   sha256 = "01d4fpxvz1pgzfk5xznz5dcm0x0gdzwcsfm1h3d0xc9kc6hj2q77";
   version = "9.2";
   nativeBuildInputs = [
-    bsdSetupHook netbsdSetupHook rsync
+    bsdSetupHook
+    netbsdSetupHook
+    rsync
   ];
   propagatedBuildInputs = compatIfNeeded;
   extraPaths = [
     (fetchNetBSD "lib/libc/gen/fts.c" "9.2" "1a8hmf26242nmv05ipn3ircxb0jqmmi66rh78kkyi9vjwkfl3qn7")
-    (fetchNetBSD "lib/libc/include/namespace.h" "9.2" "0kksr3pdwdc1cplqf5z12ih4cml6l11lqrz91f7hjjm64y7785kc")
+    (fetchNetBSD "lib/libc/include/namespace.h" "9.2"
+      "0kksr3pdwdc1cplqf5z12ih4cml6l11lqrz91f7hjjm64y7785kc"
+    )
     (fetchNetBSD "lib/libc/gen/fts.3" "9.2" "1asxw0n3fhjdadwkkq3xplfgqgl3q32w1lyrvbakfa3gs0wz5zc1")
   ];
   skipIncludesPhase = true;
diff --git a/pkgs/os-specific/bsd/netbsd/pkgs/headers.nix b/pkgs/os-specific/bsd/netbsd/pkgs/headers.nix
index 646e5675130b..40615b2722d5 100644
--- a/pkgs/os-specific/bsd/netbsd/pkgs/headers.nix
+++ b/pkgs/os-specific/bsd/netbsd/pkgs/headers.nix
@@ -1,4 +1,10 @@
-{ lib, symlinkJoin, include, sys-headers, libpthread-headers }:
+{
+  lib,
+  symlinkJoin,
+  include,
+  sys-headers,
+  libpthread-headers,
+}:
 
 symlinkJoin {
   name = "netbsd-headers-9.2";
diff --git a/pkgs/os-specific/bsd/netbsd/pkgs/i18n_module.nix b/pkgs/os-specific/bsd/netbsd/pkgs/i18n_module.nix
index 60b091ef0b71..c76ada865775 100644
--- a/pkgs/os-specific/bsd/netbsd/pkgs/i18n_module.nix
+++ b/pkgs/os-specific/bsd/netbsd/pkgs/i18n_module.nix
@@ -1,4 +1,8 @@
-{ lib, mkDerivation, libc }:
+{
+  lib,
+  mkDerivation,
+  libc,
+}:
 
 mkDerivation {
   path = "lib/i18n_module";
diff --git a/pkgs/os-specific/bsd/netbsd/pkgs/include.nix b/pkgs/os-specific/bsd/netbsd/pkgs/include.nix
index 1ecdec90ae09..ec316a63174f 100644
--- a/pkgs/os-specific/bsd/netbsd/pkgs/include.nix
+++ b/pkgs/os-specific/bsd/netbsd/pkgs/include.nix
@@ -1,10 +1,18 @@
-{ lib, mkDerivation
-, bsdSetupHook, netbsdSetupHook
-, makeMinimal
-, install, mandoc, groff, rsync, nbperf, rpcgen
-, common
-, defaultMakeFlags
-, stdenv
+{
+  lib,
+  mkDerivation,
+  bsdSetupHook,
+  netbsdSetupHook,
+  makeMinimal,
+  install,
+  mandoc,
+  groff,
+  rsync,
+  nbperf,
+  rpcgen,
+  common,
+  defaultMakeFlags,
+  stdenv,
 }:
 
 mkDerivation {
@@ -12,9 +20,15 @@ mkDerivation {
   version = "9.2";
   sha256 = "0nxnmj4c8s3hb9n3fpcmd0zl3l1nmhivqgi9a35sis943qvpgl9h";
   nativeBuildInputs = [
-    bsdSetupHook netbsdSetupHook
+    bsdSetupHook
+    netbsdSetupHook
     makeMinimal
-    install mandoc groff rsync nbperf rpcgen
+    install
+    mandoc
+    groff
+    rsync
+    nbperf
+    rpcgen
   ];
 
   # The makefiles define INCSDIR per subdirectory, so we have to set
diff --git a/pkgs/os-specific/bsd/netbsd/pkgs/install/package.nix b/pkgs/os-specific/bsd/netbsd/pkgs/install/package.nix
index 991517ac2d48..69b0c073259e 100644
--- a/pkgs/os-specific/bsd/netbsd/pkgs/install/package.nix
+++ b/pkgs/os-specific/bsd/netbsd/pkgs/install/package.nix
@@ -1,10 +1,16 @@
-{ mkDerivation
-, writeShellScript
-, mtree, make
-, bsdSetupHook, netbsdSetupHook
-, makeMinimal
-, mandoc, groff, rsync
-, compatIfNeeded, fts
+{
+  mkDerivation,
+  writeShellScript,
+  mtree,
+  make,
+  bsdSetupHook,
+  netbsdSetupHook,
+  makeMinimal,
+  mandoc,
+  groff,
+  rsync,
+  compatIfNeeded,
+  fts,
 
 }:
 
@@ -18,32 +24,39 @@ let
     @out@/bin/xinstall "$@"
   '';
 in
-  mkDerivation {
-    path = "usr.bin/xinstall";
-    version = "9.2";
-    sha256 = "1f6pbz3qv1qcrchdxif8p5lbmnwl8b9nq615hsd3cyl4avd5bfqj";
-    extraPaths = [ mtree.src make.src ];
-    nativeBuildInputs = [
-      bsdSetupHook netbsdSetupHook
-      makeMinimal
-      mandoc groff rsync
-    ];
-    skipIncludesPhase = true;
-    buildInputs = compatIfNeeded
-      # fts header is needed. glibc already has this header, but musl doesn't,
-      # so make sure pkgsMusl.netbsd.install still builds in case you want to
-      # remove it!
-      ++ [ fts ];
-    installPhase = ''
-      runHook preInstall
+mkDerivation {
+  path = "usr.bin/xinstall";
+  version = "9.2";
+  sha256 = "1f6pbz3qv1qcrchdxif8p5lbmnwl8b9nq615hsd3cyl4avd5bfqj";
+  extraPaths = [
+    mtree.src
+    make.src
+  ];
+  nativeBuildInputs = [
+    bsdSetupHook
+    netbsdSetupHook
+    makeMinimal
+    mandoc
+    groff
+    rsync
+  ];
+  skipIncludesPhase = true;
+  buildInputs =
+    compatIfNeeded
+    # fts header is needed. glibc already has this header, but musl doesn't,
+    # so make sure pkgsMusl.netbsd.install still builds in case you want to
+    # remove it!
+    ++ [ fts ];
+  installPhase = ''
+    runHook preInstall
 
-      install -D install.1 $out/share/man/man1/install.1
-      install -D xinstall $out/bin/xinstall
-      install -D -m 0550 ${binstall} $out/bin/binstall
-      substituteInPlace $out/bin/binstall --subst-var out
-      ln -s $out/bin/binstall $out/bin/install
+    install -D install.1 $out/share/man/man1/install.1
+    install -D xinstall $out/bin/xinstall
+    install -D -m 0550 ${binstall} $out/bin/binstall
+    substituteInPlace $out/bin/binstall --subst-var out
+    ln -s $out/bin/binstall $out/bin/install
 
-      runHook postInstall
-    '';
-    setupHook = ./install-setup-hook.sh;
-  }
+    runHook postInstall
+  '';
+  setupHook = ./install-setup-hook.sh;
+}
diff --git a/pkgs/os-specific/bsd/netbsd/pkgs/ld_elf_so.nix b/pkgs/os-specific/bsd/netbsd/pkgs/ld_elf_so.nix
index 1496ad6a0e88..a350e81d3206 100644
--- a/pkgs/os-specific/bsd/netbsd/pkgs/ld_elf_so.nix
+++ b/pkgs/os-specific/bsd/netbsd/pkgs/ld_elf_so.nix
@@ -1,11 +1,12 @@
-{ lib
-, mkDerivation
-, libc
-, defaultMakeFlags
+{
+  lib,
+  mkDerivation,
+  libc,
+  defaultMakeFlags,
 }:
 
 mkDerivation {
-  path  = "libexec/ld.elf_so";
+  path = "libexec/ld.elf_so";
   version = "9.2";
   sha256 = "0ia9mqzdljly0vqfwflm5mzz55k7qsr4rw2bzhivky6k30vgirqa";
   meta.platforms = lib.platforms.netbsd;
@@ -13,6 +14,9 @@ mkDerivation {
   # Hack to prevent a symlink being installed here for compatibility.
   SHLINKINSTALLDIR = "/usr/libexec";
   USE_FORT = "yes";
-  makeFlags = defaultMakeFlags ++ [ "BINDIR=$(out)/libexec" "CLIBOBJ=${libc}/lib" ];
+  makeFlags = defaultMakeFlags ++ [
+    "BINDIR=$(out)/libexec"
+    "CLIBOBJ=${libc}/lib"
+  ];
   extraPaths = [ libc.src ] ++ libc.extraPaths;
 }
diff --git a/pkgs/os-specific/bsd/netbsd/pkgs/libc.nix b/pkgs/os-specific/bsd/netbsd/pkgs/libc.nix
index ebc01a11668a..d755e4b6870a 100644
--- a/pkgs/os-specific/bsd/netbsd/pkgs/libc.nix
+++ b/pkgs/os-specific/bsd/netbsd/pkgs/libc.nix
@@ -1,14 +1,27 @@
-{ lib
-, mkDerivation
-, defaultMakeFlags
-, _mainLibcExtraPaths
-, fetchNetBSD
-, bsdSetupHook, netbsdSetupHook
-, makeMinimal
-, install, mandoc, groff, flex
-, byacc, genassym, gencat, lorder, tsort, statHook, rsync, rpcgen
-, csu, headers
-, librt
+{
+  lib,
+  mkDerivation,
+  defaultMakeFlags,
+  _mainLibcExtraPaths,
+  fetchNetBSD,
+  bsdSetupHook,
+  netbsdSetupHook,
+  makeMinimal,
+  install,
+  mandoc,
+  groff,
+  flex,
+  byacc,
+  genassym,
+  gencat,
+  lorder,
+  tsort,
+  statHook,
+  rsync,
+  rpcgen,
+  csu,
+  headers,
+  librt,
 }:
 
 mkDerivation {
@@ -21,18 +34,32 @@ mkDerivation {
     (fetchNetBSD "external/bsd/jemalloc" "9.2" "0cq704swa0h2yxv4gc79z2lwxibk9k7pxh3q5qfs7axx3jx3n8kb")
   ];
   nativeBuildInputs = [
-    bsdSetupHook netbsdSetupHook
+    bsdSetupHook
+    netbsdSetupHook
     makeMinimal
-    install mandoc groff flex
-    byacc genassym gencat lorder tsort statHook rsync rpcgen
+    install
+    mandoc
+    groff
+    flex
+    byacc
+    genassym
+    gencat
+    lorder
+    tsort
+    statHook
+    rsync
+    rpcgen
+  ];
+  buildInputs = [
+    headers
+    csu
   ];
-  buildInputs = [ headers csu ];
   env.NIX_CFLAGS_COMPILE = "-B${csu}/lib -fcommon";
   meta.platforms = lib.platforms.netbsd;
   SHLIBINSTALLDIR = "$(out)/lib";
   MKPICINSTALL = "yes";
   NLSDIR = "$(out)/share/nls";
-  makeFlags = defaultMakeFlags ++ [ "FILESDIR=$(out)/var/db"];
+  makeFlags = defaultMakeFlags ++ [ "FILESDIR=$(out)/var/db" ];
   postInstall = ''
     pushd ${headers}
     find . -type d -exec mkdir -p $out/\{} \;
diff --git a/pkgs/os-specific/bsd/netbsd/pkgs/libcurses.nix b/pkgs/os-specific/bsd/netbsd/pkgs/libcurses.nix
index 2409879640a9..5072821db911 100644
--- a/pkgs/os-specific/bsd/netbsd/pkgs/libcurses.nix
+++ b/pkgs/os-specific/bsd/netbsd/pkgs/libcurses.nix
@@ -1,7 +1,10 @@
-{ lib, mkDerivation, stdenv
-, libterminfo
-, compatIfNeeded
-, defaultMakeFlags
+{
+  lib,
+  mkDerivation,
+  stdenv,
+  libterminfo,
+  compatIfNeeded,
+  defaultMakeFlags,
 }:
 
 mkDerivation {
@@ -9,11 +12,14 @@ mkDerivation {
   version = "9.2";
   sha256 = "0pd0dggl3w4bv5i5h0s1wrc8hr66n4hkv3zlklarwfdhc692fqal";
   buildInputs = [ libterminfo ];
-  env.NIX_CFLAGS_COMPILE = toString ([
-    "-D__scanflike(a,b)="
-    "-D__va_list=va_list"
-    "-D__warn_references(a,b)="
-  ] ++ lib.optional stdenv.isDarwin "-D__strong_alias(a,b)=");
+  env.NIX_CFLAGS_COMPILE = toString (
+    [
+      "-D__scanflike(a,b)="
+      "-D__va_list=va_list"
+      "-D__warn_references(a,b)="
+    ]
+    ++ lib.optional stdenv.isDarwin "-D__strong_alias(a,b)="
+  );
   propagatedBuildInputs = compatIfNeeded;
   MKDOC = "no"; # missing vfontedpr
   makeFlags = defaultMakeFlags ++ [ "LIBDO.terminfo=${libterminfo}/lib" ];
diff --git a/pkgs/os-specific/bsd/netbsd/pkgs/libedit.nix b/pkgs/os-specific/bsd/netbsd/pkgs/libedit.nix
index eb734f34c3d4..ee1e7bf79f96 100644
--- a/pkgs/os-specific/bsd/netbsd/pkgs/libedit.nix
+++ b/pkgs/os-specific/bsd/netbsd/pkgs/libedit.nix
@@ -1,26 +1,32 @@
-{ lib, mkDerivation
-, libterminfo, libcurses
-, compatIfNeeded
-, defaultMakeFlags
+{
+  lib,
+  mkDerivation,
+  libterminfo,
+  libcurses,
+  compatIfNeeded,
+  defaultMakeFlags,
 }:
 
 mkDerivation {
-    path = "lib/libedit";
-    version = "9.2";
-    sha256 = "1wqhngraxwqk4jgrf5f18jy195yrp7c06n1gf31pbplq79mg1bcj";
-    buildInputs = [ libterminfo libcurses ];
-    propagatedBuildInputs = compatIfNeeded;
-    SHLIBINSTALLDIR = "$(out)/lib";
-    makeFlags = defaultMakeFlags ++ [ "LIBDO.terminfo=${libterminfo}/lib" ];
-    postPatch = ''
-      sed -i '1i #undef bool_t' $COMPONENT_PATH/el.h
-      substituteInPlace $COMPONENT_PATH/config.h \
-        --replace "#define HAVE_STRUCT_DIRENT_D_NAMLEN 1" ""
-      substituteInPlace $COMPONENT_PATH/readline/Makefile --replace /usr/include "$out/include"
-    '';
-    env.NIX_CFLAGS_COMPILE = toString [
-      "-D__noinline="
-      "-D__scanflike(a,b)="
-      "-D__va_list=va_list"
-    ];
-  }
+  path = "lib/libedit";
+  version = "9.2";
+  sha256 = "1wqhngraxwqk4jgrf5f18jy195yrp7c06n1gf31pbplq79mg1bcj";
+  buildInputs = [
+    libterminfo
+    libcurses
+  ];
+  propagatedBuildInputs = compatIfNeeded;
+  SHLIBINSTALLDIR = "$(out)/lib";
+  makeFlags = defaultMakeFlags ++ [ "LIBDO.terminfo=${libterminfo}/lib" ];
+  postPatch = ''
+    sed -i '1i #undef bool_t' $COMPONENT_PATH/el.h
+    substituteInPlace $COMPONENT_PATH/config.h \
+      --replace "#define HAVE_STRUCT_DIRENT_D_NAMLEN 1" ""
+    substituteInPlace $COMPONENT_PATH/readline/Makefile --replace /usr/include "$out/include"
+  '';
+  env.NIX_CFLAGS_COMPILE = toString [
+    "-D__noinline="
+    "-D__scanflike(a,b)="
+    "-D__va_list=va_list"
+  ];
+}
diff --git a/pkgs/os-specific/bsd/netbsd/pkgs/libm.nix b/pkgs/os-specific/bsd/netbsd/pkgs/libm.nix
index 86990088adf2..f36e97f8e6ae 100644
--- a/pkgs/os-specific/bsd/netbsd/pkgs/libm.nix
+++ b/pkgs/os-specific/bsd/netbsd/pkgs/libm.nix
@@ -1,4 +1,8 @@
-{ lib, mkDerivation, sys }:
+{
+  lib,
+  mkDerivation,
+  sys,
+}:
 
 mkDerivation {
   path = "lib/libm";
diff --git a/pkgs/os-specific/bsd/netbsd/pkgs/libpci.nix b/pkgs/os-specific/bsd/netbsd/pkgs/libpci.nix
index 21ca0f62fd4e..b0be4a2da723 100644
--- a/pkgs/os-specific/bsd/netbsd/pkgs/libpci.nix
+++ b/pkgs/os-specific/bsd/netbsd/pkgs/libpci.nix
@@ -1,4 +1,8 @@
-{ lib, mkDerivation, sys }:
+{
+  lib,
+  mkDerivation,
+  sys,
+}:
 
 mkDerivation {
   pname = "libpci";
diff --git a/pkgs/os-specific/bsd/netbsd/pkgs/libpthread/base.nix b/pkgs/os-specific/bsd/netbsd/pkgs/libpthread/base.nix
index 485a12837bcb..d8ea7c553eba 100644
--- a/pkgs/os-specific/bsd/netbsd/pkgs/libpthread/base.nix
+++ b/pkgs/os-specific/bsd/netbsd/pkgs/libpthread/base.nix
@@ -3,4 +3,3 @@
   version = "9.2";
   sha256 = "0mlmc31k509dwfmx5s2x010wxjc44mr6y0cbmk30cfipqh8c962h";
 }
-
diff --git a/pkgs/os-specific/bsd/netbsd/pkgs/libpthread/headers.nix b/pkgs/os-specific/bsd/netbsd/pkgs/libpthread/headers.nix
index 3896562501fc..c3cc899017ee 100644
--- a/pkgs/os-specific/bsd/netbsd/pkgs/libpthread/headers.nix
+++ b/pkgs/os-specific/bsd/netbsd/pkgs/libpthread/headers.nix
@@ -1,9 +1,12 @@
 { lib, mkDerivation }:
 
-mkDerivation (import ./base.nix // {
-  pname = "libpthread-headers";
-  installPhase = "includesPhase";
-  dontBuild = true;
-  noCC = true;
-  meta.platforms = lib.platforms.netbsd;
-})
+mkDerivation (
+  import ./base.nix
+  // {
+    pname = "libpthread-headers";
+    installPhase = "includesPhase";
+    dontBuild = true;
+    noCC = true;
+    meta.platforms = lib.platforms.netbsd;
+  }
+)
diff --git a/pkgs/os-specific/bsd/netbsd/pkgs/libpthread/package.nix b/pkgs/os-specific/bsd/netbsd/pkgs/libpthread/package.nix
index c2a0d407718e..88d392e20b4a 100644
--- a/pkgs/os-specific/bsd/netbsd/pkgs/libpthread/package.nix
+++ b/pkgs/os-specific/bsd/netbsd/pkgs/libpthread/package.nix
@@ -1,15 +1,28 @@
-{ lib, mkDerivation
-, headers
-, common, libc, librt, sys
+{
+  lib,
+  mkDerivation,
+  headers,
+  common,
+  libc,
+  librt,
+  sys,
 }:
 
-mkDerivation (import ./base.nix // {
-  pname = "libpthread";
-  installPhase = null;
-  noCC = false;
-  dontBuild = false;
-  buildInputs = [ headers ];
-  SHLIBINSTALLDIR = "$(out)/lib";
-  extraPaths = [ common libc.src librt.src sys.src ];
-  meta.platforms = lib.platforms.netbsd;
-})
+mkDerivation (
+  import ./base.nix
+  // {
+    pname = "libpthread";
+    installPhase = null;
+    noCC = false;
+    dontBuild = false;
+    buildInputs = [ headers ];
+    SHLIBINSTALLDIR = "$(out)/lib";
+    extraPaths = [
+      common
+      libc.src
+      librt.src
+      sys.src
+    ];
+    meta.platforms = lib.platforms.netbsd;
+  }
+)
diff --git a/pkgs/os-specific/bsd/netbsd/pkgs/libresolv.nix b/pkgs/os-specific/bsd/netbsd/pkgs/libresolv.nix
index 2427592e4aa9..24bc4f2f9e00 100644
--- a/pkgs/os-specific/bsd/netbsd/pkgs/libresolv.nix
+++ b/pkgs/os-specific/bsd/netbsd/pkgs/libresolv.nix
@@ -1,4 +1,8 @@
-{ lib, mkDerivation, libc }:
+{
+  lib,
+  mkDerivation,
+  libc,
+}:
 
 mkDerivation {
   path = "lib/libresolv";
diff --git a/pkgs/os-specific/bsd/netbsd/pkgs/librpcsvc.nix b/pkgs/os-specific/bsd/netbsd/pkgs/librpcsvc.nix
index 87524339e268..8d757a8a8430 100644
--- a/pkgs/os-specific/bsd/netbsd/pkgs/librpcsvc.nix
+++ b/pkgs/os-specific/bsd/netbsd/pkgs/librpcsvc.nix
@@ -1,9 +1,15 @@
-{ lib
-, mkDerivation
-, defaultMakeFlags
-, bsdSetupHook, netbsdSetupHook
-, makeMinimal
-, install, tsort, lorder, rpcgen, statHook
+{
+  lib,
+  mkDerivation,
+  defaultMakeFlags,
+  bsdSetupHook,
+  netbsdSetupHook,
+  makeMinimal,
+  install,
+  tsort,
+  lorder,
+  rpcgen,
+  statHook,
 }:
 
 mkDerivation {
@@ -13,9 +19,13 @@ mkDerivation {
   makeFlags = defaultMakeFlags ++ [ "INCSDIR=$(out)/include/rpcsvc" ];
   meta.platforms = lib.platforms.netbsd;
   nativeBuildInputs = [
-    bsdSetupHook netbsdSetupHook
+    bsdSetupHook
+    netbsdSetupHook
     makeMinimal
-    install tsort lorder rpcgen statHook
+    install
+    tsort
+    lorder
+    rpcgen
+    statHook
   ];
 }
-
diff --git a/pkgs/os-specific/bsd/netbsd/pkgs/librt.nix b/pkgs/os-specific/bsd/netbsd/pkgs/librt.nix
index 2ffe0787004a..fa0229953b66 100644
--- a/pkgs/os-specific/bsd/netbsd/pkgs/librt.nix
+++ b/pkgs/os-specific/bsd/netbsd/pkgs/librt.nix
@@ -1,4 +1,9 @@
-{ lib, mkDerivation, libc, headers }:
+{
+  lib,
+  mkDerivation,
+  libc,
+  headers,
+}:
 
 mkDerivation {
   path = "lib/librt";
diff --git a/pkgs/os-specific/bsd/netbsd/pkgs/libterminfo.nix b/pkgs/os-specific/bsd/netbsd/pkgs/libterminfo.nix
index b9268cc7ba33..6ac573d865b1 100644
--- a/pkgs/os-specific/bsd/netbsd/pkgs/libterminfo.nix
+++ b/pkgs/os-specific/bsd/netbsd/pkgs/libterminfo.nix
@@ -1,8 +1,18 @@
-{ mkDerivation
-, bsdSetupHook, netbsdSetupHook
-, makeMinimal, install, tsort, lorder, mandoc, statHook, nbperf, tic, rsync
-, compatIfNeeded
-, fetchNetBSD
+{
+  mkDerivation,
+  bsdSetupHook,
+  netbsdSetupHook,
+  makeMinimal,
+  install,
+  tsort,
+  lorder,
+  mandoc,
+  statHook,
+  nbperf,
+  tic,
+  rsync,
+  compatIfNeeded,
+  fetchNetBSD,
 }:
 
 mkDerivation {
@@ -10,8 +20,17 @@ mkDerivation {
   version = "9.2";
   sha256 = "0pq05k3dj0dfsczv07frnnji92mazmy2qqngqbx2zgqc1x251414";
   nativeBuildInputs = [
-    bsdSetupHook netbsdSetupHook
-    makeMinimal install tsort lorder mandoc statHook nbperf tic rsync
+    bsdSetupHook
+    netbsdSetupHook
+    makeMinimal
+    install
+    tsort
+    lorder
+    mandoc
+    statHook
+    nbperf
+    tic
+    rsync
   ];
   buildInputs = compatIfNeeded;
   SHLIBINSTALLDIR = "$(out)/lib";
diff --git a/pkgs/os-specific/bsd/netbsd/pkgs/libutil.nix b/pkgs/os-specific/bsd/netbsd/pkgs/libutil.nix
index 4aaf8f0e7ab6..fdc57df9c231 100644
--- a/pkgs/os-specific/bsd/netbsd/pkgs/libutil.nix
+++ b/pkgs/os-specific/bsd/netbsd/pkgs/libutil.nix
@@ -1,20 +1,41 @@
-{ mkDerivation
-, common, libc, sys
-, bsdSetupHook, netbsdSetupHook
-, makeMinimal
-, byacc, install, tsort, lorder, mandoc, statHook, rsync
-, headers
+{
+  mkDerivation,
+  common,
+  libc,
+  sys,
+  bsdSetupHook,
+  netbsdSetupHook,
+  makeMinimal,
+  byacc,
+  install,
+  tsort,
+  lorder,
+  mandoc,
+  statHook,
+  rsync,
+  headers,
 }:
 
 mkDerivation {
   path = "lib/libutil";
   version = "9.2";
   sha256 = "02gm5a5zhh8qp5r5q5r7x8x6x50ir1i0ncgsnfwh1vnrz6mxbq7z";
-  extraPaths = [ common libc.src sys.src ];
+  extraPaths = [
+    common
+    libc.src
+    sys.src
+  ];
   nativeBuildInputs = [
-    bsdSetupHook netbsdSetupHook
+    bsdSetupHook
+    netbsdSetupHook
     makeMinimal
-    byacc install tsort lorder mandoc statHook rsync
+    byacc
+    install
+    tsort
+    lorder
+    mandoc
+    statHook
+    rsync
   ];
   buildInputs = [ headers ];
   SHLIBINSTALLDIR = "$(out)/lib";
diff --git a/pkgs/os-specific/bsd/netbsd/pkgs/lorder.nix b/pkgs/os-specific/bsd/netbsd/pkgs/lorder.nix
index d3109601382a..0b99a794b07a 100644
--- a/pkgs/os-specific/bsd/netbsd/pkgs/lorder.nix
+++ b/pkgs/os-specific/bsd/netbsd/pkgs/lorder.nix
@@ -1,7 +1,12 @@
-{ mkDerivation
-, bsdSetupHook, netbsdSetupHook
-, makeMinimal
-, install, mandoc, groff, rsync
+{
+  mkDerivation,
+  bsdSetupHook,
+  netbsdSetupHook,
+  makeMinimal,
+  install,
+  mandoc,
+  groff,
+  rsync,
 }:
 
 mkDerivation {
@@ -9,8 +14,12 @@ mkDerivation {
   version = "9.2";
   sha256 = "0rjf9blihhm0n699vr2bg88m4yjhkbxh6fxliaay3wxkgnydjwn2";
   nativeBuildInputs = [
-    bsdSetupHook netbsdSetupHook
+    bsdSetupHook
+    netbsdSetupHook
     makeMinimal
-    install mandoc groff rsync
+    install
+    mandoc
+    groff
+    rsync
   ];
 }
diff --git a/pkgs/os-specific/bsd/netbsd/pkgs/make.nix b/pkgs/os-specific/bsd/netbsd/pkgs/make.nix
index dcd80ef00467..381e30916407 100644
--- a/pkgs/os-specific/bsd/netbsd/pkgs/make.nix
+++ b/pkgs/os-specific/bsd/netbsd/pkgs/make.nix
@@ -1,56 +1,63 @@
-{ lib, mkDerivation, fetchNetBSD, stdenv }:
+{
+  lib,
+  mkDerivation,
+  fetchNetBSD,
+  stdenv,
+}:
 
 mkDerivation {
   path = "usr.bin/make";
   sha256 = "0vi73yicbmbp522qzqvd979cx6zm5jakhy77xh73c1kygf8klccs";
   version = "9.2";
 
- postPatch = ''
-   substituteInPlace $BSDSRCDIR/share/mk/bsd.doc.mk \
-     --replace '-o ''${DOCOWN}' "" \
-     --replace '-g ''${DOCGRP}' ""
-   for mk in $BSDSRCDIR/share/mk/bsd.inc.mk $BSDSRCDIR/share/mk/bsd.kinc.mk; do
-     substituteInPlace $mk \
-       --replace '-o ''${BINOWN}' "" \
-       --replace '-g ''${BINGRP}' ""
-   done
-   substituteInPlace $BSDSRCDIR/share/mk/bsd.kmodule.mk \
-     --replace '-o ''${KMODULEOWN}' "" \
-     --replace '-g ''${KMODULEGRP}' ""
-   substituteInPlace $BSDSRCDIR/share/mk/bsd.lib.mk \
-     --replace '-o ''${LIBOWN}' "" \
-     --replace '-g ''${LIBGRP}' "" \
-     --replace '-o ''${DEBUGOWN}' "" \
-     --replace '-g ''${DEBUGGRP}' ""
-   substituteInPlace $BSDSRCDIR/share/mk/bsd.lua.mk \
-     --replace '-o ''${LIBOWN}' "" \
-     --replace '-g ''${LIBGRP}' ""
-   substituteInPlace $BSDSRCDIR/share/mk/bsd.man.mk \
-     --replace '-o ''${MANOWN}' "" \
-     --replace '-g ''${MANGRP}' ""
-   substituteInPlace $BSDSRCDIR/share/mk/bsd.nls.mk \
-     --replace '-o ''${NLSOWN}' "" \
-     --replace '-g ''${NLSGRP}' ""
-   substituteInPlace $BSDSRCDIR/share/mk/bsd.prog.mk \
-     --replace '-o ''${BINOWN}' "" \
-     --replace '-g ''${BINGRP}' "" \
-     --replace '-o ''${RUMPBINOWN}' "" \
-     --replace '-g ''${RUMPBINGRP}' "" \
-     --replace '-o ''${DEBUGOWN}' "" \
-     --replace '-g ''${DEBUGGRP}' ""
+  postPatch =
+    ''
+      substituteInPlace $BSDSRCDIR/share/mk/bsd.doc.mk \
+        --replace '-o ''${DOCOWN}' "" \
+        --replace '-g ''${DOCGRP}' ""
+      for mk in $BSDSRCDIR/share/mk/bsd.inc.mk $BSDSRCDIR/share/mk/bsd.kinc.mk; do
+        substituteInPlace $mk \
+          --replace '-o ''${BINOWN}' "" \
+          --replace '-g ''${BINGRP}' ""
+      done
+      substituteInPlace $BSDSRCDIR/share/mk/bsd.kmodule.mk \
+        --replace '-o ''${KMODULEOWN}' "" \
+        --replace '-g ''${KMODULEGRP}' ""
+      substituteInPlace $BSDSRCDIR/share/mk/bsd.lib.mk \
+        --replace '-o ''${LIBOWN}' "" \
+        --replace '-g ''${LIBGRP}' "" \
+        --replace '-o ''${DEBUGOWN}' "" \
+        --replace '-g ''${DEBUGGRP}' ""
+      substituteInPlace $BSDSRCDIR/share/mk/bsd.lua.mk \
+        --replace '-o ''${LIBOWN}' "" \
+        --replace '-g ''${LIBGRP}' ""
+      substituteInPlace $BSDSRCDIR/share/mk/bsd.man.mk \
+        --replace '-o ''${MANOWN}' "" \
+        --replace '-g ''${MANGRP}' ""
+      substituteInPlace $BSDSRCDIR/share/mk/bsd.nls.mk \
+        --replace '-o ''${NLSOWN}' "" \
+        --replace '-g ''${NLSGRP}' ""
+      substituteInPlace $BSDSRCDIR/share/mk/bsd.prog.mk \
+        --replace '-o ''${BINOWN}' "" \
+        --replace '-g ''${BINGRP}' "" \
+        --replace '-o ''${RUMPBINOWN}' "" \
+        --replace '-g ''${RUMPBINGRP}' "" \
+        --replace '-o ''${DEBUGOWN}' "" \
+        --replace '-g ''${DEBUGGRP}' ""
 
-    # make needs this to pick up our sys make files
-    export NIX_CFLAGS_COMPILE+=" -D_PATH_DEFSYSPATH=\"$out/share/mk\""
+       # make needs this to pick up our sys make files
+       export NIX_CFLAGS_COMPILE+=" -D_PATH_DEFSYSPATH=\"$out/share/mk\""
 
-    substituteInPlace $BSDSRCDIR/share/mk/bsd.lib.mk \
-      --replace '_INSTRANLIB=''${empty(PRESERVE):?-a "''${RANLIB} -t":}' '_INSTRANLIB='
-    substituteInPlace $BSDSRCDIR/share/mk/bsd.kinc.mk \
-      --replace /bin/rm rm
-  '' + lib.optionalString stdenv.isDarwin ''
-    substituteInPlace $BSDSRCDIR/share/mk/bsd.sys.mk \
-      --replace '-Wl,--fatal-warnings' "" \
-      --replace '-Wl,--warn-shared-textrel' ""
-  '';
+       substituteInPlace $BSDSRCDIR/share/mk/bsd.lib.mk \
+         --replace '_INSTRANLIB=''${empty(PRESERVE):?-a "''${RANLIB} -t":}' '_INSTRANLIB='
+       substituteInPlace $BSDSRCDIR/share/mk/bsd.kinc.mk \
+         --replace /bin/rm rm
+    ''
+    + lib.optionalString stdenv.isDarwin ''
+      substituteInPlace $BSDSRCDIR/share/mk/bsd.sys.mk \
+        --replace '-Wl,--fatal-warnings' "" \
+        --replace '-Wl,--warn-shared-textrel' ""
+    '';
   postInstall = ''
     make -C $BSDSRCDIR/share/mk FILESDIR=$out/share/mk install
   '';
diff --git a/pkgs/os-specific/bsd/netbsd/pkgs/makeMinimal.nix b/pkgs/os-specific/bsd/netbsd/pkgs/makeMinimal.nix
index 18655b3bf863..585c72bd1798 100644
--- a/pkgs/os-specific/bsd/netbsd/pkgs/makeMinimal.nix
+++ b/pkgs/os-specific/bsd/netbsd/pkgs/makeMinimal.nix
@@ -1,6 +1,9 @@
-{ mkDerivation
-, bsdSetupHook, netbsdSetupHook, rsync
-, make
+{
+  mkDerivation,
+  bsdSetupHook,
+  netbsdSetupHook,
+  rsync,
+  make,
 }:
 
 mkDerivation {
@@ -8,9 +11,11 @@ mkDerivation {
   sha256 = "0fh0nrnk18m613m5blrliq2aydciv51qhc0ihsj4k63incwbk90n";
   version = "9.2";
 
-  buildInputs = [];
+  buildInputs = [ ];
   nativeBuildInputs = [
-    bsdSetupHook netbsdSetupHook rsync
+    bsdSetupHook
+    netbsdSetupHook
+    rsync
   ];
 
   skipIncludesPhase = true;
diff --git a/pkgs/os-specific/bsd/netbsd/pkgs/mkDerivation.nix b/pkgs/os-specific/bsd/netbsd/pkgs/mkDerivation.nix
index 82e8889f6cf4..849d2b1da3fb 100644
--- a/pkgs/os-specific/bsd/netbsd/pkgs/mkDerivation.nix
+++ b/pkgs/os-specific/bsd/netbsd/pkgs/mkDerivation.nix
@@ -1,82 +1,113 @@
-{ lib
-, stdenvNoCC, stdenv
-, fetchNetBSD
-, bsdSetupHook, netbsdSetupHook
-, makeMinimal
-, install, tsort, lorder
-, mandoc, groff, statHook, rsync
-, compatIfNeeded
-, defaultMakeFlags
+{
+  lib,
+  stdenvNoCC,
+  stdenv,
+  fetchNetBSD,
+  bsdSetupHook,
+  netbsdSetupHook,
+  makeMinimal,
+  install,
+  tsort,
+  lorder,
+  mandoc,
+  groff,
+  statHook,
+  rsync,
+  compatIfNeeded,
+  defaultMakeFlags,
 }:
 
-lib.makeOverridable (attrs: let
-  stdenv' = if attrs.noCC or false then stdenvNoCC else stdenv;
-in stdenv'.mkDerivation ({
-  pname = "${attrs.pname or (baseNameOf attrs.path)}-netbsd";
-  inherit (attrs) version;
-  src = fetchNetBSD attrs.path attrs.version attrs.sha256;
+lib.makeOverridable (
+  attrs:
+  let
+    stdenv' = if attrs.noCC or false then stdenvNoCC else stdenv;
+  in
+  stdenv'.mkDerivation (
+    {
+      pname = "${attrs.pname or (baseNameOf attrs.path)}-netbsd";
+      inherit (attrs) version;
+      src = fetchNetBSD attrs.path attrs.version attrs.sha256;
 
-  extraPaths = [ ];
+      extraPaths = [ ];
 
-  nativeBuildInputs = [
-    bsdSetupHook netbsdSetupHook
-    makeMinimal
-    install tsort lorder mandoc groff statHook rsync
-  ];
-  buildInputs = compatIfNeeded;
+      nativeBuildInputs = [
+        bsdSetupHook
+        netbsdSetupHook
+        makeMinimal
+        install
+        tsort
+        lorder
+        mandoc
+        groff
+        statHook
+        rsync
+      ];
+      buildInputs = compatIfNeeded;
 
-  HOST_SH = stdenv'.shell;
+      HOST_SH = stdenv'.shell;
 
-  MACHINE_ARCH = {
-    i486 = "i386";
-    i586 = "i386";
-    i686 = "i386";
-  }.${stdenv'.hostPlatform.parsed.cpu.name}
-    or stdenv'.hostPlatform.parsed.cpu.name;
+      MACHINE_ARCH =
+        {
+          i486 = "i386";
+          i586 = "i386";
+          i686 = "i386";
+        }
+        .${stdenv'.hostPlatform.parsed.cpu.name} or stdenv'.hostPlatform.parsed.cpu.name;
 
-  MACHINE = {
-    x86_64 = "amd64";
-    aarch64 = "evbarm64";
-    i486 = "i386";
-    i586 = "i386";
-    i686 = "i386";
-  }.${stdenv'.hostPlatform.parsed.cpu.name}
-    or stdenv'.hostPlatform.parsed.cpu.name;
+      MACHINE =
+        {
+          x86_64 = "amd64";
+          aarch64 = "evbarm64";
+          i486 = "i386";
+          i586 = "i386";
+          i686 = "i386";
+        }
+        .${stdenv'.hostPlatform.parsed.cpu.name} or stdenv'.hostPlatform.parsed.cpu.name;
 
-  COMPONENT_PATH = attrs.path;
+      COMPONENT_PATH = attrs.path;
 
-  makeFlags = defaultMakeFlags;
+      makeFlags = defaultMakeFlags;
 
-  strictDeps = true;
+      strictDeps = true;
 
-  meta = with lib; {
-    maintainers = with maintainers; [ matthewbauer qyliss ];
-    platforms = platforms.unix;
-    license = licenses.bsd2;
-  };
-
-} // lib.optionalAttrs stdenv'.hasCC {
-  # TODO should CC wrapper set this?
-  CPP = "${stdenv'.cc.targetPrefix}cpp";
-} // lib.optionalAttrs stdenv'.isDarwin {
-  MKRELRO = "no";
-} // lib.optionalAttrs (stdenv'.cc.isClang or false) {
-  HAVE_LLVM = lib.versions.major (lib.getVersion stdenv'.cc.cc);
-} // lib.optionalAttrs (stdenv'.cc.isGNU or false) {
-  HAVE_GCC = lib.versions.major (lib.getVersion stdenv'.cc.cc);
-} // lib.optionalAttrs (stdenv'.isx86_32) {
-  USE_SSP = "no";
-} // lib.optionalAttrs (attrs.headersOnly or false) {
-  installPhase = "includesPhase";
-  dontBuild = true;
-} // attrs // {
-  # Files that use NetBSD-specific macros need to have nbtool_config.h
-  # included ahead of them on non-NetBSD platforms.
-  postPatch = lib.optionalString (!stdenv'.hostPlatform.isNetBSD) ''
-    set +e
-    grep -Zlr "^__RCSID
-    ^__BEGIN_DECLS" $COMPONENT_PATH | xargs -0r grep -FLZ nbtool_config.h |
-        xargs -0tr sed -i '0,/^#/s//#include <nbtool_config.h>\n\0/'
-    set -e
-  '' + attrs.postPatch or "";
-}))
+      meta = with lib; {
+        maintainers = with maintainers; [
+          matthewbauer
+          qyliss
+        ];
+        platforms = platforms.unix;
+        license = licenses.bsd2;
+      };
+    }
+    // lib.optionalAttrs stdenv'.hasCC {
+      # TODO should CC wrapper set this?
+      CPP = "${stdenv'.cc.targetPrefix}cpp";
+    }
+    // lib.optionalAttrs stdenv'.isDarwin { MKRELRO = "no"; }
+    // lib.optionalAttrs (stdenv'.cc.isClang or false) {
+      HAVE_LLVM = lib.versions.major (lib.getVersion stdenv'.cc.cc);
+    }
+    // lib.optionalAttrs (stdenv'.cc.isGNU or false) {
+      HAVE_GCC = lib.versions.major (lib.getVersion stdenv'.cc.cc);
+    }
+    // lib.optionalAttrs (stdenv'.isx86_32) { USE_SSP = "no"; }
+    // lib.optionalAttrs (attrs.headersOnly or false) {
+      installPhase = "includesPhase";
+      dontBuild = true;
+    }
+    // attrs
+    // {
+      # Files that use NetBSD-specific macros need to have nbtool_config.h
+      # included ahead of them on non-NetBSD platforms.
+      postPatch =
+        lib.optionalString (!stdenv'.hostPlatform.isNetBSD) ''
+          set +e
+          grep -Zlr "^__RCSID
+          ^__BEGIN_DECLS" $COMPONENT_PATH | xargs -0r grep -FLZ nbtool_config.h |
+              xargs -0tr sed -i '0,/^#/s//#include <nbtool_config.h>\n\0/'
+          set -e
+        ''
+        + attrs.postPatch or "";
+    }
+  )
+)
diff --git a/pkgs/os-specific/bsd/netbsd/pkgs/nbperf.nix b/pkgs/os-specific/bsd/netbsd/pkgs/nbperf.nix
index 02ce7cf6ce5e..a23c5dddfc9f 100644
--- a/pkgs/os-specific/bsd/netbsd/pkgs/nbperf.nix
+++ b/pkgs/os-specific/bsd/netbsd/pkgs/nbperf.nix
@@ -5,4 +5,3 @@ mkDerivation {
   version = "9.2";
   sha256 = "1nxc302vgmjhm3yqdivqyfzslrg0vjpbss44s74rcryrl19mma9r";
 }
-
diff --git a/pkgs/os-specific/bsd/netbsd/pkgs/netbsdSetupHook/package.nix b/pkgs/os-specific/bsd/netbsd/pkgs/netbsdSetupHook/package.nix
index e80571f2bf9a..31368523ee6f 100644
--- a/pkgs/os-specific/bsd/netbsd/pkgs/netbsdSetupHook/package.nix
+++ b/pkgs/os-specific/bsd/netbsd/pkgs/netbsdSetupHook/package.nix
@@ -1,5 +1,3 @@
 { makeSetupHook }:
 
-makeSetupHook {
-    name = "netbsd-setup-hook";
-  } ./setup-hook.sh
+makeSetupHook { name = "netbsd-setup-hook"; } ./setup-hook.sh
diff --git a/pkgs/os-specific/bsd/netbsd/pkgs/netbsdSetupHook/setup-hook.sh b/pkgs/os-specific/bsd/netbsd/pkgs/netbsdSetupHook/setup-hook.sh
index fa8b19e7d8ce..ef00ea418e53 100644
--- a/pkgs/os-specific/bsd/netbsd/pkgs/netbsdSetupHook/setup-hook.sh
+++ b/pkgs/os-specific/bsd/netbsd/pkgs/netbsdSetupHook/setup-hook.sh
@@ -9,6 +9,7 @@ mergeNetBSDSourceDir() {
 
 addNetBSDMakeFlags() {
   makeFlags="INCSDIR=${!outputDev}/include $makeFlags"
+  makeFlags="MANDIR=${!outputMan}/share/man $makeFlags"
 }
 
 postUnpackHooks+=(mergeNetBSDSourceDir)
diff --git a/pkgs/os-specific/bsd/netbsd/pkgs/stat/hook.nix b/pkgs/os-specific/bsd/netbsd/pkgs/stat/hook.nix
index 78186f55cd45..e38c53a3aac5 100644
--- a/pkgs/os-specific/bsd/netbsd/pkgs/stat/hook.nix
+++ b/pkgs/os-specific/bsd/netbsd/pkgs/stat/hook.nix
@@ -1,4 +1,8 @@
-{ makeSetupHook, writeText, stat }:
+{
+  makeSetupHook,
+  writeText,
+  stat,
+}:
 
 # stat isn't in POSIX, and NetBSD stat supports a completely
 # different range of flags than GNU stat, so including it in PATH
@@ -6,9 +10,8 @@
 # NetBSD's build system and NetBSD stat without including it in
 # PATH.
 
-makeSetupHook {
-  name = "netbsd-stat-hook";
-} (writeText "netbsd-stat-hook-impl" ''
-  makeFlagsArray+=(TOOL_STAT=${stat}/bin/stat)
-'')
-
+makeSetupHook { name = "netbsd-stat-hook"; } (
+  writeText "netbsd-stat-hook-impl" ''
+    makeFlagsArray+=(TOOL_STAT=${stat}/bin/stat)
+  ''
+)
diff --git a/pkgs/os-specific/bsd/netbsd/pkgs/stat/package.nix b/pkgs/os-specific/bsd/netbsd/pkgs/stat/package.nix
index fa4d5cb3e21f..397b1f5303c1 100644
--- a/pkgs/os-specific/bsd/netbsd/pkgs/stat/package.nix
+++ b/pkgs/os-specific/bsd/netbsd/pkgs/stat/package.nix
@@ -1,7 +1,12 @@
-{ mkDerivation
-, bsdSetupHook, netbsdSetupHook
-, makeMinimal
-, install, mandoc, groff, rsync
+{
+  mkDerivation,
+  bsdSetupHook,
+  netbsdSetupHook,
+  makeMinimal,
+  install,
+  mandoc,
+  groff,
+  rsync,
 }:
 
 # Don't add this to nativeBuildInputs directly.
@@ -12,8 +17,12 @@ mkDerivation {
   version = "9.2";
   sha256 = "18nqwlndfc34qbbgqx5nffil37jfq9aw663ippasfxd2hlyc106x";
   nativeBuildInputs = [
-    bsdSetupHook netbsdSetupHook
+    bsdSetupHook
+    netbsdSetupHook
     makeMinimal
-    install mandoc groff rsync
+    install
+    mandoc
+    groff
+    rsync
   ];
 }
diff --git a/pkgs/os-specific/bsd/netbsd/pkgs/sys/base.nix b/pkgs/os-specific/bsd/netbsd/pkgs/sys/base.nix
index ba458ef5c712..4c140fa3bdef 100644
--- a/pkgs/os-specific/bsd/netbsd/pkgs/sys/base.nix
+++ b/pkgs/os-specific/bsd/netbsd/pkgs/sys/base.nix
@@ -1,9 +1,20 @@
-{ lib, mkDerivation
-, include
-, bsdSetupHook, netbsdSetupHook
-, makeMinimal, install, tsort, lorder, statHook, rsync, uudecode, config, genassym
-, defaultMakeFlags
-, common
+{
+  lib,
+  mkDerivation,
+  include,
+  bsdSetupHook,
+  netbsdSetupHook,
+  makeMinimal,
+  install,
+  tsort,
+  lorder,
+  statHook,
+  rsync,
+  uudecode,
+  config,
+  genassym,
+  defaultMakeFlags,
+  common,
 }:
 {
   path = "sys";
@@ -29,23 +40,34 @@
     ''
       substituteInPlace sys/arch/i386/stand/efiboot/Makefile.efiboot \
         --replace "-nocombreloc" "-z nocombreloc"
-    '' +
-    # multiple header dirs, see above
-    include.postPatch;
+    ''
+    +
+      # multiple header dirs, see above
+      include.postPatch;
 
   CONFIG = "GENERIC";
 
   propagatedBuildInputs = [ include ];
   nativeBuildInputs = [
-    bsdSetupHook netbsdSetupHook
-    makeMinimal install tsort lorder statHook rsync uudecode config genassym
+    bsdSetupHook
+    netbsdSetupHook
+    makeMinimal
+    install
+    tsort
+    lorder
+    statHook
+    rsync
+    uudecode
+    config
+    genassym
   ];
 
-  postConfigure = ''
-    pushd arch/$MACHINE/conf
-    config $CONFIG
-    popd
-  ''
+  postConfigure =
+    ''
+      pushd arch/$MACHINE/conf
+      config $CONFIG
+      popd
+    ''
     # multiple header dirs, see above
     + include.postConfigure;
 
@@ -68,5 +90,4 @@
 
   meta.platforms = lib.platforms.netbsd;
   extraPaths = [ common ];
-
 }
diff --git a/pkgs/os-specific/bsd/netbsd/pkgs/sys/headers.nix b/pkgs/os-specific/bsd/netbsd/pkgs/sys/headers.nix
index a3f20d772a3e..2df35efc199a 100644
--- a/pkgs/os-specific/bsd/netbsd/pkgs/sys/headers.nix
+++ b/pkgs/os-specific/bsd/netbsd/pkgs/sys/headers.nix
@@ -1,21 +1,49 @@
-{ lib, mkDerivation
-, include
-, bsdSetupHook, netbsdSetupHook
-, makeMinimal, install, tsort, lorder, statHook, rsync, uudecode, config, genassym
-, defaultMakeFlags
-, common
+{
+  lib,
+  mkDerivation,
+  include,
+  bsdSetupHook,
+  netbsdSetupHook,
+  makeMinimal,
+  install,
+  tsort,
+  lorder,
+  statHook,
+  rsync,
+  uudecode,
+  config,
+  genassym,
+  defaultMakeFlags,
+  common,
 }:
 let
   base = import ./base.nix {
     inherit
-      lib mkDerivation include bsdSetupHook netbsdSetupHook makeMinimal install
-      tsort lorder statHook rsync uudecode config genassym defaultMakeFlags
-      common;
+      lib
+      mkDerivation
+      include
+      bsdSetupHook
+      netbsdSetupHook
+      makeMinimal
+      install
+      tsort
+      lorder
+      statHook
+      rsync
+      uudecode
+      config
+      genassym
+      defaultMakeFlags
+      common
+      ;
   };
 in
-  mkDerivation (base // {
+mkDerivation (
+  base
+  // {
     pname = "sys-headers";
     installPhase = "includesPhase";
     dontBuild = true;
     noCC = true;
-  })
+  }
+)
diff --git a/pkgs/os-specific/bsd/netbsd/pkgs/sys/package.nix b/pkgs/os-specific/bsd/netbsd/pkgs/sys/package.nix
index 87031a50346e..c8e6edab5f48 100644
--- a/pkgs/os-specific/bsd/netbsd/pkgs/sys/package.nix
+++ b/pkgs/os-specific/bsd/netbsd/pkgs/sys/package.nix
@@ -1,21 +1,49 @@
-{ lib, mkDerivation
-, include
-, bsdSetupHook, netbsdSetupHook
-, makeMinimal, install, tsort, lorder, statHook, rsync, uudecode, config, genassym
-, defaultMakeFlags
-, common
+{
+  lib,
+  mkDerivation,
+  include,
+  bsdSetupHook,
+  netbsdSetupHook,
+  makeMinimal,
+  install,
+  tsort,
+  lorder,
+  statHook,
+  rsync,
+  uudecode,
+  config,
+  genassym,
+  defaultMakeFlags,
+  common,
 }:
 let
   base = import ./base.nix {
     inherit
-      lib mkDerivation include bsdSetupHook netbsdSetupHook makeMinimal install
-      tsort lorder statHook rsync uudecode config genassym defaultMakeFlags
-      common;
+      lib
+      mkDerivation
+      include
+      bsdSetupHook
+      netbsdSetupHook
+      makeMinimal
+      install
+      tsort
+      lorder
+      statHook
+      rsync
+      uudecode
+      config
+      genassym
+      defaultMakeFlags
+      common
+      ;
   };
 in
-  mkDerivation (base // {
+mkDerivation (
+  base
+  // {
     pname = "sys";
     installPhase = null;
     noCC = false;
     dontBuild = false;
-  })
+  }
+)
diff --git a/pkgs/os-specific/bsd/netbsd/pkgs/tic.nix b/pkgs/os-specific/bsd/netbsd/pkgs/tic.nix
index 2a7e3644b6be..e0900652108f 100644
--- a/pkgs/os-specific/bsd/netbsd/pkgs/tic.nix
+++ b/pkgs/os-specific/bsd/netbsd/pkgs/tic.nix
@@ -1,11 +1,17 @@
-{ mkDerivation
-, bsdSetupHook, netbsdSetupHook
-, makeMinimal
-, install, mandoc, groff, nbperf, rsync
-, compatIfNeeded
-, defaultMakeFlags
-, libterminfo
-, fetchNetBSD
+{
+  mkDerivation,
+  bsdSetupHook,
+  netbsdSetupHook,
+  makeMinimal,
+  install,
+  mandoc,
+  groff,
+  nbperf,
+  rsync,
+  compatIfNeeded,
+  defaultMakeFlags,
+  libterminfo,
+  fetchNetBSD,
 }:
 
 mkDerivation {
@@ -15,9 +21,14 @@ mkDerivation {
   HOSTPROG = "tic";
   buildInputs = compatIfNeeded;
   nativeBuildInputs = [
-    bsdSetupHook netbsdSetupHook
+    bsdSetupHook
+    netbsdSetupHook
     makeMinimal
-    install mandoc groff nbperf rsync
+    install
+    mandoc
+    groff
+    nbperf
+    rsync
   ];
   makeFlags = defaultMakeFlags ++ [ "TOOLDIR=$(out)" ];
   extraPaths = [
diff --git a/pkgs/os-specific/bsd/netbsd/pkgs/tsort.nix b/pkgs/os-specific/bsd/netbsd/pkgs/tsort.nix
index 334eccc64c55..9200bc57a73e 100644
--- a/pkgs/os-specific/bsd/netbsd/pkgs/tsort.nix
+++ b/pkgs/os-specific/bsd/netbsd/pkgs/tsort.nix
@@ -1,7 +1,12 @@
-{ mkDerivation
-, bsdSetupHook, netbsdSetupHook
-, makeMinimal
-, install, mandoc, groff, rsync
+{
+  mkDerivation,
+  bsdSetupHook,
+  netbsdSetupHook,
+  makeMinimal,
+  install,
+  mandoc,
+  groff,
+  rsync,
 }:
 
 mkDerivation {
@@ -9,8 +14,12 @@ mkDerivation {
   version = "9.2";
   sha256 = "1dqvf9gin29nnq3c4byxc7lfd062pg7m84843zdy6n0z63hnnwiq";
   nativeBuildInputs = [
-    bsdSetupHook netbsdSetupHook
+    bsdSetupHook
+    netbsdSetupHook
     makeMinimal
-    install mandoc groff rsync
+    install
+    mandoc
+    groff
+    rsync
   ];
 }
diff --git a/pkgs/os-specific/bsd/netbsd/pkgs/uudecode.nix b/pkgs/os-specific/bsd/netbsd/pkgs/uudecode.nix
index dac9674f9d6f..7592db3eaf18 100644
--- a/pkgs/os-specific/bsd/netbsd/pkgs/uudecode.nix
+++ b/pkgs/os-specific/bsd/netbsd/pkgs/uudecode.nix
@@ -1,4 +1,8 @@
-{ lib, mkDerivation, stdenv }:
+{
+  lib,
+  mkDerivation,
+  stdenv,
+}:
 
 mkDerivation {
   path = "usr.bin/uudecode";
@@ -7,4 +11,3 @@ mkDerivation {
   env.NIX_CFLAGS_COMPILE = lib.optionalString stdenv.isLinux "-DNO_BASE64";
   NIX_LDFLAGS = lib.optional stdenv.isDarwin "-lresolv";
 }
-
diff --git a/pkgs/os-specific/bsd/setup-hook.sh b/pkgs/os-specific/bsd/setup-hook.sh
index e0afefcd73f7..f9453708ab5d 100644
--- a/pkgs/os-specific/bsd/setup-hook.sh
+++ b/pkgs/os-specific/bsd/setup-hook.sh
@@ -49,7 +49,6 @@ addMakeFlags() {
   makeFlags="LIBDIR=${!outputLib}/lib $makeFlags"
   makeFlags="SHLIBDIR=${!outputLib}/lib $makeFlags"
   makeFlags="SHAREDIR=${!outputLib}/share $makeFlags"
-  makeFlags="MANDIR=${!outputMan}/share/man $makeFlags"
   makeFlags="INFODIR=${!outputInfo}/share/info $makeFlags"
   makeFlags="DOCDIR=${!outputDoc}/share/doc $makeFlags"
   makeFlags="LOCALEDIR=${!outputLib}/share/locale $makeFlags"
diff --git a/pkgs/os-specific/darwin/apple-source-releases/default.nix b/pkgs/os-specific/darwin/apple-source-releases/default.nix
index 1bd574fe46a4..d44e67ac5969 100644
--- a/pkgs/os-specific/darwin/apple-source-releases/default.nix
+++ b/pkgs/os-specific/darwin/apple-source-releases/default.nix
@@ -11,7 +11,6 @@ let
     };
     "osx-10.12.6" = {
       xnu           = "3789.70.16";
-      libiconv      = "50";
       Libnotify     = "165.20.1";
       objc4         = "709.1";
       dyld          = "433.5";
@@ -38,7 +37,6 @@ let
       dtrace        = "168";
       xnu           = "3248.60.10";
       libpthread    = "138.10.4";
-      libiconv      = "44";
       Libnotify     = "150.40.1";
       objc4         = "680";
       eap8021x      = "222.40.1";
@@ -272,7 +270,6 @@ developerToolsPackages_11_3_1 // macosPackages_11_0_1 // {
     };
     libclosure      = applePackage "libclosure"        "osx-10.11.6"     "sha256-L5rQ+UBpf3B+W1U+gZKk7fXulslHsc8lxnCsplV+nr0=" {};
     libdispatch     = applePackage "libdispatch"       "osx-10.10.5"     "sha256-jfAEk0OLrJa9AIZVikIoHomd+l+4rCfc320Xh50qK5M=" {};
-    libiconv        = applePackage "libiconv"          "osx-10.12.6"     "sha256-ZzPFkchK3EU95UQUVVrR0t8iilhi/VnIkjjtP6KT2oI=" {};
     Libinfo         = applePackage "Libinfo"           "osx-10.11.6"     "sha256-6F7wiwerv4nz/xXHtp1qCHSaFzZgzcRN+jbmXA5oWOQ=" {};
     Libm            = applePackage "Libm"              "osx-10.7.4"      "sha256-KjMETfT4qJm0m0Ux/F6Rq8bI4Q4UVnFx6IKbKxXd+Es=" {};
     Libnotify       = applePackage "Libnotify"         "osx-10.12.6"     "sha256-6wvMBxAUfiYcQtmlfYCj1d3kFmFM/jdboTd7hRvi3e4=" {};
diff --git a/pkgs/os-specific/darwin/apple-source-releases/libiconv/default.nix b/pkgs/os-specific/darwin/apple-source-releases/libiconv/default.nix
deleted file mode 100644
index 6a3bddc211e9..000000000000
--- a/pkgs/os-specific/darwin/apple-source-releases/libiconv/default.nix
+++ /dev/null
@@ -1,38 +0,0 @@
-{ stdenv, appleDerivation, lib
-, enableStatic ? stdenv.hostPlatform.isStatic
-, enableShared ? !stdenv.hostPlatform.isStatic
-}:
-
-appleDerivation {
-  postUnpack = "sourceRoot=$sourceRoot/libiconv";
-
-  preConfigure = lib.optionalString stdenv.hostPlatform.isiOS ''
-    sed -i 's/darwin\*/ios\*/g' configure libcharset/configure
-  '';
-
-  configureFlags = [
-    (lib.enableFeature enableStatic "static")
-    (lib.enableFeature enableShared "shared")
-  ];
-
-  postInstall = lib.optionalString enableShared ''
-    mv $out/lib/libiconv.dylib $out/lib/libiconv-nocharset.dylib
-    ${stdenv.cc.bintools.targetPrefix}install_name_tool -id $out/lib/libiconv-nocharset.dylib $out/lib/libiconv-nocharset.dylib
-
-    # re-export one useless symbol; ld will reject a dylib that only reexports other dylibs
-    echo 'void dont_use_this(){}' | ${stdenv.cc.bintools.targetPrefix}clang -dynamiclib -x c - -current_version 2.4.0 \
-      -compatibility_version 7.0.0 -current_version 7.0.0 -o $out/lib/libiconv.dylib \
-      -Wl,-reexport_library -Wl,$out/lib/libiconv-nocharset.dylib \
-      -Wl,-reexport_library -Wl,$out/lib/libcharset.dylib
-  '';
-
-  setupHooks = [
-    ../../../../build-support/setup-hooks/role.bash
-    ../../../../development/libraries/libiconv/setup-hook.sh
-  ];
-
-  meta = {
-    mainProgram = "iconv";
-    platforms = lib.platforms.darwin;
-  };
-}
diff --git a/pkgs/os-specific/darwin/apple-source-releases/macos-11.0.1.nix b/pkgs/os-specific/darwin/apple-source-releases/macos-11.0.1.nix
index b4a7bbc4df24..2de90a023676 100644
--- a/pkgs/os-specific/darwin/apple-source-releases/macos-11.0.1.nix
+++ b/pkgs/os-specific/darwin/apple-source-releases/macos-11.0.1.nix
@@ -27,7 +27,6 @@ file_cmds = applePackage' "file_cmds" "321.40.3" "macos-11.0.1" "0p077lnbcy8266m
 hfs = applePackage' "hfs" "556.41.1" "macos-11.0.1" "0a0s6b12b0q07wslfifna0bj51dml9v098i4crr2m1vivnx4xj75" {};
 libclosure = applePackage' "libclosure" "78" "macos-11.0.1" "0vf9n0k3m8dbprv1bf45zqg0g43bidy2i5z1v9a826bsf8lv7am7" {};
 libdispatch = applePackage' "libdispatch" "1271.40.12" "macos-11.0.1" "1ck5srcjapg18vqb8wl08gacs7ndc6xr067qjn3ngx39q1jdcywz" {};
-libiconv = applePackage' "libiconv" "59" "macos-11.0.1" "0lwa4brdwm4lvrdnxylzsn1yph4m7csgri2zkc4xb4xiisz32pwp" {};
 libmalloc = applePackage' "libmalloc" "317.40.8" "macos-11.0.1" "sha256-Tdhb0mq3w4Hwvp3xHB79Vr22hCOQK6h28HCsd7jvITI=" {};
 libplatform = applePackage' "libplatform" "254.40.4" "macos-11.0.1" "1qf3ri0yd8b1xjln1j1gyx7ks6k3a2jhd63blyvfby75y9s7flky" {};
 libpthread = applePackage' "libpthread" "454.40.3" "macos-11.0.1" "0zljbw8mpb80n1if65hhi9lkgwbgjr8vc9wvf7q1nl3mzyl35f8p" {};
diff --git a/pkgs/os-specific/darwin/apple-source-releases/system_cmds/meson.build b/pkgs/os-specific/darwin/apple-source-releases/system_cmds/meson.build
index de73e88f5d4d..af08b5074bef 100644
--- a/pkgs/os-specific/darwin/apple-source-releases/system_cmds/meson.build
+++ b/pkgs/os-specific/darwin/apple-source-releases/system_cmds/meson.build
@@ -88,6 +88,7 @@ install_man('accton/accton.8')
 executable(
     'arch',
     build_by_default : sdk_version.version_compare('>=11'),
+    dependencies : [ core_foundation ],
     install : sdk_version.version_compare('>=11'),
     sources : 'arch/arch.c'
 )
@@ -145,7 +146,7 @@ install_man('chkpasswd/chkpasswd.8')
 
 executable(
     'chpass',
-    dependencies : [ cfopen_directory, directory_service, open_directory ],
+    dependencies : [ core_foundation, cfopen_directory, directory_service, open_directory ],
     install : true,
     sources : [
         'chpass/chpass.c',
@@ -358,7 +359,7 @@ install_man(
 executable(
     'nvram',
     c_args : '-DTARGET_OS_BRIDGE=0',
-    dependencies : [ iokit, libc_private, xnu_private ],
+    dependencies : [ core_foundation, iokit, libc_private, xnu_private ],
     install : true,
     sources : 'nvram/nvram.c'
 )
@@ -377,7 +378,7 @@ install_man('pagesize/pagesize.1')
 
 executable(
     'passwd',
-    dependencies : [ cfopen_directory, directory_service, open_directory, pam ],
+    dependencies : [ core_foundation, cfopen_directory, directory_service, open_directory, pam ],
     install : true,
     sources : [
         'passwd/file_passwd.c',
@@ -521,7 +522,7 @@ executable(
     'zlog',
     build_by_default : sdk_version.version_compare('>=11'),
     c_args : '-DKERN_NOT_FOUND=56',
-    dependencies : core_symbolication,
+    dependencies : [ core_foundation, core_symbolication ],
     install : sdk_version.version_compare('>=11'),
     sources : [
         'zlog/SymbolicationHelper.c',
diff --git a/pkgs/os-specific/darwin/openwith/default.nix b/pkgs/os-specific/darwin/openwith/default.nix
index eb78f7a1344c..d28ed4942821 100644
--- a/pkgs/os-specific/darwin/openwith/default.nix
+++ b/pkgs/os-specific/darwin/openwith/default.nix
@@ -1,6 +1,7 @@
-{ lib, stdenv, fetchFromGitHub, swift, AppKit, Foundation, UniformTypeIdentifiers }:
+{ lib, swiftPackages, fetchFromGitHub }:
 
 let
+  inherit (swiftPackages) apple_sdk stdenv swift;
   arch = if stdenv.isAarch64 then "arm64" else "x86_64";
 in
 stdenv.mkDerivation rec {
@@ -16,7 +17,7 @@ stdenv.mkDerivation rec {
 
   nativeBuildInputs = [ swift ];
 
-  buildInputs = [ AppKit Foundation UniformTypeIdentifiers ];
+  buildInputs = with apple_sdk.frameworks; [ AppKit Foundation UniformTypeIdentifiers ];
 
   makeFlags = [ "openwith_${arch}" ];
 
@@ -32,6 +33,5 @@ stdenv.mkDerivation rec {
     license = licenses.unlicense;
     maintainers = with maintainers; [ zowoq ];
     platforms = [ "aarch64-darwin" "x86_64-darwin" ];
-    broken = stdenv.isx86_64; # https://hydra.nixos.org/build/219354133/nixlog/3
   };
 }
diff --git a/pkgs/os-specific/darwin/raycast/default.nix b/pkgs/os-specific/darwin/raycast/default.nix
index b6626c4d4ead..da73099da861 100644
--- a/pkgs/os-specific/darwin/raycast/default.nix
+++ b/pkgs/os-specific/darwin/raycast/default.nix
@@ -10,12 +10,12 @@
 
 stdenvNoCC.mkDerivation (finalAttrs: {
   pname = "raycast";
-  version = "1.72.0";
+  version = "1.74.0";
 
   src = fetchurl {
     name = "Raycast.dmg";
     url = "https://releases.raycast.com/releases/${finalAttrs.version}/download?build=universal";
-    hash = "sha256-L6CXWRmBfit+uWODEWt7u71shFAadPOqtNifMnSp0BU=";
+    hash = "sha256-aPpxPjEhy1uLekHMLyI18mlSozffMA+HB1OdqpULVnw=";
   };
 
   dontPatch = true;
diff --git a/pkgs/os-specific/darwin/rectangle/default.nix b/pkgs/os-specific/darwin/rectangle/default.nix
index ca83bb7db4c0..af7bb58e54a1 100644
--- a/pkgs/os-specific/darwin/rectangle/default.nix
+++ b/pkgs/os-specific/darwin/rectangle/default.nix
@@ -7,11 +7,11 @@
 
 stdenvNoCC.mkDerivation rec {
   pname = "rectangle";
-  version = "0.77";
+  version = "0.79";
 
   src = fetchurl {
     url = "https://github.com/rxhanson/Rectangle/releases/download/v${version}/Rectangle${version}.dmg";
-    hash = "sha256-wViFngw6iwlOG7KsW+zqxjm9ZRJahscX0TYz7/7T5nw=";
+    hash = "sha256-XczwgLONTt7wL+oW1ruw6wBwZTMd5VyN+79xJy0NUIg=";
   };
 
   sourceRoot = ".";
diff --git a/pkgs/os-specific/darwin/utm/default.nix b/pkgs/os-specific/darwin/utm/default.nix
index 50f84a254dfc..4915b9b54d78 100644
--- a/pkgs/os-specific/darwin/utm/default.nix
+++ b/pkgs/os-specific/darwin/utm/default.nix
@@ -7,11 +7,11 @@
 
 stdenvNoCC.mkDerivation rec {
   pname = "utm";
-  version = "4.4.5";
+  version = "4.5.2";
 
   src = fetchurl {
     url = "https://github.com/utmapp/UTM/releases/download/v${version}/UTM.dmg";
-    hash = "sha256-FlIPSWqY2V1akd/InS6BPEBfc8pomJ8jgDns7wvaOm8=";
+    hash = "sha256-pBRmtHXnw9BoFeaCCokk5hulChdEFl9dENbL8zzXMzs=";
   };
 
   nativeBuildInputs = [ undmg makeWrapper ];
@@ -57,7 +57,7 @@ stdenvNoCC.mkDerivation rec {
       See https://docs.getutm.app/ for more information.
     '';
     homepage = "https://mac.getutm.app/";
-    changelog = "https://github.com/utmapp/${pname}/releases/tag/v${version}";
+    changelog = "https://github.com/utmapp/utm/releases/tag/v${version}";
     mainProgram = "UTM";
     license = licenses.asl20;
     platforms = platforms.darwin; # 11.3 is the minimum supported version as of UTM 4.
diff --git a/pkgs/os-specific/linux/batman-adv/version.nix b/pkgs/os-specific/linux/batman-adv/version.nix
index 545285a6cf42..6292552dd554 100644
--- a/pkgs/os-specific/linux/batman-adv/version.nix
+++ b/pkgs/os-specific/linux/batman-adv/version.nix
@@ -1,16 +1,16 @@
 {
-  version = "2024.0";
+  version = "2024.1";
 
   # To get these, run:
   #
   # ```
   # for tool in alfred batctl batman-adv; do
-  #   nix-prefetch-url https://downloads.open-mesh.org/batman/releases/batman-adv-2024.0/$tool-2024.0.tar.gz --type sha256 | xargs nix hash to-sri --type sha256
+  #   nix-prefetch-url https://downloads.open-mesh.org/batman/releases/batman-adv-2024.1/$tool-2024.1.tar.gz --type sha256 | xargs nix hash to-sri --type sha256
   # done
   # ```
   sha256 = {
-    alfred = "sha256-0CmkNjirFnceX3HhNLyEPRcT10BBxlvNoYox0Y9VMb0=";
-    batctl = "sha256-doU+hyAa9jxBHbFS/QxiWnKalzMRWJfRMxYE4sWmfH0=";
-    batman-adv = "sha256-YREGl7V5n2RqKoKk3Pl/rtS7EqfMQ79Gg9LE3k9rQOc=";
+    alfred = "sha256-Ji2tOcm+EirH8GFwXIo+O21GJ4K74zcubfyazgw4Tbk=";
+    batctl = "sha256-aD3anWBU6yYKGsACLGQnmP9ASNbFOmcuoLMXjmt1egk=";
+    batman-adv = "sha256-pxQynGJR9IMOnPA/U8v7IoDwZ4RxtUxdRvrmGngtQyU=";
   };
 }
diff --git a/pkgs/os-specific/linux/cpupower-gui/default.nix b/pkgs/os-specific/linux/cpupower-gui/default.nix
index 02a781d1f0cf..754f8e139615 100644
--- a/pkgs/os-specific/linux/cpupower-gui/default.nix
+++ b/pkgs/os-specific/linux/cpupower-gui/default.nix
@@ -19,7 +19,7 @@
 , pygobject3
 , pyxdg
 , systemd
-, wrapGAppsHook
+, wrapGAppsHook3
 }:
 
 buildPythonApplication rec {
@@ -55,7 +55,7 @@ buildPythonApplication rec {
     meson
     ninja
     pkg-config
-    wrapGAppsHook
+    wrapGAppsHook3
 
     # Python packages
     dbus-python
diff --git a/pkgs/os-specific/linux/cryptodev/default.nix b/pkgs/os-specific/linux/cryptodev/default.nix
index cacef99afd74..bb3c0cdd3891 100644
--- a/pkgs/os-specific/linux/cryptodev/default.nix
+++ b/pkgs/os-specific/linux/cryptodev/default.nix
@@ -1,4 +1,10 @@
-{ fetchFromGitHub, lib, stdenv, kernel ? false }:
+{
+  lib,
+  stdenv,
+  fetchFromGitHub,
+  fetchpatch,
+  kernel ? false,
+}:
 
 stdenv.mkDerivation rec {
   pname = "cryptodev-linux-1.13";
@@ -11,6 +17,13 @@ stdenv.mkDerivation rec {
     hash = "sha256-EzTPoKYa+XWOAa/Dk7ru02JmlymHeXVX7RMmEoJ1OT0=";
   };
 
+  patches = [
+    (fetchpatch {
+      url = "https://github.com/cryptodev-linux/cryptodev-linux/compare/cryptodev-linux-1.13...5e7121e45ff283d30097da381fd7e97c4bb61364.patch";
+      hash = "sha256-GLWpiInBrUcVhpvEjTmD5KLCrrFZnlJGnmLU0QYz+4A=";
+    })
+  ];
+
   nativeBuildInputs = kernel.moduleBuildDependencies;
   hardeningDisable = [ "pic" ];
 
diff --git a/pkgs/os-specific/linux/ddcci/default.nix b/pkgs/os-specific/linux/ddcci/default.nix
index ce435b3874f3..4d1c9bd93558 100644
--- a/pkgs/os-specific/linux/ddcci/default.nix
+++ b/pkgs/os-specific/linux/ddcci/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetchFromGitLab, kernel }:
+{ lib, stdenv, fetchFromGitLab, kernel, fetchpatch }:
 
 stdenv.mkDerivation rec {
   pname = "ddcci-driver";
@@ -12,6 +12,15 @@ stdenv.mkDerivation rec {
     hash = "sha256-4pCfXJcteWwU6cK8OOSph4XlhKTk289QqLxsSWY7cac=";
   };
 
+  patches = [
+    # See https://gitlab.com/ddcci-driver-linux/ddcci-driver-linux/-/merge_requests/15
+    (fetchpatch {
+      name = "fix-build-with-linux68.patch";
+      url = "https://gitlab.com/ddcci-driver-linux/ddcci-driver-linux/-/commit/3eb20df68a545d07b8501f13fa9d20e9c6f577ed.patch";
+      hash = "sha256-Y1ktYaJTd9DtT/mwDqtjt/YasW9cVm0wI43wsQhl7Bg=";
+    })
+  ];
+
   hardeningDisable = [ "pic" ];
 
   nativeBuildInputs = kernel.moduleBuildDependencies;
@@ -36,7 +45,7 @@ stdenv.mkDerivation rec {
     description = "Kernel module driver for DDC/CI monitors";
     homepage = "https://gitlab.com/ddcci-driver-linux/ddcci-driver-linux";
     license = licenses.gpl2Plus;
-    maintainers = with maintainers; [ ];
+    maintainers = with maintainers; [ kiike ];
     platforms = platforms.linux;
     broken = kernel.kernelOlder "5.1";
   };
diff --git a/pkgs/os-specific/linux/digimend/default.nix b/pkgs/os-specific/linux/digimend/default.nix
index 11756dcbe85c..a30d7cbe3a32 100644
--- a/pkgs/os-specific/linux/digimend/default.nix
+++ b/pkgs/os-specific/linux/digimend/default.nix
@@ -1,14 +1,19 @@
-{ lib, stdenv, fetchFromGitHub, kernel }:
+{
+  lib,
+  stdenv,
+  fetchFromGitHub,
+  kernel,
+}:
 
 stdenv.mkDerivation rec {
   pname = "digimend";
-  version = "unstable-2023-05-03";
+  version = "13";
 
   src = fetchFromGitHub {
     owner = "digimend";
     repo = "digimend-kernel-drivers";
-    rev = "eca6e1b701bffb80a293234a485ebf6b4bc85562";
-    hash = "sha256-0mjIUgHvbNcVQVzU3xzaloe5R41a4eknDhdhruJH+6c=";
+    rev = "v${version}";
+    hash = "sha256-YYCxTyoZGMnqC2nKkRi5Z1uofldGvJDGY2/sO9iMNIo=";
   };
 
   postPatch = ''
diff --git a/pkgs/os-specific/linux/ena/default.nix b/pkgs/os-specific/linux/ena/default.nix
index b6ed869a71f5..9ce71745cdcf 100644
--- a/pkgs/os-specific/linux/ena/default.nix
+++ b/pkgs/os-specific/linux/ena/default.nix
@@ -1,14 +1,14 @@
 { lib, stdenv, fetchFromGitHub, kernel }:
 
 stdenv.mkDerivation rec {
-  version = "2.8.9";
+  version = "2.12.0";
   name = "ena-${version}-${kernel.version}";
 
   src = fetchFromGitHub {
     owner = "amzn";
     repo = "amzn-drivers";
     rev = "ena_linux_${version}";
-    hash = "sha256-9Csrq9wM7Q99qPj7+NlnQgP6KcciNHMbAAb+Wg7eYAU=";
+    hash = "sha256-Z/eeIUY7Yl2l/IqK3Z2nxPhn+JLvP976IZ9ZXPBqoSo=";
   };
 
   hardeningDisable = [ "pic" ];
@@ -19,6 +19,12 @@ stdenv.mkDerivation rec {
   # linux 3.12
   env.NIX_CFLAGS_COMPILE = "-Wno-error=implicit-function-declaration";
 
+  patches = [
+    # Use kernel version checks instead of API feature detection
+    # See https://github.com/NixOS/nixpkgs/pull/310680
+    ./override-features-api-detection.patch
+  ];
+
   configurePhase = ''
     runHook preConfigure
     cd kernel/linux/ena
diff --git a/pkgs/os-specific/linux/ena/override-features-api-detection.patch b/pkgs/os-specific/linux/ena/override-features-api-detection.patch
new file mode 100644
index 000000000000..099530b12171
--- /dev/null
+++ b/pkgs/os-specific/linux/ena/override-features-api-detection.patch
@@ -0,0 +1,55 @@
+diff --git a/kernel/linux/ena/kcompat.h b/kernel/linux/ena/kcompat.h
+index 32a9cc5..8d39362 100644
+--- a/kernel/linux/ena/kcompat.h
++++ b/kernel/linux/ena/kcompat.h
+@@ -888,21 +888,6 @@ xdp_prepare_buff(struct xdp_buff *xdp, unsigned char *hard_start,
+ #define ENA_XDP_XMIT_FREES_FAILED_DESCS_INTERNALLY
+ #endif
+ 
+-#if (LINUX_VERSION_CODE < KERNEL_VERSION(5, 15, 0) && \
+-	!(LINUX_VERSION_CODE >= KERNEL_VERSION(5, 10, 188) && \
+-	 LINUX_VERSION_CODE < KERNEL_VERSION(5, 11, 0)) && \
+-	!(LINUX_VERSION_CODE >= KERNEL_VERSION(5, 4, 251) && \
+-	 LINUX_VERSION_CODE < KERNEL_VERSION(5, 5, 0))) && \
+-	!(defined(RHEL_RELEASE_CODE) && RHEL_RELEASE_CODE >= RHEL_RELEASE_VERSION(8, 6)) && \
+-	!(defined(SUSE_VERSION) && (SUSE_VERSION == 15 && SUSE_PATCHLEVEL >= 4)) && \
+-	!(defined(SUSE_VERSION) && (SUSE_VERSION == 15 && SUSE_PATCHLEVEL == 3) && \
+-	  ENA_KERNEL_VERSION_GTE(5, 3, 18, 150300, 59, 43))
+-static inline void eth_hw_addr_set(struct net_device *dev, const u8 *addr)
+-{
+-	memcpy(dev->dev_addr, addr, ETH_ALEN);
+-}
+-#endif
+-
+ #if LINUX_VERSION_CODE >= KERNEL_VERSION(5, 15, 0) || \
+ 	(defined(RHEL_RELEASE_CODE) && \
+ 	RHEL_RELEASE_CODE >= RHEL_RELEASE_VERSION(8, 6) && \
+@@ -1112,7 +1097,7 @@ static inline void ena_dma_unmap_page_attrs(struct device *dev,
+ #define pci_dev_id(pdev) ((((u16)(pdev->bus->number)) << 8) | (pdev->devfn))
+ #endif /* ENA_HAVE_PCI_DEV_ID */
+ 
+-#ifndef ENA_HAVE_XDP_DO_FLUSH
++#if LINUX_VERSION_CODE < KERNEL_VERSION(5, 6, 0)
+ #define xdp_do_flush xdp_do_flush_map
+ #endif /* ENA_HAVE_XDP_DO_FLUSH */
+ 
+@@ -1147,15 +1132,15 @@ static inline unsigned int cpumask_local_spread(unsigned int i, int node)
+ }
+ #endif /* ENA_HAVE_CPUMASK_LOCAL_SPREAD */
+ 
+-#ifndef ENA_HAVE_UPDATE_AFFINITY_HINT
++#if LINUX_VERSION_CODE < KERNEL_VERSION(5, 17, 0)
+ static inline int irq_update_affinity_hint(unsigned int irq, const struct cpumask *m)
+ {
+ 	return 0;
+ }
+-#endif /* ENA_HAVE_UPDATE_AFFINITY_HINT */
++#endif /* LINUX_VERSION_CODE < KERNEL_VERSION(5.17.0) */
+ 
+-#ifndef ENA_HAVE_ETHTOOL_PUTS
++#if LINUX_VERSION_CODE < KERNEL_VERSION(6, 8, 0)
+ #define ethtool_puts ethtool_sprintf
+-#endif /* ENA_HAVE_ETHTOOL_PUTS */
++#endif
+ 
+ #endif /* _KCOMPAT_H_ */
diff --git a/pkgs/os-specific/linux/ffado/default.nix b/pkgs/os-specific/linux/ffado/default.nix
index dfa974e3e683..610f9d31353e 100644
--- a/pkgs/os-specific/linux/ffado/default.nix
+++ b/pkgs/os-specific/linux/ffado/default.nix
@@ -8,7 +8,6 @@
 , fetchurl
 , fetchpatch
 , glibmm
-, kernel
 , libavc1394
 , libconfig
 , libiec61883
@@ -22,7 +21,6 @@
 }:
 
 let
-  inherit (python3.pkgs) pyqt5 dbus-python;
   python = python3.withPackages (pkgs: with pkgs; [ pyqt5 dbus-python ]);
 in
 mkDerivation rec {
@@ -61,7 +59,7 @@ mkDerivation rec {
     pkg-config
     which
     python
-    pyqt5
+    python3.pkgs.pyqt5
     wrapQtAppsHook
   ];
 
diff --git a/pkgs/os-specific/linux/firmware/firmware-manager/default.nix b/pkgs/os-specific/linux/firmware/firmware-manager/default.nix
index af455e7ef61f..57b4207e383d 100644
--- a/pkgs/os-specific/linux/firmware/firmware-manager/default.nix
+++ b/pkgs/os-specific/linux/firmware/firmware-manager/default.nix
@@ -8,7 +8,7 @@
 , openssl
 , udev
 , gtk3
-, wrapGAppsHook
+, wrapGAppsHook3
 }:
 
 stdenv.mkDerivation rec {
@@ -39,7 +39,7 @@ stdenv.mkDerivation rec {
     rustc
     pkg-config
     rustPlatform.cargoSetupHook
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
diff --git a/pkgs/os-specific/linux/firmware/fwupd-efi/default.nix b/pkgs/os-specific/linux/firmware/fwupd-efi/default.nix
index d89c4a7b140a..1c6cc0e57e09 100644
--- a/pkgs/os-specific/linux/firmware/fwupd-efi/default.nix
+++ b/pkgs/os-specific/linux/firmware/fwupd-efi/default.nix
@@ -1,8 +1,7 @@
 { lib
 , stdenv
 , fetchurl
-, fetchFromGitHub
-, substituteAll
+, fetchpatch
 , pkg-config
 , meson
 , ninja
@@ -20,6 +19,14 @@ stdenv.mkDerivation rec {
     hash = "sha256-r9CAWirQgafK/y71vABM46AUe1OAFejsqWY0FxaxJg4=";
   };
 
+  patches = [
+    (fetchpatch {
+      url = "https://github.com/fwupd/fwupd-efi/commit/26c6ec5c1e7765fb5dc6a4df511ab21ee6c6e67a.patch";
+      revert = true;
+      hash = "sha256-vTdYExd7OlrrZ/LhlEO1zcvpKzeT5OeOeosD8/LUkMg=";
+    })
+  ];
+
   nativeBuildInputs = [
     meson
     ninja
diff --git a/pkgs/os-specific/linux/firmware/ipu6-camera-bins/default.nix b/pkgs/os-specific/linux/firmware/ipu6-camera-bins/default.nix
index 71a7cd9e947b..31ac23df3960 100644
--- a/pkgs/os-specific/linux/firmware/ipu6-camera-bins/default.nix
+++ b/pkgs/os-specific/linux/firmware/ipu6-camera-bins/default.nix
@@ -52,9 +52,7 @@ stdenv.mkDerivation (finalAttrs: {
     sourceProvenance = with sourceTypes; [
       binaryFirmware
     ];
-    maintainers = with maintainers; [
-      hexa
-    ];
+    maintainers = with maintainers; [ ];
     platforms = [ "x86_64-linux" ];
   };
 })
diff --git a/pkgs/os-specific/linux/firmware/ivsc-firmware/default.nix b/pkgs/os-specific/linux/firmware/ivsc-firmware/default.nix
index e2f2fd4f9fee..3ad52b314537 100644
--- a/pkgs/os-specific/linux/firmware/ivsc-firmware/default.nix
+++ b/pkgs/os-specific/linux/firmware/ivsc-firmware/default.nix
@@ -40,9 +40,7 @@ stdenv.mkDerivation {
     sourceProvenance = with sourceTypes; [
       binaryFirmware
     ];
-    maintainers = with maintainers; [
-      hexa
-    ];
+    maintainers = with maintainers; [ ];
     platforms = [ "x86_64-linux" ];
   };
 }
diff --git a/pkgs/os-specific/linux/firmware/linux-firmware/source.nix b/pkgs/os-specific/linux/firmware/linux-firmware/source.nix
index 3739c1dc3e46..7098f1f3203e 100644
--- a/pkgs/os-specific/linux/firmware/linux-firmware/source.nix
+++ b/pkgs/os-specific/linux/firmware/linux-firmware/source.nix
@@ -1,7 +1,7 @@
 # This file is autogenerated! Run ./update.sh to regenerate.
 {
-  version = "20240410";
-  revision = "20240410";
-  sourceHash = "sha256-Qo4f5kdHlBYKlzdFOtoKoCPHXxgDeCawSE3tnRwfC4U=";
-  outputHash = "sha256-pOYDdb0A1sESiT0kfA4DbWxKJ3+pog54+S3KcQB3BsA=";
+  version = "20240513";
+  revision = "20240513";
+  sourceHash = "sha256-8yzs8lgPHG3zbUvlsWSuP1O/4s28dRFbju2c9kbaFsg=";
+  outputHash = "sha256-LDd6FU1/16X7KoCCDq0yPvwJzK4H9NxHgrEdhEfaUGY=";
 }
diff --git a/pkgs/os-specific/linux/fnotifystat/default.nix b/pkgs/os-specific/linux/fnotifystat/default.nix
index 18afaaa6d29b..4961450fa36e 100644
--- a/pkgs/os-specific/linux/fnotifystat/default.nix
+++ b/pkgs/os-specific/linux/fnotifystat/default.nix
@@ -5,13 +5,13 @@
 
 stdenv.mkDerivation rec {
   pname = "fnotifystat";
-  version = "0.02.11";
+  version = "0.03.00";
 
   src = fetchFromGitHub {
     owner = "ColinIanKing";
     repo = pname;
     rev = "V${version}";
-    hash = "sha256-CwjaDL5pt2HMUhq0Q3s6Ssp3jr9uwCdVhT1JzlKcQQw=";
+    hash = "sha256-UGww0/m+JMftQyAguc8UpPrtIphjCq9TINabFaAKN0A=";
   };
 
   installFlags = [
diff --git a/pkgs/os-specific/linux/fscrypt/default.nix b/pkgs/os-specific/linux/fscrypt/default.nix
index 8b54a1f9a745..2cf5243422e1 100644
--- a/pkgs/os-specific/linux/fscrypt/default.nix
+++ b/pkgs/os-specific/linux/fscrypt/default.nix
@@ -4,13 +4,13 @@
 
 buildGoModule rec {
   pname = "fscrypt";
-  version = "0.3.4";
+  version = "0.3.5";
 
   src = fetchFromGitHub {
     owner = "google";
     repo = "fscrypt";
     rev = "v${version}";
-    hash = "sha256-4Im3YWhLs5Q+o4DtpSuSMuKtKqXaICL9/EB0q5um6mQ=";
+    hash = "sha256-US1jw0XK1BcP037XPhttzBloDU62m4BVSIbsGs9LaJU=";
   };
 
   postPatch = ''
@@ -19,7 +19,7 @@ buildGoModule rec {
       --replace "/usr/local" "$out"
   '';
 
-  vendorHash = "sha256-APW0XM6fTQOCw4tE1NA5VNN3fBUmsvn99NqqJnB3Q0s=";
+  vendorHash = "sha256-FuVWV3Rimhd+Pm9wrKGLWQWtbP1hWvoWa22pQT+m2go=";
 
   doCheck = false;
 
diff --git a/pkgs/os-specific/linux/fw-ectool/default.nix b/pkgs/os-specific/linux/fw-ectool/default.nix
index a73cc1896ecd..dd24730104f3 100644
--- a/pkgs/os-specific/linux/fw-ectool/default.nix
+++ b/pkgs/os-specific/linux/fw-ectool/default.nix
@@ -1,38 +1,43 @@
 { stdenv
 , lib
-, fetchFromGitHub
+, fetchFromGitLab
+, cmake
 , pkg-config
-, hostname
+, libusb1
+, libftdi1
 }:
 
 stdenv.mkDerivation {
   pname = "fw-ectool";
-  version = "unstable-2022-12-03";
+  version = "0-unstable-2024-04-23";
 
-  src = fetchFromGitHub {
+  src = fetchFromGitLab {
+    domain = "gitlab.howett.net";
     owner = "DHowett";
-    repo = "fw-ectool";
-    rev = "54c140399bbc3e6a3dce6c9f842727c4128367be";
-    hash = "sha256-2teJFz4zcA+USpbVPXMEIHLdmMLem8ik7YrmrSxr/n0=";
+    repo = "ectool";
+    rev = "abdd574ebe3640047988cb928bb6789a15dd1390";
+    hash = "sha256-j0Z2Uo1LBXlHZVHPm4Xjx3LZaI6Qq0nSdViyC/CjWC8=";
   };
 
   nativeBuildInputs = [
+    cmake
     pkg-config
-    hostname
   ];
 
-  buildPhase = ''
-    patchShebangs util
-    make out=out utils
-  '';
+  buildInputs = [
+    libusb1
+    libftdi1
+  ];
 
   installPhase = ''
-    install -D out/util/ectool $out/bin/ectool
+    runHook preInstall
+    install -Dm555 src/ectool "$out/bin/ectool"
+    runHook postInstall
   '';
 
   meta = with lib; {
     description = "EC-Tool adjusted for usage with framework embedded controller";
-    homepage = "https://github.com/DHowett/framework-ec";
+    homepage = "https://gitlab.howett.net/DHowett/ectool";
     license = licenses.bsd3;
     maintainers = [ maintainers.mkg20001 ];
     platforms = platforms.linux;
diff --git a/pkgs/os-specific/linux/fwts/default.nix b/pkgs/os-specific/linux/fwts/default.nix
index f04b8fcd2108..5a06fac5d6c1 100644
--- a/pkgs/os-specific/linux/fwts/default.nix
+++ b/pkgs/os-specific/linux/fwts/default.nix
@@ -3,11 +3,11 @@
 
 stdenv.mkDerivation rec {
   pname = "fwts";
-  version = "24.01.00";
+  version = "24.03.00";
 
   src = fetchzip {
     url = "https://fwts.ubuntu.com/release/${pname}-V${version}.tar.gz";
-    sha256 = "sha256-MXWmKxcxgSVCSeeGlWsa8JTBa5hLyvGPZ0811w+s+yA=";
+    sha256 = "sha256-UKL5q5sURSVXvEOzoZdG+wWBSS5f9YWo5stViY3F2vg=";
     stripRoot = false;
   };
 
diff --git a/pkgs/os-specific/linux/game-devices-udev-rules/default.nix b/pkgs/os-specific/linux/game-devices-udev-rules/default.nix
index daaf23db6ce2..ca2ef7a4498e 100644
--- a/pkgs/os-specific/linux/game-devices-udev-rules/default.nix
+++ b/pkgs/os-specific/linux/game-devices-udev-rules/default.nix
@@ -6,20 +6,20 @@
 
 stdenv.mkDerivation (finalAttrs: {
   pname = "game-devices-udev-rules";
-  version = "0.22";
+  version = "0.23";
 
   src = fetchFromGitea {
     domain = "codeberg.org";
     owner = "fabiscafe";
     repo = "game-devices-udev";
     rev = finalAttrs.version;
-    hash = "sha256-1aOb8pJxB+/PM7spcvZcy/cwdEolHQ4+lwBLij+6iDk=";
+    hash = "sha256-dWWo3qXnxdLP68NuFKM4/Cw5yE6uAsWzj0vZa9UTT0U=";
   };
 
   postInstall = ''
     install -Dm444 -t "$out/lib/udev/rules.d" *.rules
     substituteInPlace $out/lib/udev/rules.d/71-powera-controllers.rules \
-    --replace "/bin/sh" "${bash}/bin/bash"
+    --replace-fail "/bin/sh" "${bash}/bin/bash"
   '';
 
   meta = with lib; {
diff --git a/pkgs/os-specific/linux/guvcview/default.nix b/pkgs/os-specific/linux/guvcview/default.nix
index e08203873011..d274c375fb42 100644
--- a/pkgs/os-specific/linux/guvcview/default.nix
+++ b/pkgs/os-specific/linux/guvcview/default.nix
@@ -21,7 +21,7 @@
 # can be turned off if used as a library
 , useGtk ? true
 , gtk3 ? null
-, wrapGAppsHook ? null
+, wrapGAppsHook3 ? null
 }:
 
 assert pulseaudioSupport -> libpulseaudio != null;
@@ -39,7 +39,7 @@ stdenv.mkDerivation rec {
     intltool
     pkg-config
   ]
-    ++ lib.optionals (useGtk) [ wrapGAppsHook ]
+    ++ lib.optionals (useGtk) [ wrapGAppsHook3 ]
     ++ lib.optionals (useQt) [ wrapQtAppsHook ]
   ;
 
diff --git a/pkgs/os-specific/linux/hwdata/default.nix b/pkgs/os-specific/linux/hwdata/default.nix
index 83519d7f2a7a..320f10d55138 100644
--- a/pkgs/os-specific/linux/hwdata/default.nix
+++ b/pkgs/os-specific/linux/hwdata/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "hwdata";
-  version = "0.381";
+  version = "0.382";
 
   src = fetchFromGitHub {
     owner = "vcrhonek";
     repo = "hwdata";
     rev = "v${version}";
-    hash = "sha256-FD1p4qyO+ZsBdMXRa9u6CpO07RewWH8OxULLxcYAsyk=";
+    hash = "sha256-j7ITcLilcnV8QCUFC/Ybv1dX6Kl36P0G9vBlrzifhFQ=";
   };
 
   configureFlags = [ "--datadir=${placeholder "out"}/share" ];
diff --git a/pkgs/os-specific/linux/iproute/default.nix b/pkgs/os-specific/linux/iproute/default.nix
index 031dbfa700bc..597989c5a064 100644
--- a/pkgs/os-specific/linux/iproute/default.nix
+++ b/pkgs/os-specific/linux/iproute/default.nix
@@ -23,6 +23,10 @@ stdenv.mkDerivation rec {
 
   outputs = [ "out" "dev" ];
 
+  configureFlags = [
+    "--color" "auto"
+  ];
+
   makeFlags = [
     "PREFIX=$(out)"
     "SBINDIR=$(out)/sbin"
@@ -46,7 +50,9 @@ stdenv.mkDerivation rec {
 
   depsBuildBuild = [ buildPackages.stdenv.cc ]; # netem requires $HOSTCC
   nativeBuildInputs = [ bison flex pkg-config ];
-  buildInputs = [ db iptables elfutils libmnl ];
+  buildInputs = [ db iptables libmnl ]
+    # needed to uploaded bpf programs
+    ++ lib.optionals (!stdenv.hostPlatform.isStatic) [ elfutils ];
 
   enableParallelBuilding = true;
 
diff --git a/pkgs/os-specific/linux/ipu6-drivers/default.nix b/pkgs/os-specific/linux/ipu6-drivers/default.nix
index fe9cb1da018c..276926fef8aa 100644
--- a/pkgs/os-specific/linux/ipu6-drivers/default.nix
+++ b/pkgs/os-specific/linux/ipu6-drivers/default.nix
@@ -45,7 +45,7 @@ stdenv.mkDerivation {
     homepage = "https://github.com/intel/ipu6-drivers";
     description = "IPU6 kernel driver";
     license = lib.licenses.gpl2;
-    maintainers = with lib.maintainers; [ hexa ];
+    maintainers = with lib.maintainers; [ ];
     platforms = [ "x86_64-linux" ];
     # requires 6.1.7 https://github.com/intel/ipu6-drivers/pull/84
     broken = kernel.kernelOlder "6.1.7";
diff --git a/pkgs/os-specific/linux/ivsc-driver/default.nix b/pkgs/os-specific/linux/ivsc-driver/default.nix
index 72173de49baa..5612c9170abd 100644
--- a/pkgs/os-specific/linux/ivsc-driver/default.nix
+++ b/pkgs/os-specific/linux/ivsc-driver/default.nix
@@ -36,7 +36,7 @@ stdenv.mkDerivation {
     homepage = "https://github.com/intel/ivsc-driver";
     description = "Intel Vision Sensing Controller kernel driver";
     license = lib.licenses.gpl2;
-    maintainers = with lib.maintainers; [ hexa ];
+    maintainers = with lib.maintainers; [ ];
     platforms = [ "x86_64-linux" ];
     broken = kernel.kernelOlder "5.15";
   };
diff --git a/pkgs/os-specific/linux/kernel/common-config.nix b/pkgs/os-specific/linux/kernel/common-config.nix
index c213bd4e6ffe..84090cba867e 100644
--- a/pkgs/os-specific/linux/kernel/common-config.nix
+++ b/pkgs/os-specific/linux/kernel/common-config.nix
@@ -871,12 +871,14 @@ let
     };
 
     zram = {
-      ZRAM            = module;
-      ZRAM_WRITEBACK  = option yes;
-      ZRAM_MULTI_COMP = whenAtLeast "6.2" yes;
-      ZSWAP           = option yes;
-      ZPOOL           = yes;
-      ZBUD            = option yes;
+      ZRAM                          = module;
+      ZRAM_WRITEBACK                = option yes;
+      ZRAM_MULTI_COMP               = whenAtLeast "6.2" yes;
+      ZRAM_DEF_COMP_ZSTD            = whenAtLeast "5.11" yes;
+      ZSWAP                         = option yes;
+      ZSWAP_COMPRESSOR_DEFAULT_ZSTD = whenAtLeast "5.7" (mkOptionDefault yes);
+      ZPOOL                         = yes;
+      ZSMALLOC                      = option yes;
     };
 
     brcmfmac = {
@@ -948,8 +950,8 @@ let
       THRUSTMASTER_FF    = yes;
       ZEROPLUS_FF        = yes;
 
-      MODULE_COMPRESS    = whenOlder "5.13" yes;
-      MODULE_COMPRESS_XZ = yes;
+      MODULE_COMPRESS      = whenOlder "5.13" yes;
+      MODULE_COMPRESS_XZ   = yes;
 
       SYSVIPC            = yes;  # System-V IPC
 
@@ -1124,6 +1126,7 @@ let
       FW_LOADER_USER_HELPER_FALLBACK = option no;
 
       FW_LOADER_COMPRESS = whenAtLeast "5.3" yes;
+      FW_LOADER_COMPRESS_ZSTD = whenAtLeast "5.19" yes;
 
       HOTPLUG_PCI_ACPI = yes; # PCI hotplug using ACPI
       HOTPLUG_PCI_PCIE = yes; # PCI-Expresscard hotplug support
diff --git a/pkgs/os-specific/linux/kernel/generic.nix b/pkgs/os-specific/linux/kernel/generic.nix
index 631217735d8f..37c138402d00 100644
--- a/pkgs/os-specific/linux/kernel/generic.nix
+++ b/pkgs/os-specific/linux/kernel/generic.nix
@@ -221,7 +221,7 @@ let
     config = {
       CONFIG_MODULES = "y";
       CONFIG_FW_LOADER = "m";
-      CONFIG_RUST = lib.mkIf withRust "y";
+      CONFIG_RUST = if withRust then "y" else "n";
     };
   });
 
diff --git a/pkgs/os-specific/linux/kernel/htmldocs.nix b/pkgs/os-specific/linux/kernel/htmldocs.nix
index dad377db06ab..eb22645d2e9e 100644
--- a/pkgs/os-specific/linux/kernel/htmldocs.nix
+++ b/pkgs/os-specific/linux/kernel/htmldocs.nix
@@ -6,8 +6,8 @@
 , makeFontsConf
 , perl
 , python3
-, sphinx
 , which
+, fetchpatch
 }:
 
 stdenv.mkDerivation {
@@ -15,6 +15,16 @@ stdenv.mkDerivation {
 
   inherit (linux_latest) version src;
 
+  patches = [
+    # docutils 0.21 has removed nodes.reprunicode
+    # fixes the `AttributeError` thrown when building docs.
+    (fetchpatch {
+      name = "docutils_fix.patch";
+      url = "https://lore.kernel.org/linux-doc/faf5fa45-2a9d-4573-9d2e-3930bdc1ed65@gmail.com/raw";
+      hash = "sha256-JuV1B/8iDysbH0tl+wr/rdXvoC34uUq25ejMFmD0hio=";
+    })
+  ];
+
   postPatch = ''
     patchShebangs \
       Documentation/sphinx/parse-headers.pl \
@@ -48,11 +58,11 @@ stdenv.mkDerivation {
     cp -r Documentation/* $out/share/doc/linux-doc/
   '';
 
-  meta = with lib; {
+  meta = {
     description = "Linux kernel html documentation";
     homepage = "https://www.kernel.org/doc/htmldocs/";
-    platforms = platforms.linux;
+    platforms = lib.platforms.linux;
     inherit (linux_latest.meta) license;
-    maintainers = with maintainers; [ ];
+    maintainers = with lib.maintainers; [ sigmanificient ];
   };
 }
diff --git a/pkgs/os-specific/linux/kernel/kernels-org.json b/pkgs/os-specific/linux/kernel/kernels-org.json
index b69c0f9c6003..bcf3560c2077 100644
--- a/pkgs/os-specific/linux/kernel/kernels-org.json
+++ b/pkgs/os-specific/linux/kernel/kernels-org.json
@@ -4,31 +4,35 @@
         "hash": "sha256:075l5vhk8zmwln4jks7gr5n5k67s65qvs07l2rpbc7a75fdp6c14"
     },
     "6.1": {
-        "version": "6.1.90",
-        "hash": "sha256:07cfg0chssvpc4mqls3aln6s4lqjp6k4x2n63wndmkjgfqpdg8w3"
+        "version": "6.1.91",
+        "hash": "sha256:1v2d5syxwwqlhvjzxk003qz9sr18r0n8dgg976vbi492r9iww2l8"
     },
     "5.15": {
-        "version": "5.15.158",
-        "hash": "sha256:1inmdpif3qf1blmvjj4i7y42bylvhv0wyj3b0apq12zxlj1iq1zr"
+        "version": "5.15.159",
+        "hash": "sha256:1ia1nfci2wkx4nhnldfczpcq47mp7y7g657ikkh8i72y498gwy1l"
     },
     "5.10": {
-        "version": "5.10.216",
-        "hash": "sha256:0lg1zfb9y4ps86q85mlnyalb3s90zix003z62jb9bw139f65h473"
+        "version": "5.10.217",
+        "hash": "sha256:0qhzqrjci45vcbzjch7vq75i6hpyap6yb7jw6g71phcnqgzw2ay5"
     },
     "5.4": {
-        "version": "5.4.275",
-        "hash": "sha256:0k1hyknx854k8z27j4rq1gcp8l0xc0bspmrhc41a033gjilb1lns"
+        "version": "5.4.276",
+        "hash": "sha256:01vfx19n8rv9fgjjzvi78125md71zgn5jrinbarabzr18jyjwwg2"
     },
     "4.19": {
-        "version": "4.19.313",
-        "hash": "sha256:1j1r4mrdh1ray468jr5i8d2afiswb653bhq0ck8bcdw4rwp5w558"
+        "version": "4.19.314",
+        "hash": "sha256:0nvrpg5aj2q4h2drmczprqaprcc2zhcrijfri77b830ms8rg4y2a"
     },
     "6.6": {
-        "version": "6.6.30",
-        "hash": "sha256:1ilwmgpgvddwkd9nx5999cb6z18scjyq7jklid26k1hg7f35nsmn"
+        "version": "6.6.31",
+        "hash": "sha256:080wwrc231fbf43hvvygddmdxdspyw23jc5vnd6fr5ccdybgzv6n"
     },
     "6.8": {
-        "version": "6.8.9",
-        "hash": "sha256:1dn9bgmf03bdfbmgq98d043702g808rjikxs2i9yia57iqiz21gr"
+        "version": "6.8.10",
+        "hash": "sha256:0xjirg2w5fc2w2q6wr702akszq32m31lk4q5nbjq10zqhbcr5fxh"
+    },
+    "6.9": {
+        "version": "6.9.1",
+        "hash": "sha256:0jn0qp22vx7xf2mgaj7cwf8agqhahvrwlda4ak6rw67xk2x19d01"
     }
 }
diff --git a/pkgs/os-specific/linux/kernel/linux-rt-5.10.nix b/pkgs/os-specific/linux/kernel/linux-rt-5.10.nix
index b013c7f1bf18..e19b0699a33f 100644
--- a/pkgs/os-specific/linux/kernel/linux-rt-5.10.nix
+++ b/pkgs/os-specific/linux/kernel/linux-rt-5.10.nix
@@ -6,7 +6,7 @@
 , ... } @ args:
 
 let
-  version = "5.10.215-rt107"; # updated by ./update-rt.sh
+  version = "5.10.216-rt108"; # updated by ./update-rt.sh
   branch = lib.versions.majorMinor version;
   kversion = builtins.elemAt (lib.splitString "-" version) 0;
 in buildLinux (args // {
@@ -17,14 +17,14 @@ in buildLinux (args // {
 
   src = fetchurl {
     url = "mirror://kernel/linux/kernel/v5.x/linux-${kversion}.tar.xz";
-    sha256 = "1af6h86flx96pszg006agpak2f9dkk2jqaazfykd7aafqdcs3747";
+    sha256 = "0lg1zfb9y4ps86q85mlnyalb3s90zix003z62jb9bw139f65h473";
   };
 
   kernelPatches = let rt-patch = {
     name = "rt";
     patch = fetchurl {
       url = "mirror://kernel/linux/kernel/projects/rt/${branch}/older/patch-${version}.patch.xz";
-      sha256 = "0lnnpnfmypafzfzhcmaxqqc18nna4fr236v6hrcyabnxmxam79xj";
+      sha256 = "0p0qmyz3g7fqlz4f638dlcp37az8lpq5yqw2fy5zqqs3qagy018j";
     };
   }; in [ rt-patch ] ++ kernelPatches;
 
diff --git a/pkgs/os-specific/linux/kernel/linux-rt-5.15.nix b/pkgs/os-specific/linux/kernel/linux-rt-5.15.nix
index 91774ba38dbd..5e43eca364d4 100644
--- a/pkgs/os-specific/linux/kernel/linux-rt-5.15.nix
+++ b/pkgs/os-specific/linux/kernel/linux-rt-5.15.nix
@@ -6,7 +6,7 @@
 , ... } @ args:
 
 let
-  version = "5.15.153-rt75"; # updated by ./update-rt.sh
+  version = "5.15.158-rt76"; # updated by ./update-rt.sh
   branch = lib.versions.majorMinor version;
   kversion = builtins.elemAt (lib.splitString "-" version) 0;
 in buildLinux (args // {
@@ -18,14 +18,14 @@ in buildLinux (args // {
 
   src = fetchurl {
     url = "mirror://kernel/linux/kernel/v5.x/linux-${kversion}.tar.xz";
-    sha256 = "1g44gjcwcdq5552vwinljqwiy90bxax72jjvdasp71x88khv3pfp";
+    sha256 = "1inmdpif3qf1blmvjj4i7y42bylvhv0wyj3b0apq12zxlj1iq1zr";
   };
 
   kernelPatches = let rt-patch = {
     name = "rt";
     patch = fetchurl {
       url = "mirror://kernel/linux/kernel/projects/rt/${branch}/older/patch-${version}.patch.xz";
-      sha256 = "04i22p0ap4dsqybf9jbbmrbzva11qknilnyk46z18gzrr0msjldl";
+      sha256 = "17kw7cs1p0qgqf911prn3472c1j7r01g0mzqxsxpkdvhawxps7wy";
     };
   }; in [ rt-patch ] ++ kernelPatches;
 
diff --git a/pkgs/os-specific/linux/kernel/linux-rt-6.1.nix b/pkgs/os-specific/linux/kernel/linux-rt-6.1.nix
index 06028d209779..ac0f7d6d9d88 100644
--- a/pkgs/os-specific/linux/kernel/linux-rt-6.1.nix
+++ b/pkgs/os-specific/linux/kernel/linux-rt-6.1.nix
@@ -6,7 +6,7 @@
 , ... } @ args:
 
 let
-  version = "6.1.83-rt28"; # updated by ./update-rt.sh
+  version = "6.1.90-rt30"; # updated by ./update-rt.sh
   branch = lib.versions.majorMinor version;
   kversion = builtins.elemAt (lib.splitString "-" version) 0;
 in buildLinux (args // {
@@ -18,14 +18,14 @@ in buildLinux (args // {
 
   src = fetchurl {
     url = "mirror://kernel/linux/kernel/v6.x/linux-${kversion}.tar.xz";
-    sha256 = "145iw3wii7znhrqdmgnwhswk235g6gw8axjjji2cw4rn148rddl8";
+    sha256 = "07cfg0chssvpc4mqls3aln6s4lqjp6k4x2n63wndmkjgfqpdg8w3";
   };
 
   kernelPatches = let rt-patch = {
     name = "rt";
     patch = fetchurl {
       url = "mirror://kernel/linux/kernel/projects/rt/${branch}/older/patch-${version}.patch.xz";
-      sha256 = "07wv3zd7n5378k8ywdavrp5ndqkdcis923dwpswfv7062xm34y5h";
+      sha256 = "0sgwxdy4bzjqr74nrmsyw1f2lcqpapxmkj5yywf7jkqa20jkdvgr";
     };
   }; in [ rt-patch ] ++ kernelPatches;
 
diff --git a/pkgs/os-specific/linux/kernel/linux-rt-6.6.nix b/pkgs/os-specific/linux/kernel/linux-rt-6.6.nix
index eb85f9c3cd09..5a2e8959090f 100644
--- a/pkgs/os-specific/linux/kernel/linux-rt-6.6.nix
+++ b/pkgs/os-specific/linux/kernel/linux-rt-6.6.nix
@@ -6,7 +6,7 @@
 , ... } @ args:
 
 let
-  version = "6.6.25-rt29"; # updated by ./update-rt.sh
+  version = "6.6.30-rt30"; # updated by ./update-rt.sh
   branch = lib.versions.majorMinor version;
   kversion = builtins.elemAt (lib.splitString "-" version) 0;
 in buildLinux (args // {
@@ -18,14 +18,14 @@ in buildLinux (args // {
 
   src = fetchurl {
     url = "mirror://kernel/linux/kernel/v6.x/linux-${kversion}.tar.xz";
-    sha256 = "0i0zvqlj02rm6wpbidji0rn9559vrpfc1b8gbfjk70lhhyz11llr";
+    sha256 = "1ilwmgpgvddwkd9nx5999cb6z18scjyq7jklid26k1hg7f35nsmn";
   };
 
   kernelPatches = let rt-patch = {
     name = "rt";
     patch = fetchurl {
       url = "mirror://kernel/linux/kernel/projects/rt/${branch}/older/patch-${version}.patch.xz";
-      sha256 = "15mb4zycv86yp1cbs5svgs3pnmh8jihjhf4jxc4h4ywlzglkb1za";
+      sha256 = "05n6fyy5c0f18v4n1rfkcvqj8s0p5x6s16qq5mnmya86rhdr6gn7";
     };
   }; in [ rt-patch ] ++ kernelPatches;
 
diff --git a/pkgs/os-specific/linux/kernel/xanmod-kernels.nix b/pkgs/os-specific/linux/kernel/xanmod-kernels.nix
index b7840b554bee..de33ff75d82f 100644
--- a/pkgs/os-specific/linux/kernel/xanmod-kernels.nix
+++ b/pkgs/os-specific/linux/kernel/xanmod-kernels.nix
@@ -6,14 +6,14 @@ let
   # NOTE: When updating these, please also take a look at the changes done to
   # kernel config in the xanmod version commit
   ltsVariant = {
-    version = "6.6.29";
-    hash = "sha256-Be2VaW0DQDS0FJUwXM627QaNgrn1B3Hbyq+PiKb7b+k=";
+    version = "6.6.30";
+    hash = "sha256-fQATjYekxV/+24mqyel3bYfgUMN4NhOHR9yyL6L5bl0=";
     variant = "lts";
   };
 
   mainVariant = {
-    version = "6.8.8";
-    hash = "sha256-6fT9vRjHw775m4ySUAUWU9R0dz/cWYYdZsPCwZjGiXM=";
+    version = "6.8.9";
+    hash = "sha256-OUlT/fiwLGTPnr/7gneyZBio/l8KAWopcJqTpSjBMl0=";
     variant = "main";
   };
 
diff --git a/pkgs/os-specific/linux/kernel/zen-kernels.nix b/pkgs/os-specific/linux/kernel/zen-kernels.nix
index 1f36e36c2335..d2e32e4b09a7 100644
--- a/pkgs/os-specific/linux/kernel/zen-kernels.nix
+++ b/pkgs/os-specific/linux/kernel/zen-kernels.nix
@@ -84,8 +84,8 @@ let
       SCHED_PDS = yes;
 
       # Swap storage is compressed with LZ4 using zswap
-      ZSWAP_COMPRESSOR_DEFAULT_LZ4 = yes;
-      ZSWAP_COMPRESSOR_DEFAULT = freeform "lz4";
+      ZSWAP_COMPRESSOR_DEFAULT_LZ4  = lib.mkOptionDefault yes;
+      ZSWAP_COMPRESSOR_DEFAULT_ZSTD = lib.mkDefault no;
 
       # Fix error: unused option: XXX.
       CFS_BANDWIDTH = lib.mkForce (option no);
diff --git a/pkgs/os-specific/linux/kvmfr/default.nix b/pkgs/os-specific/linux/kvmfr/default.nix
index a77d1290ca80..3224fc137db1 100644
--- a/pkgs/os-specific/linux/kvmfr/default.nix
+++ b/pkgs/os-specific/linux/kvmfr/default.nix
@@ -6,9 +6,6 @@ stdenv.mkDerivation {
 
   src = looking-glass-client.src;
   sourceRoot = "${looking-glass-client.src.name}/module";
-  patches = lib.optional (kernel.kernelAtLeast "6.4") [
-    ./linux-6-4-compat.patch
-  ];
   hardeningDisable = [ "pic" "format" ];
   nativeBuildInputs = kernel.moduleBuildDependencies;
 
diff --git a/pkgs/os-specific/linux/kvmfr/linux-6-4-compat.patch b/pkgs/os-specific/linux/kvmfr/linux-6-4-compat.patch
deleted file mode 100644
index e57d1d27c36c..000000000000
--- a/pkgs/os-specific/linux/kvmfr/linux-6-4-compat.patch
+++ /dev/null
@@ -1,16 +0,0 @@
-diff --git a/kvmfr.c b/kvmfr.c
-index 121aae5b..2f4c9e1a 100644
---- a/kvmfr.c
-+++ b/kvmfr.c
-@@ -539,7 +539,11 @@ static int __init kvmfr_module_init(void)
-   if (kvmfr->major < 0)
-     goto out_free;
- 
-+#if LINUX_VERSION_CODE < KERNEL_VERSION(6, 4, 0)
-   kvmfr->pClass = class_create(THIS_MODULE, KVMFR_DEV_NAME);
-+#else
-+  kvmfr->pClass = class_create(KVMFR_DEV_NAME);
-+#endif
-   if (IS_ERR(kvmfr->pClass))
-     goto out_unreg;
- 
diff --git a/pkgs/os-specific/linux/ledger-udev-rules/default.nix b/pkgs/os-specific/linux/ledger-udev-rules/default.nix
index 3a6bf9e5d51c..8201f12480c3 100644
--- a/pkgs/os-specific/linux/ledger-udev-rules/default.nix
+++ b/pkgs/os-specific/linux/ledger-udev-rules/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation {
   pname = "ledger-udev-rules";
-  version = "unstable-2021-09-10";
+  version = "0-unstable-2024-02-12";
 
   src = fetchFromGitHub {
     owner = "LedgerHQ";
     repo = "udev-rules";
-    rev = "2776324af6df36c2af4d2e8e92a1c98c281117c9";
-    sha256 = "sha256-yTYI81PXMc32lMfI5uhD14nP20zAI7ZF33V1LRDWg2Y=";
+    rev = "f474382e370c9fa2a2207e6e675b9b364441aed7";
+    sha256 = "sha256-5jN9xy3+kk540PAyfsxIqck9hdI3t2CNpgqKxLbAsDg=";
   };
 
   dontBuild = true;
@@ -22,7 +22,7 @@ stdenv.mkDerivation {
   meta = with lib; {
     description = "udev rules for Ledger devices";
     license = licenses.asl20;
-    maintainers = with maintainers; [ asymmetric ];
+    maintainers = with maintainers; [ asymmetric toasteruwu ];
     platforms = platforms.linux;
     homepage = "https://github.com/LedgerHQ/udev-rules";
   };
diff --git a/pkgs/os-specific/linux/libbpf/0.x.nix b/pkgs/os-specific/linux/libbpf/0.x.nix
index 480e78d0803a..b34cca4a51af 100644
--- a/pkgs/os-specific/linux/libbpf/0.x.nix
+++ b/pkgs/os-specific/linux/libbpf/0.x.nix
@@ -14,13 +14,13 @@
 
 stdenv.mkDerivation rec {
   pname = "libbpf";
-  version = "0.8.1";
+  version = "0.8.3";
 
   src = fetchFromGitHub {
     owner = "libbpf";
     repo = "libbpf";
     rev = "v${version}";
-    sha256 = "sha256-daVS+TErmDU8ksThOvcepg1A61iD8N8GIkC40cmc9/8=";
+    sha256 = "sha256-J5cUvfUYc+uLdkFa2jx/2bqBoZg/eSzc6SWlgKqcfIc=";
   };
 
   nativeBuildInputs = [ pkg-config ];
diff --git a/pkgs/os-specific/linux/libbpf/default.nix b/pkgs/os-specific/linux/libbpf/default.nix
index 99454beb4187..e910835ea0d7 100644
--- a/pkgs/os-specific/linux/libbpf/default.nix
+++ b/pkgs/os-specific/linux/libbpf/default.nix
@@ -14,13 +14,13 @@
 
 stdenv.mkDerivation rec {
   pname = "libbpf";
-  version = "1.4.0";
+  version = "1.4.1";
 
   src = fetchFromGitHub {
     owner = "libbpf";
     repo = "libbpf";
     rev = "v${version}";
-    sha256 = "sha256-3TCsIlr28vO6Zu9lDaEq6J4J+D5sHP7SSo1O/M0ZzUo=";
+    sha256 = "sha256-dAyUBcOItDZNe2xBWoegCAmOnTugc1C7+k/hj20icJA=";
   };
 
   nativeBuildInputs = [ pkg-config ];
diff --git a/pkgs/os-specific/linux/libcap-ng/default.nix b/pkgs/os-specific/linux/libcap-ng/default.nix
index 59aa5bbc0e5d..478b5fa8ac2c 100644
--- a/pkgs/os-specific/linux/libcap-ng/default.nix
+++ b/pkgs/os-specific/linux/libcap-ng/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   pname = "libcap-ng";
-  version = "0.8.4";
+  version = "0.8.5";
 
   src = fetchurl {
     url = "https://people.redhat.com/sgrubb/libcap-ng/libcap-ng-${version}.tar.gz";
-    sha256 = "sha256-aFgdOzjnVTy29t33gTsfyZ5ShW8hQh97R3zlq9JgWoo=";
+    hash = "sha256-O6UpTRy9+pivqs+8ALavntK4PoohgXGF39hEzIx6xv8=";
   };
 
   outputs = [ "out" "dev" "man" ];
diff --git a/pkgs/os-specific/linux/libzbc/default.nix b/pkgs/os-specific/linux/libzbc/default.nix
index 79a4277a8560..e2da36d9dc79 100644
--- a/pkgs/os-specific/linux/libzbc/default.nix
+++ b/pkgs/os-specific/linux/libzbc/default.nix
@@ -10,13 +10,13 @@
 
 stdenv.mkDerivation rec {
   pname = "libzbc";
-  version = "5.13.0";
+  version = "5.14.0";
 
   src = fetchFromGitHub {
     owner = "westerndigitalcorporation";
     repo = "libzbc";
     rev = "v${version}";
-    sha256 = "6xkA96bgQ2Ik1vEwkw7hwjMbjMSlopzv5ziTh60Mjx0=";
+    sha256 = "sha256-+MBk2ZUr3Vt6pZFb4gTXMOzKBlf1EXMF8y/c1iDrIZM=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/os-specific/linux/microcode/intel.nix b/pkgs/os-specific/linux/microcode/intel.nix
index 6953bbca8963..f099cea8ed7b 100644
--- a/pkgs/os-specific/linux/microcode/intel.nix
+++ b/pkgs/os-specific/linux/microcode/intel.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "microcode-intel";
-  version = "20240312";
+  version = "20240514";
 
   src = fetchFromGitHub {
     owner = "intel";
     repo = "Intel-Linux-Processor-Microcode-Data-Files";
     rev = "microcode-${version}";
-    hash = "sha256-4ZSA+LVczfjZINXhImmFOCc/6kKNrrUQvrXPdOvMM8g=";
+    hash = "sha256-6XHlAtQzHtlRs3Zy4+CC/XGJS/PkDPtTg/Y2bX7PJek=";
   };
 
   nativeBuildInputs = [ iucode-tool libarchive ];
diff --git a/pkgs/os-specific/linux/vm-tools/default.nix b/pkgs/os-specific/linux/mm-tools/default.nix
index c5981bfc2713..38f16ca4e7d2 100644
--- a/pkgs/os-specific/linux/vm-tools/default.nix
+++ b/pkgs/os-specific/linux/mm-tools/default.nix
@@ -1,12 +1,12 @@
 { lib, stdenv, linux }:
 
 stdenv.mkDerivation {
-  pname = "vm-tools";
+  pname = "mm-tools";
   inherit (linux) version src;
 
   makeFlags = [ "sbindir=${placeholder "out"}/bin" ];
 
-  preConfigure = "cd tools/vm";
+  preConfigure = "cd tools/mm";
 
   meta = with lib; {
     inherit (linux.meta) license platforms;
diff --git a/pkgs/os-specific/linux/mstflint_access/default.nix b/pkgs/os-specific/linux/mstflint_access/default.nix
index 6e29e27ccbf2..95168249122f 100644
--- a/pkgs/os-specific/linux/mstflint_access/default.nix
+++ b/pkgs/os-specific/linux/mstflint_access/default.nix
@@ -6,7 +6,7 @@ stdenv.mkDerivation rec {
 
   src = fetchurl {
     url = "https://github.com/Mellanox/mstflint/releases/download/v${version}/kernel-mstflint-${version}.tar.gz";
-    hash = "sha256-rfZts0m8x6clVazpbAa2xK+dYgRU9Us5rbcWa0uHJ1M=";
+    hash = "sha256-bWYglHJUNCPT13N7aBdjbLPMZIk7vjvF+o9W3abDNr0=";
   };
 
   nativeBuildInputs = [ kmod ] ++ kernel.moduleBuildDependencies;
@@ -18,10 +18,6 @@ stdenv.mkDerivation rec {
 
   enableParallelBuilding = true;
 
-  preConfigure = lib.optionals (lib.versionAtLeast kernel.version "6.4") ''
-    sed -i "s/class_create(THIS_MODULE, dev->name)/class_create(dev->name)/g" mst_main.c
-  '';
-
   installPhase = ''
     runHook preInstall
 
diff --git a/pkgs/os-specific/linux/nftables/default.nix b/pkgs/os-specific/linux/nftables/default.nix
index 3680cd43efb7..95e4183a2fb6 100644
--- a/pkgs/os-specific/linux/nftables/default.nix
+++ b/pkgs/os-specific/linux/nftables/default.nix
@@ -5,7 +5,6 @@
 , autoreconfHook
 , withDebugSymbols ? false
 , withCli ? true, libedit
-, withPython ? false, python3
 , withXtables ? true, iptables
 , nixosTests
 }:
@@ -29,25 +28,12 @@ stdenv.mkDerivation rec {
     libmnl libnftnl libpcap
     gmp jansson
   ] ++ lib.optional withCli libedit
-    ++ lib.optional withXtables iptables
-    ++ lib.optionals withPython [
-      python3
-      python3.pkgs.setuptools
-    ];
-
-  patches = [ ./fix-py-libnftables.patch ];
-
-  postPatch = ''
-    substituteInPlace "py/src/nftables.py" \
-      --subst-var-by "out" "$out"
-  '';
+    ++ lib.optional withXtables iptables;
 
   configureFlags = [
     "--with-json"
     (lib.withFeatureAs withCli "cli" "editline")
   ] ++ lib.optional (!withDebugSymbols) "--disable-debug"
-    ++ lib.optional (!withPython) "--disable-python"
-    ++ lib.optional withPython "--enable-python"
     ++ lib.optional withXtables "--with-xtables";
 
   passthru.tests = {
diff --git a/pkgs/os-specific/linux/nftables/fix-py-libnftables.patch b/pkgs/os-specific/linux/nftables/fix-py-libnftables.patch
deleted file mode 100644
index 3ab1e5363019..000000000000
--- a/pkgs/os-specific/linux/nftables/fix-py-libnftables.patch
+++ /dev/null
@@ -1,13 +0,0 @@
-diff --git a/py/src/nftables.py b/py/src/nftables.py
-index f1e43ade..9adcd1be 100644
---- a/py/src/nftables.py
-+++ b/py/src/nftables.py
-@@ -69,7 +69,7 @@ class Nftables:
- 
-     validator = None
- 
--    def __init__(self, sofile="libnftables.so.1"):
-+    def __init__(self, sofile="@out@/lib/libnftables.so.1"):
-         """Instantiate a new Nftables class object.
- 
-         Accepts a shared object file to open, by default standard search path
diff --git a/pkgs/os-specific/linux/nftables/python.nix b/pkgs/os-specific/linux/nftables/python.nix
new file mode 100644
index 000000000000..7980b8ff6de6
--- /dev/null
+++ b/pkgs/os-specific/linux/nftables/python.nix
@@ -0,0 +1,26 @@
+{ lib
+, buildPythonPackage
+, setuptools
+, nftables
+}:
+
+buildPythonPackage {
+  pname = "nftables";
+  inherit (nftables) version src;
+  pyproject = true;
+
+  postPatch = ''
+    substituteInPlace "src/nftables.py" \
+      --replace-fail "libnftables.so.1" "${nftables}/lib/libnftables.so.1"
+  '';
+
+  setSourceRoot = "sourceRoot=$(echo */py)";
+
+  build-system = [ setuptools ];
+
+  pythonImportsCheck = [ "nftables" ];
+
+  meta = {
+    inherit (nftables.meta) description homepage license platforms maintainers;
+  };
+}
diff --git a/pkgs/os-specific/linux/nixos-rebuild/nixos-rebuild.sh b/pkgs/os-specific/linux/nixos-rebuild/nixos-rebuild.sh
index f3ee49a8c395..fb7c8b2322a7 100755
--- a/pkgs/os-specific/linux/nixos-rebuild/nixos-rebuild.sh
+++ b/pkgs/os-specific/linux/nixos-rebuild/nixos-rebuild.sh
@@ -391,7 +391,7 @@ if [[ -n $flake ]]; then
        flakeAttr="${BASH_REMATCH[2]}"
     fi
     if [[ -z $flakeAttr ]]; then
-        read -r hostname < /proc/sys/kernel/hostname
+        hostname="$(targetHostCmd cat /proc/sys/kernel/hostname)"
         if [[ -z $hostname ]]; then
             hostname=default
         fi
diff --git a/pkgs/os-specific/linux/nvidia-x11/settings.nix b/pkgs/os-specific/linux/nvidia-x11/settings.nix
index b11dc06c85eb..2d9dfd81829e 100644
--- a/pkgs/os-specific/linux/nvidia-x11/settings.nix
+++ b/pkgs/os-specific/linux/nvidia-x11/settings.nix
@@ -16,7 +16,7 @@ nvidia_x11: sha256:
 , libXxf86vm
 , libvdpau
 , librsvg
-, wrapGAppsHook
+, wrapGAppsHook3
 , addOpenGLRunpath
 , withGtk2 ? false
 , withGtk3 ? true
@@ -96,7 +96,7 @@ stdenv.mkDerivation {
   nativeBuildInputs = [ pkg-config m4 addOpenGLRunpath ];
 
   buildInputs = [ jansson libXv libXrandr libXext libXxf86vm libvdpau nvidia_x11 gtk2 dbus ]
-    ++ lib.optionals withGtk3 [ gtk3 librsvg wrapGAppsHook ];
+    ++ lib.optionals withGtk3 [ gtk3 librsvg wrapGAppsHook3 ];
 
   installFlags = [ "PREFIX=$(out)" ];
 
diff --git a/pkgs/os-specific/linux/pam/default.nix b/pkgs/os-specific/linux/pam/default.nix
index 2b0c327fbc2e..e5f8fec5acb1 100644
--- a/pkgs/os-specific/linux/pam/default.nix
+++ b/pkgs/os-specific/linux/pam/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, buildPackages, fetchurl, fetchpatch
+{ lib, stdenv, buildPackages, fetchurl
 , flex, cracklib, db4, gettext, audit, libxcrypt
 , nixosTests
 , autoreconfHook269, pkg-config-unwrapped
@@ -6,31 +6,15 @@
 
 stdenv.mkDerivation rec {
   pname = "linux-pam";
-  version = "1.6.0";
+  version = "1.6.1";
 
   src = fetchurl {
     url = "https://github.com/linux-pam/linux-pam/releases/download/v${version}/Linux-PAM-${version}.tar.xz";
-    hash = "sha256-//SjTlu+534ujxmS8nYx4jKby/igVj3etcM4m04xaa0=";
+    hash = "sha256-+JI8dAFZBS1xnb/CovgZQtaN00/K9hxwagLJuA/u744=";
   };
 
   patches = [
     ./suid-wrapper-path.patch
-
-    # Backport fix for missing include breaking musl builds.
-    (fetchpatch {
-      name = "pam_namespace-stdint.h.patch";
-      url = "https://github.com/linux-pam/linux-pam/commit/cc9d40b7cdbd3e15ccaa324a0dda1680ef9dea13.patch";
-      hash = "sha256-tCnH2yPO4dBbJOZA0fP2gm1EavHRMEJyfzB5Vy7YjAA=";
-    })
-
-    # Resotre handling of empty passwords:
-    #   https://github.com/linux-pam/linux-pam/pull/784
-    # TODO: drop upstreamed patch on 1.6.1 update.
-    (fetchpatch {
-      name = "revert-unconditional-helper.patch";
-      url = "https://github.com/linux-pam/linux-pam/commit/8d0c575336ad301cd14e16ad2fdec6fe621764b8.patch";
-      hash = "sha256-z9KfMxxqXQVnmNaixaVjLnQqaGsH8MBHhHbiP/8fvhE=";
-    })
   ];
 
   # Case-insensitivity workaround for https://github.com/linux-pam/linux-pam/issues/569
diff --git a/pkgs/os-specific/linux/piper/default.nix b/pkgs/os-specific/linux/piper/default.nix
index b1508dcb6a3e..dcdc7a363e30 100644
--- a/pkgs/os-specific/linux/piper/default.nix
+++ b/pkgs/os-specific/linux/piper/default.nix
@@ -1,5 +1,5 @@
 { lib, meson, ninja, pkg-config, gettext, fetchFromGitHub, python3
-, wrapGAppsHook, gtk3, glib, desktop-file-utils, appstream-glib, gnome
+, wrapGAppsHook3, gtk3, glib, desktop-file-utils, appstream-glib, gnome
 , gobject-introspection, librsvg }:
 
 python3.pkgs.buildPythonApplication rec {
@@ -15,7 +15,7 @@ python3.pkgs.buildPythonApplication rec {
     sha256 = "0jsvfy0ihdcgnqljfgs41lys1nlz18qvsa0a8ndx3pyr41f8w8wf";
   };
 
-  nativeBuildInputs = [ meson ninja gettext pkg-config wrapGAppsHook desktop-file-utils appstream-glib gobject-introspection ];
+  nativeBuildInputs = [ meson ninja gettext pkg-config wrapGAppsHook3 desktop-file-utils appstream-glib gobject-introspection ];
   buildInputs = [
     gtk3 glib gnome.adwaita-icon-theme python3 librsvg
   ];
diff --git a/pkgs/os-specific/linux/power-profiles-daemon/default.nix b/pkgs/os-specific/linux/power-profiles-daemon/default.nix
index 11f26e5013a8..f7145bc02ebe 100644
--- a/pkgs/os-specific/linux/power-profiles-daemon/default.nix
+++ b/pkgs/os-specific/linux/power-profiles-daemon/default.nix
@@ -11,6 +11,7 @@
 , polkit
 , dbus
 , gobject-introspection
+, wrapGAppsNoGuiHook
 , gettext
 , gtk-doc
 , docbook-xsl-nons
@@ -49,6 +50,7 @@ stdenv.mkDerivation rec {
     libxml2 # for xmllint for stripping GResources
     libxslt # for xsltproc for building docs
     gobject-introspection
+    wrapGAppsNoGuiHook
     # checkInput but cheked for during the configuring
     (python3.pythonOnBuildForHost.withPackages (ps: with ps; [
       pygobject3
@@ -95,6 +97,9 @@ stdenv.mkDerivation rec {
 
   doCheck = true;
 
+  # Only need to wrap the Python tool (powerprofilectl)
+  dontWrapGApps = true;
+
   PKG_CONFIG_POLKIT_GOBJECT_1_POLICYDIR = "${placeholder "out"}/share/polkit-1/actions";
 
   postPatch = ''
@@ -106,6 +111,10 @@ stdenv.mkDerivation rec {
       src/powerprofilesctl
   '';
 
+  postFixup = ''
+    wrapGApp "$out/bin/powerprofilesctl"
+  '';
+
   passthru = {
     tests = {
       nixos = nixosTests.power-profiles-daemon;
diff --git a/pkgs/os-specific/linux/rtl8189es/default.nix b/pkgs/os-specific/linux/rtl8189es/default.nix
index e31a54f56c31..553c6a309682 100644
--- a/pkgs/os-specific/linux/rtl8189es/default.nix
+++ b/pkgs/os-specific/linux/rtl8189es/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   name = "rtl8189es-${kernel.version}-${version}";
-  version = "2023-03-14";
+  version = "2024-01-21";
 
   src = fetchFromGitHub {
     owner = "jwrdegoede";
     repo = "rtl8189ES_linux";
-    rev = "ae7b31e55526ca0e01d2a3310118530bff4f1055";
-    sha256 = "sha256-l/xUxs63Y5LVT6ZafuRc+iaCXCSt2HwysYJLJ5hg3RM=";
+    rev = "eb51e021b0e1b6f94a4b49da3f4ee5c5fb20b715";
+    sha256 = "sha256-n7Bsstr1H1RvguAyJnVqk/JgEx8WEZWaVg7ZfEYykR0=";
   };
 
   nativeBuildInputs = [ bc nukeReferences ] ++ kernel.moduleBuildDependencies;
diff --git a/pkgs/os-specific/linux/rtl8189fs/default.nix b/pkgs/os-specific/linux/rtl8189fs/default.nix
index 67642f11d322..0405fc8561a9 100644
--- a/pkgs/os-specific/linux/rtl8189fs/default.nix
+++ b/pkgs/os-specific/linux/rtl8189fs/default.nix
@@ -3,13 +3,13 @@
 # rtl8189fs is a branch of the rtl8189es driver
 rtl8189es.overrideAttrs (drv: rec {
   name = "rtl8189fs-${kernel.version}-${version}";
-  version = "2023-03-27";
+  version = "2024-01-22";
 
   src = fetchFromGitHub {
     owner = "jwrdegoede";
     repo = "rtl8189ES_linux";
-    rev = "c223a25b1000d64432eca4201a8f012414dfc7ce";
-    sha256 = "sha256-5b5IshLbWxvmzcKy/xLsqKa3kZpwDQXTQtjqZLHyOCo=";
+    rev = "5d523593f41c0b8d723c6aa86b217ee1d0965786";
+    sha256 = "sha256-pziaUM6XfF4Tt9yfWUnLUiTw+sw6uZrr1HcaXdRQ31E=";
   };
 
   meta = with lib; {
diff --git a/pkgs/os-specific/linux/rtl8192eu/default.nix b/pkgs/os-specific/linux/rtl8192eu/default.nix
index 32b97b59c52e..529f16fc1db4 100644
--- a/pkgs/os-specific/linux/rtl8192eu/default.nix
+++ b/pkgs/os-specific/linux/rtl8192eu/default.nix
@@ -4,15 +4,15 @@ with lib;
 
 let modDestDir = "$out/lib/modules/${kernel.modDirVersion}/kernel/drivers/net/wireless/realtek/rtl8192eu";
 
-in stdenv.mkDerivation rec {
+in stdenv.mkDerivation {
   pname = "rtl8192eu";
-  version = "${kernel.version}-4.4.1.20230613";
+  version = "${kernel.version}-4.4.1.20240507";
 
   src = fetchFromGitHub {
     owner = "Mange";
     repo = "rtl8192eu-linux-driver";
-    rev = "f2fc8af7ab58d2123eed1aa4428e713cdfc27976";
-    sha256 = "sha256-OgsxBcXoIP8h9Z0bLsG91/s/+r89Tdn2dPOt4p3sx8k=";
+    rev = "27410641da6926eb1ac565068ff89d35f7496328";
+    sha256 = "sha256-/BztTE3yKw35Oo7KkzHMtD+8qpJNXWiSwR3YjrotR0I=";
   };
 
   hardeningDisable = [ "pic" ];
diff --git a/pkgs/os-specific/linux/rtl8723ds/default.nix b/pkgs/os-specific/linux/rtl8723ds/default.nix
index be4b954c1b61..a9c1f18de0c2 100644
--- a/pkgs/os-specific/linux/rtl8723ds/default.nix
+++ b/pkgs/os-specific/linux/rtl8723ds/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation {
   pname = "rtl8723ds";
-  version = "${kernel.version}-unstable-2022-12-01";
+  version = "${kernel.version}-unstable-2023-11-14";
 
   src = fetchFromGitHub {
     owner = "lwfinger";
     repo = "rtl8723ds";
-    rev = "a638cc8639015b8b9390af3350fab0366b6c87e7";
-    sha256 = "sha256-qfVE7k71NPzw3FwoOaUxH66PnDjbpMAF6CyOyUVdSMA=";
+    rev = "52e593e8c889b68ba58bd51cbdbcad7fe71362e4";
+    sha256 = "sha256-SszvDuWN9opkXyVQAOLjnNtPp93qrKgnGvzK0y7Y9b0=";
   };
 
   hardeningDisable = [ "pic" ];
diff --git a/pkgs/os-specific/linux/rtl8812au/default.nix b/pkgs/os-specific/linux/rtl8812au/default.nix
index ed330fc24637..d9fd92c4a9f0 100644
--- a/pkgs/os-specific/linux/rtl8812au/default.nix
+++ b/pkgs/os-specific/linux/rtl8812au/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation {
   pname = "rtl8812au";
-  version = "${kernel.version}-unstable-2024-01-19";
+  version = "${kernel.version}-unstable-2024-03-20";
 
   src = fetchFromGitHub {
     owner = "morrownr";
     repo = "8812au-20210629";
-    rev = "3b921c0beda8583c1d2d1b0b7e4692d11e7ea772";
-    hash = "sha256-Ji61Y23uGSTyj3Z5ia9iev5rVzSOv7XY/IfAClhz7Q8=";
+    rev = "8be3a1d7acf60f77c5d9c33b690b8d7301bdf127";
+    hash = "sha256-HchnRezJNzimOB72Sv5BwL4oXuxPxloAHVuaL+warj8=";
   };
 
   nativeBuildInputs = [ bc nukeReferences ] ++ kernel.moduleBuildDependencies;
diff --git a/pkgs/os-specific/linux/rtl8821cu/default.nix b/pkgs/os-specific/linux/rtl8821cu/default.nix
index 806df9f6dd4d..9d83d4b4c28a 100644
--- a/pkgs/os-specific/linux/rtl8821cu/default.nix
+++ b/pkgs/os-specific/linux/rtl8821cu/default.nix
@@ -1,14 +1,14 @@
 { lib, stdenv, fetchFromGitHub, kernel, bc }:
 
-stdenv.mkDerivation rec {
+stdenv.mkDerivation {
   pname = "rtl8821cu";
-  version = "${kernel.version}-unstable-2023-09-10";
+  version = "${kernel.version}-unstable-2024-05-03";
 
   src = fetchFromGitHub {
     owner = "morrownr";
     repo = "8821cu-20210916";
-    rev = "f6d4598290c5e9c8e545130e8a31d130f6d135f4";
-    hash = "sha256-jpMf8K9diJ3mbEkP9Cp+VwairK+pwiEGU/AtUIouCqM=";
+    rev = "3eacc28b721950b51b0249508cc31e6e54988a0c";
+    hash = "sha256-JP7mvwhnKqmkb/B0l4vhc11TBjjUA1Ubzbj/IVEXvBM=";
   };
 
   hardeningDisable = [ "pic" ];
diff --git a/pkgs/os-specific/linux/rtl8852au/default.nix b/pkgs/os-specific/linux/rtl8852au/default.nix
index d154fbe86a20..e7b682893f85 100644
--- a/pkgs/os-specific/linux/rtl8852au/default.nix
+++ b/pkgs/os-specific/linux/rtl8852au/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation {
   pname = "rtl8852au";
-  version = "${kernel.version}-unstable-2023-11-24";
+  version = "${kernel.version}-unstable-2024-04-16";
 
   src = fetchFromGitHub {
     owner = "lwfinger";
     repo = "rtl8852au";
-    rev = "70bdde265b9ab002daf11d4bea1a42baa8da4325";
-    hash = "sha256-6ARS7/0iKYajpMH+f+jWDxIkPY9ZixJkk864oKom4l4=";
+    rev = "5894bc6fed2bcaa525d13fcee1edada8aba67f2b";
+    hash = "sha256-R4Yb/jbh3nMgM41ByFjtkCMbsh/mmMRJ7CcvCRUvKu8=";
   };
 
   nativeBuildInputs = [ bc nukeReferences ] ++ kernel.moduleBuildDependencies;
diff --git a/pkgs/os-specific/linux/sysdig/default.nix b/pkgs/os-specific/linux/sysdig/default.nix
index 25b788104a4c..59b48eeb7f71 100644
--- a/pkgs/os-specific/linux/sysdig/default.nix
+++ b/pkgs/os-specific/linux/sysdig/default.nix
@@ -3,11 +3,11 @@
 , protobuf, grpc, yaml-cpp, nlohmann_json, re2, zstd, uthash }:
 
 let
-  # Compare with https://github.com/draios/sysdig/blob/0.36.0/cmake/modules/falcosecurity-libs.cmake
-  libsRev = "0.15.1";
-  libsHash = "sha256-CsKa5ybRj7Mjb71xNwd8FtDprOMfpJMrm3mvkeqZE3o=";
+  # Compare with https://github.com/draios/sysdig/blob/0.37.1/cmake/modules/falcosecurity-libs.cmake
+  libsRev = "0.16.0";
+  libsHash = "sha256-aduO2pLj91tRdZ1dW1F1JFEg//SopialXWPd6Oav/u8=";
 
-  # Compare with https://github.com/falcosecurity/libs/blob/0.15.1/cmake/modules/valijson.cmake
+  # Compare with https://github.com/falcosecurity/libs/blob/0.16.0/cmake/modules/valijson.cmake
   valijson = fetchFromGitHub {
     owner = "tristanpenman";
     repo = "valijson";
@@ -15,22 +15,24 @@ let
     hash = "sha256-wvFdjsDtKH7CpbEpQjzWtLC4RVOU9+D2rSK0Xo1cJqo=";
   };
 
-  # https://github.com/draios/sysdig/blob/0.36.0/cmake/modules/driver.cmake
+  # https://github.com/draios/sysdig/blob/0.37.1/cmake/modules/driver.cmake
   driver = fetchFromGitHub {
     owner = "falcosecurity";
     repo = "libs";
-    rev = "7.0.0+driver";
-    hash = "sha256-kXqvfM7HbGh2wEGaO4KBkFDW+m5gpOShJZKJLu9McKk=";
+    rev = "7.1.0+driver";
+    hash = "sha256-FIlnJsNgofGo4HETEEpW28wpC3U9z5AZprwFR5AgFfA=";
   };
-in stdenv.mkDerivation rec {
+
+  version = "0.37.1";
+in stdenv.mkDerivation {
   pname = "sysdig";
-  version = "0.36.0";
+  inherit version;
 
   src = fetchFromGitHub {
     owner = "draios";
     repo = "sysdig";
     rev = version;
-    hash = "sha256-EQnmtxByTsSawQPFmTe2pBMcv5rFaNtST+2KXZSFuoo=";
+    hash = "sha256-V1rvQ6ZznL9UiUFW2lyW6gvdoGttOd5kgT2KPQCjmvQ=";
   };
 
   nativeBuildInputs = [ cmake perl installShellFiles pkg-config ];
@@ -73,12 +75,6 @@ in stdenv.mkDerivation rec {
     cp -r ${driver} driver-src
     chmod -R +w driver-src
 
-    # Hacky but needed until https://github.com/draios/sysdig/issues/2077 is resolved for kernel >= 6.8 as strlcpy got removed and build fails
-    ${lib.optionalString
-    (kernel != null && lib.versionAtLeast kernel.version "6.8") ''
-      substituteInPlace libs/driver/ppm_events.c driver-src/driver/ppm_events.c --replace-fail "strlcpy" "strscpy"
-    ''}
-
     cmakeFlagsArray+=(
       "-DFALCOSECURITY_LIBS_SOURCE_DIR=$(pwd)/libs"
       "-DDRIVER_SOURCE_DIR=$(pwd)/driver-src/driver"
@@ -98,8 +94,6 @@ in stdenv.mkDerivation rec {
   ] ++ lib.optional (kernel == null) "-DBUILD_DRIVER=OFF";
 
   env.NIX_CFLAGS_COMPILE =
-    # needed since luajit-2.1.0-beta3
-    "-DluaL_reg=luaL_Reg -DluaL_getn(L,i)=((int)lua_objlen(L,i)) " +
     # fix compiler warnings been treated as errors
     "-Wno-error";
 
@@ -138,13 +132,13 @@ in stdenv.mkDerivation rec {
     fi
   '';
 
-  meta = with lib; {
+  meta = {
     description =
       "A tracepoint-based system tracing tool for Linux (with clients for other OSes)";
-    license = with licenses; [ asl20 gpl2 mit ];
-    maintainers = [ maintainers.raskin ];
-    platforms = [ "x86_64-linux" ] ++ platforms.darwin;
-    broken = kernel != null && ((versionOlder kernel.version "4.14") || kernel.isHardened || kernel.isZen);
+    license = with lib.licenses; [ asl20 gpl2 mit ];
+    maintainers = with lib.maintainers; [ raskin ];
+    platforms = [ "x86_64-linux" ] ++ lib.platforms.darwin;
+    broken = kernel != null && ((lib.versionOlder kernel.version "4.14") || kernel.isHardened || kernel.isZen);
     homepage = "https://sysdig.com/opensource/";
     downloadPage = "https://github.com/draios/sysdig/releases";
   };
diff --git a/pkgs/os-specific/linux/systemd/default.nix b/pkgs/os-specific/linux/systemd/default.nix
index 9cdc5dcd9d44..2d1f033920bd 100644
--- a/pkgs/os-specific/linux/systemd/default.nix
+++ b/pkgs/os-specific/linux/systemd/default.nix
@@ -925,8 +925,9 @@ stdenv.mkDerivation (finalAttrs: {
     maintainers = with lib.maintainers; [ flokli kloenk ];
     platforms = lib.platforms.linux;
     priority = 10;
-    badPlatforms = [ lib.systems.inspect.platformPatterns.isStatic ];
-    # https://github.com/systemd/systemd/issues/20600#issuecomment-912338965
-    broken = stdenv.hostPlatform.isStatic;
+    badPlatforms = [
+      # https://github.com/systemd/systemd/issues/20600#issuecomment-912338965
+      lib.systems.inspect.platformPatterns.isStatic
+    ];
   };
 })
diff --git a/pkgs/os-specific/linux/tbs/default.nix b/pkgs/os-specific/linux/tbs/default.nix
index 5805a400c1e2..4d4a1a96ce5f 100644
--- a/pkgs/os-specific/linux/tbs/default.nix
+++ b/pkgs/os-specific/linux/tbs/default.nix
@@ -5,22 +5,22 @@ let
     name = repo;
     owner = "tbsdtv";
     repo = "linux_media";
-    rev = "d0a7e44358f28064697e0eed309db03166dcd83b";
-    hash = "sha256-BTHlnta5qv2bdPjD2bButwYGpwR/bq99/AUoZqTHHYw=";
+    rev = "d8d1ff33c0c47e34fe3e860b52b4d6c457520866";
+    hash = "sha256-1Z9itZ5GFpfUeRtp5xTnS+I91LUZLDhsEcF2v8ThaCs=";
   };
 
   build = fetchFromGitHub rec {
     name = repo;
     owner = "tbsdtv";
     repo = "media_build";
-    rev = "88764363a3e3d36b3c59a0a2bf2244e262035d47";
-    hash = "sha256-LFTxYVPudflxqYTSBIDNkTrGs09MOuYBXwpGYqWfEFQ=";
+    rev = "8cd12a6e90999f3a341018812a5d66d7e6b30913";
+    hash = "sha256-+I0NrML54ni37qgDHbRUQiLmmw/UZgXmoFoiDNDeH5A=";
   };
 
 in
 stdenv.mkDerivation {
   pname = "tbs";
-  version = "20231210-${kernel.version}";
+  version = "20240506-${kernel.version}";
 
   srcs = [ media build ];
   sourceRoot = build.name;
@@ -66,6 +66,6 @@ stdenv.mkDerivation {
     license = licenses.gpl2;
     maintainers = with maintainers; [ ck3d ];
     priority = -1;
-    broken = kernel.kernelOlder "4.14" || kernel.kernelAtLeast "6.6";
+    broken = kernel.kernelOlder "4.14" || kernel.kernelAtLeast "6.9";
   };
 }
diff --git a/pkgs/os-specific/linux/tiscamera/default.nix b/pkgs/os-specific/linux/tiscamera/default.nix
index 600655c447f7..8847a83d53d7 100644
--- a/pkgs/os-specific/linux/tiscamera/default.nix
+++ b/pkgs/os-specific/linux/tiscamera/default.nix
@@ -18,7 +18,7 @@
 , glib
 , gobject-introspection
 , gst_all_1
-, wrapGAppsHook
+, wrapGAppsHook3
   # needs pkg_resources
 , withDoc ? false
 , sphinx
@@ -54,7 +54,7 @@ stdenv.mkDerivation rec {
   nativeBuildInputs = [
     cmake
     pkg-config
-    wrapGAppsHook
+    wrapGAppsHook3
     gobject-introspection
   ] ++ lib.optionals withDoc [
     sphinx
@@ -112,7 +112,7 @@ stdenv.mkDerivation rec {
   # gstreamer tests requires, besides gst-plugins-bad, plugins installed by this expression.
   checkPhase = "ctest --force-new-ctest-process -E gstreamer";
 
-  # wrapGAppsHook: make sure we add ourselves to the introspection
+  # wrapGAppsHook3: make sure we add ourselves to the introspection
   # and gstreamer paths.
   GI_TYPELIB_PATH = "${placeholder "out"}/lib/girepository-1.0";
   GST_PLUGIN_SYSTEM_PATH_1_0 = "${placeholder "out"}/lib/gstreamer-1.0";
diff --git a/pkgs/os-specific/linux/tuna/default.nix b/pkgs/os-specific/linux/tuna/default.nix
index b57169369ca7..3b527c8b534f 100644
--- a/pkgs/os-specific/linux/tuna/default.nix
+++ b/pkgs/os-specific/linux/tuna/default.nix
@@ -9,7 +9,7 @@
 , gtk3
 , python-linux-procfs
 , python-ethtool
-, wrapGAppsHook
+, wrapGAppsHook3
 }:
 
 buildPythonApplication rec {
@@ -37,7 +37,7 @@ buildPythonApplication rec {
     glib.dev
     gobject-introspection
     gtk3
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   propagatedBuildInputs = [ pygobject3 python-linux-procfs python-ethtool ];
diff --git a/pkgs/os-specific/linux/uhk-agent/default.nix b/pkgs/os-specific/linux/uhk-agent/default.nix
index 0d6b3ccd515c..553e471faaff 100644
--- a/pkgs/os-specific/linux/uhk-agent/default.nix
+++ b/pkgs/os-specific/linux/uhk-agent/default.nix
@@ -12,12 +12,12 @@
 
 let
   pname = "uhk-agent";
-  version = "4.0.2";
+  version = "4.1.0";
 
   src = fetchurl {
     url = "https://github.com/UltimateHackingKeyboard/agent/releases/download/v${version}/UHK.Agent-${version}-linux-x86_64.AppImage";
     name = "${pname}-${version}.AppImage";
-    sha256 = "sha256-yx5hOmb1la+vNh8x0PM3edcMn4ojdwzNmGBUg/BH7wE=";
+    sha256 = "sha256-5VzUSuq+yc8HXSILMg24w/hbwasf4jq0H0wte9Mw+nY=";
   };
 
   appimageContents = appimageTools.extract {
diff --git a/pkgs/os-specific/linux/waydroid/default.nix b/pkgs/os-specific/linux/waydroid/default.nix
index ae42c206280d..5e29b911ca54 100644
--- a/pkgs/os-specific/linux/waydroid/default.nix
+++ b/pkgs/os-specific/linux/waydroid/default.nix
@@ -12,7 +12,7 @@
 , iproute2
 , iptables
 , util-linux
-, wrapGAppsHook
+, wrapGAppsHook3
 , wl-clipboard
 , runtimeShell
 }:
@@ -39,7 +39,7 @@ python3Packages.buildPythonApplication rec {
 
   nativeBuildInputs = [
     gobject-introspection
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
diff --git a/pkgs/os-specific/linux/zenmonitor/default.nix b/pkgs/os-specific/linux/zenmonitor/default.nix
index e8fce959c8dc..8101f47c6a24 100644
--- a/pkgs/os-specific/linux/zenmonitor/default.nix
+++ b/pkgs/os-specific/linux/zenmonitor/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetchFromGitHub, pkg-config, gtk3, wrapGAppsHook }:
+{ lib, stdenv, fetchFromGitHub, pkg-config, gtk3, wrapGAppsHook3 }:
 
 stdenv.mkDerivation rec {
   pname = "zenmonitor";
@@ -12,7 +12,7 @@ stdenv.mkDerivation rec {
   };
 
   buildInputs = [ gtk3 ];
-  nativeBuildInputs = [ pkg-config wrapGAppsHook ];
+  nativeBuildInputs = [ pkg-config wrapGAppsHook3 ];
 
   makeFlags = [ "PREFIX=${placeholder "out"}" ];
 
diff --git a/pkgs/os-specific/linux/zfs/2_2.nix b/pkgs/os-specific/linux/zfs/2_2.nix
index 455c17383604..14c88f195dbf 100644
--- a/pkgs/os-specific/linux/zfs/2_2.nix
+++ b/pkgs/os-specific/linux/zfs/2_2.nix
@@ -14,17 +14,17 @@ callPackage ./generic.nix args {
   # this attribute is the correct one for this package.
   kernelModuleAttribute = "zfs_2_2";
   # check the release notes for compatible kernels
-  kernelCompatible = kernel.kernelOlder "6.8";
+  kernelCompatible = kernel.kernelOlder "6.9";
 
-  latestCompatibleLinuxPackages = linuxKernel.packages.linux_6_6;
+  latestCompatibleLinuxPackages = linuxKernel.packages.linux_6_8;
 
   # this package should point to the latest release.
-  version = "2.2.3";
+  version = "2.2.4";
 
   tests = [
     nixosTests.zfs.installer
     nixosTests.zfs.series_2_2
   ];
 
-  hash = "sha256-Bzkow15OitUUQ+mTYhCXgTrQl+ao/B4feleHY/rSSjg=";
+  hash = "sha256-SSp/1Tu1iGx5UDcG4j0k2fnYxK05cdE8gzfSn8DU5Z4=";
 }
diff --git a/pkgs/os-specific/linux/zfs/unstable.nix b/pkgs/os-specific/linux/zfs/unstable.nix
index c8db9c5c5df9..1d8ced4dd5d7 100644
--- a/pkgs/os-specific/linux/zfs/unstable.nix
+++ b/pkgs/os-specific/linux/zfs/unstable.nix
@@ -16,19 +16,19 @@ callPackage ./generic.nix args {
   # check the release notes for compatible kernels
   kernelCompatible = kernel.kernelOlder "6.9";
 
-  latestCompatibleLinuxPackages = linuxKernel.packages.linux_6_6;
+  latestCompatibleLinuxPackages = linuxKernel.packages.linux_6_8;
 
   # this package should point to a version / git revision compatible with the latest kernel release
   # IMPORTANT: Always use a tagged release candidate or commits from the
   # zfs-<version>-staging branch, because this is tested by the OpenZFS
   # maintainers.
-  version = "2.2.3-unstable-2024-04-09";
-  rev = "28520cad2500b60ce8653e431990e33f77ff08f7";
+  version = "2.2.4";
+  # rev = "";
 
   isUnstable = true;
   tests = [
     nixosTests.zfs.unstable
   ];
 
-  hash = "sha256-lGoiTmCWOxqACSYY0WA0gN6CN/1FyYhSVHmtYC1Izhg=";
+  hash = "sha256-SSp/1Tu1iGx5UDcG4j0k2fnYxK05cdE8gzfSn8DU5Z4=";
 }
diff --git a/pkgs/pkgs-lib/formats.nix b/pkgs/pkgs-lib/formats.nix
index 1b72270b43ca..7cc0bf4f4e50 100644
--- a/pkgs/pkgs-lib/formats.nix
+++ b/pkgs/pkgs-lib/formats.nix
@@ -43,6 +43,8 @@ rec {
 
   hocon = (import ./formats/hocon/default.nix { inherit lib pkgs; }).format;
 
+  php = (import ./formats/php/default.nix { inherit lib pkgs; }).format;
+
   json = {}: {
 
     type = with lib.types; let
diff --git a/pkgs/pkgs-lib/formats/php/default.nix b/pkgs/pkgs-lib/formats/php/default.nix
new file mode 100644
index 000000000000..9bd1de958d0b
--- /dev/null
+++ b/pkgs/pkgs-lib/formats/php/default.nix
@@ -0,0 +1,69 @@
+{pkgs, lib}: {
+  # Format for defining configuration of some PHP services, that use "include 'config.php';" approach.
+  format = {finalVariable ? null}: let
+    toPHP = value: {
+        "null" = "null";
+        "bool" = if value then "true" else "false";
+        "int" = toString value;
+        "float" = toString value;
+        "string" = string value;
+        "set" = attrs value;
+        "list" = list value;
+      }
+      .${builtins.typeOf value} or
+        (abort "should never happen: unknown value type ${builtins.typeOf value}");
+
+    # https://www.php.net/manual/en/language.types.string.php#language.types.string.syntax.single
+    escapeSingleQuotedString = lib.escape [ "'" "\\" ];
+    string = value: "'${escapeSingleQuotedString value}'";
+
+    listContent = values: lib.concatStringsSep ", " (map toPHP values);
+    list = values: "[" + (listContent values) + "]";
+
+    attrsContent = values: lib.pipe values [
+      (lib.mapAttrsToList (k: v: "${toPHP k} => ${toPHP v}"))
+      (lib.concatStringsSep ", ")
+    ];
+    attrs = set:
+      if set ? _phpType then specialType set
+      else
+          "[" + attrsContent set + "]";
+
+    mixedArray = {list, set}: if list == [] then attrs set else "[${listContent list}, ${attrsContent set}]";
+
+    specialType = {value, _phpType}: {
+      "mixed_array" = mixedArray value;
+      "raw" = value;
+    }.${_phpType};
+
+    type = with lib.types;
+      nullOr (oneOf [
+        bool
+        int
+        float
+        str
+        (attrsOf type)
+        (listOf type)
+      ])
+      // {
+        description = "PHP value";
+      };
+  in {
+
+    inherit type;
+
+    lib = {
+      mkMixedArray = list: set: {_phpType = "mixed_array"; value = { inherit list set;}; };
+      mkRaw = raw: {_phpType = "raw"; value = raw;};
+    };
+
+    generate = name: value: pkgs.writeTextFile {
+      inherit name;
+      text = let
+        # strict_types enabled here to easily debug problems when calling functions of incorrect type using `mkRaw`.
+        phpHeader = "<?php\ndeclare(strict_types=1);\n";
+      in if finalVariable == null then phpHeader + "return ${toPHP value};\n" else phpHeader + "\$${finalVariable} = ${toPHP value};\n";
+    };
+
+  };
+}
diff --git a/pkgs/pkgs-lib/tests/formats.nix b/pkgs/pkgs-lib/tests/formats.nix
index 3243f4058e68..86a35c6bf26d 100644
--- a/pkgs/pkgs-lib/tests/formats.nix
+++ b/pkgs/pkgs-lib/tests/formats.nix
@@ -425,4 +425,48 @@ in runBuildTests {
       \u0627\u0644\u062c\u0628\u0631 = \u0623\u0643\u062b\u0631 \u0645\u0646 \u0645\u062c\u0631\u062f \u0623\u0631\u0642\u0627\u0645
     '';
   };
+
+  phpAtoms = shouldPass rec {
+    format = formats.php { finalVariable = "config"; };
+    input = {
+      null = null;
+      false = false;
+      true = true;
+      int = 10;
+      float = 3.141;
+      str = "foo";
+      str_special = "foo\ntesthello'''";
+      attrs.foo = null;
+      list = [ null null ];
+      mixed = format.lib.mkMixedArray [ 10 3.141 ] {
+        str = "foo";
+        attrs.foo = null;
+      };
+      raw = format.lib.mkRaw "random_function()";
+    };
+    expected = ''
+      <?php
+      declare(strict_types=1);
+      $config = ['attrs' => ['foo' => null], 'false' => false, 'float' => 3.141000, 'int' => 10, 'list' => [null, null], 'mixed' => [10, 3.141000, 'attrs' => ['foo' => null], 'str' => 'foo'], 'null' => null, 'raw' => random_function(), 'str' => 'foo', 'str_special' => 'foo
+      testhello\'\'\'${"'"}, 'true' => true];
+    '';
+  };
+
+  phpReturn = shouldPass {
+    format = formats.php { };
+    input = {
+      int = 10;
+      float = 3.141;
+      str = "foo";
+      str_special = "foo\ntesthello'''";
+      attrs.foo = null;
+    };
+    expected = ''
+      <?php
+      declare(strict_types=1);
+      return ['attrs' => ['foo' => null], 'float' => 3.141000, 'int' => 10, 'str' => 'foo', 'str_special' => 'foo
+      testhello\'\'\'${"'"}];
+    '';
+  };
+
 }
diff --git a/pkgs/servers/bloat/default.nix b/pkgs/servers/bloat/default.nix
index dfde129e8887..3ca2b494e234 100644
--- a/pkgs/servers/bloat/default.nix
+++ b/pkgs/servers/bloat/default.nix
@@ -6,7 +6,7 @@
 
 buildGoModule {
   pname = "bloat";
-  version = "unstable-2024-02-12";
+  version = "0-unstable-2024-02-12";
 
   src = fetchgit {
     url = "git://git.freesoftwareextremist.com/bloat";
diff --git a/pkgs/servers/blockbook/default.nix b/pkgs/servers/blockbook/default.nix
index e52b0cb00bd4..dc9243f32024 100644
--- a/pkgs/servers/blockbook/default.nix
+++ b/pkgs/servers/blockbook/default.nix
@@ -41,12 +41,19 @@ buildGoModule rec {
 
   tags = [ "rocksdb_6_16" ];
 
+  CGO_LDFLAGS = [
+    "-L${stdenv.cc.cc.lib}/lib"
+    "-lrocksdb"
+    "-lz"
+    "-lbz2"
+    "-lsnappy"
+    "-llz4"
+    "-lm"
+    "-lstdc++"
+  ];
+
   preBuild = lib.optionalString stdenv.isDarwin ''
     ulimit -n 8192
-  '' + ''
-    export CGO_LDFLAGS="-L${stdenv.cc.cc.lib}/lib -lrocksdb -lz -lbz2 -lsnappy -llz4 -lm -lstdc++"
-    buildFlagsArray+=("-tags=${lib.concatStringsSep " " tags}")
-    buildFlagsArray+=("-ldflags=${lib.concatStringsSep " " ldflags}")
   '';
 
   subPackages = [ "." ];
diff --git a/pkgs/servers/computing/storm/default.nix b/pkgs/servers/computing/storm/default.nix
index d4669488901a..a3503ccc8cbf 100644
--- a/pkgs/servers/computing/storm/default.nix
+++ b/pkgs/servers/computing/storm/default.nix
@@ -1,26 +1,27 @@
 { stdenv, lib, fetchurl, zip, unzip
-, jdk, python2
+, jdk, python3
 , confFile ? ""
 , extraLibraryPaths ? []
 , extraJars ? []
+, testers
 }:
 
-stdenv.mkDerivation rec {
+stdenv.mkDerivation (finalAttrs: {
   pname = "apache-storm";
-  version = "2.4.0";
-  name = "${pname}-${version}";
+  version = "2.6.2";
+  name = "${finalAttrs.pname}-${finalAttrs.version}";
 
   src = fetchurl {
-    url = "mirror://apache/storm/${name}/${name}.tar.gz";
-    sha256 = "sha256-VFNcaISPBRMGR5l/P6/pGnK7lHClDW2AmXJ00gzxwMY=";
+    url = "mirror://apache/storm/${finalAttrs.name}/${finalAttrs.name}.tar.gz";
+    hash = "sha256-ZAwsVKWTzc/++UQTNnOHdK5hiDDT5j6453DCLWi+7TA=";
   };
 
   nativeBuildInputs = [ zip unzip ];
 
   installPhase = ''
-    mkdir -p $out/share/${name}
+    mkdir -p $out/share/${finalAttrs.name}
     mv public $out/docs
-    mv examples $out/share/${name}/.
+    mv examples $out/share/${finalAttrs.name}/.
 
     mv external extlib* lib $out/.
     mv conf bin $out/.
@@ -28,23 +29,23 @@ stdenv.mkDerivation rec {
   '';
 
   fixupPhase = ''
+    patchShebangs $out
     # Fix python reference
     sed -i \
-      -e '19iPYTHON=${python2}/bin/python' \
-      -e 's|#!/usr/bin/.*python|#!${python2}/bin/python|' \
+      -e '19iPYTHON=${python3}/bin/python' \
+      -e 's|#!/usr/bin/.*python|#!${python3}/bin/python|' \
       $out/bin/storm
     sed -i \
-      -e 's|#!/usr/bin/.*python|#!${python2}/bin/python|' \
+      -e 's|#!/usr/bin/.*python|#!${python3}/bin/python|' \
       -e "s|STORM_CONF_DIR = .*|STORM_CONF_DIR = os.getenv('STORM_CONF_DIR','$out/conf')|" \
       -e 's|STORM_LOG4J2_CONF_DIR =.*|STORM_LOG4J2_CONF_DIR = os.path.join(STORM_CONF_DIR, "log4j2")|' \
         $out/bin/storm.py
 
     # Default jdk location
-    sed -i -e 's|#.*export JAVA_HOME=.*|export JAVA_HOME="${jdk.home}"|' \
+    sed -i -e 's|export JAVA_HOME=.*|export JAVA_HOME="${jdk.home}"|' \
            $out/conf/storm-env.sh
-    ls -lh $out/lib
-    unzip  $out/lib/storm-client-${version}.jar defaults.yaml;
-    zip -d $out/lib/storm-client-${version}.jar defaults.yaml;
+    unzip  $out/lib/storm-client-${finalAttrs.version}.jar defaults.yaml;
+    zip -d $out/lib/storm-client-${finalAttrs.version}.jar defaults.yaml;
     sed -i \
        -e 's|java.library.path: .*|java.library.path: "${lib.concatStringsSep ":" extraLibraryPaths}"|' \
        -e 's|storm.log4j2.conf.dir: .*|storm.log4j2.conf.dir: "conf/log4j2"|' \
@@ -59,6 +60,11 @@ stdenv.mkDerivation rec {
 
   dontStrip = true;
 
+  passthru.tests.version = testers.testVersion {
+    package = finalAttrs.finalPackage;
+    command = "storm version";
+  };
+
   meta = with lib; {
     homepage = "https://storm.apache.org/";
     description = "Distributed realtime computation system";
@@ -67,4 +73,4 @@ stdenv.mkDerivation rec {
     maintainers = with maintainers; [ edwtjo vizanto ];
     platforms = with platforms; unix;
   };
-}
+})
diff --git a/pkgs/servers/dgraph/default.nix b/pkgs/servers/dgraph/default.nix
index 321a37ec521d..65379131afcc 100644
--- a/pkgs/servers/dgraph/default.nix
+++ b/pkgs/servers/dgraph/default.nix
@@ -2,13 +2,13 @@
 
 buildGoModule rec {
   pname = "dgraph";
-  version = "23.1.0";
+  version = "23.1.1";
 
   src = fetchFromGitHub {
     owner = "dgraph-io";
     repo = "dgraph";
     rev = "v${version}";
-    sha256 = "sha256-AC/5ykNH2eb6IrZ3KlU0DTP4r8RiHE5iUZFCUn6H2cw=";
+    sha256 = "sha256-xmWFRqdGUk+9MKd9cQLquOmike3soNRgPwQ+F27MSAQ=";
   };
 
   vendorHash = "sha256-YRfFRCCm25zS+tQer6UcrBBltOxA7+Iqi+Ejyrjdu/A=";
diff --git a/pkgs/servers/dns/bind/default.nix b/pkgs/servers/dns/bind/default.nix
index 8beaffa75e38..7f3b8a4a169f 100644
--- a/pkgs/servers/dns/bind/default.nix
+++ b/pkgs/servers/dns/bind/default.nix
@@ -24,11 +24,11 @@
 
 stdenv.mkDerivation rec {
   pname = "bind";
-  version = "9.18.26";
+  version = "9.18.27";
 
   src = fetchurl {
     url = "https://downloads.isc.org/isc/bind9/${version}/${pname}-${version}.tar.xz";
-    hash = "sha256-df/uUnMelgTISbZY3ynpJ/HE8B1aceo+vL62NwLLZlE=";
+    hash = "sha256-6j89jPovaueMhyJ1HQCPVLwXo67Svj9zmet79fTNqPE=";
   };
 
   outputs = [ "out" "lib" "dev" "man" "dnsutils" "host" ];
diff --git a/pkgs/servers/elasticmq-server-bin/default.nix b/pkgs/servers/elasticmq-server-bin/default.nix
index 395ac3609514..1af34b50df0f 100644
--- a/pkgs/servers/elasticmq-server-bin/default.nix
+++ b/pkgs/servers/elasticmq-server-bin/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation (finalAttrs: {
   pname = "elasticmq-server";
-  version = "1.6.0";
+  version = "1.6.1";
 
   src = fetchurl {
     url = "https://s3-eu-west-1.amazonaws.com/softwaremill-public/${finalAttrs.pname}-${finalAttrs.version}.jar";
-    sha256 = "sha256-h71YX8mP9iB92gK+QQD/xl1JLZwKspAwE6D3wq+SOkU=";
+    sha256 = "sha256-kO4d7O3jRYUJwJnMleGV+Esx9suFVS0HkNAtGyQORKo=";
   };
 
   # don't do anything?
diff --git a/pkgs/servers/go-libp2p-daemon/default.nix b/pkgs/servers/go-libp2p-daemon/default.nix
index 9da79d04546f..d28a1858a49e 100644
--- a/pkgs/servers/go-libp2p-daemon/default.nix
+++ b/pkgs/servers/go-libp2p-daemon/default.nix
@@ -2,16 +2,16 @@
 
 buildGoModule rec {
   pname = "go-libp2p-daemon";
-  version = "0.5.0";
+  version = "0.6.1";
 
   src = fetchFromGitHub {
     owner = "libp2p";
     repo = "go-libp2p-daemon";
     rev = "v${version}";
-    hash = "sha256-3zlSD+9KnIOBlaE3gCTBGKwZY0rMW8lbb4b77BlJm/g=";
+    hash = "sha256-XXg1qIACAHgK1/PltwuoNVYrsntfzo71g1dlq9V/FS4=";
   };
 
-  vendorHash = "sha256-8wrtPfuZ9X3cKjDeywht0d3p5lQouk6ZPO1PIjBz2Ro=";
+  vendorHash = "sha256-Kdxo0QsS7o9BjSG6qFrlCnqyZXhX6NkT/aUznGrm3xo=";
 
   doCheck = false;
 
diff --git a/pkgs/servers/gpsd/default.nix b/pkgs/servers/gpsd/default.nix
index 224ce41d185e..ac4d0c066783 100644
--- a/pkgs/servers/gpsd/default.nix
+++ b/pkgs/servers/gpsd/default.nix
@@ -25,7 +25,7 @@
 , pango
 , gdk-pixbuf
 , atk
-, wrapGAppsHook
+, wrapGAppsHook3
 
 , gpsdUser ? "gpsd", gpsdGroup ? "dialout"
 }:
@@ -46,7 +46,7 @@ stdenv.mkDerivation rec {
     scons
   ] ++ lib.optionals guiSupport [
     gobject-introspection
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
diff --git a/pkgs/servers/home-assistant/component-packages.nix b/pkgs/servers/home-assistant/component-packages.nix
index 186956baa9ff..9824cc333314 100644
--- a/pkgs/servers/home-assistant/component-packages.nix
+++ b/pkgs/servers/home-assistant/component-packages.nix
@@ -2,7 +2,7 @@
 # Do not edit!
 
 {
-  version = "2024.4.4";
+  version = "2024.5.4";
   components = {
     "3_day_blinds" = ps: with ps; [
     ];
@@ -65,9 +65,6 @@
     ];
     "airthings_ble" = ps: with ps; [
       aioesphomeapi
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
       aioruuvigateway
       aioshelly
       airthings-ble
@@ -122,9 +119,6 @@
     "alert" = ps: with ps; [
     ];
     "alexa" = ps: with ps; [
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
       pyturbojpeg
     ];
     "alpha_vantage" = ps: with ps; [
@@ -137,11 +131,11 @@
       amberelectric
     ];
     "ambiclimate" = ps: with ps; [
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
       ambiclimate
     ];
+    "ambient_network" = ps: with ps; [
+      aioambient
+    ];
     "ambient_station" = ps: with ps; [
       aioambient
     ];
@@ -155,9 +149,6 @@
       asmog
     ];
     "analytics" = ps: with ps; [
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
       fnv-hash-fast
       psutil-home-assistant
       sqlalchemy
@@ -200,16 +191,10 @@
       aioapcaccess
     ];
     "api" = ps: with ps; [
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
     ];
     "appalachianpower" = ps: with ps; [
     ];
     "apple_tv" = ps: with ps; [
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
       fnv-hash-fast
       ifaddr
       psutil-home-assistant
@@ -218,9 +203,6 @@
       zeroconf
     ];
     "application_credentials" = ps: with ps; [
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
       fnv-hash-fast
       psutil-home-assistant
       sqlalchemy
@@ -242,9 +224,6 @@
     ];
     "aranet" = ps: with ps; [
       aioesphomeapi
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
       aioruuvigateway
       aioshelly
       aranet4
@@ -281,19 +260,15 @@
     "aruba" = ps: with ps; [
       pexpect
     ];
+    "arve" = ps: with ps; [
+    ]; # missing inputs: asyncarve
     "arwn" = ps: with ps; [
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
       paho-mqtt
     ];
     "aseko_pool_live" = ps: with ps; [
       aioaseko
     ];
     "assist_pipeline" = ps: with ps; [
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
       ha-ffmpeg
       hassil
       home-assistant-intents
@@ -337,14 +312,8 @@
       pyaussiebb
     ];
     "auth" = ps: with ps; [
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
     ];
     "automation" = ps: with ps; [
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
     ];
     "avea" = ps: with ps; [
       avea
@@ -359,9 +328,6 @@
       aiobotocore
     ];
     "axis" = ps: with ps; [
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
       axis
       paho-mqtt
     ];
@@ -375,9 +341,6 @@
       azure-servicebus
     ];
     "backup" = ps: with ps; [
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
       fnv-hash-fast
       psutil-home-assistant
       securetar
@@ -434,9 +397,6 @@
     ];
     "bluemaestro" = ps: with ps; [
       aioesphomeapi
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
       aioruuvigateway
       aioshelly
       bleak
@@ -468,9 +428,6 @@
       xmltodict
     ];
     "bluetooth" = ps: with ps; [
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
       bleak
       bleak-retry-connector
       bluetooth-adapters
@@ -486,9 +443,6 @@
     ];
     "bluetooth_adapters" = ps: with ps; [
       aioesphomeapi
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
       aioruuvigateway
       aioshelly
       bleak
@@ -515,9 +469,6 @@
     ];
     "bluetooth_le_tracker" = ps: with ps; [
       aioesphomeapi
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
       aioruuvigateway
       aioshelly
       bleak
@@ -554,9 +505,6 @@
       bond-async
     ];
     "bosch_shc" = ps: with ps; [
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
       boschshcpy
       fnv-hash-fast
       ifaddr
@@ -600,9 +548,6 @@
     ];
     "bthome" = ps: with ps; [
       aioesphomeapi
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
       aioruuvigateway
       aioshelly
       bleak
@@ -641,14 +586,8 @@
       caldav
     ];
     "calendar" = ps: with ps; [
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
     ];
     "camera" = ps: with ps; [
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
       pyturbojpeg
     ];
     "canary" = ps: with ps; [
@@ -656,9 +595,6 @@
       py-canary
     ];
     "cast" = ps: with ps; [
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
       fnv-hash-fast
       ha-ffmpeg
       hass-nabucasa
@@ -706,9 +642,6 @@
     "climate" = ps: with ps; [
     ];
     "cloud" = ps: with ps; [
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
       fnv-hash-fast
       ha-ffmpeg
       hass-nabucasa
@@ -756,9 +689,6 @@
     "coned" = ps: with ps; [
     ];
     "config" = ps: with ps; [
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
     ];
     "configurator" = ps: with ps; [
     ];
@@ -766,9 +696,6 @@
       pycontrol4
     ];
     "conversation" = ps: with ps; [
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
       hassil
       home-assistant-intents
     ];
@@ -789,9 +716,6 @@
     "cribl" = ps: with ps; [
     ];
     "crownstone" = ps: with ps; [
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
       crownstone-cloud
       crownstone-sse
       crownstone-uart
@@ -837,9 +761,6 @@
     "default_config" = ps: with ps; [
       aiodhcpwatcher
       aiodiscover
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
       async-upnp-client
       bleak
       bleak-retry-connector
@@ -880,9 +801,6 @@
       deluge-client
     ];
     "demo" = ps: with ps; [
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
       hassil
       home-assistant-intents
     ];
@@ -894,9 +812,6 @@
     "derivative" = ps: with ps; [
     ];
     "devialet" = ps: with ps; [
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
       devialet
       fnv-hash-fast
       ifaddr
@@ -907,17 +822,11 @@
     "device_automation" = ps: with ps; [
     ];
     "device_sun_light_trigger" = ps: with ps; [
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
       pillow
     ];
     "device_tracker" = ps: with ps; [
     ];
     "devolo_home_control" = ps: with ps; [
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
       devolo-home-control-api
       fnv-hash-fast
       ifaddr
@@ -937,14 +846,8 @@
       cached-ipaddress
     ];
     "diagnostics" = ps: with ps; [
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
     ];
     "dialogflow" = ps: with ps; [
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
     ];
     "diaz" = ps: with ps; [
     ];
@@ -974,9 +877,6 @@
     "dlink" = ps: with ps; [
     ]; # missing inputs: pyW215
     "dlna_dmr" = ps: with ps; [
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
       async-upnp-client
       fnv-hash-fast
       getmac
@@ -985,9 +885,6 @@
       sqlalchemy
     ];
     "dlna_dms" = ps: with ps; [
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
       async-upnp-client
       fnv-hash-fast
       ifaddr
@@ -998,27 +895,18 @@
       aiodns
     ];
     "dominos" = ps: with ps; [
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
     ]; # missing inputs: pizzapi
     "doods" = ps: with ps; [
       pillow
       pydoods
     ];
     "doorbird" = ps: with ps; [
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
       doorbirdpy
     ];
     "dooya" = ps: with ps; [
     ];
     "dormakaba_dkey" = ps: with ps; [
       aioesphomeapi
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
       aioruuvigateway
       aioshelly
       bleak
@@ -1052,9 +940,6 @@
       dremel3dpy
     ];
     "drop_connect" = ps: with ps; [
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
       dropmqttapi
       paho-mqtt
     ];
@@ -1062,9 +947,6 @@
       dsmr-parser
     ];
     "dsmr_reader" = ps: with ps; [
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
       paho-mqtt
     ];
     "dte_energy_bridge" = ps: with ps; [
@@ -1087,9 +969,6 @@
     "dweet" = ps: with ps; [
     ]; # missing inputs: dweepy
     "dynalite" = ps: with ps; [
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
       dynalite-devices
       dynalite-panel
       fnv-hash-fast
@@ -1127,9 +1006,6 @@
     ]; # missing inputs: py-sucks
     "ecowitt" = ps: with ps; [
       aioecowitt
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
     ];
     "eddystone_temperature" = ps: with ps; [
     ]; # missing inputs: beacontools
@@ -1150,9 +1026,6 @@
     "electrasmart" = ps: with ps; [
     ]; # missing inputs: pyElectra
     "electric_kiwi" = ps: with ps; [
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
       fnv-hash-fast
       psutil-home-assistant
       sqlalchemy
@@ -1164,9 +1037,6 @@
       eliqonline
     ];
     "elkm1" = ps: with ps; [
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
       elkm1-lib
       fnv-hash-fast
       ifaddr
@@ -1180,9 +1050,6 @@
       pypca
     ];
     "elvia" = ps: with ps; [
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
       fnv-hash-fast
       psutil-home-assistant
       sqlalchemy
@@ -1198,9 +1065,6 @@
       aioemonitor
     ];
     "emulated_hue" = ps: with ps; [
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
       fnv-hash-fast
       ifaddr
       psutil-home-assistant
@@ -1210,21 +1074,17 @@
       sense-energy
     ];
     "emulated_roku" = ps: with ps; [
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
       emulated-roku
       fnv-hash-fast
       ifaddr
       psutil-home-assistant
       sqlalchemy
     ];
+    "energenie_power_sockets" = ps: with ps; [
+    ]; # missing inputs: pyegps
     "energie_vanons" = ps: with ps; [
     ];
     "energy" = ps: with ps; [
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
       fnv-hash-fast
       psutil-home-assistant
       sqlalchemy
@@ -1255,14 +1115,40 @@
     "ephember" = ps: with ps; [
       pyephember
     ];
+    "epic_games_store" = ps: with ps; [
+    ]; # missing inputs: epicstore-api
     "epion" = ps: with ps; [
       epion
     ];
     "epson" = ps: with ps; [
       epson-projector
     ];
-    "epsonworkforce" = ps: with ps; [
-    ]; # missing inputs: epsonprinter
+    "eq3btsmart" = ps: with ps; [
+      aioesphomeapi
+      aioruuvigateway
+      aioshelly
+      bleak
+      bleak-esphome
+      bleak-retry-connector
+      bluetooth-adapters
+      bluetooth-auto-recovery
+      bluetooth-data-tools
+      dbus-fast
+      esphome-dashboard-api
+      fnv-hash-fast
+      ha-ffmpeg
+      habluetooth
+      hassil
+      home-assistant-intents
+      ifaddr
+      mutagen
+      psutil-home-assistant
+      pyserial
+      pyudev
+      sqlalchemy
+      webrtc-noise-gain
+      zeroconf
+    ]; # missing inputs: eq3btsmart
     "escea" = ps: with ps; [
       pescea
     ];
@@ -1270,9 +1156,6 @@
     ];
     "esphome" = ps: with ps; [
       aioesphomeapi
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
       bleak
       bleak-esphome
       bleak-retry-connector
@@ -1302,9 +1185,6 @@
     ];
     "eufylife_ble" = ps: with ps; [
       aioesphomeapi
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
       aioruuvigateway
       aioshelly
       bleak
@@ -1383,16 +1263,10 @@
       file-read-backwards
     ];
     "file_upload" = ps: with ps; [
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
     ];
     "filesize" = ps: with ps; [
     ];
     "filter" = ps: with ps; [
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
       fnv-hash-fast
       psutil-home-assistant
       sqlalchemy
@@ -1409,9 +1283,6 @@
       pymata-express
     ];
     "fitbit" = ps: with ps; [
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
       fitbit
       fnv-hash-fast
       psutil-home-assistant
@@ -1425,9 +1296,6 @@
     ];
     "fjaraskupan" = ps: with ps; [
       aioesphomeapi
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
       aioruuvigateway
       aioshelly
       bleak
@@ -1483,9 +1351,6 @@
     "flux" = ps: with ps; [
     ];
     "flux_led" = ps: with ps; [
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
       flux-led
       fnv-hash-fast
       ifaddr
@@ -1504,9 +1369,6 @@
       forecast-solar
     ];
     "forked_daapd" = ps: with ps; [
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
       fnv-hash-fast
       psutil-home-assistant
       spotipy
@@ -1519,9 +1381,6 @@
       libpyfoscam
     ];
     "foursquare" = ps: with ps; [
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
     ];
     "free_mobile" = ps: with ps; [
     ]; # missing inputs: freesms
@@ -1535,9 +1394,6 @@
       pyfreedompro
     ];
     "fritz" = ps: with ps; [
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
       fnv-hash-fast
       fritzconnection
       ifaddr
@@ -1557,9 +1413,6 @@
       pyfronius
     ];
     "frontend" = ps: with ps; [
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
       fnv-hash-fast
       home-assistant-frontend
       pillow
@@ -1572,9 +1425,6 @@
     "fujitsu_anywair" = ps: with ps; [
     ];
     "fully_kiosk" = ps: with ps; [
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
       paho-mqtt
       python-fullykiosk
     ];
@@ -1591,9 +1441,6 @@
     ];
     "gardena_bluetooth" = ps: with ps; [
       aioesphomeapi
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
       aioruuvigateway
       aioshelly
       bleak
@@ -1627,18 +1474,12 @@
       aio-georss-gdacs
     ];
     "generic" = ps: with ps; [
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
       ha-av
       pillow
     ];
     "generic_hygrostat" = ps: with ps; [
     ];
     "generic_thermostat" = ps: with ps; [
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
       fnv-hash-fast
       psutil-home-assistant
       sqlalchemy
@@ -1655,18 +1496,12 @@
       georss-generic-client
     ];
     "geocaching" = ps: with ps; [
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
       fnv-hash-fast
       geocachingapi
       psutil-home-assistant
       sqlalchemy
     ];
     "geofency" = ps: with ps; [
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
     ];
     "geonetnz_quakes" = ps: with ps; [
       aio-geojson-geonetnz-quakes
@@ -1698,9 +1533,6 @@
       goodwe
     ];
     "google" = ps: with ps; [
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
       fnv-hash-fast
       gcal-sync
       ical
@@ -1709,9 +1541,6 @@
       sqlalchemy
     ];
     "google_assistant" = ps: with ps; [
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
       fnv-hash-fast
       psutil-home-assistant
       python-matter-server
@@ -1719,9 +1548,6 @@
       sqlalchemy
     ];
     "google_assistant_sdk" = ps: with ps; [
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
       fnv-hash-fast
       gassist-text
       psutil-home-assistant
@@ -1733,17 +1559,11 @@
     "google_domains" = ps: with ps; [
     ];
     "google_generative_ai_conversation" = ps: with ps; [
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
       google-generativeai
       hassil
       home-assistant-intents
     ];
     "google_mail" = ps: with ps; [
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
       fnv-hash-fast
       google-api-python-client
       psutil-home-assistant
@@ -1756,18 +1576,12 @@
       google-cloud-pubsub
     ];
     "google_sheets" = ps: with ps; [
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
       fnv-hash-fast
       gspread
       psutil-home-assistant
       sqlalchemy
     ];
     "google_tasks" = ps: with ps; [
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
       fnv-hash-fast
       google-api-python-client
       psutil-home-assistant
@@ -1783,9 +1597,6 @@
     ];
     "govee_ble" = ps: with ps; [
       aioesphomeapi
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
       aioruuvigateway
       aioshelly
       bleak
@@ -1812,9 +1623,6 @@
       zeroconf
     ];
     "govee_light_local" = ps: with ps; [
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
       fnv-hash-fast
       govee-local-api
       ifaddr
@@ -1825,16 +1633,10 @@
       gps3
     ];
     "gpslogger" = ps: with ps; [
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
     ];
     "graphite" = ps: with ps; [
     ];
     "gree" = ps: with ps; [
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
       fnv-hash-fast
       greeclimate
       ifaddr
@@ -1863,9 +1665,6 @@
       habitipy
     ];
     "hardkernel" = ps: with ps; [
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
       psutil-home-assistant
     ];
     "hardware" = ps: with ps; [
@@ -1878,9 +1677,6 @@
       aioharmony
     ];
     "hassio" = ps: with ps; [
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
     ];
     "havana_shade" = ps: with ps; [
     ];
@@ -1915,17 +1711,11 @@
       pyaehw4a1
     ];
     "history" = ps: with ps; [
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
       fnv-hash-fast
       psutil-home-assistant
       sqlalchemy
     ];
     "history_stats" = ps: with ps; [
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
       fnv-hash-fast
       psutil-home-assistant
       sqlalchemy
@@ -1945,9 +1735,6 @@
       holidays
     ];
     "home_connect" = ps: with ps; [
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
       fnv-hash-fast
       homeconnect
       psutil-home-assistant
@@ -1960,9 +1747,6 @@
     "homeassistant_alerts" = ps: with ps; [
     ];
     "homeassistant_green" = ps: with ps; [
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
       bellows
       fnv-hash-fast
       pillow
@@ -1981,9 +1765,6 @@
       zigpy-znp
     ];
     "homeassistant_hardware" = ps: with ps; [
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
       bellows
       fnv-hash-fast
       pillow
@@ -2002,9 +1783,6 @@
       zigpy-znp
     ];
     "homeassistant_sky_connect" = ps: with ps; [
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
       bellows
       fnv-hash-fast
       pillow
@@ -2023,9 +1801,6 @@
       zigpy-znp
     ];
     "homeassistant_yellow" = ps: with ps; [
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
       bellows
       fnv-hash-fast
       pillow
@@ -2044,9 +1819,6 @@
       zigpy-znp
     ];
     "homekit" = ps: with ps; [
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
       base36
       fnv-hash-fast
       ha-ffmpeg
@@ -2061,9 +1833,6 @@
     "homekit_controller" = ps: with ps; [
       aioesphomeapi
       aiohomekit
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
       aioruuvigateway
       aioshelly
       bleak
@@ -2111,15 +1880,9 @@
       python-hpilo
     ];
     "html5" = ps: with ps; [
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
       pywebpush
     ];
     "http" = ps: with ps; [
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
     ];
     "huawei_lte" = ps: with ps; [
       huawei-lte-api
@@ -2141,9 +1904,6 @@
     ];
     "husqvarna_automower" = ps: with ps; [
       aioautomower
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
       fnv-hash-fast
       psutil-home-assistant
       sqlalchemy
@@ -2172,9 +1932,6 @@
     ];
     "ibeacon" = ps: with ps; [
       aioesphomeapi
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
       aioruuvigateway
       aioshelly
       bleak
@@ -2205,9 +1962,6 @@
     ];
     "idasen_desk" = ps: with ps; [
       aioesphomeapi
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
       aioruuvigateway
       aioshelly
       bleak
@@ -2235,9 +1989,6 @@
     "idteck_prox" = ps: with ps; [
     ]; # missing inputs: rfk101py
     "ifttt" = ps: with ps; [
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
       pyfttt
     ];
     "iglo" = ps: with ps; [
@@ -2249,33 +2000,18 @@
       defusedxml
     ]; # missing inputs: ihcsdk
     "image" = ps: with ps; [
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
     ];
     "image_processing" = ps: with ps; [
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
       pyturbojpeg
     ];
     "image_upload" = ps: with ps; [
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
       pillow
     ];
     "imap" = ps: with ps; [
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
       aioimaplib
     ];
     "improv_ble" = ps: with ps; [
       aioesphomeapi
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
       aioruuvigateway
       aioshelly
       bleak
@@ -2311,9 +2047,6 @@
     ];
     "inkbird" = ps: with ps; [
       aioesphomeapi
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
       aioruuvigateway
       aioshelly
       bleak
@@ -2354,9 +2087,6 @@
     "inspired_shades" = ps: with ps; [
     ];
     "insteon" = ps: with ps; [
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
       fnv-hash-fast
       home-assistant-frontend
       insteon-frontend-home-assistant
@@ -2373,9 +2103,6 @@
       intellifire4py
     ];
     "intent" = ps: with ps; [
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
     ];
     "intent_script" = ps: with ps; [
     ];
@@ -2383,9 +2110,6 @@
       pyintesishome
     ];
     "ios" = ps: with ps; [
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
       fnv-hash-fast
       ifaddr
       psutil-home-assistant
@@ -2409,8 +2133,7 @@
     "irish_rail_transport" = ps: with ps; [
     ]; # missing inputs: pyirishrail
     "islamic_prayer_times" = ps: with ps; [
-      prayer-times-calculator
-    ];
+    ]; # missing inputs: prayer-times-calculator-offline
     "ismartwindow" = ps: with ps; [
     ];
     "iss" = ps: with ps; [
@@ -2460,9 +2183,6 @@
     ];
     "kegtron" = ps: with ps; [
       aioesphomeapi
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
       aioruuvigateway
       aioshelly
       bleak
@@ -2498,9 +2218,6 @@
     ];
     "keymitt_ble" = ps: with ps; [
       aioesphomeapi
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
       aioruuvigateway
       aioshelly
       bleak
@@ -2530,9 +2247,6 @@
       pykira
     ];
     "kitchen_sink" = ps: with ps; [
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
       fnv-hash-fast
       psutil-home-assistant
       sqlalchemy
@@ -2544,9 +2258,6 @@
       pykmtronic
     ];
     "knx" = ps: with ps; [
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
       fnv-hash-fast
       home-assistant-frontend
       knx-frontend
@@ -2557,15 +2268,9 @@
       xknxproject
     ];
     "kodi" = ps: with ps; [
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
       pykodi
     ];
     "konnected" = ps: with ps; [
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
       konnected
     ];
     "kostal_plenticore" = ps: with ps; [
@@ -2590,9 +2295,6 @@
     ]; # missing inputs: lacrosse-view
     "lamarzocco" = ps: with ps; [
       aioesphomeapi
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
       aioruuvigateway
       aioshelly
       bleak
@@ -2619,18 +2321,12 @@
       zeroconf
     ];
     "lametric" = ps: with ps; [
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
       demetriek
       fnv-hash-fast
       psutil-home-assistant
       sqlalchemy
     ];
     "landisgyr_heat_meter" = ps: with ps; [
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
       fnv-hash-fast
       psutil-home-assistant
       pyserial
@@ -2656,9 +2352,6 @@
     ];
     "ld2410_ble" = ps: with ps; [
       aioesphomeapi
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
       aioruuvigateway
       aioshelly
       bleak
@@ -2686,9 +2379,6 @@
     ];
     "leaone" = ps: with ps; [
       aioesphomeapi
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
       aioruuvigateway
       aioshelly
       bleak
@@ -2715,9 +2405,6 @@
     ]; # missing inputs: leaone-ble
     "led_ble" = ps: with ps; [
       aioesphomeapi
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
       aioruuvigateway
       aioshelly
       bleak
@@ -2746,7 +2433,11 @@
     "legrand" = ps: with ps; [
     ];
     "lg_netcast" = ps: with ps; [
+      fnv-hash-fast
+      ifaddr
+      psutil-home-assistant
       pylgnetcast
+      sqlalchemy
     ];
     "lg_soundbar" = ps: with ps; [
       temescal
@@ -2757,9 +2448,6 @@
     "life360" = ps: with ps; [
     ];
     "lifx" = ps: with ps; [
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
       aiolifx
       aiolifx-effects
       aiolifx-themes
@@ -2807,9 +2495,6 @@
     "local_file" = ps: with ps; [
     ];
     "local_ip" = ps: with ps; [
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
       fnv-hash-fast
       ifaddr
       psutil-home-assistant
@@ -2819,16 +2504,10 @@
       ical
     ];
     "locative" = ps: with ps; [
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
     ];
     "lock" = ps: with ps; [
     ];
     "logbook" = ps: with ps; [
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
       fnv-hash-fast
       home-assistant-frontend
       pillow
@@ -2840,9 +2519,6 @@
     "logger" = ps: with ps; [
     ];
     "logi_circle" = ps: with ps; [
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
       ha-ffmpeg
       logi-circle
     ];
@@ -2854,9 +2530,6 @@
       aiolookin
     ];
     "loqed" = ps: with ps; [
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
       fnv-hash-fast
       ha-ffmpeg
       hass-nabucasa
@@ -2871,9 +2544,6 @@
       webrtc-noise-gain
     ];
     "lovelace" = ps: with ps; [
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
       pillow
     ];
     "luci" = ps: with ps; [
@@ -2896,9 +2566,6 @@
     "lw12wifi" = ps: with ps; [
     ]; # missing inputs: lw12
     "lyric" = ps: with ps; [
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
       aiolyric
       fnv-hash-fast
       psutil-home-assistant
@@ -2907,28 +2574,16 @@
     "madeco" = ps: with ps; [
     ];
     "mailbox" = ps: with ps; [
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
     ];
     "mailgun" = ps: with ps; [
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
       pymailgunner
     ];
     "manual" = ps: with ps; [
     ];
     "manual_mqtt" = ps: with ps; [
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
       paho-mqtt
     ];
     "map" = ps: with ps; [
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
       fnv-hash-fast
       home-assistant-frontend
       pillow
@@ -2949,9 +2604,6 @@
       pillow
     ];
     "matter" = ps: with ps; [
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
       fnv-hash-fast
       psutil-home-assistant
       python-matter-server
@@ -2967,9 +2619,6 @@
     ];
     "medcom_ble" = ps: with ps; [
       aioesphomeapi
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
       aioruuvigateway
       aioshelly
       bleak
@@ -2995,20 +2644,11 @@
       zeroconf
     ]; # missing inputs: medcom-ble
     "media_extractor" = ps: with ps; [
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
       yt-dlp
     ];
     "media_player" = ps: with ps; [
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
     ];
     "media_source" = ps: with ps; [
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
     ];
     "mediaroom" = ps: with ps; [
       pymediaroom
@@ -3020,9 +2660,6 @@
     ]; # missing inputs: py-melissa-climate
     "melnor" = ps: with ps; [
       aioesphomeapi
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
       aioruuvigateway
       aioshelly
       bleak
@@ -3048,9 +2685,6 @@
       zeroconf
     ]; # missing inputs: melnor-bluetooth
     "meraki" = ps: with ps; [
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
     ];
     "message_bird" = ps: with ps; [
       messagebird
@@ -3076,9 +2710,6 @@
     "mfi" = ps: with ps; [
     ]; # missing inputs: mficlient
     "microbees" = ps: with ps; [
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
       fnv-hash-fast
       psutil-home-assistant
       sqlalchemy
@@ -3086,21 +2717,12 @@
     "microsoft" = ps: with ps; [
     ]; # missing inputs: pycsspeechtts
     "microsoft_face" = ps: with ps; [
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
       pyturbojpeg
     ];
     "microsoft_face_detect" = ps: with ps; [
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
       pyturbojpeg
     ];
     "microsoft_face_identify" = ps: with ps; [
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
       pyturbojpeg
     ];
     "mijndomein_energie" = ps: with ps; [
@@ -3124,9 +2746,6 @@
     ];
     "moat" = ps: with ps; [
       aioesphomeapi
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
       aioruuvigateway
       aioshelly
       bleak
@@ -3153,9 +2772,6 @@
       zeroconf
     ];
     "mobile_app" = ps: with ps; [
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
       fnv-hash-fast
       ha-ffmpeg
       hass-nabucasa
@@ -3176,9 +2792,6 @@
       pymodbus
     ];
     "modem_callerid" = ps: with ps; [
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
       fnv-hash-fast
       phone-modem
       psutil-home-assistant
@@ -3201,9 +2814,6 @@
     ];
     "mopeka" = ps: with ps; [
       aioesphomeapi
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
       aioruuvigateway
       aioshelly
       bleak
@@ -3230,9 +2840,6 @@
       zeroconf
     ];
     "motion_blinds" = ps: with ps; [
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
       fnv-hash-fast
       ifaddr
       motionblinds
@@ -3241,9 +2848,6 @@
     ];
     "motionblinds_ble" = ps: with ps; [
       aioesphomeapi
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
       aioruuvigateway
       aioshelly
       bleak
@@ -3269,9 +2873,6 @@
       zeroconf
     ]; # missing inputs: motionblindsble
     "motioneye" = ps: with ps; [
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
       motioneye-client
     ];
     "motionmount" = ps: with ps; [
@@ -3281,33 +2882,18 @@
       mpd2
     ];
     "mqtt" = ps: with ps; [
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
       paho-mqtt
     ];
     "mqtt_eventstream" = ps: with ps; [
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
       paho-mqtt
     ];
     "mqtt_json" = ps: with ps; [
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
       paho-mqtt
     ];
     "mqtt_room" = ps: with ps; [
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
       paho-mqtt
     ];
     "mqtt_statestream" = ps: with ps; [
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
       paho-mqtt
     ];
     "msteams" = ps: with ps; [
@@ -3323,9 +2909,6 @@
       pymvglive
     ];
     "my" = ps: with ps; [
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
       fnv-hash-fast
       home-assistant-frontend
       pillow
@@ -3335,25 +2918,16 @@
     "myq" = ps: with ps; [
     ];
     "mysensors" = ps: with ps; [
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
       paho-mqtt
       pymysensors
     ];
     "mystrom" = ps: with ps; [
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
       python-mystrom
     ];
     "mythicbeastsdns" = ps: with ps; [
       mbddns
     ];
     "myuplink" = ps: with ps; [
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
       fnv-hash-fast
       myuplink
       psutil-home-assistant
@@ -3372,9 +2946,6 @@
       aionanoleaf
     ];
     "neato" = ps: with ps; [
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
       fnv-hash-fast
       psutil-home-assistant
       pybotvac
@@ -3387,9 +2958,6 @@
       nessclient
     ];
     "nest" = ps: with ps; [
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
       fnv-hash-fast
       google-nest-sdm
       ha-ffmpeg
@@ -3397,9 +2965,6 @@
       sqlalchemy
     ];
     "netatmo" = ps: with ps; [
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
       fnv-hash-fast
       ha-ffmpeg
       hass-nabucasa
@@ -3423,14 +2988,8 @@
       eternalegypt
     ];
     "netio" = ps: with ps; [
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
     ]; # missing inputs: pynetio
     "network" = ps: with ps; [
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
       fnv-hash-fast
       ifaddr
       psutil-home-assistant
@@ -3474,9 +3033,6 @@
       pycarwings2
     ];
     "nmap_tracker" = ps: with ps; [
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
       aiooui
       fnv-hash-fast
       getmac
@@ -3514,9 +3070,6 @@
       nuheat
     ];
     "nuki" = ps: with ps; [
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
       pynuki
     ];
     "numato" = ps: with ps; [
@@ -3530,7 +3083,8 @@
     ];
     "nws" = ps: with ps; [
       pynws
-    ];
+    ]
+    ++ pynws.optional-dependencies.retry;
     "nx584" = ps: with ps; [
       pynx584
     ];
@@ -3552,9 +3106,6 @@
       defusedxml
     ];
     "ollama" = ps: with ps; [
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
       hassil
       home-assistant-intents
     ]; # missing inputs: ollama-hass
@@ -3565,18 +3116,12 @@
       omnilogic
     ];
     "onboarding" = ps: with ps; [
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
       pillow
     ];
     "oncue" = ps: with ps; [
       aiooncue
     ];
     "ondilo_ico" = ps: with ps; [
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
       ondilo
     ];
     "onewire" = ps: with ps; [
@@ -3594,12 +3139,12 @@
       open-meteo
     ];
     "openai_conversation" = ps: with ps; [
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
+      ha-ffmpeg
       hassil
       home-assistant-intents
+      mutagen
       openai
+      webrtc-noise-gain
     ];
     "openalpr_cloud" = ps: with ps; [
     ];
@@ -3639,9 +3184,6 @@
       pyopnsense
     ];
     "opower" = ps: with ps; [
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
       fnv-hash-fast
       opower
       psutil-home-assistant
@@ -3651,9 +3193,6 @@
     ]; # missing inputs: pyoppleio-legacy
     "oralb" = ps: with ps; [
       aioesphomeapi
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
       aioruuvigateway
       aioshelly
       bleak
@@ -3691,9 +3230,6 @@
     "osramlightify" = ps: with ps; [
     ]; # missing inputs: lightify
     "otbr" = ps: with ps; [
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
       bellows
       fnv-hash-fast
       ifaddr
@@ -3727,9 +3263,6 @@
       ovoenergy
     ];
     "owntracks" = ps: with ps; [
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
       fnv-hash-fast
       ha-ffmpeg
       hass-nabucasa
@@ -3757,9 +3290,6 @@
       pexpect
     ];
     "panel_custom" = ps: with ps; [
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
       fnv-hash-fast
       home-assistant-frontend
       pillow
@@ -3767,9 +3297,6 @@
       sqlalchemy
     ];
     "panel_iframe" = ps: with ps; [
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
       fnv-hash-fast
       home-assistant-frontend
       pillow
@@ -3796,9 +3323,6 @@
     "persistent_notification" = ps: with ps; [
     ];
     "person" = ps: with ps; [
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
       pillow
     ];
     "pge" = ps: with ps; [
@@ -3826,9 +3350,6 @@
     "pjlink" = ps: with ps; [
     ]; # missing inputs: pypjlink2
     "plaato" = ps: with ps; [
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
       fnv-hash-fast
       ha-ffmpeg
       hass-nabucasa
@@ -3843,17 +3364,11 @@
       webrtc-noise-gain
     ];
     "plant" = ps: with ps; [
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
       fnv-hash-fast
       psutil-home-assistant
       sqlalchemy
     ];
     "plex" = ps: with ps; [
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
       plexapi
       plexauth
       plexwebsocket
@@ -3867,9 +3382,6 @@
       pycketcasts
     ];
     "point" = ps: with ps; [
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
       pypoint
     ];
     "poolsense" = ps: with ps; [
@@ -3882,9 +3394,6 @@
     ];
     "private_ble_device" = ps: with ps; [
       aioesphomeapi
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
       aioruuvigateway
       aioshelly
       bleak
@@ -3919,9 +3428,6 @@
     "proliphix" = ps: with ps; [
     ]; # missing inputs: proliphix
     "prometheus" = ps: with ps; [
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
       prometheus-client
     ];
     "prosegur" = ps: with ps; [
@@ -3956,9 +3462,6 @@
       aiopurpleair
     ];
     "push" = ps: with ps; [
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
     ];
     "pushbullet" = ps: with ps; [
       pushbullet-py
@@ -3983,9 +3486,6 @@
     ]; # missing inputs: python-qbittorrent
     "qingping" = ps: with ps; [
       aioesphomeapi
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
       aioruuvigateway
       aioshelly
       bleak
@@ -4036,9 +3536,6 @@
       pyqwikswitch
     ];
     "rabbitair" = ps: with ps; [
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
       fnv-hash-fast
       ifaddr
       psutil-home-assistant
@@ -4047,9 +3544,6 @@
       zeroconf
     ];
     "rachio" = ps: with ps; [
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
       fnv-hash-fast
       ha-ffmpeg
       hass-nabucasa
@@ -4083,9 +3577,6 @@
       eagle100
     ];
     "rainforest_raven" = ps: with ps; [
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
       aioraven
       fnv-hash-fast
       psutil-home-assistant
@@ -4100,9 +3591,6 @@
     ];
     "rapt_ble" = ps: with ps; [
       aioesphomeapi
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
       aioruuvigateway
       aioshelly
       bleak
@@ -4129,9 +3617,6 @@
       zeroconf
     ];
     "raspberry_pi" = ps: with ps; [
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
       psutil-home-assistant
     ];
     "raspyrfm" = ps: with ps; [
@@ -4145,17 +3630,11 @@
       aiorecollect
     ];
     "recorder" = ps: with ps; [
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
       fnv-hash-fast
       psutil-home-assistant
       sqlalchemy
     ];
     "recovery_mode" = ps: with ps; [
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
       fnv-hash-fast
       ha-ffmpeg
       hass-nabucasa
@@ -4195,15 +3674,9 @@
       renson-endura-delta
     ];
     "reolink" = ps: with ps; [
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
       reolink-aio
     ];
     "repairs" = ps: with ps; [
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
     ];
     "repetier" = ps: with ps; [
     ]; # missing inputs: pyrepetierng
@@ -4222,9 +3695,6 @@
       pyrfxtrx
     ];
     "rhasspy" = ps: with ps; [
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
     ];
     "ridwell" = ps: with ps; [
       aioridwell
@@ -4275,16 +3745,10 @@
       rpi-bad-power
     ];
     "rss_feed_template" = ps: with ps; [
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
     ];
     "rtorrent" = ps: with ps; [
     ];
     "rtsp_to_webrtc" = ps: with ps; [
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
       pyturbojpeg
       rtsp-to-webrtc
     ];
@@ -4296,9 +3760,6 @@
     "russound_rnet" = ps: with ps; [
     ]; # missing inputs: russound
     "ruuvi_gateway" = ps: with ps; [
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
       aioruuvigateway
       bleak
       bleak-retry-connector
@@ -4315,9 +3776,6 @@
     ];
     "ruuvitag_ble" = ps: with ps; [
       aioesphomeapi
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
       aioruuvigateway
       aioshelly
       bleak
@@ -4354,9 +3812,6 @@
     "samsam" = ps: with ps; [
     ];
     "samsungtv" = ps: with ps; [
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
       async-upnp-client
       fnv-hash-fast
       getmac
@@ -4370,6 +3825,9 @@
     ++ samsungctl.optional-dependencies.websocket
     ++ samsungtvws.optional-dependencies.async
     ++ samsungtvws.optional-dependencies.encrypted;
+    "sanix" = ps: with ps; [
+      sanix
+    ];
     "satel_integra" = ps: with ps; [
     ]; # missing inputs: satel-integra
     "scene" = ps: with ps; [
@@ -4399,9 +3857,6 @@
     "scsgate" = ps: with ps; [
     ]; # missing inputs: scsgate
     "search" = ps: with ps; [
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
       fnv-hash-fast
       psutil-home-assistant
       sqlalchemy
@@ -4422,9 +3877,6 @@
     ];
     "sensirion_ble" = ps: with ps; [
       aioesphomeapi
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
       aioruuvigateway
       aioshelly
       bleak
@@ -4451,9 +3903,6 @@
       zeroconf
     ];
     "sensor" = ps: with ps; [
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
       fnv-hash-fast
       psutil-home-assistant
       sqlalchemy
@@ -4462,9 +3911,6 @@
     ];
     "sensorpro" = ps: with ps; [
       aioesphomeapi
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
       aioruuvigateway
       aioshelly
       bleak
@@ -4492,9 +3938,6 @@
     ];
     "sensorpush" = ps: with ps; [
       aioesphomeapi
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
       aioruuvigateway
       aioshelly
       bleak
@@ -4524,9 +3967,6 @@
       sentry-sdk
     ];
     "senz" = ps: with ps; [
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
       aiosenz
       fnv-hash-fast
       psutil-home-assistant
@@ -4555,9 +3995,6 @@
     "shell_command" = ps: with ps; [
     ];
     "shelly" = ps: with ps; [
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
       aioshelly
       bleak
       bleak-retry-connector
@@ -4577,9 +4014,6 @@
       shodan
     ];
     "shopping_list" = ps: with ps; [
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
     ];
     "sia" = ps: with ps; [
       pysiaalarm
@@ -4632,18 +4066,12 @@
     "slide" = ps: with ps; [
     ]; # missing inputs: goslide-api
     "slimproto" = ps: with ps; [
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
       aioslimproto
     ];
     "sma" = ps: with ps; [
       pysma
     ];
     "smappee" = ps: with ps; [
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
       pysmappee
     ];
     "smart_blinds" = ps: with ps; [
@@ -4656,9 +4084,6 @@
     "smarther" = ps: with ps; [
     ];
     "smartthings" = ps: with ps; [
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
       fnv-hash-fast
       ha-ffmpeg
       hass-nabucasa
@@ -4690,9 +4115,6 @@
       snapcast
     ];
     "snips" = ps: with ps; [
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
       paho-mqtt
     ];
     "snmp" = ps: with ps; [
@@ -4700,9 +4122,6 @@
     ];
     "snooz" = ps: with ps; [
       aioesphomeapi
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
       aioruuvigateway
       aioshelly
       bleak
@@ -4729,9 +4148,8 @@
       zeroconf
     ];
     "solaredge" = ps: with ps; [
-      solaredge
       stringcase
-    ];
+    ]; # missing inputs: aiosolaredge
     "solaredge_local" = ps: with ps; [
     ]; # missing inputs: solaredge-local
     "solarlog" = ps: with ps; [
@@ -4755,9 +4173,6 @@
       python-songpal
     ];
     "sonos" = ps: with ps; [
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
       async-upnp-client
       fnv-hash-fast
       ifaddr
@@ -4778,9 +4193,6 @@
       libsoundtouch
     ];
     "spaceapi" = ps: with ps; [
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
     ];
     "spc" = ps: with ps; [
       pyspcwebgw
@@ -4794,9 +4206,6 @@
     "splunk" = ps: with ps; [
     ]; # missing inputs: hass-splunk
     "spotify" = ps: with ps; [
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
       fnv-hash-fast
       psutil-home-assistant
       spotipy
@@ -4813,9 +4222,6 @@
       srpenergy
     ];
     "ssdp" = ps: with ps; [
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
       async-upnp-client
       fnv-hash-fast
       ifaddr
@@ -4833,9 +4239,6 @@
       xmltodict
     ];
     "statistics" = ps: with ps; [
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
       fnv-hash-fast
       psutil-home-assistant
       sqlalchemy
@@ -4847,9 +4250,6 @@
       steamodd
     ];
     "steamist" = ps: with ps; [
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
       aiosteamist
       discovery30303
       fnv-hash-fast
@@ -4866,9 +4266,6 @@
     "stookwijzer" = ps: with ps; [
     ]; # missing inputs: stookwijzer
     "stream" = ps: with ps; [
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
       ha-av
       numpy
       pyturbojpeg
@@ -4877,9 +4274,6 @@
       streamlabswater
     ];
     "stt" = ps: with ps; [
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
     ];
     "subaru" = ps: with ps; [
       subarulink
@@ -4918,9 +4312,6 @@
     ];
     "switchbot" = ps: with ps; [
       aioesphomeapi
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
       aioruuvigateway
       aioshelly
       bleak
@@ -4966,9 +4357,6 @@
     "synology_chat" = ps: with ps; [
     ];
     "synology_dsm" = ps: with ps; [
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
       py-synologydsm-api
     ];
     "synology_srm" = ps: with ps; [
@@ -4976,9 +4364,6 @@
     "syslog" = ps: with ps; [
     ];
     "system_bridge" = ps: with ps; [
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
       fnv-hash-fast
       ifaddr
       psutil-home-assistant
@@ -4988,9 +4373,6 @@
       zeroconf
     ];
     "system_health" = ps: with ps; [
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
     ];
     "system_log" = ps: with ps; [
     ];
@@ -5020,9 +4402,6 @@
     "tapsaff" = ps: with ps; [
     ]; # missing inputs: tapsaff
     "tasmota" = ps: with ps; [
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
       hatasmota
       paho-mqtt
     ];
@@ -5038,21 +4417,12 @@
       xmltodict
     ];
     "tedee" = ps: with ps; [
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
       pytedee-async
     ];
     "telegram" = ps: with ps; [
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
       python-telegram-bot
     ]; # missing inputs: python-telegram-bot.optional-dependencies.socks
     "telegram_bot" = ps: with ps; [
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
       python-telegram-bot
     ]; # missing inputs: python-telegram-bot.optional-dependencies.socks
     "tellduslive" = ps: with ps; [
@@ -5087,9 +4457,6 @@
     ]; # missing inputs: pytfiac
     "thermobeacon" = ps: with ps; [
       aioesphomeapi
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
       aioruuvigateway
       aioshelly
       bleak
@@ -5119,9 +4486,6 @@
     ];
     "thermopro" = ps: with ps; [
       aioesphomeapi
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
       aioruuvigateway
       aioshelly
       bleak
@@ -5159,9 +4523,6 @@
     "thomson" = ps: with ps; [
     ];
     "thread" = ps: with ps; [
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
       fnv-hash-fast
       ifaddr
       psutil-home-assistant
@@ -5173,9 +4534,6 @@
     "threshold" = ps: with ps; [
     ];
     "tibber" = ps: with ps; [
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
       fnv-hash-fast
       psutil-home-assistant
       pytibber
@@ -5188,9 +4546,6 @@
     ];
     "tilt_ble" = ps: with ps; [
       aioesphomeapi
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
       aioruuvigateway
       aioshelly
       bleak
@@ -5228,9 +4583,6 @@
     "tod" = ps: with ps; [
     ];
     "todo" = ps: with ps; [
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
     ];
     "todoist" = ps: with ps; [
       todoist-api-python
@@ -5244,9 +4596,6 @@
       pytomorrowio
     ];
     "toon" = ps: with ps; [
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
       fnv-hash-fast
       ha-ffmpeg
       hass-nabucasa
@@ -5261,9 +4610,6 @@
       webrtc-noise-gain
     ];
     "torque" = ps: with ps; [
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
     ];
     "totalconnect" = ps: with ps; [
       total-connect-client
@@ -5271,9 +4617,6 @@
     "touchline" = ps: with ps; [
     ]; # missing inputs: pytouchline
     "tplink" = ps: with ps; [
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
       fnv-hash-fast
       ifaddr
       psutil-home-assistant
@@ -5289,9 +4632,6 @@
     "tplink_tapo" = ps: with ps; [
     ];
     "traccar" = ps: with ps; [
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
       pytraccar
       stringcase
     ];
@@ -5331,9 +4671,6 @@
       numpy
     ];
     "tts" = ps: with ps; [
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
       ha-ffmpeg
       mutagen
     ];
@@ -5345,30 +4682,18 @@
       twentemilieu
     ];
     "twilio" = ps: with ps; [
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
       twilio
     ];
     "twilio_call" = ps: with ps; [
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
       twilio
     ];
     "twilio_sms" = ps: with ps; [
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
       twilio
     ];
     "twinkly" = ps: with ps; [
       ttls
     ];
     "twitch" = ps: with ps; [
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
       fnv-hash-fast
       psutil-home-assistant
       sqlalchemy
@@ -5400,9 +4725,6 @@
       unifiled
     ];
     "unifiprotect" = ps: with ps; [
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
       pyunifiprotect
       unifi-discovery
     ];
@@ -5420,9 +4742,6 @@
     "update" = ps: with ps; [
     ];
     "upnp" = ps: with ps; [
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
       async-upnp-client
       fnv-hash-fast
       getmac
@@ -5438,9 +4757,6 @@
       pyuptimerobot
     ];
     "usb" = ps: with ps; [
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
       fnv-hash-fast
       psutil-home-assistant
       pyserial
@@ -5470,9 +4786,6 @@
       vtjp
     ];
     "velbus" = ps: with ps; [
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
       fnv-hash-fast
       psutil-home-assistant
       pyserial
@@ -5529,9 +4842,6 @@
     "voicerss" = ps: with ps; [
     ];
     "voip" = ps: with ps; [
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
       ha-ffmpeg
       hassil
       home-assistant-intents
@@ -5590,9 +4900,6 @@
       apple-weatherkit
     ];
     "webhook" = ps: with ps; [
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
     ];
     "webmin" = ps: with ps; [
     ]; # missing inputs: webmin-xmlrpc
@@ -5600,9 +4907,6 @@
       aiowebostv
     ];
     "websocket_api" = ps: with ps; [
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
       fnv-hash-fast
       psutil-home-assistant
       sqlalchemy
@@ -5627,9 +4931,6 @@
     "wirelesstag" = ps: with ps; [
     ]; # missing inputs: wirelesstagpy
     "withings" = ps: with ps; [
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
       aiowithings
       fnv-hash-fast
       ha-ffmpeg
@@ -5644,9 +4945,6 @@
       webrtc-noise-gain
     ];
     "wiz" = ps: with ps; [
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
       fnv-hash-fast
       ifaddr
       psutil-home-assistant
@@ -5673,9 +4971,6 @@
     "wsdot" = ps: with ps; [
     ];
     "wyoming" = ps: with ps; [
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
       ha-ffmpeg
       hassil
       home-assistant-intents
@@ -5686,9 +4981,6 @@
     "x10" = ps: with ps; [
     ];
     "xbox" = ps: with ps; [
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
       fnv-hash-fast
       psutil-home-assistant
       sqlalchemy
@@ -5705,9 +4997,6 @@
     ];
     "xiaomi_ble" = ps: with ps; [
       aioesphomeapi
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
       aioruuvigateway
       aioshelly
       bleak
@@ -5754,9 +5043,6 @@
     ];
     "yalexs_ble" = ps: with ps; [
       aioesphomeapi
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
       aioruuvigateway
       aioshelly
       bleak
@@ -5786,9 +5072,6 @@
       rxv
     ];
     "yamaha_musiccast" = ps: with ps; [
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
       aiomusiccast
       async-upnp-client
       fnv-hash-fast
@@ -5805,9 +5088,6 @@
       pyyardian
     ];
     "yeelight" = ps: with ps; [
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
       async-upnp-client
       fnv-hash-fast
       ifaddr
@@ -5822,9 +5102,6 @@
       ha-ffmpeg
     ];
     "yolink" = ps: with ps; [
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
       fnv-hash-fast
       psutil-home-assistant
       sqlalchemy
@@ -5834,9 +5111,6 @@
       youless-api
     ];
     "youtube" = ps: with ps; [
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
       fnv-hash-fast
       psutil-home-assistant
       sqlalchemy
@@ -5852,9 +5126,6 @@
       bluepy
     ]; # missing inputs: zengge
     "zeroconf" = ps: with ps; [
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
       fnv-hash-fast
       ifaddr
       psutil-home-assistant
@@ -5870,9 +5141,6 @@
     "zeversolar" = ps: with ps; [
     ]; # missing inputs: zeversolar
     "zha" = ps: with ps; [
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
       bellows
       fnv-hash-fast
       pillow
@@ -5904,9 +5172,6 @@
       zm-py
     ];
     "zwave_js" = ps: with ps; [
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
       fnv-hash-fast
       psutil-home-assistant
       pyserial
@@ -5915,9 +5180,6 @@
       zwave-js-server-python
     ];
     "zwave_me" = ps: with ps; [
-      aiohttp-cors
-      aiohttp-fast-url-dispatcher
-      aiohttp-zlib-ng
       fnv-hash-fast
       ifaddr
       psutil-home-assistant
@@ -5957,6 +5219,7 @@
     "alexa"
     "amberelectric"
     "ambiclimate"
+    "ambient_network"
     "ambient_station"
     "analytics"
     "analytics_insights"
@@ -6101,6 +5364,7 @@
     "emulated_roku"
     "energy"
     "energyzero"
+    "enigma2"
     "enocean"
     "enphase_envoy"
     "environment_canada"
@@ -6263,7 +5527,6 @@
     "ipma"
     "ipp"
     "iqvia"
-    "islamic_prayer_times"
     "isy994"
     "izone"
     "jellyfin"
@@ -6293,6 +5556,7 @@
     "lcn"
     "ld2410_ble"
     "led_ble"
+    "lg_netcast"
     "lg_soundbar"
     "lidarr"
     "life360"
@@ -6515,6 +5779,7 @@
     "ruuvitag_ble"
     "sabnzbd"
     "samsungtv"
+    "sanix"
     "scene"
     "schedule"
     "schlage"
@@ -6556,12 +5821,12 @@
     "smartthings"
     "smarttub"
     "smhi"
+    "sms"
     "smtp"
     "snapcast"
     "snips"
     "snmp"
     "snooz"
-    "solaredge"
     "solarlog"
     "solax"
     "soma"
diff --git a/pkgs/servers/home-assistant/custom-components/default.nix b/pkgs/servers/home-assistant/custom-components/default.nix
index acfcf038f20e..8f5766aac0be 100644
--- a/pkgs/servers/home-assistant/custom-components/default.nix
+++ b/pkgs/servers/home-assistant/custom-components/default.nix
@@ -26,12 +26,16 @@
 
   localtuya = callPackage ./localtuya {};
 
+  midea_ac_lan = callPackage ./midea_ac_lan {};
+
   midea-air-appliances-lan = callPackage ./midea-air-appliances-lan {};
 
   miele = callPackage ./miele {};
 
   moonraker = callPackage ./moonraker {};
 
+  ntfy = callPackage ./ntfy {};
+
   omnik_inverter = callPackage ./omnik_inverter {};
 
   prometheus_sensor = callPackage ./prometheus_sensor {};
@@ -42,6 +46,8 @@
 
   smartthinq-sensors = callPackage ./smartthinq-sensors {};
 
+  tuya_local = callPackage ./tuya_local {};
+
   waste_collection_schedule = callPackage ./waste_collection_schedule {};
 
   xiaomi_gateway3 = callPackage ./xiaomi_gateway3 {};
diff --git a/pkgs/servers/home-assistant/custom-components/midea_ac_lan/default.nix b/pkgs/servers/home-assistant/custom-components/midea_ac_lan/default.nix
new file mode 100644
index 000000000000..7123389e8bc1
--- /dev/null
+++ b/pkgs/servers/home-assistant/custom-components/midea_ac_lan/default.nix
@@ -0,0 +1,25 @@
+{ lib
+, buildHomeAssistantComponent
+, fetchFromGitHub
+}:
+
+buildHomeAssistantComponent rec {
+  owner = "georgezhao2010";
+  domain = "midea_ac_lan";
+  version = "0.3.22";
+
+  src = fetchFromGitHub {
+    inherit owner;
+    repo = domain;
+    rev = "v${version}";
+    hash = "sha256-xTnbA4GztHOE61QObEJbzUSdbuSrhbcJ280DUDdM+n4=";
+  };
+
+  meta = with lib; {
+    description = "Auto-configure and then control your Midea M-Smart devices (Air conditioner, Fan, Water heater, Washer, etc) via local area network";
+    homepage = "https://github.com/georgezhao2010/midea_ac_lan/";
+    changelog = "https://github.com/georgezhao2010/midea_ac_lan/releases/tag/v${version}";
+    maintainers = with maintainers; [ k900 ];
+    license = licenses.mit;
+  };
+}
diff --git a/pkgs/servers/home-assistant/custom-components/ntfy/default.nix b/pkgs/servers/home-assistant/custom-components/ntfy/default.nix
new file mode 100644
index 000000000000..43920dbaef9e
--- /dev/null
+++ b/pkgs/servers/home-assistant/custom-components/ntfy/default.nix
@@ -0,0 +1,30 @@
+{ lib
+, fetchFromGitHub
+, buildHomeAssistantComponent
+, requests
+}:
+
+buildHomeAssistantComponent rec {
+  owner = "hbrennhaeuser";
+  domain = "ntfy";
+  version = "1.1.0-pre.2";
+
+  src = fetchFromGitHub {
+    inherit owner;
+    repo = "homeassistant_integration_ntfy";
+    rev = "v${version}";
+    hash = "sha256-OGCAJsAsnUjwaLR8lCBdU+ghVOGFF0mT73t5JtcngUA=";
+  };
+
+  propagatedBuildInputs = [
+    requests
+  ];
+
+  meta = with lib; {
+    description = "Send notifications with ntfy.sh and selfhosted ntfy-servers";
+    homepage = "https://github.com/hbrennhaeuser/homeassistant_integration_ntfy";
+    maintainers = with maintainers; [ koral ];
+    license = licenses.gpl3;
+  };
+}
+
diff --git a/pkgs/servers/home-assistant/custom-components/smartir/default.nix b/pkgs/servers/home-assistant/custom-components/smartir/default.nix
index 5dc9eb2473d7..876579639b64 100644
--- a/pkgs/servers/home-assistant/custom-components/smartir/default.nix
+++ b/pkgs/servers/home-assistant/custom-components/smartir/default.nix
@@ -1,8 +1,11 @@
-{ lib
-, buildHomeAssistantComponent
-, fetchFromGitHub
-, aiofiles
-, broadlink
+{
+  lib,
+  buildHomeAssistantComponent,
+  fetchFromGitHub,
+  fetchpatch,
+  aiofiles,
+  broadlink,
+  nix-update-script,
 }:
 
 buildHomeAssistantComponent rec {
@@ -17,6 +20,15 @@ buildHomeAssistantComponent rec {
     hash = "sha256-E6TM761cuaeQzlbjA+oZ+wt5HTJAfkF2J3i4P1Wbuic=";
   };
 
+  patches = [
+    # Replace distutils.version.StrictVersion with packaging.version.Version
+    # https://github.com/smartHomeHub/SmartIR/pull/1250
+    (fetchpatch {
+      url = "https://github.com/smartHomeHub/SmartIR/commit/1ed8ef23a8f7b9dcae75721eeab8d5f79013b851.patch";
+      hash = "sha256-IhdnTDtUa7mS+Vw/+BqfqWIKK4hbshbVgJNjfKjgAvI=";
+    })
+  ];
+
   propagatedBuildInputs = [
     aiofiles
     broadlink
@@ -28,6 +40,8 @@ buildHomeAssistantComponent rec {
     cp -r codes $out/custom_components/smartir/
   '';
 
+  passthru.updateScript = nix-update-script { };
+
   meta = with lib; {
     changelog = "https://github.com/smartHomeHub/SmartIR/releases/tag/v${version}";
     description = "Integration for Home Assistant to control climate, TV and fan devices via IR/RF controllers (Broadlink, Xiaomi, MQTT, LOOKin, ESPHome)";
diff --git a/pkgs/servers/home-assistant/custom-components/tuya_local/default.nix b/pkgs/servers/home-assistant/custom-components/tuya_local/default.nix
new file mode 100644
index 000000000000..910dcca051cc
--- /dev/null
+++ b/pkgs/servers/home-assistant/custom-components/tuya_local/default.nix
@@ -0,0 +1,30 @@
+{ lib
+, buildHomeAssistantComponent
+, fetchFromGitHub
+
+# dependencies
+, tinytuya
+}:
+
+buildHomeAssistantComponent rec {
+  owner = "make-all";
+  domain = "tuya_local";
+  version = "2024.5.2";
+
+  src = fetchFromGitHub {
+    inherit owner;
+    repo = "tuya-local";
+    rev = "refs/tags/${version}";
+    hash = "sha256-If5SLLizagolXF5Y43UQK5IZ9oB1lQJVjTorgmtRXtg=";
+  };
+
+  dependencies = [ tinytuya ];
+
+  meta = with lib; {
+    description = "Local support for Tuya devices in Home Assistant";
+    homepage = "https://github.com/make-all/tuya-local";
+    changelog = "https://github.com/make-all/tuya-local/releases/tag/${version}";
+    license = licenses.mit;
+    maintainers = with maintainers; [ pathob ];
+  };
+}
diff --git a/pkgs/servers/home-assistant/custom-components/waste_collection_schedule/default.nix b/pkgs/servers/home-assistant/custom-components/waste_collection_schedule/default.nix
index 513d593ce51d..cdbd2c2067bf 100644
--- a/pkgs/servers/home-assistant/custom-components/waste_collection_schedule/default.nix
+++ b/pkgs/servers/home-assistant/custom-components/waste_collection_schedule/default.nix
@@ -1,7 +1,6 @@
 { lib
 , buildHomeAssistantComponent
 , fetchFromGitHub
-, fetchpatch
 , beautifulsoup4
 , icalendar
 , icalevents
@@ -12,23 +11,15 @@
 buildHomeAssistantComponent rec {
   owner = "mampfes";
   domain = "waste_collection_schedule";
-  version = "1.44.0";
+  version = "1.48.0";
 
   src = fetchFromGitHub {
     inherit owner;
     repo = "hacs_${domain}";
     rev = "refs/tags/${version}";
-    hash = "sha256-G1x7HtgdtK+IaPAfxT+7xsDJi5FnXN4Pg3q7T5Xr8lA=";
+    hash = "sha256-4JtPhErAqHO06c8tEmwmWsot1Kz1wz2QuiUGdrgU8II=";
   };
 
-  patches = [
-    # Corrects a dependency on beautifulsoup4
-    (fetchpatch {
-      url = "https://github.com/mampfes/hacs_waste_collection_schedule/pull/1515.patch";
-      hash = "sha256-dvmicKTjolEcCrKRtZfpN0M/9RQCEQkFk+M6E+qCqfQ=";
-    })
-  ];
-
   propagatedBuildInputs = [
     beautifulsoup4
     icalendar
diff --git a/pkgs/servers/home-assistant/custom-components/xiaomi_gateway3/default.nix b/pkgs/servers/home-assistant/custom-components/xiaomi_gateway3/default.nix
index fd453e0d321c..40899c8926ea 100644
--- a/pkgs/servers/home-assistant/custom-components/xiaomi_gateway3/default.nix
+++ b/pkgs/servers/home-assistant/custom-components/xiaomi_gateway3/default.nix
@@ -1,27 +1,29 @@
-{ lib
-, buildHomeAssistantComponent
-, fetchFromGitHub
-, zigpy
+{
+  lib,
+  buildHomeAssistantComponent,
+  fetchFromGitHub,
+  zigpy,
+  nix-update-script,
 }:
 
 buildHomeAssistantComponent rec {
   owner = "AlexxIT";
   domain = "xiaomi_gateway3";
-  version = "4.0.3";
+  version = "4.0.5";
 
   src = fetchFromGitHub {
     owner = "AlexxIT";
     repo = "XiaomiGateway3";
     rev = "v${version}";
-    hash = "sha256-YGaVQaz3A0yM8AIC02CvMKWMJ3tW3OADYgKY8ViIt5U=";
+    hash = "sha256-C8aY23e6iWANbhCRQYNHx+3fomVO+7qdxj+qfv+K3JM=";
   };
 
-  propagatedBuildInputs = [
-    zigpy
-  ];
+  propagatedBuildInputs = [ zigpy ];
 
   dontBuild = true;
 
+  passthru.updateScript = nix-update-script { };
+
   meta = with lib; {
     changelog = "https://github.com/AlexxIT/XiaomiGateway3/releases/tag/v{version}";
     description = "Home Assistant custom component for control Xiaomi Multimode Gateway (aka Gateway 3), Xiaomi Multimode Gateway 2, Aqara Hub E1 on default firmwares over LAN";
diff --git a/pkgs/servers/home-assistant/custom-components/xiaomi_miot/default.nix b/pkgs/servers/home-assistant/custom-components/xiaomi_miot/default.nix
index 0c64655d76df..6c26192d4228 100644
--- a/pkgs/servers/home-assistant/custom-components/xiaomi_miot/default.nix
+++ b/pkgs/servers/home-assistant/custom-components/xiaomi_miot/default.nix
@@ -1,22 +1,24 @@
-{ lib
-, buildHomeAssistantComponent
-, fetchFromGitHub
-, hap-python
-, micloud
-, pyqrcode
-, python-miio
+{
+  lib,
+  buildHomeAssistantComponent,
+  fetchFromGitHub,
+  hap-python,
+  micloud,
+  pyqrcode,
+  python-miio,
+  nix-update-script,
 }:
 
 buildHomeAssistantComponent rec {
   owner = "al-one";
   domain = "xiaomi_miot";
-  version = "0.7.17";
+  version = "0.7.18";
 
   src = fetchFromGitHub {
     owner = "al-one";
     repo = "hass-xiaomi-miot";
     rev = "v${version}";
-    hash = "sha256-IpL4e2mKCdtNu8NtI+xpx4FPW/uj1M5Rk6DswXmSJBk=";
+    hash = "sha256-/Zn2jEjwkCHiz48nVjKEPcCpPVajLaZ81DCTNpx1vbk=";
   };
 
   propagatedBuildInputs = [
@@ -28,6 +30,8 @@ buildHomeAssistantComponent rec {
 
   dontBuild = true;
 
+  passthru.updateScript = nix-update-script { };
+
   meta = with lib; {
     changelog = "https://github.com/al-one/hass-xiaomi-miot/releases/tag/${version}";
     description = "Automatic integrate all Xiaomi devices to HomeAssistant via miot-spec, support Wi-Fi, BLE, ZigBee devices.";
diff --git a/pkgs/servers/home-assistant/custom-lovelace-modules/android-tv-card/default.nix b/pkgs/servers/home-assistant/custom-lovelace-modules/android-tv-card/default.nix
new file mode 100644
index 000000000000..34fc23dfcc88
--- /dev/null
+++ b/pkgs/servers/home-assistant/custom-lovelace-modules/android-tv-card/default.nix
@@ -0,0 +1,39 @@
+{ lib
+, buildNpmPackage
+, fetchFromGitHub
+}:
+
+buildNpmPackage rec {
+  pname = "android-tv-card";
+  version = "3.7.0";
+
+  src = fetchFromGitHub {
+    owner = "Nerwyn";
+    repo = "android-tv-card";
+    rev = version;
+    hash = "sha256-6SwSoFeGS3kzk4jz+vSVb8ENMcSFxaunyTzuPe1kHBI=";
+  };
+
+  patches = [ ./dont-call-git.patch ];
+
+  npmDepsHash = "sha256-QO3IAd7RC8VBa2YjQVn4HUm64mQL86OuAhjJO0Oo94M=";
+
+  installPhase = ''
+    runHook preInstall
+
+    mkdir $out
+    cp dist/android-tv-card.min.js $out
+
+    runHook postInstall
+  '';
+
+  passthru.entrypoint = "android-tv-card.min.js";
+
+  meta = with lib; {
+    description = "Universal Customizable TV Remote Card, with HA actions, super configurable touchpad, slider, haptics, and keyboard";
+    homepage = "https://github.com/Nerwyn/android-tv-card";
+    license = licenses.asl20;
+    maintainers = with maintainers; [ k900 ];
+    platforms = platforms.all;
+  };
+}
diff --git a/pkgs/servers/home-assistant/custom-lovelace-modules/android-tv-card/dont-call-git.patch b/pkgs/servers/home-assistant/custom-lovelace-modules/android-tv-card/dont-call-git.patch
new file mode 100644
index 000000000000..ad409a30dc26
--- /dev/null
+++ b/pkgs/servers/home-assistant/custom-lovelace-modules/android-tv-card/dont-call-git.patch
@@ -0,0 +1,17 @@
+diff --git a/webpack.config.js b/webpack.config.js
+index 469ffe1..3233c4b 100644
+--- a/webpack.config.js
++++ b/webpack.config.js
+@@ -1,11 +1,7 @@
+ const path = require('path');
+ const { execSync } = require('child_process');
+ 
+-let env =
+-	execSync('git branch --show-current').toString().trim() == 'main'
+-		? 'production'
+-		: 'development';
+-env = 'production';
++let env = 'production';
+ 
+ module.exports = {
+ 	mode: env,
diff --git a/pkgs/servers/home-assistant/custom-lovelace-modules/button-card/default.nix b/pkgs/servers/home-assistant/custom-lovelace-modules/button-card/default.nix
new file mode 100644
index 000000000000..d6ec293f31de
--- /dev/null
+++ b/pkgs/servers/home-assistant/custom-lovelace-modules/button-card/default.nix
@@ -0,0 +1,52 @@
+{ lib
+, mkYarnPackage
+, fetchYarnDeps
+, fetchFromGitHub
+}:
+
+mkYarnPackage rec {
+  pname = "button-card";
+  version = "4.1.2";
+
+  src = fetchFromGitHub {
+    owner = "custom-cards";
+    repo = "button-card";
+    rev = "v${version}";
+    hash = "sha256-Ntg1sNgAehcL2fT0rP0YHzV5q6rB5p1TyFXtbZyB3Vo=";
+  };
+
+  packageJSON = ./package.json;
+
+  offlineCache = fetchYarnDeps {
+    yarnLock = src + "/yarn.lock";
+    hash = "sha256-OFnsRR9zA9D22xBdh4XfLueGVA2ERXmGEp54x0OFDFY=";
+  };
+
+  buildPhase = ''
+    runHook preBuild
+
+    yarn build
+
+    runHook postBuild
+  '';
+
+  installPhase = ''
+    runHook preInstall
+
+    mkdir $out
+    cp ./deps/button-card/dist/button-card.js $out
+
+    runHook postInstall
+  '';
+
+  doDist = false;
+
+  meta = with lib; {
+    description = "Lovelace button-card for home assistant";
+    homepage = "https://github.com/custom-cards/button-card";
+    changelog = "https://github.com/custom-cards/button-card/blob/${src.rev}/CHANGELOG.md";
+    license = licenses.mit;
+    maintainers = with maintainers; [ k900 ];
+    platforms = platforms.all;
+  };
+}
diff --git a/pkgs/servers/home-assistant/custom-lovelace-modules/button-card/package.json b/pkgs/servers/home-assistant/custom-lovelace-modules/button-card/package.json
new file mode 100644
index 000000000000..55bf12512470
--- /dev/null
+++ b/pkgs/servers/home-assistant/custom-lovelace-modules/button-card/package.json
@@ -0,0 +1,78 @@
+{
+  "name": "button-card",
+  "version": "4.1.2",
+  "description": "Button card for lovelace",
+  "main": "dist/button-card.js",
+  "scripts": {
+    "build": "npm run lint && npm run rollup",
+    "rollup": "rollup -c",
+    "babel": "babel dist/button-card.js --out-file dist/button-card.js",
+    "lint": "eslint src/*.ts",
+    "watch": "rollup -c --watch",
+    "postversion": "npm run build",
+    "audit-fix": "npx yarn-audit-fix"
+  },
+  "repository": {
+    "type": "git",
+    "url": "git+https://github.com/custom-cards/button-card.git"
+  },
+  "keywords": [
+    "lovelace"
+  ],
+  "author": "kuuji",
+  "contributors": [
+    "Ian Richardson (https://github.com/iantrich)",
+    "Jérôme Wiedemann (https://github.com/RomRider)"
+  ],
+  "license": "MIT",
+  "bugs": {
+    "url": "https://github.com/custom-cards/button-card/issues"
+  },
+  "homepage": "https://github.com/custom-cards/button-card#readme",
+  "devDependencies": {
+    "@babel/core": "^7.12.3",
+    "@babel/plugin-proposal-class-properties": "^7.12.1",
+    "@babel/plugin-proposal-decorators": "^7.12.1",
+    "@rollup/plugin-babel": "^5.2.1",
+    "@rollup/plugin-commonjs": "^16.0.0",
+    "@rollup/plugin-json": "^4.0.2",
+    "@rollup/plugin-node-resolve": "^10.0.0",
+    "@semantic-release/changelog": "^5.0.1",
+    "@semantic-release/commit-analyzer": "^8.0.1",
+    "@semantic-release/exec": "^5.0.0",
+    "@semantic-release/git": "^9.0.0",
+    "@semantic-release/npm": "^7.0.10",
+    "@semantic-release/release-notes-generator": "^9.0.1",
+    "@typescript-eslint/eslint-plugin": "^6.1.0",
+    "@typescript-eslint/parser": "^6.1.0",
+    "conventional-changelog-conventionalcommits": "^4.5.0",
+    "eslint": "7.12.1",
+    "eslint-config-airbnb-base": "^14.1.0",
+    "eslint-config-prettier": "^6.15.0",
+    "eslint-plugin-import": "^2.22.1",
+    "eslint-plugin-prettier": "^3.1.2",
+    "npm": "^6.14.3",
+    "prettier": "^2.1.2",
+    "prettier-eslint": "^11.0.0",
+    "rollup": "^2.33.1",
+    "rollup-plugin-cleanup": "^3.2.1",
+    "rollup-plugin-serve": "^1.1.0",
+    "rollup-plugin-terser": "^7.0.2",
+    "rollup-plugin-typescript2": "^0.29.0",
+    "semantic-release": "^17.3.8",
+    "ts-lit-plugin": "^1.1.10",
+    "typescript": "^4.0.5",
+    "typescript-styled-plugin": "^0.15.0",
+    "yarn-audit-fix": "^9.3.10"
+  },
+  "dependencies": {
+    "@ctrl/tinycolor": "^3.1.6",
+    "@material/mwc-ripple": "^0.19.1",
+    "fast-copy": "^2.1.0",
+    "home-assistant-js-websocket": "^8.2.0",
+    "lit": "^2.7.6",
+    "lit-element": "^3.3.2",
+    "lit-html": "^2.7.5",
+    "memoize-one": "^6.0.0"
+  }
+}
diff --git a/pkgs/servers/home-assistant/custom-lovelace-modules/card-mod/default.nix b/pkgs/servers/home-assistant/custom-lovelace-modules/card-mod/default.nix
new file mode 100644
index 000000000000..bdca8771d00f
--- /dev/null
+++ b/pkgs/servers/home-assistant/custom-lovelace-modules/card-mod/default.nix
@@ -0,0 +1,37 @@
+{ lib
+, buildNpmPackage
+, fetchFromGitHub
+}:
+
+buildNpmPackage rec {
+  pname = "lovelace-card-mod";
+  version = "3.4.3";
+
+  src = fetchFromGitHub {
+    owner = "thomasloven";
+    repo = "lovelace-card-mod";
+    rev = "v${version}";
+    hash = "sha256-LFKOTu0SBeHpf8Hjvsgc/xOUux9d4lBCshdD9u7eO5o=";
+  };
+
+  npmDepsHash = "sha256-JJexFmVbDHi2JCiCpcDupzVf0xfwy+vqWILq/dLVcBo=";
+
+  installPhase = ''
+    runHook preInstall
+
+    mkdir $out
+    cp card-mod.js $out
+
+    runHook postInstall
+  '';
+
+  passthru.entrypoint = "card-mod.js";
+
+  meta = with lib; {
+    description = "Add CSS styles to (almost) any lovelace card";
+    homepage = "https://github.com/thomasloven/lovelace-card-mod";
+    license = licenses.mit;
+    maintainers = with maintainers; [ k900 ];
+    platforms = platforms.all;
+  };
+}
diff --git a/pkgs/servers/home-assistant/custom-lovelace-modules/decluttering-card/default.nix b/pkgs/servers/home-assistant/custom-lovelace-modules/decluttering-card/default.nix
new file mode 100644
index 000000000000..44a83e71e550
--- /dev/null
+++ b/pkgs/servers/home-assistant/custom-lovelace-modules/decluttering-card/default.nix
@@ -0,0 +1,36 @@
+{ lib
+, buildNpmPackage
+, fetchFromGitHub
+}:
+
+buildNpmPackage rec {
+  pname = "decluttering-card";
+  version = "1.0.0";
+
+  src = fetchFromGitHub {
+    owner = "custom-cards";
+    repo = "decluttering-card";
+    rev = "v${version}";
+    hash = "sha256-8pf7G6RbLdpIdXYz801+wwAc3NcNs8l0x4fSGqlAmG0=";
+  };
+
+  npmDepsHash = "sha256-9tmEfKo8n2LR+r40hEqOfn7w6/P29XQ+KZSHL97wUuY=";
+
+  installPhase = ''
+    runHook preInstall
+
+    mkdir $out
+    cp dist/decluttering-card.js $out
+
+    runHook postInstall
+  '';
+
+  meta = with lib; {
+    description = "Declutter your lovelace configuration with the help of this card";
+    homepage = "https://github.com/custom-cards/decluttering-card";
+    changelog = "https://github.com/custom-cards/decluttering-card/blob/${src.rev}/CHANGELOG.md";
+    license = licenses.mit;
+    maintainers = with maintainers; [ k900 ];
+    platforms = platforms.all;
+  };
+}
diff --git a/pkgs/servers/home-assistant/custom-lovelace-modules/default.nix b/pkgs/servers/home-assistant/custom-lovelace-modules/default.nix
index f7dbc32c8e93..d2b16943a59a 100644
--- a/pkgs/servers/home-assistant/custom-lovelace-modules/default.nix
+++ b/pkgs/servers/home-assistant/custom-lovelace-modules/default.nix
@@ -2,6 +2,16 @@
 }:
 
 {
+  android-tv-card = callPackage ./android-tv-card { };
+
+  button-card = callPackage ./button-card { };
+
+  card-mod = callPackage ./card-mod { };
+
+  decluttering-card = callPackage ./decluttering-card { };
+
+  lg-webos-remote-control = callPackage ./lg-webos-remote-control { };
+
   light-entity-card = callPackage ./light-entity-card { };
 
   mini-graph-card = callPackage ./mini-graph-card {};
@@ -12,5 +22,7 @@
 
   mushroom = callPackage ./mushroom { };
 
+  valetudo-map-card = callPackage ./valetudo-map-card { };
+
   zigbee2mqtt-networkmap = callPackage ./zigbee2mqtt-networkmap { };
 }
diff --git a/pkgs/servers/home-assistant/custom-lovelace-modules/lg-webos-remote-control/default.nix b/pkgs/servers/home-assistant/custom-lovelace-modules/lg-webos-remote-control/default.nix
new file mode 100644
index 000000000000..9911fbfdce1a
--- /dev/null
+++ b/pkgs/servers/home-assistant/custom-lovelace-modules/lg-webos-remote-control/default.nix
@@ -0,0 +1,37 @@
+{ lib
+, buildNpmPackage
+, fetchFromGitHub
+}:
+
+buildNpmPackage rec {
+  pname = "lg-webos-remote-control";
+  version = "2.0.3";
+
+  src = fetchFromGitHub {
+    owner = "madmicio";
+    repo = "LG-WebOS-Remote-Control";
+    rev = version;
+    hash = "sha256-ICOAi8q8dWrBFCv18JYSWc6MIwqxfDXOcc6kCKLGehs=";
+  };
+
+  npmDepsHash = "sha256-kN+i0ic1JWs6kqnAliiO4yVMDXwfZaQsRGKeV9A0MxE=";
+
+  installPhase = ''
+    runHook preInstall
+
+    mkdir $out
+    cp dist/lg-remote-control.js $out
+
+    runHook postInstall
+  '';
+
+  passthru.entrypoint = "lg-remote-control.js";
+
+  meta = with lib; {
+    description = "Remote Control for LG TV WebOS";
+    homepage = "https://github.com/madmicio/LG-WebOS-Remote-Control";
+    license = licenses.mit;
+    maintainers = with maintainers; [ k900 ];
+    platforms = platforms.all;
+  };
+}
diff --git a/pkgs/servers/home-assistant/custom-lovelace-modules/valetudo-map-card/default.nix b/pkgs/servers/home-assistant/custom-lovelace-modules/valetudo-map-card/default.nix
new file mode 100644
index 000000000000..3203c59e7cd9
--- /dev/null
+++ b/pkgs/servers/home-assistant/custom-lovelace-modules/valetudo-map-card/default.nix
@@ -0,0 +1,39 @@
+{ lib
+, buildNpmPackage
+, fetchFromGitHub
+}:
+
+buildNpmPackage rec {
+  pname = "lovelace-valetudo-map-card";
+  version = "2023.04.0";
+
+  src = fetchFromGitHub {
+    owner = "Hypfer";
+    repo = "lovelace-valetudo-map-card";
+    rev = "v${version}";
+    hash = "sha256-owOIbA1tRlnbWJ/p/wAUpeDnz/Wzu+GmUammJ6VFxHc=";
+  };
+
+  patches = [ ./remove-git-dependency.patch ];
+
+  npmDepsHash = "sha256-xHHbOt9HW+zJAhHEDy2V5eYyLv4e3OrUbnzqeJasSng=";
+
+  installPhase = ''
+    runHook preInstall
+
+    mkdir $out
+    cp dist/valetudo-map-card.js $out
+
+    runHook postInstall
+  '';
+
+  passthru.entrypoint = "valetudo-map-card.js";
+
+  meta = with lib; {
+    description = "Display the map from a valetudo-enabled robot in a home assistant dashboard card";
+    homepage = "https://github.com/Hypfer/lovelace-valetudo-map-card";
+    license = licenses.mit;
+    maintainers = with maintainers; [ k900 ];
+    platforms = platforms.all;
+  };
+}
diff --git a/pkgs/servers/home-assistant/custom-lovelace-modules/valetudo-map-card/remove-git-dependency.patch b/pkgs/servers/home-assistant/custom-lovelace-modules/valetudo-map-card/remove-git-dependency.patch
new file mode 100644
index 000000000000..bedf4af3ac29
--- /dev/null
+++ b/pkgs/servers/home-assistant/custom-lovelace-modules/valetudo-map-card/remove-git-dependency.patch
@@ -0,0 +1,64 @@
+diff --git a/package-lock.json b/package-lock.json
+index cce05ba..36020f8 100644
+--- a/package-lock.json
++++ b/package-lock.json
+@@ -1,12 +1,12 @@
+ {
+   "name": "lovelace-valetudo-map-card",
+-  "version": "2022.08.0",
++  "version": "2023.04.0",
+   "lockfileVersion": 2,
+   "requires": true,
+   "packages": {
+     "": {
+       "name": "lovelace-valetudo-map-card",
+-      "version": "2022.08.0",
++      "version": "2023.04.0",
+       "license": "MIT",
+       "dependencies": {
+         "custom-card-helpers": "1.9.0"
+@@ -21,7 +21,6 @@
+         "eslint-plugin-jsdoc": "39.3.0",
+         "eslint-plugin-regexp": "1.7.0",
+         "eslint-plugin-sort-keys-fix": "1.1.2",
+-        "eslint-plugin-sort-requires": "git+https://npm@github.com/Hypfer/eslint-plugin-sort-requires.git#2.1.1",
+         "pako": "2.0.4",
+         "rollup": "2.58.0",
+         "rollup-plugin-babel": "4.4.0",
+@@ -1596,12 +1595,6 @@
+         "node": ">=6.0.0"
+       }
+     },
+-    "node_modules/eslint-plugin-sort-requires": {
+-      "version": "2.1.0",
+-      "resolved": "git+https://npm@github.com/Hypfer/eslint-plugin-sort-requires.git#3e216dd9e9589b87671a3e7bf4084a0bd96e920e",
+-      "dev": true,
+-      "license": "MIT"
+-    },
+     "node_modules/eslint-scope": {
+       "version": "7.1.1",
+       "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-7.1.1.tgz",
+@@ -4358,11 +4351,6 @@
+         }
+       }
+     },
+-    "eslint-plugin-sort-requires": {
+-      "version": "git+https://npm@github.com/Hypfer/eslint-plugin-sort-requires.git#3e216dd9e9589b87671a3e7bf4084a0bd96e920e",
+-      "dev": true,
+-      "from": "eslint-plugin-sort-requires@git+https://npm@github.com/Hypfer/eslint-plugin-sort-requires.git#2.1.1"
+-    },
+     "eslint-scope": {
+       "version": "7.1.1",
+       "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-7.1.1.tgz",
+diff --git a/package.json b/package.json
+index 85a9d35..d8c6865 100644
+--- a/package.json
++++ b/package.json
+@@ -23,7 +23,6 @@
+     "eslint-plugin-jsdoc": "39.3.0",
+     "eslint-plugin-regexp": "1.7.0",
+     "eslint-plugin-sort-keys-fix": "1.1.2",
+-    "eslint-plugin-sort-requires": "git+https://npm@github.com/Hypfer/eslint-plugin-sort-requires.git#2.1.1",
+     "@typescript-eslint/eslint-plugin": "5.25.0",
+     "@typescript-eslint/experimental-utils": "5.25.0",
+     "@typescript-eslint/parser": "5.25.0",
diff --git a/pkgs/servers/home-assistant/custom-lovelace-modules/zigbee2mqtt-networkmap/default.nix b/pkgs/servers/home-assistant/custom-lovelace-modules/zigbee2mqtt-networkmap/default.nix
index f8e75ede0156..8de17253e000 100644
--- a/pkgs/servers/home-assistant/custom-lovelace-modules/zigbee2mqtt-networkmap/default.nix
+++ b/pkgs/servers/home-assistant/custom-lovelace-modules/zigbee2mqtt-networkmap/default.nix
@@ -1,25 +1,26 @@
-{ lib
-, fetchFromGitHub
-, fetchYarnDeps
-, mkYarnPackage
+{
+  lib,
+  fetchFromGitHub,
+  fetchYarnDeps,
+  mkYarnPackage,
 }:
 
 mkYarnPackage rec {
   pname = "zigbee2mqtt-networkmap";
-  version = "unstable-2023-12-16";
+  version = "0.9.0";
 
   src = fetchFromGitHub {
     owner = "azuwis";
     repo = "zigbee2mqtt-networkmap";
-    rev = "7851357d78ebc0d1cc3cb5c661267a1e8b4c09e3";
-    hash = "sha256-x7RVy0stWT6+8f0/0VORVBgGpBbsbyJBC38xIxXhzos=";
+    rev = "v${version}";
+    hash = "sha256-K4DyrurC4AzzJCcB4CS9UlQbUQSWpR7PevA2JFFMRZM=";
   };
 
   packageJSON = ./package.json;
 
   offlineCache = fetchYarnDeps {
     yarnLock = "${src}/yarn.lock";
-    hash = "sha256-s+vnyUeJKkkA5G0AmsfIG0Zh4bYdDc2B5MSNvdwhjgs=";
+    hash = "sha256-h/5TWaIg8AfY6I/JBRmUF6yCCbxCMs9nRECWEaaK2to=";
   };
 
   configurePhase = ''
@@ -49,8 +50,10 @@ mkYarnPackage rec {
   doDist = false;
 
   passthru.entrypoint = "zigbee2mqtt-networkmap.js";
+  passthru.updateScript = ./update.sh;
 
   meta = with lib; {
+    changelog = "https://github.com/azuwis/zigbee2mqtt-networkmap/releases/tag/v${version}";
     description = "Home Assistant Custom Card to show Zigbee2mqtt network map";
     homepage = "https://github.com/azuwis/zigbee2mqtt-networkmap";
     maintainers = with maintainers; [ azuwis ];
diff --git a/pkgs/servers/home-assistant/custom-lovelace-modules/zigbee2mqtt-networkmap/update.sh b/pkgs/servers/home-assistant/custom-lovelace-modules/zigbee2mqtt-networkmap/update.sh
new file mode 100755
index 000000000000..b2675bc5c3d9
--- /dev/null
+++ b/pkgs/servers/home-assistant/custom-lovelace-modules/zigbee2mqtt-networkmap/update.sh
@@ -0,0 +1,9 @@
+#!/usr/bin/env nix-shell
+#!nix-shell -i bash -p nix-update
+
+set -xe
+
+dirname="$(dirname "$0")"
+
+# nix-update picks the wrong file `pkgs/development/tools/yarn2nix-moretea/yarn2nix/default.nix`
+nix-update --override-filename "$dirname/default.nix" home-assistant-custom-lovelace-modules.zigbee2mqtt-networkmap
diff --git a/pkgs/servers/home-assistant/default.nix b/pkgs/servers/home-assistant/default.nix
index 0f90061ad61f..bb2de0881bf6 100644
--- a/pkgs/servers/home-assistant/default.nix
+++ b/pkgs/servers/home-assistant/default.nix
@@ -39,15 +39,6 @@ let
         };
       });
 
-      aioautomower = super.aioautomower.overridePythonAttrs (oldAttrs: rec {
-        version = "2024.3.4";
-        src = fetchFromGitHub {
-          inherit (oldAttrs.src) owner repo;
-          rev = "refs/tags/${version}";
-          hash = "sha256-dk8HfIiQOKq7Ky+vYa3wKmTS78gTw6J0yyQT2Folpp0=";
-        };
-      });
-
       aioelectricitymaps = super.aioelectricitymaps.overridePythonAttrs (oldAttrs: rec {
         version = "0.4.0";
         src = fetchFromGitHub {
@@ -61,19 +52,14 @@ let
         ];
       });
 
-      aiogithubapi = super.aiogithubapi.overridePythonAttrs (oldAttrs: rec {
-        version = "22.10.1";
+      aiolyric = super.aiolyric.overridePythonAttrs (oldAttrs: rec {
+        version = "1.1.1";
         src = fetchFromGitHub {
-          owner = "ludeeus";
-          repo = "aiogithubapi";
+          owner = "timmo001";
+          repo = "aiolyric";
           rev = "refs/tags/${version}";
-          hash = "sha256-ceBuqaMqqL6qwN52765MG4sLt+08hx2G9rUVNC7x6ik=";
+          hash = "sha256-FZhLjVrLzLv6CZz/ROlvbtBK9XnpO8pG48aSIoBxhCo=";
         };
-        propagatedBuildInputs = with self; [
-          aiohttp
-          async-timeout
-          backoff
-        ];
       });
 
       aiopurpleair = super.aiopurpleair.overridePythonAttrs (oldAttrs: rec {
@@ -193,6 +179,16 @@ let
         };
       });
 
+      homematicip = super.homematicip.overridePythonAttrs rec {
+        version = "1.1.0";
+        src = fetchFromGitHub {
+          owner = "hahn-th";
+          repo = "homematicip-rest-api";
+          rev = "refs/tags/${version}";
+          hash = "sha256-tx7/amXG3rLdUFgRPQcuf57qkBLAPxPWjLGSO7MrcWU=";
+        };
+      };
+
       intellifire4py = super.intellifire4py.overridePythonAttrs (oldAttrs: rec {
         version = "2.2.2";
         src = fetchFromGitHub {
@@ -293,16 +289,16 @@ let
         doCheck = false; # no tests
       });
 
-      # Pinned due to API changes in 1.3.0
-      ovoenergy = super.ovoenergy.overridePythonAttrs (oldAttrs: rec {
-        version = "1.2.0";
+      # Can probably be removed with 2024.6.0
+      plugwise = super.plugwise.overridePythonAttrs rec {
+        version = "0.37.3";
         src = fetchFromGitHub {
-          owner = "timmo001";
-          repo = "ovoenergy";
+          owner = "plugwise";
+          repo = "python-plugwise";
           rev = "refs/tags/v${version}";
-          hash = "sha256-OSK74uvpHuEtWgbLVFrz1NO7lvtHbt690smGQ+GlsOI=";
+          hash = "sha256-aQz0p+DNi1XVoFwdFjc3RjpHqA2kGf4pU1QS6m271gU=";
         };
-      });
+      };
 
       # Pinned due to API changes in 0.1.0
       poolsense = super.poolsense.overridePythonAttrs (oldAttrs: rec {
@@ -314,16 +310,6 @@ let
         };
       });
 
-      py-synologydsm-api = super.py-synologydsm-api.overridePythonAttrs (oldAttrs: rec {
-        version = "2.1.4";
-        src = fetchFromGitHub {
-          owner = "mib1185";
-          repo = "py-synologydsm-api";
-          rev = "refs/tags/v${version}";
-          hash = "sha256-37JzdhMny6YDTBO9NRzfrZJAVAOPnpcr95fOKxisbTg=";
-        };
-      });
-
       pyasn1 = super.pyasn1.overridePythonAttrs (oldAttrs: rec {
         version = "0.4.8";
         src = fetchPypi {
@@ -366,20 +352,6 @@ let
         };
       });
 
-      python-roborock = super.python-roborock.overridePythonAttrs (oldAttrs: rec {
-        version = "0.40.0";
-        src = fetchFromGitHub {
-          owner = "humbertogontijo";
-          repo = "python-roborock";
-          rev = "refs/tags/v${version}";
-          hash = "sha256-H4xwgulNLs3R1Q5GhvQffpAZ1CWXZUJAja8BskW+YJk=";
-        };
-        postPatch = ''
-          substituteInPlace pyproject.toml \
-            --replace-fail "poetry-core==" "poetry-core>="
-        '';
-      });
-
       pytibber = super.pytibber.overridePythonAttrs (oldAttrs: rec {
         version = "0.28.2";
         src = fetchFromGitHub {
@@ -436,6 +408,46 @@ let
         };
       });
 
+      # newer sigstore version transitivevly require pydantic>=2
+      sigstore = super.sigstore.overridePythonAttrs (oldAttrs: rec {
+        version = "1.1.2";
+        src = fetchFromGitHub {
+          owner = "sigstore";
+          repo = "sigstore-python";
+          rev = "refs/tags/v${version}";
+          hash = "sha256-QqY5GOBS75OkbSaF5Ua5jnJAhsYfVRuWLUoWDxX8Ino=";
+        };
+        dependencies = with self; [
+          appdirs
+          cryptography
+          id
+          pydantic
+          pyjwt
+          pyopenssl
+          requests
+          securesystemslib
+          sigstore-protobuf-specs
+          tuf
+        ];
+        doCheck = false; # pytest too new
+      });
+
+      sigstore-protobuf-specs = super.sigstore-protobuf-specs.overridePythonAttrs {
+        version = "0.1.0";
+        src = fetchPypi {
+          pname = "sigstore-protobuf-specs";
+          version = "0.1.0";
+          hash = "sha256-YistIxYToo7T5mYKzYeBhnW06DSG9JoPDBmKxUdfy4E=";
+        };
+        nativeBuildInputs = with self; [
+          flit-core
+          pythonRelaxDepsHook
+        ];
+        pythonRelaxDeps = [
+          "betterproto"
+        ];
+      };
+
       tesla-powerwall = super.tesla-powerwall.overridePythonAttrs (oldAttrs: rec {
         version = "0.5.1";
         src = fetchFromGitHub {
@@ -446,17 +458,22 @@ let
         };
       });
 
-      versioningit = super.versioningit.overridePythonAttrs (oldAttrs: rec {
-        version = "2.2.0";
-        src = fetchPypi {
-          inherit (oldAttrs) pname;
-          inherit version;
-          hash = "sha256-6xjnunJoqIC/HM/pLlNOlqs04Dl/KNy8s/wNpPaltr0=";
+      tuf = super.tuf.overridePythonAttrs rec {
+        version = "2.1.0";
+        src = fetchFromGitHub {
+          owner = "theupdateframework";
+          repo = "python-tuf";
+          rev = "refs/tags/v${version}";
+          hash = "sha256-MdPctAZuKn/YAwpMJ5gWU7PXJD3iK7bYprLXV52wNQQ=";
         };
-        pytestFlagsArray = [
-          "-W" "ignore::DeprecationWarning"
+        disabledTests = [
+          "test_sign_failures"
         ];
-      });
+      };
+
+      versioningit = super.versioningit.overridePythonAttrs {
+        doCheck = false;
+      };
 
       voluptuous = super.voluptuous.overridePythonAttrs (oldAttrs: rec {
         version = "0.13.1";
@@ -533,7 +550,7 @@ let
   extraBuildInputs = extraPackages python.pkgs;
 
   # Don't forget to run update-component-packages.py after updating
-  hassVersion = "2024.4.4";
+  hassVersion = "2024.5.4";
 
 in python.pkgs.buildPythonApplication rec {
   pname = "homeassistant";
@@ -551,16 +568,16 @@ in python.pkgs.buildPythonApplication rec {
     owner = "home-assistant";
     repo = "core";
     rev = "refs/tags/${version}";
-    hash = "sha256-bZcrFtaO0S22M6Wt2otK8rCg+NhpXr+/yRFxi02QJJI=";
+    hash = "sha256-YJluhc1MCRxeDtn8R9tF2QYA6qCiYpjOpRJaQeay3lk=";
   };
 
   # Secondary source is pypi sdist for translations
   sdist = fetchPypi {
     inherit pname version;
-    hash = "sha256-NyIBFpDstX1MEoLS9p7GXl/+V6xB2hklNf2LmNLUMQk=";
+    hash = "sha256-e2evRFP/l2HHcDgMUWQEM7xvvAfLRwdFtz+u2mwXepI=";
   };
 
-  nativeBuildInputs = with python.pkgs; [
+  build-system = with python.pkgs; [
     pythonRelaxDepsHook
     setuptools
   ];
@@ -571,11 +588,13 @@ in python.pkgs.buildPythonApplication rec {
     "bcrypt"
     "ciso8601"
     "cryptography"
+    "jinja2"
     "hass-nabucasa"
     "httpx"
     "orjson"
     "pillow"
     "pyopenssl"
+    "sqlalchemy"
     "typing-extensions"
     "urllib3"
   ];
@@ -600,16 +619,20 @@ in python.pkgs.buildPythonApplication rec {
   postPatch = ''
     substituteInPlace tests/test_config.py --replace-fail '"/usr"' '"/build/media"'
 
+    substituteInPlace pyproject.toml --replace-fail "wheel~=0.43.0" wheel
+
     sed -i 's/setuptools[~=]/setuptools>/' pyproject.toml
     sed -i 's/wheel[~=]/wheel>/' pyproject.toml
   '';
 
-  propagatedBuildInputs = with python.pkgs; [
+  dependencies = with python.pkgs; [
     # Only packages required in pyproject.toml
+    aiodns
     aiohttp
     aiohttp-cors
     aiohttp-fast-url-dispatcher
-    aiohttp-zlib-ng
+    aiohttp-isal
+    aiohttp-session
     astral
     async-interrupt
     atomicwrites-homeassistant
@@ -621,8 +644,8 @@ in python.pkgs.buildPythonApplication rec {
     cryptography
     fnv-hash-fast
     hass-nabucasa
-    httpx
     home-assistant-bluetooth
+    httpx
     ifaddr
     jinja2
     lru-dict
@@ -631,8 +654,8 @@ in python.pkgs.buildPythonApplication rec {
     pillow
     pip
     psutil-home-assistant
-    pyopenssl
     pyjwt
+    pyopenssl
     python-slugify
     pyyaml
     requests
@@ -674,11 +697,14 @@ in python.pkgs.buildPythonApplication rec {
     tomli
     # Sneakily imported in tests/conftest.py
     paho-mqtt
+    # Used in tests/non_packaged_scripts/test_alexa_locales.py
+    beautifulsoup4
   ] ++ lib.concatMap (component: getPackages component python.pkgs) [
     # some components are needed even if tests in tests/components are disabled
     "default_config"
     "debugpy"
     "hue"
+    "qwikswitch"
     "sentry"
   ];
 
@@ -692,10 +718,10 @@ in python.pkgs.buildPythonApplication rec {
     "--showlocals"
     # AssertionError: assert 1 == 0
     "--deselect tests/test_config.py::test_merge"
-    # AssertionError: assert 'WARNING' not in '2023-11-10 ...nt abc[L]>\n'"
-    "--deselect=tests/helpers/test_script.py::test_multiple_runs_repeat_choose"
-    # SystemError: PyThreadState_SetAsyncExc failed
-    "--deselect=tests/helpers/test_template.py::test_template_timeout"
+    # AssertionError: assert 6 == 5
+    "--deselect=tests/helpers/test_translation.py::test_caching"
+    # assert "Detected that integration 'hue' attempted to create an asyncio task from a thread at homeassistant/components/hue/light.py, line 23
+    "--deselect=tests/util/test_async.py::test_create_eager_task_from_thread_in_integration"
     # tests are located in tests/
     "tests"
   ];
diff --git a/pkgs/servers/home-assistant/frontend.nix b/pkgs/servers/home-assistant/frontend.nix
index afa2c53ca3f7..4724eb834d84 100644
--- a/pkgs/servers/home-assistant/frontend.nix
+++ b/pkgs/servers/home-assistant/frontend.nix
@@ -4,7 +4,7 @@ buildPythonPackage rec {
   # the frontend version corresponding to a specific home-assistant version can be found here
   # https://github.com/home-assistant/home-assistant/blob/master/homeassistant/components/frontend/manifest.json
   pname = "home-assistant-frontend";
-  version = "20240404.2";
+  version = "20240501.1";
   format = "wheel";
 
   src = fetchPypi {
@@ -12,7 +12,7 @@ buildPythonPackage rec {
     pname = "home_assistant_frontend";
     dist = "py3";
     python = "py3";
-    hash = "sha256-xCpQHzfXXt9aOWWVGYtt9NYws//ZPjI/owXBQafb31k=";
+    hash = "sha256-d/mlZfMri0E4lgMrIt3cRqpF3F12Xr7YuHqTogFON9E=";
   };
 
   # there is nothing to strip in this package
diff --git a/pkgs/servers/home-assistant/intents.nix b/pkgs/servers/home-assistant/intents.nix
index 744adc8b4973..e72240cd6b83 100644
--- a/pkgs/servers/home-assistant/intents.nix
+++ b/pkgs/servers/home-assistant/intents.nix
@@ -21,7 +21,7 @@
 
 buildPythonPackage rec {
   pname = "home-assistant-intents";
-  version = "2024.4.3";
+  version = "2024.4.24";
   pyproject = true;
 
   disabled = pythonOlder "3.9";
@@ -29,8 +29,9 @@ buildPythonPackage rec {
   src = fetchFromGitHub {
     owner = "home-assistant";
     repo = "intents-package";
-    rev = "refs/tags/${version}";
-    hash = "sha256-hcstD1qkngZAl/jKLez+4qDs/ZIandkVkY2jrvZqph8=";
+    # https://github.com/home-assistant/intents-package/issues/3
+    rev = "a68176a189c3def87cb11ad39baacea2440ce668";
+    hash = "sha256-SUIJWoA0ltg+bjYn4J5kvAk4Eh23uxEcdxonkTSV0m0=";
     fetchSubmodules = true;
   };
 
diff --git a/pkgs/servers/home-assistant/stubs.nix b/pkgs/servers/home-assistant/stubs.nix
index d31cf8104dbe..f09d06370eaf 100644
--- a/pkgs/servers/home-assistant/stubs.nix
+++ b/pkgs/servers/home-assistant/stubs.nix
@@ -8,7 +8,7 @@
 
 buildPythonPackage rec {
   pname = "homeassistant-stubs";
-  version = "2024.4.4";
+  version = "2024.5.3";
   format = "pyproject";
 
   disabled = python.version != home-assistant.python.version;
@@ -17,7 +17,7 @@ buildPythonPackage rec {
     owner = "KapJI";
     repo = "homeassistant-stubs";
     rev = "refs/tags/${version}";
-    hash = "sha256-BPmHorcyO6a7Ag7FQogkZYh2x3GoMRKiFh+9aSkjE7M=";
+    hash = "sha256-cWt5hOLnri+m7WXAjCA3z1k5ctDia2sAoZiyGe8zadI=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/servers/home-assistant/tests.nix b/pkgs/servers/home-assistant/tests.nix
index 989bfccb7236..07e9ab99800b 100644
--- a/pkgs/servers/home-assistant/tests.nix
+++ b/pkgs/servers/home-assistant/tests.nix
@@ -49,9 +49,21 @@ let
   };
 
   extraDisabledTests = {
-    private_ble_device = [
-      # AssertionError: assert '90' == '90.0'
-      "test_estimated_broadcast_interval"
+    advantage_air = [
+      # AssertionError: assert 2 == 1 (Expected two calls, got one)
+      "test_binary_sensor_async_setup_entry"
+    ];
+    hassio = [
+      # fails to load the hardware component
+      "test_device_registry_calls"
+    ];
+    husqvarna_automower = [
+      # snapshot mismatch
+      "test_device_diagnostics"
+    ];
+    recorder = [
+      # call not happening, likely due to timezone issues
+      "test_auto_purge"
     ];
     shell_command = [
       # tries to retrieve file from github
@@ -61,6 +73,10 @@ let
       # missing operating_status attribute in entity
       "test_sensor_entities"
     ];
+    websocket_api = [
+      # racy
+      "test_render_template_with_timeout"
+    ];
   };
 
   extraPytestFlagsArray = {
diff --git a/pkgs/servers/home-automation/evcc/default.nix b/pkgs/servers/home-automation/evcc/default.nix
index aa701e92b1ed..62a9326f2398 100644
--- a/pkgs/servers/home-automation/evcc/default.nix
+++ b/pkgs/servers/home-automation/evcc/default.nix
@@ -1,4 +1,5 @@
 { lib
+, stdenv
 , buildGo122Module
 , fetchFromGitHub
 , fetchNpmDeps
@@ -11,7 +12,6 @@
 , npmHooks
 , nix-update-script
 , nixosTests
-, stdenv
 }:
 
 let
@@ -21,20 +21,20 @@ in
 
 buildGoModule rec {
   pname = "evcc";
-  version = "0.124.10";
+  version = "0.126.3";
 
   src = fetchFromGitHub {
     owner = "evcc-io";
     repo = "evcc";
     rev = version;
-    hash = "sha256-NbM8Uev2qIIS6WriP7QnVUumF29rZSOCavouPkPmYpE=";
+    hash = "sha256-Q+g/XEfIfpGchIZQdouoP9muqq6l0xixOLmIntgIWe0=";
   };
 
-  vendorHash = "sha256-PZWMqv3R4Dq4cLtGNuvHCQ/GiYvlKJfSKEmBn0JYnb8=";
+  vendorHash = "sha256-tFj1cPBB1qeuwz1RXVVDVNJRfFFKPH6mdMnaiM3jwUc=";
 
   npmDeps = fetchNpmDeps {
     inherit src;
-    hash = "sha256-FWnRZ/NI49QZj8Uv6IbHc8IPAh3F5u4S6hY64B8+Uvk=";
+    hash = "sha256-ghDLmsmcG+qDItiqaZy8MTYw/AU58bZfUzYY32XKNyk=";
   };
 
   nativeBuildInputs = [
@@ -72,13 +72,33 @@ buildGoModule rec {
     make ui
   '';
 
-  doCheck = !stdenv.isDarwin; # tries to bind to local network, doesn't work in darwin sandbox
+  doCheck = !stdenv.isDarwin; # darwin sandbox limitations around network access, access to /etc/protocols and likely more
 
-  preCheck = ''
-    # requires network access
-    rm meter/template_test.go
-    rm charger/template_test.go
-  '';
+  checkFlags = let
+    skippedTests = [
+      # network access
+      "TestOctopusConfigParse"
+      "TestTemplates/allinpower"
+      "TestTemplates/electricitymaps"
+      "TestTemplates/elering"
+      "TestTemplates/energinet"
+      "TestTemplates/grünstromindex"
+      "TestTemplates/pun"
+      "TestTemplates/entsoe"
+      "TestTemplates/ngeso"
+      "TestTemplates/tibber"
+      "TestTemplates/groupe-e"
+      "TestTemplates/awattar"
+      "TestTemplates/energy-charts-api"
+      "TestTemplates/polestar"
+      "TestTemplates/sma-inverter-speedwire/battery"
+      "TestTemplates/sma-inverter-speedwire/pv"
+      "TestTemplates/smartenergy"
+      "TestTemplates/tibber-pulse/grid"
+
+    ];
+  in
+  [ "-skip=^${lib.concatStringsSep "$|^" skippedTests}$" ];
 
   passthru = {
     tests = {
diff --git a/pkgs/servers/homepage-dashboard/default.nix b/pkgs/servers/homepage-dashboard/default.nix
index a3144a12866f..c32aa1b07593 100644
--- a/pkgs/servers/homepage-dashboard/default.nix
+++ b/pkgs/servers/homepage-dashboard/default.nix
@@ -27,16 +27,16 @@ let
 in
 buildNpmPackage rec {
   pname = "homepage-dashboard";
-  version = "0.8.12";
+  version = "0.8.13";
 
   src = fetchFromGitHub {
     owner = "gethomepage";
     repo = "homepage";
     rev = "v${version}";
-    hash = "sha256-71s7Hy5brYof9fgzYxq/HGruyzxFbOfKkOLnpUY0fp8=";
+    hash = "sha256-5AGtNfeFI5fkeXg1PK9ylifHzp9P6XW80XQQFY1YGj8=";
   };
 
-  npmDepsHash = "sha256-w3Wmutru91Zt+kAZ0PBf2CdpgdpxFRoqUmE/0CAu/z4=";
+  npmDepsHash = "sha256-UrRpjbFGziPNN03Fj9T+K+kav0LhaAFp/o+SXja6Jxk=";
 
   preBuild = ''
     mkdir -p config
diff --git a/pkgs/servers/hqplayerd/rygel.nix b/pkgs/servers/hqplayerd/rygel.nix
index 5dfeda22137e..313f0bb51ae0 100644
--- a/pkgs/servers/hqplayerd/rygel.nix
+++ b/pkgs/servers/hqplayerd/rygel.nix
@@ -7,7 +7,7 @@
 , gettext
 , libxml2
 , gobject-introspection
-, wrapGAppsHook
+, wrapGAppsHook3
 , python3
 , glib
 , gssdp
@@ -50,7 +50,7 @@ stdenv.mkDerivation rec {
     gettext
     libxml2
     gobject-introspection
-    wrapGAppsHook
+    wrapGAppsHook3
     python3
   ];
 
diff --git a/pkgs/servers/http/nginx/stable.nix b/pkgs/servers/http/nginx/stable.nix
index e3fab406c8d5..cc6a521af662 100644
--- a/pkgs/servers/http/nginx/stable.nix
+++ b/pkgs/servers/http/nginx/stable.nix
@@ -1,6 +1,6 @@
 { callPackage, ... } @ args:
 
 callPackage ./generic.nix args {
-  version = "1.24.0";
-  hash = "sha256-d6JUFje5KmIePudndsi3tAz21wfmm6U6lAKD4w/y9V0=";
+  version = "1.26.0";
+  hash = "sha256-0ubIQ51sbbUBXY6qskcKtSrvhae/NjGCh5l34IQ3BJc=";
 }
diff --git a/pkgs/servers/http/tomcat/default.nix b/pkgs/servers/http/tomcat/default.nix
index 71d08a9364eb..82fc547b5da9 100644
--- a/pkgs/servers/http/tomcat/default.nix
+++ b/pkgs/servers/http/tomcat/default.nix
@@ -39,12 +39,12 @@ let
 
 in {
   tomcat9 = common {
-    version = "9.0.87";
-    hash = "sha256-2kgvuSIAhtvzceGAqgnGQCr48EhYZzTN7dSgjEjUzgI=";
+    version = "9.0.88";
+    hash = "sha256-vvgcyqT318ieqG61b2NDxRzXkzdMjswgOLen9eJ9Zig=";
   };
 
   tomcat10 = common {
-    version = "10.1.20";
-    hash = "sha256-hCfFUJ8U5IKUCgFfP2DeIDQtPXLI3qmYKk1xEstxpu4=";
+    version = "10.1.23";
+    hash = "sha256-pVcsnpD/geoWaB35cXa7ap9Texw/vg/7pSl/7lnDmKo=";
   };
 }
diff --git a/pkgs/servers/imgproxy/default.nix b/pkgs/servers/imgproxy/default.nix
index 066265e162cc..4a2e89191e18 100644
--- a/pkgs/servers/imgproxy/default.nix
+++ b/pkgs/servers/imgproxy/default.nix
@@ -3,12 +3,12 @@
 
 buildGoModule rec {
   pname = "imgproxy";
-  version = "3.24.0";
+  version = "3.24.1";
 
   src = fetchFromGitHub {
     owner = pname;
     repo = pname;
-    hash = "sha256-FOut1L4dyPvR1SSQLspA8PakQPewwTP2SgbfyDfWp3c=";
+    hash = "sha256-1AacDY4qNe+1SESsEEazxoBnJZRphnext1mu3BOKwKY=";
     rev = "v${version}";
   };
 
diff --git a/pkgs/servers/invidious/default.nix b/pkgs/servers/invidious/default.nix
index 8cf00ab60a60..716df1007831 100644
--- a/pkgs/servers/invidious/default.nix
+++ b/pkgs/servers/invidious/default.nix
@@ -1,18 +1,29 @@
-{ lib, stdenv, crystal, fetchFromGitea, librsvg, pkg-config, libxml2, openssl, shards, sqlite, videojs, nixosTests }:
-let
+{ lib
+, callPackage
+, crystal
+, fetchFromGitea
+, librsvg
+, pkg-config
+, libxml2
+, openssl
+, shards
+, sqlite
+, nixosTests
+
   # All versions, revisions, and checksums are stored in ./versions.json.
   # The update process is the following:
-  #   * pick the latest commit
-  #   * update .invidious.rev, .invidious.version, and .invidious.hash
+  #   * pick the latest tag
+  #   * update .invidious.version, .invidious.date, .invidious.commit and .invidious.hash
   #   * prefetch the videojs dependencies with scripts/fetch-player-dependencies.cr
   #     and update .videojs.hash (they are normally fetched during build
   #     but nix's sandboxing does not allow that)
   #   * if shard.lock changed
   #     * recreate shards.nix by running crystal2nix
-  #     * update lsquic and boringssl if necessarry, lsquic.cr depends on
-  #       the same version of lsquic and lsquic requires the boringssl
-  #       commit mentioned in its README
-  versions = lib.importJSON ./versions.json;
+, versions ? lib.importJSON ./versions.json
+}:
+let
+  # normally video.js is downloaded at build time
+  videojs = callPackage ./videojs.nix { inherit versions; };
 in
 crystal.buildCrystalPackage rec {
   pname = "invidious";
@@ -21,9 +32,10 @@ crystal.buildCrystalPackage rec {
   src = fetchFromGitea {
     domain = "gitea.invidious.io";
     owner = "iv-org";
-    repo = pname;
+    repo = "invidious";
     fetchSubmodules = true;
-    inherit (versions.invidious) rev hash;
+    rev = versions.invidious.rev or "v${version}";
+    inherit (versions.invidious) hash;
   };
 
   postPatch =
@@ -36,6 +48,8 @@ crystal.buildCrystalPackage rec {
       # This always uses the latest commit which invalidates the cache even if
       # the assets were not changed
       assetCommitTemplate = ''{{ "#{`git rev-list HEAD --max-count=1 --abbrev-commit -- assets`.strip}" }}'';
+
+      inherit (versions.invidious) commit date;
     in
     ''
       for d in ${videojs}/*; do ln -s "$d" assets/videojs; done
@@ -43,23 +57,23 @@ crystal.buildCrystalPackage rec {
       # Use the version metadata from the derivation instead of using git at
       # build-time
       substituteInPlace src/invidious.cr \
-          --replace ${lib.escapeShellArg branchTemplate} '"master"' \
-          --replace ${lib.escapeShellArg commitTemplate} '"${lib.substring 0 7 versions.invidious.rev}"' \
-          --replace ${lib.escapeShellArg versionTemplate} '"${lib.concatStringsSep "." (lib.drop 2 (lib.splitString "-" version))}"' \
-          --replace ${lib.escapeShellArg assetCommitTemplate} '"${lib.substring 0 7 versions.invidious.rev}"'
+          --replace-fail ${lib.escapeShellArg branchTemplate} '"master"' \
+          --replace-fail ${lib.escapeShellArg commitTemplate} '"${commit}"' \
+          --replace-fail ${lib.escapeShellArg versionTemplate} '"${date}"' \
+          --replace-fail ${lib.escapeShellArg assetCommitTemplate} '"${commit}"'
 
       # Patch the assets and locales paths to be absolute
       substituteInPlace src/invidious.cr \
-          --replace 'public_folder "assets"' 'public_folder "${placeholder "out"}/share/invidious/assets"'
+          --replace-fail 'public_folder "assets"' 'public_folder "${placeholder "out"}/share/invidious/assets"'
       substituteInPlace src/invidious/helpers/i18n.cr \
-          --replace 'File.read("locales/' 'File.read("${placeholder "out"}/share/invidious/locales/'
+          --replace-fail 'File.read("locales/' 'File.read("${placeholder "out"}/share/invidious/locales/'
 
       # Reference sql initialisation/migration scripts by absolute path
       substituteInPlace src/invidious/database/base.cr \
-            --replace 'config/sql' '${placeholder "out"}/share/invidious/config/sql'
+            --replace-fail 'config/sql' '${placeholder "out"}/share/invidious/config/sql'
 
       substituteInPlace src/invidious/user/captcha.cr \
-          --replace 'Process.run(%(rsvg-convert' 'Process.run(%(${lib.getBin librsvg}/bin/rsvg-convert'
+          --replace-fail 'Process.run(%(rsvg-convert' 'Process.run(%(${lib.getBin librsvg}/bin/rsvg-convert'
     '';
 
   nativeBuildInputs = [ pkg-config shards ];
@@ -110,6 +124,11 @@ crystal.buildCrystalPackage rec {
     mainProgram = "invidious";
     homepage = "https://invidious.io/";
     license = licenses.agpl3Plus;
-    maintainers = with maintainers; [ sbruder ];
+    maintainers = with maintainers; [
+      _999eagle
+      GaetanLepage
+      sbruder
+      pbsds
+    ];
   };
 }
diff --git a/pkgs/servers/invidious/update.sh b/pkgs/servers/invidious/update.sh
index 82c8186bebc4..2ba5c3452c6c 100755
--- a/pkgs/servers/invidious/update.sh
+++ b/pkgs/servers/invidious/update.sh
@@ -1,5 +1,5 @@
 #!/usr/bin/env nix-shell
-#!nix-shell -i bash -p curl crystal crystal2nix jq git moreutils nix nix-prefetch pkg-config pcre
+#!nix-shell -i bash -p curl crystal crystal2nix jq git moreutils nix nix-prefetch pkg-config pcre gnugrep
 git_url='https://github.com/iv-org/invidious.git'
 git_branch='master'
 git_dir='/var/tmp/invidious.git'
@@ -26,7 +26,6 @@ json_set() {
     jq --arg x "$2" "$1 = \$x" < 'versions.json' | sponge 'versions.json'
 }
 
-old_rev=$(json_get '.invidious.rev')
 old_version=$(json_get '.invidious.version')
 today=$(LANG=C date -u +'%Y-%m-%d')
 
@@ -37,38 +36,35 @@ if [ ! -d "$git_dir" ]; then
 fi
 git -C "$git_dir" fetch origin --tags "$git_branch"
 
-# use latest commit before today, we should not call the version *today*
-# because there might still be commits coming
-# use the day of the latest commit we picked as version
-new_rev=$(git -C "$git_dir" log -n 1 --format='format:%H' --before="${today}T00:00:00Z" "origin/$git_branch")
-new_tag=$(git -C "$git_dir" describe --tags --abbrev=0 "$new_rev")
-new_version="$new_tag-unstable-$(TZ=UTC git -C "$git_dir" log -n 1 --date='format-local:%Y-%m-%d' --format='%cd' "$new_rev")"
-info "latest commit before $today: $new_rev"
+new_tag="$(git -C "$git_dir" ls-remote --tags --sort=committerdate origin | head -n1 | grep -Po '(?<=refs/tags/).*')"
+new_version="${new_tag#v}"
 
-if [ "$new_rev" = "$old_rev" ]; then
+if [ "$new_version" = "$old_version" ]; then
     info "$pkg is up-to-date."
     exit
 fi
 
+commit="$(git -C "$git_dir" rev-list "$new_tag" --max-count=1 --abbrev-commit)"
+date="$(git -C "$git_dir" log -1 --format=%cd --date=format:%Y.%m.%d)"
+json_set '.invidious.date' "$date"
+json_set '.invidious.commit' "$commit"
 json_set '.invidious.version' "$new_version"
-json_set '.invidious.rev' "$new_rev"
+
 new_hash=$(nix-prefetch -I 'nixpkgs=../../..' "$pkg")
 json_set '.invidious.hash' "$new_hash"
-commit_msg="$pkg: $old_version -> $new_version"
 
 # fetch video.js dependencies
 info "Running scripts/fetch-player-dependencies.cr..."
-git -C "$git_dir" reset --hard "$new_rev"
+git -C "$git_dir" reset --hard "$new_tag"
 (cd "$git_dir" && crystal run scripts/fetch-player-dependencies.cr -- --minified)
 rm -f "$git_dir/assets/videojs/.gitignore"
 videojs_new_hash=$(nix-hash --type sha256 --sri "$git_dir/assets/videojs")
 json_set '.videojs.hash' "$videojs_new_hash"
 
-if git -C "$git_dir" diff-tree --quiet "${old_rev}..${new_rev}" -- 'shard.lock'; then
-    info "shard.lock did not change since $old_rev."
+if git -C "$git_dir" diff-tree --quiet "v${old_version}..${new_tag}" -- 'shard.lock'; then
+    info "shard.lock did not change since v$old_version."
 else
     info "Updating shards.nix..."
-    crystal2nix -- "$git_dir/shard.lock"  # argv's index seems broken
+    (cd "$git_dir" && crystal2nix)
+    mv "$git_dir/shards.nix" .
 fi
-
-git commit --verbose --message "$commit_msg" -- versions.json shards.nix
diff --git a/pkgs/servers/invidious/versions.json b/pkgs/servers/invidious/versions.json
index 16b0b50a8f6e..35a6f77b84b6 100644
--- a/pkgs/servers/invidious/versions.json
+++ b/pkgs/servers/invidious/versions.json
@@ -1,8 +1,9 @@
 {
   "invidious": {
-    "rev": "b673695aa2704b880562399ac78659ad23b7940d",
-    "hash": "sha256-2vYCQNAf+o1Z2HFMk4sIlKNBFAsiLZe0Iw34oThC2Vs=",
-    "version": "0.20.1-unstable-2024-04-10"
+    "hash": "sha256-YZ+uhn1ESuRTZxAMoxKCpxEaUfeCUqOrSr3LkdbrTkU=",
+    "version": "2.20240427",
+    "date": "2024.04.27",
+    "commit": "eda7444c"
   },
   "videojs": {
     "hash": "sha256-jED3zsDkPN8i6GhBBJwnsHujbuwlHdsVpVqa1/pzSH4="
diff --git a/pkgs/servers/invidious/videojs.nix b/pkgs/servers/invidious/videojs.nix
index 35ad0b1f0655..dcd6e9e97cbf 100644
--- a/pkgs/servers/invidious/videojs.nix
+++ b/pkgs/servers/invidious/videojs.nix
@@ -1,8 +1,12 @@
-{ lib, stdenvNoCC, cacert, crystal, openssl, pkg-config, invidious }:
+{ stdenvNoCC
+, cacert
+, crystal
+, openssl
+, pkg-config
+, invidious
+, versions
+}:
 
-let
-  versions = lib.importJSON ./versions.json;
-in
 stdenvNoCC.mkDerivation {
   name = "videojs";
 
diff --git a/pkgs/servers/irc/ergochat/default.nix b/pkgs/servers/irc/ergochat/default.nix
index ad8e3f44a809..260f69b8052f 100644
--- a/pkgs/servers/irc/ergochat/default.nix
+++ b/pkgs/servers/irc/ergochat/default.nix
@@ -2,13 +2,13 @@
 
 buildGoModule rec {
   pname = "ergo";
-  version = "2.13.0";
+  version = "2.13.1";
 
   src = fetchFromGitHub {
     owner = "ergochat";
     repo = "ergo";
     rev = "v${version}";
-    sha256 = "sha256-EoYyLmz6MfLkLY0WbHfFvKwrcWApty6/+UCslm8P0Q0=";
+    sha256 = "sha256-WQvXrG82hcPd4viA1cyIsTd5HbR0KD1b5r2me8MKoR8=";
   };
 
   vendorHash = null;
diff --git a/pkgs/servers/irc/ngircd/default.nix b/pkgs/servers/irc/ngircd/default.nix
index 3ec80a5075e0..caff85394f2e 100644
--- a/pkgs/servers/irc/ngircd/default.nix
+++ b/pkgs/servers/irc/ngircd/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   pname = "ngircd";
-  version = "26.1";
+  version = "27";
 
   src = fetchurl {
     url = "https://ngircd.barton.de/pub/ngircd/${pname}-${version}.tar.xz";
-    sha256 = "sha256-VcFv0mAJ9vxqAH3076yHoC4SL2gGEs2hzibhehjYYlQ=";
+    sha256 = "sha256-aJeIAxndXi5zwckBlhNQn4jrW42qWCGjb7yj14XCR7g=";
   };
 
   configureFlags = [
diff --git a/pkgs/servers/jackett/default.nix b/pkgs/servers/jackett/default.nix
index dd072035f1f9..8158b2e23f57 100644
--- a/pkgs/servers/jackett/default.nix
+++ b/pkgs/servers/jackett/default.nix
@@ -9,13 +9,13 @@
 
 buildDotnetModule rec {
   pname = "jackett";
-  version = "0.21.2392";
+  version = "0.21.2496";
 
   src = fetchFromGitHub {
     owner = pname;
     repo = pname;
     rev = "v${version}";
-    hash = "sha512-VI7OBOSSHMfuwic7Ruk5IgLacEopD3cW4S8ZrvIsRZpUNZ1jBnUL0QC5pV4AIqB+AEJFeWoClGiqURal0TRPKg==";
+    hash = "sha512-lzyOnf1nCB/TgrAlqbfHNuxp+tV2PLCIS8t9yvQlOoCZsCHPCgcyX4jkT+3i68zmXqj5Tfvhvje0zk6rE/3BgA==";
   };
 
   projectFile = "src/Jackett.Server/Jackett.Server.csproj";
diff --git a/pkgs/servers/jellyfin/default.nix b/pkgs/servers/jellyfin/default.nix
index 0f1947c65fda..61e1c99ac945 100644
--- a/pkgs/servers/jellyfin/default.nix
+++ b/pkgs/servers/jellyfin/default.nix
@@ -14,20 +14,15 @@
 
 buildDotnetModule rec {
   pname = "jellyfin";
-  version = "10.8.13"; # ensure that jellyfin-web has matching version
+  version = "10.9.1"; # ensure that jellyfin-web has matching version
 
   src = fetchFromGitHub {
     owner = "jellyfin";
     repo = "jellyfin";
     rev = "v${version}";
-    sha256 = "sha256-UtcrJRqDIPyewCNfI89E/IYrgLUhWx1me6MtPX+aeFU=";
+    sha256 = "sha256-ZvXz4gnpYE9bMvOHbmLhqJLUomPmk1K9ysw+Wlsyhr4=";
   };
 
-  patches = [
-    # when building some warnings are reported as error and fail the build.
-    ./disable-warnings.patch
-  ];
-
   propagatedBuildInputs = [
     sqlite
   ];
@@ -40,8 +35,8 @@ buildDotnetModule rec {
     fontconfig
     freetype
   ];
-  dotnet-sdk = dotnetCorePackages.sdk_6_0;
-  dotnet-runtime = dotnetCorePackages.aspnetcore_6_0;
+  dotnet-sdk = dotnetCorePackages.sdk_8_0;
+  dotnet-runtime = dotnetCorePackages.aspnetcore_8_0;
   dotnetBuildFlags = [ "--no-self-contained" ];
 
   preInstall = ''
diff --git a/pkgs/servers/jellyfin/disable-warnings.patch b/pkgs/servers/jellyfin/disable-warnings.patch
deleted file mode 100644
index 1e13f77d0f1a..000000000000
--- a/pkgs/servers/jellyfin/disable-warnings.patch
+++ /dev/null
@@ -1,38 +0,0 @@
-diff --git a/jellyfin.ruleset b/jellyfin.ruleset
-index 1c834de82..bf70fef1e 100644
---- a/jellyfin.ruleset
-+++ b/jellyfin.ruleset
-@@ -54,6 +54,33 @@
-     <Rule Id="SA1602" Action="None" />
-     <!-- disable warning SA1633: The file header is missing or not located at the top of the file -->
-     <Rule Id="SA1633" Action="None" />
-+
-+    <!-- disable warning SA1028: Code should not contain trailing whitespace -->
-+    <Rule Id="SA1028" Action="None" />
-+    <!-- disable warning SA1507: Code should not contain multiple blank lines in a row -->
-+    <Rule Id="SA1507" Action="None" />
-+    <!-- disable warning SA1642: Constructor summary documentation should begin with standard text -->
-+    <Rule Id="SA1642" Action="None" />
-+    <!-- disable warning SA1505: An opening brace should not be followed by a blank line -->
-+    <Rule Id="SA1505" Action="None" />
-+    <!-- disable warning SA1508: A closing brace should not be preceded by a blank line -->
-+    <Rule Id="SA1508" Action="None" />
-+    <!-- disable warning SA1513: Closing brace should be followed by blank line -->
-+    <Rule Id="SA1513" Action="None" />
-+    <!-- disable warning SA1111: Closing parenthesis should be on line of last parameter -->
-+    <Rule Id="SA1111" Action="None" />
-+    <!-- disable warning SA1649: File name should match first type name -->
-+    <Rule Id="SA1649" Action="None" />
-+    <!-- disable warning SA1137: Elements should have the same indentation -->
-+    <Rule Id="SA1137" Action="None" />
-+    <!-- disable warning SA1005: Single line comment should begin with a space -->
-+    <Rule Id="SA1005" Action="None" />
-+    <!-- disable warning SA1208: Using directive for 'System.Text' should appear before directive for '...' -->
-+    <Rule Id="SA1208" Action="None" />
-+    <!-- disable warning SA1208: The property's documentation summary text should begin with: 'Gets a value indicating whether' -->
-+    <Rule Id="SA1623" Action="None" />
-+    <!-- disable warning SA1625: Element documentation should not be copied and pasted -->
-+    <Rule Id="SA1625" Action="None" />
-   </Rules>
- 
-   <Rules AnalyzerId="Microsoft.CodeAnalysis.NetAnalyzers" RuleNamespace="Microsoft.Design">
diff --git a/pkgs/servers/jellyfin/nuget-deps.nix b/pkgs/servers/jellyfin/nuget-deps.nix
index 01b33dc905b5..749345716552 100644
--- a/pkgs/servers/jellyfin/nuget-deps.nix
+++ b/pkgs/servers/jellyfin/nuget-deps.nix
@@ -2,110 +2,149 @@
 # Please dont edit it manually, your changes might get overwritten!
 
 { fetchNuGet }: [
-  (fetchNuGet { pname = "BDInfo"; version = "0.7.6.2"; sha256 = "0i2hrd0s434bg7807q05m4781i0b4469ixpqqzrc5j3cw7y34w4a"; })
-  (fetchNuGet { pname = "BlurHashSharp"; version = "1.2.0"; sha256 = "01v56mxblgsclyajyvicvznqlsak29di3n4v5rm314k45avsiclp"; })
-  (fetchNuGet { pname = "BlurHashSharp.SkiaSharp"; version = "1.2.0"; sha256 = "1wymc8sq34p4kgqb03pm2f9x27nvz0wnfl10gjry8gk23w7akzrl"; })
+  (fetchNuGet { pname = "AsyncKeyedLock"; version = "6.4.2"; sha256 = "1pghspgz9xis139b5v8h2y40gp14x6qfcam27zawq6cp278gnjhi"; })
+  (fetchNuGet { pname = "BDInfo"; version = "0.8.0"; sha256 = "051fkf4566ih6wj9f59myl7vrr6iy0vm16k7i5m227yv2jnkx95g"; })
+  (fetchNuGet { pname = "BlurHashSharp"; version = "1.3.2"; sha256 = "1ygxk7rm0xzr4yz6y25xknqdmrwr2lply46siy7if37ccxnhwhyl"; })
+  (fetchNuGet { pname = "BlurHashSharp.SkiaSharp"; version = "1.3.2"; sha256 = "1qirvbxn3wmc862mcyspliaaass1m7w9mxw5hrfxjpjl68bi6xix"; })
+  (fetchNuGet { pname = "CacheManager.Core"; version = "1.2.0"; sha256 = "0j534rcnayzfwa94n1a5800f4da0c2d83zscbpmq153lpm07w3f0"; })
   (fetchNuGet { pname = "CommandLineParser"; version = "2.9.1"; sha256 = "1sldkj8lakggn4hnyabjj1fppqh50fkdrr1k99d4gswpbk5kv582"; })
+  (fetchNuGet { pname = "Diacritics"; version = "3.3.29"; sha256 = "1dl2dp6cjzcw9hrwg4fs0fvj7mjibrldswkr4kk1kdlcghkxv1mh"; })
   (fetchNuGet { pname = "DiscUtils.Core"; version = "0.16.13"; sha256 = "1q5pbs7x6bbvsqcz363fj7c0gxdg3ay1r9a83f7yh137rmaprj8h"; })
   (fetchNuGet { pname = "DiscUtils.Iso9660"; version = "0.16.13"; sha256 = "0vdy9l8kvbf76q7ssgsq3xgkrp1wdbf8a0h4d27371zapg111h54"; })
   (fetchNuGet { pname = "DiscUtils.Streams"; version = "0.16.13"; sha256 = "03wzvxm3k6vld6g0hk5r2qyhckr6rg4885s7hf5z2cvs1qfas9qd"; })
   (fetchNuGet { pname = "DiscUtils.Udf"; version = "0.16.13"; sha256 = "0q4kx4p4x2rj41i7rbxfxih62aaji9vfs1qmdrbpq7zd0i552jyc"; })
+  (fetchNuGet { pname = "dotnet-ef"; version = "8.0.4"; sha256 = "104zljagzf0d092ahzg7aprs39pi1k9k96150qm9nlwjzr3lwv7n"; })
   (fetchNuGet { pname = "DotNet.Glob"; version = "3.1.3"; sha256 = "1klgj9m7i3g8x1yj96wnikvf0hlvr6rhqhl4mgis08imcrl95qg6"; })
-  (fetchNuGet { pname = "Humanizer.Core"; version = "2.8.26"; sha256 = "1v8xd12yms4qq1md4vh6faxicmqrvahqdd7sdkyzrphab9v44nsm"; })
+  (fetchNuGet { pname = "EasyCaching.Core"; version = "1.9.2"; sha256 = "0qkzaxmn899hhfh32s8mhg3zcqqy2p05kaaldz246nram5gvf7qp"; })
+  (fetchNuGet { pname = "EFCoreSecondLevelCacheInterceptor"; version = "4.4.3"; sha256 = "04g2w7x0rqb1gl71mqh28s8drjkwmlkd94j7fg4w5sc01vzrzshw"; })
+  (fetchNuGet { pname = "ExCSS"; version = "4.2.3"; sha256 = "1likxhccg4l4g4i65z4dfzp9059hij6h1q7prx2sgakvk8zzmw9k"; })
+  (fetchNuGet { pname = "HarfBuzzSharp"; version = "7.3.0.2"; sha256 = "03qfa9cglvka6dv4gbnaskrzvpjnp9jmzfwplg85wdgm6jmjif49"; })
+  (fetchNuGet { pname = "HarfBuzzSharp.NativeAssets.Linux"; version = "7.3.0.2"; sha256 = "1df6jqwfv9v1ddby2hxcan28g1canbmavglmdjlf2xjs42xz49s9"; })
+  (fetchNuGet { pname = "HarfBuzzSharp.NativeAssets.macOS"; version = "7.3.0.2"; sha256 = "0kvzby9bnx55sgidpy1vhql6fjf5pgq73b0by052r916sd3jlqbn"; })
+  (fetchNuGet { pname = "HarfBuzzSharp.NativeAssets.Win32"; version = "7.3.0.2"; sha256 = "0fpka3rrmd47l8xmxjz5wlp2xpn9z07c8yvfg2q5rxgcs7f8r267"; })
+  (fetchNuGet { pname = "Humanizer.Core"; version = "2.14.1"; sha256 = "1ai7hgr0qwd7xlqfd92immddyi41j3ag91h3594yzfsgsy6yhyqi"; })
+  (fetchNuGet { pname = "ICU4N"; version = "60.1.0-alpha.356"; sha256 = "05mp4p6qqd0jh5a13nh3bkvjhvi07jm9fv802alcfd79xs08w36m"; })
+  (fetchNuGet { pname = "ICU4N.Transliterator"; version = "60.1.0-alpha.356"; sha256 = "1nwr9668pakdfk6jkf1vqymra1fdxcprizznk473ydvasm071cs4"; })
+  (fetchNuGet { pname = "IDisposableAnalyzers"; version = "4.0.7"; sha256 = "037fjdaqkz1kvwd7aff2wn3miv2wvb8r10z8vcdskq8wd9szj1h4"; })
+  (fetchNuGet { pname = "J2N"; version = "2.0.0"; sha256 = "040jnz89bvnwp764fhi4ikzbqxp4cs298dqqysw676z599c4iyv2"; })
   (fetchNuGet { pname = "Jellyfin.XmlTv"; version = "10.8.0"; sha256 = "0fv923y58z9l97zhlrifmki0x1m7r52avglhrl2h1jjv1x1wkvzx"; })
-  (fetchNuGet { pname = "libse"; version = "3.6.5"; sha256 = "1h0rm8jbwjp0qgayal48zdzgsqr7c7v9lnc4v8x0r0pxrb4f0x1k"; })
-  (fetchNuGet { pname = "Microsoft.AspNetCore.Authorization"; version = "6.0.9"; sha256 = "0hmiw2k182nmrzk9hnk1l348m3qw6y66lpg2c4s43qnywg7hxafm"; })
-  (fetchNuGet { pname = "Microsoft.AspNetCore.Metadata"; version = "6.0.9"; sha256 = "0dq0ilr9mv9prlx16vdhqag4h91ypx9mxq7fk7drfynqvq6s3sc2"; })
+  (fetchNuGet { pname = "libse"; version = "4.0.5"; sha256 = "1fiikwf8n17k4vrm4p4r9dqmx612dlnpz76klqhwvpx7avj0fj6v"; })
+  (fetchNuGet { pname = "LrcParser"; version = "2023.524.0"; sha256 = "002cpbvbb840az6x8g81in7427ca2pqa704812crbidrnvrnaa6c"; })
+  (fetchNuGet { pname = "MetaBrainz.Common"; version = "3.0.0"; sha256 = "0ba7r8xjkd1dsc5plq2h3nbk3kcpd69hnns6kx42bafz2x1d7r9z"; })
+  (fetchNuGet { pname = "MetaBrainz.Common.Json"; version = "6.0.2"; sha256 = "0zw5216amhkav69iv0mqfhql3b9blkfvh8k0xp3qv62r2vvhb1z0"; })
+  (fetchNuGet { pname = "MetaBrainz.MusicBrainz"; version = "6.1.0"; sha256 = "0ssmzk6zyi7ivb055w007h311pg9bby3q6gvwxzmjghd4i6m7461"; })
+  (fetchNuGet { pname = "Microsoft.AspNetCore.Authorization"; version = "8.0.4"; sha256 = "0r41i12ilhryh7gzak1iagxa5jmvk916jh40zi6n4pdffbwk9kzc"; })
+  (fetchNuGet { pname = "Microsoft.AspNetCore.Http.Abstractions"; version = "2.2.0"; sha256 = "13s8cm6jdpydxmr0rgmzrmnp1v2r7i3rs7v9fhabk5spixdgfy6b"; })
+  (fetchNuGet { pname = "Microsoft.AspNetCore.Http.Extensions"; version = "2.2.0"; sha256 = "118gp1mfb8ymcvw87fzgjqwlc1d1b0l0sbfki291ydg414cz3dfn"; })
+  (fetchNuGet { pname = "Microsoft.AspNetCore.Http.Features"; version = "2.2.0"; sha256 = "0xrlq8i61vzhzzy25n80m7wh2kn593rfaii3aqnxdsxsg6sfgnx1"; })
+  (fetchNuGet { pname = "Microsoft.AspNetCore.HttpOverrides"; version = "2.2.0"; sha256 = "1pbmmczxilgrf4qyaql88dc3av7kaixb1r36358kil68gl3irjy6"; })
+  (fetchNuGet { pname = "Microsoft.AspNetCore.Metadata"; version = "8.0.4"; sha256 = "0jxvdb4ah2x8ssr01gdk1msmf0kyvvr9pwhfj6rx7a5j7cl6l6xr"; })
   (fetchNuGet { pname = "Microsoft.Bcl.AsyncInterfaces"; version = "6.0.0"; sha256 = "15gqy2m14fdlvy1g59207h5kisznm355kbw010gy19vh47z8gpz3"; })
-  (fetchNuGet { pname = "Microsoft.Build.Tasks.Git"; version = "1.1.1"; sha256 = "1bb5p4zlnfn88skkvymxfsn0jybqncl4356hwnic9jxdq2d4fz1w"; })
-  (fetchNuGet { pname = "Microsoft.CodeAnalysis.BannedApiAnalyzers"; version = "3.3.3"; sha256 = "1z6x0d8lpcfjr3sxy25493i17vvcg5bsay6c03qan6mnj5aqzw2k"; })
+  (fetchNuGet { pname = "Microsoft.CodeAnalysis.Analyzers"; version = "3.3.3"; sha256 = "09m4cpry8ivm9ga1abrxmvw16sslxhy2k5sl14zckhqb1j164im6"; })
+  (fetchNuGet { pname = "Microsoft.CodeAnalysis.BannedApiAnalyzers"; version = "3.3.4"; sha256 = "1vzrni7n94f17bzc13lrvcxvgspx9s25ap1p005z6i1ikx6wgx30"; })
+  (fetchNuGet { pname = "Microsoft.CodeAnalysis.Common"; version = "4.5.0"; sha256 = "0hjzca7v3qq4wqzi9chgxzycbaysnjgj28ps20695x61sia6i3da"; })
+  (fetchNuGet { pname = "Microsoft.CodeAnalysis.CSharp"; version = "4.5.0"; sha256 = "1l6v0ii5lapmfnfpjwi3j5bwlx8v9nvyani5pwvqzdfqsd5m7mp5"; })
+  (fetchNuGet { pname = "Microsoft.CodeAnalysis.CSharp.Workspaces"; version = "4.5.0"; sha256 = "0skg5a8i4fq6cndxcjwciai808p0zpqz9kbvck94mcywfzassv1a"; })
+  (fetchNuGet { pname = "Microsoft.CodeAnalysis.Workspaces.Common"; version = "4.5.0"; sha256 = "1wjwsrnn5frahqciwaxsgalv80fs6xhqy6kcqy7hcsh7jrfc1kjq"; })
   (fetchNuGet { pname = "Microsoft.CSharp"; version = "4.0.1"; sha256 = "0zxc0apx1gcx361jlq8smc9pfdgmyjh6hpka8dypc9w23nlsh6yj"; })
-  (fetchNuGet { pname = "Microsoft.Data.Sqlite.Core"; version = "6.0.9"; sha256 = "1453zyq14v9fvfzc39656gb6pazq5gwmqb3r2pni4cy5jdgd9rpi"; })
-  (fetchNuGet { pname = "Microsoft.EntityFrameworkCore"; version = "6.0.9"; sha256 = "1y5c0l3mckpn9fjvnc65rycym2w1fghwp7dn0srbb14yn8livb0a"; })
-  (fetchNuGet { pname = "Microsoft.EntityFrameworkCore.Abstractions"; version = "6.0.9"; sha256 = "1n87lzcbvc7r0z1g2p4g0cp7081zrbkzzvlnn4n7f7jcc1mlbjb2"; })
-  (fetchNuGet { pname = "Microsoft.EntityFrameworkCore.Analyzers"; version = "6.0.9"; sha256 = "1y023q4i0v1pxk269i8rmzrndsl35l6lgw8h17a0vimg7ismg3sn"; })
-  (fetchNuGet { pname = "Microsoft.EntityFrameworkCore.Design"; version = "6.0.9"; sha256 = "1sj73327s4xyhml3ny7kxafdrp7s1p48niv45mlmy86qqpyps55r"; })
-  (fetchNuGet { pname = "Microsoft.EntityFrameworkCore.Relational"; version = "6.0.9"; sha256 = "18wfjh8b6j4z9ndil0d6h3bwjx1gxka94z6i4sgn8sg2lz65qlfs"; })
-  (fetchNuGet { pname = "Microsoft.EntityFrameworkCore.Sqlite"; version = "6.0.9"; sha256 = "0wdajhdlls17gfvvf01czbl5m12nkac42hx8yyjn3vgcb5vdp81f"; })
-  (fetchNuGet { pname = "Microsoft.EntityFrameworkCore.Sqlite.Core"; version = "6.0.9"; sha256 = "0yxsqdfcszxls3s82fminb4dkwz78ywgry18gb9bhsx0y3az3hqz"; })
-  (fetchNuGet { pname = "Microsoft.EntityFrameworkCore.Tools"; version = "6.0.9"; sha256 = "0klpcc70xrvn1qnb9ipgrppfg3r8mj4lvg424v40rr7x0bdv7xnq"; })
+  (fetchNuGet { pname = "Microsoft.Data.Sqlite"; version = "8.0.4"; sha256 = "1d41r78blfh3i0lh27bh4vrdd26ix6r63xa74cycjnc7pr98xaqc"; })
+  (fetchNuGet { pname = "Microsoft.Data.Sqlite.Core"; version = "8.0.4"; sha256 = "03i9b45n2vnsv4wdsk6qvjzj1ga2hcli168liyrqfa87l54skckd"; })
+  (fetchNuGet { pname = "Microsoft.EntityFrameworkCore"; version = "8.0.0"; sha256 = "1xhmax0xrvw4lyz1868f1sr3nbrcv3ckr5qnf61c8q9bwj06b9v7"; })
+  (fetchNuGet { pname = "Microsoft.EntityFrameworkCore"; version = "8.0.4"; sha256 = "14a74ssvklpv9v1x023mfv3a5dncwfpw399larfp9qx7l6ifsjly"; })
+  (fetchNuGet { pname = "Microsoft.EntityFrameworkCore.Abstractions"; version = "8.0.0"; sha256 = "019r991228nxv1fibsxg5z81rr7ydgy77c9v7yvlx35kfppxq4s3"; })
+  (fetchNuGet { pname = "Microsoft.EntityFrameworkCore.Abstractions"; version = "8.0.4"; sha256 = "1xs1cs29csnbahxgikc094xr878i8wp4h4n84xffaxms6wx5c1fb"; })
+  (fetchNuGet { pname = "Microsoft.EntityFrameworkCore.Analyzers"; version = "8.0.0"; sha256 = "1vcbad0pzkx5wadnd5inglx56x0yybdlxgknbhifdga0bx76j9sa"; })
+  (fetchNuGet { pname = "Microsoft.EntityFrameworkCore.Analyzers"; version = "8.0.4"; sha256 = "1h2bdh7cyw2z71brwjfirayd56rp3d2dx4qrhmsw573mb5jgvara"; })
+  (fetchNuGet { pname = "Microsoft.EntityFrameworkCore.Design"; version = "8.0.4"; sha256 = "1ni5qkjgarcjbqvw9cx0481fc99nna7rnp7170wq650jwm0f8c2f"; })
+  (fetchNuGet { pname = "Microsoft.EntityFrameworkCore.Relational"; version = "8.0.4"; sha256 = "17v2wm6wwsl169sq6lawxhn9wvd299n1hdrxih8c3lzvi8igy4sd"; })
+  (fetchNuGet { pname = "Microsoft.EntityFrameworkCore.Sqlite"; version = "8.0.4"; sha256 = "0h9ib00k54jmsrbhipr33q3sqd3mdiw31qi4g8vak1slal9b70zw"; })
+  (fetchNuGet { pname = "Microsoft.EntityFrameworkCore.Sqlite.Core"; version = "8.0.4"; sha256 = "0pa0xz96g2f99yj3x3hfj362br3zjcx3qd89ckqmymqpvnhk4bw0"; })
+  (fetchNuGet { pname = "Microsoft.EntityFrameworkCore.Tools"; version = "8.0.4"; sha256 = "0r872j78cn1lknw3q9ajc4045d0pw879w2gp2a0qij0r9izlzpiv"; })
   (fetchNuGet { pname = "Microsoft.Extensions.ApiDescription.Server"; version = "3.0.0"; sha256 = "13a47xcqyi5gz85swxd4mgp7ndgl4kknrvv3xwmbn71hsh953hsh"; })
-  (fetchNuGet { pname = "Microsoft.Extensions.Caching.Abstractions"; version = "6.0.0"; sha256 = "0qn30d3pg4rx1x2k525jj4x5g1fxm2v5m0ksz2dmk1gmqalpask8"; })
-  (fetchNuGet { pname = "Microsoft.Extensions.Caching.Memory"; version = "6.0.1"; sha256 = "0ra0ldbg09r40jzvfqhpb3h42h80nafvka9hg51dja32k3mxn5gk"; })
-  (fetchNuGet { pname = "Microsoft.Extensions.Configuration"; version = "2.0.0"; sha256 = "0yssxq9di5h6xw2cayp5hj3l9b2p0jw9wcjz73rwk4586spac9s9"; })
-  (fetchNuGet { pname = "Microsoft.Extensions.Configuration"; version = "3.1.9"; sha256 = "01ci8nhv3ki93aa7a3vh9icl3jav7ikizq43kcgdjgsssi6xvdf9"; })
-  (fetchNuGet { pname = "Microsoft.Extensions.Configuration"; version = "6.0.0"; sha256 = "1zdyai2rzngmsp3706d12qrdk315c1s3ja218fzb3nc3wd1vz0s8"; })
-  (fetchNuGet { pname = "Microsoft.Extensions.Configuration.Abstractions"; version = "2.0.0"; sha256 = "1ilz2yrgg9rbjyhn6a5zh9pr51nmh11z7sixb4p7vivgydj9gxwf"; })
-  (fetchNuGet { pname = "Microsoft.Extensions.Configuration.Abstractions"; version = "3.1.8"; sha256 = "05mlbia6vag0a0zfflv1m3ix48230wx0yib5hp7zsc72jpcmjd7q"; })
-  (fetchNuGet { pname = "Microsoft.Extensions.Configuration.Abstractions"; version = "3.1.9"; sha256 = "0skilj4gfzyn05mn74w2q4jp1ww2wwbsxw2i7v8bwk73nymsqpr8"; })
+  (fetchNuGet { pname = "Microsoft.Extensions.Caching.Abstractions"; version = "2.0.0"; sha256 = "1af64clax8q94p5vggwv8b9qiddmi8v9lnfvbc33k4rl5q8lq38j"; })
+  (fetchNuGet { pname = "Microsoft.Extensions.Caching.Abstractions"; version = "8.0.0"; sha256 = "04m6ywsf9731z24nfd14z0ah8xl06619ba7mkdb4vg8h5jpllsn4"; })
+  (fetchNuGet { pname = "Microsoft.Extensions.Caching.Memory"; version = "2.0.0"; sha256 = "0qvdhcqk8pi6g1ysh3a2b9jmmdq9fmcsj986azibnamnkszcvyfm"; })
+  (fetchNuGet { pname = "Microsoft.Extensions.Caching.Memory"; version = "8.0.0"; sha256 = "0bv8ihd5i2gwr97qljwf56h8mdwspmlw0zs64qyk608fb3ciwi25"; })
+  (fetchNuGet { pname = "Microsoft.Extensions.Configuration"; version = "3.1.0"; sha256 = "1rszgz0rd5kvib5fscz6ss3pkxyjwqy0xpd4f2ypgzf5z5g5d398"; })
+  (fetchNuGet { pname = "Microsoft.Extensions.Configuration"; version = "8.0.0"; sha256 = "080kab87qgq2kh0ijry5kfdiq9afyzb8s0k3jqi5zbbi540yq4zl"; })
+  (fetchNuGet { pname = "Microsoft.Extensions.Configuration.Abstractions"; version = "3.1.0"; sha256 = "1f7h52kamljglx5k08ccryilvk6d6cvr9c26lcb6b2c091znzk0q"; })
   (fetchNuGet { pname = "Microsoft.Extensions.Configuration.Abstractions"; version = "6.0.0"; sha256 = "0w6wwxv12nbc3sghvr68847wc9skkdgsicrz3fx4chgng1i3xy0j"; })
-  (fetchNuGet { pname = "Microsoft.Extensions.Configuration.Binder"; version = "2.0.0"; sha256 = "1prvdbma6r18n5agbhhabv6g357p1j70gq4m9g0vs859kf44nrgc"; })
-  (fetchNuGet { pname = "Microsoft.Extensions.Configuration.Binder"; version = "3.1.9"; sha256 = "1n8fndd9vrd3d7041p42li8v129mgl3gi8sl1x8whhycy0ahqr78"; })
+  (fetchNuGet { pname = "Microsoft.Extensions.Configuration.Abstractions"; version = "8.0.0"; sha256 = "1jlpa4ggl1gr5fs7fdcw04li3y3iy05w3klr9lrrlc7v8w76kq71"; })
+  (fetchNuGet { pname = "Microsoft.Extensions.Configuration.Binder"; version = "3.1.0"; sha256 = "13jj7jxihiswmhmql7r5jydbca4x5qj6h7zq10z17gagys6dc7pw"; })
   (fetchNuGet { pname = "Microsoft.Extensions.Configuration.Binder"; version = "6.0.0"; sha256 = "15hb2rbzgri1fq8wpj4ll7czm3rxqzszs02phnhjnncp90m5rmpc"; })
-  (fetchNuGet { pname = "Microsoft.Extensions.Configuration.EnvironmentVariables"; version = "6.0.1"; sha256 = "16xpqfzpcjk3mg70g5g2qrkhqf7rppah3q6dasdddbpikw43ni47"; })
-  (fetchNuGet { pname = "Microsoft.Extensions.Configuration.FileExtensions"; version = "6.0.0"; sha256 = "02nna984iwnyyz4jjh9vs405nlj0yk1g5vz4v2x30z2c89mx5f9w"; })
-  (fetchNuGet { pname = "Microsoft.Extensions.Configuration.Json"; version = "6.0.0"; sha256 = "1c6l5szma1pdn61ncq1kaqibg0dz65hbma2xl626a8d1m6awn353"; })
-  (fetchNuGet { pname = "Microsoft.Extensions.DependencyInjection"; version = "3.1.9"; sha256 = "1ifjjzwfvd5igxaaxm124qv8afs1nb06rgdqy7l3jcfqr30xykbb"; })
-  (fetchNuGet { pname = "Microsoft.Extensions.DependencyInjection"; version = "5.0.0"; sha256 = "15sdwcyzz0qlybwbdq854bn3jk6kx7awx28gs864c4shhbqkppj4"; })
+  (fetchNuGet { pname = "Microsoft.Extensions.Configuration.Binder"; version = "8.0.0"; sha256 = "1m0gawiz8f5hc3li9vd5psddlygwgkiw13d7div87kmkf4idza8r"; })
+  (fetchNuGet { pname = "Microsoft.Extensions.Configuration.Binder"; version = "8.0.1"; sha256 = "0w5w0h1clv7585qkajy0vqb28blghhcv5j9ygfi13219idhx10r9"; })
+  (fetchNuGet { pname = "Microsoft.Extensions.Configuration.EnvironmentVariables"; version = "8.0.0"; sha256 = "13qb8wz3k59ihq0mjcqz1kwrpyzxn5da4dhk2pvcgc42z9kcbf7r"; })
+  (fetchNuGet { pname = "Microsoft.Extensions.Configuration.FileExtensions"; version = "8.0.0"; sha256 = "1jrmlfzy4h32nzf1nm5q8bhkpx958b0ww9qx1k1zm4pyaf6mqb04"; })
+  (fetchNuGet { pname = "Microsoft.Extensions.Configuration.Json"; version = "8.0.0"; sha256 = "1n3ss26v1lq6b69fxk1vz3kqv9ppxq8ypgdqpd7415xrq66y4bqn"; })
+  (fetchNuGet { pname = "Microsoft.Extensions.DependencyInjection"; version = "3.1.0"; sha256 = "1xc61dy07bn2q73mx1z3ylrw80xpa682qjby13gklnqq636a3gab"; })
   (fetchNuGet { pname = "Microsoft.Extensions.DependencyInjection"; version = "6.0.0"; sha256 = "1wlhb2vygzfdjbdzy7waxblmrx0q3pdcqvpapnpmq9fcx5m8r6w1"; })
+  (fetchNuGet { pname = "Microsoft.Extensions.DependencyInjection"; version = "8.0.0"; sha256 = "0i7qziz0iqmbk8zzln7kx9vd0lbx1x3va0yi3j1bgkjir13h78ps"; })
   (fetchNuGet { pname = "Microsoft.Extensions.DependencyInjection.Abstractions"; version = "2.0.0"; sha256 = "1pwrfh9b72k9rq6mb2jab5qhhi225d5rjalzkapiayggmygc8nhz"; })
-  (fetchNuGet { pname = "Microsoft.Extensions.DependencyInjection.Abstractions"; version = "3.1.8"; sha256 = "1vkhhyxpam3svbqkkxrcxh9h4r6h3vm76cdzmfqn7gbxgswc4y2w"; })
-  (fetchNuGet { pname = "Microsoft.Extensions.DependencyInjection.Abstractions"; version = "3.1.9"; sha256 = "1l7ng71y18fwdlyq2ycl12hmv9wrf7k7knz2jwv9w9w7spmp8jv6"; })
-  (fetchNuGet { pname = "Microsoft.Extensions.DependencyInjection.Abstractions"; version = "5.0.0"; sha256 = "17cz6s80va0ch0a6nqa1wbbbp3p8sqxb96lj4qcw67ivkp2yxiyj"; })
+  (fetchNuGet { pname = "Microsoft.Extensions.DependencyInjection.Abstractions"; version = "2.2.0"; sha256 = "1jyzfdr9651h3x6pxwhpfbb9mysfh8f8z1jvy4g117h9790r9zx5"; })
+  (fetchNuGet { pname = "Microsoft.Extensions.DependencyInjection.Abstractions"; version = "3.1.0"; sha256 = "1pvms778xkyv1a3gfwrxnh8ja769cxi416n7pcidn9wvg15ifvbh"; })
   (fetchNuGet { pname = "Microsoft.Extensions.DependencyInjection.Abstractions"; version = "6.0.0"; sha256 = "1vi67fw7q99gj7jd64gnnfr4d2c0ijpva7g9prps48ja6g91x6a9"; })
-  (fetchNuGet { pname = "Microsoft.Extensions.DependencyModel"; version = "3.0.0"; sha256 = "1cm0hycgb33mf1ja9q91wxi3gk13d1p462gdq7gndrya23hw2jm5"; })
-  (fetchNuGet { pname = "Microsoft.Extensions.DependencyModel"; version = "6.0.0"; sha256 = "08c4fh1n8vsish1vh7h73mva34g0as4ph29s4lvps7kmjb4z64nl"; })
-  (fetchNuGet { pname = "Microsoft.Extensions.Diagnostics.HealthChecks"; version = "6.0.9"; sha256 = "06mx8zmlmi371ab5pskw8iawy8bbi4vx6rwrcj0andc59zfmg96q"; })
-  (fetchNuGet { pname = "Microsoft.Extensions.Diagnostics.HealthChecks.Abstractions"; version = "6.0.9"; sha256 = "1nv2rwq0q7ql63qip5ba45p97yxgva9jg6gnvrnfh2yk2fjwyag2"; })
-  (fetchNuGet { pname = "Microsoft.Extensions.Diagnostics.HealthChecks.EntityFrameworkCore"; version = "6.0.9"; sha256 = "0hxnxq32rflz4nrvssbf9hhvyyay745dabdyhpxq5p41hi13pkik"; })
-  (fetchNuGet { pname = "Microsoft.Extensions.FileProviders.Abstractions"; version = "3.1.8"; sha256 = "0z173lsfypzjdx1a352svh1pgk7lgq2wpj5q60i1rgcrd3ib8b21"; })
-  (fetchNuGet { pname = "Microsoft.Extensions.FileProviders.Abstractions"; version = "6.0.0"; sha256 = "1fbqmfapxdz77drcv1ndyj2ybvd2rv4c9i9pgiykcpl4fa6dc65q"; })
-  (fetchNuGet { pname = "Microsoft.Extensions.FileProviders.Physical"; version = "6.0.0"; sha256 = "1ikc3kf325xig6njbi2aj5kmww4xlaq9lsrpc8v764fsm4x10474"; })
-  (fetchNuGet { pname = "Microsoft.Extensions.FileSystemGlobbing"; version = "6.0.0"; sha256 = "09gyyv4fwy9ys84z3aq4lm9y09b7bd1d4l4gfdinmg0z9678f1a4"; })
-  (fetchNuGet { pname = "Microsoft.Extensions.Hosting.Abstractions"; version = "3.1.8"; sha256 = "1lc69rn259gd6y4rjy0hwrcfnhkr0y0ac8w4ldh6mpk073snfjq0"; })
-  (fetchNuGet { pname = "Microsoft.Extensions.Hosting.Abstractions"; version = "6.0.0"; sha256 = "1mwjx6li4a82nb589763whpnhf5hfy1bpv1dzqqvczb1lhxhzhlj"; })
-  (fetchNuGet { pname = "Microsoft.Extensions.Http"; version = "3.1.9"; sha256 = "0w56d837b31hrly55j1hj4njliaialwladwwnjnrd9i9279kym8i"; })
-  (fetchNuGet { pname = "Microsoft.Extensions.Http"; version = "6.0.0"; sha256 = "1wxsqvfy2arbwk0nhambjprazim6ynrb23r1hr5vk4gv10i26m95"; })
-  (fetchNuGet { pname = "Microsoft.Extensions.Logging"; version = "3.1.9"; sha256 = "1x1bbkcq7ph9jgwv3yidipfqwdh6q3bsa2rxhfzmy64l7hc7r1wl"; })
-  (fetchNuGet { pname = "Microsoft.Extensions.Logging"; version = "5.0.0"; sha256 = "1qa1l18q2jh9azya8gv1p8anzcdirjzd9dxxisb4911i9m1648i3"; })
+  (fetchNuGet { pname = "Microsoft.Extensions.DependencyInjection.Abstractions"; version = "8.0.0"; sha256 = "1zw0bpp5742jzx03wvqc8csnvsbgdqi0ls9jfc5i2vd3cl8b74pg"; })
+  (fetchNuGet { pname = "Microsoft.Extensions.DependencyInjection.Abstractions"; version = "8.0.1"; sha256 = "1wyhpamm1nqjfi3r463dhxljdlr6rm2ax4fvbgq2s0j3jhpdhd4p"; })
+  (fetchNuGet { pname = "Microsoft.Extensions.DependencyModel"; version = "8.0.0"; sha256 = "02jnx23hm1vid3yd9pw4gghzn6qkgdl5xfc5r0zrcxdax70rsh5a"; })
+  (fetchNuGet { pname = "Microsoft.Extensions.Diagnostics"; version = "8.0.0"; sha256 = "0ghwkld91k20hcbmzg2137w81mzzdh8hfaapdwckhza0vipya4kw"; })
+  (fetchNuGet { pname = "Microsoft.Extensions.Diagnostics.Abstractions"; version = "8.0.0"; sha256 = "15m4j6w9n8h0mj7hlfzb83hd3wn7aq1s7fxbicm16slsjfwzj82i"; })
+  (fetchNuGet { pname = "Microsoft.Extensions.Diagnostics.HealthChecks"; version = "8.0.4"; sha256 = "16jm0jkb4nhx3dvqg9yljkmg95v4awpc3dkn1qqcb8bbr6szskr1"; })
+  (fetchNuGet { pname = "Microsoft.Extensions.Diagnostics.HealthChecks.Abstractions"; version = "8.0.4"; sha256 = "1iylfqpqpiknywfzka2zibz0vmrrf73y6g5irl57parxxb836yhy"; })
+  (fetchNuGet { pname = "Microsoft.Extensions.Diagnostics.HealthChecks.EntityFrameworkCore"; version = "8.0.4"; sha256 = "0mxxms7nf9sm8iwf6n4ny9ni7ap7gya74wahmwcpv1v0dgq004z6"; })
+  (fetchNuGet { pname = "Microsoft.Extensions.FileProviders.Abstractions"; version = "2.2.0"; sha256 = "1f83ffb4xjwljg8dgzdsa3pa0582q6b4zm0si467fgkybqzk3c54"; })
+  (fetchNuGet { pname = "Microsoft.Extensions.FileProviders.Abstractions"; version = "8.0.0"; sha256 = "1idq65fxwcn882c06yci7nscy9i0rgw6mqjrl7362prvvsd9f15r"; })
+  (fetchNuGet { pname = "Microsoft.Extensions.FileProviders.Physical"; version = "8.0.0"; sha256 = "05wxjvjbx79ir7vfkri6b28k8zl8fa6bbr0i7gahqrim2ijvkp6v"; })
+  (fetchNuGet { pname = "Microsoft.Extensions.FileSystemGlobbing"; version = "8.0.0"; sha256 = "1igf2bqism22fxv7km5yv028r4rg12a4lki2jh4xg3brjkagiv7q"; })
+  (fetchNuGet { pname = "Microsoft.Extensions.Hosting.Abstractions"; version = "8.0.0"; sha256 = "00d5dwmzw76iy8z40ly01hy9gly49a7rpf7k7m99vrid1kxp346h"; })
+  (fetchNuGet { pname = "Microsoft.Extensions.Http"; version = "3.1.0"; sha256 = "02ipxf75rqzsbmmy5ka44hh8krmxgky9mdxmh8f7fkbclpg2s6cy"; })
+  (fetchNuGet { pname = "Microsoft.Extensions.Http"; version = "8.0.0"; sha256 = "09hmkhxipbpfmwz9q80746zp6cvbx1cqffxr5xjxv5cbjg5662aj"; })
+  (fetchNuGet { pname = "Microsoft.Extensions.Logging"; version = "3.1.0"; sha256 = "1d3yhqj1rav7vswm747j7w8fh8paybji4rz941hhlq4b12mfqfh4"; })
   (fetchNuGet { pname = "Microsoft.Extensions.Logging"; version = "6.0.0"; sha256 = "0fd9jii3y3irfcwlsiww1y9npjgabzarh33rn566wpcz24lijszi"; })
-  (fetchNuGet { pname = "Microsoft.Extensions.Logging.Abstractions"; version = "3.1.8"; sha256 = "0iq8py91xvma10rysq3dl29nxhmlgniad3cvafb4jg8iz52ym24h"; })
-  (fetchNuGet { pname = "Microsoft.Extensions.Logging.Abstractions"; version = "3.1.9"; sha256 = "1i24mz3v677bmdysxklm9a3qc87j72lpkfp0l16gh6yqpmhwg7vp"; })
-  (fetchNuGet { pname = "Microsoft.Extensions.Logging.Abstractions"; version = "5.0.0"; sha256 = "1yza38675dbv1qqnnhqm23alv2bbaqxp0pb7zinjmw8j2mr5r6wc"; })
+  (fetchNuGet { pname = "Microsoft.Extensions.Logging"; version = "8.0.0"; sha256 = "0nppj34nmq25gnrg0wh1q22y4wdqbih4ax493f226azv8mkp9s1i"; })
+  (fetchNuGet { pname = "Microsoft.Extensions.Logging.Abstractions"; version = "3.1.0"; sha256 = "1zyalrcksszmn9r5xjnirfh7847axncgzxkk3k5srbvlcch8fw8g"; })
   (fetchNuGet { pname = "Microsoft.Extensions.Logging.Abstractions"; version = "6.0.0"; sha256 = "0b75fmins171zi6bfdcq1kcvyrirs8n91mknjnxy4c3ygi1rrnj0"; })
-  (fetchNuGet { pname = "Microsoft.Extensions.Logging.Abstractions"; version = "6.0.2"; sha256 = "1wv54f3p3r2zj1pr9a6z8zqrh2ihm6v6qcw2pjwis1lcc0qb472m"; })
+  (fetchNuGet { pname = "Microsoft.Extensions.Logging.Abstractions"; version = "8.0.0"; sha256 = "1klcqhg3hk55hb6vmjiq2wgqidsl81aldw0li2z98lrwx26msrr6"; })
+  (fetchNuGet { pname = "Microsoft.Extensions.Logging.Abstractions"; version = "8.0.1"; sha256 = "0i9pgmk60b8xlws3q9z890gim1xjq42dhyh6dj4xvbycmgg1x1sd"; })
+  (fetchNuGet { pname = "Microsoft.Extensions.ObjectPool"; version = "7.0.0"; sha256 = "15lz0qk2gr2q52i05ip51dzm9p4hzqlrammkc0hv2ng6g0z72697"; })
   (fetchNuGet { pname = "Microsoft.Extensions.Options"; version = "2.0.0"; sha256 = "0g4zadlg73f507krilhaaa7h0jdga216syrzjlyf5fdk25gxmjqh"; })
-  (fetchNuGet { pname = "Microsoft.Extensions.Options"; version = "3.1.9"; sha256 = "0rpix172cmwwbddh4gm0647x1ql0ly5n68bpz71v915j97anwg90"; })
-  (fetchNuGet { pname = "Microsoft.Extensions.Options"; version = "5.0.0"; sha256 = "1rdmgpg770x8qwaaa6ryc27zh93p697fcyvn5vkxp0wimlhqkbay"; })
+  (fetchNuGet { pname = "Microsoft.Extensions.Options"; version = "2.2.0"; sha256 = "1b20yh03fg4nmmi3vlf6gf13vrdkmklshfzl3ijygcs4c2hly6v0"; })
+  (fetchNuGet { pname = "Microsoft.Extensions.Options"; version = "3.1.0"; sha256 = "0akccwhpn93a4qrssyb3rszdsp3j4p9hlxbsb7yhqb78xydaqhyh"; })
   (fetchNuGet { pname = "Microsoft.Extensions.Options"; version = "6.0.0"; sha256 = "008pnk2p50i594ahz308v81a41mbjz9mwcarqhmrjpl2d20c868g"; })
-  (fetchNuGet { pname = "Microsoft.Extensions.Options.ConfigurationExtensions"; version = "2.0.0"; sha256 = "1isc3rjbzz60f7wbmgcwslx5d10hm5hisnk7v54vfi2bz7132gll"; })
+  (fetchNuGet { pname = "Microsoft.Extensions.Options"; version = "8.0.0"; sha256 = "0p50qn6zhinzyhq9sy5svnmqqwhw2jajs2pbjh9sah504wjvhscz"; })
+  (fetchNuGet { pname = "Microsoft.Extensions.Options"; version = "8.0.2"; sha256 = "0as39ml1idgp42yvh725ddqp4illq87adzd1ymzx6xjxsxsjadq2"; })
+  (fetchNuGet { pname = "Microsoft.Extensions.Options.ConfigurationExtensions"; version = "6.0.0"; sha256 = "1k6q91vrhq1r74l4skibn7wzxzww9l74ibxb2i8gg4q6fzbiivba"; })
+  (fetchNuGet { pname = "Microsoft.Extensions.Options.ConfigurationExtensions"; version = "8.0.0"; sha256 = "04nm8v5a3zp0ill7hjnwnja3s2676b4wffdri8hdk2341p7mp403"; })
   (fetchNuGet { pname = "Microsoft.Extensions.Primitives"; version = "2.0.0"; sha256 = "1xppr5jbny04slyjgngxjdm0maxdh47vq481ps944d7jrfs0p3mb"; })
-  (fetchNuGet { pname = "Microsoft.Extensions.Primitives"; version = "3.1.8"; sha256 = "1p48hk3r9ikv36wdpwdrbvaccziazncf7nl60fr82i04199lfhgl"; })
-  (fetchNuGet { pname = "Microsoft.Extensions.Primitives"; version = "3.1.9"; sha256 = "0538fvjz9c27nvc6kv83b0912qvc71wz2w60svl0mscj86ds49wc"; })
-  (fetchNuGet { pname = "Microsoft.Extensions.Primitives"; version = "5.0.0"; sha256 = "0swqcknyh87ns82w539z1mvy804pfwhgzs97cr3nwqk6g5s42gd6"; })
+  (fetchNuGet { pname = "Microsoft.Extensions.Primitives"; version = "2.2.0"; sha256 = "0znah6arbcqari49ymigg3wiy2hgdifz8zsq8vdc3ynnf45r7h0c"; })
+  (fetchNuGet { pname = "Microsoft.Extensions.Primitives"; version = "3.1.0"; sha256 = "1w1y22njywwysi8qjnj4m83qhbq0jr4mmjib0hfawz6cwamh7xrb"; })
   (fetchNuGet { pname = "Microsoft.Extensions.Primitives"; version = "6.0.0"; sha256 = "1kjiw6s4yfz9gm7mx3wkhp06ghnbs95icj9hi505shz9rjrg42q2"; })
+  (fetchNuGet { pname = "Microsoft.Extensions.Primitives"; version = "8.0.0"; sha256 = "0aldaz5aapngchgdr7dax9jw5wy7k7hmjgjpfgfv1wfif27jlkqm"; })
+  (fetchNuGet { pname = "Microsoft.Net.Http.Headers"; version = "2.2.0"; sha256 = "0w6lrk9z67bcirq2cj2ldfhnizc6id77ba6i30hjzgqjlyhh1gx5"; })
   (fetchNuGet { pname = "Microsoft.NETCore.Platforms"; version = "1.0.1"; sha256 = "01al6cfxp68dscl15z7rxfw9zvhm64dncsw09a1vmdkacsa2v6lr"; })
   (fetchNuGet { pname = "Microsoft.NETCore.Platforms"; version = "1.1.0"; sha256 = "08vh1r12g6ykjygq5d3vq09zylgb84l63k49jc4v8faw9g93iqqm"; })
+  (fetchNuGet { pname = "Microsoft.NETCore.Platforms"; version = "1.1.1"; sha256 = "164wycgng4mi9zqi2pnsf1pq6gccbqvw6ib916mqizgjmd8f44pj"; })
   (fetchNuGet { pname = "Microsoft.NETCore.Platforms"; version = "5.0.0"; sha256 = "0mwpwdflidzgzfx2dlpkvvnkgkr2ayaf0s80737h4wa35gaj11rc"; })
   (fetchNuGet { pname = "Microsoft.NETCore.Targets"; version = "1.0.1"; sha256 = "0ppdkwy6s9p7x9jix3v4402wb171cdiibq7js7i13nxpdky7074p"; })
   (fetchNuGet { pname = "Microsoft.NETCore.Targets"; version = "1.1.0"; sha256 = "193xwf33fbm0ni3idxzbr5fdq3i2dlfgihsac9jj7whj0gd902nh"; })
   (fetchNuGet { pname = "Microsoft.OpenApi"; version = "1.2.3"; sha256 = "07b19k89whj69j87afkz86gp9b3iybw8jqwvlgcn43m7fb2y99rr"; })
-  (fetchNuGet { pname = "Microsoft.SourceLink.Common"; version = "1.1.1"; sha256 = "0xkdqs7az2cprar7jzjlgjpd64l6f8ixcmwmpkdm03fyb4s5m0bg"; })
-  (fetchNuGet { pname = "Microsoft.SourceLink.GitHub"; version = "1.1.1"; sha256 = "099y35f2npvva3jk1zp8hn0vb9pwm2l0ivjasdly6y2idv53s5yy"; })
+  (fetchNuGet { pname = "Microsoft.Win32.Primitives"; version = "4.3.0"; sha256 = "0j0c1wj4ndj21zsgivsc24whiya605603kxrbiw6wkfdync464wq"; })
   (fetchNuGet { pname = "Microsoft.Win32.Registry"; version = "5.0.0"; sha256 = "102hvhq2gmlcbq8y2cb7hdr2dnmjzfp2k3asr1ycwrfacwyaak7n"; })
-  (fetchNuGet { pname = "Microsoft.Win32.SystemEvents"; version = "5.0.0"; sha256 = "0sja4ba0mrvdamn0r9mhq38b9dxi08yb3c1hzh29n1z6ws1hlrcq"; })
+  (fetchNuGet { pname = "Microsoft.Win32.SystemEvents"; version = "7.0.0"; sha256 = "1bh77misznh19m1swqm3dsbji499b8xh9gk6w74sgbkarf6ni8lb"; })
   (fetchNuGet { pname = "MimeTypes"; version = "2.4.0"; sha256 = "005i81irglnr0wc60zsfwi6bpxafdlwv2q2h7vxnp28b5965wzik"; })
-  (fetchNuGet { pname = "Mono.Nat"; version = "3.0.3"; sha256 = "1b3alh1wz28y62cflwl1jppigv499cndm8sds32xsmvwpdwiq4yl"; })
+  (fetchNuGet { pname = "Mono.Nat"; version = "3.0.4"; sha256 = "10zvyq60wy02q21dszrk1h3ww23b7bkgjxaapx1ans4d9nwsmlrm"; })
+  (fetchNuGet { pname = "Mono.TextTemplating"; version = "2.2.1"; sha256 = "1ih6399x4bxzchw7pq5195imir9viy2r1w702vy87vrarxyjqdp1"; })
   (fetchNuGet { pname = "NEbml"; version = "0.11.0"; sha256 = "0jrkgw0kn8f32fzmybvb8m44rcrjylbs1agqlj2q93cqx047d1md"; })
-  (fetchNuGet { pname = "Newtonsoft.Json"; version = "13.0.1"; sha256 = "0fijg0w6iwap8gvzyjnndds0q4b8anwxxvik7y8vgq97dram4srb"; })
-  (fetchNuGet { pname = "OptimizedPriorityQueue"; version = "5.1.0"; sha256 = "0zbxyrgjra8va44d0c0ll8l2jylckpyyg86gkrwhwi2fly2mkwmh"; })
-  (fetchNuGet { pname = "PlaylistsNET"; version = "1.2.1"; sha256 = "04vzzn8d7vrzyz073wj50akljy3habmp4z6fwlqqymf5x1prfr9v"; })
+  (fetchNuGet { pname = "Newtonsoft.Json"; version = "13.0.3"; sha256 = "0xrwysmrn4midrjal8g2hr1bbg38iyisl0svamb11arqws4w2bw7"; })
+  (fetchNuGet { pname = "PlaylistsNET"; version = "1.4.1"; sha256 = "0zhwa5xqy0a4g10nkl3ngpax3d59zhrbc3b5hvb4i9xqji3vds0x"; })
   (fetchNuGet { pname = "prometheus-net"; version = "3.1.2"; sha256 = "1jyxvl9cqxvb71mpaglw8aks27i69hg7yzrdwsjc182nmmhh1p03"; })
-  (fetchNuGet { pname = "prometheus-net"; version = "6.0.0"; sha256 = "1vcv98j3jvhikk6p48nqd4vnl2iqsyjpyb9iiwyr6g8mfryx2x6i"; })
-  (fetchNuGet { pname = "prometheus-net.AspNetCore"; version = "6.0.0"; sha256 = "14l61j6nxjks98hhhw1p8i5x234wp63i58br86z03zm4ad2wlw50"; })
-  (fetchNuGet { pname = "prometheus-net.DotNetRuntime"; version = "4.2.4"; sha256 = "1a57vklgwghdlin2d1f66gcim6di4snfl4a82m5gsr368vfc0n90"; })
+  (fetchNuGet { pname = "prometheus-net"; version = "8.2.1"; sha256 = "0g1hf6v6k4ym9a663az76775rkazvxmfl4yb60w0ghqzvrfxw49p"; })
+  (fetchNuGet { pname = "prometheus-net.AspNetCore"; version = "8.2.1"; sha256 = "1rygyyflx53djczfgavr6jzqgz0sfw3r1h93gm3gs3v48d6c06kn"; })
+  (fetchNuGet { pname = "prometheus-net.DotNetRuntime"; version = "4.4.0"; sha256 = "1hrzf2djkjiswyf4xg3pl6rb0a8i0mh294hrfbna782hfxya7c29"; })
   (fetchNuGet { pname = "runtime.any.System.Collections"; version = "4.3.0"; sha256 = "0bv5qgm6vr47ynxqbnkc7i797fdi8gbjjxii173syrx14nmrkwg0"; })
+  (fetchNuGet { pname = "runtime.any.System.Diagnostics.Tracing"; version = "4.3.0"; sha256 = "00j6nv2xgmd3bi347k00m7wr542wjlig53rmj28pmw7ddcn97jbn"; })
   (fetchNuGet { pname = "runtime.any.System.Globalization"; version = "4.3.0"; sha256 = "1daqf33hssad94lamzg01y49xwndy2q97i2lrb7mgn28656qia1x"; })
+  (fetchNuGet { pname = "runtime.any.System.Globalization.Calendars"; version = "4.3.0"; sha256 = "1ghhhk5psqxcg6w88sxkqrc35bxcz27zbqm2y5p5298pv3v7g201"; })
   (fetchNuGet { pname = "runtime.any.System.IO"; version = "4.3.0"; sha256 = "0l8xz8zn46w4d10bcn3l4yyn4vhb3lrj2zw8llvz7jk14k4zps5x"; })
   (fetchNuGet { pname = "runtime.any.System.Reflection"; version = "4.3.0"; sha256 = "02c9h3y35pylc0zfq3wcsvc5nqci95nrkq0mszifc0sjx7xrzkly"; })
   (fetchNuGet { pname = "runtime.any.System.Reflection.Extensions"; version = "4.3.0"; sha256 = "0zyri97dfc5vyaz9ba65hjj1zbcrzaffhsdlpxc9bh09wy22fq33"; })
@@ -115,107 +154,170 @@
   (fetchNuGet { pname = "runtime.any.System.Runtime.Handles"; version = "4.3.0"; sha256 = "0bh5bi25nk9w9xi8z23ws45q5yia6k7dg3i4axhfqlnj145l011x"; })
   (fetchNuGet { pname = "runtime.any.System.Runtime.InteropServices"; version = "4.3.0"; sha256 = "0c3g3g3jmhlhw4klrc86ka9fjbl7i59ds1fadsb2l8nqf8z3kb19"; })
   (fetchNuGet { pname = "runtime.any.System.Text.Encoding"; version = "4.3.0"; sha256 = "0aqqi1v4wx51h51mk956y783wzags13wa7mgqyclacmsmpv02ps3"; })
+  (fetchNuGet { pname = "runtime.any.System.Text.Encoding.Extensions"; version = "4.3.0"; sha256 = "0lqhgqi0i8194ryqq6v2gqx0fb86db2gqknbm0aq31wb378j7ip8"; })
   (fetchNuGet { pname = "runtime.any.System.Threading.Tasks"; version = "4.3.0"; sha256 = "03mnvkhskbzxddz4hm113zsch1jyzh2cs450dk3rgfjp8crlw1va"; })
   (fetchNuGet { pname = "runtime.debian.8-x64.runtime.native.System.Security.Cryptography.OpenSsl"; version = "4.3.0"; sha256 = "16rnxzpk5dpbbl1x354yrlsbvwylrq456xzpsha1n9y3glnhyx9d"; })
+  (fetchNuGet { pname = "runtime.debian.8-x64.runtime.native.System.Security.Cryptography.OpenSsl"; version = "4.3.2"; sha256 = "0rwpqngkqiapqc5c2cpkj7idhngrgss5qpnqg0yh40mbyflcxf8i"; })
   (fetchNuGet { pname = "runtime.fedora.23-x64.runtime.native.System.Security.Cryptography.OpenSsl"; version = "4.3.0"; sha256 = "0hkg03sgm2wyq8nqk6dbm9jh5vcq57ry42lkqdmfklrw89lsmr59"; })
+  (fetchNuGet { pname = "runtime.fedora.23-x64.runtime.native.System.Security.Cryptography.OpenSsl"; version = "4.3.2"; sha256 = "1n06gxwlinhs0w7s8a94r1q3lwqzvynxwd3mp10ws9bg6gck8n4r"; })
   (fetchNuGet { pname = "runtime.fedora.24-x64.runtime.native.System.Security.Cryptography.OpenSsl"; version = "4.3.0"; sha256 = "0c2p354hjx58xhhz7wv6div8xpi90sc6ibdm40qin21bvi7ymcaa"; })
+  (fetchNuGet { pname = "runtime.fedora.24-x64.runtime.native.System.Security.Cryptography.OpenSsl"; version = "4.3.2"; sha256 = "0404wqrc7f2yc0wxv71y3nnybvqx8v4j9d47hlscxy759a525mc3"; })
   (fetchNuGet { pname = "runtime.native.System"; version = "4.3.0"; sha256 = "15hgf6zaq9b8br2wi1i3x0zvmk410nlmsmva9p0bbg73v6hml5k4"; })
+  (fetchNuGet { pname = "runtime.native.System.Net.Http"; version = "4.3.0"; sha256 = "1n6rgz5132lcibbch1qlf0g9jk60r0kqv087hxc0lisy50zpm7kk"; })
+  (fetchNuGet { pname = "runtime.native.System.Security.Cryptography.Apple"; version = "4.3.0"; sha256 = "1b61p6gw1m02cc1ry996fl49liiwky6181dzr873g9ds92zl326q"; })
   (fetchNuGet { pname = "runtime.native.System.Security.Cryptography.OpenSsl"; version = "4.3.0"; sha256 = "18pzfdlwsg2nb1jjjjzyb5qlgy6xjxzmhnfaijq5s2jw3cm3ab97"; })
+  (fetchNuGet { pname = "runtime.native.System.Security.Cryptography.OpenSsl"; version = "4.3.2"; sha256 = "0zy5r25jppz48i2bkg8b9lfig24xixg6nm3xyr1379zdnqnpm8f6"; })
   (fetchNuGet { pname = "runtime.opensuse.13.2-x64.runtime.native.System.Security.Cryptography.OpenSsl"; version = "4.3.0"; sha256 = "0qyynf9nz5i7pc26cwhgi8j62ps27sqmf78ijcfgzab50z9g8ay3"; })
+  (fetchNuGet { pname = "runtime.opensuse.13.2-x64.runtime.native.System.Security.Cryptography.OpenSsl"; version = "4.3.2"; sha256 = "096ch4n4s8k82xga80lfmpimpzahd2ip1mgwdqgar0ywbbl6x438"; })
   (fetchNuGet { pname = "runtime.opensuse.42.1-x64.runtime.native.System.Security.Cryptography.OpenSsl"; version = "4.3.0"; sha256 = "1klrs545awhayryma6l7g2pvnp9xy4z0r1i40r80zb45q3i9nbyf"; })
+  (fetchNuGet { pname = "runtime.opensuse.42.1-x64.runtime.native.System.Security.Cryptography.OpenSsl"; version = "4.3.2"; sha256 = "1dm8fifl7rf1gy7lnwln78ch4rw54g0pl5g1c189vawavll7p6rj"; })
+  (fetchNuGet { pname = "runtime.osx.10.10-x64.runtime.native.System.Security.Cryptography.Apple"; version = "4.3.0"; sha256 = "10yc8jdrwgcl44b4g93f1ds76b176bajd3zqi2faf5rvh1vy9smi"; })
   (fetchNuGet { pname = "runtime.osx.10.10-x64.runtime.native.System.Security.Cryptography.OpenSsl"; version = "4.3.0"; sha256 = "0zcxjv5pckplvkg0r6mw3asggm7aqzbdjimhvsasb0cgm59x09l3"; })
+  (fetchNuGet { pname = "runtime.osx.10.10-x64.runtime.native.System.Security.Cryptography.OpenSsl"; version = "4.3.2"; sha256 = "1m9z1k9kzva9n9kwinqxl97x2vgl79qhqjlv17k9s2ymcyv2bwr6"; })
   (fetchNuGet { pname = "runtime.rhel.7-x64.runtime.native.System.Security.Cryptography.OpenSsl"; version = "4.3.0"; sha256 = "0vhynn79ih7hw7cwjazn87rm9z9fj0rvxgzlab36jybgcpcgphsn"; })
+  (fetchNuGet { pname = "runtime.rhel.7-x64.runtime.native.System.Security.Cryptography.OpenSsl"; version = "4.3.2"; sha256 = "1cpx56mcfxz7cpn57wvj18sjisvzq8b5vd9rw16ihd2i6mcp3wa1"; })
   (fetchNuGet { pname = "runtime.ubuntu.14.04-x64.runtime.native.System.Security.Cryptography.OpenSsl"; version = "4.3.0"; sha256 = "160p68l2c7cqmyqjwxydcvgw7lvl1cr0znkw8fp24d1by9mqc8p3"; })
+  (fetchNuGet { pname = "runtime.ubuntu.14.04-x64.runtime.native.System.Security.Cryptography.OpenSsl"; version = "4.3.2"; sha256 = "15gsm1a8jdmgmf8j5v1slfz8ks124nfdhk2vxs2rw3asrxalg8hi"; })
   (fetchNuGet { pname = "runtime.ubuntu.16.04-x64.runtime.native.System.Security.Cryptography.OpenSsl"; version = "4.3.0"; sha256 = "15zrc8fgd8zx28hdghcj5f5i34wf3l6bq5177075m2bc2j34jrqy"; })
+  (fetchNuGet { pname = "runtime.ubuntu.16.04-x64.runtime.native.System.Security.Cryptography.OpenSsl"; version = "4.3.2"; sha256 = "0q0n5q1r1wnqmr5i5idsrd9ywl33k0js4pngkwq9p368mbxp8x1w"; })
   (fetchNuGet { pname = "runtime.ubuntu.16.10-x64.runtime.native.System.Security.Cryptography.OpenSsl"; version = "4.3.0"; sha256 = "1p4dgxax6p7rlgj4q73k73rslcnz4wdcv8q2flg1s8ygwcm58ld5"; })
+  (fetchNuGet { pname = "runtime.ubuntu.16.10-x64.runtime.native.System.Security.Cryptography.OpenSsl"; version = "4.3.2"; sha256 = "1x0g58pbpjrmj2x2qw17rdwwnrcl0wvim2hdwz48lixvwvp22n9c"; })
+  (fetchNuGet { pname = "runtime.unix.Microsoft.Win32.Primitives"; version = "4.3.0"; sha256 = "0y61k9zbxhdi0glg154v30kkq7f8646nif8lnnxbvkjpakggd5id"; })
   (fetchNuGet { pname = "runtime.unix.System.Diagnostics.Debug"; version = "4.3.0"; sha256 = "1lps7fbnw34bnh3lm31gs5c0g0dh7548wfmb8zz62v0zqz71msj5"; })
+  (fetchNuGet { pname = "runtime.unix.System.IO.FileSystem"; version = "4.3.0"; sha256 = "14nbkhvs7sji5r1saj2x8daz82rnf9kx28d3v2qss34qbr32dzix"; })
+  (fetchNuGet { pname = "runtime.unix.System.Net.Primitives"; version = "4.3.0"; sha256 = "0bdnglg59pzx9394sy4ic66kmxhqp8q8bvmykdxcbs5mm0ipwwm4"; })
   (fetchNuGet { pname = "runtime.unix.System.Private.Uri"; version = "4.3.0"; sha256 = "1jx02q6kiwlvfksq1q9qr17fj78y5v6mwsszav4qcz9z25d5g6vk"; })
   (fetchNuGet { pname = "runtime.unix.System.Runtime.Extensions"; version = "4.3.0"; sha256 = "0pnxxmm8whx38dp6yvwgmh22smknxmqs5n513fc7m4wxvs1bvi4p"; })
   (fetchNuGet { pname = "Serilog"; version = "2.10.0"; sha256 = "08bih205i632ywryn3zxkhb15dwgyaxbhmm1z3b5nmby9fb25k7v"; })
   (fetchNuGet { pname = "Serilog"; version = "2.3.0"; sha256 = "0y1111y0csfnil901nfahhj3x251nzdam0c4vab3gw5qh8iqs3my"; })
   (fetchNuGet { pname = "Serilog"; version = "2.9.0"; sha256 = "0z0ib82w9b229a728bbyhzc2hnlbl0ki7nnvmgnv3l741f2vr4i6"; })
-  (fetchNuGet { pname = "Serilog.AspNetCore"; version = "4.1.0"; sha256 = "0kdga6ic988z8m87z4cwj33gac5c468kd3m11a10xzffgcp2fknf"; })
+  (fetchNuGet { pname = "Serilog"; version = "3.1.1"; sha256 = "0ck51ndmaqflsri7yyw5792z42wsp91038rx2i6vg7z4r35vfvig"; })
+  (fetchNuGet { pname = "Serilog.AspNetCore"; version = "8.0.1"; sha256 = "0vmrbhj9vb00fhvxrw3w5j1gvdx4xzxz8d2cp65hps988zxwykkb"; })
   (fetchNuGet { pname = "Serilog.Enrichers.Thread"; version = "3.1.0"; sha256 = "1y75aiv2k1sxnh012ixkx92fq1yl8srqggy8l439igg4p223hcqi"; })
-  (fetchNuGet { pname = "Serilog.Extensions.Hosting"; version = "4.1.2"; sha256 = "072a1vwzhfaqyfc24v7z2azlm85zbj1vwhj8cagygzcfwf5ijc2h"; })
-  (fetchNuGet { pname = "Serilog.Extensions.Logging"; version = "3.0.1"; sha256 = "069qy7dm5nxb372ij112ppa6m99b4iaimj3sji74m659fwrcrl9a"; })
-  (fetchNuGet { pname = "Serilog.Formatting.Compact"; version = "1.1.0"; sha256 = "1w3qhj1jrihb20gr9la4r4gcmdyyy6dai2xflwhzvgqrq05wlycy"; })
-  (fetchNuGet { pname = "Serilog.Settings.Configuration"; version = "3.3.0"; sha256 = "1g9141b3k7fv5n6jh6pmph4f46byjqw1rcqnnicm1gwgzh6cdkpq"; })
+  (fetchNuGet { pname = "Serilog.Extensions.Hosting"; version = "8.0.0"; sha256 = "10cgp4nsrzkld5yxnvkfkwd0wkc1m8m7p5z42w4sqd8f188n8i9q"; })
+  (fetchNuGet { pname = "Serilog.Extensions.Logging"; version = "8.0.0"; sha256 = "087ab94sfhkj6h6x3cwwf66g456704faxnfyc4pi6shxk45b318s"; })
+  (fetchNuGet { pname = "Serilog.Formatting.Compact"; version = "2.0.0"; sha256 = "0y7vg2qji02riq7r0kgybarhkngw6gh3xw89w7c2hcmjawd96x3k"; })
+  (fetchNuGet { pname = "Serilog.Settings.Configuration"; version = "8.0.0"; sha256 = "0245gvndwbj4nbp8q09vp7w4i9iddxr0vzda2c3ja5afz1zgs395"; })
   (fetchNuGet { pname = "Serilog.Sinks.Async"; version = "1.5.0"; sha256 = "0bcb3n6lmg5wfj806mziybfmbb8gyiszrivs3swf0msy8w505gyg"; })
-  (fetchNuGet { pname = "Serilog.Sinks.Console"; version = "4.0.1"; sha256 = "080vh9kcyn9lx4j7p34146kp9byvhqlaz5jn9wzx70ql9cwd0hlz"; })
+  (fetchNuGet { pname = "Serilog.Sinks.Console"; version = "5.0.1"; sha256 = "0cnjjpnnhlx3k4385dbnddkz3n6khdshjix0hlv4gjmrrmjaixva"; })
   (fetchNuGet { pname = "Serilog.Sinks.Debug"; version = "2.0.0"; sha256 = "1i7j870l47gan3gpnnlzkccn5lbm7518cnkp25a3g5gp9l0dbwpw"; })
   (fetchNuGet { pname = "Serilog.Sinks.File"; version = "5.0.0"; sha256 = "097rngmgcrdfy7jy8j7dq3xaq2qky8ijwg0ws6bfv5lx0f3vvb0q"; })
-  (fetchNuGet { pname = "Serilog.Sinks.Graylog"; version = "2.3.0"; sha256 = "1mnji4p1n9rsjxlaal84zkypwqcfciws1si863zz4ld2xvv9adri"; })
+  (fetchNuGet { pname = "Serilog.Sinks.Graylog"; version = "3.1.1"; sha256 = "05brpqq8mrk6dr5yy8y69fhfwycgj45cnydgjikbbs2dsk2wrl0z"; })
   (fetchNuGet { pname = "SerilogAnalyzer"; version = "0.15.0"; sha256 = "0k83cyzl9520q282vp07zb8rs16a56axv7a31l3m5fb1afq2hv9l"; })
-  (fetchNuGet { pname = "SharpCompress"; version = "0.32.2"; sha256 = "1p198bl08ia89rf4n6yjpacj3yrz6s574snsfl40l8vlqcdrc1pm"; })
-  (fetchNuGet { pname = "SkiaSharp"; version = "2.88.2"; sha256 = "0fnvp1yxl8gix9qb812pslhp8dvbf12ackvmp4yjdig6ybix77az"; })
-  (fetchNuGet { pname = "SkiaSharp.NativeAssets.Linux"; version = "2.88.2"; sha256 = "1jc65bg75kxa2hv33y9584hbar10lirahgnh8s12lk8dpb23a3m3"; })
-  (fetchNuGet { pname = "SkiaSharp.NativeAssets.macOS"; version = "2.88.2"; sha256 = "0vsbl3sjz15nsgpbmjs0p6nd1842j4pbb0jvzaqn3w7rrwyl44bk"; })
-  (fetchNuGet { pname = "SkiaSharp.NativeAssets.Win32"; version = "2.88.2"; sha256 = "1g1v7x2dnnsljf43m7yl54nx17z9wswlh9qi3b8cl7z1g04800vi"; })
-  (fetchNuGet { pname = "SkiaSharp.Svg"; version = "1.60.0"; sha256 = "1gja5fdk4dn9l7vqnik29v1x5b4xnp2dpjm4gmpv44r6085i9hz0"; })
+  (fetchNuGet { pname = "ShimSkiaSharp"; version = "1.0.0.18"; sha256 = "1vxsw5kkw3z4c59v5678k4nmxng92845y3pi4fgv1wcnxgw5aqzg"; })
+  (fetchNuGet { pname = "SkiaSharp"; version = "2.88.8"; sha256 = "0h5vrmximld239l9k98h09wbjwgiwvhyxyixqgbi95d7hirn0gmc"; })
+  (fetchNuGet { pname = "SkiaSharp.HarfBuzz"; version = "2.88.8"; sha256 = "13ynv4qgl33cf31nriqnh58039vw8mghpkd1v6jazwiz9awcvn2v"; })
+  (fetchNuGet { pname = "SkiaSharp.NativeAssets.Linux"; version = "2.88.8"; sha256 = "1dlp8ra9ccdhqglgjn22fm0axy9lfr3kxby3db4aqkgfp1nqvsbw"; })
+  (fetchNuGet { pname = "SkiaSharp.NativeAssets.macOS"; version = "2.88.8"; sha256 = "0qiygnrmpbawn0spx733v60srhn2mm0z0lpv127cj2gh076jpmq9"; })
+  (fetchNuGet { pname = "SkiaSharp.NativeAssets.Win32"; version = "2.88.8"; sha256 = "1wrwk44gvjh43dwmjm0cp1bmcrxz2yfq3l4h935073ydibvmpibg"; })
   (fetchNuGet { pname = "SmartAnalyzers.MultithreadingAnalyzer"; version = "1.1.31"; sha256 = "1qk5s4rx5ma7k2kzkn1h94fsrzmwkivj0z1czsjwmr8z7zhngs2h"; })
-  (fetchNuGet { pname = "SQLitePCL.pretty.netstandard"; version = "3.1.0"; sha256 = "1r2kqkaw2viyxizsp98xcv5m4lv62s5qp7d7cnx02g4drwxcpk2h"; })
-  (fetchNuGet { pname = "SQLitePCLRaw.bundle_e_sqlite3"; version = "2.0.6"; sha256 = "1ip0a653dx5cqybxg27zyz5ps31f2yz50g3jvz3vx39isx79gax3"; })
-  (fetchNuGet { pname = "SQLitePCLRaw.bundle_e_sqlite3"; version = "2.1.0"; sha256 = "1xl2kn6bqrmlh6v0lr8mrv1wzg4gcmsc6x4g34q4d90gbm110d98"; })
-  (fetchNuGet { pname = "SQLitePCLRaw.core"; version = "2.0.4"; sha256 = "0lb5vwfl1hd24xzzdaj2p4k2hv2k0i3mgdri6fjj0ssb37mcyir1"; })
-  (fetchNuGet { pname = "SQLitePCLRaw.core"; version = "2.0.6"; sha256 = "1w4iyg0v1v1z2m7akq7rv8lsgixp2m08732vr14vgpqs918bsy1i"; })
-  (fetchNuGet { pname = "SQLitePCLRaw.core"; version = "2.1.0"; sha256 = "0kq5x9k5kl6lh7jp1hgjn08wl37zribrykfimhln6mkqbp1myncp"; })
-  (fetchNuGet { pname = "SQLitePCLRaw.lib.e_sqlite3"; version = "2.0.6"; sha256 = "16378rh1lcqxynf5qj0kh8mrsb0jp37qqwg4285kqc5pknvh1bx3"; })
-  (fetchNuGet { pname = "SQLitePCLRaw.lib.e_sqlite3"; version = "2.1.0"; sha256 = "1ibkkz5dsac64nf7alsdsr8r1jm8j87vv6chsi3azkf5zv0rphsy"; })
-  (fetchNuGet { pname = "SQLitePCLRaw.provider.e_sqlite3"; version = "2.0.6"; sha256 = "0chgrqyycb1kqnaxnhhfg0850b94blhzni8zn79c7ggb3pd2ykyz"; })
-  (fetchNuGet { pname = "SQLitePCLRaw.provider.e_sqlite3"; version = "2.1.0"; sha256 = "1g7gi1kdil8iv67g42xbmfhr1l0pkz645gqnd8lfv3q24449shan"; })
-  (fetchNuGet { pname = "StyleCop.Analyzers"; version = "1.2.0-beta.406"; sha256 = "04ii8m45cyphwrhxgss1whk550qxpqrwjah6cb76pbcjqc7pjj7w"; })
-  (fetchNuGet { pname = "StyleCop.Analyzers.Unstable"; version = "1.2.0.406"; sha256 = "1nsk5vhpdbns9wsqmi8qwdg4girc4sci81r5am23cljc9fdx9pmk"; })
+  (fetchNuGet { pname = "SQLitePCLRaw.bundle_e_sqlite3"; version = "2.1.6"; sha256 = "0pzgdfl707pd9fz108xaff22w7c2y27yaix6wfp36phqkdnzz43m"; })
+  (fetchNuGet { pname = "SQLitePCLRaw.core"; version = "2.1.6"; sha256 = "1w8zsgz2w2q0a9cw9cl1rzrpv48a04nhyq67ywan6xlgknds65a7"; })
+  (fetchNuGet { pname = "SQLitePCLRaw.lib.e_sqlite3"; version = "2.1.6"; sha256 = "0g959z7r3h43nwzm7z3jiib1xvyx146lxyv0x6fl8ll5wivpjyxq"; })
+  (fetchNuGet { pname = "SQLitePCLRaw.provider.e_sqlite3"; version = "2.1.6"; sha256 = "1vs1c7yhi0mdqrd35ji289cxkhg7dxdnn6wgjjbngvqxkdhkyxyc"; })
+  (fetchNuGet { pname = "StyleCop.Analyzers"; version = "1.2.0-beta.556"; sha256 = "1x91v0x6w5s7xm85d5mipv0kah2j3r7ypyidpr9rrggrr90iidpp"; })
+  (fetchNuGet { pname = "StyleCop.Analyzers.Unstable"; version = "1.2.0.556"; sha256 = "0ryaqhj1k71q3yh1ag1288y90ylv05w844win68pvybbmznjjnk9"; })
+  (fetchNuGet { pname = "Svg.Custom"; version = "1.0.0.18"; sha256 = "0186sxdcz7c30g3vvygbahvsmywn1cqq53m8h6la1z2c00zr22s6"; })
+  (fetchNuGet { pname = "Svg.Model"; version = "1.0.0.18"; sha256 = "03vjk6pmxpff6q7saqgq9qdfbs6sf11hqrp469ycfzbikgil4xh9"; })
+  (fetchNuGet { pname = "Svg.Skia"; version = "1.0.0.18"; sha256 = "0vnjy0gc8qfv626rn3z4sy03ds186h1yv9fwq3p84pq6l04ng5d3"; })
   (fetchNuGet { pname = "Swashbuckle.AspNetCore"; version = "6.2.3"; sha256 = "1kx50vliqcqw72aygkm2cs2q82pxdxz17gvz4chz6k858qj4gv0l"; })
-  (fetchNuGet { pname = "Swashbuckle.AspNetCore.ReDoc"; version = "6.3.1"; sha256 = "1q0q78f1vrwyzf17c3k8p31v6arhg20gsyf9sq5x27x1arxzi2pw"; })
+  (fetchNuGet { pname = "Swashbuckle.AspNetCore.ReDoc"; version = "6.5.0"; sha256 = "1fr8367107ammy0b887ypy14qnqqyd3nbj6agrhrhrrlz47h3v5z"; })
   (fetchNuGet { pname = "Swashbuckle.AspNetCore.Swagger"; version = "6.2.3"; sha256 = "0g3aw1lydq1xymd1f5rrs0dhl0fpl85gffs9jsm3khfqp7js31yz"; })
   (fetchNuGet { pname = "Swashbuckle.AspNetCore.SwaggerGen"; version = "6.2.3"; sha256 = "1cza3hzxhia81rmmdx9qixbm1ikavscddknpvbkrwmljzx2qmsv7"; })
   (fetchNuGet { pname = "Swashbuckle.AspNetCore.SwaggerUI"; version = "6.2.3"; sha256 = "0sbrymb73a2s9qhgm7i44ca08h4n62qfh751fwnvybmj8kb1gzsi"; })
-  (fetchNuGet { pname = "System.Buffers"; version = "4.5.1"; sha256 = "04kb1mdrlcixj9zh1xdi5as0k0qi8byr5mi3p3jcxx72qz93s2y3"; })
+  (fetchNuGet { pname = "System.Buffers"; version = "4.3.0"; sha256 = "0fgns20ispwrfqll4q1zc1waqcmylb3zc50ys9x8zlwxh9pmd9jy"; })
+  (fetchNuGet { pname = "System.Buffers"; version = "4.5.0"; sha256 = "1ywfqn4md6g3iilpxjn5dsr0f5lx6z0yvhqp4pgjcamygg73cz2c"; })
+  (fetchNuGet { pname = "System.CodeDom"; version = "4.4.0"; sha256 = "1zgbafm5p380r50ap5iddp11kzhr9khrf2pnai6k593wjar74p1g"; })
   (fetchNuGet { pname = "System.Collections"; version = "4.0.11"; sha256 = "1ga40f5lrwldiyw6vy67d0sg7jd7ww6kgwbksm19wrvq9hr0bsm6"; })
+  (fetchNuGet { pname = "System.Collections"; version = "4.3.0"; sha256 = "19r4y64dqyrq6k4706dnyhhw7fs24kpp3awak7whzss39dakpxk9"; })
+  (fetchNuGet { pname = "System.Collections.Concurrent"; version = "4.3.0"; sha256 = "0wi10md9aq33jrkh2c24wr2n9hrpyamsdhsxdcnf43b7y86kkii8"; })
   (fetchNuGet { pname = "System.Collections.Immutable"; version = "6.0.0"; sha256 = "1js98kmjn47ivcvkjqdmyipzknb9xbndssczm8gq224pbaj1p88c"; })
+  (fetchNuGet { pname = "System.ComponentModel.Annotations"; version = "4.5.0"; sha256 = "1jj6f6g87k0iwsgmg3xmnn67a14mq88np0l1ys5zkxhkvbc8976p"; })
+  (fetchNuGet { pname = "System.Composition"; version = "6.0.0"; sha256 = "1p7hysns39cc24af6dwd4m48bqjsrr3clvi4aws152mh2fgyg50z"; })
+  (fetchNuGet { pname = "System.Composition.AttributedModel"; version = "6.0.0"; sha256 = "1mqrblb0l65hw39d0hnspqcv85didpn4wbiwhfgj4784wzqx2w6k"; })
+  (fetchNuGet { pname = "System.Composition.Convention"; version = "6.0.0"; sha256 = "02km3yb94p1c4s7liyhkmda0g71zm1rc8ijsfmy4bnlkq15xjw3b"; })
+  (fetchNuGet { pname = "System.Composition.Hosting"; version = "6.0.0"; sha256 = "0big5nk8c44rxp6cfykhk7rxvn2cgwa99w6c3v2a36adc3lj36ky"; })
+  (fetchNuGet { pname = "System.Composition.Runtime"; version = "6.0.0"; sha256 = "0vq5ik63yii1784gsa2f2kx9w6xllmm8b8rk0arid1jqdj1nyrlw"; })
+  (fetchNuGet { pname = "System.Composition.TypedParts"; version = "6.0.0"; sha256 = "0y9pq3y60nyrpfy51f576a0qjjdh61mcv8vnik32pm4bz56h9q72"; })
   (fetchNuGet { pname = "System.Diagnostics.Debug"; version = "4.0.11"; sha256 = "0gmjghrqmlgzxivd2xl50ncbglb7ljzb66rlx8ws6dv8jm0d5siz"; })
+  (fetchNuGet { pname = "System.Diagnostics.Debug"; version = "4.3.0"; sha256 = "00yjlf19wjydyr6cfviaph3vsjzg3d5nvnya26i2fvfg53sknh3y"; })
+  (fetchNuGet { pname = "System.Diagnostics.DiagnosticSource"; version = "4.3.0"; sha256 = "0z6m3pbiy0qw6rn3n209rrzf9x1k4002zh90vwcrsym09ipm2liq"; })
   (fetchNuGet { pname = "System.Diagnostics.DiagnosticSource"; version = "6.0.0"; sha256 = "0rrihs9lnb1h6x4h0hn6kgfnh58qq7hx8qq99gh6fayx4dcnx3s5"; })
-  (fetchNuGet { pname = "System.Drawing.Common"; version = "5.0.2"; sha256 = "08kgiywg5whhw80xshlrp0q9mkl8hlkgqdsnk1gm6bb898f1l3gs"; })
+  (fetchNuGet { pname = "System.Diagnostics.DiagnosticSource"; version = "8.0.0"; sha256 = "0nzra1i0mljvmnj1qqqg37xs7bl71fnpl68nwmdajchh65l878zr"; })
+  (fetchNuGet { pname = "System.Diagnostics.Tracing"; version = "4.3.0"; sha256 = "1m3bx6c2s958qligl67q7grkwfz3w53hpy7nc97mh6f7j5k168c4"; })
+  (fetchNuGet { pname = "System.Drawing.Common"; version = "7.0.0"; sha256 = "0jwyv5zjxzr4bm4vhmz394gsxqa02q6pxdqd2hwy1f116f0l30dp"; })
   (fetchNuGet { pname = "System.Dynamic.Runtime"; version = "4.0.11"; sha256 = "1pla2dx8gkidf7xkciig6nifdsb494axjvzvann8g2lp3dbqasm9"; })
   (fetchNuGet { pname = "System.Globalization"; version = "4.0.11"; sha256 = "070c5jbas2v7smm660zaf1gh0489xanjqymkvafcs4f8cdrs1d5d"; })
   (fetchNuGet { pname = "System.Globalization"; version = "4.3.0"; sha256 = "1cp68vv683n6ic2zqh2s1fn4c2sd87g5hpp6l4d4nj4536jz98ki"; })
+  (fetchNuGet { pname = "System.Globalization.Calendars"; version = "4.3.0"; sha256 = "1xwl230bkakzzkrggy1l1lxmm3xlhk4bq2pkv790j5lm8g887lxq"; })
+  (fetchNuGet { pname = "System.Globalization.Extensions"; version = "4.3.0"; sha256 = "02a5zfxavhv3jd437bsncbhd2fp1zv4gxzakp1an9l6kdq1mcqls"; })
   (fetchNuGet { pname = "System.IO"; version = "4.1.0"; sha256 = "1g0yb8p11vfd0kbkyzlfsbsp5z44lwsvyc0h3dpw6vqnbi035ajp"; })
+  (fetchNuGet { pname = "System.IO"; version = "4.3.0"; sha256 = "05l9qdrzhm4s5dixmx68kxwif4l99ll5gqmh7rqgw554fx0agv5f"; })
+  (fetchNuGet { pname = "System.IO.FileSystem"; version = "4.3.0"; sha256 = "0z2dfrbra9i6y16mm9v1v6k47f0fm617vlb7s5iybjjsz6g1ilmw"; })
+  (fetchNuGet { pname = "System.IO.FileSystem.Primitives"; version = "4.3.0"; sha256 = "0j6ndgglcf4brg2lz4wzsh1av1gh8xrzdsn9f0yznskhqn1xzj9c"; })
+  (fetchNuGet { pname = "System.IO.Hashing"; version = "8.0.0"; sha256 = "1hg5i9hiihj9x4d0mlvhfddmivzrhzz83dyh26fqw1nd8jvqccxk"; })
+  (fetchNuGet { pname = "System.IO.Pipelines"; version = "6.0.3"; sha256 = "1jgdazpmwc21dd9naq3l9n5s8a1jnbwlvgkf1pnm0aji6jd4xqdz"; })
   (fetchNuGet { pname = "System.Linq"; version = "4.1.0"; sha256 = "1ppg83svb39hj4hpp5k7kcryzrf3sfnm08vxd5sm2drrijsla2k5"; })
+  (fetchNuGet { pname = "System.Linq"; version = "4.3.0"; sha256 = "1w0gmba695rbr80l1k2h4mrwzbzsyfl2z4klmpbsvsg5pm4a56s7"; })
   (fetchNuGet { pname = "System.Linq.Async"; version = "6.0.1"; sha256 = "10ira8hmv0i54yp9ggrrdm1c06j538sijfjpn1kmnh9j2xk5yzmq"; })
   (fetchNuGet { pname = "System.Linq.Expressions"; version = "4.1.0"; sha256 = "1gpdxl6ip06cnab7n3zlcg6mqp7kknf73s8wjinzi4p0apw82fpg"; })
+  (fetchNuGet { pname = "System.Memory"; version = "4.5.1"; sha256 = "0f07d7hny38lq9w69wx4lxkn4wszrqf9m9js6fh9is645csm167c"; })
   (fetchNuGet { pname = "System.Memory"; version = "4.5.3"; sha256 = "0naqahm3wljxb5a911d37mwjqjdxv9l0b49p5dmfyijvni2ppy8a"; })
-  (fetchNuGet { pname = "System.Memory"; version = "4.5.4"; sha256 = "14gbbs22mcxwggn0fcfs1b062521azb9fbb7c113x0mq6dzq9h6y"; })
+  (fetchNuGet { pname = "System.Net.Http"; version = "4.3.4"; sha256 = "0kdp31b8819v88l719j6my0yas6myv9d1viql3qz5577mv819jhl"; })
+  (fetchNuGet { pname = "System.Net.Primitives"; version = "4.3.0"; sha256 = "0c87k50rmdgmxx7df2khd9qj7q35j9rzdmm2572cc55dygmdk3ii"; })
   (fetchNuGet { pname = "System.ObjectModel"; version = "4.0.12"; sha256 = "1sybkfi60a4588xn34nd9a58png36i0xr4y4v4kqpg8wlvy5krrj"; })
   (fetchNuGet { pname = "System.Private.Uri"; version = "4.3.0"; sha256 = "04r1lkdnsznin0fj4ya1zikxiqr0h6r6a1ww2dsm60gqhdrf0mvx"; })
   (fetchNuGet { pname = "System.Reflection"; version = "4.1.0"; sha256 = "1js89429pfw79mxvbzp8p3q93il6rdff332hddhzi5wqglc4gml9"; })
+  (fetchNuGet { pname = "System.Reflection"; version = "4.3.0"; sha256 = "0xl55k0mw8cd8ra6dxzh974nxif58s3k1rjv1vbd7gjbjr39j11m"; })
   (fetchNuGet { pname = "System.Reflection.Emit"; version = "4.0.1"; sha256 = "0ydqcsvh6smi41gyaakglnv252625hf29f7kywy2c70nhii2ylqp"; })
   (fetchNuGet { pname = "System.Reflection.Emit.ILGeneration"; version = "4.0.1"; sha256 = "1pcd2ig6bg144y10w7yxgc9d22r7c7ww7qn1frdfwgxr24j9wvv0"; })
   (fetchNuGet { pname = "System.Reflection.Emit.Lightweight"; version = "4.0.1"; sha256 = "1s4b043zdbx9k39lfhvsk68msv1nxbidhkq6nbm27q7sf8xcsnxr"; })
   (fetchNuGet { pname = "System.Reflection.Extensions"; version = "4.0.1"; sha256 = "0m7wqwq0zqq9gbpiqvgk3sr92cbrw7cp3xn53xvw7zj6rz6fdirn"; })
+  (fetchNuGet { pname = "System.Reflection.Metadata"; version = "6.0.1"; sha256 = "0fjqifk4qz9lw5gcadpfalpplyr0z2b3p9x7h0ll481a9sqvppc9"; })
   (fetchNuGet { pname = "System.Reflection.Primitives"; version = "4.0.1"; sha256 = "1bangaabhsl4k9fg8khn83wm6yial8ik1sza7401621jc6jrym28"; })
+  (fetchNuGet { pname = "System.Reflection.Primitives"; version = "4.3.0"; sha256 = "04xqa33bld78yv5r93a8n76shvc8wwcdgr1qvvjh959g3rc31276"; })
   (fetchNuGet { pname = "System.Reflection.TypeExtensions"; version = "4.1.0"; sha256 = "1bjli8a7sc7jlxqgcagl9nh8axzfl11f4ld3rjqsyxc516iijij7"; })
   (fetchNuGet { pname = "System.Resources.ResourceManager"; version = "4.0.1"; sha256 = "0b4i7mncaf8cnai85jv3wnw6hps140cxz8vylv2bik6wyzgvz7bi"; })
+  (fetchNuGet { pname = "System.Resources.ResourceManager"; version = "4.3.0"; sha256 = "0sjqlzsryb0mg4y4xzf35xi523s4is4hz9q4qgdvlvgivl7qxn49"; })
   (fetchNuGet { pname = "System.Runtime"; version = "4.1.0"; sha256 = "02hdkgk13rvsd6r9yafbwzss8kr55wnj8d5c7xjnp8gqrwc8sn0m"; })
   (fetchNuGet { pname = "System.Runtime"; version = "4.3.0"; sha256 = "066ixvgbf2c929kgknshcxqj6539ax7b9m570cp8n179cpfkapz7"; })
   (fetchNuGet { pname = "System.Runtime.CompilerServices.Unsafe"; version = "4.4.0"; sha256 = "0a6ahgi5b148sl5qyfpyw383p3cb4yrkm802k29fsi4mxkiwir29"; })
+  (fetchNuGet { pname = "System.Runtime.CompilerServices.Unsafe"; version = "4.5.1"; sha256 = "1xcrjx5fwg284qdnxyi2d0lzdm5q4frlpkp0nf6vvkx1kdz2prrf"; })
   (fetchNuGet { pname = "System.Runtime.CompilerServices.Unsafe"; version = "6.0.0"; sha256 = "0qm741kh4rh57wky16sq4m0v05fxmkjjr87krycf5vp9f0zbahbc"; })
   (fetchNuGet { pname = "System.Runtime.Extensions"; version = "4.1.0"; sha256 = "0rw4rm4vsm3h3szxp9iijc3ksyviwsv6f63dng3vhqyg4vjdkc2z"; })
+  (fetchNuGet { pname = "System.Runtime.Extensions"; version = "4.3.0"; sha256 = "1ykp3dnhwvm48nap8q23893hagf665k0kn3cbgsqpwzbijdcgc60"; })
   (fetchNuGet { pname = "System.Runtime.Handles"; version = "4.0.1"; sha256 = "1g0zrdi5508v49pfm3iii2hn6nm00bgvfpjq1zxknfjrxxa20r4g"; })
+  (fetchNuGet { pname = "System.Runtime.Handles"; version = "4.3.0"; sha256 = "0sw2gfj2xr7sw9qjn0j3l9yw07x73lcs97p8xfc9w1x9h5g5m7i8"; })
   (fetchNuGet { pname = "System.Runtime.InteropServices"; version = "4.1.0"; sha256 = "01kxqppx3dr3b6b286xafqilv4s2n0gqvfgzfd4z943ga9i81is1"; })
+  (fetchNuGet { pname = "System.Runtime.InteropServices"; version = "4.3.0"; sha256 = "00hywrn4g7hva1b2qri2s6rabzwgxnbpw9zfxmz28z09cpwwgh7j"; })
+  (fetchNuGet { pname = "System.Runtime.Numerics"; version = "4.3.0"; sha256 = "19rav39sr5dky7afygh309qamqqmi9kcwvz3i0c5700v0c5cg61z"; })
   (fetchNuGet { pname = "System.Security.AccessControl"; version = "5.0.0"; sha256 = "17n3lrrl6vahkqmhlpn3w20afgz09n7i6rv0r3qypngwi7wqdr5r"; })
+  (fetchNuGet { pname = "System.Security.Cryptography.Algorithms"; version = "4.3.0"; sha256 = "03sq183pfl5kp7gkvq77myv7kbpdnq3y0xj7vi4q1kaw54sny0ml"; })
+  (fetchNuGet { pname = "System.Security.Cryptography.Cng"; version = "4.3.0"; sha256 = "1k468aswafdgf56ab6yrn7649kfqx2wm9aslywjam1hdmk5yypmv"; })
+  (fetchNuGet { pname = "System.Security.Cryptography.Csp"; version = "4.3.0"; sha256 = "1x5wcrddf2s3hb8j78cry7yalca4lb5vfnkrysagbn6r9x6xvrx1"; })
+  (fetchNuGet { pname = "System.Security.Cryptography.Encoding"; version = "4.3.0"; sha256 = "1jr6w70igqn07k5zs1ph6xja97hxnb3mqbspdrff6cvssgrixs32"; })
+  (fetchNuGet { pname = "System.Security.Cryptography.OpenSsl"; version = "4.3.0"; sha256 = "0givpvvj8yc7gv4lhb6s1prq6p2c4147204a0wib89inqzd87gqc"; })
+  (fetchNuGet { pname = "System.Security.Cryptography.Primitives"; version = "4.3.0"; sha256 = "0pyzncsv48zwly3lw4f2dayqswcfvdwq2nz0dgwmi7fj3pn64wby"; })
+  (fetchNuGet { pname = "System.Security.Cryptography.X509Certificates"; version = "4.3.0"; sha256 = "0valjcz5wksbvijylxijjxb1mp38mdhv03r533vnx1q3ikzdav9h"; })
   (fetchNuGet { pname = "System.Security.Principal.Windows"; version = "5.0.0"; sha256 = "1mpk7xj76lxgz97a5yg93wi8lj0l8p157a5d50mmjy3gbz1904q8"; })
   (fetchNuGet { pname = "System.Text.Encoding"; version = "4.0.11"; sha256 = "1dyqv0hijg265dwxg6l7aiv74102d6xjiwplh2ar1ly6xfaa4iiw"; })
+  (fetchNuGet { pname = "System.Text.Encoding"; version = "4.3.0"; sha256 = "1f04lkir4iladpp51sdgmis9dj4y8v08cka0mbmsy0frc9a4gjqr"; })
   (fetchNuGet { pname = "System.Text.Encoding.CodePages"; version = "6.0.0"; sha256 = "0gm2kiz2ndm9xyzxgi0jhazgwslcs427waxgfa30m7yqll1kcrww"; })
-  (fetchNuGet { pname = "System.Text.Encodings.Web"; version = "6.0.0"; sha256 = "06n9ql3fmhpjl32g3492sj181zjml5dlcc5l76xq2h38c4f87sai"; })
-  (fetchNuGet { pname = "System.Text.Json"; version = "4.6.0"; sha256 = "0ism236hwi0k6axssfq58s1d8lihplwiz058pdvl8al71hagri39"; })
-  (fetchNuGet { pname = "System.Text.Json"; version = "6.0.0"; sha256 = "1si2my1g0q0qv1hiqnji4xh9wd05qavxnzj9dwgs23iqvgjky0gl"; })
-  (fetchNuGet { pname = "System.Text.Json"; version = "6.0.6"; sha256 = "0bkfrnr9618brbl1gvhyqrf5720syawf9dvpk8xfvkxbg7imlpjx"; })
+  (fetchNuGet { pname = "System.Text.Encoding.CodePages"; version = "8.0.0"; sha256 = "1lgdd78cik4qyvp2fggaa0kzxasw6kc9a6cjqw46siagrm0qnc3y"; })
+  (fetchNuGet { pname = "System.Text.Encoding.Extensions"; version = "4.3.0"; sha256 = "11q1y8hh5hrp5a3kw25cb6l00v5l5dvirkz8jr3sq00h1xgcgrxy"; })
+  (fetchNuGet { pname = "System.Text.Encodings.Web"; version = "4.5.0"; sha256 = "0srd5bva52n92i90wd88pzrqjsxnfgka3ilybwh7s6sf469y5s53"; })
+  (fetchNuGet { pname = "System.Text.Encodings.Web"; version = "8.0.0"; sha256 = "1wbypkx0m8dgpsaqgyywz4z760xblnwalb241d5qv9kx8m128i11"; })
+  (fetchNuGet { pname = "System.Text.Json"; version = "8.0.0"; sha256 = "134savxw0sq7s448jnzw17bxcijsi1v38mirpbb6zfxmqlf04msw"; })
+  (fetchNuGet { pname = "System.Text.Json"; version = "8.0.3"; sha256 = "0jkl986gnh2a39v5wbab47qyh1g9a64dgh5s67vppcay8hd42c4n"; })
   (fetchNuGet { pname = "System.Text.RegularExpressions"; version = "4.1.0"; sha256 = "1mw7vfkkyd04yn2fbhm38msk7dz2xwvib14ygjsb8dq2lcvr18y7"; })
   (fetchNuGet { pname = "System.Threading"; version = "4.0.11"; sha256 = "19x946h926bzvbsgj28csn46gak2crv2skpwsx80hbgazmkgb1ls"; })
+  (fetchNuGet { pname = "System.Threading"; version = "4.3.0"; sha256 = "0rw9wfamvhayp5zh3j7p1yfmx9b5khbf4q50d8k5rk993rskfd34"; })
+  (fetchNuGet { pname = "System.Threading.Channels"; version = "6.0.0"; sha256 = "1qbyi7yymqc56frqy7awvcqc1m7x3xrpx87a37dgb3mbrjg9hlcj"; })
   (fetchNuGet { pname = "System.Threading.Tasks"; version = "4.0.11"; sha256 = "0nr1r41rak82qfa5m0lhk9mp0k93bvfd7bbd9sdzwx9mb36g28p5"; })
-  (fetchNuGet { pname = "System.Threading.Tasks.Dataflow"; version = "6.0.0"; sha256 = "1b4vyjdir9kdkiv2fqqm4f76h0df68k8gcd7jb2b38zgr2vpnk3c"; })
+  (fetchNuGet { pname = "System.Threading.Tasks"; version = "4.3.0"; sha256 = "134z3v9abw3a6jsw17xl3f6hqjpak5l682k2vz39spj4kmydg6k7"; })
+  (fetchNuGet { pname = "System.Threading.Tasks.Dataflow"; version = "8.0.0"; sha256 = "02mmqnbd7ybin1yiffrq3ph71rsbrnf6r6m01j98ynydqfscz9s3"; })
   (fetchNuGet { pname = "TagLibSharp"; version = "2.3.0"; sha256 = "1z7v9lrkss1f8s42sclsq3az9zjihgmhyxnwhjyf0scgk1amngrw"; })
-  (fetchNuGet { pname = "TMDbLib"; version = "1.9.2"; sha256 = "10vh8wx9f1rcr7wsqiqvi1gq31y4skai1px079hq08y4rbslllnq"; })
+  (fetchNuGet { pname = "TMDbLib"; version = "2.2.0"; sha256 = "1dmxiz0vg9738f2qps37ahhqsaa9ia71mx43an8k726vvzp9b35g"; })
   (fetchNuGet { pname = "UTF.Unknown"; version = "2.5.1"; sha256 = "0giks1ww539m4r5kzdyzkq0cvfi5k50va9idjz93rclgljl96gpl"; })
-  (fetchNuGet { pname = "zlib.net-mutliplatform"; version = "1.0.5"; sha256 = "168z0p5aywajxpwhnrns0j2ddza9n0k2dcnm5h2cxdbcirphjprg"; })
+  (fetchNuGet { pname = "zlib.net-mutliplatform"; version = "1.0.6"; sha256 = "1h9smxgdyih096ic6k1yq6ak87r5rhx49kvskhwxdd4n6k28xmy6"; })
 ]
diff --git a/pkgs/servers/jellyfin/web.nix b/pkgs/servers/jellyfin/web.nix
index b2a40c069083..a2437af14ee4 100644
--- a/pkgs/servers/jellyfin/web.nix
+++ b/pkgs/servers/jellyfin/web.nix
@@ -1,25 +1,53 @@
-{ lib
-, fetchFromGitHub
-, stdenv
-, buildNpmPackage
-, nix-update-script
+{
+  lib,
+  stdenv,
+  overrideSDK,
+  fetchFromGitHub,
+  buildNpmPackage,
+  nix-update-script,
+  pkg-config,
+  xcbuild,
+  pango,
+  giflib,
+  darwin,
 }:
-
-buildNpmPackage rec {
+let
+  # node-canvas builds code that requires aligned_alloc,
+  # which on Darwin requires at least the 10.15 SDK
+  stdenv' =
+    if stdenv.isDarwin then
+      overrideSDK stdenv {
+        darwinMinVersion = "10.15";
+        darwinSdkVersion = "11.0";
+      }
+    else
+      stdenv;
+  buildNpmPackage' = buildNpmPackage.override { stdenv = stdenv'; };
+in
+buildNpmPackage' rec {
   pname = "jellyfin-web";
-  version = "10.8.13";
+  version = "10.9.1";
 
   src = fetchFromGitHub {
     owner = "jellyfin";
     repo = "jellyfin-web";
     rev = "v${version}";
-    hash = "sha256-2W9s8TQV9BtxNYIrCbGRh5EUw0brwxSHohnb7269pQE=";
+    hash = "sha256-KkPZ8OvGN/0gdoSVh9q0qEilae3tccgHRQQvrTsvycA=";
   };
 
-  npmDepsHash = "sha256-i077UAxY2K12VXkHYbGYZRV1uhgdGUnoDbokSk2ZDIA=";
+  npmDepsHash = "sha256-LmbygyCYSp0gtjU2pNCV17WEyEoaIzPs7H9UoMFV+PU=";
 
   npmBuildScript = [ "build:production" ];
 
+  nativeBuildInputs = [ pkg-config ] ++ lib.optionals stdenv.isDarwin [ xcbuild ];
+
+  buildInputs =
+    [ pango ]
+    ++ lib.optionals stdenv.isDarwin [
+      giflib
+      darwin.apple_sdk.frameworks.CoreText
+    ];
+
   installPhase = ''
     runHook preInstall
 
@@ -29,12 +57,17 @@ buildNpmPackage rec {
     runHook postInstall
   '';
 
-  passthru.updateScript = nix-update-script {};
+  passthru.updateScript = nix-update-script { };
 
   meta = with lib; {
     description = "Web Client for Jellyfin";
     homepage = "https://jellyfin.org/";
     license = licenses.gpl2Plus;
-    maintainers = with maintainers; [ nyanloutre minijackson purcell jojosch ];
+    maintainers = with maintainers; [
+      nyanloutre
+      minijackson
+      purcell
+      jojosch
+    ];
   };
 }
diff --git a/pkgs/servers/keycloak/all-plugins.nix b/pkgs/servers/keycloak/all-plugins.nix
index f2f1117f2d84..2e4c97ea1cec 100644
--- a/pkgs/servers/keycloak/all-plugins.nix
+++ b/pkgs/servers/keycloak/all-plugins.nix
@@ -1,4 +1,4 @@
-{ callPackage }:
+{ callPackage, fetchMavenArtifact }:
 
 {
   scim-for-keycloak = callPackage ./scim-for-keycloak {};
@@ -6,4 +6,20 @@
   keycloak-discord = callPackage ./keycloak-discord {};
   keycloak-metrics-spi = callPackage ./keycloak-metrics-spi {};
   keycloak-restrict-client-auth = callPackage ./keycloak-restrict-client-auth {};
+
+  # These could theoretically be used by something other than Keycloak, but
+  # there are no other quarkus apps in nixpkgs (as of 2023-08-21)
+  quarkus-systemd-notify = (fetchMavenArtifact {
+    groupId = "io.quarkiverse.systemd.notify";
+    artifactId = "quarkus-systemd-notify";
+    version = "1.0.1";
+    hash = "sha256-3I4j22jyIpokU4kdobkt6cDsALtxYFclA+DV+BqtmLY=";
+  }).passthru.jar;
+
+  quarkus-systemd-notify-deployment = (fetchMavenArtifact {
+    groupId = "io.quarkiverse.systemd.notify";
+    artifactId = "quarkus-systemd-notify-deployment";
+    version = "1.0.1";
+    hash = "sha256-xHxzBxriSd/OU8gEcDG00VRkJYPYJDfAfPh/FkQe+zg=";
+  }).passthru.jar;
 }
diff --git a/pkgs/servers/keycloak/default.nix b/pkgs/servers/keycloak/default.nix
index afb70893f898..1792b51abf8d 100644
--- a/pkgs/servers/keycloak/default.nix
+++ b/pkgs/servers/keycloak/default.nix
@@ -18,11 +18,11 @@ let
   '';
 in stdenv.mkDerivation rec {
   pname = "keycloak";
-  version = "24.0.3";
+  version = "24.0.4";
 
   src = fetchzip {
     url = "https://github.com/keycloak/keycloak/releases/download/${version}/keycloak-${version}.zip";
-    hash = "sha256-VlCAUAa3e8ho8s1pA935B+bz4mvziDtayu0GB9yOTI4=";
+    hash = "sha256-tqY3rYFRsRpbvms8DVtCp8nXl0hlX1CzuOVFCE+23o4=";
   };
 
   nativeBuildInputs = [ makeWrapper jre ];
diff --git a/pkgs/servers/keycloak/keycloak-metrics-spi/default.nix b/pkgs/servers/keycloak/keycloak-metrics-spi/default.nix
index 3e2b6049b187..82e6163491ba 100644
--- a/pkgs/servers/keycloak/keycloak-metrics-spi/default.nix
+++ b/pkgs/servers/keycloak/keycloak-metrics-spi/default.nix
@@ -1,4 +1,4 @@
-{ maven, lib, fetchFromGitHub }:
+{ maven, stdenv, lib, fetchFromGitHub }:
 
 maven.buildMavenPackage rec {
   pname = "keycloak-metrics-spi";
@@ -11,7 +11,11 @@ maven.buildMavenPackage rec {
     hash = "sha256-iagXbsKsU4vNP9eg05bwXEo67iij3N2FF0BW50MjRGE=";
   };
 
-  mvnHash = "sha256-+ySBrQ9yQ5ZxuVUh/mnHNEmugru3n8x5VR/RYEDCLAo=";
+  mvnHash = {
+    aarch64-linux = "sha256-zO79pRrY8TqrSK4bB8l4pl6834aFX2pidyk1j9Itz1E=`";
+    x86_64-linux = "sha256-+ySBrQ9yQ5ZxuVUh/mnHNEmugru3n8x5VR/RYEDCLAo=";
+  }.${stdenv.hostPlatform.system} or (throw "Unsupported system ${stdenv.hostPlatform.system} for ${pname}");
+
 
   installPhase = ''
     runHook preInstall
@@ -24,5 +28,6 @@ maven.buildMavenPackage rec {
     description = "Keycloak Service Provider that adds a metrics endpoint";
     license = licenses.asl20;
     maintainers = with maintainers; [ benley ];
+    platforms = [ "aarch64-linux" "x86_64-linux" ];
   };
 }
diff --git a/pkgs/servers/klipper/default.nix b/pkgs/servers/klipper/default.nix
index 071c268c5dc6..631deb3606df 100644
--- a/pkgs/servers/klipper/default.nix
+++ b/pkgs/servers/klipper/default.nix
@@ -8,13 +8,13 @@
 
 stdenv.mkDerivation rec {
   pname = "klipper";
-  version = "unstable-2024-04-20";
+  version = "0.12.0-unstable-2024-05-14";
 
   src = fetchFromGitHub {
     owner = "KevinOConnor";
     repo = "klipper";
-    rev = "2f6e94c94cae036b70b02df996dc12e2e61e5dcb";
-    sha256 = "sha256-qDV0L86NLQl8O/w9yuTnMZ0MdYfFn+u+jFUCDl5p1LY=";
+    rev = "e0cbd7b5fc1ce6d1dfbc8daf8e59f57bf3c5e5b9";
+    sha256 = "sha256-fPeFul9BLWuw6T4IdRROCd9BY0e6sxr82Q3orDZnye8=";
   };
 
   sourceRoot = "${src.name}/klippy";
@@ -63,7 +63,10 @@ stdenv.mkDerivation rec {
     runHook postInstall
   '';
 
-  passthru.updateScript = unstableGitUpdater { url = meta.homepage; };
+  passthru.updateScript = unstableGitUpdater {
+    url = meta.homepage;
+    tagPrefix = "v";
+  };
 
   meta = with lib; {
     description = "The Klipper 3D printer firmware";
diff --git a/pkgs/servers/klipper/simulator.cfg b/pkgs/servers/klipper/simulator.cfg
index 6a4122ce3aa5..11e8d77b03c3 100644
--- a/pkgs/servers/klipper/simulator.cfg
+++ b/pkgs/servers/klipper/simulator.cfg
@@ -23,6 +23,7 @@ CONFIG_WANT_DISPLAYS=y
 CONFIG_WANT_SENSORS=y
 CONFIG_WANT_LIS2DW=y
 CONFIG_WANT_SOFTWARE_SPI=y
+CONFIG_NEED_SENSOR_BULK=y
 CONFIG_CANBUS_FREQUENCY=1000000
 CONFIG_HAVE_GPIO=y
 CONFIG_HAVE_GPIO_ADC=y
diff --git a/pkgs/servers/knxd/default.nix b/pkgs/servers/knxd/default.nix
index 9d92461d25ab..2ae193037449 100644
--- a/pkgs/servers/knxd/default.nix
+++ b/pkgs/servers/knxd/default.nix
@@ -14,13 +14,13 @@
 
 stdenv.mkDerivation rec {
   pname = "knxd";
-  version = "0.14.60";
+  version = "0.14.61";
 
   src = fetchFromGitHub {
     owner = "knxd";
     repo = "knxd";
     rev = version;
-    hash = "sha256-djcp3b0OSnyrNOkvaacjQ3Nw9H54HOfKeBo26tkz/Ew=";
+    hash = "sha256-b8svjGaxW8YqonhXewebDUitezKoMcZxcUFGd2EKZQ4=";
   };
 
   postPatch = ''
diff --git a/pkgs/servers/mail/stalwart/default.nix b/pkgs/servers/mail/stalwart/default.nix
index 44b2251ce0c7..e36dc2037c6f 100644
--- a/pkgs/servers/mail/stalwart/default.nix
+++ b/pkgs/servers/mail/stalwart/default.nix
@@ -10,6 +10,7 @@
 , stdenv
 , darwin
 , nix-update-script
+, nixosTests
 , rocksdb_8_3
 }:
 
@@ -60,7 +61,10 @@ rustPlatform.buildRustPackage {
   # Tests require reading to /etc/resolv.conf
   doCheck = false;
 
-  passthru.update-script = nix-update-script { };
+  passthru = {
+    update-script = nix-update-script { };
+    tests.stalwart-mail = nixosTests.stalwart-mail;
+  };
 
   meta = with lib; {
     description = "Secure & Modern All-in-One Mail Server (IMAP, JMAP, SMTP)";
diff --git a/pkgs/servers/matrix-conduit/default.nix b/pkgs/servers/matrix-conduit/default.nix
index 1eb7500222d3..115c7e226e84 100644
--- a/pkgs/servers/matrix-conduit/default.nix
+++ b/pkgs/servers/matrix-conduit/default.nix
@@ -69,7 +69,7 @@ rustPlatform.buildRustPackage rec {
     description = "A Matrix homeserver written in Rust";
     homepage = "https://conduit.rs/";
     license = licenses.asl20;
-    maintainers = with maintainers; [ pstn piegames pimeys ];
+    maintainers = with maintainers; [ pstn pimeys ];
     mainProgram = "conduit";
   };
 }
diff --git a/pkgs/servers/matrix-synapse/default.nix b/pkgs/servers/matrix-synapse/default.nix
index 5637686a910a..941a7fff45d5 100644
--- a/pkgs/servers/matrix-synapse/default.nix
+++ b/pkgs/servers/matrix-synapse/default.nix
@@ -32,20 +32,20 @@ let
 in
 python.pkgs.buildPythonApplication rec {
   pname = "matrix-synapse";
-  version = "1.106.0";
+  version = "1.107.0";
   format = "pyproject";
 
   src = fetchFromGitHub {
     owner = "element-hq";
     repo = "synapse";
     rev = "v${version}";
-    hash = "sha256-FnWYfFlzl6+K5dLhJ+mdphC6E6cA+HewGTUXakRHKEo=";
+    hash = "sha256-xT9DpBBLavI7QLuyqEtTyjHoP+pQ4wlNupJFWtppwh8=";
   };
 
   cargoDeps = rustPlatform.fetchCargoTarball {
     inherit src;
     name = "${pname}-${version}";
-    hash = "sha256-7X0lXiD+7irex8A3Tnfq65P6BinMje4Bc1MuCI3dSyg=";
+    hash = "sha256-bGRIzgFNHi/4jOWMTgwA7hVcvfHROHE+nnZtTPjwpmI=";
   };
 
   postPatch = ''
diff --git a/pkgs/servers/matrix-synapse/sliding-sync/default.nix b/pkgs/servers/matrix-synapse/sliding-sync/default.nix
index c8f545813538..b0fc3c27f9c2 100644
--- a/pkgs/servers/matrix-synapse/sliding-sync/default.nix
+++ b/pkgs/servers/matrix-synapse/sliding-sync/default.nix
@@ -5,13 +5,13 @@
 
 buildGoModule rec {
   pname = "matrix-sliding-sync";
-  version = "0.99.16";
+  version = "0.99.17";
 
   src = fetchFromGitHub {
     owner = "matrix-org";
     repo = "sliding-sync";
     rev = "refs/tags/v${version}";
-    hash = "sha256-RMA6Nwdajd1ABaNGq4iGNhX+/FCVy8HcNPpcW/mWtcc=";
+    hash = "sha256-tzhz2Jlhvn2blO5jdWNS++V28kNXmmg+a2BU7g5zTx0=";
   };
 
   vendorHash = "sha256-THjvc0TepIBFOTte7t63Dmadf3HMuZ9m0YzQMI5e5Pw=";
diff --git a/pkgs/servers/mattermost/default.nix b/pkgs/servers/mattermost/default.nix
index 78662d4b18cf..6a2aedc4cbaf 100644
--- a/pkgs/servers/mattermost/default.nix
+++ b/pkgs/servers/mattermost/default.nix
@@ -12,13 +12,13 @@ buildGoModule rec {
   # See https://docs.mattermost.com/upgrade/extended-support-release.html
   # When a new ESR version is available (e.g. 8.1.x -> 9.5.x), update
   # the version regex in passthru.updateScript as well.
-  version = "9.5.3";
+  version = "9.5.4";
 
   src = fetchFromGitHub {
     owner = "mattermost";
     repo = "mattermost";
     rev = "v${version}";
-    hash = "sha256-kqwRwo7eL9xfOyP54oS800L6bisVwJf9FpgTnwfmjAo=";
+    hash = "sha256-iuUTAdgJJDSvUwVmcggJ4ZMVbQ19ymuIaB0PDIgEIdg=";
   };
 
   # Needed because buildGoModule does not support go workspaces yet.
@@ -34,7 +34,7 @@ buildGoModule rec {
 
   webapp = fetchurl {
     url = "https://releases.mattermost.com/${version}/mattermost-${version}-linux-amd64.tar.gz";
-    hash = "sha256-f2Zap/15TOyzCP97BGGmXimwAa1mTP42w37RToNkAsQ=";
+    hash = "sha256-OVq+puaXPJGOmW9pcgX24LXBfYLzuczRY7KG2tQBY3Q=";
   };
 
   vendorHash = "sha256-TJCtgNf56A1U0EbV5gXjTro+YudVBRWiSZoBC3nJxnE=";
@@ -69,7 +69,7 @@ buildGoModule rec {
 
   passthru = {
     updateScript = nix-update-script {
-      extraArgs = [ "--version-regex" "^v(9\.5\.([0-9.]+))" ];
+      extraArgs = [ "--version-regex" "v(9\.5\.[0-9]+)" ];
     };
     tests.mattermost = nixosTests.mattermost;
   };
diff --git a/pkgs/servers/mautrix-signal/default.nix b/pkgs/servers/mautrix-signal/default.nix
index 7e9c27d38d22..524897c1d51f 100644
--- a/pkgs/servers/mautrix-signal/default.nix
+++ b/pkgs/servers/mautrix-signal/default.nix
@@ -2,13 +2,13 @@
 
 buildGoModule rec {
   pname = "mautrix-signal";
-  version = "0.6.0";
+  version = "0.6.1";
 
   src = fetchFromGitHub {
     owner = "mautrix";
     repo = "signal";
     rev = "v${version}";
-    hash = "sha256-T5w5k9fuAq5s6Y6pkGoDHSUHCf+kyURBLY0TtzgO85o=";
+    hash = "sha256-JybQhVej82aWcsGLKS/tCBUuy9rARSe4d+ivYEZ0ve4=";
   };
 
   buildInputs = [
@@ -18,7 +18,7 @@ buildGoModule rec {
     libsignal-ffi
   ];
 
-  vendorHash = "sha256-NuPctTEdj2BjCKqmzASYTlip7cimSff0OuhVIxlh1I8=";
+  vendorHash = "sha256-LHq/CH53/Jzh49qXdoqXURqTVbSitczw3yH3KU2BMpc=";
 
   doCheck = false;
 
diff --git a/pkgs/servers/mediamtx/default.nix b/pkgs/servers/mediamtx/default.nix
index 4e6c94d3dd3e..847523a171f5 100644
--- a/pkgs/servers/mediamtx/default.nix
+++ b/pkgs/servers/mediamtx/default.nix
@@ -14,16 +14,16 @@ in
 buildGoModule rec {
   pname = "mediamtx";
   # check for hls.js version updates in internal/servers/hls/hlsjsdownloader/VERSION
-  version = "1.8.0";
+  version = "1.8.1";
 
   src = fetchFromGitHub {
     owner = "bluenviron";
     repo = pname;
     rev = "v${version}";
-    hash = "sha256-IIm+ZJYHGEfT+mvyq84L5hnkUPX784gjJUMzkE5kbaE=";
+    hash = "sha256-4ypAM1dW13qKaCEXGET1Xe2+kDBEwJHaOQ1ZghFymFM=";
   };
 
-  vendorHash = "sha256-GGyacAN9Vs0SsLO7ZfyfOXznTJZg1V13DJucfzUGA/Q=";
+  vendorHash = "sha256-+K772WVLRaLXZgpULwv8/pL5zbHpvhbMikSqMF9MOs4=";
 
   postPatch = ''
     cp ${hlsJs} internal/servers/hls/hls.min.js
diff --git a/pkgs/servers/metabase/default.nix b/pkgs/servers/metabase/default.nix
index c75b4854daa5..79dd808eab29 100644
--- a/pkgs/servers/metabase/default.nix
+++ b/pkgs/servers/metabase/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   pname = "metabase";
-  version = "0.49.2";
+  version = "0.49.9";
 
   src = fetchurl {
     url = "https://downloads.metabase.com/v${version}/metabase.jar";
-    hash = "sha256-PmfzYPnfIFX92I0tnXJoZa3EdOF7EFo5bc0T9bo4bS0=";
+    hash = "sha256-1QUrXYpMvn/Gm8ljmF5MYKFRCIQ/v3vpoMJEJcSR2vI=";
   };
 
   nativeBuildInputs = [ makeWrapper ];
diff --git a/pkgs/servers/miniflux/default.nix b/pkgs/servers/miniflux/default.nix
index cfc7ee8e5303..b8206c57c490 100644
--- a/pkgs/servers/miniflux/default.nix
+++ b/pkgs/servers/miniflux/default.nix
@@ -2,16 +2,16 @@
 
 buildGoModule rec {
   pname = "miniflux";
-  version = "2.1.2";
+  version = "2.1.3";
 
   src = fetchFromGitHub {
     owner = "miniflux";
     repo = "v2";
     rev = "refs/tags/${version}";
-    hash = "sha256-ArGoSb4gL0Mpul9wQJWW0aaCpSgtBxqnEiv5wS1eIFY=";
+    hash = "sha256-Q43ru/n7cY1DIT/JJP1sTbnXcgtbIh16fTDL9eV0YDE=";
   };
 
-  vendorHash = "sha256-FcUKlvIdXJ3fSvf02zZu4lYa6943s3l2LwFBQ/EqtyY=";
+  vendorHash = "sha256-WCb0DxicVuJDm52GidivQPZb09LvZqJmgR5BoK8iZ7s=";
 
   nativeBuildInputs = [ installShellFiles ];
 
diff --git a/pkgs/servers/minio/default.nix b/pkgs/servers/minio/default.nix
index d0a776af0870..1d54e942eda8 100644
--- a/pkgs/servers/minio/default.nix
+++ b/pkgs/servers/minio/default.nix
@@ -21,16 +21,16 @@ let
 in
 buildGoModule rec {
   pname = "minio";
-  version = "2024-04-28T17-53-50Z";
+  version = "2024-05-10T01-41-38Z";
 
   src = fetchFromGitHub {
     owner = "minio";
     repo = "minio";
     rev = "RELEASE.${version}";
-    hash = "sha256-PjZYi1JiXQDaQw6z2OCblzCvvT3cOLa80sgFUTHofVY=";
+    hash = "sha256-qYNyAfWdmQPMIwHEzSlA4nf93aFkR1TvulOVNf46wAI=";
   };
 
-  vendorHash = "sha256-pPIcH2I/0792iXLMveZIRSBFKCnvraCyBUutREwTig0=";
+  vendorHash = "sha256-fyNOROkByuH5oEnYiQd0XhqqDKL4EnOEZedXCBI6BuY=";
 
   doCheck = false;
 
diff --git a/pkgs/servers/mir/default.nix b/pkgs/servers/mir/default.nix
index e4555bf517f6..047d76dbc74f 100644
--- a/pkgs/servers/mir/default.nix
+++ b/pkgs/servers/mir/default.nix
@@ -31,6 +31,7 @@
 , xorg
 , xwayland
 , dbus
+, gobject-introspection
 , gtest
 , umockdev
 , wlcs
@@ -130,6 +131,7 @@ stdenv.mkDerivation (finalAttrs: {
 
   nativeCheckInputs = [
     dbus
+    gobject-introspection
   ];
 
   checkInputs = [
diff --git a/pkgs/servers/monitoring/buildkite-agent-metrics/default.nix b/pkgs/servers/monitoring/buildkite-agent-metrics/default.nix
index bf1af9e944d7..4139b9e6f81d 100644
--- a/pkgs/servers/monitoring/buildkite-agent-metrics/default.nix
+++ b/pkgs/servers/monitoring/buildkite-agent-metrics/default.nix
@@ -4,7 +4,7 @@
 }:
 buildGoModule rec {
   pname = "buildkite-agent-metrics";
-  version = "5.9.3";
+  version = "5.9.4";
 
   outputs = [ "out" "lambda" ];
 
@@ -12,10 +12,10 @@ buildGoModule rec {
     owner = "buildkite";
     repo = "buildkite-agent-metrics";
     rev = "v${version}";
-    hash = "sha256-DepIptvR4i0+/45stCMErJtDeAFIDiNbhioitQ8gYBs=";
+    hash = "sha256-S9dkahAAoOwwEcWTzo+JkoZkQAQqPT5tfSZY9IWnWaU=";
   };
 
-  vendorHash = "sha256-YEvVGtfhe/RBeuD87C2BNOFEeK40JDidX4loSLdBwhs=";
+  vendorHash = "sha256-r+K/RbNmVYm1LKTZvvKR9zBM35xLkMN8SadOttoTWzo=";
 
   postInstall = ''
     mkdir -p $lambda/bin
diff --git a/pkgs/servers/monitoring/do-agent/default.nix b/pkgs/servers/monitoring/do-agent/default.nix
index ad9f7fc80c44..296699d88d69 100644
--- a/pkgs/servers/monitoring/do-agent/default.nix
+++ b/pkgs/servers/monitoring/do-agent/default.nix
@@ -2,13 +2,13 @@
 
 buildGoModule rec {
   pname = "do-agent";
-  version = "3.16.8";
+  version = "3.16.9";
 
   src = fetchFromGitHub {
     owner = "digitalocean";
     repo = "do-agent";
     rev = version;
-    sha256 = "sha256-uMPR1vFu3NMvRyL7PCfjQTGEfUtRiyItOqt4HJ2L+Wo=";
+    sha256 = "sha256-9ZSDBjO28spFymoXBwrJQg7Y17qUfzShcIsmUJBIxyY=";
   };
 
   ldflags = [
diff --git a/pkgs/servers/monitoring/grafana-agent/default.nix b/pkgs/servers/monitoring/grafana-agent/default.nix
index 745e5f5e25d5..ad9605239013 100644
--- a/pkgs/servers/monitoring/grafana-agent/default.nix
+++ b/pkgs/servers/monitoring/grafana-agent/default.nix
@@ -15,16 +15,16 @@
 
 buildGoModule rec {
   pname = "grafana-agent";
-  version = "0.40.4";
+  version = "0.40.5";
 
   src = fetchFromGitHub {
     owner = "grafana";
     repo = "agent";
     rev = "v${version}";
-    hash = "sha256-TWA+anmiKFgK6nb8ipoqRF+HdPMf2JDSU2DeA8fpDlQ=";
+    hash = "sha256-Ctv/s9lgZQ9uCXx+xwJlNVe1ycQnQHtziVNafdYVBig=";
   };
 
-  vendorHash = "sha256-xsFD5eAHIWcwayTm5BUAnOHX4AvZXOSJuxvBwCTToeE=";
+  vendorHash = "sha256-pI2hk91wqMVaZ5/6uegoQOh94p4zb7Tvn2CtOMRhZME=";
   proxyVendor = true; # darwin/linux hash mismatch
 
   frontendYarnOfflineCache = fetchYarnDeps {
diff --git a/pkgs/servers/monitoring/laurel/default.nix b/pkgs/servers/monitoring/laurel/default.nix
index 22de6d4ebb6f..c96de249f5e5 100644
--- a/pkgs/servers/monitoring/laurel/default.nix
+++ b/pkgs/servers/monitoring/laurel/default.nix
@@ -6,16 +6,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "laurel";
-  version = "0.6.1";
+  version = "0.6.2";
 
   src = fetchFromGitHub {
     owner = "threathunters-io";
     repo = "laurel";
     rev = "refs/tags/v${version}";
-    hash = "sha256-dGgBcugIQ3ZPnqyTw6wRMN2PZLm6GqobeFZ1/uzMKbs=";
+    hash = "sha256-1V5VonSH631bS5sIYkHC3lk4yumDCJ+LZHE00Kbx+J8=";
   };
 
-  cargoHash = "sha256-8JNLssWTCfwrfQ/jg/rj7BUo9bCNCsM2RDwPI7cacRw=";
+  cargoHash = "sha256-GhgGMETOOPjG6ANwwavI5lhMmByq73KDHvcO5pnADHE=";
 
   nativeBuildInputs = [ rustPlatform.bindgenHook ];
   buildInputs = [ acl ];
diff --git a/pkgs/servers/monitoring/mtail/default.nix b/pkgs/servers/monitoring/mtail/default.nix
index d932994c6e82..32af6e92b2a8 100644
--- a/pkgs/servers/monitoring/mtail/default.nix
+++ b/pkgs/servers/monitoring/mtail/default.nix
@@ -6,13 +6,13 @@
 
 buildGoModule rec {
   pname = "mtail";
-  version = "3.0.0";
+  version = "3.0.1";
 
   src = fetchFromGitHub {
     owner = "google";
     repo = "mtail";
     rev = "v${version}";
-    hash = "sha256-1AUV3NyALJbR2CPpDJaK+Cq/w87jGFtp/iUkBFqanSE=";
+    hash = "sha256-HXnudY9GUCjFL4JvdNYGZ1fPeaPZjt63jrZfUfOWjEc=";
   };
 
   vendorHash = "sha256-XKELlrsyumv3EbNdepLRgX7kPWxzo2ZdKrOwiM0myf8=";
diff --git a/pkgs/servers/monitoring/prometheus/bitcoin-exporter.nix b/pkgs/servers/monitoring/prometheus/bitcoin-exporter.nix
index 4abd65235fab..21dedaa1b70e 100644
--- a/pkgs/servers/monitoring/prometheus/bitcoin-exporter.nix
+++ b/pkgs/servers/monitoring/prometheus/bitcoin-exporter.nix
@@ -2,7 +2,7 @@
 
 python3Packages.buildPythonApplication rec {
   pname = "bitcoin-prometheus-exporter";
-  version = "0.5.0";
+  version = "0.7.0";
 
   format = "other";
 
@@ -10,17 +10,12 @@ python3Packages.buildPythonApplication rec {
     owner = "jvstein";
     repo = pname;
     rev = "v${version}";
-    sha256 = "0l0j6dyb0vflh386z3g8srysay5sf47g5rg2f5xrkckv86rjr115";
+    sha256 = "sha256-ZWr+bBNnRYzqjatOJ4jYGzvTyfheceY2UDvG4Juvo5I=";
   };
 
-  patches = [
-    # remove after update to new release
-    (fetchpatch {
-      name = "configurable-listening-address.patch";
-      url = "https://patch-diff.githubusercontent.com/raw/jvstein/bitcoin-prometheus-exporter/pull/11.patch";
-      sha256 = "0a2l8aqgprc1d5k8yg1gisn6imh9hzg6j0irid3pjvp5i5dcnhyq";
-    })
-  ];
+  # Copying bitcoind-monitor.py is enough.
+  # The makefile builds docker containers.
+  dontBuild = true;
 
   propagatedBuildInputs = with python3Packages; [ prometheus-client bitcoinlib riprova ];
 
diff --git a/pkgs/servers/monitoring/prometheus/cloudflare-exporter.nix b/pkgs/servers/monitoring/prometheus/cloudflare-exporter.nix
index 7abcfeb32887..ec4dae6cbcb5 100644
--- a/pkgs/servers/monitoring/prometheus/cloudflare-exporter.nix
+++ b/pkgs/servers/monitoring/prometheus/cloudflare-exporter.nix
@@ -2,16 +2,16 @@
 
 buildGoModule rec {
   pname = "cloudflare-exporter";
-  version = "0.0.14";
+  version = "0.0.15";
 
   src = fetchFromGitHub {
     rev = version;
     owner = "lablabs";
     repo = pname;
-    sha256 = "sha256-A7JnHx9yipTwv63287BqmGrJ3yQ21NhB1z7rrHe6Ok8=";
+    sha256 = "sha256-cmA+OdPsG9JTiYGzXeK8dEhZJPHFKgKDaDMszIVyzg0=";
   };
 
-  vendorHash = "sha256-B/+UTkoGAoJLMr+zdXXSC2CWGHx+Iu5E2qp4AA/nmHM=";
+  vendorHash = "sha256-c1drgbzoA5AlbB0K+E8kuJnyShgUg7spPQKAAwxCr6M=";
 
   meta = with lib; {
     description = "Prometheus Cloudflare Exporter";
diff --git a/pkgs/servers/monitoring/prometheus/default.nix b/pkgs/servers/monitoring/prometheus/default.nix
index b511faf42fb6..f7cc47311ef2 100644
--- a/pkgs/servers/monitoring/prometheus/default.nix
+++ b/pkgs/servers/monitoring/prometheus/default.nix
@@ -31,10 +31,10 @@
 }:
 
 let
-  version = "2.49.1";
+  version = "2.52.0";
   webUiStatic = fetchurl {
     url = "https://github.com/prometheus/prometheus/releases/download/v${version}/prometheus-web-ui-${version}.tar.gz";
-    hash = "sha256-cHMzu7/WquRvbCUlAs4U6PrLP4PAigdYOyNbvxNoeIA=";
+    hash = "sha256-/HTNDu/msUFLiqbD5ryVPlDOqfAT+8MEGNusmu3xH1w=";
   };
 in
 buildGoModule rec {
@@ -47,10 +47,10 @@ buildGoModule rec {
     owner = "prometheus";
     repo = "prometheus";
     rev = "v${version}";
-    hash = "sha256-cqUyjRL+T7ARGcUWMCaeWMo7DR1gvPp08maNz9a3RG0=";
+    hash = "sha256-7HLSSls1aMZ6Zju2F9dArTFsCSESxDxWQ1a0QgD5Nxo=";
   };
 
-  vendorHash = "sha256-fDT7YrnUfS93yseo+1mLrSGPBewm7CpcHPCz1kxM6Uo=";
+  vendorHash = "sha256-IzYYfB8cvvQAsOqEREVaCe80V3hhhmOEYsl9E9NJq20=";
 
   excludedPackages = [ "documentation/prometheus-mixin" ];
 
diff --git a/pkgs/servers/monitoring/prometheus/dnsmasq-exporter.nix b/pkgs/servers/monitoring/prometheus/dnsmasq-exporter.nix
index eb2297648b56..f891fdaeb856 100644
--- a/pkgs/servers/monitoring/prometheus/dnsmasq-exporter.nix
+++ b/pkgs/servers/monitoring/prometheus/dnsmasq-exporter.nix
@@ -2,16 +2,16 @@
 
 buildGoModule rec {
   pname = "dnsmasq_exporter";
-  version = "0.2.0";
+  version = "unstable-2024-05-06";
 
   src = fetchFromGitHub {
     owner = "google";
     repo = "dnsmasq_exporter";
-    rev = "v${version}";
-    hash = "sha256-8r5q5imI+MxnU7+TFqdIc+JRX0zZY4pmUoAGlFqs8cQ=";
+    rev = "03f84edc208fa88e31cf00533db42e7e0c9717ca";
+    hash = "sha256-YFQ4XO3vnj2Ka3D/LS5aG6WX+qOCVTlq5khDxLoQllo=";
   };
 
-  vendorHash = "sha256-dEM0mn3JJl0M6ImWmkuvwBSfGWkhpVvZE7GtC1BQF7c=";
+  vendorHash = "sha256-oD68TCNJKwjY3iwE/pUosMIMGOhsWj9cHC/+hq3xxI4=";
 
   doCheck = false;
 
diff --git a/pkgs/servers/monitoring/prometheus/gitlab-ci-pipelines-exporter.nix b/pkgs/servers/monitoring/prometheus/gitlab-ci-pipelines-exporter.nix
index 42cb8e2e0db2..2f1e9a804966 100644
--- a/pkgs/servers/monitoring/prometheus/gitlab-ci-pipelines-exporter.nix
+++ b/pkgs/servers/monitoring/prometheus/gitlab-ci-pipelines-exporter.nix
@@ -2,13 +2,13 @@
 
 buildGoModule rec {
   pname = "gitlab-ci-pipelines-exporter";
-  version = "0.5.7";
+  version = "0.5.8";
 
   src = fetchFromGitHub {
     owner = "mvisonneau";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-zJCvjgymwFUDOl3ubrTdaX0KpzzR+fzUIiCkRmZNUOE=";
+    sha256 = "sha256-plrQPPclDaJiFHc1HNCk+bYiLO0fJX/HC/vTTO5eoy8=";
   };
 
   subPackages = [ "cmd/${pname}" ];
@@ -17,7 +17,7 @@ buildGoModule rec {
     "-X main.version=v${version}"
   ];
 
-  vendorHash = "sha256-Wnn2KIz4XtdJ6JoYLkGnykgc+MLstHS7s8MegSAQbiQ=";
+  vendorHash = "sha256-6l8jNQu+vI2SLPvKxl1o0XkqYbFyehqkrT75hEjIH/c=";
   doCheck = true;
 
   meta = with lib; {
diff --git a/pkgs/servers/monitoring/prometheus/graphite-exporter.nix b/pkgs/servers/monitoring/prometheus/graphite-exporter.nix
index 819a4c3947a1..e50a984be3fe 100644
--- a/pkgs/servers/monitoring/prometheus/graphite-exporter.nix
+++ b/pkgs/servers/monitoring/prometheus/graphite-exporter.nix
@@ -13,17 +13,17 @@ buildGoModule rec {
 
   vendorHash = "sha256-he2bmcTNkuKRsNGkn1IkhtOe+Eo/5RLWLYlNFWLo/As=";
 
-  preCheck = let
-    skippedTests = [
-      "TestBacktracking"
-      "TestInconsistentLabelsE2E"
-      "TestIssue111"
-      "TestIssue61"
-      "TestIssue90"
-    ];
-  in ''
-    buildFlagsArray+=("-run" "[^(${builtins.concatStringsSep "|" skippedTests})]")
-  '';
+  checkFlags =
+    let
+      skippedTests = [
+        "TestBacktracking"
+        "TestInconsistentLabelsE2E"
+        "TestIssue111"
+        "TestIssue61"
+        "TestIssue90"
+      ];
+    in
+    [ "-skip=^${builtins.concatStringsSep "$|^" skippedTests}$" ];
 
   passthru.tests = { inherit (nixosTests.prometheus-exporters) graphite; };
 
diff --git a/pkgs/servers/monitoring/prometheus/mysqld-exporter.nix b/pkgs/servers/monitoring/prometheus/mysqld-exporter.nix
index 598b3220e4a3..bfc2acad2496 100644
--- a/pkgs/servers/monitoring/prometheus/mysqld-exporter.nix
+++ b/pkgs/servers/monitoring/prometheus/mysqld-exporter.nix
@@ -23,9 +23,9 @@ buildGoModule rec {
   ];
 
   # skips tests with external dependencies, e.g. on mysqld
-  preCheck = ''
-    buildFlagsArray+="-short"
-  '';
+  checkFlags = [
+    "-short"
+  ];
 
   meta = with lib; {
     description = "Prometheus exporter for MySQL server metrics";
diff --git a/pkgs/servers/monitoring/prometheus/process-exporter.nix b/pkgs/servers/monitoring/prometheus/process-exporter.nix
index 684d624592f1..9ad82369b771 100644
--- a/pkgs/servers/monitoring/prometheus/process-exporter.nix
+++ b/pkgs/servers/monitoring/prometheus/process-exporter.nix
@@ -2,16 +2,16 @@
 
 buildGoModule rec {
   pname = "process-exporter";
-  version = "0.7.10";
+  version = "0.8.2";
 
   src = fetchFromGitHub {
     owner = "ncabatoff";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-TAgMA9IV3i8dpgOBDmnlt4iyGlmWN5Nj3BexXb5vzlc=";
+    sha256 = "sha256-irI1vEoLKBn7odWpFfpSwLtkStEUyxRtD/fi3CV5oNM=";
   };
 
-  vendorHash = "sha256-LAEnXJ3qShfCGjtsYAGyW5x/TTFQxQxXM0hebJrqiW4=";
+  vendorHash = "sha256-Mmcc7Tp71OH5BQgMYMRhokqNDOqCudaUaCNzjOGoQ68=";
 
   postPatch = ''
     substituteInPlace proc/read_test.go --replace /bin/cat cat
diff --git a/pkgs/servers/monitoring/prometheus/snmp-exporter.nix b/pkgs/servers/monitoring/prometheus/snmp-exporter.nix
index 812484fdf615..2f8c4f7ba371 100644
--- a/pkgs/servers/monitoring/prometheus/snmp-exporter.nix
+++ b/pkgs/servers/monitoring/prometheus/snmp-exporter.nix
@@ -2,16 +2,16 @@
 
 buildGoModule rec {
   pname = "snmp_exporter";
-  version = "0.25.0";
+  version = "0.26.0";
 
   src = fetchFromGitHub {
     owner = "prometheus";
     repo = "snmp_exporter";
     rev = "v${version}";
-    sha256 = "sha256-6Y2zJwY5gToJlY6iLug2jNXXtNLNz98WoTKGcWgYzaA=";
+    sha256 = "sha256-6UTvzcN0BB4uLfyZxr8CkmlMAjggYRV/EmQPRD7ZqmY=";
   };
 
-  vendorHash = "sha256-8soLDI/hBzSZB6Lfj1jVkIWfIkMPJmp84bu7TKg7jeo=";
+  vendorHash = "sha256-0WGiVM4HTgcVkCxfjW1c+z1wlf/ay5BXZXuGRPS4guc=";
 
   buildInputs = [ net-snmp ];
 
diff --git a/pkgs/servers/monitoring/prometheus/tor-exporter.nix b/pkgs/servers/monitoring/prometheus/tor-exporter.nix
index caee06b735d0..c12e92c5ee56 100644
--- a/pkgs/servers/monitoring/prometheus/tor-exporter.nix
+++ b/pkgs/servers/monitoring/prometheus/tor-exporter.nix
@@ -34,7 +34,7 @@ python3Packages.buildPythonApplication rec {
     mainProgram = "prometheus-tor-exporter";
     homepage = "https://github.com/atx/prometheus-tor_exporter";
     license = licenses.mit;
-    maintainers = with maintainers; [ ];
+    maintainers = with maintainers; [ Scrumplex ];
     platforms = platforms.unix;
   };
 }
diff --git a/pkgs/servers/monitoring/prometheus/unbound-exporter.nix b/pkgs/servers/monitoring/prometheus/unbound-exporter.nix
index 5237abe6148a..649009184498 100644
--- a/pkgs/servers/monitoring/prometheus/unbound-exporter.nix
+++ b/pkgs/servers/monitoring/prometheus/unbound-exporter.nix
@@ -5,7 +5,7 @@
 }:
 
 let
-  version = "0.4.5";
+  version = "0.4.6";
 in
 buildGoModule {
   pname = "unbound_exporter";
diff --git a/pkgs/servers/monitoring/vmagent/default.nix b/pkgs/servers/monitoring/vmagent/default.nix
index c290b81ef04e..1dd054de46bc 100644
--- a/pkgs/servers/monitoring/vmagent/default.nix
+++ b/pkgs/servers/monitoring/vmagent/default.nix
@@ -1,13 +1,13 @@
 { lib, fetchFromGitHub, buildGoModule }:
 buildGoModule rec {
   pname = "vmagent";
-  version = "1.100.1";
+  version = "1.101.0";
 
   src = fetchFromGitHub {
     owner = "VictoriaMetrics";
     repo = "VictoriaMetrics";
     rev = "v${version}";
-    sha256 = "sha256-OheW6sCn/yXgSrtUe1zqDGaH6G8HG4QRQhFznaZGvX0=";
+    sha256 = "sha256-Jjz/CbVCvc9NFbvzYTFthG8cov4pYpc6y1A1Kmd3Mjg=";
   };
 
   ldflags = [ "-s" "-w" "-X github.com/VictoriaMetrics/VictoriaMetrics/lib/buildinfo.Version=${version}" ];
diff --git a/pkgs/servers/moonraker/default.nix b/pkgs/servers/moonraker/default.nix
index d4cc61af2802..a6b3f3eb21e7 100644
--- a/pkgs/servers/moonraker/default.nix
+++ b/pkgs/servers/moonraker/default.nix
@@ -24,7 +24,7 @@ let
   );
 in stdenvNoCC.mkDerivation rec {
   pname = "moonraker";
-  version = "unstable-2023-12-27";
+  version = "0.8.0-unstable-2023-12-27";
 
   src = fetchFromGitHub {
     owner = "Arksine";
@@ -44,7 +44,10 @@ in stdenvNoCC.mkDerivation rec {
   '';
 
   passthru = {
-    updateScript = unstableGitUpdater { url = meta.homepage; };
+    updateScript = unstableGitUpdater {
+      url = meta.homepage;
+      tagPrefix = "v";
+    };
     tests.moonraker = nixosTests.moonraker;
   };
 
diff --git a/pkgs/servers/nominatim/default.nix b/pkgs/servers/nominatim/default.nix
index db126863fe04..4b39480a4a9b 100644
--- a/pkgs/servers/nominatim/default.nix
+++ b/pkgs/servers/nominatim/default.nix
@@ -1,8 +1,8 @@
 { stdenv, lib, fetchFromGitHub, fetchurl
-, clang-tools, cmake, bzip2, zlib, expat, boost, git, pandoc
+, clang-tools, cmake, bzip2, zlib, expat, boost, git, pandoc, nlohmann_json
 # Nominatim needs to be built with the same postgres version it will target
 , postgresql
-, python3, php
+, python3, php, lua
 }:
 
 let
@@ -14,14 +14,14 @@ let
 in
 stdenv.mkDerivation rec {
   pname = "nominatim";
-  version = "4.0.1";
+  version = "4.4.0";
 
   src = fetchFromGitHub {
     owner = "osm-search";
     repo = "Nominatim";
     rev = "v${version}";
     fetchSubmodules = true;
-    sha256 = "sha256-sKI/KBKveb5kAWJ7y1xw+ZF1thynr402rJhVjkIdFMo=";
+    sha256 = "sha256-GPMDbvTPl9SLpZi5gyRAPQ84NSTIRoSfGJeqWs1e9Oo=";
   };
 
   nativeBuildInputs = [
@@ -30,6 +30,7 @@ stdenv.mkDerivation rec {
     git
     pandoc
     php
+    lua
   ];
 
   buildInputs = [
@@ -37,10 +38,13 @@ stdenv.mkDerivation rec {
     zlib
     expat
     boost
+    nlohmann_json
     (python3.withPackages (ps: with ps; [
       pyyaml
       python-dotenv
       psycopg2
+      sqlalchemy
+      asyncpg
       psutil
       jinja2
       pyicu
diff --git a/pkgs/servers/nosql/aerospike/default.nix b/pkgs/servers/nosql/aerospike/default.nix
index 9a283a418217..3cf45118d51f 100644
--- a/pkgs/servers/nosql/aerospike/default.nix
+++ b/pkgs/servers/nosql/aerospike/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "aerospike-server";
-  version = "7.0.0.7";
+  version = "7.1.0.0";
 
   src = fetchFromGitHub {
     owner = "aerospike";
     repo = "aerospike-server";
     rev = version;
-    hash = "sha256-WAdN0Kk55Y3rhth1tiAZb9xIb0tF3YVfP+BXGRRY3lI=";
+    hash = "sha256-QifZDjmveokTkEIkMF1ozcR5x4mW/JWuSzD+rtU4B1c=";
     fetchSubmodules = true;
   };
 
diff --git a/pkgs/servers/nosql/apache-jena/fuseki-binary.nix b/pkgs/servers/nosql/apache-jena/fuseki-binary.nix
index d748cdb7c4eb..9817de91766f 100644
--- a/pkgs/servers/nosql/apache-jena/fuseki-binary.nix
+++ b/pkgs/servers/nosql/apache-jena/fuseki-binary.nix
@@ -24,9 +24,12 @@ stdenv.mkDerivation rec {
     chmod +x $out/fuseki
     ln -s "$out"/{fuseki-backup,fuseki-server,fuseki} "$out/bin"
     for i in "$out"/bin/*; do
+      # It is necessary to set the default $FUSEKI_BASE directory to a writable location
+      # By default it points to $FUSEKI_HOME/run which is in the nix store
       wrapProgram "$i" \
         --prefix "PATH" : "${java}/bin/:${coreutils}/bin:${which}/bin" \
         --set-default "FUSEKI_HOME" "$out" \
+        --run "if [ -z \"\$FUSEKI_BASE\" ]; then export FUSEKI_BASE=\"\$HOME/.local/fuseki\" ; mkdir -p \"\$HOME/.local/fuseki\" ; fi" \
         ;
     done
   '';
@@ -40,7 +43,9 @@ stdenv.mkDerivation rec {
     license = licenses.asl20;
     maintainers = with maintainers; [ raskin ];
     platforms = platforms.all;
+    sourceProvenance = with sourceTypes; [ binaryBytecode binaryNativeCode ];
     homepage = "https://jena.apache.org";
     downloadPage = "https://archive.apache.org/dist/jena/binaries/";
+    mainProgram = "fuseki";
   };
 }
diff --git a/pkgs/servers/nosql/mongodb/5.0.nix b/pkgs/servers/nosql/mongodb/5.0.nix
index 2a26cb94eb16..e6738239358d 100644
--- a/pkgs/servers/nosql/mongodb/5.0.nix
+++ b/pkgs/servers/nosql/mongodb/5.0.nix
@@ -6,8 +6,8 @@ let
   };
   variants = if stdenv.isLinux then
     {
-      version = "5.0.24";
-      sha256 = "sha256-6CVQOHN3yFTq6OyVkZMYEjIKfFbQZ6M5KAa3k7qv4Gc=";
+      version = "5.0.26";
+      sha256 = "sha256-lVRTrEnwuyKETFL1C8bVqBfrDaYrbQIdmHN42CF8ZIw=";
       patches = [ ./fix-build-with-boost-1.79-5_0-linux.patch ];
     }
   else lib.optionalAttrs stdenv.isDarwin
diff --git a/pkgs/servers/nosql/mongodb/6.0.nix b/pkgs/servers/nosql/mongodb/6.0.nix
index b17c41916928..77d825d185f3 100644
--- a/pkgs/servers/nosql/mongodb/6.0.nix
+++ b/pkgs/servers/nosql/mongodb/6.0.nix
@@ -6,8 +6,8 @@ let
   };
 in
 buildMongoDB {
-  version = "6.0.13";
-  sha256 = "sha256-BD3XrTdv4sCa3h37o1A2s3/R0R8zHiR59a4pY0RxLGU=";
+  version = "6.0.15";
+  sha256 = "sha256-DX1wbrDx1/JrEHbzNaXC4Hqq7MrLqz+JZgG98beyVds=";
   patches = [
     # Patches a bug that it couldn't build MongoDB 6.0 on gcc 13 because a include in ctype.h was missing
     ./fix-gcc-13-ctype-6_0.patch
diff --git a/pkgs/servers/nosql/mongodb/mongodb.nix b/pkgs/servers/nosql/mongodb/mongodb.nix
index 801ee28303f0..f1cb57b92a6b 100644
--- a/pkgs/servers/nosql/mongodb/mongodb.nix
+++ b/pkgs/servers/nosql/mongodb/mongodb.nix
@@ -1,6 +1,6 @@
 { lib
 , stdenv
-, fetchurl
+, fetchFromGitHub
 , buildPackages
 , boost
 , gperftools
@@ -63,8 +63,10 @@ in stdenv.mkDerivation rec {
   inherit version;
   pname = "mongodb";
 
-  src = fetchurl {
-    url = "https://fastdl.mongodb.org/src/mongodb-src-r${version}.tar.gz";
+  src = fetchFromGitHub {
+    owner = "mongodb";
+    repo = "mongo";
+    rev = "r${version}";
     inherit sha256;
   };
 
@@ -127,6 +129,7 @@ in stdenv.mkDerivation rec {
     "--disable-warnings-as-errors"
     "VARIANT_DIR=nixos" # Needed so we don't produce argument lists that are too long for gcc / ld
     "--link-model=static"
+    "MONGO_VERSION=${version}"
   ]
   ++ map (lib: "--use-system-${lib}") system-libraries;
 
diff --git a/pkgs/servers/nosql/neo4j/default.nix b/pkgs/servers/nosql/neo4j/default.nix
index b43a4d17ff3a..24fd222b0a91 100644
--- a/pkgs/servers/nosql/neo4j/default.nix
+++ b/pkgs/servers/nosql/neo4j/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   pname = "neo4j";
-  version = "5.18.1";
+  version = "5.19.0";
 
   src = fetchurl {
     url = "https://neo4j.com/artifact.php?name=neo4j-community-${version}-unix.tar.gz";
-    hash = "sha256-jNi8SK1Z8k6ZSc9aa+L+PhAKyes0Tv6mFuoKspZBEIk=";
+    hash = "sha256-MPTrMVbr3XkFzid1FGyAK5sRBMCMMxsdbKEmqv9aANk=";
   };
 
   nativeBuildInputs = [ makeWrapper ];
diff --git a/pkgs/servers/nosql/questdb/default.nix b/pkgs/servers/nosql/questdb/default.nix
index 45a94eef2b3b..835a02efe60e 100644
--- a/pkgs/servers/nosql/questdb/default.nix
+++ b/pkgs/servers/nosql/questdb/default.nix
@@ -8,11 +8,11 @@
 
 stdenv.mkDerivation (finalAttrs: {
   pname = "questdb";
-  version = "7.4.0";
+  version = "7.4.2";
 
   src = fetchurl {
     url = "https://github.com/questdb/questdb/releases/download/${finalAttrs.version}/questdb-${finalAttrs.version}-no-jre-bin.tar.gz";
-    hash = "sha256-XpMLT6oBoZv7V69l7XLm7B/ioeNHSqKkl+4UAsMcYao=";
+    hash = "sha256-NrtxAqXs0tEsWeixaRWvWYFA6RJ0Z0m5kCZjgn3JpVU=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/servers/onlyoffice-documentserver/default.nix b/pkgs/servers/onlyoffice-documentserver/default.nix
index 61ea3cf6fd94..7369e0b25bb0 100644
--- a/pkgs/servers/onlyoffice-documentserver/default.nix
+++ b/pkgs/servers/onlyoffice-documentserver/default.nix
@@ -142,7 +142,7 @@ let
         ONLYOFFICE Document Server is an online office suite comprising viewers and editors for texts, spreadsheets and presentations,
         fully compatible with Office Open XML formats: .docx, .xlsx, .pptx and enabling collaborative editing in real time.
       '';
-      homepage = "ONLYOFFICE Document Server is an online office suite comprising viewers and editors";
+      homepage = "https://github.com/ONLYOFFICE/DocumentServer";
       license = licenses.agpl3Plus;
       platforms = [ "x86_64-linux" ];
       sourceProvenance = [ sourceTypes.binaryNativeCode ];
diff --git a/pkgs/servers/openvscode-server/default.nix b/pkgs/servers/openvscode-server/default.nix
index dd6b6b551d65..bc1e7a3f5e18 100644
--- a/pkgs/servers/openvscode-server/default.nix
+++ b/pkgs/servers/openvscode-server/default.nix
@@ -60,13 +60,13 @@ let
 in
 stdenv.mkDerivation (finalAttrs: {
   pname = "openvscode-server";
-  version = "1.88.0";
+  version = "1.88.1";
 
   src = fetchFromGitHub {
     owner = "gitpod-io";
     repo = "openvscode-server";
     rev = "openvscode-server-v${finalAttrs.version}";
-    hash = "sha256-cZ/q8EUPZ4YqKpwH/XvXzE8pMHKGO93ADqhGHbqJBF8=";
+    hash = "sha256-Yc16L13Z8AmsGoSFbvy+4+KBdHxvqLMwZLeU2/dAQVU=";
   };
 
   yarnCache = stdenv.mkDerivation {
@@ -89,7 +89,7 @@ stdenv.mkDerivation (finalAttrs: {
 
     outputHashMode = "recursive";
     outputHashAlgo = "sha256";
-    outputHash = "sha256-Zy8YPY+vEF9Y5ol4xWk9UMkHUQ0hY8n+mcXfm8iVbys=";
+    outputHash = "sha256-89c6GYLT2RzHqwxBKegYqB6g5rEJ6/nH53cnfV7b0Ts=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/servers/osmocom/libasn1c/default.nix b/pkgs/servers/osmocom/libasn1c/default.nix
index 11374fa055dd..a7d6f69f1206 100644
--- a/pkgs/servers/osmocom/libasn1c/default.nix
+++ b/pkgs/servers/osmocom/libasn1c/default.nix
@@ -34,7 +34,7 @@ stdenv.mkDerivation rec {
 
   meta = with lib; {
     description = "Runtime library of Lev Walkin's asn1c split out as separate library";
-    homepage = "github.com/osmocom/libasn1c/";
+    homepage = "https://github.com/osmocom/libasn1c/";
     license = licenses.bsd2;
     platforms = platforms.linux;
     maintainers = with maintainers; [ janik ];
diff --git a/pkgs/servers/photoprism/backend.nix b/pkgs/servers/photoprism/backend.nix
index 7403f4dc897f..c1fc2f5b00c4 100644
--- a/pkgs/servers/photoprism/backend.nix
+++ b/pkgs/servers/photoprism/backend.nix
@@ -19,7 +19,7 @@ buildGoModule rec {
     substituteInPlace internal/commands/passwd.go --replace '/bin/stty' "${coreutils}/bin/stty"
   '';
 
-  vendorHash = "sha256-mt2L5vf57/MntjtfJVua799nF4CkRYI8payLoPc0oQA=";
+  vendorHash = "sha256-ogJ/FwWJt1L0NGKX29tqWmHo4WslzC7ck5r7vn5PEuY=";
 
   subPackages = [ "cmd/photoprism" ];
 
diff --git a/pkgs/servers/photoprism/default.nix b/pkgs/servers/photoprism/default.nix
index f2f7914394b8..c9b05257de86 100644
--- a/pkgs/servers/photoprism/default.nix
+++ b/pkgs/servers/photoprism/default.nix
@@ -1,14 +1,14 @@
 { pkgs, lib, stdenv, fetchFromGitHub, fetchzip, darktable, rawtherapee, ffmpeg, libheif, exiftool, imagemagick, makeWrapper, testers }:
 
 let
-  version = "231128-f48ff16ef";
+  version = "240420-ef5f14bc4";
   pname = "photoprism";
 
   src = fetchFromGitHub {
     owner = pname;
     repo = pname;
     rev = version;
-    hash = "sha256-gVxKa5JKGz5VSVCuJHat0DWCYaUH+9an6JsYUPe9muQ=";
+    hash = "sha256-oJRd4eTwoTYKAJAsG9y0mnG+zF+eeLlSXNgaKLcb43w=";
   };
 
   libtensorflow = pkgs.callPackage ./libtensorflow.nix { };
diff --git a/pkgs/servers/photoprism/frontend.nix b/pkgs/servers/photoprism/frontend.nix
index 782efb1d0d3d..67f2cdd147a8 100644
--- a/pkgs/servers/photoprism/frontend.nix
+++ b/pkgs/servers/photoprism/frontend.nix
@@ -8,7 +8,7 @@ buildNpmPackage {
     cd frontend
   '';
 
-  npmDepsHash = "sha256-4bAWSSy7kvG1ChzEb2iuxgWxnkjtJlr7Lm7USbgsmAw=";
+  npmDepsHash = "sha256-mgDg6awsEHkZyMzvFLwlfXGjdvjtwkNJiiNcnRBSJVo=";
 
   installPhase = ''
     runHook preInstall
diff --git a/pkgs/servers/pinnwand/default.nix b/pkgs/servers/pinnwand/default.nix
index fac861d56b02..93e2a009c335 100644
--- a/pkgs/servers/pinnwand/default.nix
+++ b/pkgs/servers/pinnwand/default.nix
@@ -1,23 +1,32 @@
 { lib
 , python3
 , fetchFromGitHub
+, fetchpatch2
 , nixosTests
 }:
 
 with python3.pkgs; buildPythonApplication rec {
   pname = "pinnwand";
-  version = "1.4.0";
-  format = "pyproject";
+  version = "1.5.0";
+  pyproject = true;
 
   src = fetchFromGitHub {
     owner = "supakeen";
     repo = pname;
     rev = "refs/tags/v${version}";
-    hash = "sha256-zJH2ojLQChElRvU2TWg4lW+Mey+wP0XbLJhVF16nvss=";
+    hash = "sha256-1Q/jRjFUoJb1S3cGF8aVuguWMJwYrAtXdKpZV8nRK0k=";
   };
 
+  patches = [
+    (fetchpatch2 {
+      # fix entrypoint
+      url = "https://github.com/supakeen/pinnwand/commit/7868b4b4dcd57066dd0023b5a3cbe91fc5a0a858.patch";
+      hash = "sha256-Fln9yJNRvNPHZ0JIgzmwwjUpAHMu55NaEb8ZVDWhLyE=";
+    })
+  ];
+
   nativeBuildInputs = [
-    poetry-core
+    pdm-pep517
     pythonRelaxDepsHook
   ];
 
@@ -31,6 +40,7 @@ with python3.pkgs; buildPythonApplication rec {
     docutils
     pygments
     pygments-better-html
+    python-dotenv
     sqlalchemy
     token-bucket
     tomli
diff --git a/pkgs/servers/pocketbase/default.nix b/pkgs/servers/pocketbase/default.nix
index b4dd0f5f80a9..4ba576856efd 100644
--- a/pkgs/servers/pocketbase/default.nix
+++ b/pkgs/servers/pocketbase/default.nix
@@ -6,16 +6,16 @@
 
 buildGoModule rec {
   pname = "pocketbase";
-  version = "0.22.10";
+  version = "0.22.12";
 
   src = fetchFromGitHub {
     owner = "pocketbase";
     repo = "pocketbase";
     rev = "v${version}";
-    hash = "sha256-4mx2jIAEkzeaSWISKspeEFH7DT8qcuaZfEiEvXTQgYs=";
+    hash = "sha256-ltz1efvP1wLQx/9rIRvt0ajEvEUaOjSWQzxjFhjXMI4=";
   };
 
-  vendorHash = "sha256-ZjnUw35ag9UIxS3fqwDCrdehTtM0VqjyHRAvbzNFF48=";
+  vendorHash = "sha256-EsBMnIeSBQw3tu2jSLS9VpmHHyfHw9crGSmOrUIRvoo=";
 
   # This is the released subpackage from upstream repo
   subPackages = [ "examples/base" ];
diff --git a/pkgs/servers/prowlarr/default.nix b/pkgs/servers/prowlarr/default.nix
index 280e7f81396e..44dc639af5f5 100644
--- a/pkgs/servers/prowlarr/default.nix
+++ b/pkgs/servers/prowlarr/default.nix
@@ -21,15 +21,15 @@ let
   }.${stdenv.hostPlatform.system} or unsupported;
 
   hash = {
-    aarch64-darwin = "sha256-Mf+l5VfPSsT/LRfQnzzc7jjkfkeF/L8jwxJJ8JAYflY=";
-    aarch64-linux = "sha256-/ioLYcws1TYMjuAFIj8yjcvTGzsvPhNwApQ84RWKZxc=";
-    x86_64-darwin = "sha256-CioWiSC7AlVEpQA1eoQE0YhCuX2kWz00mY/UsqZ9T40=";
-    x86_64-linux = "sha256-QhpJ/JunCbkuF2z1uNBojmv/wsISOrozTc0VgR+PuqQ=";
+    aarch64-darwin = "sha256-aa9mkFRdvAi/A6OQnxDOiQ5yDXBbPbQxet8+XqHxrtE=";
+    aarch64-linux = "sha256-neTIMWdx1UX9REZkLZtXpmyPb+NrbkMnXNrTn9bsECE=";
+    x86_64-darwin = "sha256-JM0VhAbA72ZmZGZ8ke2MtB4Fi5//hr+Etk5UiMpq1LA=";
+    x86_64-linux = "sha256-bYIavvea6Nwbn22CFiWXpzPGAI13oJYAIZr2FdLkyb8=";
   }.${stdenv.hostPlatform.system} or unsupported;
 
 in stdenv.mkDerivation rec {
   inherit pname;
-  version = "1.16.2.4435";
+  version = "1.17.2.4511";
 
   src = fetchurl {
     url = "https://github.com/Prowlarr/Prowlarr/releases/download/v${version}/Prowlarr.master.${version}.${os}-core-${arch}.tar.gz";
diff --git a/pkgs/servers/psitransfer/default.nix b/pkgs/servers/psitransfer/default.nix
index e39ae107217e..621ad70184a6 100644
--- a/pkgs/servers/psitransfer/default.nix
+++ b/pkgs/servers/psitransfer/default.nix
@@ -1,22 +1,24 @@
 { lib
 , buildNpmPackage
 , fetchFromGitHub
+, pkg-config
+, vips
 }:
 
 let
   pname = "psitransfer";
-  version = "2.1.2";
+  version = "2.2.0";
   src = fetchFromGitHub {
     owner = "psi-4ward";
     repo = "psitransfer";
     rev = "v${version}";
-    hash = "sha256-dBAieXIwCEstR9m+6+2/OLPKo2qHynZ1t372Il0mkXk=";
+    hash = "sha256-5o4QliAXgSZekIy0CNWfEuOxNl0uetL8C8RKUJ8HsNA=";
   };
   app = buildNpmPackage {
     pname = "${pname}-app";
     inherit version src;
 
-    npmDepsHash = "sha256-iCd+I/aTMwQqAMRHan3T191XNz4S3Cy6CDxSLIYY7IA=";
+    npmDepsHash = "sha256-q7E+osWIf6VZ3JvxCXoZYeF28aMgmKP6EzQkksUUjeY=";
 
     postPatch = ''
       # https://github.com/psi-4ward/psitransfer/pull/284
@@ -31,7 +33,12 @@ let
 in buildNpmPackage {
   inherit pname version src;
 
-  npmDepsHash = "sha256-H22T5IU8bjbsWhwhchDqppvYfcatbXSWqp6gdoek1Z8=";
+  npmDepsHash = "sha256-EW/Fej58LE/nbJomPtWvEjDveAUdo0jIWwC+ziN0gy0=";
+
+  nativeBuildInputs = [ pkg-config ];
+  buildInputs = [
+    vips  # for 'sharp' dependency
+  ];
 
   postPatch = ''
     rm -r public/app
diff --git a/pkgs/servers/pulseaudio/default.nix b/pkgs/servers/pulseaudio/default.nix
index e32ef9bc1df6..331d1d3c71ac 100644
--- a/pkgs/servers/pulseaudio/default.nix
+++ b/pkgs/servers/pulseaudio/default.nix
@@ -5,7 +5,7 @@
 , sbc, bluez5, udev, openssl, fftwFloat
 , soxr, speexdsp, systemd, webrtc-audio-processing_1
 , gst_all_1
-, check, libintl, meson, ninja, m4, wrapGAppsHook
+, check, libintl, meson, ninja, m4, wrapGAppsHook3
 , fetchpatch2
 
 , x11Support ? false
@@ -69,7 +69,7 @@ stdenv.mkDerivation rec {
   nativeBuildInputs = [ pkg-config meson ninja makeWrapper perlPackages.perl perlPackages.XMLParser m4 ]
     ++ lib.optionals stdenv.isLinux [ glib ]
     # gstreamer plugin discovery requires wrapping
-    ++ lib.optional (bluetoothSupport && advancedBluetoothCodecs) wrapGAppsHook;
+    ++ lib.optional (bluetoothSupport && advancedBluetoothCodecs) wrapGAppsHook3;
 
   propagatedBuildInputs =
     lib.optionals stdenv.isLinux [ libcap ];
diff --git a/pkgs/servers/radarr/default.nix b/pkgs/servers/radarr/default.nix
index b1b228a37ec9..6efac9d1e820 100644
--- a/pkgs/servers/radarr/default.nix
+++ b/pkgs/servers/radarr/default.nix
@@ -10,15 +10,15 @@ let
   }."${stdenv.hostPlatform.system}" or (throw "Unsupported system: ${stdenv.hostPlatform.system}");
 
   hash = {
-    x64-linux_hash = "sha256-eFJ31tZPxzK1Vx2EOZ1AMrzCUL7pXJIb5J1joL/ZIgs=";
-    arm64-linux_hash = "sha256-BtxHBHc2dYYdqZxwga7K49aGfSq5a8Z1TLjMPH4ldlw=";
-    x64-osx_hash = "sha256-GQ8wHU4wWu6fpjiLI9yQyMvhP1DS5FE+YQu2uLFdto4=";
-    arm64-osx_hash = "sha256-AnZ+mGeafJsRb6Koj0+oaER8d6vuDQ0x+Wc1eflzupo=";
+    x64-linux_hash = "sha256-rKe1xQR3lkPXQBUWmKdHUu/AQ99U1kCINeXV2z/ZG5o=";
+    arm64-linux_hash = "sha256-O/6brSo25E4BxvxAUQvwQa9kMY/Ga3YxgS+fuaL6/n0=";
+    x64-osx_hash = "sha256-oVBs0evwPl3Dd6GZlzUWqopB0Zq4mOCUwmLOjs44d6Q=";
+    arm64-osx_hash = "sha256-iUBy9ob2zOdKVhGbwsJx1ZrT9tD4D1BPLqjB46tCW08=";
   }."${arch}-${os}_hash";
 
 in stdenv.mkDerivation rec {
   pname = "radarr";
-  version = "5.4.6.8723";
+  version = "5.6.0.8846";
 
   src = fetchurl {
     url = "https://github.com/Radarr/Radarr/releases/download/v${version}/Radarr.master.${version}.${os}-core-${arch}.tar.gz";
diff --git a/pkgs/servers/readarr/default.nix b/pkgs/servers/readarr/default.nix
index de407700bccd..d37059b463d9 100644
--- a/pkgs/servers/readarr/default.nix
+++ b/pkgs/servers/readarr/default.nix
@@ -8,13 +8,13 @@ let
     x86_64-darwin = "x64";
   }."${stdenv.hostPlatform.system}" or (throw "Unsupported system: ${stdenv.hostPlatform.system}");
   hash = {
-    x64-linux_hash = "sha256-heduuPx0lnbkB1c4tgbDO9wsGnyAzTPyW0ZEvYFwjd0=";
-    arm64-linux_hash = "sha256-vfy0pVIacnf0lW1VwUolbE/P+aBB9uQsm3enhGkjgXg=";
-    x64-osx_hash = "sha256-JW+9PRW1Wu+wu+QPh7INXkq87oRSuoOqNEqj0P2Stto=";
+    x64-linux_hash = "sha256-EBXK8MGgEOEu99X8n0i7mAoEBpqP9l+PtBlig0NW/Y8=";
+    arm64-linux_hash = "sha256-ZXIXjLnzjsT4nj5lbhg0yp97M9bdm8mo6Ypf3PAHlXc=";
+    x64-osx_hash = "sha256-RR3nyY7KyQXCimmknNEK6en98Q4D+PcFOi8lPAwdp9Q=";
   }."${arch}-${os}_hash";
 in stdenv.mkDerivation rec {
   pname = "readarr";
-  version = "0.3.23.2506";
+  version = "0.3.26.2526";
 
   src = fetchurl {
     url = "https://github.com/Readarr/Readarr/releases/download/v${version}/Readarr.develop.${version}.${os}-core-${arch}.tar.gz";
diff --git a/pkgs/servers/redpanda/default.nix b/pkgs/servers/redpanda/default.nix
index c90f055be42d..10e8cd3ed717 100644
--- a/pkgs/servers/redpanda/default.nix
+++ b/pkgs/servers/redpanda/default.nix
@@ -7,12 +7,12 @@
 , stdenv
 }:
 let
-  version = "23.3.13";
+  version = "24.1.2";
   src = fetchFromGitHub {
     owner = "redpanda-data";
     repo = "redpanda";
     rev = "v${version}";
-    sha256 = "sha256-5JbC9FEF0h9nExrb4IGnc5lzStf7FyQ9imkz6ekRyJg=";
+    sha256 = "sha256-RkJymtTTIPTPzpoUyWmCKpfQBqGFoR7ZeEWCKKzkn54=";
   };
   server = callPackage ./server.nix { inherit src version; };
 in
@@ -21,7 +21,7 @@ buildGoModule rec {
   inherit doCheck src version;
   modRoot = "./src/go/rpk";
   runVend = false;
-  vendorHash = "sha256-B//qmqxS3g9u2yir8Z3iV2fjQ4XXPAjFujeOZjdt8PE=";
+  vendorHash = "sha256-mpzWKJwE5ghySiiOdJO81w8Jvk1k34lb3Gvj+p5U1FU=";
 
   ldflags = [
     ''-X "github.com/redpanda-data/redpanda/src/go/rpk/pkg/cli/cmd/version.version=${version}"''
diff --git a/pkgs/servers/roadrunner/default.nix b/pkgs/servers/roadrunner/default.nix
index 0141a9009396..caf98f12a7ab 100644
--- a/pkgs/servers/roadrunner/default.nix
+++ b/pkgs/servers/roadrunner/default.nix
@@ -6,12 +6,13 @@
 
 buildGoModule rec {
   pname = "roadrunner";
-  version = "2024.1.0";
+  version = "2024.1.1";
+
   src = fetchFromGitHub {
     repo = "roadrunner";
     owner = "roadrunner-server";
-    rev = "v${version}";
-    hash = "sha256-K5ZN5HHz2PEBOQ5ke7FUCjMihORfxxjLUtBJgd/1jAA=";
+    rev = "refs/tags/v${version}";
+    hash = "sha256-uSc4dVDw4aXuo0mKPhsXLYfifpu4c+L7AQXaDgTkvTc=";
   };
 
   nativeBuildInputs = [
@@ -22,8 +23,8 @@ buildGoModule rec {
   # https://github.com/roadrunner-server/roadrunner/blob/fe572d0eceae8fd05225fbd99ba50a9eb10c4393/.github/workflows/release.yml#L89
   ldflags = [
     "-s"
-    "-X github.com/roadrunner-server/roadrunner/v2023/internal/meta.version=${version}"
-    "-X github.com/roadrunner-server/roadrunner/v2023/internal/meta.buildTime=1970-01-01T00:00:00Z"
+    "-X=github.com/roadrunner-server/roadrunner/v2023/internal/meta.version=${version}"
+    "-X=github.com/roadrunner-server/roadrunner/v2023/internal/meta.buildTime=1970-01-01T00:00:00Z"
   ];
 
   postInstall = ''
@@ -44,7 +45,7 @@ buildGoModule rec {
       --replace "127.0.0.1:0" "127.0.0.1:55554"
   '';
 
-  vendorHash = "sha256-fAFErw5+oR4MEme5v3iMyLqwwsR4O6OxeVcVDVlKpdI=";
+  vendorHash = "sha256-8cNUCTwrhkgHu+XyneYLdPqsITnTCxQ6KGFoPrz7PwI=";
 
   meta = {
     changelog = "https://github.com/roadrunner-server/roadrunner/blob/v${version}/CHANGELOG.md";
diff --git a/pkgs/servers/roon-server/default.nix b/pkgs/servers/roon-server/default.nix
index bbcd4e9165ae..14fb54f52c8c 100644
--- a/pkgs/servers/roon-server/default.nix
+++ b/pkgs/servers/roon-server/default.nix
@@ -15,7 +15,7 @@
 , stdenv
 }:
 let
-  version = "2.0-1392";
+  version = "2.0-1407";
   urlVersion = builtins.replaceStrings [ "." "-" ] [ "00" "0" ] version;
 in
 stdenv.mkDerivation {
@@ -24,7 +24,7 @@ stdenv.mkDerivation {
 
   src = fetchurl {
     url = "https://download.roonlabs.com/updates/production/RoonServer_linuxx64_${urlVersion}.tar.bz2";
-    hash = "sha256-S6p2xlWa1Xgp+umRx1KCs4g1u7JZTByNBNUSJBQweUs=";
+    hash = "sha256-PW28Rw0prHS/q879GYVKaiXe0i2w6BVwgcTWOUhAhOk=";
   };
 
   dontConfigure = true;
diff --git a/pkgs/servers/rpiplay/default.nix b/pkgs/servers/rpiplay/default.nix
index cc9369f9ea29..ae22b838bda2 100644
--- a/pkgs/servers/rpiplay/default.nix
+++ b/pkgs/servers/rpiplay/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, pkg-config, fetchFromGitHub, fetchpatch, cmake, wrapGAppsHook, avahi, avahi-compat, openssl, gst_all_1, libplist }:
+{ lib, stdenv, pkg-config, fetchFromGitHub, fetchpatch, cmake, wrapGAppsHook3, avahi, avahi-compat, openssl, gst_all_1, libplist }:
 
 stdenv.mkDerivation rec {
   pname = "rpiplay";
@@ -26,7 +26,7 @@ stdenv.mkDerivation rec {
     openssl
     libplist
     pkg-config
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
diff --git a/pkgs/servers/samba/4.x.nix b/pkgs/servers/samba/4.x.nix
index 23b659727841..a52099460e78 100644
--- a/pkgs/servers/samba/4.x.nix
+++ b/pkgs/servers/samba/4.x.nix
@@ -63,11 +63,11 @@ let
 in
 stdenv.mkDerivation (finalAttrs: {
   pname = "samba";
-  version = "4.20.0";
+  version = "4.20.1";
 
   src = fetchurl {
     url = "mirror://samba/pub/samba/stable/${finalAttrs.pname}-${finalAttrs.version}.tar.gz";
-    hash = "sha256-AmclQlEKxuXQyRwMFNkKtObsOXxwnpUsbaOm4LTVpC8=";
+    hash = "sha256-+Tw69SlTQNCBBsfA3PuF5PhQV9/RRYeqiBe+sxr/iPc=";
   };
 
   outputs = [ "out" "dev" "man" ];
diff --git a/pkgs/servers/search/opensearch/default.nix b/pkgs/servers/search/opensearch/default.nix
index 2c7d140ccce2..fb9139ec6ee6 100644
--- a/pkgs/servers/search/opensearch/default.nix
+++ b/pkgs/servers/search/opensearch/default.nix
@@ -11,11 +11,11 @@
 
 stdenvNoCC.mkDerivation (finalAttrs: {
   pname = "opensearch";
-  version = "2.13.0";
+  version = "2.14.0";
 
   src = fetchurl {
     url = "https://artifacts.opensearch.org/releases/bundle/opensearch/${finalAttrs.version}/opensearch-${finalAttrs.version}-linux-x64.tar.gz";
-    hash = "sha256-cF2JZX5psuh7h8acazK9tcjNu6wralJtliwqaBnd/V8=";
+    hash = "sha256-NHLt23GDdtq1DliMByXN52jnKGZApdngp04MTz7F7HY=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/servers/search/qdrant/1.7.4-CVE-2024-3078.patch b/pkgs/servers/search/qdrant/1.7.4-CVE-2024-3078.patch
deleted file mode 100644
index b12b43834287..000000000000
--- a/pkgs/servers/search/qdrant/1.7.4-CVE-2024-3078.patch
+++ /dev/null
@@ -1,142 +0,0 @@
-Based on upstream 3ab5172e9c8f14fa1f7b24e7147eac74e2412b62 with minor
-adjustments to apply to 1.7.4
-
-diff --git a/lib/collection/src/collection/snapshots.rs b/lib/collection/src/collection/snapshots.rs
-index e5a8be9c..ca48fb9e 100644
---- a/lib/collection/src/collection/snapshots.rs
-+++ b/lib/collection/src/collection/snapshots.rs
-@@ -241,35 +241,35 @@ impl Collection {
-             .await
-     }
- 
-+    /// Get full file path for a collection snapshot by name
-+    ///
-+    /// This enforces the file to be inside the snapshots directory
-     pub async fn get_snapshot_path(&self, snapshot_name: &str) -> CollectionResult<PathBuf> {
--        let snapshot_path = self.snapshots_path.join(snapshot_name);
--
--        let absolute_snapshot_path =
--            snapshot_path
--                .canonicalize()
--                .map_err(|_| CollectionError::NotFound {
--                    what: format!("Snapshot {snapshot_name}"),
--                })?;
--
--        let absolute_snapshot_dir =
--            self.snapshots_path
--                .canonicalize()
--                .map_err(|_| CollectionError::NotFound {
--                    what: format!("Snapshot directory: {}", self.snapshots_path.display()),
--                })?;
-+        let absolute_snapshot_dir = self.snapshots_path.canonicalize().map_err(|_| {
-+            CollectionError::not_found(format!(
-+                "Snapshot directory: {}",
-+                self.snapshots_path.display()
-+            ))
-+        })?;
-+
-+        let absolute_snapshot_path = absolute_snapshot_dir
-+            .join(snapshot_name)
-+            .canonicalize()
-+            .map_err(|_| CollectionError::not_found(format!("Snapshot {snapshot_name}")))?;
- 
-         if !absolute_snapshot_path.starts_with(absolute_snapshot_dir) {
--            return Err(CollectionError::NotFound {
--                what: format!("Snapshot {snapshot_name}"),
--            });
-+            return Err(CollectionError::not_found(format!(
-+                "Snapshot {snapshot_name}"
-+            )));
-         }
- 
--        if !snapshot_path.exists() {
--            return Err(CollectionError::NotFound {
--                what: format!("Snapshot {snapshot_name}"),
--            });
-+        if !absolute_snapshot_path.exists() {
-+            return Err(CollectionError::not_found(format!(
-+                "Snapshot {snapshot_name}"
-+            )));
-         }
--        Ok(snapshot_path)
-+
-+        Ok(absolute_snapshot_path)
-     }
- 
-     pub async fn list_shard_snapshots(
-diff --git a/lib/collection/src/operations/types.rs b/lib/collection/src/operations/types.rs
-index afc38d0f..63eae16e 100644
---- a/lib/collection/src/operations/types.rs
-+++ b/lib/collection/src/operations/types.rs
-@@ -906,6 +906,10 @@ impl CollectionError {
-         CollectionError::BadInput { description }
-     }
- 
-+    pub fn not_found(what: impl Into<String>) -> CollectionError {
-+        CollectionError::NotFound { what: what.into() }
-+    }
-+
-     pub fn bad_request(description: String) -> CollectionError {
-         CollectionError::BadRequest { description }
-     }
-diff --git a/lib/storage/src/content_manager/errors.rs b/lib/storage/src/content_manager/errors.rs
-index 1ad8d413..4528e485 100644
---- a/lib/storage/src/content_manager/errors.rs
-+++ b/lib/storage/src/content_manager/errors.rs
-@@ -46,6 +46,12 @@ impl StorageError {
-         }
-     }
- 
-+    pub fn not_found(description: impl Into<String>) -> StorageError {
-+        StorageError::NotFound {
-+            description: description.into(),
-+        }
-+    }
-+
-     /// Used to override the `description` field of the resulting `StorageError`
-     pub fn from_inconsistent_shard_failure(
-         err: CollectionError,
-diff --git a/lib/storage/src/content_manager/snapshots/mod.rs b/lib/storage/src/content_manager/snapshots/mod.rs
-index 8a417377..9965006a 100644
---- a/lib/storage/src/content_manager/snapshots/mod.rs
-+++ b/lib/storage/src/content_manager/snapshots/mod.rs
-@@ -24,17 +24,33 @@ pub struct SnapshotConfig {
-     pub collections_aliases: HashMap<String, String>,
- }
- 
-+/// Get full file path for a full snapshot by name
-+///
-+/// This enforces the file to be inside the snapshots directory
- pub async fn get_full_snapshot_path(
-     toc: &TableOfContent,
-     snapshot_name: &str,
- ) -> Result<PathBuf, StorageError> {
--    let snapshot_path = Path::new(toc.snapshots_path()).join(snapshot_name);
--    if !snapshot_path.exists() {
--        return Err(StorageError::NotFound {
--            description: format!("Full storage snapshot {snapshot_name} not found"),
--        });
-+    let snapshots_path = toc.snapshots_path();
-+
-+    let absolute_snapshot_dir = Path::new(snapshots_path)
-+        .canonicalize()
-+        .map_err(|_| StorageError::not_found(format!("Snapshot directory: {snapshots_path}")))?;
-+
-+    let absolute_snapshot_path = absolute_snapshot_dir
-+        .join(snapshot_name)
-+        .canonicalize()
-+        .map_err(|_| StorageError::not_found(format!("Snapshot {snapshot_name}")))?;
-+
-+    if !absolute_snapshot_path.starts_with(absolute_snapshot_dir) {
-+        return Err(StorageError::not_found(format!("Snapshot {snapshot_name}")));
-     }
--    Ok(snapshot_path)
-+
-+    if !absolute_snapshot_path.exists() {
-+        return Err(StorageError::not_found(format!("Snapshot {snapshot_name}")));
-+    }
-+
-+    Ok(absolute_snapshot_path)
- }
- 
- pub async fn do_delete_full_snapshot(
diff --git a/pkgs/servers/search/qdrant/Cargo.lock b/pkgs/servers/search/qdrant/Cargo.lock
index bafcd96575f7..4cdac0d8b37c 100644
--- a/pkgs/servers/search/qdrant/Cargo.lock
+++ b/pkgs/servers/search/qdrant/Cargo.lock
@@ -21,9 +21,9 @@ dependencies = [
 
 [[package]]
 name = "actix-cors"
-version = "0.6.5"
+version = "0.7.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0346d8c1f762b41b458ed3145eea914966bb9ad20b9be0d6d463b20d45586370"
+checksum = "f9e772b3bcafe335042b5db010ab7c09013dad6eac4915c91d8d50902769f331"
 dependencies = [
  "actix-utils",
  "actix-web",
@@ -36,16 +36,15 @@ dependencies = [
 
 [[package]]
 name = "actix-files"
-version = "0.6.2"
+version = "0.6.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d832782fac6ca7369a70c9ee9a20554623c5e51c76e190ad151780ebea1cf689"
+checksum = "bf0bdd6ff79de7c9a021f5d9ea79ce23e108d8bfc9b49b5b4a2cf6fad5a35212"
 dependencies = [
  "actix-http",
  "actix-service",
  "actix-utils",
  "actix-web",
- "askama_escape",
- "bitflags 1.3.2",
+ "bitflags 2.4.1",
  "bytes",
  "derive_more",
  "futures-core",
@@ -55,20 +54,21 @@ dependencies = [
  "mime_guess",
  "percent-encoding",
  "pin-project-lite",
+ "v_htmlescape",
 ]
 
 [[package]]
 name = "actix-http"
-version = "3.4.0"
+version = "3.6.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a92ef85799cba03f76e4f7c10f533e66d87c9a7e7055f3391f09000ad8351bc9"
+checksum = "d223b13fd481fc0d1f83bb12659ae774d9e3601814c68a0bc539731698cca743"
 dependencies = [
  "actix-codec",
  "actix-rt",
  "actix-service",
  "actix-tls",
  "actix-utils",
- "ahash 0.8.5",
+ "ahash",
  "base64 0.21.0",
  "bitflags 2.4.1",
  "brotli",
@@ -78,8 +78,8 @@ dependencies = [
  "encoding_rs",
  "flate2",
  "futures-core",
- "h2",
- "http",
+ "h2 0.3.26",
+ "http 0.2.9",
  "httparse",
  "httpdate",
  "itoa",
@@ -94,7 +94,7 @@ dependencies = [
  "tokio",
  "tokio-util",
  "tracing",
- "zstd 0.12.2+zstd.1.5.2",
+ "zstd 0.13.0",
 ]
 
 [[package]]
@@ -142,7 +142,7 @@ dependencies = [
  "parse-size",
  "proc-macro2",
  "quote",
- "syn 2.0.32",
+ "syn 2.0.48",
 ]
 
 [[package]]
@@ -152,7 +152,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "d66ff4d247d2b160861fa2866457e85706833527840e4133f8f49aa423a38799"
 dependencies = [
  "bytestring",
- "http",
+ "http 0.2.9",
  "regex",
  "serde",
  "tracing",
@@ -199,9 +199,9 @@ dependencies = [
 
 [[package]]
 name = "actix-tls"
-version = "3.1.0"
+version = "3.3.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a70bd48b6604191a700372f60bdc997db560eff5e4d41a7f00664390b5228b38"
+checksum = "d4cce60a2f2b477bc72e5cde0af1812a6e82d8fd85b5570a5dcf2a5bf2c5be5f"
 dependencies = [
  "actix-rt",
  "actix-service",
@@ -209,11 +209,11 @@ dependencies = [
  "futures-core",
  "impl-more",
  "pin-project-lite",
+ "rustls-pki-types",
  "tokio",
- "tokio-rustls",
+ "tokio-rustls 0.25.0",
  "tokio-util",
  "tracing",
- "webpki-roots 0.25.2",
 ]
 
 [[package]]
@@ -228,9 +228,9 @@ dependencies = [
 
 [[package]]
 name = "actix-web"
-version = "4.4.0"
+version = "4.5.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0e4a5b5e29603ca8c94a77c65cf874718ceb60292c5a5c3e5f4ace041af462b9"
+checksum = "43a6556ddebb638c2358714d853257ed226ece6023ef9364f23f0c70737ea984"
 dependencies = [
  "actix-codec",
  "actix-http",
@@ -242,7 +242,7 @@ dependencies = [
  "actix-tls",
  "actix-utils",
  "actix-web-codegen",
- "ahash 0.8.5",
+ "ahash",
  "bytes",
  "bytestring",
  "cfg-if",
@@ -280,17 +280,14 @@ dependencies = [
 ]
 
 [[package]]
-name = "actix-web-httpauth"
-version = "0.8.1"
+name = "actix-web-extras"
+version = "0.1.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1d613edf08a42ccc6864c941d30fe14e1b676a77d16f1dbadc1174d065a0a775"
+checksum = "ef1dfa234e9b71ed142e54b26b4cc9e13ef4ac563cf1a2be810b0c3d057781ea"
 dependencies = [
- "actix-utils",
  "actix-web",
- "base64 0.21.0",
  "futures-core",
  "futures-util",
- "log",
  "pin-project-lite",
 ]
 
@@ -344,33 +341,23 @@ dependencies = [
 
 [[package]]
 name = "ahash"
-version = "0.7.7"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5a824f2aa7e75a0c98c5a504fceb80649e9c35265d44525b5f94de4771a395cd"
-dependencies = [
- "getrandom 0.2.11",
- "once_cell",
- "version_check",
-]
-
-[[package]]
-name = "ahash"
-version = "0.8.5"
+version = "0.8.11"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "cd7d5a2cecb58716e47d67d5703a249964b14c7be1ec3cad3affc295b2d1c35d"
+checksum = "e89da841a80418a9b391ebaea17f5c112ffaaa96f621d2c285b5174da76b9011"
 dependencies = [
  "cfg-if",
  "getrandom 0.2.11",
  "once_cell",
+ "serde",
  "version_check",
  "zerocopy",
 ]
 
 [[package]]
 name = "aho-corasick"
-version = "1.0.2"
+version = "1.1.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "43f6cb1bf222025340178f382c426f13757b2960e89779dfcb319c32542a5a41"
+checksum = "b2969dcb958b36655471fc61f7e416fa76033bdd4bfed0678d8fee1e2d07a1f0"
 dependencies = [
  "memchr",
 ]
@@ -419,9 +406,9 @@ checksum = "4b46cbb362ab8752921c97e041f5e366ee6297bd428a31275b9fcf1e380f7299"
 
 [[package]]
 name = "anstream"
-version = "0.6.4"
+version = "0.6.11"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2ab91ebe16eb252986481c5b62f6098f3b698a45e34b5b98200cf20dd2484a44"
+checksum = "6e2e1ebcb11de5c03c67de28a7df593d32191b44939c482e97702baaaa6ab6a5"
 dependencies = [
  "anstyle",
  "anstyle-parse",
@@ -433,9 +420,9 @@ dependencies = [
 
 [[package]]
 name = "anstyle"
-version = "1.0.0"
+version = "1.0.6"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "41ed9a86bf92ae6580e0a31281f65a1b1d867c0cc68d5346e2ae128dddfa6a7d"
+checksum = "8901269c6307e8d93993578286ac0edf7f195079ffff5ebdeea6a59ffb7e36bc"
 
 [[package]]
 name = "anstyle-parse"
@@ -473,22 +460,21 @@ checksum = "34fde25430d87a9388dadbe6e34d7f72a462c8b43ac8d309b42b0a8505d7e2a5"
 
 [[package]]
 name = "anyhow"
-version = "1.0.75"
+version = "1.0.82"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a4668cab20f66d8d020e1fbc0ebe47217433c1b6c8f2040faf858554e394ace6"
+checksum = "f538837af36e6f6a9be0faa67f9a314f8119e4e4b5867c6ab40ed60360142519"
 
 [[package]]
 name = "api"
-version = "1.7.4"
+version = "1.9.0"
 dependencies = [
  "chrono",
  "common",
- "env_logger",
  "log",
  "parking_lot",
  "prost 0.11.9",
  "prost-build 0.11.9",
- "prost-types 0.11.9",
+ "prost-wkt-types",
  "rand 0.8.5",
  "schemars",
  "segment",
@@ -499,7 +485,6 @@ dependencies = [
  "tokio",
  "tonic",
  "tonic-build",
- "tower",
  "tracing",
  "uuid",
  "validator",
@@ -516,9 +501,9 @@ dependencies = [
 
 [[package]]
 name = "arc-swap"
-version = "1.6.0"
+version = "1.7.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "bddcadddf5e9015d310179a59bb28c4d4b9920ad0f11e8e14dbadf654890c9a6"
+checksum = "69f7f8c3906b62b754cd5326047894316021dcfe5a194c8ea52bdd94934a3457"
 
 [[package]]
 name = "arrayvec"
@@ -536,12 +521,6 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "8da52d66c7071e2e3fa2a1e5c6d088fec47b593032b254f5e980de8ea54454d6"
 
 [[package]]
-name = "askama_escape"
-version = "0.10.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "619743e34b5ba4e9703bba34deac3427c72507c7159f5fd030aea8cac0cfe341"
-
-[[package]]
 name = "async-stream"
 version = "0.3.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -564,22 +543,13 @@ dependencies = [
 
 [[package]]
 name = "async-trait"
-version = "0.1.74"
+version = "0.1.80"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a66537f1bb974b254c98ed142ff995236e81b9d0fe4db0575f46612cb15eb0f9"
+checksum = "c6fa2087f2753a7da8cc1c0dbfcf89579dd57458e36769de5ac750b4671737ca"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.32",
-]
-
-[[package]]
-name = "atomic-polyfill"
-version = "0.1.11"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e3ff7eb3f316534d83a8a2c3d1674ace8a5a71198eba31e2e2b597833f699b28"
-dependencies = [
- "critical-section",
+ "syn 2.0.48",
 ]
 
 [[package]]
@@ -590,13 +560,13 @@ checksum = "41e67cd8309bbd06cd603a9e693a784ac2e5d1e955f11286e355089fcab3047c"
 
 [[package]]
 name = "atomicwrites"
-version = "0.4.2"
+version = "0.4.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f4d45f362125ed144544e57b0ec6de8fd6a296d41a6252fc4a20c0cf12e9ed3a"
+checksum = "fc7b2dbe9169059af0f821e811180fddc971fc210c776c133c7819ccd6e478db"
 dependencies = [
- "rustix 0.38.21",
+ "rustix 0.38.31",
  "tempfile",
- "windows-sys 0.48.0",
+ "windows-sys 0.52.0",
 ]
 
 [[package]]
@@ -616,9 +586,9 @@ dependencies = [
  "bitflags 1.3.2",
  "bytes",
  "futures-util",
- "http",
- "http-body",
- "hyper",
+ "http 0.2.9",
+ "http-body 0.4.5",
+ "hyper 0.14.26",
  "itoa",
  "matchit",
  "memchr",
@@ -642,8 +612,8 @@ dependencies = [
  "async-trait",
  "bytes",
  "futures-util",
- "http",
- "http-body",
+ "http 0.2.9",
+ "http-body 0.4.5",
  "mime",
  "rustversion",
  "tower-layer",
@@ -678,6 +648,12 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "a4a4ddaa51a5bc52a6948f74c06d20aaaddb71924eab79b8c97a8c556e942d6a"
 
 [[package]]
+name = "base64"
+version = "0.22.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "9475866fec1451be56a3c2400fd081ff546538961565ccb5b7142cbd22bc7a51"
+
+[[package]]
 name = "base64ct"
 version = "1.6.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -694,23 +670,22 @@ dependencies = [
 
 [[package]]
 name = "bindgen"
-version = "0.65.1"
+version = "0.69.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "cfdf7b466f9a4903edc73f95d6d2bcd5baf8ae620638762244d3f60143643cc5"
+checksum = "a00dc851838a2120612785d195287475a3ac45514741da670b735818822129a0"
 dependencies = [
- "bitflags 1.3.2",
+ "bitflags 2.4.1",
  "cexpr",
  "clang-sys",
+ "itertools 0.12.1",
  "lazy_static",
  "lazycell",
- "peeking_take_while",
- "prettyplease 0.2.4",
  "proc-macro2",
  "quote",
  "regex",
  "rustc-hash",
  "shlex",
- "syn 2.0.32",
+ "syn 2.0.48",
 ]
 
 [[package]]
@@ -739,6 +714,18 @@ name = "bitflags"
 version = "2.4.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "327762f6e5a765692301e5bb513e0d9fef63be86bbc14528052b1cd3e6f03e07"
+dependencies = [
+ "serde",
+]
+
+[[package]]
+name = "bitpacking"
+version = "0.9.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "4c1d3e2bfd8d06048a179f7b17afc3188effa10385e7b00dc65af6aae732ea92"
+dependencies = [
+ "crunchy",
+]
 
 [[package]]
 name = "bitvec"
@@ -806,15 +793,15 @@ checksum = "aaa3a8d9a1ca92e282c96a32d6511b695d7d994d1d102ba85d279f9b2756947f"
 
 [[package]]
 name = "byteorder"
-version = "1.4.3"
+version = "1.5.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "14c189c53d098945499cdfa7ecc63567cf3886b3332b312a5b4585d8d3a6a610"
+checksum = "1fd0f2584146f6f2ef48085050886acf353beff7305ebd1ae69500e27c67f64b"
 
 [[package]]
 name = "bytes"
-version = "1.3.0"
+version = "1.6.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "dfb24e866b15a1af2a1b663f10c6b6b8f397a84aadb828f12e5b289ec23a3a3c"
+checksum = "514de17de45fdb8dc022b1a7975556c53c86f9f0aa5f534b98977b171857c2c9"
 
 [[package]]
 name = "bytestring"
@@ -910,9 +897,9 @@ dependencies = [
 
 [[package]]
 name = "charabia"
-version = "0.8.5"
+version = "0.8.8"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ffb924701d850fbf0331302e7f9715c04e494b4b9bebb38ac48bdd30924e1936"
+checksum = "60dc1a562fc8cb53d552d371758a4ecd76d15cc7489d2b968529cd9cadcbd854"
 dependencies = [
  "aho-corasick",
  "cow-utils",
@@ -937,9 +924,9 @@ dependencies = [
 
 [[package]]
 name = "chrono"
-version = "0.4.31"
+version = "0.4.38"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7f2c685bad3eb3d45a01354cedb7d5faa66194d1d58ba6e267a8de788f79db38"
+checksum = "a21f936df1771bf62b77f047b726c4625ff2e8aa607c01ec06e5a05bd8463401"
 dependencies = [
  "android-tzdata",
  "iana-time-zone",
@@ -947,7 +934,7 @@ dependencies = [
  "num-traits",
  "serde",
  "wasm-bindgen",
- "windows-targets 0.48.0",
+ "windows-targets 0.52.0",
 ]
 
 [[package]]
@@ -1009,9 +996,9 @@ dependencies = [
 
 [[package]]
 name = "clap"
-version = "4.4.11"
+version = "4.5.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "bfaff671f6b22ca62406885ece523383b9b64022e341e53e009a62ebc47a45f2"
+checksum = "90bc066a67923782aa8515dbaea16946c5bcc5addbd668bb80af688e53e548a0"
 dependencies = [
  "clap_builder",
  "clap_derive",
@@ -1019,33 +1006,33 @@ dependencies = [
 
 [[package]]
 name = "clap_builder"
-version = "4.4.11"
+version = "4.5.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a216b506622bb1d316cd51328dce24e07bdff4a6128a47c7e7fad11878d5adbb"
+checksum = "ae129e2e766ae0ec03484e609954119f123cc1fe650337e155d03b022f24f7b4"
 dependencies = [
  "anstream",
  "anstyle",
  "clap_lex",
- "strsim",
+ "strsim 0.11.0",
 ]
 
 [[package]]
 name = "clap_derive"
-version = "4.4.7"
+version = "4.5.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "cf9804afaaf59a91e75b022a30fb7229a7901f60c755489cc61c9b423b836442"
+checksum = "528131438037fd55894f62d6e9f068b8f45ac57ffa77517819645d10aed04f64"
 dependencies = [
- "heck",
+ "heck 0.5.0",
  "proc-macro2",
  "quote",
- "syn 2.0.32",
+ "syn 2.0.48",
 ]
 
 [[package]]
 name = "clap_lex"
-version = "0.6.0"
+version = "0.7.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "702fc72eb24e5a1e48ce58027a675bc24edd52096d5397d4aea7c6dd9eca0bd1"
+checksum = "98cc8fbded0c607b7ba9dd60cd98df59af97e84d24e49c8557331cfc26d301ce"
 
 [[package]]
 name = "codespan-reporting"
@@ -1063,27 +1050,34 @@ version = "0.4.2"
 dependencies = [
  "actix-web-validator",
  "api",
+ "approx",
  "arc-swap",
  "async-trait",
  "atomicwrites",
+ "bytes",
  "cancel",
  "chrono",
  "common",
  "criterion",
  "env_logger",
+ "fnv",
  "fs_extra",
  "futures",
  "hashring",
+ "indexmap 2.2.6",
  "indicatif",
  "io",
- "itertools 0.12.0",
+ "issues",
+ "itertools 0.12.1",
+ "lazy_static",
  "log",
  "merge",
- "num_cpus",
  "ordered-float 4.2.0",
  "parking_lot",
  "pprof",
+ "proptest",
  "rand 0.8.5",
+ "ringbuffer",
  "rmp-serde",
  "rstest",
  "schemars",
@@ -1092,7 +1086,9 @@ dependencies = [
  "serde",
  "serde_cbor",
  "serde_json",
+ "sha2",
  "sparse",
+ "strum",
  "tar",
  "tempfile",
  "thiserror",
@@ -1100,7 +1096,6 @@ dependencies = [
  "tokio",
  "tokio-util",
  "tonic",
- "tower",
  "tracing",
  "url",
  "uuid",
@@ -1128,18 +1123,25 @@ dependencies = [
 name = "common"
 version = "0.0.0"
 dependencies = [
+ "lazy_static",
+ "num_cpus",
  "ordered-float 4.2.0",
+ "semver",
  "serde",
+ "thiserror",
+ "thread-priority",
+ "tokio",
  "validator",
 ]
 
 [[package]]
 name = "config"
-version = "0.13.4"
+version = "0.14.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "23738e11972c7643e4ec947840fc463b6a571afcd3e735bdfce7d03c7a784aca"
+checksum = "7328b20597b53c2454f0b1919720c25c7339051c02b72b7e05409e00b14132be"
 dependencies = [
  "async-trait",
+ "convert_case 0.6.0",
  "json5",
  "lazy_static",
  "nom",
@@ -1148,7 +1150,7 @@ dependencies = [
  "rust-ini",
  "serde",
  "serde_json",
- "toml",
+ "toml 0.8.9",
  "yaml-rust",
 ]
 
@@ -1204,6 +1206,26 @@ dependencies = [
 ]
 
 [[package]]
+name = "const-random"
+version = "0.1.17"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "5aaf16c9c2c612020bcfd042e170f6e32de9b9d75adb5277cdbbd2e2c8c8299a"
+dependencies = [
+ "const-random-macro",
+]
+
+[[package]]
+name = "const-random-macro"
+version = "0.1.16"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "f9d839f2a20b0aee515dc581a6172f2321f96cab76c1a38a4c584a194955390e"
+dependencies = [
+ "getrandom 0.2.11",
+ "once_cell",
+ "tiny-keccak",
+]
+
+[[package]]
 name = "constant_time_eq"
 version = "0.1.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -1222,6 +1244,15 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "6245d59a3e82a7fc217c5828a6692dbc6dfb63a0c8c90495621f7b9d79704a0e"
 
 [[package]]
+name = "convert_case"
+version = "0.6.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "ec182b0ca2f35d8fc196cf3404988fd8b8c739a4d270ff118a398feb0cbec1ca"
+dependencies = [
+ "unicode-segmentation",
+]
+
+[[package]]
 name = "cookie"
 version = "0.16.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -1233,16 +1264,6 @@ dependencies = [
 ]
 
 [[package]]
-name = "core-foundation"
-version = "0.9.4"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "91e195e091a93c46f7102ec7818a2aa394e1e1771c3ab4825963fa03e45afb8f"
-dependencies = [
- "core-foundation-sys",
- "libc",
-]
-
-[[package]]
 name = "core-foundation-sys"
 version = "0.8.6"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -1274,9 +1295,9 @@ dependencies = [
 
 [[package]]
 name = "crc32c"
-version = "0.6.4"
+version = "0.6.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d8f48d60e5b4d2c53d5c2b1d8a58c849a70ae5e5509b08a48d047e3b65714a74"
+checksum = "89254598aa9b9fa608de44b3ae54c810f0f06d755e24c50177f1f8f31ff50ce2"
 dependencies = [
  "rustc_version",
 ]
@@ -1327,12 +1348,6 @@ dependencies = [
 ]
 
 [[package]]
-name = "critical-section"
-version = "1.1.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6548a0ad5d2549e111e1f6a11a6c2e2d00ce6a3dafe22948d67c2b443f775e52"
-
-[[package]]
 name = "crossbeam-channel"
 version = "0.5.8"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -1376,6 +1391,12 @@ dependencies = [
 ]
 
 [[package]]
+name = "crunchy"
+version = "0.2.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "7a81dae078cea95a014a339291cec439d2f232ebe854a9d672b796c6afafa9b7"
+
+[[package]]
 name = "crypto-common"
 version = "0.1.6"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -1387,9 +1408,9 @@ dependencies = [
 
 [[package]]
 name = "csv"
-version = "1.2.2"
+version = "1.3.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "626ae34994d3d8d668f4269922248239db4ae42d538b14c398b74a52208e8086"
+checksum = "ac574ff4d437a7b5ad237ef331c17ccca63c46479e5b5453eb8e10bb99a759fe"
 dependencies = [
  "csv-core",
  "itoa",
@@ -1399,9 +1420,9 @@ dependencies = [
 
 [[package]]
 name = "csv-core"
-version = "0.1.10"
+version = "0.1.11"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2b2466559f260f48ad25fe6317b3c8dac77b5bdb5763ac7d9d6103530663bc90"
+checksum = "5efa2b3d7902f4b634a20cae3c9c4e6209dc4779feb6863329607560143efa70"
 dependencies = [
  "memchr",
 ]
@@ -1470,8 +1491,8 @@ dependencies = [
  "ident_case",
  "proc-macro2",
  "quote",
- "strsim",
- "syn 2.0.32",
+ "strsim 0.10.0",
+ "syn 2.0.48",
 ]
 
 [[package]]
@@ -1482,7 +1503,20 @@ checksum = "836a9bbc7ad63342d6d6e7b815ccab164bc77a2d95d84bc3117a8c0d5c98e2d5"
 dependencies = [
  "darling_core",
  "quote",
- "syn 2.0.32",
+ "syn 2.0.48",
+]
+
+[[package]]
+name = "dashmap"
+version = "5.5.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "978747c1d849a7d2ee5e8adc0159961c48fb7e5db2f06af6723b80123bb53856"
+dependencies = [
+ "cfg-if",
+ "hashbrown 0.14.2",
+ "lock_api",
+ "once_cell",
+ "parking_lot_core",
 ]
 
 [[package]]
@@ -1500,7 +1534,7 @@ version = "0.99.17"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "4fb810d30a7c1953f91334de7244731fc3f3c10d7fe163338a35b9f640960321"
 dependencies = [
- "convert_case",
+ "convert_case 0.4.0",
  "proc-macro2",
  "quote",
  "rustc_version",
@@ -1509,15 +1543,15 @@ dependencies = [
 
 [[package]]
 name = "deunicode"
-version = "1.3.3"
+version = "1.4.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8c1bba4f227a4a53d12b653f50ca7bf10c9119ae2aba56aff9e0338b5c98f36a"
+checksum = "b6e854126756c496b8c81dec88f9a706b15b875c5849d4097a3854476b9fdf94"
 
 [[package]]
 name = "digest"
-version = "0.10.6"
+version = "0.10.7"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8168378f4e5023e7218c89c891c0fd8ecdb5e5e4f18cb78f38cf245dd021e76f"
+checksum = "9ed9a281f7bc9b7576e61468ba615a66a5c8cfdff42420a70aa82701a3b1e292"
 dependencies = [
  "block-buffer",
  "crypto-common",
@@ -1526,9 +1560,12 @@ dependencies = [
 
 [[package]]
 name = "dlv-list"
-version = "0.3.0"
+version = "0.5.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0688c2a7f92e427f44895cd63841bff7b29f8d7a1648b9e7e07a4a365b2e1257"
+checksum = "442039f5147480ba31067cb00ada1adae6892028e40e45fc5de7b7df6dcc1b5f"
+dependencies = [
+ "const-random",
+]
 
 [[package]]
 name = "docopt"
@@ -1539,7 +1576,7 @@ dependencies = [
  "lazy_static",
  "regex",
  "serde",
- "strsim",
+ "strsim 0.10.0",
 ]
 
 [[package]]
@@ -1560,9 +1597,9 @@ dependencies = [
 
 [[package]]
 name = "either"
-version = "1.8.1"
+version = "1.10.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7fcaabb2fef8c910e7f4c7ce9f67a1283a1715879a7c230ca9d6d1ae31f16d91"
+checksum = "11157ac094ffbdde99aa67b23417ebdd801842852b500e395a45a9c0aac03e4a"
 
 [[package]]
 name = "encode_unicode"
@@ -1636,9 +1673,9 @@ checksum = "a246d82be1c9d791c5dfde9a2bd045fc3cbba3fa2b11ad558f27d01712f00569"
 
 [[package]]
 name = "encoding_rs"
-version = "0.8.32"
+version = "0.8.33"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "071a31f4ee85403370b58aca746f01041ede6f0da2730960ad001edc2b71b394"
+checksum = "7268b386296a025e474d5140678f75d6de9493ae55a5d709eeb9dd08149945e1"
 dependencies = [
  "cfg-if",
 ]
@@ -1653,16 +1690,26 @@ dependencies = [
 ]
 
 [[package]]
+name = "env_filter"
+version = "0.1.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "a009aa4810eb158359dda09d0c87378e4bbb89b5a801f016885a4707ba24f7ea"
+dependencies = [
+ "log",
+ "regex",
+]
+
+[[package]]
 name = "env_logger"
-version = "0.10.1"
+version = "0.11.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "95b3f3e67048839cb0d0781f445682a35113da7121f7c949db0e2be96a4fbece"
+checksum = "38b35839ba51819680ba087cd351788c9a3c476841207e0b8cee0b04722343b9"
 dependencies = [
+ "anstream",
+ "anstyle",
+ "env_filter",
  "humantime",
- "is-terminal",
  "log",
- "regex",
- "termcolor",
 ]
 
 [[package]]
@@ -1682,31 +1729,29 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "5443807d6dff69373d433ab9ef5378ad8df50ca6298caf15de6e52e24aaf54d5"
 
 [[package]]
-name = "errno"
-version = "0.3.1"
+name = "erased-serde"
+version = "0.4.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4bcfec3a70f97c962c307b2d2c56e358cf1d00b558d74262b5f929ee8cc7e73a"
+checksum = "55d05712b2d8d88102bc9868020c9e5c7a1f5527c452b9b97450a1d006140ba7"
 dependencies = [
- "errno-dragonfly",
- "libc",
- "windows-sys 0.48.0",
+ "serde",
 ]
 
 [[package]]
-name = "errno-dragonfly"
-version = "0.1.2"
+name = "errno"
+version = "0.3.8"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "aa68f1b12764fab894d2755d2518754e71b4fd80ecfb822714a1206c2aab39bf"
+checksum = "a258e46cdc063eb8519c00b9fc845fc47bcfca4130e2f08e88665ceda8474245"
 dependencies = [
- "cc",
  "libc",
+ "windows-sys 0.52.0",
 ]
 
 [[package]]
 name = "fastrand"
-version = "2.0.0"
+version = "2.0.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6999dc1837253364c2ebb0704ba97994bd874e8f195d665c50b7548f6ea92764"
+checksum = "25cbce373ec4653f1a01a31e8a5e5ec0c622dc27ff9c4e6606eefef5cbbed4a5"
 
 [[package]]
 name = "filetime"
@@ -1740,9 +1785,9 @@ checksum = "0ce7134b9999ecaf8bcd65542e436736ef32ddca1b3e06094cb6ec5755203b80"
 
 [[package]]
 name = "flate2"
-version = "1.0.26"
+version = "1.0.28"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3b9429470923de8e8cbd4d2dc513535400b4b3fef0319fb5c4e1f520a7bef743"
+checksum = "46303f565772937ffe1d394a4fac6f411c6013172fadde9dcdb1e147a086940e"
 dependencies = [
  "crc32fast",
  "miniz_oxide 0.7.1",
@@ -1778,7 +1823,7 @@ checksum = "1a5c6c585bc94aaf2c7b51dd4c2ba22680844aba4c687be581871a6f518c5742"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.32",
+ "syn 2.0.48",
 ]
 
 [[package]]
@@ -1798,12 +1843,12 @@ dependencies = [
 
 [[package]]
 name = "fs4"
-version = "0.7.0"
+version = "0.8.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "29f9df8a11882c4e3335eb2d18a0137c505d9ca927470b0cac9c6f0ae07d28f7"
+checksum = "21dabded2e32cd57ded879041205c60a4a4c4bab47bd0fd2fa8b01f30849f02b"
 dependencies = [
- "rustix 0.38.21",
- "windows-sys 0.48.0",
+ "rustix 0.38.31",
+ "windows-sys 0.52.0",
 ]
 
 [[package]]
@@ -1832,9 +1877,9 @@ checksum = "e6d5a32815ae3f33302d95fdcb2ce17862f8c65363dcfd29360480ba1001fc9c"
 
 [[package]]
 name = "futures"
-version = "0.3.29"
+version = "0.3.30"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "da0290714b38af9b4a7b094b8a37086d1b4e61f2df9122c3cad2577669145335"
+checksum = "645c6916888f6cb6350d2550b80fb63e734897a8498abe35cfb732b6487804b0"
 dependencies = [
  "futures-channel",
  "futures-core",
@@ -1847,9 +1892,9 @@ dependencies = [
 
 [[package]]
 name = "futures-channel"
-version = "0.3.29"
+version = "0.3.30"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ff4dd66668b557604244583e3e1e1eada8c5c2e96a6d0d6653ede395b78bbacb"
+checksum = "eac8f7d7865dcb88bd4373ab671c8cf4508703796caa2b1985a9ca867b3fcb78"
 dependencies = [
  "futures-core",
  "futures-sink",
@@ -1857,15 +1902,15 @@ dependencies = [
 
 [[package]]
 name = "futures-core"
-version = "0.3.29"
+version = "0.3.30"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "eb1d22c66e66d9d72e1758f0bd7d4fd0bee04cad842ee34587d68c07e45d088c"
+checksum = "dfc6580bb841c5a68e9ef15c77ccc837b40a7504914d52e47b8b0e9bbda25a1d"
 
 [[package]]
 name = "futures-executor"
-version = "0.3.29"
+version = "0.3.30"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0f4fb8693db0cf099eadcca0efe2a5a22e4550f98ed16aba6c48700da29597bc"
+checksum = "a576fc72ae164fca6b9db127eaa9a9dda0d61316034f33a0a0d4eda41f02b01d"
 dependencies = [
  "futures-core",
  "futures-task",
@@ -1874,32 +1919,32 @@ dependencies = [
 
 [[package]]
 name = "futures-io"
-version = "0.3.29"
+version = "0.3.30"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8bf34a163b5c4c52d0478a4d757da8fb65cabef42ba90515efee0f6f9fa45aaa"
+checksum = "a44623e20b9681a318efdd71c299b6b222ed6f231972bfe2f224ebad6311f0c1"
 
 [[package]]
 name = "futures-macro"
-version = "0.3.29"
+version = "0.3.30"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "53b153fd91e4b0147f4aced87be237c98248656bb01050b96bf3ee89220a8ddb"
+checksum = "87750cf4b7a4c0625b1529e4c543c2182106e4dedc60a2a6455e00d212c489ac"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.32",
+ "syn 2.0.48",
 ]
 
 [[package]]
 name = "futures-sink"
-version = "0.3.29"
+version = "0.3.30"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e36d3378ee38c2a36ad710c5d30c2911d752cb941c00c72dbabfb786a7970817"
+checksum = "9fb8e00e87438d937621c1c6269e53f536c14d3fbd6a042bb24879e57d474fb5"
 
 [[package]]
 name = "futures-task"
-version = "0.3.29"
+version = "0.3.30"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "efd193069b0ddadc69c46389b740bbccdd97203899b48d09c5f7969591d6bae2"
+checksum = "38d84fa142264698cdce1a9f9172cf383a0c82de1bddcf3092901442c4097004"
 
 [[package]]
 name = "futures-timer"
@@ -1909,9 +1954,9 @@ checksum = "e64b03909df88034c26dc1547e8970b91f98bdb65165d6a4e9110d94263dbb2c"
 
 [[package]]
 name = "futures-util"
-version = "0.3.29"
+version = "0.3.30"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a19526d624e703a3179b3d322efec918b6246ea0fa51d41124525f00f1cc8104"
+checksum = "3d6401deb83407ab3da39eba7e33987a73c3df0c82b4bb5813ee871c19c41d48"
 dependencies = [
  "futures-channel",
  "futures-core",
@@ -1944,7 +1989,7 @@ dependencies = [
  "libc",
  "log",
  "rustversion",
- "windows",
+ "windows 0.48.0",
 ]
 
 [[package]]
@@ -1958,10 +2003,21 @@ dependencies = [
 ]
 
 [[package]]
+name = "generic-tests"
+version = "0.1.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "eeb39ec0dacc89541b6eced815ab9e97f6b7d44078628abb090c6437763fd050"
+dependencies = [
+ "proc-macro2",
+ "quote",
+ "syn 1.0.107",
+]
+
+[[package]]
 name = "geo"
-version = "0.27.0"
+version = "0.28.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4841b40fdbccd4b7042bd6195e4de91da54af34c50632e371bcbfcdfb558b873"
+checksum = "f811f663912a69249fa620dcd2a005db7254529da2d8a0b23942e81f47084501"
 dependencies = [
  "earcutr",
  "float_next_after",
@@ -1976,9 +2032,9 @@ dependencies = [
 
 [[package]]
 name = "geo-types"
-version = "0.7.12"
+version = "0.7.13"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "567495020b114f1ce9bed679b29975aa0bfae06ac22beacd5cfde5dabe7b05d6"
+checksum = "9ff16065e5720f376fbced200a5ae0f47ace85fd70b7e54269790281353b6d61"
 dependencies = [
  "approx",
  "num-traits",
@@ -1997,9 +2053,9 @@ dependencies = [
 
 [[package]]
 name = "geohash"
-version = "0.13.0"
+version = "0.13.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8a18b809b13fa4f1c9ccfd94179cc429021a3517856b5160422c3d810c1e8546"
+checksum = "0fb94b1a65401d6cbf22958a9040aa364812c26674f841bee538b12c135db1e6"
 dependencies = [
  "geo-types",
  "libm",
@@ -2032,8 +2088,10 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "fe9006bed769170c11f845cf00c7c1e9092aeb3f268e007c3e760ac68008070f"
 dependencies = [
  "cfg-if",
+ "js-sys",
  "libc",
  "wasi 0.11.0+wasi-snapshot-preview1",
+ "wasm-bindgen",
 ]
 
 [[package]]
@@ -2062,17 +2120,36 @@ checksum = "d2fabcfbdc87f4758337ca535fb41a6d701b65693ce38287d856d1674551ec9b"
 
 [[package]]
 name = "h2"
-version = "0.3.21"
+version = "0.3.26"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "91fc23aa11be92976ef4729127f1a74adf36d8436f7816b185d18df956790833"
+checksum = "81fe527a889e1532da5c525686d96d4c2e74cdd345badf8dfef9f6b39dd5f5e8"
 dependencies = [
  "bytes",
  "fnv",
  "futures-core",
  "futures-sink",
  "futures-util",
- "http",
- "indexmap 1.9.2",
+ "http 0.2.9",
+ "indexmap 2.2.6",
+ "slab",
+ "tokio",
+ "tokio-util",
+ "tracing",
+]
+
+[[package]]
+name = "h2"
+version = "0.4.4"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "816ec7294445779408f36fe57bc5b7fc1cf59664059096c65f905c1c61f58069"
+dependencies = [
+ "bytes",
+ "fnv",
+ "futures-core",
+ "futures-sink",
+ "futures-util",
+ "http 1.0.0",
+ "indexmap 2.2.6",
  "slab",
  "tokio",
  "tokio-util",
@@ -2087,9 +2164,9 @@ checksum = "eabb4a44450da02c90444cf74558da904edde8fb4e9035a9a6a4e15445af0bd7"
 
 [[package]]
 name = "hash32"
-version = "0.2.1"
+version = "0.3.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b0c35f58762feb77d74ebe43bdbc3210f09be9fe6742234d573bacc26ed92b67"
+checksum = "47d60b12902ba28e2730cd37e95b8c9223af2808df9e902d4df49588d1470606"
 dependencies = [
  "byteorder",
 ]
@@ -2099,9 +2176,12 @@ name = "hashbrown"
 version = "0.12.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "8a9ee70c43aaf417c914396645a0fa852624801b24ebb7ae78fe8272889ac888"
-dependencies = [
- "ahash 0.7.7",
-]
+
+[[package]]
+name = "hashbrown"
+version = "0.13.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "43a3c133739dddd0d2990f9a4bdf8eb4b21ef50e4851ca85ab661199821d510e"
 
 [[package]]
 name = "hashbrown"
@@ -2109,7 +2189,7 @@ version = "0.14.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "f93e7192158dbcda357bdec5fb5788eebf8bbac027f3f33e719d29135ae84156"
 dependencies = [
- "ahash 0.8.5",
+ "ahash",
  "allocator-api2",
 ]
 
@@ -2137,22 +2217,25 @@ dependencies = [
 
 [[package]]
 name = "heapless"
-version = "0.7.16"
+version = "0.8.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "db04bc24a18b9ea980628ecf00e6c0264f3c1426dac36c00cb49b6fbad8b0743"
+checksum = "0bfb9eb618601c89945a70e254898da93b13be0388091d42117462b265bb3fad"
 dependencies = [
- "atomic-polyfill",
  "hash32",
- "rustc_version",
- "spin 0.9.8",
  "stable_deref_trait",
 ]
 
 [[package]]
 name = "heck"
-version = "0.4.0"
+version = "0.4.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2540771e65fc8cb83cd6e8a237f70c319bd5c29f78ed1084ba5d50eeac86f7f9"
+checksum = "95505c38b4572b2d910cecb0281560f54b440a19336cbbcb27bf6ce6adc6f5a8"
+
+[[package]]
+name = "heck"
+version = "0.5.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "2304e00983f87ffb38b55b444b5e3b60a884b5d30c0fca7d82fe33449bbe55ea"
 
 [[package]]
 name = "hermit-abi"
@@ -2187,13 +2270,47 @@ dependencies = [
 ]
 
 [[package]]
+name = "http"
+version = "1.0.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "b32afd38673a8016f7c9ae69e5af41a58f81b1d31689040f2f1959594ce194ea"
+dependencies = [
+ "bytes",
+ "fnv",
+ "itoa",
+]
+
+[[package]]
 name = "http-body"
 version = "0.4.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "d5f38f16d184e36f2408a55281cd658ecbd3ca05cce6d6510a176eca393e26d1"
 dependencies = [
  "bytes",
- "http",
+ "http 0.2.9",
+ "pin-project-lite",
+]
+
+[[package]]
+name = "http-body"
+version = "1.0.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "1cac85db508abc24a2e48553ba12a996e87244a0395ce011e62b37158745d643"
+dependencies = [
+ "bytes",
+ "http 1.0.0",
+]
+
+[[package]]
+name = "http-body-util"
+version = "0.1.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "0475f8b2ac86659c21b64320d5d653f9efe42acd2a4e560073ec61a155a34f1d"
+dependencies = [
+ "bytes",
+ "futures-core",
+ "http 1.0.0",
+ "http-body 1.0.0",
  "pin-project-lite",
 ]
 
@@ -2204,6 +2321,16 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "21dec9db110f5f872ed9699c3ecf50cf16f423502706ba5c72462e28d3157573"
 
 [[package]]
+name = "http-serde"
+version = "2.0.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "7fb7239a6d49eda628c2dfdd7e982c59b0c3f0fb99ce45c4237f02a520030688"
+dependencies = [
+ "http 1.0.0",
+ "serde",
+]
+
+[[package]]
 name = "httparse"
 version = "1.8.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -2231,9 +2358,9 @@ dependencies = [
  "futures-channel",
  "futures-core",
  "futures-util",
- "h2",
- "http",
- "http-body",
+ "h2 0.3.26",
+ "http 0.2.9",
+ "http-body 0.4.5",
  "httparse",
  "httpdate",
  "itoa",
@@ -2246,16 +2373,40 @@ dependencies = [
 ]
 
 [[package]]
+name = "hyper"
+version = "1.2.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "186548d73ac615b32a73aafe38fb4f56c0d340e110e5a200bcadbaf2e199263a"
+dependencies = [
+ "bytes",
+ "futures-channel",
+ "futures-util",
+ "h2 0.4.4",
+ "http 1.0.0",
+ "http-body 1.0.0",
+ "httparse",
+ "itoa",
+ "pin-project-lite",
+ "smallvec",
+ "tokio",
+ "want",
+]
+
+[[package]]
 name = "hyper-rustls"
-version = "0.24.0"
+version = "0.26.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0646026eb1b3eea4cd9ba47912ea5ce9cc07713d105b1a14698f4e6433d348b7"
+checksum = "a0bea761b46ae2b24eb4aef630d8d1c398157b6fc29e6350ecf090a0b70c952c"
 dependencies = [
- "http",
- "hyper",
- "rustls",
+ "futures-util",
+ "http 1.0.0",
+ "hyper 1.2.0",
+ "hyper-util",
+ "rustls 0.22.4",
+ "rustls-pki-types",
  "tokio",
- "tokio-rustls",
+ "tokio-rustls 0.25.0",
+ "tower-service",
 ]
 
 [[package]]
@@ -2264,13 +2415,33 @@ version = "0.4.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "bbb958482e8c7be4bc3cf272a766a2b0bf1a6755e7a6ae777f017a31d11b13b1"
 dependencies = [
- "hyper",
+ "hyper 0.14.26",
  "pin-project-lite",
  "tokio",
  "tokio-io-timeout",
 ]
 
 [[package]]
+name = "hyper-util"
+version = "0.1.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "ca38ef113da30126bbff9cd1705f9273e15d45498615d138b0c20279ac7a76aa"
+dependencies = [
+ "bytes",
+ "futures-channel",
+ "futures-util",
+ "http 1.0.0",
+ "http-body 1.0.0",
+ "hyper 1.2.0",
+ "pin-project-lite",
+ "socket2 0.5.5",
+ "tokio",
+ "tower",
+ "tower-service",
+ "tracing",
+]
+
+[[package]]
 name = "iana-time-zone"
 version = "0.1.53"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -2345,19 +2516,20 @@ dependencies = [
 
 [[package]]
 name = "indexmap"
-version = "2.0.1"
+version = "2.2.6"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ad227c3af19d4914570ad36d30409928b75967c298feb9ea1969db3a610bb14e"
+checksum = "168fb715dda47215e360912c096649d23d58bf392ac62f73919e831745e40f26"
 dependencies = [
  "equivalent",
  "hashbrown 0.14.2",
+ "serde",
 ]
 
 [[package]]
 name = "indicatif"
-version = "0.17.6"
+version = "0.17.8"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0b297dc40733f23a0e52728a58fa9489a5b7638a324932de16b41adc3ef80730"
+checksum = "763a5a8f45087d6bcea4222e7b72c291a054edf80e4ef6efd2a4979878c7bea3"
 dependencies = [
  "console",
  "instant",
@@ -2372,8 +2544,8 @@ version = "0.11.18"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "abfb2e51b23c338595ae0b6bdaaa7a4a8b860b8d788a4331cb07b50fe5dea71b"
 dependencies = [
- "ahash 0.8.5",
- "indexmap 2.0.1",
+ "ahash",
+ "indexmap 2.2.6",
  "is-terminal",
  "itoa",
  "log",
@@ -2403,6 +2575,12 @@ dependencies = [
 ]
 
 [[package]]
+name = "inventory"
+version = "0.3.14"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "c8573b2b1fb643a372c73b23f4da5f888677feef3305146d68a539250a9bccc7"
+
+[[package]]
 name = "io"
 version = "0.0.0"
 dependencies = [
@@ -2426,9 +2604,9 @@ dependencies = [
 
 [[package]]
 name = "io-uring"
-version = "0.6.2"
+version = "0.6.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "460648e47a07a43110fbfa2e0b14afb2be920093c31e5dccc50e49568e099762"
+checksum = "a9febecd4aebbe9c7c23c8e536e966805fdf09944c8a915e7991ee51acb67087"
 dependencies = [
  "bitflags 1.3.2",
  "libc",
@@ -2464,6 +2642,27 @@ dependencies = [
 ]
 
 [[package]]
+name = "is_sorted"
+version = "0.1.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "357376465c37db3372ef6a00585d336ed3d0f11d4345eef77ebcb05865392b21"
+
+[[package]]
+name = "issues"
+version = "0.0.0"
+dependencies = [
+ "chrono",
+ "dashmap",
+ "http 1.0.0",
+ "http-serde",
+ "log",
+ "schemars",
+ "serde",
+ "serde_json",
+ "serial_test",
+]
+
+[[package]]
 name = "itertools"
 version = "0.10.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -2474,9 +2673,9 @@ dependencies = [
 
 [[package]]
 name = "itertools"
-version = "0.12.0"
+version = "0.12.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "25db6b064527c5d482d0423354fcd07a89a2dfe07b67892e62411946db7f07b0"
+checksum = "ba291022dbbd398a455acf126c1e341954079855bc60dfdda641363bd6922569"
 dependencies = [
  "either",
 ]
@@ -2513,9 +2712,9 @@ dependencies = [
 
 [[package]]
 name = "js-sys"
-version = "0.3.60"
+version = "0.3.69"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "49409df3e3bf0856b916e2ceaca09ee28e6871cf7d9ce97a692cacfdb2a25a47"
+checksum = "29c15563dc2726973df627357ce0c9ddddbea194836909d655df6a75d2cf296d"
 dependencies = [
  "wasm-bindgen",
 ]
@@ -2532,6 +2731,21 @@ dependencies = [
 ]
 
 [[package]]
+name = "jsonwebtoken"
+version = "9.3.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "b9ae10193d25051e74945f1ea2d0b42e03cc3b890f7e4cc5faa44997d808193f"
+dependencies = [
+ "base64 0.21.0",
+ "js-sys",
+ "pem",
+ "ring 0.17.5",
+ "serde",
+ "serde_json",
+ "simple_asn1",
+]
+
+[[package]]
 name = "language-tags"
 version = "0.3.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -2551,9 +2765,9 @@ checksum = "830d08ce1d1d941e6b30645f1a0eb5643013d835ce3779a5fc208261dbe10f55"
 
 [[package]]
 name = "libc"
-version = "0.2.150"
+version = "0.2.153"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "89d92a4743f9a61002fae18374ed11e7973f530cb3a3255fb354818118b2203c"
+checksum = "9c198f91728a82281a64e1f4f9eeb25d82cb32a5de251c6bd1b5154d63a8e7bd"
 
 [[package]]
 name = "libloading"
@@ -2573,9 +2787,9 @@ checksum = "348108ab3fba42ec82ff6e9564fc4ca0247bdccdc68dd8af9764bbc79c3c8ffb"
 
 [[package]]
 name = "librocksdb-sys"
-version = "0.11.0+8.1.1"
+version = "0.16.0+8.10.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d3386f101bcb4bd252d8e9d2fb41ec3b0862a15a62b478c355b2982efa469e3e"
+checksum = "ce3d60bc059831dc1c83903fb45c103f75db65c5a7bf22272764d9cc683e348c"
 dependencies = [
  "bindgen",
  "bzip2-sys",
@@ -2598,9 +2812,9 @@ dependencies = [
 
 [[package]]
 name = "lindera-cc-cedict-builder"
-version = "0.27.1"
+version = "0.28.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6f567a47e47b5420908424de2c6c5e424e3cafe588d0146bd128c0f3755758a3"
+checksum = "ca21f2ee3ca40e7f3ebbd568d041be1531c2c28dbf540e737aeba934ab53f330"
 dependencies = [
  "anyhow",
  "bincode",
@@ -2617,9 +2831,9 @@ dependencies = [
 
 [[package]]
 name = "lindera-compress"
-version = "0.27.1"
+version = "0.28.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "49f3e553d55ebe9881fa5e5de588b0a153456e93564d17dfbef498912caf63a2"
+checksum = "34da125091f3b3a49351f418484a16cb2a23f6888cd53fe219edad19d263da5d"
 dependencies = [
  "anyhow",
  "flate2",
@@ -2628,9 +2842,9 @@ dependencies = [
 
 [[package]]
 name = "lindera-core"
-version = "0.27.1"
+version = "0.28.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a9a2440cc156a4a911a174ec68203543d1efb10df3a700a59b6bf581e453c726"
+checksum = "09d4b717a8a31b73a3cbd3552e0abda14e0c85d97dc8b911035342533defdbad"
 dependencies = [
  "anyhow",
  "bincode",
@@ -2645,9 +2859,9 @@ dependencies = [
 
 [[package]]
 name = "lindera-decompress"
-version = "0.27.1"
+version = "0.28.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e077a410e61c962cb526f71b7effd62ffc607488a8f61869c937582d2ccb529b"
+checksum = "98f4476c99cb4ffa54fbfc42953adf69ada7276cfbb594bce9829547de012058"
 dependencies = [
  "anyhow",
  "flate2",
@@ -2656,9 +2870,9 @@ dependencies = [
 
 [[package]]
 name = "lindera-dictionary"
-version = "0.27.1"
+version = "0.28.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d9f57491adf7b311a3ee87f5e4a36454df16a2ec73de4ef28b2106fac80bd782"
+checksum = "a45b92f0ce331c2202c6cec3135e4bfce29525ab3bb97a613c27c8e0a29fa967"
 dependencies = [
  "anyhow",
  "bincode",
@@ -2676,9 +2890,9 @@ dependencies = [
 
 [[package]]
 name = "lindera-ipadic-builder"
-version = "0.27.1"
+version = "0.28.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a3476ec7748aebd2eb23d496ddfce5e7e0a5c031cffcd214451043e02d029f11"
+checksum = "642dee52201852df209cb43423ff1ca4d161a329f5cdba049a7b5820118345f2"
 dependencies = [
  "anyhow",
  "bincode",
@@ -2697,9 +2911,9 @@ dependencies = [
 
 [[package]]
 name = "lindera-ipadic-neologd-builder"
-version = "0.27.1"
+version = "0.28.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7b1c7576a02d5e4af2bf62de51790a01bc4b8bc0d0b6a6b86a46b157f5cb306d"
+checksum = "325144b154e68159373e944d1cd7f67c6ff9965a2af41240a8e41732b3fdb3af"
 dependencies = [
  "anyhow",
  "bincode",
@@ -2718,9 +2932,9 @@ dependencies = [
 
 [[package]]
 name = "lindera-ko-dic"
-version = "0.27.1"
+version = "0.28.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b713ecd5b827d7d448c3c5eb3c6d5899ecaf22cd17087599996349a02c76828d"
+checksum = "b484a2f9964e7424264fda304beb6ff6ad883c347accfe1115e777dedef3661d"
 dependencies = [
  "bincode",
  "byteorder",
@@ -2735,9 +2949,9 @@ dependencies = [
 
 [[package]]
 name = "lindera-ko-dic-builder"
-version = "0.27.1"
+version = "0.28.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3e545752f6487be87b572529ad594cb3b48d2ef20821516f598b2d152d23277b"
+checksum = "b9413d4d9bf7af921f5ac64414a290c7ba81695e8ba08dd2f6c950b57c281a69"
 dependencies = [
  "anyhow",
  "bincode",
@@ -2755,12 +2969,11 @@ dependencies = [
 
 [[package]]
 name = "lindera-tokenizer"
-version = "0.27.1"
+version = "0.28.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "24a2d4606a5a4da62ac4a3680ee884a75da7f0c892dc967fc9cb983ceba39a8f"
+checksum = "9987c818462d51ca67e131e40f0386e25e8c557e195059b1257f95731561185d"
 dependencies = [
  "bincode",
- "byteorder",
  "lindera-core",
  "lindera-dictionary",
  "once_cell",
@@ -2770,9 +2983,9 @@ dependencies = [
 
 [[package]]
 name = "lindera-unidic"
-version = "0.27.1"
+version = "0.28.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "388b1bdf81794b5d5b8057ce0321c58ff4b90d676b637948ccc7863ae2f43d28"
+checksum = "0c379cf436b2627cd7d3498642e491eadbff9b3e01231c516ce9f9b1893ab7c3"
 dependencies = [
  "bincode",
  "byteorder",
@@ -2787,9 +3000,9 @@ dependencies = [
 
 [[package]]
 name = "lindera-unidic-builder"
-version = "0.27.1"
+version = "0.28.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "cdfa3e29a22c047da57fadd960ff674b720de15a1e2fb35b5ed67f3408afb469"
+checksum = "601ec33b5174141396a7a4ca066278863840221fec32d0be19091e7fae91ed94"
 dependencies = [
  "anyhow",
  "bincode",
@@ -2828,15 +3041,15 @@ checksum = "ef53942eb7bf7ff43a617b3e2c1c4a5ecf5944a7c1bc12d7ee39bbb15e5c1519"
 
 [[package]]
 name = "linux-raw-sys"
-version = "0.4.11"
+version = "0.4.13"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "969488b55f8ac402214f3f5fd243ebb7206cf82de60d3172994707a4bcc2b829"
+checksum = "01cda141df6706de531b6c46c3a33ecca755538219bd484262fa09410c13539c"
 
 [[package]]
 name = "litemap"
-version = "0.6.1"
+version = "0.7.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "575d8a551c59104b4df91269921e5eab561aa1b77c618dac0414b5d44a4617de"
+checksum = "f9d642685b028806386b2b6e75685faadd3eb65a85fff7df711ce18446a422da"
 
 [[package]]
 name = "local-channel"
@@ -2858,9 +3071,9 @@ checksum = "e34f76eb3611940e0e7d53a9aaa4e6a3151f69541a282fd0dad5571420c53ff1"
 
 [[package]]
 name = "lock_api"
-version = "0.4.9"
+version = "0.4.11"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "435011366fe56583b16cf956f9df0095b405b82d76425bc8981c0e22e60ec4df"
+checksum = "3c168f8615b12bc01f9c17e2eb0cc07dcae1940121185446edc3744920e8ef45"
 dependencies = [
  "autocfg",
  "scopeguard",
@@ -2869,15 +3082,15 @@ dependencies = [
 
 [[package]]
 name = "log"
-version = "0.4.20"
+version = "0.4.21"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b5e6163cb8c49088c2c36f57875e58ccd8c87c7427f7fbd50ea6710b2f3f2e8f"
+checksum = "90ed8c1e510134f979dbc4f070f87d4313098b704861a105fe34231c70a3901c"
 
 [[package]]
 name = "loom"
-version = "0.5.6"
+version = "0.7.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ff50ecb28bb86013e935fb6683ab1f6d3a20016f123c76fd4c27470076ac30f5"
+checksum = "7e045d70ddfbc984eacfa964ded019534e8f6cbf36f6410aee0ed5cefa5a9175"
 dependencies = [
  "cfg-if",
  "generator",
@@ -2887,6 +3100,22 @@ dependencies = [
 ]
 
 [[package]]
+name = "macro_rules_attribute"
+version = "0.2.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "8a82271f7bc033d84bbca59a3ce3e4159938cb08a9c3aebbe54d215131518a13"
+dependencies = [
+ "macro_rules_attribute-proc_macro",
+ "paste",
+]
+
+[[package]]
+name = "macro_rules_attribute-proc_macro"
+version = "0.2.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "b8dd856d451cc0da70e2ef2ce95a18e39a93b7558bedf10201ad28503f918568"
+
+[[package]]
 name = "matchers"
 version = "0.1.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -2918,9 +3147,9 @@ dependencies = [
 
 [[package]]
 name = "memmap2"
-version = "0.9.2"
+version = "0.9.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "39a69c7c189ae418f83003da62820aca28d15a07725ce51fb924999335d622ff"
+checksum = "fe751422e4a8caa417e13c3ea66452215d7d63e19e604f4980461212f3ae1322"
 dependencies = [
  "libc",
 ]
@@ -2939,7 +3168,7 @@ name = "memory"
 version = "0.0.0"
 dependencies = [
  "log",
- "memmap2 0.9.2",
+ "memmap2 0.9.4",
  "parking_lot",
  "serde",
 ]
@@ -3008,9 +3237,9 @@ dependencies = [
 
 [[package]]
 name = "mio"
-version = "0.8.9"
+version = "0.8.11"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3dce281c5e46beae905d4de1870d8b1509a9142b62eedf18b443b011ca8343d0"
+checksum = "a4a650543ca06a924e8b371db273b2756685faae30f8487da1b56505a8f78b0c"
 dependencies = [
  "libc",
  "log",
@@ -3062,9 +3291,9 @@ checksum = "72ef4a56884ca558e5ddb05a1d1e7e1bfd9a68d9ed024c21704cc98872dae1bb"
 
 [[package]]
 name = "nom"
-version = "7.1.1"
+version = "7.1.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a8903e5a29a317527874d0402f867152a3d21c908bb0b933e416c65e301d4c36"
+checksum = "d273983c5a657a70a3e8f2a01329822f3b8c8172b73826411a55751e404a0a4a"
 dependencies = [
  "memchr",
  "minimal-lexical",
@@ -3090,14 +3319,31 @@ dependencies = [
 ]
 
 [[package]]
+name = "num-bigint"
+version = "0.4.4"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "608e7659b5c3d7cba262d894801b9ec9d00de989e8a82bd4bef91d08da45cdc0"
+dependencies = [
+ "autocfg",
+ "num-integer",
+ "num-traits",
+]
+
+[[package]]
+name = "num-cmp"
+version = "0.1.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "63335b2e2c34fae2fb0aa2cecfd9f0832a1e24b3b32ecec612c3426d46dc8aaa"
+
+[[package]]
 name = "num-derive"
-version = "0.4.1"
+version = "0.4.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "cfb77679af88f8b125209d354a202862602672222e7f2313fdd6dc349bad4712"
+checksum = "ed3955f1a9c7c0c15e092f9c887db08b1fc683305fdf6eb6684f22555355e202"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.32",
+ "syn 2.0.48",
 ]
 
 [[package]]
@@ -3111,10 +3357,19 @@ dependencies = [
 ]
 
 [[package]]
+name = "num-integer"
+version = "0.1.46"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "7969661fd2958a5cb096e56c8e1ad0444ac2bbcd0061bd28660485a44879858f"
+dependencies = [
+ "num-traits",
+]
+
+[[package]]
 name = "num-traits"
-version = "0.2.16"
+version = "0.2.18"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f30b0abd723be7e2ffca1272140fac1a2f084c77ec3e123c192b66af1ee9e6c2"
+checksum = "da0df0e5185db44f69b44f26786fe401b6c293d1907744beaa7fa62b2e5a517a"
 dependencies = [
  "autocfg",
  "libm",
@@ -3147,9 +3402,9 @@ dependencies = [
 
 [[package]]
 name = "once_cell"
-version = "1.18.0"
+version = "1.19.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "dd8b5dd2ae5ed71462c540258bedcb51965123ad7e7ccf4b9a8cafaa4a63576d"
+checksum = "3fdb12b2476b595f9358c5161aa467c2438859caa136dec86c26fdd2efe17b92"
 
 [[package]]
 name = "oorandom"
@@ -3177,12 +3432,12 @@ dependencies = [
 
 [[package]]
 name = "ordered-multimap"
-version = "0.4.3"
+version = "0.6.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ccd746e37177e1711c20dd619a1620f34f5c8b569c53590a72dedd5344d8924a"
+checksum = "4ed8acf08e98e744e5384c8bc63ceb0364e68a6854187221c18df61c4797690e"
 dependencies = [
  "dlv-list",
- "hashbrown 0.12.3",
+ "hashbrown 0.13.2",
 ]
 
 [[package]]
@@ -3203,18 +3458,18 @@ dependencies = [
 
 [[package]]
 name = "parking_lot_core"
-version = "0.9.5"
+version = "0.9.9"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7ff9f3fef3968a3ec5945535ed654cb38ff72d7495a25619e2247fb15a2ed9ba"
+checksum = "4c42a9226546d68acdd9c0a280d17ce19bfe27a46bf68784e4066115788d008e"
 dependencies = [
  "backtrace",
  "cfg-if",
  "libc",
  "petgraph",
- "redox_syscall 0.2.16",
+ "redox_syscall 0.4.1",
  "smallvec",
  "thread-id",
- "windows-sys 0.42.0",
+ "windows-targets 0.48.0",
 ]
 
 [[package]]
@@ -3259,10 +3514,14 @@ dependencies = [
 ]
 
 [[package]]
-name = "peeking_take_while"
-version = "0.1.2"
+name = "pem"
+version = "3.0.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "19b17cddbe7ec3f8bc800887bab5e717348c95ea2ca0b1bf0837fb964dc67099"
+checksum = "1b8fcc794035347fb64beda2d3b462595dd2753e3f268d89c5aae77e8cf2c310"
+dependencies = [
+ "base64 0.21.0",
+ "serde",
+]
 
 [[package]]
 name = "percent-encoding"
@@ -3406,9 +3665,9 @@ checksum = "8b870d8c151b6f2fb93e84a13146138f05d02ed11c7e7c54f8826aaaf7c9f184"
 
 [[package]]
 name = "pinyin"
-version = "0.9.0"
+version = "0.10.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3bd12336e3afa34152e002f57df37a7056778daa59ea542b3473b87f5fb260c4"
+checksum = "16f2611cd06a1ac239a0cea4521de9eb068a6ca110324ee00631aa68daa74fc0"
 
 [[package]]
 name = "pkg-config"
@@ -3498,7 +3757,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "1ceca8aaf45b5c46ec7ed39fff75f57290368c1846d33d24a122ca81416ab058"
 dependencies = [
  "proc-macro2",
- "syn 2.0.32",
+ "syn 2.0.48",
 ]
 
 [[package]]
@@ -3527,9 +3786,9 @@ dependencies = [
 
 [[package]]
 name = "proc-macro2"
-version = "1.0.63"
+version = "1.0.76"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7b368fba921b0dce7e60f5e04ec15e565b3303972b42bcfde1d0713b881959eb"
+checksum = "95fc56cda0b5c3325f5fbbd7ff9fda9e02bb00bb3dac51252d2f1bfa1cb8cc8c"
 dependencies = [
  "unicode-ident",
 ]
@@ -3544,7 +3803,7 @@ dependencies = [
  "hex",
  "lazy_static",
  "procfs-core",
- "rustix 0.38.21",
+ "rustix 0.38.31",
 ]
 
 [[package]]
@@ -3603,12 +3862,12 @@ dependencies = [
 
 [[package]]
 name = "prost"
-version = "0.12.0"
+version = "0.12.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "aa8473a65b88506c106c28ae905ca4a2b83a2993640467a41bb3080627ddfd2c"
+checksum = "146c289cda302b98a28d40c8b3b90498d6e526dd24ac2ecea73e4e491685b94a"
 dependencies = [
  "bytes",
- "prost-derive 0.12.0",
+ "prost-derive 0.12.3",
 ]
 
 [[package]]
@@ -3618,7 +3877,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "119533552c9a7ffacc21e099c24a0ac8bb19c2a2a3f363de84cd9b844feab270"
 dependencies = [
  "bytes",
- "heck",
+ "heck 0.4.1",
  "itertools 0.10.5",
  "lazy_static",
  "log",
@@ -3637,22 +3896,22 @@ dependencies = [
 
 [[package]]
 name = "prost-build"
-version = "0.12.0"
+version = "0.12.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "30d3e647e9eb04ddfef78dfee2d5b3fefdf94821c84b710a3d8ebc89ede8b164"
+checksum = "c55e02e35260070b6f716a2423c2ff1c3bb1642ddca6f99e1f26d06268a0e2d2"
 dependencies = [
  "bytes",
- "heck",
+ "heck 0.4.1",
  "itertools 0.10.5",
  "log",
  "multimap",
  "once_cell",
  "petgraph",
  "prettyplease 0.2.4",
- "prost 0.12.0",
- "prost-types 0.12.0",
+ "prost 0.12.3",
+ "prost-types 0.12.3",
  "regex",
- "syn 2.0.32",
+ "syn 2.0.48",
  "tempfile",
  "which",
 ]
@@ -3672,15 +3931,15 @@ dependencies = [
 
 [[package]]
 name = "prost-derive"
-version = "0.12.0"
+version = "0.12.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "56075c27b20ae524d00f247b8a4dc333e5784f889fe63099f8e626bc8d73486c"
+checksum = "efb6c9a1dd1def8e2124d17e83a20af56f1570d6c2d2bd9e266ccb768df3840e"
 dependencies = [
  "anyhow",
  "itertools 0.10.5",
  "proc-macro2",
  "quote",
- "syn 2.0.32",
+ "syn 2.0.48",
 ]
 
 [[package]]
@@ -3694,11 +3953,57 @@ dependencies = [
 
 [[package]]
 name = "prost-types"
-version = "0.12.0"
+version = "0.12.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "193898f59edcf43c26227dcd4c8427f00d99d61e95dcde58dabd49fa291d470e"
+dependencies = [
+ "prost 0.12.3",
+]
+
+[[package]]
+name = "prost-wkt"
+version = "0.4.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "562788060bcf2bfabe055194bd991ed2442457661744c88e0a0828ff9a08c08b"
+dependencies = [
+ "chrono",
+ "inventory",
+ "prost 0.11.9",
+ "serde",
+ "serde_derive",
+ "serde_json",
+ "typetag",
+]
+
+[[package]]
+name = "prost-wkt-build"
+version = "0.4.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "cebe0a918c97f86c217b0f76fd754e966f8b9f41595095cf7d74cb4e59d730f6"
+checksum = "c4dca8bcead3b728a6a7da017cc95e7f4cb2320ec4f6896bc593a1c4700f7328"
 dependencies = [
- "prost 0.12.0",
+ "heck 0.4.1",
+ "prost 0.11.9",
+ "prost-build 0.11.9",
+ "prost-types 0.11.9",
+ "quote",
+]
+
+[[package]]
+name = "prost-wkt-types"
+version = "0.4.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "2377c5680f2342871823045052e791b4487f7c90aae17e0feaee24cf59578a34"
+dependencies = [
+ "chrono",
+ "prost 0.11.9",
+ "prost-build 0.11.9",
+ "prost-types 0.11.9",
+ "prost-wkt",
+ "prost-wkt-build",
+ "regex",
+ "serde",
+ "serde_derive",
+ "serde_json",
 ]
 
 [[package]]
@@ -3742,13 +4047,13 @@ dependencies = [
 
 [[package]]
 name = "qdrant"
-version = "1.7.4"
+version = "1.9.0"
 dependencies = [
  "actix-cors",
  "actix-files",
  "actix-multipart",
  "actix-web",
- "actix-web-httpauth",
+ "actix-web-extras",
  "actix-web-validator",
  "anyhow",
  "api",
@@ -3763,11 +4068,11 @@ dependencies = [
  "constant_time_eq 0.3.0",
  "futures",
  "futures-util",
- "itertools 0.12.0",
+ "issues",
+ "itertools 0.12.1",
+ "jsonwebtoken",
  "log",
  "memory",
- "num-traits",
- "num_cpus",
  "parking_lot",
  "prometheus",
  "prost 0.11.9",
@@ -3776,8 +4081,9 @@ dependencies = [
  "rand 0.8.5",
  "reqwest",
  "rstack-self",
- "rustls",
- "rustls-pemfile",
+ "rustls 0.22.4",
+ "rustls-pemfile 2.1.2",
+ "rustls-pki-types",
  "rusty-hook",
  "schemars",
  "sealed_test",
@@ -3788,7 +4094,6 @@ dependencies = [
  "serde_urlencoded",
  "slog",
  "slog-stdlog",
- "sparse",
  "storage",
  "sys-info",
  "tar",
@@ -3812,7 +4117,7 @@ dependencies = [
 [[package]]
 name = "quantization"
 version = "0.1.0"
-source = "git+https://github.com/qdrant/quantization.git#939fdb627a8edcf92fd71e3c79017156690850e9"
+source = "git+https://github.com/qdrant/quantization.git#14f42f944358b4e95c482892dc4ead019809a448"
 dependencies = [
  "cc",
  "permutation_iterator",
@@ -3839,9 +4144,9 @@ dependencies = [
 
 [[package]]
 name = "quote"
-version = "1.0.29"
+version = "1.0.35"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "573015e8ab27661678357f27dc26460738fd2b6c86e46f386fde94cb5d913105"
+checksum = "291ec9ab5efd934aaf503a6466c5d5251535d108ee747472c3977cc5acc868ef"
 dependencies = [
  "proc-macro2",
 ]
@@ -3971,9 +4276,9 @@ dependencies = [
 
 [[package]]
 name = "rayon"
-version = "1.8.0"
+version = "1.10.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9c27db03db7734835b3f53954b534c91069375ce6ccaa2e065441e07d9b6cdb1"
+checksum = "b418a60154510ca1a002a752ca9714984e21e4241e804d32555251faf8b78ffa"
 dependencies = [
  "either",
  "rayon-core",
@@ -3981,9 +4286,9 @@ dependencies = [
 
 [[package]]
 name = "rayon-core"
-version = "1.12.0"
+version = "1.12.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5ce3fb6ad83f861aac485e76e1985cd109d9a3713802152be56c3b1f0e0658ed"
+checksum = "1465873a3dfdaa8ae7cb14b4383657caab0b3e8a0aa9ae8e04b044854c8dfce2"
 dependencies = [
  "crossbeam-deque",
  "crossbeam-utils",
@@ -4053,20 +4358,22 @@ checksum = "4bf2521270932c3c7bed1a59151222bd7643c79310f2916f01925e1e16255698"
 
 [[package]]
 name = "reqwest"
-version = "0.11.22"
+version = "0.12.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "046cd98826c46c2ac8ddecae268eb5c2e58628688a5fc7a2643704a73faba95b"
+checksum = "3e6cc1e89e689536eb5aeede61520e874df5a4707df811cd5da4aa5fbb2aae19"
 dependencies = [
- "base64 0.21.0",
+ "base64 0.22.0",
  "bytes",
- "encoding_rs",
+ "futures-channel",
  "futures-core",
  "futures-util",
- "h2",
- "http",
- "http-body",
- "hyper",
+ "h2 0.4.4",
+ "http 1.0.0",
+ "http-body 1.0.0",
+ "http-body-util",
+ "hyper 1.2.0",
  "hyper-rustls",
+ "hyper-util",
  "ipnet",
  "js-sys",
  "log",
@@ -4074,14 +4381,15 @@ dependencies = [
  "once_cell",
  "percent-encoding",
  "pin-project-lite",
- "rustls",
- "rustls-pemfile",
+ "rustls 0.22.4",
+ "rustls-pemfile 2.1.2",
+ "rustls-pki-types",
  "serde",
  "serde_json",
  "serde_urlencoded",
- "system-configuration",
+ "sync_wrapper",
  "tokio",
- "tokio-rustls",
+ "tokio-rustls 0.25.0",
  "tokio-util",
  "tower-service",
  "url",
@@ -4089,7 +4397,7 @@ dependencies = [
  "wasm-bindgen-futures",
  "wasm-streams",
  "web-sys",
- "webpki-roots 0.25.2",
+ "webpki-roots",
  "winreg",
 ]
 
@@ -4132,6 +4440,12 @@ dependencies = [
 ]
 
 [[package]]
+name = "ringbuffer"
+version = "0.15.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "3df6368f71f205ff9c33c076d170dd56ebf68e8161c733c0caa07a7a5509ed53"
+
+[[package]]
 name = "rmp"
 version = "0.8.11"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -4161,9 +4475,9 @@ checksum = "cbf4a6aa5f6d6888f39e980649f3ad6b666acdce1d78e95b8a2cb076e687ae30"
 
 [[package]]
 name = "rocksdb"
-version = "0.21.0"
+version = "0.22.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "bb6f170a4041d50a0ce04b0d2e14916d6ca863ea2e422689a5b694395d299ffe"
+checksum = "6bd13e55d6d7b8cd0ea569161127567cd587676c99f4472f779a0279aa60a7a7"
 dependencies = [
  "libc",
  "librocksdb-sys",
@@ -4171,13 +4485,14 @@ dependencies = [
 
 [[package]]
 name = "ron"
-version = "0.7.1"
+version = "0.8.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "88073939a61e5b7680558e6be56b419e208420c2adb92be54921fa6b72283f1a"
+checksum = "b91f7eff05f748767f183df4320a63d6936e9c6107d97c9e6bdd9784f4289c94"
 dependencies = [
- "base64 0.13.1",
- "bitflags 1.3.2",
+ "base64 0.21.0",
+ "bitflags 2.4.1",
  "serde",
+ "serde_derive",
 ]
 
 [[package]]
@@ -4209,9 +4524,9 @@ dependencies = [
 
 [[package]]
 name = "rstar"
-version = "0.11.0"
+version = "0.12.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "73111312eb7a2287d229f06c00ff35b51ddee180f017ab6dec1f69d62ac098d6"
+checksum = "133315eb94c7b1e8d0cb097e5a710d850263372fd028fff18969de708afc7008"
 dependencies = [
  "heapless",
  "num-traits",
@@ -4220,9 +4535,9 @@ dependencies = [
 
 [[package]]
 name = "rstest"
-version = "0.18.2"
+version = "0.19.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "97eeab2f3c0a199bc4be135c36c924b6590b88c377d416494288c14f2db30199"
+checksum = "9d5316d2a1479eeef1ea21e7f9ddc67c191d497abc8fc3ba2467857abbb68330"
 dependencies = [
  "futures",
  "futures-timer",
@@ -4232,9 +4547,9 @@ dependencies = [
 
 [[package]]
 name = "rstest_macros"
-version = "0.18.2"
+version = "0.19.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d428f8247852f894ee1be110b375111b586d4fa431f6c46e64ba5a0dcccbe605"
+checksum = "04a9df72cc1f67020b0d63ad9bfe4a323e459ea7eb68e03bd9824db49f9a4c25"
 dependencies = [
  "cfg-if",
  "glob",
@@ -4243,15 +4558,15 @@ dependencies = [
  "regex",
  "relative-path",
  "rustc_version",
- "syn 2.0.32",
+ "syn 2.0.48",
  "unicode-ident",
 ]
 
 [[package]]
 name = "rust-ini"
-version = "0.18.0"
+version = "0.19.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f6d5f2436026b4f6e79dc829837d467cc7e9a55ee40e750d716713540715a2df"
+checksum = "7e2a3bcec1f113553ef1c88aae6c020a369d03d55b58de9869a0908930385091"
 dependencies = [
  "cfg-if",
  "ordered-multimap",
@@ -4294,22 +4609,22 @@ dependencies = [
 
 [[package]]
 name = "rustix"
-version = "0.38.21"
+version = "0.38.31"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2b426b0506e5d50a7d8dafcf2e81471400deb602392c7dd110815afb4eaf02a3"
+checksum = "6ea3e1a662af26cd7a3ba09c0297a31af215563ecf42817c98df621387f4e949"
 dependencies = [
  "bitflags 2.4.1",
  "errno",
  "libc",
- "linux-raw-sys 0.4.11",
- "windows-sys 0.48.0",
+ "linux-raw-sys 0.4.13",
+ "windows-sys 0.52.0",
 ]
 
 [[package]]
 name = "rustls"
-version = "0.21.10"
+version = "0.21.11"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f9d5a6813c0759e4609cd494e8e725babae6a2ca7b62a5536a13daaec6fcb7ba"
+checksum = "7fecbfb7b1444f477b345853b1fce097a2c6fb637b2bfb87e6bc5db0f043fae4"
 dependencies = [
  "log",
  "ring 0.17.5",
@@ -4318,6 +4633,20 @@ dependencies = [
 ]
 
 [[package]]
+name = "rustls"
+version = "0.22.4"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "bf4ef73721ac7bcd79b2b315da7779d8fc09718c6b3d2d1b2d94850eb8c18432"
+dependencies = [
+ "log",
+ "ring 0.17.5",
+ "rustls-pki-types",
+ "rustls-webpki 0.102.2",
+ "subtle",
+ "zeroize",
+]
+
+[[package]]
 name = "rustls-pemfile"
 version = "1.0.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -4327,16 +4656,22 @@ dependencies = [
 ]
 
 [[package]]
-name = "rustls-webpki"
-version = "0.100.2"
+name = "rustls-pemfile"
+version = "2.1.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e98ff011474fa39949b7e5c0428f9b4937eda7da7848bbb947786b7be0b27dab"
+checksum = "29993a25686778eb88d4189742cd713c9bce943bc54251a33509dc63cbacf73d"
 dependencies = [
- "ring 0.16.20",
- "untrusted 0.7.1",
+ "base64 0.22.0",
+ "rustls-pki-types",
 ]
 
 [[package]]
+name = "rustls-pki-types"
+version = "1.4.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "ecd36cc4259e3e4514335c4a138c6b43171a8d61d8f5c9348f9fc7529416f247"
+
+[[package]]
 name = "rustls-webpki"
 version = "0.101.7"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -4347,6 +4682,17 @@ dependencies = [
 ]
 
 [[package]]
+name = "rustls-webpki"
+version = "0.102.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "faaa0a62740bedb9b2ef5afa303da42764c012f743917351dc9a237ea1663610"
+dependencies = [
+ "ring 0.17.5",
+ "rustls-pki-types",
+ "untrusted 0.9.0",
+]
+
+[[package]]
 name = "rustversion"
 version = "1.0.11"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -4385,7 +4731,7 @@ dependencies = [
  "ci_info",
  "getopts",
  "nias",
- "toml",
+ "toml 0.5.10",
 ]
 
 [[package]]
@@ -4412,6 +4758,7 @@ dependencies = [
  "chrono",
  "dyn-clone",
  "indexmap 1.9.2",
+ "indexmap 2.2.6",
  "schemars_derive",
  "serde",
  "serde_json",
@@ -4491,29 +4838,35 @@ dependencies = [
 name = "segment"
 version = "0.6.0"
 dependencies = [
+ "ahash",
  "atomic_refcell",
  "atomicwrites",
  "bincode",
+ "bitpacking",
  "bitvec",
  "cgroups-rs",
  "charabia",
  "chrono",
  "common",
  "criterion",
+ "fnv",
  "fs_extra",
- "futures",
+ "generic-tests",
  "geo",
  "geohash",
+ "indexmap 2.2.6",
  "io",
  "io-uring",
- "itertools 0.12.0",
- "lazy_static",
+ "is_sorted",
+ "itertools 0.12.1",
  "log",
- "memmap2 0.9.2",
+ "macro_rules_attribute",
+ "memmap2 0.9.4",
  "memory",
+ "nom",
+ "num-cmp",
  "num-derive",
  "num-traits",
- "num_cpus",
  "ordered-float 4.2.0",
  "parking_lot",
  "pprof",
@@ -4533,6 +4886,7 @@ dependencies = [
  "serde-value",
  "serde_cbor",
  "serde_json",
+ "smallvec",
  "smol_str",
  "sparse",
  "sysinfo",
@@ -4548,15 +4902,18 @@ dependencies = [
 
 [[package]]
 name = "semver"
-version = "1.0.20"
+version = "1.0.22"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "836fa6a3e1e547f9a2c4040802ec865b5d85f4014efe00555d7090a3dcaa1090"
+checksum = "92d43fe69e652f3df9bdc2b85b2854a0825b86e4fb76bc44d945137d053639ca"
+dependencies = [
+ "serde",
+]
 
 [[package]]
 name = "serde"
-version = "1.0.193"
+version = "1.0.197"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "25dd9975e68d0cb5aa1120c288333fc98731bd1dd12f561e468ea4728c042b89"
+checksum = "3fb1c873e1b9b056a4dc4c0c198b24c3ffa059243875552b2bd0933b1aee4ce2"
 dependencies = [
  "serde_derive",
 ]
@@ -4583,13 +4940,13 @@ dependencies = [
 
 [[package]]
 name = "serde_derive"
-version = "1.0.193"
+version = "1.0.197"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "43576ca501357b9b071ac53cdc7da8ef0cbd9493d8df094cd821777ea6e894d3"
+checksum = "7eb0b34b42edc17f6b7cac84a52a1c5f0e1bb2227e997ca9011ea3dd34e8610b"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.32",
+ "syn 2.0.48",
 ]
 
 [[package]]
@@ -4605,9 +4962,9 @@ dependencies = [
 
 [[package]]
 name = "serde_json"
-version = "1.0.108"
+version = "1.0.115"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3d1c7e3eac408d115102c4c24ad393e0821bb3a5df4d506a80f85f7a742a526b"
+checksum = "12dc5c46daa8e9fdf4f5e71b6cf9a53f2487da0e86e55808e2d35539666497dd"
 dependencies = [
  "itoa",
  "ryu",
@@ -4637,6 +4994,15 @@ dependencies = [
 ]
 
 [[package]]
+name = "serde_spanned"
+version = "0.6.5"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "eb3622f419d1296904700073ea6cc23ad690adbd66f13ea683df73298736f0c1"
+dependencies = [
+ "serde",
+]
+
+[[package]]
 name = "serde_urlencoded"
 version = "0.7.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -4649,6 +5015,29 @@ dependencies = [
 ]
 
 [[package]]
+name = "serial_test"
+version = "3.0.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "953ad9342b3aaca7cb43c45c097dd008d4907070394bd0751a0aa8817e5a018d"
+dependencies = [
+ "dashmap",
+ "lazy_static",
+ "parking_lot",
+ "serial_test_derive",
+]
+
+[[package]]
+name = "serial_test_derive"
+version = "3.0.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "b93fb4adc70021ac1b47f7d45e8cc4169baaa7ea58483bc5b721d19a26202212"
+dependencies = [
+ "proc-macro2",
+ "quote",
+ "syn 2.0.48",
+]
+
+[[package]]
 name = "sha1"
 version = "0.10.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -4661,9 +5050,9 @@ dependencies = [
 
 [[package]]
 name = "sha2"
-version = "0.10.6"
+version = "0.10.8"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "82e6b795fe2e3b1e845bafcb27aa35405c4d47cdfc92af5fc8d3002f76cebdc0"
+checksum = "793db75ad2bcafc3ffa7c68b215fee268f537982cd901d132f89c6343f3a3dc8"
 dependencies = [
  "cfg-if",
  "cpufeatures",
@@ -4681,9 +5070,9 @@ dependencies = [
 
 [[package]]
 name = "shlex"
-version = "1.1.0"
+version = "1.3.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "43b2853a4d09f215c24cc5489c992ce46052d359b5109343cbafbf26bc62f8a3"
+checksum = "0fda2ff0d084019ba4d7c6f371c95d8fd75ce3524c3cb8fb653a3023f6323e64"
 
 [[package]]
 name = "signal-hook-registry"
@@ -4695,6 +5084,18 @@ dependencies = [
 ]
 
 [[package]]
+name = "simple_asn1"
+version = "0.6.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "adc4e5204eb1910f40f9cfa375f6f05b68c3abac4b6fd879c8ff5e7ae8a0a085"
+dependencies = [
+ "num-bigint",
+ "num-traits",
+ "thiserror",
+ "time",
+]
+
+[[package]]
 name = "siphasher"
 version = "0.3.10"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -4745,15 +5146,15 @@ dependencies = [
 
 [[package]]
 name = "smallvec"
-version = "1.10.0"
+version = "1.13.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a507befe795404456341dfab10cef66ead4c041f62b8b11bbb92bffe5d0953e0"
+checksum = "3c5e1a9a646d36c3599cd173a41282daf47c44583ad367b8e6837255952e5c67"
 
 [[package]]
 name = "smol_str"
-version = "0.2.0"
+version = "0.2.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "74212e6bbe9a4352329b2f68ba3130c15a3f26fe88ff22dbdc6cdd58fa85e99c"
+checksum = "e6845563ada680337a52d43bb0b29f396f2d911616f6573012645b9e3d048a49"
 dependencies = [
  "serde",
 ]
@@ -4796,14 +5197,14 @@ version = "0.1.0"
 dependencies = [
  "common",
  "io",
- "itertools 0.12.0",
- "memmap2 0.9.2",
+ "itertools 0.12.1",
+ "memmap2 0.9.4",
  "memory",
  "ordered-float 4.2.0",
+ "parking_lot",
  "rand 0.8.5",
  "schemars",
  "serde",
- "serde_json",
  "tempfile",
  "validator",
 ]
@@ -4819,9 +5220,6 @@ name = "spin"
 version = "0.9.8"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "6980e8d7511241f8acf4aebddbb1ff938df5eebe98691418c4468d0b72a96a67"
-dependencies = [
- "lock_api",
-]
 
 [[package]]
 name = "stable_deref_trait"
@@ -4849,12 +5247,11 @@ dependencies = [
  "common",
  "env_logger",
  "futures",
- "http",
+ "http 0.2.9",
  "io",
- "itertools 0.12.0",
+ "itertools 0.12.1",
  "log",
  "memory",
- "num_cpus",
  "parking_lot",
  "proptest",
  "prost 0.11.9",
@@ -4867,6 +5264,7 @@ dependencies = [
  "serde",
  "serde_cbor",
  "serde_json",
+ "strum",
  "tar",
  "tempfile",
  "thiserror",
@@ -4892,10 +5290,38 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "73473c0e59e6d5812c5dfe2a064a6444949f089e20eec9a2e5506596494e4623"
 
 [[package]]
+name = "strsim"
+version = "0.11.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "5ee073c9e4cd00e28217186dbe12796d692868f432bf2e97ee73bed0c56dfa01"
+
+[[package]]
+name = "strum"
+version = "0.26.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "5d8cec3501a5194c432b2b7976db6b7d10ec95c253208b45f83f7136aa985e29"
+dependencies = [
+ "strum_macros",
+]
+
+[[package]]
+name = "strum_macros"
+version = "0.26.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "c6cf59daf282c0a494ba14fd21610a0325f9f90ec9d1231dea26bcb1d696c946"
+dependencies = [
+ "heck 0.4.1",
+ "proc-macro2",
+ "quote",
+ "rustversion",
+ "syn 2.0.48",
+]
+
+[[package]]
 name = "subtle"
-version = "2.4.1"
+version = "2.5.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6bdef32e8150c2a081110b42772ffe7d7c9032b606bc226c8260fd97e0976601"
+checksum = "81cdd64d312baedb58e21336b31bc043b77e01cc99033ce76ef539f78e965ebc"
 
 [[package]]
 name = "symbolic-common"
@@ -4933,9 +5359,9 @@ dependencies = [
 
 [[package]]
 name = "syn"
-version = "2.0.32"
+version = "2.0.48"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "239814284fd6f1a4ffe4ca893952cdd93c224b6a1571c9a9eadd670295c0c9e2"
+checksum = "0f3531638e407dfc0814761abb7c00a5b54992b849452a0646b7f65c9f770f3f"
 dependencies = [
  "proc-macro2",
  "quote",
@@ -4944,9 +5370,9 @@ dependencies = [
 
 [[package]]
 name = "sync_wrapper"
-version = "0.1.1"
+version = "0.1.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "20518fe4a4c9acf048008599e464deb21beeae3d3578418951a189c235a7a9a8"
+checksum = "2047c6ded9c721764247e62cd3b03c09ffc529b2ba5b10ec482ae507a4a70160"
 
 [[package]]
 name = "sys-info"
@@ -4960,9 +5386,9 @@ dependencies = [
 
 [[package]]
 name = "sysinfo"
-version = "0.29.11"
+version = "0.30.10"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "cd727fc423c2060f6c92d9534cef765c65a6ed3f428a03d7def74a8c4348e666"
+checksum = "26d7c217777061d5a2d652aea771fb9ba98b6dade657204b08c4b9604d11555b"
 dependencies = [
  "cfg-if",
  "core-foundation-sys",
@@ -4970,28 +5396,7 @@ dependencies = [
  "ntapi",
  "once_cell",
  "rayon",
- "winapi",
-]
-
-[[package]]
-name = "system-configuration"
-version = "0.5.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ba3a3adc5c275d719af8cb4272ea1c4a6d668a777f37e115f6d11ddbc1c8e0e7"
-dependencies = [
- "bitflags 1.3.2",
- "core-foundation",
- "system-configuration-sys",
-]
-
-[[package]]
-name = "system-configuration-sys"
-version = "0.5.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a75fb188eb626b924683e3b95e3a48e63551fcfb51949de2f06a9d91dbee93c9"
-dependencies = [
- "core-foundation-sys",
- "libc",
+ "windows 0.52.0",
 ]
 
 [[package]]
@@ -5013,15 +5418,14 @@ dependencies = [
 
 [[package]]
 name = "tempfile"
-version = "3.8.1"
+version = "3.10.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7ef1adac450ad7f4b3c28589471ade84f25f731a7a0fe30d71dfa9f60fd808e5"
+checksum = "85b77fafb263dd9d05cbeac119526425676db3784113aa9295c88498cbf8bff1"
 dependencies = [
  "cfg-if",
  "fastrand",
- "redox_syscall 0.4.1",
- "rustix 0.38.21",
- "windows-sys 0.48.0",
+ "rustix 0.38.31",
+ "windows-sys 0.52.0",
 ]
 
 [[package]]
@@ -5045,22 +5449,22 @@ dependencies = [
 
 [[package]]
 name = "thiserror"
-version = "1.0.50"
+version = "1.0.58"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f9a7210f5c9a7156bb50aa36aed4c95afb51df0df00713949448cf9e97d382d2"
+checksum = "03468839009160513471e86a034bb2c5c0e4baae3b43f79ffc55c4a5427b3297"
 dependencies = [
  "thiserror-impl",
 ]
 
 [[package]]
 name = "thiserror-impl"
-version = "1.0.50"
+version = "1.0.58"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "266b2e40bc00e5a6c09c3584011e08b06f123c00362c92b975ba9843aaaa14b8"
+checksum = "c61f3ba182994efc43764a46c018c347bc492c79f024e705f46567b418f6d4f7"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.32",
+ "syn 2.0.48",
 ]
 
 [[package]]
@@ -5075,6 +5479,20 @@ dependencies = [
 ]
 
 [[package]]
+name = "thread-priority"
+version = "0.16.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "a617e9eeeb20448b01a8e2427fb80dfbc9c49d79a1de3b11f25731edbf547e3c"
+dependencies = [
+ "bitflags 2.4.1",
+ "cfg-if",
+ "libc",
+ "log",
+ "rustversion",
+ "winapi",
+]
+
+[[package]]
 name = "thread_local"
 version = "1.1.7"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -5133,6 +5551,15 @@ dependencies = [
 ]
 
 [[package]]
+name = "tiny-keccak"
+version = "2.0.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "2c9d3793400a45f954c52e73d068316d76b6f4e36977e3fcebb13a2721e80237"
+dependencies = [
+ "crunchy",
+]
+
+[[package]]
 name = "tinytemplate"
 version = "1.2.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -5159,9 +5586,9 @@ checksum = "cda74da7e1a664f795bb1f8a87ec406fb89a02522cf6e50620d016add6dbbf5c"
 
 [[package]]
 name = "tokio"
-version = "1.35.0"
+version = "1.37.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "841d45b238a16291a4e1584e61820b8ae57d696cc5015c459c229ccc6990cc1c"
+checksum = "1adbebffeca75fcfd058afa480fb6c0b81e165a0323f9c9d39c9697e37c46787"
 dependencies = [
  "backtrace",
  "bytes",
@@ -5195,7 +5622,7 @@ checksum = "5b8a1e28f2deaa14e508979454cb3a223b10b938b45af148bc0986de36f1923b"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.32",
+ "syn 2.0.48",
 ]
 
 [[package]]
@@ -5204,7 +5631,18 @@ version = "0.24.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "c28327cf380ac148141087fbfb9de9d7bd4e84ab5d2c28fbc911d753de8a7081"
 dependencies = [
- "rustls",
+ "rustls 0.21.11",
+ "tokio",
+]
+
+[[package]]
+name = "tokio-rustls"
+version = "0.25.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "775e0c0f0adb3a2f22a00c4745d728b479985fc15ee7ca6a2608388c5569860f"
+dependencies = [
+ "rustls 0.22.4",
+ "rustls-pki-types",
  "tokio",
 ]
 
@@ -5243,6 +5681,40 @@ dependencies = [
 ]
 
 [[package]]
+name = "toml"
+version = "0.8.9"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "c6a4b9e8023eb94392d3dca65d717c53abc5dad49c07cb65bb8fcd87115fa325"
+dependencies = [
+ "serde",
+ "serde_spanned",
+ "toml_datetime",
+ "toml_edit",
+]
+
+[[package]]
+name = "toml_datetime"
+version = "0.6.5"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "3550f4e9685620ac18a50ed434eb3aec30db8ba93b0287467bca5826ea25baf1"
+dependencies = [
+ "serde",
+]
+
+[[package]]
+name = "toml_edit"
+version = "0.21.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "6a8534fd7f78b5405e860340ad6575217ce99f38d4d5c8f2442cb5ecb50090e1"
+dependencies = [
+ "indexmap 2.2.6",
+ "serde",
+ "serde_spanned",
+ "toml_datetime",
+ "winnow",
+]
+
+[[package]]
 name = "tonic"
 version = "0.9.2"
 source = "git+https://github.com/qdrant/tonic?branch=v0.9.2-patched#060ab88c87955adc59d46a44b4e3b72cb4cc1522"
@@ -5255,17 +5727,17 @@ dependencies = [
  "flate2",
  "futures-core",
  "futures-util",
- "h2",
- "http",
- "http-body",
- "hyper",
+ "h2 0.3.26",
+ "http 0.2.9",
+ "http-body 0.4.5",
+ "hyper 0.14.26",
  "hyper-timeout",
  "percent-encoding",
  "pin-project",
  "prost 0.11.9",
- "rustls-pemfile",
+ "rustls-pemfile 1.0.3",
  "tokio",
- "tokio-rustls",
+ "tokio-rustls 0.24.1",
  "tokio-stream",
  "tower",
  "tower-layer",
@@ -5281,9 +5753,9 @@ checksum = "9d021fc044c18582b9a2408cd0dd05b1596e3ecdb5c4df822bb0183545683889"
 dependencies = [
  "prettyplease 0.2.4",
  "proc-macro2",
- "prost-build 0.12.0",
+ "prost-build 0.12.3",
  "quote",
- "syn 2.0.32",
+ "syn 2.0.48",
 ]
 
 [[package]]
@@ -5333,11 +5805,10 @@ checksum = "b6bc1c9ce2b5135ac7f93c72918fc37feb872bdc6a5533a8b85eb4b86bfdae52"
 
 [[package]]
 name = "tracing"
-version = "0.1.37"
+version = "0.1.40"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8ce8c33a8d48bd45d624a6e523445fd21ec13d3653cd51f681abf67418f54eb8"
+checksum = "c3523ab5a71916ccf420eebdf5521fcef02141234bbc0b8a49f2fdc4544364ef"
 dependencies = [
- "cfg-if",
  "log",
  "pin-project-lite",
  "tracing-attributes",
@@ -5346,20 +5817,20 @@ dependencies = [
 
 [[package]]
 name = "tracing-attributes"
-version = "0.1.23"
+version = "0.1.27"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4017f8f45139870ca7e672686113917c71c7a6e02d4924eda67186083c03081a"
+checksum = "34704c8d6ebcbc939824180af020566b01a7c01f80641264eba0999f6c2b6be7"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 1.0.107",
+ "syn 2.0.48",
 ]
 
 [[package]]
 name = "tracing-core"
-version = "0.1.30"
+version = "0.1.32"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "24eb03ba0eab1fd845050058ce5e616558e8f8d8fca633e6b163fe25c797213a"
+checksum = "c06d3da6113f116aaee68e4d601191614c9053067f9ab7f6edbcb161237daa54"
 dependencies = [
  "once_cell",
  "valuable",
@@ -5397,9 +5868,9 @@ dependencies = [
 
 [[package]]
 name = "tracing-tracy"
-version = "0.10.4"
+version = "0.11.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "fc6c7bf057d67aa107e076129a4f331aaac47ec379952d9f0775c6b1d838ee97"
+checksum = "6024d04f84a69fd0d1dc1eee3a2b070bd246530a0582f9982ae487cb6c703614"
 dependencies = [
  "tracing-core",
  "tracing-subscriber",
@@ -5408,9 +5879,9 @@ dependencies = [
 
 [[package]]
 name = "tracy-client"
-version = "0.16.2"
+version = "0.17.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "546e6c86bca7bd67b86437eade85e98b327de24cdb8429c701a98af755034572"
+checksum = "59fb931a64ff88984f86d3e9bcd1ae8843aa7fe44dd0f8097527bc172351741d"
 dependencies = [
  "loom",
  "once_cell",
@@ -5439,6 +5910,30 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "497961ef93d974e23eb6f433eb5fe1b7930b659f06d12dec6fc44a8f554c0bba"
 
 [[package]]
+name = "typetag"
+version = "0.2.15"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "c43148481c7b66502c48f35b8eef38b6ccdc7a9f04bd4cc294226d901ccc9bc7"
+dependencies = [
+ "erased-serde",
+ "inventory",
+ "once_cell",
+ "serde",
+ "typetag-impl",
+]
+
+[[package]]
+name = "typetag-impl"
+version = "0.2.15"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "291db8a81af4840c10d636e047cac67664e343be44e24dfdbd1492df9a5d3390"
+dependencies = [
+ "proc-macro2",
+ "quote",
+ "syn 2.0.48",
+]
+
+[[package]]
 name = "ucd-trie"
 version = "0.1.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -5481,6 +5976,12 @@ dependencies = [
 ]
 
 [[package]]
+name = "unicode-segmentation"
+version = "1.10.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "1dd624098567895118886609431a7c3b8f516e41d30e0643f03d94592a147e36"
+
+[[package]]
 name = "unicode-width"
 version = "0.1.10"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -5521,17 +6022,18 @@ dependencies = [
 
 [[package]]
 name = "ureq"
-version = "2.7.1"
+version = "2.9.6"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0b11c96ac7ee530603dcdf68ed1557050f374ce55a5a07193ebf8cbc9f8927e9"
+checksum = "11f214ce18d8b2cbe84ed3aa6486ed3f5b285cf8d8fbdbce9f3f767a724adc35"
 dependencies = [
  "base64 0.21.0",
  "log",
  "once_cell",
- "rustls",
- "rustls-webpki 0.100.2",
+ "rustls 0.22.4",
+ "rustls-pki-types",
+ "rustls-webpki 0.102.2",
  "url",
- "webpki-roots 0.23.1",
+ "webpki-roots",
 ]
 
 [[package]]
@@ -5554,15 +6056,21 @@ checksum = "711b9620af191e0cdc7468a8d14e709c3dcdb115b36f838e601583af800a370a"
 
 [[package]]
 name = "uuid"
-version = "1.6.1"
+version = "1.8.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5e395fcf16a7a3d8127ec99782007af141946b4795001f876d54fb0d55978560"
+checksum = "a183cf7feeba97b4dd1c0d46788634f6221d87fa961b305bed08c851829efcc0"
 dependencies = [
  "getrandom 0.2.11",
  "serde",
 ]
 
 [[package]]
+name = "v_htmlescape"
+version = "0.15.8"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "4e8257fbc510f0a46eb602c10215901938b5c2a7d5e70fc11483b1d3c9b5b18c"
+
+[[package]]
 name = "validator"
 version = "0.16.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -5634,7 +6142,7 @@ dependencies = [
 [[package]]
 name = "wal"
 version = "0.1.2"
-source = "git+https://github.com/qdrant/wal.git?rev=fad0e7c48be58d8e7db4cc739acd9b1cf6735de0#fad0e7c48be58d8e7db4cc739acd9b1cf6735de0"
+source = "git+https://github.com/qdrant/wal.git?rev=a7870900f29811a24e20882887d60e6a2febf945#a7870900f29811a24e20882887d60e6a2febf945"
 dependencies = [
  "byteorder",
  "crc32c",
@@ -5643,18 +6151,18 @@ dependencies = [
  "env_logger",
  "fs4",
  "log",
- "memmap2 0.9.2",
+ "memmap2 0.9.4",
  "rand 0.8.5",
  "rand_distr",
- "rustix 0.38.21",
+ "rustix 0.37.27",
  "serde",
 ]
 
 [[package]]
 name = "walkdir"
-version = "2.4.0"
+version = "2.5.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d71d857dc86794ca4c280d616f7da00d2dbfd8cd788846559a6813e6aa4b54ee"
+checksum = "29790946404f91d9c5d06f9874efddea1dc06c5efe94541a7d6863108e3a5e4b"
 dependencies = [
  "same-file",
  "winapi-util",
@@ -5684,9 +6192,9 @@ checksum = "9c8d87e72b64a3b4db28d11ce29237c246188f4f51057d65a7eab63b7987e423"
 
 [[package]]
 name = "wasm-bindgen"
-version = "0.2.83"
+version = "0.2.92"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "eaf9f5aceeec8be17c128b2e93e031fb8a4d469bb9c4ae2d7dc1888b26887268"
+checksum = "4be2531df63900aeb2bca0daaaddec08491ee64ceecbee5076636a3b026795a8"
 dependencies = [
  "cfg-if",
  "wasm-bindgen-macro",
@@ -5694,24 +6202,24 @@ dependencies = [
 
 [[package]]
 name = "wasm-bindgen-backend"
-version = "0.2.83"
+version = "0.2.92"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4c8ffb332579b0557b52d268b91feab8df3615f265d5270fec2a8c95b17c1142"
+checksum = "614d787b966d3989fa7bb98a654e369c762374fd3213d212cfc0251257e747da"
 dependencies = [
  "bumpalo",
  "log",
  "once_cell",
  "proc-macro2",
  "quote",
- "syn 1.0.107",
+ "syn 2.0.48",
  "wasm-bindgen-shared",
 ]
 
 [[package]]
 name = "wasm-bindgen-futures"
-version = "0.4.33"
+version = "0.4.42"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "23639446165ca5a5de86ae1d8896b737ae80319560fbaa4c2887b7da6e7ebd7d"
+checksum = "76bc14366121efc8dbb487ab05bcc9d346b3b5ec0eaa76e46594cabbe51762c0"
 dependencies = [
  "cfg-if",
  "js-sys",
@@ -5721,9 +6229,9 @@ dependencies = [
 
 [[package]]
 name = "wasm-bindgen-macro"
-version = "0.2.83"
+version = "0.2.92"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "052be0f94026e6cbc75cdefc9bae13fd6052cdcaf532fa6c45e7ae33a1e6c810"
+checksum = "a1f8823de937b71b9460c0c34e25f3da88250760bec0ebac694b49997550d726"
 dependencies = [
  "quote",
  "wasm-bindgen-macro-support",
@@ -5731,28 +6239,28 @@ dependencies = [
 
 [[package]]
 name = "wasm-bindgen-macro-support"
-version = "0.2.83"
+version = "0.2.92"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "07bc0c051dc5f23e307b13285f9d75df86bfdf816c5721e573dec1f9b8aa193c"
+checksum = "e94f17b526d0a461a191c78ea52bbce64071ed5c04c9ffe424dcb38f74171bb7"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 1.0.107",
+ "syn 2.0.48",
  "wasm-bindgen-backend",
  "wasm-bindgen-shared",
 ]
 
 [[package]]
 name = "wasm-bindgen-shared"
-version = "0.2.83"
+version = "0.2.92"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1c38c045535d93ec4f0b4defec448e4291638ee608530863b1e2ba115d4fff7f"
+checksum = "af190c94f2773fdb3729c55b007a722abb5384da03bc0986df4c289bf5567e96"
 
 [[package]]
 name = "wasm-streams"
-version = "0.3.0"
+version = "0.4.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b4609d447824375f43e1ffbc051b50ad8f4b3ae8219680c94452ea05eb240ac7"
+checksum = "b65dc4c90b63b118468cf747d8bf3566c1913ef60be765b5730ead9e0a3ba129"
 dependencies = [
  "futures-util",
  "js-sys",
@@ -5763,9 +6271,9 @@ dependencies = [
 
 [[package]]
 name = "web-sys"
-version = "0.3.60"
+version = "0.3.69"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "bcda906d8be16e728fd5adc5b729afad4e444e106ab28cd1c7256e54fa61510f"
+checksum = "77afa9a11836342370f4817622a2f0f418b134426d91a82dfb48f532d2ec13ef"
 dependencies = [
  "js-sys",
  "wasm-bindgen",
@@ -5773,26 +6281,20 @@ dependencies = [
 
 [[package]]
 name = "webpki-roots"
-version = "0.23.1"
+version = "0.26.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b03058f88386e5ff5310d9111d53f48b17d732b401aeb83a8d5190f2ac459338"
+checksum = "b3de34ae270483955a94f4b21bdaaeb83d508bb84a01435f393818edb0012009"
 dependencies = [
- "rustls-webpki 0.100.2",
+ "rustls-pki-types",
 ]
 
 [[package]]
-name = "webpki-roots"
-version = "0.25.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "14247bb57be4f377dfb94c72830b8ce8fc6beac03cf4bf7b9732eadd414123fc"
-
-[[package]]
 name = "whatlang"
-version = "0.16.2"
+version = "0.16.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9c531a2dc4c462b833788be2c07eef4e621d0e9edbd55bf280cc164c1c1aa043"
+checksum = "471d1c1645d361eb782a1650b1786a8fb58dd625e681a04c09f5ff7c8764a7b0"
 dependencies = [
- "hashbrown 0.12.3",
+ "hashbrown 0.14.2",
  "once_cell",
 ]
 
@@ -5848,6 +6350,25 @@ dependencies = [
 ]
 
 [[package]]
+name = "windows"
+version = "0.52.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "e48a53791691ab099e5e2ad123536d0fff50652600abaf43bbf952894110d0be"
+dependencies = [
+ "windows-core",
+ "windows-targets 0.52.0",
+]
+
+[[package]]
+name = "windows-core"
+version = "0.52.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "33ab640c8d7e35bf8ba19b884ba838ceb4fba93a4e8c65a9059d08afcfc683d9"
+dependencies = [
+ "windows-targets 0.52.0",
+]
+
+[[package]]
 name = "windows-sys"
 version = "0.42.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -5881,6 +6402,15 @@ dependencies = [
 ]
 
 [[package]]
+name = "windows-sys"
+version = "0.52.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "282be5f36a8ce781fad8c8ae18fa3f9beff57ec1b52cb3de0789201425d9a33d"
+dependencies = [
+ "windows-targets 0.52.0",
+]
+
+[[package]]
 name = "windows-targets"
 version = "0.42.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -5911,6 +6441,21 @@ dependencies = [
 ]
 
 [[package]]
+name = "windows-targets"
+version = "0.52.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "8a18201040b24831fbb9e4eb208f8892e1f50a37feb53cc7ff887feb8f50e7cd"
+dependencies = [
+ "windows_aarch64_gnullvm 0.52.0",
+ "windows_aarch64_msvc 0.52.0",
+ "windows_i686_gnu 0.52.0",
+ "windows_i686_msvc 0.52.0",
+ "windows_x86_64_gnu 0.52.0",
+ "windows_x86_64_gnullvm 0.52.0",
+ "windows_x86_64_msvc 0.52.0",
+]
+
+[[package]]
 name = "windows_aarch64_gnullvm"
 version = "0.42.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -5923,6 +6468,12 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "91ae572e1b79dba883e0d315474df7305d12f569b400fcf90581b06062f7e1bc"
 
 [[package]]
+name = "windows_aarch64_gnullvm"
+version = "0.52.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "cb7764e35d4db8a7921e09562a0304bf2f93e0a51bfccee0bd0bb0b666b015ea"
+
+[[package]]
 name = "windows_aarch64_msvc"
 version = "0.42.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -5935,6 +6486,12 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "b2ef27e0d7bdfcfc7b868b317c1d32c641a6fe4629c171b8928c7b08d98d7cf3"
 
 [[package]]
+name = "windows_aarch64_msvc"
+version = "0.52.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "bbaa0368d4f1d2aaefc55b6fcfee13f41544ddf36801e793edbbfd7d7df075ef"
+
+[[package]]
 name = "windows_i686_gnu"
 version = "0.42.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -5947,6 +6504,12 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "622a1962a7db830d6fd0a69683c80a18fda201879f0f447f065a3b7467daa241"
 
 [[package]]
+name = "windows_i686_gnu"
+version = "0.52.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "a28637cb1fa3560a16915793afb20081aba2c92ee8af57b4d5f28e4b3e7df313"
+
+[[package]]
 name = "windows_i686_msvc"
 version = "0.42.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -5959,6 +6522,12 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "4542c6e364ce21bf45d69fdd2a8e455fa38d316158cfd43b3ac1c5b1b19f8e00"
 
 [[package]]
+name = "windows_i686_msvc"
+version = "0.52.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "ffe5e8e31046ce6230cc7215707b816e339ff4d4d67c65dffa206fd0f7aa7b9a"
+
+[[package]]
 name = "windows_x86_64_gnu"
 version = "0.42.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -5971,6 +6540,12 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "ca2b8a661f7628cbd23440e50b05d705db3686f894fc9580820623656af974b1"
 
 [[package]]
+name = "windows_x86_64_gnu"
+version = "0.52.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "3d6fa32db2bc4a2f5abeacf2b69f7992cd09dca97498da74a151a3132c26befd"
+
+[[package]]
 name = "windows_x86_64_gnullvm"
 version = "0.42.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -5983,6 +6558,12 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "7896dbc1f41e08872e9d5e8f8baa8fdd2677f29468c4e156210174edc7f7b953"
 
 [[package]]
+name = "windows_x86_64_gnullvm"
+version = "0.52.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "1a657e1e9d3f514745a572a6846d3c7aa7dbe1658c056ed9c3344c4109a6949e"
+
+[[package]]
 name = "windows_x86_64_msvc"
 version = "0.42.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -5995,10 +6576,25 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "1a515f5799fe4961cb532f983ce2b23082366b898e52ffbce459c86f67c8378a"
 
 [[package]]
+name = "windows_x86_64_msvc"
+version = "0.52.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "dff9641d1cd4be8d1a070daf9e3773c5f67e78b4d9d42263020c057706765c04"
+
+[[package]]
+name = "winnow"
+version = "0.5.37"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "a7cad8365489051ae9f054164e459304af2e7e9bb407c958076c8bf4aef52da5"
+dependencies = [
+ "memchr",
+]
+
+[[package]]
 name = "winreg"
-version = "0.50.0"
+version = "0.52.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "524e57b2c537c0f9b1e69f1965311ec12182b4122e45035b1508cd24d2adadb1"
+checksum = "a277a57398d4bfa075df44f501a17cfdf8542d224f0d36095a2adc7aee4ef0a5"
 dependencies = [
  "cfg-if",
  "windows-sys 0.48.0",
@@ -6054,7 +6650,7 @@ checksum = "b3c129550b3e6de3fd0ba67ba5c81818f9805e58b8d7fee80a3a59d2c9fc601a"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.32",
+ "syn 2.0.48",
 ]
 
 [[package]]
@@ -6064,10 +6660,16 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "655b0814c5c0b19ade497851070c640773304939a6c0fd5f5fb43da0696d05b7"
 
 [[package]]
+name = "zeroize"
+version = "1.7.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "525b4ec142c6b68a2d10f01f7bbf6755599ca3f81ea53b8431b7dd348f5fdb2d"
+
+[[package]]
 name = "zerovec"
-version = "0.9.6"
+version = "0.10.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "591691014119b87047ead4dcf3e6adfbf73cb7c38ab6980d4f18a32138f35d46"
+checksum = "eff4439ae91fb5c72b8abc12f3f2dbf51bd27e6eadb9f8a5bc8898dddb0e27ea"
 dependencies = [
  "zerofrom",
 ]
@@ -6103,11 +6705,11 @@ dependencies = [
 
 [[package]]
 name = "zstd"
-version = "0.12.2+zstd.1.5.2"
+version = "0.13.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e9262a83dc741c0b0ffec209881b45dbc232c21b02a2b9cb1adb93266e41303d"
+checksum = "bffb3309596d527cfcba7dfc6ed6052f1d39dfbd7c867aa2e865e4a449c10110"
 dependencies = [
- "zstd-safe 6.0.2+zstd.1.5.2",
+ "zstd-safe 7.0.0",
 ]
 
 [[package]]
@@ -6122,20 +6724,19 @@ dependencies = [
 
 [[package]]
 name = "zstd-safe"
-version = "6.0.2+zstd.1.5.2"
+version = "7.0.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a6cf39f730b440bab43da8fb5faf5f254574462f73f260f85f7987f32154ff17"
+checksum = "43747c7422e2924c11144d5229878b98180ef8b06cca4ab5af37afc8a8d8ea3e"
 dependencies = [
- "libc",
  "zstd-sys",
 ]
 
 [[package]]
 name = "zstd-sys"
-version = "2.0.4+zstd.1.5.2"
+version = "2.0.9+zstd.1.5.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4fa202f2ef00074143e219d15b62ffc317d17cc33909feac471c044087cad7b0"
+checksum = "9e16efa8a874a0481a574084d34cc26fdb3b99627480f785888deb6386506656"
 dependencies = [
  "cc",
- "libc",
+ "pkg-config",
 ]
diff --git a/pkgs/servers/search/qdrant/default.nix b/pkgs/servers/search/qdrant/default.nix
index 801887103ec4..8a9ec8e3a459 100644
--- a/pkgs/servers/search/qdrant/default.nix
+++ b/pkgs/servers/search/qdrant/default.nix
@@ -13,25 +13,21 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "qdrant";
-  version = "1.7.4";
+  version = "1.9.0";
 
   src = fetchFromGitHub {
     owner = "qdrant";
     repo = "qdrant";
     rev = "refs/tags/v${version}";
-    sha256 = "sha256-BgsLmE50mGmB5fcUjov8wcAHRTKMYaoyoXjSUyIddlc=";
+    sha256 = "sha256-SirqQW/OxFvsyra80znSDakHwFjHk2YkpAaNwXnbK60=";
   };
 
-  patches = [
-    ./1.7.4-CVE-2024-3078.patch
-  ];
-
   cargoLock = {
     lockFile = ./Cargo.lock;
     outputHashes = {
-      "quantization-0.1.0" = "sha256-ggVqJiftu0nvyEM0dzsH0JqIc/Z1XILyUSKiJHeuuZs=";
+      "quantization-0.1.0" = "sha256-BofK1X06efESoxVJmlCY5D3toFmo2ZkKNz11ot2imIs=";
       "tonic-0.9.2" = "sha256-ZlcDUZy/FhxcgZE7DtYhAubOq8DMSO17T+TCmXar1jE=";
-      "wal-0.1.2" = "sha256-nBGwpphtj+WBwL9TmWk7qXiEqlIWkgh/2V9uProqhMk=";
+      "wal-0.1.2" = "sha256-YjOXYg8dnYsb+Zl6xUkAccjZZn3tyf3fR/kWTfUjlgg=";
     };
   };
 
diff --git a/pkgs/servers/search/weaviate/default.nix b/pkgs/servers/search/weaviate/default.nix
index 3170ab1fd7c2..a15ed6f5ced4 100644
--- a/pkgs/servers/search/weaviate/default.nix
+++ b/pkgs/servers/search/weaviate/default.nix
@@ -5,16 +5,16 @@
 
 buildGoModule rec {
   pname = "weaviate";
-  version = "1.24.10";
+  version = "1.25.0";
 
   src = fetchFromGitHub {
     owner = "weaviate";
     repo = "weaviate";
     rev = "v${version}";
-    hash = "sha256-+8l0On2A3hTkBCRGFfQVwoZcwPxcLwe0Ju2Fr2N0K50=";
+    hash = "sha256-3ZjsFIxrlDCkbiIPNH+nkCwl9SEGA1h6632ZlIc9HBc=";
   };
 
-  vendorHash = "sha256-f7LskkQbsPwNmrzLTze0C66y++7Vqtb15tjW142TQmE=";
+  vendorHash = "sha256-4QSc4dU1bEpKpiG7FwSq/BbnFL94DqgjQo6zN67d8Sw=";
 
   subPackages = [ "cmd/weaviate-server" ];
 
diff --git a/pkgs/servers/sftpgo/default.nix b/pkgs/servers/sftpgo/default.nix
index ee6d8c8d15b5..9e7f1b6b456c 100644
--- a/pkgs/servers/sftpgo/default.nix
+++ b/pkgs/servers/sftpgo/default.nix
@@ -7,16 +7,16 @@
 
 buildGoModule rec {
   pname = "sftpgo";
-  version = "2.5.6";
+  version = "2.6.0";
 
   src = fetchFromGitHub {
     owner = "drakkan";
     repo = "sftpgo";
     rev = "refs/tags/v${version}";
-    hash = "sha256-ea4DbPwi2tcRgmbNsZKKUOVkp6vjRbr679yAP7znNUc=";
+    hash = "sha256-HsSBW30qSU3SRyexk2tRjY1FQcBsa70fK3UuT+Gdtm0=";
   };
 
-  vendorHash = "sha256-8TBDaDBLy+82BwsaLncDknVIrauF0eop9e2ZhwcLmIs=";
+  vendorHash = "sha256-BMwEDsXzk8ExygKreWmtkNvhlg3+YU9KcY1pp+9XffI=";
 
   ldflags = [
     "-s"
diff --git a/pkgs/servers/smcroute/default.nix b/pkgs/servers/smcroute/default.nix
index 2bebb4ecfc5d..09d2ef89131a 100644
--- a/pkgs/servers/smcroute/default.nix
+++ b/pkgs/servers/smcroute/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "smcroute";
-  version = "2.5.6";
+  version = "2.5.7";
 
   src = fetchFromGitHub {
     owner = "troglobit";
     repo = "smcroute";
     rev = version;
-    sha256 = "sha256-I9kc1F+GZf8Gl0Wx3J45Bf/RyFTyHVhwDz5l+sp/2pc=";
+    sha256 = "sha256-b1FsaDw5wAZkOwc6Y7TsMwyfxIRQ2rNUTK+knEzOn7w=";
   };
 
   nativeBuildInputs = [ autoreconfHook pkg-config ];
diff --git a/pkgs/servers/snac2/default.nix b/pkgs/servers/snac2/default.nix
index e15add96d644..9c2594c80f99 100644
--- a/pkgs/servers/snac2/default.nix
+++ b/pkgs/servers/snac2/default.nix
@@ -10,14 +10,14 @@
 
 stdenv.mkDerivation rec {
   pname = "snac2";
-  version = "2.51";
+  version = "2.52";
 
   src = fetchFromGitea {
     domain = "codeberg.org";
     owner = "grunfink";
     repo = pname;
     rev = version;
-    hash = "sha256-ahUWHWtVgJksOg6CTqJSQBaD577zaNu4u1sDG0ksr4g=";
+    hash = "sha256-2dDIbY6IaB53BbtNtzyOrigjzkGk7By2N2zZSuQhDAs=";
   };
 
   buildInputs = [ curl openssl ];
diff --git a/pkgs/servers/snappymail/default.nix b/pkgs/servers/snappymail/default.nix
index 67bb78320548..19450e532d20 100644
--- a/pkgs/servers/snappymail/default.nix
+++ b/pkgs/servers/snappymail/default.nix
@@ -7,11 +7,11 @@
 
 stdenv.mkDerivation rec {
   pname = "snappymail";
-  version = "2.36.0";
+  version = "2.36.1";
 
   src = fetchurl {
     url = "https://github.com/the-djmaze/snappymail/releases/download/v${version}/snappymail-${version}.tar.gz";
-    sha256 = "sha256-UTzWGwvlRtflpvMNbEg9XM2wllfa41EGLri9GcDzP4c=";
+    sha256 = "sha256-Dj4lyg0z/Wfy+CUWHHJtSNHbitFmLJaLletxyiXdrmU=";
   };
 
   sourceRoot = "snappymail";
diff --git a/pkgs/servers/sonarr/default.nix b/pkgs/servers/sonarr/default.nix
index a19dc7149114..cc59c9f27970 100644
--- a/pkgs/servers/sonarr/default.nix
+++ b/pkgs/servers/sonarr/default.nix
@@ -10,15 +10,15 @@ let
   }."${stdenv.hostPlatform.system}" or (throw "Unsupported system: ${stdenv.hostPlatform.system}");
 
   hash = {
-    x64-linux_hash = "sha256-xGaPNEPSpUr9sv4DTK8oDHzmLytp3Tp+cp45Q1TKYrc=";
-    arm64-linux_hash = "sha256-YeHXIyocRgaHmKrE9K9E3+xZyS2MDnsxmSIJB7dAQLU=";
-    x64-osx_hash = "sha256-8/YEKfSldXBtnkWBEXmCWYIJ2ePJj1aMDpBO3+cDcDk=";
-    arm64-osx_hash = "sha256-3aA8SlhNLOBAZIcsnjfl0ninsDej+KqTTwmm+rLYRFk=";
+    x64-linux_hash = "sha256-rtlOFfeiZLsoZR/bUPAtWicK1Cu/pxtiBhHdHYbGrHo=";
+    arm64-linux_hash = "sha256-jMp1kDVCQYtDhO28HoBuo7IAlEaoqPFW8EPYXc1zpKM=";
+    x64-osx_hash = "sha256-2wcTRqbvlQAFY20IeIQnqWGJYMB1P3z+PftKau1ucdk=";
+    arm64-osx_hash = "sha256-3CrNLxmk5oHiGHkrKt17tfo021+O6JZ6RKBdsaf0f1I=";
   }."${arch}-${os}_hash";
 in
 stdenv.mkDerivation rec {
   pname = "sonarr";
-  version = "4.0.3.1413";
+  version = "4.0.4.1491";
 
   src = fetchurl {
     url = "https://github.com/Sonarr/Sonarr/releases/download/v${version}/Sonarr.main.${version}.${os}-${arch}.tar.gz";
diff --git a/pkgs/servers/spicedb/default.nix b/pkgs/servers/spicedb/default.nix
index 8ded7678a860..e92978b56fd4 100644
--- a/pkgs/servers/spicedb/default.nix
+++ b/pkgs/servers/spicedb/default.nix
@@ -6,16 +6,16 @@
 
 buildGoModule rec {
   pname = "spicedb";
-  version = "1.31.0";
+  version = "1.32.0";
 
   src = fetchFromGitHub {
     owner = "authzed";
     repo = "spicedb";
     rev = "v${version}";
-    hash = "sha256-xbYK+9wTsOIh8fpgbL63JmDzsXFmfPa0TKS06hmwLAg=";
+    hash = "sha256-PIl5FmXWyp6mkSzTQe7hu4aWeQgGa1YrC5+t1eMQhPY=";
   };
 
-  vendorHash = "sha256-RBQfrz74Fzse9Rjj6DGfMttbupfSFjP5KbxFHihwMKY=";
+  vendorHash = "sha256-LrNoIknYY9XIwdyUq7f5pG0IU0WZVSgTNMTFoZAIhp8=";
 
   subPackages = [ "cmd/spicedb" ];
 
diff --git a/pkgs/servers/spicedb/zed.nix b/pkgs/servers/spicedb/zed.nix
index e42bf543a239..5b6e9d24e114 100644
--- a/pkgs/servers/spicedb/zed.nix
+++ b/pkgs/servers/spicedb/zed.nix
@@ -5,16 +5,16 @@
 
 buildGoModule rec {
   pname = "zed";
-  version = "0.18.0";
+  version = "0.18.1";
 
   src = fetchFromGitHub {
     owner = "authzed";
     repo = "zed";
     rev = "v${version}";
-    hash = "sha256-3qjwBsMISmh+0YJxYx36c3ceZJBpqkA+9XRZfgqhezw=";
+    hash = "sha256-+FXFHjGWKcIt3urDokk5PF24JPVs21RbQtpcYz2midM=";
   };
 
-  vendorHash = "sha256-U4hFB/v9DHa3iDZJ+AgbFk5/E/LkvUoYHcaSArE/PKk=";
+  vendorHash = "sha256-Z6j4w4/anfK0ln2MvgnwZFoe8BA5jVHG3g9m2TynmmE=";
 
   meta = with lib; {
     description = "Command line for managing SpiceDB";
diff --git a/pkgs/servers/sql/dolt/default.nix b/pkgs/servers/sql/dolt/default.nix
index a947a2a9ea30..b95022dc7c13 100644
--- a/pkgs/servers/sql/dolt/default.nix
+++ b/pkgs/servers/sql/dolt/default.nix
@@ -2,18 +2,18 @@
 
 buildGoModule rec {
   pname = "dolt";
-  version = "1.35.11";
+  version = "1.38.0";
 
   src = fetchFromGitHub {
     owner = "dolthub";
     repo = "dolt";
     rev = "v${version}";
-    sha256 = "sha256-nOS6Gj6id9s03iEhhhj99v3t38i/AoFO72swi30fflw=";
+    sha256 = "sha256-R3BrF2563jN7rQbF0Edh9clgHh91inmDLHuEFiowrVI=";
   };
 
   modRoot = "./go";
   subPackages = [ "cmd/dolt" ];
-  vendorHash = "sha256-tNnfHyqBN49Z/F4Z68JfSa860uo0i2gAkKv2IDoONr4=";
+  vendorHash = "sha256-QyiWmVqa+eqUvMTC2swM9Rumhn4Me+FA+FGnJGElKDA=";
   proxyVendor = true;
   doCheck = false;
 
diff --git a/pkgs/servers/sql/materialize/default.nix b/pkgs/servers/sql/materialize/default.nix
index 90297cfa81ae..d31433db7f1f 100644
--- a/pkgs/servers/sql/materialize/default.nix
+++ b/pkgs/servers/sql/materialize/default.nix
@@ -70,7 +70,6 @@ rustPlatform.buildRustPackage rec {
   # needed for internal protobuf c wrapper library
   env.PROTOC = "${protobuf}/bin/protoc";
   env.PROTOC_INCLUDE = "${protobuf}/include";
-  env.LIBCLANG_PATH = "${libclang.lib}/lib";
   # needed to dynamically link rdkafka
   env.CARGO_FEATURE_DYNAMIC_LINKING=1;
 
diff --git a/pkgs/servers/sql/patroni/default.nix b/pkgs/servers/sql/patroni/default.nix
index 23c165ab545f..abf1ecbac053 100644
--- a/pkgs/servers/sql/patroni/default.nix
+++ b/pkgs/servers/sql/patroni/default.nix
@@ -6,24 +6,17 @@
 
 pythonPackages.buildPythonApplication rec {
   pname = "patroni";
-  version = "2.1.3";
+  version = "3.3.0";
 
   src = fetchFromGitHub {
     owner = "zalando";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-cBkiBrty/6A3rIv9A1oh8GvPjwxhHwYEKuDIsNzHw1g=";
+    sha256 = "sha256-gOjjE++hf3GOimvCxBR0jqqi3JNpbejLcWbLHpz2H4Q=";
   };
 
-  # cdiff renamed to ydiff; remove when patroni source reflects this.
-  postPatch = ''
-    for i in requirements.txt patroni/ctl.py tests/test_ctl.py; do
-      substituteInPlace $i --replace cdiff ydiff
-    done
-  '';
-
   propagatedBuildInputs = with pythonPackages; [
-    boto
+    boto3
     click
     consul
     dnspython
diff --git a/pkgs/servers/sql/percona-server/default.nix b/pkgs/servers/sql/percona-server/default.nix
new file mode 100644
index 000000000000..8cab6ec656a2
--- /dev/null
+++ b/pkgs/servers/sql/percona-server/default.nix
@@ -0,0 +1,15 @@
+pkgs: {
+  percona-server_lts = pkgs.callPackage ./lts.nix {
+    inherit (pkgs.darwin) cctools developer_cmds DarwinTools;
+    inherit (pkgs.darwin.apple_sdk.frameworks) CoreServices;
+    boost = pkgs.boost177; # Configure checks for specific version.
+    icu = pkgs.icu69;
+    protobuf = pkgs.protobuf_21;
+  };
+  percona-server_innovation = pkgs.callPackage ./innovation.nix {
+    inherit (pkgs.darwin) cctools developer_cmds DarwinTools;
+    inherit (pkgs.darwin.apple_sdk.frameworks) CoreServices;
+    # newer versions cause linking failures against `libabsl_spinlock_wait`
+    protobuf = pkgs.protobuf_21;
+  };
+}
diff --git a/pkgs/servers/sql/percona-server/innovation.nix b/pkgs/servers/sql/percona-server/innovation.nix
new file mode 100644
index 000000000000..d19c17554226
--- /dev/null
+++ b/pkgs/servers/sql/percona-server/innovation.nix
@@ -0,0 +1,112 @@
+{ lib, stdenv, fetchurl, bison, cmake, pkg-config
+, boost, icu, libedit, libevent, lz4, ncurses, openssl, perl, protobuf, re2, readline, zlib, zstd, libfido2
+, numactl, cctools, CoreServices, developer_cmds, libtirpc, rpcsvc-proto, curl, DarwinTools, nixosTests
+, systemd
+# Percona-specific deps
+, coreutils, cyrus_sasl, gnumake, openldap
+# optional: different malloc implementations
+, withJemalloc ? false, withTcmalloc ? false, jemalloc, gperftools
+}:
+
+assert !(withJemalloc && withTcmalloc);
+
+
+stdenv.mkDerivation (finalAttrs: {
+  pname = "percona-server_innovation";
+  version = "8.3.0-1";
+
+  src = fetchurl {
+    url = "https://downloads.percona.com/downloads/percona-distribution-mysql-ps/percona-distribution-mysql-ps-${builtins.head (lib.strings.split "-" finalAttrs.version)}/source/tarball/percona-server-${finalAttrs.version}.tar.gz";
+    hash = "sha256-GeuifzqCkStmb4qYa8147XBHvMogYwfsn0FyHdO4WEg";
+  };
+
+  nativeBuildInputs = [ bison cmake pkg-config ]
+    ++ lib.optionals (!stdenv.isDarwin) [ rpcsvc-proto ];
+
+  patches = [
+    ./no-force-outline-atomics.patch # Do not force compilers to turn on -moutline-atomics switch
+  ];
+
+  ## NOTE: MySQL upstream frequently twiddles the invocations of libtool. When updating, you might proactively grep for libtool references.
+  postPatch = ''
+    substituteInPlace cmake/libutils.cmake --replace /usr/bin/libtool libtool
+    substituteInPlace cmake/os/Darwin.cmake --replace /usr/bin/libtool libtool
+    # The rocksdb setup script is called with `env -i` and cannot find anything in PATH.
+    patchShebangs storage/rocksdb/get_rocksdb_files.sh
+    substituteInPlace storage/rocksdb/get_rocksdb_files.sh --replace mktemp ${coreutils}/bin/mktemp
+    substituteInPlace storage/rocksdb/get_rocksdb_files.sh --replace "rm $MKFILE" "${coreutils}/bin/rm $MKFILE"
+    substituteInPlace storage/rocksdb/get_rocksdb_files.sh --replace "make --" "${gnumake}/bin/make --"
+  '';
+
+  buildInputs = [
+    boost (curl.override { inherit openssl; }) icu libedit libevent lz4 ncurses openssl protobuf re2 readline zlib
+    zstd libfido2 openldap perl cyrus_sasl
+  ] ++ lib.optionals stdenv.isLinux [
+    numactl libtirpc systemd
+  ] ++ lib.optionals stdenv.isDarwin [
+    cctools CoreServices developer_cmds DarwinTools
+  ]
+  ++ lib.optional (stdenv.isLinux && withJemalloc) jemalloc
+  ++ lib.optional (stdenv.isLinux && withTcmalloc) gperftools;
+
+  outputs = [ "out" "static" ];
+
+  cmakeFlags = [
+    # Percona-specific flags.
+    "-DPORTABLE=1"
+    "-DWITH_LDAP=system"
+    "-DROCKSDB_DISABLE_AVX2=1"
+    "-DROCKSDB_DISABLE_MARCH_NATIVE=1"
+
+    # Flags taken from mysql package.
+    "-DFORCE_UNSUPPORTED_COMPILER=1" # To configure on Darwin.
+    "-DWITH_ROUTER=OFF" # It may be packaged separately.
+    "-DWITH_SYSTEM_LIBS=ON"
+    "-DWITH_UNIT_TESTS=OFF"
+    "-DMYSQL_UNIX_ADDR=/run/mysqld/mysqld.sock"
+    "-DMYSQL_DATADIR=/var/lib/mysql"
+    "-DINSTALL_INFODIR=share/mysql/docs"
+    "-DINSTALL_MANDIR=share/man"
+    "-DINSTALL_PLUGINDIR=lib/mysql/plugin"
+    "-DINSTALL_INCLUDEDIR=include/mysql"
+    "-DINSTALL_DOCREADMEDIR=share/mysql"
+    "-DINSTALL_SUPPORTFILESDIR=share/mysql"
+    "-DINSTALL_MYSQLSHAREDIR=share/mysql"
+    "-DINSTALL_MYSQLTESTDIR="
+    "-DINSTALL_DOCDIR=share/mysql/docs"
+    "-DINSTALL_SHAREDIR=share/mysql"
+
+
+  ] ++ lib.optionals stdenv.isLinux [
+    "-DWITH_SYSTEMD=1"
+    "-DWITH_SYSTEMD_DEBUG=1"
+  ]
+  ++ lib.optional (stdenv.isLinux && withJemalloc) "-DWITH_JEMALLOC=1"
+  ++ lib.optional (stdenv.isLinux && withTcmalloc) "-DWITH_TCMALLOC=1";
+
+  postInstall = ''
+    moveToOutput "lib/*.a" $static
+    so=${stdenv.hostPlatform.extensions.sharedLibrary}
+    ln -s libmysqlclient$so $out/lib/libmysqlclient_r$so
+  '';
+
+  passthru = {
+    client = finalAttrs.finalPackage;
+    connector-c = finalAttrs.finalPackage;
+    server = finalAttrs.finalPackage;
+    mysqlVersion = lib.versions.majorMinor finalAttrs.version;
+    tests = nixosTests.mysql.percona-server_innovation;
+  };
+
+
+  meta = with lib; {
+    homepage = "https://www.percona.com/software/mysql-database/percona-server";
+    description = ''
+      A free, fully compatible, enhanced, open source drop-in replacement for
+      MySQL® that provides superior performance, scalability and instrumentation.
+    '';
+    license = licenses.gpl2;
+    maintainers = teams.flyingcircus.members;
+    platforms = platforms.unix;
+  };
+})
diff --git a/pkgs/servers/sql/percona-server/8.0.x.nix b/pkgs/servers/sql/percona-server/lts.nix
index a2f4dd1c04e0..f8b13aa4180a 100644
--- a/pkgs/servers/sql/percona-server/8.0.x.nix
+++ b/pkgs/servers/sql/percona-server/lts.nix
@@ -6,7 +6,7 @@
 }:
 
 stdenv.mkDerivation (finalAttrs: {
-  pname = "percona-server";
+  pname = "percona-server_lts";
   version = "8.0.36-28";
 
   src = fetchurl {
@@ -80,7 +80,7 @@ stdenv.mkDerivation (finalAttrs: {
     connector-c = finalAttrs.finalPackage;
     server = finalAttrs.finalPackage;
     mysqlVersion = lib.versions.majorMinor finalAttrs.version;
-    tests = nixosTests.mysql.percona-server_8_0;
+    tests = nixosTests.mysql.percona-server_lts;
   };
 
   meta = with lib; {
diff --git a/pkgs/servers/sql/postgresql/12.nix b/pkgs/servers/sql/postgresql/12.nix
index 9e0388be0451..d29fc7683048 100644
--- a/pkgs/servers/sql/postgresql/12.nix
+++ b/pkgs/servers/sql/postgresql/12.nix
@@ -1,10 +1,4 @@
 import ./generic.nix {
   version = "12.18";
   hash = "sha256-T5kZcl2UHOmGjgf+HtHTqGdIWZtIM4ZUdYOSi3TDkYo=";
-  muslPatches = {
-    icu-collations-hack = {
-      url = "https://git.alpinelinux.org/aports/plain/testing/postgresql12/icu-collations-hack.patch?id=d5227c91adda59d4e7f55f13468f0314e8869174";
-      hash = "sha256-wuwjvGHArkRNwFo40g3p43W32OrJohretlt6iSRlJKg=";
-    };
-  };
 }
diff --git a/pkgs/servers/sql/postgresql/13.nix b/pkgs/servers/sql/postgresql/13.nix
index a4870812acdb..c81e15bc7f68 100644
--- a/pkgs/servers/sql/postgresql/13.nix
+++ b/pkgs/servers/sql/postgresql/13.nix
@@ -2,10 +2,6 @@ import ./generic.nix {
   version = "13.14";
   hash = "sha256-uN8HhVGJiWC9UA3F04oXfpkFN234H+fytmChQH+mpe0=";
   muslPatches = {
-    icu-collations-hack = {
-      url = "https://git.alpinelinux.org/aports/plain/main/postgresql14/icu-collations-hack.patch?id=56999e6d0265ceff5c5239f85fdd33e146f06cb7";
-      hash = "sha256-wuwjvGHArkRNwFo40g3p43W32OrJohretlt6iSRlJKg=";
-    };
     disable-test-collate-icu-utf8 = {
       url = "https://git.alpinelinux.org/aports/plain/main/postgresql13/disable-test-collate.icu.utf8.patch?id=69faa146ec9fff3b981511068f17f9e629d4688b";
       hash = "sha256-jS/qxezaiaKhkWeMCXwpz1SDJwUWn9tzN0uKaZ3Ph2Y=";
diff --git a/pkgs/servers/sql/postgresql/14.nix b/pkgs/servers/sql/postgresql/14.nix
index 2de876cf4ad6..c96ddd3ddc80 100644
--- a/pkgs/servers/sql/postgresql/14.nix
+++ b/pkgs/servers/sql/postgresql/14.nix
@@ -2,10 +2,6 @@ import ./generic.nix {
   version = "14.11";
   hash = "sha256-pnC9fc4i3K1Cl7JhE2s7HUoJpvVBcZViqhTKY78paKg=";
   muslPatches = {
-    icu-collations-hack = {
-      url = "https://git.alpinelinux.org/aports/plain/main/postgresql14/icu-collations-hack.patch?id=56999e6d0265ceff5c5239f85fdd33e146f06cb7";
-      hash = "sha256-wuwjvGHArkRNwFo40g3p43W32OrJohretlt6iSRlJKg=";
-    };
     disable-test-collate-icu-utf8 = {
       url = "https://git.alpinelinux.org/aports/plain/main/postgresql14/disable-test-collate.icu.utf8.patch?id=56999e6d0265ceff5c5239f85fdd33e146f06cb7";
       hash = "sha256-jXe23AxnFjEl+TZQm4R7rStk2Leo08ctxMNmu1xr5zM=";
diff --git a/pkgs/servers/sql/postgresql/15.nix b/pkgs/servers/sql/postgresql/15.nix
index f633dc975085..00dfc0cbbc19 100644
--- a/pkgs/servers/sql/postgresql/15.nix
+++ b/pkgs/servers/sql/postgresql/15.nix
@@ -1,10 +1,4 @@
 import ./generic.nix {
   version = "15.6";
   hash = "sha256-hFUUbtnGnJOlfelUrq0DAsr60DXCskIXXWqh4X68svs=";
-  muslPatches = {
-    icu-collations-hack = {
-      url = "https://git.alpinelinux.org/aports/plain/main/postgresql15/icu-collations-hack.patch?id=f424e934e6d076c4ae065ce45e734aa283eecb9c";
-      hash = "sha256-HgtmhF4OJYU9macGJbTB9PjQi/yW7c3Akm3U0niWs8I=";
-    };
-  };
 }
diff --git a/pkgs/servers/sql/postgresql/16.nix b/pkgs/servers/sql/postgresql/16.nix
index 6a6420643b31..cdc37b7c62f5 100644
--- a/pkgs/servers/sql/postgresql/16.nix
+++ b/pkgs/servers/sql/postgresql/16.nix
@@ -1,10 +1,4 @@
 import ./generic.nix {
   version = "16.2";
   hash = "sha256-RG6IKU28LJCFq0twYaZG+mBLS+wDUh1epnHC5a2bKVI=";
-  muslPatches = {
-    icu-collations-hack = {
-      url = "https://git.alpinelinux.org/aports/plain/main/postgresql16/icu-collations-hack.patch?id=08a24be262339fd093e641860680944c3590238e";
-      hash = "sha256-+urQdVIlADLdDPeT68XYv5rljhbK8M/7mPZn/cF+FT0=";
-    };
-  };
 }
diff --git a/pkgs/servers/sql/postgresql/default.nix b/pkgs/servers/sql/postgresql/default.nix
index d11a2d06b2d2..ff9f4f4150a2 100644
--- a/pkgs/servers/sql/postgresql/default.nix
+++ b/pkgs/servers/sql/postgresql/default.nix
@@ -15,7 +15,6 @@ let
       in
       self.lib.nameValuePair attrName (import path {
         inherit jitSupport self;
-        thisAttr = attrName;
       })
     ) versions;
 
diff --git a/pkgs/servers/sql/postgresql/ext/pg_libversion.nix b/pkgs/servers/sql/postgresql/ext/pg_libversion.nix
index 9d4d46a769b4..b5c3ad6acab8 100644
--- a/pkgs/servers/sql/postgresql/ext/pg_libversion.nix
+++ b/pkgs/servers/sql/postgresql/ext/pg_libversion.nix
@@ -1,6 +1,7 @@
  { lib
 , stdenv
 , fetchFromGitHub
+, gitUpdater
 , pkg-config
 , postgresql
 , libversion
@@ -8,13 +9,13 @@
 
 stdenv.mkDerivation (finalAttrs: {
   pname = "pg_libversion";
-  version = "2.0.0";
+  version = "2.0.1";
 
   src = fetchFromGitHub {
     owner = "repology";
     repo = "postgresql-libversion";
     rev = finalAttrs.version;
-    hash = "sha256-60HX/Y+6QIzqmDnjNpgO4GCbDhNfeek9myMWoYLdrAA=";
+    hash = "sha256-3nqXaBwPRUSo6wUY5YMjJ/nFFKmhgP1zFKapD+RqSDw=";
   };
 
   nativeBuildInputs = [
@@ -36,6 +37,8 @@ stdenv.mkDerivation (finalAttrs: {
     runHook postInstall
   '';
 
+  passthru.updateScript = gitUpdater { };
+
   meta = with lib; {
     description = "PostgreSQL extension with support for version string comparison";
     homepage = "https://github.com/repology/postgresql-libversion";
diff --git a/pkgs/servers/sql/postgresql/ext/pgjwt.nix b/pkgs/servers/sql/postgresql/ext/pgjwt.nix
index 2b6ee2edaf85..7134c052363d 100644
--- a/pkgs/servers/sql/postgresql/ext/pgjwt.nix
+++ b/pkgs/servers/sql/postgresql/ext/pgjwt.nix
@@ -2,7 +2,7 @@
 
 stdenv.mkDerivation {
   pname = "pgjwt";
-  version = "unstable-2023-03-02";
+  version = "0-unstable-2023-03-02";
 
   src = fetchFromGitHub {
     owner  = "michelp";
diff --git a/pkgs/servers/sql/postgresql/ext/pgvecto-rs/default.nix b/pkgs/servers/sql/postgresql/ext/pgvecto-rs/default.nix
index d6a4f24bf5e6..9cbf6ae442e4 100644
--- a/pkgs/servers/sql/postgresql/ext/pgvecto-rs/default.nix
+++ b/pkgs/servers/sql/postgresql/ext/pgvecto-rs/default.nix
@@ -2,7 +2,6 @@
 , buildPgrxExtension
 , cargo-pgrx_0_11_2
 , clang_16
-, fetchCrate
 , fetchFromGitHub
 , nix-update-script
 , nixosTests
@@ -93,7 +92,9 @@ in
   meta = with lib; {
     # The pgrx 0.11.2 dependency is broken in aarch64-linux: https://github.com/pgcentralfoundation/pgrx/issues/1429
     # It is fixed in pgrx 0.11.3, but upstream is still using pgrx 0.11.2
-    broken = (stdenv.isLinux && stdenv.isAarch64) || stdenv.isDarwin;
+    # Additionally, upstream (accidentally) broke support for PostgreSQL 12 and 13 on 0.2.1, but
+    # they are removing it in 0.3.0 either way: https://github.com/tensorchord/pgvecto.rs/issues/343
+    broken = (stdenv.isLinux && stdenv.isAarch64) || stdenv.isDarwin || (versionOlder postgresql.version "14");
     description = "Scalable, Low-latency and Hybrid-enabled Vector Search in Postgres";
     homepage = "https://github.com/tensorchord/pgvecto.rs";
     license = licenses.asl20;
diff --git a/pkgs/servers/sql/postgresql/ext/tds_fdw.nix b/pkgs/servers/sql/postgresql/ext/tds_fdw.nix
index 9986f2131f30..86ab520944e7 100644
--- a/pkgs/servers/sql/postgresql/ext/tds_fdw.nix
+++ b/pkgs/servers/sql/postgresql/ext/tds_fdw.nix
@@ -3,7 +3,7 @@
 stdenv.mkDerivation rec {
   pname = "tds_fdw";
   # Move to stable version when it's released.
-  version = "unstable-2024-02-10";
+  version = "2.0.3-unstable-2024-02-10";
 
   buildInputs = [ postgresql freetds ];
 
@@ -21,7 +21,9 @@ stdenv.mkDerivation rec {
     install -D tds_fdw.control -t $out/share/postgresql/extension
   '';
 
-  passthru.updateScript = unstableGitUpdater { };
+  passthru.updateScript = unstableGitUpdater {
+    tagPrefix = "v";
+  };
 
   meta = with lib; {
     description = "A PostgreSQL foreign data wrapper to connect to TDS databases (Sybase and Microsoft SQL Server)";
diff --git a/pkgs/servers/sql/postgresql/generic.nix b/pkgs/servers/sql/postgresql/generic.nix
index 302350edeb5e..705407a93256 100644
--- a/pkgs/servers/sql/postgresql/generic.nix
+++ b/pkgs/servers/sql/postgresql/generic.nix
@@ -16,10 +16,10 @@ let
       , self, newScope, buildEnv
 
       # source specification
-      , version, hash, muslPatches
+      , version, hash, muslPatches ? {}
 
       # for tests
-      , testers, nixosTests, thisAttr
+      , testers, nixosTests
 
       # JIT
       , jitSupport
@@ -45,7 +45,8 @@ let
 
     stdenv' = if jitSupport then llvmPackages.stdenv else stdenv;
   in stdenv'.mkDerivation (finalAttrs: {
-    inherit pname version;
+    inherit version;
+    pname = pname + lib.optionalString jitSupport "-jit";
 
     src = fetchurl {
       url = "mirror://postgresql/source/v${version}/${pname}-${version}.tar.bz2";
@@ -80,16 +81,15 @@ let
     ]
       ++ lib.optionals jitSupport [ llvmPackages.llvm.dev nukeReferences patchelf ];
 
-    enableParallelBuilding = !stdenv'.isDarwin;
+    enableParallelBuilding = true;
 
     separateDebugInfo = true;
 
     buildFlags = [ "world" ];
 
-    env.NIX_CFLAGS_COMPILE = "-I${libxml2.dev}/include/libxml2";
-
-    # Otherwise it retains a reference to compiler and fails; see #44767.  TODO: better.
-    preConfigure = "CC=${stdenv'.cc.targetPrefix}cc";
+    # Makes cross-compiling work when xml2-config can't be executed on the host.
+    # Fixed upstream in https://github.com/postgres/postgres/commit/0bc8cebdb889368abdf224aeac8bc197fe4c9ae6
+    env.NIX_CFLAGS_COMPILE = lib.optionalString (olderThan "13") "-I${libxml2.dev}/include/libxml2";
 
     configureFlags = [
       "--with-openssl"
@@ -109,12 +109,11 @@ let
       ++ lib.optionals stdenv'.isLinux [ "--with-pam" ];
 
     patches = [
-      (if atLeast "16" then ./patches/disable-normalize_exec_path.patch
-       else ./patches/disable-resolve_symlinks.patch)
+      (if atLeast "16" then ./patches/relative-to-symlinks-16+.patch else ./patches/relative-to-symlinks.patch)
       ./patches/less-is-more.patch
-      ./patches/hardcode-pgxs-path.patch
+      ./patches/paths-for-split-outputs.patch
       ./patches/specify_pkglibdir_at_runtime.patch
-      ./patches/findstring.patch
+      ./patches/paths-with-postgresql-suffix.patch
 
       (substituteAll {
         src = ./patches/locale-binary-path.patch;
@@ -125,16 +124,14 @@ let
       # Using fetchurl instead of fetchpatch on purpose: https://github.com/NixOS/nixpkgs/issues/240141
       map fetchurl (lib.attrValues muslPatches)
     ) ++ lib.optionals stdenv'.isLinux  [
-      (if atLeast "13" then ./patches/socketdir-in-run-13.patch else ./patches/socketdir-in-run.patch)
+      (if atLeast "13" then ./patches/socketdir-in-run-13+.patch else ./patches/socketdir-in-run.patch)
     ];
 
     installTargets = [ "install-world" ];
 
-    LC_ALL = "C";
-
     postPatch = ''
       # Hardcode the path to pgxs so pg_config returns the path in $out
-      substituteInPlace "src/common/config_info.c" --replace HARDCODED_PGXS_PATH "$out/lib"
+      substituteInPlace "src/common/config_info.c" --subst-var out
     '' + lib.optionalString jitSupport ''
         # Force lookup of jit stuff in $out instead of $lib
         substituteInPlace src/backend/jit/jit.c --replace pkglib_path \"$out/lib\"
@@ -201,6 +198,7 @@ let
     # autodetection doesn't seem to able to find this, but it's there.
     checkTarget = "check";
 
+    # TODO: Remove after the next set of minor releases on May 9th 2024
     preCheck =
       # On musl, comment skip the following tests, because they break due to
       #     ! ERROR:  could not load library "/build/postgresql-11.5/tmp_install/nix/store/...-postgresql-11.5-lib/lib/libpqwalreceiver.so": Error loading shared library libpq.so.5: No such file or directory (needed by /build/postgresql-11.5/tmp_install/nix/store/...-postgresql-11.5-lib/lib/libpqwalreceiver.so)
@@ -246,10 +244,18 @@ let
                      this.pkgs;
 
       tests = {
-        postgresql = nixosTests.postgresql-wal-receiver.${thisAttr};
+        postgresql-wal-receiver = import ../../../../nixos/tests/postgresql-wal-receiver.nix {
+          inherit (stdenv) system;
+          pkgs = self;
+          package = this;
+        };
         pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
       } // lib.optionalAttrs jitSupport {
-        postgresql-jit = nixosTests.postgresql-jit.${thisAttr};
+        postgresql-jit = import ../../../../nixos/tests/postgresql-jit.nix {
+          inherit (stdenv) system;
+          pkgs = self;
+          package = this;
+        };
       };
     };
 
@@ -272,7 +278,9 @@ let
       # resulting LLVM IR isn't platform-independent this doesn't give you much.
       # In fact, I tried to test the result in a VM-test, but as soon as JIT was used to optimize
       # a query, postgres would coredump with `Illegal instruction`.
-      broken = jitSupport && (stdenv.hostPlatform != stdenv.buildPlatform);
+      broken = (jitSupport && stdenv.hostPlatform != stdenv.buildPlatform)
+        # Allmost all tests fail FATAL errors for v12 and v13
+        || (jitSupport && stdenv.hostPlatform.isMusl && olderThan "14");
     };
   });
 
diff --git a/pkgs/servers/sql/postgresql/patches/disable-resolve_symlinks.patch b/pkgs/servers/sql/postgresql/patches/disable-resolve_symlinks.patch
deleted file mode 100644
index fadeea90ac4b..000000000000
--- a/pkgs/servers/sql/postgresql/patches/disable-resolve_symlinks.patch
+++ /dev/null
@@ -1,12 +0,0 @@
---- a/src/common/exec.c	2014-09-04 20:19:12.236057588 +0200
-+++ b/src/common/exec.c	2014-09-04 20:19:50.550251633 +0200
-@@ -218,6 +218,9 @@
- static int
- resolve_symlinks(char *path)
- {
-+	// On NixOS we *want* stuff relative to symlinks.
-+	return 0;
-+
- #ifdef HAVE_READLINK
- 	struct stat buf;
- 	char		orig_wd[MAXPGPATH],
diff --git a/pkgs/servers/sql/postgresql/patches/hardcode-pgxs-path.patch b/pkgs/servers/sql/postgresql/patches/hardcode-pgxs-path.patch
deleted file mode 100644
index 6cd449769baa..000000000000
--- a/pkgs/servers/sql/postgresql/patches/hardcode-pgxs-path.patch
+++ /dev/null
@@ -1,14 +0,0 @@
-diff -Naur postgresql-9.6.1-orig/src/common/config_info.c postgresql-9.6.1/src/common/config_info.c
---- postgresql-9.6.1-orig/src/common/config_info.c	2016-11-22 21:39:29.231929261 +0100
-+++ postgresql-9.6.1/src/common/config_info.c	2016-11-22 23:36:53.685163543 +0100
-@@ -118,7 +118,10 @@
- 	i++;
-
- 	configdata[i].name = pstrdup("PGXS");
-+	strlcpy(path, "HARDCODED_PGXS_PATH", sizeof(path));
-+/* commented out to be able to point to nix $out path
- 	get_pkglib_path(my_exec_path, path);
-+*/
- 	strlcat(path, "/pgxs/src/makefiles/pgxs.mk", sizeof(path));
- 	cleanup_path(path);
- 	configdata[i].setting = pstrdup(path);
diff --git a/pkgs/servers/sql/postgresql/patches/less-is-more.patch b/pkgs/servers/sql/postgresql/patches/less-is-more.patch
index f14af9dc2207..a72d1a28f9ce 100644
--- a/pkgs/servers/sql/postgresql/patches/less-is-more.patch
+++ b/pkgs/servers/sql/postgresql/patches/less-is-more.patch
@@ -1,6 +1,5 @@
-diff -Naur postgresql-9.6.1-orig/src/include/fe_utils/print.h postgresql-9.6.1/src/include/fe_utils/print.h
---- postgresql-9.6.1-orig/src/include/fe_utils/print.h	2016-11-22 21:39:29.148932827 +0100
-+++ postgresql-9.6.1/src/include/fe_utils/print.h	2016-11-22 21:39:36.283626258 +0100
+--- a/src/include/fe_utils/print.h
++++ b/src/include/fe_utils/print.h
 @@ -18,7 +18,7 @@
  
  /* This is not a particularly great place for this ... */
diff --git a/pkgs/servers/sql/postgresql/patches/locale-binary-path.patch b/pkgs/servers/sql/postgresql/patches/locale-binary-path.patch
index 08e90bce750c..8068683ab64b 100644
--- a/pkgs/servers/sql/postgresql/patches/locale-binary-path.patch
+++ b/pkgs/servers/sql/postgresql/patches/locale-binary-path.patch
@@ -1,5 +1,3 @@
-diff --git a/src/backend/commands/collationcmds.c b/src/backend/commands/collationcmds.c
-index fcfc02d..d011394 100644
 --- a/src/backend/commands/collationcmds.c
 +++ b/src/backend/commands/collationcmds.c
 @@ -611,7 +611,7 @@ pg_import_system_collations(PG_FUNCTION_ARGS)
diff --git a/pkgs/servers/sql/postgresql/patches/paths-for-split-outputs.patch b/pkgs/servers/sql/postgresql/patches/paths-for-split-outputs.patch
new file mode 100644
index 000000000000..2134f7e81a87
--- /dev/null
+++ b/pkgs/servers/sql/postgresql/patches/paths-for-split-outputs.patch
@@ -0,0 +1,11 @@
+--- a/src/common/config_info.c
++++ b/src/common/config_info.c
+@@ -118,7 +118,7 @@
+ 	i++;
+
+ 	configdata[i].name = pstrdup("PGXS");
++	strlcpy(path, "@out@/lib", sizeof(path));
+-	get_pkglib_path(my_exec_path, path);
+ 	strlcat(path, "/pgxs/src/makefiles/pgxs.mk", sizeof(path));
+ 	cleanup_path(path);
+ 	configdata[i].setting = pstrdup(path);
diff --git a/pkgs/servers/sql/postgresql/patches/findstring.patch b/pkgs/servers/sql/postgresql/patches/paths-with-postgresql-suffix.patch
index 959bf6a6caa4..04d2f556e0bf 100644
--- a/pkgs/servers/sql/postgresql/patches/findstring.patch
+++ b/pkgs/servers/sql/postgresql/patches/paths-with-postgresql-suffix.patch
@@ -1,19 +1,3 @@
-From: Matthew Bauer <mjbauer95@gmail.com>
-Date: Wed, 29 May 2019 22:51:52 -0400
-Subject: [PATCH] Add /postgresql suffix for Nix outputs
-
-Nix outputs put the `name' in each store path like
-/nix/store/...-<name>. This was confusing the Postgres make script
-because it thought its data directory already had postgresql in its
-directory. This lead to Postgres installing all of its fils in
-$out/share. To fix this, we just look for postgres or psql in the part
-after the / using make's notdir.
-
----
-From: Matthew Bauer <mjbauer95@gmail.com>
-Date: Wed, 29 May 2019 22:51:52 -0400
-Subject: [PATCH] Add /postgresql suffix for Nix outputs
-
 Nix outputs put the `name' in each store path like
 /nix/store/...-<name>. This was confusing the Postgres make script
 because it thought its data directory already had postgresql in its
@@ -22,8 +6,6 @@ $out/share. To fix this, we just look for postgres or psql in the part
 after the / using make's notdir.
 
 ---
-diff --git a/src/Makefile.global.in b/src/Makefile.global.in
-index b9d86acaa9..bce05464c3 100644
 --- a/src/Makefile.global.in
 +++ b/src/Makefile.global.in
 @@ -102,15 +102,15 @@ datarootdir := @datarootdir@
diff --git a/pkgs/servers/sql/postgresql/patches/disable-normalize_exec_path.patch b/pkgs/servers/sql/postgresql/patches/relative-to-symlinks-16+.patch
index 349fd4203348..996072ebd2fb 100644
--- a/pkgs/servers/sql/postgresql/patches/disable-normalize_exec_path.patch
+++ b/pkgs/servers/sql/postgresql/patches/relative-to-symlinks-16+.patch
@@ -1,10 +1,11 @@
+On NixOS we *want* stuff relative to symlinks.
+---
 --- a/src/common/exec.c
 +++ b/src/common/exec.c
-@@ -238,6 +238,9 @@
+@@ -238,6 +238,8 @@
  static int
  normalize_exec_path(char *path)
  {
-+	// On NixOS we *want* stuff relative to symlinks.
 +	return 0;
 +
  	/*
diff --git a/pkgs/servers/sql/postgresql/patches/relative-to-symlinks.patch b/pkgs/servers/sql/postgresql/patches/relative-to-symlinks.patch
new file mode 100644
index 000000000000..c9b199baf960
--- /dev/null
+++ b/pkgs/servers/sql/postgresql/patches/relative-to-symlinks.patch
@@ -0,0 +1,13 @@
+On NixOS we *want* stuff relative to symlinks.
+---
+--- a/src/common/exec.c
++++ b/src/common/exec.c
+@@ -218,6 +218,8 @@
+ static int
+ resolve_symlinks(char *path)
+ {
++	return 0;
++
+ #ifdef HAVE_READLINK
+ 	struct stat buf;
+ 	char		orig_wd[MAXPGPATH],
diff --git a/pkgs/servers/sql/postgresql/patches/socketdir-in-run-13.patch b/pkgs/servers/sql/postgresql/patches/socketdir-in-run-13+.patch
index 72c778b0758e..fd808b609824 100644
--- a/pkgs/servers/sql/postgresql/patches/socketdir-in-run-13.patch
+++ b/pkgs/servers/sql/postgresql/patches/socketdir-in-run-13+.patch
@@ -1,7 +1,5 @@
-diff --git i/src/include/pg_config_manual.h w/src/include/pg_config_manual.h
-index 8f3ec6bde1..4fc01e4a0a 100644
---- i/src/include/pg_config_manual.h
-+++ w/src/include/pg_config_manual.h
+--- a/src/include/pg_config_manual.h
++++ b/src/include/pg_config_manual.h
 @@ -201,7 +201,7 @@
   * support them yet.
   */
diff --git a/pkgs/servers/sql/postgresql/patches/socketdir-in-run.patch b/pkgs/servers/sql/postgresql/patches/socketdir-in-run.patch
index 969f80ff8fc7..4932ef69ee36 100644
--- a/pkgs/servers/sql/postgresql/patches/socketdir-in-run.patch
+++ b/pkgs/servers/sql/postgresql/patches/socketdir-in-run.patch
@@ -1,5 +1,3 @@
-diff --git a/src/include/pg_config_manual.h b/src/include/pg_config_manual.h
-index 743401cb96..be5c5f61d2 100644
 --- a/src/include/pg_config_manual.h
 +++ b/src/include/pg_config_manual.h
 @@ -179,7 +179,7 @@
diff --git a/pkgs/servers/sql/postgresql/patches/specify_pkglibdir_at_runtime.patch b/pkgs/servers/sql/postgresql/patches/specify_pkglibdir_at_runtime.patch
index fe95d2ee99f0..b94fc9efcbff 100644
--- a/pkgs/servers/sql/postgresql/patches/specify_pkglibdir_at_runtime.patch
+++ b/pkgs/servers/sql/postgresql/patches/specify_pkglibdir_at_runtime.patch
@@ -1,6 +1,5 @@
-diff -ur postgresql-9.5.3-orig/src/port/path.c postgresql-9.5.3/src/port/path.c
---- postgresql-9.5.3-orig/src/port/path.c	2016-05-09 22:50:23.000000000 +0200
-+++ postgresql-9.5.3/src/port/path.c	2016-08-29 22:44:10.507377613 +0200
+--- a/src/port/path.c
++++ b/src/port/path.c
 @@ -714,7 +714,11 @@
  void
  get_lib_path(const char *my_exec_path, char *ret_path)
diff --git a/pkgs/servers/sql/rqlite/default.nix b/pkgs/servers/sql/rqlite/default.nix
index d590037c2403..90ed22286a60 100644
--- a/pkgs/servers/sql/rqlite/default.nix
+++ b/pkgs/servers/sql/rqlite/default.nix
@@ -5,16 +5,16 @@
 
 buildGoModule rec {
   pname = "rqlite";
-  version = "8.23.4";
+  version = "8.24.7";
 
   src = fetchFromGitHub {
     owner = "rqlite";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-5/vcle0b/EypdA7IC28IYRYc5HxUC2zT/VsKLPurWPk=";
+    sha256 = "sha256-RuLc5IYy5NDexE1UHWrcJkvKgn4hQ0TkJFcbRIwxk18=";
   };
 
-  vendorHash = "sha256-Z/Cou6NDVQVu1F4XlgMM0jI72jF2vuI6mRGhWqObXKM=";
+  vendorHash = "sha256-c6HQukT32jK9B48FzW0WeY7VxPkNwDipKUTrrICsaKw=";
 
   subPackages = [ "cmd/rqlite" "cmd/rqlited" "cmd/rqbench" ];
 
diff --git a/pkgs/servers/sslh/default.nix b/pkgs/servers/sslh/default.nix
index 49610ddd9bc1..a9ca0c8f2585 100644
--- a/pkgs/servers/sslh/default.nix
+++ b/pkgs/servers/sslh/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "sslh";
-  version = "2.1.1";
+  version = "2.1.2";
 
   src = fetchFromGitHub {
     owner = "yrutschle";
     repo = pname;
     rev = "v${version}";
-    hash = "sha256-NCjLqYSPHukY11URQ/n+33Atzl4DhPDbNOEDaP6bQlg=";
+    hash = "sha256-+G6xYiytSWW2CljuaeJZfTuXCjkbDCzwU/FSLBmvnGw=";
   };
 
   postPatch = "patchShebangs *.sh";
diff --git a/pkgs/servers/sunshine/default.nix b/pkgs/servers/sunshine/default.nix
index d4ad28ca4361..6f949728f14a 100644
--- a/pkgs/servers/sunshine/default.nix
+++ b/pkgs/servers/sunshine/default.nix
@@ -52,26 +52,21 @@ let
 in
 stdenv'.mkDerivation rec {
   pname = "sunshine";
-  version = "0.23.0";
+  version = "0.23.1";
 
   src = fetchFromGitHub {
     owner = "LizardByte";
     repo = "Sunshine";
     rev = "v${version}";
-    sha256 = "sha256-K43LZ7zouTRUI4xhiHuRzu2tN7mUl1nTapuR34JR/Ac=";
+    sha256 = "sha256-D5ee5m2ZTKVqZDH07nzJuFEbZBQ4xW7m4nYnJQe0EaA=";
     fetchSubmodules = true;
   };
 
-  patches = [
-    # remove npm install as it needs internet access -- handled separately below
-    ./dont-build-webui.patch
-  ];
-
   # build webui
   ui = buildNpmPackage {
     inherit src version;
     pname = "sunshine-ui";
-    npmDepsHash = "sha256-I7IrCR7eQ97a8cPB8F8+T0zX8iJcwh+YtZ9QRtEVZtI=";
+    npmDepsHash = "sha256-9FuMtxTwrU9UIhZXQn/tmGN0IHZBdunV0cY/EElj4bA=";
 
     # use generated package-lock.json as upstream does not provide one
     postPatch = ''
@@ -176,12 +171,23 @@ stdenv'.mkDerivation rec {
     cp -r ${ui}/build ../
   '';
 
+  buildFlags = [
+    "sunshine"
+  ];
+
   # allow Sunshine to find libvulkan
   postFixup = lib.optionalString cudaSupport ''
     wrapProgram $out/bin/sunshine \
       --set LD_LIBRARY_PATH ${lib.makeLibraryPath [ vulkan-loader ]}
   '';
 
+  # redefine installPhase to avoid attempt to build webui
+  installPhase = ''
+    runHook preInstall
+    cmake --install .
+    runHook postInstall
+  '';
+
   postInstall = ''
     install -Dm644 ../packaging/linux/${pname}.desktop $out/share/applications/${pname}.desktop
   '';
diff --git a/pkgs/servers/sunshine/dont-build-webui.patch b/pkgs/servers/sunshine/dont-build-webui.patch
deleted file mode 100644
index 6e308ffd90c5..000000000000
--- a/pkgs/servers/sunshine/dont-build-webui.patch
+++ /dev/null
@@ -1,13 +0,0 @@
-diff --git a/cmake/targets/unix.cmake b/cmake/targets/unix.cmake
-index 2ce0378..10d8262 100644
---- a/cmake/targets/unix.cmake
-+++ b/cmake/targets/unix.cmake
-@@ -1,8 +1,3 @@
- # unix specific target definitions
- # put anything here that applies to both linux and macos
- 
--#WebUI build
--add_custom_target(web-ui ALL
--        WORKING_DIRECTORY "${CMAKE_SOURCE_DIR}"
--        COMMENT "Installing NPM Dependencies and Building the Web UI"
--        COMMAND bash -c \"npm install && SUNSHINE_BUILD_HOMEBREW=${NPM_BUILD_HOMEBREW} SUNSHINE_SOURCE_ASSETS_DIR=${NPM_SOURCE_ASSETS_DIR} SUNSHINE_ASSETS_DIR=${NPM_ASSETS_DIR} npm run build\")  # cmake-lint: disable=C0301
diff --git a/pkgs/servers/sunshine/package-lock.json b/pkgs/servers/sunshine/package-lock.json
index 3c20c718d46f..790555d9415a 100644
--- a/pkgs/servers/sunshine/package-lock.json
+++ b/pkgs/servers/sunshine/package-lock.json
@@ -11,8 +11,8 @@
         "bootstrap": "5.3.3",
         "vite": "4.5.2",
         "vite-plugin-ejs": "1.6.4",
-        "vue": "3.4.5",
-        "vue-i18n": "9.11.0"
+        "vue": "3.4.23",
+        "vue-i18n": "9.13.0"
       }
     },
     "node_modules/@babel/parser": {
@@ -366,12 +366,12 @@
       }
     },
     "node_modules/@intlify/core-base": {
-      "version": "9.11.0",
-      "resolved": "https://registry.npmjs.org/@intlify/core-base/-/core-base-9.11.0.tgz",
-      "integrity": "sha512-cveOqAstjLZIiyatcP/HrzrQ87cZI8ScPQna3yvoM8zjcjcIRK1MRvmxUNlPdg0rTNJMZw7rixPVM58O5aHVPA==",
+      "version": "9.13.0",
+      "resolved": "https://registry.npmjs.org/@intlify/core-base/-/core-base-9.13.0.tgz",
+      "integrity": "sha512-Lx8+YTrFpom7AtdbbuJHzgmr612/bceHU92v8ZPU9HU9/rczf+TmCs95BxWPIR4K42xh4MVMLsNzLUWiXcNaLg==",
       "dependencies": {
-        "@intlify/message-compiler": "9.11.0",
-        "@intlify/shared": "9.11.0"
+        "@intlify/message-compiler": "9.13.0",
+        "@intlify/shared": "9.13.0"
       },
       "engines": {
         "node": ">= 16"
@@ -381,11 +381,11 @@
       }
     },
     "node_modules/@intlify/message-compiler": {
-      "version": "9.11.0",
-      "resolved": "https://registry.npmjs.org/@intlify/message-compiler/-/message-compiler-9.11.0.tgz",
-      "integrity": "sha512-x31Gl7cscnoI4UUY1yaIy8e7vVMVW1VVlTXZz4SIHKqoSEUkfmgqK8NAx1e7RcoHEbICR7uyCbud0ZL1s4OGXQ==",
+      "version": "9.13.0",
+      "resolved": "https://registry.npmjs.org/@intlify/message-compiler/-/message-compiler-9.13.0.tgz",
+      "integrity": "sha512-zhESuudiDpFQhUOx/qrSMd7ZYHbmgCc0QzBc27cDUxaaAj3olbYJnsx3osiHPQyYnv/LuC+WTqoNOEBoHP6dqQ==",
       "dependencies": {
-        "@intlify/shared": "9.11.0",
+        "@intlify/shared": "9.13.0",
         "source-map-js": "^1.0.2"
       },
       "engines": {
@@ -396,9 +396,9 @@
       }
     },
     "node_modules/@intlify/shared": {
-      "version": "9.11.0",
-      "resolved": "https://registry.npmjs.org/@intlify/shared/-/shared-9.11.0.tgz",
-      "integrity": "sha512-KHSNgi7sRjmSm7aD8QH8WFt9VfKaekJuJ473opbJlkGY3EDnDUU8ikIhG8PbasQbgNvbY3m3tWNGqk2omIdwMA==",
+      "version": "9.13.0",
+      "resolved": "https://registry.npmjs.org/@intlify/shared/-/shared-9.13.0.tgz",
+      "integrity": "sha512-fUwWcpDz9Wm4dSaz+6XmjoNXWBjZLJtT1Zf1cpLBELbCAOS8WBRscPtgOSfzm6JCqf5KgMI4g917f5TtEeez3A==",
       "engines": {
         "node": ">= 16"
       },
@@ -433,49 +433,49 @@
       }
     },
     "node_modules/@vue/compiler-core": {
-      "version": "3.4.5",
-      "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.4.5.tgz",
-      "integrity": "sha512-Daka7P1z2AgKjzuueWXhwzIsKu0NkLB6vGbNVEV2iJ8GJTrzraZo/Sk4GWCMRtd/qVi3zwnk+Owbd/xSZbwHtQ==",
+      "version": "3.4.23",
+      "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.4.23.tgz",
+      "integrity": "sha512-HAFmuVEwNqNdmk+w4VCQ2pkLk1Vw4XYiiyxEp3z/xvl14aLTUBw2OfVH3vBcx+FtGsynQLkkhK410Nah1N2yyQ==",
       "dependencies": {
-        "@babel/parser": "^7.23.6",
-        "@vue/shared": "3.4.5",
+        "@babel/parser": "^7.24.1",
+        "@vue/shared": "3.4.23",
         "entities": "^4.5.0",
         "estree-walker": "^2.0.2",
-        "source-map-js": "^1.0.2"
+        "source-map-js": "^1.2.0"
       }
     },
     "node_modules/@vue/compiler-dom": {
-      "version": "3.4.5",
-      "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.4.5.tgz",
-      "integrity": "sha512-J8YlxknJVd90SXFJ4HwGANSAXsx5I0lK30sO/zvYV7s5gXf7gZR7r/1BmZ2ju7RGH1lnc6bpBc6nL61yW+PsAQ==",
+      "version": "3.4.23",
+      "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.4.23.tgz",
+      "integrity": "sha512-t0b9WSTnCRrzsBGrDd1LNR5HGzYTr7LX3z6nNBG+KGvZLqrT0mY6NsMzOqlVMBKKXKVuusbbB5aOOFgTY+senw==",
       "dependencies": {
-        "@vue/compiler-core": "3.4.5",
-        "@vue/shared": "3.4.5"
+        "@vue/compiler-core": "3.4.23",
+        "@vue/shared": "3.4.23"
       }
     },
     "node_modules/@vue/compiler-sfc": {
-      "version": "3.4.5",
-      "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.4.5.tgz",
-      "integrity": "sha512-jauvkDuSSUbP0ebhfNqljhShA90YEfX/0wZ+w40oZF43IjGyWYjqYaJbvMJwGOd+9+vODW6eSvnk28f0SGV7OQ==",
+      "version": "3.4.23",
+      "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.4.23.tgz",
+      "integrity": "sha512-fSDTKTfzaRX1kNAUiaj8JB4AokikzStWgHooMhaxyjZerw624L+IAP/fvI4ZwMpwIh8f08PVzEnu4rg8/Npssw==",
       "dependencies": {
-        "@babel/parser": "^7.23.6",
-        "@vue/compiler-core": "3.4.5",
-        "@vue/compiler-dom": "3.4.5",
-        "@vue/compiler-ssr": "3.4.5",
-        "@vue/shared": "3.4.5",
+        "@babel/parser": "^7.24.1",
+        "@vue/compiler-core": "3.4.23",
+        "@vue/compiler-dom": "3.4.23",
+        "@vue/compiler-ssr": "3.4.23",
+        "@vue/shared": "3.4.23",
         "estree-walker": "^2.0.2",
-        "magic-string": "^0.30.5",
-        "postcss": "^8.4.32",
-        "source-map-js": "^1.0.2"
+        "magic-string": "^0.30.8",
+        "postcss": "^8.4.38",
+        "source-map-js": "^1.2.0"
       }
     },
     "node_modules/@vue/compiler-ssr": {
-      "version": "3.4.5",
-      "resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.4.5.tgz",
-      "integrity": "sha512-DDdEcDzj2lWTMfUMMtEpLDhURai9LhM0zSZ219jCt7b2Vyl0/jy3keFgCPMitG0V1S1YG4Cmws3lWHWdxHQOpg==",
+      "version": "3.4.23",
+      "resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.4.23.tgz",
+      "integrity": "sha512-hb6Uj2cYs+tfqz71Wj6h3E5t6OKvb4MVcM2Nl5i/z1nv1gjEhw+zYaNOV+Xwn+SSN/VZM0DgANw5TuJfxfezPg==",
       "dependencies": {
-        "@vue/compiler-dom": "3.4.5",
-        "@vue/shared": "3.4.5"
+        "@vue/compiler-dom": "3.4.23",
+        "@vue/shared": "3.4.23"
       }
     },
     "node_modules/@vue/devtools-api": {
@@ -484,48 +484,48 @@
       "integrity": "sha512-LgPscpE3Vs0x96PzSSB4IGVSZXZBZHpfxs+ZA1d+VEPwHdOXowy/Y2CsvCAIFrf+ssVU1pD1jidj505EpUnfbA=="
     },
     "node_modules/@vue/reactivity": {
-      "version": "3.4.5",
-      "resolved": "https://registry.npmjs.org/@vue/reactivity/-/reactivity-3.4.5.tgz",
-      "integrity": "sha512-BcWkKvjdvqJwb7BhhFkXPLDCecX4d4a6GATvCduJQDLv21PkPowAE5GKuIE5p6RC07/Lp9FMkkq4AYCTVF5KlQ==",
+      "version": "3.4.23",
+      "resolved": "https://registry.npmjs.org/@vue/reactivity/-/reactivity-3.4.23.tgz",
+      "integrity": "sha512-GlXR9PL+23fQ3IqnbSQ8OQKLodjqCyoCrmdLKZk3BP7jN6prWheAfU7a3mrltewTkoBm+N7qMEb372VHIkQRMQ==",
       "dependencies": {
-        "@vue/shared": "3.4.5"
+        "@vue/shared": "3.4.23"
       }
     },
     "node_modules/@vue/runtime-core": {
-      "version": "3.4.5",
-      "resolved": "https://registry.npmjs.org/@vue/runtime-core/-/runtime-core-3.4.5.tgz",
-      "integrity": "sha512-wh9ELIOQKeWT9SaUPdLrsxRkZv14jp+SJm9aiQGWio+/MWNM3Lib0wE6CoKEqQ9+SCYyGjDBhTOTtO47kCgbkg==",
+      "version": "3.4.23",
+      "resolved": "https://registry.npmjs.org/@vue/runtime-core/-/runtime-core-3.4.23.tgz",
+      "integrity": "sha512-FeQ9MZEXoFzFkFiw9MQQ/FWs3srvrP+SjDKSeRIiQHIhtkzoj0X4rWQlRNHbGuSwLra6pMyjAttwixNMjc/xLw==",
       "dependencies": {
-        "@vue/reactivity": "3.4.5",
-        "@vue/shared": "3.4.5"
+        "@vue/reactivity": "3.4.23",
+        "@vue/shared": "3.4.23"
       }
     },
     "node_modules/@vue/runtime-dom": {
-      "version": "3.4.5",
-      "resolved": "https://registry.npmjs.org/@vue/runtime-dom/-/runtime-dom-3.4.5.tgz",
-      "integrity": "sha512-n5ewvOjyG3IEpqGBahdPXODFSpVlSz3H4LF76Sx0XAqpIOqyJ5bIb2PrdYuH2ogBMAQPh+o5tnoH4nJpBr8U0Q==",
+      "version": "3.4.23",
+      "resolved": "https://registry.npmjs.org/@vue/runtime-dom/-/runtime-dom-3.4.23.tgz",
+      "integrity": "sha512-RXJFwwykZWBkMiTPSLEWU3kgVLNAfActBfWFlZd0y79FTUxexogd0PLG4HH2LfOktjRxV47Nulygh0JFXe5f9A==",
       "dependencies": {
-        "@vue/runtime-core": "3.4.5",
-        "@vue/shared": "3.4.5",
+        "@vue/runtime-core": "3.4.23",
+        "@vue/shared": "3.4.23",
         "csstype": "^3.1.3"
       }
     },
     "node_modules/@vue/server-renderer": {
-      "version": "3.4.5",
-      "resolved": "https://registry.npmjs.org/@vue/server-renderer/-/server-renderer-3.4.5.tgz",
-      "integrity": "sha512-jOFc/VE87yvifQpNju12VcqimH8pBLxdcT+t3xMeiED1K6DfH9SORyhFEoZlW5TG2Vwfn3Ul5KE+1aC99xnSBg==",
+      "version": "3.4.23",
+      "resolved": "https://registry.npmjs.org/@vue/server-renderer/-/server-renderer-3.4.23.tgz",
+      "integrity": "sha512-LDwGHtnIzvKFNS8dPJ1SSU5Gvm36p2ck8wCZc52fc3k/IfjKcwCyrWEf0Yag/2wTFUBXrqizfhK9c/mC367dXQ==",
       "dependencies": {
-        "@vue/compiler-ssr": "3.4.5",
-        "@vue/shared": "3.4.5"
+        "@vue/compiler-ssr": "3.4.23",
+        "@vue/shared": "3.4.23"
       },
       "peerDependencies": {
-        "vue": "3.4.5"
+        "vue": "3.4.23"
       }
     },
     "node_modules/@vue/shared": {
-      "version": "3.4.5",
-      "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.4.5.tgz",
-      "integrity": "sha512-6XptuzlMvN4l4cDnDw36pdGEV+9njYkQ1ZE0Q6iZLwrKefKaOJyiFmcP3/KBDHbt72cJZGtllAc1GaHe6XGAyg=="
+      "version": "3.4.23",
+      "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.4.23.tgz",
+      "integrity": "sha512-wBQ0gvf+SMwsCQOyusNw/GoXPV47WGd1xB5A1Pgzy0sQ3Bi5r5xm3n+92y3gCnB3MWqnRDdvfkRGxhKtbBRNgg=="
     },
     "node_modules/ansi-styles": {
       "version": "4.3.0",
@@ -751,14 +751,11 @@
       }
     },
     "node_modules/magic-string": {
-      "version": "0.30.9",
-      "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.30.9.tgz",
-      "integrity": "sha512-S1+hd+dIrC8EZqKyT9DstTH/0Z+f76kmmvZnkfQVmOpDEF9iVgdYif3Q/pIWHmCoo59bQVGW0kVL3e2nl+9+Sw==",
+      "version": "0.30.10",
+      "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.30.10.tgz",
+      "integrity": "sha512-iIRwTIf0QKV3UAnYK4PU8uiEc4SRh5jX0mwpIwETPpHdhVM4f53RSwS/vXvN1JhGX+Cs7B8qIq3d6AH49O5fAQ==",
       "dependencies": {
         "@jridgewell/sourcemap-codec": "^1.4.15"
-      },
-      "engines": {
-        "node": ">=12"
       }
     },
     "node_modules/minimatch": {
@@ -918,15 +915,15 @@
       }
     },
     "node_modules/vue": {
-      "version": "3.4.5",
-      "resolved": "https://registry.npmjs.org/vue/-/vue-3.4.5.tgz",
-      "integrity": "sha512-VH6nHFhLPjgu2oh5vEBXoNZxsGHuZNr3qf4PHClwJWw6IDqw6B3x+4J+ABdoZ0aJuT8Zi0zf3GpGlLQCrGWHrw==",
+      "version": "3.4.23",
+      "resolved": "https://registry.npmjs.org/vue/-/vue-3.4.23.tgz",
+      "integrity": "sha512-X1y6yyGJ28LMUBJ0k/qIeKHstGd+BlWQEOT40x3auJFTmpIhpbKLgN7EFsqalnJXq1Km5ybDEsp6BhuWKciUDg==",
       "dependencies": {
-        "@vue/compiler-dom": "3.4.5",
-        "@vue/compiler-sfc": "3.4.5",
-        "@vue/runtime-dom": "3.4.5",
-        "@vue/server-renderer": "3.4.5",
-        "@vue/shared": "3.4.5"
+        "@vue/compiler-dom": "3.4.23",
+        "@vue/compiler-sfc": "3.4.23",
+        "@vue/runtime-dom": "3.4.23",
+        "@vue/server-renderer": "3.4.23",
+        "@vue/shared": "3.4.23"
       },
       "peerDependencies": {
         "typescript": "*"
@@ -938,12 +935,12 @@
       }
     },
     "node_modules/vue-i18n": {
-      "version": "9.11.0",
-      "resolved": "https://registry.npmjs.org/vue-i18n/-/vue-i18n-9.11.0.tgz",
-      "integrity": "sha512-vU4gY6lu8Pdfs9BgKGiDAJmFDf88cceR47KcSB0VW4xJzUrXR/7qwqM7A8dQ2nedhoIDxoOm5Ro4pFd2KvJqbA==",
+      "version": "9.13.0",
+      "resolved": "https://registry.npmjs.org/vue-i18n/-/vue-i18n-9.13.0.tgz",
+      "integrity": "sha512-NlZ+e8rhGSGNk/Vfh4IUvlPRjljPCRslbNYgQmYZY+sLXZgahw8fylQguZU3e8ntJDvitfe40f8p3udOiKMS0A==",
       "dependencies": {
-        "@intlify/core-base": "9.11.0",
-        "@intlify/shared": "9.11.0",
+        "@intlify/core-base": "9.13.0",
+        "@intlify/shared": "9.13.0",
         "@vue/devtools-api": "^6.5.0"
       },
       "engines": {
diff --git a/pkgs/servers/tailscale/default.nix b/pkgs/servers/tailscale/default.nix
index 40d832620c3f..d97cbeceb8ae 100644
--- a/pkgs/servers/tailscale/default.nix
+++ b/pkgs/servers/tailscale/default.nix
@@ -9,11 +9,10 @@
 , shadow
 , procps
 , nixosTests
-, fetchpatch
 }:
 
 let
-  version = "1.64.2";
+  version = "1.66.3";
 in
 buildGoModule {
   pname = "tailscale";
@@ -23,18 +22,9 @@ buildGoModule {
     owner = "tailscale";
     repo = "tailscale";
     rev = "v${version}";
-    hash = "sha256-DS7C/G1Nj9gIjYwXaEeCLbtH9HbB0tRoJBDjZc/nq5g=";
+    hash = "sha256-dFyXOoN4YZfN3G1XfHK1/8M1ROwW9Q9eCl/NjTdfD4Q=";
   };
-  vendorHash = "sha256-pYeHqYd2cCOVQlD1r2lh//KC+732H0lj1fPDBr+W8qA=";
-
-  patches = [
-    # Reverts "cmd/tailscaled/tailscaled.service: revert recent hardening"
-    (fetchpatch {
-      url = "https://github.com/tailscale/tailscale/commit/2889fabaefc50040507ead652d6d2b212f476c2b.patch";
-      hash = "sha256-DPBrv7kjSVXhmptUGGzOkaP4iXi/Bym3lvqy4otL9HE=";
-      revert = true;
-    })
-  ];
+  vendorHash = "sha256-Hd77xy8stw0Y6sfk3/ItqRIbM/349M/4uf0iNy1xJGw=";
 
   nativeBuildInputs = lib.optionals stdenv.isLinux [ makeWrapper ];
 
diff --git a/pkgs/servers/tracing/tempo/default.nix b/pkgs/servers/tracing/tempo/default.nix
index 11184ce670d3..d18eb7df58e7 100644
--- a/pkgs/servers/tracing/tempo/default.nix
+++ b/pkgs/servers/tracing/tempo/default.nix
@@ -2,14 +2,14 @@
 
 buildGoModule rec {
   pname = "tempo";
-  version = "2.4.1";
+  version = "2.4.2";
 
   src = fetchFromGitHub {
     owner = "grafana";
     repo = "tempo";
     rev = "v${version}";
     fetchSubmodules = true;
-    hash = "sha256-OTgk4mejMSdnUV4VLiRMWPBzHrRo+wKMoCsD4O+XxLA=";
+    hash = "sha256-n7jv9Ki3cLlPDzm9IT0XLTT8t1nlifI0+SRAV6XDJlA=";
   };
 
   vendorHash = null;
diff --git a/pkgs/servers/traefik/default.nix b/pkgs/servers/traefik/default.nix
index 77fac1c365f7..3e429e3595f7 100644
--- a/pkgs/servers/traefik/default.nix
+++ b/pkgs/servers/traefik/default.nix
@@ -20,9 +20,10 @@ buildGoModule rec {
 
     CODENAME=$(grep -Po "CODENAME \?=\s\K.+$" Makefile)
 
-    buildFlagsArray+=("-ldflags= -s -w \
-      -X github.com/traefik/traefik/v${lib.versions.major version}/pkg/version.Version=${version} \
-      -X github.com/traefik/traefik/v${lib.versions.major version}/pkg/version.Codename=$CODENAME")
+    ldflags="-s"
+    ldflags+=" -w"
+    ldflags+=" -X github.com/traefik/traefik/v${lib.versions.major version}/pkg/version.Version=${version}"
+    ldflags+=" -X github.com/traefik/traefik/v${lib.versions.major version}/pkg/version.Codename=$CODENAME"
   '';
 
   doCheck = false;
diff --git a/pkgs/servers/trickster/trickster.nix b/pkgs/servers/trickster/trickster.nix
index 7b527a5c20b2..221599065453 100644
--- a/pkgs/servers/trickster/trickster.nix
+++ b/pkgs/servers/trickster/trickster.nix
@@ -1,6 +1,7 @@
 { lib
 , buildGoModule
 , fetchFromGitHub
+, go
 }:
 
 buildGoModule rec {
@@ -19,22 +20,14 @@ buildGoModule rec {
 
   subPackages = [ "cmd/trickster" ];
 
-  preBuild =
-    let
-      ldflags = with lib;
-        concatStringsSep " " (
-          [ "-extldflags '-static'" "-s" "-w" ] ++
-          (mapAttrsToList (n: v: "-X main.application${n}=${v}") {
-            BuildTime = "1970-01-01T00:00:00+0000";
-            GitCommitID = rev;
-            GoVersion = "$(go env GOVERSION)";
-            GoArch = "$(go env GOARCH)";
-          })
-        );
-    in
-    ''
-      buildFlagsArray+=("-ldflags=${ldflags}")
-    '';
+  ldflags = with lib;
+    [ "-extldflags '-static'" "-s" "-w" ] ++
+    (mapAttrsToList (n: v: "-X main.application${n}=${v}") {
+      BuildTime = "1970-01-01T00:00:00+0000";
+      GitCommitID = rev;
+      GoVersion = "go${go.version}}";
+      GoArch = "${go.GOARCH}";
+    });
 
   # Tests are broken.
   doCheck = false;
diff --git a/pkgs/servers/uwsgi/default.nix b/pkgs/servers/uwsgi/default.nix
index b75b1633df1c..92b0131ff411 100644
--- a/pkgs/servers/uwsgi/default.nix
+++ b/pkgs/servers/uwsgi/default.nix
@@ -71,13 +71,13 @@ in
 
 stdenv.mkDerivation (finalAttrs: {
   pname = "uwsgi";
-  version = "2.0.24";
+  version = "2.0.25.1";
 
   src = fetchFromGitHub {
     owner = "unbit";
     repo = "uwsgi";
     rev = finalAttrs.version;
-    hash = "sha256-KVzIp2rKCpF6aXhhu+6nw7q8Pnx/0+HD23mmYmVFPSA=";
+    hash = "sha256-hAjwn5sZynMNBPw2dAtuf0xIbnDSraIWas6OEGdJlfc=";
   };
 
   patches = [
diff --git a/pkgs/servers/varnish/default.nix b/pkgs/servers/varnish/default.nix
index d65af3fdec4d..5327f4edb19e 100644
--- a/pkgs/servers/varnish/default.nix
+++ b/pkgs/servers/varnish/default.nix
@@ -61,4 +61,9 @@ in
     version = "7.4.3";
     hash = "sha256-655DUH+Dbu8uMoAtRt08+S7KPVR7pLZA/aWbQHzbG4g=";
   };
+  # EOL 2025-03-15
+  varnish75 = common {
+    version = "7.5.0";
+    hash = "sha256-/KYbmDE54arGHEVG0SoaOrmAfbsdgxRXHjFIyT/3K10=";
+  };
 }
diff --git a/pkgs/servers/varnish/modules.nix b/pkgs/servers/varnish/modules.nix
index ee05a8181a5d..a16d0b68f2e6 100644
--- a/pkgs/servers/varnish/modules.nix
+++ b/pkgs/servers/varnish/modules.nix
@@ -1,6 +1,6 @@
 { lib, stdenv, fetchFromGitHub, autoreconfHook, pkg-config, varnish, docutils, removeReferencesTo }:
 let
-  common = { version, sha256, extraNativeBuildInputs ? [] }:
+  common = { version, hash, extraNativeBuildInputs ? [] }:
     stdenv.mkDerivation rec {
       pname = "${varnish.name}-modules";
       inherit version;
@@ -9,7 +9,7 @@ let
         owner = "varnish";
         repo = "varnish-modules";
         rev = version;
-        inherit sha256;
+        inherit hash;
       };
 
       nativeBuildInputs = [
@@ -39,10 +39,14 @@ in
 {
   modules15 = common {
     version = "0.15.1";
-    sha256 = "1lwgjhgr5yw0d17kbqwlaj5pkn70wvaqqjpa1i0n459nx5cf5pqj";
+    hash = "1lwgjhgr5yw0d17kbqwlaj5pkn70wvaqqjpa1i0n459nx5cf5pqj";
   };
   modules23 = common {
     version = "0.23.0";
-    sha256 = "sha256-Dd1pLMmRC59iRRpReDeQJ8Sv00ojb8InvaMrb+iRv4I=";
+    hash = "sha256-Dd1pLMmRC59iRRpReDeQJ8Sv00ojb8InvaMrb+iRv4I=";
+  };
+  modules24 = common {
+    version = "0.24.0";
+    hash = "sha256-2MfcrhhkBz9GyQxEWzjipdn1CBEqnCvC3t1G2YSauak=";
   };
 }
diff --git a/pkgs/servers/varnish/packages.nix b/pkgs/servers/varnish/packages.nix
index 1d0b3e45da7a..1ddfe7348ed0 100644
--- a/pkgs/servers/varnish/packages.nix
+++ b/pkgs/servers/varnish/packages.nix
@@ -1,4 +1,4 @@
-{ callPackages, callPackage, varnish60, varnish74, fetchFromGitHub }: {
+{ callPackages, callPackage, varnish60, varnish74, varnish75, fetchFromGitHub }: {
   varnish60Packages = rec {
     varnish = varnish60;
     modules = (callPackages ./modules.nix { inherit varnish; }).modules15;
@@ -17,4 +17,8 @@
     varnish = varnish74;
     modules = (callPackages ./modules.nix { inherit varnish; }).modules23;
   };
+  varnish75Packages = rec {
+    varnish = varnish75;
+    modules = (callPackages ./modules.nix { inherit varnish; }).modules24;
+  };
 }
diff --git a/pkgs/servers/web-apps/changedetection-io/default.nix b/pkgs/servers/web-apps/changedetection-io/default.nix
index c5bac2fa3d90..4aa7455aa209 100644
--- a/pkgs/servers/web-apps/changedetection-io/default.nix
+++ b/pkgs/servers/web-apps/changedetection-io/default.nix
@@ -5,14 +5,14 @@
 
 python3.pkgs.buildPythonApplication rec {
   pname = "changedetection-io";
-  version = "0.45.21";
+  version = "0.45.22";
   format = "setuptools";
 
   src = fetchFromGitHub {
     owner = "dgtlmoon";
     repo = "changedetection.io";
     rev = "refs/tags/${version}";
-    hash = "sha256-v+bjGIwJlHcim29BRR+5kZABnmtLYSS/U3pbPnCvAhU=";
+    hash = "sha256-q8Cflu5rYmV//l0MGM4LOep5v/tEHYm2u0A1E5k9kLk=";
   };
 
   postPatch = ''
diff --git a/pkgs/servers/web-apps/dolibarr/default.nix b/pkgs/servers/web-apps/dolibarr/default.nix
index fa6abf047943..230ae3d1e658 100644
--- a/pkgs/servers/web-apps/dolibarr/default.nix
+++ b/pkgs/servers/web-apps/dolibarr/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "dolibarr";
-  version = "19.0.0";
+  version = "19.0.2";
 
   src = fetchFromGitHub {
     owner = "Dolibarr";
     repo = "dolibarr";
     rev = version;
-    hash = "sha256-Guq3CHdVqGfprXo0O3VriWSfWR/sIgj3Znso1BUeLNY=";
+    hash = "sha256-HPAcDgJSh3oIrr0vI9C80NR6oDS1KbAiiYR1tL5qrrI=";
   };
 
   dontBuild = true;
diff --git a/pkgs/servers/web-apps/galene/default.nix b/pkgs/servers/web-apps/galene/default.nix
index 73503242378a..cdbdd675a92d 100644
--- a/pkgs/servers/web-apps/galene/default.nix
+++ b/pkgs/servers/web-apps/galene/default.nix
@@ -2,16 +2,16 @@
 
 buildGoModule rec {
   pname = "galene";
-  version = "0.8.1";
+  version = "0.8.2";
 
   src = fetchFromGitHub {
     owner = "jech";
     repo = "galene";
     rev = "galene-${version}";
-    hash = "sha256-CeyxeZPvClKxjEU5GYqZzV2SCyHNAktHNQbmN9wUa+4=";
+    hash = "sha256-536n2ZCKlWDV9MqiNBpWocwnDUFekRcN+N5DuIzq9a4=";
   };
 
-  vendorHash = "sha256-NT6bNVoh26I4z/QUSJWwF5YDuzf3LUc/7OQgtslc4ME=";
+  vendorHash = "sha256-J0pQm2TqlYwtMNuR/53SnpAwl9L9rq7FpVd3F9M0qso=";
 
   ldflags = [ "-s" "-w" ];
   preCheck = "export TZ=UTC";
diff --git a/pkgs/servers/web-apps/kavita/default.nix b/pkgs/servers/web-apps/kavita/default.nix
index 44c0ad59cda2..7873ee684014 100644
--- a/pkgs/servers/web-apps/kavita/default.nix
+++ b/pkgs/servers/web-apps/kavita/default.nix
@@ -34,6 +34,12 @@ stdenvNoCC.mkDerivation (finalAttrs: {
       })
       # The webroot is hardcoded as ./wwwroot
       ./change-webroot.diff
+      # Upstream removes database migrations between versions
+      # Restore them to avoid breaking on updates
+      # Info: Restores migrations for versions between v0.7.1.4 and v0.7.9
+      # On update: check if more migrations need to be restored!
+      # Migrations should at least allow updates from previous NixOS versions
+      ./restore-migrations.diff
     ];
     postPatch = ''
       substituteInPlace API/Services/DirectoryService.cs --subst-var out
diff --git a/pkgs/servers/web-apps/kavita/restore-migrations.diff b/pkgs/servers/web-apps/kavita/restore-migrations.diff
new file mode 100644
index 000000000000..d158f503e329
--- /dev/null
+++ b/pkgs/servers/web-apps/kavita/restore-migrations.diff
@@ -0,0 +1,147 @@
+diff --git a/API/Data/ManualMigrations/MigrateDisableScrobblingOnComicLibraries.cs b/API/Data/ManualMigrations/MigrateDisableScrobblingOnComicLibraries.cs
+new file mode 100644
+index 00000000..0de7bf5d
+--- /dev/null
++++ b/API/Data/ManualMigrations/MigrateDisableScrobblingOnComicLibraries.cs
+@@ -0,0 +1,38 @@
++using System.Linq;
++using System.Threading.Tasks;
++using API.Entities.Enums;
++using Microsoft.EntityFrameworkCore;
++using Microsoft.Extensions.Logging;
++
++namespace API.Data.ManualMigrations;
++
++/// <summary>
++/// v0.7.4 introduced Scrobbling with Kavita+. By default, it is on, but Comic libraries have no scrobble providers, so disable
++/// </summary>
++public static class MigrateDisableScrobblingOnComicLibraries
++{
++    public static async Task Migrate(IUnitOfWork unitOfWork, DataContext dataContext, ILogger<Program> logger)
++    {
++        if (!await dataContext.Library.Where(s => s.Type == LibraryType.Comic).Where(l => l.AllowScrobbling).AnyAsync())
++        {
++            return;
++        }
++        logger.LogInformation("Running MigrateDisableScrobblingOnComicLibraries migration. Please be patient, this may take some time");
++
++
++        foreach (var lib in await dataContext.Library.Where(s => s.Type == LibraryType.Comic).Where(l => l.AllowScrobbling).ToListAsync())
++        {
++            lib.AllowScrobbling = false;
++            unitOfWork.LibraryRepository.Update(lib);
++        }
++
++        if (unitOfWork.HasChanges())
++        {
++            await unitOfWork.CommitAsync();
++        }
++
++        logger.LogInformation("MigrateDisableScrobblingOnComicLibraries migration finished");
++
++    }
++
++}
+diff --git a/API/Data/ManualMigrations/MigrateLoginRoles.cs b/API/Data/ManualMigrations/MigrateLoginRoles.cs
+new file mode 100644
+index 00000000..f649908a
+--- /dev/null
++++ b/API/Data/ManualMigrations/MigrateLoginRoles.cs
+@@ -0,0 +1,36 @@
++using System.Threading.Tasks;
++using API.Constants;
++using API.Entities;
++using Microsoft.AspNetCore.Identity;
++using Microsoft.Extensions.Logging;
++
++namespace API.Data.ManualMigrations;
++
++/// <summary>
++/// Added in v0.7.1.18
++/// </summary>
++public static class MigrateLoginRoles
++{
++    /// <summary>
++    /// Will not run if any users have the <see cref="PolicyConstants.LoginRole"/> role already
++    /// </summary>
++    /// <param name="unitOfWork"></param>
++    /// <param name="userManager"></param>
++    /// <param name="logger"></param>
++    public static async Task Migrate(IUnitOfWork unitOfWork, UserManager<AppUser> userManager, ILogger<Program> logger)
++    {
++        var usersWithRole = await userManager.GetUsersInRoleAsync(PolicyConstants.LoginRole);
++        if (usersWithRole.Count != 0) return;
++
++        logger.LogCritical("Running MigrateLoginRoles migration");
++
++        var allUsers = await unitOfWork.UserRepository.GetAllUsersAsync();
++        foreach (var user in allUsers)
++        {
++            await userManager.RemoveFromRoleAsync(user, PolicyConstants.LoginRole);
++            await userManager.AddToRoleAsync(user, PolicyConstants.LoginRole);
++        }
++
++        logger.LogInformation("MigrateLoginRoles migration complete");
++    }
++}
+diff --git a/API/Data/ManualMigrations/MigrateRemoveWebPSettingRows.cs b/API/Data/ManualMigrations/MigrateRemoveWebPSettingRows.cs
+new file mode 100644
+index 00000000..07e98ef6
+--- /dev/null
++++ b/API/Data/ManualMigrations/MigrateRemoveWebPSettingRows.cs
+@@ -0,0 +1,31 @@
++using System.Threading.Tasks;
++using API.Entities.Enums;
++using Microsoft.Extensions.Logging;
++
++namespace API.Data.ManualMigrations;
++
++/// <summary>
++/// Added in v0.7.2.7/v0.7.3 in which the ConvertXToWebP Setting keys were removed. This migration will remove them.
++/// </summary>
++public static class MigrateRemoveWebPSettingRows
++{
++    public static async Task Migrate(IUnitOfWork unitOfWork, ILogger<Program> logger)
++    {
++        logger.LogCritical("Running MigrateRemoveWebPSettingRows migration - Please be patient, this may take some time. This is not an error");
++
++        var key = await unitOfWork.SettingsRepository.GetSettingAsync(ServerSettingKey.ConvertBookmarkToWebP);
++        var key2 = await unitOfWork.SettingsRepository.GetSettingAsync(ServerSettingKey.ConvertCoverToWebP);
++        if (key == null && key2 == null)
++        {
++            logger.LogCritical("Running MigrateRemoveWebPSettingRows migration - complete. Nothing to do");
++            return;
++        }
++
++        unitOfWork.SettingsRepository.Remove(key);
++        unitOfWork.SettingsRepository.Remove(key2);
++
++        await unitOfWork.CommitAsync();
++
++        logger.LogCritical("Running MigrateRemoveWebPSettingRows migration - Completed. This is not an error");
++    }
++}
+diff --git a/API/Startup.cs b/API/Startup.cs
+index 21c4fa45..04f4a077 100644
+--- a/API/Startup.cs
++++ b/API/Startup.cs
+@@ -232,11 +232,19 @@ public class Startup
+             Task.Run(async () =>
+                 {
+                     // Apply all migrations on startup
++                    var userManager = serviceProvider.GetRequiredService<UserManager<AppUser>>();
+                     var dataContext = serviceProvider.GetRequiredService<DataContext>();
+ 
+ 
+                     logger.LogInformation("Running Migrations");
+ 
++                    // v0.7.2
++                    await MigrateLoginRoles.Migrate(unitOfWork, userManager, logger);
++                    // v0.7.3
++                    await MigrateRemoveWebPSettingRows.Migrate(unitOfWork, logger);
++                    // v0.7.4
++                    await MigrateDisableScrobblingOnComicLibraries.Migrate(unitOfWork, dataContext, logger);
++
+                     // v0.7.9
+                     await MigrateUserLibrarySideNavStream.Migrate(unitOfWork, dataContext, logger);
+ 
diff --git a/pkgs/servers/web-apps/monica/default.nix b/pkgs/servers/web-apps/monica/default.nix
index 69d9aae3b186..950078194d3b 100644
--- a/pkgs/servers/web-apps/monica/default.nix
+++ b/pkgs/servers/web-apps/monica/default.nix
@@ -7,11 +7,11 @@
 }:
 stdenv.mkDerivation rec {
   pname = "monica";
-  version = "4.0.0";
+  version = "4.1.2";
 
   src = fetchurl {
     url = "https://github.com/monicahq/monica/releases/download/v${version}/monica-v${version}.tar.bz2";
-    hash = "sha256-uHsRCO7P5w1JmKDwyLUVjK6NwnTF2mjsz0hOnPrms+w=";
+    hash = "sha256-7ZdOSI/gldSWub5FIyYQw3gpLe+PRAnq03u6DXdZ2YE=";
   };
 
   dontBuild = true;
diff --git a/pkgs/servers/web-apps/netbox/default.nix b/pkgs/servers/web-apps/netbox/default.nix
index b47ab2cd350b..1459ee23920c 100644
--- a/pkgs/servers/web-apps/netbox/default.nix
+++ b/pkgs/servers/web-apps/netbox/default.nix
@@ -22,8 +22,8 @@ lib.fix (self: {
   };
 
   netbox_3_7 = callPackage generic {
-    version = "3.7.4";
-    hash = "sha256-jQJYtu1K13AsFXx4GTgtMOdppK1Tgoaf2/fKKhS1sQo=";
+    version = "3.7.8";
+    hash = "sha256-61pJbMWXNFnvWI0z9yWvsutdCAP4VydeceANNw0nKsk=";
     extraPatches = [
       # Allow setting the STATIC_ROOT from within the configuration and setting a custom redis URL
       ./config.patch
diff --git a/pkgs/servers/web-apps/nifi/default.nix b/pkgs/servers/web-apps/nifi/default.nix
index 6711608e2f50..e579303bcfd2 100644
--- a/pkgs/servers/web-apps/nifi/default.nix
+++ b/pkgs/servers/web-apps/nifi/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   pname = "nifi";
-  version = "1.25.0";
+  version = "1.26.0";
 
   src = fetchzip {
     url = "mirror://apache/nifi/${version}/nifi-${version}-bin.zip";
-    hash = "sha256-k8F4Zu1X/R2tv4ZsMT7K8VdXFKX3iLPIWG+gvyNjrf0=";
+    hash = "sha256-V/XrggYDeitsDmdvwnXK5QIBGDDBmK4mToz1RphkbSk=";
   };
 
   nativeBuildInputs = [ makeWrapper ];
diff --git a/pkgs/servers/web-apps/outline/default.nix b/pkgs/servers/web-apps/outline/default.nix
index 1e7d6c864085..391aebf6c26c 100644
--- a/pkgs/servers/web-apps/outline/default.nix
+++ b/pkgs/servers/web-apps/outline/default.nix
@@ -12,13 +12,13 @@
 
 stdenv.mkDerivation rec {
   pname = "outline";
-  version = "0.76.0";
+  version = "0.76.1";
 
   src = fetchFromGitHub {
     owner = "outline";
     repo = "outline";
     rev = "v${version}";
-    hash = "sha256-pTu1/7hEYvo/6MuN0yC+nrPCwUYqvcc2hZuiPtVFlwU=";
+    hash = "sha256-i+1Bd9equlYxxdmvoUim31SM5ymJjnauvqGOmnPmTWA=";
   };
 
   nativeBuildInputs = [ makeWrapper prefetch-yarn-deps fixup-yarn-lock ];
@@ -26,7 +26,7 @@ stdenv.mkDerivation rec {
 
   yarnOfflineCache = fetchYarnDeps {
     yarnLock = "${src}/yarn.lock";
-    hash = "sha256-10kqC4A9OFrpZzTBJIZ6I5TCOVgpX+h+hwfOWhXdhHs=";
+    hash = "sha256-xR6W9Kclgt7YZvkqNg7hOtY39mMNZvtDR/a1aOgD2Ko=";
   };
 
   configurePhase = ''
diff --git a/pkgs/servers/web-apps/plausible/default.nix b/pkgs/servers/web-apps/plausible/default.nix
index 24f684c0c954..257fb6818e26 100644
--- a/pkgs/servers/web-apps/plausible/default.nix
+++ b/pkgs/servers/web-apps/plausible/default.nix
@@ -89,7 +89,7 @@ beamPackages.mixRelease {
     changelog = "https://github.com/plausible/analytics/blob/${src.rev}/CHANGELOG.md";
     description = " Simple, open-source, lightweight (< 1 KB) and privacy-friendly web analytics alternative to Google Analytics";
     mainProgram = "plausible";
-    maintainers = with maintainers; [ ];
+    maintainers = with maintainers; [ xanderio ];
     platforms = platforms.unix;
   };
 }
diff --git a/pkgs/servers/web-apps/wordpress/packages/languages.json b/pkgs/servers/web-apps/wordpress/packages/languages.json
index d71f4b099228..d2ca31b5af30 100644
--- a/pkgs/servers/web-apps/wordpress/packages/languages.json
+++ b/pkgs/servers/web-apps/wordpress/packages/languages.json
@@ -1,20 +1,20 @@
 {
   "de_DE": {
     "path": "de_DE",
-    "rev": "1416209",
-    "sha256": "1ffs7qjn9qp6s40v7z4ngm062wapjbhg2fihp7p4nb4ki3gf2yh9",
+    "rev": "1436223",
+    "sha256": "0yc9h1c5pqqy7n3x5ss9vxizb1qyalx2srnwkfnhgl0f103ry7hc",
     "version": "6.5"
   },
   "fr_FR": {
     "path": "fr_FR",
-    "rev": "1412485",
-    "sha256": "06h4vg0kcybvf6v04sf6iyi8bw1bjjzpicdv90acdb049q5vc4x3",
+    "rev": "1436240",
+    "sha256": "014n9zk6adlzk2ayd5f5hm97ybn8b5l5h589576hsmv30crivqsq",
     "version": "6.5"
   },
   "ro_RO": {
     "path": "ro_RO",
-    "rev": "1410752",
-    "sha256": "1j4ypjgm1qghr18cll7iwr7qhdcffakzpj83lb391fyr2b3s7liq",
+    "rev": "1436218",
+    "sha256": "15issr2hnq9fci7kkw42aqqxj5vq154v91xy6mhppp2079g93c63",
     "version": "6.5"
   }
 }
diff --git a/pkgs/servers/web-apps/wordpress/packages/plugins.json b/pkgs/servers/web-apps/wordpress/packages/plugins.json
index 3223a250481f..e3702cb34d23 100644
--- a/pkgs/servers/web-apps/wordpress/packages/plugins.json
+++ b/pkgs/servers/web-apps/wordpress/packages/plugins.json
@@ -24,22 +24,22 @@
     "version": "2.21.08.31"
   },
   "breeze": {
-    "path": "breeze/tags/2.1.6",
-    "rev": "3051666",
-    "sha256": "0926fxbxkw06g6828s0yx017zp1sr60lh2b9cdgil0fxwc5ga26z",
-    "version": "2.1.6"
+    "path": "breeze/tags/2.1.7",
+    "rev": "3074984",
+    "sha256": "13alrv92p70ccg8xjybfzzikv35ff24zkc3dxlbrlr62ikczyyy0",
+    "version": "2.1.7"
   },
   "co-authors-plus": {
-    "path": "co-authors-plus/tags/3.5.15",
-    "rev": "2959167",
-    "sha256": "1n01sk2vgiym25wvxi4igpx773ph59y5f5lvwaasilamdpw0lzh4",
-    "version": "3.5.15"
+    "path": "co-authors-plus/tags/3.6.1",
+    "rev": "3077160",
+    "sha256": "10733qibrcrshm3c9zjxhwqar2fg60na70npam1z2lz6gnwmwdqn",
+    "version": "3.6.1"
   },
   "code-syntax-block": {
-    "path": "code-syntax-block/tags/3.1.1",
-    "rev": "2747615",
-    "sha256": "0dqdsl7f3ihshvly6cqd5l4cbimx5skmips514wvifspwggwmmjm",
-    "version": "3.1.1"
+    "path": "code-syntax-block/tags/3.2.1",
+    "rev": "3083143",
+    "sha256": "0hcvix71g2nh2yws0j3rll2dk3ybf39i04m7qz9yrnva6s17g6l6",
+    "version": "3.2.1"
   },
   "cookie-notice": {
     "path": "cookie-notice/tags/2.4.16",
@@ -60,10 +60,16 @@
     "version": "1.4.0"
   },
   "gutenberg": {
-    "path": "gutenberg/tags/18.1.0",
-    "rev": "3068196",
-    "sha256": "0ajkm54m4g6xg10263hjwdy2jigcaiqczg5dla7c457jqg8jv4nv",
-    "version": "18.1.0"
+    "path": "gutenberg/tags/18.3.0",
+    "rev": "3083588",
+    "sha256": "0dl6hdi38988zpcl69avy1p8s93djlzk6f56ra490lvzlmf4g73z",
+    "version": "18.3.0"
+  },
+  "hcaptcha-for-forms-and-more": {
+    "path": "hcaptcha-for-forms-and-more/tags/4.1.1",
+    "rev": "3081325",
+    "sha256": "1sw42qpy3qqz48a86fd5dc71iq6s1q44v5mgq7fa49makkn5fd4r",
+    "version": "4.1.1"
   },
   "hello-dolly": {
     "path": "hello-dolly/tags/1.7.2",
@@ -78,10 +84,10 @@
     "version": "3.0.2"
   },
   "jetpack": {
-    "path": "jetpack/tags/13.3.1",
-    "rev": "3068650",
-    "sha256": "0fwigf6xg5y5nqfkk2nv08qyqp97v96rnccx2a72p19a6dq6b97x",
-    "version": "13.3.1"
+    "path": "jetpack/tags/13.4.1",
+    "rev": "3084434",
+    "sha256": "17fg162f5nqf87xi0bii9xsgc19vfd9hrf86b82c4m6sgb80rf2p",
+    "version": "13.4.1"
   },
   "jetpack-lite": {
     "path": "jetpack-lite/tags/3.0.3",
@@ -102,10 +108,10 @@
     "version": "2.09"
   },
   "mailpoet": {
-    "path": "mailpoet/tags/4.48.2",
-    "rev": "3067726",
-    "sha256": "13brfys3xmpmw5yd1wn826mrzxvb6312177l7hmr6mhk0adp5lhz",
-    "version": "4.48.2"
+    "path": "mailpoet/tags/4.50.0",
+    "rev": "3083197",
+    "sha256": "01z2r87jw94ap9ha8kz1l999pczpa6985j4z0nq44b20672p62gv",
+    "version": "4.50.0"
   },
   "merge-minify-refresh": {
     "path": "merge-minify-refresh/trunk",
@@ -137,6 +143,12 @@
     "sha256": "1mrwgqp1ril54xqr8k2gwgjcsbf4xv3671v15xawapwz730h2c4r",
     "version": "0.10.0"
   },
+  "surge": {
+    "path": "surge/tags/1.1.0",
+    "rev": "3030901",
+    "sha256": "1bg99gsxv32l62pv0n2pq0384ggk2p154pg79yxiwnab2mrrs8j2",
+    "version": "1.1.0"
+  },
   "tc-custom-javascript": {
     "path": "tc-custom-javascript/tags/1.2.3",
     "rev": "2870386",
@@ -156,10 +168,10 @@
     "version": "0.25.9"
   },
   "wordpress-seo": {
-    "path": "wordpress-seo/tags/22.5",
-    "rev": "3071371",
-    "sha256": "0jwkicd8zf6ggf2qf2r1ndgj2k208n9bwvjrd7k3gg09jwsccgab",
-    "version": "22.5"
+    "path": "wordpress-seo/tags/22.6",
+    "rev": "3079171",
+    "sha256": "105646vkdvnrwa6kbk8vhvp40l5rg5dnd0rs21qg7byw7xv61nzs",
+    "version": "22.6"
   },
   "worker": {
     "path": "worker/tags/4.9.19",
@@ -174,10 +186,10 @@
     "version": "2.0"
   },
   "wp-fastest-cache": {
-    "path": "wp-fastest-cache/tags/1.2.5",
-    "rev": "3065036",
-    "sha256": "0q3ra4xry8jbvnx7nxj6a8jjyrni6faa8ys0s2ikaf6jf3r9skqa",
-    "version": "1.2.5"
+    "path": "wp-fastest-cache/tags/1.2.6",
+    "rev": "3081800",
+    "sha256": "0pp8di9jaj13k0qdpcnwx825nzx8cd9h336li8swg3jbr3sppvl7",
+    "version": "1.2.6"
   },
   "wp-gdpr-compliance": {
     "path": "wp-gdpr-compliance/tags/2.0.22",
@@ -192,10 +204,10 @@
     "version": "4.0.1"
   },
   "wp-statistics": {
-    "path": "wp-statistics/tags/14.6.1",
-    "rev": "3070028",
-    "sha256": "0qrhfqbn51cgyr0y3v4hxpnkhsk829i62c3ccy6a34gf5fxhrjnl",
-    "version": "14.6.1"
+    "path": "wp-statistics/tags/14.6.4",
+    "rev": "3081064",
+    "sha256": "03834h6vcczcbmw7h3db6bk39qr9yipgsn8q9mwa43rq7h7b7pvh",
+    "version": "14.6.4"
   },
   "wp-swiper": {
     "path": "wp-swiper/trunk",
@@ -210,9 +222,9 @@
     "version": "1.4.1"
   },
   "wpforms-lite": {
-    "path": "wpforms-lite/tags/1.8.7.2",
-    "rev": "3043142",
-    "sha256": "1na6vlvnvni9vqg99i1ab49z5cyy6kyqf197ph8r79nc46lyxa5a",
-    "version": "1.8.7.2"
+    "path": "wpforms-lite/tags/1.8.8.3",
+    "rev": "3077484",
+    "sha256": "03glhjxsrw6n884qkxrizbs6i4d7b1bl9m2zj7f32p0bq466hm6r",
+    "version": "1.8.8.3"
   }
 }
diff --git a/pkgs/servers/web-apps/wordpress/packages/wordpress-plugins.json b/pkgs/servers/web-apps/wordpress/packages/wordpress-plugins.json
index f8e8074ab82c..83d3b6d1edae 100644
--- a/pkgs/servers/web-apps/wordpress/packages/wordpress-plugins.json
+++ b/pkgs/servers/web-apps/wordpress/packages/wordpress-plugins.json
@@ -10,6 +10,7 @@
 , "disable-xml-rpc": "gpl2Plus"
 , "embed-extended": "gpl2Plus"
 , "gutenberg": "gpl2Plus"
+, "hcaptcha-for-forms-and-more": "gpl2Only"
 , "hello-dolly": "gpl2Plus"
 , "hkdev-maintenance-mode": "gpl2Plus"
 , "jetpack": "gpl2Plus"
@@ -22,6 +23,7 @@
 , "simple-login-captcha": "gpl2Plus"
 , "simple-mastodon-verification": "gpl2Plus"
 , "static-mail-sender-configurator": "mit"
+, "surge": "gpl3Only"
 , "tc-custom-javascript": "gpl2Plus"
 , "webp-converter-for-media": "gpl2Plus"
 , "webp-express": "gpl3Only"
diff --git a/pkgs/servers/x11/xorg/default.nix b/pkgs/servers/x11/xorg/default.nix
index a76a05fd0517..bf6c041205e4 100644
--- a/pkgs/servers/x11/xorg/default.nix
+++ b/pkgs/servers/x11/xorg/default.nix
@@ -66,18 +66,18 @@ self: with self; {
   })) {};
 
   # THIS IS A GENERATED FILE.  DO NOT EDIT!
-  editres = callPackage ({ stdenv, pkg-config, fetchurl, libX11, libXaw, libXmu, xorgproto, libXt, wrapWithXFileSearchPathHook, testers }: stdenv.mkDerivation (finalAttrs: {
+  editres = callPackage ({ stdenv, pkg-config, fetchurl, libxkbfile, libX11, libXaw, libXmu, xorgproto, libXt, wrapWithXFileSearchPathHook, testers }: stdenv.mkDerivation (finalAttrs: {
     pname = "editres";
-    version = "1.0.8";
+    version = "1.0.9";
     builder = ./builder.sh;
     src = fetchurl {
-      url = "mirror://xorg/individual/app/editres-1.0.8.tar.xz";
-      sha256 = "1ydn32x9qh2zkn90w6nfv33gcq75z67w93bakkykadl8n7zmvkw3";
+      url = "mirror://xorg/individual/app/editres-1.0.9.tar.xz";
+      sha256 = "1imk7mgdc3q9lf058xisajij374x8r31ynvqmwbs9khfdxx3zz6d";
     };
     hardeningDisable = [ "bindnow" "relro" ];
     strictDeps = true;
     nativeBuildInputs = [ pkg-config wrapWithXFileSearchPathHook ];
-    buildInputs = [ libX11 libXaw libXmu xorgproto libXt ];
+    buildInputs = [ libxkbfile libX11 libXaw libXmu xorgproto libXt ];
     passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
     meta = {
       pkgConfigModules = [ ];
@@ -88,11 +88,11 @@ self: with self; {
   # THIS IS A GENERATED FILE.  DO NOT EDIT!
   encodings = callPackage ({ stdenv, pkg-config, fetchurl, mkfontscale, testers }: stdenv.mkDerivation (finalAttrs: {
     pname = "encodings";
-    version = "1.0.7";
+    version = "1.1.0";
     builder = ./builder.sh;
     src = fetchurl {
-      url = "mirror://xorg/individual/font/encodings-1.0.7.tar.xz";
-      sha256 = "193hxaygxy2msmf8cyps8jdi0kxga84hj47qv7diqlhn7gsajf9s";
+      url = "mirror://xorg/individual/font/encodings-1.1.0.tar.xz";
+      sha256 = "0xg99nmpvik6vaz4h03xay7rx0r3bf5a8azkjlpa3ksn2xi3rwcz";
     };
     hardeningDisable = [ "bindnow" "relro" ];
     strictDeps = true;
@@ -938,11 +938,11 @@ self: with self; {
   # THIS IS A GENERATED FILE.  DO NOT EDIT!
   gccmakedep = callPackage ({ stdenv, pkg-config, fetchurl, testers }: stdenv.mkDerivation (finalAttrs: {
     pname = "gccmakedep";
-    version = "1.0.3";
+    version = "1.0.4";
     builder = ./builder.sh;
     src = fetchurl {
-      url = "mirror://xorg/individual/util/gccmakedep-1.0.3.tar.bz2";
-      sha256 = "1r1fpy5ni8chbgx7j5sz0008fpb6vbazpy1nifgdhgijyzqxqxdj";
+      url = "mirror://xorg/individual/util/gccmakedep-1.0.4.tar.xz";
+      sha256 = "1di5rxv930nhf5ls07fx04l0lqsakxycplmrx4kc6qzvd63zk22h";
     };
     hardeningDisable = [ "bindnow" "relro" ];
     strictDeps = true;
@@ -958,11 +958,11 @@ self: with self; {
   # THIS IS A GENERATED FILE.  DO NOT EDIT!
   iceauth = callPackage ({ stdenv, pkg-config, fetchurl, libICE, xorgproto, testers }: stdenv.mkDerivation (finalAttrs: {
     pname = "iceauth";
-    version = "1.0.9";
+    version = "1.0.10";
     builder = ./builder.sh;
     src = fetchurl {
-      url = "mirror://xorg/individual/app/iceauth-1.0.9.tar.xz";
-      sha256 = "01cc816fvdkkfcnqnyvgcshcip2jzjivwa8hzdvsz0snak5xzf9c";
+      url = "mirror://xorg/individual/app/iceauth-1.0.10.tar.xz";
+      sha256 = "0ad0kbr5bfdk9na3jmjpg26gd6hwv4lxja2nkdwxrybal9yzpvix";
     };
     hardeningDisable = [ "bindnow" "relro" ];
     strictDeps = true;
@@ -1118,11 +1118,11 @@ self: with self; {
   # THIS IS A GENERATED FILE.  DO NOT EDIT!
   libX11 = callPackage ({ stdenv, pkg-config, fetchurl, xorgproto, libpthreadstubs, libxcb, xtrans, testers }: stdenv.mkDerivation (finalAttrs: {
     pname = "libX11";
-    version = "1.8.7";
+    version = "1.8.9";
     builder = ./builder.sh;
     src = fetchurl {
-      url = "mirror://xorg/individual/lib/libX11-1.8.7.tar.xz";
-      sha256 = "1vlrgrdibp4lr84wgmsdy1ihzaai8bvvqc68npi1m19wir36gwh5";
+      url = "mirror://xorg/individual/lib/libX11-1.8.9.tar.xz";
+      sha256 = "0qijpp9l6hhwwx22hncrzjpmb5ffcakj6pxa5lzgjkhl3l8qz7bp";
     };
     hardeningDisable = [ "bindnow" "relro" ];
     strictDeps = true;
@@ -1198,11 +1198,11 @@ self: with self; {
   # THIS IS A GENERATED FILE.  DO NOT EDIT!
   libXaw = callPackage ({ stdenv, pkg-config, fetchurl, libX11, libXext, xorgproto, libXmu, libXpm, libXt, testers }: stdenv.mkDerivation (finalAttrs: {
     pname = "libXaw";
-    version = "1.0.15";
+    version = "1.0.16";
     builder = ./builder.sh;
     src = fetchurl {
-      url = "mirror://xorg/individual/lib/libXaw-1.0.15.tar.xz";
-      sha256 = "0jkm2ards3nj08y7185k9jvjhhx78r46abrl3g3jrc4zvq7zfddb";
+      url = "mirror://xorg/individual/lib/libXaw-1.0.16.tar.xz";
+      sha256 = "13wwqfwaahm6dh35w0nkvw32x3li2s0glsks34ggh267ahmmf7bk";
     };
     hardeningDisable = [ "bindnow" "relro" ];
     strictDeps = true;
@@ -1278,11 +1278,11 @@ self: with self; {
   # THIS IS A GENERATED FILE.  DO NOT EDIT!
   libXdmcp = callPackage ({ stdenv, pkg-config, fetchurl, xorgproto, testers }: stdenv.mkDerivation (finalAttrs: {
     pname = "libXdmcp";
-    version = "1.1.4";
+    version = "1.1.5";
     builder = ./builder.sh;
     src = fetchurl {
-      url = "mirror://xorg/individual/lib/libXdmcp-1.1.4.tar.xz";
-      sha256 = "005dsry6nfqrv32i7gbqn7mxnb2m3pc8fz9lxj2b9w7q2z1mrkid";
+      url = "mirror://xorg/individual/lib/libXdmcp-1.1.5.tar.xz";
+      sha256 = "1312l8x3asib77wgf123w3nbabnky61mb6pnmmqapbf350l259fq";
     };
     hardeningDisable = [ "bindnow" "relro" ];
     strictDeps = true;
@@ -1438,11 +1438,11 @@ self: with self; {
   # THIS IS A GENERATED FILE.  DO NOT EDIT!
   libXmu = callPackage ({ stdenv, pkg-config, fetchurl, libX11, libXext, xorgproto, libXt, testers }: stdenv.mkDerivation (finalAttrs: {
     pname = "libXmu";
-    version = "1.1.4";
+    version = "1.2.1";
     builder = ./builder.sh;
     src = fetchurl {
-      url = "mirror://xorg/individual/lib/libXmu-1.1.4.tar.xz";
-      sha256 = "0i42fng5gizablqziib25ipcwm5830jprl955ibq54rykjmy6391";
+      url = "mirror://xorg/individual/lib/libXmu-1.2.1.tar.xz";
+      sha256 = "1cp82iz7yki63iykvb3alwy4nwy01k2axi5rqpyfafca4j9pgcpw";
     };
     hardeningDisable = [ "bindnow" "relro" ];
     strictDeps = true;
@@ -1738,11 +1738,11 @@ self: with self; {
   # THIS IS A GENERATED FILE.  DO NOT EDIT!
   libfontenc = callPackage ({ stdenv, pkg-config, fetchurl, xorgproto, zlib, testers }: stdenv.mkDerivation (finalAttrs: {
     pname = "libfontenc";
-    version = "1.1.7";
+    version = "1.1.8";
     builder = ./builder.sh;
     src = fetchurl {
-      url = "mirror://xorg/individual/lib/libfontenc-1.1.7.tar.xz";
-      sha256 = "1hpy7kvppzy36fl8gbnzbv0cvglpdqk9jpdgvcfma1pfza8nkly0";
+      url = "mirror://xorg/individual/lib/libfontenc-1.1.8.tar.xz";
+      sha256 = "1ihlznj4m49jn1887cr86qqhrrlghvbfj7bbh230svi30pac60kv";
     };
     hardeningDisable = [ "bindnow" "relro" ];
     strictDeps = true;
@@ -1758,11 +1758,11 @@ self: with self; {
   # THIS IS A GENERATED FILE.  DO NOT EDIT!
   libpciaccess = callPackage ({ stdenv, pkg-config, fetchurl, testers }: stdenv.mkDerivation (finalAttrs: {
     pname = "libpciaccess";
-    version = "0.18";
+    version = "0.18.1";
     builder = ./builder.sh;
     src = fetchurl {
-      url = "mirror://xorg/individual/lib/libpciaccess-0.18.tar.xz";
-      sha256 = "1ab2qbksf15jrpzd6x9ncri64d2bnhlw7aajdws58lj9gljv0qal";
+      url = "mirror://xorg/individual/lib/libpciaccess-0.18.1.tar.xz";
+      sha256 = "0xpslrjnfrc1a7y8f8qwnd3wq24ndpj2q77ds12mbnwand239x2a";
     };
     hardeningDisable = [ "bindnow" "relro" ];
     strictDeps = true;
@@ -1798,11 +1798,11 @@ self: with self; {
   # THIS IS A GENERATED FILE.  DO NOT EDIT!
   libxcb = callPackage ({ stdenv, pkg-config, fetchurl, libxslt, libpthreadstubs, libXau, xcbproto, libXdmcp, python3, testers }: stdenv.mkDerivation (finalAttrs: {
     pname = "libxcb";
-    version = "1.16";
+    version = "1.17.0";
     builder = ./builder.sh;
     src = fetchurl {
-      url = "mirror://xorg/individual/lib/libxcb-1.16.tar.xz";
-      sha256 = "0w8xf6ff6axvla734lfb2291hrjrqqhn6mqabvdrdwgvl1m5cj23";
+      url = "mirror://xorg/individual/lib/libxcb-1.17.0.tar.xz";
+      sha256 = "0mbdkajqhg0j0zjc9a2z1qyv9mca797ihvifc9qyl3vijscvz7jr";
     };
     hardeningDisable = [ "bindnow" "relro" ];
     strictDeps = true;
@@ -1878,11 +1878,11 @@ self: with self; {
   # THIS IS A GENERATED FILE.  DO NOT EDIT!
   listres = callPackage ({ stdenv, pkg-config, fetchurl, libXaw, libXmu, xorgproto, libXt, testers }: stdenv.mkDerivation (finalAttrs: {
     pname = "listres";
-    version = "1.0.5";
+    version = "1.0.6";
     builder = ./builder.sh;
     src = fetchurl {
-      url = "mirror://xorg/individual/app/listres-1.0.5.tar.xz";
-      sha256 = "17fwfjh0xrvg7jj4h32pa8ns4hq4r11z61kh2xsqvsyjwyxh0anf";
+      url = "mirror://xorg/individual/app/listres-1.0.6.tar.xz";
+      sha256 = "1jj3xqm4bkzzdikb189ga6q79267jklpf5byhzr599lvsvpm672d";
     };
     hardeningDisable = [ "bindnow" "relro" ];
     strictDeps = true;
@@ -1898,11 +1898,11 @@ self: with self; {
   # THIS IS A GENERATED FILE.  DO NOT EDIT!
   lndir = callPackage ({ stdenv, pkg-config, fetchurl, xorgproto, testers }: stdenv.mkDerivation (finalAttrs: {
     pname = "lndir";
-    version = "1.0.4";
+    version = "1.0.5";
     builder = ./builder.sh;
     src = fetchurl {
-      url = "mirror://xorg/individual/util/lndir-1.0.4.tar.xz";
-      sha256 = "11syg5hx3f7m1d2p7zw717lryk819h6wk8h4vmapfdxvsflkfd1y";
+      url = "mirror://xorg/individual/util/lndir-1.0.5.tar.xz";
+      sha256 = "1nsd23kz6iqxfcis3432zq01i54n98b94m2gcsay1k3mamx5fr9v";
     };
     hardeningDisable = [ "bindnow" "relro" ];
     strictDeps = true;
@@ -1918,11 +1918,11 @@ self: with self; {
   # THIS IS A GENERATED FILE.  DO NOT EDIT!
   luit = callPackage ({ stdenv, pkg-config, fetchurl, testers }: stdenv.mkDerivation (finalAttrs: {
     pname = "luit";
-    version = "20230201";
+    version = "20240102";
     builder = ./builder.sh;
     src = fetchurl {
-      url = "https://invisible-mirror.net/archives/luit/luit-20230201.tgz";
-      sha256 = "0vy5fqp26pnrdn0hmgnmar6m2y06syrz188jqh03vqkyphfqsapf";
+      url = "https://invisible-mirror.net/archives/luit/luit-20240102.tgz";
+      sha256 = "10n0xf8m3j6xhj5dgc0km40n9vy38hwnvjfq4pr0xiffrllflym0";
     };
     hardeningDisable = [ "bindnow" "relro" ];
     strictDeps = true;
@@ -2098,11 +2098,11 @@ self: with self; {
   # THIS IS A GENERATED FILE.  DO NOT EDIT!
   utilmacros = callPackage ({ stdenv, pkg-config, fetchurl, testers }: stdenv.mkDerivation (finalAttrs: {
     pname = "util-macros";
-    version = "1.20.0";
+    version = "1.20.1";
     builder = ./builder.sh;
     src = fetchurl {
-      url = "mirror://xorg/individual/util/util-macros-1.20.0.tar.xz";
-      sha256 = "1nrh8kmbix5pspva6y7h14fj97xdvxqc6fr3zysfswg9vdib51hb";
+      url = "mirror://xorg/individual/util/util-macros-1.20.1.tar.xz";
+      sha256 = "1xffkcqv96vpk5pckisanrvg4w7i9ciqhs6yv7sc12p7vii8yc0b";
     };
     hardeningDisable = [ "bindnow" "relro" ];
     strictDeps = true;
@@ -2238,11 +2238,11 @@ self: with self; {
   # THIS IS A GENERATED FILE.  DO NOT EDIT!
   xcbproto = callPackage ({ stdenv, pkg-config, fetchurl, python3, testers }: stdenv.mkDerivation (finalAttrs: {
     pname = "xcb-proto";
-    version = "1.16.0";
+    version = "1.17.0";
     builder = ./builder.sh;
     src = fetchurl {
-      url = "mirror://xorg/individual/proto/xcb-proto-1.16.0.tar.xz";
-      sha256 = "06aij66rs8g378wg8swd7b3g73wqrrbbwl8shhnsi29amm41hnm7";
+      url = "mirror://xorg/individual/proto/xcb-proto-1.17.0.tar.xz";
+      sha256 = "130lc8jx43s83496nc8jn47zixjcp4abgsz69pvrjiqg279aq6rc";
     };
     hardeningDisable = [ "bindnow" "relro" ];
     strictDeps = true;
@@ -2518,11 +2518,11 @@ self: with self; {
   # THIS IS A GENERATED FILE.  DO NOT EDIT!
   xdm = callPackage ({ stdenv, pkg-config, fetchurl, libX11, libXau, libXaw, libXdmcp, libXext, libXft, libXinerama, libXmu, libXpm, xorgproto, libXrender, libXt, wrapWithXFileSearchPathHook, testers }: stdenv.mkDerivation (finalAttrs: {
     pname = "xdm";
-    version = "1.1.14";
+    version = "1.1.16";
     builder = ./builder.sh;
     src = fetchurl {
-      url = "mirror://xorg/individual/app/xdm-1.1.14.tar.xz";
-      sha256 = "0prx5h0xmv08yvm0axzh74a90cyc1s1dcv98jpjwjzkr6rbg56ry";
+      url = "mirror://xorg/individual/app/xdm-1.1.16.tar.xz";
+      sha256 = "1737hz8g3wpgdfj6y11q1xwma40wvgz85ckp6wv0hmz9h6c21wmw";
     };
     hardeningDisable = [ "bindnow" "relro" ];
     strictDeps = true;
@@ -2578,11 +2578,11 @@ self: with self; {
   # THIS IS A GENERATED FILE.  DO NOT EDIT!
   xev = callPackage ({ stdenv, pkg-config, fetchurl, libX11, xorgproto, libXrandr, testers }: stdenv.mkDerivation (finalAttrs: {
     pname = "xev";
-    version = "1.2.5";
+    version = "1.2.6";
     builder = ./builder.sh;
     src = fetchurl {
-      url = "mirror://xorg/individual/app/xev-1.2.5.tar.xz";
-      sha256 = "1hbfwcnbyz4w13fbhnghl0vdhf6w9f9pb7jgjwrhykkii51ilin9";
+      url = "mirror://xorg/individual/app/xev-1.2.6.tar.xz";
+      sha256 = "1mq7332kgisd9yq0w0rv11vhwhgpkmpg7pfdlyn776dc13hcbqb1";
     };
     hardeningDisable = [ "bindnow" "relro" ];
     strictDeps = true;
@@ -2878,11 +2878,11 @@ self: with self; {
   # THIS IS A GENERATED FILE.  DO NOT EDIT!
   xf86videochips = callPackage ({ stdenv, pkg-config, fetchurl, xorgproto, libpciaccess, xorgserver, testers }: stdenv.mkDerivation (finalAttrs: {
     pname = "xf86-video-chips";
-    version = "1.4.0";
+    version = "1.5.0";
     builder = ./builder.sh;
     src = fetchurl {
-      url = "mirror://xorg/individual/driver/xf86-video-chips-1.4.0.tar.bz2";
-      sha256 = "1gqzy7q9v824m7hqkbbmncxg082zm0d4mafgc97c4skyiwgf9wq7";
+      url = "mirror://xorg/individual/driver/xf86-video-chips-1.5.0.tar.xz";
+      sha256 = "1cyljd3h2hjv42ldqimf4lllqhb8cma6p3n979kr8nn81rjdkhw4";
     };
     hardeningDisable = [ "bindnow" "relro" ];
     strictDeps = true;
@@ -3158,11 +3158,11 @@ self: with self; {
   # THIS IS A GENERATED FILE.  DO NOT EDIT!
   xf86videonv = callPackage ({ stdenv, pkg-config, fetchurl, xorgproto, libpciaccess, xorgserver, testers }: stdenv.mkDerivation (finalAttrs: {
     pname = "xf86-video-nv";
-    version = "2.1.22";
+    version = "2.1.23";
     builder = ./builder.sh;
     src = fetchurl {
-      url = "mirror://xorg/individual/driver/xf86-video-nv-2.1.22.tar.xz";
-      sha256 = "126j60dgnmiahjk5mxbnaav23hv7nvxvh49vhn6qg2f3nlnr6632";
+      url = "mirror://xorg/individual/driver/xf86-video-nv-2.1.23.tar.xz";
+      sha256 = "1jlap6xjn4pfwg9ab8fxm5mwf4dqfywp70bgc0071m7k66jbv3f6";
     };
     hardeningDisable = [ "bindnow" "relro" ];
     strictDeps = true;
@@ -3298,11 +3298,11 @@ self: with self; {
   # THIS IS A GENERATED FILE.  DO NOT EDIT!
   xf86videosavage = callPackage ({ stdenv, pkg-config, fetchurl, xorgproto, libdrm, libpciaccess, xorgserver, testers }: stdenv.mkDerivation (finalAttrs: {
     pname = "xf86-video-savage";
-    version = "2.4.0";
+    version = "2.4.1";
     builder = ./builder.sh;
     src = fetchurl {
-      url = "mirror://xorg/individual/driver/xf86-video-savage-2.4.0.tar.xz";
-      sha256 = "1z81nqwaqqy9sc7pywkw4q9mijpvjx9w8xxr7d13k2nhzlng0v5k";
+      url = "mirror://xorg/individual/driver/xf86-video-savage-2.4.1.tar.xz";
+      sha256 = "1bqhgldb6yahpgav7g7cyc4kl5pm3mgkq8w2qncj36311hb92hb7";
     };
     hardeningDisable = [ "bindnow" "relro" ];
     strictDeps = true;
@@ -3518,11 +3518,11 @@ self: with self; {
   # THIS IS A GENERATED FILE.  DO NOT EDIT!
   xf86videovboxvideo = callPackage ({ stdenv, pkg-config, fetchurl, xorgproto, libpciaccess, xorgserver, testers }: stdenv.mkDerivation (finalAttrs: {
     pname = "xf86-video-vboxvideo";
-    version = "1.0.0";
+    version = "1.0.1";
     builder = ./builder.sh;
     src = fetchurl {
-      url = "mirror://xorg/individual/driver/xf86-video-vboxvideo-1.0.0.tar.bz2";
-      sha256 = "195z1js3i51qgxvhfw4bxb4dw3jcrrx2ynpm2y3475dypjzs7dkz";
+      url = "mirror://xorg/individual/driver/xf86-video-vboxvideo-1.0.1.tar.xz";
+      sha256 = "12kzgf516mbdygpni0jzm3dv60vz6vf704f3hgc6pi9bgpy6bz4f";
     };
     hardeningDisable = [ "bindnow" "relro" ];
     strictDeps = true;
@@ -3656,17 +3656,17 @@ self: with self; {
   })) {};
 
   # THIS IS A GENERATED FILE.  DO NOT EDIT!
-  xfontsel = callPackage ({ stdenv, pkg-config, fetchurl, libX11, libXaw, libXmu, xorgproto, libXt, wrapWithXFileSearchPathHook, testers }: stdenv.mkDerivation (finalAttrs: {
+  xfontsel = callPackage ({ stdenv, pkg-config, fetchurl, libX11, libXaw, libXmu, xorgproto, libXt, gettext, wrapWithXFileSearchPathHook, testers }: stdenv.mkDerivation (finalAttrs: {
     pname = "xfontsel";
-    version = "1.1.0";
+    version = "1.1.1";
     builder = ./builder.sh;
     src = fetchurl {
-      url = "mirror://xorg/individual/app/xfontsel-1.1.0.tar.xz";
-      sha256 = "1d6ifx6sw97mmr00bhfakyx2f94w14yswxc68sw49zmvawrjq18p";
+      url = "mirror://xorg/individual/app/xfontsel-1.1.1.tar.xz";
+      sha256 = "1j827aiv7lsr2y7jgmv6pb5wmr2l3r3nd2pys0z2a0bpi9jqcjvs";
     };
     hardeningDisable = [ "bindnow" "relro" ];
     strictDeps = true;
-    nativeBuildInputs = [ pkg-config wrapWithXFileSearchPathHook ];
+    nativeBuildInputs = [ pkg-config gettext wrapWithXFileSearchPathHook ];
     buildInputs = [ libX11 libXaw libXmu xorgproto libXt ];
     passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
     meta = {
@@ -3938,11 +3938,11 @@ self: with self; {
   # THIS IS A GENERATED FILE.  DO NOT EDIT!
   xload = callPackage ({ stdenv, pkg-config, fetchurl, libX11, libXaw, libXmu, xorgproto, libXt, gettext, wrapWithXFileSearchPathHook, testers }: stdenv.mkDerivation (finalAttrs: {
     pname = "xload";
-    version = "1.1.4";
+    version = "1.2.0";
     builder = ./builder.sh;
     src = fetchurl {
-      url = "mirror://xorg/individual/app/xload-1.1.4.tar.xz";
-      sha256 = "0c9h6w4bd1q3k4cy8v56sc3v9cg94cpg3xr057sf096v428vjil3";
+      url = "mirror://xorg/individual/app/xload-1.2.0.tar.xz";
+      sha256 = "104snn0rpnc91bmgj797cj6sgmkrp43n9mg20wbmr8p14kbfc3rc";
     };
     hardeningDisable = [ "bindnow" "relro" ];
     strictDeps = true;
@@ -3998,11 +3998,11 @@ self: with self; {
   # THIS IS A GENERATED FILE.  DO NOT EDIT!
   xlsfonts = callPackage ({ stdenv, pkg-config, fetchurl, libX11, xorgproto, testers }: stdenv.mkDerivation (finalAttrs: {
     pname = "xlsfonts";
-    version = "1.0.7";
+    version = "1.0.8";
     builder = ./builder.sh;
     src = fetchurl {
-      url = "mirror://xorg/individual/app/xlsfonts-1.0.7.tar.xz";
-      sha256 = "0r84wp4352hbfcaybqp2khipm40293byvrfyrlslrd37m52njwkv";
+      url = "mirror://xorg/individual/app/xlsfonts-1.0.8.tar.xz";
+      sha256 = "1kdnzyrm1wqwylghavn9lqi0h4lwf9ifkcv3zikbi176mjg90zw0";
     };
     hardeningDisable = [ "bindnow" "relro" ];
     strictDeps = true;
@@ -4038,11 +4038,11 @@ self: with self; {
   # THIS IS A GENERATED FILE.  DO NOT EDIT!
   xmessage = callPackage ({ stdenv, pkg-config, fetchurl, libXaw, libXt, wrapWithXFileSearchPathHook, testers }: stdenv.mkDerivation (finalAttrs: {
     pname = "xmessage";
-    version = "1.0.6";
+    version = "1.0.7";
     builder = ./builder.sh;
     src = fetchurl {
-      url = "mirror://xorg/individual/app/xmessage-1.0.6.tar.xz";
-      sha256 = "04kahkk3kd6p1xlzf0jwfgnrb5z2r3y55q3p12b6n59py52wbsnj";
+      url = "mirror://xorg/individual/app/xmessage-1.0.7.tar.xz";
+      sha256 = "0mh3lclzh82l4wkwg1d9gflnm1irjydihg30gqfxcwmpl2vwqgvh";
     };
     hardeningDisable = [ "bindnow" "relro" ];
     strictDeps = true;
@@ -4118,11 +4118,11 @@ self: with self; {
   # THIS IS A GENERATED FILE.  DO NOT EDIT!
   xorgdocs = callPackage ({ stdenv, pkg-config, fetchurl, testers }: stdenv.mkDerivation (finalAttrs: {
     pname = "xorg-docs";
-    version = "1.7.2";
+    version = "1.7.3";
     builder = ./builder.sh;
     src = fetchurl {
-      url = "mirror://xorg/individual/doc/xorg-docs-1.7.2.tar.gz";
-      sha256 = "0xrncq9dkl6h03gfsj89zagi2vkhgvcgy8l6pjjva350d24027hc";
+      url = "mirror://xorg/individual/doc/xorg-docs-1.7.3.tar.xz";
+      sha256 = "1vyxpjcv8z5r5f5iza726ahzzwdapbbkxzv1b6w5izyrnppg58i8";
     };
     hardeningDisable = [ "bindnow" "relro" ];
     strictDeps = true;
@@ -4138,11 +4138,11 @@ self: with self; {
   # THIS IS A GENERATED FILE.  DO NOT EDIT!
   xorgproto = callPackage ({ stdenv, pkg-config, fetchurl, libXt, python3, testers }: stdenv.mkDerivation (finalAttrs: {
     pname = "xorgproto";
-    version = "2023.2";
+    version = "2024.1";
     builder = ./builder.sh;
     src = fetchurl {
-      url = "mirror://xorg/individual/proto/xorgproto-2023.2.tar.xz";
-      sha256 = "0b4c27aq25w1fccks49p020avf9jzh75kaq5qwnww51bp1yvq7xn";
+      url = "mirror://xorg/individual/proto/xorgproto-2024.1.tar.xz";
+      sha256 = "0nfbbi4j130m2gxzp20hp642xizbbl68jpbzahiq8nw183yja8ip";
     };
     hardeningDisable = [ "bindnow" "relro" ];
     strictDeps = true;
@@ -4178,11 +4178,11 @@ self: with self; {
   # THIS IS A GENERATED FILE.  DO NOT EDIT!
   xorgsgmldoctools = callPackage ({ stdenv, pkg-config, fetchurl, testers }: stdenv.mkDerivation (finalAttrs: {
     pname = "xorg-sgml-doctools";
-    version = "1.12";
+    version = "1.12.1";
     builder = ./builder.sh;
     src = fetchurl {
-      url = "mirror://xorg/individual/doc/xorg-sgml-doctools-1.12.tar.gz";
-      sha256 = "1nsb8kn6nipc09yv19wdpd94pav6hx7xby0psmmdvnm6wqlh6nlq";
+      url = "mirror://xorg/individual/doc/xorg-sgml-doctools-1.12.1.tar.xz";
+      sha256 = "0vvdnl1x82mr2phcq9z6dg94mas56zdmbm6lmkaqjkkbf3058p8a";
     };
     hardeningDisable = [ "bindnow" "relro" ];
     strictDeps = true;
@@ -4198,11 +4198,11 @@ self: with self; {
   # THIS IS A GENERATED FILE.  DO NOT EDIT!
   xpr = callPackage ({ stdenv, pkg-config, fetchurl, libX11, libXmu, xorgproto, testers }: stdenv.mkDerivation (finalAttrs: {
     pname = "xpr";
-    version = "1.1.0";
+    version = "1.2.0";
     builder = ./builder.sh;
     src = fetchurl {
-      url = "mirror://xorg/individual/app/xpr-1.1.0.tar.xz";
-      sha256 = "1iaphm96kha6bzz34cj82r2lp5hrdpqwdca04iij4rinflab3fx0";
+      url = "mirror://xorg/individual/app/xpr-1.2.0.tar.xz";
+      sha256 = "1hyf6mc2l7lzkf21d5j4z6glg9y455hlsg8lv2lz028k6gw0554b";
     };
     hardeningDisable = [ "bindnow" "relro" ];
     strictDeps = true;
@@ -4278,11 +4278,11 @@ self: with self; {
   # THIS IS A GENERATED FILE.  DO NOT EDIT!
   xrefresh = callPackage ({ stdenv, pkg-config, fetchurl, libX11, xorgproto, testers }: stdenv.mkDerivation (finalAttrs: {
     pname = "xrefresh";
-    version = "1.0.7";
+    version = "1.1.0";
     builder = ./builder.sh;
     src = fetchurl {
-      url = "mirror://xorg/individual/app/xrefresh-1.0.7.tar.xz";
-      sha256 = "07hvfw3rdv8mzqmm9ax5z8kw544insdd152f2z8868ply8sxdwd9";
+      url = "mirror://xorg/individual/app/xrefresh-1.1.0.tar.xz";
+      sha256 = "0pwb5c9g3xxs70gc35hahxq2ky8261pw9n04j01a6dffbqnmkv99";
     };
     hardeningDisable = [ "bindnow" "relro" ];
     strictDeps = true;
@@ -4338,11 +4338,11 @@ self: with self; {
   # THIS IS A GENERATED FILE.  DO NOT EDIT!
   xsm = callPackage ({ stdenv, pkg-config, fetchurl, libICE, libSM, libX11, libXaw, xorgproto, libXt, wrapWithXFileSearchPathHook, testers }: stdenv.mkDerivation (finalAttrs: {
     pname = "xsm";
-    version = "1.0.5";
+    version = "1.0.6";
     builder = ./builder.sh;
     src = fetchurl {
-      url = "mirror://xorg/individual/app/xsm-1.0.5.tar.xz";
-      sha256 = "0bgvwvj99yqivy4dyxrfa0anwvh5d634gz0w43zy8cn17ymgsc4w";
+      url = "mirror://xorg/individual/app/xsm-1.0.6.tar.xz";
+      sha256 = "1kk398lbwyag8dljfmjfn4psdwmh66yhvab85xckf306qrscfk5p";
     };
     hardeningDisable = [ "bindnow" "relro" ];
     strictDeps = true;
diff --git a/pkgs/servers/x11/xorg/overrides.nix b/pkgs/servers/x11/xorg/overrides.nix
index 6cc04f1490c6..246709dd1c1c 100644
--- a/pkgs/servers/x11/xorg/overrides.nix
+++ b/pkgs/servers/x11/xorg/overrides.nix
@@ -557,7 +557,6 @@ self: super:
   xf86videoi128    = super.xf86videoi128.overrideAttrs    (attrs: { meta = attrs.meta // { broken = true; }; });
   xf86videonewport = super.xf86videonewport.overrideAttrs (attrs: { meta = attrs.meta // { broken = true; }; });
   xf86videos3virge = super.xf86videos3virge.overrideAttrs (attrs: { meta = attrs.meta // { broken = true; }; });
-  xf86videosavage  = super.xf86videosavage.overrideAttrs  (attrs: { meta = attrs.meta // { broken = true; }; });
   xf86videotga     = super.xf86videotga.overrideAttrs     (attrs: { meta = attrs.meta // { broken = true; }; });
   xf86videov4l     = super.xf86videov4l.overrideAttrs     (attrs: { meta = attrs.meta // { broken = true; }; });
   xf86videovoodoo  = super.xf86videovoodoo.overrideAttrs  (attrs: { meta = attrs.meta // { broken = true; }; });
diff --git a/pkgs/servers/x11/xorg/tarballs.list b/pkgs/servers/x11/xorg/tarballs.list
index 53836294211e..f58c526f7def 100644
--- a/pkgs/servers/x11/xorg/tarballs.list
+++ b/pkgs/servers/x11/xorg/tarballs.list
@@ -1,4 +1,4 @@
-https://invisible-mirror.net/archives/luit/luit-20230201.tgz
+https://invisible-mirror.net/archives/luit/luit-20240102.tgz
 mirror://xorg/individual/xcb/libpthread-stubs-0.5.tar.xz
 mirror://xorg/individual/xcb/xcb-util-0.4.1.tar.xz
 mirror://xorg/individual/xcb/xcb-util-errors-1.0.1.tar.xz
@@ -8,11 +8,11 @@ mirror://xorg/individual/xcb/xcb-util-renderutil-0.3.10.tar.xz
 mirror://xorg/individual/xcb/xcb-util-wm-0.4.2.tar.xz
 mirror://xorg/individual/app/appres-1.0.6.tar.xz
 mirror://xorg/individual/app/bitmap-1.1.1.tar.xz
-mirror://xorg/individual/app/editres-1.0.8.tar.xz
+mirror://xorg/individual/app/editres-1.0.9.tar.xz
 mirror://xorg/individual/app/fonttosfnt-1.2.3.tar.xz
-mirror://xorg/individual/app/iceauth-1.0.9.tar.xz
+mirror://xorg/individual/app/iceauth-1.0.10.tar.xz
 mirror://xorg/individual/app/ico-1.0.6.tar.xz
-mirror://xorg/individual/app/listres-1.0.5.tar.xz
+mirror://xorg/individual/app/listres-1.0.6.tar.xz
 mirror://xorg/individual/app/mkfontscale-1.2.3.tar.xz
 mirror://xorg/individual/app/oclock-1.0.5.tar.xz
 mirror://xorg/individual/app/sessreg-1.1.3.tar.xz
@@ -30,13 +30,13 @@ mirror://xorg/individual/app/xcmsdb-1.0.6.tar.xz
 mirror://xorg/individual/app/xcompmgr-1.1.9.tar.xz
 mirror://xorg/individual/app/xconsole-1.0.8.tar.xz
 mirror://xorg/individual/app/xcursorgen-1.0.8.tar.xz
-mirror://xorg/individual/app/xdm-1.1.14.tar.xz
+mirror://xorg/individual/app/xdm-1.1.16.tar.xz
 mirror://xorg/individual/app/xdpyinfo-1.3.4.tar.xz
 mirror://xorg/individual/app/xdriinfo-1.0.7.tar.xz
-mirror://xorg/individual/app/xev-1.2.5.tar.xz
+mirror://xorg/individual/app/xev-1.2.6.tar.xz
 mirror://xorg/individual/app/xeyes-1.3.0.tar.xz
 mirror://xorg/individual/app/xfd-1.1.4.tar.xz
-mirror://xorg/individual/app/xfontsel-1.1.0.tar.xz
+mirror://xorg/individual/app/xfontsel-1.1.1.tar.xz
 mirror://xorg/individual/app/xfs-1.2.1.tar.xz
 mirror://xorg/individual/app/xfsinfo-1.0.7.tar.xz
 mirror://xorg/individual/app/xgamma-1.0.7.tar.xz
@@ -49,22 +49,22 @@ mirror://xorg/individual/app/xkbevd-1.1.5.tar.xz
 mirror://xorg/individual/app/xkbprint-1.0.6.tar.xz
 mirror://xorg/individual/app/xkbutils-1.0.6.tar.xz
 mirror://xorg/individual/app/xkill-1.0.6.tar.xz
-mirror://xorg/individual/app/xload-1.1.4.tar.xz
+mirror://xorg/individual/app/xload-1.2.0.tar.xz
 mirror://xorg/individual/app/xlsatoms-1.1.4.tar.xz
 mirror://xorg/individual/app/xlsclients-1.1.5.tar.xz
-mirror://xorg/individual/app/xlsfonts-1.0.7.tar.xz
+mirror://xorg/individual/app/xlsfonts-1.0.8.tar.xz
 mirror://xorg/individual/app/xmag-1.0.7.tar.xz
-mirror://xorg/individual/app/xmessage-1.0.6.tar.xz
+mirror://xorg/individual/app/xmessage-1.0.7.tar.xz
 mirror://xorg/individual/app/xmodmap-1.0.11.tar.xz
 mirror://xorg/individual/app/xmore-1.0.4.tar.xz
-mirror://xorg/individual/app/xpr-1.1.0.tar.xz
+mirror://xorg/individual/app/xpr-1.2.0.tar.xz
 mirror://xorg/individual/app/xprop-1.2.7.tar.xz
 mirror://xorg/individual/app/xrandr-1.5.2.tar.xz
 mirror://xorg/individual/app/xrdb-1.2.2.tar.xz
-mirror://xorg/individual/app/xrefresh-1.0.7.tar.xz
+mirror://xorg/individual/app/xrefresh-1.1.0.tar.xz
 mirror://xorg/individual/app/xset-1.2.5.tar.xz
 mirror://xorg/individual/app/xsetroot-1.1.3.tar.xz
-mirror://xorg/individual/app/xsm-1.0.5.tar.xz
+mirror://xorg/individual/app/xsm-1.0.6.tar.xz
 mirror://xorg/individual/app/xstdcmap-1.0.5.tar.xz
 mirror://xorg/individual/app/xtrap-1.0.3.tar.bz2
 mirror://xorg/individual/app/xvinfo-1.1.5.tar.xz
@@ -74,8 +74,8 @@ mirror://xorg/individual/app/xwud-1.0.6.tar.xz
 mirror://xorg/individual/data/xbitmaps-1.1.3.tar.xz
 mirror://xorg/individual/data/xcursor-themes-1.0.7.tar.xz
 mirror://xorg/individual/data/xkeyboard-config/xkeyboard-config-2.41.tar.xz
-mirror://xorg/individual/doc/xorg-docs-1.7.2.tar.gz
-mirror://xorg/individual/doc/xorg-sgml-doctools-1.12.tar.gz
+mirror://xorg/individual/doc/xorg-docs-1.7.3.tar.xz
+mirror://xorg/individual/doc/xorg-sgml-doctools-1.12.1.tar.xz
 mirror://xorg/individual/driver/xf86-input-evdev-2.10.6.tar.bz2
 mirror://xorg/individual/driver/xf86-input-joystick-1.6.4.tar.xz
 mirror://xorg/individual/driver/xf86-input-keyboard-2.0.0.tar.xz
@@ -89,7 +89,7 @@ mirror://xorg/individual/driver/xf86-video-apm-1.3.0.tar.bz2
 mirror://xorg/individual/driver/xf86-video-ark-0.7.6.tar.xz
 mirror://xorg/individual/driver/xf86-video-ast-1.1.6.tar.xz
 mirror://xorg/individual/driver/xf86-video-ati-22.0.0.tar.xz
-mirror://xorg/individual/driver/xf86-video-chips-1.4.0.tar.bz2
+mirror://xorg/individual/driver/xf86-video-chips-1.5.0.tar.xz
 mirror://xorg/individual/driver/xf86-video-cirrus-1.6.0.tar.xz
 mirror://xorg/individual/driver/xf86-video-dummy-0.4.1.tar.xz
 mirror://xorg/individual/driver/xf86-video-fbdev-0.5.0.tar.bz2
@@ -103,14 +103,14 @@ mirror://xorg/individual/driver/xf86-video-mga-2.0.1.tar.xz
 mirror://xorg/individual/driver/xf86-video-neomagic-1.3.1.tar.xz
 mirror://xorg/individual/driver/xf86-video-newport-0.2.4.tar.bz2
 https://gitlab.freedesktop.org/xorg/driver/xf86-video-nouveau/-/archive/3ee7cbca8f9144a3bb5be7f71ce70558f548d268/xf86-video-nouveau-3ee7cbca8f9144a3bb5be7f71ce70558f548d268.tar.bz2
-mirror://xorg/individual/driver/xf86-video-nv-2.1.22.tar.xz
+mirror://xorg/individual/driver/xf86-video-nv-2.1.23.tar.xz
 mirror://xorg/individual/driver/xf86-video-omap-0.4.5.tar.bz2
 mirror://xorg/individual/driver/xf86-video-openchrome-0.6.0.tar.bz2
 mirror://xorg/individual/driver/xf86-video-qxl-0.1.6.tar.xz
 mirror://xorg/individual/driver/xf86-video-r128-6.12.1.tar.xz
 mirror://xorg/individual/driver/xf86-video-rendition-4.2.7.tar.bz2
 mirror://xorg/individual/driver/xf86-video-s3virge-1.11.1.tar.xz
-mirror://xorg/individual/driver/xf86-video-savage-2.4.0.tar.xz
+mirror://xorg/individual/driver/xf86-video-savage-2.4.1.tar.xz
 mirror://xorg/individual/driver/xf86-video-siliconmotion-1.7.10.tar.xz
 mirror://xorg/individual/driver/xf86-video-sis-0.12.0.tar.gz
 mirror://xorg/individual/driver/xf86-video-sisusb-0.9.7.tar.bz2
@@ -121,13 +121,13 @@ mirror://xorg/individual/driver/xf86-video-tdfx-1.5.0.tar.bz2
 mirror://xorg/individual/driver/xf86-video-tga-1.2.2.tar.bz2
 mirror://xorg/individual/driver/xf86-video-trident-1.4.0.tar.xz
 mirror://xorg/individual/driver/xf86-video-v4l-0.3.0.tar.bz2
-mirror://xorg/individual/driver/xf86-video-vboxvideo-1.0.0.tar.bz2
+mirror://xorg/individual/driver/xf86-video-vboxvideo-1.0.1.tar.xz
 mirror://xorg/individual/driver/xf86-video-vesa-2.6.0.tar.xz
 mirror://xorg/individual/driver/xf86-video-vmware-13.4.0.tar.xz
 mirror://xorg/individual/driver/xf86-video-voodoo-1.2.6.tar.xz
 mirror://xorg/individual/driver/xf86-video-wsfb-0.4.0.tar.bz2
 mirror://xorg/individual/driver/xf86-video-xgi-1.6.1.tar.bz2
-mirror://xorg/individual/font/encodings-1.0.7.tar.xz
+mirror://xorg/individual/font/encodings-1.1.0.tar.xz
 mirror://xorg/individual/font/font-adobe-75dpi-1.0.4.tar.xz
 mirror://xorg/individual/font/font-adobe-100dpi-1.0.4.tar.xz
 mirror://xorg/individual/font/font-adobe-utopia-75dpi-1.0.5.tar.xz
@@ -167,21 +167,21 @@ mirror://xorg/individual/font/font-winitzki-cyrillic-1.0.4.tar.xz
 mirror://xorg/individual/font/font-xfree86-type1-1.0.5.tar.xz
 mirror://xorg/individual/lib/libAppleWM-1.4.1.tar.bz2
 mirror://xorg/individual/lib/libdmx-1.1.5.tar.xz
-mirror://xorg/individual/lib/libfontenc-1.1.7.tar.xz
+mirror://xorg/individual/lib/libfontenc-1.1.8.tar.xz
 mirror://xorg/individual/lib/libFS-1.0.9.tar.xz
 mirror://xorg/individual/lib/libICE-1.1.1.tar.xz
-mirror://xorg/individual/lib/libpciaccess-0.18.tar.xz
+mirror://xorg/individual/lib/libpciaccess-0.18.1.tar.xz
 mirror://xorg/individual/lib/libSM-1.2.4.tar.xz
 mirror://xorg/individual/lib/libWindowsWM-1.0.1.tar.bz2
-mirror://xorg/individual/lib/libX11-1.8.7.tar.xz
+mirror://xorg/individual/lib/libX11-1.8.9.tar.xz
 mirror://xorg/individual/lib/libXau-1.0.11.tar.xz
-mirror://xorg/individual/lib/libXaw-1.0.15.tar.xz
-mirror://xorg/individual/lib/libxcb-1.16.tar.xz
+mirror://xorg/individual/lib/libXaw-1.0.16.tar.xz
+mirror://xorg/individual/lib/libxcb-1.17.0.tar.xz
 mirror://xorg/individual/lib/libXcomposite-0.4.6.tar.xz
 mirror://xorg/individual/lib/libXcursor-1.2.2.tar.xz
 mirror://xorg/individual/lib/libxcvt-0.1.2.tar.xz
 mirror://xorg/individual/lib/libXdamage-1.1.6.tar.xz
-mirror://xorg/individual/lib/libXdmcp-1.1.4.tar.xz
+mirror://xorg/individual/lib/libXdmcp-1.1.5.tar.xz
 mirror://xorg/individual/lib/libXext-1.3.6.tar.xz
 mirror://xorg/individual/lib/libXfixes-6.0.1.tar.xz
 mirror://xorg/individual/lib/libXfont-1.5.4.tar.bz2
@@ -190,7 +190,7 @@ mirror://xorg/individual/lib/libXft-2.3.8.tar.xz
 mirror://xorg/individual/lib/libXi-1.8.1.tar.xz
 mirror://xorg/individual/lib/libXinerama-1.1.5.tar.xz
 mirror://xorg/individual/lib/libxkbfile-1.1.3.tar.xz
-mirror://xorg/individual/lib/libXmu-1.1.4.tar.xz
+mirror://xorg/individual/lib/libXmu-1.2.1.tar.xz
 mirror://xorg/individual/lib/libXp-1.0.4.tar.xz
 mirror://xorg/individual/lib/libXpm-3.5.17.tar.xz
 mirror://xorg/individual/lib/libXpresent-1.0.1.tar.xz
@@ -209,13 +209,13 @@ mirror://xorg/individual/lib/libXxf86misc-1.0.4.tar.bz2
 mirror://xorg/individual/lib/libXxf86vm-1.1.5.tar.xz
 mirror://xorg/individual/lib/xcb-util-cursor-0.1.5.tar.xz
 mirror://xorg/individual/lib/xtrans-1.5.0.tar.xz
-mirror://xorg/individual/proto/xcb-proto-1.16.0.tar.xz
-mirror://xorg/individual/proto/xorgproto-2023.2.tar.xz
+mirror://xorg/individual/proto/xcb-proto-1.17.0.tar.xz
+mirror://xorg/individual/proto/xorgproto-2024.1.tar.xz
 mirror://xorg/individual/util/bdftopcf-1.1.1.tar.xz
-mirror://xorg/individual/util/gccmakedep-1.0.3.tar.bz2
+mirror://xorg/individual/util/gccmakedep-1.0.4.tar.xz
 mirror://xorg/individual/util/imake-1.0.10.tar.xz
-mirror://xorg/individual/util/lndir-1.0.4.tar.xz
+mirror://xorg/individual/util/lndir-1.0.5.tar.xz
 mirror://xorg/individual/util/makedepend-1.0.9.tar.xz
-mirror://xorg/individual/util/util-macros-1.20.0.tar.xz
+mirror://xorg/individual/util/util-macros-1.20.1.tar.xz
 mirror://xorg/individual/util/xorg-cf-files-1.0.8.tar.xz
 mirror://xorg/individual/xserver/xorg-server-21.1.13.tar.xz
diff --git a/pkgs/servers/x11/xorg/update.py b/pkgs/servers/x11/xorg/update.py
new file mode 100755
index 000000000000..6928837c76fa
--- /dev/null
+++ b/pkgs/servers/x11/xorg/update.py
@@ -0,0 +1,116 @@
+#!/usr/bin/env nix-shell
+#!nix-shell --pure --keep NIX_PATH -i python3 -p nix git "python3.withPackages (ps: [ ps. packaging ps.beautifulsoup4 ps.requests ])"
+
+# Usage: Run ./update.py from the directory containing tarballs.list. The script checks for the
+# latest versions of all packages, updates the expressions if any update is found, and commits
+# any changes.
+
+import subprocess
+
+import requests
+from bs4 import BeautifulSoup
+from packaging import version
+
+mirror = "mirror://xorg/"
+allversions = {}
+
+print("Downloading latest version info...")
+
+# xorg packages
+for component in [
+    "individual/app",
+    "individual/data",
+    "individual/data/xkeyboard-config",
+    "individual/doc",
+    "individual/driver",
+    "individual/font",
+    "individual/lib",
+    "individual/proto",
+    "individual/util",
+    "individual/xcb",
+    "individual/xserver",
+]:
+    url = "https://xorg.freedesktop.org/releases/{}/".format(component)
+    r = requests.get(url)
+    soup = BeautifulSoup(r.text, "html.parser")
+    for a in soup.table.find_all("a"):
+        href = a["href"]
+        if not href.endswith((".tar.bz2", ".tar.gz", ".tar.xz")):
+            continue
+
+        pname, rem = href.rsplit("-", 1)
+        ver, _, ext = rem.rsplit(".", 2)
+
+        if "rc" in ver:
+            continue
+
+        entry = allversions.setdefault(f"{mirror}{component}/{pname}", ([], {}))
+        entry[0].append(version.parse(ver))
+        entry[1][ver] = f"{mirror}{component}/{href}"
+
+# luit
+lurl = "https://invisible-mirror.net/archives/luit/"
+r = requests.get(lurl)
+soup = BeautifulSoup(r.text, "html.parser")
+for a in soup.find_all("a"):
+    href = a["href"]
+
+    if not href.endswith(".tgz"):
+        continue
+
+    pname, rem = href.rsplit("-", 1)
+    ver, _ = rem.rsplit(".", 1)
+
+    entry = allversions.setdefault(f"{lurl}{pname}", ([], {}))
+    entry[0].append(version.parse(ver))
+    entry[1][ver] = f"{lurl}{href}"
+
+print("Finding updated versions...")
+
+with open("./tarballs.list") as f:
+    lines_tarballs = f.readlines()
+
+updated_tarballs = []
+changes = {}
+changes_text = []
+for line in lines_tarballs:
+    line = line.rstrip("\n")
+
+    if any(line.startswith(frag) for frag in [mirror, lurl]):
+        pname, rem = line.rsplit("-", 1)
+        if line.startswith(mirror):
+            ver, _, _ = rem.rsplit(".", 2)
+        else:
+            ver, _ = rem.rsplit(".", 1)
+
+        if pname not in allversions:
+            print("# WARNING: no version found for {}".format(pname))
+            continue
+
+        highest = max(allversions[pname][0])
+        if highest > version.parse(ver):
+            line = allversions[pname][1][str(highest)]
+            text = f"{pname.split('/')[-1]}: {ver} -> {str(highest)}"
+            print(f"    Updating {text}")
+            changes[pname] = line
+            changes_text.append(text)
+
+    updated_tarballs.append(line)
+
+if len(changes) == 0:
+    print("No updates found")
+    exit()
+
+print("Updating tarballs.list...")
+
+with open("./tarballs.list", "w") as f:
+    f.writelines(f'{tarball}\n' for tarball in updated_tarballs)
+
+print("Generating updated expr (slow)...")
+
+subprocess.run(["./generate-expr-from-tarballs.pl", "tarballs.list"], check=True)
+
+print("Committing...")
+
+subprocess.run(["git", "add", "default.nix", "tarballs.list"], check=True)
+subprocess.run(["git", "commit", "-mxorg.*: update\n\n%s" % "\n".join(changes_text)], check=True)
diff --git a/pkgs/servers/x11/xorg/xwayland.nix b/pkgs/servers/x11/xorg/xwayland.nix
index a34e1285e307..edf53c8e4579 100644
--- a/pkgs/servers/x11/xorg/xwayland.nix
+++ b/pkgs/servers/x11/xorg/xwayland.nix
@@ -1,8 +1,10 @@
 { egl-wayland
 , libepoxy
 , fetchurl
+, fetchpatch
 , fontutil
 , lib
+, libdecor
 , libei
 , libGL
 , libGLU
@@ -32,6 +34,7 @@
 , pkg-config
 , pixman
 , stdenv
+, systemd
 , wayland
 , wayland-protocols
 , wayland-scanner
@@ -46,13 +49,23 @@
 
 stdenv.mkDerivation rec {
   pname = "xwayland";
-  version = "23.2.6";
+  version = "24.1.0";
 
   src = fetchurl {
     url = "mirror://xorg/individual/xserver/${pname}-${version}.tar.xz";
-    hash = "sha256-HJo2a058ytug+b0xPFnq4S0jvXJUOyKibq+LIINc/G0=";
+    hash = "sha256-vvIcTxiAek7VccTi32CrY7VGa71QLszrJIW4kqt23MI=";
   };
 
+  patches = [
+    # Backport fix for pkg-config generation to make CMake happy
+    # FIXME: remove when merged
+    # Upstream PR: https://gitlab.freedesktop.org/xorg/xserver/-/merge_requests/1543
+    (fetchpatch {
+      url = "https://gitlab.freedesktop.org/xorg/xserver/-/commit/8cb1c21a4240a5b6bf4aeeef51819639b4e0ad24.patch";
+      hash = "sha256-MZPP9QgYO4RFJ/vcjkpu7SVSo5Dh09ZdZjOwTopjdYQ=";
+    })
+  ];
+
   depsBuildBuild = [
     pkg-config
   ];
@@ -64,6 +77,7 @@ stdenv.mkDerivation rec {
   ];
   buildInputs = [
     egl-wayland
+    libdecor
     libepoxy
     libei
     fontutil
@@ -90,6 +104,7 @@ stdenv.mkDerivation rec {
     mesa
     openssl
     pixman
+    systemd
     wayland
     wayland-protocols
     xkbcomp
@@ -100,7 +115,6 @@ stdenv.mkDerivation rec {
     libunwind
   ];
   mesonFlags = [
-    (lib.mesonBool "xwayland_eglstream" true)
     (lib.mesonBool "xcsecurity" true)
     (lib.mesonOption "default_font_path" defaultFontPath)
     (lib.mesonOption "xkb_bin_dir" "${xkbcomp}/bin")
@@ -120,7 +134,7 @@ stdenv.mkDerivation rec {
     homepage = "https://wayland.freedesktop.org/xserver.html";
     license = licenses.mit;
     mainProgram = "Xwayland";
-    maintainers = with maintainers; [ emantor ];
+    maintainers = with maintainers; [ emantor k900 ];
     platforms = platforms.linux;
   };
 }
diff --git a/pkgs/servers/xmpp/prosody/default.nix b/pkgs/servers/xmpp/prosody/default.nix
index 2f237c1f2277..513cd5f1574b 100644
--- a/pkgs/servers/xmpp/prosody/default.nix
+++ b/pkgs/servers/xmpp/prosody/default.nix
@@ -40,8 +40,8 @@ stdenv.mkDerivation rec {
   # version.
   communityModules = fetchhg {
     url = "https://hg.prosody.im/prosody-modules";
-    rev = "b109773ce6fe";
-    hash = "sha256-N1vmShDWtWsHD4b1x7UjX6Sj28iPaDeCLSYeDOLLhzo=";
+    rev = "d3a72777f149";
+    hash = "sha256-qLuhEdvtOMfu78oxLUZKWZDb/AME1+IRnk0jkQNxTU8=";
   };
 
   nativeBuildInputs = [ makeWrapper ];
diff --git a/pkgs/servers/zigbee2mqtt/default.nix b/pkgs/servers/zigbee2mqtt/default.nix
index 19242ddf0c51..8f2fe4ee00ef 100644
--- a/pkgs/servers/zigbee2mqtt/default.nix
+++ b/pkgs/servers/zigbee2mqtt/default.nix
@@ -8,16 +8,16 @@
 
 buildNpmPackage rec {
   pname = "zigbee2mqtt";
-  version = "1.36.1";
+  version = "1.37.1";
 
   src = fetchFromGitHub {
     owner = "Koenkk";
     repo = "zigbee2mqtt";
     rev = version;
-    hash = "sha256-LZ25EWO4cOVnF0bWFKwGfnX7kpzNafp1X6+/JYxn6Ek=";
+    hash = "sha256-rpFx3OveHhurwb08jl0WHf121v0L/r0FQCIpHRJ1V24=";
   };
 
-  npmDepsHash = "sha256-6EorAqPLusWAEfTePn+O+tgZcv3g82mkPs2hSHPRRfo=";
+  npmDepsHash = "sha256-AjCeRU/Ew9UquqGPuJeGRC48kCi9uRZaI5Bam365Wwk=";
 
   buildInputs = [
     systemdMinimal
diff --git a/pkgs/shells/carapace/default.nix b/pkgs/shells/carapace/default.nix
index 20b503433990..8a6d72634f95 100644
--- a/pkgs/shells/carapace/default.nix
+++ b/pkgs/shells/carapace/default.nix
@@ -2,13 +2,13 @@
 
 buildGoModule rec {
   pname = "carapace";
-  version = "1.0.1";
+  version = "1.0.2";
 
   src = fetchFromGitHub {
     owner = "rsteube";
     repo = "${pname}-bin";
     rev = "v${version}";
-    hash = "sha256-pyuehQZVg+f51r/oEH+FIpUUDTCKu4R9DmMaOffRfXA=";
+    hash = "sha256-mwn7oJjVlZli4vhTGui6HCxnjL3Qz8ygejaqvdbZ6co=";
   };
 
   vendorHash = "sha256-HWczvkItE9SVGGQkddnb7/PBkTWrDAdKHjMOztlYV9M=";
@@ -32,7 +32,7 @@ buildGoModule rec {
   meta = with lib; {
     description = "Multi-shell multi-command argument completer";
     homepage = "https://rsteube.github.io/carapace-bin/";
-    maintainers = with maintainers; [ ];
+    maintainers = with maintainers; [ mimame ];
     license = licenses.mit;
     mainProgram = "carapace";
   };
diff --git a/pkgs/shells/fish/plugins/default.nix b/pkgs/shells/fish/plugins/default.nix
index 7b17883c2211..36a5a59e4398 100644
--- a/pkgs/shells/fish/plugins/default.nix
+++ b/pkgs/shells/fish/plugins/default.nix
@@ -36,8 +36,12 @@ lib.makeScope newScope (self: with self; {
 
   github-copilot-cli-fish = callPackage ./github-copilot-cli-fish.nix { };
 
+  git-abbr = callPackage ./git-abbr.nix { };
+
   grc = callPackage ./grc.nix { };
 
+  gruvbox = callPackage ./gruvbox.nix { };
+
   humantime-fish = callPackage ./humantime-fish.nix { };
 
   hydro = callPackage ./hydro.nix { };
diff --git a/pkgs/shells/fish/plugins/git-abbr.nix b/pkgs/shells/fish/plugins/git-abbr.nix
new file mode 100644
index 000000000000..2ec33f6c7976
--- /dev/null
+++ b/pkgs/shells/fish/plugins/git-abbr.nix
@@ -0,0 +1,23 @@
+{
+  lib,
+  buildFishPlugin,
+  fetchFromGitHub,
+}:
+buildFishPlugin rec {
+  pname = "fish-git-abbr";
+  version = "0.2.1-unstable-2023-06-19";
+
+  src = fetchFromGitHub {
+    owner = "lewisacidic";
+    repo = "fish-git-abbr";
+    rev = "dc590a5b9d9d2095f95f7d90608b48e55bea0b0e";
+    hash = "sha256-6z3Wr2t8CP85xVEp6UCYaM2KC9PX4MDyx19f/wjHkb0=";
+  };
+
+  meta = with lib; {
+    description = "Abbreviations for git for the fish shell 🐟";
+    homepage = "https://github.com/lewisacidic/fish-git-abbr";
+    license = licenses.mit;
+    maintainers = with maintainers; [hmajid2301];
+  };
+}
diff --git a/pkgs/shells/fish/plugins/gruvbox.nix b/pkgs/shells/fish/plugins/gruvbox.nix
new file mode 100644
index 000000000000..b4b85ae597b8
--- /dev/null
+++ b/pkgs/shells/fish/plugins/gruvbox.nix
@@ -0,0 +1,17 @@
+{ lib , buildFishPlugin , fetchFromGitHub }:
+buildFishPlugin {
+  pname = "gruvbox";
+  version = "0-unstable-2021-10-12";
+  src = fetchFromGitHub {
+    owner = "jomik";
+    repo = "fish-gruvbox";
+    rev = "80a6f3a7b31beb6f087b0c56cbf3470204759d1c";
+    hash = "sha256-vL2/Nm9Z9cdaptx8sJqbX5AnRtfd68x4ZKWdQk5Cngo=";
+  };
+  meta = {
+    description = "Gruvbox theme for fish shell.";
+    homepage = "https://github.com/Jomik/fish-gruvbox";
+    license = lib.licenses.mit;
+    maintainers = with lib.maintainers; [ msladecek ];
+  };
+}
diff --git a/pkgs/shells/hishtory/default.nix b/pkgs/shells/hishtory/default.nix
index e1b4e5e33274..5bdf3a1b5992 100644
--- a/pkgs/shells/hishtory/default.nix
+++ b/pkgs/shells/hishtory/default.nix
@@ -5,16 +5,16 @@
 
 buildGoModule rec {
   pname = "hishtory";
-  version = "0.292";
+  version = "0.294";
 
   src = fetchFromGitHub {
     owner = "ddworken";
     repo = pname;
     rev = "v${version}";
-    hash = "sha256-jCm/iSPKjQ0RRGw8bXPiKutMk/fM6mQ/Na6j+RrE0b4=";
+    hash = "sha256-vwjzJTBgD4XzZekxGk02WW9/A7wLlLBsIUyvt0VCkOg=";
   };
 
-  vendorHash = "sha256-9ZRhbRxQV9pzFzDhWIjgzQWXFWuzWMdeoNl4YsDuPFc=";
+  vendorHash = "sha256-zTwZ/sMhQdlf7RYfR2/K/m08U1Il0VQmYFyNNiYsWhc=";
 
   ldflags = [ "-X github.com/ddworken/hishtory/client/lib.Version=${version}" ];
 
diff --git a/pkgs/shells/ksh/default.nix b/pkgs/shells/ksh/default.nix
index cfd278aaca65..ae9dba16aedf 100644
--- a/pkgs/shells/ksh/default.nix
+++ b/pkgs/shells/ksh/default.nix
@@ -1,14 +1,23 @@
-{ lib, stdenv, meson, ninja, fetchFromGitHub, which, python3, fetchpatch
-, libiconv }:
-
-stdenv.mkDerivation rec {
+{
+  lib,
+  stdenv,
+  meson,
+  ninja,
+  fetchFromGitHub,
+  which,
+  python3,
+  fetchpatch,
+  libiconv,
+}:
+
+stdenv.mkDerivation (finalAttrs: {
   pname = "ksh";
   version = "2020.0.0";
 
   src = fetchFromGitHub {
-    owner  = "att";
-    repo   = "ast";
-    rev    = version;
+    owner = "att";
+    repo = "ast";
+    rev = finalAttrs.version;
     sha256 = "0cdxz0nhpq03gb9rd76fn0x1yzs2c8q289b7vcxnzlsrz1imz65j";
   };
 
@@ -19,13 +28,18 @@ stdenv.mkDerivation rec {
     })
   ];
 
-  nativeBuildInputs = [ meson ninja which python3 ];
+  nativeBuildInputs = [
+    meson
+    ninja
+    which
+    python3
+  ];
 
   buildInputs = [ libiconv ];
 
   strictDeps = true;
 
-  meta = with lib; {
+  meta = {
     description = "KornShell Command And Programming Language";
     longDescription = ''
       The KornShell language was designed and developed by David G. Korn at
@@ -34,12 +48,12 @@ stdenv.mkDerivation rec {
       many different computers and workstations on which it is implemented.
     '';
     homepage = "https://github.com/att/ast";
-    license = licenses.cpl10;
-    maintainers = with maintainers; [ ];
-    platforms = platforms.all;
+    license = lib.licenses.cpl10;
+    maintainers = with lib.maintainers; [ sigmanificient ];
+    platforms = lib.platforms.all;
   };
 
   passthru = {
     shellPath = "/bin/ksh";
   };
-}
+})
diff --git a/pkgs/shells/nushell/default.nix b/pkgs/shells/nushell/default.nix
index 6a76b5e5d329..dd64a4775a57 100644
--- a/pkgs/shells/nushell/default.nix
+++ b/pkgs/shells/nushell/default.nix
@@ -24,7 +24,7 @@
 }:
 
 let
-  version = "0.92.1";
+  version = "0.93.0";
 in
 
 rustPlatform.buildRustPackage {
@@ -35,10 +35,10 @@ rustPlatform.buildRustPackage {
     owner = "nushell";
     repo = "nushell";
     rev = version;
-    hash = "sha256-itr/n8fodi9EvED6j4UMGFUaF42UVhgkGws8A5JqBA8=";
+    hash = "sha256-s/aJVk+45Ietegb9Cn19/U3NlNMHQh2GezHkoIRxRrk=";
   };
 
-  cargoHash = "sha256-s2O/6g3+fAkiqZwq3PUDpaFtG+uj/3pSs3eZbCbAcuQ=";
+  cargoHash = "sha256-0xwo3M5uog6v0VcT9IhNZ22/xIhUShVNt6Vkp3GpsNI=";
 
   nativeBuildInputs = [ pkg-config ]
     ++ lib.optionals (withDefaultFeatures && stdenv.isLinux) [ python3 ]
diff --git a/pkgs/shells/nushell/nu_scripts/default.nix b/pkgs/shells/nushell/nu_scripts/default.nix
index dc36f5296813..ebb4169e3410 100644
--- a/pkgs/shells/nushell/nu_scripts/default.nix
+++ b/pkgs/shells/nushell/nu_scripts/default.nix
@@ -6,13 +6,13 @@
 
 stdenvNoCC.mkDerivation rec {
   pname = "nu_scripts";
-  version = "unstable-2024-03-20";
+  version = "0-unstable-2024-05-15";
 
   src = fetchFromGitHub {
     owner = "nushell";
     repo = pname;
-    rev = "707cda345078553f3e878a100ca103a28f440705";
-    hash = "sha256-pgihFkuPIjFTLYtVKaXA+NPUfs/8TpWoojpGyi5TLhY=";
+    rev = "8a77d51e9327cfb4da902f8beb4062f2d42184b8";
+    hash = "sha256-3nqi5ffBAMcP80Nzp2nepoMGad/Tjaxnj7cbGcDA8b0=";
   };
 
   installPhase = ''
diff --git a/pkgs/shells/nushell/plugins/formats.nix b/pkgs/shells/nushell/plugins/formats.nix
index d52fb69dcec3..7cca0840f47a 100644
--- a/pkgs/shells/nushell/plugins/formats.nix
+++ b/pkgs/shells/nushell/plugins/formats.nix
@@ -11,7 +11,7 @@
 rustPlatform.buildRustPackage rec {
   pname = "nushell_plugin_formats";
   inherit (nushell) version src;
-  cargoHash = "sha256-mInMs0kAJn3/fgRAG0E8hgvaly2G68kT5O+D83pLq78=";
+  cargoHash = "sha256-+DTsBh3+nLjuwuk0rnxZeSQ+lM55PAhj+8e9L2bQdXU=";
 
   nativeBuildInputs = [ pkg-config ]
     ++ lib.optionals stdenv.cc.isClang [ rustPlatform.bindgenHook ];
diff --git a/pkgs/shells/nushell/plugins/gstat.nix b/pkgs/shells/nushell/plugins/gstat.nix
index 4f3e7f395d15..b05a000d5785 100644
--- a/pkgs/shells/nushell/plugins/gstat.nix
+++ b/pkgs/shells/nushell/plugins/gstat.nix
@@ -11,7 +11,7 @@
 rustPlatform.buildRustPackage rec {
   pname = "nushell_plugin_gstat";
   inherit (nushell) version src;
-  cargoHash = "sha256-1HfuMtjtUzwsIxkYV8azttnjEyAnC7X1aMIdw2N0yxQ=";
+  cargoHash = "sha256-0pzQrUKMfYZdUzJgm6WYIrTUkF2arYGDCuASgmDpvmc=";
 
   nativeBuildInputs = [ pkg-config ]
     ++ lib.optionals stdenv.cc.isClang [ rustPlatform.bindgenHook ];
diff --git a/pkgs/shells/nushell/plugins/net.nix b/pkgs/shells/nushell/plugins/net.nix
index a4a2d049b9b5..23729360e83a 100644
--- a/pkgs/shells/nushell/plugins/net.nix
+++ b/pkgs/shells/nushell/plugins/net.nix
@@ -9,7 +9,7 @@
 
 rustPlatform.buildRustPackage {
   pname = "nu-plugin-net";
-  version = "unstable-2024-04-05";
+  version = "0-unstable-2024-04-05";
 
   src = fetchFromGitHub {
     owner = "fennewald";
@@ -18,7 +18,7 @@ rustPlatform.buildRustPackage {
     hash = "sha256-uKLYTRR2tThSvwWbvEePOLZ9ehNPfCYruZxTKSIxpEA=";
   };
 
-  cargoHash = "sha256-2A9RalZhXigLq/6w738G6PnkV3FyK+3HHXPDQRHTIm0=";
+  cargoHash = "sha256-BsCOej31vfTf+Wca4+AjxkhXz6wpMRFJmGBsUqOj2U0=";
 
   nativeBuildInputs = [
     rustPlatform.bindgenHook
diff --git a/pkgs/shells/nushell/plugins/query.nix b/pkgs/shells/nushell/plugins/query.nix
index ed1e8c038e9d..b20af7bbd3b8 100644
--- a/pkgs/shells/nushell/plugins/query.nix
+++ b/pkgs/shells/nushell/plugins/query.nix
@@ -10,7 +10,7 @@
 rustPlatform.buildRustPackage {
   pname = "nushell_plugin_query";
   inherit (nushell) version src;
-  cargoHash = "sha256-takIDfMriDzZT/9JkqWPis10EaZhfwGpi7EkoOh4+vw=";
+  cargoHash = "sha256-cu7gSEr5xOpBpkv++YpOMUf/UtvFYuQMDWrGphb6V/0=";
 
   nativeBuildInputs = lib.optionals stdenv.cc.isClang [ rustPlatform.bindgenHook ];
   buildInputs = lib.optionals stdenv.isDarwin [ IOKit CoreFoundation ];
diff --git a/pkgs/shells/rc-9front/default.nix b/pkgs/shells/rc-9front/default.nix
index a7d2f1e54e3e..ff265dbec871 100644
--- a/pkgs/shells/rc-9front/default.nix
+++ b/pkgs/shells/rc-9front/default.nix
@@ -8,7 +8,7 @@
 
 stdenv.mkDerivation {
   pname = "rc-9front";
-  version = "unstable-2022-11-01";
+  version = "0-unstable-2022-11-01";
 
   src = fetchFrom9Front {
     domain = "shithub.us";
diff --git a/pkgs/shells/zsh/oh-my-zsh/default.nix b/pkgs/shells/zsh/oh-my-zsh/default.nix
index 09fe271892db..1820e370a892 100644
--- a/pkgs/shells/zsh/oh-my-zsh/default.nix
+++ b/pkgs/shells/zsh/oh-my-zsh/default.nix
@@ -5,14 +5,14 @@
 , git, nix, nixfmt-classic, jq, coreutils, gnused, curl, cacert, bash }:
 
 stdenv.mkDerivation rec {
-  version = "2024-04-25";
+  version = "2024-05-03";
   pname = "oh-my-zsh";
 
   src = fetchFromGitHub {
     owner = "ohmyzsh";
     repo = "ohmyzsh";
-    rev = "803e1a784cd520f101d126b47deea3297e6a82fc";
-    sha256 = "sha256-spfi3Jdd9yjZ+1l4uz6QX7HF996VvbHwgtlTaHSrAXM=";
+    rev = "668ca3a32dae5ff5d164fc3be565f1e2ece248db";
+    sha256 = "sha256-Rpqfwfs2MxNtSI5rX7XNx0oXExDgf7RAGR7nN8JAayY=";
   };
 
   strictDeps = true;
diff --git a/pkgs/shells/zsh/zsh-abbr/default.nix b/pkgs/shells/zsh/zsh-abbr/default.nix
index 668637ef1cc6..e44fa4a71a97 100644
--- a/pkgs/shells/zsh/zsh-abbr/default.nix
+++ b/pkgs/shells/zsh/zsh-abbr/default.nix
@@ -5,13 +5,13 @@
 }:
 stdenv.mkDerivation rec {
   pname = "zsh-abbr";
-  version = "5.4.1";
+  version = "5.6.0";
 
   src = fetchFromGitHub {
     owner = "olets";
     repo = "zsh-abbr";
     rev = "v${version}";
-    hash = "sha256-gEBGMVR1lMVKNPVuPjtdPkgOXI1MWO0EAtk7JRmS0Ok=";
+    hash = "sha256-FcT1gk11a3nluP0sFMa5LoF7oT/MO4B1GdqdTdFxsLQ=";
   };
 
   strictDeps = true;
diff --git a/pkgs/shells/zsh/zsh-fzf-tab/default.nix b/pkgs/shells/zsh/zsh-fzf-tab/default.nix
index dcb3ffd19ec7..1b96c5224d0e 100644
--- a/pkgs/shells/zsh/zsh-fzf-tab/default.nix
+++ b/pkgs/shells/zsh/zsh-fzf-tab/default.nix
@@ -4,13 +4,13 @@ let
   INSTALL_PATH="${placeholder "out"}/share/fzf-tab";
 in stdenv.mkDerivation rec {
   pname = "zsh-fzf-tab";
-  version = "1.1.1";
+  version = "1.1.2";
 
   src = fetchFromGitHub {
     owner = "Aloxaf";
     repo = "fzf-tab";
     rev = "v${version}";
-    hash = "sha256-0/YOL1/G2SWncbLNaclSYUz7VyfWu+OB8TYJYm4NYkM=";
+    hash = "sha256-Qv8zAiMtrr67CbLRrFjGaPzFZcOiMVEFLg1Z+N6VMhg=";
   };
 
   strictDeps = true;
@@ -81,11 +81,11 @@ in stdenv.mkDerivation rec {
 
   passthru.updateScript = nix-update-script { };
 
-  meta = with lib; {
+  meta = {
     homepage = "https://github.com/Aloxaf/fzf-tab";
     description = "Replace zsh's default completion selection menu with fzf!";
-    license = licenses.mit;
-    maintainers = with maintainers; [ vonfry ];
-    platforms = platforms.unix;
+    license = lib.licenses.mit;
+    maintainers = with lib.maintainers; [ vonfry ];
+    platforms = lib.platforms.unix;
   };
 }
diff --git a/pkgs/shells/zsh/zsh-prezto/default.nix b/pkgs/shells/zsh/zsh-prezto/default.nix
index 61b51a252fb6..e311bea156f1 100644
--- a/pkgs/shells/zsh/zsh-prezto/default.nix
+++ b/pkgs/shells/zsh/zsh-prezto/default.nix
@@ -2,7 +2,7 @@
 
 stdenv.mkDerivation rec {
   pname = "zsh-prezto";
-  version = "unstable-2024-04-15";
+  version = "0-unstable-2024-04-15";
 
   src = fetchFromGitHub {
     owner = "sorin-ionescu";
diff --git a/pkgs/shells/zsh/zsh-you-should-use/default.nix b/pkgs/shells/zsh/zsh-you-should-use/default.nix
index b3db825bbba6..be89f60d8927 100644
--- a/pkgs/shells/zsh/zsh-you-should-use/default.nix
+++ b/pkgs/shells/zsh/zsh-you-should-use/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "zsh-you-should-use";
-  version = "1.7.3";
+  version = "1.7.4";
 
   src = fetchFromGitHub {
     owner = "MichaelAquilina";
     repo = pname;
     rev = version;
-    sha256 = "1dz48rd66priqhxx7byndqhbmlwxi1nfw8ik25k0z5k7k754brgy";
+    sha256 = "sha256-Jl3wZa/WIA+GtkUiCn0vKfd6N/GitOavwZ+uqfmzdps=";
   };
 
   strictDeps = true;
diff --git a/pkgs/stdenv/darwin/default.nix b/pkgs/stdenv/darwin/default.nix
index 3ab2382d0198..45cc6742c720 100644
--- a/pkgs/stdenv/darwin/default.nix
+++ b/pkgs/stdenv/darwin/default.nix
@@ -428,6 +428,9 @@ in
       # Disable tests because they use dejagnu, which fails to run.
       libffi = super.libffi.override { doCheck = false; };
 
+      # Use libconvReal to break an infinite recursion. It will be dropped in the next stage.
+      libiconv = super.libiconvReal;
+
       # Avoid pulling in a full python and its extra dependencies for the llvm/clang builds.
       libxml2 = super.libxml2.override { pythonSupport = false; };
 
@@ -539,7 +542,7 @@ in
       inherit (prevStage) ccWrapperStdenv
         autoconf automake bash binutils binutils-unwrapped bison brotli cmake cmakeMinimal
         coreutils cpio cyrus_sasl db ed expat flex gettext gmp gnugrep groff icu
-        libedit libffi libiconv libidn2 libkrb5 libssh2 libtool libunistring libxml2 m4
+        libedit libffi libidn2 libkrb5 libssh2 libtool libunistring libxml2 m4
         ncurses nghttp2 ninja openldap openssh openssl patchutils pbzx perl pkg-config
         python3Minimal scons sed serf sharutils sqlite subversion texinfo unzip which xz
         zlib zstd;
@@ -614,8 +617,8 @@ in
     assert lib.all isFromBootstrapFiles (with prevStage; [ coreutils gnugrep ]);
 
     assert lib.all isBuiltByBootstrapFilesCompiler (with prevStage; [
-      autoconf automake bash binutils-unwrapped bison brotli cmake cpio cyrus_sasl db
-      ed expat flex gettext gmp groff icu libedit libffi libiconv libidn2 libkrb5 libssh2
+      atf autoconf automake bash binutils-unwrapped bison brotli cmake cpio cyrus_sasl db
+      ed expat flex gettext gmp groff icu kyua libedit libffi libiconv libidn2 libkrb5 libssh2
       libtool libunistring libxml2 m4 ncurses nghttp2 ninja openldap openssh openssl
       patchutils pbzx perl pkg-config.pkg-config python3 python3Minimal scons serf sqlite
       subversion sysctl.provider texinfo unzip which xz zlib zstd
@@ -641,8 +644,8 @@ in
 
     overrides = self: super: {
       inherit (prevStage) ccWrapperStdenv
-        autoconf automake bash binutils binutils-unwrapped bison brotli cmake cmakeMinimal
-        cpio cyrus_sasl db ed expat flex gettext gmp groff icu libedit libffi libiconv
+        atf autoconf automake bash binutils binutils-unwrapped bison brotli cmake cmakeMinimal
+        cpio cyrus_sasl db ed expat flex gettext gmp groff icu kyua libedit libffi libiconv
         libidn2 libkrb5 libssh2 libtool libunistring libxml2 m4 ncurses nghttp2 ninja
         openldap openssh openssl patchutils pbzx perl pkg-config python3 python3Minimal
         scons sed serf sharutils sqlite subversion sysctl texinfo unzip which xz zlib zstd;
@@ -703,8 +706,8 @@ in
   (prevStage:
     # previous stage-xclang stdenv:
     assert lib.all isBuiltByBootstrapFilesCompiler (with prevStage; [
-      autoconf automake bash binutils-unwrapped bison cmake cmakeMinimal coreutils cpio
-      cyrus_sasl db ed expat flex gettext gmp gnugrep groff icu libedit libtool m4 ninja
+      atf autoconf automake bash binutils-unwrapped bison cmake cmakeMinimal coreutils cpio
+      cyrus_sasl db ed expat flex gettext gmp gnugrep groff icu kyua libedit libtool m4 ninja
       openbsm openldap openpam openssh patchutils pbzx perl pkg-config.pkg-config python3
       python3Minimal scons serf sqlite subversion sysctl.provider texinfo unzip which xz
     ]);
@@ -737,8 +740,8 @@ in
 
     overrides = self: super: {
       inherit (prevStage) ccWrapperStdenv
-        autoconf automake binutils-unwrapped bison brotli cmake cmakeMinimal coreutils
-        cpio cyrus_sasl db ed expat flex gettext gmp gnugrep groff icu libedit libffi
+        atf autoconf automake binutils-unwrapped bison brotli cmake cmakeMinimal coreutils
+        cpio cyrus_sasl db ed expat flex gettext gmp gnugrep groff icu kyua libedit libffi
         libiconv libidn2 libkrb5 libssh2 libtool libunistring libxml2 m4 ncurses nghttp2
         ninja openbsm openldap openpam openssh openssl patchutils pbzx perl pkg-config
         python3 python3Minimal scons serf sqlite subversion sysctl texinfo unzip which xz
@@ -804,8 +807,8 @@ in
   (prevStage:
     # previous stage2-Libsystem stdenv:
     assert lib.all isBuiltByBootstrapFilesCompiler (with prevStage; [
-      autoconf automake binutils-unwrapped bison brotli cmake cmakeMinimal coreutils
-      cpio cyrus_sasl db ed expat flex gettext gmp gnugrep groff icu libedit libidn2
+      atf autoconf automake binutils-unwrapped bison brotli cmake cmakeMinimal coreutils
+      cpio cyrus_sasl db ed expat flex gettext gmp gnugrep groff icu kyua libedit libidn2
       libkrb5 libssh2 libtool libunistring m4 nghttp2 ninja openbsm openldap openpam openssh
       openssl patchutils pbzx perl pkg-config.pkg-config python3 python3Minimal scons serf
       sqlite subversion sysctl.provider texinfo unzip which xz zstd
@@ -841,8 +844,8 @@ in
 
     overrides = self: super: {
       inherit (prevStage) ccWrapperStdenv
-        autoconf automake bash bison brotli cmake cmakeMinimal coreutils cpio
-        cyrus_sasl db ed expat flex gettext gmp gnugrep groff libedit libidn2 libkrb5
+        atf autoconf automake bash bison brotli cmake cmakeMinimal coreutils cpio
+        cyrus_sasl db ed expat flex gettext gmp gnugrep groff kyua libedit libidn2 libkrb5
         libssh2 libtool libunistring m4 ncurses nghttp2 ninja openbsm openldap openpam
         openssh openssl patchutils pbzx perl pkg-config python3 python3Minimal scons serf
         sqlite subversion sysctl texinfo unzip which xz zstd;
@@ -870,7 +873,7 @@ in
       llvmPackages = super.llvmPackages // (
         let
           tools = super.llvmPackages.tools.extend (_: _: {
-            inherit (prevStage.llvmPackages) clang-unwrapped clangNoCompilerRtWithLibc libclang libllvm llvm;
+            inherit (prevStage.llvmPackages) clang-unwrapped clangNoCompilerRtWithLibc libclang lld libllvm llvm;
             clang = prevStage.stdenv.cc;
           });
 
@@ -969,7 +972,7 @@ in
         sed serf sharutils sqlite subversion sysctl texinfo unzip which xz zstd
 
         # CF dependencies - don’t rebuild them.
-        icu libiconv libxml2 zlib;
+        icu libiconv libiconv-darwin libxml2 zlib;
 
       # Disable tests because they use dejagnu, which fails to run.
       libffi = super.libffi.override { doCheck = false; };
@@ -1054,7 +1057,7 @@ in
         icu
 
         # LLVM dependencies - don’t rebuild them.
-        libffi libiconv libxml2 ncurses zlib;
+        libffi libiconv libiconv-darwin libxml2 ncurses zlib;
 
       darwin = super.darwin.overrideScope (selfDarwin: superDarwin: {
         inherit (prevStage.darwin) dyld CF Libsystem darwin-stubs
@@ -1325,9 +1328,9 @@ in
       overrides = self: super: {
         inherit (prevStage)
           bash binutils brotli bzip2 coreutils cpio diffutils ed file findutils gawk
-          gettext gmp gnugrep gnumake gnused gnutar gzip icu libffi libiconv libidn2 libssh2
-          libunistring libxml2 libyaml ncurses nghttp2 openbsm openpam openssl patch pbzx
-          pcre python3Minimal xar xz zlib zstd;
+          gettext gmp gnugrep gnumake gnused gnutar gzip icu libffi libiconv libiconv-darwin
+          libidn2 libssh2 libunistring libxml2 libyaml ncurses nghttp2 openbsm openpam
+          openssl patch pbzx pcre python3Minimal xar xz zlib zstd;
 
         darwin = super.darwin.overrideScope (_: superDarwin: {
           inherit (prevStage.darwin)
diff --git a/pkgs/stdenv/generic/make-derivation.nix b/pkgs/stdenv/generic/make-derivation.nix
index 1214d0101383..af68bf890ed2 100644
--- a/pkgs/stdenv/generic/make-derivation.nix
+++ b/pkgs/stdenv/generic/make-derivation.nix
@@ -413,25 +413,28 @@ else let
       requiredSystemFeatures = attrs.requiredSystemFeatures or [] ++ [ "gccarch-${stdenv.hostPlatform.gcc.arch}" ];
     } // optionalAttrs (stdenv.buildPlatform.isDarwin) (
       let
+        allDependencies = concatLists (concatLists dependencies);
+        allPropagatedDependencies = concatLists (concatLists propagatedDependencies);
+
         computedSandboxProfile =
           concatMap (input: input.__propagatedSandboxProfile or [])
             (stdenv.extraNativeBuildInputs
             ++ stdenv.extraBuildInputs
-            ++ concatLists dependencies);
+            ++ allDependencies);
 
         computedPropagatedSandboxProfile =
           concatMap (input: input.__propagatedSandboxProfile or [])
-            (concatLists propagatedDependencies);
+            allPropagatedDependencies;
 
         computedImpureHostDeps =
           unique (concatMap (input: input.__propagatedImpureHostDeps or [])
             (stdenv.extraNativeBuildInputs
             ++ stdenv.extraBuildInputs
-            ++ concatLists dependencies));
+            ++ allDependencies));
 
         computedPropagatedImpureHostDeps =
           unique (concatMap (input: input.__propagatedImpureHostDeps or [])
-            (concatLists propagatedDependencies));
+            allPropagatedDependencies);
     in {
       inherit __darwinAllowLocalNetworking;
       # TODO: remove `unique` once nix has a list canonicalization primitive
diff --git a/pkgs/test/cuda/default.nix b/pkgs/test/cuda/default.nix
index dd9ad8b814dc..b463da7c55c5 100644
--- a/pkgs/test/cuda/default.nix
+++ b/pkgs/test/cuda/default.nix
@@ -3,7 +3,6 @@
   recurseIntoAttrs,
 
   cudaPackages,
-  cudaPackagesGoogle,
 
   cudaPackages_10_0,
   cudaPackages_10_1,
diff --git a/pkgs/tools/X11/arandr/default.nix b/pkgs/tools/X11/arandr/default.nix
index 2535f467771c..996a5888e836 100644
--- a/pkgs/tools/X11/arandr/default.nix
+++ b/pkgs/tools/X11/arandr/default.nix
@@ -4,7 +4,7 @@
 , gobject-introspection
 , gsettings-desktop-schemas
 , gtk3
-, wrapGAppsHook
+, wrapGAppsHook3
 , xrandr
 }:
 
@@ -28,7 +28,7 @@ buildPythonApplication rec {
   doCheck = false;
 
   buildInputs = [ docutils gsettings-desktop-schemas gtk3 ];
-  nativeBuildInputs = [ gobject-introspection wrapGAppsHook ];
+  nativeBuildInputs = [ gobject-introspection wrapGAppsHook3 ];
   propagatedBuildInputs = [ xrandr pygobject3 ];
 
   meta = with lib; {
diff --git a/pkgs/tools/X11/caffeine-ng/default.nix b/pkgs/tools/X11/caffeine-ng/default.nix
index 90292e8beda9..480f4b6e36e9 100644
--- a/pkgs/tools/X11/caffeine-ng/default.nix
+++ b/pkgs/tools/X11/caffeine-ng/default.nix
@@ -13,7 +13,7 @@
 , xautolock
 , xscreensaver
 , xfce
-, wrapGAppsHook
+, wrapGAppsHook3
 }:
 
 python3Packages.buildPythonApplication rec {
@@ -29,7 +29,7 @@ python3Packages.buildPythonApplication rec {
     sha256 = "sha256-uYzLRZ+6ZgIwhSuJWRBpLYHgonX7sFXgUZid0V26V0Q=";
   };
 
-  nativeBuildInputs = [ gobject-introspection meson ninja pkg-config wrapGAppsHook ];
+  nativeBuildInputs = [ gobject-introspection meson ninja pkg-config wrapGAppsHook3 ];
 
   buildInputs = [
     libayatana-appindicator
diff --git a/pkgs/tools/X11/dispad/default.nix b/pkgs/tools/X11/dispad/default.nix
index 11d46bf24cb6..eb0706ab97aa 100644
--- a/pkgs/tools/X11/dispad/default.nix
+++ b/pkgs/tools/X11/dispad/default.nix
@@ -16,7 +16,7 @@ stdenv.mkDerivation rec {
   meta = with lib; {
     description = "A small daemon for disabling trackpads while typing";
     homepage = "https://github.com/BlueDragonX/dispad";
-    license = licenses.gpl2;
+    license = licenses.gpl2Plus;
     maintainers = with maintainers; [ zimbatm ];
     platforms = platforms.linux;
     mainProgram = "dispad";
diff --git a/pkgs/tools/X11/imwheel/default.nix b/pkgs/tools/X11/imwheel/default.nix
index bab363583a6c..9e3afb37d4f9 100644
--- a/pkgs/tools/X11/imwheel/default.nix
+++ b/pkgs/tools/X11/imwheel/default.nix
@@ -26,7 +26,7 @@ stdenv.mkDerivation rec {
     description = "Mouse wheel configuration tool for XFree86/Xorg";
     maintainers = with maintainers; [ jhillyerd ];
     platforms = platforms.linux;
-    license = licenses.gpl2;
+    license = licenses.gpl2Only;
     mainProgram = "imwheel";
   };
 }
diff --git a/pkgs/tools/X11/nitrogen/default.nix b/pkgs/tools/X11/nitrogen/default.nix
index 6097948a7cd3..bcdf84db7d56 100644
--- a/pkgs/tools/X11/nitrogen/default.nix
+++ b/pkgs/tools/X11/nitrogen/default.nix
@@ -26,7 +26,7 @@ stdenv.mkDerivation rec {
       and settings are stored in a human-readable config file.
     '';
     homepage = "https://github.com/l3ib/nitrogen";
-    license = lib.licenses.gpl2;
+    license = lib.licenses.gpl2Plus;
     platforms = lib.platforms.linux;
     maintainers = [ lib.maintainers.auntie ];
     mainProgram = "nitrogen";
diff --git a/pkgs/tools/X11/nx-libs/default.nix b/pkgs/tools/X11/nx-libs/default.nix
index c62cba2e2364..3cfeb32272d5 100644
--- a/pkgs/tools/X11/nx-libs/default.nix
+++ b/pkgs/tools/X11/nx-libs/default.nix
@@ -56,7 +56,7 @@ stdenv.mkDerivation rec {
   meta = {
     description = "NX X server based on Xnest";
     homepage = "https://github.com/ArcticaProject/nx-libs";
-    license = lib.licenses.gpl2;
+    license = lib.licenses.gpl2Only;
     maintainers = with lib.maintainers; [ ];
     platforms = lib.platforms.linux;
   };
diff --git a/pkgs/tools/X11/obconf/default.nix b/pkgs/tools/X11/obconf/default.nix
index f4f9fd433fde..02fe2663b002 100644
--- a/pkgs/tools/X11/obconf/default.nix
+++ b/pkgs/tools/X11/obconf/default.nix
@@ -3,7 +3,7 @@
 , fetchgit
 , autoreconfHook
 , pkg-config
-, wrapGAppsHook
+, wrapGAppsHook3
 , gtk3
 , imlib2
 , libSM
@@ -25,7 +25,7 @@ stdenv.mkDerivation rec {
   nativeBuildInputs = [
     autoreconfHook
     pkg-config
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
diff --git a/pkgs/tools/X11/opentabletdriver/default.nix b/pkgs/tools/X11/opentabletdriver/default.nix
index 9f39fb7fb5c0..702b4aa67930 100644
--- a/pkgs/tools/X11/opentabletdriver/default.nix
+++ b/pkgs/tools/X11/opentabletdriver/default.nix
@@ -11,7 +11,7 @@
 , copyDesktopItems
 , makeDesktopItem
 , nixosTests
-, wrapGAppsHook
+, wrapGAppsHook3
 , jq
 , coreutils
 }:
@@ -40,7 +40,7 @@ buildDotnetModule rec {
 
   nativeBuildInputs = [
     copyDesktopItems
-    wrapGAppsHook
+    wrapGAppsHook3
     # Dependency of generate-rules.sh
     jq
   ];
diff --git a/pkgs/tools/X11/sbs/default.nix b/pkgs/tools/X11/sbs/default.nix
index 8f16729cd256..cddf508ead02 100644
--- a/pkgs/tools/X11/sbs/default.nix
+++ b/pkgs/tools/X11/sbs/default.nix
@@ -20,7 +20,7 @@ stdenv.mkDerivation rec {
   meta = with lib; {
     description = "Simple background setter with 200 lines of code";
     homepage = "https://github.com/onur-ozkan/sbs";
-    license = licenses.gpl2;
+    license = licenses.gpl2Only;
     platforms = platforms.linux;
     maintainers = with maintainers; [ onur-ozkan ];
     mainProgram = "sbs";
diff --git a/pkgs/tools/X11/wmctrl/default.nix b/pkgs/tools/X11/wmctrl/default.nix
index 08a3e9c365f4..b15b1eb6b425 100644
--- a/pkgs/tools/X11/wmctrl/default.nix
+++ b/pkgs/tools/X11/wmctrl/default.nix
@@ -27,7 +27,7 @@ stdenv.mkDerivation rec {
   meta = {
     homepage = "https://sites.google.com/site/tstyblo/wmctrl";
     description = "CLI tool to interact with EWMH/NetWM compatible X Window Managers";
-    license = lib.licenses.gpl2;
+    license = lib.licenses.gpl2Plus;
     platforms = with lib.platforms; all;
     maintainers = [ lib.maintainers.Anton-Latukha ];
     mainProgram = "wmctrl";
diff --git a/pkgs/tools/X11/wpgtk/default.nix b/pkgs/tools/X11/wpgtk/default.nix
index 371642cbfa7e..bbc0e75d8811 100644
--- a/pkgs/tools/X11/wpgtk/default.nix
+++ b/pkgs/tools/X11/wpgtk/default.nix
@@ -1,5 +1,5 @@
 { lib, python3Packages, fetchFromGitHub, libxslt,
-  gobject-introspection, gtk3, wrapGAppsHook, gnome }:
+  gobject-introspection, gtk3, wrapGAppsHook3, gnome }:
 
 python3Packages.buildPythonApplication rec {
   pname = "wpgtk";
@@ -17,7 +17,7 @@ python3Packages.buildPythonApplication rec {
   ];
 
   buildInputs = [
-    wrapGAppsHook
+    wrapGAppsHook3
     gtk3
     gnome.adwaita-icon-theme
     libxslt
diff --git a/pkgs/tools/X11/x11vnc/default.nix b/pkgs/tools/X11/x11vnc/default.nix
index 8c48951b2d42..b07f9d4518ff 100644
--- a/pkgs/tools/X11/x11vnc/default.nix
+++ b/pkgs/tools/X11/x11vnc/default.nix
@@ -55,7 +55,7 @@ stdenv.mkDerivation rec {
     description = "A VNC server connected to a real X11 screen";
     homepage = "https://github.com/LibVNC/x11vnc/";
     platforms = platforms.linux;
-    license = licenses.gpl2;
+    license = licenses.gpl2Plus;
     maintainers = with maintainers; [ OPNA2608 ];
     mainProgram = "x11vnc";
   };
diff --git a/pkgs/tools/X11/x2vnc/default.nix b/pkgs/tools/X11/x2vnc/default.nix
index 8c9648e71d37..bb8525d30916 100644
--- a/pkgs/tools/X11/x2vnc/default.nix
+++ b/pkgs/tools/X11/x2vnc/default.nix
@@ -19,7 +19,7 @@ stdenv.mkDerivation rec {
     homepage = "http://fredrik.hubbe.net/x2vnc.html";
     description = "A program to control a remote VNC server";
     platforms = platforms.unix;
-    license = licenses.gpl2;
+    license = licenses.gpl2Plus;
     mainProgram = "x2vnc";
   };
 }
diff --git a/pkgs/tools/X11/xborders/default.nix b/pkgs/tools/X11/xborders/default.nix
index 379f976acf45..a9fa6318dffb 100644
--- a/pkgs/tools/X11/xborders/default.nix
+++ b/pkgs/tools/X11/xborders/default.nix
@@ -4,7 +4,7 @@
 , libwnck
 , gtk3
 , libnotify
-, wrapGAppsHook
+, wrapGAppsHook3
 , gobject-introspection
 , substituteAll
 }:
@@ -27,7 +27,7 @@ python3Packages.buildPythonPackage rec {
   ];
 
   nativeBuildInputs = [
-    wrapGAppsHook
+    wrapGAppsHook3
     gobject-introspection
   ];
 
diff --git a/pkgs/tools/X11/xcalib/default.nix b/pkgs/tools/X11/xcalib/default.nix
index 4960aff0f7b0..64aadb7bb3c7 100644
--- a/pkgs/tools/X11/xcalib/default.nix
+++ b/pkgs/tools/X11/xcalib/default.nix
@@ -21,7 +21,7 @@ stdenv.mkDerivation rec {
   meta = with lib; {
     inherit (src.meta) homepage;
     description = "A tiny monitor calibration loader for X and MS-Windows";
-    license = licenses.gpl2;
+    license = licenses.gpl2Plus;
     maintainers = [];
     platforms = platforms.linux;
     mainProgram = "xcalib";
diff --git a/pkgs/tools/X11/xdg-utils/default.nix b/pkgs/tools/X11/xdg-utils/default.nix
index 03965a5c0557..10604d4acfa0 100644
--- a/pkgs/tools/X11/xdg-utils/default.nix
+++ b/pkgs/tools/X11/xdg-utils/default.nix
@@ -1,8 +1,9 @@
-{ lib, stdenv, fetchFromGitLab, fetchFromGitHub, writeText
+{ lib, stdenv, fetchurl, fetchFromGitLab, fetchFromGitHub, runCommand, writeText
 # docs deps
 , libxslt, docbook_xml_dtd_412, docbook_xml_dtd_43, docbook_xsl, xmlto
 # runtime deps
 , resholve, bash, coreutils, dbus, file, gawk, glib, gnugrep, gnused, jq, nettools, procmail, procps, which, xdg-user-dirs
+, shared-mime-info
 , perl, perlPackages
 , mimiSupport ? false
 , withXdgOpenUsePortalPatch ? true }:
@@ -121,6 +122,7 @@ let
         "$KTRADER" = true;
       };
       prologue = "${writeText "xdg-mime-prologue" ''
+        export XDG_DATA_DIRS="$XDG_DATA_DIRS''${XDG_DATA_DIRS:+:}${shared-mime-info}/share"
         export PERL5LIB=${with perlPackages; makePerlPath [ FileMimeInfo ]}
         export PATH=$PATH:${lib.makeBinPath [ coreutils perlPackages.FileMimeInfo ]}
       ''}";
@@ -237,7 +239,7 @@ let
   ];
 in
 
-stdenv.mkDerivation rec {
+stdenv.mkDerivation (self: {
   pname = "xdg-utils";
   version = "1.2.1";
 
@@ -245,7 +247,7 @@ stdenv.mkDerivation rec {
     domain = "gitlab.freedesktop.org";
     owner = "xdg";
     repo = "xdg-utils";
-    rev = "v${version}";
+    rev = "v${self.version}";
     hash = "sha256-58ElbrVlk+13DUODSEHBPcDDt9H+Kuee8Rz9CIcoy0I=";
   };
 
@@ -269,11 +271,39 @@ stdenv.mkDerivation rec {
 
   preFixup = lib.concatStringsSep "\n" (map (resholve.phraseSolution "xdg-utils-resholved") solutions);
 
+  passthru.tests.xdg-mime = runCommand "xdg-mime-test" {
+    nativeBuildInputs = [ self.finalPackage ];
+    preferLocalBuild = true;
+    xenias = lib.mapAttrsToList (hash: urls: fetchurl { inherit hash urls; }) {
+      "sha256-SL95tM1AjOi7vDnCyT10s0tvQvc+ZSZBbkNOYXfbOy0=" = [
+        "https://staging.cohostcdn.org/attachment/0f5d9832-0cda-4d07-b35f-832b287feb6c/kernelkisser.png"
+        "https://static1.e621.net/data/0e/76/0e7672980d48e48c2d1373eb2505db5a.png"
+      ];
+      "sha256-Si9AtB7J9o6rK/oftv+saST77CNaeWomWU5ECfbRioM=" = [
+        "https://static1.e621.net/data/25/3d/253dc77fbc60d7214bc60e4a647d1c32.jpg"
+      ];
+      "sha256-Z+onQRY5zlDWPp5/y4E6crLz3TaMCNipcxEEMSHuLkM=" = [
+        "https://d.furaffinity.net/art/neotheta/1691409857/1691409857.neotheta_quickmakeanentry_by_neotheta-sig.png"
+        "https://static1.e621.net/data/bf/e4/bfe43ba264ad68e5d8a101ecef69c03e.png"
+      ];
+    };
+  } ''
+    for x in $xenias; do
+      ext=''${x##*.}
+      type="$(xdg-mime query filetype $x)"
+      [ $? -eq 0 ] && [ "$type" = "image/''${ext/jpg/jpeg}" ] || {
+        echo "Incorrect MIME type '$type' for '$x'" >&2
+        exit 1
+      }
+    done
+    touch $out
+  '';
+
   meta = with lib; {
     homepage = "https://www.freedesktop.org/wiki/Software/xdg-utils/";
     description = "A set of command line tools that assist applications with a variety of desktop integration tasks";
-    license = if mimiSupport then licenses.gpl2 else licenses.mit;
+    license = if mimiSupport then licenses.gpl2Only else licenses.mit;
     maintainers = [ maintainers.eelco ];
     platforms = platforms.all;
   };
-}
+})
diff --git a/pkgs/tools/X11/xmacro/default.nix b/pkgs/tools/X11/xmacro/default.nix
index cf0ef6d8bf8c..a3f97cccad31 100644
--- a/pkgs/tools/X11/xmacro/default.nix
+++ b/pkgs/tools/X11/xmacro/default.nix
@@ -15,6 +15,6 @@ stdenv.mkDerivation rec {
 
   meta = {
     platforms = lib.platforms.linux;
-    license = lib.licenses.gpl2;
+    license = lib.licenses.gpl2Plus;
   };
 }
diff --git a/pkgs/tools/X11/xmousepasteblock/default.nix b/pkgs/tools/X11/xmousepasteblock/default.nix
index 47140093be25..9d0ec80a1950 100644
--- a/pkgs/tools/X11/xmousepasteblock/default.nix
+++ b/pkgs/tools/X11/xmousepasteblock/default.nix
@@ -15,7 +15,7 @@ stdenv.mkDerivation rec {
   meta = with lib; {
     description = "Middle mouse button primary X selection/clipboard paste disabler";
     homepage = "https://github.com/milaq/XMousePasteBlock";
-    license = lib.licenses.gpl2;
+    license = lib.licenses.gpl2Only;
     maintainers = [ maintainers.petercommand ];
     mainProgram = "xmousepasteblock";
   };
diff --git a/pkgs/tools/X11/xpra/default.nix b/pkgs/tools/X11/xpra/default.nix
index e77273c6084c..f779dd325b8c 100644
--- a/pkgs/tools/X11/xpra/default.nix
+++ b/pkgs/tools/X11/xpra/default.nix
@@ -4,7 +4,7 @@
 , pkg-config
 , runCommand
 , writeText
-, wrapGAppsHook
+, wrapGAppsHook3
 , withNvenc ? false
 , atk
 , cairo
@@ -89,7 +89,7 @@ in buildPythonApplication rec {
   nativeBuildInputs = [
     gobject-introspection
     pkg-config
-    wrapGAppsHook
+    wrapGAppsHook3
     pandoc
   ] ++ lib.optional withNvenc cudatoolkit;
 
@@ -213,7 +213,7 @@ in buildPythonApplication rec {
     description = "Persistent remote applications for X";
     changelog = "https://github.com/Xpra-org/xpra/releases/tag/v${version}";
     platforms = platforms.linux;
-    license = licenses.gpl2;
+    license = licenses.gpl2Only;
     maintainers = with maintainers; [ offline numinit mvnetbiz ];
   };
 }
diff --git a/pkgs/tools/X11/xpra/libfakeXinerama.nix b/pkgs/tools/X11/xpra/libfakeXinerama.nix
index 414a7c877bfb..ca665259c8f3 100644
--- a/pkgs/tools/X11/xpra/libfakeXinerama.nix
+++ b/pkgs/tools/X11/xpra/libfakeXinerama.nix
@@ -28,6 +28,6 @@ stdenv.mkDerivation  rec {
     description = "fakeXinerama for Xpra";
     platforms = platforms.linux;
     maintainers = [ ];
-    license = licenses.gpl2;
+    license = licenses.mit;
   };
 }
diff --git a/pkgs/tools/X11/xtrace/default.nix b/pkgs/tools/X11/xtrace/default.nix
index de1ea88266e2..591b1ef13ab1 100644
--- a/pkgs/tools/X11/xtrace/default.nix
+++ b/pkgs/tools/X11/xtrace/default.nix
@@ -23,7 +23,7 @@ stdenv.mkDerivation rec {
   meta = with lib; {
     homepage = "https://salsa.debian.org/debian/xtrace";
     description = "Tool to trace X11 protocol connections";
-    license = licenses.gpl2;
+    license = licenses.gpl2Only;
     maintainers = with maintainers; [ viric ];
     platforms = with platforms; linux;
     mainProgram = "xtrace";
diff --git a/pkgs/tools/admin/aliyun-cli/default.nix b/pkgs/tools/admin/aliyun-cli/default.nix
index dd8c10bb51cb..e08a71183b4f 100644
--- a/pkgs/tools/admin/aliyun-cli/default.nix
+++ b/pkgs/tools/admin/aliyun-cli/default.nix
@@ -2,17 +2,17 @@
 
 buildGoModule rec {
   pname = "aliyun-cli";
-  version = "3.0.203";
+  version = "3.0.205";
 
   src = fetchFromGitHub {
     rev = "v${version}";
     owner = "aliyun";
     repo = pname;
     fetchSubmodules = true;
-    sha256 = "sha256-S+go4uMUjzZNvzI5e/h7b2YFNdkzmZbVf7pIXOJeUX0=";
+    sha256 = "sha256-fUInyAJKMvHZ13sWjqWr4KPge/hpeDSkJl69nnWJkPc=";
   };
 
-  vendorHash = "sha256-AvlDqaJ5w9oDV1slwArr12KA1d3FKVU9H5WK4s3ePtU=";
+  vendorHash = "sha256-4jGwhcWANYUXuzFjXmFKzMVQXqFtPJt/y3IrjveRNYA=";
 
   subPackages = [ "main" ];
 
diff --git a/pkgs/tools/admin/analog/default.nix b/pkgs/tools/admin/analog/default.nix
index 187dc6234cc2..f63ed3537923 100644
--- a/pkgs/tools/admin/analog/default.nix
+++ b/pkgs/tools/admin/analog/default.nix
@@ -30,7 +30,7 @@ stdenv.mkDerivation rec {
 
   meta = {
     homepage = "https://www.c-amie.co.uk/software/analog/";
-    license = lib.licenses.gpl2;
+    license = lib.licenses.gpl2Only;
     description = "Powerful tool to generate web server statistics";
     platforms = lib.platforms.all;
     mainProgram = "analog";
diff --git a/pkgs/tools/admin/aws-encryption-sdk-cli/default.nix b/pkgs/tools/admin/aws-encryption-sdk-cli/default.nix
index f0d5aa5d3915..c218831b7ae8 100644
--- a/pkgs/tools/admin/aws-encryption-sdk-cli/default.nix
+++ b/pkgs/tools/admin/aws-encryption-sdk-cli/default.nix
@@ -26,13 +26,18 @@ in
 localPython.pkgs.buildPythonApplication rec {
   pname = "aws-encryption-sdk-cli";
   version = "4.1.0";
+  pyproject = true;
 
   src = fetchPypi {
     inherit pname version;
     hash = "sha256-OCbt0OkDVfpzUIogbsKzaPAle2L6l6N3cmZoS2hEaSM=";
   };
 
-  propagatedBuildInputs = with localPython.pkgs; [
+  build-system = with localPython.pkgs; [
+    setuptools
+  ];
+
+  dependencies = with localPython.pkgs; [
     attrs
     aws-encryption-sdk
     base64io
@@ -45,7 +50,7 @@ localPython.pkgs.buildPythonApplication rec {
   nativeCheckInputs = with localPython.pkgs; [
     mock
     pytest-mock
-    pytestCheckHook
+    pytest7CheckHook
   ];
 
   disabledTestPaths = [
diff --git a/pkgs/tools/admin/aws-mfa/default.nix b/pkgs/tools/admin/aws-mfa/default.nix
index 6e58574ee2ba..67ebd255c397 100644
--- a/pkgs/tools/admin/aws-mfa/default.nix
+++ b/pkgs/tools/admin/aws-mfa/default.nix
@@ -2,13 +2,14 @@
 , buildPythonApplication
 , fetchFromGitHub
 , fetchpatch
+, setuptools
 , boto3
 }:
 
 buildPythonApplication rec {
   pname = "aws-mfa";
   version = "0.0.12";
-  format = "setuptools";
+  pyproject = true;
 
   src = fetchFromGitHub {
     owner = "broamski";
@@ -26,7 +27,11 @@ buildPythonApplication rec {
     })
   ];
 
-  propagatedBuildInputs = [
+  build-system = [
+    setuptools
+  ];
+
+  dependencies = [
     boto3
   ];
 
diff --git a/pkgs/tools/admin/awscli/default.nix b/pkgs/tools/admin/awscli/default.nix
index 09910f125bc4..1c6cce5c8bc8 100644
--- a/pkgs/tools/admin/awscli/default.nix
+++ b/pkgs/tools/admin/awscli/default.nix
@@ -8,81 +8,89 @@
 , awscli
 }:
 
-python3.pkgs.buildPythonApplication rec {
-  pname = "awscli";
-  version = "1.32.58"; # N.B: if you change this, change botocore and boto3 to a matching version too
-  pyproject = true;
+let
+  botocoreVersion = python3.pkgs.botocore.version;
+  # awscli.version should be pinned to 2 minor versions less than the botocoreVersion
+  versionMinor = toString (lib.toInt (lib.versions.minor botocoreVersion) - 2);
+  versionPatch = lib.versions.patch botocoreVersion;
+  self = python3.pkgs.buildPythonApplication rec {
+    pname = "awscli";
+    version = "1.${versionMinor}.${versionPatch}"; # N.B: if you change this, change botocore and boto3 to a matching version too
+    pyproject = true;
 
-  src = fetchPypi {
-    inherit pname version;
-    hash = "sha256-dffY/BKsQ7vztW2sGn+WaZB0fXnqwwVjA4nkVwRZ1js=";
-  };
+    src = fetchPypi {
+      inherit pname version;
+      hash = "sha256-GPcXkl2H0XNaeqt2/qD5+KvW23dRB0X+zLWo9hLigQM=";
+    };
 
-  nativeBuildInputs = [
-    python3.pkgs.pythonRelaxDepsHook
-  ];
+    nativeBuildInputs = [
+      python3.pkgs.pythonRelaxDepsHook
+    ];
 
-  pythonRelaxDeps = [
-    "colorama"
-    "docutils"
-    "rsa"
-  ];
+    pythonRelaxDeps = [
+      # botocore must not be relaxed
+      "colorama"
+      "docutils"
+      "rsa"
+    ];
 
-  build-system = [
-    python3.pkgs.setuptools
-  ];
+    build-system = [
+      python3.pkgs.setuptools
+    ];
 
-  propagatedBuildInputs = with python3.pkgs; [
-    botocore
-    s3transfer
-    colorama
-    docutils
-    rsa
-    pyyaml
-    groff
-    less
-  ];
+    propagatedBuildInputs = with python3.pkgs; [
+      botocore
+      s3transfer
+      colorama
+      docutils
+      rsa
+      pyyaml
+      groff
+      less
+    ];
 
-  postInstall = ''
-    mkdir -p $out/share/bash-completion/completions
-    echo "complete -C $out/bin/aws_completer aws" > $out/share/bash-completion/completions/awscli
+    postInstall = ''
+      mkdir -p $out/share/bash-completion/completions
+      echo "complete -C $out/bin/aws_completer aws" > $out/share/bash-completion/completions/awscli
 
-    mkdir -p $out/share/zsh/site-functions
-    mv $out/bin/aws_zsh_completer.sh $out/share/zsh/site-functions
+      mkdir -p $out/share/zsh/site-functions
+      mv $out/bin/aws_zsh_completer.sh $out/share/zsh/site-functions
 
-    rm $out/bin/aws.cmd
-  '';
+      rm $out/bin/aws.cmd
+    '';
 
-  doInstallCheck = true;
+    doInstallCheck = true;
 
-  installCheckPhase = ''
-    runHook preInstallCheck
+    installCheckPhase = ''
+      runHook preInstallCheck
 
-    $out/bin/aws --version | grep "${python3.pkgs.botocore.version}"
-    $out/bin/aws --version | grep "${version}"
+      $out/bin/aws --version | grep "${botocoreVersion}"
+      $out/bin/aws --version | grep "${version}"
 
-    runHook postInstallCheck
-  '';
+      runHook postInstallCheck
+    '';
 
-  passthru = {
-    python = python3; # for aws_shell
-    updateScript = nix-update-script {
-      # Excludes 1.x versions from the Github tags list
-      extraArgs = [ "--version-regex" "^(1\.(.*))" ];
-    };
-    tests.version = testers.testVersion {
-      package = awscli;
-      command = "aws --version";
-      inherit version;
+    passthru = {
+      python = python3; # for aws_shell
+      updateScript = nix-update-script {
+        extraArgs = [ "--version=skip" ];
+      };
+      tests.version = testers.testVersion {
+        package = awscli;
+        command = "aws --version";
+        inherit version;
+      };
     };
-  };
 
-  meta = with lib; {
-    homepage = "https://aws.amazon.com/cli/";
-    changelog = "https://github.com/aws/aws-cli/blob/${version}/CHANGELOG.rst";
-    description = "Unified tool to manage your AWS services";
-    license = licenses.asl20;
-    mainProgram = "aws";
-    maintainers = with maintainers; [ anthonyroussel ];
+    meta = with lib; {
+      homepage = "https://aws.amazon.com/cli/";
+      changelog = "https://github.com/aws/aws-cli/blob/${version}/CHANGELOG.rst";
+      description = "Unified tool to manage your AWS services";
+      license = licenses.asl20;
+      mainProgram = "aws";
+      maintainers = with maintainers; [ anthonyroussel ];
+    };
   };
-}
+in
+assert self ? pythonRelaxDeps -> !(lib.elem "botocore" self.pythonRelaxDeps);
+self
diff --git a/pkgs/tools/admin/awscli2/default.nix b/pkgs/tools/admin/awscli2/default.nix
index 9e10746b5363..cb76180fa7ab 100644
--- a/pkgs/tools/admin/awscli2/default.nix
+++ b/pkgs/tools/admin/awscli2/default.nix
@@ -59,14 +59,14 @@ let
 in
 with py.pkgs; buildPythonApplication rec {
   pname = "awscli2";
-  version = "2.15.38"; # N.B: if you change this, check if overrides are still up-to-date
+  version = "2.15.43"; # N.B: if you change this, check if overrides are still up-to-date
   pyproject = true;
 
   src = fetchFromGitHub {
     owner = "aws";
     repo = "aws-cli";
     rev = "refs/tags/${version}";
-    hash = "sha256-ddZqexGrO2m8iUE9RDkks0ohm27dpitbsj+20aWUrJw=";
+    hash = "sha256-L+1+4QXDya8wwjexPB0fwx6/nRDPDrMYaaYeRm2SEU8=";
   };
 
   postPatch = ''
@@ -78,7 +78,7 @@ with py.pkgs; buildPythonApplication rec {
       --replace-fail 'prompt-toolkit>=3.0.24,<3.0.39' 'prompt-toolkit>=3.0.24'
 
     substituteInPlace requirements-base.txt \
-      --replace-fail "wheel==0.38.4" "wheel>=0.38.4"
+      --replace-fail "wheel==0.43.0" "wheel>=0.43.0"
 
     # Upstream needs pip to build and install dependencies and validates this
     # with a configure script, but we don't as we provide all of the packages
diff --git a/pkgs/tools/admin/azure-cli/default.nix b/pkgs/tools/admin/azure-cli/default.nix
index 49d3b6ffb139..5b025e5c3b26 100644
--- a/pkgs/tools/admin/azure-cli/default.nix
+++ b/pkgs/tools/admin/azure-cli/default.nix
@@ -18,14 +18,14 @@
 }:
 
 let
-  version = "2.58.0";
+  version = "2.60.0";
 
   src = fetchFromGitHub {
     name = "azure-cli-${version}-src";
     owner = "Azure";
     repo = "azure-cli";
     rev = "azure-cli-${version}";
-    hash = "sha256-2KLjPzxtHeuH0/+Sge1wTmGimOiaTWr8EI+xkFBrPD0=";
+    hash = "sha256-rQwjcp6MsqhP+o+Hpvt4CFC4ygqsIaRIQOxWKca5Hq8=";
   };
 
   # put packages that needs to be overridden in the py package scope
@@ -229,6 +229,10 @@ py.pkgs.toPythonApplication (py.pkgs.buildAzureCliPackage rec {
     wcwidth
     websocket-client
     xmltodict
+  ] ++ lib.optionals (!withImmutableConfig) [
+    # pip is required to install extensions locally, but it's not needed if
+    # we're using the default immutable configuration.
+    pip
   ];
 
   postInstall = ''
diff --git a/pkgs/tools/admin/azure-cli/python-packages.nix b/pkgs/tools/admin/azure-cli/python-packages.nix
index 7e643a0a2ef6..1ec3b2d20c5a 100644
--- a/pkgs/tools/admin/azure-cli/python-packages.nix
+++ b/pkgs/tools/admin/azure-cli/python-packages.nix
@@ -108,11 +108,11 @@ let
 
       azure-keyvault-keys = overrideAzureMgmtPackage super.azure-keyvault-keys "4.9.0b3" "tar.gz" "sha256-qoseyf6WqBEG8vPc1hF17K46AWk8Ba8V9KRed4lOlGo=";
       azure-mgmt-applicationinsights = overrideAzureMgmtPackage super.azure-mgmt-applicationinsights "1.0.0" "zip" "sha256-woeix9703hn5LAwxugKGf6xvW433G129qxkoi7RV/Fs=";
-      azure-mgmt-batch = overrideAzureMgmtPackage super.azure-mgmt-batch "17.2.0" "tar.gz" "sha256-ihXjijfW5OzilXPegIxaiSdsmfJSDqHzUrhqcEyJhY0=";
+      azure-mgmt-batch = overrideAzureMgmtPackage super.azure-mgmt-batch "17.3.0" "tar.gz" "sha256-/JSIGmrNuKlTPzcbb3stPq6heJ65VQFLJKkI1t/nWZE=";
       azure-mgmt-batchai = overrideAzureMgmtPackage super.azure-mgmt-batchai "7.0.0b1" "zip" "sha256-mT6vvjWbq0RWQidugR229E8JeVEiobPD3XA/nDM3I6Y=";
       azure-mgmt-botservice = overrideAzureMgmtPackage super.azure-mgmt-botservice "2.0.0b3" "zip" "sha256-XZGQOeMw8usyQ1tl8j57fZ3uqLshomHY9jO/rbpQOvM=";
       azure-mgmt-cdn = overrideAzureMgmtPackage super.azure-mgmt-cdn "12.0.0" "zip" "sha256-t8PuIYkjS0r1Gs4pJJJ8X9cz8950imQtbVBABnyMnd0=";
-      azure-mgmt-compute = overrideAzureMgmtPackage super.azure-mgmt-compute "30.4.0" "tar.gz" "sha256-C3Qo/YvRXHy9fGa5uwEOClyzeoBs7x9JSNkHGRV2kzQ=";
+      azure-mgmt-compute = overrideAzureMgmtPackage super.azure-mgmt-compute "30.6.0" "tar.gz" "sha256-TYDXI+xtTLlYNhfr7AcW59dLJzKsuu0CPtLjzHBT0A4=";
       azure-mgmt-core = overrideAzureMgmtPackage super.azure-mgmt-core "1.3.2" "zip" "sha256-B/Sv6COlXXBLBI1h7f3BMYwFHtWfJEAyEmNQvpXp1QE=";
       azure-mgmt-datalake-store = overrideAzureMgmtPackage super.azure-mgmt-datalake-store "0.5.0" "zip" "sha256-k3bTVJVmHRn4rMVgT2ewvFlJOxg1u8SA+aGVL5ABekw=";
       azure-mgmt-devtestlabs = overrideAzureMgmtPackage super.azure-mgmt-devtestlabs "4.0.0" "zip" "sha256-WVScTEBo8mRmsQl7V0qOUJn7LNbIvgoAOVsG07KeJ40=";
@@ -131,8 +131,8 @@ let
       azure-mgmt-netapp = overrideAzureMgmtPackage super.azure-mgmt-netapp "10.1.0" "zip" "sha256-eJiWTOCk2C79Jotku9bKlu3vU6H8004hWrX+h76MjQM=";
       azure-mgmt-policyinsights = overrideAzureMgmtPackage super.azure-mgmt-policyinsights "1.1.0b4" "zip" "sha256-aB16xyrhNYHJeitvdCeV+kik21B2LC+5/OSDQIGwTpI=";
       azure-mgmt-privatedns = overrideAzureMgmtPackage super.azure-mgmt-privatedns "1.0.0" "zip" "sha256-tg8W5D97KRWCxfV7rhsIMJbYMD6dmVjiwpInpVzCfEU=";
-      azure-mgmt-rdbms = overrideAzureMgmtPackage super.azure-mgmt-rdbms "10.2.0b12" "tar.gz" "sha256-WdTm0YxMXNHGcSGD38YZ1YmJaMjfLJC8OImXedcxDeE=";
-      azure-mgmt-recoveryservicesbackup = overrideAzureMgmtPackage super.azure-mgmt-recoveryservicesbackup "8.0.0" "tar.gz" "sha256-Hakde59uvVcCkvFt9w69nVr7BjNrPU0Q/COcA0h7Cnw=";
+      azure-mgmt-rdbms = overrideAzureMgmtPackage super.azure-mgmt-rdbms "10.2.0b14" "tar.gz" "sha256-hfgSrWZKUJNU9CeAyETCrKWKxmCyk9kId8RYSNsKwBM=";
+      azure-mgmt-recoveryservicesbackup = overrideAzureMgmtPackage super.azure-mgmt-recoveryservicesbackup "9.1.0" "tar.gz" "sha256-Hp/UBsDJ7iYn9aNx8BL4dzQvf8bzOyVk/NFNbwZjzQ8=";
       azure-mgmt-redis = overrideAzureMgmtPackage super.azure-mgmt-redis "14.3.0" "tar.gz" "sha256-eoMbY4oNzYXkn3uFUhxecJQD+BxYkGTbWhAWSgAoLyA=";
       azure-mgmt-resource = overrideAzureMgmtPackage super.azure-mgmt-resource "23.1.0b2" "zip" "sha256-kMmiKVwjPgmsTIxxxDRNXE41jSTJkemnKhO+P/OcPZI=";
       azure-mgmt-search = overrideAzureMgmtPackage super.azure-mgmt-search "9.0.0" "zip" "sha256-Gc+qoTa1EE4/YmJvUSqVG+zZ50wfohvWOe/fLJ/vgb0=";
@@ -141,9 +141,9 @@ let
         "sha256-3jXhF5EoMsGp6TEJqNJMq5T1VwOpCHsuscWwZVs7GRM=").overridePythonAttrs (attrs: {
         propagatedBuildInputs = attrs.propagatedBuildInputs or [ ] ++ [ self.msrest self.msrestazure ];
       });
-      azure-mgmt-servicelinker = overrideAzureMgmtPackage super.azure-mgmt-servicelinker "1.2.0b1" "zip" "sha256-RK1Q51Q0wAG55oKrFmv65/2AUKl+gRdp27t/EcuMONk=";
+      azure-mgmt-servicelinker = overrideAzureMgmtPackage super.azure-mgmt-servicelinker "1.2.0b2" "tar.gz" "sha256-PpEFMM8ri9OgAa79dGhvPKy5YFfDZZustBUDieQrtZU=";
       azure-mgmt-signalr = overrideAzureMgmtPackage super.azure-mgmt-signalr "2.0.0b1" "tar.gz" "sha256-oK2ceBEoQ7gAeG6mye+x8HPzQU9bUNRPVJtRW2GL4xg=";
-      azure-mgmt-sql = overrideAzureMgmtPackage super.azure-mgmt-sql "4.0.0b15" "tar.gz" "sha256-zSrDo3+ftYayOK/gvhf/PQ926e3qExtSj/yDgXC9VqA=";
+      azure-mgmt-sql = overrideAzureMgmtPackage super.azure-mgmt-sql "4.0.0b16" "tar.gz" "sha256-+6QKEROlbXe0oCj4qtB+r4/yCPZD4N+71e5Z1Z/zXV0=";
       azure-mgmt-sqlvirtualmachine = overrideAzureMgmtPackage super.azure-mgmt-sqlvirtualmachine "1.0.0b5" "zip" "sha256-ZFgJflgynRSxo+B+Vso4eX1JheWlDQjfJ9QmupXypMc=";
       azure-mgmt-storage = overrideAzureMgmtPackage super.azure-mgmt-storage "21.1.0" "tar.gz" "sha256-1tPA6RfJiLye0Eckd9PvP5CIYAnrHZenEZRPg3VjAWI=";
       azure-mgmt-synapse = overrideAzureMgmtPackage super.azure-mgmt-synapse "2.1.0b5" "zip" "sha256-5E6Yf1GgNyNVjd+SeFDbhDxnOA6fOAG6oojxtCP4m+k=";
diff --git a/pkgs/tools/admin/balena-cli/default.nix b/pkgs/tools/admin/balena-cli/default.nix
index 58805192bde6..5b45b78835f0 100644
--- a/pkgs/tools/admin/balena-cli/default.nix
+++ b/pkgs/tools/admin/balena-cli/default.nix
@@ -18,16 +18,16 @@ let
   };
 in buildNpmPackage' rec {
   pname = "balena-cli";
-  version = "18.2.1";
+  version = "18.2.3";
 
   src = fetchFromGitHub {
     owner = "balena-io";
     repo = "balena-cli";
     rev = "v${version}";
-    hash = "sha256-UOA8YIY08ocRyr9DLOBBqgkzMxL5BKqy9UWrc3bPiDE=";
+    hash = "sha256-TjwiNQqGZbezZu3Ul5IIug5vVNhx1op+ZRXQlxnurVI=";
   };
 
-  npmDepsHash = "sha256-9atwUBU/L8vCepkFudW3JvzXX9/Neyi/ioc0vuuxsss=";
+  npmDepsHash = "sha256-OQ8i76cKFbdEH6Fj41ifAeGyIMAACOgo7dMxByULJMk=";
 
   postPatch = ''
     ln -s npm-shrinkwrap.json package-lock.json
diff --git a/pkgs/tools/admin/drawterm/default.nix b/pkgs/tools/admin/drawterm/default.nix
index e6d401ebc237..dacf5155b321 100644
--- a/pkgs/tools/admin/drawterm/default.nix
+++ b/pkgs/tools/admin/drawterm/default.nix
@@ -19,13 +19,13 @@
 
 stdenv.mkDerivation {
   pname = "drawterm";
-  version = "unstable-2024-04-05";
+  version = "0-unstable-2024-04-23";
 
   src = fetchFrom9Front {
     owner = "plan9front";
     repo = "drawterm";
-    rev = "c3d7782a0cbb0aee91edae9b2850d053f27a6f0e";
-    hash = "sha256-2Iluv/cRouAvKyH5W8llAJm+SrofFkE2N5WnnFf++EU=";
+    rev = "c0951f2a3182d8b70ffe579bfd9da24c2b86e232";
+    hash = "sha256-7y2Mte6R4yeayxdFSFGb9Q5M/GQwqyFb+AW/BFsQeZc=";
   };
 
   enableParallelBuilding = true;
diff --git a/pkgs/tools/admin/fits-cloudctl/default.nix b/pkgs/tools/admin/fits-cloudctl/default.nix
index cab43f365692..1cc452f6762e 100644
--- a/pkgs/tools/admin/fits-cloudctl/default.nix
+++ b/pkgs/tools/admin/fits-cloudctl/default.nix
@@ -5,16 +5,26 @@
 
 buildGoModule rec {
   pname = "fits-cloudctl";
-  version = "0.12.18";
+  version = "0.12.19"; # also update these 3 vars:
+  gitversion = "tags/v0.12.19-0-g0a0d89a"; # git describe --long --all
+  gitsha = "0a0d89a8";                     # git rev-parse --short=8 HEAD
+  gittime = "2024-05-15T17:34:46+02:00";   # date --iso-8601=seconds
 
   src = fetchFromGitHub {
     owner = "fi-ts";
     repo = "cloudctl";
     rev = "v${version}";
-    hash = "sha256-ScHdYSDZVs9YYIh1/U/8ZcGa9BF5L+fIHnSHWSRlB4k=";
+    hash = "sha256-4R+wBjlCjk/7/iucC3zptrQ5D5wtQeqdeyfJ1DiFusY=";
   };
 
-  vendorHash = "sha256-7vIcfxDmO8tmVewRDx6JhOgtkKeHOk0qyFZf1U0VQs4=";
+  vendorHash = "sha256-mK10DxDUrEkCdumq6MM6h7B8C8P1hGE466ko3yj1kto=";
+
+  ldflags = [
+    "-X github.com/metal-stack/v.Version=${version}"
+    "-X github.com/metal-stack/v.Revision=${gitversion}"
+    "-X github.com/metal-stack/v.GitSHA1=${gitsha}"
+    "-X github.com/metal-stack/v.BuildDate=${gittime}"
+  ];
 
   meta = with lib; {
     description = "Command-line client for FI-TS Finance Cloud Native services";
diff --git a/pkgs/tools/admin/gimme-aws-creds/default.nix b/pkgs/tools/admin/gimme-aws-creds/default.nix
index f4a2e496b056..b2ac36ef51f1 100644
--- a/pkgs/tools/admin/gimme-aws-creds/default.nix
+++ b/pkgs/tools/admin/gimme-aws-creds/default.nix
@@ -25,14 +25,14 @@ let
 in
 python.pkgs.buildPythonApplication rec {
   pname = "gimme-aws-creds";
-  version = "2.8.0"; # N.B: if you change this, check if overrides are still up-to-date
+  version = "2.8.2"; # N.B: if you change this, check if overrides are still up-to-date
   format = "setuptools";
 
   src = fetchFromGitHub {
     owner = "Nike-Inc";
     repo = "gimme-aws-creds";
     rev = "v${version}";
-    hash = "sha256-RcqvI+jR7TiNAzq8F6VGVhyj6MxnmsjQKh0CiZvLY9Q=";
+    hash = "sha256-fsFYcfbLeYV6tpOGgNrFmYjcUAmdsx5zwUbvcctwFVs=";
   };
 
   nativeBuildInputs = with python.pkgs; [
diff --git a/pkgs/tools/admin/google-cloud-sdk/components.json b/pkgs/tools/admin/google-cloud-sdk/components.json
index 88908d304608..25154deed587 100644
--- a/pkgs/tools/admin/google-cloud-sdk/components.json
+++ b/pkgs/tools/admin/google-cloud-sdk/components.json
@@ -5,7 +5,7 @@
         "checksum": "5a65179c291bc480696ca323d2f8c4874985458303eff8f233e16cdca4e88e6f",
         "contents_checksum": "038c999c7a7d70d5133eab7dc5868c4c3d0358431dad250f9833306af63016c8",
         "size": 800,
-        "source": "components/google-cloud-sdk-alpha-20240229170130.tar.gz",
+        "source": "components/google-cloud-sdk-alpha-20240503145345.tar.gz",
         "type": "tar"
       },
       "dependencies": [
@@ -22,8 +22,8 @@
       "platform": {},
       "platform_required": false,
       "version": {
-        "build_number": 20240229170130,
-        "version_string": "2024.02.29"
+        "build_number": 20240503145345,
+        "version_string": "2024.05.03"
       }
     },
     {
@@ -56,15 +56,15 @@
       "platform_required": false,
       "version": {
         "build_number": 0,
-        "version_string": "1.5.0"
+        "version_string": "1.5.1"
       }
     },
     {
       "data": {
-        "checksum": "e644f1dfa8a4c25029b33fcf04f4c3c6e01c4c7ed2d572e550890c71d3e8105f",
-        "contents_checksum": "1f789abe50e6cc5423d39c2530995849bda198e866abbd61904ffb964688e3b3",
-        "size": 21674635,
-        "source": "components/google-cloud-sdk-anthos-auth-darwin-arm-20231201141418.tar.gz",
+        "checksum": "37a7174a1716a9f4d84ee904940428ac424b4e20b1c4df7fe2e79704e554a8ce",
+        "contents_checksum": "21f1533ec191871a6677551d0d72687b03f1f2708fa900652875afa948a26df4",
+        "size": 21872436,
+        "source": "components/google-cloud-sdk-anthos-auth-darwin-arm-20240426154730.tar.gz",
         "type": "tar"
       },
       "dependencies": [
@@ -88,16 +88,16 @@
       },
       "platform_required": false,
       "version": {
-        "build_number": 20231201141418,
-        "version_string": "1.5.0"
+        "build_number": 20240426154730,
+        "version_string": "1.5.1"
       }
     },
     {
       "data": {
-        "checksum": "72a93a9df0d0647ac5587be7dc0f423c9700d191d21e870d7f8218195e8b7c67",
-        "contents_checksum": "80a810795133e6ed5d17b963606a980c85e059011c9eeffc4b23fdecbbc95736",
-        "size": 22732157,
-        "source": "components/google-cloud-sdk-anthos-auth-darwin-x86_64-20231201141418.tar.gz",
+        "checksum": "6f82815ca309a9f5a19bef98aad0a4f70393a66ce57383a4f6e4b0a8d6193a56",
+        "contents_checksum": "81a661e522f5c3b7fe610bad06a49e0a3a20fc9da69e0232150c4aa4fcaf962b",
+        "size": 22957602,
+        "source": "components/google-cloud-sdk-anthos-auth-darwin-x86_64-20240426154730.tar.gz",
         "type": "tar"
       },
       "dependencies": [
@@ -121,16 +121,16 @@
       },
       "platform_required": false,
       "version": {
-        "build_number": 20231201141418,
-        "version_string": "1.5.0"
+        "build_number": 20240426154730,
+        "version_string": "1.5.1"
       }
     },
     {
       "data": {
-        "checksum": "c6201122eb946238b632d68c944880a172759e7c6e60086d878c8f65017d4614",
-        "contents_checksum": "def3aaea624bd24a35d2cd8321562cb5ef5f4b659415c552e439c47ea80be22b",
-        "size": 21172533,
-        "source": "components/google-cloud-sdk-anthos-auth-linux-arm-20231201141418.tar.gz",
+        "checksum": "d9ad352bdfd50fef92ab1b917bb60be6b2e49bb8a4b49269bd2286570e02681f",
+        "contents_checksum": "c98b7c781c86e14e0dbb2a5f5a6ab9504013d005046fb52956ffb213a7d6f51a",
+        "size": 21399471,
+        "source": "components/google-cloud-sdk-anthos-auth-linux-arm-20240426154730.tar.gz",
         "type": "tar"
       },
       "dependencies": [
@@ -154,16 +154,16 @@
       },
       "platform_required": false,
       "version": {
-        "build_number": 20231201141418,
-        "version_string": "1.5.0"
+        "build_number": 20240426154730,
+        "version_string": "1.5.1"
       }
     },
     {
       "data": {
-        "checksum": "1a674e3872d702e59c8ef9b275f7e6dfb3a2e428fbaaa177442341f46c62b92d",
-        "contents_checksum": "ce215c3c67f2445ff1e1bd7d3c897ed5e83b169edb6004ce0898da08a3dc5066",
-        "size": 22854830,
-        "source": "components/google-cloud-sdk-anthos-auth-linux-x86_64-20231201141418.tar.gz",
+        "checksum": "c148f4a473afa336390f034d735283d6a4556c06e8e8b5bd0ecfa2f25dcfd184",
+        "contents_checksum": "4dbc4132c3126b53058c12c9113186436ac223018cf6d5e636dc0cf6b38ab1e3",
+        "size": 23109537,
+        "source": "components/google-cloud-sdk-anthos-auth-linux-x86_64-20240426154730.tar.gz",
         "type": "tar"
       },
       "dependencies": [
@@ -187,16 +187,16 @@
       },
       "platform_required": false,
       "version": {
-        "build_number": 20231201141418,
-        "version_string": "1.5.0"
+        "build_number": 20240426154730,
+        "version_string": "1.5.1"
       }
     },
     {
       "data": {
-        "checksum": "340aff9659764a4b82358dc1face81ca6fccb6cdba0a4b176305d984706f136c",
-        "contents_checksum": "603ea38b094e85e9a4836061bd057c086b37778a8cc2c7134d1d9bbd43b68639",
-        "size": 23111838,
-        "source": "components/google-cloud-sdk-anthos-auth-windows-x86_64-20231201141418.tar.gz",
+        "checksum": "7802808d020056ba132dc1aecda164d4979f057feff4a61071a6da850ef3e6bf",
+        "contents_checksum": "7b8a92cd15dfafa0969273ad9eca138d5f7c69fd5b54079bfd5dadf2141b103b",
+        "size": 23361404,
+        "source": "components/google-cloud-sdk-anthos-auth-windows-x86_64-20240426154730.tar.gz",
         "type": "tar"
       },
       "dependencies": [
@@ -220,8 +220,8 @@
       },
       "platform_required": false,
       "version": {
-        "build_number": 20231201141418,
-        "version_string": "1.5.0"
+        "build_number": 20240426154730,
+        "version_string": "1.5.1"
       }
     },
     {
@@ -1020,10 +1020,10 @@
     },
     {
       "data": {
-        "checksum": "ae39996160cebbed748ed12a6ef89ff73e93848b4b1a22f153c371c8ec2153ad",
-        "contents_checksum": "66509cd7d0ee0046439e2bc0e70eed9afecb637d578e518d6771925267693055",
-        "size": 132057381,
-        "source": "components/google-cloud-sdk-app-engine-java-20240106004423.tar.gz",
+        "checksum": "8d48814998e693aad877ddac4e1cc9c16b107898eda5e1e8fde6f677968a121c",
+        "contents_checksum": "b6d38276b7131e073deaff71ecdb3b994fd4a4bdfc4a9a2b2e64cff35884ad49",
+        "size": 132375338,
+        "source": "components/google-cloud-sdk-app-engine-java-20240329151455.tar.gz",
         "type": "tar"
       },
       "dependencies": [
@@ -1041,8 +1041,8 @@
       "platform": {},
       "platform_required": false,
       "version": {
-        "build_number": 20240106004423,
-        "version_string": "2.0.24"
+        "build_number": 20240329151455,
+        "version_string": "2.0.26"
       }
     },
     {
@@ -1142,10 +1142,10 @@
     },
     {
       "data": {
-        "checksum": "893d741c65d65cfc20f3820fdf62cb71f111e814083c942fee4ced13b10944a2",
-        "contents_checksum": "a97004f0aedeff49894c2cce7b5f634762900f64f38f65c1676e7897f3fb2c53",
-        "size": 8780608,
-        "source": "components/google-cloud-sdk-app-engine-python-20240216153112.tar.gz",
+        "checksum": "64171e6c3e1fae05666a7288020b321a0ffad92f8ae6ed7ba93d764c3b0e4369",
+        "contents_checksum": "f7fbbf70cc88e037e8e2d762d8bcd6dc1546a327a259b98f779f734a66be86a5",
+        "size": 5246358,
+        "source": "components/google-cloud-sdk-app-engine-python-20240412130805.tar.gz",
         "type": "tar"
       },
       "dependencies": [
@@ -1164,16 +1164,16 @@
       "platform": {},
       "platform_required": false,
       "version": {
-        "build_number": 20240216153112,
-        "version_string": "1.9.109"
+        "build_number": 20240412130805,
+        "version_string": "1.9.113"
       }
     },
     {
       "data": {
-        "checksum": "44a183b079e30fc932dbd7ca5b497baa6fa7d080ad78c500da99de6ef9e1a132",
-        "contents_checksum": "49a80207105a59c3948dd43fda0e28a6f9621265df127c7a3aa9707862ab7bfe",
-        "size": 33004574,
-        "source": "components/google-cloud-sdk-app-engine-python-extras-20231002150006.tar.gz",
+        "checksum": "e91aacbb794987ea2c24efe524a1204a94e9d46b3ff810740b3a8edd36b320ca",
+        "contents_checksum": "a2243f6ab1398d9caf08f4edcf55de35765698ec756b9f5ed58da87c0f37842e",
+        "size": 2122,
+        "source": "components/google-cloud-sdk-app-engine-python-extras-20240308155052.tar.gz",
         "type": "tar"
       },
       "dependencies": [
@@ -1191,8 +1191,8 @@
       "platform": {},
       "platform_required": false,
       "version": {
-        "build_number": 20231002150006,
-        "version_string": "1.9.102"
+        "build_number": 20240308155052,
+        "version_string": "1.9.106"
       }
     },
     {
@@ -1432,7 +1432,7 @@
         "checksum": "707d412854a14450b4fddee199d258e75946fe51b44eb2980c8cd7e274c15760",
         "contents_checksum": "0b4e9d8e6394dc841aece07ca4da91920a460cbd7ec22495be4a2b4f46635b4d",
         "size": 797,
-        "source": "components/google-cloud-sdk-beta-20240229170130.tar.gz",
+        "source": "components/google-cloud-sdk-beta-20240503145345.tar.gz",
         "type": "tar"
       },
       "dependencies": [
@@ -1449,8 +1449,8 @@
       "platform": {},
       "platform_required": false,
       "version": {
-        "build_number": 20240229170130,
-        "version_string": "2024.02.29"
+        "build_number": 20240503145345,
+        "version_string": "2024.05.03"
       }
     },
     {
@@ -1493,10 +1493,10 @@
     },
     {
       "data": {
-        "checksum": "663eb2bb5e083b366f739b81bc95ce7853187a823890c34e07a8bacdfce35244",
-        "contents_checksum": "20101432339e657f9f272c5898dbdffd89dad2e08dcfccfa26c6609343f39f4c",
-        "size": 7149239,
-        "source": "components/google-cloud-sdk-bigtable-darwin-arm-20240112150613.tar.gz",
+        "checksum": "61389b1bb5534dc7386d30df5ab3a1050cbe3a8c9deda0edb40a1d5985439049",
+        "contents_checksum": "3a7f40f835b1b713a96f5b6c404eae20c7c90d794aae8a92713fd5b59a3c778e",
+        "size": 7344145,
+        "source": "components/google-cloud-sdk-bigtable-darwin-arm-20240329151455.tar.gz",
         "type": "tar"
       },
       "dependencies": [
@@ -1521,7 +1521,7 @@
       },
       "platform_required": false,
       "version": {
-        "build_number": 20240112150613,
+        "build_number": 20240329151455,
         "version_string": ""
       }
     },
@@ -1561,10 +1561,10 @@
     },
     {
       "data": {
-        "checksum": "c00519ab786c673527f79f72770d1f4b5bf599c16f9c5d4b42a3f6658414ac22",
-        "contents_checksum": "55675241aba0458e9e7e272511ed469bc30949464d23cf672b2e8549e16559a5",
-        "size": 7384031,
-        "source": "components/google-cloud-sdk-bigtable-darwin-x86_64-20240112150613.tar.gz",
+        "checksum": "1d719de1aa61fb4837d221502e4113b2f786671e1139852275d69dc77d02e494",
+        "contents_checksum": "747c8a308249abd684ad2bc8bb9c3b34ed5092da0825b2887188c7f65385c81a",
+        "size": 7656241,
+        "source": "components/google-cloud-sdk-bigtable-darwin-x86_64-20240329151455.tar.gz",
         "type": "tar"
       },
       "dependencies": [
@@ -1589,16 +1589,16 @@
       },
       "platform_required": false,
       "version": {
-        "build_number": 20240112150613,
+        "build_number": 20240329151455,
         "version_string": ""
       }
     },
     {
       "data": {
-        "checksum": "bb6a7e3068ba643e11505e2cbf2fb7418662045566105c711ccda37bbce2f235",
-        "contents_checksum": "a2613adc36a34833bf1e11c7f725688389a330d89e3719e5f4e00387dfa20fb8",
-        "size": 7032893,
-        "source": "components/google-cloud-sdk-bigtable-linux-arm-20240112150613.tar.gz",
+        "checksum": "573c369501c73a684744007a9fc23ca29d8a81fa6c1dd18bed18c659ed406711",
+        "contents_checksum": "5abcfae3e7a061c532d3b4acbb6659d98cc4a7077e21ae4859e4d83d9c07e84f",
+        "size": 7210539,
+        "source": "components/google-cloud-sdk-bigtable-linux-arm-20240329151455.tar.gz",
         "type": "tar"
       },
       "dependencies": [
@@ -1623,16 +1623,16 @@
       },
       "platform_required": false,
       "version": {
-        "build_number": 20240112150613,
+        "build_number": 20240329151455,
         "version_string": ""
       }
     },
     {
       "data": {
-        "checksum": "5e762be2009986b3a9594cefc861d186eb3130c0f1b0dbf08bef6534ce868761",
-        "contents_checksum": "2adb488dd36830e794eb141ec5243b0bc5f24206a6bd0ae5a731a31346f08078",
-        "size": 7287874,
-        "source": "components/google-cloud-sdk-bigtable-linux-x86-20240112150613.tar.gz",
+        "checksum": "987ee97fb43e647db218c80cb9c3381477072aa494292db4d108e23f298e8926",
+        "contents_checksum": "da67b3b932497c895d74221dd3f670374abeda9b18ea32e225b733e69dc87cdc",
+        "size": 7374147,
+        "source": "components/google-cloud-sdk-bigtable-linux-x86-20240329151455.tar.gz",
         "type": "tar"
       },
       "dependencies": [
@@ -1657,16 +1657,16 @@
       },
       "platform_required": false,
       "version": {
-        "build_number": 20240112150613,
+        "build_number": 20240329151455,
         "version_string": ""
       }
     },
     {
       "data": {
-        "checksum": "b3c54cb77875fddf48a0ff41a8870cb55891bf49ae81e23adeb72c1280fc1fd0",
-        "contents_checksum": "711fd9de39fbf4583dbb22c52e7b3fa801ad81dee1e2a4d65d98992738f2aa34",
-        "size": 7488736,
-        "source": "components/google-cloud-sdk-bigtable-linux-x86_64-20240112150613.tar.gz",
+        "checksum": "a21817f2aae3ea9580a34f3f169a81baf289cbbd0a3b93455252c326654fe8b2",
+        "contents_checksum": "3ac22e1972afab99190324f7b9363fe9454ae845beba9eb3750d6240f40f5ee4",
+        "size": 7668508,
+        "source": "components/google-cloud-sdk-bigtable-linux-x86_64-20240329151455.tar.gz",
         "type": "tar"
       },
       "dependencies": [
@@ -1691,16 +1691,16 @@
       },
       "platform_required": false,
       "version": {
-        "build_number": 20240112150613,
+        "build_number": 20240329151455,
         "version_string": ""
       }
     },
     {
       "data": {
-        "checksum": "7ae926f8aad9bb48247a2468da737b1cd239764aca4ef31b02aebe14437bc5f9",
-        "contents_checksum": "a4409d3c0f7bce7ab0aeaf66adb80ea96a2f8c3854aa0570f3badf21b8b7d430",
-        "size": 7317721,
-        "source": "components/google-cloud-sdk-bigtable-windows-x86-20240112150613.tar.gz",
+        "checksum": "44b0bfe67b3e19db8acf4bb144f465509afe1fc25ad9c8dfee18a70c1202d3a3",
+        "contents_checksum": "2fdcda84a5bdb706895ffc4333597c2dbf48cf4fd52048174ece638e2d63348a",
+        "size": 7568622,
+        "source": "components/google-cloud-sdk-bigtable-windows-x86-20240329151455.tar.gz",
         "type": "tar"
       },
       "dependencies": [
@@ -1725,16 +1725,16 @@
       },
       "platform_required": false,
       "version": {
-        "build_number": 20240112150613,
+        "build_number": 20240329151455,
         "version_string": ""
       }
     },
     {
       "data": {
-        "checksum": "96eac561a6b2efe89e840ff2c6fa22e50f368a536a5db6c168ce9072f6142271",
-        "contents_checksum": "7d9e07ff31df84f57a66a4f9b0d3d0d666c70c7a17174cb2c69feea2db8a194e",
-        "size": 7479168,
-        "source": "components/google-cloud-sdk-bigtable-windows-x86_64-20240112150613.tar.gz",
+        "checksum": "36f5c9f98188e968cd53fe4545b3f8cb01dc2dfe2bda5c1f607ac384f358f329",
+        "contents_checksum": "cae59bae355fc9b8ff8fc37296d3885a9944d85b0ba84a4c2e9985380db488e6",
+        "size": 7841324,
+        "source": "components/google-cloud-sdk-bigtable-windows-x86_64-20240329151455.tar.gz",
         "type": "tar"
       },
       "dependencies": [
@@ -1759,16 +1759,16 @@
       },
       "platform_required": false,
       "version": {
-        "build_number": 20240112150613,
+        "build_number": 20240329151455,
         "version_string": ""
       }
     },
     {
       "data": {
-        "checksum": "8918c7fd033de8f13f331152e59dc16a33f0f7007a6be615b7b53337197be33f",
-        "contents_checksum": "f516a7a4d24280d59d67bf908d80d0a560b8d680e8c2699efc1071b1c0039c1f",
-        "size": 1679148,
-        "source": "components/google-cloud-sdk-bq-20240112150613.tar.gz",
+        "checksum": "a99ddbb8738b92fb9e899fdcd81b8f6ff10499ae301d4c5660de756d5c689046",
+        "contents_checksum": "c2012e29e4fe8f14dacb252272e0953ea0618df9f9182bb6405eb7bcbab5af96",
+        "size": 1746678,
+        "source": "components/google-cloud-sdk-bq-20240412130805.tar.gz",
         "type": "tar"
       },
       "dependencies": [
@@ -1787,8 +1787,8 @@
       "platform": {},
       "platform_required": false,
       "version": {
-        "build_number": 20240112150613,
-        "version_string": "2.0.101"
+        "build_number": 20240412130805,
+        "version_string": "2.1.4"
       }
     },
     {
@@ -1827,10 +1827,10 @@
     },
     {
       "data": {
-        "checksum": "5d3fdd2bd23beba4e15e60d8e2befdb3d68ae9faed8a19b14526ffacb247546e",
-        "contents_checksum": "aa61d0c34c3b3d6509e7a529b28446faaa645f15abb56a27be3b425ed6404fac",
-        "size": 2683,
-        "source": "components/google-cloud-sdk-bq-win-20240226203415.tar.gz",
+        "checksum": "3bfb69819bbca110fa33474612db6ec6bfb20d2c2334ff41ac21b6f7179441f7",
+        "contents_checksum": "543b11ef740e32b7013fdecdc0ea02fa076e16972dec18155647fb3f0682d743",
+        "size": 4104,
+        "source": "components/google-cloud-sdk-bq-win-20240503145345.tar.gz",
         "type": "tar"
       },
       "dependencies": [
@@ -1852,8 +1852,8 @@
       },
       "platform_required": false,
       "version": {
-        "build_number": 20240226203415,
-        "version_string": "2.0.101"
+        "build_number": 20240503145345,
+        "version_string": "2.1.4"
       }
     },
     {
@@ -1982,7 +1982,7 @@
       "platform_required": false,
       "version": {
         "build_number": 0,
-        "version_string": "3.11.6"
+        "version_string": "3.11.8"
       }
     },
     {
@@ -2048,10 +2048,10 @@
     },
     {
       "data": {
-        "checksum": "78b090d3d133b622c8fa591e55d97dec41ebeceda117f1fc4c87a3a3053710fc",
-        "contents_checksum": "b18344f58a872b7fd500946a8ca7c7929608a4bf5257570e7c60c2f5b9208ad4",
-        "size": 20426074,
-        "source": "components/google-cloud-sdk-bundled-python3-windows-x86-20231110155547.tar.gz",
+        "checksum": "6b42a2592dc79efb45b3848f58de62866d9fba0d033a8e91aa919be047ee3cb6",
+        "contents_checksum": "6cce2af1b3947deeff09b5adce78ef1c6b39716ce2ef27c58b48c14408b2e3a0",
+        "size": 20457544,
+        "source": "components/google-cloud-sdk-bundled-python3-windows-x86-20240315155000.tar.gz",
         "type": "tar"
       },
       "dependencies": [
@@ -2076,16 +2076,16 @@
       },
       "platform_required": false,
       "version": {
-        "build_number": 20231110155547,
-        "version_string": "3.11.6"
+        "build_number": 20240315155000,
+        "version_string": "3.11.8"
       }
     },
     {
       "data": {
-        "checksum": "f80970b12053a77afb5888982362396c379392462806837c47c4ed3271c19aaf",
-        "contents_checksum": "3207aea9e98dcf0cf0ee6ad339235fda213dbf8ac997bfa823698c52d68b7f65",
-        "size": 22512051,
-        "source": "components/google-cloud-sdk-bundled-python3-windows-x86_64-20231110155547.tar.gz",
+        "checksum": "22a2f8a7370780239ed00ef8771729318b3301e498afba74ef27f300d3b29ec1",
+        "contents_checksum": "9b781d6ff139270cd317f233e448c88d2b54ef3d05970b2c765540485acf1451",
+        "size": 22664923,
+        "source": "components/google-cloud-sdk-bundled-python3-windows-x86_64-20240315155000.tar.gz",
         "type": "tar"
       },
       "dependencies": [
@@ -2110,8 +2110,8 @@
       },
       "platform_required": false,
       "version": {
-        "build_number": 20231110155547,
-        "version_string": "3.11.6"
+        "build_number": 20240315155000,
+        "version_string": "3.11.8"
       }
     },
     {
@@ -2148,15 +2148,15 @@
       "platform_required": false,
       "version": {
         "build_number": 0,
-        "version_string": "1.17.2"
+        "version_string": "1.19.0"
       }
     },
     {
       "data": {
-        "checksum": "538df81550df3242dd9047437ceea867abb38125df24154ffafb5298dee1a2b8",
-        "contents_checksum": "02563cdae195531dc844381cd1cfed92ec8217adc475b9dac73898f1a25c0a45",
-        "size": 16720666,
-        "source": "components/google-cloud-sdk-cbt-darwin-arm-20240112150613.tar.gz",
+        "checksum": "afa1887247d8c5eb0ab71127767c289267f5742702e07827d4c856249efc3753",
+        "contents_checksum": "c2239a7e4967b5c0ab0a3bf09328d269a444b06dfab5617879f29ec94bbde352",
+        "size": 17509814,
+        "source": "components/google-cloud-sdk-cbt-darwin-arm-20240329151455.tar.gz",
         "type": "tar"
       },
       "dependencies": [
@@ -2180,8 +2180,8 @@
       },
       "platform_required": false,
       "version": {
-        "build_number": 20240112150613,
-        "version_string": "1.17.2"
+        "build_number": 20240329151455,
+        "version_string": "1.19.0"
       }
     },
     {
@@ -2219,10 +2219,10 @@
     },
     {
       "data": {
-        "checksum": "b9194d1a8371dea7c63147767a6f9e3f8c6f4b03fa30ca3bc5ea901d97acd011",
-        "contents_checksum": "c359de592aa1b957326c205b8723a59520cac0f142bf278b84eed03399b56b59",
-        "size": 17196541,
-        "source": "components/google-cloud-sdk-cbt-darwin-x86_64-20240112150613.tar.gz",
+        "checksum": "1fc383dfab3e4c99969d05b939620349fadd115124cfcfd7e6d5c8853718f7cf",
+        "contents_checksum": "76b3bc91860334a7263fbad820ac8ac2db54ca773568aafb86e9221e717e24d3",
+        "size": 18273086,
+        "source": "components/google-cloud-sdk-cbt-darwin-x86_64-20240329151455.tar.gz",
         "type": "tar"
       },
       "dependencies": [
@@ -2246,16 +2246,16 @@
       },
       "platform_required": false,
       "version": {
-        "build_number": 20240112150613,
-        "version_string": "1.17.2"
+        "build_number": 20240329151455,
+        "version_string": "1.19.0"
       }
     },
     {
       "data": {
-        "checksum": "eb0c6f7e7f9c3bfecbfd733ea018c09fb8ba61b78b1cf8c1c9263c7109ad8671",
-        "contents_checksum": "5c1a36f98fd4654ee47fccea2a9a50ce8b22cd70e013b83bb051fe357122638d",
-        "size": 16297518,
-        "source": "components/google-cloud-sdk-cbt-linux-arm-20240112150613.tar.gz",
+        "checksum": "2ea8a9dfff13f06b8498622b7b4a13488749dc4ac1560728f3df9fe63537df88",
+        "contents_checksum": "f70c2888bdb2efec1afe421edc65bef9c356fec3b09a5cc0c4650409dca303f2",
+        "size": 17062983,
+        "source": "components/google-cloud-sdk-cbt-linux-arm-20240329151455.tar.gz",
         "type": "tar"
       },
       "dependencies": [
@@ -2279,16 +2279,16 @@
       },
       "platform_required": false,
       "version": {
-        "build_number": 20240112150613,
-        "version_string": "1.17.2"
+        "build_number": 20240329151455,
+        "version_string": "1.19.0"
       }
     },
     {
       "data": {
-        "checksum": "39ca479add8bc11ad11a3b2965e562e62858901c96d79aa1aa2c938a7f40993c",
-        "contents_checksum": "fc6133d7e68b1ad303d87cb9e712bc94fd40511f3818979b4e20d7f5f2074df7",
-        "size": 16492482,
-        "source": "components/google-cloud-sdk-cbt-linux-x86-20240112150613.tar.gz",
+        "checksum": "25ffea5b8d4a13120cbff9cdeee10759f0149f522efa3b090de7e49fcfe44ca4",
+        "contents_checksum": "73be18b59b731a6c2aca12e254c0248039ee0b4d3f460198f84842a9753286c9",
+        "size": 16860591,
+        "source": "components/google-cloud-sdk-cbt-linux-x86-20240329151455.tar.gz",
         "type": "tar"
       },
       "dependencies": [
@@ -2312,16 +2312,16 @@
       },
       "platform_required": false,
       "version": {
-        "build_number": 20240112150613,
-        "version_string": "1.17.2"
+        "build_number": 20240329151455,
+        "version_string": "1.19.0"
       }
     },
     {
       "data": {
-        "checksum": "23df574487ba9ddb32ffc8c387a0d428ef27be297d5769800710974266d4932c",
-        "contents_checksum": "8134edf246fa051787bf993034e8f1800bb1f04620bbd13cc1f40e965bf32599",
-        "size": 17340658,
-        "source": "components/google-cloud-sdk-cbt-linux-x86_64-20240112150613.tar.gz",
+        "checksum": "0e5a55bd053d76d9f22223728241e1a0ca89b36661a7e886250de942da8afd76",
+        "contents_checksum": "fb9e07d468b2d3043632c4b1ace676cc503e5e5efa5b8c3a757f1725cb142dbc",
+        "size": 18166629,
+        "source": "components/google-cloud-sdk-cbt-linux-x86_64-20240329151455.tar.gz",
         "type": "tar"
       },
       "dependencies": [
@@ -2345,16 +2345,16 @@
       },
       "platform_required": false,
       "version": {
-        "build_number": 20240112150613,
-        "version_string": "1.17.2"
+        "build_number": 20240329151455,
+        "version_string": "1.19.0"
       }
     },
     {
       "data": {
-        "checksum": "ae60d8116338562cc98ba1ad852842760d2ab78016377ec827701c80dc7b7b41",
-        "contents_checksum": "61f3390cc8c868a77e378f9d4aa37502d4e04357d8ab33735f1e5418a3a225e7",
-        "size": 16750394,
-        "source": "components/google-cloud-sdk-cbt-windows-x86-20240112150613.tar.gz",
+        "checksum": "b6b9ad0a151bcddc67829349ed03f18b21598b6ced116eb721947acabe4cae10",
+        "contents_checksum": "13b82fdff12b1385cdf3fc71da26f449c2668cf45fff1d0fb76d3c9b9992a64c",
+        "size": 17268775,
+        "source": "components/google-cloud-sdk-cbt-windows-x86-20240329151455.tar.gz",
         "type": "tar"
       },
       "dependencies": [
@@ -2378,16 +2378,16 @@
       },
       "platform_required": false,
       "version": {
-        "build_number": 20240112150613,
-        "version_string": "1.17.2"
+        "build_number": 20240329151455,
+        "version_string": "1.19.0"
       }
     },
     {
       "data": {
-        "checksum": "ce201b8cb3e4e10d4ae1cbec9ff253474dff5931eaff9c1d260b117ac03781e3",
-        "contents_checksum": "d28a7a0d5156bff526e51932172d63a6bc8fc6258138551e81ffc241e20faeb3",
-        "size": 17415844,
-        "source": "components/google-cloud-sdk-cbt-windows-x86_64-20240112150613.tar.gz",
+        "checksum": "ba26da1afb70320e7faeecd5f0378b3d9e16dd7e51091c373c79a53d1fb0fde4",
+        "contents_checksum": "492d56556efb6c662c8702d66dc4b48e837de0112fc1e949ea7e24671eee5840",
+        "size": 18413114,
+        "source": "components/google-cloud-sdk-cbt-windows-x86_64-20240329151455.tar.gz",
         "type": "tar"
       },
       "dependencies": [
@@ -2411,8 +2411,8 @@
       },
       "platform_required": false,
       "version": {
-        "build_number": 20240112150613,
-        "version_string": "1.17.2"
+        "build_number": 20240329151455,
+        "version_string": "1.19.0"
       }
     },
     {
@@ -2572,10 +2572,10 @@
     },
     {
       "data": {
-        "checksum": "412203bd80a2ce63b6893f2fc7af0c9c86a4725bd9cf4aeca6a6905269f267b8",
-        "contents_checksum": "f43be764e885bb2206a1b7fdacabd0fca828cd76d95e5006c9509645dfd27b0e",
-        "size": 46597550,
-        "source": "components/google-cloud-sdk-cloud-firestore-emulator-20240229170130.tar.gz",
+        "checksum": "93285cbe088cafc8d3761476b276be1c19a3718ac4545692ece4e6cc147deed8",
+        "contents_checksum": "fe301599250d79f91f06cfdf570fa5815c82414d322d085b1fa47a364bf7ae12",
+        "size": 47265060,
+        "source": "components/google-cloud-sdk-cloud-firestore-emulator-20240503145345.tar.gz",
         "type": "tar"
       },
       "dependencies": [
@@ -2592,8 +2592,8 @@
       "platform": {},
       "platform_required": false,
       "version": {
-        "build_number": 20240229170130,
-        "version_string": "1.19.2"
+        "build_number": 20240503145345,
+        "version_string": "1.19.6"
       }
     },
     {
@@ -2818,15 +2818,15 @@
       "platform_required": false,
       "version": {
         "build_number": 0,
-        "version_string": "1.5.13"
+        "version_string": "1.5.16"
       }
     },
     {
       "data": {
-        "checksum": "7c8f4db773fae956a385c746203ef7d2784d992fd674cdbacf59720c4d3e0ca6",
-        "contents_checksum": "d3df9908458ec5b1115dd1c439b256fcc7ba00533f0c7363ac09685f5bc95790",
-        "size": 37731211,
-        "source": "components/google-cloud-sdk-cloud-spanner-emulator-linux-x86_64-20240106004423.tar.gz",
+        "checksum": "555c0b4202082b7e94bc9d910460b4f28d2ea6ebf4d51a58825d244331961f84",
+        "contents_checksum": "e0ad5cac6f972f24e4390fd7d9d54420bc7432ecdcb9c21a299a07ecb893d8cd",
+        "size": 38255843,
+        "source": "components/google-cloud-sdk-cloud-spanner-emulator-linux-x86_64-20240426154730.tar.gz",
         "type": "tar"
       },
       "dependencies": [
@@ -2851,8 +2851,275 @@
       },
       "platform_required": false,
       "version": {
-        "build_number": 20240106004423,
-        "version_string": "1.5.13"
+        "build_number": 20240426154730,
+        "version_string": "1.5.16"
+      }
+    },
+    {
+      "dependencies": [
+        "cloud-sql-proxy-darwin-arm",
+        "cloud-sql-proxy-darwin-x86_64",
+        "cloud-sql-proxy-linux-arm",
+        "cloud-sql-proxy-linux-x86",
+        "cloud-sql-proxy-linux-x86_64",
+        "cloud-sql-proxy-windows-x86",
+        "cloud-sql-proxy-windows-x86_64"
+      ],
+      "details": {
+        "description": "Provides cloud-sql-proxy executable. See https://github.com/GoogleCloudPlatform/cloud-sql-proxy",
+        "display_name": "Cloud SQL Proxy v2"
+      },
+      "id": "cloud-sql-proxy",
+      "is_configuration": false,
+      "is_hidden": false,
+      "is_required": false,
+      "platform": {
+        "architectures": [
+          "arm",
+          "x86",
+          "x86_64"
+        ],
+        "operating_systems": [
+          "LINUX",
+          "MACOSX",
+          "WINDOWS"
+        ]
+      },
+      "platform_required": false,
+      "version": {
+        "build_number": 0,
+        "version_string": "2.10.0"
+      }
+    },
+    {
+      "data": {
+        "checksum": "12ab4fc64c3c2972e51fd18144b9633e3dcd6a2190dd8484d63f25f4346f46f7",
+        "contents_checksum": "7739e095d51e0ad78c0c801e61ce178700cb5b8490ec65f5fa7bf4322897783e",
+        "size": 13848476,
+        "source": "components/google-cloud-sdk-cloud-sql-proxy-darwin-arm-20240412130805.tar.gz",
+        "type": "tar"
+      },
+      "dependencies": [
+        "cloud-sql-proxy"
+      ],
+      "details": {
+        "description": "Provides cloud-sql-proxy executable. See https://github.com/GoogleCloudPlatform/cloud-sql-proxy",
+        "display_name": "Cloud SQL Proxy v2"
+      },
+      "id": "cloud-sql-proxy-darwin-arm",
+      "is_configuration": false,
+      "is_hidden": true,
+      "is_required": false,
+      "platform": {
+        "architectures": [
+          "arm"
+        ],
+        "operating_systems": [
+          "MACOSX"
+        ]
+      },
+      "platform_required": false,
+      "version": {
+        "build_number": 20240412130805,
+        "version_string": "2.10.0"
+      }
+    },
+    {
+      "data": {
+        "checksum": "fdc1ed4057693e802e480353479a553694423b61a23cbafb3ea1a2237e82bb68",
+        "contents_checksum": "87f96d979d238df85b2c2cde4c40d4a5f7869d36b86a0966c38a7c5df6e34d3a",
+        "size": 14482528,
+        "source": "components/google-cloud-sdk-cloud-sql-proxy-darwin-x86_64-20240412130805.tar.gz",
+        "type": "tar"
+      },
+      "dependencies": [
+        "cloud-sql-proxy"
+      ],
+      "details": {
+        "description": "Provides cloud-sql-proxy executable. See https://github.com/GoogleCloudPlatform/cloud-sql-proxy",
+        "display_name": "Cloud SQL Proxy v2"
+      },
+      "id": "cloud-sql-proxy-darwin-x86_64",
+      "is_configuration": false,
+      "is_hidden": true,
+      "is_required": false,
+      "platform": {
+        "architectures": [
+          "x86_64"
+        ],
+        "operating_systems": [
+          "MACOSX"
+        ]
+      },
+      "platform_required": false,
+      "version": {
+        "build_number": 20240412130805,
+        "version_string": "2.10.0"
+      }
+    },
+    {
+      "data": {
+        "checksum": "6ec1b56eae8b797f488e02e01f390a7da2136e812cd78e26b31770f6f4f33005",
+        "contents_checksum": "afc9d080ec70126505ccfc1afd385ba3f3d2c81a9a9f7481cd8865439d384117",
+        "size": 13586220,
+        "source": "components/google-cloud-sdk-cloud-sql-proxy-linux-arm-20240412130805.tar.gz",
+        "type": "tar"
+      },
+      "dependencies": [
+        "cloud-sql-proxy"
+      ],
+      "details": {
+        "description": "Provides cloud-sql-proxy executable. See https://github.com/GoogleCloudPlatform/cloud-sql-proxy",
+        "display_name": "Cloud SQL Proxy v2"
+      },
+      "id": "cloud-sql-proxy-linux-arm",
+      "is_configuration": false,
+      "is_hidden": true,
+      "is_required": false,
+      "platform": {
+        "architectures": [
+          "arm"
+        ],
+        "operating_systems": [
+          "LINUX"
+        ]
+      },
+      "platform_required": false,
+      "version": {
+        "build_number": 20240412130805,
+        "version_string": "2.10.0"
+      }
+    },
+    {
+      "data": {
+        "checksum": "c876aa706464616c5a2f612f1860b4a6098079a54fe3f579d93b60d0c7c0ce00",
+        "contents_checksum": "d0b6a430d200d210847762ab7b84160aa5196273112d837d97123a45c6864eae",
+        "size": 13629073,
+        "source": "components/google-cloud-sdk-cloud-sql-proxy-linux-x86-20240412130805.tar.gz",
+        "type": "tar"
+      },
+      "dependencies": [
+        "cloud-sql-proxy"
+      ],
+      "details": {
+        "description": "Provides cloud-sql-proxy executable. See https://github.com/GoogleCloudPlatform/cloud-sql-proxy",
+        "display_name": "Cloud SQL Proxy v2"
+      },
+      "id": "cloud-sql-proxy-linux-x86",
+      "is_configuration": false,
+      "is_hidden": true,
+      "is_required": false,
+      "platform": {
+        "architectures": [
+          "x86"
+        ],
+        "operating_systems": [
+          "LINUX"
+        ]
+      },
+      "platform_required": false,
+      "version": {
+        "build_number": 20240412130805,
+        "version_string": "2.10.0"
+      }
+    },
+    {
+      "data": {
+        "checksum": "8738b48da32f96d08859045c0dd75f03c7e455fe5cab22278ccb717de4c99270",
+        "contents_checksum": "351c1514a9c63b9d0e730c465c724a84400d91ad45658213f763a51eae6f04bf",
+        "size": 14521265,
+        "source": "components/google-cloud-sdk-cloud-sql-proxy-linux-x86_64-20240412130805.tar.gz",
+        "type": "tar"
+      },
+      "dependencies": [
+        "cloud-sql-proxy"
+      ],
+      "details": {
+        "description": "Provides cloud-sql-proxy executable. See https://github.com/GoogleCloudPlatform/cloud-sql-proxy",
+        "display_name": "Cloud SQL Proxy v2"
+      },
+      "id": "cloud-sql-proxy-linux-x86_64",
+      "is_configuration": false,
+      "is_hidden": true,
+      "is_required": false,
+      "platform": {
+        "architectures": [
+          "x86_64"
+        ],
+        "operating_systems": [
+          "LINUX"
+        ]
+      },
+      "platform_required": false,
+      "version": {
+        "build_number": 20240412130805,
+        "version_string": "2.10.0"
+      }
+    },
+    {
+      "data": {
+        "checksum": "83628225ad611dabac12a473c532f876992ea5cdcb822183812a6e21003506af",
+        "contents_checksum": "c58a80989336d672aca1b9ea393998fb5bd01339cf561197f14c497a91b84062",
+        "size": 13662947,
+        "source": "components/google-cloud-sdk-cloud-sql-proxy-windows-x86-20240412130805.tar.gz",
+        "type": "tar"
+      },
+      "dependencies": [
+        "cloud-sql-proxy"
+      ],
+      "details": {
+        "description": "Provides cloud-sql-proxy executable. See https://github.com/GoogleCloudPlatform/cloud-sql-proxy",
+        "display_name": "Cloud SQL Proxy v2"
+      },
+      "id": "cloud-sql-proxy-windows-x86",
+      "is_configuration": false,
+      "is_hidden": true,
+      "is_required": false,
+      "platform": {
+        "architectures": [
+          "x86"
+        ],
+        "operating_systems": [
+          "WINDOWS"
+        ]
+      },
+      "platform_required": false,
+      "version": {
+        "build_number": 20240412130805,
+        "version_string": "2.10.0"
+      }
+    },
+    {
+      "data": {
+        "checksum": "5f9775a84500409f09cf4dc02d279e306414c4a555356ae7097c785349b9462a",
+        "contents_checksum": "45f653110069a220eec0f70bf65e54470ae1c682ea7a6f5f369fe6a2610192d2",
+        "size": 14417645,
+        "source": "components/google-cloud-sdk-cloud-sql-proxy-windows-x86_64-20240412130805.tar.gz",
+        "type": "tar"
+      },
+      "dependencies": [
+        "cloud-sql-proxy"
+      ],
+      "details": {
+        "description": "Provides cloud-sql-proxy executable. See https://github.com/GoogleCloudPlatform/cloud-sql-proxy",
+        "display_name": "Cloud SQL Proxy v2"
+      },
+      "id": "cloud-sql-proxy-windows-x86_64",
+      "is_configuration": false,
+      "is_hidden": true,
+      "is_required": false,
+      "platform": {
+        "architectures": [
+          "x86_64"
+        ],
+        "operating_systems": [
+          "WINDOWS"
+        ]
+      },
+      "platform_required": false,
+      "version": {
+        "build_number": 20240412130805,
+        "version_string": "2.10.0"
       }
     },
     {
@@ -2871,7 +3138,7 @@
       },
       "id": "cloud_sql_proxy",
       "is_configuration": false,
-      "is_hidden": false,
+      "is_hidden": true,
       "is_required": false,
       "platform": {
         "architectures": [
@@ -3322,10 +3589,10 @@
     },
     {
       "data": {
-        "checksum": "394b9a3441b3a88962ee3fe01e2b816671466ca55c244826adc1093395a08117",
-        "contents_checksum": "b22a86659b93e65751c75128448d23b9d935b9a85c46301498bc4054256aff86",
-        "size": 23893614,
-        "source": "components/google-cloud-sdk-core-20240229170130.tar.gz",
+        "checksum": "e8e87ff80c3f46ff4bce660c584ebe7bae8679366c9d2bf5ec5f98c06e450aa5",
+        "contents_checksum": "56ce80562703967dc39b2b05e6dd814e07cfe07a078706d9f0ad6ce0716495c8",
+        "size": 19446060,
+        "source": "components/google-cloud-sdk-core-20240503145345.tar.gz",
         "type": "tar"
       },
       "dependencies": [
@@ -3346,8 +3613,8 @@
       "platform": {},
       "platform_required": false,
       "version": {
-        "build_number": 20240229170130,
-        "version_string": "2024.02.29"
+        "build_number": 20240503145345,
+        "version_string": "2024.05.03"
       }
     },
     {
@@ -4138,10 +4405,10 @@
     },
     {
       "data": {
-        "checksum": "199a922d9427440154dbd427650aac513dde9dcf5fb904f696011e208af16436",
-        "contents_checksum": "bd1cee79ccb1075e6174ce72da21507e22c9309c7d453ec4c0365c38184dbf72",
-        "size": 17398946,
-        "source": "components/google-cloud-sdk-gcloud-deps-20240229170130.tar.gz",
+        "checksum": "2678d4b85b8247cb896f38bb6741e6e30c9e5f2c65e495e85795131493ef5acc",
+        "contents_checksum": "91de55f1ec585b9e8326f529655b1c550739f8f864059b47e2d7554c4fc170a6",
+        "size": 17408040,
+        "source": "components/google-cloud-sdk-gcloud-deps-20240503145345.tar.gz",
         "type": "tar"
       },
       "dependencies": [
@@ -4164,8 +4431,8 @@
       "platform": {},
       "platform_required": false,
       "version": {
-        "build_number": 20240229170130,
-        "version_string": "2024.02.29"
+        "build_number": 20240503145345,
+        "version_string": "2024.05.03"
       }
     },
     {
@@ -4401,10 +4668,10 @@
     },
     {
       "data": {
-        "checksum": "5002cd1d0b639317a879d8c6eaf1c8b65ae30d908be20168b3d1126a7a9931fb",
-        "contents_checksum": "be1175193dbcc96732f074ee8916e2d01bae057865ca4cc9af4fce96669a2e82",
-        "size": 6729281,
-        "source": "components/google-cloud-sdk-gcloud-man-pages-nix-20240229170130.tar.gz",
+        "checksum": "19aaaf05ce45d6a62dac77e167d4315563dcadddfa9838da2ac9bc9df4ccac62",
+        "contents_checksum": "b2c128b9a1602e364e4801df1f6ec76004cd84fa2ab25c9df1b309eec73377b3",
+        "size": 6857693,
+        "source": "components/google-cloud-sdk-gcloud-man-pages-nix-20240503145345.tar.gz",
         "type": "tar"
       },
       "dependencies": [
@@ -4429,7 +4696,7 @@
       },
       "platform_required": false,
       "version": {
-        "build_number": 20240229170130,
+        "build_number": 20240503145345,
         "version_string": ""
       }
     },
@@ -4865,7 +5132,7 @@
       },
       "id": "istioctl",
       "is_configuration": false,
-      "is_hidden": true,
+      "is_hidden": false,
       "is_required": false,
       "platform": {
         "architectures": [
@@ -4880,15 +5147,15 @@
       "platform_required": false,
       "version": {
         "build_number": 0,
-        "version_string": "1.20.311"
+        "version_string": "1.20.47"
       }
     },
     {
       "data": {
-        "checksum": "e21e0b1b1a143e74b1b0ba7392ed4fdd1cf28323bd74ef59f116e218f49824fb",
-        "contents_checksum": "ea25e0ffad0fcd5877d24e86ef5b96be2e86446f432926385ebfc08590a9be36",
-        "size": 26043155,
-        "source": "components/google-cloud-sdk-istioctl-darwin-arm-20240229170130.tar.gz",
+        "checksum": "c5b61b4e3b0d5434e4610d706270b5701ef085fd35e1e53541876bb4e03d678a",
+        "contents_checksum": "a2bd9195d75037b1c96b9378109e6a2313d52476c19f5ca3e3d17767c70310ed",
+        "size": 26052154,
+        "source": "components/google-cloud-sdk-istioctl-darwin-arm-20240412130805.tar.gz",
         "type": "tar"
       },
       "dependencies": [
@@ -4912,16 +5179,16 @@
       },
       "platform_required": false,
       "version": {
-        "build_number": 20240229170130,
-        "version_string": "1.20.311"
+        "build_number": 20240412130805,
+        "version_string": "1.20.47"
       }
     },
     {
       "data": {
-        "checksum": "e26416a75034738c5decb4e88b69f060849db045eb1a416dbe5def38ca036051",
-        "contents_checksum": "9ed26dc784a70ed4f98d845dac4ba8b298a90dcdfb169e665e1756cbbfadbfc7",
-        "size": 26886694,
-        "source": "components/google-cloud-sdk-istioctl-darwin-x86_64-20240229170130.tar.gz",
+        "checksum": "2f1b4a1df42ae31d4cd0b301c47d30f998497a701e301ff1a4f81902318b93a7",
+        "contents_checksum": "a41f542d1cb16bf4118643ded861c94ba3cd9dc378d601fd572042360f38e3dc",
+        "size": 26898803,
+        "source": "components/google-cloud-sdk-istioctl-darwin-x86_64-20240412130805.tar.gz",
         "type": "tar"
       },
       "dependencies": [
@@ -4945,16 +5212,16 @@
       },
       "platform_required": false,
       "version": {
-        "build_number": 20240229170130,
-        "version_string": "1.20.311"
+        "build_number": 20240412130805,
+        "version_string": "1.20.47"
       }
     },
     {
       "data": {
-        "checksum": "5fbeafb59962e1f5e42b874caf897a151ce05f2082063e04edddd054be1b9b78",
-        "contents_checksum": "62e413e41af9e75ae3523f45e5e60063ce9363d9b73e7b5b427e6e451bbc6816",
-        "size": 22993370,
-        "source": "components/google-cloud-sdk-istioctl-linux-arm-20240229170130.tar.gz",
+        "checksum": "311368b6b4812b945dbe77c3921d89477bbc7a8dbbd90bc871a927621f4f564c",
+        "contents_checksum": "4fbd1efcce42b8e2ab3edff729239cb27ccdc0f4b005fe18f65062abd9ec9e70",
+        "size": 23005079,
+        "source": "components/google-cloud-sdk-istioctl-linux-arm-20240412130805.tar.gz",
         "type": "tar"
       },
       "dependencies": [
@@ -4978,16 +5245,16 @@
       },
       "platform_required": false,
       "version": {
-        "build_number": 20240229170130,
-        "version_string": "1.20.311"
+        "build_number": 20240412130805,
+        "version_string": "1.20.47"
       }
     },
     {
       "data": {
-        "checksum": "167b9dc19cb7b64b5eca9e0efecf609a621eb18ce7ece2288a36038e1124658e",
-        "contents_checksum": "1d3a6f9870ab2b0b693927d32154cd44b4686079a9c117590cdc2b385b040869",
-        "size": 25190186,
-        "source": "components/google-cloud-sdk-istioctl-linux-x86_64-20240229170130.tar.gz",
+        "checksum": "5f9f4d0aee5adc83960591c9413e523e914c86538a08895958fba3d6610e2e92",
+        "contents_checksum": "4523dd63d1fd52a26170cb366da1bb492a631d36765bdb9b6037af42b70ef3b2",
+        "size": 25206798,
+        "source": "components/google-cloud-sdk-istioctl-linux-x86_64-20240412130805.tar.gz",
         "type": "tar"
       },
       "dependencies": [
@@ -5011,8 +5278,8 @@
       },
       "platform_required": false,
       "version": {
-        "build_number": 20240229170130,
-        "version_string": "1.20.311"
+        "build_number": 20240412130805,
+        "version_string": "1.20.47"
       }
     },
     {
@@ -5180,10 +5447,10 @@
     },
     {
       "data": {
-        "checksum": "e06b2f2bd331421fa8f8c5776b7370b793101232a8316c61420ebad9622e2709",
-        "contents_checksum": "d7c1385f3b9bedea994733230851e6d3548ea4be8f5014b1feadbf4ca2c6ca46",
+        "checksum": "8ce711be6e55790700edd6d6f7c03a2fa5a1c5b8cea7571aab75300e976b924c",
+        "contents_checksum": "90557d61aa4010c4cf40966c482a9560a6ebab9f66fe3858db13134d1a3766fc",
         "size": 35936,
-        "source": "components/google-cloud-sdk-kubectl-20240209195330.tar.gz",
+        "source": "components/google-cloud-sdk-kubectl-20240322135349.tar.gz",
         "type": "tar"
       },
       "dependencies": [
@@ -5207,16 +5474,16 @@
       "platform": {},
       "platform_required": true,
       "version": {
-        "build_number": 20240209195330,
-        "version_string": "1.26.13"
+        "build_number": 20240322135349,
+        "version_string": "1.26.15"
       }
     },
     {
       "data": {
-        "checksum": "ad4230981ddba174dc301d5ed31704c86819b99de90fc0a391d379197b221ff0",
-        "contents_checksum": "8208474ff6408f57a030648f9e0409eb66f854f95eb1cc8fc28897e3dae882b7",
-        "size": 76487537,
-        "source": "components/google-cloud-sdk-kubectl-darwin-arm-20240209195330.tar.gz",
+        "checksum": "893498f06440eac7fe42bd0c42e83ab1e2fd30a0bd1d53ddd8ebfebc27d8ca8a",
+        "contents_checksum": "71c9869732c57c7c66cec80e59ab20bcc2e94b1cc79dce1c8093b2f0862b1383",
+        "size": 91161627,
+        "source": "components/google-cloud-sdk-kubectl-darwin-arm-20240426154730.tar.gz",
         "type": "tar"
       },
       "dependencies": [
@@ -5241,16 +5508,16 @@
       },
       "platform_required": true,
       "version": {
-        "build_number": 20240209195330,
-        "version_string": "1.26.13"
+        "build_number": 20240426154730,
+        "version_string": "1.26.15"
       }
     },
     {
       "data": {
-        "checksum": "7154fc7e724a41ba9109fc4d3211fdfb24bb9c706f82175a0543158a74ea64f4",
-        "contents_checksum": "1db2fb77158d4aeb37b895ca7beb34d2380b6d7bda97e18189c03a235473a26f",
-        "size": 80131408,
-        "source": "components/google-cloud-sdk-kubectl-darwin-x86_64-20240209195330.tar.gz",
+        "checksum": "ddf25a006aeedb5e717d474dc695882caf35a4befaace22f28d9a4d0fee28bae",
+        "contents_checksum": "ac249c8eca65960152719c9440c197a0be335fa1d2e724a32e77418dacd6dd12",
+        "size": 96033579,
+        "source": "components/google-cloud-sdk-kubectl-darwin-x86_64-20240426154730.tar.gz",
         "type": "tar"
       },
       "dependencies": [
@@ -5275,16 +5542,16 @@
       },
       "platform_required": true,
       "version": {
-        "build_number": 20240209195330,
-        "version_string": "1.26.13"
+        "build_number": 20240426154730,
+        "version_string": "1.26.15"
       }
     },
     {
       "data": {
-        "checksum": "655be0e96cc23f6e04c4ec176ef19d6ac4164f0093de7e6a5ab882128bacf3cc",
-        "contents_checksum": "69a8d347c6cc78a42b8ec340794632e449b2ceac8f7a8cf3e677f97743fa6e66",
-        "size": 72277260,
-        "source": "components/google-cloud-sdk-kubectl-linux-arm-20240209195330.tar.gz",
+        "checksum": "25279f7ff336d39f312dd6f363100b8329ad19e402c378230bfb2a8c4181325e",
+        "contents_checksum": "255cb5b298d9ddb4f81aa7571d452e3adab7c464e1c2b4686d1bfd5eec7e5abd",
+        "size": 86862918,
+        "source": "components/google-cloud-sdk-kubectl-linux-arm-20240426154730.tar.gz",
         "type": "tar"
       },
       "dependencies": [
@@ -5309,16 +5576,16 @@
       },
       "platform_required": true,
       "version": {
-        "build_number": 20240209195330,
-        "version_string": "1.26.13"
+        "build_number": 20240426154730,
+        "version_string": "1.26.15"
       }
     },
     {
       "data": {
-        "checksum": "37931d1405a46bac8833f106c35734512445fc218cc9f1e007604bb48cdee55b",
-        "contents_checksum": "8222dd939577e50f8ffc0f667d6a2ccbd88c8a0813925f4889a58d27b180ff98",
-        "size": 71637401,
-        "source": "components/google-cloud-sdk-kubectl-linux-x86-20240209195330.tar.gz",
+        "checksum": "6e8d0ea5ba1b88b82c902d869e54cb42d69cab4544e9b87190e8a9751b8e7510",
+        "contents_checksum": "5ef6f72d98198ce6ec9a380fab8925259fca9aef9e5afc22bef4f1d8d01c3cf4",
+        "size": 85033644,
+        "source": "components/google-cloud-sdk-kubectl-linux-x86-20240426154730.tar.gz",
         "type": "tar"
       },
       "dependencies": [
@@ -5343,16 +5610,16 @@
       },
       "platform_required": true,
       "version": {
-        "build_number": 20240209195330,
-        "version_string": "1.26.13"
+        "build_number": 20240426154730,
+        "version_string": "1.26.15"
       }
     },
     {
       "data": {
-        "checksum": "479be7e5c55b77eacb26a86afb8063ee0c22664eca0af154c6725c6d413f4631",
-        "contents_checksum": "0d9e46f2a36f34ac1d485901b2243bbedc5f66e54cb3d8e42172cbc6484075ea",
-        "size": 76232083,
-        "source": "components/google-cloud-sdk-kubectl-linux-x86_64-20240209195330.tar.gz",
+        "checksum": "2463ae5fa3cdb8952183845b4b1d5a335edfb22716f38525441121a8233177f0",
+        "contents_checksum": "41dc3fa15a64ab76478e164cb48bfaf6e93bceaec8edc32772a20deec1a592ea",
+        "size": 91798182,
+        "source": "components/google-cloud-sdk-kubectl-linux-x86_64-20240426154730.tar.gz",
         "type": "tar"
       },
       "dependencies": [
@@ -5377,8 +5644,8 @@
       },
       "platform_required": true,
       "version": {
-        "build_number": 20240209195330,
-        "version_string": "1.26.13"
+        "build_number": 20240426154730,
+        "version_string": "1.26.15"
       }
     },
     {
@@ -5411,15 +5678,15 @@
       "platform_required": false,
       "version": {
         "build_number": 0,
-        "version_string": "1.5.0"
+        "version_string": "1.5.1"
       }
     },
     {
       "data": {
-        "checksum": "ca1e67289f1d377b6fc300777cdd8853a4ebc7eb11c00db85a3e7394c8daea30",
-        "contents_checksum": "3d35d8343042427849f27fe09652e94dbb563ebb6026ded792641beb1c536ebd",
-        "size": 21674622,
-        "source": "components/google-cloud-sdk-kubectl-oidc-darwin-arm-20231201141418.tar.gz",
+        "checksum": "668657665d86db6d1c2ca53116f022799e9b6202d7e6e0080acd9a89f2e69667",
+        "contents_checksum": "55b5c287ac965c8cb331fcfa27cf8a7a346ceb103eef9e7ff603067a3b8d2217",
+        "size": 21872424,
+        "source": "components/google-cloud-sdk-kubectl-oidc-darwin-arm-20240426154730.tar.gz",
         "type": "tar"
       },
       "dependencies": [
@@ -5443,16 +5710,16 @@
       },
       "platform_required": false,
       "version": {
-        "build_number": 20231201141418,
-        "version_string": "1.5.0"
+        "build_number": 20240426154730,
+        "version_string": "1.5.1"
       }
     },
     {
       "data": {
-        "checksum": "d8b175936d29c11412e099627cbc9d4bc4574e7201a48bd045714aa4d5039d97",
-        "contents_checksum": "b4c5609dd10b63e9946c1afaf9a6e242fe3b09cb0d5c0c453e4ead4fb173c4e2",
-        "size": 22732154,
-        "source": "components/google-cloud-sdk-kubectl-oidc-darwin-x86_64-20231201141418.tar.gz",
+        "checksum": "efee37ae3fd4c68bd04b7d851a3a737d4730d1d2c1ea1d1ae0ff1c4b9b415e2e",
+        "contents_checksum": "d5caa4ebe32784b39af30c044d1526cd2c9cfc468912f151c50591818f86981f",
+        "size": 22957587,
+        "source": "components/google-cloud-sdk-kubectl-oidc-darwin-x86_64-20240426154730.tar.gz",
         "type": "tar"
       },
       "dependencies": [
@@ -5476,16 +5743,16 @@
       },
       "platform_required": false,
       "version": {
-        "build_number": 20231201141418,
-        "version_string": "1.5.0"
+        "build_number": 20240426154730,
+        "version_string": "1.5.1"
       }
     },
     {
       "data": {
-        "checksum": "da25e182095d25746563ded62b84c614f6ba87514e751e1f445b8ef9ddbcf239",
-        "contents_checksum": "f1bd3477dd4ad77ed8c02631cfd0b7e102000e6bac495dcd3fb69daf6b21ba93",
-        "size": 21172499,
-        "source": "components/google-cloud-sdk-kubectl-oidc-linux-arm-20231201141418.tar.gz",
+        "checksum": "c1bffc495c0f18b7a8b7231815d03ad050d8f7da54e3ae8fb252f30bd9774553",
+        "contents_checksum": "ac25a44fb809f2b4c158abccb88b1a2e66433be79bf46092522f07b02d72ab68",
+        "size": 21399468,
+        "source": "components/google-cloud-sdk-kubectl-oidc-linux-arm-20240426154730.tar.gz",
         "type": "tar"
       },
       "dependencies": [
@@ -5509,16 +5776,16 @@
       },
       "platform_required": false,
       "version": {
-        "build_number": 20231201141418,
-        "version_string": "1.5.0"
+        "build_number": 20240426154730,
+        "version_string": "1.5.1"
       }
     },
     {
       "data": {
-        "checksum": "94eb2344e8f1a5cff5b2f1db0c35e3cfc378336f148a701ac94e4111f17069f1",
-        "contents_checksum": "9ddfa977b16e32f97c5d5ad574ff09ae06f67b87f218f45a178cfae5f88d4355",
-        "size": 22854824,
-        "source": "components/google-cloud-sdk-kubectl-oidc-linux-x86_64-20231201141418.tar.gz",
+        "checksum": "314b8b36331fc2b67fee555fcfb7c0aa1c4c742dcb995164f9822fc513f269de",
+        "contents_checksum": "a7e6a84feb050b265084ae1ea6d8bd0898258b76e7f6226c01d9d8e65fceeb5d",
+        "size": 23109484,
+        "source": "components/google-cloud-sdk-kubectl-oidc-linux-x86_64-20240426154730.tar.gz",
         "type": "tar"
       },
       "dependencies": [
@@ -5542,16 +5809,16 @@
       },
       "platform_required": false,
       "version": {
-        "build_number": 20231201141418,
-        "version_string": "1.5.0"
+        "build_number": 20240426154730,
+        "version_string": "1.5.1"
       }
     },
     {
       "data": {
-        "checksum": "386b201a127ea6723ba4f4ac943c596310d03aa0568d947f23980577fc0c5685",
-        "contents_checksum": "72ccfee0b039eaf5d4bd5445044806c84a1af5d55318de032a372af0fdf779c4",
-        "size": 23111830,
-        "source": "components/google-cloud-sdk-kubectl-oidc-windows-x86_64-20231201141418.tar.gz",
+        "checksum": "b72cb005890e61307350e45fed931c783f9954a18249210059f780b42ae0c6fc",
+        "contents_checksum": "cabcb7396bd79cf1e80baeb1a53da5e56497ce49a97fbd9e33127da81999e0d7",
+        "size": 23361379,
+        "source": "components/google-cloud-sdk-kubectl-oidc-windows-x86_64-20240426154730.tar.gz",
         "type": "tar"
       },
       "dependencies": [
@@ -5575,16 +5842,16 @@
       },
       "platform_required": false,
       "version": {
-        "build_number": 20231201141418,
-        "version_string": "1.5.0"
+        "build_number": 20240426154730,
+        "version_string": "1.5.1"
       }
     },
     {
       "data": {
-        "checksum": "80b067c1eed2401d32b2078e9296322ceecad8de4903105c8627a182bc626f89",
-        "contents_checksum": "008b98a6902a2d260427a6067f7b26278c947c3da0f65a135bea6806906de7cc",
-        "size": 75077053,
-        "source": "components/google-cloud-sdk-kubectl-windows-x86-20240209195330.tar.gz",
+        "checksum": "ea209e06d08eed40e21b67d72464b125a44c0bff85e846d44aef998ddfe5fc1f",
+        "contents_checksum": "b4a4f3ff7f7b3c687cf47a38813226385f7e893fdcd9a7a5d60b1dbdf99ae2a3",
+        "size": 89369395,
+        "source": "components/google-cloud-sdk-kubectl-windows-x86-20240426154730.tar.gz",
         "type": "tar"
       },
       "dependencies": [
@@ -5611,16 +5878,16 @@
       },
       "platform_required": true,
       "version": {
-        "build_number": 20240209195330,
-        "version_string": "1.26.13"
+        "build_number": 20240426154730,
+        "version_string": "1.26.15"
       }
     },
     {
       "data": {
-        "checksum": "a632645797fb65db3f112548543ce4f7b1e048963f264bf5bc9e318f9f85cda2",
-        "contents_checksum": "bcdf97a387126e7b831c903b905bc96af608ff2fc5d2013482280535f077c21c",
-        "size": 77301897,
-        "source": "components/google-cloud-sdk-kubectl-windows-x86_64-20240209195330.tar.gz",
+        "checksum": "0841109ca38d58e3dde3b54854b52ca1a0ac3405cbd7c76ea23cad5c31bdad2b",
+        "contents_checksum": "d024e22580bf9c9e3e35a5952241cae4681411e9b33c76f19b1b4b623b7269b1",
+        "size": 94204602,
+        "source": "components/google-cloud-sdk-kubectl-windows-x86_64-20240426154730.tar.gz",
         "type": "tar"
       },
       "dependencies": [
@@ -5647,8 +5914,8 @@
       },
       "platform_required": true,
       "version": {
-        "build_number": 20240209195330,
-        "version_string": "1.26.13"
+        "build_number": 20240426154730,
+        "version_string": "1.26.15"
       }
     },
     {
@@ -6398,15 +6665,15 @@
       "platform_required": false,
       "version": {
         "build_number": 0,
-        "version_string": "1.17.2-rc.1"
+        "version_string": "1.17.3-rc.2"
       }
     },
     {
       "data": {
-        "checksum": "3fd0c679ed6a308edc3460a04e939ef67152e9717ebac4c18b38e98edac51cea",
-        "contents_checksum": "bc7d9a0ef3f3a61d1d4d59a500ec650acae2425ab17b723bc4c2ad5d05a0837a",
-        "size": 29981784,
-        "source": "components/google-cloud-sdk-nomos-darwin-x86_64-20240229170130.tar.gz",
+        "checksum": "d419aaa0a419d8a01b025d5b79372e92d0b08def255e7a8bfb0361c8332267f6",
+        "contents_checksum": "d3f8f98cdba8da0aadf0a19d8503955023f70a2d8045838b893eb3e0b0e345ce",
+        "size": 29981660,
+        "source": "components/google-cloud-sdk-nomos-darwin-x86_64-20240322135349.tar.gz",
         "type": "tar"
       },
       "dependencies": [
@@ -6430,16 +6697,16 @@
       },
       "platform_required": false,
       "version": {
-        "build_number": 20240229170130,
-        "version_string": "1.17.2-rc.1"
+        "build_number": 20240322135349,
+        "version_string": "1.17.3-rc.2"
       }
     },
     {
       "data": {
-        "checksum": "93d532890f146415a74734c921ded0e8bdd408d3d9424beb6bbb7113530ec5fe",
-        "contents_checksum": "b429ab3ef37405bc06cbd594edc0730dd162f37a933fa854597a1bd5e59c761d",
-        "size": 30144691,
-        "source": "components/google-cloud-sdk-nomos-linux-x86_64-20240229170130.tar.gz",
+        "checksum": "d744e544fc05b996439c39e36454ec902f2998bcc9bf9d32337aaeb34bbb604e",
+        "contents_checksum": "d0458512f4a0047c7ba2504246d8428fc0f8de3fec56b37b69b43e62ceb2af75",
+        "size": 30144536,
+        "source": "components/google-cloud-sdk-nomos-linux-x86_64-20240322135349.tar.gz",
         "type": "tar"
       },
       "dependencies": [
@@ -6463,8 +6730,8 @@
       },
       "platform_required": false,
       "version": {
-        "build_number": 20240229170130,
-        "version_string": "1.17.2-rc.1"
+        "build_number": 20240322135349,
+        "version_string": "1.17.3-rc.2"
       }
     },
     {
@@ -6744,10 +7011,10 @@
     },
     {
       "data": {
-        "checksum": "a080b9775844f83bcce039e5c9dff7f4c87d69ae7cf6f0cc85a3c9212b8361ed",
-        "contents_checksum": "bcc50b05f18aabe3fd90857ec8933e7580ee9212d764d3efb9ac6ef26b01a9fa",
-        "size": 66384213,
-        "source": "components/google-cloud-sdk-pubsub-emulator-20240229170130.tar.gz",
+        "checksum": "3bafcd5a4ec4e65c540640a97737e4a5e596795e73ead6f4fd75591879c9e529",
+        "contents_checksum": "956782b7d4b6b2057f339a7978728426fef50f7a99c888e1b1342eaf2f9ee8d9",
+        "size": 66777134,
+        "source": "components/google-cloud-sdk-pubsub-emulator-20240419141706.tar.gz",
         "type": "tar"
       },
       "dependencies": [
@@ -6764,8 +7031,8 @@
       "platform": {},
       "platform_required": false,
       "version": {
-        "build_number": 20240229170130,
-        "version_string": "0.8.12"
+        "build_number": 20240419141706,
+        "version_string": "0.8.14"
       }
     },
     {
@@ -6799,15 +7066,15 @@
       "platform_required": false,
       "version": {
         "build_number": 0,
-        "version_string": "2.9.0"
+        "version_string": "2.11.1"
       }
     },
     {
       "data": {
-        "checksum": "badd2854a9b5a3b4d3b8b55c163656776778c572eba854262bfd637c803ca3b7",
-        "contents_checksum": "45e2f3eb2703f29f735cbc820e9d4004f1e95bea1ab96e698ded74f2a5de857d",
-        "size": 24426195,
-        "source": "components/google-cloud-sdk-skaffold-darwin-arm-20231110155547.tar.gz",
+        "checksum": "53c4ab91c11e5cbd68568f8599906e6e5192f3b4019e9761fddfdc45f9af7845",
+        "contents_checksum": "d24345e52dde87a54de371fe79441dd90afe4fe3079bebce79c4f7043f8ac506",
+        "size": 23881902,
+        "source": "components/google-cloud-sdk-skaffold-darwin-arm-20240412130805.tar.gz",
         "type": "tar"
       },
       "dependencies": [
@@ -6832,16 +7099,16 @@
       },
       "platform_required": false,
       "version": {
-        "build_number": 20231110155547,
-        "version_string": "2.9.0"
+        "build_number": 20240412130805,
+        "version_string": "2.11.1"
       }
     },
     {
       "data": {
-        "checksum": "cba0d4046df4764747f9a15ebe061fec60f9f768d1079041feea2321c5cd5e76",
-        "contents_checksum": "941bc43d4633be69ed64eadf7ad3ba477929bd6dcb519dc668b77f29b5115a57",
-        "size": 26530698,
-        "source": "components/google-cloud-sdk-skaffold-darwin-x86_64-20231110155547.tar.gz",
+        "checksum": "b7dcae5f81e8a66ecf964d9a7e6c009be0be26770daa64470c344a0824a70d6c",
+        "contents_checksum": "a1845e050a4fc99ce6bd24c4c8e30e9c7fe0baa7ca6d89ade4a9ac945a1335fd",
+        "size": 26019391,
+        "source": "components/google-cloud-sdk-skaffold-darwin-x86_64-20240412130805.tar.gz",
         "type": "tar"
       },
       "dependencies": [
@@ -6866,16 +7133,16 @@
       },
       "platform_required": false,
       "version": {
-        "build_number": 20231110155547,
-        "version_string": "2.9.0"
+        "build_number": 20240412130805,
+        "version_string": "2.11.1"
       }
     },
     {
       "data": {
-        "checksum": "45cb0e94d47b3b28db5d8dda5fbd1dd7fbfad96936ce3bbbdce3f2f8be63a093",
-        "contents_checksum": "2f36d4b1b0eab170b21fe0df2964aa31d79694a8860070c32b7eb7bc471a74aa",
-        "size": 22439050,
-        "source": "components/google-cloud-sdk-skaffold-linux-arm-20231110155547.tar.gz",
+        "checksum": "0f285235cc2840a8e62d5e8591015c709287ebf01bd8f95b204a5b4d4b019b2a",
+        "contents_checksum": "061859c0ad969a5cb9a3bcd0b34760963c8c842b9902f9b22e97df4e94ff7a65",
+        "size": 23133354,
+        "source": "components/google-cloud-sdk-skaffold-linux-arm-20240412130805.tar.gz",
         "type": "tar"
       },
       "dependencies": [
@@ -6900,16 +7167,16 @@
       },
       "platform_required": false,
       "version": {
-        "build_number": 20231110155547,
-        "version_string": "2.9.0"
+        "build_number": 20240412130805,
+        "version_string": "2.11.1"
       }
     },
     {
       "data": {
-        "checksum": "6add62f50ef3b9d77259177118ee30251c2f07074fc4555d516a3ae5dfbbb3b6",
-        "contents_checksum": "065a00f4d25312efad8a854d21809862d9f0e41588511a1c1930ed5c34e7e57b",
-        "size": 24544699,
-        "source": "components/google-cloud-sdk-skaffold-linux-x86_64-20231110155547.tar.gz",
+        "checksum": "3e7164c21840917c2f565998cdbd20be3972ba5cc09ddad31f01cbd0233c34f6",
+        "contents_checksum": "99c37298757f59403dc8b7b080419ccb62bdb23fb88f559bd31b603cb9a2b4d6",
+        "size": 25252692,
+        "source": "components/google-cloud-sdk-skaffold-linux-x86_64-20240412130805.tar.gz",
         "type": "tar"
       },
       "dependencies": [
@@ -6934,16 +7201,16 @@
       },
       "platform_required": false,
       "version": {
-        "build_number": 20231110155547,
-        "version_string": "2.9.0"
+        "build_number": 20240412130805,
+        "version_string": "2.11.1"
       }
     },
     {
       "data": {
-        "checksum": "577504b2686302f74a7e00bebe9a561b0caa15d3294dc0c9e15dba2d9d745f32",
-        "contents_checksum": "940d470dd53773d3e907de4d80ef70df247824167fcb95a05494e66e6bb28c9a",
-        "size": 25035980,
-        "source": "components/google-cloud-sdk-skaffold-windows-x86_64-20231110155547.tar.gz",
+        "checksum": "8f864d4189e19ce50bcb52ba61802d70e4e83bb18b13ff32ded5086a7c867fe5",
+        "contents_checksum": "c340681db503b83f07f4ac5ea4f00c4c8db288eaaf6e19ddf6e4b52c29d13e48",
+        "size": 25741614,
+        "source": "components/google-cloud-sdk-skaffold-windows-x86_64-20240412130805.tar.gz",
         "type": "tar"
       },
       "dependencies": [
@@ -6968,8 +7235,8 @@
       },
       "platform_required": false,
       "version": {
-        "build_number": 20231110155547,
-        "version_string": "2.9.0"
+        "build_number": 20240412130805,
+        "version_string": "2.11.1"
       }
     },
     {
@@ -6995,15 +7262,15 @@
       "platform_required": false,
       "version": {
         "build_number": 0,
-        "version_string": "3.2.2"
+        "version_string": "3.2.4"
       }
     },
     {
       "data": {
-        "checksum": "6f55289b6cdb9206c110e5e1f3e040e4c9a69aa129c5c0caae71bc668b17bca9",
-        "contents_checksum": "2284e73fc19acea54651526b45fd808530a9272fd56b0c553386bbfaac02f729",
-        "size": 24615874,
-        "source": "components/google-cloud-sdk-spanner-migration-tool-linux-x86_64-20240112150613.tar.gz",
+        "checksum": "3772182f6246ce7ee4a24d4af5f07a0b0ce718d563c80439baabd8cf13318505",
+        "contents_checksum": "49868f973b97b24f2f042d5a3b05105ef0c4ba8974c9268ecaa1a232a735d902",
+        "size": 24679221,
+        "source": "components/google-cloud-sdk-spanner-migration-tool-linux-x86_64-20240412130805.tar.gz",
         "type": "tar"
       },
       "dependencies": [
@@ -7027,8 +7294,8 @@
       },
       "platform_required": false,
       "version": {
-        "build_number": 20240112150613,
-        "version_string": "3.2.2"
+        "build_number": 20240412130805,
+        "version_string": "3.2.4"
       }
     },
     {
@@ -7056,10 +7323,10 @@
     },
     {
       "data": {
-        "checksum": "d1e1fda36ce35e058bf23f8cf114acd776c2891227f23cf3b9d78fb35f89b523",
-        "contents_checksum": "8a106316d2efe6baaa483a8677c9f0f807b43189ad3cbe1cefa8055e7500a318",
-        "size": 3485676,
-        "source": "components/google-cloud-sdk-ssh-tools-windows-20211112160846.tar.gz",
+        "checksum": "120bd981566b18fae7041191f60980d99bb654e8fc846cc0eabf5de1719981e9",
+        "contents_checksum": "1fa1d0fcc0a4fa9fc465722a33fd5f89a0ad09e014840594557461409535ca81",
+        "size": 3783443,
+        "source": "components/google-cloud-sdk-ssh-tools-windows-20240419141706.tar.gz",
         "type": "tar"
       },
       "dependencies": [
@@ -7080,7 +7347,7 @@
       },
       "platform_required": false,
       "version": {
-        "build_number": 20211112160846,
+        "build_number": 20240419141706,
         "version_string": ""
       }
     },
@@ -7284,10 +7551,10 @@
     },
     {
       "data": {
-        "checksum": "274f5f8fa50423d400d3df880f06bab3a10fadf9ce9a4b65bbb00d5ef84afe3a",
-        "contents_checksum": "d3d35039158b47815d55b4cf508dccc25076c4250104e4277e3555782fc81317",
-        "size": 51453272,
-        "source": "components/google-cloud-sdk-tests-20240229170130.tar.gz",
+        "checksum": "f90e47ac6bbf129c724555e5f7ad3dc105de5059d1cc9ab77c99f52a92fae0cb",
+        "contents_checksum": "b515c8b801cde8a8696832a5dbf16d8f1e9adcc4f4651db36fda76e41b008809",
+        "size": 56934482,
+        "source": "components/google-cloud-sdk-tests-20240503145345.tar.gz",
         "type": "tar"
       },
       "dependencies": [
@@ -7304,8 +7571,8 @@
       "platform": {},
       "platform_required": false,
       "version": {
-        "build_number": 20240229170130,
-        "version_string": "2024.02.29"
+        "build_number": 20240503145345,
+        "version_string": "2024.05.03"
       }
     }
   ],
@@ -7324,11 +7591,11 @@
   ],
   "post_processing_command": "components post-process",
   "release_notes_url": "RELEASE_NOTES",
-  "revision": 20240229170130,
+  "revision": 20240503145345,
   "schema_version": {
     "no_update": false,
     "url": "https://dl.google.com/dl/cloudsdk/channels/rapid/google-cloud-sdk.tar.gz",
     "version": 3
   },
-  "version": "467.0.0"
+  "version": "475.0.0"
 }
diff --git a/pkgs/tools/admin/google-cloud-sdk/data.nix b/pkgs/tools/admin/google-cloud-sdk/data.nix
index 09f56aa4a77d..6150137ea218 100644
--- a/pkgs/tools/admin/google-cloud-sdk/data.nix
+++ b/pkgs/tools/admin/google-cloud-sdk/data.nix
@@ -1,32 +1,32 @@
 # DO NOT EDIT! This file is generated automatically by update.sh
 { }:
 {
-  version = "467.0.0";
+  version = "475.0.0";
   googleCloudSdkPkgs = {
     x86_64-linux =
       {
-        url = "https://dl.google.com/dl/cloudsdk/channels/rapid/downloads/google-cloud-sdk-467.0.0-linux-x86_64.tar.gz";
-        sha256 = "09qkz9zw23rza5siz77m52nzfyikdzszrqsl200z2zs2cm69g50w";
+        url = "https://dl.google.com/dl/cloudsdk/channels/rapid/downloads/google-cloud-sdk-475.0.0-linux-x86_64.tar.gz";
+        sha256 = "0yqa2c91n948yj8gxjm91ccdb99dzppimf1npckplzhc2bp7shiw";
       };
     x86_64-darwin =
       {
-        url = "https://dl.google.com/dl/cloudsdk/channels/rapid/downloads/google-cloud-sdk-467.0.0-darwin-x86_64.tar.gz";
-        sha256 = "0il26ivqym4n94kjb22pcizgmy6j1p70l2yxjfrsj8i6vhwi3qbq";
+        url = "https://dl.google.com/dl/cloudsdk/channels/rapid/downloads/google-cloud-sdk-475.0.0-darwin-x86_64.tar.gz";
+        sha256 = "078wwvjhpc9a56v03y6433zpwaj3cg3y9xrbg9ww5fdqvcc82q1z";
       };
     aarch64-linux =
       {
-        url = "https://dl.google.com/dl/cloudsdk/channels/rapid/downloads/google-cloud-sdk-467.0.0-linux-arm.tar.gz";
-        sha256 = "1d72l35jcxg7r2r8ajhyigadj8ydp2k1g25kw6rkwvlg4whv8d7b";
+        url = "https://dl.google.com/dl/cloudsdk/channels/rapid/downloads/google-cloud-sdk-475.0.0-linux-arm.tar.gz";
+        sha256 = "1wfr6lz62y232wzp7nn3mr18qd4wmw47b3p3sjff0f39jfmcyq30";
       };
     aarch64-darwin =
       {
-        url = "https://dl.google.com/dl/cloudsdk/channels/rapid/downloads/google-cloud-sdk-467.0.0-darwin-arm.tar.gz";
-        sha256 = "0yd9hjn8pgaih7hj3hhbl70apcmg5b3gkx758r8m9823vhqkk5wm";
+        url = "https://dl.google.com/dl/cloudsdk/channels/rapid/downloads/google-cloud-sdk-475.0.0-darwin-arm.tar.gz";
+        sha256 = "1cjhbq0qsy35nwl5h1f8xp4d67a6hwmfjzdk349g1npf5dhhdd94";
       };
     i686-linux =
       {
-        url = "https://dl.google.com/dl/cloudsdk/channels/rapid/downloads/google-cloud-sdk-467.0.0-linux-x86.tar.gz";
-        sha256 = "0wag0qjzh0m6kmpzvmzvr7sy74w20xzgysljwjfravqr1xmw9m48";
+        url = "https://dl.google.com/dl/cloudsdk/channels/rapid/downloads/google-cloud-sdk-475.0.0-linux-x86.tar.gz";
+        sha256 = "1cj5321lj3dbb48h35qlxllrzzg90lwq92n71c2y4s2mqk33543h";
       };
   };
 }
diff --git a/pkgs/tools/admin/google-cloud-sdk/default.nix b/pkgs/tools/admin/google-cloud-sdk/default.nix
index b8e49b37a8d2..8a9a26697773 100644
--- a/pkgs/tools/admin/google-cloud-sdk/default.nix
+++ b/pkgs/tools/admin/google-cloud-sdk/default.nix
@@ -13,7 +13,7 @@ let
   pythonEnv = python.withPackages (p: with p; [
     cffi
     cryptography
-    openssl
+    pyopenssl
     crcmod
     numpy
   ] ++ lib.optional (with-gce) google-compute-engine);
@@ -122,7 +122,7 @@ in stdenv.mkDerivation rec {
 
   meta = with lib; {
     description = "Tools for the google cloud platform";
-    longDescription = "The Google Cloud SDK. This package has the programs: gcloud, gsutil, and bq";
+    longDescription = "The Google Cloud SDK for GCE hosts. Used by `google-cloud-sdk` only on GCE guests.";
     sourceProvenance = with sourceTypes; [
       fromSource
       binaryNativeCode  # anthoscli and possibly more
diff --git a/pkgs/tools/admin/google-cloud-sdk/withExtraComponents.nix b/pkgs/tools/admin/google-cloud-sdk/withExtraComponents.nix
index b65b5700c607..63070a85dd8f 100644
--- a/pkgs/tools/admin/google-cloud-sdk/withExtraComponents.nix
+++ b/pkgs/tools/admin/google-cloud-sdk/withExtraComponents.nix
@@ -1,4 +1,4 @@
-{ lib, google-cloud-sdk, runCommand, components }:
+{ lib, google-cloud-sdk, symlinkJoin, components }:
 
 comps_:
 
@@ -19,44 +19,46 @@ let
   defaultComponents = with components; [ alpha beta ];
 
   comps = [ google-cloud-sdk ] ++ filterPreInstalled (findDepsRecursive (defaultComponents ++ comps_));
-in
-# Components are installed by copying the `google-cloud-sdk` package, along
-# with each component, over to a new location, and then patching that location
-# with `sed` to ensure the proper paths are used.
-# For some reason, this does not work properly with a `symlinkJoin`: the
-# `gcloud` binary doesn't seem able to find the installed components.
-runCommand "google-cloud-sdk-${google-cloud-sdk.version}"
-{
-  inherit (google-cloud-sdk) meta;
-  inherit comps;
-  passAsFile = [ "comps" ];
 
-  doInstallCheck = true;
-  disallowedRequisites = [ google-cloud-sdk ];
-  installCheckPhase =
+  installCheck =
     let
-      compNames = builtins.map (drv: drv.name) comps_;
+      compNames = builtins.map lib.getName comps_;
     in
     ''
-      $out/bin/gcloud components list > component_list.txt
+      $out/bin/gcloud components list --only-local-state --format 'value(id)' > component_list.txt
       for comp in ${builtins.toString compNames}; do
-        if [ ! grep ... component_list.txt | grep "Not Installed" ]; then
+        snapshot_file="$out/google-cloud-sdk/.install/$comp.snapshot.json"
+
+        if ! [ -f "$snapshot_file"  ]; then
+          echo "Failed to install component '$comp'"
+          exit 1
+        fi
+
+        if grep --quiet '"is_hidden":true' "$snapshot_file"; then
+          continue
+        fi
+
+        if ! grep --quiet "^$comp$" component_list.txt; then
           echo "Failed to install component '$comp'"
           exit 1
         fi
       done
     '';
+in
+# The `gcloud` entrypoint script has some custom logic to determine the "real" cloud sdk
+# root. In order to not trip up this logic and still have the symlink joined root we copy
+# over this file. Since this file also has a Python wrapper, we need to copy that as well.
+symlinkJoin {
+  name = "google-cloud-sdk-${google-cloud-sdk.version}";
+  inherit (google-cloud-sdk) meta;
+
+  paths = [
+    google-cloud-sdk
+  ] ++ comps;
+
+  postBuild = ''
+    sed -i ';' $out/google-cloud-sdk/bin/.gcloud-wrapped
+    sed -i -e "s#${google-cloud-sdk}#$out#" "$out/google-cloud-sdk/bin/gcloud"
+    ${installCheck}
+  '';
 }
-  ''
-    mkdir -p $out
-
-    # Install each component
-    for comp in $(cat $compsPath); do
-      echo "installing component $comp"
-      cp -dRf $comp/. $out
-      find $out -type d -exec chmod 744 {} +
-    done
-
-    # Replace references to the original google-cloud-sdk with this one
-    find $out/google-cloud-sdk -type f -exec sed -i -e "s#${google-cloud-sdk}#$out#" {} \;
-  ''
diff --git a/pkgs/tools/admin/granted/default.nix b/pkgs/tools/admin/granted/default.nix
index 6624ae3eca27..8edbde12252f 100644
--- a/pkgs/tools/admin/granted/default.nix
+++ b/pkgs/tools/admin/granted/default.nix
@@ -12,16 +12,16 @@
 
 buildGoModule rec {
   pname = "granted";
-  version = "0.24.0";
+  version = "0.26.0";
 
   src = fetchFromGitHub {
     owner = "common-fate";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-wZP7QEFzPdDXL00/+jiVghwrObWYcy+Nf9DuOWBwrlQ=";
+    sha256 = "sha256-Ny2HHNawUmjqo0rTlM5yulOkqQUM/x1ySbXIE6vbegQ=";
   };
 
-  vendorHash = "sha256-XzoN8gOQTU8LMInsV6gVetUp1xlPOxedF1ksQ0V1ynY=";
+  vendorHash = "sha256-f0vL9YD5PmoZFeOv2oeYtm2gYPYCJ6aYTan9AVr0/gc=";
 
   nativeBuildInputs = [ makeWrapper ];
 
diff --git a/pkgs/tools/admin/kics/default.nix b/pkgs/tools/admin/kics/default.nix
index ba8818c7f415..6db54ce50949 100644
--- a/pkgs/tools/admin/kics/default.nix
+++ b/pkgs/tools/admin/kics/default.nix
@@ -7,16 +7,16 @@
 
 buildGoModule rec {
   pname = "kics";
-  version = "2.0.0";
+  version = "2.0.1";
 
   src = fetchFromGitHub {
     owner = "Checkmarx";
     repo = "kics";
     rev = "v${version}";
-    hash = "sha256-OdX3ipfPj+rope5oT5ND9MEaefW36X6XDV5F7PaQOuw=";
+    hash = "sha256-4WYrKWkcf7AJjogWQcNsIZiCfxf4CmhLW/GJFUWfQzw=";
   };
 
-  vendorHash = "sha256-vYAMzXBQIt8F9DTGLkWNXx6e08MPo12W2ogiTZ8gcjw=";
+  vendorHash = "sha256-N3MJhuzMJW40aMrAyuBsNciwZaNq0K4IUd+0re17AOI=";
 
   subPackages = [ "cmd/console" ];
 
diff --git a/pkgs/tools/admin/lego/default.nix b/pkgs/tools/admin/lego/default.nix
index d07c05db1381..dc35c0b563db 100644
--- a/pkgs/tools/admin/lego/default.nix
+++ b/pkgs/tools/admin/lego/default.nix
@@ -2,16 +2,16 @@
 
 buildGoModule rec {
   pname = "lego";
-  version = "4.15.0";
+  version = "4.16.1";
 
   src = fetchFromGitHub {
     owner = "go-acme";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-j5TboKYv4xycpCXnuFP/37ioiS89G7eeViEmGwB2BUY=";
+    sha256 = "sha256-BGD0fVLTlM0BlYK/XK11W0OV8sDO4SVfXEKHEFdqOzs=";
   };
 
-  vendorHash = "sha256-uniml5D8887cQyxxZIDhYLni/+r6ZtZ9nJBKPtNeDtI=";
+  vendorHash = "sha256-jiVtgzNWj91J/YSBOrhXZH2WmVqA2gxjIfytCGYG25A=";
 
   doCheck = false;
 
diff --git a/pkgs/tools/admin/pgadmin/default.nix b/pkgs/tools/admin/pgadmin/default.nix
index 95b8963afb7c..e1952025220a 100644
--- a/pkgs/tools/admin/pgadmin/default.nix
+++ b/pkgs/tools/admin/pgadmin/default.nix
@@ -15,30 +15,19 @@
 
 let
   pname = "pgadmin";
-  version = "8.5";
-  yarnHash = "sha256-VLf8GRJ2IIcrfBqdgT2uZG3kOEt0pd7Cksm+tdrQogA=";
+  version = "8.6";
+  yarnHash = "sha256-SDAU6goe5iu1SAcAsAEam2i+skZkG/hE9y3bGsKiFZ8=";
 
   src = fetchFromGitHub {
     owner = "pgadmin-org";
     repo = "pgadmin4";
     rev = "REL-${lib.versions.major version}_${lib.versions.minor version}";
-    hash = "sha256-D/8tiVL2DwxvDiSqHeOF1P/yRRniZY39TyUfibrfAOo=";
+    hash = "sha256-a370dh5IHInhcPA1LeveUIjalrymTsdyoXjBNNKwSTs=";
   };
 
   # keep the scope, as it is used throughout the derivation and tests
   # this also makes potential future overrides easier
-  pythonPackages = python3.pkgs.overrideScope (final: prev: rec {
-    # Flask 5.4.3 introduces an CSRF error which makes it impossible to login
-    # So either we downgrade flask here or use "WTF_CSRF_ENABLED = false" in the
-    # module config to disable CSRF.
-    flask-security-too = prev.flask-security-too.overridePythonAttrs (oldAttrs: rec {
-      version = "5.4.1";
-      src = oldAttrs.src.override {
-        inherit version;
-        hash = "sha256-Ay7+gk+zuUlXtw0LDdsnvSa22z+yE6VR1guu9QmiFvw=";
-      };
-    });
-  });
+  pythonPackages = python3.pkgs.overrideScope (final: prev: rec { });
 
   offlineCache = fetchYarnDeps {
     yarnLock = ./yarn.lock;
@@ -159,7 +148,6 @@ pythonPackages.buildPythonApplication rec {
 
   propagatedBuildInputs = with pythonPackages; [
     flask
-    flask-gravatar
     flask-login
     flask-mail
     flask-migrate
@@ -209,6 +197,7 @@ pythonPackages.buildPythonApplication rec {
     typer
     rich
     jsonformatter
+    libgravatar
   ];
 
   passthru.tests = {
@@ -222,6 +211,9 @@ pythonPackages.buildPythonApplication rec {
     pythonPackages.selenium
   ];
 
+  # sandboxing issues on aarch64-darwin, see https://github.com/NixOS/nixpkgs/issues/198495
+  doCheck = postgresql.doCheck;
+
   checkPhase = ''
     runHook preCheck
 
diff --git a/pkgs/tools/admin/pgadmin/yarn.lock b/pkgs/tools/admin/pgadmin/yarn.lock
index 9da02d0b2e9b..026590933d2a 100644
--- a/pkgs/tools/admin/pgadmin/yarn.lock
+++ b/pkgs/tools/admin/pgadmin/yarn.lock
@@ -2,106 +2,52 @@
 # yarn lockfile v1
 
 
-"@adobe/css-tools@^4.3.0":
-  version "4.3.1"
-  resolved "https://registry.npmjs.org/@adobe/css-tools/-/css-tools-4.3.1.tgz#abfccb8ca78075a2b6187345c26243c1a0842f28"
-  integrity sha512-/62yikz7NLScCGAAST5SHdnjaDJQBDq0M2muyRTpf2VQhw6StBg2ALiu73zSJQ4fMVLA+0uBhBHAle7Wg+2kSg==
+"@aashutoshrathi/word-wrap@^1.2.3":
+  version "1.2.6"
+  resolved "https://registry.npmjs.org/@aashutoshrathi/word-wrap/-/word-wrap-1.2.6.tgz#bd9154aec9983f77b3a034ecaa015c2e4201f6cf"
+  integrity sha512-1Yjs2SvM8TflER/OD3cOjhWWOZb58A2t7wpE2S9XfBYTiIl+XFhQG2bjy4Pu1I+EAlCNUzRDYDdFwFYUKvXcIA==
 
-"@ampproject/remapping@^2.2.0":
-  version "2.2.1"
-  resolved "https://registry.npmjs.org/@ampproject/remapping/-/remapping-2.2.1.tgz#99e8e11851128b8702cd57c33684f1d0f260b630"
-  integrity sha512-lFMjJTrFL3j7L9yBxwYfCq2k6qqwHyzuUl/XBnif78PWTJYyL/dfowQHWE3sp6U6ZzqWiiIZnpTMO96zhkjwtg==
-  dependencies:
-    "@jridgewell/gen-mapping" "^0.3.0"
-    "@jridgewell/trace-mapping" "^0.3.9"
+"@adobe/css-tools@^4.3.2":
+  version "4.3.3"
+  resolved "https://registry.npmjs.org/@adobe/css-tools/-/css-tools-4.3.3.tgz#90749bde8b89cd41764224f5aac29cd4138f75ff"
+  integrity sha512-rE0Pygv0sEZ4vBWHlAgJLGDU7Pm8xoO6p3wsEceb7GYAjScrOHpEo8KK/eVkAcnSM+slAEtXjA2JpdjLp4fJQQ==
 
-"@babel/code-frame@^7.0.0", "@babel/code-frame@^7.22.5":
-  version "7.22.5"
-  resolved "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.22.5.tgz#234d98e1551960604f1246e6475891a570ad5658"
-  integrity sha512-Xmwn266vad+6DAqEB2A6V/CcZVp62BbwVmcOJc2RPuwih1kw02TjQvWVWlcKGbBPd+8/0V5DEkOcizRGYsspYQ==
+"@ampproject/remapping@^2.2.0":
+  version "2.3.0"
+  resolved "https://registry.npmjs.org/@ampproject/remapping/-/remapping-2.3.0.tgz#ed441b6fa600072520ce18b43d2c8cc8caecc7f4"
+  integrity sha512-30iZtAPgz+LTIYoeivqYo853f02jBYSd5uGnGpkFV0M3xOt9aN73erkgYAmZU43x4VfqcnLxW9Kpg3R5LC4YYw==
   dependencies:
-    "@babel/highlight" "^7.22.5"
+    "@jridgewell/gen-mapping" "^0.3.5"
+    "@jridgewell/trace-mapping" "^0.3.24"
 
-"@babel/code-frame@^7.10.4", "@babel/code-frame@^7.12.13", "@babel/code-frame@^7.22.13":
-  version "7.22.13"
-  resolved "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.22.13.tgz#e3c1c099402598483b7a8c46a721d1038803755e"
-  integrity sha512-XktuhWlJ5g+3TJXc5upd9Ks1HutSArik6jf2eAjYFyIOf4ej3RN+184cZbzDvbPnuTJIUhPKKJE3cIsYTiAT3w==
+"@babel/code-frame@^7.0.0", "@babel/code-frame@^7.10.4", "@babel/code-frame@^7.12.13", "@babel/code-frame@^7.23.5", "@babel/code-frame@^7.24.1", "@babel/code-frame@^7.24.2":
+  version "7.24.2"
+  resolved "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.24.2.tgz#718b4b19841809a58b29b68cde80bc5e1aa6d9ae"
+  integrity sha512-y5+tLQyV8pg3fsiln67BVLD1P13Eg4lh5RW9mF0zUuvLrv9uIQ4MCL+CRT+FTsBlBjcIan6PGsLcBN0m3ClUyQ==
   dependencies:
-    "@babel/highlight" "^7.22.13"
-    chalk "^2.4.2"
-
-"@babel/compat-data@^7.17.7", "@babel/compat-data@^7.20.5", "@babel/compat-data@^7.22.5":
-  version "7.22.5"
-  resolved "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.22.5.tgz#b1f6c86a02d85d2dd3368a2b67c09add8cd0c255"
-  integrity sha512-4Jc/YuIaYqKnDDz892kPIledykKg12Aw1PYX5i/TY28anJtacvM1Rrr8wbieB9GfEJwlzqT0hUEao0CxEebiDA==
-
-"@babel/compat-data@^7.22.6", "@babel/compat-data@^7.22.9":
-  version "7.22.9"
-  resolved "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.22.9.tgz#71cdb00a1ce3a329ce4cbec3a44f9fef35669730"
-  integrity sha512-5UamI7xkUcJ3i9qVDS+KFDEK8/7oJ55/sJMB1Ge7IEapr7KfdfV/HErR+koZwOfd+SgtFKOKRhRakdg++DcJpQ==
-
-"@babel/compat-data@^7.23.2":
-  version "7.23.2"
-  resolved "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.23.2.tgz#6a12ced93455827037bfb5ed8492820d60fc32cc"
-  integrity sha512-0S9TQMmDHlqAZ2ITT95irXKfxN9bncq8ZCoJhun3nHL/lLUxd2NKBJYoNGWH7S0hz6fRQwWlAWn/ILM0C70KZQ==
+    "@babel/highlight" "^7.24.2"
+    picocolors "^1.0.0"
 
-"@babel/core@^7.10.2", "@babel/core@^7.12.3":
-  version "7.22.5"
-  resolved "https://registry.npmjs.org/@babel/core/-/core-7.22.5.tgz#d67d9747ecf26ee7ecd3ebae1ee22225fe902a89"
-  integrity sha512-SBuTAjg91A3eKOvD+bPEz3LlhHZRNu1nFOVts9lzDJTXshHTjII0BAtDS3Y2DAkdZdDKWVZGVwkDfc4Clxn1dg==
-  dependencies:
-    "@ampproject/remapping" "^2.2.0"
-    "@babel/code-frame" "^7.22.5"
-    "@babel/generator" "^7.22.5"
-    "@babel/helper-compilation-targets" "^7.22.5"
-    "@babel/helper-module-transforms" "^7.22.5"
-    "@babel/helpers" "^7.22.5"
-    "@babel/parser" "^7.22.5"
-    "@babel/template" "^7.22.5"
-    "@babel/traverse" "^7.22.5"
-    "@babel/types" "^7.22.5"
-    convert-source-map "^1.7.0"
-    debug "^4.1.0"
-    gensync "^1.0.0-beta.2"
-    json5 "^2.2.2"
-    semver "^6.3.0"
+"@babel/compat-data@^7.20.5", "@babel/compat-data@^7.22.6", "@babel/compat-data@^7.23.5", "@babel/compat-data@^7.24.4":
+  version "7.24.4"
+  resolved "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.24.4.tgz#6f102372e9094f25d908ca0d34fc74c74606059a"
+  integrity sha512-vg8Gih2MLK+kOkHJp4gBEIkyaIi00jgWot2D9QOmmfLC8jINSOzmCLta6Bvz/JSBCqnegV0L80jhxkol5GWNfQ==
 
-"@babel/core@^7.11.6":
-  version "7.22.15"
-  resolved "https://registry.npmjs.org/@babel/core/-/core-7.22.15.tgz#15d4fd03f478a459015a4b94cfbb3bd42c48d2f4"
-  integrity sha512-PtZqMmgRrvj8ruoEOIwVA3yoF91O+Hgw9o7DAUTNBA6Mo2jpu31clx9a7Nz/9JznqetTR6zwfC4L3LAjKQXUwA==
+"@babel/core@^7.10.2", "@babel/core@^7.11.6", "@babel/core@^7.12.3", "@babel/core@^7.21.3", "@babel/core@^7.23.9":
+  version "7.24.4"
+  resolved "https://registry.npmjs.org/@babel/core/-/core-7.24.4.tgz#1f758428e88e0d8c563874741bc4ffc4f71a4717"
+  integrity sha512-MBVlMXP+kkl5394RBLSxxk/iLTeVGuXTV3cIDXavPpMMqnSnt6apKgan/U8O3USWZCWZT/TbgfEpKa4uMgN4Dg==
   dependencies:
     "@ampproject/remapping" "^2.2.0"
-    "@babel/code-frame" "^7.22.13"
-    "@babel/generator" "^7.22.15"
-    "@babel/helper-compilation-targets" "^7.22.15"
-    "@babel/helper-module-transforms" "^7.22.15"
-    "@babel/helpers" "^7.22.15"
-    "@babel/parser" "^7.22.15"
-    "@babel/template" "^7.22.15"
-    "@babel/traverse" "^7.22.15"
-    "@babel/types" "^7.22.15"
-    convert-source-map "^1.7.0"
-    debug "^4.1.0"
-    gensync "^1.0.0-beta.2"
-    json5 "^2.2.3"
-    semver "^6.3.1"
-
-"@babel/core@^7.21.3":
-  version "7.23.2"
-  resolved "https://registry.npmjs.org/@babel/core/-/core-7.23.2.tgz#ed10df0d580fff67c5f3ee70fd22e2e4c90a9f94"
-  integrity sha512-n7s51eWdaWZ3vGT2tD4T7J6eJs3QoBXydv7vkUM06Bf1cbVD2Kc2UrkzhiQwobfV7NwOnQXYL7UBJ5VPU+RGoQ==
-  dependencies:
-    "@ampproject/remapping" "^2.2.0"
-    "@babel/code-frame" "^7.22.13"
-    "@babel/generator" "^7.23.0"
-    "@babel/helper-compilation-targets" "^7.22.15"
-    "@babel/helper-module-transforms" "^7.23.0"
-    "@babel/helpers" "^7.23.2"
-    "@babel/parser" "^7.23.0"
-    "@babel/template" "^7.22.15"
-    "@babel/traverse" "^7.23.2"
-    "@babel/types" "^7.23.0"
+    "@babel/code-frame" "^7.24.2"
+    "@babel/generator" "^7.24.4"
+    "@babel/helper-compilation-targets" "^7.23.6"
+    "@babel/helper-module-transforms" "^7.23.3"
+    "@babel/helpers" "^7.24.4"
+    "@babel/parser" "^7.24.4"
+    "@babel/template" "^7.24.0"
+    "@babel/traverse" "^7.24.1"
+    "@babel/types" "^7.24.0"
     convert-source-map "^2.0.0"
     debug "^4.1.0"
     gensync "^1.0.0-beta.2"
@@ -109,153 +55,84 @@
     semver "^6.3.1"
 
 "@babel/eslint-parser@^7.21.3":
-  version "7.22.5"
-  resolved "https://registry.npmjs.org/@babel/eslint-parser/-/eslint-parser-7.22.5.tgz#fa032503b9e2d188e25b1b95d29e8b8431042d78"
-  integrity sha512-C69RWYNYtrgIRE5CmTd77ZiLDXqgBipahJc/jHP3sLcAGj6AJzxNIuKNpVnICqbyK7X3pFUfEvL++rvtbQpZkQ==
+  version "7.24.1"
+  resolved "https://registry.npmjs.org/@babel/eslint-parser/-/eslint-parser-7.24.1.tgz#e27eee93ed1d271637165ef3a86e2b9332395c32"
+  integrity sha512-d5guuzMlPeDfZIbpQ8+g1NaCNuAGBBGNECh0HVqz1sjOeVLh2CEaifuOysCH18URW6R7pqXINvf5PaR/dC6jLQ==
   dependencies:
     "@nicolo-ribaudo/eslint-scope-5-internals" "5.1.1-v1"
     eslint-visitor-keys "^2.1.0"
-    semver "^6.3.0"
+    semver "^6.3.1"
 
 "@babel/eslint-plugin@^7.17.7":
-  version "7.22.5"
-  resolved "https://registry.npmjs.org/@babel/eslint-plugin/-/eslint-plugin-7.22.5.tgz#47407d8c9e527b62ff75ee11e4baa6de3da7cf0e"
-  integrity sha512-lDXW06rf1sXywWWw+UdS/iYxRjrqhH4AXdPeKE4+fEgEoGBXcdIDQ+uCJOUcvCb0jCTvfwHOSXkwnfd24EAkLQ==
+  version "7.23.5"
+  resolved "https://registry.npmjs.org/@babel/eslint-plugin/-/eslint-plugin-7.23.5.tgz#77d4703e9f83b81e9fc13382810372beb2f10f94"
+  integrity sha512-03+E/58Hoo/ui69gR+beFdGpplpoVK0BSIdke2iw4/Bz7eGN0ssRenNlnU4nmbkowNQOPCStKSwFr8H6DiY49g==
   dependencies:
     eslint-rule-composer "^0.3.0"
 
-"@babel/generator@^7.22.15", "@babel/generator@^7.7.2":
-  version "7.22.15"
-  resolved "https://registry.npmjs.org/@babel/generator/-/generator-7.22.15.tgz#1564189c7ec94cb8f77b5e8a90c4d200d21b2339"
-  integrity sha512-Zu9oWARBqeVOW0dZOjXc3JObrzuqothQ3y/n1kUtrjCoCPLkXUwMvOo/F/TCfoHMbWIFlWwpZtkZVb9ga4U2pA==
-  dependencies:
-    "@babel/types" "^7.22.15"
-    "@jridgewell/gen-mapping" "^0.3.2"
-    "@jridgewell/trace-mapping" "^0.3.17"
-    jsesc "^2.5.1"
-
-"@babel/generator@^7.22.5":
-  version "7.22.5"
-  resolved "https://registry.npmjs.org/@babel/generator/-/generator-7.22.5.tgz#1e7bf768688acfb05cf30b2369ef855e82d984f7"
-  integrity sha512-+lcUbnTRhd0jOewtFSedLyiPsD5tswKkbgcezOqqWFUVNEwoUTlpPOBmvhG7OXWLR4jMdv0czPGH5XbflnD1EA==
-  dependencies:
-    "@babel/types" "^7.22.5"
-    "@jridgewell/gen-mapping" "^0.3.2"
-    "@jridgewell/trace-mapping" "^0.3.17"
-    jsesc "^2.5.1"
-
-"@babel/generator@^7.23.0":
-  version "7.23.0"
-  resolved "https://registry.npmjs.org/@babel/generator/-/generator-7.23.0.tgz#df5c386e2218be505b34837acbcb874d7a983420"
-  integrity sha512-lN85QRR+5IbYrMWM6Y4pE/noaQtg4pNiqeNGX60eqOfo6gtEj6uw/JagelB8vVztSd7R6M5n1+PQkDbHbBRU4g==
+"@babel/generator@^7.24.1", "@babel/generator@^7.24.4", "@babel/generator@^7.7.2":
+  version "7.24.4"
+  resolved "https://registry.npmjs.org/@babel/generator/-/generator-7.24.4.tgz#1fc55532b88adf952025d5d2d1e71f946cb1c498"
+  integrity sha512-Xd6+v6SnjWVx/nus+y0l1sxMOTOMBkyL4+BIdbALyatQnAe/SRVjANeDPSCYaX+i1iJmuGSKf3Z+E+V/va1Hvw==
   dependencies:
-    "@babel/types" "^7.23.0"
-    "@jridgewell/gen-mapping" "^0.3.2"
-    "@jridgewell/trace-mapping" "^0.3.17"
+    "@babel/types" "^7.24.0"
+    "@jridgewell/gen-mapping" "^0.3.5"
+    "@jridgewell/trace-mapping" "^0.3.25"
     jsesc "^2.5.1"
 
-"@babel/helper-annotate-as-pure@^7.18.6", "@babel/helper-annotate-as-pure@^7.22.5":
+"@babel/helper-annotate-as-pure@^7.22.5":
   version "7.22.5"
   resolved "https://registry.npmjs.org/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.22.5.tgz#e7f06737b197d580a01edf75d97e2c8be99d3882"
   integrity sha512-LvBTxu8bQSQkcyKOU+a1btnNFQ1dMAd0R6PyW3arXes06F6QLWLIrd681bxRPIXlrMGR3XYnW9JyML7dP3qgxg==
   dependencies:
     "@babel/types" "^7.22.5"
 
-"@babel/helper-builder-binary-assignment-operator-visitor@^7.22.5":
-  version "7.22.5"
-  resolved "https://registry.npmjs.org/@babel/helper-builder-binary-assignment-operator-visitor/-/helper-builder-binary-assignment-operator-visitor-7.22.5.tgz#a3f4758efdd0190d8927fcffd261755937c71878"
-  integrity sha512-m1EP3lVOPptR+2DwD125gziZNcmoNSHGmJROKoy87loWUQyJaVXDgpmruWqDARZSmtYQ+Dl25okU8+qhVzuykw==
+"@babel/helper-builder-binary-assignment-operator-visitor@^7.22.15":
+  version "7.22.15"
+  resolved "https://registry.npmjs.org/@babel/helper-builder-binary-assignment-operator-visitor/-/helper-builder-binary-assignment-operator-visitor-7.22.15.tgz#5426b109cf3ad47b91120f8328d8ab1be8b0b956"
+  integrity sha512-QkBXwGgaoC2GtGZRoma6kv7Szfv06khvhFav67ZExau2RaXzy8MpHSMO2PNoP2XtmQphJQRHFfg77Bq731Yizw==
   dependencies:
-    "@babel/types" "^7.22.5"
+    "@babel/types" "^7.22.15"
 
-"@babel/helper-compilation-targets@^7.17.7", "@babel/helper-compilation-targets@^7.20.7", "@babel/helper-compilation-targets@^7.22.5":
-  version "7.22.5"
-  resolved "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.22.5.tgz#fc7319fc54c5e2fa14b2909cf3c5fd3046813e02"
-  integrity sha512-Ji+ywpHeuqxB8WDxraCiqR0xfhYjiDE/e6k7FuIaANnoOFxAHskHChz4vA1mJC9Lbm01s1PVAGhQY4FUKSkGZw==
+"@babel/helper-compilation-targets@^7.20.7", "@babel/helper-compilation-targets@^7.22.6", "@babel/helper-compilation-targets@^7.23.6":
+  version "7.23.6"
+  resolved "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.23.6.tgz#4d79069b16cbcf1461289eccfbbd81501ae39991"
+  integrity sha512-9JB548GZoQVmzrFgp8o7KxdgkTGm6xs9DW0o/Pim72UDjzr5ObUQ6ZzYPqA+g9OTS2bBQoctLJrky0RDCAWRgQ==
   dependencies:
-    "@babel/compat-data" "^7.22.5"
-    "@babel/helper-validator-option" "^7.22.5"
-    browserslist "^4.21.3"
-    lru-cache "^5.1.1"
-    semver "^6.3.0"
-
-"@babel/helper-compilation-targets@^7.22.15", "@babel/helper-compilation-targets@^7.22.6":
-  version "7.22.15"
-  resolved "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.22.15.tgz#0698fc44551a26cf29f18d4662d5bf545a6cfc52"
-  integrity sha512-y6EEzULok0Qvz8yyLkCvVX+02ic+By2UdOhylwUOvOn9dvYc9mKICJuuU1n1XBI02YWsNsnrY1kc6DVbjcXbtw==
-  dependencies:
-    "@babel/compat-data" "^7.22.9"
-    "@babel/helper-validator-option" "^7.22.15"
-    browserslist "^4.21.9"
+    "@babel/compat-data" "^7.23.5"
+    "@babel/helper-validator-option" "^7.23.5"
+    browserslist "^4.22.2"
     lru-cache "^5.1.1"
     semver "^6.3.1"
 
-"@babel/helper-create-class-features-plugin@^7.18.6", "@babel/helper-create-class-features-plugin@^7.22.5":
-  version "7.22.5"
-  resolved "https://registry.npmjs.org/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.22.5.tgz#2192a1970ece4685fbff85b48da2c32fcb130b7c"
-  integrity sha512-xkb58MyOYIslxu3gKmVXmjTtUPvBU4odYzbiIQbWwLKIHCsx6UGZGX6F1IznMFVnDdirseUZopzN+ZRt8Xb33Q==
+"@babel/helper-create-class-features-plugin@^7.18.6", "@babel/helper-create-class-features-plugin@^7.24.1", "@babel/helper-create-class-features-plugin@^7.24.4":
+  version "7.24.4"
+  resolved "https://registry.npmjs.org/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.24.4.tgz#c806f73788a6800a5cfbbc04d2df7ee4d927cce3"
+  integrity sha512-lG75yeuUSVu0pIcbhiYMXBXANHrpUPaOfu7ryAzskCgKUHuAxRQI5ssrtmF0X9UXldPlvT0XM/A4F44OXRt6iQ==
   dependencies:
     "@babel/helper-annotate-as-pure" "^7.22.5"
-    "@babel/helper-environment-visitor" "^7.22.5"
-    "@babel/helper-function-name" "^7.22.5"
-    "@babel/helper-member-expression-to-functions" "^7.22.5"
-    "@babel/helper-optimise-call-expression" "^7.22.5"
-    "@babel/helper-replace-supers" "^7.22.5"
-    "@babel/helper-skip-transparent-expression-wrappers" "^7.22.5"
-    "@babel/helper-split-export-declaration" "^7.22.5"
-    semver "^6.3.0"
-
-"@babel/helper-create-class-features-plugin@^7.22.11", "@babel/helper-create-class-features-plugin@^7.22.15":
-  version "7.22.15"
-  resolved "https://registry.npmjs.org/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.22.15.tgz#97a61b385e57fe458496fad19f8e63b63c867de4"
-  integrity sha512-jKkwA59IXcvSaiK2UN45kKwSC9o+KuoXsBDvHvU/7BecYIp8GQ2UwrVvFgJASUT+hBnwJx6MhvMCuMzwZZ7jlg==
-  dependencies:
-    "@babel/helper-annotate-as-pure" "^7.22.5"
-    "@babel/helper-environment-visitor" "^7.22.5"
-    "@babel/helper-function-name" "^7.22.5"
-    "@babel/helper-member-expression-to-functions" "^7.22.15"
+    "@babel/helper-environment-visitor" "^7.22.20"
+    "@babel/helper-function-name" "^7.23.0"
+    "@babel/helper-member-expression-to-functions" "^7.23.0"
     "@babel/helper-optimise-call-expression" "^7.22.5"
-    "@babel/helper-replace-supers" "^7.22.9"
+    "@babel/helper-replace-supers" "^7.24.1"
     "@babel/helper-skip-transparent-expression-wrappers" "^7.22.5"
     "@babel/helper-split-export-declaration" "^7.22.6"
     semver "^6.3.1"
 
-"@babel/helper-create-regexp-features-plugin@^7.18.6", "@babel/helper-create-regexp-features-plugin@^7.22.5":
-  version "7.22.5"
-  resolved "https://registry.npmjs.org/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.22.5.tgz#bb2bf0debfe39b831986a4efbf4066586819c6e4"
-  integrity sha512-1VpEFOIbMRaXyDeUwUfmTIxExLwQ+zkW+Bh5zXpApA3oQedBx9v/updixWxnx/bZpKw7u8VxWjb/qWpIcmPq8A==
+"@babel/helper-create-regexp-features-plugin@^7.18.6", "@babel/helper-create-regexp-features-plugin@^7.22.15", "@babel/helper-create-regexp-features-plugin@^7.22.5":
+  version "7.22.15"
+  resolved "https://registry.npmjs.org/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.22.15.tgz#5ee90093914ea09639b01c711db0d6775e558be1"
+  integrity sha512-29FkPLFjn4TPEa3RE7GpW+qbE8tlsu3jntNYNfcGsc49LphF1PQIiD+vMZ1z1xVOKt+93khA9tc2JBs3kBjA7w==
   dependencies:
     "@babel/helper-annotate-as-pure" "^7.22.5"
     regexpu-core "^5.3.1"
-    semver "^6.3.0"
-
-"@babel/helper-define-polyfill-provider@^0.4.0":
-  version "0.4.0"
-  resolved "https://registry.npmjs.org/@babel/helper-define-polyfill-provider/-/helper-define-polyfill-provider-0.4.0.tgz#487053f103110f25b9755c5980e031e93ced24d8"
-  integrity sha512-RnanLx5ETe6aybRi1cO/edaRH+bNYWaryCEmjDDYyNr4wnSzyOp8T0dWipmqVHKEY3AbVKUom50AKSlj1zmKbg==
-  dependencies:
-    "@babel/helper-compilation-targets" "^7.17.7"
-    "@babel/helper-plugin-utils" "^7.16.7"
-    debug "^4.1.1"
-    lodash.debounce "^4.0.8"
-    resolve "^1.14.2"
-    semver "^6.1.2"
-
-"@babel/helper-define-polyfill-provider@^0.4.2":
-  version "0.4.2"
-  resolved "https://registry.npmjs.org/@babel/helper-define-polyfill-provider/-/helper-define-polyfill-provider-0.4.2.tgz#82c825cadeeeee7aad237618ebbe8fa1710015d7"
-  integrity sha512-k0qnnOqHn5dK9pZpfD5XXZ9SojAITdCKRn2Lp6rnDGzIbaP0rHyMPk/4wsSxVBVz4RfN0q6VpXWP2pDGIoQ7hw==
-  dependencies:
-    "@babel/helper-compilation-targets" "^7.22.6"
-    "@babel/helper-plugin-utils" "^7.22.5"
-    debug "^4.1.1"
-    lodash.debounce "^4.0.8"
-    resolve "^1.14.2"
+    semver "^6.3.1"
 
-"@babel/helper-define-polyfill-provider@^0.4.3":
-  version "0.4.3"
-  resolved "https://registry.npmjs.org/@babel/helper-define-polyfill-provider/-/helper-define-polyfill-provider-0.4.3.tgz#a71c10f7146d809f4a256c373f462d9bba8cf6ba"
-  integrity sha512-WBrLmuPP47n7PNwsZ57pqam6G/RGo1vw/87b0Blc53tZNGZ4x7YvZ6HgQe2vo1W/FR20OgjeZuGXzudPiXHFug==
+"@babel/helper-define-polyfill-provider@^0.6.1":
+  version "0.6.1"
+  resolved "https://registry.npmjs.org/@babel/helper-define-polyfill-provider/-/helper-define-polyfill-provider-0.6.1.tgz#fadc63f0c2ff3c8d02ed905dcea747c5b0fb74fd"
+  integrity sha512-o7SDgTJuvx5vLKD6SFvkydkSMBvahDKGiNJzG22IZYXhiqoe9efY7zocICBgzHV4IRg5wdgl2nEL/tulKIEIbA==
   dependencies:
     "@babel/helper-compilation-targets" "^7.22.6"
     "@babel/helper-plugin-utils" "^7.22.5"
@@ -268,20 +145,7 @@
   resolved "https://registry.npmjs.org/@babel/helper-environment-visitor/-/helper-environment-visitor-7.22.20.tgz#96159db61d34a29dba454c959f5ae4a649ba9167"
   integrity sha512-zfedSIzFhat/gFhWfHtgWvlec0nqB9YEIVrpuwjruLlXfUSnA8cJB0miHKwqDnQ7d32aKo2xt88/xZptwxbfhA==
 
-"@babel/helper-environment-visitor@^7.22.5":
-  version "7.22.5"
-  resolved "https://registry.npmjs.org/@babel/helper-environment-visitor/-/helper-environment-visitor-7.22.5.tgz#f06dd41b7c1f44e1f8da6c4055b41ab3a09a7e98"
-  integrity sha512-XGmhECfVA/5sAt+H+xpSg0mfrHq6FzNr9Oxh7PSEBBRUb/mL7Kz3NICXb194rCqAEdxkhPT1a88teizAFyvk8Q==
-
-"@babel/helper-function-name@^7.22.5":
-  version "7.22.5"
-  resolved "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.22.5.tgz#ede300828905bb15e582c037162f99d5183af1be"
-  integrity sha512-wtHSq6jMRE3uF2otvfuD3DIvVhOsSNshQl0Qrd7qC9oQJzHvOL4qQXlQn2916+CXGywIjpGuIkoyZRRxHPiNQQ==
-  dependencies:
-    "@babel/template" "^7.22.5"
-    "@babel/types" "^7.22.5"
-
-"@babel/helper-function-name@^7.23.0":
+"@babel/helper-function-name@^7.22.5", "@babel/helper-function-name@^7.23.0":
   version "7.23.0"
   resolved "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.23.0.tgz#1f9a3cdbd5b2698a670c30d2735f9af95ed52759"
   integrity sha512-OErEqsrxjZTJciZ4Oo+eoZqeW9UIiOcuYKRJA4ZAgV9myA+pOXhhmpfNCKjEH/auVfEYVFJ6y1Tc4r0eIApqiw==
@@ -296,63 +160,24 @@
   dependencies:
     "@babel/types" "^7.22.5"
 
-"@babel/helper-member-expression-to-functions@^7.22.15":
+"@babel/helper-member-expression-to-functions@^7.23.0":
   version "7.23.0"
   resolved "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.23.0.tgz#9263e88cc5e41d39ec18c9a3e0eced59a3e7d366"
   integrity sha512-6gfrPwh7OuT6gZyJZvd6WbTfrqAo7vm4xCzAXOusKqq/vWdKXphTpj5klHKNmRUU6/QRGlBsyU9mAIPaWHlqJA==
   dependencies:
     "@babel/types" "^7.23.0"
 
-"@babel/helper-member-expression-to-functions@^7.22.5":
-  version "7.22.5"
-  resolved "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.22.5.tgz#0a7c56117cad3372fbf8d2fb4bf8f8d64a1e76b2"
-  integrity sha512-aBiH1NKMG0H2cGZqspNvsaBe6wNGjbJjuLy29aU+eDZjSbbN53BaxlpB02xm9v34pLTZ1nIQPFYn2qMZoa5BQQ==
-  dependencies:
-    "@babel/types" "^7.22.5"
-
-"@babel/helper-module-imports@^7.0.0", "@babel/helper-module-imports@^7.16.7", "@babel/helper-module-imports@^7.21.4", "@babel/helper-module-imports@^7.22.5":
-  version "7.22.5"
-  resolved "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.22.5.tgz#1a8f4c9f4027d23f520bd76b364d44434a72660c"
-  integrity sha512-8Dl6+HD/cKifutF5qGd/8ZJi84QeAKh+CEe1sBzz8UayBBGg1dAIJrdHOcOM5b2MpzWL2yuotJTtGjETq0qjXg==
+"@babel/helper-module-imports@^7.0.0", "@babel/helper-module-imports@^7.16.7", "@babel/helper-module-imports@^7.22.15", "@babel/helper-module-imports@^7.22.5", "@babel/helper-module-imports@^7.24.1", "@babel/helper-module-imports@^7.24.3":
+  version "7.24.3"
+  resolved "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.24.3.tgz#6ac476e6d168c7c23ff3ba3cf4f7841d46ac8128"
+  integrity sha512-viKb0F9f2s0BCS22QSF308z/+1YWKV/76mwt61NBzS5izMzDPwdq1pTrzf+Li3npBWX9KdQbkeCt1jSAM7lZqg==
   dependencies:
-    "@babel/types" "^7.22.5"
+    "@babel/types" "^7.24.0"
 
-"@babel/helper-module-imports@^7.22.15":
-  version "7.22.15"
-  resolved "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.22.15.tgz#16146307acdc40cc00c3b2c647713076464bdbf0"
-  integrity sha512-0pYVBnDKZO2fnSPCrgM/6WMc7eS20Fbok+0r88fp+YtWVLZrp4CkafFGIp+W0VKw4a22sgebPT99y+FDNMdP4w==
-  dependencies:
-    "@babel/types" "^7.22.15"
-
-"@babel/helper-module-transforms@^7.22.15":
-  version "7.22.15"
-  resolved "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.22.15.tgz#40ad2f6950f143900e9c1c72363c0b431a606082"
-  integrity sha512-l1UiX4UyHSFsYt17iQ3Se5pQQZZHa22zyIXURmvkmLCD4t/aU+dvNWHatKac/D9Vm9UES7nvIqHs4jZqKviUmQ==
-  dependencies:
-    "@babel/helper-environment-visitor" "^7.22.5"
-    "@babel/helper-module-imports" "^7.22.15"
-    "@babel/helper-simple-access" "^7.22.5"
-    "@babel/helper-split-export-declaration" "^7.22.6"
-    "@babel/helper-validator-identifier" "^7.22.15"
-
-"@babel/helper-module-transforms@^7.22.5":
-  version "7.22.5"
-  resolved "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.22.5.tgz#0f65daa0716961b6e96b164034e737f60a80d2ef"
-  integrity sha512-+hGKDt/Ze8GFExiVHno/2dvG5IdstpzCq0y4Qc9OJ25D4q3pKfiIP/4Vp3/JvhDkLKsDK2api3q3fpIgiIF5bw==
-  dependencies:
-    "@babel/helper-environment-visitor" "^7.22.5"
-    "@babel/helper-module-imports" "^7.22.5"
-    "@babel/helper-simple-access" "^7.22.5"
-    "@babel/helper-split-export-declaration" "^7.22.5"
-    "@babel/helper-validator-identifier" "^7.22.5"
-    "@babel/template" "^7.22.5"
-    "@babel/traverse" "^7.22.5"
-    "@babel/types" "^7.22.5"
-
-"@babel/helper-module-transforms@^7.23.0":
-  version "7.23.0"
-  resolved "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.23.0.tgz#3ec246457f6c842c0aee62a01f60739906f7047e"
-  integrity sha512-WhDWw1tdrlT0gMgUJSlX0IQvoO1eN279zrAUbVB+KpV2c3Tylz8+GnKOLllCS6Z/iZQEyVYxhZVUdPTqs2YYPw==
+"@babel/helper-module-transforms@^7.23.3":
+  version "7.23.3"
+  resolved "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.23.3.tgz#d7d12c3c5d30af5b3c0fcab2a6d5217773e2d0f1"
+  integrity sha512-7bBs4ED9OmswdfDzpz4MpWgSrV7FXlc3zIagvLFjS5H+Mk7Snr21vQ6QwrsoCGMfNC4e4LQPdoULEt4ykz0SRQ==
   dependencies:
     "@babel/helper-environment-visitor" "^7.22.20"
     "@babel/helper-module-imports" "^7.22.15"
@@ -367,10 +192,10 @@
   dependencies:
     "@babel/types" "^7.22.5"
 
-"@babel/helper-plugin-utils@^7.0.0", "@babel/helper-plugin-utils@^7.10.4", "@babel/helper-plugin-utils@^7.12.13", "@babel/helper-plugin-utils@^7.14.5", "@babel/helper-plugin-utils@^7.16.7", "@babel/helper-plugin-utils@^7.18.6", "@babel/helper-plugin-utils@^7.20.2", "@babel/helper-plugin-utils@^7.22.5", "@babel/helper-plugin-utils@^7.8.0", "@babel/helper-plugin-utils@^7.8.3":
-  version "7.22.5"
-  resolved "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.22.5.tgz#dd7ee3735e8a313b9f7b05a773d892e88e6d7295"
-  integrity sha512-uLls06UVKgFG9QD4OeFYLEGteMIAa5kpTPcFL28yuCIIzsf6ZyKZMllKVOCZFhiZ5ptnwX4mtKdWCBE/uT4amg==
+"@babel/helper-plugin-utils@^7.0.0", "@babel/helper-plugin-utils@^7.10.4", "@babel/helper-plugin-utils@^7.12.13", "@babel/helper-plugin-utils@^7.14.5", "@babel/helper-plugin-utils@^7.18.6", "@babel/helper-plugin-utils@^7.20.2", "@babel/helper-plugin-utils@^7.22.5", "@babel/helper-plugin-utils@^7.24.0", "@babel/helper-plugin-utils@^7.8.0", "@babel/helper-plugin-utils@^7.8.3":
+  version "7.24.0"
+  resolved "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.24.0.tgz#945681931a52f15ce879fd5b86ce2dae6d3d7f2a"
+  integrity sha512-9cUznXMG0+FxRuJfvL82QlTqIzhVW9sL0KjMPHhAOOvpQGL8QtdxnBKILjBqxlHyliz0yCa1G903ZXI/FuHy2w==
 
 "@babel/helper-remap-async-to-generator@^7.22.20":
   version "7.22.20"
@@ -381,35 +206,13 @@
     "@babel/helper-environment-visitor" "^7.22.20"
     "@babel/helper-wrap-function" "^7.22.20"
 
-"@babel/helper-remap-async-to-generator@^7.22.5":
-  version "7.22.5"
-  resolved "https://registry.npmjs.org/@babel/helper-remap-async-to-generator/-/helper-remap-async-to-generator-7.22.5.tgz#14a38141a7bf2165ad38da61d61cf27b43015da2"
-  integrity sha512-cU0Sq1Rf4Z55fgz7haOakIyM7+x/uCFwXpLPaeRzfoUtAEAuUZjZvFPjL/rk5rW693dIgn2hng1W7xbT7lWT4g==
-  dependencies:
-    "@babel/helper-annotate-as-pure" "^7.22.5"
-    "@babel/helper-environment-visitor" "^7.22.5"
-    "@babel/helper-wrap-function" "^7.22.5"
-    "@babel/types" "^7.22.5"
-
-"@babel/helper-replace-supers@^7.22.5":
-  version "7.22.5"
-  resolved "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.22.5.tgz#71bc5fb348856dea9fdc4eafd7e2e49f585145dc"
-  integrity sha512-aLdNM5I3kdI/V9xGNyKSF3X/gTyMUBohTZ+/3QdQKAA9vxIiy12E+8E2HoOP1/DjeqU+g6as35QHJNMDDYpuCg==
-  dependencies:
-    "@babel/helper-environment-visitor" "^7.22.5"
-    "@babel/helper-member-expression-to-functions" "^7.22.5"
-    "@babel/helper-optimise-call-expression" "^7.22.5"
-    "@babel/template" "^7.22.5"
-    "@babel/traverse" "^7.22.5"
-    "@babel/types" "^7.22.5"
-
-"@babel/helper-replace-supers@^7.22.9":
-  version "7.22.20"
-  resolved "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.22.20.tgz#e37d367123ca98fe455a9887734ed2e16eb7a793"
-  integrity sha512-qsW0In3dbwQUbK8kejJ4R7IHVGwHJlV6lpG6UA7a9hSa2YEiAib+N1T2kr6PEeUT+Fl7najmSOS6SmAwCHK6Tw==
+"@babel/helper-replace-supers@^7.24.1":
+  version "7.24.1"
+  resolved "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.24.1.tgz#7085bd19d4a0b7ed8f405c1ed73ccb70f323abc1"
+  integrity sha512-QCR1UqC9BzG5vZl8BMicmZ28RuUBnHhAMddD8yHFHDRH9lLTZ9uUPehX8ctVPT8l0TKblJidqcgUUKGVrePleQ==
   dependencies:
     "@babel/helper-environment-visitor" "^7.22.20"
-    "@babel/helper-member-expression-to-functions" "^7.22.15"
+    "@babel/helper-member-expression-to-functions" "^7.23.0"
     "@babel/helper-optimise-call-expression" "^7.22.5"
 
 "@babel/helper-simple-access@^7.22.5":
@@ -426,13 +229,6 @@
   dependencies:
     "@babel/types" "^7.22.5"
 
-"@babel/helper-split-export-declaration@^7.22.5":
-  version "7.22.5"
-  resolved "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.22.5.tgz#88cf11050edb95ed08d596f7a044462189127a08"
-  integrity sha512-thqK5QFghPKWLhAV321lxF95yCg2K3Ob5yw+M3VHWfdia0IkPXUtoLH8x/6Fh486QUvzhb8YOWHChTVen2/PoQ==
-  dependencies:
-    "@babel/types" "^7.22.5"
-
 "@babel/helper-split-export-declaration@^7.22.6":
   version "7.22.6"
   resolved "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.22.6.tgz#322c61b7310c0997fe4c323955667f18fcefb91c"
@@ -440,35 +236,20 @@
   dependencies:
     "@babel/types" "^7.22.5"
 
-"@babel/helper-string-parser@^7.22.5":
-  version "7.22.5"
-  resolved "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.22.5.tgz#533f36457a25814cf1df6488523ad547d784a99f"
-  integrity sha512-mM4COjgZox8U+JcXQwPijIZLElkgEpO5rsERVDJTc2qfCDfERyob6k5WegS14SX18IIjv+XD+GrqNumY5JRCDw==
-
-"@babel/helper-validator-identifier@^7.22.15":
-  version "7.22.15"
-  resolved "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.22.15.tgz#601fa28e4cc06786c18912dca138cec73b882044"
-  integrity sha512-4E/F9IIEi8WR94324mbDUMo074YTheJmd7eZF5vITTeYchqAi6sYXRLHUVsmkdmY4QjfKTcB2jB7dVP3NaBElQ==
+"@babel/helper-string-parser@^7.23.4":
+  version "7.24.1"
+  resolved "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.24.1.tgz#f99c36d3593db9540705d0739a1f10b5e20c696e"
+  integrity sha512-2ofRCjnnA9y+wk8b9IAREroeUP02KHp431N2mhKniy2yKIDKpbrHv9eXwm8cBeWQYcJmzv5qKCu65P47eCF7CQ==
 
 "@babel/helper-validator-identifier@^7.22.20":
   version "7.22.20"
   resolved "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.22.20.tgz#c4ae002c61d2879e724581d96665583dbc1dc0e0"
   integrity sha512-Y4OZ+ytlatR8AI+8KZfKuL5urKp7qey08ha31L8b3BwewJAoJamTzyvxPR/5D+KkdJCGPq/+8TukHBlY10FX9A==
 
-"@babel/helper-validator-identifier@^7.22.5":
-  version "7.22.5"
-  resolved "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.22.5.tgz#9544ef6a33999343c8740fa51350f30eeaaaf193"
-  integrity sha512-aJXu+6lErq8ltp+JhkJUfk1MTGyuA4v7f3pA+BJ5HLfNC6nAQ0Cpi9uOquUj8Hehg0aUiHzWQbOVJGao6ztBAQ==
-
-"@babel/helper-validator-option@^7.22.15":
-  version "7.22.15"
-  resolved "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.22.15.tgz#694c30dfa1d09a6534cdfcafbe56789d36aba040"
-  integrity sha512-bMn7RmyFjY/mdECUbgn9eoSY4vqvacUnS9i9vGAGttgFWesO6B4CYWA7XlpbWgBt71iv/hfbPlynohStqnu5hA==
-
-"@babel/helper-validator-option@^7.22.5":
-  version "7.22.5"
-  resolved "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.22.5.tgz#de52000a15a177413c8234fa3a8af4ee8102d0ac"
-  integrity sha512-R3oB6xlIVKUnxNUxbmgq7pKjxpru24zlimpE8WK47fACIlM0II/Hm1RS8IaOI7NgCr6LNS+jl5l75m20npAziw==
+"@babel/helper-validator-option@^7.23.5":
+  version "7.23.5"
+  resolved "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.23.5.tgz#907a3fbd4523426285365d1206c423c4c5520307"
+  integrity sha512-85ttAOMLsr53VgXkTbkx8oA6YTfT4q7/HzXSLEYmjcSTJPMPQtvq1BD79Byep5xMUYbGRzEpDsjUf3dyp54IKw==
 
 "@babel/helper-wrap-function@^7.22.20":
   version "7.22.20"
@@ -479,107 +260,61 @@
     "@babel/template" "^7.22.15"
     "@babel/types" "^7.22.19"
 
-"@babel/helper-wrap-function@^7.22.5":
-  version "7.22.5"
-  resolved "https://registry.npmjs.org/@babel/helper-wrap-function/-/helper-wrap-function-7.22.5.tgz#44d205af19ed8d872b4eefb0d2fa65f45eb34f06"
-  integrity sha512-bYqLIBSEshYcYQyfks8ewYA8S30yaGSeRslcvKMvoUk6HHPySbxHq9YRi6ghhzEU+yhQv9bP/jXnygkStOcqZw==
+"@babel/helpers@^7.24.4":
+  version "7.24.4"
+  resolved "https://registry.npmjs.org/@babel/helpers/-/helpers-7.24.4.tgz#dc00907fd0d95da74563c142ef4cd21f2cb856b6"
+  integrity sha512-FewdlZbSiwaVGlgT1DPANDuCHaDMiOo+D/IDYRFYjHOuv66xMSJ7fQwwODwRNAPkADIO/z1EoF/l2BCWlWABDw==
   dependencies:
-    "@babel/helper-function-name" "^7.22.5"
-    "@babel/template" "^7.22.5"
-    "@babel/traverse" "^7.22.5"
-    "@babel/types" "^7.22.5"
+    "@babel/template" "^7.24.0"
+    "@babel/traverse" "^7.24.1"
+    "@babel/types" "^7.24.0"
 
-"@babel/helpers@^7.22.15":
-  version "7.22.15"
-  resolved "https://registry.npmjs.org/@babel/helpers/-/helpers-7.22.15.tgz#f09c3df31e86e3ea0b7ff7556d85cdebd47ea6f1"
-  integrity sha512-7pAjK0aSdxOwR+CcYAqgWOGy5dcfvzsTIfFTb2odQqW47MDfv14UaJDY6eng8ylM2EaeKXdxaSWESbkmaQHTmw==
+"@babel/highlight@^7.24.2":
+  version "7.24.2"
+  resolved "https://registry.npmjs.org/@babel/highlight/-/highlight-7.24.2.tgz#3f539503efc83d3c59080a10e6634306e0370d26"
+  integrity sha512-Yac1ao4flkTxTteCDZLEvdxg2fZfz1v8M4QpaGypq/WPDqg3ijHYbDfs+LG5hvzSoqaSZ9/Z9lKSP3CjZjv+pA==
   dependencies:
-    "@babel/template" "^7.22.15"
-    "@babel/traverse" "^7.22.15"
-    "@babel/types" "^7.22.15"
-
-"@babel/helpers@^7.22.5":
-  version "7.22.5"
-  resolved "https://registry.npmjs.org/@babel/helpers/-/helpers-7.22.5.tgz#74bb4373eb390d1ceed74a15ef97767e63120820"
-  integrity sha512-pSXRmfE1vzcUIDFQcSGA5Mr+GxBV9oiRKDuDxXvWQQBCh8HoIjs/2DlDB7H8smac1IVrB9/xdXj2N3Wol9Cr+Q==
-  dependencies:
-    "@babel/template" "^7.22.5"
-    "@babel/traverse" "^7.22.5"
-    "@babel/types" "^7.22.5"
-
-"@babel/helpers@^7.23.2":
-  version "7.23.2"
-  resolved "https://registry.npmjs.org/@babel/helpers/-/helpers-7.23.2.tgz#2832549a6e37d484286e15ba36a5330483cac767"
-  integrity sha512-lzchcp8SjTSVe/fPmLwtWVBFC7+Tbn8LGHDVfDp9JGxpAY5opSaEFgt8UQvrnECWOTdji2mOWMz1rOhkHscmGQ==
-  dependencies:
-    "@babel/template" "^7.22.15"
-    "@babel/traverse" "^7.23.2"
-    "@babel/types" "^7.23.0"
-
-"@babel/highlight@^7.22.13":
-  version "7.22.13"
-  resolved "https://registry.npmjs.org/@babel/highlight/-/highlight-7.22.13.tgz#9cda839e5d3be9ca9e8c26b6dd69e7548f0cbf16"
-  integrity sha512-C/BaXcnnvBCmHTpz/VGZ8jgtE2aYlW4hxDhseJAWZb7gqGM/qtCK6iZUb0TyKFf7BOUsBH7Q7fkRsDRhg1XklQ==
-  dependencies:
-    "@babel/helper-validator-identifier" "^7.22.5"
+    "@babel/helper-validator-identifier" "^7.22.20"
     chalk "^2.4.2"
     js-tokens "^4.0.0"
+    picocolors "^1.0.0"
 
-"@babel/highlight@^7.22.5":
-  version "7.22.5"
-  resolved "https://registry.npmjs.org/@babel/highlight/-/highlight-7.22.5.tgz#aa6c05c5407a67ebce408162b7ede789b4d22031"
-  integrity sha512-BSKlD1hgnedS5XRnGOljZawtag7H1yPfQp0tdNJCHoH6AZ+Pcm9VvkrK59/Yy593Ypg0zMxH2BxD1VPYUQ7UIw==
-  dependencies:
-    "@babel/helper-validator-identifier" "^7.22.5"
-    chalk "^2.0.0"
-    js-tokens "^4.0.0"
-
-"@babel/parser@^7.1.0", "@babel/parser@^7.20.7", "@babel/parser@^7.22.15":
-  version "7.22.15"
-  resolved "https://registry.npmjs.org/@babel/parser/-/parser-7.22.15.tgz#d34592bfe288a32e741aa0663dbc4829fcd55160"
-  integrity sha512-RWmQ/sklUN9BvGGpCDgSubhHWfAx24XDTDObup4ffvxaYsptOg2P3KG0j+1eWKLxpkX0j0uHxmpq2Z1SP/VhxA==
-
-"@babel/parser@^7.14.7", "@babel/parser@^7.22.5":
-  version "7.22.5"
-  resolved "https://registry.npmjs.org/@babel/parser/-/parser-7.22.5.tgz#721fd042f3ce1896238cf1b341c77eb7dee7dbea"
-  integrity sha512-DFZMC9LJUG9PLOclRC32G63UXwzqS2koQC8dkx+PLdmt1xSePYpbT/NbsrJy8Q/muXz7o/h/d4A7Fuyixm559Q==
+"@babel/parser@^7.1.0", "@babel/parser@^7.14.7", "@babel/parser@^7.20.7", "@babel/parser@^7.23.9", "@babel/parser@^7.24.0", "@babel/parser@^7.24.1", "@babel/parser@^7.24.4":
+  version "7.24.4"
+  resolved "https://registry.npmjs.org/@babel/parser/-/parser-7.24.4.tgz#234487a110d89ad5a3ed4a8a566c36b9453e8c88"
+  integrity sha512-zTvEBcghmeBma9QIGunWevvBAp4/Qu9Bdq+2k0Ot4fVMD6v3dsC9WOcRSKk7tRRyBM/53yKMJko9xOatGQAwSg==
 
-"@babel/parser@^7.23.0":
-  version "7.23.0"
-  resolved "https://registry.npmjs.org/@babel/parser/-/parser-7.23.0.tgz#da950e622420bf96ca0d0f2909cdddac3acd8719"
-  integrity sha512-vvPKKdMemU85V9WE/l5wZEmImpCtLqbnTvqDS2U1fJ96KrxoW7KrXhNsNCblQlg8Ck4b85yxdTyelsMUgFUXiw==
-
-"@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression@^7.22.15":
-  version "7.22.15"
-  resolved "https://registry.npmjs.org/@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression/-/plugin-bugfix-safari-id-destructuring-collision-in-function-expression-7.22.15.tgz#02dc8a03f613ed5fdc29fb2f728397c78146c962"
-  integrity sha512-FB9iYlz7rURmRJyXRKEnalYPPdn87H5no108cyuQQyMwlpJ2SJtpIUBI27kdTin956pz+LPypkPVPUTlxOmrsg==
+"@babel/plugin-bugfix-firefox-class-in-computed-class-key@^7.24.4":
+  version "7.24.4"
+  resolved "https://registry.npmjs.org/@babel/plugin-bugfix-firefox-class-in-computed-class-key/-/plugin-bugfix-firefox-class-in-computed-class-key-7.24.4.tgz#6125f0158543fb4edf1c22f322f3db67f21cb3e1"
+  integrity sha512-qpl6vOOEEzTLLcsuqYYo8yDtrTocmu2xkGvgNebvPjT9DTtfFYGmgDqY+rBYXNlqL4s9qLDn6xkrJv4RxAPiTA==
   dependencies:
-    "@babel/helper-plugin-utils" "^7.22.5"
+    "@babel/helper-environment-visitor" "^7.22.20"
+    "@babel/helper-plugin-utils" "^7.24.0"
 
-"@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression@^7.22.5":
-  version "7.22.5"
-  resolved "https://registry.npmjs.org/@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression/-/plugin-bugfix-safari-id-destructuring-collision-in-function-expression-7.22.5.tgz#87245a21cd69a73b0b81bcda98d443d6df08f05e"
-  integrity sha512-NP1M5Rf+u2Gw9qfSO4ihjcTGW5zXTi36ITLd4/EoAcEhIZ0yjMqmftDNl3QC19CX7olhrjpyU454g/2W7X0jvQ==
+"@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression@^7.24.1":
+  version "7.24.1"
+  resolved "https://registry.npmjs.org/@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression/-/plugin-bugfix-safari-id-destructuring-collision-in-function-expression-7.24.1.tgz#b645d9ba8c2bc5b7af50f0fe949f9edbeb07c8cf"
+  integrity sha512-y4HqEnkelJIOQGd+3g1bTeKsA5c6qM7eOn7VggGVbBc0y8MLSKHacwcIE2PplNlQSj0PqS9rrXL/nkPVK+kUNg==
   dependencies:
-    "@babel/helper-plugin-utils" "^7.22.5"
+    "@babel/helper-plugin-utils" "^7.24.0"
 
-"@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining@^7.22.15":
-  version "7.22.15"
-  resolved "https://registry.npmjs.org/@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining/-/plugin-bugfix-v8-spread-parameters-in-optional-chaining-7.22.15.tgz#2aeb91d337d4e1a1e7ce85b76a37f5301781200f"
-  integrity sha512-Hyph9LseGvAeeXzikV88bczhsrLrIZqDPxO+sSmAunMPaGrBGhfMWzCPYTtiW9t+HzSE2wtV8e5cc5P6r1xMDQ==
+"@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining@^7.24.1":
+  version "7.24.1"
+  resolved "https://registry.npmjs.org/@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining/-/plugin-bugfix-v8-spread-parameters-in-optional-chaining-7.24.1.tgz#da8261f2697f0f41b0855b91d3a20a1fbfd271d3"
+  integrity sha512-Hj791Ii4ci8HqnaKHAlLNs+zaLXb0EzSDhiAWp5VNlyvCNymYfacs64pxTxbH1znW/NcArSmwpmG9IKE/TUVVQ==
   dependencies:
-    "@babel/helper-plugin-utils" "^7.22.5"
+    "@babel/helper-plugin-utils" "^7.24.0"
     "@babel/helper-skip-transparent-expression-wrappers" "^7.22.5"
-    "@babel/plugin-transform-optional-chaining" "^7.22.15"
+    "@babel/plugin-transform-optional-chaining" "^7.24.1"
 
-"@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining@^7.22.5":
-  version "7.22.5"
-  resolved "https://registry.npmjs.org/@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining/-/plugin-bugfix-v8-spread-parameters-in-optional-chaining-7.22.5.tgz#fef09f9499b1f1c930da8a0c419db42167d792ca"
-  integrity sha512-31Bb65aZaUwqCbWMnZPduIZxCBngHFlzyN6Dq6KAJjtx+lx6ohKHubc61OomYi7XwVD4Ol0XCVz4h+pYFR048g==
+"@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly@^7.24.1":
+  version "7.24.1"
+  resolved "https://registry.npmjs.org/@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly/-/plugin-bugfix-v8-static-class-fields-redefine-readonly-7.24.1.tgz#1181d9685984c91d657b8ddf14f0487a6bab2988"
+  integrity sha512-m9m/fXsXLiHfwdgydIFnpk+7jlVbnvlK5B2EKiPdLUb6WX654ZaaEWJUjk8TftRbZpK0XibovlLWX4KIZhV6jw==
   dependencies:
-    "@babel/helper-plugin-utils" "^7.22.5"
-    "@babel/helper-skip-transparent-expression-wrappers" "^7.22.5"
-    "@babel/plugin-transform-optional-chaining" "^7.22.5"
+    "@babel/helper-environment-visitor" "^7.22.20"
+    "@babel/helper-plugin-utils" "^7.24.0"
 
 "@babel/plugin-proposal-class-properties@^7.10.4":
   version "7.18.6"
@@ -605,14 +340,6 @@
   resolved "https://registry.npmjs.org/@babel/plugin-proposal-private-property-in-object/-/plugin-proposal-private-property-in-object-7.21.0-placeholder-for-preset-env.2.tgz#7844f9289546efa9febac2de4cfe358a050bd703"
   integrity sha512-SOSkfJDddaM7mak6cPEpswyTRnuRltl429hMraQEglW+OkovnCzsiszTmsrlY//qLFjCpQDFRvjdm2wA5pPm9w==
 
-"@babel/plugin-proposal-unicode-property-regex@^7.4.4":
-  version "7.18.6"
-  resolved "https://registry.npmjs.org/@babel/plugin-proposal-unicode-property-regex/-/plugin-proposal-unicode-property-regex-7.18.6.tgz#af613d2cd5e643643b65cded64207b15c85cb78e"
-  integrity sha512-2BShG/d5yoZyXZfVePH91urL5wTG6ASZU9M4o03lKK8u8UW1y08OMttBSOADTcJrnPMpvDXRG3G8fyLh4ovs8w==
-  dependencies:
-    "@babel/helper-create-regexp-features-plugin" "^7.18.6"
-    "@babel/helper-plugin-utils" "^7.18.6"
-
 "@babel/plugin-syntax-async-generators@^7.8.4":
   version "7.8.4"
   resolved "https://registry.npmjs.org/@babel/plugin-syntax-async-generators/-/plugin-syntax-async-generators-7.8.4.tgz#a983fb1aeb2ec3f6ed042a210f640e90e786fe0d"
@@ -655,19 +382,19 @@
   dependencies:
     "@babel/helper-plugin-utils" "^7.8.3"
 
-"@babel/plugin-syntax-import-assertions@^7.22.5":
-  version "7.22.5"
-  resolved "https://registry.npmjs.org/@babel/plugin-syntax-import-assertions/-/plugin-syntax-import-assertions-7.22.5.tgz#07d252e2aa0bc6125567f742cd58619cb14dce98"
-  integrity sha512-rdV97N7KqsRzeNGoWUOK6yUsWarLjE5Su/Snk9IYPU9CwkWHs4t+rTGOvffTR8XGkJMTAdLfO0xVnXm8wugIJg==
+"@babel/plugin-syntax-import-assertions@^7.24.1":
+  version "7.24.1"
+  resolved "https://registry.npmjs.org/@babel/plugin-syntax-import-assertions/-/plugin-syntax-import-assertions-7.24.1.tgz#db3aad724153a00eaac115a3fb898de544e34971"
+  integrity sha512-IuwnI5XnuF189t91XbxmXeCDz3qs6iDRO7GJ++wcfgeXNs/8FmIlKcpDSXNVyuLQxlwvskmI3Ct73wUODkJBlQ==
   dependencies:
-    "@babel/helper-plugin-utils" "^7.22.5"
+    "@babel/helper-plugin-utils" "^7.24.0"
 
-"@babel/plugin-syntax-import-attributes@^7.22.5":
-  version "7.22.5"
-  resolved "https://registry.npmjs.org/@babel/plugin-syntax-import-attributes/-/plugin-syntax-import-attributes-7.22.5.tgz#ab840248d834410b829f569f5262b9e517555ecb"
-  integrity sha512-KwvoWDeNKPETmozyFE0P2rOLqh39EoQHNjqizrI5B8Vt0ZNS7M56s7dAiAqbYfiAYOuIzIh96z3iR2ktgu3tEg==
+"@babel/plugin-syntax-import-attributes@^7.24.1":
+  version "7.24.1"
+  resolved "https://registry.npmjs.org/@babel/plugin-syntax-import-attributes/-/plugin-syntax-import-attributes-7.24.1.tgz#c66b966c63b714c4eec508fcf5763b1f2d381093"
+  integrity sha512-zhQTMH0X2nVLnb04tz+s7AMuasX8U0FnpE+nHTOhSOINjWMnopoZTxtIKsd45n4GQ/HIZLyfIpoul8e2m0DnRA==
   dependencies:
-    "@babel/helper-plugin-utils" "^7.22.5"
+    "@babel/helper-plugin-utils" "^7.24.0"
 
 "@babel/plugin-syntax-import-meta@^7.10.4", "@babel/plugin-syntax-import-meta@^7.8.3":
   version "7.10.4"
@@ -683,12 +410,12 @@
   dependencies:
     "@babel/helper-plugin-utils" "^7.8.0"
 
-"@babel/plugin-syntax-jsx@^7.16.0", "@babel/plugin-syntax-jsx@^7.22.5", "@babel/plugin-syntax-jsx@^7.7.2":
-  version "7.22.5"
-  resolved "https://registry.npmjs.org/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.22.5.tgz#a6b68e84fb76e759fc3b93e901876ffabbe1d918"
-  integrity sha512-gvyP4hZrgrs/wWMaocvxZ44Hw0b3W8Pe+cMxc8V1ULQ07oh8VNbIRaoD1LRZVTvD+0nieDKjfgKg89sD7rrKrg==
+"@babel/plugin-syntax-jsx@^7.16.0", "@babel/plugin-syntax-jsx@^7.22.5", "@babel/plugin-syntax-jsx@^7.23.3", "@babel/plugin-syntax-jsx@^7.24.1", "@babel/plugin-syntax-jsx@^7.7.2":
+  version "7.24.1"
+  resolved "https://registry.npmjs.org/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.24.1.tgz#3f6ca04b8c841811dbc3c5c5f837934e0d626c10"
+  integrity sha512-2eCtxZXf+kbkMIsXS4poTvT4Yu5rXiRa+9xGVT56raghjmBTKMpFNc9R4IDiB4emao9eO22Ox7CxuJG7BgExqA==
   dependencies:
-    "@babel/helper-plugin-utils" "^7.22.5"
+    "@babel/helper-plugin-utils" "^7.24.0"
 
 "@babel/plugin-syntax-logical-assignment-operators@^7.10.4", "@babel/plugin-syntax-logical-assignment-operators@^7.8.3":
   version "7.10.4"
@@ -746,12 +473,12 @@
   dependencies:
     "@babel/helper-plugin-utils" "^7.14.5"
 
-"@babel/plugin-syntax-typescript@^7.22.5", "@babel/plugin-syntax-typescript@^7.7.2":
-  version "7.22.5"
-  resolved "https://registry.npmjs.org/@babel/plugin-syntax-typescript/-/plugin-syntax-typescript-7.22.5.tgz#aac8d383b062c5072c647a31ef990c1d0af90272"
-  integrity sha512-1mS2o03i7t1c6VzH6fdQ3OA8tcEIxwG18zIPRp+UY1Ihv6W+XZzBCVxExF9upussPXJ0xE9XRHwMoNs1ep/nRQ==
+"@babel/plugin-syntax-typescript@^7.24.1", "@babel/plugin-syntax-typescript@^7.7.2":
+  version "7.24.1"
+  resolved "https://registry.npmjs.org/@babel/plugin-syntax-typescript/-/plugin-syntax-typescript-7.24.1.tgz#b3bcc51f396d15f3591683f90239de143c076844"
+  integrity sha512-Yhnmvy5HZEnHUty6i++gcfH1/l68AHnItFHnaCv6hn9dNh0hQvvQJsxpi4BMBFN5DLeHBuucT/0DgzXif/OyRw==
   dependencies:
-    "@babel/helper-plugin-utils" "^7.22.5"
+    "@babel/helper-plugin-utils" "^7.24.0"
 
 "@babel/plugin-syntax-unicode-sets-regex@^7.18.6":
   version "7.18.6"
@@ -761,326 +488,212 @@
     "@babel/helper-create-regexp-features-plugin" "^7.18.6"
     "@babel/helper-plugin-utils" "^7.18.6"
 
-"@babel/plugin-transform-arrow-functions@^7.22.5":
-  version "7.22.5"
-  resolved "https://registry.npmjs.org/@babel/plugin-transform-arrow-functions/-/plugin-transform-arrow-functions-7.22.5.tgz#e5ba566d0c58a5b2ba2a8b795450641950b71958"
-  integrity sha512-26lTNXoVRdAnsaDXPpvCNUq+OVWEVC6bx7Vvz9rC53F2bagUWW4u4ii2+h8Fejfh7RYqPxn+libeFBBck9muEw==
+"@babel/plugin-transform-arrow-functions@^7.24.1":
+  version "7.24.1"
+  resolved "https://registry.npmjs.org/@babel/plugin-transform-arrow-functions/-/plugin-transform-arrow-functions-7.24.1.tgz#2bf263617060c9cc45bcdbf492b8cc805082bf27"
+  integrity sha512-ngT/3NkRhsaep9ck9uj2Xhv9+xB1zShY3tM3g6om4xxCELwCDN4g4Aq5dRn48+0hasAql7s2hdBOysCfNpr4fw==
   dependencies:
-    "@babel/helper-plugin-utils" "^7.22.5"
+    "@babel/helper-plugin-utils" "^7.24.0"
 
-"@babel/plugin-transform-async-generator-functions@^7.22.5":
-  version "7.22.5"
-  resolved "https://registry.npmjs.org/@babel/plugin-transform-async-generator-functions/-/plugin-transform-async-generator-functions-7.22.5.tgz#7336356d23380eda9a56314974f053a020dab0c3"
-  integrity sha512-gGOEvFzm3fWoyD5uZq7vVTD57pPJ3PczPUD/xCFGjzBpUosnklmXyKnGQbbbGs1NPNPskFex0j93yKbHt0cHyg==
-  dependencies:
-    "@babel/helper-environment-visitor" "^7.22.5"
-    "@babel/helper-plugin-utils" "^7.22.5"
-    "@babel/helper-remap-async-to-generator" "^7.22.5"
-    "@babel/plugin-syntax-async-generators" "^7.8.4"
-
-"@babel/plugin-transform-async-generator-functions@^7.23.2":
-  version "7.23.2"
-  resolved "https://registry.npmjs.org/@babel/plugin-transform-async-generator-functions/-/plugin-transform-async-generator-functions-7.23.2.tgz#054afe290d64c6f576f371ccc321772c8ea87ebb"
-  integrity sha512-BBYVGxbDVHfoeXbOwcagAkOQAm9NxoTdMGfTqghu1GrvadSaw6iW3Je6IcL5PNOw8VwjxqBECXy50/iCQSY/lQ==
+"@babel/plugin-transform-async-generator-functions@^7.24.3":
+  version "7.24.3"
+  resolved "https://registry.npmjs.org/@babel/plugin-transform-async-generator-functions/-/plugin-transform-async-generator-functions-7.24.3.tgz#8fa7ae481b100768cc9842c8617808c5352b8b89"
+  integrity sha512-Qe26CMYVjpQxJ8zxM1340JFNjZaF+ISWpr1Kt/jGo+ZTUzKkfw/pphEWbRCb+lmSM6k/TOgfYLvmbHkUQ0asIg==
   dependencies:
     "@babel/helper-environment-visitor" "^7.22.20"
-    "@babel/helper-plugin-utils" "^7.22.5"
+    "@babel/helper-plugin-utils" "^7.24.0"
     "@babel/helper-remap-async-to-generator" "^7.22.20"
     "@babel/plugin-syntax-async-generators" "^7.8.4"
 
-"@babel/plugin-transform-async-to-generator@^7.22.5":
-  version "7.22.5"
-  resolved "https://registry.npmjs.org/@babel/plugin-transform-async-to-generator/-/plugin-transform-async-to-generator-7.22.5.tgz#c7a85f44e46f8952f6d27fe57c2ed3cc084c3775"
-  integrity sha512-b1A8D8ZzE/VhNDoV1MSJTnpKkCG5bJo+19R4o4oy03zM7ws8yEMK755j61Dc3EyvdysbqH5BOOTquJ7ZX9C6vQ==
+"@babel/plugin-transform-async-to-generator@^7.24.1":
+  version "7.24.1"
+  resolved "https://registry.npmjs.org/@babel/plugin-transform-async-to-generator/-/plugin-transform-async-to-generator-7.24.1.tgz#0e220703b89f2216800ce7b1c53cb0cf521c37f4"
+  integrity sha512-AawPptitRXp1y0n4ilKcGbRYWfbbzFWz2NqNu7dacYDtFtz0CMjG64b3LQsb3KIgnf4/obcUL78hfaOS7iCUfw==
   dependencies:
-    "@babel/helper-module-imports" "^7.22.5"
-    "@babel/helper-plugin-utils" "^7.22.5"
-    "@babel/helper-remap-async-to-generator" "^7.22.5"
-
-"@babel/plugin-transform-block-scoped-functions@^7.22.5":
-  version "7.22.5"
-  resolved "https://registry.npmjs.org/@babel/plugin-transform-block-scoped-functions/-/plugin-transform-block-scoped-functions-7.22.5.tgz#27978075bfaeb9fa586d3cb63a3d30c1de580024"
-  integrity sha512-tdXZ2UdknEKQWKJP1KMNmuF5Lx3MymtMN/pvA+p/VEkhK8jVcQ1fzSy8KM9qRYhAf2/lV33hoMPKI/xaI9sADA==
-  dependencies:
-    "@babel/helper-plugin-utils" "^7.22.5"
-
-"@babel/plugin-transform-block-scoping@^7.22.5":
-  version "7.22.5"
-  resolved "https://registry.npmjs.org/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.22.5.tgz#8bfc793b3a4b2742c0983fadc1480d843ecea31b"
-  integrity sha512-EcACl1i5fSQ6bt+YGuU/XGCeZKStLmyVGytWkpyhCLeQVA0eu6Wtiw92V+I1T/hnezUv7j74dA/Ro69gWcU+hg==
-  dependencies:
-    "@babel/helper-plugin-utils" "^7.22.5"
+    "@babel/helper-module-imports" "^7.24.1"
+    "@babel/helper-plugin-utils" "^7.24.0"
+    "@babel/helper-remap-async-to-generator" "^7.22.20"
 
-"@babel/plugin-transform-block-scoping@^7.23.0":
-  version "7.23.0"
-  resolved "https://registry.npmjs.org/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.23.0.tgz#8744d02c6c264d82e1a4bc5d2d501fd8aff6f022"
-  integrity sha512-cOsrbmIOXmf+5YbL99/S49Y3j46k/T16b9ml8bm9lP6N9US5iQ2yBK7gpui1pg0V/WMcXdkfKbTb7HXq9u+v4g==
+"@babel/plugin-transform-block-scoped-functions@^7.24.1":
+  version "7.24.1"
+  resolved "https://registry.npmjs.org/@babel/plugin-transform-block-scoped-functions/-/plugin-transform-block-scoped-functions-7.24.1.tgz#1c94799e20fcd5c4d4589523bbc57b7692979380"
+  integrity sha512-TWWC18OShZutrv9C6mye1xwtam+uNi2bnTOCBUd5sZxyHOiWbU6ztSROofIMrK84uweEZC219POICK/sTYwfgg==
   dependencies:
-    "@babel/helper-plugin-utils" "^7.22.5"
+    "@babel/helper-plugin-utils" "^7.24.0"
 
-"@babel/plugin-transform-class-properties@^7.22.5":
-  version "7.22.5"
-  resolved "https://registry.npmjs.org/@babel/plugin-transform-class-properties/-/plugin-transform-class-properties-7.22.5.tgz#97a56e31ad8c9dc06a0b3710ce7803d5a48cca77"
-  integrity sha512-nDkQ0NfkOhPTq8YCLiWNxp1+f9fCobEjCb0n8WdbNUBc4IB5V7P1QnX9IjpSoquKrXF5SKojHleVNs2vGeHCHQ==
+"@babel/plugin-transform-block-scoping@^7.24.4":
+  version "7.24.4"
+  resolved "https://registry.npmjs.org/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.24.4.tgz#28f5c010b66fbb8ccdeef853bef1935c434d7012"
+  integrity sha512-nIFUZIpGKDf9O9ttyRXpHFpKC+X3Y5mtshZONuEUYBomAKoM4y029Jr+uB1bHGPhNmK8YXHevDtKDOLmtRrp6g==
   dependencies:
-    "@babel/helper-create-class-features-plugin" "^7.22.5"
-    "@babel/helper-plugin-utils" "^7.22.5"
+    "@babel/helper-plugin-utils" "^7.24.0"
 
-"@babel/plugin-transform-class-static-block@^7.22.11":
-  version "7.22.11"
-  resolved "https://registry.npmjs.org/@babel/plugin-transform-class-static-block/-/plugin-transform-class-static-block-7.22.11.tgz#dc8cc6e498f55692ac6b4b89e56d87cec766c974"
-  integrity sha512-GMM8gGmqI7guS/llMFk1bJDkKfn3v3C4KHK9Yg1ey5qcHcOlKb0QvcMrgzvxo+T03/4szNh5lghY+fEC98Kq9g==
+"@babel/plugin-transform-class-properties@^7.24.1":
+  version "7.24.1"
+  resolved "https://registry.npmjs.org/@babel/plugin-transform-class-properties/-/plugin-transform-class-properties-7.24.1.tgz#bcbf1aef6ba6085cfddec9fc8d58871cf011fc29"
+  integrity sha512-OMLCXi0NqvJfORTaPQBwqLXHhb93wkBKZ4aNwMl6WtehO7ar+cmp+89iPEQPqxAnxsOKTaMcs3POz3rKayJ72g==
   dependencies:
-    "@babel/helper-create-class-features-plugin" "^7.22.11"
-    "@babel/helper-plugin-utils" "^7.22.5"
-    "@babel/plugin-syntax-class-static-block" "^7.14.5"
+    "@babel/helper-create-class-features-plugin" "^7.24.1"
+    "@babel/helper-plugin-utils" "^7.24.0"
 
-"@babel/plugin-transform-class-static-block@^7.22.5":
-  version "7.22.5"
-  resolved "https://registry.npmjs.org/@babel/plugin-transform-class-static-block/-/plugin-transform-class-static-block-7.22.5.tgz#3e40c46f048403472d6f4183116d5e46b1bff5ba"
-  integrity sha512-SPToJ5eYZLxlnp1UzdARpOGeC2GbHvr9d/UV0EukuVx8atktg194oe+C5BqQ8jRTkgLRVOPYeXRSBg1IlMoVRA==
+"@babel/plugin-transform-class-static-block@^7.24.4":
+  version "7.24.4"
+  resolved "https://registry.npmjs.org/@babel/plugin-transform-class-static-block/-/plugin-transform-class-static-block-7.24.4.tgz#1a4653c0cf8ac46441ec406dece6e9bc590356a4"
+  integrity sha512-B8q7Pz870Hz/q9UgP8InNpY01CSLDSCyqX7zcRuv3FcPl87A2G17lASroHWaCtbdIcbYzOZ7kWmXFKbijMSmFg==
   dependencies:
-    "@babel/helper-create-class-features-plugin" "^7.22.5"
-    "@babel/helper-plugin-utils" "^7.22.5"
+    "@babel/helper-create-class-features-plugin" "^7.24.4"
+    "@babel/helper-plugin-utils" "^7.24.0"
     "@babel/plugin-syntax-class-static-block" "^7.14.5"
 
-"@babel/plugin-transform-classes@^7.22.15":
-  version "7.22.15"
-  resolved "https://registry.npmjs.org/@babel/plugin-transform-classes/-/plugin-transform-classes-7.22.15.tgz#aaf4753aee262a232bbc95451b4bdf9599c65a0b"
-  integrity sha512-VbbC3PGjBdE0wAWDdHM9G8Gm977pnYI0XpqMd6LrKISj8/DJXEsWqgRuTYaNE9Bv0JGhTZUzHDlMk18IpOuoqw==
+"@babel/plugin-transform-classes@^7.24.1":
+  version "7.24.1"
+  resolved "https://registry.npmjs.org/@babel/plugin-transform-classes/-/plugin-transform-classes-7.24.1.tgz#5bc8fc160ed96378184bc10042af47f50884dcb1"
+  integrity sha512-ZTIe3W7UejJd3/3R4p7ScyyOoafetUShSf4kCqV0O7F/RiHxVj/wRaRnQlrGwflvcehNA8M42HkAiEDYZu2F1Q==
   dependencies:
     "@babel/helper-annotate-as-pure" "^7.22.5"
-    "@babel/helper-compilation-targets" "^7.22.15"
-    "@babel/helper-environment-visitor" "^7.22.5"
-    "@babel/helper-function-name" "^7.22.5"
-    "@babel/helper-optimise-call-expression" "^7.22.5"
-    "@babel/helper-plugin-utils" "^7.22.5"
-    "@babel/helper-replace-supers" "^7.22.9"
+    "@babel/helper-compilation-targets" "^7.23.6"
+    "@babel/helper-environment-visitor" "^7.22.20"
+    "@babel/helper-function-name" "^7.23.0"
+    "@babel/helper-plugin-utils" "^7.24.0"
+    "@babel/helper-replace-supers" "^7.24.1"
     "@babel/helper-split-export-declaration" "^7.22.6"
     globals "^11.1.0"
 
-"@babel/plugin-transform-classes@^7.22.5":
-  version "7.22.5"
-  resolved "https://registry.npmjs.org/@babel/plugin-transform-classes/-/plugin-transform-classes-7.22.5.tgz#635d4e98da741fad814984639f4c0149eb0135e1"
-  integrity sha512-2edQhLfibpWpsVBx2n/GKOz6JdGQvLruZQfGr9l1qes2KQaWswjBzhQF7UDUZMNaMMQeYnQzxwOMPsbYF7wqPQ==
+"@babel/plugin-transform-computed-properties@^7.24.1":
+  version "7.24.1"
+  resolved "https://registry.npmjs.org/@babel/plugin-transform-computed-properties/-/plugin-transform-computed-properties-7.24.1.tgz#bc7e787f8e021eccfb677af5f13c29a9934ed8a7"
+  integrity sha512-5pJGVIUfJpOS+pAqBQd+QMaTD2vCL/HcePooON6pDpHgRp4gNRmzyHTPIkXntwKsq3ayUFVfJaIKPw2pOkOcTw==
   dependencies:
-    "@babel/helper-annotate-as-pure" "^7.22.5"
-    "@babel/helper-compilation-targets" "^7.22.5"
-    "@babel/helper-environment-visitor" "^7.22.5"
-    "@babel/helper-function-name" "^7.22.5"
-    "@babel/helper-optimise-call-expression" "^7.22.5"
-    "@babel/helper-plugin-utils" "^7.22.5"
-    "@babel/helper-replace-supers" "^7.22.5"
-    "@babel/helper-split-export-declaration" "^7.22.5"
-    globals "^11.1.0"
+    "@babel/helper-plugin-utils" "^7.24.0"
+    "@babel/template" "^7.24.0"
 
-"@babel/plugin-transform-computed-properties@^7.22.5":
-  version "7.22.5"
-  resolved "https://registry.npmjs.org/@babel/plugin-transform-computed-properties/-/plugin-transform-computed-properties-7.22.5.tgz#cd1e994bf9f316bd1c2dafcd02063ec261bb3869"
-  integrity sha512-4GHWBgRf0krxPX+AaPtgBAlTgTeZmqDynokHOX7aqqAB4tHs3U2Y02zH6ETFdLZGcg9UQSD1WCmkVrE9ErHeOg==
+"@babel/plugin-transform-destructuring@^7.24.1":
+  version "7.24.1"
+  resolved "https://registry.npmjs.org/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.24.1.tgz#b1e8243af4a0206841973786292b8c8dd8447345"
+  integrity sha512-ow8jciWqNxR3RYbSNVuF4U2Jx130nwnBnhRw6N6h1bOejNkABmcI5X5oz29K4alWX7vf1C+o6gtKXikzRKkVdw==
   dependencies:
-    "@babel/helper-plugin-utils" "^7.22.5"
-    "@babel/template" "^7.22.5"
+    "@babel/helper-plugin-utils" "^7.24.0"
 
-"@babel/plugin-transform-destructuring@^7.22.5":
-  version "7.22.5"
-  resolved "https://registry.npmjs.org/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.22.5.tgz#d3aca7438f6c26c78cdd0b0ba920a336001b27cc"
-  integrity sha512-GfqcFuGW8vnEqTUBM7UtPd5A4q797LTvvwKxXTgRsFjoqaJiEg9deBG6kWeQYkVEL569NpnmpC0Pkr/8BLKGnQ==
+"@babel/plugin-transform-dotall-regex@^7.24.1":
+  version "7.24.1"
+  resolved "https://registry.npmjs.org/@babel/plugin-transform-dotall-regex/-/plugin-transform-dotall-regex-7.24.1.tgz#d56913d2f12795cc9930801b84c6f8c47513ac13"
+  integrity sha512-p7uUxgSoZwZ2lPNMzUkqCts3xlp8n+o05ikjy7gbtFJSt9gdU88jAmtfmOxHM14noQXBxfgzf2yRWECiNVhTCw==
   dependencies:
-    "@babel/helper-plugin-utils" "^7.22.5"
+    "@babel/helper-create-regexp-features-plugin" "^7.22.15"
+    "@babel/helper-plugin-utils" "^7.24.0"
 
-"@babel/plugin-transform-destructuring@^7.23.0":
-  version "7.23.0"
-  resolved "https://registry.npmjs.org/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.23.0.tgz#6447aa686be48b32eaf65a73e0e2c0bd010a266c"
-  integrity sha512-vaMdgNXFkYrB+8lbgniSYWHsgqK5gjaMNcc84bMIOMRLH0L9AqYq3hwMdvnyqj1OPqea8UtjPEuS/DCenah1wg==
+"@babel/plugin-transform-duplicate-keys@^7.24.1":
+  version "7.24.1"
+  resolved "https://registry.npmjs.org/@babel/plugin-transform-duplicate-keys/-/plugin-transform-duplicate-keys-7.24.1.tgz#5347a797fe82b8d09749d10e9f5b83665adbca88"
+  integrity sha512-msyzuUnvsjsaSaocV6L7ErfNsa5nDWL1XKNnDePLgmz+WdU4w/J8+AxBMrWfi9m4IxfL5sZQKUPQKDQeeAT6lA==
   dependencies:
-    "@babel/helper-plugin-utils" "^7.22.5"
+    "@babel/helper-plugin-utils" "^7.24.0"
 
-"@babel/plugin-transform-dotall-regex@^7.22.5", "@babel/plugin-transform-dotall-regex@^7.4.4":
-  version "7.22.5"
-  resolved "https://registry.npmjs.org/@babel/plugin-transform-dotall-regex/-/plugin-transform-dotall-regex-7.22.5.tgz#dbb4f0e45766eb544e193fb00e65a1dd3b2a4165"
-  integrity sha512-5/Yk9QxCQCl+sOIB1WelKnVRxTJDSAIxtJLL2/pqL14ZVlbH0fUQUZa/T5/UnQtBNgghR7mfB8ERBKyKPCi7Vw==
+"@babel/plugin-transform-dynamic-import@^7.24.1":
+  version "7.24.1"
+  resolved "https://registry.npmjs.org/@babel/plugin-transform-dynamic-import/-/plugin-transform-dynamic-import-7.24.1.tgz#2a5a49959201970dd09a5fca856cb651e44439dd"
+  integrity sha512-av2gdSTyXcJVdI+8aFZsCAtR29xJt0S5tas+Ef8NvBNmD1a+N/3ecMLeMBgfcK+xzsjdLDT6oHt+DFPyeqUbDA==
   dependencies:
-    "@babel/helper-create-regexp-features-plugin" "^7.22.5"
-    "@babel/helper-plugin-utils" "^7.22.5"
-
-"@babel/plugin-transform-duplicate-keys@^7.22.5":
-  version "7.22.5"
-  resolved "https://registry.npmjs.org/@babel/plugin-transform-duplicate-keys/-/plugin-transform-duplicate-keys-7.22.5.tgz#b6e6428d9416f5f0bba19c70d1e6e7e0b88ab285"
-  integrity sha512-dEnYD+9BBgld5VBXHnF/DbYGp3fqGMsyxKbtD1mDyIA7AkTSpKXFhCVuj/oQVOoALfBs77DudA0BE4d5mcpmqw==
-  dependencies:
-    "@babel/helper-plugin-utils" "^7.22.5"
-
-"@babel/plugin-transform-dynamic-import@^7.22.11":
-  version "7.22.11"
-  resolved "https://registry.npmjs.org/@babel/plugin-transform-dynamic-import/-/plugin-transform-dynamic-import-7.22.11.tgz#2c7722d2a5c01839eaf31518c6ff96d408e447aa"
-  integrity sha512-g/21plo58sfteWjaO0ZNVb+uEOkJNjAaHhbejrnBmu011l/eNDScmkbjCC3l4FKb10ViaGU4aOkFznSu2zRHgA==
-  dependencies:
-    "@babel/helper-plugin-utils" "^7.22.5"
+    "@babel/helper-plugin-utils" "^7.24.0"
     "@babel/plugin-syntax-dynamic-import" "^7.8.3"
 
-"@babel/plugin-transform-dynamic-import@^7.22.5":
-  version "7.22.5"
-  resolved "https://registry.npmjs.org/@babel/plugin-transform-dynamic-import/-/plugin-transform-dynamic-import-7.22.5.tgz#d6908a8916a810468c4edff73b5b75bda6ad393e"
-  integrity sha512-0MC3ppTB1AMxd8fXjSrbPa7LT9hrImt+/fcj+Pg5YMD7UQyWp/02+JWpdnCymmsXwIx5Z+sYn1bwCn4ZJNvhqQ==
-  dependencies:
-    "@babel/helper-plugin-utils" "^7.22.5"
-    "@babel/plugin-syntax-dynamic-import" "^7.8.3"
-
-"@babel/plugin-transform-exponentiation-operator@^7.22.5":
-  version "7.22.5"
-  resolved "https://registry.npmjs.org/@babel/plugin-transform-exponentiation-operator/-/plugin-transform-exponentiation-operator-7.22.5.tgz#402432ad544a1f9a480da865fda26be653e48f6a"
-  integrity sha512-vIpJFNM/FjZ4rh1myqIya9jXwrwwgFRHPjT3DkUA9ZLHuzox8jiXkOLvwm1H+PQIP3CqfC++WPKeuDi0Sjdj1g==
+"@babel/plugin-transform-exponentiation-operator@^7.24.1":
+  version "7.24.1"
+  resolved "https://registry.npmjs.org/@babel/plugin-transform-exponentiation-operator/-/plugin-transform-exponentiation-operator-7.24.1.tgz#6650ebeb5bd5c012d5f5f90a26613a08162e8ba4"
+  integrity sha512-U1yX13dVBSwS23DEAqU+Z/PkwE9/m7QQy8Y9/+Tdb8UWYaGNDYwTLi19wqIAiROr8sXVum9A/rtiH5H0boUcTw==
   dependencies:
-    "@babel/helper-builder-binary-assignment-operator-visitor" "^7.22.5"
-    "@babel/helper-plugin-utils" "^7.22.5"
-
-"@babel/plugin-transform-export-namespace-from@^7.22.11":
-  version "7.22.11"
-  resolved "https://registry.npmjs.org/@babel/plugin-transform-export-namespace-from/-/plugin-transform-export-namespace-from-7.22.11.tgz#b3c84c8f19880b6c7440108f8929caf6056db26c"
-  integrity sha512-xa7aad7q7OiT8oNZ1mU7NrISjlSkVdMbNxn9IuLZyL9AJEhs1Apba3I+u5riX1dIkdptP5EKDG5XDPByWxtehw==
-  dependencies:
-    "@babel/helper-plugin-utils" "^7.22.5"
-    "@babel/plugin-syntax-export-namespace-from" "^7.8.3"
+    "@babel/helper-builder-binary-assignment-operator-visitor" "^7.22.15"
+    "@babel/helper-plugin-utils" "^7.24.0"
 
-"@babel/plugin-transform-export-namespace-from@^7.22.5":
-  version "7.22.5"
-  resolved "https://registry.npmjs.org/@babel/plugin-transform-export-namespace-from/-/plugin-transform-export-namespace-from-7.22.5.tgz#57c41cb1d0613d22f548fddd8b288eedb9973a5b"
-  integrity sha512-X4hhm7FRnPgd4nDA4b/5V280xCx6oL7Oob5+9qVS5C13Zq4bh1qq7LU0GgRU6b5dBWBvhGaXYVB4AcN6+ol6vg==
+"@babel/plugin-transform-export-namespace-from@^7.24.1":
+  version "7.24.1"
+  resolved "https://registry.npmjs.org/@babel/plugin-transform-export-namespace-from/-/plugin-transform-export-namespace-from-7.24.1.tgz#f033541fc036e3efb2dcb58eedafd4f6b8078acd"
+  integrity sha512-Ft38m/KFOyzKw2UaJFkWG9QnHPG/Q/2SkOrRk4pNBPg5IPZ+dOxcmkK5IyuBcxiNPyyYowPGUReyBvrvZs7IlQ==
   dependencies:
-    "@babel/helper-plugin-utils" "^7.22.5"
+    "@babel/helper-plugin-utils" "^7.24.0"
     "@babel/plugin-syntax-export-namespace-from" "^7.8.3"
 
-"@babel/plugin-transform-for-of@^7.22.15":
-  version "7.22.15"
-  resolved "https://registry.npmjs.org/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.22.15.tgz#f64b4ccc3a4f131a996388fae7680b472b306b29"
-  integrity sha512-me6VGeHsx30+xh9fbDLLPi0J1HzmeIIyenoOQHuw2D4m2SAU3NrspX5XxJLBpqn5yrLzrlw2Iy3RA//Bx27iOA==
-  dependencies:
-    "@babel/helper-plugin-utils" "^7.22.5"
-
-"@babel/plugin-transform-for-of@^7.22.5":
-  version "7.22.5"
-  resolved "https://registry.npmjs.org/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.22.5.tgz#ab1b8a200a8f990137aff9a084f8de4099ab173f"
-  integrity sha512-3kxQjX1dU9uudwSshyLeEipvrLjBCVthCgeTp6CzE/9JYrlAIaeekVxRpCWsDDfYTfRZRoCeZatCQvwo+wvK8A==
-  dependencies:
-    "@babel/helper-plugin-utils" "^7.22.5"
-
-"@babel/plugin-transform-function-name@^7.22.5":
-  version "7.22.5"
-  resolved "https://registry.npmjs.org/@babel/plugin-transform-function-name/-/plugin-transform-function-name-7.22.5.tgz#935189af68b01898e0d6d99658db6b164205c143"
-  integrity sha512-UIzQNMS0p0HHiQm3oelztj+ECwFnj+ZRV4KnguvlsD2of1whUeM6o7wGNj6oLwcDoAXQ8gEqfgC24D+VdIcevg==
+"@babel/plugin-transform-for-of@^7.24.1":
+  version "7.24.1"
+  resolved "https://registry.npmjs.org/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.24.1.tgz#67448446b67ab6c091360ce3717e7d3a59e202fd"
+  integrity sha512-OxBdcnF04bpdQdR3i4giHZNZQn7cm8RQKcSwA17wAAqEELo1ZOwp5FFgeptWUQXFyT9kwHo10aqqauYkRZPCAg==
   dependencies:
-    "@babel/helper-compilation-targets" "^7.22.5"
-    "@babel/helper-function-name" "^7.22.5"
-    "@babel/helper-plugin-utils" "^7.22.5"
+    "@babel/helper-plugin-utils" "^7.24.0"
+    "@babel/helper-skip-transparent-expression-wrappers" "^7.22.5"
 
-"@babel/plugin-transform-json-strings@^7.22.11":
-  version "7.22.11"
-  resolved "https://registry.npmjs.org/@babel/plugin-transform-json-strings/-/plugin-transform-json-strings-7.22.11.tgz#689a34e1eed1928a40954e37f74509f48af67835"
-  integrity sha512-CxT5tCqpA9/jXFlme9xIBCc5RPtdDq3JpkkhgHQqtDdiTnTI0jtZ0QzXhr5DILeYifDPp2wvY2ad+7+hLMW5Pw==
+"@babel/plugin-transform-function-name@^7.24.1":
+  version "7.24.1"
+  resolved "https://registry.npmjs.org/@babel/plugin-transform-function-name/-/plugin-transform-function-name-7.24.1.tgz#8cba6f7730626cc4dfe4ca2fa516215a0592b361"
+  integrity sha512-BXmDZpPlh7jwicKArQASrj8n22/w6iymRnvHYYd2zO30DbE277JO20/7yXJT3QxDPtiQiOxQBbZH4TpivNXIxA==
   dependencies:
-    "@babel/helper-plugin-utils" "^7.22.5"
-    "@babel/plugin-syntax-json-strings" "^7.8.3"
+    "@babel/helper-compilation-targets" "^7.23.6"
+    "@babel/helper-function-name" "^7.23.0"
+    "@babel/helper-plugin-utils" "^7.24.0"
 
-"@babel/plugin-transform-json-strings@^7.22.5":
-  version "7.22.5"
-  resolved "https://registry.npmjs.org/@babel/plugin-transform-json-strings/-/plugin-transform-json-strings-7.22.5.tgz#14b64352fdf7e1f737eed68de1a1468bd2a77ec0"
-  integrity sha512-DuCRB7fu8MyTLbEQd1ew3R85nx/88yMoqo2uPSjevMj3yoN7CDM8jkgrY0wmVxfJZyJ/B9fE1iq7EQppWQmR5A==
+"@babel/plugin-transform-json-strings@^7.24.1":
+  version "7.24.1"
+  resolved "https://registry.npmjs.org/@babel/plugin-transform-json-strings/-/plugin-transform-json-strings-7.24.1.tgz#08e6369b62ab3e8a7b61089151b161180c8299f7"
+  integrity sha512-U7RMFmRvoasscrIFy5xA4gIp8iWnWubnKkKuUGJjsuOH7GfbMkB+XZzeslx2kLdEGdOJDamEmCqOks6e8nv8DQ==
   dependencies:
-    "@babel/helper-plugin-utils" "^7.22.5"
+    "@babel/helper-plugin-utils" "^7.24.0"
     "@babel/plugin-syntax-json-strings" "^7.8.3"
 
-"@babel/plugin-transform-literals@^7.22.5":
-  version "7.22.5"
-  resolved "https://registry.npmjs.org/@babel/plugin-transform-literals/-/plugin-transform-literals-7.22.5.tgz#e9341f4b5a167952576e23db8d435849b1dd7920"
-  integrity sha512-fTLj4D79M+mepcw3dgFBTIDYpbcB9Sm0bpm4ppXPaO+U+PKFFyV9MGRvS0gvGw62sd10kT5lRMKXAADb9pWy8g==
+"@babel/plugin-transform-literals@^7.24.1":
+  version "7.24.1"
+  resolved "https://registry.npmjs.org/@babel/plugin-transform-literals/-/plugin-transform-literals-7.24.1.tgz#0a1982297af83e6b3c94972686067df588c5c096"
+  integrity sha512-zn9pwz8U7nCqOYIiBaOxoQOtYmMODXTJnkxG4AtX8fPmnCRYWBOHD0qcpwS9e2VDSp1zNJYpdnFMIKb8jmwu6g==
   dependencies:
-    "@babel/helper-plugin-utils" "^7.22.5"
+    "@babel/helper-plugin-utils" "^7.24.0"
 
-"@babel/plugin-transform-logical-assignment-operators@^7.22.11":
-  version "7.22.11"
-  resolved "https://registry.npmjs.org/@babel/plugin-transform-logical-assignment-operators/-/plugin-transform-logical-assignment-operators-7.22.11.tgz#24c522a61688bde045b7d9bc3c2597a4d948fc9c"
-  integrity sha512-qQwRTP4+6xFCDV5k7gZBF3C31K34ut0tbEcTKxlX/0KXxm9GLcO14p570aWxFvVzx6QAfPgq7gaeIHXJC8LswQ==
+"@babel/plugin-transform-logical-assignment-operators@^7.24.1":
+  version "7.24.1"
+  resolved "https://registry.npmjs.org/@babel/plugin-transform-logical-assignment-operators/-/plugin-transform-logical-assignment-operators-7.24.1.tgz#719d8aded1aa94b8fb34e3a785ae8518e24cfa40"
+  integrity sha512-OhN6J4Bpz+hIBqItTeWJujDOfNP+unqv/NJgyhlpSqgBTPm37KkMmZV6SYcOj+pnDbdcl1qRGV/ZiIjX9Iy34w==
   dependencies:
-    "@babel/helper-plugin-utils" "^7.22.5"
+    "@babel/helper-plugin-utils" "^7.24.0"
     "@babel/plugin-syntax-logical-assignment-operators" "^7.10.4"
 
-"@babel/plugin-transform-logical-assignment-operators@^7.22.5":
-  version "7.22.5"
-  resolved "https://registry.npmjs.org/@babel/plugin-transform-logical-assignment-operators/-/plugin-transform-logical-assignment-operators-7.22.5.tgz#66ae5f068fd5a9a5dc570df16f56c2a8462a9d6c"
-  integrity sha512-MQQOUW1KL8X0cDWfbwYP+TbVbZm16QmQXJQ+vndPtH/BoO0lOKpVoEDMI7+PskYxH+IiE0tS8xZye0qr1lGzSA==
+"@babel/plugin-transform-member-expression-literals@^7.24.1":
+  version "7.24.1"
+  resolved "https://registry.npmjs.org/@babel/plugin-transform-member-expression-literals/-/plugin-transform-member-expression-literals-7.24.1.tgz#896d23601c92f437af8b01371ad34beb75df4489"
+  integrity sha512-4ojai0KysTWXzHseJKa1XPNXKRbuUrhkOPY4rEGeR+7ChlJVKxFa3H3Bz+7tWaGKgJAXUWKOGmltN+u9B3+CVg==
   dependencies:
-    "@babel/helper-plugin-utils" "^7.22.5"
-    "@babel/plugin-syntax-logical-assignment-operators" "^7.10.4"
+    "@babel/helper-plugin-utils" "^7.24.0"
 
-"@babel/plugin-transform-member-expression-literals@^7.22.5":
-  version "7.22.5"
-  resolved "https://registry.npmjs.org/@babel/plugin-transform-member-expression-literals/-/plugin-transform-member-expression-literals-7.22.5.tgz#4fcc9050eded981a468347dd374539ed3e058def"
-  integrity sha512-RZEdkNtzzYCFl9SE9ATaUMTj2hqMb4StarOJLrZRbqqU4HSBE7UlBw9WBWQiDzrJZJdUWiMTVDI6Gv/8DPvfew==
+"@babel/plugin-transform-modules-amd@^7.24.1":
+  version "7.24.1"
+  resolved "https://registry.npmjs.org/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.24.1.tgz#b6d829ed15258536977e9c7cc6437814871ffa39"
+  integrity sha512-lAxNHi4HVtjnHd5Rxg3D5t99Xm6H7b04hUS7EHIXcUl2EV4yl1gWdqZrNzXnSrHveL9qMdbODlLF55mvgjAfaQ==
   dependencies:
-    "@babel/helper-plugin-utils" "^7.22.5"
+    "@babel/helper-module-transforms" "^7.23.3"
+    "@babel/helper-plugin-utils" "^7.24.0"
 
-"@babel/plugin-transform-modules-amd@^7.22.5":
-  version "7.22.5"
-  resolved "https://registry.npmjs.org/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.22.5.tgz#4e045f55dcf98afd00f85691a68fc0780704f526"
-  integrity sha512-R+PTfLTcYEmb1+kK7FNkhQ1gP4KgjpSO6HfH9+f8/yfp2Nt3ggBjiVpRwmwTlfqZLafYKJACy36yDXlEmI9HjQ==
+"@babel/plugin-transform-modules-commonjs@^7.24.1":
+  version "7.24.1"
+  resolved "https://registry.npmjs.org/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.24.1.tgz#e71ba1d0d69e049a22bf90b3867e263823d3f1b9"
+  integrity sha512-szog8fFTUxBfw0b98gEWPaEqF42ZUD/T3bkynW/wtgx2p/XCP55WEsb+VosKceRSd6njipdZvNogqdtI4Q0chw==
   dependencies:
-    "@babel/helper-module-transforms" "^7.22.5"
-    "@babel/helper-plugin-utils" "^7.22.5"
-
-"@babel/plugin-transform-modules-amd@^7.23.0":
-  version "7.23.0"
-  resolved "https://registry.npmjs.org/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.23.0.tgz#05b2bc43373faa6d30ca89214731f76f966f3b88"
-  integrity sha512-xWT5gefv2HGSm4QHtgc1sYPbseOyf+FFDo2JbpE25GWl5BqTGO9IMwTYJRoIdjsF85GE+VegHxSCUt5EvoYTAw==
-  dependencies:
-    "@babel/helper-module-transforms" "^7.23.0"
-    "@babel/helper-plugin-utils" "^7.22.5"
-
-"@babel/plugin-transform-modules-commonjs@^7.22.5":
-  version "7.22.5"
-  resolved "https://registry.npmjs.org/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.22.5.tgz#7d9875908d19b8c0536085af7b053fd5bd651bfa"
-  integrity sha512-B4pzOXj+ONRmuaQTg05b3y/4DuFz3WcCNAXPLb2Q0GT0TrGKGxNKV4jwsXts+StaM0LQczZbOpj8o1DLPDJIiA==
-  dependencies:
-    "@babel/helper-module-transforms" "^7.22.5"
-    "@babel/helper-plugin-utils" "^7.22.5"
+    "@babel/helper-module-transforms" "^7.23.3"
+    "@babel/helper-plugin-utils" "^7.24.0"
     "@babel/helper-simple-access" "^7.22.5"
 
-"@babel/plugin-transform-modules-commonjs@^7.23.0":
-  version "7.23.0"
-  resolved "https://registry.npmjs.org/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.23.0.tgz#b3dba4757133b2762c00f4f94590cf6d52602481"
-  integrity sha512-32Xzss14/UVc7k9g775yMIvkVK8xwKE0DPdP5JTapr3+Z9w4tzeOuLNY6BXDQR6BdnzIlXnCGAzsk/ICHBLVWQ==
-  dependencies:
-    "@babel/helper-module-transforms" "^7.23.0"
-    "@babel/helper-plugin-utils" "^7.22.5"
-    "@babel/helper-simple-access" "^7.22.5"
-
-"@babel/plugin-transform-modules-systemjs@^7.22.5":
-  version "7.22.5"
-  resolved "https://registry.npmjs.org/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.22.5.tgz#18c31410b5e579a0092638f95c896c2a98a5d496"
-  integrity sha512-emtEpoaTMsOs6Tzz+nbmcePl6AKVtS1yC4YNAeMun9U8YCsgadPNxnOPQ8GhHFB2qdx+LZu9LgoC0Lthuu05DQ==
-  dependencies:
-    "@babel/helper-hoist-variables" "^7.22.5"
-    "@babel/helper-module-transforms" "^7.22.5"
-    "@babel/helper-plugin-utils" "^7.22.5"
-    "@babel/helper-validator-identifier" "^7.22.5"
-
-"@babel/plugin-transform-modules-systemjs@^7.23.0":
-  version "7.23.0"
-  resolved "https://registry.npmjs.org/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.23.0.tgz#77591e126f3ff4132a40595a6cccd00a6b60d160"
-  integrity sha512-qBej6ctXZD2f+DhlOC9yO47yEYgUh5CZNz/aBoH4j/3NOlRfJXJbY7xDQCqQVf9KbrqGzIWER1f23doHGrIHFg==
+"@babel/plugin-transform-modules-systemjs@^7.24.1":
+  version "7.24.1"
+  resolved "https://registry.npmjs.org/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.24.1.tgz#2b9625a3d4e445babac9788daec39094e6b11e3e"
+  integrity sha512-mqQ3Zh9vFO1Tpmlt8QPnbwGHzNz3lpNEMxQb1kAemn/erstyqw1r9KeOlOfo3y6xAnFEcOv2tSyrXfmMk+/YZA==
   dependencies:
     "@babel/helper-hoist-variables" "^7.22.5"
-    "@babel/helper-module-transforms" "^7.23.0"
-    "@babel/helper-plugin-utils" "^7.22.5"
+    "@babel/helper-module-transforms" "^7.23.3"
+    "@babel/helper-plugin-utils" "^7.24.0"
     "@babel/helper-validator-identifier" "^7.22.20"
 
-"@babel/plugin-transform-modules-umd@^7.22.5":
-  version "7.22.5"
-  resolved "https://registry.npmjs.org/@babel/plugin-transform-modules-umd/-/plugin-transform-modules-umd-7.22.5.tgz#4694ae40a87b1745e3775b6a7fe96400315d4f98"
-  integrity sha512-+S6kzefN/E1vkSsKx8kmQuqeQsvCKCd1fraCM7zXm4SFoggI099Tr4G8U81+5gtMdUeMQ4ipdQffbKLX0/7dBQ==
+"@babel/plugin-transform-modules-umd@^7.24.1":
+  version "7.24.1"
+  resolved "https://registry.npmjs.org/@babel/plugin-transform-modules-umd/-/plugin-transform-modules-umd-7.24.1.tgz#69220c66653a19cf2c0872b9c762b9a48b8bebef"
+  integrity sha512-tuA3lpPj+5ITfcCluy6nWonSL7RvaG0AOTeAuvXqEKS34lnLzXpDb0dcP6K8jD0zWZFNDVly90AGFJPnm4fOYg==
   dependencies:
-    "@babel/helper-module-transforms" "^7.22.5"
-    "@babel/helper-plugin-utils" "^7.22.5"
+    "@babel/helper-module-transforms" "^7.23.3"
+    "@babel/helper-plugin-utils" "^7.24.0"
 
 "@babel/plugin-transform-named-capturing-groups-regex@^7.22.5":
   version "7.22.5"
@@ -1090,171 +703,109 @@
     "@babel/helper-create-regexp-features-plugin" "^7.22.5"
     "@babel/helper-plugin-utils" "^7.22.5"
 
-"@babel/plugin-transform-new-target@^7.22.5":
-  version "7.22.5"
-  resolved "https://registry.npmjs.org/@babel/plugin-transform-new-target/-/plugin-transform-new-target-7.22.5.tgz#1b248acea54ce44ea06dfd37247ba089fcf9758d"
-  integrity sha512-AsF7K0Fx/cNKVyk3a+DW0JLo+Ua598/NxMRvxDnkpCIGFh43+h/v2xyhRUYf6oD8gE4QtL83C7zZVghMjHd+iw==
+"@babel/plugin-transform-new-target@^7.24.1":
+  version "7.24.1"
+  resolved "https://registry.npmjs.org/@babel/plugin-transform-new-target/-/plugin-transform-new-target-7.24.1.tgz#29c59988fa3d0157de1c871a28cd83096363cc34"
+  integrity sha512-/rurytBM34hYy0HKZQyA0nHbQgQNFm4Q/BOc9Hflxi2X3twRof7NaE5W46j4kQitm7SvACVRXsa6N/tSZxvPug==
   dependencies:
-    "@babel/helper-plugin-utils" "^7.22.5"
+    "@babel/helper-plugin-utils" "^7.24.0"
 
-"@babel/plugin-transform-nullish-coalescing-operator@^7.22.11":
-  version "7.22.11"
-  resolved "https://registry.npmjs.org/@babel/plugin-transform-nullish-coalescing-operator/-/plugin-transform-nullish-coalescing-operator-7.22.11.tgz#debef6c8ba795f5ac67cd861a81b744c5d38d9fc"
-  integrity sha512-YZWOw4HxXrotb5xsjMJUDlLgcDXSfO9eCmdl1bgW4+/lAGdkjaEvOnQ4p5WKKdUgSzO39dgPl0pTnfxm0OAXcg==
+"@babel/plugin-transform-nullish-coalescing-operator@^7.24.1":
+  version "7.24.1"
+  resolved "https://registry.npmjs.org/@babel/plugin-transform-nullish-coalescing-operator/-/plugin-transform-nullish-coalescing-operator-7.24.1.tgz#0cd494bb97cb07d428bd651632cb9d4140513988"
+  integrity sha512-iQ+caew8wRrhCikO5DrUYx0mrmdhkaELgFa+7baMcVuhxIkN7oxt06CZ51D65ugIb1UWRQ8oQe+HXAVM6qHFjw==
   dependencies:
-    "@babel/helper-plugin-utils" "^7.22.5"
+    "@babel/helper-plugin-utils" "^7.24.0"
     "@babel/plugin-syntax-nullish-coalescing-operator" "^7.8.3"
 
-"@babel/plugin-transform-nullish-coalescing-operator@^7.22.5":
-  version "7.22.5"
-  resolved "https://registry.npmjs.org/@babel/plugin-transform-nullish-coalescing-operator/-/plugin-transform-nullish-coalescing-operator-7.22.5.tgz#f8872c65776e0b552e0849d7596cddd416c3e381"
-  integrity sha512-6CF8g6z1dNYZ/VXok5uYkkBBICHZPiGEl7oDnAx2Mt1hlHVHOSIKWJaXHjQJA5VB43KZnXZDIexMchY4y2PGdA==
+"@babel/plugin-transform-numeric-separator@^7.24.1":
+  version "7.24.1"
+  resolved "https://registry.npmjs.org/@babel/plugin-transform-numeric-separator/-/plugin-transform-numeric-separator-7.24.1.tgz#5bc019ce5b3435c1cadf37215e55e433d674d4e8"
+  integrity sha512-7GAsGlK4cNL2OExJH1DzmDeKnRv/LXq0eLUSvudrehVA5Rgg4bIrqEUW29FbKMBRT0ztSqisv7kjP+XIC4ZMNw==
   dependencies:
-    "@babel/helper-plugin-utils" "^7.22.5"
-    "@babel/plugin-syntax-nullish-coalescing-operator" "^7.8.3"
-
-"@babel/plugin-transform-numeric-separator@^7.22.11":
-  version "7.22.11"
-  resolved "https://registry.npmjs.org/@babel/plugin-transform-numeric-separator/-/plugin-transform-numeric-separator-7.22.11.tgz#498d77dc45a6c6db74bb829c02a01c1d719cbfbd"
-  integrity sha512-3dzU4QGPsILdJbASKhF/V2TVP+gJya1PsueQCxIPCEcerqF21oEcrob4mzjsp2Py/1nLfF5m+xYNMDpmA8vffg==
-  dependencies:
-    "@babel/helper-plugin-utils" "^7.22.5"
+    "@babel/helper-plugin-utils" "^7.24.0"
     "@babel/plugin-syntax-numeric-separator" "^7.10.4"
 
-"@babel/plugin-transform-numeric-separator@^7.22.5":
-  version "7.22.5"
-  resolved "https://registry.npmjs.org/@babel/plugin-transform-numeric-separator/-/plugin-transform-numeric-separator-7.22.5.tgz#57226a2ed9e512b9b446517ab6fa2d17abb83f58"
-  integrity sha512-NbslED1/6M+sXiwwtcAB/nieypGw02Ejf4KtDeMkCEpP6gWFMX1wI9WKYua+4oBneCCEmulOkRpwywypVZzs/g==
-  dependencies:
-    "@babel/helper-plugin-utils" "^7.22.5"
-    "@babel/plugin-syntax-numeric-separator" "^7.10.4"
-
-"@babel/plugin-transform-object-rest-spread@^7.22.15":
-  version "7.22.15"
-  resolved "https://registry.npmjs.org/@babel/plugin-transform-object-rest-spread/-/plugin-transform-object-rest-spread-7.22.15.tgz#21a95db166be59b91cde48775310c0df6e1da56f"
-  integrity sha512-fEB+I1+gAmfAyxZcX1+ZUwLeAuuf8VIg67CTznZE0MqVFumWkh8xWtn58I4dxdVf080wn7gzWoF8vndOViJe9Q==
-  dependencies:
-    "@babel/compat-data" "^7.22.9"
-    "@babel/helper-compilation-targets" "^7.22.15"
-    "@babel/helper-plugin-utils" "^7.22.5"
-    "@babel/plugin-syntax-object-rest-spread" "^7.8.3"
-    "@babel/plugin-transform-parameters" "^7.22.15"
-
-"@babel/plugin-transform-object-rest-spread@^7.22.5":
-  version "7.22.5"
-  resolved "https://registry.npmjs.org/@babel/plugin-transform-object-rest-spread/-/plugin-transform-object-rest-spread-7.22.5.tgz#9686dc3447df4753b0b2a2fae7e8bc33cdc1f2e1"
-  integrity sha512-Kk3lyDmEslH9DnvCDA1s1kkd3YWQITiBOHngOtDL9Pt6BZjzqb6hiOlb8VfjiiQJ2unmegBqZu0rx5RxJb5vmQ==
+"@babel/plugin-transform-object-rest-spread@^7.24.1":
+  version "7.24.1"
+  resolved "https://registry.npmjs.org/@babel/plugin-transform-object-rest-spread/-/plugin-transform-object-rest-spread-7.24.1.tgz#5a3ce73caf0e7871a02e1c31e8b473093af241ff"
+  integrity sha512-XjD5f0YqOtebto4HGISLNfiNMTTs6tbkFf2TOqJlYKYmbo+mN9Dnpl4SRoofiziuOWMIyq3sZEUqLo3hLITFEA==
   dependencies:
-    "@babel/compat-data" "^7.22.5"
-    "@babel/helper-compilation-targets" "^7.22.5"
-    "@babel/helper-plugin-utils" "^7.22.5"
+    "@babel/helper-compilation-targets" "^7.23.6"
+    "@babel/helper-plugin-utils" "^7.24.0"
     "@babel/plugin-syntax-object-rest-spread" "^7.8.3"
-    "@babel/plugin-transform-parameters" "^7.22.5"
+    "@babel/plugin-transform-parameters" "^7.24.1"
 
-"@babel/plugin-transform-object-super@^7.22.5":
-  version "7.22.5"
-  resolved "https://registry.npmjs.org/@babel/plugin-transform-object-super/-/plugin-transform-object-super-7.22.5.tgz#794a8d2fcb5d0835af722173c1a9d704f44e218c"
-  integrity sha512-klXqyaT9trSjIUrcsYIfETAzmOEZL3cBYqOYLJxBHfMFFggmXOv+NYSX/Jbs9mzMVESw/WycLFPRx8ba/b2Ipw==
+"@babel/plugin-transform-object-super@^7.24.1":
+  version "7.24.1"
+  resolved "https://registry.npmjs.org/@babel/plugin-transform-object-super/-/plugin-transform-object-super-7.24.1.tgz#e71d6ab13483cca89ed95a474f542bbfc20a0520"
+  integrity sha512-oKJqR3TeI5hSLRxudMjFQ9re9fBVUU0GICqM3J1mi8MqlhVr6hC/ZN4ttAyMuQR6EZZIY6h/exe5swqGNNIkWQ==
   dependencies:
-    "@babel/helper-plugin-utils" "^7.22.5"
-    "@babel/helper-replace-supers" "^7.22.5"
-
-"@babel/plugin-transform-optional-catch-binding@^7.22.11":
-  version "7.22.11"
-  resolved "https://registry.npmjs.org/@babel/plugin-transform-optional-catch-binding/-/plugin-transform-optional-catch-binding-7.22.11.tgz#461cc4f578a127bb055527b3e77404cad38c08e0"
-  integrity sha512-rli0WxesXUeCJnMYhzAglEjLWVDF6ahb45HuprcmQuLidBJFWjNnOzssk2kuc6e33FlLaiZhG/kUIzUMWdBKaQ==
-  dependencies:
-    "@babel/helper-plugin-utils" "^7.22.5"
-    "@babel/plugin-syntax-optional-catch-binding" "^7.8.3"
+    "@babel/helper-plugin-utils" "^7.24.0"
+    "@babel/helper-replace-supers" "^7.24.1"
 
-"@babel/plugin-transform-optional-catch-binding@^7.22.5":
-  version "7.22.5"
-  resolved "https://registry.npmjs.org/@babel/plugin-transform-optional-catch-binding/-/plugin-transform-optional-catch-binding-7.22.5.tgz#842080be3076703be0eaf32ead6ac8174edee333"
-  integrity sha512-pH8orJahy+hzZje5b8e2QIlBWQvGpelS76C63Z+jhZKsmzfNaPQ+LaW6dcJ9bxTpo1mtXbgHwy765Ro3jftmUg==
+"@babel/plugin-transform-optional-catch-binding@^7.24.1":
+  version "7.24.1"
+  resolved "https://registry.npmjs.org/@babel/plugin-transform-optional-catch-binding/-/plugin-transform-optional-catch-binding-7.24.1.tgz#92a3d0efe847ba722f1a4508669b23134669e2da"
+  integrity sha512-oBTH7oURV4Y+3EUrf6cWn1OHio3qG/PVwO5J03iSJmBg6m2EhKjkAu/xuaXaYwWW9miYtvbWv4LNf0AmR43LUA==
   dependencies:
-    "@babel/helper-plugin-utils" "^7.22.5"
+    "@babel/helper-plugin-utils" "^7.24.0"
     "@babel/plugin-syntax-optional-catch-binding" "^7.8.3"
 
-"@babel/plugin-transform-optional-chaining@^7.22.15", "@babel/plugin-transform-optional-chaining@^7.23.0":
-  version "7.23.0"
-  resolved "https://registry.npmjs.org/@babel/plugin-transform-optional-chaining/-/plugin-transform-optional-chaining-7.23.0.tgz#73ff5fc1cf98f542f09f29c0631647d8ad0be158"
-  integrity sha512-sBBGXbLJjxTzLBF5rFWaikMnOGOk/BmK6vVByIdEggZ7Vn6CvWXZyRkkLFK6WE0IF8jSliyOkUN6SScFgzCM0g==
+"@babel/plugin-transform-optional-chaining@^7.24.1":
+  version "7.24.1"
+  resolved "https://registry.npmjs.org/@babel/plugin-transform-optional-chaining/-/plugin-transform-optional-chaining-7.24.1.tgz#26e588acbedce1ab3519ac40cc748e380c5291e6"
+  integrity sha512-n03wmDt+987qXwAgcBlnUUivrZBPZ8z1plL0YvgQalLm+ZE5BMhGm94jhxXtA1wzv1Cu2aaOv1BM9vbVttrzSg==
   dependencies:
-    "@babel/helper-plugin-utils" "^7.22.5"
+    "@babel/helper-plugin-utils" "^7.24.0"
     "@babel/helper-skip-transparent-expression-wrappers" "^7.22.5"
     "@babel/plugin-syntax-optional-chaining" "^7.8.3"
 
-"@babel/plugin-transform-optional-chaining@^7.22.5":
-  version "7.22.5"
-  resolved "https://registry.npmjs.org/@babel/plugin-transform-optional-chaining/-/plugin-transform-optional-chaining-7.22.5.tgz#1003762b9c14295501beb41be72426736bedd1e0"
-  integrity sha512-AconbMKOMkyG+xCng2JogMCDcqW8wedQAqpVIL4cOSescZ7+iW8utC6YDZLMCSUIReEA733gzRSaOSXMAt/4WQ==
-  dependencies:
-    "@babel/helper-plugin-utils" "^7.22.5"
-    "@babel/helper-skip-transparent-expression-wrappers" "^7.22.5"
-    "@babel/plugin-syntax-optional-chaining" "^7.8.3"
-
-"@babel/plugin-transform-parameters@^7.20.7", "@babel/plugin-transform-parameters@^7.22.5":
-  version "7.22.5"
-  resolved "https://registry.npmjs.org/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.22.5.tgz#c3542dd3c39b42c8069936e48717a8d179d63a18"
-  integrity sha512-AVkFUBurORBREOmHRKo06FjHYgjrabpdqRSwq6+C7R5iTCZOsM4QbcB27St0a4U6fffyAOqh3s/qEfybAhfivg==
-  dependencies:
-    "@babel/helper-plugin-utils" "^7.22.5"
-
-"@babel/plugin-transform-parameters@^7.22.15":
-  version "7.22.15"
-  resolved "https://registry.npmjs.org/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.22.15.tgz#719ca82a01d177af358df64a514d64c2e3edb114"
-  integrity sha512-hjk7qKIqhyzhhUvRT683TYQOFa/4cQKwQy7ALvTpODswN40MljzNDa0YldevS6tGbxwaEKVn502JmY0dP7qEtQ==
+"@babel/plugin-transform-parameters@^7.20.7", "@babel/plugin-transform-parameters@^7.24.1":
+  version "7.24.1"
+  resolved "https://registry.npmjs.org/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.24.1.tgz#983c15d114da190506c75b616ceb0f817afcc510"
+  integrity sha512-8Jl6V24g+Uw5OGPeWNKrKqXPDw2YDjLc53ojwfMcKwlEoETKU9rU0mHUtcg9JntWI/QYzGAXNWEcVHZ+fR+XXg==
   dependencies:
-    "@babel/helper-plugin-utils" "^7.22.5"
+    "@babel/helper-plugin-utils" "^7.24.0"
 
-"@babel/plugin-transform-private-methods@^7.22.5":
-  version "7.22.5"
-  resolved "https://registry.npmjs.org/@babel/plugin-transform-private-methods/-/plugin-transform-private-methods-7.22.5.tgz#21c8af791f76674420a147ae62e9935d790f8722"
-  integrity sha512-PPjh4gyrQnGe97JTalgRGMuU4icsZFnWkzicB/fUtzlKUqvsWBKEpPPfr5a2JiyirZkHxnAqkQMO5Z5B2kK3fA==
+"@babel/plugin-transform-private-methods@^7.24.1":
+  version "7.24.1"
+  resolved "https://registry.npmjs.org/@babel/plugin-transform-private-methods/-/plugin-transform-private-methods-7.24.1.tgz#a0faa1ae87eff077e1e47a5ec81c3aef383dc15a"
+  integrity sha512-tGvisebwBO5em4PaYNqt4fkw56K2VALsAbAakY0FjTYqJp7gfdrgr7YX76Or8/cpik0W6+tj3rZ0uHU9Oil4tw==
   dependencies:
-    "@babel/helper-create-class-features-plugin" "^7.22.5"
-    "@babel/helper-plugin-utils" "^7.22.5"
-
-"@babel/plugin-transform-private-property-in-object@^7.22.11":
-  version "7.22.11"
-  resolved "https://registry.npmjs.org/@babel/plugin-transform-private-property-in-object/-/plugin-transform-private-property-in-object-7.22.11.tgz#ad45c4fc440e9cb84c718ed0906d96cf40f9a4e1"
-  integrity sha512-sSCbqZDBKHetvjSwpyWzhuHkmW5RummxJBVbYLkGkaiTOWGxml7SXt0iWa03bzxFIx7wOj3g/ILRd0RcJKBeSQ==
-  dependencies:
-    "@babel/helper-annotate-as-pure" "^7.22.5"
-    "@babel/helper-create-class-features-plugin" "^7.22.11"
-    "@babel/helper-plugin-utils" "^7.22.5"
-    "@babel/plugin-syntax-private-property-in-object" "^7.14.5"
+    "@babel/helper-create-class-features-plugin" "^7.24.1"
+    "@babel/helper-plugin-utils" "^7.24.0"
 
-"@babel/plugin-transform-private-property-in-object@^7.22.5":
-  version "7.22.5"
-  resolved "https://registry.npmjs.org/@babel/plugin-transform-private-property-in-object/-/plugin-transform-private-property-in-object-7.22.5.tgz#07a77f28cbb251546a43d175a1dda4cf3ef83e32"
-  integrity sha512-/9xnaTTJcVoBtSSmrVyhtSvO3kbqS2ODoh2juEU72c3aYonNF0OMGiaz2gjukyKM2wBBYJP38S4JiE0Wfb5VMQ==
+"@babel/plugin-transform-private-property-in-object@^7.24.1":
+  version "7.24.1"
+  resolved "https://registry.npmjs.org/@babel/plugin-transform-private-property-in-object/-/plugin-transform-private-property-in-object-7.24.1.tgz#756443d400274f8fb7896742962cc1b9f25c1f6a"
+  integrity sha512-pTHxDVa0BpUbvAgX3Gat+7cSciXqUcY9j2VZKTbSB6+VQGpNgNO9ailxTGHSXlqOnX1Hcx1Enme2+yv7VqP9bg==
   dependencies:
     "@babel/helper-annotate-as-pure" "^7.22.5"
-    "@babel/helper-create-class-features-plugin" "^7.22.5"
-    "@babel/helper-plugin-utils" "^7.22.5"
+    "@babel/helper-create-class-features-plugin" "^7.24.1"
+    "@babel/helper-plugin-utils" "^7.24.0"
     "@babel/plugin-syntax-private-property-in-object" "^7.14.5"
 
-"@babel/plugin-transform-property-literals@^7.22.5":
-  version "7.22.5"
-  resolved "https://registry.npmjs.org/@babel/plugin-transform-property-literals/-/plugin-transform-property-literals-7.22.5.tgz#b5ddabd73a4f7f26cd0e20f5db48290b88732766"
-  integrity sha512-TiOArgddK3mK/x1Qwf5hay2pxI6wCZnvQqrFSqbtg1GLl2JcNMitVH/YnqjP+M31pLUeTfzY1HAXFDnUBV30rQ==
+"@babel/plugin-transform-property-literals@^7.24.1":
+  version "7.24.1"
+  resolved "https://registry.npmjs.org/@babel/plugin-transform-property-literals/-/plugin-transform-property-literals-7.24.1.tgz#d6a9aeab96f03749f4eebeb0b6ea8e90ec958825"
+  integrity sha512-LetvD7CrHmEx0G442gOomRr66d7q8HzzGGr4PMHGr+5YIm6++Yke+jxj246rpvsbyhJwCLxcTn6zW1P1BSenqA==
   dependencies:
-    "@babel/helper-plugin-utils" "^7.22.5"
+    "@babel/helper-plugin-utils" "^7.24.0"
 
 "@babel/plugin-transform-react-constant-elements@^7.21.3":
-  version "7.22.5"
-  resolved "https://registry.npmjs.org/@babel/plugin-transform-react-constant-elements/-/plugin-transform-react-constant-elements-7.22.5.tgz#6dfa7c1c37f7d7279e417ceddf5a04abb8bb9c29"
-  integrity sha512-BF5SXoO+nX3h5OhlN78XbbDrBOffv+AxPP2ENaJOVqjWCgBDeOY3WcaUcddutGSfoap+5NEQ/q/4I3WZIvgkXA==
+  version "7.24.1"
+  resolved "https://registry.npmjs.org/@babel/plugin-transform-react-constant-elements/-/plugin-transform-react-constant-elements-7.24.1.tgz#d493a0918b9fdad7540f5afd9b5eb5c52500d18d"
+  integrity sha512-QXp1U9x0R7tkiGB0FOk8o74jhnap0FlZ5gNkRIWdG3eP+SvMFg118e1zaWewDzgABb106QSKpVsD3Wgd8t6ifA==
   dependencies:
-    "@babel/helper-plugin-utils" "^7.22.5"
+    "@babel/helper-plugin-utils" "^7.24.0"
 
-"@babel/plugin-transform-react-display-name@^7.22.5":
-  version "7.22.5"
-  resolved "https://registry.npmjs.org/@babel/plugin-transform-react-display-name/-/plugin-transform-react-display-name-7.22.5.tgz#3c4326f9fce31c7968d6cb9debcaf32d9e279a2b"
-  integrity sha512-PVk3WPYudRF5z4GKMEYUrLjPl38fJSKNaEOkFuoprioowGuWN6w2RKznuFNSlJx7pzzXXStPUnNSOEO0jL5EVw==
+"@babel/plugin-transform-react-display-name@^7.24.1":
+  version "7.24.1"
+  resolved "https://registry.npmjs.org/@babel/plugin-transform-react-display-name/-/plugin-transform-react-display-name-7.24.1.tgz#554e3e1a25d181f040cf698b93fd289a03bfdcdb"
+  integrity sha512-mvoQg2f9p2qlpDQRBC7M3c3XTr0k7cp/0+kFKKO/7Gtu0LSw16eKB+Fabe2bDT/UpsyasTBBkAnbdsLrkD5XMw==
   dependencies:
-    "@babel/helper-plugin-utils" "^7.22.5"
+    "@babel/helper-plugin-utils" "^7.24.0"
 
 "@babel/plugin-transform-react-jsx-development@^7.22.5":
   version "7.22.5"
@@ -1263,259 +814,150 @@
   dependencies:
     "@babel/plugin-transform-react-jsx" "^7.22.5"
 
-"@babel/plugin-transform-react-jsx@^7.22.5":
-  version "7.22.5"
-  resolved "https://registry.npmjs.org/@babel/plugin-transform-react-jsx/-/plugin-transform-react-jsx-7.22.5.tgz#932c291eb6dd1153359e2a90cb5e557dcf068416"
-  integrity sha512-rog5gZaVbUip5iWDMTYbVM15XQq+RkUKhET/IHR6oizR+JEoN6CAfTTuHcK4vwUyzca30qqHqEpzBOnaRMWYMA==
+"@babel/plugin-transform-react-jsx@^7.22.5", "@babel/plugin-transform-react-jsx@^7.23.4":
+  version "7.23.4"
+  resolved "https://registry.npmjs.org/@babel/plugin-transform-react-jsx/-/plugin-transform-react-jsx-7.23.4.tgz#393f99185110cea87184ea47bcb4a7b0c2e39312"
+  integrity sha512-5xOpoPguCZCRbo/JeHlloSkTA8Bld1J/E1/kLfD1nsuiW1m8tduTA1ERCgIZokDflX/IBzKcqR3l7VlRgiIfHA==
   dependencies:
     "@babel/helper-annotate-as-pure" "^7.22.5"
-    "@babel/helper-module-imports" "^7.22.5"
+    "@babel/helper-module-imports" "^7.22.15"
     "@babel/helper-plugin-utils" "^7.22.5"
-    "@babel/plugin-syntax-jsx" "^7.22.5"
-    "@babel/types" "^7.22.5"
+    "@babel/plugin-syntax-jsx" "^7.23.3"
+    "@babel/types" "^7.23.4"
 
-"@babel/plugin-transform-react-pure-annotations@^7.22.5":
-  version "7.22.5"
-  resolved "https://registry.npmjs.org/@babel/plugin-transform-react-pure-annotations/-/plugin-transform-react-pure-annotations-7.22.5.tgz#1f58363eef6626d6fa517b95ac66fe94685e32c0"
-  integrity sha512-gP4k85wx09q+brArVinTXhWiyzLl9UpmGva0+mWyKxk6JZequ05x3eUcIUE+FyttPKJFRRVtAvQaJ6YF9h1ZpA==
+"@babel/plugin-transform-react-pure-annotations@^7.24.1":
+  version "7.24.1"
+  resolved "https://registry.npmjs.org/@babel/plugin-transform-react-pure-annotations/-/plugin-transform-react-pure-annotations-7.24.1.tgz#c86bce22a53956331210d268e49a0ff06e392470"
+  integrity sha512-+pWEAaDJvSm9aFvJNpLiM2+ktl2Sn2U5DdyiWdZBxmLc6+xGt88dvFqsHiAiDS+8WqUwbDfkKz9jRxK3M0k+kA==
   dependencies:
     "@babel/helper-annotate-as-pure" "^7.22.5"
-    "@babel/helper-plugin-utils" "^7.22.5"
+    "@babel/helper-plugin-utils" "^7.24.0"
 
-"@babel/plugin-transform-regenerator@^7.22.10":
-  version "7.22.10"
-  resolved "https://registry.npmjs.org/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.22.10.tgz#8ceef3bd7375c4db7652878b0241b2be5d0c3cca"
-  integrity sha512-F28b1mDt8KcT5bUyJc/U9nwzw6cV+UmTeRlXYIl2TNqMMJif0Jeey9/RQ3C4NOd2zp0/TRsDns9ttj2L523rsw==
+"@babel/plugin-transform-regenerator@^7.24.1":
+  version "7.24.1"
+  resolved "https://registry.npmjs.org/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.24.1.tgz#625b7545bae52363bdc1fbbdc7252b5046409c8c"
+  integrity sha512-sJwZBCzIBE4t+5Q4IGLaaun5ExVMRY0lYwos/jNecjMrVCygCdph3IKv0tkP5Fc87e/1+bebAmEAGBfnRD+cnw==
   dependencies:
-    "@babel/helper-plugin-utils" "^7.22.5"
+    "@babel/helper-plugin-utils" "^7.24.0"
     regenerator-transform "^0.15.2"
 
-"@babel/plugin-transform-regenerator@^7.22.5":
-  version "7.22.5"
-  resolved "https://registry.npmjs.org/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.22.5.tgz#cd8a68b228a5f75fa01420e8cc2fc400f0fc32aa"
-  integrity sha512-rR7KePOE7gfEtNTh9Qw+iO3Q/e4DEsoQ+hdvM6QUDH7JRJ5qxq5AA52ZzBWbI5i9lfNuvySgOGP8ZN7LAmaiPw==
+"@babel/plugin-transform-reserved-words@^7.24.1":
+  version "7.24.1"
+  resolved "https://registry.npmjs.org/@babel/plugin-transform-reserved-words/-/plugin-transform-reserved-words-7.24.1.tgz#8de729f5ecbaaf5cf83b67de13bad38a21be57c1"
+  integrity sha512-JAclqStUfIwKN15HrsQADFgeZt+wexNQ0uLhuqvqAUFoqPMjEcFCYZBhq0LUdz6dZK/mD+rErhW71fbx8RYElg==
   dependencies:
-    "@babel/helper-plugin-utils" "^7.22.5"
-    regenerator-transform "^0.15.1"
-
-"@babel/plugin-transform-reserved-words@^7.22.5":
-  version "7.22.5"
-  resolved "https://registry.npmjs.org/@babel/plugin-transform-reserved-words/-/plugin-transform-reserved-words-7.22.5.tgz#832cd35b81c287c4bcd09ce03e22199641f964fb"
-  integrity sha512-DTtGKFRQUDm8svigJzZHzb/2xatPc6TzNvAIJ5GqOKDsGFYgAskjRulbR/vGsPKq3OPqtexnz327qYpP57RFyA==
-  dependencies:
-    "@babel/helper-plugin-utils" "^7.22.5"
+    "@babel/helper-plugin-utils" "^7.24.0"
 
 "@babel/plugin-transform-runtime@^7.22.15":
-  version "7.22.15"
-  resolved "https://registry.npmjs.org/@babel/plugin-transform-runtime/-/plugin-transform-runtime-7.22.15.tgz#3a625c4c05a39e932d7d34f5d4895cdd0172fdc9"
-  integrity sha512-tEVLhk8NRZSmwQ0DJtxxhTrCht1HVo8VaMzYT4w6lwyKBuHsgoioAUA7/6eT2fRfc5/23fuGdlwIxXhRVgWr4g==
-  dependencies:
-    "@babel/helper-module-imports" "^7.22.15"
-    "@babel/helper-plugin-utils" "^7.22.5"
-    babel-plugin-polyfill-corejs2 "^0.4.5"
-    babel-plugin-polyfill-corejs3 "^0.8.3"
-    babel-plugin-polyfill-regenerator "^0.5.2"
+  version "7.24.3"
+  resolved "https://registry.npmjs.org/@babel/plugin-transform-runtime/-/plugin-transform-runtime-7.24.3.tgz#dc58ad4a31810a890550365cc922e1ff5acb5d7f"
+  integrity sha512-J0BuRPNlNqlMTRJ72eVptpt9VcInbxO6iP3jaxr+1NPhC0UkKL+6oeX6VXMEYdADnuqmMmsBspt4d5w8Y/TCbQ==
+  dependencies:
+    "@babel/helper-module-imports" "^7.24.3"
+    "@babel/helper-plugin-utils" "^7.24.0"
+    babel-plugin-polyfill-corejs2 "^0.4.10"
+    babel-plugin-polyfill-corejs3 "^0.10.1"
+    babel-plugin-polyfill-regenerator "^0.6.1"
     semver "^6.3.1"
 
-"@babel/plugin-transform-shorthand-properties@^7.22.5":
-  version "7.22.5"
-  resolved "https://registry.npmjs.org/@babel/plugin-transform-shorthand-properties/-/plugin-transform-shorthand-properties-7.22.5.tgz#6e277654be82b5559fc4b9f58088507c24f0c624"
-  integrity sha512-vM4fq9IXHscXVKzDv5itkO1X52SmdFBFcMIBZ2FRn2nqVYqw6dBexUgMvAjHW+KXpPPViD/Yo3GrDEBaRC0QYA==
+"@babel/plugin-transform-shorthand-properties@^7.24.1":
+  version "7.24.1"
+  resolved "https://registry.npmjs.org/@babel/plugin-transform-shorthand-properties/-/plugin-transform-shorthand-properties-7.24.1.tgz#ba9a09144cf55d35ec6b93a32253becad8ee5b55"
+  integrity sha512-LyjVB1nsJ6gTTUKRjRWx9C1s9hE7dLfP/knKdrfeH9UPtAGjYGgxIbFfx7xyLIEWs7Xe1Gnf8EWiUqfjLhInZA==
   dependencies:
-    "@babel/helper-plugin-utils" "^7.22.5"
+    "@babel/helper-plugin-utils" "^7.24.0"
 
-"@babel/plugin-transform-spread@^7.22.5":
-  version "7.22.5"
-  resolved "https://registry.npmjs.org/@babel/plugin-transform-spread/-/plugin-transform-spread-7.22.5.tgz#6487fd29f229c95e284ba6c98d65eafb893fea6b"
-  integrity sha512-5ZzDQIGyvN4w8+dMmpohL6MBo+l2G7tfC/O2Dg7/hjpgeWvUx8FzfeOKxGog9IimPa4YekaQ9PlDqTLOljkcxg==
+"@babel/plugin-transform-spread@^7.24.1":
+  version "7.24.1"
+  resolved "https://registry.npmjs.org/@babel/plugin-transform-spread/-/plugin-transform-spread-7.24.1.tgz#a1acf9152cbf690e4da0ba10790b3ac7d2b2b391"
+  integrity sha512-KjmcIM+fxgY+KxPVbjelJC6hrH1CgtPmTvdXAfn3/a9CnWGSTY7nH4zm5+cjmWJybdcPSsD0++QssDsjcpe47g==
   dependencies:
-    "@babel/helper-plugin-utils" "^7.22.5"
+    "@babel/helper-plugin-utils" "^7.24.0"
     "@babel/helper-skip-transparent-expression-wrappers" "^7.22.5"
 
-"@babel/plugin-transform-sticky-regex@^7.22.5":
-  version "7.22.5"
-  resolved "https://registry.npmjs.org/@babel/plugin-transform-sticky-regex/-/plugin-transform-sticky-regex-7.22.5.tgz#295aba1595bfc8197abd02eae5fc288c0deb26aa"
-  integrity sha512-zf7LuNpHG0iEeiyCNwX4j3gDg1jgt1k3ZdXBKbZSoA3BbGQGvMiSvfbZRR3Dr3aeJe3ooWFZxOOG3IRStYp2Bw==
-  dependencies:
-    "@babel/helper-plugin-utils" "^7.22.5"
-
-"@babel/plugin-transform-template-literals@^7.22.5":
-  version "7.22.5"
-  resolved "https://registry.npmjs.org/@babel/plugin-transform-template-literals/-/plugin-transform-template-literals-7.22.5.tgz#8f38cf291e5f7a8e60e9f733193f0bcc10909bff"
-  integrity sha512-5ciOehRNf+EyUeewo8NkbQiUs4d6ZxiHo6BcBcnFlgiJfu16q0bQUw9Jvo0b0gBKFG1SMhDSjeKXSYuJLeFSMA==
+"@babel/plugin-transform-sticky-regex@^7.24.1":
+  version "7.24.1"
+  resolved "https://registry.npmjs.org/@babel/plugin-transform-sticky-regex/-/plugin-transform-sticky-regex-7.24.1.tgz#f03e672912c6e203ed8d6e0271d9c2113dc031b9"
+  integrity sha512-9v0f1bRXgPVcPrngOQvLXeGNNVLc8UjMVfebo9ka0WF3/7+aVUHmaJVT3sa0XCzEFioPfPHZiOcYG9qOsH63cw==
   dependencies:
-    "@babel/helper-plugin-utils" "^7.22.5"
+    "@babel/helper-plugin-utils" "^7.24.0"
 
-"@babel/plugin-transform-typeof-symbol@^7.22.5":
-  version "7.22.5"
-  resolved "https://registry.npmjs.org/@babel/plugin-transform-typeof-symbol/-/plugin-transform-typeof-symbol-7.22.5.tgz#5e2ba478da4b603af8673ff7c54f75a97b716b34"
-  integrity sha512-bYkI5lMzL4kPii4HHEEChkD0rkc+nvnlR6+o/qdqR6zrm0Sv/nodmyLhlq2DO0YKLUNd2VePmPRjJXSBh9OIdA==
+"@babel/plugin-transform-template-literals@^7.24.1":
+  version "7.24.1"
+  resolved "https://registry.npmjs.org/@babel/plugin-transform-template-literals/-/plugin-transform-template-literals-7.24.1.tgz#15e2166873a30d8617e3e2ccadb86643d327aab7"
+  integrity sha512-WRkhROsNzriarqECASCNu/nojeXCDTE/F2HmRgOzi7NGvyfYGq1NEjKBK3ckLfRgGc6/lPAqP0vDOSw3YtG34g==
   dependencies:
-    "@babel/helper-plugin-utils" "^7.22.5"
+    "@babel/helper-plugin-utils" "^7.24.0"
 
-"@babel/plugin-transform-typescript@^7.22.15":
-  version "7.22.15"
-  resolved "https://registry.npmjs.org/@babel/plugin-transform-typescript/-/plugin-transform-typescript-7.22.15.tgz#15adef906451d86349eb4b8764865c960eb54127"
-  integrity sha512-1uirS0TnijxvQLnlv5wQBwOX3E1wCFX7ITv+9pBV2wKEk4K+M5tqDaoNXnTH8tjEIYHLO98MwiTWO04Ggz4XuA==
+"@babel/plugin-transform-typeof-symbol@^7.24.1":
+  version "7.24.1"
+  resolved "https://registry.npmjs.org/@babel/plugin-transform-typeof-symbol/-/plugin-transform-typeof-symbol-7.24.1.tgz#6831f78647080dec044f7e9f68003d99424f94c7"
+  integrity sha512-CBfU4l/A+KruSUoW+vTQthwcAdwuqbpRNB8HQKlZABwHRhsdHZ9fezp4Sn18PeAlYxTNiLMlx4xUBV3AWfg1BA==
   dependencies:
-    "@babel/helper-annotate-as-pure" "^7.22.5"
-    "@babel/helper-create-class-features-plugin" "^7.22.15"
-    "@babel/helper-plugin-utils" "^7.22.5"
-    "@babel/plugin-syntax-typescript" "^7.22.5"
+    "@babel/helper-plugin-utils" "^7.24.0"
 
-"@babel/plugin-transform-typescript@^7.22.5":
-  version "7.22.5"
-  resolved "https://registry.npmjs.org/@babel/plugin-transform-typescript/-/plugin-transform-typescript-7.22.5.tgz#5c0f7adfc1b5f38c4dbc8f79b1f0f8074134bd7d"
-  integrity sha512-SMubA9S7Cb5sGSFFUlqxyClTA9zWJ8qGQrppNUm05LtFuN1ELRFNndkix4zUJrC9F+YivWwa1dHMSyo0e0N9dA==
+"@babel/plugin-transform-typescript@^7.24.1":
+  version "7.24.4"
+  resolved "https://registry.npmjs.org/@babel/plugin-transform-typescript/-/plugin-transform-typescript-7.24.4.tgz#03e0492537a4b953e491f53f2bc88245574ebd15"
+  integrity sha512-79t3CQ8+oBGk/80SQ8MN3Bs3obf83zJ0YZjDmDaEZN8MqhMI760apl5z6a20kFeMXBwJX99VpKT8CKxEBp5H1g==
   dependencies:
     "@babel/helper-annotate-as-pure" "^7.22.5"
-    "@babel/helper-create-class-features-plugin" "^7.22.5"
-    "@babel/helper-plugin-utils" "^7.22.5"
-    "@babel/plugin-syntax-typescript" "^7.22.5"
-
-"@babel/plugin-transform-unicode-escapes@^7.22.10":
-  version "7.22.10"
-  resolved "https://registry.npmjs.org/@babel/plugin-transform-unicode-escapes/-/plugin-transform-unicode-escapes-7.22.10.tgz#c723f380f40a2b2f57a62df24c9005834c8616d9"
-  integrity sha512-lRfaRKGZCBqDlRU3UIFovdp9c9mEvlylmpod0/OatICsSfuQ9YFthRo1tpTkGsklEefZdqlEFdY4A2dwTb6ohg==
-  dependencies:
-    "@babel/helper-plugin-utils" "^7.22.5"
-
-"@babel/plugin-transform-unicode-escapes@^7.22.5":
-  version "7.22.5"
-  resolved "https://registry.npmjs.org/@babel/plugin-transform-unicode-escapes/-/plugin-transform-unicode-escapes-7.22.5.tgz#ce0c248522b1cb22c7c992d88301a5ead70e806c"
-  integrity sha512-biEmVg1IYB/raUO5wT1tgfacCef15Fbzhkx493D3urBI++6hpJ+RFG4SrWMn0NEZLfvilqKf3QDrRVZHo08FYg==
-  dependencies:
-    "@babel/helper-plugin-utils" "^7.22.5"
-
-"@babel/plugin-transform-unicode-property-regex@^7.22.5":
-  version "7.22.5"
-  resolved "https://registry.npmjs.org/@babel/plugin-transform-unicode-property-regex/-/plugin-transform-unicode-property-regex-7.22.5.tgz#098898f74d5c1e86660dc112057b2d11227f1c81"
-  integrity sha512-HCCIb+CbJIAE6sXn5CjFQXMwkCClcOfPCzTlilJ8cUatfzwHlWQkbtV0zD338u9dZskwvuOYTuuaMaA8J5EI5A==
-  dependencies:
-    "@babel/helper-create-regexp-features-plugin" "^7.22.5"
-    "@babel/helper-plugin-utils" "^7.22.5"
-
-"@babel/plugin-transform-unicode-regex@^7.22.5":
-  version "7.22.5"
-  resolved "https://registry.npmjs.org/@babel/plugin-transform-unicode-regex/-/plugin-transform-unicode-regex-7.22.5.tgz#ce7e7bb3ef208c4ff67e02a22816656256d7a183"
-  integrity sha512-028laaOKptN5vHJf9/Arr/HiJekMd41hOEZYvNsrsXqJ7YPYuX2bQxh31fkZzGmq3YqHRJzYFFAVYvKfMPKqyg==
-  dependencies:
-    "@babel/helper-create-regexp-features-plugin" "^7.22.5"
-    "@babel/helper-plugin-utils" "^7.22.5"
-
-"@babel/plugin-transform-unicode-sets-regex@^7.22.5":
-  version "7.22.5"
-  resolved "https://registry.npmjs.org/@babel/plugin-transform-unicode-sets-regex/-/plugin-transform-unicode-sets-regex-7.22.5.tgz#77788060e511b708ffc7d42fdfbc5b37c3004e91"
-  integrity sha512-lhMfi4FC15j13eKrh3DnYHjpGj6UKQHtNKTbtc1igvAhRy4+kLhV07OpLcsN0VgDEw/MjAvJO4BdMJsHwMhzCg==
-  dependencies:
-    "@babel/helper-create-regexp-features-plugin" "^7.22.5"
-    "@babel/helper-plugin-utils" "^7.22.5"
-
-"@babel/preset-env@^7.10.2":
-  version "7.22.5"
-  resolved "https://registry.npmjs.org/@babel/preset-env/-/preset-env-7.22.5.tgz#3da66078b181f3d62512c51cf7014392c511504e"
-  integrity sha512-fj06hw89dpiZzGZtxn+QybifF07nNiZjZ7sazs2aVDcysAZVGjW7+7iFYxg6GLNM47R/thYfLdrXc+2f11Vi9A==
-  dependencies:
-    "@babel/compat-data" "^7.22.5"
-    "@babel/helper-compilation-targets" "^7.22.5"
-    "@babel/helper-plugin-utils" "^7.22.5"
-    "@babel/helper-validator-option" "^7.22.5"
-    "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression" "^7.22.5"
-    "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining" "^7.22.5"
-    "@babel/plugin-proposal-private-property-in-object" "7.21.0-placeholder-for-preset-env.2"
-    "@babel/plugin-syntax-async-generators" "^7.8.4"
-    "@babel/plugin-syntax-class-properties" "^7.12.13"
-    "@babel/plugin-syntax-class-static-block" "^7.14.5"
-    "@babel/plugin-syntax-dynamic-import" "^7.8.3"
-    "@babel/plugin-syntax-export-namespace-from" "^7.8.3"
-    "@babel/plugin-syntax-import-assertions" "^7.22.5"
-    "@babel/plugin-syntax-import-attributes" "^7.22.5"
-    "@babel/plugin-syntax-import-meta" "^7.10.4"
-    "@babel/plugin-syntax-json-strings" "^7.8.3"
-    "@babel/plugin-syntax-logical-assignment-operators" "^7.10.4"
-    "@babel/plugin-syntax-nullish-coalescing-operator" "^7.8.3"
-    "@babel/plugin-syntax-numeric-separator" "^7.10.4"
-    "@babel/plugin-syntax-object-rest-spread" "^7.8.3"
-    "@babel/plugin-syntax-optional-catch-binding" "^7.8.3"
-    "@babel/plugin-syntax-optional-chaining" "^7.8.3"
-    "@babel/plugin-syntax-private-property-in-object" "^7.14.5"
-    "@babel/plugin-syntax-top-level-await" "^7.14.5"
-    "@babel/plugin-syntax-unicode-sets-regex" "^7.18.6"
-    "@babel/plugin-transform-arrow-functions" "^7.22.5"
-    "@babel/plugin-transform-async-generator-functions" "^7.22.5"
-    "@babel/plugin-transform-async-to-generator" "^7.22.5"
-    "@babel/plugin-transform-block-scoped-functions" "^7.22.5"
-    "@babel/plugin-transform-block-scoping" "^7.22.5"
-    "@babel/plugin-transform-class-properties" "^7.22.5"
-    "@babel/plugin-transform-class-static-block" "^7.22.5"
-    "@babel/plugin-transform-classes" "^7.22.5"
-    "@babel/plugin-transform-computed-properties" "^7.22.5"
-    "@babel/plugin-transform-destructuring" "^7.22.5"
-    "@babel/plugin-transform-dotall-regex" "^7.22.5"
-    "@babel/plugin-transform-duplicate-keys" "^7.22.5"
-    "@babel/plugin-transform-dynamic-import" "^7.22.5"
-    "@babel/plugin-transform-exponentiation-operator" "^7.22.5"
-    "@babel/plugin-transform-export-namespace-from" "^7.22.5"
-    "@babel/plugin-transform-for-of" "^7.22.5"
-    "@babel/plugin-transform-function-name" "^7.22.5"
-    "@babel/plugin-transform-json-strings" "^7.22.5"
-    "@babel/plugin-transform-literals" "^7.22.5"
-    "@babel/plugin-transform-logical-assignment-operators" "^7.22.5"
-    "@babel/plugin-transform-member-expression-literals" "^7.22.5"
-    "@babel/plugin-transform-modules-amd" "^7.22.5"
-    "@babel/plugin-transform-modules-commonjs" "^7.22.5"
-    "@babel/plugin-transform-modules-systemjs" "^7.22.5"
-    "@babel/plugin-transform-modules-umd" "^7.22.5"
-    "@babel/plugin-transform-named-capturing-groups-regex" "^7.22.5"
-    "@babel/plugin-transform-new-target" "^7.22.5"
-    "@babel/plugin-transform-nullish-coalescing-operator" "^7.22.5"
-    "@babel/plugin-transform-numeric-separator" "^7.22.5"
-    "@babel/plugin-transform-object-rest-spread" "^7.22.5"
-    "@babel/plugin-transform-object-super" "^7.22.5"
-    "@babel/plugin-transform-optional-catch-binding" "^7.22.5"
-    "@babel/plugin-transform-optional-chaining" "^7.22.5"
-    "@babel/plugin-transform-parameters" "^7.22.5"
-    "@babel/plugin-transform-private-methods" "^7.22.5"
-    "@babel/plugin-transform-private-property-in-object" "^7.22.5"
-    "@babel/plugin-transform-property-literals" "^7.22.5"
-    "@babel/plugin-transform-regenerator" "^7.22.5"
-    "@babel/plugin-transform-reserved-words" "^7.22.5"
-    "@babel/plugin-transform-shorthand-properties" "^7.22.5"
-    "@babel/plugin-transform-spread" "^7.22.5"
-    "@babel/plugin-transform-sticky-regex" "^7.22.5"
-    "@babel/plugin-transform-template-literals" "^7.22.5"
-    "@babel/plugin-transform-typeof-symbol" "^7.22.5"
-    "@babel/plugin-transform-unicode-escapes" "^7.22.5"
-    "@babel/plugin-transform-unicode-property-regex" "^7.22.5"
-    "@babel/plugin-transform-unicode-regex" "^7.22.5"
-    "@babel/plugin-transform-unicode-sets-regex" "^7.22.5"
-    "@babel/preset-modules" "^0.1.5"
-    "@babel/types" "^7.22.5"
-    babel-plugin-polyfill-corejs2 "^0.4.3"
-    babel-plugin-polyfill-corejs3 "^0.8.1"
-    babel-plugin-polyfill-regenerator "^0.5.0"
-    core-js-compat "^3.30.2"
-    semver "^6.3.0"
-
-"@babel/preset-env@^7.20.2":
-  version "7.23.2"
-  resolved "https://registry.npmjs.org/@babel/preset-env/-/preset-env-7.23.2.tgz#1f22be0ff0e121113260337dbc3e58fafce8d059"
-  integrity sha512-BW3gsuDD+rvHL2VO2SjAUNTBe5YrjsTiDyqamPDWY723na3/yPQ65X5oQkFVJZ0o50/2d+svm1rkPoJeR1KxVQ==
-  dependencies:
-    "@babel/compat-data" "^7.23.2"
-    "@babel/helper-compilation-targets" "^7.22.15"
-    "@babel/helper-plugin-utils" "^7.22.5"
-    "@babel/helper-validator-option" "^7.22.15"
-    "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression" "^7.22.15"
-    "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining" "^7.22.15"
+    "@babel/helper-create-class-features-plugin" "^7.24.4"
+    "@babel/helper-plugin-utils" "^7.24.0"
+    "@babel/plugin-syntax-typescript" "^7.24.1"
+
+"@babel/plugin-transform-unicode-escapes@^7.24.1":
+  version "7.24.1"
+  resolved "https://registry.npmjs.org/@babel/plugin-transform-unicode-escapes/-/plugin-transform-unicode-escapes-7.24.1.tgz#fb3fa16676549ac7c7449db9b342614985c2a3a4"
+  integrity sha512-RlkVIcWT4TLI96zM660S877E7beKlQw7Ig+wqkKBiWfj0zH5Q4h50q6er4wzZKRNSYpfo6ILJ+hrJAGSX2qcNw==
+  dependencies:
+    "@babel/helper-plugin-utils" "^7.24.0"
+
+"@babel/plugin-transform-unicode-property-regex@^7.24.1":
+  version "7.24.1"
+  resolved "https://registry.npmjs.org/@babel/plugin-transform-unicode-property-regex/-/plugin-transform-unicode-property-regex-7.24.1.tgz#56704fd4d99da81e5e9f0c0c93cabd91dbc4889e"
+  integrity sha512-Ss4VvlfYV5huWApFsF8/Sq0oXnGO+jB+rijFEFugTd3cwSObUSnUi88djgR5528Csl0uKlrI331kRqe56Ov2Ng==
+  dependencies:
+    "@babel/helper-create-regexp-features-plugin" "^7.22.15"
+    "@babel/helper-plugin-utils" "^7.24.0"
+
+"@babel/plugin-transform-unicode-regex@^7.24.1":
+  version "7.24.1"
+  resolved "https://registry.npmjs.org/@babel/plugin-transform-unicode-regex/-/plugin-transform-unicode-regex-7.24.1.tgz#57c3c191d68f998ac46b708380c1ce4d13536385"
+  integrity sha512-2A/94wgZgxfTsiLaQ2E36XAOdcZmGAaEEgVmxQWwZXWkGhvoHbaqXcKnU8zny4ycpu3vNqg0L/PcCiYtHtA13g==
+  dependencies:
+    "@babel/helper-create-regexp-features-plugin" "^7.22.15"
+    "@babel/helper-plugin-utils" "^7.24.0"
+
+"@babel/plugin-transform-unicode-sets-regex@^7.24.1":
+  version "7.24.1"
+  resolved "https://registry.npmjs.org/@babel/plugin-transform-unicode-sets-regex/-/plugin-transform-unicode-sets-regex-7.24.1.tgz#c1ea175b02afcffc9cf57a9c4658326625165b7f"
+  integrity sha512-fqj4WuzzS+ukpgerpAoOnMfQXwUHFxXUZUE84oL2Kao2N8uSlvcpnAidKASgsNgzZHBsHWvcm8s9FPWUhAb8fA==
+  dependencies:
+    "@babel/helper-create-regexp-features-plugin" "^7.22.15"
+    "@babel/helper-plugin-utils" "^7.24.0"
+
+"@babel/preset-env@^7.10.2", "@babel/preset-env@^7.20.2":
+  version "7.24.4"
+  resolved "https://registry.npmjs.org/@babel/preset-env/-/preset-env-7.24.4.tgz#46dbbcd608771373b88f956ffb67d471dce0d23b"
+  integrity sha512-7Kl6cSmYkak0FK/FXjSEnLJ1N9T/WA2RkMhu17gZ/dsxKJUuTYNIylahPTzqpLyJN4WhDif8X0XK1R8Wsguo/A==
+  dependencies:
+    "@babel/compat-data" "^7.24.4"
+    "@babel/helper-compilation-targets" "^7.23.6"
+    "@babel/helper-plugin-utils" "^7.24.0"
+    "@babel/helper-validator-option" "^7.23.5"
+    "@babel/plugin-bugfix-firefox-class-in-computed-class-key" "^7.24.4"
+    "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression" "^7.24.1"
+    "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining" "^7.24.1"
+    "@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly" "^7.24.1"
     "@babel/plugin-proposal-private-property-in-object" "7.21.0-placeholder-for-preset-env.2"
     "@babel/plugin-syntax-async-generators" "^7.8.4"
     "@babel/plugin-syntax-class-properties" "^7.12.13"
     "@babel/plugin-syntax-class-static-block" "^7.14.5"
     "@babel/plugin-syntax-dynamic-import" "^7.8.3"
     "@babel/plugin-syntax-export-namespace-from" "^7.8.3"
-    "@babel/plugin-syntax-import-assertions" "^7.22.5"
-    "@babel/plugin-syntax-import-attributes" "^7.22.5"
+    "@babel/plugin-syntax-import-assertions" "^7.24.1"
+    "@babel/plugin-syntax-import-attributes" "^7.24.1"
     "@babel/plugin-syntax-import-meta" "^7.10.4"
     "@babel/plugin-syntax-json-strings" "^7.8.3"
     "@babel/plugin-syntax-logical-assignment-operators" "^7.10.4"
@@ -1527,59 +969,58 @@
     "@babel/plugin-syntax-private-property-in-object" "^7.14.5"
     "@babel/plugin-syntax-top-level-await" "^7.14.5"
     "@babel/plugin-syntax-unicode-sets-regex" "^7.18.6"
-    "@babel/plugin-transform-arrow-functions" "^7.22.5"
-    "@babel/plugin-transform-async-generator-functions" "^7.23.2"
-    "@babel/plugin-transform-async-to-generator" "^7.22.5"
-    "@babel/plugin-transform-block-scoped-functions" "^7.22.5"
-    "@babel/plugin-transform-block-scoping" "^7.23.0"
-    "@babel/plugin-transform-class-properties" "^7.22.5"
-    "@babel/plugin-transform-class-static-block" "^7.22.11"
-    "@babel/plugin-transform-classes" "^7.22.15"
-    "@babel/plugin-transform-computed-properties" "^7.22.5"
-    "@babel/plugin-transform-destructuring" "^7.23.0"
-    "@babel/plugin-transform-dotall-regex" "^7.22.5"
-    "@babel/plugin-transform-duplicate-keys" "^7.22.5"
-    "@babel/plugin-transform-dynamic-import" "^7.22.11"
-    "@babel/plugin-transform-exponentiation-operator" "^7.22.5"
-    "@babel/plugin-transform-export-namespace-from" "^7.22.11"
-    "@babel/plugin-transform-for-of" "^7.22.15"
-    "@babel/plugin-transform-function-name" "^7.22.5"
-    "@babel/plugin-transform-json-strings" "^7.22.11"
-    "@babel/plugin-transform-literals" "^7.22.5"
-    "@babel/plugin-transform-logical-assignment-operators" "^7.22.11"
-    "@babel/plugin-transform-member-expression-literals" "^7.22.5"
-    "@babel/plugin-transform-modules-amd" "^7.23.0"
-    "@babel/plugin-transform-modules-commonjs" "^7.23.0"
-    "@babel/plugin-transform-modules-systemjs" "^7.23.0"
-    "@babel/plugin-transform-modules-umd" "^7.22.5"
+    "@babel/plugin-transform-arrow-functions" "^7.24.1"
+    "@babel/plugin-transform-async-generator-functions" "^7.24.3"
+    "@babel/plugin-transform-async-to-generator" "^7.24.1"
+    "@babel/plugin-transform-block-scoped-functions" "^7.24.1"
+    "@babel/plugin-transform-block-scoping" "^7.24.4"
+    "@babel/plugin-transform-class-properties" "^7.24.1"
+    "@babel/plugin-transform-class-static-block" "^7.24.4"
+    "@babel/plugin-transform-classes" "^7.24.1"
+    "@babel/plugin-transform-computed-properties" "^7.24.1"
+    "@babel/plugin-transform-destructuring" "^7.24.1"
+    "@babel/plugin-transform-dotall-regex" "^7.24.1"
+    "@babel/plugin-transform-duplicate-keys" "^7.24.1"
+    "@babel/plugin-transform-dynamic-import" "^7.24.1"
+    "@babel/plugin-transform-exponentiation-operator" "^7.24.1"
+    "@babel/plugin-transform-export-namespace-from" "^7.24.1"
+    "@babel/plugin-transform-for-of" "^7.24.1"
+    "@babel/plugin-transform-function-name" "^7.24.1"
+    "@babel/plugin-transform-json-strings" "^7.24.1"
+    "@babel/plugin-transform-literals" "^7.24.1"
+    "@babel/plugin-transform-logical-assignment-operators" "^7.24.1"
+    "@babel/plugin-transform-member-expression-literals" "^7.24.1"
+    "@babel/plugin-transform-modules-amd" "^7.24.1"
+    "@babel/plugin-transform-modules-commonjs" "^7.24.1"
+    "@babel/plugin-transform-modules-systemjs" "^7.24.1"
+    "@babel/plugin-transform-modules-umd" "^7.24.1"
     "@babel/plugin-transform-named-capturing-groups-regex" "^7.22.5"
-    "@babel/plugin-transform-new-target" "^7.22.5"
-    "@babel/plugin-transform-nullish-coalescing-operator" "^7.22.11"
-    "@babel/plugin-transform-numeric-separator" "^7.22.11"
-    "@babel/plugin-transform-object-rest-spread" "^7.22.15"
-    "@babel/plugin-transform-object-super" "^7.22.5"
-    "@babel/plugin-transform-optional-catch-binding" "^7.22.11"
-    "@babel/plugin-transform-optional-chaining" "^7.23.0"
-    "@babel/plugin-transform-parameters" "^7.22.15"
-    "@babel/plugin-transform-private-methods" "^7.22.5"
-    "@babel/plugin-transform-private-property-in-object" "^7.22.11"
-    "@babel/plugin-transform-property-literals" "^7.22.5"
-    "@babel/plugin-transform-regenerator" "^7.22.10"
-    "@babel/plugin-transform-reserved-words" "^7.22.5"
-    "@babel/plugin-transform-shorthand-properties" "^7.22.5"
-    "@babel/plugin-transform-spread" "^7.22.5"
-    "@babel/plugin-transform-sticky-regex" "^7.22.5"
-    "@babel/plugin-transform-template-literals" "^7.22.5"
-    "@babel/plugin-transform-typeof-symbol" "^7.22.5"
-    "@babel/plugin-transform-unicode-escapes" "^7.22.10"
-    "@babel/plugin-transform-unicode-property-regex" "^7.22.5"
-    "@babel/plugin-transform-unicode-regex" "^7.22.5"
-    "@babel/plugin-transform-unicode-sets-regex" "^7.22.5"
+    "@babel/plugin-transform-new-target" "^7.24.1"
+    "@babel/plugin-transform-nullish-coalescing-operator" "^7.24.1"
+    "@babel/plugin-transform-numeric-separator" "^7.24.1"
+    "@babel/plugin-transform-object-rest-spread" "^7.24.1"
+    "@babel/plugin-transform-object-super" "^7.24.1"
+    "@babel/plugin-transform-optional-catch-binding" "^7.24.1"
+    "@babel/plugin-transform-optional-chaining" "^7.24.1"
+    "@babel/plugin-transform-parameters" "^7.24.1"
+    "@babel/plugin-transform-private-methods" "^7.24.1"
+    "@babel/plugin-transform-private-property-in-object" "^7.24.1"
+    "@babel/plugin-transform-property-literals" "^7.24.1"
+    "@babel/plugin-transform-regenerator" "^7.24.1"
+    "@babel/plugin-transform-reserved-words" "^7.24.1"
+    "@babel/plugin-transform-shorthand-properties" "^7.24.1"
+    "@babel/plugin-transform-spread" "^7.24.1"
+    "@babel/plugin-transform-sticky-regex" "^7.24.1"
+    "@babel/plugin-transform-template-literals" "^7.24.1"
+    "@babel/plugin-transform-typeof-symbol" "^7.24.1"
+    "@babel/plugin-transform-unicode-escapes" "^7.24.1"
+    "@babel/plugin-transform-unicode-property-regex" "^7.24.1"
+    "@babel/plugin-transform-unicode-regex" "^7.24.1"
+    "@babel/plugin-transform-unicode-sets-regex" "^7.24.1"
     "@babel/preset-modules" "0.1.6-no-external-plugins"
-    "@babel/types" "^7.23.0"
-    babel-plugin-polyfill-corejs2 "^0.4.6"
-    babel-plugin-polyfill-corejs3 "^0.8.5"
-    babel-plugin-polyfill-regenerator "^0.5.3"
+    babel-plugin-polyfill-corejs2 "^0.4.10"
+    babel-plugin-polyfill-corejs3 "^0.10.4"
+    babel-plugin-polyfill-regenerator "^0.6.1"
     core-js-compat "^3.31.0"
     semver "^6.3.1"
 
@@ -1592,133 +1033,84 @@
     "@babel/types" "^7.4.4"
     esutils "^2.0.2"
 
-"@babel/preset-modules@^0.1.5":
-  version "0.1.5"
-  resolved "https://registry.npmjs.org/@babel/preset-modules/-/preset-modules-0.1.5.tgz#ef939d6e7f268827e1841638dc6ff95515e115d9"
-  integrity sha512-A57th6YRG7oR3cq/yt/Y84MvGgE0eJG2F1JLhKuyG+jFxEgrd/HAMJatiFtmOiZurz+0DkrvbheCLaV5f2JfjA==
-  dependencies:
-    "@babel/helper-plugin-utils" "^7.0.0"
-    "@babel/plugin-proposal-unicode-property-regex" "^7.4.4"
-    "@babel/plugin-transform-dotall-regex" "^7.4.4"
-    "@babel/types" "^7.4.4"
-    esutils "^2.0.2"
-
 "@babel/preset-react@^7.12.13", "@babel/preset-react@^7.18.6":
-  version "7.22.5"
-  resolved "https://registry.npmjs.org/@babel/preset-react/-/preset-react-7.22.5.tgz#c4d6058fbf80bccad02dd8c313a9aaa67e3c3dd6"
-  integrity sha512-M+Is3WikOpEJHgR385HbuCITPTaPRaNkibTEa9oiofmJvIsrceb4yp9RL9Kb+TE8LznmeyZqpP+Lopwcx59xPQ==
-  dependencies:
-    "@babel/helper-plugin-utils" "^7.22.5"
-    "@babel/helper-validator-option" "^7.22.5"
-    "@babel/plugin-transform-react-display-name" "^7.22.5"
-    "@babel/plugin-transform-react-jsx" "^7.22.5"
+  version "7.24.1"
+  resolved "https://registry.npmjs.org/@babel/preset-react/-/preset-react-7.24.1.tgz#2450c2ac5cc498ef6101a6ca5474de251e33aa95"
+  integrity sha512-eFa8up2/8cZXLIpkafhaADTXSnl7IsUFCYenRWrARBz0/qZwcT0RBXpys0LJU4+WfPoF2ZG6ew6s2V6izMCwRA==
+  dependencies:
+    "@babel/helper-plugin-utils" "^7.24.0"
+    "@babel/helper-validator-option" "^7.23.5"
+    "@babel/plugin-transform-react-display-name" "^7.24.1"
+    "@babel/plugin-transform-react-jsx" "^7.23.4"
     "@babel/plugin-transform-react-jsx-development" "^7.22.5"
-    "@babel/plugin-transform-react-pure-annotations" "^7.22.5"
+    "@babel/plugin-transform-react-pure-annotations" "^7.24.1"
 
-"@babel/preset-typescript@^7.21.0":
-  version "7.23.2"
-  resolved "https://registry.npmjs.org/@babel/preset-typescript/-/preset-typescript-7.23.2.tgz#c8de488130b7081f7e1482936ad3de5b018beef4"
-  integrity sha512-u4UJc1XsS1GhIGteM8rnGiIvf9rJpiVgMEeCnwlLA7WJPC+jcXWJAGxYmeqs5hOZD8BbAfnV5ezBOxQbb4OUxA==
+"@babel/preset-typescript@^7.21.0", "@babel/preset-typescript@^7.22.5":
+  version "7.24.1"
+  resolved "https://registry.npmjs.org/@babel/preset-typescript/-/preset-typescript-7.24.1.tgz#89bdf13a3149a17b3b2a2c9c62547f06db8845ec"
+  integrity sha512-1DBaMmRDpuYQBPWD8Pf/WEwCrtgRHxsZnP4mIy9G/X+hFfbI47Q2G4t1Paakld84+qsk2fSsUPMKg71jkoOOaQ==
   dependencies:
-    "@babel/helper-plugin-utils" "^7.22.5"
-    "@babel/helper-validator-option" "^7.22.15"
-    "@babel/plugin-syntax-jsx" "^7.22.5"
-    "@babel/plugin-transform-modules-commonjs" "^7.23.0"
-    "@babel/plugin-transform-typescript" "^7.22.15"
-
-"@babel/preset-typescript@^7.22.5":
-  version "7.22.5"
-  resolved "https://registry.npmjs.org/@babel/preset-typescript/-/preset-typescript-7.22.5.tgz#16367d8b01d640e9a507577ed4ee54e0101e51c8"
-  integrity sha512-YbPaal9LxztSGhmndR46FmAbkJ/1fAsw293tSU+I5E5h+cnJ3d4GTwyUgGYmOXJYdGA+uNePle4qbaRzj2NISQ==
-  dependencies:
-    "@babel/helper-plugin-utils" "^7.22.5"
-    "@babel/helper-validator-option" "^7.22.5"
-    "@babel/plugin-syntax-jsx" "^7.22.5"
-    "@babel/plugin-transform-modules-commonjs" "^7.22.5"
-    "@babel/plugin-transform-typescript" "^7.22.5"
+    "@babel/helper-plugin-utils" "^7.24.0"
+    "@babel/helper-validator-option" "^7.23.5"
+    "@babel/plugin-syntax-jsx" "^7.24.1"
+    "@babel/plugin-transform-modules-commonjs" "^7.24.1"
+    "@babel/plugin-transform-typescript" "^7.24.1"
 
 "@babel/regjsgen@^0.8.0":
   version "0.8.0"
   resolved "https://registry.npmjs.org/@babel/regjsgen/-/regjsgen-0.8.0.tgz#f0ba69b075e1f05fb2825b7fad991e7adbb18310"
   integrity sha512-x/rqGMdzj+fWZvCOYForTghzbtqPDZ5gPwaoNGHdgDfF2QA/XZbCBp4Moo5scrkAMPhB7z26XM/AaHuIJdgauA==
 
-"@babel/runtime@^7.0.0", "@babel/runtime@^7.10.1", "@babel/runtime@^7.11.1", "@babel/runtime@^7.11.2", "@babel/runtime@^7.12.0", "@babel/runtime@^7.12.5", "@babel/runtime@^7.18.0", "@babel/runtime@^7.18.3", "@babel/runtime@^7.20.7", "@babel/runtime@^7.21.0", "@babel/runtime@^7.3.1", "@babel/runtime@^7.4.4", "@babel/runtime@^7.5.5", "@babel/runtime@^7.6.0", "@babel/runtime@^7.7.2", "@babel/runtime@^7.8.3", "@babel/runtime@^7.8.4", "@babel/runtime@^7.8.7", "@babel/runtime@^7.9.2":
-  version "7.22.5"
-  resolved "https://registry.npmjs.org/@babel/runtime/-/runtime-7.22.5.tgz#8564dd588182ce0047d55d7a75e93921107b57ec"
-  integrity sha512-ecjvYlnAaZ/KVneE/OdKYBYfgXV3Ptu6zQWmgEF7vwKhQnvVS6bjMD2XYgj+SNvQ1GfK/pjgokfPkC/2CO8CuA==
+"@babel/runtime@^7.0.0", "@babel/runtime@^7.10.1", "@babel/runtime@^7.11.1", "@babel/runtime@^7.11.2", "@babel/runtime@^7.12.0", "@babel/runtime@^7.12.5", "@babel/runtime@^7.18.3", "@babel/runtime@^7.20.7", "@babel/runtime@^7.23.2", "@babel/runtime@^7.23.9", "@babel/runtime@^7.24.4", "@babel/runtime@^7.3.1", "@babel/runtime@^7.5.5", "@babel/runtime@^7.7.2", "@babel/runtime@^7.8.3", "@babel/runtime@^7.8.4", "@babel/runtime@^7.8.7", "@babel/runtime@^7.9.2":
+  version "7.24.4"
+  resolved "https://registry.npmjs.org/@babel/runtime/-/runtime-7.24.4.tgz#de795accd698007a66ba44add6cc86542aff1edd"
+  integrity sha512-dkxf7+hn8mFBwKjs9bvBlArzLVxVbS8usaPUDd5p2a9JCL9tB8OaOVN1isD4+Xyk4ns89/xeOmbQvgdK7IIVdA==
   dependencies:
-    regenerator-runtime "^0.13.11"
+    regenerator-runtime "^0.14.0"
 
-"@babel/template@^7.22.15", "@babel/template@^7.3.3":
-  version "7.22.15"
-  resolved "https://registry.npmjs.org/@babel/template/-/template-7.22.15.tgz#09576efc3830f0430f4548ef971dde1350ef2f38"
-  integrity sha512-QPErUVm4uyJa60rkI73qneDacvdvzxshT3kksGqlGWYdOTIUOwJ7RDUL8sGqslY1uXWSL6xMFKEXDS3ox2uF0w==
+"@babel/template@^7.22.15", "@babel/template@^7.24.0", "@babel/template@^7.3.3":
+  version "7.24.0"
+  resolved "https://registry.npmjs.org/@babel/template/-/template-7.24.0.tgz#c6a524aa93a4a05d66aaf31654258fae69d87d50"
+  integrity sha512-Bkf2q8lMB0AFpX0NFEqSbx1OkTHf0f+0j82mkw+ZpzBnkk7e9Ql0891vlfgi+kHwOk8tQjiQHpqh4LaSa0fKEA==
   dependencies:
-    "@babel/code-frame" "^7.22.13"
-    "@babel/parser" "^7.22.15"
-    "@babel/types" "^7.22.15"
-
-"@babel/template@^7.22.5":
-  version "7.22.5"
-  resolved "https://registry.npmjs.org/@babel/template/-/template-7.22.5.tgz#0c8c4d944509875849bd0344ff0050756eefc6ec"
-  integrity sha512-X7yV7eiwAxdj9k94NEylvbVHLiVG1nvzCV2EAowhxLTwODV1jl9UzZ48leOC0sH7OnuHrIkllaBgneUykIcZaw==
-  dependencies:
-    "@babel/code-frame" "^7.22.5"
-    "@babel/parser" "^7.22.5"
-    "@babel/types" "^7.22.5"
+    "@babel/code-frame" "^7.23.5"
+    "@babel/parser" "^7.24.0"
+    "@babel/types" "^7.24.0"
 
-"@babel/traverse@^7.22.15", "@babel/traverse@^7.22.5", "@babel/traverse@^7.23.2", "@babel/traverse@^7.4.5":
-  version "7.23.2"
-  resolved "https://registry.npmjs.org/@babel/traverse/-/traverse-7.23.2.tgz#329c7a06735e144a506bdb2cad0268b7f46f4ad8"
-  integrity sha512-azpe59SQ48qG6nu2CzcMLbxUudtN+dOM9kDbUqGq3HXUJRlo7i8fvPoxQUzYgLZ4cMVmuZgm8vvBpNeRhd6XSw==
+"@babel/traverse@^7.24.1", "@babel/traverse@^7.4.5":
+  version "7.24.1"
+  resolved "https://registry.npmjs.org/@babel/traverse/-/traverse-7.24.1.tgz#d65c36ac9dd17282175d1e4a3c49d5b7988f530c"
+  integrity sha512-xuU6o9m68KeqZbQuDt2TcKSxUw/mrsvavlEqQ1leZ/B+C9tk6E4sRWy97WaXgvq5E+nU3cXMxv3WKOCanVMCmQ==
   dependencies:
-    "@babel/code-frame" "^7.22.13"
-    "@babel/generator" "^7.23.0"
+    "@babel/code-frame" "^7.24.1"
+    "@babel/generator" "^7.24.1"
     "@babel/helper-environment-visitor" "^7.22.20"
     "@babel/helper-function-name" "^7.23.0"
     "@babel/helper-hoist-variables" "^7.22.5"
     "@babel/helper-split-export-declaration" "^7.22.6"
-    "@babel/parser" "^7.23.0"
-    "@babel/types" "^7.23.0"
-    debug "^4.1.0"
+    "@babel/parser" "^7.24.1"
+    "@babel/types" "^7.24.0"
+    debug "^4.3.1"
     globals "^11.1.0"
 
-"@babel/types@^7.0.0", "@babel/types@^7.20.7", "@babel/types@^7.22.15", "@babel/types@^7.3.3":
-  version "7.22.15"
-  resolved "https://registry.npmjs.org/@babel/types/-/types-7.22.15.tgz#266cb21d2c5fd0b3931e7a91b6dd72d2f617d282"
-  integrity sha512-X+NLXr0N8XXmN5ZsaQdm9U2SSC3UbIYq/doL++sueHOTisgZHoKaQtZxGuV2cUPQHMfjKEfg/g6oy7Hm6SKFtA==
-  dependencies:
-    "@babel/helper-string-parser" "^7.22.5"
-    "@babel/helper-validator-identifier" "^7.22.15"
-    to-fast-properties "^2.0.0"
-
-"@babel/types@^7.21.3", "@babel/types@^7.22.19", "@babel/types@^7.23.0":
-  version "7.23.0"
-  resolved "https://registry.npmjs.org/@babel/types/-/types-7.23.0.tgz#8c1f020c9df0e737e4e247c0619f58c68458aaeb"
-  integrity sha512-0oIyUfKoI3mSqMvsxBdclDwxXKXAUA8v/apZbc+iSyARYou1o8ZGDxbUYyLFoW2arqS2jDGqJuZvv1d/io1axg==
+"@babel/types@^7.0.0", "@babel/types@^7.20.7", "@babel/types@^7.21.3", "@babel/types@^7.22.15", "@babel/types@^7.22.19", "@babel/types@^7.22.5", "@babel/types@^7.23.0", "@babel/types@^7.23.4", "@babel/types@^7.24.0", "@babel/types@^7.3.3", "@babel/types@^7.4.4", "@babel/types@^7.8.3":
+  version "7.24.0"
+  resolved "https://registry.npmjs.org/@babel/types/-/types-7.24.0.tgz#3b951f435a92e7333eba05b7566fd297960ea1bf"
+  integrity sha512-+j7a5c253RfKh8iABBhywc8NSfP5LURe7Uh4qpsh6jc+aLJguvmIUBdjSdEMQv2bENrCR5MfRdjGo7vzS/ob7w==
   dependencies:
-    "@babel/helper-string-parser" "^7.22.5"
+    "@babel/helper-string-parser" "^7.23.4"
     "@babel/helper-validator-identifier" "^7.22.20"
     to-fast-properties "^2.0.0"
 
-"@babel/types@^7.22.5", "@babel/types@^7.4.4", "@babel/types@^7.8.3":
-  version "7.22.5"
-  resolved "https://registry.npmjs.org/@babel/types/-/types-7.22.5.tgz#cd93eeaab025880a3a47ec881f4b096a5b786fbe"
-  integrity sha512-zo3MIHGOkPOfoRXitsgHLjEXmlDaD/5KU1Uzuc9GNiZPhSqVxVRtxuPaSBZDsYZ9qV88AjtMtWW7ww98loJ9KA==
-  dependencies:
-    "@babel/helper-string-parser" "^7.22.5"
-    "@babel/helper-validator-identifier" "^7.22.5"
-    to-fast-properties "^2.0.0"
-
 "@bcoe/v8-coverage@^0.2.3":
   version "0.2.3"
   resolved "https://registry.npmjs.org/@bcoe/v8-coverage/-/v8-coverage-0.2.3.tgz#75a2e8b51cb758a7553d6804a5932d7aace75c39"
   integrity sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw==
 
 "@codemirror/autocomplete@^6.0.0":
-  version "6.12.0"
-  resolved "https://registry.npmjs.org/@codemirror/autocomplete/-/autocomplete-6.12.0.tgz#3fa620a8a3f42ded7751749916e8375f6bbbb333"
-  integrity sha512-r4IjdYFthwbCQyvqnSlx0WBHRHi8nBvU+WjJxFUij81qsBfhNudf/XKKmmC2j3m0LaOYUQTf3qiEK1J8lO1sdg==
+  version "6.16.0"
+  resolved "https://registry.npmjs.org/@codemirror/autocomplete/-/autocomplete-6.16.0.tgz#595eb30099ba91a835ed65ed8ff7497388f604b3"
+  integrity sha512-P/LeCTtZHRTCU4xQsa89vSKWecYv1ZqwzOd5topheGRf+qtacFgBeIMQi3eL8Kt/BUNvxUWkx+5qP2jlGoARrg==
   dependencies:
     "@codemirror/language" "^6.0.0"
     "@codemirror/state" "^6.0.0"
@@ -1726,19 +1118,19 @@
     "@lezer/common" "^1.0.0"
 
 "@codemirror/commands@^6.0.0":
-  version "6.3.3"
-  resolved "https://registry.npmjs.org/@codemirror/commands/-/commands-6.3.3.tgz#03face5bf5f3de0fc4e09b177b3c91eda2ceb7e9"
-  integrity sha512-dO4hcF0fGT9tu1Pj1D2PvGvxjeGkbC6RGcZw6Qs74TH+Ed1gw98jmUgd2axWvIZEqTeTuFrg1lEB1KV6cK9h1A==
+  version "6.4.0"
+  resolved "https://registry.npmjs.org/@codemirror/commands/-/commands-6.4.0.tgz#be4538b98b9f4f6f2f43a178622be6540be5a18a"
+  integrity sha512-HB3utD5GxCvEhSyj5EuG9KpuQQhFpxalh3lwrspyL/GeSNDe4c6JDxVzL12SJ+7gUknHjZzmq7OPCb9QPgiRmQ==
   dependencies:
     "@codemirror/language" "^6.0.0"
     "@codemirror/state" "^6.4.0"
     "@codemirror/view" "^6.0.0"
     "@lezer/common" "^1.1.0"
 
-"@codemirror/lang-sql@^6.6.2":
-  version "6.6.2"
-  resolved "https://registry.npmjs.org/@codemirror/lang-sql/-/lang-sql-6.6.2.tgz#ad5bcbeb4552957a32267219985b00c583874a17"
-  integrity sha512-ZVt7AHflRDFVwxSq7nnj1pko9yR6wKFDtc6Ln7zUs8RX34v5sgVxy3d2lQfORhMPVblEJLaugn+sjwRmAFWNIg==
+"@codemirror/lang-sql@^6.6.3":
+  version "6.6.3"
+  resolved "https://registry.npmjs.org/@codemirror/lang-sql/-/lang-sql-6.6.3.tgz#627cb54c91e1df376f7be4f97e6922195a9d6537"
+  integrity sha512-fo5i3OD/7TmmqMtKycC4OaqfPsRxk0sKOb35g8cOtyUyyI2hfP2qXkDc7Asb6h7BiJK+MU/DYVPnQm6iNB5ZTw==
   dependencies:
     "@codemirror/autocomplete" "^6.0.0"
     "@codemirror/language" "^6.0.0"
@@ -1748,9 +1140,9 @@
     "@lezer/lr" "^1.0.0"
 
 "@codemirror/language@^6.0.0":
-  version "6.10.0"
-  resolved "https://registry.npmjs.org/@codemirror/language/-/language-6.10.0.tgz#2d0e818716825ee2ed0dacd04595eaa61bae8f23"
-  integrity sha512-2vaNn9aPGCRFKWcHPFksctzJ8yS5p7YoaT+jHpc0UGKzNuAIx4qy6R5wiqbP+heEEdyaABA582mNqSHzSoYdmg==
+  version "6.10.1"
+  resolved "https://registry.npmjs.org/@codemirror/language/-/language-6.10.1.tgz#428c932a158cb75942387acfe513c1ece1090b05"
+  integrity sha512-5GrXzrhq6k+gL5fjkAwt90nYDmjlzTIJV8THnxNFtNKWotMIlzzN+CpqxqwXOECnUdOndmSeWntVrVcv5axWRQ==
   dependencies:
     "@codemirror/state" "^6.0.0"
     "@codemirror/view" "^6.23.0"
@@ -1760,48 +1152,48 @@
     style-mod "^4.0.0"
 
 "@codemirror/lint@^6.0.0":
-  version "6.4.2"
-  resolved "https://registry.npmjs.org/@codemirror/lint/-/lint-6.4.2.tgz#c13be5320bde9707efdc94e8bcd3c698abae0b92"
-  integrity sha512-wzRkluWb1ptPKdzlsrbwwjYCPLgzU6N88YBAmlZi8WFyuiEduSd05MnJYNogzyc8rPK7pj6m95ptUApc8sHKVA==
+  version "6.5.0"
+  resolved "https://registry.npmjs.org/@codemirror/lint/-/lint-6.5.0.tgz#ea43b6e653dcc5bcd93456b55e9fe62e63f326d9"
+  integrity sha512-+5YyicIaaAZKU8K43IQi8TBy6mF6giGeWAH7N96Z5LC30Wm5JMjqxOYIE9mxwMG1NbhT2mA3l9hA4uuKUM3E5g==
   dependencies:
     "@codemirror/state" "^6.0.0"
     "@codemirror/view" "^6.0.0"
     crelt "^1.0.5"
 
 "@codemirror/search@^6.0.0":
-  version "6.5.5"
-  resolved "https://registry.npmjs.org/@codemirror/search/-/search-6.5.5.tgz#cf97e201da364da2285c2a250167af25bbd2a4a2"
-  integrity sha512-PIEN3Ke1buPod2EHbJsoQwlbpkz30qGZKcnmH1eihq9+bPQx8gelauUwLYaY4vBOuBAuEhmpDLii4rj/uO0yMA==
+  version "6.5.6"
+  resolved "https://registry.npmjs.org/@codemirror/search/-/search-6.5.6.tgz#8f858b9e678d675869112e475f082d1e8488db93"
+  integrity sha512-rpMgcsh7o0GuCDUXKPvww+muLA1pDJaFrpq/CCHtpQJYz8xopu4D1hPcKRoDD0YlF8gZaqTNIRa4VRBWyhyy7Q==
   dependencies:
     "@codemirror/state" "^6.0.0"
     "@codemirror/view" "^6.0.0"
     crelt "^1.0.5"
 
 "@codemirror/state@^6.0.0", "@codemirror/state@^6.4.0":
-  version "6.4.0"
-  resolved "https://registry.npmjs.org/@codemirror/state/-/state-6.4.0.tgz#8bc3e096c84360b34525a84696a84f86b305363a"
-  integrity sha512-hm8XshYj5Fo30Bb922QX9hXB/bxOAVH+qaqHBzw5TKa72vOeslyGwd4X8M0c1dJ9JqxlaMceOQ8RsL9tC7gU0A==
+  version "6.4.1"
+  resolved "https://registry.npmjs.org/@codemirror/state/-/state-6.4.1.tgz#da57143695c056d9a3c38705ed34136e2b68171b"
+  integrity sha512-QkEyUiLhsJoZkbumGZlswmAhA7CBU02Wrz7zvH4SrcifbsqwlXShVXg65f3v/ts57W3dqyamEriMhij1Z3Zz4A==
 
 "@codemirror/view@^6.0.0", "@codemirror/view@^6.17.0", "@codemirror/view@^6.23.0":
-  version "6.23.1"
-  resolved "https://registry.npmjs.org/@codemirror/view/-/view-6.23.1.tgz#1ce3039a588d6b93f153b7c4c035c2075ede34a6"
-  integrity sha512-J2Xnn5lFYT1ZN/5ewEoMBCmLlL71lZ3mBdb7cUEuHhX2ESoSrNEucpsDXpX22EuTGm9LOgC9v4Z0wx+Ez8QmGA==
+  version "6.26.3"
+  resolved "https://registry.npmjs.org/@codemirror/view/-/view-6.26.3.tgz#47aebd49a6ee3c8d36b82046d3bffe6056b8039f"
+  integrity sha512-gmqxkPALZjkgSxIeeweY/wGQXBfwTUaLs8h7OKtSwfbj9Ct3L11lD+u1sS7XHppxFQoMDiMDp07P9f3I2jWOHw==
   dependencies:
     "@codemirror/state" "^6.4.0"
     style-mod "^4.1.0"
     w3c-keyname "^2.2.4"
 
-"@date-io/core@1.x", "@date-io/core@^1.3.13", "@date-io/core@^1.3.6":
-  version "1.3.13"
-  resolved "https://registry.npmjs.org/@date-io/core/-/core-1.3.13.tgz#90c71da493f20204b7a972929cc5c482d078b3fa"
-  integrity sha512-AlEKV7TxjeK+jxWVKcCFrfYAk8spX9aCyiToFIiLPtfQbsjmRGLIhb5VZgptQcJdHtLXo7+m0DuurwFgUToQuA==
+"@date-io/core@^3.0.0":
+  version "3.0.0"
+  resolved "https://registry.npmjs.org/@date-io/core/-/core-3.0.0.tgz#9fd2375383b5791b7211dfce3e576211f9ddce5e"
+  integrity sha512-S3j+IAQVBYNkQzchVVhX40eBkGDreBpScy9RXwTS5j2+k07+62pMVPisQ44Gq76Rqy5AOG/EZXCwBpY/jbemvA==
 
-"@date-io/date-fns@1.x":
-  version "1.3.13"
-  resolved "https://registry.npmjs.org/@date-io/date-fns/-/date-fns-1.3.13.tgz#7798844041640ab393f7e21a7769a65d672f4735"
-  integrity sha512-yXxGzcRUPcogiMj58wVgFjc9qUYrCnnU9eLcyNbsQCmae4jPuZCDoIBR21j8ZURsM7GRtU62VOw5yNd4dDHunA==
+"@date-io/date-fns@3.x":
+  version "3.0.0"
+  resolved "https://registry.npmjs.org/@date-io/date-fns/-/date-fns-3.0.0.tgz#b082daa73ab9f1f8be55fe99a529653f69a7275b"
+  integrity sha512-hsLAbsdP8LKfi7OQ729cXMWfmHQEq0hn3ysXfAAoc92j6j6sBq0s0tplnkWu6O4iBUpVCYRPGuNjQQhTaOu2AA==
   dependencies:
-    "@date-io/core" "^1.3.13"
+    "@date-io/core" "^3.0.0"
 
 "@discoveryjs/json-ext@0.5.7", "@discoveryjs/json-ext@^0.5.0":
   version "0.5.7"
@@ -1867,7 +1259,7 @@
     "@emotion/utils" "0.11.3"
     babel-plugin-emotion "^10.0.27"
 
-"@emotion/hash@0.8.0", "@emotion/hash@^0.8.0":
+"@emotion/hash@0.8.0":
   version "0.8.0"
   resolved "https://registry.npmjs.org/@emotion/hash/-/hash-0.8.0.tgz#bbbff68978fefdbe68ccb533bc8cbe1d1afb5413"
   integrity sha512-kBJtf7PH6aWwZ6fka3zQ0p6SBYzx4fl1LoZXE2RrnYST9Xljm7WfKJrU4g/Xr3Beg72MLrp1AWNUmuYJTL7Cow==
@@ -1877,10 +1269,10 @@
   resolved "https://registry.npmjs.org/@emotion/hash/-/hash-0.9.1.tgz#4ffb0055f7ef676ebc3a5a91fb621393294e2f43"
   integrity sha512-gJB6HLm5rYwSLI6PQa+X1t5CFGrv1J1TWG+sOyMCeKz2ojaj6Fnl/rZEspogG+cvqbt4AE/2eIyD2QfLKTBNlQ==
 
-"@emotion/is-prop-valid@^1.1.0", "@emotion/is-prop-valid@^1.2.1":
-  version "1.2.1"
-  resolved "https://registry.npmjs.org/@emotion/is-prop-valid/-/is-prop-valid-1.2.1.tgz#23116cf1ed18bfeac910ec6436561ecb1a3885cc"
-  integrity sha512-61Mf7Ufx4aDxx1xlDeOm8aFFigGHE4z+0sKCa+IHCeZKiyP9RLD0Mmx7m8b9/Cf37f7NAvQOOJAbQQGVr5uERw==
+"@emotion/is-prop-valid@^1.1.0", "@emotion/is-prop-valid@^1.2.2":
+  version "1.2.2"
+  resolved "https://registry.npmjs.org/@emotion/is-prop-valid/-/is-prop-valid-1.2.2.tgz#d4175076679c6a26faa92b03bb786f9e52612337"
+  integrity sha512-uNsoYd37AFmaCdXlg6EYD1KaPOaRWRByMCYzbKUX4+hhMfrxdVSelShywL4JVaAeM/eHUOSprYBQls+/neX3pw==
   dependencies:
     "@emotion/memoize" "^0.8.1"
 
@@ -1899,15 +1291,15 @@
   resolved "https://registry.npmjs.org/@emotion/memoize/-/memoize-0.8.1.tgz#c1ddb040429c6d21d38cc945fe75c818cfb68e17"
   integrity sha512-W2P2c/VRW1/1tLox0mVUalvnWXxavmv/Oum2aPsRcoDJuob75FC3Y8FbpfLwUegRcxINtGUMPq0tFCvYNTBXNA==
 
-"@emotion/react@^11.1.5", "@emotion/react@^11.8.1":
-  version "11.11.1"
-  resolved "https://registry.npmjs.org/@emotion/react/-/react-11.11.1.tgz#b2c36afac95b184f73b08da8c214fdf861fa4157"
-  integrity sha512-5mlW1DquU5HaxjLkfkGN1GA/fvVGdyHURRiX/0FHl2cfIfRxSOfmxEH5YS43edp0OldZrZ+dkBKbngxcNCdZvA==
+"@emotion/react@^11.11.3", "@emotion/react@^11.8.1":
+  version "11.11.4"
+  resolved "https://registry.npmjs.org/@emotion/react/-/react-11.11.4.tgz#3a829cac25c1f00e126408fab7f891f00ecc3c1d"
+  integrity sha512-t8AjMlF0gHpvvxk5mAtCqR4vmxiGHCeJBaQO6gncUSdklELOgtwjerNY2yuJNfwnc6vi16U/+uMF+afIawJ9iw==
   dependencies:
     "@babel/runtime" "^7.18.3"
     "@emotion/babel-plugin" "^11.11.0"
     "@emotion/cache" "^11.11.0"
-    "@emotion/serialize" "^1.1.2"
+    "@emotion/serialize" "^1.1.3"
     "@emotion/use-insertion-effect-with-fallbacks" "^1.0.1"
     "@emotion/utils" "^1.2.1"
     "@emotion/weak-memoize" "^0.3.1"
@@ -1924,10 +1316,10 @@
     "@emotion/utils" "0.11.3"
     csstype "^2.5.7"
 
-"@emotion/serialize@^1.1.2":
-  version "1.1.2"
-  resolved "https://registry.npmjs.org/@emotion/serialize/-/serialize-1.1.2.tgz#017a6e4c9b8a803bd576ff3d52a0ea6fa5a62b51"
-  integrity sha512-zR6a/fkFP4EAcCMQtLOhIgpprZOwNmCldtpaISpvz348+DP4Mz8ZoKaGGCQpbzepNIUWbq4w6hNZkwDyKoS+HA==
+"@emotion/serialize@^1.1.2", "@emotion/serialize@^1.1.3", "@emotion/serialize@^1.1.4":
+  version "1.1.4"
+  resolved "https://registry.npmjs.org/@emotion/serialize/-/serialize-1.1.4.tgz#fc8f6d80c492cfa08801d544a05331d1cc7cd451"
+  integrity sha512-RIN04MBT8g+FnDwgvIUi8czvr1LU1alUMI05LekWB5DGyTm8cCBMCRpq3GqaiyEDRptEXOyXnvZ58GZYu4kBxQ==
   dependencies:
     "@emotion/hash" "^0.9.1"
     "@emotion/memoize" "^0.8.1"
@@ -1946,14 +1338,14 @@
   integrity sha512-0QBtGvaqtWi+nx6doRwDdBIzhNdZrXUppvTM4dtZZWEGTXL/XE/yJxLMGlDT1Gt+UHH5IX1n+jkXyytE/av7OA==
 
 "@emotion/styled@^11.11.0":
-  version "11.11.0"
-  resolved "https://registry.npmjs.org/@emotion/styled/-/styled-11.11.0.tgz#26b75e1b5a1b7a629d7c0a8b708fbf5a9cdce346"
-  integrity sha512-hM5Nnvu9P3midq5aaXj4I+lnSfNi7Pmd4EWk1fOZ3pxookaQTNew6bp4JaCBYM4HVFZF9g7UjJmsUmC2JlxOng==
+  version "11.11.5"
+  resolved "https://registry.npmjs.org/@emotion/styled/-/styled-11.11.5.tgz#0c5c8febef9d86e8a926e663b2e5488705545dfb"
+  integrity sha512-/ZjjnaNKvuMPxcIiUkf/9SHoG4Q196DRl1w82hQ3WCsjo1IUR8uaGWrC6a87CrYAW0Kb/pK7hk8BnLgLRi9KoQ==
   dependencies:
     "@babel/runtime" "^7.18.3"
     "@emotion/babel-plugin" "^11.11.0"
-    "@emotion/is-prop-valid" "^1.2.1"
-    "@emotion/serialize" "^1.1.2"
+    "@emotion/is-prop-valid" "^1.2.2"
+    "@emotion/serialize" "^1.1.4"
     "@emotion/use-insertion-effect-with-fallbacks" "^1.0.1"
     "@emotion/utils" "^1.2.1"
 
@@ -2004,19 +1396,19 @@
   dependencies:
     eslint-visitor-keys "^3.3.0"
 
-"@eslint-community/regexpp@^4.4.0":
-  version "4.5.1"
-  resolved "https://registry.npmjs.org/@eslint-community/regexpp/-/regexpp-4.5.1.tgz#cdd35dce4fa1a89a4fd42b1599eb35b3af408884"
-  integrity sha512-Z5ba73P98O1KUYCCJTUeVpja9RcGoMdncZ6T49FCUl2lN38JtCJ+3WgIDBv0AuY4WChU5PmtJmOCTlN6FZTFKQ==
+"@eslint-community/regexpp@^4.4.0", "@eslint-community/regexpp@^4.6.1":
+  version "4.10.0"
+  resolved "https://registry.npmjs.org/@eslint-community/regexpp/-/regexpp-4.10.0.tgz#548f6de556857c8bb73bbee70c35dc82a2e74d63"
+  integrity sha512-Cu96Sd2By9mCNTx2iyKOmq10v22jUVQv0lQnlGNy16oE9589yE+QADPbrMGCkA51cKZSg3Pu/aTJVTGfL/qjUA==
 
-"@eslint/eslintrc@^2.0.3":
-  version "2.0.3"
-  resolved "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-2.0.3.tgz#4910db5505f4d503f27774bf356e3704818a0331"
-  integrity sha512-+5gy6OQfk+xx3q0d6jGZZC3f3KzAkXc/IanVxd1is/VIIziRqqt3ongQz0FiTUXqTk0c7aDB3OaFuKnuSoJicQ==
+"@eslint/eslintrc@^2.1.4":
+  version "2.1.4"
+  resolved "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-2.1.4.tgz#388a269f0f25c1b6adc317b5a2c55714894c70ad"
+  integrity sha512-269Z39MS6wVJtsoUl10L60WdkhJVdPG24Q4eZTH3nnF6lpvSShEK3wQjDX9JRWAUPvPh7COouPpU9IrqaZFvtQ==
   dependencies:
     ajv "^6.12.4"
     debug "^4.3.2"
-    espree "^9.5.2"
+    espree "^9.6.0"
     globals "^13.19.0"
     ignore "^5.2.0"
     import-fresh "^3.2.1"
@@ -2024,35 +1416,55 @@
     minimatch "^3.1.2"
     strip-json-comments "^3.1.1"
 
-"@eslint/js@8.43.0":
-  version "8.43.0"
-  resolved "https://registry.npmjs.org/@eslint/js/-/js-8.43.0.tgz#559ca3d9ddbd6bf907ad524320a0d14b85586af0"
-  integrity sha512-s2UHCoiXfxMvmfzqoN+vrQ84ahUSYde9qNO1MdxmoEhyHWsfmwOpFlwYV+ePJEVc7gFnATGUi376WowX1N7tFg==
+"@eslint/js@8.57.0":
+  version "8.57.0"
+  resolved "https://registry.npmjs.org/@eslint/js/-/js-8.57.0.tgz#a5417ae8427873f1dd08b70b3574b453e67b5f7f"
+  integrity sha512-Ys+3g2TaW7gADOJzPt83SJtCDhMjndcDMFVQ/Tj9iA1BfJzFKD9mAUXT3OenpuPHbI6P/myECxRJrofUsDx/5g==
 
-"@floating-ui/core@^1.3.1":
-  version "1.3.1"
-  resolved "https://registry.npmjs.org/@floating-ui/core/-/core-1.3.1.tgz#4d795b649cc3b1cbb760d191c80dcb4353c9a366"
-  integrity sha512-Bu+AMaXNjrpjh41znzHqaz3r2Nr8hHuHZT6V2LBKMhyMl0FgKA62PNYbqnfgmzOhoWZj70Zecisbo4H1rotP5g==
+"@floating-ui/core@^1.0.0":
+  version "1.6.0"
+  resolved "https://registry.npmjs.org/@floating-ui/core/-/core-1.6.0.tgz#fa41b87812a16bf123122bf945946bae3fdf7fc1"
+  integrity sha512-PcF++MykgmTj3CIyOQbKA/hDzOAiqI3mhuoN44WRCopIs1sgoDoU4oty4Jtqaj/y3oDU6fnVSm4QG0a3t5i0+g==
+  dependencies:
+    "@floating-ui/utils" "^0.2.1"
 
-"@floating-ui/dom@^1.0.1":
-  version "1.4.2"
-  resolved "https://registry.npmjs.org/@floating-ui/dom/-/dom-1.4.2.tgz#eb3a37f7506c4f95ef735967dc3496b5012e11cb"
-  integrity sha512-VKmvHVatWnewmGGy+7Mdy4cTJX71Pli6v/Wjb5RQBuq5wjUYx+Ef+kRThi8qggZqDgD8CogCpqhRoVp3+yQk+g==
+"@floating-ui/dom@^1.0.1", "@floating-ui/dom@^1.6.1":
+  version "1.6.3"
+  resolved "https://registry.npmjs.org/@floating-ui/dom/-/dom-1.6.3.tgz#954e46c1dd3ad48e49db9ada7218b0985cee75ef"
+  integrity sha512-RnDthu3mzPlQ31Ss/BTwQ1zjzIhr3lk1gZB1OC56h/1vEtaXkESrOqL5fQVMfXpwGtRwX+YsZBdyHtJMQnkArw==
+  dependencies:
+    "@floating-ui/core" "^1.0.0"
+    "@floating-ui/utils" "^0.2.0"
+
+"@floating-ui/react-dom@^2.0.8":
+  version "2.0.8"
+  resolved "https://registry.npmjs.org/@floating-ui/react-dom/-/react-dom-2.0.8.tgz#afc24f9756d1b433e1fe0d047c24bd4d9cefaa5d"
+  integrity sha512-HOdqOt3R3OGeTKidaLvJKcgg75S6tibQ3Tif4eyd91QnIJWr0NLvoXFpJA/j8HqkFSL68GDca9AuyWEHlhyClw==
   dependencies:
-    "@floating-ui/core" "^1.3.1"
+    "@floating-ui/dom" "^1.6.1"
+
+"@floating-ui/utils@^0.2.0", "@floating-ui/utils@^0.2.1":
+  version "0.2.1"
+  resolved "https://registry.npmjs.org/@floating-ui/utils/-/utils-0.2.1.tgz#16308cea045f0fc777b6ff20a9f25474dd8293d2"
+  integrity sha512-9TANp6GPoMtYzQdt54kfAyMmz1+osLlXdg2ENroU7zzrtflTLrrC/lgrIfaSe+Wu0b89GKccT7vxXA0MoAIO+Q==
 
 "@fortawesome/fontawesome-free@latest":
-  version "6.4.2"
-  resolved "https://registry.npmjs.org/@fortawesome/fontawesome-free/-/fontawesome-free-6.4.2.tgz#36b6a9cb5ffbecdf89815c94d0c0ffa489ac5ecb"
-  integrity sha512-m5cPn3e2+FDCOgi1mz0RexTUvvQibBebOUlUlW0+YrMjDTPkiJ6VTKukA1GRsvRw+12KyJndNjj0O4AgTxm2Pg==
+  version "6.5.2"
+  resolved "https://registry.npmjs.org/@fortawesome/fontawesome-free/-/fontawesome-free-6.5.2.tgz#310fe90cb5a8dee9698833171b98e7835404293d"
+  integrity sha512-hRILoInAx8GNT5IMkrtIt9blOdrqHOnPBH+k70aWUAqPZPgopb9G5EQJFpaBx/S8zp2fC+mPW349Bziuk1o28Q==
 
-"@humanwhocodes/config-array@^0.11.10":
-  version "0.11.10"
-  resolved "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.11.10.tgz#5a3ffe32cc9306365fb3fd572596cd602d5e12d2"
-  integrity sha512-KVVjQmNUepDVGXNuoRRdmmEjruj0KfiGSbS8LVc12LMsWDQzRXJ0qdhN8L8uUigKpfEHRhlaQFY0ib1tnUbNeQ==
+"@gar/promisify@^1.1.3":
+  version "1.1.3"
+  resolved "https://registry.npmjs.org/@gar/promisify/-/promisify-1.1.3.tgz#555193ab2e3bb3b6adc3d551c9c030d9e860daf6"
+  integrity sha512-k2Ty1JcVojjJFwrg/ThKi2ujJ7XNLYaFGNB/bWT9wGR+oSMJHMa5w+CUq6p/pVrKeNNgA7pCqEcjSnHVoqJQFw==
+
+"@humanwhocodes/config-array@^0.11.14":
+  version "0.11.14"
+  resolved "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.11.14.tgz#d78e481a039f7566ecc9660b4ea7fe6b1fec442b"
+  integrity sha512-3T8LkOmg45BV5FICb15QQMsyUSWrQ8AygVfC7ZG32zOalnqrilm018ZVCw0eapXux8FtA33q8PSRSstjee3jSg==
   dependencies:
-    "@humanwhocodes/object-schema" "^1.2.1"
-    debug "^4.1.1"
+    "@humanwhocodes/object-schema" "^2.0.2"
+    debug "^4.3.1"
     minimatch "^3.0.5"
 
 "@humanwhocodes/module-importer@^1.0.1":
@@ -2060,10 +1472,10 @@
   resolved "https://registry.npmjs.org/@humanwhocodes/module-importer/-/module-importer-1.0.1.tgz#af5b2691a22b44be847b0ca81641c5fb6ad0172c"
   integrity sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA==
 
-"@humanwhocodes/object-schema@^1.2.1":
-  version "1.2.1"
-  resolved "https://registry.npmjs.org/@humanwhocodes/object-schema/-/object-schema-1.2.1.tgz#b520529ec21d8e5945a1851dfd1c32e94e39ff45"
-  integrity sha512-ZnQMnLV4e7hDlUvw8H+U8ASL02SS2Gn6+9Ac3wGGLIe7+je2AeAOxPY+izIPJDfFDb7eDjev0Us8MO1iFRN8hA==
+"@humanwhocodes/object-schema@^2.0.2":
+  version "2.0.3"
+  resolved "https://registry.npmjs.org/@humanwhocodes/object-schema/-/object-schema-2.0.3.tgz#4a2868d75d6d6963e423bcf90b7fd1be343409d3"
+  integrity sha512-93zYdMES/c1D69yZiKDBj0V24vqNzB/koF26KPaagAfd3P/4gUlh3Dys5ogAK+Exi9QyzlD8x/08Zt7wIKcDcA==
 
 "@isaacs/cliui@^8.0.2":
   version "8.0.2"
@@ -2088,32 +1500,32 @@
     js-yaml "^3.13.1"
     resolve-from "^5.0.0"
 
-"@istanbuljs/schema@^0.1.2":
+"@istanbuljs/schema@^0.1.2", "@istanbuljs/schema@^0.1.3":
   version "0.1.3"
   resolved "https://registry.npmjs.org/@istanbuljs/schema/-/schema-0.1.3.tgz#e45e384e4b8ec16bce2fd903af78450f6bf7ec98"
   integrity sha512-ZXRY4jNvVgSVQ8DL3LTcakaAtXwTVUxE81hslsyD2AtoXW/wVob10HkOJ1X/pAlcI7D+2YoZKg5do8G/w6RYgA==
 
-"@jest/console@^29.6.4":
-  version "29.6.4"
-  resolved "https://registry.npmjs.org/@jest/console/-/console-29.6.4.tgz#a7e2d84516301f986bba0dd55af9d5fe37f46527"
-  integrity sha512-wNK6gC0Ha9QeEPSkeJedQuTQqxZYnDPuDcDhVuVatRvMkL4D0VTvFVZj+Yuh6caG2aOfzkUZ36KtCmLNtR02hw==
+"@jest/console@^29.7.0":
+  version "29.7.0"
+  resolved "https://registry.npmjs.org/@jest/console/-/console-29.7.0.tgz#cd4822dbdb84529265c5a2bdb529a3c9cc950ffc"
+  integrity sha512-5Ni4CU7XHQi32IJ398EEP4RrB8eV09sXP2ROqD4bksHrnTree52PsxvX8tpL8LvTZ3pFzXyPbNQReSN41CAhOg==
   dependencies:
     "@jest/types" "^29.6.3"
     "@types/node" "*"
     chalk "^4.0.0"
-    jest-message-util "^29.6.3"
-    jest-util "^29.6.3"
+    jest-message-util "^29.7.0"
+    jest-util "^29.7.0"
     slash "^3.0.0"
 
-"@jest/core@^29.6.4":
-  version "29.6.4"
-  resolved "https://registry.npmjs.org/@jest/core/-/core-29.6.4.tgz#265ebee05ec1ff3567757e7a327155c8d6bdb126"
-  integrity sha512-U/vq5ccNTSVgYH7mHnodHmCffGWHJnz/E1BEWlLuK5pM4FZmGfBn/nrJGLjUsSmyx3otCeqc1T31F4y08AMDLg==
+"@jest/core@^29.7.0":
+  version "29.7.0"
+  resolved "https://registry.npmjs.org/@jest/core/-/core-29.7.0.tgz#b6cccc239f30ff36609658c5a5e2291757ce448f"
+  integrity sha512-n7aeXWKMnGtDA48y8TLWJPJmLmmZ642Ceo78cYWEpiD7FzDgmNDV/GCVRorPABdXLJZ/9wzzgZAlHjXjxDHGsg==
   dependencies:
-    "@jest/console" "^29.6.4"
-    "@jest/reporters" "^29.6.4"
-    "@jest/test-result" "^29.6.4"
-    "@jest/transform" "^29.6.4"
+    "@jest/console" "^29.7.0"
+    "@jest/reporters" "^29.7.0"
+    "@jest/test-result" "^29.7.0"
+    "@jest/transform" "^29.7.0"
     "@jest/types" "^29.6.3"
     "@types/node" "*"
     ansi-escapes "^4.2.1"
@@ -2121,80 +1533,80 @@
     ci-info "^3.2.0"
     exit "^0.1.2"
     graceful-fs "^4.2.9"
-    jest-changed-files "^29.6.3"
-    jest-config "^29.6.4"
-    jest-haste-map "^29.6.4"
-    jest-message-util "^29.6.3"
+    jest-changed-files "^29.7.0"
+    jest-config "^29.7.0"
+    jest-haste-map "^29.7.0"
+    jest-message-util "^29.7.0"
     jest-regex-util "^29.6.3"
-    jest-resolve "^29.6.4"
-    jest-resolve-dependencies "^29.6.4"
-    jest-runner "^29.6.4"
-    jest-runtime "^29.6.4"
-    jest-snapshot "^29.6.4"
-    jest-util "^29.6.3"
-    jest-validate "^29.6.3"
-    jest-watcher "^29.6.4"
+    jest-resolve "^29.7.0"
+    jest-resolve-dependencies "^29.7.0"
+    jest-runner "^29.7.0"
+    jest-runtime "^29.7.0"
+    jest-snapshot "^29.7.0"
+    jest-util "^29.7.0"
+    jest-validate "^29.7.0"
+    jest-watcher "^29.7.0"
     micromatch "^4.0.4"
-    pretty-format "^29.6.3"
+    pretty-format "^29.7.0"
     slash "^3.0.0"
     strip-ansi "^6.0.0"
 
-"@jest/environment@^29.6.4":
-  version "29.6.4"
-  resolved "https://registry.npmjs.org/@jest/environment/-/environment-29.6.4.tgz#78ec2c9f8c8829a37616934ff4fea0c028c79f4f"
-  integrity sha512-sQ0SULEjA1XUTHmkBRl7A1dyITM9yb1yb3ZNKPX3KlTd6IG7mWUe3e2yfExtC2Zz1Q+mMckOLHmL/qLiuQJrBQ==
+"@jest/environment@^29.7.0":
+  version "29.7.0"
+  resolved "https://registry.npmjs.org/@jest/environment/-/environment-29.7.0.tgz#24d61f54ff1f786f3cd4073b4b94416383baf2a7"
+  integrity sha512-aQIfHDq33ExsN4jP1NWGXhxgQ/wixs60gDiKO+XVMd8Mn0NWPWgc34ZQDTb2jKaUWQ7MuwoitXAsN2XVXNMpAw==
   dependencies:
-    "@jest/fake-timers" "^29.6.4"
+    "@jest/fake-timers" "^29.7.0"
     "@jest/types" "^29.6.3"
     "@types/node" "*"
-    jest-mock "^29.6.3"
+    jest-mock "^29.7.0"
 
-"@jest/expect-utils@^29.6.4":
-  version "29.6.4"
-  resolved "https://registry.npmjs.org/@jest/expect-utils/-/expect-utils-29.6.4.tgz#17c7dfe6cec106441f218b0aff4b295f98346679"
-  integrity sha512-FEhkJhqtvBwgSpiTrocquJCdXPsyvNKcl/n7A3u7X4pVoF4bswm11c9d4AV+kfq2Gpv/mM8x7E7DsRvH+djkrg==
+"@jest/expect-utils@^29.7.0":
+  version "29.7.0"
+  resolved "https://registry.npmjs.org/@jest/expect-utils/-/expect-utils-29.7.0.tgz#023efe5d26a8a70f21677d0a1afc0f0a44e3a1c6"
+  integrity sha512-GlsNBWiFQFCVi9QVSx7f5AgMeLxe9YCCs5PuP2O2LdjDAA8Jh9eX7lA1Jq/xdXw3Wb3hyvlFNfZIfcRetSzYcA==
   dependencies:
     jest-get-type "^29.6.3"
 
-"@jest/expect@^29.6.4":
-  version "29.6.4"
-  resolved "https://registry.npmjs.org/@jest/expect/-/expect-29.6.4.tgz#1d6ae17dc68d906776198389427ab7ce6179dba6"
-  integrity sha512-Warhsa7d23+3X5bLbrbYvaehcgX5TLYhI03JKoedTiI8uJU4IhqYBWF7OSSgUyz4IgLpUYPkK0AehA5/fRclAA==
+"@jest/expect@^29.7.0":
+  version "29.7.0"
+  resolved "https://registry.npmjs.org/@jest/expect/-/expect-29.7.0.tgz#76a3edb0cb753b70dfbfe23283510d3d45432bf2"
+  integrity sha512-8uMeAMycttpva3P1lBHB8VciS9V0XAr3GymPpipdyQXbBcuhkLQOSe8E/p92RyAdToS6ZD1tFkX+CkhoECE0dQ==
   dependencies:
-    expect "^29.6.4"
-    jest-snapshot "^29.6.4"
+    expect "^29.7.0"
+    jest-snapshot "^29.7.0"
 
-"@jest/fake-timers@^29.6.4":
-  version "29.6.4"
-  resolved "https://registry.npmjs.org/@jest/fake-timers/-/fake-timers-29.6.4.tgz#45a27f093c43d5d989362a3e7a8c70c83188b4f6"
-  integrity sha512-6UkCwzoBK60edXIIWb0/KWkuj7R7Qq91vVInOe3De6DSpaEiqjKcJw4F7XUet24Wupahj9J6PlR09JqJ5ySDHw==
+"@jest/fake-timers@^29.7.0":
+  version "29.7.0"
+  resolved "https://registry.npmjs.org/@jest/fake-timers/-/fake-timers-29.7.0.tgz#fd91bf1fffb16d7d0d24a426ab1a47a49881a565"
+  integrity sha512-q4DH1Ha4TTFPdxLsqDXK1d3+ioSL7yL5oCMJZgDYm6i+6CygW5E5xVr/D1HdsGxjt1ZWSfUAs9OxSB/BNelWrQ==
   dependencies:
     "@jest/types" "^29.6.3"
     "@sinonjs/fake-timers" "^10.0.2"
     "@types/node" "*"
-    jest-message-util "^29.6.3"
-    jest-mock "^29.6.3"
-    jest-util "^29.6.3"
+    jest-message-util "^29.7.0"
+    jest-mock "^29.7.0"
+    jest-util "^29.7.0"
 
-"@jest/globals@^29.6.4":
-  version "29.6.4"
-  resolved "https://registry.npmjs.org/@jest/globals/-/globals-29.6.4.tgz#4f04f58731b062b44ef23036b79bdb31f40c7f63"
-  integrity sha512-wVIn5bdtjlChhXAzVXavcY/3PEjf4VqM174BM3eGL5kMxLiZD5CLnbmkEyA1Dwh9q8XjP6E8RwjBsY/iCWrWsA==
+"@jest/globals@^29.7.0":
+  version "29.7.0"
+  resolved "https://registry.npmjs.org/@jest/globals/-/globals-29.7.0.tgz#8d9290f9ec47ff772607fa864ca1d5a2efae1d4d"
+  integrity sha512-mpiz3dutLbkW2MNFubUGUEVLkTGiqW6yLVTA+JbP6fI6J5iL9Y0Nlg8k95pcF8ctKwCS7WVxteBs29hhfAotzQ==
   dependencies:
-    "@jest/environment" "^29.6.4"
-    "@jest/expect" "^29.6.4"
+    "@jest/environment" "^29.7.0"
+    "@jest/expect" "^29.7.0"
     "@jest/types" "^29.6.3"
-    jest-mock "^29.6.3"
+    jest-mock "^29.7.0"
 
-"@jest/reporters@^29.6.4":
-  version "29.6.4"
-  resolved "https://registry.npmjs.org/@jest/reporters/-/reporters-29.6.4.tgz#9d6350c8a2761ece91f7946e97ab0dabc06deab7"
-  integrity sha512-sxUjWxm7QdchdrD3NfWKrL8FBsortZeibSJv4XLjESOOjSUOkjQcb0ZHJwfhEGIvBvTluTzfG2yZWZhkrXJu8g==
+"@jest/reporters@^29.7.0":
+  version "29.7.0"
+  resolved "https://registry.npmjs.org/@jest/reporters/-/reporters-29.7.0.tgz#04b262ecb3b8faa83b0b3d321623972393e8f4c7"
+  integrity sha512-DApq0KJbJOEzAFYjHADNNxAE3KbhxQB1y5Kplb5Waqw6zVbuWatSnMjE5gs8FUgEPmNsnZA3NCWl9NG0ia04Pg==
   dependencies:
     "@bcoe/v8-coverage" "^0.2.3"
-    "@jest/console" "^29.6.4"
-    "@jest/test-result" "^29.6.4"
-    "@jest/transform" "^29.6.4"
+    "@jest/console" "^29.7.0"
+    "@jest/test-result" "^29.7.0"
+    "@jest/transform" "^29.7.0"
     "@jest/types" "^29.6.3"
     "@jridgewell/trace-mapping" "^0.3.18"
     "@types/node" "*"
@@ -2208,21 +1620,14 @@
     istanbul-lib-report "^3.0.0"
     istanbul-lib-source-maps "^4.0.0"
     istanbul-reports "^3.1.3"
-    jest-message-util "^29.6.3"
-    jest-util "^29.6.3"
-    jest-worker "^29.6.4"
+    jest-message-util "^29.7.0"
+    jest-util "^29.7.0"
+    jest-worker "^29.7.0"
     slash "^3.0.0"
     string-length "^4.0.1"
     strip-ansi "^6.0.0"
     v8-to-istanbul "^9.0.1"
 
-"@jest/schemas@^29.4.3":
-  version "29.4.3"
-  resolved "https://registry.npmjs.org/@jest/schemas/-/schemas-29.4.3.tgz#39cf1b8469afc40b6f5a2baaa146e332c4151788"
-  integrity sha512-VLYKXQmtmuEz6IxJsrZwzG9NvtkQsWNnWMsKxqWNu3+CnfzJQhp0WDDKWLVV9hLKr0l3SLLFRqcYHjhtyuDVxg==
-  dependencies:
-    "@sinclair/typebox" "^0.25.16"
-
 "@jest/schemas@^29.6.3":
   version "29.6.3"
   resolved "https://registry.npmjs.org/@jest/schemas/-/schemas-29.6.3.tgz#430b5ce8a4e0044a7e3819663305a7b3091c8e03"
@@ -2239,30 +1644,30 @@
     callsites "^3.0.0"
     graceful-fs "^4.2.9"
 
-"@jest/test-result@^29.6.4":
-  version "29.6.4"
-  resolved "https://registry.npmjs.org/@jest/test-result/-/test-result-29.6.4.tgz#adf5c79f6e1fb7405ad13d67d9e2b6ff54b54c6b"
-  integrity sha512-uQ1C0AUEN90/dsyEirgMLlouROgSY+Wc/JanVVk0OiUKa5UFh7sJpMEM3aoUBAz2BRNvUJ8j3d294WFuRxSyOQ==
+"@jest/test-result@^29.7.0":
+  version "29.7.0"
+  resolved "https://registry.npmjs.org/@jest/test-result/-/test-result-29.7.0.tgz#8db9a80aa1a097bb2262572686734baed9b1657c"
+  integrity sha512-Fdx+tv6x1zlkJPcWXmMDAG2HBnaR9XPSd5aDWQVsfrZmLVT3lU1cwyxLgRmXR9yrq4NBoEm9BMsfgFzTQAbJYA==
   dependencies:
-    "@jest/console" "^29.6.4"
+    "@jest/console" "^29.7.0"
     "@jest/types" "^29.6.3"
     "@types/istanbul-lib-coverage" "^2.0.0"
     collect-v8-coverage "^1.0.0"
 
-"@jest/test-sequencer@^29.6.4":
-  version "29.6.4"
-  resolved "https://registry.npmjs.org/@jest/test-sequencer/-/test-sequencer-29.6.4.tgz#86aef66aaa22b181307ed06c26c82802fb836d7b"
-  integrity sha512-E84M6LbpcRq3fT4ckfKs9ryVanwkaIB0Ws9bw3/yP4seRLg/VaCZ/LgW0MCq5wwk4/iP/qnilD41aj2fsw2RMg==
+"@jest/test-sequencer@^29.7.0":
+  version "29.7.0"
+  resolved "https://registry.npmjs.org/@jest/test-sequencer/-/test-sequencer-29.7.0.tgz#6cef977ce1d39834a3aea887a1726628a6f072ce"
+  integrity sha512-GQwJ5WZVrKnOJuiYiAF52UNUJXgTZx1NHjFSEB0qEMmSZKAkdMoIzw/Cj6x6NF4AvV23AUqDpFzQkN/eYCYTxw==
   dependencies:
-    "@jest/test-result" "^29.6.4"
+    "@jest/test-result" "^29.7.0"
     graceful-fs "^4.2.9"
-    jest-haste-map "^29.6.4"
+    jest-haste-map "^29.7.0"
     slash "^3.0.0"
 
-"@jest/transform@^29.6.4":
-  version "29.6.4"
-  resolved "https://registry.npmjs.org/@jest/transform/-/transform-29.6.4.tgz#a6bc799ef597c5d85b2e65a11fd96b6b239bab5a"
-  integrity sha512-8thgRSiXUqtr/pPGY/OsyHuMjGyhVnWrFAwoxmIemlBuiMyU1WFs0tXoNxzcr4A4uErs/ABre76SGmrr5ab/AA==
+"@jest/transform@^29.7.0":
+  version "29.7.0"
+  resolved "https://registry.npmjs.org/@jest/transform/-/transform-29.7.0.tgz#df2dd9c346c7d7768b8a06639994640c642e284c"
+  integrity sha512-ok/BTPFzFKVMwO5eOHRrvnBVHdRy9IrsrW1GpMaQ9MCnilNLXQKmAX8s1YXDFaai9xJpac2ySzV0YeRRECr2Vw==
   dependencies:
     "@babel/core" "^7.11.6"
     "@jest/types" "^29.6.3"
@@ -2272,26 +1677,14 @@
     convert-source-map "^2.0.0"
     fast-json-stable-stringify "^2.1.0"
     graceful-fs "^4.2.9"
-    jest-haste-map "^29.6.4"
+    jest-haste-map "^29.7.0"
     jest-regex-util "^29.6.3"
-    jest-util "^29.6.3"
+    jest-util "^29.7.0"
     micromatch "^4.0.4"
     pirates "^4.0.4"
     slash "^3.0.0"
     write-file-atomic "^4.0.2"
 
-"@jest/types@^29.5.0":
-  version "29.5.0"
-  resolved "https://registry.npmjs.org/@jest/types/-/types-29.5.0.tgz#f59ef9b031ced83047c67032700d8c807d6e1593"
-  integrity sha512-qbu7kN6czmVRc3xWFQcAN03RAUamgppVUdXrvl1Wr3jlNF93o9mJbGcDWrwGB6ht44u7efB1qCFgVQmca24Uog==
-  dependencies:
-    "@jest/schemas" "^29.4.3"
-    "@types/istanbul-lib-coverage" "^2.0.0"
-    "@types/istanbul-reports" "^3.0.0"
-    "@types/node" "*"
-    "@types/yargs" "^17.0.8"
-    chalk "^4.0.0"
-
 "@jest/types@^29.6.3":
   version "29.6.3"
   resolved "https://registry.npmjs.org/@jest/types/-/types-29.6.3.tgz#1131f8cf634e7e84c5e77bab12f052af585fba59"
@@ -2304,64 +1697,46 @@
     "@types/yargs" "^17.0.8"
     chalk "^4.0.0"
 
-"@jridgewell/gen-mapping@^0.3.0", "@jridgewell/gen-mapping@^0.3.2":
-  version "0.3.3"
-  resolved "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.3.tgz#7e02e6eb5df901aaedb08514203b096614024098"
-  integrity sha512-HLhSWOLRi875zjjMG/r+Nv0oCW8umGb0BgEhyX3dDX3egwZtB8PqLnjz3yedt8R5StBrzcg4aBpnh8UA9D1BoQ==
+"@jridgewell/gen-mapping@^0.3.5":
+  version "0.3.5"
+  resolved "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.5.tgz#dcce6aff74bdf6dad1a95802b69b04a2fcb1fb36"
+  integrity sha512-IzL8ZoEDIBRWEzlCcRhOaCupYyN5gdIK+Q6fbFdPDg6HqX6jpkItn7DFIpW9LQzXG6Df9sA7+OKnq0qlz/GaQg==
   dependencies:
-    "@jridgewell/set-array" "^1.0.1"
+    "@jridgewell/set-array" "^1.2.1"
     "@jridgewell/sourcemap-codec" "^1.4.10"
-    "@jridgewell/trace-mapping" "^0.3.9"
-
-"@jridgewell/resolve-uri@3.1.0":
-  version "3.1.0"
-  resolved "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.0.tgz#2203b118c157721addfe69d47b70465463066d78"
-  integrity sha512-F2msla3tad+Mfht5cJq7LSXcdudKTWCVYUgw6pLFOOHSTtZlj6SWNYAp+AhuqLmWdBO2X5hPrLcu8cVP8fy28w==
+    "@jridgewell/trace-mapping" "^0.3.24"
 
 "@jridgewell/resolve-uri@^3.1.0":
-  version "3.1.1"
-  resolved "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.1.tgz#c08679063f279615a3326583ba3a90d1d82cc721"
-  integrity sha512-dSYZh7HhCDtCKm4QakX0xFpsRDqjjtZf/kjI/v3T3Nwt5r8/qz/M19F9ySyOqU94SXBmeG9ttTul+YnR4LOxFA==
+  version "3.1.2"
+  resolved "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.2.tgz#7a0ee601f60f99a20c7c7c5ff0c80388c1189bd6"
+  integrity sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw==
 
-"@jridgewell/set-array@^1.0.1":
-  version "1.1.2"
-  resolved "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.1.2.tgz#7c6cf998d6d20b914c0a55a91ae928ff25965e72"
-  integrity sha512-xnkseuNADM0gt2bs+BvhO0p78Mk762YnZdsuzFV018NoG1Sj1SCQvpSqa7XUaTam5vAGasABV9qXASMKnFMwMw==
+"@jridgewell/set-array@^1.2.1":
+  version "1.2.1"
+  resolved "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.2.1.tgz#558fb6472ed16a4c850b889530e6b36438c49280"
+  integrity sha512-R8gLRTZeyp03ymzP/6Lil/28tGeGEzhx1q2k703KGWRAI1VdvPIXdG70VJc2pAMw3NA6JKL5hhFu1sJX0Mnn/A==
 
 "@jridgewell/source-map@^0.3.3":
-  version "0.3.3"
-  resolved "https://registry.npmjs.org/@jridgewell/source-map/-/source-map-0.3.3.tgz#8108265659d4c33e72ffe14e33d6cc5eb59f2fda"
-  integrity sha512-b+fsZXeLYi9fEULmfBrhxn4IrPlINf8fiNarzTof004v3lFdntdwa9PF7vFJqm3mg7s+ScJMxXaE3Acp1irZcg==
+  version "0.3.6"
+  resolved "https://registry.npmjs.org/@jridgewell/source-map/-/source-map-0.3.6.tgz#9d71ca886e32502eb9362c9a74a46787c36df81a"
+  integrity sha512-1ZJTZebgqllO79ue2bm3rIGud/bOe0pP5BjSRCRxxYkEZS8STV7zN84UBbiYu7jy+eCKSnVIUgoWWE/tt+shMQ==
   dependencies:
-    "@jridgewell/gen-mapping" "^0.3.0"
-    "@jridgewell/trace-mapping" "^0.3.9"
-
-"@jridgewell/sourcemap-codec@1.4.14":
-  version "1.4.14"
-  resolved "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.14.tgz#add4c98d341472a289190b424efbdb096991bb24"
-  integrity sha512-XPSJHWmi394fuUuzDnGz1wiKqWfo1yXecHQMRf2l6hztTO+nPru658AyDngaBe7isIxEkRsPR3FZh+s7iVa4Uw==
+    "@jridgewell/gen-mapping" "^0.3.5"
+    "@jridgewell/trace-mapping" "^0.3.25"
 
 "@jridgewell/sourcemap-codec@^1.4.10", "@jridgewell/sourcemap-codec@^1.4.14":
   version "1.4.15"
   resolved "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.15.tgz#d7c6e6755c78567a951e04ab52ef0fd26de59f32"
   integrity sha512-eF2rxCRulEKXHTRiDrDy6erMYWqNw4LPdQ8UQA4huuxaQsVeRPFl2oM8oDGxMFhJUWZf9McpLtJasDDZb/Bpeg==
 
-"@jridgewell/trace-mapping@^0.3.12":
-  version "0.3.19"
-  resolved "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.19.tgz#f8a3249862f91be48d3127c3cfe992f79b4b8811"
-  integrity sha512-kf37QtfW+Hwx/buWGMPcR60iF9ziHa6r/CZJIHbmcm4+0qrXiVdxegAH0F6yddEVQ7zdkjcGCgCzUu+BcbhQxw==
+"@jridgewell/trace-mapping@^0.3.12", "@jridgewell/trace-mapping@^0.3.18", "@jridgewell/trace-mapping@^0.3.20", "@jridgewell/trace-mapping@^0.3.24", "@jridgewell/trace-mapping@^0.3.25":
+  version "0.3.25"
+  resolved "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.25.tgz#15f190e98895f3fc23276ee14bc76b675c2e50f0"
+  integrity sha512-vNk6aEwybGtawWmy/PzwnGDOjCkLWSD2wqvjGGAgOAwCGWySYXfYoxt00IJkTF+8Lb57DwOb3Aa0o9CApepiYQ==
   dependencies:
     "@jridgewell/resolve-uri" "^3.1.0"
     "@jridgewell/sourcemap-codec" "^1.4.14"
 
-"@jridgewell/trace-mapping@^0.3.17", "@jridgewell/trace-mapping@^0.3.18", "@jridgewell/trace-mapping@^0.3.9":
-  version "0.3.18"
-  resolved "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.18.tgz#25783b2086daf6ff1dcb53c9249ae480e4dd4cd6"
-  integrity sha512-w+niJYzMHdd7USdiH2U6869nqhD2nbfZXND5Yp93qIbEmnDNk7PD48o+YchRVpzMU7M6jVCbenTR7PA1FLQ9pA==
-  dependencies:
-    "@jridgewell/resolve-uri" "3.1.0"
-    "@jridgewell/sourcemap-codec" "1.4.14"
-
 "@lezer/common@^1.0.0", "@lezer/common@^1.1.0", "@lezer/common@^1.2.0":
   version "1.2.1"
   resolved "https://registry.npmjs.org/@lezer/common/-/common-1.2.1.tgz#198b278b7869668e1bebbe687586e12a42731049"
@@ -2381,99 +1756,168 @@
   dependencies:
     "@lezer/common" "^1.0.0"
 
-"@material-ui/core@4.12.4":
-  version "4.12.4"
-  resolved "https://registry.npmjs.org/@material-ui/core/-/core-4.12.4.tgz#4ac17488e8fcaf55eb6a7f5efb2a131e10138a73"
-  integrity sha512-tr7xekNlM9LjA6pagJmL8QCgZXaubWUwkJnoYcMKd4gw/t4XiyvnTkjdGrUVicyB2BsdaAv1tvow45bPM4sSwQ==
-  dependencies:
-    "@babel/runtime" "^7.4.4"
-    "@material-ui/styles" "^4.11.5"
-    "@material-ui/system" "^4.12.2"
-    "@material-ui/types" "5.1.0"
-    "@material-ui/utils" "^4.11.3"
-    "@types/react-transition-group" "^4.2.0"
-    clsx "^1.0.4"
-    hoist-non-react-statics "^3.3.2"
-    popper.js "1.16.1-lts"
-    prop-types "^15.7.2"
-    react-is "^16.8.0 || ^17.0.0"
-    react-transition-group "^4.4.0"
+"@mui/base@5.0.0-beta.40":
+  version "5.0.0-beta.40"
+  resolved "https://registry.npmjs.org/@mui/base/-/base-5.0.0-beta.40.tgz#1f8a782f1fbf3f84a961e954c8176b187de3dae2"
+  integrity sha512-I/lGHztkCzvwlXpjD2+SNmvNQvB4227xBXhISPjEaJUXGImOQ9f3D2Yj/T3KasSI/h0MLWy74X0J6clhPmsRbQ==
+  dependencies:
+    "@babel/runtime" "^7.23.9"
+    "@floating-ui/react-dom" "^2.0.8"
+    "@mui/types" "^7.2.14"
+    "@mui/utils" "^5.15.14"
+    "@popperjs/core" "^2.11.8"
+    clsx "^2.1.0"
+    prop-types "^15.8.1"
+
+"@mui/base@^5.0.0-beta.22":
+  version "5.0.0-beta.42"
+  resolved "https://registry.npmjs.org/@mui/base/-/base-5.0.0-beta.42.tgz#d70fb479c57a60ce080d0700fe137db8686abe3e"
+  integrity sha512-fWRiUJVCHCPF+mxd5drn08bY2qRw3jj5f1SSQdUXmaJ/yKpk23ys8MgLO2KGVTRtbks/+ctRfgffGPbXifj0Ug==
+  dependencies:
+    "@babel/runtime" "^7.24.4"
+    "@floating-ui/react-dom" "^2.0.8"
+    "@mui/types" "^7.2.14"
+    "@mui/utils" "^6.0.0-alpha.1"
+    "@popperjs/core" "^2.11.8"
+    clsx "^2.1.0"
+    prop-types "^15.8.1"
 
-"@material-ui/icons@^4.11.2":
-  version "4.11.3"
-  resolved "https://registry.npmjs.org/@material-ui/icons/-/icons-4.11.3.tgz#b0693709f9b161ce9ccde276a770d968484ecff1"
-  integrity sha512-IKHlyx6LDh8n19vzwH5RtHIOHl9Tu90aAAxcbWME6kp4dmvODM3UvOHJeMIDzUbd4muuJKHmlNoBN+mDY4XkBA==
+"@mui/core-downloads-tracker@^5.15.15":
+  version "5.15.15"
+  resolved "https://registry.npmjs.org/@mui/core-downloads-tracker/-/core-downloads-tracker-5.15.15.tgz#2bc2bda50db66c12f10aefec907c48c8f669ef59"
+  integrity sha512-aXnw29OWQ6I5A47iuWEI6qSSUfH6G/aCsW9KmW3LiFqr7uXZBK4Ks+z8G+qeIub8k0T5CMqlT2q0L+ZJTMrqpg==
+
+"@mui/icons-material@^5.15.10":
+  version "5.15.15"
+  resolved "https://registry.npmjs.org/@mui/icons-material/-/icons-material-5.15.15.tgz#84ce08225a531d9f5dc5132009d91164b456a0ae"
+  integrity sha512-kkeU/pe+hABcYDH6Uqy8RmIsr2S/y5bP2rp+Gat4CcRjCcVne6KudS1NrZQhUCRysrTDCAhcbcf9gt+/+pGO2g==
+  dependencies:
+    "@babel/runtime" "^7.23.9"
+
+"@mui/lab@^5.0.0-alpha.165":
+  version "5.0.0-alpha.170"
+  resolved "https://registry.npmjs.org/@mui/lab/-/lab-5.0.0-alpha.170.tgz#4519dfc8d1c51ca54fb9d8b91b95a3733d07be16"
+  integrity sha512-0bDVECGmrNjd3+bLdcLiwYZ0O4HP5j5WSQm5DV6iA/Z9kr8O6AnvZ1bv9ImQbbX7Gj3pX4o43EKwCutj3EQxQg==
+  dependencies:
+    "@babel/runtime" "^7.23.9"
+    "@mui/base" "5.0.0-beta.40"
+    "@mui/system" "^5.15.15"
+    "@mui/types" "^7.2.14"
+    "@mui/utils" "^5.15.14"
+    clsx "^2.1.0"
+    prop-types "^15.8.1"
+
+"@mui/material@^5.15.10":
+  version "5.15.15"
+  resolved "https://registry.npmjs.org/@mui/material/-/material-5.15.15.tgz#e3ba35f50b510aa677cec3261abddc2db7b20b59"
+  integrity sha512-3zvWayJ+E1kzoIsvwyEvkTUKVKt1AjchFFns+JtluHCuvxgKcLSRJTADw37k0doaRtVAsyh8bz9Afqzv+KYrIA==
+  dependencies:
+    "@babel/runtime" "^7.23.9"
+    "@mui/base" "5.0.0-beta.40"
+    "@mui/core-downloads-tracker" "^5.15.15"
+    "@mui/system" "^5.15.15"
+    "@mui/types" "^7.2.14"
+    "@mui/utils" "^5.15.14"
+    "@types/react-transition-group" "^4.4.10"
+    clsx "^2.1.0"
+    csstype "^3.1.3"
+    prop-types "^15.8.1"
+    react-is "^18.2.0"
+    react-transition-group "^4.4.5"
+
+"@mui/private-theming@^5.15.14":
+  version "5.15.14"
+  resolved "https://registry.npmjs.org/@mui/private-theming/-/private-theming-5.15.14.tgz#edd9a82948ed01586a01c842eb89f0e3f68970ee"
+  integrity sha512-UH0EiZckOWcxiXLX3Jbb0K7rC8mxTr9L9l6QhOZxYc4r8FHUkefltV9VDGLrzCaWh30SQiJvAEd7djX3XXY6Xw==
   dependencies:
-    "@babel/runtime" "^7.4.4"
+    "@babel/runtime" "^7.23.9"
+    "@mui/utils" "^5.15.14"
+    prop-types "^15.8.1"
 
-"@material-ui/lab@4.0.0-alpha.61":
-  version "4.0.0-alpha.61"
-  resolved "https://registry.npmjs.org/@material-ui/lab/-/lab-4.0.0-alpha.61.tgz#9bf8eb389c0c26c15e40933cc114d4ad85e3d978"
-  integrity sha512-rSzm+XKiNUjKegj8bzt5+pygZeckNLOr+IjykH8sYdVk7dE9y2ZuUSofiMV2bJk3qU+JHwexmw+q0RyNZB9ugg==
+"@mui/styled-engine@^5.15.14":
+  version "5.15.14"
+  resolved "https://registry.npmjs.org/@mui/styled-engine/-/styled-engine-5.15.14.tgz#168b154c4327fa4ccc1933a498331d53f61c0de2"
+  integrity sha512-RILkuVD8gY6PvjZjqnWhz8fu68dVkqhM5+jYWfB5yhlSQKg+2rHkmEwm75XIeAqI3qwOndK6zELK5H6Zxn4NHw==
   dependencies:
-    "@babel/runtime" "^7.4.4"
-    "@material-ui/utils" "^4.11.3"
-    clsx "^1.0.4"
-    prop-types "^15.7.2"
-    react-is "^16.8.0 || ^17.0.0"
-
-"@material-ui/pickers@3.3.10":
-  version "3.3.10"
-  resolved "https://registry.npmjs.org/@material-ui/pickers/-/pickers-3.3.10.tgz#f1b0f963348cc191645ef0bdeff7a67c6aa25485"
-  integrity sha512-hS4pxwn1ZGXVkmgD4tpFpaumUaAg2ZzbTrxltfC5yPw4BJV+mGkfnQOB4VpWEYZw2jv65Z0wLwDE/piQiPPZ3w==
-  dependencies:
-    "@babel/runtime" "^7.6.0"
-    "@date-io/core" "1.x"
-    "@types/styled-jsx" "^2.2.8"
-    clsx "^1.0.2"
-    react-transition-group "^4.0.0"
-    rifm "^0.7.0"
-
-"@material-ui/styles@^4.11.5":
-  version "4.11.5"
-  resolved "https://registry.npmjs.org/@material-ui/styles/-/styles-4.11.5.tgz#19f84457df3aafd956ac863dbe156b1d88e2bbfb"
-  integrity sha512-o/41ot5JJiUsIETME9wVLAJrmIWL3j0R0Bj2kCOLbSfqEkKf0fmaPt+5vtblUh5eXr2S+J/8J3DaCb10+CzPGA==
-  dependencies:
-    "@babel/runtime" "^7.4.4"
-    "@emotion/hash" "^0.8.0"
-    "@material-ui/types" "5.1.0"
-    "@material-ui/utils" "^4.11.3"
-    clsx "^1.0.4"
-    csstype "^2.5.2"
-    hoist-non-react-statics "^3.3.2"
-    jss "^10.5.1"
-    jss-plugin-camel-case "^10.5.1"
-    jss-plugin-default-unit "^10.5.1"
-    jss-plugin-global "^10.5.1"
-    jss-plugin-nested "^10.5.1"
-    jss-plugin-props-sort "^10.5.1"
-    jss-plugin-rule-value-function "^10.5.1"
-    jss-plugin-vendor-prefixer "^10.5.1"
-    prop-types "^15.7.2"
+    "@babel/runtime" "^7.23.9"
+    "@emotion/cache" "^11.11.0"
+    csstype "^3.1.3"
+    prop-types "^15.8.1"
 
-"@material-ui/system@^4.12.2":
-  version "4.12.2"
-  resolved "https://registry.npmjs.org/@material-ui/system/-/system-4.12.2.tgz#f5c389adf3fce4146edd489bf4082d461d86aa8b"
-  integrity sha512-6CSKu2MtmiJgcCGf6nBQpM8fLkuB9F55EKfbdTC80NND5wpTmKzwdhLYLH3zL4cLlK0gVaaltW7/wMuyTnN0Lw==
+"@mui/styles@^5.15.10":
+  version "5.15.15"
+  resolved "https://registry.npmjs.org/@mui/styles/-/styles-5.15.15.tgz#cfc974657882cb60c6017d57d81f133d8b5e51a1"
+  integrity sha512-KBklDHNEddodEjcnZ+/3ieVcp+Mb/pzdQzAagUpt4RDd9m/mn+2JkqJh2rnrWUwS//YLsbL3IbUrONYn5yPxfQ==
   dependencies:
-    "@babel/runtime" "^7.4.4"
-    "@material-ui/utils" "^4.11.3"
-    csstype "^2.5.2"
-    prop-types "^15.7.2"
+    "@babel/runtime" "^7.23.9"
+    "@emotion/hash" "^0.9.1"
+    "@mui/private-theming" "^5.15.14"
+    "@mui/types" "^7.2.14"
+    "@mui/utils" "^5.15.14"
+    clsx "^2.1.0"
+    csstype "^3.1.3"
+    hoist-non-react-statics "^3.3.2"
+    jss "^10.10.0"
+    jss-plugin-camel-case "^10.10.0"
+    jss-plugin-default-unit "^10.10.0"
+    jss-plugin-global "^10.10.0"
+    jss-plugin-nested "^10.10.0"
+    jss-plugin-props-sort "^10.10.0"
+    jss-plugin-rule-value-function "^10.10.0"
+    jss-plugin-vendor-prefixer "^10.10.0"
+    prop-types "^15.8.1"
 
-"@material-ui/types@5.1.0":
-  version "5.1.0"
-  resolved "https://registry.npmjs.org/@material-ui/types/-/types-5.1.0.tgz#efa1c7a0b0eaa4c7c87ac0390445f0f88b0d88f2"
-  integrity sha512-7cqRjrY50b8QzRSYyhSpx4WRw2YuO0KKIGQEVk5J8uoz2BanawykgZGoWEqKm7pVIbzFDN0SpPcVV4IhOFkl8A==
+"@mui/system@^5.15.15":
+  version "5.15.15"
+  resolved "https://registry.npmjs.org/@mui/system/-/system-5.15.15.tgz#658771b200ce3c4a0f28e58169f02e5e718d1c53"
+  integrity sha512-aulox6N1dnu5PABsfxVGOZffDVmlxPOVgj56HrUnJE8MCSh8lOvvkd47cebIVQQYAjpwieXQXiDPj5pwM40jTQ==
+  dependencies:
+    "@babel/runtime" "^7.23.9"
+    "@mui/private-theming" "^5.15.14"
+    "@mui/styled-engine" "^5.15.14"
+    "@mui/types" "^7.2.14"
+    "@mui/utils" "^5.15.14"
+    clsx "^2.1.0"
+    csstype "^3.1.3"
+    prop-types "^15.8.1"
+
+"@mui/types@^7.2.14":
+  version "7.2.14"
+  resolved "https://registry.npmjs.org/@mui/types/-/types-7.2.14.tgz#8a02ac129b70f3d82f2f9b76ded2c8d48e3fc8c9"
+  integrity sha512-MZsBZ4q4HfzBsywtXgM1Ksj6HDThtiwmOKUXH1pKYISI9gAVXCNHNpo7TlGoGrBaYWZTdNoirIN7JsQcQUjmQQ==
 
-"@material-ui/utils@^4.11.3":
-  version "4.11.3"
-  resolved "https://registry.npmjs.org/@material-ui/utils/-/utils-4.11.3.tgz#232bd86c4ea81dab714f21edad70b7fdf0253942"
-  integrity sha512-ZuQPV4rBK/V1j2dIkSSEcH5uT6AaHuKWFfotADHsC0wVL1NLd2WkFCm4ZZbX33iO4ydl6V0GPngKm8HZQ2oujg==
+"@mui/utils@^5.14.16", "@mui/utils@^5.15.14":
+  version "5.15.14"
+  resolved "https://registry.npmjs.org/@mui/utils/-/utils-5.15.14.tgz#e414d7efd5db00bfdc875273a40c0a89112ade3a"
+  integrity sha512-0lF/7Hh/ezDv5X7Pry6enMsbYyGKjADzvHyo3Qrc/SSlTsQ1VkbDMbH0m2t3OR5iIVLwMoxwM7yGd+6FCMtTFA==
   dependencies:
-    "@babel/runtime" "^7.4.4"
-    prop-types "^15.7.2"
-    react-is "^16.8.0 || ^17.0.0"
+    "@babel/runtime" "^7.23.9"
+    "@types/prop-types" "^15.7.11"
+    prop-types "^15.8.1"
+    react-is "^18.2.0"
+
+"@mui/utils@^6.0.0-alpha.1":
+  version "6.0.0-alpha.3"
+  resolved "https://registry.npmjs.org/@mui/utils/-/utils-6.0.0-alpha.3.tgz#c83ad4aed65298cd0128eb47cc00d904f157b62b"
+  integrity sha512-DBuCy0LmpKFBX6KcZpNve8T3oZmbdZABN0ixJIvDRdoxTG86divvx1CcA71YJojZD3FhRWb0d/XxtMAzn4qIvg==
+  dependencies:
+    "@babel/runtime" "^7.24.4"
+    "@types/prop-types" "^15.7.12"
+    prop-types "^15.8.1"
+    react-is "^18.2.0"
+
+"@mui/x-date-pickers@^6.19.7":
+  version "6.19.9"
+  resolved "https://registry.npmjs.org/@mui/x-date-pickers/-/x-date-pickers-6.19.9.tgz#5fb7ecbeec5b5ce1fddbb547583d0083e30a845b"
+  integrity sha512-B2m4Fv/fOme5qmV6zuE3QnWQSvj3zKtI2OvikPz5prpiCcIxqpeytkQ7VfrWH3/Aqd5yhG1Yr4IgbqG0ymIXGg==
+  dependencies:
+    "@babel/runtime" "^7.23.2"
+    "@mui/base" "^5.0.0-beta.22"
+    "@mui/utils" "^5.14.16"
+    "@types/react-transition-group" "^4.4.8"
+    clsx "^2.0.0"
+    prop-types "^15.8.1"
+    react-transition-group "^4.4.5"
 
 "@nicolo-ribaudo/eslint-scope-5-internals@5.1.1-v1":
   version "5.1.1-v1"
@@ -2503,6 +1947,25 @@
     "@nodelib/fs.scandir" "2.1.5"
     fastq "^1.6.0"
 
+"@npmcli/agent@^2.0.0":
+  version "2.2.2"
+  resolved "https://registry.npmjs.org/@npmcli/agent/-/agent-2.2.2.tgz#967604918e62f620a648c7975461c9c9e74fc5d5"
+  integrity sha512-OrcNPXdpSl9UX7qPVRWbmWMCSXrcDa2M9DvrbOTj7ao1S4PlqVFYv9/yLKMkrJKZ/V5A/kDBC690or307i26Og==
+  dependencies:
+    agent-base "^7.1.0"
+    http-proxy-agent "^7.0.0"
+    https-proxy-agent "^7.0.1"
+    lru-cache "^10.0.1"
+    socks-proxy-agent "^8.0.3"
+
+"@npmcli/fs@^2.1.0":
+  version "2.1.2"
+  resolved "https://registry.npmjs.org/@npmcli/fs/-/fs-2.1.2.tgz#a9e2541a4a2fec2e69c29b35e6060973da79b865"
+  integrity sha512-yOJKRvohFOaLqipNtwYB9WugyZKhC/DZC4VYPmpaCzDBrA8YpK3qHZ8/HGscMnE4GqbkLNuVcCnxkeQEdGt6LQ==
+  dependencies:
+    "@gar/promisify" "^1.1.3"
+    semver "^7.3.5"
+
 "@npmcli/fs@^3.1.0":
   version "3.1.0"
   resolved "https://registry.npmjs.org/@npmcli/fs/-/fs-3.1.0.tgz#233d43a25a91d68c3a863ba0da6a3f00924a173e"
@@ -2510,15 +1973,28 @@
   dependencies:
     semver "^7.3.5"
 
+"@npmcli/move-file@^2.0.0":
+  version "2.0.1"
+  resolved "https://registry.npmjs.org/@npmcli/move-file/-/move-file-2.0.1.tgz#26f6bdc379d87f75e55739bab89db525b06100e4"
+  integrity sha512-mJd2Z5TjYWq/ttPLLGqArdtnC74J6bOzg4rMDnN+p1xTacZ2yPRCk2y0oSWQtygLR9YVQXgOcONrwtnk3JupxQ==
+  dependencies:
+    mkdirp "^1.0.4"
+    rimraf "^3.0.2"
+
 "@pkgjs/parseargs@^0.11.0":
   version "0.11.0"
   resolved "https://registry.npmjs.org/@pkgjs/parseargs/-/parseargs-0.11.0.tgz#a77ea742fab25775145434eb1d2328cf5013ac33"
   integrity sha512-+1VkjdD0QBLPodGrJUeqarH8VAIvQODIbwh9XpP5Syisf7YoQgsJKPNFoqqLQlu+VQ/tVSshMR6loPMn8U+dPg==
 
-"@polka/url@^1.0.0-next.20":
-  version "1.0.0-next.21"
-  resolved "https://registry.npmjs.org/@polka/url/-/url-1.0.0-next.21.tgz#5de5a2385a35309427f6011992b544514d559aa1"
-  integrity sha512-a5Sab1C4/icpTZVzZc5Ghpz88yQtGOyNqYXcZgOssB2uuAr+wF/MvN6bgtW32q7HHrvBki+BsZ0OuNv6EV3K9g==
+"@polka/url@^1.0.0-next.24":
+  version "1.0.0-next.25"
+  resolved "https://registry.npmjs.org/@polka/url/-/url-1.0.0-next.25.tgz#f077fdc0b5d0078d30893396ff4827a13f99e817"
+  integrity sha512-j7P6Rgr3mmtdkeDGTe0E/aYyWEWVtc5yFXtHCRHs28/jptDEWfaVOc5T7cblqy1XKPPfCxJc/8DwQ5YgLOZOVQ==
+
+"@popperjs/core@^2.11.8":
+  version "2.11.8"
+  resolved "https://registry.npmjs.org/@popperjs/core/-/core-2.11.8.tgz#6b79032e760a0899cd4204710beede972a3a185f"
+  integrity sha512-P1st0aksCrn9sGZhp8GMYwBnQsbvAWsZAX44oXNNvLHGqAOcoVxmjZiohstwQ7SqKnbR47akdNi+uleWD8+g6A==
 
 "@projectstorm/geometry@^6.7.4":
   version "6.7.4"
@@ -2565,28 +2041,6 @@
     "@projectstorm/react-diagrams-defaults" "^6.7.4"
     "@projectstorm/react-diagrams-routing" "^6.7.4"
 
-"@rc-component/portal@^1.1.0":
-  version "1.1.1"
-  resolved "https://registry.npmjs.org/@rc-component/portal/-/portal-1.1.1.tgz#1a30ffe51c240b54360cba8e8bfc5d1f559325c4"
-  integrity sha512-m8w3dFXX0H6UkJ4wtfrSwhe2/6M08uz24HHrF8pWfAXPwA9hwCuTE5per/C86KwNLouRpwFGcr7LfpHaa1F38g==
-  dependencies:
-    "@babel/runtime" "^7.18.0"
-    classnames "^2.3.2"
-    rc-util "^5.24.4"
-
-"@rc-component/trigger@^1.6.2":
-  version "1.13.6"
-  resolved "https://registry.npmjs.org/@rc-component/trigger/-/trigger-1.13.6.tgz#1375303018d16ccdf88e31c6bcd131421e1fa3e7"
-  integrity sha512-13aF9SrR5XAd+tyV/zja0A2pbrA/zdTCXRBNIsoLp8OmhVOnqiwjP7XZYPulLsH0ioEfvtXR1yI0anJD0/J7PQ==
-  dependencies:
-    "@babel/runtime" "^7.18.3"
-    "@rc-component/portal" "^1.1.0"
-    classnames "^2.3.2"
-    rc-align "^4.0.0"
-    rc-motion "^2.0.0"
-    rc-resize-observer "^1.3.1"
-    rc-util "^5.33.0"
-
 "@react-dnd/asap@^4.0.0":
   version "4.0.1"
   resolved "https://registry.npmjs.org/@react-dnd/asap/-/asap-4.0.1.tgz#5291850a6b58ce6f2da25352a64f1b0674871aab"
@@ -2623,17 +2077,12 @@
   integrity sha512-7PGLWa9MZ5x/cWy8EH2VzI4T8q5WpuHbixzCDXqixP/WyqwIrg5NDUPgYuFnB4IEIZF+6nA265mYzswFo/h1Pw==
 
 "@simonwep/pickr@^1.5.1":
-  version "1.8.2"
-  resolved "https://registry.npmjs.org/@simonwep/pickr/-/pickr-1.8.2.tgz#96dc86675940d7cad63d69c22083dd1cbb9797cb"
-  integrity sha512-/l5w8BIkrpP6n1xsetx9MWPWlU6OblN5YgZZphxan0Tq4BByTCETL6lyIeY8lagalS2Nbt4F2W034KHLIiunKA==
+  version "1.9.0"
+  resolved "https://registry.npmjs.org/@simonwep/pickr/-/pickr-1.9.0.tgz#1640651ff04e76b48d805dc186c6513087a704a3"
+  integrity sha512-oEYvv15PyfZzjoAzvXYt3UyNGwzsrpFxLaZKzkOSd0WYBVwLd19iJerePDONxC1iF6+DpcswPdLIM2KzCJuYFg==
   dependencies:
-    core-js "^3.15.1"
-    nanopop "^2.1.0"
-
-"@sinclair/typebox@^0.25.16":
-  version "0.25.24"
-  resolved "https://registry.npmjs.org/@sinclair/typebox/-/typebox-0.25.24.tgz#8c7688559979f7079aacaf31aa881c3aa410b718"
-  integrity sha512-XJfwUVUKDHF5ugKwIcxEgc9k8b7HbznCp6eUfWgu710hMPNIO4aw4/zB5RogDQz8nd6gyCDpU9O/m6qYEWY6yQ==
+    core-js "3.32.2"
+    nanopop "2.3.0"
 
 "@sinclair/typebox@^0.27.8":
   version "0.27.8"
@@ -2646,9 +2095,9 @@
   integrity sha512-ONhaKPIufzzrlNbqtWFFd+jlnemX6lJAgq9ZeiZtS7I1PIf/la7CW4m83rTXRnVnsMbW2k56pGYu7AUFJD9Pow==
 
 "@sinonjs/commons@^3.0.0":
-  version "3.0.0"
-  resolved "https://registry.npmjs.org/@sinonjs/commons/-/commons-3.0.0.tgz#beb434fe875d965265e04722ccfc21df7f755d72"
-  integrity sha512-jXBtWAF4vmdNmZgD5FoKsVLv3rPgDnLgPbU84LIJ3otV44vJlDRokVng5v8NFJdCf/da9legHcKaRuZs4L7faA==
+  version "3.0.1"
+  resolved "https://registry.npmjs.org/@sinonjs/commons/-/commons-3.0.1.tgz#1029357e44ca901a615585f6d27738dbc89084cd"
+  integrity sha512-K3mCHKQ9sVh8o1C9cxkwxaOmXoAMlDxC1mYyHrjqOWEcBjYr76t96zL2zlj5dUGZ3HSw240X1qgH3Mjf1yJWpQ==
   dependencies:
     type-detect "4.0.8"
 
@@ -2660,9 +2109,9 @@
     "@sinonjs/commons" "^3.0.0"
 
 "@socket.io/component-emitter@~3.1.0":
-  version "3.1.0"
-  resolved "https://registry.npmjs.org/@socket.io/component-emitter/-/component-emitter-3.1.0.tgz#96116f2a912e0c02817345b3c10751069920d553"
-  integrity sha512-+9jVqKhRSpsc591z5vX+X5Yyw+he/HCB4iQ/RYxw35CEPaY1gnsNE43nf9n9AaYjAQrTiI/mOwKUKdUs9vf7Xg==
+  version "3.1.1"
+  resolved "https://registry.npmjs.org/@socket.io/component-emitter/-/component-emitter-3.1.1.tgz#621270c02c0a5d4f4669eb1caa9723c91cf201de"
+  integrity sha512-dzJtaDAAoXx4GCOJpbB2eG/Qj8VDpdwkLsWGzGm+0L7E8/434RyMbAHmk9ubXWVAb9nXmc44jUf8GKqVDiKezg==
 
 "@sphinxxxx/color-conversion@^2.2.2":
   version "2.2.2"
@@ -2798,16 +2247,16 @@
     pretty-format "^27.0.2"
 
 "@testing-library/jest-dom@^6.1.2":
-  version "6.1.2"
-  resolved "https://registry.npmjs.org/@testing-library/jest-dom/-/jest-dom-6.1.2.tgz#3e7422904349223cb1e04968adada63f65f40d5b"
-  integrity sha512-NP9jl1Q2qDDtx+cqogowtQtmgD2OVs37iMSIsTv5eN5ETRkf26Kj6ugVwA93/gZzzFWQAsgkKkcftDe91BJCkQ==
+  version "6.4.2"
+  resolved "https://registry.npmjs.org/@testing-library/jest-dom/-/jest-dom-6.4.2.tgz#38949f6b63722900e2d75ba3c6d9bf8cffb3300e"
+  integrity sha512-CzqH0AFymEMG48CpzXFriYYkOjk6ZGPCLMhW9e9jg3KMCn5OfJecF8GtGW7yGfR/IgCe3SX8BSwjdzI6BBbZLw==
   dependencies:
-    "@adobe/css-tools" "^4.3.0"
+    "@adobe/css-tools" "^4.3.2"
     "@babel/runtime" "^7.9.2"
     aria-query "^5.0.0"
     chalk "^3.0.0"
     css.escape "^1.5.1"
-    dom-accessibility-api "^0.5.6"
+    dom-accessibility-api "^0.6.3"
     lodash "^4.17.15"
     redent "^3.0.0"
 
@@ -2821,9 +2270,9 @@
     "@types/react-dom" "<18.0.0"
 
 "@testing-library/user-event@^14.4.3":
-  version "14.4.3"
-  resolved "https://registry.npmjs.org/@testing-library/user-event/-/user-event-14.4.3.tgz#af975e367743fa91989cd666666aec31a8f50591"
-  integrity sha512-kCUc5MEwaEMakkO5x7aoD+DLi02ehmEM2QCGWvNqAS1dV/fAvORWEjnjsEIvml59M7Y5kCkWN6fCCyPOe8OL6Q==
+  version "14.5.2"
+  resolved "https://registry.npmjs.org/@testing-library/user-event/-/user-event-14.5.2.tgz#db7257d727c891905947bd1c1a99da20e03c2ebd"
+  integrity sha512-YAh82Wh4TIrxYLmfGcixwD18oIjyC1pFQC2Y01F2lzV2HTMiYrI0nze0FD0ocB//CKS/7jIUgae+adPqxK5yCQ==
 
 "@tokenizer/token@^0.3.0":
   version "0.3.0"
@@ -2841,14 +2290,14 @@
   integrity sha512-L7z9BgrNEcYyUYtF+HaEfiS5ebkh9jXqbszz7pC0hRBPaatV0XjSD3+eHrpqFemQfgwiFF0QPIarnIihIDn7OA==
 
 "@types/aria-query@^5.0.1":
-  version "5.0.1"
-  resolved "https://registry.npmjs.org/@types/aria-query/-/aria-query-5.0.1.tgz#3286741fb8f1e1580ac28784add4c7a1d49bdfbc"
-  integrity sha512-XTIieEY+gvJ39ChLcB4If5zHtPxt3Syj5rgZR+e1ctpmK8NjPf0zFqsz4JpLJT0xla9GFDKjy8Cpu331nrmE1Q==
+  version "5.0.4"
+  resolved "https://registry.npmjs.org/@types/aria-query/-/aria-query-5.0.4.tgz#1a31c3d378850d2778dabb6374d036dcba4ba708"
+  integrity sha512-rfT93uj5s0PRL7EzccGMs3brplhcrghnDoV26NqKhCAS1hVo+WdNsPvE/yb6ilfr5hi2MEk6d5EWJTKdxg8jVw==
 
 "@types/babel__core@^7.1.14":
-  version "7.20.1"
-  resolved "https://registry.npmjs.org/@types/babel__core/-/babel__core-7.20.1.tgz#916ecea274b0c776fec721e333e55762d3a9614b"
-  integrity sha512-aACu/U/omhdk15O4Nfb+fHgH/z3QsfQzpnvRZhYhThms83ZnAOZz7zZAWO7mn2yyNQaA4xTO8GLK3uqFU4bYYw==
+  version "7.20.5"
+  resolved "https://registry.npmjs.org/@types/babel__core/-/babel__core-7.20.5.tgz#3df15f27ba85319caa07ba08d0721889bb39c017"
+  integrity sha512-qoQprZvz5wQFJwMDqeseRXWv3rqMvhgpbXFfVyWhbx9X47POIA6i/+dXefEmZKoAgOaTdaIgNSMqMIU61yRyzA==
   dependencies:
     "@babel/parser" "^7.20.7"
     "@babel/types" "^7.20.7"
@@ -2857,85 +2306,85 @@
     "@types/babel__traverse" "*"
 
 "@types/babel__generator@*":
-  version "7.6.4"
-  resolved "https://registry.npmjs.org/@types/babel__generator/-/babel__generator-7.6.4.tgz#1f20ce4c5b1990b37900b63f050182d28c2439b7"
-  integrity sha512-tFkciB9j2K755yrTALxD44McOrk+gfpIpvC3sxHjRawj6PfnQxrse4Clq5y/Rq+G3mrBurMax/lG8Qn2t9mSsg==
+  version "7.6.8"
+  resolved "https://registry.npmjs.org/@types/babel__generator/-/babel__generator-7.6.8.tgz#f836c61f48b1346e7d2b0d93c6dacc5b9535d3ab"
+  integrity sha512-ASsj+tpEDsEiFr1arWrlN6V3mdfjRMZt6LtK/Vp/kreFLnr5QH5+DhvD5nINYZXzwJvXeGq+05iUXcAzVrqWtw==
   dependencies:
     "@babel/types" "^7.0.0"
 
 "@types/babel__template@*":
-  version "7.4.1"
-  resolved "https://registry.npmjs.org/@types/babel__template/-/babel__template-7.4.1.tgz#3d1a48fd9d6c0edfd56f2ff578daed48f36c8969"
-  integrity sha512-azBFKemX6kMg5Io+/rdGT0dkGreboUVR0Cdm3fz9QJWpaQGJRQXl7C+6hOTCZcMll7KFyEQpgbYI2lHdsS4U7g==
+  version "7.4.4"
+  resolved "https://registry.npmjs.org/@types/babel__template/-/babel__template-7.4.4.tgz#5672513701c1b2199bc6dad636a9d7491586766f"
+  integrity sha512-h/NUaSyG5EyxBIp8YRxo4RMe2/qQgvyowRwVMzhYhBCONbW8PUsg4lkFMrhgZhUe5z3L3MiLDuvyJ/CaPa2A8A==
   dependencies:
     "@babel/parser" "^7.1.0"
     "@babel/types" "^7.0.0"
 
 "@types/babel__traverse@*", "@types/babel__traverse@^7.0.6":
-  version "7.20.1"
-  resolved "https://registry.npmjs.org/@types/babel__traverse/-/babel__traverse-7.20.1.tgz#dd6f1d2411ae677dcb2db008c962598be31d6acf"
-  integrity sha512-MitHFXnhtgwsGZWtT68URpOvLN4EREih1u3QtQiN4VdAxWKRVvGCSvw/Qth0M0Qq3pJpnGOu5JaM/ydK7OGbqg==
+  version "7.20.5"
+  resolved "https://registry.npmjs.org/@types/babel__traverse/-/babel__traverse-7.20.5.tgz#7b7502be0aa80cc4ef22978846b983edaafcd4dd"
+  integrity sha512-WXCyOcRtH37HAUkpXhUduaxdm82b4GSlyTqajXviN4EfiuPgNYR109xMCKvpl6zPIpua0DGlMEDCq+g8EdoheQ==
   dependencies:
     "@babel/types" "^7.20.7"
 
 "@types/classnames@^2.2.6":
-  version "2.3.1"
-  resolved "https://registry.npmjs.org/@types/classnames/-/classnames-2.3.1.tgz#3c2467aa0f1a93f1f021e3b9bcf938bd5dfdc0dd"
-  integrity sha512-zeOWb0JGBoVmlQoznvqXbE0tEC/HONsnoUNH19Hc96NFsTAwTXbTqb8FMYkru1F/iqp7a18Ws3nWJvtA1sHD1A==
+  version "2.3.0"
+  resolved "https://registry.npmjs.org/@types/classnames/-/classnames-2.3.0.tgz#681b6bacf918e00c1836ad286a872e0a90aada87"
+  integrity sha512-3GsbOoDYteFShlrBTKzI2Eii4vPg/jAf7LXRIn0WQePKlmhpkV0KoTMuawA7gZJkrbPrZGwv9IEAfIWaOaQK8w==
   dependencies:
     classnames "*"
 
 "@types/eslint-scope@^3.7.3":
-  version "3.7.4"
-  resolved "https://registry.npmjs.org/@types/eslint-scope/-/eslint-scope-3.7.4.tgz#37fc1223f0786c39627068a12e94d6e6fc61de16"
-  integrity sha512-9K4zoImiZc3HlIp6AVUDE4CWYx22a+lhSZMYNpbjW04+YF0KWj4pJXnEMjdnFTiQibFFmElcsasJXDbdI/EPhA==
+  version "3.7.7"
+  resolved "https://registry.npmjs.org/@types/eslint-scope/-/eslint-scope-3.7.7.tgz#3108bd5f18b0cdb277c867b3dd449c9ed7079ac5"
+  integrity sha512-MzMFlSLBqNF2gcHWO0G1vP/YQyfvrxZ0bF+u7mzUdZ1/xK4A4sru+nraZz5i3iEIk1l1uyicaDVTB4QbbEkAYg==
   dependencies:
     "@types/eslint" "*"
     "@types/estree" "*"
 
 "@types/eslint@*":
-  version "8.40.2"
-  resolved "https://registry.npmjs.org/@types/eslint/-/eslint-8.40.2.tgz#2833bc112d809677864a4b0e7d1de4f04d7dac2d"
-  integrity sha512-PRVjQ4Eh9z9pmmtaq8nTjZjQwKFk7YIHIud3lRoKRBgUQjgjRmoGxxGEPXQkF+lH7QkHJRNr5F4aBgYCW0lqpQ==
+  version "8.56.9"
+  resolved "https://registry.npmjs.org/@types/eslint/-/eslint-8.56.9.tgz#403e9ced04a34e63f1c383c5b8ee1a94442c8cc4"
+  integrity sha512-W4W3KcqzjJ0sHg2vAq9vfml6OhsJ53TcUjUqfzzZf/EChUtwspszj/S0pzMxnfRcO55/iGq47dscXw71Fxc4Zg==
   dependencies:
     "@types/estree" "*"
     "@types/json-schema" "*"
 
-"@types/estree@*", "@types/estree@^1.0.0":
-  version "1.0.1"
-  resolved "https://registry.npmjs.org/@types/estree/-/estree-1.0.1.tgz#aa22750962f3bf0e79d753d3cc067f010c95f194"
-  integrity sha512-LG4opVs2ANWZ1TJoKc937iMmNstM/d0ae1vNbnBvBhqCSezgVUOzcLCqbI5elV8Vy6WKwKjaqR+zO9VKirBBCA==
+"@types/estree@*", "@types/estree@^1.0.5":
+  version "1.0.5"
+  resolved "https://registry.npmjs.org/@types/estree/-/estree-1.0.5.tgz#a6ce3e556e00fd9895dd872dd172ad0d4bd687f4"
+  integrity sha512-/kYRxGDLWzHOB7q+wtSUQlFrtcdUccpfy+X+9iMBpHK8QLLhx2wIPYuS5DYtR9Wa/YlZAbIovy7qVdB1Aq6Lyw==
 
 "@types/graceful-fs@^4.1.3":
-  version "4.1.6"
-  resolved "https://registry.npmjs.org/@types/graceful-fs/-/graceful-fs-4.1.6.tgz#e14b2576a1c25026b7f02ede1de3b84c3a1efeae"
-  integrity sha512-Sig0SNORX9fdW+bQuTEovKj3uHcUL6LQKbCrrqb1X7J6/ReAbhCXRAhc+SMejhLELFj2QcyuxmUooZ4bt5ReSw==
+  version "4.1.9"
+  resolved "https://registry.npmjs.org/@types/graceful-fs/-/graceful-fs-4.1.9.tgz#2a06bc0f68a20ab37b3e36aa238be6abdf49e8b4"
+  integrity sha512-olP3sd1qOEe5dXTSaFvQG+02VdRXcdytWLAZsAq1PecU8uqQAhkrnbli7DagjtXKW/Bl7YJbUsa8MPcuc8LHEQ==
   dependencies:
     "@types/node" "*"
 
 "@types/istanbul-lib-coverage@*", "@types/istanbul-lib-coverage@^2.0.0", "@types/istanbul-lib-coverage@^2.0.1":
-  version "2.0.4"
-  resolved "https://registry.npmjs.org/@types/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.4.tgz#8467d4b3c087805d63580480890791277ce35c44"
-  integrity sha512-z/QT1XN4K4KYuslS23k62yDIDLwLFkzxOuMplDtObz0+y7VqJCaO2o+SPwHCvLFZh7xazvvoor2tA/hPz9ee7g==
+  version "2.0.6"
+  resolved "https://registry.npmjs.org/@types/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.6.tgz#7739c232a1fee9b4d3ce8985f314c0c6d33549d7"
+  integrity sha512-2QF/t/auWm0lsy8XtKVPG19v3sSOQlJe/YHZgfjb/KBBHOGSV+J2q/S671rcq9uTBrLAXmZpqJiaQbMT+zNU1w==
 
 "@types/istanbul-lib-report@*":
-  version "3.0.0"
-  resolved "https://registry.npmjs.org/@types/istanbul-lib-report/-/istanbul-lib-report-3.0.0.tgz#c14c24f18ea8190c118ee7562b7ff99a36552686"
-  integrity sha512-plGgXAPfVKFoYfa9NpYDAkseG+g6Jr294RqeqcqDixSbU34MZVJRi/P+7Y8GDpzkEwLaGZZOpKIEmeVZNtKsrg==
+  version "3.0.3"
+  resolved "https://registry.npmjs.org/@types/istanbul-lib-report/-/istanbul-lib-report-3.0.3.tgz#53047614ae72e19fc0401d872de3ae2b4ce350bf"
+  integrity sha512-NQn7AHQnk/RSLOxrBbGyJM/aVQ+pjj5HCgasFxc0K/KhoATfQ/47AyUl15I2yBUpihjmas+a+VJBOqecrFH+uA==
   dependencies:
     "@types/istanbul-lib-coverage" "*"
 
 "@types/istanbul-reports@^3.0.0":
-  version "3.0.1"
-  resolved "https://registry.npmjs.org/@types/istanbul-reports/-/istanbul-reports-3.0.1.tgz#9153fe98bba2bd565a63add9436d6f0d7f8468ff"
-  integrity sha512-c3mAZEuK0lvBp8tmuL74XRKn1+y2dcwOUpH7x4WrF6gk1GIgiluDRgMYQtw2OFcBvAJWlt6ASU3tSqxp0Uu0Aw==
+  version "3.0.4"
+  resolved "https://registry.npmjs.org/@types/istanbul-reports/-/istanbul-reports-3.0.4.tgz#0f03e3d2f670fbdac586e34b433783070cc16f54"
+  integrity sha512-pk2B1NWalF9toCRu6gjBzR69syFjP4Od8WRAX+0mmf9lAjCRicLOWc+ZrxZHx/0XRjotgkF9t6iaMJ+aXcOdZQ==
   dependencies:
     "@types/istanbul-lib-report" "*"
 
 "@types/jest@^29.5.4":
-  version "29.5.4"
-  resolved "https://registry.npmjs.org/@types/jest/-/jest-29.5.4.tgz#9d0a16edaa009a71e6a71a999acd582514dab566"
-  integrity sha512-PhglGmhWeD46FYOVLt3X7TiWjzwuVGW9wG/4qocPevXMjCmrIc5b6db9WjeGE4QYVpUAWMDv3v0IiBwObY289A==
+  version "29.5.12"
+  resolved "https://registry.npmjs.org/@types/jest/-/jest-29.5.12.tgz#7f7dc6eb4cf246d2474ed78744b05d06ce025544"
+  integrity sha512-eDC8bTvT/QhYdxJAulQikueigY5AsdBRH2yDKW3yveW7svY3+DzN84/2NUgkw10RTiJbWqZrTtoGVdYlvFJdLw==
   dependencies:
     expect "^29.0.0"
     pretty-format "^29.0.0"
@@ -2950,9 +2399,9 @@
     parse5 "^7.0.0"
 
 "@types/json-schema@*", "@types/json-schema@^7.0.5", "@types/json-schema@^7.0.8", "@types/json-schema@^7.0.9":
-  version "7.0.12"
-  resolved "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.12.tgz#d70faba7039d5fca54c83c7dbab41051d2b6f6cb"
-  integrity sha512-Hr5Jfhc9eYOQNPYO5WLDq/n4jqijdHNlDXjuAQkkt+mWdQR+XJToOHrsD4cPaMXpn6KO7y2+wM8AZEs8VpBLVA==
+  version "7.0.15"
+  resolved "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.15.tgz#596a1747233694d50f6ad8a7869fcb6f56cf5841"
+  integrity sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA==
 
 "@types/keyv@^3.1.1":
   version "3.1.4"
@@ -2962,151 +2411,128 @@
     "@types/node" "*"
 
 "@types/minimist@^1.2.2":
-  version "1.2.2"
-  resolved "https://registry.npmjs.org/@types/minimist/-/minimist-1.2.2.tgz#ee771e2ba4b3dc5b372935d549fd9617bf345b8c"
-  integrity sha512-jhuKLIRrhvCPLqwPcx6INqmKeiA5EWrsCOPhrlFSrbrmU4ZMPjj5Ul/oLCMDO98XRUIwVm78xICz4EPCektzeQ==
+  version "1.2.5"
+  resolved "https://registry.npmjs.org/@types/minimist/-/minimist-1.2.5.tgz#ec10755e871497bcd83efe927e43ec46e8c0747e"
+  integrity sha512-hov8bUuiLiyFPGyFPE1lwWhmzYbirOXQNNo40+y3zow8aFVTeyn3VWL0VFFfdNddA8S4Vf0Tc062rzyNr7Paag==
 
 "@types/node@*":
-  version "20.3.1"
-  resolved "https://registry.npmjs.org/@types/node/-/node-20.3.1.tgz#e8a83f1aa8b649377bb1fb5d7bac5cb90e784dfe"
-  integrity sha512-EhcH/wvidPy1WeML3TtYFGR83UzjxeWRen9V402T8aUGYsCHOmfoisV3ZSg03gAFIbLq8TnWOJ0f4cALtnSEUg==
+  version "20.12.7"
+  resolved "https://registry.npmjs.org/@types/node/-/node-20.12.7.tgz#04080362fa3dd6c5822061aa3124f5c152cff384"
+  integrity sha512-wq0cICSkRLVaf3UGLMGItu/PtdY7oaXaI/RVU+xliKVOtRna3PRY57ZDfztpDL0n11vfymMUnXv8QwYCO7L1wg==
+  dependencies:
+    undici-types "~5.26.4"
 
 "@types/normalize-package-data@^2.4.0":
-  version "2.4.1"
-  resolved "https://registry.npmjs.org/@types/normalize-package-data/-/normalize-package-data-2.4.1.tgz#d3357479a0fdfdd5907fe67e17e0a85c906e1301"
-  integrity sha512-Gj7cI7z+98M282Tqmp2K5EIsoouUEzbBJhQQzDE3jSIRk6r9gsz0oUokqIUR4u1R3dMHo0pDHM7sNOHyhulypw==
+  version "2.4.4"
+  resolved "https://registry.npmjs.org/@types/normalize-package-data/-/normalize-package-data-2.4.4.tgz#56e2cc26c397c038fab0e3a917a12d5c5909e901"
+  integrity sha512-37i+OaWTh9qeK4LSHPsyRC7NahnGotNuZvjLSgcPzblpHB3rrCJxAOgI5gCdKm7coonsaX1Of0ILiTcnZjbfxA==
 
 "@types/parse-json@^4.0.0":
-  version "4.0.0"
-  resolved "https://registry.npmjs.org/@types/parse-json/-/parse-json-4.0.0.tgz#2f8bb441434d163b35fb8ffdccd7138927ffb8c0"
-  integrity sha512-//oorEZjL6sbPcKUaCdIGlIUeH26mgzimjBB77G6XRgnDl/L5wOnpyBGRe/Mmf5CVW3PwEBE1NjiMZ/ssFh4wA==
+  version "4.0.2"
+  resolved "https://registry.npmjs.org/@types/parse-json/-/parse-json-4.0.2.tgz#5950e50960793055845e956c427fc2b0d70c5239"
+  integrity sha512-dISoDXWWQwUquiKsyZ4Ng+HX2KsPL7LyHKHQwgGFEA3IaKac4Obd+h2a/a6waisAoepJlBcx9paWqjA8/HVjCw==
 
-"@types/prop-types@*":
-  version "15.7.5"
-  resolved "https://registry.npmjs.org/@types/prop-types/-/prop-types-15.7.5.tgz#5f19d2b85a98e9558036f6a3cacc8819420f05cf"
-  integrity sha512-JCB8C6SnDoQf0cNycqd/35A7MjcnK+ZTqE7judS6o7utxUCg6imJg3QK2qzHKszlTjcj2cn+NwMB2i96ubpj7w==
+"@types/prop-types@*", "@types/prop-types@^15.7.11", "@types/prop-types@^15.7.12":
+  version "15.7.12"
+  resolved "https://registry.npmjs.org/@types/prop-types/-/prop-types-15.7.12.tgz#12bb1e2be27293c1406acb6af1c3f3a1481d98c6"
+  integrity sha512-5zvhXYtRNRluoE/jAp4GVsSduVUzNWKkOZrCDBWYtE7biZywwdC2AcEzg+cSMLFRfVgeAFqpfNabiPjxFddV1Q==
 
-"@types/react-dom@<18.0.0", "@types/react-dom@^17.0.11":
-  version "17.0.20"
-  resolved "https://registry.npmjs.org/@types/react-dom/-/react-dom-17.0.20.tgz#e0c8901469d732b36d8473b40b679ad899da1b53"
-  integrity sha512-4pzIjSxDueZZ90F52mU3aPoogkHIoSIDG+oQ+wQK7Cy2B9S+MvOqY0uEA/qawKz381qrEDkvpwyt8Bm31I8sbA==
+"@types/react-dom@<18.0.0", "@types/react-dom@^17.0.25":
+  version "17.0.25"
+  resolved "https://registry.npmjs.org/@types/react-dom/-/react-dom-17.0.25.tgz#e0e5b3571e1069625b3a3da2b279379aa33a0cb5"
+  integrity sha512-urx7A7UxkZQmThYA4So0NelOVjx3V4rNFVJwp0WZlbIK5eM4rNJDiN3R/E9ix0MBh6kAEojk/9YL+Te6D9zHNA==
   dependencies:
     "@types/react" "^17"
 
-"@types/react-transition-group@^4.2.0", "@types/react-transition-group@^4.4.0":
-  version "4.4.6"
-  resolved "https://registry.npmjs.org/@types/react-transition-group/-/react-transition-group-4.4.6.tgz#18187bcda5281f8e10dfc48f0943e2fdf4f75e2e"
-  integrity sha512-VnCdSxfcm08KjsJVQcfBmhEQAPnLB8G08hAxn39azX1qYBQ/5RVQuoHuKIcfKOdncuaUvEpFKFzEvbtIMsfVew==
+"@types/react-transition-group@^4.4.0", "@types/react-transition-group@^4.4.10", "@types/react-transition-group@^4.4.8":
+  version "4.4.10"
+  resolved "https://registry.npmjs.org/@types/react-transition-group/-/react-transition-group-4.4.10.tgz#6ee71127bdab1f18f11ad8fb3322c6da27c327ac"
+  integrity sha512-hT/+s0VQs2ojCX823m60m5f0sL5idt9SO6Tj6Dg+rdphGPIeJbJ6CxvBYkgkGKrYeDjvIpKTR38UzmtHJOGW3Q==
   dependencies:
     "@types/react" "*"
 
 "@types/react@*":
-  version "18.2.13"
-  resolved "https://registry.npmjs.org/@types/react/-/react-18.2.13.tgz#a98c09bde8b18f80021935b11d2d29ef5f4dcb2f"
-  integrity sha512-vJ+zElvi/Zn9cVXB5slX2xL8PZodPCwPRDpittQdw43JR2AJ5k3vKdgJJyneV/cYgIbLQUwXa9JVDvUZXGba+Q==
+  version "18.2.79"
+  resolved "https://registry.npmjs.org/@types/react/-/react-18.2.79.tgz#c40efb4f255711f554d47b449f796d1c7756d865"
+  integrity sha512-RwGAGXPl9kSXwdNTafkOEuFrTBD5SA2B3iEB96xi8+xu5ddUa/cpvyVCSNn+asgLCTHkb5ZxN8gbuibYJi4s1w==
   dependencies:
     "@types/prop-types" "*"
-    "@types/scheduler" "*"
     csstype "^3.0.2"
 
-"@types/react@^16.7.18":
-  version "16.14.43"
-  resolved "https://registry.npmjs.org/@types/react/-/react-16.14.43.tgz#bc6e7a0e99826809591d38ddf1193955de32c446"
-  integrity sha512-7zdjv7jvoLLQg1tTvpQsm+hyNUMT2mPlNV1+d0I8fbGhkJl82spopMyBlu4wb1dviZAxpGdk5eHu/muacknnfw==
+"@types/react@^17", "@types/react@^17.0.80":
+  version "17.0.80"
+  resolved "https://registry.npmjs.org/@types/react/-/react-17.0.80.tgz#a5dfc351d6a41257eb592d73d3a85d3b7dbcbb41"
+  integrity sha512-LrgHIu2lEtIo8M7d1FcI3BdwXWoRQwMoXOZ7+dPTW0lYREjmlHl3P0U1VD0i/9tppOuv8/sam7sOjx34TxSFbA==
   dependencies:
     "@types/prop-types" "*"
-    "@types/scheduler" "*"
-    csstype "^3.0.2"
-
-"@types/react@^17":
-  version "17.0.62"
-  resolved "https://registry.npmjs.org/@types/react/-/react-17.0.62.tgz#2efe8ddf8533500ec44b1334dd1a97caa2f860e3"
-  integrity sha512-eANCyz9DG8p/Vdhr0ZKST8JV12PhH2ACCDYlFw6DIO+D+ca+uP4jtEDEpVqXZrh/uZdXQGwk7whJa3ah5DtyLw==
-  dependencies:
-    "@types/prop-types" "*"
-    "@types/scheduler" "*"
+    "@types/scheduler" "^0.16"
     csstype "^3.0.2"
 
 "@types/responselike@^1.0.0":
-  version "1.0.0"
-  resolved "https://registry.npmjs.org/@types/responselike/-/responselike-1.0.0.tgz#251f4fe7d154d2bad125abe1b429b23afd262e29"
-  integrity sha512-85Y2BjiufFzaMIlvJDvTTB8Fxl2xfLo4HgmHzVBz08w4wDePCTjYw66PdrolO0kzli3yam/YCgRufyo1DdQVTA==
+  version "1.0.3"
+  resolved "https://registry.npmjs.org/@types/responselike/-/responselike-1.0.3.tgz#cc29706f0a397cfe6df89debfe4bf5cea159db50"
+  integrity sha512-H/+L+UkTV33uf49PH5pCAUBVPNj2nDBXTN+qS1dOwyyg24l3CcicicCA7ca+HMvJBZcFgl5r8e+RR6elsb4Lyw==
   dependencies:
     "@types/node" "*"
 
-"@types/scheduler@*":
-  version "0.16.3"
-  resolved "https://registry.npmjs.org/@types/scheduler/-/scheduler-0.16.3.tgz#cef09e3ec9af1d63d2a6cc5b383a737e24e6dcf5"
-  integrity sha512-5cJ8CB4yAx7BH1oMvdU0Jh9lrEXyPkar6F9G/ERswkCuvP4KQZfZkSjcMbAICCpQTN4OuZn8tz0HiKv9TGZgrQ==
+"@types/scheduler@^0.16":
+  version "0.16.8"
+  resolved "https://registry.npmjs.org/@types/scheduler/-/scheduler-0.16.8.tgz#ce5ace04cfeabe7ef87c0091e50752e36707deff"
+  integrity sha512-WZLiwShhwLRmeV6zH+GkbOFT6Z6VklCItrDioxUnv+u4Ll+8vKeFySoFyK/0ctcRpOmwAicELfmys1sDc/Rw+A==
 
 "@types/semver@^7.3.12":
-  version "7.5.0"
-  resolved "https://registry.npmjs.org/@types/semver/-/semver-7.5.0.tgz#591c1ce3a702c45ee15f47a42ade72c2fd78978a"
-  integrity sha512-G8hZ6XJiHnuhQKR7ZmysCeJWE08o8T0AXtk5darsCaTVsYZhhgUrq53jizaR2FvsoeCwJhlmwTjkXBY5Pn/ZHw==
+  version "7.5.8"
+  resolved "https://registry.npmjs.org/@types/semver/-/semver-7.5.8.tgz#8268a8c57a3e4abd25c165ecd36237db7948a55e"
+  integrity sha512-I8EUhyrgfLrcTkzV3TSsGyl1tSuPrEDzr0yd5m90UgNxQkyDXULk3b6MlQqTCpZpNtWe1K0hzclnZkTcLBe2UQ==
 
 "@types/stack-utils@^2.0.0":
-  version "2.0.1"
-  resolved "https://registry.npmjs.org/@types/stack-utils/-/stack-utils-2.0.1.tgz#20f18294f797f2209b5f65c8e3b5c8e8261d127c"
-  integrity sha512-Hl219/BT5fLAaz6NDkSuhzasy49dwQS/DSdu4MdggFB8zcXv7vflBI3xp7FEmkmdDkBUI2bPUNeMttp2knYdxw==
-
-"@types/styled-jsx@^2.2.8":
-  version "2.2.9"
-  resolved "https://registry.npmjs.org/@types/styled-jsx/-/styled-jsx-2.2.9.tgz#e50b3f868c055bcbf9bc353eca6c10fdad32a53f"
-  integrity sha512-W/iTlIkGEyTBGTEvZCey8EgQlQ5l0DwMqi3iOXlLs2kyBwYTXHKEiU6IZ5EwoRwngL8/dGYuzezSup89ttVHLw==
-  dependencies:
-    "@types/react" "*"
+  version "2.0.3"
+  resolved "https://registry.npmjs.org/@types/stack-utils/-/stack-utils-2.0.3.tgz#6209321eb2c1712a7e7466422b8cb1fc0d9dd5d8"
+  integrity sha512-9aEbYZ3TbYMznPdcdr3SmIrLXwC/AKZXQeCf9Pgao5CKb8CyHuEX5jzWPTkvregvhRJHcpRO6BFoGW9ycaOkYw==
 
 "@types/tough-cookie@*":
-  version "4.0.2"
-  resolved "https://registry.npmjs.org/@types/tough-cookie/-/tough-cookie-4.0.2.tgz#6286b4c7228d58ab7866d19716f3696e03a09397"
-  integrity sha512-Q5vtl1W5ue16D+nIaW8JWebSSraJVlK+EthKn7e7UcD4KWsaSJ8BqGPXNaPghgtcn/fhvrN17Tv8ksUsQpiplw==
+  version "4.0.5"
+  resolved "https://registry.npmjs.org/@types/tough-cookie/-/tough-cookie-4.0.5.tgz#cb6e2a691b70cb177c6e3ae9c1d2e8b2ea8cd304"
+  integrity sha512-/Ad8+nIOV7Rl++6f1BdKxFSMgmoqEoYbHRpPcx3JEfv8VRsQe9Z4mCXeJBzxs7mbHY/XOZZuXlRNfhpVPbs6ZA==
 
 "@types/yargs-parser@*":
-  version "21.0.0"
-  resolved "https://registry.npmjs.org/@types/yargs-parser/-/yargs-parser-21.0.0.tgz#0c60e537fa790f5f9472ed2776c2b71ec117351b"
-  integrity sha512-iO9ZQHkZxHn4mSakYV0vFHAVDyEOIJQrV2uZ06HxEPcx+mt8swXoZHIbaaJ2crJYFfErySgktuTZ3BeLz+XmFA==
+  version "21.0.3"
+  resolved "https://registry.npmjs.org/@types/yargs-parser/-/yargs-parser-21.0.3.tgz#815e30b786d2e8f0dcd85fd5bcf5e1a04d008f15"
+  integrity sha512-I4q9QU9MQv4oEOz4tAHJtNz1cwuLxn2F3xcc2iV5WdqLPpUnj30aUuxt1mAxYTG+oe8CZMV/+6rU4S4gRDzqtQ==
 
 "@types/yargs@^17.0.8":
-  version "17.0.24"
-  resolved "https://registry.npmjs.org/@types/yargs/-/yargs-17.0.24.tgz#b3ef8d50ad4aa6aecf6ddc97c580a00f5aa11902"
-  integrity sha512-6i0aC7jV6QzQB8ne1joVZ0eSFIstHsCrobmOtghM11yGlH0j43FKL2UhWdELkyps0zuf7qVTUVCCR+tgSlyLLw==
+  version "17.0.32"
+  resolved "https://registry.npmjs.org/@types/yargs/-/yargs-17.0.32.tgz#030774723a2f7faafebf645f4e5a48371dca6229"
+  integrity sha512-xQ67Yc/laOG5uMfX/093MRlGGCIBzZMarVa+gfNKJxWAIgykYpVGkBdbqEzGDDfCrVUj6Hiff4mTZ5BA6TmAog==
   dependencies:
     "@types/yargs-parser" "*"
 
 "@typescript-eslint/eslint-plugin@^5.59.9":
-  version "5.60.0"
-  resolved "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-5.60.0.tgz#2f4bea6a3718bed2ba52905358d0f45cd3620d31"
-  integrity sha512-78B+anHLF1TI8Jn/cD0Q00TBYdMgjdOn980JfAVa9yw5sop8nyTfVOQAv6LWywkOGLclDBtv5z3oxN4w7jxyNg==
+  version "5.62.0"
+  resolved "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-5.62.0.tgz#aeef0328d172b9e37d9bab6dbc13b87ed88977db"
+  integrity sha512-TiZzBSJja/LbhNPvk6yc0JrX9XqhQ0hdh6M2svYfsHGejaKFIAGd9MQ+ERIMzLGlN/kZoYIgdxFV0PuljTKXag==
   dependencies:
     "@eslint-community/regexpp" "^4.4.0"
-    "@typescript-eslint/scope-manager" "5.60.0"
-    "@typescript-eslint/type-utils" "5.60.0"
-    "@typescript-eslint/utils" "5.60.0"
+    "@typescript-eslint/scope-manager" "5.62.0"
+    "@typescript-eslint/type-utils" "5.62.0"
+    "@typescript-eslint/utils" "5.62.0"
     debug "^4.3.4"
-    grapheme-splitter "^1.0.4"
+    graphemer "^1.4.0"
     ignore "^5.2.0"
     natural-compare-lite "^1.4.0"
     semver "^7.3.7"
     tsutils "^3.21.0"
 
 "@typescript-eslint/parser@^5.57.0":
-  version "5.60.0"
-  resolved "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-5.60.0.tgz#08f4daf5fc6548784513524f4f2f359cebb4068a"
-  integrity sha512-jBONcBsDJ9UoTWrARkRRCgDz6wUggmH5RpQVlt7BimSwaTkTjwypGzKORXbR4/2Hqjk9hgwlon2rVQAjWNpkyQ==
+  version "5.62.0"
+  resolved "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-5.62.0.tgz#1b63d082d849a2fcae8a569248fbe2ee1b8a56c7"
+  integrity sha512-VlJEV0fOQ7BExOsHYAGrgbEiZoi8D+Bl2+f6V2RrXerRSylnp+ZBHmPvaIa8cz0Ajx7WO7Z5RqfgYg7ED1nRhA==
   dependencies:
-    "@typescript-eslint/scope-manager" "5.60.0"
-    "@typescript-eslint/types" "5.60.0"
-    "@typescript-eslint/typescript-estree" "5.60.0"
+    "@typescript-eslint/scope-manager" "5.62.0"
+    "@typescript-eslint/types" "5.62.0"
+    "@typescript-eslint/typescript-estree" "5.62.0"
     debug "^4.3.4"
 
-"@typescript-eslint/scope-manager@5.60.0":
-  version "5.60.0"
-  resolved "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-5.60.0.tgz#ae511967b4bd84f1d5e179bb2c82857334941c1c"
-  integrity sha512-hakuzcxPwXi2ihf9WQu1BbRj1e/Pd8ZZwVTG9kfbxAMZstKz8/9OoexIwnmLzShtsdap5U/CoQGRCWlSuPbYxQ==
-  dependencies:
-    "@typescript-eslint/types" "5.60.0"
-    "@typescript-eslint/visitor-keys" "5.60.0"
-
 "@typescript-eslint/scope-manager@5.62.0":
   version "5.62.0"
   resolved "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-5.62.0.tgz#d9457ccc6a0b8d6b37d0eb252a23022478c5460c"
@@ -3115,39 +2541,21 @@
     "@typescript-eslint/types" "5.62.0"
     "@typescript-eslint/visitor-keys" "5.62.0"
 
-"@typescript-eslint/type-utils@5.60.0":
-  version "5.60.0"
-  resolved "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-5.60.0.tgz#69b09087eb12d7513d5b07747e7d47f5533aa228"
-  integrity sha512-X7NsRQddORMYRFH7FWo6sA9Y/zbJ8s1x1RIAtnlj6YprbToTiQnM6vxcMu7iYhdunmoC0rUWlca13D5DVHkK2g==
+"@typescript-eslint/type-utils@5.62.0":
+  version "5.62.0"
+  resolved "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-5.62.0.tgz#286f0389c41681376cdad96b309cedd17d70346a"
+  integrity sha512-xsSQreu+VnfbqQpW5vnCJdq1Z3Q0U31qiWmRhr98ONQmcp/yhiPJFPq8MXiJVLiksmOKSjIldZzkebzHuCGzew==
   dependencies:
-    "@typescript-eslint/typescript-estree" "5.60.0"
-    "@typescript-eslint/utils" "5.60.0"
+    "@typescript-eslint/typescript-estree" "5.62.0"
+    "@typescript-eslint/utils" "5.62.0"
     debug "^4.3.4"
     tsutils "^3.21.0"
 
-"@typescript-eslint/types@5.60.0":
-  version "5.60.0"
-  resolved "https://registry.npmjs.org/@typescript-eslint/types/-/types-5.60.0.tgz#3179962b28b4790de70e2344465ec97582ce2558"
-  integrity sha512-ascOuoCpNZBccFVNJRSC6rPq4EmJ2NkuoKnd6LDNyAQmdDnziAtxbCGWCbefG1CNzmDvd05zO36AmB7H8RzKPA==
-
 "@typescript-eslint/types@5.62.0":
   version "5.62.0"
   resolved "https://registry.npmjs.org/@typescript-eslint/types/-/types-5.62.0.tgz#258607e60effa309f067608931c3df6fed41fd2f"
   integrity sha512-87NVngcbVXUahrRTqIK27gD2t5Cu1yuCXxbLcFtCzZGlfyVWWh8mLHkoxzjsB6DDNnvdL+fW8MiwPEJyGJQDgQ==
 
-"@typescript-eslint/typescript-estree@5.60.0":
-  version "5.60.0"
-  resolved "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-5.60.0.tgz#4ddf1a81d32a850de66642d9b3ad1e3254fb1600"
-  integrity sha512-R43thAuwarC99SnvrBmh26tc7F6sPa2B3evkXp/8q954kYL6Ro56AwASYWtEEi+4j09GbiNAHqYwNNZuNlARGQ==
-  dependencies:
-    "@typescript-eslint/types" "5.60.0"
-    "@typescript-eslint/visitor-keys" "5.60.0"
-    debug "^4.3.4"
-    globby "^11.1.0"
-    is-glob "^4.0.3"
-    semver "^7.3.7"
-    tsutils "^3.21.0"
-
 "@typescript-eslint/typescript-estree@5.62.0":
   version "5.62.0"
   resolved "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-5.62.0.tgz#7d17794b77fabcac615d6a48fb143330d962eb9b"
@@ -3161,21 +2569,7 @@
     semver "^7.3.7"
     tsutils "^3.21.0"
 
-"@typescript-eslint/utils@5.60.0":
-  version "5.60.0"
-  resolved "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-5.60.0.tgz#4667c5aece82f9d4f24a667602f0f300864b554c"
-  integrity sha512-ba51uMqDtfLQ5+xHtwlO84vkdjrqNzOnqrnwbMHMRY8Tqeme8C2Q8Fc7LajfGR+e3/4LoYiWXUM6BpIIbHJ4hQ==
-  dependencies:
-    "@eslint-community/eslint-utils" "^4.2.0"
-    "@types/json-schema" "^7.0.9"
-    "@types/semver" "^7.3.12"
-    "@typescript-eslint/scope-manager" "5.60.0"
-    "@typescript-eslint/types" "5.60.0"
-    "@typescript-eslint/typescript-estree" "5.60.0"
-    eslint-scope "^5.1.1"
-    semver "^7.3.7"
-
-"@typescript-eslint/utils@^5.10.0":
+"@typescript-eslint/utils@5.62.0", "@typescript-eslint/utils@^5.10.0":
   version "5.62.0"
   resolved "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-5.62.0.tgz#141e809c71636e4a75daa39faed2fb5f4b10df86"
   integrity sha512-n8oxjeb5aIbPFEtmQxQYOLI0i9n5ySBEY/ZEHHZqKQSFnxio1rv6dthascc9dLuwrL0RC5mPCxB7vnAVGAYWAQ==
@@ -3189,14 +2583,6 @@
     eslint-scope "^5.1.1"
     semver "^7.3.7"
 
-"@typescript-eslint/visitor-keys@5.60.0":
-  version "5.60.0"
-  resolved "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-5.60.0.tgz#b48b29da3f5f31dd1656281727004589d2722a66"
-  integrity sha512-wm9Uz71SbCyhUKgcaPRauBdTegUyY/ZWl8gLwD/i/ybJqscrrdVSFImpvUz16BLPChIeKBK5Fa9s6KDQjsjyWw==
-  dependencies:
-    "@typescript-eslint/types" "5.60.0"
-    eslint-visitor-keys "^3.3.0"
-
 "@typescript-eslint/visitor-keys@5.62.0":
   version "5.62.0"
   resolved "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-5.62.0.tgz#2174011917ce582875954ffe2f6912d5931e353e"
@@ -3205,6 +2591,11 @@
     "@typescript-eslint/types" "5.62.0"
     eslint-visitor-keys "^3.3.0"
 
+"@ungap/structured-clone@^1.2.0":
+  version "1.2.0"
+  resolved "https://registry.npmjs.org/@ungap/structured-clone/-/structured-clone-1.2.0.tgz#756641adb587851b5ccb3e095daf27ae581c8406"
+  integrity sha512-zuVdFrMJiuCDQUMCzQaD6KL28MjnqqN8XnAqiEq9PNm/hCPTSGfrXCOfwj1ow4LFb/tNymJPwsNbVePc1xFqrQ==
+
 "@vusion/webfonts-generator@^0.8.0":
   version "0.8.0"
   resolved "https://registry.npmjs.org/@vusion/webfonts-generator/-/webfonts-generator-0.8.0.tgz#3ff41b9ec4b83decd87650637ee050741741e794"
@@ -3221,10 +2612,10 @@
     underscore "^1.9.1"
     url-join "^4.0.0"
 
-"@webassemblyjs/ast@1.11.6", "@webassemblyjs/ast@^1.11.5":
-  version "1.11.6"
-  resolved "https://registry.npmjs.org/@webassemblyjs/ast/-/ast-1.11.6.tgz#db046555d3c413f8966ca50a95176a0e2c642e24"
-  integrity sha512-IN1xI7PwOvLPgjcf180gC1bqn3q/QaOCwYUahIOhbYUu8KA/3tw2RT/T0Gidi1l7Hhj5D/INhJxiICObqpMu4Q==
+"@webassemblyjs/ast@1.12.1", "@webassemblyjs/ast@^1.12.1":
+  version "1.12.1"
+  resolved "https://registry.npmjs.org/@webassemblyjs/ast/-/ast-1.12.1.tgz#bb16a0e8b1914f979f45864c23819cc3e3f0d4bb"
+  integrity sha512-EKfMUOPRRUTy5UII4qJDGPpqfwjOmZ5jeGFwid9mnoqIFK+e0vqoi1qH56JpmZSzEL53jKnNzScdmftJyG5xWg==
   dependencies:
     "@webassemblyjs/helper-numbers" "1.11.6"
     "@webassemblyjs/helper-wasm-bytecode" "1.11.6"
@@ -3239,10 +2630,10 @@
   resolved "https://registry.npmjs.org/@webassemblyjs/helper-api-error/-/helper-api-error-1.11.6.tgz#6132f68c4acd59dcd141c44b18cbebbd9f2fa768"
   integrity sha512-o0YkoP4pVu4rN8aTJgAyj9hC2Sv5UlkzCHhxqWj8butaLvnpdc2jOwh4ewE6CX0txSfLn/UYaV/pheS2Txg//Q==
 
-"@webassemblyjs/helper-buffer@1.11.6":
-  version "1.11.6"
-  resolved "https://registry.npmjs.org/@webassemblyjs/helper-buffer/-/helper-buffer-1.11.6.tgz#b66d73c43e296fd5e88006f18524feb0f2c7c093"
-  integrity sha512-z3nFzdcp1mb8nEOFFk8DrYLpHvhKC3grJD2ardfKOzmbmJvEf/tPIqCY+sNcwZIY8ZD7IkB2l7/pqhUhqm7hLA==
+"@webassemblyjs/helper-buffer@1.12.1":
+  version "1.12.1"
+  resolved "https://registry.npmjs.org/@webassemblyjs/helper-buffer/-/helper-buffer-1.12.1.tgz#6df20d272ea5439bf20ab3492b7fb70e9bfcb3f6"
+  integrity sha512-nzJwQw99DNDKr9BVCOZcLuJJUlqkJh+kVzVl6Fmq/tI5ZtEyWT1KZMyOXltXLZJmDtvLCDgwsyrkohEtopTXCw==
 
 "@webassemblyjs/helper-numbers@1.11.6":
   version "1.11.6"
@@ -3258,15 +2649,15 @@
   resolved "https://registry.npmjs.org/@webassemblyjs/helper-wasm-bytecode/-/helper-wasm-bytecode-1.11.6.tgz#bb2ebdb3b83aa26d9baad4c46d4315283acd51e9"
   integrity sha512-sFFHKwcmBprO9e7Icf0+gddyWYDViL8bpPjJJl0WHxCdETktXdmtWLGVzoHbqUcY4Be1LkNfwTmXOJUFZYSJdA==
 
-"@webassemblyjs/helper-wasm-section@1.11.6":
-  version "1.11.6"
-  resolved "https://registry.npmjs.org/@webassemblyjs/helper-wasm-section/-/helper-wasm-section-1.11.6.tgz#ff97f3863c55ee7f580fd5c41a381e9def4aa577"
-  integrity sha512-LPpZbSOwTpEC2cgn4hTydySy1Ke+XEu+ETXuoyvuyezHO3Kjdu90KK95Sh9xTbmjrCsUwvWwCOQQNta37VrS9g==
+"@webassemblyjs/helper-wasm-section@1.12.1":
+  version "1.12.1"
+  resolved "https://registry.npmjs.org/@webassemblyjs/helper-wasm-section/-/helper-wasm-section-1.12.1.tgz#3da623233ae1a60409b509a52ade9bc22a37f7bf"
+  integrity sha512-Jif4vfB6FJlUlSbgEMHUyk1j234GTNG9dBJ4XJdOySoj518Xj0oGsNi59cUQF4RRMS9ouBUxDDdyBVfPTypa5g==
   dependencies:
-    "@webassemblyjs/ast" "1.11.6"
-    "@webassemblyjs/helper-buffer" "1.11.6"
+    "@webassemblyjs/ast" "1.12.1"
+    "@webassemblyjs/helper-buffer" "1.12.1"
     "@webassemblyjs/helper-wasm-bytecode" "1.11.6"
-    "@webassemblyjs/wasm-gen" "1.11.6"
+    "@webassemblyjs/wasm-gen" "1.12.1"
 
 "@webassemblyjs/ieee754@1.11.6":
   version "1.11.6"
@@ -3287,59 +2678,59 @@
   resolved "https://registry.npmjs.org/@webassemblyjs/utf8/-/utf8-1.11.6.tgz#90f8bc34c561595fe156603be7253cdbcd0fab5a"
   integrity sha512-vtXf2wTQ3+up9Zsg8sa2yWiQpzSsMyXj0qViVP6xKGCUT8p8YJ6HqI7l5eCnWx1T/FYdsv07HQs2wTFbbof/RA==
 
-"@webassemblyjs/wasm-edit@^1.11.5":
-  version "1.11.6"
-  resolved "https://registry.npmjs.org/@webassemblyjs/wasm-edit/-/wasm-edit-1.11.6.tgz#c72fa8220524c9b416249f3d94c2958dfe70ceab"
-  integrity sha512-Ybn2I6fnfIGuCR+Faaz7YcvtBKxvoLV3Lebn1tM4o/IAJzmi9AWYIPWpyBfU8cC+JxAO57bk4+zdsTjJR+VTOw==
+"@webassemblyjs/wasm-edit@^1.12.1":
+  version "1.12.1"
+  resolved "https://registry.npmjs.org/@webassemblyjs/wasm-edit/-/wasm-edit-1.12.1.tgz#9f9f3ff52a14c980939be0ef9d5df9ebc678ae3b"
+  integrity sha512-1DuwbVvADvS5mGnXbE+c9NfA8QRcZ6iKquqjjmR10k6o+zzsRVesil54DKexiowcFCPdr/Q0qaMgB01+SQ1u6g==
   dependencies:
-    "@webassemblyjs/ast" "1.11.6"
-    "@webassemblyjs/helper-buffer" "1.11.6"
+    "@webassemblyjs/ast" "1.12.1"
+    "@webassemblyjs/helper-buffer" "1.12.1"
     "@webassemblyjs/helper-wasm-bytecode" "1.11.6"
-    "@webassemblyjs/helper-wasm-section" "1.11.6"
-    "@webassemblyjs/wasm-gen" "1.11.6"
-    "@webassemblyjs/wasm-opt" "1.11.6"
-    "@webassemblyjs/wasm-parser" "1.11.6"
-    "@webassemblyjs/wast-printer" "1.11.6"
-
-"@webassemblyjs/wasm-gen@1.11.6":
-  version "1.11.6"
-  resolved "https://registry.npmjs.org/@webassemblyjs/wasm-gen/-/wasm-gen-1.11.6.tgz#fb5283e0e8b4551cc4e9c3c0d7184a65faf7c268"
-  integrity sha512-3XOqkZP/y6B4F0PBAXvI1/bky7GryoogUtfwExeP/v7Nzwo1QLcq5oQmpKlftZLbT+ERUOAZVQjuNVak6UXjPA==
-  dependencies:
-    "@webassemblyjs/ast" "1.11.6"
+    "@webassemblyjs/helper-wasm-section" "1.12.1"
+    "@webassemblyjs/wasm-gen" "1.12.1"
+    "@webassemblyjs/wasm-opt" "1.12.1"
+    "@webassemblyjs/wasm-parser" "1.12.1"
+    "@webassemblyjs/wast-printer" "1.12.1"
+
+"@webassemblyjs/wasm-gen@1.12.1":
+  version "1.12.1"
+  resolved "https://registry.npmjs.org/@webassemblyjs/wasm-gen/-/wasm-gen-1.12.1.tgz#a6520601da1b5700448273666a71ad0a45d78547"
+  integrity sha512-TDq4Ojh9fcohAw6OIMXqiIcTq5KUXTGRkVxbSo1hQnSy6lAM5GSdfwWeSxpAo0YzgsgF182E/U0mDNhuA0tW7w==
+  dependencies:
+    "@webassemblyjs/ast" "1.12.1"
     "@webassemblyjs/helper-wasm-bytecode" "1.11.6"
     "@webassemblyjs/ieee754" "1.11.6"
     "@webassemblyjs/leb128" "1.11.6"
     "@webassemblyjs/utf8" "1.11.6"
 
-"@webassemblyjs/wasm-opt@1.11.6":
-  version "1.11.6"
-  resolved "https://registry.npmjs.org/@webassemblyjs/wasm-opt/-/wasm-opt-1.11.6.tgz#d9a22d651248422ca498b09aa3232a81041487c2"
-  integrity sha512-cOrKuLRE7PCe6AsOVl7WasYf3wbSo4CeOk6PkrjS7g57MFfVUF9u6ysQBBODX0LdgSvQqRiGz3CXvIDKcPNy4g==
+"@webassemblyjs/wasm-opt@1.12.1":
+  version "1.12.1"
+  resolved "https://registry.npmjs.org/@webassemblyjs/wasm-opt/-/wasm-opt-1.12.1.tgz#9e6e81475dfcfb62dab574ac2dda38226c232bc5"
+  integrity sha512-Jg99j/2gG2iaz3hijw857AVYekZe2SAskcqlWIZXjji5WStnOpVoat3gQfT/Q5tb2djnCjBtMocY/Su1GfxPBg==
   dependencies:
-    "@webassemblyjs/ast" "1.11.6"
-    "@webassemblyjs/helper-buffer" "1.11.6"
-    "@webassemblyjs/wasm-gen" "1.11.6"
-    "@webassemblyjs/wasm-parser" "1.11.6"
+    "@webassemblyjs/ast" "1.12.1"
+    "@webassemblyjs/helper-buffer" "1.12.1"
+    "@webassemblyjs/wasm-gen" "1.12.1"
+    "@webassemblyjs/wasm-parser" "1.12.1"
 
-"@webassemblyjs/wasm-parser@1.11.6", "@webassemblyjs/wasm-parser@^1.11.5":
-  version "1.11.6"
-  resolved "https://registry.npmjs.org/@webassemblyjs/wasm-parser/-/wasm-parser-1.11.6.tgz#bb85378c527df824004812bbdb784eea539174a1"
-  integrity sha512-6ZwPeGzMJM3Dqp3hCsLgESxBGtT/OeCvCZ4TA1JUPYgmhAx38tTPR9JaKy0S5H3evQpO/h2uWs2j6Yc/fjkpTQ==
+"@webassemblyjs/wasm-parser@1.12.1", "@webassemblyjs/wasm-parser@^1.12.1":
+  version "1.12.1"
+  resolved "https://registry.npmjs.org/@webassemblyjs/wasm-parser/-/wasm-parser-1.12.1.tgz#c47acb90e6f083391e3fa61d113650eea1e95937"
+  integrity sha512-xikIi7c2FHXysxXe3COrVUPSheuBtpcfhbpFj4gmu7KRLYOzANztwUU0IbsqvMqzuNK2+glRGWCEqZo1WCLyAQ==
   dependencies:
-    "@webassemblyjs/ast" "1.11.6"
+    "@webassemblyjs/ast" "1.12.1"
     "@webassemblyjs/helper-api-error" "1.11.6"
     "@webassemblyjs/helper-wasm-bytecode" "1.11.6"
     "@webassemblyjs/ieee754" "1.11.6"
     "@webassemblyjs/leb128" "1.11.6"
     "@webassemblyjs/utf8" "1.11.6"
 
-"@webassemblyjs/wast-printer@1.11.6":
-  version "1.11.6"
-  resolved "https://registry.npmjs.org/@webassemblyjs/wast-printer/-/wast-printer-1.11.6.tgz#a7bf8dd7e362aeb1668ff43f35cb849f188eff20"
-  integrity sha512-JM7AhRcE+yW2GWYaKeHL5vt4xqee5N2WcezptmgyhNS+ScggqcT1OtXykhAb13Sn5Yas0j2uv9tHgrjwvzAP4A==
+"@webassemblyjs/wast-printer@1.12.1":
+  version "1.12.1"
+  resolved "https://registry.npmjs.org/@webassemblyjs/wast-printer/-/wast-printer-1.12.1.tgz#bcecf661d7d1abdaf989d8341a4833e33e2b31ac"
+  integrity sha512-+X4WAlOisVWQMikjbcvY2e0rwPsKQ9F688lksZhBcPycBBuii3O7m8FACbDMWDojpAqvjIncrG8J0XHKyQfVeA==
   dependencies:
-    "@webassemblyjs/ast" "1.11.6"
+    "@webassemblyjs/ast" "1.12.1"
     "@xtuc/long" "4.2.2"
 
 "@webpack-cli/configtest@^1.2.0":
@@ -3360,9 +2751,9 @@
   integrity sha512-oxnCNGj88fL+xzV+dacXs44HcDwf1ovs3AuEzvP7mqXw7fQntqIhQ1BRmynh4qEKQSSSRSWVyXRjmTbZIX9V2Q==
 
 "@xmldom/xmldom@^0.7.2":
-  version "0.7.11"
-  resolved "https://registry.npmjs.org/@xmldom/xmldom/-/xmldom-0.7.11.tgz#adecc134521274711d071d5b0200907cc83b38ee"
-  integrity sha512-UDi3g6Jss/W5FnSzO9jCtQwEpfymt0M+sPPlmLhDH6h2TJ8j4ESE/LpmNPBij15J5NKkk4/cg/qoVMdWI3vnlQ==
+  version "0.7.13"
+  resolved "https://registry.npmjs.org/@xmldom/xmldom/-/xmldom-0.7.13.tgz#ff34942667a4e19a9f4a0996a76814daac364cf3"
+  integrity sha512-lm2GW5PkosIzccsaZIz7tp8cPADSIlIHWDFTR1N0SzfinhhYgeIQjFMz4rYzanCScr3DqQLeomUDArp6MWKm+g==
 
 "@xtuc/ieee754@^1.2.0":
   version "1.2.0"
@@ -3392,10 +2783,15 @@ abbrev@^1.0.0:
   resolved "https://registry.npmjs.org/abbrev/-/abbrev-1.1.1.tgz#f8f2c887ad10bf67f634f005b6987fed3179aac8"
   integrity sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q==
 
-ace-builds@^1.20.0:
-  version "1.23.0"
-  resolved "https://registry.npmjs.org/ace-builds/-/ace-builds-1.23.0.tgz#971bba11ba99cefaa38cf9443d7e9a68ddb3a400"
-  integrity sha512-PKRuQaQkjIhg1zeqJPW1QFtJO2fx13Nlv7N/VLhQS/kIQ/2aGAgWvYVcE9X64gbSiLzPdY3jcxv5wJJpLj1gLw==
+abbrev@^2.0.0:
+  version "2.0.0"
+  resolved "https://registry.npmjs.org/abbrev/-/abbrev-2.0.0.tgz#cf59829b8b4f03f89dda2771cb7f3653828c89bf"
+  integrity sha512-6/mh1E2u2YgEsCHdY0Yx5oW+61gZU+1vXaoiHHrpKeuRNNgFvS+/jrwHiQhB5apAf5oB7UB7E19ol2R2LKH8hQ==
+
+ace-builds@^1.31.1:
+  version "1.33.0"
+  resolved "https://registry.npmjs.org/ace-builds/-/ace-builds-1.33.0.tgz#3b6fb993a4b1d3f2b5923aecded098e13e6527d8"
+  integrity sha512-PDvytkZNvAfuh+PaP5Oy3l3sBGd7xMk4NsB+4w/w1e3gjBqEOGeJwcX+wF/SB6mLtT3VfJLrhDNPT3eaCjtR3w==
 
 acorn-globals@^7.0.0:
   version "7.0.1"
@@ -3430,24 +2826,19 @@ acorn-walk@^7.0.0:
   integrity sha512-OPdCF6GsMIP+Az+aWfAAOEt2/+iVDKE7oy6lJ098aoe59oAmK76qV6Gw60SbZ8jHuG2wH058GF4pLFbYamYrVA==
 
 "acorn-walk@^8.0.0", "acorn-walk@^8.0.2":
-  version "8.2.0"
-  resolved "https://registry.npmjs.org/acorn-walk/-/acorn-walk-8.2.0.tgz#741210f2e2426454508853a2f44d0ab83b7f69c1"
-  integrity sha512-k+iyHEuPgSw6SbuDpGQM+06HQUa04DZ3o+F6CSzXMvvI5KMvnaEqXe+YVe555R9nn6GPt404fos4wcgpw12SDA==
+  version "8.3.2"
+  resolved "https://registry.npmjs.org/acorn-walk/-/acorn-walk-8.3.2.tgz#7703af9415f1b6db9315d6895503862e231d34aa"
+  integrity sha512-cjkyv4OtNCIeqhHrfS81QWXoCBPExR/J62oyEqepVw8WaQeSqpW2uhuLPh1m9eWhDuOo/jUXVTlifvesOWp/4A==
 
 acorn@^7.0.0:
   version "7.4.1"
   resolved "https://registry.npmjs.org/acorn/-/acorn-7.4.1.tgz#feaed255973d2e77555b83dbc08851a6c63520fa"
   integrity sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A==
 
-"acorn@^8.0.4", "acorn@^8.7.1", "acorn@^8.8.0", "acorn@^8.8.2":
-  version "8.9.0"
-  resolved "https://registry.npmjs.org/acorn/-/acorn-8.9.0.tgz#78a16e3b2bcc198c10822786fa6679e245db5b59"
-  integrity sha512-jaVNAFBHNLXspO543WnNNPZFRtavh3skAkITqD0/2aeMkKZTN+254PyhwxFYrk3vQ1xfY+2wbesJMs/JC8/PwQ==
-
-"acorn@^8.1.0", "acorn@^8.8.1":
-  version "8.10.0"
-  resolved "https://registry.npmjs.org/acorn/-/acorn-8.10.0.tgz#8be5b3907a67221a81ab23c7889c4c5526b62ec5"
-  integrity sha512-F0SAmZ8iUtS//m8DmCTA0jlh6TDKkHQyK6xc6V4KDTyZKA9dnvX9/3sRTVQrWm79glUAZbnmmNcdYwUIHWVybw==
+"acorn@^8.0.4", "acorn@^8.1.0", "acorn@^8.7.1", "acorn@^8.8.1", "acorn@^8.8.2", "acorn@^8.9.0":
+  version "8.11.3"
+  resolved "https://registry.npmjs.org/acorn/-/acorn-8.11.3.tgz#71e0b14e13a4ec160724b38fb7b0f233b1b81d7a"
+  integrity sha512-Y9rRfJG5jcKOE0CLisYbojUjIrIEE7AGMzA/Sm4BslANhbS+cDMpgBdcPT91oJ7OuJ9hYJBx59RjbhxVnrF8Xg==
 
 "agent-base@6", "agent-base@^6.0.2":
   version "6.0.2"
@@ -3456,13 +2847,18 @@ acorn@^7.0.0:
   dependencies:
     debug 4
 
+"agent-base@^7.0.2", "agent-base@^7.1.0", "agent-base@^7.1.1":
+  version "7.1.1"
+  resolved "https://registry.npmjs.org/agent-base/-/agent-base-7.1.1.tgz#bdbded7dfb096b751a2a087eeeb9664725b2e317"
+  integrity sha512-H0TSyFNDMomMNJQBn8wFV5YC/2eJ+VXECwOadZJT554xP6cODZHPX3H9QMQECxvrgiSOP1pHjy1sMWQVYJOUOA==
+  dependencies:
+    debug "^4.3.4"
+
 agentkeepalive@^4.2.1:
-  version "4.3.0"
-  resolved "https://registry.npmjs.org/agentkeepalive/-/agentkeepalive-4.3.0.tgz#bb999ff07412653c1803b3ced35e50729830a255"
-  integrity sha512-7Epl1Blf4Sy37j4v9f9FjICCh4+KAQOyXgHEwlyBiAQLbhKdq/i2QQU3amQalS/wPhdPzDXPL5DMR5bkn+YeWg==
+  version "4.5.0"
+  resolved "https://registry.npmjs.org/agentkeepalive/-/agentkeepalive-4.5.0.tgz#2673ad1389b3c418c5a20c5d7364f93ca04be923"
+  integrity sha512-5GG/5IbQQpC9FpkRGsSvZI5QYeSCzlJHdpBQntCsuTOxhKD8lqKhrleg2Yi7yvMIf82Ycmmqln9U8V9qwEiJew==
   dependencies:
-    debug "^4.1.0"
-    depd "^2.0.0"
     humanize-ms "^1.2.1"
 
 aggregate-error@^3.0.0:
@@ -3492,7 +2888,7 @@ ajv-keywords@^5.1.0:
   dependencies:
     fast-deep-equal "^3.1.3"
 
-"ajv@^6.10.0", "ajv@^6.12.4", "ajv@^6.12.5", "ajv@^6.12.6":
+"ajv@^6.12.4", "ajv@^6.12.5", "ajv@^6.12.6":
   version "6.12.6"
   resolved "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz#baf5a62e802b07d977034586f8c3baf5adf26df4"
   integrity sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==
@@ -3561,7 +2957,7 @@ anti-trojan-source@^1.4.0:
     globby "^12.0.2"
     meow "^10.1.1"
 
-"anymatch@^3.0.3", "anymatch@~3.1.2":
+anymatch@^3.0.3:
   version "3.1.3"
   resolved "https://registry.npmjs.org/anymatch/-/anymatch-3.1.3.tgz#790c58b19ba1720a84205b57c618d5ad8524973e"
   integrity sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==
@@ -3620,23 +3016,24 @@ aria-query@^5.0.0:
   dependencies:
     dequal "^2.0.3"
 
-array-buffer-byte-length@^1.0.0:
-  version "1.0.0"
-  resolved "https://registry.npmjs.org/array-buffer-byte-length/-/array-buffer-byte-length-1.0.0.tgz#fabe8bc193fea865f317fe7807085ee0dee5aead"
-  integrity sha512-LPuwb2P+NrQw3XhxGc36+XSvuBPopovXYTR9Ew++Du9Yb/bx5AzBfrIsBoj0EZUifjQU+sHL21sseZ3jerWO/A==
-  dependencies:
-    call-bind "^1.0.2"
-    is-array-buffer "^3.0.1"
-
-"array-includes@^3.1.5", "array-includes@^3.1.6":
-  version "3.1.6"
-  resolved "https://registry.npmjs.org/array-includes/-/array-includes-3.1.6.tgz#9e9e720e194f198266ba9e18c29e6a9b0e4b225f"
-  integrity sha512-sgTbLvL6cNnw24FnbaDyjmvddQ2ML8arZsgaJhoABMoplz/4QRhtrYS+alr1BUM1Bwp6dhx8vVCBSLG+StwOFw==
-  dependencies:
-    call-bind "^1.0.2"
-    define-properties "^1.1.4"
-    es-abstract "^1.20.4"
-    get-intrinsic "^1.1.3"
+"array-buffer-byte-length@^1.0.0", "array-buffer-byte-length@^1.0.1":
+  version "1.0.1"
+  resolved "https://registry.npmjs.org/array-buffer-byte-length/-/array-buffer-byte-length-1.0.1.tgz#1e5583ec16763540a27ae52eed99ff899223568f"
+  integrity sha512-ahC5W1xgou+KTXix4sAO8Ki12Q+jf4i0+tmk3sC+zgcynshkHxzpXdImBehiUYKKKDwvfFiJl1tZt6ewscS1Mg==
+  dependencies:
+    call-bind "^1.0.5"
+    is-array-buffer "^3.0.4"
+
+"array-includes@^3.1.6", "array-includes@^3.1.7":
+  version "3.1.8"
+  resolved "https://registry.npmjs.org/array-includes/-/array-includes-3.1.8.tgz#5e370cbe172fdd5dd6530c1d4aadda25281ba97d"
+  integrity sha512-itaWrbYbqpGXkGhZPGUulwnhVf5Hpy1xiCFsGqyIGglbBxmG5vSjxQen3/WGOjPpNEv1RtBLKxbmVXm8HpJStQ==
+  dependencies:
+    call-bind "^1.0.7"
+    define-properties "^1.2.1"
+    es-abstract "^1.23.2"
+    es-object-atoms "^1.0.0"
+    get-intrinsic "^1.2.4"
     is-string "^1.0.7"
 
 array-union@^2.1.0:
@@ -3649,37 +3046,71 @@ array-union@^3.0.1:
   resolved "https://registry.npmjs.org/array-union/-/array-union-3.0.1.tgz#da52630d327f8b88cfbfb57728e2af5cd9b6b975"
   integrity sha512-1OvF9IbWwaeiM9VhzYXVQacMibxpXOMYVNIvMtKRyX9SImBXpKcFr8XvFDeEslCyuH/t6KRt7HEO94AlP8Iatw==
 
-array.prototype.flatmap@^1.3.1:
-  version "1.3.1"
-  resolved "https://registry.npmjs.org/array.prototype.flatmap/-/array.prototype.flatmap-1.3.1.tgz#1aae7903c2100433cb8261cd4ed310aab5c4a183"
-  integrity sha512-8UGn9O1FDVvMNB0UlLv4voxRMze7+FpHyF5mSMRjWHUMlpoDViniy05870VlxhfgTnLbpuwTzvD76MTtWxB/mQ==
+array.prototype.findlast@^1.2.4:
+  version "1.2.5"
+  resolved "https://registry.npmjs.org/array.prototype.findlast/-/array.prototype.findlast-1.2.5.tgz#3e4fbcb30a15a7f5bf64cf2faae22d139c2e4904"
+  integrity sha512-CVvd6FHg1Z3POpBLxO6E6zr+rSKEQ9L6rZHAaY7lLfhKsWYUBBOuMs0e9o24oopj6H+geRCX0YJ+TJLBK2eHyQ==
+  dependencies:
+    call-bind "^1.0.7"
+    define-properties "^1.2.1"
+    es-abstract "^1.23.2"
+    es-errors "^1.3.0"
+    es-object-atoms "^1.0.0"
+    es-shim-unscopables "^1.0.2"
+
+array.prototype.flat@^1.3.1:
+  version "1.3.2"
+  resolved "https://registry.npmjs.org/array.prototype.flat/-/array.prototype.flat-1.3.2.tgz#1476217df8cff17d72ee8f3ba06738db5b387d18"
+  integrity sha512-djYB+Zx2vLewY8RWlNCUdHjDXs2XOgm602S9E7P/UpHgfeHL00cRiIF+IN/G/aUJ7kGPb6yO/ErDI5V2s8iycA==
   dependencies:
     call-bind "^1.0.2"
-    define-properties "^1.1.4"
-    es-abstract "^1.20.4"
+    define-properties "^1.2.0"
+    es-abstract "^1.22.1"
     es-shim-unscopables "^1.0.0"
 
-array.prototype.tosorted@^1.1.1:
-  version "1.1.1"
-  resolved "https://registry.npmjs.org/array.prototype.tosorted/-/array.prototype.tosorted-1.1.1.tgz#ccf44738aa2b5ac56578ffda97c03fd3e23dd532"
-  integrity sha512-pZYPXPRl2PqWcsUs6LOMn+1f1532nEoPTYowBtqLwAW+W8vSVhkIGnmOX1t/UQjD6YGI0vcD2B1U7ZFGQH9jnQ==
+array.prototype.flatmap@^1.3.2:
+  version "1.3.2"
+  resolved "https://registry.npmjs.org/array.prototype.flatmap/-/array.prototype.flatmap-1.3.2.tgz#c9a7c6831db8e719d6ce639190146c24bbd3e527"
+  integrity sha512-Ewyx0c9PmpcsByhSW4r+9zDU7sGjFc86qf/kKtuSCRdhfbk0SNLLkaT5qvcHnRGgc5NP/ly/y+qkXkqONX54CQ==
   dependencies:
     call-bind "^1.0.2"
-    define-properties "^1.1.4"
-    es-abstract "^1.20.4"
+    define-properties "^1.2.0"
+    es-abstract "^1.22.1"
     es-shim-unscopables "^1.0.0"
-    get-intrinsic "^1.1.3"
 
-arraybuffer.prototype.slice@^1.0.1:
-  version "1.0.1"
-  resolved "https://registry.npmjs.org/arraybuffer.prototype.slice/-/arraybuffer.prototype.slice-1.0.1.tgz#9b5ea3868a6eebc30273da577eb888381c0044bb"
-  integrity sha512-09x0ZWFEjj4WD8PDbykUwo3t9arLn8NIzmmYEJFpYekOAQjpkGSyrQhNoRTcwwcFRu+ycWF78QZ63oWTqSjBcw==
+array.prototype.toreversed@^1.1.2:
+  version "1.1.2"
+  resolved "https://registry.npmjs.org/array.prototype.toreversed/-/array.prototype.toreversed-1.1.2.tgz#b989a6bf35c4c5051e1dc0325151bf8088954eba"
+  integrity sha512-wwDCoT4Ck4Cz7sLtgUmzR5UV3YF5mFHUlbChCzZBQZ+0m2cl/DH3tKgvphv1nKgFsJ48oCSg6p91q2Vm0I/ZMA==
   dependencies:
-    array-buffer-byte-length "^1.0.0"
     call-bind "^1.0.2"
     define-properties "^1.2.0"
-    get-intrinsic "^1.2.1"
-    is-array-buffer "^3.0.2"
+    es-abstract "^1.22.1"
+    es-shim-unscopables "^1.0.0"
+
+array.prototype.tosorted@^1.1.3:
+  version "1.1.3"
+  resolved "https://registry.npmjs.org/array.prototype.tosorted/-/array.prototype.tosorted-1.1.3.tgz#c8c89348337e51b8a3c48a9227f9ce93ceedcba8"
+  integrity sha512-/DdH4TiTmOKzyQbp/eadcCVexiCb36xJg7HshYOYJnNZFDj33GEv0P7GxsynpShhq4OLYJzbGcBDkLsDt7MnNg==
+  dependencies:
+    call-bind "^1.0.5"
+    define-properties "^1.2.1"
+    es-abstract "^1.22.3"
+    es-errors "^1.1.0"
+    es-shim-unscopables "^1.0.2"
+
+arraybuffer.prototype.slice@^1.0.3:
+  version "1.0.3"
+  resolved "https://registry.npmjs.org/arraybuffer.prototype.slice/-/arraybuffer.prototype.slice-1.0.3.tgz#097972f4255e41bc3425e37dc3f6421cf9aefde6"
+  integrity sha512-bMxMKAjg13EBSVscxTaYA4mRc5t1UAXa2kXiGTNfZ079HIWXEkKmkgFrh/nJqamaLSrXO5H4WFFkPEaLJWbs3A==
+  dependencies:
+    array-buffer-byte-length "^1.0.1"
+    call-bind "^1.0.5"
+    define-properties "^1.2.1"
+    es-abstract "^1.22.3"
+    es-errors "^1.2.1"
+    get-intrinsic "^1.2.3"
+    is-array-buffer "^3.0.4"
     is-shared-array-buffer "^1.0.2"
 
 arrify@^1.0.1:
@@ -3687,15 +3118,14 @@ arrify@^1.0.1:
   resolved "https://registry.npmjs.org/arrify/-/arrify-1.0.1.tgz#898508da2226f380df904728456849c1501a4b0d"
   integrity sha512-3CYzex9M9FGQjCGMGyi6/31c8GJbgb0qGyrx5HWxPd0aCwh4cB2YjMb2Xf9UuoogrMrlO9cTqnB5rI5GHZTcUA==
 
-asn1.js@^5.2.0:
-  version "5.4.1"
-  resolved "https://registry.npmjs.org/asn1.js/-/asn1.js-5.4.1.tgz#11a980b84ebb91781ce35b0fdc2ee294e3783f07"
-  integrity sha512-+I//4cYPccV8LdmBLiX8CYvf9Sp3vQsrqu2QNXRcrbiWvcx/UdlFiqUJJzxRQxgsZmvhXhn4cSKeSmoFjVdupA==
+asn1.js@^4.10.1:
+  version "4.10.1"
+  resolved "https://registry.npmjs.org/asn1.js/-/asn1.js-4.10.1.tgz#b9c2bf5805f1e64aadeed6df3a2bfafb5a73f5a0"
+  integrity sha512-p32cOF5q0Zqs9uBiONKYLm6BClCoBCM5O9JfeUSlnQLBTxYdTK+pW+nXflm8UkKd2UYlEbYz5qEi0JuZR9ckSw==
   dependencies:
     bn.js "^4.0.0"
     inherits "^2.0.1"
     minimalistic-assert "^1.0.0"
-    safer-buffer "^2.1.0"
 
 aspen-core@^1.0.4:
   version "1.0.5"
@@ -3722,12 +3152,12 @@ aspen-tree-model@^1.0.5:
     notificar "^1.0.1"
 
 assert@^1.4.0:
-  version "1.5.0"
-  resolved "https://registry.npmjs.org/assert/-/assert-1.5.0.tgz#55c109aaf6e0aefdb3dc4b71240c70bf574b18eb"
-  integrity sha512-EDsgawzwoun2CZkCgtxJbv392v4nbk9XDD06zI+kQYoBM/3RBWLlEyJARDOmhAAosBjWACEkKL6S+lIZtcAubA==
+  version "1.5.1"
+  resolved "https://registry.npmjs.org/assert/-/assert-1.5.1.tgz#038ab248e4ff078e7bc2485ba6e6388466c78f76"
+  integrity sha512-zzw1uCAgLbsKwBfFc8CX78DDg+xZeBksSO3vwVIDDN5i94eOrPsSSyiVhmsSABFDM/OcpE2aagCat9dnWQLG1A==
   dependencies:
-    object-assign "^4.1.1"
-    util "0.10.3"
+    object.assign "^4.1.4"
+    util "^0.10.4"
 
 async@^2.1.4:
   version "2.6.4"
@@ -3737,16 +3167,9 @@ async@^2.1.4:
     lodash "^4.17.14"
 
 async@^3.2.3:
-  version "3.2.4"
-  resolved "https://registry.npmjs.org/async/-/async-3.2.4.tgz#2d22e00f8cddeb5fde5dd33522b56d1cf569a81c"
-  integrity sha512-iAB+JbDEGXhyIUavoDl9WP/Jj106Kz9DEn1DPgYw5ruDn0e3Wgi3sKFm55sASdGBNOQB8F59d9qQ7deqrHA8wQ==
-
-asynciterator.prototype@^1.0.0:
-  version "1.0.0"
-  resolved "https://registry.npmjs.org/asynciterator.prototype/-/asynciterator.prototype-1.0.0.tgz#8c5df0514936cdd133604dfcc9d3fb93f09b2b62"
-  integrity sha512-wwHYEIS0Q80f5mosx3L/dfG5t5rjEa9Ft51GTaNt862EnpyGHpgz2RkZvLPp1oF5TnAiTohkEKVEu8pQPJI7Vg==
-  dependencies:
-    has-symbols "^1.0.3"
+  version "3.2.5"
+  resolved "https://registry.npmjs.org/async/-/async-3.2.5.tgz#ebd52a8fdaf7a2289a24df399f8d8485c8a46b66"
+  integrity sha512-baNZyqaaLhyLVKm/DlvdW051MSgO6b8eVfIezl9E5PqWxFgzLm/wQntEW4zOytVburDEr0JlALEpdOFwvErLsg==
 
 asynckit@^0.4.0:
   version "0.4.0"
@@ -3759,21 +3182,23 @@ attr-accept@^2.2.2:
   integrity sha512-7prDjvt9HmqiZ0cl5CRjtS84sEyhsHP2coDkaZKRKVfCDo9s7iw7ChVmar78Gu9pC4SoR/28wFu/G5JJhTnqEg==
 
 autoprefixer@^10.2.4:
-  version "10.4.14"
-  resolved "https://registry.npmjs.org/autoprefixer/-/autoprefixer-10.4.14.tgz#e28d49902f8e759dd25b153264e862df2705f79d"
-  integrity sha512-FQzyfOsTlwVzjHxKEqRIAdJx9niO6VCBCoEwax/VLSoQF29ggECcPuBqUMZ+u8jCZOPSy8b8/8KnuFbp0SaFZQ==
+  version "10.4.19"
+  resolved "https://registry.npmjs.org/autoprefixer/-/autoprefixer-10.4.19.tgz#ad25a856e82ee9d7898c59583c1afeb3fa65f89f"
+  integrity sha512-BaENR2+zBZ8xXhM4pUaKUxlVdxZ0EZhjvbopwnXmxRUfqDmwSpC2lAi/QXvx7NRdPCo1WKEcEF6mV64si1z4Ew==
   dependencies:
-    browserslist "^4.21.5"
-    caniuse-lite "^1.0.30001464"
-    fraction.js "^4.2.0"
+    browserslist "^4.23.0"
+    caniuse-lite "^1.0.30001599"
+    fraction.js "^4.3.7"
     normalize-range "^0.1.2"
     picocolors "^1.0.0"
     postcss-value-parser "^4.2.0"
 
-available-typed-arrays@^1.0.5:
-  version "1.0.5"
-  resolved "https://registry.npmjs.org/available-typed-arrays/-/available-typed-arrays-1.0.5.tgz#92f95616501069d07d10edb2fc37d3e1c65123b7"
-  integrity sha512-DMD0KiN46eipeziST1LPP/STfDU0sufISXmjSgvVsoU2tqxctQeASejWcfNtxYKqETM1UxQ8sp2OrSBWpHY6sw==
+available-typed-arrays@^1.0.7:
+  version "1.0.7"
+  resolved "https://registry.npmjs.org/available-typed-arrays/-/available-typed-arrays-1.0.7.tgz#a5cc375d6a03c2efc87a553f3e0b1522def14846"
+  integrity sha512-wvUjBtSGN7+7SjNpq/9M2Tg350UZD3q62IFZLbRAR1bSMlCo1ZaeW+BJ+D090e4hIIZLBcTDWe4Mh4jvUDajzQ==
+  dependencies:
+    possible-typed-array-names "^1.0.0"
 
 axios-mock-adapter@^1.17.0:
   version "1.22.0"
@@ -3792,12 +3217,12 @@ axios@^1.6.8:
     form-data "^4.0.0"
     proxy-from-env "^1.1.0"
 
-babel-jest@^29.6.4:
-  version "29.6.4"
-  resolved "https://registry.npmjs.org/babel-jest/-/babel-jest-29.6.4.tgz#98dbc45d1c93319c82a8ab4a478b670655dd2585"
-  integrity sha512-meLj23UlSLddj6PC+YTOFRgDAtjnZom8w/ACsrx0gtPtv5cJZk0A5Unk5bV4wixD7XaPCN1fQvpww8czkZURmw==
+babel-jest@^29.7.0:
+  version "29.7.0"
+  resolved "https://registry.npmjs.org/babel-jest/-/babel-jest-29.7.0.tgz#f4369919225b684c56085998ac63dbd05be020d5"
+  integrity sha512-BrvGY3xZSwEcCzKvKsCi2GgHqDqsYkOP4/by5xCgIwGXQxIEh+8ew3gmrE1y7XRR6LHZIj6yLYnUi/mm2KXKBg==
   dependencies:
-    "@jest/transform" "^29.6.4"
+    "@jest/transform" "^29.7.0"
     "@types/babel__core" "^7.1.14"
     babel-plugin-istanbul "^6.1.1"
     babel-preset-jest "^29.6.3"
@@ -3870,86 +3295,38 @@ babel-plugin-macros@^3.1.0:
     cosmiconfig "^7.0.0"
     resolve "^1.19.0"
 
-babel-plugin-polyfill-corejs2@^0.4.3:
-  version "0.4.3"
-  resolved "https://registry.npmjs.org/babel-plugin-polyfill-corejs2/-/babel-plugin-polyfill-corejs2-0.4.3.tgz#75044d90ba5043a5fb559ac98496f62f3eb668fd"
-  integrity sha512-bM3gHc337Dta490gg+/AseNB9L4YLHxq1nGKZZSHbhXv4aTYU2MD2cjza1Ru4S6975YLTaL1K8uJf6ukJhhmtw==
-  dependencies:
-    "@babel/compat-data" "^7.17.7"
-    "@babel/helper-define-polyfill-provider" "^0.4.0"
-    semver "^6.1.1"
-
-babel-plugin-polyfill-corejs2@^0.4.5:
-  version "0.4.5"
-  resolved "https://registry.npmjs.org/babel-plugin-polyfill-corejs2/-/babel-plugin-polyfill-corejs2-0.4.5.tgz#8097b4cb4af5b64a1d11332b6fb72ef5e64a054c"
-  integrity sha512-19hwUH5FKl49JEsvyTcoHakh6BE0wgXLLptIyKZ3PijHc/Ci521wygORCUCCred+E/twuqRyAkE02BAWPmsHOg==
+babel-plugin-polyfill-corejs2@^0.4.10:
+  version "0.4.10"
+  resolved "https://registry.npmjs.org/babel-plugin-polyfill-corejs2/-/babel-plugin-polyfill-corejs2-0.4.10.tgz#276f41710b03a64f6467433cab72cbc2653c38b1"
+  integrity sha512-rpIuu//y5OX6jVU+a5BCn1R5RSZYWAl2Nar76iwaOdycqb6JPxediskWFMMl7stfwNJR4b7eiQvh5fB5TEQJTQ==
   dependencies:
     "@babel/compat-data" "^7.22.6"
-    "@babel/helper-define-polyfill-provider" "^0.4.2"
+    "@babel/helper-define-polyfill-provider" "^0.6.1"
     semver "^6.3.1"
 
-babel-plugin-polyfill-corejs2@^0.4.6:
-  version "0.4.6"
-  resolved "https://registry.npmjs.org/babel-plugin-polyfill-corejs2/-/babel-plugin-polyfill-corejs2-0.4.6.tgz#b2df0251d8e99f229a8e60fc4efa9a68b41c8313"
-  integrity sha512-jhHiWVZIlnPbEUKSSNb9YoWcQGdlTLq7z1GHL4AjFxaoOUMuuEVJ+Y4pAaQUGOGk93YsVCKPbqbfw3m0SM6H8Q==
+"babel-plugin-polyfill-corejs3@^0.10.1", "babel-plugin-polyfill-corejs3@^0.10.4":
+  version "0.10.4"
+  resolved "https://registry.npmjs.org/babel-plugin-polyfill-corejs3/-/babel-plugin-polyfill-corejs3-0.10.4.tgz#789ac82405ad664c20476d0233b485281deb9c77"
+  integrity sha512-25J6I8NGfa5YkCDogHRID3fVCadIR8/pGl1/spvCkzb6lVn6SR3ojpx9nOn9iEBcUsjY24AmdKm5khcfKdylcg==
   dependencies:
-    "@babel/compat-data" "^7.22.6"
-    "@babel/helper-define-polyfill-provider" "^0.4.3"
-    semver "^6.3.1"
+    "@babel/helper-define-polyfill-provider" "^0.6.1"
+    core-js-compat "^3.36.1"
 
-babel-plugin-polyfill-corejs3@^0.8.1:
-  version "0.8.1"
-  resolved "https://registry.npmjs.org/babel-plugin-polyfill-corejs3/-/babel-plugin-polyfill-corejs3-0.8.1.tgz#39248263c38191f0d226f928d666e6db1b4b3a8a"
-  integrity sha512-ikFrZITKg1xH6pLND8zT14UPgjKHiGLqex7rGEZCH2EvhsneJaJPemmpQaIZV5AL03II+lXylw3UmddDK8RU5Q==
-  dependencies:
-    "@babel/helper-define-polyfill-provider" "^0.4.0"
-    core-js-compat "^3.30.1"
-
-babel-plugin-polyfill-corejs3@^0.8.3:
-  version "0.8.3"
-  resolved "https://registry.npmjs.org/babel-plugin-polyfill-corejs3/-/babel-plugin-polyfill-corejs3-0.8.3.tgz#b4f719d0ad9bb8e0c23e3e630c0c8ec6dd7a1c52"
-  integrity sha512-z41XaniZL26WLrvjy7soabMXrfPWARN25PZoriDEiLMxAp50AUW3t35BGQUMg5xK3UrpVTtagIDklxYa+MhiNA==
-  dependencies:
-    "@babel/helper-define-polyfill-provider" "^0.4.2"
-    core-js-compat "^3.31.0"
-
-babel-plugin-polyfill-corejs3@^0.8.5:
-  version "0.8.6"
-  resolved "https://registry.npmjs.org/babel-plugin-polyfill-corejs3/-/babel-plugin-polyfill-corejs3-0.8.6.tgz#25c2d20002da91fe328ff89095c85a391d6856cf"
-  integrity sha512-leDIc4l4tUgU7str5BWLS2h8q2N4Nf6lGZP6UrNDxdtfF2g69eJ5L0H7S8A5Ln/arfFAfHor5InAdZuIOwZdgQ==
-  dependencies:
-    "@babel/helper-define-polyfill-provider" "^0.4.3"
-    core-js-compat "^3.33.1"
-
-babel-plugin-polyfill-regenerator@^0.5.0:
-  version "0.5.0"
-  resolved "https://registry.npmjs.org/babel-plugin-polyfill-regenerator/-/babel-plugin-polyfill-regenerator-0.5.0.tgz#e7344d88d9ef18a3c47ded99362ae4a757609380"
-  integrity sha512-hDJtKjMLVa7Z+LwnTCxoDLQj6wdc+B8dun7ayF2fYieI6OzfuvcLMB32ihJZ4UhCBwNYGl5bg/x/P9cMdnkc2g==
-  dependencies:
-    "@babel/helper-define-polyfill-provider" "^0.4.0"
-
-babel-plugin-polyfill-regenerator@^0.5.2:
-  version "0.5.2"
-  resolved "https://registry.npmjs.org/babel-plugin-polyfill-regenerator/-/babel-plugin-polyfill-regenerator-0.5.2.tgz#80d0f3e1098c080c8b5a65f41e9427af692dc326"
-  integrity sha512-tAlOptU0Xj34V1Y2PNTL4Y0FOJMDB6bZmoW39FeCQIhigGLkqu3Fj6uiXpxIf6Ij274ENdYx64y6Au+ZKlb1IA==
-  dependencies:
-    "@babel/helper-define-polyfill-provider" "^0.4.2"
-
-babel-plugin-polyfill-regenerator@^0.5.3:
-  version "0.5.3"
-  resolved "https://registry.npmjs.org/babel-plugin-polyfill-regenerator/-/babel-plugin-polyfill-regenerator-0.5.3.tgz#d4c49e4b44614607c13fb769bcd85c72bb26a4a5"
-  integrity sha512-8sHeDOmXC8csczMrYEOf0UTNa4yE2SxV5JGeT/LP1n0OYVDUUFPxG9vdk2AlDlIit4t+Kf0xCtpgXPBwnn/9pw==
+babel-plugin-polyfill-regenerator@^0.6.1:
+  version "0.6.1"
+  resolved "https://registry.npmjs.org/babel-plugin-polyfill-regenerator/-/babel-plugin-polyfill-regenerator-0.6.1.tgz#4f08ef4c62c7a7f66a35ed4c0d75e30506acc6be"
+  integrity sha512-JfTApdE++cgcTWjsiCQlLyFBMbTUft9ja17saCc93lgV33h4tuCVj7tlvu//qpLwaG+3yEz7/KhahGrUMkVq9g==
   dependencies:
-    "@babel/helper-define-polyfill-provider" "^0.4.3"
+    "@babel/helper-define-polyfill-provider" "^0.6.1"
 
 "babel-plugin-styled-components@>= 1.12.0":
-  version "2.1.3"
-  resolved "https://registry.npmjs.org/babel-plugin-styled-components/-/babel-plugin-styled-components-2.1.3.tgz#f5616bee99efca6685e500fe45db87f26cb42ba7"
-  integrity sha512-jBioLwBVHpOMU4NsueH/ADcHrjS0Y/WTpt2eGVmmuSFNEv2DF3XhcMncuZlbbjxQ4vzxg+yEr6E6TNjrIQbsJQ==
+  version "2.1.4"
+  resolved "https://registry.npmjs.org/babel-plugin-styled-components/-/babel-plugin-styled-components-2.1.4.tgz#9a1f37c7f32ef927b4b008b529feb4a2c82b1092"
+  integrity sha512-Xgp9g+A/cG47sUyRwwYxGM4bR/jDRg5N6it/8+HxCnbT5XNKSKDT9xm4oag/osgqjC2It/vH0yXsomOG6k558g==
   dependencies:
-    "@babel/helper-annotate-as-pure" "^7.18.6"
-    "@babel/helper-module-imports" "^7.21.4"
-    babel-plugin-syntax-jsx "^6.18.0"
+    "@babel/helper-annotate-as-pure" "^7.22.5"
+    "@babel/helper-module-imports" "^7.22.5"
+    "@babel/plugin-syntax-jsx" "^7.22.5"
     lodash "^4.17.21"
     picomatch "^2.3.1"
 
@@ -4005,9 +3382,9 @@ big.js@^5.2.2:
   integrity sha512-vyL2OymJxmarO8gxMr0mhChsO9QGwhynfuu4+MHTAW6czfq9humCB7rKpUjDd9YUiDPU4mzpyupFSvOClAwbmQ==
 
 "bignumber.js@^9.0.0", "bignumber.js@^9.0.1":
-  version "9.1.1"
-  resolved "https://registry.npmjs.org/bignumber.js/-/bignumber.js-9.1.1.tgz#c4df7dc496bd849d4c9464344c1aa74228b4dac6"
-  integrity sha512-pHm4LsMJ6lzgNGVfZHjMoO8sdoRhOzOH4MLmY65Jg70bpxCKu5iOHNJyfF6OyvYw7t8Fpf35RuzUyqnQsj8Vig==
+  version "9.1.2"
+  resolved "https://registry.npmjs.org/bignumber.js/-/bignumber.js-9.1.2.tgz#b7c4242259c008903b13707983b5f4bbd31eda0c"
+  integrity sha512-2/mKyZH9K85bzOEfhXDBFZTGd1CTs+5IHpeFQo9luiBG7hghdC851Pj2WAhb6E3R6b9tZj/XKhbg4fum+Kepug==
 
 bin-build@^3.0.0:
   version "3.0.0"
@@ -4057,11 +3434,6 @@ bin-wrapper@^4.0.0:
     os-filter-obj "^2.0.0"
     pify "^4.0.1"
 
-binary-extensions@^2.0.0:
-  version "2.2.0"
-  resolved "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.2.0.tgz#75f502eeaf9ffde42fc98829645be4ea76bd9e2d"
-  integrity sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==
-
 bindings@^1.5.0:
   version "1.5.0"
   resolved "https://registry.npmjs.org/bindings/-/bindings-1.5.0.tgz#10353c9e945334bc0511a6d90b38fbc7c9c504df"
@@ -4117,7 +3489,7 @@ brace@^0.11.1:
   resolved "https://registry.npmjs.org/brace/-/brace-0.11.1.tgz#4896fcc9d544eef45f4bb7660db320d3b379fe58"
   integrity sha512-Fc8Ne62jJlKHiG/ajlonC4Sd66Pq68fFwK4ihJGNZpGqboc324SQk+lRvMzpPRuJOmfrJefdG8/7JdWX4bzJ2Q==
 
-"braces@^3.0.2", "braces@~3.0.2":
+braces@^3.0.2:
   version "3.0.2"
   resolved "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz#3454e1a462ee8d599e236df336cd9ea4f8afe107"
   integrity sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==
@@ -4156,7 +3528,7 @@ browserfs@^1.4.3:
     async "^2.1.4"
     pako "^1.0.4"
 
-"browserify-aes@^1.0.0", "browserify-aes@^1.0.4":
+"browserify-aes@^1.0.4", "browserify-aes@^1.2.0":
   version "1.2.0"
   resolved "https://registry.npmjs.org/browserify-aes/-/browserify-aes-1.2.0.tgz#326734642f403dabc3003209853bb70ad428ef48"
   integrity sha512-+7CHXqGuspUn/Sl5aO7Ea0xWGAtETPXNSAjHo48JfLdPWcMng33Xe4znFvQweqc/uzk5zSOI3H52CYnjCfb5hA==
@@ -4196,18 +3568,19 @@ browserify-des@^1.0.0:
     randombytes "^2.0.1"
 
 browserify-sign@^4.0.0:
-  version "4.2.2"
-  resolved "https://registry.npmjs.org/browserify-sign/-/browserify-sign-4.2.2.tgz#e78d4b69816d6e3dd1c747e64e9947f9ad79bc7e"
-  integrity sha512-1rudGyeYY42Dk6texmv7c4VcQ0EsvVbLwZkA+AQB7SxvXxmcD93jcHie8bzecJ+ChDlmAm2Qyu0+Ccg5uhZXCg==
+  version "4.2.3"
+  resolved "https://registry.npmjs.org/browserify-sign/-/browserify-sign-4.2.3.tgz#7afe4c01ec7ee59a89a558a4b75bd85ae62d4208"
+  integrity sha512-JWCZW6SKhfhjJxO8Tyiiy+XYB7cqd2S5/+WeYHsKdNKFlCBhKbblba1A/HN/90YwtxKc8tCErjffZl++UNmGiw==
   dependencies:
     bn.js "^5.2.1"
     browserify-rsa "^4.1.0"
     create-hash "^1.2.0"
     create-hmac "^1.1.7"
-    elliptic "^6.5.4"
+    elliptic "^6.5.5"
+    hash-base "~3.0"
     inherits "^2.0.4"
-    parse-asn1 "^5.1.6"
-    readable-stream "^3.6.2"
+    parse-asn1 "^5.1.7"
+    readable-stream "^2.3.8"
     safe-buffer "^5.2.1"
 
 browserify-zlib@~0.2.0:
@@ -4271,34 +3644,14 @@ browserify@^17.0.0:
     vm-browserify "^1.0.0"
     xtend "^4.0.0"
 
-"browserslist@^4.0.0", "browserslist@^4.14.5", "browserslist@^4.21.3", "browserslist@^4.21.4", "browserslist@^4.21.5":
-  version "4.21.9"
-  resolved "https://registry.npmjs.org/browserslist/-/browserslist-4.21.9.tgz#e11bdd3c313d7e2a9e87e8b4b0c7872b13897635"
-  integrity sha512-M0MFoZzbUrRU4KNfCrDLnvyE7gub+peetoTid3TBIqtunaDJyXlwhakT+/VkvSXcfIzFfK/nkCs4nmyTmxdNSg==
-  dependencies:
-    caniuse-lite "^1.0.30001503"
-    electron-to-chromium "^1.4.431"
-    node-releases "^2.0.12"
-    update-browserslist-db "^1.0.11"
-
-"browserslist@^4.21.10", "browserslist@^4.21.9":
-  version "4.21.10"
-  resolved "https://registry.npmjs.org/browserslist/-/browserslist-4.21.10.tgz#dbbac576628c13d3b2231332cb2ec5a46e015bb0"
-  integrity sha512-bipEBdZfVH5/pwrvqc+Ub0kUPVfGUhlKxbvfD+z1BDnPEO/X98ruXGA1WP5ASpAFKan7Qr6j736IacbZQuAlKQ==
-  dependencies:
-    caniuse-lite "^1.0.30001517"
-    electron-to-chromium "^1.4.477"
-    node-releases "^2.0.13"
-    update-browserslist-db "^1.0.11"
-
-browserslist@^4.22.1:
-  version "4.22.1"
-  resolved "https://registry.npmjs.org/browserslist/-/browserslist-4.22.1.tgz#ba91958d1a59b87dab6fed8dfbcb3da5e2e9c619"
-  integrity sha512-FEVc202+2iuClEhZhrWy6ZiAcRLvNMyYcxZ8raemul1DYVOVdFsbqckWLdsixQZCpJlwe77Z3UTalE7jsjnKfQ==
-  dependencies:
-    caniuse-lite "^1.0.30001541"
-    electron-to-chromium "^1.4.535"
-    node-releases "^2.0.13"
+"browserslist@^4.0.0", "browserslist@^4.21.10", "browserslist@^4.21.4", "browserslist@^4.22.2", "browserslist@^4.23.0":
+  version "4.23.0"
+  resolved "https://registry.npmjs.org/browserslist/-/browserslist-4.23.0.tgz#8f3acc2bbe73af7213399430890f86c63a5674ab"
+  integrity sha512-QW8HiM1shhT2GuzkvklfjcKDiWFXHOeFCIA/huJPwHsslwcydgk7X+z2zXpEijP98UCY7HbubZt5J2Zgvf0CaQ==
+  dependencies:
+    caniuse-lite "^1.0.30001587"
+    electron-to-chromium "^1.4.668"
+    node-releases "^2.0.14"
     update-browserslist-db "^1.0.13"
 
 bser@2.1.1:
@@ -4377,17 +3730,41 @@ builtin-status-codes@^3.0.0:
   resolved "https://registry.npmjs.org/builtin-status-codes/-/builtin-status-codes-3.0.0.tgz#85982878e21b98e1c66425e03d0174788f569ee8"
   integrity sha512-HpGFw18DgFWlncDfjTa2rcQ4W88O1mC8e8yZ2AvQY5KDaktSTwo+KRf6nHK6FRI5FyRyb/5T6+TSxfP7QyGsmQ==
 
-cacache@^17.0.0:
-  version "17.1.3"
-  resolved "https://registry.npmjs.org/cacache/-/cacache-17.1.3.tgz#c6ac23bec56516a7c0c52020fd48b4909d7c7044"
-  integrity sha512-jAdjGxmPxZh0IipMdR7fK/4sDSrHMLUV0+GvVUsjwyGNKHsh79kW/otg+GkbXwl6Uzvy9wsvHOX4nUoWldeZMg==
+cacache@^16.1.0:
+  version "16.1.3"
+  resolved "https://registry.npmjs.org/cacache/-/cacache-16.1.3.tgz#a02b9f34ecfaf9a78c9f4bc16fceb94d5d67a38e"
+  integrity sha512-/+Emcj9DAXxX4cwlLmRI9c166RuL3w30zp4R7Joiv2cQTtTtA+jeuCAjH3ZlGnYS3tKENSrKhAzVVP9GVyzeYQ==
+  dependencies:
+    "@npmcli/fs" "^2.1.0"
+    "@npmcli/move-file" "^2.0.0"
+    chownr "^2.0.0"
+    fs-minipass "^2.1.0"
+    glob "^8.0.1"
+    infer-owner "^1.0.4"
+    lru-cache "^7.7.1"
+    minipass "^3.1.6"
+    minipass-collect "^1.0.2"
+    minipass-flush "^1.0.5"
+    minipass-pipeline "^1.2.4"
+    mkdirp "^1.0.4"
+    p-map "^4.0.0"
+    promise-inflight "^1.0.1"
+    rimraf "^3.0.2"
+    ssri "^9.0.0"
+    tar "^6.1.11"
+    unique-filename "^2.0.0"
+
+cacache@^18.0.0:
+  version "18.0.2"
+  resolved "https://registry.npmjs.org/cacache/-/cacache-18.0.2.tgz#fd527ea0f03a603be5c0da5805635f8eef00c60c"
+  integrity sha512-r3NU8h/P+4lVUHfeRw1dtgQYar3DZMm4/cm2bZgOvrFC/su7budSOeqh52VJIC4U4iG1WWwV6vRW0znqBvxNuw==
   dependencies:
     "@npmcli/fs" "^3.1.0"
     fs-minipass "^3.0.0"
     glob "^10.2.2"
-    lru-cache "^7.7.1"
-    minipass "^5.0.0"
-    minipass-collect "^1.0.2"
+    lru-cache "^10.0.1"
+    minipass "^7.0.3"
+    minipass-collect "^2.0.1"
     minipass-flush "^1.0.5"
     minipass-pipeline "^1.2.4"
     p-map "^4.0.0"
@@ -4413,13 +3790,16 @@ cacheable-request@^2.1.1:
   resolved "https://registry.npmjs.org/cached-path-relative/-/cached-path-relative-1.1.0.tgz#865576dfef39c0d6a7defde794d078f5308e3ef3"
   integrity sha512-WF0LihfemtesFcJgO7xfOoOcnWzY/QHR4qeDqV44jPU3HTI54+LnfXK3SA27AVVGCdZFgjjFFaqUA9Jx7dMJZA==
 
-"call-bind@^1.0.0", "call-bind@^1.0.2":
-  version "1.0.2"
-  resolved "https://registry.npmjs.org/call-bind/-/call-bind-1.0.2.tgz#b1d4e89e688119c3c9a903ad30abb2f6a919be3c"
-  integrity sha512-7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA==
+"call-bind@^1.0.2", "call-bind@^1.0.5", "call-bind@^1.0.6", "call-bind@^1.0.7":
+  version "1.0.7"
+  resolved "https://registry.npmjs.org/call-bind/-/call-bind-1.0.7.tgz#06016599c40c56498c18769d2730be242b6fa3b9"
+  integrity sha512-GHTSNSYICQ7scH7sZ+M2rFopRoLh8t2bLSW6BbgrtLsahOIB5iyAVJf9GjWK3cYTDaMj4XdBpM1cA6pIS0Kv2w==
   dependencies:
-    function-bind "^1.1.1"
-    get-intrinsic "^1.0.2"
+    es-define-property "^1.0.0"
+    es-errors "^1.3.0"
+    function-bind "^1.1.2"
+    get-intrinsic "^1.2.4"
+    set-function-length "^1.2.1"
 
 callsites@^3.0.0:
   version "3.1.0"
@@ -4461,20 +3841,10 @@ caniuse-api@^3.0.0:
     lodash.memoize "^4.1.2"
     lodash.uniq "^4.5.0"
 
-"caniuse-lite@^1.0.0", "caniuse-lite@^1.0.30001464", "caniuse-lite@^1.0.30001503":
-  version "1.0.30001506"
-  resolved "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001506.tgz#35bd814b310a487970c585430e9e80ee23faf14b"
-  integrity sha512-6XNEcpygZMCKaufIcgpQNZNf00GEqc7VQON+9Rd0K1bMYo8xhMZRAo5zpbnbMNizi4YNgIDAFrdykWsvY3H4Hw==
-
-caniuse-lite@^1.0.30001517:
-  version "1.0.30001527"
-  resolved "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001527.tgz#813826554828245ccee776c850566dce12bdeaba"
-  integrity sha512-YkJi7RwPgWtXVSgK4lG9AHH57nSzvvOp9MesgXmw4Q7n0C3H04L0foHqfxcmSAm5AcWb8dW9AYj2tR7/5GnddQ==
-
-caniuse-lite@^1.0.30001541:
-  version "1.0.30001554"
-  resolved "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001554.tgz#ba80d88dff9acbc0cd4b7535fc30e0191c5e2e2a"
-  integrity sha512-A2E3U//MBwbJVzebddm1YfNp7Nud5Ip+IPn4BozBmn4KqVX7AvluoIDFWjsv5OkGnKUXQVmMSoMKLa3ScCblcQ==
+"caniuse-lite@^1.0.0", "caniuse-lite@^1.0.30001587", "caniuse-lite@^1.0.30001599":
+  version "1.0.30001611"
+  resolved "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001611.tgz#4dbe78935b65851c2d2df1868af39f709a93a96e"
+  integrity sha512-19NuN1/3PjA3QI8Eki55N8my4LzfkMCRLgCVfrl/slbSAchQfV0+GwjPrK3rq37As4UCLlM/DHajbKkAqbv92Q==
 
 "caw@^2.0.0", "caw@^2.0.1":
   version "2.0.1"
@@ -4486,7 +3856,7 @@ caniuse-lite@^1.0.30001541:
     tunnel-agent "^0.6.0"
     url-to-options "^1.0.1"
 
-"chalk@^2.0.0", "chalk@^2.4.2":
+chalk@^2.4.2:
   version "2.4.2"
   resolved "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz#cd42541677a54333cf541a49108c1432b44c9424"
   integrity sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==
@@ -4528,20 +3898,6 @@ chartjs-plugin-zoom@^2.0.1:
   dependencies:
     hammerjs "^2.0.8"
 
-"chokidar@>=3.0.0 <4.0.0":
-  version "3.5.3"
-  resolved "https://registry.npmjs.org/chokidar/-/chokidar-3.5.3.tgz#1cf37c8707b932bd1af1ae22c0432e2acd1903bd"
-  integrity sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==
-  dependencies:
-    anymatch "~3.1.2"
-    braces "~3.0.2"
-    fsevents "~2.3.2"
-    glob-parent "~5.1.2"
-    is-binary-path "~2.1.0"
-    is-glob "~4.0.1"
-    normalize-path "~3.0.0"
-    readdirp "~3.6.0"
-
 chownr@^2.0.0:
   version "2.0.0"
   resolved "https://registry.npmjs.org/chownr/-/chownr-2.0.0.tgz#15bfbe53d2eab4cf70f18a8cd68ebe5b3cb1dece"
@@ -4553,9 +3909,9 @@ chrome-trace-event@^1.0.2:
   integrity sha512-p3KULyQg4S7NIHixdwbGX+nFHkoBiA4YQmyWtjb8XngSKV124nJmRysgAeujbUVb15vh+RvFUfCPqU7rXk+hZg==
 
 ci-info@^3.2.0:
-  version "3.8.0"
-  resolved "https://registry.npmjs.org/ci-info/-/ci-info-3.8.0.tgz#81408265a5380c929f0bc665d62256628ce9ef91"
-  integrity sha512-eXTggHWSooYhq49F2opQhuHWgzucfF2YgODK4e1566GQs5BIfP30B0oenwBJHfWxAs2fyPB1s7Mg949zLf61Yw==
+  version "3.9.0"
+  resolved "https://registry.npmjs.org/ci-info/-/ci-info-3.9.0.tgz#4279a62028a7b1f262f3473fc9605f5e218c59b4"
+  integrity sha512-NIxF55hv4nSqQswkAeiOi1r83xy8JldOFDTWiug55KBu9Jnblncd2U6ViHmYgHf01TPZS77NJBhBMKdWj9HQMQ==
 
 "cipher-base@^1.0.0", "cipher-base@^1.0.1", "cipher-base@^1.0.3":
   version "1.0.4"
@@ -4570,10 +3926,10 @@ cjs-module-lexer@^1.0.0:
   resolved "https://registry.npmjs.org/cjs-module-lexer/-/cjs-module-lexer-1.2.3.tgz#6c370ab19f8a3394e318fe682686ec0ac684d107"
   integrity sha512-0TNiGstbQmCFwt4akjjBg5pLRTSyj/PkWQ1ZoO2zntmg9yLqSRxwEa4iCfQLGjqhiqBfOJa7W/E8wfGrTDmlZQ==
 
-"classnames@*", "classnames@2.x", "classnames@^2.2.1", "classnames@^2.2.5", "classnames@^2.2.6", "classnames@^2.3.1", "classnames@^2.3.2":
-  version "2.3.2"
-  resolved "https://registry.npmjs.org/classnames/-/classnames-2.3.2.tgz#351d813bf0137fcc6a76a16b88208d2560a0d924"
-  integrity sha512-CSbhY4cFEJRe6/GQzIk5qXZ4Jeg5pcsP7b5peFSDpffpe1cqjASH/n9UTjBwOp6XpMSTwQ8Za2K5V02ueA7Tmw==
+"classnames@*", "classnames@2.x", "classnames@^2.2.1", "classnames@^2.2.5", "classnames@^2.2.6", "classnames@^2.5.1":
+  version "2.5.1"
+  resolved "https://registry.npmjs.org/classnames/-/classnames-2.5.1.tgz#ba774c614be0f016da105c858e7159eae8e7687b"
+  integrity sha512-saHYOzhIQs6wy2sVxTM6bUDsQO4F50V9RQ22qBpEdCW+I+/Wmke2HOl6lS6dTpdxVhb88/I6+Hs+438c3lfUow==
 
 clean-stack@^2.0.0:
   version "2.2.0"
@@ -4612,11 +3968,16 @@ closest@^0.0.1:
   dependencies:
     matches-selector "0.0.1"
 
-"clsx@^1.0.2", "clsx@^1.0.4", "clsx@^1.1.0", "clsx@^1.1.1":
+"clsx@^1.1.0", "clsx@^1.1.1":
   version "1.2.1"
   resolved "https://registry.npmjs.org/clsx/-/clsx-1.2.1.tgz#0ddc4a20a549b59c93a4116bb26f5294ca17dc12"
   integrity sha512-EcR6r5a8bj6pu3ycsa/E/cKVGuTgZJZdsyUYHOksG/UHIiKfjxzRxYJpyVBwYaQeOvghal9fcc4PidlgzugAQg==
 
+"clsx@^2.0.0", "clsx@^2.1.0":
+  version "2.1.0"
+  resolved "https://registry.npmjs.org/clsx/-/clsx-2.1.0.tgz#e851283bcb5c80ee7608db18487433f7b23f77cb"
+  integrity sha512-m3iNNWpd9rl3jvvcBnu70ylMdrXt8Vlq4HYadnU5fwcOtvkSQWPmj7amUcDT2qYI7risszBjI5AUIUox9D16pg==
+
 co@^4.6.0:
   version "4.6.0"
   resolved "https://registry.npmjs.org/co/-/co-4.6.0.tgz#6ea6bdf3d853ae54ccb8e47bfa0bf3f9031fb184"
@@ -4669,7 +4030,7 @@ color-support@^1.1.3:
   resolved "https://registry.npmjs.org/color-support/-/color-support-1.1.3.tgz#93834379a1cc9a0c61f82f52f0d04322251bd5a2"
   integrity sha512-qiBjkpbMLO/HL68y+lh4q0/O1MZFj2RX6X/KmMa3+gJD3z+WwI1ZzDHysvqHGS3mP6mznPckpXmw1nI9cJjyRg==
 
-colord@^2.9.1:
+"colord@^2.9.1", "colord@^2.9.3":
   version "2.9.3"
   resolved "https://registry.npmjs.org/colord/-/colord-2.9.3.tgz#4f8ce919de456f1d5c1c368c307fe20f3e59fb43"
   integrity sha512-jeC1axXpnb0/2nn/Y1LPuLdgXBLH7aDcHu4KEKfqw3CUhX7ZpfBSlPKyqXE6btIgEzfWtrX3/tyBCaCvXvMkOw==
@@ -4761,7 +4122,7 @@ content-disposition@^0.5.2:
   dependencies:
     safe-buffer "5.2.1"
 
-"convert-source-map@^1.5.0", "convert-source-map@^1.6.0", "convert-source-map@^1.7.0":
+convert-source-map@^1.5.0:
   version "1.9.0"
   resolved "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.9.0.tgz#7faae62353fb4213366d0ca98358d22e8368b05f"
   integrity sha512-ASFBup0Mz1uyiIjANan1jzLQami9z1PoYSZCiiYW2FczPbenXc45FZdBZLzOT+r6+iciuEModtmCti+hjaAk0A==
@@ -4796,31 +4157,17 @@ copy-webpack-plugin@^11.0.0:
     schema-utils "^4.0.0"
     serialize-javascript "^6.0.0"
 
-"core-js-compat@^3.30.1", "core-js-compat@^3.30.2":
-  version "3.31.0"
-  resolved "https://registry.npmjs.org/core-js-compat/-/core-js-compat-3.31.0.tgz#4030847c0766cc0e803dcdfb30055d7ef2064bf1"
-  integrity sha512-hM7YCu1cU6Opx7MXNu0NuumM0ezNeAeRKadixyiQELWY3vT3De9S4J5ZBMraWV2vZnrE1Cirl0GtFtDtMUXzPw==
+"core-js-compat@^3.31.0", "core-js-compat@^3.36.1":
+  version "3.37.0"
+  resolved "https://registry.npmjs.org/core-js-compat/-/core-js-compat-3.37.0.tgz#d9570e544163779bb4dff1031c7972f44918dc73"
+  integrity sha512-vYq4L+T8aS5UuFg4UwDhc7YNRWVeVZwltad9C/jV3R2LgVOpS9BDr7l/WL6BN0dbV3k1XejPTHqqEzJgsa0frA==
   dependencies:
-    browserslist "^4.21.5"
+    browserslist "^4.23.0"
 
-core-js-compat@^3.31.0:
-  version "3.32.1"
-  resolved "https://registry.npmjs.org/core-js-compat/-/core-js-compat-3.32.1.tgz#55f9a7d297c0761a8eb1d31b593e0f5b6ffae964"
-  integrity sha512-GSvKDv4wE0bPnQtjklV101juQ85g6H3rm5PDP20mqlS5j0kXF3pP97YvAu5hl+uFHqMictp3b2VxOHljWMAtuA==
-  dependencies:
-    browserslist "^4.21.10"
-
-core-js-compat@^3.33.1:
-  version "3.33.1"
-  resolved "https://registry.npmjs.org/core-js-compat/-/core-js-compat-3.33.1.tgz#debe80464107d75419e00c2ee29f35982118ff84"
-  integrity sha512-6pYKNOgD/j/bkC5xS5IIg6bncid3rfrI42oBH1SQJbsmYPKF7rhzcFzYCcxYMmNQQ0rCEB8WqpW7QHndOggaeQ==
-  dependencies:
-    browserslist "^4.22.1"
-
-core-js@^3.15.1:
-  version "3.31.0"
-  resolved "https://registry.npmjs.org/core-js/-/core-js-3.31.0.tgz#4471dd33e366c79d8c0977ed2d940821719db344"
-  integrity sha512-NIp2TQSGfR6ba5aalZD+ZQ1fSxGhDo/s1w0nx3RYzf2pnJxt7YynxFlFScP6eV7+GZsKO95NSjGxyJsU3DZgeQ==
+core-js@3.32.2:
+  version "3.32.2"
+  resolved "https://registry.npmjs.org/core-js/-/core-js-3.32.2.tgz#172fb5949ef468f93b4be7841af6ab1f21992db7"
+  integrity sha512-pxXSw1mYZPDGvTQqEc5vgIb83jGQKFGYWY76z4a7weZXUolw3G+OvpZqSRcfYOoOVUQJYEPsWeQK8pKEnUtWxQ==
 
 core-util-is@~1.0.0:
   version "1.0.3"
@@ -4849,7 +4196,7 @@ cosmiconfig@^7.0.0:
     path-type "^4.0.0"
     yaml "^1.10.0"
 
-cosmiconfig@^8.1.3:
+"cosmiconfig@^8.1.3", "cosmiconfig@^8.3.5":
   version "8.3.6"
   resolved "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-8.3.6.tgz#060a2b871d66dba6c8538ea1118ba1ac16f5fae3"
   integrity sha512-kcZ6+W5QzcJ3P1Mt+83OUv/oHFqZHIx8DuxG6eZ5RGMERoLqp4BuGjhHLYGK+Kf5XVkQvqBSmAy/nGWN3qDgEA==
@@ -4859,16 +4206,6 @@ cosmiconfig@^8.1.3:
     parse-json "^5.2.0"
     path-type "^4.0.0"
 
-cosmiconfig@^8.2.0:
-  version "8.2.0"
-  resolved "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-8.2.0.tgz#f7d17c56a590856cd1e7cee98734dca272b0d8fd"
-  integrity sha512-3rTMnFJA1tCOPwRxtgF4wd7Ab2qvDbL8jX+3smjIbS4HlZBagTlpERbdN7iAbWlrfxE3M8c27kTwTawQ7st+OQ==
-  dependencies:
-    import-fresh "^3.2.1"
-    js-yaml "^4.1.0"
-    parse-json "^5.0.0"
-    path-type "^4.0.0"
-
 create-ecdh@^4.0.0:
   version "4.0.4"
   resolved "https://registry.npmjs.org/create-ecdh/-/create-ecdh-4.0.4.tgz#d6e7f4bffa66736085a0762fd3a632684dabcc4e"
@@ -4900,6 +4237,19 @@ create-ecdh@^4.0.0:
     safe-buffer "^5.0.1"
     sha.js "^2.4.8"
 
+create-jest@^29.7.0:
+  version "29.7.0"
+  resolved "https://registry.npmjs.org/create-jest/-/create-jest-29.7.0.tgz#a355c5b3cb1e1af02ba177fe7afd7feee49a5320"
+  integrity sha512-Adz2bdH0Vq3F53KEMJOoftQFutWCukm6J24wbPWRO4k1kMY7gS7ds/uoJkNuV8wDCtWWnuwGcJwpWcih+zEW1Q==
+  dependencies:
+    "@jest/types" "^29.6.3"
+    chalk "^4.0.0"
+    exit "^0.1.2"
+    graceful-fs "^4.2.9"
+    jest-config "^29.7.0"
+    jest-util "^29.7.0"
+    prompts "^2.0.1"
+
 crelt@^1.0.5:
   version "1.0.6"
   resolved "https://registry.npmjs.org/crelt/-/crelt-1.0.6.tgz#7cc898ea74e190fb6ef9dae57f8f81cf7302df72"
@@ -4964,23 +4314,28 @@ css-color-keywords@^1.0.0:
   integrity sha512-FyyrDHZKEjXDpNJYvVsV960FiqQyXc/LlYmsxl2BcdMb2WPx0OGRVgTg55rPSyLSNMqP52R9r8geSp7apN3Ofg==
 
 css-declaration-sorter@^6.3.1:
-  version "6.4.0"
-  resolved "https://registry.npmjs.org/css-declaration-sorter/-/css-declaration-sorter-6.4.0.tgz#630618adc21724484b3e9505bce812def44000ad"
-  integrity sha512-jDfsatwWMWN0MODAFuHszfjphEXfNw9JUAhmY4pLu3TyTU+ohUpsbVtbU+1MZn4a47D9kqh03i4eyOm+74+zew==
+  version "6.4.1"
+  resolved "https://registry.npmjs.org/css-declaration-sorter/-/css-declaration-sorter-6.4.1.tgz#28beac7c20bad7f1775be3a7129d7eae409a3a71"
+  integrity sha512-rtdthzxKuyq6IzqX6jEcIzQF/YqccluefyCYheovBOLhFT/drQA9zj/UbRAa9J7C0o6EG6u3E6g+vKkay7/k3g==
+
+css-declaration-sorter@^7.2.0:
+  version "7.2.0"
+  resolved "https://registry.npmjs.org/css-declaration-sorter/-/css-declaration-sorter-7.2.0.tgz#6dec1c9523bc4a643e088aab8f09e67a54961024"
+  integrity sha512-h70rUM+3PNFuaBDTLe8wF/cdWu+dOZmb7pJt8Z2sedYbAcQVQV/tEchueg3GWxwqS0cxtbxmaHEdkNACqcvsow==
 
 css-loader@^6.7.2:
-  version "6.8.1"
-  resolved "https://registry.npmjs.org/css-loader/-/css-loader-6.8.1.tgz#0f8f52699f60f5e679eab4ec0fcd68b8e8a50a88"
-  integrity sha512-xDAXtEVGlD0gJ07iclwWVkLoZOpEvAWaSyf6W18S2pOC//K8+qUDIx8IIT3D+HjnmkJPQeesOPv5aiUaJsCM2g==
+  version "6.11.0"
+  resolved "https://registry.npmjs.org/css-loader/-/css-loader-6.11.0.tgz#33bae3bf6363d0a7c2cf9031c96c744ff54d85ba"
+  integrity sha512-CTJ+AEQJjq5NzLga5pE39qdiSV56F8ywCIsqNIRF0r7BDgWsN25aazToqAFg7ZrtA/U016xudB3ffgweORxX7g==
   dependencies:
     icss-utils "^5.1.0"
-    postcss "^8.4.21"
-    postcss-modules-extract-imports "^3.0.0"
-    postcss-modules-local-by-default "^4.0.3"
-    postcss-modules-scope "^3.0.0"
+    postcss "^8.4.33"
+    postcss-modules-extract-imports "^3.1.0"
+    postcss-modules-local-by-default "^4.0.5"
+    postcss-modules-scope "^3.2.0"
     postcss-modules-values "^4.0.0"
     postcss-value-parser "^4.2.0"
-    semver "^7.3.8"
+    semver "^7.5.4"
 
 css-minimizer-webpack-plugin@^5.0.0:
   version "5.0.1"
@@ -5033,7 +4388,7 @@ css-to-react-native@^3.0.0:
     mdn-data "2.0.14"
     source-map "^0.6.1"
 
-css-tree@^2.2.1:
+css-tree@^2.3.1:
   version "2.3.1"
   resolved "https://registry.npmjs.org/css-tree/-/css-tree-2.3.1.tgz#10264ce1e5442e8572fc82fbe490644ff54b5c20"
   integrity sha512-6Fv1DV/TYw//QF5IzQdqsNDjx/wc8TrMBZsqjL9eW01tWb7R7k/mq+/VXfJCl7SoD5emsJop9cOByJZfs8hYIw==
@@ -5107,50 +4462,51 @@ cssnano-preset-default@^5.2.14:
     postcss-svgo "^5.1.0"
     postcss-unique-selectors "^5.1.1"
 
-cssnano-preset-default@^6.0.1:
-  version "6.0.1"
-  resolved "https://registry.npmjs.org/cssnano-preset-default/-/cssnano-preset-default-6.0.1.tgz#2a93247140d214ddb9f46bc6a3562fa9177fe301"
-  integrity sha512-7VzyFZ5zEB1+l1nToKyrRkuaJIx0zi/1npjvZfbBwbtNTzhLtlvYraK/7/uqmX2Wb2aQtd983uuGw79jAjLSuQ==
-  dependencies:
-    css-declaration-sorter "^6.3.1"
-    cssnano-utils "^4.0.0"
-    postcss-calc "^9.0.0"
-    postcss-colormin "^6.0.0"
-    postcss-convert-values "^6.0.0"
-    postcss-discard-comments "^6.0.0"
-    postcss-discard-duplicates "^6.0.0"
-    postcss-discard-empty "^6.0.0"
-    postcss-discard-overridden "^6.0.0"
-    postcss-merge-longhand "^6.0.0"
-    postcss-merge-rules "^6.0.1"
-    postcss-minify-font-values "^6.0.0"
-    postcss-minify-gradients "^6.0.0"
-    postcss-minify-params "^6.0.0"
-    postcss-minify-selectors "^6.0.0"
-    postcss-normalize-charset "^6.0.0"
-    postcss-normalize-display-values "^6.0.0"
-    postcss-normalize-positions "^6.0.0"
-    postcss-normalize-repeat-style "^6.0.0"
-    postcss-normalize-string "^6.0.0"
-    postcss-normalize-timing-functions "^6.0.0"
-    postcss-normalize-unicode "^6.0.0"
-    postcss-normalize-url "^6.0.0"
-    postcss-normalize-whitespace "^6.0.0"
-    postcss-ordered-values "^6.0.0"
-    postcss-reduce-initial "^6.0.0"
-    postcss-reduce-transforms "^6.0.0"
-    postcss-svgo "^6.0.0"
-    postcss-unique-selectors "^6.0.0"
+cssnano-preset-default@^6.1.2:
+  version "6.1.2"
+  resolved "https://registry.npmjs.org/cssnano-preset-default/-/cssnano-preset-default-6.1.2.tgz#adf4b89b975aa775f2750c89dbaf199bbd9da35e"
+  integrity sha512-1C0C+eNaeN8OcHQa193aRgYexyJtU8XwbdieEjClw+J9d94E41LwT6ivKH0WT+fYwYWB0Zp3I3IZ7tI/BbUbrg==
+  dependencies:
+    browserslist "^4.23.0"
+    css-declaration-sorter "^7.2.0"
+    cssnano-utils "^4.0.2"
+    postcss-calc "^9.0.1"
+    postcss-colormin "^6.1.0"
+    postcss-convert-values "^6.1.0"
+    postcss-discard-comments "^6.0.2"
+    postcss-discard-duplicates "^6.0.3"
+    postcss-discard-empty "^6.0.3"
+    postcss-discard-overridden "^6.0.2"
+    postcss-merge-longhand "^6.0.5"
+    postcss-merge-rules "^6.1.1"
+    postcss-minify-font-values "^6.1.0"
+    postcss-minify-gradients "^6.0.3"
+    postcss-minify-params "^6.1.0"
+    postcss-minify-selectors "^6.0.4"
+    postcss-normalize-charset "^6.0.2"
+    postcss-normalize-display-values "^6.0.2"
+    postcss-normalize-positions "^6.0.2"
+    postcss-normalize-repeat-style "^6.0.2"
+    postcss-normalize-string "^6.0.2"
+    postcss-normalize-timing-functions "^6.0.2"
+    postcss-normalize-unicode "^6.1.0"
+    postcss-normalize-url "^6.0.2"
+    postcss-normalize-whitespace "^6.0.2"
+    postcss-ordered-values "^6.0.2"
+    postcss-reduce-initial "^6.1.0"
+    postcss-reduce-transforms "^6.0.2"
+    postcss-svgo "^6.0.3"
+    postcss-unique-selectors "^6.0.4"
 
 cssnano-utils@^3.1.0:
   version "3.1.0"
   resolved "https://registry.npmjs.org/cssnano-utils/-/cssnano-utils-3.1.0.tgz#95684d08c91511edfc70d2636338ca37ef3a6861"
   integrity sha512-JQNR19/YZhz4psLX/rQ9M83e3z2Wf/HdJbryzte4a3NSuafyp9w/I4U+hx5C2S9g41qlstH7DEWnZaaj83OuEA==
 
-cssnano-utils@^4.0.0:
-  version "4.0.0"
-  resolved "https://registry.npmjs.org/cssnano-utils/-/cssnano-utils-4.0.0.tgz#d1da885ec04003ab19505ff0e62e029708d36b08"
-  integrity sha512-Z39TLP+1E0KUcd7LGyF4qMfu8ZufI0rDzhdyAMsa/8UyNUU8wpS0fhdBxbQbv32r64ea00h4878gommRVg2BHw==
+cssnano-utils@^4.0.2:
+  version "4.0.2"
+  resolved "https://registry.npmjs.org/cssnano-utils/-/cssnano-utils-4.0.2.tgz#56f61c126cd0f11f2eef1596239d730d9fceff3c"
+  integrity sha512-ZR1jHg+wZ8o4c3zqf1SIUSTIvm/9mU343FMR6Obe/unskbvpGhZOo1J6d/r8D1pzkRQYuwbcH3hToOuoA2G7oQ==
 
 cssnano@^5.0.2:
   version "5.1.15"
@@ -5162,12 +4518,12 @@ cssnano@^5.0.2:
     yaml "^1.10.2"
 
 cssnano@^6.0.1:
-  version "6.0.1"
-  resolved "https://registry.npmjs.org/cssnano/-/cssnano-6.0.1.tgz#87c38c4cd47049c735ab756d7e77ac3ca855c008"
-  integrity sha512-fVO1JdJ0LSdIGJq68eIxOqFpIJrZqXUsBt8fkrBcztCQqAjQD51OhZp7tc0ImcbwXD4k7ny84QTV90nZhmqbkg==
+  version "6.1.2"
+  resolved "https://registry.npmjs.org/cssnano/-/cssnano-6.1.2.tgz#4bd19e505bd37ee7cf0dc902d3d869f6d79c66b8"
+  integrity sha512-rYk5UeX7VAM/u0lNqewCdasdtPK81CgX8wJFLEIXHbV2oldWRgJAsZrdhRXkV1NJzA2g850KiFm9mMU2HxNxMA==
   dependencies:
-    cssnano-preset-default "^6.0.1"
-    lilconfig "^2.1.0"
+    cssnano-preset-default "^6.1.2"
+    lilconfig "^3.1.1"
 
 csso@^4.2.0:
   version "4.2.0"
@@ -5200,15 +4556,15 @@ cssstyle@^2.3.0:
   dependencies:
     cssom "~0.3.6"
 
-"csstype@^2.5.2", "csstype@^2.5.7":
+csstype@^2.5.7:
   version "2.6.21"
   resolved "https://registry.npmjs.org/csstype/-/csstype-2.6.21.tgz#2efb85b7cc55c80017c66a5ad7cbd931fda3a90e"
   integrity sha512-Z1PhmomIfypOpoMjRQB70jfvy/wxT50qW08YXO5lMIJkrdq4yOTR+AW7FqutScmB9NkLwxo+jU+kZLbofZZq/w==
 
-csstype@^3.0.2:
-  version "3.1.2"
-  resolved "https://registry.npmjs.org/csstype/-/csstype-3.1.2.tgz#1d4bf9d572f11c14031f0436e1c10bc1f571f50b"
-  integrity sha512-I7K1Uu0MBPzaFKg4nI5Q7Vs2t+3gWWW648spaF+Rg7pI9ds18Ugn+lvg4SHczUdKlHI5LWBXyqfS8+DufyBsgQ==
+"csstype@^3.0.2", "csstype@^3.1.3":
+  version "3.1.3"
+  resolved "https://registry.npmjs.org/csstype/-/csstype-3.1.3.tgz#d80ff294d114fb0e6ac500fbf85b60137d7eff81"
+  integrity sha512-M1uQkMl8rQK/szD0LNhtqxIPLpimGm8sOBwU7lLnCpSbTyY3yeU1Vc7l4KT5zT4s/yOxHH5O7tIuuLOCnLADRw==
 
 cubic2quad@^1.2.1:
   version "1.2.1"
@@ -5237,14 +4593,44 @@ data-urls@^3.0.2:
     whatwg-mimetype "^3.0.0"
     whatwg-url "^11.0.0"
 
-date-fns@^2.24.0:
-  version "2.30.0"
-  resolved "https://registry.npmjs.org/date-fns/-/date-fns-2.30.0.tgz#f367e644839ff57894ec6ac480de40cae4b0f4d0"
-  integrity sha512-fnULvOpxnC5/Vg3NCiWelDsLiUc9bRwAPs/+LfTLNvetFCtCTN+yQz15C/fs4AwX1R9K5GLtLfn8QW+dWisaAw==
+data-view-buffer@^1.0.1:
+  version "1.0.1"
+  resolved "https://registry.npmjs.org/data-view-buffer/-/data-view-buffer-1.0.1.tgz#8ea6326efec17a2e42620696e671d7d5a8bc66b2"
+  integrity sha512-0lht7OugA5x3iJLOWFhWK/5ehONdprk0ISXqVFn/NFrDu+cuc8iADFrGQz5BnRK7LLU3JmkbXSxaqX+/mXYtUA==
+  dependencies:
+    call-bind "^1.0.6"
+    es-errors "^1.3.0"
+    is-data-view "^1.0.1"
+
+data-view-byte-length@^1.0.1:
+  version "1.0.1"
+  resolved "https://registry.npmjs.org/data-view-byte-length/-/data-view-byte-length-1.0.1.tgz#90721ca95ff280677eb793749fce1011347669e2"
+  integrity sha512-4J7wRJD3ABAzr8wP+OcIcqq2dlUKp4DVflx++hs5h5ZKydWMI6/D/fAot+yh6g2tHh8fLFTvNOaVN357NvSrOQ==
+  dependencies:
+    call-bind "^1.0.7"
+    es-errors "^1.3.0"
+    is-data-view "^1.0.1"
+
+data-view-byte-offset@^1.0.0:
+  version "1.0.0"
+  resolved "https://registry.npmjs.org/data-view-byte-offset/-/data-view-byte-offset-1.0.0.tgz#5e0bbfb4828ed2d1b9b400cd8a7d119bca0ff18a"
+  integrity sha512-t/Ygsytq+R995EJ5PZlD4Cu56sWa8InXySaViRzw9apusqsOO2bQP+SbYzAhR0pFKoB+43lYy8rWban9JSuXnA==
   dependencies:
-    "@babel/runtime" "^7.21.0"
+    call-bind "^1.0.6"
+    es-errors "^1.3.0"
+    is-data-view "^1.0.1"
 
-"debug@4", "debug@^4.1.0", "debug@^4.1.1", "debug@^4.3.2", "debug@^4.3.3", "debug@^4.3.4", "debug@~4.3.1", "debug@~4.3.2":
+date-fns@^3.6.0:
+  version "3.6.0"
+  resolved "https://registry.npmjs.org/date-fns/-/date-fns-3.6.0.tgz#f20ca4fe94f8b754951b24240676e8618c0206bf"
+  integrity sha512-fRHTG8g/Gif+kSh50gaGEdToemgfj74aRX3swtiouboip5JDLAyDE9F11nHMIcvOaXeOC6D7SpNhi7uFyB7Uww==
+
+debounce@^1.2.1:
+  version "1.2.1"
+  resolved "https://registry.npmjs.org/debounce/-/debounce-1.2.1.tgz#38881d8f4166a5c5848020c11827b834bcb3e0a5"
+  integrity sha512-XRRe6Glud4rd/ZGQfiV1ruXSfbvfJedlV9Y6zOlP+2K04vBYiJEte6stfFkCP03aMnY5tsipamumUjL14fofug==
+
+"debug@4", "debug@^4.1.0", "debug@^4.1.1", "debug@^4.3.1", "debug@^4.3.2", "debug@^4.3.3", "debug@^4.3.4", "debug@~4.3.1", "debug@~4.3.2":
   version "4.3.4"
   resolved "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz#1319f6579357f2338d3337d2cdd4914bb5dcc865"
   integrity sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==
@@ -5340,9 +4726,9 @@ decompress-unzip@^4.0.1:
     strip-dirs "^2.0.0"
 
 dedent@^1.0.0:
-  version "1.5.1"
-  resolved "https://registry.npmjs.org/dedent/-/dedent-1.5.1.tgz#4f3fc94c8b711e9bb2800d185cd6ad20f2a90aff"
-  integrity sha512-+LxW+KLWxu3HW3M2w2ympwtqPrqYRzU8fqi6Fhd18fBALe15blJPI/I4+UHveMVG6lJqB4JNd4UG0S5cnVHwIg==
+  version "1.5.3"
+  resolved "https://registry.npmjs.org/dedent/-/dedent-1.5.3.tgz#99aee19eb9bae55a67327717b6e848d0bf777e5a"
+  integrity sha512-NHQtfOOW68WD8lgypbLA5oT+Bt0xXJhiYvoR6SmmNXZfpzOGXwdKWmcwG8N7PwVVWV3eF/68nmD9BaJSsTBhyQ==
 
 deep-diff@^1.0.2:
   version "1.0.2"
@@ -5350,14 +4736,14 @@ deep-diff@^1.0.2:
   integrity sha512-aWS3UIVH+NPGCD1kki+DCU9Dua032iSsO43LqQpcs4R3+dVv7tX0qBGjiVHJHjplsoUM2XRO/KB92glqc68awg==
 
 deep-equal@^2.0.5:
-  version "2.2.2"
-  resolved "https://registry.npmjs.org/deep-equal/-/deep-equal-2.2.2.tgz#9b2635da569a13ba8e1cc159c2f744071b115daa"
-  integrity sha512-xjVyBf0w5vH0I42jdAZzOKVldmPgSulmiyPRywoyq7HXC9qdgo17kxJE+rdnif5Tz6+pIrpJI8dCpMNLIGkUiA==
+  version "2.2.3"
+  resolved "https://registry.npmjs.org/deep-equal/-/deep-equal-2.2.3.tgz#af89dafb23a396c7da3e862abc0be27cf51d56e1"
+  integrity sha512-ZIwpnevOurS8bpT4192sqAowWM76JDKSHYzMLty3BZGSswgq6pBaH3DhCSW5xVAZICZyKdOBPjwww5wfgT/6PA==
   dependencies:
     array-buffer-byte-length "^1.0.0"
-    call-bind "^1.0.2"
+    call-bind "^1.0.5"
     es-get-iterator "^1.1.3"
-    get-intrinsic "^1.2.1"
+    get-intrinsic "^1.2.2"
     is-arguments "^1.1.1"
     is-array-buffer "^3.0.2"
     is-date-object "^1.0.5"
@@ -5367,11 +4753,11 @@ deep-equal@^2.0.5:
     object-is "^1.1.5"
     object-keys "^1.1.1"
     object.assign "^4.1.4"
-    regexp.prototype.flags "^1.5.0"
+    regexp.prototype.flags "^1.5.1"
     side-channel "^1.0.4"
     which-boxed-primitive "^1.0.2"
     which-collection "^1.0.1"
-    which-typed-array "^1.1.9"
+    which-typed-array "^1.1.13"
 
 deep-is@^0.1.3:
   version "0.1.4"
@@ -5383,11 +4769,21 @@ deep-is@^0.1.3:
   resolved "https://registry.npmjs.org/deepmerge/-/deepmerge-4.3.1.tgz#44b5f2147cd3b00d4b56137685966f26fd25dd4a"
   integrity sha512-3sUqbMEc77XqpdNO7FRyRog+eW3ph+GYCbj+rK+uYyRMuwsVy0rMiVtPn+QJlKFvWP/1PYpapqYn0Me2knFn+A==
 
-"define-properties@^1.1.3", "define-properties@^1.1.4", "define-properties@^1.2.0":
-  version "1.2.0"
-  resolved "https://registry.npmjs.org/define-properties/-/define-properties-1.2.0.tgz#52988570670c9eacedd8064f4a990f2405849bd5"
-  integrity sha512-xvqAVKGfT1+UAvPwKTVw/njhdQ8ZhXK4lI0bCIuCMrp2up9nPnaDftrLtmpTazqd1o+UY4zgzU+avtMbDP+ldA==
+"define-data-property@^1.0.1", "define-data-property@^1.1.4":
+  version "1.1.4"
+  resolved "https://registry.npmjs.org/define-data-property/-/define-data-property-1.1.4.tgz#894dc141bb7d3060ae4366f6a0107e68fbe48c5e"
+  integrity sha512-rBMvIzlpA8v6E+SJZoo++HAYqsLrkg7MSfIinMPFhmkorw7X+dOXVJQs+QT69zGkzMyfDnIMN2Wid1+NbL3T+A==
   dependencies:
+    es-define-property "^1.0.0"
+    es-errors "^1.3.0"
+    gopd "^1.0.1"
+
+"define-properties@^1.1.3", "define-properties@^1.2.0", "define-properties@^1.2.1":
+  version "1.2.1"
+  resolved "https://registry.npmjs.org/define-properties/-/define-properties-1.2.1.tgz#10781cc616eb951a80a034bafcaa7377f6af2b6c"
+  integrity sha512-8QmQKqEASLd5nx0U1B1okLElbUuuttJ/AnYmRXbbbGDWh6uS208EjD4Xqq/I9wK7u0v6O08XhTWnt5XtEbR6Dg==
+  dependencies:
+    define-data-property "^1.0.1"
     has-property-descriptors "^1.0.0"
     object-keys "^1.1.1"
 
@@ -5406,11 +4802,6 @@ delegates@^1.0.0:
   resolved "https://registry.npmjs.org/delegates/-/delegates-1.0.0.tgz#84c6e159b81904fdca59a0ef44cd870d31250f9a"
   integrity sha512-bd2L678uiWATM6m5Z1VzNCErI3jiGzt6HGY8OVICs40JQq/HALfbyNJmp0UDakEY4pMMaN0Ly5om/B1VI/+xfQ==
 
-depd@^2.0.0:
-  version "2.0.0"
-  resolved "https://registry.npmjs.org/depd/-/depd-2.0.0.tgz#b696163cc757560d09cf22cc8fad1571b79e76df"
-  integrity sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw==
-
 deps-sort@^2.0.1:
   version "2.0.1"
   resolved "https://registry.npmjs.org/deps-sort/-/deps-sort-2.0.1.tgz#9dfdc876d2bcec3386b6829ac52162cda9fa208d"
@@ -5514,11 +4905,16 @@ doctrine@^3.0.0:
   dependencies:
     esutils "^2.0.2"
 
-"dom-accessibility-api@^0.5.6", "dom-accessibility-api@^0.5.9":
+dom-accessibility-api@^0.5.9:
   version "0.5.16"
   resolved "https://registry.npmjs.org/dom-accessibility-api/-/dom-accessibility-api-0.5.16.tgz#5a7429e6066eb3664d911e33fb0e45de8eb08453"
   integrity sha512-X7BJ2yElsnOJ30pZF4uIIDfBEVgF4XEBxL9Bxhy6dnrm5hkzqmsWHGTiHqRiITNhMyFLyAiWndIJP7Z1NTteDg==
 
+dom-accessibility-api@^0.6.3:
+  version "0.6.3"
+  resolved "https://registry.npmjs.org/dom-accessibility-api/-/dom-accessibility-api-0.6.3.tgz#993e925cc1d73f2c662e7d75dd5a5445259a8fd8"
+  integrity sha512-7ZgogeTnjuHbo+ct10G9Ffp0mif17idi0IyWNVA/wcwcm7NPOD/WEHVP3n7n3MhXqxoIYm8d6MuZohYWIZ4T3w==
+
 dom-align@^1.7.0:
   version "1.12.4"
   resolved "https://registry.npmjs.org/dom-align/-/dom-align-1.12.4.tgz#3503992eb2a7cfcb2ed3b2a6d21e0b9c00d54511"
@@ -5665,31 +5061,21 @@ eastasianwidth@^0.2.0:
   integrity sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA==
 
 ejs@~3.1.8:
-  version "3.1.9"
-  resolved "https://registry.npmjs.org/ejs/-/ejs-3.1.9.tgz#03c9e8777fe12686a9effcef22303ca3d8eeb361"
-  integrity sha512-rC+QVNMJWv+MtPgkt0y+0rVEIdbtxVADApW9JXrUVlzHetgcyczP/E7DJmWJ4fJCZF2cPcBk0laWO9ZHMG3DmQ==
+  version "3.1.10"
+  resolved "https://registry.npmjs.org/ejs/-/ejs-3.1.10.tgz#69ab8358b14e896f80cc39e62087b88500c3ac3b"
+  integrity sha512-UeJmFfOrAQS8OJWPZ4qtgHyWExa088/MtK5UEyoJGFH67cDEXkZSviOiKRCZ4Xij0zxI3JECgYs3oKx+AizQBA==
   dependencies:
     jake "^10.8.5"
 
-electron-to-chromium@^1.4.431:
-  version "1.4.437"
-  resolved "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.437.tgz#d0e73a431a9ade4467f73d48a59d752d91909316"
-  integrity sha512-ZFekRuBOHUXp21wrR5lshT6pZa/KmjkhKBAtmZz4NN5sCWlHOk3kdhiwFINrDBsRLX6FjyBAb1TRN+KBeNlyzQ==
-
-electron-to-chromium@^1.4.477:
-  version "1.4.508"
-  resolved "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.508.tgz#5641ff2f5ba11df4bd960fe6a2f9f70aa8b9af96"
-  integrity sha512-FFa8QKjQK/A5QuFr2167myhMesGrhlOBD+3cYNxO9/S4XzHEXesyTD/1/xF644gC8buFPz3ca6G1LOQD0tZrrg==
+electron-to-chromium@^1.4.668:
+  version "1.4.740"
+  resolved "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.740.tgz#89c82421332ee425e5b193e3db2dea019d423419"
+  integrity sha512-Yvg5i+iyv7Xm18BRdVPVm8lc7kgxM3r6iwqCH2zB7QZy1kZRNmd0Zqm0zcD9XoFREE5/5rwIuIAOT+/mzGcnZg==
 
-electron-to-chromium@^1.4.535:
-  version "1.4.567"
-  resolved "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.567.tgz#c92e8fbc2bd15df3068d92571733a218a5413add"
-  integrity sha512-8KR114CAYQ4/r5EIEsOmOMqQ9j0MRbJZR3aXD/KFA8RuKzyoUB4XrUCg+l8RUGqTVQgKNIgTpjaG8YHRPAbX2w==
-
-"elliptic@^6.5.3", "elliptic@^6.5.4":
-  version "6.5.4"
-  resolved "https://registry.npmjs.org/elliptic/-/elliptic-6.5.4.tgz#da37cebd31e79a1367e941b592ed1fbebd58abbb"
-  integrity sha512-iLhC6ULemrljPZb+QutR5TQGB+pdW6KGD5RSegS+8sorOZT+rdQFbsQFJgvN3eRqNALqJer4oQ16YvJHlU8hzQ==
+"elliptic@^6.5.3", "elliptic@^6.5.5":
+  version "6.5.5"
+  resolved "https://registry.npmjs.org/elliptic/-/elliptic-6.5.5.tgz#c715e09f78b6923977610d4c2346d6ce22e6dded"
+  integrity sha512-7EjbcmUm17NQFu4Pmgmq2olYMj8nwMnpcddByChSUjArp8F5DQWcIcpriwO4ZToLNAJig0yiyjswfyGNje/ixw==
   dependencies:
     bn.js "^4.11.9"
     brorand "^1.1.0"
@@ -5733,26 +5119,26 @@ encoding@^0.1.13:
   dependencies:
     once "^1.4.0"
 
-engine.io-client@~6.5.0:
-  version "6.5.0"
-  resolved "https://registry.npmjs.org/engine.io-client/-/engine.io-client-6.5.0.tgz#c77f14c0e996d3746a1fa681b3b093003dc1743d"
-  integrity sha512-C7eN3OKggSfd5g8IDgUA9guC8TNS6CEganKT7dL6Fp3q+FobcQ/WBn2Qq2XTL1vNTiFZfDzXohvqLuR9dWejdg==
+engine.io-client@~6.5.2:
+  version "6.5.3"
+  resolved "https://registry.npmjs.org/engine.io-client/-/engine.io-client-6.5.3.tgz#4cf6fa24845029b238f83c628916d9149c399bc5"
+  integrity sha512-9Z0qLB0NIisTRt1DZ/8U2k12RJn8yls/nXMZLn+/N8hANT3TcYjKFKcwbw5zFQiN4NTde3TSY9zb79e1ij6j9Q==
   dependencies:
     "@socket.io/component-emitter" "~3.1.0"
     debug "~4.3.1"
-    engine.io-parser "~5.1.0"
+    engine.io-parser "~5.2.1"
     ws "~8.11.0"
     xmlhttprequest-ssl "~2.0.0"
 
-engine.io-parser@~5.1.0:
-  version "5.1.0"
-  resolved "https://registry.npmjs.org/engine.io-parser/-/engine.io-parser-5.1.0.tgz#d593d6372d7f79212df48f807b8cace1ea1cb1b8"
-  integrity sha512-enySgNiK5tyZFynt3z7iqBR+Bto9EVVVvDFuTT0ioHCGbzirZVGDGiQjZzEp8hWl6hd5FSVytJGuScX1C1C35w==
+engine.io-parser@~5.2.1:
+  version "5.2.2"
+  resolved "https://registry.npmjs.org/engine.io-parser/-/engine.io-parser-5.2.2.tgz#37b48e2d23116919a3453738c5720455e64e1c49"
+  integrity sha512-RcyUFKA93/CXH20l4SoVvzZfrSDMOTUS3bWVpTt2FuFP+XYrL8i8oonHP7WInRyVHXh0n/ORtoeiE1os+8qkSw==
 
-enhanced-resolve@^5.15.0:
-  version "5.15.0"
-  resolved "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.15.0.tgz#1af946c7d93603eb88e9896cee4904dc012e9c35"
-  integrity sha512-LXYT42KJ7lpIKECr2mAXIaMldcNCh/7E0KBKOu4KSfkHmP+mZmSs+8V5gBAqisWBy0OO4W5Oyys0GO1Y8KtdKg==
+enhanced-resolve@^5.16.0:
+  version "5.16.0"
+  resolved "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.16.0.tgz#65ec88778083056cb32487faa9aef82ed0864787"
+  integrity sha512-O+QWCviPNSSLAD9Ucn8Awv+poAkqn3T1XY5/N7kR7rQO9yfSGWkYZDwpJ+iKF7B8rxaQKWngSqACpgzeapSyoA==
   dependencies:
     graceful-fs "^4.2.4"
     tapable "^2.2.0"
@@ -5773,9 +5159,9 @@ env-paths@^2.2.0:
   integrity sha512-+h1lkLKhZMTYjog1VEpJNG7NZJWcuc2DDk/qsqSTRRCOXiLjeQ1d1/udrUGhqMxUgAlwKNZ0cf2uqan5GLuS2A==
 
 envinfo@^7.7.3:
-  version "7.9.0"
-  resolved "https://registry.npmjs.org/envinfo/-/envinfo-7.9.0.tgz#47594a13081be0d9be6e513534e8c58dbb26c7a1"
-  integrity sha512-RODB4txU+xImYDemN5DqaKC0CHk05XSVkOX4pq0hK26Qx+1LChkuOyUDlGEjYb3ACr0n9qBhFjg37hQuJvpkRQ==
+  version "7.12.0"
+  resolved "https://registry.npmjs.org/envinfo/-/envinfo-7.12.0.tgz#b56723b39c2053d67ea5714f026d05d4f5cc7acd"
+  integrity sha512-Iw9rQJBGpJRd3rwXm9ft/JiGoAZmLxxJZELYDQoPRZ4USVhkKtIcNBPw6U+/K2mBpaqM25JSV6Yl4Az9vO2wJg==
 
 err-code@^2.0.2:
   version "2.0.3"
@@ -5789,90 +5175,69 @@ error-ex@^1.3.1:
   dependencies:
     is-arrayish "^0.2.1"
 
-"es-abstract@^1.19.0", "es-abstract@^1.20.4":
-  version "1.21.2"
-  resolved "https://registry.npmjs.org/es-abstract/-/es-abstract-1.21.2.tgz#a56b9695322c8a185dc25975aa3b8ec31d0e7eff"
-  integrity sha512-y/B5POM2iBnIxCiernH1G7rC9qQoM77lLIMQLuob0zhp8C56Po81+2Nj0WFKnd0pNReDTnkYryc+zhOzpEIROg==
-  dependencies:
-    array-buffer-byte-length "^1.0.0"
-    available-typed-arrays "^1.0.5"
-    call-bind "^1.0.2"
-    es-set-tostringtag "^2.0.1"
+"es-abstract@^1.22.1", "es-abstract@^1.22.3", "es-abstract@^1.23.0", "es-abstract@^1.23.1", "es-abstract@^1.23.2":
+  version "1.23.3"
+  resolved "https://registry.npmjs.org/es-abstract/-/es-abstract-1.23.3.tgz#8f0c5a35cd215312573c5a27c87dfd6c881a0aa0"
+  integrity sha512-e+HfNH61Bj1X9/jLc5v1owaLYuHdeHHSQlkhCBiTK8rBvKaULl/beGMxwrMXjpYrv4pz22BlY570vVePA2ho4A==
+  dependencies:
+    array-buffer-byte-length "^1.0.1"
+    arraybuffer.prototype.slice "^1.0.3"
+    available-typed-arrays "^1.0.7"
+    call-bind "^1.0.7"
+    data-view-buffer "^1.0.1"
+    data-view-byte-length "^1.0.1"
+    data-view-byte-offset "^1.0.0"
+    es-define-property "^1.0.0"
+    es-errors "^1.3.0"
+    es-object-atoms "^1.0.0"
+    es-set-tostringtag "^2.0.3"
     es-to-primitive "^1.2.1"
-    function.prototype.name "^1.1.5"
-    get-intrinsic "^1.2.0"
-    get-symbol-description "^1.0.0"
+    function.prototype.name "^1.1.6"
+    get-intrinsic "^1.2.4"
+    get-symbol-description "^1.0.2"
     globalthis "^1.0.3"
     gopd "^1.0.1"
-    has "^1.0.3"
-    has-property-descriptors "^1.0.0"
-    has-proto "^1.0.1"
+    has-property-descriptors "^1.0.2"
+    has-proto "^1.0.3"
     has-symbols "^1.0.3"
-    internal-slot "^1.0.5"
-    is-array-buffer "^3.0.2"
+    hasown "^2.0.2"
+    internal-slot "^1.0.7"
+    is-array-buffer "^3.0.4"
     is-callable "^1.2.7"
-    is-negative-zero "^2.0.2"
+    is-data-view "^1.0.1"
+    is-negative-zero "^2.0.3"
     is-regex "^1.1.4"
-    is-shared-array-buffer "^1.0.2"
+    is-shared-array-buffer "^1.0.3"
     is-string "^1.0.7"
-    is-typed-array "^1.1.10"
+    is-typed-array "^1.1.13"
     is-weakref "^1.0.2"
-    object-inspect "^1.12.3"
+    object-inspect "^1.13.1"
     object-keys "^1.1.1"
-    object.assign "^4.1.4"
-    regexp.prototype.flags "^1.4.3"
-    safe-regex-test "^1.0.0"
-    string.prototype.trim "^1.2.7"
-    string.prototype.trimend "^1.0.6"
-    string.prototype.trimstart "^1.0.6"
-    typed-array-length "^1.0.4"
+    object.assign "^4.1.5"
+    regexp.prototype.flags "^1.5.2"
+    safe-array-concat "^1.1.2"
+    safe-regex-test "^1.0.3"
+    string.prototype.trim "^1.2.9"
+    string.prototype.trimend "^1.0.8"
+    string.prototype.trimstart "^1.0.8"
+    typed-array-buffer "^1.0.2"
+    typed-array-byte-length "^1.0.1"
+    typed-array-byte-offset "^1.0.2"
+    typed-array-length "^1.0.6"
     unbox-primitive "^1.0.2"
-    which-typed-array "^1.1.9"
+    which-typed-array "^1.1.15"
 
-es-abstract@^1.21.3:
-  version "1.22.1"
-  resolved "https://registry.npmjs.org/es-abstract/-/es-abstract-1.22.1.tgz#8b4e5fc5cefd7f1660f0f8e1a52900dfbc9d9ccc"
-  integrity sha512-ioRRcXMO6OFyRpyzV3kE1IIBd4WG5/kltnzdxSCqoP8CMGs/Li+M1uF5o7lOkZVFjDs+NLesthnF66Pg/0q0Lw==
+es-define-property@^1.0.0:
+  version "1.0.0"
+  resolved "https://registry.npmjs.org/es-define-property/-/es-define-property-1.0.0.tgz#c7faefbdff8b2696cf5f46921edfb77cc4ba3845"
+  integrity sha512-jxayLKShrEqqzJ0eumQbVhTYQM27CfT1T35+gCgDFoL82JLsXqTJ76zv6A0YLOgEnLUMvLzsDsGIrl8NFpT2gQ==
   dependencies:
-    array-buffer-byte-length "^1.0.0"
-    arraybuffer.prototype.slice "^1.0.1"
-    available-typed-arrays "^1.0.5"
-    call-bind "^1.0.2"
-    es-set-tostringtag "^2.0.1"
-    es-to-primitive "^1.2.1"
-    function.prototype.name "^1.1.5"
-    get-intrinsic "^1.2.1"
-    get-symbol-description "^1.0.0"
-    globalthis "^1.0.3"
-    gopd "^1.0.1"
-    has "^1.0.3"
-    has-property-descriptors "^1.0.0"
-    has-proto "^1.0.1"
-    has-symbols "^1.0.3"
-    internal-slot "^1.0.5"
-    is-array-buffer "^3.0.2"
-    is-callable "^1.2.7"
-    is-negative-zero "^2.0.2"
-    is-regex "^1.1.4"
-    is-shared-array-buffer "^1.0.2"
-    is-string "^1.0.7"
-    is-typed-array "^1.1.10"
-    is-weakref "^1.0.2"
-    object-inspect "^1.12.3"
-    object-keys "^1.1.1"
-    object.assign "^4.1.4"
-    regexp.prototype.flags "^1.5.0"
-    safe-array-concat "^1.0.0"
-    safe-regex-test "^1.0.0"
-    string.prototype.trim "^1.2.7"
-    string.prototype.trimend "^1.0.6"
-    string.prototype.trimstart "^1.0.6"
-    typed-array-buffer "^1.0.0"
-    typed-array-byte-length "^1.0.0"
-    typed-array-byte-offset "^1.0.0"
-    typed-array-length "^1.0.4"
-    unbox-primitive "^1.0.2"
-    which-typed-array "^1.1.10"
+    get-intrinsic "^1.2.4"
+
+"es-errors@^1.1.0", "es-errors@^1.2.1", "es-errors@^1.3.0":
+  version "1.3.0"
+  resolved "https://registry.npmjs.org/es-errors/-/es-errors-1.3.0.tgz#05f75a25dab98e4fb1dcd5e1472c0546d5057c8f"
+  integrity sha512-Zf5H2Kxt2xjTvbJvP2ZWLEICxA6j+hAmMzIlypy4xcBg1vKVnx89Wy0GbS+kf5cwCVFFzdCFh2XSCFNULS6csw==
 
 es-get-iterator@^1.1.3:
   version "1.1.3"
@@ -5889,42 +5254,53 @@ es-get-iterator@^1.1.3:
     isarray "^2.0.5"
     stop-iteration-iterator "^1.0.0"
 
-es-iterator-helpers@^1.0.12:
-  version "1.0.12"
-  resolved "https://registry.npmjs.org/es-iterator-helpers/-/es-iterator-helpers-1.0.12.tgz#272f7270f270f4d63dd8aa718228ffa901fd086e"
-  integrity sha512-T6Ldv67RYULYtZ1k1omngDTVQSTVNX/ZSjDiwlw0PMokhy8kq2LFElleaEjpvlSaXh9ugJ4zrBgbQ7L+Bjdm3Q==
-  dependencies:
-    asynciterator.prototype "^1.0.0"
-    es-abstract "^1.21.3"
-    es-set-tostringtag "^2.0.1"
-    function-bind "^1.1.1"
+es-iterator-helpers@^1.0.17:
+  version "1.0.18"
+  resolved "https://registry.npmjs.org/es-iterator-helpers/-/es-iterator-helpers-1.0.18.tgz#4d3424f46b24df38d064af6fbbc89274e29ea69d"
+  integrity sha512-scxAJaewsahbqTYrGKJihhViaM6DDZDDoucfvzNbK0pOren1g/daDQ3IAhzn+1G14rBG7w+i5N+qul60++zlKA==
+  dependencies:
+    call-bind "^1.0.7"
+    define-properties "^1.2.1"
+    es-abstract "^1.23.0"
+    es-errors "^1.3.0"
+    es-set-tostringtag "^2.0.3"
+    function-bind "^1.1.2"
+    get-intrinsic "^1.2.4"
     globalthis "^1.0.3"
-    has-proto "^1.0.1"
+    has-property-descriptors "^1.0.2"
+    has-proto "^1.0.3"
     has-symbols "^1.0.3"
-    internal-slot "^1.0.5"
-    iterator.prototype "^1.1.0"
-    safe-array-concat "^1.0.0"
+    internal-slot "^1.0.7"
+    iterator.prototype "^1.1.2"
+    safe-array-concat "^1.1.2"
 
 es-module-lexer@^1.2.1:
-  version "1.3.0"
-  resolved "https://registry.npmjs.org/es-module-lexer/-/es-module-lexer-1.3.0.tgz#6be9c9e0b4543a60cd166ff6f8b4e9dae0b0c16f"
-  integrity sha512-vZK7T0N2CBmBOixhmjdqx2gWVbFZ4DXZ/NyRMZVlJXPa7CyFS+/a4QQsDGDQy9ZfEzxFuNEsMLeQJnKP2p5/JA==
+  version "1.5.0"
+  resolved "https://registry.npmjs.org/es-module-lexer/-/es-module-lexer-1.5.0.tgz#4878fee3789ad99e065f975fdd3c645529ff0236"
+  integrity sha512-pqrTKmwEIgafsYZAGw9kszYzmagcE/n4dbgwGWLEXg7J4QFJVQRBld8j3Q3GNez79jzxZshq0bcT962QHOghjw==
 
-es-set-tostringtag@^2.0.1:
-  version "2.0.1"
-  resolved "https://registry.npmjs.org/es-set-tostringtag/-/es-set-tostringtag-2.0.1.tgz#338d502f6f674301d710b80c8592de8a15f09cd8"
-  integrity sha512-g3OMbtlwY3QewlqAiMLI47KywjWZoEytKr8pf6iTC8uJq5bIAH52Z9pnQ8pVL6whrCto53JZDuUIsifGeLorTg==
+es-object-atoms@^1.0.0:
+  version "1.0.0"
+  resolved "https://registry.npmjs.org/es-object-atoms/-/es-object-atoms-1.0.0.tgz#ddb55cd47ac2e240701260bc2a8e31ecb643d941"
+  integrity sha512-MZ4iQ6JwHOBQjahnjwaC1ZtIBH+2ohjamzAO3oaHcXYup7qxjF2fixyH+Q71voWHeOkI2q/TnJao/KfXYIZWbw==
   dependencies:
-    get-intrinsic "^1.1.3"
-    has "^1.0.3"
-    has-tostringtag "^1.0.0"
+    es-errors "^1.3.0"
 
-es-shim-unscopables@^1.0.0:
-  version "1.0.0"
-  resolved "https://registry.npmjs.org/es-shim-unscopables/-/es-shim-unscopables-1.0.0.tgz#702e632193201e3edf8713635d083d378e510241"
-  integrity sha512-Jm6GPcCdC30eMLbZ2x8z2WuRwAws3zTBBKuusffYVUrNj/GVSUAZ+xKMaUpfNDR5IbyNA5LJbaecoUVbmUcB1w==
+es-set-tostringtag@^2.0.3:
+  version "2.0.3"
+  resolved "https://registry.npmjs.org/es-set-tostringtag/-/es-set-tostringtag-2.0.3.tgz#8bb60f0a440c2e4281962428438d58545af39777"
+  integrity sha512-3T8uNMC3OQTHkFUsFq8r/BwAXLHvU/9O9mE0fBc/MY5iq/8H7ncvO947LmYA6ldWw9Uh8Yhf25zu6n7nML5QWQ==
+  dependencies:
+    get-intrinsic "^1.2.4"
+    has-tostringtag "^1.0.2"
+    hasown "^2.0.1"
+
+"es-shim-unscopables@^1.0.0", "es-shim-unscopables@^1.0.2":
+  version "1.0.2"
+  resolved "https://registry.npmjs.org/es-shim-unscopables/-/es-shim-unscopables-1.0.2.tgz#1f6942e71ecc7835ed1c8a83006d8771a63a3763"
+  integrity sha512-J3yBRXCzDu4ULnQwxyToo/OjdMx6akgVC7K6few0a7F/0wLtmKKN7I73AH5T2836UuXRqN7Qg+IIUw/+YJksRw==
   dependencies:
-    has "^1.0.3"
+    hasown "^2.0.0"
 
 es-to-primitive@^1.2.1:
   version "1.2.1"
@@ -5936,9 +5312,9 @@ es-to-primitive@^1.2.1:
     is-symbol "^1.0.2"
 
 escalade@^3.1.1:
-  version "3.1.1"
-  resolved "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz#d8cfdc7000965c5a0174b4a82eaa5c0552742e40"
-  integrity sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==
+  version "3.1.2"
+  resolved "https://registry.npmjs.org/escalade/-/escalade-3.1.2.tgz#54076e9ab29ea5bf3d8f1ed62acffbb88272df27"
+  integrity sha512-ErCHMCae19vR8vQGe50xIsVomy19rg6gFu3+r3jkEO46suLMWBksvVyoGgQV+jOfl84ZSOSlmv6Gxa89PmTGmA==
 
 "escape-string-regexp@^1.0.2", "escape-string-regexp@^1.0.5":
   version "1.0.5"
@@ -5966,9 +5342,9 @@ escodegen@^2.0.0:
     source-map "~0.6.1"
 
 eslint-plugin-jest@^27.4.0:
-  version "27.4.0"
-  resolved "https://registry.npmjs.org/eslint-plugin-jest/-/eslint-plugin-jest-27.4.0.tgz#3926cca723c40c3d7a3fe0e1fd911eff5e681f50"
-  integrity sha512-ukVeKmMPAUA5SWjHenvyyXnirKfHKMdOsTZdn5tZx5EW05HGVQwBohigjFZGGj3zuv1cV6hc82FvWv6LdIbkgg==
+  version "27.9.0"
+  resolved "https://registry.npmjs.org/eslint-plugin-jest/-/eslint-plugin-jest-27.9.0.tgz#7c98a33605e1d8b8442ace092b60e9919730000b"
+  integrity sha512-QIT7FH7fNmd9n4se7FFKHbsLKGQiw885Ds6Y/sxKgCZ6natwCsXdgPOADnYVxN2QrRweF0FZWbJ6S7Rsn7llug==
   dependencies:
     "@typescript-eslint/utils" "^5.10.0"
 
@@ -5978,26 +5354,28 @@ eslint-plugin-react-hooks@^4.3.0:
   integrity sha512-oFc7Itz9Qxh2x4gNHStv3BqJq54ExXmfC+a1NjAta66IAN87Wu0R/QArgIS9qKzX3dXKPI9H5crl9QchNMY9+g==
 
 eslint-plugin-react@^7.33.2:
-  version "7.33.2"
-  resolved "https://registry.npmjs.org/eslint-plugin-react/-/eslint-plugin-react-7.33.2.tgz#69ee09443ffc583927eafe86ffebb470ee737608"
-  integrity sha512-73QQMKALArI8/7xGLNI/3LylrEYrlKZSb5C9+q3OtOewTnMQi5cT+aE9E41sLCmli3I9PGGmD1yiZydyo4FEPw==
-  dependencies:
-    array-includes "^3.1.6"
-    array.prototype.flatmap "^1.3.1"
-    array.prototype.tosorted "^1.1.1"
+  version "7.34.1"
+  resolved "https://registry.npmjs.org/eslint-plugin-react/-/eslint-plugin-react-7.34.1.tgz#6806b70c97796f5bbfb235a5d3379ece5f4da997"
+  integrity sha512-N97CxlouPT1AHt8Jn0mhhN2RrADlUAsk1/atcT2KyA/l9Q/E6ll7OIGwNumFmWfZ9skV3XXccYS19h80rHtgkw==
+  dependencies:
+    array-includes "^3.1.7"
+    array.prototype.findlast "^1.2.4"
+    array.prototype.flatmap "^1.3.2"
+    array.prototype.toreversed "^1.1.2"
+    array.prototype.tosorted "^1.1.3"
     doctrine "^2.1.0"
-    es-iterator-helpers "^1.0.12"
+    es-iterator-helpers "^1.0.17"
     estraverse "^5.3.0"
     jsx-ast-utils "^2.4.1 || ^3.0.0"
     minimatch "^3.1.2"
-    object.entries "^1.1.6"
-    object.fromentries "^2.0.6"
-    object.hasown "^1.1.2"
-    object.values "^1.1.6"
+    object.entries "^1.1.7"
+    object.fromentries "^2.0.7"
+    object.hasown "^1.1.3"
+    object.values "^1.1.7"
     prop-types "^15.8.1"
-    resolve "^2.0.0-next.4"
+    resolve "^2.0.0-next.5"
     semver "^6.3.1"
-    string.prototype.matchall "^4.0.8"
+    string.prototype.matchall "^4.0.10"
 
 eslint-rule-composer@^0.3.0:
   version "0.3.0"
@@ -6012,10 +5390,10 @@ eslint-rule-composer@^0.3.0:
     esrecurse "^4.3.0"
     estraverse "^4.1.1"
 
-eslint-scope@^7.2.0:
-  version "7.2.0"
-  resolved "https://registry.npmjs.org/eslint-scope/-/eslint-scope-7.2.0.tgz#f21ebdafda02352f103634b96dd47d9f81ca117b"
-  integrity sha512-DYj5deGlHBfMt15J7rdtyKNq/Nqlv5KfU4iodrQ019XESsRnwXH9KAE0y3cwtUHDo2ob7CypAnCqefh6vioWRw==
+eslint-scope@^7.2.2:
+  version "7.2.2"
+  resolved "https://registry.npmjs.org/eslint-scope/-/eslint-scope-7.2.2.tgz#deb4f92563390f32006894af62a22dba1c46423f"
+  integrity sha512-dOt21O7lTMhDM+X9mB4GX+DZrZtCUJPL/wlcTqxyrx5IvO0IYtILdtrQGQp+8n5S0gwSVmOf9NQrjMOgfQZlIg==
   dependencies:
     esrecurse "^4.3.0"
     estraverse "^5.2.0"
@@ -6025,32 +5403,33 @@ eslint-visitor-keys@^2.1.0:
   resolved "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-2.1.0.tgz#f65328259305927392c938ed44eb0a5c9b2bd303"
   integrity sha512-0rSmRBzXgDzIsD6mGdJgevzgezI534Cer5L/vyMX0kHzT/jiB43jRhd9YUlMGYLQy2zprNmoT8qasCGtY+QaKw==
 
-"eslint-visitor-keys@^3.3.0", "eslint-visitor-keys@^3.4.1":
-  version "3.4.1"
-  resolved "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.4.1.tgz#c22c48f48942d08ca824cc526211ae400478a994"
-  integrity sha512-pZnmmLwYzf+kWaM/Qgrvpen51upAktaaiI01nsJD/Yr3lMOdNtq0cxkrrg16w64VtisN6okbs7Q8AfGqj4c9fA==
+"eslint-visitor-keys@^3.3.0", "eslint-visitor-keys@^3.4.1", "eslint-visitor-keys@^3.4.3":
+  version "3.4.3"
+  resolved "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.4.3.tgz#0cd72fe8550e3c2eae156a96a4dddcd1c8ac5800"
+  integrity sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==
 
 eslint@^8.37.0:
-  version "8.43.0"
-  resolved "https://registry.npmjs.org/eslint/-/eslint-8.43.0.tgz#3e8c6066a57097adfd9d390b8fc93075f257a094"
-  integrity sha512-aaCpf2JqqKesMFGgmRPessmVKjcGXqdlAYLLC3THM8t5nBRZRQ+st5WM/hoJXkdioEXLLbXgclUpM0TXo5HX5Q==
+  version "8.57.0"
+  resolved "https://registry.npmjs.org/eslint/-/eslint-8.57.0.tgz#c786a6fd0e0b68941aaf624596fb987089195668"
+  integrity sha512-dZ6+mexnaTIbSBZWgou51U6OmzIhYM2VcNdtiTtI7qPNZm35Akpr0f6vtw3w1Kmn5PYo+tZVfh13WrhpS6oLqQ==
   dependencies:
     "@eslint-community/eslint-utils" "^4.2.0"
-    "@eslint-community/regexpp" "^4.4.0"
-    "@eslint/eslintrc" "^2.0.3"
-    "@eslint/js" "8.43.0"
-    "@humanwhocodes/config-array" "^0.11.10"
+    "@eslint-community/regexpp" "^4.6.1"
+    "@eslint/eslintrc" "^2.1.4"
+    "@eslint/js" "8.57.0"
+    "@humanwhocodes/config-array" "^0.11.14"
     "@humanwhocodes/module-importer" "^1.0.1"
     "@nodelib/fs.walk" "^1.2.8"
-    ajv "^6.10.0"
+    "@ungap/structured-clone" "^1.2.0"
+    ajv "^6.12.4"
     chalk "^4.0.0"
     cross-spawn "^7.0.2"
     debug "^4.3.2"
     doctrine "^3.0.0"
     escape-string-regexp "^4.0.0"
-    eslint-scope "^7.2.0"
-    eslint-visitor-keys "^3.4.1"
-    espree "^9.5.2"
+    eslint-scope "^7.2.2"
+    eslint-visitor-keys "^3.4.3"
+    espree "^9.6.1"
     esquery "^1.4.2"
     esutils "^2.0.2"
     fast-deep-equal "^3.1.3"
@@ -6060,7 +5439,6 @@ eslint@^8.37.0:
     globals "^13.19.0"
     graphemer "^1.4.0"
     ignore "^5.2.0"
-    import-fresh "^3.0.0"
     imurmurhash "^0.1.4"
     is-glob "^4.0.0"
     is-path-inside "^3.0.3"
@@ -6070,17 +5448,16 @@ eslint@^8.37.0:
     lodash.merge "^4.6.2"
     minimatch "^3.1.2"
     natural-compare "^1.4.0"
-    optionator "^0.9.1"
+    optionator "^0.9.3"
     strip-ansi "^6.0.1"
-    strip-json-comments "^3.1.0"
     text-table "^0.2.0"
 
-espree@^9.5.2:
-  version "9.5.2"
-  resolved "https://registry.npmjs.org/espree/-/espree-9.5.2.tgz#e994e7dc33a082a7a82dceaf12883a829353215b"
-  integrity sha512-7OASN1Wma5fum5SrNhFMAMJxOUAbhyfQ8dQ//PJaJbNw0URTPWqIghHWt1MmAANKhHZIYOHruW4Kw4ruUWOdGw==
+"espree@^9.6.0", "espree@^9.6.1":
+  version "9.6.1"
+  resolved "https://registry.npmjs.org/espree/-/espree-9.6.1.tgz#a2a17b8e434690a5432f2f8018ce71d331a48c6f"
+  integrity sha512-oruZaFkjorTpF32kDSI5/75ViwGeZginGGy2NoOSg3Q9bnwlnmDm4HLnkl0RE3n+njDXR037aY1+x58Z/zFdwQ==
   dependencies:
-    acorn "^8.8.0"
+    acorn "^8.9.0"
     acorn-jsx "^5.3.2"
     eslint-visitor-keys "^3.4.1"
 
@@ -6216,16 +5593,16 @@ exit@^0.1.2:
   resolved "https://registry.npmjs.org/exit/-/exit-0.1.2.tgz#0632638f8d877cc82107d30a0fff1a17cba1cd0c"
   integrity sha512-Zk/eNKV2zbjpKzrsQ+n1G6poVbErQxJ0LBOJXaKZ1EViLzH+hrLu9cdXI4zw9dBQJslwBEpbQ2P1oS7nDxs6jQ==
 
-"expect@^29.0.0", "expect@^29.6.4":
-  version "29.6.4"
-  resolved "https://registry.npmjs.org/expect/-/expect-29.6.4.tgz#a6e6f66d4613717859b2fe3da98a739437b6f4b8"
-  integrity sha512-F2W2UyQ8XYyftHT57dtfg8Ue3X5qLgm2sSug0ivvLRH/VKNRL/pDxg/TH7zVzbQB0tu80clNFy6LU7OS/VSEKA==
+"expect@^29.0.0", "expect@^29.7.0":
+  version "29.7.0"
+  resolved "https://registry.npmjs.org/expect/-/expect-29.7.0.tgz#578874590dcb3214514084c08115d8aee61e11bc"
+  integrity sha512-2Zks0hf1VLFYI1kbh0I5jP3KHHyCHpkfyHBzsSXRFgl/Bg9mWYfMW8oD+PdMPlEwy5HNsR9JutYy6pMeOh61nw==
   dependencies:
-    "@jest/expect-utils" "^29.6.4"
+    "@jest/expect-utils" "^29.7.0"
     jest-get-type "^29.6.3"
-    jest-matcher-utils "^29.6.4"
-    jest-message-util "^29.6.3"
-    jest-util "^29.6.3"
+    jest-matcher-utils "^29.7.0"
+    jest-message-util "^29.7.0"
+    jest-util "^29.7.0"
 
 exponential-backoff@^3.1.1:
   version "3.1.1"
@@ -6259,10 +5636,10 @@ ext-name@^5.0.0:
   resolved "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz#3a7d56b559d6cbc3eb512325244e619a65c6c525"
   integrity sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==
 
-"fast-glob@^3.2.11", "fast-glob@^3.2.7", "fast-glob@^3.2.9":
-  version "3.2.12"
-  resolved "https://registry.npmjs.org/fast-glob/-/fast-glob-3.2.12.tgz#7f39ec99c2e6ab030337142da9e0c18f37afae80"
-  integrity sha512-DVj4CQIYYow0BlaelwK1pHl5n5cRSJfM60UA0zK891sVInoPri2Ekj7+e1CT3/3qxXenpI+nBBmQAcJPJgaj4w==
+"fast-glob@^3.2.11", "fast-glob@^3.2.7", "fast-glob@^3.2.9", "fast-glob@^3.3.0":
+  version "3.3.2"
+  resolved "https://registry.npmjs.org/fast-glob/-/fast-glob-3.3.2.tgz#a904501e57cfdd2ffcded45e99a54fef55e46129"
+  integrity sha512-oX2ruAFQwf/Orj8m737Y5adxDQO0LAB7/S5MnxCdTNDd4p6BsyIVsv9JQsATbTSq8KHRpLwIHbVlUNatxd+1Ow==
   dependencies:
     "@nodelib/fs.stat" "^2.0.2"
     "@nodelib/fs.walk" "^1.2.3"
@@ -6296,9 +5673,9 @@ fastest-levenshtein@^1.0.12:
   integrity sha512-eRnCtTTtGZFpQCwhJiUOuxPQWRXVKYDn0b2PeHfXL6/Zi53SLAzAHfVhVWK2AryC/WH05kGfxhFIPvTF0SXQzg==
 
 fastq@^1.6.0:
-  version "1.15.0"
-  resolved "https://registry.npmjs.org/fastq/-/fastq-1.15.0.tgz#d04d07c6a2a68fe4599fea8d2e103a937fae6b3a"
-  integrity sha512-wBrocU2LCXXa+lWBt8RoIRD89Fi8OdABODa/kEnyeyjS5aZO5/GNvI5sEINADqP/h8M29UHTHUb53sUu5Ihqdw==
+  version "1.17.1"
+  resolved "https://registry.npmjs.org/fastq/-/fastq-1.17.1.tgz#2a523f07a4e7b1e81a42b91b8bf2254107753b47"
+  integrity sha512-sRVD3lWVIXWg6By68ZN7vho9a1pQcN/WBFaAAsDDFzlJjvoGx0P8z7V1t72grFJfJhu3YPZBuu25f7Kaw2jN1w==
   dependencies:
     reusify "^1.0.4"
 
@@ -6435,17 +5812,23 @@ find-versions@^3.0.0:
     semver-regex "^2.0.0"
 
 flat-cache@^3.0.4:
-  version "3.0.4"
-  resolved "https://registry.npmjs.org/flat-cache/-/flat-cache-3.0.4.tgz#61b0338302b2fe9f957dcc32fc2a87f1c3048b11"
-  integrity sha512-dm9s5Pw7Jc0GvMYbshN6zchCA9RgQlzzEZX3vylR9IqFfS8XciblUXOKfW6SiuJ0e13eDYZoZV5wdrev7P3Nwg==
+  version "3.2.0"
+  resolved "https://registry.npmjs.org/flat-cache/-/flat-cache-3.2.0.tgz#2c0c2d5040c99b1632771a9d105725c0115363ee"
+  integrity sha512-CYcENa+FtcUKLmhhqyctpclsq7QF38pKjZHsGNiSQF5r4FtoKDWabFDl3hzaEQMvT1LHEysw5twgLvpYYb4vbw==
   dependencies:
-    flatted "^3.1.0"
+    flatted "^3.2.9"
+    keyv "^4.5.3"
     rimraf "^3.0.2"
 
-flatted@^3.1.0:
-  version "3.2.7"
-  resolved "https://registry.npmjs.org/flatted/-/flatted-3.2.7.tgz#609f39207cb614b89d0765b477cb2d437fbf9787"
-  integrity sha512-5nqDSxl8nn5BSNxyR3n4I6eDmbolI6WT+QqR547RwxQapgjQBmtktdP+HTBb/a/zLsbzERTONyUB5pefh5TtjQ==
+flat@^5.0.2:
+  version "5.0.2"
+  resolved "https://registry.npmjs.org/flat/-/flat-5.0.2.tgz#8ca6fe332069ffa9d324c327198c598259ceb241"
+  integrity sha512-b6suED+5/3rTpUBdG1gupIl8MPFCAMA0QXwmljLhvCUKcUvdE4gWky9zpuGCcXHOsz4J9wPGNWq6OKpmIzz3hQ==
+
+flatted@^3.2.9:
+  version "3.3.1"
+  resolved "https://registry.npmjs.org/flatted/-/flatted-3.3.1.tgz#21db470729a6734d4997002f439cb308987f567a"
+  integrity sha512-X8cqMLLie7KsNUDSdzeN8FYK9rEt4Dt67OsG/DNGnYTSDBG4uFAJFBnUeiV+zCVAvwFy56IjM9sH51jVaEhNxw==
 
 follow-redirects@^1.15.6:
   version "1.15.6"
@@ -6476,10 +5859,10 @@ form-data@^4.0.0:
     combined-stream "^1.0.8"
     mime-types "^2.1.12"
 
-fraction.js@^4.2.0:
-  version "4.2.0"
-  resolved "https://registry.npmjs.org/fraction.js/-/fraction.js-4.2.0.tgz#448e5109a313a3527f5a3ab2119ec4cf0e0e2950"
-  integrity sha512-MhLuK+2gUcnZe8ZHlaaINnQLl0xRIGRfcGk2yl8xoQAfHrSsL3rYu6FCmBdkdbhc9EPlwyGHewaRsvwRMJtAlA==
+fraction.js@^4.3.7:
+  version "4.3.7"
+  resolved "https://registry.npmjs.org/fraction.js/-/fraction.js-4.3.7.tgz#06ca0085157e42fda7f9e726e79fefc4068840f7"
+  integrity sha512-ZsDfxO51wGAXREY55a7la9LScWpwv9RxIrYABrlvOFBlH/ShPnrtsXeuUIfXKKOVicNxQ+o8JTbJvjS4M89yew==
 
 from2@^2.1.1:
   version "2.3.0"
@@ -6494,7 +5877,7 @@ fs-constants@^1.0.0:
   resolved "https://registry.npmjs.org/fs-constants/-/fs-constants-1.0.0.tgz#6be0de9be998ce16af8afc24497b9ee9b7ccd9ad"
   integrity sha512-y6OAwoSIf7FyjMIv94u+b5rdheZEjzR63GTyZJm5qh4Bi+2YgwLCcI/fPFZkL5PSixOt6ZNKm+w+Hfp/Bciwow==
 
-fs-minipass@^2.0.0:
+"fs-minipass@^2.0.0", "fs-minipass@^2.1.0":
   version "2.1.0"
   resolved "https://registry.npmjs.org/fs-minipass/-/fs-minipass-2.1.0.tgz#7f5036fdbf12c63c169190cbe4199c852271f9fb"
   integrity sha512-V/JgOLFCS+R6Vcq0slCuaeWEdNC3ouDlJMNIsacH2VtALiu9mV4LPrHc5cDl8k5aw6J8jwgWWpiTo5RYhmIzvg==
@@ -6502,11 +5885,11 @@ fs-minipass@^2.0.0:
     minipass "^3.0.0"
 
 fs-minipass@^3.0.0:
-  version "3.0.2"
-  resolved "https://registry.npmjs.org/fs-minipass/-/fs-minipass-3.0.2.tgz#5b383858efa8c1eb8c33b39e994f7e8555b8b3a3"
-  integrity sha512-2GAfyfoaCDRrM6jaOS3UsBts8yJ55VioXdWcOL7dK9zdAuKT71+WBA4ifnNYqVjYv+4SsPxjK0JT4yIIn4cA/g==
+  version "3.0.3"
+  resolved "https://registry.npmjs.org/fs-minipass/-/fs-minipass-3.0.3.tgz#79a85981c4dc120065e96f62086bf6f9dc26cc54"
+  integrity sha512-XUBA9XClHbnJWSfBzjkm6RvPsyg3sryZt06BEQoXcF7EK/xpGaQYJgQKDJSUH5SGZ76Y7pFx1QBnXz09rU5Fbw==
   dependencies:
-    minipass "^5.0.0"
+    minipass "^7.0.3"
 
 fs.realpath@^1.0.0:
   version "1.0.0"
@@ -6520,29 +5903,22 @@ fsevents@^2.3.2:
   dependencies:
     node-gyp latest
 
-fsevents@~2.3.2:
-  version "2.3.2"
-  resolved "https://registry.npmjs.org/fsevents/-/fsevents-2.3.2.tgz#8a526f78b8fdf4623b709e0b975c52c24c02fd1a"
-  integrity sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==
-  dependencies:
-    node-gyp latest
-
-function-bind@^1.1.1:
-  version "1.1.1"
-  resolved "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz#a56899d3ea3c9bab874bb9773b7c5ede92f4895d"
-  integrity sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==
+function-bind@^1.1.2:
+  version "1.1.2"
+  resolved "https://registry.npmjs.org/function-bind/-/function-bind-1.1.2.tgz#2c02d864d97f3ea6c8830c464cbd11ab6eab7a1c"
+  integrity sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==
 
-function.prototype.name@^1.1.5:
-  version "1.1.5"
-  resolved "https://registry.npmjs.org/function.prototype.name/-/function.prototype.name-1.1.5.tgz#cce0505fe1ffb80503e6f9e46cc64e46a12a9621"
-  integrity sha512-uN7m/BzVKQnCUF/iW8jYea67v++2u7m5UgENbHRtdDVclOUP+FMPlCNdmk0h/ysGyo2tavMJEDqJAkJdRa1vMA==
+"function.prototype.name@^1.1.5", "function.prototype.name@^1.1.6":
+  version "1.1.6"
+  resolved "https://registry.npmjs.org/function.prototype.name/-/function.prototype.name-1.1.6.tgz#cdf315b7d90ee77a4c6ee216c3c3362da07533fd"
+  integrity sha512-Z5kx79swU5P27WEayXM1tBi5Ze/lbIyiNgU3qyXUOf9b2rgXYyF9Dy9Cx+IQv/Lc8WCG6L82zwUPpSS9hGehIg==
   dependencies:
     call-bind "^1.0.2"
-    define-properties "^1.1.3"
-    es-abstract "^1.19.0"
-    functions-have-names "^1.2.2"
+    define-properties "^1.2.0"
+    es-abstract "^1.22.1"
+    functions-have-names "^1.2.3"
 
-"functions-have-names@^1.2.2", "functions-have-names@^1.2.3":
+functions-have-names@^1.2.3:
   version "1.2.3"
   resolved "https://registry.npmjs.org/functions-have-names/-/functions-have-names-1.2.3.tgz#0404fe4ee2ba2f607f0e0ec3c80bae994133b834"
   integrity sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ==
@@ -6581,15 +5957,16 @@ get-caller-file@^2.0.5:
   resolved "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz#4f94412a82db32f36e3b0b9741f8a97feb031f7e"
   integrity sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==
 
-"get-intrinsic@^1.0.2", "get-intrinsic@^1.1.1", "get-intrinsic@^1.1.3", "get-intrinsic@^1.2.0", "get-intrinsic@^1.2.1":
-  version "1.2.1"
-  resolved "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.2.1.tgz#d295644fed4505fc9cde952c37ee12b477a83d82"
-  integrity sha512-2DcsyfABl+gVHEfCOaTrWgyt+tb6MSEGmKq+kI5HwLbIYgjgmMcV8KQ41uaKz1xxUcn9tJtgFbQUEVcEbd0FYw==
+"get-intrinsic@^1.1.3", "get-intrinsic@^1.2.1", "get-intrinsic@^1.2.2", "get-intrinsic@^1.2.3", "get-intrinsic@^1.2.4":
+  version "1.2.4"
+  resolved "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.2.4.tgz#e385f5a4b5227d449c3eabbad05494ef0abbeadd"
+  integrity sha512-5uYhsJH8VJBTv7oslg4BznJYhDoRI6waYCxMmCdnTrcCrHA/fCFKoTFz2JKKE0HdDFUF7/oQuhzumXJK7paBRQ==
   dependencies:
-    function-bind "^1.1.1"
-    has "^1.0.3"
+    es-errors "^1.3.0"
+    function-bind "^1.1.2"
     has-proto "^1.0.1"
     has-symbols "^1.0.3"
+    hasown "^2.0.0"
 
 get-package-type@^0.1.0:
   version "0.1.0"
@@ -6633,15 +6010,16 @@ get-stream@^4.0.0:
   resolved "https://registry.npmjs.org/get-stream/-/get-stream-6.0.1.tgz#a262d8eef67aced57c2852ad6167526a43cbf7b7"
   integrity sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==
 
-get-symbol-description@^1.0.0:
-  version "1.0.0"
-  resolved "https://registry.npmjs.org/get-symbol-description/-/get-symbol-description-1.0.0.tgz#7fdb81c900101fbd564dd5f1a30af5aadc1e58d6"
-  integrity sha512-2EmdH1YvIQiZpltCNgkuiUnyukzxM/R6NDJX31Ke3BG1Nq5b0S2PhX59UKi9vZpPDQVdqn+1IcaAwnzTT5vCjw==
+get-symbol-description@^1.0.2:
+  version "1.0.2"
+  resolved "https://registry.npmjs.org/get-symbol-description/-/get-symbol-description-1.0.2.tgz#533744d5aa20aca4e079c8e5daf7fd44202821f5"
+  integrity sha512-g0QYk1dZBxGwk+Ngc+ltRH2IBp2f7zBkBMBJZCDerh6EhlhSR6+9irMCuT/09zD6qkarHUSn529sK/yL4S27mg==
   dependencies:
-    call-bind "^1.0.2"
-    get-intrinsic "^1.1.1"
+    call-bind "^1.0.5"
+    es-errors "^1.3.0"
+    get-intrinsic "^1.2.4"
 
-"glob-parent@^5.1.2", "glob-parent@~5.1.2":
+glob-parent@^5.1.2:
   version "5.1.2"
   resolved "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz#869832c58034fe68a4093c17dc15e8340d8401c4"
   integrity sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==
@@ -6660,16 +6038,16 @@ glob-to-regexp@^0.4.1:
   resolved "https://registry.npmjs.org/glob-to-regexp/-/glob-to-regexp-0.4.1.tgz#c75297087c851b9a578bd217dd59a92f59fe546e"
   integrity sha512-lkX1HJXwyMcprw/5YUZc2s7DrpAiHB21/V+E1rHUrVNokkvB6bqMzT0VfV6/86ZNabt1k14YOIaT7nDvOX3Iiw==
 
-glob@^10.2.2:
-  version "10.3.0"
-  resolved "https://registry.npmjs.org/glob/-/glob-10.3.0.tgz#763d02a894f3cdfc521b10bbbbc8e0309e750cce"
-  integrity sha512-AQ1/SB9HH0yCx1jXAT4vmCbTOPe5RQ+kCurjbel5xSCGhebumUv+GJZfa1rEqor3XIViqwSEmlkZCQD43RWrBg==
+"glob@^10.2.2", "glob@^10.3.10":
+  version "10.3.12"
+  resolved "https://registry.npmjs.org/glob/-/glob-10.3.12.tgz#3a65c363c2e9998d220338e88a5f6ac97302960b"
+  integrity sha512-TCNv8vJ+xz4QiqTpfOJA7HvYv+tNIRHKfUWw/q+v2jdgN4ebz+KY9tGx5J4rHP0o84mNP+ApH66HRX8us3Khqg==
   dependencies:
     foreground-child "^3.1.0"
-    jackspeak "^2.0.3"
+    jackspeak "^2.3.6"
     minimatch "^9.0.1"
-    minipass "^5.0.0 || ^6.0.2"
-    path-scurry "^1.7.0"
+    minipass "^7.0.4"
+    path-scurry "^1.10.2"
 
 "glob@^7.1.0", "glob@^7.1.3", "glob@^7.1.4", "glob@^7.1.6":
   version "7.2.3"
@@ -6683,15 +6061,26 @@ glob@^10.2.2:
     once "^1.3.0"
     path-is-absolute "^1.0.0"
 
+glob@^8.0.1:
+  version "8.1.0"
+  resolved "https://registry.npmjs.org/glob/-/glob-8.1.0.tgz#d388f656593ef708ee3e34640fdfb99a9fd1c33e"
+  integrity sha512-r8hpEjiQEYlF2QU0df3dS+nxxSIreXQS1qRhMJM0Q5NDdR386C7jb7Hwwod8Fgiuex+k0GFjgft18yvxm5XoCQ==
+  dependencies:
+    fs.realpath "^1.0.0"
+    inflight "^1.0.4"
+    inherits 2
+    minimatch "^5.0.1"
+    once "^1.3.0"
+
 globals@^11.1.0:
   version "11.12.0"
   resolved "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz#ab8795338868a0babd8525758018c2a7eb95c42e"
   integrity sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==
 
 globals@^13.19.0:
-  version "13.20.0"
-  resolved "https://registry.npmjs.org/globals/-/globals-13.20.0.tgz#ea276a1e508ffd4f1612888f9d1bad1e2717bf82"
-  integrity sha512-Qg5QtVkCy/kv3FUSlu4ukeZDVf9ee0iXLAUYX13gbR17bnejFTzr4iS9bY7kwCf1NztRNm1t91fjOiyx4CSwPQ==
+  version "13.24.0"
+  resolved "https://registry.npmjs.org/globals/-/globals-13.24.0.tgz#8432a19d78ce0c1e833949c36adb345400bb1171"
+  integrity sha512-AhO5QUcj8llrbG09iWhPU2B204J1xnPeL8kQmVorSsy+Sjj1sk8gIyh6cUocGmH4L0UuhAJy+hJMRA4mgA4mFQ==
   dependencies:
     type-fest "^0.20.2"
 
@@ -6727,13 +6116,13 @@ globby@^11.1.0:
     slash "^4.0.0"
 
 globby@^13.1.1:
-  version "13.2.0"
-  resolved "https://registry.npmjs.org/globby/-/globby-13.2.0.tgz#7dd5678d765c4680c2e6d106230d86cb727cb1af"
-  integrity sha512-jWsQfayf13NvqKUIL3Ta+CIqMnvlaIDFveWE/dpOZ9+3AMEJozsxDvKA02zync9UuvOM8rOXzsD5GqKP4OnWPQ==
+  version "13.2.2"
+  resolved "https://registry.npmjs.org/globby/-/globby-13.2.2.tgz#63b90b1bf68619c2135475cbd4e71e66aa090592"
+  integrity sha512-Y1zNGV+pzQdh7H39l9zgB4PJqjRNqydvdYCDG4HFXM4XuvSaQQlEc91IU1yALL8gUTDomgBAfz3XJdmUS+oo0w==
   dependencies:
     dir-glob "^3.0.1"
-    fast-glob "^3.2.11"
-    ignore "^5.2.0"
+    fast-glob "^3.3.0"
+    ignore "^5.2.4"
     merge2 "^1.4.1"
     slash "^4.0.0"
 
@@ -6787,16 +6176,11 @@ got@^8.3.1:
     url-parse-lax "^3.0.0"
     url-to-options "^1.0.1"
 
-"graceful-fs@^4.1.10", "graceful-fs@^4.1.2", "graceful-fs@^4.2.4", "graceful-fs@^4.2.6", "graceful-fs@^4.2.8", "graceful-fs@^4.2.9":
+"graceful-fs@^4.1.10", "graceful-fs@^4.1.2", "graceful-fs@^4.2.11", "graceful-fs@^4.2.4", "graceful-fs@^4.2.6", "graceful-fs@^4.2.8", "graceful-fs@^4.2.9":
   version "4.2.11"
   resolved "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.11.tgz#4183e4e8bf08bb6e05bbb2f7d2e0c8f712ca40e3"
   integrity sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==
 
-grapheme-splitter@^1.0.4:
-  version "1.0.4"
-  resolved "https://registry.npmjs.org/grapheme-splitter/-/grapheme-splitter-1.0.4.tgz#9cf3a665c6247479896834af35cf1dbb4400767e"
-  integrity sha512-bzh50DW9kTPM00T8y4o8vQg89Di9oLJVLW/KaOGIXJWP/iqCN6WKYkbNOF04vFLJhwcpYUh9ydh/+5vpOqV4YQ==
-
 graphemer@^1.4.0:
   version "1.4.0"
   resolved "https://registry.npmjs.org/graphemer/-/graphemer-1.4.0.tgz#fb2f1d55e0e3a1849aeffc90c4fa0dd53a0e66c6"
@@ -6822,12 +6206,12 @@ hammerjs@^2.0.8:
   integrity sha512-tSQXBXS/MWQOn/RKckawJ61vvsDpCom87JgxiYdGwHdOa0ht0vzUWDlfioofFCRU0L+6NGDt6XzbgoJvZkMeRQ==
 
 handlebars@^4.0.11:
-  version "4.7.7"
-  resolved "https://registry.npmjs.org/handlebars/-/handlebars-4.7.7.tgz#9ce33416aad02dbd6c8fafa8240d5d98004945a1"
-  integrity sha512-aAcXm5OAfE/8IXkcZvCepKU3VzW1/39Fb5ZuqMtgI/hT8X2YgoMvBY5dLhq/cpOvw7Lk1nK/UF71aLG/ZnVYRA==
+  version "4.7.8"
+  resolved "https://registry.npmjs.org/handlebars/-/handlebars-4.7.8.tgz#41c42c18b1be2365439188c77c6afae71c0cd9e9"
+  integrity sha512-vafaFqs8MZkRrSX7sFVUdo3ap/eNiLnb4IakshzvP56X5Nr1iGKAIqdX6tMlm6HcNRIkr6AxO5jFEoJzzpT8aQ==
   dependencies:
     minimist "^1.2.5"
-    neo-async "^2.6.0"
+    neo-async "^2.6.2"
     source-map "^0.6.1"
     uglify-js "^3.1.4"
     wordwrap "^1.0.0"
@@ -6852,17 +6236,17 @@ has-flag@^4.0.0:
   resolved "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz#944771fd9c81c81265c4d6941860da06bb59479b"
   integrity sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==
 
-has-property-descriptors@^1.0.0:
-  version "1.0.0"
-  resolved "https://registry.npmjs.org/has-property-descriptors/-/has-property-descriptors-1.0.0.tgz#610708600606d36961ed04c196193b6a607fa861"
-  integrity sha512-62DVLZGoiEBDHQyqG4w9xCuZ7eJEwNmJRWw2VY84Oedb7WFcA27fiEVe8oUQx9hAUJ4ekurquucTGwsyO1XGdQ==
+"has-property-descriptors@^1.0.0", "has-property-descriptors@^1.0.2":
+  version "1.0.2"
+  resolved "https://registry.npmjs.org/has-property-descriptors/-/has-property-descriptors-1.0.2.tgz#963ed7d071dc7bf5f084c5bfbe0d1b6222586854"
+  integrity sha512-55JNKuIW+vq4Ke1BjOTjM2YctQIvCT7GFzHwmfZPGo5wnrgkid0YQtnAleFSqumZm4az3n2BS+erby5ipJdgrg==
   dependencies:
-    get-intrinsic "^1.1.1"
+    es-define-property "^1.0.0"
 
-has-proto@^1.0.1:
-  version "1.0.1"
-  resolved "https://registry.npmjs.org/has-proto/-/has-proto-1.0.1.tgz#1885c1305538958aff469fef37937c22795408e0"
-  integrity sha512-7qE+iP+O+bgF9clE5+UoBFzE65mlBiVj3tKCrlNQ0Ogwm0BjpT/gK4SlLYDMybDh5I3TCTKnPPa0oMG7JDYrhg==
+"has-proto@^1.0.1", "has-proto@^1.0.3":
+  version "1.0.3"
+  resolved "https://registry.npmjs.org/has-proto/-/has-proto-1.0.3.tgz#b31ddfe9b0e6e9914536a6ab286426d0214f77fd"
+  integrity sha512-SJ1amZAJUiZS+PhsVLf5tGydlaVB8EdFpaSO4gmiUKUOxk8qzn5AIy4ZeJUmh22znIdk/uMAUT2pl3FxzVUH+Q==
 
 has-symbol-support-x@^1.4.1:
   version "1.4.2"
@@ -6881,24 +6265,22 @@ has-to-string-tag-x@^1.2.0:
   dependencies:
     has-symbol-support-x "^1.4.1"
 
-has-tostringtag@^1.0.0:
-  version "1.0.0"
-  resolved "https://registry.npmjs.org/has-tostringtag/-/has-tostringtag-1.0.0.tgz#7e133818a7d394734f941e73c3d3f9291e658b25"
-  integrity sha512-kFjcSNhnlGV1kyoGk7OXKSawH5JOb/LzUc5w9B02hOTO0dfFRjbHQKvg1d6cf3HbeUmtU9VbbV3qzZ2Teh97WQ==
+"has-tostringtag@^1.0.0", "has-tostringtag@^1.0.2":
+  version "1.0.2"
+  resolved "https://registry.npmjs.org/has-tostringtag/-/has-tostringtag-1.0.2.tgz#2cdc42d40bef2e5b4eeab7c01a73c54ce7ab5abc"
+  integrity sha512-NqADB8VjPFLM2V0VvHUewwwsw0ZWBaIdgo+ieHtK3hasLz4qeCRjYcqfB6AQrBggRKppKF8L52/VqdVsO47Dlw==
   dependencies:
-    has-symbols "^1.0.2"
+    has-symbols "^1.0.3"
 
 has-unicode@^2.0.1:
   version "2.0.1"
   resolved "https://registry.npmjs.org/has-unicode/-/has-unicode-2.0.1.tgz#e0e6fe6a28cf51138855e086d1691e771de2a8b9"
   integrity sha512-8Rf9Y83NBReMnx0gFzA8JImQACstCYWUplepDa9xprwwtmgEZUF0h/i5xSA625zB/I37EtrswSST6OXxwaaIJQ==
 
-"has@^1.0.0", "has@^1.0.3":
-  version "1.0.3"
-  resolved "https://registry.npmjs.org/has/-/has-1.0.3.tgz#722d7cbfc1f6aa8241f16dd814e011e1f41e8796"
-  integrity sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==
-  dependencies:
-    function-bind "^1.1.1"
+has@^1.0.0:
+  version "1.0.4"
+  resolved "https://registry.npmjs.org/has/-/has-1.0.4.tgz#2eb2860e000011dae4f1406a86fe80e530fb2ec6"
+  integrity sha512-qdSAmqLF6209RFj4VVItywPMbm3vWylknmB3nvNiUIs72xAimcM8nVYxYr7ncvZq5qzk9MKIZR8ijqD/1QuYjQ==
 
 hash-base@^3.0.0:
   version "3.1.0"
@@ -6909,6 +6291,14 @@ hash-base@^3.0.0:
     readable-stream "^3.6.0"
     safe-buffer "^5.2.0"
 
+hash-base@~3.0:
+  version "3.0.4"
+  resolved "https://registry.npmjs.org/hash-base/-/hash-base-3.0.4.tgz#5fc8686847ecd73499403319a6b0a3f3f6ae4918"
+  integrity sha512-EeeoJKjTyt868liAlVmcv2ZsUfGHlE3Q+BICOXcZiwN3osr5Q/zFGYmTJpoIzuaSTAwndFy+GqhEwlU4L3j4Ow==
+  dependencies:
+    inherits "^2.0.1"
+    safe-buffer "^5.0.1"
+
 "hash.js@^1.0.0", "hash.js@^1.0.3":
   version "1.1.7"
   resolved "https://registry.npmjs.org/hash.js/-/hash.js-1.1.7.tgz#0babca538e8d4ee4a0f8988d68866537a003cf42"
@@ -6917,6 +6307,13 @@ hash-base@^3.0.0:
     inherits "^2.0.3"
     minimalistic-assert "^1.0.1"
 
+"hasown@^2.0.0", "hasown@^2.0.1", "hasown@^2.0.2":
+  version "2.0.2"
+  resolved "https://registry.npmjs.org/hasown/-/hasown-2.0.2.tgz#003eaf91be7adc372e84ec59dc37252cedb80003"
+  integrity sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ==
+  dependencies:
+    function-bind "^1.1.2"
+
 heap@0.2.5:
   version "0.2.5"
   resolved "https://registry.npmjs.org/heap/-/heap-0.2.5.tgz#713b65590ebcc40fcbeeaf55e851694092b39af1"
@@ -6946,17 +6343,17 @@ hosted-git-info@^4.0.1:
     lru-cache "^6.0.0"
 
 hotkeys-js@^3.13.3:
-  version "3.13.3"
-  resolved "https://registry.npmjs.org/hotkeys-js/-/hotkeys-js-3.13.3.tgz#b0a9f243bb1e9cacb93d3772a9e1f6013c0698a3"
-  integrity sha512-IEiMBNRJZMhWyNDsvww8LYC8vZYyj2/w2GgXPg0ljq/K3SYvOJH6NRMqzF7z2Fwaq2AzKSvmvECREzFleKSeow==
+  version "3.13.7"
+  resolved "https://registry.npmjs.org/hotkeys-js/-/hotkeys-js-3.13.7.tgz#0188d8e2fca16a3f1d66541b48de0bb9df613726"
+  integrity sha512-ygFIdTqqwG4fFP7kkiYlvayZppeIQX2aPpirsngkv1xM1lP0piDY5QEh68nQnIKvz64hfocxhBaD/uK3sSK1yQ==
 
-html-dom-parser@5.0.4:
-  version "5.0.4"
-  resolved "https://registry.npmjs.org/html-dom-parser/-/html-dom-parser-5.0.4.tgz#2941a762317d088e747db31c8cf290987ec30a55"
-  integrity sha512-azy8THLKd4Ar0OVJpEgX+MSjYvKdNDWlGiRBIlovMqEQYMAnLLXBhhiSwjylDD3RDdcCYT8Utg6uoRDeLHUyHg==
+html-dom-parser@5.0.8:
+  version "5.0.8"
+  resolved "https://registry.npmjs.org/html-dom-parser/-/html-dom-parser-5.0.8.tgz#540057d8eb7ff28c9fd45fa9eead374c34dae20c"
+  integrity sha512-vuWiX9EXgu8CJ5m9EP5c7bvBmNSuQVnrY8tl0z0ZX96Uth1IPlYH/8W8VZ/hBajFf18EN+j2pukbCNd01HEd1w==
   dependencies:
     domhandler "5.0.3"
-    htmlparser2 "9.0.0"
+    htmlparser2 "9.1.0"
 
 html-encoding-sniffer@^3.0.0:
   version "3.0.0"
@@ -6965,20 +6362,20 @@ html-encoding-sniffer@^3.0.0:
   dependencies:
     whatwg-encoding "^2.0.0"
 
-html-escaper@^2.0.0:
+"html-escaper@^2.0.0", "html-escaper@^2.0.2":
   version "2.0.2"
   resolved "https://registry.npmjs.org/html-escaper/-/html-escaper-2.0.2.tgz#dfd60027da36a36dfcbe236262c00a5822681453"
   integrity sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg==
 
 html-react-parser@^5.0.6:
-  version "5.0.6"
-  resolved "https://registry.npmjs.org/html-react-parser/-/html-react-parser-5.0.6.tgz#ee9e8ae404aa38cfbaf3825cb26fabced46024a1"
-  integrity sha512-aPSzFhO2bK/L/mYQbMwFz+1QG8nhxozbwENt/52HTApasrBvDX87MFD5uSQIjq7Io0bnKzH4uh7PM42zZ4ag9A==
+  version "5.1.10"
+  resolved "https://registry.npmjs.org/html-react-parser/-/html-react-parser-5.1.10.tgz#e65bf68df9b505756680d2cae842f7add3da5305"
+  integrity sha512-gV22PvLij4wdEdtrZbGVC7Zy2OVWnQ0bYhX63S196ZRSx4+K0TuutCreHSXr+saUia8KeKB+2TYziVfijpH4Tw==
   dependencies:
     domhandler "5.0.3"
-    html-dom-parser "5.0.4"
+    html-dom-parser "5.0.8"
     react-property "2.0.2"
-    style-to-js "1.1.9"
+    style-to-js "1.1.12"
 
 html-to-image@^1.11.11:
   version "1.11.11"
@@ -6990,10 +6387,10 @@ htmlescape@^1.1.0:
   resolved "https://registry.npmjs.org/htmlescape/-/htmlescape-1.1.1.tgz#3a03edc2214bca3b66424a3e7959349509cb0351"
   integrity sha512-eVcrzgbR4tim7c7soKQKtxa/kQM4TzjnlU83rcZ9bHU6t31ehfV7SktN6McWgwPWg+JYMA/O3qpGxBvFq1z2Jg==
 
-htmlparser2@9.0.0:
-  version "9.0.0"
-  resolved "https://registry.npmjs.org/htmlparser2/-/htmlparser2-9.0.0.tgz#e431142b7eeb1d91672742dea48af8ac7140cddb"
-  integrity sha512-uxbSI98wmFT/G4P2zXx4OVx04qWUmyFPrD2/CNepa2Zo3GPNaCaaxElDgwUrwYWkK1nr9fft0Ya8dws8coDLLQ==
+htmlparser2@9.1.0:
+  version "9.1.0"
+  resolved "https://registry.npmjs.org/htmlparser2/-/htmlparser2-9.1.0.tgz#cdb498d8a75a51f739b61d3f718136c369bc8c23"
+  integrity sha512-5zfg6mHUoaer/97TxnGpxmbR7zJtPwIYFMZ/H5ucTlPZhKvtum05yiPK3Mgai3a0DyVxv7qYqoweaEd2nrYQzQ==
   dependencies:
     domelementtype "^2.3.0"
     domhandler "^5.0.3"
@@ -7005,7 +6402,7 @@ http-cache-semantics@3.8.1:
   resolved "https://registry.npmjs.org/http-cache-semantics/-/http-cache-semantics-3.8.1.tgz#39b0e16add9b605bf0a9ef3d9daaf4843b4cacd2"
   integrity sha512-5ai2iksyV8ZXmnZhHH4rWPoxxistEexSi5936zIQ1bnNTW5VnA85B6P/VpXiRM017IgRvb2kKo1a//y+0wSp3w==
 
-http-cache-semantics@^4.1.1:
+"http-cache-semantics@^4.1.0", "http-cache-semantics@^4.1.1":
   version "4.1.1"
   resolved "https://registry.npmjs.org/http-cache-semantics/-/http-cache-semantics-4.1.1.tgz#abe02fcb2985460bf0323be664436ec3476a6d5a"
   integrity sha512-er295DKPVsV82j5kw1Gjt+ADA/XYHsajl82cGNQG2eyoPkvgUhX+nDIyelzhIWbbsXP39EHcI6l5tYs2FYqYXQ==
@@ -7019,6 +6416,14 @@ http-proxy-agent@^5.0.0:
     agent-base 6
     debug 4
 
+http-proxy-agent@^7.0.0:
+  version "7.0.2"
+  resolved "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-7.0.2.tgz#9a8b1f246866c028509486585f62b8f2c18c270e"
+  integrity sha512-T1gkAiYYDWYx3V5Bmyu7HcfcvL7mUrTWiM6yOfa3PIphViJ/gFPbvidQ+veqSOHci/PxBcDabeUNCzpOODJZig==
+  dependencies:
+    agent-base "^7.1.0"
+    debug "^4.3.4"
+
 https-browserify@^1.0.0:
   version "1.0.0"
   resolved "https://registry.npmjs.org/https-browserify/-/https-browserify-1.0.0.tgz#ec06c10e0a34c0f2faf199f7fd7fc78fffd03c73"
@@ -7032,6 +6437,14 @@ https-browserify@^1.0.0:
     agent-base 6
     debug 4
 
+https-proxy-agent@^7.0.1:
+  version "7.0.4"
+  resolved "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-7.0.4.tgz#8e97b841a029ad8ddc8731f26595bad868cb4168"
+  integrity sha512-wlwpilI7YdjSkWaQ/7omYBMTliDcmCN8OLihO6I9B86g06lMyAoqgoDpV0XqoaPOKj+0DIdAvnsWfyAAhmimcg==
+  dependencies:
+    agent-base "^7.0.2"
+    debug 4
+
 human-signals@^2.1.0:
   version "2.1.0"
   resolved "https://registry.npmjs.org/human-signals/-/human-signals-2.1.0.tgz#dc91fcba42e4d06e4abaed33b3e7a3c02f514ea0"
@@ -7071,10 +6484,10 @@ hyphenate-style-name@^1.0.3:
   resolved "https://registry.npmjs.org/ieee754/-/ieee754-1.2.1.tgz#8eb7a10a63fff25d15a57b001586d177d1b0d352"
   integrity sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==
 
-"ignore@^5.1.9", "ignore@^5.2.0":
-  version "5.2.4"
-  resolved "https://registry.npmjs.org/ignore/-/ignore-5.2.4.tgz#a291c0c6178ff1b960befe47fcdec301674a6324"
-  integrity sha512-MAb38BcSbH0eHNBxn7ql2NH/kX33OkB3lZ1BNdh7ENeRChHTYsTvWrMubiIAMNS2llXEEgZ1MUOBtXChP3kaFQ==
+"ignore@^5.1.9", "ignore@^5.2.0", "ignore@^5.2.4":
+  version "5.3.1"
+  resolved "https://registry.npmjs.org/ignore/-/ignore-5.3.1.tgz#5073e554cd42c5b33b394375f538b8593e34d4ef"
+  integrity sha512-5Fytz/IraMjqpwfd34ke28PTVMjZjJG2MPn5t7OE4eUCUNf8BAa7b5WUS9/Qvr6mwOQS7Mk6vdsMno5he+T8Xw==
 
 image-minimizer-webpack-plugin@^3.8.2:
   version "3.8.3"
@@ -7120,12 +6533,7 @@ immutability-helper@^3.0.0:
   resolved "https://registry.npmjs.org/immutability-helper/-/immutability-helper-3.1.1.tgz#2b86b2286ed3b1241c9e23b7b21e0444f52f77b7"
   integrity sha512-Q0QaXjPjwIju/28TsugCHNEASwoCcJSyJV3uO1sOIQGI0jKgm9f41Lvz0DZj3n46cNCyAZTsEYoY4C2bVRUzyQ==
 
-immutable@^4.0.0:
-  version "4.3.0"
-  resolved "https://registry.npmjs.org/immutable/-/immutable-4.3.0.tgz#eb1738f14ffb39fd068b1dbe1296117484dd34be"
-  integrity sha512-0AOCmOip+xgJwEVTQj1EfiDDOkPmuyllDuTuEX+DDXUgapLAsBIfkg3sxCYyCEA8mQqZrrxPUGjcOQ2JS3WLkg==
-
-"import-fresh@^3.0.0", "import-fresh@^3.1.0", "import-fresh@^3.2.1", "import-fresh@^3.3.0":
+"import-fresh@^3.1.0", "import-fresh@^3.2.1", "import-fresh@^3.3.0":
   version "3.3.0"
   resolved "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz#37162c25fcb9ebaa2e6e53d5b4d88ce17d9e0c2b"
   integrity sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==
@@ -7169,6 +6577,11 @@ indent-string@^5.0.0:
   resolved "https://registry.npmjs.org/indent-string/-/indent-string-5.0.0.tgz#4fd2980fccaf8622d14c64d694f4cf33c81951a5"
   integrity sha512-m6FAo/spmsW2Ab2fU35JTYwtOKa2yAwXSwgjSv1TJzh4Mh7mC3lzAOVLBprb72XsTrgkEIsl7YrFNAiDiRhIGg==
 
+infer-owner@^1.0.4:
+  version "1.0.4"
+  resolved "https://registry.npmjs.org/infer-owner/-/infer-owner-1.0.4.tgz#c4cefcaa8e51051c2a40ba2ce8a3d27295af9467"
+  integrity sha512-IClj+Xz94+d7irH5qRyfJonOdfTzuDaifE6ZPWfx0N0+/ATZCbuTPq2prFl526urkQd90WyUKIh1DfBQ2hMz9A==
+
 inflight@^1.0.4:
   version "1.0.6"
   resolved "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz#49bd6331d7d02d0c09bc910a1075ba8165b56df9"
@@ -7182,10 +6595,10 @@ inflight@^1.0.4:
   resolved "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz#0fa2c64f932917c3433a0ded55363aae37416b7c"
   integrity sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==
 
-inherits@2.0.1:
-  version "2.0.1"
-  resolved "https://registry.npmjs.org/inherits/-/inherits-2.0.1.tgz#b17d08d326b4423e568eff719f91b0b1cbdf69f1"
-  integrity sha512-8nWq2nLTAwd02jTqJExUYFSD/fKq6VH9Y/oG2accc/kdI0V98Bag8d5a4gi3XHz73rDWa2PvTtvcWYquKqSENA==
+inherits@2.0.3:
+  version "2.0.3"
+  resolved "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz#633c2c83e3da42a502f52466022480f4208261de"
+  integrity sha512-x00IRNXNy63jwGkJmzPigoySHbaqpNuzKbBOmzK+g2OdZpQ9w+sxCN+VSB3ja7IAge2OP2qpfxTjeNcyjmW1uw==
 
 ini@^1.3.4:
   version "1.3.8"
@@ -7193,16 +6606,16 @@ ini@^1.3.4:
   integrity sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==
 
 inline-source-map@~0.6.0:
-  version "0.6.2"
-  resolved "https://registry.npmjs.org/inline-source-map/-/inline-source-map-0.6.2.tgz#f9393471c18a79d1724f863fa38b586370ade2a5"
-  integrity sha512-0mVWSSbNDvedDWIN4wxLsdPM4a7cIPcpyMxj3QZ406QRwQ6ePGB1YIHxVPjqpcUGbWQ5C+nHTwGNWAGvt7ggVA==
+  version "0.6.3"
+  resolved "https://registry.npmjs.org/inline-source-map/-/inline-source-map-0.6.3.tgz#db9d553037fa74bf95dfbff186375fcf5c563cdd"
+  integrity sha512-1aVsPEsJWMJq/pdMU61CDlm1URcW702MTB4w9/zUjMus6H/Py8o7g68Pr9D4I6QluWGt/KdmswuRhaA05xVR1w==
   dependencies:
     source-map "~0.5.3"
 
-inline-style-parser@0.2.2:
-  version "0.2.2"
-  resolved "https://registry.npmjs.org/inline-style-parser/-/inline-style-parser-0.2.2.tgz#d498b4e6de0373458fc610ff793f6b14ebf45633"
-  integrity sha512-EcKzdTHVe8wFVOGEYXiW9WmJXPjqi1T+234YpJr98RiFYKHV3cdy1+3mkTE+KHTHxFFLH51SfaGOoUdW+v7ViQ==
+inline-style-parser@0.2.3:
+  version "0.2.3"
+  resolved "https://registry.npmjs.org/inline-style-parser/-/inline-style-parser-0.2.3.tgz#e35c5fb45f3a83ed7849fe487336eb7efa25971c"
+  integrity sha512-qlD8YNDqyTKTyuITrDOffsl6Tdhv+UC4hcdAVuQsK4IMQ99nSgd1MIA/Q+jQYoh9r3hVUXhYh7urSRmXPkW04g==
 
 insert-if@^1.1.0:
   version "1.2.0"
@@ -7225,13 +6638,13 @@ insert-module-globals@^7.2.1:
     undeclared-identifiers "^1.1.2"
     xtend "^4.0.0"
 
-"internal-slot@^1.0.3", "internal-slot@^1.0.4", "internal-slot@^1.0.5":
-  version "1.0.5"
-  resolved "https://registry.npmjs.org/internal-slot/-/internal-slot-1.0.5.tgz#f2a2ee21f668f8627a4667f309dc0f4fb6674986"
-  integrity sha512-Y+R5hJrzs52QCG2laLn4udYVnxsfny9CpOhNhUvk/SSSVyF6T27FzRbF0sroPidSu3X8oEAkOn2K804mjpt6UQ==
+"internal-slot@^1.0.4", "internal-slot@^1.0.7":
+  version "1.0.7"
+  resolved "https://registry.npmjs.org/internal-slot/-/internal-slot-1.0.7.tgz#c06dcca3ed874249881007b0a5523b172a190802"
+  integrity sha512-NGnrKwXzSms2qUUih/ILZ5JBqNTSa1+ZmP6flaIp6KmSElgE9qdndzS3cqjrDovwFdmwsGsLdeFgB6suw+1e9g==
   dependencies:
-    get-intrinsic "^1.2.0"
-    has "^1.0.3"
+    es-errors "^1.3.0"
+    hasown "^2.0.0"
     side-channel "^1.0.4"
 
 interpret@^2.2.0:
@@ -7255,12 +6668,15 @@ ip-address@^7.1.0:
     jsbn "1.1.0"
     sprintf-js "1.1.2"
 
-ip@^2.0.0:
-  version "2.0.0"
-  resolved "https://registry.npmjs.org/ip/-/ip-2.0.0.tgz#4cf4ab182fee2314c75ede1276f8c80b479936da"
-  integrity sha512-WKa+XuLG1A1R0UWhl2+1XQSi+fZWMsYKffMZTTYsiZaUD8k2yDAj5atimTUD2TZkyCkNEeYE5NhFZmupOGtjYQ==
+ip-address@^9.0.5:
+  version "9.0.5"
+  resolved "https://registry.npmjs.org/ip-address/-/ip-address-9.0.5.tgz#117a960819b08780c3bd1f14ef3c1cc1d3f3ea5a"
+  integrity sha512-zHtQzGojZXTwZTHQqra+ETKd4Sn3vgi7uBmlPoXVWZqYvuKmtI0l/VZTjqGmJY9x88GGOaZ9+G9ES8hC4T4X8g==
+  dependencies:
+    jsbn "1.1.0"
+    sprintf-js "^1.1.3"
 
-is-any-array@^2.0.0:
+"is-any-array@^2.0.0", "is-any-array@^2.0.1":
   version "2.0.1"
   resolved "https://registry.npmjs.org/is-any-array/-/is-any-array-2.0.1.tgz#9233242a9c098220290aa2ec28f82ca7fa79899e"
   integrity sha512-UtilS7hLRu++wb/WBAw9bNuP1Eg04Ivn1vERJck8zJthEvXCBEBpGR/33u/xLKWEQf95803oalHrVDptcAvFdQ==
@@ -7273,14 +6689,13 @@ is-any-array@^2.0.0:
     call-bind "^1.0.2"
     has-tostringtag "^1.0.0"
 
-"is-array-buffer@^3.0.1", "is-array-buffer@^3.0.2":
-  version "3.0.2"
-  resolved "https://registry.npmjs.org/is-array-buffer/-/is-array-buffer-3.0.2.tgz#f2653ced8412081638ecb0ebbd0c41c6e0aecbbe"
-  integrity sha512-y+FyyR/w8vfIRq4eQcM1EYgSTnmHXPqaF+IgzgraytCFq5Xh8lllDVmAZolPJiZttZLeFSINPYMaEJ7/vWUa1w==
+"is-array-buffer@^3.0.2", "is-array-buffer@^3.0.4":
+  version "3.0.4"
+  resolved "https://registry.npmjs.org/is-array-buffer/-/is-array-buffer-3.0.4.tgz#7a1f92b3d61edd2bc65d24f130530ea93d7fae98"
+  integrity sha512-wcjaerHw0ydZwfhiKbXJWLDY8A7yV7KhjQOpb83hGgGfId/aQa4TOvwyzn2PuswW2gPCYEL/nEAiSVpdOj1lXw==
   dependencies:
     call-bind "^1.0.2"
-    get-intrinsic "^1.2.0"
-    is-typed-array "^1.1.10"
+    get-intrinsic "^1.2.1"
 
 is-arrayish@^0.2.1:
   version "0.2.1"
@@ -7301,13 +6716,6 @@ is-bigint@^1.0.1:
   dependencies:
     has-bigints "^1.0.1"
 
-is-binary-path@~2.1.0:
-  version "2.1.0"
-  resolved "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz#ea1f7f3b80f064236e83470f86c09c254fb45b09"
-  integrity sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==
-  dependencies:
-    binary-extensions "^2.0.0"
-
 is-boolean-object@^1.1.0:
   version "1.1.2"
   resolved "https://registry.npmjs.org/is-boolean-object/-/is-boolean-object-1.1.2.tgz#5c6dc200246dd9321ae4b885a114bb1f75f63719"
@@ -7331,19 +6739,19 @@ is-buffer@^2.0.5:
   resolved "https://registry.npmjs.org/is-callable/-/is-callable-1.2.7.tgz#3bc2a85ea742d9e36205dcacdd72ca1fdc51b055"
   integrity sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA==
 
-"is-core-module@^2.11.0", "is-core-module@^2.5.0", "is-core-module@^2.9.0":
-  version "2.12.1"
-  resolved "https://registry.npmjs.org/is-core-module/-/is-core-module-2.12.1.tgz#0c0b6885b6f80011c71541ce15c8d66cf5a4f9fd"
-  integrity sha512-Q4ZuBAe2FUsKtyQJoQHlvP8OvBERxO3jEmy1I7hcRXcJBGGHFh/aJBswbXuS9sgrDH2QUO8ilkwNPHvHMd8clg==
+"is-core-module@^2.13.0", "is-core-module@^2.5.0":
+  version "2.13.1"
+  resolved "https://registry.npmjs.org/is-core-module/-/is-core-module-2.13.1.tgz#ad0d7532c6fea9da1ebdc82742d74525c6273384"
+  integrity sha512-hHrIjvZsftOsvKSn2TRYl63zvxsgE0K+0mYMoH6gD4omR5IWB2KynivBQczo3+wF1cCkjzvptnI9Q0sPU66ilw==
   dependencies:
-    has "^1.0.3"
+    hasown "^2.0.0"
 
-is-core-module@^2.13.0:
-  version "2.13.0"
-  resolved "https://registry.npmjs.org/is-core-module/-/is-core-module-2.13.0.tgz#bb52aa6e2cbd49a30c2ba68c42bf3435ba6072db"
-  integrity sha512-Z7dk6Qo8pOCp3l4tsX2C5ZVas4V+UxwQodwZhLopL91TX8UyyHEXafPcyoeeWuLrwzHcr3igO78wNLwHJHsMCQ==
+is-data-view@^1.0.1:
+  version "1.0.1"
+  resolved "https://registry.npmjs.org/is-data-view/-/is-data-view-1.0.1.tgz#4b4d3a511b70f3dc26d42c03ca9ca515d847759f"
+  integrity sha512-AHkaJrsUVW6wq6JS8y3JnM/GJF/9cf+k20+iDzlSaJrinEo5+7vRiteOSwBhHRiAyQATN1AmY4hwzxJKPmYf+w==
   dependencies:
-    has "^1.0.3"
+    is-typed-array "^1.1.13"
 
 "is-date-object@^1.0.1", "is-date-object@^1.0.5":
   version "1.0.5"
@@ -7386,7 +6794,7 @@ is-generator-fn@^2.0.0:
   dependencies:
     has-tostringtag "^1.0.0"
 
-"is-glob@^4.0.0", "is-glob@^4.0.1", "is-glob@^4.0.3", "is-glob@~4.0.1":
+"is-glob@^4.0.0", "is-glob@^4.0.1", "is-glob@^4.0.3":
   version "4.0.3"
   resolved "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz#64f61e42cbbb2eec2071a9dac0b28ba1e65d5084"
   integrity sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==
@@ -7408,20 +6816,20 @@ is-lambda@^1.0.1:
   resolved "https://registry.npmjs.org/is-lambda/-/is-lambda-1.0.1.tgz#3d9877899e6a53efc0160504cde15f82e6f061d5"
   integrity sha512-z7CMFGNrENq5iFB9Bqo64Xk6Y9sg+epq1myIcdHaGnbMTYOxvzsEtdYqQUylB7LxfkvgrrjP32T6Ywciio9UIQ==
 
-"is-map@^2.0.1", "is-map@^2.0.2":
-  version "2.0.2"
-  resolved "https://registry.npmjs.org/is-map/-/is-map-2.0.2.tgz#00922db8c9bf73e81b7a335827bc2a43f2b91127"
-  integrity sha512-cOZFQQozTha1f4MxLFzlgKYPTyj26picdZTx82hbc/Xf4K/tZOOXSCkMvU4pKioRXGDLJRn0GM7Upe7kR721yg==
+"is-map@^2.0.2", "is-map@^2.0.3":
+  version "2.0.3"
+  resolved "https://registry.npmjs.org/is-map/-/is-map-2.0.3.tgz#ede96b7fe1e270b3c4465e3a465658764926d62e"
+  integrity sha512-1Qed0/Hr2m+YqxnM09CjA2d/i6YZNfF6R2oRAOj36eUdS6qIV/huPJNSEpKbupewFs+ZsJlxsjjPbc0/afW6Lw==
 
 is-natural-number@^4.0.1:
   version "4.0.1"
   resolved "https://registry.npmjs.org/is-natural-number/-/is-natural-number-4.0.1.tgz#ab9d76e1db4ced51e35de0c72ebecf09f734cde8"
   integrity sha512-Y4LTamMe0DDQIIAlaer9eKebAlDSV6huy+TWhJVPlzZh2o4tRP5SQWFlLn5N0To4mDD22/qdOq+veo1cSISLgQ==
 
-is-negative-zero@^2.0.2:
-  version "2.0.2"
-  resolved "https://registry.npmjs.org/is-negative-zero/-/is-negative-zero-2.0.2.tgz#7bf6f03a28003b8b3965de3ac26f664d765f3150"
-  integrity sha512-dqJvarLawXsFbNDeJW7zAz8ItJ9cd28YufuuFzh0G8pNHjJMnY08Dv7sYX2uF5UpQOwieAeOExEYAWWfu7ZZUA==
+is-negative-zero@^2.0.3:
+  version "2.0.3"
+  resolved "https://registry.npmjs.org/is-negative-zero/-/is-negative-zero-2.0.3.tgz#ced903a027aca6381b777a5743069d7376a49747"
+  integrity sha512-5KoIu2Ngpyek75jXodFvnafB6DJgr3u8uuK0LEZJjrU19DrMD3EVERaR8sjz8CCGgpZvxPl9SuE1GMVPFHx1mw==
 
 is-number-object@^1.0.4:
   version "1.0.7"
@@ -7487,17 +6895,17 @@ is-relative@^1.0.0:
   resolved "https://registry.npmjs.org/is-retry-allowed/-/is-retry-allowed-1.2.0.tgz#d778488bd0a4666a3be8a1482b9f2baafedea8b4"
   integrity sha512-RUbUeKwvm3XG2VYamhJL1xFktgjvPzL0Hq8C+6yrWIswDy3BIXGqCxhxkc30N9jqK311gVU137K8Ei55/zVJRg==
 
-"is-set@^2.0.1", "is-set@^2.0.2":
-  version "2.0.2"
-  resolved "https://registry.npmjs.org/is-set/-/is-set-2.0.2.tgz#90755fa4c2562dc1c5d4024760d6119b94ca18ec"
-  integrity sha512-+2cnTEZeY5z/iXGbLhPrOAaK/Mau5k5eXq9j14CpRTftq0pAJu2MwVRSZhyZWBzx3o6X795Lz6Bpb6R0GKf37g==
+"is-set@^2.0.2", "is-set@^2.0.3":
+  version "2.0.3"
+  resolved "https://registry.npmjs.org/is-set/-/is-set-2.0.3.tgz#8ab209ea424608141372ded6e0cb200ef1d9d01d"
+  integrity sha512-iPAjerrse27/ygGLxw+EBR9agv9Y6uLeYVJMu+QNCoouJ1/1ri0mGrcWpfCqFZuzzx3WjtwxG098X+n4OuRkPg==
 
-is-shared-array-buffer@^1.0.2:
-  version "1.0.2"
-  resolved "https://registry.npmjs.org/is-shared-array-buffer/-/is-shared-array-buffer-1.0.2.tgz#8f259c573b60b6a32d4058a1a07430c0a7344c79"
-  integrity sha512-sqN2UDu1/0y6uvXyStCOzyhAjCSlHceFoMKJW8W9EU9cvic/QdsZ0kEU93HEy3IUEFZIiH/3w+AH/UQbPHNdhA==
+"is-shared-array-buffer@^1.0.2", "is-shared-array-buffer@^1.0.3":
+  version "1.0.3"
+  resolved "https://registry.npmjs.org/is-shared-array-buffer/-/is-shared-array-buffer-1.0.3.tgz#1237f1cba059cdb62431d378dcc37d9680181688"
+  integrity sha512-nA2hv5XIhLR3uVzDDfCIknerhx8XUKnstuOERPNNIinXG7v9u+ohXF67vxm4TPTEPU6lm61ZkwP3c9PCB97rhg==
   dependencies:
-    call-bind "^1.0.2"
+    call-bind "^1.0.7"
 
 "is-stream@^1.0.0", "is-stream@^1.1.0":
   version "1.1.0"
@@ -7528,16 +6936,12 @@ is-stream@^3.0.0:
   dependencies:
     has-symbols "^1.0.2"
 
-"is-typed-array@^1.1.10", "is-typed-array@^1.1.3", "is-typed-array@^1.1.9":
-  version "1.1.10"
-  resolved "https://registry.npmjs.org/is-typed-array/-/is-typed-array-1.1.10.tgz#36a5b5cb4189b575d1a3e4b08536bfb485801e3f"
-  integrity sha512-PJqgEHiWZvMpaFZ3uTc8kHPM4+4ADTlDniuQL7cU/UDA0Ql7F70yGfHph3cLNe+c9toaigv+DFzTJKhc2CtO6A==
+"is-typed-array@^1.1.13", "is-typed-array@^1.1.3":
+  version "1.1.13"
+  resolved "https://registry.npmjs.org/is-typed-array/-/is-typed-array-1.1.13.tgz#d6c5ca56df62334959322d7d7dd1cca50debe229"
+  integrity sha512-uZ25/bUAlUY5fR4OKT4rZQEBrzQWYV9ZJYGGsUmEJ6thodVJ1HX64ePQ6Z0qPWP+m+Uq6e9UugrE38jeYsDSMw==
   dependencies:
-    available-typed-arrays "^1.0.5"
-    call-bind "^1.0.2"
-    for-each "^0.3.3"
-    gopd "^1.0.1"
-    has-tostringtag "^1.0.0"
+    which-typed-array "^1.1.14"
 
 is-unc-path@^1.0.0:
   version "1.0.0"
@@ -7546,10 +6950,10 @@ is-unc-path@^1.0.0:
   dependencies:
     unc-path-regex "^0.1.2"
 
-is-weakmap@^2.0.1:
-  version "2.0.1"
-  resolved "https://registry.npmjs.org/is-weakmap/-/is-weakmap-2.0.1.tgz#5008b59bdc43b698201d18f62b37b2ca243e8cf2"
-  integrity sha512-NSBR4kH5oVj1Uwvv970ruUkCV7O1mzgVFO4/rev2cLRda9Tm9HrL70ZPut4rOHgY0FNrUu9BCbXA2sdQ+x0chA==
+is-weakmap@^2.0.2:
+  version "2.0.2"
+  resolved "https://registry.npmjs.org/is-weakmap/-/is-weakmap-2.0.2.tgz#bf72615d649dfe5f699079c54b83e47d1ae19cfd"
+  integrity sha512-K5pXYOm9wqY1RgjpL3YTkF39tni1XajUIkawTLUo9EZEVUFga5gSQJF8nNS7ZwJQ02y+1YCNYcMh+HIf1ZqE+w==
 
 is-weakref@^1.0.2:
   version "1.0.2"
@@ -7558,13 +6962,13 @@ is-weakref@^1.0.2:
   dependencies:
     call-bind "^1.0.2"
 
-is-weakset@^2.0.1:
-  version "2.0.2"
-  resolved "https://registry.npmjs.org/is-weakset/-/is-weakset-2.0.2.tgz#4569d67a747a1ce5a994dfd4ef6dcea76e7c0a1d"
-  integrity sha512-t2yVvttHkQktwnNNmBQ98AhENLdPUTDTE21uPqAQ0ARwQfGeQKRVS0NNurH7bTf7RrvcVn1OOge45CnBeHCSmg==
+is-weakset@^2.0.3:
+  version "2.0.3"
+  resolved "https://registry.npmjs.org/is-weakset/-/is-weakset-2.0.3.tgz#e801519df8c0c43e12ff2834eead84ec9e624007"
+  integrity sha512-LvIm3/KWzS9oRFHugab7d+M/GcBXuXX5xZkzPmN+NxihdQlZUQ4dWuSV1xR/sq6upL1TJEDrfBgRepHFdBtSNQ==
   dependencies:
-    call-bind "^1.0.2"
-    get-intrinsic "^1.1.1"
+    call-bind "^1.0.7"
+    get-intrinsic "^1.2.4"
 
 isarray@0.0.1:
   version "0.0.1"
@@ -7586,15 +6990,20 @@ isexe@^2.0.0:
   resolved "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz#e8fbf374dc556ff8947a10dcb0572d633f2cfa10"
   integrity sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==
 
+isexe@^3.1.1:
+  version "3.1.1"
+  resolved "https://registry.npmjs.org/isexe/-/isexe-3.1.1.tgz#4a407e2bd78ddfb14bea0c27c6f7072dde775f0d"
+  integrity sha512-LpB/54B+/2J5hqQ7imZHfdU31OlgQqx7ZicVlkm9kzg9/w8GKLEcFfJl/t7DCEDueOyBAD6zCCwTO6Fzs0NoEQ==
+
 isobject@^3.0.1:
   version "3.0.1"
   resolved "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz#4e431e92b11a9731636aa1f9c8d1ccbcfdab78df"
   integrity sha512-WhB9zCku7EGTj/HQQRz5aUQEUeoQZH2bWcltRErOpymJ4boYE6wL9Tbr23krRPSZ+C5zqNSrSw+Cc7sZZ4b7vg==
 
 "istanbul-lib-coverage@^3.0.0", "istanbul-lib-coverage@^3.2.0":
-  version "3.2.0"
-  resolved "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-3.2.0.tgz#189e7909d0a39fa5a3dfad5b03f71947770191d3"
-  integrity sha512-eOeJ5BHCmHYvQK7xt9GkdHuzuCGS1Y6g9Gvnx3Ym33fz/HpLRYxiS0wHNr+m/MBC8B647Xt608vCDEvhl9c6Mw==
+  version "3.2.2"
+  resolved "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-3.2.2.tgz#2d166c4b0644d43a39f04bf6c2edd1e585f31756"
+  integrity sha512-O8dpsF+r0WV/8MNRKfnmrtCWhuKjxrq2w+jpzBL5UZKTi2LeVWnWOmWRxFlesJONmc+wLAGvKQZEOanko0LFTg==
 
 istanbul-lib-instrument@^5.0.4:
   version "5.2.1"
@@ -7608,23 +7017,23 @@ istanbul-lib-instrument@^5.0.4:
     semver "^6.3.0"
 
 istanbul-lib-instrument@^6.0.0:
-  version "6.0.0"
-  resolved "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-6.0.0.tgz#7a8af094cbfff1d5bb280f62ce043695ae8dd5b8"
-  integrity sha512-x58orMzEVfzPUKqlbLd1hXCnySCxKdDKa6Rjg97CwuLLRI4g3FHTdnExu1OqffVFay6zeMW+T6/DowFLndWnIw==
+  version "6.0.2"
+  resolved "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-6.0.2.tgz#91655936cf7380e4e473383081e38478b69993b1"
+  integrity sha512-1WUsZ9R1lA0HtBSohTkm39WTPlNKSJ5iFk7UwqXkBLoHQT+hfqPsfsTDVuZdKGaBwn7din9bS7SsnoAr943hvw==
   dependencies:
-    "@babel/core" "^7.12.3"
-    "@babel/parser" "^7.14.7"
-    "@istanbuljs/schema" "^0.1.2"
+    "@babel/core" "^7.23.9"
+    "@babel/parser" "^7.23.9"
+    "@istanbuljs/schema" "^0.1.3"
     istanbul-lib-coverage "^3.2.0"
     semver "^7.5.4"
 
 istanbul-lib-report@^3.0.0:
-  version "3.0.0"
-  resolved "https://registry.npmjs.org/istanbul-lib-report/-/istanbul-lib-report-3.0.0.tgz#7518fe52ea44de372f460a76b5ecda9ffb73d8a6"
-  integrity sha512-wcdi+uAKzfiGT2abPpKZ0hSU1rGQjUQnLvtY5MpQ7QCTahD3VODhcu4wcfY1YtkGaDD5yuydOLINXsfbus9ROw==
+  version "3.0.1"
+  resolved "https://registry.npmjs.org/istanbul-lib-report/-/istanbul-lib-report-3.0.1.tgz#908305bac9a5bd175ac6a74489eafd0fc2445a7d"
+  integrity sha512-GCfE1mtsHGOELCU8e/Z7YWzpmybrx/+dSTfLrvY8qRmaY6zXTKWn6WQIjaAFw069icm6GVMNkgu0NzI4iPZUNw==
   dependencies:
     istanbul-lib-coverage "^3.0.0"
-    make-dir "^3.0.0"
+    make-dir "^4.0.0"
     supports-color "^7.1.0"
 
 istanbul-lib-source-maps@^4.0.0:
@@ -7637,9 +7046,9 @@ istanbul-lib-source-maps@^4.0.0:
     source-map "^0.6.1"
 
 istanbul-reports@^3.1.3:
-  version "3.1.6"
-  resolved "https://registry.npmjs.org/istanbul-reports/-/istanbul-reports-3.1.6.tgz#2544bcab4768154281a2f0870471902704ccaa1a"
-  integrity sha512-TLgnMkKg3iTDsQ9PbPTdpfAK2DzjF9mqUG7RMgcQl8oFjad8ob4laGxv5XV5U9MAfx8D6tSJiUyuAwzLicaxlg==
+  version "3.1.7"
+  resolved "https://registry.npmjs.org/istanbul-reports/-/istanbul-reports-3.1.7.tgz#daed12b9e1dca518e15c056e1e537e741280fa0b"
+  integrity sha512-BewmUXImeuRk2YY0PVbxgKAysvhRPUQE0h5QRM++nVWyubKGV0l8qQ5op8+B2DOmwSe63Jivj0BjkPQVf8fP5g==
   dependencies:
     html-escaper "^2.0.0"
     istanbul-lib-report "^3.0.0"
@@ -7652,21 +7061,21 @@ isurl@^1.0.0-alpha5:
     has-to-string-tag-x "^1.2.0"
     is-object "^1.0.1"
 
-iterator.prototype@^1.1.0:
-  version "1.1.0"
-  resolved "https://registry.npmjs.org/iterator.prototype/-/iterator.prototype-1.1.0.tgz#690c88b043d821f783843aaf725d7ac3b62e3b46"
-  integrity sha512-rjuhAk1AJ1fssphHD0IFV6TWL40CwRZ53FrztKx43yk2v6rguBYsY4Bj1VU4HmoMmKwZUlx7mfnhDf9cOp4YTw==
+iterator.prototype@^1.1.2:
+  version "1.1.2"
+  resolved "https://registry.npmjs.org/iterator.prototype/-/iterator.prototype-1.1.2.tgz#5e29c8924f01916cb9335f1ff80619dcff22b0c0"
+  integrity sha512-DR33HMMr8EzwuRL8Y9D3u2BMj8+RqSE850jfGu59kS7tbmPLzGkZmVSfyCFSDxuZiEY6Rzt3T2NA/qU+NwVj1w==
   dependencies:
-    define-properties "^1.1.4"
-    get-intrinsic "^1.1.3"
+    define-properties "^1.2.1"
+    get-intrinsic "^1.2.1"
     has-symbols "^1.0.3"
-    has-tostringtag "^1.0.0"
-    reflect.getprototypeof "^1.0.3"
+    reflect.getprototypeof "^1.0.4"
+    set-function-name "^2.0.1"
 
-jackspeak@^2.0.3:
-  version "2.2.1"
-  resolved "https://registry.npmjs.org/jackspeak/-/jackspeak-2.2.1.tgz#655e8cf025d872c9c03d3eb63e8f0c024fef16a6"
-  integrity sha512-MXbxovZ/Pm42f6cDIDkl3xpwv1AGwObKwfmjs2nQePiy85tP3fatofl3FC1aBsOtP/6fq5SbtgHwWcMsLP+bDw==
+jackspeak@^2.3.6:
+  version "2.3.6"
+  resolved "https://registry.npmjs.org/jackspeak/-/jackspeak-2.3.6.tgz#647ecc472238aee4b06ac0e461acc21a8c505ca8"
+  integrity sha512-N3yCS/NegsOBokc8GAdM8UcmfsKiSS8cipheD/nivzr700H+nsMOxJjQnvwOcRYVuFkdH0wGUvW2WbXGmrZGbQ==
   dependencies:
     "@isaacs/cliui" "^8.0.2"
     "@pkgjs/parseargs" "^0.11.0"
@@ -7686,150 +7095,149 @@ javascript-natural-sort@^0.7.1:
   resolved "https://registry.npmjs.org/javascript-natural-sort/-/javascript-natural-sort-0.7.1.tgz#f9e2303d4507f6d74355a73664d1440fb5a0ef59"
   integrity sha512-nO6jcEfZWQXDhOiBtG2KvKyEptz7RVbpGP4vTD2hLBdmNQSsCiicO2Ioinv6UI4y9ukqnBpy+XZ9H6uLNgJTlw==
 
-jest-changed-files@^29.6.3:
-  version "29.6.3"
-  resolved "https://registry.npmjs.org/jest-changed-files/-/jest-changed-files-29.6.3.tgz#97cfdc93f74fb8af2a1acb0b78f836f1fb40c449"
-  integrity sha512-G5wDnElqLa4/c66ma5PG9eRjE342lIbF6SUnTJi26C3J28Fv2TVY2rOyKB9YGbSA5ogwevgmxc4j4aVjrEK6Yg==
+jest-changed-files@^29.7.0:
+  version "29.7.0"
+  resolved "https://registry.npmjs.org/jest-changed-files/-/jest-changed-files-29.7.0.tgz#1c06d07e77c78e1585d020424dedc10d6e17ac3a"
+  integrity sha512-fEArFiwf1BpQ+4bXSprcDc3/x4HSzL4al2tozwVpDFpsxALjLYdyiIK4e5Vz66GQJIbXJ82+35PtysofptNX2w==
   dependencies:
     execa "^5.0.0"
-    jest-util "^29.6.3"
+    jest-util "^29.7.0"
     p-limit "^3.1.0"
 
-jest-circus@^29.6.4:
-  version "29.6.4"
-  resolved "https://registry.npmjs.org/jest-circus/-/jest-circus-29.6.4.tgz#f074c8d795e0cc0f2ebf0705086b1be6a9a8722f"
-  integrity sha512-YXNrRyntVUgDfZbjXWBMPslX1mQ8MrSG0oM/Y06j9EYubODIyHWP8hMUbjbZ19M3M+zamqEur7O80HODwACoJw==
+jest-circus@^29.7.0:
+  version "29.7.0"
+  resolved "https://registry.npmjs.org/jest-circus/-/jest-circus-29.7.0.tgz#b6817a45fcc835d8b16d5962d0c026473ee3668a"
+  integrity sha512-3E1nCMgipcTkCocFwM90XXQab9bS+GMsjdpmPrlelaxwD93Ad8iVEjX/vvHPdLPnFf+L40u+5+iutRdA1N9myw==
   dependencies:
-    "@jest/environment" "^29.6.4"
-    "@jest/expect" "^29.6.4"
-    "@jest/test-result" "^29.6.4"
+    "@jest/environment" "^29.7.0"
+    "@jest/expect" "^29.7.0"
+    "@jest/test-result" "^29.7.0"
     "@jest/types" "^29.6.3"
     "@types/node" "*"
     chalk "^4.0.0"
     co "^4.6.0"
     dedent "^1.0.0"
     is-generator-fn "^2.0.0"
-    jest-each "^29.6.3"
-    jest-matcher-utils "^29.6.4"
-    jest-message-util "^29.6.3"
-    jest-runtime "^29.6.4"
-    jest-snapshot "^29.6.4"
-    jest-util "^29.6.3"
+    jest-each "^29.7.0"
+    jest-matcher-utils "^29.7.0"
+    jest-message-util "^29.7.0"
+    jest-runtime "^29.7.0"
+    jest-snapshot "^29.7.0"
+    jest-util "^29.7.0"
     p-limit "^3.1.0"
-    pretty-format "^29.6.3"
+    pretty-format "^29.7.0"
     pure-rand "^6.0.0"
     slash "^3.0.0"
     stack-utils "^2.0.3"
 
-jest-cli@^29.6.4:
-  version "29.6.4"
-  resolved "https://registry.npmjs.org/jest-cli/-/jest-cli-29.6.4.tgz#ad52f2dfa1b0291de7ec7f8d7c81ac435521ede0"
-  integrity sha512-+uMCQ7oizMmh8ZwRfZzKIEszFY9ksjjEQnTEMTaL7fYiL3Kw4XhqT9bYh+A4DQKUb67hZn2KbtEnDuHvcgK4pQ==
+jest-cli@^29.7.0:
+  version "29.7.0"
+  resolved "https://registry.npmjs.org/jest-cli/-/jest-cli-29.7.0.tgz#5592c940798e0cae677eec169264f2d839a37995"
+  integrity sha512-OVVobw2IubN/GSYsxETi+gOe7Ka59EFMR/twOU3Jb2GnKKeMGJB5SGUUrEz3SFVmJASUdZUzy83sLNNQ2gZslg==
   dependencies:
-    "@jest/core" "^29.6.4"
-    "@jest/test-result" "^29.6.4"
+    "@jest/core" "^29.7.0"
+    "@jest/test-result" "^29.7.0"
     "@jest/types" "^29.6.3"
     chalk "^4.0.0"
+    create-jest "^29.7.0"
     exit "^0.1.2"
-    graceful-fs "^4.2.9"
     import-local "^3.0.2"
-    jest-config "^29.6.4"
-    jest-util "^29.6.3"
-    jest-validate "^29.6.3"
-    prompts "^2.0.1"
+    jest-config "^29.7.0"
+    jest-util "^29.7.0"
+    jest-validate "^29.7.0"
     yargs "^17.3.1"
 
-jest-config@^29.6.4:
-  version "29.6.4"
-  resolved "https://registry.npmjs.org/jest-config/-/jest-config-29.6.4.tgz#eff958ee41d4e1ee7a6106d02b74ad9fc427d79e"
-  integrity sha512-JWohr3i9m2cVpBumQFv2akMEnFEPVOh+9L2xIBJhJ0zOaci2ZXuKJj0tgMKQCBZAKA09H049IR4HVS/43Qb19A==
+jest-config@^29.7.0:
+  version "29.7.0"
+  resolved "https://registry.npmjs.org/jest-config/-/jest-config-29.7.0.tgz#bcbda8806dbcc01b1e316a46bb74085a84b0245f"
+  integrity sha512-uXbpfeQ7R6TZBqI3/TxCU4q4ttk3u0PJeC+E0zbfSoSjq6bJ7buBPxzQPL0ifrkY4DNu4JUdk0ImlBUYi840eQ==
   dependencies:
     "@babel/core" "^7.11.6"
-    "@jest/test-sequencer" "^29.6.4"
+    "@jest/test-sequencer" "^29.7.0"
     "@jest/types" "^29.6.3"
-    babel-jest "^29.6.4"
+    babel-jest "^29.7.0"
     chalk "^4.0.0"
     ci-info "^3.2.0"
     deepmerge "^4.2.2"
     glob "^7.1.3"
     graceful-fs "^4.2.9"
-    jest-circus "^29.6.4"
-    jest-environment-node "^29.6.4"
+    jest-circus "^29.7.0"
+    jest-environment-node "^29.7.0"
     jest-get-type "^29.6.3"
     jest-regex-util "^29.6.3"
-    jest-resolve "^29.6.4"
-    jest-runner "^29.6.4"
-    jest-util "^29.6.3"
-    jest-validate "^29.6.3"
+    jest-resolve "^29.7.0"
+    jest-runner "^29.7.0"
+    jest-util "^29.7.0"
+    jest-validate "^29.7.0"
     micromatch "^4.0.4"
     parse-json "^5.2.0"
-    pretty-format "^29.6.3"
+    pretty-format "^29.7.0"
     slash "^3.0.0"
     strip-json-comments "^3.1.1"
 
-jest-diff@^29.6.4:
-  version "29.6.4"
-  resolved "https://registry.npmjs.org/jest-diff/-/jest-diff-29.6.4.tgz#85aaa6c92a79ae8cd9a54ebae8d5b6d9a513314a"
-  integrity sha512-9F48UxR9e4XOEZvoUXEHSWY4qC4zERJaOfrbBg9JpbJOO43R1vN76REt/aMGZoY6GD5g84nnJiBIVlscegefpw==
+jest-diff@^29.7.0:
+  version "29.7.0"
+  resolved "https://registry.npmjs.org/jest-diff/-/jest-diff-29.7.0.tgz#017934a66ebb7ecf6f205e84699be10afd70458a"
+  integrity sha512-LMIgiIrhigmPrs03JHpxUh2yISK3vLFPkAodPeo0+BuF7wA2FoQbkEg1u8gBYBThncu7e1oEDUfIXVuTqLRUjw==
   dependencies:
     chalk "^4.0.0"
     diff-sequences "^29.6.3"
     jest-get-type "^29.6.3"
-    pretty-format "^29.6.3"
+    pretty-format "^29.7.0"
 
-jest-docblock@^29.6.3:
-  version "29.6.3"
-  resolved "https://registry.npmjs.org/jest-docblock/-/jest-docblock-29.6.3.tgz#293dca5188846c9f7c0c2b1bb33e5b11f21645f2"
-  integrity sha512-2+H+GOTQBEm2+qFSQ7Ma+BvyV+waiIFxmZF5LdpBsAEjWX8QYjSCa4FrkIYtbfXUJJJnFCYrOtt6TZ+IAiTjBQ==
+jest-docblock@^29.7.0:
+  version "29.7.0"
+  resolved "https://registry.npmjs.org/jest-docblock/-/jest-docblock-29.7.0.tgz#8fddb6adc3cdc955c93e2a87f61cfd350d5d119a"
+  integrity sha512-q617Auw3A612guyaFgsbFeYpNP5t2aoUNLwBUbc/0kD1R4t9ixDbyFTHd1nok4epoVFpr7PmeWHrhvuV3XaJ4g==
   dependencies:
     detect-newline "^3.0.0"
 
-jest-each@^29.6.3:
-  version "29.6.3"
-  resolved "https://registry.npmjs.org/jest-each/-/jest-each-29.6.3.tgz#1956f14f5f0cb8ae0b2e7cabc10bb03ec817c142"
-  integrity sha512-KoXfJ42k8cqbkfshW7sSHcdfnv5agDdHCPA87ZBdmHP+zJstTJc0ttQaJ/x7zK6noAL76hOuTIJ6ZkQRS5dcyg==
+jest-each@^29.7.0:
+  version "29.7.0"
+  resolved "https://registry.npmjs.org/jest-each/-/jest-each-29.7.0.tgz#162a9b3f2328bdd991beaabffbb74745e56577d1"
+  integrity sha512-gns+Er14+ZrEoC5fhOfYCY1LOHHr0TI+rQUHZS8Ttw2l7gl+80eHc/gFf2Ktkw0+SIACDTeWvpFcv3B04VembQ==
   dependencies:
     "@jest/types" "^29.6.3"
     chalk "^4.0.0"
     jest-get-type "^29.6.3"
-    jest-util "^29.6.3"
-    pretty-format "^29.6.3"
+    jest-util "^29.7.0"
+    pretty-format "^29.7.0"
 
 jest-environment-jsdom@^29.6.4:
-  version "29.6.4"
-  resolved "https://registry.npmjs.org/jest-environment-jsdom/-/jest-environment-jsdom-29.6.4.tgz#0daf44454041f9e1ef7fa82eb1bd43426a82eb1c"
-  integrity sha512-K6wfgUJ16DoMs02JYFid9lOsqfpoVtyJxpRlnTxUHzvZWBnnh2VNGRB9EC1Cro96TQdq5TtSjb3qUjNaJP9IyA==
+  version "29.7.0"
+  resolved "https://registry.npmjs.org/jest-environment-jsdom/-/jest-environment-jsdom-29.7.0.tgz#d206fa3551933c3fd519e5dfdb58a0f5139a837f"
+  integrity sha512-k9iQbsf9OyOfdzWH8HDmrRT0gSIcX+FLNW7IQq94tFX0gynPwqDTW0Ho6iMVNjGz/nb+l/vW3dWM2bbLLpkbXA==
   dependencies:
-    "@jest/environment" "^29.6.4"
-    "@jest/fake-timers" "^29.6.4"
+    "@jest/environment" "^29.7.0"
+    "@jest/fake-timers" "^29.7.0"
     "@jest/types" "^29.6.3"
     "@types/jsdom" "^20.0.0"
     "@types/node" "*"
-    jest-mock "^29.6.3"
-    jest-util "^29.6.3"
+    jest-mock "^29.7.0"
+    jest-util "^29.7.0"
     jsdom "^20.0.0"
 
-jest-environment-node@^29.6.4:
-  version "29.6.4"
-  resolved "https://registry.npmjs.org/jest-environment-node/-/jest-environment-node-29.6.4.tgz#4ce311549afd815d3cafb49e60a1e4b25f06d29f"
-  integrity sha512-i7SbpH2dEIFGNmxGCpSc2w9cA4qVD+wfvg2ZnfQ7XVrKL0NA5uDVBIiGH8SR4F0dKEv/0qI5r+aDomDf04DpEQ==
+jest-environment-node@^29.7.0:
+  version "29.7.0"
+  resolved "https://registry.npmjs.org/jest-environment-node/-/jest-environment-node-29.7.0.tgz#0b93e111dda8ec120bc8300e6d1fb9576e164376"
+  integrity sha512-DOSwCRqXirTOyheM+4d5YZOrWcdu0LNZ87ewUoywbcb2XR4wKgqiG8vNeYwhjFMbEkfju7wx2GYH0P2gevGvFw==
   dependencies:
-    "@jest/environment" "^29.6.4"
-    "@jest/fake-timers" "^29.6.4"
+    "@jest/environment" "^29.7.0"
+    "@jest/fake-timers" "^29.7.0"
     "@jest/types" "^29.6.3"
     "@types/node" "*"
-    jest-mock "^29.6.3"
-    jest-util "^29.6.3"
+    jest-mock "^29.7.0"
+    jest-util "^29.7.0"
 
 jest-get-type@^29.6.3:
   version "29.6.3"
   resolved "https://registry.npmjs.org/jest-get-type/-/jest-get-type-29.6.3.tgz#36f499fdcea197c1045a127319c0481723908fd1"
   integrity sha512-zrteXnqYxfQh7l5FHyL38jL39di8H8rHoecLH3JNxH3BwOrBsNeabdap5e0I23lD4HHI8W5VFBZqG4Eaq5LNcw==
 
-jest-haste-map@^29.6.4:
-  version "29.6.4"
-  resolved "https://registry.npmjs.org/jest-haste-map/-/jest-haste-map-29.6.4.tgz#97143ce833829157ea7025204b08f9ace609b96a"
-  integrity sha512-12Ad+VNTDHxKf7k+M65sviyynRoZYuL1/GTuhEVb8RYsNSNln71nANRb/faSyWvx0j+gHcivChXHIoMJrGYjog==
+jest-haste-map@^29.7.0:
+  version "29.7.0"
+  resolved "https://registry.npmjs.org/jest-haste-map/-/jest-haste-map-29.7.0.tgz#3c2396524482f5a0506376e6c858c3bbcc17b104"
+  integrity sha512-fP8u2pyfqx0K1rGn1R9pyE0/KTn+G7PxktWidOBTqFPLYX0b9ksaMFkhK5vrS3DVun09pckLdlx90QthlW7AmA==
   dependencies:
     "@jest/types" "^29.6.3"
     "@types/graceful-fs" "^4.1.3"
@@ -7839,33 +7247,33 @@ jest-haste-map@^29.6.4:
     fsevents "^2.3.2"
     graceful-fs "^4.2.9"
     jest-regex-util "^29.6.3"
-    jest-util "^29.6.3"
-    jest-worker "^29.6.4"
+    jest-util "^29.7.0"
+    jest-worker "^29.7.0"
     micromatch "^4.0.4"
     walker "^1.0.8"
 
-jest-leak-detector@^29.6.3:
-  version "29.6.3"
-  resolved "https://registry.npmjs.org/jest-leak-detector/-/jest-leak-detector-29.6.3.tgz#b9661bc3aec8874e59aff361fa0c6d7cd507ea01"
-  integrity sha512-0kfbESIHXYdhAdpLsW7xdwmYhLf1BRu4AA118/OxFm0Ho1b2RcTmO4oF6aAMaxpxdxnJ3zve2rgwzNBD4Zbm7Q==
+jest-leak-detector@^29.7.0:
+  version "29.7.0"
+  resolved "https://registry.npmjs.org/jest-leak-detector/-/jest-leak-detector-29.7.0.tgz#5b7ec0dadfdfec0ca383dc9aa016d36b5ea4c728"
+  integrity sha512-kYA8IJcSYtST2BY9I+SMC32nDpBT3J2NvWJx8+JCuCdl/CR1I4EKUJROiP8XtCcxqgTTBGJNdbB1A8XRKbTetw==
   dependencies:
     jest-get-type "^29.6.3"
-    pretty-format "^29.6.3"
+    pretty-format "^29.7.0"
 
-jest-matcher-utils@^29.6.4:
-  version "29.6.4"
-  resolved "https://registry.npmjs.org/jest-matcher-utils/-/jest-matcher-utils-29.6.4.tgz#327db7ababea49455df3b23e5d6109fe0c709d24"
-  integrity sha512-KSzwyzGvK4HcfnserYqJHYi7sZVqdREJ9DMPAKVbS98JsIAvumihaNUbjrWw0St7p9IY7A9UskCW5MYlGmBQFQ==
+jest-matcher-utils@^29.7.0:
+  version "29.7.0"
+  resolved "https://registry.npmjs.org/jest-matcher-utils/-/jest-matcher-utils-29.7.0.tgz#ae8fec79ff249fd592ce80e3ee474e83a6c44f12"
+  integrity sha512-sBkD+Xi9DtcChsI3L3u0+N0opgPYnCRPtGcQYrgXmR+hmt/fYfWAL0xRXYU8eWOdfuLgBe0YCW3AFtnRLagq/g==
   dependencies:
     chalk "^4.0.0"
-    jest-diff "^29.6.4"
+    jest-diff "^29.7.0"
     jest-get-type "^29.6.3"
-    pretty-format "^29.6.3"
+    pretty-format "^29.7.0"
 
-jest-message-util@^29.6.3:
-  version "29.6.3"
-  resolved "https://registry.npmjs.org/jest-message-util/-/jest-message-util-29.6.3.tgz#bce16050d86801b165f20cfde34dc01d3cf85fbf"
-  integrity sha512-FtzaEEHzjDpQp51HX4UMkPZjy46ati4T5pEMyM6Ik48ztu4T9LQplZ6OsimHx7EuM9dfEh5HJa6D3trEftu3dA==
+jest-message-util@^29.7.0:
+  version "29.7.0"
+  resolved "https://registry.npmjs.org/jest-message-util/-/jest-message-util-29.7.0.tgz#8bc392e204e95dfe7564abbe72a404e28e51f7f3"
+  integrity sha512-GBEV4GRADeP+qtB2+6u61stea8mGcOT4mCtrYISZwfu9/ISHFJ/5zOMXYbpBE9RsS5+Gb63DW4FgmnKJ79Kf6w==
   dependencies:
     "@babel/code-frame" "^7.12.13"
     "@jest/types" "^29.6.3"
@@ -7873,18 +7281,18 @@ jest-message-util@^29.6.3:
     chalk "^4.0.0"
     graceful-fs "^4.2.9"
     micromatch "^4.0.4"
-    pretty-format "^29.6.3"
+    pretty-format "^29.7.0"
     slash "^3.0.0"
     stack-utils "^2.0.3"
 
-jest-mock@^29.6.3:
-  version "29.6.3"
-  resolved "https://registry.npmjs.org/jest-mock/-/jest-mock-29.6.3.tgz#433f3fd528c8ec5a76860177484940628bdf5e0a"
-  integrity sha512-Z7Gs/mOyTSR4yPsaZ72a/MtuK6RnC3JYqWONe48oLaoEcYwEDxqvbXz85G4SJrm2Z5Ar9zp6MiHF4AlFlRM4Pg==
+jest-mock@^29.7.0:
+  version "29.7.0"
+  resolved "https://registry.npmjs.org/jest-mock/-/jest-mock-29.7.0.tgz#4e836cf60e99c6fcfabe9f99d017f3fdd50a6347"
+  integrity sha512-ITOMZn+UkYS4ZFh83xYAOzWStloNzJFO2s8DWrE4lhtGD+AorgnbkiKERe4wQVBydIGPx059g6riW5Btp6Llnw==
   dependencies:
     "@jest/types" "^29.6.3"
     "@types/node" "*"
-    jest-util "^29.6.3"
+    jest-util "^29.7.0"
 
 jest-pnp-resolver@^1.2.2:
   version "1.2.3"
@@ -7896,67 +7304,67 @@ jest-regex-util@^29.6.3:
   resolved "https://registry.npmjs.org/jest-regex-util/-/jest-regex-util-29.6.3.tgz#4a556d9c776af68e1c5f48194f4d0327d24e8a52"
   integrity sha512-KJJBsRCyyLNWCNBOvZyRDnAIfUiRJ8v+hOBQYGn8gDyF3UegwiP4gwRR3/SDa42g1YbVycTidUF3rKjyLFDWbg==
 
-jest-resolve-dependencies@^29.6.4:
-  version "29.6.4"
-  resolved "https://registry.npmjs.org/jest-resolve-dependencies/-/jest-resolve-dependencies-29.6.4.tgz#20156b33c7eacbb6bb77aeba4bed0eab4a3f8734"
-  integrity sha512-7+6eAmr1ZBF3vOAJVsfLj1QdqeXG+WYhidfLHBRZqGN24MFRIiKG20ItpLw2qRAsW/D2ZUUmCNf6irUr/v6KHA==
+jest-resolve-dependencies@^29.7.0:
+  version "29.7.0"
+  resolved "https://registry.npmjs.org/jest-resolve-dependencies/-/jest-resolve-dependencies-29.7.0.tgz#1b04f2c095f37fc776ff40803dc92921b1e88428"
+  integrity sha512-un0zD/6qxJ+S0et7WxeI3H5XSe9lTBBR7bOHCHXkKR6luG5mwDDlIzVQ0V5cZCuoTgEdcdwzTghYkTWfubi+nA==
   dependencies:
     jest-regex-util "^29.6.3"
-    jest-snapshot "^29.6.4"
+    jest-snapshot "^29.7.0"
 
-jest-resolve@^29.6.4:
-  version "29.6.4"
-  resolved "https://registry.npmjs.org/jest-resolve/-/jest-resolve-29.6.4.tgz#e34cb06f2178b429c38455d98d1a07572ac9faa3"
-  integrity sha512-fPRq+0vcxsuGlG0O3gyoqGTAxasagOxEuyoxHeyxaZbc9QNek0AmJWSkhjlMG+mTsj+8knc/mWb3fXlRNVih7Q==
+jest-resolve@^29.7.0:
+  version "29.7.0"
+  resolved "https://registry.npmjs.org/jest-resolve/-/jest-resolve-29.7.0.tgz#64d6a8992dd26f635ab0c01e5eef4399c6bcbc30"
+  integrity sha512-IOVhZSrg+UvVAshDSDtHyFCCBUl/Q3AAJv8iZ6ZjnZ74xzvwuzLXid9IIIPgTnY62SJjfuupMKZsZQRsCvxEgA==
   dependencies:
     chalk "^4.0.0"
     graceful-fs "^4.2.9"
-    jest-haste-map "^29.6.4"
+    jest-haste-map "^29.7.0"
     jest-pnp-resolver "^1.2.2"
-    jest-util "^29.6.3"
-    jest-validate "^29.6.3"
+    jest-util "^29.7.0"
+    jest-validate "^29.7.0"
     resolve "^1.20.0"
     resolve.exports "^2.0.0"
     slash "^3.0.0"
 
-jest-runner@^29.6.4:
-  version "29.6.4"
-  resolved "https://registry.npmjs.org/jest-runner/-/jest-runner-29.6.4.tgz#b3b8ccb85970fde0fae40c73ee11eb75adccfacf"
-  integrity sha512-SDaLrMmtVlQYDuG0iSPYLycG8P9jLI+fRm8AF/xPKhYDB2g6xDWjXBrR5M8gEWsK6KVFlebpZ4QsrxdyIX1Jaw==
+jest-runner@^29.7.0:
+  version "29.7.0"
+  resolved "https://registry.npmjs.org/jest-runner/-/jest-runner-29.7.0.tgz#809af072d408a53dcfd2e849a4c976d3132f718e"
+  integrity sha512-fsc4N6cPCAahybGBfTRcq5wFR6fpLznMg47sY5aDpsoejOcVYFb07AHuSnR0liMcPTgBsA3ZJL6kFOjPdoNipQ==
   dependencies:
-    "@jest/console" "^29.6.4"
-    "@jest/environment" "^29.6.4"
-    "@jest/test-result" "^29.6.4"
-    "@jest/transform" "^29.6.4"
+    "@jest/console" "^29.7.0"
+    "@jest/environment" "^29.7.0"
+    "@jest/test-result" "^29.7.0"
+    "@jest/transform" "^29.7.0"
     "@jest/types" "^29.6.3"
     "@types/node" "*"
     chalk "^4.0.0"
     emittery "^0.13.1"
     graceful-fs "^4.2.9"
-    jest-docblock "^29.6.3"
-    jest-environment-node "^29.6.4"
-    jest-haste-map "^29.6.4"
-    jest-leak-detector "^29.6.3"
-    jest-message-util "^29.6.3"
-    jest-resolve "^29.6.4"
-    jest-runtime "^29.6.4"
-    jest-util "^29.6.3"
-    jest-watcher "^29.6.4"
-    jest-worker "^29.6.4"
+    jest-docblock "^29.7.0"
+    jest-environment-node "^29.7.0"
+    jest-haste-map "^29.7.0"
+    jest-leak-detector "^29.7.0"
+    jest-message-util "^29.7.0"
+    jest-resolve "^29.7.0"
+    jest-runtime "^29.7.0"
+    jest-util "^29.7.0"
+    jest-watcher "^29.7.0"
+    jest-worker "^29.7.0"
     p-limit "^3.1.0"
     source-map-support "0.5.13"
 
-jest-runtime@^29.6.4:
-  version "29.6.4"
-  resolved "https://registry.npmjs.org/jest-runtime/-/jest-runtime-29.6.4.tgz#b0bc495c9b6b12a0a7042ac34ca9bb85f8cd0ded"
-  integrity sha512-s/QxMBLvmwLdchKEjcLfwzP7h+jsHvNEtxGP5P+Fl1FMaJX2jMiIqe4rJw4tFprzCwuSvVUo9bn0uj4gNRXsbA==
+jest-runtime@^29.7.0:
+  version "29.7.0"
+  resolved "https://registry.npmjs.org/jest-runtime/-/jest-runtime-29.7.0.tgz#efecb3141cf7d3767a3a0cc8f7c9990587d3d817"
+  integrity sha512-gUnLjgwdGqW7B4LvOIkbKs9WGbn+QLqRQQ9juC6HndeDiezIwhDP+mhMwHWCEcfQ5RUXa6OPnFF8BJh5xegwwQ==
   dependencies:
-    "@jest/environment" "^29.6.4"
-    "@jest/fake-timers" "^29.6.4"
-    "@jest/globals" "^29.6.4"
+    "@jest/environment" "^29.7.0"
+    "@jest/fake-timers" "^29.7.0"
+    "@jest/globals" "^29.7.0"
     "@jest/source-map" "^29.6.3"
-    "@jest/test-result" "^29.6.4"
-    "@jest/transform" "^29.6.4"
+    "@jest/test-result" "^29.7.0"
+    "@jest/transform" "^29.7.0"
     "@jest/types" "^29.6.3"
     "@types/node" "*"
     chalk "^4.0.0"
@@ -7964,58 +7372,46 @@ jest-runtime@^29.6.4:
     collect-v8-coverage "^1.0.0"
     glob "^7.1.3"
     graceful-fs "^4.2.9"
-    jest-haste-map "^29.6.4"
-    jest-message-util "^29.6.3"
-    jest-mock "^29.6.3"
+    jest-haste-map "^29.7.0"
+    jest-message-util "^29.7.0"
+    jest-mock "^29.7.0"
     jest-regex-util "^29.6.3"
-    jest-resolve "^29.6.4"
-    jest-snapshot "^29.6.4"
-    jest-util "^29.6.3"
+    jest-resolve "^29.7.0"
+    jest-snapshot "^29.7.0"
+    jest-util "^29.7.0"
     slash "^3.0.0"
     strip-bom "^4.0.0"
 
-jest-snapshot@^29.6.4:
-  version "29.6.4"
-  resolved "https://registry.npmjs.org/jest-snapshot/-/jest-snapshot-29.6.4.tgz#9833eb6b66ff1541c7fd8ceaa42d541f407b4876"
-  integrity sha512-VC1N8ED7+4uboUKGIDsbvNAZb6LakgIPgAF4RSpF13dN6YaMokfRqO+BaqK4zIh6X3JffgwbzuGqDEjHm/MrvA==
+jest-snapshot@^29.7.0:
+  version "29.7.0"
+  resolved "https://registry.npmjs.org/jest-snapshot/-/jest-snapshot-29.7.0.tgz#c2c574c3f51865da1bb329036778a69bf88a6be5"
+  integrity sha512-Rm0BMWtxBcioHr1/OX5YCP8Uov4riHvKPknOGs804Zg9JGZgmIBkbtlxJC/7Z4msKYVbIJtfU+tKb8xlYNfdkw==
   dependencies:
     "@babel/core" "^7.11.6"
     "@babel/generator" "^7.7.2"
     "@babel/plugin-syntax-jsx" "^7.7.2"
     "@babel/plugin-syntax-typescript" "^7.7.2"
     "@babel/types" "^7.3.3"
-    "@jest/expect-utils" "^29.6.4"
-    "@jest/transform" "^29.6.4"
+    "@jest/expect-utils" "^29.7.0"
+    "@jest/transform" "^29.7.0"
     "@jest/types" "^29.6.3"
     babel-preset-current-node-syntax "^1.0.0"
     chalk "^4.0.0"
-    expect "^29.6.4"
+    expect "^29.7.0"
     graceful-fs "^4.2.9"
-    jest-diff "^29.6.4"
+    jest-diff "^29.7.0"
     jest-get-type "^29.6.3"
-    jest-matcher-utils "^29.6.4"
-    jest-message-util "^29.6.3"
-    jest-util "^29.6.3"
+    jest-matcher-utils "^29.7.0"
+    jest-message-util "^29.7.0"
+    jest-util "^29.7.0"
     natural-compare "^1.4.0"
-    pretty-format "^29.6.3"
+    pretty-format "^29.7.0"
     semver "^7.5.3"
 
-jest-util@^29.5.0:
-  version "29.5.0"
-  resolved "https://registry.npmjs.org/jest-util/-/jest-util-29.5.0.tgz#24a4d3d92fc39ce90425311b23c27a6e0ef16b8f"
-  integrity sha512-RYMgG/MTadOr5t8KdhejfvUU82MxsCu5MF6KuDUHl+NuwzUt+Sm6jJWxTJVrDR1j5M/gJVCPKQEpWXY+yIQ6lQ==
-  dependencies:
-    "@jest/types" "^29.5.0"
-    "@types/node" "*"
-    chalk "^4.0.0"
-    ci-info "^3.2.0"
-    graceful-fs "^4.2.9"
-    picomatch "^2.2.3"
-
-jest-util@^29.6.3:
-  version "29.6.3"
-  resolved "https://registry.npmjs.org/jest-util/-/jest-util-29.6.3.tgz#e15c3eac8716440d1ed076f09bc63ace1aebca63"
-  integrity sha512-QUjna/xSy4B32fzcKTSz1w7YYzgiHrjjJjevdRf61HYk998R5vVMMNmrHESYZVDS5DSWs+1srPLPKxXPkeSDOA==
+jest-util@^29.7.0:
+  version "29.7.0"
+  resolved "https://registry.npmjs.org/jest-util/-/jest-util-29.7.0.tgz#23c2b62bfb22be82b44de98055802ff3710fc0bc"
+  integrity sha512-z6EbKajIpqGKU56y5KBUgy1dt1ihhQJgWzUlZHArA/+X2ad7Cb5iF+AK1EWVL/Bo7Rz9uurpqw6SiBCefUbCGA==
   dependencies:
     "@jest/types" "^29.6.3"
     "@types/node" "*"
@@ -8024,30 +7420,30 @@ jest-util@^29.6.3:
     graceful-fs "^4.2.9"
     picomatch "^2.2.3"
 
-jest-validate@^29.6.3:
-  version "29.6.3"
-  resolved "https://registry.npmjs.org/jest-validate/-/jest-validate-29.6.3.tgz#a75fca774cfb1c5758c70d035d30a1f9c2784b4d"
-  integrity sha512-e7KWZcAIX+2W1o3cHfnqpGajdCs1jSM3DkXjGeLSNmCazv1EeI1ggTeK5wdZhF+7N+g44JI2Od3veojoaumlfg==
+jest-validate@^29.7.0:
+  version "29.7.0"
+  resolved "https://registry.npmjs.org/jest-validate/-/jest-validate-29.7.0.tgz#7bf705511c64da591d46b15fce41400d52147d9c"
+  integrity sha512-ZB7wHqaRGVw/9hST/OuFUReG7M8vKeq0/J2egIGLdvjHCmYqGARhzXmtgi+gVeZ5uXFF219aOc3Ls2yLg27tkw==
   dependencies:
     "@jest/types" "^29.6.3"
     camelcase "^6.2.0"
     chalk "^4.0.0"
     jest-get-type "^29.6.3"
     leven "^3.1.0"
-    pretty-format "^29.6.3"
+    pretty-format "^29.7.0"
 
-jest-watcher@^29.6.4:
-  version "29.6.4"
-  resolved "https://registry.npmjs.org/jest-watcher/-/jest-watcher-29.6.4.tgz#633eb515ae284aa67fd6831f1c9d1b534cf0e0ba"
-  integrity sha512-oqUWvx6+On04ShsT00Ir9T4/FvBeEh2M9PTubgITPxDa739p4hoQweWPRGyYeaojgT0xTpZKF0Y/rSY1UgMxvQ==
+jest-watcher@^29.7.0:
+  version "29.7.0"
+  resolved "https://registry.npmjs.org/jest-watcher/-/jest-watcher-29.7.0.tgz#7810d30d619c3a62093223ce6bb359ca1b28a2f2"
+  integrity sha512-49Fg7WXkU3Vl2h6LbLtMQ/HyB6rXSIX7SqvBLQmssRBGN9I0PNvPmAmCWSOY6SOvrjhI/F7/bGAv9RtnsPA03g==
   dependencies:
-    "@jest/test-result" "^29.6.4"
+    "@jest/test-result" "^29.7.0"
     "@jest/types" "^29.6.3"
     "@types/node" "*"
     ansi-escapes "^4.2.1"
     chalk "^4.0.0"
     emittery "^0.13.1"
-    jest-util "^29.6.3"
+    jest-util "^29.7.0"
     string-length "^4.0.1"
 
 jest-worker@^27.4.5:
@@ -8059,40 +7455,30 @@ jest-worker@^27.4.5:
     merge-stream "^2.0.0"
     supports-color "^8.0.0"
 
-jest-worker@^29.4.3:
-  version "29.5.0"
-  resolved "https://registry.npmjs.org/jest-worker/-/jest-worker-29.5.0.tgz#bdaefb06811bd3384d93f009755014d8acb4615d"
-  integrity sha512-NcrQnevGoSp4b5kg+akIpthoAFHxPBcb5P6mYPY0fUNT+sSvmtu6jlkEle3anczUKIKEbMxFimk9oTP/tpIPgA==
-  dependencies:
-    "@types/node" "*"
-    jest-util "^29.5.0"
-    merge-stream "^2.0.0"
-    supports-color "^8.0.0"
-
-jest-worker@^29.6.4:
-  version "29.6.4"
-  resolved "https://registry.npmjs.org/jest-worker/-/jest-worker-29.6.4.tgz#f34279f4afc33c872b470d4af21b281ac616abd3"
-  integrity sha512-6dpvFV4WjcWbDVGgHTWo/aupl8/LbBx2NSKfiwqf79xC/yeJjKHT1+StcKy/2KTmW16hE68ccKVOtXf+WZGz7Q==
+"jest-worker@^29.4.3", "jest-worker@^29.7.0":
+  version "29.7.0"
+  resolved "https://registry.npmjs.org/jest-worker/-/jest-worker-29.7.0.tgz#acad073acbbaeb7262bd5389e1bcf43e10058d4a"
+  integrity sha512-eIz2msL/EzL9UFTFFx7jBTkeZfku0yUAyZZZmJ93H2TYEiroIx2PQjEXcwYtYl8zXCxb+PAmA2hLIt/6ZEkPHw==
   dependencies:
     "@types/node" "*"
-    jest-util "^29.6.3"
+    jest-util "^29.7.0"
     merge-stream "^2.0.0"
     supports-color "^8.0.0"
 
 jest@^29.6.4:
-  version "29.6.4"
-  resolved "https://registry.npmjs.org/jest/-/jest-29.6.4.tgz#7c48e67a445ba264b778253b5d78d4ebc9d0a622"
-  integrity sha512-tEFhVQFF/bzoYV1YuGyzLPZ6vlPrdfvDmmAxudA1dLEuiztqg2Rkx20vkKY32xiDROcD2KXlgZ7Cu8RPeEHRKw==
+  version "29.7.0"
+  resolved "https://registry.npmjs.org/jest/-/jest-29.7.0.tgz#994676fc24177f088f1c5e3737f5697204ff2613"
+  integrity sha512-NIy3oAFp9shda19hy4HK0HRTWKtPJmGdnvywu01nOqNC2vZg+Z+fvJDxpMQA88eb2I9EcafcdjYgsDthnYTvGw==
   dependencies:
-    "@jest/core" "^29.6.4"
+    "@jest/core" "^29.7.0"
     "@jest/types" "^29.6.3"
     import-local "^3.0.2"
-    jest-cli "^29.6.4"
+    jest-cli "^29.7.0"
 
-jiti@^1.18.2:
-  version "1.18.2"
-  resolved "https://registry.npmjs.org/jiti/-/jiti-1.18.2.tgz#80c3ef3d486ebf2450d9335122b32d121f2a83cd"
-  integrity sha512-QAdOptna2NYiSSpv0O/BwoHBSmz4YhpzJHyi+fnMRTXFjp7B8i/YG5Z8IfusxB1ufjcD2Sre1F3R+nX3fvy7gg==
+jiti@^1.20.0:
+  version "1.21.0"
+  resolved "https://registry.npmjs.org/jiti/-/jiti-1.21.0.tgz#7c97f8fe045724e136a397f7340475244156105d"
+  integrity sha512-gFqAIbuKyyso/3G2qhiO2OM6shY6EPP/R0+mkDbyspxKazh8BXDC5FiFsUjlczgdNz/vfra0da2y+aHrusLG/Q==
 
 jmespath@^0.16.0:
   version "0.16.0"
@@ -8178,6 +7564,11 @@ json-buffer@3.0.0:
   resolved "https://registry.npmjs.org/json-buffer/-/json-buffer-3.0.0.tgz#5b1f397afc75d677bde8bcfc0e47e1f9a3d9a898"
   integrity sha512-CuUqjv0FUZIdXkHPI8MezCnFCdaTAacej1TZYulLoAg1h/PhwkdXFN4V/gzY4g+fMBCOV2xF+rp7t2XD2ns/NQ==
 
+json-buffer@3.0.1:
+  version "3.0.1"
+  resolved "https://registry.npmjs.org/json-buffer/-/json-buffer-3.0.1.tgz#9338802a30d3b6605fbe0613e094008ca8c05a13"
+  integrity sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ==
+
 "json-parse-even-better-errors@^2.3.0", "json-parse-even-better-errors@^2.3.1":
   version "2.3.1"
   resolved "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz#7c47805a94319928e05777405dc12e1f7a4ee02d"
@@ -8210,37 +7601,37 @@ json5@^1.0.1:
   dependencies:
     minimist "^1.2.0"
 
-"json5@^2.1.2", "json5@^2.2.2", "json5@^2.2.3":
+"json5@^2.1.2", "json5@^2.2.3":
   version "2.2.3"
   resolved "https://registry.npmjs.org/json5/-/json5-2.2.3.tgz#78cd6f1a19bdc12b73db5ad0c61efd66c1e29283"
   integrity sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==
 
 jsoneditor@^9.5.4:
-  version "9.10.2"
-  resolved "https://registry.npmjs.org/jsoneditor/-/jsoneditor-9.10.2.tgz#c8c3acb59d674931971f059f7c7015c52e5e7460"
-  integrity sha512-sT9U8T9MB7We5uyCnofugqYPJtQ5rPJngFlvpdtyFTFKFjOMnlWE1jVhFwjTXwGBoFeiLS+S6rVuhIhJ35Jutw==
+  version "9.10.5"
+  resolved "https://registry.npmjs.org/jsoneditor/-/jsoneditor-9.10.5.tgz#9aeb3a1482850299826f8f292cec22b0f71d975c"
+  integrity sha512-fVZ0NMt+zm4rqTKBv2x7zPdLeaRyKo1EjJkaR1QjK4gEM1rMwICILYSW1OPxSc1qqyAoDaA/eeNrluKoxOocCA==
   dependencies:
-    ace-builds "^1.20.0"
+    ace-builds "^1.31.1"
     ajv "^6.12.6"
     javascript-natural-sort "^0.7.1"
     jmespath "^0.16.0"
     json-source-map "^0.6.1"
-    jsonrepair "^3.1.0"
+    jsonrepair "3.1.0"
     mobius1-selectr "^2.4.13"
     picomodal "^3.0.0"
-    vanilla-picker "^2.12.1"
+    vanilla-picker "^2.12.2"
 
 jsonparse@^1.2.0:
   version "1.3.1"
   resolved "https://registry.npmjs.org/jsonparse/-/jsonparse-1.3.1.tgz#3f4dae4a91fac315f71062f8521cc239f1366280"
   integrity sha512-POQXvpdL69+CluYsillJ7SUhKvytYjW9vG/GKpnf+xP8UWgYEM/RaMzHHofbALDiKbbP1W8UEYmgGl39WkPZsg==
 
-jsonrepair@^3.1.0:
-  version "3.2.0"
-  resolved "https://registry.npmjs.org/jsonrepair/-/jsonrepair-3.2.0.tgz#ca1b6fdd23ae76bb8c82742f7a5773a7cef3d651"
-  integrity sha512-6eHBc2z5vipym4S8rzTcCXQBLWpkSzi9bk7I3xTdUxRzXyYvfjoVZzJ97N4C/9vcKI9NgNp3slPwHufDr0rFYw==
+jsonrepair@3.1.0:
+  version "3.1.0"
+  resolved "https://registry.npmjs.org/jsonrepair/-/jsonrepair-3.1.0.tgz#02488882080930e6a37a7b080bc77546f2e12676"
+  integrity sha512-idqReg23J0PVRAADmZMc5xQM3xeOX5bTB6OTyMnzq33IXJXmn9iJuWIEvGmrN80rQf4d7uLTMEDwpzujNcI0Rg==
 
-jss-plugin-camel-case@^10.5.1:
+jss-plugin-camel-case@^10.10.0:
   version "10.10.0"
   resolved "https://registry.npmjs.org/jss-plugin-camel-case/-/jss-plugin-camel-case-10.10.0.tgz#27ea159bab67eb4837fa0260204eb7925d4daa1c"
   integrity sha512-z+HETfj5IYgFxh1wJnUAU8jByI48ED+v0fuTuhKrPR+pRBYS2EDwbusU8aFOpCdYhtRc9zhN+PJ7iNE8pAWyPw==
@@ -8249,7 +7640,7 @@ jss-plugin-camel-case@^10.5.1:
     hyphenate-style-name "^1.0.3"
     jss "10.10.0"
 
-jss-plugin-default-unit@^10.5.1:
+jss-plugin-default-unit@^10.10.0:
   version "10.10.0"
   resolved "https://registry.npmjs.org/jss-plugin-default-unit/-/jss-plugin-default-unit-10.10.0.tgz#db3925cf6a07f8e1dd459549d9c8aadff9804293"
   integrity sha512-SvpajxIECi4JDUbGLefvNckmI+c2VWmP43qnEy/0eiwzRUsafg5DVSIWSzZe4d2vFX1u9nRDP46WCFV/PXVBGQ==
@@ -8257,7 +7648,7 @@ jss-plugin-default-unit@^10.5.1:
     "@babel/runtime" "^7.3.1"
     jss "10.10.0"
 
-jss-plugin-global@^10.5.1:
+jss-plugin-global@^10.10.0:
   version "10.10.0"
   resolved "https://registry.npmjs.org/jss-plugin-global/-/jss-plugin-global-10.10.0.tgz#1c55d3c35821fab67a538a38918292fc9c567efd"
   integrity sha512-icXEYbMufiNuWfuazLeN+BNJO16Ge88OcXU5ZDC2vLqElmMybA31Wi7lZ3lf+vgufRocvPj8443irhYRgWxP+A==
@@ -8265,7 +7656,7 @@ jss-plugin-global@^10.5.1:
     "@babel/runtime" "^7.3.1"
     jss "10.10.0"
 
-jss-plugin-nested@^10.5.1:
+jss-plugin-nested@^10.10.0:
   version "10.10.0"
   resolved "https://registry.npmjs.org/jss-plugin-nested/-/jss-plugin-nested-10.10.0.tgz#db872ed8925688806e77f1fc87f6e62264513219"
   integrity sha512-9R4JHxxGgiZhurDo3q7LdIiDEgtA1bTGzAbhSPyIOWb7ZubrjQe8acwhEQ6OEKydzpl8XHMtTnEwHXCARLYqYA==
@@ -8274,7 +7665,7 @@ jss-plugin-nested@^10.5.1:
     jss "10.10.0"
     tiny-warning "^1.0.2"
 
-jss-plugin-props-sort@^10.5.1:
+jss-plugin-props-sort@^10.10.0:
   version "10.10.0"
   resolved "https://registry.npmjs.org/jss-plugin-props-sort/-/jss-plugin-props-sort-10.10.0.tgz#67f4dd4c70830c126f4ec49b4b37ccddb680a5d7"
   integrity sha512-5VNJvQJbnq/vRfje6uZLe/FyaOpzP/IH1LP+0fr88QamVrGJa0hpRRyAa0ea4U/3LcorJfBFVyC4yN2QC73lJg==
@@ -8282,7 +7673,7 @@ jss-plugin-props-sort@^10.5.1:
     "@babel/runtime" "^7.3.1"
     jss "10.10.0"
 
-jss-plugin-rule-value-function@^10.5.1:
+jss-plugin-rule-value-function@^10.10.0:
   version "10.10.0"
   resolved "https://registry.npmjs.org/jss-plugin-rule-value-function/-/jss-plugin-rule-value-function-10.10.0.tgz#7d99e3229e78a3712f78ba50ab342e881d26a24b"
   integrity sha512-uEFJFgaCtkXeIPgki8ICw3Y7VMkL9GEan6SqmT9tqpwM+/t+hxfMUdU4wQ0MtOiMNWhwnckBV0IebrKcZM9C0g==
@@ -8291,7 +7682,7 @@ jss-plugin-rule-value-function@^10.5.1:
     jss "10.10.0"
     tiny-warning "^1.0.2"
 
-jss-plugin-vendor-prefixer@^10.5.1:
+jss-plugin-vendor-prefixer@^10.10.0:
   version "10.10.0"
   resolved "https://registry.npmjs.org/jss-plugin-vendor-prefixer/-/jss-plugin-vendor-prefixer-10.10.0.tgz#c01428ef5a89f2b128ec0af87a314d0c767931c7"
   integrity sha512-UY/41WumgjW8r1qMCO8l1ARg7NHnfRVWRhZ2E2m0DMYsr2DD91qIXLyNhiX83hHswR7Wm4D+oDYNC1zWCJWtqg==
@@ -8300,7 +7691,7 @@ jss-plugin-vendor-prefixer@^10.5.1:
     css-vendor "^2.0.8"
     jss "10.10.0"
 
-"jss@10.10.0", "jss@^10.5.1":
+"jss@10.10.0", "jss@^10.10.0":
   version "10.10.0"
   resolved "https://registry.npmjs.org/jss/-/jss-10.10.0.tgz#a75cc85b0108c7ac8c7b7d296c520a3e4fbc6ccc"
   integrity sha512-cqsOTS7jqPsPMjtKYDUpdFC0AbhYFLTcuGRqymgmdJIeQ8cH7+AgX7YSgQy79wXloZq2VvATYxUOUQEvS1V/Zw==
@@ -8311,12 +7702,14 @@ jss-plugin-vendor-prefixer@^10.5.1:
     tiny-warning "^1.0.2"
 
 "jsx-ast-utils@^2.4.1 || ^3.0.0":
-  version "3.3.3"
-  resolved "https://registry.npmjs.org/jsx-ast-utils/-/jsx-ast-utils-3.3.3.tgz#76b3e6e6cece5c69d49a5792c3d01bd1a0cdc7ea"
-  integrity sha512-fYQHZTZ8jSfmWZ0iyzfwiU4WDX4HpHbMCZ3gPlWYiCl3BoeOTsqKBqnTVfH2rYT7eP5c3sVbeSPHnnJOaTrWiw==
+  version "3.3.5"
+  resolved "https://registry.npmjs.org/jsx-ast-utils/-/jsx-ast-utils-3.3.5.tgz#4766bd05a8e2a11af222becd19e15575e52a853a"
+  integrity sha512-ZZow9HBI5O6EPgSJLUb8n2NKgmVWTwCvHGwFuJlMjvLFqlGG6pjirPhtdsseaLZjSibD8eegzmYpUZwoIlj2cQ==
   dependencies:
-    array-includes "^3.1.5"
-    object.assign "^4.1.3"
+    array-includes "^3.1.6"
+    array.prototype.flat "^1.3.1"
+    object.assign "^4.1.4"
+    object.values "^1.1.6"
 
 junk@^3.1.0:
   version "3.1.0"
@@ -8330,6 +7723,13 @@ keyv@3.0.0:
   dependencies:
     json-buffer "3.0.0"
 
+keyv@^4.5.3:
+  version "4.5.4"
+  resolved "https://registry.npmjs.org/keyv/-/keyv-4.5.4.tgz#a879a99e29452f942439f2a405e3af8b31d4de93"
+  integrity sha512-oxVHkHR/EJf2CNXnWxRLW6mg7JyCCUcG0DtEGmL2ctUo1PNTin1PUil+r/+4r5MpVgC/fn1kjsx7mjSujKqIpw==
+  dependencies:
+    json-buffer "3.0.1"
+
 "kind-of@^6.0.2", "kind-of@^6.0.3":
   version "6.0.3"
   resolved "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz#07c05034a6c349fa06e24fa35aa76db4580ce4dd"
@@ -8340,11 +7740,6 @@ kleur@^3.0.3:
   resolved "https://registry.npmjs.org/kleur/-/kleur-3.0.3.tgz#a79c9ecc86ee1ce3fa6206d1216c501f147fc07e"
   integrity sha512-eTIzlVOSUR+JxdDFepEYcBMtZ9Qqdef+rnzWdRZuMbOywu5tO2w2N7rqjoANZ5k9vywhL6Br1VRjUIgTQx4E8w==
 
-klona@^2.0.4:
-  version "2.0.6"
-  resolved "https://registry.npmjs.org/klona/-/klona-2.0.6.tgz#85bffbf819c03b2f53270412420a4555ef882e22"
-  integrity sha512-dhG34DXATL5hSxJbIexCft8FChFXtmskoZYnoPWjXQuebWYCNkVeV3KkGegCK9CP1oswI/vQibS2GY7Em/sJJA==
-
 labeled-stream-splicer@^2.0.0:
   version "2.0.2"
   resolved "https://registry.npmjs.org/labeled-stream-splicer/-/labeled-stream-splicer-2.0.2.tgz#42a41a16abcd46fd046306cf4f2c3576fffb1c21"
@@ -8371,11 +7766,16 @@ levn@^0.4.1:
     prelude-ls "^1.2.1"
     type-check "~0.4.0"
 
-"lilconfig@^2.0.3", "lilconfig@^2.1.0":
+lilconfig@^2.0.3:
   version "2.1.0"
   resolved "https://registry.npmjs.org/lilconfig/-/lilconfig-2.1.0.tgz#78e23ac89ebb7e1bfbf25b18043de756548e7f52"
   integrity sha512-utWOt/GHzuUxnLKxB6dk81RoOeoNeHgbrXiuGk4yyF5qlRz+iIVWu56E2fqGHFrXz0QNUhLB/8nKqvRH66JKGQ==
 
+lilconfig@^3.1.1:
+  version "3.1.1"
+  resolved "https://registry.npmjs.org/lilconfig/-/lilconfig-3.1.1.tgz#9d8a246fa753106cfc205fd2d77042faca56e5e3"
+  integrity sha512-O18pf7nyvHTckunPWCV1XUNXU1piu01y2b7ATJ0ppkUkk8ocqVWBrYjJBCwHDjD/ZWcfyrA0P4gKhzWGi5EINQ==
+
 lines-and-columns@^1.1.6:
   version "1.2.4"
   resolved "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.2.4.tgz#eca284f75d2965079309dc0ad9255abb2ebc1632"
@@ -8618,6 +8018,11 @@ lowercase-keys@^1.0.0:
   resolved "https://registry.npmjs.org/lowercase-keys/-/lowercase-keys-1.0.1.tgz#6f9e30b47084d971a7c820ff15a6c5167b74c26f"
   integrity sha512-G2Lj61tXDnVFFOi8VZds+SoQjtQC3dgokKdDG2mTm1tx4m50NUHBOZSBwQQHyy0V12A0JTG4icfZQH+xPyh8VA==
 
+"lru-cache@^10.0.1", "lru-cache@^10.2.0":
+  version "10.2.0"
+  resolved "https://registry.npmjs.org/lru-cache/-/lru-cache-10.2.0.tgz#0bd445ca57363465900f4d1f9bd8db343a4d95c3"
+  integrity sha512-2bIM8x+VAf6JT4bKAljS1qUWgMsqZRPGJS6FSahIMPVvctcNhyVp7AJu7quxOW9jwkryBReKZY5tY5JYv2n/7Q==
+
 lru-cache@^4.0.1:
   version "4.1.5"
   resolved "https://registry.npmjs.org/lru-cache/-/lru-cache-4.1.5.tgz#8bbe50ea85bed59bc9e33dcab8235ee9bcf443cd"
@@ -8645,11 +8050,6 @@ lru-cache@^7.7.1:
   resolved "https://registry.npmjs.org/lru-cache/-/lru-cache-7.18.3.tgz#f793896e0fd0e954a59dfdd82f0773808df6aa89"
   integrity sha512-jumlc0BIUrS3qJGgIkWZsyfAM7NCWiBcCDhnd+3NNM5KbBmLTgHVfWBcg6W+rLUsIpzpERPsvwUP7CckAQSOoA==
 
-lru-cache@^9.1.1:
-  version "9.1.2"
-  resolved "https://registry.npmjs.org/lru-cache/-/lru-cache-9.1.2.tgz#255fdbc14b75589d6d0e73644ca167a8db506835"
-  integrity sha512-ERJq3FOzJTxBbFjZ7iDs+NiK4VI9Wz+RdrrAB8dio1oV+YvdPzUEE4QNiT2VD51DkIbCYRUUzCRkssXCHqSnKQ==
-
 lz-string@^1.5.0:
   version "1.5.0"
   resolved "https://registry.npmjs.org/lz-string/-/lz-string-1.5.0.tgz#c1ab50f77887b712621201ba9fd4e3a6ed099941"
@@ -8662,32 +8062,57 @@ lz-string@^1.5.0:
   dependencies:
     pify "^3.0.0"
 
-"make-dir@^3.0.0", "make-dir@^3.0.2", "make-dir@^3.1.0":
+"make-dir@^3.0.2", "make-dir@^3.1.0":
   version "3.1.0"
   resolved "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz#415e967046b3a7f1d185277d84aa58203726a13f"
   integrity sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==
   dependencies:
     semver "^6.0.0"
 
-make-fetch-happen@^11.0.3:
-  version "11.1.1"
-  resolved "https://registry.npmjs.org/make-fetch-happen/-/make-fetch-happen-11.1.1.tgz#85ceb98079584a9523d4bf71d32996e7e208549f"
-  integrity sha512-rLWS7GCSTcEujjVBs2YqG7Y4643u8ucvCJeSRqiLYhesrDuzeuFIk37xREzAsfQaqzl8b9rNCE4m6J8tvX4Q8w==
+make-dir@^4.0.0:
+  version "4.0.0"
+  resolved "https://registry.npmjs.org/make-dir/-/make-dir-4.0.0.tgz#c3c2307a771277cd9638305f915c29ae741b614e"
+  integrity sha512-hXdUTZYIVOt1Ex//jAQi+wTZZpUpwBj/0QsOzqegb3rGMMeJiSEu5xLHnYfBrRV4RH2+OCSOO95Is/7x1WJ4bw==
+  dependencies:
+    semver "^7.5.3"
+
+make-fetch-happen@^10.0.3:
+  version "10.2.1"
+  resolved "https://registry.npmjs.org/make-fetch-happen/-/make-fetch-happen-10.2.1.tgz#f5e3835c5e9817b617f2770870d9492d28678164"
+  integrity sha512-NgOPbRiaQM10DYXvN3/hhGVI2M5MtITFryzBGxHM5p4wnFxsVCbxkrBrDsk+EZ5OB4jEOT7AjDxtdF+KVEFT7w==
   dependencies:
     agentkeepalive "^4.2.1"
-    cacache "^17.0.0"
-    http-cache-semantics "^4.1.1"
+    cacache "^16.1.0"
+    http-cache-semantics "^4.1.0"
     http-proxy-agent "^5.0.0"
     https-proxy-agent "^5.0.0"
     is-lambda "^1.0.1"
     lru-cache "^7.7.1"
-    minipass "^5.0.0"
-    minipass-fetch "^3.0.0"
+    minipass "^3.1.6"
+    minipass-collect "^1.0.2"
+    minipass-fetch "^2.0.3"
     minipass-flush "^1.0.5"
     minipass-pipeline "^1.2.4"
     negotiator "^0.6.3"
     promise-retry "^2.0.1"
     socks-proxy-agent "^7.0.0"
+    ssri "^9.0.0"
+
+make-fetch-happen@^13.0.0:
+  version "13.0.0"
+  resolved "https://registry.npmjs.org/make-fetch-happen/-/make-fetch-happen-13.0.0.tgz#705d6f6cbd7faecb8eac2432f551e49475bfedf0"
+  integrity sha512-7ThobcL8brtGo9CavByQrQi+23aIfgYU++wg4B87AIS8Rb2ZBt/MEaDqzA00Xwv/jUjAjYkLHjVolYuTLKda2A==
+  dependencies:
+    "@npmcli/agent" "^2.0.0"
+    cacache "^18.0.0"
+    http-cache-semantics "^4.1.1"
+    is-lambda "^1.0.1"
+    minipass "^7.0.2"
+    minipass-fetch "^3.0.0"
+    minipass-flush "^1.0.5"
+    minipass-pipeline "^1.2.4"
+    negotiator "^0.6.3"
+    promise-retry "^2.0.1"
     ssri "^10.0.0"
 
 makeerror@1.0.12:
@@ -8833,11 +8258,12 @@ mimic-response@^1.0.0:
   integrity sha512-I9jwMn07Sy/IwOj3zVkVik2JTvgpaykDZEigL6Rx6N9LbMywwUSMtxET+7lVoDLLd3O3IXwJwvuuns8UB/HeAg==
 
 mini-css-extract-plugin@^2.7.6:
-  version "2.7.6"
-  resolved "https://registry.npmjs.org/mini-css-extract-plugin/-/mini-css-extract-plugin-2.7.6.tgz#282a3d38863fddcd2e0c220aaed5b90bc156564d"
-  integrity sha512-Qk7HcgaPkGG6eD77mLvZS1nmxlao3j+9PkrT9Uc7HAE1id3F41+DdBRYRYkbyfNRGzm8/YWtzhw7nVPmwhqTQw==
+  version "2.9.0"
+  resolved "https://registry.npmjs.org/mini-css-extract-plugin/-/mini-css-extract-plugin-2.9.0.tgz#c73a1327ccf466f69026ac22a8e8fd707b78a235"
+  integrity sha512-Zs1YsZVfemekSZG+44vBsYTLQORkPMwnlv+aehcxK/NLKC+EGhDB39/YePYYqx/sTk6NnYpuqikhSn7+JIevTA==
   dependencies:
     schema-utils "^4.0.0"
+    tapable "^2.2.1"
 
 "minimalistic-assert@^1.0.0", "minimalistic-assert@^1.0.1":
   version "1.0.1"
@@ -8864,9 +8290,9 @@ minimatch@^5.0.1:
     brace-expansion "^2.0.1"
 
 minimatch@^9.0.1:
-  version "9.0.1"
-  resolved "https://registry.npmjs.org/minimatch/-/minimatch-9.0.1.tgz#8a555f541cf976c622daf078bb28f29fb927c253"
-  integrity sha512-0jWhJpD/MdhPXwPuiRkCbfYfSKp2qnn2eOc279qI7f+osl/l+prKSrvhg157zSYvx/1nmgn2NqdT6k2Z7zSH9w==
+  version "9.0.4"
+  resolved "https://registry.npmjs.org/minimatch/-/minimatch-9.0.4.tgz#8e49c731d1749cbec05050ee5145147b32496a51"
+  integrity sha512-KqWh+VchfxcMNRAJjj2tnsSJdNbHsVgnkBhTNrW7AjVo6OvLtxw8zfT9oLw1JSohlFzJ8jCoTgaoXvJ+kHt6fw==
   dependencies:
     brace-expansion "^2.0.1"
 
@@ -8891,13 +8317,30 @@ minipass-collect@^1.0.2:
   dependencies:
     minipass "^3.0.0"
 
+minipass-collect@^2.0.1:
+  version "2.0.1"
+  resolved "https://registry.npmjs.org/minipass-collect/-/minipass-collect-2.0.1.tgz#1621bc77e12258a12c60d34e2276ec5c20680863"
+  integrity sha512-D7V8PO9oaz7PWGLbCACuI1qEOsq7UKfLotx/C0Aet43fCUB/wfQ7DYeq2oR/svFJGYDHPr38SHATeaj/ZoKHKw==
+  dependencies:
+    minipass "^7.0.3"
+
+minipass-fetch@^2.0.3:
+  version "2.1.2"
+  resolved "https://registry.npmjs.org/minipass-fetch/-/minipass-fetch-2.1.2.tgz#95560b50c472d81a3bc76f20ede80eaed76d8add"
+  integrity sha512-LT49Zi2/WMROHYoqGgdlQIZh8mLPZmOrN2NdJjMXxYe4nkN6FUyuPuOAOedNJDrx0IRGg9+4guZewtp8hE6TxA==
+  dependencies:
+    encoding "^0.1.13"
+    minipass "^3.1.6"
+    minipass-sized "^1.0.3"
+    minizlib "^2.1.2"
+
 minipass-fetch@^3.0.0:
-  version "3.0.3"
-  resolved "https://registry.npmjs.org/minipass-fetch/-/minipass-fetch-3.0.3.tgz#d9df70085609864331b533c960fd4ffaa78d15ce"
-  integrity sha512-n5ITsTkDqYkYJZjcRWzZt9qnZKCT7nKCosJhHoj7S7zD+BP4jVbWs+odsniw5TA3E0sLomhTKOKjF86wf11PuQ==
+  version "3.0.4"
+  resolved "https://registry.npmjs.org/minipass-fetch/-/minipass-fetch-3.0.4.tgz#4d4d9b9f34053af6c6e597a64be8e66e42bf45b7"
+  integrity sha512-jHAqnA728uUpIaFm7NWsCnqKT6UqZz7GcI/bDpPATuwYyKwJwW0remxSCxUlKiEty+eopHGa3oc8WxgQ1FFJqg==
   dependencies:
     encoding "^0.1.13"
-    minipass "^5.0.0"
+    minipass "^7.0.3"
     minipass-sized "^1.0.3"
     minizlib "^2.1.2"
 
@@ -8922,7 +8365,7 @@ minipass-sized@^1.0.3:
   dependencies:
     minipass "^3.0.0"
 
-minipass@^3.0.0:
+"minipass@^3.0.0", "minipass@^3.1.1", "minipass@^3.1.6":
   version "3.3.6"
   resolved "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz#7bba384db3a1520d18c9c0e5251c3444e95dd94a"
   integrity sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==
@@ -8934,10 +8377,10 @@ minipass@^5.0.0:
   resolved "https://registry.npmjs.org/minipass/-/minipass-5.0.0.tgz#3e9788ffb90b694a5d0ec94479a45b5d8738133d"
   integrity sha512-3FnjYuehv9k6ovOEbyOswadCDPX1piCfhV8ncmYtHOjuPwylVWsghTLo7rabjC3Rx5xD4HDx8Wm1xnMF7S5qFQ==
 
-"minipass@^5.0.0 || ^6.0.2":
-  version "6.0.2"
-  resolved "https://registry.npmjs.org/minipass/-/minipass-6.0.2.tgz#542844b6c4ce95b202c0995b0a471f1229de4c81"
-  integrity sha512-MzWSV5nYVT7mVyWCwn2o7JH13w2TBRmmSqSRCKzTw+lmft9X4z+3wjvs06Tzijo5z4W/kahUCDpRXTF+ZrmF/w==
+"minipass@^5.0.0 || ^6.0.2 || ^7.0.0", "minipass@^7.0.2", "minipass@^7.0.3", "minipass@^7.0.4":
+  version "7.0.4"
+  resolved "https://registry.npmjs.org/minipass/-/minipass-7.0.4.tgz#dbce03740f50a4786ba994c1fb908844d27b038c"
+  integrity sha512-jYofLM5Dam9279rdkWzqHozUo4ybjdZmCsDHePy5V/PbBcVMiSZR97gmAy45aqi8CK1lG2ECd356FU86avfwUQ==
 
 "minizlib@^2.1.1", "minizlib@^2.1.2":
   version "2.1.2"
@@ -8981,11 +8424,11 @@ ml-array-rescale@^1.3.7:
     ml-array-min "^1.2.3"
 
 ml-matrix@^6.5.0:
-  version "6.10.4"
-  resolved "https://registry.npmjs.org/ml-matrix/-/ml-matrix-6.10.4.tgz#babee344b20062d9c123aa801c2e5d0d0c7477f6"
-  integrity sha512-rUyEhfNPzqFsltYwvjNeYQXlYEaVea3KgzcJKJteQUj2WVAGFx9fLNRjtMR9mg2B6bd5buxlmkZmxM4hmO+SKg==
+  version "6.11.0"
+  resolved "https://registry.npmjs.org/ml-matrix/-/ml-matrix-6.11.0.tgz#3cf2260ef04cbb8e0e0425e71d200f5cbcf82772"
+  integrity sha512-7jr9NmFRkaUxbKslfRu3aZOjJd2LkSitCGv+QH9PF0eJoEG7jIpjXra1Vw8/kgao8+kHCSsJONG6vfWmXQ+/Eg==
   dependencies:
-    is-any-array "^2.0.0"
+    is-any-array "^2.0.1"
     ml-array-rescale "^1.3.7"
 
 mobius1-selectr@^2.4.13:
@@ -9015,16 +8458,16 @@ module-deps@^6.2.3:
     xtend "^4.0.0"
 
 moment-timezone@^0.5.34:
-  version "0.5.43"
-  resolved "https://registry.npmjs.org/moment-timezone/-/moment-timezone-0.5.43.tgz#3dd7f3d0c67f78c23cd1906b9b2137a09b3c4790"
-  integrity sha512-72j3aNyuIsDxdF1i7CEgV2FfxM1r6aaqJyLB2vwb33mXYyoyLly+F1zbWqhA3/bVIoJ4szlUoMbUnVdid32NUQ==
+  version "0.5.45"
+  resolved "https://registry.npmjs.org/moment-timezone/-/moment-timezone-0.5.45.tgz#cb685acd56bac10e69d93c536366eb65aa6bcf5c"
+  integrity sha512-HIWmqA86KcmCAhnMAN0wuDOARV/525R2+lOLotuGFzn4HO+FH+/645z2wx0Dt3iDv6/p61SIvKnDstISainhLQ==
   dependencies:
     moment "^2.29.4"
 
 moment@^2.29.4:
-  version "2.29.4"
-  resolved "https://registry.npmjs.org/moment/-/moment-2.29.4.tgz#3dbe052889fe7c1b2ed966fcb3a77328964ef108"
-  integrity sha512-5LC9SOxjSc2HF6vO2CyuTDNivEdoz2IvyJJGj6X8DJ0eFyfszE0QiEd+iXmBvUP3WHxSjFH/vIsA0EN00cgr8w==
+  version "2.30.1"
+  resolved "https://registry.npmjs.org/moment/-/moment-2.30.1.tgz#f8c91c07b7a786e30c59926df530b4eac96974ae"
+  integrity sha512-uEmtNhbDOrWPFS+hdjFCBfy9f2YoyzRpwcl+DqpC6taX21FzsTLQVbMV/W7PzNSX6x/bhC1zA3c2UQ5NzH6how==
 
 moo@^0.5.0:
   version "0.5.2"
@@ -9039,10 +8482,10 @@ mozjpeg@^8.0.0:
     bin-build "^3.0.0"
     bin-wrapper "^4.0.0"
 
-mrmime@^1.0.0:
-  version "1.0.1"
-  resolved "https://registry.npmjs.org/mrmime/-/mrmime-1.0.1.tgz#5f90c825fad4bdd41dc914eff5d1a8cfdaf24f27"
-  integrity sha512-hzzEagAgDyoU1Q6yg5uI+AorQgdvMCur3FcKf7NhMKWsaYg+RnbTyHRa/9IlLF9rf455MOCtcqqrQQ83pPP7Uw==
+mrmime@^2.0.0:
+  version "2.0.0"
+  resolved "https://registry.npmjs.org/mrmime/-/mrmime-2.0.0.tgz#151082a6e06e59a9a39b46b3e14d5cfe92b3abb4"
+  integrity sha512-eu38+hdgojoyq63s+yTpN4XMBdt5l8HhMhc4VKLO9KM5caLIBvUm4thi7fFaxyTmCKeNnXZ5pAlBwCUnhA09uw==
 
 ms@2.1.2:
   version "2.1.2"
@@ -9055,18 +8498,18 @@ ms@^2.0.0:
   integrity sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==
 
 nan@^2.14.2:
-  version "2.17.0"
-  resolved "https://registry.npmjs.org/nan/-/nan-2.17.0.tgz#c0150a2368a182f033e9aa5195ec76ea41a199cb"
-  integrity sha512-2ZTgtl0nJsO0KQCjEpxcIr5D+Yv90plTitZt9JBfQvVJDS5seMl3FOvsh3+9CoYWXf/1l5OaZzzF6nDm4cagaQ==
+  version "2.19.0"
+  resolved "https://registry.npmjs.org/nan/-/nan-2.19.0.tgz#bb58122ad55a6c5bc973303908d5b16cfdd5a8c0"
+  integrity sha512-nO1xXxfh/RWNxfd/XPfbIfFk5vgLsAxUR9y5O0cHMJu/AW9U95JLXqthYHjEp+8gQ5p96K9jUp8nbVOxCdRbtw==
   dependencies:
     node-gyp latest
 
-"nanoid@^3.0.0", "nanoid@^3.3.6":
-  version "3.3.6"
-  resolved "https://registry.npmjs.org/nanoid/-/nanoid-3.3.6.tgz#443380c856d6e9f9824267d960b4236ad583ea4c"
-  integrity sha512-BGcqMMJuToF7i1rt+2PWSNVnWIkGCU78jBG3RxO/bZlnZPK2Cmi2QaffxGO/2RvWi9sL+FAiRiXMgsyxQ1DIDA==
+"nanoid@^3.0.0", "nanoid@^3.3.7":
+  version "3.3.7"
+  resolved "https://registry.npmjs.org/nanoid/-/nanoid-3.3.7.tgz#d0c301a691bc8d54efa0a2226ccf3fe2fd656bd8"
+  integrity sha512-eSRppjcPIatRIMC1U6UngP8XFcz8MQWGQdt1MTBQ7NaAmvXDfvNxbvWV3x2y6CdEUciCSsDHDQZbhYaB8QEo2g==
 
-nanopop@^2.1.0:
+nanopop@2.3.0:
   version "2.3.0"
   resolved "https://registry.npmjs.org/nanopop/-/nanopop-2.3.0.tgz#a5f672fba27d45d6ecbd0b59789c040072915123"
   integrity sha512-fzN+T2K7/Ah25XU02MJkPZ5q4Tj5FpjmIYq4rvoHX4yb16HzFdCO6JxFFn5Y/oBhQ8no8fUZavnyIv9/+xkBBw==
@@ -9103,7 +8546,7 @@ negotiator@^0.6.3:
   resolved "https://registry.npmjs.org/negotiator/-/negotiator-0.6.3.tgz#58e323a72fedc0d6f9cd4d31fe49f51479590ccd"
   integrity sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg==
 
-"neo-async@^2.6.0", "neo-async@^2.6.2":
+neo-async@^2.6.2:
   version "2.6.2"
   resolved "https://registry.npmjs.org/neo-async/-/neo-async-2.6.2.tgz#b4aafb93e3aeb2d8174ca53cf163ab7d7308305f"
   integrity sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw==
@@ -9121,16 +8564,16 @@ no-case@^3.0.4:
     lower-case "^2.0.2"
     tslib "^2.0.3"
 
-"node-gyp@^9.0.0", "node-gyp@latest":
-  version "9.4.0"
-  resolved "https://registry.npmjs.org/node-gyp/-/node-gyp-9.4.0.tgz#2a7a91c7cba4eccfd95e949369f27c9ba704f369"
-  integrity sha512-dMXsYP6gc9rRbejLXmTbVRYjAHw7ppswsKyMxuxJxxOHzluIO1rGp9TOQgjFJ+2MCqcOcQTOPB/8Xwhr+7s4Eg==
+node-gyp@^9.0.0:
+  version "9.4.1"
+  resolved "https://registry.npmjs.org/node-gyp/-/node-gyp-9.4.1.tgz#8a1023e0d6766ecb52764cc3a734b36ff275e185"
+  integrity sha512-OQkWKbjQKbGkMf/xqI1jjy3oCTgMKJac58G2+bjZb3fza6gW2YrCSdMQYaoTb70crvE//Gngr4f0AgVHmqHvBQ==
   dependencies:
     env-paths "^2.2.0"
     exponential-backoff "^3.1.1"
     glob "^7.1.4"
     graceful-fs "^4.2.6"
-    make-fetch-happen "^11.0.3"
+    make-fetch-happen "^10.0.3"
     nopt "^6.0.0"
     npmlog "^6.0.0"
     rimraf "^3.0.2"
@@ -9138,20 +8581,31 @@ no-case@^3.0.4:
     tar "^6.1.2"
     which "^2.0.2"
 
+node-gyp@latest:
+  version "10.1.0"
+  resolved "https://registry.npmjs.org/node-gyp/-/node-gyp-10.1.0.tgz#75e6f223f2acb4026866c26a2ead6aab75a8ca7e"
+  integrity sha512-B4J5M1cABxPc5PwfjhbV5hoy2DP9p8lFXASnEN6hugXOa61416tnTZ29x9sSwAd0o99XNIcpvDDy1swAExsVKA==
+  dependencies:
+    env-paths "^2.2.0"
+    exponential-backoff "^3.1.1"
+    glob "^10.3.10"
+    graceful-fs "^4.2.6"
+    make-fetch-happen "^13.0.0"
+    nopt "^7.0.0"
+    proc-log "^3.0.0"
+    semver "^7.3.5"
+    tar "^6.1.2"
+    which "^4.0.0"
+
 node-int64@^0.4.0:
   version "0.4.0"
   resolved "https://registry.npmjs.org/node-int64/-/node-int64-0.4.0.tgz#87a9065cdb355d3182d8f94ce11188b825c68a3b"
   integrity sha512-O5lz91xSOeoXP6DulyHfllpq+Eg00MWitZIbtPfoSEvqIHdl5gfcY6hYzDWnj0qD5tz52PI08u9qUvSVeUBeHw==
 
-node-releases@^2.0.12:
-  version "2.0.12"
-  resolved "https://registry.npmjs.org/node-releases/-/node-releases-2.0.12.tgz#35627cc224a23bfb06fb3380f2b3afaaa7eb1039"
-  integrity sha512-QzsYKWhXTWx8h1kIvqfnC++o0pEmpRQA/aenALsL2F4pqNVr7YzcdMlDij5WBnwftRbJCNJL/O7zdKaxKPHqgQ==
-
-node-releases@^2.0.13:
-  version "2.0.13"
-  resolved "https://registry.npmjs.org/node-releases/-/node-releases-2.0.13.tgz#d5ed1627c23e3461e819b02e57b75e4899b1c81d"
-  integrity sha512-uYr7J37ae/ORWdZeQ1xxMJe3NtdmqMC/JZK+geofDrkLUApKRHPd18/TxtBOJ4A0/+uUIliorNrfYV6s1b02eQ==
+node-releases@^2.0.14:
+  version "2.0.14"
+  resolved "https://registry.npmjs.org/node-releases/-/node-releases-2.0.14.tgz#2ffb053bceb8b2be8495ece1ab6ce600c4461b0b"
+  integrity sha512-y10wOWt8yZpqXmOgRo77WaHEmhYQYGNA6y421PKsKYWEK8aW+cqAphborZDhqfyKrbZEN92CN1X2KbafY2s7Yw==
 
 nopt@^6.0.0:
   version "6.0.0"
@@ -9160,6 +8614,13 @@ nopt@^6.0.0:
   dependencies:
     abbrev "^1.0.0"
 
+nopt@^7.0.0:
+  version "7.2.0"
+  resolved "https://registry.npmjs.org/nopt/-/nopt-7.2.0.tgz#067378c68116f602f552876194fd11f1292503d7"
+  integrity sha512-CVDtwCdhYIvnAzFoJ6NJ6dX3oga9/HyciQDnG1vQDjSLMeKLJ4A93ZqYKDrgYSr1FBY5/hMYC+2VCi24pgpkGA==
+  dependencies:
+    abbrev "^2.0.0"
+
 normalize-package-data@^3.0.2:
   version "3.0.3"
   resolved "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-3.0.3.tgz#dbcc3e2da59509a0983422884cd172eefdfa525e"
@@ -9170,7 +8631,7 @@ normalize-package-data@^3.0.2:
     semver "^7.3.4"
     validate-npm-package-license "^3.0.1"
 
-"normalize-path@^3.0.0", "normalize-path@~3.0.0":
+normalize-path@^3.0.0:
   version "3.0.0"
   resolved "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz#0dcd69ff23a1c9b11fd0978316644a0388216a65"
   integrity sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==
@@ -9199,10 +8660,10 @@ notificar@^1.0.1:
   resolved "https://registry.npmjs.org/notificar/-/notificar-1.0.1.tgz#11ba233c261eee02f5d688ee300ece5f72522887"
   integrity sha512-jiCay0IY0N+gloyDks+v4WV+OKU4lIXUhQgxw4Iu9bXpw80cNXTezVv46OCK5+E8G8fkt1Bj76DNepULqlQS3Q==
 
-notistack@^1.0.10:
-  version "1.0.10"
-  resolved "https://registry.npmjs.org/notistack/-/notistack-1.0.10.tgz#8db90830034383467a04184f1fa8ff77f4fc58a5"
-  integrity sha512-z0y4jJaVtOoH3kc3GtNUlhNTY+5LE04QDeLVujX3VPhhzg67zw055mZjrBF+nzpv3V9aiPNph1EgRU4+t8kQTQ==
+notistack@^2.0.8:
+  version "2.0.8"
+  resolved "https://registry.npmjs.org/notistack/-/notistack-2.0.8.tgz#78cdf34c64e311bf1d1d71c2123396bcdea5e95b"
+  integrity sha512-/IY14wkFp5qjPgKNvAdfL5Jp6q90+MjgKTPh4c81r/lW70KeuX6b9pE/4f8L4FG31cNudbN9siiFS5ql1aSLRw==
   dependencies:
     clsx "^1.1.0"
     hoist-non-react-statics "^3.3.0"
@@ -9230,9 +8691,9 @@ npm-run-path@^4.0.1:
     path-key "^3.0.0"
 
 npm-run-path@^5.1.0:
-  version "5.1.0"
-  resolved "https://registry.npmjs.org/npm-run-path/-/npm-run-path-5.1.0.tgz#bc62f7f3f6952d9894bd08944ba011a6ee7b7e00"
-  integrity sha512-sJOdmRGrY2sjNTRMbSvluQqg+8X7ZK61yvzBEIDhz4f8z1TZFYABsqjjCBd/0PUNE9M6QDgHJXQkGUEm7Q+l9Q==
+  version "5.3.0"
+  resolved "https://registry.npmjs.org/npm-run-path/-/npm-run-path-5.3.0.tgz#e23353d0ebb9317f174e93417e4a4d82d0249e9f"
+  integrity sha512-ppwTtiJZq0O/ai0z7yfudtBpWIoxM8yE6nHi1X47eFR2EWORqfbu6CnPlNsjeN683eT0qG6H/Pyf9fCcvjnnnQ==
   dependencies:
     path-key "^4.0.0"
 
@@ -9263,68 +8724,70 @@ nwsapi@^2.2.2:
   resolved "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz#2109adc7965887cfc05cbbd442cac8bfbb360863"
   integrity sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==
 
-"object-inspect@^1.12.3", "object-inspect@^1.9.0":
-  version "1.12.3"
-  resolved "https://registry.npmjs.org/object-inspect/-/object-inspect-1.12.3.tgz#ba62dffd67ee256c8c086dfae69e016cd1f198b9"
-  integrity sha512-geUvdk7c+eizMNUDkRpW1wJwgfOiOeHbxBR/hLXK1aT6zmVSO0jsQcs7fj6MGw89jC/cjGfLcNOrtMYtGqm81g==
+object-inspect@^1.13.1:
+  version "1.13.1"
+  resolved "https://registry.npmjs.org/object-inspect/-/object-inspect-1.13.1.tgz#b96c6109324ccfef6b12216a956ca4dc2ff94bc2"
+  integrity sha512-5qoj1RUiKOMsCCNLV1CBiPYE10sziTsnmNxkAI/rZhiD63CF7IqdFGC/XzjWjpSgLf0LxXX3bDFIh0E18f6UhQ==
 
 object-is@^1.1.5:
-  version "1.1.5"
-  resolved "https://registry.npmjs.org/object-is/-/object-is-1.1.5.tgz#b9deeaa5fc7f1846a0faecdceec138e5778f53ac"
-  integrity sha512-3cyDsyHgtmi7I7DfSSI2LDp6SK2lwvtbg0p0R1e0RvTqF5ceGx+K2dfSjm1bKDMVCFEDAQvy+o8c6a7VujOddw==
+  version "1.1.6"
+  resolved "https://registry.npmjs.org/object-is/-/object-is-1.1.6.tgz#1a6a53aed2dd8f7e6775ff870bea58545956ab07"
+  integrity sha512-F8cZ+KfGlSGi09lJT7/Nd6KJZ9ygtvYC0/UYYLI9nmQKLMnydpB9yvbv9K1uSkEu7FU9vYPmVwLg328tX+ot3Q==
   dependencies:
-    call-bind "^1.0.2"
-    define-properties "^1.1.3"
+    call-bind "^1.0.7"
+    define-properties "^1.2.1"
 
 object-keys@^1.1.1:
   version "1.1.1"
   resolved "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz#1c47f272df277f3b1daf061677d9c82e2322c60e"
   integrity sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==
 
-"object.assign@^4.1.3", "object.assign@^4.1.4":
-  version "4.1.4"
-  resolved "https://registry.npmjs.org/object.assign/-/object.assign-4.1.4.tgz#9673c7c7c351ab8c4d0b516f4343ebf4dfb7799f"
-  integrity sha512-1mxKf0e58bvyjSCtKYY4sRe9itRk3PJpquJOjeIkz885CczcI4IvJJDLPS72oowuSh+pBxUFROpX+TU++hxhZQ==
+"object.assign@^4.1.4", "object.assign@^4.1.5":
+  version "4.1.5"
+  resolved "https://registry.npmjs.org/object.assign/-/object.assign-4.1.5.tgz#3a833f9ab7fdb80fc9e8d2300c803d216d8fdbb0"
+  integrity sha512-byy+U7gp+FVwmyzKPYhW2h5l3crpmGsxl7X2s8y43IgxvG4g3QZ6CffDtsNQy1WsmZpQbO+ybo0AlW7TY6DcBQ==
   dependencies:
-    call-bind "^1.0.2"
-    define-properties "^1.1.4"
+    call-bind "^1.0.5"
+    define-properties "^1.2.1"
     has-symbols "^1.0.3"
     object-keys "^1.1.1"
 
-object.entries@^1.1.6:
-  version "1.1.6"
-  resolved "https://registry.npmjs.org/object.entries/-/object.entries-1.1.6.tgz#9737d0e5b8291edd340a3e3264bb8a3b00d5fa23"
-  integrity sha512-leTPzo4Zvg3pmbQ3rDK69Rl8GQvIqMWubrkxONG9/ojtFE2rD9fjMKfSI5BxW3osRH1m6VdzmqK8oAY9aT4x5w==
+object.entries@^1.1.7:
+  version "1.1.8"
+  resolved "https://registry.npmjs.org/object.entries/-/object.entries-1.1.8.tgz#bffe6f282e01f4d17807204a24f8edd823599c41"
+  integrity sha512-cmopxi8VwRIAw/fkijJohSfpef5PdN0pMQJN6VC/ZKvn0LIknWD8KtgY6KlQdEc4tIjcQ3HxSMmnvtzIscdaYQ==
   dependencies:
-    call-bind "^1.0.2"
-    define-properties "^1.1.4"
-    es-abstract "^1.20.4"
+    call-bind "^1.0.7"
+    define-properties "^1.2.1"
+    es-object-atoms "^1.0.0"
 
-object.fromentries@^2.0.6:
-  version "2.0.6"
-  resolved "https://registry.npmjs.org/object.fromentries/-/object.fromentries-2.0.6.tgz#cdb04da08c539cffa912dcd368b886e0904bfa73"
-  integrity sha512-VciD13dswC4j1Xt5394WR4MzmAQmlgN72phd/riNp9vtD7tp4QQWJ0R4wvclXcafgcYK8veHRed2W6XeGBvcfg==
+object.fromentries@^2.0.7:
+  version "2.0.8"
+  resolved "https://registry.npmjs.org/object.fromentries/-/object.fromentries-2.0.8.tgz#f7195d8a9b97bd95cbc1999ea939ecd1a2b00c65"
+  integrity sha512-k6E21FzySsSK5a21KRADBd/NGneRegFO5pLHfdQLpRDETUNJueLXs3WCzyQ3tFRDYgbq3KHGXfTbi2bs8WQ6rQ==
   dependencies:
-    call-bind "^1.0.2"
-    define-properties "^1.1.4"
-    es-abstract "^1.20.4"
+    call-bind "^1.0.7"
+    define-properties "^1.2.1"
+    es-abstract "^1.23.2"
+    es-object-atoms "^1.0.0"
 
-object.hasown@^1.1.2:
-  version "1.1.2"
-  resolved "https://registry.npmjs.org/object.hasown/-/object.hasown-1.1.2.tgz#f919e21fad4eb38a57bc6345b3afd496515c3f92"
-  integrity sha512-B5UIT3J1W+WuWIU55h0mjlwaqxiE5vYENJXIXZ4VFe05pNYrkKuK0U/6aFcb0pKywYJh7IhfoqUfKVmrJJHZHw==
+object.hasown@^1.1.3:
+  version "1.1.4"
+  resolved "https://registry.npmjs.org/object.hasown/-/object.hasown-1.1.4.tgz#e270ae377e4c120cdcb7656ce66884a6218283dc"
+  integrity sha512-FZ9LZt9/RHzGySlBARE3VF+gE26TxR38SdmqOqliuTnl9wrKulaQs+4dee1V+Io8VfxqzAfHu6YuRgUy8OHoTg==
   dependencies:
-    define-properties "^1.1.4"
-    es-abstract "^1.20.4"
+    define-properties "^1.2.1"
+    es-abstract "^1.23.2"
+    es-object-atoms "^1.0.0"
 
-object.values@^1.1.6:
-  version "1.1.6"
-  resolved "https://registry.npmjs.org/object.values/-/object.values-1.1.6.tgz#4abbaa71eba47d63589d402856f908243eea9b1d"
-  integrity sha512-FVVTkD1vENCsAcwNs9k6jea2uHC/X0+JcjG8YA60FN5CMaJmG95wT9jek/xX9nornqGRrBkKtzuAu2wuHpKqvw==
+"object.values@^1.1.6", "object.values@^1.1.7":
+  version "1.2.0"
+  resolved "https://registry.npmjs.org/object.values/-/object.values-1.2.0.tgz#65405a9d92cee68ac2d303002e0b8470a4d9ab1b"
+  integrity sha512-yBYjY9QX2hnRmZHAjG/f13MzmBzxzYgQhFrke06TTyKY5zSTEqkOeukBzIdVA3j3ulu8Qa3MbVFShV7T2RmGtQ==
   dependencies:
-    call-bind "^1.0.2"
-    define-properties "^1.1.4"
-    es-abstract "^1.20.4"
+    call-bind "^1.0.7"
+    define-properties "^1.2.1"
+    es-object-atoms "^1.0.0"
 
 "once@^1.3.0", "once@^1.3.1", "once@^1.4.0":
   version "1.4.0"
@@ -9352,17 +8815,17 @@ opener@^1.5.2:
   resolved "https://registry.npmjs.org/opener/-/opener-1.5.2.tgz#5d37e1f35077b9dcac4301372271afdeb2a13598"
   integrity sha512-ur5UIdyw5Y7yEj9wLzhqXiy6GZ3Mwx0yGI+5sMn2r0N0v3cKJvUmFH5yPP+WXh9e0xfyzyJX95D8l088DNFj7A==
 
-optionator@^0.9.1:
-  version "0.9.1"
-  resolved "https://registry.npmjs.org/optionator/-/optionator-0.9.1.tgz#4f236a6373dae0566a6d43e1326674f50c291499"
-  integrity sha512-74RlY5FCnhq4jRxVUPKDaRwrVNXMqsGsiW6AJw4XK8hmtm10wC0ypZBLw5IIp85NZMr91+qd1RvvENwg7jjRFw==
+optionator@^0.9.3:
+  version "0.9.3"
+  resolved "https://registry.npmjs.org/optionator/-/optionator-0.9.3.tgz#007397d44ed1872fdc6ed31360190f81814e2c64"
+  integrity sha512-JjCoypp+jKn1ttEFExxhetCKeJt9zhAgAve5FXHixTvFDW/5aEktX9bufBKLRRMdU7bNtpLfcGu94B3cdEJgjg==
   dependencies:
+    "@aashutoshrathi/word-wrap" "^1.2.3"
     deep-is "^0.1.3"
     fast-levenshtein "^2.0.6"
     levn "^0.4.1"
     prelude-ls "^1.2.1"
     type-check "^0.4.0"
-    word-wrap "^1.2.3"
 
 optipng-bin@^7.0.0:
   version "7.0.1"
@@ -9516,16 +8979,17 @@ parent-module@^1.0.0:
   dependencies:
     path-platform "~0.11.15"
 
-"parse-asn1@^5.0.0", "parse-asn1@^5.1.6":
-  version "5.1.6"
-  resolved "https://registry.npmjs.org/parse-asn1/-/parse-asn1-5.1.6.tgz#385080a3ec13cb62a62d39409cb3e88844cdaed4"
-  integrity sha512-RnZRo1EPU6JBnra2vGHj0yhp6ebyjBZpmUCLHWiFhxlzvBCCpAuZ7elsBp1PVAbQN0/04VD/19rfzlBSwLstMw==
+"parse-asn1@^5.0.0", "parse-asn1@^5.1.7":
+  version "5.1.7"
+  resolved "https://registry.npmjs.org/parse-asn1/-/parse-asn1-5.1.7.tgz#73cdaaa822125f9647165625eb45f8a051d2df06"
+  integrity sha512-CTM5kuWR3sx9IFamcl5ErfPl6ea/N8IYwiJ+vpeB2g+1iknv7zBl5uPwbMbRVznRVbrNY6lGuDoE5b30grmbqg==
   dependencies:
-    asn1.js "^5.2.0"
-    browserify-aes "^1.0.0"
-    evp_bytestokey "^1.0.0"
-    pbkdf2 "^3.0.3"
-    safe-buffer "^5.1.1"
+    asn1.js "^4.10.1"
+    browserify-aes "^1.2.0"
+    evp_bytestokey "^1.0.3"
+    hash-base "~3.0"
+    pbkdf2 "^3.1.2"
+    safe-buffer "^5.2.1"
 
 "parse-json@^5.0.0", "parse-json@^5.2.0":
   version "5.2.0"
@@ -9591,13 +9055,13 @@ path-platform@~0.11.15:
   resolved "https://registry.npmjs.org/path-platform/-/path-platform-0.11.15.tgz#e864217f74c36850f0852b78dc7bf7d4a5721bf2"
   integrity sha512-Y30dB6rab1A/nfEKsZxmr01nUotHX0c/ZiIAsCTatEe1CmS5Pm5He7fZ195bPT7RdquoaL8lLxFCMQi/bS7IJg==
 
-path-scurry@^1.7.0:
-  version "1.9.2"
-  resolved "https://registry.npmjs.org/path-scurry/-/path-scurry-1.9.2.tgz#90f9d296ac5e37e608028e28a447b11d385b3f63"
-  integrity sha512-qSDLy2aGFPm8i4rsbHd4MNyTcrzHFsLQykrtbuGRknZZCBBVXSv2tSCDN2Cg6Rt/GFRw8GoW9y9Ecw5rIPG1sg==
+path-scurry@^1.10.2:
+  version "1.10.2"
+  resolved "https://registry.npmjs.org/path-scurry/-/path-scurry-1.10.2.tgz#8f6357eb1239d5fa1da8b9f70e9c080675458ba7"
+  integrity sha512-7xTavNy5RQXnsjANvVvMkEjvloOinkAjv/Z6Ildz9v2RinZ4SBKTWFOVRbaF8p0vpHnyjV/UwNDdKuUv6M5qcA==
   dependencies:
-    lru-cache "^9.1.1"
-    minipass "^5.0.0 || ^6.0.2"
+    lru-cache "^10.2.0"
+    minipass "^5.0.0 || ^6.0.2 || ^7.0.0"
 
 path-type@^4.0.0:
   version "4.0.0"
@@ -9616,7 +9080,7 @@ paths-js@^0.4.9:
   resolved "https://registry.npmjs.org/paths-js/-/paths-js-0.4.11.tgz#b2a9d5f94ee9949aa8fee945f78a12abff44599e"
   integrity sha512-3mqcLomDBXOo7Fo+UlaenG6f71bk1ZezPQy2JCmYHy2W2k5VKpP+Jbin9H0bjXynelTbglCqdFhSEkeIkKTYUA==
 
-pbkdf2@^3.0.3:
+"pbkdf2@^3.0.3", "pbkdf2@^3.1.2":
   version "3.1.2"
   resolved "https://registry.npmjs.org/pbkdf2/-/pbkdf2-3.1.2.tgz#dd822aa0887580e52f1a039dc3eda108efae3075"
   integrity sha512-iuh7L6jA7JEGu2WxDwtQP1ddOpaJNC4KlDEFfdQajSGgGPNi4OyDc2R7QnbY2bR9QjBVGwgvTdNJZoE7RaxUMA==
@@ -9647,7 +9111,7 @@ picocolors@^1.0.0:
   resolved "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz#cb5bdc74ff3f51892236eaf79d68bc44564ab81c"
   integrity sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==
 
-"picomatch@^2.0.4", "picomatch@^2.2.1", "picomatch@^2.2.3", "picomatch@^2.3.1":
+"picomatch@^2.0.4", "picomatch@^2.2.3", "picomatch@^2.3.1":
   version "2.3.1"
   resolved "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz#3ba3833733646d9d3e4995946c1365a67fb07a42"
   integrity sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==
@@ -9696,15 +9160,10 @@ pirates@^4.0.4:
   dependencies:
     find-up "^4.0.0"
 
-popper.js@1.16.1-lts:
-  version "1.16.1-lts"
-  resolved "https://registry.npmjs.org/popper.js/-/popper.js-1.16.1-lts.tgz#cf6847b807da3799d80ee3d6d2f90df8a3f50b05"
-  integrity sha512-Kjw8nKRl1m+VrSFCoVGPph93W/qrSO7ZkqPpTf7F4bk/sqcfWK019dWBUpE/fBOsOQY1dks/Bmcbfn1heM/IsA==
-
-popper.js@^1.16.1:
-  version "1.16.1"
-  resolved "https://registry.npmjs.org/popper.js/-/popper.js-1.16.1.tgz#2a223cb3dc7b6213d740e40372be40de43e65b1b"
-  integrity sha512-Wb4p1J4zyFTbM+u6WuO4XstYx4Ky9Cewe4DWrel7B0w6VVICvPwdOpotjzcf6eD8TsckVnIMNONQyPIUFOUbCQ==
+possible-typed-array-names@^1.0.0:
+  version "1.0.0"
+  resolved "https://registry.npmjs.org/possible-typed-array-names/-/possible-typed-array-names-1.0.0.tgz#89bb63c6fada2c3e90adc4a647beeeb39cc7bf8f"
+  integrity sha512-d7Uw+eZoloe0EHDIYoe+bQ5WXnGMOpmiZFTuMWCwpjzzkL2nTjcKiAk4hh8TjnGye2TwWOk3UXucZ+3rbmBa8Q==
 
 postcss-calc@^8.2.3:
   version "8.2.4"
@@ -9714,7 +9173,7 @@ postcss-calc@^8.2.3:
     postcss-selector-parser "^6.0.9"
     postcss-value-parser "^4.2.0"
 
-postcss-calc@^9.0.0:
+postcss-calc@^9.0.1:
   version "9.0.1"
   resolved "https://registry.npmjs.org/postcss-calc/-/postcss-calc-9.0.1.tgz#a744fd592438a93d6de0f1434c572670361eb6c6"
   integrity sha512-TipgjGyzP5QzEhsOZUaIkeO5mKeMFpebWzRogWG/ysonUlnHcq5aJe0jOjpfzUU8PeSaBQnrE8ehR0QA5vs8PQ==
@@ -9732,14 +9191,14 @@ postcss-colormin@^5.3.1:
     colord "^2.9.1"
     postcss-value-parser "^4.2.0"
 
-postcss-colormin@^6.0.0:
-  version "6.0.0"
-  resolved "https://registry.npmjs.org/postcss-colormin/-/postcss-colormin-6.0.0.tgz#d4250652e952e1c0aca70c66942da93d3cdeaafe"
-  integrity sha512-EuO+bAUmutWoZYgHn2T1dG1pPqHU6L4TjzPlu4t1wZGXQ/fxV16xg2EJmYi0z+6r+MGV1yvpx1BHkUaRrPa2bw==
+postcss-colormin@^6.1.0:
+  version "6.1.0"
+  resolved "https://registry.npmjs.org/postcss-colormin/-/postcss-colormin-6.1.0.tgz#076e8d3fb291fbff7b10e6b063be9da42ff6488d"
+  integrity sha512-x9yX7DOxeMAR+BgGVnNSAxmAj98NX/YxEMNFP+SDCEeNLb2r3i6Hh1ksMsnW8Ub5SLCpbescQqn9YEbE9554Sw==
   dependencies:
-    browserslist "^4.21.4"
+    browserslist "^4.23.0"
     caniuse-api "^3.0.0"
-    colord "^2.9.1"
+    colord "^2.9.3"
     postcss-value-parser "^4.2.0"
 
 postcss-convert-values@^5.1.3:
@@ -9750,12 +9209,12 @@ postcss-convert-values@^5.1.3:
     browserslist "^4.21.4"
     postcss-value-parser "^4.2.0"
 
-postcss-convert-values@^6.0.0:
-  version "6.0.0"
-  resolved "https://registry.npmjs.org/postcss-convert-values/-/postcss-convert-values-6.0.0.tgz#ec94a954957e5c3f78f0e8f65dfcda95280b8996"
-  integrity sha512-U5D8QhVwqT++ecmy8rnTb+RL9n/B806UVaS3m60lqle4YDFcpbS3ae5bTQIh3wOGUSDHSEtMYLs/38dNG7EYFw==
+postcss-convert-values@^6.1.0:
+  version "6.1.0"
+  resolved "https://registry.npmjs.org/postcss-convert-values/-/postcss-convert-values-6.1.0.tgz#3498387f8efedb817cbc63901d45bd1ceaa40f48"
+  integrity sha512-zx8IwP/ts9WvUM6NkVSkiU902QZL1bwPhaVaLynPtCsOTqp+ZKbNi+s6XJg3rfqpKGA/oc7Oxk5t8pOQJcwl/w==
   dependencies:
-    browserslist "^4.21.4"
+    browserslist "^4.23.0"
     postcss-value-parser "^4.2.0"
 
 postcss-discard-comments@^5.1.2:
@@ -9763,49 +9222,49 @@ postcss-discard-comments@^5.1.2:
   resolved "https://registry.npmjs.org/postcss-discard-comments/-/postcss-discard-comments-5.1.2.tgz#8df5e81d2925af2780075840c1526f0660e53696"
   integrity sha512-+L8208OVbHVF2UQf1iDmRcbdjJkuBF6IS29yBDSiWUIzpYaAhtNl6JYnYm12FnkeCwQqF5LeklOu6rAqgfBZqQ==
 
-postcss-discard-comments@^6.0.0:
-  version "6.0.0"
-  resolved "https://registry.npmjs.org/postcss-discard-comments/-/postcss-discard-comments-6.0.0.tgz#9ca335e8b68919f301b24ba47dde226a42e535fe"
-  integrity sha512-p2skSGqzPMZkEQvJsgnkBhCn8gI7NzRH2683EEjrIkoMiwRELx68yoUJ3q3DGSGuQ8Ug9Gsn+OuDr46yfO+eFw==
+postcss-discard-comments@^6.0.2:
+  version "6.0.2"
+  resolved "https://registry.npmjs.org/postcss-discard-comments/-/postcss-discard-comments-6.0.2.tgz#e768dcfdc33e0216380623652b0a4f69f4678b6c"
+  integrity sha512-65w/uIqhSBBfQmYnG92FO1mWZjJ4GL5b8atm5Yw2UgrwD7HiNiSSNwJor1eCFGzUgYnN/iIknhNRVqjrrpuglw==
 
 postcss-discard-duplicates@^5.1.0:
   version "5.1.0"
   resolved "https://registry.npmjs.org/postcss-discard-duplicates/-/postcss-discard-duplicates-5.1.0.tgz#9eb4fe8456706a4eebd6d3b7b777d07bad03e848"
   integrity sha512-zmX3IoSI2aoenxHV6C7plngHWWhUOV3sP1T8y2ifzxzbtnuhk1EdPwm0S1bIUNaJ2eNbWeGLEwzw8huPD67aQw==
 
-postcss-discard-duplicates@^6.0.0:
-  version "6.0.0"
-  resolved "https://registry.npmjs.org/postcss-discard-duplicates/-/postcss-discard-duplicates-6.0.0.tgz#c26177a6c33070922e67e9a92c0fd23d443d1355"
-  integrity sha512-bU1SXIizMLtDW4oSsi5C/xHKbhLlhek/0/yCnoMQany9k3nPBq+Ctsv/9oMmyqbR96HYHxZcHyK2HR5P/mqoGA==
+postcss-discard-duplicates@^6.0.3:
+  version "6.0.3"
+  resolved "https://registry.npmjs.org/postcss-discard-duplicates/-/postcss-discard-duplicates-6.0.3.tgz#d121e893c38dc58a67277f75bb58ba43fce4c3eb"
+  integrity sha512-+JA0DCvc5XvFAxwx6f/e68gQu/7Z9ud584VLmcgto28eB8FqSFZwtrLwB5Kcp70eIoWP/HXqz4wpo8rD8gpsTw==
 
 postcss-discard-empty@^5.1.1:
   version "5.1.1"
   resolved "https://registry.npmjs.org/postcss-discard-empty/-/postcss-discard-empty-5.1.1.tgz#e57762343ff7f503fe53fca553d18d7f0c369c6c"
   integrity sha512-zPz4WljiSuLWsI0ir4Mcnr4qQQ5e1Ukc3i7UfE2XcrwKK2LIPIqE5jxMRxO6GbI3cv//ztXDsXwEWT3BHOGh3A==
 
-postcss-discard-empty@^6.0.0:
-  version "6.0.0"
-  resolved "https://registry.npmjs.org/postcss-discard-empty/-/postcss-discard-empty-6.0.0.tgz#06c1c4fce09e22d2a99e667c8550eb8a3a1b9aee"
-  integrity sha512-b+h1S1VT6dNhpcg+LpyiUrdnEZfICF0my7HAKgJixJLW7BnNmpRH34+uw/etf5AhOlIhIAuXApSzzDzMI9K/gQ==
+postcss-discard-empty@^6.0.3:
+  version "6.0.3"
+  resolved "https://registry.npmjs.org/postcss-discard-empty/-/postcss-discard-empty-6.0.3.tgz#ee39c327219bb70473a066f772621f81435a79d9"
+  integrity sha512-znyno9cHKQsK6PtxL5D19Fj9uwSzC2mB74cpT66fhgOadEUPyXFkbgwm5tvc3bt3NAy8ltE5MrghxovZRVnOjQ==
 
 postcss-discard-overridden@^5.1.0:
   version "5.1.0"
   resolved "https://registry.npmjs.org/postcss-discard-overridden/-/postcss-discard-overridden-5.1.0.tgz#7e8c5b53325747e9d90131bb88635282fb4a276e"
   integrity sha512-21nOL7RqWR1kasIVdKs8HNqQJhFxLsyRfAnUDm4Fe4t4mCWL9OJiHvlHPjcd8zc5Myu89b/7wZDnOSjFgeWRtw==
 
-postcss-discard-overridden@^6.0.0:
-  version "6.0.0"
-  resolved "https://registry.npmjs.org/postcss-discard-overridden/-/postcss-discard-overridden-6.0.0.tgz#49c5262db14e975e349692d9024442de7cd8e234"
-  integrity sha512-4VELwssYXDFigPYAZ8vL4yX4mUepF/oCBeeIT4OXsJPYOtvJumyz9WflmJWTfDwCUcpDR+z0zvCWBXgTx35SVw==
+postcss-discard-overridden@^6.0.2:
+  version "6.0.2"
+  resolved "https://registry.npmjs.org/postcss-discard-overridden/-/postcss-discard-overridden-6.0.2.tgz#4e9f9c62ecd2df46e8fdb44dc17e189776572e2d"
+  integrity sha512-j87xzI4LUggC5zND7KdjsI25APtyMuynXZSujByMaav2roV6OZX+8AaCUcZSWqckZpjAjRyFDdpqybgjFO0HJQ==
 
 postcss-loader@^7.1.0:
-  version "7.3.3"
-  resolved "https://registry.npmjs.org/postcss-loader/-/postcss-loader-7.3.3.tgz#6da03e71a918ef49df1bb4be4c80401df8e249dd"
-  integrity sha512-YgO/yhtevGO/vJePCQmTxiaEwER94LABZN0ZMT4A0vsak9TpO+RvKRs7EmJ8peIlB9xfXCsS7M8LjqncsUZ5HA==
+  version "7.3.4"
+  resolved "https://registry.npmjs.org/postcss-loader/-/postcss-loader-7.3.4.tgz#aed9b79ce4ed7e9e89e56199d25ad1ec8f606209"
+  integrity sha512-iW5WTTBSC5BfsBJ9daFMPVrLT36MrNiC6fqOZTTaHjBNX6Pfd5p+hSBqe/fEeNd7pc13QiAyGt7VdGMw4eRC4A==
   dependencies:
-    cosmiconfig "^8.2.0"
-    jiti "^1.18.2"
-    semver "^7.3.8"
+    cosmiconfig "^8.3.5"
+    jiti "^1.20.0"
+    semver "^7.5.4"
 
 postcss-merge-longhand@^5.1.7:
   version "5.1.7"
@@ -9815,13 +9274,13 @@ postcss-merge-longhand@^5.1.7:
     postcss-value-parser "^4.2.0"
     stylehacks "^5.1.1"
 
-postcss-merge-longhand@^6.0.0:
-  version "6.0.0"
-  resolved "https://registry.npmjs.org/postcss-merge-longhand/-/postcss-merge-longhand-6.0.0.tgz#6f627b27db939bce316eaa97e22400267e798d69"
-  integrity sha512-4VSfd1lvGkLTLYcxFuISDtWUfFS4zXe0FpF149AyziftPFQIWxjvFSKhA4MIxMe4XM3yTDgQMbSNgzIVxChbIg==
+postcss-merge-longhand@^6.0.5:
+  version "6.0.5"
+  resolved "https://registry.npmjs.org/postcss-merge-longhand/-/postcss-merge-longhand-6.0.5.tgz#ba8a8d473617c34a36abbea8dda2b215750a065a"
+  integrity sha512-5LOiordeTfi64QhICp07nzzuTDjNSO8g5Ksdibt44d+uvIIAE1oZdRn8y/W5ZtYgRH/lnLDlvi9F8btZcVzu3w==
   dependencies:
     postcss-value-parser "^4.2.0"
-    stylehacks "^6.0.0"
+    stylehacks "^6.1.1"
 
 postcss-merge-rules@^5.1.4:
   version "5.1.4"
@@ -9833,15 +9292,15 @@ postcss-merge-rules@^5.1.4:
     cssnano-utils "^3.1.0"
     postcss-selector-parser "^6.0.5"
 
-postcss-merge-rules@^6.0.1:
-  version "6.0.1"
-  resolved "https://registry.npmjs.org/postcss-merge-rules/-/postcss-merge-rules-6.0.1.tgz#39f165746404e646c0f5c510222ccde4824a86aa"
-  integrity sha512-a4tlmJIQo9SCjcfiCcCMg/ZCEe0XTkl/xK0XHBs955GWg9xDX3NwP9pwZ78QUOWB8/0XCjZeJn98Dae0zg6AAw==
+postcss-merge-rules@^6.1.1:
+  version "6.1.1"
+  resolved "https://registry.npmjs.org/postcss-merge-rules/-/postcss-merge-rules-6.1.1.tgz#7aa539dceddab56019469c0edd7d22b64c3dea9d"
+  integrity sha512-KOdWF0gju31AQPZiD+2Ar9Qjowz1LTChSjFFbS+e2sFgc4uHOp3ZvVX4sNeTlk0w2O31ecFGgrFzhO0RSWbWwQ==
   dependencies:
-    browserslist "^4.21.4"
+    browserslist "^4.23.0"
     caniuse-api "^3.0.0"
-    cssnano-utils "^4.0.0"
-    postcss-selector-parser "^6.0.5"
+    cssnano-utils "^4.0.2"
+    postcss-selector-parser "^6.0.16"
 
 postcss-minify-font-values@^5.1.0:
   version "5.1.0"
@@ -9850,10 +9309,10 @@ postcss-minify-font-values@^5.1.0:
   dependencies:
     postcss-value-parser "^4.2.0"
 
-postcss-minify-font-values@^6.0.0:
-  version "6.0.0"
-  resolved "https://registry.npmjs.org/postcss-minify-font-values/-/postcss-minify-font-values-6.0.0.tgz#68d4a028f9fa5f61701974724b2cc9445d8e6070"
-  integrity sha512-zNRAVtyh5E8ndZEYXA4WS8ZYsAp798HiIQ1V2UF/C/munLp2r1UGHwf1+6JFu7hdEhJFN+W1WJQKBrtjhFgEnA==
+postcss-minify-font-values@^6.1.0:
+  version "6.1.0"
+  resolved "https://registry.npmjs.org/postcss-minify-font-values/-/postcss-minify-font-values-6.1.0.tgz#a0e574c02ee3f299be2846369211f3b957ea4c59"
+  integrity sha512-gklfI/n+9rTh8nYaSJXlCo3nOKqMNkxuGpTn/Qm0gstL3ywTr9/WRKznE+oy6fvfolH6dF+QM4nCo8yPLdvGJg==
   dependencies:
     postcss-value-parser "^4.2.0"
 
@@ -9866,13 +9325,13 @@ postcss-minify-gradients@^5.1.1:
     cssnano-utils "^3.1.0"
     postcss-value-parser "^4.2.0"
 
-postcss-minify-gradients@^6.0.0:
-  version "6.0.0"
-  resolved "https://registry.npmjs.org/postcss-minify-gradients/-/postcss-minify-gradients-6.0.0.tgz#22b5c88cc63091dadbad34e31ff958404d51d679"
-  integrity sha512-wO0F6YfVAR+K1xVxF53ueZJza3L+R3E6cp0VwuXJQejnNUH0DjcAFe3JEBeTY1dLwGa0NlDWueCA1VlEfiKgAA==
+postcss-minify-gradients@^6.0.3:
+  version "6.0.3"
+  resolved "https://registry.npmjs.org/postcss-minify-gradients/-/postcss-minify-gradients-6.0.3.tgz#ca3eb55a7bdb48a1e187a55c6377be918743dbd6"
+  integrity sha512-4KXAHrYlzF0Rr7uc4VrfwDJ2ajrtNEpNEuLxFgwkhFZ56/7gaE4Nr49nLsQDZyUe+ds+kEhf+YAUolJiYXF8+Q==
   dependencies:
-    colord "^2.9.1"
-    cssnano-utils "^4.0.0"
+    colord "^2.9.3"
+    cssnano-utils "^4.0.2"
     postcss-value-parser "^4.2.0"
 
 postcss-minify-params@^5.1.4:
@@ -9884,13 +9343,13 @@ postcss-minify-params@^5.1.4:
     cssnano-utils "^3.1.0"
     postcss-value-parser "^4.2.0"
 
-postcss-minify-params@^6.0.0:
-  version "6.0.0"
-  resolved "https://registry.npmjs.org/postcss-minify-params/-/postcss-minify-params-6.0.0.tgz#2b3a85a9e3b990d7a16866f430f5fd1d5961b539"
-  integrity sha512-Fz/wMQDveiS0n5JPcvsMeyNXOIMrwF88n7196puSuQSWSa+/Ofc1gDOSY2xi8+A4PqB5dlYCKk/WfqKqsI+ReQ==
+postcss-minify-params@^6.1.0:
+  version "6.1.0"
+  resolved "https://registry.npmjs.org/postcss-minify-params/-/postcss-minify-params-6.1.0.tgz#54551dec77b9a45a29c3cb5953bf7325a399ba08"
+  integrity sha512-bmSKnDtyyE8ujHQK0RQJDIKhQ20Jq1LYiez54WiaOoBtcSuflfK3Nm596LvbtlFcpipMjgClQGyGr7GAs+H1uA==
   dependencies:
-    browserslist "^4.21.4"
-    cssnano-utils "^4.0.0"
+    browserslist "^4.23.0"
+    cssnano-utils "^4.0.2"
     postcss-value-parser "^4.2.0"
 
 postcss-minify-selectors@^5.2.1:
@@ -9900,31 +9359,31 @@ postcss-minify-selectors@^5.2.1:
   dependencies:
     postcss-selector-parser "^6.0.5"
 
-postcss-minify-selectors@^6.0.0:
-  version "6.0.0"
-  resolved "https://registry.npmjs.org/postcss-minify-selectors/-/postcss-minify-selectors-6.0.0.tgz#5046c5e8680a586e5a0cad52cc9aa36d6be5bda2"
-  integrity sha512-ec/q9JNCOC2CRDNnypipGfOhbYPuUkewGwLnbv6omue/PSASbHSU7s6uSQ0tcFRVv731oMIx8k0SP4ZX6be/0g==
+postcss-minify-selectors@^6.0.4:
+  version "6.0.4"
+  resolved "https://registry.npmjs.org/postcss-minify-selectors/-/postcss-minify-selectors-6.0.4.tgz#197f7d72e6dd19eed47916d575d69dc38b396aff"
+  integrity sha512-L8dZSwNLgK7pjTto9PzWRoMbnLq5vsZSTu8+j1P/2GB8qdtGQfn+K1uSvFgYvgh83cbyxT5m43ZZhUMTJDSClQ==
   dependencies:
-    postcss-selector-parser "^6.0.5"
+    postcss-selector-parser "^6.0.16"
 
-postcss-modules-extract-imports@^3.0.0:
-  version "3.0.0"
-  resolved "https://registry.npmjs.org/postcss-modules-extract-imports/-/postcss-modules-extract-imports-3.0.0.tgz#cda1f047c0ae80c97dbe28c3e76a43b88025741d"
-  integrity sha512-bdHleFnP3kZ4NYDhuGlVK+CMrQ/pqUm8bx/oGL93K6gVwiclvX5x0n76fYMKuIGKzlABOy13zsvqjb0f92TEXw==
+postcss-modules-extract-imports@^3.1.0:
+  version "3.1.0"
+  resolved "https://registry.npmjs.org/postcss-modules-extract-imports/-/postcss-modules-extract-imports-3.1.0.tgz#b4497cb85a9c0c4b5aabeb759bb25e8d89f15002"
+  integrity sha512-k3kNe0aNFQDAZGbin48pL2VNidTF0w4/eASDsxlyspobzU3wZQLOGj7L9gfRe0Jo9/4uud09DsjFNH7winGv8Q==
 
-postcss-modules-local-by-default@^4.0.3:
-  version "4.0.3"
-  resolved "https://registry.npmjs.org/postcss-modules-local-by-default/-/postcss-modules-local-by-default-4.0.3.tgz#b08eb4f083050708998ba2c6061b50c2870ca524"
-  integrity sha512-2/u2zraspoACtrbFRnTijMiQtb4GW4BvatjaG/bCjYQo8kLTdevCUlwuBHx2sCnSyrI3x3qj4ZK1j5LQBgzmwA==
+postcss-modules-local-by-default@^4.0.5:
+  version "4.0.5"
+  resolved "https://registry.npmjs.org/postcss-modules-local-by-default/-/postcss-modules-local-by-default-4.0.5.tgz#f1b9bd757a8edf4d8556e8d0f4f894260e3df78f"
+  integrity sha512-6MieY7sIfTK0hYfafw1OMEG+2bg8Q1ocHCpoWLqOKj3JXlKu4G7btkmM/B7lFubYkYWmRSPLZi5chid63ZaZYw==
   dependencies:
     icss-utils "^5.0.0"
     postcss-selector-parser "^6.0.2"
     postcss-value-parser "^4.1.0"
 
-postcss-modules-scope@^3.0.0:
-  version "3.0.0"
-  resolved "https://registry.npmjs.org/postcss-modules-scope/-/postcss-modules-scope-3.0.0.tgz#9ef3151456d3bbfa120ca44898dfca6f2fa01f06"
-  integrity sha512-hncihwFA2yPath8oZ15PZqvWGkWf+XUfQgUGamS4LqoP1anQLOsOJw0vr7J7IwLpoY9fatA2qiGUGmuZL0Iqlg==
+postcss-modules-scope@^3.2.0:
+  version "3.2.0"
+  resolved "https://registry.npmjs.org/postcss-modules-scope/-/postcss-modules-scope-3.2.0.tgz#a43d28289a169ce2c15c00c4e64c0858e43457d5"
+  integrity sha512-oq+g1ssrsZOsx9M96c5w8laRmvEu9C3adDSjI8oTcbfkrTE8hx/zfyobUoWIxaKPO8bt6S62kxpw5GqypEw1QQ==
   dependencies:
     postcss-selector-parser "^6.0.4"
 
@@ -9940,10 +9399,10 @@ postcss-normalize-charset@^5.1.0:
   resolved "https://registry.npmjs.org/postcss-normalize-charset/-/postcss-normalize-charset-5.1.0.tgz#9302de0b29094b52c259e9b2cf8dc0879879f0ed"
   integrity sha512-mSgUJ+pd/ldRGVx26p2wz9dNZ7ji6Pn8VWBajMXFf8jk7vUoSrZ2lt/wZR7DtlZYKesmZI680qjr2CeFF2fbUg==
 
-postcss-normalize-charset@^6.0.0:
-  version "6.0.0"
-  resolved "https://registry.npmjs.org/postcss-normalize-charset/-/postcss-normalize-charset-6.0.0.tgz#36cc12457259064969fb96f84df491652a4b0975"
-  integrity sha512-cqundwChbu8yO/gSWkuFDmKrCZ2vJzDAocheT2JTd0sFNA4HMGoKMfbk2B+J0OmO0t5GUkiAkSM5yF2rSLUjgQ==
+postcss-normalize-charset@^6.0.2:
+  version "6.0.2"
+  resolved "https://registry.npmjs.org/postcss-normalize-charset/-/postcss-normalize-charset-6.0.2.tgz#1ec25c435057a8001dac942942a95ffe66f721e1"
+  integrity sha512-a8N9czmdnrjPHa3DeFlwqst5eaL5W8jYu3EBbTTkI5FHkfMhFZh1EGbku6jhHhIzTA6tquI2P42NtZ59M/H/kQ==
 
 postcss-normalize-display-values@^5.1.0:
   version "5.1.0"
@@ -9952,10 +9411,10 @@ postcss-normalize-display-values@^5.1.0:
   dependencies:
     postcss-value-parser "^4.2.0"
 
-postcss-normalize-display-values@^6.0.0:
-  version "6.0.0"
-  resolved "https://registry.npmjs.org/postcss-normalize-display-values/-/postcss-normalize-display-values-6.0.0.tgz#8d2961415078644d8c6bbbdaf9a2fdd60f546cd4"
-  integrity sha512-Qyt5kMrvy7dJRO3OjF7zkotGfuYALETZE+4lk66sziWSPzlBEt7FrUshV6VLECkI4EN8Z863O6Nci4NXQGNzYw==
+postcss-normalize-display-values@^6.0.2:
+  version "6.0.2"
+  resolved "https://registry.npmjs.org/postcss-normalize-display-values/-/postcss-normalize-display-values-6.0.2.tgz#54f02764fed0b288d5363cbb140d6950dbbdd535"
+  integrity sha512-8H04Mxsb82ON/aAkPeq8kcBbAtI5Q2a64X/mnRRfPXBq7XeogoQvReqxEfc0B4WPq1KimjezNC8flUtC3Qz6jg==
   dependencies:
     postcss-value-parser "^4.2.0"
 
@@ -9966,10 +9425,10 @@ postcss-normalize-positions@^5.1.1:
   dependencies:
     postcss-value-parser "^4.2.0"
 
-postcss-normalize-positions@^6.0.0:
-  version "6.0.0"
-  resolved "https://registry.npmjs.org/postcss-normalize-positions/-/postcss-normalize-positions-6.0.0.tgz#25b96df99a69f8925f730eaee0be74416865e301"
-  integrity sha512-mPCzhSV8+30FZyWhxi6UoVRYd3ZBJgTRly4hOkaSifo0H+pjDYcii/aVT4YE6QpOil15a5uiv6ftnY3rm0igPg==
+postcss-normalize-positions@^6.0.2:
+  version "6.0.2"
+  resolved "https://registry.npmjs.org/postcss-normalize-positions/-/postcss-normalize-positions-6.0.2.tgz#e982d284ec878b9b819796266f640852dbbb723a"
+  integrity sha512-/JFzI441OAB9O7VnLA+RtSNZvQ0NCFZDOtp6QPFo1iIyawyXg0YI3CYM9HBy1WvwCRHnPep/BvI1+dGPKoXx/Q==
   dependencies:
     postcss-value-parser "^4.2.0"
 
@@ -9980,10 +9439,10 @@ postcss-normalize-repeat-style@^5.1.1:
   dependencies:
     postcss-value-parser "^4.2.0"
 
-postcss-normalize-repeat-style@^6.0.0:
-  version "6.0.0"
-  resolved "https://registry.npmjs.org/postcss-normalize-repeat-style/-/postcss-normalize-repeat-style-6.0.0.tgz#ddf30ad8762feb5b1eb97f39f251acd7b8353299"
-  integrity sha512-50W5JWEBiOOAez2AKBh4kRFm2uhrT3O1Uwdxz7k24aKtbD83vqmcVG7zoIwo6xI2FZ/HDlbrCopXhLeTpQib1A==
+postcss-normalize-repeat-style@^6.0.2:
+  version "6.0.2"
+  resolved "https://registry.npmjs.org/postcss-normalize-repeat-style/-/postcss-normalize-repeat-style-6.0.2.tgz#f8006942fd0617c73f049dd8b6201c3a3040ecf3"
+  integrity sha512-YdCgsfHkJ2jEXwR4RR3Tm/iOxSfdRt7jplS6XRh9Js9PyCR/aka/FCb6TuHT2U8gQubbm/mPmF6L7FY9d79VwQ==
   dependencies:
     postcss-value-parser "^4.2.0"
 
@@ -9994,10 +9453,10 @@ postcss-normalize-string@^5.1.0:
   dependencies:
     postcss-value-parser "^4.2.0"
 
-postcss-normalize-string@^6.0.0:
-  version "6.0.0"
-  resolved "https://registry.npmjs.org/postcss-normalize-string/-/postcss-normalize-string-6.0.0.tgz#948282647a51e409d69dde7910f0ac2ff97cb5d8"
-  integrity sha512-KWkIB7TrPOiqb8ZZz6homet2KWKJwIlysF5ICPZrXAylGe2hzX/HSf4NTX2rRPJMAtlRsj/yfkrWGavFuB+c0w==
+postcss-normalize-string@^6.0.2:
+  version "6.0.2"
+  resolved "https://registry.npmjs.org/postcss-normalize-string/-/postcss-normalize-string-6.0.2.tgz#e3cc6ad5c95581acd1fc8774b309dd7c06e5e363"
+  integrity sha512-vQZIivlxlfqqMp4L9PZsFE4YUkWniziKjQWUtsxUiVsSSPelQydwS8Wwcuw0+83ZjPWNTl02oxlIvXsmmG+CiQ==
   dependencies:
     postcss-value-parser "^4.2.0"
 
@@ -10008,10 +9467,10 @@ postcss-normalize-timing-functions@^5.1.0:
   dependencies:
     postcss-value-parser "^4.2.0"
 
-postcss-normalize-timing-functions@^6.0.0:
-  version "6.0.0"
-  resolved "https://registry.npmjs.org/postcss-normalize-timing-functions/-/postcss-normalize-timing-functions-6.0.0.tgz#5f13e650b8c43351989fc5de694525cc2539841c"
-  integrity sha512-tpIXWciXBp5CiFs8sem90IWlw76FV4oi6QEWfQwyeREVwUy39VSeSqjAT7X0Qw650yAimYW5gkl2Gd871N5SQg==
+postcss-normalize-timing-functions@^6.0.2:
+  version "6.0.2"
+  resolved "https://registry.npmjs.org/postcss-normalize-timing-functions/-/postcss-normalize-timing-functions-6.0.2.tgz#40cb8726cef999de984527cbd9d1db1f3e9062c0"
+  integrity sha512-a+YrtMox4TBtId/AEwbA03VcJgtyW4dGBizPl7e88cTFULYsprgHWTbfyjSLyHeBcK/Q9JhXkt2ZXiwaVHoMzA==
   dependencies:
     postcss-value-parser "^4.2.0"
 
@@ -10023,12 +9482,12 @@ postcss-normalize-unicode@^5.1.1:
     browserslist "^4.21.4"
     postcss-value-parser "^4.2.0"
 
-postcss-normalize-unicode@^6.0.0:
-  version "6.0.0"
-  resolved "https://registry.npmjs.org/postcss-normalize-unicode/-/postcss-normalize-unicode-6.0.0.tgz#741b3310f874616bdcf07764f5503695d3604730"
-  integrity sha512-ui5crYkb5ubEUDugDc786L/Me+DXp2dLg3fVJbqyAl0VPkAeALyAijF2zOsnZyaS1HyfPuMH0DwyY18VMFVNkg==
+postcss-normalize-unicode@^6.1.0:
+  version "6.1.0"
+  resolved "https://registry.npmjs.org/postcss-normalize-unicode/-/postcss-normalize-unicode-6.1.0.tgz#aaf8bbd34c306e230777e80f7f12a4b7d27ce06e"
+  integrity sha512-QVC5TQHsVj33otj8/JD869Ndr5Xcc/+fwRh4HAsFsAeygQQXm+0PySrKbr/8tkDKzW+EVT3QkqZMfFrGiossDg==
   dependencies:
-    browserslist "^4.21.4"
+    browserslist "^4.23.0"
     postcss-value-parser "^4.2.0"
 
 postcss-normalize-url@^5.1.0:
@@ -10039,10 +9498,10 @@ postcss-normalize-url@^5.1.0:
     normalize-url "^6.0.1"
     postcss-value-parser "^4.2.0"
 
-postcss-normalize-url@^6.0.0:
-  version "6.0.0"
-  resolved "https://registry.npmjs.org/postcss-normalize-url/-/postcss-normalize-url-6.0.0.tgz#d0a31e962a16401fb7deb7754b397a323fb650b4"
-  integrity sha512-98mvh2QzIPbb02YDIrYvAg4OUzGH7s1ZgHlD3fIdTHLgPLRpv1ZTKJDnSAKr4Rt21ZQFzwhGMXxpXlfrUBKFHw==
+postcss-normalize-url@^6.0.2:
+  version "6.0.2"
+  resolved "https://registry.npmjs.org/postcss-normalize-url/-/postcss-normalize-url-6.0.2.tgz#292792386be51a8de9a454cb7b5c58ae22db0f79"
+  integrity sha512-kVNcWhCeKAzZ8B4pv/DnrU1wNh458zBNp8dh4y5hhxih5RZQ12QWMuQrDgPRw3LRl8mN9vOVfHl7uhvHYMoXsQ==
   dependencies:
     postcss-value-parser "^4.2.0"
 
@@ -10053,10 +9512,10 @@ postcss-normalize-whitespace@^5.1.1:
   dependencies:
     postcss-value-parser "^4.2.0"
 
-postcss-normalize-whitespace@^6.0.0:
-  version "6.0.0"
-  resolved "https://registry.npmjs.org/postcss-normalize-whitespace/-/postcss-normalize-whitespace-6.0.0.tgz#accb961caa42e25ca4179b60855b79b1f7129d4d"
-  integrity sha512-7cfE1AyLiK0+ZBG6FmLziJzqQCpTQY+8XjMhMAz8WSBSCsCNNUKujgIgjCAmDT3cJ+3zjTXFkoD15ZPsckArVw==
+postcss-normalize-whitespace@^6.0.2:
+  version "6.0.2"
+  resolved "https://registry.npmjs.org/postcss-normalize-whitespace/-/postcss-normalize-whitespace-6.0.2.tgz#fbb009e6ebd312f8b2efb225c2fcc7cf32b400cd"
+  integrity sha512-sXZ2Nj1icbJOKmdjXVT9pnyHQKiSAyuNQHSgRCUgThn2388Y9cGVDR+E9J9iAYbSbLHI+UUwLVl1Wzco/zgv0Q==
   dependencies:
     postcss-value-parser "^4.2.0"
 
@@ -10068,12 +9527,12 @@ postcss-ordered-values@^5.1.3:
     cssnano-utils "^3.1.0"
     postcss-value-parser "^4.2.0"
 
-postcss-ordered-values@^6.0.0:
-  version "6.0.0"
-  resolved "https://registry.npmjs.org/postcss-ordered-values/-/postcss-ordered-values-6.0.0.tgz#374704cdff25560d44061d17ba3c6308837a3218"
-  integrity sha512-K36XzUDpvfG/nWkjs6d1hRBydeIxGpKS2+n+ywlKPzx1nMYDYpoGbcjhj5AwVYJK1qV2/SDoDEnHzlPD6s3nMg==
+postcss-ordered-values@^6.0.2:
+  version "6.0.2"
+  resolved "https://registry.npmjs.org/postcss-ordered-values/-/postcss-ordered-values-6.0.2.tgz#366bb663919707093451ab70c3f99c05672aaae5"
+  integrity sha512-VRZSOB+JU32RsEAQrO94QPkClGPKJEL/Z9PCBImXMhIeK5KAYo6slP/hBYlLgrCjFxyqvn5VC81tycFEDBLG1Q==
   dependencies:
-    cssnano-utils "^4.0.0"
+    cssnano-utils "^4.0.2"
     postcss-value-parser "^4.2.0"
 
 postcss-reduce-initial@^5.1.2:
@@ -10084,12 +9543,12 @@ postcss-reduce-initial@^5.1.2:
     browserslist "^4.21.4"
     caniuse-api "^3.0.0"
 
-postcss-reduce-initial@^6.0.0:
-  version "6.0.0"
-  resolved "https://registry.npmjs.org/postcss-reduce-initial/-/postcss-reduce-initial-6.0.0.tgz#7d16e83e60e27e2fa42f56ec0b426f1da332eca7"
-  integrity sha512-s2UOnidpVuXu6JiiI5U+fV2jamAw5YNA9Fdi/GRK0zLDLCfXmSGqQtzpUPtfN66RtCbb9fFHoyZdQaxOB3WxVA==
+postcss-reduce-initial@^6.1.0:
+  version "6.1.0"
+  resolved "https://registry.npmjs.org/postcss-reduce-initial/-/postcss-reduce-initial-6.1.0.tgz#4401297d8e35cb6e92c8e9586963e267105586ba"
+  integrity sha512-RarLgBK/CrL1qZags04oKbVbrrVK2wcxhvta3GCxrZO4zveibqbRPmm2VI8sSgCXwoUHEliRSbOfpR0b/VIoiw==
   dependencies:
-    browserslist "^4.21.4"
+    browserslist "^4.23.0"
     caniuse-api "^3.0.0"
 
 postcss-reduce-transforms@^5.1.0:
@@ -10099,17 +9558,17 @@ postcss-reduce-transforms@^5.1.0:
   dependencies:
     postcss-value-parser "^4.2.0"
 
-postcss-reduce-transforms@^6.0.0:
-  version "6.0.0"
-  resolved "https://registry.npmjs.org/postcss-reduce-transforms/-/postcss-reduce-transforms-6.0.0.tgz#28ff2601a6d9b96a2f039b3501526e1f4d584a46"
-  integrity sha512-FQ9f6xM1homnuy1wLe9lP1wujzxnwt1EwiigtWwuyf8FsqqXUDUp2Ulxf9A5yjlUOTdCJO6lonYjg1mgqIIi2w==
+postcss-reduce-transforms@^6.0.2:
+  version "6.0.2"
+  resolved "https://registry.npmjs.org/postcss-reduce-transforms/-/postcss-reduce-transforms-6.0.2.tgz#6fa2c586bdc091a7373caeee4be75a0f3e12965d"
+  integrity sha512-sB+Ya++3Xj1WaT9+5LOOdirAxP7dJZms3GRcYheSPi1PiTMigsxHAdkrbItHxwYHr4kt1zL7mmcHstgMYT+aiA==
   dependencies:
     postcss-value-parser "^4.2.0"
 
-"postcss-selector-parser@^6.0.11", "postcss-selector-parser@^6.0.2", "postcss-selector-parser@^6.0.4", "postcss-selector-parser@^6.0.5", "postcss-selector-parser@^6.0.9":
-  version "6.0.13"
-  resolved "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.0.13.tgz#d05d8d76b1e8e173257ef9d60b706a8e5e99bf1b"
-  integrity sha512-EaV1Gl4mUEV4ddhDnv/xtj7sxwrwxdetHdWUGnT4VJQf+4d05v6lHYZr8N573k5Z0BViss7BDhfWtKS3+sfAqQ==
+"postcss-selector-parser@^6.0.11", "postcss-selector-parser@^6.0.16", "postcss-selector-parser@^6.0.2", "postcss-selector-parser@^6.0.4", "postcss-selector-parser@^6.0.5", "postcss-selector-parser@^6.0.9":
+  version "6.0.16"
+  resolved "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.0.16.tgz#3b88b9f5c5abd989ef4e2fc9ec8eedd34b20fb04"
+  integrity sha512-A0RVJrX+IUkVZbW3ClroRWurercFhieevHB38sr2+l9eUClMqome3LmEmnhlNy+5Mr2EYN6B2Kaw9wYdd+VHiw==
   dependencies:
     cssesc "^3.0.0"
     util-deprecate "^1.0.2"
@@ -10122,13 +9581,13 @@ postcss-svgo@^5.1.0:
     postcss-value-parser "^4.2.0"
     svgo "^2.7.0"
 
-postcss-svgo@^6.0.0:
-  version "6.0.0"
-  resolved "https://registry.npmjs.org/postcss-svgo/-/postcss-svgo-6.0.0.tgz#7b18742d38d4505a0455bbe70d52b49f00eaf69d"
-  integrity sha512-r9zvj/wGAoAIodn84dR/kFqwhINp5YsJkLoujybWG59grR/IHx+uQ2Zo+IcOwM0jskfYX3R0mo+1Kip1VSNcvw==
+postcss-svgo@^6.0.3:
+  version "6.0.3"
+  resolved "https://registry.npmjs.org/postcss-svgo/-/postcss-svgo-6.0.3.tgz#1d6e180d6df1fa8a3b30b729aaa9161e94f04eaa"
+  integrity sha512-dlrahRmxP22bX6iKEjOM+c8/1p+81asjKT+V5lrgOH944ryx/OHpclnIbGsKVd3uWOXFLYJwCVf0eEkJGvO96g==
   dependencies:
     postcss-value-parser "^4.2.0"
-    svgo "^3.0.2"
+    svgo "^3.2.0"
 
 postcss-unique-selectors@^5.1.1:
   version "5.1.1"
@@ -10137,35 +9596,26 @@ postcss-unique-selectors@^5.1.1:
   dependencies:
     postcss-selector-parser "^6.0.5"
 
-postcss-unique-selectors@^6.0.0:
-  version "6.0.0"
-  resolved "https://registry.npmjs.org/postcss-unique-selectors/-/postcss-unique-selectors-6.0.0.tgz#c94e9b0f7bffb1203894e42294b5a1b3fb34fbe1"
-  integrity sha512-EPQzpZNxOxP7777t73RQpZE5e9TrnCrkvp7AH7a0l89JmZiPnS82y216JowHXwpBCQitfyxrof9TK3rYbi7/Yw==
+postcss-unique-selectors@^6.0.4:
+  version "6.0.4"
+  resolved "https://registry.npmjs.org/postcss-unique-selectors/-/postcss-unique-selectors-6.0.4.tgz#983ab308896b4bf3f2baaf2336e14e52c11a2088"
+  integrity sha512-K38OCaIrO8+PzpArzkLKB42dSARtC2tmG6PvD4b1o1Q2E9Os8jzfWFfSy/rixsHwohtsDdFtAWGjFVFUdwYaMg==
   dependencies:
-    postcss-selector-parser "^6.0.5"
+    postcss-selector-parser "^6.0.16"
 
 "postcss-value-parser@^4.0.2", "postcss-value-parser@^4.1.0", "postcss-value-parser@^4.2.0":
   version "4.2.0"
   resolved "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-4.2.0.tgz#723c09920836ba6d3e5af019f92bc0971c02e514"
   integrity sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ==
 
-"postcss@^8.4.21", "postcss@^8.4.24":
-  version "8.4.24"
-  resolved "https://registry.npmjs.org/postcss/-/postcss-8.4.24.tgz#f714dba9b2284be3cc07dbd2fc57ee4dc972d2df"
-  integrity sha512-M0RzbcI0sO/XJNucsGjvWU9ERWxb/ytp1w6dKtxTKgixdtQDq4rmx/g8W1hnaheq9jgwL/oyEdH5Bc4WwJKMqg==
+"postcss@^8.4.24", "postcss@^8.4.31", "postcss@^8.4.33":
+  version "8.4.38"
+  resolved "https://registry.npmjs.org/postcss/-/postcss-8.4.38.tgz#b387d533baf2054288e337066d81c6bee9db9e0e"
+  integrity sha512-Wglpdk03BSfXkHoQa3b/oulrotAkwrlLDRSOb9D0bN86FdRyE9lppSp33aHNPgBa0JKCoB+drFLZkQoRRYae5A==
   dependencies:
-    nanoid "^3.3.6"
+    nanoid "^3.3.7"
     picocolors "^1.0.0"
-    source-map-js "^1.0.2"
-
-postcss@^8.4.31:
-  version "8.4.31"
-  resolved "https://registry.npmjs.org/postcss/-/postcss-8.4.31.tgz#92b451050a9f914da6755af352bdc0192508656d"
-  integrity sha512-PS08Iboia9mts/2ygV3eLpY5ghnUcfLV/EXTOW1E2qYxJKGGBUtNjN76FYHnMs36RmARn41bC0AZmn+rR0OVpQ==
-  dependencies:
-    nanoid "^3.3.6"
-    picocolors "^1.0.0"
-    source-map-js "^1.0.2"
+    source-map-js "^1.2.0"
 
 precond@^0.2.3:
   version "0.2.3"
@@ -10196,15 +9646,20 @@ pretty-format@^27.0.2:
     ansi-styles "^5.0.0"
     react-is "^17.0.1"
 
-"pretty-format@^29.0.0", "pretty-format@^29.6.3":
-  version "29.6.3"
-  resolved "https://registry.npmjs.org/pretty-format/-/pretty-format-29.6.3.tgz#d432bb4f1ca6f9463410c3fb25a0ba88e594ace7"
-  integrity sha512-ZsBgjVhFAj5KeK+nHfF1305/By3lechHQSMWCTl8iHSbfOm2TN5nHEtFc/+W7fAyUeCs2n5iow72gld4gW0xDw==
+"pretty-format@^29.0.0", "pretty-format@^29.7.0":
+  version "29.7.0"
+  resolved "https://registry.npmjs.org/pretty-format/-/pretty-format-29.7.0.tgz#ca42c758310f365bfa71a0bda0a807160b776812"
+  integrity sha512-Pdlw/oPxN+aXdmM9R00JVC9WVFoCLTKJvDVLgmJ+qAffBMxsV85l/Lu7sNx4zSzPyoL2euImuEwHhOXdEgNFZQ==
   dependencies:
     "@jest/schemas" "^29.6.3"
     ansi-styles "^5.0.0"
     react-is "^18.0.0"
 
+proc-log@^3.0.0:
+  version "3.0.0"
+  resolved "https://registry.npmjs.org/proc-log/-/proc-log-3.0.0.tgz#fb05ef83ccd64fd7b20bbe9c8c1070fc08338dd8"
+  integrity sha512-++Vn7NS4Xf9NacaU9Xq3URUuqZETPsf8L4j5/ckhaRYsfPeRyzGw+iDjFhV/Jr3uNmTvvddEJFWh5R1gRgUH8A==
+
 process-nextick-args@~2.0.0:
   version "2.0.1"
   resolved "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz#7820d9b16120cc55ca9ae7792680ae7dba6d7fe2"
@@ -10215,6 +9670,11 @@ process-nextick-args@~2.0.0:
   resolved "https://registry.npmjs.org/process/-/process-0.11.10.tgz#7332300e840161bda3e69a1d1d91a7d4bc16f182"
   integrity sha512-cdGef/drWFoydD1JsMzuFf8100nZl+GT+yacc2bEced5f9Rjk4z+WtFUTBu9PhOi9j/jfmBPu0mMEY4wIdAF8A==
 
+promise-inflight@^1.0.1:
+  version "1.0.1"
+  resolved "https://registry.npmjs.org/promise-inflight/-/promise-inflight-1.0.1.tgz#98472870bf228132fcbdd868129bad12c3c029e3"
+  integrity sha512-6zWPyEOFaQBJYcGMHBKTKJ3u6TBsnMFOIZSa6ce1e/ZrrsOlnHRHbabMjLiBYKp+n44X9eUI6VUPaukCXHuG4g==
+
 promise-retry@^2.0.1:
   version "2.0.1"
   resolved "https://registry.npmjs.org/promise-retry/-/promise-retry-2.0.1.tgz#ff747a13620ab57ba688f5fc67855410c370da22"
@@ -10286,26 +9746,26 @@ pump@^3.0.0:
   integrity sha512-jmYNElW7yvO7TV33CjSmvSiE2yco3bV2czu/OzDKdMNVZQWfxCblURLhf+47syQRBntjfLdd/H0egrzIG+oaFQ==
 
 "punycode@^2.1.0", "punycode@^2.1.1":
-  version "2.3.0"
-  resolved "https://registry.npmjs.org/punycode/-/punycode-2.3.0.tgz#f67fa67c94da8f4d0cfff981aee4118064199b8f"
-  integrity sha512-rRV+zQD8tVFys26lAGR9WUuS4iUAngJScM+ZRSKtvl5tKeZ2t5bvdNFdNHBW9FWR4guGHlgmsZ1G7BSm2wTbuA==
+  version "2.3.1"
+  resolved "https://registry.npmjs.org/punycode/-/punycode-2.3.1.tgz#027422e2faec0b25e1549c3e1bd8309b9133b6e5"
+  integrity sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==
 
 pure-rand@^6.0.0:
-  version "6.0.3"
-  resolved "https://registry.npmjs.org/pure-rand/-/pure-rand-6.0.3.tgz#3c9e6b53c09e52ac3cedffc85ab7c1c7094b38cb"
-  integrity sha512-KddyFewCsO0j3+np81IQ+SweXLDnDQTs5s67BOnrYmYe/yNmUhttQyGsYzy8yUnoljGAQ9sl38YB4vH8ur7Y+w==
+  version "6.1.0"
+  resolved "https://registry.npmjs.org/pure-rand/-/pure-rand-6.1.0.tgz#d173cf23258231976ccbdb05247c9787957604f2"
+  integrity sha512-bVWawvoZoBYpp6yIoQtQXHZjmz35RSVHnUOTefl8Vcjr8snTPY1wnpSPMWekcFwbxI6gtmT7rSYPFvz71ldiOA==
 
 q@^1.1.2:
   version "1.5.1"
   resolved "https://registry.npmjs.org/q/-/q-1.5.1.tgz#7e32f75b41381291d04611f1bf14109ac00651d7"
   integrity sha512-kV/CThkXo6xyFEZUugw/+pIOywXcDbFYgSct5cT3gqlbkBE1SJdwy6UQoZvodiWF/ckQLZyDE/Bu1M6gVu5lVw==
 
-qs@^6.11.0:
-  version "6.11.2"
-  resolved "https://registry.npmjs.org/qs/-/qs-6.11.2.tgz#64bea51f12c1f5da1bc01496f48ffcff7c69d7d9"
-  integrity sha512-tDNIz22aBzCDxLtVH++VnTfzxlfeK5CbqohpSqpJgj1Wg/cQbStNAz3NuqCs5vV+pjBsK4x4pN9HlVh7rcYRiA==
+qs@^6.11.2:
+  version "6.12.1"
+  resolved "https://registry.npmjs.org/qs/-/qs-6.12.1.tgz#39422111ca7cbdb70425541cba20c7d7b216599a"
+  integrity sha512-zWmv4RSuB9r2mYQw3zxQuHWeU+42aKi1wWig/j4ele4ygELZ7PEO6MM7rim9oAQH2A5MWfsAVf/jPvTPgCbvUQ==
   dependencies:
-    side-channel "^1.0.4"
+    side-channel "^1.0.6"
 
 query-string@^5.0.1:
   version "5.1.1"
@@ -10383,28 +9843,18 @@ rc-align@^4.0.0:
     resize-observer-polyfill "^1.5.1"
 
 rc-dock@^3.2.9:
-  version "3.2.18"
-  resolved "https://registry.npmjs.org/rc-dock/-/rc-dock-3.2.18.tgz#4c0f3afb2f483581783bc3f941c8e0f9f40cc2b7"
-  integrity sha512-5I0CNgrv/3pctK9WkoEMFTwitJhXx2cMHVyygReDJI8qXw9dayE3xxJgnybbELGFeLkDfVhFSfKz6zSboAVbxw==
+  version "3.2.19"
+  resolved "https://registry.npmjs.org/rc-dock/-/rc-dock-3.2.19.tgz#246e76f0ffec69a2aa40c7c4ad0c4ef3a5edbf00"
+  integrity sha512-onjYMYw4IEzf5LbQyQt+a2mSJ58oxAgpu29CD8/rexR5IWjTsa3amxyF+CxHy2+wtqCDzi/qsDsJglH/k6Bx9g==
   dependencies:
-    classnames "^2.3.1"
+    classnames "^2.5.1"
     lodash "^4.17.21"
-    rc-dropdown "^3.2.2"
-    rc-menu "^9.3.0"
+    rc-dropdown "~4.0.1"
+    rc-menu "~9.8.4"
     rc-new-window "^0.1.13"
-    rc-tabs "^11.10.5"
+    rc-tabs "~11.16.1"
 
-rc-dropdown@^3.2.2:
-  version "3.6.2"
-  resolved "https://registry.npmjs.org/rc-dropdown/-/rc-dropdown-3.6.2.tgz#d23b8b2762941ac39e665673946f67ca9c39118f"
-  integrity sha512-Wsw7GkVbUXADEs8FPL0v8gd+3mWQiydPFXBlr2imMScQaf8hh79pG9KrBc1DwK+nqHmYOpQfK2gn6jG2AQw9Pw==
-  dependencies:
-    "@babel/runtime" "^7.10.1"
-    classnames "^2.2.6"
-    rc-trigger "^5.0.4"
-    rc-util "^5.17.0"
-
-rc-dropdown@~4.0.0:
+"rc-dropdown@~4.0.0", "rc-dropdown@~4.0.1":
   version "4.0.1"
   resolved "https://registry.npmjs.org/rc-dropdown/-/rc-dropdown-4.0.1.tgz#f65d9d3d89750241057db59d5a75e43cd4576b68"
   integrity sha512-OdpXuOcme1rm45cR0Jzgfl1otzmU4vuBVb+etXM8vcaULGokAKVpKlw8p6xzspG7jGd/XxShvq+N3VNEfk/l5g==
@@ -10414,18 +9864,6 @@ rc-dropdown@~4.0.0:
     rc-trigger "^5.3.1"
     rc-util "^5.17.0"
 
-rc-menu@^9.3.0:
-  version "9.9.2"
-  resolved "https://registry.npmjs.org/rc-menu/-/rc-menu-9.9.2.tgz#733aa5b794bd801577726e448b6cfeda0436e1e5"
-  integrity sha512-kVJwaQn5VUu6DIddxd/jz3QupTPg0tNYq+mpFP8wYsRF5JgzPA9fPVw+CfwlTPwA1w7gzEY42S8pj6M3uev5CQ==
-  dependencies:
-    "@babel/runtime" "^7.10.1"
-    "@rc-component/trigger" "^1.6.2"
-    classnames "2.x"
-    rc-motion "^2.4.3"
-    rc-overflow "^1.2.8"
-    rc-util "^5.27.0"
-
 rc-menu@~9.6.0:
   version "9.6.4"
   resolved "https://registry.npmjs.org/rc-menu/-/rc-menu-9.6.4.tgz#033e7b8848c17a09a81b68b8d4c3fa457605f4f6"
@@ -10439,10 +9877,22 @@ rc-menu@~9.6.0:
     rc-util "^5.12.0"
     shallowequal "^1.1.0"
 
+rc-menu@~9.8.4:
+  version "9.8.4"
+  resolved "https://registry.npmjs.org/rc-menu/-/rc-menu-9.8.4.tgz#58bf19d471e3c74ff4bcfdb0f02a3826ebe2553b"
+  integrity sha512-lmw2j8I2fhdIzHmC9ajfImfckt0WDb2KVJJBBRIsxPEw2kGkEfjLMUoB1NgiNT/Q5cC8PdjGOGQjHJIJMwyNMw==
+  dependencies:
+    "@babel/runtime" "^7.10.1"
+    classnames "2.x"
+    rc-motion "^2.4.3"
+    rc-overflow "^1.2.8"
+    rc-trigger "^5.1.2"
+    rc-util "^5.27.0"
+
 "rc-motion@^2.0.0", "rc-motion@^2.4.3":
-  version "2.7.3"
-  resolved "https://registry.npmjs.org/rc-motion/-/rc-motion-2.7.3.tgz#126155bb3e687174fb3b92fddade2835c963b04d"
-  integrity sha512-2xUvo8yGHdOHeQbdI8BtBsCIrWKchEmFEIskf0nmHtJsou+meLd/JE+vnvSX2JxcBrJtXY2LuBpxAOxrbY/wMQ==
+  version "2.9.0"
+  resolved "https://registry.npmjs.org/rc-motion/-/rc-motion-2.9.0.tgz#9e18a1b8d61e528a97369cf9a7601e9b29205710"
+  integrity sha512-XIU2+xLkdIr1/h6ohPZXyPBMvOmuyFZQ/T0xnawz+Rh+gh4FINcnZmMT5UTIj6hgI0VLDjTaPeRd+smJeSPqiQ==
   dependencies:
     "@babel/runtime" "^7.11.1"
     classnames "^2.2.1"
@@ -10459,26 +9909,26 @@ rc-new-window@^0.1.13:
     lodash "^4.17.20"
 
 "rc-overflow@^1.2.0", "rc-overflow@^1.2.8":
-  version "1.3.1"
-  resolved "https://registry.npmjs.org/rc-overflow/-/rc-overflow-1.3.1.tgz#03224cf90c66aa570eb0deeb4eff6cc96401e979"
-  integrity sha512-RY0nVBlfP9CkxrpgaLlGzkSoh9JhjJLu6Icqs9E7CW6Ewh9s0peF9OHIex4OhfoPsR92LR0fN6BlCY9Z4VoUtA==
+  version "1.3.2"
+  resolved "https://registry.npmjs.org/rc-overflow/-/rc-overflow-1.3.2.tgz#72ee49e85a1308d8d4e3bd53285dc1f3e0bcce2c"
+  integrity sha512-nsUm78jkYAoPygDAcGZeC2VwIg/IBGSodtOY3pMof4W3M9qRJgqaDYm03ZayHlde3I6ipliAxbN0RUcGf5KOzw==
   dependencies:
     "@babel/runtime" "^7.11.1"
     classnames "^2.2.1"
     rc-resize-observer "^1.0.0"
-    rc-util "^5.19.2"
+    rc-util "^5.37.0"
 
-"rc-resize-observer@^1.0.0", "rc-resize-observer@^1.3.1":
-  version "1.3.1"
-  resolved "https://registry.npmjs.org/rc-resize-observer/-/rc-resize-observer-1.3.1.tgz#b61b9f27048001243617b81f95e53d7d7d7a6a3d"
-  integrity sha512-iFUdt3NNhflbY3mwySv5CA1TC06zdJ+pfo0oc27xpf4PIOvfZwZGtD9Kz41wGYqC4SLio93RVAirSSpYlV/uYg==
+rc-resize-observer@^1.0.0:
+  version "1.4.0"
+  resolved "https://registry.npmjs.org/rc-resize-observer/-/rc-resize-observer-1.4.0.tgz#7bba61e6b3c604834980647cce6451914750d0cc"
+  integrity sha512-PnMVyRid9JLxFavTjeDXEXo65HCRqbmLBw9xX9gfC4BZiSzbLXKzW3jPz+J0P71pLbD5tBMTT+mkstV5gD0c9Q==
   dependencies:
     "@babel/runtime" "^7.20.7"
     classnames "^2.2.1"
-    rc-util "^5.27.0"
+    rc-util "^5.38.0"
     resize-observer-polyfill "^1.5.1"
 
-rc-tabs@^11.10.5:
+rc-tabs@~11.16.1:
   version "11.16.1"
   resolved "https://registry.npmjs.org/rc-tabs/-/rc-tabs-11.16.1.tgz#7c57b6a092d9d0e2df54413b0319f195c27214a9"
   integrity sha512-bR7Dap23YyfzZQwtKomhiFEFzZuE7WaKWo+ypNRSGB9PDKSc6tM12VP8LWYkvmmQHthgwP0WRN8nFbSJWuqLYw==
@@ -10490,7 +9940,7 @@ rc-tabs@^11.10.5:
     rc-resize-observer "^1.0.0"
     rc-util "^5.5.0"
 
-"rc-trigger@^5.0.4", "rc-trigger@^5.1.2", "rc-trigger@^5.3.1":
+"rc-trigger@^5.1.2", "rc-trigger@^5.3.1":
   version "5.3.4"
   resolved "https://registry.npmjs.org/rc-trigger/-/rc-trigger-5.3.4.tgz#6b4b26e32825677c837d1eb4d7085035eecf9a61"
   integrity sha512-mQv+vas0TwKcjAO2izNPkqR4j86OemLRmvL2nOzdP9OWNWA1ivoTt5hzFqYNW9zACwmTezRiN8bttrC7cZzYSw==
@@ -10501,13 +9951,13 @@ rc-tabs@^11.10.5:
     rc-motion "^2.0.0"
     rc-util "^5.19.2"
 
-"rc-util@^5.12.0", "rc-util@^5.17.0", "rc-util@^5.19.2", "rc-util@^5.21.0", "rc-util@^5.24.4", "rc-util@^5.26.0", "rc-util@^5.27.0", "rc-util@^5.33.0", "rc-util@^5.5.0":
-  version "5.34.0"
-  resolved "https://registry.npmjs.org/rc-util/-/rc-util-5.34.0.tgz#3bec84f98c1dbf5305d89cda124aa8a0c9615f97"
-  integrity sha512-+zCDJ1gq+KwqbaZPAk7PGlNAssoTcnZSnTsr5KMYDBhzdPNFxyuglnewWMP5PyP/kAC6uW4r9Ejc08M+Lei04A==
+"rc-util@^5.12.0", "rc-util@^5.17.0", "rc-util@^5.19.2", "rc-util@^5.21.0", "rc-util@^5.26.0", "rc-util@^5.27.0", "rc-util@^5.37.0", "rc-util@^5.38.0", "rc-util@^5.5.0":
+  version "5.39.1"
+  resolved "https://registry.npmjs.org/rc-util/-/rc-util-5.39.1.tgz#7bca4fb55e20add0eef5c23166cd9f9e5f51a8a1"
+  integrity sha512-OW/ERynNDgNr4y0oiFmtes3rbEamXw7GHGbkbNd9iRr7kgT03T6fT0b9WpJ3mbxKhyOcAHnGcIoh5u/cjrC2OQ==
   dependencies:
     "@babel/runtime" "^7.18.3"
-    react-is "^16.12.0"
+    react-is "^18.2.0"
 
 re-resizable@6.9.6:
   version "6.9.6"
@@ -10517,14 +9967,14 @@ re-resizable@6.9.6:
     fast-memoize "^2.5.1"
 
 react-arborist@^3.2.0:
-  version "3.2.0"
-  resolved "https://registry.npmjs.org/react-arborist/-/react-arborist-3.2.0.tgz#f17d726e7d18fcb1494b83ffadfecc8c9bda5dff"
-  integrity sha512-sjGL1KIRogwkM5uVifpp01yrfTcIHsm62Kbs78kBbPuksrnJPZ13SAqAqZeXVuyvO0Tbd7odExF/KoHtXHIZaQ==
+  version "3.4.0"
+  resolved "https://registry.npmjs.org/react-arborist/-/react-arborist-3.4.0.tgz#8ef3de2c81d3b8cea0f4f4575c1971bd80c556c5"
+  integrity sha512-QI46oRGXJr0oaQfqqVobIiIoqPp5Y5gM69D2A2P7uHVif+X75XWnScR5drC7YDKgJ4CXVaDeFwnYKOWRRfncMg==
   dependencies:
     react-dnd "^14.0.3"
-    react-dnd-html5-backend "^14.0.1"
-    react-window "^1.8.6"
-    redux "^4.1.1"
+    react-dnd-html5-backend "^14.0.3"
+    react-window "^1.8.10"
+    redux "^5.0.0"
     use-sync-external-store "^1.2.0"
 
 react-aspen@^1.1.0:
@@ -10548,7 +9998,7 @@ react-checkbox-tree@^1.7.2:
     nanoid "^3.0.0"
     prop-types "^15.5.8"
 
-react-dnd-html5-backend@^14.0.1:
+react-dnd-html5-backend@^14.0.3:
   version "14.1.0"
   resolved "https://registry.npmjs.org/react-dnd-html5-backend/-/react-dnd-html5-backend-14.1.0.tgz#b35a3a0c16dd3a2bfb5eb7ec62cf0c2cace8b62f"
   integrity sha512-6ONeqEC3XKVf4eVmMTe0oPds+c5B9Foyj8p/ZKLb7kL2qh9COYxiBHv3szd6gztqi/efkmriywLUVlPotqoJyw==
@@ -10623,17 +10073,17 @@ react-frame-component@^5.2.6:
   resolved "https://registry.npmjs.org/react-frame-component/-/react-frame-component-5.2.6.tgz#0d9991d251ff1f7177479d8f370deea06b824b79"
   integrity sha512-CwkEM5VSt6nFwZ1Op8hi3JB5rPseZlmnp5CGiismVTauE6S4Jsc4TNMlT0O7Cts4WgIC3ZBAQ2p1Mm9XgLbj+w==
 
-"react-is@^16.12.0", "react-is@^16.13.1", "react-is@^16.7.0":
+"react-is@^16.13.1", "react-is@^16.7.0":
   version "16.13.1"
   resolved "https://registry.npmjs.org/react-is/-/react-is-16.13.1.tgz#789729a4dc36de2999dc156dd6c1d9c18cea56a4"
   integrity sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==
 
-"react-is@^16.8.0 || ^17.0.0", "react-is@^17.0.1":
+react-is@^17.0.1:
   version "17.0.2"
   resolved "https://registry.npmjs.org/react-is/-/react-is-17.0.2.tgz#e691d4a8e9c789365655539ab372762b0efb54f0"
   integrity sha512-w2GsyukL62IJnlaff/nRegPQR94C/XXamvMWmSHRJ4y7Ts/4ocGRmTHvOs8PSE6pB3dWOrD/nueuU5sduBsQ4w==
 
-react-is@^18.0.0:
+"react-is@^18.0.0", "react-is@^18.2.0":
   version "18.2.0"
   resolved "https://registry.npmjs.org/react-is/-/react-is-18.2.0.tgz#199431eeaaa2e09f86427efbb4f1473edb47609b"
   integrity sha512-xWGDIW6x921xtzPkhiULtthJHoJvBbF3q26fzloPCK0hsvxtPVelvftw3zjbHWSkR2km9Z+4uxbDDK/6Zw9B8w==
@@ -10658,9 +10108,9 @@ react-property@2.0.2:
   integrity sha512-+PbtI3VuDV0l6CleQMsx2gtK0JZbZKbpdu5ynr+lbsuvtmgbNcS3VM0tuY2QjFNOcWxvXeHjDpy42RO+4U2rug==
 
 react-resize-detector@^9.1.0:
-  version "9.1.0"
-  resolved "https://registry.npmjs.org/react-resize-detector/-/react-resize-detector-9.1.0.tgz#45ea7176e57f1a568abd0e3eafcbfd3532fb284e"
-  integrity sha512-vGFbfkIZp4itJqR4yl+GhjrZHtdlQvou1r10ek0yZUMkizKbPdekKTpPb003IV3b8E5BJFThVG0oocjE3lNsug==
+  version "9.1.1"
+  resolved "https://registry.npmjs.org/react-resize-detector/-/react-resize-detector-9.1.1.tgz#ce13cf55b9b09d9978fc51e0c87bb3639704921e"
+  integrity sha512-siLzop7i4xIvZIACE/PHTvRegA8QRCEt0TfmvJ/qCIFQJ4U+3NuYcF8tNDmDWxfIn+X1eNCyY2rauH4KRxge8w==
   dependencies:
     lodash "^4.17.21"
 
@@ -10674,9 +10124,9 @@ react-rnd@^10.3.5:
     tslib "2.3.1"
 
 react-select@^5.7.2:
-  version "5.7.3"
-  resolved "https://registry.npmjs.org/react-select/-/react-select-5.7.3.tgz#fa0dc9a23cad6ff3871ad3829f6083a4b54961a2"
-  integrity sha512-z8i3NCuFFWL3w27xq92rBkVI2onT0jzIIPe480HlBjXJ3b5o6Q+Clp4ydyeKrj9DZZ3lrjawwLC5NGl0FSvUDg==
+  version "5.8.0"
+  resolved "https://registry.npmjs.org/react-select/-/react-select-5.8.0.tgz#bd5c467a4df223f079dd720be9498076a3f085b5"
+  integrity sha512-TfjLDo58XrhP6VG5M/Mi56Us0Yt8X7xD6cDybC7yoRMUNm7BGO7qk8J0TLQOua/prb8vUOtsfnXZwfm30HGsAA==
   dependencies:
     "@babel/runtime" "^7.12.0"
     "@emotion/cache" "^11.4.0"
@@ -10694,11 +10144,11 @@ react-table@^7.6.3:
   integrity sha512-hNaz4ygkZO4bESeFfnfOft73iBUj8K5oKi1EcSHPAibEydfsX2MyU6Z8KCr3mv3C9Kqqh71U+DhZkFvibbnPbA==
 
 react-timer-hook@^3.0.5:
-  version "3.0.6"
-  resolved "https://registry.npmjs.org/react-timer-hook/-/react-timer-hook-3.0.6.tgz#61aca331378ad53058519c579de50c244e66972f"
-  integrity sha512-6O1gcBT7R5gm2W14mGAu35KfX0tdJ9s817UDJTL7/IQUXqK6wkYgZzy1mSLa6N+AQGEhgoVCtTsP7tIhBmSD6A==
+  version "3.0.7"
+  resolved "https://registry.npmjs.org/react-timer-hook/-/react-timer-hook-3.0.7.tgz#ac42c43d0034b873cbf97b44eb34ccb2b11fe5e0"
+  integrity sha512-ATpNcU+PQRxxfNBPVqce2+REtjGAlwmfoNQfcEBMZFxPj0r3GYdKhyPHdStvqrejejEi0QvqaJZjy2lBlFvAsA==
 
-"react-transition-group@^4.0.0", "react-transition-group@^4.3.0", "react-transition-group@^4.4.0":
+"react-transition-group@^4.3.0", "react-transition-group@^4.4.5":
   version "4.4.5"
   resolved "https://registry.npmjs.org/react-transition-group/-/react-transition-group-4.4.5.tgz#e53d4e3f3344da8521489fbef8f2581d42becdd1"
   integrity sha512-pZcd1MCJoiKiBR2NRxeCRg13uCXbydPnmB4EOeRrY7480qNWO8IIgQG6zlDkm6uRMsURXPuKq0GWtiM59a5Q6g==
@@ -10714,14 +10164,14 @@ react-transition-state@^1.1.3:
   integrity sha512-ITY2mZqc2dWG2eitJkYNdcSFW8aKeOlkL2A/vowRrLL8GH3J6Re/SpD/BLvQzrVOTqjsP0b5S9N10vgNNzwMUQ==
 
 react-virtualized-auto-sizer@^1.0.6:
-  version "1.0.20"
-  resolved "https://registry.npmjs.org/react-virtualized-auto-sizer/-/react-virtualized-auto-sizer-1.0.20.tgz#d9a907253a7c221c52fa57dc775a6ef40c182645"
-  integrity sha512-OdIyHwj4S4wyhbKHOKM1wLSj/UDXm839Z3Cvfg2a9j+He6yDa6i5p0qQvEiCnyQlGO/HyfSnigQwuxvYalaAXA==
+  version "1.0.24"
+  resolved "https://registry.npmjs.org/react-virtualized-auto-sizer/-/react-virtualized-auto-sizer-1.0.24.tgz#3ebdc92f4b05ad65693b3cc8e7d8dd54924c0227"
+  integrity sha512-3kCn7N9NEb3FlvJrSHWGQ4iVl+ydQObq2fHMn12i5wbtm74zHOPhz/i64OL3c1S1vi9i2GXtZqNqUJTQ+BnNfg==
 
-"react-window@^1.3.1", "react-window@^1.8.5", "react-window@^1.8.6":
-  version "1.8.9"
-  resolved "https://registry.npmjs.org/react-window/-/react-window-1.8.9.tgz#24bc346be73d0468cdf91998aac94e32bc7fa6a8"
-  integrity sha512-+Eqx/fj1Aa5WnhRfj9dJg4VYATGwIUP2ItwItiJ6zboKWA6EX3lYDAXfGF2hyNqplEprhbtjbipiADEcwQ823Q==
+"react-window@^1.3.1", "react-window@^1.8.10", "react-window@^1.8.5":
+  version "1.8.10"
+  resolved "https://registry.npmjs.org/react-window/-/react-window-1.8.10.tgz#9e6b08548316814b443f7002b1cf8fd3a1bdde03"
+  integrity sha512-Y0Cx+dnU6NLa5/EvoHukUD0BklJ8qITCtVEPY1C/nL8wwoZ0b5aEw8Ff1dOVHw7fCzMt55XfJDd8S8W8LCaUCg==
   dependencies:
     "@babel/runtime" "^7.0.0"
     memoize-one ">=3.1.1 <6"
@@ -10770,7 +10220,7 @@ readable-stream@^1.0.33:
     isarray "0.0.1"
     string_decoder "~0.10.x"
 
-"readable-stream@^2.0.0", "readable-stream@^2.0.2", "readable-stream@^2.2.2", "readable-stream@^2.3.0", "readable-stream@^2.3.5", "readable-stream@~2.3.6":
+"readable-stream@^2.0.0", "readable-stream@^2.0.2", "readable-stream@^2.2.2", "readable-stream@^2.3.0", "readable-stream@^2.3.5", "readable-stream@^2.3.8", "readable-stream@~2.3.6":
   version "2.3.8"
   resolved "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.8.tgz#91125e8042bba1b9887f49345f6277027ce8be9b"
   integrity sha512-8p0AUk4XODgIewSi0l8Epjs+EVnWiK7NoDIEGU0HhE7+ZyY8D1IMY7odu5lRrFXGg71L15KG8QrPmum45RTtdA==
@@ -10783,7 +10233,7 @@ readable-stream@^1.0.33:
     string_decoder "~1.1.1"
     util-deprecate "~1.0.1"
 
-"readable-stream@^3.4.0", "readable-stream@^3.5.0", "readable-stream@^3.6.0", "readable-stream@^3.6.2":
+"readable-stream@^3.4.0", "readable-stream@^3.5.0", "readable-stream@^3.6.0":
   version "3.6.2"
   resolved "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.2.tgz#56a9b36ea965c00c5a93ef31eb111a0f11056967"
   integrity sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==
@@ -10799,13 +10249,6 @@ readable-web-to-node-stream@^3.0.0:
   dependencies:
     readable-stream "^3.6.0"
 
-readdirp@~3.6.0:
-  version "3.6.0"
-  resolved "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz#74a370bd857116e245b29cc97340cd431a02a6c7"
-  integrity sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==
-  dependencies:
-    picomatch "^2.2.1"
-
 rechoir@^0.7.0:
   version "0.7.1"
   resolved "https://registry.npmjs.org/rechoir/-/rechoir-0.7.1.tgz#9478a96a1ca135b5e88fc027f03ee92d6c645686"
@@ -10836,22 +10279,28 @@ redent@^4.0.0:
   dependencies:
     "@babel/runtime" "^7.9.2"
 
-reflect.getprototypeof@^1.0.3:
-  version "1.0.3"
-  resolved "https://registry.npmjs.org/reflect.getprototypeof/-/reflect.getprototypeof-1.0.3.tgz#2738fd896fcc3477ffbd4190b40c2458026b6928"
-  integrity sha512-TTAOZpkJ2YLxl7mVHWrNo3iDMEkYlva/kgFcXndqMgbo/AZUmmavEkdXV+hXtE4P8xdyEKRzalaFqZVuwIk/Nw==
-  dependencies:
-    call-bind "^1.0.2"
-    define-properties "^1.1.4"
-    es-abstract "^1.20.4"
-    get-intrinsic "^1.1.1"
+redux@^5.0.0:
+  version "5.0.1"
+  resolved "https://registry.npmjs.org/redux/-/redux-5.0.1.tgz#97fa26881ce5746500125585d5642c77b6e9447b"
+  integrity sha512-M9/ELqF6fy8FwmkpnF0S3YKOqMyoWJ4+CS5Efg2ct3oY9daQvd/Pc71FpGZsVsbl3Cpb+IIcjBDUnnyBdQbq4w==
+
+reflect.getprototypeof@^1.0.4:
+  version "1.0.6"
+  resolved "https://registry.npmjs.org/reflect.getprototypeof/-/reflect.getprototypeof-1.0.6.tgz#3ab04c32a8390b770712b7a8633972702d278859"
+  integrity sha512-fmfw4XgoDke3kdI6h4xcUz1dG8uaiv5q9gcEwLS4Pnth2kxT+GZ7YehS1JTMGBQmtV7Y4GFGbs2re2NqhdozUg==
+  dependencies:
+    call-bind "^1.0.7"
+    define-properties "^1.2.1"
+    es-abstract "^1.23.1"
+    es-errors "^1.3.0"
+    get-intrinsic "^1.2.4"
     globalthis "^1.0.3"
     which-builtin-type "^1.1.3"
 
 regenerate-unicode-properties@^10.1.0:
-  version "10.1.0"
-  resolved "https://registry.npmjs.org/regenerate-unicode-properties/-/regenerate-unicode-properties-10.1.0.tgz#7c3192cab6dd24e21cb4461e5ddd7dd24fa8374c"
-  integrity sha512-d1VudCLoIGitcU/hEg2QqvyGZQmdC0Lf8BqdOMXGFSvJP4bNV1+XqbPQeHHLD51Jh4QJJ225dlIFvY4Ly6MXmQ==
+  version "10.1.1"
+  resolved "https://registry.npmjs.org/regenerate-unicode-properties/-/regenerate-unicode-properties-10.1.1.tgz#6b0e05489d9076b04c436f318d9b067bba459480"
+  integrity sha512-X007RyZLsCJVVrjgEFVpLUTZwyOZk3oiL75ZcuYjlIWd6rNJtOjkBwQc5AsRrpbKVkxN6sklw/k/9m2jJYOf8Q==
   dependencies:
     regenerate "^1.4.2"
 
@@ -10860,17 +10309,10 @@ regenerate@^1.4.2:
   resolved "https://registry.npmjs.org/regenerate/-/regenerate-1.4.2.tgz#b9346d8827e8f5a32f7ba29637d398b69014848a"
   integrity sha512-zrceR/XhGYU/d/opr2EKO7aRHUeiBI8qjtfHqADTwZd6Szfy16la6kqD0MIUs5z5hx6AaKa+PixpPrR289+I0A==
 
-regenerator-runtime@^0.13.11:
-  version "0.13.11"
-  resolved "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.13.11.tgz#f6dca3e7ceec20590d07ada785636a90cdca17f9"
-  integrity sha512-kY1AZVr2Ra+t+piVaJ4gxaFaReZVH40AKNo7UCX6W+dEwBo/2oZJzqfuN1qLq1oL45o56cPaTXELwrTh8Fpggg==
-
-regenerator-transform@^0.15.1:
-  version "0.15.1"
-  resolved "https://registry.npmjs.org/regenerator-transform/-/regenerator-transform-0.15.1.tgz#f6c4e99fc1b4591f780db2586328e4d9a9d8dc56"
-  integrity sha512-knzmNAcuyxV+gQCufkYcvOqX/qIIfHLv0u5x79kRxuGojfYVky1f15TzZEu2Avte8QGepvUNTnLskf8E6X6Vyg==
-  dependencies:
-    "@babel/runtime" "^7.8.4"
+regenerator-runtime@^0.14.0:
+  version "0.14.1"
+  resolved "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.14.1.tgz#356ade10263f685dda125100cd862c1db895327f"
+  integrity sha512-dYnhHh0nJoMfnkZs6GmmhFknAGRrLznOu5nc9ML+EJxGvrx6H7teuevqVqCuPcPK//3eDrrjQhehXVx9cnkGdw==
 
 regenerator-transform@^0.15.2:
   version "0.15.2"
@@ -10879,14 +10321,15 @@ regenerator-transform@^0.15.2:
   dependencies:
     "@babel/runtime" "^7.8.4"
 
-"regexp.prototype.flags@^1.4.3", "regexp.prototype.flags@^1.5.0":
-  version "1.5.0"
-  resolved "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.5.0.tgz#fe7ce25e7e4cca8db37b6634c8a2c7009199b9cb"
-  integrity sha512-0SutC3pNudRKgquxGoRGIz946MZVHqbNfPjBdxeOhBrdgDKlRoXmYLQN9xRbrR09ZXWeGAdPuif7egofn6v5LA==
+"regexp.prototype.flags@^1.5.1", "regexp.prototype.flags@^1.5.2":
+  version "1.5.2"
+  resolved "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.5.2.tgz#138f644a3350f981a858c44f6bb1a61ff59be334"
+  integrity sha512-NcDiDkTLuPR+++OCKB0nWafEmhg/Da8aUPLPMQbK+bxKKCm1/S5he+AqYa4PlMCVBalb4/yxIRub6qkEx5yJbw==
   dependencies:
-    call-bind "^1.0.2"
-    define-properties "^1.2.0"
-    functions-have-names "^1.2.3"
+    call-bind "^1.0.6"
+    define-properties "^1.2.1"
+    es-errors "^1.3.0"
+    set-function-name "^2.0.1"
 
 regexpu-core@^5.3.1:
   version "5.3.2"
@@ -10954,30 +10397,21 @@ resolve.exports@^2.0.0:
   resolved "https://registry.npmjs.org/resolve.exports/-/resolve.exports-2.0.2.tgz#f8c934b8e6a13f539e38b7098e2e36134f01e800"
   integrity sha512-X2UW6Nw3n/aMgDVy+0rSqgHlv39WZAlZrXCdnbyEiKm17DSqHX4MmQMaST3FbeWR5FTuRcUwYAziZajji0Y7mg==
 
-"resolve@^1.1.4", "resolve@^1.12.0", "resolve@^1.14.2", "resolve@^1.17.0", "resolve@^1.19.0", "resolve@^1.4.0", "resolve@^1.9.0":
-  version "1.22.2"
-  resolved "https://registry.npmjs.org/resolve/-/resolve-1.22.2.tgz#0ed0943d4e301867955766c9f3e1ae6d01c6845f"
-  integrity sha512-Sb+mjNHOULsBv818T40qSPeRiuWLyaGMa5ewydRLFimneixmVy2zdivRl+AF6jaYPC8ERxGDmFSiqui6SfPd+g==
-  dependencies:
-    is-core-module "^2.11.0"
-    path-parse "^1.0.7"
-    supports-preserve-symlinks-flag "^1.0.0"
-
-resolve@^1.20.0:
-  version "1.22.4"
-  resolved "https://registry.npmjs.org/resolve/-/resolve-1.22.4.tgz#1dc40df46554cdaf8948a486a10f6ba1e2026c34"
-  integrity sha512-PXNdCiPqDqeUou+w1C2eTQbNfxKSuMxqTCuvlmmMsk1NWHL5fRrhY6Pl0qEYYc6+QqGClco1Qj8XnjPego4wfg==
+"resolve@^1.1.4", "resolve@^1.12.0", "resolve@^1.14.2", "resolve@^1.17.0", "resolve@^1.19.0", "resolve@^1.20.0", "resolve@^1.4.0", "resolve@^1.9.0":
+  version "1.22.8"
+  resolved "https://registry.npmjs.org/resolve/-/resolve-1.22.8.tgz#b6c87a9f2aa06dfab52e3d70ac8cde321fa5a48d"
+  integrity sha512-oKWePCxqpd6FlLvGV1VU0x7bkPmmCNolxzjMf4NczoDnQcIWrAF+cPtZn5i6n+RfD2d9i0tzpKnG6Yk168yIyw==
   dependencies:
     is-core-module "^2.13.0"
     path-parse "^1.0.7"
     supports-preserve-symlinks-flag "^1.0.0"
 
-resolve@^2.0.0-next.4:
-  version "2.0.0-next.4"
-  resolved "https://registry.npmjs.org/resolve/-/resolve-2.0.0-next.4.tgz#3d37a113d6429f496ec4752d2a2e58efb1fd4660"
-  integrity sha512-iMDbmAWtfU+MHpxt/I5iWI7cY6YVEZUQ3MBgPQ++XD1PELuJHIl82xBmObyP2KyQmkNB2dsqF7seoQQiAn5yDQ==
+resolve@^2.0.0-next.5:
+  version "2.0.0-next.5"
+  resolved "https://registry.npmjs.org/resolve/-/resolve-2.0.0-next.5.tgz#6b0ec3107e671e52b68cd068ef327173b90dc03c"
+  integrity sha512-U7WjGVG9sH8tvjW5SmGbQuui75FiyjAX72HX15DwBBwF9dNiQZRQAg9nnPhYy+TUnE0+VcrttuvNI8oSxZcocA==
   dependencies:
-    is-core-module "^2.9.0"
+    is-core-module "^2.13.0"
     path-parse "^1.0.7"
     supports-preserve-symlinks-flag "^1.0.0"
 
@@ -11003,13 +10437,6 @@ reusify@^1.0.4:
   resolved "https://registry.npmjs.org/reusify/-/reusify-1.0.4.tgz#90da382b1e126efc02146e90845a88db12925d76"
   integrity sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==
 
-rifm@^0.7.0:
-  version "0.7.0"
-  resolved "https://registry.npmjs.org/rifm/-/rifm-0.7.0.tgz#debe951a9c83549ca6b33e5919f716044c2230be"
-  integrity sha512-DSOJTWHD67860I5ojetXdEQRIBvF6YcpNe53j0vn1vp9EUb9N80EiZTxgP+FkDKorWC8PZw052kTF4C1GOivCQ==
-  dependencies:
-    "@babel/runtime" "^7.3.1"
-
 rimraf@^2.5.4:
   version "2.7.1"
   resolved "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz#35797f13a7fdadc566142c29d4f07ccad483e3ec"
@@ -11039,13 +10466,13 @@ run-parallel@^1.1.9:
   dependencies:
     queue-microtask "^1.2.2"
 
-safe-array-concat@^1.0.0:
-  version "1.0.0"
-  resolved "https://registry.npmjs.org/safe-array-concat/-/safe-array-concat-1.0.0.tgz#2064223cba3c08d2ee05148eedbc563cd6d84060"
-  integrity sha512-9dVEFruWIsnie89yym+xWTAYASdpw3CJV7Li/6zBewGf9z2i1j31rP6jnY0pHEO4QZh6N0K11bFjWmdR8UGdPQ==
+safe-array-concat@^1.1.2:
+  version "1.1.2"
+  resolved "https://registry.npmjs.org/safe-array-concat/-/safe-array-concat-1.1.2.tgz#81d77ee0c4e8b863635227c721278dd524c20edb"
+  integrity sha512-vj6RsCsWBCf19jIeHEfkRMw8DPiBb+DMXklQ/1SGDHOMlHdPUkZXFQ2YdplS23zESTijAcurb1aSgJA3AgMu1Q==
   dependencies:
-    call-bind "^1.0.2"
-    get-intrinsic "^1.2.0"
+    call-bind "^1.0.7"
+    get-intrinsic "^1.2.4"
     has-symbols "^1.0.3"
     isarray "^2.0.5"
 
@@ -11059,51 +10486,24 @@ safe-array-concat@^1.0.0:
   resolved "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz#991ec69d296e0313747d59bdfd2b745c35f8828d"
   integrity sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==
 
-safe-regex-test@^1.0.0:
-  version "1.0.0"
-  resolved "https://registry.npmjs.org/safe-regex-test/-/safe-regex-test-1.0.0.tgz#793b874d524eb3640d1873aad03596db2d4f2295"
-  integrity sha512-JBUUzyOgEwXQY1NuPtvcj/qcBDbDmEvWufhlnXZIm75DEHp+afM1r1ujJpJsV/gSM4t59tpDyPi1sd6ZaPFfsA==
+safe-regex-test@^1.0.3:
+  version "1.0.3"
+  resolved "https://registry.npmjs.org/safe-regex-test/-/safe-regex-test-1.0.3.tgz#a5b4c0f06e0ab50ea2c395c14d8371232924c377"
+  integrity sha512-CdASjNJPvRa7roO6Ra/gLYBTzYzzPyyBXxIMdGW3USQLyjWEls2RgW5UBTXaQVp+OrpeCK3bLem8smtmheoRuw==
   dependencies:
-    call-bind "^1.0.2"
-    get-intrinsic "^1.1.3"
+    call-bind "^1.0.6"
+    es-errors "^1.3.0"
     is-regex "^1.1.4"
 
-"safer-buffer@>= 2.1.2 < 3.0.0", "safer-buffer@^2.1.0":
+"safer-buffer@>= 2.1.2 < 3.0.0":
   version "2.1.2"
   resolved "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz#44fa161b0187b9549dd84bb91802f9bd8385cd6a"
   integrity sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==
 
-sass-loader@^11.0.0:
-  version "11.1.1"
-  resolved "https://registry.npmjs.org/sass-loader/-/sass-loader-11.1.1.tgz#0db441bbbe197b2af96125bebb7f4be6476b13a7"
-  integrity sha512-fOCp/zLmj1V1WHDZbUbPgrZhA7HKXHEqkslzB+05U5K9SbSbcmH91C7QLW31AsXikxUMaxXRhhcqWZAxUMLDyA==
-  dependencies:
-    klona "^2.0.4"
-    neo-async "^2.6.2"
-
-sass-resources-loader@^2.2.1:
-  version "2.2.5"
-  resolved "https://registry.npmjs.org/sass-resources-loader/-/sass-resources-loader-2.2.5.tgz#75131cdb26bae51fcffc007d8155d57b5e825ca7"
-  integrity sha512-po8rfETH9cOQACWxubT/1CCu77KjxwRtCDm6QAXZH99aUHBydwSoxdIjC40SGp/dcS/FkSNJl0j1VEojGZqlvQ==
-  dependencies:
-    async "^3.2.3"
-    chalk "^4.1.0"
-    glob "^7.1.6"
-    loader-utils "^2.0.0"
-
-sass@^1.24.4:
-  version "1.63.6"
-  resolved "https://registry.npmjs.org/sass/-/sass-1.63.6.tgz#481610e612902e0c31c46b46cf2dad66943283ea"
-  integrity sha512-MJuxGMHzaOW7ipp+1KdELtqKbfAWbH7OLIdoSMnVe3EXPMTmxTmlaZDCTsgIpPCs3w99lLo9/zDKkOrJuT5byw==
-  dependencies:
-    chokidar ">=3.0.0 <4.0.0"
-    immutable "^4.0.0"
-    source-map-js ">=0.6.2 <2.0.0"
-
 sax@^1.2.4:
-  version "1.2.4"
-  resolved "https://registry.npmjs.org/sax/-/sax-1.2.4.tgz#2816234e2378bddc4e5354fab5caa895df7100d9"
-  integrity sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw==
+  version "1.3.0"
+  resolved "https://registry.npmjs.org/sax/-/sax-1.3.0.tgz#a5dbe77db3be05c9d1ee7785dbd3ea9de51593d0"
+  integrity sha512-0s+oAmw9zLl1V1cS9BtZN7JAd0cW5e0QH4W3LWEK6a4LaLEA2OTpGYWDY+6XasBLtz6wkm3u1xRw95mRuJ59WA==
 
 saxes@^6.0.0:
   version "6.0.0"
@@ -11168,38 +10568,26 @@ semver-truncate@^1.1.2:
     semver "^5.3.0"
 
 "semver@^5.3.0", "semver@^5.5.0", "semver@^5.6.0":
-  version "5.7.1"
-  resolved "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz#a954f931aeba508d307bbf069eff0c01c96116f7"
-  integrity sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==
-
-"semver@^6.0.0", "semver@^6.1.1", "semver@^6.1.2", "semver@^6.3.0":
-  version "6.3.0"
-  resolved "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz#ee0a64c8af5e8ceea67687b133761e1becbd1d3d"
-  integrity sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==
+  version "5.7.2"
+  resolved "https://registry.npmjs.org/semver/-/semver-5.7.2.tgz#48d55db737c3287cd4835e17fa13feace1c41ef8"
+  integrity sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==
 
-semver@^6.3.1:
+"semver@^6.0.0", "semver@^6.3.0", "semver@^6.3.1":
   version "6.3.1"
   resolved "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz#556d2ef8689146e46dcea4bfdd095f3434dffcb4"
   integrity sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==
 
-"semver@^7.3.4", "semver@^7.3.5", "semver@^7.3.7", "semver@^7.3.8":
-  version "7.5.2"
-  resolved "https://registry.npmjs.org/semver/-/semver-7.5.2.tgz#5b851e66d1be07c1cdaf37dfc856f543325a2beb"
-  integrity sha512-SoftuTROv/cRjCze/scjGyiDtcUyxw1rgYQSZY7XTmtR5hX+dm76iDbTH8TkLPHCQmlbQVSSbNZCPM2hb0knnQ==
-  dependencies:
-    lru-cache "^6.0.0"
-
-"semver@^7.5.3", "semver@^7.5.4":
-  version "7.5.4"
-  resolved "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz#483986ec4ed38e1c6c48c34894a9182dbff68a6e"
-  integrity sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==
+"semver@^7.3.4", "semver@^7.3.5", "semver@^7.3.7", "semver@^7.5.3", "semver@^7.5.4":
+  version "7.6.0"
+  resolved "https://registry.npmjs.org/semver/-/semver-7.6.0.tgz#1a46a4db4bffcccd97b743b5005c8325f23d4e2d"
+  integrity sha512-EnwXhrlwXMk9gKu5/flx5sv/an57AkRplG3hTK68W7FRDN+k+OWBj65M7719OkA82XLBxrcX0KSHj+X5COhOVg==
   dependencies:
     lru-cache "^6.0.0"
 
 "serialize-javascript@^6.0.0", "serialize-javascript@^6.0.1":
-  version "6.0.1"
-  resolved "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-6.0.1.tgz#b206efb27c3da0b0ab6b52f48d170b7996458e5c"
-  integrity sha512-owoXEFjWRllis8/M1Q+Cw5k8ZH40e3zhp/ovX+Xr/vi1qj6QesbyXXViFbpNvWvPNAD62SutwEXavefrLJWj7w==
+  version "6.0.2"
+  resolved "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-6.0.2.tgz#defa1e055c83bf6d59ea805d8da862254eb6a6c2"
+  integrity sha512-Saa1xPByTTq2gdeFZYLLo+RFE35NHZkAbqZeWNd3BpzppeVisAqpDjcp8dyf6uIvEqJRd46jemmyA4iFIeVk8g==
   dependencies:
     randombytes "^2.1.0"
 
@@ -11208,6 +10596,28 @@ set-blocking@^2.0.0:
   resolved "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz#045f9782d011ae9a6803ddd382b24392b3d890f7"
   integrity sha512-KiKBS8AnWGEyLzofFfmvKwpdPzqiy16LvQfK3yv/fVH7Bj13/wl3JSR1J+rfgRE9q7xUJK4qvgS8raSOeLUehw==
 
+set-function-length@^1.2.1:
+  version "1.2.2"
+  resolved "https://registry.npmjs.org/set-function-length/-/set-function-length-1.2.2.tgz#aac72314198eaed975cf77b2c3b6b880695e5449"
+  integrity sha512-pgRc4hJ4/sNjWCSS9AmnS40x3bNMDTknHgL5UaMBTMyJnU90EgWh1Rz+MC9eFu4BuN/UwZjKQuY/1v3rM7HMfg==
+  dependencies:
+    define-data-property "^1.1.4"
+    es-errors "^1.3.0"
+    function-bind "^1.1.2"
+    get-intrinsic "^1.2.4"
+    gopd "^1.0.1"
+    has-property-descriptors "^1.0.2"
+
+"set-function-name@^2.0.1", "set-function-name@^2.0.2":
+  version "2.0.2"
+  resolved "https://registry.npmjs.org/set-function-name/-/set-function-name-2.0.2.tgz#16a705c5a0dc2f5e638ca96d8a8cd4e1c2b90985"
+  integrity sha512-7PGFlmtwsEADb0WYyvCMa1t+yke6daIG4Wirafur5kcf+MhUnPms1UeR0CKQdTZD81yESwMHbtn+TR+dMviakQ==
+  dependencies:
+    define-data-property "^1.1.4"
+    es-errors "^1.3.0"
+    functions-have-names "^1.2.3"
+    has-property-descriptors "^1.0.2"
+
 "sha.js@^2.4.0", "sha.js@^2.4.8":
   version "2.4.11"
   resolved "https://registry.npmjs.org/sha.js/-/sha.js-2.4.11.tgz#37a5cf0b81ecbc6943de109ba2960d1b26584ae7"
@@ -11274,14 +10684,15 @@ shim-loader@^1.0.1:
     precond "^0.2.3"
     webpack-sources "^0.2.3"
 
-side-channel@^1.0.4:
-  version "1.0.4"
-  resolved "https://registry.npmjs.org/side-channel/-/side-channel-1.0.4.tgz#efce5c8fdc104ee751b25c58d4290011fa5ea2cf"
-  integrity sha512-q5XPytqFEIKHkGdiMIrY10mvLRvnQh42/+GoBlFW3b2LXLE2xxJpZFdm94we0BaoV3RwJyGqg5wS7epxTv0Zvw==
+"side-channel@^1.0.4", "side-channel@^1.0.6":
+  version "1.0.6"
+  resolved "https://registry.npmjs.org/side-channel/-/side-channel-1.0.6.tgz#abd25fb7cd24baf45466406b1096b7831c9215f2"
+  integrity sha512-fDW/EZ6Q9RiO8eFG8Hj+7u/oW+XrPTIChwCOM2+th2A6OblDtYYIpve9m+KvI9Z4C9qSEXlaGR6bTEYHReuglA==
   dependencies:
-    call-bind "^1.0.0"
-    get-intrinsic "^1.0.2"
-    object-inspect "^1.9.0"
+    call-bind "^1.0.7"
+    es-errors "^1.3.0"
+    get-intrinsic "^1.2.4"
+    object-inspect "^1.13.1"
 
 "signal-exit@^3.0.0", "signal-exit@^3.0.3", "signal-exit@^3.0.7":
   version "3.0.7"
@@ -11289,23 +10700,23 @@ side-channel@^1.0.4:
   integrity sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==
 
 signal-exit@^4.0.1:
-  version "4.0.2"
-  resolved "https://registry.npmjs.org/signal-exit/-/signal-exit-4.0.2.tgz#ff55bb1d9ff2114c13b400688fa544ac63c36967"
-  integrity sha512-MY2/qGx4enyjprQnFaZsHib3Yadh3IXyV2C321GY0pjGfVBu4un0uDJkwgdxqO+Rdx8JMT8IfJIRwbYVz3Ob3Q==
+  version "4.1.0"
+  resolved "https://registry.npmjs.org/signal-exit/-/signal-exit-4.1.0.tgz#952188c1cbd546070e2dd20d0f41c0ae0530cb04"
+  integrity sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==
 
 simple-concat@^1.0.0:
   version "1.0.1"
   resolved "https://registry.npmjs.org/simple-concat/-/simple-concat-1.0.1.tgz#f46976082ba35c2263f1c8ab5edfe26c41c9552f"
   integrity sha512-cSFtAPtRhljv69IK0hTVZQ+OfE9nePi/rtJmw5UjHeVyVroEqJXP1sFztKUy1qU+xvz3u/sfYJLa947b7nAN2Q==
 
-sirv@^1.0.7:
-  version "1.0.19"
-  resolved "https://registry.npmjs.org/sirv/-/sirv-1.0.19.tgz#1d73979b38c7fe91fcba49c85280daa9c2363b49"
-  integrity sha512-JuLThK3TnZG1TAKDwNIqNq6QA2afLOCcm+iE8D1Kj3GA40pSPsxQjjJl0J8X3tsR7T+CP1GavpzLwYkgVLWrZQ==
+sirv@^2.0.3:
+  version "2.0.4"
+  resolved "https://registry.npmjs.org/sirv/-/sirv-2.0.4.tgz#5dd9a725c578e34e449f332703eb2a74e46a29b0"
+  integrity sha512-94Bdh3cC2PKrbgSOUqTiGPWVZeSiXfKOVZNJniWoqrWrRkB1CJzBU3NEbiTsPcYy1lDsANA/THzS+9WBiy5nfQ==
   dependencies:
-    "@polka/url" "^1.0.0-next.20"
-    mrmime "^1.0.0"
-    totalist "^1.0.0"
+    "@polka/url" "^1.0.0-next.24"
+    mrmime "^2.0.0"
+    totalist "^3.0.0"
 
 sisteransi@^1.0.5:
   version "1.0.5"
@@ -11350,13 +10761,13 @@ snapsvg@0.5.1:
     eve "~0.5.1"
 
 socket.io-client@^4.5.0:
-  version "4.7.0"
-  resolved "https://registry.npmjs.org/socket.io-client/-/socket.io-client-4.7.0.tgz#f869a41a2593bc36f058f3b46175024491d997b5"
-  integrity sha512-7Q8CeDrhuZzg4QLXl3tXlk5yb086oxYzehAVZRLiGCzCmtDneiHz1qHyyWcxhTgxXiokVpWQXoG/u60HoXSQew==
+  version "4.7.5"
+  resolved "https://registry.npmjs.org/socket.io-client/-/socket.io-client-4.7.5.tgz#919be76916989758bdc20eec63f7ee0ae45c05b7"
+  integrity sha512-sJ/tqHOCe7Z50JCBCXrsY3I2k03iOiUe+tj1OmKeD2lXPiGH/RUCdTZFoqVyN7l1MnpIzPrGtLcijffmeouNlQ==
   dependencies:
     "@socket.io/component-emitter" "~3.1.0"
     debug "~4.3.2"
-    engine.io-client "~6.5.0"
+    engine.io-client "~6.5.2"
     socket.io-parser "~4.2.4"
 
 socket.io-parser@~4.2.4:
@@ -11376,12 +10787,21 @@ socks-proxy-agent@^7.0.0:
     debug "^4.3.3"
     socks "^2.6.2"
 
-socks@^2.6.2:
-  version "2.7.1"
-  resolved "https://registry.npmjs.org/socks/-/socks-2.7.1.tgz#d8e651247178fde79c0663043e07240196857d55"
-  integrity sha512-7maUZy1N7uo6+WVEX6psASxtNlKaNVMlGQKkG/63nEDdLOWNbiUMoLK7X4uYoLhQstau72mLgfEWcXcwsaHbYQ==
+socks-proxy-agent@^8.0.3:
+  version "8.0.3"
+  resolved "https://registry.npmjs.org/socks-proxy-agent/-/socks-proxy-agent-8.0.3.tgz#6b2da3d77364fde6292e810b496cb70440b9b89d"
+  integrity sha512-VNegTZKhuGq5vSD6XNKlbqWhyt/40CgoEw8XxD6dhnm8Jq9IEa3nIa4HwnM8XOqU0CdB0BwWVXusqiFXfHB3+A==
+  dependencies:
+    agent-base "^7.1.1"
+    debug "^4.3.4"
+    socks "^2.7.1"
+
+"socks@^2.6.2", "socks@^2.7.1":
+  version "2.8.3"
+  resolved "https://registry.npmjs.org/socks/-/socks-2.8.3.tgz#1ebd0f09c52ba95a09750afe3f3f9f724a800cb5"
+  integrity sha512-l5x7VUUWbjVFbafGLxPWkYsHIhEvmF85tbIeFZWc8ZPtoMyybuEhL7Jye/ooC4/d48FgOjSJXgsF/AJPYCW8Zw==
   dependencies:
-    ip "^2.0.0"
+    ip-address "^9.0.5"
     smart-buffer "^4.2.0"
 
 sort-keys-length@^1.0.0:
@@ -11410,10 +10830,10 @@ source-list-map@^1.1.1:
   resolved "https://registry.npmjs.org/source-list-map/-/source-list-map-1.1.2.tgz#9889019d1024cce55cdc069498337ef6186a11a1"
   integrity sha512-FqR2O+cX+toUD3ULVIgTtiqYIqPnA62ehJD47mf4LG1PZCB+xmIa3gcTEhegGbP22aRPh88dJSdgDIolrvSxBQ==
 
-"source-map-js@>=0.6.2 <2.0.0", "source-map-js@^1.0.1", "source-map-js@^1.0.2":
-  version "1.0.2"
-  resolved "https://registry.npmjs.org/source-map-js/-/source-map-js-1.0.2.tgz#adbc361d9c62df380125e7f161f71c826f1e490c"
-  integrity sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw==
+"source-map-js@^1.0.1", "source-map-js@^1.2.0":
+  version "1.2.0"
+  resolved "https://registry.npmjs.org/source-map-js/-/source-map-js-1.2.0.tgz#16b809c162517b5b8c3e7dcd315a2a5c2612b2af"
+  integrity sha512-itJW8lvSA0TXEphiRoawsCksnlf8SyvmFzIhltqAHluXd88pkCd+cXJVHTDwdCr0IzwptSm035IHQktUu1QUMg==
 
 source-map-support@0.5.13:
   version "0.5.13"
@@ -11450,9 +10870,9 @@ spdx-correct@^3.0.0:
     spdx-license-ids "^3.0.0"
 
 spdx-exceptions@^2.1.0:
-  version "2.3.0"
-  resolved "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.3.0.tgz#3f28ce1a77a00372683eade4a433183527a2163d"
-  integrity sha512-/tTrYOC7PPI1nUAgx34hUpqXuyJG+DTHJTnIULG4rDygi4xu/tfgmq1e1cIRwRzwZgo4NLySi+ricLkZkw4i5A==
+  version "2.5.0"
+  resolved "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.5.0.tgz#5d607d27fc806f66d7b64a766650fa890f04ed66"
+  integrity sha512-PiU42r+xO4UbUS1buo3LPJkjlO7430Xn5SVAhdpzzsPHsjbYVflnnFdATgabnLude+Cqu25p6N+g2lw/PFsa4w==
 
 spdx-expression-parse@^3.0.0:
   version "3.0.1"
@@ -11463,9 +10883,9 @@ spdx-expression-parse@^3.0.0:
     spdx-license-ids "^3.0.0"
 
 spdx-license-ids@^3.0.0:
-  version "3.0.13"
-  resolved "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.13.tgz#7189a474c46f8d47c7b0da4b987bb45e908bd2d5"
-  integrity sha512-XkD+zwiqXHikFZm4AX/7JSCXA98U5Db4AFd5XUg/+9UNtnH75+Z9KxtpYiJZx36mUDVOwH83pl7yvCer6ewM3w==
+  version "3.0.17"
+  resolved "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.17.tgz#887da8aa73218e51a1d917502d79863161a93f9c"
+  integrity sha512-sh8PWc/ftMqAAdFiBu6Fy6JUOYjqDJBJvIhpfDMyHrr0Rbp5liZqd4TjtQ/RgfLjKFZb+LMx5hpml5qOWy0qvg==
 
 split.js@^1.5.10:
   version "1.6.5"
@@ -11477,26 +10897,38 @@ sprintf-js@1.1.2:
   resolved "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.1.2.tgz#da1765262bf8c0f571749f2ad6c26300207ae673"
   integrity sha512-VE0SOVEHCk7Qc8ulkWw3ntAzXuqf7S2lvwQaDLRnUeIEaKNQJzV6BwmLKhOqT61aGhfUMrXeaBk+oDGCzvhcug==
 
+sprintf-js@^1.1.3:
+  version "1.1.3"
+  resolved "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.1.3.tgz#4914b903a2f8b685d17fdf78a70e917e872e444a"
+  integrity sha512-Oo+0REFV59/rz3gfJNKQiBlwfHaSESl1pcGyABQsnnIfWOFt6JNj5gCog2U6MLZ//IGYD+nA8nI+mTShREReaA==
+
 sprintf-js@~1.0.2:
   version "1.0.3"
   resolved "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz#04e6926f662895354f3dd015203633b857297e2c"
   integrity sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==
 
 sql-formatter@^15.1.2:
-  version "15.1.2"
-  resolved "https://registry.npmjs.org/sql-formatter/-/sql-formatter-15.1.2.tgz#86df2592eedf6d422244e10e00a74380c22791b7"
-  integrity sha512-zBrLBclCNurCsQaO6yMvkXzHvv7eJPjiF8LIEQ5HdBV/x6UuWIZwqss3mlZ/6HLj+VYhFKeHpQnyLuZWG2agKQ==
+  version "15.3.0"
+  resolved "https://registry.npmjs.org/sql-formatter/-/sql-formatter-15.3.0.tgz#d6daec93b5d3fd053f40295a306f5440cc578849"
+  integrity sha512-1aDYVEX+dwOSCkRYns4HEGupRZoaivcsNpU4IzR+MVC+cWFYK9/dce7pr4aId4+ED2iK9PNs3j1Vdf8C+SIvDg==
   dependencies:
     argparse "^2.0.1"
     get-stdin "=8.0.0"
     nearley "^2.20.1"
 
 ssri@^10.0.0:
-  version "10.0.4"
-  resolved "https://registry.npmjs.org/ssri/-/ssri-10.0.4.tgz#5a20af378be586df139ddb2dfb3bf992cf0daba6"
-  integrity sha512-12+IR2CB2C28MMAw0Ncqwj5QbTcs0nGIhgJzYWzDkb21vWmfNI83KS4f3Ci6GI98WreIfG7o9UXp3C0qbpA8nQ==
+  version "10.0.5"
+  resolved "https://registry.npmjs.org/ssri/-/ssri-10.0.5.tgz#e49efcd6e36385196cb515d3a2ad6c3f0265ef8c"
+  integrity sha512-bSf16tAFkGeRlUNDjXu8FzaMQt6g2HZJrun7mtMbIPOddxt3GLMSz5VWUWcqTJUPfLEaDIepGxv+bYQW49596A==
   dependencies:
-    minipass "^5.0.0"
+    minipass "^7.0.3"
+
+ssri@^9.0.0:
+  version "9.0.1"
+  resolved "https://registry.npmjs.org/ssri/-/ssri-9.0.1.tgz#544d4c357a8d7b71a19700074b6883fcb4eae057"
+  integrity sha512-o57Wcn66jMQvfHG1FlYbWeZWW/dHZhJXjpIcTfXldXEk5nz5lStPo3mK0OJQfGR3RbZUlbISexbljkJzuEj/8Q==
+  dependencies:
+    minipass "^3.1.1"
 
 stable@^0.1.8:
   version "0.1.8"
@@ -11582,46 +11014,51 @@ string-length@^4.0.1:
     emoji-regex "^9.2.2"
     strip-ansi "^7.0.1"
 
-string.prototype.matchall@^4.0.8:
-  version "4.0.8"
-  resolved "https://registry.npmjs.org/string.prototype.matchall/-/string.prototype.matchall-4.0.8.tgz#3bf85722021816dcd1bf38bb714915887ca79fd3"
-  integrity sha512-6zOCOcJ+RJAQshcTvXPHoxoQGONa3e/Lqx90wUA+wEzX78sg5Bo+1tQo4N0pohS0erG9qtCqJDjNCQBjeWVxyg==
-  dependencies:
-    call-bind "^1.0.2"
-    define-properties "^1.1.4"
-    es-abstract "^1.20.4"
-    get-intrinsic "^1.1.3"
+string.prototype.matchall@^4.0.10:
+  version "4.0.11"
+  resolved "https://registry.npmjs.org/string.prototype.matchall/-/string.prototype.matchall-4.0.11.tgz#1092a72c59268d2abaad76582dccc687c0297e0a"
+  integrity sha512-NUdh0aDavY2og7IbBPenWqR9exH+E26Sv8e0/eTe1tltDGZL+GtBkDAnnyBtmekfK6/Dq3MkcGtzXFEd1LQrtg==
+  dependencies:
+    call-bind "^1.0.7"
+    define-properties "^1.2.1"
+    es-abstract "^1.23.2"
+    es-errors "^1.3.0"
+    es-object-atoms "^1.0.0"
+    get-intrinsic "^1.2.4"
+    gopd "^1.0.1"
     has-symbols "^1.0.3"
-    internal-slot "^1.0.3"
-    regexp.prototype.flags "^1.4.3"
-    side-channel "^1.0.4"
-
-string.prototype.trim@^1.2.7:
-  version "1.2.7"
-  resolved "https://registry.npmjs.org/string.prototype.trim/-/string.prototype.trim-1.2.7.tgz#a68352740859f6893f14ce3ef1bb3037f7a90533"
-  integrity sha512-p6TmeT1T3411M8Cgg9wBTMRtY2q9+PNy9EV1i2lIXUN/btt763oIfxwN3RR8VU6wHX8j/1CFy0L+YuThm6bgOg==
-  dependencies:
-    call-bind "^1.0.2"
-    define-properties "^1.1.4"
-    es-abstract "^1.20.4"
-
-string.prototype.trimend@^1.0.6:
-  version "1.0.6"
-  resolved "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.6.tgz#c4a27fa026d979d79c04f17397f250a462944533"
-  integrity sha512-JySq+4mrPf9EsDBEDYMOb/lM7XQLulwg5R/m1r0PXEFqrV0qHvl58sdTilSXtKOflCsK2E8jxf+GKC0T07RWwQ==
+    internal-slot "^1.0.7"
+    regexp.prototype.flags "^1.5.2"
+    set-function-name "^2.0.2"
+    side-channel "^1.0.6"
+
+string.prototype.trim@^1.2.9:
+  version "1.2.9"
+  resolved "https://registry.npmjs.org/string.prototype.trim/-/string.prototype.trim-1.2.9.tgz#b6fa326d72d2c78b6df02f7759c73f8f6274faa4"
+  integrity sha512-klHuCNxiMZ8MlsOihJhJEBJAiMVqU3Z2nEXWfWnIqjN0gEFS9J9+IxKozWWtQGcgoa1WUZzLjKPTr4ZHNFTFxw==
+  dependencies:
+    call-bind "^1.0.7"
+    define-properties "^1.2.1"
+    es-abstract "^1.23.0"
+    es-object-atoms "^1.0.0"
+
+string.prototype.trimend@^1.0.8:
+  version "1.0.8"
+  resolved "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.8.tgz#3651b8513719e8a9f48de7f2f77640b26652b229"
+  integrity sha512-p73uL5VCHCO2BZZ6krwwQE3kCzM7NKmis8S//xEC6fQonchbum4eP6kR4DLEjQFO3Wnj3Fuo8NM0kOSjVdHjZQ==
   dependencies:
-    call-bind "^1.0.2"
-    define-properties "^1.1.4"
-    es-abstract "^1.20.4"
+    call-bind "^1.0.7"
+    define-properties "^1.2.1"
+    es-object-atoms "^1.0.0"
 
-string.prototype.trimstart@^1.0.6:
-  version "1.0.6"
-  resolved "https://registry.npmjs.org/string.prototype.trimstart/-/string.prototype.trimstart-1.0.6.tgz#e90ab66aa8e4007d92ef591bbf3cd422c56bdcf4"
-  integrity sha512-omqjMDaY92pbn5HOX7f9IccLA+U1tA9GvtU4JrodiXFfYB7jPzzHpRzpglLAjtUV6bB557zwClJezTqnAiYnQA==
+string.prototype.trimstart@^1.0.8:
+  version "1.0.8"
+  resolved "https://registry.npmjs.org/string.prototype.trimstart/-/string.prototype.trimstart-1.0.8.tgz#7ee834dda8c7c17eff3118472bb35bfedaa34dde"
+  integrity sha512-UXSH262CSZY1tfu3G3Secr6uGLCFVPMhIqHjlgCUtCCcgihYc/xKs9djMTMUOb2j1mVSeU8EU6NWc/iQKU6Gfg==
   dependencies:
-    call-bind "^1.0.2"
-    define-properties "^1.1.4"
-    es-abstract "^1.20.4"
+    call-bind "^1.0.7"
+    define-properties "^1.2.1"
+    es-object-atoms "^1.0.0"
 
 string_decoder@^1.1.1:
   version "1.3.0"
@@ -11702,7 +11139,7 @@ strip-indent@^4.0.0:
   dependencies:
     min-indent "^1.0.1"
 
-"strip-json-comments@^3.1.0", "strip-json-comments@^3.1.1":
+strip-json-comments@^3.1.1:
   version "3.1.1"
   resolved "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz#31f1281b3832630434831c310c01cccda8cbe006"
   integrity sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==
@@ -11723,28 +11160,28 @@ strtok3@^6.2.4:
     peek-readable "^4.1.0"
 
 style-loader@^3.3.2:
-  version "3.3.3"
-  resolved "https://registry.npmjs.org/style-loader/-/style-loader-3.3.3.tgz#bba8daac19930169c0c9c96706749a597ae3acff"
-  integrity sha512-53BiGLXAcll9maCYtZi2RCQZKa8NQQai5C4horqKyRmHj9H7QmcUyucrH+4KW/gBQbXM2AsB0axoEcFZPlfPcw==
+  version "3.3.4"
+  resolved "https://registry.npmjs.org/style-loader/-/style-loader-3.3.4.tgz#f30f786c36db03a45cbd55b6a70d930c479090e7"
+  integrity sha512-0WqXzrsMTyb8yjZJHDqwmnwRJvhALK9LfRtRc6B4UTWe8AijYLZYZ9thuJTZc2VfQWINADW/j+LiJnfy2RoC1w==
 
 "style-mod@^4.0.0", "style-mod@^4.1.0":
-  version "4.1.0"
-  resolved "https://registry.npmjs.org/style-mod/-/style-mod-4.1.0.tgz#a313a14f4ae8bb4d52878c0053c4327fb787ec09"
-  integrity sha512-Ca5ib8HrFn+f+0n4N4ScTIA9iTOQ7MaGS1ylHcoVqW9J7w2w8PzN6g9gKmTYgGEBH8e120+RCmhpje6jC5uGWA==
+  version "4.1.2"
+  resolved "https://registry.npmjs.org/style-mod/-/style-mod-4.1.2.tgz#ca238a1ad4786520f7515a8539d5a63691d7bf67"
+  integrity sha512-wnD1HyVqpJUI2+eKZ+eo1UwghftP6yuFheBqqe+bWCotBjC2K1YnteJILRMs3SM4V/0dLEW1SC27MWP5y+mwmw==
 
-style-to-js@1.1.9:
-  version "1.1.9"
-  resolved "https://registry.npmjs.org/style-to-js/-/style-to-js-1.1.9.tgz#5bdc23ba7624016094a19d6ea90fa3f98bee34c4"
-  integrity sha512-6bkwhOlPOx+wKiHVlPTHjUqM4zDKv9pyccehB8zetZL0hhQ7MVp7UEWUsohjiMdxwhSsEdjMrEve+8qzUVmY4w==
+style-to-js@1.1.12:
+  version "1.1.12"
+  resolved "https://registry.npmjs.org/style-to-js/-/style-to-js-1.1.12.tgz#112dd054231e71643514013a4475d4649bb2b581"
+  integrity sha512-tv+/FkgNYHI2fvCoBMsqPHh5xovwiw+C3X0Gfnss/Syau0Nr3IqGOJ9XiOYXoPnToHVbllKFf5qCNFJGwFg5mg==
   dependencies:
-    style-to-object "1.0.4"
+    style-to-object "1.0.6"
 
-style-to-object@1.0.4:
-  version "1.0.4"
-  resolved "https://registry.npmjs.org/style-to-object/-/style-to-object-1.0.4.tgz#496fded508ce520eca13e738e8af33b8b5af98f2"
-  integrity sha512-KyNO6mfijxSnypdvEjeXlhvbGPSh0l1zBJp80n+ncBQvrEbSwBHwZCpo0xz6Q4AKSPfXowWwypCBAUAdfz3rFQ==
+style-to-object@1.0.6:
+  version "1.0.6"
+  resolved "https://registry.npmjs.org/style-to-object/-/style-to-object-1.0.6.tgz#0c28aed8be1813d166c60d962719b2907c26547b"
+  integrity sha512-khxq+Qm3xEyZfKd/y9L3oIWQimxuc4STrQKtQn8aSDRHb8mFgpukgX1hdzfrMEW6JCjyJ8p89x+IUMVnCBI1PA==
   dependencies:
-    inline-style-parser "0.2.2"
+    inline-style-parser "0.2.3"
 
 styled-components@^5.2.1:
   version "5.3.11"
@@ -11770,19 +11207,24 @@ stylehacks@^5.1.1:
     browserslist "^4.21.4"
     postcss-selector-parser "^6.0.4"
 
-stylehacks@^6.0.0:
-  version "6.0.0"
-  resolved "https://registry.npmjs.org/stylehacks/-/stylehacks-6.0.0.tgz#9fdd7c217660dae0f62e14d51c89f6c01b3cb738"
-  integrity sha512-+UT589qhHPwz6mTlCLSt/vMNTJx8dopeJlZAlBMJPWA3ORqu6wmQY7FBXf+qD+FsqoBJODyqNxOUP3jdntFRdw==
+stylehacks@^6.1.1:
+  version "6.1.1"
+  resolved "https://registry.npmjs.org/stylehacks/-/stylehacks-6.1.1.tgz#543f91c10d17d00a440430362d419f79c25545a6"
+  integrity sha512-gSTTEQ670cJNoaeIp9KX6lZmm8LJ3jPB5yJmX8Zq/wQxOsAFXV3qjWzHas3YYk1qesuVIyYWWUpZ0vSE/dTSGg==
   dependencies:
-    browserslist "^4.21.4"
-    postcss-selector-parser "^6.0.4"
+    browserslist "^4.23.0"
+    postcss-selector-parser "^6.0.16"
 
-"stylis@4.2.0", "stylis@^4.0.7":
+stylis@4.2.0:
   version "4.2.0"
   resolved "https://registry.npmjs.org/stylis/-/stylis-4.2.0.tgz#79daee0208964c8fe695a42fcffcac633a211a51"
   integrity sha512-Orov6g6BB1sDfYgzWfTHDOxamtX1bE/zo104Dh9e6fqJ3PooipYyfJ0pUmrZO2wAvO8YbEyeFrkV91XTsGMSrw==
 
+stylis@^4.0.7:
+  version "4.3.1"
+  resolved "https://registry.npmjs.org/stylis/-/stylis-4.3.1.tgz#ed8a9ebf9f76fe1e12d462f5cc3c4c980b23a7eb"
+  integrity sha512-EQepAV+wMsIaGVGX1RECzgrcqRRU/0sYOHkeLsZ3fzHaHXZy4DaOOX0vOlGQdlsjkh3mFHAIlVimpwAs4dslyQ==
+
 subarg@^1.0.0:
   version "1.0.0"
   resolved "https://registry.npmjs.org/subarg/-/subarg-1.0.0.tgz#f62cf17581e996b48fc965699f54c06ae268b8d2"
@@ -11872,15 +11314,16 @@ svgo@^2.7.0:
     picocolors "^1.0.0"
     stable "^0.1.8"
 
-svgo@^3.0.2:
-  version "3.0.2"
-  resolved "https://registry.npmjs.org/svgo/-/svgo-3.0.2.tgz#5e99eeea42c68ee0dc46aa16da093838c262fe0a"
-  integrity sha512-Z706C1U2pb1+JGP48fbazf3KxHrWOsLme6Rv7imFBn5EnuanDW1GPaA/P1/dvObE670JDePC3mnj0k0B7P0jjQ==
+"svgo@^3.0.2", "svgo@^3.2.0":
+  version "3.2.0"
+  resolved "https://registry.npmjs.org/svgo/-/svgo-3.2.0.tgz#7a5dff2938d8c6096e00295c2390e8e652fa805d"
+  integrity sha512-4PP6CMW/V7l/GmKRKzsLR8xxjdHTV4IMvhTnpuHwwBazSIlw5W/5SmPjN8Dwyt7lKbSJrRDgp4t9ph0HgChFBQ==
   dependencies:
     "@trysound/sax" "0.2.0"
     commander "^7.2.0"
     css-select "^5.1.0"
-    css-tree "^2.2.1"
+    css-tree "^2.3.1"
+    css-what "^6.1.0"
     csso "^5.0.5"
     picocolors "^1.0.0"
 
@@ -11901,7 +11344,7 @@ syntax-error@^1.1.1:
   dependencies:
     acorn-node "^1.2.0"
 
-"tapable@^2.1.1", "tapable@^2.2.0":
+"tapable@^2.1.1", "tapable@^2.2.0", "tapable@^2.2.1":
   version "2.2.1"
   resolved "https://registry.npmjs.org/tapable/-/tapable-2.2.1.tgz#1967a73ef4060a82f12ab96af86d52fdb76eeca0"
   integrity sha512-GNzQvQTOIP6RyTfE2Qxb8ZVlNmw0n88vp1szwWRimP02mnTsx3Wtn5qRdqY9w2XduFNUgvOwhNnQsjwCp+kqaQ==
@@ -11920,9 +11363,9 @@ tar-stream@^1.5.2:
     xtend "^4.0.0"
 
 "tar@^6.1.11", "tar@^6.1.2":
-  version "6.1.15"
-  resolved "https://registry.npmjs.org/tar/-/tar-6.1.15.tgz#c9738b0b98845a3b344d334b8fa3041aaba53a69"
-  integrity sha512-/zKt9UyngnxIT/EAGYuxaMYgOIJiP81ab9ZfkILq4oNLPFX50qyYmu7jRj9qeXoxmJHjGlbH0+cm2uy1WCs10A==
+  version "6.2.1"
+  resolved "https://registry.npmjs.org/tar/-/tar-6.2.1.tgz#717549c541bc3c2af15751bea94b1dd068d4b03a"
+  integrity sha512-DZ4yORTwrbTj/7MZYq2w+/ZFdI6OZ/f9SFHR+71gIVUZhOQPHzVCLpvRnPgyaMpfWxxk/4ONva3GQSyNIKRv6A==
   dependencies:
     chownr "^2.0.0"
     fs-minipass "^2.0.0"
@@ -11944,21 +11387,21 @@ tempfile@^2.0.0:
     temp-dir "^1.0.0"
     uuid "^3.0.1"
 
-"terser-webpack-plugin@^5.1.1", "terser-webpack-plugin@^5.3.7":
-  version "5.3.9"
-  resolved "https://registry.npmjs.org/terser-webpack-plugin/-/terser-webpack-plugin-5.3.9.tgz#832536999c51b46d468067f9e37662a3b96adfe1"
-  integrity sha512-ZuXsqE07EcggTWQjXUj+Aot/OMcD0bMKGgF63f7UxYcu5/AJF53aIpK1YoP5xR9l6s/Hy2b+t1AM0bLNPRuhwA==
+"terser-webpack-plugin@^5.1.1", "terser-webpack-plugin@^5.3.10":
+  version "5.3.10"
+  resolved "https://registry.npmjs.org/terser-webpack-plugin/-/terser-webpack-plugin-5.3.10.tgz#904f4c9193c6fd2a03f693a2150c62a92f40d199"
+  integrity sha512-BKFPWlPDndPs+NGGCr1U59t0XScL5317Y0UReNrHaw9/FwhPENlq6bfgs+4yPfyP51vqC1bQ4rp1EfXW5ZSH9w==
   dependencies:
-    "@jridgewell/trace-mapping" "^0.3.17"
+    "@jridgewell/trace-mapping" "^0.3.20"
     jest-worker "^27.4.5"
     schema-utils "^3.1.1"
     serialize-javascript "^6.0.1"
-    terser "^5.16.8"
+    terser "^5.26.0"
 
-terser@^5.16.8:
-  version "5.18.1"
-  resolved "https://registry.npmjs.org/terser/-/terser-5.18.1.tgz#6d8642508ae9fb7b48768e48f16d675c89a78460"
-  integrity sha512-j1n0Ao919h/Ai5r43VAnfV/7azUYW43GPxK7qSATzrsERfW7+y2QW9Cp9ufnRF5CQUWbnLSo7UJokSWCqg4tsQ==
+terser@^5.26.0:
+  version "5.30.3"
+  resolved "https://registry.npmjs.org/terser/-/terser-5.30.3.tgz#f1bb68ded42408c316b548e3ec2526d7dd03f4d2"
+  integrity sha512-STdUgOUx8rLbMGO9IOwHLpCqolkDITFFQSMYYwKE1N2lY6MVSaeoi10z/EhWxRc6ybqoVmKSkhKYH/XUpl7vSA==
   dependencies:
     "@jridgewell/source-map" "^0.3.3"
     acorn "^8.8.2"
@@ -12039,10 +11482,10 @@ token-types@^4.1.1:
     "@tokenizer/token" "^0.3.0"
     ieee754 "^1.2.1"
 
-totalist@^1.0.0:
-  version "1.1.0"
-  resolved "https://registry.npmjs.org/totalist/-/totalist-1.1.0.tgz#a4d65a3e546517701e3e5c37a47a70ac97fe56df"
-  integrity sha512-gduQwd1rOdDMGxFG1gEvhV88Oirdo2p+KjoYFU7k2g+i7n6AFFbDQ5kMPUsW0pNbfQsB/cwXvT1i4Bue0s9g5g==
+totalist@^3.0.0:
+  version "3.0.1"
+  resolved "https://registry.npmjs.org/totalist/-/totalist-3.0.1.tgz#ba3a3d600c915b1a97872348f79c127475f6acf8"
+  integrity sha512-sf4i37nQ2LBx4m3wB74y+ubopq6W/dIzXg0FDGjsYnZHVa1Da8FH853wlL2gtUhg+xJXjfk3kUZS3BRoQeoQBQ==
 
 tough-cookie@^4.1.2:
   version "4.1.3"
@@ -12083,16 +11526,11 @@ tslib@^1.8.1:
   resolved "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz#cf2d38bdc34a134bcaf1091c41f6619e2f672d00"
   integrity sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==
 
-tslib@^2.0.3:
+"tslib@^2.0.3", "tslib@^2.4.0":
   version "2.6.2"
   resolved "https://registry.npmjs.org/tslib/-/tslib-2.6.2.tgz#703ac29425e7b37cd6fd456e92404d46d1f3e4ae"
   integrity sha512-AEYxH93jGFPn/a2iVAwW87VuUIkR1FVUKB77NwMF7nBTDkDrrT/Hpt/IrCJ0QXhW27jTBDcf5ZY7w6RiqTMw2Q==
 
-tslib@^2.4.0:
-  version "2.5.3"
-  resolved "https://registry.npmjs.org/tslib/-/tslib-2.5.3.tgz#24944ba2d990940e6e982c4bea147aba80209913"
-  integrity sha512-mSxlJJwl3BMEQCUNnxXBU9jP4JBktcEGhURcPR6VQVlnP0FdDEsIaz0C35dXNGLyRfrATNofF0F5p2KPxQgB+w==
-
 tsutils@^3.21.0:
   version "3.21.0"
   resolved "https://registry.npmjs.org/tsutils/-/tsutils-3.21.0.tgz#b48717d394cea6c1e096983eed58e9d61715b623"
@@ -12164,54 +11602,59 @@ type-fest@^0.21.3:
   resolved "https://registry.npmjs.org/type-fest/-/type-fest-1.4.0.tgz#e9fb813fe3bf1744ec359d55d1affefa76f14be1"
   integrity sha512-yGSza74xk0UG8k+pLh5oeoYirvIiWo5t0/o3zHHAO2tRDiZcxWP7fywNlXhqb6/r6sWvwi+RsyQMWhVLe4BVuA==
 
-typed-array-buffer@^1.0.0:
-  version "1.0.0"
-  resolved "https://registry.npmjs.org/typed-array-buffer/-/typed-array-buffer-1.0.0.tgz#18de3e7ed7974b0a729d3feecb94338d1472cd60"
-  integrity sha512-Y8KTSIglk9OZEr8zywiIHG/kmQ7KWyjseXs1CbSo8vC42w7hg2HgYTxSWwP0+is7bWDc1H+Fo026CpHFwm8tkw==
+typed-array-buffer@^1.0.2:
+  version "1.0.2"
+  resolved "https://registry.npmjs.org/typed-array-buffer/-/typed-array-buffer-1.0.2.tgz#1867c5d83b20fcb5ccf32649e5e2fc7424474ff3"
+  integrity sha512-gEymJYKZtKXzzBzM4jqa9w6Q1Jjm7x2d+sh19AdsD4wqnMPDYyvwpsIc2Q/835kHuo3BEQ7CjelGhfTsoBb2MQ==
   dependencies:
-    call-bind "^1.0.2"
-    get-intrinsic "^1.2.1"
-    is-typed-array "^1.1.10"
+    call-bind "^1.0.7"
+    es-errors "^1.3.0"
+    is-typed-array "^1.1.13"
 
-typed-array-byte-length@^1.0.0:
-  version "1.0.0"
-  resolved "https://registry.npmjs.org/typed-array-byte-length/-/typed-array-byte-length-1.0.0.tgz#d787a24a995711611fb2b87a4052799517b230d0"
-  integrity sha512-Or/+kvLxNpeQ9DtSydonMxCx+9ZXOswtwJn17SNLvhptaXYDJvkFFP5zbfU/uLmvnBJlI4yrnXRxpdWH/M5tNA==
+typed-array-byte-length@^1.0.1:
+  version "1.0.1"
+  resolved "https://registry.npmjs.org/typed-array-byte-length/-/typed-array-byte-length-1.0.1.tgz#d92972d3cff99a3fa2e765a28fcdc0f1d89dec67"
+  integrity sha512-3iMJ9q0ao7WE9tWcaYKIptkNBuOIcZCCT0d4MRvuuH88fEoEH62IuQe0OtraD3ebQEoTRk8XCBoknUNc1Y67pw==
   dependencies:
-    call-bind "^1.0.2"
+    call-bind "^1.0.7"
     for-each "^0.3.3"
-    has-proto "^1.0.1"
-    is-typed-array "^1.1.10"
+    gopd "^1.0.1"
+    has-proto "^1.0.3"
+    is-typed-array "^1.1.13"
 
-typed-array-byte-offset@^1.0.0:
-  version "1.0.0"
-  resolved "https://registry.npmjs.org/typed-array-byte-offset/-/typed-array-byte-offset-1.0.0.tgz#cbbe89b51fdef9cd6aaf07ad4707340abbc4ea0b"
-  integrity sha512-RD97prjEt9EL8YgAgpOkf3O4IF9lhJFr9g0htQkm0rchFp/Vx7LW5Q8fSXXub7BXAODyUQohRMyOc3faCPd0hg==
+typed-array-byte-offset@^1.0.2:
+  version "1.0.2"
+  resolved "https://registry.npmjs.org/typed-array-byte-offset/-/typed-array-byte-offset-1.0.2.tgz#f9ec1acb9259f395093e4567eb3c28a580d02063"
+  integrity sha512-Ous0vodHa56FviZucS2E63zkgtgrACj7omjwd/8lTEMEPFFyjfixMZ1ZXenpgCFBBt4EC1J2XsyVS2gkG0eTFA==
   dependencies:
-    available-typed-arrays "^1.0.5"
-    call-bind "^1.0.2"
+    available-typed-arrays "^1.0.7"
+    call-bind "^1.0.7"
     for-each "^0.3.3"
-    has-proto "^1.0.1"
-    is-typed-array "^1.1.10"
+    gopd "^1.0.1"
+    has-proto "^1.0.3"
+    is-typed-array "^1.1.13"
 
-typed-array-length@^1.0.4:
-  version "1.0.4"
-  resolved "https://registry.npmjs.org/typed-array-length/-/typed-array-length-1.0.4.tgz#89d83785e5c4098bec72e08b319651f0eac9c1bb"
-  integrity sha512-KjZypGq+I/H7HI5HlOoGHkWUUGq+Q0TPhQurLbyrVrvnKTBgzLhIJ7j6J/XTQOi0d1RjyZ0wdas8bKs2p0x3Ng==
+typed-array-length@^1.0.6:
+  version "1.0.6"
+  resolved "https://registry.npmjs.org/typed-array-length/-/typed-array-length-1.0.6.tgz#57155207c76e64a3457482dfdc1c9d1d3c4c73a3"
+  integrity sha512-/OxDN6OtAk5KBpGb28T+HZc2M+ADtvRxXrKKbUwtsLgdoxgX13hyy7ek6bFRl5+aBs2yZzB0c4CnQfAtVypW/g==
   dependencies:
-    call-bind "^1.0.2"
+    call-bind "^1.0.7"
     for-each "^0.3.3"
-    is-typed-array "^1.1.9"
+    gopd "^1.0.1"
+    has-proto "^1.0.3"
+    is-typed-array "^1.1.13"
+    possible-typed-array-names "^1.0.0"
 
 typedarray@^0.0.6:
   version "0.0.6"
   resolved "https://registry.npmjs.org/typedarray/-/typedarray-0.0.6.tgz#867ac74e3864187b1d3d47d996a78ec5c8830777"
   integrity sha512-/aCDEGatGvZ2BIk+HmLf4ifCJFwvKFNb9/JeZPMulfgFracn9QFcAf5GO8B/mweUjSoblS5In0cWhqpfs/5PQA==
 
-typescript@^3.2.2:
-  version "3.9.10"
-  resolved "https://registry.npmjs.org/typescript/-/typescript-3.9.10.tgz#70f3910ac7a51ed6bef79da7800690b19bf778b8"
-  integrity sha512-w6fIxVE/H1PkLKcCPsFqKE7Kv7QUwhU8qQY2MueZXWx5cPZdwFupLgKK3vntcK98BtNHZtAF4LA/yl2a7k8R6Q==
+typescript@^4.9.5:
+  version "4.9.5"
+  resolved "https://registry.npmjs.org/typescript/-/typescript-4.9.5.tgz#095979f9bcc0d09da324d58d03ce8f8374cbe65a"
+  integrity sha512-1FXk9E2Hm+QzZQ7z+McJiHL4NW1F2EzMu9Nq9i3zAaGqibafqYwCVU6WyWAuyQRRzOlxou8xZSyXLEN8oKj24g==
 
 uglify-js@^3.1.4:
   version "3.17.4"
@@ -12262,6 +11705,11 @@ underscore@^1.9.1:
   resolved "https://registry.npmjs.org/underscore/-/underscore-1.13.6.tgz#04786a1f589dc6c09f761fc5f45b89e935136441"
   integrity sha512-+A5Sja4HP1M08MaXya7p5LvjuM7K6q/2EaC0+iovj/wOcMsTzMvDFbasi/oSapiwOlt252IqsKqPjCl7huKS0A==
 
+undici-types@~5.26.4:
+  version "5.26.5"
+  resolved "https://registry.npmjs.org/undici-types/-/undici-types-5.26.5.tgz#bcd539893d00b56e964fd2657a4866b221a65617"
+  integrity sha512-JlCMO+ehdEIKqlFxk6IfVoAUVmgz7cU7zD/h9XZ0qzeosSHmUJVOzSQvvYSYWXkFXC+IfLKSIffhv0sVZup6pA==
+
 unicode-canonical-property-names-ecmascript@^2.0.0:
   version "2.0.0"
   resolved "https://registry.npmjs.org/unicode-canonical-property-names-ecmascript/-/unicode-canonical-property-names-ecmascript-2.0.0.tgz#301acdc525631670d39f6146e0e77ff6bbdebddc"
@@ -12285,6 +11733,13 @@ unicode-property-aliases-ecmascript@^2.0.0:
   resolved "https://registry.npmjs.org/unicode-property-aliases-ecmascript/-/unicode-property-aliases-ecmascript-2.1.0.tgz#43d41e3be698bd493ef911077c9b131f827e8ccd"
   integrity sha512-6t3foTQI9qne+OZoVQB/8x8rk2k1eVy1gRXhV3oFQ5T6R1dqQ1xtin3XqSlx3+ATBkliTaR/hHyJBm+LVPNM8w==
 
+unique-filename@^2.0.0:
+  version "2.0.1"
+  resolved "https://registry.npmjs.org/unique-filename/-/unique-filename-2.0.1.tgz#e785f8675a9a7589e0ac77e0b5c34d2eaeac6da2"
+  integrity sha512-ODWHtkkdx3IAR+veKxFV+VBkUMcN+FaqzUUd7IZzt+0zhDZFPFxhlqwPF3YQvMHx1TD0tdgYl+kuPnJ8E6ql7A==
+  dependencies:
+    unique-slug "^3.0.0"
+
 unique-filename@^3.0.0:
   version "3.0.0"
   resolved "https://registry.npmjs.org/unique-filename/-/unique-filename-3.0.0.tgz#48ba7a5a16849f5080d26c760c86cf5cf05770ea"
@@ -12292,6 +11747,13 @@ unique-filename@^3.0.0:
   dependencies:
     unique-slug "^4.0.0"
 
+unique-slug@^3.0.0:
+  version "3.0.0"
+  resolved "https://registry.npmjs.org/unique-slug/-/unique-slug-3.0.0.tgz#6d347cf57c8a7a7a6044aabd0e2d74e4d76dc7c9"
+  integrity sha512-8EyMynh679x/0gqE9fT9oilG+qEt+ibFyqjuVTsZn1+CMxH+XLlpvr2UZx4nVcCwTpx81nICr2JQFkM+HPLq4w==
+  dependencies:
+    imurmurhash "^0.1.4"
+
 unique-slug@^4.0.0:
   version "4.0.0"
   resolved "https://registry.npmjs.org/unique-slug/-/unique-slug-4.0.0.tgz#6bae6bb16be91351badd24cdce741f892a6532e3"
@@ -12304,14 +11766,6 @@ universalify@^0.2.0:
   resolved "https://registry.npmjs.org/universalify/-/universalify-0.2.0.tgz#6451760566fa857534745ab1dde952d1b1761be0"
   integrity sha512-CJ1QgKmNg3CwvAv/kOFmtnEN05f0D/cn9QntgNOQlQF9dgvVTHj3t+8JPdjqawCHk7V/KA+fbUqzZ9XWhcqPUg==
 
-update-browserslist-db@^1.0.11:
-  version "1.0.11"
-  resolved "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.0.11.tgz#9a2a641ad2907ae7b3616506f4b977851db5b940"
-  integrity sha512-dCwEFf0/oT85M1fHBg4F0jtLwJrutGoHSQXCh7u4o2t1drG+c0a9Flnqww6XUKSfQMPpJBRjU8d4RXB09qtvaA==
-  dependencies:
-    escalade "^3.1.1"
-    picocolors "^1.0.0"
-
 update-browserslist-db@^1.0.13:
   version "1.0.13"
   resolved "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.0.13.tgz#3c5e4f5c083661bd38ef64b6328c26ed6c8248c4"
@@ -12321,14 +11775,14 @@ update-browserslist-db@^1.0.13:
     picocolors "^1.0.0"
 
 uplot-react@^1.1.4:
-  version "1.1.4"
-  resolved "https://registry.npmjs.org/uplot-react/-/uplot-react-1.1.4.tgz#02b9918a199da9983fc0d375fb44e443749e2ac0"
-  integrity sha512-qO1UkQwjVKdj5vTm3O3yldvu1T6hwY4++rH4KznLhjqpnLdncq1zsRxq/zQz/HUHPVD0j7WBcEISbNM61JsuAQ==
+  version "1.1.5"
+  resolved "https://registry.npmjs.org/uplot-react/-/uplot-react-1.1.5.tgz#39a69e0de49dd66932ed4904206d85b7cd1ec10d"
+  integrity sha512-dXw8GB75MwagtxD3MNhotGUGl43TFLqPh6mrzCW2SCiE3WiXugvAbcYfiKAoYZrM/C7Tdbg03gIaG6g7porabQ==
 
 uplot@^1.6.24:
-  version "1.6.24"
-  resolved "https://registry.npmjs.org/uplot/-/uplot-1.6.24.tgz#dfa213fa7da92763261920ea972ed1a5f9f6af12"
-  integrity sha512-WpH2BsrFrqxkMu+4XBvc0eCDsRBhzoq9crttYeSI0bfxpzR5YoSVzZXOKFVWcVC7sp/aDXrdDPbDZGCtck2PVg==
+  version "1.6.30"
+  resolved "https://registry.npmjs.org/uplot/-/uplot-1.6.30.tgz#1622a96b7cb2e50622c74330823c321847cbc147"
+  integrity sha512-48oVVRALM/128ttW19F2a2xobc2WfGdJ0VJFX00099CfqbCTuML7L2OrTKxNzeFP34eo1+yJbqFSoFAp2u28/Q==
 
 uri-js@^4.2.2:
   version "4.4.1"
@@ -12379,12 +11833,12 @@ url-to-options@^1.0.1:
   integrity sha512-0kQLIzG4fdk/G5NONku64rSH/x32NOA39LVQqlK8Le6lvTF6GGRJpqaQFGgU+CLwySIqBSMdwYM0sYcW9f6P4A==
 
 url@~0.11.0:
-  version "0.11.1"
-  resolved "https://registry.npmjs.org/url/-/url-0.11.1.tgz#26f90f615427eca1b9f4d6a28288c147e2302a32"
-  integrity sha512-rWS3H04/+mzzJkv0eZ7vEDGiQbgquI1fGfOad6zKvgYQi1SzMmhl7c/DdRGxhaWrVH6z0qWITo8rpnxK/RfEhA==
+  version "0.11.3"
+  resolved "https://registry.npmjs.org/url/-/url-0.11.3.tgz#6f495f4b935de40ce4a0a52faee8954244f3d3ad"
+  integrity sha512-6hxOLGfZASQK/cijlZnZJTq8OXAkt/3YGfQX45vvMYXpZoo8NdWZcY73K108Jf759lS1Bv/8wXnHDTSz17dSRw==
   dependencies:
     punycode "^1.4.1"
-    qs "^6.11.0"
+    qs "^6.11.2"
 
 use-isomorphic-layout-effect@^1.1.2:
   version "1.1.2"
@@ -12401,12 +11855,12 @@ use-isomorphic-layout-effect@^1.1.2:
   resolved "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz#450d4dc9fa70de732762fbd2d4a28981419a0ccf"
   integrity sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==
 
-util@0.10.3:
-  version "0.10.3"
-  resolved "https://registry.npmjs.org/util/-/util-0.10.3.tgz#7afb1afe50805246489e3db7fe0ed379336ac0f9"
-  integrity sha512-5KiHfsmkqacuKjkRkdV7SsfDJ2EGiPsK92s2MhNSY0craxjTdKTtqKsJaCWp4LW33ZZ0OPUv1WO/TFvNQRiQxQ==
+util@^0.10.4:
+  version "0.10.4"
+  resolved "https://registry.npmjs.org/util/-/util-0.10.4.tgz#3aa0125bfe668a4672de58857d3ace27ecb76901"
+  integrity sha512-0Pm9hTQ3se5ll1XihRic3FDIku70C+iHUdT/W926rSgHV5QgXsYbKZN8MSC3tJtSkhuROzvsQjAaFENRXr+19A==
   dependencies:
-    inherits "2.0.1"
+    inherits "2.0.3"
 
 util@~0.12.0:
   version "0.12.5"
@@ -12425,13 +11879,13 @@ uuid@^3.0.1:
   integrity sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A==
 
 v8-to-istanbul@^9.0.1:
-  version "9.1.0"
-  resolved "https://registry.npmjs.org/v8-to-istanbul/-/v8-to-istanbul-9.1.0.tgz#1b83ed4e397f58c85c266a570fc2558b5feb9265"
-  integrity sha512-6z3GW9x8G1gd+JIIgQQQxXuiJtCXeAjp6RaPEPLv62mH3iPHPxV6W3robxtCzNErRo6ZwTmzWhsbNvjyEBKzKA==
+  version "9.2.0"
+  resolved "https://registry.npmjs.org/v8-to-istanbul/-/v8-to-istanbul-9.2.0.tgz#2ed7644a245cddd83d4e087b9b33b3e62dfd10ad"
+  integrity sha512-/EH/sDgxU2eGxajKdwLCDmQ4FWq+kpi3uCmBGpw1xJtnAxEjlD8j8PEiGWpCIMIs3ciNAgH0d3TTJiUkYzyZjA==
   dependencies:
     "@jridgewell/trace-mapping" "^0.3.12"
     "@types/istanbul-lib-coverage" "^2.0.1"
-    convert-source-map "^1.6.0"
+    convert-source-map "^2.0.0"
 
 valid-filename@^2.0.1:
   version "2.0.1"
@@ -12448,10 +11902,10 @@ validate-npm-package-license@^3.0.1:
     spdx-correct "^3.0.0"
     spdx-expression-parse "^3.0.0"
 
-vanilla-picker@^2.12.1:
-  version "2.12.1"
-  resolved "https://registry.npmjs.org/vanilla-picker/-/vanilla-picker-2.12.1.tgz#6e619eecf553891b8d2d042b745a23c91f19f34c"
-  integrity sha512-2qrEP9VYylKXbyzXKsbu2dferBTvqnlsr29XjHwFE+/MEp0VNj6oEUESLDtKZ7DWzGdSv1x/+ujqFZF+KsO3cg==
+vanilla-picker@^2.12.2:
+  version "2.12.3"
+  resolved "https://registry.npmjs.org/vanilla-picker/-/vanilla-picker-2.12.3.tgz#1cc47b641a2b9c9afc5ac3a9a02febace0f1b17a"
+  integrity sha512-qVkT1E7yMbUsB2mmJNFmaXMWE2hF8ffqzMMwe9zdAikd8u2VfnsVY2HQcOUi2F38bgbxzlJBEdS1UUhOXdF9GQ==
   dependencies:
     "@sphinxxxx/color-conversion" "^2.2.2"
 
@@ -12486,10 +11940,10 @@ walker@^1.0.8:
   dependencies:
     makeerror "1.0.12"
 
-watchpack@^2.4.0:
-  version "2.4.0"
-  resolved "https://registry.npmjs.org/watchpack/-/watchpack-2.4.0.tgz#fa33032374962c78113f93c7f2fb4c54c9862a5d"
-  integrity sha512-Lcvm7MGST/4fup+ifyKi2hjyIAwcdI4HRgtvTpIUxBRhB+RFtUh8XtDOxUfctVCnhVi+QQj49i91OyvzkJl6cg==
+watchpack@^2.4.1:
+  version "2.4.1"
+  resolved "https://registry.npmjs.org/watchpack/-/watchpack-2.4.1.tgz#29308f2cac150fa8e4c92f90e0ec954a9fed7fff"
+  integrity sha512-8wrBCMtVhqcXP2Sup1ctSkga6uc2Bx0IIvKyT7yTFier5AXHooSI+QyQQAtTb7+E0IUCCKyTFmXqdqgum2XWGg==
   dependencies:
     glob-to-regexp "^0.4.1"
     graceful-fs "^4.1.2"
@@ -12509,19 +11963,21 @@ webidl-conversions@^7.0.0:
   integrity sha512-VwddBukDzu71offAQR975unBIGqfKZpM+8ZX6ySk8nYhVoo5CYaZyzt3YBvYtRtO+aoGlqxPg/B87NGVZ/fu6g==
 
 webpack-bundle-analyzer@^4.8.0:
-  version "4.9.0"
-  resolved "https://registry.npmjs.org/webpack-bundle-analyzer/-/webpack-bundle-analyzer-4.9.0.tgz#fc093c4ab174fd3dcbd1c30b763f56d10141209d"
-  integrity sha512-+bXGmO1LyiNx0i9enBu3H8mv42sj/BJWhZNFwjz92tVnBa9J3JMGo2an2IXlEleoDOPn/Hofl5hr/xCpObUDtw==
+  version "4.10.2"
+  resolved "https://registry.npmjs.org/webpack-bundle-analyzer/-/webpack-bundle-analyzer-4.10.2.tgz#633af2862c213730be3dbdf40456db171b60d5bd"
+  integrity sha512-vJptkMm9pk5si4Bv922ZbKLV8UTT4zib4FPgXMhgzUny0bfDDkLXAVQs3ly3fS4/TN9ROFtb0NFrm04UXFE/Vw==
   dependencies:
     "@discoveryjs/json-ext" "0.5.7"
     acorn "^8.0.4"
     acorn-walk "^8.0.0"
-    chalk "^4.1.0"
     commander "^7.2.0"
+    debounce "^1.2.1"
+    escape-string-regexp "^4.0.0"
     gzip-size "^6.0.0"
-    lodash "^4.17.20"
+    html-escaper "^2.0.2"
     opener "^1.5.2"
-    sirv "^1.0.7"
+    picocolors "^1.0.0"
+    sirv "^2.0.3"
     ws "^7.3.1"
 
 webpack-cli@^4.5.0:
@@ -12543,11 +11999,12 @@ webpack-cli@^4.5.0:
     webpack-merge "^5.7.3"
 
 webpack-merge@^5.7.3:
-  version "5.9.0"
-  resolved "https://registry.npmjs.org/webpack-merge/-/webpack-merge-5.9.0.tgz#dc160a1c4cf512ceca515cc231669e9ddb133826"
-  integrity sha512-6NbRQw4+Sy50vYNTw7EyOn41OZItPiXB8GNv3INSoe3PSFaHJEz3SHTrYVaRm2LilNGnFUzh0FAwqPEmU/CwDg==
+  version "5.10.0"
+  resolved "https://registry.npmjs.org/webpack-merge/-/webpack-merge-5.10.0.tgz#a3ad5d773241e9c682803abf628d4cd62b8a4177"
+  integrity sha512-+4zXKdx7UnO+1jaN4l2lHVD+mFvnlZQP/6ljaJVb4SZiwIKeUnrT5l0gkT8z+n4hKpC+jpOv6O9R+gLtag7pSA==
   dependencies:
     clone-deep "^4.0.1"
+    flat "^5.0.2"
     wildcard "^2.0.0"
 
 webpack-sources@^0.2.3:
@@ -12564,33 +12021,33 @@ webpack-sources@^3.2.3:
   integrity sha512-/DyMEOrDgLKKIG0fmvtz+4dUX/3Ghozwgm6iPp8KRhvn+eQf9+Q7GWxVNMk3+uCPWfdXYC4ExGBckIXdFEfH1w==
 
 webpack@^5.88.2:
-  version "5.88.2"
-  resolved "https://registry.npmjs.org/webpack/-/webpack-5.88.2.tgz#f62b4b842f1c6ff580f3fcb2ed4f0b579f4c210e"
-  integrity sha512-JmcgNZ1iKj+aiR0OvTYtWQqJwq37Pf683dY9bVORwVbUrDhLhdn/PlO2sHsFHPkj7sHNQF3JwaAkp49V+Sq1tQ==
+  version "5.91.0"
+  resolved "https://registry.npmjs.org/webpack/-/webpack-5.91.0.tgz#ffa92c1c618d18c878f06892bbdc3373c71a01d9"
+  integrity sha512-rzVwlLeBWHJbmgTC/8TvAcu5vpJNII+MelQpylD4jNERPwpBJOE2lEcko1zJX3QJeLjTTAnQxn/OJ8bjDzVQaw==
   dependencies:
     "@types/eslint-scope" "^3.7.3"
-    "@types/estree" "^1.0.0"
-    "@webassemblyjs/ast" "^1.11.5"
-    "@webassemblyjs/wasm-edit" "^1.11.5"
-    "@webassemblyjs/wasm-parser" "^1.11.5"
+    "@types/estree" "^1.0.5"
+    "@webassemblyjs/ast" "^1.12.1"
+    "@webassemblyjs/wasm-edit" "^1.12.1"
+    "@webassemblyjs/wasm-parser" "^1.12.1"
     acorn "^8.7.1"
     acorn-import-assertions "^1.9.0"
-    browserslist "^4.14.5"
+    browserslist "^4.21.10"
     chrome-trace-event "^1.0.2"
-    enhanced-resolve "^5.15.0"
+    enhanced-resolve "^5.16.0"
     es-module-lexer "^1.2.1"
     eslint-scope "5.1.1"
     events "^3.2.0"
     glob-to-regexp "^0.4.1"
-    graceful-fs "^4.2.9"
+    graceful-fs "^4.2.11"
     json-parse-even-better-errors "^2.3.1"
     loader-runner "^4.2.0"
     mime-types "^2.1.27"
     neo-async "^2.6.2"
     schema-utils "^3.2.0"
     tapable "^2.1.1"
-    terser-webpack-plugin "^5.3.7"
-    watchpack "^2.4.0"
+    terser-webpack-plugin "^5.3.10"
+    watchpack "^2.4.1"
     webpack-sources "^3.2.3"
 
 whatwg-encoding@^2.0.0:
@@ -12643,37 +12100,25 @@ which-builtin-type@^1.1.3:
     which-typed-array "^1.1.9"
 
 which-collection@^1.0.1:
-  version "1.0.1"
-  resolved "https://registry.npmjs.org/which-collection/-/which-collection-1.0.1.tgz#70eab71ebbbd2aefaf32f917082fc62cdcb70906"
-  integrity sha512-W8xeTUwaln8i3K/cY1nGXzdnVZlidBcagyNFtBdD5kxnb4TvGKR7FfSIS3mYpwWS1QUCutfKz8IY8RjftB0+1A==
-  dependencies:
-    is-map "^2.0.1"
-    is-set "^2.0.1"
-    is-weakmap "^2.0.1"
-    is-weakset "^2.0.1"
-
-which-typed-array@^1.1.10:
-  version "1.1.11"
-  resolved "https://registry.npmjs.org/which-typed-array/-/which-typed-array-1.1.11.tgz#99d691f23c72aab6768680805a271b69761ed61a"
-  integrity sha512-qe9UWWpkeG5yzZ0tNYxDmd7vo58HDBc39mZ0xWWpolAGADdFOzkfamWLDxkOWcvHQKVmdTyQdLD4NOfjLWTKew==
+  version "1.0.2"
+  resolved "https://registry.npmjs.org/which-collection/-/which-collection-1.0.2.tgz#627ef76243920a107e7ce8e96191debe4b16c2a0"
+  integrity sha512-K4jVyjnBdgvc86Y6BkaLZEN933SwYOuBFkdmBu9ZfkcAbdVbpITnDmjvZ/aQjRXQrv5EPkTnD1s39GiiqbngCw==
   dependencies:
-    available-typed-arrays "^1.0.5"
-    call-bind "^1.0.2"
-    for-each "^0.3.3"
-    gopd "^1.0.1"
-    has-tostringtag "^1.0.0"
+    is-map "^2.0.3"
+    is-set "^2.0.3"
+    is-weakmap "^2.0.2"
+    is-weakset "^2.0.3"
 
-"which-typed-array@^1.1.2", "which-typed-array@^1.1.9":
-  version "1.1.9"
-  resolved "https://registry.npmjs.org/which-typed-array/-/which-typed-array-1.1.9.tgz#307cf898025848cf995e795e8423c7f337efbde6"
-  integrity sha512-w9c4xkx6mPidwp7180ckYWfMmvxpjlZuIudNtDf4N/tTAUB8VJbX25qZoAsrtGuYNnGw3pa0AXgbGKRB8/EceA==
+"which-typed-array@^1.1.13", "which-typed-array@^1.1.14", "which-typed-array@^1.1.15", "which-typed-array@^1.1.2", "which-typed-array@^1.1.9":
+  version "1.1.15"
+  resolved "https://registry.npmjs.org/which-typed-array/-/which-typed-array-1.1.15.tgz#264859e9b11a649b388bfaaf4f767df1f779b38d"
+  integrity sha512-oV0jmFtUky6CXfkqehVvBP/LSWJ2sy4vWMioiENyJLePrBO/yKyV9OyJySfAKosh+RYkIl5zJCNZ8/4JncrpdA==
   dependencies:
-    available-typed-arrays "^1.0.5"
-    call-bind "^1.0.2"
+    available-typed-arrays "^1.0.7"
+    call-bind "^1.0.7"
     for-each "^0.3.3"
     gopd "^1.0.1"
-    has-tostringtag "^1.0.0"
-    is-typed-array "^1.1.10"
+    has-tostringtag "^1.0.2"
 
 which@^1.2.9:
   version "1.3.1"
@@ -12689,6 +12134,13 @@ which@^1.2.9:
   dependencies:
     isexe "^2.0.0"
 
+which@^4.0.0:
+  version "4.0.0"
+  resolved "https://registry.npmjs.org/which/-/which-4.0.0.tgz#cd60b5e74503a3fbcfbf6cd6b4138a8bae644c1a"
+  integrity sha512-GlaYyEb07DPxYCKhKzplCWBJtvxZcZMrL+4UkrTSJHHPyZU4mYYTv3qaOe77H7EODLSSopAUFAc6W8U4yqvscg==
+  dependencies:
+    isexe "^3.1.1"
+
 wide-align@^1.1.5:
   version "1.1.5"
   resolved "https://registry.npmjs.org/wide-align/-/wide-align-1.1.5.tgz#df1d4c206854369ecf3c9a4898f1b23fbd9d15d3"
@@ -12708,11 +12160,6 @@ wkx@^0.5.0:
   dependencies:
     "@types/node" "*"
 
-word-wrap@^1.2.3:
-  version "1.2.3"
-  resolved "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.3.tgz#610636f6b1f703891bd34771ccb17fb93b47079c"
-  integrity sha512-Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ==
-
 wordwrap@^1.0.0:
   version "1.0.0"
   resolved "https://registry.npmjs.org/wordwrap/-/wordwrap-1.0.0.tgz#27584810891456a4171c8d0226441ade90cbcaeb"
@@ -12755,9 +12202,9 @@ ws@^7.3.1:
   integrity sha512-F+P9Jil7UiSKSkppIiD94dN07AwvFixvLIj1Og1Rl9GGMuNipJnV9JzjD6XuqmAeiswGvUmNLjr5cFuXwNS77Q==
 
 ws@^8.11.0:
-  version "8.13.0"
-  resolved "https://registry.npmjs.org/ws/-/ws-8.13.0.tgz#9a9fb92f93cf41512a0735c8f4dd09b8a1211cd0"
-  integrity sha512-x9vcZYTrFPC7aSIbj7sRCYo7L/Xb8Iy+pW0ng0wt2vCJv7M9HOMy0UoN3rr+IFC7hb7vXoqS+P9ktyLLLhO+LA==
+  version "8.16.0"
+  resolved "https://registry.npmjs.org/ws/-/ws-8.16.0.tgz#d1cd774f36fbc07165066a60e40323eab6446fd4"
+  integrity sha512-HS0c//TP7Ina87TfiPUz1rQzMhHrl/SG2guqRcTOIUYD2q8uhUdNHZYJUaQ8aTGPzCh+c6oawMKW35nFl1dxyQ==
 
 ws@~8.11.0:
   version "8.11.0"
@@ -12875,9 +12322,9 @@ yocto-queue@^0.1.0:
   integrity sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==
 
 zustand@^4.4.1:
-  version "4.4.1"
-  resolved "https://registry.npmjs.org/zustand/-/zustand-4.4.1.tgz#0cd3a3e4756f21811bd956418fdc686877e8b3b0"
-  integrity sha512-QCPfstAS4EBiTQzlaGP1gmorkh/UL1Leaj2tdj+zZCZ/9bm0WS7sI2wnfD5lpOszFqWJ1DcPnGoY8RDL61uokw==
+  version "4.5.2"
+  resolved "https://registry.npmjs.org/zustand/-/zustand-4.5.2.tgz#fddbe7cac1e71d45413b3682cdb47b48034c3848"
+  integrity sha512-2cN1tPkDVkwCy5ickKrI7vijSjPksFRfqS6237NzT0vqSsztTNnQdHw9mmN7uBdk3gceVXU0a+21jFzFzAc9+g==
   dependencies:
     use-sync-external-store "1.2.0"
 
diff --git a/pkgs/tools/admin/pulsarctl/default.nix b/pkgs/tools/admin/pulsarctl/default.nix
index 486cdeff021d..3599bcb09611 100644
--- a/pkgs/tools/admin/pulsarctl/default.nix
+++ b/pkgs/tools/admin/pulsarctl/default.nix
@@ -3,6 +3,7 @@
 , fetchFromGitHub
 , installShellFiles
 , nix-update-script
+, go
 , testers
 , pulsarctl
 }:
@@ -22,19 +23,17 @@ buildGoModule rec {
 
   nativeBuildInputs = [ installShellFiles ];
 
-  preBuild = let
-    buildVars = {
-      ReleaseVersion = version;
-      BuildTS = "None";
-      GitHash = src.rev;
-      GitBranch = "None";
-      GoVersion = "$(go version | egrep -o 'go[0-9]+[.][^ ]*')";
-    };
-    buildVarsFlags = lib.concatStringsSep " " (lib.mapAttrsToList (k: v: "-X github.com/streamnative/pulsarctl/pkg/cmdutils.${k}=${v}") buildVars);
-  in
-  ''
-    buildFlagsArray+=("-ldflags=${buildVarsFlags}")
-  '';
+  ldflags =
+    let
+      buildVars = {
+        ReleaseVersion = version;
+        BuildTS = "None";
+        GitHash = src.rev;
+        GitBranch = "None";
+        GoVersion = "go${go.version}";
+      };
+    in
+    (lib.mapAttrsToList (k: v: "-X github.com/streamnative/pulsarctl/pkg/cmdutils.${k}=${v}") buildVars);
 
   excludedPackages = [
     "./pkg/test"
@@ -73,4 +72,3 @@ buildGoModule rec {
     mainProgram = "pulsarctl";
   };
 }
-
diff --git a/pkgs/tools/admin/pulumi-bin/data.nix b/pkgs/tools/admin/pulumi-bin/data.nix
index 2c55ebde5b81..8f96441cadd7 100644
--- a/pkgs/tools/admin/pulumi-bin/data.nix
+++ b/pkgs/tools/admin/pulumi-bin/data.nix
@@ -1,64 +1,64 @@
 # DO NOT EDIT! This file is generated automatically by update.sh
 { }:
 {
-  version = "3.112.0";
+  version = "3.116.1";
   pulumiPkgs = {
     x86_64-linux = [
       {
-        url = "https://get.pulumi.com/releases/sdk/pulumi-v3.112.0-linux-x64.tar.gz";
-        sha256 = "1nlah21z2jm4yq3irqa1py9chwklzxdinpvlnhavnfh94rfrfanf";
+        url = "https://get.pulumi.com/releases/sdk/pulumi-v3.116.1-linux-x64.tar.gz";
+        sha256 = "1wywsjwllsa9y3v2bri7f4fmh1mr6mmamm0gkicq6p17m6g6xs27";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-aiven-v6.13.0-linux-amd64.tar.gz";
-        sha256 = "1brj8br2xwbsc36vzwq43rznic9v7jy5m16f4l5knisxxjlizp0v";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-aiven-v6.15.0-linux-amd64.tar.gz";
+        sha256 = "0mjlsq61s7avya96i7ga0i28pdbg64wb59wvdpivv2g3lb6xd6vb";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-akamai-v6.4.0-linux-amd64.tar.gz";
-        sha256 = "17c5960kcjzz3hl4nwh41qkpj67072cfs2bxbqin9b2b33x9bfvy";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-akamai-v7.1.0-linux-amd64.tar.gz";
+        sha256 = "18k4gn3b94h9hgj46xn5cv3002wy738ry6wrz57p4hnmklifzikj";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-alicloud-v3.51.0-linux-amd64.tar.gz";
-        sha256 = "0jcamc1askkwnml9f6nhvxaqjs23cxgzpy1vvpfywlz0sn87fdxc";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-alicloud-v3.55.1-linux-amd64.tar.gz";
+        sha256 = "1l8zz6ljvs6qg1r8kbcjrmz2h0nwrhggp1vm3wgxklm3dbsam9h9";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-artifactory-v6.4.2-linux-amd64.tar.gz";
-        sha256 = "1n4k7ni6bqc0vlk04sswp9zc3sgy3bxzrj060hwssq9c2nkzlf1d";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-artifactory-v6.7.5-linux-amd64.tar.gz";
+        sha256 = "0hcz97l8hz4zvy9yf4h0bz2prqqgcsmd9zp79iyfm0l8xryjl9br";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-auth0-v3.3.1-linux-amd64.tar.gz";
-        sha256 = "0984gpc5ds1bycvl1jwd3ifl6933vkd32w2mbyn3ik13wzxqm3q0";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-auth0-v3.3.2-linux-amd64.tar.gz";
+        sha256 = "17dyf0zy78qcf3cz5kw1k6pliwiny1184aksq3d45ny4ag15q5zr";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-aws-v6.28.2-linux-amd64.tar.gz";
-        sha256 = "1bdig7fc2dh5rc1m1i7q74m1kpal8cykhifxp71pg9qx3ddck8sf";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-aws-v6.36.0-linux-amd64.tar.gz";
+        sha256 = "0ab3jvmax93r0za0mwyprywpclhh1v1x6nlzk08djj39nb772aps";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-azuread-v5.47.2-linux-amd64.tar.gz";
-        sha256 = "0d2swa7irx1xr18gs4p3can1bp1pckk5cggfl5cdfkrz966rv8cb";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-azuread-v5.49.1-linux-amd64.tar.gz";
+        sha256 = "0bjjj7w1c16kpnzpy70d1ijkj6hiym1qp751hdigl5jg7r0kbqhh";
       }
       {
         url = "https://api.pulumi.com/releases/plugins/pulumi-resource-azuredevops-v3.0.0-linux-amd64.tar.gz";
         sha256 = "1d6i9p3lw2hzn2q7ja3cqh00vx7ihm5lhs6pg9468hag8wvk230g";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-azure-v5.70.0-linux-amd64.tar.gz";
-        sha256 = "10ijjwqabigr00qmzks4b4d5h8vq0w7w718gy2m5cpx9qm2yfmpy";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-azure-v5.77.1-linux-amd64.tar.gz";
+        sha256 = "0p2wvmblq34grvb5bnvwni0xj6d2v57cl086n3kifvnmc4qsmymh";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-cloudflare-v5.24.0-linux-amd64.tar.gz";
-        sha256 = "0ag8iqb9qd9wsm5kna9q8na12bz1zs4bpznbfs2sl8br26mvjwsr";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-cloudflare-v5.29.0-linux-amd64.tar.gz";
+        sha256 = "1pcril9c8ck99hg0k997vqiawk3iqwcsvg8x81b232pz8vzsxd5q";
       }
       {
         url = "https://api.pulumi.com/releases/plugins/pulumi-resource-consul-v3.11.2-linux-amd64.tar.gz";
         sha256 = "13gbn5jslqcm43ppp4015f7gcqpcvv7bqxydg41zq4xchiqrbwh9";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-datadog-v4.27.0-linux-amd64.tar.gz";
-        sha256 = "0x861p983val0ww0l0f7w75fw7rlhvpr300xng6klr5f1qwgpfqy";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-datadog-v4.28.0-linux-amd64.tar.gz";
+        sha256 = "18876q1n1q4482pfb6r2v8s2ckplq6i0ldf0v7r2m2fws00sin8i";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-digitalocean-v4.27.0-linux-amd64.tar.gz";
-        sha256 = "1p2xh52nrgkxzdg7pyyylf4zkh8cyn1663mdb8n93rx8fczq0cpl";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-digitalocean-v4.29.0-linux-amd64.tar.gz";
+        sha256 = "0sdmjaka9d399hgabib1p6kwlydcsgibj0jkz87mi7blj4jgrmsm";
       }
       {
         url = "https://api.pulumi.com/releases/plugins/pulumi-resource-docker-v4.5.3-linux-amd64.tar.gz";
@@ -69,92 +69,92 @@
         sha256 = "0hnardid0kbzy65dmn7vz8ddy5hq78nf2871zz6srf2hfyiv7qa4";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-fastly-v8.5.1-linux-amd64.tar.gz";
-        sha256 = "0vjd2y8h4m4j7v61wqwzrdgchqpz1nlbrvvrah06k8l9ci2hpml1";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-fastly-v8.7.0-linux-amd64.tar.gz";
+        sha256 = "0dzhzf9xcb261mcnw91g6hk4hbwhhzddiwjh5c1vh63agw9564gy";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-gcp-v7.16.0-linux-amd64.tar.gz";
-        sha256 = "0lr317d9qyp86sqwwipm65v2zjd9yffxwpwdjp5wvnq6z9simwq1";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-gcp-v7.23.0-linux-amd64.tar.gz";
+        sha256 = "0nq60scg19r6n56r1ki6zk8dgzd28dwf032f4r4fqbv604s9kp44";
       }
       {
         url = "https://api.pulumi.com/releases/plugins/pulumi-resource-github-v6.2.0-linux-amd64.tar.gz";
         sha256 = "00qdx09p6lh91ib99g54jk8sfy48f71j98gkqsjaipf2x7bl9g8j";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-gitlab-v6.10.0-linux-amd64.tar.gz";
-        sha256 = "0akczw3im97wr92n7mhaswjmm21hdllzkaax1dj3992x261phmxz";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-gitlab-v6.11.0-linux-amd64.tar.gz";
+        sha256 = "0955zm2xiprc7skdy2yxr0mkp4kijm3fdpfq6r1qzhqr1lxvdns1";
       }
       {
         url = "https://api.pulumi.com/releases/plugins/pulumi-resource-google-native-v0.32.0-linux-amd64.tar.gz";
         sha256 = "1zra1ck64gs4nwqf62ksfmpbx24lxw6vsgi47j4v8q051m89fgq3";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-hcloud-v1.18.0-linux-amd64.tar.gz";
-        sha256 = "0amqssx1kr1744fr07pjyj374zlx9i2i0b28ylivwxmw0h739zys";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-hcloud-v1.19.1-linux-amd64.tar.gz";
+        sha256 = "1hjg23ah9v20kfi08cln76akvldn93s24rcsx7dilsz2hiw4qr9x";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-kubernetes-v4.9.1-linux-amd64.tar.gz";
-        sha256 = "037ryw3w82pg9jvym5ha2l65gx693mn42ffqg3nb1bh8pc5m688d";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-kubernetes-v4.11.0-linux-amd64.tar.gz";
+        sha256 = "1cjl499sjlskf0bs56vfwh9pramp653l732bzy7vbjci4rm5x3qv";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-linode-v4.17.0-linux-amd64.tar.gz";
-        sha256 = "159smvq9yscs3ks0f32rq4ff257ym7n47pn0vqhdsyndiy7qsly8";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-linode-v4.19.1-linux-amd64.tar.gz";
+        sha256 = "0ggf8233d2979kmydkm83wxcwwgz8jfxgwf48g6rrcq9a2pgiz9m";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-mailgun-v3.5.2-linux-amd64.tar.gz";
-        sha256 = "1p4wmjlcds0pa1gylw9xrl39msk91crkk20nr7n3mldd9zar2njg";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-mailgun-v3.5.3-linux-amd64.tar.gz";
+        sha256 = "07y4bnkiw0yn3vbm6h4z44v4yq26mbnhsfh3fpp8jcfm3raqivsy";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-mysql-v3.2.3-linux-amd64.tar.gz";
-        sha256 = "010x3wa1c3cjccli0b1y25xd6jkvhdcxahfwda8jv31b5ilsv3zx";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-mysql-v3.2.4-linux-amd64.tar.gz";
+        sha256 = "0yv68ccyzi7hv2xaa8sybg4mf5qc7wa25kjziy2fdfsjyl8fn6ps";
       }
       {
         url = "https://api.pulumi.com/releases/plugins/pulumi-resource-openstack-v3.15.2-linux-amd64.tar.gz";
         sha256 = "1cw4ajl3h9xxysgyf9n1n8n9cdzwc7kpb263hs7k8i0yk1vfvcsx";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-postgresql-v3.11.0-linux-amd64.tar.gz";
-        sha256 = "14blk6gfdxjr1l3gxfj3f1ljz66yi8z35lva3fy75fs5gy6z1wnb";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-postgresql-v3.11.1-linux-amd64.tar.gz";
+        sha256 = "01qqxxap2cmvgc0msajxdsr7ddpw9ly1ms70fzb4vk98dr9q7lpr";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-random-v4.16.0-linux-amd64.tar.gz";
-        sha256 = "1wvdncw149ch6hi3fw7fibk78j2clbxlwmf4hivai7zhh8ikg1nq";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-random-v4.16.1-linux-amd64.tar.gz";
+        sha256 = "0rag94fgv2jgpbgb1caj3i23zzvyjyvyc63asvi5889pf2yxyi4h";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-snowflake-v0.50.2-linux-amd64.tar.gz";
-        sha256 = "1fihr9kilipd3lycl5m0vrf8l8658b1pm8mywsnk5wlksk1bf665";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-snowflake-v0.53.0-linux-amd64.tar.gz";
+        sha256 = "00b675jp3jggg2scx37khrl35wyma0ncn3cqmn631b90rbnk2dc5";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-spotinst-v3.71.0-linux-amd64.tar.gz";
-        sha256 = "00j57x7rap6fbc9h67f44jjnds7asrlb3lqxwcfis77wwpxlz7dm";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-spotinst-v3.77.0-linux-amd64.tar.gz";
+        sha256 = "0avgx6b6s1jffn4dr2bvsicsi6j48hxfg1k7nsyklbcdwvv6b96j";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-sumologic-v0.20.3-linux-amd64.tar.gz";
-        sha256 = "1a0ymll7ba2rm4cf4mrx3plg5b6gjnn121cwwvdrvh6lh2s8wpfg";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-sumologic-v0.21.0-linux-amd64.tar.gz";
+        sha256 = "092pr29pf29wms697cdp93lp9772bg07sj2290a9ypf26yhr5dq7";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-tailscale-v0.15.0-linux-amd64.tar.gz";
-        sha256 = "19z0adq7dy7cvfkbi8xl3wq1shm4rjswjslnfq5fflyky8pgjyy3";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-tailscale-v0.16.0-linux-amd64.tar.gz";
+        sha256 = "106mc4lc5j16wkwykn8336v135y3zmx6b80q7292jjryh16pl7mk";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-tls-v5.0.2-linux-amd64.tar.gz";
-        sha256 = "03gwkywb9gb9456mfm1rp690g44rhk3w4awr4hb0bl7m8ky8h6id";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-tls-v5.0.3-linux-amd64.tar.gz";
+        sha256 = "0sy0fm73h5rv7jilj6dcyf2244hws8j4ayb3scr4ranckn05dpm1";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-vault-v6.0.0-linux-amd64.tar.gz";
-        sha256 = "11d2i915z91rzh42pk9j7dvri3f00ck65p2fy8l5kicvalfnhfi2";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-vault-v6.1.0-linux-amd64.tar.gz";
+        sha256 = "1g52p8y82af5865plvykpca6im4ini7xm679sbkigv6lfjfd5mpq";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-venafi-v1.7.0-linux-amd64.tar.gz";
-        sha256 = "0w7cgafkz1r55bz8n51v2rqhmmxzrf7ma60awzlfd2apyihghxyp";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-venafi-v1.9.0-linux-amd64.tar.gz";
+        sha256 = "19ag7ca5c1cnhpc3rxdy5rm5gavazjnrjh7hzpbysdmckzbc28ff";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-vsphere-v4.10.0-linux-amd64.tar.gz";
-        sha256 = "0j3g5d94x5hawlrvr2iya4l0lsqjvszkgrgwppna6cn5mqjpx7v0";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-vsphere-v4.10.1-linux-amd64.tar.gz";
+        sha256 = "0qr4ymmnhc51grsnpyv75kdx4bpvad7n1y9fzgk3vagaws0lypih";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-wavefront-v3.1.1-linux-amd64.tar.gz";
-        sha256 = "0ghxcipyz6j3fmawi5bpkz1mdpcdg046nib2w90r26dbidi4l3f3";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-wavefront-v3.1.2-linux-amd64.tar.gz";
+        sha256 = "11bflxrl40d81prqmcxl0z9sxh66jzi8wdh5qm6ww913p6adkb5p";
       }
       {
         url = "https://api.pulumi.com/releases/plugins/pulumi-resource-yandex-v0.13.0-linux-amd64.tar.gz";
@@ -163,60 +163,60 @@
     ];
     x86_64-darwin = [
       {
-        url = "https://get.pulumi.com/releases/sdk/pulumi-v3.112.0-darwin-x64.tar.gz";
-        sha256 = "1bzifd8482saq8gb35qq8375dwwxqwdvc7wdqw3gvzkn6zhx1gf8";
+        url = "https://get.pulumi.com/releases/sdk/pulumi-v3.116.1-darwin-x64.tar.gz";
+        sha256 = "1vzbca3m040lv0mkxrxcwxyzv47xvpzjzf5f5dpf7jg6p9875imk";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-aiven-v6.13.0-darwin-amd64.tar.gz";
-        sha256 = "10n8lw5m8b8q3d1isldqbq2525la170s0qs260j8nhf1dwyvryhm";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-aiven-v6.15.0-darwin-amd64.tar.gz";
+        sha256 = "14zs1mslzy9h33pilqdnqcjpfz2v36hcfd14yrf1cs5mldhhrxhq";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-akamai-v6.4.0-darwin-amd64.tar.gz";
-        sha256 = "05x8allllb6spjkjf9lchk1pyprj356s0kgy2rdz24knvr2rxr3r";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-akamai-v7.1.0-darwin-amd64.tar.gz";
+        sha256 = "1lvdbyrcx4mpwm3y6dgxa3m9c5g5s3hhfx67qr2vrq1jwkfbc3ss";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-alicloud-v3.51.0-darwin-amd64.tar.gz";
-        sha256 = "1wwpg5fgvd9g374m24ihqvqcya6a86jc8z5avc72maw22039430p";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-alicloud-v3.55.1-darwin-amd64.tar.gz";
+        sha256 = "090m3609dzv396r6b7yriip66zxabj5ad2mx0ghc0bgj2gxq6ysj";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-artifactory-v6.4.2-darwin-amd64.tar.gz";
-        sha256 = "0kzi2w364jjqfkbag8n045ahzl2ls9dlwb3j3rsxbh857yzybj45";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-artifactory-v6.7.5-darwin-amd64.tar.gz";
+        sha256 = "1ga4wi18kiiv6hd9vc1h8kixk5d1qihy5lw4031rb44g1kx8xm0c";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-auth0-v3.3.1-darwin-amd64.tar.gz";
-        sha256 = "0369vlly2x6sl59b4qha55yhhyjjpx38vlkmsbbqzla3da7zabf0";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-auth0-v3.3.2-darwin-amd64.tar.gz";
+        sha256 = "06wrd619fi924r1wm66pj93q2j8kb9y7bmjf9sxankq2ma28slgk";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-aws-v6.28.2-darwin-amd64.tar.gz";
-        sha256 = "1fxffr1gs79q7jzm1280hl9bjvn0lj3xvism9hg1245n9az3ja3z";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-aws-v6.36.0-darwin-amd64.tar.gz";
+        sha256 = "1akqb2da35fjv1qw35z1zcqxs1a3ida6a9avkkm46ng7c29s23pa";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-azuread-v5.47.2-darwin-amd64.tar.gz";
-        sha256 = "1bjvbqdhd49ayxcv60rii4y3ngafjfzz0w9flra9wkh8hv8z1xxz";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-azuread-v5.49.1-darwin-amd64.tar.gz";
+        sha256 = "1fqginvky4afnyjw6w3mk6arqjxzdiri7g2ccz8wsvpsidq44d86";
       }
       {
         url = "https://api.pulumi.com/releases/plugins/pulumi-resource-azuredevops-v3.0.0-darwin-amd64.tar.gz";
         sha256 = "1gzb7srxdzz1vhrzzzfxahkzr26b3smd62l70dwn605cich3vwyw";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-azure-v5.70.0-darwin-amd64.tar.gz";
-        sha256 = "0cdywjswf5mzlf079pvjy51qhxcc2sajpz3i7s4y047sbw6b5k8m";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-azure-v5.77.1-darwin-amd64.tar.gz";
+        sha256 = "0wabgypwphidaij94wrij0fvmmhrdp2z5rhjmkn2kffx0iz340hd";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-cloudflare-v5.24.0-darwin-amd64.tar.gz";
-        sha256 = "1d5pgj8bq7psia93ks99wwqdkgv8xjb8ilx0fyl54z4bywzdhz8k";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-cloudflare-v5.29.0-darwin-amd64.tar.gz";
+        sha256 = "0ih4qli4yj109w662l0jp8mpx69p1rchb5pccdc2sing6mx6ql9i";
       }
       {
         url = "https://api.pulumi.com/releases/plugins/pulumi-resource-consul-v3.11.2-darwin-amd64.tar.gz";
         sha256 = "0ldyy3c6qapha189jpb0lrmwq8brz9hip3lkl16xihmwgxpakqv3";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-datadog-v4.27.0-darwin-amd64.tar.gz";
-        sha256 = "0nnp4nq5sj85rf33qqn7dgfva1d2l5i8vs7flac1mj9sdxqdz46b";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-datadog-v4.28.0-darwin-amd64.tar.gz";
+        sha256 = "1k16z181nd6h3fabxhg1qrcrjnwppbhlqwqks99p7z72zlgx02kp";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-digitalocean-v4.27.0-darwin-amd64.tar.gz";
-        sha256 = "1r09n56kc0ada99n1g93i23shi2csjia5jiq5jkzkb5wr0wg4syb";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-digitalocean-v4.29.0-darwin-amd64.tar.gz";
+        sha256 = "1z1ai3i41g2nay21z9sq47f7ilnhcjbdzshxx3n8iy9mn3yrsyaw";
       }
       {
         url = "https://api.pulumi.com/releases/plugins/pulumi-resource-docker-v4.5.3-darwin-amd64.tar.gz";
@@ -227,92 +227,92 @@
         sha256 = "1m5lh59h7nck1flzxs9m4n0ag0klk3jmnpf7hc509vffxs89xnjq";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-fastly-v8.5.1-darwin-amd64.tar.gz";
-        sha256 = "1c5wf2ksp7f02x82swjd7gq1d072j4zsyiyllrrazyvv8310zyig";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-fastly-v8.7.0-darwin-amd64.tar.gz";
+        sha256 = "1a582mqhbr03ab1jlfb0fp9r087caihlkw6np5il77jraz97cqsh";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-gcp-v7.16.0-darwin-amd64.tar.gz";
-        sha256 = "025j84z08lj6y79rl0lzrdnjc258kr9klwv37n4bv6m8zwc5lq8n";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-gcp-v7.23.0-darwin-amd64.tar.gz";
+        sha256 = "0cqxvr3z3lwfpmifjbcl1898qs2wqjk8lr375cjppsck16pcizzp";
       }
       {
         url = "https://api.pulumi.com/releases/plugins/pulumi-resource-github-v6.2.0-darwin-amd64.tar.gz";
         sha256 = "0qp2mva4rqrahpb5bx02grxly9zq8s676hin2r161y0wy7afdgih";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-gitlab-v6.10.0-darwin-amd64.tar.gz";
-        sha256 = "09bi9dfa8snfsn9r5a62vqxffsb6gaz8yccb91xr44dq4jmm1f44";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-gitlab-v6.11.0-darwin-amd64.tar.gz";
+        sha256 = "0yxmj0amdvfgn8mnz7p9z843g503sr8flg4kykl3lvh1r0nwj85v";
       }
       {
         url = "https://api.pulumi.com/releases/plugins/pulumi-resource-google-native-v0.32.0-darwin-amd64.tar.gz";
         sha256 = "0ddd0pgpyywq291r9q8w6bn41r2px595017iihx4n2cnb1c4v6d5";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-hcloud-v1.18.0-darwin-amd64.tar.gz";
-        sha256 = "0k1f4rimh8j725yv6nfvgm41lgkmmpf932kpkas6g3wiqks6fdpj";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-hcloud-v1.19.1-darwin-amd64.tar.gz";
+        sha256 = "17d2j4wf08q818mhb1qlji1hb3b8900hx0yrpk43xnqwvfjsyyyh";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-kubernetes-v4.9.1-darwin-amd64.tar.gz";
-        sha256 = "0zydvslq83rr4ihrpxp7gyks08cgmdqwhxcjfyrr1yc24vcscg8x";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-kubernetes-v4.11.0-darwin-amd64.tar.gz";
+        sha256 = "0s1yv5cahsp94px0k00jhmh8g6yhjb231bfim3y9bqh13i7z6rir";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-linode-v4.17.0-darwin-amd64.tar.gz";
-        sha256 = "1yrcg8wrr0ikpg2za2a4l8zcix4r5kwbqhcw3v65saydlwqa29ny";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-linode-v4.19.1-darwin-amd64.tar.gz";
+        sha256 = "1jsy33m03raqvp51xdqic87nldmxlyki4rz0lcdfdf49dzg2pzxb";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-mailgun-v3.5.2-darwin-amd64.tar.gz";
-        sha256 = "1qbxbnp0yxw2w5pgpci9v991xa9zj3xsk93a31hdpnkxfz9aw8l4";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-mailgun-v3.5.3-darwin-amd64.tar.gz";
+        sha256 = "02ggykac6acylarljx0qg8i5b3k6apiz8njhcapfpw7my4whzzd7";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-mysql-v3.2.3-darwin-amd64.tar.gz";
-        sha256 = "1hrc3lrn7ry6p44f0d287z5nw754rwk0xlhr8zj5vx3xyx8jws34";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-mysql-v3.2.4-darwin-amd64.tar.gz";
+        sha256 = "04cmmgi5rxj9lbs5s3d4gzrngiw52gyvsb7pi8w7v6cpb9p8q3gx";
       }
       {
         url = "https://api.pulumi.com/releases/plugins/pulumi-resource-openstack-v3.15.2-darwin-amd64.tar.gz";
         sha256 = "0h71g1mmmz70bx5zs4jryngm2nghi5fjbp4ldwjhx4ymbf7ksm2w";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-postgresql-v3.11.0-darwin-amd64.tar.gz";
-        sha256 = "1lp9ga9yzz52dnpw3im32d5g8pai42wnj3c3r7acb48ndy2xw9g7";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-postgresql-v3.11.1-darwin-amd64.tar.gz";
+        sha256 = "1m255nwx3qzl3pcsm2mqwrpzg6rwb1yl5js7l0ra5hz066pw0wai";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-random-v4.16.0-darwin-amd64.tar.gz";
-        sha256 = "0xgcvika75bbyaabjxi1jzmv0w86i0nzixfc50x4crz0969qncz4";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-random-v4.16.1-darwin-amd64.tar.gz";
+        sha256 = "08xhlygac5516lyyrb8x5xx5fp3a918nk1afj6m7d1c6sswcw84s";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-snowflake-v0.50.2-darwin-amd64.tar.gz";
-        sha256 = "0n0yd8hg10qfxvb6y5hci60n3520w5pidjzw43ih35dj84f0y23s";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-snowflake-v0.53.0-darwin-amd64.tar.gz";
+        sha256 = "0nxfrkpmmcaw4y3kzmp0i9v848z1mjr9p1l5kj85hrdkdqq5m2c8";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-spotinst-v3.71.0-darwin-amd64.tar.gz";
-        sha256 = "02bj73adinnqxinnsdkncvc3yh95lax96n2g8fdammn06y718xsk";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-spotinst-v3.77.0-darwin-amd64.tar.gz";
+        sha256 = "1lr1r615jpld7k5szyd5ks48rkr2p0kn8jh3lnjbvs8v08prd8vz";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-sumologic-v0.20.3-darwin-amd64.tar.gz";
-        sha256 = "1513v3r6rwb11agv2sxgxfsi8r8dkna0v3dji7pr8mk4qjcg5xca";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-sumologic-v0.21.0-darwin-amd64.tar.gz";
+        sha256 = "0rp6iiby987q5mhpnk5a381zr6vipb9hnxmlk7kdwvflcc8va369";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-tailscale-v0.15.0-darwin-amd64.tar.gz";
-        sha256 = "10skdrdb9dsd4pkamwihf73laaif90dkfl8ixi6irf30rqihc2nf";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-tailscale-v0.16.0-darwin-amd64.tar.gz";
+        sha256 = "1n09gli1102jlmqxyh788gfwn9rhzw7iswj1n8xnx9qqxssjngl5";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-tls-v5.0.2-darwin-amd64.tar.gz";
-        sha256 = "0fqi83drpj5k5snms8863k4by9g7nl14zpvmjmriyjmmcd145f7a";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-tls-v5.0.3-darwin-amd64.tar.gz";
+        sha256 = "1yf2xhsxg08wk5flzj6m0ix8www5qh0xx1ak7kd7hhnidfvshhiy";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-vault-v6.0.0-darwin-amd64.tar.gz";
-        sha256 = "1qcv4i37by3c9f8lbrzhakmx5r1dkkh6iqnzx9v550vbmnlaa40d";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-vault-v6.1.0-darwin-amd64.tar.gz";
+        sha256 = "1w081nglskjx06i1a2vyhmcsxfnq0nvn75q99ykb46pd6k9kgblf";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-venafi-v1.7.0-darwin-amd64.tar.gz";
-        sha256 = "1pvbcyw1l2b27hn48klc2fj3is2y3z1dj90ac4kkqi2ag4xj45vx";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-venafi-v1.9.0-darwin-amd64.tar.gz";
+        sha256 = "07g2iys3w2r0giwakymb1n1bpwp812z93nskxbkwiw4zl8p6vr9v";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-vsphere-v4.10.0-darwin-amd64.tar.gz";
-        sha256 = "0yfk80y2dm0rk06q5m5sc159gryxbxp1gmbi4iwjcrpdra6vbm9v";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-vsphere-v4.10.1-darwin-amd64.tar.gz";
+        sha256 = "14sab80f21dnmga4garkh931gwrf2iclhby3vrywi6m80vwcnkkv";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-wavefront-v3.1.1-darwin-amd64.tar.gz";
-        sha256 = "1lypf3yisnf19ygkjy6fmdbzf4i4mi5jzq7yc16hrg3aq2g75rr5";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-wavefront-v3.1.2-darwin-amd64.tar.gz";
+        sha256 = "0ld6fcc75rkxi7ypb6azin9g0yda4zb1yi680jzg5jr7zb1v2i7x";
       }
       {
         url = "https://api.pulumi.com/releases/plugins/pulumi-resource-yandex-v0.13.0-darwin-amd64.tar.gz";
@@ -321,60 +321,60 @@
     ];
     aarch64-linux = [
       {
-        url = "https://get.pulumi.com/releases/sdk/pulumi-v3.112.0-linux-arm64.tar.gz";
-        sha256 = "05k0z838nf5c6g9cb5ydc1j3dsphj7w39nk59r6lnpb1c5zb2z6z";
+        url = "https://get.pulumi.com/releases/sdk/pulumi-v3.116.1-linux-arm64.tar.gz";
+        sha256 = "08lqdilywnpxgnag4qbcr4f454q3812cd177lfffv8zm44xzvgmx";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-aiven-v6.13.0-linux-arm64.tar.gz";
-        sha256 = "0i58mkl9y2hygfdcw1z0fzi7g2h8mpyq2sv1p6a1wpzwsd939yjn";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-aiven-v6.15.0-linux-arm64.tar.gz";
+        sha256 = "096zak0andzcywk5rz9dxbr593ixzzhqfqlffh11gp6q7j9xdy87";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-akamai-v6.4.0-linux-arm64.tar.gz";
-        sha256 = "0kb7hdciy8i91kmfndriav7sm05r1jkam7i634b5r6d7agdlvr2h";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-akamai-v7.1.0-linux-arm64.tar.gz";
+        sha256 = "0nr87qclkvn1281prikixvbq3mhkkiklci45vwshzqp7fr7pf3ph";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-alicloud-v3.51.0-linux-arm64.tar.gz";
-        sha256 = "1y02q2sqqaf73rjvmw72izzvks99h6521dwcdp6ir2i9klyj6air";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-alicloud-v3.55.1-linux-arm64.tar.gz";
+        sha256 = "1cz6wd28bv4xlz6jfq6pxa9a5bxrb9amxb149ksrg5ysp55c7jrp";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-artifactory-v6.4.2-linux-arm64.tar.gz";
-        sha256 = "06l0wv1cwxvfkz1srh0q10s1gx21h4vb6r9a0qbwd19hh4wzkd0l";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-artifactory-v6.7.5-linux-arm64.tar.gz";
+        sha256 = "08x6jsqw1r4h679v46bvnqcvbcwcq0icn5a319s8j6n80qspmaqp";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-auth0-v3.3.1-linux-arm64.tar.gz";
-        sha256 = "10iaa1w7a0xbp15hyfl3slksg7rss04jcchws1z3lqddfn5xdcf2";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-auth0-v3.3.2-linux-arm64.tar.gz";
+        sha256 = "16zbb652as85casz0yayg4vzrrya0r35l8z3vac31d2054bpp367";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-aws-v6.28.2-linux-arm64.tar.gz";
-        sha256 = "1vhgh9k4fqvh513fdmfy2n0lrp93nvrri7x7gnx70y559pykq8ym";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-aws-v6.36.0-linux-arm64.tar.gz";
+        sha256 = "0ic37v6nc6pi0ngk7j0rp9s1mk94f6igli0ak5dnyygbcpfs1d16";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-azuread-v5.47.2-linux-arm64.tar.gz";
-        sha256 = "0pzbsz7c6q9x3xfpcc8yb6d14hk514yr03p3nfsvmp2nb7224r6s";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-azuread-v5.49.1-linux-arm64.tar.gz";
+        sha256 = "1slsqr77i458f40i87cb49d05xnbgc01w419js5x7wfvzdcf04j7";
       }
       {
         url = "https://api.pulumi.com/releases/plugins/pulumi-resource-azuredevops-v3.0.0-linux-arm64.tar.gz";
         sha256 = "0s4pxkj1fni8c0r8v8kqzl7agcy93m71l8kpmb3630q4syddzmqb";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-azure-v5.70.0-linux-arm64.tar.gz";
-        sha256 = "021ph400xrim7ksqg1677gx04kms0nffrr7bz396rmkwj97qhajh";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-azure-v5.77.1-linux-arm64.tar.gz";
+        sha256 = "17lf18j0r7mq4rwmscrblp4b7xbq9zca55x9vn26rmmhgcsvzpd0";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-cloudflare-v5.24.0-linux-arm64.tar.gz";
-        sha256 = "0h0vl84lpjfrlzqf8dqwhwiimhl6y1lhp51lizwzfw3kyj7slc1g";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-cloudflare-v5.29.0-linux-arm64.tar.gz";
+        sha256 = "1p9xvwivl0dzvmgnlcbsak9s7qc3ys8i185690wiragj9f818nlf";
       }
       {
         url = "https://api.pulumi.com/releases/plugins/pulumi-resource-consul-v3.11.2-linux-arm64.tar.gz";
         sha256 = "03dx7sabps5dy79fwgp0msjbigaijxxjabdk2sprig6z25mvk91s";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-datadog-v4.27.0-linux-arm64.tar.gz";
-        sha256 = "1l95j1y7abbpylsxbsi7mi543qjhmg6i5cwdwmn5303dakkkgq2h";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-datadog-v4.28.0-linux-arm64.tar.gz";
+        sha256 = "1nnn6z6j76ky78jh5h1ii07hci041p6qsm7shg8k7fsmb1g0bkji";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-digitalocean-v4.27.0-linux-arm64.tar.gz";
-        sha256 = "1z0z7ksxbc8gil60c336hlpn13gxj49s9fcjsr1b4qx130ldccv3";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-digitalocean-v4.29.0-linux-arm64.tar.gz";
+        sha256 = "0zmdsy9x62a9zf1yc3g0c11dagp3653dsbqgp79cjq89n7y79289";
       }
       {
         url = "https://api.pulumi.com/releases/plugins/pulumi-resource-docker-v4.5.3-linux-arm64.tar.gz";
@@ -385,92 +385,92 @@
         sha256 = "111pia2f5xwkwaqs6p90ri29l5b3ivmahsa1bji4fwyyjyp22h4r";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-fastly-v8.5.1-linux-arm64.tar.gz";
-        sha256 = "1cx7b7nxmjng8pff84yf0jhdmnmld5g09a80999ah90p54xy4zww";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-fastly-v8.7.0-linux-arm64.tar.gz";
+        sha256 = "082v5hbfcdrjxd8b9w6g0zh0q6k6b5vlx1m7sjwqilalp58s5g2s";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-gcp-v7.16.0-linux-arm64.tar.gz";
-        sha256 = "108nrkskwl85jpppinx90zajd90zr5vqjpgi48jrihihwbfvxpms";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-gcp-v7.23.0-linux-arm64.tar.gz";
+        sha256 = "1krz5wazaav5hyrgssyqpgj69m3rx122pwjqh4s95i6c9mr2g0pr";
       }
       {
         url = "https://api.pulumi.com/releases/plugins/pulumi-resource-github-v6.2.0-linux-arm64.tar.gz";
         sha256 = "1495j84c92840h6w2rapag5698r6bm2mbcrwxgdnmnvc87r5kjms";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-gitlab-v6.10.0-linux-arm64.tar.gz";
-        sha256 = "0fbcms2vbx27sjr1qfr3qgdbipmqd5k6s52xfxkfwkys2lwq4xfr";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-gitlab-v6.11.0-linux-arm64.tar.gz";
+        sha256 = "09clraq9b81sv1p7m531kv7jlypvxcan4dw62gkq6ncwm9cdx1ll";
       }
       {
         url = "https://api.pulumi.com/releases/plugins/pulumi-resource-google-native-v0.32.0-linux-arm64.tar.gz";
         sha256 = "0d8m2krbzxjhfm82dgf8p4vm3kk9gk98l798q4ayjrddqqb4mxq4";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-hcloud-v1.18.0-linux-arm64.tar.gz";
-        sha256 = "1lhzfvnxlqzpmzwlnxk5j4zcf2n71igfb3i4f29yszg74a55ki5x";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-hcloud-v1.19.1-linux-arm64.tar.gz";
+        sha256 = "11winxlgf2p325xppp9xa0p2mhncj72xpcyxgz13wizk33saj649";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-kubernetes-v4.9.1-linux-arm64.tar.gz";
-        sha256 = "1r8ld65774vm1gacbf26alin9pa0c69gj2829gvv8ihhfavrqnyi";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-kubernetes-v4.11.0-linux-arm64.tar.gz";
+        sha256 = "021i7w1ysxplwrjd7mzsr0mmnrw4h5rnrwi33sirv0ryx7rsk94z";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-linode-v4.17.0-linux-arm64.tar.gz";
-        sha256 = "0fpz717a4w72yx15w00s3li96l7s2fjwx2q1vd9f87zya1flpfhx";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-linode-v4.19.1-linux-arm64.tar.gz";
+        sha256 = "0y0szv0mk97p5rw0khqzhfdjg91gdwqf00kjrx0wb0arhsqzf5hw";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-mailgun-v3.5.2-linux-arm64.tar.gz";
-        sha256 = "0i2kbzxf6dm7znn6h6hjshvrvj4gp1sl8rh3zb8cn2pz23vk34c6";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-mailgun-v3.5.3-linux-arm64.tar.gz";
+        sha256 = "12hfiwhxwj3ah0fbcagjmwm5fzp7qs8cxaygr3w7ajq4x7yfdadf";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-mysql-v3.2.3-linux-arm64.tar.gz";
-        sha256 = "1czrp700a4sdlxij8xgsl595fzg1s0k3pwnrwa2bl41xws9p65zy";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-mysql-v3.2.4-linux-arm64.tar.gz";
+        sha256 = "11sd0kfkbczybkfh3n9fr0j8lnjfqcwfvxmvwfgm8d2jz9c7rhsm";
       }
       {
         url = "https://api.pulumi.com/releases/plugins/pulumi-resource-openstack-v3.15.2-linux-arm64.tar.gz";
         sha256 = "0a0v0yj14fslncisvhfn8mlk009h7adkcszv6dlbzha46p4fl32a";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-postgresql-v3.11.0-linux-arm64.tar.gz";
-        sha256 = "0mrfh9mr825gj0gizviwihym8gisnx49lq1sff4128jgsfaq2snv";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-postgresql-v3.11.1-linux-arm64.tar.gz";
+        sha256 = "0kix5wkdhr1svbqicvfs91g43jwzp80zi07wq564pkphr907r99g";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-random-v4.16.0-linux-arm64.tar.gz";
-        sha256 = "0fp9z7mfpprs4680s350wyys6a0jwx4s455jqr938zxnx8s3rhfg";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-random-v4.16.1-linux-arm64.tar.gz";
+        sha256 = "03yg6fxxrimkhi13qsm328n5x6fqhl78bznh50fslhj9vlhpv1jr";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-snowflake-v0.50.2-linux-arm64.tar.gz";
-        sha256 = "1ssm84izdqzaymw1w3q9b2lkw35brysii73xhw7dgcazhgagfd1w";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-snowflake-v0.53.0-linux-arm64.tar.gz";
+        sha256 = "132b33wymaxcp6i4mpp7cal23crkm4xj1llnwa17p2gd61qdqyid";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-spotinst-v3.71.0-linux-arm64.tar.gz";
-        sha256 = "1qziz9la211x57018a89i5mfcripd2nb9kvykkvi9239xf0hjsml";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-spotinst-v3.77.0-linux-arm64.tar.gz";
+        sha256 = "1vv27n5nvdkrqci6wi5a5j1zczx263wslhb2h3jhfx5drl0v99ix";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-sumologic-v0.20.3-linux-arm64.tar.gz";
-        sha256 = "1a9gx5pzsli33gxcfmp0fh784x42y5im6zm5igcjgmrffmg5vqyc";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-sumologic-v0.21.0-linux-arm64.tar.gz";
+        sha256 = "05a7bpw8wg5939jnsrz8wdsyrbhs2sbpsbq7z5h92pq9s9ymsmxw";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-tailscale-v0.15.0-linux-arm64.tar.gz";
-        sha256 = "12b7k1d3jl2s6lg5izr38yaf8n1k7hd76pdy1d09wrv5l2hbn8zh";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-tailscale-v0.16.0-linux-arm64.tar.gz";
+        sha256 = "193pqh9gcl3n80vchfjxh5n88l0vv12rh9gjqqladidnl7v7qjr0";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-tls-v5.0.2-linux-arm64.tar.gz";
-        sha256 = "060pq8gygw0qikxvp2if46mdndnxlj9x0x81sw77hf43kn4llbnn";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-tls-v5.0.3-linux-arm64.tar.gz";
+        sha256 = "0fxxiyl1g120lzc2rm13cz7lxjp1psvzjd811i7ljy43ii05ahq4";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-vault-v6.0.0-linux-arm64.tar.gz";
-        sha256 = "1c8p1jy7020nkvqf1xsai0ywbjz380clvfhhysjm87a4gw0k458n";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-vault-v6.1.0-linux-arm64.tar.gz";
+        sha256 = "1vm44qycg7v58zhzg2ki2lda2ijwgd28lf0n5dvzxbm9ns2akf81";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-venafi-v1.7.0-linux-arm64.tar.gz";
-        sha256 = "017ff9x7s4yvsrf4ypsyaz934r9jm954080gn5535w1694k96wbn";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-venafi-v1.9.0-linux-arm64.tar.gz";
+        sha256 = "0la5pifbr558smr69nmqax7b8vkvhr243avrn04gz11sc1fwqb2a";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-vsphere-v4.10.0-linux-arm64.tar.gz";
-        sha256 = "0sgrb6h7d5myp1cy4i7fhhx718n4qx83hj561z98y5hvipg16bcx";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-vsphere-v4.10.1-linux-arm64.tar.gz";
+        sha256 = "1rd2nim8x9zy07vsc2gjj71zfv82bnz3n45v0k0mv516f6m4f4vj";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-wavefront-v3.1.1-linux-arm64.tar.gz";
-        sha256 = "08mxk5rccxsgvjcnfxwzcr8980gkg7mxfrzx3fyvcxmgvf3ykcn8";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-wavefront-v3.1.2-linux-arm64.tar.gz";
+        sha256 = "13nk22wkrnway2zbhsczx5k54pxh4myjl802dm69pdngbksck3s4";
       }
       {
         url = "https://api.pulumi.com/releases/plugins/pulumi-resource-yandex-v0.13.0-linux-arm64.tar.gz";
@@ -479,60 +479,60 @@
     ];
     aarch64-darwin = [
       {
-        url = "https://get.pulumi.com/releases/sdk/pulumi-v3.112.0-darwin-arm64.tar.gz";
-        sha256 = "0zlxpyxfy0j9p8pxq9gkbfyzry239225pmasrmc8nkl9g1g6rr4y";
+        url = "https://get.pulumi.com/releases/sdk/pulumi-v3.116.1-darwin-arm64.tar.gz";
+        sha256 = "0hfvvcpd6hjqsrbbjlplczn2z7si87nizxfjpwrcz98jnvdqjgld";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-aiven-v6.13.0-darwin-arm64.tar.gz";
-        sha256 = "1bph419xgrrnld89xd1pkbayjxkv2l76npqw7y5rzanx77yzyq34";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-aiven-v6.15.0-darwin-arm64.tar.gz";
+        sha256 = "0mfjvzgphhi9dqa6kgfd8avvr80xvfbiikc4kj04fl85rc39h2hr";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-akamai-v6.4.0-darwin-arm64.tar.gz";
-        sha256 = "1b47n69nc5nicagwdxq793a6nmbrg15690i8q40nixcf7k48krai";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-akamai-v7.1.0-darwin-arm64.tar.gz";
+        sha256 = "0zsch3dj2bcajxjivz1xjbiby6v6lb2axqq9y3nx8q6l6wnn1hsa";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-alicloud-v3.51.0-darwin-arm64.tar.gz";
-        sha256 = "062gz9rdnlkarl3zpv6d54wkmwgc52aci0ghfvi3h32jr3l658kr";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-alicloud-v3.55.1-darwin-arm64.tar.gz";
+        sha256 = "1g8dysychpf4867zp22gwaj5z2cchybds86c3say95pzbrlv5njm";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-artifactory-v6.4.2-darwin-arm64.tar.gz";
-        sha256 = "100j7cb2w7mg1nwbb602j531sf0wsvh7jwyhw8kgx5j2dp0vkdwn";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-artifactory-v6.7.5-darwin-arm64.tar.gz";
+        sha256 = "0wh34s4dynb4vjfr8rm5rnxs6w06sgq1r7a6sp16p93c5ib7lj3y";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-auth0-v3.3.1-darwin-arm64.tar.gz";
-        sha256 = "0ja508z0r4gbg2zdyrjb7gq8kn1brrx5q6am5dvwaikqs6i6vxrm";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-auth0-v3.3.2-darwin-arm64.tar.gz";
+        sha256 = "16sv847ymz60s8p5p7am2lclrinlhh9f5bch3721ap86acxyh2i4";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-aws-v6.28.2-darwin-arm64.tar.gz";
-        sha256 = "09kss0vaw0zs1lp51hzx25xc232l9644bfx644lk0i8bb2bffpcr";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-aws-v6.36.0-darwin-arm64.tar.gz";
+        sha256 = "1fkry5pnlw1qxvbc89xib0656yc1ca35gsbif1b1hh5dgj3wfs9a";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-azuread-v5.47.2-darwin-arm64.tar.gz";
-        sha256 = "1zj37idg91anzx0hd6y2mshgl0bxc9ysfd4prgvj4drf92gwrx4g";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-azuread-v5.49.1-darwin-arm64.tar.gz";
+        sha256 = "1h2kp7vss1i5xjbzcriz1q41f7qmz41zx6zw0p64d3in9gjzyd3s";
       }
       {
         url = "https://api.pulumi.com/releases/plugins/pulumi-resource-azuredevops-v3.0.0-darwin-arm64.tar.gz";
         sha256 = "1pjcbk8lsqpdw12mp07czf8gzam7dhak3zb4zcd0z9xp3fj0qvgd";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-azure-v5.70.0-darwin-arm64.tar.gz";
-        sha256 = "0wxv0z4wff5hya8m8ah22468zfgqn86aj2y7692az4jaz543p4xm";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-azure-v5.77.1-darwin-arm64.tar.gz";
+        sha256 = "1fap3aapqhzf831yrcb727rmmy8k18bcvr63qwvmbcwvr6gj4ffk";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-cloudflare-v5.24.0-darwin-arm64.tar.gz";
-        sha256 = "04h4h2zn8gqfsb98lal8j4bxqyr9zqynm3q722a0v8a8i58wzdhx";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-cloudflare-v5.29.0-darwin-arm64.tar.gz";
+        sha256 = "0p7v06n1zqv4czbrc7i41lmhjn0ypazji1gngrx5x3r1dc3c4bpk";
       }
       {
         url = "https://api.pulumi.com/releases/plugins/pulumi-resource-consul-v3.11.2-darwin-arm64.tar.gz";
         sha256 = "1zjggbm0cas99vzh98yld7af93bamzb7492612a1bdk1x30w46jn";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-datadog-v4.27.0-darwin-arm64.tar.gz";
-        sha256 = "0kxrbmcs60v0snz6m3xs1dr1lbw64gz735kbcm223abs5dsz0lqr";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-datadog-v4.28.0-darwin-arm64.tar.gz";
+        sha256 = "0r32xy57ggpg5mlcrcvb0vrksfix3bsf2jdib1z2h3dydgczl2n6";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-digitalocean-v4.27.0-darwin-arm64.tar.gz";
-        sha256 = "176vnb1khfrnwd4xipirp0hwjl4q9mgmw5r4b00jvxy55h8mr1qs";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-digitalocean-v4.29.0-darwin-arm64.tar.gz";
+        sha256 = "04bsf97vbp0r9zp7x3xpfcx2h8f3pckilqnc353kr2bf566vam25";
       }
       {
         url = "https://api.pulumi.com/releases/plugins/pulumi-resource-docker-v4.5.3-darwin-arm64.tar.gz";
@@ -543,92 +543,92 @@
         sha256 = "12bzicm43l7yvh02v5fx3z8v46l9i7a9f677735xi5rjbmd2an4c";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-fastly-v8.5.1-darwin-arm64.tar.gz";
-        sha256 = "18985l0djz592235y2brxncpaky850qyr0xa23aflm07wdh7fc3n";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-fastly-v8.7.0-darwin-arm64.tar.gz";
+        sha256 = "1w25hs64ay3csmaz6ydpi1srn2qsbg8r3kbxqjfghpi0ryx9prgv";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-gcp-v7.16.0-darwin-arm64.tar.gz";
-        sha256 = "0pbja02n216hwlifnnw5aisca1kk35p0sz3v36kq30qcn1ywmdjz";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-gcp-v7.23.0-darwin-arm64.tar.gz";
+        sha256 = "14yx04q0pps9pycfh9n3bkr73x1ir3q2p683bvwgrjsb046djb23";
       }
       {
         url = "https://api.pulumi.com/releases/plugins/pulumi-resource-github-v6.2.0-darwin-arm64.tar.gz";
         sha256 = "0whmhq9vks8yni96b7d4kavr2mlbhxvlbjmwvdp0nvwpaa36wkk0";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-gitlab-v6.10.0-darwin-arm64.tar.gz";
-        sha256 = "1jiy5j51v2ac4kf0dsn61404373jdls9jm5d1xjincdiykd57g75";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-gitlab-v6.11.0-darwin-arm64.tar.gz";
+        sha256 = "1bml2wwa72yb35rwp5bsh91rd1pci27za9901vsbwpcq78wza7si";
       }
       {
         url = "https://api.pulumi.com/releases/plugins/pulumi-resource-google-native-v0.32.0-darwin-arm64.tar.gz";
         sha256 = "0caz4kgnnrmdr7n571xc7yqscac9jnjwwpjzbnvx4ib6a91wvsdn";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-hcloud-v1.18.0-darwin-arm64.tar.gz";
-        sha256 = "0frjmc256760j48cq2liwasdv3b4vznsvmik9hp81zwbla7jk4f7";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-hcloud-v1.19.1-darwin-arm64.tar.gz";
+        sha256 = "1cjq3n11hlsj4v0yi2xyapqk4ibf16qg9n9apwwgqcaz1l1sq8z2";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-kubernetes-v4.9.1-darwin-arm64.tar.gz";
-        sha256 = "14j27fy3i718k5svb8cznf4py3pypwxac4db3qs2mz0lhffja3ha";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-kubernetes-v4.11.0-darwin-arm64.tar.gz";
+        sha256 = "177fycz1nabhf8c4clnd5qjl1iirg2fwrq47cw11w8r4hyfz3qbw";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-linode-v4.17.0-darwin-arm64.tar.gz";
-        sha256 = "0rxf8d3x3d31lc6mf9fi9svixm2fw1qyq3v4mics0gsxq2jibynq";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-linode-v4.19.1-darwin-arm64.tar.gz";
+        sha256 = "074aq7lxni6zxpqc77qkhc69nnwkx5plpwk0wcps6r23mhc32ia0";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-mailgun-v3.5.2-darwin-arm64.tar.gz";
-        sha256 = "1cslfvb3q89vqxs0w6xwfc0pvv81rl9mrdd7mwysmgjc78qk6aaw";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-mailgun-v3.5.3-darwin-arm64.tar.gz";
+        sha256 = "1l6q20hinxki5124s14lz67zwlwjdmzh33yni3hwm79cwzvvqqi9";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-mysql-v3.2.3-darwin-arm64.tar.gz";
-        sha256 = "1ss909lscg6diphzpgxkm2gylvj0nkyf4jzp422m94g6xcinfwhy";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-mysql-v3.2.4-darwin-arm64.tar.gz";
+        sha256 = "0lpwg6rwf5fa2ydf3j243k07jp6briayy953n4m2hyqhsgs6q62q";
       }
       {
         url = "https://api.pulumi.com/releases/plugins/pulumi-resource-openstack-v3.15.2-darwin-arm64.tar.gz";
         sha256 = "05qzgzp2dcm3p3s6jz14pjxhgiid9wj000glyrfl07g9cf6xa95a";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-postgresql-v3.11.0-darwin-arm64.tar.gz";
-        sha256 = "0xx8mphabl1vvmmyb5ramlf6zvd32lx46f6hlmihh76zfajhc5ci";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-postgresql-v3.11.1-darwin-arm64.tar.gz";
+        sha256 = "16m2bd2ymaaaw4ac80kg349vwgc8f1b0nqkkkmc24k3hxv9rxlh9";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-random-v4.16.0-darwin-arm64.tar.gz";
-        sha256 = "15zxfi82jqja0xzryb74pvcxnrbn6axrs98j463z248b5fbwc7b8";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-random-v4.16.1-darwin-arm64.tar.gz";
+        sha256 = "1bxsmf1zmv21si7viwarmy4xfnghpldnayi62v73a0fbgz3c8vn3";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-snowflake-v0.50.2-darwin-arm64.tar.gz";
-        sha256 = "1qr6qh4323d6n7f56lixdrph5cb5qby4q2f3l8l4l6n8s345v9kr";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-snowflake-v0.53.0-darwin-arm64.tar.gz";
+        sha256 = "1m60a7g0516rczcjs0x5ff0iq9ngdyg61h60q1wf5qs7idldkg59";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-spotinst-v3.71.0-darwin-arm64.tar.gz";
-        sha256 = "104izxqq5vq4dppc12ijiln7khjnyp00rw5ckd3myb33ywl2j6vh";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-spotinst-v3.77.0-darwin-arm64.tar.gz";
+        sha256 = "00mdkyns6dhn5pkvb6jr33ikk54msrg0xzabvlwz38ali29d6pz0";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-sumologic-v0.20.3-darwin-arm64.tar.gz";
-        sha256 = "18cp8kblr5dfj364hmwq2yasfb5b083mmn4jvp1an12yvyaq8qc4";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-sumologic-v0.21.0-darwin-arm64.tar.gz";
+        sha256 = "1c7nx7c9byc9rqvfhfhz472y4q6p0f6dqx60chlw50x4l39pkvxa";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-tailscale-v0.15.0-darwin-arm64.tar.gz";
-        sha256 = "1mrjn3g55h77rjni6v2v0hz4csclfiy2wdx7gllnwbpgfcchlqr2";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-tailscale-v0.16.0-darwin-arm64.tar.gz";
+        sha256 = "0g40px8rszsh34vv6kgln29ryjf9niricpf3rvs9g0667pbv9rs2";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-tls-v5.0.2-darwin-arm64.tar.gz";
-        sha256 = "17nwqs1qnjyx0pbsc0iak1vygil7z8l6ygay87yrac5pgxyj9dcr";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-tls-v5.0.3-darwin-arm64.tar.gz";
+        sha256 = "00iql0iprfmp4glshlx7w9lz8ifmzcp7cbh8qsnacvhbix0azsrg";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-vault-v6.0.0-darwin-arm64.tar.gz";
-        sha256 = "0g34d4013mn6sq0abvmkc5mbvbms59rwp963ss41r52cab6gqh28";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-vault-v6.1.0-darwin-arm64.tar.gz";
+        sha256 = "1b0s03x5zhpgm5dnk4wvb28jgz6m0dl8p9lm3zih3dycvm6ivfps";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-venafi-v1.7.0-darwin-arm64.tar.gz";
-        sha256 = "00qq53wirdjm8zqqisad34fzx70m96dwg0dqysz6nqikq620h7dp";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-venafi-v1.9.0-darwin-arm64.tar.gz";
+        sha256 = "0xc8d7ix9nxnpy376q4n36mi58p9vz9ifzvldk8s8cpld8pgrm20";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-vsphere-v4.10.0-darwin-arm64.tar.gz";
-        sha256 = "1562pylmy4i109wwpn0lqb11m3ajwlswn5f76ni0cq4sw0iips4l";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-vsphere-v4.10.1-darwin-arm64.tar.gz";
+        sha256 = "1k3x749rgabshcpy4y6xymjwif5h75kczm0vq7zjfc9z2ds56ig9";
       }
       {
-        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-wavefront-v3.1.1-darwin-arm64.tar.gz";
-        sha256 = "09k9px0pm55jf3kxq1xc37li34mdv96sgcg89wmmm7spwl8q48m1";
+        url = "https://api.pulumi.com/releases/plugins/pulumi-resource-wavefront-v3.1.2-darwin-arm64.tar.gz";
+        sha256 = "0890narq85jvda6d7d6q770d8nhlai02bxfjzbm2xzrgcriig6vk";
       }
       {
         url = "https://api.pulumi.com/releases/plugins/pulumi-resource-yandex-v0.13.0-darwin-arm64.tar.gz";
diff --git a/pkgs/tools/admin/pulumi/default.nix b/pkgs/tools/admin/pulumi/default.nix
index 3ff4d18d1478..d63bef2a0270 100644
--- a/pkgs/tools/admin/pulumi/default.nix
+++ b/pkgs/tools/admin/pulumi/default.nix
@@ -53,32 +53,6 @@ buildGoModule rec {
     "-X github.com/pulumi/pulumi/pkg/v3/version.Version=v${version}"
   ];
 
-  doCheck = true;
-
-  disabledTests = [
-    # Flaky test
-    "TestPendingDeleteOrder"
-    # Tries to clone repo: github.com/pulumi/templates.git
-    "TestGenerateOnlyProjectCheck"
-    # Following tests give this error, not quite sure why:
-    #     Error Trace:    /build/pulumi/pkg/engine/lifecycletest/update_plan_test.go:273
-    # Error:          Received unexpected error:
-    #                 Unexpected diag message: <{%reset%}>using pulumi-resource-pkgA from $PATH at /build/tmp.bS8caxmTx7/pulumi-resource-pkgA<{%reset%}>
-    # Test:           TestUnplannedDelete
-    "TestExpectedDelete"
-    "TestPlannedInputOutputDifferences"
-    "TestPlannedUpdateChangedStack"
-    "TestExpectedCreate"
-    "TestUnplannedDelete"
-    # Following test gives this  error, not sure why:
-    # --- Expected
-    # +++ Actual
-    # @@ -1 +1 @@
-    # -gcp
-    # +aws
-    "TestPluginMapper_MappedNamesDifferFromPulumiName"
-  ];
-
   nativeCheckInputs = [
     git
   ];
@@ -100,12 +74,39 @@ buildGoModule rec {
     rm codegen/{docs,dotnet,go,nodejs,python,schema}/*_test.go
     rm -R codegen/{dotnet,go,nodejs,python}/gen_program_test
 
-    # Only run tests not marked as disabled
-    buildFlagsArray+=("-run" "[^(${lib.concatStringsSep "|" disabledTests})]")
   '' + lib.optionalString stdenv.isDarwin ''
     export PULUMI_HOME=$(mktemp -d)
   '';
 
+  checkFlags =
+    let
+      disabledTests = [
+        # Flaky test
+        "TestPendingDeleteOrder"
+        # Tries to clone repo: github.com/pulumi/templates.git
+        "TestGenerateOnlyProjectCheck"
+        # Following tests give this error, not quite sure why:
+        #     Error Trace:    /build/pulumi/pkg/engine/lifecycletest/update_plan_test.go:273
+        # Error:          Received unexpected error:
+        #                 Unexpected diag message: <{%reset%}>using pulumi-resource-pkgA from $PATH at /build/tmp.bS8caxmTx7/pulumi-resource-pkgA<{%reset%}>
+        # Test:           TestUnplannedDelete
+        "TestExpectedDelete"
+        "TestPlannedInputOutputDifferences"
+        "TestPlannedUpdateChangedStack"
+        "TestExpectedCreate"
+        "TestUnplannedDelete"
+        # Following test gives this  error, not sure why:
+        # --- Expected
+        # +++ Actual
+        # @@ -1 +1 @@
+        # -gcp
+        # +aws
+        "TestPluginMapper_MappedNamesDifferFromPulumiName"
+        "TestProtect"
+      ];
+    in
+    [ "-skip=^${lib.concatStringsSep "$|^" disabledTests}$" ];
+
   # Allow tests that bind or connect to localhost on macOS.
   __darwinAllowLocalNetworking = true;
 
diff --git a/pkgs/tools/admin/qovery-cli/default.nix b/pkgs/tools/admin/qovery-cli/default.nix
index 71fe92169a28..2abc5b851039 100644
--- a/pkgs/tools/admin/qovery-cli/default.nix
+++ b/pkgs/tools/admin/qovery-cli/default.nix
@@ -9,16 +9,16 @@
 
 buildGoModule rec {
   pname = "qovery-cli";
-  version = "0.91.1";
+  version = "0.92.4";
 
   src = fetchFromGitHub {
     owner = "Qovery";
     repo = "qovery-cli";
     rev = "refs/tags/v${version}";
-    hash = "sha256-yu7S4i7mbHOV48YfIoacofQrNTEjFfQ5Ex2ZBXw5QjQ=";
+    hash = "sha256-A8R1QbUFD4wJyLrTrxE8w9rz0E/vhaPXXAt80UpAOSc=";
   };
 
-  vendorHash = "sha256-RobQz/R7TlU3fBHBy9UmQfpjT9urTHTU8hl2++Wbo7I=";
+  vendorHash = "sha256-6gjYnDv4L2AO47uWcp/MySX9i3IDMIWQUvgglxPCvGo=";
 
   nativeBuildInputs = [ installShellFiles ];
 
diff --git a/pkgs/tools/admin/sec/default.nix b/pkgs/tools/admin/sec/default.nix
index a37f8af5aff1..4a769dbf56cb 100644
--- a/pkgs/tools/admin/sec/default.nix
+++ b/pkgs/tools/admin/sec/default.nix
@@ -24,7 +24,7 @@ stdenv.mkDerivation rec {
 
   meta = {
     homepage = "https://simple-evcorr.github.io";
-    license = lib.licenses.gpl2;
+    license = lib.licenses.gpl2Plus;
     description = "Simple Event Correlator";
     maintainers = [ lib.maintainers.tv ];
     platforms = lib.platforms.all;
diff --git a/pkgs/tools/admin/stripe-cli/default.nix b/pkgs/tools/admin/stripe-cli/default.nix
index d8e2251bb13b..90824795c040 100644
--- a/pkgs/tools/admin/stripe-cli/default.nix
+++ b/pkgs/tools/admin/stripe-cli/default.nix
@@ -2,15 +2,15 @@
 
 buildGoModule rec {
   pname = "stripe-cli";
-  version = "1.19.4";
+  version = "1.19.5";
 
   src = fetchFromGitHub {
     owner = "stripe";
     repo = pname;
     rev = "v${version}";
-    hash = "sha256-pcDlZQCVy1xy8LZ+S5JcGNoiw1Px7C4U6Pn1pe31DoI=";
+    hash = "sha256-gunLbZOT0cnWGxc6714XcPdHJVK4LbDBwC2zt03WrUM=";
   };
-  vendorHash = "sha256-DYA6cu2KzEBZ4wsT7wjcdY1endQQOZlj2aOwu6iGLew=";
+  vendorHash = "sha256-xFWU+OazwLTb5qdFeYth1MlPJ76nEK4qSCNGVhC/PxE=";
 
   nativeBuildInputs = [ installShellFiles ];
 
diff --git a/pkgs/tools/admin/trivy/default.nix b/pkgs/tools/admin/trivy/default.nix
index 8c22e6941c4d..167356580508 100644
--- a/pkgs/tools/admin/trivy/default.nix
+++ b/pkgs/tools/admin/trivy/default.nix
@@ -11,19 +11,19 @@
 
 buildGoModule rec {
   pname = "trivy";
-  version = "0.50.4";
+  version = "0.51.1";
 
   src = fetchFromGitHub {
     owner = "aquasecurity";
     repo = "trivy";
     rev = "refs/tags/v${version}";
-    hash = "sha256-KFVeJmtMPGPjeiXzeVFtY73drZ4CySdmMRxDqEJfA4c=";
+    hash = "sha256-JrUZkKiiSJ0GItOj7x+CbrO2WpOSsDFz32mkwsQjs28=";
   };
 
   # Hash mismatch on across Linux and Darwin
   proxyVendor = true;
 
-  vendorHash = "sha256-aki+kwjZxPPD/K3k8wJMc2HNB6DzFf92mcOOQFwsbXU=";
+  vendorHash = "sha256-mIbqI9uBjLuIQKdju+5VtM4gPGxPCC9vMilmiySjdpI=";
 
   subPackages = [ "cmd/trivy" ];
 
diff --git a/pkgs/tools/archivers/rpmextract/default.nix b/pkgs/tools/archivers/rpmextract/default.nix
index ed81a23ba7e5..ccb37cc5b567 100644
--- a/pkgs/tools/archivers/rpmextract/default.nix
+++ b/pkgs/tools/archivers/rpmextract/default.nix
@@ -17,7 +17,7 @@ stdenv.mkDerivation {
   meta = with lib; {
     description = "Script to extract RPM archives";
     platforms = platforms.all;
-    license = licenses.gpl2;
+    license = licenses.gpl2Only;
     maintainers = with maintainers; [ abbradar ];
     mainProgram = "rpmextract";
   };
diff --git a/pkgs/tools/archivers/unp/default.nix b/pkgs/tools/archivers/unp/default.nix
index aeb0fb91c989..247f393226d7 100644
--- a/pkgs/tools/archivers/unp/default.nix
+++ b/pkgs/tools/archivers/unp/default.nix
@@ -37,7 +37,7 @@ in stdenv.mkDerivation {
   meta = with lib; {
     description = "Command line tool for unpacking archives easily";
     homepage = "https://packages.qa.debian.org/u/unp.html";
-    license = with licenses; [ gpl2 ];
+    license = with licenses; [ gpl2Only ];
     maintainers = [ maintainers.timor ];
     platforms = platforms.all;
   };
diff --git a/pkgs/tools/archivers/xarchive/default.nix b/pkgs/tools/archivers/xarchive/default.nix
index d26fdabc1d5d..733639c3e106 100644
--- a/pkgs/tools/archivers/xarchive/default.nix
+++ b/pkgs/tools/archivers/xarchive/default.nix
@@ -17,7 +17,7 @@ stdenv.mkDerivation rec {
   meta = {
     description = "A GTK front-end for command line archiving tools";
     maintainers = [ lib.maintainers.domenkozar ];
-    license = lib.licenses.gpl2;
+    license = lib.licenses.gpl2Plus;
     platforms = lib.platforms.all;
     mainProgram = "xarchive";
   };
diff --git a/pkgs/tools/archivers/xarchiver/default.nix b/pkgs/tools/archivers/xarchiver/default.nix
index b8ab9827cbd9..c41a6010ef6f 100644
--- a/pkgs/tools/archivers/xarchiver/default.nix
+++ b/pkgs/tools/archivers/xarchiver/default.nix
@@ -1,5 +1,5 @@
 { lib, stdenv, fetchFromGitHub, gtk3, pkg-config, intltool, libxslt, makeWrapper,
-  coreutils, zip, unzip, p7zip, unar, gnutar, bzip2, gzip, lhasa, wrapGAppsHook }:
+  coreutils, zip, unzip, p7zip, unar, gnutar, bzip2, gzip, lhasa, wrapGAppsHook3 }:
 
 stdenv.mkDerivation rec {
   version = "0.5.4.23";
@@ -12,7 +12,7 @@ stdenv.mkDerivation rec {
     hash = "sha256-aNUpuePU6nmrralp+j8GgVPuxv9ayRVoKicPZkC4nTE=";
   };
 
-  nativeBuildInputs = [ intltool pkg-config makeWrapper wrapGAppsHook ];
+  nativeBuildInputs = [ intltool pkg-config makeWrapper wrapGAppsHook3 ];
   buildInputs = [ gtk3 libxslt ];
 
   postFixup = ''
diff --git a/pkgs/tools/audio/alsaequal/default.nix b/pkgs/tools/audio/alsaequal/default.nix
index 13e3e756b6ac..73b95f9fe7cc 100644
--- a/pkgs/tools/audio/alsaequal/default.nix
+++ b/pkgs/tools/audio/alsaequal/default.nix
@@ -37,7 +37,7 @@ stdenv.mkDerivation rec {
   meta = with lib; {
     description = "Real-time adjustable equalizer plugin for ALSA";
     homepage = "https://thedigitalmachine.net/alsaequal.html";
-    license = licenses.gpl2;
+    license = licenses.gpl2Plus;
     maintainers = with maintainers; [ ymeister ];
   };
 }
diff --git a/pkgs/tools/audio/bpm-tools/default.nix b/pkgs/tools/audio/bpm-tools/default.nix
index e791c838422a..2a9dbcb82e18 100644
--- a/pkgs/tools/audio/bpm-tools/default.nix
+++ b/pkgs/tools/audio/bpm-tools/default.nix
@@ -37,7 +37,7 @@ stdenv.mkDerivation (finalAttrs: {
   meta = with lib; {
     homepage = "http://www.pogo.org.uk/~mark/bpm-tools/";
     description = "Automatically calculate BPM (tempo) of music files";
-    license = licenses.gpl2;
+    license = licenses.gpl2Only;
     platforms = platforms.all;
     maintainers = with maintainers; [ doronbehar ];
   };
diff --git a/pkgs/tools/audio/ezstream/default.nix b/pkgs/tools/audio/ezstream/default.nix
index ee85f1aabd33..d3b965efc603 100644
--- a/pkgs/tools/audio/ezstream/default.nix
+++ b/pkgs/tools/audio/ezstream/default.nix
@@ -26,7 +26,7 @@ stdenv.mkDerivation rec {
       very little CPU resources.
     '';
     homepage = "https://icecast.org/ezstream/";
-    license = licenses.gpl2;
+    license = licenses.gpl2Only;
     maintainers = [ maintainers.barrucadu ];
     platforms = platforms.all;
   };
diff --git a/pkgs/tools/audio/gvolicon/default.nix b/pkgs/tools/audio/gvolicon/default.nix
index 1e552d64cfaa..b761962b176e 100644
--- a/pkgs/tools/audio/gvolicon/default.nix
+++ b/pkgs/tools/audio/gvolicon/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, makeWrapper, alsa-lib, pkg-config, fetchFromGitHub, gtk3, gnome, gdk-pixbuf, librsvg, wrapGAppsHook }:
+{ lib, stdenv, makeWrapper, alsa-lib, pkg-config, fetchFromGitHub, gtk3, gnome, gdk-pixbuf, librsvg, wrapGAppsHook3 }:
 
 stdenv.mkDerivation {
   pname = "gvolicon";
@@ -14,7 +14,7 @@ stdenv.mkDerivation {
   nativeBuildInputs = [ pkg-config makeWrapper ];
   buildInputs = [
     alsa-lib gtk3 gdk-pixbuf gnome.adwaita-icon-theme
-    librsvg wrapGAppsHook
+    librsvg wrapGAppsHook3
   ];
 
   makeFlags = [ "PREFIX=$(out)" ];
diff --git a/pkgs/tools/audio/headset-charge-indicator/default.nix b/pkgs/tools/audio/headset-charge-indicator/default.nix
index 40005ea9a6e1..d365b4a5c673 100644
--- a/pkgs/tools/audio/headset-charge-indicator/default.nix
+++ b/pkgs/tools/audio/headset-charge-indicator/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetchFromGitHub, headsetcontrol, wrapGAppsHook, python3, gtk3
+{ lib, stdenv, fetchFromGitHub, headsetcontrol, wrapGAppsHook3, python3, gtk3
 , gobject-introspection, libayatana-appindicator }:
 
 stdenv.mkDerivation rec {
@@ -14,7 +14,7 @@ stdenv.mkDerivation rec {
     sha256 = "sha256-eaAbqeFY+B3CcKJywC3vaRsWZNQENTbALc7L7uW0W6U=";
   };
 
-  nativeBuildInputs = [ wrapGAppsHook gobject-introspection ];
+  nativeBuildInputs = [ wrapGAppsHook3 gobject-introspection ];
 
   buildInputs = [
     (python3.withPackages (ps: with ps; [ pygobject3 ]))
diff --git a/pkgs/tools/audio/kaldi/default.nix b/pkgs/tools/audio/kaldi/default.nix
index e841b1291013..689cea017ab3 100644
--- a/pkgs/tools/audio/kaldi/default.nix
+++ b/pkgs/tools/audio/kaldi/default.nix
@@ -19,7 +19,7 @@
 assert blas.implementation == "openblas" && lapack.implementation == "openblas";
 stdenv.mkDerivation (finalAttrs: {
   pname = "kaldi";
-  version = "unstable-2024-01-31";
+  version = "0-unstable-2024-01-31";
 
   src = fetchFromGitHub {
     owner = "kaldi-asr";
diff --git a/pkgs/tools/audio/liquidsoap/full.nix b/pkgs/tools/audio/liquidsoap/full.nix
index f4fac11df220..5d749f1a818d 100644
--- a/pkgs/tools/audio/liquidsoap/full.nix
+++ b/pkgs/tools/audio/liquidsoap/full.nix
@@ -7,7 +7,7 @@
 
 let
   pname = "liquidsoap";
-  version = "2.2.4";
+  version = "2.2.5";
 in
 stdenv.mkDerivation {
   inherit pname version;
@@ -16,7 +16,7 @@ stdenv.mkDerivation {
     owner = "savonet";
     repo = "liquidsoap";
     rev = "refs/tags/v${version}";
-    hash = "sha256-aAW3PeobTRVi5mV321MHZ6RymvOY4DbZITjwcMwGwFo=";
+    hash = "sha256-o3P7oTizO2l2WkB4LormZ/Ses5jZOpgQ1r1zB1Y3Bjs=";
   };
 
   postPatch = ''
@@ -129,12 +129,13 @@ stdenv.mkDerivation {
     ocamlPackages.yaml
   ];
 
-  meta = with lib; {
+  meta = {
     description = "Swiss-army knife for multimedia streaming";
     mainProgram = "liquidsoap";
     homepage = "https://www.liquidsoap.info/";
-    maintainers = with maintainers; [ dandellion ehmry ];
-    license = licenses.gpl2Plus;
+    changelog = "https://raw.githubusercontent.com/savonet/liquidsoap/main/CHANGES.md";
+    maintainers = with lib.maintainers; [ dandellion ehmry ];
+    license = lib.licenses.gpl2Plus;
     platforms = ocamlPackages.ocaml.meta.platforms or [];
   };
 }
diff --git a/pkgs/tools/audio/mictray/default.nix b/pkgs/tools/audio/mictray/default.nix
index d93423e66b49..f53ae6c48d0e 100644
--- a/pkgs/tools/audio/mictray/default.nix
+++ b/pkgs/tools/audio/mictray/default.nix
@@ -9,7 +9,7 @@
 , pulseaudio
 , stdenv
 , vala
-, wrapGAppsHook
+, wrapGAppsHook3
 }:
 
 stdenv.mkDerivation rec {
@@ -28,7 +28,7 @@ stdenv.mkDerivation rec {
     ninja
     pkg-config
     vala
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
diff --git a/pkgs/tools/audio/mp3cat/default.nix b/pkgs/tools/audio/mp3cat/default.nix
index 5819eb281b2f..e562d833aade 100644
--- a/pkgs/tools/audio/mp3cat/default.nix
+++ b/pkgs/tools/audio/mp3cat/default.nix
@@ -27,7 +27,7 @@ stdenv.mkDerivation rec {
       in its input stream
     '';
     homepage = "https://github.com/tomclegg/mp3cat";
-    license = licenses.gpl2;
+    license = licenses.gpl2Plus;
     maintainers = [ maintainers.omnipotententity ];
     platforms = platforms.all;
     mainProgram = "mp3cat";
diff --git a/pkgs/tools/audio/mpdris2/default.nix b/pkgs/tools/audio/mpdris2/default.nix
index fd4b60f13e05..bb050788f85a 100644
--- a/pkgs/tools/audio/mpdris2/default.nix
+++ b/pkgs/tools/audio/mpdris2/default.nix
@@ -6,7 +6,7 @@
 , intltool
 , libnotify
 , python3
-, wrapGAppsHook
+, wrapGAppsHook3
 }:
 
 python3.pkgs.buildPythonApplication rec {
@@ -29,7 +29,7 @@ python3.pkgs.buildPythonApplication rec {
     autoreconfHook
     gobject-introspection
     intltool
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
diff --git a/pkgs/tools/audio/mpris-scrobbler/default.nix b/pkgs/tools/audio/mpris-scrobbler/default.nix
index 13070ea70513..859cc9dd6df9 100644
--- a/pkgs/tools/audio/mpris-scrobbler/default.nix
+++ b/pkgs/tools/audio/mpris-scrobbler/default.nix
@@ -16,13 +16,13 @@
 
 stdenv.mkDerivation rec {
   pname = "mpris-scrobbler";
-  version = "0.5.2";
+  version = "0.5.3";
 
   src = fetchFromGitHub {
     owner = "mariusor";
     repo = "mpris-scrobbler";
     rev = "v${version}";
-    sha256 = "sha256-Gpgiu3wdxP4XjHzl1S4/wpTh2ZJjqowsD8wpbZuaySs=";
+    sha256 = "sha256-eeOhFkLyx+smZmKPTbVB1OiYkHdWk5v2rnOb9yCIuYE=";
   };
 
   postPatch = ''
diff --git a/pkgs/tools/audio/pa-applet/default.nix b/pkgs/tools/audio/pa-applet/default.nix
index ef5cde192baf..2f2310b98c57 100644
--- a/pkgs/tools/audio/pa-applet/default.nix
+++ b/pkgs/tools/audio/pa-applet/default.nix
@@ -28,7 +28,7 @@ stdenv.mkDerivation {
   meta = with lib; {
     description = "";
     mainProgram = "pa-applet";
-    license = licenses.gpl2;
+    license = licenses.bsd2;
     maintainers = with maintainers; [ domenkozar ];
     platforms = platforms.linux;
   };
diff --git a/pkgs/tools/audio/pasystray/default.nix b/pkgs/tools/audio/pasystray/default.nix
index 20708e82729d..c89e1a208153 100644
--- a/pkgs/tools/audio/pasystray/default.nix
+++ b/pkgs/tools/audio/pasystray/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetchpatch, fetchFromGitHub, pkg-config, autoreconfHook, wrapGAppsHook
+{ lib, stdenv, fetchpatch, fetchFromGitHub, pkg-config, autoreconfHook, wrapGAppsHook3
 , gnome, avahi, gtk3, libayatana-appindicator, libnotify, libpulseaudio
 , gsettings-desktop-schemas
 }:
@@ -29,7 +29,7 @@ stdenv.mkDerivation rec {
     })
    ];
 
-  nativeBuildInputs = [ pkg-config autoreconfHook wrapGAppsHook ];
+  nativeBuildInputs = [ pkg-config autoreconfHook wrapGAppsHook3 ];
   buildInputs = [
     gnome.adwaita-icon-theme
     avahi gtk3 libayatana-appindicator libnotify libpulseaudio
diff --git a/pkgs/tools/audio/pulsemixer/default.nix b/pkgs/tools/audio/pulsemixer/default.nix
index e4204321bc4d..f38a741b6682 100644
--- a/pkgs/tools/audio/pulsemixer/default.nix
+++ b/pkgs/tools/audio/pulsemixer/default.nix
@@ -22,7 +22,7 @@ stdenv.mkDerivation rec {
 
   postFixup = ''
     substituteInPlace "$out/bin/pulsemixer" \
-      --replace "libpulse.so.0" "$libpulseaudio/lib/libpulse.so.0"
+      --replace-fail "libpulse.so.0" "$libpulseaudio/lib/libpulse${stdenv.hostPlatform.extensions.sharedLibrary}"
   '';
 
   meta = with lib; {
diff --git a/pkgs/tools/audio/trx/default.nix b/pkgs/tools/audio/trx/default.nix
index b3ffee6419bf..3c03446f8ffa 100644
--- a/pkgs/tools/audio/trx/default.nix
+++ b/pkgs/tools/audio/trx/default.nix
@@ -21,7 +21,7 @@ stdenv.mkDerivation rec {
   meta = with lib; {
     description = "A simple toolset for broadcasting live audio using RTP/UDP and Opus";
     homepage = "http://www.pogo.org.uk/~mark/trx/";
-    license = licenses.gpl2;
+    license = licenses.gpl2Only;
     maintainers = [ maintainers.hansjoergschurr ];
     platforms = platforms.linux;
   };
diff --git a/pkgs/tools/audio/vgmtools/default.nix b/pkgs/tools/audio/vgmtools/default.nix
index ae6184a850f2..9e094cea975d 100644
--- a/pkgs/tools/audio/vgmtools/default.nix
+++ b/pkgs/tools/audio/vgmtools/default.nix
@@ -8,7 +8,7 @@
 
 stdenv.mkDerivation rec {
   pname = "vgmtools";
-  version = "unstable-2023-08-27";
+  version = "0.1-unstable-2023-08-27";
 
   src = fetchFromGitHub {
     owner = "vgmrips";
@@ -37,7 +37,7 @@ stdenv.mkDerivation rec {
   meta = with lib; {
     homepage = "https://github.com/vgmrips/vgmtools";
     description = "A collection of tools for the VGM file format";
-    license = licenses.gpl2; # Not clarified whether Only or Plus
+    license = licenses.gpl2Only; # Not clarified whether Only or Plus
     maintainers = with maintainers; [ OPNA2608 ];
     platforms = platforms.all;
   };
diff --git a/pkgs/tools/audio/volctl/default.nix b/pkgs/tools/audio/volctl/default.nix
index 0d33c586ed37..b5df120aad35 100644
--- a/pkgs/tools/audio/volctl/default.nix
+++ b/pkgs/tools/audio/volctl/default.nix
@@ -1,4 +1,4 @@
-{ lib, python3Packages, fetchFromGitHub, wrapGAppsHook, gobject-introspection, libpulseaudio, glib, gtk3, pango, xorg }:
+{ lib, python3Packages, fetchFromGitHub, wrapGAppsHook3, gobject-introspection, libpulseaudio, glib, gtk3, pango, xorg }:
 
 python3Packages.buildPythonApplication rec {
   pname = "volctl";
@@ -23,7 +23,7 @@ python3Packages.buildPythonApplication rec {
 
   nativeBuildInputs = [
     gobject-introspection
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   propagatedBuildInputs = [ pango gtk3 ] ++ (with python3Packages; [
@@ -50,7 +50,7 @@ python3Packages.buildPythonApplication rec {
   meta = with lib; {
     description = "PulseAudio enabled volume control featuring per-app sliders";
     homepage = "https://buzz.github.io/volctl/";
-    license = licenses.gpl2;
+    license = licenses.gpl2Only;
     platforms = platforms.linux;
     maintainers = [ maintainers.romildo ];
     mainProgram = "volctl";
diff --git a/pkgs/tools/audio/whisper-ctranslate2/default.nix b/pkgs/tools/audio/whisper-ctranslate2/default.nix
index ff74c8bffcb9..4b9602fefa0c 100644
--- a/pkgs/tools/audio/whisper-ctranslate2/default.nix
+++ b/pkgs/tools/audio/whisper-ctranslate2/default.nix
@@ -5,7 +5,7 @@
 }:
 let
   pname = "whisper-ctranslate2";
-  version = "0.4.2";
+  version = "0.4.3";
 in
 python3.pkgs.buildPythonApplication {
   inherit pname version;
@@ -17,7 +17,7 @@ python3.pkgs.buildPythonApplication {
     owner = "Softcatala";
     repo = "whisper-ctranslate2";
     rev = version;
-    hash = "sha256-q8ofj/MVahBRmE9BSSN9EzadDqJVSxmdTMl53YhrKzY=";
+    hash = "sha256-39kVo4+ZEyjhWbLjw8acW2vJxa3fbQ/tPgnZH3USsYY=";
   };
 
   propagatedBuildInputs = with python3.pkgs; [
diff --git a/pkgs/tools/audio/wyoming/faster-whisper.nix b/pkgs/tools/audio/wyoming/faster-whisper.nix
index 6bebfd5bd630..563f2ce4562d 100644
--- a/pkgs/tools/audio/wyoming/faster-whisper.nix
+++ b/pkgs/tools/audio/wyoming/faster-whisper.nix
@@ -21,6 +21,7 @@ python3Packages.buildPythonApplication rec {
   ];
 
   pythonRelaxDeps = [
+    "faster-whisper"
     "wyoming"
   ];
 
diff --git a/pkgs/tools/backup/bakelite/default.nix b/pkgs/tools/backup/bakelite/default.nix
index 9270be408d2d..d9505562768a 100644
--- a/pkgs/tools/backup/bakelite/default.nix
+++ b/pkgs/tools/backup/bakelite/default.nix
@@ -27,7 +27,7 @@ stdenv.mkDerivation rec {
     homepage = "https://github.com/richfelker/bakelite";
     description = "Incremental backup with strong cryptographic confidentality";
     mainProgram = "bakelite";
-    license = licenses.gpl2;
+    license = licenses.gpl2Only;
     maintainers = with maintainers; [ mvs ];
     # no support for Darwin (yet: https://github.com/richfelker/bakelite/pull/5)
     platforms = platforms.linux;
diff --git a/pkgs/tools/backup/bdsync/default.nix b/pkgs/tools/backup/bdsync/default.nix
index 8018a1b7cfdf..55aff33b03d9 100644
--- a/pkgs/tools/backup/bdsync/default.nix
+++ b/pkgs/tools/backup/bdsync/default.nix
@@ -33,7 +33,7 @@ stdenv.mkDerivation rec {
   meta = with lib; {
     description = "Fast block device synchronizing tool";
     homepage = "https://github.com/rolffokkens/bdsync";
-    license = licenses.gpl2;
+    license = licenses.gpl2Only;
     platforms = platforms.linux;
     maintainers = with maintainers; [ jluttine ];
     mainProgram = "bdsync";
diff --git a/pkgs/tools/backup/borgmatic/default.nix b/pkgs/tools/backup/borgmatic/default.nix
index 1845ea99def9..dba8cf36b3a0 100644
--- a/pkgs/tools/backup/borgmatic/default.nix
+++ b/pkgs/tools/backup/borgmatic/default.nix
@@ -3,6 +3,7 @@
 , borgbackup
 , coreutils
 , python3Packages
+, fetchpatch
 , fetchPypi
 , systemd
 , enableSystemd ? lib.meta.availableOn stdenv.hostPlatform systemd
@@ -13,13 +14,21 @@
 
 python3Packages.buildPythonApplication rec {
   pname = "borgmatic";
-  version = "1.8.10";
+  version = "1.8.11";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "sha256-hR2q49gCD9BZsk+jQ90EfKkkq7mX9qAO+gRsvdnuDec=";
+    sha256 = "sha256-Sgj15etVx8nnk0AZv+GzWscSqfqdC7+1wBE6gF/0aL0=";
   };
 
+  patches = [
+    (fetchpatch {
+      name = "prevent-network-access-in-tests.patch";
+      url = "https://projects.torsion.org/borgmatic-collective/borgmatic/pulls/869.patch";
+      hash = "sha256-jOo3LjgvJtyTaRKZX1wfnKNdw975hVekBkKfK4mJFAc=";
+    })
+  ];
+
   nativeCheckInputs = with python3Packages; [ flexmock pytestCheckHook pytest-cov ] ++ passthru.optional-dependencies.apprise;
 
   # - test_borgmatic_version_matches_news_version
diff --git a/pkgs/tools/backup/chunksync/default.nix b/pkgs/tools/backup/chunksync/default.nix
index 5a2ec9e5db7c..49142f77807c 100644
--- a/pkgs/tools/backup/chunksync/default.nix
+++ b/pkgs/tools/backup/chunksync/default.nix
@@ -27,7 +27,7 @@ stdenv.mkDerivation rec {
     description = "Space-efficient incremental backups of large files or block devices";
     mainProgram = "chunksync";
     homepage = "http://chunksync.florz.de/";
-    license = lib.licenses.gpl2;
+    license = lib.licenses.gpl2Plus;
     platforms = with lib.platforms; linux;
   };
 }
diff --git a/pkgs/tools/backup/duplicity/default.nix b/pkgs/tools/backup/duplicity/default.nix
index 1da3131f85b0..fd5c7c60f0c9 100644
--- a/pkgs/tools/backup/duplicity/default.nix
+++ b/pkgs/tools/backup/duplicity/default.nix
@@ -3,6 +3,7 @@
 , fetchFromGitLab
 , python3
 , librsync
+, glib
 , ncftp
 , gnupg
 , gnutar
@@ -10,6 +11,7 @@
 , util-linux
 , rsync
 , makeWrapper
+, wrapGAppsNoGuiHook
 , gettext
 , getconf
 , testers
@@ -57,11 +59,14 @@ let self = python3.pkgs.buildPythonApplication rec {
     makeWrapper
     gettext
     python3.pkgs.wrapPython
+    wrapGAppsNoGuiHook
     python3.pkgs.setuptools-scm
   ];
 
   buildInputs = [
     librsync
+    # For Gio typelib
+    glib
   ];
 
   pythonPath = with python3.pkgs; [
@@ -99,7 +104,10 @@ let self = python3.pkgs.buildPythonApplication rec {
     fasteners
   ]);
 
-  postInstall = let
+  # Prevent double wrapping, let the Python wrapper use the args in preFixup.
+  dontWrapGApps = true;
+
+  preFixup = let
     binPath = lib.makeBinPath ([
       gnupg
       ncftp
@@ -107,8 +115,16 @@ let self = python3.pkgs.buildPythonApplication rec {
     ] ++ lib.optionals stdenv.isDarwin [
       getconf
     ]); in ''
-    wrapProgram $out/bin/duplicity \
+    makeWrapperArgsBak=("''${makeWrapperArgs[@]}")
+    makeWrapperArgs+=(
+      "''${gappsWrapperArgs[@]}"
       --prefix PATH : "${binPath}"
+    )
+  '';
+
+  postFixup = ''
+    # Restore previous value for tests wrapping in preInstallCheck
+    makeWrapperArgs=("''${makeWrapperArgsBak[@]}")
   '';
 
   preCheck = ''
diff --git a/pkgs/tools/backup/duply/default.nix b/pkgs/tools/backup/duply/default.nix
index d69980cb94b5..77da73a412bb 100644
--- a/pkgs/tools/backup/duply/default.nix
+++ b/pkgs/tools/backup/duply/default.nix
@@ -35,7 +35,7 @@ stdenv.mkDerivation rec {
       secure backups on non-trusted spaces are no child's play?
     '';
     homepage = "https://duply.net/";
-    license = licenses.gpl2;
+    license = licenses.gpl2Only;
     maintainers = [ maintainers.bjornfor ];
     platforms = lib.platforms.unix;
   };
diff --git a/pkgs/tools/backup/mt-st/default.nix b/pkgs/tools/backup/mt-st/default.nix
index 8c62ad6512e0..25ab2f5b2bb1 100644
--- a/pkgs/tools/backup/mt-st/default.nix
+++ b/pkgs/tools/backup/mt-st/default.nix
@@ -17,7 +17,7 @@ stdenv.mkDerivation rec {
       Fork of the standard "mt" tool with additional Linux-specific IOCTLs.
     '';
     homepage = "https://github.com/iustin/mt-st";
-    license = lib.licenses.gpl2;
+    license = lib.licenses.gpl2Only;
     maintainers = [ lib.maintainers.redvers ];
     platforms = lib.platforms.linux;
   };
diff --git a/pkgs/tools/backup/mtx/default.nix b/pkgs/tools/backup/mtx/default.nix
index 683bee11067d..11112911e648 100644
--- a/pkgs/tools/backup/mtx/default.nix
+++ b/pkgs/tools/backup/mtx/default.nix
@@ -21,7 +21,7 @@ stdenv.mkDerivation rec {
       specification.
     '';
     homepage = "https://sourceforge.net/projects/mtx/";
-    license = lib.licenses.gpl2;
+    license = lib.licenses.gpl2Plus;
     maintainers = [ lib.maintainers.redvers ];
     platforms = lib.platforms.linux;
   };
diff --git a/pkgs/tools/backup/partimage/default.nix b/pkgs/tools/backup/partimage/default.nix
index 7a8210566129..bb35fdd7c32c 100644
--- a/pkgs/tools/backup/partimage/default.nix
+++ b/pkgs/tools/backup/partimage/default.nix
@@ -43,7 +43,7 @@ stdenv.mkDerivation rec {
   meta = {
     description = "Opensource disk backup software";
     homepage = "https://www.partimage.org";
-    license = lib.licenses.gpl2;
+    license = lib.licenses.gpl2Plus;
     maintainers = [lib.maintainers.marcweber];
     platforms = lib.platforms.linux;
   };
diff --git a/pkgs/tools/backup/percona-xtrabackup/default.nix b/pkgs/tools/backup/percona-xtrabackup/default.nix
new file mode 100644
index 000000000000..f3466dc9f165
--- /dev/null
+++ b/pkgs/tools/backup/percona-xtrabackup/default.nix
@@ -0,0 +1,6 @@
+pkgs: {
+  percona-xtrabackup_lts = pkgs.callPackage ./lts.nix {
+    boost = pkgs.boost177;
+  };
+  percona-xtrabackup_innovation = pkgs.callPackage ./innovation.nix { };
+}
diff --git a/pkgs/tools/backup/percona-xtrabackup/generic.nix b/pkgs/tools/backup/percona-xtrabackup/generic.nix
index 112a3f556204..6a6906cba33c 100644
--- a/pkgs/tools/backup/percona-xtrabackup/generic.nix
+++ b/pkgs/tools/backup/percona-xtrabackup/generic.nix
@@ -5,14 +5,14 @@
 , version, hash, fetchSubmodules ? false, extraPatches ? [], extraPostInstall ? "", ...
 }:
 
-stdenv.mkDerivation rec {
+stdenv.mkDerivation (finalAttrs: {
   pname = "percona-xtrabackup";
   inherit version;
 
   src = fetchFromGitHub {
     owner = "percona";
     repo = "percona-xtrabackup";
-    rev = "${pname}-${version}";
+    rev = "${finalAttrs.pname}-${finalAttrs.version}";
     inherit hash fetchSubmodules;
   };
 
@@ -47,6 +47,8 @@ stdenv.mkDerivation rec {
     rm -r "$out"/lib/plugin/debug
   '' + extraPostInstall;
 
+  passthru.mysqlVersion = lib.versions.majorMinor finalAttrs.version;
+
   meta = with lib; {
     description = "Non-blocking backup tool for MySQL";
     homepage = "http://www.percona.com/software/percona-xtrabackup";
@@ -54,4 +56,4 @@ stdenv.mkDerivation rec {
     platforms = platforms.linux;
     maintainers = teams.flyingcircus.members ++ [ maintainers.izorkin ];
   };
-}
+})
diff --git a/pkgs/tools/backup/percona-xtrabackup/innovation.nix b/pkgs/tools/backup/percona-xtrabackup/innovation.nix
new file mode 100644
index 000000000000..003df8aa6b50
--- /dev/null
+++ b/pkgs/tools/backup/percona-xtrabackup/innovation.nix
@@ -0,0 +1,15 @@
+{ callPackage, ... } @ args:
+
+callPackage ./generic.nix (args // {
+  version = "8.3.0-1";
+  hash = "sha256-qZM2AFhpwrN0BR+DdozYn7s2I+c1tWpD5QvppTEfGEY=";
+
+  # includes https://github.com/Percona-Lab/libkmip.git
+  fetchSubmodules = true;
+
+  extraPatches = [
+  ];
+
+  extraPostInstall = ''
+  '';
+})
diff --git a/pkgs/tools/backup/percona-xtrabackup/8_0.nix b/pkgs/tools/backup/percona-xtrabackup/lts.nix
index fbb4c045d776..fbb4c045d776 100644
--- a/pkgs/tools/backup/percona-xtrabackup/8_0.nix
+++ b/pkgs/tools/backup/percona-xtrabackup/lts.nix
diff --git a/pkgs/tools/backup/sigtop/default.nix b/pkgs/tools/backup/sigtop/default.nix
index 9c503be790d9..765d0d078946 100644
--- a/pkgs/tools/backup/sigtop/default.nix
+++ b/pkgs/tools/backup/sigtop/default.nix
@@ -2,16 +2,16 @@
 
 buildGoModule rec {
   name = "sigtop";
-  version = "0.10.0";
+  version = "0.11.0";
 
   src = fetchFromGitHub {
     owner = "tbvdm";
     repo = "sigtop";
     rev = "v${version}";
-    sha256 = "sha256-I1gZpzs7GtoS+EQIHXTc9laHMO68uNnIm7eVja3b8BE=";
+    sha256 = "sha256-EQWi+3n3Srsa3MHQym7IIFxxyATnb/79bgy8eqOB46k=";
   };
 
-  vendorHash = "sha256-9IhUGbcDeStFfQV+VEvPCwJUEvrsoiHdWxO0UHxQzqc=";
+  vendorHash = "sha256-IFF7zTrHHoEmPoHGOkTHrb7o+9D5PC8Q+MWHSR2EXog=";
 
   makeFlags = [
     "PREFIX=\${out}"
diff --git a/pkgs/tools/backup/stenc/default.nix b/pkgs/tools/backup/stenc/default.nix
index 96e7ed5eca8d..1f0ea7e2b6a2 100644
--- a/pkgs/tools/backup/stenc/default.nix
+++ b/pkgs/tools/backup/stenc/default.nix
@@ -31,7 +31,7 @@ stdenv.mkDerivation rec {
     description = "SCSI Tape Encryption Manager";
     mainProgram = "stenc";
     homepage = "https://github.com/scsitape/stenc";
-    license = lib.licenses.gpl2;
+    license = lib.licenses.gpl2Only;
     maintainers = with lib.maintainers; [ woffs ];
     platforms = lib.platforms.linux;
   };
diff --git a/pkgs/tools/bluetooth/blueberry/default.nix b/pkgs/tools/bluetooth/blueberry/default.nix
index 63845045c06b..91305ec880d9 100644
--- a/pkgs/tools/bluetooth/blueberry/default.nix
+++ b/pkgs/tools/bluetooth/blueberry/default.nix
@@ -9,7 +9,7 @@
 , pavucontrol
 , python3Packages
 , util-linux
-, wrapGAppsHook
+, wrapGAppsHook3
 }:
 
 stdenv.mkDerivation rec {
@@ -26,7 +26,7 @@ stdenv.mkDerivation rec {
   nativeBuildInputs = [
     gobject-introspection
     python3Packages.wrapPython
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
diff --git a/pkgs/tools/bluetooth/blueman/default.nix b/pkgs/tools/bluetooth/blueman/default.nix
index fb300a45fb54..0266198b1deb 100644
--- a/pkgs/tools/bluetooth/blueman/default.nix
+++ b/pkgs/tools/bluetooth/blueman/default.nix
@@ -1,6 +1,6 @@
 { config, stdenv, lib, fetchurl, intltool, pkg-config, python3Packages, bluez, gtk3
 , obex_data_server, xdg-utils, dnsmasq, dhcpcd, iproute2
-, gnome, librsvg, wrapGAppsHook, gobject-introspection
+, gnome, librsvg, wrapGAppsHook3, gobject-introspection
 , networkmanager, withPulseAudio ? config.pulseaudio or stdenv.isLinux, libpulseaudio }:
 
 let
@@ -17,7 +17,7 @@ in stdenv.mkDerivation rec {
 
   nativeBuildInputs = [
     gobject-introspection intltool pkg-config pythonPackages.cython
-    pythonPackages.wrapPython wrapGAppsHook
+    pythonPackages.wrapPython wrapGAppsHook3
   ];
 
   buildInputs = [ bluez gtk3 pythonPackages.python librsvg
diff --git a/pkgs/tools/bluetooth/obex-data-server/default.nix b/pkgs/tools/bluetooth/obex-data-server/default.nix
index 646d85d7277d..fee4a2522690 100644
--- a/pkgs/tools/bluetooth/obex-data-server/default.nix
+++ b/pkgs/tools/bluetooth/obex-data-server/default.nix
@@ -26,6 +26,6 @@ stdenv.mkDerivation rec {
   meta = with lib; {
     homepage = "http://wiki.muiline.com/obex-data-server";
     platforms = platforms.linux;
-    license = licenses.gpl2;
+    license = licenses.gpl2Plus;
   };
 }
diff --git a/pkgs/tools/cd-dvd/bchunk/default.nix b/pkgs/tools/cd-dvd/bchunk/default.nix
index a3677b984818..f8aabc4f48ef 100644
--- a/pkgs/tools/cd-dvd/bchunk/default.nix
+++ b/pkgs/tools/cd-dvd/bchunk/default.nix
@@ -20,7 +20,7 @@ stdenv.mkDerivation rec {
     homepage = "http://he.fi/bchunk/";
     description = "A program that converts CD images in BIN/CUE format into a set of ISO and CDR tracks";
     platforms = platforms.unix;
-    license = licenses.gpl2;
+    license = licenses.gpl2Plus;
     mainProgram = "bchunk";
   };
 }
diff --git a/pkgs/tools/cd-dvd/brasero/default.nix b/pkgs/tools/cd-dvd/brasero/default.nix
index 03ed0dbf49af..5ee15304968b 100644
--- a/pkgs/tools/cd-dvd/brasero/default.nix
+++ b/pkgs/tools/cd-dvd/brasero/default.nix
@@ -1,6 +1,6 @@
 { stdenv, lib, fetchurl, pkg-config, gtk3, itstool, gst_all_1, libxml2, libnotify
 , libcanberra-gtk3, intltool, dvdauthor, libburn, libisofs
-, vcdimager, wrapGAppsHook, hicolor-icon-theme }:
+, vcdimager, wrapGAppsHook3, hicolor-icon-theme }:
 
 let
   major = "3.12";
@@ -16,7 +16,7 @@ in stdenv.mkDerivation rec {
     hash = "sha256-h3SerjOhQSB9GwC+IzttgEWYLtMkntS5ja4fOpdf6hU=";
   };
 
-  nativeBuildInputs = [ pkg-config itstool intltool wrapGAppsHook ];
+  nativeBuildInputs = [ pkg-config itstool intltool wrapGAppsHook3 ];
 
   buildInputs = [ gtk3 libxml2 libnotify libcanberra-gtk3 libburn libisofs
                   hicolor-icon-theme
diff --git a/pkgs/tools/cd-dvd/ccd2iso/default.nix b/pkgs/tools/cd-dvd/ccd2iso/default.nix
index 4885b16aa065..b364566f4b7d 100644
--- a/pkgs/tools/cd-dvd/ccd2iso/default.nix
+++ b/pkgs/tools/cd-dvd/ccd2iso/default.nix
@@ -12,7 +12,7 @@ stdenv.mkDerivation rec {
   meta = with lib; {
     description = "CloneCD to ISO converter";
     homepage = "https://sourceforge.net/projects/ccd2iso/";
-    license = licenses.gpl2;
+    license = licenses.gpl2Plus;
     maintainers = with maintainers; [ yana ];
     platforms = platforms.unix;
     mainProgram = "ccd2iso";
diff --git a/pkgs/tools/cd-dvd/cdi2iso/default.nix b/pkgs/tools/cd-dvd/cdi2iso/default.nix
index f6d0b4e1175f..3456338d6339 100644
--- a/pkgs/tools/cd-dvd/cdi2iso/default.nix
+++ b/pkgs/tools/cd-dvd/cdi2iso/default.nix
@@ -21,7 +21,7 @@ stdenv.mkDerivation rec {
   meta = with lib; {
     description = "A very simple utility for converting DiscJuggler images to the standard ISO-9660 format";
     homepage = "https://sourceforge.net/projects/cdi2iso.berlios";
-    license = licenses.gpl2;
+    license = licenses.gpl2Plus;
     maintainers = with maintainers; [ hrdinka ];
     platforms = platforms.all;
     mainProgram = "cdi2iso";
diff --git a/pkgs/tools/cd-dvd/cdimgtools/default.nix b/pkgs/tools/cd-dvd/cdimgtools/default.nix
index 5f8d6016aa21..84bb2220e8e8 100644
--- a/pkgs/tools/cd-dvd/cdimgtools/default.nix
+++ b/pkgs/tools/cd-dvd/cdimgtools/default.nix
@@ -29,7 +29,7 @@ stdenv.mkDerivation {
   meta = with lib; {
     homepage = "https://repo.or.cz/cdimgtools.git/blob_plain/refs/heads/release:/README.html";
     description = "Tools to inspect and manipulate CD/DVD optical disc images";
-    license = licenses.gpl2;
+    license = licenses.gpl2Only;
     maintainers = with maintainers; [ hhm ];
     platforms = platforms.linux ++ platforms.darwin;
   };
diff --git a/pkgs/tools/cd-dvd/cdrdao/default.nix b/pkgs/tools/cd-dvd/cdrdao/default.nix
index 959899d3b3f3..40f890915165 100644
--- a/pkgs/tools/cd-dvd/cdrdao/default.nix
+++ b/pkgs/tools/cd-dvd/cdrdao/default.nix
@@ -68,6 +68,6 @@ stdenv.mkDerivation (finalAttrs: {
     description = "A tool for recording audio or data CD-Rs in disk-at-once (DAO) mode";
     homepage = "https://cdrdao.sourceforge.net/";
     platforms = lib.platforms.unix;
-    license = lib.licenses.gpl2;
+    license = lib.licenses.gpl2Plus;
   };
 })
diff --git a/pkgs/tools/cd-dvd/cdrkit/default.nix b/pkgs/tools/cd-dvd/cdrkit/default.nix
index 402e6f4dde37..ae4a06bb57f2 100644
--- a/pkgs/tools/cd-dvd/cdrkit/default.nix
+++ b/pkgs/tools/cd-dvd/cdrkit/default.nix
@@ -75,7 +75,7 @@ stdenv.mkDerivation rec {
     '';
 
     homepage = "http://cdrkit.org/";
-    license = lib.licenses.gpl2;
+    license = lib.licenses.gpl2Plus;
     platforms = lib.platforms.unix;
   };
 }
diff --git a/pkgs/tools/cd-dvd/cdrtools/default.nix b/pkgs/tools/cd-dvd/cdrtools/default.nix
index 68358a0c333f..1a3e58df2cc8 100644
--- a/pkgs/tools/cd-dvd/cdrtools/default.nix
+++ b/pkgs/tools/cd-dvd/cdrtools/default.nix
@@ -33,7 +33,7 @@ stdenv.mkDerivation rec {
   meta = with lib; {
     homepage = "https://cdrtools.sourceforge.net/private/cdrecord.html";
     description = "Highly portable CD/DVD/BluRay command line recording software";
-    license = with licenses; [ cddl gpl2 lgpl21 ];
+    license = with licenses; [ cddl gpl2Plus lgpl21 ];
     platforms = with platforms; linux ++ darwin;
     # Licensing issues: This package contains code licensed under CDDL, GPL2
     # and LGPL2. There is a debate regarding the legality of distributing this
diff --git a/pkgs/tools/cd-dvd/cuetools/default.nix b/pkgs/tools/cd-dvd/cuetools/default.nix
index a6cf5506138b..c3e1779071fd 100644
--- a/pkgs/tools/cd-dvd/cuetools/default.nix
+++ b/pkgs/tools/cd-dvd/cuetools/default.nix
@@ -25,7 +25,7 @@ stdenv.mkDerivation rec {
   meta = with lib; {
     description = "A set of utilities for working with cue files and toc files";
     homepage = "https://github.com/svend/cuetools";
-    license = licenses.gpl2;
+    license = licenses.gpl2Only;
     maintainers = with maintainers; [ codyopel jcumming ];
     platforms = platforms.all;
   };
diff --git a/pkgs/tools/cd-dvd/dvd+rw-tools/default.nix b/pkgs/tools/cd-dvd/dvd+rw-tools/default.nix
index a618d93214f6..a6b75e14bef7 100644
--- a/pkgs/tools/cd-dvd/dvd+rw-tools/default.nix
+++ b/pkgs/tools/cd-dvd/dvd+rw-tools/default.nix
@@ -51,6 +51,6 @@ stdenv.mkDerivation rec {
     homepage = "http://fy.chalmers.se/~appro/linux/DVD+RW/tools";
     description = "Tools for mastering Blu-ray and DVD+-RW/+-R media";
     platforms = platforms.unix;
-    license = with licenses; [ gpl2 publicDomain ];
+    license = with licenses; [ gpl2Only publicDomain ];
   };
 }
diff --git a/pkgs/tools/cd-dvd/dvd-vr/default.nix b/pkgs/tools/cd-dvd/dvd-vr/default.nix
index 43aaa534c041..a9d8e1643742 100644
--- a/pkgs/tools/cd-dvd/dvd-vr/default.nix
+++ b/pkgs/tools/cd-dvd/dvd-vr/default.nix
@@ -13,7 +13,7 @@ stdenv.mkDerivation (finalAttrs: {
     homepage = "https://www.pixelbeat.org/programs/dvd-vr/";
     downloadPage = "https://www.pixelbeat.org/programs/dvd-vr/";
     description = "A utility to identify and optionally copy recordings from a DVD-VR format disc";
-    license = licenses.gpl2;
+    license = licenses.gpl2Plus;
     maintainers = with maintainers; [ fgaz ];
     mainProgram = "dvd-vr";
   };
diff --git a/pkgs/tools/cd-dvd/isomd5sum/default.nix b/pkgs/tools/cd-dvd/isomd5sum/default.nix
index d13a3c5f0f13..671f82281659 100644
--- a/pkgs/tools/cd-dvd/isomd5sum/default.nix
+++ b/pkgs/tools/cd-dvd/isomd5sum/default.nix
@@ -34,7 +34,7 @@ stdenv.mkDerivation rec {
     homepage = "https://github.com/rhinstaller/isomd5sum";
     description = "Utilities for working with md5sum implanted in ISO images";
     platforms = platforms.linux;
-    license = licenses.gpl2;
+    license = licenses.gpl2Plus;
     maintainers = with maintainers; [ knl ];
   };
 }
diff --git a/pkgs/tools/cd-dvd/lsdvd/default.nix b/pkgs/tools/cd-dvd/lsdvd/default.nix
index 3fd116faea5b..c78ed61f4d24 100644
--- a/pkgs/tools/cd-dvd/lsdvd/default.nix
+++ b/pkgs/tools/cd-dvd/lsdvd/default.nix
@@ -14,7 +14,7 @@ stdenv.mkDerivation rec {
   meta = with lib; {
     homepage = "https://sourceforge.net/projects/lsdvd/";
     description = "Display information about audio, video, and subtitle tracks on a DVD";
-    license = licenses.gpl2;
+    license = licenses.gpl2Only;
     platforms = platforms.linux;
     mainProgram = "lsdvd";
   };
diff --git a/pkgs/tools/cd-dvd/mdf2iso/default.nix b/pkgs/tools/cd-dvd/mdf2iso/default.nix
index b5fcc557b4e1..c2057b758707 100644
--- a/pkgs/tools/cd-dvd/mdf2iso/default.nix
+++ b/pkgs/tools/cd-dvd/mdf2iso/default.nix
@@ -13,7 +13,7 @@ stdenv.mkDerivation rec {
   meta = with lib; {
     description = "Small utility that converts MDF images to ISO format";
     homepage = src.url;
-    license = licenses.gpl2;
+    license = licenses.gpl2Plus;
     platforms = platforms.unix;
     maintainers = [ maintainers.oxij ];
     mainProgram = "mdf2iso";
diff --git a/pkgs/tools/cd-dvd/nrg2iso/default.nix b/pkgs/tools/cd-dvd/nrg2iso/default.nix
index 8807466d05a6..a1cfa7481ab7 100644
--- a/pkgs/tools/cd-dvd/nrg2iso/default.nix
+++ b/pkgs/tools/cd-dvd/nrg2iso/default.nix
@@ -19,7 +19,7 @@ stdenv.mkDerivation rec {
   meta = with lib; {
     description = "A linux utils for converting CD (or DVD) image generated by Nero Burning Rom to ISO format";
     homepage = "http://gregory.kokanosky.free.fr/v4/linux/nrg2iso.en.html";
-    license = licenses.gpl2;
+    license = licenses.gpl2Plus;
     platforms = platforms.all;
     mainProgram = "nrg2iso";
   };
diff --git a/pkgs/tools/cd-dvd/vobcopy/default.nix b/pkgs/tools/cd-dvd/vobcopy/default.nix
index dbe192e039bd..4b74ffbc8ad2 100644
--- a/pkgs/tools/cd-dvd/vobcopy/default.nix
+++ b/pkgs/tools/cd-dvd/vobcopy/default.nix
@@ -15,7 +15,7 @@ stdenv.mkDerivation rec {
   meta = {
     description = "Copies DVD .vob files to harddisk, decrypting them on the way";
     homepage = "http://vobcopy.org/projects/c/c.shtml";
-    license = lib.licenses.gpl2;
+    license = lib.licenses.gpl2Plus;
 
     maintainers = [ lib.maintainers.bluescreen303 ];
     platforms = lib.platforms.all;
diff --git a/pkgs/tools/compression/flips/default.nix b/pkgs/tools/compression/flips/default.nix
index e061459ece26..81fe0170aeb3 100644
--- a/pkgs/tools/compression/flips/default.nix
+++ b/pkgs/tools/compression/flips/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetchFromGitHub, gtk3, libdivsufsort, pkg-config, wrapGAppsHook }:
+{ lib, stdenv, fetchFromGitHub, gtk3, libdivsufsort, pkg-config, wrapGAppsHook3 }:
 
 stdenv.mkDerivation {
   pname = "flips";
@@ -11,7 +11,7 @@ stdenv.mkDerivation {
     hash = "sha256-uuHgpt7aWqiMTUILm5tAEGGeZrls3g/DdylYQgsfpTw=";
   };
 
-  nativeBuildInputs = [ pkg-config wrapGAppsHook ];
+  nativeBuildInputs = [ pkg-config wrapGAppsHook3 ];
   buildInputs = [ gtk3 libdivsufsort ];
   patches = [ ./use-system-libdivsufsort.patch ];
   makeFlags = [ "PREFIX=${placeholder "out"}" ];
diff --git a/pkgs/tools/compression/lzop/default.nix b/pkgs/tools/compression/lzop/default.nix
index 64061647667a..887ae94e5c99 100644
--- a/pkgs/tools/compression/lzop/default.nix
+++ b/pkgs/tools/compression/lzop/default.nix
@@ -15,7 +15,7 @@ stdenv.mkDerivation rec {
     homepage = "http://www.lzop.org";
     description = "Fast file compressor";
     maintainers = with maintainers; [ ];
-    license = licenses.gpl2;
+    license = licenses.gpl2Plus;
     platforms = platforms.unix;
     mainProgram = "lzop";
   };
diff --git a/pkgs/tools/filesystems/afpfs-ng/default.nix b/pkgs/tools/filesystems/afpfs-ng/default.nix
index 02dd1a7aafe0..6c3d213f734d 100644
--- a/pkgs/tools/filesystems/afpfs-ng/default.nix
+++ b/pkgs/tools/filesystems/afpfs-ng/default.nix
@@ -22,7 +22,7 @@ stdenv.mkDerivation {
   meta = with lib; {
     homepage    = "https://github.com/simonvetter/afpfs-ng";
     description = "A client implementation of the Apple Filing Protocol";
-    license     = licenses.gpl2;
+    license     = licenses.gpl2Only;
     maintainers = with maintainers; [ rnhmjoj ];
     platforms   = platforms.linux;
   };
diff --git a/pkgs/tools/filesystems/archivemount/default.nix b/pkgs/tools/filesystems/archivemount/default.nix
index 6c0566153a9f..48e78fe7d108 100644
--- a/pkgs/tools/filesystems/archivemount/default.nix
+++ b/pkgs/tools/filesystems/archivemount/default.nix
@@ -15,7 +15,7 @@ stdenv.mkDerivation rec {
   meta = {
     description = "Gateway between FUSE and libarchive: allows mounting of cpio, .tar.gz, .tar.bz2 archives";
     mainProgram = "archivemount";
-    license = lib.licenses.gpl2;
+    license = lib.licenses.gpl2Only;
     platforms = lib.platforms.unix;
   };
 }
diff --git a/pkgs/tools/filesystems/bashmount/default.nix b/pkgs/tools/filesystems/bashmount/default.nix
index dbd573d5f012..4612b11a5777 100644
--- a/pkgs/tools/filesystems/bashmount/default.nix
+++ b/pkgs/tools/filesystems/bashmount/default.nix
@@ -32,7 +32,7 @@ stdenv.mkDerivation rec {
     description = "A menu-driven bash script for the management of removable media with udisks";
     mainProgram = "bashmount";
     maintainers = [ maintainers.koral ];
-    license = licenses.gpl2;
+    license = licenses.gpl2Only;
     platforms = platforms.all;
   };
 }
diff --git a/pkgs/tools/filesystems/bcache-tools/default.nix b/pkgs/tools/filesystems/bcache-tools/default.nix
index 9cd8199005b9..d73d17905432 100644
--- a/pkgs/tools/filesystems/bcache-tools/default.nix
+++ b/pkgs/tools/filesystems/bcache-tools/default.nix
@@ -52,7 +52,7 @@ stdenv.mkDerivation rec {
       tree.
     '';
     homepage = "https://bcache.evilpiepirate.org/";
-    license = licenses.gpl2;
+    license = licenses.gpl2Only;
     platforms = platforms.linux;
     maintainers = [ maintainers.bjornfor ];
   };
diff --git a/pkgs/tools/filesystems/bcachefs-tools/Cargo.lock b/pkgs/tools/filesystems/bcachefs-tools/Cargo.lock
deleted file mode 100644
index 091f76071a2b..000000000000
--- a/pkgs/tools/filesystems/bcachefs-tools/Cargo.lock
+++ /dev/null
@@ -1,871 +0,0 @@
-# This file is automatically @generated by Cargo.
-# It is not intended for manual editing.
-version = 3
-
-[[package]]
-name = "aho-corasick"
-version = "1.1.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b2969dcb958b36655471fc61f7e416fa76033bdd4bfed0678d8fee1e2d07a1f0"
-dependencies = [
- "memchr",
-]
-
-[[package]]
-name = "anstream"
-version = "0.3.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0ca84f3628370c59db74ee214b3263d58f9aadd9b4fe7e711fd87dc452b7f163"
-dependencies = [
- "anstyle",
- "anstyle-parse",
- "anstyle-query",
- "anstyle-wincon",
- "colorchoice",
- "is-terminal",
- "utf8parse",
-]
-
-[[package]]
-name = "anstyle"
-version = "1.0.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "15c4c2c83f81532e5845a733998b6971faca23490340a418e9b72a3ec9de12ea"
-
-[[package]]
-name = "anstyle-parse"
-version = "0.2.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "938874ff5980b03a87c5524b3ae5b59cf99b1d6bc836848df7bc5ada9643c333"
-dependencies = [
- "utf8parse",
-]
-
-[[package]]
-name = "anstyle-query"
-version = "1.0.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5ca11d4be1bab0c8bc8734a9aa7bf4ee8316d462a08c6ac5052f888fef5b494b"
-dependencies = [
- "windows-sys",
-]
-
-[[package]]
-name = "anstyle-wincon"
-version = "1.0.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c677ab05e09154296dd37acecd46420c17b9713e8366facafa8fc0885167cf4c"
-dependencies = [
- "anstyle",
- "windows-sys",
-]
-
-[[package]]
-name = "anyhow"
-version = "1.0.75"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a4668cab20f66d8d020e1fbc0ebe47217433c1b6c8f2040faf858554e394ace6"
-
-[[package]]
-name = "atty"
-version = "0.2.14"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d9b39be18770d11421cdb1b9947a45dd3f37e93092cbf377614828a319d5fee8"
-dependencies = [
- "hermit-abi 0.1.19",
- "libc",
- "winapi",
-]
-
-[[package]]
-name = "autocfg"
-version = "1.1.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d468802bab17cbc0cc575e9b053f41e72aa36bfa6b7f55e3529ffa43161b97fa"
-
-[[package]]
-name = "bcachefs-rust"
-version = "0.3.1"
-dependencies = [
- "anyhow",
- "atty",
- "bch_bindgen",
- "byteorder",
- "chrono",
- "clap",
- "clap_complete",
- "colored",
- "either",
- "errno 0.2.8",
- "gag",
- "getset",
- "libc",
- "log",
- "parse-display",
- "rpassword",
- "udev",
- "uuid",
-]
-
-[[package]]
-name = "bch_bindgen"
-version = "0.1.0"
-dependencies = [
- "anyhow",
- "bindgen",
- "bitfield",
- "bitflags 1.3.2",
- "byteorder",
- "chrono",
- "colored",
- "gag",
- "libc",
- "memoffset",
- "paste",
- "pkg-config",
- "udev",
- "uuid",
-]
-
-[[package]]
-name = "bindgen"
-version = "0.64.0"
-source = "git+https://evilpiepirate.org/git/rust-bindgen.git#f773267b090bf16b9e8375fcbdcd8ba5e88806a8"
-dependencies = [
- "bitflags 1.3.2",
- "cexpr",
- "clang-sys",
- "lazy_static",
- "lazycell",
- "peeking_take_while",
- "proc-macro2",
- "quote",
- "regex",
- "rustc-hash",
- "shlex",
- "syn 1.0.109",
-]
-
-[[package]]
-name = "bitfield"
-version = "0.14.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2d7e60934ceec538daadb9d8432424ed043a904d8e0243f3c6446bce549a46ac"
-
-[[package]]
-name = "bitflags"
-version = "1.3.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a"
-
-[[package]]
-name = "bitflags"
-version = "2.4.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "327762f6e5a765692301e5bb513e0d9fef63be86bbc14528052b1cd3e6f03e07"
-
-[[package]]
-name = "byteorder"
-version = "1.5.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1fd0f2584146f6f2ef48085050886acf353beff7305ebd1ae69500e27c67f64b"
-
-[[package]]
-name = "cc"
-version = "1.0.83"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f1174fb0b6ec23863f8b971027804a42614e347eafb0a95bf0b12cdae21fc4d0"
-dependencies = [
- "libc",
-]
-
-[[package]]
-name = "cexpr"
-version = "0.6.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6fac387a98bb7c37292057cffc56d62ecb629900026402633ae9160df93a8766"
-dependencies = [
- "nom",
-]
-
-[[package]]
-name = "cfg-if"
-version = "1.0.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd"
-
-[[package]]
-name = "chrono"
-version = "0.4.31"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7f2c685bad3eb3d45a01354cedb7d5faa66194d1d58ba6e267a8de788f79db38"
-dependencies = [
- "num-traits",
-]
-
-[[package]]
-name = "clang-sys"
-version = "1.6.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c688fc74432808e3eb684cae8830a86be1d66a2bd58e1f248ed0960a590baf6f"
-dependencies = [
- "glob",
- "libc",
-]
-
-[[package]]
-name = "clap"
-version = "4.3.24"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "fb690e81c7840c0d7aade59f242ea3b41b9bc27bcd5997890e7702ae4b32e487"
-dependencies = [
- "clap_builder",
- "clap_derive",
- "once_cell",
-]
-
-[[package]]
-name = "clap_builder"
-version = "4.3.24"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5ed2e96bc16d8d740f6f48d663eddf4b8a0983e79210fd55479b7bcd0a69860e"
-dependencies = [
- "anstream",
- "anstyle",
- "clap_lex",
- "strsim",
- "terminal_size",
-]
-
-[[package]]
-name = "clap_complete"
-version = "4.3.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5fc443334c81a804575546c5a8a79b4913b50e28d69232903604cada1de817ce"
-dependencies = [
- "clap",
-]
-
-[[package]]
-name = "clap_derive"
-version = "4.3.12"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "54a9bb5758fc5dfe728d1019941681eccaf0cf8a4189b692a0ee2f2ecf90a050"
-dependencies = [
- "heck",
- "proc-macro2",
- "quote",
- "syn 2.0.39",
-]
-
-[[package]]
-name = "clap_lex"
-version = "0.5.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2da6da31387c7e4ef160ffab6d5e7f00c42626fe39aea70a7b0f1773f7dd6c1b"
-
-[[package]]
-name = "colorchoice"
-version = "1.0.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "acbf1af155f9b9ef647e42cdc158db4b64a1b61f743629225fde6f3e0be2a7c7"
-
-[[package]]
-name = "colored"
-version = "2.0.4"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2674ec482fbc38012cf31e6c42ba0177b431a0cb6f15fe40efa5aab1bda516f6"
-dependencies = [
- "is-terminal",
- "lazy_static",
- "windows-sys",
-]
-
-[[package]]
-name = "either"
-version = "1.9.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a26ae43d7bcc3b814de94796a5e736d4029efb0ee900c12e2d54c993ad1a1e07"
-
-[[package]]
-name = "errno"
-version = "0.2.8"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f639046355ee4f37944e44f60642c6f3a7efa3cf6b78c78a0d989a8ce6c396a1"
-dependencies = [
- "errno-dragonfly",
- "libc",
- "winapi",
-]
-
-[[package]]
-name = "errno"
-version = "0.3.7"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f258a7194e7f7c2a7837a8913aeab7fd8c383457034fa20ce4dd3dcb813e8eb8"
-dependencies = [
- "libc",
- "windows-sys",
-]
-
-[[package]]
-name = "errno-dragonfly"
-version = "0.1.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "aa68f1b12764fab894d2755d2518754e71b4fd80ecfb822714a1206c2aab39bf"
-dependencies = [
- "cc",
- "libc",
-]
-
-[[package]]
-name = "fastrand"
-version = "2.0.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "25cbce373ec4653f1a01a31e8a5e5ec0c622dc27ff9c4e6606eefef5cbbed4a5"
-
-[[package]]
-name = "filedescriptor"
-version = "0.8.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7199d965852c3bac31f779ef99cbb4537f80e952e2d6aa0ffeb30cce00f4f46e"
-dependencies = [
- "libc",
- "thiserror",
- "winapi",
-]
-
-[[package]]
-name = "gag"
-version = "1.0.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a713bee13966e9fbffdf7193af71d54a6b35a0bb34997cd6c9519ebeb5005972"
-dependencies = [
- "filedescriptor",
- "tempfile",
-]
-
-[[package]]
-name = "getset"
-version = "0.1.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e45727250e75cc04ff2846a66397da8ef2b3db8e40e0cef4df67950a07621eb9"
-dependencies = [
- "proc-macro-error",
- "proc-macro2",
- "quote",
- "syn 1.0.109",
-]
-
-[[package]]
-name = "glob"
-version = "0.3.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d2fabcfbdc87f4758337ca535fb41a6d701b65693ce38287d856d1674551ec9b"
-
-[[package]]
-name = "heck"
-version = "0.4.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "95505c38b4572b2d910cecb0281560f54b440a19336cbbcb27bf6ce6adc6f5a8"
-
-[[package]]
-name = "hermit-abi"
-version = "0.1.19"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "62b467343b94ba476dcb2500d242dadbb39557df889310ac77c5d99100aaac33"
-dependencies = [
- "libc",
-]
-
-[[package]]
-name = "hermit-abi"
-version = "0.3.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d77f7ec81a6d05a3abb01ab6eb7590f6083d08449fe5a1c8b1e620283546ccb7"
-
-[[package]]
-name = "io-lifetimes"
-version = "1.0.11"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "eae7b9aee968036d54dce06cebaefd919e4472e753296daccd6d344e3e2df0c2"
-dependencies = [
- "hermit-abi 0.3.3",
- "libc",
- "windows-sys",
-]
-
-[[package]]
-name = "is-terminal"
-version = "0.4.9"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "cb0889898416213fab133e1d33a0e5858a48177452750691bde3666d0fdbaf8b"
-dependencies = [
- "hermit-abi 0.3.3",
- "rustix 0.38.25",
- "windows-sys",
-]
-
-[[package]]
-name = "lazy_static"
-version = "1.4.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e2abad23fbc42b3700f2f279844dc832adb2b2eb069b2df918f455c4e18cc646"
-
-[[package]]
-name = "lazycell"
-version = "1.3.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "830d08ce1d1d941e6b30645f1a0eb5643013d835ce3779a5fc208261dbe10f55"
-
-[[package]]
-name = "libc"
-version = "0.2.150"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "89d92a4743f9a61002fae18374ed11e7973f530cb3a3255fb354818118b2203c"
-
-[[package]]
-name = "libudev-sys"
-version = "0.1.4"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3c8469b4a23b962c1396b9b451dda50ef5b283e8dd309d69033475fa9b334324"
-dependencies = [
- "libc",
- "pkg-config",
-]
-
-[[package]]
-name = "linux-raw-sys"
-version = "0.3.8"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ef53942eb7bf7ff43a617b3e2c1c4a5ecf5944a7c1bc12d7ee39bbb15e5c1519"
-
-[[package]]
-name = "linux-raw-sys"
-version = "0.4.11"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "969488b55f8ac402214f3f5fd243ebb7206cf82de60d3172994707a4bcc2b829"
-
-[[package]]
-name = "log"
-version = "0.4.20"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b5e6163cb8c49088c2c36f57875e58ccd8c87c7427f7fbd50ea6710b2f3f2e8f"
-
-[[package]]
-name = "memchr"
-version = "2.6.4"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f665ee40bc4a3c5590afb1e9677db74a508659dfd71e126420da8274909a0167"
-
-[[package]]
-name = "memoffset"
-version = "0.8.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d61c719bcfbcf5d62b3a09efa6088de8c54bc0bfcd3ea7ae39fcc186108b8de1"
-dependencies = [
- "autocfg",
-]
-
-[[package]]
-name = "minimal-lexical"
-version = "0.2.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "68354c5c6bd36d73ff3feceb05efa59b6acb7626617f4962be322a825e61f79a"
-
-[[package]]
-name = "nom"
-version = "7.1.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d273983c5a657a70a3e8f2a01329822f3b8c8172b73826411a55751e404a0a4a"
-dependencies = [
- "memchr",
- "minimal-lexical",
-]
-
-[[package]]
-name = "num-traits"
-version = "0.2.17"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "39e3200413f237f41ab11ad6d161bc7239c84dcb631773ccd7de3dfe4b5c267c"
-dependencies = [
- "autocfg",
-]
-
-[[package]]
-name = "once_cell"
-version = "1.18.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "dd8b5dd2ae5ed71462c540258bedcb51965123ad7e7ccf4b9a8cafaa4a63576d"
-
-[[package]]
-name = "parse-display"
-version = "0.1.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "bd87725635cbae7fe960f91f55a114ed104e637790317cc8d9197ea16b058010"
-dependencies = [
- "lazy_static",
- "parse-display-derive",
- "regex",
-]
-
-[[package]]
-name = "parse-display-derive"
-version = "0.1.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "cc52b391380aa8550348736a356bf028f5469391d580533a566e97543f55e813"
-dependencies = [
- "lazy_static",
- "proc-macro2",
- "quote",
- "regex",
- "regex-syntax 0.6.29",
- "syn 1.0.109",
-]
-
-[[package]]
-name = "paste"
-version = "1.0.14"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "de3145af08024dea9fa9914f381a17b8fc6034dfb00f3a84013f7ff43f29ed4c"
-
-[[package]]
-name = "peeking_take_while"
-version = "0.1.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "19b17cddbe7ec3f8bc800887bab5e717348c95ea2ca0b1bf0837fb964dc67099"
-
-[[package]]
-name = "pkg-config"
-version = "0.3.27"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "26072860ba924cbfa98ea39c8c19b4dd6a4a25423dbdf219c1eca91aa0cf6964"
-
-[[package]]
-name = "proc-macro-error"
-version = "1.0.4"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "da25490ff9892aab3fcf7c36f08cfb902dd3e71ca0f9f9517bea02a73a5ce38c"
-dependencies = [
- "proc-macro-error-attr",
- "proc-macro2",
- "quote",
- "syn 1.0.109",
- "version_check",
-]
-
-[[package]]
-name = "proc-macro-error-attr"
-version = "1.0.4"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a1be40180e52ecc98ad80b184934baf3d0d29f979574e439af5a55274b35f869"
-dependencies = [
- "proc-macro2",
- "quote",
- "version_check",
-]
-
-[[package]]
-name = "proc-macro2"
-version = "1.0.69"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "134c189feb4956b20f6f547d2cf727d4c0fe06722b20a0eec87ed445a97f92da"
-dependencies = [
- "unicode-ident",
-]
-
-[[package]]
-name = "quote"
-version = "1.0.33"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5267fca4496028628a95160fc423a33e8b2e6af8a5302579e322e4b520293cae"
-dependencies = [
- "proc-macro2",
-]
-
-[[package]]
-name = "redox_syscall"
-version = "0.4.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4722d768eff46b75989dd134e5c353f0d6296e5aaa3132e776cbdb56be7731aa"
-dependencies = [
- "bitflags 1.3.2",
-]
-
-[[package]]
-name = "regex"
-version = "1.10.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "380b951a9c5e80ddfd6136919eef32310721aa4aacd4889a8d39124b026ab343"
-dependencies = [
- "aho-corasick",
- "memchr",
- "regex-automata",
- "regex-syntax 0.8.2",
-]
-
-[[package]]
-name = "regex-automata"
-version = "0.4.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5f804c7828047e88b2d32e2d7fe5a105da8ee3264f01902f796c8e067dc2483f"
-dependencies = [
- "aho-corasick",
- "memchr",
- "regex-syntax 0.8.2",
-]
-
-[[package]]
-name = "regex-syntax"
-version = "0.6.29"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f162c6dd7b008981e4d40210aca20b4bd0f9b60ca9271061b07f78537722f2e1"
-
-[[package]]
-name = "regex-syntax"
-version = "0.8.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c08c74e62047bb2de4ff487b251e4a92e24f48745648451635cec7d591162d9f"
-
-[[package]]
-name = "rpassword"
-version = "4.0.5"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "99371657d3c8e4d816fb6221db98fa408242b0b53bac08f8676a41f8554fe99f"
-dependencies = [
- "libc",
- "winapi",
-]
-
-[[package]]
-name = "rustc-hash"
-version = "1.1.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "08d43f7aa6b08d49f382cde6a7982047c3426db949b1424bc4b7ec9ae12c6ce2"
-
-[[package]]
-name = "rustix"
-version = "0.37.27"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "fea8ca367a3a01fe35e6943c400addf443c0f57670e6ec51196f71a4b8762dd2"
-dependencies = [
- "bitflags 1.3.2",
- "errno 0.3.7",
- "io-lifetimes",
- "libc",
- "linux-raw-sys 0.3.8",
- "windows-sys",
-]
-
-[[package]]
-name = "rustix"
-version = "0.38.25"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "dc99bc2d4f1fed22595588a013687477aedf3cdcfb26558c559edb67b4d9b22e"
-dependencies = [
- "bitflags 2.4.1",
- "errno 0.3.7",
- "libc",
- "linux-raw-sys 0.4.11",
- "windows-sys",
-]
-
-[[package]]
-name = "shlex"
-version = "1.2.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a7cee0529a6d40f580e7a5e6c495c8fbfe21b7b52795ed4bb5e62cdf92bc6380"
-
-[[package]]
-name = "strsim"
-version = "0.10.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "73473c0e59e6d5812c5dfe2a064a6444949f089e20eec9a2e5506596494e4623"
-
-[[package]]
-name = "syn"
-version = "1.0.109"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "72b64191b275b66ffe2469e8af2c1cfe3bafa67b529ead792a6d0160888b4237"
-dependencies = [
- "proc-macro2",
- "quote",
- "unicode-ident",
-]
-
-[[package]]
-name = "syn"
-version = "2.0.39"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "23e78b90f2fcf45d3e842032ce32e3f2d1545ba6636271dcbf24fa306d87be7a"
-dependencies = [
- "proc-macro2",
- "quote",
- "unicode-ident",
-]
-
-[[package]]
-name = "tempfile"
-version = "3.8.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7ef1adac450ad7f4b3c28589471ade84f25f731a7a0fe30d71dfa9f60fd808e5"
-dependencies = [
- "cfg-if",
- "fastrand",
- "redox_syscall",
- "rustix 0.38.25",
- "windows-sys",
-]
-
-[[package]]
-name = "terminal_size"
-version = "0.2.6"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8e6bf6f19e9f8ed8d4048dc22981458ebcf406d67e94cd422e5ecd73d63b3237"
-dependencies = [
- "rustix 0.37.27",
- "windows-sys",
-]
-
-[[package]]
-name = "thiserror"
-version = "1.0.50"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f9a7210f5c9a7156bb50aa36aed4c95afb51df0df00713949448cf9e97d382d2"
-dependencies = [
- "thiserror-impl",
-]
-
-[[package]]
-name = "thiserror-impl"
-version = "1.0.50"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "266b2e40bc00e5a6c09c3584011e08b06f123c00362c92b975ba9843aaaa14b8"
-dependencies = [
- "proc-macro2",
- "quote",
- "syn 2.0.39",
-]
-
-[[package]]
-name = "udev"
-version = "0.7.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4ebdbbd670373442a12fe9ef7aeb53aec4147a5a27a00bbc3ab639f08f48191a"
-dependencies = [
- "libc",
- "libudev-sys",
- "pkg-config",
-]
-
-[[package]]
-name = "unicode-ident"
-version = "1.0.12"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3354b9ac3fae1ff6755cb6db53683adb661634f67557942dea4facebec0fee4b"
-
-[[package]]
-name = "utf8parse"
-version = "0.2.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "711b9620af191e0cdc7468a8d14e709c3dcdb115b36f838e601583af800a370a"
-
-[[package]]
-name = "uuid"
-version = "1.6.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5e395fcf16a7a3d8127ec99782007af141946b4795001f876d54fb0d55978560"
-
-[[package]]
-name = "version_check"
-version = "0.9.4"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "49874b5167b65d7193b8aba1567f5c7d93d001cafc34600cee003eda787e483f"
-
-[[package]]
-name = "winapi"
-version = "0.3.9"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5c839a674fcd7a98952e593242ea400abe93992746761e38641405d28b00f419"
-dependencies = [
- "winapi-i686-pc-windows-gnu",
- "winapi-x86_64-pc-windows-gnu",
-]
-
-[[package]]
-name = "winapi-i686-pc-windows-gnu"
-version = "0.4.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ac3b87c63620426dd9b991e5ce0329eff545bccbbb34f3be09ff6fb6ab51b7b6"
-
-[[package]]
-name = "winapi-x86_64-pc-windows-gnu"
-version = "0.4.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f"
-
-[[package]]
-name = "windows-sys"
-version = "0.48.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "677d2418bec65e3338edb076e806bc1ec15693c5d0104683f2efe857f61056a9"
-dependencies = [
- "windows-targets",
-]
-
-[[package]]
-name = "windows-targets"
-version = "0.48.5"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9a2fa6e2155d7247be68c096456083145c183cbbbc2764150dda45a87197940c"
-dependencies = [
- "windows_aarch64_gnullvm",
- "windows_aarch64_msvc",
- "windows_i686_gnu",
- "windows_i686_msvc",
- "windows_x86_64_gnu",
- "windows_x86_64_gnullvm",
- "windows_x86_64_msvc",
-]
-
-[[package]]
-name = "windows_aarch64_gnullvm"
-version = "0.48.5"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2b38e32f0abccf9987a4e3079dfb67dcd799fb61361e53e2882c3cbaf0d905d8"
-
-[[package]]
-name = "windows_aarch64_msvc"
-version = "0.48.5"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "dc35310971f3b2dbbf3f0690a219f40e2d9afcf64f9ab7cc1be722937c26b4bc"
-
-[[package]]
-name = "windows_i686_gnu"
-version = "0.48.5"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a75915e7def60c94dcef72200b9a8e58e5091744960da64ec734a6c6e9b3743e"
-
-[[package]]
-name = "windows_i686_msvc"
-version = "0.48.5"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8f55c233f70c4b27f66c523580f78f1004e8b5a8b659e05a4eb49d4166cca406"
-
-[[package]]
-name = "windows_x86_64_gnu"
-version = "0.48.5"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "53d40abd2583d23e4718fddf1ebec84dbff8381c07cae67ff7768bbf19c6718e"
-
-[[package]]
-name = "windows_x86_64_gnullvm"
-version = "0.48.5"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0b7b52767868a23d5bab768e390dc5f5c55825b6d30b86c844ff2dc7414044cc"
-
-[[package]]
-name = "windows_x86_64_msvc"
-version = "0.48.5"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ed94fce61571a4006852b7389a063ab983c02eb1bb37b47f8272ce92d06d9538"
diff --git a/pkgs/tools/filesystems/bcachefs-tools/default.nix b/pkgs/tools/filesystems/bcachefs-tools/default.nix
index 36566dc71002..c49d1a856198 100644
--- a/pkgs/tools/filesystems/bcachefs-tools/default.nix
+++ b/pkgs/tools/filesystems/bcachefs-tools/default.nix
@@ -1,37 +1,39 @@
-{ lib
-, stdenv
-, fetchFromGitHub
-, pkg-config
-, libuuid
-, libsodium
-, keyutils
-, liburcu
-, zlib
-, libaio
-, zstd
-, lz4
-, attr
-, udev
-, nixosTests
-, fuse3
-, cargo
-, rustc
-, rustPlatform
-, makeWrapper
-, writeScript
-, python3
-, fuseSupport ? false
+{
+  lib,
+  stdenv,
+  fetchFromGitHub,
+  fetchpatch,
+  pkg-config,
+  libuuid,
+  libsodium,
+  keyutils,
+  liburcu,
+  zlib,
+  libaio,
+  zstd,
+  lz4,
+  attr,
+  udev,
+  nixosTests,
+  fuse3,
+  cargo,
+  rustc,
+  rustPlatform,
+  makeWrapper,
+  nix-update-script,
+  python3,
+  fuseSupport ? false,
 }:
 
 stdenv.mkDerivation (finalAttrs: {
   pname = "bcachefs-tools";
-  version = "1.4.1";
+  version = "1.7.0";
 
   src = fetchFromGitHub {
     owner = "koverstreet";
     repo = "bcachefs-tools";
     rev = "v${finalAttrs.version}";
-    hash = "sha256-+KqTiIp9dIJWG2KvgvPwXC7p754XfgvKHjvwjCdbvCs=";
+    hash = "sha256-nHT18bADESDBHoo9P+J3gGc092hRYs2vaWupgqlkvaA=";
   };
 
   nativeBuildInputs = [
@@ -43,14 +45,6 @@ stdenv.mkDerivation (finalAttrs: {
     makeWrapper
   ];
 
-  cargoRoot = "rust-src";
-  cargoDeps = rustPlatform.importCargoLock {
-    lockFile = ./Cargo.lock;
-    outputHashes = {
-      "bindgen-0.64.0" = "sha256-GNG8as33HLRYJGYe0nw6qBzq86aHiGonyynEM7gaEE4=";
-    };
-  };
-
   buildInputs = [
     libaio
     keyutils
@@ -65,20 +59,33 @@ stdenv.mkDerivation (finalAttrs: {
     udev
   ] ++ lib.optional fuseSupport fuse3;
 
-  # FIXME: Try enabling this once the default linux kernel is at least 6.7
-  doCheck = false; # needs bcachefs module loaded on builder
-  checkFlags = [ "BCACHEFS_TEST_USE_VALGRIND=no" ];
+  cargoDeps = rustPlatform.fetchCargoTarball {
+    src = finalAttrs.src;
+    hash = "sha256-RsRz/nb8L+pL1U4l6RnvqeDFddPvcBFH4wdV7G60pxA=";
+  };
 
   makeFlags = [
     "PREFIX=${placeholder "out"}"
     "VERSION=${finalAttrs.version}"
     "INITRAMFS_DIR=${placeholder "out"}/etc/initramfs-tools"
-    "BCACHEFS_FUSE=${toString fuseSupport}"
-  ];
+  ] ++ lib.optional fuseSupport "BCACHEFS_FUSE=1";
+
+  # FIXME: Try enabling this once the default linux kernel is at least 6.7
+  doCheck = false; # needs bcachefs module loaded on builder
+
+  patches = [
+    # code refactoring of bcachefs-tools broke reading passphrases from stdin (vs. terminal)
+    # upstream issue https://github.com/koverstreet/bcachefs-tools/issues/261
+    (fetchpatch {
+    url = "https://github.com/koverstreet/bcachefs-tools/commit/38b0cb721d2a35f5a4af429bc7bd367461f2fa26.patch";
+    hash = "sha256-/9reye+Qoa+EMkS+wfdX+KwDeLHHJ/S+Qm7sWl0MtqM=";
+  })
+];
 
   preCheck = lib.optionalString (!fuseSupport) ''
     rm tests/test_fuse.py
   '';
+  checkFlags = [ "BCACHEFS_TEST_USE_VALGRIND=no" ];
 
   # Tries to install to the 'systemd-minimal' and 'udev' nix installation paths
   installFlags = [
@@ -97,27 +104,20 @@ stdenv.mkDerivation (finalAttrs: {
       inherit (nixosTests.installer) bcachefsSimple bcachefsEncrypted bcachefsMulti;
     };
 
-    updateScript = writeScript "update-bcachefs-tools-and-cargo-lock.sh" ''
-      #!/usr/bin/env nix-shell
-      #!nix-shell -i bash -p curl jq common-updater-scripts
-      res="$(curl ''${GITHUB_TOKEN:+-u ":$GITHUB_TOKEN"} \
-        -sL "https://api.github.com/repos/${finalAttrs.src.owner}/${finalAttrs.src.repo}/tags?per_page=1")"
-
-      version="$(echo $res | jq '.[0].name | split("v") | .[1]' --raw-output)"
-      update-source-version ${finalAttrs.pname} "$version" --ignore-same-hash
-
-      curl "https://raw.githubusercontent.com/${finalAttrs.src.owner}/${finalAttrs.src.repo}/v$version/rust-src/Cargo.lock" > \
-        "$(git rev-parse --show-toplevel)/pkgs/tools/filesystems/bcachefs-tools/Cargo.lock"
-    '';
+    updateScript = nix-update-script {};
   };
 
   enableParallelBuilding = true;
 
-  meta = with lib; {
+  meta = {
     description = "Tool for managing bcachefs filesystems";
     homepage = "https://bcachefs.org/";
-    license = licenses.gpl2;
-    maintainers = with maintainers; [ davidak Madouura ];
-    platforms = platforms.linux;
+    license = lib.licenses.gpl2Only;
+    maintainers = with lib.maintainers; [
+      davidak
+      johnrtitor
+      Madouura
+    ];
+    platforms = lib.platforms.linux;
   };
 })
diff --git a/pkgs/tools/filesystems/bindfs/default.nix b/pkgs/tools/filesystems/bindfs/default.nix
index f7d5ce61d81c..fbd016eda799 100644
--- a/pkgs/tools/filesystems/bindfs/default.nix
+++ b/pkgs/tools/filesystems/bindfs/default.nix
@@ -7,12 +7,12 @@
 }:
 
 stdenv.mkDerivation (finalAttrs: {
-  version = "1.17.6";
+  version = "1.17.7";
   pname = "bindfs";
 
   src = fetchurl {
     url = "https://bindfs.org/downloads/bindfs-${finalAttrs.version}.tar.gz";
-    hash = "sha256-076zzGm7K2gCzFOViOkh/qlz7WGRsTPyAkcZMR0cwYs=";
+    hash = "sha256-wLBg6Uw6IxodSqC88mb/GJmBpO845C++IylqfYFxm3o=";
   };
 
   nativeBuildInputs = [
@@ -32,5 +32,6 @@ stdenv.mkDerivation (finalAttrs: {
     license = lib.licenses.gpl2Only;
     maintainers = with lib.maintainers; [ lovek323 lovesegfault ];
     platforms = lib.platforms.unix;
+    broken = stdenv.isDarwin; # last successful build 2023-11-17
   };
 })
diff --git a/pkgs/tools/filesystems/btrfs-progs/default.nix b/pkgs/tools/filesystems/btrfs-progs/default.nix
index cd8bf05ab6df..6e2bdaea8f9e 100644
--- a/pkgs/tools/filesystems/btrfs-progs/default.nix
+++ b/pkgs/tools/filesystems/btrfs-progs/default.nix
@@ -10,11 +10,11 @@
 
 stdenv.mkDerivation rec {
   pname = "btrfs-progs";
-  version = "6.8";
+  version = "6.8.1";
 
   src = fetchurl {
     url = "mirror://kernel/linux/kernel/people/kdave/btrfs-progs/btrfs-progs-v${version}.tar.xz";
-    hash = "sha256-nCFkX+rBgmEeKLR3adX2E8ueLsq1js5gsQ5sVanq1XU=";
+    hash = "sha256-DkCgaKJsKWnLAqlbqf74iNemNW4/RX/5KtJHfQhzVng=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/tools/filesystems/ceph/default.nix b/pkgs/tools/filesystems/ceph/default.nix
index 6b01e22f6169..df15ef388fee 100644
--- a/pkgs/tools/filesystems/ceph/default.nix
+++ b/pkgs/tools/filesystems/ceph/default.nix
@@ -41,7 +41,7 @@
 , lz4
 , oath-toolkit
 , openldap
-, python310
+, python311
 , rdkafka
 , rocksdb
 , snappy
@@ -140,7 +140,7 @@ let
   getMeta = description: with lib; {
      homepage = "https://ceph.io/en/";
      inherit description;
-     license = with licenses; [ lgpl21 gpl2 bsd3 mit publicDomain ];
+     license = with licenses; [ lgpl21 gpl2Only bsd3 mit publicDomain ];
      maintainers = with maintainers; [ adev ak johanot krav ];
      platforms = [ "x86_64-linux" "aarch64-linux" ];
    };
@@ -168,7 +168,7 @@ let
   };
 
   # Watch out for python <> boost compatibility
-  python = python310.override {
+  python = python311.override {
     packageOverrides = self: super: let
       cryptographyOverrideVersion = "40.0.1";
       bcryptOverrideVersion = "4.0.1";
@@ -242,6 +242,9 @@ let
         disabledTests = old.disabledTests or [ ] ++ [
           "test_export_md5_digest"
         ];
+        propagatedBuildInputs = old.propagatedBuildInputs or [ ] ++ [
+          self.flaky
+        ];
       });
 
       # Ceph does not support `kubernetes` >= 19, see:
diff --git a/pkgs/tools/filesystems/chunkfs/default.nix b/pkgs/tools/filesystems/chunkfs/default.nix
index e4a20e3da5a0..e77da2d712bb 100644
--- a/pkgs/tools/filesystems/chunkfs/default.nix
+++ b/pkgs/tools/filesystems/chunkfs/default.nix
@@ -24,7 +24,7 @@ stdenv.mkDerivation rec {
   meta = {
     description = "FUSE filesystems for viewing chunksync-style directory trees as a block device and vice versa";
     homepage = "http://chunkfs.florz.de/";
-    license = lib.licenses.gpl2;
+    license = lib.licenses.gpl2Plus;
     platforms = with lib.platforms; linux;
   };
 }
diff --git a/pkgs/tools/filesystems/ciopfs/default.nix b/pkgs/tools/filesystems/ciopfs/default.nix
index 31311756ab47..8b34f0f4ea26 100644
--- a/pkgs/tools/filesystems/ciopfs/default.nix
+++ b/pkgs/tools/filesystems/ciopfs/default.nix
@@ -17,7 +17,7 @@ stdenv.mkDerivation rec {
   meta = {
     homepage = "https://www.brain-dump.org/projects/ciopfs/";
     description = "A case-insensitive filesystem layered on top of any other filesystem";
-    license = lib.licenses.gpl2;
+    license = lib.licenses.gpl2Only;
     platforms = lib.platforms.linux;
   };
 }
diff --git a/pkgs/tools/filesystems/dislocker/default.nix b/pkgs/tools/filesystems/dislocker/default.nix
index 396f8142ba93..f73c49d9799e 100644
--- a/pkgs/tools/filesystems/dislocker/default.nix
+++ b/pkgs/tools/filesystems/dislocker/default.nix
@@ -38,7 +38,7 @@ stdenv.mkDerivation rec {
   meta = with lib; {
     description = "Read BitLocker encrypted partitions in Linux";
     homepage    = "https://github.com/aorimn/dislocker";
-    license     = licenses.gpl2;
+    license     = licenses.gpl2Plus;
     maintainers = with maintainers; [ elitak ];
     platforms   = platforms.unix;
   };
diff --git a/pkgs/tools/filesystems/djmount/default.nix b/pkgs/tools/filesystems/djmount/default.nix
index 52a89013ced6..bcd8521b6a15 100644
--- a/pkgs/tools/filesystems/djmount/default.nix
+++ b/pkgs/tools/filesystems/djmount/default.nix
@@ -31,6 +31,6 @@ stdenv.mkDerivation rec {
     mainProgram = "djmount";
     platforms = lib.platforms.linux;
     maintainers = [ lib.maintainers.jagajaga ];
-    license = lib.licenses.gpl2;
+    license = lib.licenses.gpl2Plus;
   };
 }
diff --git a/pkgs/tools/filesystems/duperemove/default.nix b/pkgs/tools/filesystems/duperemove/default.nix
index c1d860256804..0f8e8d30469e 100644
--- a/pkgs/tools/filesystems/duperemove/default.nix
+++ b/pkgs/tools/filesystems/duperemove/default.nix
@@ -44,7 +44,7 @@ stdenv.mkDerivation rec {
   meta = with lib; {
     description = "A simple tool for finding duplicated extents and submitting them for deduplication";
     homepage = "https://github.com/markfasheh/duperemove";
-    license = licenses.gpl2;
+    license = licenses.gpl2Only;
     maintainers = with maintainers; [ bluescreen303 thoughtpolice ];
     platforms = platforms.linux;
     mainProgram = "duperemove";
diff --git a/pkgs/tools/filesystems/e2tools/default.nix b/pkgs/tools/filesystems/e2tools/default.nix
index d448b0f67b5f..02c97f88daa1 100644
--- a/pkgs/tools/filesystems/e2tools/default.nix
+++ b/pkgs/tools/filesystems/e2tools/default.nix
@@ -19,7 +19,7 @@ stdenv.mkDerivation rec {
   meta = {
     homepage = "https://e2tools.github.io/";
     description = "Utilities to read/write/manipulate files in an ext2/ext3 filesystem";
-    license = lib.licenses.gpl2;
+    license = lib.licenses.gpl2Only;
     platforms = lib.platforms.linux;
     maintainers = [ lib.maintainers.leenaars ];
   };
diff --git a/pkgs/tools/filesystems/ext4magic/default.nix b/pkgs/tools/filesystems/ext4magic/default.nix
index bb23f58c38c6..2af139c619d6 100644
--- a/pkgs/tools/filesystems/ext4magic/default.nix
+++ b/pkgs/tools/filesystems/ext4magic/default.nix
@@ -33,7 +33,7 @@ stdenv.mkDerivation rec {
       It's much more effective and works much better than extundelete.
     '';
     homepage = "https://ext4magic.sourceforge.net/ext4magic_en.html";
-    license = licenses.gpl2;
+    license = licenses.gpl2Plus;
     platforms = platforms.linux;
     maintainers = [ maintainers.rkoe ];
     mainProgram = "ext4magic";
diff --git a/pkgs/tools/filesystems/extundelete/default.nix b/pkgs/tools/filesystems/extundelete/default.nix
index 0c3062fb11ca..d15295659385 100644
--- a/pkgs/tools/filesystems/extundelete/default.nix
+++ b/pkgs/tools/filesystems/extundelete/default.nix
@@ -22,7 +22,7 @@ stdenv.mkDerivation {
   meta = with lib; {
     description = "Utility that can recover deleted files from an ext3 or ext4 partition";
     homepage = "https://extundelete.sourceforge.net/";
-    license = licenses.gpl2;
+    license = licenses.gpl2Only;
     platforms = platforms.linux;
     maintainers = [ maintainers.domenkozar ];
     mainProgram = "extundelete";
diff --git a/pkgs/tools/filesystems/f2fs-tools/default.nix b/pkgs/tools/filesystems/f2fs-tools/default.nix
index d0d97f124d09..2a913be9fa80 100644
--- a/pkgs/tools/filesystems/f2fs-tools/default.nix
+++ b/pkgs/tools/filesystems/f2fs-tools/default.nix
@@ -27,7 +27,7 @@ stdenv.mkDerivation rec {
   meta = with lib; {
     homepage = "https://git.kernel.org/pub/scm/linux/kernel/git/jaegeuk/f2fs-tools.git/";
     description = "Userland tools for the f2fs filesystem";
-    license = licenses.gpl2;
+    license = licenses.gpl2Only;
     platforms = platforms.linux;
     maintainers = with maintainers; [ ehmry jagajaga ];
   };
diff --git a/pkgs/tools/filesystems/fuseiso/default.nix b/pkgs/tools/filesystems/fuseiso/default.nix
index b731e9c7cc96..a2d42bb5a2a7 100644
--- a/pkgs/tools/filesystems/fuseiso/default.nix
+++ b/pkgs/tools/filesystems/fuseiso/default.nix
@@ -49,7 +49,7 @@ stdenv.mkDerivation rec {
   meta = with lib; {
     description = "FUSE module to mount ISO filesystem images";
     homepage = "https://sourceforge.net/projects/fuseiso";
-    license = licenses.gpl2;
+    license = licenses.gpl2Plus;
     platforms = platforms.linux;
     mainProgram = "fuseiso";
   };
diff --git a/pkgs/tools/filesystems/garage/default.nix b/pkgs/tools/filesystems/garage/default.nix
index 311661a804e3..b90a2e49bffe 100644
--- a/pkgs/tools/filesystems/garage/default.nix
+++ b/pkgs/tools/filesystems/garage/default.nix
@@ -93,6 +93,7 @@ rec {
   # Until Garage hits 1.0, 0.7.3 is equivalent to 7.3.0 for now, therefore
   # we have to keep all the numbers in the version to handle major/minor/patch level.
   # for <1.0.
+  # Please add new versions to nixos/tests/garage/default.nix as well.
 
   garage_0_8_7 = generic {
     version = "0.8.7";
diff --git a/pkgs/tools/filesystems/gcsfuse/default.nix b/pkgs/tools/filesystems/gcsfuse/default.nix
index 78bf3faacd24..49fa05e23fee 100644
--- a/pkgs/tools/filesystems/gcsfuse/default.nix
+++ b/pkgs/tools/filesystems/gcsfuse/default.nix
@@ -5,32 +5,30 @@
 
 buildGoModule rec {
   pname = "gcsfuse";
-  version = "2.0.0";
+  version = "2.0.1";
 
   src = fetchFromGitHub {
     owner = "googlecloudplatform";
     repo = "gcsfuse";
     rev = "v${version}";
-    hash = "sha256-brE6iwIMPRAQfERTOhVVne1Dy/ZdPUrA01G7Gj5k//Y=";
+    hash = "sha256-8O8JIN2KmTw5bMmcxu9ZeNiS48XkMUUpAX3+6Km13Y8=";
   };
 
-  vendorHash = "sha256-0I/PFMZXqE3EZv52CESsao4ygvYXIEgRE4EyV1CqM54=";
+  vendorHash = "sha256-nw2b0lDUJ9B+LloySns4cUzXeJ8uv4oYkZY0Jjg4hxc=";
 
   subPackages = [ "." "tools/mount_gcsfuse" ];
 
   ldflags = [ "-s" "-w" "-X main.gcsfuseVersion=${version}" ];
 
-  preCheck =
+  checkFlags =
     let
       skippedTests = [
+        # Disable flaky tests
         "Test_Main"
         "TestFlags"
       ];
     in
-    ''
-      # Disable flaky tests
-      buildFlagsArray+=("-run" "[^(${builtins.concatStringsSep "|" skippedTests})]")
-    '';
+    [ "-skip=^${builtins.concatStringsSep "$|^" skippedTests}$" ];
 
   postInstall = ''
     ln -s $out/bin/mount_gcsfuse $out/bin/mount.gcsfuse
diff --git a/pkgs/tools/filesystems/genext2fs/default.nix b/pkgs/tools/filesystems/genext2fs/default.nix
index b640c99dc82f..cf9cf7ef00e3 100644
--- a/pkgs/tools/filesystems/genext2fs/default.nix
+++ b/pkgs/tools/filesystems/genext2fs/default.nix
@@ -28,7 +28,7 @@ stdenv.mkDerivation rec {
   meta = with lib; {
     homepage = "https://github.com/bestouff/genext2fs";
     description = "A tool to generate ext2 filesystem images without requiring root privileges";
-    license = licenses.gpl2;
+    license = licenses.gpl2Only;
     platforms = platforms.all;
     maintainers = [ maintainers.bjornfor ];
     mainProgram = "genext2fs";
diff --git a/pkgs/tools/filesystems/genromfs/default.nix b/pkgs/tools/filesystems/genromfs/default.nix
index ce611736b77e..05b556019dac 100644
--- a/pkgs/tools/filesystems/genromfs/default.nix
+++ b/pkgs/tools/filesystems/genromfs/default.nix
@@ -17,7 +17,7 @@ stdenv.mkDerivation rec {
   meta = with lib; {
     homepage = "https://romfs.sourceforge.net/";
     description = "Tool for creating romfs file system images";
-    license = licenses.gpl2;
+    license = licenses.gpl2Plus;
     maintainers = with maintainers; [ nickcao ];
     platforms = platforms.all;
     mainProgram = "genromfs";
diff --git a/pkgs/tools/filesystems/go-mtpfs/default.nix b/pkgs/tools/filesystems/go-mtpfs/default.nix
index f3ed4fb6ab98..cfcbc3c3f5a6 100644
--- a/pkgs/tools/filesystems/go-mtpfs/default.nix
+++ b/pkgs/tools/filesystems/go-mtpfs/default.nix
@@ -18,11 +18,11 @@ buildGoModule rec {
   nativeBuildInputs = [ pkg-config ];
   buildInputs = [ libusb1 ];
 
-  preCheck = ''
+  checkFlags = [
     # Only run tests under mtp/encoding_test.go
     # Other tests require an Android deviced attached over USB.
-    buildFlagsArray+=("-run" "Test(Encode|Decode|Variant).*")
-  '';
+    "-run=Test(Encode|Decode|Variant)"
+  ];
 
   meta = with lib; {
     description = "A simple FUSE filesystem for mounting Android devices as a MTP device";
diff --git a/pkgs/tools/filesystems/grive2/default.nix b/pkgs/tools/filesystems/grive2/default.nix
index 41afc98e7f94..507541b683bd 100644
--- a/pkgs/tools/filesystems/grive2/default.nix
+++ b/pkgs/tools/filesystems/grive2/default.nix
@@ -40,7 +40,7 @@ stdenv.mkDerivation rec {
   meta = with lib; {
     description = "A console Google Drive client";
     homepage = "https://github.com/vitalif/grive2";
-    license = licenses.gpl2;
+    license = licenses.gpl2Only;
     platforms = platforms.linux;
     mainProgram = "grive";
   };
diff --git a/pkgs/tools/filesystems/moosefs/default.nix b/pkgs/tools/filesystems/moosefs/default.nix
index 55b796ec3254..48ec4cea7c98 100644
--- a/pkgs/tools/filesystems/moosefs/default.nix
+++ b/pkgs/tools/filesystems/moosefs/default.nix
@@ -51,7 +51,7 @@ stdenv.mkDerivation rec {
     homepage = "https://moosefs.com";
     description = "Open Source, Petabyte, Fault-Tolerant, Highly Performing, Scalable Network Distributed File System";
     platforms = platforms.unix;
-    license = licenses.gpl2;
+    license = licenses.gpl2Only;
     maintainers = [ maintainers.mfossen ];
   };
 }
diff --git a/pkgs/tools/filesystems/nilfs-utils/default.nix b/pkgs/tools/filesystems/nilfs-utils/default.nix
index 3fe4f9af4a08..79a0fe533673 100644
--- a/pkgs/tools/filesystems/nilfs-utils/default.nix
+++ b/pkgs/tools/filesystems/nilfs-utils/default.nix
@@ -45,7 +45,7 @@ stdenv.mkDerivation rec {
     description = "NILFS utilities";
     maintainers = [ maintainers.raskin ];
     platforms = platforms.linux;
-    license =  with licenses; [ gpl2 lgpl21 ];
+    license =  with licenses; [ gpl2Plus lgpl21 ];
     downloadPage = "http://nilfs.sourceforge.net/en/download.html";
   };
 }
diff --git a/pkgs/tools/filesystems/orangefs/default.nix b/pkgs/tools/filesystems/orangefs/default.nix
index 0b4ec481fc71..235639457a31 100644
--- a/pkgs/tools/filesystems/orangefs/default.nix
+++ b/pkgs/tools/filesystems/orangefs/default.nix
@@ -63,7 +63,7 @@ stdenv.mkDerivation rec {
   meta = with lib; {
     description = "Scale-out network file system for use on high-end computing systems";
     homepage = "http://www.orangefs.org/";
-    license = with licenses;  [ asl20 bsd3 gpl2 lgpl21 lgpl21Plus openldap ];
+    license = with licenses;  [ asl20 bsd3 gpl2Only lgpl21 lgpl21Plus openldap ];
     platforms = [ "x86_64-linux" ];
     maintainers = with maintainers; [ markuskowa ];
   };
diff --git a/pkgs/tools/filesystems/reiser4progs/default.nix b/pkgs/tools/filesystems/reiser4progs/default.nix
index 9f9b3bd5c2ed..63247da847d4 100644
--- a/pkgs/tools/filesystems/reiser4progs/default.nix
+++ b/pkgs/tools/filesystems/reiser4progs/default.nix
@@ -31,7 +31,7 @@ stdenv.mkDerivation rec {
     inherit version;
     homepage = "https://sourceforge.net/projects/reiser4/";
     description = "Reiser4 utilities";
-    license = licenses.gpl2;
+    license = licenses.gpl2Plus;
     platforms = platforms.linux;
   };
 }
diff --git a/pkgs/tools/filesystems/reiserfsprogs/default.nix b/pkgs/tools/filesystems/reiserfsprogs/default.nix
index a3dd60635350..1118c9ac2742 100644
--- a/pkgs/tools/filesystems/reiserfsprogs/default.nix
+++ b/pkgs/tools/filesystems/reiserfsprogs/default.nix
@@ -18,7 +18,7 @@ stdenv.mkDerivation rec {
     inherit version;
     homepage = "http://www.namesys.com/";
     description = "ReiserFS utilities";
-    license = lib.licenses.gpl2;
+    license = lib.licenses.gpl2Only;
     platforms = lib.platforms.linux;
   };
 }
diff --git a/pkgs/tools/filesystems/s3backer/default.nix b/pkgs/tools/filesystems/s3backer/default.nix
index 3585408a2f7d..b44ee42305d0 100644
--- a/pkgs/tools/filesystems/s3backer/default.nix
+++ b/pkgs/tools/filesystems/s3backer/default.nix
@@ -4,10 +4,10 @@
 
 stdenv.mkDerivation rec {
   pname = "s3backer";
-  version = "2.0.2";
+  version = "2.1.2";
 
   src = fetchFromGitHub {
-    sha256 = "sha256-xmOtL4v3UxdjrL09sSfXyF5FoMrNerSqG9nvEuwMvNM=";
+    sha256 = "sha256-/WdY++rrcQ3N+4ROeaA113Iq1nMGxOp3LzsCaLsxaaM=";
     rev = version;
     repo = "s3backer";
     owner = "archiecobbs";
diff --git a/pkgs/tools/filesystems/smbnetfs/default.nix b/pkgs/tools/filesystems/smbnetfs/default.nix
index 120b30cbb1d1..a42d6a48350e 100644
--- a/pkgs/tools/filesystems/smbnetfs/default.nix
+++ b/pkgs/tools/filesystems/smbnetfs/default.nix
@@ -15,7 +15,7 @@ stdenv.mkDerivation rec {
     description = "A FUSE FS for mounting Samba shares";
     maintainers = with maintainers; [ raskin ];
     platforms = platforms.linux;
-    license = licenses.gpl2;
+    license = licenses.gpl2Only;
     downloadPage = "https://sourceforge.net/projects/smbnetfs/files/smbnetfs";
     homepage = "https://sourceforge.net/projects/smbnetfs/";
     mainProgram = "smbnetfs";
diff --git a/pkgs/tools/filesystems/squashfs-tools-ng/default.nix b/pkgs/tools/filesystems/squashfs-tools-ng/default.nix
index 0d4ca4942165..e31d548fd156 100644
--- a/pkgs/tools/filesystems/squashfs-tools-ng/default.nix
+++ b/pkgs/tools/filesystems/squashfs-tools-ng/default.nix
@@ -4,11 +4,11 @@
 
 stdenv.mkDerivation rec {
   pname = "squashfs-tools-ng";
-  version = "1.3.0";
+  version = "1.3.1";
 
   src = fetchurl {
     url = "https://infraroot.at/pub/squashfs/squashfs-tools-ng-${version}.tar.xz";
-    sha256 = "sha256-X5HfXrTUrmtvYT6bfNNG2vRTc6GwZcbBsIkahqvhPo8=";
+    sha256 = "sha256-ByjoJfGM4a8OwAkK6YkmZeYVkLuUkQ8SvwgQuHT9zn8=";
   };
 
   nativeBuildInputs = [ doxygen graphviz pkg-config perl ];
diff --git a/pkgs/tools/filesystems/u3-tool/default.nix b/pkgs/tools/filesystems/u3-tool/default.nix
index e666c893b798..a9b2a7abf9b5 100644
--- a/pkgs/tools/filesystems/u3-tool/default.nix
+++ b/pkgs/tools/filesystems/u3-tool/default.nix
@@ -14,7 +14,7 @@ stdenv.mkDerivation rec {
   meta = with lib; {
     description = "Tool for controlling the special features of a 'U3 smart drive' USB Flash disk";
     homepage = "https://sourceforge.net/projects/u3-tool/";
-    license = licenses.gpl2;
+    license = licenses.gpl2Plus;
     platforms = with platforms; linux;
     maintainers = with maintainers; [ makefu ];
     mainProgram = "u3-tool";
diff --git a/pkgs/tools/filesystems/vmfs-tools/default.nix b/pkgs/tools/filesystems/vmfs-tools/default.nix
index b60dccc4e68f..e9dafd11b888 100644
--- a/pkgs/tools/filesystems/vmfs-tools/default.nix
+++ b/pkgs/tools/filesystems/vmfs-tools/default.nix
@@ -32,7 +32,7 @@ stdenv.mkDerivation rec {
   meta = with lib; {
     description = "FUSE-based VMFS (vmware) file system tools";
     maintainers = with maintainers; [ peterhoeg ];
-    license = licenses.gpl2;
+    license = licenses.gpl2Plus;
     platforms = platforms.linux;
     inherit (src.meta) homepage;
   };
diff --git a/pkgs/tools/filesystems/wiimms-iso-tools/default.nix b/pkgs/tools/filesystems/wiimms-iso-tools/default.nix
index 4519ee9d42a6..a9304b9ad0e2 100644
--- a/pkgs/tools/filesystems/wiimms-iso-tools/default.nix
+++ b/pkgs/tools/filesystems/wiimms-iso-tools/default.nix
@@ -41,7 +41,7 @@ stdenv.mkDerivation rec {
   meta = with lib; {
     homepage = "https://wit.wiimm.de";
     description = "A set of command line tools to manipulate Wii and GameCube ISO images and WBFS containers";
-    license = licenses.gpl2;
+    license = licenses.gpl2Plus;
     platforms = platforms.unix;
     maintainers = with maintainers; [ nilp0inter ];
   };
diff --git a/pkgs/tools/filesystems/zerofree/default.nix b/pkgs/tools/filesystems/zerofree/default.nix
index d44e92a33c46..77099a01e44f 100644
--- a/pkgs/tools/filesystems/zerofree/default.nix
+++ b/pkgs/tools/filesystems/zerofree/default.nix
@@ -27,7 +27,7 @@ in stdenv.mkDerivation rec {
     homepage = "https://frippery.org/uml/";
     description = "Zero free blocks from ext2, ext3 and ext4 file-systems";
     platforms = lib.platforms.linux;
-    license = lib.licenses.gpl2;
+    license = lib.licenses.gpl2Only;
     maintainers = [ lib.maintainers.theuni ];
     mainProgram = "zerofree";
   };
diff --git a/pkgs/tools/games/joystickwake/default.nix b/pkgs/tools/games/joystickwake/default.nix
index e321daf2dd8f..6ba552c75852 100644
--- a/pkgs/tools/games/joystickwake/default.nix
+++ b/pkgs/tools/games/joystickwake/default.nix
@@ -1,13 +1,13 @@
 { lib, python3, fetchFromGitHub }:
 python3.pkgs.buildPythonApplication rec {
   pname = "joystickwake";
-  version = "0.4.1";
+  version = "0.4.2";
 
   src = fetchFromGitHub {
     owner = "foresto";
     repo = pname;
     rev = "refs/tags/v${version}";
-    sha256 = "sha256-qf1owRdBGyU3q9ZJAzDEcMlnHfeUMSXga4v6QXdxXO0=";
+    sha256 = "sha256-vSvIpbcDIbRyitVjx3wNSxt5vTIZ9/NPWokOJt0p6oQ=";
   };
 
   propagatedBuildInputs = with python3.pkgs; [ dbus-next pyudev xlib ];
diff --git a/pkgs/tools/games/minecraft/fabric-installer/default.nix b/pkgs/tools/games/minecraft/fabric-installer/default.nix
index 4a11a08a42e6..bbec1d40d09c 100644
--- a/pkgs/tools/games/minecraft/fabric-installer/default.nix
+++ b/pkgs/tools/games/minecraft/fabric-installer/default.nix
@@ -6,11 +6,11 @@
 
 stdenv.mkDerivation rec {
   pname = "fabric-installer";
-  version = "1.0.0";
+  version = "1.0.1";
 
   src = fetchurl {
     url = "https://maven.fabricmc.net/net/fabricmc/fabric-installer/${version}/fabric-installer-${version}.jar";
-    sha256 = "sha256-fX5bHTp/jiCBBpiY6V3HHYS7Olx5yyNcA0iVFzz9NHs=";
+    sha256 = "sha256-Yu3xcL3MQe3qhdM6zz64VHQlhpmz1B+UGNKGyDbLCI0=";
   };
 
   dontUnpack = true;
diff --git a/pkgs/tools/games/minecraft/mcaselector/default.nix b/pkgs/tools/games/minecraft/mcaselector/default.nix
index cbd0ce7036a1..4d8127b36265 100644
--- a/pkgs/tools/games/minecraft/mcaselector/default.nix
+++ b/pkgs/tools/games/minecraft/mcaselector/default.nix
@@ -2,7 +2,7 @@
 , stdenvNoCC
 , fetchurl
 , makeWrapper
-, wrapGAppsHook
+, wrapGAppsHook3
 , jre
 }:
 
@@ -18,7 +18,7 @@ stdenvNoCC.mkDerivation (finalAttrs: {
   dontUnpack = true;
   dontBuild = true;
 
-  nativeBuildInputs = [ jre makeWrapper wrapGAppsHook ];
+  nativeBuildInputs = [ jre makeWrapper wrapGAppsHook3 ];
 
   dontWrapGApps = true;
 
diff --git a/pkgs/tools/games/mymcplus/default.nix b/pkgs/tools/games/mymcplus/default.nix
index c94ef8768c07..7a3c49fac750 100644
--- a/pkgs/tools/games/mymcplus/default.nix
+++ b/pkgs/tools/games/mymcplus/default.nix
@@ -1,7 +1,7 @@
 { lib
 , fetchFromSourcehut
 , pythonPackages
-, wrapGAppsHook
+, wrapGAppsHook3
 }:
 
 pythonPackages.buildPythonApplication rec {
@@ -16,7 +16,7 @@ pythonPackages.buildPythonApplication rec {
   };
 
   nativeBuildInputs = [
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   propagatedBuildInputs = with pythonPackages; [
diff --git a/pkgs/tools/games/opentracker/default.nix b/pkgs/tools/games/opentracker/default.nix
index 5bab19fa2ad9..d1c988876c5f 100644
--- a/pkgs/tools/games/opentracker/default.nix
+++ b/pkgs/tools/games/opentracker/default.nix
@@ -3,7 +3,7 @@
   stdenv,
   buildDotnetModule,
   fetchFromGitHub,
-  wrapGAppsHook,
+  wrapGAppsHook3,
   dotnetCorePackages,
   fontconfig,
   gtk3,
@@ -39,7 +39,7 @@ buildDotnetModule rec {
   ];
 
   nativeBuildInputs = [
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
diff --git a/pkgs/tools/games/pokefinder/default.nix b/pkgs/tools/games/pokefinder/default.nix
index de53fb839af9..3ca5520fda15 100644
--- a/pkgs/tools/games/pokefinder/default.nix
+++ b/pkgs/tools/games/pokefinder/default.nix
@@ -4,6 +4,7 @@
 , makeDesktopItem
 , fetchFromGitHub
 , cmake
+, python3
 , qtbase
 , qttools
 , qtwayland
@@ -43,7 +44,7 @@ stdenv.mkDerivation rec {
     runHook postInstall
   '';
 
-  nativeBuildInputs = [ cmake wrapQtAppsHook ] ++ lib.optionals (!stdenv.isDarwin) [ copyDesktopItems imagemagick ];
+  nativeBuildInputs = [ cmake wrapQtAppsHook python3 ] ++ lib.optionals (!stdenv.isDarwin) [ copyDesktopItems imagemagick ];
 
   desktopItems = [
     (makeDesktopItem {
diff --git a/pkgs/tools/games/scarab/default.nix b/pkgs/tools/games/scarab/default.nix
index c71502b7f506..11ec9e7cdd02 100644
--- a/pkgs/tools/games/scarab/default.nix
+++ b/pkgs/tools/games/scarab/default.nix
@@ -10,7 +10,7 @@
 , gtk3
 , copyDesktopItems
 , icoutils
-, wrapGAppsHook
+, wrapGAppsHook3
 , makeDesktopItem
 }:
 
@@ -46,7 +46,7 @@ buildDotnetModule rec {
   nativeBuildInputs = [
     copyDesktopItems
     icoutils
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   postFixup = ''
diff --git a/pkgs/tools/games/slipstream/default.nix b/pkgs/tools/games/slipstream/default.nix
index 250ef7c2f357..617bf60d6065 100644
--- a/pkgs/tools/games/slipstream/default.nix
+++ b/pkgs/tools/games/slipstream/default.nix
@@ -42,7 +42,7 @@ mavenWithJdk.buildMavenPackage rec {
   meta = with lib; {
     description = "A mod manager for FTL: Faster Than Light";
     homepage = "https://github.com/Vhati/Slipstream-Mod-Manager";
-    license = licenses.gpl2;
+    license = licenses.gpl2Only;
     maintainers = with maintainers; [ mib ];
     mainProgram = "slipstream";
   };
diff --git a/pkgs/tools/games/steam-rom-manager/default.nix b/pkgs/tools/games/steam-rom-manager/default.nix
index 89af86fe7511..e146301a2b2c 100644
--- a/pkgs/tools/games/steam-rom-manager/default.nix
+++ b/pkgs/tools/games/steam-rom-manager/default.nix
@@ -2,11 +2,11 @@
 
 appimageTools.wrapType2 rec {
   name = "steam-rom-manager";
-  version = "2.4.17";
+  version = "2.4.24";
 
   src = fetchurl {
     url = "https://github.com/SteamGridDB/steam-rom-manager/releases/download/v${version}/Steam-ROM-Manager-${version}.AppImage";
-    sha256 = "sha256-NRqryY9v6s51/eoCdqqID6m5Osx5PPChKGxjmLhh7ac=";
+    sha256 = "sha256-mNH6ySA2bW5gEHGSJgJ8e2XkQrObQeiAWQlAp7aV688=";
   };
 
   extraInstallCommands = let
diff --git a/pkgs/tools/games/steamtinkerlaunch/default.nix b/pkgs/tools/games/steamtinkerlaunch/default.nix
index f9db25353499..42935ad6e393 100644
--- a/pkgs/tools/games/steamtinkerlaunch/default.nix
+++ b/pkgs/tools/games/steamtinkerlaunch/default.nix
@@ -1,11 +1,11 @@
 { bash
+, fetchFromGitHub
 , gawk
 , git
-, gnugrep
-, fetchFromGitHub
 , lib
 , makeWrapper
-, stdenv
+, procps
+, stdenvNoCC
 , unixtools
 , unzip
 , wget
@@ -14,15 +14,15 @@
 , yad
 }:
 
-stdenv.mkDerivation rec {
+stdenvNoCC.mkDerivation {
   pname = "steamtinkerlaunch";
-  version = "12.12";
+  version = "12.12-unstable-2024-05-03";
 
   src = fetchFromGitHub {
     owner = "sonic2kk";
-    repo = pname;
-    rev = "v${version}";
-    hash = "sha256-oigHNfg5rHxRabwUs66ye+chJzivmCIw8mg/GaJLPkg=";
+    repo = "steamtinkerlaunch";
+    rev = "59b421b2f3686120a076909a4a158824cd4ef05e";
+    hash = "sha256-CGtSGAm+52t2zFsPJEsm76w+FEHhbOd9NYuerGa31tc=";
   };
 
   # hardcode PROGCMD because #150841
@@ -39,7 +39,7 @@ stdenv.mkDerivation rec {
       bash
       gawk
       git
-      gnugrep
+      procps
       unixtools.xxd
       unzip
       wget
@@ -56,7 +56,7 @@ stdenv.mkDerivation rec {
     mainProgram = "steamtinkerlaunch";
     homepage = "https://github.com/sonic2kk/steamtinkerlaunch";
     license = licenses.gpl3;
-    maintainers = with maintainers; [ urandom ];
+    maintainers = with maintainers; [ urandom surfaceflinger ];
     platforms = lib.platforms.linux;
   };
 }
diff --git a/pkgs/tools/games/ukmm/default.nix b/pkgs/tools/games/ukmm/default.nix
index aa5469472d85..f76613ed4a57 100644
--- a/pkgs/tools/games/ukmm/default.nix
+++ b/pkgs/tools/games/ukmm/default.nix
@@ -3,7 +3,7 @@
 , fetchFromGitHub
 , cmake
 , pkg-config
-, wrapGAppsHook
+, wrapGAppsHook3
 , libglvnd
 , nix-update-script
 }:
@@ -32,7 +32,7 @@ rustPlatform.buildRustPackage rec {
   nativeBuildInputs = [
     cmake
     pkg-config
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   preFixup = ''
diff --git a/pkgs/tools/graphics/agi/default.nix b/pkgs/tools/graphics/agi/default.nix
index 501522b27ea3..27b5c7ca59fa 100644
--- a/pkgs/tools/graphics/agi/default.nix
+++ b/pkgs/tools/graphics/agi/default.nix
@@ -5,7 +5,7 @@
 , makeWrapper
 , makeDesktopItem
 , copyDesktopItems
-, wrapGAppsHook
+, wrapGAppsHook3
 , gobject-introspection
 , gdk-pixbuf
 , jre
@@ -22,7 +22,7 @@ stdenvNoCC.mkDerivation rec {
   };
 
   nativeBuildInputs = [
-    wrapGAppsHook
+    wrapGAppsHook3
     gdk-pixbuf
     gobject-introspection
     autoPatchelfHook
diff --git a/pkgs/tools/graphics/astc-encoder/default.nix b/pkgs/tools/graphics/astc-encoder/default.nix
index 463f7e85e7ea..88df64b7d2d6 100644
--- a/pkgs/tools/graphics/astc-encoder/default.nix
+++ b/pkgs/tools/graphics/astc-encoder/default.nix
@@ -38,13 +38,13 @@ in
 
 stdenv.mkDerivation rec {
   pname = "astc-encoder";
-  version = "4.7.0";
+  version = "4.8.0";
 
   src = fetchFromGitHub {
     owner = "ARM-software";
     repo = "astc-encoder";
     rev = version;
-    sha256 = "sha256-UzMVJnXYLy7E9RuM4VPdqnIyfQjDOdAlKiqRkXuxnQ0=";
+    sha256 = "sha256-IG/UpTaeKTXdYIR++BZA7+bMRW4NWQUo9PxsEnqPuB4=";
   };
 
   nativeBuildInputs = [ cmake ];
diff --git a/pkgs/tools/graphics/dpic/default.nix b/pkgs/tools/graphics/dpic/default.nix
index fb3e0c19bf82..53066ce42f8f 100644
--- a/pkgs/tools/graphics/dpic/default.nix
+++ b/pkgs/tools/graphics/dpic/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   pname = "dpic";
-  version = "2023.06.01";
+  version = "2024.01.01";
 
   src = fetchurl {
     url = "https://ece.uwaterloo.ca/~aplevich/dpic/${pname}-${version}.tar.gz";
-    sha256 = "sha256-7sIGSHMsxEsO9b7nutY6cBxS59mrT3bepNNDQi2L+X4=";
+    sha256 = "sha256-FhkBrJr4bXMFUSuhtWSUBPtMgDoPqwYmJ8w8WJWthy8=";
   };
 
   # The prefix passed to configure is not used.
diff --git a/pkgs/tools/graphics/dynamic-wallpaper/default.nix b/pkgs/tools/graphics/dynamic-wallpaper/default.nix
index 0a52d19bf441..9b30aba12ac4 100644
--- a/pkgs/tools/graphics/dynamic-wallpaper/default.nix
+++ b/pkgs/tools/graphics/dynamic-wallpaper/default.nix
@@ -57,7 +57,7 @@ python3.pkgs.buildPythonApplication rec {
   meta = with lib; {
     description = "Dynamic wallpaper maker for Gnome";
     homepage = "https://github.com/dusansimic/dynamic-wallpaper";
-    license = licenses.gpl2;
+    license = licenses.gpl2Plus;
     platforms = platforms.linux;
     mainProgram = "me.dusansimic.DynamicWallpaper";
     maintainers = with maintainers; [ zendo ];
diff --git a/pkgs/tools/graphics/enblend-enfuse/default.nix b/pkgs/tools/graphics/enblend-enfuse/default.nix
index f47a2aa961e6..d665c884751e 100644
--- a/pkgs/tools/graphics/enblend-enfuse/default.nix
+++ b/pkgs/tools/graphics/enblend-enfuse/default.nix
@@ -37,7 +37,7 @@ stdenv.mkDerivation rec {
   meta = with lib; {
     homepage = "https://enblend.sourceforge.net/";
     description = "Blends away the seams in a panoramic image mosaic using a multiresolution spline";
-    license = licenses.gpl2;
+    license = licenses.gpl2Plus;
     platforms = with platforms; linux;
   };
 }
diff --git a/pkgs/tools/graphics/epstool/default.nix b/pkgs/tools/graphics/epstool/default.nix
index 5952734e4582..85cfa563f474 100644
--- a/pkgs/tools/graphics/epstool/default.nix
+++ b/pkgs/tools/graphics/epstool/default.nix
@@ -22,7 +22,7 @@ stdenv.mkDerivation rec {
   meta = with lib; {
     description = "A utility to create or extract preview images in EPS files, fix bounding boxes and convert to bitmaps";
     homepage = "http://pages.cs.wisc.edu/~ghost/gsview/epstool.htm";
-    license = licenses.gpl2;
+    license = licenses.gpl2Only;
     maintainers = [ maintainers.asppsa ];
     platforms = platforms.all;
     mainProgram = "epstool";
diff --git a/pkgs/tools/graphics/escrotum/default.nix b/pkgs/tools/graphics/escrotum/default.nix
index c2e5a7ec9a71..6cbd793daf2e 100644
--- a/pkgs/tools/graphics/escrotum/default.nix
+++ b/pkgs/tools/graphics/escrotum/default.nix
@@ -3,7 +3,7 @@
 , gtk3
 , pango
 , gobject-introspection
-, wrapGAppsHook
+, wrapGAppsHook3
 }:
 
 with python3Packages; buildPythonApplication {
@@ -24,7 +24,7 @@ with python3Packages; buildPythonApplication {
 
   nativeBuildInputs = [
     gobject-introspection
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   propagatedBuildInputs = [ pygobject3 xcffib pycairo numpy ];
diff --git a/pkgs/tools/graphics/fgallery/default.nix b/pkgs/tools/graphics/fgallery/default.nix
index be8bc4eb6eab..8e2e636d90f7 100644
--- a/pkgs/tools/graphics/fgallery/default.nix
+++ b/pkgs/tools/graphics/fgallery/default.nix
@@ -46,7 +46,7 @@ stdenv.mkDerivation rec {
   meta = with lib; {
     description = "Static photo gallery generator";
     homepage = "https://www.thregr.org/~wavexx/software/fgallery/";
-    license = licenses.gpl2;
+    license = licenses.gpl2Only;
     platforms = platforms.all;
     maintainers = [ maintainers.bjornfor ];
     mainProgram = "fgallery";
diff --git a/pkgs/tools/graphics/gifsicle/default.nix b/pkgs/tools/graphics/gifsicle/default.nix
index 77247f7fea80..d4d90b118598 100644
--- a/pkgs/tools/graphics/gifsicle/default.nix
+++ b/pkgs/tools/graphics/gifsicle/default.nix
@@ -26,7 +26,7 @@ stdenv.mkDerivation rec {
   meta = {
     description = "Command-line tool for creating, editing, and getting information about GIF images and animations";
     homepage = "https://www.lcdf.org/gifsicle/";
-    license = lib.licenses.gpl2;
+    license = lib.licenses.gpl2Only;
     platforms = lib.platforms.all;
     maintainers = with lib.maintainers; [ zimbatm ];
   };
diff --git a/pkgs/tools/graphics/gromit-mpx/default.nix b/pkgs/tools/graphics/gromit-mpx/default.nix
index 7fdbe3b13f64..433c11d95628 100644
--- a/pkgs/tools/graphics/gromit-mpx/default.nix
+++ b/pkgs/tools/graphics/gromit-mpx/default.nix
@@ -1,7 +1,7 @@
 { lib, stdenv, fetchFromGitHub, cmake, pkg-config
 , gtk, glib, pcre, libappindicator, libpthreadstubs, xorg
 , libxkbcommon, libepoxy, at-spi2-core, dbus, libdbusmenu
-, wrapGAppsHook
+, wrapGAppsHook3
 }:
 
 stdenv.mkDerivation rec {
@@ -15,7 +15,7 @@ stdenv.mkDerivation rec {
     sha256 = "sha256-olDQGw0qDWwXpqRopVoEPDXLRpFiiBo+/jiVeL7R6QA=";
   };
 
-  nativeBuildInputs = [ cmake pkg-config wrapGAppsHook ];
+  nativeBuildInputs = [ cmake pkg-config wrapGAppsHook3 ];
   buildInputs = [
     gtk glib pcre libappindicator libpthreadstubs
     xorg.libXdmcp libxkbcommon libepoxy at-spi2-core
diff --git a/pkgs/tools/graphics/ifm/default.nix b/pkgs/tools/graphics/ifm/default.nix
index 854a35262b07..abefdc1c4783 100644
--- a/pkgs/tools/graphics/ifm/default.nix
+++ b/pkgs/tools/graphics/ifm/default.nix
@@ -23,7 +23,7 @@ stdenv.mkDerivation rec {
   meta = with lib; {
     homepage = "https://bitbucket.org/zondo/ifm";
     description = "Interactive fiction mapper";
-    license = licenses.gpl2;
+    license = licenses.gpl2Plus;
     platforms = platforms.linux;
     maintainers = with maintainers; [ orivej ];
   };
diff --git a/pkgs/tools/graphics/mscgen/default.nix b/pkgs/tools/graphics/mscgen/default.nix
index a391a62ccb68..4af5c9b648e9 100644
--- a/pkgs/tools/graphics/mscgen/default.nix
+++ b/pkgs/tools/graphics/mscgen/default.nix
@@ -33,7 +33,7 @@ stdenv.mkDerivation rec {
   meta = {
     homepage = "http://www.mcternan.me.uk/mscgen/";
     description = "Convert Message Sequence Chart descriptions into PNG, SVG, or EPS images";
-    license = lib.licenses.gpl2;
+    license = lib.licenses.gpl2Plus;
 
     longDescription = ''
       Mscgen is a small program that parses Message Sequence Chart
diff --git a/pkgs/tools/graphics/netpbm/default.nix b/pkgs/tools/graphics/netpbm/default.nix
index e7cc5a6cfae5..6275b39e4460 100644
--- a/pkgs/tools/graphics/netpbm/default.nix
+++ b/pkgs/tools/graphics/netpbm/default.nix
@@ -20,14 +20,14 @@ stdenv.mkDerivation {
   # Determine version and revision from:
   # https://sourceforge.net/p/netpbm/code/HEAD/log/?path=/advanced
   pname = "netpbm";
-  version = "11.6.0";
+  version = "11.6.1";
 
   outputs = [ "bin" "out" "dev" ];
 
   src = fetchsvn {
     url = "https://svn.code.sf.net/p/netpbm/code/advanced";
-    rev = "4897";
-    sha256 = "2aTDM0aVfav2mnOLXj0HuTdbsY7EUH8ieBrXgaFU7FU=";
+    rev = "4907";
+    sha256 = "eMLADYFf/Us8eiBTacf+wvQSGyrV+fslpvlTT+rIiYM=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/tools/graphics/optar/default.nix b/pkgs/tools/graphics/optar/default.nix
index 320acaba420c..ea5434e3dd40 100644
--- a/pkgs/tools/graphics/optar/default.nix
+++ b/pkgs/tools/graphics/optar/default.nix
@@ -28,7 +28,7 @@ stdenv.mkDerivation {
   meta = with lib; {
     description = "OPTical ARchiver - it's a codec for encoding data on paper";
     homepage = "http://ronja.twibright.com/optar/";
-    license = licenses.gpl2;
+    license = licenses.gpl2Only;
     maintainers = with maintainers; [ peterhoeg ];
     platforms = with platforms; linux; # possibly others, but only tested on Linux
   };
diff --git a/pkgs/tools/graphics/pdf2svg/default.nix b/pkgs/tools/graphics/pdf2svg/default.nix
index b68ba12ebfe9..b7da6dad29da 100644
--- a/pkgs/tools/graphics/pdf2svg/default.nix
+++ b/pkgs/tools/graphics/pdf2svg/default.nix
@@ -18,7 +18,7 @@ stdenv.mkDerivation rec {
   meta = with lib; {
     description = "PDF converter to SVG format";
     homepage = "http://www.cityinthesky.co.uk/opensource/pdf2svg";
-    license = licenses.gpl2;
+    license = licenses.gpl2Plus;
     maintainers = [ maintainers.ianwookim ];
     platforms = platforms.unix;
     mainProgram = "pdf2svg";
diff --git a/pkgs/tools/graphics/pdftag/default.nix b/pkgs/tools/graphics/pdftag/default.nix
index 90b8dde05f37..d5efffd9f11a 100644
--- a/pkgs/tools/graphics/pdftag/default.nix
+++ b/pkgs/tools/graphics/pdftag/default.nix
@@ -1,5 +1,5 @@
 { lib, stdenv, fetchFromGitHub, pkg-config, meson, vala, ninja
-, gtk3, poppler, wrapGAppsHook }:
+, gtk3, poppler, wrapGAppsHook3 }:
 
 stdenv.mkDerivation rec {
   pname = "pdftag";
@@ -12,7 +12,7 @@ stdenv.mkDerivation rec {
     sha256 = "1paj8hs27akzsivn01a30fl3zx5gfn1h89wxg2m72fd806hk0hql";
   };
 
-  nativeBuildInputs = [ pkg-config meson ninja wrapGAppsHook vala ];
+  nativeBuildInputs = [ pkg-config meson ninja wrapGAppsHook3 vala ];
   buildInputs = [ gtk3 poppler ];
 
   meta = with lib; {
diff --git a/pkgs/tools/graphics/pstoedit/default.nix b/pkgs/tools/graphics/pstoedit/default.nix
index 3bd4c1a86fbc..810c2365b2c3 100644
--- a/pkgs/tools/graphics/pstoedit/default.nix
+++ b/pkgs/tools/graphics/pstoedit/default.nix
@@ -33,7 +33,7 @@ stdenv.mkDerivation rec {
   meta = with lib; {
     description = "Translates PostScript and PDF graphics into other vector formats";
     homepage = "https://sourceforge.net/projects/pstoedit/";
-    license = licenses.gpl2;
+    license = licenses.gpl2Plus;
     maintainers = [ maintainers.marcweber ];
     platforms = platforms.unix;
     mainProgram = "pstoedit";
diff --git a/pkgs/tools/graphics/realesrgan-ncnn-vulkan/cmakelists.patch b/pkgs/tools/graphics/realesrgan-ncnn-vulkan/cmakelists.patch
index 19453e8912a9..bf51aec6367e 100644
--- a/pkgs/tools/graphics/realesrgan-ncnn-vulkan/cmakelists.patch
+++ b/pkgs/tools/graphics/realesrgan-ncnn-vulkan/cmakelists.patch
@@ -1,15 +1,27 @@
 diff --git a/CMakeLists.txt b/CMakeLists.txt
-index 1e7b71a..e743ab0 100644
+index 1e7b71a..2ac2826 100644
 --- a/CMakeLists.txt
 +++ b/CMakeLists.txt
-@@ -106,9 +106,9 @@ if(USE_SYSTEM_NCNN)
+@@ -106,20 +106,13 @@ if(USE_SYSTEM_NCNN)
          message(STATUS "Using glslang install located at ${GLSLANG_TARGET_DIR}")
-
+ 
          find_package(Threads)
++        find_package(glslang REQUIRED)
 +        find_package(SPIRV-Tools-opt REQUIRED)
-
-         include("${GLSLANG_TARGET_DIR}/OSDependentTargets.cmake")
+ 
+-        include("${GLSLANG_TARGET_DIR}/OSDependentTargets.cmake")
 -        include("${GLSLANG_TARGET_DIR}/OGLCompilerTargets.cmake")
          if(EXISTS "${GLSLANG_TARGET_DIR}/HLSLTargets.cmake")
              # hlsl support can be optional
              include("${GLSLANG_TARGET_DIR}/HLSLTargets.cmake")
+         endif()
+-        include("${GLSLANG_TARGET_DIR}/glslangTargets.cmake")
+-        include("${GLSLANG_TARGET_DIR}/SPIRVTargets.cmake")
+-
+-        if (NOT TARGET glslang OR NOT TARGET SPIRV)
+-            message(WARNING "glslang or SPIRV target not found! USE_SYSTEM_NCNN will be turned off.")
+-            set(USE_SYSTEM_NCNN OFF)
+-        endif()
+     endif()
+ endif()
+ 
diff --git a/pkgs/tools/graphics/realesrgan-ncnn-vulkan/default.nix b/pkgs/tools/graphics/realesrgan-ncnn-vulkan/default.nix
index c7f9817326b8..59c2753011d3 100644
--- a/pkgs/tools/graphics/realesrgan-ncnn-vulkan/default.nix
+++ b/pkgs/tools/graphics/realesrgan-ncnn-vulkan/default.nix
@@ -55,7 +55,7 @@ stdenv.mkDerivation rec {
     cp -r ${models}/models $out/share
   '';
 
-  postFixup = ''
+  postFixup = lib.optionalString stdenv.isLinux ''
     patchelf $out/bin/realesrgan-ncnn-vulkan --add-needed libvulkan.so
   '';
 
diff --git a/pkgs/tools/graphics/s2png/default.nix b/pkgs/tools/graphics/s2png/default.nix
index 940e9db05419..71f8661dfa2c 100644
--- a/pkgs/tools/graphics/s2png/default.nix
+++ b/pkgs/tools/graphics/s2png/default.nix
@@ -18,7 +18,7 @@ stdenv.mkDerivation rec {
   meta = {
     homepage = "https://github.com/dbohdan/s2png/";
     description = "Store any data in PNG images";
-    license = lib.licenses.gpl2;
+    license = lib.licenses.gpl2Plus;
     maintainers = [ lib.maintainers.dbohdan ];
     platforms = lib.platforms.unix;
     mainProgram = "s2png";
diff --git a/pkgs/tools/graphics/sanjuuni/default.nix b/pkgs/tools/graphics/sanjuuni/default.nix
index 70bc59f3eb40..41cfd6f7ee57 100644
--- a/pkgs/tools/graphics/sanjuuni/default.nix
+++ b/pkgs/tools/graphics/sanjuuni/default.nix
@@ -3,6 +3,7 @@
 , fetchFromGitHub
 , fetchpatch
 , pkg-config
+, autoreconfHook
 , ffmpeg
 , poco
 , ocl-icd
@@ -24,12 +25,14 @@ stdenv.mkDerivation rec {
     (fetchpatch {
       name = "build-with-cxx17.patch";
       url = "https://github.com/MCJack123/sanjuuni/commit/f2164bc18935bcf63ee5b0a82087bc91f7fd258d.patch";
-      hash = "sha256-ZmP+AmUV7fcIFqSA6e56Nt6u03leE9PX36g2z0nLswo=";
+      hash = "sha256-MjDeAiB3WkemCRYzgOHzHlbPUoI4DHEYe28xIIC+c7I=";
+      excludes = [ "configure" ]; # conflicts with release tarball; we manually regenerate this
     })
   ];
 
   nativeBuildInputs = [
     pkg-config
+    autoreconfHook
   ];
 
   buildInputs = [
diff --git a/pkgs/tools/graphics/svgcleaner/default.nix b/pkgs/tools/graphics/svgcleaner/default.nix
index 1ec42817456a..f3db03c53f63 100644
--- a/pkgs/tools/graphics/svgcleaner/default.nix
+++ b/pkgs/tools/graphics/svgcleaner/default.nix
@@ -20,7 +20,7 @@ rustPlatform.buildRustPackage rec {
     description = "Clean and optimize SVG files from unnecessary data";
     homepage = "https://github.com/RazrFalcon/SVGCleaner";
     changelog = "https://github.com/RazrFalcon/svgcleaner/releases";
-    license = licenses.gpl2;
+    license = licenses.gpl2Plus;
     maintainers = with maintainers; [ yuu ];
     mainProgram = "svgcleaner";
   };
diff --git a/pkgs/tools/graphics/unpaper/default.nix b/pkgs/tools/graphics/unpaper/default.nix
index c59353af5a11..0b84d61274d9 100644
--- a/pkgs/tools/graphics/unpaper/default.nix
+++ b/pkgs/tools/graphics/unpaper/default.nix
@@ -52,7 +52,7 @@ stdenv.mkDerivation rec {
     homepage = "https://www.flameeyes.eu/projects/unpaper";
     changelog = "https://github.com/unpaper/unpaper/blob/unpaper-${version}/NEWS";
     description = "Post-processing tool for scanned sheets of paper";
-    license = licenses.gpl2;
+    license = licenses.gpl2Only;
     platforms = platforms.all;
     mainProgram = "unpaper";
     maintainers = [ maintainers.rycee ];
diff --git a/pkgs/tools/graphics/vulkan-cts/default.nix b/pkgs/tools/graphics/vulkan-cts/default.nix
index 670d2108f820..633adf528651 100644
--- a/pkgs/tools/graphics/vulkan-cts/default.nix
+++ b/pkgs/tools/graphics/vulkan-cts/default.nix
@@ -39,13 +39,13 @@ let
 in
 stdenv.mkDerivation (finalAttrs: {
   pname = "vulkan-cts";
-  version = "1.3.8.2";
+  version = "1.3.8.3";
 
   src = fetchFromGitHub {
     owner = "KhronosGroup";
     repo = "VK-GL-CTS";
     rev = "${finalAttrs.pname}-${finalAttrs.version}";
-    hash = "sha256-0Yyk7o5RSo1pzo1+oCi0TqEf62CLBURvZWgwELXDKKA=";
+    hash = "sha256-+xmbPezWTEwjxX+o2b7FjQcsoWxWe0RTSaTJOrXSIhc=";
   };
 
   prePatch = ''
diff --git a/pkgs/tools/graphics/vulkan-cts/sources.nix b/pkgs/tools/graphics/vulkan-cts/sources.nix
index d8dfdd6faaf6..a71a900b21ed 100644
--- a/pkgs/tools/graphics/vulkan-cts/sources.nix
+++ b/pkgs/tools/graphics/vulkan-cts/sources.nix
@@ -25,8 +25,8 @@ rec {
   nvidia-video-samples = fetchFromGitHub {
     owner = "Igalia";
     repo = "vk_video_samples";
-    rev = "ce80453dadeea7b1a6409434f3358ef1e46e4ae7";
-    hash = "sha256-zgHMaUA7rdLbmkX8lr4p2TW9g1RDyBmUs5rK++wmUjE=";
+    rev = "6821adf11eb4f84a2168264b954c170d03237699";
+    hash = "sha256-prshOzxUHLYi64Pbyytsp+XvmtIIyhx/3n5IVimYH64=";
   };
 
   spirv-headers = fetchFromGitHub {
diff --git a/pkgs/tools/graphics/wallutils/default.nix b/pkgs/tools/graphics/wallutils/default.nix
index 796baa25b0bf..e8abeebfec2e 100644
--- a/pkgs/tools/graphics/wallutils/default.nix
+++ b/pkgs/tools/graphics/wallutils/default.nix
@@ -48,17 +48,19 @@ buildGoModule rec {
 
   ldflags = [ "-s" "-w" ];
 
-  preCheck =
-    let skippedTests = [
-      "TestClosest" # Requiring Wayland or X
-      "TestEveryMinute" # Blocking
-      "TestNewSimpleEvent" # Blocking
-    ]; in
-    ''
-      export XDG_RUNTIME_DIR=`mktemp -d`
+  preCheck = ''
+    export XDG_RUNTIME_DIR=$(mktemp -d)
+  '';
 
-      buildFlagsArray+=("-run" "[^(${builtins.concatStringsSep "|" skippedTests})]")
-    '';
+  checkFlags =
+    let
+      skippedTests = [
+        "TestClosest" # Requiring Wayland or X
+        "TestEveryMinute" # Blocking
+        "TestNewSimpleEvent" # Blocking
+      ];
+    in
+    [ "-skip=^${builtins.concatStringsSep "$|^" skippedTests}$" ];
 
   meta = {
     description = "Utilities for handling monitors, resolutions, and (timed) wallpapers";
diff --git a/pkgs/tools/graphics/wdisplays/default.nix b/pkgs/tools/graphics/wdisplays/default.nix
index 9c7093b58f85..74998fe0fb79 100644
--- a/pkgs/tools/graphics/wdisplays/default.nix
+++ b/pkgs/tools/graphics/wdisplays/default.nix
@@ -1,10 +1,10 @@
-{ lib, stdenv, fetchFromGitHub, meson, ninja, pkg-config, gtk3, libepoxy, wayland, wrapGAppsHook }:
+{ lib, stdenv, fetchFromGitHub, meson, ninja, pkg-config, gtk3, libepoxy, wayland, wrapGAppsHook3 }:
 
 stdenv.mkDerivation (finalAttrs: {
   pname = "wdisplays";
   version = "1.1.1";
 
-  nativeBuildInputs = [ meson ninja pkg-config wrapGAppsHook ];
+  nativeBuildInputs = [ meson ninja pkg-config wrapGAppsHook3 ];
 
   buildInputs = [ gtk3 libepoxy wayland ];
 
diff --git a/pkgs/tools/graphics/xcftools/default.nix b/pkgs/tools/graphics/xcftools/default.nix
index 7b3d45421291..077f016b9e90 100644
--- a/pkgs/tools/graphics/xcftools/default.nix
+++ b/pkgs/tools/graphics/xcftools/default.nix
@@ -43,7 +43,7 @@ stdenv.mkDerivation rec {
       These tools work independently of the Gimp engine and do not
       require the Gimp to even be installed.
     '';
-    license = lib.licenses.gpl2;
+    license = lib.licenses.gpl2Only;
     platforms = lib.platforms.linux;
   };
 }
diff --git a/pkgs/tools/graphics/zbar/default.nix b/pkgs/tools/graphics/zbar/default.nix
index e44f46a19a16..c3429069d203 100644
--- a/pkgs/tools/graphics/zbar/default.nix
+++ b/pkgs/tools/graphics/zbar/default.nix
@@ -10,7 +10,7 @@
 , qtbase
 , qtx11extras
 , wrapQtAppsHook
-, wrapGAppsHook
+, wrapGAppsHook3
 , gtk3
 , xmlto
 , docbook_xsl
@@ -62,7 +62,7 @@ stdenv.mkDerivation rec {
     autoreconfHook
     docbook_xsl
   ] ++ lib.optionals enableVideo [
-    wrapGAppsHook
+    wrapGAppsHook3
     wrapQtAppsHook
     qtbase
   ];
diff --git a/pkgs/tools/inputmethods/emote/default.nix b/pkgs/tools/inputmethods/emote/default.nix
index 6c2e4962a996..10e66f1d33b3 100644
--- a/pkgs/tools/inputmethods/emote/default.nix
+++ b/pkgs/tools/inputmethods/emote/default.nix
@@ -1,4 +1,4 @@
-{ lib, fetchFromGitHub, python3Packages, wrapGAppsHook, gobject-introspection, keybinder3, xdotool }:
+{ lib, fetchFromGitHub, python3Packages, wrapGAppsHook3, gobject-introspection, keybinder3, xdotool }:
 
 python3Packages.buildPythonApplication rec {
   pname = "emote";
@@ -19,7 +19,7 @@ python3Packages.buildPythonApplication rec {
   '';
 
   nativeBuildInputs = [
-    wrapGAppsHook
+    wrapGAppsHook3
     gobject-introspection
   ];
 
diff --git a/pkgs/tools/inputmethods/ibus-engines/ibus-anthy/default.nix b/pkgs/tools/inputmethods/ibus-engines/ibus-anthy/default.nix
index 0107e8755880..e7a5f4b1e16d 100644
--- a/pkgs/tools/inputmethods/ibus-engines/ibus-anthy/default.nix
+++ b/pkgs/tools/inputmethods/ibus-engines/ibus-anthy/default.nix
@@ -2,7 +2,7 @@
 , fetchurl
 , gettext
 , pkg-config
-, wrapGAppsHook
+, wrapGAppsHook3
 , anthy
 , ibus
 , glib
@@ -35,7 +35,7 @@ stdenv.mkDerivation rec {
     gettext
     gobject-introspection
     pkg-config
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   configureFlags = [
diff --git a/pkgs/tools/inputmethods/ibus-engines/ibus-bamboo/default.nix b/pkgs/tools/inputmethods/ibus-engines/ibus-bamboo/default.nix
index 95ad99ca8fd5..286539174a95 100644
--- a/pkgs/tools/inputmethods/ibus-engines/ibus-bamboo/default.nix
+++ b/pkgs/tools/inputmethods/ibus-engines/ibus-bamboo/default.nix
@@ -4,7 +4,7 @@
 , gettext
 , xorg
 , pkg-config
-, wrapGAppsHook
+, wrapGAppsHook3
 , gtk3
 , go
 }:
@@ -23,7 +23,7 @@ stdenv.mkDerivation rec {
   nativeBuildInputs = [
     gettext
     pkg-config
-    wrapGAppsHook
+    wrapGAppsHook3
     go
   ];
 
diff --git a/pkgs/tools/inputmethods/ibus-engines/ibus-cangjie/default.nix b/pkgs/tools/inputmethods/ibus-engines/ibus-cangjie/default.nix
index 0e5233ad8b6f..7c59754d2e62 100644
--- a/pkgs/tools/inputmethods/ibus-engines/ibus-cangjie/default.nix
+++ b/pkgs/tools/inputmethods/ibus-engines/ibus-cangjie/default.nix
@@ -3,7 +3,7 @@
 , fetchFromGitHub
 , gettext
 , pkg-config
-, wrapGAppsHook
+, wrapGAppsHook3
 , ibus
 , glib
 , gobject-introspection
@@ -50,7 +50,7 @@ stdenv.mkDerivation {
     gettext
     gobject-introspection
     pkg-config
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   # Upstream builds Python packages as a part of a non-python
diff --git a/pkgs/tools/inputmethods/ibus-engines/ibus-hangul/default.nix b/pkgs/tools/inputmethods/ibus-engines/ibus-hangul/default.nix
index dcc7528f0456..8d5f2672a907 100644
--- a/pkgs/tools/inputmethods/ibus-engines/ibus-hangul/default.nix
+++ b/pkgs/tools/inputmethods/ibus-engines/ibus-hangul/default.nix
@@ -4,7 +4,7 @@
 , appstream-glib
 , gettext
 , pkg-config
-, wrapGAppsHook
+, wrapGAppsHook3
 , gtk3
 , ibus
 , libhangul
@@ -31,7 +31,7 @@ stdenv.mkDerivation rec {
     appstream-glib
     gettext
     pkg-config
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
@@ -49,7 +49,7 @@ stdenv.mkDerivation rec {
     description = "Ibus Hangul engine";
     mainProgram = "ibus-setup-hangul";
     homepage = "https://github.com/libhangul/ibus-hangul";
-    license = licenses.gpl2;
+    license = licenses.gpl2Plus;
     maintainers = with maintainers; [ ericsagnes ];
     platforms = platforms.linux;
   };
diff --git a/pkgs/tools/inputmethods/ibus-engines/ibus-kkc/default.nix b/pkgs/tools/inputmethods/ibus-engines/ibus-kkc/default.nix
index 00ce8df19367..fc5bd3d33be3 100644
--- a/pkgs/tools/inputmethods/ibus-engines/ibus-kkc/default.nix
+++ b/pkgs/tools/inputmethods/ibus-engines/ibus-kkc/default.nix
@@ -27,7 +27,7 @@ stdenv.mkDerivation rec {
     isIbusEngine = true;
     description  = "libkkc (Japanese Kana Kanji input method) engine for ibus";
     homepage     = "https://github.com/ueno/ibus-kkc";
-    license      = licenses.gpl2;
+    license      = licenses.gpl2Plus;
     platforms    = platforms.linux;
     maintainers  = with maintainers; [ vanzef ];
   };
diff --git a/pkgs/tools/inputmethods/ibus-engines/ibus-libpinyin/default.nix b/pkgs/tools/inputmethods/ibus-engines/ibus-libpinyin/default.nix
index b00ca264bc15..b7052092bc6b 100644
--- a/pkgs/tools/inputmethods/ibus-engines/ibus-libpinyin/default.nix
+++ b/pkgs/tools/inputmethods/ibus-engines/ibus-libpinyin/default.nix
@@ -4,7 +4,7 @@
 , autoreconfHook
 , gettext
 , pkg-config
-, wrapGAppsHook
+, wrapGAppsHook3
 , sqlite
 , libpinyin
 , db
@@ -33,7 +33,7 @@ stdenv.mkDerivation rec {
     autoreconfHook
     gettext
     pkg-config
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   configureFlags = [
diff --git a/pkgs/tools/inputmethods/ibus-engines/ibus-m17n/default.nix b/pkgs/tools/inputmethods/ibus-engines/ibus-m17n/default.nix
index f2b2b3b30511..73f602218328 100644
--- a/pkgs/tools/inputmethods/ibus-engines/ibus-m17n/default.nix
+++ b/pkgs/tools/inputmethods/ibus-engines/ibus-m17n/default.nix
@@ -8,7 +8,7 @@
 , m17n_db
 , gettext
 , python3
-, wrapGAppsHook
+, wrapGAppsHook3
 }:
 
 stdenv.mkDerivation rec {
@@ -26,7 +26,7 @@ stdenv.mkDerivation rec {
     autoreconfHook
     gettext
     pkg-config
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
diff --git a/pkgs/tools/inputmethods/ibus-engines/ibus-table/default.nix b/pkgs/tools/inputmethods/ibus-engines/ibus-table/default.nix
index 7b277e76ecb5..fedcbdc4c96e 100644
--- a/pkgs/tools/inputmethods/ibus-engines/ibus-table/default.nix
+++ b/pkgs/tools/inputmethods/ibus-engines/ibus-table/default.nix
@@ -1,7 +1,7 @@
 { lib, stdenv, fetchFromGitHub
 , autoreconfHook, docbook2x, pkg-config
 , gtk3, dconf, gobject-introspection
-, ibus, python3, wrapGAppsHook }:
+, ibus, python3, wrapGAppsHook3 }:
 
 stdenv.mkDerivation rec {
   pname = "ibus-table";
@@ -48,7 +48,7 @@ stdenv.mkDerivation rec {
     docbook2x
     pkg-config
     gobject-introspection
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   postUnpack = ''
diff --git a/pkgs/tools/inputmethods/ibus-engines/ibus-typing-booster/default.nix b/pkgs/tools/inputmethods/ibus-engines/ibus-typing-booster/default.nix
index 4be1726095ca..8bfb1552775e 100644
--- a/pkgs/tools/inputmethods/ibus-engines/ibus-typing-booster/default.nix
+++ b/pkgs/tools/inputmethods/ibus-engines/ibus-typing-booster/default.nix
@@ -1,5 +1,5 @@
 { lib, stdenv, fetchFromGitHub, autoreconfHook, python3, ibus, pkg-config, gtk3, m17n_lib
-, wrapGAppsHook, gobject-introspection
+, wrapGAppsHook3, gobject-introspection
 }:
 
 let
@@ -22,7 +22,7 @@ stdenv.mkDerivation rec {
     hash = "sha256-CZqtjiBTvnTvTf1AUd0IWINSQo4iOaJkBFT2YFsqTvI=";
   };
 
-  nativeBuildInputs = [ autoreconfHook pkg-config wrapGAppsHook gobject-introspection ];
+  nativeBuildInputs = [ autoreconfHook pkg-config wrapGAppsHook3 gobject-introspection ];
   buildInputs = [ python ibus gtk3 m17n_lib ];
 
   preFixup = ''
diff --git a/pkgs/tools/inputmethods/ibus-engines/ibus-uniemoji/default.nix b/pkgs/tools/inputmethods/ibus-engines/ibus-uniemoji/default.nix
index 4c202939e722..9ec45c65ee68 100644
--- a/pkgs/tools/inputmethods/ibus-engines/ibus-uniemoji/default.nix
+++ b/pkgs/tools/inputmethods/ibus-engines/ibus-uniemoji/default.nix
@@ -1,7 +1,7 @@
 { lib, stdenv
 , fetchFromGitHub
 , gobject-introspection
-, wrapGAppsHook
+, wrapGAppsHook3
 , python3
 , ibus
 }:
@@ -32,7 +32,7 @@ in stdenv.mkDerivation rec {
 
 
   nativeBuildInputs = [
-    wrapGAppsHook
+    wrapGAppsHook3
     gobject-introspection
   ];
 
diff --git a/pkgs/tools/inputmethods/ibus/default.nix b/pkgs/tools/inputmethods/ibus/default.nix
index 5de2fc67d020..2acd97cbab7c 100644
--- a/pkgs/tools/inputmethods/ibus/default.nix
+++ b/pkgs/tools/inputmethods/ibus/default.nix
@@ -7,7 +7,7 @@
 , makeWrapper
 , pkg-config
 , vala
-, wrapGAppsHook
+, wrapGAppsHook3
 , dbus
 , systemd
 , dconf ? null
@@ -125,7 +125,7 @@ stdenv.mkDerivation rec {
     pkg-config
     python3BuildEnv
     vala
-    wrapGAppsHook
+    wrapGAppsHook3
     dbus-launch
     gobject-introspection
   ];
diff --git a/pkgs/tools/inputmethods/input-remapper/default.nix b/pkgs/tools/inputmethods/input-remapper/default.nix
index 04f8c7f74c15..eb1c9dedd38d 100644
--- a/pkgs/tools/inputmethods/input-remapper/default.nix
+++ b/pkgs/tools/inputmethods/input-remapper/default.nix
@@ -1,6 +1,6 @@
 { lib
 , pkgconfig
-, wrapGAppsHook
+, wrapGAppsHook3
 , gettext
 , gtk3
 , glib
@@ -88,7 +88,7 @@ in
       python tests/test.py --start-dir unit
   '';
 
-  # Nixpkgs 15.9.4.3. When using wrapGAppsHook with special derivers you can end up with double wrapped binaries.
+  # Nixpkgs 15.9.4.3. When using wrapGAppsHook3 with special derivers you can end up with double wrapped binaries.
   dontWrapGApps = true;
   preFixup = ''
     makeWrapperArgs+=(
@@ -98,7 +98,7 @@ in
   '';
 
   nativeBuildInputs = [
-    wrapGAppsHook
+    wrapGAppsHook3
     gettext # needed to build translations
     gtk3
     glib
diff --git a/pkgs/tools/inputmethods/nabi/default.nix b/pkgs/tools/inputmethods/nabi/default.nix
index 61a948529f4d..62bb10494b13 100644
--- a/pkgs/tools/inputmethods/nabi/default.nix
+++ b/pkgs/tools/inputmethods/nabi/default.nix
@@ -16,7 +16,7 @@ stdenv.mkDerivation rec {
     description = "The Easy Hangul XIM";
     mainProgram = "nabi";
     homepage = "https://github.com/choehwanjin/nabi";
-    license = licenses.gpl2;
+    license = licenses.gpl2Plus;
     maintainers = [ maintainers.ianwookim ];
     platforms = platforms.linux;
   };
diff --git a/pkgs/tools/misc/aescrypt/default.nix b/pkgs/tools/misc/aescrypt/default.nix
index 0ced53804643..11052cb59350 100644
--- a/pkgs/tools/misc/aescrypt/default.nix
+++ b/pkgs/tools/misc/aescrypt/default.nix
@@ -27,7 +27,7 @@ stdenv.mkDerivation rec {
   meta = with lib; {
     description = "Encrypt files with Advanced Encryption Standard (AES)";
     homepage    = "https://www.aescrypt.com/";
-    license     = licenses.gpl2;
+    license     = licenses.gpl2Only;
     maintainers = with maintainers; [ lovek323 qknight ];
     platforms   = lib.platforms.all;
     hydraPlatforms = with platforms; unix;
diff --git a/pkgs/tools/misc/aichat/default.nix b/pkgs/tools/misc/aichat/default.nix
index 9b97546a2c47..a3b7307290ee 100644
--- a/pkgs/tools/misc/aichat/default.nix
+++ b/pkgs/tools/misc/aichat/default.nix
@@ -8,16 +8,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "aichat";
-  version = "0.16.0";
+  version = "0.17.0";
 
   src = fetchFromGitHub {
     owner = "sigoden";
     repo = "aichat";
     rev = "v${version}";
-    hash = "sha256-XNNiIjJfPsfoyG3RbxlcoUxsOUkWZ+3H3SlYenuNOIQ=";
+    hash = "sha256-muRUBBmhXtIbKvMzBISjoHFSOtYci6x9nQI/bUiEHrs=";
   };
 
-  cargoHash = "sha256-JOkcqqmfat+PAn7mRHq+iQCF60weDOBWP2+0DL0s3X0=";
+  cargoHash = "sha256-RKyZOfjweSE83hAjBIve38CT9R2DomwW3qA8ezw6dCI=";
 
   nativeBuildInputs = [
     pkg-config
diff --git a/pkgs/tools/misc/alarm-clock-applet/default.nix b/pkgs/tools/misc/alarm-clock-applet/default.nix
index 525d65dd7e08..85feb80700e6 100644
--- a/pkgs/tools/misc/alarm-clock-applet/default.nix
+++ b/pkgs/tools/misc/alarm-clock-applet/default.nix
@@ -4,7 +4,7 @@
 , fetchpatch
 , cmake
 , pkg-config
-, wrapGAppsHook
+, wrapGAppsHook3
 , gst_all_1
 , libnotify
 , libayatana-appindicator
@@ -35,7 +35,7 @@ stdenv.mkDerivation rec {
   nativeBuildInputs = [
     cmake
     pkg-config
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
diff --git a/pkgs/tools/misc/apparix/default.nix b/pkgs/tools/misc/apparix/default.nix
index a75a9f03f300..7b80c2a5d9bd 100644
--- a/pkgs/tools/misc/apparix/default.nix
+++ b/pkgs/tools/misc/apparix/default.nix
@@ -15,7 +15,7 @@ stdenv.mkDerivation rec {
     homepage = "http://micans.org/apparix";
     description = "Add directory bookmarks, distant listing, and distant editing to the command line";
     maintainers = with maintainers; [ ];
-    license = licenses.gpl2;
+    license = licenses.gpl2Plus;
     platforms = platforms.all;
     mainProgram = "apparix";
   };
diff --git a/pkgs/tools/misc/archi/default.nix b/pkgs/tools/misc/archi/default.nix
index 23c5372e5eef..e933edf3642b 100644
--- a/pkgs/tools/misc/archi/default.nix
+++ b/pkgs/tools/misc/archi/default.nix
@@ -5,27 +5,27 @@
 , jdk
 , libsecret
 , webkitgtk
-, wrapGAppsHook
+, wrapGAppsHook3
 , _7zz
 , nixosTests
 }:
 
 stdenv.mkDerivation rec {
   pname = "Archi";
-  version = "5.2.0";
+  version = "5.3.0";
 
   src = {
     "x86_64-linux" = fetchurl {
-      url = "https://www.archimatetool.com/downloads/archi_5.php?/${version}/Archi-Linux64-${version}.tgz";
-      hash = "sha256-uGW4Wl3E71ZCgWzPHkmXv/PluegDF8C64FUQ7C5/SDA=";
+      url = "https://www.archimatetool.com/downloads/archi/${version}/Archi-Linux64-${version}.tgz";
+      hash = "sha256-ngO3YFCChsnefxdxtR00Dy736K2GYnTEYI4vKWLnPsw=";
     };
     "x86_64-darwin" = fetchurl {
-      url = "https://www.archimatetool.com/downloads/archi_5.php?/${version}/Archi-Mac-${version}.dmg";
-      hash = "sha256-GI9aIAYwu60RdjN0Y3O94sVMzJR1+nX4txVcvqn1r58=";
+      url = "https://www.archimatetool.com/downloads/archi/${version}/Archi-Mac-${version}.dmg";
+      hash = "sha256-dL1c7IrbDMY/WbijQh1dCmCrRQQhj4fjGN+6m19OjO0=";
     };
     "aarch64-darwin" = fetchurl {
-      url = "https://www.archimatetool.com/downloads/archi_5.php?/${version}/Archi-Mac-Silicon-${version}.dmg";
-      hash = "sha256-Jg+tl902OWSm4GHxF7QXbRU5nxX4/5q6LTGubHWQ08E=";
+      url = "https://www.archimatetool.com/downloads/archi/${version}/Archi-Mac-Silicon-${version}.dmg";
+      hash = "sha256-iczIUm1LCAjYKOyHXbFCgb+zoUxxATSOVkB8Ldk7pxQ=";
     };
   }.${stdenv.hostPlatform.system} or (throw "Unsupported system: ${stdenv.hostPlatform.system}");
 
@@ -35,7 +35,7 @@ stdenv.mkDerivation rec {
 
   nativeBuildInputs = [
     makeWrapper
-    wrapGAppsHook
+    wrapGAppsHook3
   ] ++ lib.optionals stdenv.hostPlatform.isDarwin [
     _7zz
   ] ++ lib.optionals stdenv.hostPlatform.isLinux [
@@ -55,6 +55,7 @@ stdenv.mkDerivation rec {
         install -D -m755 Archi $out/libexec/Archi
         makeWrapper $out/libexec/Archi $out/bin/Archi \
           --prefix LD_LIBRARY_PATH : ${lib.makeLibraryPath ([ webkitgtk ])} \
+          --set WEBKIT_DISABLE_DMABUF_RENDERER 1 \
           --prefix PATH : ${jdk}/bin
       ''
     else
diff --git a/pkgs/tools/misc/bfr/default.nix b/pkgs/tools/misc/bfr/default.nix
index 5308d2098d5e..60905d95e57d 100644
--- a/pkgs/tools/misc/bfr/default.nix
+++ b/pkgs/tools/misc/bfr/default.nix
@@ -20,7 +20,7 @@ stdenv.mkDerivation rec {
 
   meta = with lib; {
     description = "A general-purpose command-line pipe buffer";
-    license = lib.licenses.gpl2;
+    license = lib.licenses.gpl2Only;
     maintainers = with maintainers; [ pSub ];
     platforms = platforms.linux;
   };
diff --git a/pkgs/tools/misc/bibtex2html/default.nix b/pkgs/tools/misc/bibtex2html/default.nix
index 2e5ebd1e56a2..ba73de533af9 100644
--- a/pkgs/tools/misc/bibtex2html/default.nix
+++ b/pkgs/tools/misc/bibtex2html/default.nix
@@ -16,7 +16,7 @@ stdenv.mkDerivation {
   meta = with lib; {
     description = "A collection of tools for translating from BibTeX to HTML";
     homepage = "https://www.lri.fr/~filliatr/bibtex2html/";
-    license = licenses.gpl2;
+    license = licenses.gpl2Only;
     platforms = ocaml.meta.platforms or [];
     maintainers = [ maintainers.scolobb ];
   };
diff --git a/pkgs/tools/misc/bibtool/default.nix b/pkgs/tools/misc/bibtool/default.nix
index f9de299c87b2..46c798f12c6d 100644
--- a/pkgs/tools/misc/bibtool/default.nix
+++ b/pkgs/tools/misc/bibtool/default.nix
@@ -20,7 +20,7 @@ stdenv.mkDerivation rec {
   meta = with lib; {
     description = "Tool for manipulating BibTeX bibliographies";
     homepage = "http://www.gerd-neugebauer.de/software/TeX/BibTool/index.en.html";
-    license = licenses.gpl2;
+    license = licenses.gpl2Plus;
     platforms = platforms.all;
     maintainers = [ maintainers.rycee ];
     mainProgram = "bibtool";
diff --git a/pkgs/tools/misc/bibutils/default.nix b/pkgs/tools/misc/bibutils/default.nix
index c454e8cfa1d8..ea5360549b20 100644
--- a/pkgs/tools/misc/bibutils/default.nix
+++ b/pkgs/tools/misc/bibutils/default.nix
@@ -44,7 +44,7 @@ stdenv.mkDerivation rec {
     description = "Bibliography format interconversion";
     longDescription = "The bibutils program set interconverts between various bibliography formats using a common MODS-format XML intermediate. For example, one can convert RIS-format files to Bibtex by doing two transformations: RIS->MODS->Bibtex. By using a common intermediate for N formats, only 2N programs are required and not N²-N. These programs operate on the command line and are styled after standard UNIX-like filters.";
     homepage = "https://sourceforge.net/p/bibutils/home/Bibutils/";
-    license = licenses.gpl2;
+    license = licenses.gpl2Only;
     maintainers = [ maintainers.garrison ];
     platforms = platforms.unix;
   };
diff --git a/pkgs/tools/misc/birdfont/default.nix b/pkgs/tools/misc/birdfont/default.nix
index aa8e9ac6a9e8..731eeb051335 100644
--- a/pkgs/tools/misc/birdfont/default.nix
+++ b/pkgs/tools/misc/birdfont/default.nix
@@ -1,6 +1,6 @@
 { lib, stdenv, fetchurl, pkg-config, python3, xmlbird,
 cairo, gdk-pixbuf, libgee, glib, gtk3, webkitgtk, libnotify, sqlite, vala,
-gobject-introspection, gsettings-desktop-schemas, wrapGAppsHook, autoPatchelfHook }:
+gobject-introspection, gsettings-desktop-schemas, wrapGAppsHook3, autoPatchelfHook }:
 
 stdenv.mkDerivation rec {
   pname = "birdfont";
@@ -11,7 +11,7 @@ stdenv.mkDerivation rec {
     sha256 = "sha256-NNw7203BtHhNyyQezb3/EP98cTsu7ABDFBnM5Ms2ePY=";
   };
 
-  nativeBuildInputs = [ python3 pkg-config vala gobject-introspection wrapGAppsHook autoPatchelfHook ];
+  nativeBuildInputs = [ python3 pkg-config vala gobject-introspection wrapGAppsHook3 autoPatchelfHook ];
   buildInputs = [ xmlbird libgee cairo gdk-pixbuf glib gtk3 webkitgtk libnotify sqlite gsettings-desktop-schemas ];
 
   postPatch = ''
diff --git a/pkgs/tools/misc/bmap-tools/default.nix b/pkgs/tools/misc/bmap-tools/default.nix
index 4bf170ccbc7d..2f36c452fcb1 100644
--- a/pkgs/tools/misc/bmap-tools/default.nix
+++ b/pkgs/tools/misc/bmap-tools/default.nix
@@ -19,7 +19,7 @@ python3Packages.buildPythonApplication rec {
   meta = with lib; {
     description = "bmap-related tools";
     homepage = "https://github.com/intel/bmap-tools";
-    license = licenses.gpl2;
+    license = licenses.gpl2Only;
     maintainers = [ maintainers.dezgeg ];
     platforms = platforms.linux;
     mainProgram = "bmaptool";
diff --git a/pkgs/tools/misc/bogofilter/default.nix b/pkgs/tools/misc/bogofilter/default.nix
index df78108e43e2..f5fcbc831c89 100644
--- a/pkgs/tools/misc/bogofilter/default.nix
+++ b/pkgs/tools/misc/bogofilter/default.nix
@@ -35,7 +35,7 @@ stdenv.mkDerivation rec {
       classifications and corrections.  It is based on a Bayesian
       filter.
     '';
-    license = lib.licenses.gpl2;
+    license = lib.licenses.gpl2Plus;
     platforms = lib.platforms.linux;
   };
 }
diff --git a/pkgs/tools/misc/broot/default.nix b/pkgs/tools/misc/broot/default.nix
index b136dcb6ad93..fc1d076c1ad6 100644
--- a/pkgs/tools/misc/broot/default.nix
+++ b/pkgs/tools/misc/broot/default.nix
@@ -18,16 +18,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "broot";
-  version = "1.37.0";
+  version = "1.38.0";
 
   src = fetchFromGitHub {
     owner = "Canop";
     repo = pname;
     rev = "v${version}";
-    hash = "sha256-IJSXP4B07/0ZHzuAmPBXn/n0O7LOYNTB812sKz+mGuc=";
+    hash = "sha256-eKvJyORTb8gFgyeWW7C6PngQ+bKE9Oln2lpd646YbMU=";
   };
 
-  cargoHash = "sha256-jsy7FtTX/iG3TPdbYemG+6jbguQN4LoYMgscMffik7g=";
+  cargoHash = "sha256-uX0pQMt6WLUsXaUmbMojyScykdFe8DqpyGrK0QC66eE=";
 
   nativeBuildInputs = [
     installShellFiles
diff --git a/pkgs/tools/misc/ccze/default.nix b/pkgs/tools/misc/ccze/default.nix
index 4946fd64d89d..2c028485ccd3 100644
--- a/pkgs/tools/misc/ccze/default.nix
+++ b/pkgs/tools/misc/ccze/default.nix
@@ -27,7 +27,7 @@ stdenv.mkDerivation rec {
       for the Perl colorize tool.  Includes plugins for a variety of log
       formats (Apache, Postfix, Procmail, etc.).
     '';
-    license = licenses.gpl2;
+    license = licenses.gpl2Plus;
     maintainers = with maintainers; [ malyn ];
     platforms = platforms.linux;
   };
diff --git a/pkgs/tools/misc/cf-terraforming/default.nix b/pkgs/tools/misc/cf-terraforming/default.nix
index 5ec67c40f1d8..42ac51995531 100644
--- a/pkgs/tools/misc/cf-terraforming/default.nix
+++ b/pkgs/tools/misc/cf-terraforming/default.nix
@@ -2,16 +2,16 @@
 
 buildGoModule rec {
   pname = "cf-terraforming";
-  version = "0.19.0";
+  version = "0.20.0";
 
   src = fetchFromGitHub {
     owner = "cloudflare";
     repo = "cf-terraforming";
     rev = "v${version}";
-    sha256 = "sha256-eGfPk3qptNf6QfVKDT4MwJav7z+ri+eEiB7KHGRxzOE=";
+    sha256 = "sha256-r5iRXhbjmFNlzoOe9s6vheROl/XKbeIfGD+ACl0hmro=";
   };
 
-  vendorHash = "sha256-cWFCEC20D2nhVeW7P/w5YSt1tQbWTPDWF/eaxEvWoLo=";
+  vendorHash = "sha256-FinthjJeXwfjyNORdgmgArjRk+2zUlVV67P52V/lK+A=";
   ldflags = [ "-X github.com/cloudflare/cf-terraforming/internal/app/cf-terraforming/cmd.versionString=${version}" ];
 
   # The test suite insists on downloading a binary release of Terraform from
diff --git a/pkgs/tools/misc/cht.sh/default.nix b/pkgs/tools/misc/cht.sh/default.nix
index b34b1ee4d517..f61defdbdeda 100644
--- a/pkgs/tools/misc/cht.sh/default.nix
+++ b/pkgs/tools/misc/cht.sh/default.nix
@@ -10,7 +10,7 @@
 
 stdenv.mkDerivation {
   pname = "cht.sh";
-  version = "unstable-2022-04-18";
+  version = "0-unstable-2022-04-18";
 
   nativeBuildInputs = [ makeWrapper ];
 
diff --git a/pkgs/tools/misc/ckb-next/default.nix b/pkgs/tools/misc/ckb-next/default.nix
index 959493d3e4bd..6b7fc82e0d01 100644
--- a/pkgs/tools/misc/ckb-next/default.nix
+++ b/pkgs/tools/misc/ckb-next/default.nix
@@ -55,7 +55,7 @@ stdenv.mkDerivation rec {
   meta = with lib; {
     description = "Driver and configuration tool for Corsair keyboards and mice";
     homepage = "https://github.com/ckb-next/ckb-next";
-    license = licenses.gpl2;
+    license = licenses.gpl2Only;
     platforms = platforms.linux;
     mainProgram = "ckb-next";
     maintainers = with maintainers; [ ];
diff --git a/pkgs/tools/misc/clipster/default.nix b/pkgs/tools/misc/clipster/default.nix
index cad2c4506374..5c9c2cd1054c 100644
--- a/pkgs/tools/misc/clipster/default.nix
+++ b/pkgs/tools/misc/clipster/default.nix
@@ -1,5 +1,5 @@
 {fetchFromGitHub , lib, stdenv, python3, gtk3, libwnck,
- gobject-introspection, wrapGAppsHook }:
+ gobject-introspection, wrapGAppsHook3 }:
 
 stdenv.mkDerivation  rec {
   pname = "clipster";
@@ -15,7 +15,7 @@ stdenv.mkDerivation  rec {
   pythonEnv = python3.withPackages(ps: with ps; [ pygobject3 ]);
 
   nativeBuildInputs = [ gobject-introspection ];
-  buildInputs =  [ pythonEnv gtk3 libwnck wrapGAppsHook ];
+  buildInputs =  [ pythonEnv gtk3 libwnck wrapGAppsHook3 ];
 
   installPhase = ''
     sed -i 's/python/python3/g' clipster
diff --git a/pkgs/tools/misc/cloc/default.nix b/pkgs/tools/misc/cloc/default.nix
index 14c7b2133c71..4cb21ea5c99e 100644
--- a/pkgs/tools/misc/cloc/default.nix
+++ b/pkgs/tools/misc/cloc/default.nix
@@ -53,7 +53,7 @@ in stdenv.mkDerivation {
   meta = {
     description = "A program that counts lines of source code";
     homepage = "https://github.com/AlDanial/cloc";
-    license = lib.licenses.gpl2;
+    license = lib.licenses.gpl2Plus;
     platforms = lib.platforms.all;
     maintainers = with lib.maintainers; [ rycee ];
     mainProgram = "cloc";
diff --git a/pkgs/tools/misc/contacts/default.nix b/pkgs/tools/misc/contacts/default.nix
index 175b7a9ed247..1c789ca1d11d 100644
--- a/pkgs/tools/misc/contacts/default.nix
+++ b/pkgs/tools/misc/contacts/default.nix
@@ -27,7 +27,7 @@ stdenv.mkDerivation {
   meta = with lib; {
     description = "Access contacts from the Mac address book from command-line";
     homepage = "http://www.gnufoo.org/contacts/contacts.html";
-    license = licenses.gpl2;
+    license = licenses.gpl2Only;
     maintainers = with maintainers; [ jwiegley ];
     platforms = platforms.darwin;
     hydraPlatforms = platforms.darwin;
diff --git a/pkgs/tools/misc/coreutils/default.nix b/pkgs/tools/misc/coreutils/default.nix
index efcdce15bf02..2e2f2f160124 100644
--- a/pkgs/tools/misc/coreutils/default.nix
+++ b/pkgs/tools/misc/coreutils/default.nix
@@ -54,6 +54,9 @@ stdenv.mkDerivation rec {
     sed '2i echo Skipping rm deep-2 test && exit 77' -i ./tests/rm/deep-2.sh
     sed '2i echo Skipping du long-from-unreadable test && exit 77' -i ./tests/du/long-from-unreadable.sh
 
+    # The test tends to fail on cephfs
+    sed '2i echo Skipping df total-verify test && exit 77' -i ./tests/df/total-verify.sh
+
     # Some target platforms, especially when building inside a container have
     # issues with the inotify test.
     sed '2i echo Skipping tail inotify dir recreate test && exit 77' -i ./tests/tail/inotify-dir-recreate.sh
diff --git a/pkgs/tools/misc/cpulimit/default.nix b/pkgs/tools/misc/cpulimit/default.nix
index 75c3ba733b14..4788bc57befe 100644
--- a/pkgs/tools/misc/cpulimit/default.nix
+++ b/pkgs/tools/misc/cpulimit/default.nix
@@ -23,7 +23,7 @@ stdenv.mkDerivation rec {
     homepage = "https://github.com/opsengine/cpulimit";
     description = "CPU usage limiter";
     platforms = platforms.unix;
-    license = licenses.gpl2;
+    license = licenses.gpl2Plus;
     mainProgram = "cpulimit";
     maintainers = [ maintainers.jsoo1 ];
   };
diff --git a/pkgs/tools/misc/cpuminer/default.nix b/pkgs/tools/misc/cpuminer/default.nix
index 4b7c5fc7f486..8b9e07762c83 100644
--- a/pkgs/tools/misc/cpuminer/default.nix
+++ b/pkgs/tools/misc/cpuminer/default.nix
@@ -37,7 +37,7 @@ stdenv.mkDerivation rec {
   meta = with lib; {
     homepage = "https://github.com/pooler/cpuminer";
     description = "CPU miner for Litecoin and Bitcoin";
-    license = licenses.gpl2;
+    license = licenses.gpl2Plus;
     platforms = platforms.all;
     maintainers = with maintainers; [ pSub ];
     mainProgram = "minerd";
diff --git a/pkgs/tools/misc/csv2latex/default.nix b/pkgs/tools/misc/csv2latex/default.nix
index cc286c54e9ad..acfe07f26228 100644
--- a/pkgs/tools/misc/csv2latex/default.nix
+++ b/pkgs/tools/misc/csv2latex/default.nix
@@ -17,7 +17,7 @@ stdenv.mkDerivation rec {
   meta = with lib; {
     description = "Command-line CSV to LaTeX file converter";
     homepage = "http://brouits.free.fr/csv2latex/";
-    license = licenses.gpl2;
+    license = licenses.gpl2Only;
     maintainers = [ maintainers.catern ];
     mainProgram = "csv2latex";
   };
diff --git a/pkgs/tools/misc/cyberchef/default.nix b/pkgs/tools/misc/cyberchef/default.nix
index ba1a609c9682..f0a20fe9687f 100644
--- a/pkgs/tools/misc/cyberchef/default.nix
+++ b/pkgs/tools/misc/cyberchef/default.nix
@@ -5,11 +5,11 @@
 
 stdenv.mkDerivation rec {
   pname = "cyberchef";
-  version = "10.18.3";
+  version = "10.18.6";
 
   src = fetchzip {
     url = "https://github.com/gchq/CyberChef/releases/download/v${version}/CyberChef_v${version}.zip";
-    sha256 = "sha256-HLYcKF+DCj5QA+0ZJwRpC+iTN5z/S249UnQirNJMLF4=";
+    sha256 = "sha256-LbauIeDUqfL1ChZTThq7CJ++yNiuKaa773jSdmxorf8=";
     stripRoot = false;
   };
 
diff --git a/pkgs/tools/misc/dbus-map/default.nix b/pkgs/tools/misc/dbus-map/default.nix
index 955a248be7bb..cdd7b840a1d3 100644
--- a/pkgs/tools/misc/dbus-map/default.nix
+++ b/pkgs/tools/misc/dbus-map/default.nix
@@ -20,7 +20,7 @@ stdenv.mkDerivation {
   meta = with lib; {
     description = "Simple utility for enumerating D-Bus endpoints, an nmap for D-Bus";
     homepage = "https://github.com/taviso/dbusmap";
-    license = licenses.gpl2;
+    license = licenses.gpl2Only;
     platforms = platforms.linux;
     maintainers = with maintainers; [ ];
     mainProgram = "dbus-map";
diff --git a/pkgs/tools/misc/ddcutil/default.nix b/pkgs/tools/misc/ddcutil/default.nix
index 28a31a16d078..baf41aac7041 100644
--- a/pkgs/tools/misc/ddcutil/default.nix
+++ b/pkgs/tools/misc/ddcutil/default.nix
@@ -39,7 +39,7 @@ stdenv.mkDerivation rec {
   meta = with lib; {
     homepage = "http://www.ddcutil.com/";
     description = "Query and change Linux monitor settings using DDC/CI and USB";
-    license = licenses.gpl2;
+    license = licenses.gpl2Plus;
     platforms = platforms.linux;
     maintainers = with maintainers; [ rnhmjoj ];
     changelog = "https://github.com/rockowitz/ddcutil/blob/v${version}/CHANGELOG.md";
diff --git a/pkgs/tools/misc/diffoscope/default.nix b/pkgs/tools/misc/diffoscope/default.nix
index c5ca89f54841..7bf5b4586e0d 100644
--- a/pkgs/tools/misc/diffoscope/default.nix
+++ b/pkgs/tools/misc/diffoscope/default.nix
@@ -96,11 +96,11 @@ in
 # Note: when upgrading this package, please run the list-missing-tools.sh script as described below!
 python.pkgs.buildPythonApplication rec {
   pname = "diffoscope";
-  version = "265";
+  version = "267";
 
   src = fetchurl {
     url = "https://diffoscope.org/archive/diffoscope-${version}.tar.bz2";
-    hash = "sha256-YE81R8lTOM3wmv/GIaIBqUq2O6UvnUaHjuXZ00yDU8U=";
+    hash = "sha256-eU5n39kwITCGKXFu7ESAs9bZM6SPxey0tmDLd86zRvE=";
   };
 
   outputs = [
diff --git a/pkgs/tools/misc/dtool/default.nix b/pkgs/tools/misc/dtool/default.nix
index 9cf22a9da39f..8fdb2f533d47 100644
--- a/pkgs/tools/misc/dtool/default.nix
+++ b/pkgs/tools/misc/dtool/default.nix
@@ -16,11 +16,13 @@ rustPlatform.buildRustPackage rec {
     hash = "sha256-m4H+ANwEbK6vGW3oIVZqnqvMiAKxNJf2TLIGh/G6AU4=";
   };
 
-  cargoHash = "sha256-r8r3f4yKMQgjtB3j4qE7cqQL18nIqAGPO5RsFErqh2c=";
+  cargoHash = "sha256-o5Xvc0tnoUgfp5k7EqVuEH9Zyo3C+A+mVqPhMtZCYKw=";
 
   buildInputs = lib.optionals stdenv.isDarwin [
     darwin.apple_sdk.frameworks.Security
   ];
+  # FIXME: remove patch when upstream version of rustc-serialize is updated
+  cargoPatches = [ ./rustc-serialize-fix.patch ];
 
   checkType = "debug";
 
diff --git a/pkgs/tools/misc/dtool/rustc-serialize-fix.patch b/pkgs/tools/misc/dtool/rustc-serialize-fix.patch
new file mode 100644
index 000000000000..8d0327e8a457
--- /dev/null
+++ b/pkgs/tools/misc/dtool/rustc-serialize-fix.patch
@@ -0,0 +1,16 @@
+diff --git a/Cargo.lock b/Cargo.lock
+index b1cc23695b30..ffdeb1c90618 100644
+--- a/Cargo.lock
++++ b/Cargo.lock
+@@ -996,9 +996,9 @@ dependencies = [
+ 
+ [[package]]
+ name = "rustc-serialize"
+-version = "0.3.24"
++version = "0.3.25"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "dcf128d1287d2ea9d80910b5f1120d0b8eede3fbf1abe91c40d39ea7d51e6fda"
++checksum = "fe834bc780604f4674073badbad26d7219cadfb4a2275802db12cbae17498401"
+ 
+ [[package]]
+ name = "rustix"
diff --git a/pkgs/tools/misc/duc/default.nix b/pkgs/tools/misc/duc/default.nix
index 0501b681aa3a..56fe697528ab 100644
--- a/pkgs/tools/misc/duc/default.nix
+++ b/pkgs/tools/misc/duc/default.nix
@@ -27,7 +27,7 @@ stdenv.mkDerivation rec {
   meta = with lib; {
     homepage = "http://duc.zevv.nl/";
     description = "Collection of tools for inspecting and visualizing disk usage";
-    license = licenses.gpl2;
+    license = licenses.gpl2Only;
 
     platforms = platforms.all;
     maintainers = [ ];
diff --git a/pkgs/tools/misc/dumptorrent/default.nix b/pkgs/tools/misc/dumptorrent/default.nix
index 194d40e1c1cc..c80a696f8cba 100644
--- a/pkgs/tools/misc/dumptorrent/default.nix
+++ b/pkgs/tools/misc/dumptorrent/default.nix
@@ -22,7 +22,7 @@ stdenv.mkDerivation rec {
     meta = with lib; {
       description = "Dump .torrent file information";
       homepage = "https://sourceforge.net/projects/dumptorrent/";
-      license = licenses.gpl2;
+      license = licenses.gpl2Only;
       maintainers = [ maintainers.zohl ];
       platforms = platforms.all;
       mainProgram = "dumptorrent";
diff --git a/pkgs/tools/misc/edid-decode/default.nix b/pkgs/tools/misc/edid-decode/default.nix
index f6bcff31a00f..24c4266424a7 100644
--- a/pkgs/tools/misc/edid-decode/default.nix
+++ b/pkgs/tools/misc/edid-decode/default.nix
@@ -6,7 +6,7 @@
 
 stdenv.mkDerivation {
   pname = "edid-decode";
-  version = "unstable-2024-04-02";
+  version = "0-unstable-2024-04-02";
 
   outputs = [
     "out"
diff --git a/pkgs/tools/misc/esphome/dashboard.nix b/pkgs/tools/misc/esphome/dashboard.nix
index 6d72dc40ca0d..d8428e365fcd 100644
--- a/pkgs/tools/misc/esphome/dashboard.nix
+++ b/pkgs/tools/misc/esphome/dashboard.nix
@@ -5,12 +5,12 @@
 
 buildPythonPackage rec {
   pname = "esphome-dashboard";
-  version = "20240319.0";
+  version = "20240412.0";
   format = "setuptools";
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-jiEXZWw8A4RcsRbypFpWkt8O3Ib1cNcOQO1zHt96aQU=";
+    hash = "sha256-MT/EpZ8kDKHhJGF4njdh6Q+xe8GF4FYxaoIighSguiQ=";
   };
 
   # no tests
diff --git a/pkgs/tools/misc/esphome/default.nix b/pkgs/tools/misc/esphome/default.nix
index 972ac63e83dc..2593ef5b7bb8 100644
--- a/pkgs/tools/misc/esphome/default.nix
+++ b/pkgs/tools/misc/esphome/default.nix
@@ -19,14 +19,14 @@ let
 in
 python.pkgs.buildPythonApplication rec {
   pname = "esphome";
-  version = "2024.3.2";
+  version = "2024.4.2";
   pyproject = true;
 
   src = fetchFromGitHub {
     owner = pname;
     repo = pname;
     rev = "refs/tags/${version}";
-    hash = "sha256-WeTajznndw01jXIEnOiSEy9psLuMeAC6j7UmHg0+Fys=";
+    hash = "sha256-q4SVsfd5PJjeqt6UJJG6vuyxTA/bqDDl6e5dxhWIfYM=";
   };
 
   nativeBuildInputs = with python.pkgs; [
@@ -41,6 +41,12 @@ python.pkgs.buildPythonApplication rec {
   postPatch = ''
     # drop coverage testing
     sed -i '/--cov/d' pytest.ini
+
+    # ensure component dependencies are available
+    cat requirements_optional.txt >> requirements.txt
+    # relax strict runtime version check
+    substituteInPlace esphome/components/font/__init__.py \
+      --replace-fail "10.2.0" "${python.pkgs.pillow.version}"
   '';
 
   # Remove esptool and platformio from requirements
@@ -55,6 +61,7 @@ python.pkgs.buildPythonApplication rec {
   propagatedBuildInputs = with python.pkgs; [
     aioesphomeapi
     argcomplete
+    cairosvg
     click
     colorama
     cryptography
diff --git a/pkgs/tools/misc/esptool-ck/default.nix b/pkgs/tools/misc/esptool-ck/default.nix
index 2dd6415324e4..58f84c9b0630 100644
--- a/pkgs/tools/misc/esptool-ck/default.nix
+++ b/pkgs/tools/misc/esptool-ck/default.nix
@@ -21,7 +21,7 @@ stdenv.mkDerivation rec {
   meta = with lib; {
     description = "ESP8266/ESP32 build helper tool";
     homepage = "https://github.com/igrr/esptool-ck";
-    license = licenses.gpl2;
+    license = licenses.gpl2Plus;
     maintainers = [ maintainers.dezgeg ];
     platforms = platforms.linux;
     mainProgram = "esptool";
diff --git a/pkgs/tools/misc/ethtool/default.nix b/pkgs/tools/misc/ethtool/default.nix
index eb1911170beb..72590420e1a1 100644
--- a/pkgs/tools/misc/ethtool/default.nix
+++ b/pkgs/tools/misc/ethtool/default.nix
@@ -9,23 +9,13 @@
 
 stdenv.mkDerivation rec {
   pname = "ethtool";
-  version = "6.1";
+  version = "6.7";
 
   src = fetchurl {
     url = "mirror://kernel/software/network/${pname}/${pname}-${version}.tar.xz";
-    sha256 = "sha256-xB/Igf+lpAQy0t2CnrRMZKSd7kgucWuqz5Jixk2qj5A=";
+    sha256 = "sha256-w65SawHOTY32x5SrFw3kpBBNER6o2Ns/H9fCX8uQVhk=";
   };
 
-  patches = [
-    # Patch that fixes build with musl libc
-    # NOTE remove on next release, since it is applied in upstream
-    (fetchpatch {
-      name = "Fix-build-with-musl-libc.patch";
-      url = "https://git.kernel.org/pub/scm/network/ethtool/ethtool.git/patch/marvell.c?id=41be533331fc3c6b711dbe532405782d3b8be5d1";
-      sha256 = "sha256-CItvt/eeNJkr1sOzaaHZhAnaybDutL9cT2O6XwQll+M=";
-    })
-  ];
-
   nativeBuildInputs = [
     pkg-config
   ];
diff --git a/pkgs/tools/misc/ets/default.nix b/pkgs/tools/misc/ets/default.nix
index 7d9103e7b350..874c57ccaa89 100644
--- a/pkgs/tools/misc/ets/default.nix
+++ b/pkgs/tools/misc/ets/default.nix
@@ -2,22 +2,16 @@
 
 buildGoModule rec {
   pname = "ets";
-  version = "0.2.1";
+  version = "0.3.0";
 
   src = fetchFromGitHub {
-    owner = "zmwangx";
-    repo = pname;
+    owner = "gdubicki";
+    repo = "ets";
     rev = "v${version}";
-    sha256 = "sha256-XWIDo5msTMTLr60x1R9cwsiZIDG6G+uHWx8idt4F2iA=";
+    hash = "sha256-PowJ3ig8TfGx9P/PJPVBL8GsMh+gGZVt9l4Rf7Mqk00=";
   };
 
-  # https://github.com/zmwangx/ets/pull/18/
-  patches = [ (fetchpatch {
-    url = "https://github.com/zmwangx/ets/commit/600ec17a9c86ca63cd022d00439cdc4978e2afa9.patch";
-    sha256 = "sha256-SGCISHkWNFubgKkQYx8Vf5/fknNDfPNYkSuw1mMhZaE=";
-  }) ];
-
-  vendorHash = "sha256-+8dXfqOu8XTw2uEx3GAynQSHtzifejZtddr1CdxrupA=";
+  vendorHash = "sha256-XHgdiXdp9aNEAc/Apvb64ExnpywjddWOw1scNKy+ico=";
 
   ldflags = [ "-s" "-w" "-X main.version=v${version}-nixpkgs" ];
 
@@ -35,7 +29,7 @@ buildGoModule rec {
 
   meta = with lib; {
     description = "Command output timestamper";
-    homepage = "https://github.com/zmwangx/ets/";
+    homepage = "https://github.com/gdubicki/ets/";
     license = licenses.mit;
     maintainers = with maintainers; [ cameronfyfe ];
     mainProgram = "ets";
diff --git a/pkgs/tools/misc/fd/default.nix b/pkgs/tools/misc/fd/default.nix
index eddcb4b7784d..f203e4881616 100644
--- a/pkgs/tools/misc/fd/default.nix
+++ b/pkgs/tools/misc/fd/default.nix
@@ -2,16 +2,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "fd";
-  version = "9.0.0";
+  version = "10.1.0";
 
   src = fetchFromGitHub {
     owner = "sharkdp";
     repo = "fd";
     rev = "v${version}";
-    hash = "sha256-xcrvAWbSvUUtbFXyENy3eQimxt5aXzFrHnL6VptyydA=";
+    hash = "sha256-9fL2XV3Vre2uo8Co3tlHYIvpNHNOh5TuvZggkWOxm5A=";
   };
 
-  cargoHash = "sha256-z4PV8k6avaLwo58yJq47WEUJGw3JCW1GZGviBaPTs+8=";
+  cargoHash = "sha256-3TbsPfAn/GcGASc0RCcyAeUiD4RUtvTATdTYhKdBxvo=";
 
   nativeBuildInputs = [ installShellFiles ];
 
diff --git a/pkgs/tools/misc/fend/default.nix b/pkgs/tools/misc/fend/default.nix
index 9b977f6d0d47..2e7c22672330 100644
--- a/pkgs/tools/misc/fend/default.nix
+++ b/pkgs/tools/misc/fend/default.nix
@@ -18,16 +18,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "fend";
-  version = "1.4.6";
+  version = "1.4.8";
 
   src = fetchFromGitHub {
     owner = "printfn";
     repo = "fend";
     rev = "v${version}";
-    hash = "sha256-xqWAL1xMUUL2AtxnZ4oXWmNoks0pL63uqKoNc0Vvw/4=";
+    hash = "sha256-i4h2QYgA1XX+qHOEH07PR3G/0SSA8a413vm9T39TuYQ=";
   };
 
-  cargoHash = "sha256-0ov/uzBEa8Wzw5T0mSMnnmJYucBLUe0Qlwel6pVRorc=";
+  cargoHash = "sha256-EhumvDwXNXB0Vp3qWkJs0y0gEwiy3Z9/3KZ92YDTlqk=";
 
   nativeBuildInputs = [ pandoc installShellFiles pkg-config copyDesktopItems ];
   buildInputs = [ pkg-config openssl ] ++ lib.optionals stdenv.isDarwin [ darwin.apple_sdk.frameworks.Security ];
diff --git a/pkgs/tools/misc/flashrom/default.nix b/pkgs/tools/misc/flashrom/default.nix
index b2b9583db232..190841582a4f 100644
--- a/pkgs/tools/misc/flashrom/default.nix
+++ b/pkgs/tools/misc/flashrom/default.nix
@@ -40,7 +40,7 @@ stdenv.mkDerivation rec {
   meta = with lib; {
     homepage = "https://www.flashrom.org";
     description = "Utility for reading, writing, erasing and verifying flash ROM chips";
-    license = licenses.gpl2;
+    license = licenses.gpl2Plus;
     maintainers = with maintainers; [ fpletz felixsinger ];
     platforms = platforms.all;
     mainProgram = "flashrom";
diff --git a/pkgs/tools/misc/flexoptix-app/default.nix b/pkgs/tools/misc/flexoptix-app/default.nix
index 662193f35328..fa2004ce40ca 100644
--- a/pkgs/tools/misc/flexoptix-app/default.nix
+++ b/pkgs/tools/misc/flexoptix-app/default.nix
@@ -28,10 +28,7 @@ in appimageTools.wrapAppImage {
   inherit pname version;
   src = appimageContents;
 
-  multiArch = false; # no 32bit needed
-  extraPkgs = { pkgs, ... }@args: [
-    pkgs.hidapi
-  ] ++ appimageTools.defaultFhsEnvArgs.multiPkgs args;
+  extraPkgs = pkgs: [ pkgs.hidapi ];
 
   extraInstallCommands = ''
     # Add desktop convencience stuff
diff --git a/pkgs/tools/misc/flowgger/default.nix b/pkgs/tools/misc/flowgger/default.nix
index c9517043adc9..8a37717257eb 100644
--- a/pkgs/tools/misc/flowgger/default.nix
+++ b/pkgs/tools/misc/flowgger/default.nix
@@ -10,14 +10,14 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "flowgger";
-  version = "0.3.1";
+  version = "0.3.2";
 
   src = fetchCrate {
     inherit pname version;
-    hash = "sha256-PRlcfSVfQWt+rQEJjblY7/AMrjhGYO2/G7EX60aGApA=";
+    hash = "sha256-eybahv1A/AIpAXGj6/md8k+b9fu9gSchU16fnAWZP2s=";
   };
 
-  cargoHash = "sha256-hp2LrEVWo0gk95dPROqVcHEEG5N9fWms0mZkY9QILg0=";
+  cargoHash = "sha256-DZGyX3UDqCjB5NwCXcR8b9pXdq8qacd3nkqGp6vYb+U=";
 
   nativeBuildInputs = [
     pkg-config
diff --git a/pkgs/tools/misc/fsearch/default.nix b/pkgs/tools/misc/fsearch/default.nix
index a9e3b6caa352..933daaf3df51 100644
--- a/pkgs/tools/misc/fsearch/default.nix
+++ b/pkgs/tools/misc/fsearch/default.nix
@@ -8,7 +8,7 @@
 , meson
 , ninja
 , pkg-config
-, wrapGAppsHook
+, wrapGAppsHook3
 , gettext
 , icu
 }:
@@ -29,7 +29,7 @@ stdenv.mkDerivation rec {
     meson
     ninja
     pkg-config
-    wrapGAppsHook
+    wrapGAppsHook3
     gettext
   ];
 
diff --git a/pkgs/tools/misc/fsmark/default.nix b/pkgs/tools/misc/fsmark/default.nix
index 2c2aa2c6fef8..340be1a56c2e 100644
--- a/pkgs/tools/misc/fsmark/default.nix
+++ b/pkgs/tools/misc/fsmark/default.nix
@@ -21,7 +21,7 @@ stdenv.mkDerivation rec {
   meta = with lib; {
     description = "Synchronous write workload file system benchmark";
     homepage = "https://sourceforge.net/projects/fsmark/";
-    license = licenses.gpl2;
+    license = licenses.gpl2Plus;
     maintainers = [ maintainers.dezgeg ];
     platforms = platforms.linux;
     mainProgram = "fs_mark";
diff --git a/pkgs/tools/misc/gaphor/default.nix b/pkgs/tools/misc/gaphor/default.nix
index 48f9fa7a7bba..a8afdef6a2bf 100644
--- a/pkgs/tools/misc/gaphor/default.nix
+++ b/pkgs/tools/misc/gaphor/default.nix
@@ -4,7 +4,7 @@
 , copyDesktopItems
 , gobject-introspection
 , poetry-core
-, wrapGAppsHook
+, wrapGAppsHook3
 , gtksourceview4
 , pango
 , gaphas
@@ -34,7 +34,7 @@ buildPythonApplication rec {
     copyDesktopItems
     gobject-introspection
     poetry-core
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
@@ -59,7 +59,7 @@ buildPythonApplication rec {
     desktopName = "Gaphor";
   };
 
-  # Disable automatic wrapGAppsHook to prevent double wrapping
+  # Disable automatic wrapGAppsHook3 to prevent double wrapping
   dontWrapGApps = true;
 
   postInstall = ''
diff --git a/pkgs/tools/misc/geekbench/6.nix b/pkgs/tools/misc/geekbench/6.nix
index 373d93dc193c..d7dd0ad7158b 100644
--- a/pkgs/tools/misc/geekbench/6.nix
+++ b/pkgs/tools/misc/geekbench/6.nix
@@ -10,15 +10,15 @@
 
 let
   inherit (stdenv.hostPlatform.uname) processor;
-  version = "6.2.0";
+  version = "6.3.0";
   sources = {
     "x86_64-linux" = {
       url = "https://cdn.geekbench.com/Geekbench-${version}-Linux.tar.gz";
-      hash = "sha256-QoxSw825qqx1vzhzW9TZg03BPNvgOCokBWARGUhjCGY=";
+      hash = "sha256-AXJ5mXGc1RWnIkB13KtIdt7vKETEXowunzQZciQDnzs=";
     };
     "aarch64-linux" = {
       url = "https://cdn.geekbench.com/Geekbench-${version}-LinuxARMPreview.tar.gz";
-      hash = "sha256-m2uz5Rk34rm9Bx3j5FjFigOIKaj2c4I+uXKzU4cK4D4=";
+      hash = "sha256-fbf01qa9wx3k9j8AEqv38fAM3F9tZOcnpH/wa/9rawQ=";
     };
   };
   geekbench_avx2 = lib.optionalString stdenv.isx86_64 "geekbench_avx2";
@@ -59,7 +59,7 @@ stdenv.mkDerivation {
     homepage = "https://geekbench.com/";
     sourceProvenance = with sourceTypes; [ binaryNativeCode ];
     license = licenses.unfree;
-    maintainers = [ maintainers.michalrus ];
+    maintainers = with maintainers; [ michalrus asininemonkey ];
     platforms = builtins.attrNames sources;
     mainProgram = "geekbench6";
   };
diff --git a/pkgs/tools/misc/geteltorito/default.nix b/pkgs/tools/misc/geteltorito/default.nix
index 5fb2209ee8c1..7bbedde4dac6 100644
--- a/pkgs/tools/misc/geteltorito/default.nix
+++ b/pkgs/tools/misc/geteltorito/default.nix
@@ -42,7 +42,7 @@ stdenv.mkDerivation rec {
     description = "Extract the initial/default boot image from a CD image if existent";
     homepage = "https://userpages.uni-koblenz.de/~krienke/ftp/noarch/geteltorito/";
     maintainers = [ maintainers.Profpatsch ];
-    license = licenses.gpl2;
+    license = licenses.gpl2Only;
     mainProgram = "geteltorito";
   };
 
diff --git a/pkgs/tools/misc/gh-markdown-preview/default.nix b/pkgs/tools/misc/gh-markdown-preview/default.nix
index 68f041dbbf2d..573cd607be41 100644
--- a/pkgs/tools/misc/gh-markdown-preview/default.nix
+++ b/pkgs/tools/misc/gh-markdown-preview/default.nix
@@ -7,13 +7,13 @@
 
 buildGoModule rec {
   pname = "gh-markdown-preview";
-  version = "1.4.2";
+  version = "1.5.0";
 
   src = fetchFromGitHub {
     owner = "yusukebe";
     repo = "gh-markdown-preview";
     rev = "v${version}";
-    hash = "sha256-UBveXL4/3GxxIVjqG0GuTbkGkzXFc/stew2s+dTj9BI=";
+    hash = "sha256-gi6Wza8v4V8PAHO75UycP0CEzvXEtm22hTEWs/dJ+LQ=";
   };
 
   vendorHash = "sha256-O6Q9h5zcYAoKLjuzGu7f7UZY0Y5rL2INqFyJT2QZJ/E=";
diff --git a/pkgs/tools/misc/github-backup/default.nix b/pkgs/tools/misc/github-backup/default.nix
index 4ff25301c8c8..f555ca74d611 100644
--- a/pkgs/tools/misc/github-backup/default.nix
+++ b/pkgs/tools/misc/github-backup/default.nix
@@ -7,12 +7,12 @@
 
 python3.pkgs.buildPythonApplication rec {
   pname = "github-backup";
-  version = "0.45.1";
+  version = "0.45.2";
   pyproject = true;
 
   src = fetchPypi {
     inherit pname version;
-    hash = "sha256-+dQVewMHSF0SnOKmgwc9pmqXAJGLjSqwS9YQHdvEmKo=";
+    hash = "sha256-wn2JRMLfqhhTREeYM+mcs68xlkRWKMlxKXToa83pu2g=";
   };
 
   nativeBuildInputs = with python3.pkgs; [
diff --git a/pkgs/tools/misc/google-cloud-bigtable-tool/default.nix b/pkgs/tools/misc/google-cloud-bigtable-tool/default.nix
index 3c61159bf972..6e26aac5284d 100644
--- a/pkgs/tools/misc/google-cloud-bigtable-tool/default.nix
+++ b/pkgs/tools/misc/google-cloud-bigtable-tool/default.nix
@@ -16,9 +16,9 @@ buildGoModule rec {
 
   vendorHash = "sha256-kwvEfvHs6XF84bB3Ss1307OjId0nh/0Imih1fRFdY0M=";
 
-  preCheck = ''
-    buildFlagsArray+="-short"
-  '';
+  checkFlags = [
+    "-short"
+  ];
 
   meta = with lib; {
     description = "Google Cloud Bigtable Tool";
diff --git a/pkgs/tools/misc/google-cloud-sql-proxy/default.nix b/pkgs/tools/misc/google-cloud-sql-proxy/default.nix
index 1043b4982018..3bf76cc5bf3c 100644
--- a/pkgs/tools/misc/google-cloud-sql-proxy/default.nix
+++ b/pkgs/tools/misc/google-cloud-sql-proxy/default.nix
@@ -18,9 +18,9 @@ buildGo122Module rec {
 
   vendorHash = "sha256-sAVMmDeHXEgQXb/Xi4nXYztXjuykE0TFebkeubMTZ3k=";
 
-  preCheck = ''
-    buildFlagsArray+="-short"
-  '';
+  checkFlags = [
+    "-short"
+  ];
 
   meta = with lib; {
     description = "Utility for ensuring secure connections to Google Cloud SQL instances";
diff --git a/pkgs/tools/misc/goose/default.nix b/pkgs/tools/misc/goose/default.nix
index dcb6acec4d9e..994aa5df6ec5 100644
--- a/pkgs/tools/misc/goose/default.nix
+++ b/pkgs/tools/misc/goose/default.nix
@@ -6,29 +6,31 @@
 
 buildGoModule rec {
   pname = "goose";
-  version = "3.19.2";
+  version = "3.20.0";
 
   src = fetchFromGitHub {
     owner = "pressly";
     repo = pname;
     rev = "v${version}";
-    hash = "sha256-kGa3vZSFQ8Dgndc0qRnFnQwlU2hst6j3UFUXw+tfYR0=";
+    hash = "sha256-DgxFczS2YAnicf8RTMf7gDzCtDyj/zqzrGfeb3YcYzg=";
   };
 
   proxyVendor = true;
-  vendorHash = "sha256-aoBxReKRk7dkFR/fJ5uHDZrJRGutLTU2BhDWCTBN2BA=";
+  vendorHash = "sha256-KzIOylWrsOF5oAuuFKUKVSnSJWq3KWZ3Ot7sryNnjIY=";
 
   # skipping: end-to-end tests require a docker daemon
   postPatch = ''
-    rm -r tests/e2e
     rm -r tests/gomigrations
-    rm -r tests/vertica
   '';
 
+  subPackages = [
+    "cmd/goose"
+  ];
+
   ldflags = [
     "-s"
     "-w"
-    "-X=main.gooseVersion=${version}"
+    "-X=main.version=${version}"
   ];
 
   checkFlags = [
diff --git a/pkgs/tools/misc/goreleaser/default.nix b/pkgs/tools/misc/goreleaser/default.nix
index 7b121ac3f9a7..d1e82f654b85 100644
--- a/pkgs/tools/misc/goreleaser/default.nix
+++ b/pkgs/tools/misc/goreleaser/default.nix
@@ -9,16 +9,16 @@
 }:
 buildGoModule rec {
   pname = "goreleaser";
-  version = "1.25.1";
+  version = "1.26.0";
 
   src = fetchFromGitHub {
     owner = "goreleaser";
     repo = pname;
     rev = "v${version}";
-    hash = "sha256-WYpFSV4dMz6sYNc45iXE/oOTmyZqMqHBZlx+00NZHbU=";
+    hash = "sha256-opc/bCqTZuQaNghQcS5iBMgKBdg8ppw3xlU9JZlHDGk=";
   };
 
-  vendorHash = "sha256-vI/S4QtN72tmBVZ2PPcavotJBkl+bdXO9OFqlOGw1J8=";
+  vendorHash = "sha256-8ZdeOXS5fixazL7jzLYNmff/5SRSgzKvXK95hmOLd/I=";
 
   ldflags =
     [ "-s" "-w" "-X main.version=${version}" "-X main.builtBy=nixpkgs" ];
diff --git a/pkgs/tools/misc/gparted/default.nix b/pkgs/tools/misc/gparted/default.nix
index 7c068656385d..d12babfddfaf 100644
--- a/pkgs/tools/misc/gparted/default.nix
+++ b/pkgs/tools/misc/gparted/default.nix
@@ -1,6 +1,6 @@
 { lib, stdenv, fetchurl, gettext, coreutils, gnused, gnome
 , gnugrep, parted, glib, libuuid, pkg-config, gtkmm3, libxml2
-, gpart, hdparm, procps, util-linux, polkit, wrapGAppsHook, substituteAll
+, gpart, hdparm, procps, util-linux, polkit, wrapGAppsHook3, substituteAll
 , mtools, dosfstools
 }:
 
@@ -28,7 +28,7 @@ stdenv.mkDerivation rec {
   configureFlags = [ "--disable-doc" ];
 
   buildInputs = [ parted glib libuuid gtkmm3 libxml2 polkit.bin gnome.adwaita-icon-theme  ];
-  nativeBuildInputs = [ gettext pkg-config wrapGAppsHook ];
+  nativeBuildInputs = [ gettext pkg-config wrapGAppsHook3 ];
 
   preConfigure = ''
     # For ITS rules
diff --git a/pkgs/tools/misc/gpick/default.nix b/pkgs/tools/misc/gpick/default.nix
index 0d421212a3d4..c21759b00fea 100644
--- a/pkgs/tools/misc/gpick/default.nix
+++ b/pkgs/tools/misc/gpick/default.nix
@@ -1,7 +1,7 @@
 { stdenv
 , fetchFromGitHub
 , cmake
-, wrapGAppsHook
+, wrapGAppsHook3
 , boost
 , pkg-config
 , gtk3
@@ -32,7 +32,7 @@ stdenv.mkDerivation rec {
     })
   ];
 
-  nativeBuildInputs = [ cmake pkg-config wrapGAppsHook ];
+  nativeBuildInputs = [ cmake pkg-config wrapGAppsHook3 ];
   buildInputs = [ boost gtk3 ragel lua ];
 
   meta = with lib; {
diff --git a/pkgs/tools/misc/graylog/5.2.nix b/pkgs/tools/misc/graylog/5.2.nix
index e262d84f3f09..1247214e9753 100644
--- a/pkgs/tools/misc/graylog/5.2.nix
+++ b/pkgs/tools/misc/graylog/5.2.nix
@@ -2,8 +2,8 @@
 let
   buildGraylog = callPackage ./graylog.nix {};
 in buildGraylog {
-  version = "5.2.4";
-  sha256 = "sha256-TbZMRMLpYlg6wrsC+tDEk8sLYJ1nwJum/rL30CEGQcw=";
+  version = "5.2.7";
+  sha256 = "sha256-so9IHX0r3dmj5wLrLtQgrcXk+hu6E8/1d7wJu1XDcVA=";
   maintainers = [ lib.maintainers.f2k1de ];
   license = lib.licenses.sspl;
 }
diff --git a/pkgs/tools/misc/grizzly/default.nix b/pkgs/tools/misc/grizzly/default.nix
index ffe6a4352bc0..ed5c67d95c24 100644
--- a/pkgs/tools/misc/grizzly/default.nix
+++ b/pkgs/tools/misc/grizzly/default.nix
@@ -5,16 +5,16 @@
 
 buildGoModule rec {
   pname = "grizzly";
-  version = "0.4.1";
+  version = "0.4.2";
 
   src = fetchFromGitHub {
     owner = "grafana";
     repo = pname;
     rev = "v${version}";
-    hash = "sha256-IM7NrykF2Fiudijo5q0I/FewvS/rs3lzSpvzc6dl5Ds=";
+    hash = "sha256-UOUBck1GrG3ijUpE3jPaFcC/KtlObaR38u3St8NToTk=";
   };
 
-  vendorHash = "sha256-GrzMfOwNEjVQd1uCijcsfdIDO6UPzuHEDnJExupB9Jg=";
+  vendorHash = "sha256-lioFmaFzqaxN1wnYJaoHA54to1xGZjaLGaqAFIfTaTs=";
 
   subPackages = [ "cmd/grr" ];
 
diff --git a/pkgs/tools/misc/grub4dos/default.nix b/pkgs/tools/misc/grub4dos/default.nix
index f00720af15ec..8b78c29defe7 100644
--- a/pkgs/tools/misc/grub4dos/default.nix
+++ b/pkgs/tools/misc/grub4dos/default.nix
@@ -38,7 +38,7 @@ in stdenv.mkDerivation {
     description = "GRUB for DOS is the dos extension of GRUB";
     maintainers = with maintainers; [ abbradar ];
     platforms = platforms.linux;
-    license = licenses.gpl2;
+    license = licenses.gpl2Plus;
     # Needs a port to modern binutils:
     #   https://github.com/chenall/grub4dos/issues/160
     broken = true;
diff --git a/pkgs/tools/misc/gsmartcontrol/default.nix b/pkgs/tools/misc/gsmartcontrol/default.nix
index a1c163f6784e..2b5878f7a638 100644
--- a/pkgs/tools/misc/gsmartcontrol/default.nix
+++ b/pkgs/tools/misc/gsmartcontrol/default.nix
@@ -1,4 +1,4 @@
-{ fetchurl, lib, stdenv, smartmontools, autoreconfHook, gettext, gtkmm3, pkg-config, wrapGAppsHook, pcre-cpp, gnome }:
+{ fetchurl, lib, stdenv, smartmontools, autoreconfHook, gettext, gtkmm3, pkg-config, wrapGAppsHook3, pcre-cpp, gnome }:
 
 stdenv.mkDerivation rec {
   pname = "gsmartcontrol";
@@ -17,7 +17,7 @@ stdenv.mkDerivation rec {
     substituteInPlace data/org.gsmartcontrol.policy --replace "/usr/sbin" $out/bin
   '';
 
-  nativeBuildInputs = [ autoreconfHook gettext pkg-config wrapGAppsHook ];
+  nativeBuildInputs = [ autoreconfHook gettext pkg-config wrapGAppsHook3 ];
   buildInputs = [ gtkmm3 pcre-cpp gnome.adwaita-icon-theme ];
 
   enableParallelBuilding = true;
diff --git a/pkgs/tools/misc/gtkterm/default.nix b/pkgs/tools/misc/gtkterm/default.nix
index 85636afb9d38..d761cf0644a6 100644
--- a/pkgs/tools/misc/gtkterm/default.nix
+++ b/pkgs/tools/misc/gtkterm/default.nix
@@ -1,21 +1,21 @@
-{ stdenv, lib, fetchFromGitHub, meson, ninja, pkg-config, gtk3, vte, libgudev, wrapGAppsHook, pcre2 }:
+{ stdenv, lib, fetchFromGitHub, meson, ninja, pkg-config, gtk3, vte, libgudev, wrapGAppsHook3, pcre2 }:
 
 stdenv.mkDerivation rec {
   pname = "gtkterm";
-  version = "1.2.1";
+  version = "1.3.0";
 
   src = fetchFromGitHub {
     owner = "Jeija";
     repo = "gtkterm";
     rev = version;
-    sha256 = "sha256-4Z+8fs4VEk2+Ci1X3oUuInylTdIbQ5AiPenFqnyNXvc=";
+    sha256 = "sha256-KYkAHpyDl47LBKb7ZjxPCGw9XuMrqHPyejMhIvYAr68=";
   };
 
   nativeBuildInputs = [
     meson
     ninja
     pkg-config
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
diff --git a/pkgs/tools/misc/gwe/default.nix b/pkgs/tools/misc/gwe/default.nix
index d889230ed228..5f2c29c644d9 100644
--- a/pkgs/tools/misc/gwe/default.nix
+++ b/pkgs/tools/misc/gwe/default.nix
@@ -1,7 +1,7 @@
 { lib
 , stdenv
 , fetchFromGitLab
-, wrapGAppsHook
+, wrapGAppsHook3
 , pkg-config
 , meson
 , ninja
@@ -51,7 +51,7 @@ in stdenv.mkDerivation rec {
   '';
 
   nativeBuildInputs = [
-    wrapGAppsHook
+    wrapGAppsHook3
     pkg-config
     meson
     ninja
diff --git a/pkgs/tools/misc/h5utils/default.nix b/pkgs/tools/misc/h5utils/default.nix
index f0267608d3a9..705ac56f5baf 100644
--- a/pkgs/tools/misc/h5utils/default.nix
+++ b/pkgs/tools/misc/h5utils/default.nix
@@ -32,7 +32,7 @@ stdenv.mkDerivation rec {
     description = "A set of utilities for visualization and conversion of scientific data in the free, portable HDF5 format";
     homepage = "https://github.com/stevengj/h5utils";
     changelog = "https://github.com/NanoComp/h5utils/releases/tag/${version}";
-    license = with licenses; [ mit gpl2 ];
+    license = with licenses; [ mit gpl2Plus ];
     maintainers = with maintainers; [ sfrijters ];
   };
 
diff --git a/pkgs/tools/misc/hakuneko/default.nix b/pkgs/tools/misc/hakuneko/default.nix
index 0359da603ccb..fbc76aa1eb90 100644
--- a/pkgs/tools/misc/hakuneko/default.nix
+++ b/pkgs/tools/misc/hakuneko/default.nix
@@ -6,7 +6,7 @@
 , udev
 , stdenv
 , lib
-, wrapGAppsHook
+, wrapGAppsHook3
 , alsa-lib
 , nss
 , nspr
@@ -48,7 +48,7 @@ stdenv.mkDerivation rec {
     autoPatchelfHook
     dpkg
     makeWrapper
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
diff --git a/pkgs/tools/misc/hashit/default.nix b/pkgs/tools/misc/hashit/default.nix
index a7bcde7ab5fc..ecd7aaf5cdcc 100644
--- a/pkgs/tools/misc/hashit/default.nix
+++ b/pkgs/tools/misc/hashit/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetchFromGitHub, nix-update-script, meson, ninja, pkg-config, vala, pantheon, python3, libgee, gtk3, desktop-file-utils, wrapGAppsHook }:
+{ lib, stdenv, fetchFromGitHub, nix-update-script, meson, ninja, pkg-config, vala, pantheon, python3, libgee, gtk3, desktop-file-utils, wrapGAppsHook3 }:
 
 stdenv.mkDerivation rec {
   pname = "hashit";
@@ -18,7 +18,7 @@ stdenv.mkDerivation rec {
     vala
     pkg-config
     python3
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
diff --git a/pkgs/tools/misc/hdaps-gl/default.nix b/pkgs/tools/misc/hdaps-gl/default.nix
index 1999d9ad0d56..eb8259929e82 100644
--- a/pkgs/tools/misc/hdaps-gl/default.nix
+++ b/pkgs/tools/misc/hdaps-gl/default.nix
@@ -16,7 +16,7 @@ stdenv.mkDerivation rec {
   meta = with lib; {
     description = "GL-based laptop model that rotates in real-time via hdaps";
     homepage = "https://github.com/linux-thinkpad/hdaps-gl";
-    license = licenses.gpl2;
+    license = licenses.gpl2Only;
     platforms = platforms.linux;
     maintainers = [ maintainers.symphorien ];
     mainProgram = "hdaps-gl";
diff --git a/pkgs/tools/misc/heatseeker/default.nix b/pkgs/tools/misc/heatseeker/default.nix
index 24da793445cb..210e184e9d4a 100644
--- a/pkgs/tools/misc/heatseeker/default.nix
+++ b/pkgs/tools/misc/heatseeker/default.nix
@@ -28,7 +28,7 @@ rustPlatform.buildRustPackage rec {
     description = "A general-purpose fuzzy selector";
     homepage = "https://github.com/rschmitt/heatseeker";
     license = licenses.mit;
-    maintainers = [ maintainers.michaelpj ];
+    maintainers = [ ];
     mainProgram = "hs";
     platforms = platforms.unix;
   };
diff --git a/pkgs/tools/misc/hebcal/default.nix b/pkgs/tools/misc/hebcal/default.nix
index 80d52592c742..ef1686c20cb4 100644
--- a/pkgs/tools/misc/hebcal/default.nix
+++ b/pkgs/tools/misc/hebcal/default.nix
@@ -19,7 +19,7 @@ stdenv.mkDerivation rec {
     homepage = "https://hebcal.github.io";
     description = "A perpetual Jewish Calendar";
     longDescription = "Hebcal is a program which prints out the days in the Jewish calendar for a given Gregorian year. Hebcal is fairly flexible in terms of which events in the Jewish calendar it displays.";
-    license = licenses.gpl2;
+    license = licenses.gpl2Plus;
     maintainers = [ maintainers.hhm ];
     platforms = platforms.all;
     mainProgram = "hebcal";
diff --git a/pkgs/tools/misc/html-proofer/Gemfile.lock b/pkgs/tools/misc/html-proofer/Gemfile.lock
index 846b465bfd8c..8f50d842308e 100644
--- a/pkgs/tools/misc/html-proofer/Gemfile.lock
+++ b/pkgs/tools/misc/html-proofer/Gemfile.lock
@@ -22,7 +22,7 @@ GEM
     html-proofer (5.0.8)
       addressable (~> 2.3)
       async (~> 2.1)
-      nokogiri (~> 1.13)
+      nokogiri (~> 1.16.0)
       pdf-reader (~> 2.11)
       rainbow (~> 3.0)
       typhoeus (~> 1.3)
@@ -30,7 +30,7 @@ GEM
       zeitwerk (~> 2.5)
     io-event (1.2.3)
     mini_portile2 (2.8.4)
-    nokogiri (1.15.4)
+    nokogiri (1.16.0)
       mini_portile2 (~> 2.8.2)
       racc (~> 1.4)
     pdf-reader (2.11.0)
diff --git a/pkgs/tools/misc/html-proofer/gemset.nix b/pkgs/tools/misc/html-proofer/gemset.nix
index 45ad23f7ab0a..1485ab4e5062 100644
--- a/pkgs/tools/misc/html-proofer/gemset.nix
+++ b/pkgs/tools/misc/html-proofer/gemset.nix
@@ -140,10 +140,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0k9w2z0953mnjrsji74cshqqp08q7m1r6zhadw1w0g34xzjh3a74";
+      sha256 = "1l8b0i24h4irivyhwy9xmkjbggw86cxkzkiqdqg0jpcp9qc8h4rl";
       type = "gem";
     };
-    version = "1.15.4";
+    version = "1.16.0";
   };
   pdf-reader = {
     dependencies = ["Ascii85" "afm" "hashery" "ruby-rc4" "ttfunk"];
diff --git a/pkgs/tools/misc/hueadm/default.nix b/pkgs/tools/misc/hueadm/default.nix
index 6afa6607129f..30cbaa591cc5 100644
--- a/pkgs/tools/misc/hueadm/default.nix
+++ b/pkgs/tools/misc/hueadm/default.nix
@@ -22,7 +22,7 @@ buildNpmPackage rec {
     description = "Command line management interface to Philips Hue";
     homepage = "https://github.com/bahamas10/hueadm";
     license = lib.licenses.mit;
-    maintainers = [ ];
+    maintainers = with lib.maintainers; [ sigmanificient ];
     mainProgram = "hueadm";
   };
 }
diff --git a/pkgs/tools/misc/hunt/default.nix b/pkgs/tools/misc/hunt/default.nix
index 2c135e028513..6163e8cf3b0d 100644
--- a/pkgs/tools/misc/hunt/default.nix
+++ b/pkgs/tools/misc/hunt/default.nix
@@ -18,7 +18,7 @@ rustPlatform.buildRustPackage rec {
 
   meta = with lib; {
     description = "Simplified Find command made with Rust";
-    homepage = "https://github.com/LyonSyonII/hunt";
+    homepage = "https://github.com/LyonSyonII/hunt-rs";
     license = licenses.mit;
     maintainers = with maintainers; [ dit7ya ];
     mainProgram = "hunt";
diff --git a/pkgs/tools/misc/hwatch/default.nix b/pkgs/tools/misc/hwatch/default.nix
index 6ba928a29d08..afa75fca0cd2 100644
--- a/pkgs/tools/misc/hwatch/default.nix
+++ b/pkgs/tools/misc/hwatch/default.nix
@@ -2,16 +2,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "hwatch";
-  version = "0.3.12";
+  version = "0.3.13";
 
   src = fetchFromGitHub {
     owner = "blacknon";
     repo = pname;
     rev = "refs/tags/${version}";
-    sha256 = "sha256-Klv1VIJv4/R7HvvB6H+WxTeJxQYFqAFU3HC6oafD/90=";
+    sha256 = "sha256-3RFiVDXjPFBMK+f/9s9t3cdIH+R/88Fp5uKbo5p2X+g=";
   };
 
-  cargoHash = "sha256-Aos/QP8tLiKFmAZss19jn5h/murZR2jgTYRYalUONHw=";
+  cargoHash = "sha256-MC0Ch9ai4XmhhRz/9nFYEA3A7kgBv2x9q4yc5IJ7CZ8=";
 
   nativeBuildInputs = [ installShellFiles ];
 
diff --git a/pkgs/tools/misc/infracost/default.nix b/pkgs/tools/misc/infracost/default.nix
index ddec6c3c5d89..51316f969ec1 100644
--- a/pkgs/tools/misc/infracost/default.nix
+++ b/pkgs/tools/misc/infracost/default.nix
@@ -24,15 +24,14 @@ buildGoModule rec {
     # want but also limits the tests
     unset subPackages
 
-    # checkFlags aren't correctly passed through via buildGoModule so we use buildFlagsArray
-    # -short only runs the unit-tests tagged short
-    # move to checkFlags after https://github.com/NixOS/nixpkgs/pull/173702
-    buildFlagsArray+="-short"
-
     # remove tests that require networking
     rm cmd/infracost/{breakdown,diff,hcl,run}_test.go
   '';
 
+  checkFlags = [
+    "-short"
+  ];
+
   postInstall = ''
     export INFRACOST_SKIP_UPDATE_CHECK=true
     installShellCompletion --cmd infracost \
diff --git a/pkgs/tools/misc/ink/default.nix b/pkgs/tools/misc/ink/default.nix
index 30df6e9691fa..6932d04c8d6c 100644
--- a/pkgs/tools/misc/ink/default.nix
+++ b/pkgs/tools/misc/ink/default.nix
@@ -21,7 +21,7 @@ stdenv.mkDerivation rec {
       Ink is a command line tool for checking the ink level of your locally connected printer on a system which runs Linux or FreeBSD. Canon BJNP network printers are supported too.
     '';
     homepage = "https://ink.sourceforge.net/";
-    license = licenses.gpl2;
+    license = licenses.gpl2Only;
     platforms = platforms.linux ++ platforms.freebsd;
     maintainers = with maintainers; [ samb96 ];
     mainProgram = "ink";
diff --git a/pkgs/tools/misc/ipxe/default.nix b/pkgs/tools/misc/ipxe/default.nix
index 293c32b3e6ff..7ad4b0d809f1 100644
--- a/pkgs/tools/misc/ipxe/default.nix
+++ b/pkgs/tools/misc/ipxe/default.nix
@@ -33,7 +33,7 @@ in
 
 stdenv.mkDerivation rec {
   pname = "ipxe";
-  version = "unstable-2024-02-08";
+  version = "1.21.1-unstable-2024-04-17";
 
   nativeBuildInputs = [ gnu-efi mtools openssl perl xorriso xz ] ++ lib.optional stdenv.hostPlatform.isx86 syslinux;
   depsBuildBuild = [ buildPackages.stdenv.cc ];
@@ -43,8 +43,8 @@ stdenv.mkDerivation rec {
   src = fetchFromGitHub {
     owner = "ipxe";
     repo = "ipxe";
-    rev = "a846c4ccfc7db212dff792e081991df17268b4d5";
-    hash = "sha256-4BvAwZ09EZJXBkdkZHLw0qjOqasNaN6RF4wmTfPVTWc=";
+    rev = "d7e58c5a812988c341ec4ad19f79faf067388d58";
+    hash = "sha256-OIisRd2o2zrTqH1Xv3FDhQWDqhKNeGhPkHWyYZzbtTU=";
   };
 
   postPatch = lib.optionalString stdenv.hostPlatform.isAarch64 ''
@@ -101,7 +101,9 @@ stdenv.mkDerivation rec {
 
   enableParallelBuilding = true;
 
-  passthru.updateScript = unstableGitUpdater {};
+  passthru.updateScript = unstableGitUpdater {
+    tagPrefix = "v";
+  };
 
   meta = with lib;
     { description = "Network boot firmware";
diff --git a/pkgs/tools/misc/jfrog-cli/default.nix b/pkgs/tools/misc/jfrog-cli/default.nix
index cc778b6f6692..ac6696bbb7fe 100644
--- a/pkgs/tools/misc/jfrog-cli/default.nix
+++ b/pkgs/tools/misc/jfrog-cli/default.nix
@@ -7,16 +7,16 @@
 
 buildGoModule rec {
   pname = "jfrog-cli";
-  version = "2.56.0";
+  version = "2.56.1";
 
   src = fetchFromGitHub {
     owner = "jfrog";
     repo = "jfrog-cli";
     rev = "refs/tags/v${version}";
-    hash = "sha256-a7zCPyKV9kZ34XxVBYotcMvXUVrieunFpKGBK1Jhvo4=";
+    hash = "sha256-oUICnpVHRNCauWEplz7xH6AdP6CbbYX/Uy/QUPjwGHc=";
   };
 
-  vendorHash = "sha256-q0PXbLTS5Po3xTK+CkU7BtZ6tk1PfH3zVAVK1IbmitY=";
+  vendorHash = "sha256-zQjOOUlqL0Mj2DKHiG9rOfu41SKMO7C99JBJDycXAs4=";
 
   # Upgrade the Go version during the vendoring FOD build because it fails otherwise.
   overrideModAttrs = _: {
diff --git a/pkgs/tools/misc/jugglinglab/default.nix b/pkgs/tools/misc/jugglinglab/default.nix
index 64b91a68d948..ee2f4cbfc7e5 100644
--- a/pkgs/tools/misc/jugglinglab/default.nix
+++ b/pkgs/tools/misc/jugglinglab/default.nix
@@ -3,7 +3,7 @@
 , maven
 , fetchFromGitHub
 , makeWrapper
-, wrapGAppsHook
+, wrapGAppsHook3
 , jre
 }:
 
@@ -38,7 +38,7 @@ maven.buildMavenPackage rec {
 
   nativeBuildInputs = [
     makeWrapper
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   dontWrapGApps = true;
diff --git a/pkgs/tools/misc/keychain/default.nix b/pkgs/tools/misc/keychain/default.nix
index edb0bc34e776..bd993c34bd2c 100644
--- a/pkgs/tools/misc/keychain/default.nix
+++ b/pkgs/tools/misc/keychain/default.nix
@@ -51,7 +51,7 @@ stdenv.mkDerivation rec {
       process, allowing your scripts to take advantage of key-based logins.
     '';
     homepage = "https://www.funtoo.org/Keychain";
-    license = licenses.gpl2;
+    license = licenses.gpl2Only;
     platforms = platforms.unix;
     maintainers = with maintainers; [ sigma ];
     mainProgram = "keychain";
diff --git a/pkgs/tools/misc/kodi-cli/default.nix b/pkgs/tools/misc/kodi-cli/default.nix
index 10b9cea73d76..fc2aa1400758 100644
--- a/pkgs/tools/misc/kodi-cli/default.nix
+++ b/pkgs/tools/misc/kodi-cli/default.nix
@@ -24,7 +24,7 @@ stdenv.mkDerivation rec {
   meta = with lib; {
     homepage = "https://github.com/nawar/kodi-cli";
     description = "Kodi/XBMC bash script to send Kodi commands using JSON RPC. It also allows sending YouTube videos to Kodi";
-    license = licenses.gpl2;
+    license = licenses.gpl2Only;
     platforms = platforms.unix;
     maintainers = [ maintainers.pstn ];
  };
diff --git a/pkgs/tools/misc/kronometer/default.nix b/pkgs/tools/misc/kronometer/default.nix
index 06fafedf42ef..6e303ddfc983 100644
--- a/pkgs/tools/misc/kronometer/default.nix
+++ b/pkgs/tools/misc/kronometer/default.nix
@@ -16,7 +16,7 @@ mkDerivation rec {
   meta = with lib; {
     homepage = "https://kde.org/applications/utilities/kronometer/";
     description = "A stopwatch application";
-    license = licenses.gpl2;
+    license = licenses.gpl2Only;
     maintainers = with maintainers; [ peterhoeg ];
     mainProgram = "kronometer";
   };
diff --git a/pkgs/tools/misc/latex2html/default.nix b/pkgs/tools/misc/latex2html/default.nix
index f3cca8872b23..9f0aed7fb424 100644
--- a/pkgs/tools/misc/latex2html/default.nix
+++ b/pkgs/tools/misc/latex2html/default.nix
@@ -44,7 +44,7 @@ stdenv.mkDerivation rec {
 
     homepage = "https://www.ctan.org/pkg/latex2html";
 
-    license = licenses.gpl2;
+    license = licenses.gpl2Only;
     platforms = with platforms; linux ++ darwin;
     maintainers = with maintainers; [ yurrriq ];
   };
diff --git a/pkgs/tools/misc/lbdb/default.nix b/pkgs/tools/misc/lbdb/default.nix
index 43dab4772d5f..44f0149cbb7c 100644
--- a/pkgs/tools/misc/lbdb/default.nix
+++ b/pkgs/tools/misc/lbdb/default.nix
@@ -56,7 +56,7 @@ stdenv.mkDerivation rec {
   meta = with lib; {
     homepage = "https://www.spinnaker.de/lbdb/";
     description = "The Little Brother's Database";
-    license = licenses.gpl2;
+    license = licenses.gpl2Plus;
     maintainers = with maintainers; [ kaiha bfortz ];
     platforms = platforms.all;
   };
diff --git a/pkgs/tools/misc/lcdf-typetools/default.nix b/pkgs/tools/misc/lcdf-typetools/default.nix
index eaa2ce01347b..feb2563735b4 100644
--- a/pkgs/tools/misc/lcdf-typetools/default.nix
+++ b/pkgs/tools/misc/lcdf-typetools/default.nix
@@ -18,7 +18,7 @@ stdenv.mkDerivation rec {
   meta = with lib; {
     description = "Utilities for manipulating OpenType, PostScript Type 1, and Multiple Master fonts";
     homepage = "https://www.lcdf.org/type";
-    license = licenses.gpl2;
+    license = licenses.gpl2Only;
     maintainers = with maintainers; [ dtzWill ];
   };
 }
diff --git a/pkgs/tools/misc/ldapvi/default.nix b/pkgs/tools/misc/ldapvi/default.nix
index 4be3b9e9024c..03a01da3e5ef 100644
--- a/pkgs/tools/misc/ldapvi/default.nix
+++ b/pkgs/tools/misc/ldapvi/default.nix
@@ -26,7 +26,7 @@ stdenv.mkDerivation {
       can update LDAP entries with a text editor.
     '';
     homepage = "http://www.lichteblau.com/ldapvi/";
-    license = licenses.gpl2;
+    license = licenses.gpl2Plus;
     maintainers = with maintainers; [ ];
     platforms = lib.platforms.linux;
     mainProgram = "ldapvi";
diff --git a/pkgs/tools/misc/lektor/default.nix b/pkgs/tools/misc/lektor/default.nix
index aef55ffb9b1f..129e5e41851c 100644
--- a/pkgs/tools/misc/lektor/default.nix
+++ b/pkgs/tools/misc/lektor/default.nix
@@ -23,19 +23,23 @@ let
 in
 python.pkgs.buildPythonApplication rec {
   pname = "lektor";
-  version = "3.4.0b8";
+  version = "3.4.0b12";
   format = "pyproject";
 
   src = fetchFromGitHub {
     owner = "lektor";
     repo = pname;
     rev = "refs/tags/v${version}";
-    hash = "sha256-FtmRW4AS11zAX2jvGY8XTsPrN3mhHkIWoFY7sXmqG/U=";
+    # fix for case-insensitive filesystems
+    postFetch = ''
+      rm -f $out/tests/demo-project/content/icc-profile-test/{LICENSE,license}.txt
+    '';
+    hash = "sha256-y0/fYuiIB/O5tsYKjzOPnCafOIZCn4Z5OITPMcnHd/M=";
   };
 
   npmDeps = fetchNpmDeps {
-    src = "${src}/frontend";
-    hash = "sha256-Z7LP9rrVSzKoLITUarsnRbrhIw7W7TZSZUgV/OT+m0M=";
+    src = "${src}/${npmRoot}";
+    hash = "sha256-LXe5/u4nAGig8RSu6r8Qsr3p3Od8eoMxukW8Z4HkJ44=";
   };
 
   npmRoot = "frontend";
@@ -50,8 +54,6 @@ python.pkgs.buildPythonApplication rec {
   propagatedBuildInputs = with python.pkgs; [
     babel
     click
-    exifread
-    filetype
     flask
     inifile
     jinja2
@@ -71,11 +73,6 @@ python.pkgs.buildPythonApplication rec {
     pytest-click
     pytest-mock
     pytestCheckHook
-    pythonRelaxDepsHook
-  ];
-
-  pythonRelaxDeps = [
-    "werkzeug"
   ];
 
   postInstall = ''
@@ -90,16 +87,18 @@ python.pkgs.buildPythonApplication rec {
     # Tests require network access
     "test_path_installed_plugin_is_none"
     "test_VirtualEnv_run_pip_install"
-    # expects FHS paths
-    "test_VirtualEnv_executable"
   ];
 
-  meta = with lib; {
+  postCheck = ''
+    make test-js
+  '';
+
+  meta = {
     description = "A static content management system";
     homepage = "https://www.getlektor.com/";
     changelog = "https://github.com/lektor/lektor/blob/v${version}/CHANGES.md";
-    license = licenses.bsd0;
+    license = lib.licenses.bsd3;
     mainProgram = "lektor";
-    maintainers = with maintainers; [ ];
+    maintainers = [ ];
   };
 }
diff --git a/pkgs/tools/misc/lesspipe/default.nix b/pkgs/tools/misc/lesspipe/default.nix
index 5bc3f97c3c78..9922573d3e93 100644
--- a/pkgs/tools/misc/lesspipe/default.nix
+++ b/pkgs/tools/misc/lesspipe/default.nix
@@ -122,7 +122,7 @@ stdenv.mkDerivation rec {
     '';
     homepage = "https://github.com/wofr06/lesspipe";
     platforms = platforms.all;
-    license = licenses.gpl2;
+    license = licenses.gpl2Only;
     maintainers = [ maintainers.martijnvermaat ];
   };
 }
diff --git a/pkgs/tools/misc/limitcpu/default.nix b/pkgs/tools/misc/limitcpu/default.nix
index 830eed9d94ae..f06bd5ff16a9 100644
--- a/pkgs/tools/misc/limitcpu/default.nix
+++ b/pkgs/tools/misc/limitcpu/default.nix
@@ -21,7 +21,7 @@ stdenv.mkDerivation rec {
     homepage = "https://limitcpu.sourceforge.net/";
     description = "A tool to throttle the CPU usage of programs";
     platforms = with platforms; linux ++ freebsd;
-    license = licenses.gpl2;
+    license = licenses.gpl2Only;
     maintainers = [maintainers.rycee];
     mainProgram = "cpulimit";
   };
diff --git a/pkgs/tools/misc/linuxquota/default.nix b/pkgs/tools/misc/linuxquota/default.nix
index b5fc42be82dc..65e5646e6a7d 100644
--- a/pkgs/tools/misc/linuxquota/default.nix
+++ b/pkgs/tools/misc/linuxquota/default.nix
@@ -17,7 +17,7 @@ stdenv.mkDerivation rec {
   meta = with lib; {
     description = "Tools to manage kernel-level quotas in Linux";
     homepage = "https://sourceforge.net/projects/linuxquota/";
-    license = licenses.gpl2; # With some files being BSD as an exception
+    license = licenses.gpl2Plus; # With some files being BSD as an exception
     platforms = platforms.linux;
     maintainers = [ maintainers.dezgeg ];
   };
diff --git a/pkgs/tools/misc/loadlibrary/default.nix b/pkgs/tools/misc/loadlibrary/default.nix
index f919facf21b4..b07b62624f0a 100644
--- a/pkgs/tools/misc/loadlibrary/default.nix
+++ b/pkgs/tools/misc/loadlibrary/default.nix
@@ -26,7 +26,7 @@ stdenv_32bit.mkDerivation rec {
     description = "Porting Windows Dynamic Link Libraries to Linux";
     platforms = platforms.linux;
     maintainers = [ maintainers.eleanor ];
-    license = licenses.gpl2;
+    license = licenses.gpl2Plus;
     mainProgram = "mpclient";
   };
 }
diff --git a/pkgs/tools/misc/lrzsz/default.nix b/pkgs/tools/misc/lrzsz/default.nix
index 867e492b33e2..137d27ae1bd0 100644
--- a/pkgs/tools/misc/lrzsz/default.nix
+++ b/pkgs/tools/misc/lrzsz/default.nix
@@ -30,7 +30,7 @@ stdenv.mkDerivation rec {
   meta = with lib; {
     homepage = "https://ohse.de/uwe/software/lrzsz.html";
     description = "Communication package providing the XMODEM, YMODEM ZMODEM file transfer protocols";
-    license = licenses.gpl2;
+    license = licenses.gpl2Plus;
     platforms = platforms.unix;
   };
 }
diff --git a/pkgs/tools/misc/makebootfat/default.nix b/pkgs/tools/misc/makebootfat/default.nix
index b2e93bb140ad..7fcd15c53284 100644
--- a/pkgs/tools/misc/makebootfat/default.nix
+++ b/pkgs/tools/misc/makebootfat/default.nix
@@ -12,7 +12,7 @@ stdenv.mkDerivation rec {
   meta = with lib; {
     description = "Create bootable USB disks using the FAT filesystem and syslinux";
     homepage = "http://advancemame.sourceforge.net/boot-readme.html";
-    license = licenses.gpl2;
+    license = licenses.gpl2Plus;
     maintainers = [ maintainers.ehmry ];
     platforms = platforms.linux;
     mainProgram = "makebootfat";
diff --git a/pkgs/tools/misc/maker-panel/default.nix b/pkgs/tools/misc/maker-panel/default.nix
index 12a5d46547a2..7fc5ec9f3c77 100644
--- a/pkgs/tools/misc/maker-panel/default.nix
+++ b/pkgs/tools/misc/maker-panel/default.nix
@@ -16,7 +16,9 @@ rustPlatform.buildRustPackage rec {
     sha256 = "0dlsy0c46781sb652kp80pvga7pzx6xla64axir92fcgg8k803bi";
   };
 
-  cargoSha256 = "1ar62dn0khlbm47chakrsrxd1y76gpq0sql4g9j7dqqrvkavgd7w";
+  cargoHash = "sha256-Ygya/9keRyIQyjrO6medtcXww9LMG3ne6I/8q35lJPo=";
+
+  cargoPatches = [ ./update-gerber-types-to-0.3.patch ];
 
   nativeBuildInputs = [ go-md2man installShellFiles ];
 
diff --git a/pkgs/tools/misc/maker-panel/update-gerber-types-to-0.3.patch b/pkgs/tools/misc/maker-panel/update-gerber-types-to-0.3.patch
new file mode 100644
index 000000000000..60b22d7d69e1
--- /dev/null
+++ b/pkgs/tools/misc/maker-panel/update-gerber-types-to-0.3.patch
@@ -0,0 +1,109 @@
+From e616648213b75f60703bd68e028f0af78199a565 Mon Sep 17 00:00:00 2001
+From: Leah Amelia Chen <hi@pluie.me>
+Date: Mon, 6 May 2024 10:43:56 +0200
+Subject: [PATCH] Update gerber-types to 0.3.0
+
+Required to update num-bigint to ^0.3.3, in order to compile on modern
+Rust versions with a native `div_ceil` on unsigned integers.
+---
+ Cargo.lock | 26 ++++++++++++++++----------
+ Cargo.toml |  2 +-
+ 2 files changed, 17 insertions(+), 11 deletions(-)
+
+diff --git a/Cargo.lock b/Cargo.lock
+index 1b15393..41cd500 100644
+--- a/Cargo.lock
++++ b/Cargo.lock
+@@ -387,7 +387,7 @@ dependencies = [
+  "log",
+  "memmap2",
+  "ttf-parser",
+- "uuid",
++ "uuid 0.8.2",
+ ]
+
+ [[package]]
+@@ -471,15 +471,15 @@ dependencies = [
+
+ [[package]]
+ name = "gerber-types"
+-version = "0.2.0"
++version = "0.3.0"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "c7badd25c55b207eb6607600b73293d9627587b2dc0608031aa8de50e63810d3"
++checksum = "aecf78a269d7b4f73953f30174b18f52c1bb44f7d58f4d830a76c0ea023ad8bc"
+ dependencies = [
+  "chrono",
+  "conv",
+  "num-rational",
+  "thiserror",
+- "uuid",
++ "uuid 1.8.0",
+ ]
+
+ [[package]]
+@@ -780,9 +780,9 @@ dependencies = [
+
+ [[package]]
+ name = "num-bigint"
+-version = "0.3.2"
++version = "0.4.4"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "7d0a3d5e207573f948a9e5376662aa743a2ea13f7c50a554d7af443a73fbfeba"
++checksum = "608e7659b5c3d7cba262d894801b9ec9d00de989e8a82bd4bef91d08da45cdc0"
+ dependencies = [
+  "autocfg",
+  "num-integer",
+@@ -801,9 +801,9 @@ dependencies = [
+
+ [[package]]
+ name = "num-rational"
+-version = "0.3.2"
++version = "0.4.1"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "12ac428b1cb17fce6f731001d307d351ec70a6d202fc2e60f7d4c5e42d8f4f07"
++checksum = "0638a1c9d0a3c0914158145bc76cff373a75a627e6ecbfb71cbe6f453a5a19b0"
+ dependencies = [
+  "autocfg",
+  "num-bigint",
+@@ -813,9 +813,9 @@ dependencies = [
+
+ [[package]]
+ name = "num-traits"
+-version = "0.2.14"
++version = "0.2.19"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "9a64b1ec5cda2586e284722486d802acf1f7dbdc623e2bfc57e65ca1cd099290"
++checksum = "071dfc062690e90b734c0b2273ce72ad0ffa95f0c74596bc250dcfd960262841"
+ dependencies = [
+  "autocfg",
+ ]
+@@ -1379,6 +1379,12 @@ dependencies = [
+  "getrandom 0.2.2",
+ ]
+
++[[package]]
++name = "uuid"
++version = "1.8.0"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "a183cf7feeba97b4dd1c0d46788634f6221d87fa961b305bed08c851829efcc0"
++
+ [[package]]
+ name = "vec_map"
+ version = "0.8.2"
+diff --git a/Cargo.toml b/Cargo.toml
+index 2f9e8ea..09f0410 100644
+--- a/Cargo.toml
++++ b/Cargo.toml
+@@ -13,7 +13,7 @@ geo-booleanop = "0.3.2"
+ geo = "0.16"
+ usvg = { version = "0.12", default-features = false }
+ resvg = { version = "0.12", default-features = false }
+-gerber-types = "0.2"
++gerber-types = "0.3"
+ #{ git = "https://github.com/twitchyliquid64/gerber-types-rs", rev = "e927ed2ff68d9e8629dbc36d5f1e5626da472376" }
+ structopt = "0.3"
+ zip = { version = "0.5", default-features = false }
+--
+2.44.0
+
diff --git a/pkgs/tools/misc/man-db/default.nix b/pkgs/tools/misc/man-db/default.nix
index 8e2365f475d2..59450f5c360e 100644
--- a/pkgs/tools/misc/man-db/default.nix
+++ b/pkgs/tools/misc/man-db/default.nix
@@ -90,7 +90,7 @@ stdenv.mkDerivation rec {
   meta = with lib; {
     homepage = "http://man-db.nongnu.org";
     description = "An implementation of the standard Unix documentation system accessed using the man command";
-    license = licenses.gpl2;
+    license = licenses.gpl2Plus;
     platforms = lib.platforms.unix;
     mainProgram = "man";
   };
diff --git a/pkgs/tools/misc/massren/default.nix b/pkgs/tools/misc/massren/default.nix
index 763c3a2ae370..a1f1e7027028 100644
--- a/pkgs/tools/misc/massren/default.nix
+++ b/pkgs/tools/misc/massren/default.nix
@@ -23,7 +23,7 @@ buildGoModule rec {
 
   ldflags = [ "-s" "-w" ];
 
-  preCheck =
+  checkFlags =
     let
       skippedTests = [
         # Possible error about github.com/mattn/go-sqlite3
@@ -31,9 +31,7 @@ buildGoModule rec {
         "Test_processFileActions"
       ];
     in
-    ''
-      buildFlagsArray+=("-run" "[^(${builtins.concatStringsSep "|" skippedTests})]")
-    '';
+    [ "-skip=^${builtins.concatStringsSep "$|^" skippedTests}$" ];
 
   meta = with lib; {
     description = "Easily rename multiple files using your text editor";
diff --git a/pkgs/tools/misc/mcfly/default.nix b/pkgs/tools/misc/mcfly/default.nix
index 675639a03294..f9b6e634fd72 100644
--- a/pkgs/tools/misc/mcfly/default.nix
+++ b/pkgs/tools/misc/mcfly/default.nix
@@ -2,13 +2,13 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "mcfly";
-  version = "0.8.4";
+  version = "0.8.5";
 
   src = fetchFromGitHub {
     owner = "cantino";
     repo = "mcfly";
     rev = "v${version}";
-    hash = "sha256-beoXLTy3XikdZBS0Lh3cugHflNJ51PbqsCE3xtCHpj0=";
+    hash = "sha256-vzGZzZy3VBntsmBcb+APEQTWoz4rsxWAiiInj+E6Xd0=";
   };
 
   postPatch = ''
@@ -17,7 +17,7 @@ rustPlatform.buildRustPackage rec {
     substituteInPlace mcfly.fish --replace '(command which mcfly)'  '${placeholder "out"}/bin/mcfly'
   '';
 
-  cargoHash = "sha256-wWYpDU6oXT+sDCzX8VWJ6GfNPOi7T02LK0JKcWHFGi8=";
+  cargoHash = "sha256-XASDPF21ZlVTLa0n5MAsm9FZz+ar9KRiPacsx0bX7OA=";
 
   meta = with lib; {
     homepage = "https://github.com/cantino/mcfly";
diff --git a/pkgs/tools/misc/mdbtools/default.nix b/pkgs/tools/misc/mdbtools/default.nix
index 327b58d8d78b..05299e60845a 100644
--- a/pkgs/tools/misc/mdbtools/default.nix
+++ b/pkgs/tools/misc/mdbtools/default.nix
@@ -28,7 +28,7 @@ stdenv.mkDerivation rec {
 
   meta = with lib; {
     description = ".mdb (MS Access) format tools";
-    license = with licenses; [ gpl2 lgpl2 ];
+    license = with licenses; [ gpl2Plus lgpl2 ];
     maintainers = with maintainers; [ ];
     platforms = platforms.unix;
     inherit (src.meta) homepage;
diff --git a/pkgs/tools/misc/memtest86+/default.nix b/pkgs/tools/misc/memtest86+/default.nix
index 297ef5dff041..520b0a98c201 100644
--- a/pkgs/tools/misc/memtest86+/default.nix
+++ b/pkgs/tools/misc/memtest86+/default.nix
@@ -29,7 +29,7 @@ stdenv.mkDerivation (finalAttrs: {
   meta = {
     homepage = "https://www.memtest.org/";
     description = "A tool to detect memory errors";
-    license = lib.licenses.gpl2;
+    license = lib.licenses.gpl2Only;
     platforms = [ "x86_64-linux" "i686-linux" ];
     maintainers = [ lib.maintainers.LunNova ];
   };
diff --git a/pkgs/tools/misc/minicom/default.nix b/pkgs/tools/misc/minicom/default.nix
index 361909ebddf2..50043a132b14 100644
--- a/pkgs/tools/misc/minicom/default.nix
+++ b/pkgs/tools/misc/minicom/default.nix
@@ -51,7 +51,7 @@ stdenv.mkDerivation rec {
   meta = with lib; {
     description = "Modem control and terminal emulation program";
     homepage = "https://salsa.debian.org/minicom-team/minicom";
-    license = licenses.gpl2;
+    license = licenses.gpl2Plus;
     longDescription = ''
       Minicom is a menu driven communications program. It emulates ANSI
       and VT102 terminals. It has a dialing directory and auto zmodem
diff --git a/pkgs/tools/misc/minipro/default.nix b/pkgs/tools/misc/minipro/default.nix
index 870c4706f882..13bb93cb4fbe 100644
--- a/pkgs/tools/misc/minipro/default.nix
+++ b/pkgs/tools/misc/minipro/default.nix
@@ -7,13 +7,13 @@
 
 stdenv.mkDerivation rec {
   pname = "minipro";
-  version = "0.6";
+  version = "0.7";
 
   src = fetchFromGitLab {
     owner = "DavidGriffith";
     repo = "minipro";
     rev = version;
-    sha256 = "sha256-6i4PYzSm6lcO/Nb6n3holrNe4TtAnG2o81ZIMAIGqOE=";
+    hash = "sha256-suMGR1vgM2tXsPHInZ6HEDKhDSPlC1ss+wCgbION/rE=";
   };
 
   nativeBuildInputs = [ pkg-config ];
@@ -34,5 +34,6 @@ stdenv.mkDerivation rec {
     license = licenses.gpl3Plus;
     maintainers = [ maintainers.bmwalters ];
     mainProgram = "minipro";
+    platforms = platforms.unix;
   };
 }
diff --git a/pkgs/tools/misc/mise/default.nix b/pkgs/tools/misc/mise/default.nix
index 280b7adde970..5c24e8314ce1 100644
--- a/pkgs/tools/misc/mise/default.nix
+++ b/pkgs/tools/misc/mise/default.nix
@@ -17,13 +17,13 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "mise";
-  version = "2024.4.8";
+  version = "2024.5.9";
 
   src = fetchFromGitHub {
     owner = "jdx";
     repo = "mise";
     rev = "v${version}";
-    hash = "sha256-bIw7j7KPHlgIucV/onvp92k0OlNgaxqiVq/Cnj0kIuQ=";
+    hash = "sha256-vmY+uI/NqMCLJwJaQU+aDppmn5OSLPUIbeqCSlN8Xb0=";
 
     # registry is not needed for compilation nor for tests.
     # contains files with the same name but different case, which cause problems with hash on darwin
@@ -32,7 +32,7 @@ rustPlatform.buildRustPackage rec {
     '';
   };
 
-  cargoHash = "sha256-yMpU39SU4Ut7vUQdzkBjhf8p8yCU350HMYKGm5CCado=";
+  cargoHash = "sha256-7kcs1vOM68uKjMrRn8jGI6mgXd90TeMUeYWnAGl8sgE=";
 
   nativeBuildInputs = [ installShellFiles pkg-config ];
   buildInputs = [ openssl ] ++ lib.optionals stdenv.isDarwin [ Security SystemConfiguration ];
diff --git a/pkgs/tools/misc/mlocate/default.nix b/pkgs/tools/misc/mlocate/default.nix
index c9253be930af..bf8899b4003e 100644
--- a/pkgs/tools/misc/mlocate/default.nix
+++ b/pkgs/tools/misc/mlocate/default.nix
@@ -16,7 +16,7 @@ stdenv.mkDerivation rec {
   meta = with lib; {
     description = "Merging locate is an utility to index and quickly search for files";
     homepage = "https://pagure.io/mlocate";
-    license = licenses.gpl2;
+    license = licenses.gpl2Only;
     platforms = platforms.linux;
     maintainers = with maintainers; [ ];
   };
diff --git a/pkgs/tools/misc/moar/default.nix b/pkgs/tools/misc/moar/default.nix
index c99c394f100a..919609a2cb3e 100644
--- a/pkgs/tools/misc/moar/default.nix
+++ b/pkgs/tools/misc/moar/default.nix
@@ -2,13 +2,13 @@
 
 buildGoModule rec {
   pname = "moar";
-  version = "1.23.11";
+  version = "1.23.14";
 
   src = fetchFromGitHub {
     owner = "walles";
     repo = pname;
     rev = "v${version}";
-    hash = "sha256-dKsDvtFs1/WToqpfW84dxDAHRN13TUnZKKk26h3pQ18=";
+    hash = "sha256-Ss4xblv7F3fco1qUXkzhUWEDnyE/bdXv6Gs8cN9HWZw=";
   };
 
   vendorHash = "sha256-1u/2OlMX2FuZaxWnpU4n5r/4xKe+rK++GoCJiSq/BdE=";
diff --git a/pkgs/tools/misc/mongodb-compass/default.nix b/pkgs/tools/misc/mongodb-compass/default.nix
index e0c1097d183f..c89018cf03a4 100644
--- a/pkgs/tools/misc/mongodb-compass/default.nix
+++ b/pkgs/tools/misc/mongodb-compass/default.nix
@@ -28,12 +28,12 @@ nss,
 pango,
 stdenv,
 systemd,
-wrapGAppsHook,
+wrapGAppsHook3,
 xorg,
 }:
 
 let
-  version = "1.42.5";
+  version = "1.43.0";
 
   rpath = lib.makeLibraryPath [
     alsa-lib
@@ -82,7 +82,7 @@ let
     if stdenv.hostPlatform.system == "x86_64-linux" then
       fetchurl {
         url = "https://downloads.mongodb.com/compass/mongodb-compass_${version}_amd64.deb";
-        sha256 = "sha256-46JQXC2Ydq37TomtQdnvk8DwSs8aCfozxqUaEO6hmxo=";
+        sha256 = "sha256-hzPhF0NGwv+Lm+q5SoS8qv10UmuKf4RarGMkEeCxp9w=";
       }
     else
       throw "MongoDB compass is not supported on ${stdenv.hostPlatform.system}";
@@ -95,7 +95,7 @@ in stdenv.mkDerivation {
 
   inherit src;
 
-  buildInputs = [ dpkg wrapGAppsHook gtk3 ];
+  buildInputs = [ dpkg wrapGAppsHook3 gtk3 ];
   dontUnpack = true;
 
   buildCommand = ''
diff --git a/pkgs/tools/misc/most/default.nix b/pkgs/tools/misc/most/default.nix
index 87280b9f295e..dd94f1fed45f 100644
--- a/pkgs/tools/misc/most/default.nix
+++ b/pkgs/tools/misc/most/default.nix
@@ -36,7 +36,7 @@ stdenv.mkDerivation rec {
       windows and can scroll left and right. Why settle for less?
     '';
     homepage = "https://www.jedsoft.org/most/index.html";
-    license = licenses.gpl2;
+    license = licenses.gpl2Plus;
     platforms = platforms.unix;
     mainProgram = "most";
   };
diff --git a/pkgs/tools/misc/mstflint/default.nix b/pkgs/tools/misc/mstflint/default.nix
index c4c99da85e18..16b46002a301 100644
--- a/pkgs/tools/misc/mstflint/default.nix
+++ b/pkgs/tools/misc/mstflint/default.nix
@@ -26,22 +26,13 @@
 
 stdenv.mkDerivation rec {
   pname = "mstflint";
-  version = "4.26.0-1";
+  version = "4.28.0-1";
 
   src = fetchurl {
     url = "https://github.com/Mellanox/mstflint/releases/download/v${version}/mstflint-${version}.tar.gz";
-    hash = "sha256-P8XACcz6d8UTOhFFeTijfFOthBqnUghGlDj9K145sZ8=";
+    hash = "sha256-zvCDc/9wAqT3XBI9A5kOprnnm52Ek8oGe2Je3dKHti0=";
   };
 
-  patches = [
-    # needed to introduce this with GCC 13. Remove, when https://github.com/Mellanox/mstflint/pull/916 is upstream.
-    (fetchpatch {
-      name = "elf.patch";
-      url = "https://patch-diff.githubusercontent.com/raw/Mellanox/mstflint/pull/916.patch";
-      hash = "sha256-quBdmiuzwThu4MkAaT74eJDlZwIcUZMrLZa8OIcO96w=";
-    })
-  ];
-
   nativeBuildInputs = [
     autoconf
     automake
@@ -121,7 +112,7 @@ stdenv.mkDerivation rec {
   meta = with lib; {
     description = "Open source version of Mellanox Firmware Tools (MFT)";
     homepage = "https://github.com/Mellanox/mstflint";
-    license = with licenses; [ gpl2 bsd2 ];
+    license = with licenses; [ gpl2Only bsd2 ];
     maintainers = with maintainers; [ thillux ];
     platforms = platforms.linux;
   };
diff --git a/pkgs/tools/misc/nagstamon/default.nix b/pkgs/tools/misc/nagstamon/default.nix
index e9f76dbf22d9..eb80c03bec91 100644
--- a/pkgs/tools/misc/nagstamon/default.nix
+++ b/pkgs/tools/misc/nagstamon/default.nix
@@ -18,7 +18,7 @@ pythonPackages.buildPythonApplication rec {
   meta = with lib; {
     description = "A status monitor for the desktop";
     homepage = "https://nagstamon.ifw-dresden.de/";
-    license = licenses.gpl2;
+    license = licenses.gpl2Plus;
     maintainers = with maintainers; [ pSub ];
     # fails to install with:
     # TypeError: cannot unpack non-iterable bool object
diff --git a/pkgs/tools/misc/nautilus-open-any-terminal/default.nix b/pkgs/tools/misc/nautilus-open-any-terminal/default.nix
index b200731ab8f2..45716202878f 100644
--- a/pkgs/tools/misc/nautilus-open-any-terminal/default.nix
+++ b/pkgs/tools/misc/nautilus-open-any-terminal/default.nix
@@ -9,7 +9,7 @@
 , gsettings-desktop-schemas
 , gtk3
 , python3
-, wrapGAppsHook
+, wrapGAppsHook3
 }:
 
 python3.pkgs.buildPythonPackage rec {
@@ -30,7 +30,7 @@ python3.pkgs.buildPythonPackage rec {
     glib
     gobject-introspection
     pkg-config
-    wrapGAppsHook
+    wrapGAppsHook3
     python3.pkgs.setuptools
   ];
 
diff --git a/pkgs/tools/misc/notify-desktop/default.nix b/pkgs/tools/misc/notify-desktop/default.nix
index 0265e5dd8974..e1118022edff 100644
--- a/pkgs/tools/misc/notify-desktop/default.nix
+++ b/pkgs/tools/misc/notify-desktop/default.nix
@@ -27,7 +27,7 @@ stdenv.mkDerivation {
       It also does not use any external dependencies (except from libdbus of course).
     '';
     homepage = "https://github.com/nowrep/notify-desktop";
-    license = licenses.gpl2;
+    license = licenses.gpl2Plus;
     platforms = platforms.unix;
     maintainers = with maintainers; [ ylwghst ];
     mainProgram = "notify-desktop";
diff --git a/pkgs/tools/misc/ntfy-sh/default.nix b/pkgs/tools/misc/ntfy-sh/default.nix
index cf429da9cad0..439707e5b014 100644
--- a/pkgs/tools/misc/ntfy-sh/default.nix
+++ b/pkgs/tools/misc/ntfy-sh/default.nix
@@ -5,21 +5,21 @@
 
 buildGoModule rec {
   pname = "ntfy-sh";
-  version = "2.10.0";
+  version = "2.11.0";
 
   src = fetchFromGitHub {
     owner = "binwiederhier";
     repo = "ntfy";
     rev = "v${version}";
-    hash = "sha256-Ns73kZ7XJKj93fhTDQ3L5hk4NZVEcKysJVEZk6jX7KE=";
+    hash = "sha256-lSj4LfS4nBC1xtTE/ee2Nhx9TmlU+138miwC0nEfVRY=";
   };
 
-  vendorHash = "sha256-c7fOSI+BPF3lwAJEftZHk9o/97T9kntgSsXoko3AYtQ=";
+  vendorHash = "sha256-V8LgbprUsr+8Ub4xeTPrE4Bp9qOP/R35/qPj0Udgod0=";
 
   ui = buildNpmPackage {
     inherit src version;
     pname = "ntfy-sh-ui";
-    npmDepsHash = "sha256-nU5atvqyt5U7z8XB0+25uF+7tWPW2yYnkV/124fKoPE=";
+    npmDepsHash = "sha256-PCkRULHfC3ktShO+3wIQFLG24l5LBSB1niWcIrCT9Bo=";
 
     prePatch = ''
       cd web/
diff --git a/pkgs/tools/misc/octosql/default.nix b/pkgs/tools/misc/octosql/default.nix
index a42f80d95ff9..675375cb0941 100644
--- a/pkgs/tools/misc/octosql/default.nix
+++ b/pkgs/tools/misc/octosql/default.nix
@@ -5,13 +5,13 @@
 
 buildGoModule rec {
   pname = "octosql";
-  version = "0.12.2";
+  version = "0.13.0";
 
   src = fetchFromGitHub {
     owner  = "cube2222";
     repo   = pname;
     rev    = "v${version}";
-    sha256 = "sha256-jf40w5QkSTAgGu0JA4NeqsasN2TUf9vnKVw5zlZr8Mw=";
+    sha256 = "sha256-kzbIts5d2KmFfaAnOdpIXI1fiqBYXe5t981g4Uyk/cc=";
   };
 
   vendorHash = "sha256-p/2UsvxxywQKtk/9wDa5fjS0z6xLLzDONuQ5AtnUonk=";
diff --git a/pkgs/tools/misc/opencorsairlink/default.nix b/pkgs/tools/misc/opencorsairlink/default.nix
index 40b747f20305..4d455977d6d9 100644
--- a/pkgs/tools/misc/opencorsairlink/default.nix
+++ b/pkgs/tools/misc/opencorsairlink/default.nix
@@ -28,7 +28,7 @@ stdenv.mkDerivation rec {
   meta = with lib; {
     description = "Linux and Mac OS support for the CorsairLink Devices ";
     homepage = "https://github.com/audiohacked/OpenCorsairLink";
-    license = licenses.gpl2;
+    license = licenses.gpl2Plus;
     platforms = platforms.all;
     maintainers = [ lib.maintainers.expipiplus1 ];
     mainProgram = "OpenCorsairLink.elf";
diff --git a/pkgs/tools/misc/opentelemetry-collector/contrib.nix b/pkgs/tools/misc/opentelemetry-collector/contrib.nix
index 6a0fafc7815c..ea52a0e00b3c 100644
--- a/pkgs/tools/misc/opentelemetry-collector/contrib.nix
+++ b/pkgs/tools/misc/opentelemetry-collector/contrib.nix
@@ -8,18 +8,18 @@
 
 buildGoModule rec {
   pname = "opentelemetry-collector-contrib";
-  version = "0.98.0";
+  version = "0.100.0";
 
   src = fetchFromGitHub {
     owner = "open-telemetry";
     repo = "opentelemetry-collector-contrib";
     rev = "v${version}";
-    sha256 = "sha256-YdaAP/o8WhiGOggF2Xo66TzE7PCJDkvbiCFPLVG4SHQ=";
+    sha256 = "sha256-QmWl3XhCmOxJPn/haBsWVCPI970sTQpmVpJwCCpBbH4=";
   };
 
   # proxy vendor to avoid hash missmatches between linux and macOS
   proxyVendor = true;
-  vendorHash = "sha256-4hQcHUX/UgeG/ojljq4eJCqZIYp1unNsngprr/3C9q0=";
+  vendorHash = "sha256-62G+wQeZK/7iO10ZgXXY3gT8LwUnqDY9Pr8HkAqkVik=";
 
   # there is a nested go.mod
   sourceRoot = "${src.name}/cmd/otelcontribcol";
diff --git a/pkgs/tools/misc/opentelemetry-collector/default.nix b/pkgs/tools/misc/opentelemetry-collector/default.nix
index 421f59f75009..b855202633db 100644
--- a/pkgs/tools/misc/opentelemetry-collector/default.nix
+++ b/pkgs/tools/misc/opentelemetry-collector/default.nix
@@ -8,17 +8,17 @@
 
 buildGoModule rec {
   pname = "opentelemetry-collector";
-  version = "0.99.0";
+  version = "0.100.0";
 
   src = fetchFromGitHub {
     owner = "open-telemetry";
     repo = "opentelemetry-collector";
     rev = "v${version}";
-    hash = "sha256-O0I6G8Wa2GTv/lR6ijo9XglAdciJj2yuupJP9/uYySM=";
+    hash = "sha256-GDRxOfuAlztJhuYXZKmDpQ6M4ZW3+bNevMjqCHRuyVY=";
   };
   # there is a nested go.mod
   sourceRoot = "${src.name}/cmd/otelcorecol";
-  vendorHash = "sha256-JaquTJ3xl2NvipKF8her5m7tbYbLVQjYprGXEcrzv4s=";
+  vendorHash = "sha256-wVJyu4+dYXLSkopfSLkKPkwnUCGyUeagQtOjuvNxF6A=";
 
   nativeBuildInputs = [ installShellFiles ];
 
diff --git a/pkgs/tools/misc/os-prober/default.nix b/pkgs/tools/misc/os-prober/default.nix
index 5d15b7077385..f48aae8e6df5 100644
--- a/pkgs/tools/misc/os-prober/default.nix
+++ b/pkgs/tools/misc/os-prober/default.nix
@@ -68,6 +68,8 @@ stdenv.mkDerivation rec {
     description = "Utility to detect other OSs on a set of drives";
     homepage = "http://packages.debian.org/source/sid/os-prober";
     license = licenses.gpl2Plus;
+    mainProgram = "os-prober";
     maintainers = with maintainers; [ symphorien ];
+    platforms = platforms.linux;
   };
 }
diff --git a/pkgs/tools/misc/ostree/default.nix b/pkgs/tools/misc/ostree/default.nix
index caccfbec9b69..cab9aba3d90c 100644
--- a/pkgs/tools/misc/ostree/default.nix
+++ b/pkgs/tools/misc/ostree/default.nix
@@ -8,6 +8,7 @@
 , gobject-introspection
 , gjs
 , nixosTests
+, pkgsCross
 , curl
 , glib
 , systemd
@@ -140,6 +141,7 @@ in stdenv.mkDerivation rec {
 
   passthru = {
     tests = {
+      musl = pkgsCross.musl64.ostree;
       installedTests = nixosTests.installed-tests.ostree;
     };
   };
diff --git a/pkgs/tools/misc/pal/default.nix b/pkgs/tools/misc/pal/default.nix
index 5456ffdf061c..c3778ba3bccf 100644
--- a/pkgs/tools/misc/pal/default.nix
+++ b/pkgs/tools/misc/pal/default.nix
@@ -23,7 +23,7 @@ stdenv.mkDerivation rec {
   meta = {
     homepage = "https://palcal.sourceforge.net/";
     description = "Command-line calendar program that can keep track of events";
-    license = lib.licenses.gpl2;
+    license = lib.licenses.gpl2Plus;
     maintainers = with lib.maintainers; [viric];
     platforms = with lib.platforms; linux;
   };
diff --git a/pkgs/tools/misc/panoply/default.nix b/pkgs/tools/misc/panoply/default.nix
index b79d6b7d8e35..b5df3adc7b3d 100644
--- a/pkgs/tools/misc/panoply/default.nix
+++ b/pkgs/tools/misc/panoply/default.nix
@@ -2,11 +2,11 @@
 
 stdenvNoCC.mkDerivation rec {
   pname = "panoply";
-  version = "5.3.4";
+  version = "5.4.0";
 
   src = fetchurl {
     url = "https://www.giss.nasa.gov/tools/panoply/download/PanoplyJ-${version}.tgz";
-    sha256 = "sha256-v7ieTtm2W8Sc/zhQ7QPh8rkMUgaqgfGYYXc6Ly+9iMg=";
+    sha256 = "sha256-mWk0wuTxkITVU3SwWYPHrX8Y9NceXeRMwyvpwEDWIiA=";
   };
 
   nativeBuildInputs = [ makeWrapper ];
diff --git a/pkgs/tools/misc/parallel/default.nix b/pkgs/tools/misc/parallel/default.nix
index 7dff66bc1003..ec1603640a8e 100644
--- a/pkgs/tools/misc/parallel/default.nix
+++ b/pkgs/tools/misc/parallel/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   pname = "parallel";
-  version = "20240322";
+  version = "20240422";
 
   src = fetchurl {
     url = "mirror://gnu/parallel/${pname}-${version}.tar.bz2";
-    hash = "sha256-CxcCmiA9q/e6bKflLC05EP/0ayl5R24SqREJILeeapU=";
+    hash = "sha256-eDiIID7eK5LO0x6z6AnKOp2J9FCP3LEYML+zV1SIJGc=";
   };
 
   outputs = [ "out" "man" "doc" ];
diff --git a/pkgs/tools/misc/parallel/wrapper.nix b/pkgs/tools/misc/parallel/wrapper.nix
index 0240f1ac9e9e..b798a1acea22 100644
--- a/pkgs/tools/misc/parallel/wrapper.nix
+++ b/pkgs/tools/misc/parallel/wrapper.nix
@@ -1,10 +1,18 @@
-{ lib, runCommand, makeWrapper, parallel, perlPackages
+{ lib, symlinkJoin, makeWrapper, parallel, perlPackages
 , extraPerlPackages ? with perlPackages; [ DBI DBDPg DBDSQLite DBDCSV TextCSV ]
 , willCite ? false }:
 
-runCommand "parallel-full" { nativeBuildInputs = [ makeWrapper ]; } ''
-  mkdir -p $out/bin
-  makeWrapper ${parallel}/bin/parallel $out/bin/parallel \
-    --set PERL5LIB "${perlPackages.makeFullPerlPath extraPerlPackages}" \
-    ${lib.optionalString willCite "--add-flags --will-cite"}
-''
+symlinkJoin {
+  name = "parallel-full-${parallel.version}";
+  inherit (parallel) pname version meta outputs;
+  nativeBuildInputs = [ makeWrapper ];
+  paths = [ parallel ];
+  postBuild = ''
+    ${lib.concatMapStringsSep "\n" (output: "ln -s --no-target-directory ${parallel.${output}} \$${output}") (lib.remove "out" parallel.outputs)}
+
+    rm $out/bin/parallel
+    makeWrapper ${parallel}/bin/parallel $out/bin/parallel \
+      --set PERL5LIB "${perlPackages.makeFullPerlPath extraPerlPackages}" \
+      ${lib.optionalString willCite "--add-flags --will-cite"}
+  '';
+}
diff --git a/pkgs/tools/misc/parcellite/default.nix b/pkgs/tools/misc/parcellite/default.nix
index d39115fcecc9..3c53be706641 100644
--- a/pkgs/tools/misc/parcellite/default.nix
+++ b/pkgs/tools/misc/parcellite/default.nix
@@ -1,6 +1,6 @@
 { lib, stdenv, fetchFromGitHub, autoreconfHook
 , gtk2, hicolor-icon-theme, intltool, pkg-config
-, which, wrapGAppsHook, xdotool, libappindicator-gtk2 }:
+, which, wrapGAppsHook3, xdotool, libappindicator-gtk2 }:
 
 stdenv.mkDerivation rec {
   pname = "parcellite";
@@ -13,7 +13,7 @@ stdenv.mkDerivation rec {
     sha256 = "19q4x6x984s6gxk1wpzaxawgvly5vnihivrhmja2kcxhzqrnfhiy";
   };
 
-  nativeBuildInputs = [ autoreconfHook intltool pkg-config wrapGAppsHook ];
+  nativeBuildInputs = [ autoreconfHook intltool pkg-config wrapGAppsHook3 ];
   buildInputs = [ gtk2 hicolor-icon-theme libappindicator-gtk2 ];
   NIX_LDFLAGS = "-lgio-2.0";
 
diff --git a/pkgs/tools/misc/pastebinit/default.nix b/pkgs/tools/misc/pastebinit/default.nix
index ba597934ebbe..21beecc443c0 100644
--- a/pkgs/tools/misc/pastebinit/default.nix
+++ b/pkgs/tools/misc/pastebinit/default.nix
@@ -49,7 +49,7 @@ stdenv.mkDerivation rec {
     homepage = "https://stgraber.org/category/pastebinit/";
     description = "A software that lets you send anything you want directly to a pastebin from the command line";
     maintainers = with maintainers; [ raboof samuel-martineau ];
-    license = licenses.gpl2;
+    license = licenses.gpl2Plus;
     platforms = platforms.linux ++ lib.platforms.darwin;
   };
 }
diff --git a/pkgs/tools/misc/phrase-cli/default.nix b/pkgs/tools/misc/phrase-cli/default.nix
index 70b08aa96a92..fc00c5936b06 100644
--- a/pkgs/tools/misc/phrase-cli/default.nix
+++ b/pkgs/tools/misc/phrase-cli/default.nix
@@ -2,16 +2,16 @@
 
 buildGoModule rec {
   pname = "phrase-cli";
-  version = "2.25.0";
+  version = "2.27.0";
 
   src = fetchFromGitHub {
     owner = "phrase";
     repo = "phrase-cli";
     rev = version;
-    sha256 = "sha256-JVelz5I6HWgoqqkfNzb0DlAA4DsydBzdcxEIdKs24i4=";
+    sha256 = "sha256-PStbkJbSGCN92eAk4TZaIzbkG1C25PKI6R6LJgaQuxQ=";
   };
 
-  vendorHash = "sha256-8lqiseOJ8eDvY4J/MimKVvh5euHfOgQLjhKf7sPS6AE=";
+  vendorHash = "sha256-5EgttRimT+TTL9QhT36AO9rx2DdZBmnQrllBfRpdhg0=";
 
   ldflags = [ "-X=github.com/phrase/phrase-cli/cmd.PHRASE_CLIENT_VERSION=${version}" ];
 
diff --git a/pkgs/tools/misc/pipelight/default.nix b/pkgs/tools/misc/pipelight/default.nix
index 90c1e8d1e86a..e565bf554fff 100644
--- a/pkgs/tools/misc/pipelight/default.nix
+++ b/pkgs/tools/misc/pipelight/default.nix
@@ -59,7 +59,7 @@ in stdenv.mkDerivation rec {
 
   meta = {
     homepage = "http://pipelight.net/";
-    license = with lib.licenses; [ mpl11 gpl2 lgpl21 ];
+    license = with lib.licenses; [ mpl11 gpl2Only lgpl21 ];
     description = "A wrapper for using Windows plugins in Linux browsers";
     maintainers = with lib.maintainers; [ ];
     platforms = [ "x86_64-linux" "i686-linux" ];
diff --git a/pkgs/tools/misc/pkgdiff/default.nix b/pkgs/tools/misc/pkgdiff/default.nix
index 45ec2df2beaf..77ba84c1df0f 100644
--- a/pkgs/tools/misc/pkgdiff/default.nix
+++ b/pkgs/tools/misc/pkgdiff/default.nix
@@ -25,7 +25,7 @@ stdenv.mkDerivation rec {
   meta = with lib; {
     description = "A tool for visualizing changes in Linux software packages";
     homepage = "https://lvc.github.io/pkgdiff/";
-    license = licenses.gpl2;
+    license = licenses.gpl2Only;
     maintainers = with maintainers; [ sweber ];
     platforms = platforms.unix;
     mainProgram = "pkgdiff";
diff --git a/pkgs/tools/misc/plotinus/default.nix b/pkgs/tools/misc/plotinus/default.nix
index 112010c80082..10c86b10c3da 100644
--- a/pkgs/tools/misc/plotinus/default.nix
+++ b/pkgs/tools/misc/plotinus/default.nix
@@ -7,7 +7,7 @@
 , cmake
 , ninja
 , vala
-, wrapGAppsHook }:
+, wrapGAppsHook3 }:
 
 stdenv.mkDerivation rec {
   pname = "plotinus";
@@ -22,7 +22,7 @@ stdenv.mkDerivation rec {
 
   nativeBuildInputs = [
     pkg-config
-    wrapGAppsHook
+    wrapGAppsHook3
     vala
     cmake
     ninja
diff --git a/pkgs/tools/misc/popsicle/default.nix b/pkgs/tools/misc/popsicle/default.nix
index c5a9e5edc738..2a62a0aa922d 100644
--- a/pkgs/tools/misc/popsicle/default.nix
+++ b/pkgs/tools/misc/popsicle/default.nix
@@ -6,7 +6,7 @@
 , glib
 , pkg-config
 , rustc
-, wrapGAppsHook
+, wrapGAppsHook3
 , gdk-pixbuf
 , gtk3
 }:
@@ -38,7 +38,7 @@ stdenv.mkDerivation rec {
     rustPlatform.bindgenHook
     rustPlatform.cargoSetupHook
     rustc
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
diff --git a/pkgs/tools/misc/pre-commit/default.nix b/pkgs/tools/misc/pre-commit/default.nix
index 535ce1a8c4da..122226486bd4 100644
--- a/pkgs/tools/misc/pre-commit/default.nix
+++ b/pkgs/tools/misc/pre-commit/default.nix
@@ -18,7 +18,7 @@
 with python3Packages;
 buildPythonApplication rec {
   pname = "pre-commit";
-  version = "3.7.0";
+  version = "3.7.1";
   format = "setuptools";
 
   disabled = pythonOlder "3.9";
@@ -27,7 +27,7 @@ buildPythonApplication rec {
     owner = "pre-commit";
     repo = "pre-commit";
     rev = "refs/tags/v${version}";
-    hash = "sha256-k9pC/GCtqLlK9PhZmx4EKWT1HDyl+KQubDFDQOZdKUQ=";
+    hash = "sha256-+9NNXM4i6saxktF1pl93dmkrqjsErqMB6kEK3IPQTNQ=";
   };
 
   patches = [
diff --git a/pkgs/tools/misc/pspg/default.nix b/pkgs/tools/misc/pspg/default.nix
index 9d0adb051af0..1ceefdd82edf 100644
--- a/pkgs/tools/misc/pspg/default.nix
+++ b/pkgs/tools/misc/pspg/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "pspg";
-  version = "5.8.5";
+  version = "5.8.6";
 
   src = fetchFromGitHub {
     owner = "okbob";
     repo = pname;
     rev = version;
-    sha256 = "sha256-Lri675TEIVWp8iEQI1oeSd9xNCVtzlUcK2AEJHmWNjs=";
+    sha256 = "sha256-UgJHsniDbfAcohnrYYUUJ4OhL2Fr65kGu26dsw9vYyM=";
   };
 
   nativeBuildInputs = [ pkg-config installShellFiles ];
diff --git a/pkgs/tools/misc/qflipper/default.nix b/pkgs/tools/misc/qflipper/default.nix
index 5c139d017c86..171c5d7b3877 100644
--- a/pkgs/tools/misc/qflipper/default.nix
+++ b/pkgs/tools/misc/qflipper/default.nix
@@ -6,7 +6,7 @@
 , libusb1
 , libGL
 , qmake
-, wrapGAppsHook
+, wrapGAppsHook3
 , wrapQtAppsHook
 , mkDerivation
 
@@ -45,7 +45,7 @@ mkDerivation {
     pkg-config
     qmake
     qttools
-    wrapGAppsHook
+    wrapGAppsHook3
     wrapQtAppsHook
   ];
 
diff --git a/pkgs/tools/misc/qjoypad/default.nix b/pkgs/tools/misc/qjoypad/default.nix
index a602e7b7fad6..260c8f498e6b 100644
--- a/pkgs/tools/misc/qjoypad/default.nix
+++ b/pkgs/tools/misc/qjoypad/default.nix
@@ -32,7 +32,7 @@ mkDerivation rec {
       experience just a little bit nicer.
     '';
     homepage = "https://github.com/panzi/qjoypad/";
-    license = lib.licenses.gpl2;
+    license = lib.licenses.gpl2Only;
     maintainers = with maintainers; [ astsmtl ];
     platforms = with platforms; linux;
     mainProgram = "qjoypad";
diff --git a/pkgs/tools/misc/recoverjpeg/default.nix b/pkgs/tools/misc/recoverjpeg/default.nix
index db05aeda96a3..998241f5cc39 100644
--- a/pkgs/tools/misc/recoverjpeg/default.nix
+++ b/pkgs/tools/misc/recoverjpeg/default.nix
@@ -21,7 +21,7 @@ stdenv.mkDerivation rec {
   meta = with lib; {
     homepage = "https://rfc1149.net/devel/recoverjpeg.html";
     description = "Recover lost JPEGs and MOV files on a bogus memory card or disk";
-    license = licenses.gpl2;
+    license = licenses.gpl2Only;
     maintainers = with maintainers; [ dotlambda ];
     platforms = with platforms; linux;
   };
diff --git a/pkgs/tools/misc/riemann-c-client/default.nix b/pkgs/tools/misc/riemann-c-client/default.nix
index 9ce23873aa27..f0acc5cc04b0 100644
--- a/pkgs/tools/misc/riemann-c-client/default.nix
+++ b/pkgs/tools/misc/riemann-c-client/default.nix
@@ -6,14 +6,14 @@
 
 stdenv.mkDerivation rec {
   pname = "riemann-c-client";
-  version = "2.1.1";
+  version = "2.2.0";
 
   src = fetchFromGitea {
     domain = "git.madhouse-project.org";
     owner = "algernon";
     repo = "riemann-c-client";
     rev = "riemann-c-client-${version}";
-    hash = "sha256-FIhTT57g2uZBaH3EPNxNUNJn9n+0ZOhI6WMyF+xIr/Q=";
+    hash = "sha256-GAinZtEetRAl04CjxNCTCkGbvdhSZei7gon3KxEqiIY=";
   };
 
   outputs = [ "bin" "dev" "out" ];
diff --git a/pkgs/tools/misc/rig/default.nix b/pkgs/tools/misc/rig/default.nix
index b9a3e0951e3c..45304f3e56f4 100644
--- a/pkgs/tools/misc/rig/default.nix
+++ b/pkgs/tools/misc/rig/default.nix
@@ -26,7 +26,7 @@ stdenv.mkDerivation rec {
       if the Web site/BBS/person you are giving the information to tries to
       cross-check the city, state, zip, or area code, it will check out.
     '';
-    license = lib.licenses.gpl2;
+    license = lib.licenses.gpl2Plus;
     maintainers = with lib.maintainers; [ tomberek ];
     platforms = with lib.platforms; all;
     mainProgram = "rig";
diff --git a/pkgs/tools/misc/rmlint/default.nix b/pkgs/tools/misc/rmlint/default.nix
index 2c11cbf195bd..08a0a0c5e146 100644
--- a/pkgs/tools/misc/rmlint/default.nix
+++ b/pkgs/tools/misc/rmlint/default.nix
@@ -14,7 +14,7 @@
 , scons
 , sphinx
 , util-linux
-, wrapGAppsHook
+, wrapGAppsHook3
 , withGui ? false }:
 
 assert withGui -> !stdenv.isDarwin;
@@ -41,7 +41,7 @@ stdenv.mkDerivation rec {
     scons
   ] ++ lib.optionals withGui [
     makeWrapper
-    wrapGAppsHook
+    wrapGAppsHook3
     gobject-introspection
   ];
 
diff --git a/pkgs/tools/misc/rrdtool/default.nix b/pkgs/tools/misc/rrdtool/default.nix
index e852374e2a88..3ce10f131605 100644
--- a/pkgs/tools/misc/rrdtool/default.nix
+++ b/pkgs/tools/misc/rrdtool/default.nix
@@ -41,7 +41,7 @@ perl.pkgs.toPerlModule (stdenv.mkDerivation rec {
   meta = with lib; {
     homepage = "https://oss.oetiker.ch/rrdtool/";
     description = "High performance logging in Round Robin Databases";
-    license = licenses.gpl2;
+    license = licenses.gpl2Only;
     platforms = platforms.linux ++ platforms.darwin;
     maintainers = with maintainers; [ pSub ];
   };
diff --git a/pkgs/tools/misc/rshim-user-space/default.nix b/pkgs/tools/misc/rshim-user-space/default.nix
index 67cf3b6895e0..329c572967a9 100644
--- a/pkgs/tools/misc/rshim-user-space/default.nix
+++ b/pkgs/tools/misc/rshim-user-space/default.nix
@@ -62,7 +62,7 @@ stdenv.mkDerivation rec {
       target and provides a way to access the internal rshim registers.
     '';
     homepage = "https://github.com/Mellanox/rshim-user-space";
-    license = licenses.gpl2;
+    license = licenses.gpl2Only;
     platforms = platforms.linux;
     maintainers = with maintainers; [ nikstur ];
   };
diff --git a/pkgs/tools/misc/scanmem/default.nix b/pkgs/tools/misc/scanmem/default.nix
index 817e713b229f..15d8f1c02f1e 100644
--- a/pkgs/tools/misc/scanmem/default.nix
+++ b/pkgs/tools/misc/scanmem/default.nix
@@ -4,7 +4,7 @@
 , autoreconfHook
 , gobject-introspection
 , intltool
-, wrapGAppsHook
+, wrapGAppsHook3
 , procps
 , python3
 , readline
@@ -21,7 +21,7 @@ stdenv.mkDerivation rec {
     sha256 = "17p8sh0rj8yqz36ria5bp48c8523zzw3y9g8sbm2jwq7sc27i7s9";
   };
 
-  nativeBuildInputs = [ autoreconfHook gobject-introspection intltool wrapGAppsHook ];
+  nativeBuildInputs = [ autoreconfHook gobject-introspection intltool wrapGAppsHook3 ];
   buildInputs = [ readline python3 ];
   configureFlags = ["--enable-gui"];
 
diff --git a/pkgs/tools/misc/sensible-utils/default.nix b/pkgs/tools/misc/sensible-utils/default.nix
index 238b9f400b89..f75629d96f12 100644
--- a/pkgs/tools/misc/sensible-utils/default.nix
+++ b/pkgs/tools/misc/sensible-utils/default.nix
@@ -32,7 +32,7 @@ stdenv.mkDerivation rec {
     '';
     homepage = "https://salsa.debian.org/debian/sensible-utils";
     changelog = "https://salsa.debian.org/debian/sensible-utils/-/tags";
-    license = licenses.gpl2;
+    license = licenses.gpl2Plus;
     maintainers = with maintainers; [ pbek ];
     platforms = platforms.unix;
   };
diff --git a/pkgs/tools/misc/sixpair/default.nix b/pkgs/tools/misc/sixpair/default.nix
index fa444a86a0ac..92f7e81c0ccd 100644
--- a/pkgs/tools/misc/sixpair/default.nix
+++ b/pkgs/tools/misc/sixpair/default.nix
@@ -32,7 +32,7 @@ stdenv.mkDerivation {
       This command-line utility searches USB buses for SIXAXIS controllers and tells them to connect to a new Bluetooth master.
     '';
     homepage = "http://www.pabr.org/sixlinux/";
-    license = lib.licenses.gpl2;
+    license = lib.licenses.gpl2Only;
     maintainers = [ lib.maintainers.tomsmeets ];
     platforms = lib.platforms.linux;
     mainProgram = "sixpair";
diff --git a/pkgs/tools/misc/slsnif/default.nix b/pkgs/tools/misc/slsnif/default.nix
index 04bc462350f1..7ac1a846484f 100644
--- a/pkgs/tools/misc/slsnif/default.nix
+++ b/pkgs/tools/misc/slsnif/default.nix
@@ -12,7 +12,7 @@ stdenv.mkDerivation rec {
   meta = {
     description = "Serial line sniffer";
     homepage = "http://slsnif.sourceforge.net/";
-    license = lib.licenses.gpl2;
+    license = lib.licenses.gpl2Plus;
     platforms = lib.platforms.linux;
     mainProgram = "slsnif";
   };
diff --git a/pkgs/tools/misc/sonota/default.nix b/pkgs/tools/misc/sonota/default.nix
index 5f341bbc98ee..efc7ab22b468 100644
--- a/pkgs/tools/misc/sonota/default.nix
+++ b/pkgs/tools/misc/sonota/default.nix
@@ -48,7 +48,7 @@ in buildPythonApplication rec {
   meta = with lib; {
     description = "Flash Itead Sonoff devices with custom firmware via original OTA mechanism";
     homepage = src.meta.homepage;
-    license = licenses.gpl2;
+    license = licenses.gpl2Plus;
     maintainers = with maintainers; [ peterhoeg ];
     mainProgram = "sonota";
   };
diff --git a/pkgs/tools/misc/sqlite3-to-mysql/default.nix b/pkgs/tools/misc/sqlite3-to-mysql/default.nix
index 8d93736ffdac..289de7d02264 100644
--- a/pkgs/tools/misc/sqlite3-to-mysql/default.nix
+++ b/pkgs/tools/misc/sqlite3-to-mysql/default.nix
@@ -9,7 +9,7 @@
 
 python3Packages.buildPythonApplication rec {
   pname = "sqlite3-to-mysql";
-  version = "2.1.9";
+  version = "2.1.10";
   format = "pyproject";
 
   disabled = python3Packages.pythonOlder "3.8";
@@ -18,7 +18,7 @@ python3Packages.buildPythonApplication rec {
     owner = "techouse";
     repo = pname;
     rev = "refs/tags/v${version}";
-    hash = "sha256-TnqNPW/d1dcVuS5sg9NOXH5ns7AzcbyailY2pYcpUEU=";
+    hash = "sha256-E8cKgKT6Tmz5rR/E2eXDVEVdOr7kk+VbkpF+Yc7IZrw=";
   };
 
   nativeBuildInputs = with python3Packages; [
diff --git a/pkgs/tools/misc/starship/default.nix b/pkgs/tools/misc/starship/default.nix
index d040534cf300..ce82cb7745c7 100644
--- a/pkgs/tools/misc/starship/default.nix
+++ b/pkgs/tools/misc/starship/default.nix
@@ -13,13 +13,13 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "starship";
-  version = "1.18.2";
+  version = "1.19.0";
 
   src = fetchFromGitHub {
     owner = "starship";
     repo = "starship";
     rev = "v${version}";
-    hash = "sha256-84FyKhSP2EZZkQJRhNPTYs2BYppylk50GiIck8pN3l4=";
+    hash = "sha256-3IO9hHuhzJsCHU/6BA5ylEKQI2ik6ZiRul/iO/vzii4=";
   };
 
   nativeBuildInputs = [ installShellFiles cmake ];
@@ -44,7 +44,7 @@ rustPlatform.buildRustPackage rec {
     cp docs/public/presets/toml/*.toml $presetdir
   '';
 
-  cargoHash = "sha256-Fu8KfWHCQUPSiT1aMSS0Il/S02YXdEqKMA2nsliUu8E=";
+  cargoHash = "sha256-zX04gX40dFYsK+R6gafHNtDevzrWiGufMwrGfhqYVG0=";
 
   nativeCheckInputs = [ git ];
 
diff --git a/pkgs/tools/misc/staruml/default.nix b/pkgs/tools/misc/staruml/default.nix
index a6497a62f59b..036f47965b8f 100644
--- a/pkgs/tools/misc/staruml/default.nix
+++ b/pkgs/tools/misc/staruml/default.nix
@@ -1,5 +1,5 @@
 { stdenv, lib, fetchurl
-, dpkg, wrapGAppsHook
+, dpkg, wrapGAppsHook3
 , hicolor-icon-theme
 , gtk3, glib, systemd
 , xorg, nss, nspr
@@ -32,7 +32,7 @@ stdenv.mkDerivation (finalAttrs: {
       sha256 = "sha256-ULdrAQCiQlTN+aRhETj+ASMKkKctFgC2AfvUHGc6stU=";
     };
 
-  nativeBuildInputs = [ wrapGAppsHook dpkg ];
+  nativeBuildInputs = [ wrapGAppsHook3 dpkg ];
   buildInputs = [ glib hicolor-icon-theme ];
 
   unpackPhase = ''
diff --git a/pkgs/tools/misc/statserial/default.nix b/pkgs/tools/misc/statserial/default.nix
index 526729dcd31c..2bcd9e9bdb77 100644
--- a/pkgs/tools/misc/statserial/default.nix
+++ b/pkgs/tools/misc/statserial/default.nix
@@ -30,7 +30,7 @@ stdenv.mkDerivation rec {
   meta = with lib; {
     homepage = "https://sites.google.com/site/tranter/software";
     description = "Display serial port modem status lines";
-    license = licenses.gpl2;
+    license = licenses.gpl2Plus;
 
     longDescription =
       '' Statserial displays a table of the signals on a standard 9-pin or
diff --git a/pkgs/tools/misc/subberthehut/default.nix b/pkgs/tools/misc/subberthehut/default.nix
index 913bc49a5116..66e4442ad460 100644
--- a/pkgs/tools/misc/subberthehut/default.nix
+++ b/pkgs/tools/misc/subberthehut/default.nix
@@ -21,7 +21,7 @@ stdenv.mkDerivation rec {
   meta = with lib; {
     homepage = "https://github.com/mus65/subberthehut";
     description = "An OpenSubtitles.org downloader";
-    license = licenses.gpl2;
+    license = licenses.gpl2Plus;
     platforms = platforms.linux;
     maintainers = with maintainers; [ jqueiroz ];
     mainProgram = "subberthehut";
diff --git a/pkgs/tools/misc/system-config-printer/default.nix b/pkgs/tools/misc/system-config-printer/default.nix
index cafc35790193..907ca3432aea 100644
--- a/pkgs/tools/misc/system-config-printer/default.nix
+++ b/pkgs/tools/misc/system-config-printer/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetchFromGitHub, udev, pkg-config, glib, xmlto, wrapGAppsHook
+{ lib, stdenv, fetchFromGitHub, udev, pkg-config, glib, xmlto, wrapGAppsHook3
 , docbook_xml_dtd_412, docbook_xsl
 , libxml2, desktop-file-utils, libusb1, cups, gdk-pixbuf, pango, atk, libnotify
 , gobject-introspection, libsecret, packagekit
@@ -45,7 +45,7 @@ stdenv.mkDerivation rec {
     pkg-config gettext libtool autoconf-archive
     xmlto libxml2 docbook_xml_dtd_412 docbook_xsl desktop-file-utils
     python3Packages.wrapPython
-    wrapGAppsHook autoreconfHook gobject-introspection
+    wrapGAppsHook3 autoreconfHook gobject-introspection
   ];
 
   pythonPath = with python3Packages; requiredPythonModules [ pycups pycurl dbus-python pygobject3 pycairo pysmbc ];
@@ -80,6 +80,6 @@ stdenv.mkDerivation rec {
   meta = {
     homepage = "https://github.com/openprinting/system-config-printer";
     platforms = lib.platforms.linux;
-    license = lib.licenses.gpl2;
+    license = lib.licenses.gpl2Plus;
   };
 }
diff --git a/pkgs/tools/misc/tbls/default.nix b/pkgs/tools/misc/tbls/default.nix
index c930d2038149..0a3b341cc482 100644
--- a/pkgs/tools/misc/tbls/default.nix
+++ b/pkgs/tools/misc/tbls/default.nix
@@ -9,16 +9,16 @@
 
 buildGoModule rec {
   pname = "tbls";
-  version = "1.74.1";
+  version = "1.75.0";
 
   src = fetchFromGitHub {
     owner = "k1LoW";
     repo = "tbls";
     rev = "v${version}";
-    hash = "sha256-QuusOxXcTp7c6zkj6L//jOXWwLUgrsUFtsUtrNZrkOk=";
+    hash = "sha256-8bfDahJw+ZUSNqMiKDqqyX2jVPd6Wg3JsD/ATAW/oF4=";
   };
 
-  vendorHash = "sha256-mDZOBwm3k3L4QqQA+1C3jRz46R7+4wwJg9BVNWB0F0A=";
+  vendorHash = "sha256-NafHcWP9xJX2hy8i1TKtBi54cXDKgoxbgwLQjYRBcjU=";
 
   nativeBuildInputs = [ installShellFiles ];
 
diff --git a/pkgs/tools/misc/tewisay/default.nix b/pkgs/tools/misc/tewisay/default.nix
index f4ae05711285..bcf77c2db2cf 100644
--- a/pkgs/tools/misc/tewisay/default.nix
+++ b/pkgs/tools/misc/tewisay/default.nix
@@ -6,7 +6,7 @@
 
 buildGoModule rec {
   pname = "tewisay";
-  version = "unstable-2022-11-04";
+  version = "0-unstable-2022-11-04";
 
   # lucy deleted the old repo, this is a fork/mirror
   src = fetchFromGitHub {
diff --git a/pkgs/tools/misc/timidity/default.nix b/pkgs/tools/misc/timidity/default.nix
index 65d154476f02..1cb62fec2e02 100644
--- a/pkgs/tools/misc/timidity/default.nix
+++ b/pkgs/tools/misc/timidity/default.nix
@@ -88,7 +88,7 @@ stdenv.mkDerivation rec {
 
   meta = with lib; {
     homepage = "https://sourceforge.net/projects/timidity/";
-    license = licenses.gpl2;
+    license = licenses.gpl2Plus;
     description = "A software MIDI renderer";
     maintainers = [ maintainers.marcweber ];
     platforms = platforms.unix;
diff --git a/pkgs/tools/misc/tmpwatch/default.nix b/pkgs/tools/misc/tmpwatch/default.nix
index 873b7c0f6f0a..1c545b280dd1 100644
--- a/pkgs/tools/misc/tmpwatch/default.nix
+++ b/pkgs/tools/misc/tmpwatch/default.nix
@@ -14,7 +14,7 @@ stdenv.mkDerivation rec {
   meta = with lib; {
     homepage = "https://pagure.io/tmpwatch";
     description = "Recursively searches through specified directories and removes files which have not been accessed in a specified period of time";
-    license = licenses.gpl2;
+    license = licenses.gpl2Plus;
     maintainers = with maintainers; [ vlstill ];
     platforms = platforms.unix;
     mainProgram = "tmpwatch";
diff --git a/pkgs/tools/misc/topicctl/default.nix b/pkgs/tools/misc/topicctl/default.nix
index 86debbf38800..c3252987c4ce 100644
--- a/pkgs/tools/misc/topicctl/default.nix
+++ b/pkgs/tools/misc/topicctl/default.nix
@@ -2,13 +2,13 @@
 
 buildGoModule rec {
   pname = "topicctl";
-  version = "1.16.1";
+  version = "1.17.0";
 
   src = fetchFromGitHub {
     owner = "segmentio";
     repo = "topicctl";
     rev = "v${version}";
-    sha256 = "sha256-Gx/ld651Se2mLlUG/CkHawfVBN2BsxV8w6vrnKFLHuE=";
+    sha256 = "sha256-S1i2Nv7FQzqCTTjkS5slEI0vdt3kXhVWdtaYyng1GsQ=";
   };
 
   vendorHash = "sha256-+mnnvdna1g6JE29weOJZmdO3jFp2a75dV9wK2XcWJ9s=";
diff --git a/pkgs/tools/misc/toybox/default.nix b/pkgs/tools/misc/toybox/default.nix
index 07ad33645849..4ef5279ef476 100644
--- a/pkgs/tools/misc/toybox/default.nix
+++ b/pkgs/tools/misc/toybox/default.nix
@@ -12,13 +12,13 @@ in
 
 stdenv.mkDerivation rec {
   pname = "toybox";
-  version = "0.8.10";
+  version = "0.8.11";
 
   src = fetchFromGitHub {
     owner = "landley";
     repo = pname;
     rev = version;
-    sha256 = "sha256-MMkNLhQP3ztWoRYhCU/cNXE/M+/ny41OK1SA9oM/lZg=";
+    sha256 = "sha256-7izs2C5/czec0Dt3apL8s7luARAlw4PfUFy9Xsxb0zw=";
   };
 
   depsBuildBuild = optionals (stdenv.hostPlatform != stdenv.buildPlatform) [ buildPackages.stdenv.cc ];
diff --git a/pkgs/tools/misc/trackma/default.nix b/pkgs/tools/misc/trackma/default.nix
index 86834e337d8c..c57d5ac1d757 100644
--- a/pkgs/tools/misc/trackma/default.nix
+++ b/pkgs/tools/misc/trackma/default.nix
@@ -2,7 +2,7 @@
 , stdenv
 , fetchFromGitHub
 , python3
-, wrapGAppsHook
+, wrapGAppsHook3
 , gobject-introspection
 , glib
 , gtk3
@@ -36,7 +36,7 @@ python3.pkgs.buildPythonApplication rec {
   };
 
   nativeBuildInputs = [ copyDesktopItems python3.pkgs.poetry-core ]
-    ++ lib.optionals withGTK [ wrapGAppsHook gobject-introspection ]
+    ++ lib.optionals withGTK [ wrapGAppsHook3 gobject-introspection ]
     ++ lib.optionals withQT [ qt5.wrapQtAppsHook ];
 
   buildInputs = lib.optionals withGTK [ glib gtk3 ];
diff --git a/pkgs/tools/misc/ttylog/default.nix b/pkgs/tools/misc/ttylog/default.nix
index ca90481ba9e6..ff07ba976175 100644
--- a/pkgs/tools/misc/ttylog/default.nix
+++ b/pkgs/tools/misc/ttylog/default.nix
@@ -20,7 +20,7 @@ stdenv.mkDerivation rec {
       A serial port logger which can be used to print everything to stdout
       that comes from a serial device.
     '';
-    license = licenses.gpl2;
+    license = licenses.gpl2Plus;
     platforms = platforms.linux;
     mainProgram = "ttylog";
   };
diff --git a/pkgs/tools/misc/ttyplot/default.nix b/pkgs/tools/misc/ttyplot/default.nix
index fc53f0b8997a..64b9b7cddfab 100644
--- a/pkgs/tools/misc/ttyplot/default.nix
+++ b/pkgs/tools/misc/ttyplot/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "ttyplot";
-  version = "1.6.2";
+  version = "1.6.4";
 
   src = fetchFromGitHub {
     owner = "tenox7";
     repo = "ttyplot";
     rev = version;
-    hash = "sha256-HBJvTDhp1CA96gRU2Q+lMxcFaZ+txXcmNb8Cg1BFiH4=";
+    hash = "sha256-yxAFqi3TgiKiZYgR891ahkwUqZLk/JDsjujOYmBjUtk=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/tools/misc/txt2man/default.nix b/pkgs/tools/misc/txt2man/default.nix
index a6ebcb288216..57ec9ccb8e53 100644
--- a/pkgs/tools/misc/txt2man/default.nix
+++ b/pkgs/tools/misc/txt2man/default.nix
@@ -38,7 +38,7 @@ stdenv.mkDerivation rec {
   meta = with lib; {
     description = "Convert flat ASCII text to man page format";
     homepage = "http://mvertes.free.fr/";
-    license = licenses.gpl2;
+    license = licenses.gpl2Plus;
     platforms = platforms.unix;
     maintainers = with maintainers; [ bjornfor ];
   };
diff --git a/pkgs/tools/misc/uhubctl/default.nix b/pkgs/tools/misc/uhubctl/default.nix
index e148e03f820e..4ee7ea3a00e1 100644
--- a/pkgs/tools/misc/uhubctl/default.nix
+++ b/pkgs/tools/misc/uhubctl/default.nix
@@ -22,7 +22,7 @@ stdenv.mkDerivation rec {
   meta = with lib; {
     homepage = "https://github.com/mvp/uhubctl";
     description = "Utility to control USB power per-port on smart USB hubs";
-    license = licenses.gpl2;
+    license = licenses.gpl2Only;
     maintainers = with maintainers; [ prusnak ];
     platforms = with platforms; linux ++ darwin;
     mainProgram = "uhubctl";
diff --git a/pkgs/tools/misc/ultrastar-creator/default.nix b/pkgs/tools/misc/ultrastar-creator/default.nix
index 990547291f61..547d0a86f957 100644
--- a/pkgs/tools/misc/ultrastar-creator/default.nix
+++ b/pkgs/tools/misc/ultrastar-creator/default.nix
@@ -39,7 +39,7 @@ mkDerivation {
   meta = with lib; {
     description = "Ultrastar karaoke song creation tool";
     homepage = "https://github.com/UltraStar-Deluxe/UltraStar-Creator";
-    license = licenses.gpl2;
+    license = licenses.gpl2Only;
     maintainers = with maintainers; [ Profpatsch ];
   };
 }
diff --git a/pkgs/tools/misc/ultrastar-manager/default.nix b/pkgs/tools/misc/ultrastar-manager/default.nix
index d5dd47e0f669..4921c1de397e 100644
--- a/pkgs/tools/misc/ultrastar-manager/default.nix
+++ b/pkgs/tools/misc/ultrastar-manager/default.nix
@@ -116,7 +116,7 @@ in mkDerivation {
   meta = with lib; {
     description = "Ultrastar karaoke song manager";
     homepage = "https://github.com/UltraStar-Deluxe/UltraStar-Manager";
-    license = licenses.gpl2;
+    license = licenses.gpl2Only;
     maintainers = with maintainers; [ Profpatsch ];
   };
 }
diff --git a/pkgs/tools/misc/undocker/default.nix b/pkgs/tools/misc/undocker/default.nix
index a2ce7dfb7aa1..0b6fb57f710e 100644
--- a/pkgs/tools/misc/undocker/default.nix
+++ b/pkgs/tools/misc/undocker/default.nix
@@ -1,25 +1,36 @@
 { lib
 , buildGoModule
-, fetchFromSourcehut
+, fetchFromGitea
+, gnumake
 }:
-buildGoModule rec {
-  pname = "undocker";
-  version = "1.0.4";
-
-  src = fetchFromSourcehut {
-    owner = "~motiejus";
-    repo = pname;
+let
+  version = "1.2.2";
+  hash = "sha256-kBqNopcHpldU5oD6zoVjPjP84t12QFcbWBSNNgwImKg=";
+  src = fetchFromGitea {
+    domain = "git.jakstys.lt";
+    owner = "motiejus";
+    repo = "undocker";
     rev = "v${version}";
-    hash = "sha256-I+pTbr1lKELyYlyHrx2gB+aeZ3/PmcePQfXu1ckhKAk=";
+    hash = hash;
   };
+in
+buildGoModule {
+  pname = "undocker";
+  inherit version src;
+
+  nativeBuildInputs = [ gnumake ];
+
+  buildPhase = "make VSN=v${version} VSNHASH=${hash} undocker";
+
+  installPhase = "install -D undocker $out/bin/undocker";
 
   vendorHash = null;
 
   meta = with lib; {
-    homepage = "https://git.sr.ht/~motiejus/undocker";
+    homepage = "https://git.jakstys.lt/motiejus/undocker";
     description = "A CLI tool to convert a Docker image to a flattened rootfs tarball";
     license = licenses.asl20;
-    maintainers = with maintainers; [ jordanisaacs ];
+    maintainers = with maintainers; [ jordanisaacs motiejus ];
     mainProgram = "undocker";
   };
 }
diff --git a/pkgs/tools/misc/url-parser/default.nix b/pkgs/tools/misc/url-parser/default.nix
index 39ae506c2524..cb9f058c0d9d 100644
--- a/pkgs/tools/misc/url-parser/default.nix
+++ b/pkgs/tools/misc/url-parser/default.nix
@@ -5,16 +5,16 @@
 
 buildGoModule rec {
   pname = "url-parser";
-  version = "2.0.3";
+  version = "2.0.4";
 
   src = fetchFromGitHub {
     owner = "thegeeklab";
     repo = "url-parser";
     rev = "refs/tags/v${version}";
-    hash = "sha256-pu6U6YIA7+K1ZSt97Nn0IDaQFVIwMq3m7d8JidK1vJk=";
+    hash = "sha256-zCtCLhIWQQWKD2RM+p7HxZSPHnmo7SIZFYGT4nBCWLY=";
   };
 
-  vendorHash = "sha256-QqhjS0uL2Fm2OeFkuAB8VeS7HpoS9dOhgHk/J4j9++M=";
+  vendorHash = "sha256-bUQNZQT13VZuglFW0zdSOBzBLDjH5PiMkKHmkSZJupw=";
 
   ldflags = [
     "-s"
diff --git a/pkgs/tools/misc/urn-timer/default.nix b/pkgs/tools/misc/urn-timer/default.nix
index df45524a8a06..ad0c271fda66 100644
--- a/pkgs/tools/misc/urn-timer/default.nix
+++ b/pkgs/tools/misc/urn-timer/default.nix
@@ -4,7 +4,7 @@
 , xxd
 , pkg-config
 , imagemagick
-, wrapGAppsHook
+, wrapGAppsHook3
 , gtk3
 , jansson
 , nixosTests
@@ -12,7 +12,7 @@
 
 stdenv.mkDerivation {
   pname = "urn-timer";
-  version = "unstable-2024-03-05";
+  version = "0-unstable-2024-03-05";
 
   src = fetchFromGitHub {
     owner = "paoloose";
@@ -25,7 +25,7 @@ stdenv.mkDerivation {
     xxd
     pkg-config
     imagemagick
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
diff --git a/pkgs/tools/misc/usbimager/default.nix b/pkgs/tools/misc/usbimager/default.nix
index 57d9855231c7..a872fb9a74c4 100644
--- a/pkgs/tools/misc/usbimager/default.nix
+++ b/pkgs/tools/misc/usbimager/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetchFromGitLab, pkg-config, wrapGAppsHook
+{ lib, stdenv, fetchFromGitLab, pkg-config, wrapGAppsHook3
 , withLibui ? true, gtk3
 , withUdisks ? stdenv.isLinux, udisks, glib
 , libX11 }:
@@ -16,7 +16,7 @@ stdenv.mkDerivation rec {
 
   sourceRoot = "${src.name}/src";
 
-  nativeBuildInputs = [ pkg-config wrapGAppsHook ];
+  nativeBuildInputs = [ pkg-config wrapGAppsHook3 ];
   buildInputs = lib.optionals withUdisks [ udisks glib ]
     ++ lib.optional (!withLibui) libX11
     ++ lib.optional withLibui gtk3;
diff --git a/pkgs/tools/misc/uucp/default.nix b/pkgs/tools/misc/uucp/default.nix
index 28f7a6572c18..325ad135558c 100644
--- a/pkgs/tools/misc/uucp/default.nix
+++ b/pkgs/tools/misc/uucp/default.nix
@@ -1,11 +1,11 @@
-{ lib, stdenv, fetchurl }:
+{ lib, stdenv, fetchurl, autoreconfHook, testers }:
 
-stdenv.mkDerivation rec {
+stdenv.mkDerivation (finalAttrs: {
   pname = "uucp";
   version = "1.07";
 
   src = fetchurl {
-    url = "mirror://gnu/uucp/uucp-${version}.tar.gz";
+    url = "mirror://gnu/uucp/uucp-${finalAttrs.version}.tar.gz";
     sha256 = "0b5nhl9vvif1w3wdipjsk8ckw49jj1w85xw1mmqi3zbcpazia306";
   };
 
@@ -13,15 +13,28 @@ stdenv.mkDerivation rec {
 
   prePatch = ''
     # do not set sticky bit in nix store
-    substituteInPlace Makefile.in \
-      --replace 4555 0555
-    sed -i '/chown $(OWNER)/d' Makefile.in
+    substituteInPlace Makefile.am \
+      --replace-fail 4555 0555
+    sed -i '/chown $(OWNER)/d' Makefile.am
+
+    # don't reply on implicitly defined `exit` function in `HAVE_VOID` test:
+    substituteInPlace configure.in \
+      --replace-fail '(void) exit (0)' '(void) (0)'
   '';
 
+  # Regenerate `configure`; the checked in version was generated in 2002 and
+  # contains snippets like `main(){return(0);}` that modern compilers dislike.
+  nativeBuildInputs = [ autoreconfHook ];
+
   makeFlags = [ "AR:=$(AR)" ];
 
+  passthru.tests.version = testers.testVersion {
+    package = finalAttrs.finalPackage;
+  };
+
   meta = {
     description = "Unix-unix cp over serial line, also includes cu program";
+    mainProgram = "uucp";
 
     longDescription =
       '' Taylor UUCP is a free implementation of UUCP and is the standard
@@ -37,4 +50,4 @@ stdenv.mkDerivation rec {
     platforms = lib.platforms.all;
     maintainers = [ ];
   };
-}
+})
diff --git a/pkgs/tools/misc/vector/Cargo.lock b/pkgs/tools/misc/vector/Cargo.lock
index d24feb253f2e..4362aedcf615 100644
--- a/pkgs/tools/misc/vector/Cargo.lock
+++ b/pkgs/tools/misc/vector/Cargo.lock
@@ -66,19 +66,19 @@ version = "0.7.7"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "5a824f2aa7e75a0c98c5a504fceb80649e9c35265d44525b5f94de4771a395cd"
 dependencies = [
- "getrandom 0.2.12",
+ "getrandom 0.2.14",
  "once_cell",
  "version_check",
 ]
 
 [[package]]
 name = "ahash"
-version = "0.8.6"
+version = "0.8.11"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "91429305e9f0a25f6205c5b8e0d2db09e0708a7a6df0f42212bb56c32c8ac97a"
+checksum = "e89da841a80418a9b391ebaea17f5c112ffaaa96f621d2c285b5174da76b9011"
 dependencies = [
  "cfg-if",
- "getrandom 0.2.12",
+ "getrandom 0.2.14",
  "once_cell",
  "version_check",
  "zerocopy",
@@ -179,9 +179,9 @@ dependencies = [
 
 [[package]]
 name = "anstream"
-version = "0.6.7"
+version = "0.6.13"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4cd2405b3ac1faab2990b74d728624cd9fd115651fcecc7c2d8daf01376275ba"
+checksum = "d96bd03f33fe50a863e394ee9718a706f988b9079b20c3784fb726e7678b62fb"
 dependencies = [
  "anstyle",
  "anstyle-parse",
@@ -193,9 +193,9 @@ dependencies = [
 
 [[package]]
 name = "anstyle"
-version = "1.0.4"
+version = "1.0.6"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7079075b41f533b8c61d2a4d073c4676e1f8b249ff94a393b0595db304e0dd87"
+checksum = "8901269c6307e8d93993578286ac0edf7f195079ffff5ebdeea6a59ffb7e36bc"
 
 [[package]]
 name = "anstyle-parse"
@@ -227,9 +227,9 @@ dependencies = [
 
 [[package]]
 name = "anyhow"
-version = "1.0.81"
+version = "1.0.82"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0952808a6c2afd1aa8947271f3a60f1a6763c7b912d210184c5149b5cf147247"
+checksum = "f538837af36e6f6a9be0faa67f9a314f8119e4e4b5867c6ab40ed60360142519"
 
 [[package]]
 name = "apache-avro"
@@ -274,9 +274,9 @@ dependencies = [
 
 [[package]]
 name = "arc-swap"
-version = "1.7.0"
+version = "1.7.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7b3d0060af21e8d11a926981cc00c6c1541aa91dd64b9f881985c3da1094425f"
+checksum = "69f7f8c3906b62b754cd5326047894316021dcfe5a194c8ea52bdd94934a3457"
 
 [[package]]
 name = "arr_macro"
@@ -296,7 +296,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "9c6368f9ae5c6ec403ca910327ae0c9437b0a85255b6950c90d497e6177f6e5e"
 dependencies = [
  "proc-macro-hack",
- "quote 1.0.35",
+ "quote 1.0.36",
  "syn 1.0.109",
 ]
 
@@ -359,9 +359,9 @@ dependencies = [
 
 [[package]]
 name = "async-compression"
-version = "0.4.6"
+version = "0.4.9"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a116f46a969224200a0a97f29cfd4c50e7534e4b4826bd23ea2c3c533039c82c"
+checksum = "4e9eabd7a98fe442131a17c316bd9349c43695e49e730c3c8e12cfb5f4da2693"
 dependencies = [
  "flate2",
  "futures-core",
@@ -436,12 +436,12 @@ dependencies = [
  "async-stream",
  "async-trait",
  "base64 0.21.7",
- "bytes 1.5.0",
+ "bytes 1.6.0",
  "chrono",
  "fnv",
  "futures-util",
  "http 1.0.0",
- "indexmap 2.2.5",
+ "indexmap 2.2.6",
  "mime",
  "multer",
  "num-traits",
@@ -465,10 +465,10 @@ dependencies = [
  "async-graphql-parser",
  "darling 0.20.8",
  "proc-macro-crate 1.3.1",
- "proc-macro2 1.0.79",
- "quote 1.0.35",
+ "proc-macro2 1.0.81",
+ "quote 1.0.36",
  "strum 0.26.1",
- "syn 2.0.53",
+ "syn 2.0.60",
  "thiserror",
 ]
 
@@ -490,8 +490,8 @@ version = "7.0.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "68e40849c29a39012d38bff87bfed431f1ed6c53fbec493294c1045d61a7ae75"
 dependencies = [
- "bytes 1.5.0",
- "indexmap 2.2.5",
+ "bytes 1.6.0",
+ "indexmap 2.2.6",
  "serde",
  "serde_json",
 ]
@@ -576,7 +576,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "dbc1f1a75fd07f0f517322d103211f12d757658e91676def9a2e688774656c60"
 dependencies = [
  "base64 0.21.7",
- "bytes 1.5.0",
+ "bytes 1.6.0",
  "futures 0.3.30",
  "http 0.2.9",
  "memchr",
@@ -586,7 +586,7 @@ dependencies = [
  "rand 0.8.5",
  "regex",
  "ring",
- "rustls 0.21.8",
+ "rustls 0.21.11",
  "rustls-native-certs 0.6.3",
  "rustls-pemfile 1.0.3",
  "rustls-webpki 0.101.7",
@@ -645,13 +645,13 @@ dependencies = [
 
 [[package]]
 name = "async-recursion"
-version = "1.1.0"
+version = "1.1.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "30c5ef0ede93efbf733c1a727f3b6b5a1060bbedd5600183e66f6e4be4af0ec5"
+checksum = "3b43422f69d8ff38f95f1b2bb76517c91589a924d1559a0e935d7c8ce0274c11"
 dependencies = [
- "proc-macro2 1.0.79",
- "quote 1.0.35",
- "syn 2.0.53",
+ "proc-macro2 1.0.81",
+ "quote 1.0.36",
+ "syn 2.0.60",
 ]
 
 [[package]]
@@ -689,9 +689,9 @@ version = "0.3.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "16e62a023e7c117e27523144c5d2459f4397fcc3cab0085af8e2224f643a0193"
 dependencies = [
- "proc-macro2 1.0.79",
- "quote 1.0.35",
- "syn 2.0.53",
+ "proc-macro2 1.0.81",
+ "quote 1.0.36",
+ "syn 2.0.60",
 ]
 
 [[package]]
@@ -702,13 +702,13 @@ checksum = "b4eb2cdb97421e01129ccb49169d8279ed21e829929144f4a22a6e54ac549ca1"
 
 [[package]]
 name = "async-trait"
-version = "0.1.78"
+version = "0.1.80"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "461abc97219de0eaaf81fe3ef974a540158f3d079c2ab200f891f1a2ef201e85"
+checksum = "c6fa2087f2753a7da8cc1c0dbfcf89579dd57458e36769de5ac750b4671737ca"
 dependencies = [
- "proc-macro2 1.0.79",
- "quote 1.0.35",
- "syn 2.0.53",
+ "proc-macro2 1.0.81",
+ "quote 1.0.36",
+ "syn 2.0.60",
 ]
 
 [[package]]
@@ -757,7 +757,7 @@ dependencies = [
  "aws-smithy-runtime-api",
  "aws-smithy-types",
  "aws-types",
- "bytes 1.5.0",
+ "bytes 1.6.0",
  "fastrand 2.0.1",
  "http 0.2.9",
  "hyper 0.14.28",
@@ -768,9 +768,9 @@ dependencies = [
 
 [[package]]
 name = "aws-credential-types"
-version = "1.1.8"
+version = "1.2.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "fa8587ae17c8e967e4b05a62d495be2fb7701bec52a97f7acfe8a29f938384c8"
+checksum = "e16838e6c9e12125face1c1eff1343c75e3ff540de98ff7ebd61874a89bcfeb9"
 dependencies = [
  "aws-smithy-async",
  "aws-smithy-runtime-api",
@@ -787,7 +787,7 @@ dependencies = [
  "aws-smithy-runtime-api",
  "aws-smithy-types",
  "aws-types",
- "bytes 1.5.0",
+ "bytes 1.6.0",
  "http 0.2.9",
  "http-body 0.4.5",
  "pin-project-lite",
@@ -855,7 +855,7 @@ dependencies = [
  "aws-smithy-runtime-api",
  "aws-smithy-types",
  "aws-types",
- "bytes 1.5.0",
+ "bytes 1.6.0",
  "fastrand 2.0.1",
  "http 0.2.9",
  "regex",
@@ -878,7 +878,7 @@ dependencies = [
  "aws-smithy-runtime-api",
  "aws-smithy-types",
  "aws-types",
- "bytes 1.5.0",
+ "bytes 1.6.0",
  "http 0.2.9",
  "regex",
  "tracing 0.1.40",
@@ -900,7 +900,7 @@ dependencies = [
  "aws-smithy-runtime-api",
  "aws-smithy-types",
  "aws-types",
- "bytes 1.5.0",
+ "bytes 1.6.0",
  "http 0.2.9",
  "regex",
  "tracing 0.1.40",
@@ -922,7 +922,7 @@ dependencies = [
  "aws-smithy-runtime-api",
  "aws-smithy-types",
  "aws-types",
- "bytes 1.5.0",
+ "bytes 1.6.0",
  "http 0.2.9",
  "regex",
  "tracing 0.1.40",
@@ -948,7 +948,7 @@ dependencies = [
  "aws-smithy-types",
  "aws-smithy-xml",
  "aws-types",
- "bytes 1.5.0",
+ "bytes 1.6.0",
  "http 0.2.9",
  "http-body 0.4.5",
  "once_cell",
@@ -959,6 +959,29 @@ dependencies = [
 ]
 
 [[package]]
+name = "aws-sdk-secretsmanager"
+version = "1.3.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "faea24d86bcabc65048014abd3ee5763a5e8877f678d9cd688a12e086ebe2dbd"
+dependencies = [
+ "aws-credential-types",
+ "aws-http",
+ "aws-runtime",
+ "aws-smithy-async",
+ "aws-smithy-http",
+ "aws-smithy-json",
+ "aws-smithy-runtime",
+ "aws-smithy-runtime-api",
+ "aws-smithy-types",
+ "aws-types",
+ "bytes 1.6.0",
+ "fastrand 2.0.1",
+ "http 0.2.9",
+ "regex",
+ "tracing 0.1.40",
+]
+
+[[package]]
 name = "aws-sdk-sns"
 version = "1.3.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -997,7 +1020,7 @@ dependencies = [
  "aws-smithy-runtime-api",
  "aws-smithy-types",
  "aws-types",
- "bytes 1.5.0",
+ "bytes 1.6.0",
  "http 0.2.9",
  "regex",
  "tracing 0.1.40",
@@ -1028,16 +1051,16 @@ dependencies = [
 
 [[package]]
 name = "aws-sigv4"
-version = "1.2.0"
+version = "1.2.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "11d6f29688a4be9895c0ba8bef861ad0c0dac5c15e9618b9b7a6c233990fc263"
+checksum = "58b56f1cbe6fd4d0c2573df72868f20ab1c125ca9c9dbce17927a463433a2e57"
 dependencies = [
  "aws-credential-types",
  "aws-smithy-eventstream",
  "aws-smithy-http",
  "aws-smithy-runtime-api",
  "aws-smithy-types",
- "bytes 1.5.0",
+ "bytes 1.6.0",
  "form_urlencoded",
  "hex",
  "hmac",
@@ -1052,9 +1075,9 @@ dependencies = [
 
 [[package]]
 name = "aws-smithy-async"
-version = "1.1.8"
+version = "1.2.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d26ea8fa03025b2face2b3038a63525a10891e3d8829901d502e5384a0d8cd46"
+checksum = "62220bc6e97f946ddd51b5f1361f78996e704677afc518a4ff66b7a72ea1378c"
 dependencies = [
  "futures-util",
  "pin-project-lite",
@@ -1069,7 +1092,7 @@ checksum = "c5a373ec01aede3dd066ec018c1bc4e8f5dd11b2c11c59c8eef1a5c68101f397"
 dependencies = [
  "aws-smithy-http",
  "aws-smithy-types",
- "bytes 1.5.0",
+ "bytes 1.6.0",
  "crc32c",
  "crc32fast",
  "hex",
@@ -1089,20 +1112,20 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "e6363078f927f612b970edf9d1903ef5cef9a64d1e8423525ebb1f0a1633c858"
 dependencies = [
  "aws-smithy-types",
- "bytes 1.5.0",
+ "bytes 1.6.0",
  "crc32fast",
 ]
 
 [[package]]
 name = "aws-smithy-http"
-version = "0.60.7"
+version = "0.60.8"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3f10fa66956f01540051b0aa7ad54574640f748f9839e843442d99b970d3aff9"
+checksum = "4a7de001a1b9a25601016d8057ea16e31a45fdca3751304c8edf4ad72e706c08"
 dependencies = [
  "aws-smithy-eventstream",
  "aws-smithy-runtime-api",
  "aws-smithy-types",
- "bytes 1.5.0",
+ "bytes 1.6.0",
  "bytes-utils",
  "futures-core",
  "http 0.2.9",
@@ -1135,38 +1158,39 @@ dependencies = [
 
 [[package]]
 name = "aws-smithy-runtime"
-version = "1.1.8"
+version = "1.4.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ec81002d883e5a7fd2bb063d6fb51c4999eb55d404f4fff3dd878bf4733b9f01"
+checksum = "1cf64e73ef8d4dac6c933230d56d136b75b252edcf82ed36e37d603090cd7348"
 dependencies = [
  "aws-smithy-async",
  "aws-smithy-http",
  "aws-smithy-runtime-api",
  "aws-smithy-types",
- "bytes 1.5.0",
+ "bytes 1.6.0",
  "fastrand 2.0.1",
  "h2 0.3.26",
  "http 0.2.9",
  "http-body 0.4.5",
+ "http-body 1.0.0",
  "hyper 0.14.28",
  "hyper-rustls 0.24.2",
  "once_cell",
  "pin-project-lite",
  "pin-utils",
- "rustls 0.21.8",
+ "rustls 0.21.11",
  "tokio",
  "tracing 0.1.40",
 ]
 
 [[package]]
 name = "aws-smithy-runtime-api"
-version = "1.2.0"
+version = "1.5.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9acb931e0adaf5132de878f1398d83f8677f90ba70f01f65ff87f6d7244be1c5"
+checksum = "8c19fdae6e3d5ac9cd01f2d6e6c359c5f5a3e028c2d148a8f5b90bf3399a18a7"
 dependencies = [
  "aws-smithy-async",
  "aws-smithy-types",
- "bytes 1.5.0",
+ "bytes 1.6.0",
  "http 0.2.9",
  "http 1.0.0",
  "pin-project-lite",
@@ -1182,10 +1206,13 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "abe14dceea1e70101d38fbf2a99e6a34159477c0fb95e68e05c66bd7ae4c3729"
 dependencies = [
  "base64-simd",
- "bytes 1.5.0",
+ "bytes 1.6.0",
  "bytes-utils",
  "http 0.2.9",
+ "http 1.0.0",
  "http-body 0.4.5",
+ "http-body 1.0.0",
+ "http-body-util",
  "itoa",
  "num-integer",
  "pin-project-lite",
@@ -1206,9 +1233,9 @@ dependencies = [
 
 [[package]]
 name = "aws-types"
-version = "1.1.8"
+version = "1.2.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0dbf2f3da841a8930f159163175cf6a3d16ddde517c1b0fba7aa776822800f40"
+checksum = "5a43b56df2c529fe44cb4d92bd64d0479883fb9608ff62daede4df5405381814"
 dependencies = [
  "aws-credential-types",
  "aws-smithy-async",
@@ -1228,7 +1255,7 @@ dependencies = [
  "async-trait",
  "axum-core",
  "bitflags 1.3.2",
- "bytes 1.5.0",
+ "bytes 1.6.0",
  "futures-util",
  "http 0.2.9",
  "http-body 0.4.5",
@@ -1255,7 +1282,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "759fa577a247914fd3f7f76d62972792636412fbfd634cd452f6a385a74d2d2c"
 dependencies = [
  "async-trait",
- "bytes 1.5.0",
+ "bytes 1.6.0",
  "futures-util",
  "http 0.2.9",
  "http-body 0.4.5",
@@ -1273,10 +1300,10 @@ checksum = "4ccd63c07d1fbfb3d4543d7ea800941bf5a30db1911b9b9e4db3b2c4210a434f"
 dependencies = [
  "async-trait",
  "base64 0.21.7",
- "bytes 1.5.0",
+ "bytes 1.6.0",
  "dyn-clone",
  "futures 0.3.30",
- "getrandom 0.2.12",
+ "getrandom 0.2.14",
  "http-types",
  "log",
  "paste",
@@ -1322,7 +1349,7 @@ dependencies = [
  "RustyXML",
  "async-trait",
  "azure_core",
- "bytes 1.5.0",
+ "bytes 1.6.0",
  "futures 0.3.30",
  "hmac",
  "log",
@@ -1344,7 +1371,7 @@ dependencies = [
  "RustyXML",
  "azure_core",
  "azure_storage",
- "bytes 1.5.0",
+ "bytes 1.6.0",
  "futures 0.3.30",
  "log",
  "serde",
@@ -1361,7 +1388,7 @@ version = "0.4.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "b62ddb9cb1ec0a098ad4bbf9344d0713fa193ae1a80af55febcff2627b6a00c1"
 dependencies = [
- "getrandom 0.2.12",
+ "getrandom 0.2.14",
  "instant",
  "rand 0.8.5",
 ]
@@ -1406,6 +1433,12 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "4c7f02d4ea65f2c1853089ffd8d2787bdbc63de2f0d29dedbcf8ccdfa0ccd4cf"
 
 [[package]]
+name = "base62"
+version = "2.0.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "f879ef8fc74665ed7f0e6127cb106315888fc2744f68e14b74f83edbb2a08992"
+
+[[package]]
 name = "base64"
 version = "0.13.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -1425,9 +1458,9 @@ checksum = "9d297deb1925b89f2ccc13d7635fa0714f12c87adce1c75356b39ca9b7178567"
 
 [[package]]
 name = "base64"
-version = "0.22.0"
+version = "0.22.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9475866fec1451be56a3c2400fd081ff546538961565ccb5b7142cbd22bc7a51"
+checksum = "72b3254f16251a8381aa12e40e3c4d2f0199f8c6508fbecb9d91f575e0fbb8c6"
 
 [[package]]
 name = "base64-simd"
@@ -1478,8 +1511,8 @@ version = "2.2.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "9990737a6d5740ff51cdbbc0f0503015cb30c390f6623968281eb214a520cfc0"
 dependencies = [
- "quote 1.0.35",
- "syn 2.0.53",
+ "quote 1.0.36",
+ "syn 2.0.60",
 ]
 
 [[package]]
@@ -1539,13 +1572,13 @@ dependencies = [
 
 [[package]]
 name = "bollard"
-version = "0.16.0"
+version = "0.16.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "83545367eb6428eb35c29cdec3a1f350fa8d6d9085d59a7d7bcb637f2e38db5a"
+checksum = "0aed08d3adb6ebe0eff737115056652670ae290f177759aac19c30456135f94c"
 dependencies = [
- "base64 0.21.7",
+ "base64 0.22.1",
  "bollard-stubs",
- "bytes 1.5.0",
+ "bytes 1.6.0",
  "chrono",
  "futures-core",
  "futures-util",
@@ -1560,7 +1593,7 @@ dependencies = [
  "hyperlocal-next",
  "log",
  "pin-project-lite",
- "rustls 0.22.2",
+ "rustls 0.22.4",
  "rustls-native-certs 0.7.0",
  "rustls-pemfile 2.1.0",
  "rustls-pki-types",
@@ -1586,7 +1619,7 @@ dependencies = [
  "chrono",
  "serde",
  "serde_repr",
- "serde_with 3.7.0",
+ "serde_with 3.8.1",
 ]
 
 [[package]]
@@ -1607,9 +1640,9 @@ checksum = "f404657a7ea7b5249e36808dff544bc88a28f26e0ac40009f674b7a009d14be3"
 dependencies = [
  "once_cell",
  "proc-macro-crate 2.0.0",
- "proc-macro2 1.0.79",
- "quote 1.0.35",
- "syn 2.0.53",
+ "proc-macro2 1.0.81",
+ "quote 1.0.36",
+ "syn 2.0.60",
  "syn_derive",
 ]
 
@@ -1619,7 +1652,7 @@ version = "2.8.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "61570f4de0cc9c03b481c96057b3ae7c6ff7b5b35da8b0832c44f0131987a718"
 dependencies = [
- "ahash 0.8.6",
+ "ahash 0.8.11",
  "base64 0.13.1",
  "bitvec",
  "hex",
@@ -1679,12 +1712,18 @@ version = "0.6.11"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "a7ec4c6f261935ad534c0c22dbef2201b45918860eb1c574b972bd213a76af61"
 dependencies = [
- "proc-macro2 1.0.79",
- "quote 1.0.35",
+ "proc-macro2 1.0.81",
+ "quote 1.0.36",
  "syn 1.0.109",
 ]
 
 [[package]]
+name = "bytemuck"
+version = "1.15.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "5d6d68c57235a3a081186990eca2867354726650f42f7516ca50c28d6281fd15"
+
+[[package]]
 name = "byteorder"
 version = "1.5.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -1702,9 +1741,9 @@ dependencies = [
 
 [[package]]
 name = "bytes"
-version = "1.5.0"
+version = "1.6.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a2bd12c1caf447e69cd4528f47f94d203fd2582878ecb9e9465484c4148a8223"
+checksum = "514de17de45fdb8dc022b1a7975556c53c86f9f0aa5f534b98977b171857c2c9"
 dependencies = [
  "serde",
 ]
@@ -1715,7 +1754,7 @@ version = "0.1.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "e47d3a8076e283f3acd27400535992edb3ba4b5bb72f8891ad8fbe7932a7d4b9"
 dependencies = [
- "bytes 1.5.0",
+ "bytes 1.6.0",
  "either",
 ]
 
@@ -1727,14 +1766,14 @@ checksum = "a3e368af43e418a04d52505cf3dbc23dda4e3407ae2fa99fd0e4f308ce546acc"
 
 [[package]]
 name = "cached"
-version = "0.49.2"
+version = "0.50.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f251fd1e72720ca07bf5d8e310f54a193fd053479a1f6342c6663ee4fa01cf96"
+checksum = "10a7d38ed2761b8a13ce42bc44b09d5a052b88da2f9fead624c779f31ac0729a"
 dependencies = [
- "ahash 0.8.6",
+ "ahash 0.8.11",
  "cached_proc_macro",
  "cached_proc_macro_types",
- "hashbrown 0.14.3",
+ "hashbrown 0.14.5",
  "instant",
  "once_cell",
  "thiserror",
@@ -1742,14 +1781,14 @@ dependencies = [
 
 [[package]]
 name = "cached_proc_macro"
-version = "0.20.0"
+version = "0.21.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ad9f16c0d84de31a2ab7fdf5f7783c14631f7075cf464eb3bb43119f61c9cb2a"
+checksum = "771aa57f3b17da6c8bcacb187bb9ec9bc81c8160e72342e67c329e0e1651a669"
 dependencies = [
- "darling 0.14.4",
- "proc-macro2 1.0.79",
- "quote 1.0.35",
- "syn 1.0.109",
+ "darling 0.20.8",
+ "proc-macro2 1.0.81",
+ "quote 1.0.36",
+ "syn 2.0.60",
 ]
 
 [[package]]
@@ -1760,9 +1799,9 @@ checksum = "ade8366b8bd5ba243f0a58f036cc0ca8a2f069cff1a2351ef1cac6b083e16fc0"
 
 [[package]]
 name = "cargo_toml"
-version = "0.19.2"
+version = "0.20.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a98356df42a2eb1bd8f1793ae4ee4de48e384dd974ce5eac8eee802edb7492be"
+checksum = "c8cb1d556b8b8f36e5ca74938008be3ac102f5dcb5b68a0477e4249ae2291cd3"
 dependencies = [
  "serde",
  "toml",
@@ -1871,9 +1910,9 @@ dependencies = [
 
 [[package]]
 name = "chrono"
-version = "0.4.34"
+version = "0.4.37"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5bc015644b92d5890fab7489e49d21f879d5c990186827d42ec511919404f38b"
+checksum = "8a0d04d43504c61aa6c7531f1871dd0d418d91130162063b789da00fd7057a5e"
 dependencies = [
  "android-tzdata",
  "iana-time-zone",
@@ -1886,9 +1925,9 @@ dependencies = [
 
 [[package]]
 name = "chrono-tz"
-version = "0.8.6"
+version = "0.9.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d59ae0466b83e838b81a54256c39d5d7c20b9d7daa10510a242d9b75abd5936e"
+checksum = "93698b29de5e97ad0ae26447b344c482a7284c737d9ddc5f9e52b74a336671bb"
 dependencies = [
  "chrono",
  "chrono-tz-build",
@@ -1898,9 +1937,9 @@ dependencies = [
 
 [[package]]
 name = "chrono-tz-build"
-version = "0.2.1"
+version = "0.3.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "433e39f13c9a060046954e0592a8d0a4bcb1040125cbf91cb8ee58964cfb350f"
+checksum = "0c088aee841df9c3041febbb73934cfc39708749bf96dc827e3359cd39ef11b1"
 dependencies = [
  "parse-zoneinfo",
  "phf",
@@ -1992,9 +2031,9 @@ dependencies = [
 
 [[package]]
 name = "clap"
-version = "4.5.3"
+version = "4.5.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "949626d00e063efc93b6dca932419ceb5432f99769911c0b995f7e884c778813"
+checksum = "90bc066a67923782aa8515dbaea16946c5bcc5addbd668bb80af688e53e548a0"
 dependencies = [
  "clap_builder",
  "clap_derive",
@@ -2006,7 +2045,7 @@ version = "2.2.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "bb9b20c0dd58e4c2e991c8d203bbeb76c11304d1011659686b5b644bc29aa478"
 dependencies = [
- "clap 4.5.3",
+ "clap 4.5.4",
  "log",
 ]
 
@@ -2025,23 +2064,23 @@ dependencies = [
 
 [[package]]
 name = "clap_complete"
-version = "4.5.1"
+version = "4.5.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "885e4d7d5af40bfb99ae6f9433e292feac98d452dcb3ec3d25dfe7552b77da8c"
+checksum = "dd79504325bf38b10165b02e89b4347300f855f273c4cb30c4a3209e6583275e"
 dependencies = [
- "clap 4.5.3",
+ "clap 4.5.4",
 ]
 
 [[package]]
 name = "clap_derive"
-version = "4.5.3"
+version = "4.5.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "90239a040c80f5e14809ca132ddc4176ab33d5e17e49691793296e3fcb34d72f"
+checksum = "528131438037fd55894f62d6e9f068b8f45ac57ffa77517819645d10aed04f64"
 dependencies = [
  "heck 0.5.0",
- "proc-macro2 1.0.79",
- "quote 1.0.35",
- "syn 2.0.53",
+ "proc-macro2 1.0.81",
+ "quote 1.0.36",
+ "syn 2.0.60",
 ]
 
 [[package]]
@@ -2073,7 +2112,7 @@ name = "codecs"
 version = "0.1.0"
 dependencies = [
  "apache-avro",
- "bytes 1.5.0",
+ "bytes 1.6.0",
  "chrono",
  "csv-core",
  "derivative",
@@ -2083,7 +2122,7 @@ dependencies = [
  "memchr",
  "once_cell",
  "ordered-float 4.2.0",
- "prost 0.12.3",
+ "prost 0.12.4",
  "prost-reflect",
  "regex",
  "rstest",
@@ -2151,7 +2190,7 @@ version = "4.6.6"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "35ed6e9d84f0b51a7f52daf1c7d71dd136fd7a3f41a8462b8cdb8c78d920fad4"
 dependencies = [
- "bytes 1.5.0",
+ "bytes 1.6.0",
  "futures-core",
  "memchr",
  "pin-project-lite",
@@ -2227,8 +2266,8 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "fd326812b3fd01da5bb1af7d340d0d555fd3d4b641e7f1dfcf5962a902952787"
 dependencies = [
  "futures-core",
- "prost 0.12.3",
- "prost-types 0.12.3",
+ "prost 0.12.4",
+ "prost-types 0.12.4",
  "tonic",
  "tracing-core 0.1.32",
 ]
@@ -2245,7 +2284,7 @@ dependencies = [
  "futures-task",
  "hdrhistogram",
  "humantime",
- "prost-types 0.12.3",
+ "prost-types 0.12.4",
  "serde",
  "serde_json",
  "thread_local",
@@ -2326,18 +2365,18 @@ dependencies = [
 
 [[package]]
 name = "crc"
-version = "3.0.1"
+version = "3.2.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "86ec7a15cbe22e59248fc7eadb1907dab5ba09372595da4d73dd805ed4417dfe"
+checksum = "69e6e4d7b33a94f0991c26729976b10ebde1d34c3ee82408fb536164fa10d636"
 dependencies = [
  "crc-catalog",
 ]
 
 [[package]]
 name = "crc-catalog"
-version = "2.3.0"
+version = "2.4.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4939f9ed1444bd8c896d37f3090012fa6e7834fe84ef8c9daa166109515732f9"
+checksum = "19d374276b40fb8bbdee95aef7c7fa6b5316ec764510eb64b8dd0e2ed0d7e7f5"
 
 [[package]]
 name = "crc32c"
@@ -2366,7 +2405,7 @@ dependencies = [
  "anes",
  "cast",
  "ciborium",
- "clap 4.5.3",
+ "clap 4.5.4",
  "criterion-plot",
  "futures 0.3.30",
  "is-terminal",
@@ -2567,9 +2606,9 @@ version = "0.1.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "f46882e17999c6cc590af592290432be3bce0428cb0d5f8b6715e4dc7b383eb3"
 dependencies = [
- "proc-macro2 1.0.79",
- "quote 1.0.35",
- "syn 2.0.53",
+ "proc-macro2 1.0.81",
+ "quote 1.0.36",
+ "syn 2.0.60",
 ]
 
 [[package]]
@@ -2584,16 +2623,6 @@ dependencies = [
 
 [[package]]
 name = "darling"
-version = "0.14.4"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7b750cb3417fd1b327431a470f388520309479ab0bf5e323505daf0290cd3850"
-dependencies = [
- "darling_core 0.14.4",
- "darling_macro 0.14.4",
-]
-
-[[package]]
-name = "darling"
 version = "0.20.8"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "54e36fcd13ed84ffdfda6f5be89b31287cbb80c439841fe69e04841435464391"
@@ -2610,22 +2639,8 @@ checksum = "859d65a907b6852c9361e3185c862aae7fafd2887876799fa55f5f99dc40d610"
 dependencies = [
  "fnv",
  "ident_case",
- "proc-macro2 1.0.79",
- "quote 1.0.35",
- "strsim 0.10.0",
- "syn 1.0.109",
-]
-
-[[package]]
-name = "darling_core"
-version = "0.14.4"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "109c1ca6e6b7f82cc233a97004ea8ed7ca123a9af07a8230878fcfda9b158bf0"
-dependencies = [
- "fnv",
- "ident_case",
- "proc-macro2 1.0.79",
- "quote 1.0.35",
+ "proc-macro2 1.0.81",
+ "quote 1.0.36",
  "strsim 0.10.0",
  "syn 1.0.109",
 ]
@@ -2638,10 +2653,10 @@ checksum = "9c2cf1c23a687a1feeb728783b993c4e1ad83d99f351801977dd809b48d0a70f"
 dependencies = [
  "fnv",
  "ident_case",
- "proc-macro2 1.0.79",
- "quote 1.0.35",
+ "proc-macro2 1.0.81",
+ "quote 1.0.36",
  "strsim 0.10.0",
- "syn 2.0.53",
+ "syn 2.0.60",
 ]
 
 [[package]]
@@ -2651,18 +2666,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "9c972679f83bdf9c42bd905396b6c3588a843a17f0f16dfcfa3e2c5d57441835"
 dependencies = [
  "darling_core 0.13.4",
- "quote 1.0.35",
- "syn 1.0.109",
-]
-
-[[package]]
-name = "darling_macro"
-version = "0.14.4"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a4aab4dbc9f7611d8b55048a3a16d2d010c2c8334e46304b40ac1cc14bf3b48e"
-dependencies = [
- "darling_core 0.14.4",
- "quote 1.0.35",
+ "quote 1.0.36",
  "syn 1.0.109",
 ]
 
@@ -2673,8 +2677,8 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "a668eda54683121533a393014d8692171709ff57a7d61f187b6e782719f8933f"
 dependencies = [
  "darling_core 0.20.8",
- "quote 1.0.35",
- "syn 2.0.53",
+ "quote 1.0.36",
+ "syn 2.0.60",
 ]
 
 [[package]]
@@ -2690,7 +2694,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "978747c1d849a7d2ee5e8adc0159961c48fb7e5db2f06af6723b80123bb53856"
 dependencies = [
  "cfg-if",
- "hashbrown 0.14.3",
+ "hashbrown 0.14.5",
  "lock_api",
  "once_cell",
  "parking_lot_core",
@@ -2698,9 +2702,9 @@ dependencies = [
 
 [[package]]
 name = "data-encoding"
-version = "2.5.0"
+version = "2.6.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7e962a19be5cfc3f3bf6dd8f61eb50107f356ad6270fbb3ed41476571db78be5"
+checksum = "e8566979429cf69b49a5c740c60791108e86440e8be149bbea4fe54d2c32d6e2"
 
 [[package]]
 name = "data-url"
@@ -2709,6 +2713,27 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "5c297a1c74b71ae29df00c3e22dd9534821d60eb9af5a0192823fa2acea70c2a"
 
 [[package]]
+name = "databend-client"
+version = "0.17.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "123d9b08aefcdce56e2379487198c1fb8c439cedf6c31d16c3974f0f9d3e282f"
+dependencies = [
+ "async-trait",
+ "log",
+ "once_cell",
+ "percent-encoding",
+ "reqwest",
+ "serde",
+ "serde_json",
+ "tokio",
+ "tokio-retry",
+ "tokio-stream",
+ "tokio-util",
+ "url",
+ "uuid",
+]
+
+[[package]]
 name = "db-key"
 version = "0.0.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -2766,8 +2791,8 @@ version = "2.2.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "fcc3dd5e9e9c0b295d6e1e4d811fb6f157d5ffd784b8d202fc62eac8035a770b"
 dependencies = [
- "proc-macro2 1.0.79",
- "quote 1.0.35",
+ "proc-macro2 1.0.81",
+ "quote 1.0.36",
  "syn 1.0.109",
 ]
 
@@ -2777,9 +2802,9 @@ version = "1.3.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "67e77553c4162a157adbf834ebae5b415acbecbeafc7a74b0e886657506a7611"
 dependencies = [
- "proc-macro2 1.0.79",
- "quote 1.0.35",
- "syn 2.0.53",
+ "proc-macro2 1.0.81",
+ "quote 1.0.36",
+ "syn 2.0.60",
 ]
 
 [[package]]
@@ -2789,8 +2814,8 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "4fb810d30a7c1953f91334de7244731fc3f3c10d7fe163338a35b9f640960321"
 dependencies = [
  "convert_case 0.4.0",
- "proc-macro2 1.0.79",
- "quote 1.0.35",
+ "proc-macro2 1.0.81",
+ "quote 1.0.36",
  "rustc_version 0.4.0",
  "syn 1.0.109",
 ]
@@ -2869,7 +2894,7 @@ checksum = "e5766087c2235fec47fafa4cfecc81e494ee679d0fd4a59887ea0919bfb0e4fc"
 dependencies = [
  "cfg-if",
  "libc",
- "socket2 0.5.6",
+ "socket2 0.5.7",
  "windows-sys 0.48.0",
 ]
 
@@ -3046,8 +3071,8 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "21cdad81446a7f7dc43f6a77409efeb9733d2fa65553efef6018ef257c959b73"
 dependencies = [
  "heck 0.4.1",
- "proc-macro2 1.0.79",
- "quote 1.0.35",
+ "proc-macro2 1.0.81",
+ "quote 1.0.36",
  "syn 1.0.109",
 ]
 
@@ -3058,21 +3083,21 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "5ffccbb6966c05b32ef8fbac435df276c4ae4d3dc55a8cd0eb9745e6c12f546a"
 dependencies = [
  "heck 0.4.1",
- "proc-macro2 1.0.79",
- "quote 1.0.35",
- "syn 2.0.53",
+ "proc-macro2 1.0.81",
+ "quote 1.0.36",
+ "syn 2.0.60",
 ]
 
 [[package]]
 name = "enum_dispatch"
-version = "0.3.12"
+version = "0.3.13"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8f33313078bb8d4d05a2733a94ac4c2d8a0df9a2b84424ebf4f33bfc224a890e"
+checksum = "aa18ce2bc66555b3218614519ac839ddb759a7d6720732f979ef8d13be147ecd"
 dependencies = [
  "once_cell",
- "proc-macro2 1.0.79",
- "quote 1.0.35",
- "syn 2.0.53",
+ "proc-macro2 1.0.81",
+ "quote 1.0.36",
+ "syn 2.0.60",
 ]
 
 [[package]]
@@ -3090,9 +3115,9 @@ version = "0.7.9"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "5c785274071b1b420972453b306eeca06acf4633829db4223b58a2a8c5953bc4"
 dependencies = [
- "proc-macro2 1.0.79",
- "quote 1.0.35",
- "syn 2.0.53",
+ "proc-macro2 1.0.81",
+ "quote 1.0.36",
+ "syn 2.0.60",
 ]
 
 [[package]]
@@ -3102,6 +3127,16 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "62a61b2faff777e62dbccd7f82541d873f96264d050c5dd7e95194f79fc4de29"
 
 [[package]]
+name = "env_filter"
+version = "0.1.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "a009aa4810eb158359dda09d0c87378e4bbb89b5a801f016885a4707ba24f7ea"
+dependencies = [
+ "log",
+ "regex",
+]
+
+[[package]]
 name = "env_logger"
 version = "0.8.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -3113,15 +3148,15 @@ dependencies = [
 
 [[package]]
 name = "env_logger"
-version = "0.10.2"
+version = "0.11.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4cd405aab171cb85d6735e5c8d9db038c17d3ca007a4d2c25f337935c3d90580"
+checksum = "38b35839ba51819680ba087cd351788c9a3c476841207e0b8cee0b04722343b9"
 dependencies = [
+ "anstream",
+ "anstyle",
+ "env_filter",
  "humantime",
- "is-terminal",
  "log",
- "regex",
- "termcolor",
 ]
 
 [[package]]
@@ -3217,9 +3252,9 @@ dependencies = [
 
 [[package]]
 name = "fakedata_generator"
-version = "0.4.0"
+version = "0.5.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "302a45f60d105c247c9d3131107392da80df844f9215260b7f8ccfa301a6a6f4"
+checksum = "57b82fba4b485b819fde74012109688a9d2bd4ce7b22583ac12c9fa239f74a02"
 dependencies = [
  "passt",
  "rand 0.8.5",
@@ -3269,7 +3304,7 @@ name = "file-source"
 version = "0.1.0"
 dependencies = [
  "bstr 1.9.1",
- "bytes 1.5.0",
+ "bytes 1.6.0",
  "chrono",
  "crc",
  "criterion",
@@ -3277,7 +3312,7 @@ dependencies = [
  "flate2",
  "futures 0.3.30",
  "glob",
- "indexmap 2.2.5",
+ "indexmap 2.2.6",
  "libc",
  "quickcheck",
  "scan_fmt",
@@ -3325,9 +3360,9 @@ checksum = "d52a7e408202050813e6f1d9addadcaafef3dca7530c7ddfb005d4081cce6779"
 
 [[package]]
 name = "flate2"
-version = "1.0.28"
+version = "1.0.30"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "46303f565772937ffe1d394a4fac6f411c6013172fadde9dcdb1e147a086940e"
+checksum = "5f54427cfd1c7829e2a139fcefea601bf088ebca651d2bf53ebc600eac295dae"
 dependencies = [
  "crc32fast",
  "miniz_oxide",
@@ -3345,9 +3380,6 @@ version = "0.10.14"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "1657b4441c3403d9f7b3409e47575237dac27b1b5726df654a6ecbf92f0f7577"
 dependencies = [
- "futures-core",
- "futures-sink",
- "pin-project",
  "spin 0.9.8",
 ]
 
@@ -3492,9 +3524,9 @@ version = "0.3.30"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "87750cf4b7a4c0625b1529e4c543c2182106e4dedc60a2a6455e00d212c489ac"
 dependencies = [
- "proc-macro2 1.0.79",
- "quote 1.0.35",
- "syn 2.0.53",
+ "proc-macro2 1.0.81",
+ "quote 1.0.36",
+ "syn 2.0.60",
 ]
 
 [[package]]
@@ -3559,9 +3591,9 @@ dependencies = [
 
 [[package]]
 name = "getrandom"
-version = "0.2.12"
+version = "0.2.14"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "190092ea657667030ac6a35e305e62fc4dd69fd98ac98631e5d3a2b1575a12b5"
+checksum = "94b22e06ecb0110981051723910cbf0b5f5e09a2062dd7663334ee79a9d1286c"
 dependencies = [
  "cfg-if",
  "js-sys",
@@ -3616,9 +3648,9 @@ dependencies = [
 
 [[package]]
 name = "governor"
-version = "0.6.0"
+version = "0.6.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "821239e5672ff23e2a7060901fa622950bbd80b649cdaadd78d1c1767ed14eb4"
+checksum = "68a7f542ee6b35af73b06abc0dad1c1bae89964e4e253bc4b587b91c9637867b"
 dependencies = [
  "cfg-if",
  "dashmap",
@@ -3627,8 +3659,10 @@ dependencies = [
  "no-std-compat",
  "nonzero_ext",
  "parking_lot",
+ "portable-atomic",
  "rand 0.8.5",
  "smallvec",
+ "spinning_top",
 ]
 
 [[package]]
@@ -3652,9 +3686,9 @@ dependencies = [
 
 [[package]]
 name = "graphql_client"
-version = "0.13.0"
+version = "0.14.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "09cdf7b487d864c2939b23902291a5041bc4a84418268f25fda1c8d4e15ad8fa"
+checksum = "a50cfdc7f34b7f01909d55c2dcb71d4c13cbcbb4a1605d6c8bd760d654c1144b"
 dependencies = [
  "graphql_query_derive",
  "serde",
@@ -3663,16 +3697,16 @@ dependencies = [
 
 [[package]]
 name = "graphql_client_codegen"
-version = "0.13.0"
+version = "0.14.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a40f793251171991c4eb75bd84bc640afa8b68ff6907bc89d3b712a22f700506"
+checksum = "5e27ed0c2cf0c0cc52c6bcf3b45c907f433015e580879d14005386251842fb0a"
 dependencies = [
  "graphql-introspection-query",
  "graphql-parser",
  "heck 0.4.1",
  "lazy_static",
- "proc-macro2 1.0.79",
- "quote 1.0.35",
+ "proc-macro2 1.0.81",
+ "quote 1.0.36",
  "serde",
  "serde_json",
  "syn 1.0.109",
@@ -3680,12 +3714,12 @@ dependencies = [
 
 [[package]]
 name = "graphql_query_derive"
-version = "0.13.0"
+version = "0.14.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "00bda454f3d313f909298f626115092d348bc231025699f557b27e248475f48c"
+checksum = "83febfa838f898cfa73dfaa7a8eb69ff3409021ac06ee94cfb3d622f6eeb1a97"
 dependencies = [
  "graphql_client_codegen",
- "proc-macro2 1.0.79",
+ "proc-macro2 1.0.81",
  "syn 1.0.109",
 ]
 
@@ -3694,7 +3728,7 @@ name = "greptime-proto"
 version = "0.1.0"
 source = "git+https://github.com/GreptimeTeam/greptime-proto.git?tag=v0.4.1#4306ab645ee55b3f7f2ad3fb7acc5820f967c1aa"
 dependencies = [
- "prost 0.12.3",
+ "prost 0.12.4",
  "serde",
  "serde_json",
  "strum 0.25.0",
@@ -3714,7 +3748,7 @@ dependencies = [
  "futures-util",
  "greptime-proto",
  "parking_lot",
- "prost 0.12.3",
+ "prost 0.12.4",
  "rand 0.8.5",
  "snafu 0.7.5",
  "tokio",
@@ -3751,13 +3785,13 @@ version = "0.3.26"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "81fe527a889e1532da5c525686d96d4c2e74cdd345badf8dfef9f6b39dd5f5e8"
 dependencies = [
- "bytes 1.5.0",
+ "bytes 1.6.0",
  "fnv",
  "futures-core",
  "futures-sink",
  "futures-util",
  "http 0.2.9",
- "indexmap 2.2.5",
+ "indexmap 2.2.6",
  "slab",
  "tokio",
  "tokio-util",
@@ -3770,13 +3804,13 @@ version = "0.4.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "816ec7294445779408f36fe57bc5b7fc1cf59664059096c65f905c1c61f58069"
 dependencies = [
- "bytes 1.5.0",
+ "bytes 1.6.0",
  "fnv",
  "futures-core",
  "futures-sink",
  "futures-util",
  "http 1.0.0",
- "indexmap 2.2.5",
+ "indexmap 2.2.6",
  "slab",
  "tokio",
  "tokio-util",
@@ -3810,16 +3844,16 @@ version = "0.13.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "33ff8ae62cd3a9102e5637afc8452c55acf3844001bd5374e0b0bd7b6616c038"
 dependencies = [
- "ahash 0.8.6",
+ "ahash 0.8.11",
 ]
 
 [[package]]
 name = "hashbrown"
-version = "0.14.3"
+version = "0.14.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "290f1a1d9242c78d09ce40a5e87e7554ee637af1351968159f4952f028f75604"
+checksum = "e5274423e17b7c9fc20b6e7e208532f9b19825d82dfd615708b70edd83df41f1"
 dependencies = [
- "ahash 0.8.6",
+ "ahash 0.8.11",
  "allocator-api2",
 ]
 
@@ -3844,7 +3878,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "06683b93020a07e3dbcf5f8c0f6d40080d725bea7936fc01ad345c01b97dc270"
 dependencies = [
  "base64 0.21.7",
- "bytes 1.5.0",
+ "bytes 1.6.0",
  "headers-core",
  "http 0.2.9",
  "httpdate",
@@ -4029,9 +4063,9 @@ checksum = "7f24254aa9a54b5c858eaee2f5bccdb46aaf0e486a595ed5fd8f86ba55232a70"
 
 [[package]]
 name = "hickory-proto"
-version = "0.24.0"
+version = "0.24.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "091a6fbccf4860009355e3efc52ff4acf37a63489aad7435372d44ceeb6fbbcf"
+checksum = "07698b8420e2f0d6447a436ba999ec85d8fbf2a398bbd737b82cac4a2e96e512"
 dependencies = [
  "async-trait",
  "cfg-if",
@@ -4090,12 +4124,23 @@ dependencies = [
 ]
 
 [[package]]
+name = "hostname"
+version = "0.4.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "f9c7c7c8ac16c798734b8a24560c1362120597c40d5e1459f09498f8f6c8f2ba"
+dependencies = [
+ "cfg-if",
+ "libc",
+ "windows",
+]
+
+[[package]]
 name = "http"
 version = "0.2.9"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "bd6effc99afb63425aff9b05836f029929e345a6148a14b7ecd5ab67af944482"
 dependencies = [
- "bytes 1.5.0",
+ "bytes 1.6.0",
  "fnv",
  "itoa",
 ]
@@ -4106,7 +4151,7 @@ version = "1.0.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "b32afd38673a8016f7c9ae69e5af41a58f81b1d31689040f2f1959594ce194ea"
 dependencies = [
- "bytes 1.5.0",
+ "bytes 1.6.0",
  "fnv",
  "itoa",
 ]
@@ -4117,7 +4162,7 @@ version = "0.4.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "d5f38f16d184e36f2408a55281cd658ecbd3ca05cce6d6510a176eca393e26d1"
 dependencies = [
- "bytes 1.5.0",
+ "bytes 1.6.0",
  "http 0.2.9",
  "pin-project-lite",
 ]
@@ -4128,7 +4173,7 @@ version = "1.0.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "1cac85db508abc24a2e48553ba12a996e87244a0395ce011e62b37158745d643"
 dependencies = [
- "bytes 1.5.0",
+ "bytes 1.6.0",
  "http 1.0.0",
 ]
 
@@ -4138,7 +4183,7 @@ version = "0.1.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "41cb79eb393015dadd30fc252023adb0b2400a0caee0fa2a077e6e21a551e840"
 dependencies = [
- "bytes 1.5.0",
+ "bytes 1.6.0",
  "futures-util",
  "http 1.0.0",
  "http-body 1.0.0",
@@ -4206,7 +4251,7 @@ version = "0.14.28"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "bf96e135eb83a2a8ddf766e426a841d8ddd7449d5f00d34ea02b41d2f19eef80"
 dependencies = [
- "bytes 1.5.0",
+ "bytes 1.6.0",
  "futures-channel",
  "futures-core",
  "futures-util",
@@ -4217,7 +4262,7 @@ dependencies = [
  "httpdate",
  "itoa",
  "pin-project-lite",
- "socket2 0.4.10",
+ "socket2 0.5.7",
  "tokio",
  "tower-service",
  "tracing 0.1.40",
@@ -4230,7 +4275,7 @@ version = "1.2.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "186548d73ac615b32a73aafe38fb4f56c0d340e110e5a200bcadbaf2e199263a"
 dependencies = [
- "bytes 1.5.0",
+ "bytes 1.6.0",
  "futures-channel",
  "futures-util",
  "http 1.0.0",
@@ -4282,7 +4327,7 @@ version = "0.9.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "ca815a891b24fdfb243fa3239c86154392b0953ee584aa1a2a1f66d20cbe75cc"
 dependencies = [
- "bytes 1.5.0",
+ "bytes 1.6.0",
  "futures 0.3.30",
  "headers",
  "http 0.2.9",
@@ -4303,7 +4348,7 @@ dependencies = [
  "http 0.2.9",
  "hyper 0.14.28",
  "log",
- "rustls 0.21.8",
+ "rustls 0.21.11",
  "rustls-native-certs 0.6.3",
  "tokio",
  "tokio-rustls 0.24.1",
@@ -4320,7 +4365,7 @@ dependencies = [
  "hyper 1.2.0",
  "hyper-util",
  "log",
- "rustls 0.22.2",
+ "rustls 0.22.4",
  "rustls-native-certs 0.7.0",
  "rustls-pki-types",
  "tokio",
@@ -4346,7 +4391,7 @@ version = "0.5.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "d6183ddfa99b85da61a140bea0efc93fdf56ceaa041b37d553518030827f9905"
 dependencies = [
- "bytes 1.5.0",
+ "bytes 1.6.0",
  "hyper 0.14.28",
  "native-tls",
  "tokio",
@@ -4359,14 +4404,14 @@ version = "0.1.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "ca38ef113da30126bbff9cd1705f9273e15d45498615d138b0c20279ac7a76aa"
 dependencies = [
- "bytes 1.5.0",
+ "bytes 1.6.0",
  "futures-channel",
  "futures-util",
  "http 1.0.0",
  "http-body 1.0.0",
  "hyper 1.2.0",
  "pin-project-lite",
- "socket2 0.5.6",
+ "socket2 0.5.7",
  "tokio",
  "tower",
  "tower-service",
@@ -4461,12 +4506,12 @@ dependencies = [
 
 [[package]]
 name = "indexmap"
-version = "2.2.5"
+version = "2.2.6"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7b0b929d511467233429c45a44ac1dcaa21ba0f5ba11e4879e6ed28ddb4f9df4"
+checksum = "168fb715dda47215e360912c096649d23d58bf392ac62f73919e831745e40f26"
 dependencies = [
  "equivalent",
- "hashbrown 0.14.3",
+ "hashbrown 0.14.5",
  "serde",
 ]
 
@@ -4486,9 +4531,9 @@ dependencies = [
 
 [[package]]
 name = "indoc"
-version = "2.0.4"
+version = "2.0.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1e186cfbae8084e513daff4240b4797e342f988cecda4fb6c939150f96315fd8"
+checksum = "b248f5224d1d606005e02c97f5aa4e88eeb230488bcc03bc9ca4d7991399f2b5"
 
 [[package]]
 name = "infer"
@@ -4573,7 +4618,7 @@ version = "0.3.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "b58db92f96b720de98181bbbe63c831e87005ab460c1bf306eb2622b4707997f"
 dependencies = [
- "socket2 0.5.6",
+ "socket2 0.5.7",
  "widestring 1.0.2",
  "windows-sys 0.48.0",
  "winreg",
@@ -4714,7 +4759,7 @@ dependencies = [
 name = "k8s-e2e-tests"
 version = "0.1.0"
 dependencies = [
- "env_logger 0.10.2",
+ "env_logger 0.11.3",
  "futures 0.3.30",
  "indoc",
  "k8s-openapi 0.16.0",
@@ -4734,7 +4779,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "6d9455388f4977de4d0934efa9f7d36296295537d774574113a20f6082de03da"
 dependencies = [
  "base64 0.13.1",
- "bytes 1.5.0",
+ "bytes 1.6.0",
  "chrono",
  "serde",
  "serde-value",
@@ -4748,7 +4793,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "cd990069640f9db34b3b0f7a1afc62a05ffaa3be9b66aa3c313f58346df7f788"
 dependencies = [
  "base64 0.21.7",
- "bytes 1.5.0",
+ "bytes 1.6.0",
  "chrono",
  "http 0.2.9",
  "percent-encoding",
@@ -4826,7 +4871,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "544339f1665488243f79080441cacb09c997746fd763342303e66eebb9d3ba13"
 dependencies = [
  "base64 0.20.0",
- "bytes 1.5.0",
+ "bytes 1.6.0",
  "chrono",
  "dirs-next",
  "either",
@@ -4845,7 +4890,7 @@ dependencies = [
  "secrecy",
  "serde",
  "serde_json",
- "serde_yaml 0.9.33",
+ "serde_yaml 0.9.34+deprecated",
  "thiserror",
  "tokio",
  "tokio-util",
@@ -4877,7 +4922,7 @@ version = "0.82.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "125331201e3073707ac79c294c89021faa76c84da3a566a3749a2a93d295c98a"
 dependencies = [
- "ahash 0.8.6",
+ "ahash 0.8.11",
  "async-trait",
  "backoff",
  "derivative",
@@ -4926,16 +4971,16 @@ checksum = "3f35c735096c0293d313e8f2a641627472b83d01b937177fe76e5e2708d31e0d"
 
 [[package]]
 name = "lapin"
-version = "2.3.1"
+version = "2.3.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5f3067a1fcfbc3fc46455809c023e69b8f6602463201010f4ae5a3b572adb9dc"
+checksum = "fae02c316a8a5922ce7518afa6b6c00e9a099f8e59587567e3331efdd11b8ceb"
 dependencies = [
  "amq-protocol",
  "async-global-executor-trait",
  "async-reactor-trait",
  "async-trait",
  "executor-trait",
- "flume 0.10.14",
+ "flume 0.11.0",
  "futures-core",
  "futures-io",
  "parking_lot",
@@ -4957,9 +5002,9 @@ dependencies = [
 
 [[package]]
 name = "libc"
-version = "0.2.153"
+version = "0.2.154"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9c198f91728a82281a64e1f4f9eeb25d82cb32a5de251c6bd1b5154d63a8e7bd"
+checksum = "ae743338b92ff9146ce83992f766a31066a91a8c84a45e0e9f21e7cf6de6d346"
 
 [[package]]
 name = "libflate"
@@ -5073,11 +5118,11 @@ checksum = "879777f0cc6f3646a044de60e4ab98c75617e3f9580f7a2032e6ad7ea0cd3054"
 name = "loki-logproto"
 version = "0.1.0"
 dependencies = [
- "bytes 1.5.0",
+ "bytes 1.6.0",
  "chrono",
- "prost 0.12.3",
- "prost-build 0.12.3",
- "prost-types 0.12.3",
+ "prost 0.12.4",
+ "prost-build 0.12.4",
+ "prost-types 0.12.4",
  "snap",
 ]
 
@@ -5087,7 +5132,7 @@ version = "0.12.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "d3262e75e648fce39813cb56ac41f3c3e3f65217ebf3844d818d1f9398cfb0dc"
 dependencies = [
- "hashbrown 0.14.3",
+ "hashbrown 0.14.5",
 ]
 
 [[package]]
@@ -5232,9 +5277,9 @@ dependencies = [
 
 [[package]]
 name = "memchr"
-version = "2.7.1"
+version = "2.7.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "523dc4f511e55ab87b694dc30d0f820d60906ef06413f93d4d7a1385599cc149"
+checksum = "6c8640c5d730cb13ebd907d8d04b52f55ac9a2eec55b440c8892f40d56c76c1d"
 
 [[package]]
 name = "memmap2"
@@ -5278,7 +5323,7 @@ version = "0.21.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "fde3af1a009ed76a778cb84fdef9e7dbbdf5775ae3e4cc1f434a6a307f6f76c5"
 dependencies = [
- "ahash 0.8.6",
+ "ahash 0.8.11",
  "metrics-macros",
  "portable-atomic",
 ]
@@ -5289,9 +5334,9 @@ version = "0.7.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "ddece26afd34c31585c74a4db0630c376df271c285d682d1e55012197830b6df"
 dependencies = [
- "proc-macro2 1.0.79",
- "quote 1.0.35",
- "syn 2.0.53",
+ "proc-macro2 1.0.81",
+ "quote 1.0.36",
+ "syn 2.0.60",
 ]
 
 [[package]]
@@ -5374,9 +5419,9 @@ dependencies = [
 
 [[package]]
 name = "mlua"
-version = "0.9.6"
+version = "0.9.7"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "868d02cb5eb97761bbf6bd6922c1c7a88b8ea252bbf43bd8350a0bf8497a1fc0"
+checksum = "6d9bed6bce296397a9d6a86f995dd10a547a4e6949825d45225906bdcbfe7367"
 dependencies = [
  "bstr 1.9.1",
  "mlua-sys",
@@ -5408,17 +5453,17 @@ dependencies = [
  "itertools 0.12.1",
  "once_cell",
  "proc-macro-error",
- "proc-macro2 1.0.79",
- "quote 1.0.35",
+ "proc-macro2 1.0.81",
+ "quote 1.0.36",
  "regex",
- "syn 2.0.53",
+ "syn 2.0.60",
 ]
 
 [[package]]
 name = "mock_instant"
-version = "0.3.2"
+version = "0.4.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9366861eb2a2c436c20b12c8dbec5f798cea6b47ad99216be0282942e2c81ea0"
+checksum = "6c356644192565524790740e4075307c2cfc26d04d2543fb8e3ab9ef43a115ec"
 
 [[package]]
 name = "mongodb"
@@ -5445,7 +5490,7 @@ dependencies = [
  "percent-encoding",
  "rand 0.8.5",
  "rustc_version_runtime",
- "rustls 0.21.8",
+ "rustls 0.21.11",
  "rustls-pemfile 1.0.3",
  "serde",
  "serde_bytes",
@@ -5473,7 +5518,7 @@ version = "3.0.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "a15d522be0a9c3e46fd2632e272d178f56387bdb5c9fbb3a36c649062e9b5219"
 dependencies = [
- "bytes 1.5.0",
+ "bytes 1.6.0",
  "encoding_rs",
  "futures-util",
  "http 1.0.0",
@@ -5605,7 +5650,7 @@ dependencies = [
  "data-encoding",
  "ed25519",
  "ed25519-dalek",
- "getrandom 0.2.12",
+ "getrandom 0.2.14",
  "log",
  "rand 0.8.5",
  "signatory",
@@ -5613,15 +5658,14 @@ dependencies = [
 
 [[package]]
 name = "nkeys"
-version = "0.4.0"
+version = "0.4.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6eafe79aeb8066a6f1f84dc44c03ae97403013e946bf0b13626468e0d5e26c6f"
+checksum = "bc522a19199a0795776406619aa6aa78e1e55690fbeb3181b8db5265fd0e89ce"
 dependencies = [
- "byteorder",
  "data-encoding",
  "ed25519",
  "ed25519-dalek",
- "getrandom 0.2.12",
+ "getrandom 0.2.14",
  "log",
  "rand 0.8.5",
  "signatory",
@@ -5847,8 +5891,8 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "dcbff9bc912032c62bf65ef1d5aea88983b420f4f839db1e9b0c281a25c9c799"
 dependencies = [
  "proc-macro-crate 1.3.1",
- "proc-macro2 1.0.79",
- "quote 1.0.35",
+ "proc-macro2 1.0.81",
+ "quote 1.0.36",
  "syn 1.0.109",
 ]
 
@@ -5859,9 +5903,9 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "96667db765a921f7b295ffee8b60472b686a51d4f21c2ee4ffdb94c7013b65a6"
 dependencies = [
  "proc-macro-crate 1.3.1",
- "proc-macro2 1.0.79",
- "quote 1.0.35",
- "syn 2.0.53",
+ "proc-macro2 1.0.81",
+ "quote 1.0.36",
+ "syn 2.0.60",
 ]
 
 [[package]]
@@ -5871,9 +5915,9 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "681030a937600a36906c185595136d26abfebb4aa9c65701cefcaf8578bb982b"
 dependencies = [
  "proc-macro-crate 2.0.0",
- "proc-macro2 1.0.79",
- "quote 1.0.35",
- "syn 2.0.53",
+ "proc-macro2 1.0.81",
+ "quote 1.0.36",
+ "syn 2.0.60",
 ]
 
 [[package]]
@@ -5899,7 +5943,7 @@ checksum = "c38841cdd844847e3e7c8d29cef9dcfed8877f8f56f9071f77843ecf3baf937f"
 dependencies = [
  "base64 0.13.1",
  "chrono",
- "getrandom 0.2.12",
+ "getrandom 0.2.14",
  "http 0.2.9",
  "rand 0.8.5",
  "reqwest",
@@ -5988,11 +6032,11 @@ dependencies = [
  "async-trait",
  "backon",
  "base64 0.21.7",
- "bytes 1.5.0",
+ "bytes 1.6.0",
  "chrono",
  "flagset",
  "futures 0.3.30",
- "getrandom 0.2.12",
+ "getrandom 0.2.14",
  "http 0.2.9",
  "log",
  "md-5",
@@ -6031,7 +6075,7 @@ dependencies = [
  "serde_json",
  "serde_path_to_error",
  "serde_plain",
- "serde_with 3.7.0",
+ "serde_with 3.8.1",
  "sha2",
  "subtle",
  "thiserror",
@@ -6059,9 +6103,9 @@ version = "0.1.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "a948666b637a0f465e8564c73e89d4dde00d72d4d473cc972f390fc3dcee7d9c"
 dependencies = [
- "proc-macro2 1.0.79",
- "quote 1.0.35",
- "syn 2.0.53",
+ "proc-macro2 1.0.81",
+ "quote 1.0.36",
+ "syn 2.0.60",
 ]
 
 [[package]]
@@ -6096,12 +6140,12 @@ dependencies = [
 name = "opentelemetry-proto"
 version = "0.1.0"
 dependencies = [
- "bytes 1.5.0",
+ "bytes 1.6.0",
  "chrono",
  "hex",
  "ordered-float 4.2.0",
- "prost 0.12.3",
- "prost-build 0.12.3",
+ "prost 0.12.4",
+ "prost-build 0.12.4",
  "tonic",
  "tonic-build 0.10.2",
  "vector-core",
@@ -6144,9 +6188,9 @@ dependencies = [
 
 [[package]]
 name = "os_info"
-version = "3.8.1"
+version = "3.8.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6cbb46d5d01695d7a1fb8be5f0d1968bd2b2b8ba1d1b3e7062ce2a0593e57af1"
+checksum = "ae99c7fa6dd38c7cafe1ec085e804f8f555a2f8659b0dbe03f1f9963a9b51092"
 dependencies = [
  "log",
  "windows-sys 0.52.0",
@@ -6224,9 +6268,9 @@ checksum = "bb813b8af86854136c6922af0598d719255ecb2179515e6e7730d468f05c9cae"
 
 [[package]]
 name = "parking_lot"
-version = "0.12.1"
+version = "0.12.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3742b2c103b9f06bc9fff0a37ff4912935851bee6d36f3c02bcc755bcfec228f"
+checksum = "7e4af0ca4f6caed20e900d564c242b8e5d4903fdacf31d3daf527b66fe6f42fb"
 dependencies = [
  "lock_api",
  "parking_lot_core",
@@ -6344,9 +6388,9 @@ checksum = "1381c29a877c6d34b8c176e734f35d7f7f5b3adaefe940cb4d1bb7af94678e2e"
 dependencies = [
  "pest",
  "pest_meta",
- "proc-macro2 1.0.79",
- "quote 1.0.35",
- "syn 2.0.53",
+ "proc-macro2 1.0.81",
+ "quote 1.0.36",
+ "syn 2.0.60",
 ]
 
 [[package]]
@@ -6367,7 +6411,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "e1d3afd2628e69da2be385eb6f2fd57c8ac7977ceeff6dc166ff1657b0e386a9"
 dependencies = [
  "fixedbitset",
- "indexmap 2.2.5",
+ "indexmap 2.2.6",
 ]
 
 [[package]]
@@ -6432,9 +6476,9 @@ version = "1.1.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "2f38a4412a78282e09a2cf38d195ea5420d15ba0602cb375210efbc877243965"
 dependencies = [
- "proc-macro2 1.0.79",
- "quote 1.0.35",
- "syn 2.0.53",
+ "proc-macro2 1.0.81",
+ "quote 1.0.36",
+ "syn 2.0.60",
 ]
 
 [[package]]
@@ -6582,9 +6626,9 @@ dependencies = [
 
 [[package]]
 name = "portable-atomic"
-version = "1.5.1"
+version = "1.6.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3bccab0e7fd7cc19f820a1c8c91720af652d0c88dc9664dd72aef2614f04af3b"
+checksum = "7170ef9988bc169ba16dd36a7fa041e5c4cbeb6a35b76d4c03daded371eae7c0"
 
 [[package]]
 name = "portpicker"
@@ -6614,7 +6658,7 @@ checksum = "49b6c5ef183cd3ab4ba005f1ca64c21e8bd97ce4699cfea9e8d9a2c4958ca520"
 dependencies = [
  "base64 0.21.7",
  "byteorder",
- "bytes 1.5.0",
+ "bytes 1.6.0",
  "fallible-iterator",
  "hmac",
  "md-5",
@@ -6630,7 +6674,7 @@ version = "0.2.6"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "8d2234cdee9408b523530a9b6d2d6b373d1db34f6a8e51dc03ded1828d7fb67c"
 dependencies = [
- "bytes 1.5.0",
+ "bytes 1.6.0",
  "chrono",
  "fallible-iterator",
  "postgres-protocol",
@@ -6700,7 +6744,7 @@ version = "0.1.25"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "6c8646e95016a7a6c4adea95bafa8a16baab64b583356217f2c85db4a39d9a86"
 dependencies = [
- "proc-macro2 1.0.79",
+ "proc-macro2 1.0.81",
  "syn 1.0.109",
 ]
 
@@ -6710,8 +6754,8 @@ version = "0.2.15"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "ae005bd773ab59b4725093fd7df83fd7892f7d8eafb48dbd7de6e024e4215f9d"
 dependencies = [
- "proc-macro2 1.0.79",
- "syn 2.0.53",
+ "proc-macro2 1.0.81",
+ "syn 2.0.60",
 ]
 
 [[package]]
@@ -6763,8 +6807,8 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "da25490ff9892aab3fcf7c36f08cfb902dd3e71ca0f9f9517bea02a73a5ce38c"
 dependencies = [
  "proc-macro-error-attr",
- "proc-macro2 1.0.79",
- "quote 1.0.35",
+ "proc-macro2 1.0.81",
+ "quote 1.0.36",
  "syn 1.0.109",
  "version_check",
 ]
@@ -6775,8 +6819,8 @@ version = "1.0.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "a1be40180e52ecc98ad80b184934baf3d0d29f979574e439af5a55274b35f869"
 dependencies = [
- "proc-macro2 1.0.79",
- "quote 1.0.35",
+ "proc-macro2 1.0.81",
+ "quote 1.0.36",
  "version_check",
 ]
 
@@ -6803,9 +6847,9 @@ dependencies = [
 
 [[package]]
 name = "proc-macro2"
-version = "1.0.79"
+version = "1.0.81"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e835ff2298f5721608eb1a980ecaee1aef2c132bf95ecc026a11b7bf3c01c02e"
+checksum = "3d1597b0c024618f09a9c3b8655b7e430397a36d23fdafec26d6965e9eec3eba"
 dependencies = [
  "unicode-ident",
 ]
@@ -6814,12 +6858,12 @@ dependencies = [
 name = "prometheus-parser"
 version = "0.1.0"
 dependencies = [
- "indexmap 2.2.5",
+ "indexmap 2.2.6",
  "nom",
  "num_enum 0.7.2",
- "prost 0.12.3",
- "prost-build 0.12.3",
- "prost-types 0.12.3",
+ "prost 0.12.4",
+ "prost-build 0.12.4",
+ "prost-types 0.12.4",
  "snafu 0.7.5",
  "vector-common",
 ]
@@ -6850,8 +6894,8 @@ version = "0.4.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "9cf16337405ca084e9c78985114633b6827711d22b9e6ef6c6c0d665eb3f0b6e"
 dependencies = [
- "proc-macro2 1.0.79",
- "quote 1.0.35",
+ "proc-macro2 1.0.81",
+ "quote 1.0.36",
  "syn 1.0.109",
 ]
 
@@ -6861,18 +6905,18 @@ version = "0.11.9"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "0b82eaa1d779e9a4bc1c3217db8ffbeabaae1dca241bf70183242128d48681cd"
 dependencies = [
- "bytes 1.5.0",
+ "bytes 1.6.0",
  "prost-derive 0.11.9",
 ]
 
 [[package]]
 name = "prost"
-version = "0.12.3"
+version = "0.12.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "146c289cda302b98a28d40c8b3b90498d6e526dd24ac2ecea73e4e491685b94a"
+checksum = "d0f5d036824e4761737860779c906171497f6d55681139d8312388f8fe398922"
 dependencies = [
- "bytes 1.5.0",
- "prost-derive 0.12.3",
+ "bytes 1.6.0",
+ "prost-derive 0.12.4",
 ]
 
 [[package]]
@@ -6881,7 +6925,7 @@ version = "0.11.9"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "119533552c9a7ffacc21e099c24a0ac8bb19c2a2a3f363de84cd9b844feab270"
 dependencies = [
- "bytes 1.5.0",
+ "bytes 1.6.0",
  "heck 0.4.1",
  "itertools 0.10.5",
  "lazy_static",
@@ -6899,24 +6943,23 @@ dependencies = [
 
 [[package]]
 name = "prost-build"
-version = "0.12.3"
+version = "0.12.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c55e02e35260070b6f716a2423c2ff1c3bb1642ddca6f99e1f26d06268a0e2d2"
+checksum = "80b776a1b2dc779f5ee0641f8ade0125bc1298dd41a9a0c16d8bd57b42d222b1"
 dependencies = [
- "bytes 1.5.0",
- "heck 0.4.1",
- "itertools 0.11.0",
+ "bytes 1.6.0",
+ "heck 0.5.0",
+ "itertools 0.12.1",
  "log",
  "multimap",
  "once_cell",
  "petgraph",
  "prettyplease 0.2.15",
- "prost 0.12.3",
- "prost-types 0.12.3",
+ "prost 0.12.4",
+ "prost-types 0.12.4",
  "regex",
- "syn 2.0.53",
+ "syn 2.0.60",
  "tempfile",
- "which 4.4.2",
 ]
 
 [[package]]
@@ -6927,34 +6970,34 @@ checksum = "e5d2d8d10f3c6ded6da8b05b5fb3b8a5082514344d56c9f871412d29b4e075b4"
 dependencies = [
  "anyhow",
  "itertools 0.10.5",
- "proc-macro2 1.0.79",
- "quote 1.0.35",
+ "proc-macro2 1.0.81",
+ "quote 1.0.36",
  "syn 1.0.109",
 ]
 
 [[package]]
 name = "prost-derive"
-version = "0.12.3"
+version = "0.12.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "efb6c9a1dd1def8e2124d17e83a20af56f1570d6c2d2bd9e266ccb768df3840e"
+checksum = "19de2de2a00075bf566bee3bd4db014b11587e84184d3f7a791bc17f1a8e9e48"
 dependencies = [
  "anyhow",
- "itertools 0.11.0",
- "proc-macro2 1.0.79",
- "quote 1.0.35",
- "syn 2.0.53",
+ "itertools 0.12.1",
+ "proc-macro2 1.0.81",
+ "quote 1.0.36",
+ "syn 2.0.60",
 ]
 
 [[package]]
 name = "prost-reflect"
-version = "0.13.0"
+version = "0.13.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9ae9372e3227f3685376a0836e5c248611eafc95a0be900d44bc6cdf225b700f"
+checksum = "6f5eec97d5d34bdd17ad2db2219aabf46b054c6c41bd5529767c9ce55be5898f"
 dependencies = [
- "base64 0.21.7",
+ "base64 0.22.1",
  "once_cell",
- "prost 0.12.3",
- "prost-types 0.12.3",
+ "prost 0.12.4",
+ "prost-types 0.12.4",
  "serde",
  "serde-value",
 ]
@@ -6970,11 +7013,11 @@ dependencies = [
 
 [[package]]
 name = "prost-types"
-version = "0.12.3"
+version = "0.12.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "193898f59edcf43c26227dcd4c8427f00d99d61e95dcde58dabd49fa291d470e"
+checksum = "3235c33eb02c1f1e212abdbe34c78b264b038fb58ca612664343271e36e55ffe"
 dependencies = [
- "prost 0.12.3",
+ "prost 0.12.4",
 ]
 
 [[package]]
@@ -7007,8 +7050,8 @@ version = "0.1.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "16b845dbfca988fa33db069c0e230574d15a3088f147a87b64c7589eb662c9ac"
 dependencies = [
- "proc-macro2 1.0.79",
- "quote 1.0.35",
+ "proc-macro2 1.0.81",
+ "quote 1.0.36",
  "syn 1.0.109",
 ]
 
@@ -7020,7 +7063,7 @@ checksum = "5d21c6a837986cf25d22ac5b951c267d95808f3c830ff009c2879fff259a0268"
 dependencies = [
  "async-trait",
  "bit-vec",
- "bytes 1.5.0",
+ "bytes 1.6.0",
  "chrono",
  "crc",
  "data-url",
@@ -7075,9 +7118,9 @@ dependencies = [
 
 [[package]]
 name = "quanta"
-version = "0.12.2"
+version = "0.12.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9ca0b7bac0b97248c40bb77288fc52029cf1459c0461ea1b05ee32ccf011de2c"
+checksum = "8e5167a477619228a0b284fac2674e3c388cba90631d7b7de620e6f1fcd08da5"
 dependencies = [
  "crossbeam-utils",
  "libc",
@@ -7121,8 +7164,8 @@ version = "1.0.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "b22a693222d716a9587786f37ac3f6b4faedb5b80c23914e7303ff5a1d8016e9"
 dependencies = [
- "proc-macro2 1.0.79",
- "quote 1.0.35",
+ "proc-macro2 1.0.81",
+ "quote 1.0.36",
  "syn 1.0.109",
 ]
 
@@ -7137,11 +7180,11 @@ dependencies = [
 
 [[package]]
 name = "quote"
-version = "1.0.35"
+version = "1.0.36"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "291ec9ab5efd934aaf503a6466c5d5251535d108ee747472c3977cc5acc868ef"
+checksum = "0fa76aaf39101c457836aec0ce2316dbdc3ab723cdda1c6bd4e6ad4208acaca7"
 dependencies = [
- "proc-macro2 1.0.79",
+ "proc-macro2 1.0.81",
 ]
 
 [[package]]
@@ -7225,7 +7268,7 @@ version = "0.6.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "ec0be4795e2f6a28069bec0b5ff3e2ac9bafc99e6a9a7dc3547996c5c816922c"
 dependencies = [
- "getrandom 0.2.12",
+ "getrandom 0.2.14",
 ]
 
 [[package]]
@@ -7258,9 +7301,9 @@ dependencies = [
 
 [[package]]
 name = "ratatui"
-version = "0.26.1"
+version = "0.26.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "bcb12f8fbf6c62614b0d56eb352af54f6a22410c3b079eb53ee93c7b97dd31d8"
+checksum = "a564a852040e82671dc50a37d88f3aa83bbc690dfc6844cfe7a2591620206a80"
 dependencies = [
  "bitflags 2.4.1",
  "cassowary",
@@ -7379,7 +7422,7 @@ checksum = "c580d9cbbe1d1b479e8d67cf9daf6a62c957e6846048408b80b43ac3f6af84cd"
 dependencies = [
  "arc-swap",
  "async-trait",
- "bytes 1.5.0",
+ "bytes 1.6.0",
  "combine 4.6.6",
  "futures 0.3.30",
  "futures-util",
@@ -7428,16 +7471,16 @@ version = "0.4.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "b033d837a7cf162d7993aded9304e30a83213c648b6e389db233191f891e5c2b"
 dependencies = [
- "getrandom 0.2.12",
+ "getrandom 0.2.14",
  "redox_syscall 0.2.16",
  "thiserror",
 ]
 
 [[package]]
 name = "regex"
-version = "1.10.3"
+version = "1.10.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b62dbe01f0b06f9d8dc7d49e05a0785f153b00b2c227856282f671e0318c9b15"
+checksum = "c117dbdfde9c8308975b6a18d71f3f385c89461f7b3fb054288ecf2a2058ba4c"
 dependencies = [
  "aho-corasick",
  "memchr",
@@ -7511,7 +7554,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "78bf93c4af7a8bb7d879d51cebe797356ff10ae8516ace542b5182d9dcac10b2"
 dependencies = [
  "base64 0.21.7",
- "bytes 1.5.0",
+ "bytes 1.6.0",
  "encoding_rs",
  "futures-core",
  "futures-util",
@@ -7525,11 +7568,12 @@ dependencies = [
  "js-sys",
  "log",
  "mime",
+ "mime_guess",
  "native-tls",
  "once_cell",
  "percent-encoding",
  "pin-project-lite",
- "rustls 0.21.8",
+ "rustls 0.21.11",
  "rustls-pemfile 1.0.3",
  "serde",
  "serde_json",
@@ -7556,7 +7600,7 @@ version = "0.7.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "52e44394d2086d010551b14b53b1f24e31647570cd1deb0379e2c21b329aba00"
 dependencies = [
- "hostname",
+ "hostname 0.3.1",
  "quick-error",
 ]
 
@@ -7583,7 +7627,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "fb0205304757e5d899b9c2e448b867ffd03ae7f988002e47cd24954391394d0b"
 dependencies = [
  "cc",
- "getrandom 0.2.12",
+ "getrandom 0.2.14",
  "libc",
  "spin 0.9.8",
  "untrusted",
@@ -7598,7 +7642,7 @@ checksum = "5cba464629b3394fc4dbc6f940ff8f5b4ff5c7aef40f29166fd4ad12acbc99c0"
 dependencies = [
  "bitvec",
  "bytecheck",
- "bytes 1.5.0",
+ "bytes 1.6.0",
  "hashbrown 0.12.3",
  "ptr_meta",
  "rend",
@@ -7614,8 +7658,8 @@ version = "0.7.44"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "a7dddfff8de25e6f62b9d64e6e432bf1c6736c57d20323e15ee10435fbda7c65"
 dependencies = [
- "proc-macro2 1.0.79",
- "quote 1.0.35",
+ "proc-macro2 1.0.81",
+ "quote 1.0.36",
  "syn 1.0.109",
 ]
 
@@ -7627,9 +7671,9 @@ checksum = "3582f63211428f83597b51b2ddb88e2a91a9d52d12831f9d08f5e624e8977422"
 
 [[package]]
 name = "rmp"
-version = "0.8.12"
+version = "0.8.14"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7f9860a6cc38ed1da53456442089b4dfa35e7cedaa326df63017af88385e6b20"
+checksum = "228ed7c16fa39782c3b3468e974aec2795e9089153cd08ee2e9aefb3613334c4"
 dependencies = [
  "byteorder",
  "num-traits",
@@ -7638,9 +7682,9 @@ dependencies = [
 
 [[package]]
 name = "rmp-serde"
-version = "1.1.2"
+version = "1.3.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "bffea85eea980d8a74453e5d02a8d93028f3c34725de143085a844ebe953258a"
+checksum = "52e599a477cf9840e92f2cde9a7189e67b42c57532749bf90aea6ec10facd4db"
 dependencies = [
  "byteorder",
  "rmp",
@@ -7649,9 +7693,9 @@ dependencies = [
 
 [[package]]
 name = "rmpv"
-version = "1.0.1"
+version = "1.3.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2e0e0214a4a2b444ecce41a4025792fc31f77c7bb89c46d253953ea8c65701ec"
+checksum = "58450723cd9ee93273ce44a20b6ec4efe17f8ed2e3631474387bfdecf18bb2a9"
 dependencies = [
  "num-traits",
  "rmp",
@@ -7661,9 +7705,13 @@ dependencies = [
 
 [[package]]
 name = "roaring"
-version = "0.10.3"
+version = "0.10.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a1c77081a55300e016cb86f2864415b7518741879db925b8d488a0ee0d2da6bf"
+checksum = "b26f4c25a604fcb3a1bcd96dd6ba37c93840de95de8198d94c0d571a74a804d1"
+dependencies = [
+ "bytemuck",
+ "byteorder",
+]
 
 [[package]]
 name = "roxmltree"
@@ -7693,9 +7741,9 @@ dependencies = [
 
 [[package]]
 name = "rstest"
-version = "0.18.2"
+version = "0.19.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "97eeab2f3c0a199bc4be135c36c924b6590b88c377d416494288c14f2db30199"
+checksum = "9d5316d2a1479eeef1ea21e7f9ddc67c191d497abc8fc3ba2467857abbb68330"
 dependencies = [
  "futures 0.3.30",
  "futures-timer",
@@ -7705,18 +7753,18 @@ dependencies = [
 
 [[package]]
 name = "rstest_macros"
-version = "0.18.2"
+version = "0.19.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d428f8247852f894ee1be110b375111b586d4fa431f6c46e64ba5a0dcccbe605"
+checksum = "04a9df72cc1f67020b0d63ad9bfe4a323e459ea7eb68e03bd9824db49f9a4c25"
 dependencies = [
  "cfg-if",
  "glob",
- "proc-macro2 1.0.79",
- "quote 1.0.35",
+ "proc-macro2 1.0.81",
+ "quote 1.0.36",
  "regex",
  "relative-path",
  "rustc_version 0.4.0",
- "syn 2.0.53",
+ "syn 2.0.60",
  "unicode-ident",
 ]
 
@@ -7726,7 +7774,7 @@ version = "0.24.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "e1568e15fab2d546f940ed3a21f48bbbd1c494c90c99c4481339364a497f94a9"
 dependencies = [
- "bytes 1.5.0",
+ "bytes 1.6.0",
  "flume 0.11.0",
  "futures-util",
  "log",
@@ -7746,7 +7794,7 @@ checksum = "06676aec5ccb8fc1da723cc8c0f9a46549f21ebb8753d3915c6c41db1e7f1dc4"
 dependencies = [
  "arrayvec",
  "borsh",
- "bytes 1.5.0",
+ "bytes 1.6.0",
  "num-traits",
  "rand 0.8.5",
  "rkyv",
@@ -7823,9 +7871,9 @@ dependencies = [
 
 [[package]]
 name = "rustls"
-version = "0.21.8"
+version = "0.21.11"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "446e14c5cda4f3f30fe71863c34ec70f5ac79d6087097ad0bb433e1be5edf04c"
+checksum = "7fecbfb7b1444f477b345853b1fce097a2c6fb637b2bfb87e6bc5db0f043fae4"
 dependencies = [
  "log",
  "ring",
@@ -7835,9 +7883,9 @@ dependencies = [
 
 [[package]]
 name = "rustls"
-version = "0.22.2"
+version = "0.22.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e87c9956bd9807afa1f77e0f7594af32566e830e088a5576d27c5b6f30f49d41"
+checksum = "bf4ef73721ac7bcd79b2b315da7779d8fc09718c6b3d2d1b2d94850eb8c18432"
 dependencies = [
  "log",
  "ring",
@@ -8064,9 +8112,9 @@ dependencies = [
 
 [[package]]
 name = "security-framework"
-version = "2.9.2"
+version = "2.10.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "05b64fb303737d99b81884b2c63433e9ae28abebe5eb5045dcdd175dc2ecf4de"
+checksum = "770452e37cad93e0a50d5abc3990d2bc351c36d0328f86cefec2f2fb206eaef6"
 dependencies = [
  "bitflags 1.3.2",
  "core-foundation",
@@ -8077,9 +8125,9 @@ dependencies = [
 
 [[package]]
 name = "security-framework-sys"
-version = "2.9.1"
+version = "2.10.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e932934257d3b408ed8f30db49d85ea163bfe74961f017f405b025af298f0c7a"
+checksum = "41f3cc463c0ef97e11c3461a9d3787412d30e8e7eb907c79180c4a57bf7c04ef"
 dependencies = [
  "core-foundation-sys",
  "libc",
@@ -8111,9 +8159,9 @@ checksum = "388a1df253eca08550bef6c72392cfe7c30914bf41df5269b68cbd6ff8f570a3"
 
 [[package]]
 name = "serde"
-version = "1.0.197"
+version = "1.0.200"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3fb1c873e1b9b056a4dc4c0c198b24c3ffa059243875552b2bd0933b1aee4ce2"
+checksum = "ddc6f9cc94d67c0e21aaf7eda3a010fd3af78ebf6e096aa6e2e13c79749cce4f"
 dependencies = [
  "serde_derive",
 ]
@@ -8159,13 +8207,13 @@ dependencies = [
 
 [[package]]
 name = "serde_derive"
-version = "1.0.197"
+version = "1.0.200"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7eb0b34b42edc17f6b7cac84a52a1c5f0e1bb2227e997ca9011ea3dd34e8610b"
+checksum = "856f046b9400cee3c8c94ed572ecdb752444c24528c035cd35882aad6f492bcb"
 dependencies = [
- "proc-macro2 1.0.79",
- "quote 1.0.35",
- "syn 2.0.53",
+ "proc-macro2 1.0.81",
+ "quote 1.0.36",
+ "syn 2.0.60",
 ]
 
 [[package]]
@@ -8174,18 +8222,18 @@ version = "0.29.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "330f01ce65a3a5fe59a60c82f3c9a024b573b8a6e875bd233fe5f934e71d54e3"
 dependencies = [
- "proc-macro2 1.0.79",
- "quote 1.0.35",
- "syn 2.0.53",
+ "proc-macro2 1.0.81",
+ "quote 1.0.36",
+ "syn 2.0.60",
 ]
 
 [[package]]
 name = "serde_json"
-version = "1.0.114"
+version = "1.0.116"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c5f09b1bd632ef549eaa9f60a1f8de742bdbc698e6cee2095fc84dde5f549ae0"
+checksum = "3e17db7126d17feb94eb3fad46bf1a96b034e8aacbc2e775fe81505f8b0b2813"
 dependencies = [
- "indexmap 2.2.5",
+ "indexmap 2.2.6",
  "itoa",
  "ryu",
  "serde",
@@ -8236,9 +8284,9 @@ version = "0.1.17"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "3081f5ffbb02284dda55132aa26daecedd7372a42417bbbab6f14ab7d6bb9145"
 dependencies = [
- "proc-macro2 1.0.79",
- "quote 1.0.35",
- "syn 2.0.53",
+ "proc-macro2 1.0.81",
+ "quote 1.0.36",
+ "syn 2.0.60",
 ]
 
 [[package]]
@@ -8274,19 +8322,19 @@ dependencies = [
 
 [[package]]
 name = "serde_with"
-version = "3.7.0"
+version = "3.8.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ee80b0e361bbf88fd2f6e242ccd19cfda072cb0faa6ae694ecee08199938569a"
+checksum = "0ad483d2ab0149d5a5ebcd9972a3852711e0153d863bf5a5d0391d28883c4a20"
 dependencies = [
- "base64 0.21.7",
+ "base64 0.22.1",
  "chrono",
  "hex",
  "indexmap 1.9.3",
- "indexmap 2.2.5",
+ "indexmap 2.2.6",
  "serde",
  "serde_derive",
  "serde_json",
- "serde_with_macros 3.7.0",
+ "serde_with_macros 3.8.1",
  "time",
 ]
 
@@ -8297,21 +8345,21 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "e182d6ec6f05393cc0e5ed1bf81ad6db3a8feedf8ee515ecdd369809bcce8082"
 dependencies = [
  "darling 0.13.4",
- "proc-macro2 1.0.79",
- "quote 1.0.35",
+ "proc-macro2 1.0.81",
+ "quote 1.0.36",
  "syn 1.0.109",
 ]
 
 [[package]]
 name = "serde_with_macros"
-version = "3.7.0"
+version = "3.8.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6561dc161a9224638a31d876ccdfefbc1df91d3f3a8342eddb35f055d48c7655"
+checksum = "65569b702f41443e8bc8bbb1c5779bd0450bbe723b56198980e80ec45780bce2"
 dependencies = [
  "darling 0.20.8",
- "proc-macro2 1.0.79",
- "quote 1.0.35",
- "syn 2.0.53",
+ "proc-macro2 1.0.81",
+ "quote 1.0.36",
+ "syn 2.0.60",
 ]
 
 [[package]]
@@ -8328,11 +8376,11 @@ dependencies = [
 
 [[package]]
 name = "serde_yaml"
-version = "0.9.33"
+version = "0.9.34+deprecated"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a0623d197252096520c6f2a5e1171ee436e5af99a5d7caa2891e55e61950e6d9"
+checksum = "6a8b1a1a2ebf674015cc02edccce75287f1a0130d394307b36743c2f5d504b47"
 dependencies = [
- "indexmap 2.2.5",
+ "indexmap 2.2.6",
  "itoa",
  "ryu",
  "serde",
@@ -8576,8 +8624,8 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "990079665f075b699031e9c08fd3ab99be5029b96f3b78dc0709e8f77e4efebf"
 dependencies = [
  "heck 0.4.1",
- "proc-macro2 1.0.79",
- "quote 1.0.35",
+ "proc-macro2 1.0.81",
+ "quote 1.0.36",
  "syn 1.0.109",
 ]
 
@@ -8588,9 +8636,9 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "080c44971436b1af15d6f61ddd8b543995cf63ab8e677d46b00cc06f4ef267a0"
 dependencies = [
  "heck 0.4.1",
- "proc-macro2 1.0.79",
- "quote 1.0.35",
- "syn 2.0.53",
+ "proc-macro2 1.0.81",
+ "quote 1.0.36",
+ "syn 2.0.60",
 ]
 
 [[package]]
@@ -8611,9 +8659,9 @@ dependencies = [
 
 [[package]]
 name = "socket2"
-version = "0.5.6"
+version = "0.5.7"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "05ffd9c0a93b7543e062e759284fcf5f5e3b098501104bfbdde4d404db792871"
+checksum = "ce305eb0b4296696835b71df73eb912e0f1ffd2556a501fcede6e0c50349191c"
 dependencies = [
  "libc",
  "windows-sys 0.52.0",
@@ -8635,6 +8683,15 @@ dependencies = [
 ]
 
 [[package]]
+name = "spinning_top"
+version = "0.3.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "d96d2d1d716fb500937168cc09353ffdc7a012be8475ac7308e1bdf0e3923300"
+dependencies = [
+ "lock_api",
+]
+
+[[package]]
 name = "spki"
 version = "0.7.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -8646,12 +8703,12 @@ dependencies = [
 
 [[package]]
 name = "stability"
-version = "0.1.1"
+version = "0.2.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ebd1b177894da2a2d9120208c3386066af06a488255caabc5de8ddca22dbc3ce"
+checksum = "2ff9eaf853dec4c8802325d8b6d3dffa86cc707fd7a1a4cdbf416e13b061787a"
 dependencies = [
- "quote 1.0.35",
- "syn 1.0.109",
+ "quote 1.0.36",
+ "syn 2.0.60",
 ]
 
 [[package]]
@@ -8747,8 +8804,8 @@ checksum = "dcb5ae327f9cc13b68763b5749770cb9e048a99bd9dfdfa58d0cf05d5f64afe0"
 dependencies = [
  "heck 0.3.3",
  "proc-macro-error",
- "proc-macro2 1.0.79",
- "quote 1.0.35",
+ "proc-macro2 1.0.81",
+ "quote 1.0.36",
  "syn 1.0.109",
 ]
 
@@ -8774,10 +8831,10 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "23dc1fa9ac9c169a78ba62f0b841814b7abae11bdd047b9c58f893439e309ea0"
 dependencies = [
  "heck 0.4.1",
- "proc-macro2 1.0.79",
- "quote 1.0.35",
+ "proc-macro2 1.0.81",
+ "quote 1.0.36",
  "rustversion",
- "syn 2.0.53",
+ "syn 2.0.60",
 ]
 
 [[package]]
@@ -8787,10 +8844,10 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "7a3417fc93d76740d974a01654a09777cb500428cc874ca9f45edfe0c4d4cd18"
 dependencies = [
  "heck 0.4.1",
- "proc-macro2 1.0.79",
- "quote 1.0.35",
+ "proc-macro2 1.0.81",
+ "quote 1.0.36",
  "rustversion",
- "syn 2.0.53",
+ "syn 2.0.60",
 ]
 
 [[package]]
@@ -8826,19 +8883,19 @@ version = "1.0.109"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "72b64191b275b66ffe2469e8af2c1cfe3bafa67b529ead792a6d0160888b4237"
 dependencies = [
- "proc-macro2 1.0.79",
- "quote 1.0.35",
+ "proc-macro2 1.0.81",
+ "quote 1.0.36",
  "unicode-ident",
 ]
 
 [[package]]
 name = "syn"
-version = "2.0.53"
+version = "2.0.60"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7383cd0e49fff4b6b90ca5670bfd3e9d6a733b3f90c686605aa7eec8c4996032"
+checksum = "909518bc7b1c9b779f1bbf07f2929d35af9f0f37e47c6e9ef7f9dddc1e1821f3"
 dependencies = [
- "proc-macro2 1.0.79",
- "quote 1.0.35",
+ "proc-macro2 1.0.81",
+ "quote 1.0.36",
  "unicode-ident",
 ]
 
@@ -8849,9 +8906,9 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "1329189c02ff984e9736652b1631330da25eaa6bc639089ed4915d25446cbe7b"
 dependencies = [
  "proc-macro-error",
- "proc-macro2 1.0.79",
- "quote 1.0.35",
- "syn 2.0.53",
+ "proc-macro2 1.0.81",
+ "quote 1.0.36",
+ "syn 2.0.60",
 ]
 
 [[package]]
@@ -8862,12 +8919,12 @@ checksum = "2047c6ded9c721764247e62cd3b03c09ffc529b2ba5b10ec482ae507a4a70160"
 
 [[package]]
 name = "syslog"
-version = "6.1.0"
+version = "6.1.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7434e95bcccce1215d30f4bf84fe8c00e8de1b9be4fb736d747ca53d36e7f96f"
+checksum = "dfc7e95b5b795122fafe6519e27629b5ab4232c73ebb2428f568e82b1a457ad3"
 dependencies = [
  "error-chain",
- "hostname",
+ "hostname 0.3.1",
  "libc",
  "log",
  "time",
@@ -8929,9 +8986,9 @@ dependencies = [
 
 [[package]]
 name = "temp-dir"
-version = "0.1.12"
+version = "0.1.13"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "dd16aa9ffe15fe021c6ee3766772132c6e98dfa395a167e16864f61a9cfb71d6"
+checksum = "1f227968ec00f0e5322f9b8173c7a0cbcff6181a0a5b28e9892491c286277231"
 
 [[package]]
 name = "tempfile"
@@ -9004,22 +9061,22 @@ dependencies = [
 
 [[package]]
 name = "thiserror"
-version = "1.0.58"
+version = "1.0.59"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "03468839009160513471e86a034bb2c5c0e4baae3b43f79ffc55c4a5427b3297"
+checksum = "f0126ad08bff79f29fc3ae6a55cc72352056dfff61e3ff8bb7129476d44b23aa"
 dependencies = [
  "thiserror-impl",
 ]
 
 [[package]]
 name = "thiserror-impl"
-version = "1.0.58"
+version = "1.0.59"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c61f3ba182994efc43764a46c018c347bc492c79f024e705f46567b418f6d4f7"
+checksum = "d1cd413b5d558b4c5bf3680e324a6fa5014e7b7c067a51e69dbdf47eb7148b66"
 dependencies = [
- "proc-macro2 1.0.79",
- "quote 1.0.35",
- "syn 2.0.53",
+ "proc-macro2 1.0.81",
+ "quote 1.0.36",
+ "syn 2.0.60",
 ]
 
 [[package]]
@@ -9120,19 +9177,19 @@ checksum = "1f3ccbac311fea05f86f61904b462b55fb3df8837a366dfc601a0161d0532f20"
 
 [[package]]
 name = "tokio"
-version = "1.36.0"
+version = "1.37.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "61285f6515fa018fb2d1e46eb21223fff441ee8db5d0f1435e8ab4f5cdb80931"
+checksum = "1adbebffeca75fcfd058afa480fb6c0b81e165a0323f9c9d39c9697e37c46787"
 dependencies = [
  "backtrace",
- "bytes 1.5.0",
+ "bytes 1.6.0",
  "libc",
  "mio",
  "num_cpus",
  "parking_lot",
  "pin-project-lite",
  "signal-hook-registry",
- "socket2 0.5.6",
+ "socket2 0.5.7",
  "tokio-macros",
  "tracing 0.1.40",
  "windows-sys 0.48.0",
@@ -9165,9 +9222,9 @@ version = "2.2.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "5b8a1e28f2deaa14e508979454cb3a223b10b938b45af148bc0986de36f1923b"
 dependencies = [
- "proc-macro2 1.0.79",
- "quote 1.0.35",
- "syn 2.0.53",
+ "proc-macro2 1.0.81",
+ "quote 1.0.36",
+ "syn 2.0.60",
 ]
 
 [[package]]
@@ -9200,7 +9257,7 @@ checksum = "d340244b32d920260ae7448cb72b6e238bddc3d4f7603394e7dd46ed8e48f5b8"
 dependencies = [
  "async-trait",
  "byteorder",
- "bytes 1.5.0",
+ "bytes 1.6.0",
  "fallible-iterator",
  "futures-channel",
  "futures-util",
@@ -9212,7 +9269,7 @@ dependencies = [
  "postgres-protocol",
  "postgres-types",
  "rand 0.8.5",
- "socket2 0.5.6",
+ "socket2 0.5.7",
  "tokio",
  "tokio-util",
  "whoami",
@@ -9235,7 +9292,7 @@ version = "0.24.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "c28327cf380ac148141087fbfb9de9d7bd4e84ab5d2c28fbc911d753de8a7081"
 dependencies = [
- "rustls 0.21.8",
+ "rustls 0.21.11",
  "tokio",
 ]
 
@@ -9245,7 +9302,7 @@ version = "0.25.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "775e0c0f0adb3a2f22a00c4745d728b479985fc15ee7ca6a2608388c5569860f"
 dependencies = [
- "rustls 0.22.2",
+ "rustls 0.22.4",
  "rustls-pki-types",
  "tokio",
 ]
@@ -9269,7 +9326,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "2468baabc3311435b55dd935f702f42cd1b8abb7e754fb7dfb16bd36aa88f9f7"
 dependencies = [
  "async-stream",
- "bytes 1.5.0",
+ "bytes 1.6.0",
  "futures-core",
  "tokio",
  "tokio-stream",
@@ -9283,9 +9340,21 @@ checksum = "212d5dcb2a1ce06d81107c3d0ffa3121fe974b73f068c8282cb1c32328113b6c"
 dependencies = [
  "futures-util",
  "log",
- "rustls 0.21.8",
+ "rustls 0.21.11",
+ "tokio",
+ "tungstenite 0.20.1",
+]
+
+[[package]]
+name = "tokio-tungstenite"
+version = "0.21.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "c83b561d025642014097b66e6c1bb422783339e0909e4429cde4749d1990bc38"
+dependencies = [
+ "futures-util",
+ "log",
  "tokio",
- "tungstenite",
+ "tungstenite 0.21.0",
 ]
 
 [[package]]
@@ -9293,7 +9362,7 @@ name = "tokio-util"
 version = "0.7.8"
 source = "git+https://github.com/vectordotdev/tokio?branch=tokio-util-0.7.8-framed-read-continue-on-error#3747655f8f0443e13fe20da3f613ea65c23347c2"
 dependencies = [
- "bytes 1.5.0",
+ "bytes 1.6.0",
  "futures-core",
  "futures-io",
  "futures-sink",
@@ -9330,7 +9399,7 @@ version = "0.19.15"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "1b5bb770da30e5cbfde35a2d7b9b8a2c4b8ef89548a7a6aeab5c9a576e3e7421"
 dependencies = [
- "indexmap 2.2.5",
+ "indexmap 2.2.6",
  "toml_datetime",
  "winnow 0.5.18",
 ]
@@ -9341,7 +9410,7 @@ version = "0.20.7"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "70f427fce4d84c72b5b732388bf4a9f4531b53f74e2887e3ecb2481f68f66d81"
 dependencies = [
- "indexmap 2.2.5",
+ "indexmap 2.2.6",
  "toml_datetime",
  "winnow 0.5.18",
 ]
@@ -9352,7 +9421,7 @@ version = "0.22.8"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "c12219811e0c1ba077867254e5ad62ee2c9c190b0d957110750ac0cda1ae96cd"
 dependencies = [
- "indexmap 2.2.5",
+ "indexmap 2.2.6",
  "serde",
  "serde_spanned",
  "toml_datetime",
@@ -9369,7 +9438,7 @@ dependencies = [
  "async-trait",
  "axum",
  "base64 0.21.7",
- "bytes 1.5.0",
+ "bytes 1.6.0",
  "flate2",
  "h2 0.3.26",
  "http 0.2.9",
@@ -9378,8 +9447,8 @@ dependencies = [
  "hyper-timeout",
  "percent-encoding",
  "pin-project",
- "prost 0.12.3",
- "rustls 0.21.8",
+ "prost 0.12.4",
+ "rustls 0.21.11",
  "rustls-native-certs 0.6.3",
  "rustls-pemfile 1.0.3",
  "tokio",
@@ -9398,9 +9467,9 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "a6fdaae4c2c638bb70fe42803a26fbd6fc6ac8c72f5c59f67ecc2a2dcabf4b07"
 dependencies = [
  "prettyplease 0.1.25",
- "proc-macro2 1.0.79",
+ "proc-macro2 1.0.81",
  "prost-build 0.11.9",
- "quote 1.0.35",
+ "quote 1.0.36",
  "syn 1.0.109",
 ]
 
@@ -9411,10 +9480,10 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "9d021fc044c18582b9a2408cd0dd05b1596e3ecdb5c4df822bb0183545683889"
 dependencies = [
  "prettyplease 0.2.15",
- "proc-macro2 1.0.79",
- "prost-build 0.12.3",
- "quote 1.0.35",
- "syn 2.0.53",
+ "proc-macro2 1.0.81",
+ "prost-build 0.12.4",
+ "quote 1.0.36",
+ "syn 2.0.60",
 ]
 
 [[package]]
@@ -9446,7 +9515,7 @@ dependencies = [
  "async-compression",
  "base64 0.21.7",
  "bitflags 2.4.1",
- "bytes 1.5.0",
+ "bytes 1.6.0",
  "futures-core",
  "futures-util",
  "http 0.2.9",
@@ -9515,9 +9584,9 @@ version = "0.1.27"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "34704c8d6ebcbc939824180af020566b01a7c01f80641264eba0999f6c2b6be7"
 dependencies = [
- "proc-macro2 1.0.79",
- "quote 1.0.35",
- "syn 2.0.53",
+ "proc-macro2 1.0.81",
+ "quote 1.0.36",
+ "syn 2.0.60",
 ]
 
 [[package]]
@@ -9701,7 +9770,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "9e3dac10fd62eaf6617d3a904ae222845979aec67c615d1c842b4002c7666fb9"
 dependencies = [
  "byteorder",
- "bytes 1.5.0",
+ "bytes 1.6.0",
  "data-encoding",
  "http 0.2.9",
  "httparse",
@@ -9714,6 +9783,25 @@ dependencies = [
 ]
 
 [[package]]
+name = "tungstenite"
+version = "0.21.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "9ef1a641ea34f399a848dea702823bbecfb4c486f911735368f1f137cb8257e1"
+dependencies = [
+ "byteorder",
+ "bytes 1.6.0",
+ "data-encoding",
+ "http 1.0.0",
+ "httparse",
+ "log",
+ "rand 0.8.5",
+ "sha1",
+ "thiserror",
+ "url",
+ "utf-8",
+]
+
+[[package]]
 name = "twox-hash"
 version = "1.6.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -9729,8 +9817,8 @@ version = "0.10.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "89851716b67b937e393b3daa8423e67ddfc4bbbf1654bcf05488e95e0828db0c"
 dependencies = [
- "proc-macro2 1.0.79",
- "quote 1.0.35",
+ "proc-macro2 1.0.81",
+ "quote 1.0.36",
  "syn 1.0.109",
 ]
 
@@ -9749,9 +9837,9 @@ version = "0.16.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "f03ca4cb38206e2bef0700092660bb74d696f808514dae47fa1467cbfe26e96e"
 dependencies = [
- "proc-macro2 1.0.79",
- "quote 1.0.35",
- "syn 2.0.53",
+ "proc-macro2 1.0.81",
+ "quote 1.0.36",
+ "syn 2.0.60",
 ]
 
 [[package]]
@@ -9779,9 +9867,9 @@ version = "0.2.16"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "ac73887f47b9312552aa90ef477927ff014d63d1920ca8037c6c1951eab64bb1"
 dependencies = [
- "proc-macro2 1.0.79",
- "quote 1.0.35",
- "syn 2.0.53",
+ "proc-macro2 1.0.81",
+ "quote 1.0.36",
+ "syn 2.0.60",
 ]
 
 [[package]]
@@ -9958,7 +10046,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "a183cf7feeba97b4dd1c0d46788634f6221d87fa961b305bed08c851829efcc0"
 dependencies = [
  "atomic",
- "getrandom 0.2.12",
+ "getrandom 0.2.14",
  "rand 0.8.5",
  "serde",
  "wasm-bindgen",
@@ -9983,7 +10071,7 @@ dependencies = [
  "anyhow",
  "cached",
  "chrono",
- "clap 4.5.3",
+ "clap 4.5.4",
  "clap-verbosity-flag",
  "clap_complete",
  "confy",
@@ -9991,7 +10079,7 @@ dependencies = [
  "dunce",
  "glob",
  "hex",
- "indexmap 2.2.5",
+ "indexmap 2.2.6",
  "indicatif",
  "itertools 0.12.1",
  "log",
@@ -10003,7 +10091,7 @@ dependencies = [
  "reqwest",
  "serde",
  "serde_json",
- "serde_yaml 0.9.33",
+ "serde_yaml 0.9.34+deprecated",
  "sha2",
  "tempfile",
  "toml",
@@ -10017,7 +10105,7 @@ checksum = "f1bddf1187be692e79c5ffeab891132dfb0f236ed36a43c7ed39f1165ee20191"
 
 [[package]]
 name = "vector"
-version = "0.37.1"
+version = "0.38.0"
 dependencies = [
  "apache-avro",
  "approx",
@@ -10038,6 +10126,7 @@ dependencies = [
  "aws-sdk-firehose",
  "aws-sdk-kinesis",
  "aws-sdk-s3",
+ "aws-sdk-secretsmanager",
  "aws-sdk-sns",
  "aws-sdk-sqs",
  "aws-sdk-sts",
@@ -10053,20 +10142,21 @@ dependencies = [
  "azure_identity",
  "azure_storage",
  "azure_storage_blobs",
- "base64 0.22.0",
+ "base64 0.22.1",
  "bloomy",
  "bollard",
- "bytes 1.5.0",
+ "bytes 1.6.0",
  "bytesize",
  "chrono",
  "chrono-tz",
  "cidr-utils 0.6.1",
- "clap 4.5.3",
+ "clap 4.5.4",
  "colored",
  "console-subscriber",
  "criterion",
  "crossterm",
  "csv",
+ "databend-client",
  "derivative",
  "dirs-next",
  "dnsmsg-parser",
@@ -10085,19 +10175,19 @@ dependencies = [
  "grok",
  "h2 0.4.4",
  "hash_hasher",
- "hashbrown 0.14.3",
+ "hashbrown 0.14.5",
  "headers",
  "heim",
  "hex",
  "hickory-proto",
- "hostname",
+ "hostname 0.4.0",
  "http 0.2.9",
  "http-body 0.4.5",
  "http-serde",
  "hyper 0.14.28",
  "hyper-openssl",
  "hyper-proxy",
- "indexmap 2.2.5",
+ "indexmap 2.2.6",
  "indoc",
  "infer 0.15.0",
  "inventory",
@@ -10118,7 +10208,7 @@ dependencies = [
  "mlua",
  "mongodb",
  "nix 0.26.2",
- "nkeys 0.4.0",
+ "nkeys 0.4.1",
  "nom",
  "notify",
  "num-format",
@@ -10135,10 +10225,10 @@ dependencies = [
  "portpicker",
  "postgres-openssl",
  "proptest",
- "prost 0.12.3",
- "prost-build 0.12.3",
+ "prost 0.12.4",
+ "prost-build 0.12.4",
  "prost-reflect",
- "prost-types 0.12.3",
+ "prost-types 0.12.4",
  "pulsar",
  "quickcheck",
  "rand 0.8.5",
@@ -10159,15 +10249,15 @@ dependencies = [
  "serde-toml-merge",
  "serde_bytes",
  "serde_json",
- "serde_with 3.7.0",
- "serde_yaml 0.9.33",
+ "serde_with 3.8.1",
+ "serde_yaml 0.9.34+deprecated",
  "sha2",
  "similar-asserts",
  "smallvec",
  "smpl_jwt",
  "snafu 0.7.5",
  "snap",
- "socket2 0.5.6",
+ "socket2 0.5.7",
  "stream-cancel",
  "strip-ansi-escapes",
  "syslog",
@@ -10179,7 +10269,7 @@ dependencies = [
  "tokio-postgres",
  "tokio-stream",
  "tokio-test",
- "tokio-tungstenite",
+ "tokio-tungstenite 0.20.1",
  "tokio-util",
  "toml",
  "tonic",
@@ -10210,9 +10300,8 @@ name = "vector-api-client"
 version = "0.1.2"
 dependencies = [
  "anyhow",
- "async-trait",
  "chrono",
- "clap 4.5.3",
+ "clap 4.5.4",
  "futures 0.3.30",
  "graphql_client",
  "indoc",
@@ -10221,7 +10310,7 @@ dependencies = [
  "serde_json",
  "tokio",
  "tokio-stream",
- "tokio-tungstenite",
+ "tokio-tungstenite 0.20.1",
  "url",
  "uuid",
 ]
@@ -10234,8 +10323,8 @@ dependencies = [
  "async-stream",
  "async-trait",
  "bytecheck",
- "bytes 1.5.0",
- "clap 4.5.3",
+ "bytes 1.6.0",
+ "clap 4.5.4",
  "crc32fast",
  "criterion",
  "crossbeam-queue",
@@ -10257,7 +10346,7 @@ dependencies = [
  "rand 0.8.5",
  "rkyv",
  "serde",
- "serde_yaml 0.9.33",
+ "serde_yaml 0.9.34+deprecated",
  "snafu 0.7.5",
  "temp-dir",
  "tokio",
@@ -10277,13 +10366,13 @@ name = "vector-common"
 version = "0.1.0"
 dependencies = [
  "async-stream",
- "bytes 1.5.0",
+ "bytes 1.6.0",
  "chrono",
  "chrono-tz",
  "crossbeam-utils",
  "derivative",
  "futures 0.3.30",
- "indexmap 2.2.5",
+ "indexmap 2.2.6",
  "metrics",
  "nom",
  "ordered-float 4.2.0",
@@ -10314,13 +10403,13 @@ dependencies = [
  "chrono-tz",
  "encoding_rs",
  "http 0.2.9",
- "indexmap 2.2.5",
+ "indexmap 2.2.6",
  "inventory",
  "no-proxy",
  "num-traits",
  "serde",
  "serde_json",
- "serde_with 3.7.0",
+ "serde_with 3.8.1",
  "snafu 0.7.5",
  "toml",
  "tracing 0.1.40",
@@ -10338,11 +10427,11 @@ dependencies = [
  "convert_case 0.6.0",
  "darling 0.20.8",
  "once_cell",
- "proc-macro2 1.0.79",
- "quote 1.0.35",
+ "proc-macro2 1.0.81",
+ "quote 1.0.36",
  "serde",
  "serde_json",
- "syn 2.0.53",
+ "syn 2.0.60",
  "tracing 0.1.40",
 ]
 
@@ -10351,11 +10440,11 @@ name = "vector-config-macros"
 version = "0.1.0"
 dependencies = [
  "darling 0.20.8",
- "proc-macro2 1.0.79",
- "quote 1.0.35",
+ "proc-macro2 1.0.81",
+ "quote 1.0.36",
  "serde",
  "serde_derive_internals",
- "syn 2.0.53",
+ "syn 2.0.60",
  "vector-config",
  "vector-config-common",
 ]
@@ -10366,9 +10455,9 @@ version = "0.1.0"
 dependencies = [
  "async-graphql",
  "async-trait",
- "base64 0.22.0",
+ "base64 0.22.1",
  "bitmask-enum",
- "bytes 1.5.0",
+ "bytes 1.6.0",
  "chrono",
  "chrono-tz",
  "criterion",
@@ -10384,7 +10473,7 @@ dependencies = [
  "headers",
  "http 0.2.9",
  "hyper-proxy",
- "indexmap 2.2.5",
+ "indexmap 2.2.6",
  "ipnet",
  "metrics",
  "metrics-tracing-context",
@@ -10400,10 +10489,10 @@ dependencies = [
  "parking_lot",
  "pin-project",
  "proptest",
- "prost 0.12.3",
- "prost-build 0.12.3",
- "prost-types 0.12.3",
- "quanta 0.12.2",
+ "prost 0.12.4",
+ "prost-build 0.12.4",
+ "prost-types 0.12.4",
+ "quanta 0.12.3",
  "quickcheck",
  "quickcheck_macros",
  "rand 0.8.5",
@@ -10414,12 +10503,12 @@ dependencies = [
  "security-framework",
  "serde",
  "serde_json",
- "serde_with 3.7.0",
- "serde_yaml 0.9.33",
+ "serde_with 3.8.1",
+ "serde_yaml 0.9.34+deprecated",
  "similar-asserts",
  "smallvec",
  "snafu 0.7.5",
- "socket2 0.5.6",
+ "socket2 0.5.7",
  "tokio",
  "tokio-openssl",
  "tokio-stream",
@@ -10495,7 +10584,7 @@ dependencies = [
 name = "vector-vrl-cli"
 version = "0.1.0"
 dependencies = [
- "clap 4.5.3",
+ "clap 4.5.4",
  "vector-vrl-functions",
  "vrl",
 ]
@@ -10514,7 +10603,7 @@ dependencies = [
  "ansi_term",
  "chrono",
  "chrono-tz",
- "clap 4.5.3",
+ "clap 4.5.4",
  "enrichment",
  "glob",
  "prettydiff",
@@ -10533,7 +10622,7 @@ version = "0.1.0"
 dependencies = [
  "cargo_toml",
  "enrichment",
- "getrandom 0.2.12",
+ "getrandom 0.2.14",
  "gloo-utils",
  "serde",
  "serde-wasm-bindgen",
@@ -10556,16 +10645,17 @@ checksum = "6a02e4885ed3bc0f2de90ea6dd45ebcbb66dacffe03547fadbb0eeae2770887d"
 
 [[package]]
 name = "vrl"
-version = "0.13.0"
+version = "0.15.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "81f1e48235e8db47d5010723fc32c38b09820a1a2a57eaea77b089493a375f52"
+checksum = "82cfcc99d9936dc2a8645f049122a5c5d137b066d0ffc48f01203ab2f102ed62"
 dependencies = [
  "aes",
  "ansi_term",
  "arbitrary",
  "base16",
- "base64 0.22.0",
- "bytes 1.5.0",
+ "base62",
+ "base64 0.22.1",
+ "bytes 1.6.0",
  "cbc",
  "cfb-mode",
  "cfg-if",
@@ -10574,7 +10664,7 @@ dependencies = [
  "chrono",
  "chrono-tz",
  "cidr-utils 0.6.1",
- "clap 4.5.3",
+ "clap 4.5.4",
  "codespan-reporting",
  "community-id",
  "crypto_secretbox",
@@ -10589,10 +10679,10 @@ dependencies = [
  "grok",
  "hex",
  "hmac",
- "hostname",
+ "hostname 0.4.0",
  "iana-time-zone",
  "idna 0.5.0",
- "indexmap 2.2.5",
+ "indexmap 2.2.6",
  "indoc",
  "itertools 0.12.1",
  "lalrpop",
@@ -10611,7 +10701,7 @@ dependencies = [
  "pest_derive",
  "prettydiff",
  "prettytable-rs",
- "prost 0.12.3",
+ "prost 0.12.4",
  "prost-reflect",
  "psl",
  "quickcheck",
@@ -10665,8 +10755,8 @@ version = "0.1.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "d257817081c7dffcdbab24b9e62d2def62e2ff7d00b1c20062551e6cccc145ff"
 dependencies = [
- "proc-macro2 1.0.79",
- "quote 1.0.35",
+ "proc-macro2 1.0.81",
+ "quote 1.0.36",
 ]
 
 [[package]]
@@ -10705,11 +10795,11 @@ dependencies = [
 
 [[package]]
 name = "warp"
-version = "0.3.6"
+version = "0.3.7"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c1e92e22e03ff1230c03a1a8ee37d2f89cd489e2e541b7550d6afad96faed169"
+checksum = "4378d202ff965b011c64817db11d5829506d3404edeadb61f190d111da3f231c"
 dependencies = [
- "bytes 1.5.0",
+ "bytes 1.6.0",
  "futures-channel",
  "futures-util",
  "headers",
@@ -10720,14 +10810,12 @@ dependencies = [
  "mime_guess",
  "percent-encoding",
  "pin-project",
- "rustls-pemfile 1.0.3",
  "scoped-tls",
  "serde",
  "serde_json",
  "serde_urlencoded",
  "tokio",
- "tokio-stream",
- "tokio-tungstenite",
+ "tokio-tungstenite 0.21.0",
  "tokio-util",
  "tower-service",
  "tracing 0.1.40",
@@ -10770,9 +10858,9 @@ dependencies = [
  "bumpalo",
  "log",
  "once_cell",
- "proc-macro2 1.0.79",
- "quote 1.0.35",
- "syn 2.0.53",
+ "proc-macro2 1.0.81",
+ "quote 1.0.36",
+ "syn 2.0.60",
  "wasm-bindgen-shared",
 ]
 
@@ -10794,7 +10882,7 @@ version = "0.2.92"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "a1f8823de937b71b9460c0c34e25f3da88250760bec0ebac694b49997550d726"
 dependencies = [
- "quote 1.0.35",
+ "quote 1.0.36",
  "wasm-bindgen-macro-support",
 ]
 
@@ -10804,9 +10892,9 @@ version = "0.2.92"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "e94f17b526d0a461a191c78ea52bbce64071ed5c04c9ffe424dcb38f74171bb7"
 dependencies = [
- "proc-macro2 1.0.79",
- "quote 1.0.35",
- "syn 2.0.53",
+ "proc-macro2 1.0.81",
+ "quote 1.0.36",
+ "syn 2.0.60",
  "wasm-bindgen-backend",
  "wasm-bindgen-shared",
 ]
@@ -10842,9 +10930,9 @@ dependencies = [
 
 [[package]]
 name = "webbrowser"
-version = "0.8.12"
+version = "1.0.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "82b2391658b02c27719fc5a0a73d6e696285138e8b12fba9d4baa70451023c71"
+checksum = "60b6f804e41d0852e16d2eaee61c7e4f7d3e8ffdb7b8ed85886aeb0791fe9fcd"
 dependencies = [
  "core-foundation",
  "home",
@@ -10943,23 +11031,33 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f"
 
 [[package]]
+name = "windows"
+version = "0.52.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "e48a53791691ab099e5e2ad123536d0fff50652600abaf43bbf952894110d0be"
+dependencies = [
+ "windows-core",
+ "windows-targets 0.52.0",
+]
+
+[[package]]
 name = "windows-core"
-version = "0.51.1"
+version = "0.52.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f1f8cf84f35d2db49a46868f947758c7a1138116f7fac3bc844f43ade1292e64"
+checksum = "33ab640c8d7e35bf8ba19b884ba838ceb4fba93a4e8c65a9059d08afcfc683d9"
 dependencies = [
- "windows-targets 0.48.5",
+ "windows-targets 0.52.0",
 ]
 
 [[package]]
 name = "windows-service"
-version = "0.6.0"
+version = "0.7.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "cd9db37ecb5b13762d95468a2fc6009d4b2c62801243223aabd44fca13ad13c8"
+checksum = "d24d6bcc7f734a4091ecf8d7a64c5f7d7066f45585c1861eba06449909609c8a"
 dependencies = [
- "bitflags 1.3.2",
+ "bitflags 2.4.1",
  "widestring 1.0.2",
- "windows-sys 0.45.0",
+ "windows-sys 0.52.0",
 ]
 
 [[package]]
@@ -11259,9 +11357,9 @@ version = "0.7.31"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "b3c129550b3e6de3fd0ba67ba5c81818f9805e58b8d7fee80a3a59d2c9fc601a"
 dependencies = [
- "proc-macro2 1.0.79",
- "quote 1.0.35",
- "syn 2.0.53",
+ "proc-macro2 1.0.81",
+ "quote 1.0.36",
+ "syn 2.0.60",
 ]
 
 [[package]]
diff --git a/pkgs/tools/misc/vector/default.nix b/pkgs/tools/misc/vector/default.nix
index db6446ec26cf..91b755f82827 100644
--- a/pkgs/tools/misc/vector/default.nix
+++ b/pkgs/tools/misc/vector/default.nix
@@ -37,7 +37,7 @@
 
 let
   pname = "vector";
-  version = "0.37.1";
+  version = "0.38.0";
 in
 rustPlatform.buildRustPackage {
   inherit pname version;
@@ -46,7 +46,7 @@ rustPlatform.buildRustPackage {
     owner = "vectordotdev";
     repo = pname;
     rev = "v${version}";
-    hash = "sha256-wRXwgy+UY2z5fIWpQbDxRti54GE357WMGWXM/xKjz18=";
+    hash = "sha256-sJgryN6/XaM1qXxv76/5RGanUpBYxIsGYGToOCXDvwA=";
   };
 
   patches = [
diff --git a/pkgs/tools/misc/vorbisgain/default.nix b/pkgs/tools/misc/vorbisgain/default.nix
index e5a85049df0a..f5a2e2d1dad5 100644
--- a/pkgs/tools/misc/vorbisgain/default.nix
+++ b/pkgs/tools/misc/vorbisgain/default.nix
@@ -21,7 +21,7 @@ stdenv.mkDerivation rec {
   meta = with lib; {
     homepage = "https://sjeng.org/vorbisgain.html";
     description = "A utility that corrects the volume of an Ogg Vorbis file to a predefined standardized loudness";
-    license = licenses.gpl2;
+    license = licenses.gpl2Only;
     platforms = platforms.unix;
     maintainers = with maintainers; [ pSub ];
     mainProgram = "vorbisgain";
diff --git a/pkgs/tools/misc/vrc-get/default.nix b/pkgs/tools/misc/vrc-get/default.nix
index 140fba5c11f3..7f907711e702 100644
--- a/pkgs/tools/misc/vrc-get/default.nix
+++ b/pkgs/tools/misc/vrc-get/default.nix
@@ -1,4 +1,4 @@
-{ fetchCrate, lib, rustPlatform, pkg-config, stdenv, Security, SystemConfiguration }:
+{ fetchCrate, installShellFiles, lib, rustPlatform, pkg-config, stdenv, Security, SystemConfiguration, buildPackages }:
 
 rustPlatform.buildRustPackage rec {
   pname = "vrc-get";
@@ -9,12 +9,25 @@ rustPlatform.buildRustPackage rec {
     hash = "sha256-+xbHw1DpFmapjsFoUvxUqTok8TKMebMw3gYjO/rx/iU=";
   };
 
-  nativeBuildInputs = [ pkg-config ];
+  nativeBuildInputs = [ installShellFiles pkg-config ];
 
   buildInputs = lib.optionals stdenv.isDarwin [ Security SystemConfiguration ];
 
   cargoHash = "sha256-iuLhDcii+wXDNUsUMo8lj4kfJve5RAz7FT5Pxs9yFPQ=";
 
+  # Execute the resulting binary to generate shell completions, using emulation if necessary when cross-compiling.
+  # If no emulator is available, then give up on generating shell completions
+  postInstall =
+    let
+      vrc-get = "${stdenv.hostPlatform.emulator buildPackages} $out/bin/vrc-get";
+    in
+    lib.optionalString (stdenv.hostPlatform.emulatorAvailable buildPackages) ''
+      installShellCompletion --cmd vrc-get \
+        --bash <(${vrc-get} completion bash) \
+        --fish <(${vrc-get} completion fish) \
+        --zsh <(${vrc-get} completion zsh)
+    '';
+
   meta = with lib; {
     description = "Command line client of VRChat Package Manager, the main feature of VRChat Creator Companion (VCC)";
     homepage = "https://github.com/vrc-get/vrc-get";
diff --git a/pkgs/tools/misc/vsh/default.nix b/pkgs/tools/misc/vsh/default.nix
index c061a14f2e30..9cfd9af7fc68 100644
--- a/pkgs/tools/misc/vsh/default.nix
+++ b/pkgs/tools/misc/vsh/default.nix
@@ -2,13 +2,13 @@
 
 buildGoModule rec {
   pname = "vsh";
-  version = "0.12.2";
+  version = "0.13.0";
 
   src = fetchFromGitHub {
     owner = "fishi0x01";
     repo = "vsh";
     rev = "v${version}";
-    sha256 = "13qa9r7kij6aqhackzmsn38vyhmajgmhflnrd9rarfhhyg6ldv4z";
+    sha256 = "083rqca4gx9lmzkc9rl453zqmspbpn0h2vajkrjjcwk96km7064f";
   };
 
   # vendor directory is part of repository
diff --git a/pkgs/tools/misc/wacomtablet/default.nix b/pkgs/tools/misc/wacomtablet/default.nix
index f10ccd698cb9..b7a0652b359c 100644
--- a/pkgs/tools/misc/wacomtablet/default.nix
+++ b/pkgs/tools/misc/wacomtablet/default.nix
@@ -30,7 +30,7 @@ mkDerivation rec {
       with profile support to handle different button / pen layouts per profile.
     '';
     homepage = "https://invent.kde.org/system/wacomtablet";
-    license = lib.licenses.gpl2;
+    license = lib.licenses.gpl2Plus;
     maintainers = [ lib.maintainers.Thra11 ];
     platforms = lib.platforms.linux;
   };
diff --git a/pkgs/tools/misc/wagyu/default.nix b/pkgs/tools/misc/wagyu/default.nix
index 39e1085d4c96..0eb71743f064 100644
--- a/pkgs/tools/misc/wagyu/default.nix
+++ b/pkgs/tools/misc/wagyu/default.nix
@@ -2,16 +2,18 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "wagyu";
-  version = "0.6.1";
+  version = "0.6.3";
 
   src = fetchFromGitHub {
     owner = "AleoHQ";
     repo = pname;
-    rev = "refs/tags/v${version}";
-    hash = "sha256-ltWNKB3DHtwVVzJyvRWj2I8rjsl7ru2i/RCO9yiQhpg=";
+    rev = "v${version}";
+    hash = "sha256-5n8BmETv5jUvgu0rskAPYaBgYyNL2QU2t/iUb3hNMMw=";
   };
 
-  cargoHash = "sha256-8dbeSHN6+1jLdVA9QxNAy7Y6EX7wflpQI72kqZAEVIE=";
+  cargoPatches = [ ./fix-rustc-serialize-version.patch ];
+
+  cargoHash = "sha256-vseTtok0E0ddg9ALQ1ql3NPPxirfyMPHOSWsM2qu2jU=";
 
   buildInputs = lib.optional stdenv.isDarwin Security;
 
diff --git a/pkgs/tools/misc/wagyu/fix-rustc-serialize-version.patch b/pkgs/tools/misc/wagyu/fix-rustc-serialize-version.patch
new file mode 100644
index 000000000000..2b990909c1b4
--- /dev/null
+++ b/pkgs/tools/misc/wagyu/fix-rustc-serialize-version.patch
@@ -0,0 +1,15 @@
+diff --git a/Cargo.lock b/Cargo.lock
+--- a/Cargo.lock
++++ b/Cargo.lock
+@@ -1286,9 +1286,9 @@ checksum = "3e75f6a532d0fd9f7f13144f392b6ad56a32696bfcd9c78f797f16bbb6f072d6"
+ 
+ [[package]]
+ name = "rustc-serialize"
+-version = "0.3.24"
++version = "0.3.25"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "dcf128d1287d2ea9d80910b5f1120d0b8eede3fbf1abe91c40d39ea7d51e6fda"
++checksum = "fe834bc780604f4674073badbad26d7219cadfb4a2275802db12cbae17498401"
+ 
+ [[package]]
+ name = "rustc_version"
diff --git a/pkgs/tools/misc/wakapi/default.nix b/pkgs/tools/misc/wakapi/default.nix
index 372d20771f37..a8c4a28775ea 100644
--- a/pkgs/tools/misc/wakapi/default.nix
+++ b/pkgs/tools/misc/wakapi/default.nix
@@ -2,16 +2,16 @@
 
 buildGoModule rec {
   pname = "wakapi";
-  version = "2.11.1";
+  version = "2.11.2";
 
   src = fetchFromGitHub {
     owner = "muety";
     repo = pname;
     rev = version;
-    sha256 = "sha256-ZdKPaHe4miMKb6qEKdRz/fRIkTWDXp2Veu7CP1gRuQw=";
+    sha256 = "sha256-lBjYtb64blFUH/iW/SmC4A7nX9asokvsNKu6QVYgmZ8=";
   };
 
-  vendorHash = "sha256-pRj7Y2xp+Z2StaXRIzI5b2WAkIhR9y8T8DMXWrxOiy4=";
+  vendorHash = "sha256-Kt7RzAGZeLFhwvq+V6AK88rivqkoTE1Zep7NMh3BXXQ=";
 
   # Not a go module required by the project, contains development utilities
   excludedPackages = [ "scripts" ];
diff --git a/pkgs/tools/misc/wasm-tools/default.nix b/pkgs/tools/misc/wasm-tools/default.nix
index 529815b12ec4..d928b723943c 100644
--- a/pkgs/tools/misc/wasm-tools/default.nix
+++ b/pkgs/tools/misc/wasm-tools/default.nix
@@ -5,19 +5,19 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "wasm-tools";
-  version = "1.206.0";
+  version = "1.207.0";
 
   src = fetchFromGitHub {
     owner = "bytecodealliance";
     repo = pname;
     rev = "v${version}";
-    hash = "sha256-dRCPur2EmEF5GV4PWSWAKIE+A9KfW2FbnUJVdXct3aA=";
+    hash = "sha256-Q2WLvAjZ0UQyIgVen4QuEtef1MJvhKLMlj8RYYoJuVQ=";
     fetchSubmodules = true;
   };
 
   # Disable cargo-auditable until https://github.com/rust-secure-code/cargo-auditable/issues/124 is solved.
   auditable = false;
-  cargoHash = "sha256-M3wtgvZWWTlB1mmyLJNHBXwVMc5b61ie/RmSGn1ow9U=";
+  cargoHash = "sha256-VHHtwP9LPmG0MHpv/1mf4LntTuBeDHhPA4gqz5mhlpg=";
   cargoBuildFlags = [ "--package" "wasm-tools" ];
   cargoTestFlags = [ "--all" ];
 
diff --git a/pkgs/tools/misc/watchexec/default.nix b/pkgs/tools/misc/watchexec/default.nix
index 0841a6490cc4..32ee78ff6cb0 100644
--- a/pkgs/tools/misc/watchexec/default.nix
+++ b/pkgs/tools/misc/watchexec/default.nix
@@ -2,16 +2,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "watchexec";
-  version = "2.0.0";
+  version = "2.1.1";
 
   src = fetchFromGitHub {
     owner = pname;
     repo = pname;
     rev = "v${version}";
-    hash = "sha256-wJt8247RKS6g+O2Ho75Fn4O4w6RoxotRm0yXBRM9d8g=";
+    hash = "sha256-S0c/UqdbEqhZRkxZonW1TPQLmGbZeiK14yPbW5dpI70=";
   };
 
-  cargoHash = "sha256-JLDNAuYE7Pu9E82TD2cz9lnCWEC9bNQxd3MP4lXjo3k=";
+  cargoHash = "sha256-IuubIEu2mY3h1i9gJgQlyVoGwUYWsdp8+hKYyz0j3is=";
 
   nativeBuildInputs = [ installShellFiles ];
 
diff --git a/pkgs/tools/misc/woeusb-ng/default.nix b/pkgs/tools/misc/woeusb-ng/default.nix
index 821eb73a4a89..1c3754bd95f3 100644
--- a/pkgs/tools/misc/woeusb-ng/default.nix
+++ b/pkgs/tools/misc/woeusb-ng/default.nix
@@ -1,7 +1,7 @@
 { lib
 , python3Packages
 , fetchFromGitHub
-, wrapGAppsHook
+, wrapGAppsHook3
 , p7zip
 , parted
 , grub2
@@ -27,7 +27,7 @@ buildPythonApplication rec {
   '';
 
   nativeBuildInputs = [
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   propagatedBuildInputs = [
diff --git a/pkgs/tools/misc/wootility/default.nix b/pkgs/tools/misc/wootility/default.nix
index 803ad53038e7..f8590702ecb9 100644
--- a/pkgs/tools/misc/wootility/default.nix
+++ b/pkgs/tools/misc/wootility/default.nix
@@ -8,11 +8,11 @@
 
 appimageTools.wrapType2 rec {
   pname = "wootility";
-  version = "4.6.15";
+  version = "4.6.18";
 
   src = fetchurl {
     url = "https://s3.eu-west-2.amazonaws.com/wooting-update/wootility-lekker-linux-latest/wootility-lekker-${version}.AppImage";
-    sha256 = "sha256-A/cjm9rhcgp68hbyjy7OfYPBKBcccl0OdD7MTdpEdPM=";
+    sha256 = "sha256-oiPt1xgmYGYO1dk01rDwwaUf+yhDAbRCqTTuOivR/kI=";
   };
 
   profile = ''
diff --git a/pkgs/tools/misc/wv/default.nix b/pkgs/tools/misc/wv/default.nix
index e1824c1d3709..0d2443be9f9b 100644
--- a/pkgs/tools/misc/wv/default.nix
+++ b/pkgs/tools/misc/wv/default.nix
@@ -35,6 +35,6 @@ stdenv.mkDerivation (finalAttrs: {
     homepage = "https://github.com/AbiWord/wv";
     description = "Converter from Microsoft Word formats to human-editable ones";
     platforms = lib.platforms.unix;
-    license = lib.licenses.gpl2;
+    license = lib.licenses.gpl2Plus;
   };
 })
diff --git a/pkgs/tools/misc/wyrd/default.nix b/pkgs/tools/misc/wyrd/default.nix
index 4010a0b42d0f..cdce7a5e347f 100644
--- a/pkgs/tools/misc/wyrd/default.nix
+++ b/pkgs/tools/misc/wyrd/default.nix
@@ -30,7 +30,7 @@ stdenv.mkDerivation rec {
     '';
     homepage = "http://pessimization.com/software/wyrd/";
     downloadPage = "http://pessimization.com/software/wyrd/";
-    license = licenses.gpl2;
+    license = licenses.gpl2Only;
     maintainers = [ maintainers.prikhi ];
     platforms = platforms.linux;
     mainProgram = "wyrd";
diff --git a/pkgs/tools/misc/xclip/default.nix b/pkgs/tools/misc/xclip/default.nix
index 721d300a19ed..e56382879d59 100644
--- a/pkgs/tools/misc/xclip/default.nix
+++ b/pkgs/tools/misc/xclip/default.nix
@@ -18,7 +18,7 @@ stdenv.mkDerivation rec {
   meta = {
     description = "Tool to access the X clipboard from a console application";
     homepage = "https://github.com/astrand/xclip";
-    license = lib.licenses.gpl2;
+    license = lib.licenses.gpl2Plus;
     platforms = lib.platforms.all;
     mainProgram = "xclip";
   };
diff --git a/pkgs/tools/misc/xdaliclock/default.nix b/pkgs/tools/misc/xdaliclock/default.nix
index 7201ffcbbe99..333da375d580 100644
--- a/pkgs/tools/misc/xdaliclock/default.nix
+++ b/pkgs/tools/misc/xdaliclock/default.nix
@@ -1,6 +1,6 @@
 { lib, stdenv, fetchurl
 , gtk3
-, wrapGAppsHook
+, wrapGAppsHook3
 , pkg-config }:
 
 stdenv.mkDerivation rec {
@@ -18,7 +18,7 @@ stdenv.mkDerivation rec {
 
   nativeBuildInputs = [
     pkg-config
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
   buildInputs = [
     gtk3
diff --git a/pkgs/tools/misc/xflux/gui.nix b/pkgs/tools/misc/xflux/gui.nix
index a9ec5d5d0eeb..97ad6dbaaecd 100644
--- a/pkgs/tools/misc/xflux/gui.nix
+++ b/pkgs/tools/misc/xflux/gui.nix
@@ -1,4 +1,4 @@
-{ lib, fetchFromGitHub, buildPythonApplication, python3Packages, wrapGAppsHook
+{ lib, fetchFromGitHub, buildPythonApplication, python3Packages, wrapGAppsHook3
 , xflux, gtk3, gobject-introspection, pango, gdk-pixbuf, atk
 , pexpect, pygobject3, pyxdg, libappindicator-gtk3
 }:
@@ -24,7 +24,7 @@ buildPythonApplication rec {
   ];
 
   nativeBuildInputs = [
-    wrapGAppsHook gobject-introspection
+    wrapGAppsHook3 gobject-introspection
     pango gdk-pixbuf atk libappindicator-gtk3
   ];
 
diff --git a/pkgs/tools/misc/xfstests/default.nix b/pkgs/tools/misc/xfstests/default.nix
index 5080c8592492..aed576f7d34a 100644
--- a/pkgs/tools/misc/xfstests/default.nix
+++ b/pkgs/tools/misc/xfstests/default.nix
@@ -103,7 +103,7 @@ stdenv.mkDerivation rec {
   meta = with lib; {
     description = "Torture test suite for filesystems";
     homepage = "https://git.kernel.org/pub/scm/fs/xfs/xfstests-dev.git/";
-    license = licenses.gpl2;
+    license = licenses.gpl2Only;
     maintainers = [ maintainers.dezgeg ];
     platforms = platforms.linux;
     mainProgram = "xfstests-check";
diff --git a/pkgs/tools/misc/xvfb-run/default.nix b/pkgs/tools/misc/xvfb-run/default.nix
index eb1e7c5b01b7..038cae8f39e6 100644
--- a/pkgs/tools/misc/xvfb-run/default.nix
+++ b/pkgs/tools/misc/xvfb-run/default.nix
@@ -58,7 +58,7 @@ stdenvNoCC.mkDerivation rec {
   meta = with lib; {
     description = "Convenience script to run a virtualized X-Server";
     platforms = platforms.linux;
-    license = licenses.gpl2;
+    license = licenses.gpl2Only;
     maintainers = [ maintainers.artturin ];
     mainProgram = "xvfb-run";
   };
diff --git a/pkgs/tools/misc/yad/default.nix b/pkgs/tools/misc/yad/default.nix
index 9bbb955f1a1b..7c2e100a33f7 100644
--- a/pkgs/tools/misc/yad/default.nix
+++ b/pkgs/tools/misc/yad/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetchFromGitHub, pkg-config, intltool, autoreconfHook, wrapGAppsHook
+{ lib, stdenv, fetchFromGitHub, pkg-config, intltool, autoreconfHook, wrapGAppsHook3
 , gtk3, hicolor-icon-theme, netpbm }:
 
 stdenv.mkDerivation rec {
@@ -20,7 +20,7 @@ stdenv.mkDerivation rec {
 
   buildInputs = [ gtk3 hicolor-icon-theme ];
 
-  nativeBuildInputs = [ autoreconfHook pkg-config intltool wrapGAppsHook ];
+  nativeBuildInputs = [ autoreconfHook pkg-config intltool wrapGAppsHook3 ];
 
   postPatch = ''
     sed -i src/file.c -e '21i#include <glib/gprintf.h>'
@@ -44,6 +44,7 @@ stdenv.mkDerivation rec {
     '';
 
     license = licenses.gpl3;
+    mainProgram = "yad";
     maintainers = with maintainers; [ smironov ];
     platforms = with platforms; linux;
   };
diff --git a/pkgs/tools/networking/6tunnel/default.nix b/pkgs/tools/networking/6tunnel/default.nix
index 50259f827321..2f0e0320548b 100644
--- a/pkgs/tools/networking/6tunnel/default.nix
+++ b/pkgs/tools/networking/6tunnel/default.nix
@@ -17,7 +17,7 @@ stdenv.mkDerivation rec {
     description = "Tunnelling for application that don't speak IPv6";
     mainProgram = "6tunnel";
     homepage = "https://github.com/wojtekka/6tunnel";
-    license = licenses.gpl2;
+    license = licenses.gpl2Only;
     maintainers = with maintainers; [ Br1ght0ne ];
     platforms = platforms.unix;
   };
diff --git a/pkgs/tools/networking/apc-temp-fetch/default.nix b/pkgs/tools/networking/apc-temp-fetch/default.nix
index 13ba358d933e..84d1db515da1 100644
--- a/pkgs/tools/networking/apc-temp-fetch/default.nix
+++ b/pkgs/tools/networking/apc-temp-fetch/default.nix
@@ -3,12 +3,13 @@
 , fetchPypi
 , pythonOlder
 , requests
+, setuptools
 }:
 
 buildPythonApplication rec {
   pname = "apc-temp-fetch";
   version = "0.0.2";
-  format = "setuptools";
+  pyproject = true;
 
   disabled = pythonOlder "3.6";
 
@@ -18,7 +19,11 @@ buildPythonApplication rec {
     hash = "sha256-lXGj/xrOkdMMYvuyVVSCojjQlzISFUT14VTn//iOARo=";
   };
 
-  propagatedBuildInputs = [
+  build-system = [
+    setuptools
+  ];
+
+  dependencies = [
     requests
   ];
 
diff --git a/pkgs/tools/networking/arpoison/default.nix b/pkgs/tools/networking/arpoison/default.nix
index 912636a0e72a..347f2bf3ea6f 100644
--- a/pkgs/tools/networking/arpoison/default.nix
+++ b/pkgs/tools/networking/arpoison/default.nix
@@ -23,7 +23,7 @@ stdenv.mkDerivation rec {
   meta = with lib; {
     description = "UNIX arp cache update utility";
     homepage = "http://www.arpoison.net/";
-    license = with licenses; [ gpl2 ];
+    license = with licenses; [ gpl2Only ];
     maintainers = [ maintainers.michalrus ];
     platforms = platforms.unix;
     mainProgram = "arpoison";
diff --git a/pkgs/tools/networking/axel/default.nix b/pkgs/tools/networking/axel/default.nix
index 2480d0e31e25..b30157755e49 100644
--- a/pkgs/tools/networking/axel/default.nix
+++ b/pkgs/tools/networking/axel/default.nix
@@ -28,7 +28,7 @@ stdenv.mkDerivation rec {
     homepage = "https://github.com/axel-download-accelerator/axel";
     maintainers = with maintainers; [ pSub ];
     platforms = with platforms; unix;
-    license = licenses.gpl2;
+    license = licenses.gpl2Plus;
     mainProgram = "axel";
   };
 }
diff --git a/pkgs/tools/networking/bacnet-stack/default.nix b/pkgs/tools/networking/bacnet-stack/default.nix
index 528dd8141761..23718b291a97 100644
--- a/pkgs/tools/networking/bacnet-stack/default.nix
+++ b/pkgs/tools/networking/bacnet-stack/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "bacnet-stack";
-  version = "1.3.3";
+  version = "1.3.5";
 
   src = fetchFromGitHub {
     owner = "bacnet-stack";
     repo = "bacnet-stack";
     rev = "bacnet-stack-${version}";
-    sha256 = "sha256-fFQIyZYHHNyszUO8jySIB9Y/Amzj/TTdxaex76ovBmw=";
+    sha256 = "sha256-Iwo0bNulKdFNwNU2xj6Uin+5hQt1I3N6+zso5BHrIOU=";
   };
 
   hardeningDisable = [ "all" ];
@@ -25,7 +25,7 @@ stdenv.mkDerivation rec {
   meta = with lib; {
     description = "BACnet open source protocol stack for embedded systems, Linux, and Windows";
     platforms = platforms.linux;
-    license = licenses.gpl2;
+    license = licenses.gpl2Plus;
     maintainers = with maintainers; [ WhittlesJr ];
   };
 }
diff --git a/pkgs/tools/networking/bgpq4/default.nix b/pkgs/tools/networking/bgpq4/default.nix
index 22e17a205c20..ea47cf4b2cae 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.12";
+  version = "1.15";
 
   src = fetchFromGitHub {
     owner = "bgp";
     repo = pname;
     rev = version;
-    sha256 = "sha256-Irv91M5g21id0QfsnpDA7n5IhP8Qe9QHMh/KizD74qw=";
+    sha256 = "sha256-3mfFj9KoQbDe0gH7Le03N1Yds/bTEmY+OiXNaOtHkpY=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/tools/networking/biosdevname/default.nix b/pkgs/tools/networking/biosdevname/default.nix
index fe9ccb3dd20a..c9d2f4bbd62d 100644
--- a/pkgs/tools/networking/biosdevname/default.nix
+++ b/pkgs/tools/networking/biosdevname/default.nix
@@ -21,7 +21,7 @@ stdenv.mkDerivation rec {
 
   meta = with lib; {
     description = "Udev helper for naming devices per BIOS names";
-    license = licenses.gpl2;
+    license = licenses.gpl2Only;
     platforms = ["x86_64-linux" "i686-linux"];
     maintainers = with maintainers; [ ];
     mainProgram = "biosdevname";
diff --git a/pkgs/tools/networking/brook/default.nix b/pkgs/tools/networking/brook/default.nix
index 77a70381b1d9..943ccbc9798a 100644
--- a/pkgs/tools/networking/brook/default.nix
+++ b/pkgs/tools/networking/brook/default.nix
@@ -2,16 +2,16 @@
 
 buildGoModule rec {
   pname = "brook";
-  version = "20240404";
+  version = "20240606";
 
   src = fetchFromGitHub {
     owner = "txthinking";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-QqA0LnbC72bnAQ25AehTnoXgdqQPc8wztHcFd4Q19ko=";
+    sha256 = "sha256-rfCqYI0T/nbK+rlPGl5orLo3qHKITesdFNtXc/ECATA=";
   };
 
-  vendorHash = "sha256-1aaOPeKHPrZO6WK08EhX4+dME0A33raQnbZi/aNFpIw=";
+  vendorHash = "sha256-dYiifLUOq6RKAVSXuoGlok9Jp8jHmbXN/EjQeQpoqWw=";
 
   meta = with lib; {
     homepage = "https://github.com/txthinking/brook";
diff --git a/pkgs/tools/networking/castnow/default.nix b/pkgs/tools/networking/castnow/default.nix
index 50bea652eef6..095a2e8541a6 100644
--- a/pkgs/tools/networking/castnow/default.nix
+++ b/pkgs/tools/networking/castnow/default.nix
@@ -20,7 +20,7 @@ buildNpmPackage rec {
 
   meta = {
     description = "Command-line Chromecast player";
-    homepage = "commandline chromecast player";
+    homepage = "https://github.com/xat/castnow";
     license = lib.licenses.mit;
     maintainers = with lib.maintainers; [ ];
     mainProgram = "castnow";
diff --git a/pkgs/tools/networking/chrony/default.nix b/pkgs/tools/networking/chrony/default.nix
index 74132e792447..4b8b8e8b9708 100644
--- a/pkgs/tools/networking/chrony/default.nix
+++ b/pkgs/tools/networking/chrony/default.nix
@@ -42,7 +42,7 @@ stdenv.mkDerivation rec {
   meta = with lib; {
     description = "Sets your computer's clock from time servers on the Net";
     homepage = "https://chrony.tuxfamily.org/";
-    license = licenses.gpl2;
+    license = licenses.gpl2Only;
     platforms = with platforms; linux ++ freebsd ++ openbsd;
     maintainers = with maintainers; [ fpletz thoughtpolice ];
 
diff --git a/pkgs/tools/networking/cksfv/default.nix b/pkgs/tools/networking/cksfv/default.nix
index 2d5a2b533a61..d8a255337504 100644
--- a/pkgs/tools/networking/cksfv/default.nix
+++ b/pkgs/tools/networking/cksfv/default.nix
@@ -14,7 +14,7 @@ stdenv.mkDerivation rec {
     description = "A tool for verifying files against a SFV checksum file";
     maintainers = with maintainers; [ ];
     platforms = platforms.all;
-    license = licenses.gpl2;
+    license = licenses.gpl2Plus;
     mainProgram = "cksfv";
   };
 }
diff --git a/pkgs/tools/networking/cloud-custodian/default.nix b/pkgs/tools/networking/cloud-custodian/default.nix
index 3e4475df545e..0953a5e516da 100644
--- a/pkgs/tools/networking/cloud-custodian/default.nix
+++ b/pkgs/tools/networking/cloud-custodian/default.nix
@@ -6,14 +6,14 @@
 
 python3.pkgs.buildPythonApplication rec {
   pname = "cloud-custodian";
-  version = "0.9.35.0";
+  version = "0.9.36.0";
   pyproject = true;
 
   src = fetchFromGitHub {
     owner = "cloud-custodian";
     repo = "cloud-custodian";
     rev = "refs/tags/${version}";
-    hash = "sha256-iiyYtAtAQKTGrXdIPXGs11QWuPWn+IWmXpjmYO5S6Pg=";
+    hash = "sha256-cOzh0lNBh35MQx4wg4ssg+haX1kPLVh3GJS27/eKlZI=";
   };
 
   pythonRelaxDeps = [
diff --git a/pkgs/tools/networking/cntlm/default.nix b/pkgs/tools/networking/cntlm/default.nix
index 45fc56f3ba2d..b2a4193ff049 100644
--- a/pkgs/tools/networking/cntlm/default.nix
+++ b/pkgs/tools/networking/cntlm/default.nix
@@ -25,7 +25,7 @@ stdenv.mkDerivation rec {
   meta = with lib; {
     description = "NTLM/NTLMv2 authenticating HTTP proxy";
     homepage = "https://cntlm.sourceforge.net/";
-    license = licenses.gpl2;
+    license = licenses.gpl2Only;
     maintainers =
       [
         maintainers.qknight
diff --git a/pkgs/tools/networking/corerad/default.nix b/pkgs/tools/networking/corerad/default.nix
index bb0ac8f32176..4caad92fc489 100644
--- a/pkgs/tools/networking/corerad/default.nix
+++ b/pkgs/tools/networking/corerad/default.nix
@@ -17,12 +17,8 @@ buildGoModule rec {
   # we fetch the expected tag's timestamp from a file in the root of the
   # repository.
   preBuild = ''
-    buildFlagsArray=(
-      -ldflags="
-        -X github.com/mdlayher/corerad/internal/build.linkTimestamp=$(<.gittagtime)
-        -X github.com/mdlayher/corerad/internal/build.linkVersion=v${version}
-      "
-    )
+    ldflags+=" -X github.com/mdlayher/corerad/internal/build.linkVersion=v${version}"
+    ldflags+=" -X github.com/mdlayher/corerad/internal/build.linkTimestamp=$(<.gittagtime)"
   '';
 
   passthru.tests = {
diff --git a/pkgs/tools/networking/corkscrew/default.nix b/pkgs/tools/networking/corkscrew/default.nix
index 882b742ebc76..d97d93e62f61 100644
--- a/pkgs/tools/networking/corkscrew/default.nix
+++ b/pkgs/tools/networking/corkscrew/default.nix
@@ -15,7 +15,7 @@ stdenv.mkDerivation rec {
   meta = with lib; {
     homepage = "https://github.com/bryanpkc/corkscrew";
     description = "A tool for tunneling SSH through HTTP proxies";
-    license = lib.licenses.gpl2;
+    license = lib.licenses.gpl2Only;
     platforms = platforms.unix;
     mainProgram = "corkscrew";
   };
diff --git a/pkgs/tools/networking/curl-impersonate/default.nix b/pkgs/tools/networking/curl-impersonate/default.nix
index be9f3f61df1c..53db8a622080 100644
--- a/pkgs/tools/networking/curl-impersonate/default.nix
+++ b/pkgs/tools/networking/curl-impersonate/default.nix
@@ -1,6 +1,7 @@
 { lib
 , stdenv
 , fetchFromGitHub
+, fetchpatch
 , callPackage
 , buildGoModule
 , installShellFiles
@@ -30,6 +31,8 @@ let
     pname = "curl-impersonate-${name}";
     version = "0.6.1";
 
+    outputs = [ "out" "dev" ];
+
     src = fetchFromGitHub {
       owner = "lwthiker";
       repo = "curl-impersonate";
@@ -41,6 +44,12 @@ let
       # Fix shebangs in the NSS build script
       # (can't just patchShebangs since makefile unpacks it)
       ./curl-impersonate-0.5.2-fix-shebangs.patch
+
+      # SOCKS5 heap buffer overflow - https://curl.se/docs/CVE-2023-38545.html
+      (fetchpatch {
+        url = "https://github.com/lwthiker/curl-impersonate/commit/e7b90a0d9c61b6954aca27d346750240e8b6644e.patch";
+        hash = "sha256-jFrz4Q+MJGfNmwwzHhThado4c9hTd/+b/bfRsr3FW5k=";
+      })
     ];
 
     # Disable blanket -Werror to fix build on `gcc-13` related to minor
@@ -123,6 +132,9 @@ let
 
       # Install zsh and fish completions
       installShellCompletion $TMPDIR/curl-impersonate-${name}.{zsh,fish}
+
+      # Install headers
+      make -C curl-*/include install
     '';
 
     preFixup = let
@@ -159,12 +171,6 @@ let
       license = with licenses; [ curl mit ];
       maintainers = with maintainers; [ deliciouslytyped lilyinstarlight ];
       platforms = platforms.unix;
-      knownVulnerabilities = [
-        "CVE-2023-38545"  # SOCKS5 heap buffer overflow - https://curl.se/docs/CVE-2023-38545.html
-        "CVE-2023-32001"  # fopen TOCTOU race condition - https://curl.se/docs/CVE-2023-32001.html
-        "CVE-2022-43551"  # HSTS bypass - https://curl.se/docs/CVE-2022-43551.html
-        "CVE-2022-42916"  # HSTS bypass - https://curl.se/docs/CVE-2022-42916.html
-      ];
     };
   };
 in
diff --git a/pkgs/tools/networking/curl/8.7.1-compression-fix.patch b/pkgs/tools/networking/curl/8.7.1-compression-fix.patch
new file mode 100644
index 000000000000..53747b54c461
--- /dev/null
+++ b/pkgs/tools/networking/curl/8.7.1-compression-fix.patch
@@ -0,0 +1,168 @@
+From b30d694a027eb771c02a3db0dee0ca03ccab7377 Mon Sep 17 00:00:00 2001
+From: Stefan Eissing <stefan@eissing.org>
+Date: Thu, 28 Mar 2024 11:08:15 +0100
+Subject: [PATCH] content_encoding: brotli and others, pass through 0-length
+ writes
+
+- curl's transfer handling may write 0-length chunks at the end of the
+  download with an EOS flag. (HTTP/2 does this commonly)
+
+- content encoders need to pass-through such a write and not count this
+  as error in case they are finished decoding
+
+Fixes #13209
+Fixes #13212
+Closes #13219
+---
+ lib/content_encoding.c         | 10 +++++-----
+ tests/http/test_02_download.py | 13 +++++++++++++
+ tests/http/testenv/env.py      |  7 ++++++-
+ tests/http/testenv/httpd.py    | 20 ++++++++++++++++++++
+ 4 files changed, 44 insertions(+), 6 deletions(-)
+
+diff --git a/lib/content_encoding.c b/lib/content_encoding.c
+index c1abf24e8c027c..8e926dd2ecd5ad 100644
+--- a/lib/content_encoding.c
++++ b/lib/content_encoding.c
+@@ -300,7 +300,7 @@ static CURLcode deflate_do_write(struct Curl_easy *data,
+   struct zlib_writer *zp = (struct zlib_writer *) writer;
+   z_stream *z = &zp->z;     /* zlib state structure */
+ 
+-  if(!(type & CLIENTWRITE_BODY))
++  if(!(type & CLIENTWRITE_BODY) || !nbytes)
+     return Curl_cwriter_write(data, writer->next, type, buf, nbytes);
+ 
+   /* Set the compressed input when this function is called */
+@@ -457,7 +457,7 @@ static CURLcode gzip_do_write(struct Curl_easy *data,
+   struct zlib_writer *zp = (struct zlib_writer *) writer;
+   z_stream *z = &zp->z;     /* zlib state structure */
+ 
+-  if(!(type & CLIENTWRITE_BODY))
++  if(!(type & CLIENTWRITE_BODY) || !nbytes)
+     return Curl_cwriter_write(data, writer->next, type, buf, nbytes);
+ 
+   if(zp->zlib_init == ZLIB_INIT_GZIP) {
+@@ -669,7 +669,7 @@ static CURLcode brotli_do_write(struct Curl_easy *data,
+   CURLcode result = CURLE_OK;
+   BrotliDecoderResult r = BROTLI_DECODER_RESULT_NEEDS_MORE_OUTPUT;
+ 
+-  if(!(type & CLIENTWRITE_BODY))
++  if(!(type & CLIENTWRITE_BODY) || !nbytes)
+     return Curl_cwriter_write(data, writer->next, type, buf, nbytes);
+ 
+   if(!bp->br)
+@@ -762,7 +762,7 @@ static CURLcode zstd_do_write(struct Curl_easy *data,
+   ZSTD_outBuffer out;
+   size_t errorCode;
+ 
+-  if(!(type & CLIENTWRITE_BODY))
++  if(!(type & CLIENTWRITE_BODY) || !nbytes)
+     return Curl_cwriter_write(data, writer->next, type, buf, nbytes);
+ 
+   if(!zp->decomp) {
+@@ -916,7 +916,7 @@ static CURLcode error_do_write(struct Curl_easy *data,
+   (void) buf;
+   (void) nbytes;
+ 
+-  if(!(type & CLIENTWRITE_BODY))
++  if(!(type & CLIENTWRITE_BODY) || !nbytes)
+     return Curl_cwriter_write(data, writer->next, type, buf, nbytes);
+ 
+   failf(data, "Unrecognized content encoding type. "
+diff --git a/tests/http/test_02_download.py b/tests/http/test_02_download.py
+index 4db9c9d36e9ed5..395fc862f2f839 100644
+--- a/tests/http/test_02_download.py
++++ b/tests/http/test_02_download.py
+@@ -394,6 +394,19 @@ def test_02_27_paused_no_cl(self, env: Env, httpd, nghttpx, repeat):
+         r = client.run(args=[url])
+         r.check_exit_code(0)
+ 
++    @pytest.mark.parametrize("proto", ['http/1.1', 'h2', 'h3'])
++    def test_02_28_get_compressed(self, env: Env, httpd, nghttpx, repeat, proto):
++        if proto == 'h3' and not env.have_h3():
++            pytest.skip("h3 not supported")
++        count = 1
++        urln = f'https://{env.authority_for(env.domain1brotli, proto)}/data-100k?[0-{count-1}]'
++        curl = CurlClient(env=env)
++        r = curl.http_download(urls=[urln], alpn_proto=proto, extra_args=[
++            '--compressed'
++        ])
++        r.check_exit_code(code=0)
++        r.check_response(count=count, http_status=200)
++
+     def check_downloads(self, client, srcfile: str, count: int,
+                         complete: bool = True):
+         for i in range(count):
+diff --git a/tests/http/testenv/env.py b/tests/http/testenv/env.py
+index a207059dcd57c5..13c5d6bd46ee57 100644
+--- a/tests/http/testenv/env.py
++++ b/tests/http/testenv/env.py
+@@ -129,10 +129,11 @@ def __init__(self):
+         self.htdocs_dir = os.path.join(self.gen_dir, 'htdocs')
+         self.tld = 'http.curl.se'
+         self.domain1 = f"one.{self.tld}"
++        self.domain1brotli = f"brotli.one.{self.tld}"
+         self.domain2 = f"two.{self.tld}"
+         self.proxy_domain = f"proxy.{self.tld}"
+         self.cert_specs = [
+-            CertificateSpec(domains=[self.domain1, 'localhost'], key_type='rsa2048'),
++            CertificateSpec(domains=[self.domain1, self.domain1brotli, 'localhost'], key_type='rsa2048'),
+             CertificateSpec(domains=[self.domain2], key_type='rsa2048'),
+             CertificateSpec(domains=[self.proxy_domain, '127.0.0.1'], key_type='rsa2048'),
+             CertificateSpec(name="clientsX", sub_specs=[
+@@ -376,6 +377,10 @@ def htdocs_dir(self) -> str:
+     def domain1(self) -> str:
+         return self.CONFIG.domain1
+ 
++    @property
++    def domain1brotli(self) -> str:
++        return self.CONFIG.domain1brotli
++
+     @property
+     def domain2(self) -> str:
+         return self.CONFIG.domain2
+diff --git a/tests/http/testenv/httpd.py b/tests/http/testenv/httpd.py
+index c04c22699a62c4..b8615875a9a558 100644
+--- a/tests/http/testenv/httpd.py
++++ b/tests/http/testenv/httpd.py
+@@ -50,6 +50,7 @@ class Httpd:
+         'alias', 'env', 'filter', 'headers', 'mime', 'setenvif',
+         'socache_shmcb',
+         'rewrite', 'http2', 'ssl', 'proxy', 'proxy_http', 'proxy_connect',
++        'brotli',
+         'mpm_event',
+     ]
+     COMMON_MODULES_DIRS = [
+@@ -203,6 +204,7 @@ def _mkpath(self, path):
+ 
+     def _write_config(self):
+         domain1 = self.env.domain1
++        domain1brotli = self.env.domain1brotli
+         creds1 = self.env.get_credentials(domain1)
+         domain2 = self.env.domain2
+         creds2 = self.env.get_credentials(domain2)
+@@ -285,6 +287,24 @@ def _write_config(self):
+                 f'</VirtualHost>',
+                 f'',
+             ])
++            # Alternate to domain1 with BROTLI compression
++            conf.extend([  # https host for domain1, h1 + h2
++                f'<VirtualHost *:{self.env.https_port}>',
++                f'    ServerName {domain1brotli}',
++                f'    Protocols h2 http/1.1',
++                f'    SSLEngine on',
++                f'    SSLCertificateFile {creds1.cert_file}',
++                f'    SSLCertificateKeyFile {creds1.pkey_file}',
++                f'    DocumentRoot "{self._docs_dir}"',
++                f'    SetOutputFilter BROTLI_COMPRESS',
++            ])
++            conf.extend(self._curltest_conf(domain1))
++            if domain1 in self._extra_configs:
++                conf.extend(self._extra_configs[domain1])
++            conf.extend([
++                f'</VirtualHost>',
++                f'',
++            ])
+             conf.extend([  # https host for domain2, no h2
+                 f'<VirtualHost *:{self.env.https_port}>',
+                 f'    ServerName {domain2}',
diff --git a/pkgs/tools/networking/curl/default.nix b/pkgs/tools/networking/curl/default.nix
index 6559a5cf4ecb..0bd65a307b0b 100644
--- a/pkgs/tools/networking/curl/default.nix
+++ b/pkgs/tools/networking/curl/default.nix
@@ -59,6 +59,12 @@ stdenv.mkDerivation (finalAttrs: {
     hash = "sha256-b+oqrGpGEPvQQAr7C83b5yWKZMY/H2jlhV68DGWXEM0=";
   };
 
+  patches = lib.optionals (lib.versionOlder finalAttrs.version "8.7.2") [
+    # https://github.com/curl/curl/pull/13219
+    # https://github.com/newsboat/newsboat/issues/2728
+    ./8.7.1-compression-fix.patch
+  ];
+
   postPatch = ''
     patchShebangs scripts
   '';
diff --git a/pkgs/tools/networking/ddns-go/default.nix b/pkgs/tools/networking/ddns-go/default.nix
index 2207fa5baae4..fe5aaed413be 100644
--- a/pkgs/tools/networking/ddns-go/default.nix
+++ b/pkgs/tools/networking/ddns-go/default.nix
@@ -5,13 +5,13 @@
 
 buildGoModule rec {
   pname = "ddns-go";
-  version = "6.3.3";
+  version = "6.5.0";
 
   src = fetchFromGitHub {
     owner = "jeessy2";
     repo = pname;
     rev = "v${version}";
-    hash = "sha256-LsJAuEVJy4jTvFEOgbH6ZiiqbMoGXuMNDhHx4phwd5k=";
+    hash = "sha256-owGVErklezVdXk15qkT70E2uoF9TyoQMEA3Hbvzqm6I=";
   };
 
   vendorHash = "sha256-ckgX+gftWJROe/RpxjuBmXSDxW/PlCOIkrx+erxCP40=";
diff --git a/pkgs/tools/networking/dibbler/default.nix b/pkgs/tools/networking/dibbler/default.nix
deleted file mode 100644
index 92254231bf7c..000000000000
--- a/pkgs/tools/networking/dibbler/default.nix
+++ /dev/null
@@ -1,29 +0,0 @@
-{ lib, stdenv, fetchurl }:
-
-stdenv.mkDerivation rec {
-  pname = "dibbler";
-  version = "1.0.1";
-
-  src = fetchurl {
-    url = "http://www.klub.com.pl/dhcpv6/dibbler/${pname}-${version}.tar.gz";
-    sha256 = "18bnwkvax02scjdg5z8gvrkvy1lhssfnlpsaqb5kkh30w1vri1i7";
-  };
-
-  configureFlags = [
-    "--enable-resolvconf"
-  ];
-
-  # -fcommon: Workaround build failure on -fno-common toolchains like upstream
-  # gcc-10. Otherwise build fails as:
-  #   ld: ./Port-linux/libLowLevel.a(libLowLevel_a-interface.o):(.bss+0x4): multiple definition of `interface_auto_up';
-  #     ./Port-linux/libLowLevel.a(libLowLevel_a-lowlevel-linux-link-state.o):(.bss+0x74): first defined here
-  env.NIX_CFLAGS_COMPILE = lib.optionalString stdenv.isDarwin "-D__APPLE_USE_RFC_2292=1" + " -fcommon";
-
-  meta = with lib; {
-    description = "Portable DHCPv6 implementation";
-    homepage = "https://klub.com.pl/dhcpv6/";
-    license = licenses.gpl2Only;
-    platforms = platforms.all;
-    maintainers = with maintainers; [ fpletz ];
-  };
-}
diff --git a/pkgs/tools/networking/dirb/default.nix b/pkgs/tools/networking/dirb/default.nix
index 17a518bdea21..313ecc110b0f 100644
--- a/pkgs/tools/networking/dirb/default.nix
+++ b/pkgs/tools/networking/dirb/default.nix
@@ -41,7 +41,7 @@ in stdenv.mkDerivation rec {
     description = "A web content scanner";
     homepage = "https://dirb.sourceforge.net/";
     maintainers = with lib.maintainers; [ bennofs ];
-    license = with lib.licenses; [ gpl2 ];
+    license = with lib.licenses; [ gpl2Only ];
     platforms = lib.platforms.unix;
   };
 }
diff --git a/pkgs/tools/networking/dnsmasq/default.nix b/pkgs/tools/networking/dnsmasq/default.nix
index c63c2fa4fbbc..623c498f995f 100644
--- a/pkgs/tools/networking/dnsmasq/default.nix
+++ b/pkgs/tools/networking/dnsmasq/default.nix
@@ -90,7 +90,7 @@ stdenv.mkDerivation rec {
   meta = with lib; {
     description = "An integrated DNS, DHCP and TFTP server for small networks";
     homepage = "https://www.thekelleys.org.uk/dnsmasq/doc.html";
-    license = licenses.gpl2;
+    license = licenses.gpl2Only;
     mainProgram = "dnsmasq";
     platforms = with platforms; linux ++ darwin;
     maintainers = with maintainers; [ eelco fpletz globin ];
diff --git a/pkgs/tools/networking/dnsproxy/default.nix b/pkgs/tools/networking/dnsproxy/default.nix
index aca090778544..6036d6658d02 100644
--- a/pkgs/tools/networking/dnsproxy/default.nix
+++ b/pkgs/tools/networking/dnsproxy/default.nix
@@ -2,13 +2,13 @@
 
 buildGoModule rec {
   pname = "dnsproxy";
-  version = "0.71.0";
+  version = "0.71.1";
 
   src = fetchFromGitHub {
     owner = "AdguardTeam";
     repo = "dnsproxy";
     rev = "v${version}";
-    hash = "sha256-2Qn5lYam4bMA7JS/rovHTUGXovCUOhikpv8pcWzyO24=";
+    hash = "sha256-g+QjGU+9//Ms7s61IzkxLTffmu1XIhzUX841e86JqE4=";
   };
 
   vendorHash = "sha256-8t1/XIjDXRHumHkRNxQBeexL2qN94AHModk8ioLpMNY=";
diff --git a/pkgs/tools/networking/dsniff/default.nix b/pkgs/tools/networking/dsniff/default.nix
index ae663abb08dc..5f40fa4ea374 100644
--- a/pkgs/tools/networking/dsniff/default.nix
+++ b/pkgs/tools/networking/dsniff/default.nix
@@ -1,10 +1,7 @@
-{ gcc9Stdenv, lib, fetchFromGitLab, autoreconfHook, libpcap, db, glib, libnet, libnids, symlinkJoin, openssl
+{ stdenv, lib, fetchFromGitLab, autoreconfHook, libpcap, db, glib, libnet, libnids, symlinkJoin, openssl
 , rpcsvc-proto, libtirpc, libnsl, libnl
 }:
 
-# We compile with GCC 9 since GCC 10 segfaults on the code
-# (see https://bugzilla.redhat.com/show_bug.cgi?id=1862809).
-
 let
   /*
   dsniff's build system unconditionnaly wants static libraries and does not
@@ -42,7 +39,7 @@ let
     inherit (openssl) name;
     paths = with openssl.override { static = true; }; [ out dev ];
   };
-in gcc9Stdenv.mkDerivation rec {
+in stdenv.mkDerivation rec {
   pname = "dsniff";
   version = "2.4b1";
   # upstream is so old that nearly every distribution packages the beta version.
diff --git a/pkgs/tools/networking/easyrsa/default.nix b/pkgs/tools/networking/easyrsa/default.nix
index 1591bff41c8f..47f4e5a7b835 100644
--- a/pkgs/tools/networking/easyrsa/default.nix
+++ b/pkgs/tools/networking/easyrsa/default.nix
@@ -55,7 +55,7 @@ stdenv.mkDerivation rec {
   meta = with lib; {
     description = "Simple shell based CA utility";
     homepage = "https://openvpn.net/";
-    license = licenses.gpl2;
+    license = licenses.gpl2Only;
     maintainers = [ maintainers.offline maintainers.numinit ];
     platforms = platforms.unix;
   };
diff --git a/pkgs/tools/networking/eggdrop/default.nix b/pkgs/tools/networking/eggdrop/default.nix
index 788a2df8cf10..fad18ce2213f 100644
--- a/pkgs/tools/networking/eggdrop/default.nix
+++ b/pkgs/tools/networking/eggdrop/default.nix
@@ -28,7 +28,7 @@ stdenv.mkDerivation rec {
   ];
 
   meta = with lib; {
-    license = licenses.gpl2;
+    license = licenses.gpl2Plus;
     platforms = platforms.unix;
     homepage = "https://www.eggheads.org";
     description = "An Internet Relay Chat (IRC) bot";
diff --git a/pkgs/tools/networking/email/default.nix b/pkgs/tools/networking/email/default.nix
index c4ef390e6b81..3472fdc17225 100644
--- a/pkgs/tools/networking/email/default.nix
+++ b/pkgs/tools/networking/email/default.nix
@@ -44,7 +44,7 @@ stdenv.mkDerivation {
 
   meta = {
     description = "Command line SMTP client";
-    license = with lib.licenses; [ gpl2 ];
+    license = with lib.licenses; [ gpl2Plus ];
     homepage = "https://deanproxy.com/code";
     platforms = lib.platforms.unix;
     mainProgram = "email";
diff --git a/pkgs/tools/networking/eternal-terminal/default.nix b/pkgs/tools/networking/eternal-terminal/default.nix
index 22ed2dcb80e7..27778006b1e1 100644
--- a/pkgs/tools/networking/eternal-terminal/default.nix
+++ b/pkgs/tools/networking/eternal-terminal/default.nix
@@ -12,13 +12,13 @@
 
 stdenv.mkDerivation rec {
   pname = "eternal-terminal";
-  version = "6.2.4";
+  version = "6.2.8";
 
   src = fetchFromGitHub {
     owner = "MisterTea";
     repo = "EternalTerminal";
     rev = "refs/tags/et-v${version}";
-    hash = "sha256-9W9Pz0VrFU+HNpf98I3CLrn8+kpjjNLOUK8gGcDJcI8=";
+    hash = "sha256-7LhCP7zARpigsDJmA7y/ZIgN06l8aCszXryzPoa4aL0=";
   };
 
   nativeBuildInputs = [
@@ -34,6 +34,7 @@ stdenv.mkDerivation rec {
   ];
 
   preBuild = ''
+    mkdir -p ../external_imported/Catch2/single_include/catch2
     cp ${catch2}/include/catch2/catch.hpp ../external_imported/Catch2/single_include/catch2/catch.hpp
   '';
 
@@ -54,7 +55,7 @@ stdenv.mkDerivation rec {
     homepage = "https://eternalterminal.dev/";
     changelog = "https://github.com/MisterTea/EternalTerminal/releases/tag/et-v${version}";
     license = licenses.asl20;
-    maintainers = with maintainers; [ dezgeg ];
+    maintainers = with maintainers; [ dezgeg jshort ];
     platforms = platforms.linux ++ platforms.darwin;
   };
 }
diff --git a/pkgs/tools/networking/ferm/default.nix b/pkgs/tools/networking/ferm/default.nix
index 518bb5c26daa..e14b3f8572b8 100644
--- a/pkgs/tools/networking/ferm/default.nix
+++ b/pkgs/tools/networking/ferm/default.nix
@@ -11,6 +11,10 @@ in stdenv.mkDerivation rec {
     sha256 = "sha256-wA2RDVOU5pZ1YI617g9QTVz9pB6ZCi2akbqsbfk+P5I=";
   };
 
+  patches = [
+    ./import-ferm-wrapped.patch
+  ];
+
   # perl is used at build time to gather the ferm version.
   nativeBuildInputs = [ makeWrapper perl ];
   buildInputs = [ perl ];
@@ -39,7 +43,7 @@ in stdenv.mkDerivation rec {
       command. The firewall configuration resembles structured programming-like
       language, which can contain levels and lists.
     '';
-    license = lib.licenses.gpl2;
+    license = lib.licenses.gpl2Plus;
     maintainers = with lib.maintainers; [mic92];
     platforms = lib.platforms.linux;
   };
diff --git a/pkgs/tools/networking/ferm/import-ferm-wrapped.patch b/pkgs/tools/networking/ferm/import-ferm-wrapped.patch
new file mode 100644
index 000000000000..3975c79af886
--- /dev/null
+++ b/pkgs/tools/networking/ferm/import-ferm-wrapped.patch
@@ -0,0 +1,14 @@
+--- old/src/import-ferm
++++ new/src/import-ferm
+@@ -42,9 +42,9 @@
+     # find the main "ferm" program
+     my $ferm;
+     if ($0 =~ /^(.*)\//) {
+-        $ferm = "$1/ferm";
++        $ferm = "$1/.ferm-wrapped";
+     } else {
+-        $ferm = 'ferm';
++        $ferm = '.ferm-wrapped';
+     }
+ 
+     # Perl 5.24 requires this prefix or else it will only look in @INC
diff --git a/pkgs/tools/networking/ghz/default.nix b/pkgs/tools/networking/ghz/default.nix
index eb20a398e419..ca48241b8ff8 100644
--- a/pkgs/tools/networking/ghz/default.nix
+++ b/pkgs/tools/networking/ghz/default.nix
@@ -2,16 +2,16 @@
 
 buildGoModule rec {
   pname = "ghz";
-  version = "0.117.0";
+  version = "0.118.0";
 
   src = fetchFromGitHub {
     owner = "bojand";
     repo = "ghz";
     rev = "v${version}";
-    sha256 = "sha256-aAqbSPcz7qQID4H0Vu3VTnbECvlj+We9K5F656k9jTw=";
+    sha256 = "sha256-oBxkXe5PHdi5H5qSwV2G6+wBTvI4nRJuaRnUiq/3l+c=";
   };
 
-  vendorHash = "sha256-jtzCOF5TAHv3PiGxBx65IR/3x6JpqMzsWW8amab8hqQ=";
+  vendorHash = "sha256-h/obb+hJ0XnE7GK7G5djITjiL0OjjIk1q68JM8+EfHo=";
 
   subPackages = [ "cmd/ghz" "cmd/ghz-web" ];
 
diff --git a/pkgs/tools/networking/gp-saml-gui/default.nix b/pkgs/tools/networking/gp-saml-gui/default.nix
index 348d47b667f6..d2c3bfc29210 100644
--- a/pkgs/tools/networking/gp-saml-gui/default.nix
+++ b/pkgs/tools/networking/gp-saml-gui/default.nix
@@ -3,7 +3,7 @@
 , fetchFromGitHub
 , buildPythonPackage
 , webkitgtk
-, wrapGAppsHook
+, wrapGAppsHook3
 , glib-networking
 , gobject-introspection
 , openconnect
@@ -23,7 +23,7 @@ buildPythonPackage rec {
 
   buildInputs = lib.optional stdenv.isLinux glib-networking;
 
-  nativeBuildInputs = [ wrapGAppsHook gobject-introspection glib-networking ];
+  nativeBuildInputs = [ wrapGAppsHook3 gobject-introspection glib-networking ];
 
   propagatedBuildInputs = [
     requests
diff --git a/pkgs/tools/networking/grpc_cli/default.nix b/pkgs/tools/networking/grpc_cli/default.nix
index 9fac34f18bb0..84f498b0a1fa 100644
--- a/pkgs/tools/networking/grpc_cli/default.nix
+++ b/pkgs/tools/networking/grpc_cli/default.nix
@@ -2,12 +2,12 @@
 
 stdenv.mkDerivation rec {
   pname = "grpc_cli";
-  version = "1.63.0";
+  version = "1.64.0";
   src = fetchFromGitHub {
     owner = "grpc";
     repo = "grpc";
     rev = "v${version}";
-    hash = "sha256-xTDHd1VA7xjAnGNNwtk3vZuljVHZsjAzLc/uWdt+2Fs=";
+    hash = "sha256-5mTyXA7jxos+PclImuFDyLTEVkqxm4Kxnorm8R12i9U=";
     fetchSubmodules = true;
   };
   nativeBuildInputs = [ automake cmake autoconf ];
diff --git a/pkgs/tools/networking/gupnp-tools/default.nix b/pkgs/tools/networking/gupnp-tools/default.nix
index 20579a59b81e..254201e28962 100644
--- a/pkgs/tools/networking/gupnp-tools/default.nix
+++ b/pkgs/tools/networking/gupnp-tools/default.nix
@@ -12,7 +12,7 @@
 , gupnp-av
 , gtksourceview4
 , gnome
-, wrapGAppsHook
+, wrapGAppsHook3
 }:
 
 stdenv.mkDerivation rec {
@@ -29,7 +29,7 @@ stdenv.mkDerivation rec {
     ninja
     pkg-config
     gettext
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
diff --git a/pkgs/tools/networking/gvpe/default.nix b/pkgs/tools/networking/gvpe/default.nix
index 5170df24b91c..04033aaa375c 100644
--- a/pkgs/tools/networking/gvpe/default.nix
+++ b/pkgs/tools/networking/gvpe/default.nix
@@ -28,6 +28,6 @@ stdenv.mkDerivation rec {
     homepage = "http://software.schmorp.de/pkg/gvpe.html";
     maintainers = [ maintainers.raskin ];
     platforms = with platforms; linux ++ freebsd;
-    license = licenses.gpl2;
+    license = licenses.gpl2Plus;
   };
 }
diff --git a/pkgs/tools/networking/haguichi/default.nix b/pkgs/tools/networking/haguichi/default.nix
index a921884dda06..ad1ad4a9a6d1 100644
--- a/pkgs/tools/networking/haguichi/default.nix
+++ b/pkgs/tools/networking/haguichi/default.nix
@@ -6,7 +6,7 @@
 , pkg-config
 , python3
 , vala
-, wrapGAppsHook
+, wrapGAppsHook3
 , desktop-file-utils
 , glib
 , gtk3
@@ -29,7 +29,7 @@ stdenv.mkDerivation rec {
     pkg-config
     python3
     vala
-    wrapGAppsHook
+    wrapGAppsHook3
     desktop-file-utils # for update-desktop-database
     glib # for glib-compile-resources
     gtk3 # for gtk-update-icon-cache
diff --git a/pkgs/tools/networking/httperf/default.nix b/pkgs/tools/networking/httperf/default.nix
index dca67e7c39a1..54fdb06b6c58 100644
--- a/pkgs/tools/networking/httperf/default.nix
+++ b/pkgs/tools/networking/httperf/default.nix
@@ -30,7 +30,7 @@ stdenv.mkDerivation rec {
     description = "The httperf HTTP load generator";
     homepage = "https://github.com/httperf/httperf";
     maintainers = with maintainers; [ ];
-    license = licenses.gpl2;
+    license = licenses.gpl2Plus;
     platforms = platforms.all;
     mainProgram = "httperf";
   };
diff --git a/pkgs/tools/networking/httptunnel/default.nix b/pkgs/tools/networking/httptunnel/default.nix
index c8ff4fa7719d..9a8a9ee11db5 100644
--- a/pkgs/tools/networking/httptunnel/default.nix
+++ b/pkgs/tools/networking/httptunnel/default.nix
@@ -22,7 +22,7 @@ stdenv.mkDerivation rec {
   meta = with lib; {
     description = "Creates a bidirectional virtual data connection tunnelled in HTTP requests";
     homepage    = "http://www.gnu.org/software/httptunnel/httptunnel.html";
-    license     = licenses.gpl2;
+    license     = licenses.gpl2Only;
     maintainers = with maintainers; [ koral ];
     platforms   = platforms.unix;
   };
diff --git a/pkgs/tools/networking/hurl/default.nix b/pkgs/tools/networking/hurl/default.nix
index 669814c5fb39..cd474a3e6f64 100644
--- a/pkgs/tools/networking/hurl/default.nix
+++ b/pkgs/tools/networking/hurl/default.nix
@@ -11,16 +11,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "hurl";
-  version = "4.2.0";
+  version = "4.3.0";
 
   src = fetchFromGitHub {
     owner = "Orange-OpenSource";
     repo = pname;
     rev = version;
-    hash = "sha256-77RGS4B5Jwb/J5eOG2A7sdfAU7PnRaxqz5nogpOnj70=";
+    hash = "sha256-gSkiNwRR47CZ1YjVa5o8EByCzWBAYPfsMRXydTwFwp0=";
   };
 
-  cargoHash = "sha256-3D8jyHFrhb3y4yeYtO1GqSyb5wlqUydf/4clsbLjJVE=";
+  cargoHash = "sha256-dY00xcMnOCWhdRzC+3mTHSIqeYEPUDBJeYd/GiLM/38=";
 
   nativeBuildInputs = [
     pkg-config
diff --git a/pkgs/tools/networking/i2pd/default.nix b/pkgs/tools/networking/i2pd/default.nix
index 6ee9bafb6125..19c14a7c7ab0 100644
--- a/pkgs/tools/networking/i2pd/default.nix
+++ b/pkgs/tools/networking/i2pd/default.nix
@@ -8,13 +8,13 @@
 
 stdenv.mkDerivation rec {
   pname = "i2pd";
-  version = "2.51.0";
+  version = "2.52.0";
 
   src = fetchFromGitHub {
     owner = "PurpleI2P";
     repo = pname;
     rev = version;
-    sha256 = "sha256-qMdlB7SyiYZcZL1DBDKXNUXlPnHcAxkAxUFpFrLs1go=";
+    sha256 = "sha256-0n3cPF3KBuzNOagrn88HeTvFAu1sYTkijpiGr77X5GI=";
   };
 
   buildInputs = [ boost zlib openssl ]
diff --git a/pkgs/tools/networking/ifstat-legacy/default.nix b/pkgs/tools/networking/ifstat-legacy/default.nix
index ff36f83ef8dc..25c7dbb60ec4 100644
--- a/pkgs/tools/networking/ifstat-legacy/default.nix
+++ b/pkgs/tools/networking/ifstat-legacy/default.nix
@@ -25,7 +25,7 @@ stdenv.mkDerivation rec {
     homepage    = "http://gael.roualland.free.fr/ifstat/";
     maintainers = with maintainers; [ peterhoeg ];
     platforms   = platforms.unix;
-    license     = licenses.gpl2;
+    license     = licenses.gpl2Plus;
     mainProgram = "ifstat-legacy";
   };
 }
diff --git a/pkgs/tools/networking/ip2unix/default.nix b/pkgs/tools/networking/ip2unix/default.nix
index b37d5b1272c8..e30b806c6dc7 100644
--- a/pkgs/tools/networking/ip2unix/default.nix
+++ b/pkgs/tools/networking/ip2unix/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetchFromGitHub, meson, ninja, pkg-config, yaml-cpp, systemd
+{ lib, stdenv, fetchFromGitHub, fetchpatch, meson, ninja, pkg-config, yaml-cpp, systemd
 , python3Packages, asciidoc, libxslt, docbook_xml_dtd_45, docbook_xsl
 , libxml2, docbook5
 }:
@@ -14,6 +14,15 @@ stdenv.mkDerivation rec {
     hash = "sha256-+p5wQbX35LAjZ4vIE4AhI4M6gQ7gVviqf9jJDAr9xg8";
   };
 
+  patches = [
+    # https://github.com/nixcloud/ip2unix/pull/35
+    # fix out of range string_view access
+    (fetchpatch {
+      url = "https://github.com/nixcloud/ip2unix/commit/050ddf76b4b925f27e255fbb820b0700407ceb2b.patch";
+      hash = "sha256-5vaLmZmwuiMGV4KnVhuDSnXG1a390aBU51TShwpaMLs=";
+    })
+  ];
+
   nativeBuildInputs = [
     meson ninja pkg-config asciidoc libxslt.bin docbook_xml_dtd_45 docbook_xsl
     libxml2.bin docbook5 python3Packages.pytest python3Packages.pytest-timeout
diff --git a/pkgs/tools/networking/isync/default.nix b/pkgs/tools/networking/isync/default.nix
index 89b200e8e563..bfe968456a2d 100644
--- a/pkgs/tools/networking/isync/default.nix
+++ b/pkgs/tools/networking/isync/default.nix
@@ -30,7 +30,7 @@ stdenv.mkDerivation rec {
 
   postInstall = lib.optionalString withCyrusSaslXoauth2 ''
     wrapProgram "$out/bin/mbsync" \
-        --prefix SASL_PATH : "${lib.makeSearchPath "lib/sasl2" [ cyrus-sasl-xoauth2 ]}"
+        --prefix SASL_PATH : "${lib.makeSearchPath "lib/sasl2" [ cyrus-sasl-xoauth2 cyrus_sasl.out ]}"
   '';
 
   meta = with lib; {
diff --git a/pkgs/tools/networking/juicity/default.nix b/pkgs/tools/networking/juicity/default.nix
index 5ced17c74824..0bcf6a5d30dc 100644
--- a/pkgs/tools/networking/juicity/default.nix
+++ b/pkgs/tools/networking/juicity/default.nix
@@ -4,13 +4,13 @@
 }:
 buildGoModule rec {
   pname = "juicity";
-  version = "0.4.2";
+  version = "0.4.3";
 
   src = fetchFromGitHub {
     owner = "juicity";
     repo = pname;
     rev = "v${version}";
-    hash = "sha256-JC4VGM7aY+fYo0F9yAkgTbZA56ztyeoIx9PARlBjkh4=";
+    hash = "sha256-4sej/nb7d58+hSCaD6KIfDsqiGmgECPIbRKR65TbMBM=";
   };
 
   vendorHash = "sha256-SM5ZrTtuqenPsGjphkCM9JHzucw0/qBmevD+3/kyF6k=";
diff --git a/pkgs/tools/networking/jwhois/default.nix b/pkgs/tools/networking/jwhois/default.nix
index 9026a60e2f3a..99a84fbb11d2 100644
--- a/pkgs/tools/networking/jwhois/default.nix
+++ b/pkgs/tools/networking/jwhois/default.nix
@@ -1,23 +1,38 @@
-{lib, stdenv, lynx, fetchurl}:
+{
+  lib,
+  stdenv,
+  fetchurl,
+  lynx,
+}:
 
-stdenv.mkDerivation rec {
+stdenv.mkDerivation (finalAttrs: {
   pname = "jwhois";
   version = "4.0";
 
   src = fetchurl {
-    url = "mirror://gnu/jwhois/jwhois-${version}.tar.gz";
-    sha256 = "0knn7iaj5v0n6jpmldyv2yk4bcy9dn3kywmv63bwc5drh9kvi6zs";
+    url = "mirror://gnu/jwhois/jwhois-${finalAttrs.version}.tar.gz";
+    hash = "sha256-+pu4Z4K5FcbXMLtyP4dtybNFphfbN1qvNBbsIlU81k4=";
   };
 
-  postInstall = ''
-    ln -s jwhois $out/bin/whois
-    sed -i -e "s|/usr/bin/lynx|${lynx}/bin/lynx|g" $out/etc/jwhois.conf
-  '';
+  patches = [
+    ./connect.patch
+    ./service-name.patch
+  ];
 
-  patches = [ ./connect.patch ./service-name.patch ];
+  postPatch = ''
+    # avoids error on darwin where `-Werror=implicit-function-declaration` is set by default
+    sed 1i'void timeout_init();' -i src/jwhois.c
+
+    substituteInPlace example/jwhois.conf \
+        --replace-fail "/usr/bin/lynx" ${lib.getExe lynx}
+  '';
 
   makeFlags = [ "AR=${stdenv.cc.bintools.targetPrefix}ar" ];
 
+  postInstall = ''
+    ln -s $out/bin/jwhois $out/bin/whois
+  '';
+
   # Work around error from <stdio.h> on aarch64-darwin:
   #     error: 'TARGET_OS_IPHONE' is not defined, evaluates to 0 [-Werror,-Wundef-prefix=TARGET_OS_]
   # TODO: this should probably be fixed at a lower level than this?
@@ -26,7 +41,7 @@ stdenv.mkDerivation rec {
   meta = {
     description = "A client for the WHOIS protocol allowing you to query the owner of a domain name";
     homepage = "https://www.gnu.org/software/jwhois/";
-    license = lib.licenses.gpl3;
+    license = lib.licenses.gpl3Only;
     platforms = lib.platforms.unix;
   };
-}
+})
diff --git a/pkgs/tools/networking/libnids/default.nix b/pkgs/tools/networking/libnids/default.nix
index e6df2850a1c9..97edccfea173 100644
--- a/pkgs/tools/networking/libnids/default.nix
+++ b/pkgs/tools/networking/libnids/default.nix
@@ -23,7 +23,7 @@ stdenv.mkDerivation {
   meta = with lib; {
     description = "An E-component of Network Intrusion Detection System which emulates the IP stack of Linux 2.0.x";
     homepage = "https://libnids.sourceforge.net/";
-    license = licenses.gpl2;
+    license = licenses.gpl2Only;
     maintainers = [ maintainers.symphorien ];
     # probably also bsd and solaris
     platforms = platforms.linux;
diff --git a/pkgs/tools/networking/linkchecker/default.nix b/pkgs/tools/networking/linkchecker/default.nix
index 2adf2c8f82d1..dad2af76964f 100644
--- a/pkgs/tools/networking/linkchecker/default.nix
+++ b/pkgs/tools/networking/linkchecker/default.nix
@@ -1,5 +1,4 @@
 { lib
-, stdenv
 , fetchFromGitHub
 , python3
 , gettext
@@ -8,50 +7,49 @@
 python3.pkgs.buildPythonApplication rec {
   pname = "linkchecker";
   version = "10.2.1";
-  format = "pyproject";
+  pyproject = true;
 
   src = fetchFromGitHub {
-    owner = pname;
-    repo = pname;
+    owner = "linkchecker";
+    repo = "linkchecker";
     rev = "refs/tags/v${version}";
     hash = "sha256-z7Qp74cai8GfsxB4n9dSCWQepp0/4PimFiRJQBaVSoo=";
   };
 
-  nativeBuildInputs = [
-    gettext
+  nativeBuildInputs = [ gettext ];
+
+  build-system = with python3.pkgs; [
+    hatchling
+    hatch-vcs
+    polib # translations
   ];
 
-  propagatedBuildInputs = with python3.pkgs; [
+  dependencies = with python3.pkgs; [
     argcomplete
     beautifulsoup4
-    configargparse
     dnspython
-    hatch-vcs
-    hatchling
-    pyopenssl
     requests
   ];
 
   nativeCheckInputs = with python3.pkgs; [
+    pyopenssl
     parameterized
     pytestCheckHook
   ];
 
   disabledTests = [
-    # test_timeit2 is flakey, and depends sleep being precise to the milisecond
     "TestLoginUrl"
-    "test_timeit2"
+    "test_timeit2" # flakey, and depends sleep being precise to the milisecond
+    "test_internet" # uses network, fails on Darwin (not sure why it doesn't fail on linux)
   ];
 
   disabledTestPaths = [
     "tests/checker/telnetserver.py"
     "tests/checker/test_telnet.py"
-  ] ++ lib.optionals stdenv.isDarwin [
-    "tests/checker/test_content_allows_robots.py"
-    "tests/checker/test_http*.py"
-    "tests/test_network.py"
   ];
 
+  __darwinAllowLocalNetworking = true;
+
   meta = with lib; {
     description = "Check websites for broken links";
     mainProgram = "linkchecker";
diff --git a/pkgs/tools/networking/lychee/default.nix b/pkgs/tools/networking/lychee/default.nix
index d14121759150..610869897b7b 100644
--- a/pkgs/tools/networking/lychee/default.nix
+++ b/pkgs/tools/networking/lychee/default.nix
@@ -10,16 +10,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "lychee";
-  version = "0.15.0";
+  version = "0.15.1";
 
   src = fetchFromGitHub {
     owner = "lycheeverse";
     repo = pname;
     rev = "v${version}";
-    hash = "sha256-luc6rzNYhS+c5B4S3/cOvDqnRF+LfRDY1aw99hkF+nE=";
+    hash = "sha256-L1tvP2lZsFD2swhP1MetQFxxxA+EbrI4aDYTJwbpkVI=";
   };
 
-  cargoHash = "sha256-kGdRz5m0L3v3DBeabYq1Zp0bEEPW5C0y+A7tTjWkCwM=";
+  cargoHash = "sha256-SQ9Dgtg3TKAaj9XkpEzA13U8CumGOlpwiW+Lv6leQW4=";
 
   nativeBuildInputs = [ pkg-config ];
 
diff --git a/pkgs/tools/networking/memtier-benchmark/default.nix b/pkgs/tools/networking/memtier-benchmark/default.nix
index d77ef2d417d5..5fff387e72b2 100644
--- a/pkgs/tools/networking/memtier-benchmark/default.nix
+++ b/pkgs/tools/networking/memtier-benchmark/default.nix
@@ -4,13 +4,13 @@
 
 stdenv.mkDerivation rec {
   pname = "memtier-benchmark";
-  version = "2.0.0";
+  version = "2.1.0";
 
   src = fetchFromGitHub {
     owner  = "redislabs";
     repo   = "memtier_benchmark";
     rev    = "refs/tags/${version}";
-    sha256 = "sha256-3KFBj+Cj5qO5k1hy5oSvtXdtTZIbGPJ1fhmnIeCW2s8=";
+    sha256 = "sha256-9oh1LG0O1Jto+8PdPqXXSe8ldWub1o1EJ6nfilfr70A=";
   };
 
   patchPhase = ''
@@ -24,7 +24,7 @@ stdenv.mkDerivation rec {
   meta = {
     description = "Redis and Memcached traffic generation and benchmarking tool";
     homepage    = "https://github.com/redislabs/memtier_benchmark";
-    license     = lib.licenses.gpl2;
+    license     = lib.licenses.gpl2Only;
     platforms   = lib.platforms.linux;
     maintainers = with lib.maintainers; [ thoughtpolice ];
     mainProgram = "memtier_benchmark";
diff --git a/pkgs/tools/networking/minidlna/default.nix b/pkgs/tools/networking/minidlna/default.nix
index 6bdea670c13b..085a5671d24a 100644
--- a/pkgs/tools/networking/minidlna/default.nix
+++ b/pkgs/tools/networking/minidlna/default.nix
@@ -36,7 +36,7 @@ stdenv.mkDerivation {
       compliant with DLNA/UPnP-AV clients.
     '';
     homepage = "https://sourceforge.net/projects/minidlna/";
-    license = licenses.gpl2;
+    license = licenses.gpl2Only;
     platforms = platforms.linux;
     mainProgram = "minidlnad";
   };
diff --git a/pkgs/tools/networking/minio-client/default.nix b/pkgs/tools/networking/minio-client/default.nix
index b9e23b6548ef..34325cab9edb 100644
--- a/pkgs/tools/networking/minio-client/default.nix
+++ b/pkgs/tools/networking/minio-client/default.nix
@@ -2,13 +2,13 @@
 
 buildGoModule rec {
   pname = "minio-client";
-  version = "2024-04-29T09-56-05Z";
+  version = "2024-05-09T17-04-24Z";
 
   src = fetchFromGitHub {
     owner = "minio";
     repo = "mc";
     rev = "RELEASE.${version}";
-    sha256 = "sha256-Fx7D8w5cPrl/TFmMIGZxn00BC0AYaLEh6K1PQ10jTBQ=";
+    sha256 = "sha256-S7bi7BTbsbXUFoDpm0IhOvjnumcKbewV0celUxAx57g=";
   };
 
   vendorHash = "sha256-vqPSzzNIvy+9J9bPE4hxWvRPuPKpB8ahuu6ENnFmfJ0=";
diff --git a/pkgs/tools/networking/miredo/default.nix b/pkgs/tools/networking/miredo/default.nix
index d47485f22b1e..bac427228b52 100644
--- a/pkgs/tools/networking/miredo/default.nix
+++ b/pkgs/tools/networking/miredo/default.nix
@@ -27,7 +27,7 @@ stdenv.mkDerivation rec {
   meta = with lib; {
     description = "Teredo IPv6 Tunneling Daemon";
     homepage = "https://www.remlab.net/miredo/";
-    license = licenses.gpl2;
+    license = licenses.gpl2Plus;
     maintainers = [ ];
     platforms = platforms.unix;
   };
diff --git a/pkgs/tools/networking/mmsd/default.nix b/pkgs/tools/networking/mmsd/default.nix
index f7ea7be22c08..474fa046bffe 100644
--- a/pkgs/tools/networking/mmsd/default.nix
+++ b/pkgs/tools/networking/mmsd/default.nix
@@ -30,7 +30,7 @@ stdenv.mkDerivation rec {
   meta = with lib; {
     description = "Multimedia Messaging Service Daemon";
     homepage = "https://01.org/ofono";
-    license = licenses.gpl2;
+    license = licenses.gpl2Only;
     maintainers = with maintainers; [ ];
     platforms = platforms.linux;
   };
diff --git a/pkgs/tools/networking/mtr/default.nix b/pkgs/tools/networking/mtr/default.nix
index c586d6a75ef1..6343cf53fb2a 100644
--- a/pkgs/tools/networking/mtr/default.nix
+++ b/pkgs/tools/networking/mtr/default.nix
@@ -51,8 +51,9 @@ stdenv.mkDerivation rec {
   meta = with lib; {
     description = "A network diagnostics tool";
     homepage = "https://www.bitwizard.nl/mtr/";
-    license = licenses.gpl2;
+    license = licenses.gpl2Only;
     maintainers = with maintainers; [ koral orivej raskin globin ];
+    mainProgram = "mtr";
     platforms = platforms.unix;
   };
 }
diff --git a/pkgs/tools/networking/mu/default.nix b/pkgs/tools/networking/mu/default.nix
index 3a15790172c3..3472534cbe81 100644
--- a/pkgs/tools/networking/mu/default.nix
+++ b/pkgs/tools/networking/mu/default.nix
@@ -17,7 +17,7 @@
 
 stdenv.mkDerivation rec {
   pname = "mu";
-  version = "1.12.4";
+  version = "1.12.5";
 
   outputs = [ "out" "mu4e" ];
 
@@ -25,7 +25,7 @@ stdenv.mkDerivation rec {
     owner = "djcb";
     repo = "mu";
     rev = "v${version}";
-    hash = "sha256-X5rOBDeT0yfnwTKBWQ4F6DTrFZ/dq3BgQBCn9RAQPf4=";
+    hash = "sha256-dQeXL+CcysmlV6VYSuZtWGSgIhoqP6Y20Qora4l0iP8=";
   };
 
   postPatch = ''
diff --git a/pkgs/tools/networking/nbd/default.nix b/pkgs/tools/networking/nbd/default.nix
index ebef277feb21..68bcc6265558 100644
--- a/pkgs/tools/networking/nbd/default.nix
+++ b/pkgs/tools/networking/nbd/default.nix
@@ -60,7 +60,7 @@ stdenv.mkDerivation rec {
   meta = {
     homepage = "https://nbd.sourceforge.io/";
     description = "Map arbitrary files as block devices over the network";
-    license = lib.licenses.gpl2;
+    license = lib.licenses.gpl2Only;
     platforms = lib.platforms.unix;
     maintainers = with lib.maintainers; [ nickcao ];
   };
diff --git a/pkgs/tools/networking/ndisc6/default.nix b/pkgs/tools/networking/ndisc6/default.nix
index 6a728ec30bfe..a0257b72cfda 100644
--- a/pkgs/tools/networking/ndisc6/default.nix
+++ b/pkgs/tools/networking/ndisc6/default.nix
@@ -27,6 +27,6 @@ stdenv.mkDerivation rec {
     description = "A small collection of useful tools for IPv6 networking";
     maintainers = with maintainers; [ eelco ];
     platforms = platforms.linux;
-    license = licenses.gpl2;
+    license = licenses.gpl2Only;
   };
 }
diff --git a/pkgs/tools/networking/ndjbdns/default.nix b/pkgs/tools/networking/ndjbdns/default.nix
index 6746f456cfe3..7f494de41432 100644
--- a/pkgs/tools/networking/ndjbdns/default.nix
+++ b/pkgs/tools/networking/ndjbdns/default.nix
@@ -21,7 +21,7 @@ stdenv.mkDerivation {
       Djbdns is a fully‐fledged Domain Name System(DNS), originally written by the eminent author of qmail, Dr. D J Bernstein.
     '';
     homepage = "http://pjp.dgplug.org/ndjbdns/";
-    license = licenses.gpl2;
+    license = licenses.gpl2Plus;
     maintainers = [ ];
     platforms = platforms.linux ++ platforms.darwin;
   };
diff --git a/pkgs/tools/networking/nebula/default.nix b/pkgs/tools/networking/nebula/default.nix
index 5420c5fa35c3..09123767d116 100644
--- a/pkgs/tools/networking/nebula/default.nix
+++ b/pkgs/tools/networking/nebula/default.nix
@@ -6,16 +6,16 @@
 
 buildGoModule rec {
   pname = "nebula";
-  version = "1.8.2";
+  version = "1.9.0";
 
   src = fetchFromGitHub {
     owner = "slackhq";
     repo = pname;
     rev = "refs/tags/v${version}";
-    hash = "sha256-tbzdbI4QTLQcJ6kyD3c+jQvXn9ERV/9hrzNPXV9XwVM=";
+    hash = "sha256-JCYH3MTHHIKTA12G99e9VJQtQ6UDSxdTNCLX6ZeOKsM=";
   };
 
-  vendorHash = "sha256-BL9Tx87pBZIAuoneu6Sm2gjyTTC6yOZv5GVYNNeuhtw=";
+  vendorHash = "sha256-4BnFvA0dxsEK7ictDUZ6nol6PtM54kk9dwKPTQbRUR0=";
 
   subPackages = [ "cmd/nebula" "cmd/nebula-cert" ];
 
diff --git a/pkgs/tools/networking/netbird/default.nix b/pkgs/tools/networking/netbird/default.nix
index d8f0661f7d0d..54eab181ac20 100644
--- a/pkgs/tools/networking/netbird/default.nix
+++ b/pkgs/tools/networking/netbird/default.nix
@@ -31,13 +31,13 @@ let
 in
 buildGoModule rec {
   pname = "netbird";
-  version = "0.27.4";
+  version = "0.27.7";
 
   src = fetchFromGitHub {
     owner = "netbirdio";
     repo = pname;
     rev = "v${version}";
-    hash = "sha256-+IcgzwLUA8OIa9od5LkGnI05FTbxC8PmOf8s5+akTrk=";
+    hash = "sha256-byUmgttd0v47G1Powww/YtXOw7TT6Fe2uoOuBOp2l78=";
   };
 
   vendorHash = "sha256-LPq6ovulE+xdoRaQpwA0mNqw3kFxMs/am1ucO8UmDtU=";
diff --git a/pkgs/tools/networking/netmask/default.nix b/pkgs/tools/networking/netmask/default.nix
index f564e09ba032..008688a757c5 100644
--- a/pkgs/tools/networking/netmask/default.nix
+++ b/pkgs/tools/networking/netmask/default.nix
@@ -17,7 +17,7 @@ stdenv.mkDerivation rec {
   meta = with lib; {
     homepage = "https://github.com/tlby/netmask";
     description = "An IP address formatting tool ";
-    license = licenses.gpl2;
+    license = licenses.gpl2Plus;
     platforms = platforms.linux;
     maintainers = [ maintainers.jensbin ];
     mainProgram = "netmask";
diff --git a/pkgs/tools/networking/netrw/default.nix b/pkgs/tools/networking/netrw/default.nix
index c5e54ab8f432..bfab84bf0221 100644
--- a/pkgs/tools/networking/netrw/default.nix
+++ b/pkgs/tools/networking/netrw/default.nix
@@ -28,7 +28,7 @@ stdenv.mkDerivation rec {
 
   meta = {
     description = "Simple tool for transporting data over the network";
-    license = lib.licenses.gpl2;
+    license = lib.licenses.gpl2Plus;
     homepage = "https://mamuti.net/netrw/index.en.html";
     platforms = lib.platforms.unix;
   };
diff --git a/pkgs/tools/networking/nettee/default.nix b/pkgs/tools/networking/nettee/default.nix
index b281d6b29680..74b1f317e204 100644
--- a/pkgs/tools/networking/nettee/default.nix
+++ b/pkgs/tools/networking/nettee/default.nix
@@ -16,7 +16,7 @@ in stdenv.mkDerivation {
   meta = {
     homepage = "http://saf.bio.caltech.edu/nettee.html";
     description = ''Network "tee" program'';
-    license = lib.licenses.gpl2;
+    license = lib.licenses.gpl2Only;
     maintainers = with lib.maintainers; [ Profpatsch ];
     platforms = lib.platforms.linux;
     mainProgram = "nettee";
diff --git a/pkgs/tools/networking/networkd-dispatcher/default.nix b/pkgs/tools/networking/networkd-dispatcher/default.nix
index a2a03d1f8404..3caadb67caf3 100644
--- a/pkgs/tools/networking/networkd-dispatcher/default.nix
+++ b/pkgs/tools/networking/networkd-dispatcher/default.nix
@@ -4,7 +4,7 @@
 , fetchpatch
 , python3Packages
 , asciidoc
-, makeWrapper
+, wrapGAppsNoGuiHook
 , iw
 }:
 
@@ -43,10 +43,12 @@ stdenv.mkDerivation rec {
 
   nativeBuildInputs = [
     asciidoc
-    makeWrapper
+    wrapGAppsNoGuiHook
     python3Packages.wrapPython
   ];
 
+  dontWrapGApps = true;
+
   checkInputs = with python3Packages; [
     dbus-python
     iw
@@ -72,9 +74,14 @@ stdenv.mkDerivation rec {
 
   doCheck = true;
 
+  preFixup = ''
+    makeWrapperArgs+=( \
+      "''${gappsWrapperArgs[@]}" \
+      --prefix PATH : "${lib.makeBinPath [ iw ]}" \
+    )
+  '';
   postFixup = ''
     wrapPythonPrograms
-    wrapProgram $out/bin/networkd-dispatcher --prefix PATH : ${lib.makeBinPath [ iw ]}
   '';
 
   meta = with lib; {
diff --git a/pkgs/tools/networking/networkmanager/applet/default.nix b/pkgs/tools/networking/networkmanager/applet/default.nix
index 908cb8757e36..9b485dafa675 100644
--- a/pkgs/tools/networking/networkmanager/applet/default.nix
+++ b/pkgs/tools/networking/networkmanager/applet/default.nix
@@ -14,7 +14,7 @@
 , gsettings-desktop-schemas
 , libgudev
 , jansson
-, wrapGAppsHook
+, wrapGAppsHook3
 , gobject-introspection
 , python3
 , gtk3
@@ -59,7 +59,7 @@ stdenv.mkDerivation rec {
     ninja
     gettext
     pkg-config
-    wrapGAppsHook
+    wrapGAppsHook3
     gobject-introspection
     python3
   ];
diff --git a/pkgs/tools/networking/networkmanager/default.nix b/pkgs/tools/networking/networkmanager/default.nix
index ce96d5019626..e0d1b5946059 100644
--- a/pkgs/tools/networking/networkmanager/default.nix
+++ b/pkgs/tools/networking/networkmanager/default.nix
@@ -216,5 +216,9 @@ stdenv.mkDerivation rec {
     changelog = "https://gitlab.freedesktop.org/NetworkManager/NetworkManager/-/raw/${version}/NEWS";
     maintainers = teams.freedesktop.members ++ (with maintainers; [ domenkozar obadz ]);
     platforms = platforms.linux;
+    badPlatforms = [
+      # Mandatory shared libraries.
+      lib.systems.inspect.platformPatterns.isStatic
+    ];
   };
 }
diff --git a/pkgs/tools/networking/networkmanager/fortisslvpn/default.nix b/pkgs/tools/networking/networkmanager/fortisslvpn/default.nix
index a1ef139008fc..7e927c650cdd 100644
--- a/pkgs/tools/networking/networkmanager/fortisslvpn/default.nix
+++ b/pkgs/tools/networking/networkmanager/fortisslvpn/default.nix
@@ -82,6 +82,6 @@ stdenv.mkDerivation rec {
   meta = with lib; {
     description = "NetworkManager’s FortiSSL plugin";
     inherit (networkmanager.meta) maintainers platforms;
-    license = licenses.gpl2;
+    license = licenses.gpl2Plus;
   };
 }
diff --git a/pkgs/tools/networking/networkmanager/l2tp/default.nix b/pkgs/tools/networking/networkmanager/l2tp/default.nix
index bcc5e314cfba..4389b2b62099 100644
--- a/pkgs/tools/networking/networkmanager/l2tp/default.nix
+++ b/pkgs/tools/networking/networkmanager/l2tp/default.nix
@@ -22,13 +22,13 @@
 stdenv.mkDerivation rec {
   name = "${pname}${lib.optionalString withGnome "-gnome"}-${version}";
   pname = "NetworkManager-l2tp";
-  version = "1.20.14";
+  version = "1.20.16";
 
   src = fetchFromGitHub {
     owner = "nm-l2tp";
     repo = "network-manager-l2tp";
     rev = version;
-    hash = "sha256-PTDr2M88ZC3Y92zsz/GiSxavd8MdfC9lwxep0+Wjgjk=";
+    hash = "sha256-78TOx3UnAF02UfZ7cWhPKv9bhJCq5UmAMrwd5xUnVrg=";
   };
 
   patches = [
diff --git a/pkgs/tools/networking/nfstrace/default.nix b/pkgs/tools/networking/nfstrace/default.nix
index 1a0268f960d2..c54a5deec46f 100644
--- a/pkgs/tools/networking/nfstrace/default.nix
+++ b/pkgs/tools/networking/nfstrace/default.nix
@@ -53,7 +53,7 @@ stdenv.mkDerivation rec {
   meta = with lib; {
     homepage = "http://epam.github.io/nfstrace/";
     description = "NFS and CIFS tracing/monitoring/capturing/analyzing tool";
-    license = licenses.gpl2;
+    license = licenses.gpl2Only;
     platforms = platforms.linux;
     mainProgram = "nfstrace";
   };
diff --git a/pkgs/tools/networking/noip/default.nix b/pkgs/tools/networking/noip/default.nix
index 85614001342f..d71cbcec507a 100644
--- a/pkgs/tools/networking/noip/default.nix
+++ b/pkgs/tools/networking/noip/default.nix
@@ -21,7 +21,7 @@ stdenv.mkDerivation {
   meta = with lib; {
     description = "Dynamic DNS daemon for no-ip accounts";
     homepage = "http://noip.com/download?page=linux";
-    license = lib.licenses.gpl2;
+    license = lib.licenses.gpl2Plus;
     maintainers = [ lib.maintainers.iand675 ];
     platforms = platforms.linux;
     mainProgram = "noip2";
diff --git a/pkgs/tools/networking/nzbget/default.nix b/pkgs/tools/networking/nzbget/default.nix
index c1eff0920f0b..5ecda7d8f73a 100644
--- a/pkgs/tools/networking/nzbget/default.nix
+++ b/pkgs/tools/networking/nzbget/default.nix
@@ -19,13 +19,13 @@
 
 stdenv.mkDerivation (finalAttrs: {
   pname = "nzbget";
-  version = "24.0";
+  version = "24.1";
 
   src = fetchFromGitHub {
     owner = "nzbgetcom";
     repo = "nzbget";
     rev = "v${finalAttrs.version}";
-    hash = "sha256-vEtbf4y3Jc69FrEzGE34Xt/4oDmZlWTbwispvoypRI0=";
+    hash = "sha256-HovfnTsgu07/lp/spI+iA8H7lOj0Qyrri2MOJKyMKHQ=";
   };
 
   nativeBuildInputs = [ autoreconfHook pkg-config ];
diff --git a/pkgs/tools/networking/ockam/default.nix b/pkgs/tools/networking/ockam/default.nix
index 612e6b7f9a41..0b8c0ad1c5fc 100644
--- a/pkgs/tools/networking/ockam/default.nix
+++ b/pkgs/tools/networking/ockam/default.nix
@@ -13,7 +13,7 @@
 
 let
   pname = "ockam";
-  version = "0.122.0";
+  version = "0.124.0";
 in
 rustPlatform.buildRustPackage {
   inherit pname version;
@@ -22,10 +22,10 @@ rustPlatform.buildRustPackage {
     owner = "build-trust";
     repo = pname;
     rev = "ockam_v${version}";
-    hash = "sha256-0iFY9T+44V3hT21OLGeao2dyEbyNWrQdLAFhMe8QD5o=";
+    hash = "sha256-ovcZD9D/iVF3iIti+vQ29YIJE+UI64BeuA2huJsAx5s=";
   };
 
-  cargoHash = "sha256-yctLLRX6ZHIA19cfQhnbvcveMq2HVyTBrG8aRbr5HXw=";
+  cargoHash = "sha256-z+GIFN5Q3LWnT5PrZ291G2lHgd5mzDFkKwdcxUXvUnU=";
   nativeBuildInputs = [ git pkg-config ];
   buildInputs = [ openssl dbus ]
     ++ lib.optionals stdenv.isDarwin [ AppKit Security ];
diff --git a/pkgs/tools/networking/openfortivpn/default.nix b/pkgs/tools/networking/openfortivpn/default.nix
index 17c0d1390f31..6ab3809c4796 100644
--- a/pkgs/tools/networking/openfortivpn/default.nix
+++ b/pkgs/tools/networking/openfortivpn/default.nix
@@ -12,13 +12,13 @@
 
 stdenv.mkDerivation rec {
   pname = "openfortivpn";
-  version = "1.21.0";
+  version = "1.22.0";
 
   src = fetchFromGitHub {
     owner = "adrienverge";
     repo = pname;
     rev = "v${version}";
-    hash = "sha256-7Yf22EpOTEGGqPoNGnHFyn5A4n7aYFXoSE1G6zyzT3M=";
+    hash = "sha256-K4sTvt0rIDh8A7uhUQmw3zvS2ksclOLBO76wHevRONU=";
   };
 
   # we cannot write the config file to /etc and as we don't need the file, so drop it
diff --git a/pkgs/tools/networking/opensm/default.nix b/pkgs/tools/networking/opensm/default.nix
index 6026292f386f..42415c9aa26c 100644
--- a/pkgs/tools/networking/opensm/default.nix
+++ b/pkgs/tools/networking/opensm/default.nix
@@ -25,7 +25,7 @@ stdenv.mkDerivation rec {
   meta = with lib; {
     description = "Infiniband subnet manager";
     homepage = "https://www.openfabrics.org/";
-    license = licenses.gpl2; # dual licensed as 2-clause BSD
+    license = licenses.gpl2Only; # dual licensed as 2-clause BSD
     maintainers = [ maintainers.aij ];
     platforms = [ "x86_64-linux" ];
   };
diff --git a/pkgs/tools/networking/openssh/common.nix b/pkgs/tools/networking/openssh/common.nix
index 5c7b3ecb1d35..d5f658641efd 100644
--- a/pkgs/tools/networking/openssh/common.nix
+++ b/pkgs/tools/networking/openssh/common.nix
@@ -33,6 +33,7 @@
 , withPAM ? stdenv.hostPlatform.isLinux
 , dsaKeysSupport ? false
 , linkOpenssl ? true
+, isNixos ? stdenv.hostPlatform.isLinux
 }:
 
 stdenv.mkDerivation {
@@ -77,6 +78,12 @@ stdenv.mkDerivation {
     unset LD
   '';
 
+  env = lib.optionalAttrs isNixos {
+    # openssh calls passwd to allow the user to reset an expired password, but nixos
+    # doesn't ship it at /usr/bin/passwd.
+    PATH_PASSWD_PROG = "/run/wrappers/bin/passwd";
+  };
+
   # I set --disable-strip because later we strip anyway. And it fails to strip
   # properly when cross building.
   configureFlags = [
diff --git a/pkgs/tools/networking/openvpn/update-resolv-conf.nix b/pkgs/tools/networking/openvpn/update-resolv-conf.nix
index e8533a214af1..53d2b272c449 100644
--- a/pkgs/tools/networking/openvpn/update-resolv-conf.nix
+++ b/pkgs/tools/networking/openvpn/update-resolv-conf.nix
@@ -30,7 +30,7 @@ stdenv.mkDerivation {
     description = "Script to update your /etc/resolv.conf with DNS settings that come from the received push dhcp-options";
     homepage = "https://github.com/masterkorp/openvpn-update-resolv-conf/";
     maintainers = with maintainers; [ abbradar ];
-    license = licenses.gpl2;
+    license = licenses.gpl2Only;
     platforms = platforms.unix;
   };
 }
diff --git a/pkgs/tools/networking/openvpn3/default.nix b/pkgs/tools/networking/openvpn3/default.nix
index b6037d67d824..5ab94c798f4f 100644
--- a/pkgs/tools/networking/openvpn3/default.nix
+++ b/pkgs/tools/networking/openvpn3/default.nix
@@ -18,7 +18,7 @@
 , systemd
 , enableSystemdResolved ? false
 , tinyxml-2
-, wrapGAppsHook
+, wrapGAppsHook3
 }:
 
 let
@@ -67,7 +67,7 @@ stdenv.mkDerivation rec {
     python3.pkgs.docutils
     python3.pkgs.jinja2
     pkg-config
-    wrapGAppsHook
+    wrapGAppsHook3
     python3.pkgs.wrapPython
   ] ++ pythonPath;
 
diff --git a/pkgs/tools/networking/packetdrill/default.nix b/pkgs/tools/networking/packetdrill/default.nix
index 139078f2f6fc..baf2a53c4d78 100644
--- a/pkgs/tools/networking/packetdrill/default.nix
+++ b/pkgs/tools/networking/packetdrill/default.nix
@@ -44,7 +44,7 @@ stdenv.mkDerivation rec {
   meta = {
     description = "Quick, precise tests for entire TCP/UDP/IPv4/IPv6 network stacks";
     homepage = "https://github.com/google/packetdrill";
-    license = lib.licenses.gpl2;
+    license = lib.licenses.gpl2Plus;
     platforms = lib.platforms.linux;
     maintainers = with lib.maintainers; [ dmjio cleverca22 ];
   };
diff --git a/pkgs/tools/networking/pdsh/default.nix b/pkgs/tools/networking/pdsh/default.nix
index 2708f3d95840..bbfbc2d40cb8 100644
--- a/pkgs/tools/networking/pdsh/default.nix
+++ b/pkgs/tools/networking/pdsh/default.nix
@@ -38,7 +38,7 @@ stdenv.mkDerivation rec {
   meta = {
     homepage = "https://github.com/chaos/pdsh";
     description = "High-performance, parallel remote shell utility";
-    license = lib.licenses.gpl2;
+    license = lib.licenses.gpl2Plus;
 
     longDescription = ''
       Pdsh is a high-performance, parallel remote shell utility. It has
diff --git a/pkgs/tools/networking/persepolis/0001-Allow-building-on-darwin.patch b/pkgs/tools/networking/persepolis/0001-Allow-building-on-darwin.patch
deleted file mode 100644
index 4ddd18bbd468..000000000000
--- a/pkgs/tools/networking/persepolis/0001-Allow-building-on-darwin.patch
+++ /dev/null
@@ -1,45 +0,0 @@
----
- setup.py | 13 +++++--------
- 1 file changed, 5 insertions(+), 8 deletions(-)
-
-diff --git a/setup.py b/setup.py
-index 985d28d..933f3df 100755
---- a/setup.py
-+++ b/setup.py
-@@ -24,13 +24,9 @@ import shutil
- # finding os platform
- os_type = platform.system()
- 
--if os_type == 'Linux' or os_type == 'FreeBSD' or os_type == 'OpenBSD':
--    from setuptools import setup, Command, find_packages
--    setuptools_available = True
--    print(os_type + " detected!")
--else:
--    print('This script is only work for GNU/Linux or BSD!')
--    sys.exit(1)
-+from setuptools import setup, Command, find_packages
-+setuptools_available = True
-+print(os_type + " detected!")
- 
- # Checking dependencies!
- not_installed = ''
-@@ -100,6 +96,7 @@ else:
-     print('paplay is found!')
- 
- # sound-theme-freedesktop
-+notifications_path = ''
- if os_type == 'Linux':
-     notifications_path = '/usr/share/sounds/freedesktop/stereo/'
- elif os_type == 'FreeBSD' or os_type == 'OpenBSD':
-@@ -139,7 +136,7 @@ if sys.argv[1] == "test":
- 
- DESCRIPTION = 'Persepolis Download Manager'
- 
--if os_type == 'Linux':
-+if os_type in ['Linux', 'Darwin']:
-     DATA_FILES = [
-         ('/usr/share/man/man1/', ['man/persepolis.1.gz']),
-         ('/usr/share/applications/', ['xdg/com.github.persepolisdm.persepolis.desktop']),
--- 
-2.39.3 (Apple Git-145)
-
diff --git a/pkgs/tools/networking/persepolis/0002-Fix-startup-crash-on-darwin.patch b/pkgs/tools/networking/persepolis/0002-Fix-startup-crash-on-darwin.patch
deleted file mode 100644
index 50252c8cd72a..000000000000
--- a/pkgs/tools/networking/persepolis/0002-Fix-startup-crash-on-darwin.patch
+++ /dev/null
@@ -1,41 +0,0 @@
----
- persepolis/scripts/mac_notification.py | 25 +++++++++----------------
- 1 file changed, 9 insertions(+), 16 deletions(-)
-
-diff --git a/persepolis/scripts/mac_notification.py b/persepolis/scripts/mac_notification.py
-index 4d69929..9a9a7cf 100644
---- a/persepolis/scripts/mac_notification.py
-+++ b/persepolis/scripts/mac_notification.py
-@@ -15,20 +15,13 @@
- 
- # native notification on mac! needs Xcode (latest version) installed and pyobjc
- # library from pip
--import Foundation
--import AppKit
--import objc
--
--NSUserNotification = objc.lookUpClass('NSUserNotification')
--NSUserNotificationCenter = objc.lookUpClass('NSUserNotificationCenter')
--
--
- def notifyMac(title, subtitle, info_text, delay=0):
--    notification = NSUserNotification.alloc().init()
--    notification.setTitle_(title)
--    notification.setSubtitle_(subtitle)
--    notification.setInformativeText_(info_text)
--    notification.setDeliveryDate_(Foundation.NSDate.dateWithTimeInterval_sinceDate_(
--        delay, Foundation.NSDate.date()))
--    NSUserNotificationCenter.defaultUserNotificationCenter(
--    ).scheduleNotification_(notification)
-+    print(f"""
-+Warning: Persepolis was installed from nixpkgs, which currently breaks notifications
-+         on macOS. Until https://github.com/NixOS/nixpkgs/issues/105156 is resolved,
-+         this cannot be fixed. The notification that should've been displayed was:
-+
-+         title: {title}
-+         subtitle: {subtitle}
-+         info_text: {info_text}
-+ """)
--- 
-2.39.3 (Apple Git-145)
-
diff --git a/pkgs/tools/networking/persepolis/default.nix b/pkgs/tools/networking/persepolis/default.nix
deleted file mode 100644
index b3b084c22596..000000000000
--- a/pkgs/tools/networking/persepolis/default.nix
+++ /dev/null
@@ -1,92 +0,0 @@
-{ lib
-, stdenv
-, buildPythonApplication
-, fetchFromGitHub
-, aria2
-, ffmpeg
-, libnotify
-, pulseaudio
-, psutil
-, pyqt5
-, requests
-, setproctitle
-, setuptools
-, sound-theme-freedesktop
-, wrapQtAppsHook
-, yt-dlp
-}:
-
-buildPythonApplication rec {
-  pname = "persepolis";
-  version = "3.2.0";
-
-  src = fetchFromGitHub {
-    owner = "persepolisdm";
-    repo = "persepolis";
-    rev = version;
-    sha256 = "1rh7q432ynbysapsd075nif975ync71icpb71x2mb4j8jx1vzs45";
-  };
-
-  # see: https://github.com/persepolisdm/persepolis/blob/3.2.0/setup.py#L130
-  doCheck = false;
-
-  preBuild=
-  # Make setup automatic
-  ''
-    substituteInPlace setup.py --replace "answer = input(" "answer = 'y'#"
-  '' +
-  # Replace abandoned youtube-dl with maintained fork yt-dlp. Fixes https://github.com/persepolisdm/persepolis/issues/930,
-  # can be removed if that issue is fixed and/or https://github.com/persepolisdm/persepolis/pull/936 is merged
-  ''
-    substituteInPlace setup.py ./persepolis/scripts/video_finder_addlink.py --replace \
-        "import youtube_dl" "import yt_dlp as youtube_dl"
-  '';
-
-  patches = lib.optionals stdenv.isDarwin [
-    # Upstream is abandonware, the last commit to master was on 2021-08-26.
-    # If it is forked or picked up again, consider upstreaming these patches.
-    ./0001-Allow-building-on-darwin.patch
-    ./0002-Fix-startup-crash-on-darwin.patch
-    ./0003-Search-PATH-for-aria2c-on-darwin.patch
-    ./0004-Search-PATH-for-ffmpeg-on-darwin.patch
-  ];
-
-  postPatch = ''
-    sed -i 's|/usr/share/sounds/freedesktop/stereo/|${sound-theme-freedesktop}/share/sounds/freedesktop/stereo/|' setup.py
-    sed -i "s|'persepolis = persepolis.__main__'|'persepolis = persepolis.scripts.persepolis:main'|" setup.py
-  '';
-
-  postInstall = ''
-     mkdir -p $out/share/applications
-     cp $src/xdg/com.github.persepolisdm.persepolis.desktop $out/share/applications
-  '';
-
-  # prevent double wrapping
-  dontWrapQtApps = true;
-  nativeBuildInputs = [ wrapQtAppsHook ];
-
-  # feed args to wrapPythonApp
-  makeWrapperArgs = [
-    "--prefix PATH : ${lib.makeBinPath [ aria2 ffmpeg libnotify ]}"
-    "\${qtWrapperArgs[@]}"
-  ];
-
-  propagatedBuildInputs = [
-    pulseaudio
-    psutil
-    pyqt5
-    requests
-    setproctitle
-    setuptools
-    sound-theme-freedesktop
-    yt-dlp
-  ];
-
-  meta = with lib; {
-    description = "Persepolis Download Manager is a GUI for aria2";
-    mainProgram = "persepolis";
-    homepage = "https://persepolisdm.github.io/";
-    license = licenses.gpl3;
-    maintainers = with maintainers; [ iFreilicht ];
-  };
-}
diff --git a/pkgs/tools/networking/pmacct/default.nix b/pkgs/tools/networking/pmacct/default.nix
index dfc31498ddd1..6c4be00c3ef5 100644
--- a/pkgs/tools/networking/pmacct/default.nix
+++ b/pkgs/tools/networking/pmacct/default.nix
@@ -66,7 +66,7 @@ stdenv.mkDerivation rec {
     '';
     homepage = "http://www.pmacct.net/";
     changelog = "https://github.com/pmacct/pmacct/blob/v${version}/ChangeLog";
-    license = licenses.gpl2;
+    license = licenses.gpl2Plus;
     maintainers = with maintainers; [ _0x4A6F ];
     platforms = platforms.unix;
   };
diff --git a/pkgs/tools/networking/ppp/default.nix b/pkgs/tools/networking/ppp/default.nix
index 20e59167699b..54693a57a651 100644
--- a/pkgs/tools/networking/ppp/default.nix
+++ b/pkgs/tools/networking/ppp/default.nix
@@ -78,7 +78,7 @@ stdenv.mkDerivation rec {
     license = with licenses; [
       bsdOriginal
       publicDomain
-      gpl2
+      gpl2Only
       lgpl2
     ];
     platforms = platforms.linux;
diff --git a/pkgs/tools/networking/pptp/default.nix b/pkgs/tools/networking/pptp/default.nix
index 4bc0ed3219fa..38734375be0a 100644
--- a/pkgs/tools/networking/pptp/default.nix
+++ b/pkgs/tools/networking/pptp/default.nix
@@ -35,7 +35,7 @@ stdenv.mkDerivation rec {
   meta = with lib; {
     description = "PPTP client for Linux";
     homepage = "https://pptpclient.sourceforge.net/";
-    license = licenses.gpl2;
+    license = licenses.gpl2Plus;
     platforms = platforms.linux;
     maintainers = with maintainers; [ nickcao ];
   };
diff --git a/pkgs/tools/networking/pptpd/default.nix b/pkgs/tools/networking/pptpd/default.nix
index 3c24d2ac0715..d1cb90089e0c 100644
--- a/pkgs/tools/networking/pptpd/default.nix
+++ b/pkgs/tools/networking/pptpd/default.nix
@@ -24,6 +24,6 @@ stdenv.mkDerivation rec {
     description = "The PPTP Server for Linux";
     platforms   = platforms.linux;
     maintainers = with maintainers; [ obadz ];
-    license = licenses.gpl2;
+    license = licenses.gpl2Only;
   };
 }
diff --git a/pkgs/tools/networking/proxychains-ng/default.nix b/pkgs/tools/networking/proxychains-ng/default.nix
index b94dcaf9518c..bdc5622f2d50 100644
--- a/pkgs/tools/networking/proxychains-ng/default.nix
+++ b/pkgs/tools/networking/proxychains-ng/default.nix
@@ -1,44 +1,29 @@
 { lib
 , stdenv
 , fetchFromGitHub
-, fetchpatch
 }:
 
 stdenv.mkDerivation rec {
   pname = "proxychains-ng";
-  version = "4.16";
+  version = "4.17";
 
   src = fetchFromGitHub {
     owner = "rofl0r";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-uu/zN6W0ue526/3a9QeYg6J4HLaovZJVOYXksjouYok=";
+    sha256 = "sha256-cHRWPQm6aXsror0z+S2Ddm7w14c1OvEruDublWsvnXs=";
   };
 
   patches = [
-    # zsh completion
-    (fetchpatch {
-      url = "https://github.com/rofl0r/proxychains-ng/commit/04023d3811d8ee34b498b429bac7a871045de59c.patch";
-      sha256 = "sha256-Xcg2kmAhj/OJn/RKJAxb9MOJNJQY7FXmxEIzQ5dvabo=";
-    })
-    (fetchpatch {
-      url = "https://github.com/rofl0r/proxychains-ng/commit/9b42da71f4df7b783cf07a58ffa095e293c43380.patch";
-      sha256 = "sha256-tYv9XP51WtsjaoklwQk3D/MQceoOvtdMwBraECt6AXQ=";
-    })
     # https://github.com/NixOS/nixpkgs/issues/136093
     ./swap-priority-4-and-5-in-get_config_path.patch
   ];
 
   installFlags = [
     "install-config"
-    # TODO: check on next update if that works and remove postInstall
-    # "install-zsh-completion"
+    "install-zsh-completion"
   ];
 
-  postInstall = ''
-    ./tools/install.sh -D -m 644 completions/_proxychains $out/share/zsh/site_functions/_proxychains4
-  '';
-
   meta = with lib; {
     description = "A preloader which hooks calls to sockets in dynamically linked programs and redirects it through one or more socks/http proxies";
     homepage = "https://github.com/rofl0r/proxychains-ng";
diff --git a/pkgs/tools/networking/quickserve/default.nix b/pkgs/tools/networking/quickserve/default.nix
index ca175f5f2a91..c73908062588 100644
--- a/pkgs/tools/networking/quickserve/default.nix
+++ b/pkgs/tools/networking/quickserve/default.nix
@@ -29,7 +29,7 @@ in stdenv.mkDerivation {
   meta = with lib; {
     description = "A simple HTTP server for quickly sharing files";
     homepage = "https://xyne.archlinux.ca/projects/quickserve/";
-    license = licenses.gpl2;
+    license = licenses.gpl2Only;
     maintainers = with maintainers; [ lassulus ];
     mainProgram = "quickserve";
   };
diff --git a/pkgs/tools/networking/redir/default.nix b/pkgs/tools/networking/redir/default.nix
index 17975521de16..46233e4a4daa 100644
--- a/pkgs/tools/networking/redir/default.nix
+++ b/pkgs/tools/networking/redir/default.nix
@@ -16,7 +16,7 @@ stdenv.mkDerivation rec {
   meta = {
     description = "A TCP port redirector for UNIX";
     homepage = "https://github.com/troglobit/redir";
-    license = lib.licenses.gpl2;
+    license = lib.licenses.gpl2Plus;
     maintainers = with lib.maintainers; [ ];
     platforms = lib.platforms.unix;
     mainProgram = "redir";
diff --git a/pkgs/tools/networking/s3cmd/default.nix b/pkgs/tools/networking/s3cmd/default.nix
index 18aed1301355..d4864160fc34 100644
--- a/pkgs/tools/networking/s3cmd/default.nix
+++ b/pkgs/tools/networking/s3cmd/default.nix
@@ -19,7 +19,7 @@ buildPythonApplication rec {
     homepage = "https://s3tools.org/s3cmd";
     description = "Command line tool for managing Amazon S3 and CloudFront services";
     mainProgram = "s3cmd";
-    license = licenses.gpl2;
+    license = licenses.gpl2Plus;
     maintainers = [ ];
   };
 }
diff --git a/pkgs/tools/networking/shadowsocks-rust/default.nix b/pkgs/tools/networking/shadowsocks-rust/default.nix
index 3cf9c598b4ac..360639fa9ad4 100644
--- a/pkgs/tools/networking/shadowsocks-rust/default.nix
+++ b/pkgs/tools/networking/shadowsocks-rust/default.nix
@@ -2,16 +2,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "shadowsocks-rust";
-  version = "1.18.3";
+  version = "1.18.4";
 
   src = fetchFromGitHub {
     rev = "v${version}";
     owner = "shadowsocks";
     repo = pname;
-    hash = "sha256-eqN6Qwq+ofQ9Ed7Viz+DoJQkVTvUTo1U5rVqO1YDp2w=";
+    hash = "sha256-1gZP0PVvYWEfWmTVql+8uyNhcjawBMJKvqy/4sZ0/6Y=";
   };
 
-  cargoHash = "sha256-yJ2Ql6Fo2KaZRmvRB0C14fEcVwbBbsUlcqT3vFKHn58=";
+  cargoHash = "sha256-GZuRz4VtAm+aQO0Hq5v3HVfqjoMPsEw5G6VADsAvdEQ=";
 
   nativeBuildInputs = lib.optionals stdenv.isLinux [ pkg-config ];
 
diff --git a/pkgs/tools/networking/simpleproxy/default.nix b/pkgs/tools/networking/simpleproxy/default.nix
index 7f9ccd1c9865..e91d5d4eb272 100644
--- a/pkgs/tools/networking/simpleproxy/default.nix
+++ b/pkgs/tools/networking/simpleproxy/default.nix
@@ -15,7 +15,7 @@ stdenv.mkDerivation rec {
   meta = with lib; {
     homepage = "https://github.com/vzaliva/simpleproxy";
     description = "A simple TCP proxy";
-    license = licenses.gpl2;
+    license = licenses.gpl2Plus;
     maintainers = [ maintainers.montag451 ];
     mainProgram = "simpleproxy";
   };
diff --git a/pkgs/tools/networking/sing-box/default.nix b/pkgs/tools/networking/sing-box/default.nix
index 75ab85403951..7e47db4262c2 100644
--- a/pkgs/tools/networking/sing-box/default.nix
+++ b/pkgs/tools/networking/sing-box/default.nix
@@ -11,16 +11,16 @@
 
 buildGoModule rec {
   pname = "sing-box";
-  version = "1.8.12";
+  version = "1.8.13";
 
   src = fetchFromGitHub {
     owner = "SagerNet";
     repo = pname;
     rev = "v${version}";
-    hash = "sha256-hgp4SzPJMeIaCxsuK7Y93h6E3KxK0KdNp+DCfv8UtiI=";
+    hash = "sha256-BFkf+Gdej/AsIL89obHEwchrw4IcZqjEkr/suYKbVKY=";
   };
 
-  vendorHash = "sha256-4P36eTT7Q5+fZuPUGKEYal3NQ9WyEJxfNVoKJRIk6bo=";
+  vendorHash = "sha256-8OsUAknSuSJH1rRxMf8EVTUuIDHsIJauVI7hB4Fk1KU=";
 
   tags = [
     "with_quic"
diff --git a/pkgs/tools/networking/sipsak/default.nix b/pkgs/tools/networking/sipsak/default.nix
index 4d1cf08a11b8..ba6325cd53f0 100644
--- a/pkgs/tools/networking/sipsak/default.nix
+++ b/pkgs/tools/networking/sipsak/default.nix
@@ -26,7 +26,7 @@ stdenv.mkDerivation rec {
   meta = with lib; {
     homepage = "https://github.com/sipwise/sipsak";
     description = "SIP Swiss army knife";
-    license = lib.licenses.gpl2;
+    license = lib.licenses.gpl2Plus;
     maintainers = with maintainers; [ sheenobu ];
     platforms = with platforms; unix;
     mainProgram = "sipsak";
diff --git a/pkgs/tools/networking/slirp4netns/default.nix b/pkgs/tools/networking/slirp4netns/default.nix
index 85c5f36063a7..ef7dae065e38 100644
--- a/pkgs/tools/networking/slirp4netns/default.nix
+++ b/pkgs/tools/networking/slirp4netns/default.nix
@@ -12,13 +12,13 @@
 
 stdenv.mkDerivation rec {
   pname = "slirp4netns";
-  version = "1.3.0";
+  version = "1.3.1";
 
   src = fetchFromGitHub {
     owner = "rootless-containers";
     repo = "slirp4netns";
     rev = "v${version}";
-    sha256 = "sha256-SjdRFcW8xjwJurOcNoHZTp3Ug17DmPrYZu8gcpQL2mE=";
+    sha256 = "sha256-dXz5gNALrVjaFGUgEFp0k47c7aWDzwLMflphe6R6GaM=";
   };
 
   nativeBuildInputs = [ autoreconfHook pkg-config ];
@@ -33,7 +33,7 @@ stdenv.mkDerivation rec {
   meta = with lib; {
     homepage = "https://github.com/rootless-containers/slirp4netns";
     description = "User-mode networking for unprivileged network namespaces";
-    license = licenses.gpl2;
+    license = licenses.gpl2Only;
     maintainers = with maintainers; [ orivej ] ++ teams.podman.members;
     platforms = platforms.linux;
     mainProgram = "slirp4netns";
diff --git a/pkgs/tools/networking/speedtest-go/default.nix b/pkgs/tools/networking/speedtest-go/default.nix
index 3d079932c607..ba393d632c16 100644
--- a/pkgs/tools/networking/speedtest-go/default.nix
+++ b/pkgs/tools/networking/speedtest-go/default.nix
@@ -1,17 +1,17 @@
-{ lib
-, buildGoModule
-, fetchFromGitHub
+{
+  lib,
+  buildGoModule,
+  fetchFromGitHub,
 }:
-
 buildGoModule rec {
   pname = "speedtest-go";
-  version = "1.6.12";
+  version = "1.7.7";
 
   src = fetchFromGitHub {
     owner = "showwin";
     repo = pname;
     rev = "refs/tags/v${version}";
-    hash = "sha256-YXLa/0WCWDhQNIDM4kY/5BvUnb+GMmNzAZcYewrMYeg=";
+    hash = "sha256-8LMbaa3D1ODjySx69U0CGWphG8CQswWlQsqW6mXPy6o=";
   };
 
   vendorHash = "sha256-wQqAX7YuxxTiMWmV9LRoXunGMMzs12UyHbf4VvbQF1E=";
@@ -26,7 +26,10 @@ buildGoModule rec {
     homepage = "https://github.com/showwin/speedtest-go";
     changelog = "https://github.com/showwin/speedtest-go/releases/tag/v${version}";
     license = licenses.mit;
-    maintainers = with maintainers; [ aleksana ];
+    maintainers = with maintainers; [
+      aleksana
+      luftmensch-luftmensch
+    ];
     mainProgram = "speedtest-go";
   };
 }
diff --git a/pkgs/tools/networking/sshpass/default.nix b/pkgs/tools/networking/sshpass/default.nix
index 6818fe33a94d..60ce32a5e747 100644
--- a/pkgs/tools/networking/sshpass/default.nix
+++ b/pkgs/tools/networking/sshpass/default.nix
@@ -12,7 +12,7 @@ stdenv.mkDerivation rec {
   meta = with lib; {
     homepage = "https://sourceforge.net/projects/sshpass/";
     description = "Non-interactive ssh password auth";
-    license = licenses.gpl2;
+    license = licenses.gpl2Plus;
     maintainers = [ maintainers.madjar ];
     platforms = platforms.unix;
     mainProgram = "sshpass";
diff --git a/pkgs/tools/networking/stevenblack-blocklist/default.nix b/pkgs/tools/networking/stevenblack-blocklist/default.nix
index b95d0537a8dc..0531a3d20b24 100644
--- a/pkgs/tools/networking/stevenblack-blocklist/default.nix
+++ b/pkgs/tools/networking/stevenblack-blocklist/default.nix
@@ -1,7 +1,7 @@
 { lib, fetchFromGitHub }:
 
 let
-  version = "3.14.44";
+  version = "3.14.71";
 in
 fetchFromGitHub {
   name = "stevenblack-blocklist-${version}";
@@ -9,12 +9,15 @@ fetchFromGitHub {
   owner = "StevenBlack";
   repo = "hosts";
   rev = version;
-  sha256 = "sha256-LlTyhtx3DbtsQdkl6J7ktj/zLJULFqQWq5sCqKPX71g=";
+  hash = "sha256-33aDL+nJ+BOwOOSfiaAX3r8BdDM2rWCaeiz55nUXrd8=";
 
   meta = with lib; {
     description = "Unified hosts file with base extensions";
     homepage = "https://github.com/StevenBlack/hosts";
     license = licenses.mit;
-    maintainers = with maintainers; [ moni ];
+    maintainers = with maintainers; [
+      moni
+      Guanran928
+    ];
   };
 }
diff --git a/pkgs/tools/networking/swagger-codegen3/default.nix b/pkgs/tools/networking/swagger-codegen3/default.nix
index 4caade2c053e..04fd6ce62fda 100644
--- a/pkgs/tools/networking/swagger-codegen3/default.nix
+++ b/pkgs/tools/networking/swagger-codegen3/default.nix
@@ -1,7 +1,7 @@
 { lib, stdenv, fetchurl, jre, makeWrapper, testers, swagger-codegen3 }:
 
 stdenv.mkDerivation rec {
-  version = "3.0.54";
+  version = "3.0.56";
   pname = "swagger-codegen";
 
   jarfilename = "${pname}-cli-${version}.jar";
@@ -12,7 +12,7 @@ stdenv.mkDerivation rec {
 
   src = fetchurl {
     url = "mirror://maven/io/swagger/codegen/v3/${pname}-cli/${version}/${jarfilename}";
-    sha256 = "sha256-OOv+7r43mxUZjTs3tGHax3Yu7CNM8bg6XkOt5pJADy0=";
+    sha256 = "sha256-i2XC7fFfsO2OIE4NsO/WiqSHiYCXJZr6naxxAw/jkt0=";
   };
 
   dontUnpack = true;
@@ -36,5 +36,6 @@ stdenv.mkDerivation rec {
     license = licenses.asl20;
     maintainers = [ maintainers._1000101 ];
     mainProgram = "swagger-codegen3";
+    platforms = platforms.all;
   };
 }
diff --git a/pkgs/tools/networking/tcp-cutter/default.nix b/pkgs/tools/networking/tcp-cutter/default.nix
index 71075cc5dd1c..4231ddef2433 100644
--- a/pkgs/tools/networking/tcp-cutter/default.nix
+++ b/pkgs/tools/networking/tcp-cutter/default.nix
@@ -16,7 +16,7 @@ stdenv.mkDerivation rec {
   meta = with lib; {
     description = "TCP/IP Connection cutting on Linux Firewalls and Routers";
     homepage = "http://www.digitage.co.uk/digitage/software/linux-security/cutter";
-    license = licenses.gpl2;
+    license = licenses.gpl2Only;
     platforms = platforms.linux;
     maintainers = [ maintainers.offline ];
     mainProgram = "tcp-cutter";
diff --git a/pkgs/tools/networking/tcptraceroute/default.nix b/pkgs/tools/networking/tcptraceroute/default.nix
index cc5594afd5a5..978d06557071 100644
--- a/pkgs/tools/networking/tcptraceroute/default.nix
+++ b/pkgs/tools/networking/tcptraceroute/default.nix
@@ -28,7 +28,7 @@ stdenv.mkDerivation rec {
   meta = {
     description = "A traceroute implementation using TCP packets";
     homepage = "https://github.com/mct/tcptraceroute";
-    license = lib.licenses.gpl2;
+    license = lib.licenses.gpl2Only;
     maintainers = [ ];
     mainProgram = "tcptraceroute";
   };
diff --git a/pkgs/tools/networking/tgt/default.nix b/pkgs/tools/networking/tgt/default.nix
index 349c0823a510..f04f06acc7d3 100644
--- a/pkgs/tools/networking/tgt/default.nix
+++ b/pkgs/tools/networking/tgt/default.nix
@@ -62,7 +62,7 @@ stdenv.mkDerivation rec {
   meta = with lib; {
     description = "iSCSI Target daemon with RDMA support";
     homepage = "https://github.com/fujita/tgt";
-    license = licenses.gpl2;
+    license = licenses.gpl2Only;
     platforms = platforms.linux;
     maintainers = with maintainers; [ johnazoidberg ];
   };
diff --git a/pkgs/tools/networking/tracebox/default.nix b/pkgs/tools/networking/tracebox/default.nix
index dce1fc532046..0652e6e59bef 100644
--- a/pkgs/tools/networking/tracebox/default.nix
+++ b/pkgs/tools/networking/tracebox/default.nix
@@ -53,7 +53,7 @@ stdenv.mkDerivation rec {
   meta = with lib; {
     homepage = "http://www.tracebox.org/";
     description = "A middlebox detection tool";
-    license = licenses.gpl2;
+    license = licenses.gpl2Only;
     maintainers = with maintainers; [ ck3d ];
     platforms = platforms.linux;
   };
diff --git a/pkgs/tools/networking/trurl/default.nix b/pkgs/tools/networking/trurl/default.nix
index 68dbe001d513..ea19b2794ec2 100644
--- a/pkgs/tools/networking/trurl/default.nix
+++ b/pkgs/tools/networking/trurl/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "trurl";
-  version = "0.12";
+  version = "0.13";
 
   src = fetchFromGitHub {
     owner = "curl";
     repo = pname;
     rev = "${pname}-${version}";
-    hash = "sha256-r+z+7aE/frr1qWaBXyyO2L+aNa8CnhRqLg/jwwamIPg=";
+    hash = "sha256-TkYZk4SoGAc0dxtxil4FjEhA53M+/dRmhc2kJfxWze8=";
   };
 
   outputs = [ "out" "dev" "man" ];
diff --git a/pkgs/tools/networking/uget/default.nix b/pkgs/tools/networking/uget/default.nix
index cbbb1c316949..a2387f838ff5 100644
--- a/pkgs/tools/networking/uget/default.nix
+++ b/pkgs/tools/networking/uget/default.nix
@@ -1,5 +1,5 @@
 { lib, stdenv, fetchurl, pkg-config, intltool, openssl, curl, libnotify,
-  libappindicator-gtk3, gst_all_1, gtk3, dconf, wrapGAppsHook, aria2 ? null
+  libappindicator-gtk3, gst_all_1, gtk3, dconf, wrapGAppsHook3, aria2 ? null
 }:
 
 stdenv.mkDerivation rec {
@@ -21,7 +21,7 @@ stdenv.mkDerivation rec {
   nativeBuildInputs = [
     pkg-config
     intltool
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
diff --git a/pkgs/tools/networking/uqmi/default.nix b/pkgs/tools/networking/uqmi/default.nix
index 6fd830435aa1..37540cd45024 100644
--- a/pkgs/tools/networking/uqmi/default.nix
+++ b/pkgs/tools/networking/uqmi/default.nix
@@ -22,6 +22,8 @@ stdenv.mkDerivation {
     # Needed with GCC 12 but breaks on darwin (with clang) or older gcc
     "-Wno-error=dangling-pointer"
     "-Wno-error=maybe-uninitialized"
+  ] ++ lib.optionals stdenv.cc.isClang [
+    "-Wno-error=sometimes-uninitialized"
   ]);
 
   meta = with lib; {
diff --git a/pkgs/tools/networking/vde2/default.nix b/pkgs/tools/networking/vde2/default.nix
index 83cee2e466af..0d86c5637866 100644
--- a/pkgs/tools/networking/vde2/default.nix
+++ b/pkgs/tools/networking/vde2/default.nix
@@ -30,6 +30,6 @@ stdenv.mkDerivation rec {
     homepage = "https://github.com/virtualsquare/vde-2";
     description = "Virtual Distributed Ethernet, an Ethernet compliant virtual network";
     platforms = platforms.unix;
-    license = licenses.gpl2;
+    license = licenses.gpl2Plus;
   };
 }
diff --git a/pkgs/tools/networking/veilid/Cargo.lock b/pkgs/tools/networking/veilid/Cargo.lock
index 5baab49d437f..c783ac9a5907 100644
--- a/pkgs/tools/networking/veilid/Cargo.lock
+++ b/pkgs/tools/networking/veilid/Cargo.lock
@@ -83,9 +83,9 @@ dependencies = [
 
 [[package]]
 name = "allocator-api2"
-version = "0.2.16"
+version = "0.2.18"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0942ffc6dcaadf03badf6e6a2d0228460359d5e34b57ccdc720b7382dfbd5ec5"
+checksum = "5c6cb57a04249c6480766f7f7cef5467412af1490f8d1e243141daddada3264f"
 
 [[package]]
 name = "android-tzdata"
@@ -206,9 +206,9 @@ dependencies = [
 
 [[package]]
 name = "anyhow"
-version = "1.0.81"
+version = "1.0.82"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0952808a6c2afd1aa8947271f3a60f1a6763c7b912d210184c5149b5cf147247"
+checksum = "f538837af36e6f6a9be0faa67f9a314f8119e4e4b5867c6ab40ed60360142519"
 
 [[package]]
 name = "arboard"
@@ -223,7 +223,7 @@ dependencies = [
  "objc",
  "objc-foundation",
  "objc_id",
- "parking_lot 0.12.1",
+ "parking_lot 0.12.2",
  "thiserror",
  "windows-sys 0.48.0",
  "x11rb",
@@ -288,27 +288,26 @@ dependencies = [
 
 [[package]]
 name = "async-channel"
-version = "2.2.0"
+version = "2.2.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f28243a43d821d11341ab73c80bed182dc015c514b951616cf79bd4af39af0c3"
+checksum = "136d4d23bcc79e27423727b36823d86233aad06dfea531837b038394d11e9928"
 dependencies = [
  "concurrent-queue",
- "event-listener 5.2.0",
- "event-listener-strategy 0.5.1",
+ "event-listener 5.3.0",
+ "event-listener-strategy 0.5.2",
  "futures-core",
  "pin-project-lite",
 ]
 
 [[package]]
 name = "async-executor"
-version = "1.9.1"
+version = "1.11.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "10b3e585719c2358d2660232671ca8ca4ddb4be4ce8a1842d6c2dc8685303316"
+checksum = "b10202063978b3351199d68f8b22c4e47e4b1b822f8d43fd862d5ea8c006b29a"
 dependencies = [
- "async-lock 3.3.0",
  "async-task",
  "concurrent-queue",
- "fastrand 2.0.2",
+ "fastrand 2.1.0",
  "futures-lite 2.3.0",
  "slab",
 ]
@@ -319,7 +318,7 @@ version = "2.4.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "05b1b633a2115cd122d73b955eadd9916c18c8f510ec9cd1686404c60ad1c29c"
 dependencies = [
- "async-channel 2.2.0",
+ "async-channel 2.2.1",
  "async-executor",
  "async-io 2.3.2",
  "async-lock 3.3.0",
@@ -360,8 +359,8 @@ dependencies = [
  "futures-io",
  "futures-lite 2.3.0",
  "parking",
- "polling 3.6.0",
- "rustix 0.38.32",
+ "polling 3.7.0",
+ "rustix 0.38.34",
  "slab",
  "tracing",
  "windows-sys 0.52.0",
@@ -400,26 +399,26 @@ dependencies = [
  "cfg-if 1.0.0",
  "event-listener 3.1.0",
  "futures-lite 1.13.0",
- "rustix 0.38.32",
+ "rustix 0.38.34",
  "windows-sys 0.48.0",
 ]
 
 [[package]]
 name = "async-signal"
-version = "0.2.5"
+version = "0.2.6"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9e47d90f65a225c4527103a8d747001fc56e375203592b25ad103e1ca13124c5"
+checksum = "afe66191c335039c7bb78f99dc7520b0cbb166b3a1cb33a03f53d8a1c6f2afda"
 dependencies = [
  "async-io 2.3.2",
- "async-lock 2.8.0",
+ "async-lock 3.3.0",
  "atomic-waker",
  "cfg-if 1.0.0",
  "futures-core",
  "futures-io",
- "rustix 0.38.32",
+ "rustix 0.38.34",
  "signal-hook-registry",
  "slab",
- "windows-sys 0.48.0",
+ "windows-sys 0.52.0",
 ]
 
 [[package]]
@@ -452,9 +451,9 @@ dependencies = [
 
 [[package]]
 name = "async-std-resolver"
-version = "0.24.0"
+version = "0.24.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3c0ed2b6671c13d2c28756c5a64e04759c1e0b5d3d7ac031f521c3561e21fbcb"
+checksum = "bc3b454643291f9a4a3bbdb35fa62efa4ba7be5ea13fe243e3be4352182ff4b8"
 dependencies = [
  "async-std",
  "async-trait",
@@ -484,24 +483,24 @@ checksum = "16e62a023e7c117e27523144c5d2459f4397fcc3cab0085af8e2224f643a0193"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.58",
+ "syn 2.0.60",
 ]
 
 [[package]]
 name = "async-task"
-version = "4.7.0"
+version = "4.7.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "fbb36e985947064623dbd357f727af08ffd077f93d696782f3c56365fa2e2799"
+checksum = "8b75356056920673b02621b35afd0f7dda9306d03c79a30f5c56c44cf256e3de"
 
 [[package]]
 name = "async-trait"
-version = "0.1.79"
+version = "0.1.80"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a507401cad91ec6a857ed5513a2073c82a9b9048762b885bb98655b306964681"
+checksum = "c6fa2087f2753a7da8cc1c0dbfcf89579dd57458e36769de5ac750b4671737ca"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.58",
+ "syn 2.0.60",
 ]
 
 [[package]]
@@ -732,7 +731,7 @@ checksum = "e0b121a9fe0df916e362fb3271088d071159cdf11db0e4182d02152850756eff"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.58",
+ "syn 2.0.60",
 ]
 
 [[package]]
@@ -777,18 +776,16 @@ checksum = "8d696c370c750c948ada61c69a0ee2cbbb9c50b1019ddb86d9317157a99c2cae"
 
 [[package]]
 name = "blocking"
-version = "1.5.1"
+version = "1.6.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6a37913e8dc4ddcc604f0c6d3bf2887c995153af3611de9e23c352b44c1b9118"
+checksum = "495f7104e962b7356f0aeb34247aca1fe7d2e783b346582db7f2904cb5717e88"
 dependencies = [
- "async-channel 2.2.0",
+ "async-channel 2.2.1",
  "async-lock 3.3.0",
  "async-task",
- "fastrand 2.0.2",
  "futures-io",
  "futures-lite 2.3.0",
  "piper",
- "tracing",
 ]
 
 [[package]]
@@ -802,9 +799,9 @@ dependencies = [
 
 [[package]]
 name = "bumpalo"
-version = "3.15.4"
+version = "3.16.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7ff69b9dd49fd426c69a0db9fc04dd934cdb6645ff000864d98f7e2af8830eaa"
+checksum = "79296716171880943b8470b5f8d03aa55eb2e645a4874bdbb28adb49162e012c"
 
 [[package]]
 name = "bytemuck"
@@ -844,9 +841,9 @@ dependencies = [
 
 [[package]]
 name = "cc"
-version = "1.0.90"
+version = "1.0.95"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8cd6604a82acf3039f1144f54b8eb34e91ffba622051189e71b781822d5ee1f5"
+checksum = "d32a725bc159af97c3e629873bb9f88fb8cf8a4867175f76dc987815ea07c83b"
 
 [[package]]
 name = "cesu8"
@@ -907,16 +904,16 @@ dependencies = [
 
 [[package]]
 name = "chrono"
-version = "0.4.37"
+version = "0.4.38"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8a0d04d43504c61aa6c7531f1871dd0d418d91130162063b789da00fd7057a5e"
+checksum = "a21f936df1771bf62b77f047b726c4625ff2e8aa607c01ec06e5a05bd8463401"
 dependencies = [
  "android-tzdata",
  "iana-time-zone",
  "js-sys",
  "num-traits",
  "wasm-bindgen",
- "windows-targets 0.52.4",
+ "windows-targets 0.52.5",
 ]
 
 [[package]]
@@ -997,7 +994,7 @@ dependencies = [
  "heck 0.5.0",
  "proc-macro2",
  "quote",
- "syn 2.0.58",
+ "syn 2.0.60",
 ]
 
 [[package]]
@@ -1008,9 +1005,9 @@ checksum = "98cc8fbded0c607b7ba9dd60cd98df59af97e84d24e49c8557331cfc26d301ce"
 
 [[package]]
 name = "clipboard-win"
-version = "5.3.0"
+version = "5.3.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d517d4b86184dbb111d3556a10f1c8a04da7428d2987bf1081602bf11c3aa9ee"
+checksum = "79f4473f5144e20d9aceaf2972478f06ddf687831eafeeb434fbaf0acc4144ad"
 dependencies = [
  "error-code",
 ]
@@ -1051,9 +1048,9 @@ checksum = "acbf1af155f9b9ef647e42cdc158db4b64a1b61f743629225fde6f3e0be2a7c7"
 
 [[package]]
 name = "combine"
-version = "4.6.6"
+version = "4.6.7"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "35ed6e9d84f0b51a7f52daf1c7d71dd136fd7a3f41a8462b8cdb8c78d920fad4"
+checksum = "ba5a308b75df32fe02788e748662718f03fde005016435c444eea572398219fd"
 dependencies = [
  "bytes",
  "memchr",
@@ -1061,9 +1058,9 @@ dependencies = [
 
 [[package]]
 name = "concurrent-queue"
-version = "2.4.0"
+version = "2.5.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d16048cd947b08fa32c24458a22f5dc5e835264f689f4f5653210c69fd107363"
+checksum = "4ca0197aee26d1ae37445ee532fefce43251d24cc7c166799f4d46817f1d3973"
 dependencies = [
  "crossbeam-utils",
 ]
@@ -1127,7 +1124,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "fd326812b3fd01da5bb1af7d340d0d555fd3d4b641e7f1dfcf5962a902952787"
 dependencies = [
  "futures-core",
- "prost 0.12.3",
+ "prost 0.12.4",
  "prost-types",
  "tonic 0.10.2",
  "tracing-core",
@@ -1311,7 +1308,7 @@ dependencies = [
  "futures-core",
  "libc",
  "mio",
- "parking_lot 0.12.1",
+ "parking_lot 0.12.2",
  "signal-hook",
  "signal-hook-mio",
  "winapi",
@@ -1355,12 +1352,12 @@ dependencies = [
 
 [[package]]
 name = "ctor"
-version = "0.2.7"
+version = "0.2.8"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ad291aa74992b9b7a7e88c38acbbf6ad7e107f1d90ee8775b7bc1fc3394f485c"
+checksum = "edb49164822f3ee45b17acd4a208cfc1251410cf0cad9a833234c9890774dd9f"
 dependencies = [
  "quote",
- "syn 2.0.58",
+ "syn 2.0.60",
 ]
 
 [[package]]
@@ -1430,7 +1427,7 @@ dependencies = [
  "log",
  "num",
  "owning_ref",
- "parking_lot 0.12.1",
+ "parking_lot 0.12.2",
  "serde_json",
  "serde_yaml",
  "time",
@@ -1474,7 +1471,7 @@ checksum = "f46882e17999c6cc590af592290432be3bce0428cb0d5f8b6715e4dc7b383eb3"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.58",
+ "syn 2.0.60",
 ]
 
 [[package]]
@@ -1530,7 +1527,7 @@ dependencies = [
  "ident_case",
  "proc-macro2",
  "quote",
- "syn 2.0.58",
+ "syn 2.0.60",
 ]
 
 [[package]]
@@ -1552,7 +1549,7 @@ checksum = "a668eda54683121533a393014d8692171709ff57a7d61f187b6e782719f8933f"
 dependencies = [
  "darling_core 0.20.8",
  "quote",
- "syn 2.0.58",
+ "syn 2.0.60",
 ]
 
 [[package]]
@@ -1562,17 +1559,17 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "978747c1d849a7d2ee5e8adc0159961c48fb7e5db2f06af6723b80123bb53856"
 dependencies = [
  "cfg-if 1.0.0",
- "hashbrown 0.14.3",
+ "hashbrown 0.14.5",
  "lock_api",
  "once_cell",
- "parking_lot_core 0.9.9",
+ "parking_lot_core 0.9.10",
 ]
 
 [[package]]
 name = "data-encoding"
-version = "2.5.0"
+version = "2.6.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7e962a19be5cfc3f3bf6dd8f61eb50107f356ad6270fbb3ed41476571db78be5"
+checksum = "e8566979429cf69b49a5c740c60791108e86440e8be149bbea4fe54d2c32d6e2"
 
 [[package]]
 name = "der"
@@ -1694,9 +1691,9 @@ dependencies = [
 
 [[package]]
 name = "either"
-version = "1.10.0"
+version = "1.11.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "11157ac094ffbdde99aa67b23417ebdd801842852b500e395a45a9c0aac03e4a"
+checksum = "a47c1c47d2f5964e29c61246e81db715514cd532db6b5116a25ea3c03d6780a2"
 
 [[package]]
 name = "embedded-io"
@@ -1719,7 +1716,7 @@ dependencies = [
  "heck 0.4.1",
  "proc-macro2",
  "quote",
- "syn 2.0.58",
+ "syn 2.0.60",
 ]
 
 [[package]]
@@ -1739,7 +1736,7 @@ checksum = "f282cfdfe92516eb26c2af8589c274c7c17681f5ecc03c18255fe741c6aa64eb"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.58",
+ "syn 2.0.60",
 ]
 
 [[package]]
@@ -1782,7 +1779,7 @@ dependencies = [
  "darling 0.20.8",
  "proc-macro2",
  "quote",
- "syn 2.0.58",
+ "syn 2.0.60",
 ]
 
 [[package]]
@@ -1860,13 +1857,15 @@ dependencies = [
 
 [[package]]
 name = "event-listener"
-version = "5.2.0"
+version = "5.3.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2b5fb89194fa3cad959b833185b3063ba881dbfc7030680b314250779fb4cc91"
+checksum = "6d9944b8ca13534cdfb2800775f8dd4902ff3fc75a50101466decadfdf322a24"
 dependencies = [
  "concurrent-queue",
  "parking",
  "pin-project-lite",
+ "portable-atomic",
+ "portable-atomic-util",
 ]
 
 [[package]]
@@ -1881,11 +1880,11 @@ dependencies = [
 
 [[package]]
 name = "event-listener-strategy"
-version = "0.5.1"
+version = "0.5.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "332f51cb23d20b0de8458b86580878211da09bcd4503cb579c225b3d124cabb3"
+checksum = "0f214dc438f977e6d4e3500aaa277f5ad94ca83fbbd9b1a15713ce2344ccc5a1"
 dependencies = [
- "event-listener 5.2.0",
+ "event-listener 5.3.0",
  "pin-project-lite",
 ]
 
@@ -1922,9 +1921,9 @@ dependencies = [
 
 [[package]]
 name = "fastrand"
-version = "2.0.2"
+version = "2.1.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "658bd65b1cf4c852a3cc96f18a8ce7b5640f6b703f905c7d74532294c2a63984"
+checksum = "9fc0510504f03c51ada170672ac806f1f105a88aa97a5281117e1ddc3368e51a"
 
 [[package]]
 name = "fdeflate"
@@ -1947,9 +1946,9 @@ dependencies = [
 
 [[package]]
 name = "fiat-crypto"
-version = "0.2.7"
+version = "0.2.8"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c007b1ae3abe1cb6f85a16305acd418b7ca6343b953633fee2b76d8f108b830f"
+checksum = "38793c55593b33412e3ae40c2c9781ffaa6f438f6f8c10f24e71846fbd7ae01e"
 
 [[package]]
 name = "filetime"
@@ -1965,9 +1964,9 @@ dependencies = [
 
 [[package]]
 name = "flate2"
-version = "1.0.28"
+version = "1.0.29"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "46303f565772937ffe1d394a4fac6f411c6013172fadde9dcdb1e147a086940e"
+checksum = "4556222738635b7a3417ae6130d8f52201e45a0c4d1a907f0826383adb5f85e7"
 dependencies = [
  "crc32fast",
  "miniz_oxide",
@@ -2033,7 +2032,7 @@ checksum = "1a5c6c585bc94aaf2c7b51dd4c2ba22680844aba4c687be581871a6f518c5742"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.58",
+ "syn 2.0.60",
 ]
 
 [[package]]
@@ -2057,7 +2056,7 @@ version = "0.6.6"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "2eeb4ed9e12f43b7fa0baae3f9cdda28352770132ef2e09a23760c29cae8bd47"
 dependencies = [
- "rustix 0.38.32",
+ "rustix 0.38.34",
  "windows-sys 0.48.0",
 ]
 
@@ -2130,7 +2129,7 @@ version = "2.3.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "52527eb5074e35e9339c6b4e8d12600c7128b68fb25dcb9fa9dec18f7c25f3a5"
 dependencies = [
- "fastrand 2.0.2",
+ "fastrand 2.1.0",
  "futures-core",
  "futures-io",
  "parking",
@@ -2145,7 +2144,7 @@ checksum = "87750cf4b7a4c0625b1529e4c543c2182106e4dedc60a2a6455e00d212c489ac"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.58",
+ "syn 2.0.60",
 ]
 
 [[package]]
@@ -2234,9 +2233,9 @@ dependencies = [
 
 [[package]]
 name = "getrandom"
-version = "0.2.12"
+version = "0.2.14"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "190092ea657667030ac6a35e305e62fc4dd69fd98ac98631e5d3a2b1575a12b5"
+checksum = "94b22e06ecb0110981051723910cbf0b5f5e09a2062dd7663334ee79a9d1286c"
 dependencies = [
  "cfg-if 1.0.0",
  "js-sys",
@@ -2306,7 +2305,7 @@ dependencies = [
  "grpcio-sys",
  "libc",
  "log",
- "parking_lot 0.12.1",
+ "parking_lot 0.12.2",
  "protobuf",
 ]
 
@@ -2380,9 +2379,9 @@ dependencies = [
 
 [[package]]
 name = "hashbrown"
-version = "0.14.3"
+version = "0.14.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "290f1a1d9242c78d09ce40a5e87e7554ee637af1351968159f4952f028f75604"
+checksum = "e5274423e17b7c9fc20b6e7e208532f9b19825d82dfd615708b70edd83df41f1"
 dependencies = [
  "ahash 0.8.11",
  "allocator-api2",
@@ -2394,7 +2393,7 @@ version = "0.8.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "e8094feaf31ff591f651a2664fb9cfd92bba7a60ce3197265e9482ebe753c8f7"
 dependencies = [
- "hashbrown 0.14.3",
+ "hashbrown 0.14.5",
 ]
 
 [[package]]
@@ -2457,9 +2456,9 @@ checksum = "7f24254aa9a54b5c858eaee2f5bccdb46aaf0e486a595ed5fd8f86ba55232a70"
 
 [[package]]
 name = "hickory-proto"
-version = "0.24.0"
+version = "0.24.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "091a6fbccf4860009355e3efc52ff4acf37a63489aad7435372d44ceeb6fbbcf"
+checksum = "07698b8420e2f0d6447a436ba999ec85d8fbf2a398bbd737b82cac4a2e96e512"
 dependencies = [
  "async-trait",
  "cfg-if 1.0.0",
@@ -2481,9 +2480,9 @@ dependencies = [
 
 [[package]]
 name = "hickory-resolver"
-version = "0.24.0"
+version = "0.24.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "35b8f021164e6a984c9030023544c57789c51760065cd510572fedcfb04164e8"
+checksum = "28757f23aa75c98f254cf0405e6d8c25b831b32921b050a66692427679b1f243"
 dependencies = [
  "cfg-if 1.0.0",
  "futures-util",
@@ -2491,7 +2490,7 @@ dependencies = [
  "ipconfig",
  "lru-cache",
  "once_cell",
- "parking_lot 0.12.1",
+ "parking_lot 0.12.2",
  "rand",
  "resolv-conf",
  "smallvec",
@@ -2729,7 +2728,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "168fb715dda47215e360912c096649d23d58bf392ac62f73919e831745e40f26"
 dependencies = [
  "equivalent",
- "hashbrown 0.14.3",
+ "hashbrown 0.14.5",
 ]
 
 [[package]]
@@ -2790,15 +2789,6 @@ dependencies = [
 
 [[package]]
 name = "itertools"
-version = "0.11.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b1c173a5686ce8bfa551b3563d0c2170bf24ca44da99c7ca4bfdab5418c3fe57"
-dependencies = [
- "either",
-]
-
-[[package]]
-name = "itertools"
 version = "0.12.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "ba291022dbbd398a455acf126c1e341954079855bc60dfdda641363bd6922569"
@@ -2908,7 +2898,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "62802173041ed97845bc20f8cf6817e445fe537ed879ddf43fb96166829ec8ff"
 dependencies = [
  "keyvaluedb",
- "parking_lot 0.12.1",
+ "parking_lot 0.12.2",
 ]
 
 [[package]]
@@ -2920,7 +2910,7 @@ dependencies = [
  "hex",
  "keyvaluedb",
  "log",
- "parking_lot 0.12.1",
+ "parking_lot 0.12.2",
  "rusqlite",
 ]
 
@@ -2937,7 +2927,7 @@ dependencies = [
  "keyvaluedb",
  "keyvaluedb-memorydb",
  "log",
- "parking_lot 0.12.1",
+ "parking_lot 0.12.2",
  "send_wrapper 0.6.0",
  "wasm-bindgen",
  "web-sys",
@@ -2972,9 +2962,9 @@ checksum = "9c198f91728a82281a64e1f4f9eeb25d82cb32a5de251c6bd1b5154d63a8e7bd"
 
 [[package]]
 name = "libc-print"
-version = "0.1.22"
+version = "0.1.23"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c17f111e2175c779daaf5e89fe3a3b0776b0adec218bc1159c56e4d3f58032f5"
+checksum = "a4a660208db49e35faf57b37484350f1a61072f2a5becf0592af6015d9ddd4b0"
 dependencies = [
  "libc",
 ]
@@ -2986,7 +2976,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "0c2a198fb6b0eada2a8df47933734e6d35d350665a33a3593d7164fa52c75c19"
 dependencies = [
  "cfg-if 1.0.0",
- "windows-targets 0.52.4",
+ "windows-targets 0.52.5",
 ]
 
 [[package]]
@@ -3042,9 +3032,9 @@ checksum = "01cda141df6706de531b6c46c3a33ecca755538219bd484262fa09410c13539c"
 
 [[package]]
 name = "lock_api"
-version = "0.4.11"
+version = "0.4.12"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3c168f8615b12bc01f9c17e2eb0cc07dcae1940121185446edc3744920e8ef45"
+checksum = "07af8b9cdd281b7915f413fa73f29ebd5d55d0d3f0155584dade1ff18cea1b17"
 dependencies = [
  "autocfg",
  "scopeguard",
@@ -3221,7 +3211,7 @@ dependencies = [
  "ndk-macro",
  "ndk-sys 0.4.1+23.1.7779620",
  "once_cell",
- "parking_lot 0.12.1",
+ "parking_lot 0.12.2",
 ]
 
 [[package]]
@@ -3239,18 +3229,18 @@ dependencies = [
 
 [[package]]
 name = "ndk-sys"
-version = "0.3.0"
+version = "0.4.1+23.1.7779620"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6e5a6ae77c8ee183dcbbba6150e2e6b9f3f4196a7666c02a715a95692ec1fa97"
+checksum = "3cf2aae958bd232cac5069850591667ad422d263686d75b52a065f9badeee5a3"
 dependencies = [
  "jni-sys",
 ]
 
 [[package]]
 name = "ndk-sys"
-version = "0.4.1+23.1.7779620"
+version = "0.5.0+25.2.9519653"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3cf2aae958bd232cac5069850591667ad422d263686d75b52a065f9badeee5a3"
+checksum = "8c196769dd60fd4f363e11d948139556a344e79d451aeb2fa2fd040738ef7691"
 dependencies = [
  "jni-sys",
 ]
@@ -3399,9 +3389,9 @@ dependencies = [
 
 [[package]]
 name = "num"
-version = "0.4.1"
+version = "0.4.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b05180d69e3da0e530ba2a1dae5110317e49e3b7f3d41be227dc5f92e49ee7af"
+checksum = "3135b08af27d103b0a51f2ae0f8632117b7b185ccf931445affa8df530576a41"
 dependencies = [
  "num-bigint",
  "num-complex",
@@ -3732,12 +3722,12 @@ checksum = "c1b04fb49957986fdce4d6ee7a65027d55d4b6d2265e5848bbb507b58ccfdb6f"
 
 [[package]]
 name = "paranoid-android"
-version = "0.2.1"
+version = "0.2.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e736c9fbaf42b43459cd1fded3dd272968daadfcbc5660ee231a12899f092289"
+checksum = "101795d63d371b43e38d6e7254677657be82f17022f7f7893c268f33ac0caadc"
 dependencies = [
  "lazy_static",
- "ndk-sys 0.3.0",
+ "ndk-sys 0.5.0+25.2.9519653",
  "sharded-slab",
  "smallvec",
  "tracing-core",
@@ -3763,12 +3753,12 @@ dependencies = [
 
 [[package]]
 name = "parking_lot"
-version = "0.12.1"
+version = "0.12.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3742b2c103b9f06bc9fff0a37ff4912935851bee6d36f3c02bcc755bcfec228f"
+checksum = "7e4af0ca4f6caed20e900d564c242b8e5d4903fdacf31d3daf527b66fe6f42fb"
 dependencies = [
  "lock_api",
- "parking_lot_core 0.9.9",
+ "parking_lot_core 0.9.10",
 ]
 
 [[package]]
@@ -3787,15 +3777,15 @@ dependencies = [
 
 [[package]]
 name = "parking_lot_core"
-version = "0.9.9"
+version = "0.9.10"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4c42a9226546d68acdd9c0a280d17ce19bfe27a46bf68784e4066115788d008e"
+checksum = "1e401f977ab385c9e4e3ab30627d6f26d00e2c73eef317493c4ec6d468726cf8"
 dependencies = [
  "cfg-if 1.0.0",
  "libc",
- "redox_syscall 0.4.1",
+ "redox_syscall 0.5.1",
  "smallvec",
- "windows-targets 0.48.5",
+ "windows-targets 0.52.5",
 ]
 
 [[package]]
@@ -3864,7 +3854,7 @@ dependencies = [
  "pest_meta",
  "proc-macro2",
  "quote",
- "syn 2.0.58",
+ "syn 2.0.60",
 ]
 
 [[package]]
@@ -3905,7 +3895,7 @@ checksum = "2f38a4412a78282e09a2cf38d195ea5420d15ba0602cb375210efbc877243965"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.58",
+ "syn 2.0.60",
 ]
 
 [[package]]
@@ -3927,7 +3917,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "668d31b1c4eba19242f2088b2bf3316b82ca31082a8335764db4e083db7485d4"
 dependencies = [
  "atomic-waker",
- "fastrand 2.0.2",
+ "fastrand 2.1.0",
  "futures-io",
 ]
 
@@ -3984,15 +3974,15 @@ dependencies = [
 
 [[package]]
 name = "polling"
-version = "3.6.0"
+version = "3.7.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e0c976a60b2d7e99d6f229e414670a9b85d13ac305cc6d1e9c134de58c5aaaf6"
+checksum = "645493cf344456ef24219d02a768cf1fb92ddf8c92161679ae3d91b91a637be3"
 dependencies = [
  "cfg-if 1.0.0",
  "concurrent-queue",
  "hermit-abi 0.3.9",
  "pin-project-lite",
- "rustix 0.38.32",
+ "rustix 0.38.34",
  "tracing",
  "windows-sys 0.52.0",
 ]
@@ -4009,6 +3999,21 @@ dependencies = [
 ]
 
 [[package]]
+name = "portable-atomic"
+version = "1.6.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "7170ef9988bc169ba16dd36a7fa041e5c4cbeb6a35b76d4c03daded371eae7c0"
+
+[[package]]
+name = "portable-atomic-util"
+version = "0.1.5"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "a1a7411625b38d51b41421c6333976adffd4674a925a978856734a2dc853449b"
+dependencies = [
+ "portable-atomic",
+]
+
+[[package]]
 name = "powerfmt"
 version = "0.2.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -4041,9 +4046,9 @@ dependencies = [
 
 [[package]]
 name = "proc-macro2"
-version = "1.0.79"
+version = "1.0.81"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e835ff2298f5721608eb1a980ecaee1aef2c132bf95ecc026a11b7bf3c01c02e"
+checksum = "3d1597b0c024618f09a9c3b8655b7e430397a36d23fdafec26d6965e9eec3eba"
 dependencies = [
  "unicode-ident",
 ]
@@ -4060,12 +4065,12 @@ dependencies = [
 
 [[package]]
 name = "prost"
-version = "0.12.3"
+version = "0.12.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "146c289cda302b98a28d40c8b3b90498d6e526dd24ac2ecea73e4e491685b94a"
+checksum = "d0f5d036824e4761737860779c906171497f6d55681139d8312388f8fe398922"
 dependencies = [
  "bytes",
- "prost-derive 0.12.3",
+ "prost-derive 0.12.4",
 ]
 
 [[package]]
@@ -4083,24 +4088,24 @@ dependencies = [
 
 [[package]]
 name = "prost-derive"
-version = "0.12.3"
+version = "0.12.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "efb6c9a1dd1def8e2124d17e83a20af56f1570d6c2d2bd9e266ccb768df3840e"
+checksum = "19de2de2a00075bf566bee3bd4db014b11587e84184d3f7a791bc17f1a8e9e48"
 dependencies = [
  "anyhow",
- "itertools 0.11.0",
+ "itertools 0.12.1",
  "proc-macro2",
  "quote",
- "syn 2.0.58",
+ "syn 2.0.60",
 ]
 
 [[package]]
 name = "prost-types"
-version = "0.12.3"
+version = "0.12.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "193898f59edcf43c26227dcd4c8427f00d99d61e95dcde58dabd49fa291d470e"
+checksum = "3235c33eb02c1f1e212abdbe34c78b264b038fb58ca612664343271e36e55ffe"
 dependencies = [
- "prost 0.12.3",
+ "prost 0.12.4",
 ]
 
 [[package]]
@@ -4117,9 +4122,9 @@ checksum = "a1d01941d82fa2ab50be1e79e6714289dd7cde78eba4c074bc5a4374f650dfe0"
 
 [[package]]
 name = "quote"
-version = "1.0.35"
+version = "1.0.36"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "291ec9ab5efd934aaf503a6466c5d5251535d108ee747472c3977cc5acc868ef"
+checksum = "0fa76aaf39101c457836aec0ce2316dbdc3ab723cdda1c6bd4e6ad4208acaca7"
 dependencies = [
  "proc-macro2",
 ]
@@ -4211,6 +4216,15 @@ dependencies = [
 ]
 
 [[package]]
+name = "redox_syscall"
+version = "0.5.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "469052894dcb553421e483e4209ee581a45100d31b4018de03e5a7ad86374a7e"
+dependencies = [
+ "bitflags 2.5.0",
+]
+
+[[package]]
 name = "redox_users"
 version = "0.4.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -4424,9 +4438,9 @@ dependencies = [
 
 [[package]]
 name = "rustix"
-version = "0.38.32"
+version = "0.38.34"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "65e04861e65f21776e67888bfbea442b3642beaa0138fdb1dd7a84a52dffdb89"
+checksum = "70dc5ec042f7a43c4a73241207cecc9873a06d45debb38b329f8541d85c2730f"
 dependencies = [
  "bitflags 2.5.0",
  "errno",
@@ -4437,9 +4451,9 @@ dependencies = [
 
 [[package]]
 name = "rustls"
-version = "0.21.10"
+version = "0.21.12"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f9d5a6813c0759e4609cd494e8e725babae6a2ca7b62a5536a13daaec6fcb7ba"
+checksum = "3f56a14d1f48b391359b22f731fd4bd7e43c97f3c50eee276f3aa09c94784d3e"
 dependencies = [
  "log",
  "ring",
@@ -4468,9 +4482,9 @@ dependencies = [
 
 [[package]]
 name = "rustversion"
-version = "1.0.14"
+version = "1.0.15"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7ffc183a10b4478d04cbbbfc96d0873219d962dd5accaff2ffbd4ceb7df837f4"
+checksum = "80af6f9131f277a45a3fba6ce8e2258037bb0477a67e610d3c1fe046ab31de47"
 
 [[package]]
 name = "rustyline-async"
@@ -4505,9 +4519,9 @@ dependencies = [
 
 [[package]]
 name = "schemars"
-version = "0.8.16"
+version = "0.8.17"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "45a28f4c49489add4ce10783f7911893516f15afe45d015608d41faca6bc4d29"
+checksum = "7f55c82c700538496bdc329bb4918a81f87cc8888811bd123cf325a0f2f8d309"
 dependencies = [
  "dyn-clone",
  "schemars_derive",
@@ -4517,14 +4531,14 @@ dependencies = [
 
 [[package]]
 name = "schemars_derive"
-version = "0.8.16"
+version = "0.8.17"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c767fd6fa65d9ccf9cf026122c1b555f2ef9a4f0cea69da4d7dbc3e258d30967"
+checksum = "83263746fe5e32097f06356968a077f96089739c927a61450efa069905eec108"
 dependencies = [
  "proc-macro2",
  "quote",
- "serde_derive_internals 0.26.0",
- "syn 1.0.109",
+ "serde_derive_internals 0.29.0",
+ "syn 2.0.60",
 ]
 
 [[package]]
@@ -4615,9 +4629,9 @@ dependencies = [
 
 [[package]]
 name = "serde"
-version = "1.0.197"
+version = "1.0.199"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3fb1c873e1b9b056a4dc4c0c198b24c3ffa059243875552b2bd0933b1aee4ce2"
+checksum = "0c9f6e76df036c77cd94996771fb40db98187f096dd0b9af39c6c6e452ba966a"
 dependencies = [
  "serde_derive",
 ]
@@ -4674,42 +4688,42 @@ dependencies = [
 
 [[package]]
 name = "serde_derive"
-version = "1.0.197"
+version = "1.0.199"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7eb0b34b42edc17f6b7cac84a52a1c5f0e1bb2227e997ca9011ea3dd34e8610b"
+checksum = "11bd257a6541e141e42ca6d24ae26f7714887b47e89aa739099104c7e4d3b7fc"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.58",
+ "syn 2.0.60",
 ]
 
 [[package]]
 name = "serde_derive_internals"
-version = "0.26.0"
+version = "0.28.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "85bf8229e7920a9f636479437026331ce11aa132b4dde37d121944a44d6e5f3c"
+checksum = "e578a843d40b4189a4d66bba51d7684f57da5bd7c304c64e14bd63efbef49509"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 1.0.109",
+ "syn 2.0.60",
 ]
 
 [[package]]
 name = "serde_derive_internals"
-version = "0.28.0"
+version = "0.29.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e578a843d40b4189a4d66bba51d7684f57da5bd7c304c64e14bd63efbef49509"
+checksum = "330f01ce65a3a5fe59a60c82f3c9a024b573b8a6e875bd233fe5f934e71d54e3"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.58",
+ "syn 2.0.60",
 ]
 
 [[package]]
 name = "serde_json"
-version = "1.0.115"
+version = "1.0.116"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "12dc5c46daa8e9fdf4f5e71b6cf9a53f2487da0e86e55808e2d35539666497dd"
+checksum = "3e17db7126d17feb94eb3fad46bf1a96b034e8aacbc2e775fe81505f8b0b2813"
 dependencies = [
  "itoa",
  "ryu",
@@ -4718,13 +4732,13 @@ dependencies = [
 
 [[package]]
 name = "serde_repr"
-version = "0.1.18"
+version = "0.1.19"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0b2e6b945e9d3df726b65d6ee24060aff8e3533d431f677a9695db04eff9dfdb"
+checksum = "6c64451ba24fc7a6a2d60fc75dd9c83c90903b19028d4eff35e88fc1e86564e9"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.58",
+ "syn 2.0.60",
 ]
 
 [[package]]
@@ -4759,7 +4773,7 @@ dependencies = [
  "futures",
  "lazy_static",
  "log",
- "parking_lot 0.12.1",
+ "parking_lot 0.12.2",
  "serial_test_derive",
 ]
 
@@ -4771,7 +4785,7 @@ checksum = "91d129178576168c589c9ec973feedf7d3126c01ac2bf08795109aa35b69fb8f"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.58",
+ "syn 2.0.60",
 ]
 
 [[package]]
@@ -4865,9 +4879,9 @@ dependencies = [
 
 [[package]]
 name = "signal-hook-registry"
-version = "1.4.1"
+version = "1.4.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d8229b473baa5980ac72ef434c4415e70c4b5e71b423043adb4ba059f89c99a1"
+checksum = "a9e9e0b4211b72e7b8b6e85c807d36c212bdb33ea8587f7569562a84df5465b1"
 dependencies = [
  "libc",
 ]
@@ -5023,9 +5037,9 @@ dependencies = [
 
 [[package]]
 name = "syn"
-version = "2.0.58"
+version = "2.0.60"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "44cfb93f38070beee36b3fef7d4f5a16f27751d94b187b666a5cc5e9b0d30687"
+checksum = "909518bc7b1c9b779f1bbf07f2929d35af9f0f37e47c6e9ef7f9dddc1e1821f3"
 dependencies = [
  "proc-macro2",
  "quote",
@@ -5040,9 +5054,9 @@ checksum = "2047c6ded9c721764247e62cd3b03c09ffc529b2ba5b10ec482ae507a4a70160"
 
 [[package]]
 name = "sysinfo"
-version = "0.30.8"
+version = "0.30.11"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4b1a378e48fb3ce3a5cf04359c456c9c98ff689bcf1c1bc6e6a31f247686f275"
+checksum = "87341a165d73787554941cd5ef55ad728011566fe714e987d1b976c15dbc3a83"
 dependencies = [
  "cfg-if 1.0.0",
  "core-foundation-sys",
@@ -5068,7 +5082,7 @@ version = "0.3.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "21bebf2b7c9e0a515f6e0f8c51dc0f8e4696391e6f1ff30379559f8365fb0df7"
 dependencies = [
- "rustix 0.38.32",
+ "rustix 0.38.34",
  "windows-sys 0.48.0",
 ]
 
@@ -5083,32 +5097,32 @@ dependencies = [
 
 [[package]]
 name = "thingbuf"
-version = "0.1.4"
+version = "0.1.6"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4706f1bfb859af03f099ada2de3cea3e515843c2d3e93b7893f16d94a37f9415"
+checksum = "662b54ef6f7b4e71f683dadc787bbb2d8e8ef2f91b682ebed3164a5a7abca905"
 dependencies = [
- "parking_lot 0.12.1",
+ "parking_lot 0.12.2",
  "pin-project",
 ]
 
 [[package]]
 name = "thiserror"
-version = "1.0.58"
+version = "1.0.59"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "03468839009160513471e86a034bb2c5c0e4baae3b43f79ffc55c4a5427b3297"
+checksum = "f0126ad08bff79f29fc3ae6a55cc72352056dfff61e3ff8bb7129476d44b23aa"
 dependencies = [
  "thiserror-impl",
 ]
 
 [[package]]
 name = "thiserror-impl"
-version = "1.0.58"
+version = "1.0.59"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c61f3ba182994efc43764a46c018c347bc492c79f024e705f46567b418f6d4f7"
+checksum = "d1cd413b5d558b4c5bf3680e324a6fa5014e7b7c067a51e69dbdf47eb7148b66"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.58",
+ "syn 2.0.60",
 ]
 
 [[package]]
@@ -5134,9 +5148,9 @@ dependencies = [
 
 [[package]]
 name = "time"
-version = "0.3.34"
+version = "0.3.36"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c8248b6521bb14bc45b4067159b9b6ad792e2d6d754d6c41fb50e29fefe38749"
+checksum = "5dfd88e563464686c916c7e46e623e520ddc6d79fa6641390f2e3fa86e83e885"
 dependencies = [
  "deranged",
  "itoa",
@@ -5157,9 +5171,9 @@ checksum = "ef927ca75afb808a4d64dd374f00a2adf8d0fcff8e7b184af886c3c87ec4a3f3"
 
 [[package]]
 name = "time-macros"
-version = "0.2.17"
+version = "0.2.18"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7ba3a3ef41e6672a2f0f001392bb5dcd3ff0a9992d618ca761a11c3121547774"
+checksum = "3f252a68540fde3a3877aeea552b832b40ab9a69e318efd078774a01ddee1ccf"
 dependencies = [
  "num-conv",
  "time-core",
@@ -5200,7 +5214,7 @@ dependencies = [
  "libc",
  "mio",
  "num_cpus",
- "parking_lot 0.12.1",
+ "parking_lot 0.12.2",
  "pin-project-lite",
  "signal-hook-registry",
  "socket2 0.5.6",
@@ -5227,7 +5241,7 @@ checksum = "5b8a1e28f2deaa14e508979454cb3a223b10b938b45af148bc0986de36f1923b"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.58",
+ "syn 2.0.60",
 ]
 
 [[package]]
@@ -5274,7 +5288,7 @@ dependencies = [
  "serde",
  "serde_spanned",
  "toml_datetime",
- "toml_edit 0.22.9",
+ "toml_edit 0.22.12",
 ]
 
 [[package]]
@@ -5299,15 +5313,15 @@ dependencies = [
 
 [[package]]
 name = "toml_edit"
-version = "0.22.9"
+version = "0.22.12"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8e40bb779c5187258fd7aad0eb68cb8706a0a81fa712fbea808ab43c4b8374c4"
+checksum = "d3328d4f68a705b2a4498da1d580585d39a6510f98318a2cec3018a7ec61ddef"
 dependencies = [
  "indexmap 2.2.6",
  "serde",
  "serde_spanned",
  "toml_datetime",
- "winnow 0.6.5",
+ "winnow 0.6.7",
 ]
 
 [[package]]
@@ -5356,7 +5370,7 @@ dependencies = [
  "hyper-timeout",
  "percent-encoding",
  "pin-project",
- "prost 0.12.3",
+ "prost 0.12.4",
  "tokio",
  "tokio-stream",
  "tower",
@@ -5429,7 +5443,7 @@ checksum = "34704c8d6ebcbc939824180af020566b01a7c01f80641264eba0999f6c2b6be7"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.58",
+ "syn 2.0.60",
 ]
 
 [[package]]
@@ -5585,7 +5599,7 @@ dependencies = [
  "proc-macro2",
  "quote",
  "serde_derive_internals 0.28.0",
- "syn 2.0.58",
+ "syn 2.0.60",
 ]
 
 [[package]]
@@ -5648,9 +5662,9 @@ checksum = "d4c87d22b6e3f4a18d4d40ef354e97c90fcb14dd91d7dc0aa9d8a1172ebf7202"
 
 [[package]]
 name = "unicode-width"
-version = "0.1.11"
+version = "0.1.12"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e51733f11c9c4f72aa0c160008246859e340b00807569a0da0e7a1079b27ba85"
+checksum = "68f5e5f3158ecfd4b8ff6fe086db7c8467a2dfdac97fe420f2b7c4aa97af66d6"
 
 [[package]]
 name = "unicode_categories"
@@ -5771,7 +5785,7 @@ dependencies = [
 
 [[package]]
 name = "veilid-cli"
-version = "0.3.1"
+version = "0.3.2"
 dependencies = [
  "arboard",
  "async-std",
@@ -5796,7 +5810,7 @@ dependencies = [
  "log",
  "lru",
  "owning_ref",
- "parking_lot 0.12.1",
+ "parking_lot 0.12.2",
  "rustyline-async",
  "serde",
  "serde_derive",
@@ -5812,7 +5826,7 @@ dependencies = [
 
 [[package]]
 name = "veilid-core"
-version = "0.3.1"
+version = "0.3.2"
 dependencies = [
  "argon2",
  "async-io 1.13.0",
@@ -5861,7 +5875,7 @@ dependencies = [
  "num-traits",
  "once_cell",
  "paranoid-android",
- "parking_lot 0.12.1",
+ "parking_lot 0.12.2",
  "paste",
  "range-set-blaze",
  "rustls",
@@ -5915,7 +5929,7 @@ dependencies = [
 
 [[package]]
 name = "veilid-flutter"
-version = "0.3.1"
+version = "0.3.2"
 dependencies = [
  "allo-isolate",
  "android_log-sys 0.3.1",
@@ -5935,7 +5949,7 @@ dependencies = [
  "opentelemetry-semantic-conventions",
  "oslog",
  "paranoid-android",
- "parking_lot 0.12.1",
+ "parking_lot 0.12.2",
  "serde",
  "serde_json",
  "tokio",
@@ -5953,7 +5967,7 @@ version = "0.1.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "6a3dabbda02cfe176635dcaa18a021416ff2eb4d0b47a913e3fdc7f62049d7b1"
 dependencies = [
- "hashbrown 0.14.3",
+ "hashbrown 0.14.5",
  "serde",
 ]
 
@@ -5972,7 +5986,7 @@ dependencies = [
 
 [[package]]
 name = "veilid-server"
-version = "0.3.1"
+version = "0.3.2"
 dependencies = [
  "ansi_term",
  "async-std",
@@ -5994,7 +6008,7 @@ dependencies = [
  "opentelemetry",
  "opentelemetry-otlp",
  "opentelemetry-semantic-conventions",
- "parking_lot 0.12.1",
+ "parking_lot 0.12.2",
  "rpassword",
  "serde",
  "serde_derive",
@@ -6022,7 +6036,7 @@ dependencies = [
 
 [[package]]
 name = "veilid-tools"
-version = "0.3.1"
+version = "0.3.2"
 dependencies = [
  "android_logger 0.13.3",
  "async-lock 2.8.0",
@@ -6052,7 +6066,7 @@ dependencies = [
  "once_cell",
  "oslog",
  "paranoid-android",
- "parking_lot 0.12.1",
+ "parking_lot 0.12.2",
  "rand",
  "rand_core",
  "range-set-blaze",
@@ -6080,7 +6094,7 @@ dependencies = [
 
 [[package]]
 name = "veilid-wasm"
-version = "0.3.1"
+version = "0.3.2"
 dependencies = [
  "cfg-if 1.0.0",
  "console_error_panic_hook",
@@ -6089,7 +6103,7 @@ dependencies = [
  "gloo-utils 0.2.0",
  "js-sys",
  "lazy_static",
- "parking_lot 0.12.1",
+ "parking_lot 0.12.2",
  "send_wrapper 0.6.0",
  "serde",
  "serde-wasm-bindgen 0.6.5",
@@ -6166,7 +6180,7 @@ dependencies = [
  "once_cell",
  "proc-macro2",
  "quote",
- "syn 2.0.58",
+ "syn 2.0.60",
  "wasm-bindgen-shared",
 ]
 
@@ -6200,7 +6214,7 @@ checksum = "e94f17b526d0a461a191c78ea52bbce64071ed5c04c9ffe424dcb38f74171bb7"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.58",
+ "syn 2.0.60",
  "wasm-bindgen-backend",
  "wasm-bindgen-shared",
 ]
@@ -6233,7 +6247,7 @@ checksum = "b7f89739351a2e03cb94beb799d47fb2cac01759b40ec441f7de39b00cbf7ef0"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.58",
+ "syn 2.0.60",
 ]
 
 [[package]]
@@ -6308,12 +6322,14 @@ checksum = "53a85b86a771b1c87058196170769dd264f66c0782acf1ae6cc51bfd64b39082"
 
 [[package]]
 name = "wg"
-version = "0.3.2"
+version = "0.9.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f390449c16e0679435fc97a6b49d24e67f09dd05fea1de54db1b60902896d273"
+checksum = "dadf90865f15d5c2d87f126a56ce3715b3a233641acdd10f59200aa7f4c81fb9"
 dependencies = [
- "atomic-waker",
- "parking_lot 0.12.1",
+ "event-listener 5.3.0",
+ "futures-core",
+ "parking_lot 0.12.2",
+ "pin-project-lite",
  "triomphe",
 ]
 
@@ -6326,14 +6342,14 @@ dependencies = [
  "either",
  "home",
  "once_cell",
- "rustix 0.38.32",
+ "rustix 0.38.34",
 ]
 
 [[package]]
 name = "widestring"
-version = "1.0.2"
+version = "1.1.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "653f141f39ec16bba3c5abe400a0c60da7468261cc2cbf36805022876bc721a8"
+checksum = "7219d36b6eac893fa81e84ebe06485e7dcbb616177469b142df14f1f4deb1311"
 
 [[package]]
 name = "winapi"
@@ -6353,11 +6369,11 @@ checksum = "ac3b87c63620426dd9b991e5ce0329eff545bccbbb34f3be09ff6fb6ab51b7b6"
 
 [[package]]
 name = "winapi-util"
-version = "0.1.6"
+version = "0.1.8"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f29e6f9198ba0d26b4c9f07dbe6f9ed633e1f3d5b8b414090084349e46a52596"
+checksum = "4d4cc384e1e73b93bafa6fb4f1df8c41695c8a91cf9c4c64358067d15a7b6c6b"
 dependencies = [
- "winapi",
+ "windows-sys 0.52.0",
 ]
 
 [[package]]
@@ -6383,7 +6399,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "e48a53791691ab099e5e2ad123536d0fff50652600abaf43bbf952894110d0be"
 dependencies = [
  "windows-core 0.52.0",
- "windows-targets 0.52.4",
+ "windows-targets 0.52.5",
 ]
 
 [[package]]
@@ -6401,7 +6417,7 @@ version = "0.52.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "33ab640c8d7e35bf8ba19b884ba838ceb4fba93a4e8c65a9059d08afcfc683d9"
 dependencies = [
- "windows-targets 0.52.4",
+ "windows-targets 0.52.5",
 ]
 
 [[package]]
@@ -6416,13 +6432,13 @@ dependencies = [
 
 [[package]]
 name = "windows-service"
-version = "0.6.0"
+version = "0.7.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "cd9db37ecb5b13762d95468a2fc6009d4b2c62801243223aabd44fca13ad13c8"
+checksum = "d24d6bcc7f734a4091ecf8d7a64c5f7d7066f45585c1861eba06449909609c8a"
 dependencies = [
- "bitflags 1.3.2",
+ "bitflags 2.5.0",
  "widestring",
- "windows-sys 0.45.0",
+ "windows-sys 0.52.0",
 ]
 
 [[package]]
@@ -6449,7 +6465,7 @@ version = "0.52.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "282be5f36a8ce781fad8c8ae18fa3f9beff57ec1b52cb3de0789201425d9a33d"
 dependencies = [
- "windows-targets 0.52.4",
+ "windows-targets 0.52.5",
 ]
 
 [[package]]
@@ -6484,17 +6500,18 @@ dependencies = [
 
 [[package]]
 name = "windows-targets"
-version = "0.52.4"
+version = "0.52.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7dd37b7e5ab9018759f893a1952c9420d060016fc19a472b4bb20d1bdd694d1b"
+checksum = "6f0713a46559409d202e70e28227288446bf7841d3211583a4b53e3f6d96e7eb"
 dependencies = [
- "windows_aarch64_gnullvm 0.52.4",
- "windows_aarch64_msvc 0.52.4",
- "windows_i686_gnu 0.52.4",
- "windows_i686_msvc 0.52.4",
- "windows_x86_64_gnu 0.52.4",
- "windows_x86_64_gnullvm 0.52.4",
- "windows_x86_64_msvc 0.52.4",
+ "windows_aarch64_gnullvm 0.52.5",
+ "windows_aarch64_msvc 0.52.5",
+ "windows_i686_gnu 0.52.5",
+ "windows_i686_gnullvm",
+ "windows_i686_msvc 0.52.5",
+ "windows_x86_64_gnu 0.52.5",
+ "windows_x86_64_gnullvm 0.52.5",
+ "windows_x86_64_msvc 0.52.5",
 ]
 
 [[package]]
@@ -6511,9 +6528,9 @@ checksum = "2b38e32f0abccf9987a4e3079dfb67dcd799fb61361e53e2882c3cbaf0d905d8"
 
 [[package]]
 name = "windows_aarch64_gnullvm"
-version = "0.52.4"
+version = "0.52.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "bcf46cf4c365c6f2d1cc93ce535f2c8b244591df96ceee75d8e83deb70a9cac9"
+checksum = "7088eed71e8b8dda258ecc8bac5fb1153c5cffaf2578fc8ff5d61e23578d3263"
 
 [[package]]
 name = "windows_aarch64_msvc"
@@ -6529,9 +6546,9 @@ checksum = "dc35310971f3b2dbbf3f0690a219f40e2d9afcf64f9ab7cc1be722937c26b4bc"
 
 [[package]]
 name = "windows_aarch64_msvc"
-version = "0.52.4"
+version = "0.52.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "da9f259dd3bcf6990b55bffd094c4f7235817ba4ceebde8e6d11cd0c5633b675"
+checksum = "9985fd1504e250c615ca5f281c3f7a6da76213ebd5ccc9561496568a2752afb6"
 
 [[package]]
 name = "windows_i686_gnu"
@@ -6547,9 +6564,15 @@ checksum = "a75915e7def60c94dcef72200b9a8e58e5091744960da64ec734a6c6e9b3743e"
 
 [[package]]
 name = "windows_i686_gnu"
-version = "0.52.4"
+version = "0.52.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b474d8268f99e0995f25b9f095bc7434632601028cf86590aea5c8a5cb7801d3"
+checksum = "88ba073cf16d5372720ec942a8ccbf61626074c6d4dd2e745299726ce8b89670"
+
+[[package]]
+name = "windows_i686_gnullvm"
+version = "0.52.5"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "87f4261229030a858f36b459e748ae97545d6f1ec60e5e0d6a3d32e0dc232ee9"
 
 [[package]]
 name = "windows_i686_msvc"
@@ -6565,9 +6588,9 @@ checksum = "8f55c233f70c4b27f66c523580f78f1004e8b5a8b659e05a4eb49d4166cca406"
 
 [[package]]
 name = "windows_i686_msvc"
-version = "0.52.4"
+version = "0.52.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1515e9a29e5bed743cb4415a9ecf5dfca648ce85ee42e15873c3cd8610ff8e02"
+checksum = "db3c2bf3d13d5b658be73463284eaf12830ac9a26a90c717b7f771dfe97487bf"
 
 [[package]]
 name = "windows_x86_64_gnu"
@@ -6583,9 +6606,9 @@ checksum = "53d40abd2583d23e4718fddf1ebec84dbff8381c07cae67ff7768bbf19c6718e"
 
 [[package]]
 name = "windows_x86_64_gnu"
-version = "0.52.4"
+version = "0.52.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5eee091590e89cc02ad514ffe3ead9eb6b660aedca2183455434b93546371a03"
+checksum = "4e4246f76bdeff09eb48875a0fd3e2af6aada79d409d33011886d3e1581517d9"
 
 [[package]]
 name = "windows_x86_64_gnullvm"
@@ -6601,9 +6624,9 @@ checksum = "0b7b52767868a23d5bab768e390dc5f5c55825b6d30b86c844ff2dc7414044cc"
 
 [[package]]
 name = "windows_x86_64_gnullvm"
-version = "0.52.4"
+version = "0.52.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "77ca79f2451b49fa9e2af39f0747fe999fcda4f5e241b2898624dca97a1f2177"
+checksum = "852298e482cd67c356ddd9570386e2862b5673c85bd5f88df9ab6802b334c596"
 
 [[package]]
 name = "windows_x86_64_msvc"
@@ -6619,9 +6642,9 @@ checksum = "ed94fce61571a4006852b7389a063ab983c02eb1bb37b47f8272ce92d06d9538"
 
 [[package]]
 name = "windows_x86_64_msvc"
-version = "0.52.4"
+version = "0.52.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "32b752e52a2da0ddfbdbcc6fceadfeede4c939ed16d13e648833a61dfb611ed8"
+checksum = "bec47e5bfd1bff0eeaf6d8b485cc1074891a197ab4225d504cb7a1ab88b02bf0"
 
 [[package]]
 name = "winnow"
@@ -6634,9 +6657,9 @@ dependencies = [
 
 [[package]]
 name = "winnow"
-version = "0.6.5"
+version = "0.6.7"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "dffa400e67ed5a4dd237983829e66475f0a4a26938c4b04c21baede6262215b8"
+checksum = "14b9415ee827af173ebb3f15f9083df5a122eb93572ec28741fb153356ea2578"
 dependencies = [
  "memchr",
 ]
@@ -6677,7 +6700,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "f8f25ead8c7e4cba123243a6367da5d3990e0d3affa708ea19dce96356bd9f1a"
 dependencies = [
  "gethostname",
- "rustix 0.38.32",
+ "rustix 0.38.34",
  "x11rb-protocol",
 ]
 
@@ -6781,7 +6804,7 @@ checksum = "9ce1b18ccd8e73a9321186f97e46f9f04b778851177567b1975109d26a08d2a6"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.58",
+ "syn 2.0.60",
 ]
 
 [[package]]
@@ -6801,7 +6824,7 @@ checksum = "ce36e65b0d2999d2aafac989fb249189a141aee1f53c612c1f37d72631959f69"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.58",
+ "syn 2.0.60",
 ]
 
 [[package]]
diff --git a/pkgs/tools/networking/veilid/default.nix b/pkgs/tools/networking/veilid/default.nix
index e88671b37068..d41177eabf30 100644
--- a/pkgs/tools/networking/veilid/default.nix
+++ b/pkgs/tools/networking/veilid/default.nix
@@ -10,13 +10,13 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "veilid";
-  version = "0.3.1";
+  version = "0.3.2";
 
   src = fetchFromGitLab {
     owner = "veilid";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-pBMUwCZ1dLLde+RF9smy4/RZYmtyW+oTeo3LHNtscSc=";
+    sha256 = "sha256-iaWdI6lhxX3xdpd5caPl5cWXrBkWiMc7T/dMXp2hqNM=";
   };
 
   cargoLock = {
diff --git a/pkgs/tools/networking/webalizer/default.nix b/pkgs/tools/networking/webalizer/default.nix
index c8945fa454aa..93bd4dad005c 100644
--- a/pkgs/tools/networking/webalizer/default.nix
+++ b/pkgs/tools/networking/webalizer/default.nix
@@ -33,6 +33,6 @@ stdenv.mkDerivation rec {
     description = "Web server log file analysis program";
     homepage = "https://webalizer.net/";
     platforms = platforms.unix;
-    license = licenses.gpl2;
+    license = licenses.gpl2Plus;
   };
 }
diff --git a/pkgs/tools/networking/whois/default.nix b/pkgs/tools/networking/whois/default.nix
index 253a233b852d..4b7d7b778c0a 100644
--- a/pkgs/tools/networking/whois/default.nix
+++ b/pkgs/tools/networking/whois/default.nix
@@ -43,7 +43,7 @@ stdenv.mkDerivation rec {
     '';
 
     homepage = "https://packages.qa.debian.org/w/whois.html";
-    license = licenses.gpl2;
+    license = licenses.gpl2Plus;
     maintainers = with maintainers; [ fpletz ];
     platforms = platforms.unix;
     mainProgram = "whois";
diff --git a/pkgs/tools/networking/wireguard-tools/default.nix b/pkgs/tools/networking/wireguard-tools/default.nix
index effba4adce05..ebac01f063cd 100644
--- a/pkgs/tools/networking/wireguard-tools/default.nix
+++ b/pkgs/tools/networking/wireguard-tools/default.nix
@@ -70,7 +70,7 @@ stdenv.mkDerivation rec {
     '';
     downloadPage = "https://git.zx2c4.com/wireguard-tools/refs/";
     homepage = "https://www.wireguard.com/";
-    license = licenses.gpl2;
+    license = licenses.gpl2Only;
     maintainers = with maintainers; [ ericsagnes zx2c4 globin ma27 d-xo ];
     mainProgram = "wg";
     platforms = platforms.unix;
diff --git a/pkgs/tools/networking/wol/default.nix b/pkgs/tools/networking/wol/default.nix
index 14cf48ae0dbd..0d1abbf33544 100644
--- a/pkgs/tools/networking/wol/default.nix
+++ b/pkgs/tools/networking/wol/default.nix
@@ -17,7 +17,7 @@ stdenv.mkDerivation rec {
   meta = with lib; {
     description = "Implements Wake On LAN functionality in a small program";
     homepage = "https://sourceforge.net/projects/wake-on-lan/";
-    license = licenses.gpl2;
+    license = licenses.gpl2Plus;
     maintainers = with maintainers; [ makefu ];
     mainProgram = "wol";
     platforms = platforms.linux;
diff --git a/pkgs/tools/networking/xdp-tools/default.nix b/pkgs/tools/networking/xdp-tools/default.nix
index f1bcb4dfd115..14fdecbde8bc 100644
--- a/pkgs/tools/networking/xdp-tools/default.nix
+++ b/pkgs/tools/networking/xdp-tools/default.nix
@@ -68,7 +68,7 @@ stdenv.mkDerivation rec {
   meta = with lib; {
     homepage = "https://github.com/xdp-project/xdp-tools";
     description = "Library and utilities for use with XDP";
-    license = with licenses; [ gpl2 lgpl21 bsd2 ];
+    license = with licenses; [ gpl2Only lgpl21 bsd2 ];
     maintainers = with maintainers; [ tirex vcunat vifino ];
     platforms = platforms.linux;
   };
diff --git a/pkgs/tools/networking/xl2tpd/default.nix b/pkgs/tools/networking/xl2tpd/default.nix
index 2f84a4d330fd..3b0ee699ff32 100644
--- a/pkgs/tools/networking/xl2tpd/default.nix
+++ b/pkgs/tools/networking/xl2tpd/default.nix
@@ -23,7 +23,7 @@ stdenv.mkDerivation rec {
     homepage = src.meta.homepage;
     description = "Layer 2 Tunnelling Protocol Daemon (RFC 2661)";
     platforms = platforms.linux;
-    license = licenses.gpl2;
+    license = licenses.gpl2Plus;
     maintainers = with maintainers; [ abbradar ];
   };
 }
diff --git a/pkgs/tools/networking/xnbd/default.nix b/pkgs/tools/networking/xnbd/default.nix
index 52f332a0e8f8..e7faf8302f18 100644
--- a/pkgs/tools/networking/xnbd/default.nix
+++ b/pkgs/tools/networking/xnbd/default.nix
@@ -27,7 +27,7 @@ stdenv.mkDerivation rec {
   meta = {
     homepage = "https://bitbucket.org/hirofuchi/xnbd";
     description = "Yet another NBD (Network Block Device) server program";
-    license = lib.licenses.gpl2;
+    license = lib.licenses.gpl2Plus;
     maintainers = [ ];
     platforms = lib.platforms.linux;
   };
diff --git a/pkgs/tools/networking/zap/default.nix b/pkgs/tools/networking/zap/default.nix
index 9bb63cf37e7c..e0ceade91f5a 100644
--- a/pkgs/tools/networking/zap/default.nix
+++ b/pkgs/tools/networking/zap/default.nix
@@ -2,10 +2,10 @@
 
 stdenv.mkDerivation rec {
   pname = "zap";
-  version = "2.14.0";
+  version = "2.15.0";
   src = fetchurl {
     url = "https://github.com/zaproxy/zaproxy/releases/download/v${version}/ZAP_${version}_Linux.tar.gz";
-    sha256 = "sha256-IZ1/JbviUkdxOAWrAswSJ5iYyHB0PBquPCsLGIIZGWA=";
+    sha256 = "sha256-ZBDhlrqrRYqSBOKar7V0X8oAOipsA4byxuXAS2diH6c=";
   };
 
   buildInputs = [ jre ];
@@ -36,7 +36,7 @@ stdenv.mkDerivation rec {
   '';
 
   meta = with lib; {
-    homepage = "https://www.owasp.org/index.php/ZAP";
+    homepage = "https://www.zaproxy.org/";
     description = "Java application for web penetration testing";
     maintainers = with maintainers; [ mog rafael ];
     platforms = platforms.linux;
diff --git a/pkgs/tools/networking/zerotierone/Cargo.lock b/pkgs/tools/networking/zerotierone/Cargo.lock
index b01e68e2d084..1b01a0df3e12 100644
--- a/pkgs/tools/networking/zerotierone/Cargo.lock
+++ b/pkgs/tools/networking/zerotierone/Cargo.lock
@@ -4,9 +4,9 @@ version = 3
 
 [[package]]
 name = "addr2line"
-version = "0.20.0"
+version = "0.21.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f4fa78e18c64fce05e902adecd7a5eed15a5e0a3439f7b0e169f0252214865e3"
+checksum = "8a30b2e23b9e17a9f90641c7ab1549cd9b44f296d3ccbf309d2863cfe398a0cb"
 dependencies = [
  "gimli",
 ]
@@ -18,6 +18,33 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "f26201604c87b1e01bd3d98f8d5d9a8fcbb815e8cedb41ffccbeb4bf593a35fe"
 
 [[package]]
+name = "ahash"
+version = "0.8.11"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "e89da841a80418a9b391ebaea17f5c112ffaaa96f621d2c285b5174da76b9011"
+dependencies = [
+ "cfg-if",
+ "once_cell",
+ "version_check",
+ "zerocopy",
+]
+
+[[package]]
+name = "aho-corasick"
+version = "1.1.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "b2969dcb958b36655471fc61f7e416fa76033bdd4bfed0678d8fee1e2d07a1f0"
+dependencies = [
+ "memchr",
+]
+
+[[package]]
+name = "allocator-api2"
+version = "0.2.16"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "0942ffc6dcaadf03badf6e6a2d0228460359d5e34b57ccdc720b7382dfbd5ec5"
+
+[[package]]
 name = "android-tzdata"
 version = "0.1.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -42,6 +69,51 @@ dependencies = [
 ]
 
 [[package]]
+name = "anstyle"
+version = "1.0.6"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "8901269c6307e8d93993578286ac0edf7f195079ffff5ebdeea6a59ffb7e36bc"
+
+[[package]]
+name = "anyhow"
+version = "1.0.81"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "0952808a6c2afd1aa8947271f3a60f1a6763c7b912d210184c5149b5cf147247"
+
+[[package]]
+name = "async-stream"
+version = "0.3.5"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "cd56dd203fef61ac097dd65721a419ddccb106b2d2b70ba60a6b529f03961a51"
+dependencies = [
+ "async-stream-impl",
+ "futures-core",
+ "pin-project-lite",
+]
+
+[[package]]
+name = "async-stream-impl"
+version = "0.3.5"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "16e62a023e7c117e27523144c5d2459f4397fcc3cab0085af8e2224f643a0193"
+dependencies = [
+ "proc-macro2",
+ "quote",
+ "syn 2.0.53",
+]
+
+[[package]]
+name = "async-trait"
+version = "0.1.78"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "461abc97219de0eaaf81fe3ef974a540158f3d079c2ab200f891f1a2ef201e85"
+dependencies = [
+ "proc-macro2",
+ "quote",
+ "syn 2.0.53",
+]
+
+[[package]]
 name = "atty"
 version = "0.2.14"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -59,10 +131,66 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "d468802bab17cbc0cc575e9b053f41e72aa36bfa6b7f55e3529ffa43161b97fa"
 
 [[package]]
+name = "axum"
+version = "0.6.20"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "3b829e4e32b91e643de6eafe82b1d90675f5874230191a4ffbc1b336dec4d6bf"
+dependencies = [
+ "async-trait",
+ "axum-core",
+ "bitflags 1.3.2",
+ "bytes",
+ "futures-util",
+ "http",
+ "http-body",
+ "hyper",
+ "itoa",
+ "matchit",
+ "memchr",
+ "mime",
+ "percent-encoding",
+ "pin-project-lite",
+ "rustversion",
+ "serde",
+ "sync_wrapper",
+ "tower",
+ "tower-layer",
+ "tower-service",
+]
+
+[[package]]
+name = "axum-core"
+version = "0.3.4"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "759fa577a247914fd3f7f76d62972792636412fbfd634cd452f6a385a74d2d2c"
+dependencies = [
+ "async-trait",
+ "bytes",
+ "futures-util",
+ "http",
+ "http-body",
+ "mime",
+ "rustversion",
+ "tower-layer",
+ "tower-service",
+]
+
+[[package]]
+name = "backoff"
+version = "0.4.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "b62ddb9cb1ec0a098ad4bbf9344d0713fa193ae1a80af55febcff2627b6a00c1"
+dependencies = [
+ "getrandom",
+ "instant",
+ "rand",
+]
+
+[[package]]
 name = "backtrace"
-version = "0.3.68"
+version = "0.3.69"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4319208da049c43661739c5fade2ba182f09d1dc2299b32298d3a31692b17e12"
+checksum = "2089b7e3f35b9dd2d0ed921ead4f6d318c27680d4a5bd167b3ee120edb105837"
 dependencies = [
  "addr2line",
  "cc",
@@ -74,6 +202,12 @@ dependencies = [
 ]
 
 [[package]]
+name = "base16ct"
+version = "0.2.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "4c7f02d4ea65f2c1853089ffd8d2787bdbc63de2f0d29dedbcf8ccdfa0ccd4cf"
+
+[[package]]
 name = "base64"
 version = "0.13.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -81,9 +215,15 @@ checksum = "9e1b586273c5702936fe7b7d6896644d8be71e6314cfe09d3167c95f712589e8"
 
 [[package]]
 name = "base64"
-version = "0.21.2"
+version = "0.21.7"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "604178f6c5c21f02dc555784810edfb88d34ac2c73b2eae109655649ee73ce3d"
+checksum = "9d297deb1925b89f2ccc13d7635fa0714f12c87adce1c75356b39ca9b7178567"
+
+[[package]]
+name = "base64ct"
+version = "1.6.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "8c3c1a368f70d6cf7302d78f8f7093da241fb8e8807c05cc9e51a125895a6d5b"
 
 [[package]]
 name = "bitflags"
@@ -93,9 +233,9 @@ checksum = "bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a"
 
 [[package]]
 name = "bitflags"
-version = "2.4.0"
+version = "2.5.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b4682ae6287fcf752ecaabbfcc7b6f9b72aa33933dc23a554d853aea8eea8635"
+checksum = "cf4b9d6a944f767f8e5e0db018570623c85f3d925ac718db4e06d0187adb21c1"
 
 [[package]]
 name = "block-buffer"
@@ -108,15 +248,21 @@ dependencies = [
 
 [[package]]
 name = "bumpalo"
-version = "3.13.0"
+version = "3.15.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a3e2c3daef883ecc1b5d58c15adae93470a91d425f3532ba1695849656af3fc1"
+checksum = "7ff69b9dd49fd426c69a0db9fc04dd934cdb6645ff000864d98f7e2af8830eaa"
+
+[[package]]
+name = "byteorder"
+version = "1.5.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "1fd0f2584146f6f2ef48085050886acf353beff7305ebd1ae69500e27c67f64b"
 
 [[package]]
 name = "bytes"
-version = "1.4.0"
+version = "1.5.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "89b2fd2a0dcf38d7971e2194b6b6eebab45ae01067456a7fd93d5547a61b70be"
+checksum = "a2bd12c1caf447e69cd4528f47f94d203fd2582878ecb9e9465484c4148a8223"
 
 [[package]]
 name = "cbindgen"
@@ -125,8 +271,8 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "51e3973b165dc0f435831a9e426de67e894de532754ff7a3f307c03ee5dec7dc"
 dependencies = [
  "clap",
- "heck",
- "indexmap",
+ "heck 0.3.3",
+ "indexmap 1.9.3",
  "log",
  "proc-macro2",
  "quote",
@@ -139,12 +285,9 @@ dependencies = [
 
 [[package]]
 name = "cc"
-version = "1.0.82"
+version = "1.0.90"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "305fe645edc1442a0fa8b6726ba61d422798d37a52e12eaecf4b022ebbb88f01"
-dependencies = [
- "libc",
-]
+checksum = "8cd6604a82acf3039f1144f54b8eb34e91ffba622051189e71b781822d5ee1f5"
 
 [[package]]
 name = "cfg-if"
@@ -154,15 +297,17 @@ checksum = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd"
 
 [[package]]
 name = "chrono"
-version = "0.4.26"
+version = "0.4.35"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ec837a71355b28f6556dbd569b37b3f363091c0bd4b2e735674521b4c5fd9bc5"
+checksum = "8eaf5903dcbc0a39312feb77df2ff4c76387d591b9fc7b04a238dcf8bb62639a"
 dependencies = [
  "android-tzdata",
  "iana-time-zone",
+ "js-sys",
  "num-traits",
  "serde",
- "winapi",
+ "wasm-bindgen",
+ "windows-targets 0.52.4",
 ]
 
 [[package]]
@@ -181,10 +326,22 @@ dependencies = [
 ]
 
 [[package]]
+name = "const-oid"
+version = "0.9.6"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "c2459377285ad874054d797f3ccebf984978aa39129f6eafde5cdc8315b612f8"
+
+[[package]]
+name = "convert_case"
+version = "0.4.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "6245d59a3e82a7fc217c5828a6692dbc6dfb63a0c8c90495621f7b9d79704a0e"
+
+[[package]]
 name = "core-foundation"
-version = "0.9.3"
+version = "0.9.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "194a7a9e6de53fa55116934067c844d9d749312f75c6f6d0980e8c252f8c2146"
+checksum = "91e195e091a93c46f7102ec7818a2aa394e1e1771c3ab4825963fa03e45afb8f"
 dependencies = [
  "core-foundation-sys",
  "libc",
@@ -192,20 +349,56 @@ dependencies = [
 
 [[package]]
 name = "core-foundation-sys"
-version = "0.8.4"
+version = "0.8.6"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e496a50fda8aacccc86d7529e2c1e0892dbd0f898a6b5645b5561b89c3210efa"
+checksum = "06ea2b9bc92be3c2baa9334a323ebca2d6f074ff852cd1d7b11064035cd3868f"
 
 [[package]]
 name = "cpufeatures"
-version = "0.2.9"
+version = "0.2.12"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a17b76ff3a4162b0b27f354a0c87015ddad39d35f9c0c36607a3bdd175dde1f1"
+checksum = "53fe5e26ff1b7aef8bca9c6080520cfb8d9333c7568e1829cef191a9723e5504"
 dependencies = [
  "libc",
 ]
 
 [[package]]
+name = "crossbeam-channel"
+version = "0.5.12"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "ab3db02a9c5b5121e1e42fbdb1aeb65f5e02624cc58c43f2884c6ccac0b82f95"
+dependencies = [
+ "crossbeam-utils",
+]
+
+[[package]]
+name = "crossbeam-queue"
+version = "0.3.11"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "df0346b5d5e76ac2fe4e327c5fd1118d6be7c51dfb18f9b7922923f287471e35"
+dependencies = [
+ "crossbeam-utils",
+]
+
+[[package]]
+name = "crossbeam-utils"
+version = "0.8.19"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "248e3bacc7dc6baa3b21e405ee045c3047101a49145e7e9eca583ab4c2ca5345"
+
+[[package]]
+name = "crypto-bigint"
+version = "0.5.5"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "0dc92fb57ca44df6db8059111ab3af99a63d5d0f8375d9972e319a379c6bab76"
+dependencies = [
+ "generic-array",
+ "rand_core",
+ "subtle",
+ "zeroize",
+]
+
+[[package]]
 name = "crypto-common"
 version = "0.1.6"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -216,10 +409,38 @@ dependencies = [
 ]
 
 [[package]]
+name = "curve25519-dalek"
+version = "4.1.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "0a677b8922c94e01bdbb12126b0bc852f00447528dee1782229af9c720c3f348"
+dependencies = [
+ "cfg-if",
+ "cpufeatures",
+ "curve25519-dalek-derive",
+ "digest",
+ "fiat-crypto",
+ "platforms",
+ "rustc_version",
+ "subtle",
+ "zeroize",
+]
+
+[[package]]
+name = "curve25519-dalek-derive"
+version = "0.1.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "f46882e17999c6cc590af592290432be3bce0428cb0d5f8b6715e4dc7b383eb3"
+dependencies = [
+ "proc-macro2",
+ "quote",
+ "syn 2.0.53",
+]
+
+[[package]]
 name = "darling"
-version = "0.13.4"
+version = "0.20.8"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a01d95850c592940db9b8194bc39f4bc0e89dee5c4265e4b1807c34a9aba453c"
+checksum = "54e36fcd13ed84ffdfda6f5be89b31287cbb80c439841fe69e04841435464391"
 dependencies = [
  "darling_core",
  "darling_macro",
@@ -227,34 +448,106 @@ dependencies = [
 
 [[package]]
 name = "darling_core"
-version = "0.13.4"
+version = "0.20.8"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "859d65a907b6852c9361e3185c862aae7fafd2887876799fa55f5f99dc40d610"
+checksum = "9c2cf1c23a687a1feeb728783b993c4e1ad83d99f351801977dd809b48d0a70f"
 dependencies = [
  "fnv",
  "ident_case",
  "proc-macro2",
  "quote",
  "strsim 0.10.0",
- "syn 1.0.109",
+ "syn 2.0.53",
 ]
 
 [[package]]
 name = "darling_macro"
-version = "0.13.4"
+version = "0.20.8"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9c972679f83bdf9c42bd905396b6c3588a843a17f0f16dfcfa3e2c5d57441835"
+checksum = "a668eda54683121533a393014d8692171709ff57a7d61f187b6e782719f8933f"
 dependencies = [
  "darling_core",
  "quote",
- "syn 1.0.109",
+ "syn 2.0.53",
+]
+
+[[package]]
+name = "dashmap"
+version = "5.5.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "978747c1d849a7d2ee5e8adc0159961c48fb7e5db2f06af6723b80123bb53856"
+dependencies = [
+ "cfg-if",
+ "hashbrown 0.14.3",
+ "lock_api",
+ "once_cell",
+ "parking_lot_core",
+]
+
+[[package]]
+name = "der"
+version = "0.7.8"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "fffa369a668c8af7dbf8b5e56c9f744fbd399949ed171606040001947de40b1c"
+dependencies = [
+ "const-oid",
+ "pem-rfc7468",
+ "zeroize",
 ]
 
 [[package]]
 name = "deranged"
-version = "0.3.7"
+version = "0.3.11"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7684a49fb1af197853ef7b2ee694bc1f5b4179556f1e5710e1760c5db6f5e929"
+checksum = "b42b6fa04a440b495c8b04d0e71b707c585f83cb9cb28cf8cd0d976c315e31b4"
+dependencies = [
+ "powerfmt",
+ "serde",
+]
+
+[[package]]
+name = "derive_builder"
+version = "0.20.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "0350b5cb0331628a5916d6c5c0b72e97393b8b6b03b47a9284f4e7f5a405ffd7"
+dependencies = [
+ "derive_builder_macro",
+]
+
+[[package]]
+name = "derive_builder_core"
+version = "0.20.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "d48cda787f839151732d396ac69e3473923d54312c070ee21e9effcaa8ca0b1d"
+dependencies = [
+ "darling",
+ "proc-macro2",
+ "quote",
+ "syn 2.0.53",
+]
+
+[[package]]
+name = "derive_builder_macro"
+version = "0.20.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "206868b8242f27cecce124c19fd88157fbd0dd334df2587f36417bafbc85097b"
+dependencies = [
+ "derive_builder_core",
+ "syn 2.0.53",
+]
+
+[[package]]
+name = "derive_more"
+version = "0.99.17"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "4fb810d30a7c1953f91334de7244731fc3f3c10d7fe163338a35b9f640960321"
+dependencies = [
+ "convert_case",
+ "proc-macro2",
+ "quote",
+ "rustc_version",
+ "syn 1.0.109",
+]
 
 [[package]]
 name = "digest"
@@ -263,51 +556,181 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "9ed9a281f7bc9b7576e61468ba615a66a5c8cfdff42420a70aa82701a3b1e292"
 dependencies = [
  "block-buffer",
+ "const-oid",
  "crypto-common",
  "subtle",
 ]
 
 [[package]]
+name = "downcast"
+version = "0.11.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "1435fa1053d8b2fbbe9be7e97eca7f33d37b28409959813daefc1446a14247f1"
+
+[[package]]
+name = "dyn-clone"
+version = "1.0.17"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "0d6ef0072f8a535281e4876be788938b528e9a1d43900b82c2569af7da799125"
+
+[[package]]
+name = "ecdsa"
+version = "0.16.9"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "ee27f32b5c5292967d2d4a9d7f1e0b0aed2c15daded5a60300e4abb9d8020bca"
+dependencies = [
+ "der",
+ "digest",
+ "elliptic-curve",
+ "rfc6979",
+ "signature",
+ "spki",
+]
+
+[[package]]
+name = "ed25519"
+version = "2.2.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "115531babc129696a58c64a4fef0a8bf9e9698629fb97e9e40767d235cfbcd53"
+dependencies = [
+ "pkcs8",
+ "signature",
+]
+
+[[package]]
+name = "ed25519-dalek"
+version = "2.1.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "4a3daa8e81a3963a60642bcc1f90a670680bd4a77535faa384e9d1c79d620871"
+dependencies = [
+ "curve25519-dalek",
+ "ed25519",
+ "serde",
+ "sha2",
+ "subtle",
+ "zeroize",
+]
+
+[[package]]
 name = "either"
-version = "1.9.0"
+version = "1.10.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a26ae43d7bcc3b814de94796a5e736d4029efb0ee900c12e2d54c993ad1a1e07"
+checksum = "11157ac094ffbdde99aa67b23417ebdd801842852b500e395a45a9c0aac03e4a"
+
+[[package]]
+name = "elliptic-curve"
+version = "0.13.8"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "b5e6043086bf7973472e0c7dff2142ea0b680d30e18d9cc40f267efbf222bd47"
+dependencies = [
+ "base16ct",
+ "crypto-bigint",
+ "digest",
+ "ff",
+ "generic-array",
+ "group",
+ "hkdf",
+ "pem-rfc7468",
+ "pkcs8",
+ "rand_core",
+ "sec1",
+ "subtle",
+ "zeroize",
+]
 
 [[package]]
 name = "encoding_rs"
-version = "0.8.32"
+version = "0.8.33"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "071a31f4ee85403370b58aca746f01041ede6f0da2730960ad001edc2b71b394"
+checksum = "7268b386296a025e474d5140678f75d6de9493ae55a5d709eeb9dd08149945e1"
 dependencies = [
  "cfg-if",
 ]
 
 [[package]]
-name = "errno"
-version = "0.3.2"
+name = "enum-iterator"
+version = "2.0.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6b30f669a7961ef1631673d2766cc92f52d64f7ef354d4fe0ddfd30ed52f0f4f"
+checksum = "600536cfe9e2da0820aa498e570f6b2b9223eec3ce2f835c8ae4861304fa4794"
 dependencies = [
- "errno-dragonfly",
- "libc",
- "windows-sys",
+ "enum-iterator-derive",
 ]
 
 [[package]]
-name = "errno-dragonfly"
-version = "0.1.2"
+name = "enum-iterator-derive"
+version = "1.3.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "aa68f1b12764fab894d2755d2518754e71b4fd80ecfb822714a1206c2aab39bf"
+checksum = "03cdc46ec28bd728e67540c528013c6a10eb69a02eb31078a1bda695438cbfb8"
+dependencies = [
+ "proc-macro2",
+ "quote",
+ "syn 2.0.53",
+]
+
+[[package]]
+name = "enum_dispatch"
+version = "0.3.12"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "8f33313078bb8d4d05a2733a94ac4c2d8a0df9a2b84424ebf4f33bfc224a890e"
+dependencies = [
+ "once_cell",
+ "proc-macro2",
+ "quote",
+ "syn 2.0.53",
+]
+
+[[package]]
+name = "equivalent"
+version = "1.0.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "5443807d6dff69373d433ab9ef5378ad8df50ca6298caf15de6e52e24aaf54d5"
+
+[[package]]
+name = "erased-serde"
+version = "0.4.4"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "2b73807008a3c7f171cc40312f37d95ef0396e048b5848d775f54b1a4dd4a0d3"
+dependencies = [
+ "serde",
+]
+
+[[package]]
+name = "errno"
+version = "0.3.8"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "a258e46cdc063eb8519c00b9fc845fc47bcfca4130e2f08e88665ceda8474245"
 dependencies = [
- "cc",
  "libc",
+ "windows-sys 0.52.0",
 ]
 
 [[package]]
 name = "fastrand"
-version = "2.0.0"
+version = "2.0.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "25cbce373ec4653f1a01a31e8a5e5ec0c622dc27ff9c4e6606eefef5cbbed4a5"
+
+[[package]]
+name = "ff"
+version = "0.13.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "ded41244b729663b1e574f1b4fb731469f69f79c17667b5d776b16cda0479449"
+dependencies = [
+ "rand_core",
+ "subtle",
+]
+
+[[package]]
+name = "fiat-crypto"
+version = "0.2.6"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6999dc1837253364c2ebb0704ba97994bd874e8f195d665c50b7548f6ea92764"
+checksum = "1676f435fc1dadde4d03e43f5d62b259e1ce5f40bd4ffb21db2b42ebe59c1382"
+
+[[package]]
+name = "fixedbitset"
+version = "0.4.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "0ce7134b9999ecaf8bcd65542e436736ef32ddca1b3e06094cb6ec5755203b80"
 
 [[package]]
 name = "fnv"
@@ -332,54 +755,118 @@ checksum = "00b0228411908ca8685dba7fc2cdd70ec9990a6e753e89b6ac91a84c40fbaf4b"
 
 [[package]]
 name = "form_urlencoded"
-version = "1.2.0"
+version = "1.2.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a62bc1cf6f830c2ec14a513a9fb124d0a213a629668a4186f329db21fe045652"
+checksum = "e13624c2627564efccf4934284bdd98cbaa14e79b0b5a141218e507b3a823456"
 dependencies = [
  "percent-encoding",
 ]
 
 [[package]]
+name = "fragile"
+version = "2.0.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "6c2141d6d6c8512188a7891b4b01590a45f6dac67afb4f255c4124dbb86d4eaa"
+
+[[package]]
+name = "futures"
+version = "0.3.30"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "645c6916888f6cb6350d2550b80fb63e734897a8498abe35cfb732b6487804b0"
+dependencies = [
+ "futures-channel",
+ "futures-core",
+ "futures-executor",
+ "futures-io",
+ "futures-sink",
+ "futures-task",
+ "futures-util",
+]
+
+[[package]]
 name = "futures-channel"
-version = "0.3.28"
+version = "0.3.30"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "955518d47e09b25bbebc7a18df10b81f0c766eaf4c4f1cccef2fca5f2a4fb5f2"
+checksum = "eac8f7d7865dcb88bd4373ab671c8cf4508703796caa2b1985a9ca867b3fcb78"
 dependencies = [
  "futures-core",
+ "futures-sink",
 ]
 
 [[package]]
 name = "futures-core"
-version = "0.3.28"
+version = "0.3.30"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4bca583b7e26f571124fe5b7561d49cb2868d79116cfa0eefce955557c6fee8c"
+checksum = "dfc6580bb841c5a68e9ef15c77ccc837b40a7504914d52e47b8b0e9bbda25a1d"
+
+[[package]]
+name = "futures-executor"
+version = "0.3.30"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "a576fc72ae164fca6b9db127eaa9a9dda0d61316034f33a0a0d4eda41f02b01d"
+dependencies = [
+ "futures-core",
+ "futures-task",
+ "futures-util",
+]
 
 [[package]]
 name = "futures-io"
-version = "0.3.28"
+version = "0.3.30"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4fff74096e71ed47f8e023204cfd0aa1289cd54ae5430a9523be060cdb849964"
+checksum = "a44623e20b9681a318efdd71c299b6b222ed6f231972bfe2f224ebad6311f0c1"
+
+[[package]]
+name = "futures-macro"
+version = "0.3.30"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "87750cf4b7a4c0625b1529e4c543c2182106e4dedc60a2a6455e00d212c489ac"
+dependencies = [
+ "proc-macro2",
+ "quote",
+ "syn 2.0.53",
+]
+
+[[package]]
+name = "futures-retry"
+version = "0.6.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "fde5a672a61f96552aa5ed9fd9c81c3fbdae4be9b1e205d6eaf17c83705adc0f"
+dependencies = [
+ "futures",
+ "pin-project-lite",
+ "tokio",
+]
 
 [[package]]
 name = "futures-sink"
-version = "0.3.28"
+version = "0.3.30"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f43be4fe21a13b9781a69afa4985b0f6ee0e1afab2c6f454a8cf30e2b2237b6e"
+checksum = "9fb8e00e87438d937621c1c6269e53f536c14d3fbd6a042bb24879e57d474fb5"
 
 [[package]]
 name = "futures-task"
-version = "0.3.28"
+version = "0.3.30"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "38d84fa142264698cdce1a9f9172cf383a0c82de1bddcf3092901442c4097004"
+
+[[package]]
+name = "futures-timer"
+version = "3.0.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "76d3d132be6c0e6aa1534069c705a74a5997a356c0dc2f86a47765e5617c5b65"
+checksum = "f288b0a4f20f9a56b5d1da57e2227c661b7b16168e2f72365f57b63326e29b24"
 
 [[package]]
 name = "futures-util"
-version = "0.3.28"
+version = "0.3.30"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "26b01e40b772d54cf6c6d721c1d1abd0647a0106a12ecaa1c186273392a69533"
+checksum = "3d6401deb83407ab3da39eba7e33987a73c3df0c82b4bb5813ee871c19c41d48"
 dependencies = [
+ "futures-channel",
  "futures-core",
  "futures-io",
+ "futures-macro",
+ "futures-sink",
  "futures-task",
  "memchr",
  "pin-project-lite",
@@ -395,13 +882,14 @@ checksum = "85649ca51fd72272d7821adaf274ad91c288277713d9c18820d8499a7ff69e9a"
 dependencies = [
  "typenum",
  "version_check",
+ "zeroize",
 ]
 
 [[package]]
 name = "getrandom"
-version = "0.2.10"
+version = "0.2.12"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "be4136b2a15dd319360be1c07d9933517ccf0be8f16bf62a3bee4f0d618df427"
+checksum = "190092ea657667030ac6a35e305e62fc4dd69fd98ac98631e5d3a2b1575a12b5"
 dependencies = [
  "cfg-if",
  "js-sys",
@@ -412,15 +900,46 @@ dependencies = [
 
 [[package]]
 name = "gimli"
-version = "0.27.3"
+version = "0.28.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b6c80984affa11d98d1b88b66ac8853f143217b399d3c74116778ff8fdb4ed2e"
+checksum = "4271d37baee1b8c7e4b708028c57d816cf9d2434acb33a549475f78c181f6253"
+
+[[package]]
+name = "governor"
+version = "0.6.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "68a7f542ee6b35af73b06abc0dad1c1bae89964e4e253bc4b587b91c9637867b"
+dependencies = [
+ "cfg-if",
+ "dashmap",
+ "futures",
+ "futures-timer",
+ "no-std-compat",
+ "nonzero_ext",
+ "parking_lot",
+ "portable-atomic",
+ "quanta",
+ "rand",
+ "smallvec",
+ "spinning_top",
+]
+
+[[package]]
+name = "group"
+version = "0.13.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "f0f9ef7462f7c099f518d754361858f86d8a07af53ba9af0fe635bbccb151a63"
+dependencies = [
+ "ff",
+ "rand_core",
+ "subtle",
+]
 
 [[package]]
 name = "h2"
-version = "0.3.20"
+version = "0.3.25"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "97ec8491ebaf99c8eaa73058b045fe58073cd6be7f596ac993ced0b0a0c01049"
+checksum = "4fbd2820c5e49886948654ab546d0688ff24530286bdcf8fca3cefb16d4618eb"
 dependencies = [
  "bytes",
  "fnv",
@@ -428,7 +947,7 @@ dependencies = [
  "futures-sink",
  "futures-util",
  "http",
- "indexmap",
+ "indexmap 2.2.5",
  "slab",
  "tokio",
  "tokio-util",
@@ -442,6 +961,16 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "8a9ee70c43aaf417c914396645a0fa852624801b24ebb7ae78fe8272889ac888"
 
 [[package]]
+name = "hashbrown"
+version = "0.14.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "290f1a1d9242c78d09ce40a5e87e7554ee637af1351968159f4952f028f75604"
+dependencies = [
+ "ahash",
+ "allocator-api2",
+]
+
+[[package]]
 name = "heck"
 version = "0.3.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -451,6 +980,12 @@ dependencies = [
 ]
 
 [[package]]
+name = "heck"
+version = "0.4.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "95505c38b4572b2d910cecb0281560f54b440a19336cbbcb27bf6ce6adc6f5a8"
+
+[[package]]
 name = "hermit-abi"
 version = "0.1.19"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -461,9 +996,24 @@ dependencies = [
 
 [[package]]
 name = "hermit-abi"
-version = "0.3.2"
+version = "0.3.9"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "d231dfb89cfffdbc30e7fc41579ed6066ad03abda9e567ccafae602b97ec5024"
+
+[[package]]
+name = "hex"
+version = "0.4.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "7f24254aa9a54b5c858eaee2f5bccdb46aaf0e486a595ed5fd8f86ba55232a70"
+
+[[package]]
+name = "hkdf"
+version = "0.12.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "443144c8cdadd93ebf52ddb4056d257f5b52c04d3c804e657d19eb73fc33668b"
+checksum = "7b5f8eb2ad728638ea2c7d47a21db23b7b58a72ed6a38256b8a1849f15fbbdf7"
+dependencies = [
+ "hmac",
+]
 
 [[package]]
 name = "hmac"
@@ -475,10 +1025,19 @@ dependencies = [
 ]
 
 [[package]]
+name = "home"
+version = "0.5.9"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "e3d1354bf6b7235cb4a0576c2619fd4ed18183f689b12b006a0ee7329eeff9a5"
+dependencies = [
+ "windows-sys 0.52.0",
+]
+
+[[package]]
 name = "http"
-version = "0.2.9"
+version = "0.2.12"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "bd6effc99afb63425aff9b05836f029929e345a6148a14b7ecd5ab67af944482"
+checksum = "601cbb57e577e2f5ef5be8e7b83f0f63994f25aa94d673e54a92d5c516d101f1"
 dependencies = [
  "bytes",
  "fnv",
@@ -487,9 +1046,9 @@ dependencies = [
 
 [[package]]
 name = "http-body"
-version = "0.4.5"
+version = "0.4.6"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d5f38f16d184e36f2408a55281cd658ecbd3ca05cce6d6510a176eca393e26d1"
+checksum = "7ceab25649e9960c0311ea418d17bee82c0dcec1bd053b5f9a66e265a693bed2"
 dependencies = [
  "bytes",
  "http",
@@ -510,9 +1069,9 @@ checksum = "df3b46402a9d5adb4c86a0cf463f42e19994e3ee891101b1841f30a545cb49a9"
 
 [[package]]
 name = "hyper"
-version = "0.14.27"
+version = "0.14.28"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ffb1cfd654a8219eaef89881fdb3bb3b1cdc5fa75ded05d6933b2b382e395468"
+checksum = "bf96e135eb83a2a8ddf766e426a841d8ddd7449d5f00d34ea02b41d2f19eef80"
 dependencies = [
  "bytes",
  "futures-channel",
@@ -525,7 +1084,7 @@ dependencies = [
  "httpdate",
  "itoa",
  "pin-project-lite",
- "socket2 0.4.9",
+ "socket2",
  "tokio",
  "tower-service",
  "tracing",
@@ -533,6 +1092,18 @@ dependencies = [
 ]
 
 [[package]]
+name = "hyper-timeout"
+version = "0.4.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "bbb958482e8c7be4bc3cf272a766a2b0bf1a6755e7a6ae777f017a31d11b13b1"
+dependencies = [
+ "hyper",
+ "pin-project-lite",
+ "tokio",
+ "tokio-io-timeout",
+]
+
+[[package]]
 name = "hyper-tls"
 version = "0.5.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -547,16 +1118,16 @@ dependencies = [
 
 [[package]]
 name = "iana-time-zone"
-version = "0.1.57"
+version = "0.1.60"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2fad5b825842d2b38bd206f3e81d6957625fd7f0a361e345c30e01a0ae2dd613"
+checksum = "e7ffbb5a1b541ea2561f8c41c087286cc091e21e556a4f09a8f6cbf17b69b141"
 dependencies = [
  "android_system_properties",
  "core-foundation-sys",
  "iana-time-zone-haiku",
  "js-sys",
  "wasm-bindgen",
- "windows",
+ "windows-core",
 ]
 
 [[package]]
@@ -576,9 +1147,9 @@ checksum = "b9e0384b61958566e926dc50660321d12159025e767c18e043daf26b70104c39"
 
 [[package]]
 name = "idna"
-version = "0.4.0"
+version = "0.5.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7d20d6b07bfbc108882d88ed8e37d39636dcc260e15e30c45e6ba089610b917c"
+checksum = "634d9b1461af396cad843f47fdba5597a4f9e6ddd4bfb6ff5d85028c25cb12f6"
 dependencies = [
  "unicode-bidi",
  "unicode-normalization",
@@ -591,14 +1162,41 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "bd070e393353796e801d209ad339e89596eb4c8d430d18ede6a1cced8fafbd99"
 dependencies = [
  "autocfg",
- "hashbrown",
+ "hashbrown 0.12.3",
+ "serde",
+]
+
+[[package]]
+name = "indexmap"
+version = "2.2.5"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "7b0b929d511467233429c45a44ac1dcaa21ba0f5ba11e4879e6ed28ddb4f9df4"
+dependencies = [
+ "equivalent",
+ "hashbrown 0.14.3",
+ "serde",
 ]
 
 [[package]]
+name = "instant"
+version = "0.1.12"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "7a5bbe824c507c5da5956355e86a746d82e0e1464f65d862cc5e71da70e94b2c"
+dependencies = [
+ "cfg-if",
+]
+
+[[package]]
+name = "inventory"
+version = "0.3.15"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "f958d3d68f4167080a18141e10381e7634563984a537f2a49a30fd8e53ac5767"
+
+[[package]]
 name = "ipnet"
-version = "2.8.0"
+version = "2.9.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "28b29a3cd74f0f4598934efe3aeba42bae0eb4680554128851ebbecb02af14e6"
+checksum = "8f518f335dce6725a761382244631d86cf0ccb2863413590b31338feb467f9c3"
 
 [[package]]
 name = "itertools"
@@ -610,16 +1208,34 @@ dependencies = [
 ]
 
 [[package]]
+name = "itertools"
+version = "0.11.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "b1c173a5686ce8bfa551b3563d0c2170bf24ca44da99c7ca4bfdab5418c3fe57"
+dependencies = [
+ "either",
+]
+
+[[package]]
+name = "itertools"
+version = "0.12.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "ba291022dbbd398a455acf126c1e341954079855bc60dfdda641363bd6922569"
+dependencies = [
+ "either",
+]
+
+[[package]]
 name = "itoa"
-version = "1.0.9"
+version = "1.0.10"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "af150ab688ff2122fcef229be89cb50dd66af9e01a4ff320cc137eecc9bacc38"
+checksum = "b1a46d1a171d865aa5f83f92695765caa047a9b4cbae2cbf37dbd613a793fd4c"
 
 [[package]]
 name = "js-sys"
-version = "0.3.64"
+version = "0.3.69"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c5f195fe497f702db0f318b07fdd68edb16955aed830df8363d837542f8f935a"
+checksum = "29c15563dc2726973df627357ce0c9ddddbea194836909d655df6a75d2cf296d"
 dependencies = [
  "wasm-bindgen",
 ]
@@ -643,30 +1259,73 @@ name = "lazy_static"
 version = "1.4.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "e2abad23fbc42b3700f2f279844dc832adb2b2eb069b2df918f455c4e18cc646"
+dependencies = [
+ "spin 0.5.2",
+]
 
 [[package]]
 name = "libc"
-version = "0.2.147"
+version = "0.2.153"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b4668fb0ea861c1df094127ac5f1da3409a82116a4ba74fca2e58ef927159bb3"
+checksum = "9c198f91728a82281a64e1f4f9eeb25d82cb32a5de251c6bd1b5154d63a8e7bd"
+
+[[package]]
+name = "libm"
+version = "0.2.8"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "4ec2a862134d2a7d32d7983ddcdd1c4923530833c9f2ea1a44fc5fa473989058"
 
 [[package]]
 name = "linux-raw-sys"
-version = "0.4.5"
+version = "0.4.13"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "57bcfdad1b858c2db7c38303a6d2ad4dfaf5eb53dfeb0910128b2c26d6158503"
+checksum = "01cda141df6706de531b6c46c3a33ecca755538219bd484262fa09410c13539c"
+
+[[package]]
+name = "lock_api"
+version = "0.4.11"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "3c168f8615b12bc01f9c17e2eb0cc07dcae1940121185446edc3744920e8ef45"
+dependencies = [
+ "autocfg",
+ "scopeguard",
+]
 
 [[package]]
 name = "log"
-version = "0.4.20"
+version = "0.4.21"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "90ed8c1e510134f979dbc4f070f87d4313098b704861a105fe34231c70a3901c"
+
+[[package]]
+name = "lru"
+version = "0.12.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "d3262e75e648fce39813cb56ac41f3c3e3f65217ebf3844d818d1f9398cfb0dc"
+dependencies = [
+ "hashbrown 0.14.3",
+]
+
+[[package]]
+name = "matchers"
+version = "0.1.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b5e6163cb8c49088c2c36f57875e58ccd8c87c7427f7fbd50ea6710b2f3f2e8f"
+checksum = "8263075bb86c5a1b1427b5ae862e8889656f126e9f77c484496e8b47cf5c5558"
+dependencies = [
+ "regex-automata 0.1.10",
+]
+
+[[package]]
+name = "matchit"
+version = "0.7.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "0e7465ac9959cc2b1404e8e2367b43684a6d13790fe23056cc8c6c5a6b7bcb94"
 
 [[package]]
 name = "memchr"
-version = "2.5.0"
+version = "2.7.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2dffe52ecf27772e601905b7522cb4ef790d2cc203488bbd0e2fe85fcb74566d"
+checksum = "523dc4f511e55ab87b694dc30d0f820d60906ef06413f93d4d7a1385599cc149"
 
 [[package]]
 name = "mime"
@@ -676,25 +1335,58 @@ checksum = "6877bb514081ee2a7ff5ef9de3281f14a4dd4bceac4c09388074a6b5df8a139a"
 
 [[package]]
 name = "miniz_oxide"
-version = "0.7.1"
+version = "0.7.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e7810e0be55b428ada41041c41f32c9f1a42817901b4ccf45fa3d4b6561e74c7"
+checksum = "9d811f3e15f28568be3407c8e7fdb6514c1cda3cb30683f15b6a1a1dc4ea14a7"
 dependencies = [
  "adler",
 ]
 
 [[package]]
 name = "mio"
-version = "0.8.8"
+version = "0.8.11"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "927a765cd3fc26206e66b296465fa9d3e5ab003e651c1b3c060e7956d96b19d2"
+checksum = "a4a650543ca06a924e8b371db273b2756685faae30f8487da1b56505a8f78b0c"
 dependencies = [
  "libc",
  "wasi",
- "windows-sys",
+ "windows-sys 0.48.0",
 ]
 
 [[package]]
+name = "mockall"
+version = "0.12.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "43766c2b5203b10de348ffe19f7e54564b64f3d6018ff7648d1e2d6d3a0f0a48"
+dependencies = [
+ "cfg-if",
+ "downcast",
+ "fragile",
+ "lazy_static",
+ "mockall_derive",
+ "predicates",
+ "predicates-tree",
+]
+
+[[package]]
+name = "mockall_derive"
+version = "0.12.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "af7cbce79ec385a1d4f54baa90a76401eb15d9cab93685f62e7e9f942aa00ae2"
+dependencies = [
+ "cfg-if",
+ "proc-macro2",
+ "quote",
+ "syn 2.0.53",
+]
+
+[[package]]
+name = "multimap"
+version = "0.8.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "e5ce46fe64a9d73be07dcbe690a38ce1b293be448fd8ce1e6c1b8062c9f72c6a"
+
+[[package]]
 name = "native-tls"
 version = "0.2.11"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -713,33 +1405,78 @@ dependencies = [
 ]
 
 [[package]]
-name = "num-bigint"
-version = "0.4.3"
+name = "no-std-compat"
+version = "0.4.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "b93853da6d84c2e3c7d730d6473e8817692dd89be387eb01b94d7f108ecb5b8c"
+
+[[package]]
+name = "nonzero_ext"
+version = "0.3.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f93ab6289c7b344a8a9f60f88d80aa20032336fe78da341afc91c8a2341fc75f"
+checksum = "38bf9645c8b145698bb0b18a4637dcacbc421ea49bef2317e4fd8065a387cf21"
+
+[[package]]
+name = "nu-ansi-term"
+version = "0.46.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "77a8165726e8236064dbb45459242600304b42a5ea24ee2948e18e023bf7ba84"
 dependencies = [
- "autocfg",
+ "overload",
+ "winapi",
+]
+
+[[package]]
+name = "num-bigint-dig"
+version = "0.8.4"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "dc84195820f291c7697304f3cbdadd1cb7199c0efc917ff5eafd71225c136151"
+dependencies = [
+ "byteorder",
+ "lazy_static",
+ "libm",
  "num-integer",
+ "num-iter",
  "num-traits",
+ "rand",
+ "smallvec",
+ "zeroize",
 ]
 
 [[package]]
+name = "num-conv"
+version = "0.1.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "51d515d32fb182ee37cda2ccdcb92950d6a3c2893aa280e540671c2cd0f3b1d9"
+
+[[package]]
 name = "num-integer"
-version = "0.1.45"
+version = "0.1.46"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "7969661fd2958a5cb096e56c8e1ad0444ac2bbcd0061bd28660485a44879858f"
+dependencies = [
+ "num-traits",
+]
+
+[[package]]
+name = "num-iter"
+version = "0.1.44"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "225d3389fb3509a24c93f5c29eb6bde2586b98d9f016636dff58d7c6f7569cd9"
+checksum = "d869c01cc0c455284163fd0092f1f93835385ccab5a98a0dcc497b2f8bf055a9"
 dependencies = [
  "autocfg",
+ "num-integer",
  "num-traits",
 ]
 
 [[package]]
 name = "num-traits"
-version = "0.2.16"
+version = "0.2.18"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f30b0abd723be7e2ffca1272140fac1a2f084c77ec3e123c192b66af1ee9e6c2"
+checksum = "da0df0e5185db44f69b44f26786fe401b6c293d1907744beaa7fa62b2e5a517a"
 dependencies = [
  "autocfg",
+ "libm",
 ]
 
 [[package]]
@@ -748,15 +1485,15 @@ version = "1.16.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "4161fcb6d602d4d2081af7c3a45852d875a03dd337a6bfdd6e06407b61342a43"
 dependencies = [
- "hermit-abi 0.3.2",
+ "hermit-abi 0.3.9",
  "libc",
 ]
 
 [[package]]
 name = "oauth2"
-version = "4.4.1"
+version = "4.4.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "09a6e2a2b13a56ebeabba9142f911745be6456163fd6c3d361274ebcd891a80c"
+checksum = "c38841cdd844847e3e7c8d29cef9dcfed8877f8f56f9071f77843ecf3baf937f"
 dependencies = [
  "base64 0.13.1",
  "chrono",
@@ -774,34 +1511,38 @@ dependencies = [
 
 [[package]]
 name = "object"
-version = "0.31.1"
+version = "0.32.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8bda667d9f2b5051b8833f59f3bf748b28ef54f850f4fcb389a252aa383866d1"
+checksum = "a6a622008b6e321afc04970976f62ee297fdbaa6f95318ca343e3eebb9648441"
 dependencies = [
  "memchr",
 ]
 
 [[package]]
 name = "once_cell"
-version = "1.18.0"
+version = "1.19.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "dd8b5dd2ae5ed71462c540258bedcb51965123ad7e7ccf4b9a8cafaa4a63576d"
+checksum = "3fdb12b2476b595f9358c5161aa467c2438859caa136dec86c26fdd2efe17b92"
 
 [[package]]
 name = "openidconnect"
-version = "2.5.1"
+version = "3.5.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "98dd5b7049bac4fdd2233b8c9767d42c05da8006fdb79cc903258556d2b18009"
+checksum = "f47e80a9cfae4462dd29c41e987edd228971d6565553fbc14b8a11e666d91590"
 dependencies = [
  "base64 0.13.1",
  "chrono",
+ "dyn-clone",
+ "ed25519-dalek",
+ "hmac",
  "http",
- "itertools",
+ "itertools 0.10.5",
  "log",
- "num-bigint",
  "oauth2",
+ "p256",
+ "p384",
  "rand",
- "ring",
+ "rsa",
  "serde",
  "serde-value",
  "serde_derive",
@@ -809,6 +1550,7 @@ dependencies = [
  "serde_path_to_error",
  "serde_plain",
  "serde_with",
+ "sha2",
  "subtle",
  "thiserror",
  "url",
@@ -816,11 +1558,11 @@ dependencies = [
 
 [[package]]
 name = "openssl"
-version = "0.10.56"
+version = "0.10.64"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "729b745ad4a5575dd06a3e1af1414bd330ee561c01b3899eb584baeaa8def17e"
+checksum = "95a0481286a310808298130d22dd1fef0fa571e05a8f44ec801801e84b216b1f"
 dependencies = [
- "bitflags 1.3.2",
+ "bitflags 2.5.0",
  "cfg-if",
  "foreign-types",
  "libc",
@@ -837,7 +1579,7 @@ checksum = "a948666b637a0f465e8564c73e89d4dde00d72d4d473cc972f390fc3dcee7d9c"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.29",
+ "syn 2.0.53",
 ]
 
 [[package]]
@@ -848,9 +1590,9 @@ checksum = "ff011a302c396a5197692431fc1948019154afc178baf7d8e37367442a4601cf"
 
 [[package]]
 name = "openssl-sys"
-version = "0.9.91"
+version = "0.9.101"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "866b5f16f90776b9bb8dc1e1802ac6f0513de3a7a7465867bfbc563dc737faac"
+checksum = "dda2b0f344e78efc2facf7d195d098df0dd72151b26ab98da807afc26c198dff"
 dependencies = [
  "cc",
  "libc",
@@ -859,25 +1601,132 @@ dependencies = [
 ]
 
 [[package]]
+name = "opentelemetry"
+version = "0.22.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "900d57987be3f2aeb70d385fff9b27fb74c5723cc9a52d904d4f9c807a0667bf"
+dependencies = [
+ "futures-core",
+ "futures-sink",
+ "js-sys",
+ "once_cell",
+ "pin-project-lite",
+ "thiserror",
+ "urlencoding",
+]
+
+[[package]]
 name = "ordered-float"
-version = "2.10.0"
+version = "2.10.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7940cf2ca942593318d07fcf2596cdca60a85c9e7fab408a5e21a4f9dcd40d87"
+checksum = "68f19d67e5a2795c94e73e0bb1cc1a7edeb2e28efd39e2e1c9b7a40c1108b11c"
 dependencies = [
  "num-traits",
 ]
 
 [[package]]
+name = "overload"
+version = "0.1.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "b15813163c1d831bf4a13c3610c05c0d03b39feb07f7e09fa234dac9b15aaf39"
+
+[[package]]
+name = "p256"
+version = "0.13.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "c9863ad85fa8f4460f9c48cb909d38a0d689dba1f6f6988a5e3e0d31071bcd4b"
+dependencies = [
+ "ecdsa",
+ "elliptic-curve",
+ "primeorder",
+ "sha2",
+]
+
+[[package]]
+name = "p384"
+version = "0.13.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "70786f51bcc69f6a4c0360e063a4cac5419ef7c5cd5b3c99ad70f3be5ba79209"
+dependencies = [
+ "ecdsa",
+ "elliptic-curve",
+ "primeorder",
+ "sha2",
+]
+
+[[package]]
+name = "parking_lot"
+version = "0.12.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "3742b2c103b9f06bc9fff0a37ff4912935851bee6d36f3c02bcc755bcfec228f"
+dependencies = [
+ "lock_api",
+ "parking_lot_core",
+]
+
+[[package]]
+name = "parking_lot_core"
+version = "0.9.9"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "4c42a9226546d68acdd9c0a280d17ce19bfe27a46bf68784e4066115788d008e"
+dependencies = [
+ "cfg-if",
+ "libc",
+ "redox_syscall",
+ "smallvec",
+ "windows-targets 0.48.5",
+]
+
+[[package]]
+name = "pem-rfc7468"
+version = "0.7.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "88b39c9bfcfc231068454382784bb460aae594343fb030d46e9f50a645418412"
+dependencies = [
+ "base64ct",
+]
+
+[[package]]
 name = "percent-encoding"
-version = "2.3.0"
+version = "2.3.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "e3148f5046208a5d56bcfc03053e3ca6334e51da8dfb19b6cdc8b306fae3283e"
+
+[[package]]
+name = "petgraph"
+version = "0.6.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9b2a4787296e9989611394c33f193f676704af1686e70b8f8033ab5ba9a35a94"
+checksum = "e1d3afd2628e69da2be385eb6f2fd57c8ac7977ceeff6dc166ff1657b0e386a9"
+dependencies = [
+ "fixedbitset",
+ "indexmap 2.2.5",
+]
+
+[[package]]
+name = "pin-project"
+version = "1.1.5"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "b6bf43b791c5b9e34c3d182969b4abb522f9343702850a2e57f460d00d09b4b3"
+dependencies = [
+ "pin-project-internal",
+]
+
+[[package]]
+name = "pin-project-internal"
+version = "1.1.5"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "2f38a4412a78282e09a2cf38d195ea5420d15ba0602cb375210efbc877243965"
+dependencies = [
+ "proc-macro2",
+ "quote",
+ "syn 2.0.53",
+]
 
 [[package]]
 name = "pin-project-lite"
-version = "0.2.12"
+version = "0.2.13"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "12cc1b0bf1727a77a54b6654e7b5f1af8604923edc8b81885f8ec92f9e3f0a05"
+checksum = "8afb450f006bf6385ca15ef45d71d2288452bc3683ce2e2cacc0d18e4be60b58"
 
 [[package]]
 name = "pin-utils"
@@ -886,10 +1735,49 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "8b870d8c151b6f2fb93e84a13146138f05d02ed11c7e7c54f8826aaaf7c9f184"
 
 [[package]]
+name = "pkcs1"
+version = "0.7.5"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "c8ffb9f10fa047879315e6625af03c164b16962a5368d724ed16323b68ace47f"
+dependencies = [
+ "der",
+ "pkcs8",
+ "spki",
+]
+
+[[package]]
+name = "pkcs8"
+version = "0.10.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "f950b2377845cebe5cf8b5165cb3cc1a5e0fa5cfa3e1f7f55707d8fd82e0a7b7"
+dependencies = [
+ "der",
+ "spki",
+]
+
+[[package]]
 name = "pkg-config"
-version = "0.3.27"
+version = "0.3.30"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "d231b230927b5e4ad203db57bbcbee2802f6bce620b1e4a9024a07d94e2907ec"
+
+[[package]]
+name = "platforms"
+version = "3.3.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "626dec3cac7cc0e1577a2ec3fc496277ec2baa084bebad95bb6fdbfae235f84c"
+
+[[package]]
+name = "portable-atomic"
+version = "1.6.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "7170ef9988bc169ba16dd36a7fa041e5c4cbeb6a35b76d4c03daded371eae7c0"
+
+[[package]]
+name = "powerfmt"
+version = "0.2.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "26072860ba924cbfa98ea39c8c19b4dd6a4a25423dbdf219c1eca91aa0cf6964"
+checksum = "439ee305def115ba05938db6eb1644ff94165c5ab5e9420d1c1bcedbba909391"
 
 [[package]]
 name = "ppv-lite86"
@@ -898,19 +1786,200 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "5b40af805b3121feab8a3c29f04d8ad262fa8e0561883e7653e024ae4479e6de"
 
 [[package]]
+name = "predicates"
+version = "3.1.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "68b87bfd4605926cdfefc1c3b5f8fe560e3feca9d5552cf68c466d3d8236c7e8"
+dependencies = [
+ "anstyle",
+ "predicates-core",
+]
+
+[[package]]
+name = "predicates-core"
+version = "1.0.6"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "b794032607612e7abeb4db69adb4e33590fa6cf1149e95fd7cb00e634b92f174"
+
+[[package]]
+name = "predicates-tree"
+version = "1.0.9"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "368ba315fb8c5052ab692e68a0eefec6ec57b23a36959c14496f0b0df2c0cecf"
+dependencies = [
+ "predicates-core",
+ "termtree",
+]
+
+[[package]]
+name = "prettyplease"
+version = "0.2.16"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "a41cf62165e97c7f814d2221421dbb9afcbcdb0a88068e5ea206e19951c2cbb5"
+dependencies = [
+ "proc-macro2",
+ "syn 2.0.53",
+]
+
+[[package]]
+name = "primeorder"
+version = "0.13.6"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "353e1ca18966c16d9deb1c69278edbc5f194139612772bd9537af60ac231e1e6"
+dependencies = [
+ "elliptic-curve",
+]
+
+[[package]]
 name = "proc-macro2"
-version = "1.0.66"
+version = "1.0.79"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "18fb31db3f9bddb2ea821cde30a9f70117e3f119938b5ee630b7403aa6e2ead9"
+checksum = "e835ff2298f5721608eb1a980ecaee1aef2c132bf95ecc026a11b7bf3c01c02e"
 dependencies = [
  "unicode-ident",
 ]
 
 [[package]]
+name = "prometheus"
+version = "0.13.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "449811d15fbdf5ceb5c1144416066429cf82316e2ec8ce0c1f6f8a02e7bbcf8c"
+dependencies = [
+ "cfg-if",
+ "fnv",
+ "lazy_static",
+ "memchr",
+ "parking_lot",
+ "protobuf",
+ "thiserror",
+]
+
+[[package]]
+name = "prost"
+version = "0.12.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "146c289cda302b98a28d40c8b3b90498d6e526dd24ac2ecea73e4e491685b94a"
+dependencies = [
+ "bytes",
+ "prost-derive",
+]
+
+[[package]]
+name = "prost-build"
+version = "0.12.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "c55e02e35260070b6f716a2423c2ff1c3bb1642ddca6f99e1f26d06268a0e2d2"
+dependencies = [
+ "bytes",
+ "heck 0.4.1",
+ "itertools 0.11.0",
+ "log",
+ "multimap",
+ "once_cell",
+ "petgraph",
+ "prettyplease",
+ "prost",
+ "prost-types",
+ "regex",
+ "syn 2.0.53",
+ "tempfile",
+ "which",
+]
+
+[[package]]
+name = "prost-derive"
+version = "0.12.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "efb6c9a1dd1def8e2124d17e83a20af56f1570d6c2d2bd9e266ccb768df3840e"
+dependencies = [
+ "anyhow",
+ "itertools 0.11.0",
+ "proc-macro2",
+ "quote",
+ "syn 2.0.53",
+]
+
+[[package]]
+name = "prost-types"
+version = "0.12.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "193898f59edcf43c26227dcd4c8427f00d99d61e95dcde58dabd49fa291d470e"
+dependencies = [
+ "prost",
+]
+
+[[package]]
+name = "prost-wkt"
+version = "0.5.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "4d8ef9c3f0f1dab910d2b7e2c24a8e4322e122eba6d7a1921eeebcebbc046c40"
+dependencies = [
+ "chrono",
+ "inventory",
+ "prost",
+ "serde",
+ "serde_derive",
+ "serde_json",
+ "typetag",
+]
+
+[[package]]
+name = "prost-wkt-build"
+version = "0.5.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "5b31cae9a54ca84fee1504740a82eebf2479532905e106f63ca0c3bc8d780321"
+dependencies = [
+ "heck 0.4.1",
+ "prost",
+ "prost-build",
+ "prost-types",
+ "quote",
+]
+
+[[package]]
+name = "prost-wkt-types"
+version = "0.5.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "435be4a8704091b4c5fb1d79799de7f2dbff53af05edf29385237f8cf7ab37ee"
+dependencies = [
+ "chrono",
+ "prost",
+ "prost-build",
+ "prost-types",
+ "prost-wkt",
+ "prost-wkt-build",
+ "regex",
+ "serde",
+ "serde_derive",
+ "serde_json",
+]
+
+[[package]]
+name = "protobuf"
+version = "2.28.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "106dd99e98437432fed6519dedecfade6a06a73bb7b2a1e019fdd2bee5778d94"
+
+[[package]]
+name = "quanta"
+version = "0.12.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "9ca0b7bac0b97248c40bb77288fc52029cf1459c0461ea1b05ee32ccf011de2c"
+dependencies = [
+ "crossbeam-utils",
+ "libc",
+ "once_cell",
+ "raw-cpuid",
+ "wasi",
+ "web-sys",
+ "winapi",
+]
+
+[[package]]
 name = "quote"
-version = "1.0.33"
+version = "1.0.35"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5267fca4496028628a95160fc423a33e8b2e6af8a5302579e322e4b520293cae"
+checksum = "291ec9ab5efd934aaf503a6466c5d5251535d108ee747472c3977cc5acc868ef"
 dependencies = [
  "proc-macro2",
 ]
@@ -946,21 +2015,74 @@ dependencies = [
 ]
 
 [[package]]
+name = "raw-cpuid"
+version = "11.0.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "9d86a7c4638d42c44551f4791a20e687dbb4c3de1f33c43dd71e355cd429def1"
+dependencies = [
+ "bitflags 2.5.0",
+]
+
+[[package]]
 name = "redox_syscall"
-version = "0.3.5"
+version = "0.4.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "567664f262709473930a4bf9e51bf2ebf3348f2e748ccc50dea20646858f8f29"
+checksum = "4722d768eff46b75989dd134e5c353f0d6296e5aaa3132e776cbdb56be7731aa"
 dependencies = [
  "bitflags 1.3.2",
 ]
 
 [[package]]
+name = "regex"
+version = "1.10.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "b62dbe01f0b06f9d8dc7d49e05a0785f153b00b2c227856282f671e0318c9b15"
+dependencies = [
+ "aho-corasick",
+ "memchr",
+ "regex-automata 0.4.6",
+ "regex-syntax 0.8.2",
+]
+
+[[package]]
+name = "regex-automata"
+version = "0.1.10"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "6c230d73fb8d8c1b9c0b3135c5142a8acee3a0558fb8db5cf1cb65f8d7862132"
+dependencies = [
+ "regex-syntax 0.6.29",
+]
+
+[[package]]
+name = "regex-automata"
+version = "0.4.6"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "86b83b8b9847f9bf95ef68afb0b8e6cdb80f498442f5179a29fad448fcc1eaea"
+dependencies = [
+ "aho-corasick",
+ "memchr",
+ "regex-syntax 0.8.2",
+]
+
+[[package]]
+name = "regex-syntax"
+version = "0.6.29"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "f162c6dd7b008981e4d40210aca20b4bd0f9b60ca9271061b07f78537722f2e1"
+
+[[package]]
+name = "regex-syntax"
+version = "0.8.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "c08c74e62047bb2de4ff487b251e4a92e24f48745648451635cec7d591162d9f"
+
+[[package]]
 name = "reqwest"
-version = "0.11.18"
+version = "0.11.26"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "cde824a14b7c14f85caff81225f411faacc04a2013f41670f41443742b1c1c55"
+checksum = "78bf93c4af7a8bb7d879d51cebe797356ff10ae8516ace542b5182d9dcac10b2"
 dependencies = [
- "base64 0.21.2",
+ "base64 0.21.7",
  "bytes",
  "encoding_rs",
  "futures-core",
@@ -978,9 +2100,12 @@ dependencies = [
  "once_cell",
  "percent-encoding",
  "pin-project-lite",
+ "rustls-pemfile 1.0.4",
  "serde",
  "serde_json",
  "serde_urlencoded",
+ "sync_wrapper",
+ "system-configuration",
  "tokio",
  "tokio-native-tls",
  "tower-service",
@@ -992,18 +2117,57 @@ dependencies = [
 ]
 
 [[package]]
+name = "rfc6979"
+version = "0.4.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "f8dd2a808d456c4a54e300a23e9f5a67e122c3024119acbfd73e3bf664491cb2"
+dependencies = [
+ "hmac",
+ "subtle",
+]
+
+[[package]]
 name = "ring"
-version = "0.16.20"
+version = "0.17.8"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3053cf52e236a3ed746dfc745aa9cacf1b791d846bdaf412f60a8d7d6e17c8fc"
+checksum = "c17fa4cb658e3583423e915b9f3acc01cceaee1860e33d59ebae66adc3a2dc0d"
 dependencies = [
  "cc",
+ "cfg-if",
+ "getrandom",
  "libc",
- "once_cell",
- "spin",
+ "spin 0.9.8",
  "untrusted",
- "web-sys",
- "winapi",
+ "windows-sys 0.52.0",
+]
+
+[[package]]
+name = "ringbuf"
+version = "0.3.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "79abed428d1fd2a128201cec72c5f6938e2da607c6f3745f769fabea399d950a"
+dependencies = [
+ "crossbeam-utils",
+]
+
+[[package]]
+name = "rsa"
+version = "0.9.6"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "5d0e5124fcb30e76a7e79bfee683a2746db83784b86289f6251b54b7950a0dfc"
+dependencies = [
+ "const-oid",
+ "digest",
+ "num-bigint-dig",
+ "num-integer",
+ "num-traits",
+ "pkcs1",
+ "pkcs8",
+ "rand_core",
+ "signature",
+ "spki",
+ "subtle",
+ "zeroize",
 ]
 
 [[package]]
@@ -1013,31 +2177,155 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "d626bb9dae77e28219937af045c257c28bfd3f69333c512553507f5f9798cb76"
 
 [[package]]
+name = "rustc_version"
+version = "0.4.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "bfa0f585226d2e68097d4f95d113b15b83a82e819ab25717ec0590d9584ef366"
+dependencies = [
+ "semver",
+]
+
+[[package]]
+name = "rustfsm"
+version = "0.1.0"
+source = "git+https://github.com/temporalio/sdk-core?branch=master#4840a9c570fa3388e190e20f01f61065d0b7e965"
+dependencies = [
+ "rustfsm_procmacro",
+ "rustfsm_trait",
+]
+
+[[package]]
+name = "rustfsm_procmacro"
+version = "0.1.0"
+source = "git+https://github.com/temporalio/sdk-core?branch=master#4840a9c570fa3388e190e20f01f61065d0b7e965"
+dependencies = [
+ "derive_more",
+ "proc-macro2",
+ "quote",
+ "rustfsm_trait",
+ "syn 2.0.53",
+]
+
+[[package]]
+name = "rustfsm_trait"
+version = "0.1.0"
+source = "git+https://github.com/temporalio/sdk-core?branch=master#4840a9c570fa3388e190e20f01f61065d0b7e965"
+
+[[package]]
 name = "rustix"
-version = "0.38.8"
+version = "0.38.31"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "19ed4fa021d81c8392ce04db050a3da9a60299050b7ae1cf482d862b54a7218f"
+checksum = "6ea3e1a662af26cd7a3ba09c0297a31af215563ecf42817c98df621387f4e949"
 dependencies = [
- "bitflags 2.4.0",
+ "bitflags 2.5.0",
  "errno",
  "libc",
  "linux-raw-sys",
- "windows-sys",
+ "windows-sys 0.52.0",
 ]
 
 [[package]]
+name = "rustls"
+version = "0.22.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "e87c9956bd9807afa1f77e0f7594af32566e830e088a5576d27c5b6f30f49d41"
+dependencies = [
+ "log",
+ "ring",
+ "rustls-pki-types",
+ "rustls-webpki",
+ "subtle",
+ "zeroize",
+]
+
+[[package]]
+name = "rustls-native-certs"
+version = "0.7.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "8f1fb85efa936c42c6d5fc28d2629bb51e4b2f4b8a5211e297d599cc5a093792"
+dependencies = [
+ "openssl-probe",
+ "rustls-pemfile 2.1.1",
+ "rustls-pki-types",
+ "schannel",
+ "security-framework",
+]
+
+[[package]]
+name = "rustls-pemfile"
+version = "1.0.4"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "1c74cae0a4cf6ccbbf5f359f08efdf8ee7e1dc532573bf0db71968cb56b1448c"
+dependencies = [
+ "base64 0.21.7",
+]
+
+[[package]]
+name = "rustls-pemfile"
+version = "2.1.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "f48172685e6ff52a556baa527774f61fcaa884f59daf3375c62a3f1cd2549dab"
+dependencies = [
+ "base64 0.21.7",
+ "rustls-pki-types",
+]
+
+[[package]]
+name = "rustls-pki-types"
+version = "1.3.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "5ede67b28608b4c60685c7d54122d4400d90f62b40caee7700e700380a390fa8"
+
+[[package]]
+name = "rustls-webpki"
+version = "0.102.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "faaa0a62740bedb9b2ef5afa303da42764c012f743917351dc9a237ea1663610"
+dependencies = [
+ "ring",
+ "rustls-pki-types",
+ "untrusted",
+]
+
+[[package]]
+name = "rustversion"
+version = "1.0.14"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "7ffc183a10b4478d04cbbbfc96d0873219d962dd5accaff2ffbd4ceb7df837f4"
+
+[[package]]
 name = "ryu"
-version = "1.0.15"
+version = "1.0.17"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1ad4cc8da4ef723ed60bced201181d83791ad433213d8c24efffda1eec85d741"
+checksum = "e86697c916019a8588c99b5fac3cead74ec0b4b819707a682fd4d23fa0ce1ba1"
 
 [[package]]
 name = "schannel"
-version = "0.1.22"
+version = "0.1.23"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0c3733bf4cf7ea0880754e19cb5a462007c4a8c1914bff372ccc95b464f1df88"
+checksum = "fbc91545643bcf3a0bbb6569265615222618bdf33ce4ffbbd13c4bbd4c093534"
 dependencies = [
- "windows-sys",
+ "windows-sys 0.52.0",
+]
+
+[[package]]
+name = "scopeguard"
+version = "1.2.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "94143f37725109f92c262ed2cf5e59bce7498c01bcc1502d7b9afe439a4e9f49"
+
+[[package]]
+name = "sec1"
+version = "0.7.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "d3e97a565f76233a6003f9f5c54be1d9c5bdfa3eccfb189469f11ec4901c47dc"
+dependencies = [
+ "base16ct",
+ "der",
+ "generic-array",
+ "pkcs8",
+ "subtle",
+ "zeroize",
 ]
 
 [[package]]
@@ -1064,10 +2352,16 @@ dependencies = [
 ]
 
 [[package]]
+name = "semver"
+version = "1.0.22"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "92d43fe69e652f3df9bdc2b85b2854a0825b86e4fb76bc44d945137d053639ca"
+
+[[package]]
 name = "serde"
-version = "1.0.183"
+version = "1.0.197"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "32ac8da02677876d532745a130fc9d8e6edfa81a269b107c5b00829b91d8eb3c"
+checksum = "3fb1c873e1b9b056a4dc4c0c198b24c3ffa059243875552b2bd0933b1aee4ce2"
 dependencies = [
  "serde_derive",
 ]
@@ -1084,20 +2378,20 @@ dependencies = [
 
 [[package]]
 name = "serde_derive"
-version = "1.0.183"
+version = "1.0.197"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "aafe972d60b0b9bee71a91b92fee2d4fb3c9d7e8f6b179aa99f27203d99a4816"
+checksum = "7eb0b34b42edc17f6b7cac84a52a1c5f0e1bb2227e997ca9011ea3dd34e8610b"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.29",
+ "syn 2.0.53",
 ]
 
 [[package]]
 name = "serde_json"
-version = "1.0.105"
+version = "1.0.114"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "693151e1ac27563d6dbcec9dee9fbd5da8539b20fa14ad3752b2e6d363ace360"
+checksum = "c5f09b1bd632ef549eaa9f60a1f8de742bdbc698e6cee2095fc84dde5f549ae0"
 dependencies = [
  "itoa",
  "ryu",
@@ -1106,9 +2400,9 @@ dependencies = [
 
 [[package]]
 name = "serde_path_to_error"
-version = "0.1.14"
+version = "0.1.16"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4beec8bce849d58d06238cb50db2e1c417cfeafa4c63f692b15c82b7c80f8335"
+checksum = "af99884400da37c88f5e9146b7f1fd0fbcae8f6eec4e9da38b67d05486f814a6"
 dependencies = [
  "itoa",
  "serde",
@@ -1116,9 +2410,9 @@ dependencies = [
 
 [[package]]
 name = "serde_plain"
-version = "1.0.1"
+version = "1.0.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d6018081315db179d0ce57b1fe4b62a12a0028c9cf9bbef868c9cf477b3c34ae"
+checksum = "9ce1fc6db65a611022b23a0dec6975d63fb80a302cb3388835ff02c097258d50"
 dependencies = [
  "serde",
 ]
@@ -1137,31 +2431,39 @@ dependencies = [
 
 [[package]]
 name = "serde_with"
-version = "1.14.0"
+version = "3.7.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "678b5a069e50bf00ecd22d0cd8ddf7c236f68581b03db652061ed5eb13a312ff"
+checksum = "ee80b0e361bbf88fd2f6e242ccd19cfda072cb0faa6ae694ecee08199938569a"
 dependencies = [
+ "base64 0.21.7",
+ "chrono",
+ "hex",
+ "indexmap 1.9.3",
+ "indexmap 2.2.5",
  "serde",
+ "serde_derive",
+ "serde_json",
  "serde_with_macros",
+ "time",
 ]
 
 [[package]]
 name = "serde_with_macros"
-version = "1.5.2"
+version = "3.7.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e182d6ec6f05393cc0e5ed1bf81ad6db3a8feedf8ee515ecdd369809bcce8082"
+checksum = "6561dc161a9224638a31d876ccdfefbc1df91d3f3a8342eddb35f055d48c7655"
 dependencies = [
  "darling",
  "proc-macro2",
  "quote",
- "syn 1.0.109",
+ "syn 2.0.53",
 ]
 
 [[package]]
 name = "sha2"
-version = "0.10.7"
+version = "0.10.8"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "479fb9d862239e610720565ca91403019f2f00410f1864c5aa7479b950a76ed8"
+checksum = "793db75ad2bcafc3ffa7c68b215fee268f537982cd901d132f89c6343f3a3dc8"
 dependencies = [
  "cfg-if",
  "cpufeatures",
@@ -1169,32 +2471,85 @@ dependencies = [
 ]
 
 [[package]]
+name = "sharded-slab"
+version = "0.1.7"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "f40ca3c46823713e0d4209592e8d6e826aa57e928f09752619fc696c499637f6"
+dependencies = [
+ "lazy_static",
+]
+
+[[package]]
+name = "signal-hook-registry"
+version = "1.4.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "d8229b473baa5980ac72ef434c4415e70c4b5e71b423043adb4ba059f89c99a1"
+dependencies = [
+ "libc",
+]
+
+[[package]]
+name = "signature"
+version = "2.2.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "77549399552de45a898a580c1b41d445bf730df867cc44e6c0233bbc4b8329de"
+dependencies = [
+ "digest",
+ "rand_core",
+]
+
+[[package]]
+name = "siphasher"
+version = "1.0.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "56199f7ddabf13fe5074ce809e7d3f42b42ae711800501b5b16ea82ad029c39d"
+
+[[package]]
 name = "slab"
-version = "0.4.8"
+version = "0.4.9"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6528351c9bc8ab22353f9d776db39a20288e8d6c37ef8cfe3317cf875eecfc2d"
+checksum = "8f92a496fb766b417c996b9c5e57daf2f7ad3b0bebe1ccfca4856390e3d3bb67"
 dependencies = [
  "autocfg",
 ]
 
 [[package]]
-name = "socket2"
-version = "0.4.9"
+name = "slotmap"
+version = "1.0.7"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "64a4a911eed85daf18834cfaa86a79b7d266ff93ff5ba14005426219480ed662"
+checksum = "dbff4acf519f630b3a3ddcfaea6c06b42174d9a44bc70c620e9ed1649d58b82a"
 dependencies = [
- "libc",
- "winapi",
+ "version_check",
+]
+
+[[package]]
+name = "smallvec"
+version = "1.13.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "e6ecd384b10a64542d77071bd64bd7b231f4ed5940fba55e98c3de13824cf3d7"
+
+[[package]]
+name = "smeeclient"
+version = "0.1.0"
+dependencies = [
+ "cbindgen",
+ "serde",
+ "temporal-client",
+ "temporal-sdk",
+ "temporal-sdk-core-protos",
+ "tokio",
+ "url",
+ "uuid",
 ]
 
 [[package]]
 name = "socket2"
-version = "0.5.3"
+version = "0.5.6"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2538b18701741680e0322a2302176d3253a35388e2e62f172f64f4f16605f877"
+checksum = "05ffd9c0a93b7543e062e759284fcf5f5e3b098501104bfbdde4d404db792871"
 dependencies = [
  "libc",
- "windows-sys",
+ "windows-sys 0.52.0",
 ]
 
 [[package]]
@@ -1204,6 +2559,31 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "6e63cff320ae2c57904679ba7cb63280a3dc4613885beafb148ee7bf9aa9042d"
 
 [[package]]
+name = "spin"
+version = "0.9.8"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "6980e8d7511241f8acf4aebddbb1ff938df5eebe98691418c4468d0b72a96a67"
+
+[[package]]
+name = "spinning_top"
+version = "0.3.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "d96d2d1d716fb500937168cc09353ffdc7a012be8475ac7308e1bdf0e3923300"
+dependencies = [
+ "lock_api",
+]
+
+[[package]]
+name = "spki"
+version = "0.7.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "d91ed6c858b01f942cd56b37a94b3e0a1798290327d1236e4d9cf4eaca44d29d"
+dependencies = [
+ "base64ct",
+ "der",
+]
+
+[[package]]
 name = "strsim"
 version = "0.8.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -1234,9 +2614,9 @@ dependencies = [
 
 [[package]]
 name = "syn"
-version = "2.0.29"
+version = "2.0.53"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c324c494eba9d92503e6f1ef2e6df781e78f6a7705a0202d9801b198807d518a"
+checksum = "7383cd0e49fff4b6b90ca5670bfd3e9d6a733b3f90c686605aa7eec8c4996032"
 dependencies = [
  "proc-macro2",
  "quote",
@@ -1244,19 +2624,197 @@ dependencies = [
 ]
 
 [[package]]
+name = "sync_wrapper"
+version = "0.1.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "2047c6ded9c721764247e62cd3b03c09ffc529b2ba5b10ec482ae507a4a70160"
+
+[[package]]
+name = "system-configuration"
+version = "0.5.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "ba3a3adc5c275d719af8cb4272ea1c4a6d668a777f37e115f6d11ddbc1c8e0e7"
+dependencies = [
+ "bitflags 1.3.2",
+ "core-foundation",
+ "system-configuration-sys",
+]
+
+[[package]]
+name = "system-configuration-sys"
+version = "0.5.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "a75fb188eb626b924683e3b95e3a48e63551fcfb51949de2f06a9d91dbee93c9"
+dependencies = [
+ "core-foundation-sys",
+ "libc",
+]
+
+[[package]]
 name = "tempfile"
-version = "3.7.1"
+version = "3.10.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "dc02fddf48964c42031a0b3fe0428320ecf3a73c401040fc0096f97794310651"
+checksum = "85b77fafb263dd9d05cbeac119526425676db3784113aa9295c88498cbf8bff1"
 dependencies = [
  "cfg-if",
  "fastrand",
- "redox_syscall",
  "rustix",
- "windows-sys",
+ "windows-sys 0.52.0",
+]
+
+[[package]]
+name = "temporal-client"
+version = "0.1.0"
+source = "git+https://github.com/temporalio/sdk-core?branch=master#4840a9c570fa3388e190e20f01f61065d0b7e965"
+dependencies = [
+ "anyhow",
+ "async-trait",
+ "backoff",
+ "derive_builder",
+ "derive_more",
+ "futures",
+ "futures-retry",
+ "http",
+ "once_cell",
+ "opentelemetry",
+ "parking_lot",
+ "prost-types",
+ "slotmap",
+ "temporal-sdk-core-api",
+ "temporal-sdk-core-protos",
+ "thiserror",
+ "tokio",
+ "tonic",
+ "tower",
+ "tracing",
+ "url",
+ "uuid",
+]
+
+[[package]]
+name = "temporal-sdk"
+version = "0.1.0-alpha.1"
+source = "git+https://github.com/temporalio/sdk-core?branch=master#4840a9c570fa3388e190e20f01f61065d0b7e965"
+dependencies = [
+ "anyhow",
+ "async-trait",
+ "base64 0.21.7",
+ "crossbeam-channel",
+ "derive_more",
+ "futures",
+ "once_cell",
+ "parking_lot",
+ "prost-wkt-types",
+ "serde",
+ "sha2",
+ "temporal-client",
+ "temporal-sdk-core",
+ "temporal-sdk-core-api",
+ "temporal-sdk-core-protos",
+ "thiserror",
+ "tokio",
+ "tokio-stream",
+ "tokio-util",
+ "tonic",
+ "tracing",
+]
+
+[[package]]
+name = "temporal-sdk-core"
+version = "0.1.0"
+source = "git+https://github.com/temporalio/sdk-core?branch=master#4840a9c570fa3388e190e20f01f61065d0b7e965"
+dependencies = [
+ "anyhow",
+ "async-trait",
+ "base64 0.21.7",
+ "crossbeam-channel",
+ "crossbeam-queue",
+ "dashmap",
+ "derive_builder",
+ "derive_more",
+ "enum-iterator",
+ "enum_dispatch",
+ "futures",
+ "futures-util",
+ "governor",
+ "itertools 0.12.1",
+ "log",
+ "lru",
+ "mockall",
+ "once_cell",
+ "parking_lot",
+ "pin-project",
+ "prometheus",
+ "prost",
+ "prost-wkt-types",
+ "rand",
+ "ringbuf",
+ "rustfsm",
+ "serde",
+ "serde_json",
+ "siphasher",
+ "slotmap",
+ "temporal-client",
+ "temporal-sdk-core-api",
+ "temporal-sdk-core-protos",
+ "thiserror",
+ "tokio",
+ "tokio-stream",
+ "tokio-util",
+ "tonic",
+ "tonic-build",
+ "tracing",
+ "tracing-subscriber",
+ "url",
+ "uuid",
+]
+
+[[package]]
+name = "temporal-sdk-core-api"
+version = "0.1.0"
+source = "git+https://github.com/temporalio/sdk-core?branch=master#4840a9c570fa3388e190e20f01f61065d0b7e965"
+dependencies = [
+ "async-trait",
+ "derive_builder",
+ "derive_more",
+ "opentelemetry",
+ "prost-types",
+ "serde_json",
+ "temporal-sdk-core-protos",
+ "thiserror",
+ "tonic",
+ "tracing-core",
+ "url",
+]
+
+[[package]]
+name = "temporal-sdk-core-protos"
+version = "0.1.0"
+source = "git+https://github.com/temporalio/sdk-core?branch=master#4840a9c570fa3388e190e20f01f61065d0b7e965"
+dependencies = [
+ "anyhow",
+ "base64 0.21.7",
+ "derive_more",
+ "prost",
+ "prost-wkt",
+ "prost-wkt-build",
+ "prost-wkt-types",
+ "rand",
+ "serde",
+ "serde_json",
+ "thiserror",
+ "tonic",
+ "tonic-build",
+ "uuid",
 ]
 
 [[package]]
+name = "termtree"
+version = "0.4.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "3369f5ac52d5eb6ab48c6b4ffdc8efbcad6b89c765749064ba298f2c68a16a76"
+
+[[package]]
 name = "textwrap"
 version = "0.11.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -1267,32 +2825,44 @@ dependencies = [
 
 [[package]]
 name = "thiserror"
-version = "1.0.47"
+version = "1.0.58"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "97a802ec30afc17eee47b2855fc72e0c4cd62be9b4efe6591edde0ec5bd68d8f"
+checksum = "03468839009160513471e86a034bb2c5c0e4baae3b43f79ffc55c4a5427b3297"
 dependencies = [
  "thiserror-impl",
 ]
 
 [[package]]
 name = "thiserror-impl"
-version = "1.0.47"
+version = "1.0.58"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6bb623b56e39ab7dcd4b1b98bb6c8f8d907ed255b18de254088016b27a8ee19b"
+checksum = "c61f3ba182994efc43764a46c018c347bc492c79f024e705f46567b418f6d4f7"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.29",
+ "syn 2.0.53",
+]
+
+[[package]]
+name = "thread_local"
+version = "1.1.8"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "8b9ef9bad013ada3808854ceac7b46812a6465ba368859a37e2100283d2d719c"
+dependencies = [
+ "cfg-if",
+ "once_cell",
 ]
 
 [[package]]
 name = "time"
-version = "0.3.25"
+version = "0.3.34"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b0fdd63d58b18d663fbdf70e049f00a22c8e42be082203be7f26589213cd75ea"
+checksum = "c8248b6521bb14bc45b4067159b9b6ad792e2d6d754d6c41fb50e29fefe38749"
 dependencies = [
  "deranged",
  "itoa",
+ "num-conv",
+ "powerfmt",
  "serde",
  "time-core",
  "time-macros",
@@ -1300,16 +2870,17 @@ dependencies = [
 
 [[package]]
 name = "time-core"
-version = "0.1.1"
+version = "0.1.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7300fbefb4dadc1af235a9cef3737cea692a9d97e1b9cbcd4ebdae6f8868e6fb"
+checksum = "ef927ca75afb808a4d64dd374f00a2adf8d0fcff8e7b184af886c3c87ec4a3f3"
 
 [[package]]
 name = "time-macros"
-version = "0.2.11"
+version = "0.2.17"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "eb71511c991639bb078fd5bf97757e03914361c48100d52878b8e52b46fb92cd"
+checksum = "7ba3a3ef41e6672a2f0f001392bb5dcd3ff0a9992d618ca761a11c3121547774"
 dependencies = [
+ "num-conv",
  "time-core",
 ]
 
@@ -1330,18 +2901,42 @@ checksum = "1f3ccbac311fea05f86f61904b462b55fb3df8837a366dfc601a0161d0532f20"
 
 [[package]]
 name = "tokio"
-version = "1.32.0"
+version = "1.36.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "17ed6077ed6cd6c74735e21f37eb16dc3935f96878b1fe961074089cc80893f9"
+checksum = "61285f6515fa018fb2d1e46eb21223fff441ee8db5d0f1435e8ab4f5cdb80931"
 dependencies = [
  "backtrace",
  "bytes",
  "libc",
  "mio",
  "num_cpus",
+ "parking_lot",
+ "pin-project-lite",
+ "signal-hook-registry",
+ "socket2",
+ "tokio-macros",
+ "windows-sys 0.48.0",
+]
+
+[[package]]
+name = "tokio-io-timeout"
+version = "1.2.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "30b74022ada614a1b4834de765f9bb43877f910cc8ce4be40e89042c9223a8bf"
+dependencies = [
  "pin-project-lite",
- "socket2 0.5.3",
- "windows-sys",
+ "tokio",
+]
+
+[[package]]
+name = "tokio-macros"
+version = "2.2.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "5b8a1e28f2deaa14e508979454cb3a223b10b938b45af148bc0986de36f1923b"
+dependencies = [
+ "proc-macro2",
+ "quote",
+ "syn 2.0.53",
 ]
 
 [[package]]
@@ -1355,10 +2950,32 @@ dependencies = [
 ]
 
 [[package]]
+name = "tokio-rustls"
+version = "0.25.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "775e0c0f0adb3a2f22a00c4745d728b479985fc15ee7ca6a2608388c5569860f"
+dependencies = [
+ "rustls",
+ "rustls-pki-types",
+ "tokio",
+]
+
+[[package]]
+name = "tokio-stream"
+version = "0.1.15"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "267ac89e0bec6e691e5813911606935d77c476ff49024f98abcea3e7b15e37af"
+dependencies = [
+ "futures-core",
+ "pin-project-lite",
+ "tokio",
+]
+
+[[package]]
 name = "tokio-util"
-version = "0.7.8"
+version = "0.7.10"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "806fe8c2c87eccc8b3267cbae29ed3ab2d0bd37fca70ab622e46aaa9375ddb7d"
+checksum = "5419f34732d9eb6ee4c3578b7989078579b7f039cbbb9ca2c4da015749371e15"
 dependencies = [
  "bytes",
  "futures-core",
@@ -1378,6 +2995,76 @@ dependencies = [
 ]
 
 [[package]]
+name = "tonic"
+version = "0.11.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "76c4eb7a4e9ef9d4763600161f12f5070b92a578e1b634db88a6887844c91a13"
+dependencies = [
+ "async-stream",
+ "async-trait",
+ "axum",
+ "base64 0.21.7",
+ "bytes",
+ "h2",
+ "http",
+ "http-body",
+ "hyper",
+ "hyper-timeout",
+ "percent-encoding",
+ "pin-project",
+ "prost",
+ "rustls-native-certs",
+ "rustls-pemfile 2.1.1",
+ "rustls-pki-types",
+ "tokio",
+ "tokio-rustls",
+ "tokio-stream",
+ "tower",
+ "tower-layer",
+ "tower-service",
+ "tracing",
+]
+
+[[package]]
+name = "tonic-build"
+version = "0.11.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "be4ef6dd70a610078cb4e338a0f79d06bc759ff1b22d2120c2ff02ae264ba9c2"
+dependencies = [
+ "prettyplease",
+ "proc-macro2",
+ "prost-build",
+ "quote",
+ "syn 2.0.53",
+]
+
+[[package]]
+name = "tower"
+version = "0.4.13"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "b8fa9be0de6cf49e536ce1851f987bd21a43b771b09473c3549a6c853db37c1c"
+dependencies = [
+ "futures-core",
+ "futures-util",
+ "indexmap 1.9.3",
+ "pin-project",
+ "pin-project-lite",
+ "rand",
+ "slab",
+ "tokio",
+ "tokio-util",
+ "tower-layer",
+ "tower-service",
+ "tracing",
+]
+
+[[package]]
+name = "tower-layer"
+version = "0.3.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "c20c8dbed6283a09604c3e69b4b7eeb54e298b8a600d4d5ecb5ad39de609f1d0"
+
+[[package]]
 name = "tower-service"
 version = "0.3.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -1385,80 +3072,147 @@ checksum = "b6bc1c9ce2b5135ac7f93c72918fc37feb872bdc6a5533a8b85eb4b86bfdae52"
 
 [[package]]
 name = "tracing"
-version = "0.1.37"
+version = "0.1.40"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8ce8c33a8d48bd45d624a6e523445fd21ec13d3653cd51f681abf67418f54eb8"
+checksum = "c3523ab5a71916ccf420eebdf5521fcef02141234bbc0b8a49f2fdc4544364ef"
 dependencies = [
- "cfg-if",
+ "log",
  "pin-project-lite",
+ "tracing-attributes",
  "tracing-core",
 ]
 
 [[package]]
+name = "tracing-attributes"
+version = "0.1.27"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "34704c8d6ebcbc939824180af020566b01a7c01f80641264eba0999f6c2b6be7"
+dependencies = [
+ "proc-macro2",
+ "quote",
+ "syn 2.0.53",
+]
+
+[[package]]
 name = "tracing-core"
-version = "0.1.31"
+version = "0.1.32"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0955b8137a1df6f1a2e9a37d8a6656291ff0297c1a97c24e0d8425fe2312f79a"
+checksum = "c06d3da6113f116aaee68e4d601191614c9053067f9ab7f6edbcb161237daa54"
 dependencies = [
  "once_cell",
+ "valuable",
+]
+
+[[package]]
+name = "tracing-log"
+version = "0.2.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "ee855f1f400bd0e5c02d150ae5de3840039a3f54b025156404e34c23c03f47c3"
+dependencies = [
+ "log",
+ "once_cell",
+ "tracing-core",
+]
+
+[[package]]
+name = "tracing-subscriber"
+version = "0.3.18"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "ad0f048c97dbd9faa9b7df56362b8ebcaa52adb06b498c050d2f4e32f90a7a8b"
+dependencies = [
+ "matchers",
+ "nu-ansi-term",
+ "once_cell",
+ "parking_lot",
+ "regex",
+ "sharded-slab",
+ "smallvec",
+ "thread_local",
+ "tracing",
+ "tracing-core",
+ "tracing-log",
 ]
 
 [[package]]
 name = "try-lock"
-version = "0.2.4"
+version = "0.2.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3528ecfd12c466c6f163363caf2d02a71161dd5e1cc6ae7b34207ea2d42d81ed"
+checksum = "e421abadd41a4225275504ea4d6566923418b7f05506fbc9c0fe86ba7396114b"
 
 [[package]]
 name = "typenum"
-version = "1.16.0"
+version = "1.17.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "42ff0bf0c66b8238c6f3b578df37d0b7848e55df8577b3f74f92a69acceeb825"
+
+[[package]]
+name = "typetag"
+version = "0.2.16"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "661d18414ec032a49ece2d56eee03636e43c4e8d577047ab334c0ba892e29aaf"
+dependencies = [
+ "erased-serde",
+ "inventory",
+ "once_cell",
+ "serde",
+ "typetag-impl",
+]
+
+[[package]]
+name = "typetag-impl"
+version = "0.2.16"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "497961ef93d974e23eb6f433eb5fe1b7930b659f06d12dec6fc44a8f554c0bba"
+checksum = "ac73887f47b9312552aa90ef477927ff014d63d1920ca8037c6c1951eab64bb1"
+dependencies = [
+ "proc-macro2",
+ "quote",
+ "syn 2.0.53",
+]
 
 [[package]]
 name = "unicode-bidi"
-version = "0.3.13"
+version = "0.3.15"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "92888ba5573ff080736b3648696b70cafad7d250551175acbaa4e0385b3e1460"
+checksum = "08f95100a766bf4f8f28f90d77e0a5461bbdb219042e7679bebe79004fed8d75"
 
 [[package]]
 name = "unicode-ident"
-version = "1.0.11"
+version = "1.0.12"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "301abaae475aa91687eb82514b328ab47a211a533026cb25fc3e519b86adfc3c"
+checksum = "3354b9ac3fae1ff6755cb6db53683adb661634f67557942dea4facebec0fee4b"
 
 [[package]]
 name = "unicode-normalization"
-version = "0.1.22"
+version = "0.1.23"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5c5713f0fc4b5db668a2ac63cdb7bb4469d8c9fed047b1d0292cc7b0ce2ba921"
+checksum = "a56d1686db2308d901306f92a263857ef59ea39678a5458e7cb17f01415101f5"
 dependencies = [
  "tinyvec",
 ]
 
 [[package]]
 name = "unicode-segmentation"
-version = "1.10.1"
+version = "1.11.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1dd624098567895118886609431a7c3b8f516e41d30e0643f03d94592a147e36"
+checksum = "d4c87d22b6e3f4a18d4d40ef354e97c90fcb14dd91d7dc0aa9d8a1172ebf7202"
 
 [[package]]
 name = "unicode-width"
-version = "0.1.10"
+version = "0.1.11"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c0edd1e5b14653f783770bce4a4dabb4a5108a5370a5f5d8cfe8710c361f6c8b"
+checksum = "e51733f11c9c4f72aa0c160008246859e340b00807569a0da0e7a1079b27ba85"
 
 [[package]]
 name = "untrusted"
-version = "0.7.1"
+version = "0.9.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a156c684c91ea7d62626509bce3cb4e1d9ed5c4d978f7b4352658f96a4c26b4a"
+checksum = "8ecb6da28b8a351d773b68d5825ac39017e680750f980f3a1a85cd8dd28a47c1"
 
 [[package]]
 name = "url"
-version = "2.4.0"
+version = "2.5.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "50bff7831e19200a85b17131d085c25d7811bc4e186efdaf54bbd132994a88cb"
+checksum = "31e6302e3bb753d46e83516cae55ae196fc0c309407cf11ab35cc51a4c2a4633"
 dependencies = [
  "form_urlencoded",
  "idna",
@@ -1467,6 +3221,27 @@ dependencies = [
 ]
 
 [[package]]
+name = "urlencoding"
+version = "2.1.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "daf8dba3b7eb870caf1ddeed7bc9d2a049f3cfdfae7cb521b087cc33ae4c49da"
+
+[[package]]
+name = "uuid"
+version = "1.8.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "a183cf7feeba97b4dd1c0d46788634f6221d87fa961b305bed08c851829efcc0"
+dependencies = [
+ "getrandom",
+]
+
+[[package]]
+name = "valuable"
+version = "0.1.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "830b7e5d4d90034032940e4ace0d9a9a057e7a45cd94e6c007832e39edb82f6d"
+
+[[package]]
 name = "vcpkg"
 version = "0.2.15"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -1501,9 +3276,9 @@ checksum = "9c8d87e72b64a3b4db28d11ce29237c246188f4f51057d65a7eab63b7987e423"
 
 [[package]]
 name = "wasm-bindgen"
-version = "0.2.87"
+version = "0.2.92"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7706a72ab36d8cb1f80ffbf0e071533974a60d0a308d01a5d0375bf60499a342"
+checksum = "4be2531df63900aeb2bca0daaaddec08491ee64ceecbee5076636a3b026795a8"
 dependencies = [
  "cfg-if",
  "wasm-bindgen-macro",
@@ -1511,24 +3286,24 @@ dependencies = [
 
 [[package]]
 name = "wasm-bindgen-backend"
-version = "0.2.87"
+version = "0.2.92"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5ef2b6d3c510e9625e5fe6f509ab07d66a760f0885d858736483c32ed7809abd"
+checksum = "614d787b966d3989fa7bb98a654e369c762374fd3213d212cfc0251257e747da"
 dependencies = [
  "bumpalo",
  "log",
  "once_cell",
  "proc-macro2",
  "quote",
- "syn 2.0.29",
+ "syn 2.0.53",
  "wasm-bindgen-shared",
 ]
 
 [[package]]
 name = "wasm-bindgen-futures"
-version = "0.4.37"
+version = "0.4.42"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c02dbc21516f9f1f04f187958890d7e6026df8d16540b7ad9492bc34a67cea03"
+checksum = "76bc14366121efc8dbb487ab05bcc9d346b3b5ec0eaa76e46594cabbe51762c0"
 dependencies = [
  "cfg-if",
  "js-sys",
@@ -1538,9 +3313,9 @@ dependencies = [
 
 [[package]]
 name = "wasm-bindgen-macro"
-version = "0.2.87"
+version = "0.2.92"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "dee495e55982a3bd48105a7b947fd2a9b4a8ae3010041b9e0faab3f9cd028f1d"
+checksum = "a1f8823de937b71b9460c0c34e25f3da88250760bec0ebac694b49997550d726"
 dependencies = [
  "quote",
  "wasm-bindgen-macro-support",
@@ -1548,34 +3323,46 @@ dependencies = [
 
 [[package]]
 name = "wasm-bindgen-macro-support"
-version = "0.2.87"
+version = "0.2.92"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "54681b18a46765f095758388f2d0cf16eb8d4169b639ab575a8f5693af210c7b"
+checksum = "e94f17b526d0a461a191c78ea52bbce64071ed5c04c9ffe424dcb38f74171bb7"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.29",
+ "syn 2.0.53",
  "wasm-bindgen-backend",
  "wasm-bindgen-shared",
 ]
 
 [[package]]
 name = "wasm-bindgen-shared"
-version = "0.2.87"
+version = "0.2.92"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ca6ad05a4870b2bf5fe995117d3728437bd27d7cd5f06f13c17443ef369775a1"
+checksum = "af190c94f2773fdb3729c55b007a722abb5384da03bc0986df4c289bf5567e96"
 
 [[package]]
 name = "web-sys"
-version = "0.3.64"
+version = "0.3.69"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9b85cbef8c220a6abc02aefd892dfc0fc23afb1c6a426316ec33253a3877249b"
+checksum = "77afa9a11836342370f4817622a2f0f418b134426d91a82dfb48f532d2ec13ef"
 dependencies = [
  "js-sys",
  "wasm-bindgen",
 ]
 
 [[package]]
+name = "which"
+version = "4.4.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "87ba24419a2078cd2b0f2ede2691b6c66d8e47836da3b6db8265ebad47afbfc7"
+dependencies = [
+ "either",
+ "home",
+ "once_cell",
+ "rustix",
+]
+
+[[package]]
 name = "winapi"
 version = "0.3.9"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -1598,12 +3385,12 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f"
 
 [[package]]
-name = "windows"
-version = "0.48.0"
+name = "windows-core"
+version = "0.52.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e686886bc078bc1b0b600cac0147aadb815089b6e4da64016cbd754b6342700f"
+checksum = "33ab640c8d7e35bf8ba19b884ba838ceb4fba93a4e8c65a9059d08afcfc683d9"
 dependencies = [
- "windows-targets",
+ "windows-targets 0.52.4",
 ]
 
 [[package]]
@@ -1612,7 +3399,16 @@ version = "0.48.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "677d2418bec65e3338edb076e806bc1ec15693c5d0104683f2efe857f61056a9"
 dependencies = [
- "windows-targets",
+ "windows-targets 0.48.5",
+]
+
+[[package]]
+name = "windows-sys"
+version = "0.52.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "282be5f36a8ce781fad8c8ae18fa3f9beff57ec1b52cb3de0789201425d9a33d"
+dependencies = [
+ "windows-targets 0.52.4",
 ]
 
 [[package]]
@@ -1621,13 +3417,28 @@ version = "0.48.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "9a2fa6e2155d7247be68c096456083145c183cbbbc2764150dda45a87197940c"
 dependencies = [
- "windows_aarch64_gnullvm",
- "windows_aarch64_msvc",
- "windows_i686_gnu",
- "windows_i686_msvc",
- "windows_x86_64_gnu",
- "windows_x86_64_gnullvm",
- "windows_x86_64_msvc",
+ "windows_aarch64_gnullvm 0.48.5",
+ "windows_aarch64_msvc 0.48.5",
+ "windows_i686_gnu 0.48.5",
+ "windows_i686_msvc 0.48.5",
+ "windows_x86_64_gnu 0.48.5",
+ "windows_x86_64_gnullvm 0.48.5",
+ "windows_x86_64_msvc 0.48.5",
+]
+
+[[package]]
+name = "windows-targets"
+version = "0.52.4"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "7dd37b7e5ab9018759f893a1952c9420d060016fc19a472b4bb20d1bdd694d1b"
+dependencies = [
+ "windows_aarch64_gnullvm 0.52.4",
+ "windows_aarch64_msvc 0.52.4",
+ "windows_i686_gnu 0.52.4",
+ "windows_i686_msvc 0.52.4",
+ "windows_x86_64_gnu 0.52.4",
+ "windows_x86_64_gnullvm 0.52.4",
+ "windows_x86_64_msvc 0.52.4",
 ]
 
 [[package]]
@@ -1637,55 +3448,118 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "2b38e32f0abccf9987a4e3079dfb67dcd799fb61361e53e2882c3cbaf0d905d8"
 
 [[package]]
+name = "windows_aarch64_gnullvm"
+version = "0.52.4"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "bcf46cf4c365c6f2d1cc93ce535f2c8b244591df96ceee75d8e83deb70a9cac9"
+
+[[package]]
 name = "windows_aarch64_msvc"
 version = "0.48.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "dc35310971f3b2dbbf3f0690a219f40e2d9afcf64f9ab7cc1be722937c26b4bc"
 
 [[package]]
+name = "windows_aarch64_msvc"
+version = "0.52.4"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "da9f259dd3bcf6990b55bffd094c4f7235817ba4ceebde8e6d11cd0c5633b675"
+
+[[package]]
 name = "windows_i686_gnu"
 version = "0.48.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "a75915e7def60c94dcef72200b9a8e58e5091744960da64ec734a6c6e9b3743e"
 
 [[package]]
+name = "windows_i686_gnu"
+version = "0.52.4"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "b474d8268f99e0995f25b9f095bc7434632601028cf86590aea5c8a5cb7801d3"
+
+[[package]]
 name = "windows_i686_msvc"
 version = "0.48.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "8f55c233f70c4b27f66c523580f78f1004e8b5a8b659e05a4eb49d4166cca406"
 
 [[package]]
+name = "windows_i686_msvc"
+version = "0.52.4"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "1515e9a29e5bed743cb4415a9ecf5dfca648ce85ee42e15873c3cd8610ff8e02"
+
+[[package]]
 name = "windows_x86_64_gnu"
 version = "0.48.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "53d40abd2583d23e4718fddf1ebec84dbff8381c07cae67ff7768bbf19c6718e"
 
 [[package]]
+name = "windows_x86_64_gnu"
+version = "0.52.4"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "5eee091590e89cc02ad514ffe3ead9eb6b660aedca2183455434b93546371a03"
+
+[[package]]
 name = "windows_x86_64_gnullvm"
 version = "0.48.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "0b7b52767868a23d5bab768e390dc5f5c55825b6d30b86c844ff2dc7414044cc"
 
 [[package]]
+name = "windows_x86_64_gnullvm"
+version = "0.52.4"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "77ca79f2451b49fa9e2af39f0747fe999fcda4f5e241b2898624dca97a1f2177"
+
+[[package]]
 name = "windows_x86_64_msvc"
 version = "0.48.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "ed94fce61571a4006852b7389a063ab983c02eb1bb37b47f8272ce92d06d9538"
 
 [[package]]
+name = "windows_x86_64_msvc"
+version = "0.52.4"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "32b752e52a2da0ddfbdbcc6fceadfeede4c939ed16d13e648833a61dfb611ed8"
+
+[[package]]
 name = "winreg"
-version = "0.10.1"
+version = "0.50.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "80d0f4e272c85def139476380b12f9ac60926689dd2e01d4923222f40580869d"
+checksum = "524e57b2c537c0f9b1e69f1965311ec12182b4122e45035b1508cd24d2adadb1"
 dependencies = [
- "winapi",
+ "cfg-if",
+ "windows-sys 0.48.0",
+]
+
+[[package]]
+name = "zerocopy"
+version = "0.7.32"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "74d4d3961e53fa4c9a25a8637fc2bfaf2595b3d3ae34875568a5cf64787716be"
+dependencies = [
+ "zerocopy-derive",
+]
+
+[[package]]
+name = "zerocopy-derive"
+version = "0.7.32"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "9ce1b18ccd8e73a9321186f97e46f9f04b778851177567b1975109d26a08d2a6"
+dependencies = [
+ "proc-macro2",
+ "quote",
+ "syn 2.0.53",
 ]
 
 [[package]]
 name = "zeroidc"
 version = "0.1.0"
 dependencies = [
- "base64 0.21.2",
+ "base64 0.21.7",
  "bytes",
  "cbindgen",
  "jwt",
@@ -1697,3 +3571,9 @@ dependencies = [
  "tokio",
  "url",
 ]
+
+[[package]]
+name = "zeroize"
+version = "1.7.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "525b4ec142c6b68a2d10f01f7bbf6755599ca3f81ea53b8431b7dd348f5fdb2d"
diff --git a/pkgs/tools/networking/zerotierone/default.nix b/pkgs/tools/networking/zerotierone/default.nix
index 1bf10ce2c408..f9415055a537 100644
--- a/pkgs/tools/networking/zerotierone/default.nix
+++ b/pkgs/tools/networking/zerotierone/default.nix
@@ -14,13 +14,13 @@
 
 let
   pname = "zerotierone";
-  version = "1.12.2";
+  version = "1.14.0";
 
   src = fetchFromGitHub {
     owner = "zerotier";
     repo = "ZeroTierOne";
     rev = version;
-    sha256 = "sha256-p0zrYgbHTLefj5GTrMnYLytCXZ/nRuqTL+6dEeC+uVw=";
+    sha256 = "sha256-YWcqALUB3ZEukL4er2FKcyNdEbuaf//QU5hRbKAfxDA=";
   };
 
 in stdenv.mkDerivation {
@@ -30,13 +30,14 @@ in stdenv.mkDerivation {
     lockFile = ./Cargo.lock;
     outputHashes = {
       "jwt-0.16.0" = "sha256-P5aJnNlcLe9sBtXZzfqHdRvxNfm6DPBcfcKOVeLZxcM=";
+      "rustfsm-0.1.0" = "sha256-q7J9QgN67iuoNhQC8SDVzUkjCNRXGiNCkE8OsQc5+oI=";
     };
   };
   postPatch = "cp ${./Cargo.lock} Cargo.lock";
 
   preConfigure = ''
-    cmp ./Cargo.lock ./zeroidc/Cargo.lock || {
-      echo 1>&2 "Please make sure that the derivation's Cargo.lock is identical to ./zeroidc/Cargo.lock!"
+    cmp ./Cargo.lock ./rustybits/Cargo.lock || {
+      echo 1>&2 "Please make sure that the derivation's Cargo.lock is identical to ./rustybits/Cargo.lock!"
       exit 1
     }
 
diff --git a/pkgs/tools/networking/zerotierone/update.sh b/pkgs/tools/networking/zerotierone/update.sh
index 24b0d91d37cd..7df1f08d3253 100755
--- a/pkgs/tools/networking/zerotierone/update.sh
+++ b/pkgs/tools/networking/zerotierone/update.sh
@@ -3,5 +3,5 @@
 
 version=$(curl --silent "https://api.github.com/repos/zerotier/ZeroTierOne/releases" | jq '.[0].tag_name' --raw-output)
 
-curl --silent "https://raw.githubusercontent.com/zerotier/ZeroTierOne/$version/zeroidc/Cargo.lock" > "$(dirname "$0")/Cargo.lock"
+curl --silent "https://raw.githubusercontent.com/zerotier/ZeroTierOne/$version/rustybits/Cargo.lock" > "$(dirname "$0")/Cargo.lock"
 update-source-version zerotierone "$version"
diff --git a/pkgs/tools/networking/zssh/default.nix b/pkgs/tools/networking/zssh/default.nix
index 3c4be71998e8..b64d2c959a1a 100644
--- a/pkgs/tools/networking/zssh/default.nix
+++ b/pkgs/tools/networking/zssh/default.nix
@@ -32,7 +32,7 @@ in stdenv.mkDerivation rec {
   meta = {
     description = "SSH and Telnet client with ZMODEM file transfer capability";
     homepage = "https://zssh.sourceforge.net/";
-    license = lib.licenses.gpl2;
+    license = lib.licenses.gpl2Only;
     maintainers = [ ]; # required by deepin-terminal
     platforms = lib.platforms.linux;
   };
diff --git a/pkgs/tools/nix/nix-query-tree-viewer/default.nix b/pkgs/tools/nix/nix-query-tree-viewer/default.nix
index 03fa64545f18..f5c8a46131bf 100644
--- a/pkgs/tools/nix/nix-query-tree-viewer/default.nix
+++ b/pkgs/tools/nix/nix-query-tree-viewer/default.nix
@@ -1,4 +1,4 @@
-{ lib, fetchFromGitHub, rustPlatform, glib, gtk3, wrapGAppsHook }:
+{ lib, fetchFromGitHub, rustPlatform, glib, gtk3, wrapGAppsHook3 }:
 
 rustPlatform.buildRustPackage rec {
   pname = "nix-query-tree-viewer";
@@ -12,7 +12,7 @@ rustPlatform.buildRustPackage rec {
   };
 
   nativeBuildInputs = [
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
diff --git a/pkgs/tools/nix/npins/default.nix b/pkgs/tools/nix/npins/default.nix
index 02ec39094ddf..9d10464aa73c 100644
--- a/pkgs/tools/nix/npins/default.nix
+++ b/pkgs/tools/nix/npins/default.nix
@@ -19,7 +19,7 @@ in rustPlatform.buildRustPackage rec {
   version = src.version;
   src = passthru.mkSource sources.npins;
 
-  cargoSha256 = "sha256-eySVpmCVWBJfyAkTQv+LqojWMO/3r6kBYP1a4z+FYHY=";
+  cargoSha256 = "sha256-YwMypBl+P1ygf4zUbkZlq4zPrOzf+lPOz2FLg2/xI3k=";
 
   buildInputs = lib.optional stdenv.isDarwin (with darwin.apple_sdk.frameworks; [ Security ]);
   nativeBuildInputs = [ makeWrapper ];
diff --git a/pkgs/tools/nix/npins/sources.json b/pkgs/tools/nix/npins/sources.json
index fbeb040fa74c..f7faf4210d72 100644
--- a/pkgs/tools/nix/npins/sources.json
+++ b/pkgs/tools/nix/npins/sources.json
@@ -9,10 +9,10 @@
       },
       "pre_releases": false,
       "version_upper_bound": null,
-      "version": "0.2.2",
-      "revision": "a443c58d9c7b818aaea3c47821d7c561faef66ec",
-      "url": "https://api.github.com/repos/andir/npins/tarball/0.2.2",
-      "hash": "0rv6m8c9lmzkb76b682w7ax6jy8ls4l4y17wjx98jk64b74qspca"
+      "version": "0.2.4",
+      "revision": "181da464f7edb5e675dd96cc25d611760796a739",
+      "url": "https://api.github.com/repos/andir/npins/tarball/0.2.4",
+      "hash": "04155dr6i1gy2zgy49v8zm75sn1akm83l4x8h6cxvxyk1l2abn4q"
     }
   },
   "version": 3
diff --git a/pkgs/tools/package-management/checkinstall/default.nix b/pkgs/tools/package-management/checkinstall/default.nix
index 323464847b60..a56880cb3426 100644
--- a/pkgs/tools/package-management/checkinstall/default.nix
+++ b/pkgs/tools/package-management/checkinstall/default.nix
@@ -73,7 +73,7 @@ stdenv.mkDerivation rec {
     description = "A tool for automatically generating Slackware, RPM or Debian packages when doing `make install'";
     maintainers = [ lib.maintainers.eelco ];
     platforms = lib.platforms.linux;
-    license = lib.licenses.gpl2;
+    license = lib.licenses.gpl2Plus;
     knownVulnerabilities = [
       "CVE-2020-25031"
     ];
diff --git a/pkgs/tools/package-management/lix/common.nix b/pkgs/tools/package-management/lix/common.nix
new file mode 100644
index 000000000000..a544707b4f35
--- /dev/null
+++ b/pkgs/tools/package-management/lix/common.nix
@@ -0,0 +1,286 @@
+{
+  lib,
+  fetchFromGitHub,
+  version,
+  suffix ? "",
+  hash ? null,
+  src ? fetchFromGitHub {
+    owner = "lix-project";
+    repo = "lix";
+    rev = version;
+    inherit hash;
+  },
+  docCargoHash ? null,
+  patches ? [ ],
+  maintainers ? lib.teams.lix.members,
+}@args:
+assert (hash == null) -> (src != null);
+{
+  stdenv,
+  meson,
+  bash,
+  bison,
+  boehmgc,
+  boost,
+  brotli,
+  busybox-sandbox-shell,
+  bzip2,
+  callPackage,
+  coreutils,
+  curl,
+  cmake,
+  docbook_xsl_ns,
+  docbook5,
+  doxygen,
+  editline,
+  flex,
+  git,
+  gnutar,
+  gtest,
+  gzip,
+  jq,
+  lib,
+  libarchive,
+  libcpuid,
+  libgit2,
+  libsodium,
+  libxml2,
+  libxslt,
+  lowdown,
+  lsof,
+  man,
+  mercurial,
+  mdbook,
+  mdbook-linkcheck,
+  nlohmann_json,
+  ninja,
+  openssl,
+  toml11,
+  python3,
+  perl,
+  pkg-config,
+  rapidcheck,
+  Security,
+  sqlite,
+  util-linuxMinimal,
+  xz,
+  nixosTests,
+
+  enableDocumentation ? stdenv.hostPlatform == stdenv.buildPlatform,
+  enableStatic ? stdenv.hostPlatform.isStatic,
+  withAWS ? !enableStatic && (stdenv.isLinux || stdenv.isDarwin),
+  aws-sdk-cpp,
+  # RISC-V support in progress https://github.com/seccomp/libseccomp/pull/50
+  withLibseccomp ? lib.meta.availableOn stdenv.hostPlatform libseccomp,
+  libseccomp,
+
+  confDir,
+  stateDir,
+  storeDir,
+}:
+let
+  lix-doc = callPackage ./doc {
+    inherit src;
+    version = "${version}${suffix}";
+    cargoHash = docCargoHash;
+  };
+  self = stdenv.mkDerivation {
+    pname = "lix";
+
+    version = "${version}${suffix}";
+    VERSION_SUFFIX = suffix;
+
+    inherit src patches;
+
+    outputs =
+      [
+        "out"
+        "dev"
+      ]
+      ++ lib.optionals enableDocumentation [
+        "man"
+        "doc"
+      ];
+
+    strictDeps = true;
+
+    nativeBuildInputs =
+      [
+        pkg-config
+        bison
+        flex
+        jq
+        meson
+        ninja
+        cmake
+        python3
+        doxygen
+
+        # Tests
+        git
+        mercurial
+        jq
+        lsof
+      ]
+      ++ lib.optionals (enableDocumentation) [
+        (lib.getBin lowdown)
+        mdbook
+        mdbook-linkcheck
+      ]
+      ++ lib.optionals stdenv.isLinux [ util-linuxMinimal ];
+
+    buildInputs =
+      [
+        boost
+        brotli
+        bzip2
+        curl
+        editline
+        libsodium
+        openssl
+        sqlite
+        xz
+        gtest
+        libarchive
+        lowdown
+        rapidcheck
+        toml11
+        lix-doc
+      ]
+      ++ lib.optionals stdenv.isDarwin [ Security ]
+      ++ lib.optionals (stdenv.isx86_64) [ libcpuid ]
+      ++ lib.optionals withLibseccomp [ libseccomp ]
+      ++ lib.optionals withAWS [ aws-sdk-cpp ];
+
+    propagatedBuildInputs = [
+      boehmgc
+      nlohmann_json
+    ];
+
+    postPatch = ''
+      patchShebangs --build tests
+    '';
+
+    preConfigure =
+      # Copy libboost_context so we don't get all of Boost in our closure.
+      # https://github.com/NixOS/nixpkgs/issues/45462
+      lib.optionalString (!enableStatic) ''
+        mkdir -p $out/lib
+        cp -pd ${boost}/lib/{libboost_context*,libboost_thread*,libboost_system*} $out/lib
+        rm -f $out/lib/*.a
+        ${lib.optionalString stdenv.isLinux ''
+          chmod u+w $out/lib/*.so.*
+          patchelf --set-rpath $out/lib:${stdenv.cc.cc.lib}/lib $out/lib/libboost_thread.so.*
+        ''}
+        ${lib.optionalString stdenv.hostPlatform.isDarwin ''
+          for LIB in $out/lib/*.dylib; do
+            chmod u+w $LIB
+            install_name_tool -id $LIB $LIB
+            install_name_tool -delete_rpath ${boost}/lib/ $LIB || true
+          done
+          install_name_tool -change ${boost}/lib/libboost_system.dylib $out/lib/libboost_system.dylib $out/lib/libboost_thread.dylib
+        ''}
+      '';
+
+    mesonFlags =
+      [
+        (lib.mesonEnable "gc" true)
+        (lib.mesonBool "enable-tests" true)
+        (lib.mesonBool "enable-docs" enableDocumentation)
+        (lib.mesonBool "enable-embedded-sandbox-shell" (stdenv.isLinux && stdenv.hostPlatform.isStatic))
+        (lib.mesonEnable "seccomp-sandboxing" withLibseccomp)
+
+        (lib.mesonOption "store-dir" storeDir)
+        (lib.mesonOption "state-dir" stateDir)
+        (lib.mesonOption "sysconfdir" confDir)
+      ]
+      ++ lib.optionals stdenv.isLinux [
+        (lib.mesonOption "sandbox-shell" "${busybox-sandbox-shell}/bin/busybox")
+      ];
+
+    # Needed for Meson to find Boost.
+    # https://github.com/NixOS/nixpkgs/issues/86131.
+    env = {
+      BOOST_INCLUDEDIR = "${lib.getDev boost}/include";
+      BOOST_LIBRARYDIR = "${lib.getLib boost}/lib";
+    };
+
+    postInstall =
+      ''
+        mkdir -p $doc/nix-support
+        echo "doc manual $doc/share/doc/nix/manual" >> $doc/nix-support/hydra-build-products
+      ''
+      + lib.optionalString stdenv.hostPlatform.isStatic ''
+        mkdir -p $out/nix-support
+        echo "file binary-dist $out/bin/nix" >> $out/nix-support/hydra-build-products
+      ''
+      + lib.optionalString stdenv.isDarwin ''
+        for lib in libnixutil.dylib libnixexpr.dylib; do
+          install_name_tool \
+            -change "${lib.getLib boost}/lib/libboost_context.dylib" \
+            "$out/lib/libboost_context.dylib" \
+            "$out/lib/$lib"
+        done
+      '';
+
+    doCheck = true;
+    mesonCheckFlags = [ "--suite=check" ];
+    checkInputs = [
+      gtest
+      rapidcheck
+    ];
+
+    doInstallCheck = true;
+    mesonInstallCheckFlags = [ "--suite=installcheck" ];
+
+    preInstallCheck = lib.optionalString stdenv.hostPlatform.isDarwin ''
+      # socket path becomes too long otherwise
+      export TMPDIR=$NIX_BUILD_TOP
+      # Prevent crashes in libcurl due to invoking Objective-C `+initialize` methods after `fork`.
+      # See http://sealiesoftware.com/blog/archive/2017/6/5/Objective-C_and_fork_in_macOS_1013.html.
+      export OBJC_DISABLE_INITIALIZE_FORK_SAFETY=YES
+    '';
+
+    installCheckPhase = ''
+      runHook preInstallCheck
+      flagsArray=($mesonInstallCheckFlags "''${mesonInstallCheckFlagsArray[@]}")
+      meson test --no-rebuild "''${flagsArray[@]}"
+      runHook postInstallCheck
+    '';
+    # strictoverflow is disabled because we trap on signed overflow instead
+    hardeningDisable = [ "strictoverflow" ] ++ lib.optional stdenv.hostPlatform.isStatic "pie";
+    # hardeningEnable = lib.optionals (!stdenv.isDarwin) [ "pie" ];
+    # hardeningDisable = lib.optional stdenv.hostPlatform.isMusl "fortify";
+    separateDebugInfo = stdenv.isLinux && !enableStatic;
+    enableParallelBuilding = true;
+
+    passthru = {
+      inherit aws-sdk-cpp boehmgc;
+      tests = {
+        misc = nixosTests.misc.lix.passthru.override { nixPackage = self; };
+      };
+    };
+
+    # point 'nix edit' and ofborg at the file that defines the attribute,
+    # not this common file.
+    pos = builtins.unsafeGetAttrPos "version" args;
+    meta = with lib; {
+      description = "Powerful package manager that makes package management reliable and reproducible";
+      longDescription = ''
+        Lix (a fork of Nix) is a powerful package manager for Linux and other Unix systems that
+        makes package management reliable and reproducible. It provides atomic
+        upgrades and rollbacks, side-by-side installation of multiple versions of
+        a package, multi-user package management and easy setup of build
+        environments.
+      '';
+      homepage = "https://lix.systems";
+      license = licenses.lgpl21Plus;
+      inherit maintainers;
+      platforms = platforms.unix;
+      outputsToInstall = [ "out" ] ++ optional enableDocumentation "man";
+      mainProgram = "nix";
+      broken = enableStatic;
+    };
+  };
+in
+self
diff --git a/pkgs/tools/package-management/lix/default.nix b/pkgs/tools/package-management/lix/default.nix
new file mode 100644
index 000000000000..9a03e64f8b8f
--- /dev/null
+++ b/pkgs/tools/package-management/lix/default.nix
@@ -0,0 +1,60 @@
+{
+  lib,
+  aws-sdk-cpp,
+  boehmgc,
+  callPackage,
+  fetchFromGitHub,
+  Security,
+
+  storeDir ? "/nix/store",
+  stateDir ? "/nix/var",
+  confDir ? "/etc",
+}:
+let
+  boehmgc-nix_2_3 = boehmgc.override { enableLargeConfig = true; };
+
+  boehmgc-nix = boehmgc-nix_2_3.overrideAttrs (drv: {
+    patches = (drv.patches or [ ]) ++ [
+      # Part of the GC solution in https://github.com/NixOS/nix/pull/4944
+      ../nix/patches/boehmgc-coroutine-sp-fallback.patch
+    ];
+  });
+
+  aws-sdk-cpp-nix =
+    (aws-sdk-cpp.override {
+      apis = [
+        "s3"
+        "transfer"
+      ];
+      customMemoryManagement = false;
+    }).overrideAttrs
+      {
+        # only a stripped down version is build which takes a lot less resources to build
+        requiredSystemFeatures = [ ];
+      };
+
+  common =
+    args:
+    callPackage (import ./common.nix ({ inherit lib fetchFromGitHub; } // args)) {
+      inherit
+        Security
+        storeDir
+        stateDir
+        confDir
+        ;
+      boehmgc = boehmgc-nix;
+      aws-sdk-cpp = aws-sdk-cpp-nix;
+    };
+in
+lib.makeExtensible (self: ({
+  lix_2_90 = (
+    common {
+      version = "2.90-beta.1";
+      hash = "sha256-REWlo2RYHfJkxnmZTEJu3Cd/2VM+wjjpPy7Xi4BdDTQ=";
+      docCargoHash = "sha256-oH248kR4Of0MhcY2DYxNX0A+/XJ3L+UuIpBKn3sJt54=";
+    }
+  );
+
+  latest = self.lix_2_90;
+  stable = self.lix_2_90;
+}))
diff --git a/pkgs/tools/package-management/lix/doc/default.nix b/pkgs/tools/package-management/lix/doc/default.nix
new file mode 100644
index 000000000000..a3c1d7d9ccc5
--- /dev/null
+++ b/pkgs/tools/package-management/lix/doc/default.nix
@@ -0,0 +1,12 @@
+{
+  src,
+  rustPlatform,
+  version,
+  cargoHash,
+}:
+
+rustPlatform.buildRustPackage {
+  pname = "lix-doc";
+  sourceRoot = "${src.name}/lix-doc";
+  inherit version src cargoHash;
+}
diff --git a/pkgs/tools/package-management/nfpm/default.nix b/pkgs/tools/package-management/nfpm/default.nix
index 3b68b36403e2..233cd511110d 100644
--- a/pkgs/tools/package-management/nfpm/default.nix
+++ b/pkgs/tools/package-management/nfpm/default.nix
@@ -8,16 +8,16 @@
 
 buildGoModule rec {
   pname = "nfpm";
-  version = "2.36.1";
+  version = "2.37.1";
 
   src = fetchFromGitHub {
     owner = "goreleaser";
     repo = pname;
     rev = "v${version}";
-    hash = "sha256-arGTZ7GFM1kQdryPrwklY7S0B9i31eQ/MaR24mRaFAo=";
+    hash = "sha256-W32rjqPqMEZs7s9zi88CKm+OSVb6UKW6bEdykmOPJDw=";
   };
 
-  vendorHash = "sha256-g57tLk2+WWcdG0COqkQD7eLYG0TdC0RnlhLF6Qt4woY=";
+  vendorHash = "sha256-zHr9NdNFlScV6GsTzwH3vsAfuP3JsNTEi/JaJEdHOck=";
 
   ldflags = [ "-s" "-w" "-X main.version=${version}" ];
 
diff --git a/pkgs/tools/package-management/nix-eval-jobs/2.19.nix b/pkgs/tools/package-management/nix-eval-jobs/2.19.nix
new file mode 100644
index 000000000000..bf2d48e4adfb
--- /dev/null
+++ b/pkgs/tools/package-management/nix-eval-jobs/2.19.nix
@@ -0,0 +1,47 @@
+{ lib
+, boost
+, cmake
+, fetchFromGitHub
+, meson
+, ninja
+, nix
+, nlohmann_json
+, pkg-config
+, stdenv
+}:
+stdenv.mkDerivation rec {
+  pname = "nix-eval-jobs";
+  version = "2.19.4";
+  src = fetchFromGitHub {
+    owner = "nix-community";
+    repo = pname;
+    rev = "v${version}";
+    hash = "sha256-97ZqhTMqnAr1rzEy96faceWzFyWexnYbH1aTfc1y0JE=";
+  };
+  buildInputs = [
+    boost
+    nix
+    nlohmann_json
+  ];
+  nativeBuildInputs = [
+    meson
+    ninja
+    pkg-config
+    # nlohmann_json can be only discovered via cmake files
+    cmake
+  ];
+
+  # Since this package is intimately tied to a specific Nix release, we
+  # propagate the Nix used for building it to make it easier for users
+  # downstream to reference it.
+  passthru = { inherit nix; };
+
+  meta = {
+    description = "Hydra's builtin hydra-eval-jobs as a standalone";
+    homepage = "https://github.com/nix-community/nix-eval-jobs";
+    license = lib.licenses.gpl3;
+    maintainers = with lib.maintainers; [ adisbladis mic92 ];
+    platforms = lib.platforms.unix;
+    mainProgram = "nix-eval-jobs";
+  };
+}
diff --git a/pkgs/tools/package-management/nix-eval-jobs/default.nix b/pkgs/tools/package-management/nix-eval-jobs/default.nix
index 37194739e5d1..15a095f6c3b1 100644
--- a/pkgs/tools/package-management/nix-eval-jobs/default.nix
+++ b/pkgs/tools/package-management/nix-eval-jobs/default.nix
@@ -11,12 +11,12 @@
 }:
 stdenv.mkDerivation rec {
   pname = "nix-eval-jobs";
-  version = "2.21.0";
+  version = "2.22.0";
   src = fetchFromGitHub {
     owner = "nix-community";
     repo = pname;
     rev = "v${version}";
-    hash = "sha256-StJq7Zy+/iVBUAKFzhHWlsirFucZ3gNtzXhAYXAsNnw=";
+    hash = "sha256-Foi9FUuwKBUVExR3uEJEGsNRCGkkoNDj0yEhASanGCM=";
   };
   buildInputs = [
     boost
diff --git a/pkgs/tools/package-management/nix/default.nix b/pkgs/tools/package-management/nix/default.nix
index 12f36a7240f2..c7b032c1096d 100644
--- a/pkgs/tools/package-management/nix/default.nix
+++ b/pkgs/tools/package-management/nix/default.nix
@@ -20,15 +20,6 @@ let
     patches = (drv.patches or [ ]) ++ [
       # Part of the GC solution in https://github.com/NixOS/nix/pull/4944
       ./patches/boehmgc-coroutine-sp-fallback.patch
-
-      # Required since 2.20, and has always been a valid change
-      # Awaiting 8.2 patch release of https://github.com/ivmai/bdwgc/commit/d1d4194c010bff2dc9237223319792cae834501c
-      # or master release of https://github.com/ivmai/bdwgc/commit/86b3bf0c95b66f718c3cb3d35fd7387736c2a4d7
-      (fetchpatch {
-        name = "boehmgc-traceable_allocator-public.diff";
-        url = "https://github.com/NixOS/nix/raw/2.20.0/dep-patches/boehmgc-traceable_allocator-public.diff";
-        hash = "sha256-FLsHY/JS46neiSyyQkVpbHZEFvWSCzWrFQu1CC71sh4=";
-      })
     ];
   });
 
@@ -175,18 +166,18 @@ in lib.makeExtensible (self: ({
   };
 
   nix_2_22 = common {
-    version = "2.22.0";
-    hash = "sha256-Ugcc+lSq8nJP+mddMlGFnoG4Ix1lRFHWOal3299bqR8=";
+    version = "2.22.1";
+    hash = "sha256-5Q1WkpTWH7fkVfYhHDc5r0A+Vc+K5xB1UhzrLzBCrB8=";
   };
 
   git = common rec {
     version = "2.23.0";
-    suffix = "pre20240426_${lib.substring 0 8 src.rev}";
+    suffix = "pre20240510_${lib.substring 0 8 src.rev}";
     src = fetchFromGitHub {
       owner = "NixOS";
       repo = "nix";
-      rev = "2f678331d59451dd6f1d9512cb6d92e4ecb9750f";
-      hash = "sha256-4AwaLB/gTRgvZG4FmFY6OY52yeLAnj0a6rtJCz7TRXA=";
+      rev = "87ab3c0ea4e6f85e7b902050365bb75cf2836fbb";
+      hash = "sha256-j/PLYYGs+Gjge4JGYxMjOhWQEp+GB4Fdicetbpmp6n0=";
     };
   };
 
diff --git a/pkgs/tools/package-management/opkg-utils/default.nix b/pkgs/tools/package-management/opkg-utils/default.nix
index 922fa4c93e1e..1fea0f6cc7a2 100644
--- a/pkgs/tools/package-management/opkg-utils/default.nix
+++ b/pkgs/tools/package-management/opkg-utils/default.nix
@@ -18,7 +18,7 @@ stdenv.mkDerivation {
   meta = with lib; {
     description = "Helper scripts for use with the opkg package manager";
     homepage = "http://git.yoctoproject.org/cgit/cgit.cgi/opkg-utils/";
-    license = licenses.gpl2;
+    license = licenses.gpl2Plus;
     platforms = platforms.all;
     maintainers = [ maintainers.bjornfor ];
   };
diff --git a/pkgs/tools/package-management/poetry/plugins/poetry-plugin-export.nix b/pkgs/tools/package-management/poetry/plugins/poetry-plugin-export.nix
index 67cbae28e843..08b94a0fd227 100644
--- a/pkgs/tools/package-management/poetry/plugins/poetry-plugin-export.nix
+++ b/pkgs/tools/package-management/poetry/plugins/poetry-plugin-export.nix
@@ -6,14 +6,14 @@
 
 buildPythonPackage rec {
   pname = "poetry-plugin-export";
-  version = "1.7.1";
+  version = "1.8.0";
   format = "pyproject";
 
   src = fetchFromGitHub {
     owner = "python-poetry";
     repo = pname;
     rev = "refs/tags/${version}";
-    hash = "sha256-HXzlfiZYDkrQRFXF1up52KrwGhrIctd3CtjQTNz8xH4=";
+    hash = "sha256-ZXhj9FwCCNFMzyoAtQTD8bddOvVM4KzNtd+3sBn9i+w=";
   };
 
   postPatch = ''
diff --git a/pkgs/tools/package-management/poetry/unwrapped.nix b/pkgs/tools/package-management/poetry/unwrapped.nix
index 5e2cc63644ab..3c27faaaf3a2 100644
--- a/pkgs/tools/package-management/poetry/unwrapped.nix
+++ b/pkgs/tools/package-management/poetry/unwrapped.nix
@@ -38,7 +38,7 @@
 
 buildPythonPackage rec {
   pname = "poetry";
-  version = "1.8.2";
+  version = "1.8.3";
   pyproject = true;
 
   disabled = pythonOlder "3.8";
@@ -47,7 +47,7 @@ buildPythonPackage rec {
     owner = "python-poetry";
     repo = "poetry";
     rev = "refs/tags/${version}";
-    hash = "sha256-MBWVeS/UHpzeeNUeiHMoXnLA3enRO/6yGIbg4Vf2GxU=";
+    hash = "sha256-PPHt9GG5XJzrhnuAS8L+0Pa3El3RNCdEbXbLnHopDWg=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/tools/security/aespipe/default.nix b/pkgs/tools/security/aespipe/default.nix
index 9ab8e089f30b..fe9c1d22f407 100644
--- a/pkgs/tools/security/aespipe/default.nix
+++ b/pkgs/tools/security/aespipe/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   pname = "aespipe";
-  version = "2.4g";
+  version = "2.4h";
 
   src = fetchurl {
     url = "mirror://sourceforge/loop-aes/aespipe/aespipe-v${version}.tar.bz2";
-    sha256 = "sha256-v7l+feFh6NfOETsWO9odGo7HfSwa+rVtzIFT16kBh/w=";
+    sha256 = "sha256-6rMR/CbqQyibw632YNYnBJJJSWByXSAm7EkXKUoaukk=";
   };
 
   nativeBuildInputs = [ makeWrapper ];
@@ -22,7 +22,7 @@ stdenv.mkDerivation rec {
   meta = with lib; {
     description = "AES encrypting or decrypting pipe";
     homepage = "https://loop-aes.sourceforge.net/aespipe.README";
-    license = licenses.gpl2;
+    license = licenses.gpl2Only;
     maintainers = [ maintainers.goibhniu ];
     platforms = platforms.unix;
   };
diff --git a/pkgs/tools/security/aide/default.nix b/pkgs/tools/security/aide/default.nix
index 104b5d11217a..d5d1fe2ae5a1 100644
--- a/pkgs/tools/security/aide/default.nix
+++ b/pkgs/tools/security/aide/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   pname = "aide";
-  version = "0.18.6";
+  version = "0.18.8";
 
   src = fetchurl {
     url = "https://github.com/aide/aide/releases/download/v${version}/${pname}-${version}.tar.gz";
-    sha256 = "sha256-j/Ns5H030MyYd2LV2WE0bUdd50u6ihgy/QBttu3TwQ4=";
+    sha256 = "sha256-FmYtxjLRfixWMLgBdS+XkSqOIml8Bl694XXxzDe4OmA=";
   };
 
   buildInputs = [ flex bison libmhash zlib acl attr libselinux pcre2 libgcrypt ];
diff --git a/pkgs/tools/security/arti/default.nix b/pkgs/tools/security/arti/default.nix
index e410a8685556..0ad27f3d08ab 100644
--- a/pkgs/tools/security/arti/default.nix
+++ b/pkgs/tools/security/arti/default.nix
@@ -10,7 +10,7 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "arti";
-  version = "1.2.1";
+  version = "1.2.2";
 
   src = fetchFromGitLab {
     domain = "gitlab.torproject.org";
@@ -18,10 +18,10 @@ rustPlatform.buildRustPackage rec {
     owner = "core";
     repo = "arti";
     rev = "arti-v${version}";
-    hash = "sha256-Ps1AIvL6hOnSYtvi4wbgJQiuv2eb1XIEPul/WypM9bo=";
+    hash = "sha256-DicOkh2yv6qbxf1x4fAZq34qtuD/T4twn8JMnI9XGCI=";
   };
 
-  cargoHash = "sha256-2u/8nn/9tz+hlNDz6I/g2cMPWXZSMVNV7FPsKFP8jqo=";
+  cargoHash = "sha256-ICJMcFTIHFLxB5XJeMRi1M6e9p0nKwT3vbqAZT22vmU=";
 
   nativeBuildInputs = lib.optionals stdenv.isLinux [ pkg-config ];
 
diff --git a/pkgs/tools/security/aws-iam-authenticator/default.nix b/pkgs/tools/security/aws-iam-authenticator/default.nix
index 5af095ae1556..801d364c6026 100644
--- a/pkgs/tools/security/aws-iam-authenticator/default.nix
+++ b/pkgs/tools/security/aws-iam-authenticator/default.nix
@@ -5,16 +5,16 @@
 
 buildGoModule rec {
   pname = "aws-iam-authenticator";
-  version = "0.6.19";
+  version = "0.6.20";
 
   src = fetchFromGitHub {
     owner = "kubernetes-sigs";
     repo = pname;
     rev = "refs/tags/v${version}";
-    hash = "sha256-wgMMa1PFKNArI4pk7gA2o8HHgF84Q+rga4j+UC1/Js8=";
+    hash = "sha256-72l+EgqWy8+7wdTKwXnebZ+wm5VCgYODw4D6lkL4NBA=";
   };
 
-  vendorHash = "sha256-wJqtIuLiidO3XFkvhSXRZcFR/31rR4U9BXjFilsr5a0=";
+  vendorHash = "sha256-7FYR8c1Q9SS3prt8yrTzbOqgqG1tGuvzjH42MkY0tAo=";
 
   ldflags = let PKG = "sigs.k8s.io/aws-iam-authenticator"; in [
     "-s"
diff --git a/pkgs/tools/security/bash-supergenpass/default.nix b/pkgs/tools/security/bash-supergenpass/default.nix
index f2d2aee7146b..7bf7c3642488 100644
--- a/pkgs/tools/security/bash-supergenpass/default.nix
+++ b/pkgs/tools/security/bash-supergenpass/default.nix
@@ -8,7 +8,7 @@
 
 stdenv.mkDerivation {
   pname = "bash-supergenpass";
-  version = "unstable-2024-03-24";
+  version = "0-unstable-2024-03-24";
 
   nativeBuildInputs = [ makeWrapper ];
 
diff --git a/pkgs/tools/security/buttercup-desktop/default.nix b/pkgs/tools/security/buttercup-desktop/default.nix
index 0ee20dbc4f6b..cbe5bbe1f8d0 100644
--- a/pkgs/tools/security/buttercup-desktop/default.nix
+++ b/pkgs/tools/security/buttercup-desktop/default.nix
@@ -2,17 +2,17 @@
 
 let
   pname = "buttercup-desktop";
-  version = "2.26.3";
+  version = "2.27.0";
   src = fetchurl {
     url = "https://github.com/buttercup/buttercup-desktop/releases/download/v${version}/Buttercup-linux-x86_64.AppImage";
-    sha256 = "sha256-jX8U+DcuoYGfxQgYOIn03Vg/OesMVLHZ1gbGBSlgIbI=";
+    sha256 = "sha256-zpb5c3qGfBoRX9V1lVRX8607hBEHgjR8ZWJizfYNgUM=";
   };
   appimageContents = appimageTools.extractType2 { inherit pname src version; };
 
 in appimageTools.wrapType2 {
   inherit pname src version;
 
-  extraPkgs = pkgs: (appimageTools.defaultFhsEnvArgs.multiPkgs pkgs) ++ [ pkgs.libsecret ];
+  extraPkgs = pkgs: [ pkgs.libsecret ];
 
   extraInstallCommands = ''
     install -m 444 -D ${appimageContents}/buttercup.desktop -t $out/share/applications
diff --git a/pkgs/tools/security/cdxgen/default.nix b/pkgs/tools/security/cdxgen/default.nix
index c9d962ed47af..1742e47f1d84 100644
--- a/pkgs/tools/security/cdxgen/default.nix
+++ b/pkgs/tools/security/cdxgen/default.nix
@@ -5,16 +5,16 @@
 
 buildNpmPackage rec {
   pname = "cdxgen";
-  version = "10.4.3";
+  version = "10.5.1";
 
   src = fetchFromGitHub {
     owner = "AppThreat";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-m6AtAbsZ7zPu7MlwEt9+RBs11DAHNa3x0Nn7b3TWdAY=";
+    sha256 = "sha256-sGFKmO3nsu5xvli6uGcRAc6CRJgQEvb6avShh2Z0kYg=";
   };
 
-  npmDepsHash = "sha256-z7tBghs2bg2eYNRkhe9J8/0rqaAXV5e5ZT9u5fdABe0=";
+  npmDepsHash = "sha256-1dKy9/cDr29RrVorpEdNNxPGGX12d/JXAU2g7IAdV/8=";
 
   dontNpmBuild = true;
 
diff --git a/pkgs/tools/security/chntpw/default.nix b/pkgs/tools/security/chntpw/default.nix
index c4463d16d348..827a00f718c1 100644
--- a/pkgs/tools/security/chntpw/default.nix
+++ b/pkgs/tools/security/chntpw/default.nix
@@ -62,7 +62,7 @@ stdenv.mkDerivation rec {
     homepage = "http://pogostick.net/~pnh/ntpasswd/";
     description = "An utility to reset the password of any user that has a valid local account on a Windows system";
     maintainers = with lib.maintainers; [ deepfire ];
-    license = licenses.gpl2;
+    license = licenses.gpl2Only;
     platforms = lib.platforms.unix;
   };
 }
diff --git a/pkgs/tools/security/clamav/default.nix b/pkgs/tools/security/clamav/default.nix
index c9d15351da4e..be40a271cc92 100644
--- a/pkgs/tools/security/clamav/default.nix
+++ b/pkgs/tools/security/clamav/default.nix
@@ -6,11 +6,11 @@
 
 stdenv.mkDerivation rec {
   pname = "clamav";
-  version = "1.3.0";
+  version = "1.3.1";
 
   src = fetchurl {
     url = "https://www.clamav.net/downloads/production/${pname}-${version}.tar.gz";
-    hash = "sha256-CoamSWMg2RV2A3szEBEZr2/Y1bkQYM0xajqcIp6WBKo=";
+    hash = "sha256-EqMDW/JvVfceMQalGl+o17dEVy35imOSCpz/h2p9zOQ=";
   };
 
   patches = [
@@ -36,7 +36,7 @@ stdenv.mkDerivation rec {
   meta = with lib; {
     homepage = "https://www.clamav.net";
     description = "Antivirus engine designed for detecting Trojans, viruses, malware and other malicious threats";
-    license = licenses.gpl2;
+    license = licenses.gpl2Only;
     maintainers = with maintainers; [ robberer qknight globin ];
     platforms = platforms.unix;
   };
diff --git a/pkgs/tools/security/cnquery/default.nix b/pkgs/tools/security/cnquery/default.nix
index 9c87dab3f1c6..d797861c26e8 100644
--- a/pkgs/tools/security/cnquery/default.nix
+++ b/pkgs/tools/security/cnquery/default.nix
@@ -6,18 +6,18 @@
 
 buildGoModule rec {
   pname = "cnquery";
-  version = "11.1.1";
+  version = "11.3.1";
 
   src = fetchFromGitHub {
     owner = "mondoohq";
     repo = "cnquery";
     rev = "refs/tags/v${version}";
-    hash = "sha256-99bkEoAfNfejO/M1V8KmAmyP+klrCtmkf1l6aZynEgQ=";
+    hash = "sha256-LcU4U2mxNrLJyp/V5d8TDo9DAcRBb4aRK+aEKoMCsZ0=";
   };
 
   subPackages = [ "apps/cnquery" ];
 
-  vendorHash = "sha256-Nb2KSTS85//GC4ikYgrNNoKYJYBYvG9q5GF5RPemklE=";
+  vendorHash = "sha256-z12/OKkrDru8jO4R1I/XfzGCBPHAD+KhJKv3dyyYCdw=";
 
   ldflags = [
     "-w"
diff --git a/pkgs/tools/security/cnspec/default.nix b/pkgs/tools/security/cnspec/default.nix
index 1c221457a06e..6bcdfd5a17de 100644
--- a/pkgs/tools/security/cnspec/default.nix
+++ b/pkgs/tools/security/cnspec/default.nix
@@ -6,18 +6,18 @@
 
 buildGoModule rec {
   pname = "cnspec";
-  version = "11.2.0";
+  version = "11.4.2";
 
   src = fetchFromGitHub {
     owner = "mondoohq";
     repo = "cnspec";
     rev = "refs/tags/v${version}";
-    hash = "sha256-KjF1tVeASK+psbcf/ND+SRCXYJog74O3Qm2yRGLN6LI=";
+    hash = "sha256-+UKiv+0BRmzu7ER6NE9jkZlov2MC2EEmpH7XWtJkBxA=";
   };
 
   proxyVendor = true;
 
-  vendorHash = "sha256-HKqUBtr6qidBx4SoiWkCdwri3dCrxXMPMSb/X7h+WBs=";
+  vendorHash = "sha256-JxyThRpr1XFYtg3Z5cF/LnGFqG9vzVpGZRNpgHpE458=";
 
   subPackages = [ "apps/cnspec" ];
 
diff --git a/pkgs/tools/security/crowdsec/default.nix b/pkgs/tools/security/crowdsec/default.nix
index 06cbecad8474..eb3c3cd229e5 100644
--- a/pkgs/tools/security/crowdsec/default.nix
+++ b/pkgs/tools/security/crowdsec/default.nix
@@ -2,16 +2,16 @@
 
 buildGoModule rec {
   pname = "crowdsec";
-  version = "1.6.0";
+  version = "1.6.1";
 
   src = fetchFromGitHub {
     owner = "crowdsecurity";
     repo = pname;
     rev = "v${version}";
-    hash = "sha256-5jK+f6IFPhGit+jxkSLTcWN1+nJRQaCZKpWZYId+2bk=";
+    hash = "sha256-CCQDMIBpKmaUSRwyjryTO3YWVIrr6FwW64K+alTrcdw=";
   };
 
-  vendorHash = "sha256-tUvFT+rE58yxNJGhqqwSG0GlGushkUpngxLkmyjjFFY=";
+  vendorHash = "sha256-K38hxWcrYOznXr8eST0xQBL0nNxHMAiGji5rFwAK0Qw=";
 
   nativeBuildInputs = [ installShellFiles ];
 
diff --git a/pkgs/tools/security/cryptomator/default.nix b/pkgs/tools/security/cryptomator/default.nix
index 8fb34dbbbcc2..cac3717625e4 100644
--- a/pkgs/tools/security/cryptomator/default.nix
+++ b/pkgs/tools/security/cryptomator/default.nix
@@ -1,7 +1,7 @@
 { lib, stdenv, fetchFromGitHub
 , autoPatchelfHook
 , fuse3
-, maven, jdk, makeShellWrapper, glib, wrapGAppsHook
+, maven, jdk, makeShellWrapper, glib, wrapGAppsHook3
 , libayatana-appindicator
 }:
 
@@ -86,7 +86,7 @@ mavenJdk.buildMavenPackage rec {
   nativeBuildInputs = [
     autoPatchelfHook
     makeShellWrapper
-    wrapGAppsHook
+    wrapGAppsHook3
     jdk
   ];
   buildInputs = [ fuse3 jdk glib libayatana-appindicator ];
diff --git a/pkgs/tools/security/cve-bin-tool/default.nix b/pkgs/tools/security/cve-bin-tool/default.nix
index 88b52da21eb3..b269cd362f2b 100644
--- a/pkgs/tools/security/cve-bin-tool/default.nix
+++ b/pkgs/tools/security/cve-bin-tool/default.nix
@@ -1,134 +1,90 @@
 { lib
 , buildPythonApplication
 , fetchFromGitHub
-, fetchpatch
+  # aiohttp[speedups]
+, aiodns
+, aiohttp
+, beautifulsoup4
+, brotlipy
+, cvss
+, distro
+, filetype
+, google-cloud-sdk
+, jinja2
 , jsonschema
+, lib4sbom
+, packageurl-python
+, packaging
 , plotly
-, beautifulsoup4
+, pytestCheckHook
+, python-gnupg
 , pyyaml
-, isort
-, py
-, jinja2
-, rpmfile
-, reportlab
-, zstandard
 , rich
-, aiohttp
+, rpmfile
+, setuptools
 , toml
-, distro
-  # aiohttp[speedups]
-, aiodns
-, brotlipy
-, faust-cchardet
-, pillow
-, pytestCheckHook
 , xmlschema
-, setuptools
-, packaging
-, cvss
-, google-cloud-sdk
+, zstandard
+, reportlab
 , pip
 , testers
 , cve-bin-tool
-# pinned packaging
-, pyparsing
-, fetchPypi
-, buildPythonPackage
-, pretend
-, pythonOlder
-, wheel
 }:
 
-let
-  # pin packaging to < 22 until issue related to https://github.com/intel/cve-bin-tool/pull/2436 are resolved by upstream (post-3.2)
-  packaging_21_3 = buildPythonPackage rec {
-    inherit (packaging) pname passthru meta;
-    version = "21.3";
-    format = "pyproject";
-    disabled = pythonOlder "3.6";
-
-    src = fetchPypi {
-      inherit pname version;
-      sha256 = "sha256-3UfEKSfYmrkR5gZRiQfMLTofOLvQJjhZcGQ/nFuOz+s=";
-    };
-    nativeBuildInputs = [
-      setuptools
-      wheel
-    ];
-    propagatedBuildInputs = [
-      pyparsing
-    ];
-
-    nativeCheckInputs = [
-      pytestCheckHook
-      pretend
-    ];
-
-    doCheck = false;
-  };
-in
 buildPythonApplication rec {
   pname = "cve-bin-tool";
-  version = "3.2";
+  version = "3.3";
   format = "setuptools";
 
   src = fetchFromGitHub {
     owner = "intel";
     repo = "cve-bin-tool";
     rev = "refs/tags/v${version}";
-    hash = "sha256-QOnWt6iit0/F6d/MfZ8qJqDuT3IHh0Qjs6BcJkI/CBw=";
+    hash = "sha256-A5w4U5EDX+UZWNMuz8GTOcubo8N2KfDlVV0aRNsO8/E=";
   };
 
-  patches = [
-    # Not needed as python dependency, should just be on the PATH
-    ./no-gsutil-python-dependency.patch
-    # Already merged upstream, to be removed post-3.2
-    # https://github.com/intel/cve-bin-tool/pull/2524
-    (fetchpatch {
-      name = "cve-bin-tool-version-success.patch";
-      url = "https://github.com/intel/cve-bin-tool/commit/6f9bd565219932c565c1443ac467fe4163408dd8.patch";
-      hash = "sha256-Glj6qiOvmvsuetXn4tysyiN/vrcOPFLORh+u3BoGzCI=";
-    })
-  ];
-
   # Wants to open a sqlite database, access the internet, etc
   doCheck = false;
 
-  propagatedNativeBuildInputs = [
-    pip
-  ];
-
-  propagatedBuildInputs = [
-    google-cloud-sdk
+  dependencies = [
+    # aiohttp[speedups]
+    aiodns
+    aiohttp
+    beautifulsoup4
+    brotlipy
+    cvss
+    distro
+    filetype
+    google-cloud-sdk # gsutil
+    jinja2
     jsonschema
+    lib4sbom
+    packageurl-python
+    packaging
     plotly
-    beautifulsoup4
+    python-gnupg
     pyyaml
-    isort
-    py
-    jinja2
-    rpmfile
-    reportlab
-    zstandard
     rich
-    aiohttp
-    toml
-    distro
-    # aiohttp[speedups]
-    aiodns
-    brotlipy
-    faust-cchardet
-    # needed by brotlipy
-    pillow
+    rpmfile
     setuptools
+    toml
     xmlschema
-    cvss
-    packaging_21_3
+    zstandard
+  ];
+
+  optional-dependencies = {
+    pdf = [
+      reportlab
+    ];
+  };
+
+  propagatedBuildInputs = [
+    pip
   ];
 
   nativeCheckInputs = [
     pytestCheckHook
-  ];
+  ] ++ lib.flatten (lib.attrValues optional-dependencies);
 
   pythonImportsCheck = [
     "cve_bin_tool"
diff --git a/pkgs/tools/security/cve-bin-tool/no-gsutil-python-dependency.patch b/pkgs/tools/security/cve-bin-tool/no-gsutil-python-dependency.patch
deleted file mode 100644
index 9bbac57b5fb4..000000000000
--- a/pkgs/tools/security/cve-bin-tool/no-gsutil-python-dependency.patch
+++ /dev/null
@@ -1,12 +0,0 @@
-diff --git a/requirements.txt b/requirements.txt
-index 1d4aa9a..c9e9171 100644
---- a/requirements.txt
-+++ b/requirements.txt
-@@ -14,6 +14,6 @@ xmlschema
- importlib_metadata; python_version < "3.8"
- requests
- urllib3>=1.26.5 # dependency of requests added explictly to avoid CVEs
--gsutil
-+#gsutil
- cvss
- packaging
diff --git a/pkgs/tools/security/donkey/default.nix b/pkgs/tools/security/donkey/default.nix
index ec95715853ec..22793db15431 100644
--- a/pkgs/tools/security/donkey/default.nix
+++ b/pkgs/tools/security/donkey/default.nix
@@ -47,7 +47,7 @@ the host.
 The name "Donkey" is an acronym of "Don't Key".
     '';
     homepage = "https://devel.ringlet.net/security/donkey";
-    license = licenses.gpl2;
+    license = licenses.gpl2Only;
     maintainers = with maintainers; [ raboof ];
     platforms = platforms.all;
   };
diff --git a/pkgs/tools/security/doona/default.nix b/pkgs/tools/security/doona/default.nix
index 2598f2ecbb96..fd36680c022d 100644
--- a/pkgs/tools/security/doona/default.nix
+++ b/pkgs/tools/security/doona/default.nix
@@ -31,7 +31,7 @@ stdenv.mkDerivation rec {
       A fork of the Bruteforce Exploit Detector Tool (BED).
       BED is a program which is designed to check daemons for potential buffer overflows, format string bugs etc.
     '';
-    license = licenses.gpl2;
+    license = licenses.gpl2Only;
     maintainers = with maintainers; [ pamplemousse ];
   };
 }
diff --git a/pkgs/tools/security/duo-unix/default.nix b/pkgs/tools/security/duo-unix/default.nix
index f0ddb1c0c2aa..1d04cfef3544 100644
--- a/pkgs/tools/security/duo-unix/default.nix
+++ b/pkgs/tools/security/duo-unix/default.nix
@@ -21,7 +21,7 @@ stdenv.mkDerivation rec {
   meta = {
     description = "Duo Security Unix login integration";
     homepage    = "https://duosecurity.com";
-    license     = lib.licenses.gpl2;
+    license     = lib.licenses.gpl2Only;
     platforms   = lib.platforms.unix;
     maintainers = [ lib.maintainers.thoughtpolice ];
   };
diff --git a/pkgs/tools/security/ecdsatool/ctype-header-c99-implicit-function-declaration.patch b/pkgs/tools/security/ecdsatool/ctype-header-c99-implicit-function-declaration.patch
new file mode 100644
index 000000000000..1bbe576e452e
--- /dev/null
+++ b/pkgs/tools/security/ecdsatool/ctype-header-c99-implicit-function-declaration.patch
@@ -0,0 +1,12 @@
+diff --git a/libecdsaauth/base64.c b/libecdsaauth/base64.c
+index 0f9b7a3..84df22a 100644
+--- a/libecdsaauth/base64.c
++++ b/libecdsaauth/base64.c
+@@ -45,6 +45,7 @@
+ #include <string.h>
+ #include <unistd.h>
+ #include <assert.h>
++#include <ctype.h>
+ 
+ static const char Base64[] =
+ 	"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";
diff --git a/pkgs/tools/security/ecdsatool/default.nix b/pkgs/tools/security/ecdsatool/default.nix
index aa55facfd8e0..439ffac563c7 100644
--- a/pkgs/tools/security/ecdsatool/default.nix
+++ b/pkgs/tools/security/ecdsatool/default.nix
@@ -16,6 +16,11 @@ stdenv.mkDerivation {
     ./configure --prefix=$out
   '';
 
+  patches = [
+    ./ctype-header-c99-implicit-function-declaration.patch
+    ./openssl-header-c99-implicit-function-declaration.patch
+  ];
+
   nativeBuildInputs = with pkgs; [openssl autoconf automake];
   buildInputs = with pkgs; [libuecc];
 
diff --git a/pkgs/tools/security/ecdsatool/openssl-header-c99-implicit-function-declaration.patch b/pkgs/tools/security/ecdsatool/openssl-header-c99-implicit-function-declaration.patch
new file mode 100644
index 000000000000..1821743c1803
--- /dev/null
+++ b/pkgs/tools/security/ecdsatool/openssl-header-c99-implicit-function-declaration.patch
@@ -0,0 +1,33 @@
+diff --git a/libecdsaauth/keypair.c b/libecdsaauth/keypair.c
+index 5e098c5..b5dd21e 100644
+--- a/libecdsaauth/keypair.c
++++ b/libecdsaauth/keypair.c
+@@ -22,6 +22,7 @@
+ 
+ #include <string.h>
+ #include <stdlib.h>
++#include <openssl/pem.h>
+ 
+ static inline libecdsaauth_key_t *libecdsaauth_key_alloc(void)
+ {
+diff --git a/tool/main.c b/tool/main.c
+index 23d19a3..f88016c 100644
+--- a/tool/main.c
++++ b/tool/main.c
+@@ -21,6 +21,7 @@
+ #include <stdio.h>
+ #include <stdlib.h>
+ #include <string.h>
++#include <openssl/pem.h>
+ 
+ #include "libecdsaauth/keypair.h"
+ #include "libecdsaauth/op.h"
+@@ -41,7 +42,7 @@ static int tool_keygen(int argc, const char *argv[])
+ 	key = libecdsaauth_key_new();
+ 
+ 	pubout = fopen(argv[1], "w");
+-	PEM_write_ECPrivateKey(pubout, key->eckey, NULL, NULL, 0, NULL);
++	PEM_write_ECPrivateKey(pubout, key->eckey, NULL, NULL, 0, NULL, NULL);
+ 	fclose(pubout);
+ 
+ 	pubkey = libecdsaauth_key_public_key_base64(key);
diff --git a/pkgs/tools/security/efitools/default.nix b/pkgs/tools/security/efitools/default.nix
index 70032504f475..0d8dab926cb2 100644
--- a/pkgs/tools/security/efitools/default.nix
+++ b/pkgs/tools/security/efitools/default.nix
@@ -32,7 +32,7 @@ stdenv.mkDerivation rec {
   meta = with lib; {
     description = "Tools for manipulating UEFI secure boot platforms";
     homepage = "https://git.kernel.org/pub/scm/linux/kernel/git/jejb/efitools.git";
-    license = licenses.gpl2;
+    license = licenses.gpl2Only;
     maintainers = [ maintainers.grahamc ];
     platforms = platforms.linux;
   };
diff --git a/pkgs/tools/security/eid-mw/default.nix b/pkgs/tools/security/eid-mw/default.nix
index 5a330c7126fa..851e6f578db6 100644
--- a/pkgs/tools/security/eid-mw/default.nix
+++ b/pkgs/tools/security/eid-mw/default.nix
@@ -16,7 +16,7 @@
 , openssl
 , p11-kit
 , pcsclite
-, wrapGAppsHook
+, wrapGAppsHook3
 }:
 
 stdenv.mkDerivation rec {
@@ -37,7 +37,7 @@ stdenv.mkDerivation rec {
   '';
 
 
-  nativeBuildInputs = [ wrapGAppsHook autoreconfHook autoconf-archive pkg-config makeWrapper ];
+  nativeBuildInputs = [ wrapGAppsHook3 autoreconfHook autoconf-archive pkg-config makeWrapper ];
   buildInputs = [ curl gtk3 libassuan libbsd libproxy libxml2 openssl p11-kit pcsclite ];
 
   preConfigure = ''
diff --git a/pkgs/tools/security/exploitdb/default.nix b/pkgs/tools/security/exploitdb/default.nix
index 95733ff5b4bd..56367fcc64c2 100644
--- a/pkgs/tools/security/exploitdb/default.nix
+++ b/pkgs/tools/security/exploitdb/default.nix
@@ -7,13 +7,13 @@
 
 stdenv.mkDerivation rec {
   pname = "exploitdb";
-  version = "2024-05-02";
+  version = "2024-05-16";
 
   src = fetchFromGitLab {
     owner = "exploit-database";
     repo = "exploitdb";
     rev = "refs/tags/${version}";
-    hash = "sha256-ijfQUvQWEm/657F0GXPBaxEQMkHeU+3N9Lp/om8eB40=";
+    hash = "sha256-m00hnTu8PEUmWHO9ei9DYU10DAgn1zaKATt6yVJ7R1o=";
   };
 
   nativeBuildInputs = [ makeWrapper ];
diff --git a/pkgs/tools/security/fcrackzip/default.nix b/pkgs/tools/security/fcrackzip/default.nix
index 31d0b44fb710..b3b82a015115 100644
--- a/pkgs/tools/security/fcrackzip/default.nix
+++ b/pkgs/tools/security/fcrackzip/default.nix
@@ -18,7 +18,7 @@ stdenv.mkDerivation rec {
   meta = with lib; {
     description = "zip password cracker, similar to fzc, zipcrack and others";
     homepage = "http://oldhome.schmorp.de/marc/fcrackzip.html";
-    license = licenses.gpl2;
+    license = licenses.gpl2Only;
     maintainers = with maintainers; [ nico202 ];
     platforms = with platforms; unix;
   };
diff --git a/pkgs/tools/security/fpm2/default.nix b/pkgs/tools/security/fpm2/default.nix
index 68781d05dc68..e59322a51c9d 100644
--- a/pkgs/tools/security/fpm2/default.nix
+++ b/pkgs/tools/security/fpm2/default.nix
@@ -18,7 +18,7 @@ stdenv.mkDerivation rec {
     description = "GTK2 port from Figaro's Password Manager originally developed by John Conneely, with some new enhancements";
     mainProgram = "fpm2";
     homepage    = "https://als.regnet.cz/fpm2/";
-    license     = licenses.gpl2;
+    license     = licenses.gpl2Plus;
     platforms   = platforms.linux;
     maintainers = with maintainers; [ hce ];
   };
diff --git a/pkgs/tools/security/fscan/default.nix b/pkgs/tools/security/fscan/default.nix
index 00ce9d8ec78e..29fbf2453ee4 100644
--- a/pkgs/tools/security/fscan/default.nix
+++ b/pkgs/tools/security/fscan/default.nix
@@ -2,16 +2,16 @@
 
 buildGoModule rec {
   pname = "fscan";
-  version = "1.8.3-build3";
+  version = "1.8.4";
 
   src = fetchFromGitHub {
     owner = "shadow1ng";
     repo = "fscan";
     rev = version;
-    hash = "sha256-GtOCd8JaR6tx8hoB+P9QXrEnN7Wvmv7jddhc2/8hjvQ=";
+    hash = "sha256-5uFSvEkTBy0veMdeeg9BmSqu+qSqCwuozK0J3kerAdE=";
   };
 
-  vendorHash = "sha256-hvb2IfypwYauF3ubE36u0bTU+l/FWP/CZt6dFd9zc6s=";
+  vendorHash = "sha256-FFYqvGEFe7sUEb4G3ApQOuYoiDXeA54P7spmKfRiEF0=";
 
   meta = with lib; {
     description = "An intranet comprehensive scanning tool";
diff --git a/pkgs/tools/security/gau/default.nix b/pkgs/tools/security/gau/default.nix
index dc4676a1c987..6e04afae53db 100644
--- a/pkgs/tools/security/gau/default.nix
+++ b/pkgs/tools/security/gau/default.nix
@@ -1,24 +1,29 @@
-{ buildGoModule
-, fetchFromGitHub
-, lib
+{
+  lib,
+  buildGoModule,
+  fetchFromGitHub,
 }:
 
 buildGoModule rec {
   pname = "gau";
-  version = "2.2.1";
+  version = "2.2.3";
 
   src = fetchFromGitHub {
     owner = "lc";
-    repo = pname;
-    rev = "v${version}";
-    sha256 = "sha256-AtKakeQnxRbFAbK/aQ4OQoEowN753jm4P4M57Oo3x1Y=";
+    repo = "gau";
+    rev = "refs/tags/v${version}";
+    hash = "sha256-1sF33uat6nwtTaXbZzO8YF4jewyQJ6HvI2l/zyTrJsg=";
   };
 
   vendorHash = "sha256-nhsGhuX5AJMHg+zQUt1G1TwVgMCxnuJ2T3uBrx7bJNs=";
 
+  ldflags = [
+    "-w"
+    "-s"
+  ];
+
   meta = with lib; {
     description = "Tool to fetch known URLs";
-    mainProgram = "gau";
     longDescription = ''
       getallurls (gau) fetches known URLs from various sources for any
       given domain.
@@ -26,5 +31,6 @@ buildGoModule rec {
     homepage = "https://github.com/lc/gau";
     license = licenses.mit;
     maintainers = with maintainers; [ fab ];
+    mainProgram = "gau";
   };
 }
diff --git a/pkgs/tools/security/gencfsm/default.nix b/pkgs/tools/security/gencfsm/default.nix
index 537b2caf45b3..42a0b3d9188d 100644
--- a/pkgs/tools/security/gencfsm/default.nix
+++ b/pkgs/tools/security/gencfsm/default.nix
@@ -1,5 +1,5 @@
 { lib, stdenv, fetchurl, autoconf, automake, intltool, libtool, pkg-config
-, encfs, libsecret , glib , libgee, gtk3, vala, wrapGAppsHook, xorg
+, encfs, libsecret , glib , libgee, gtk3, vala, wrapGAppsHook3, xorg
 , gobject-introspection
 }:
 
@@ -20,7 +20,7 @@ stdenv.mkDerivation rec {
     libtool
     pkg-config
     vala
-    wrapGAppsHook
+    wrapGAppsHook3
     gobject-introspection
   ];
   buildInputs = [
diff --git a/pkgs/tools/security/ggshield/default.nix b/pkgs/tools/security/ggshield/default.nix
index eb0c5c9d2a95..45b66653d6bf 100644
--- a/pkgs/tools/security/ggshield/default.nix
+++ b/pkgs/tools/security/ggshield/default.nix
@@ -1,29 +1,29 @@
-{ lib
-, fetchFromGitHub
-, git
-, python3
+{
+  lib,
+  fetchFromGitHub,
+  git,
+  python3,
 }:
 
 python3.pkgs.buildPythonApplication rec {
   pname = "ggshield";
-  version = "1.25.0";
+  version = "1.27.0";
   pyproject = true;
 
   src = fetchFromGitHub {
     owner = "GitGuardian";
     repo = "ggshield";
     rev = "refs/tags/v${version}";
-    hash = "sha256-D6+0ZYuOiCy5LonP1Ob7PlWmBXvLwU3PODOT6F+70HY=";
+    hash = "sha256-esrDJar9J7V0ZIupfyURFWeGigV04Kxo06o/jMz17Fk=";
   };
 
   pythonRelaxDeps = true;
 
-  nativeBuildInputs = with python3.pkgs; [
-    pythonRelaxDepsHook
-    setuptools
-  ];
+  build-system = with python3.pkgs; [ setuptools ];
+
+  nativeBuildInputs = with python3.pkgs; [ pythonRelaxDepsHook ];
 
-  propagatedBuildInputs = with python3.pkgs; [
+  dependencies = with python3.pkgs; [
     appdirs
     charset-normalizer
     click
@@ -40,25 +40,27 @@ python3.pkgs.buildPythonApplication rec {
     rich
   ];
 
-  nativeCheckInputs = [
-    git
-  ] ++ (with python3.pkgs; [
-    jsonschema
-    pyfakefs
-    pytest-mock
-    pytest-voluptuous
-    pytestCheckHook
-    snapshottest
-    vcrpy
-  ]);
+  nativeCheckInputs =
+    [ git ]
+    ++ (with python3.pkgs; [
+      jsonschema
+      pyfakefs
+      pytest-mock
+      pytest-voluptuous
+      pytestCheckHook
+      snapshottest
+      vcrpy
+    ]);
 
-  pythonImportsCheck = [
-    "ggshield"
-  ];
+  pythonImportsCheck = [ "ggshield" ];
 
   disabledTestPaths = [
     # Don't run functional tests
     "tests/functional/"
+    "tests/unit/cmd/honeytoken"
+    "tests/unit/cmd/iac"
+    "tests/unit/cmd/sca/"
+    "tests/unit/cmd/scan/"
   ];
 
   disabledTests = [
@@ -77,10 +79,10 @@ python3.pkgs.buildPythonApplication rec {
 
   meta = with lib; {
     description = "Tool to find and fix various types of hardcoded secrets and infrastructure-as-code misconfigurations";
-    mainProgram = "ggshield";
     homepage = "https://github.com/GitGuardian/ggshield";
     changelog = "https://github.com/GitGuardian/ggshield/blob/${version}/CHANGELOG.md";
     license = licenses.mit;
     maintainers = with maintainers; [ fab ];
+    mainProgram = "ggshield";
   };
 }
diff --git a/pkgs/tools/security/ghidra/build.nix b/pkgs/tools/security/ghidra/build.nix
index cb658615f304..f8f0fb3ae5a8 100644
--- a/pkgs/tools/security/ghidra/build.nix
+++ b/pkgs/tools/security/ghidra/build.nix
@@ -15,13 +15,13 @@
 let
   pkg_path = "$out/lib/ghidra";
   pname = "ghidra";
-  version = "11.0.2";
+  version = "11.0.3";
 
   src = fetchFromGitHub {
     owner = "NationalSecurityAgency";
     repo = "Ghidra";
     rev = "Ghidra_${version}_build";
-    hash = "sha256-Q5nolgqBG2LFVoEeEtzEPTt/cAHubPlRIFt3SYX9z1Y=";
+    hash = "sha256-Id595aKYHP1R3Zw9sV1oL32nAUAr7D/K4wn6Zs7q3Jo=";
   };
 
   gradle = gradle_7;
@@ -71,6 +71,7 @@ HERE
 
     nativeBuildInputs = [ gradle perl ] ++ lib.optional stdenv.isDarwin xcbuild;
     buildPhase = ''
+      runHook preBuild
       export HOME="$NIX_BUILD_TOP/home"
       mkdir -p "$HOME"
       export JAVA_TOOL_OPTIONS="-Duser.home='$HOME'"
@@ -81,13 +82,16 @@ HERE
 
       # Then, fetch the maven dependencies.
       gradle --no-daemon --info -Dorg.gradle.java.home=${openjdk17} resolveDependencies
+      runHook postBuild
     '';
     # perl code mavenizes pathes (com.squareup.okio/okio/1.13.0/a9283170b7305c8d92d25aff02a6ab7e45d06cbe/okio-1.13.0.jar -> com/squareup/okio/okio/1.13.0/okio-1.13.0.jar)
     installPhase = ''
+      runHook preInstall
       find $GRADLE_USER_HOME/caches/modules-2 -type f -regex '.*\.\(jar\|pom\)' \
         | perl -pe 's#(.*/([^/]+)/([^/]+)/([^/]+)/[0-9a-f]{30,40}/([^/\s]+))$# ($x = $2) =~ tr|\.|/|; "install -Dm444 $1 \$out/maven/$x/$3/$4/$5" #e' \
         | sh
       cp -r dependencies $out/dependencies
+      runHook postInstall
     '';
     outputHashAlgo = "sha256";
     outputHashMode = "recursive";
@@ -108,6 +112,7 @@ in stdenv.mkDerivation {
   ];
 
   buildPhase = ''
+    runHook preBuild
     export HOME="$NIX_BUILD_TOP/home"
     mkdir -p "$HOME"
     export JAVA_TOOL_OPTIONS="-Duser.home='$HOME'"
@@ -117,9 +122,11 @@ in stdenv.mkDerivation {
     sed -i "s#mavenLocal()#mavenLocal(); maven { url '${deps}/maven' }#g" build.gradle
 
     gradle --offline --no-daemon --info -Dorg.gradle.java.home=${openjdk17} buildGhidra
+    runHook postBuild
   '';
 
   installPhase = ''
+    runHook preInstall
     mkdir -p "${pkg_path}" "$out/share/applications"
 
     ZIP=build/dist/$(ls build/dist)
@@ -138,6 +145,7 @@ in stdenv.mkDerivation {
       mkdir -pv "$out/share/icons/hicolor/$res/apps"
       mv "$f" "$out/share/icons/hicolor/$res/apps/ghidra.png"
     done;
+    runHook postInstall
   '';
 
   postFixup = ''
diff --git a/pkgs/tools/security/gnome-keysign/default.nix b/pkgs/tools/security/gnome-keysign/default.nix
index c70a86aaf361..af794097cf55 100644
--- a/pkgs/tools/security/gnome-keysign/default.nix
+++ b/pkgs/tools/security/gnome-keysign/default.nix
@@ -1,7 +1,7 @@
 { lib
 , fetchFromGitLab
 , python3
-, wrapGAppsHook
+, wrapGAppsHook3
 , gobject-introspection
 , gtk3
 , glib
@@ -21,7 +21,7 @@ python3.pkgs.buildPythonApplication rec {
   };
 
   nativeBuildInputs = [
-    wrapGAppsHook
+    wrapGAppsHook3
     gobject-introspection
   ] ++ (with python3.pkgs; [
     babel
diff --git a/pkgs/tools/security/gorilla-bin/default.nix b/pkgs/tools/security/gorilla-bin/default.nix
index 898abbbd25a4..95ca0b08bf8e 100644
--- a/pkgs/tools/security/gorilla-bin/default.nix
+++ b/pkgs/tools/security/gorilla-bin/default.nix
@@ -37,6 +37,6 @@ stdenv.mkDerivation rec {
     maintainers = [ lib.maintainers.namore ];
     platforms = [ "x86_64-linux" ];
     sourceProvenance = with lib.sourceTypes; [ binaryNativeCode ];
-    license = lib.licenses.gpl2;
+    license = lib.licenses.gpl2Plus;
   };
 }
diff --git a/pkgs/tools/security/gotestwaf/default.nix b/pkgs/tools/security/gotestwaf/default.nix
index a8a759dd1c77..28305ceb4e8e 100644
--- a/pkgs/tools/security/gotestwaf/default.nix
+++ b/pkgs/tools/security/gotestwaf/default.nix
@@ -1,19 +1,20 @@
-{ lib
-, buildGoModule
-, fetchFromGitHub
-, gotestwaf
-, testers
+{
+  lib,
+  buildGoModule,
+  fetchFromGitHub,
+  gotestwaf,
+  testers,
 }:
 
 buildGoModule rec {
   pname = "gotestwaf";
-  version = "0.4.18";
+  version = "0.4.19";
 
   src = fetchFromGitHub {
     owner = "wallarm";
     repo = "gotestwaf";
     rev = "refs/tags/v${version}";
-    hash = "sha256-+AM+x/jKkoXLeWOhrCALhCDuoGCl5jt0BiCit885K7I=";
+    hash = "sha256-ax2HPhdaqawpFe2AZg3SVsEJLG7gEgL7632iRADpaa8=";
   };
 
   vendorHash = null;
diff --git a/pkgs/tools/security/hashcash/default.nix b/pkgs/tools/security/hashcash/default.nix
index f86684178fcb..8b1fdea1c935 100644
--- a/pkgs/tools/security/hashcash/default.nix
+++ b/pkgs/tools/security/hashcash/default.nix
@@ -25,7 +25,7 @@ stdenv.mkDerivation rec {
   meta = with lib; {
     description = "Proof-of-work algorithm used as spam and denial-of-service counter measure";
     homepage = "http://hashcash.org";
-    license = licenses.gpl2;
+    license = licenses.gpl2Only;
     maintainers = with maintainers; [ kisonecat ];
   };
 }
diff --git a/pkgs/tools/security/hashdeep/default.nix b/pkgs/tools/security/hashdeep/default.nix
index 5bc752eb3611..f4f327b48d80 100644
--- a/pkgs/tools/security/hashdeep/default.nix
+++ b/pkgs/tools/security/hashdeep/default.nix
@@ -33,7 +33,7 @@ stdenv.mkDerivation rec {
   meta = with lib; {
     description = "A set of cross-platform tools to compute hashes";
     homepage = "https://github.com/jessek/hashdeep";
-    license = licenses.gpl2;
+    license = licenses.gpl2Only;
     maintainers = [ maintainers.karantan ];
     platforms = platforms.all;
   };
diff --git a/pkgs/tools/security/kestrel/default.nix b/pkgs/tools/security/kestrel/default.nix
index a94b412e67ee..329a31447daa 100644
--- a/pkgs/tools/security/kestrel/default.nix
+++ b/pkgs/tools/security/kestrel/default.nix
@@ -6,16 +6,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "kestrel";
-  version = "1.0.0";
+  version = "1.0.1";
 
   src = fetchFromGitHub {
     owner = "finfet";
     repo = pname;
     rev = "v${version}";
-    hash = "sha256-n0XIFBCwpc6QTj3PjGp+fYtU4U+RAfA4PRcettFlxVA=";
+    hash = "sha256-aj8c4Hagdqoi7Q/AM0drjyrGOvqrT35sEjc2TC0ei6M=";
   };
 
-  cargoHash = "sha256-GZK4IaAolU1up2bYd/2tBahcCP70hO5/shDODUD+aRE=";
+  cargoHash = "sha256-D3yGIZr6/jaySacdz0yOPQUpKsuYlgBGx0V/4lXuVuw=";
 
   nativeBuildInputs = [
     installShellFiles
diff --git a/pkgs/tools/security/keybase/gui.nix b/pkgs/tools/security/keybase/gui.nix
index 577e91c24e59..e9f5f52e8a0b 100644
--- a/pkgs/tools/security/keybase/gui.nix
+++ b/pkgs/tools/security/keybase/gui.nix
@@ -1,6 +1,6 @@
 { stdenv, lib, fetchurl, alsa-lib, atk, cairo, cups, udev, libdrm, mesa
 , dbus, expat, fontconfig, freetype, gdk-pixbuf, glib, gtk3, libappindicator-gtk3
-, libnotify, nspr, nss, pango, systemd, xorg, autoPatchelfHook, wrapGAppsHook
+, libnotify, nspr, nss, pango, systemd, xorg, autoPatchelfHook, wrapGAppsHook3
 , runtimeShell, gsettings-desktop-schemas }:
 
 let
@@ -18,7 +18,7 @@ stdenv.mkDerivation rec {
 
   nativeBuildInputs = [
     autoPatchelfHook
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
diff --git a/pkgs/tools/security/knowsmore/default.nix b/pkgs/tools/security/knowsmore/default.nix
index f73ae1032efa..4c460eabcbe5 100644
--- a/pkgs/tools/security/knowsmore/default.nix
+++ b/pkgs/tools/security/knowsmore/default.nix
@@ -1,21 +1,33 @@
-{ lib
-, fetchFromGitHub
-, python3
+{
+  lib,
+  fetchFromGitHub,
+  python3,
 }:
 
 python3.pkgs.buildPythonApplication rec {
   pname = "knowsmore";
-  version = "0.1.37";
-  format = "setuptools";
+  version = "0.1.38";
+  pyproject = true;
 
   src = fetchFromGitHub {
     owner = "helviojunior";
     repo = "knowsmore";
     rev = "refs/tags/v${version}";
-    hash = "sha256-UxBoWK3L4u9xSQaGGHpzvs/mRlmhF3EqiS/4BYyTKos=";
+    hash = "sha256-A68JuzlWvq3OAtgq6uAFcTTYKmL7xjKWZ0HQfVXKt4k=";
   };
 
-  propagatedBuildInputs = with python3.pkgs; [
+  pythonRelaxDeps = [
+    "neo4j"
+    "urllib3"
+  ];
+
+  pythonRemoveDeps = [ "bs4" ];
+
+  build-system = with python3.pkgs; [ setuptools ];
+
+  nativeBuildInputs = with python3.pkgs; [ pythonRelaxDepsHook ];
+
+  dependencies = with python3.pkgs; [
     aioconsole
     ansi2image
     beautifulsoup4
@@ -33,24 +45,18 @@ python3.pkgs.buildPythonApplication rec {
     xmltodict
   ];
 
-  nativeCheckInputs = with python3.pkgs; [
-    pytestCheckHook
-  ];
+  nativeCheckInputs = with python3.pkgs; [ pytestCheckHook ];
 
-  pythonImportsCheck = [
-    "knowsmore"
-  ];
+  pythonImportsCheck = [ "knowsmore" ];
 
-  pytestFlagsArray = [
-    "tests/tests*"
-  ];
+  pytestFlagsArray = [ "tests/tests*" ];
 
   meta = with lib; {
     description = "Tool for pentesting Microsoft Active Directory";
-    mainProgram = "knowsmore";
     homepage = "https://github.com/helviojunior/knowsmore";
     changelog = "https://github.com/helviojunior/knowsmore/releases/tag/v${version}";
     license = licenses.gpl3Only;
     maintainers = with maintainers; [ fab ];
+    mainProgram = "knowsmore";
   };
 }
diff --git a/pkgs/tools/security/kubeclarity/default.nix b/pkgs/tools/security/kubeclarity/default.nix
index 38de010dd931..5a9692af7924 100644
--- a/pkgs/tools/security/kubeclarity/default.nix
+++ b/pkgs/tools/security/kubeclarity/default.nix
@@ -4,6 +4,7 @@
 , fetchFromGitHub
 , lvm2
 , pkg-config
+, stdenv
 }:
 
 buildGoModule rec {
@@ -17,19 +18,23 @@ buildGoModule rec {
     hash = "sha256-buEahr6lr+C/99ANAgYdexPX76ECW6yGMes8u2GZKh4=";
   };
 
-  vendorHash = "sha256-eAqF0ohZGryRh4u+j/30BObYP23yyrTecPrt+xmn9Sg=";
+  vendorHash = "sha256-JY64fqzNBpo9Jwo8sWsWTVVAO5zzwxwXy0A2bgqJHuU=";
+
+  proxyVendor = true;
 
   nativeBuildInputs = [
     pkg-config
   ];
 
-  buildInputs = [
+  buildInputs = lib.optionals stdenv.isLinux [
     btrfs-progs
     lvm2
   ];
 
   sourceRoot = "${src.name}/cli";
 
+  CGO_ENABLED = "0";
+
   ldflags = [
     "-s"
     "-w"
diff --git a/pkgs/tools/security/kubescape/default.nix b/pkgs/tools/security/kubescape/default.nix
index 2c74013c3ad1..bfc482613d54 100644
--- a/pkgs/tools/security/kubescape/default.nix
+++ b/pkgs/tools/security/kubescape/default.nix
@@ -1,38 +1,33 @@
-{ lib
-, stdenv
-, buildGoModule
-, fetchFromGitHub
-, git
-, installShellFiles
-, kubescape
-, testers
+{
+  lib,
+  stdenv,
+  buildGoModule,
+  fetchFromGitHub,
+  git,
+  installShellFiles,
+  kubescape,
+  testers,
 }:
 
 buildGoModule rec {
   pname = "kubescape";
-  version = "3.0.8";
+  version = "3.0.10";
 
   src = fetchFromGitHub {
     owner = "kubescape";
     repo = "kubescape";
     rev = "refs/tags/v${version}";
-    hash = "sha256-ZGDE9go8BmaXE1YFT/z5Nob90MhsKZ6oKrodDMu2npY=";
+    hash = "sha256-r6w2Cfyjxqf/1DMBGgmE8Oh/WnvBOa7mAEGXnPjk1Pg=";
     fetchSubmodules = true;
   };
 
-  vendorHash = "sha256-qFJVoWzU9rqpYbb8gzdK33rq///zizxVkWhsNV8OXOM=";
+  vendorHash = "sha256-WPa6IKPjdBtoHYKA2yYtaI1LCbkyv374fcThxbSEKxo=";
 
-  subPackages = [
-    "."
-  ];
+  subPackages = [ "." ];
 
-  nativeBuildInputs = [
-    installShellFiles
-  ];
+  nativeBuildInputs = [ installShellFiles ];
 
-  nativeCheckInputs = [
-    git
-  ];
+  nativeCheckInputs = [ git ];
 
   ldflags = [
     "-s"
@@ -49,7 +44,6 @@ buildGoModule rec {
     rm core/cautils/getter/downloadreleasedpolicy_test.go
     rm core/core/initutils_test.go
     rm core/core/list_test.go
-    rm core/pkg/resourcehandler/remotegitutils_test.go
 
     # Remove tests that use networking
     substituteInPlace core/pkg/resourcehandler/repositoryscanner_test.go \
@@ -90,7 +84,10 @@ buildGoModule rec {
       Jenkins, CircleCI and Github workflows.
     '';
     license = licenses.asl20;
-    maintainers = with maintainers; [ fab jk ];
+    maintainers = with maintainers; [
+      fab
+      jk
+    ];
     mainProgram = "kubescape";
     broken = stdenv.isDarwin;
   };
diff --git a/pkgs/tools/security/medusa/default.nix b/pkgs/tools/security/medusa/default.nix
index 3a29f2a6e283..c7008be8f948 100644
--- a/pkgs/tools/security/medusa/default.nix
+++ b/pkgs/tools/security/medusa/default.nix
@@ -32,7 +32,7 @@ stdenv.mkDerivation rec {
     homepage = "https://github.com/jmk-foofus/medusa";
     description = "A speedy, parallel, and modular, login brute-forcer";
     mainProgram = "medusa";
-    license = licenses.gpl2;
+    license = licenses.gpl2Plus;
     maintainers = with maintainers; [ ];
   };
 }
diff --git a/pkgs/tools/security/metasploit/Gemfile b/pkgs/tools/security/metasploit/Gemfile
index 6d2752ed9350..03770b1cc660 100644
--- a/pkgs/tools/security/metasploit/Gemfile
+++ b/pkgs/tools/security/metasploit/Gemfile
@@ -1,4 +1,4 @@
 # frozen_string_literal: true
 source "https://rubygems.org"
 
-gem "metasploit-framework", git: "https://github.com/rapid7/metasploit-framework", ref: "refs/tags/6.4.6"
+gem "metasploit-framework", git: "https://github.com/rapid7/metasploit-framework", ref: "refs/tags/6.4.8"
diff --git a/pkgs/tools/security/metasploit/Gemfile.lock b/pkgs/tools/security/metasploit/Gemfile.lock
index 1da9542ad25b..0cbc2a918ad4 100644
--- a/pkgs/tools/security/metasploit/Gemfile.lock
+++ b/pkgs/tools/security/metasploit/Gemfile.lock
@@ -1,9 +1,9 @@
 GIT
   remote: https://github.com/rapid7/metasploit-framework
-  revision: 55ea82f7d3f98652ea81ab1d29d3be3e55528345
-  ref: refs/tags/6.4.6
+  revision: e9f897a525576857abd73c96ac64beb0094ad547
+  ref: refs/tags/6.4.8
   specs:
-    metasploit-framework (6.4.6)
+    metasploit-framework (6.4.8)
       actionpack (~> 7.0.0)
       activerecord (~> 7.0.0)
       activesupport (~> 7.0.0)
diff --git a/pkgs/tools/security/metasploit/default.nix b/pkgs/tools/security/metasploit/default.nix
index f2f5ca23e802..e9600b703bf8 100644
--- a/pkgs/tools/security/metasploit/default.nix
+++ b/pkgs/tools/security/metasploit/default.nix
@@ -15,13 +15,13 @@ let
   };
 in stdenv.mkDerivation rec {
   pname = "metasploit-framework";
-  version = "6.4.6";
+  version = "6.4.8";
 
   src = fetchFromGitHub {
     owner = "rapid7";
     repo = "metasploit-framework";
     rev = "refs/tags/${version}";
-    hash = "sha256-2O/Hl95yd+4va6TGxd5zYdsjcgBwCGOcZ2jvtoOBhBE=";
+    hash = "sha256-a5Igd8i5K9qt6r5dHuzRMWLrXZn95PJtYnW4A4HcUNE=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/tools/security/metasploit/gemset.nix b/pkgs/tools/security/metasploit/gemset.nix
index d829b53f6c5c..ee104260ca7b 100644
--- a/pkgs/tools/security/metasploit/gemset.nix
+++ b/pkgs/tools/security/metasploit/gemset.nix
@@ -674,12 +674,12 @@
     platforms = [];
     source = {
       fetchSubmodules = false;
-      rev = "55ea82f7d3f98652ea81ab1d29d3be3e55528345";
-      sha256 = "04c4h61vdvv8cyf6623h01r27nv1fggcbim4dcpywxvjvsbwgvyq";
+      rev = "e9f897a525576857abd73c96ac64beb0094ad547";
+      sha256 = "1lahvj0h7f3mc9nz5r7xk5fynqiis7n1wpdyxanxlaxrr1vj14kb";
       type = "git";
       url = "https://github.com/rapid7/metasploit-framework";
     };
-    version = "6.4.6";
+    version = "6.4.8";
   };
   metasploit-model = {
     groups = ["default"];
diff --git a/pkgs/tools/security/mfcuk/default.nix b/pkgs/tools/security/mfcuk/default.nix
index d6736b5b097a..74761dd994e8 100644
--- a/pkgs/tools/security/mfcuk/default.nix
+++ b/pkgs/tools/security/mfcuk/default.nix
@@ -15,7 +15,7 @@ stdenv.mkDerivation {
   meta = with lib; {
     description = "MiFare Classic Universal toolKit";
     mainProgram = "mfcuk";
-    license = licenses.gpl2;
+    license = licenses.gpl2Plus;
     homepage = "https://github.com/nfc-tools/mfcuk";
     maintainers = with maintainers; [ offline ];
     platforms = platforms.unix;
diff --git a/pkgs/tools/security/mfoc/default.nix b/pkgs/tools/security/mfoc/default.nix
index 9ede0ffc6157..bc85261305d3 100644
--- a/pkgs/tools/security/mfoc/default.nix
+++ b/pkgs/tools/security/mfoc/default.nix
@@ -28,7 +28,7 @@ stdenv.mkDerivation rec {
   meta = with lib; {
     description = "Mifare Classic Offline Cracker";
     mainProgram = "mfoc";
-    license = licenses.gpl2;
+    license = licenses.gpl2Plus;
     homepage = "https://github.com/nfc-tools/mfoc";
     maintainers = with maintainers; [ offline ];
     platforms = platforms.unix;
diff --git a/pkgs/tools/security/mkpasswd/default.nix b/pkgs/tools/security/mkpasswd/default.nix
index 00b1e8a01501..edbdfdc711c6 100644
--- a/pkgs/tools/security/mkpasswd/default.nix
+++ b/pkgs/tools/security/mkpasswd/default.nix
@@ -15,7 +15,7 @@ stdenv.mkDerivation {
     homepage = "https://packages.qa.debian.org/w/whois.html";
     description = "Overfeatured front-end to crypt, from the Debian whois package";
     mainProgram = "mkpasswd";
-    license = licenses.gpl2;
+    license = licenses.gpl2Plus;
     maintainers = with maintainers; [ fpletz ];
     platforms = platforms.unix;
   };
diff --git a/pkgs/tools/security/naabu/default.nix b/pkgs/tools/security/naabu/default.nix
index a10c6601412b..cf82ca531195 100644
--- a/pkgs/tools/security/naabu/default.nix
+++ b/pkgs/tools/security/naabu/default.nix
@@ -6,16 +6,16 @@
 
 buildGoModule rec {
   pname = "naabu";
-  version = "2.3.0";
+  version = "2.3.1";
 
   src = fetchFromGitHub {
     owner = "projectdiscovery";
     repo = "naabu";
     rev = "refs/tags/v${version}";
-    hash = "sha256-4aFr0kSKsNVXmYNYSt6mP4HryyIYvUKdzIYWjgPhG1Y=";
+    hash = "sha256-BICNSizc5DD538ZUoRUC1jSDCEkyrh7iYOM4a6cBqkQ=";
   };
 
-  vendorHash = "sha256-QHVB8ovAWECb4n6CKTK4tnGgTrJSFxIV0KZk4PEYInE=";
+  vendorHash = "sha256-GhnEjlV6b61VH/eswBQ9Lelc0IgGawjDRZHzGt7653Q=";
 
   buildInputs = [
     libpcap
diff --git a/pkgs/tools/security/nasty/default.nix b/pkgs/tools/security/nasty/default.nix
index f0bd0d406c33..80b6a2da8e2d 100644
--- a/pkgs/tools/security/nasty/default.nix
+++ b/pkgs/tools/security/nasty/default.nix
@@ -29,7 +29,7 @@ stdenv.mkDerivation rec {
     this program could be at least 100x faster.
     '';
     homepage = "http://www.vanheusden.com/nasty/";
-    license = licenses.gpl2;
+    license = licenses.gpl2Only;
     maintainers = with maintainers; [ davidak ];
     platforms = platforms.unix;
   };
diff --git a/pkgs/tools/security/nmap/default.nix b/pkgs/tools/security/nmap/default.nix
index 64dcd4f220bd..8d5b3d90e5c6 100644
--- a/pkgs/tools/security/nmap/default.nix
+++ b/pkgs/tools/security/nmap/default.nix
@@ -46,7 +46,7 @@ stdenv.mkDerivation rec {
   meta = with lib; {
     description = "A free and open source utility for network discovery and security auditing";
     homepage    = "http://www.nmap.org";
-    license     = licenses.gpl2;
+    license     = licenses.gpl2Only;
     platforms   = platforms.all;
     maintainers = with maintainers; [ thoughtpolice fpletz ];
   };
diff --git a/pkgs/tools/security/nmap/qt.nix b/pkgs/tools/security/nmap/qt.nix
index 56ebc5db6213..956649088ff3 100644
--- a/pkgs/tools/security/nmap/qt.nix
+++ b/pkgs/tools/security/nmap/qt.nix
@@ -54,7 +54,7 @@ stdenv.mkDerivation rec {
   meta = with lib; {
     description = "Qt frontend for nmap";
     mainProgram = "nmapsi4";
-    license = licenses.gpl2;
+    license = licenses.gpl2Plus;
     maintainers = with maintainers; [ peterhoeg ];
     inherit (src.meta) homepage;
   };
diff --git a/pkgs/tools/security/notation/default.nix b/pkgs/tools/security/notation/default.nix
index 07c9ef499717..f9318296060f 100644
--- a/pkgs/tools/security/notation/default.nix
+++ b/pkgs/tools/security/notation/default.nix
@@ -1,4 +1,4 @@
-{ lib, buildGoModule, fetchFromGitHub, testers, notation }:
+{ lib, buildGoModule, fetchFromGitHub, installShellFiles, testers, notation }:
 
 buildGoModule rec {
   pname = "notation";
@@ -13,6 +13,10 @@ buildGoModule rec {
 
   vendorHash = "sha256-USkufc1dG4eyRfRJHSX4mVZHnvOc5onHenF98Aedac4=";
 
+  nativeBuildInputs = [
+    installShellFiles
+  ];
+
   # This is a Go sub-module and cannot be built directly (e2e tests).
   excludedPackages = [ "./test" ];
 
@@ -23,6 +27,13 @@ buildGoModule rec {
     "-X github.com/notaryproject/notation/internal/version.BuildMetadata="
   ];
 
+  postInstall = ''
+    installShellCompletion --cmd notation \
+      --bash <($out/bin/notation completion bash) \
+      --fish <($out/bin/notation completion fish) \
+      --zsh <($out/bin/notation completion zsh)
+  '';
+
   passthru.tests.version = testers.testVersion {
     package = notation;
     command = "notation version";
diff --git a/pkgs/tools/security/nuclei/default.nix b/pkgs/tools/security/nuclei/default.nix
index 933b3241d8ee..259680693dac 100644
--- a/pkgs/tools/security/nuclei/default.nix
+++ b/pkgs/tools/security/nuclei/default.nix
@@ -6,16 +6,16 @@
 
 buildGoModule rec {
   pname = "nuclei";
-  version = "3.2.5";
+  version = "3.2.7";
 
   src = fetchFromGitHub {
     owner = "projectdiscovery";
     repo = "nuclei";
     rev = "refs/tags/v${version}";
-    hash = "sha256-eoTENTqQgBFS/a7hakJh3eugoSrQrYMSnlT0381308Q=";
+    hash = "sha256-sXrDmtuKfFeYAJnxIZGQiYiAjx40YQLfnMQ8YUCkZ7s=";
   };
 
-  vendorHash = "sha256-+TIovSS13z9NIixEOFDPH3aOEoH7emlTunH9IoG/RWY=";
+  vendorHash = "sha256-PXa8Fd7LE6uebpep1/HV2EuJdzj8cxeiZ4DYALIoh2A=";
 
   subPackages = [ "cmd/nuclei/" ];
 
diff --git a/pkgs/tools/security/onioncircuits/default.nix b/pkgs/tools/security/onioncircuits/default.nix
index 95692ef1c188..048631e2b774 100644
--- a/pkgs/tools/security/onioncircuits/default.nix
+++ b/pkgs/tools/security/onioncircuits/default.nix
@@ -5,7 +5,7 @@
 , gobject-introspection
 , intltool
 , python3
-, wrapGAppsHook
+, wrapGAppsHook3
 }:
 
 python3.pkgs.buildPythonApplication rec {
@@ -23,7 +23,7 @@ python3.pkgs.buildPythonApplication rec {
   nativeBuildInputs = [
     gobject-introspection
     intltool
-    wrapGAppsHook
+    wrapGAppsHook3
     python3.pkgs.distutils-extra
   ];
 
diff --git a/pkgs/tools/security/onlykey/default.nix b/pkgs/tools/security/onlykey/default.nix
index c63173d889b2..a9337be7ac05 100644
--- a/pkgs/tools/security/onlykey/default.nix
+++ b/pkgs/tools/security/onlykey/default.nix
@@ -5,7 +5,7 @@
 , makeDesktopItem
 , stdenv
 , writeShellScript
-, wrapGAppsHook
+, wrapGAppsHook3
 }:
 
 let
@@ -53,7 +53,7 @@ stdenv.mkDerivation {
   pname = "${onlykey.packageName}";
   inherit (onlykey) version;
   dontUnpack = true;
-  nativeBuildInputs = [ wrapGAppsHook copyDesktopItems ];
+  nativeBuildInputs = [ wrapGAppsHook3 copyDesktopItems ];
   desktopItems = [
     (makeDesktopItem {
       name = onlykey.packageName;
diff --git a/pkgs/tools/security/ossec/agent.nix b/pkgs/tools/security/ossec/agent.nix
index 003d2141c567..c5ba8688123b 100644
--- a/pkgs/tools/security/ossec/agent.nix
+++ b/pkgs/tools/security/ossec/agent.nix
@@ -61,7 +61,7 @@ EOF
   meta = with lib; {
     description = "Open source host-based instrusion detection system";
     homepage = "https://www.ossec.net";
-    license = licenses.gpl2;
+    license = licenses.gpl2Only;
     maintainers = with maintainers; [ happysalada ];
     platforms = platforms.all;
   };
diff --git a/pkgs/tools/security/ossec/server.nix b/pkgs/tools/security/ossec/server.nix
index 1a7a3e813675..2c015617176c 100644
--- a/pkgs/tools/security/ossec/server.nix
+++ b/pkgs/tools/security/ossec/server.nix
@@ -62,7 +62,7 @@ EOF
   meta = with lib; {
     description = "Open source host-based instrusion detection system";
     homepage = "https://www.ossec.net";
-    license = licenses.gpl2;
+    license = licenses.gpl2Only;
     maintainers = with maintainers; [ happysalada ];
     platforms = platforms.all;
   };
diff --git a/pkgs/tools/security/osv-scanner/default.nix b/pkgs/tools/security/osv-scanner/default.nix
index 70393cb9aad8..3196ebe5706b 100644
--- a/pkgs/tools/security/osv-scanner/default.nix
+++ b/pkgs/tools/security/osv-scanner/default.nix
@@ -7,16 +7,16 @@
 
 buildGoModule rec {
   pname = "osv-scanner";
-  version = "1.7.2";
+  version = "1.7.3";
 
   src = fetchFromGitHub {
     owner = "google";
     repo = "osv-scanner";
     rev = "refs/tags/v${version}";
-    hash = "sha256-UE6iCvv/ByODZX+FoLvIw+EeyISWFkHb4xK5L33w1hU=";
+    hash = "sha256-tagTrjsYPT5csm841HvPbtUsbsaapS8JuHwsPTZWheA=";
   };
 
-  vendorHash = "sha256-c/Wjhpa7upSRMaU+rheGF9dbvK0MQe3ZmPLpR5bRiUI=";
+  vendorHash = "sha256-yu6qefmTiMRGeyOkiQVOtXQu3BGE2SBHerWNlDDlZxw=";
 
   subPackages = [
     "cmd/osv-scanner"
diff --git a/pkgs/tools/security/paperkey/default.nix b/pkgs/tools/security/paperkey/default.nix
index a22c1617f07b..3b3a2d81d106 100644
--- a/pkgs/tools/security/paperkey/default.nix
+++ b/pkgs/tools/security/paperkey/default.nix
@@ -28,7 +28,7 @@ stdenv.mkDerivation rec {
       are generally used to back up computer data.
     '';
     homepage = "https://www.jabberwocky.com/software/paperkey/";
-    license = licenses.gpl2;
+    license = licenses.gpl2Plus;
     platforms = platforms.unix;
     maintainers = with maintainers; [ AndersonTorres peterhoeg ];
   };
diff --git a/pkgs/tools/security/pass/rofi-pass.nix b/pkgs/tools/security/pass/rofi-pass.nix
index 9bf699571592..2c1e1ad5b7d2 100644
--- a/pkgs/tools/security/pass/rofi-pass.nix
+++ b/pkgs/tools/security/pass/rofi-pass.nix
@@ -29,7 +29,7 @@ assert lib.assertOneOf "backend" backend [ "x11" "wayland" ];
 
 stdenv.mkDerivation {
   pname = "rofi-pass";
-  version = "unstable-2024-02-13";
+  version = "2.0.2-unstable-2024-02-13";
 
   src = fetchFromGitHub {
     owner = "carnager";
diff --git a/pkgs/tools/security/passff-host/default.nix b/pkgs/tools/security/passff-host/default.nix
index bc882cb419f6..3ec277ce273a 100644
--- a/pkgs/tools/security/passff-host/default.nix
+++ b/pkgs/tools/security/passff-host/default.nix
@@ -42,7 +42,7 @@ stdenv.mkDerivation rec {
   meta = with lib; {
     description = "Host app for the WebExtension PassFF";
     homepage = "https://github.com/passff/passff-host";
-    license = licenses.gpl2;
+    license = licenses.gpl2Only;
     maintainers = with maintainers; [ ];
   };
 }
diff --git a/pkgs/tools/security/pcsc-tools/default.nix b/pkgs/tools/security/pcsc-tools/default.nix
index c479caa0a613..371a159f8c61 100644
--- a/pkgs/tools/security/pcsc-tools/default.nix
+++ b/pkgs/tools/security/pcsc-tools/default.nix
@@ -6,9 +6,9 @@
 , gobject-introspection
 , makeWrapper
 , pkg-config
-, wrapGAppsHook
-, systemd
-, dbus
+, wrapGAppsHook3
+, systemdSupport ? lib.meta.availableOn stdenv.hostPlatform systemd, systemd
+, dbusSupport ? stdenv.isLinux, dbus
 , pcsclite
 , PCSC
 , wget
@@ -16,8 +16,13 @@
 , perlPackages
 , testers
 , nix-update-script
+
+# gui does not cross compile properly
+, withGui ? stdenv.buildPlatform.canExecute stdenv.hostPlatform
 }:
 
+assert systemdSupport -> dbusSupport;
+
 stdenv.mkDerivation (finalAttrs: {
   pname = "pcsc-tools";
   version = "1.7.1";
@@ -33,17 +38,21 @@ stdenv.mkDerivation (finalAttrs: {
     "--datarootdir=${placeholder "out"}/share"
   ];
 
-  buildInputs = [ dbus perlPackages.perl pcsclite ]
-    ++ lib.optional stdenv.isDarwin PCSC
-    ++ lib.optional stdenv.isLinux systemd;
+  buildInputs = lib.optionals dbusSupport [
+    dbus
+  ] ++ [
+    perlPackages.perl pcsclite
+  ] ++ lib.optional stdenv.isDarwin PCSC
+    ++ lib.optional systemdSupport systemd;
 
   nativeBuildInputs = [
     autoconf-archive
     autoreconfHook
-    gobject-introspection
     makeWrapper
     pkg-config
-    wrapGAppsHook
+  ] ++ lib.optionals withGui [
+    gobject-introspection
+    wrapGAppsHook3
   ];
 
   preFixup = ''
@@ -54,6 +63,7 @@ stdenv.mkDerivation (finalAttrs: {
     wrapProgram $out/bin/scriptor \
       --set PERL5LIB "${with perlPackages; makePerlPath [ ChipcardPCSC libintl-perl ]}"
 
+  '' + lib.optionalString withGui ''
     wrapProgram $out/bin/gscriptor \
       ''${makeWrapperArgs[@]} \
       --set PERL5LIB "${with perlPackages; makePerlPath [
@@ -66,6 +76,7 @@ stdenv.mkDerivation (finalAttrs: {
           Cairo
           CairoGObject
       ]}"
+  '' + ''
 
     wrapProgram $out/bin/ATR_analysis \
       --set PERL5LIB "${with perlPackages; makePerlPath [ ChipcardPCSC libintl-perl ]}"
diff --git a/pkgs/tools/security/pcsclite/default.nix b/pkgs/tools/security/pcsclite/default.nix
index 956bf451c7bf..e75be683a6f3 100644
--- a/pkgs/tools/security/pcsclite/default.nix
+++ b/pkgs/tools/security/pcsclite/default.nix
@@ -10,6 +10,11 @@
 , dbus
 , polkit
 , systemdLibs
+, udev
+, dbusSupport ? stdenv.isLinux
+, systemdSupport ? lib.meta.availableOn stdenv.hostPlatform systemdLibs
+, udevSupport ? dbusSupport
+, libusb1
 , IOKit
 , testers
 , nix-update-script
@@ -17,9 +22,12 @@
 , polkitSupport ? false
 }:
 
+assert polkitSupport -> dbusSupport;
+assert systemdSupport -> dbusSupport;
+
 stdenv.mkDerivation (finalAttrs: {
   inherit pname;
-  version = "2.0.3";
+  version = "2.1.0";
 
   outputs = [ "out" "lib" "dev" "doc" "man" ];
 
@@ -28,18 +36,20 @@ stdenv.mkDerivation (finalAttrs: {
     owner = "rousseau";
     repo = "PCSC";
     rev = "refs/tags/${finalAttrs.version}";
-    hash = "sha256-VDQh2PYAMFwgWvZFD20H3JxgKSFrSUoDLv/6fKEoy5Y=";
+    hash = "sha256-aJKI6pWrZJFmiTxZ9wgCuxKRWRMFVRAkzlo+tSqV8B4=";
   };
 
   configureFlags = [
     "--enable-confdir=/etc"
     # The OS should care on preparing the drivers into this location
     "--enable-usbdropdir=/var/lib/pcsc/drivers"
-    (lib.enableFeature stdenv.isLinux "libsystemd")
+    (lib.enableFeature systemdSupport "libsystemd")
     (lib.enableFeature polkitSupport "polkit")
-  ] ++ lib.optionals stdenv.isLinux [
     "--enable-ipcdir=/run/pcscd"
+  ] ++ lib.optionals systemdSupport [
     "--with-systemdsystemunitdir=${placeholder "out"}/lib/systemd/system"
+  ] ++ lib.optionals (!udevSupport) [
+    "--disable-libudev"
   ];
 
   makeFlags = [
@@ -50,8 +60,11 @@ stdenv.mkDerivation (finalAttrs: {
   # see also: https://github.com/LudovicRousseau/PCSC/issues/25
   postPatch = lib.optionalString (!stdenv.buildPlatform.canExecute stdenv.hostPlatform) ''
     substituteInPlace src/Makefile.am \
-      --replace "noinst_PROGRAMS = testpcsc pcsc-wirecheck pcsc-wirecheck-gen" \
-                "noinst_PROGRAMS = testpcsc"
+      --replace-fail "noinst_PROGRAMS = testpcsc pcsc-wirecheck pcsc-wirecheck-gen" \
+                     "noinst_PROGRAMS = testpcsc"
+  '' + ''
+    substituteInPlace src/libredirect.c src/spy/libpcscspy.c \
+      --replace-fail "libpcsclite_real.so.1" "$lib/lib/libpcsclite_real.so.1"
   '';
 
   postInstall = ''
@@ -70,25 +83,32 @@ stdenv.mkDerivation (finalAttrs: {
   ];
 
   buildInputs = [ python3 ]
-    ++ lib.optionals stdenv.isLinux [ systemdLibs ]
+    ++ lib.optionals systemdSupport [ systemdLibs ]
+    ++ lib.optionals (!systemdSupport && udevSupport) [ udev ]
     ++ lib.optionals stdenv.isDarwin [ IOKit ]
-    ++ lib.optionals polkitSupport [ dbus polkit ];
+    ++ lib.optionals dbusSupport [ dbus ]
+    ++ lib.optionals polkitSupport [ polkit ]
+    ++ lib.optionals (!udevSupport) [ libusb1 ];
 
   passthru = {
-    tests.version = testers.testVersion {
-      package = finalAttrs.finalPackage;
-      command = "pcscd --version";
+    tests = {
+      pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
+      version = testers.testVersion {
+        package = finalAttrs.finalPackage;
+        command = "pcscd --version";
+      };
     };
     updateScript = nix-update-script { };
   };
 
-  meta = with lib; {
+  meta = {
     description = "Middleware to access a smart card using SCard API (PC/SC)";
     homepage = "https://pcsclite.apdu.fr/";
     changelog = "https://salsa.debian.org/rousseau/PCSC/-/blob/${finalAttrs.version}/ChangeLog";
-    license = licenses.bsd3;
+    license = lib.licenses.bsd3;
     mainProgram = "pcscd";
-    maintainers = [ maintainers.anthonyroussel ];
-    platforms = with platforms; unix;
+    maintainers = [ lib.maintainers.anthonyroussel ];
+    pkgConfigModules = [ "libpcsclite" ];
+    platforms = lib.platforms.unix;
   };
 })
diff --git a/pkgs/tools/security/pinentry/default.nix b/pkgs/tools/security/pinentry/default.nix
index 10984e489fd4..756b2a67565a 100644
--- a/pkgs/tools/security/pinentry/default.nix
+++ b/pkgs/tools/security/pinentry/default.nix
@@ -4,7 +4,7 @@
 , fetchpatch
 , pkg-config
 , autoreconfHook
-, wrapGAppsHook
+, wrapGAppsHook3
 , libgpg-error
 , libassuan
 , libsForQt5
@@ -29,7 +29,7 @@ let
     gnome3 = {
       flag = "gnome3";
       buildInputs = [ gcr ];
-      nativeBuildInputs = [ wrapGAppsHook ];
+      nativeBuildInputs = [ wrapGAppsHook3 ];
     };
     qt = {
       flag = "qt";
diff --git a/pkgs/tools/security/pius/default.nix b/pkgs/tools/security/pius/default.nix
index 3612caa196c2..aa9687ba3a41 100644
--- a/pkgs/tools/security/pius/default.nix
+++ b/pkgs/tools/security/pius/default.nix
@@ -33,7 +33,7 @@ python3Packages.buildPythonApplication {
          to the process.
       '';
 
-    license = lib.licenses.gpl2;
+    license = lib.licenses.gpl2Only;
 
     platforms = lib.platforms.gnu ++ lib.platforms.linux;
     maintainers = with lib.maintainers; [ kierdavis ];
diff --git a/pkgs/tools/security/qdigidoc/default.nix b/pkgs/tools/security/qdigidoc/default.nix
index 862249d2ebd1..7e90eca61939 100644
--- a/pkgs/tools/security/qdigidoc/default.nix
+++ b/pkgs/tools/security/qdigidoc/default.nix
@@ -1,6 +1,7 @@
 { lib
 , mkDerivation
 , fetchurl
+, fetchpatch
 , cmake
 , flatbuffers
 , gettext
@@ -17,12 +18,12 @@
 
 mkDerivation rec {
   pname = "qdigidoc";
-  version = "4.4.0";
+  version = "4.5.1";
 
   src = fetchurl {
     url =
       "https://github.com/open-eid/DigiDoc4-Client/releases/download/v${version}/qdigidoc4-${version}.tar.gz";
-    hash = "sha256-5zo0yoY0wufm9DWRIccxJ5g4DXn75nT4fd2h+5QP4oQ=";
+    hash = "sha256-grhSuexp5yd/s8h5AdmdSLBmQY85l9HKZ15oTTvC6PI=";
   };
 
   tsl = fetchurl {
@@ -30,6 +31,14 @@ mkDerivation rec {
     sha256 = "1cikz36w9phgczcqnwk4k3mx3kk919wy2327jksmfa4cjfjq4a8d";
   };
 
+  patches = [
+    # https://github.com/open-eid/DigiDoc4-Client/pull/1251
+    (fetchpatch {
+      url = "https://github.com/open-eid/DigiDoc4-Client/commit/30281d14c5fb5582832eafbc254b56f8d685227d.patch";
+      hash = "sha256-nv23NbPUogOhS8No3SMIrAcPChl+d1HkxnePpCKIoUw=";
+    })
+  ];
+
   nativeBuildInputs = [ cmake gettext pkg-config qttools ];
 
   postPatch = ''
@@ -64,6 +73,6 @@ mkDerivation rec {
     homepage = "https://www.id.ee/";
     license = licenses.lgpl21Plus;
     platforms = platforms.linux;
-    maintainers = with maintainers; [ mmahut yana ];
+    maintainers = with maintainers; [ flokli mmahut yana ];
   };
 }
diff --git a/pkgs/tools/security/quark-engine/default.nix b/pkgs/tools/security/quark-engine/default.nix
index 43e9413d125c..58236cc8b30a 100644
--- a/pkgs/tools/security/quark-engine/default.nix
+++ b/pkgs/tools/security/quark-engine/default.nix
@@ -1,27 +1,27 @@
-{ lib
-, fetchFromGitHub
-, gitMinimal
-, python3
+{
+  lib,
+  fetchFromGitHub,
+  gitMinimal,
+  python3,
 }:
 
 python3.pkgs.buildPythonApplication rec {
   pname = "quark-engine";
-  version = "24.4.1";
+  version = "24.5.1";
   pyproject = true;
 
   src = fetchFromGitHub {
-    owner = pname;
-    repo = pname;
+    owner = "quark-engine";
+    repo = "quark-engine";
     rev = "refs/tags/v${version}";
-    sha256 = "sha256-cWO/avMz9nT9yo10b1ugC0C8NsEp2jAlcR0/+86gFKc=";
+    hash = "sha256-W1UeTiyyYZzxu3XQ/6VkTvEyqPWl1Du6QutuoPhaSfs=";
   };
 
-  nativeBuildInputs = with python3.pkgs; [
-    setuptools
-    pythonRelaxDepsHook
-  ];
+  build-system = with python3.pkgs; [ setuptools ];
+
+  nativeBuildInputs = with python3.pkgs; [ pythonRelaxDepsHook ];
 
-  propagatedBuildInputs = with python3.pkgs; [
+  dependencies = with python3.pkgs; [
     androguard
     click
     colorama
@@ -37,16 +37,12 @@ python3.pkgs.buildPythonApplication rec {
     tqdm
   ];
 
-  pythonRelaxDeps = [
-    "r2pipe"
-  ];
+  pythonRelaxDeps = [ "r2pipe" ];
 
   # Project has no tests
   doCheck = false;
 
-  pythonImportsCheck = [
-    "quark"
-  ];
+  pythonImportsCheck = [ "quark" ];
 
   meta = with lib; {
     description = "Android malware (analysis and scoring) system";
diff --git a/pkgs/tools/security/rarcrack/default.nix b/pkgs/tools/security/rarcrack/default.nix
index 3745a9520f1c..40043022f278 100644
--- a/pkgs/tools/security/rarcrack/default.nix
+++ b/pkgs/tools/security/rarcrack/default.nix
@@ -32,7 +32,7 @@ stdenv.mkDerivation {
     Warning: Please don't use this program for any illegal things!
     '';
     homepage = "https://github.com/jaredsburrows/Rarcrack";
-    license = licenses.gpl2;
+    license = licenses.gpl2Only;
     maintainers = with maintainers; [ davidak ];
     platforms = with platforms; unix;
   };
diff --git a/pkgs/tools/security/rbw/default.nix b/pkgs/tools/security/rbw/default.nix
index 201c86c86162..177ec8d35e41 100644
--- a/pkgs/tools/security/rbw/default.nix
+++ b/pkgs/tools/security/rbw/default.nix
@@ -25,14 +25,14 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "rbw";
-  version = "1.10.0";
+  version = "1.10.1";
 
   src = fetchzip {
     url = "https://git.tozt.net/rbw/snapshot/rbw-${version}.tar.gz";
-    hash = "sha256-uJ1QLEaab/Vb5GiAmbwjve3Y/3SM2XbNTRTvl2vPDYc=";
+    hash = "sha256-56QlWVEx6bWxQz3u/s9+bXsGVPSDaDEdFNj4nVw0SLY=";
   };
 
-  cargoHash = "sha256-tDgkANbUmNLe3us+05gD9IS0f+RTQBXTGvuz2cr2zYY=";
+  cargoHash = "sha256-mQrplqu9yiCTwsiChGPjfLDx3dZTofmrp+ouDFuwYO8=";
 
   nativeBuildInputs = [
     installShellFiles
@@ -77,5 +77,6 @@ rustPlatform.buildRustPackage rec {
     changelog = "https://git.tozt.net/rbw/plain/CHANGELOG.md?id=${version}";
     license = licenses.mit;
     maintainers = with maintainers; [ albakham luc65r ];
+    mainProgram = "rbw";
   };
 }
diff --git a/pkgs/tools/security/rnp/default.nix b/pkgs/tools/security/rnp/default.nix
index 9a3796aeb42e..2f7a22e59b18 100644
--- a/pkgs/tools/security/rnp/default.nix
+++ b/pkgs/tools/security/rnp/default.nix
@@ -16,20 +16,18 @@
 
 stdenv.mkDerivation (finalAttrs: {
   pname = "rnp";
-  version = "0.17.0";
+  version = "0.17.1";
 
   src = fetchFromGitHub {
     owner = "rnpgp";
     repo = "rnp";
     rev = "v${finalAttrs.version}";
-    hash = "sha256-4fB7Sl9+ATrJTRnhbNG5BoW3XLxR7IP167RK96+gxj0=";
+    hash = "sha256-jUh7BxRnB6KePCk1jIvKzXgxSmWdKlQYmxshZZY4SBQ";
   };
 
   buildInputs = [ zlib bzip2 json_c botan2 sexpp ];
 
   patches = [
-    ./unbundle-sexpp.patch
-    ./sexp_sexpp_rename.patch
   ];
 
   cmakeFlags = [
@@ -38,6 +36,7 @@ stdenv.mkDerivation (finalAttrs: {
     "-DBUILD_TESTING=on"
     "-DDOWNLOAD_GTEST=off"
     "-DDOWNLOAD_RUBYRNP=off"
+    "-DSYSTEM_LIBSEXPP=on"
   ];
 
   nativeBuildInputs = [ asciidoctor cmake gnupg gtest pkg-config python3 ];
diff --git a/pkgs/tools/security/rnp/sexp_sexpp_rename.patch b/pkgs/tools/security/rnp/sexp_sexpp_rename.patch
deleted file mode 100644
index a86d205139f7..000000000000
--- a/pkgs/tools/security/rnp/sexp_sexpp_rename.patch
+++ /dev/null
@@ -1,50 +0,0 @@
-diff --git i/src/lib/CMakeLists.txt w/src/lib/CMakeLists.txt
-index 086ac57d..2ce59ca1 100755
---- i/src/lib/CMakeLists.txt
-+++ w/src/lib/CMakeLists.txt
-@@ -328,7 +328,7 @@ elseif (CRYPTO_BACKEND_OPENSSL)
-   target_link_libraries(librnp-obj PRIVATE OpenSSL::Crypto)
- endif()
-
--target_link_libraries(librnp-obj PRIVATE sexp)
-+target_link_libraries(librnp-obj PRIVATE sexpp)
-
- set_target_properties(librnp-obj PROPERTIES CXX_VISIBILITY_PRESET hidden)
- if (TARGET BZip2::BZip2)
-@@ -384,7 +384,7 @@ foreach (prop LINK_LIBRARIES INTERFACE_LINK_LIBRARIES INCLUDE_DIRECTORIES INTERF
-   get_target_property(val librnp-obj ${prop})
-   if (BUILD_SHARED_LIBS)
-     set_property(TARGET librnp-static PROPERTY ${prop} ${val})
--    list(REMOVE_ITEM val "$<LINK_ONLY:sexp>")
-+    list(REMOVE_ITEM val "$<LINK_ONLY:sexpp>")
-     set_property(TARGET librnp PROPERTY ${prop} ${val})
-   else()
-     set_property(TARGET librnp PROPERTY ${prop} ${val})
-diff --git i/src/librekey/g23_sexp.hpp w/src/librekey/g23_sexp.hpp
-index b888680f..b062c52f 100644
---- i/src/librekey/g23_sexp.hpp
-+++ w/src/librekey/g23_sexp.hpp
-@@ -27,8 +27,8 @@
- #ifndef RNP_G23_SEXP_HPP
- #define RNP_G23_SEXP_HPP
-
--#include "sexp/sexp.h"
--#include "sexp/ext-key-format.h"
-+#include "sexpp/sexp.h"
-+#include "sexpp/ext-key-format.h"
-
- #define SXP_MAX_DEPTH 30
-
-diff --git i/src/tests/CMakeLists.txt w/src/tests/CMakeLists.txt
-index 7d2a6b0c..88aeaf9f 100644
---- i/src/tests/CMakeLists.txt
-+++ w/src/tests/CMakeLists.txt
-@@ -176,7 +176,7 @@ target_link_libraries(rnp_tests
-   PRIVATE
-     librnp-static
-     JSON-C::JSON-C
--    sexp
-+    sexpp
-     ${GTestMain}
- )
- if (CRYPTO_BACKEND_LOWERCASE STREQUAL "openssl")
diff --git a/pkgs/tools/security/rnp/unbundle-sexpp.patch b/pkgs/tools/security/rnp/unbundle-sexpp.patch
deleted file mode 100644
index dcbf92948a28..000000000000
--- a/pkgs/tools/security/rnp/unbundle-sexpp.patch
+++ /dev/null
@@ -1,38 +0,0 @@
-diff --git i/CMakeLists.txt w/CMakeLists.txt
-index bb6d40cb..30171e7c 100644
---- i/CMakeLists.txt
-+++ w/CMakeLists.txt
-@@ -176,11 +176,6 @@ if (ENABLE_FUZZERS)
- endif()
- add_subdirectory(src/common)
-
--set(WITH_SEXP_CLI OFF)
--set(WITH_SEXP_TESTS OFF)
--set(CMAKE_INSTALL_DEFAULT_COMPONENT_NAME development)
--add_subdirectory(src/libsexp EXCLUDE_FROM_ALL)
--
- add_subdirectory(src/lib)
- add_subdirectory(src/rnp)
- add_subdirectory(src/rnpkeys)
-diff --git i/src/lib/CMakeLists.txt w/src/lib/CMakeLists.txt
-index 086ac57d..b219ef06 100755
---- i/src/lib/CMakeLists.txt
-+++ w/src/lib/CMakeLists.txt
-@@ -433,7 +433,7 @@ install(TARGETS librnp
-       COMPONENT development
-   )
-
--  install(TARGETS librnp-static sexp
-+  install(TARGETS librnp-static
-     EXPORT rnp-targets
-     ARCHIVE
-       DESTINATION  "${CMAKE_INSTALL_LIBDIR}"
-@@ -441,7 +441,7 @@ install(TARGETS librnp
-   )
- else(BUILD_SHARED_LIBS)
- # static libraries only
--install(TARGETS librnp sexp
-+install(TARGETS librnp
-     EXPORT rnp-targets
-     ARCHIVE
-       DESTINATION  "${CMAKE_INSTALL_LIBDIR}"
diff --git a/pkgs/tools/security/rustscan/default.nix b/pkgs/tools/security/rustscan/default.nix
index 238fa8fcc5e3..588a05ec7eb0 100644
--- a/pkgs/tools/security/rustscan/default.nix
+++ b/pkgs/tools/security/rustscan/default.nix
@@ -11,16 +11,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "rustscan";
-  version = "2.2.2";
+  version = "2.2.3";
 
   src = fetchFromGitHub {
     owner = "RustScan";
     repo = "RustScan";
     rev = "refs/tags/${version}";
-    hash = "sha256-67XNEKzR72NOYlPbz2E9yf+THa1XN6muFJG2/iJa8AU=";
+    hash = "sha256-GOoyq2GgVGNUxxy0KQeRvkISb3FJqwWK5XpmoBAw/tk=";
   };
 
-  cargoHash = "sha256-U9Kn9xAG+emyi8cWUCNP32z7f19MK8AGgGR6vFJd62Q=";
+  cargoHash = "sha256-K9NFm++jBsrn7U+rZkTOWhrUuL4CA0NR7SlSyhSIwSc=";
 
   postPatch = ''
     substituteInPlace src/scripts/mod.rs \
diff --git a/pkgs/tools/security/schleuder/default.nix b/pkgs/tools/security/schleuder/default.nix
index 97173fdc3e19..95b54d3de724 100644
--- a/pkgs/tools/security/schleuder/default.nix
+++ b/pkgs/tools/security/schleuder/default.nix
@@ -1,6 +1,7 @@
 { lib
 , bundlerApp
 , ruby
+, stdenv
 , bundlerUpdateScript
 , nixosTests
 }:
@@ -23,6 +24,7 @@ bundlerApp {
   };
 
   meta = with lib; {
+    broken = stdenv.isDarwin;
     description = "Schleuder is an encrypting mailing list manager with remailing-capabilities";
     longDescription = ''
       Schleuder is a group's email-gateway: subscribers can exchange
diff --git a/pkgs/tools/security/semgrep/common.nix b/pkgs/tools/security/semgrep/common.nix
index ee56a4c9d82d..49f7080ce072 100644
--- a/pkgs/tools/security/semgrep/common.nix
+++ b/pkgs/tools/security/semgrep/common.nix
@@ -1,9 +1,9 @@
 { lib }:
 
 rec {
-  version = "1.70.0";
+  version = "1.72.0";
 
-  srcHash = "sha256-+fpXHUqTltS+eHvX5qVSLqJkFZGXJ6fTmezDdkocXmY=";
+  srcHash = "sha256-Rfu4ymNQ9AXuj5nkx01eUtIVMXDmunNTvUH/2Y7VaXM=";
 
   # submodule dependencies
   # these are fetched so we:
@@ -13,8 +13,8 @@ rec {
     "cli/src/semgrep/semgrep_interfaces" = {
       owner = "semgrep";
       repo = "semgrep-interfaces";
-      rev = "df63c8fe4695d742eb7c027cd5d12ccbb3395dab";
-      hash = "sha256-UHF0rGKYCiefU42bk5T3oBW2GYT4HGSmRQYprfneOlY=";
+      rev = "75abf193687b84ab341d8267d865ad68d81a89c9";
+      hash = "sha256-pS95f9oZLtzCEOQrjJP6aGm6lrltumG4ZjSTaUcRDpU=";
     };
   };
 
@@ -25,19 +25,19 @@ rec {
   core = {
     x86_64-linux = {
       platform = "any";
-      hash = "sha256-DjIv5LTOZbjIr8BFqnIpH5h09KtxrggtA3xdCZ+OvZ8=";
+      hash = "sha256-/XZzzDbsW6pw8LC8DgofZ1Gr7eeQyH719NzJDCoXhpk=";
     };
     aarch64-linux = {
       platform = "musllinux_1_0_aarch64.manylinux2014_aarch64";
-      hash = "sha256-09zeVoSb61WeKHJZOLIHXHP+m6X5k7x38iU8jlpubBk=";
+      hash = "sha256-7zCy2IbxsNO1Jl/efu9dwSyvv6a0HYvqEBzxVpTzqAM=";
     };
     x86_64-darwin = {
       platform = "macosx_10_14_x86_64";
-      hash = "sha256-nRpkJEeO8/cQmScg8vNuRLFfKcJZ7vG7pP37FqgcNlQ=";
+      hash = "sha256-jykFOXOCtEtlTxN6z17m8E2g2Wpb7qdXx6w4L6w+DbY=";
     };
     aarch64-darwin = {
       platform = "macosx_11_0_arm64";
-      hash = "sha256-SzqFYyWJFNyW5H5xEcxF1GsuLK9GoaqiAx94X754QpI=";
+      hash = "sha256-0dBki3y9tMdjRRfYbxtl0fVTDXO8tLpx76EPISxtCy4=";
     };
   };
 
diff --git a/pkgs/tools/security/sherlock/default.nix b/pkgs/tools/security/sherlock/default.nix
index e3d6f658aeaf..aaae216f1f27 100644
--- a/pkgs/tools/security/sherlock/default.nix
+++ b/pkgs/tools/security/sherlock/default.nix
@@ -2,18 +2,19 @@
 , fetchFromGitHub
 , makeWrapper
 , python3
+, unstableGitUpdater
 }:
 
 python3.pkgs.buildPythonApplication rec {
   pname = "sherlock";
-  version = "unstable-2023-10-06";
+  version = "unstable-2024-05-12";
   format = "other";
 
   src = fetchFromGitHub {
     owner = "sherlock-project";
-    repo = pname;
-    rev = "7ec56895a37ada47edd6573249c553379254d14a";
-    hash = "sha256-bK5yEdh830vgKcsU3gLH7TybLncnX6eRIiYPUiVWM74=";
+    repo = "sherlock";
+    rev = "3e978d774b428dce6eed7afbb6606444e7a74924";
+    hash = "sha256-wa32CSQ9+/PJPep84Tqtzmr6EjD1Bb3guZe5pTOZVnA=";
   };
 
   nativeBuildInputs = [ makeWrapper ];
@@ -59,6 +60,10 @@ python3.pkgs.buildPythonApplication rec {
     runHook postCheck
   '';
 
+  passthru.updateScript = unstableGitUpdater {
+    hardcodeZeroVersion = true;
+  };
+
   meta = with lib; {
     homepage = "https://sherlock-project.github.io/";
     description = "Hunt down social media accounts by username across social networks";
diff --git a/pkgs/tools/security/sigma-cli/default.nix b/pkgs/tools/security/sigma-cli/default.nix
index 897fdfcb2f29..f2854b680dd4 100644
--- a/pkgs/tools/security/sigma-cli/default.nix
+++ b/pkgs/tools/security/sigma-cli/default.nix
@@ -1,18 +1,19 @@
-{ lib
-, fetchFromGitHub
-, python3
+{
+  lib,
+  fetchFromGitHub,
+  python3,
 }:
 
 python3.pkgs.buildPythonApplication rec {
   pname = "sigma-cli";
-  version = "1.0.1";
+  version = "1.0.2";
   pyproject = true;
 
   src = fetchFromGitHub {
     owner = "SigmaHQ";
     repo = "sigma-cli";
     rev = "refs/tags/v${version}";
-    hash = "sha256-+6+xTc9XGsPxK3OsiA4dj2ORgC0PQtZsZ5a6STwmfcg=";
+    hash = "sha256-/Nciqf8O/Sq2zniaKid1VkYC/H6hgsVzMtOtFy/CiR8=";
   };
 
   postPatch = ''
@@ -20,11 +21,9 @@ python3.pkgs.buildPythonApplication rec {
       --replace '= "^' '= ">='
   '';
 
-  nativeBuildInputs = with python3.pkgs; [
-    poetry-core
-  ];
+  build-system = with python3.pkgs; [ poetry-core ];
 
-  propagatedBuildInputs = with python3.pkgs; [
+  dependencies = with python3.pkgs; [
     click
     colorama
     prettytable
@@ -39,9 +38,7 @@ python3.pkgs.buildPythonApplication rec {
     pysigma-pipeline-windows
   ];
 
-  nativeCheckInputs = with python3.pkgs; [
-    pytestCheckHook
-  ];
+  nativeCheckInputs = with python3.pkgs; [ pytestCheckHook ];
 
   disabledTests = [
     "test_plugin_list"
@@ -61,15 +58,13 @@ python3.pkgs.buildPythonApplication rec {
     "test_check_exclude"
   ];
 
-  pythonImportsCheck = [
-    "sigma.cli"
-  ];
+  pythonImportsCheck = [ "sigma.cli" ];
 
   meta = with lib; {
     description = "Sigma command line interface";
     homepage = "https://github.com/SigmaHQ/sigma-cli";
     changelog = "https://github.com/SigmaHQ/sigma-cli/releases/tag/v${version}";
-    license = with licenses; [ lgpl21Plus ];
+    license = licenses.lgpl21Plus;
     maintainers = with maintainers; [ fab ];
     mainProgram = "sigma";
   };
diff --git a/pkgs/tools/security/signing-party/default.nix b/pkgs/tools/security/signing-party/default.nix
index e08632154385..323d7075a79c 100644
--- a/pkgs/tools/security/signing-party/default.nix
+++ b/pkgs/tools/security/signing-party/default.nix
@@ -219,7 +219,7 @@ in stdenv.mkDerivation rec {
       * keyart: creates a random ASCII art of a PGP key file
       * gpg-key2latex: generate LaTeX file with fingerprint paper slips
     '';
-    license = with licenses; [ bsd2 bsd3 gpl2 gpl2Plus gpl3Plus ];
+    license = with licenses; [ bsd2 bsd3 gpl2Only gpl2Plus gpl3Plus ];
     maintainers = with maintainers; [ primeos ];
     platforms = platforms.linux;
   };
diff --git a/pkgs/tools/security/softhsm/default.nix b/pkgs/tools/security/softhsm/default.nix
index 648a4bc6515b..e4c428b90b9a 100644
--- a/pkgs/tools/security/softhsm/default.nix
+++ b/pkgs/tools/security/softhsm/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetchurl, botan2, libobjc, Security }:
+{ lib, stdenv, fetchurl, botan2, sqlite, libobjc, Security }:
 
 stdenv.mkDerivation rec {
 
@@ -13,14 +13,15 @@ stdenv.mkDerivation rec {
   configureFlags = [
     "--with-crypto-backend=botan"
     "--with-botan=${lib.getDev botan2}"
+    "--with-objectstore-backend-db"
     "--sysconfdir=$out/etc"
     "--localstatedir=$out/var"
-    ];
+  ];
 
   propagatedBuildInputs =
     lib.optionals stdenv.isDarwin [ libobjc Security ];
 
-  buildInputs = [ botan2 ];
+  buildInputs = [ botan2 sqlite ];
 
   postInstall = "rm -rf $out/var";
 
diff --git a/pkgs/tools/security/sops/default.nix b/pkgs/tools/security/sops/default.nix
index 707d4b8c3131..6ececc3613d3 100644
--- a/pkgs/tools/security/sops/default.nix
+++ b/pkgs/tools/security/sops/default.nix
@@ -22,7 +22,7 @@ buildGoModule rec {
     description = "Simple and flexible tool for managing secrets";
     changelog = "https://github.com/getsops/sops/blob/v${version}/CHANGELOG.rst";
     mainProgram = "sops";
-    maintainers = [ ];
+    maintainers = with maintainers; [ Scrumplex mic92 ];
     license = licenses.mpl20;
   };
 }
diff --git a/pkgs/tools/security/spire/default.nix b/pkgs/tools/security/spire/default.nix
index 9bc7e92a4cfe..236710eb0eba 100644
--- a/pkgs/tools/security/spire/default.nix
+++ b/pkgs/tools/security/spire/default.nix
@@ -2,7 +2,7 @@
 
 buildGoModule rec {
   pname = "spire";
-  version = "1.9.4";
+  version = "1.9.5";
 
   outputs = [ "out" "agent" "server" ];
 
@@ -10,7 +10,7 @@ buildGoModule rec {
     owner = "spiffe";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-QRLfxTMkoO37ieXtfEvOsS4naR8bvBS4VFOM9lY4rT0=";
+    sha256 = "sha256-cn7ipY5dKcKSUTqOAqOf9KgdufMnk58WW4to9MfRL7g=";
   };
 
   vendorHash = "sha256-XWfo6NbADVRaMuemTrDgF2LQSpIe037z8el2CVzOJHI=";
diff --git a/pkgs/tools/security/ssdeep/default.nix b/pkgs/tools/security/ssdeep/default.nix
index a7c937f03ee0..110174d1a8bb 100644
--- a/pkgs/tools/security/ssdeep/default.nix
+++ b/pkgs/tools/security/ssdeep/default.nix
@@ -22,7 +22,7 @@ stdenv.mkDerivation rec {
     description = "A program for calculating fuzzy hashes";
     mainProgram = "ssdeep";
     homepage    = "http://www.ssdeep.sf.net";
-    license     = lib.licenses.gpl2;
+    license     = lib.licenses.gpl2Plus;
     platforms   = lib.platforms.unix;
     maintainers = [ lib.maintainers.thoughtpolice ];
   };
diff --git a/pkgs/tools/security/ssh-mitm/default.nix b/pkgs/tools/security/ssh-mitm/default.nix
index 9d40f86354b5..745090c8e9a1 100644
--- a/pkgs/tools/security/ssh-mitm/default.nix
+++ b/pkgs/tools/security/ssh-mitm/default.nix
@@ -1,18 +1,29 @@
-{ lib
-, fetchFromGitHub
-, python3
+{
+  lib,
+  stdenv,
+  fetchFromGitHub,
+  fetchpatch,
+  installShellFiles,
+  python3,
 }:
 
 let
   py = python3.override {
     packageOverrides = self: super: {
       paramiko = super.paramiko.overridePythonAttrs (oldAttrs: rec {
-        version = "3.1.0";
+        version = "3.3.1";
         src = oldAttrs.src.override {
           inherit version;
-          hash = "sha256-aVD6ymgZrNMhnUrmlKI8eofuONCE9wwXJLDA27i3V2k=";
+          hash = "sha256-ajd3qWGshtvvN1xfW41QAUoaltD9fwVKQ7yIATSw/3c=";
         };
-        patches = [ ];
+        patches = [
+          (fetchpatch {
+            name = "Use-pytest-s-setup_method-in-pytest-8-the-nose-method-setup-is-deprecated.patch";
+            url = "https://github.com/paramiko/paramiko/pull/2349.diff";
+            hash = "sha256-4CTIZ9BmzRdh+HOwxSzfM9wkUGJOnndctK5swqqsIvU=";
+          })
+
+        ];
         propagatedBuildInputs = oldAttrs.propagatedBuildInputs ++ [ python3.pkgs.icecream ];
       });
     };
@@ -20,18 +31,24 @@ let
 in
 with py.pkgs;
 
+
 buildPythonApplication rec {
   pname = "ssh-mitm";
-  version = "3.0.2";
-  format = "setuptools";
+  version = "4.1.1";
+  pyproject = true;
 
   src = fetchFromGitHub {
-    owner = pname;
-    repo = pname;
+    owner = "ssh-mitm";
+    repo = "ssh-mitm";
     rev = "refs/tags/${version}";
-    hash = "sha256-koV7g6ZmrrXk60rrDP8BwrDZk3shiyJigQgNcb4BASE=";
+    hash = "sha256-Uf1B7oEZyNWj4TjrLvEfFdxsvsGeMLXFsSdxGLUV4ZU=";
   };
 
+  build-system = [
+    hatchling
+    hatch-requirements-txt
+  ];
+
   propagatedBuildInputs = [
     argcomplete
     colored
@@ -39,17 +56,25 @@ buildPythonApplication rec {
     paramiko
     pytz
     pyyaml
+    python-json-logger
     rich
+    tkinter
     setuptools
     sshpubkeys
-  ];
+    wrapt
+  ] ++ lib.optionals stdenv.isDarwin [ setuptools ];
+  # fix for darwin users
+
+  nativeBuildInputs = [ installShellFiles ];
 
   # Module has no tests
   doCheck = false;
+  # Install man page
+  postInstall = ''
+    installManPage man1/*
+  '';
 
-  pythonImportsCheck = [
-    "sshmitm"
-  ];
+  pythonImportsCheck = [ "sshmitm" ];
 
   meta = with lib; {
     description = "Tool for SSH security audits";
diff --git a/pkgs/tools/security/tor/torsocks.nix b/pkgs/tools/security/tor/torsocks.nix
index ae1a42a944d3..0ad36688bd6b 100644
--- a/pkgs/tools/security/tor/torsocks.nix
+++ b/pkgs/tools/security/tor/torsocks.nix
@@ -55,7 +55,7 @@ stdenv.mkDerivation rec {
     description      = "Wrapper to safely torify applications";
     mainProgram = "torsocks";
     homepage         = "https://gitlab.torproject.org/tpo/core/torsocks";
-    license          = lib.licenses.gpl2;
+    license          = lib.licenses.gpl2Plus;
     platforms        = lib.platforms.unix;
     maintainers      = with lib.maintainers; [ thoughtpolice ];
   };
diff --git a/pkgs/tools/security/tpm2-tools/default.nix b/pkgs/tools/security/tpm2-tools/default.nix
index b664eb6f01a3..1cf4d4009138 100644
--- a/pkgs/tools/security/tpm2-tools/default.nix
+++ b/pkgs/tools/security/tpm2-tools/default.nix
@@ -4,21 +4,13 @@
 
 stdenv.mkDerivation rec {
   pname = "tpm2-tools";
-  version = "5.6";
+  version = "5.7";
 
   src = fetchurl {
     url = "https://github.com/tpm2-software/${pname}/releases/download/${version}/${pname}-${version}.tar.gz";
-    sha256 = "sha256-Usi8uq3KCCq/5et+5JZ9LWMthLFndnXy8HG20uwizsM=";
+    sha256 = "sha256-OBDTa1B5JW9PL3zlUuIiE9Q7EDHBMVON+KLbw8VwmDo=";
   };
 
-  patches = [
-    # https://github.com/tpm2-software/tpm2-tools/pull/3271
-    (fetchpatch {
-      url = "https://github.com/tpm2-software/tpm2-tools/commit/b98be08f6f88b0cca9e0667760c4e1e5eb417fbd.patch";
-      sha256 = "sha256-2sEam9i4gwscJhLwraX2EAjVM8Dh1vmNnG3zYsOF0fc=";
-    })
-  ];
-
   nativeBuildInputs = [ pandoc pkg-config makeWrapper ];
   buildInputs = [
     curl openssl tpm2-tss libuuid
diff --git a/pkgs/tools/security/trufflehog/default.nix b/pkgs/tools/security/trufflehog/default.nix
index 4c5a536c882f..d0e9cb39a232 100644
--- a/pkgs/tools/security/trufflehog/default.nix
+++ b/pkgs/tools/security/trufflehog/default.nix
@@ -8,16 +8,16 @@
 
 buildGoModule rec {
   pname = "trufflehog";
-  version = "3.74.0";
+  version = "3.76.3";
 
   src = fetchFromGitHub {
     owner = "trufflesecurity";
     repo = "trufflehog";
     rev = "refs/tags/v${version}";
-    hash = "sha256-smG27WHWGe15Q0XIjeK4C45mEvJuYqsUf0SsaMyYGzs=";
+    hash = "sha256-Esw9O0OO6a4BwN/HA8WTDUX4xcwN6Jdu1io4DYko54A=";
   };
 
-  vendorHash = "sha256-FOFrFmILeONJyKGZ7I+sWd8Di0Ni6P5/buA5QbR41A4=";
+  vendorHash = "sha256-vHHLHXfeRl9aEBqFidGCkBLs/ifwOysbUSYbQaTKcPU=";
 
   proxyVendor = true;
 
diff --git a/pkgs/tools/security/vals/default.nix b/pkgs/tools/security/vals/default.nix
index e734893d527f..b7b1012ad277 100644
--- a/pkgs/tools/security/vals/default.nix
+++ b/pkgs/tools/security/vals/default.nix
@@ -2,16 +2,16 @@
 
 buildGoModule rec {
   pname = "vals";
-  version = "0.37.0";
+  version = "0.37.1";
 
   src = fetchFromGitHub {
     rev = "v${version}";
     owner = "helmfile";
     repo = pname;
-    sha256 = "sha256-R/nTlB8VM41Yah+3sH/J3Y3m9KUFsIZQNQ9kFddo+Mo=";
+    sha256 = "sha256-POFxoGUbcasEvFdovZ1RER+yxLzg9owyKjWcr1zI+nc=";
   };
 
-  vendorHash = "sha256-VKJIbsVIIEEGqo+LXfYzhIJLtcj0jbbq/UXVpykgcz8=";
+  vendorHash = "sha256-Yzab4Y6ETOZM5zL/5fQSzqNFi51YOgDjsL53efW1vvk=";
 
   ldflags = [
     "-s"
diff --git a/pkgs/tools/security/vault/default.nix b/pkgs/tools/security/vault/default.nix
index 4f748ca1b425..5f24a8a6f6b2 100644
--- a/pkgs/tools/security/vault/default.nix
+++ b/pkgs/tools/security/vault/default.nix
@@ -6,16 +6,16 @@
 
 buildGoModule rec {
   pname = "vault";
-  version = "1.16.1";
+  version = "1.16.2";
 
   src = fetchFromGitHub {
     owner = "hashicorp";
     repo = "vault";
     rev = "v${version}";
-    hash = "sha256-dafK7PkjWmLbV9fcaR+Vl1CQrpGdo8IQpaSbUwY26Uw=";
+    hash = "sha256-OFYUM6NFNwpx356y+G1yAOOgpinK8qOkLBtUMFPFXK8=";
   };
 
-  vendorHash = "sha256-hWIIGQb2tZjhQ+XxaUacBgRSFFQIWj728pjKZFi0Wto=";
+  vendorHash = "sha256-pWteRqBGKHcqjN3wSxWuoy0YK7w2Zaz2BsiveG7UkVE=";
 
   proxyVendor = true;
 
diff --git a/pkgs/tools/security/vault/vault-bin.nix b/pkgs/tools/security/vault/vault-bin.nix
index c80f35a16cbb..c1dd64d604b4 100644
--- a/pkgs/tools/security/vault/vault-bin.nix
+++ b/pkgs/tools/security/vault/vault-bin.nix
@@ -2,7 +2,7 @@
 
 stdenv.mkDerivation rec {
   pname = "vault-bin";
-  version = "1.16.1";
+  version = "1.16.2";
 
   src =
     let
@@ -16,11 +16,11 @@ stdenv.mkDerivation rec {
         aarch64-darwin = "darwin_arm64";
       };
       sha256 = selectSystem {
-        x86_64-linux = "sha256-s520fOri0caLMeMmNaGS3+Y9I9dcXtNtiRtwrvj1pvA=";
-        aarch64-linux = "sha256-12yFC3uPyqv2kQIv2KC+skXMrdU+IZir5z62JRtKBMs=";
-        i686-linux = "sha256-LGkRnI5rZ8j6Fm1FBKiTUJNK8dUF9154OlNEHIsT36Q=";
-        x86_64-darwin = "sha256-V7uLlQhsRQ36jtbIsdPfU3LvM41xDO3pj97KOlZWSYg=";
-        aarch64-darwin = "sha256-QGxg11DR1LbRzRE2CqyGSWvus1IXIECbtamONrqcBVc=";
+        x86_64-linux = "sha256-fVDHXVI4f/1d6NTgHcURDXAjCkSEwKD3+bhRyvIgfjw=";
+        aarch64-linux = "sha256-tfRqnroz9W7V3gCataJbm2t97OJUkVe2VyWXPqbeJaw=";
+        i686-linux = "sha256-l2aYuyxYAOnAOBwtkEkrpqRNWYL7qsaYJ3vMiknhFow=";
+        x86_64-darwin = "sha256-xX/syRtkJJjmSO36Apq+i/s4kOMMop3De276358hb0c=";
+        aarch64-darwin = "sha256-I1FpMRsssil0LQe5LBjpX5b7uTATRJOBzbJeLnKCd74=";
       };
     in
     fetchzip {
diff --git a/pkgs/tools/security/web-eid-app/default.nix b/pkgs/tools/security/web-eid-app/default.nix
index 067963e1aaff..e2e09ed0146b 100644
--- a/pkgs/tools/security/web-eid-app/default.nix
+++ b/pkgs/tools/security/web-eid-app/default.nix
@@ -10,13 +10,13 @@
 
 mkDerivation rec {
   pname = "web-eid-app";
-  version = "2.4.0";
+  version = "2.5.0";
 
   src = fetchFromGitHub {
     owner = "web-eid";
     repo = "web-eid-app";
     rev = "v${version}";
-    sha256 = "sha256-xWwguxs/121BFF1zhb/HxS9b1vTwQRemhPKOfHEXVZQ=";
+    sha256 = "sha256-CaMf7cRhZ8K6YAUG38B+ijNOKaOmaACqNabNfHZGT68=";
     fetchSubmodules = true;
   };
 
diff --git a/pkgs/tools/security/wipe/default.nix b/pkgs/tools/security/wipe/default.nix
index 0d9653f27918..e41e22c3a25d 100644
--- a/pkgs/tools/security/wipe/default.nix
+++ b/pkgs/tools/security/wipe/default.nix
@@ -15,7 +15,7 @@ stdenv.mkDerivation rec {
     description = "Secure file wiping utility";
     mainProgram = "wipe";
     homepage    = "https://wipe.sourceforge.net/";
-    license     = licenses.gpl2;
+    license     = licenses.gpl2Plus;
     platforms   = platforms.all;
     maintainers = [ maintainers.abbradar ];
   };
diff --git a/pkgs/tools/security/xsser/default.nix b/pkgs/tools/security/xsser/default.nix
index c5fab523166e..c1d93c03f7e4 100644
--- a/pkgs/tools/security/xsser/default.nix
+++ b/pkgs/tools/security/xsser/default.nix
@@ -1,4 +1,4 @@
-{ lib, buildPythonApplication, fetchFromGitHub, wrapGAppsHook, gobject-introspection, gtk3, pango
+{ lib, buildPythonApplication, fetchFromGitHub, wrapGAppsHook3, gobject-introspection, gtk3, pango
 , pillow, pycurl, beautifulsoup4, pygeoip, pygobject3, cairocffi, selenium }:
 
 buildPythonApplication rec {
@@ -22,7 +22,7 @@ buildPythonApplication rec {
     substituteInPlace setup.py --replace /usr/share share
   '';
 
-  nativeBuildInputs = [ wrapGAppsHook gobject-introspection ];
+  nativeBuildInputs = [ wrapGAppsHook3 gobject-introspection ];
 
   buildInputs = [
     gtk3
diff --git a/pkgs/tools/security/yara/default.nix b/pkgs/tools/security/yara/default.nix
index 36a77102eb43..26eea76f016b 100644
--- a/pkgs/tools/security/yara/default.nix
+++ b/pkgs/tools/security/yara/default.nix
@@ -1,5 +1,6 @@
 { lib, stdenv
 , fetchFromGitHub
+, fetchpatch
 , autoreconfHook
 , pcre
 , pkg-config
@@ -24,6 +25,14 @@ stdenv.mkDerivation rec {
     hash = "sha256-AecHsUBtBleUkWuYMQ4Tx/PY8cs9j7JwqncBziJD0hA=";
   };
 
+  patches = [
+    (fetchpatch {
+      name = "LFS64.patch";
+      url = "https://github.com/VirusTotal/yara/commit/833a580430abe0fbc9bc17a21fb95bf36dacf367.patch";
+      hash = "sha256-EmwyDsxaNd9zfpAOu6ZB9kzg04qB7LAD7UJB3eAuKd8=";
+    })
+  ];
+
   nativeBuildInputs = [
     autoreconfHook
     pkg-config
diff --git a/pkgs/tools/system/actkbd/default.nix b/pkgs/tools/system/actkbd/default.nix
index 5dd024e573d4..7f8058433a1d 100644
--- a/pkgs/tools/system/actkbd/default.nix
+++ b/pkgs/tools/system/actkbd/default.nix
@@ -28,7 +28,7 @@ stdenv.mkDerivation rec {
       recognises key combinations and can handle press, repeat and
       release events.
     '';
-    license = licenses.gpl2;
+    license = licenses.gpl2Only;
     homepage = "http://users.softlab.ece.ntua.gr/~thkala/projects/actkbd/";
     platforms = platforms.linux;
     mainProgram = "actkbd";
diff --git a/pkgs/tools/system/amtterm/default.nix b/pkgs/tools/system/amtterm/default.nix
index 6ec57c253e89..1dd26e5b3c1b 100644
--- a/pkgs/tools/system/amtterm/default.nix
+++ b/pkgs/tools/system/amtterm/default.nix
@@ -21,7 +21,7 @@ stdenv.mkDerivation (finalAttrs: {
   meta = with lib;
     { description = "Intel AMT® SoL client + tools";
       homepage = "https://www.kraxel.org/cgit/amtterm/";
-      license = licenses.gpl2;
+      license = licenses.gpl2Plus;
       platforms = platforms.linux;
     };
 })
diff --git a/pkgs/tools/system/automatic-timezoned/default.nix b/pkgs/tools/system/automatic-timezoned/default.nix
index 2964368633ab..20d45f3e9c71 100644
--- a/pkgs/tools/system/automatic-timezoned/default.nix
+++ b/pkgs/tools/system/automatic-timezoned/default.nix
@@ -5,16 +5,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "automatic-timezoned";
-  version = "2.0.12";
+  version = "2.0.13";
 
   src = fetchFromGitHub {
     owner = "maxbrunet";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-QOhGjLwVeht5S0jG5Fs/2e0RKExAcDJIMSGqdgARewM=";
+    sha256 = "sha256-OmeS4phePGa8Vt/5Mj4743dWEC/+owOHwZTFYH5Ci38=";
   };
 
-  cargoHash = "sha256-TE8W2wYmqC4f9dNwM3UB8444e8eE1sYX/T6hfuCeDOo=";
+  cargoHash = "sha256-KKx46Qxeumw13Gzv1TE3OZ8/FWqZHEOBZrkqr+AgNGE=";
 
   meta = with lib; {
     description = "Automatically update system timezone based on location";
diff --git a/pkgs/tools/system/bar/default.nix b/pkgs/tools/system/bar/default.nix
index 1109def2bf30..ee53e9d1cbfb 100644
--- a/pkgs/tools/system/bar/default.nix
+++ b/pkgs/tools/system/bar/default.nix
@@ -12,7 +12,7 @@ stdenv.mkDerivation rec {
   meta = {
     description = "Console progress bar";
     homepage = "https://clpbar.sourceforge.net/";
-    license = lib.licenses.gpl2;
+    license = lib.licenses.gpl2Only;
     maintainers = [ lib.maintainers.rdnetto ];
     platforms = lib.platforms.all;
     mainProgram = "bar";
diff --git a/pkgs/tools/system/cm-rgb/default.nix b/pkgs/tools/system/cm-rgb/default.nix
index adc291d4f85d..03cf76b5385a 100644
--- a/pkgs/tools/system/cm-rgb/default.nix
+++ b/pkgs/tools/system/cm-rgb/default.nix
@@ -3,7 +3,7 @@
 , fetchFromGitHub
 , atk
 , gobject-introspection
-, wrapGAppsHook
+, wrapGAppsHook3
 , click
 , hidapi
 , psutil
@@ -26,7 +26,7 @@ buildPythonApplication rec {
 
     # Populate GI_TYPELIB_PATH
     gobject-introspection
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   propagatedBuildInputs = [
diff --git a/pkgs/tools/system/collectd/default.nix b/pkgs/tools/system/collectd/default.nix
index 5dcd85448375..bbcc9f704bc4 100644
--- a/pkgs/tools/system/collectd/default.nix
+++ b/pkgs/tools/system/collectd/default.nix
@@ -64,7 +64,7 @@ stdenv.mkDerivation rec {
   meta = with lib; {
     description = "Daemon which collects system performance statistics periodically";
     homepage = "https://collectd.org";
-    license = licenses.gpl2;
+    license = licenses.gpl2Plus;
     platforms = platforms.unix;
     maintainers = with maintainers; [ bjornfor ];
   };
diff --git a/pkgs/tools/system/consul-template/default.nix b/pkgs/tools/system/consul-template/default.nix
index 5494b699ed4a..d9571cfcaa8d 100644
--- a/pkgs/tools/system/consul-template/default.nix
+++ b/pkgs/tools/system/consul-template/default.nix
@@ -2,13 +2,13 @@
 
 buildGoModule rec {
   pname = "consul-template";
-  version = "0.37.5";
+  version = "0.37.6";
 
   src = fetchFromGitHub {
     owner = "hashicorp";
     repo = "consul-template";
     rev = "v${version}";
-    hash = "sha256-vUNOk0lvlI2K8tIgQVWDDkTwvO5gh9xnkdkx//vP1/U=";
+    hash = "sha256-YkhU8BFSQpYUfgB5CxtaRJOghfH1uu1gpvArIeWHXEI=";
   };
 
   vendorHash = "sha256-3Z8EiO48+OAg/TnoKUuokLBSXnUUrxe8ZgE1nrILFSg=";
diff --git a/pkgs/tools/system/datefudge/default.nix b/pkgs/tools/system/datefudge/default.nix
index 8c3ca0dc2b40..922fdbd2a1c6 100644
--- a/pkgs/tools/system/datefudge/default.nix
+++ b/pkgs/tools/system/datefudge/default.nix
@@ -37,7 +37,7 @@ stdenv.mkDerivation rec {
       gettimeofday and clock_gettime system calls.
     '';
     homepage = "https://packages.qa.debian.org/d/datefudge.html";
-    license = licenses.gpl2;
+    license = licenses.gpl2Plus;
     platforms = platforms.linux;
     maintainers = with maintainers; [ leenaars ];
     mainProgram = "datefudge";
diff --git a/pkgs/tools/system/dcfldd/default.nix b/pkgs/tools/system/dcfldd/default.nix
index 395b4431acee..0814055d4839 100644
--- a/pkgs/tools/system/dcfldd/default.nix
+++ b/pkgs/tools/system/dcfldd/default.nix
@@ -16,7 +16,7 @@ stdenv.mkDerivation rec {
 
     homepage = "https://dcfldd.sourceforge.net/";
 
-    license = licenses.gpl2;
+    license = licenses.gpl2Plus;
 
     platforms = platforms.all;
     maintainers = with maintainers; [ qknight ];
diff --git a/pkgs/tools/system/fcron/default.nix b/pkgs/tools/system/fcron/default.nix
index 8b54b77e8a2c..95f46833cf20 100644
--- a/pkgs/tools/system/fcron/default.nix
+++ b/pkgs/tools/system/fcron/default.nix
@@ -55,7 +55,7 @@ stdenv.mkDerivation rec {
   meta = with lib; {
     description="A command scheduler with extended capabilities over cron and anacron";
     homepage = "http://fcron.free.fr";
-    license = licenses.gpl2;
+    license = licenses.gpl2Plus;
     platforms = lib.platforms.all;
   };
 }
diff --git a/pkgs/tools/system/fio/default.nix b/pkgs/tools/system/fio/default.nix
index 1796661c7d4c..d73d8dda7a77 100644
--- a/pkgs/tools/system/fio/default.nix
+++ b/pkgs/tools/system/fio/default.nix
@@ -46,7 +46,7 @@ stdenv.mkDerivation rec {
   meta = with lib; {
     description = "Flexible IO Tester - an IO benchmark tool";
     homepage = "https://git.kernel.dk/cgit/fio/";
-    license = licenses.gpl2;
+    license = licenses.gpl2Plus;
     platforms = platforms.unix;
   };
 }
diff --git a/pkgs/tools/system/gdmap/default.nix b/pkgs/tools/system/gdmap/default.nix
index 900dabf834b5..b2844c950200 100644
--- a/pkgs/tools/system/gdmap/default.nix
+++ b/pkgs/tools/system/gdmap/default.nix
@@ -21,7 +21,7 @@ stdenv.mkDerivation rec {
   meta = with lib; {
     homepage = "https://gdmap.sourceforge.net";
     description = "Recursive rectangle map of disk usage";
-    license = licenses.gpl2;
+    license = licenses.gpl2Only;
     platforms = platforms.linux;
     maintainers = [ maintainers.bjornfor ];
     mainProgram = "gdmap";
diff --git a/pkgs/tools/system/gkraken/default.nix b/pkgs/tools/system/gkraken/default.nix
index 330d9f1129f7..9866c049fa7a 100644
--- a/pkgs/tools/system/gkraken/default.nix
+++ b/pkgs/tools/system/gkraken/default.nix
@@ -10,7 +10,7 @@
 , gtk3
 , libnotify
 , dbus
-, wrapGAppsHook
+, wrapGAppsHook3
 }:
 
 python3Packages.buildPythonApplication rec {
@@ -38,7 +38,7 @@ python3Packages.buildPythonApplication rec {
     ninja
     gtk3
     desktop-file-utils
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
diff --git a/pkgs/tools/system/gptfdisk/default.nix b/pkgs/tools/system/gptfdisk/default.nix
index ea6b12ac5eb0..254aa3e82c42 100644
--- a/pkgs/tools/system/gptfdisk/default.nix
+++ b/pkgs/tools/system/gptfdisk/default.nix
@@ -58,7 +58,7 @@ stdenv.mkDerivation rec {
 
   meta = with lib; {
     description = "Set of text-mode partitioning tools for Globally Unique Identifier (GUID) Partition Table (GPT) disks";
-    license = licenses.gpl2;
+    license = licenses.gpl2Plus;
     homepage = "https://www.rodsbooks.com/gdisk/";
     platforms = platforms.all;
     maintainers = [ maintainers.ehmry ];
diff --git a/pkgs/tools/system/hardinfo/default.nix b/pkgs/tools/system/hardinfo/default.nix
index 99ffe50786ec..462ef09aca04 100644
--- a/pkgs/tools/system/hardinfo/default.nix
+++ b/pkgs/tools/system/hardinfo/default.nix
@@ -43,7 +43,7 @@ stdenv.mkDerivation rec {
   meta = with lib; {
     homepage = "http://hardinfo.org/";
     description = "Display information about your hardware and operating system";
-    license = licenses.gpl2;
+    license = licenses.gpl2Only;
     maintainers = with maintainers; [ bjornfor ];
     platforms = [ "x86_64-linux" "i686-linux" ]; # ARMv7 and AArch64 are unsupported
     mainProgram = "hardinfo";
diff --git a/pkgs/tools/system/incron/default.nix b/pkgs/tools/system/incron/default.nix
index cc986d453569..b0a2765ddfe1 100644
--- a/pkgs/tools/system/incron/default.nix
+++ b/pkgs/tools/system/incron/default.nix
@@ -30,7 +30,7 @@ stdenv.mkDerivation rec {
   meta = with lib; {
     description = "A cron-like daemon which handles filesystem events";
     homepage = "https://github.com/ar-/incron";
-    license = licenses.gpl2;
+    license = licenses.gpl2Only;
     maintainers = [ maintainers.aanderse ];
     platforms = platforms.linux;
   };
diff --git a/pkgs/tools/system/ior/default.nix b/pkgs/tools/system/ior/default.nix
index c2616797da38..ba3e5f1c7ffa 100644
--- a/pkgs/tools/system/ior/default.nix
+++ b/pkgs/tools/system/ior/default.nix
@@ -19,7 +19,7 @@ stdenv.mkDerivation rec {
   meta = with lib; {
     homepage = "https://ior.readthedocs.io/en/latest/";
     description = "Parallel file system I/O performance test";
-    license = licenses.gpl2;
+    license = licenses.gpl2Only;
     platforms = platforms.linux;
     maintainers = with maintainers; [ bzizou ];
   };
diff --git a/pkgs/tools/system/journalwatch/default.nix b/pkgs/tools/system/journalwatch/default.nix
index 8bb9b605a8f4..0959e6166a0d 100644
--- a/pkgs/tools/system/journalwatch/default.nix
+++ b/pkgs/tools/system/journalwatch/default.nix
@@ -1,9 +1,8 @@
-{ lib, buildPythonPackage, fetchFromGitHub, pythonOlder, systemd, pytest }:
+{ lib, buildPythonPackage, fetchFromGitHub, systemd, pytest }:
 
 buildPythonPackage rec {
   pname = "journalwatch";
   version = "1.1.0";
-  disabled = pythonOlder "3.3";
 
   src = fetchFromGitHub {
     owner = "The-Compiler";
diff --git a/pkgs/tools/system/kanata/default.nix b/pkgs/tools/system/kanata/default.nix
index 935d671ab7b7..d5df91649898 100644
--- a/pkgs/tools/system/kanata/default.nix
+++ b/pkgs/tools/system/kanata/default.nix
@@ -8,19 +8,19 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "kanata";
-  version = "1.6.0";
+  version = "1.6.1";
 
   src = fetchFromGitHub {
     owner = "jtroo";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-UZ6WoUZcnqN9k277ikix91UTnqQsUgZW69vbSNNbyHU=";
+    sha256 = "sha256-Kuxy6lGzImYYujuJwZZdfuu3X7/PJNOJefeZ0hVJaAA=";
   };
 
   cargoHash =
     if stdenv.isLinux
-    then "sha256-DLOQnQJtrR7A/elOTVXEnIdLM/FuWYWAPqpbSAXHDMo="
-    else "sha256-g6selNjRv9AwkPrzLllJf1VshBvwPhd+lTFIbtSnc3E=";
+    then "sha256-R2lHg+I8Sry3/n8vTfPpDysKCKMDUvxyMKRhEQKDqS0="
+    else "sha256-9CXrOP6SI+sCD9Q94N8TlRB/h+F/l7t3zHbtVDqddS4=";
 
   buildInputs = lib.optionals stdenv.isDarwin [ darwin.apple_sdk.frameworks.IOKit ];
 
@@ -37,5 +37,6 @@ rustPlatform.buildRustPackage rec {
     maintainers = with maintainers; [ bmanuel linj ];
     platforms = platforms.unix;
     mainProgram = "kanata";
+    broken = stdenv.isDarwin;
   };
 }
diff --git a/pkgs/tools/system/krakenx/default.nix b/pkgs/tools/system/krakenx/default.nix
index a5a2f7e2ef0d..3c9c6435ffbe 100644
--- a/pkgs/tools/system/krakenx/default.nix
+++ b/pkgs/tools/system/krakenx/default.nix
@@ -16,7 +16,7 @@ python3Packages.buildPythonApplication rec {
   meta = with lib; {
     description = "Python script to control NZXT cooler Kraken X52/X62/X72";
     homepage = "https://github.com/KsenijaS/krakenx";
-    license = licenses.gpl2;
+    license = licenses.gpl2Only;
     maintainers = [ maintainers.willibutz ];
     platforms = platforms.linux;
   };
diff --git a/pkgs/tools/system/ledmon/default.nix b/pkgs/tools/system/ledmon/default.nix
index 0ca1aa441db7..088f8cf281eb 100644
--- a/pkgs/tools/system/ledmon/default.nix
+++ b/pkgs/tools/system/ledmon/default.nix
@@ -29,7 +29,7 @@ stdenv.mkDerivation rec {
     homepage = "https://github.com/intel/ledmon";
     description = "Enclosure LED Utilities";
     platforms = platforms.linux;
-    license = with licenses; [ gpl2 ];
+    license = with licenses; [ gpl2Only ];
     maintainers = with lib.maintainers; [ sorki ];
   };
 }
diff --git a/pkgs/tools/system/loadwatch/default.nix b/pkgs/tools/system/loadwatch/default.nix
index 27e33a22d4b9..c9ef1b541d4f 100644
--- a/pkgs/tools/system/loadwatch/default.nix
+++ b/pkgs/tools/system/loadwatch/default.nix
@@ -17,7 +17,7 @@ stdenv.mkDerivation {
 
   meta = with lib; {
     description = "Run a program using only idle cycles";
-    license = licenses.gpl2;
+    license = licenses.gpl2Only;
     maintainers = with maintainers; [ woffs ];
     platforms = platforms.all;
   };
diff --git a/pkgs/tools/system/memtester/default.nix b/pkgs/tools/system/memtester/default.nix
index 7753ed804e16..cb4f6768f236 100644
--- a/pkgs/tools/system/memtester/default.nix
+++ b/pkgs/tools/system/memtester/default.nix
@@ -19,7 +19,7 @@ stdenv.mkDerivation rec {
   meta = with lib; {
     description = "A userspace utility for testing the memory subsystem for faults";
     homepage = "http://pyropus.ca/software/memtester/";
-    license = licenses.gpl2;
+    license = licenses.gpl2Only;
     maintainers = [ maintainers.dezgeg ];
     platforms = platforms.unix;
     mainProgram = "memtester";
diff --git a/pkgs/tools/system/openipmi/default.nix b/pkgs/tools/system/openipmi/default.nix
index 189452c65d63..e1616460413d 100644
--- a/pkgs/tools/system/openipmi/default.nix
+++ b/pkgs/tools/system/openipmi/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   pname = "OpenIPMI";
-  version = "2.0.34";
+  version = "2.0.35";
 
   src = fetchurl {
     url = "mirror://sourceforge/openipmi/OpenIPMI-${version}.tar.gz";
-    sha256 = "sha256-kyJ+Q8crXDvVlJMj4GaapVJ9GpcUc6OjZa8D+4KEqV8=";
+    sha256 = "sha256-sFkRT2KZ1z8E/252oIV6Crgao2Le6ZZE0layI4ckN60=";
   };
 
   buildInputs = [ ncurses popt python3 readline ];
diff --git a/pkgs/tools/system/pciutils/default.nix b/pkgs/tools/system/pciutils/default.nix
index 483b0b43661b..1e3b17caf90b 100644
--- a/pkgs/tools/system/pciutils/default.nix
+++ b/pkgs/tools/system/pciutils/default.nix
@@ -56,5 +56,6 @@ stdenv.mkDerivation rec {
     license = licenses.gpl2Plus;
     platforms = platforms.unix;
     maintainers = [ maintainers.vcunat ]; # not really, but someone should watch it
+    mainProgram = "lspci";
   };
 }
diff --git a/pkgs/tools/system/proot/default.nix b/pkgs/tools/system/proot/default.nix
index a43b2ff7f202..79f96cccf39f 100644
--- a/pkgs/tools/system/proot/default.nix
+++ b/pkgs/tools/system/proot/default.nix
@@ -46,7 +46,7 @@ stdenv.mkDerivation rec {
     homepage = "https://proot-me.github.io";
     description = "User-space implementation of chroot, mount --bind and binfmt_misc";
     platforms = platforms.linux;
-    license = licenses.gpl2;
+    license = licenses.gpl2Plus;
     maintainers = with maintainers; [ ianwookim makefu veprbl dtzWill ];
     mainProgram = "proot";
   };
diff --git a/pkgs/tools/system/psensor/default.nix b/pkgs/tools/system/psensor/default.nix
index 47456b76f325..6cd1f6858e05 100644
--- a/pkgs/tools/system/psensor/default.nix
+++ b/pkgs/tools/system/psensor/default.nix
@@ -9,7 +9,7 @@
 , libnotify
 , udisks2
 , libXNVCtrl
-, wrapGAppsHook
+, wrapGAppsHook3
 , libappindicator
 }:
 
@@ -23,7 +23,7 @@ stdenv.mkDerivation rec {
     sha256 = "1ark901va79gfq5p8h8dqypjgm3f8crmj37520q3slwz2rfphkq8";
   };
 
-  nativeBuildInputs = [ pkg-config wrapGAppsHook ];
+  nativeBuildInputs = [ pkg-config wrapGAppsHook3 ];
 
   buildInputs = [
     lm_sensors
diff --git a/pkgs/tools/system/runitor/default.nix b/pkgs/tools/system/runitor/default.nix
index d5d2f50cc0f5..6d2eeff80c60 100644
--- a/pkgs/tools/system/runitor/default.nix
+++ b/pkgs/tools/system/runitor/default.nix
@@ -2,14 +2,14 @@
 
 buildGoModule rec {
   pname = "runitor";
-  version = "1.2.0";
+  version = "1.3.0";
   vendorHash = null;
 
   src = fetchFromGitHub {
     owner = "bdd";
     repo = "runitor";
     rev = "v${version}";
-    sha256 = "sha256-lL9yfiqPIIfEvjiWcG6e1NrURHJFdk4x/od/w7/i2DE=";
+    sha256 = "sha256-9sg+ku3Qh/X/EZ2VCrvIc0pq5iyn4O8RZrO4KpkciAI=";
   };
 
   ldflags = [
diff --git a/pkgs/tools/system/s-tui/default.nix b/pkgs/tools/system/s-tui/default.nix
index 5867670424d5..6a8e5ec0be19 100644
--- a/pkgs/tools/system/s-tui/default.nix
+++ b/pkgs/tools/system/s-tui/default.nix
@@ -29,7 +29,7 @@ python3Packages.buildPythonPackage rec {
   meta = with lib; {
     homepage = "https://amanusk.github.io/s-tui/";
     description = "Stress-Terminal UI monitoring tool";
-    license = licenses.gpl2;
+    license = licenses.gpl2Plus;
     maintainers = [ ];
     broken = stdenv.isDarwin; # https://github.com/amanusk/s-tui/issues/49
     mainProgram = "s-tui";
diff --git a/pkgs/tools/system/setserial/default.nix b/pkgs/tools/system/setserial/default.nix
index d224b96d89dc..5a03c69d7e84 100644
--- a/pkgs/tools/system/setserial/default.nix
+++ b/pkgs/tools/system/setserial/default.nix
@@ -22,7 +22,7 @@ stdenv.mkDerivation rec {
   meta = {
     description = "Serial port configuration utility";
     platforms = lib.platforms.linux;
-    license = lib.licenses.gpl2;
+    license = lib.licenses.gpl2Only;
     mainProgram = "setserial";
   };
 }
diff --git a/pkgs/tools/system/skeema/default.nix b/pkgs/tools/system/skeema/default.nix
index 68d1a1c627b3..a7503baac14b 100644
--- a/pkgs/tools/system/skeema/default.nix
+++ b/pkgs/tools/system/skeema/default.nix
@@ -17,32 +17,35 @@ buildGoModule rec {
 
   ldflags = [ "-s" "-w" ];
 
-  preCheck =
+  preCheck = ''
+    # Fix tests expecting /usr/bin/printf and /bin/echo
+    substituteInPlace skeema_cmd_test.go \
+      --replace /usr/bin/printf "${coreutils}/bin/printf"
+
+    substituteInPlace internal/fs/dir_test.go \
+      --replace /bin/echo "${coreutils}/bin/echo" \
+      --replace /usr/bin/printf "${coreutils}/bin/printf"
+
+    substituteInPlace internal/applier/ddlstatement_test.go \
+      --replace /bin/echo "${coreutils}/bin/echo"
+  '';
+
+  checkFlags =
     let
       skippedTests = [
         # Tests requiring network access to gitlab.com
         "TestDirRelPath"
-        "TestParseDirSymlinks"
+        "TestParseDir"
 
         # Flaky tests
         "TestCommandTimeout"
         "TestShellOutTimeout"
+
+        # Fails with 'internal/fs/testdata/cfgsymlinks1/validrel/.skeema is a symlink pointing outside of its repo'.
+        "TestParseDirSymlinks"
       ];
     in
-    ''
-      buildFlagsArray+=("-run" "[^(${builtins.concatStringsSep "|" skippedTests})]")
-
-      # Fix tests expecting /usr/bin/printf and /bin/echo
-      substituteInPlace skeema_cmd_test.go \
-        --replace /usr/bin/printf "${coreutils}/bin/printf"
-
-      substituteInPlace internal/fs/dir_test.go \
-        --replace /bin/echo "${coreutils}/bin/echo" \
-        --replace /usr/bin/printf "${coreutils}/bin/printf"
-
-      substituteInPlace internal/applier/ddlstatement_test.go \
-        --replace /bin/echo "${coreutils}/bin/echo"
-    '';
+    [ "-skip=^${builtins.concatStringsSep "$|^" skippedTests}$" ];
 
   passthru.tests.version = testers.testVersion {
     package = skeema;
diff --git a/pkgs/tools/system/stress-ng/default.nix b/pkgs/tools/system/stress-ng/default.nix
index 0e87cbffd050..6ff1a8931b6e 100644
--- a/pkgs/tools/system/stress-ng/default.nix
+++ b/pkgs/tools/system/stress-ng/default.nix
@@ -4,13 +4,13 @@
 
 stdenv.mkDerivation rec {
   pname = "stress-ng";
-  version = "0.17.07";
+  version = "0.17.08";
 
   src = fetchFromGitHub {
     owner = "ColinIanKing";
     repo = pname;
     rev = "V${version}";
-    hash = "sha256-eXDCzyZ/YeumHjuLpr6stkWkApwfi8ExDx3uZTVa/cs=";
+    hash = "sha256-ipiR7vLNF0+y0YtXZC0qpp361lfpXzlIp3eLUbn0oXc=";
   };
 
   postPatch = ''
diff --git a/pkgs/tools/system/stress/default.nix b/pkgs/tools/system/stress/default.nix
index 0334ed757b36..1f66c26578db 100644
--- a/pkgs/tools/system/stress/default.nix
+++ b/pkgs/tools/system/stress/default.nix
@@ -15,7 +15,7 @@ stdenv.mkDerivation rec {
 
   meta = with lib; {
     description = "Simple workload generator for POSIX systems. It imposes a configurable amount of CPU, memory, I/O, and disk stress on the system";
-    license = licenses.gpl2;
+    license = licenses.gpl2Plus;
     platforms = platforms.unix;
     mainProgram = "stress";
   };
diff --git a/pkgs/tools/system/throttled/default.nix b/pkgs/tools/system/throttled/default.nix
index f09c0480865f..076cd1c020a7 100644
--- a/pkgs/tools/system/throttled/default.nix
+++ b/pkgs/tools/system/throttled/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetchFromGitHub, python3Packages, pciutils }:
+{ lib, stdenv, fetchFromGitHub, gobject-introspection, python3Packages, pciutils, wrapGAppsNoGuiHook }:
 
 stdenv.mkDerivation rec {
   pname = "throttled";
@@ -11,7 +11,11 @@ stdenv.mkDerivation rec {
     sha256 = "sha256-0MsPp6y4r/uZB2SplKV+SAiJoxIs2jgOQmQoQQ2ZKwI=";
   };
 
-  nativeBuildInputs = [ python3Packages.wrapPython ];
+  nativeBuildInputs = [
+    gobject-introspection
+    python3Packages.wrapPython
+    wrapGAppsNoGuiHook
+  ];
 
   pythonPath = with python3Packages; [
     configparser
@@ -35,6 +39,12 @@ stdenv.mkDerivation rec {
     runHook postInstall
   '';
 
+  dontWrapGApps = true;
+
+  preFixup = ''
+    makeWrapperArgs+=("''${gappsWrapperArgs[@]}")
+  '';
+
   postFixup = "wrapPythonPrograms";
 
   meta = with lib; {
@@ -42,6 +52,6 @@ stdenv.mkDerivation rec {
     homepage = "https://github.com/erpalma/throttled";
     license = licenses.mit;
     platforms = [ "x86_64-linux" ];
-    maintainers = with maintainers; [ michaelpj ];
+    maintainers = with maintainers; [ ];
   };
 }
diff --git a/pkgs/tools/system/tree/default.nix b/pkgs/tools/system/tree/default.nix
index 191f9466f339..383c281bd212 100644
--- a/pkgs/tools/system/tree/default.nix
+++ b/pkgs/tools/system/tree/default.nix
@@ -39,7 +39,7 @@ stdenv.mkDerivation rec {
   meta = with lib; {
     homepage = "https://oldmanprogrammer.net/source.php?dir=projects/tree";
     description = "Command to produce a depth indented directory listing";
-    license = licenses.gpl2;
+    license = licenses.gpl2Plus;
     longDescription = ''
       Tree is a recursive directory listing command that produces a
       depth indented listing of files, which is colorized ala dircolors if
diff --git a/pkgs/tools/system/ts/default.nix b/pkgs/tools/system/ts/default.nix
index ee51a861d87e..26a8afa951af 100644
--- a/pkgs/tools/system/ts/default.nix
+++ b/pkgs/tools/system/ts/default.nix
@@ -20,7 +20,7 @@ stdenv.mkDerivation rec {
   meta = with lib; {
     homepage = "http://vicerveza.homeunix.net/~viric/soft/ts";
     description = "Task spooler - batch queue";
-    license = licenses.gpl2;
+    license = licenses.gpl2Only;
     maintainers = with maintainers; [ viric ];
     platforms = platforms.all;
     mainProgram = "ts";
diff --git a/pkgs/tools/system/vbetool/default.nix b/pkgs/tools/system/vbetool/default.nix
index 8cc7b338ca96..d969d2f61a1c 100644
--- a/pkgs/tools/system/vbetool/default.nix
+++ b/pkgs/tools/system/vbetool/default.nix
@@ -22,7 +22,7 @@ stdenv.mkDerivation rec {
     homepage = "https://www.codon.org.uk/~mjg59/vbetool/";
     maintainers = [ maintainers.raskin ];
     platforms = platforms.linux;
-    license = licenses.gpl2;
+    license = licenses.gpl2Only;
     mainProgram = "vbetool";
   };
 }
diff --git a/pkgs/tools/system/zenith/Cargo.lock b/pkgs/tools/system/zenith/Cargo.lock
index 0c7828d6a445..ff6923e055f3 100644
--- a/pkgs/tools/system/zenith/Cargo.lock
+++ b/pkgs/tools/system/zenith/Cargo.lock
@@ -35,16 +35,29 @@ dependencies = [
 ]
 
 [[package]]
+name = "async-channel"
+version = "2.2.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "f28243a43d821d11341ab73c80bed182dc015c514b951616cf79bd4af39af0c3"
+dependencies = [
+ "concurrent-queue",
+ "event-listener 5.2.0",
+ "event-listener-strategy 0.5.0",
+ "futures-core",
+ "pin-project-lite",
+]
+
+[[package]]
 name = "async-executor"
-version = "1.5.4"
+version = "1.8.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2c1da3ae8dabd9c00f453a329dfe1fb28da3c0a72e2478cdcd93171740c20499"
+checksum = "17ae5ebefcc48e7452b4987947920dac9450be1110cadf34d1b8c116bdbaf97c"
 dependencies = [
- "async-lock",
+ "async-lock 3.3.0",
  "async-task",
  "concurrent-queue",
  "fastrand 2.0.1",
- "futures-lite",
+ "futures-lite 2.2.0",
  "slab",
 ]
 
@@ -54,10 +67,10 @@ version = "1.6.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "279cf904654eeebfa37ac9bb1598880884924aab82e290aa65c9e77a0e142e06"
 dependencies = [
- "async-lock",
+ "async-lock 2.8.0",
  "autocfg",
  "blocking",
- "futures-lite",
+ "futures-lite 1.13.0",
 ]
 
 [[package]]
@@ -66,21 +79,40 @@ version = "1.13.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "0fc5b45d93ef0529756f812ca52e44c221b35341892d3dcc34132ac02f3dd2af"
 dependencies = [
- "async-lock",
+ "async-lock 2.8.0",
  "autocfg",
  "cfg-if 1.0.0",
  "concurrent-queue",
- "futures-lite",
+ "futures-lite 1.13.0",
  "log",
  "parking",
- "polling",
- "rustix 0.37.25",
+ "polling 2.8.0",
+ "rustix 0.37.27",
  "slab",
  "socket2",
  "waker-fn",
 ]
 
 [[package]]
+name = "async-io"
+version = "2.3.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "8f97ab0c5b00a7cdbe5a371b9a782ee7be1316095885c8a4ea1daf490eb0ef65"
+dependencies = [
+ "async-lock 3.3.0",
+ "cfg-if 1.0.0",
+ "concurrent-queue",
+ "futures-io",
+ "futures-lite 2.2.0",
+ "parking",
+ "polling 3.5.0",
+ "rustix 0.38.31",
+ "slab",
+ "tracing",
+ "windows-sys 0.52.0",
+]
+
+[[package]]
 name = "async-lock"
 version = "2.8.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -90,14 +122,25 @@ dependencies = [
 ]
 
 [[package]]
+name = "async-lock"
+version = "3.3.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "d034b430882f8381900d3fe6f0aaa3ad94f2cb4ac519b429692a1bc2dda4ae7b"
+dependencies = [
+ "event-listener 4.0.3",
+ "event-listener-strategy 0.4.0",
+ "pin-project-lite",
+]
+
+[[package]]
 name = "async-net"
 version = "1.8.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "0434b1ed18ce1cf5769b8ac540e33f01fa9471058b5e89da9e06f3c882a8c12f"
 dependencies = [
- "async-io",
+ "async-io 1.13.0",
  "blocking",
- "futures-lite",
+ "futures-lite 1.13.0",
 ]
 
 [[package]]
@@ -106,50 +149,50 @@ version = "1.8.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "ea6438ba0a08d81529c69b36700fa2f95837bfe3e776ab39cde9c14d9149da88"
 dependencies = [
- "async-io",
- "async-lock",
+ "async-io 1.13.0",
+ "async-lock 2.8.0",
  "async-signal",
  "blocking",
  "cfg-if 1.0.0",
- "event-listener 3.0.0",
- "futures-lite",
- "rustix 0.38.19",
- "windows-sys",
+ "event-listener 3.1.0",
+ "futures-lite 1.13.0",
+ "rustix 0.38.31",
+ "windows-sys 0.48.0",
 ]
 
 [[package]]
 name = "async-signal"
-version = "0.2.4"
+version = "0.2.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d2a5415b7abcdc9cd7d63d6badba5288b2ca017e3fbd4173b8f405449f1a2399"
+checksum = "9e47d90f65a225c4527103a8d747001fc56e375203592b25ad103e1ca13124c5"
 dependencies = [
- "async-io",
- "async-lock",
+ "async-io 2.3.1",
+ "async-lock 2.8.0",
  "atomic-waker",
  "cfg-if 1.0.0",
  "futures-core",
  "futures-io",
- "rustix 0.38.19",
+ "rustix 0.38.31",
  "signal-hook-registry",
  "slab",
- "windows-sys",
+ "windows-sys 0.48.0",
 ]
 
 [[package]]
 name = "async-task"
-version = "4.4.1"
+version = "4.7.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b9441c6b2fe128a7c2bf680a44c34d0df31ce09e5b7e401fcca3faa483dbc921"
+checksum = "fbb36e985947064623dbd357f727af08ffd077f93d696782f3c56365fa2e2799"
 
 [[package]]
 name = "async-trait"
-version = "0.1.73"
+version = "0.1.77"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "bc00ceb34980c03614e35a3a4e218276a0a824e911d07651cd0d858a51e8c0f0"
+checksum = "c980ee35e870bd1a4d2c8294d4c04d0499e67bca1e4b5cefcc693c2fa00caea9"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.38",
+ "syn 2.0.52",
 ]
 
 [[package]]
@@ -175,23 +218,24 @@ dependencies = [
 
 [[package]]
 name = "bindgen"
-version = "0.63.0"
+version = "0.69.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "36d860121800b2a9a94f9b5604b332d5cffb234ce17609ea479d723dbc9d3885"
+checksum = "a00dc851838a2120612785d195287475a3ac45514741da670b735818822129a0"
 dependencies = [
- "bitflags 1.3.2",
+ "bitflags 2.4.2",
  "cexpr",
  "clang-sys",
+ "itertools 0.12.1",
  "lazy_static",
  "lazycell",
  "log",
- "peeking_take_while",
+ "prettyplease",
  "proc-macro2",
  "quote",
  "regex",
  "rustc-hash",
  "shlex",
- "syn 1.0.109",
+ "syn 2.0.52",
  "which",
 ]
 
@@ -203,31 +247,31 @@ checksum = "bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a"
 
 [[package]]
 name = "bitflags"
-version = "2.4.0"
+version = "2.4.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b4682ae6287fcf752ecaabbfcc7b6f9b72aa33933dc23a554d853aea8eea8635"
+checksum = "ed570934406eb16438a4e976b1b4500774099c13b8cb96eec99f620f05090ddf"
 
 [[package]]
 name = "blocking"
-version = "1.4.1"
+version = "1.5.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8c36a4d0d48574b3dd360b4b7d95cc651d2b6557b6402848a27d4b228a473e2a"
+checksum = "6a37913e8dc4ddcc604f0c6d3bf2887c995153af3611de9e23c352b44c1b9118"
 dependencies = [
- "async-channel",
- "async-lock",
+ "async-channel 2.2.0",
+ "async-lock 3.3.0",
  "async-task",
  "fastrand 2.0.1",
  "futures-io",
- "futures-lite",
+ "futures-lite 2.2.0",
  "piper",
  "tracing",
 ]
 
 [[package]]
 name = "bumpalo"
-version = "3.14.0"
+version = "3.15.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7f30e7476521f6f8af1a1c4c0b8cc94f0bee37d91763d0ca2665f299b6cd8aec"
+checksum = "8ea184aa71bb362a1157c896979544cc23974e08fd265f29ea96b59f0b4a555b"
 
 [[package]]
 name = "byte-unit"
@@ -253,12 +297,9 @@ checksum = "df8670b8c7b9dae1793364eafadf7239c40d669904660c5960d74cfd80b46a53"
 
 [[package]]
 name = "cc"
-version = "1.0.83"
+version = "1.0.89"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f1174fb0b6ec23863f8b971027804a42614e347eafb0a95bf0b12cdae21fc4d0"
-dependencies = [
- "libc",
-]
+checksum = "a0ba8f7aaa012f30d5b2861462f6708eccd49c3c39863fe083a308035f63d723"
 
 [[package]]
 name = "cexpr"
@@ -283,43 +324,43 @@ checksum = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd"
 
 [[package]]
 name = "chrono"
-version = "0.4.31"
+version = "0.4.34"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7f2c685bad3eb3d45a01354cedb7d5faa66194d1d58ba6e267a8de788f79db38"
+checksum = "5bc015644b92d5890fab7489e49d21f879d5c990186827d42ec511919404f38b"
 dependencies = [
  "android-tzdata",
  "iana-time-zone",
  "js-sys",
  "num-traits",
  "wasm-bindgen",
- "windows-targets",
+ "windows-targets 0.52.4",
 ]
 
 [[package]]
 name = "clang-sys"
-version = "1.6.1"
+version = "1.7.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c688fc74432808e3eb684cae8830a86be1d66a2bd58e1f248ed0960a590baf6f"
+checksum = "67523a3b4be3ce1989d607a828d036249522dd9c1c8de7f4dd2dae43a37369d1"
 dependencies = [
  "glob",
  "libc",
- "libloading",
+ "libloading 0.8.2",
 ]
 
 [[package]]
 name = "concurrent-queue"
-version = "2.3.0"
+version = "2.4.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f057a694a54f12365049b0958a1685bb52d567f5593b355fbf685838e873d400"
+checksum = "d16048cd947b08fa32c24458a22f5dc5e835264f689f4f5653210c69fd107363"
 dependencies = [
  "crossbeam-utils",
 ]
 
 [[package]]
 name = "core-foundation"
-version = "0.9.3"
+version = "0.9.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "194a7a9e6de53fa55116934067c844d9d749312f75c6f6d0980e8c252f8c2146"
+checksum = "91e195e091a93c46f7102ec7818a2aa394e1e1771c3ab4825963fa03e45afb8f"
 dependencies = [
  "core-foundation-sys",
  "libc",
@@ -327,51 +368,43 @@ dependencies = [
 
 [[package]]
 name = "core-foundation-sys"
-version = "0.8.4"
+version = "0.8.6"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e496a50fda8aacccc86d7529e2c1e0892dbd0f898a6b5645b5561b89c3210efa"
+checksum = "06ea2b9bc92be3c2baa9334a323ebca2d6f074ff852cd1d7b11064035cd3868f"
 
 [[package]]
 name = "crc32fast"
-version = "1.3.2"
+version = "1.4.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b540bd8bc810d3885c6ea91e2018302f68baba2129ab3e88f32389ee9370880d"
+checksum = "b3855a8a784b474f333699ef2bbca9db2c4a1f6d9088a90a2d25b1eb53111eaa"
 dependencies = [
  "cfg-if 1.0.0",
 ]
 
 [[package]]
 name = "crossbeam-deque"
-version = "0.8.3"
+version = "0.8.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ce6fd6f855243022dcecf8702fef0c297d4338e226845fe067f6341ad9fa0cef"
+checksum = "613f8cc01fe9cf1a3eb3d7f488fd2fa8388403e97039e2f73692932e291a770d"
 dependencies = [
- "cfg-if 1.0.0",
  "crossbeam-epoch",
  "crossbeam-utils",
 ]
 
 [[package]]
 name = "crossbeam-epoch"
-version = "0.9.15"
+version = "0.9.18"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ae211234986c545741a7dc064309f67ee1e5ad243d0e48335adc0484d960bcc7"
+checksum = "5b82ac4a3c2ca9c3460964f020e1402edd5753411d7737aa39c3714ad1b5420e"
 dependencies = [
- "autocfg",
- "cfg-if 1.0.0",
  "crossbeam-utils",
- "memoffset 0.9.0",
- "scopeguard",
 ]
 
 [[package]]
 name = "crossbeam-utils"
-version = "0.8.16"
+version = "0.8.19"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5a22b2d63d4d1dc0b7f1b6b2747dd0088008a9be28b6ddf0b1e7d335e3037294"
-dependencies = [
- "cfg-if 1.0.0",
-]
+checksum = "248e3bacc7dc6baa3b21e405ee045c3047101a49145e7e9eca583ab4c2ca5345"
 
 [[package]]
 name = "crossterm"
@@ -379,7 +412,7 @@ version = "0.27.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "f476fe445d41c9e991fd07515a6f463074b782242ccf4a5b7b1d1012e70824df"
 dependencies = [
- "bitflags 2.4.0",
+ "bitflags 2.4.2",
  "crossterm_winapi",
  "libc",
  "mio",
@@ -400,9 +433,9 @@ dependencies = [
 
 [[package]]
 name = "darling"
-version = "0.10.2"
+version = "0.20.8"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0d706e75d87e35569db781a9b5e2416cff1236a47ed380831f959382ccd5f858"
+checksum = "54e36fcd13ed84ffdfda6f5be89b31287cbb80c439841fe69e04841435464391"
 dependencies = [
  "darling_core",
  "darling_macro",
@@ -410,27 +443,27 @@ dependencies = [
 
 [[package]]
 name = "darling_core"
-version = "0.10.2"
+version = "0.20.8"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f0c960ae2da4de88a91b2d920c2a7233b400bc33cb28453a2987822d8392519b"
+checksum = "9c2cf1c23a687a1feeb728783b993c4e1ad83d99f351801977dd809b48d0a70f"
 dependencies = [
  "fnv",
  "ident_case",
  "proc-macro2",
  "quote",
  "strsim",
- "syn 1.0.109",
+ "syn 2.0.52",
 ]
 
 [[package]]
 name = "darling_macro"
-version = "0.10.2"
+version = "0.20.8"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d9b5a2f4ac4969822c62224815d069952656cadc7084fdca9751e6d959189b72"
+checksum = "a668eda54683121533a393014d8692171709ff57a7d61f187b6e782719f8933f"
 dependencies = [
  "darling_core",
  "quote",
- "syn 1.0.109",
+ "syn 2.0.52",
 ]
 
 [[package]]
@@ -482,27 +515,27 @@ checksum = "fea41bba32d969b513997752735605054bc0dfa92b4c56bf1189f2e174be7a10"
 
 [[package]]
 name = "either"
-version = "1.9.0"
+version = "1.10.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a26ae43d7bcc3b814de94796a5e736d4029efb0ee900c12e2d54c993ad1a1e07"
+checksum = "11157ac094ffbdde99aa67b23417ebdd801842852b500e395a45a9c0aac03e4a"
 
 [[package]]
 name = "env_logger"
-version = "0.10.0"
+version = "0.10.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "85cdab6a89accf66733ad5a1693a4dcced6aeff64602b634530dd73c1f3ee9f0"
+checksum = "4cd405aab171cb85d6735e5c8d9db038c17d3ca007a4d2c25f337935c3d90580"
 dependencies = [
  "log",
 ]
 
 [[package]]
 name = "errno"
-version = "0.3.5"
+version = "0.3.8"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ac3e13f66a2f95e32a39eaa81f6b95d42878ca0e1db0c7543723dfe12557e860"
+checksum = "a258e46cdc063eb8519c00b9fc845fc47bcfca4130e2f08e88665ceda8474245"
 dependencies = [
  "libc",
- "windows-sys",
+ "windows-sys 0.52.0",
 ]
 
 [[package]]
@@ -513,9 +546,20 @@ checksum = "0206175f82b8d6bf6652ff7d71a1e27fd2e4efde587fd368662814d6ec1d9ce0"
 
 [[package]]
 name = "event-listener"
-version = "3.0.0"
+version = "3.1.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "d93877bcde0eb80ca09131a08d23f0a5c18a620b01db137dba666d18cd9b30c2"
+dependencies = [
+ "concurrent-queue",
+ "parking",
+ "pin-project-lite",
+]
+
+[[package]]
+name = "event-listener"
+version = "4.0.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "29e56284f00d94c1bc7fd3c77027b4623c88c1f53d8d2394c6199f2921dea325"
+checksum = "67b215c49b2b248c855fb73579eb1f4f26c38ffdc12973e20e07b91d78d5646e"
 dependencies = [
  "concurrent-queue",
  "parking",
@@ -523,6 +567,37 @@ dependencies = [
 ]
 
 [[package]]
+name = "event-listener"
+version = "5.2.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "2b5fb89194fa3cad959b833185b3063ba881dbfc7030680b314250779fb4cc91"
+dependencies = [
+ "concurrent-queue",
+ "parking",
+ "pin-project-lite",
+]
+
+[[package]]
+name = "event-listener-strategy"
+version = "0.4.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "958e4d70b6d5e81971bebec42271ec641e7ff4e170a6fa605f2b8a8b65cb97d3"
+dependencies = [
+ "event-listener 4.0.3",
+ "pin-project-lite",
+]
+
+[[package]]
+name = "event-listener-strategy"
+version = "0.5.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "feedafcaa9b749175d5ac357452a9d41ea2911da598fde46ce1fe02c37751291"
+dependencies = [
+ "event-listener 5.2.0",
+ "pin-project-lite",
+]
+
+[[package]]
 name = "fastrand"
 version = "1.9.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -555,9 +630,9 @@ checksum = "3f9eec918d3f24069decb9af1554cad7c880e2da24a9afd88aca000531ab82c1"
 
 [[package]]
 name = "futures"
-version = "0.3.28"
+version = "0.3.30"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "23342abe12aba583913b2e62f22225ff9c950774065e4bfb61a19cd9770fec40"
+checksum = "645c6916888f6cb6350d2550b80fb63e734897a8498abe35cfb732b6487804b0"
 dependencies = [
  "futures-channel",
  "futures-core",
@@ -570,9 +645,9 @@ dependencies = [
 
 [[package]]
 name = "futures-channel"
-version = "0.3.28"
+version = "0.3.30"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "955518d47e09b25bbebc7a18df10b81f0c766eaf4c4f1cccef2fca5f2a4fb5f2"
+checksum = "eac8f7d7865dcb88bd4373ab671c8cf4508703796caa2b1985a9ca867b3fcb78"
 dependencies = [
  "futures-core",
  "futures-sink",
@@ -580,15 +655,15 @@ dependencies = [
 
 [[package]]
 name = "futures-core"
-version = "0.3.28"
+version = "0.3.30"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4bca583b7e26f571124fe5b7561d49cb2868d79116cfa0eefce955557c6fee8c"
+checksum = "dfc6580bb841c5a68e9ef15c77ccc837b40a7504914d52e47b8b0e9bbda25a1d"
 
 [[package]]
 name = "futures-executor"
-version = "0.3.28"
+version = "0.3.30"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ccecee823288125bd88b4d7f565c9e58e41858e47ab72e8ea2d64e93624386e0"
+checksum = "a576fc72ae164fca6b9db127eaa9a9dda0d61316034f33a0a0d4eda41f02b01d"
 dependencies = [
  "futures-core",
  "futures-task",
@@ -597,9 +672,9 @@ dependencies = [
 
 [[package]]
 name = "futures-io"
-version = "0.3.28"
+version = "0.3.30"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4fff74096e71ed47f8e023204cfd0aa1289cd54ae5430a9523be060cdb849964"
+checksum = "a44623e20b9681a318efdd71c299b6b222ed6f231972bfe2f224ebad6311f0c1"
 
 [[package]]
 name = "futures-lite"
@@ -617,39 +692,52 @@ dependencies = [
 ]
 
 [[package]]
+name = "futures-lite"
+version = "2.2.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "445ba825b27408685aaecefd65178908c36c6e96aaf6d8599419d46e624192ba"
+dependencies = [
+ "fastrand 2.0.1",
+ "futures-core",
+ "futures-io",
+ "parking",
+ "pin-project-lite",
+]
+
+[[package]]
 name = "futures-macro"
-version = "0.3.28"
+version = "0.3.30"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "89ca545a94061b6365f2c7355b4b32bd20df3ff95f02da9329b34ccc3bd6ee72"
+checksum = "87750cf4b7a4c0625b1529e4c543c2182106e4dedc60a2a6455e00d212c489ac"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.38",
+ "syn 2.0.52",
 ]
 
 [[package]]
 name = "futures-sink"
-version = "0.3.28"
+version = "0.3.30"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f43be4fe21a13b9781a69afa4985b0f6ee0e1afab2c6f454a8cf30e2b2237b6e"
+checksum = "9fb8e00e87438d937621c1c6269e53f536c14d3fbd6a042bb24879e57d474fb5"
 
 [[package]]
 name = "futures-task"
-version = "0.3.28"
+version = "0.3.30"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "76d3d132be6c0e6aa1534069c705a74a5997a356c0dc2f86a47765e5617c5b65"
+checksum = "38d84fa142264698cdce1a9f9172cf383a0c82de1bddcf3092901442c4097004"
 
 [[package]]
 name = "futures-timer"
-version = "3.0.2"
+version = "3.0.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e64b03909df88034c26dc1547e8970b91f98bdb65165d6a4e9110d94263dbb2c"
+checksum = "f288b0a4f20f9a56b5d1da57e2227c661b7b16168e2f72365f57b63326e29b24"
 
 [[package]]
 name = "futures-util"
-version = "0.3.28"
+version = "0.3.30"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "26b01e40b772d54cf6c6d721c1d1abd0647a0106a12ecaa1c186273392a69533"
+checksum = "3d6401deb83407ab3da39eba7e33987a73c3df0c82b4bb5813ee871c19c41d48"
 dependencies = [
  "futures-channel",
  "futures-core",
@@ -665,9 +753,9 @@ dependencies = [
 
 [[package]]
 name = "getrandom"
-version = "0.2.10"
+version = "0.2.12"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "be4136b2a15dd319360be1c07d9933517ccf0be8f16bf62a3bee4f0d618df427"
+checksum = "190092ea657667030ac6a35e305e62fc4dd69fd98ac98631e5d3a2b1575a12b5"
 dependencies = [
  "cfg-if 1.0.0",
  "libc",
@@ -881,31 +969,31 @@ dependencies = [
 
 [[package]]
 name = "hermit-abi"
-version = "0.3.3"
+version = "0.3.9"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d77f7ec81a6d05a3abb01ab6eb7590f6083d08449fe5a1c8b1e620283546ccb7"
+checksum = "d231dfb89cfffdbc30e7fc41579ed6066ad03abda9e567ccafae602b97ec5024"
 
 [[package]]
 name = "home"
-version = "0.5.5"
+version = "0.5.9"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5444c27eef6923071f7ebcc33e3444508466a76f7a2b93da00ed6e19f30c1ddb"
+checksum = "e3d1354bf6b7235cb4a0576c2619fd4ed18183f689b12b006a0ee7329eeff9a5"
 dependencies = [
- "windows-sys",
+ "windows-sys 0.52.0",
 ]
 
 [[package]]
 name = "iana-time-zone"
-version = "0.1.57"
+version = "0.1.60"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2fad5b825842d2b38bd206f3e81d6957625fd7f0a361e345c30e01a0ae2dd613"
+checksum = "e7ffbb5a1b541ea2561f8c41c087286cc091e21e556a4f09a8f6cbf17b69b141"
 dependencies = [
  "android_system_properties",
  "core-foundation-sys",
  "iana-time-zone-haiku",
  "js-sys",
  "wasm-bindgen",
- "windows",
+ "windows-core",
 ]
 
 [[package]]
@@ -946,7 +1034,7 @@ checksum = "eae7b9aee968036d54dce06cebaefd919e4472e753296daccd6d344e3e2df0c2"
 dependencies = [
  "hermit-abi",
  "libc",
- "windows-sys",
+ "windows-sys 0.48.0",
 ]
 
 [[package]]
@@ -959,10 +1047,19 @@ dependencies = [
 ]
 
 [[package]]
+name = "itertools"
+version = "0.12.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "ba291022dbbd398a455acf126c1e341954079855bc60dfdda641363bd6922569"
+dependencies = [
+ "either",
+]
+
+[[package]]
 name = "js-sys"
-version = "0.3.64"
+version = "0.3.69"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c5f195fe497f702db0f318b07fdd68edb16955aed830df8363d837542f8f935a"
+checksum = "29c15563dc2726973df627357ce0c9ddddbea194836909d655df6a75d2cf296d"
 dependencies = [
  "wasm-bindgen",
 ]
@@ -981,9 +1078,9 @@ checksum = "830d08ce1d1d941e6b30645f1a0eb5643013d835ce3779a5fc208261dbe10f55"
 
 [[package]]
 name = "libc"
-version = "0.2.149"
+version = "0.2.153"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a08173bc88b7955d1b3145aa561539096c421ac8debde8cbc3612ec635fee29b"
+checksum = "9c198f91728a82281a64e1f4f9eeb25d82cb32a5de251c6bd1b5154d63a8e7bd"
 
 [[package]]
 name = "libloading"
@@ -996,6 +1093,27 @@ dependencies = [
 ]
 
 [[package]]
+name = "libloading"
+version = "0.8.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "2caa5afb8bf9f3a2652760ce7d4f62d21c4d5a423e68466fca30df82f2330164"
+dependencies = [
+ "cfg-if 1.0.0",
+ "windows-targets 0.52.4",
+]
+
+[[package]]
+name = "libredox"
+version = "0.0.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "85c833ca1e66078851dba29046874e38f08b2c883700aa29a03ddd3b23814ee8"
+dependencies = [
+ "bitflags 2.4.2",
+ "libc",
+ "redox_syscall",
+]
+
+[[package]]
 name = "linux-raw-sys"
 version = "0.3.8"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -1003,15 +1121,15 @@ checksum = "ef53942eb7bf7ff43a617b3e2c1c4a5ecf5944a7c1bc12d7ee39bbb15e5c1519"
 
 [[package]]
 name = "linux-raw-sys"
-version = "0.4.10"
+version = "0.4.13"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "da2479e8c062e40bf0066ffa0bc823de0a9368974af99c9f6df941d2c231e03f"
+checksum = "01cda141df6706de531b6c46c3a33ecca755538219bd484262fa09410c13539c"
 
 [[package]]
 name = "linux-taskstats"
-version = "0.4.0"
+version = "0.5.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "60fdd14efd42f7d3383f76d5da9cbc1056ac6497be7352eadfabef14a5d699c0"
+checksum = "ced563164e6cf093308728858ac54a04c957c5e820e6452e19801102f72a847c"
 dependencies = [
  "bindgen",
  "libc",
@@ -1022,9 +1140,9 @@ dependencies = [
 
 [[package]]
 name = "lock_api"
-version = "0.4.10"
+version = "0.4.11"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c1cc9717a20b1bb222f333e6a92fd32f7d8a18ddc5a3191a11af45dcbf4dcd16"
+checksum = "3c168f8615b12bc01f9c17e2eb0cc07dcae1940121185446edc3744920e8ef45"
 dependencies = [
  "autocfg",
  "scopeguard",
@@ -1032,9 +1150,9 @@ dependencies = [
 
 [[package]]
 name = "log"
-version = "0.4.20"
+version = "0.4.21"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b5e6163cb8c49088c2c36f57875e58ccd8c87c7427f7fbd50ea6710b2f3f2e8f"
+checksum = "90ed8c1e510134f979dbc4f070f87d4313098b704861a105fe34231c70a3901c"
 
 [[package]]
 name = "macaddr"
@@ -1053,9 +1171,9 @@ dependencies = [
 
 [[package]]
 name = "mach2"
-version = "0.4.1"
+version = "0.4.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6d0d1830bcd151a6fc4aea1369af235b36c1528fe976b8ff678683c9995eade8"
+checksum = "19b955cdeb2a02b9117f121ce63aa52d08ade45de53e48fe6a38b39c10f6f709"
 dependencies = [
  "libc",
 ]
@@ -1076,15 +1194,6 @@ dependencies = [
 ]
 
 [[package]]
-name = "memoffset"
-version = "0.9.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5a634b1c61a95585bd15607c6ab0c4e5b226e695ff2800ba0cdccddf208c406c"
-dependencies = [
- "autocfg",
-]
-
-[[package]]
 name = "minimal-lexical"
 version = "0.2.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -1092,23 +1201,23 @@ checksum = "68354c5c6bd36d73ff3feceb05efa59b6acb7626617f4962be322a825e61f79a"
 
 [[package]]
 name = "miniz_oxide"
-version = "0.7.1"
+version = "0.7.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e7810e0be55b428ada41041c41f32c9f1a42817901b4ccf45fa3d4b6561e74c7"
+checksum = "9d811f3e15f28568be3407c8e7fdb6514c1cda3cb30683f15b6a1a1dc4ea14a7"
 dependencies = [
  "adler",
 ]
 
 [[package]]
 name = "mio"
-version = "0.8.8"
+version = "0.8.11"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "927a765cd3fc26206e66b296465fa9d3e5ab003e651c1b3c060e7956d96b19d2"
+checksum = "a4a650543ca06a924e8b371db273b2756685faae30f8487da1b56505a8f78b0c"
 dependencies = [
  "libc",
  "log",
  "wasi",
- "windows-sys",
+ "windows-sys 0.48.0",
 ]
 
 [[package]]
@@ -1132,7 +1241,7 @@ dependencies = [
  "cc",
  "cfg-if 1.0.0",
  "libc",
- "memoffset 0.6.5",
+ "memoffset",
 ]
 
 [[package]]
@@ -1167,22 +1276,21 @@ dependencies = [
 
 [[package]]
 name = "num-derive"
-version = "0.4.1"
+version = "0.4.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "cfb77679af88f8b125209d354a202862602672222e7f2313fdd6dc349bad4712"
+checksum = "ed3955f1a9c7c0c15e092f9c887db08b1fc683305fdf6eb6684f22555355e202"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.38",
+ "syn 2.0.52",
 ]
 
 [[package]]
 name = "num-integer"
-version = "0.1.45"
+version = "0.1.46"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "225d3389fb3509a24c93f5c29eb6bde2586b98d9f016636dff58d7c6f7569cd9"
+checksum = "7969661fd2958a5cb096e56c8e1ad0444ac2bbcd0061bd28660485a44879858f"
 dependencies = [
- "autocfg",
  "num-traits",
 ]
 
@@ -1199,9 +1307,9 @@ dependencies = [
 
 [[package]]
 name = "num-traits"
-version = "0.2.17"
+version = "0.2.18"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "39e3200413f237f41ab11ad6d161bc7239c84dcb631773ccd7de3dfe4b5c267c"
+checksum = "da0df0e5185db44f69b44f26786fe401b6c293d1907744beaa7fa62b2e5a517a"
 dependencies = [
  "autocfg",
 ]
@@ -1213,7 +1321,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "7cd21b9f5a1cce3c3515c9ffa85f5c7443e07162dae0ccf4339bb7ca38ad3454"
 dependencies = [
  "bitflags 1.3.2",
- "libloading",
+ "libloading 0.7.4",
  "nvml-wrapper-sys",
  "static_assertions",
  "thiserror",
@@ -1226,14 +1334,14 @@ version = "0.7.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "c961a2ea9e91c59a69b78e69090f6f5b867bb46c0c56de9482da232437c4987e"
 dependencies = [
- "libloading",
+ "libloading 0.7.4",
 ]
 
 [[package]]
 name = "once_cell"
-version = "1.18.0"
+version = "1.19.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "dd8b5dd2ae5ed71462c540258bedcb51965123ad7e7ccf4b9a8cafaa4a63576d"
+checksum = "3fdb12b2476b595f9358c5161aa467c2438859caa136dec86c26fdd2efe17b92"
 
 [[package]]
 name = "ordered-float"
@@ -1246,9 +1354,9 @@ dependencies = [
 
 [[package]]
 name = "parking"
-version = "2.1.1"
+version = "2.2.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e52c774a4c39359c1d1c52e43f73dd91a75a614652c825408eec30c95a9b2067"
+checksum = "bb813b8af86854136c6922af0598d719255ecb2179515e6e7730d468f05c9cae"
 
 [[package]]
 name = "parking_lot"
@@ -1262,15 +1370,15 @@ dependencies = [
 
 [[package]]
 name = "parking_lot_core"
-version = "0.9.8"
+version = "0.9.9"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "93f00c865fe7cabf650081affecd3871070f26767e7b2070a3ffae14c654b447"
+checksum = "4c42a9226546d68acdd9c0a280d17ce19bfe27a46bf68784e4066115788d008e"
 dependencies = [
  "cfg-if 1.0.0",
  "libc",
- "redox_syscall 0.3.5",
+ "redox_syscall",
  "smallvec",
- "windows-targets",
+ "windows-targets 0.48.5",
 ]
 
 [[package]]
@@ -1280,12 +1388,6 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "de3145af08024dea9fa9914f381a17b8fc6034dfb00f3a84013f7ff43f29ed4c"
 
 [[package]]
-name = "peeking_take_while"
-version = "0.1.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "19b17cddbe7ec3f8bc800887bab5e717348c95ea2ca0b1bf0837fb964dc67099"
-
-[[package]]
 name = "pin-project-lite"
 version = "0.2.13"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -1327,23 +1429,47 @@ dependencies = [
  "libc",
  "log",
  "pin-project-lite",
- "windows-sys",
+ "windows-sys 0.48.0",
+]
+
+[[package]]
+name = "polling"
+version = "3.5.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "24f040dee2588b4963afb4e420540439d126f73fdacf4a9c486a96d840bac3c9"
+dependencies = [
+ "cfg-if 1.0.0",
+ "concurrent-queue",
+ "pin-project-lite",
+ "rustix 0.38.31",
+ "tracing",
+ "windows-sys 0.52.0",
+]
+
+[[package]]
+name = "prettyplease"
+version = "0.2.16"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "a41cf62165e97c7f814d2221421dbb9afcbcdb0a88068e5ea206e19951c2cbb5"
+dependencies = [
+ "proc-macro2",
+ "syn 2.0.52",
 ]
 
 [[package]]
 name = "proc-macro2"
-version = "1.0.69"
+version = "1.0.78"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "134c189feb4956b20f6f547d2cf727d4c0fe06722b20a0eec87ed445a97f92da"
+checksum = "e2422ad645d89c99f8f3e6b88a9fdeca7fabeac836b1002371c4367c8f984aae"
 dependencies = [
  "unicode-ident",
 ]
 
 [[package]]
 name = "quote"
-version = "1.0.33"
+version = "1.0.35"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5267fca4496028628a95160fc423a33e8b2e6af8a5302579e322e4b520293cae"
+checksum = "291ec9ab5efd934aaf503a6466c5d5251535d108ee747472c3977cc5acc868ef"
 dependencies = [
  "proc-macro2",
 ]
@@ -1354,11 +1480,11 @@ version = "0.23.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "2e2e4cd95294a85c3b4446e63ef054eea43e0205b1fd60120c16b74ff7ff96ad"
 dependencies = [
- "bitflags 2.4.0",
+ "bitflags 2.4.2",
  "cassowary",
  "crossterm",
  "indoc",
- "itertools",
+ "itertools 0.11.0",
  "paste",
  "strum",
  "unicode-segmentation",
@@ -1376,9 +1502,9 @@ dependencies = [
 
 [[package]]
 name = "rayon"
-version = "1.8.0"
+version = "1.9.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9c27db03db7734835b3f53954b534c91069375ce6ccaa2e065441e07d9b6cdb1"
+checksum = "e4963ed1bc86e4f3ee217022bd855b297cef07fb9eac5dfa1f788b220b49b3bd"
 dependencies = [
  "either",
  "rayon-core",
@@ -1386,9 +1512,9 @@ dependencies = [
 
 [[package]]
 name = "rayon-core"
-version = "1.12.0"
+version = "1.12.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5ce3fb6ad83f861aac485e76e1985cd109d9a3713802152be56c3b1f0e0658ed"
+checksum = "1465873a3dfdaa8ae7cb14b4383657caab0b3e8a0aa9ae8e04b044854c8dfce2"
 dependencies = [
  "crossbeam-deque",
  "crossbeam-utils",
@@ -1396,30 +1522,21 @@ dependencies = [
 
 [[package]]
 name = "redox_syscall"
-version = "0.2.16"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "fb5a58c1855b4b6819d59012155603f0b22ad30cad752600aadfcb695265519a"
-dependencies = [
- "bitflags 1.3.2",
-]
-
-[[package]]
-name = "redox_syscall"
-version = "0.3.5"
+version = "0.4.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "567664f262709473930a4bf9e51bf2ebf3348f2e748ccc50dea20646858f8f29"
+checksum = "4722d768eff46b75989dd134e5c353f0d6296e5aaa3132e776cbdb56be7731aa"
 dependencies = [
  "bitflags 1.3.2",
 ]
 
 [[package]]
 name = "redox_users"
-version = "0.4.3"
+version = "0.4.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b033d837a7cf162d7993aded9304e30a83213c648b6e389db233191f891e5c2b"
+checksum = "a18479200779601e498ada4e8c1e1f50e3ee19deb0259c25825a98b5603b2cb4"
 dependencies = [
  "getrandom",
- "redox_syscall 0.2.16",
+ "libredox",
  "thiserror",
 ]
 
@@ -1446,29 +1563,29 @@ checksum = "08d43f7aa6b08d49f382cde6a7982047c3426db949b1424bc4b7ec9ae12c6ce2"
 
 [[package]]
 name = "rustix"
-version = "0.37.25"
+version = "0.37.27"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d4eb579851244c2c03e7c24f501c3432bed80b8f720af1d6e5b0e0f01555a035"
+checksum = "fea8ca367a3a01fe35e6943c400addf443c0f57670e6ec51196f71a4b8762dd2"
 dependencies = [
  "bitflags 1.3.2",
  "errno",
  "io-lifetimes",
  "libc",
  "linux-raw-sys 0.3.8",
- "windows-sys",
+ "windows-sys 0.48.0",
 ]
 
 [[package]]
 name = "rustix"
-version = "0.38.19"
+version = "0.38.31"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "745ecfa778e66b2b63c88a61cb36e0eea109e803b0b86bf9879fbc77c70e86ed"
+checksum = "6ea3e1a662af26cd7a3ba09c0297a31af215563ecf42817c98df621387f4e949"
 dependencies = [
- "bitflags 2.4.0",
+ "bitflags 2.4.2",
  "errno",
  "libc",
- "linux-raw-sys 0.4.10",
- "windows-sys",
+ "linux-raw-sys 0.4.13",
+ "windows-sys 0.52.0",
 ]
 
 [[package]]
@@ -1485,29 +1602,29 @@ checksum = "94143f37725109f92c262ed2cf5e59bce7498c01bcc1502d7b9afe439a4e9f49"
 
 [[package]]
 name = "serde"
-version = "1.0.189"
+version = "1.0.197"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8e422a44e74ad4001bdc8eede9a4570ab52f71190e9c076d14369f38b9200537"
+checksum = "3fb1c873e1b9b056a4dc4c0c198b24c3ffa059243875552b2bd0933b1aee4ce2"
 dependencies = [
  "serde_derive",
 ]
 
 [[package]]
 name = "serde_derive"
-version = "1.0.189"
+version = "1.0.197"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1e48d1f918009ce3145511378cf68d613e3b3d9137d67272562080d68a2b32d5"
+checksum = "7eb0b34b42edc17f6b7cac84a52a1c5f0e1bb2227e997ca9011ea3dd34e8610b"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.38",
+ "syn 2.0.52",
 ]
 
 [[package]]
 name = "shlex"
-version = "1.2.0"
+version = "1.3.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a7cee0529a6d40f580e7a5e6c495c8fbfe21b7b52795ed4bb5e62cdf92bc6380"
+checksum = "0fda2ff0d084019ba4d7c6f371c95d8fd75ce3524c3cb8fb653a3023f6323e64"
 
 [[package]]
 name = "signal-hook"
@@ -1550,9 +1667,9 @@ dependencies = [
 
 [[package]]
 name = "smallvec"
-version = "1.11.1"
+version = "1.13.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "942b4a808e05215192e39f4ab80813e599068285906cc91aa64f923db842bd5a"
+checksum = "e6ecd384b10a64542d77071bd64bd7b231f4ed5940fba55e98c3de13824cf3d7"
 
 [[package]]
 name = "smol"
@@ -1560,22 +1677,22 @@ version = "1.3.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "13f2b548cd8447f8de0fdf1c592929f70f4fc7039a05e47404b0d096ec6987a1"
 dependencies = [
- "async-channel",
+ "async-channel 1.9.0",
  "async-executor",
  "async-fs",
- "async-io",
- "async-lock",
+ "async-io 1.13.0",
+ "async-lock 2.8.0",
  "async-net",
  "async-process",
  "blocking",
- "futures-lite",
+ "futures-lite 1.13.0",
 ]
 
 [[package]]
 name = "socket2"
-version = "0.4.9"
+version = "0.4.10"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "64a4a911eed85daf18834cfaa86a79b7d266ff93ff5ba14005426219480ed662"
+checksum = "9f7916fc008ca5542385b89a3d3ce689953c143e9304a9bf8beec1de48994c0d"
 dependencies = [
  "libc",
  "winapi",
@@ -1606,9 +1723,9 @@ checksum = "a2eb9349b6444b326872e140eb1cf5e7c522154d69e7a0ffb0fb81c06b37543f"
 
 [[package]]
 name = "strsim"
-version = "0.9.3"
+version = "0.10.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6446ced80d6c486436db5c078dde11a9f73d42b57fb273121e160b84f63d894c"
+checksum = "73473c0e59e6d5812c5dfe2a064a6444949f089e20eec9a2e5506596494e4623"
 
 [[package]]
 name = "strum"
@@ -1621,15 +1738,15 @@ dependencies = [
 
 [[package]]
 name = "strum_macros"
-version = "0.25.2"
+version = "0.25.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ad8d03b598d3d0fff69bf533ee3ef19b8eeb342729596df84bcc7e1f96ec4059"
+checksum = "23dc1fa9ac9c169a78ba62f0b841814b7abae11bdd047b9c58f893439e309ea0"
 dependencies = [
  "heck",
  "proc-macro2",
  "quote",
  "rustversion",
- "syn 2.0.38",
+ "syn 2.0.52",
 ]
 
 [[package]]
@@ -1645,9 +1762,9 @@ dependencies = [
 
 [[package]]
 name = "syn"
-version = "2.0.38"
+version = "2.0.52"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e96b79aaa137db8f61e26363a0c9b47d8b4ec75da28b7d1d614c2303e232408b"
+checksum = "b699d15b36d1f02c3e7c69f8ffef53de37aefae075d8488d4ba1a7788d574a07"
 dependencies = [
  "proc-macro2",
  "quote",
@@ -1670,29 +1787,29 @@ dependencies = [
 
 [[package]]
 name = "thiserror"
-version = "1.0.49"
+version = "1.0.57"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1177e8c6d7ede7afde3585fd2513e611227efd6481bd78d2e82ba1ce16557ed4"
+checksum = "1e45bcbe8ed29775f228095caf2cd67af7a4ccf756ebff23a306bf3e8b47b24b"
 dependencies = [
  "thiserror-impl",
 ]
 
 [[package]]
 name = "thiserror-impl"
-version = "1.0.49"
+version = "1.0.57"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "10712f02019e9288794769fba95cd6847df9874d49d871d062172f9dd41bc4cc"
+checksum = "a953cb265bef375dae3de6663da4d3804eee9682ea80d8e2542529b73c531c81"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.38",
+ "syn 2.0.52",
 ]
 
 [[package]]
 name = "tracing"
-version = "0.1.39"
+version = "0.1.40"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ee2ef2af84856a50c1d430afce2fdded0a4ec7eda868db86409b4543df0797f9"
+checksum = "c3523ab5a71916ccf420eebdf5521fcef02141234bbc0b8a49f2fdc4544364ef"
 dependencies = [
  "pin-project-lite",
  "tracing-core",
@@ -1718,9 +1835,9 @@ checksum = "3354b9ac3fae1ff6755cb6db53683adb661634f67557942dea4facebec0fee4b"
 
 [[package]]
 name = "unicode-segmentation"
-version = "1.10.1"
+version = "1.11.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1dd624098567895118886609431a7c3b8f516e41d30e0643f03d94592a147e36"
+checksum = "d4c87d22b6e3f4a18d4d40ef354e97c90fcb14dd91d7dc0aa9d8a1172ebf7202"
 
 [[package]]
 name = "unicode-width"
@@ -1750,22 +1867,22 @@ dependencies = [
 ]
 
 [[package]]
-name = "users"
-version = "0.11.0"
+name = "utf8-width"
+version = "0.1.7"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "86bd8d4e895da8537e5315b8254664e6b769c4ff3db18321b297a1e7004392e3"
+
+[[package]]
+name = "uzers"
+version = "0.11.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "24cc0f6d6f267b73e5a2cadf007ba8f9bc39c6a6f9666f8cf25ea809a153b032"
+checksum = "76d283dc7e8c901e79e32d077866eaf599156cbf427fffa8289aecc52c5c3f63"
 dependencies = [
  "libc",
  "log",
 ]
 
 [[package]]
-name = "utf8-width"
-version = "0.1.6"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5190c9442dcdaf0ddd50f37420417d219ae5261bbf5db120d0f9bab996c9cba1"
-
-[[package]]
 name = "waker-fn"
 version = "1.1.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -1779,9 +1896,9 @@ checksum = "9c8d87e72b64a3b4db28d11ce29237c246188f4f51057d65a7eab63b7987e423"
 
 [[package]]
 name = "wasm-bindgen"
-version = "0.2.87"
+version = "0.2.92"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7706a72ab36d8cb1f80ffbf0e071533974a60d0a308d01a5d0375bf60499a342"
+checksum = "4be2531df63900aeb2bca0daaaddec08491ee64ceecbee5076636a3b026795a8"
 dependencies = [
  "cfg-if 1.0.0",
  "wasm-bindgen-macro",
@@ -1789,24 +1906,24 @@ dependencies = [
 
 [[package]]
 name = "wasm-bindgen-backend"
-version = "0.2.87"
+version = "0.2.92"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5ef2b6d3c510e9625e5fe6f509ab07d66a760f0885d858736483c32ed7809abd"
+checksum = "614d787b966d3989fa7bb98a654e369c762374fd3213d212cfc0251257e747da"
 dependencies = [
  "bumpalo",
  "log",
  "once_cell",
  "proc-macro2",
  "quote",
- "syn 2.0.38",
+ "syn 2.0.52",
  "wasm-bindgen-shared",
 ]
 
 [[package]]
 name = "wasm-bindgen-macro"
-version = "0.2.87"
+version = "0.2.92"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "dee495e55982a3bd48105a7b947fd2a9b4a8ae3010041b9e0faab3f9cd028f1d"
+checksum = "a1f8823de937b71b9460c0c34e25f3da88250760bec0ebac694b49997550d726"
 dependencies = [
  "quote",
  "wasm-bindgen-macro-support",
@@ -1814,22 +1931,22 @@ dependencies = [
 
 [[package]]
 name = "wasm-bindgen-macro-support"
-version = "0.2.87"
+version = "0.2.92"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "54681b18a46765f095758388f2d0cf16eb8d4169b639ab575a8f5693af210c7b"
+checksum = "e94f17b526d0a461a191c78ea52bbce64071ed5c04c9ffe424dcb38f74171bb7"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.38",
+ "syn 2.0.52",
  "wasm-bindgen-backend",
  "wasm-bindgen-shared",
 ]
 
 [[package]]
 name = "wasm-bindgen-shared"
-version = "0.2.87"
+version = "0.2.92"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ca6ad05a4870b2bf5fe995117d3728437bd27d7cd5f06f13c17443ef369775a1"
+checksum = "af190c94f2773fdb3729c55b007a722abb5384da03bc0986df4c289bf5567e96"
 
 [[package]]
 name = "which"
@@ -1840,7 +1957,7 @@ dependencies = [
  "either",
  "home",
  "once_cell",
- "rustix 0.38.19",
+ "rustix 0.38.31",
 ]
 
 [[package]]
@@ -1872,12 +1989,12 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f"
 
 [[package]]
-name = "windows"
-version = "0.48.0"
+name = "windows-core"
+version = "0.52.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e686886bc078bc1b0b600cac0147aadb815089b6e4da64016cbd754b6342700f"
+checksum = "33ab640c8d7e35bf8ba19b884ba838ceb4fba93a4e8c65a9059d08afcfc683d9"
 dependencies = [
- "windows-targets",
+ "windows-targets 0.52.4",
 ]
 
 [[package]]
@@ -1886,7 +2003,16 @@ version = "0.48.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "677d2418bec65e3338edb076e806bc1ec15693c5d0104683f2efe857f61056a9"
 dependencies = [
- "windows-targets",
+ "windows-targets 0.48.5",
+]
+
+[[package]]
+name = "windows-sys"
+version = "0.52.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "282be5f36a8ce781fad8c8ae18fa3f9beff57ec1b52cb3de0789201425d9a33d"
+dependencies = [
+ "windows-targets 0.52.4",
 ]
 
 [[package]]
@@ -1895,13 +2021,28 @@ version = "0.48.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "9a2fa6e2155d7247be68c096456083145c183cbbbc2764150dda45a87197940c"
 dependencies = [
- "windows_aarch64_gnullvm",
- "windows_aarch64_msvc",
- "windows_i686_gnu",
- "windows_i686_msvc",
- "windows_x86_64_gnu",
- "windows_x86_64_gnullvm",
- "windows_x86_64_msvc",
+ "windows_aarch64_gnullvm 0.48.5",
+ "windows_aarch64_msvc 0.48.5",
+ "windows_i686_gnu 0.48.5",
+ "windows_i686_msvc 0.48.5",
+ "windows_x86_64_gnu 0.48.5",
+ "windows_x86_64_gnullvm 0.48.5",
+ "windows_x86_64_msvc 0.48.5",
+]
+
+[[package]]
+name = "windows-targets"
+version = "0.52.4"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "7dd37b7e5ab9018759f893a1952c9420d060016fc19a472b4bb20d1bdd694d1b"
+dependencies = [
+ "windows_aarch64_gnullvm 0.52.4",
+ "windows_aarch64_msvc 0.52.4",
+ "windows_i686_gnu 0.52.4",
+ "windows_i686_msvc 0.52.4",
+ "windows_x86_64_gnu 0.52.4",
+ "windows_x86_64_gnullvm 0.52.4",
+ "windows_x86_64_msvc 0.52.4",
 ]
 
 [[package]]
@@ -1911,56 +2052,98 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "2b38e32f0abccf9987a4e3079dfb67dcd799fb61361e53e2882c3cbaf0d905d8"
 
 [[package]]
+name = "windows_aarch64_gnullvm"
+version = "0.52.4"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "bcf46cf4c365c6f2d1cc93ce535f2c8b244591df96ceee75d8e83deb70a9cac9"
+
+[[package]]
 name = "windows_aarch64_msvc"
 version = "0.48.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "dc35310971f3b2dbbf3f0690a219f40e2d9afcf64f9ab7cc1be722937c26b4bc"
 
 [[package]]
+name = "windows_aarch64_msvc"
+version = "0.52.4"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "da9f259dd3bcf6990b55bffd094c4f7235817ba4ceebde8e6d11cd0c5633b675"
+
+[[package]]
 name = "windows_i686_gnu"
 version = "0.48.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "a75915e7def60c94dcef72200b9a8e58e5091744960da64ec734a6c6e9b3743e"
 
 [[package]]
+name = "windows_i686_gnu"
+version = "0.52.4"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "b474d8268f99e0995f25b9f095bc7434632601028cf86590aea5c8a5cb7801d3"
+
+[[package]]
 name = "windows_i686_msvc"
 version = "0.48.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "8f55c233f70c4b27f66c523580f78f1004e8b5a8b659e05a4eb49d4166cca406"
 
 [[package]]
+name = "windows_i686_msvc"
+version = "0.52.4"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "1515e9a29e5bed743cb4415a9ecf5dfca648ce85ee42e15873c3cd8610ff8e02"
+
+[[package]]
 name = "windows_x86_64_gnu"
 version = "0.48.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "53d40abd2583d23e4718fddf1ebec84dbff8381c07cae67ff7768bbf19c6718e"
 
 [[package]]
+name = "windows_x86_64_gnu"
+version = "0.52.4"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "5eee091590e89cc02ad514ffe3ead9eb6b660aedca2183455434b93546371a03"
+
+[[package]]
 name = "windows_x86_64_gnullvm"
 version = "0.48.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "0b7b52767868a23d5bab768e390dc5f5c55825b6d30b86c844ff2dc7414044cc"
 
 [[package]]
+name = "windows_x86_64_gnullvm"
+version = "0.52.4"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "77ca79f2451b49fa9e2af39f0747fe999fcda4f5e241b2898624dca97a1f2177"
+
+[[package]]
 name = "windows_x86_64_msvc"
 version = "0.48.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "ed94fce61571a4006852b7389a063ab983c02eb1bb37b47f8272ce92d06d9538"
 
 [[package]]
+name = "windows_x86_64_msvc"
+version = "0.52.4"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "32b752e52a2da0ddfbdbcc6fceadfeede4c939ed16d13e648833a61dfb611ed8"
+
+[[package]]
 name = "wrapcenum-derive"
-version = "0.4.0"
+version = "0.4.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6bcc065c85ad2c3bd12aa4118bf164835712e25080c392557801a13292c60aec"
+checksum = "a76ff259533532054cfbaefb115c613203c73707017459206380f03b3b3f266e"
 dependencies = [
  "darling",
  "proc-macro2",
  "quote",
- "syn 1.0.109",
+ "syn 2.0.52",
 ]
 
 [[package]]
 name = "zenith"
-version = "0.14.0"
+version = "0.14.1"
 dependencies = [
  "bincode",
  "byte-unit",
@@ -1985,5 +2168,5 @@ dependencies = [
  "starship-battery",
  "sysinfo",
  "unicode-width",
- "users",
+ "uzers",
 ]
diff --git a/pkgs/tools/system/zenith/default.nix b/pkgs/tools/system/zenith/default.nix
index 7beaab4713a5..4af272ccb49d 100644
--- a/pkgs/tools/system/zenith/default.nix
+++ b/pkgs/tools/system/zenith/default.nix
@@ -11,13 +11,13 @@ assert nvidiaSupport -> stdenv.isLinux;
 
 rustPlatform.buildRustPackage rec {
   pname = "zenith";
-  version = "0.14.0-unstable-2023-11-21";
+  version = "0.14.1";
 
   src = fetchFromGitHub {
     owner = "bvaisvil";
-    repo = pname;
-    rev = "0ed09e6a68c1517b4d050f5e3163421718226040";
-    hash = "sha256-vw/ar2Qi06HxPfPsfcxtfRhMTqY4FCE+7tCfe9sLEv0=";
+    repo = "zenith";
+    rev = version;
+    hash = "sha256-y+/s0TDVAFGio5uCzHjf+kHFZB0G8dDgTt2xaqSSz1c=";
   };
 
   # remove cargo config so it can find the linker on aarch64-linux
diff --git a/pkgs/tools/text/agrep/default.nix b/pkgs/tools/text/agrep/default.nix
index 39de33badd77..229f7860441b 100644
--- a/pkgs/tools/text/agrep/default.nix
+++ b/pkgs/tools/text/agrep/default.nix
@@ -1,33 +1,43 @@
-{ lib, stdenv, fetchFromGitHub }:
-
+{
+  lib,
+  stdenv,
+  fetchFromGitHub,
+}:
+let
+  # This repository has numbered versions, but not Git tags.
+  rev = "b7d180fe73636740f694ec60c1ffab52b06e7150";
+in
 stdenv.mkDerivation {
   pname = "agrep";
-  version = "3.41.5";
+  version = "3.41.5-unstable-2022-03-23";
 
   src = fetchFromGitHub {
+    inherit rev;
     owner = "Wikinaut";
     repo = "agrep";
-    # This repository has numbered versions, but not Git tags.
-    rev = "eef20411d605d9d17ead07a0ade75046f2728e21";
-    sha256 = "14addnwspdf2mxpqyrw8b84bb2257y43g5ccy4ipgrr91fmxq2sk";
+    hash = "sha256-2J4bw5BVZgTEcIn9IuD5Q8/L+8tldDbToDefuxDf85g=";
   };
 
-  # Related: https://github.com/Wikinaut/agrep/pull/11
-  prePatch = lib.optionalString (stdenv.hostPlatform.isMusl || stdenv.isDarwin) ''
-    sed -i '1i#include <sys/stat.h>' checkfil.c newmgrep.c recursiv.c
-  '';
+  makeFlags = [ "CC=${stdenv.cc.targetPrefix}cc" ];
+
+  env.NIX_CFLAGS_COMPILE = lib.optionalString stdenv.cc.isClang "-std=c89";
+
   installPhase = ''
+    runHook preInstall
+
     install -Dm 555 agrep -t "$out/bin"
     install -Dm 444 docs/* -t "$out/doc"
-  '';
 
-  makeFlags = [ "CC=${stdenv.cc.targetPrefix}cc" ];
+    runHook postInstall
+  '';
 
-  meta = with lib; {
+  meta = {
     description = "Approximate grep for fast fuzzy string searching";
     mainProgram = "agrep";
     homepage = "https://www.tgries.de/agrep/";
-    license = licenses.isc;
-    platforms = with platforms; linux ++ darwin;
+    maintainers = with lib.maintainers; [ momeemt ];
+    changelog = "https://github.com/Wikinaut/agrep/blob/${rev}/CHANGES";
+    license = lib.licenses.isc;
+    platforms = lib.platforms.unix;
   };
 }
diff --git a/pkgs/tools/text/boxes/default.nix b/pkgs/tools/text/boxes/default.nix
index 37980719a274..2f1f450ada15 100644
--- a/pkgs/tools/text/boxes/default.nix
+++ b/pkgs/tools/text/boxes/default.nix
@@ -39,7 +39,7 @@ gccStdenv.mkDerivation rec {
     description = "A command line program which draws, removes, and repairs ASCII art boxes";
     mainProgram = "boxes";
     homepage = "https://boxes.thomasjensen.com";
-    license = licenses.gpl2;
+    license = licenses.gpl2Plus;
     maintainers = with maintainers; [ waiting-for-dev ];
     platforms = platforms.unix;
   };
diff --git a/pkgs/tools/text/catdoc/default.nix b/pkgs/tools/text/catdoc/default.nix
index db57243efdc2..38d1ba5e06e4 100644
--- a/pkgs/tools/text/catdoc/default.nix
+++ b/pkgs/tools/text/catdoc/default.nix
@@ -27,7 +27,7 @@ stdenv.mkDerivation rec {
   meta = with lib; {
     description = "MS-Word/Excel/PowerPoint to text converter";
     platforms = platforms.all;
-    license = licenses.gpl2;
+    license = licenses.gpl2Only;
     maintainers = with maintainers; [];
   };
 }
diff --git a/pkgs/tools/text/convertlit/default.nix b/pkgs/tools/text/convertlit/default.nix
index 23112e83b8c8..751b969e4469 100644
--- a/pkgs/tools/text/convertlit/default.nix
+++ b/pkgs/tools/text/convertlit/default.nix
@@ -32,7 +32,7 @@ stdenv.mkDerivation rec {
     homepage = "http://www.convertlit.com/";
     description = "A tool for converting Microsoft Reader ebooks to more open formats";
     mainProgram = "clit";
-    license = lib.licenses.gpl2;
+    license = lib.licenses.gpl2Plus;
     platforms = lib.platforms.linux;
   };
 }
diff --git a/pkgs/tools/text/crowdin-cli/default.nix b/pkgs/tools/text/crowdin-cli/default.nix
index af46fb1b6fe9..763c2e3b0fbe 100644
--- a/pkgs/tools/text/crowdin-cli/default.nix
+++ b/pkgs/tools/text/crowdin-cli/default.nix
@@ -14,11 +14,11 @@
 
 stdenv.mkDerivation rec {
   pname = "crowdin-cli";
-  version = "3.19.2";
+  version = "3.19.4";
 
   src = fetchurl {
     url = "https://github.com/crowdin/${pname}/releases/download/${version}/${pname}.zip";
-    hash = "sha256-tVfdpyQ/m6ZpVA7YFmkGSnpo8/FirIBEiIqHlUr1TKk=";
+    hash = "sha256-SD4D9wW+Tdr3mD91SJKm5K3gktH0ywQBRh0d1TMeLDs=";
   };
 
   nativeBuildInputs = [ installShellFiles makeWrapper unzip ];
diff --git a/pkgs/tools/text/csview/default.nix b/pkgs/tools/text/csview/default.nix
index b85d98b58fd7..747847a1bee2 100644
--- a/pkgs/tools/text/csview/default.nix
+++ b/pkgs/tools/text/csview/default.nix
@@ -2,16 +2,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "csview";
-  version = "1.3.1";
+  version = "1.3.2";
 
   src = fetchFromGitHub {
     owner = "wfxr";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-Tu/h9jhZgulrc5bTJrwq7Ksg69qUVUBjWNdzve4m9JM=";
+    sha256 = "sha256-ci0PyTZJIEagBCymtrYR/ntgYym1aGKNX4COfrE99mY=";
   };
 
-  cargoHash = "sha256-ZXLu/6IQ20u8dk0gaZoBh0rt6CGaRBNVHGgrCW5+yzA=";
+  cargoHash = "sha256-/pswnb2vNtw8zSoWuC7oZPJ4yxVuy1c4ES1NUHhnG6I=";
 
   meta = with lib; {
     description = "A high performance csv viewer with cjk/emoji support";
diff --git a/pkgs/tools/text/enca/default.nix b/pkgs/tools/text/enca/default.nix
index 7015bd4453cb..f3098a22f41a 100644
--- a/pkgs/tools/text/enca/default.nix
+++ b/pkgs/tools/text/enca/default.nix
@@ -22,7 +22,7 @@ stdenv.mkDerivation rec {
         Unicode variants, independently on language.
     '';
 
-    license = licenses.gpl2;
+    license = licenses.gpl2Only;
 
   };
 }
diff --git a/pkgs/tools/text/gtranslator/default.nix b/pkgs/tools/text/gtranslator/default.nix
index ab0192be3359..ce56bdab43b1 100644
--- a/pkgs/tools/text/gtranslator/default.nix
+++ b/pkgs/tools/text/gtranslator/default.nix
@@ -6,6 +6,7 @@
 , pkg-config
 , itstool
 , gettext
+, desktop-file-utils
 , wrapGAppsHook4
 , libxml2
 , libadwaita
@@ -22,11 +23,11 @@
 
 stdenv.mkDerivation rec {
   pname = "gtranslator";
-  version = "45.3";
+  version = "46.1";
 
   src = fetchurl {
     url = "mirror://gnome/sources/${pname}/${lib.versions.major version}/${pname}-${version}.tar.xz";
-    sha256 = "MBAgTfXHpa4Cf1owsVRNaXfUF/Dku53il/CtGoAzGHM=";
+    hash = "sha256-tK8xhIkUkf2JwaBGVlIxAVbAfRVraiThwH86TPdXlWg=";
   };
 
   nativeBuildInputs = [
@@ -35,6 +36,7 @@ stdenv.mkDerivation rec {
     pkg-config
     itstool
     gettext
+    desktop-file-utils
     wrapGAppsHook4
   ];
 
diff --git a/pkgs/tools/text/gucci/default.nix b/pkgs/tools/text/gucci/default.nix
index 324dc56ca264..2f448450661b 100644
--- a/pkgs/tools/text/gucci/default.nix
+++ b/pkgs/tools/text/gucci/default.nix
@@ -19,15 +19,14 @@ buildGoModule rec {
     package = gucci;
   };
 
-  checkFlags = [ "-short" ];
-
-  # Integration tests rely on Ginkgo but fail.
-  # Related: https://github.com/onsi/ginkgo/issues/602
-  #
-  # Disable integration tests.
-  preCheck = ''
-    buildFlagsArray+=("-run" "[^(TestIntegration)]")
-  '';
+  checkFlags = [
+    "-short"
+    # Integration tests rely on Ginkgo but fail.
+    # Related: https://github.com/onsi/ginkgo/issues/602
+    #
+    # Disable integration tests.
+    "-skip=^TestIntegration"
+  ];
 
   meta = with lib; {
     description = "A simple CLI templating tool written in golang";
diff --git a/pkgs/tools/text/kdiff3/default.nix b/pkgs/tools/text/kdiff3/default.nix
index c852a4baf794..c22814372314 100644
--- a/pkgs/tools/text/kdiff3/default.nix
+++ b/pkgs/tools/text/kdiff3/default.nix
@@ -14,11 +14,11 @@
 
 stdenv.mkDerivation (finalAttrs: {
   pname = "kdiff3";
-  version = "1.10.7";
+  version = "1.11.0";
 
   src = fetchurl {
     url = "mirror://kde/stable/kdiff3/kdiff3-${finalAttrs.version}.tar.xz";
-    hash = "sha256-uj9Ky/SsdIrr78hfWcr2U9Rf6FmkjDSviZGCJKdnxeM=";
+    hash = "sha256-O/N5VMoZo2Xze1WLV0yPvTZnGcCH17gheI0++tDESFE=";
   };
 
   nativeBuildInputs = [ extra-cmake-modules kdoctools wrapQtAppsHook ];
diff --git a/pkgs/tools/text/lv/default.nix b/pkgs/tools/text/lv/default.nix
index 48ed867c8e4c..ad76cf51d11f 100644
--- a/pkgs/tools/text/lv/default.nix
+++ b/pkgs/tools/text/lv/default.nix
@@ -26,7 +26,7 @@ stdenv.mkDerivation rec {
   meta = with lib; {
     description = "Powerful multi-lingual file viewer / grep";
     homepage = "https://web.archive.org/web/20160310122517/www.ff.iij4u.or.jp/~nrt/lv/";
-    license = licenses.gpl2;
+    license = licenses.gpl2Plus;
     platforms = with platforms; linux ++ darwin;
     maintainers = with maintainers; [ kayhide ];
   };
diff --git a/pkgs/tools/text/mawk/default.nix b/pkgs/tools/text/mawk/default.nix
index 06dcdcd8a9ba..7af363405102 100644
--- a/pkgs/tools/text/mawk/default.nix
+++ b/pkgs/tools/text/mawk/default.nix
@@ -18,7 +18,7 @@ stdenv.mkDerivation rec {
     description = "Interpreter for the AWK Programming Language";
     mainProgram = "mawk";
     homepage = "https://invisible-island.net/mawk/mawk.html";
-    license = licenses.gpl2;
+    license = licenses.gpl2Only;
     maintainers = with maintainers; [ ehmry ];
     platforms = with platforms; unix;
   };
diff --git a/pkgs/tools/text/mdbook-open-on-gh/default.nix b/pkgs/tools/text/mdbook-open-on-gh/default.nix
index 68a7c504345c..a4c592dfbd2a 100644
--- a/pkgs/tools/text/mdbook-open-on-gh/default.nix
+++ b/pkgs/tools/text/mdbook-open-on-gh/default.nix
@@ -2,16 +2,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "mdbook-open-on-gh";
-  version = "2.4.2";
+  version = "2.4.3";
 
   src = fetchFromGitHub {
     owner = "badboy";
     repo = pname;
     rev = version;
-    hash = "sha256-ZExmOHvQApGZaepOuf3yXYe8NV3FpMtCqCR1KE6q4no=";
+    hash = "sha256-73738Vei7rQ67LQIOrHPGOtsBnHClaXClRWDmA5pP58=";
   };
 
-  cargoHash = "sha256-WLCcYgkrH5fZvv3LZNEolBQUcTZC2URs6bIgzf4BtWU=";
+  cargoHash = "sha256-TQBjgQaoI88xGdhkffNWRH6aZ99WWbkkpiPu4LqBD3g=";
 
   meta = with lib; {
     description = "mdbook preprocessor to add a open-on-github link on every page";
diff --git a/pkgs/tools/text/multitran/data/default.nix b/pkgs/tools/text/multitran/data/default.nix
index 78b6ee79ea0f..ba25b68fd7f5 100644
--- a/pkgs/tools/text/multitran/data/default.nix
+++ b/pkgs/tools/text/multitran/data/default.nix
@@ -21,7 +21,7 @@ stdenv.mkDerivation {
   meta = {
     homepage = "https://multitran.sourceforge.net/";
     description = "Multitran data english-russian";
-    license = lib.licenses.gpl2;
+    license = lib.licenses.gpl2Only;
     platforms = lib.platforms.unix;
   };
 }
diff --git a/pkgs/tools/text/multitran/libbtree/default.nix b/pkgs/tools/text/multitran/libbtree/default.nix
index c10a65c271d4..99f15b8b21ed 100644
--- a/pkgs/tools/text/multitran/libbtree/default.nix
+++ b/pkgs/tools/text/multitran/libbtree/default.nix
@@ -15,7 +15,7 @@ stdenv.mkDerivation rec {
   meta = {
     homepage = "https://multitran.sourceforge.net/";
     description = "Multitran lib: library for reading Multitran's BTREE database format";
-    license = lib.licenses.gpl2;
+    license = lib.licenses.gpl2Only;
     platforms = lib.platforms.linux;
   };
 }
diff --git a/pkgs/tools/text/multitran/libfacet/default.nix b/pkgs/tools/text/multitran/libfacet/default.nix
index b035ce32cbf1..5efb57ddff92 100644
--- a/pkgs/tools/text/multitran/libfacet/default.nix
+++ b/pkgs/tools/text/multitran/libfacet/default.nix
@@ -20,7 +20,7 @@ stdenv.mkDerivation rec {
   meta = {
     homepage = "https://multitran.sourceforge.net/";
     description = "Multitran lib: enchanced locale facets";
-    license = lib.licenses.gpl2;
+    license = lib.licenses.gpl2Only;
     platforms = lib.platforms.linux;
   };
 }
diff --git a/pkgs/tools/text/multitran/libmtquery/default.nix b/pkgs/tools/text/multitran/libmtquery/default.nix
index 41f17560d286..5ebb45cf98b8 100644
--- a/pkgs/tools/text/multitran/libmtquery/default.nix
+++ b/pkgs/tools/text/multitran/libmtquery/default.nix
@@ -25,7 +25,7 @@ stdenv.mkDerivation rec {
   meta = {
     homepage = "https://multitran.sourceforge.net/";
     description = "Multitran lib: main engine to query translations";
-    license = lib.licenses.gpl2;
+    license = lib.licenses.gpl2Only;
     platforms = lib.platforms.linux;
   };
 }
diff --git a/pkgs/tools/text/multitran/libmtsupport/default.nix b/pkgs/tools/text/multitran/libmtsupport/default.nix
index 06317fe3043b..adb54f170095 100644
--- a/pkgs/tools/text/multitran/libmtsupport/default.nix
+++ b/pkgs/tools/text/multitran/libmtsupport/default.nix
@@ -15,7 +15,7 @@ stdenv.mkDerivation rec {
   meta = {
     homepage = "https://multitran.sourceforge.net/";
     description = "Multitran lib: basic useful functions";
-    license = lib.licenses.gpl2;
+    license = lib.licenses.gpl2Only;
     platforms = lib.platforms.linux;
   };
 }
diff --git a/pkgs/tools/text/multitran/mtutils/default.nix b/pkgs/tools/text/multitran/mtutils/default.nix
index 9a9ecf0b2675..f37a8f1bd342 100644
--- a/pkgs/tools/text/multitran/mtutils/default.nix
+++ b/pkgs/tools/text/multitran/mtutils/default.nix
@@ -28,7 +28,7 @@ stdenv.mkDerivation rec {
     homepage = "https://multitran.sourceforge.net/";
     description = "Multitran: simple command line utilities for dictionary maintenance";
     mainProgram = "mtquery";
-    license = lib.licenses.gpl2;
+    license = lib.licenses.gpl2Only;
     maintainers = with lib.maintainers; [viric];
     platforms = with lib.platforms; linux;
   };
diff --git a/pkgs/tools/text/odt2txt/default.nix b/pkgs/tools/text/odt2txt/default.nix
index 3f8338d6ae08..480c07f9cdcc 100644
--- a/pkgs/tools/text/odt2txt/default.nix
+++ b/pkgs/tools/text/odt2txt/default.nix
@@ -18,7 +18,7 @@ stdenv.mkDerivation rec {
     mainProgram = "odt2txt";
     homepage = "https://github.com/dstosberg/odt2txt";
     platforms = lib.platforms.all;
-    license = lib.licenses.gpl2;
+    license = lib.licenses.gpl2Only;
     maintainers = [ ];
   };
 }
diff --git a/pkgs/tools/text/poedit/default.nix b/pkgs/tools/text/poedit/default.nix
index 48368e64dc43..58185538193f 100644
--- a/pkgs/tools/text/poedit/default.nix
+++ b/pkgs/tools/text/poedit/default.nix
@@ -1,6 +1,6 @@
 { lib, stdenv, fetchFromGitHub, autoconf, automake, libtool, gettext, pkg-config, wxGTK32,
   boost, icu, lucenepp, asciidoc, libxslt, xmlto, gtk3, gtkspell3, pugixml,
-  nlohmann_json, hicolor-icon-theme, wrapGAppsHook }:
+  nlohmann_json, hicolor-icon-theme, wrapGAppsHook3 }:
 
 stdenv.mkDerivation rec {
   pname = "poedit";
@@ -13,7 +13,7 @@ stdenv.mkDerivation rec {
     hash = "sha256-CfCWfKRzeGGk8/B0BLauO4Xb88/Si1ezvcGKeURgC9o=";
   };
 
-  nativeBuildInputs = [ autoconf automake asciidoc wrapGAppsHook
+  nativeBuildInputs = [ autoconf automake asciidoc wrapGAppsHook3
     libxslt xmlto boost libtool pkg-config ];
 
   buildInputs = [ lucenepp nlohmann_json wxGTK32 icu pugixml gtk3 gtkspell3 hicolor-icon-theme ];
diff --git a/pkgs/tools/text/popfile/default.nix b/pkgs/tools/text/popfile/default.nix
index 7dec478a6342..2ab51fa24a30 100644
--- a/pkgs/tools/text/popfile/default.nix
+++ b/pkgs/tools/text/popfile/default.nix
@@ -50,7 +50,7 @@ stdenv.mkDerivation rec {
   meta = {
     description = "An email classification system that automatically sorts messages and fights spam";
     homepage = "https://getpopfile.org/";
-    license = lib.licenses.gpl2;
+    license = lib.licenses.gpl2Only;
 
     # Should work on macOS, but havent tested it.
     # Windows support is more complicated.
diff --git a/pkgs/tools/text/riffdiff/default.nix b/pkgs/tools/text/riffdiff/default.nix
index 1db7967d0f57..cd7008f0d5b0 100644
--- a/pkgs/tools/text/riffdiff/default.nix
+++ b/pkgs/tools/text/riffdiff/default.nix
@@ -2,16 +2,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "riffdiff";
-  version = "3.1.0";
+  version = "3.1.3";
 
   src = fetchFromGitHub {
     owner = "walles";
     repo = "riff";
     rev = version;
-    hash = "sha256-ASIB7+ZyvMsaRdvJcWT/sR0JLyt4v/gytAIi8Yajlzg=";
+    hash = "sha256-wBLVH4Yrvj3rU5tRaxV8BBWkR2xLMxjkwjJ4rf1hHXk=";
   };
 
-  cargoHash = "sha256-NGTWBlg5xvodK02RtFuCe7KsFm4z2aEpbcx3UqH9G/o=";
+  cargoHash = "sha256-4qskpcDE9l+7KjcVRou4GcdG7aF8stKXK12WBy81UBw=";
 
   meta = with lib; {
     description = "A diff filter highlighting which line parts have changed";
diff --git a/pkgs/tools/text/rpl/default.nix b/pkgs/tools/text/rpl/default.nix
index 1b4e89408dc8..b565de537629 100644
--- a/pkgs/tools/text/rpl/default.nix
+++ b/pkgs/tools/text/rpl/default.nix
@@ -31,7 +31,7 @@ python3Packages.buildPythonApplication rec {
     description = "Replace strings in files";
     mainProgram = "rpl";
     homepage = "https://github.com/rrthomas/rpl";
-    license = licenses.gpl2;
+    license = licenses.gpl2Plus;
     maintainers = with maintainers; [ cbley ];
   };
 }
diff --git a/pkgs/tools/text/rust-petname/default.nix b/pkgs/tools/text/rust-petname/default.nix
index fda0ebf90404..3abc8a0210f6 100644
--- a/pkgs/tools/text/rust-petname/default.nix
+++ b/pkgs/tools/text/rust-petname/default.nix
@@ -2,15 +2,15 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "rust-petname";
-  version = "1.1.3";
+  version = "2.0.2";
 
   src = fetchCrate {
     inherit version;
     crateName = "petname";
-    sha256 = "sha256-C6EJ8awdTV9TecMeYdbmleK8171+hvphjXJrWNJSXxo=";
+    sha256 = "sha256-KP+GdGlwLHcKE8nAmFr2wHbt5RD9Ptpiz1X5HgJ6BgU=";
   };
 
-  cargoSha256 = "sha256-mB4n1IxhNXrAsCz/jv5jgqyO9OgISZnI5E/vFu80+FE=";
+  cargoHash = "sha256-R1Xahr9R4G8Tr2cGRJ2oydVaLohPz2VM6tnbtE8Hysk=";
 
   meta = with lib; {
     description = "Generate human readable random names";
diff --git a/pkgs/tools/text/snippetpixie/default.nix b/pkgs/tools/text/snippetpixie/default.nix
index 0483d8c2c0cb..40267ea7e148 100644
--- a/pkgs/tools/text/snippetpixie/default.nix
+++ b/pkgs/tools/text/snippetpixie/default.nix
@@ -5,7 +5,7 @@
 , ninja
 , vala
 , pkg-config
-, wrapGAppsHook
+, wrapGAppsHook3
 , appstream
 , desktop-file-utils
 , python3
@@ -38,7 +38,7 @@ stdenv.mkDerivation rec {
     ninja
     vala
     pkg-config
-    wrapGAppsHook
+    wrapGAppsHook3
     appstream
     desktop-file-utils
     python3
diff --git a/pkgs/tools/text/subedit/default.nix b/pkgs/tools/text/subedit/default.nix
index fede6583e788..9bacdc23de0d 100644
--- a/pkgs/tools/text/subedit/default.nix
+++ b/pkgs/tools/text/subedit/default.nix
@@ -28,7 +28,7 @@ stdenv.mkDerivation {
     homepage = "https://github.com/helixarch/subedit";
     description = "Command-line subtitle editor written in BASH";
     mainProgram = "subedit";
-    license = licenses.gpl2;
+    license = licenses.gpl2Plus;
     maintainers = with maintainers; [ ppom ];
   };
 }
diff --git a/pkgs/tools/text/ugrep/default.nix b/pkgs/tools/text/ugrep/default.nix
index 7587f0a4adbc..9cffa4ce6909 100644
--- a/pkgs/tools/text/ugrep/default.nix
+++ b/pkgs/tools/text/ugrep/default.nix
@@ -15,13 +15,13 @@
 
 stdenv.mkDerivation (finalAttrs: {
   pname = "ugrep";
-  version = "5.1.4";
+  version = "6.0.0";
 
   src = fetchFromGitHub {
     owner = "Genivia";
     repo = "ugrep";
     rev = "v${finalAttrs.version}";
-    hash = "sha256-9hxMxcqrq9uHCe3Ggyv3SdjWe+uTZ4ZuicDf9196Szo=";
+    hash = "sha256-jZWmWZ4ZkmtdEI7BJ4cg1PBAuue8sjA7aiGotv2WmB4=";
   };
 
   buildInputs = [
diff --git a/pkgs/tools/text/unoconv/default.nix b/pkgs/tools/text/unoconv/default.nix
index ae70bd9f561e..66f8fd2a6509 100644
--- a/pkgs/tools/text/unoconv/default.nix
+++ b/pkgs/tools/text/unoconv/default.nix
@@ -34,7 +34,7 @@ stdenv.mkDerivation rec {
   meta = with lib; {
     description = "Convert between any document format supported by LibreOffice/OpenOffice";
     homepage = "http://dag.wieers.com/home-made/unoconv/";
-    license = licenses.gpl2;
+    license = licenses.gpl2Only;
     platforms = platforms.linux;
     maintainers = [ maintainers.bjornfor ];
   };
diff --git a/pkgs/tools/text/vale/styles.nix b/pkgs/tools/text/vale/styles.nix
index f2513289a548..54764f77ff47 100644
--- a/pkgs/tools/text/vale/styles.nix
+++ b/pkgs/tools/text/vale/styles.nix
@@ -48,12 +48,12 @@ in
 
   google = buildStyle rec {
     name = "Google";
-    version = "0.6.0";
+    version = "0.6.1";
     src = fetchFromGitHub {
       owner = "errata-ai";
       repo = "Google";
       rev = "v${version}";
-      hash = "sha256-TQS/hgS6tEWPSuZpEbX65MdYSE/+HJVcnzIuQbhIG2M=";
+      hash = "sha256-jSmfUgzlIbDVh2zLtnTNpM/z6dHMp358F9adLZ5+qcw=";
     };
     meta = {
       description = "A Vale-compatible implementation of the Google Developer Documentation Style Guide";
@@ -80,12 +80,12 @@ in
 
   microsoft = buildStyle rec {
     name = "Microsoft";
-    version = "0.14.0";
+    version = "0.14.1";
     src = fetchFromGitHub {
       owner = "errata-ai";
       repo = "Microsoft";
       rev = "v${version}";
-      hash = "sha256-22rGNLZOsWYQ+H3CcM2b1zOXV3kNPcgYqDpaCg1iv9o=";
+      hash = "sha256-4j05bIGAVEy6untUqtrUxdLKlhyOcJsbcsow8OxRp1A=";
     };
     meta = {
       description = "A Vale-compatible implementation of the Microsoft Writing Style Guide";
diff --git a/pkgs/tools/text/zoekt/default.nix b/pkgs/tools/text/zoekt/default.nix
index 22059ebbf230..293ad7a0954c 100644
--- a/pkgs/tools/text/zoekt/default.nix
+++ b/pkgs/tools/text/zoekt/default.nix
@@ -25,10 +25,11 @@ buildGoModule {
     git config --global --replace-all protocol.file.allow always
   '';
 
-  meta = with lib; {
+  meta = {
     description = "Fast trigram based code search";
-    homepage = "https://github.com/google/zoekt";
-    license = licenses.asl20;
-    maintainers = [ ];
+    homepage = "https://github.com/sourcegraph/zoekt";
+    license = lib.licenses.asl20;
+    maintainers = with lib.maintainers; [ AndersonTorres ];
+    mainProgram = "zoekt";
   };
 }
diff --git a/pkgs/tools/typesetting/bibclean/default.nix b/pkgs/tools/typesetting/bibclean/default.nix
index f51a41e5f343..eb84ff8d7037 100644
--- a/pkgs/tools/typesetting/bibclean/default.nix
+++ b/pkgs/tools/typesetting/bibclean/default.nix
@@ -20,7 +20,7 @@ stdenv.mkDerivation rec {
   meta = with lib; {
     description = "Prettyprint and syntax check BibTeX and Scribe bibliography data base files";
     homepage = "http://ftp.math.utah.edu/pub/bibclean";
-    license = licenses.gpl2;
+    license = licenses.gpl2Plus;
     platforms = platforms.all;
     maintainers = with maintainers; [ dtzWill ];
   };
diff --git a/pkgs/tools/typesetting/hayagriva/default.nix b/pkgs/tools/typesetting/hayagriva/default.nix
index 6574c0c9c6e9..2bf7a4f401d6 100644
--- a/pkgs/tools/typesetting/hayagriva/default.nix
+++ b/pkgs/tools/typesetting/hayagriva/default.nix
@@ -5,14 +5,14 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "hayagriva";
-  version = "0.5.2";
+  version = "0.5.3";
 
   src = fetchCrate {
     inherit pname version;
-    hash = "sha256-hE0Oi+0vDQGDEOYtHiPit1RrrkrlLZs20nEHOm/bp5M=";
+    hash = "sha256-6LJRvyCgcj/m25kC26vT3aUREstXmmCIR4+LoHZgIqw=";
   };
 
-  cargoHash = "sha256-WZbbjLDHYJTiuM0Lh9YfVvLTvK/jfO8fRbLqZ8XOLGg=";
+  cargoHash = "sha256-asINO3zy4x+n7chriC8ESCe3K027xFUNi+54XtQwS0w=";
 
   buildFeatures = [ "cli" ];
 
diff --git a/pkgs/tools/typesetting/pdf2djvu/default.nix b/pkgs/tools/typesetting/pdf2djvu/default.nix
index 09285cf2843b..b695ff9ebec3 100644
--- a/pkgs/tools/typesetting/pdf2djvu/default.nix
+++ b/pkgs/tools/typesetting/pdf2djvu/default.nix
@@ -60,7 +60,7 @@ stdenv.mkDerivation rec {
   meta = with lib; {
     description = "Creates djvu files from PDF files";
     homepage = "https://jwilk.net/software/pdf2djvu";
-    license = licenses.gpl2;
+    license = licenses.gpl2Only;
     maintainers = with maintainers; [ pSub ];
     mainProgram = "pdf2djvu";
   };
diff --git a/pkgs/tools/typesetting/pdfchain/default.nix b/pkgs/tools/typesetting/pdfchain/default.nix
index 6d772a6fea20..4335f8105d7d 100644
--- a/pkgs/tools/typesetting/pdfchain/default.nix
+++ b/pkgs/tools/typesetting/pdfchain/default.nix
@@ -1,5 +1,5 @@
 { lib, stdenv, fetchurl, fetchDebianPatch
-, autoconf, gtkmm3, glib, pdftk, pkg-config, wrapGAppsHook
+, autoconf, gtkmm3, glib, pdftk, pkg-config, wrapGAppsHook3
 }:
 
 stdenv.mkDerivation rec {
@@ -12,7 +12,7 @@ stdenv.mkDerivation rec {
   };
 
   nativeBuildInputs = [
-    pkg-config wrapGAppsHook autoconf
+    pkg-config wrapGAppsHook3 autoconf
   ];
 
   buildInputs = [
diff --git a/pkgs/tools/typesetting/pdfsandwich/default.nix b/pkgs/tools/typesetting/pdfsandwich/default.nix
index 377a7f7bf432..8343e382c807 100644
--- a/pkgs/tools/typesetting/pdfsandwich/default.nix
+++ b/pkgs/tools/typesetting/pdfsandwich/default.nix
@@ -25,7 +25,7 @@ stdenv.mkDerivation {
 meta = with lib; {
     description = "OCR tool for scanned PDFs";
     homepage = "http://www.tobias-elze.de/pdfsandwich/";
-    license = licenses.gpl2;
+    license = licenses.gpl2Plus;
     maintainers = [ maintainers.rps ];
     platforms = platforms.linux;
     mainProgram = "pdfsandwich";
diff --git a/pkgs/tools/typesetting/pulldown-cmark/default.nix b/pkgs/tools/typesetting/pulldown-cmark/default.nix
index b77c5984a7a7..76f172da3cda 100644
--- a/pkgs/tools/typesetting/pulldown-cmark/default.nix
+++ b/pkgs/tools/typesetting/pulldown-cmark/default.nix
@@ -5,14 +5,14 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "pulldown-cmark";
-  version = "0.10.3";
+  version = "0.11.0";
 
   src = fetchCrate {
     inherit pname version;
-    hash = "sha256-lJTMMXjuam872p+3+uesODd3s3/IJFg476AssikhI48=";
+    hash = "sha256-1RE622jAtIxv9Jk6vMdm1djaaUCyNGXHIIela+WRubI=";
   };
 
-  cargoHash = "sha256-P0Wem+iEnjq+iyJYw0QqwFQ7UuG/BMKEUernykjg44o=";
+  cargoHash = "sha256-L1KPpLw1MEYDisVdPEO16ZvSRx/ya22oDReyS+hG5t4=";
 
   meta = {
     description = "A pull parser for CommonMark written in Rust";
diff --git a/pkgs/tools/typesetting/ted/default.nix b/pkgs/tools/typesetting/ted/default.nix
index eb9178c33b83..4cff637d7706 100644
--- a/pkgs/tools/typesetting/ted/default.nix
+++ b/pkgs/tools/typesetting/ted/default.nix
@@ -76,7 +76,7 @@ stdenv.mkDerivation rec {
       Acrobat PDF converter.
     '';
     homepage    = "https://nllgg.nl/Ted/";
-    license     = licenses.gpl2;
+    license     = licenses.gpl2Only;
     platforms   = platforms.all;
     broken      = stdenv.isDarwin;
     maintainers = with maintainers; [ obadz ];
diff --git a/pkgs/tools/typesetting/tex/catdvi/default.nix b/pkgs/tools/typesetting/tex/catdvi/default.nix
index 1958a2f4c073..fe0f22bd95b0 100644
--- a/pkgs/tools/typesetting/tex/catdvi/default.nix
+++ b/pkgs/tools/typesetting/tex/catdvi/default.nix
@@ -85,7 +85,7 @@ stdenv.mkDerivation (finalAttrs: {
   meta = with lib; {
     homepage = "http://catdvi.sourceforge.net";
     description = "A DVI to plain text translator";
-    license = licenses.gpl2;
+    license = licenses.gpl2Plus;
     maintainers = [ ];
   };
 })
diff --git a/pkgs/tools/typesetting/tex/texlive/build-tex-env.nix b/pkgs/tools/typesetting/tex/texlive/build-tex-env.nix
index 5497e6b6dd4b..59b520e50c3b 100644
--- a/pkgs/tools/typesetting/tex/texlive/build-tex-env.nix
+++ b/pkgs/tools/typesetting/tex/texlive/build-tex-env.nix
@@ -35,6 +35,8 @@ lib.fix (self: {
 , __combine ? false
 # adjust behavior further if called from the texlive.combine wrapper
 , __fromCombineWrapper ? false
+# build only the formats of a package (for internal use!)
+, __formatsOf ? null
 }@args:
 
 let
@@ -116,7 +118,8 @@ let
     hyphenPatterns = lib.filter (p: p ? hyphenPatterns && (p.tlOutputName or p.outputName == "tex")) nonbin;
     sortedHyphenPatterns = builtins.sort (a: b: a.pname < b.pname) hyphenPatterns;
     formatPkgs = lib.filter (p: p ? formats && (p.outputSpecified or false -> p.tlOutputName or p.outputName == "tex") && builtins.any (f: f.enabled or true) p.formats) all;
-    sortedFormatPkgs = builtins.sort (a: b: a.pname < b.pname) formatPkgs;
+    sortedFormatPkgs = if __formatsOf != null then [ __formatsOf ] else builtins.sort (a: b: a.pname < b.pname) formatPkgs;
+    formats = map (p: self { requiredTeXPackages = ps: [ ps.scheme-infraonly p ] ++ hyphenPatterns; __formatsOf = p; }) sortedFormatPkgs;
   };
 
   # list generated by inspecting `grep -IR '\([^a-zA-Z]\|^\)gs\( \|$\|"\)' "$TEXMFDIST"/scripts`
@@ -125,7 +128,7 @@ let
   needsGhostscript = lib.any (p: lib.elem p.pname [ "context" "dvipdfmx" "latex-papersize" "lyluatex" ]) pkgList.bin;
 
   name = if __combine then "texlive-${__extraName}-${bin.texliveYear}${__extraVersion}" # texlive.combine: old name name
-    else "texlive-${bin.texliveYear}-env";
+    else "texlive-${bin.texliveYear}-" + (if __formatsOf != null then "${__formatsOf.pname}-fmt" else "env");
 
   texmfdist = buildEnv' {
     name = "${name}-texmfdist";
@@ -260,11 +263,11 @@ buildEnv' {
   inherit name;
 
   # use attrNames, attrValues to ensure the two lists are sorted in the same way
-  outputs = [ "out" ] ++ lib.optionals (! __combine) (builtins.attrNames nonEnvOutputs);
-  otherOutputs = lib.optionals (! __combine) (builtins.attrValues nonEnvOutputs);
+  outputs = [ "out" ] ++ lib.optionals (! __combine && __formatsOf == null) (builtins.attrNames nonEnvOutputs);
+  otherOutputs = lib.optionals (! __combine && __formatsOf == null) (builtins.attrValues nonEnvOutputs);
 
   # remove fake derivations (without 'outPath') to avoid undesired build dependencies
-  paths = builtins.catAttrs "outPath" pkgList.bin
+  paths = builtins.catAttrs "outPath" pkgList.bin ++ lib.optionals (! __combine && __formatsOf == null) pkgList.formats
     ++ lib.optional __combine doc;
   pathsToLink = [
     "/"
@@ -286,7 +289,8 @@ buildEnv' {
 
   buildInputs = [ coreutils gawk gnugrep gnused ] ++ lib.optional needsGhostscript ghostscript;
 
-  inherit meta passthru;
+  inherit meta passthru __combine;
+  __formatsOf = __formatsOf.pname or null;
 
   inherit texmfdist texmfroot;
 
@@ -306,4 +310,4 @@ buildEnv' {
   '';
 };
   # outputsToInstall must be set *after* overrideAttrs (used in buildEnv') or it fails the checkMeta tests
-in if __combine then out else lib.addMetaAttrs { inherit (pkgList) outputsToInstall; } out)
+in if __combine || __formatsOf != null then out else lib.addMetaAttrs { inherit (pkgList) outputsToInstall; } out)
diff --git a/pkgs/tools/typesetting/tex/texlive/build-tex-env.sh b/pkgs/tools/typesetting/tex/texlive/build-tex-env.sh
index 834b2e0e7651..baa508047f84 100644
--- a/pkgs/tools/typesetting/tex/texlive/build-tex-env.sh
+++ b/pkgs/tools/typesetting/tex/texlive/build-tex-env.sh
@@ -143,7 +143,10 @@ installtl_do_postinst_stuff () {
     # in principle, we could use writeText and share them across different
     # environments, but the eval & build overhead is not worth the savings
     tlutils_create_fmtutil
-    tlutils_create_updmap
+    # can be skipped if generating formats only
+    if [[ -z $__formatsOf ]] ; then
+        tlutils_create_updmap
+    fi
     tlutils_create_language_dat
     tlutils_create_language_def
     tlutils_create_language_lua
@@ -152,21 +155,24 @@ installtl_do_postinst_stuff () {
     tlutils_info "running mktexlsr $TEXMFSYSVAR $TEXMFSYSCONFIG"
     mktexlsr "$TEXMFSYSVAR" "$TEXMFSYSCONFIG"
 
-    # update font maps
-    tlutils_info "generating font maps"
-    updmap-sys --quiet --force --nohash 2>&1
-    # configure the paper size
-    # tlmgr --no-execute-actions paper letter
-    # install-tl: "rerun mktexlsr for updmap-sys and tlmgr paper updates"
-    tlutils_info "re-running mktexlsr $TEXMFSYSVAR $TEXMFSYSCONFIG"
-    mktexlsr "$TEXMFSYSVAR" "$TEXMFSYSCONFIG"
-
-    tlutils_update_context_cache
+    # can be skipped if generating formats only
+    if [[ -z $__formatsOf ]] ; then
+        # update font maps
+        tlutils_info "generating font maps"
+        updmap-sys --quiet --force --nohash 2>&1
+        # configure the paper size
+        # tlmgr --no-execute-actions paper letter
+        # install-tl: "rerun mktexlsr for updmap-sys and tlmgr paper updates"
+        tlutils_info "re-running mktexlsr $TEXMFSYSVAR $TEXMFSYSCONFIG"
+        mktexlsr "$TEXMFSYSVAR" "$TEXMFSYSCONFIG"
+
+        tlutils_update_context_cache
+    fi
 
     # generate formats
     # install-tl would run fmtutil-sys $common_fmtutil_args --no-strict --all
     # instead, we want fmtutil to exit with error on failure
-    if [[ -n $fmtutilCnf ]] ; then
+    if [[ -n $fmtutilCnf && -n $__combine$__formatsOf ]] ; then
         tlutils_info "pre-generating all format files, be patient..."
         # many formats still ignore SOURCE_DATE_EPOCH even when FORCE_SOURCE_DATE=1
         # libfaketime fixes non-determinism related to timestamps ignoring FORCE_SOURCE_DATE
@@ -177,6 +183,24 @@ installtl_do_postinst_stuff () {
         substitute "$texmfdist"/scripts/texlive/fmtutil.pl fmtutil \
             --replace-fail "my \$cmdline = \"\$eng -ini " "my \$cmdline = \"faketime -f '\@$(date +'%F %T' --date=@"$SOURCE_DATE_EPOCH") x0.001' \$eng -ini "
         FORCE_SOURCE_DATE=1 perl fmtutil --quiet --strict --sys --all 2>&1 | grep '^fmtutil' # too verbose
+
+        # if generating formats only, delete everything else and exit
+        if [[ -n $__formatsOf ]] ; then
+            # see fmtutil.pl::compute_format_destination for file extensions
+            find "$out" \( -type f -or -type l \) \
+                -not -path "$TEXMFSYSVAR/*.mem" \
+                -not -path "$TEXMFSYSVAR/*.base" \
+                -not -path "$TEXMFSYSVAR/*.fmt" \
+                -delete
+            find "$out" -type d -empty -delete
+            exit
+        fi
+    elif [[ -z $__combine ]] ; then
+        # double check that all formats are present
+        if fmtutil --quiet --strict --sys --missing --dry-run 2>&1 | grep running ; then
+            tlutils_info 'formats not found, aborting'
+            exit 1
+        fi
     fi
 
     installtl_do_path_adjustments
@@ -190,7 +214,7 @@ installtl_do_postinst_stuff () {
 ### TeXLive::TLUtils
 
 tlutils_info () {
-    printf '%s\n' "texlive: $*"
+    printf "texlive${__formatsOf:+($__formatsOf-fmt)}: %s\n" "$*"
 }
 
 tlutils_create_fmtutil () {
diff --git a/pkgs/tools/typesetting/tex/texpresso/default.nix b/pkgs/tools/typesetting/tex/texpresso/default.nix
index e2e244ceda69..52e8be777c09 100644
--- a/pkgs/tools/typesetting/tex/texpresso/default.nix
+++ b/pkgs/tools/typesetting/tex/texpresso/default.nix
@@ -17,7 +17,7 @@
 
 stdenv.mkDerivation rec {
   pname = "texpresso";
-  version = "0-unstable-2024-04-18";
+  version = "0-unstable-2024-05-09";
 
   nativeBuildInputs = [
     makeWrapper
@@ -35,8 +35,8 @@ stdenv.mkDerivation rec {
   src = fetchFromGitHub {
     owner = "let-def";
     repo = "texpresso";
-    rev = "62b2b5913420d92bb2863d9c92ac2072f7aaa5f9";
-    hash = "sha256-kVGRuFVkJvQfl1bEjBU0pyx+SB+k5yI9C6XFiKZRpLQ=";
+    rev = "8b6cfcd10c03596bc3645ac8425a48b105d8650d";
+    hash = "sha256-uLGanGEUGzxIYFbU3U8LLV3bpn/IN9XltvWCmwSlD7E=";
   };
 
   buildFlags = [ "texpresso" ];
diff --git a/pkgs/tools/typesetting/tex/texpresso/tectonic.nix b/pkgs/tools/typesetting/tex/texpresso/tectonic.nix
index 070594349ad7..838a51324a09 100644
--- a/pkgs/tools/typesetting/tex/texpresso/tectonic.nix
+++ b/pkgs/tools/typesetting/tex/texpresso/tectonic.nix
@@ -6,8 +6,8 @@ tectonic-unwrapped.override (old: {
       src = fetchFromGitHub {
         owner = "let-def";
         repo = "tectonic";
-        rev = "7729f1360a7e1e8b8a9f8a6a23f96b5f7cc023d0";
-        hash = "sha256-OyVkA2EuejxpQvA6pOuFaZh8ghZZ3HaV9q5DZ/2sIrY=";
+        rev = "b38cb3b2529bba947d520ac29fbb7873409bd270";
+        hash = "sha256-ap7fEPHsASAphIQkjcvk1CC7egTdxaUh7IpSS5os4W8=";
         fetchSubmodules = true;
       };
       cargoHash = "sha256-62sxvPIiY3len1wsl7QelK3u4ekftIjcTqoIGZMYb5A=";
diff --git a/pkgs/tools/typesetting/xmlto/default.nix b/pkgs/tools/typesetting/xmlto/default.nix
index 09597be8540d..848b72eee087 100644
--- a/pkgs/tools/typesetting/xmlto/default.nix
+++ b/pkgs/tools/typesetting/xmlto/default.nix
@@ -1,13 +1,32 @@
-{ fetchurl, fetchpatch, lib, stdenv, libxml2, libxslt
-, docbook_xml_dtd_45, docbook_xsl, flex, w3m
-, bash, getopt, makeWrapper }:
+{
+  bash,
+  coreutils,
+  docbook_xml_dtd_45,
+  docbook_xsl,
+  docbook-xsl-ns,
+  fetchpatch,
+  fetchurl,
+  findutils,
+  flex,
+  getopt,
+  gnugrep,
+  gnused,
+  lib,
+  libxml2,
+  libxslt,
+  makeWrapper,
+  stdenv,
+  testers,
+  w3m,
+}:
 
-stdenv.mkDerivation rec {
+stdenv.mkDerivation (finalAttrs: {
   pname = "xmlto";
   version = "0.0.28";
+
   src = fetchurl {
-    url = "https://releases.pagure.org/${pname}/${pname}-${version}.tar.bz2";
-    sha256 = "0xhj8b2pwp4vhl9y16v3dpxpsakkflfamr191mprzsspg4xdyc0i";
+    url = "https://releases.pagure.org/xmlto/xmlto-${finalAttrs.version}.tar.bz2";
+    hash = "sha256-ETDfOnlX659vDSnkqhx1cyp9+21jm+AThZtcfsVCEnY=";
   };
 
   # Note: These patches modify `xmlif/xmlif.l`, which requires `flex` to be rerun.
@@ -28,17 +47,34 @@ stdenv.mkDerivation rec {
     patchShebangs xmlif/test/run-test
 
     substituteInPlace "xmlto.in" \
-      --replace "/bin/bash" "${bash}/bin/bash"
-    substituteInPlace "xmlto.in" \
-      --replace "/usr/bin/locale" "$(type -P locale)"
-    substituteInPlace "xmlto.in" \
-      --replace "mktemp" "$(type -P mktemp)"
+      --replace-fail "@BASH@" "${bash}/bin/bash" \
+      --replace-fail "@FIND@" "${findutils}/bin/find" \
+      --replace-fail "@GETOPT@" "${getopt}/bin/getopt" \
+      --replace-fail "@GREP@" "${gnugrep}/bin/grep" \
+      --replace-fail "@MKTEMP@" "$(type -P mktemp)" \
+      --replace-fail "@SED@" "${gnused}/bin/sed" \
+      --replace-fail "@TAIL@" "${coreutils}/bin/tail"
+
+    for f in format/docbook/* xmlto.in; do
+      substituteInPlace $f \
+        --replace-fail "http://docbook.sourceforge.net/release/xsl/current" "${docbook-xsl-ns}/xml/xsl/docbook"
+    done
   '';
 
   # `libxml2' provides `xmllint', needed at build-time and run-time.
   # `libxslt' provides `xsltproc', used by `xmlto' at run-time.
-  nativeBuildInputs = [ makeWrapper flex getopt ];
-  buildInputs = [ libxml2 libxslt docbook_xml_dtd_45 docbook_xsl ];
+  nativeBuildInputs = [
+    makeWrapper
+    flex
+    getopt
+  ];
+
+  buildInputs = [
+    docbook_xml_dtd_45
+    docbook_xsl
+    libxml2
+    libxslt
+  ];
 
   postInstall = ''
     # `w3m' is needed for HTML to text conversions.
@@ -46,18 +82,24 @@ stdenv.mkDerivation rec {
        --prefix PATH : "${lib.makeBinPath [ libxslt libxml2 getopt w3m ]}"
   '';
 
+  passthru.tests.version = testers.testVersion {
+    command = "${lib.getExe finalAttrs.finalPackage} --version";
+    package = finalAttrs.finalPackage;
+  };
+
   meta = {
+    changelog = "https://pagure.io/xmlto/blob/master/f/ChangeLog";
     description = "Front-end to an XSL toolchain";
-
+    homepage = "https://pagure.io/xmlto/";
+    license = lib.licenses.gpl2Plus;
     longDescription = ''
       xmlto is a front-end to an XSL toolchain.  It chooses an
       appropriate stylesheet for the conversion you want and applies
       it using an external XSL-T processor.  It also performs any
       necessary post-processing.
     '';
-
-    license = lib.licenses.gpl2Plus;
-    homepage = "https://pagure.io/xmlto/";
+    mainProgram = "xmlto";
+    maintainers = [ ];
     platforms = lib.platforms.unix;
   };
-}
+})
diff --git a/pkgs/tools/video/blackmagic-desktop-video/default.nix b/pkgs/tools/video/blackmagic-desktop-video/default.nix
index e186bda559f3..d8d6e7f2a169 100644
--- a/pkgs/tools/video/blackmagic-desktop-video/default.nix
+++ b/pkgs/tools/video/blackmagic-desktop-video/default.nix
@@ -93,8 +93,8 @@ stdenv.mkDerivation rec {
     runHook postInstall
   '';
 
-  # i know this is ugly, but it's the cleanest way i found to tell the DesktopVideoHelper where to find its own library
-  appendRunpaths = [ "$ORIGIN/../lib" ];
+  # need to tell the DesktopVideoHelper where to find its own library
+  appendRunpaths = [ "${placeholder "out"}/lib" ];
 
   meta = with lib; {
     homepage = "https://www.blackmagicdesign.com/support/family/capture-and-playback";
diff --git a/pkgs/tools/video/go2rtc/default.nix b/pkgs/tools/video/go2rtc/default.nix
index 75c3e114cf34..90a982335fac 100644
--- a/pkgs/tools/video/go2rtc/default.nix
+++ b/pkgs/tools/video/go2rtc/default.nix
@@ -5,16 +5,16 @@
 
 buildGoModule rec {
   pname = "go2rtc";
-  version = "1.9.0";
+  version = "1.9.2";
 
   src = fetchFromGitHub {
     owner = "AlexxIT";
     repo = "go2rtc";
     rev = "refs/tags/v${version}";
-    hash = "sha256-jKWZHrsESfav8tfQ4rNzvdjUo17DB+kG5qW1CMRbqAM=";
+    hash = "sha256-GqZs11g05xc3Nob/jqGbG/rFYBhyEPNdXYJuJBiAyko=";
   };
 
-  vendorHash = "sha256-iHszhdCeeeMVH3460rVJw2LsEIZRg3KKG8A9Uzcfg3w=";
+  vendorHash = "sha256-5c3oauklMD9fEnVGPyWq6hR5jz6pSnq2kmdq+0JBfpo=";
 
   CGO_ENABLED = 0;
 
diff --git a/pkgs/tools/video/lux/default.nix b/pkgs/tools/video/lux/default.nix
index 7d1c969959a6..dfffc048de4f 100644
--- a/pkgs/tools/video/lux/default.nix
+++ b/pkgs/tools/video/lux/default.nix
@@ -7,13 +7,13 @@
 
 buildGoModule rec {
   pname = "lux";
-  version = "0.24.0";
+  version = "0.24.1";
 
   src = fetchFromGitHub {
     owner = "iawia002";
     repo = "lux";
     rev = "v${version}";
-    hash = "sha256-FwHoxTcEr0u7GPSdl1A8gsx9GCb9QuD/5ospaPOxZrI=";
+    hash = "sha256-3d8EQ7GzufZvMfjHbVMdpuGE+vPdSir4diSnB29v0sw=";
   };
 
   nativeBuildInputs = [ makeWrapper ];
diff --git a/pkgs/tools/video/rtmpdump/default.nix b/pkgs/tools/video/rtmpdump/default.nix
index b6293ffbc539..acb59fd21bdb 100644
--- a/pkgs/tools/video/rtmpdump/default.nix
+++ b/pkgs/tools/video/rtmpdump/default.nix
@@ -51,7 +51,7 @@ stdenv.mkDerivation {
   meta = with lib; {
     description = "Toolkit for RTMP streams";
     homepage = "https://rtmpdump.mplayerhq.hu/";
-    license = licenses.gpl2;
+    license = licenses.gpl2Plus;
     platforms = platforms.unix;
     maintainers = with maintainers; [ codyopel ];
   };
diff --git a/pkgs/tools/video/swfmill/default.nix b/pkgs/tools/video/swfmill/default.nix
index 8e6d0baf7e72..67c35d838fc7 100644
--- a/pkgs/tools/video/swfmill/default.nix
+++ b/pkgs/tools/video/swfmill/default.nix
@@ -20,7 +20,7 @@ stdenv.mkDerivation rec {
   meta = {
     description = "An xml2swf and swf2xml processor with import functionalities";
     homepage = "http://swfmill.org";
-    license = lib.licenses.gpl2;
+    license = lib.licenses.gpl2Only;
     platforms = lib.platforms.unix;
     mainProgram = "swfmill";
   };
diff --git a/pkgs/tools/video/untrunc-anthwlock/default.nix b/pkgs/tools/video/untrunc-anthwlock/default.nix
index 6ec52db7ebfd..db98232c01bc 100644
--- a/pkgs/tools/video/untrunc-anthwlock/default.nix
+++ b/pkgs/tools/video/untrunc-anthwlock/default.nix
@@ -1,8 +1,8 @@
-{ lib, stdenv, fetchFromGitHub, ffmpeg_4, libui, unstableGitUpdater, wrapGAppsHook }:
+{ lib, stdenv, fetchFromGitHub, ffmpeg_4, libui, unstableGitUpdater, wrapGAppsHook3 }:
 
 stdenv.mkDerivation {
   pname = "untrunc-anthwlock";
-  version = "unstable-2021-11-21";
+  version = "0-unstable-2021-11-21";
 
   src = fetchFromGitHub {
     owner = "anthwlock";
@@ -11,7 +11,7 @@ stdenv.mkDerivation {
     hash = "sha256-h+aFPhlbEM6EfCKbsJPelBY5ys7kv5K4rbK/HTHeEcw=";
   };
 
-  nativeBuildInputs = [ wrapGAppsHook ];
+  nativeBuildInputs = [ wrapGAppsHook3 ];
 
   buildInputs = [ ffmpeg_4 libui ];
 
@@ -30,12 +30,15 @@ stdenv.mkDerivation {
 
   enableParallelBuilding = true;
 
-  passthru.updateScript = unstableGitUpdater { };
+  passthru.updateScript = unstableGitUpdater {
+    # Only stale "latest" tag
+    hardcodeZeroVersion = true;
+  };
 
   meta = with lib; {
     description = "Restore a truncated mp4/mov (improved version of ponchio/untrunc)";
     homepage = "https://github.com/anthwlock/untrunc";
-    license = licenses.gpl2;
+    license = licenses.gpl2Only;
     platforms = platforms.all;
     maintainers = [ maintainers.romildo ];
   };
diff --git a/pkgs/tools/video/vncrec/default.nix b/pkgs/tools/video/vncrec/default.nix
index 3b3391284f07..983bf16e100d 100644
--- a/pkgs/tools/video/vncrec/default.nix
+++ b/pkgs/tools/video/vncrec/default.nix
@@ -29,7 +29,7 @@ stdenv.mkDerivation {
     description = "VNC recorder";
     homepage = "http://ronja.twibright.com/utils/vncrec/";
     platforms = lib.platforms.linux;
-    license = lib.licenses.gpl2;
+    license = lib.licenses.gpl2Plus;
     mainProgram = "vncrec";
   };
 }
diff --git a/pkgs/tools/virtualization/govc/default.nix b/pkgs/tools/virtualization/govc/default.nix
index f3d233e7d49b..4dc260d7aa52 100644
--- a/pkgs/tools/virtualization/govc/default.nix
+++ b/pkgs/tools/virtualization/govc/default.nix
@@ -2,7 +2,7 @@
 
 buildGoModule rec {
   pname = "govc";
-  version = "0.37.1";
+  version = "0.37.2";
 
   subPackages = [ "govc" ];
 
@@ -10,7 +10,7 @@ buildGoModule rec {
     rev = "v${version}";
     owner = "vmware";
     repo = "govmomi";
-    sha256 = "sha256-lErMWVr0UWR2Hc6fYZiauLz6kAZY/uGPNjm6oJGBAuw=";
+    sha256 = "sha256-9gsakFUmeOgWJGmhYtBcdjaEsF5oE3ytoHgwASOciq0=";
   };
 
   vendorHash = "sha256-1EAQMYaTEtfAiu7+UTkC7QZwSWC1Ihwj9leTd90T0ZU=";
diff --git a/pkgs/tools/virtualization/mkosi/default.nix b/pkgs/tools/virtualization/mkosi/default.nix
index 8737002c0a82..130b47a5c9d2 100644
--- a/pkgs/tools/virtualization/mkosi/default.nix
+++ b/pkgs/tools/virtualization/mkosi/default.nix
@@ -25,7 +25,6 @@
   # Optional dependencies
 , withQemu ? false
 , qemu
-, OVMF
 }:
 let
   # For systemd features used by mkosi, see
@@ -37,6 +36,7 @@ let
     withFirstboot = true;
     withEfi = true;
     withUkify = true;
+    withKernelInstall = true;
   };
 
   python3pefile = python3.withPackages (ps: with ps; [
@@ -45,7 +45,7 @@ let
 in
 buildPythonApplication rec {
   pname = "mkosi";
-  version = "20.2";
+  version = "22";
   format = "pyproject";
 
   outputs = [ "out" "man" ];
@@ -54,29 +54,19 @@ buildPythonApplication rec {
     owner = "systemd";
     repo = "mkosi";
     rev = "v${version}";
-    hash = "sha256-+mvepzoswDVIHzj+rEnlr0ouphGv5unpaNX3U8x517Y=";
+    hash = "sha256-Zom1GlyhqgpTKfjcBOUEJMlubSn+TQsk97js1/UfDHY=";
   };
 
-  patches = [
-    # sandbox: Deal correctly with unmerged-usr.
-    # Remove on next release after v20.2.
-    (fetchpatch {
-      url = "https://github.com/systemd/mkosi/commit/5a708efdb432dee9c6e5a9a4754752359cac8944.patch";
-      hash = "sha256-dXkY8Hha6y9CoZC1WdtZuI/YJsOQ1fOt4o4RsPkGWYQ=";
-    })
-  ];
-
   # Fix ctypes finding library
   # https://github.com/NixOS/nixpkgs/issues/7307
   postPatch = lib.optionalString stdenv.isLinux ''
-    substituteInPlace mkosi/run.py \
-      --replace 'ctypes.util.find_library("c")' "'${stdenv.cc.libc}/lib/libc.so.6'"
+    substituteInPlace mkosi/user.py \
+      --replace-fail 'ctypes.util.find_library("c")' "'${stdenv.cc.libc}/lib/libc.so.6'"
     substituteInPlace mkosi/__init__.py \
-      --replace '/usr/lib/systemd/ukify' "${systemdForMkosi}/lib/systemd/ukify"
+      --replace-fail '/usr/lib/systemd/ukify' "${systemdForMkosi}/lib/systemd/ukify"
   '' + lib.optionalString withQemu ''
     substituteInPlace mkosi/qemu.py \
-      --replace '/usr/share/ovmf/x64/OVMF_VARS.fd' "${OVMF.variables}" \
-      --replace '/usr/share/ovmf/x64/OVMF_CODE.fd' "${OVMF.firmware}"
+      --replace-fail "usr/share/qemu/firmware" "${qemu}/share/qemu/firmware"
   '';
 
   nativeBuildInputs = [
@@ -130,5 +120,7 @@ buildPythonApplication rec {
     mainProgram = "mkosi";
     maintainers = with maintainers; [ malt3 katexochen ];
     platforms = platforms.linux;
+    # `mkosi qemu` boot fails in the uefi shell, image isn't found.
+    broken = withQemu;
   };
 }
diff --git a/pkgs/tools/virtualization/xva-img/default.nix b/pkgs/tools/virtualization/xva-img/default.nix
index bb5c9d5a5992..09eb5745e570 100644
--- a/pkgs/tools/virtualization/xva-img/default.nix
+++ b/pkgs/tools/virtualization/xva-img/default.nix
@@ -18,7 +18,7 @@ stdenv.mkDerivation rec {
   meta = {
     maintainers = with lib.maintainers; [ lheckemann willibutz ];
     description = "Tool for converting Xen images to raw and back";
-    license = lib.licenses.gpl2;
+    license = lib.licenses.gpl2Plus;
     platforms = lib.platforms.unix;
     mainProgram = "xva-img";
   };
diff --git a/pkgs/tools/wayland/aw-watcher-window-wayland/Cargo.lock b/pkgs/tools/wayland/aw-watcher-window-wayland/Cargo.lock
index b1cc23695b30..ffdeb1c90618 100644
--- a/pkgs/tools/wayland/aw-watcher-window-wayland/Cargo.lock
+++ b/pkgs/tools/wayland/aw-watcher-window-wayland/Cargo.lock
@@ -996,9 +996,9 @@ dependencies = [
 
 [[package]]
 name = "rustc-serialize"
-version = "0.3.24"
+version = "0.3.25"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "dcf128d1287d2ea9d80910b5f1120d0b8eede3fbf1abe91c40d39ea7d51e6fda"
+checksum = "fe834bc780604f4674073badbad26d7219cadfb4a2275802db12cbae17498401"
 
 [[package]]
 name = "rustix"
diff --git a/pkgs/tools/wayland/aw-watcher-window-wayland/default.nix b/pkgs/tools/wayland/aw-watcher-window-wayland/default.nix
index 6ffaf29a77d3..5c51ff25d1ef 100644
--- a/pkgs/tools/wayland/aw-watcher-window-wayland/default.nix
+++ b/pkgs/tools/wayland/aw-watcher-window-wayland/default.nix
@@ -16,6 +16,8 @@ rustPlatform.buildRustPackage rec {
     hash = "sha256-xl9+k6xJp5/t1QPOYfnBLyYprhhrzjzByDKkT3dtVVQ=";
   };
 
+  cargoPatches = [ ./rustc-serialize-fix.patch ];
+
   cargoLock = {
     lockFile = ./Cargo.lock;
     outputHashes = {
@@ -36,5 +38,6 @@ rustPlatform.buildRustPackage rec {
     license = licenses.mpl20;
     maintainers = with maintainers; [ esau79p ];
     mainProgram = "aw-watcher-window-wayland";
+    platforms = platforms.linux;
   };
 }
diff --git a/pkgs/tools/wayland/aw-watcher-window-wayland/rustc-serialize-fix.patch b/pkgs/tools/wayland/aw-watcher-window-wayland/rustc-serialize-fix.patch
new file mode 100644
index 000000000000..8d0327e8a457
--- /dev/null
+++ b/pkgs/tools/wayland/aw-watcher-window-wayland/rustc-serialize-fix.patch
@@ -0,0 +1,16 @@
+diff --git a/Cargo.lock b/Cargo.lock
+index b1cc23695b30..ffdeb1c90618 100644
+--- a/Cargo.lock
++++ b/Cargo.lock
+@@ -996,9 +996,9 @@ dependencies = [
+ 
+ [[package]]
+ name = "rustc-serialize"
+-version = "0.3.24"
++version = "0.3.25"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "dcf128d1287d2ea9d80910b5f1120d0b8eede3fbf1abe91c40d39ea7d51e6fda"
++checksum = "fe834bc780604f4674073badbad26d7219cadfb4a2275802db12cbae17498401"
+ 
+ [[package]]
+ name = "rustix"
diff --git a/pkgs/tools/wayland/gtklock/default.nix b/pkgs/tools/wayland/gtklock/default.nix
index eac509c6b3d8..79e3870b81a4 100644
--- a/pkgs/tools/wayland/gtklock/default.nix
+++ b/pkgs/tools/wayland/gtklock/default.nix
@@ -5,7 +5,7 @@
 , ninja
 , scdoc
 , pkg-config
-, wrapGAppsHook
+, wrapGAppsHook3
 , gtk3
 , pam
 , gtk-session-lock
@@ -27,7 +27,7 @@ stdenv.mkDerivation rec {
     ninja
     scdoc
     pkg-config
-    wrapGAppsHook
+    wrapGAppsHook3
   ];
 
   buildInputs = [
diff --git a/pkgs/tools/wayland/mpvpaper/default.nix b/pkgs/tools/wayland/mpvpaper/default.nix
index a21873be9580..acadb99c2d66 100644
--- a/pkgs/tools/wayland/mpvpaper/default.nix
+++ b/pkgs/tools/wayland/mpvpaper/default.nix
@@ -16,13 +16,13 @@
 
 stdenv.mkDerivation rec {
   pname = "mpvpaper";
-  version = "1.5";
+  version = "1.6";
 
   src = fetchFromGitHub {
     owner = "GhostNaN";
     repo = pname;
     rev = version;
-    sha256 = "sha256-TlA2hmpHGe4PWb+Pe3cq2Hhce4NXVI1DnknseGmuFeY=";
+    sha256 = "sha256-/A2C6T7gP+VGON3Peaz2Y4rNC63UT+zYr4RNM2gdLUY=";
   };
 
   strictDeps = true;
diff --git a/pkgs/tools/wayland/sirula/Cargo.lock b/pkgs/tools/wayland/sirula/Cargo.lock
new file mode 100644
index 000000000000..6bef1f83d706
--- /dev/null
+++ b/pkgs/tools/wayland/sirula/Cargo.lock
@@ -0,0 +1,966 @@
+# This file is automatically @generated by Cargo.
+# It is not intended for manual editing.
+version = 3
+
+[[package]]
+name = "aho-corasick"
+version = "0.7.18"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "1e37cfd5e7657ada45f742d6e99ca5788580b5c529dc78faf11ece6dc702656f"
+dependencies = [
+ "memchr",
+]
+
+[[package]]
+name = "anyhow"
+version = "1.0.44"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "61604a8f862e1d5c3229fdd78f8b02c68dcf73a4c4b05fd636d12240aaa242c1"
+
+[[package]]
+name = "arrayvec"
+version = "0.5.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "23b62fc65de8e4e7f52534fb52b0f3ed04746ae267519eef2a83941e8085068b"
+
+[[package]]
+name = "atk"
+version = "0.15.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "2c3d816ce6f0e2909a96830d6911c2aff044370b1ef92d7f267b43bae5addedd"
+dependencies = [
+ "atk-sys",
+ "bitflags",
+ "glib",
+ "libc",
+]
+
+[[package]]
+name = "atk-sys"
+version = "0.15.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "58aeb089fb698e06db8089971c7ee317ab9644bade33383f63631437b03aafb6"
+dependencies = [
+ "glib-sys",
+ "gobject-sys",
+ "libc",
+ "system-deps",
+]
+
+[[package]]
+name = "autocfg"
+version = "1.0.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "cdb031dd78e28731d87d56cc8ffef4a8f36ca26c38fe2de700543e627f8a464a"
+
+[[package]]
+name = "bitflags"
+version = "1.3.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a"
+
+[[package]]
+name = "bitvec"
+version = "0.19.5"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "8942c8d352ae1838c9dda0b0ca2ab657696ef2232a20147cf1b30ae1a9cb4321"
+dependencies = [
+ "funty",
+ "radium",
+ "tap",
+ "wyz",
+]
+
+[[package]]
+name = "cairo-rs"
+version = "0.15.12"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "c76ee391b03d35510d9fa917357c7f1855bd9a6659c95a1b392e33f49b3369bc"
+dependencies = [
+ "bitflags",
+ "cairo-sys-rs",
+ "glib",
+ "libc",
+ "thiserror",
+]
+
+[[package]]
+name = "cairo-sys-rs"
+version = "0.15.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "3c55d429bef56ac9172d25fecb85dc8068307d17acd74b377866b7a1ef25d3c8"
+dependencies = [
+ "glib-sys",
+ "libc",
+ "system-deps",
+]
+
+[[package]]
+name = "cfg-expr"
+version = "0.10.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "0aacacf4d96c24b2ad6eb8ee6df040e4f27b0d0b39a5710c30091baa830485db"
+dependencies = [
+ "smallvec",
+]
+
+[[package]]
+name = "cfg-if"
+version = "1.0.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd"
+
+[[package]]
+name = "dirs"
+version = "4.0.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "ca3aa72a6f96ea37bbc5aa912f6788242832f75369bdfdadcb0e38423f100059"
+dependencies = [
+ "dirs-sys",
+]
+
+[[package]]
+name = "dirs-sys"
+version = "0.3.7"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "1b1d1d91c932ef41c0f2663aa8b0ca0342d444d842c06914aa0a7e352d0bada6"
+dependencies = [
+ "libc",
+ "redox_users",
+ "winapi",
+]
+
+[[package]]
+name = "either"
+version = "1.9.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "a26ae43d7bcc3b814de94796a5e736d4029efb0ee900c12e2d54c993ad1a1e07"
+
+[[package]]
+name = "field-offset"
+version = "0.3.4"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "1e1c54951450cbd39f3dbcf1005ac413b49487dabf18a720ad2383eccfeffb92"
+dependencies = [
+ "memoffset",
+ "rustc_version",
+]
+
+[[package]]
+name = "freedesktop_entry_parser"
+version = "1.2.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "347aa21b13048c0a0a4dc3118b661eb89d73ea675eca95b6a0f11e698ff66ec1"
+dependencies = [
+ "nom",
+ "thiserror",
+]
+
+[[package]]
+name = "funty"
+version = "1.1.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "fed34cd105917e91daa4da6b3728c47b068749d6a62c59811f06ed2ac71d9da7"
+
+[[package]]
+name = "futures"
+version = "0.3.21"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "f73fe65f54d1e12b726f517d3e2135ca3125a437b6d998caf1962961f7172d9e"
+dependencies = [
+ "futures-channel",
+ "futures-core",
+ "futures-executor",
+ "futures-io",
+ "futures-sink",
+ "futures-task",
+ "futures-util",
+]
+
+[[package]]
+name = "futures-channel"
+version = "0.3.21"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "c3083ce4b914124575708913bca19bfe887522d6e2e6d0952943f5eac4a74010"
+dependencies = [
+ "futures-core",
+ "futures-sink",
+]
+
+[[package]]
+name = "futures-core"
+version = "0.3.21"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "0c09fd04b7e4073ac7156a9539b57a484a8ea920f79c7c675d05d289ab6110d3"
+
+[[package]]
+name = "futures-executor"
+version = "0.3.21"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "9420b90cfa29e327d0429f19be13e7ddb68fa1cccb09d65e5706b8c7a749b8a6"
+dependencies = [
+ "futures-core",
+ "futures-task",
+ "futures-util",
+]
+
+[[package]]
+name = "futures-io"
+version = "0.3.21"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "fc4045962a5a5e935ee2fdedaa4e08284547402885ab326734432bed5d12966b"
+
+[[package]]
+name = "futures-macro"
+version = "0.3.21"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "33c1e13800337f4d4d7a316bf45a567dbcb6ffe087f16424852d97e97a91f512"
+dependencies = [
+ "proc-macro2",
+ "quote",
+ "syn",
+]
+
+[[package]]
+name = "futures-sink"
+version = "0.3.21"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "21163e139fa306126e6eedaf49ecdb4588f939600f0b1e770f4205ee4b7fa868"
+
+[[package]]
+name = "futures-task"
+version = "0.3.21"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "57c66a976bf5909d801bbef33416c41372779507e7a6b3a5e25e4749c58f776a"
+
+[[package]]
+name = "futures-util"
+version = "0.3.21"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "d8b7abd5d659d9b90c8cba917f6ec750a74e2dc23902ef9cd4cc8c8b22e6036a"
+dependencies = [
+ "futures-channel",
+ "futures-core",
+ "futures-io",
+ "futures-macro",
+ "futures-sink",
+ "futures-task",
+ "memchr",
+ "pin-project-lite",
+ "pin-utils",
+ "slab",
+]
+
+[[package]]
+name = "fuzzy-matcher"
+version = "0.3.7"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "54614a3312934d066701a80f20f15fa3b56d67ac7722b39eea5b4c9dd1d66c94"
+dependencies = [
+ "thread_local",
+]
+
+[[package]]
+name = "gdk"
+version = "0.15.4"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "a6e05c1f572ab0e1f15be94217f0dc29088c248b14f792a5ff0af0d84bcda9e8"
+dependencies = [
+ "bitflags",
+ "cairo-rs",
+ "gdk-pixbuf",
+ "gdk-sys",
+ "gio",
+ "glib",
+ "libc",
+ "pango",
+]
+
+[[package]]
+name = "gdk-pixbuf"
+version = "0.15.11"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "ad38dd9cc8b099cceecdf41375bb6d481b1b5a7cd5cd603e10a69a9383f8619a"
+dependencies = [
+ "bitflags",
+ "gdk-pixbuf-sys",
+ "gio",
+ "glib",
+ "libc",
+]
+
+[[package]]
+name = "gdk-pixbuf-sys"
+version = "0.15.10"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "140b2f5378256527150350a8346dbdb08fadc13453a7a2d73aecd5fab3c402a7"
+dependencies = [
+ "gio-sys",
+ "glib-sys",
+ "gobject-sys",
+ "libc",
+ "system-deps",
+]
+
+[[package]]
+name = "gdk-sys"
+version = "0.15.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "32e7a08c1e8f06f4177fb7e51a777b8c1689f743a7bc11ea91d44d2226073a88"
+dependencies = [
+ "cairo-sys-rs",
+ "gdk-pixbuf-sys",
+ "gio-sys",
+ "glib-sys",
+ "gobject-sys",
+ "libc",
+ "pango-sys",
+ "pkg-config",
+ "system-deps",
+]
+
+[[package]]
+name = "getrandom"
+version = "0.2.7"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "4eb1a864a501629691edf6c15a593b7a51eebaa1e8468e9ddc623de7c9b58ec6"
+dependencies = [
+ "cfg-if",
+ "libc",
+ "wasi",
+]
+
+[[package]]
+name = "gio"
+version = "0.15.12"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "68fdbc90312d462781a395f7a16d96a2b379bb6ef8cd6310a2df272771c4283b"
+dependencies = [
+ "bitflags",
+ "futures-channel",
+ "futures-core",
+ "futures-io",
+ "gio-sys",
+ "glib",
+ "libc",
+ "once_cell",
+ "thiserror",
+]
+
+[[package]]
+name = "gio-sys"
+version = "0.15.10"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "32157a475271e2c4a023382e9cab31c4584ee30a97da41d3c4e9fdd605abcf8d"
+dependencies = [
+ "glib-sys",
+ "gobject-sys",
+ "libc",
+ "system-deps",
+ "winapi",
+]
+
+[[package]]
+name = "glib"
+version = "0.15.12"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "edb0306fbad0ab5428b0ca674a23893db909a98582969c9b537be4ced78c505d"
+dependencies = [
+ "bitflags",
+ "futures-channel",
+ "futures-core",
+ "futures-executor",
+ "futures-task",
+ "glib-macros",
+ "glib-sys",
+ "gobject-sys",
+ "libc",
+ "once_cell",
+ "smallvec",
+ "thiserror",
+]
+
+[[package]]
+name = "glib-macros"
+version = "0.15.13"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "10c6ae9f6fa26f4fb2ac16b528d138d971ead56141de489f8111e259b9df3c4a"
+dependencies = [
+ "anyhow",
+ "heck",
+ "proc-macro-crate",
+ "proc-macro-error",
+ "proc-macro2",
+ "quote",
+ "syn",
+]
+
+[[package]]
+name = "glib-sys"
+version = "0.15.10"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "ef4b192f8e65e9cf76cbf4ea71fa8e3be4a0e18ffe3d68b8da6836974cc5bad4"
+dependencies = [
+ "libc",
+ "system-deps",
+]
+
+[[package]]
+name = "gobject-sys"
+version = "0.15.10"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "0d57ce44246becd17153bd035ab4d32cfee096a657fc01f2231c9278378d1e0a"
+dependencies = [
+ "glib-sys",
+ "libc",
+ "system-deps",
+]
+
+[[package]]
+name = "gtk"
+version = "0.15.5"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "92e3004a2d5d6d8b5057d2b57b3712c9529b62e82c77f25c1fecde1fd5c23bd0"
+dependencies = [
+ "atk",
+ "bitflags",
+ "cairo-rs",
+ "field-offset",
+ "futures-channel",
+ "gdk",
+ "gdk-pixbuf",
+ "gio",
+ "glib",
+ "gtk-sys",
+ "gtk3-macros",
+ "libc",
+ "once_cell",
+ "pango",
+ "pkg-config",
+]
+
+[[package]]
+name = "gtk-layer-shell"
+version = "0.4.4"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "4316ff523ae445bd6efaf253f217598dd074619fe67b9199b5b0cd5ff99144da"
+dependencies = [
+ "bitflags",
+ "gdk",
+ "glib",
+ "glib-sys",
+ "gtk",
+ "gtk-layer-shell-sys",
+ "libc",
+]
+
+[[package]]
+name = "gtk-layer-shell-sys"
+version = "0.4.4"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "ff60230d690445577655416055dbd279d05631b03ab07f935e39f5fe81084c0a"
+dependencies = [
+ "gdk-sys",
+ "glib-sys",
+ "gtk-sys",
+ "libc",
+ "system-deps",
+]
+
+[[package]]
+name = "gtk-sys"
+version = "0.15.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "d5bc2f0587cba247f60246a0ca11fe25fb733eabc3de12d1965fc07efab87c84"
+dependencies = [
+ "atk-sys",
+ "cairo-sys-rs",
+ "gdk-pixbuf-sys",
+ "gdk-sys",
+ "gio-sys",
+ "glib-sys",
+ "gobject-sys",
+ "libc",
+ "pango-sys",
+ "system-deps",
+]
+
+[[package]]
+name = "gtk3-macros"
+version = "0.15.6"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "684c0456c086e8e7e9af73ec5b84e35938df394712054550e81558d21c44ab0d"
+dependencies = [
+ "anyhow",
+ "proc-macro-crate",
+ "proc-macro-error",
+ "proc-macro2",
+ "quote",
+ "syn",
+]
+
+[[package]]
+name = "heck"
+version = "0.4.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "2540771e65fc8cb83cd6e8a237f70c319bd5c29f78ed1084ba5d50eeac86f7f9"
+
+[[package]]
+name = "itertools"
+version = "0.8.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "f56a2d0bc861f9165be4eb3442afd3c236d8a98afd426f65d92324ae1091a484"
+dependencies = [
+ "either",
+]
+
+[[package]]
+name = "lazy_static"
+version = "1.4.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "e2abad23fbc42b3700f2f279844dc832adb2b2eb069b2df918f455c4e18cc646"
+
+[[package]]
+name = "lexical-core"
+version = "0.7.6"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "6607c62aa161d23d17a9072cc5da0be67cdfc89d3afb1e8d9c842bebc2525ffe"
+dependencies = [
+ "arrayvec",
+ "bitflags",
+ "cfg-if",
+ "ryu",
+ "static_assertions",
+]
+
+[[package]]
+name = "libc"
+version = "0.2.126"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "349d5a591cd28b49e1d1037471617a32ddcda5731b99419008085f72d5a53836"
+
+[[package]]
+name = "locale-types"
+version = "0.4.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "02be1c159bff06af0fdec8942a4f3a9242cc2ecebdfccb0d29d3c100ca5e7a97"
+dependencies = [
+ "lazy_static",
+ "regex",
+]
+
+[[package]]
+name = "memchr"
+version = "2.6.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "5486aed0026218e61b8a01d5fbd5a0a134649abb71a0e53b7bc088529dced86e"
+
+[[package]]
+name = "memoffset"
+version = "0.6.4"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "59accc507f1338036a0477ef61afdae33cde60840f4dfe481319ce3ad116ddf9"
+dependencies = [
+ "autocfg",
+]
+
+[[package]]
+name = "nom"
+version = "6.1.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "e7413f999671bd4745a7b624bd370a569fb6bc574b23c83a3c5ed2e453f3d5e2"
+dependencies = [
+ "bitvec",
+ "funty",
+ "lexical-core",
+ "memchr",
+ "version_check",
+]
+
+[[package]]
+name = "once_cell"
+version = "1.8.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "692fcb63b64b1758029e0a96ee63e049ce8c5948587f2f7208df04625e5f6b56"
+
+[[package]]
+name = "osstrtools"
+version = "0.2.2"
+source = "git+https://github.com/Artturin/osstrtools.git?rev=6360f4f842eb542ff4e62e75851ea8ba83808471#6360f4f842eb542ff4e62e75851ea8ba83808471"
+dependencies = [
+ "itertools",
+]
+
+[[package]]
+name = "pango"
+version = "0.15.10"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "22e4045548659aee5313bde6c582b0d83a627b7904dd20dc2d9ef0895d414e4f"
+dependencies = [
+ "bitflags",
+ "glib",
+ "libc",
+ "once_cell",
+ "pango-sys",
+]
+
+[[package]]
+name = "pango-sys"
+version = "0.15.10"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "d2a00081cde4661982ed91d80ef437c20eacaf6aa1a5962c0279ae194662c3aa"
+dependencies = [
+ "glib-sys",
+ "gobject-sys",
+ "libc",
+ "system-deps",
+]
+
+[[package]]
+name = "pest"
+version = "2.1.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "10f4872ae94d7b90ae48754df22fd42ad52ce740b8f370b03da4835417403e53"
+dependencies = [
+ "ucd-trie",
+]
+
+[[package]]
+name = "pin-project-lite"
+version = "0.2.7"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "8d31d11c69a6b52a174b42bdc0c30e5e11670f90788b2c471c31c1d17d449443"
+
+[[package]]
+name = "pin-utils"
+version = "0.1.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "8b870d8c151b6f2fb93e84a13146138f05d02ed11c7e7c54f8826aaaf7c9f184"
+
+[[package]]
+name = "pkg-config"
+version = "0.3.20"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "7c9b1041b4387893b91ee6746cddfc28516aff326a3519fb2adf820932c5e6cb"
+
+[[package]]
+name = "proc-macro-crate"
+version = "1.1.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "1ebace6889caf889b4d3f76becee12e90353f2b8c7d875534a71e5742f8f6f83"
+dependencies = [
+ "thiserror",
+ "toml",
+]
+
+[[package]]
+name = "proc-macro-error"
+version = "1.0.4"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "da25490ff9892aab3fcf7c36f08cfb902dd3e71ca0f9f9517bea02a73a5ce38c"
+dependencies = [
+ "proc-macro-error-attr",
+ "proc-macro2",
+ "quote",
+ "syn",
+ "version_check",
+]
+
+[[package]]
+name = "proc-macro-error-attr"
+version = "1.0.4"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "a1be40180e52ecc98ad80b184934baf3d0d29f979574e439af5a55274b35f869"
+dependencies = [
+ "proc-macro2",
+ "quote",
+ "version_check",
+]
+
+[[package]]
+name = "proc-macro2"
+version = "1.0.66"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "18fb31db3f9bddb2ea821cde30a9f70117e3f119938b5ee630b7403aa6e2ead9"
+dependencies = [
+ "unicode-ident",
+]
+
+[[package]]
+name = "quote"
+version = "1.0.33"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "5267fca4496028628a95160fc423a33e8b2e6af8a5302579e322e4b520293cae"
+dependencies = [
+ "proc-macro2",
+]
+
+[[package]]
+name = "radium"
+version = "0.5.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "941ba9d78d8e2f7ce474c015eea4d9c6d25b6a3327f9832ee29a4de27f91bbb8"
+
+[[package]]
+name = "redox_syscall"
+version = "0.2.13"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "62f25bc4c7e55e0b0b7a1d43fb893f4fa1361d0abe38b9ce4f323c2adfe6ef42"
+dependencies = [
+ "bitflags",
+]
+
+[[package]]
+name = "redox_users"
+version = "0.4.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "b033d837a7cf162d7993aded9304e30a83213c648b6e389db233191f891e5c2b"
+dependencies = [
+ "getrandom",
+ "redox_syscall",
+ "thiserror",
+]
+
+[[package]]
+name = "regex"
+version = "1.6.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "4c4eb3267174b8c6c2f654116623910a0fef09c4753f8dd83db29c48a0df988b"
+dependencies = [
+ "aho-corasick",
+ "memchr",
+ "regex-syntax",
+]
+
+[[package]]
+name = "regex-syntax"
+version = "0.6.27"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "a3f87b73ce11b1619a3c6332f45341e0047173771e8b8b73f87bfeefb7b56244"
+
+[[package]]
+name = "rustc_version"
+version = "0.3.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "f0dfe2087c51c460008730de8b57e6a320782fbfb312e1f4d520e6c6fae155ee"
+dependencies = [
+ "semver",
+]
+
+[[package]]
+name = "ryu"
+version = "1.0.5"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "71d301d4193d031abdd79ff7e3dd721168a9572ef3fe51a1517aba235bd8f86e"
+
+[[package]]
+name = "semver"
+version = "0.11.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "f301af10236f6df4160f7c3f04eec6dbc70ace82d23326abad5edee88801c6b6"
+dependencies = [
+ "semver-parser",
+]
+
+[[package]]
+name = "semver-parser"
+version = "0.10.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "00b0bef5b7f9e0df16536d3961cfb6e84331c065b4066afb39768d0e319411f7"
+dependencies = [
+ "pest",
+]
+
+[[package]]
+name = "serde"
+version = "1.0.185"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "be9b6f69f1dfd54c3b568ffa45c310d6973a5e5148fd40cf515acaf38cf5bc31"
+
+[[package]]
+name = "serde_derive"
+version = "1.0.138"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "023e9b1467aef8a10fb88f25611870ada9800ef7e22afce356bb0d2387b6f27c"
+dependencies = [
+ "proc-macro2",
+ "quote",
+ "syn",
+]
+
+[[package]]
+name = "sirula"
+version = "1.0.1"
+dependencies = [
+ "freedesktop_entry_parser",
+ "futures",
+ "fuzzy-matcher",
+ "gdk",
+ "gdk-pixbuf",
+ "gio",
+ "glib",
+ "gtk",
+ "gtk-layer-shell",
+ "libc",
+ "locale-types",
+ "osstrtools",
+ "pango",
+ "regex",
+ "serde",
+ "serde_derive",
+ "toml",
+ "xdg",
+]
+
+[[package]]
+name = "slab"
+version = "0.4.4"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "c307a32c1c5c437f38c7fd45d753050587732ba8628319fbdf12a7e289ccc590"
+
+[[package]]
+name = "smallvec"
+version = "1.9.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "2fd0db749597d91ff862fd1d55ea87f7855a744a8425a64695b6fca237d1dad1"
+
+[[package]]
+name = "static_assertions"
+version = "1.1.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "a2eb9349b6444b326872e140eb1cf5e7c522154d69e7a0ffb0fb81c06b37543f"
+
+[[package]]
+name = "syn"
+version = "1.0.98"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "c50aef8a904de4c23c788f104b7dddc7d6f79c647c7c8ce4cc8f73eb0ca773dd"
+dependencies = [
+ "proc-macro2",
+ "quote",
+ "unicode-ident",
+]
+
+[[package]]
+name = "system-deps"
+version = "6.0.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "a1a45a1c4c9015217e12347f2a411b57ce2c4fc543913b14b6fe40483328e709"
+dependencies = [
+ "cfg-expr",
+ "heck",
+ "pkg-config",
+ "toml",
+ "version-compare",
+]
+
+[[package]]
+name = "tap"
+version = "1.0.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "55937e1799185b12863d447f42597ed69d9928686b8d88a1df17376a097d8369"
+
+[[package]]
+name = "thiserror"
+version = "1.0.30"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "854babe52e4df1653706b98fcfc05843010039b406875930a70e4d9644e5c417"
+dependencies = [
+ "thiserror-impl",
+]
+
+[[package]]
+name = "thiserror-impl"
+version = "1.0.30"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "aa32fd3f627f367fe16f893e2597ae3c05020f8bba2666a4e6ea73d377e5714b"
+dependencies = [
+ "proc-macro2",
+ "quote",
+ "syn",
+]
+
+[[package]]
+name = "thread_local"
+version = "1.1.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "8018d24e04c95ac8790716a5987d0fec4f8b27249ffa0f7d33f1369bdfb88cbd"
+dependencies = [
+ "once_cell",
+]
+
+[[package]]
+name = "toml"
+version = "0.5.9"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "8d82e1a7758622a465f8cee077614c73484dac5b836c02ff6a40d5d1010324d7"
+dependencies = [
+ "serde",
+]
+
+[[package]]
+name = "ucd-trie"
+version = "0.1.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "56dee185309b50d1f11bfedef0fe6d036842e3fb77413abef29f8f8d1c5d4c1c"
+
+[[package]]
+name = "unicode-ident"
+version = "1.0.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "5bd2fe26506023ed7b5e1e315add59d6f584c621d037f9368fea9cfb988f368c"
+
+[[package]]
+name = "version-compare"
+version = "0.1.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "fe88247b92c1df6b6de80ddc290f3976dbdf2f5f5d3fd049a9fb598c6dd5ca73"
+
+[[package]]
+name = "version_check"
+version = "0.9.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "5fecdca9a5291cc2b8dcf7dc02453fee791a280f3743cb0905f8822ae463b3fe"
+
+[[package]]
+name = "wasi"
+version = "0.11.0+wasi-snapshot-preview1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "9c8d87e72b64a3b4db28d11ce29237c246188f4f51057d65a7eab63b7987e423"
+
+[[package]]
+name = "winapi"
+version = "0.3.9"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "5c839a674fcd7a98952e593242ea400abe93992746761e38641405d28b00f419"
+dependencies = [
+ "winapi-i686-pc-windows-gnu",
+ "winapi-x86_64-pc-windows-gnu",
+]
+
+[[package]]
+name = "winapi-i686-pc-windows-gnu"
+version = "0.4.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "ac3b87c63620426dd9b991e5ce0329eff545bccbbb34f3be09ff6fb6ab51b7b6"
+
+[[package]]
+name = "winapi-x86_64-pc-windows-gnu"
+version = "0.4.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f"
+
+[[package]]
+name = "wyz"
+version = "0.2.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "85e60b0d1b5f99db2556934e21937020776a5d31520bf169e851ac44e6420214"
+
+[[package]]
+name = "xdg"
+version = "2.4.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "0c4583db5cbd4c4c0303df2d15af80f0539db703fa1c68802d4cbbd2dd0f88f6"
+dependencies = [
+ "dirs",
+]
diff --git a/pkgs/tools/wayland/sirula/default.nix b/pkgs/tools/wayland/sirula/default.nix
index afb10c2a49bf..40e6e5939c78 100644
--- a/pkgs/tools/wayland/sirula/default.nix
+++ b/pkgs/tools/wayland/sirula/default.nix
@@ -8,16 +8,21 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "sirula";
-  version = "1.0.0";
+  version = "1.0.0-unstable-2023-09-02";
 
   src = fetchFromGitHub {
     owner = "DorianRudolph";
     repo = pname;
-    rev = "v${version}";
-    sha256 = "sha256-C5mVO10+jD4TDg6R9rVJO6fdDiOD5tT+bEaI53WVdFA=";
+    rev = "b15efe85ef1fe50849a33e5919d53d05f4f66090";
+    hash = "sha256-S0WbqY49nKaBUMWfgDKZxFLJuk7uFcnTfV8s86V0Zxs=";
   };
 
-  cargoSha256 = "sha256-pxVEa3m7SWMwOAcR/jRKzEc6MH6YkNfTW0cm6Nid6Zo=";
+  cargoLock = {
+    lockFile = ./Cargo.lock;
+    outputHashes = {
+      "osstrtools-0.2.2" = "sha256-Co4pcikfN4vtIVK7ZsRGCWMAhMJWNNVZe/AdN1nMlmQ=";
+    };
+  };
 
   nativeBuildInputs = [ pkg-config ];
 
diff --git a/pkgs/tools/wayland/way-displays/default.nix b/pkgs/tools/wayland/way-displays/default.nix
index 50ffefd1a6f9..62f4e3e62b25 100644
--- a/pkgs/tools/wayland/way-displays/default.nix
+++ b/pkgs/tools/wayland/way-displays/default.nix
@@ -9,13 +9,13 @@
 
 stdenv.mkDerivation rec {
   pname = "way-displays";
-  version = "1.10.2";
+  version = "1.11.0";
 
   src = fetchFromGitHub {
     owner = "alex-courtis";
     repo = "way-displays";
     rev = version;
-    sha256 = "sha256-OEsRSmtNDt3MO5MO7Ch9mOHHHraN+9qfcFn2AhXfvpk=";
+    sha256 = "sha256-uJsamTsfxpFoKOSgNs6+VQpB7/ec4NoHJsjtDa5Dex8=";
   };
 
   strictDeps = true;
diff --git a/pkgs/tools/wayland/wayland-proxy-virtwl/default.nix b/pkgs/tools/wayland/wayland-proxy-virtwl/default.nix
index f87596a0b3ff..6869bfad7641 100644
--- a/pkgs/tools/wayland/wayland-proxy-virtwl/default.nix
+++ b/pkgs/tools/wayland/wayland-proxy-virtwl/default.nix
@@ -8,7 +8,7 @@
 
 ocamlPackages.buildDunePackage rec {
   pname = "wayland-proxy-virtwl";
-  version = "unstable-2024-04-08";
+  version = "0-unstable-2024-04-08";
 
   src = fetchFromGitHub {
     owner = "talex5";
diff --git a/pkgs/tools/wayland/wl-clipboard/default.nix b/pkgs/tools/wayland/wl-clipboard/default.nix
index 8d812ac1685b..dc5b9ed900de 100644
--- a/pkgs/tools/wayland/wl-clipboard/default.nix
+++ b/pkgs/tools/wayland/wl-clipboard/default.nix
@@ -7,6 +7,8 @@
 , wayland
 , wayland-protocols
 , wayland-scanner
+, xdg-utils
+, makeWrapper
 }:
 
 stdenv.mkDerivation rec {
@@ -21,18 +23,24 @@ stdenv.mkDerivation rec {
   };
 
   strictDeps = true;
-  nativeBuildInputs = [ meson ninja pkg-config wayland-scanner ];
+  nativeBuildInputs = [ meson ninja pkg-config wayland-scanner makeWrapper ];
   buildInputs = [ wayland wayland-protocols ];
 
   mesonFlags = [
     "-Dfishcompletiondir=share/fish/vendor_completions.d"
   ];
 
+  # Fix for https://github.com/NixOS/nixpkgs/issues/251261
+  postInstall = lib.optionalString (!xdg-utils.meta.broken) ''
+    wrapProgram $out/bin/wl-copy \
+      --suffix PATH : ${lib.makeBinPath [ xdg-utils ]}
+  '';
+
   meta = with lib; {
     homepage = "https://github.com/bugaevc/wl-clipboard";
     description = "Command-line copy/paste utilities for Wayland";
     license = licenses.gpl3Plus;
-    maintainers = with maintainers; [ dywedir ];
+    maintainers = with maintainers; [ dywedir kashw2 ];
     platforms = platforms.unix;
   };
 }
diff --git a/pkgs/tools/wayland/wlsunset/default.nix b/pkgs/tools/wayland/wlsunset/default.nix
index df0f52fdf79d..72edfb9c6f48 100644
--- a/pkgs/tools/wayland/wlsunset/default.nix
+++ b/pkgs/tools/wayland/wlsunset/default.nix
@@ -5,13 +5,13 @@
 
 stdenv.mkDerivation rec {
   pname = "wlsunset";
-  version = "0.3.0";
+  version = "0.4.0";
 
   src = fetchFromSourcehut {
     owner = "~kennylevinsen";
     repo = pname;
     rev = version;
-    sha256 = "sha256-jGYPWaRUqDL4htdAOA9CAQfoHLBPvK7O9vAzcE81f/E=";
+    sha256 = "sha256-U/yROKkU9pOBLIIIsmkltF64tt5ZR97EAxxGgrFYwNg=";
   };
 
   strictDeps = true;
diff --git a/pkgs/tools/wayland/wluma/Cargo.lock b/pkgs/tools/wayland/wluma/Cargo.lock
index 22a0f9a329db..b49762dd04a0 100644
--- a/pkgs/tools/wayland/wluma/Cargo.lock
+++ b/pkgs/tools/wayland/wluma/Cargo.lock
@@ -3,15 +3,36 @@
 version = 3
 
 [[package]]
+name = "addr2line"
+version = "0.21.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "8a30b2e23b9e17a9f90641c7ab1549cd9b44f296d3ccbf309d2863cfe398a0cb"
+dependencies = [
+ "gimli",
+]
+
+[[package]]
+name = "adler"
+version = "1.0.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "f26201604c87b1e01bd3d98f8d5d9a8fcbb815e8cedb41ffccbeb4bf593a35fe"
+
+[[package]]
 name = "aho-corasick"
-version = "0.7.20"
+version = "1.1.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "cc936419f96fa211c1b9166887b38e5e40b19958e5b895be7c1f93adec7071ac"
+checksum = "8e60d3430d3a69478ad0993f19238d2df97c507009a52b3c10addcd7f6bcb916"
 dependencies = [
- "memchr 2.5.0",
+ "memchr 2.7.2",
 ]
 
 [[package]]
+name = "android-tzdata"
+version = "0.1.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "e999941b234f3131b00bc13c22d06e8c5ff726d1b6318ac7eb276997bbb4fef0"
+
+[[package]]
 name = "android_system_properties"
 version = "0.1.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -22,15 +43,15 @@ dependencies = [
 
 [[package]]
 name = "anyhow"
-version = "1.0.68"
+version = "1.0.81"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2cb2f989d18dd141ab8ae82f64d1a8cdd37e0840f73a406896cf5e99502fab61"
+checksum = "0952808a6c2afd1aa8947271f3a60f1a6763c7b912d210184c5149b5cf147247"
 
 [[package]]
 name = "ash"
-version = "0.37.2+1.3.238"
+version = "0.37.3+1.3.251"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "28bf19c1f0a470be5fbf7522a308a05df06610252c5bcf5143e1b23f629a9a03"
+checksum = "39e9c3835d686b0a6084ab4234fcd1b07dbf6e4767dce60874b12356a25ecd4a"
 
 [[package]]
 name = "atty"
@@ -45,9 +66,24 @@ dependencies = [
 
 [[package]]
 name = "autocfg"
-version = "1.1.0"
+version = "1.2.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d468802bab17cbc0cc575e9b053f41e72aa36bfa6b7f55e3529ffa43161b97fa"
+checksum = "f1fdabc7756949593fe60f30ec81974b613357de856987752631dea1e3394c80"
+
+[[package]]
+name = "backtrace"
+version = "0.3.71"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "26b05800d2e817c8b3b4b54abd461726265fa9789ae34330622f2db9ee696f9d"
+dependencies = [
+ "addr2line",
+ "cc",
+ "cfg-if",
+ "libc",
+ "miniz_oxide",
+ "object",
+ "rustc-demangle",
+]
 
 [[package]]
 name = "bindgen"
@@ -55,7 +91,7 @@ version = "0.65.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "cfdf7b466f9a4903edc73f95d6d2bcd5baf8ae620638762244d3f60143643cc5"
 dependencies = [
- "bitflags",
+ "bitflags 1.3.2",
  "cexpr",
  "clang-sys",
  "lazy_static",
@@ -68,7 +104,7 @@ dependencies = [
  "regex",
  "rustc-hash",
  "shlex",
- "syn 2.0.22",
+ "syn 2.0.57",
  "which",
 ]
 
@@ -79,22 +115,28 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a"
 
 [[package]]
+name = "bitflags"
+version = "2.5.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "cf4b9d6a944f767f8e5e0db018570623c85f3d925ac718db4e06d0187adb21c1"
+
+[[package]]
 name = "bumpalo"
-version = "3.11.1"
+version = "3.15.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "572f695136211188308f16ad2ca5c851a712c464060ae6974944458eb83880ba"
+checksum = "7ff69b9dd49fd426c69a0db9fc04dd934cdb6645ff000864d98f7e2af8830eaa"
 
 [[package]]
 name = "byteorder"
-version = "1.4.3"
+version = "1.5.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "14c189c53d098945499cdfa7ecc63567cf3886b3332b312a5b4585d8d3a6a610"
+checksum = "1fd0f2584146f6f2ef48085050886acf353beff7305ebd1ae69500e27c67f64b"
 
 [[package]]
 name = "cc"
-version = "1.0.78"
+version = "1.0.90"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a20104e2335ce8a659d6dd92a51a767a0c062599c73b343fd152cb401e828c3d"
+checksum = "8cd6604a82acf3039f1144f54b8eb34e91ffba622051189e71b781822d5ee1f5"
 
 [[package]]
 name = "cexpr"
@@ -113,24 +155,23 @@ checksum = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd"
 
 [[package]]
 name = "chrono"
-version = "0.4.23"
+version = "0.4.37"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "16b0a3d9ed01224b22057780a37bb8c5dbfe1be8ba48678e7bf57ec4b385411f"
+checksum = "8a0d04d43504c61aa6c7531f1871dd0d418d91130162063b789da00fd7057a5e"
 dependencies = [
+ "android-tzdata",
  "iana-time-zone",
  "js-sys",
- "num-integer",
  "num-traits",
- "time",
  "wasm-bindgen",
- "winapi",
+ "windows-targets 0.52.4",
 ]
 
 [[package]]
 name = "clang-sys"
-version = "1.4.0"
+version = "1.7.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "fa2e27ae6ab525c3d369ded447057bca5438d86dc3a68f6faafb8269ba82ebf3"
+checksum = "67523a3b4be3ce1989d607a828d036249522dd9c1c8de7f4dd2dae43a37369d1"
 dependencies = [
  "glob",
  "libc",
@@ -138,44 +179,28 @@ dependencies = [
 ]
 
 [[package]]
-name = "codespan-reporting"
-version = "0.11.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3538270d33cc669650c4b093848450d380def10c331d38c768e34cac80576e6e"
-dependencies = [
- "termcolor",
- "unicode-width",
-]
-
-[[package]]
 name = "core-foundation"
-version = "0.9.3"
+version = "0.9.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "194a7a9e6de53fa55116934067c844d9d749312f75c6f6d0980e8c252f8c2146"
+checksum = "91e195e091a93c46f7102ec7818a2aa394e1e1771c3ab4825963fa03e45afb8f"
 dependencies = [
- "core-foundation-sys 0.8.3",
+ "core-foundation-sys",
  "libc",
 ]
 
 [[package]]
 name = "core-foundation-sys"
-version = "0.6.2"
+version = "0.8.6"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e7ca8a5221364ef15ce201e8ed2f609fc312682a8f4e0e3d4aa5879764e0fa3b"
-
-[[package]]
-name = "core-foundation-sys"
-version = "0.8.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5827cebf4670468b8772dd191856768aedcb1b0278a04f989f7766351917b9dc"
+checksum = "06ea2b9bc92be3c2baa9334a323ebca2d6f074ff852cd1d7b11064035cd3868f"
 
 [[package]]
 name = "core-graphics"
-version = "0.22.3"
+version = "0.23.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2581bbab3b8ffc6fcbd550bf46c355135d16e9ff2a6ea032ad6b9bf1d7efe4fb"
+checksum = "970a29baf4110c26fedbc7f82107d42c23f7e88e404c4577ed73fe99ff85a212"
 dependencies = [
- "bitflags",
+ "bitflags 1.3.2",
  "core-foundation",
  "core-graphics-types",
  "foreign-types",
@@ -184,58 +209,24 @@ dependencies = [
 
 [[package]]
 name = "core-graphics-types"
-version = "0.1.1"
+version = "0.1.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3a68b68b3446082644c91ac778bf50cd4104bfb002b5a6a7c44cca5a2c70788b"
+checksum = "45390e6114f68f718cc7a830514a96f903cccd70d02a8f6d9f643ac4ba45afaf"
 dependencies = [
- "bitflags",
+ "bitflags 1.3.2",
  "core-foundation",
- "foreign-types",
  "libc",
 ]
 
 [[package]]
-name = "cxx"
-version = "1.0.86"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "51d1075c37807dcf850c379432f0df05ba52cc30f279c5cfc43cc221ce7f8579"
-dependencies = [
- "cc",
- "cxxbridge-flags",
- "cxxbridge-macro",
- "link-cplusplus",
-]
-
-[[package]]
-name = "cxx-build"
-version = "1.0.86"
+name = "dbus"
+version = "0.9.7"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5044281f61b27bc598f2f6647d480aed48d2bf52d6eb0b627d84c0361b17aa70"
+checksum = "1bb21987b9fb1613058ba3843121dd18b163b254d8a6e797e144cbac14d96d1b"
 dependencies = [
- "cc",
- "codespan-reporting",
- "once_cell",
- "proc-macro2",
- "quote",
- "scratch",
- "syn 1.0.109",
-]
-
-[[package]]
-name = "cxxbridge-flags"
-version = "1.0.86"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "61b50bc93ba22c27b0d31128d2d130a0a6b3d267ae27ef7e4fae2167dfe8781c"
-
-[[package]]
-name = "cxxbridge-macro"
-version = "1.0.86"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "39e61fda7e62115119469c7b3591fd913ecca96fb766cfd3f2e2502ab7bc87a5"
-dependencies = [
- "proc-macro2",
- "quote",
- "syn 1.0.109",
+ "libc",
+ "libdbus-sys",
+ "winapi",
 ]
 
 [[package]]
@@ -268,9 +259,9 @@ dependencies = [
 
 [[package]]
 name = "ddc-i2c"
-version = "0.2.1"
+version = "0.2.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "66503057bd41fc21b532b3ebe33b2ec57e5d4971fcfc3844306ebcb499b6c8c2"
+checksum = "1ef18fac9fd5c11d0c7b85a80887b01f7361b49edb2b4627243928b90ce2691b"
 dependencies = [
  "ddc",
  "i2c",
@@ -280,24 +271,24 @@ dependencies = [
 
 [[package]]
 name = "ddc-macos"
-version = "0.2.0"
+version = "0.2.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5cbaf316c113cfc30da8856c8104dfb4168b73fdd78562d1542e358fe8299dea"
+checksum = "3d04c521a076cbd37159b4674492304407f3bbc9669b43a90d9ed054a6d2b3cb"
 dependencies = [
  "core-foundation",
- "core-foundation-sys 0.8.3",
+ "core-foundation-sys",
  "core-graphics",
  "ddc",
  "io-kit-sys",
- "mach 0.3.2",
+ "mach",
  "thiserror",
 ]
 
 [[package]]
 name = "ddc-winapi"
-version = "0.2.0"
+version = "0.2.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3238e71b65c870e236de529546a689202fca64a2eaeec43995d28f6920d7fc9e"
+checksum = "015df0d6d814ea948e012977760324da6d103ec8d67c971c75a6daa3b4fc943f"
 dependencies = [
  "ddc",
  "widestring",
@@ -311,30 +302,10 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "6184e33543162437515c2e2b48714794e37845ec9851711914eec9d308f6ebe8"
 
 [[package]]
-name = "dirs"
-version = "4.0.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ca3aa72a6f96ea37bbc5aa912f6788242832f75369bdfdadcb0e38423f100059"
-dependencies = [
- "dirs-sys",
-]
-
-[[package]]
-name = "dirs-sys"
-version = "0.3.7"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1b1d1d91c932ef41c0f2663aa8b0ca0342d444d842c06914aa0a7e352d0bada6"
-dependencies = [
- "libc",
- "redox_users",
- "winapi",
-]
-
-[[package]]
 name = "dlib"
-version = "0.5.0"
+version = "0.5.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ac1b7517328c04c2aa68422fc60a41b92208182142ed04a25879c26c8f878794"
+checksum = "330c60081dcc4c72131f8eb70510f1ac07223e5d4163db481a04a0befcffa412"
 dependencies = [
  "libloading",
 ]
@@ -368,9 +339,9 @@ dependencies = [
 
 [[package]]
 name = "either"
-version = "1.8.1"
+version = "1.10.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7fcaabb2fef8c910e7f4c7ce9f67a1283a1715879a7c230ca9d6d1ae31f16d91"
+checksum = "11157ac094ffbdde99aa67b23417ebdd801842852b500e395a45a9c0aac03e4a"
 
 [[package]]
 name = "env_logger"
@@ -386,6 +357,22 @@ dependencies = [
 ]
 
 [[package]]
+name = "equivalent"
+version = "1.0.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "5443807d6dff69373d433ab9ef5378ad8df50ca6298caf15de6e52e24aaf54d5"
+
+[[package]]
+name = "errno"
+version = "0.3.8"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "a258e46cdc063eb8519c00b9fc845fc47bcfca4130e2f08e88665ceda8474245"
+dependencies = [
+ "libc",
+ "windows-sys 0.52.0",
+]
+
+[[package]]
 name = "float-cmp"
 version = "0.9.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -396,18 +383,30 @@ dependencies = [
 
 [[package]]
 name = "foreign-types"
-version = "0.3.2"
+version = "0.5.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f6f339eb8adc052cd2ca78910fda869aefa38d22d5cb648e6485e4d3fc06f3b1"
+checksum = "d737d9aa519fb7b749cbc3b962edcf310a8dd1f4b67c91c4f83975dbdd17d965"
 dependencies = [
+ "foreign-types-macros",
  "foreign-types-shared",
 ]
 
 [[package]]
+name = "foreign-types-macros"
+version = "0.2.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "1a5c6c585bc94aaf2c7b51dd4c2ba22680844aba4c687be581871a6f518c5742"
+dependencies = [
+ "proc-macro2",
+ "quote",
+ "syn 2.0.57",
+]
+
+[[package]]
 name = "foreign-types-shared"
-version = "0.1.1"
+version = "0.3.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "00b0228411908ca8685dba7fc2cdd70ec9990a6e753e89b6ac91a84c40fbaf4b"
+checksum = "aa9a19cbb55df58761df49b23516a86d432839add4af60fc256da840f66ed35b"
 
 [[package]]
 name = "fragile"
@@ -417,20 +416,15 @@ checksum = "6c2141d6d6c8512188a7891b4b01590a45f6dac67afb4f255c4124dbb86d4eaa"
 
 [[package]]
 name = "futures-core"
-version = "0.3.25"
+version = "0.3.30"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "04909a7a7e4633ae6c4a9ab280aeb86da1236243a77b694a49eacd659a4bd3ac"
+checksum = "dfc6580bb841c5a68e9ef15c77ccc837b40a7504914d52e47b8b0e9bbda25a1d"
 
 [[package]]
-name = "getrandom"
-version = "0.2.8"
+name = "gimli"
+version = "0.28.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c05aeb6a22b8f62540c194aac980f2115af067bfe15a0734d7277a768d396b31"
-dependencies = [
- "cfg-if",
- "libc",
- "wasi 0.11.0+wasi-snapshot-preview1",
-]
+checksum = "4271d37baee1b8c7e4b708028c57d816cf9d2434acb33a549475f78c181f6253"
 
 [[package]]
 name = "glob"
@@ -440,9 +434,9 @@ checksum = "d2fabcfbdc87f4758337ca535fb41a6d701b65693ce38287d856d1674551ec9b"
 
 [[package]]
 name = "hashbrown"
-version = "0.12.3"
+version = "0.14.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8a9ee70c43aaf417c914396645a0fa852624801b24ebb7ae78fe8272889ac888"
+checksum = "290f1a1d9242c78d09ce40a5e87e7554ee637af1351968159f4952f028f75604"
 
 [[package]]
 name = "hermit-abi"
@@ -454,6 +448,15 @@ dependencies = [
 ]
 
 [[package]]
+name = "home"
+version = "0.5.9"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "e3d1354bf6b7235cb4a0576c2619fd4ed18183f689b12b006a0ee7329eeff9a5"
+dependencies = [
+ "windows-sys 0.52.0",
+]
+
+[[package]]
 name = "humantime"
 version = "2.1.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -465,7 +468,7 @@ version = "0.1.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "60c7b7bdd7b3a985fdcf94a0d7d98e7a47fde8b7f22fb55ce1a91cc104a2ce9a"
 dependencies = [
- "bitflags",
+ "bitflags 1.3.2",
 ]
 
 [[package]]
@@ -474,7 +477,7 @@ version = "0.1.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "c0268a871aaa071221d6c2875ebedcf64710e59b0d87c68c8faf5e98b87dd2a4"
 dependencies = [
- "bitflags",
+ "bitflags 1.3.2",
  "i2c",
  "i2c-linux-sys",
  "resize-slice",
@@ -487,52 +490,51 @@ version = "0.2.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "55cd060ed0016621d3da4ed3a23b0158084de90d1f3a8e59f3d391aacd3bbcf8"
 dependencies = [
- "bitflags",
+ "bitflags 1.3.2",
  "byteorder",
  "libc",
 ]
 
 [[package]]
 name = "iana-time-zone"
-version = "0.1.53"
+version = "0.1.60"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "64c122667b287044802d6ce17ee2ddf13207ed924c712de9a66a5814d5b64765"
+checksum = "e7ffbb5a1b541ea2561f8c41c087286cc091e21e556a4f09a8f6cbf17b69b141"
 dependencies = [
  "android_system_properties",
- "core-foundation-sys 0.8.3",
+ "core-foundation-sys",
  "iana-time-zone-haiku",
  "js-sys",
  "wasm-bindgen",
- "winapi",
+ "windows-core",
 ]
 
 [[package]]
 name = "iana-time-zone-haiku"
-version = "0.1.1"
+version = "0.1.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0703ae284fc167426161c2e3f1da3ea71d94b21bedbcc9494e92b28e334e3dca"
+checksum = "f31827a206f56af32e590ba56d5d2d085f558508192593743f16b2306495269f"
 dependencies = [
- "cxx",
- "cxx-build",
+ "cc",
 ]
 
 [[package]]
 name = "indexmap"
-version = "1.9.2"
+version = "2.2.6"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1885e79c1fc4b10f0e172c475f458b7f7b93061064d98c3293e98c5ba0c8b399"
+checksum = "168fb715dda47215e360912c096649d23d58bf392ac62f73919e831745e40f26"
 dependencies = [
- "autocfg",
+ "equivalent",
  "hashbrown",
 ]
 
 [[package]]
 name = "inotify"
-version = "0.10.0"
+version = "0.10.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "abf888f9575c290197b2c948dc9e9ff10bd1a39ad1ea8585f734585fa6b9d3f9"
+checksum = "fdd168d97690d0b8c412d6b6c10360277f4d7ee495c5d0d5d5fe0854923255cc"
 dependencies = [
- "bitflags",
+ "bitflags 1.3.2",
  "futures-core",
  "inotify-sys",
  "libc",
@@ -550,12 +552,12 @@ dependencies = [
 
 [[package]]
 name = "io-kit-sys"
-version = "0.1.0"
+version = "0.4.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f21dcc74995dd4cd090b147e79789f8d65959cbfb5f0b118002db869ea3bd0a0"
+checksum = "617ee6cf8e3f66f3b4ea67a4058564628cde41901316e19f559e14c7c72c5e7b"
 dependencies = [
- "core-foundation-sys 0.6.2",
- "mach 0.2.3",
+ "core-foundation-sys",
+ "mach2",
 ]
 
 [[package]]
@@ -569,15 +571,15 @@ dependencies = [
 
 [[package]]
 name = "itoa"
-version = "1.0.5"
+version = "1.0.11"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "fad582f4b9e86b6caa621cabeb0963332d92eea04729ab12892c2533951e6440"
+checksum = "49f1f14873335454500d59611f1cf4a4b0f786f9ac11f4312a78e4cf2566695b"
 
 [[package]]
 name = "js-sys"
-version = "0.3.60"
+version = "0.3.69"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "49409df3e3bf0856b916e2ceaca09ee28e6871cf7d9ce97a692cacfdb2a25a47"
+checksum = "29c15563dc2726973df627357ce0c9ddddbea194836909d655df6a75d2cf296d"
 dependencies = [
  "wasm-bindgen",
 ]
@@ -596,18 +598,27 @@ checksum = "830d08ce1d1d941e6b30645f1a0eb5643013d835ce3779a5fc208261dbe10f55"
 
 [[package]]
 name = "libc"
-version = "0.2.141"
+version = "0.2.153"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "9c198f91728a82281a64e1f4f9eeb25d82cb32a5de251c6bd1b5154d63a8e7bd"
+
+[[package]]
+name = "libdbus-sys"
+version = "0.2.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3304a64d199bb964be99741b7a14d26972741915b3649639149b2479bb46f4b5"
+checksum = "06085512b750d640299b79be4bad3d2fa90a9c00b1fd9e1b46364f66f0485c72"
+dependencies = [
+ "pkg-config",
+]
 
 [[package]]
 name = "libloading"
-version = "0.7.4"
+version = "0.8.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b67380fd3b2fbe7527a606e18729d21c6f3951633d0500574c4dc22d2d638b9f"
+checksum = "0c2a198fb6b0eada2a8df47933734e6d35d350665a33a3593d7164fa52c75c19"
 dependencies = [
  "cfg-if",
- "winapi",
+ "windows-targets 0.52.4",
 ]
 
 [[package]]
@@ -621,61 +632,55 @@ dependencies = [
 ]
 
 [[package]]
-name = "link-cplusplus"
-version = "1.0.8"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ecd207c9c713c34f95a097a5b029ac2ce6010530c7b49d7fea24d977dede04f5"
-dependencies = [
- "cc",
-]
-
-[[package]]
 name = "linked-hash-map"
 version = "0.5.6"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "0717cef1bc8b636c6e1c1bbdefc09e6322da8a9321966e8928ef80d20f7f770f"
 
 [[package]]
+name = "linux-raw-sys"
+version = "0.4.13"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "01cda141df6706de531b6c46c3a33ecca755538219bd484262fa09410c13539c"
+
+[[package]]
 name = "log"
-version = "0.4.17"
+version = "0.4.21"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "abb12e687cfb44aa40f41fc3978ef76448f9b6038cad6aef4259d3c095a2382e"
-dependencies = [
- "cfg-if",
-]
+checksum = "90ed8c1e510134f979dbc4f070f87d4313098b704861a105fe34231c70a3901c"
 
 [[package]]
 name = "mach"
-version = "0.2.3"
+version = "0.3.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "86dd2487cdfea56def77b88438a2c915fb45113c5319bfe7e14306ca4cd0b0e1"
+checksum = "b823e83b2affd8f40a9ee8c29dbc56404c1e34cd2710921f2801e2cf29527afa"
 dependencies = [
  "libc",
 ]
 
 [[package]]
-name = "mach"
-version = "0.3.2"
+name = "mach2"
+version = "0.4.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b823e83b2affd8f40a9ee8c29dbc56404c1e34cd2710921f2801e2cf29527afa"
+checksum = "19b955cdeb2a02b9117f121ce63aa52d08ade45de53e48fe6a38b39c10f6f709"
 dependencies = [
  "libc",
 ]
 
 [[package]]
 name = "mccs"
-version = "0.1.0"
+version = "0.1.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "74366c6da4179141e0d4551a46799a7e667a68eda60561690d5048bd8e0f8422"
+checksum = "6090d6b3ded42fed158b660a6b9cdaa1924f3eef6c6598e82a9ca9b70a1988cd"
 dependencies = [
  "void",
 ]
 
 [[package]]
 name = "mccs-caps"
-version = "0.1.0"
+version = "0.1.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d9766b1345aec53f3f1781797e31f7367a8c53871a0e30214d8372fe2ccbe3ce"
+checksum = "8eb961d01a3bb07969cfa276be2ab88c31d0fefa77a872696832732d6e9ec094"
 dependencies = [
  "mccs",
  "nom 3.2.1",
@@ -683,9 +688,9 @@ dependencies = [
 
 [[package]]
 name = "mccs-db"
-version = "0.1.2"
+version = "0.1.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "99726fbbe1e11e2908c461e8fab6c9106a5cb13338cc4feb68a01cced38026d0"
+checksum = "3cdaa8fe19a1a1918becc1b8cbbbdc1058bc71411dff4de0a6ec6b5269f49d38"
 dependencies = [
  "mccs",
  "nom 3.2.1",
@@ -705,9 +710,9 @@ dependencies = [
 
 [[package]]
 name = "memchr"
-version = "2.5.0"
+version = "2.7.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2dffe52ecf27772e601905b7522cb4ef790d2cc203488bbd0e2fe85fcb74566d"
+checksum = "6c8640c5d730cb13ebd907d8d04b52f55ac9a2eec55b440c8892f40d56c76c1d"
 
 [[package]]
 name = "memoffset"
@@ -725,15 +730,23 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "68354c5c6bd36d73ff3feceb05efa59b6acb7626617f4962be322a825e61f79a"
 
 [[package]]
+name = "miniz_oxide"
+version = "0.7.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "9d811f3e15f28568be3407c8e7fdb6514c1cda3cb30683f15b6a1a1dc4ea14a7"
+dependencies = [
+ "adler",
+]
+
+[[package]]
 name = "mio"
-version = "0.8.5"
+version = "0.8.11"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e5d732bc30207a6423068df043e3d02e0735b155ad7ce1a6f76fe2baa5b158de"
+checksum = "a4a650543ca06a924e8b371db273b2756685faae30f8487da1b56505a8f78b0c"
 dependencies = [
  "libc",
- "log",
- "wasi 0.11.0+wasi-snapshot-preview1",
- "windows-sys",
+ "wasi",
+ "windows-sys 0.48.0",
 ]
 
 [[package]]
@@ -769,7 +782,7 @@ version = "0.24.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "fa52e972a9a719cecb6864fb88568781eb706bac2cd1d4f04a648542dbf78069"
 dependencies = [
- "bitflags",
+ "bitflags 1.3.2",
  "cfg-if",
  "libc",
  "memoffset",
@@ -790,7 +803,7 @@ version = "7.1.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "d273983c5a657a70a3e8f2a01329822f3b8c8172b73826411a55751e404a0a4a"
 dependencies = [
- "memchr 2.5.0",
+ "memchr 2.7.2",
  "minimal-lexical",
 ]
 
@@ -801,20 +814,10 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "61807f77802ff30975e01f4f071c8ba10c022052f98b3294119f3e615d13e5be"
 
 [[package]]
-name = "num-integer"
-version = "0.1.45"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "225d3389fb3509a24c93f5c29eb6bde2586b98d9f016636dff58d7c6f7569cd9"
-dependencies = [
- "autocfg",
- "num-traits",
-]
-
-[[package]]
 name = "num-traits"
-version = "0.2.15"
+version = "0.2.18"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "578ede34cf02f8924ab9447f50c28075b4d3e5b269972345e7e0372b38c6cdcd"
+checksum = "da0df0e5185db44f69b44f26786fe401b6c293d1907744beaa7fa62b2e5a517a"
 dependencies = [
  "autocfg",
 ]
@@ -837,15 +840,24 @@ version = "0.1.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "b29e9a9393c69ee856bfcf5f76ed1ef32d2c0dd6f58558fd43334278fc1e7ea7"
 dependencies = [
- "bitflags",
+ "bitflags 1.3.2",
  "winapi",
 ]
 
 [[package]]
+name = "object"
+version = "0.32.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "a6a622008b6e321afc04970976f62ee297fdbaa6f95318ca343e3eebb9648441"
+dependencies = [
+ "memchr 2.7.2",
+]
+
+[[package]]
 name = "once_cell"
-version = "1.17.0"
+version = "1.19.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6f61fba1741ea2b3d6a1e3178721804bb716a68a6aeba1149b5d52e3d464ea66"
+checksum = "3fdb12b2476b595f9358c5161aa467c2438859caa136dec86c26fdd2efe17b92"
 
 [[package]]
 name = "peeking_take_while"
@@ -855,15 +867,15 @@ checksum = "19b17cddbe7ec3f8bc800887bab5e717348c95ea2ca0b1bf0837fb964dc67099"
 
 [[package]]
 name = "pin-project-lite"
-version = "0.2.9"
+version = "0.2.14"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e0a7ae3ac2f1173085d398531c705756c94a4c56843785df85a60c1a0afac116"
+checksum = "bda66fc9667c18cb2758a2ac84d1167245054bcf85d5d1aaa6923f45801bdd02"
 
 [[package]]
 name = "pkg-config"
-version = "0.3.26"
+version = "0.3.30"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6ac9a59f73473f1b8d852421e59e64809f025994837ef743615c6d0c5b305160"
+checksum = "d231b230927b5e4ad203db57bbcbee2802f6bce620b1e4a9024a07d94e2907ec"
 
 [[package]]
 name = "predicates"
@@ -881,15 +893,15 @@ dependencies = [
 
 [[package]]
 name = "predicates-core"
-version = "1.0.5"
+version = "1.0.6"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "72f883590242d3c6fc5bf50299011695fa6590c2c70eac95ee1bdb9a733ad1a2"
+checksum = "b794032607612e7abeb4db69adb4e33590fa6cf1149e95fd7cb00e634b92f174"
 
 [[package]]
 name = "predicates-tree"
-version = "1.0.7"
+version = "1.0.9"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "54ff541861505aabf6ea722d2131ee980b8276e10a1297b94e896dd8b621850d"
+checksum = "368ba315fb8c5052ab692e68a0eefec6ec57b23a36959c14496f0b0df2c0cecf"
 dependencies = [
  "predicates-core",
  "termtree",
@@ -897,68 +909,60 @@ dependencies = [
 
 [[package]]
 name = "prettyplease"
-version = "0.2.9"
+version = "0.2.17"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9825a04601d60621feed79c4e6b56d65db77cdca55cef43b46b0de1096d1c282"
+checksum = "8d3928fb5db768cb86f891ff014f0144589297e3c6a1aba6ed7cecfdace270c7"
 dependencies = [
  "proc-macro2",
- "syn 2.0.22",
+ "syn 2.0.57",
 ]
 
 [[package]]
 name = "proc-macro2"
-version = "1.0.62"
+version = "1.0.79"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "fe8df9bd9fe9d1742a9e17f8129712801b428f6d4c6059d79bacea58f0b0142d"
+checksum = "e835ff2298f5721608eb1a980ecaee1aef2c132bf95ecc026a11b7bf3c01c02e"
 dependencies = [
  "unicode-ident",
 ]
 
 [[package]]
 name = "quote"
-version = "1.0.28"
+version = "1.0.35"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1b9ab9c7eadfd8df19006f1cf1a4aed13540ed5cbc047010ece5826e10825488"
+checksum = "291ec9ab5efd934aaf503a6466c5d5251535d108ee747472c3977cc5acc868ef"
 dependencies = [
  "proc-macro2",
 ]
 
 [[package]]
-name = "redox_syscall"
-version = "0.2.16"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "fb5a58c1855b4b6819d59012155603f0b22ad30cad752600aadfcb695265519a"
-dependencies = [
- "bitflags",
-]
-
-[[package]]
-name = "redox_users"
-version = "0.4.3"
+name = "regex"
+version = "1.10.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b033d837a7cf162d7993aded9304e30a83213c648b6e389db233191f891e5c2b"
+checksum = "c117dbdfde9c8308975b6a18d71f3f385c89461f7b3fb054288ecf2a2058ba4c"
 dependencies = [
- "getrandom",
- "redox_syscall",
- "thiserror",
+ "aho-corasick",
+ "memchr 2.7.2",
+ "regex-automata",
+ "regex-syntax",
 ]
 
 [[package]]
-name = "regex"
-version = "1.7.3"
+name = "regex-automata"
+version = "0.4.6"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8b1f693b24f6ac912f4893ef08244d70b6067480d2f1a46e950c9691e6749d1d"
+checksum = "86b83b8b9847f9bf95ef68afb0b8e6cdb80f498442f5179a29fad448fcc1eaea"
 dependencies = [
  "aho-corasick",
- "memchr 2.5.0",
+ "memchr 2.7.2",
  "regex-syntax",
 ]
 
 [[package]]
 name = "regex-syntax"
-version = "0.6.29"
+version = "0.8.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f162c6dd7b008981e4d40210aca20b4bd0f9b60ca9271061b07f78537722f2e1"
+checksum = "adad44e29e4c806119491a7f06f03de4d1af22c3a680dd47f1e6e179439d1f56"
 
 [[package]]
 name = "resize-slice"
@@ -970,16 +974,35 @@ dependencies = [
 ]
 
 [[package]]
+name = "rustc-demangle"
+version = "0.1.23"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "d626bb9dae77e28219937af045c257c28bfd3f69333c512553507f5f9798cb76"
+
+[[package]]
 name = "rustc-hash"
 version = "1.1.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "08d43f7aa6b08d49f382cde6a7982047c3426db949b1424bc4b7ec9ae12c6ce2"
 
 [[package]]
+name = "rustix"
+version = "0.38.32"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "65e04861e65f21776e67888bfbea442b3642beaa0138fdb1dd7a84a52dffdb89"
+dependencies = [
+ "bitflags 2.5.0",
+ "errno",
+ "libc",
+ "linux-raw-sys",
+ "windows-sys 0.52.0",
+]
+
+[[package]]
 name = "ryu"
-version = "1.0.12"
+version = "1.0.17"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7b4b9743ed687d4b4bcedf9ff5eaa7398495ae14e61cba0a295704edbc7decde"
+checksum = "e86697c916019a8588c99b5fac3cead74ec0b4b819707a682fd4d23fa0ce1ba1"
 
 [[package]]
 name = "scoped-tls"
@@ -988,29 +1011,32 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "e1cf6437eb19a8f4a6cc0f7dca544973b0b78843adbfeb3683d1a94a0024a294"
 
 [[package]]
-name = "scratch"
-version = "1.0.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ddccb15bcce173023b3fedd9436f882a0739b8dfb45e4f6b6002bee5929f61b2"
-
-[[package]]
 name = "serde"
-version = "1.0.152"
+version = "1.0.197"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "bb7d1f0d3021d347a83e556fc4683dea2ea09d87bccdf88ff5c12545d89d5efb"
+checksum = "3fb1c873e1b9b056a4dc4c0c198b24c3ffa059243875552b2bd0933b1aee4ce2"
 dependencies = [
  "serde_derive",
 ]
 
 [[package]]
 name = "serde_derive"
-version = "1.0.152"
+version = "1.0.197"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "af487d118eecd09402d70a5d72551860e788df87b464af30e5ea6a38c75c541e"
+checksum = "7eb0b34b42edc17f6b7cac84a52a1c5f0e1bb2227e997ca9011ea3dd34e8610b"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 1.0.109",
+ "syn 2.0.57",
+]
+
+[[package]]
+name = "serde_spanned"
+version = "0.6.5"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "eb3622f419d1296904700073ea6cc23ad690adbd66f13ea683df73298736f0c1"
+dependencies = [
+ "serde",
 ]
 
 [[package]]
@@ -1027,9 +1053,9 @@ dependencies = [
 
 [[package]]
 name = "serde_yaml"
-version = "0.9.16"
+version = "0.9.34+deprecated"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "92b5b431e8907b50339b51223b97d102db8d987ced36f6e4d03621db9316c834"
+checksum = "6a8b1a1a2ebf674015cc02edccce75287f1a0130d394307b36743c2f5d504b47"
 dependencies = [
  "indexmap",
  "itoa",
@@ -1040,24 +1066,24 @@ dependencies = [
 
 [[package]]
 name = "shlex"
-version = "1.1.0"
+version = "1.3.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "43b2853a4d09f215c24cc5489c992ce46052d359b5109343cbafbf26bc62f8a3"
+checksum = "0fda2ff0d084019ba4d7c6f371c95d8fd75ce3524c3cb8fb653a3023f6323e64"
 
 [[package]]
 name = "smallvec"
-version = "1.10.0"
+version = "1.13.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a507befe795404456341dfab10cef66ead4c041f62b8b11bbb92bffe5d0953e0"
+checksum = "3c5e1a9a646d36c3599cd173a41282daf47c44583ad367b8e6837255952e5c67"
 
 [[package]]
 name = "socket2"
-version = "0.4.7"
+version = "0.5.6"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "02e2d2db9033d13a1567121ddd7a095ee144db4e1ca1b1bda3419bc0da294ebd"
+checksum = "05ffd9c0a93b7543e062e759284fcf5f5e3b098501104bfbdde4d404db792871"
 dependencies = [
  "libc",
- "winapi",
+ "windows-sys 0.52.0",
 ]
 
 [[package]]
@@ -1073,9 +1099,9 @@ dependencies = [
 
 [[package]]
 name = "syn"
-version = "2.0.22"
+version = "2.0.57"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2efbeae7acf4eabd6bcdcbd11c92f45231ddda7539edc7806bd1a04a03b24616"
+checksum = "11a6ae1e52eb25aab8f3fb9fca13be982a373b8f1157ca14b897a825ba4a2d35"
 dependencies = [
  "proc-macro2",
  "quote",
@@ -1084,79 +1110,85 @@ dependencies = [
 
 [[package]]
 name = "termcolor"
-version = "1.2.0"
+version = "1.4.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "be55cf8942feac5c765c2c993422806843c9a9a45d4d5c407ad6dd2ea95eb9b6"
+checksum = "06794f8f6c5c898b3275aebefa6b8a1cb24cd2c6c79397ab15774837a0bc5755"
 dependencies = [
  "winapi-util",
 ]
 
 [[package]]
 name = "termtree"
-version = "0.4.0"
+version = "0.4.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "95059e91184749cb66be6dc994f67f182b6d897cb3df74a5bf66b5e709295fd8"
+checksum = "3369f5ac52d5eb6ab48c6b4ffdc8efbcad6b89c765749064ba298f2c68a16a76"
 
 [[package]]
 name = "thiserror"
-version = "1.0.38"
+version = "1.0.58"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6a9cd18aa97d5c45c6603caea1da6628790b37f7a34b6ca89522331c5180fed0"
+checksum = "03468839009160513471e86a034bb2c5c0e4baae3b43f79ffc55c4a5427b3297"
 dependencies = [
  "thiserror-impl",
 ]
 
 [[package]]
 name = "thiserror-impl"
-version = "1.0.38"
+version = "1.0.58"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1fb327af4685e4d03fa8cbcf1716380da910eeb2bb8be417e7f9fd3fb164f36f"
+checksum = "c61f3ba182994efc43764a46c018c347bc492c79f024e705f46567b418f6d4f7"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 1.0.109",
-]
-
-[[package]]
-name = "time"
-version = "0.1.45"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1b797afad3f312d1c66a56d11d0316f916356d11bd158fbc6ca6389ff6bf805a"
-dependencies = [
- "libc",
- "wasi 0.10.0+wasi-snapshot-preview1",
- "winapi",
+ "syn 2.0.57",
 ]
 
 [[package]]
 name = "tokio"
-version = "1.24.1"
+version = "1.37.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1d9f76183f91ecfb55e1d7d5602bd1d979e38a3a522fe900241cf195624d67ae"
+checksum = "1adbebffeca75fcfd058afa480fb6c0b81e165a0323f9c9d39c9697e37c46787"
 dependencies = [
- "autocfg",
+ "backtrace",
  "libc",
  "mio",
  "pin-project-lite",
  "socket2",
- "windows-sys",
+ "windows-sys 0.48.0",
 ]
 
 [[package]]
 name = "toml"
-version = "0.5.9"
-source = "git+https://github.com/HarveyHunt/toml?branch=dotted-table-parsing-toml#7db18be32494855199ed827ac389e161914bd20d"
+version = "0.7.8"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "dd79e69d3b627db300ff956027cc6c3798cef26d22526befdfcd12feeb6d2257"
 dependencies = [
  "serde",
+ "serde_spanned",
  "toml_datetime",
+ "toml_edit",
 ]
 
 [[package]]
 name = "toml_datetime"
-version = "0.5.0"
-source = "git+https://github.com/HarveyHunt/toml?branch=dotted-table-parsing-toml#7db18be32494855199ed827ac389e161914bd20d"
+version = "0.6.5"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "3550f4e9685620ac18a50ed434eb3aec30db8ba93b0287467bca5826ea25baf1"
+dependencies = [
+ "serde",
+]
+
+[[package]]
+name = "toml_edit"
+version = "0.19.15"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "1b5bb770da30e5cbfde35a2d7b9b8a2c4b8ef89548a7a6aeab5c9a576e3e7421"
 dependencies = [
+ "indexmap",
  "serde",
+ "serde_spanned",
+ "toml_datetime",
+ "winnow",
 ]
 
 [[package]]
@@ -1171,15 +1203,9 @@ dependencies = [
 
 [[package]]
 name = "unicode-ident"
-version = "1.0.8"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e5464a87b239f13a63a501f2701565754bae92d243d4bb7eb12f6d57d2269bf4"
-
-[[package]]
-name = "unicode-width"
-version = "0.1.10"
+version = "1.0.12"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c0edd1e5b14653f783770bce4a4dabb4a5108a5370a5f5d8cfe8710c361f6c8b"
+checksum = "3354b9ac3fae1ff6755cb6db53683adb661634f67557942dea4facebec0fee4b"
 
 [[package]]
 name = "uninitialized"
@@ -1189,9 +1215,9 @@ checksum = "74c1aa4511c38276c548406f0b1f5f8b793f000cfb51e18f278a102abd057e81"
 
 [[package]]
 name = "unsafe-libyaml"
-version = "0.2.5"
+version = "0.2.11"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "bc7ed8ba44ca06be78ea1ad2c3682a43349126c8818054231ee6f4748012aed2"
+checksum = "673aac59facbab8a9007c7f6108d11f63b603f7cabff99fabf650fea5c32b861"
 
 [[package]]
 name = "v4l"
@@ -1199,7 +1225,7 @@ version = "0.14.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "d8fbfea44a46799d62c55323f3c55d06df722fbe577851d848d328a1041c3403"
 dependencies = [
- "bitflags",
+ "bitflags 1.3.2",
  "libc",
  "v4l-sys",
 ]
@@ -1221,21 +1247,15 @@ checksum = "6a02e4885ed3bc0f2de90ea6dd45ebcbb66dacffe03547fadbb0eeae2770887d"
 
 [[package]]
 name = "wasi"
-version = "0.10.0+wasi-snapshot-preview1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1a143597ca7c7793eff794def352d41792a93c481eb1042423ff7ff72ba2c31f"
-
-[[package]]
-name = "wasi"
 version = "0.11.0+wasi-snapshot-preview1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "9c8d87e72b64a3b4db28d11ce29237c246188f4f51057d65a7eab63b7987e423"
 
 [[package]]
 name = "wasm-bindgen"
-version = "0.2.83"
+version = "0.2.92"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "eaf9f5aceeec8be17c128b2e93e031fb8a4d469bb9c4ae2d7dc1888b26887268"
+checksum = "4be2531df63900aeb2bca0daaaddec08491ee64ceecbee5076636a3b026795a8"
 dependencies = [
  "cfg-if",
  "wasm-bindgen-macro",
@@ -1243,24 +1263,24 @@ dependencies = [
 
 [[package]]
 name = "wasm-bindgen-backend"
-version = "0.2.83"
+version = "0.2.92"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4c8ffb332579b0557b52d268b91feab8df3615f265d5270fec2a8c95b17c1142"
+checksum = "614d787b966d3989fa7bb98a654e369c762374fd3213d212cfc0251257e747da"
 dependencies = [
  "bumpalo",
  "log",
  "once_cell",
  "proc-macro2",
  "quote",
- "syn 1.0.109",
+ "syn 2.0.57",
  "wasm-bindgen-shared",
 ]
 
 [[package]]
 name = "wasm-bindgen-macro"
-version = "0.2.83"
+version = "0.2.92"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "052be0f94026e6cbc75cdefc9bae13fd6052cdcaf532fa6c45e7ae33a1e6c810"
+checksum = "a1f8823de937b71b9460c0c34e25f3da88250760bec0ebac694b49997550d726"
 dependencies = [
  "quote",
  "wasm-bindgen-macro-support",
@@ -1268,22 +1288,22 @@ dependencies = [
 
 [[package]]
 name = "wasm-bindgen-macro-support"
-version = "0.2.83"
+version = "0.2.92"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "07bc0c051dc5f23e307b13285f9d75df86bfdf816c5721e573dec1f9b8aa193c"
+checksum = "e94f17b526d0a461a191c78ea52bbce64071ed5c04c9ffe424dcb38f74171bb7"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 1.0.109",
+ "syn 2.0.57",
  "wasm-bindgen-backend",
  "wasm-bindgen-shared",
 ]
 
 [[package]]
 name = "wasm-bindgen-shared"
-version = "0.2.83"
+version = "0.2.92"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1c38c045535d93ec4f0b4defec448e4291638ee608530863b1e2ba115d4fff7f"
+checksum = "af190c94f2773fdb3729c55b007a722abb5384da03bc0986df4c289bf5567e96"
 
 [[package]]
 name = "wayland-client"
@@ -1291,7 +1311,7 @@ version = "0.29.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "3f3b068c05a039c9f755f881dc50f01732214f5685e379829759088967c46715"
 dependencies = [
- "bitflags",
+ "bitflags 1.3.2",
  "downcast-rs",
  "libc",
  "nix",
@@ -1319,7 +1339,7 @@ version = "0.29.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "b950621f9354b322ee817a23474e479b34be96c2e909c14f7bc0100e9a970bc6"
 dependencies = [
- "bitflags",
+ "bitflags 1.3.2",
  "wayland-client",
  "wayland-commons",
  "wayland-scanner",
@@ -1349,20 +1369,21 @@ dependencies = [
 
 [[package]]
 name = "which"
-version = "4.4.0"
+version = "4.4.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2441c784c52b289a054b7201fc93253e288f094e2f4be9058343127c4226a269"
+checksum = "87ba24419a2078cd2b0f2ede2691b6c66d8e47836da3b6db8265ebad47afbfc7"
 dependencies = [
  "either",
- "libc",
+ "home",
  "once_cell",
+ "rustix",
 ]
 
 [[package]]
 name = "widestring"
-version = "0.3.0"
+version = "1.0.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a212922ea58fbf5044f83663aa4fc6281ff890f1fd7546c0c3f52f5290831781"
+checksum = "653f141f39ec16bba3c5abe400a0c60da7468261cc2cbf36805022876bc721a8"
 
 [[package]]
 name = "winapi"
@@ -1382,9 +1403,9 @@ checksum = "ac3b87c63620426dd9b991e5ce0329eff545bccbbb34f3be09ff6fb6ab51b7b6"
 
 [[package]]
 name = "winapi-util"
-version = "0.1.5"
+version = "0.1.6"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "70ec6ce85bb158151cae5e5c87f95a8e97d2c0c4b001223f33a334e3ce5de178"
+checksum = "f29e6f9198ba0d26b4c9f07dbe6f9ed633e1f3d5b8b414090084349e46a52596"
 dependencies = [
  "winapi",
 ]
@@ -1396,68 +1417,162 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f"
 
 [[package]]
+name = "windows-core"
+version = "0.52.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "33ab640c8d7e35bf8ba19b884ba838ceb4fba93a4e8c65a9059d08afcfc683d9"
+dependencies = [
+ "windows-targets 0.52.4",
+]
+
+[[package]]
+name = "windows-sys"
+version = "0.48.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "677d2418bec65e3338edb076e806bc1ec15693c5d0104683f2efe857f61056a9"
+dependencies = [
+ "windows-targets 0.48.5",
+]
+
+[[package]]
 name = "windows-sys"
-version = "0.42.0"
+version = "0.52.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "282be5f36a8ce781fad8c8ae18fa3f9beff57ec1b52cb3de0789201425d9a33d"
+dependencies = [
+ "windows-targets 0.52.4",
+]
+
+[[package]]
+name = "windows-targets"
+version = "0.48.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5a3e1820f08b8513f676f7ab6c1f99ff312fb97b553d30ff4dd86f9f15728aa7"
+checksum = "9a2fa6e2155d7247be68c096456083145c183cbbbc2764150dda45a87197940c"
 dependencies = [
- "windows_aarch64_gnullvm",
- "windows_aarch64_msvc",
- "windows_i686_gnu",
- "windows_i686_msvc",
- "windows_x86_64_gnu",
- "windows_x86_64_gnullvm",
- "windows_x86_64_msvc",
+ "windows_aarch64_gnullvm 0.48.5",
+ "windows_aarch64_msvc 0.48.5",
+ "windows_i686_gnu 0.48.5",
+ "windows_i686_msvc 0.48.5",
+ "windows_x86_64_gnu 0.48.5",
+ "windows_x86_64_gnullvm 0.48.5",
+ "windows_x86_64_msvc 0.48.5",
 ]
 
 [[package]]
+name = "windows-targets"
+version = "0.52.4"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "7dd37b7e5ab9018759f893a1952c9420d060016fc19a472b4bb20d1bdd694d1b"
+dependencies = [
+ "windows_aarch64_gnullvm 0.52.4",
+ "windows_aarch64_msvc 0.52.4",
+ "windows_i686_gnu 0.52.4",
+ "windows_i686_msvc 0.52.4",
+ "windows_x86_64_gnu 0.52.4",
+ "windows_x86_64_gnullvm 0.52.4",
+ "windows_x86_64_msvc 0.52.4",
+]
+
+[[package]]
+name = "windows_aarch64_gnullvm"
+version = "0.48.5"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "2b38e32f0abccf9987a4e3079dfb67dcd799fb61361e53e2882c3cbaf0d905d8"
+
+[[package]]
 name = "windows_aarch64_gnullvm"
-version = "0.42.1"
+version = "0.52.4"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "bcf46cf4c365c6f2d1cc93ce535f2c8b244591df96ceee75d8e83deb70a9cac9"
+
+[[package]]
+name = "windows_aarch64_msvc"
+version = "0.48.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8c9864e83243fdec7fc9c5444389dcbbfd258f745e7853198f365e3c4968a608"
+checksum = "dc35310971f3b2dbbf3f0690a219f40e2d9afcf64f9ab7cc1be722937c26b4bc"
 
 [[package]]
 name = "windows_aarch64_msvc"
-version = "0.42.1"
+version = "0.52.4"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "da9f259dd3bcf6990b55bffd094c4f7235817ba4ceebde8e6d11cd0c5633b675"
+
+[[package]]
+name = "windows_i686_gnu"
+version = "0.48.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4c8b1b673ffc16c47a9ff48570a9d85e25d265735c503681332589af6253c6c7"
+checksum = "a75915e7def60c94dcef72200b9a8e58e5091744960da64ec734a6c6e9b3743e"
 
 [[package]]
 name = "windows_i686_gnu"
-version = "0.42.1"
+version = "0.52.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "de3887528ad530ba7bdbb1faa8275ec7a1155a45ffa57c37993960277145d640"
+checksum = "b474d8268f99e0995f25b9f095bc7434632601028cf86590aea5c8a5cb7801d3"
 
 [[package]]
 name = "windows_i686_msvc"
-version = "0.42.1"
+version = "0.48.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "bf4d1122317eddd6ff351aa852118a2418ad4214e6613a50e0191f7004372605"
+checksum = "8f55c233f70c4b27f66c523580f78f1004e8b5a8b659e05a4eb49d4166cca406"
+
+[[package]]
+name = "windows_i686_msvc"
+version = "0.52.4"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "1515e9a29e5bed743cb4415a9ecf5dfca648ce85ee42e15873c3cd8610ff8e02"
 
 [[package]]
 name = "windows_x86_64_gnu"
-version = "0.42.1"
+version = "0.48.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c1040f221285e17ebccbc2591ffdc2d44ee1f9186324dd3e84e99ac68d699c45"
+checksum = "53d40abd2583d23e4718fddf1ebec84dbff8381c07cae67ff7768bbf19c6718e"
+
+[[package]]
+name = "windows_x86_64_gnu"
+version = "0.52.4"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "5eee091590e89cc02ad514ffe3ead9eb6b660aedca2183455434b93546371a03"
+
+[[package]]
+name = "windows_x86_64_gnullvm"
+version = "0.48.5"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "0b7b52767868a23d5bab768e390dc5f5c55825b6d30b86c844ff2dc7414044cc"
 
 [[package]]
 name = "windows_x86_64_gnullvm"
-version = "0.42.1"
+version = "0.52.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "628bfdf232daa22b0d64fdb62b09fcc36bb01f05a3939e20ab73aaf9470d0463"
+checksum = "77ca79f2451b49fa9e2af39f0747fe999fcda4f5e241b2898624dca97a1f2177"
 
 [[package]]
 name = "windows_x86_64_msvc"
-version = "0.42.1"
+version = "0.48.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "447660ad36a13288b1db4d4248e857b510e8c3a225c822ba4fb748c0aafecffd"
+checksum = "ed94fce61571a4006852b7389a063ab983c02eb1bb37b47f8272ce92d06d9538"
+
+[[package]]
+name = "windows_x86_64_msvc"
+version = "0.52.4"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "32b752e52a2da0ddfbdbcc6fceadfeede4c939ed16d13e648833a61dfb611ed8"
+
+[[package]]
+name = "winnow"
+version = "0.5.40"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "f593a95398737aeed53e489c785df13f3618e41dbcd6718c6addbf1395aa6876"
+dependencies = [
+ "memchr 2.7.2",
+]
 
 [[package]]
 name = "wluma"
-version = "4.3.0"
+version = "4.4.0"
 dependencies = [
  "ash",
  "chrono",
+ "dbus",
  "ddc-hi",
  "env_logger",
  "inotify",
@@ -1466,7 +1581,7 @@ dependencies = [
  "log",
  "mockall",
  "serde",
- "serde_yaml 0.9.16",
+ "serde_yaml 0.9.34+deprecated",
  "toml",
  "v4l",
  "wayland-client",
@@ -1476,18 +1591,15 @@ dependencies = [
 
 [[package]]
 name = "xdg"
-version = "2.4.1"
+version = "2.5.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0c4583db5cbd4c4c0303df2d15af80f0539db703fa1c68802d4cbbd2dd0f88f6"
-dependencies = [
- "dirs",
-]
+checksum = "213b7324336b53d2414b2db8537e56544d981803139155afa84f76eeebb7a546"
 
 [[package]]
 name = "xml-rs"
-version = "0.8.4"
+version = "0.8.19"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d2d7d3948613f75c98fd9328cfdcc45acc4d360655289d0a7d4ec931392200a3"
+checksum = "0fcb9cbac069e033553e8bb871be2fbdffcab578eb25bd0f7c508cedc6dcd75a"
 
 [[package]]
 name = "yaml-rust"
diff --git a/pkgs/tools/wayland/wluma/default.nix b/pkgs/tools/wayland/wluma/default.nix
index 07142210c303..edc751fec511 100644
--- a/pkgs/tools/wayland/wluma/default.nix
+++ b/pkgs/tools/wayland/wluma/default.nix
@@ -7,24 +7,23 @@
 , pkg-config
 , udev
 , v4l-utils
+, dbus
+, nix-update-script
 }:
 
 rustPlatform.buildRustPackage rec {
   pname = "wluma";
-  version = "4.3.0";
+  version = "4.4.0";
 
   src = fetchFromGitHub {
     owner = "maximbaz";
     repo = "wluma";
     rev = version;
-    sha256 = "sha256-FaX87k8LdBhrBX4qvokSHkcNaQZ0+oSbkn9d0dK6FGo=";
+    sha256 = "sha256-Ow3SjeulYiHY9foXrmTtLK3F+B3+DrtDjBUke3bJeDw=";
   };
 
   cargoLock = {
     lockFile = ./Cargo.lock;
-    outputHashes = {
-      "toml-0.5.9" = "sha256-WUQFF9Hfo3JK65AKAF7qNZex6l7F3N8HXmJlu8cJUEE=";
-    };
   };
 
   nativeBuildInputs = [
@@ -37,6 +36,7 @@ rustPlatform.buildRustPackage rec {
     udev
     v4l-utils
     vulkan-loader
+    dbus
   ];
 
   postInstall = ''
@@ -44,12 +44,14 @@ rustPlatform.buildRustPackage rec {
       --prefix LD_LIBRARY_PATH : "${lib.makeLibraryPath [ wayland ]}"
   '';
 
+  passthru.updateScript = nix-update-script { };
+
   meta = with lib; {
     description = "Automatic brightness adjustment based on screen contents and ALS";
     homepage = "https://github.com/maximbaz/wluma";
     changelog = "https://github.com/maximbaz/wluma/releases/tag/${version}";
     license = licenses.isc;
-    maintainers = with maintainers; [ yshym jmc-figueira ];
+    maintainers = with maintainers; [ yshym jmc-figueira atemu ];
     platforms = platforms.linux;
     mainProgram = "wluma";
   };
diff --git a/pkgs/tools/wayland/wpaperd/Cargo.lock b/pkgs/tools/wayland/wpaperd/Cargo.lock
deleted file mode 100644
index ea07ee7e61dd..000000000000
--- a/pkgs/tools/wayland/wpaperd/Cargo.lock
+++ /dev/null
@@ -1,2041 +0,0 @@
-# This file is automatically @generated by Cargo.
-# It is not intended for manual editing.
-version = 3
-
-[[package]]
-name = "addr2line"
-version = "0.19.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a76fd60b23679b7d19bd066031410fb7e458ccc5e958eb5c325888ce4baedc97"
-dependencies = [
- "gimli",
-]
-
-[[package]]
-name = "adler"
-version = "1.0.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f26201604c87b1e01bd3d98f8d5d9a8fcbb815e8cedb41ffccbeb4bf593a35fe"
-
-[[package]]
-name = "ahash"
-version = "0.7.6"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "fcb51a0695d8f838b1ee009b3fbf66bda078cd64590202a864a8f3e8c4315c47"
-dependencies = [
- "getrandom",
- "once_cell",
- "version_check",
-]
-
-[[package]]
-name = "aho-corasick"
-version = "0.7.20"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "cc936419f96fa211c1b9166887b38e5e40b19958e5b895be7c1f93adec7071ac"
-dependencies = [
- "memchr",
-]
-
-[[package]]
-name = "android_system_properties"
-version = "0.1.5"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "819e7219dbd41043ac279b19830f2efc897156490d7fd6ea916720117ee66311"
-dependencies = [
- "libc",
-]
-
-[[package]]
-name = "ansi_term"
-version = "0.12.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d52a9bb7ec0cf484c551830a7ce27bd20d67eac647e1befb56b0be4ee39a55d2"
-dependencies = [
- "winapi 0.3.9",
-]
-
-[[package]]
-name = "atomic"
-version = "0.5.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b88d82667eca772c4aa12f0f1348b3ae643424c8876448f3f7bd5787032e234c"
-dependencies = [
- "autocfg",
-]
-
-[[package]]
-name = "atty"
-version = "0.2.14"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d9b39be18770d11421cdb1b9947a45dd3f37e93092cbf377614828a319d5fee8"
-dependencies = [
- "hermit-abi 0.1.19",
- "libc",
- "winapi 0.3.9",
-]
-
-[[package]]
-name = "autocfg"
-version = "1.1.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d468802bab17cbc0cc575e9b053f41e72aa36bfa6b7f55e3529ffa43161b97fa"
-
-[[package]]
-name = "backtrace"
-version = "0.3.67"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "233d376d6d185f2a3093e58f283f60f880315b6c60075b01f36b3b85154564ca"
-dependencies = [
- "addr2line",
- "cc",
- "cfg-if 1.0.0",
- "libc",
- "miniz_oxide",
- "object",
- "rustc-demangle",
-]
-
-[[package]]
-name = "bindgen"
-version = "0.59.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2bd2a9a458e8f4304c52c43ebb0cfbd520289f8379a52e329a38afda99bf8eb8"
-dependencies = [
- "bitflags",
- "cexpr",
- "clang-sys",
- "clap 2.34.0",
- "env_logger 0.9.3",
- "lazy_static",
- "lazycell",
- "log",
- "peeking_take_while",
- "proc-macro2",
- "quote",
- "regex",
- "rustc-hash",
- "shlex",
- "which",
-]
-
-[[package]]
-name = "bitflags"
-version = "1.3.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a"
-
-[[package]]
-name = "bitreader"
-version = "0.3.6"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d84ea71c85d1fe98fe67a9b9988b1695bc24c0b0d3bfb18d4c510f44b4b09941"
-dependencies = [
- "cfg-if 1.0.0",
-]
-
-[[package]]
-name = "bumpalo"
-version = "3.12.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0d261e256854913907f67ed06efbc3338dfe6179796deefc1ff763fc1aee5535"
-
-[[package]]
-name = "bytemuck"
-version = "1.13.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c041d3eab048880cb0b86b256447da3f18859a163c3b8d8893f4e6368abe6393"
-
-[[package]]
-name = "byteorder"
-version = "1.4.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "14c189c53d098945499cdfa7ecc63567cf3886b3332b312a5b4585d8d3a6a610"
-
-[[package]]
-name = "calloop"
-version = "0.10.5"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1a59225be45a478d772ce015d9743e49e92798ece9e34eda9a6aa2a6a7f40192"
-dependencies = [
- "log",
- "nix 0.25.1",
- "slotmap",
- "thiserror",
- "vec_map",
-]
-
-[[package]]
-name = "cc"
-version = "1.0.79"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "50d30906286121d95be3d479533b458f87493b30a4b5f79a607db8f5d11aa91f"
-
-[[package]]
-name = "cexpr"
-version = "0.6.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6fac387a98bb7c37292057cffc56d62ecb629900026402633ae9160df93a8766"
-dependencies = [
- "nom",
-]
-
-[[package]]
-name = "cfg-expr"
-version = "0.11.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b0357a6402b295ca3a86bc148e84df46c02e41f41fef186bda662557ef6328aa"
-dependencies = [
- "smallvec",
-]
-
-[[package]]
-name = "cfg-if"
-version = "0.1.10"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4785bdd1c96b2a846b2bd7cc02e86b6b3dbf14e7e53446c4f54c92a361040822"
-
-[[package]]
-name = "cfg-if"
-version = "1.0.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd"
-
-[[package]]
-name = "chrono"
-version = "0.4.23"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "16b0a3d9ed01224b22057780a37bb8c5dbfe1be8ba48678e7bf57ec4b385411f"
-dependencies = [
- "iana-time-zone",
- "num-integer",
- "num-traits",
- "winapi 0.3.9",
-]
-
-[[package]]
-name = "clang-sys"
-version = "1.4.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "fa2e27ae6ab525c3d369ded447057bca5438d86dc3a68f6faafb8269ba82ebf3"
-dependencies = [
- "glob",
- "libc",
- "libloading",
-]
-
-[[package]]
-name = "clap"
-version = "2.34.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a0610544180c38b88101fecf2dd634b174a62eef6946f84dfc6a7127512b381c"
-dependencies = [
- "ansi_term",
- "atty",
- "bitflags",
- "strsim 0.8.0",
- "textwrap",
- "unicode-width",
- "vec_map",
-]
-
-[[package]]
-name = "clap"
-version = "4.1.6"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ec0b0588d44d4d63a87dbd75c136c166bbfd9a86a31cb89e09906521c7d3f5e3"
-dependencies = [
- "bitflags",
- "clap_derive",
- "clap_lex",
- "is-terminal",
- "once_cell",
- "strsim 0.10.0",
- "termcolor",
- "terminal_size",
-]
-
-[[package]]
-name = "clap_complete"
-version = "4.1.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "bd125be87bf4c255ebc50de0b7f4d2a6201e8ac3dc86e39c0ad081dc5e7236fe"
-dependencies = [
- "clap 4.1.6",
-]
-
-[[package]]
-name = "clap_derive"
-version = "4.1.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "684a277d672e91966334af371f1a7b5833f9aa00b07c84e92fbce95e00208ce8"
-dependencies = [
- "heck",
- "proc-macro-error",
- "proc-macro2",
- "quote",
- "syn",
-]
-
-[[package]]
-name = "clap_lex"
-version = "0.3.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "783fe232adfca04f90f56201b26d79682d4cd2625e0bc7290b95123afe558ade"
-dependencies = [
- "os_str_bytes",
-]
-
-[[package]]
-name = "clap_mangen"
-version = "0.2.8"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "48283ce8d5cd9513633949a674a0442bcb507ab61ed6533863437052ddbb494b"
-dependencies = [
- "clap 4.1.6",
- "roff",
-]
-
-[[package]]
-name = "codespan-reporting"
-version = "0.11.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3538270d33cc669650c4b093848450d380def10c331d38c768e34cac80576e6e"
-dependencies = [
- "termcolor",
- "unicode-width",
-]
-
-[[package]]
-name = "color-eyre"
-version = "0.6.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5a667583cca8c4f8436db8de46ea8233c42a7d9ae424a82d338f2e4675229204"
-dependencies = [
- "backtrace",
- "eyre",
- "indenter",
- "once_cell",
- "owo-colors",
-]
-
-[[package]]
-name = "color_quant"
-version = "1.1.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3d7b894f5411737b7867f4827955924d7c254fc9f4d91a6aad6b097804b1018b"
-
-[[package]]
-name = "core-foundation-sys"
-version = "0.8.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5827cebf4670468b8772dd191856768aedcb1b0278a04f989f7766351917b9dc"
-
-[[package]]
-name = "crc32fast"
-version = "1.3.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b540bd8bc810d3885c6ea91e2018302f68baba2129ab3e88f32389ee9370880d"
-dependencies = [
- "cfg-if 1.0.0",
-]
-
-[[package]]
-name = "crossbeam-channel"
-version = "0.5.6"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c2dd04ddaf88237dc3b8d8f9a3c1004b506b54b3313403944054d23c0870c521"
-dependencies = [
- "cfg-if 1.0.0",
- "crossbeam-utils",
-]
-
-[[package]]
-name = "crossbeam-deque"
-version = "0.8.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "715e8152b692bba2d374b53d4875445368fdf21a94751410af607a5ac677d1fc"
-dependencies = [
- "cfg-if 1.0.0",
- "crossbeam-epoch",
- "crossbeam-utils",
-]
-
-[[package]]
-name = "crossbeam-epoch"
-version = "0.9.13"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "01a9af1f4c2ef74bb8aa1f7e19706bc72d03598c8a570bb5de72243c7a9d9d5a"
-dependencies = [
- "autocfg",
- "cfg-if 1.0.0",
- "crossbeam-utils",
- "memoffset 0.7.1",
- "scopeguard",
-]
-
-[[package]]
-name = "crossbeam-utils"
-version = "0.8.14"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4fb766fa798726286dbbb842f174001dab8abc7b627a1dd86e0b7222a95d929f"
-dependencies = [
- "cfg-if 1.0.0",
-]
-
-[[package]]
-name = "cxx"
-version = "1.0.91"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "86d3488e7665a7a483b57e25bdd90d0aeb2bc7608c8d0346acf2ad3f1caf1d62"
-dependencies = [
- "cc",
- "cxxbridge-flags",
- "cxxbridge-macro",
- "link-cplusplus",
-]
-
-[[package]]
-name = "cxx-build"
-version = "1.0.91"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "48fcaf066a053a41a81dfb14d57d99738b767febb8b735c3016e469fac5da690"
-dependencies = [
- "cc",
- "codespan-reporting",
- "once_cell",
- "proc-macro2",
- "quote",
- "scratch",
- "syn",
-]
-
-[[package]]
-name = "cxxbridge-flags"
-version = "1.0.91"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a2ef98b8b717a829ca5603af80e1f9e2e48013ab227b68ef37872ef84ee479bf"
-
-[[package]]
-name = "cxxbridge-macro"
-version = "1.0.91"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "086c685979a698443656e5cf7856c95c642295a38599f12fb1ff76fb28d19892"
-dependencies = [
- "proc-macro2",
- "quote",
- "syn",
-]
-
-[[package]]
-name = "dav1d"
-version = "0.6.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7284148338177cb1cd0d0cdd7bf26440f8326999063eed294aa7d77b46a7e263"
-dependencies = [
- "dav1d-sys",
-]
-
-[[package]]
-name = "dav1d-sys"
-version = "0.3.5"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "88e40c4c77d141a3b70113ee45a1502b9c80e24f176958d39a8361abcf30c883"
-dependencies = [
- "bindgen",
- "system-deps",
-]
-
-[[package]]
-name = "dcv-color-primitives"
-version = "0.4.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1457f4dd8395fef9f61996b5783b82ed7b234b4b55e1843d04e07fded0538005"
-dependencies = [
- "paste",
- "wasm-bindgen",
-]
-
-[[package]]
-name = "dirs"
-version = "4.0.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ca3aa72a6f96ea37bbc5aa912f6788242832f75369bdfdadcb0e38423f100059"
-dependencies = [
- "dirs-sys",
-]
-
-[[package]]
-name = "dirs-sys"
-version = "0.3.7"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1b1d1d91c932ef41c0f2663aa8b0ca0342d444d842c06914aa0a7e352d0bada6"
-dependencies = [
- "libc",
- "redox_users",
- "winapi 0.3.9",
-]
-
-[[package]]
-name = "dlib"
-version = "0.5.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ac1b7517328c04c2aa68422fc60a41b92208182142ed04a25879c26c8f878794"
-dependencies = [
- "libloading",
-]
-
-[[package]]
-name = "downcast-rs"
-version = "1.2.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9ea835d29036a4087793836fa931b08837ad5e957da9e23886b29586fb9b6650"
-
-[[package]]
-name = "either"
-version = "1.8.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7fcaabb2fef8c910e7f4c7ce9f67a1283a1715879a7c230ca9d6d1ae31f16d91"
-
-[[package]]
-name = "env_logger"
-version = "0.8.4"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a19187fea3ac7e84da7dacf48de0c45d63c6a76f9490dae389aead16c243fce3"
-dependencies = [
- "atty",
- "humantime",
- "log",
- "regex",
- "termcolor",
-]
-
-[[package]]
-name = "env_logger"
-version = "0.9.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a12e6657c4c97ebab115a42dcee77225f7f482cdd841cf7088c657a42e9e00e7"
-dependencies = [
- "atty",
- "humantime",
- "log",
- "regex",
- "termcolor",
-]
-
-[[package]]
-name = "errno"
-version = "0.2.8"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f639046355ee4f37944e44f60642c6f3a7efa3cf6b78c78a0d989a8ce6c396a1"
-dependencies = [
- "errno-dragonfly",
- "libc",
- "winapi 0.3.9",
-]
-
-[[package]]
-name = "errno-dragonfly"
-version = "0.1.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "aa68f1b12764fab894d2755d2518754e71b4fd80ecfb822714a1206c2aab39bf"
-dependencies = [
- "cc",
- "libc",
-]
-
-[[package]]
-name = "eyre"
-version = "0.6.8"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4c2b6b5a29c02cdc822728b7d7b8ae1bab3e3b05d44522770ddd49722eeac7eb"
-dependencies = [
- "indenter",
- "once_cell",
-]
-
-[[package]]
-name = "fallible_collections"
-version = "0.4.6"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3f57ccc32870366ae684be48b32a1a2e196f98a42a9b4361fe77e13fd4a34755"
-dependencies = [
- "hashbrown",
-]
-
-[[package]]
-name = "figment"
-version = "0.10.8"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4e56602b469b2201400dec66a66aec5a9b8761ee97cd1b8c96ab2483fcc16cc9"
-dependencies = [
- "atomic",
- "serde",
- "toml 0.5.11",
- "uncased",
- "version_check",
-]
-
-[[package]]
-name = "filetime"
-version = "0.2.20"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8a3de6e8d11b22ff9edc6d916f890800597d60f8b2da1caf2955c274638d6412"
-dependencies = [
- "cfg-if 1.0.0",
- "libc",
- "redox_syscall",
- "windows-sys",
-]
-
-[[package]]
-name = "flate2"
-version = "1.0.25"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a8a2db397cb1c8772f31494cb8917e48cd1e64f0fa7efac59fbd741a0a8ce841"
-dependencies = [
- "crc32fast",
- "miniz_oxide",
-]
-
-[[package]]
-name = "flexi_logger"
-version = "0.25.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "010b5c83ec9d37d9636aa37132b777ef0818949b217109de9b88784e923bbf3a"
-dependencies = [
- "atty",
- "chrono",
- "glob",
- "lazy_static",
- "log",
- "nu-ansi-term",
- "thiserror",
-]
-
-[[package]]
-name = "fsevent"
-version = "0.4.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5ab7d1bd1bd33cc98b0889831b72da23c0aa4df9cec7e0702f46ecea04b35db6"
-dependencies = [
- "bitflags",
- "fsevent-sys",
-]
-
-[[package]]
-name = "fsevent-sys"
-version = "2.0.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f41b048a94555da0f42f1d632e2e19510084fb8e303b0daa2816e733fb3644a0"
-dependencies = [
- "libc",
-]
-
-[[package]]
-name = "fuchsia-zircon"
-version = "0.3.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2e9763c69ebaae630ba35f74888db465e49e259ba1bc0eda7d06f4a067615d82"
-dependencies = [
- "bitflags",
- "fuchsia-zircon-sys",
-]
-
-[[package]]
-name = "fuchsia-zircon-sys"
-version = "0.3.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3dcaa9ae7725d12cdb85b3ad99a434db70b468c09ded17e012d86b5c1010f7a7"
-
-[[package]]
-name = "getrandom"
-version = "0.2.8"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c05aeb6a22b8f62540c194aac980f2115af067bfe15a0734d7277a768d396b31"
-dependencies = [
- "cfg-if 1.0.0",
- "libc",
- "wasi",
-]
-
-[[package]]
-name = "gimli"
-version = "0.27.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ad0a93d233ebf96623465aad4046a8d3aa4da22d4f4beba5388838c8a434bbb4"
-
-[[package]]
-name = "glob"
-version = "0.3.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d2fabcfbdc87f4758337ca535fb41a6d701b65693ce38287d856d1674551ec9b"
-
-[[package]]
-name = "hashbrown"
-version = "0.12.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8a9ee70c43aaf417c914396645a0fa852624801b24ebb7ae78fe8272889ac888"
-dependencies = [
- "ahash",
-]
-
-[[package]]
-name = "heck"
-version = "0.4.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "95505c38b4572b2d910cecb0281560f54b440a19336cbbcb27bf6ce6adc6f5a8"
-
-[[package]]
-name = "hermit-abi"
-version = "0.1.19"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "62b467343b94ba476dcb2500d242dadbb39557df889310ac77c5d99100aaac33"
-dependencies = [
- "libc",
-]
-
-[[package]]
-name = "hermit-abi"
-version = "0.2.6"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ee512640fe35acbfb4bb779db6f0d80704c2cacfa2e39b601ef3e3f47d1ae4c7"
-dependencies = [
- "libc",
-]
-
-[[package]]
-name = "hermit-abi"
-version = "0.3.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "fed44880c466736ef9a5c5b5facefb5ed0785676d0c02d612db14e54f0d84286"
-
-[[package]]
-name = "hotwatch"
-version = "0.4.6"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "39301670a6f5798b75f36a1b149a379a50df5aa7c71be50f4b41ec6eab445cb8"
-dependencies = [
- "log",
- "notify",
-]
-
-[[package]]
-name = "humantime"
-version = "2.1.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9a3a5bfb195931eeb336b2a7b4d761daec841b97f947d34394601737a7bba5e4"
-
-[[package]]
-name = "humantime-serde"
-version = "1.1.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "57a3db5ea5923d99402c94e9feb261dc5ee9b4efa158b0315f788cf549cc200c"
-dependencies = [
- "humantime",
- "serde",
-]
-
-[[package]]
-name = "iana-time-zone"
-version = "0.1.53"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "64c122667b287044802d6ce17ee2ddf13207ed924c712de9a66a5814d5b64765"
-dependencies = [
- "android_system_properties",
- "core-foundation-sys",
- "iana-time-zone-haiku",
- "js-sys",
- "wasm-bindgen",
- "winapi 0.3.9",
-]
-
-[[package]]
-name = "iana-time-zone-haiku"
-version = "0.1.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0703ae284fc167426161c2e3f1da3ea71d94b21bedbcc9494e92b28e334e3dca"
-dependencies = [
- "cxx",
- "cxx-build",
-]
-
-[[package]]
-name = "image"
-version = "0.24.5"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "69b7ea949b537b0fd0af141fff8c77690f2ce96f4f41f042ccb6c69c6c965945"
-dependencies = [
- "bytemuck",
- "byteorder",
- "color_quant",
- "dav1d",
- "dcv-color-primitives",
- "jpeg-decoder",
- "mp4parse",
- "num-rational",
- "num-traits",
- "png",
-]
-
-[[package]]
-name = "indenter"
-version = "0.3.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ce23b50ad8242c51a442f3ff322d56b02f08852c77e4c0b4d3fd684abc89c683"
-
-[[package]]
-name = "indexmap"
-version = "1.9.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1885e79c1fc4b10f0e172c475f458b7f7b93061064d98c3293e98c5ba0c8b399"
-dependencies = [
- "autocfg",
- "hashbrown",
-]
-
-[[package]]
-name = "inotify"
-version = "0.7.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4816c66d2c8ae673df83366c18341538f234a26d65a9ecea5c348b453ac1d02f"
-dependencies = [
- "bitflags",
- "inotify-sys",
- "libc",
-]
-
-[[package]]
-name = "inotify-sys"
-version = "0.1.5"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e05c02b5e89bff3b946cedeca278abc628fe811e604f027c45a8aa3cf793d0eb"
-dependencies = [
- "libc",
-]
-
-[[package]]
-name = "io-lifetimes"
-version = "1.0.5"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1abeb7a0dd0f8181267ff8adc397075586500b81b28a73e8a0208b00fc170fb3"
-dependencies = [
- "libc",
- "windows-sys",
-]
-
-[[package]]
-name = "iovec"
-version = "0.1.4"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b2b3ea6ff95e175473f8ffe6a7eb7c00d054240321b84c57051175fe3c1e075e"
-dependencies = [
- "libc",
-]
-
-[[package]]
-name = "is-terminal"
-version = "0.4.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "22e18b0a45d56fe973d6db23972bf5bc46f988a4a2385deac9cc29572f09daef"
-dependencies = [
- "hermit-abi 0.3.1",
- "io-lifetimes",
- "rustix",
- "windows-sys",
-]
-
-[[package]]
-name = "jpeg-decoder"
-version = "0.3.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "bc0000e42512c92e31c2252315bda326620a4e034105e900c98ec492fa077b3e"
-dependencies = [
- "rayon",
-]
-
-[[package]]
-name = "js-sys"
-version = "0.3.61"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "445dde2150c55e483f3d8416706b97ec8e8237c307e5b7b4b8dd15e6af2a0730"
-dependencies = [
- "wasm-bindgen",
-]
-
-[[package]]
-name = "kernel32-sys"
-version = "0.2.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7507624b29483431c0ba2d82aece8ca6cdba9382bff4ddd0f7490560c056098d"
-dependencies = [
- "winapi 0.2.8",
- "winapi-build",
-]
-
-[[package]]
-name = "lazy_static"
-version = "1.4.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e2abad23fbc42b3700f2f279844dc832adb2b2eb069b2df918f455c4e18cc646"
-
-[[package]]
-name = "lazycell"
-version = "1.3.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "830d08ce1d1d941e6b30645f1a0eb5643013d835ce3779a5fc208261dbe10f55"
-
-[[package]]
-name = "libc"
-version = "0.2.139"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "201de327520df007757c1f0adce6e827fe8562fbc28bfd9c15571c66ca1f5f79"
-
-[[package]]
-name = "libloading"
-version = "0.7.4"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b67380fd3b2fbe7527a606e18729d21c6f3951633d0500574c4dc22d2d638b9f"
-dependencies = [
- "cfg-if 1.0.0",
- "winapi 0.3.9",
-]
-
-[[package]]
-name = "link-cplusplus"
-version = "1.0.8"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ecd207c9c713c34f95a097a5b029ac2ce6010530c7b49d7fea24d977dede04f5"
-dependencies = [
- "cc",
-]
-
-[[package]]
-name = "linux-raw-sys"
-version = "0.1.4"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f051f77a7c8e6957c0696eac88f26b0117e54f52d3fc682ab19397a8812846a4"
-
-[[package]]
-name = "log"
-version = "0.4.17"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "abb12e687cfb44aa40f41fc3978ef76448f9b6038cad6aef4259d3c095a2382e"
-dependencies = [
- "cfg-if 1.0.0",
-]
-
-[[package]]
-name = "memchr"
-version = "2.5.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2dffe52ecf27772e601905b7522cb4ef790d2cc203488bbd0e2fe85fcb74566d"
-
-[[package]]
-name = "memmap2"
-version = "0.5.8"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4b182332558b18d807c4ce1ca8ca983b34c3ee32765e47b3f0f69b90355cc1dc"
-dependencies = [
- "libc",
-]
-
-[[package]]
-name = "memoffset"
-version = "0.6.5"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5aa361d4faea93603064a027415f07bd8e1d5c88c9fbf68bf56a285428fd79ce"
-dependencies = [
- "autocfg",
-]
-
-[[package]]
-name = "memoffset"
-version = "0.7.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5de893c32cde5f383baa4c04c5d6dbdd735cfd4a794b0debdb2bb1b421da5ff4"
-dependencies = [
- "autocfg",
-]
-
-[[package]]
-name = "mime"
-version = "0.3.16"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2a60c7ce501c71e03a9c9c0d35b861413ae925bd979cc7a4e30d060069aaac8d"
-
-[[package]]
-name = "minimal-lexical"
-version = "0.2.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "68354c5c6bd36d73ff3feceb05efa59b6acb7626617f4962be322a825e61f79a"
-
-[[package]]
-name = "miniz_oxide"
-version = "0.6.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b275950c28b37e794e8c55d88aeb5e139d0ce23fdbbeda68f8d7174abdf9e8fa"
-dependencies = [
- "adler",
-]
-
-[[package]]
-name = "mio"
-version = "0.6.23"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4afd66f5b91bf2a3bc13fad0e21caedac168ca4c707504e75585648ae80e4cc4"
-dependencies = [
- "cfg-if 0.1.10",
- "fuchsia-zircon",
- "fuchsia-zircon-sys",
- "iovec",
- "kernel32-sys",
- "libc",
- "log",
- "miow",
- "net2",
- "slab",
- "winapi 0.2.8",
-]
-
-[[package]]
-name = "mio-extras"
-version = "2.0.6"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "52403fe290012ce777c4626790c8951324a2b9e3316b3143779c72b029742f19"
-dependencies = [
- "lazycell",
- "log",
- "mio",
- "slab",
-]
-
-[[package]]
-name = "miow"
-version = "0.2.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ebd808424166322d4a38da87083bfddd3ac4c131334ed55856112eb06d46944d"
-dependencies = [
- "kernel32-sys",
- "net2",
- "winapi 0.2.8",
- "ws2_32-sys",
-]
-
-[[package]]
-name = "mp4parse"
-version = "0.12.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "67d2b6c6932c2cce721e9bd213461412300466d4613d93d25a36fb8881d9f8de"
-dependencies = [
- "bitreader",
- "byteorder",
- "env_logger 0.8.4",
- "fallible_collections",
- "log",
- "num-traits",
- "static_assertions",
-]
-
-[[package]]
-name = "net2"
-version = "0.2.38"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "74d0df99cfcd2530b2e694f6e17e7f37b8e26bb23983ac530c0c97408837c631"
-dependencies = [
- "cfg-if 0.1.10",
- "libc",
- "winapi 0.3.9",
-]
-
-[[package]]
-name = "new_mime_guess"
-version = "4.0.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c2d684d1b59e0dc07b37e2203ef576987473288f530082512aff850585c61b1f"
-dependencies = [
- "mime",
- "unicase",
-]
-
-[[package]]
-name = "nix"
-version = "0.25.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f346ff70e7dbfd675fe90590b92d59ef2de15a8779ae305ebcbfd3f0caf59be4"
-dependencies = [
- "autocfg",
- "bitflags",
- "cfg-if 1.0.0",
- "libc",
- "memoffset 0.6.5",
-]
-
-[[package]]
-name = "nix"
-version = "0.26.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "bfdda3d196821d6af13126e40375cdf7da646a96114af134d5f417a9a1dc8e1a"
-dependencies = [
- "bitflags",
- "cfg-if 1.0.0",
- "libc",
- "memoffset 0.7.1",
- "pin-utils",
- "static_assertions",
-]
-
-[[package]]
-name = "nom"
-version = "7.1.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d273983c5a657a70a3e8f2a01329822f3b8c8172b73826411a55751e404a0a4a"
-dependencies = [
- "memchr",
- "minimal-lexical",
-]
-
-[[package]]
-name = "nom8"
-version = "0.2.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ae01545c9c7fc4486ab7debaf2aad7003ac19431791868fb2e8066df97fad2f8"
-dependencies = [
- "memchr",
-]
-
-[[package]]
-name = "notify"
-version = "4.0.17"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ae03c8c853dba7bfd23e571ff0cff7bc9dceb40a4cd684cd1681824183f45257"
-dependencies = [
- "bitflags",
- "filetime",
- "fsevent",
- "fsevent-sys",
- "inotify",
- "libc",
- "mio",
- "mio-extras",
- "walkdir",
- "winapi 0.3.9",
-]
-
-[[package]]
-name = "nu-ansi-term"
-version = "0.46.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "77a8165726e8236064dbb45459242600304b42a5ea24ee2948e18e023bf7ba84"
-dependencies = [
- "overload",
- "winapi 0.3.9",
-]
-
-[[package]]
-name = "num-integer"
-version = "0.1.45"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "225d3389fb3509a24c93f5c29eb6bde2586b98d9f016636dff58d7c6f7569cd9"
-dependencies = [
- "autocfg",
- "num-traits",
-]
-
-[[package]]
-name = "num-rational"
-version = "0.4.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0638a1c9d0a3c0914158145bc76cff373a75a627e6ecbfb71cbe6f453a5a19b0"
-dependencies = [
- "autocfg",
- "num-integer",
- "num-traits",
-]
-
-[[package]]
-name = "num-traits"
-version = "0.2.15"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "578ede34cf02f8924ab9447f50c28075b4d3e5b269972345e7e0372b38c6cdcd"
-dependencies = [
- "autocfg",
-]
-
-[[package]]
-name = "num_cpus"
-version = "1.15.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0fac9e2da13b5eb447a6ce3d392f23a29d8694bff781bf03a16cd9ac8697593b"
-dependencies = [
- "hermit-abi 0.2.6",
- "libc",
-]
-
-[[package]]
-name = "object"
-version = "0.30.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ea86265d3d3dcb6a27fc51bd29a4bf387fae9d2986b823079d4986af253eb439"
-dependencies = [
- "memchr",
-]
-
-[[package]]
-name = "once_cell"
-version = "1.17.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b7e5500299e16ebb147ae15a00a942af264cf3688f47923b8fc2cd5858f23ad3"
-
-[[package]]
-name = "os_str_bytes"
-version = "6.4.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9b7820b9daea5457c9f21c69448905d723fbd21136ccf521748f23fd49e723ee"
-
-[[package]]
-name = "overload"
-version = "0.1.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b15813163c1d831bf4a13c3610c05c0d03b39feb07f7e09fa234dac9b15aaf39"
-
-[[package]]
-name = "owo-colors"
-version = "3.5.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c1b04fb49957986fdce4d6ee7a65027d55d4b6d2265e5848bbb507b58ccfdb6f"
-
-[[package]]
-name = "paste"
-version = "1.0.11"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d01a5bd0424d00070b0098dd17ebca6f961a959dead1dbcbbbc1d1cd8d3deeba"
-
-[[package]]
-name = "peeking_take_while"
-version = "0.1.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "19b17cddbe7ec3f8bc800887bab5e717348c95ea2ca0b1bf0837fb964dc67099"
-
-[[package]]
-name = "pin-utils"
-version = "0.1.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8b870d8c151b6f2fb93e84a13146138f05d02ed11c7e7c54f8826aaaf7c9f184"
-
-[[package]]
-name = "pkg-config"
-version = "0.3.26"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6ac9a59f73473f1b8d852421e59e64809f025994837ef743615c6d0c5b305160"
-
-[[package]]
-name = "png"
-version = "0.17.7"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5d708eaf860a19b19ce538740d2b4bdeeb8337fa53f7738455e706623ad5c638"
-dependencies = [
- "bitflags",
- "crc32fast",
- "flate2",
- "miniz_oxide",
-]
-
-[[package]]
-name = "ppv-lite86"
-version = "0.2.17"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5b40af805b3121feab8a3c29f04d8ad262fa8e0561883e7653e024ae4479e6de"
-
-[[package]]
-name = "proc-macro-error"
-version = "1.0.4"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "da25490ff9892aab3fcf7c36f08cfb902dd3e71ca0f9f9517bea02a73a5ce38c"
-dependencies = [
- "proc-macro-error-attr",
- "proc-macro2",
- "quote",
- "syn",
- "version_check",
-]
-
-[[package]]
-name = "proc-macro-error-attr"
-version = "1.0.4"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a1be40180e52ecc98ad80b184934baf3d0d29f979574e439af5a55274b35f869"
-dependencies = [
- "proc-macro2",
- "quote",
- "version_check",
-]
-
-[[package]]
-name = "proc-macro2"
-version = "1.0.51"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5d727cae5b39d21da60fa540906919ad737832fe0b1c165da3a34d6548c849d6"
-dependencies = [
- "unicode-ident",
-]
-
-[[package]]
-name = "quick-xml"
-version = "0.23.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "11bafc859c6815fbaffbbbf4229ecb767ac913fecb27f9ad4343662e9ef099ea"
-dependencies = [
- "memchr",
-]
-
-[[package]]
-name = "quote"
-version = "1.0.23"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8856d8364d252a14d474036ea1358d63c9e6965c8e5c1885c18f73d70bff9c7b"
-dependencies = [
- "proc-macro2",
-]
-
-[[package]]
-name = "rand"
-version = "0.8.5"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "34af8d1a0e25924bc5b7c43c079c942339d8f0a8b57c39049bef581b46327404"
-dependencies = [
- "libc",
- "rand_chacha",
- "rand_core",
-]
-
-[[package]]
-name = "rand_chacha"
-version = "0.3.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e6c10a63a0fa32252be49d21e7709d4d4baf8d231c2dbce1eaa8141b9b127d88"
-dependencies = [
- "ppv-lite86",
- "rand_core",
-]
-
-[[package]]
-name = "rand_core"
-version = "0.6.4"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ec0be4795e2f6a28069bec0b5ff3e2ac9bafc99e6a9a7dc3547996c5c816922c"
-dependencies = [
- "getrandom",
-]
-
-[[package]]
-name = "rayon"
-version = "1.6.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6db3a213adf02b3bcfd2d3846bb41cb22857d131789e01df434fb7e7bc0759b7"
-dependencies = [
- "either",
- "rayon-core",
-]
-
-[[package]]
-name = "rayon-core"
-version = "1.10.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "356a0625f1954f730c0201cdab48611198dc6ce21f4acff55089b5a78e6e835b"
-dependencies = [
- "crossbeam-channel",
- "crossbeam-deque",
- "crossbeam-utils",
- "num_cpus",
-]
-
-[[package]]
-name = "redox_syscall"
-version = "0.2.16"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "fb5a58c1855b4b6819d59012155603f0b22ad30cad752600aadfcb695265519a"
-dependencies = [
- "bitflags",
-]
-
-[[package]]
-name = "redox_users"
-version = "0.4.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b033d837a7cf162d7993aded9304e30a83213c648b6e389db233191f891e5c2b"
-dependencies = [
- "getrandom",
- "redox_syscall",
- "thiserror",
-]
-
-[[package]]
-name = "regex"
-version = "1.7.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "48aaa5748ba571fb95cd2c85c09f629215d3a6ece942baa100950af03a34f733"
-dependencies = [
- "aho-corasick",
- "memchr",
- "regex-syntax",
-]
-
-[[package]]
-name = "regex-syntax"
-version = "0.6.28"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "456c603be3e8d448b072f410900c09faf164fbce2d480456f50eea6e25f9c848"
-
-[[package]]
-name = "roff"
-version = "0.2.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b833d8d034ea094b1ea68aa6d5c740e0d04bad9d16568d08ba6f76823a114316"
-
-[[package]]
-name = "rustc-demangle"
-version = "0.1.21"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7ef03e0a2b150c7a90d01faf6254c9c48a41e95fb2a8c2ac1c6f0d2b9aefc342"
-
-[[package]]
-name = "rustc-hash"
-version = "1.1.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "08d43f7aa6b08d49f382cde6a7982047c3426db949b1424bc4b7ec9ae12c6ce2"
-
-[[package]]
-name = "rustix"
-version = "0.36.8"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f43abb88211988493c1abb44a70efa56ff0ce98f233b7b276146f1f3f7ba9644"
-dependencies = [
- "bitflags",
- "errno",
- "io-lifetimes",
- "libc",
- "linux-raw-sys",
- "windows-sys",
-]
-
-[[package]]
-name = "same-file"
-version = "1.0.6"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "93fc1dc3aaa9bfed95e02e6eadabb4baf7e3078b0bd1b4d7b6b0b68378900502"
-dependencies = [
- "winapi-util",
-]
-
-[[package]]
-name = "scoped-tls"
-version = "1.0.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e1cf6437eb19a8f4a6cc0f7dca544973b0b78843adbfeb3683d1a94a0024a294"
-
-[[package]]
-name = "scopeguard"
-version = "1.1.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d29ab0c6d3fc0ee92fe66e2d99f700eab17a8d57d1c1d3b748380fb20baa78cd"
-
-[[package]]
-name = "scratch"
-version = "1.0.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ddccb15bcce173023b3fedd9436f882a0739b8dfb45e4f6b6002bee5929f61b2"
-
-[[package]]
-name = "serde"
-version = "1.0.152"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "bb7d1f0d3021d347a83e556fc4683dea2ea09d87bccdf88ff5c12545d89d5efb"
-dependencies = [
- "serde_derive",
-]
-
-[[package]]
-name = "serde_derive"
-version = "1.0.152"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "af487d118eecd09402d70a5d72551860e788df87b464af30e5ea6a38c75c541e"
-dependencies = [
- "proc-macro2",
- "quote",
- "syn",
-]
-
-[[package]]
-name = "serde_spanned"
-version = "0.6.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0efd8caf556a6cebd3b285caf480045fcc1ac04f6bd786b09a6f11af30c4fcf4"
-dependencies = [
- "serde",
-]
-
-[[package]]
-name = "shlex"
-version = "1.1.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "43b2853a4d09f215c24cc5489c992ce46052d359b5109343cbafbf26bc62f8a3"
-
-[[package]]
-name = "slab"
-version = "0.4.7"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4614a76b2a8be0058caa9dbbaf66d988527d86d003c11a94fbd335d7661edcef"
-dependencies = [
- "autocfg",
-]
-
-[[package]]
-name = "slotmap"
-version = "1.0.6"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e1e08e261d0e8f5c43123b7adf3e4ca1690d655377ac93a03b2c9d3e98de1342"
-dependencies = [
- "version_check",
-]
-
-[[package]]
-name = "smallvec"
-version = "1.10.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a507befe795404456341dfab10cef66ead4c041f62b8b11bbb92bffe5d0953e0"
-
-[[package]]
-name = "smithay-client-toolkit"
-version = "0.16.0"
-source = "git+https://github.com/Smithay/client-toolkit#a3d1af852a607587114ccc6631c87046ecc898d3"
-dependencies = [
- "bitflags",
- "calloop",
- "dlib",
- "lazy_static",
- "log",
- "memmap2",
- "nix 0.26.2",
- "pkg-config",
- "thiserror",
- "wayland-backend",
- "wayland-client",
- "wayland-cursor",
- "wayland-protocols",
- "wayland-protocols-wlr",
- "wayland-scanner",
-]
-
-[[package]]
-name = "static_assertions"
-version = "1.1.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a2eb9349b6444b326872e140eb1cf5e7c522154d69e7a0ffb0fb81c06b37543f"
-
-[[package]]
-name = "strsim"
-version = "0.8.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8ea5119cdb4c55b55d432abb513a0429384878c15dde60cc77b1c99de1a95a6a"
-
-[[package]]
-name = "strsim"
-version = "0.10.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "73473c0e59e6d5812c5dfe2a064a6444949f089e20eec9a2e5506596494e4623"
-
-[[package]]
-name = "syn"
-version = "1.0.107"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1f4064b5b16e03ae50984a5a8ed5d4f8803e6bc1fd170a3cda91a1be4b18e3f5"
-dependencies = [
- "proc-macro2",
- "quote",
- "unicode-ident",
-]
-
-[[package]]
-name = "system-deps"
-version = "6.0.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2955b1fe31e1fa2fbd1976b71cc69a606d7d4da16f6de3333d0c92d51419aeff"
-dependencies = [
- "cfg-expr",
- "heck",
- "pkg-config",
- "toml 0.5.11",
- "version-compare",
-]
-
-[[package]]
-name = "termcolor"
-version = "1.2.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "be55cf8942feac5c765c2c993422806843c9a9a45d4d5c407ad6dd2ea95eb9b6"
-dependencies = [
- "winapi-util",
-]
-
-[[package]]
-name = "terminal_size"
-version = "0.2.5"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4c9afddd2cec1c0909f06b00ef33f94ab2cc0578c4a610aa208ddfec8aa2b43a"
-dependencies = [
- "rustix",
- "windows-sys",
-]
-
-[[package]]
-name = "textwrap"
-version = "0.11.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d326610f408c7a4eb6f51c37c330e496b08506c9457c9d34287ecc38809fb060"
-dependencies = [
- "unicode-width",
-]
-
-[[package]]
-name = "thiserror"
-version = "1.0.38"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6a9cd18aa97d5c45c6603caea1da6628790b37f7a34b6ca89522331c5180fed0"
-dependencies = [
- "thiserror-impl",
-]
-
-[[package]]
-name = "thiserror-impl"
-version = "1.0.38"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1fb327af4685e4d03fa8cbcf1716380da910eeb2bb8be417e7f9fd3fb164f36f"
-dependencies = [
- "proc-macro2",
- "quote",
- "syn",
-]
-
-[[package]]
-name = "toml"
-version = "0.5.11"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f4f7f0dd8d50a853a531c426359045b1998f04219d88799810762cd4ad314234"
-dependencies = [
- "serde",
-]
-
-[[package]]
-name = "toml"
-version = "0.7.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f7afcae9e3f0fe2c370fd4657108972cbb2fa9db1b9f84849cefd80741b01cb6"
-dependencies = [
- "serde",
- "serde_spanned",
- "toml_datetime",
- "toml_edit",
-]
-
-[[package]]
-name = "toml_datetime"
-version = "0.6.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3ab8ed2edee10b50132aed5f331333428b011c99402b5a534154ed15746f9622"
-dependencies = [
- "serde",
-]
-
-[[package]]
-name = "toml_edit"
-version = "0.19.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5e6a7712b49e1775fb9a7b998de6635b299237f48b404dde71704f2e0e7f37e5"
-dependencies = [
- "indexmap",
- "nom8",
- "serde",
- "serde_spanned",
- "toml_datetime",
-]
-
-[[package]]
-name = "uncased"
-version = "0.9.7"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "09b01702b0fd0b3fadcf98e098780badda8742d4f4a7676615cad90e8ac73622"
-dependencies = [
- "version_check",
-]
-
-[[package]]
-name = "unicase"
-version = "2.6.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "50f37be617794602aabbeee0be4f259dc1778fabe05e2d67ee8f79326d5cb4f6"
-dependencies = [
- "version_check",
-]
-
-[[package]]
-name = "unicode-ident"
-version = "1.0.6"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "84a22b9f218b40614adcb3f4ff08b703773ad44fa9423e4e0d346d5db86e4ebc"
-
-[[package]]
-name = "unicode-width"
-version = "0.1.10"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c0edd1e5b14653f783770bce4a4dabb4a5108a5370a5f5d8cfe8710c361f6c8b"
-
-[[package]]
-name = "vec_map"
-version = "0.8.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f1bddf1187be692e79c5ffeab891132dfb0f236ed36a43c7ed39f1165ee20191"
-
-[[package]]
-name = "version-compare"
-version = "0.1.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "579a42fc0b8e0c63b76519a339be31bed574929511fa53c1a3acae26eb258f29"
-
-[[package]]
-name = "version_check"
-version = "0.9.4"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "49874b5167b65d7193b8aba1567f5c7d93d001cafc34600cee003eda787e483f"
-
-[[package]]
-name = "walkdir"
-version = "2.3.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "808cf2735cd4b6866113f648b791c6adc5714537bc222d9347bb203386ffda56"
-dependencies = [
- "same-file",
- "winapi 0.3.9",
- "winapi-util",
-]
-
-[[package]]
-name = "wasi"
-version = "0.11.0+wasi-snapshot-preview1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9c8d87e72b64a3b4db28d11ce29237c246188f4f51057d65a7eab63b7987e423"
-
-[[package]]
-name = "wasm-bindgen"
-version = "0.2.84"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "31f8dcbc21f30d9b8f2ea926ecb58f6b91192c17e9d33594b3df58b2007ca53b"
-dependencies = [
- "cfg-if 1.0.0",
- "wasm-bindgen-macro",
-]
-
-[[package]]
-name = "wasm-bindgen-backend"
-version = "0.2.84"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "95ce90fd5bcc06af55a641a86428ee4229e44e07033963a2290a8e241607ccb9"
-dependencies = [
- "bumpalo",
- "log",
- "once_cell",
- "proc-macro2",
- "quote",
- "syn",
- "wasm-bindgen-shared",
-]
-
-[[package]]
-name = "wasm-bindgen-macro"
-version = "0.2.84"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4c21f77c0bedc37fd5dc21f897894a5ca01e7bb159884559461862ae90c0b4c5"
-dependencies = [
- "quote",
- "wasm-bindgen-macro-support",
-]
-
-[[package]]
-name = "wasm-bindgen-macro-support"
-version = "0.2.84"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2aff81306fcac3c7515ad4e177f521b5c9a15f2b08f4e32d823066102f35a5f6"
-dependencies = [
- "proc-macro2",
- "quote",
- "syn",
- "wasm-bindgen-backend",
- "wasm-bindgen-shared",
-]
-
-[[package]]
-name = "wasm-bindgen-shared"
-version = "0.2.84"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0046fef7e28c3804e5e38bfa31ea2a0f73905319b677e57ebe37e49358989b5d"
-
-[[package]]
-name = "wayland-backend"
-version = "0.1.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "79ebd48bfc1178c9190c7ff80cc822b3335ffc83141e9aa723168f377257623e"
-dependencies = [
- "cc",
- "downcast-rs",
- "io-lifetimes",
- "nix 0.26.2",
- "scoped-tls",
- "smallvec",
- "wayland-sys",
-]
-
-[[package]]
-name = "wayland-client"
-version = "0.30.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "85bde68449abab1a808e5227b6e295f4ae3680911eb7711b4a2cb90141edb780"
-dependencies = [
- "bitflags",
- "calloop",
- "log",
- "nix 0.26.2",
- "wayland-backend",
- "wayland-scanner",
-]
-
-[[package]]
-name = "wayland-cursor"
-version = "0.30.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2d0c3a0d5b4b688b07b0442362d3ed6bf04724fcc16cd69ab6285b90dbc487aa"
-dependencies = [
- "nix 0.26.2",
- "wayland-client",
- "xcursor",
-]
-
-[[package]]
-name = "wayland-protocols"
-version = "0.30.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7fefbeb8a360abe67ab7c2efe1d297a1a50ee011f5460791bc18870c26bb84e2"
-dependencies = [
- "bitflags",
- "wayland-backend",
- "wayland-client",
- "wayland-scanner",
-]
-
-[[package]]
-name = "wayland-protocols-wlr"
-version = "0.1.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "fce991093320e4a6a525876e6b629ab24da25f9baef0c2e0080ad173ec89588a"
-dependencies = [
- "bitflags",
- "wayland-backend",
- "wayland-client",
- "wayland-protocols",
- "wayland-scanner",
-]
-
-[[package]]
-name = "wayland-scanner"
-version = "0.30.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4834c14b3edf1d9986c83ca79b1e7e3afbe9874c7c144702f6467063259ce45d"
-dependencies = [
- "proc-macro2",
- "quick-xml",
- "quote",
-]
-
-[[package]]
-name = "wayland-sys"
-version = "0.30.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "96b2a02ac608e07132978689a6f9bf4214949c85998c247abadd4f4129b1aa06"
-dependencies = [
- "dlib",
- "log",
- "pkg-config",
-]
-
-[[package]]
-name = "which"
-version = "4.4.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2441c784c52b289a054b7201fc93253e288f094e2f4be9058343127c4226a269"
-dependencies = [
- "either",
- "libc",
- "once_cell",
-]
-
-[[package]]
-name = "winapi"
-version = "0.2.8"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "167dc9d6949a9b857f3451275e911c3f44255842c1f7a76f33c55103a909087a"
-
-[[package]]
-name = "winapi"
-version = "0.3.9"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5c839a674fcd7a98952e593242ea400abe93992746761e38641405d28b00f419"
-dependencies = [
- "winapi-i686-pc-windows-gnu",
- "winapi-x86_64-pc-windows-gnu",
-]
-
-[[package]]
-name = "winapi-build"
-version = "0.1.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2d315eee3b34aca4797b2da6b13ed88266e6d612562a0c46390af8299fc699bc"
-
-[[package]]
-name = "winapi-i686-pc-windows-gnu"
-version = "0.4.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ac3b87c63620426dd9b991e5ce0329eff545bccbbb34f3be09ff6fb6ab51b7b6"
-
-[[package]]
-name = "winapi-util"
-version = "0.1.5"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "70ec6ce85bb158151cae5e5c87f95a8e97d2c0c4b001223f33a334e3ce5de178"
-dependencies = [
- "winapi 0.3.9",
-]
-
-[[package]]
-name = "winapi-x86_64-pc-windows-gnu"
-version = "0.4.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f"
-
-[[package]]
-name = "windows-sys"
-version = "0.45.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "75283be5efb2831d37ea142365f009c02ec203cd29a3ebecbc093d52315b66d0"
-dependencies = [
- "windows-targets",
-]
-
-[[package]]
-name = "windows-targets"
-version = "0.42.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8e2522491fbfcd58cc84d47aeb2958948c4b8982e9a2d8a2a35bbaed431390e7"
-dependencies = [
- "windows_aarch64_gnullvm",
- "windows_aarch64_msvc",
- "windows_i686_gnu",
- "windows_i686_msvc",
- "windows_x86_64_gnu",
- "windows_x86_64_gnullvm",
- "windows_x86_64_msvc",
-]
-
-[[package]]
-name = "windows_aarch64_gnullvm"
-version = "0.42.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8c9864e83243fdec7fc9c5444389dcbbfd258f745e7853198f365e3c4968a608"
-
-[[package]]
-name = "windows_aarch64_msvc"
-version = "0.42.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4c8b1b673ffc16c47a9ff48570a9d85e25d265735c503681332589af6253c6c7"
-
-[[package]]
-name = "windows_i686_gnu"
-version = "0.42.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "de3887528ad530ba7bdbb1faa8275ec7a1155a45ffa57c37993960277145d640"
-
-[[package]]
-name = "windows_i686_msvc"
-version = "0.42.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "bf4d1122317eddd6ff351aa852118a2418ad4214e6613a50e0191f7004372605"
-
-[[package]]
-name = "windows_x86_64_gnu"
-version = "0.42.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c1040f221285e17ebccbc2591ffdc2d44ee1f9186324dd3e84e99ac68d699c45"
-
-[[package]]
-name = "windows_x86_64_gnullvm"
-version = "0.42.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "628bfdf232daa22b0d64fdb62b09fcc36bb01f05a3939e20ab73aaf9470d0463"
-
-[[package]]
-name = "windows_x86_64_msvc"
-version = "0.42.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "447660ad36a13288b1db4d4248e857b510e8c3a225c822ba4fb748c0aafecffd"
-
-[[package]]
-name = "wpaperd"
-version = "0.3.0"
-dependencies = [
- "clap 4.1.6",
- "clap_complete",
- "clap_mangen",
- "color-eyre",
- "dirs",
- "figment",
- "flexi_logger",
- "hotwatch",
- "humantime-serde",
- "image",
- "log",
- "mime",
- "new_mime_guess",
- "nix 0.26.2",
- "rand",
- "serde",
- "smithay-client-toolkit",
- "toml 0.7.2",
- "walkdir",
- "xdg",
-]
-
-[[package]]
-name = "ws2_32-sys"
-version = "0.2.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d59cefebd0c892fa2dd6de581e937301d8552cb44489cdff035c6187cb63fa5e"
-dependencies = [
- "winapi 0.2.8",
- "winapi-build",
-]
-
-[[package]]
-name = "xcursor"
-version = "0.3.4"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "463705a63313cd4301184381c5e8042f0a7e9b4bb63653f216311d4ae74690b7"
-dependencies = [
- "nom",
-]
-
-[[package]]
-name = "xdg"
-version = "2.4.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0c4583db5cbd4c4c0303df2d15af80f0539db703fa1c68802d4cbbd2dd0f88f6"
-dependencies = [
- "dirs",
-]
diff --git a/pkgs/top-level/aliases.nix b/pkgs/top-level/aliases.nix
index 23949c22c470..b3060ead0e19 100644
--- a/pkgs/top-level/aliases.nix
+++ b/pkgs/top-level/aliases.nix
@@ -181,6 +181,7 @@ mapAliases ({
   clang-ocl = throw "'clang-ocl' has been replaced with 'rocmPackages.clang-ocl'"; # Added 2023-10-08
   inherit (libsForQt5.mauiPackages) clip; # added 2022-05-17
   clpm = throw "'clpm' has been removed from nixpkgs"; # Added 2024-04-01
+  clwrapperFunction = throw "Lisp packages have been redesigned. See 'lisp-modules' in the nixpkgs manual."; # Added 2024-05-07
   collada-dom = opencollada; # added 2024-02-21
   composable_kernel = throw "'composable_kernel' has been replaced with 'rocmPackages.composable_kernel'"; # Added 2023-10-08
   cope = throw "'cope' has been removed, as it is broken in nixpkgs since it was added, and fixing it is not trivial"; # Added 2024-04-12
@@ -230,6 +231,7 @@ mapAliases ({
   clang_10 = throw "clang_10 has been removed from nixpkgs"; # Added 2024-01-26
   clang_11 = throw "clang_11 has been removed from nixpkgs"; # Added 2023-01-24
 
+  cq-editor = throw "cq-editor has been removed, as it use a dependency that was disabled since python 3.8 and was last updated in 2021"; # Added 2024-05-13
   ### D ###
 
   dagger = throw "'dagger' has been removed from nixpkgs, as the trademark policy of the upstream project is incompatible"; # Added 2023-10-16
@@ -247,6 +249,7 @@ mapAliases ({
   devserver = throw "'devserver' has been removed in favor of 'miniserve' or other alternatives"; # Added 2023-01-13
   dfeet = throw "'dfeet' has been removed because it is archived upstream. Please use 'd-spy' instead"; # Added 2024-03-07
   dhcp = throw "dhcp (ISC DHCP) has been removed from nixpkgs, because it reached its end of life"; # Added 2023-04-04
+  dibbler = throw "dibbler was removed because it is not maintained anymore"; # Added 2024-05-14
   dnnl = oneDNN; # Added 2020-04-22
   docker-machine = throw "'docker-machine' has been removed, because the upstream project was archived"; # Added 2023-12-27
   docker-machine-kvm = throw "'docker-machine-kvm' has been removed, because 'docker-machine' was archived upstream and removed"; # Added 2023-12-27
@@ -586,6 +589,7 @@ mapAliases ({
   kube3d = k3d; # Added 2022-0705
   kafkacat = kcat; # Added 2021-10-07
   kak-lsp = kakoune-lsp; # Added 2024-04-01
+  kdbplus = throw "'kdbplus' has been removed from nixpkgs"; # Added 2024-05-06
   kdeconnect = plasma5Packages.kdeconnect-kde; # Added 2020-10-28
   keepassx = throw "KeePassX is no longer actively developed. Please consider KeePassXC as a maintained alternative."; # Added 2023-02-17
   keepassx2 = throw "KeePassX is no longer actively developed. Please consider KeePassXC as a maintained alternative."; # Added 2023-02-17
@@ -656,6 +660,9 @@ mapAliases ({
   libxkbcommon_7 = throw "libxkbcommon_7 has been removed because it is impacted by security issues and not used in nixpkgs, move to 'libxkbcommon'"; # Added 2023-01-03
   lightdm_gtk_greeter = lightdm-gtk-greeter; # Added 2022-08-01
   lightstep-tracer-cpp = throw "lightstep-tracer-cpp is deprecated since 2022-08-29; the upstream recommends migration to opentelemetry projects.";
+  lispPackages_new = throw "Lisp packages have been redesigned. See 'lisp-modules' in the nixpkgs manual."; # Added 2024-05-07
+  lispPackages = throw "Lisp packages have been redesigned. See 'lisp-modules' in the nixpkgs manual."; # Added 2024-05-07
+  lispPackagesFor = throw "Lisp packages have been redesigned. See 'lisp-modules' in the nixpkgs manual."; # Added 2024-05-07
   llama = walk; # Added 2023-01-23
 
   # Linux kernels
@@ -680,6 +687,7 @@ mapAliases ({
   linuxPackages_6_6 = linuxKernel.packages.linux_6_6;
   linuxPackages_6_7 = linuxKernel.packages.linux_6_7;
   linuxPackages_6_8 = linuxKernel.packages.linux_6_8;
+  linuxPackages_6_9 = linuxKernel.packages.linux_6_9;
   linuxPackages_rpi0 = linuxKernel.packages.linux_rpi1;
   linuxPackages_rpi02w = linuxKernel.packages.linux_rpi3;
   linuxPackages_rpi1 = linuxKernel.packages.linux_rpi1;
@@ -707,6 +715,7 @@ mapAliases ({
   linux_6_6 = linuxKernel.kernels.linux_6_6;
   linux_6_7 = linuxKernel.kernels.linux_6_7;
   linux_6_8 = linuxKernel.kernels.linux_6_8;
+  linux_6_9 = linuxKernel.kernels.linux_6_9;
   linux_rpi0 = linuxKernel.kernels.linux_rpi1;
   linux_rpi02w = linuxKernel.kernels.linux_rpi3;
   linux_rpi1 = linuxKernel.kernels.linux_rpi1;
@@ -821,6 +830,7 @@ mapAliases ({
   mozart = throw "'mozart' has been renamed to/replaced by 'mozart2-binary'"; # Converted to throw 2023-09-10
   mpc_cli = mpc-cli; # moved from top-level 2022-01-24
   mpd_clientlib = libmpdclient; # Added 2021-02-11
+  mpg321 = throw "'mpg321' has been removed due to it being unmaintained by upstream. Consider using mpg123 instead."; # Added 2024-05-10
   mumble_git = throw "'mumble_git' has been renamed to/replaced by 'pkgs.mumble'"; # Converted to throw 2023-09-10
   murmur_git = throw "'murmur_git' has been renamed to/replaced by 'pkgs.murmur'"; # Converted to throw 2023-09-10
   mutt-with-sidebar = mutt; # Added 2022-09-17
@@ -924,6 +934,7 @@ mapAliases ({
   openconnect_gnutls = openconnect; # Added 2022-03-29
   openconnect_unstable = throw "openconnect_unstable was removed from nixpkgs as it was not being updated"; # Added 2023-06-01
   openelec-dvb-firmware = libreelec-dvb-firmware; # Added 2021-05-10
+  openethereum = throw "openethereum development has ceased by upstream. Use alternate clients such as go-ethereum, erigon, or nethermind"; # Added 2024-05-13
   openimagedenoise_1_2_x = throw "'openimagedenoise_1_2_x' has been renamed to/replaced by 'openimagedenoise'"; # Added 2023-06-07
   openimageio2 = openimageio; # Added 2023-01-05
   openimageio_1 = throw "'openimageio_1' has been removed, please update to 'openimageio' 2"; # Added 2023-06-14
@@ -951,7 +962,7 @@ mapAliases ({
   paper-note = throw "paper-note has been removed: abandoned by upstream"; # Added 2023-05-03
   paperless = paperless-ngx; # Added 2021-06-06
   paperless-ng = paperless-ngx; # Added 2022-04-11
-  parity = openethereum; # Added 2020-08-01
+  parity = throw "parity, renamed to openethereum, has been terminated by upstream"; # Added 2020-08-01
   partition-manager = libsForQt5.partitionmanager; # Added 2024-01-08
   pash = throw "'pash' has been removed: abandoned by upstream. Use 'powershell' instead"; # Added 2023-09-16
   patchelfStable = patchelf; # Added 2024-01-25
@@ -959,6 +970,8 @@ mapAliases ({
   pdf2xml = throw "'pdf2xml' was removed: abandoned for years."; # Added 2023-10-22
   peach = asouldocs; # Added 2022-08-28
   pentablet-driver = xp-pen-g430-driver; # Added 2022-06-23
+  percona-server_8_0 = percona-server_lts; # Added 2024-05-07
+  percona-xtrabackup_8_0 = percona-xtrabackup_lts; # Added 2024-05-07
   perldevel = throw "'perldevel' has been dropped due to lack of updates in nixpkgs and lack of consistent support for devel versions by 'perl-cross' releases, use 'perl' instead";
   perldevelPackages = perldevel;
   pgadmin = pgadmin4;
@@ -1061,12 +1074,22 @@ mapAliases ({
   qtcurve = libsForQt5.qtcurve; # Added 2020-11-07
   qtile-unwrapped = python3.pkgs.qtile; # Added 2023-05-12
   quantum-espresso-mpi = quantum-espresso; # Added 2023-11-23
+  quicklispPackages = throw "Lisp packages have been redesigned. See 'lisp-modules' in the nixpkgs manual."; # Added 2024-05-07
+  quicklispPackagesABCL = throw "Lisp packages have been redesigned. See 'lisp-modules' in the nixpkgs manual."; # Added 2024-05-07
+  quicklispPackagesCCL = throw "Lisp packages have been redesigned. See 'lisp-modules' in the nixpkgs manual."; # Added 2024-05-07
+  quicklispPackagesClisp = throw "Lisp packages have been redesigned. See 'lisp-modules' in the nixpkgs manual."; # Added 2024-05-07
+  quicklispPackagesECL = throw "Lisp packages have been redesigned. See 'lisp-modules' in the nixpkgs manual."; # Added 2024-05-07
+  quicklispPackagesFor = throw "Lisp packages have been redesigned. See 'lisp-modules' in the nixpkgs manual."; # Added 2024-05-07
+  quicklispPackagesGCL = throw "Lisp packages have been redesigned. See 'lisp-modules' in the nixpkgs manual."; # Added 2024-05-07
+  quicklispPackagesSBCL = throw "Lisp packages have been redesigned. See 'lisp-modules' in the nixpkgs manual."; # Added 2024-05-07
   qutebrowser-qt6 = throw "'qutebrowser-qt6' has been replaced by 'qutebrowser', since the the qt5 version has been removed"; # Added 2023-08-19
   quvi = throw "'quvi' has been removed, as it was broken and unmaintained"; # Added 2023-11-25
 
   ### R ###
 
   radare2-cutter = cutter; # Added 2021-03-30
+  radicle-cli = throw "'radicle-cli' was removed in favor of 'radicle-node'"; # Added 2024-05-04
+  radicle-upstream = throw "'radicle-upstream' was sunset, see <https://community.radworks.org/t/2962>"; # Added 2024-05-04
   railway-travel = diebahn; # Added 2024-04-01
   rambox-pro = rambox; # Added 2022-12-12
   rarian = throw "rarian has been removed as unused"; # Added 2023-07-05
@@ -1329,7 +1352,9 @@ mapAliases ({
   wordpress6_1 = throw "'wordpress6_1' has been removed in favor of the latest version"; # Added 2023-10-10
   wordpress6_2 = throw "'wordpress6_2' has been removed in favor of the latest version"; # Added 2023-10-10
   wormhole-rs = magic-wormhole-rs; # Added 2022-05-30. preserve, reason: Arch package name, main binary name
+  wrapLisp_old = throw "Lisp packages have been redesigned. See 'lisp-modules' in the nixpkgs manual."; # Added 2024-05-07
   wmii_hg = wmii;
+  wrapGAppsHook = wrapGAppsHook3; # Added 2024-03-26
   wxGTK30 = throw "wxGTK30 has been removed from nixpkgs as it has reached end of life"; # Added 2023-03-22
   wxGTK30-gtk2 = wxGTK30; # Added 2022-12-03
   wxGTK30-gtk3 = wxGTK30; # Added 2022-12-03
@@ -1370,6 +1395,7 @@ mapAliases ({
   zinc = zincsearch; # Added 2023-05-28
   zkg = throw "'zkg' has been replaced by 'zeek'";
   zq = zed.overrideAttrs (old: { meta = old.meta // { mainProgram = "zq"; }; }); # Added 2023-02-06
+  zz = throw "'zz' has been removed because it was archived in 2022 and had no maintainer"; # added 2024-05-10
 
   ### UNSORTED ###
 
@@ -1388,7 +1414,7 @@ mapAliases ({
   inherit (stdenv) buildPlatform hostPlatform targetPlatform; # Added 2023-01-09
 
   # LLVM packages for (integration) testing that should not be used inside Nixpkgs:
-  llvmPackages_latest = llvmPackages_17;
+  llvmPackages_latest = llvmPackages_18;
   llvmPackages_git = recurseIntoAttrs (callPackage ../development/compilers/llvm/git {
     inherit (stdenvAdapters) overrideCC;
     buildLlvmTools = buildPackages.llvmPackages_git.tools;
diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix
index ffe55bb47fc7..1f6c9407956f 100644
--- a/pkgs/top-level/all-packages.nix
+++ b/pkgs/top-level/all-packages.nix
@@ -193,7 +193,6 @@ with pkgs;
       pythonInterpreter = "${python3.withPackages (ps: [ ps.pyelftools ])}/bin/python";
       autoPatchelfScript = ../build-support/setup-hooks/auto-patchelf.py;
     };
-    meta.platforms = lib.platforms.linux;
   } ../build-support/setup-hooks/auto-patchelf.sh;
 
   tomato-c = callPackage ../applications/misc/tomato-c { };
@@ -231,8 +230,6 @@ with pkgs;
   # Post 24.11 branch-off, this should throw an error in aliases.nix.
   addOpenGLRunpath = callPackage ../build-support/add-opengl-runpath { };
 
-  quickemu = callPackage ../development/quickemu { };
-
   quickgui = callPackage ../applications/virtualization/quickgui { };
 
   adcli = callPackage ../os-specific/linux/adcli { };
@@ -311,8 +308,6 @@ with pkgs;
 
   asn1c = callPackage ../development/compilers/asn1c { };
 
-  assemblyscript = callPackage ../development/compilers/assemblyscript { };
-
   authz0 = callPackage ../tools/security/authz0 { };
 
   auth0-cli = callPackage ../tools/admin/auth0-cli { };
@@ -422,8 +417,6 @@ with pkgs;
 
   castget = callPackage ../applications/networking/feedreaders/castget { };
 
-  castxml = callPackage ../development/tools/castxml { };
-
   catatonit = callPackage ../applications/virtualization/catatonit { };
 
   catppuccin-catwalk = callPackage ../development/tools/misc/catppuccin-catwalk { };
@@ -504,10 +497,6 @@ with pkgs;
     inherit (darwin.apple_sdk.frameworks) Security;
   };
 
-  codeberg-cli = callPackage ../applications/version-management/codeberg-cli {
-    inherit (darwin.apple_sdk.frameworks) Security CoreServices;
-  };
-
   conftest = callPackage ../development/tools/conftest { };
 
   coldsnap = callPackage ../tools/admin/coldsnap {
@@ -546,8 +535,6 @@ with pkgs;
 
   coolercontrol = recurseIntoAttrs (callPackage ../applications/system/coolercontrol { });
 
-  coost = callPackage ../development/libraries/coost { };
-
   confetty = callPackage ../applications/misc/confetty { };
 
   confy = callPackage ../applications/misc/confy { };
@@ -769,8 +756,6 @@ with pkgs;
 
   protoc-gen-prost-serde = callPackage ../development/tools/protoc-gen-prost-serde { };
 
-  protoc-gen-rust = callPackage ../development/tools/protoc-gen-rust { };
-
   protoc-gen-tonic = callPackage ../development/tools/protoc-gen-tonic { };
 
   protoc-gen-twirp = callPackage ../development/tools/protoc-gen-twirp { };
@@ -1096,15 +1081,15 @@ with pkgs;
     antlr = antlr4_10;
     boost = boost177; # Configure checks for specific version.
     icu =  icu73;
-    protobuf = protobuf_21;
+    protobuf = protobuf_24;
   };
 
   mysql-shell-innovation = callPackage ../development/tools/mysql-shell/innovation.nix {
     inherit (darwin) cctools DarwinTools;
     inherit (darwin.apple_sdk.frameworks) CoreServices;
     antlr = antlr4_10;
-    icu =  icu69;
-    protobuf = protobuf_21;
+    icu =  icu73;
+    protobuf = protobuf_24;
   };
 
   broadlink-cli = callPackage ../tools/misc/broadlink-cli { };
@@ -1308,7 +1293,9 @@ with pkgs;
 
   makeBinaryWrapper = callPackage ../build-support/setup-hooks/make-binary-wrapper { };
 
-  compressFirmwareXz = callPackage ../build-support/kernel/compress-firmware-xz.nix { };
+  compressFirmwareXz = callPackage ../build-support/kernel/compress-firmware.nix { type = "xz"; };
+
+  compressFirmwareZstd = callPackage ../build-support/kernel/compress-firmware.nix { type = "zstd"; };
 
   makeModulesClosure = { kernel, firmware, rootModules, allowMissing ? false }:
     callPackage ../build-support/kernel/modules-closure.nix {
@@ -1434,13 +1421,18 @@ with pkgs;
     name = "find-xml-catalogs-hook";
   } ../build-support/setup-hooks/find-xml-catalogs.sh;
 
-  wrapGAppsHook = callPackage ../build-support/setup-hooks/wrap-gapps-hook {
-    makeWrapper = makeBinaryWrapper;
+  wrapGAppsHook3 = wrapGAppsNoGuiHook.override {
+    isGraphical = true;
   };
 
-  wrapGAppsHook4 = wrapGAppsHook.override { gtk3 = __splicedPackages.gtk4; };
+  wrapGAppsHook4 = wrapGAppsNoGuiHook.override {
+    isGraphical = true;
+    gtk3 = __splicedPackages.gtk4;
+  };
 
-  wrapGAppsNoGuiHook = wrapGAppsHook.override { isGraphical = false; };
+  wrapGAppsNoGuiHook = callPackage ../build-support/setup-hooks/wrap-gapps-hook {
+    makeWrapper = makeBinaryWrapper;
+  };
 
   separateDebugInfo = makeSetupHook {
     name = "separate-debug-info-hook";
@@ -1765,8 +1757,6 @@ with pkgs;
 
   donkey = callPackage ../tools/security/donkey { };
 
-  dualsensectl = callPackage ../tools/games/dualsensectl { };
-
   dwarfs = callPackage ../tools/filesystems/dwarfs { };
 
   dysk = callPackage ../tools/filesystems/dysk { };
@@ -1851,8 +1841,6 @@ with pkgs;
 
   goflow = callPackage ../tools/networking/goflow { };
 
-  goflow2 = callPackage ../tools/networking/goflow2 { };
-
   gofu = callPackage ../applications/misc/gofu { };
 
   godspeed = callPackage ../tools/networking/godspeed { };
@@ -1980,7 +1968,7 @@ with pkgs;
   node-glob = callPackage ../tools/misc/node-glob { };
 
   nominatim = callPackage ../servers/nominatim {
-    postgresql = postgresql_12;
+    postgresql = postgresql_14;
   };
 
   npm-check-updates = callPackage ../tools/package-management/npm-check-updates { };
@@ -2020,8 +2008,6 @@ with pkgs;
 
   ronin = callPackage ../tools/security/ronin { };
 
-  s0ix-selftest-tool = callPackage ../tools/system/s0ix-selftest-tool { };
-
   scarab = callPackage ../tools/games/scarab { };
 
   sdbus-cpp = callPackage ../development/libraries/sdbus-cpp { };
@@ -2453,8 +2439,6 @@ with pkgs;
     inherit (darwin.apple_sdk.frameworks) Security;
   };
 
-  git-standup = callPackage ../applications/version-management/git-standup { };
-
   git-stree = callPackage ../applications/version-management/git-stree { };
 
   git-subrepo = callPackage ../applications/version-management/git-subrepo { };
@@ -2507,8 +2491,6 @@ with pkgs;
 
   gitnr = callPackage ../applications/version-management/gitnr { };
 
-  gitprompt-rs = callPackage ../applications/version-management/gitprompt-rs/default.nix { };
-
   gitsign = callPackage ../applications/version-management/gitsign { };
 
   gitstats = callPackage ../applications/version-management/gitstats { };
@@ -2561,13 +2543,6 @@ with pkgs;
 
   qgit = qt5.callPackage ../applications/version-management/qgit { };
 
-  radicle-cli = callPackage ../applications/version-management/radicle-cli {
-    inherit (darwin) DarwinTools;
-    inherit (darwin.apple_sdk.frameworks) AppKit;
-  };
-
-  radicle-upstream = callPackage ../applications/version-management/radicle-upstream { };
-
   rs-git-fsmonitor = callPackage ../applications/version-management/rs-git-fsmonitor { };
 
   scmpuff = callPackage ../applications/version-management/scmpuff { };
@@ -2754,20 +2729,38 @@ with pkgs;
 
   pcsxr = callPackage ../applications/emulators/pcsxr { };
 
-  ppsspp-sdl = ppsspp.override {
-    enableQt = false;
-    enableVulkan = true;
-  };
-
-  ppsspp-sdl-wayland = ppsspp.override {
-    forceWayland = true;
-    enableVulkan = false; # https://github.com/hrydgard/ppsspp/issues/13845
-  };
-
-  ppsspp-qt = ppsspp.override {
-    enableQt = true;
-    enableVulkan = false; # https://github.com/hrydgard/ppsspp/issues/11628
-  };
+  ppsspp-sdl = let
+    argset = {
+      ffmpeg = ffmpeg_4;
+      glew = glew.override { enableEGL = argset.forceWayland; };
+      enableQt = false;
+      enableVulkan = true;
+      forceWayland = false;
+    };
+  in
+    ppsspp.override argset;
+
+  ppsspp-sdl-wayland = let
+    argset = {
+      ffmpeg = ffmpeg_4;
+      glew = glew.override { enableEGL = argset.forceWayland; };
+      enableQt = false;
+      enableVulkan = false; # https://github.com/hrydgard/ppsspp/issues/13845
+      forceWayland = true;
+    };
+  in
+    ppsspp.override argset;
+
+  ppsspp-qt = let
+    argset = {
+      ffmpeg = ffmpeg_4;
+      glew = glew.override { enableEGL = argset.forceWayland; };
+      enableQt = true;
+      enableVulkan = false; # https://github.com/hrydgard/ppsspp/issues/11628
+      forceWayland = false;
+    };
+  in
+    ppsspp.override argset;
 
   proton-caller = callPackage ../applications/emulators/proton-caller { };
 
@@ -2781,6 +2774,10 @@ with pkgs;
 
   ripes = qt6Packages.callPackage ../applications/emulators/ripes { };
 
+  rmg-wayland = callPackage ../by-name/rm/rmg/package.nix {
+    withWayland = true;
+  };
+
   rpcemu = callPackage ../applications/emulators/rpcemu { };
 
   ruffle = callPackage ../applications/emulators/ruffle { };
@@ -2977,8 +2974,6 @@ with pkgs;
 
   cool-retro-term = libsForQt5.callPackage ../applications/terminal-emulators/cool-retro-term { };
 
-  darklua = callPackage ../development/tools/darklua { };
-
   darktile = callPackage ../applications/terminal-emulators/darktile { };
 
   dterm = callPackage ../applications/terminal-emulators/dterm { };
@@ -3291,8 +3286,6 @@ with pkgs;
 
   async = callPackage ../development/tools/async { };
 
-  async-profiler = callPackage ../development/tools/async-profiler { };
-
   atheme = callPackage ../servers/irc/atheme { };
 
   atinout = callPackage ../tools/networking/atinout { };
@@ -3389,8 +3382,6 @@ with pkgs;
 
   bitwise = callPackage ../tools/misc/bitwise { };
 
-  blanket = callPackage ../applications/audio/blanket { };
-
   blisp = darwin.apple_sdk_11_0.callPackage ../development/embedded/blisp {
     inherit (darwin.apple_sdk_11_0.frameworks) IOKit;
   };
@@ -4135,8 +4126,6 @@ with pkgs;
 
   aptdec = callPackage ../development/libraries/aptdec { };
 
-  argc = callPackage ../development/tools/argc { };
-
   aria2 = callPackage ../tools/networking/aria2 {
     inherit (darwin.apple_sdk.frameworks) Security;
   };
@@ -4426,8 +4415,6 @@ with pkgs;
 
   bundletool = callPackage ../development/tools/bundletool { };
 
-  bustle = haskellPackages.bustle;
-
   bwm_ng = callPackage ../tools/networking/bwm-ng { };
 
   bwbasic = callPackage ../development/interpreters/bwbasic { };
@@ -4485,10 +4472,6 @@ with pkgs;
     '';
   });
 
-  caddy = callPackage ../servers/caddy { };
-
-  xcaddy = callPackage ../servers/caddy/xcaddy { };
-
   traefik = callPackage ../servers/traefik { };
 
   traefik-certs-dumper = callPackage ../tools/misc/traefik-certs-dumper { };
@@ -4772,14 +4755,10 @@ with pkgs;
 
   wob = callPackage ../tools/wayland/wob { };
 
-  wpaperd = callPackage ../tools/wayland/wpaperd { };
-
   wshowkeys = callPackage ../tools/wayland/wshowkeys { };
 
   wtype = callPackage ../tools/wayland/wtype { };
 
-  ydotool = callPackage ../tools/wayland/ydotool { };
-
   cambalache = callPackage ../development/tools/cambalache { };
 
   cambrinary = python3Packages.callPackage ../applications/misc/cambrinary { };
@@ -4858,8 +4837,6 @@ with pkgs;
 
   csv2latex = callPackage ../tools/misc/csv2latex { };
 
-  csvq = callPackage ../development/tools/csvq { };
-
   csvs-to-sqlite = callPackage ../tools/misc/csvs-to-sqlite { };
 
   cutemarked-ng = libsForQt5.callPackage ../applications/office/cutemarked-ng { };
@@ -4880,8 +4857,6 @@ with pkgs;
 
   dante = callPackage ../servers/dante { };
 
-  dapr-cli = callPackage ../development/tools/dapr/cli { };
-
   dasel = callPackage ../applications/misc/dasel { };
 
   dasher = callPackage ../applications/accessibility/dasher { };
@@ -4948,16 +4923,12 @@ with pkgs;
 
   dialogbox = libsForQt5.callPackage ../tools/misc/dialogbox { };
 
-  dibbler = callPackage ../tools/networking/dibbler { };
-
   dieharder = callPackage ../tools/security/dieharder { };
 
   diesel-cli = callPackage ../development/tools/diesel-cli {
     inherit (darwin.apple_sdk.frameworks) Security;
   };
 
-  refinery-cli = callPackage ../development/tools/refinery-cli { };
-
   digitemp = callPackage ../tools/misc/digitemp { };
 
   dijo = callPackage ../tools/misc/dijo {
@@ -5024,8 +4995,6 @@ with pkgs;
 
   dolibarr = callPackage ../servers/web-apps/dolibarr { };
 
-  doppler = callPackage ../tools/security/doppler { };
-
   dosage = callPackage ../applications/graphics/dosage { };
 
   dotenv-linter = callPackage ../development/tools/analysis/dotenv-linter {
@@ -5371,8 +5340,6 @@ with pkgs;
 
   gb-backup = callPackage ../tools/backup/gamerbackup { };
 
-  gbsplay = callPackage ../applications/audio/gbsplay { };
-
   gdrive = callPackage ../applications/networking/gdrive { };
 
   gdrive3 = callPackage ../applications/networking/gdrive3 { };
@@ -5549,8 +5516,6 @@ with pkgs;
 
   hr = callPackage ../applications/misc/hr { };
 
-  humioctl = callPackage ../applications/logging/humioctl { };
-
   huniq = callPackage ../tools/text/huniq { };
 
   hunt = callPackage ../tools/misc/hunt { };
@@ -5558,10 +5523,7 @@ with pkgs;
   hypr = callPackage ../applications/window-managers/hyprwm/hypr {
     cairo = cairo.override { xcbSupport = true; };  };
 
-  hyprland = callPackage ../applications/window-managers/hyprwm/hyprland {
-    wlroots-hyprland = callPackage ../applications/window-managers/hyprwm/hyprland/wlroots.nix { };
-    udis86-hyprland = callPackage ../applications/window-managers/hyprwm/hyprland/udis86.nix { };
-  };
+  hyprland = callPackage ../applications/window-managers/hyprwm/hyprland { };
 
   hyprland-autoname-workspaces = callPackage ../applications/misc/hyprland-autoname-workspaces { };
 
@@ -5671,7 +5633,7 @@ with pkgs;
 
   klipper = callPackage ../servers/klipper { };
 
-  klipper-firmware = callPackage ../servers/klipper/klipper-firmware.nix { gcc-arm-embedded = gcc-arm-embedded-11; };
+  klipper-firmware = callPackage ../servers/klipper/klipper-firmware.nix { gcc-arm-embedded = gcc-arm-embedded-13; };
 
   klipper-flash = callPackage ../servers/klipper/klipper-flash.nix { };
 
@@ -6088,10 +6050,6 @@ with pkgs;
 
   pcp = callPackage ../tools/misc/pcp { };
 
-  persepolis = python3Packages.callPackage ../tools/networking/persepolis {
-    wrapQtAppsHook = qt5.wrapQtAppsHook;
-  };
-
   pev = callPackage ../development/tools/analysis/pev { };
 
   phd2 = callPackage ../applications/science/astronomy/phd2 { };
@@ -6124,8 +6082,6 @@ with pkgs;
 
   poweralertd = callPackage ../tools/misc/poweralertd { };
 
-  ps_mem = callPackage ../tools/system/ps_mem { };
-
   pscale = callPackage ../development/tools/pscale { };
 
   pulsarctl = callPackage ../tools/admin/pulsarctl { };
@@ -6502,8 +6458,6 @@ with pkgs;
 
   bfs = callPackage ../tools/system/bfs { };
 
-  bevelbar = callPackage ../tools/X11/bevelbar { };
-
   bgs = callPackage ../tools/X11/bgs { };
 
   bibclean = callPackage ../tools/typesetting/bibclean { };
@@ -6609,8 +6563,6 @@ with pkgs;
 
   ccze = callPackage ../tools/misc/ccze { };
 
-  cdecl = callPackage ../development/tools/cdecl { };
-
   cdi2iso = callPackage ../tools/cd-dvd/cdi2iso { };
 
   cdist = python3Packages.callPackage ../tools/admin/cdist { };
@@ -7028,7 +6980,8 @@ with pkgs;
 
   ckb-next = libsForQt5.callPackage ../tools/misc/ckb-next { };
 
-  clamav = darwin.apple_sdk_11_0.callPackage ../tools/security/clamav {
+  clamav = callPackage ../tools/security/clamav {
+    stdenv = if stdenv.isDarwin then overrideSDK stdenv "11.0" else stdenv;
     inherit (darwin.apple_sdk_11_0.frameworks) Foundation;
   };
 
@@ -7158,10 +7111,6 @@ with pkgs;
   cudaPackages_12_3 = callPackage ./cuda-packages.nix { cudaVersion = "12.3"; };
   cudaPackages_12 = cudaPackages_12_2; # Latest supported by cudnn
 
-  # Use the older cudaPackages for tensorflow and jax, as determined by cudnn
-  # compatibility: https://www.tensorflow.org/install/source#gpu
-  cudaPackagesGoogle = cudaPackages_11;
-
   cudaPackages = recurseIntoAttrs cudaPackages_12;
 
   # TODO: move to alias
@@ -7454,8 +7403,6 @@ with pkgs;
 
   dorkscout = callPackage ../tools/security/dorkscout { };
 
-  downonspot = callPackage ../applications/misc/downonspot { };
-
   sl1-to-photon = python3Packages.callPackage ../applications/misc/sl1-to-photon { };
 
   drive = callPackage ../applications/networking/drive { };
@@ -7671,8 +7618,6 @@ with pkgs;
 
   tracker = callPackage ../development/libraries/tracker { };
 
-  tracker-miners = callPackage ../development/libraries/tracker-miners { };
-
   tracy = callPackage ../development/tools/tracy { };
 
   trivy = callPackage ../tools/admin/trivy { };
@@ -7831,8 +7776,6 @@ with pkgs;
 
   endlessh = callPackage ../servers/endlessh { };
 
-  endlessh-go = callPackage ../servers/endlessh-go { };
-
   ericw-tools = callPackage ../applications/misc/ericw-tools { };
 
   cryfs = callPackage ../tools/filesystems/cryfs { };
@@ -7843,7 +7786,7 @@ with pkgs;
 
   enscript = callPackage ../tools/text/enscript { };
 
-  ensemble-chorus = callPackage ../applications/audio/ensemble-chorus { stdenv = gcc8Stdenv; };
+  ensemble-chorus = callPackage ../applications/audio/ensemble-chorus { };
 
   entr = callPackage ../tools/misc/entr { };
 
@@ -8107,8 +8050,6 @@ with pkgs;
 
   fim = callPackage ../tools/graphics/fim { };
 
-  flac123 = callPackage ../applications/audio/flac123 { };
-
   flamegraph = callPackage ../development/tools/flamegraph { };
 
   flawfinder = callPackage ../development/tools/flawfinder { };
@@ -8121,8 +8062,6 @@ with pkgs;
 
   flowblade = callPackage ../applications/video/flowblade { };
 
-  fontfor = callPackage ../tools/misc/fontfor { };
-
   fontforge = lowPrio (callPackage ../tools/misc/fontforge {
     inherit (darwin.apple_sdk.frameworks) Carbon Cocoa;
     python = python3;
@@ -8225,8 +8164,6 @@ with pkgs;
 
   fuseiso = callPackage ../tools/filesystems/fuseiso { };
 
-  fusuma = callPackage ../tools/inputmethods/fusuma { };
-
   fdbPackages = dontRecurseIntoAttrs (callPackage ../servers/foundationdb { });
 
   inherit (fdbPackages)
@@ -8928,8 +8865,6 @@ with pkgs;
 
   haste-server = callPackage ../servers/haste-server { };
 
-  hatch = python3Packages.callPackage ../development/tools/hatch { };
-
   hal-hardware-analyzer = libsForQt5.callPackage ../applications/science/electronics/hal-hardware-analyzer {
     stdenv = if stdenv.isDarwin then darwin.apple_sdk_11_0.stdenv else stdenv;
   };
@@ -9256,10 +9191,7 @@ with pkgs;
 
   internetarchive = with python3Packages; toPythonApplication internetarchive;
 
-  invidious = callPackage ../servers/invidious {
-    # normally video.js is downloaded at build time
-    videojs = callPackage ../servers/invidious/videojs.nix { };
-  };
+  invidious = callPackage ../servers/invidious { };
 
   invoice2data  = callPackage ../tools/text/invoice2data  { };
 
@@ -9586,8 +9518,6 @@ with pkgs;
 
   kdoctor = callPackage ../development/tools/kdoctor { };
 
-  kdbplus = pkgsi686Linux.callPackage ../applications/misc/kdbplus { };
-
   kdigger = callPackage ../tools/security/kdigger { };
 
   kdiskmark = libsForQt5.callPackage ../tools/filesystems/kdiskmark { };
@@ -11328,8 +11258,6 @@ with pkgs;
 
   ogdf = callPackage ../development/libraries/ogdf { };
 
-  oh-my-posh = callPackage ../development/tools/oh-my-posh { };
-
   oh-my-zsh = callPackage ../shells/zsh/oh-my-zsh { };
 
   ola = callPackage ../applications/misc/ola {
@@ -11708,17 +11636,10 @@ with pkgs;
 
   perceptualdiff = callPackage ../tools/graphics/perceptualdiff { };
 
-  percona-server_8_0 = callPackage ../servers/sql/percona-server/8.0.x.nix {
-    inherit (darwin) cctools developer_cmds DarwinTools;
-    inherit (darwin.apple_sdk.frameworks) CoreServices;
-    boost = boost177; # Configure checks for specific version.
-    icu = icu69;
-    protobuf = protobuf_21;
-  };
-  percona-xtrabackup = percona-xtrabackup_8_0;
-  percona-xtrabackup_8_0 = callPackage ../tools/backup/percona-xtrabackup/8_0.nix {
-    boost = boost177;
-  };
+  inherit (import ../servers/sql/percona-server pkgs) percona-server_lts percona-server_innovation;
+  percona-server = percona-server_lts;
+  inherit (import ../tools/backup/percona-xtrabackup pkgs) percona-xtrabackup_lts percona-xtrabackup_innovation;
+  percona-xtrabackup = percona-xtrabackup_lts;
 
   pick = callPackage ../tools/misc/pick { };
 
@@ -12441,8 +12362,6 @@ with pkgs;
 
   redsocks = callPackage ../tools/networking/redsocks { };
 
-  renpy = callPackage ../development/interpreters/renpy { };
-
   rep = callPackage ../development/tools/rep { };
 
   repseek = callPackage ../applications/science/biology/repseek { };
@@ -12971,8 +12890,6 @@ with pkgs;
 
   shout = nodePackages.shout;
 
-  showmethekey = callPackage ../applications/video/showmethekey { };
-
   shrikhand = callPackage ../data/fonts/shrikhand { };
 
   shunit2 = callPackage ../tools/misc/shunit2 { };
@@ -13521,8 +13438,6 @@ with pkgs;
 
   tarssh = callPackage ../servers/tarssh { };
 
-  tartan = callPackage ../development/tools/analysis/tartan { };
-
   tartube = callPackage ../applications/video/tartube { };
 
   tartube-yt-dlp = callPackage ../applications/video/tartube {
@@ -14078,8 +13993,6 @@ with pkgs;
 
   up = callPackage ../tools/misc/up { };
 
-  upbound = callPackage ../development/tools/upbound { };
-
   upterm = callPackage ../tools/misc/upterm { };
 
   upx = callPackage ../tools/compression/upx { };
@@ -14279,8 +14192,6 @@ with pkgs;
 
   wakapi = callPackage ../tools/misc/wakapi { };
 
-  wakatime = callPackage ../tools/misc/wakatime { };
-
   wambo = callPackage ../development/tools/wambo { };
 
   weather = callPackage ../applications/misc/weather { };
@@ -14617,9 +14528,9 @@ with pkgs;
   valum = callPackage ../development/web/valum { };
 
   inherit (callPackages ../servers/varnish { })
-    varnish60 varnish74;
+    varnish60 varnish74 varnish75;
   inherit (callPackages ../servers/varnish/packages.nix { })
-    varnish60Packages varnish74Packages;
+    varnish60Packages varnish74Packages varnish75Packages;
 
   varnishPackages = varnish74Packages;
   varnish = varnishPackages.varnish;
@@ -15808,6 +15719,13 @@ with pkgs;
          && stdenv.buildPlatform == stdenv.hostPlatform
       then buildPackages.gnat-bootstrap11
       else buildPackages.gnat11;
+    stdenv =
+      if stdenv.hostPlatform == stdenv.targetPlatform
+         && stdenv.buildPlatform == stdenv.hostPlatform
+         && stdenv.buildPlatform.isDarwin
+         && stdenv.buildPlatform.isx86_64
+      then overrideCC stdenv gnat-bootstrap11
+      else stdenv;
   });
 
   gnat12 = wrapCC (gcc12.cc.override {
@@ -16350,7 +16268,7 @@ with pkgs;
     # assumption is that or any later version is good.
     choose = platform:
       /**/ if platform.isDarwin then 16
-      else if platform.isFreeBSD then 12
+      else if platform.isFreeBSD then 16
       else if platform.isAndroid then 12
       else if platform.isLinux then 17
       else if platform.isWasm then 16
@@ -16548,7 +16466,7 @@ with pkgs;
     ocamlformat # latest version
     ocamlformat_0_19_0 ocamlformat_0_20_0 ocamlformat_0_20_1 ocamlformat_0_21_0
     ocamlformat_0_22_4 ocamlformat_0_23_0 ocamlformat_0_24_1 ocamlformat_0_25_1
-    ocamlformat_0_26_0 ocamlformat_0_26_1;
+    ocamlformat_0_26_0 ocamlformat_0_26_1 ocamlformat_0_26_2;
 
   inherit (ocamlPackages) odig;
 
@@ -16663,9 +16581,7 @@ with pkgs;
   };
   cargo-benchcmp = callPackage ../development/tools/rust/cargo-benchcmp { };
   cargo-binstall = callPackage ../development/tools/rust/cargo-binstall { };
-  cargo-bisect-rustc = callPackage ../development/tools/rust/cargo-bisect-rustc {
-    inherit (darwin.apple_sdk.frameworks) Security;
-  };
+  cargo-bisect-rustc = callPackage ../development/tools/rust/cargo-bisect-rustc { };
   cargo-bitbake = callPackage ../development/tools/rust/cargo-bitbake { };
   cargo-c = callPackage ../development/tools/rust/cargo-c {
     inherit (darwin.apple_sdk.frameworks) CoreFoundation Security;
@@ -16755,7 +16671,6 @@ with pkgs;
     inherit (darwin.apple_sdk.frameworks) Security;
   };
   cargo-fuzz = callPackage ../development/tools/rust/cargo-fuzz { };
-  cargo-geiger = callPackage ../development/tools/rust/cargo-geiger { };
 
   cargo-hf2 = callPackage ../development/tools/rust/cargo-hf2 {
     inherit (darwin.apple_sdk.frameworks) AppKit;
@@ -16783,10 +16698,6 @@ with pkgs;
 
   cargo-nextest = callPackage ../development/tools/rust/cargo-nextest { };
   cargo-play = callPackage ../development/tools/rust/cargo-play { };
-  cargo-profiler = callPackage ../development/tools/rust/cargo-profiler { };
-  cargo-raze = callPackage ../development/tools/rust/cargo-raze {
-    inherit (darwin.apple_sdk.frameworks) Security;
-  };
   cargo-rdme = callPackage ../by-name/ca/cargo-rdme/package.nix {
     inherit (darwin.apple_sdk.frameworks) Security;
   };
@@ -16821,9 +16732,6 @@ with pkgs;
   cargo-vet = callPackage ../development/tools/rust/cargo-vet {
     inherit (darwin.apple_sdk.frameworks) Security;
   };
-  cargo-wasi = callPackage ../development/tools/rust/cargo-wasi {
-    inherit (darwin.apple_sdk.frameworks) Security;
-  };
   cargo-watch = callPackage ../development/tools/rust/cargo-watch {
     inherit (darwin.apple_sdk.frameworks) Foundation Cocoa;
   };
@@ -17758,10 +17666,6 @@ with pkgs;
 
   waagent = callPackage ../applications/networking/cluster/waagent { };
 
-  wapm-cli = callPackage ../tools/package-management/wapm/cli {
-    inherit (darwin.apple_sdk.frameworks) Security SystemConfiguration;
-  };
-
   wasm = ocamlPackages.wasm;
 
   wasm3 = callPackage ../development/interpreters/wasm3 { };
@@ -18097,17 +18001,19 @@ with pkgs;
   electron-source = callPackage ../development/tools/electron { };
 
   inherit (callPackages ../development/tools/electron/binary { })
-    electron-bin
     electron_24-bin
     electron_27-bin
     electron_28-bin
-    electron_29-bin;
+    electron_29-bin
+    electron_30-bin;
 
   electron_24 = electron_24-bin;
   electron_27 = if lib.meta.availableOn stdenv.hostPlatform electron-source.electron_27 then electron-source.electron_27 else electron_27-bin;
   electron_28 = if lib.meta.availableOn stdenv.hostPlatform electron-source.electron_28 then electron-source.electron_28 else electron_28-bin;
   electron_29 = if lib.meta.availableOn stdenv.hostPlatform electron-source.electron_29 then electron-source.electron_29 else electron_29-bin;
+  electron_30 = if lib.meta.availableOn stdenv.hostPlatform electron-source.electron_30 then electron-source.electron_30 else electron_30-bin;
   electron = electron_29;
+  electron-bin = electron_29-bin;
 
   autobuild = callPackage ../development/tools/misc/autobuild { };
 
@@ -18350,11 +18256,11 @@ with pkgs;
 
   bpftools = callPackage ../os-specific/linux/bpftools { };
 
-  bcc = callPackage ../os-specific/linux/bcc {
+  bcc = callPackage ../by-name/bc/bcc/package.nix {
     llvmPackages = llvmPackages_16;
   };
 
-  bpftrace = callPackage ../os-specific/linux/bpftrace {
+  bpftrace = callPackage ../by-name/bp/bpftrace/package.nix {
     llvmPackages = llvmPackages_16;
   };
 
@@ -18587,8 +18493,6 @@ with pkgs;
 
   sigrok-firmware-fx2lafw = callPackage ../development/tools/sigrok-firmware-fx2lafw { };
 
-  cli11 = callPackage ../development/tools/misc/cli11 { };
-
   datree = callPackage ../development/tools/datree { };
 
   detekt = callPackage ../development/tools/detekt { };
@@ -18647,15 +18551,7 @@ with pkgs;
 
   doclifter = callPackage ../development/tools/misc/doclifter { };
 
-  docutils = with python3Packages; toPythonApplication (
-    docutils.overridePythonAttrs (attrs: rec {
-      version = "0.20.1";
-      src = attrs.src.override {
-        inherit version;
-        hash = "sha256-8IpOJ2w6FYOobc4+NKuj/gTQK7ot1R7RYQYkToqSPjs=";
-      };
-    })
-  );
+  docutils = with python3Packages; toPythonApplication docutils;
 
   doctl = callPackage ../development/tools/doctl { };
 
@@ -18690,8 +18586,6 @@ with pkgs;
 
   easypdkprog = callPackage ../development/embedded/easypdkprog { };
 
-  eclint = callPackage ../development/tools/eclint { };
-
   editorconfig-checker = callPackage ../development/tools/misc/editorconfig-checker { };
 
   editorconfig-core-c = callPackage ../development/tools/misc/editorconfig-core-c { };
@@ -19216,7 +19110,7 @@ with pkgs;
 
   modd = callPackage ../development/tools/modd { };
 
-  mold = callPackage ../development/tools/mold {
+  mold = callPackage ../by-name/mo/mold/package.nix {
     stdenv = if stdenv.isDarwin then overrideSDK stdenv "11.0" else stdenv;
     tbb = tbb_2021_11;
   };
@@ -19324,8 +19218,6 @@ with pkgs;
     inherit (darwin.apple_sdk.frameworks) Security;
   };
 
-  pahole = callPackage ../development/tools/misc/pahole { };
-
   panopticon = callPackage ../development/tools/analysis/panopticon { };
 
   parinfer-rust = callPackage ../development/tools/parinfer-rust { };
@@ -19581,8 +19473,6 @@ with pkgs;
 
   scala-cli = callPackage ../development/tools/build-managers/scala-cli { };
 
-  scc = callPackage ../development/tools/misc/scc { };
-
   scss-lint = callPackage ../development/tools/scss-lint { };
 
   segger-ozone = callPackage ../development/tools/misc/segger-ozone { };
@@ -20363,6 +20253,7 @@ with pkgs;
   ccrtp = callPackage ../development/libraries/ccrtp { };
 
   cctag = callPackage ../development/libraries/cctag {
+    stdenv = clangStdenv;
     tbb = tbb_2021_11;
   };
 
@@ -20511,7 +20402,10 @@ with pkgs;
 
   ustream-ssl-wolfssl = callPackage ../development/libraries/ustream-ssl { ssl_implementation = wolfssl; additional_buildInputs = [ openssl ]; };
 
-  ustream-ssl-mbedtls = callPackage ../development/libraries/ustream-ssl { ssl_implementation = mbedtls_2; };
+  ustream-ssl-mbedtls = callPackage ../development/libraries/ustream-ssl {
+    ssl_implementation = mbedtls_2;
+    stdenv = if stdenv.isDarwin then overrideSDK stdenv "11.0" else stdenv;
+  };
 
   uri = callPackage ../development/libraries/uri { };
 
@@ -20527,8 +20421,6 @@ with pkgs;
 
   cre2 = callPackage ../development/libraries/cre2 { };
 
-  criterion = callPackage ../development/libraries/criterion { };
-
   croaring = callPackage ../development/libraries/croaring { };
 
   crocoddyl = callPackage ../development/libraries/crocoddyl { };
@@ -20606,16 +20498,8 @@ with pkgs;
 
   digiham = callPackage ../applications/radio/digiham { };
 
-  dillo = callPackage ../applications/networking/browsers/dillo {
-    fltk = fltk13;
-  };
-
-  dillong = callPackage ../applications/networking/browsers/dillong { };
-
   directfb = callPackage ../development/libraries/directfb { };
 
-  discord-gamesdk = callPackage ../development/libraries/discord-gamesdk { };
-
   discord-rpc = callPackage ../development/libraries/discord-rpc {
     inherit (darwin.apple_sdk.frameworks) AppKit;
   };
@@ -21251,7 +21135,7 @@ with pkgs;
 
   gst_all_1 = recurseIntoAttrs(callPackage ../development/libraries/gstreamer {
     callPackage = newScope (gst_all_1 // { libav = pkgs.ffmpeg-headless; });
-    inherit (darwin.apple_sdk.frameworks) AudioToolbox AVFoundation Cocoa CoreFoundation CoreMedia CoreServices CoreVideo DiskArbitration Foundation IOKit MediaToolbox OpenGL Security VideoToolbox;
+    inherit (darwin.apple_sdk.frameworks) AudioToolbox AVFoundation Cocoa CoreFoundation CoreMedia CoreServices CoreVideo DiskArbitration Foundation IOKit MediaToolbox OpenGL Security SystemConfiguration VideoToolbox;
   });
 
   gusb = callPackage ../development/libraries/gusb { };
@@ -22581,18 +22465,18 @@ with pkgs;
 
   # GNU libc provides libiconv so systems with glibc don't need to
   # build libiconv separately. Additionally, Apple forked/repackaged
-  # libiconv so we use that instead of the vanilla version on that OS,
+  # libiconv, so build and use the upstream one with a compatible ABI,
   # and BSDs include libiconv in libc.
   #
   # We also provide `libiconvReal`, which will always be a standalone libiconv,
   # just in case you want it regardless of platform.
   libiconv =
-    if lib.elem stdenv.hostPlatform.libc [ "glibc" "musl" "nblibc" "wasilibc" ]
+    if lib.elem stdenv.hostPlatform.libc [ "glibc" "musl" "nblibc" "wasilibc" "fblibc" ]
       then libcIconv (if stdenv.hostPlatform != stdenv.buildPlatform
         then libcCross
         else stdenv.cc.libc)
     else if stdenv.hostPlatform.isDarwin
-      then darwin.libiconv
+      then libiconv-darwin
     else libiconvReal;
 
   libcIconv = libc: let
@@ -22609,7 +22493,7 @@ with pkgs;
     if lib.elem stdenv.hostPlatform.libc [ "glibc" "musl" ] then
       lib.getBin stdenv.cc.libc
     else if stdenv.hostPlatform.isDarwin then
-      lib.getBin darwin.libiconv
+      lib.getBin libiconv
     else
       lib.getBin libiconvReal;
 
@@ -23707,6 +23591,17 @@ with pkgs;
 
   opencascade-occt = callPackage ../development/libraries/opencascade-occt { };
 
+  opencascade-occt_7_6 = opencascade-occt.overrideAttrs rec {
+    pname = "opencascade-occt";
+    version = "7.6.2";
+    commit = "V${builtins.replaceStrings ["."] ["_"] version}";
+    src = fetchurl {
+      name = "occt-${commit}.tar.gz";
+      url = "https://git.dev.opencascade.org/gitweb/?p=occt.git;a=snapshot;h=${commit};sf=tgz";
+      hash = "sha256-n3KFrN/mN1SVXfuhEUAQ1fJzrCvhiclxfEIouyj9Z18=";
+    };
+  };
+
   opencl-headers = callPackage ../development/libraries/opencl-headers { };
 
   opencl-clhpp = callPackage ../development/libraries/opencl-clhpp { };
@@ -23792,7 +23687,7 @@ with pkgs;
 
   openvdb = callPackage ../development/libraries/openvdb { };
 
-  openvr = callPackage ../development/libraries/openvr {
+  openvr = callPackage ../by-name/op/openvr/package.nix {
     inherit (darwin.apple_sdk.frameworks) Foundation AppKit;
   };
 
@@ -23826,10 +23721,6 @@ with pkgs;
 
   opensupaplex = callPackage ../games/opensupaplex { };
 
-  openturns = callPackage ../development/libraries/openturns {
-      inherit (darwin.apple_sdk.frameworks) Accelerate;
-  };
-
   open-wbo = callPackage ../applications/science/logic/open-wbo { };
 
   openwsman = callPackage ../development/libraries/openwsman { };
@@ -24340,12 +24231,6 @@ with pkgs;
     };
   });
 
-  SDL2_mixer = callPackage ../development/libraries/SDL2_mixer {
-    inherit (darwin.apple_sdk.frameworks) CoreServices AudioUnit AudioToolbox;
-  };
-  # SDL2_mixer_2_0 pinned for lzwolf
-  SDL2_mixer_2_0 = callPackage ../development/libraries/SDL2_mixer/2_0.nix { };
-
   SDL2_gfx = callPackage ../development/libraries/SDL2_gfx { };
 
   SDL2_sound = callPackage ../development/libraries/SDL2_sound {
@@ -24839,8 +24724,6 @@ with pkgs;
 
   unixODBCDrivers = recurseIntoAttrs (callPackages ../development/libraries/unixODBCDrivers { });
 
-  ustr = callPackage ../development/libraries/ustr { };
-
   usrsctp = callPackage ../development/libraries/usrsctp { };
 
   usbredir = callPackage ../development/libraries/usbredir { };
@@ -25005,7 +24888,7 @@ with pkgs;
   whereami = callPackage ../development/libraries/whereami { };
 
   wildmidi = callPackage ../development/libraries/wildmidi {
-    inherit (darwin.apple_sdk.frameworks) OpenAL;
+    inherit (darwin.apple_sdk.frameworks) OpenAL CoreAudioKit;
   };
 
   wiredtiger = callPackage ../development/libraries/wiredtiger { };
@@ -25087,8 +24970,6 @@ with pkgs;
 
   xml-security-c = callPackage ../development/libraries/xml-security-c { };
 
-  xml-tooling-c = callPackage ../development/libraries/xml-tooling-c { };
-
   xlslib = callPackage ../development/libraries/xlslib { };
 
   xsimd = callPackage ../development/libraries/xsimd { };
@@ -25192,8 +25073,6 @@ with pkgs;
 
   zix = callPackage ../development/libraries/audio/zix { };
 
-  zz = callPackage ../development/compilers/zz { };
-
   zziplib = callPackage ../development/libraries/zziplib { };
 
   glpng = callPackage ../development/libraries/glpng { };
@@ -25348,36 +25227,6 @@ with pkgs;
     texLive = null;
   };
 
-  ## DEPRECATED, will be removed in a future release
-
-  clwrapperFunction = callPackage ../development/lisp-modules-obsolete/clwrapper;
-
-  wrapLisp_old = lisp: clwrapperFunction { inherit lisp; };
-
-  lispPackagesFor = clwrapper: callPackage ../development/lisp-modules-obsolete/lisp-packages.nix {
-    inherit clwrapper;
-  };
-
-  lispPackages = quicklispPackages //
-    (lispPackagesFor (wrapLisp_old sbcl)) // { __attrsFailEvaluation = true; };
-
-  quicklispPackagesFor = clwrapper: callPackage ../development/lisp-modules-obsolete/quicklisp-to-nix.nix {
-    inherit clwrapper;
-  } // { __attrsFailEvaluation = true; };
-  quicklispPackagesClisp = dontRecurseIntoAttrs (quicklispPackagesFor (wrapLisp_old clisp));
-  quicklispPackagesSBCL = dontRecurseIntoAttrs (quicklispPackagesFor (wrapLisp_old sbcl));
-  quicklispPackagesECL = dontRecurseIntoAttrs (quicklispPackagesFor (wrapLisp_old ecl));
-  quicklispPackagesCCL = dontRecurseIntoAttrs (quicklispPackagesFor (wrapLisp_old ccl));
-  quicklispPackagesABCL = dontRecurseIntoAttrs (quicklispPackagesFor (wrapLisp_old abcl));
-  quicklispPackagesGCL = dontRecurseIntoAttrs (quicklispPackagesFor (wrapLisp_old gcl));
-  quicklispPackages = quicklispPackagesSBCL;
-
-  # Alternative lisp-modules implementation
-  lispPackages_new = callPackage ../development/lisp-modules-new-obsolete/lisp-packages.nix {}
-  // { __attrsFailEvaluation = true; };
-
-  ## End of DEPRECATED
-
   wrapLisp = callPackage ../development/lisp-modules/nix-cl.nix {};
 
   # Armed Bear Common Lisp
@@ -25798,8 +25647,6 @@ with pkgs;
 
   inherit (callPackages ../servers/firebird { }) firebird_4 firebird_3 firebird_2_5 firebird;
 
-  flashmq = callPackage ../servers/mqtt/flashmq { };
-
   freeradius = callPackage ../servers/freeradius { };
 
   freshrss = callPackage ../servers/web-apps/freshrss { };
@@ -26162,8 +26009,6 @@ with pkgs;
 
   olaris-server = callPackage ../servers/olaris { };
 
-  onagre = callPackage ../applications/misc/onagre { };
-
   onlyoffice-documentserver = callPackage ../servers/onlyoffice-documentserver { };
 
   outline = callPackage ../servers/web-apps/outline (lib.fix (super: {
@@ -26600,9 +26445,7 @@ with pkgs;
   };
 
   radicale2 = callPackage ../servers/radicale/2.x.nix { };
-  radicale3 = callPackage ../servers/radicale/3.x.nix { };
-
-  radicale = radicale3;
+  radicale3 = radicale;
 
   qcal = callPackage ../tools/networking/qcal/default.nix { };
 
@@ -26810,8 +26653,6 @@ with pkgs;
 
   urserver = callPackage ../servers/urserver { };
 
-  uxplay = callPackage ../servers/uxplay { };
-
   vouch-proxy = callPackage ../servers/vouch-proxy { };
 
   virtiofsd = callPackage ../servers/misc/virtiofsd { };
@@ -27177,9 +27018,7 @@ with pkgs;
 
   fatrace = callPackage ../os-specific/linux/fatrace { };
 
-  ffado = libsForQt5.callPackage ../os-specific/linux/ffado {
-    inherit (linuxPackages) kernel;
-  };
+  ffado = libsForQt5.callPackage ../os-specific/linux/ffado { };
   libffado = ffado;
 
   fbterm = callPackage ../os-specific/linux/fbterm { };
@@ -28369,8 +28208,6 @@ with pkgs;
 
   ananicy-cpp = callPackage ../misc/ananicy-cpp { };
 
-  ananicy-rules-cachyos = callPackage ../misc/ananicy-rules-cachyos { };
-
   andagii = callPackage ../data/fonts/andagii { };
 
   andika = callPackage ../data/fonts/andika { };
@@ -29753,10 +29590,6 @@ with pkgs;
 
   appgate-sdp = callPackage ../applications/networking/appgate-sdp { };
 
-  apostrophe = callPackage ../applications/editors/apostrophe {
-    pythonPackages = python3Packages;
-  };
-
   ardour = callPackage ../applications/audio/ardour { };
   ardour_7 = callPackage ../applications/audio/ardour/7.nix { };
 
@@ -30214,6 +30047,8 @@ with pkgs;
 
   clight = callPackage ../applications/misc/clight { };
 
+  clight-gui = libsForQt5.callPackage ../applications/misc/clight/clight-gui.nix { };
+
   clightd = callPackage ../applications/misc/clight/clightd.nix { };
 
   clipgrab = libsForQt5.callPackage ../applications/video/clipgrab { };
@@ -30309,8 +30144,6 @@ with pkgs;
 
   cplay-ng = callPackage ../applications/audio/cplay-ng { };
 
-  cq-editor = libsForQt5.callPackage ../applications/graphics/cq-editor { };
-
   cqrlog = callPackage ../applications/radio/cqrlog {
     hamlib = hamlib_4;
   };
@@ -30709,12 +30542,6 @@ with pkgs;
 
   expenses = callPackage ../applications/misc/expenses { };
 
-  flowtime = callPackage ../applications/misc/flowtime { };
-
-  furnace = callPackage ../applications/audio/furnace {
-    inherit (darwin.apple_sdk.frameworks) Cocoa;
-  };
-
   furtherance = callPackage ../applications/misc/furtherance { };
 
   gigalixir = callPackage ../tools/misc/gigalixir { };
@@ -31279,8 +31106,6 @@ with pkgs;
 
   fractal = callPackage ../applications/networking/instant-messengers/fractal { };
 
-  fragments = callPackage ../applications/networking/p2p/fragments { };
-
   freedv = callPackage ../applications/radio/freedv {
     inherit (darwin.apple_sdk.frameworks) AppKit AVFoundation Cocoa CoreMedia;
     codec2 = codec2.override {
@@ -31295,9 +31120,9 @@ with pkgs;
 
   freenet = callPackage ../applications/networking/p2p/freenet {
     gradle = gradle_7;
-    jdk = jdk_headless;
+    jdk = jdk17_headless;
     # Reduce closure size
-    jre = pkgs.jre_minimal.override {
+    jre = pkgs.jre17_minimal.override {
       modules = [
         "java.base"
         "java.logging"
@@ -31306,7 +31131,7 @@ with pkgs;
         "java.desktop"
         "java.management"
       ];
-      jdk = jdk_headless;
+      jdk = jdk17_headless;
     };
   };
 
@@ -31323,10 +31148,20 @@ with pkgs;
 
   pulseaudio-module-xrdp = callPackage ../applications/networking/remote/xrdp/pulseaudio-module-xrdp { };
 
-  freerdp = callPackage ../applications/networking/remote/freerdp {
-    inherit (darwin.apple_sdk.frameworks) AudioToolbox AVFoundation Carbon Cocoa CoreMedia;
-    inherit (gst_all_1) gstreamer gst-plugins-base gst-plugins-good;
-  };
+  inherit
+    ({
+      freerdp = callPackage ../applications/networking/remote/freerdp {
+        inherit (darwin.apple_sdk.frameworks) AudioToolbox AVFoundation Carbon Cocoa CoreMedia;
+        inherit (gst_all_1) gstreamer gst-plugins-base gst-plugins-good;
+      };
+      freerdp3 = callPackage ../applications/networking/remote/freerdp/3.nix {
+        stdenv = if stdenv.isDarwin then overrideSDK stdenv "11.0" else stdenv;
+        inherit (darwin.apple_sdk.frameworks) AudioToolbox AVFoundation Carbon Cocoa CoreMedia;
+      };
+    })
+    freerdp
+    freerdp3
+    ;
 
   freerdpUnstable = freerdp;
 
@@ -31334,8 +31169,6 @@ with pkgs;
     python3Packages = python39Packages;
   };
 
-  fte = callPackage ../applications/editors/fte { };
-
   g933-utils = callPackage ../tools/misc/g933-utils { };
 
   gavrasm = callPackage ../development/compilers/gavrasm { };
@@ -31441,6 +31274,8 @@ with pkgs;
 
   manuskript = libsForQt5.callPackage ../applications/editors/manuskript { };
 
+  minari = python3Packages.toPythonApplication python3Packages.minari;
+
   mindforger = libsForQt5.callPackage ../applications/editors/mindforger { };
 
   mi2ly = callPackage ../applications/audio/mi2ly { };
@@ -31550,8 +31385,6 @@ with pkgs;
 
   googleearth-pro = libsForQt5.callPackage ../applications/misc/googleearth-pro { };
 
-  google-chrome = callPackage ../applications/networking/browsers/google-chrome { };
-
   go-graft = callPackage ../applications/networking/go-graft { };
 
   gostatic = callPackage ../applications/misc/gostatic { };
@@ -31655,8 +31488,6 @@ with pkgs;
 
   hexdino = callPackage ../applications/editors/hexdino { };
 
-  hexedit = callPackage ../applications/editors/hexedit { };
-
   hydrogen-web-unwrapped = callPackage ../applications/networking/instant-messengers/hydrogen-web/unwrapped.nix { };
 
   hydrogen-web = callPackage ../applications/networking/instant-messengers/hydrogen-web/wrapper.nix {
@@ -31898,8 +31729,6 @@ with pkgs;
 
   waylevel = callPackage ../tools/misc/waylevel { };
 
-  wbg = callPackage ../applications/misc/wbg { };
-
   i3 = callPackage ../applications/window-managers/i3 {
     xcb-util-cursor = if stdenv.isDarwin then xcb-util-cursor-HEAD else xcb-util-cursor;
   };
@@ -32162,8 +31991,10 @@ with pkgs;
   };
 
   jabref = callPackage ../applications/office/jabref {
-    jdk = jdk21.override { enableJavaFX = true; };
-    gradle = gradle_8;
+    jdk = jdk.override {
+      enableJavaFX = true;
+      openjfx = openjfx22.override { withWebKit = true; };
+    };
   };
 
   jack_capture = callPackage ../applications/audio/jack-capture { };
@@ -32219,7 +32050,12 @@ with pkgs;
 
   inherit (callPackage ../applications/networking/cluster/k3s {
     buildGoModule = buildGo121Module;
+    go = go_1_21;
   }) k3s_1_26 k3s_1_27 k3s_1_28 k3s_1_29;
+  inherit (callPackage ../applications/networking/cluster/k3s {
+    buildGoModule = buildGo122Module;
+    go = go_1_22;
+  }) k3s_1_30;
   k3s = k3s_1_29;
 
   k3sup = callPackage ../applications/networking/cluster/k3sup { };
@@ -32777,8 +32613,6 @@ with pkgs;
 
   makeself = callPackage ../applications/misc/makeself { };
 
-  mako = callPackage ../applications/misc/mako { };
-
   mandelbulber = libsForQt5.callPackage ../applications/graphics/mandelbulber { };
 
   mapmap = libsForQt5.callPackage ../applications/video/mapmap { };
@@ -33060,8 +32894,6 @@ with pkgs;
     withConplay = false;
   };
 
-  mpg321 = callPackage ../applications/audio/mpg321 { };
-
   mpc-cli = callPackage ../applications/audio/mpc {
     inherit (python3Packages) sphinx;
   };
@@ -33675,10 +33507,6 @@ with pkgs;
 
   oranda = callPackage ../applications/misc/oranda { };
 
-  orca = python3Packages.callPackage ../applications/misc/orca {
-    inherit pkg-config;
-  };
-
   orca-c = callPackage ../applications/audio/orca-c { };
 
   organicmaps = qt6Packages.callPackage ../applications/misc/organicmaps { };
@@ -35017,7 +34845,7 @@ with pkgs;
     inherit (darwin.apple_sdk.frameworks) Foundation;
   };
 
-  tipp10 = qt5.callPackage ../applications/misc/tipp10 { };
+  tipp10 = qt6.callPackage ../applications/misc/tipp10 { };
 
   tkrev = callPackage ../applications/version-management/tkrev { };
 
@@ -35135,8 +34963,6 @@ with pkgs;
 
   tremc = callPackage ../applications/networking/p2p/tremc { };
 
-  tribler = callPackage ../applications/networking/p2p/tribler { };
-
   trillian-im = callPackage ../applications/networking/instant-messengers/trillian-im { };
 
   trojita = libsForQt5.callPackage ../applications/networking/mailreaders/trojita { };
@@ -35230,8 +35056,6 @@ with pkgs;
 
   unigine-superposition = libsForQt5.callPackage ../applications/graphics/unigine-superposition { };
 
-  unipicker = callPackage ../applications/misc/unipicker { };
-
   unpaper = callPackage ../tools/graphics/unpaper { };
 
   unison-ucm = callPackage ../development/compilers/unison { };
@@ -35328,7 +35152,7 @@ with pkgs;
   # so expect breakage. use wrapNeovim instead if you want a stable alternative
   wrapNeovimUnstable = callPackage ../applications/editors/neovim/wrapper.nix { };
   wrapNeovim = neovim-unwrapped: lib.makeOverridable (neovimUtils.legacyWrapper neovim-unwrapped);
-  neovim-unwrapped = callPackage ../applications/editors/neovim {
+  neovim-unwrapped = callPackage ../by-name/ne/neovim-unwrapped/package.nix {
     CoreServices =  darwin.apple_sdk.frameworks.CoreServices;
     lua = if lib.meta.availableOn stdenv.hostPlatform luajit then luajit else lua5_1;
   };
@@ -35347,8 +35171,6 @@ with pkgs;
 
   gnvim = callPackage ../applications/editors/neovim/gnvim/wrapper.nix { };
 
-  neovide = callPackage ../applications/editors/neovim/neovide { };
-
   neovim-remote = callPackage ../applications/editors/neovim/neovim-remote.nix { };
 
   viw = callPackage ../applications/editors/viw { };
@@ -35378,7 +35200,9 @@ with pkgs;
   virtualbox = libsForQt5.callPackage ../applications/virtualization/virtualbox {
     stdenv = stdenv_32bit;
     inherit (gnome2) libIDL;
-    jdk = openjdk17;
+
+    # VirtualBox uses wsimport, which was removed after JDK 8.
+    jdk = jdk8;
   };
 
   virtualboxKvm = lowPrio (virtualbox.override {
@@ -35585,9 +35409,7 @@ with pkgs;
 
   webcamoid = libsForQt5.callPackage ../applications/video/webcamoid { };
 
-  webcord = callPackage ../applications/networking/instant-messengers/webcord { };
-
-  webcord-vencord = callPackage ../applications/networking/instant-messengers/webcord/webcord-vencord { };
+  webcord = callPackage ../by-name/we/webcord/package.nix { electron = electron_30; };
 
   webex = callPackage ../applications/networking/instant-messengers/webex { };
 
@@ -35884,7 +35706,7 @@ with pkgs;
 
   xlife = callPackage ../applications/graphics/xlife { };
 
-  xmobar = haskellPackages.xmobar;
+  xmobar = haskellPackages.xmobar.bin;
 
   xmonad-log = callPackage ../tools/misc/xmonad-log { };
 
@@ -36353,8 +36175,6 @@ with pkgs;
 
   lightwalletd = callPackage ../applications/blockchains/lightwalletd { };
 
-  openethereum = callPackage ../applications/blockchains/openethereum { };
-
   polkadot = callPackage ../applications/blockchains/polkadot {
     inherit (darwin.apple_sdk.frameworks) Security SystemConfiguration;
   };
@@ -36373,6 +36193,8 @@ with pkgs;
 
   beancount-black = with python3.pkgs; toPythonApplication beancount-black;
 
+  beanhub-cli = with python3.pkgs; toPythonApplication beanhub-cli;
+
   bean-add = callPackage ../applications/office/beancount/bean-add.nix { };
 
   bench = haskell.lib.compose.justStaticExecutables haskellPackages.bench;
@@ -37522,8 +37344,8 @@ with pkgs;
 
   tcl2048 = callPackage ../games/tcl2048 { };
 
-  the-powder-toy = callPackage ../games/the-powder-toy {
-    lua = lua5_1;
+  the-powder-toy = callPackage ../by-name/th/the-powder-toy/package.nix {
+    lua = lua5_2;
     inherit (darwin.apple_sdk.frameworks) Cocoa;
   };
 
@@ -37810,6 +37632,7 @@ with pkgs;
     gnome43Extensions
     gnome44Extensions
     gnome45Extensions
+    gnome46Extensions
   ;
 
   gnome-connections = callPackage ../desktops/gnome/apps/gnome-connections { };
@@ -39712,6 +39535,16 @@ with pkgs;
 
   nixStatic = pkgsStatic.nix;
 
+  lixVersions = recurseIntoAttrs (callPackage ../tools/package-management/lix {
+    storeDir = config.nix.storeDir or "/nix/store";
+    stateDir = config.nix.stateDir or "/nix/var";
+    inherit (darwin.apple_sdk.frameworks) Security;
+  });
+
+  lix = lixVersions.stable;
+
+  lixStatic = pkgsStatic.lix;
+
   inherit (callPackages ../applications/networking/cluster/nixops { })
     nixops_unstable_minimal
 
@@ -39824,9 +39657,14 @@ with pkgs;
 
   dnadd = callPackage ../tools/nix/dnadd { };
 
-  nix-eval-jobs = callPackage ../tools/package-management/nix-eval-jobs {
-    nix = nixVersions.nix_2_21;
-  };
+  nix-eval-jobs = if stdenv.isDarwin then
+    callPackage ../tools/package-management/nix-eval-jobs/2.19.nix {
+      nix = nixVersions.nix_2_19;
+    }
+  else
+    callPackage ../tools/package-management/nix-eval-jobs {
+      nix = nixVersions.nix_2_22;
+    };
 
   nix-doc = callPackage ../tools/package-management/nix-doc { };
 
@@ -40083,7 +39921,7 @@ with pkgs;
   rfc-bibtex = callPackage ../tools/typesetting/rfc-bibtex { };
 
   pick-colour-picker = python3Packages.callPackage ../applications/graphics/pick-colour-picker {
-    inherit glib gtk3 gobject-introspection wrapGAppsHook;
+    inherit glib gtk3 gobject-introspection wrapGAppsHook3;
   };
 
   rpl = callPackage ../tools/text/rpl { };
@@ -40094,8 +39932,6 @@ with pkgs;
 
   roadrunner = callPackage ../servers/roadrunner { };
 
-  rmfakecloud = callPackage ../servers/rmfakecloud { };
-
   rmfuse = callPackage ../tools/filesystems/rmfuse { };
 
   rmount = callPackage ../tools/filesystems/rmount { };
@@ -40383,8 +40219,6 @@ with pkgs;
 
   twitch-cli = callPackage ../development/tools/twitch-cli { };
 
-  twiggy = callPackage ../development/tools/twiggy { };
-
   uacme = callPackage ../tools/admin/uacme { };
 
   ufiformat = callPackage ../tools/system/ufiformat { };
@@ -40524,6 +40358,15 @@ with pkgs;
 
   winePackagesFor = wineBuild: lib.makeExtensible (self: with self; {
     callPackage = newScope self;
+    stdenv =
+      if pkgs.stdenv.isDarwin then
+        # Match upstream, which builds with the latest SDK and a 10.7 deployment target.
+        overrideSDK pkgs.stdenv {
+          darwinMinVersion = "10.7";
+          darwinSdkVersion = "11.0";
+        }
+      else
+        pkgs.stdenv;
 
     inherit wineBuild;
 
@@ -40553,8 +40396,6 @@ with pkgs;
 
   with-shell = callPackage ../applications/misc/with-shell { };
 
-  wizer = darwin.apple_sdk_11_0.callPackage ../development/tools/wizer { };
-
   wmutils-core = callPackage ../tools/X11/wmutils-core { };
 
   wmutils-libwm = callPackage ../tools/X11/wmutils-libwm { };
@@ -40903,10 +40744,8 @@ with pkgs;
     name = "bsd-setup-hook";
   } ../os-specific/bsd/setup-hook.sh;
 
-  freebsd = callPackage ../os-specific/bsd/freebsd { };
-  freebsdCross = callPackage ../os-specific/bsd/freebsd {
-    stdenv = crossLibcStdenv;
-  };
+  inherit (callPackage ../os-specific/bsd/freebsd { })
+    freebsd freebsdCross;
 
   netbsd = callPackage ../os-specific/bsd/netbsd { };
   netbsdCross = callPackage ../os-specific/bsd/netbsd {
@@ -41061,8 +40900,6 @@ with pkgs;
 
   gpio-utils = callPackage ../os-specific/linux/kernel/gpio-utils.nix { };
 
-  navidrome = callPackage ../servers/misc/navidrome { };
-
   zalgo = callPackage ../tools/misc/zalgo { };
 
   inherit (callPackage ../applications/misc/zettlr { }) zettlr;
@@ -41073,8 +40910,6 @@ with pkgs;
     inherit (darwin.apple_sdk.frameworks) CoreServices;
   };
 
-  treefmt = callPackage ../development/tools/treefmt { };
-
   nufmt = callPackage ../development/tools/nufmt { };
 
   bottom = darwin.apple_sdk_11_0.callPackage ../tools/system/bottom { };
@@ -41212,4 +41047,8 @@ with pkgs;
   insulator2 = callPackage ../applications/misc/insulator2 {};
 
   animdl = python3Packages.callPackage ../applications/video/animdl { };
+
+  dillo = callPackage ../by-name/di/dillo/package.nix {
+    fltk = fltk13;
+  };
 }
diff --git a/pkgs/top-level/coq-packages.nix b/pkgs/top-level/coq-packages.nix
index 1964f666a86b..5cea3d663b42 100644
--- a/pkgs/top-level/coq-packages.nix
+++ b/pkgs/top-level/coq-packages.nix
@@ -117,6 +117,7 @@ let
       simple-io = callPackage ../development/coq-modules/simple-io { };
       smpl = callPackage ../development/coq-modules/smpl { };
       smtcoq = callPackage ../development/coq-modules/smtcoq { };
+      ssprove = callPackage ../development/coq-modules/ssprove {};
       stdpp = callPackage ../development/coq-modules/stdpp { };
       StructTact = callPackage ../development/coq-modules/StructTact {};
       tlc = callPackage ../development/coq-modules/tlc {};
@@ -135,7 +136,7 @@ let
         (lib.versionAtLeast self.coq.version "8.14") {
           compcert = self.compcert.override {
             version = with lib.versions; lib.switch self.coq.version [
-              { case = range "8.15" "8.17"; out = "3.13.1"; }
+              { case = range "8.15" "8.19"; out = "3.13.1"; }
               { case = isEq "8.14"; out = "3.11"; }
             ] null;
           };
diff --git a/pkgs/top-level/darwin-aliases.nix b/pkgs/top-level/darwin-aliases.nix
index d43f0502064e..78e29d9f1a59 100644
--- a/pkgs/top-level/darwin-aliases.nix
+++ b/pkgs/top-level/darwin-aliases.nix
@@ -54,4 +54,12 @@ mapAliases ({
   ### I ###
 
   insert_dylib = throw "'darwin.insert_dylib' has been renamed to 'insert-dylib'"; # added 2024-04-04
+
+  ### L ###
+
+  libiconv = pkgs.libiconv; # 2024-03-27
+
+  ### O ###
+
+  opencflite = pkgs.opencflite; # added 2024-05-02
 })
diff --git a/pkgs/top-level/darwin-packages.nix b/pkgs/top-level/darwin-packages.nix
index eef19ac6ef72..cca74e047dbd 100644
--- a/pkgs/top-level/darwin-packages.nix
+++ b/pkgs/top-level/darwin-packages.nix
@@ -172,9 +172,7 @@ impure-cmds // appleSourcePackages // chooseLibs // {
     inherit (apple_sdk_11_0.libs) simd;
   };
 
-  openwith = pkgs.darwin.apple_sdk_11_0.callPackage ../os-specific/darwin/openwith {
-    inherit (apple_sdk_11_0.frameworks) AppKit Foundation UniformTypeIdentifiers;
-  };
+  openwith = callPackage ../os-specific/darwin/openwith { };
 
   stubs = pkgs.callPackages ../os-specific/darwin/stubs { };
 
diff --git a/pkgs/top-level/haskell-packages.nix b/pkgs/top-level/haskell-packages.nix
index ec050d743178..75f0e54d697c 100644
--- a/pkgs/top-level/haskell-packages.nix
+++ b/pkgs/top-level/haskell-packages.nix
@@ -229,7 +229,7 @@ in {
       buildTargetLlvmPackages = pkgsBuildTarget.llvmPackages_12;
       llvmPackages = pkgs.llvmPackages_12;
     };
-    ghc948 = callPackage ../development/compilers/ghc/9.4.8.nix {
+    ghc948 = callPackage ../development/compilers/ghc/9.4.8.fixme.nix {
       bootPkgs =
         # Building with 9.2 is broken due to
         # https://gitlab.haskell.org/ghc/ghc/-/issues/21914
@@ -360,6 +360,32 @@ in {
       llvmPackages = pkgs.llvmPackages_15;
     };
     ghc98 = compiler.ghc982;
+    ghc9101 = callPackage ../development/compilers/ghc/9.10.1.nix {
+      bootPkgs =
+        # For GHC 9.6 no armv7l bindists are available.
+        if stdenv.hostPlatform.isAarch32 then
+          packages.ghc963
+        else if stdenv.hostPlatform.isPower64 && stdenv.hostPlatform.isLittleEndian then
+          packages.ghc963
+        else if stdenv.hostPlatform.isDarwin then
+          # it seems like the GHC 9.6.* bindists are built with a different
+          # toolchain than we are using (which I'm guessing from the fact
+          # that 9.6.4 bindists pass linker flags our ld doesn't support).
+          # With both 9.6.3 and 9.6.4 binary it is impossible to link against
+          # the clock package (probably a hsc2hs problem).
+          packages.ghc963
+        else
+          packages.ghc963Binary;
+      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;
+      # 2023-01-15: Support range >= 11 && < 16
+      buildTargetLlvmPackages = pkgsBuildTarget.llvmPackages_15;
+      llvmPackages = pkgs.llvmPackages_15;
+    };
+    ghc910 = compiler.ghc9101;
     ghcHEAD = callPackage ../development/compilers/ghc/head.nix {
       bootPkgs =
         # For GHC 9.6 no armv7l bindists are available.
@@ -525,6 +551,12 @@ in {
       compilerConfig = callPackage ../development/haskell-modules/configuration-ghc-9.8.x.nix { };
     };
     ghc98 = packages.ghc982;
+    ghc9101 = callPackage ../development/haskell-modules {
+      buildHaskellPackages = bh.packages.ghc9101;
+      ghc = bh.compiler.ghc9101;
+      compilerConfig = callPackage ../development/haskell-modules/configuration-ghc-9.10.x.nix { };
+    };
+    ghc910 = packages.ghc9101;
     ghcHEAD = callPackage ../development/haskell-modules {
       buildHaskellPackages = bh.packages.ghcHEAD;
       ghc = bh.compiler.ghcHEAD;
diff --git a/pkgs/top-level/linux-kernels.nix b/pkgs/top-level/linux-kernels.nix
index 91a8c2f53926..0335f52465ea 100644
--- a/pkgs/top-level/linux-kernels.nix
+++ b/pkgs/top-level/linux-kernels.nix
@@ -196,6 +196,15 @@ in {
       ];
     };
 
+    linux_6_9 = callPackage ../os-specific/linux/kernel/mainline.nix {
+      branch = "6.9";
+      kernelPatches = [
+        kernelPatches.bridge_stp_helper
+        kernelPatches.request_key_helper
+        kernelPatches.rust_1_77-6_9
+      ];
+    };
+
     linux_testing = let
       testing = callPackage ../os-specific/linux/kernel/mainline.nix {
         # A special branch that tracks the kernel under the release process
@@ -538,7 +547,7 @@ in {
 
     virtualboxGuestAdditions = callPackage ../applications/virtualization/virtualbox/guest-additions { };
 
-    vm-tools = callPackage ../os-specific/linux/vm-tools { };
+    mm-tools = callPackage ../os-specific/linux/mm-tools { };
 
     vmm_clock = callPackage ../os-specific/linux/vmm_clock { };
 
@@ -587,6 +596,7 @@ in {
     hid-nintendo = throw "hid-nintendo was added in mainline kernel version 5.16"; # Added 2023-07-30
     sch_cake = throw "sch_cake was added in mainline kernel version 4.19"; # Added 2023-06-14
     rtl8723bs = throw "rtl8723bs was added in mainline kernel version 4.12"; # Added 2023-06-14
+    vm-tools = self.mm-tools;
     xmm7360-pci = throw "Support for the XMM7360 WWAN card was added to the iosm kmod in mainline kernel version 5.18";
   });
 
@@ -601,6 +611,7 @@ in {
     linux_6_1 = recurseIntoAttrs (packagesFor kernels.linux_6_1);
     linux_6_6 = recurseIntoAttrs (packagesFor kernels.linux_6_6);
     linux_6_8 = recurseIntoAttrs (packagesFor kernels.linux_6_8);
+    linux_6_9 = recurseIntoAttrs (packagesFor kernels.linux_6_9);
     __attrsFailEvaluation = true;
   } // lib.optionalAttrs config.allowAliases {
     linux_4_9 = throw "linux 4.9 was removed because it will reach its end of life within 22.11"; # Added 2022-11-08
@@ -668,7 +679,7 @@ in {
   packageAliases = {
     linux_default = packages.linux_6_6;
     # Update this when adding the newest kernel major version!
-    linux_latest = packages.linux_6_8;
+    linux_latest = packages.linux_6_9;
     linux_mptcp = throw "'linux_mptcp' has been moved to https://github.com/teto/mptcp-flake";
     linux_rt_default = packages.linux_rt_5_4;
     linux_rt_latest = packages.linux_rt_6_6;
diff --git a/pkgs/top-level/lua-packages.nix b/pkgs/top-level/lua-packages.nix
index 0fadeba75fd0..a13c9c3f6c86 100644
--- a/pkgs/top-level/lua-packages.nix
+++ b/pkgs/top-level/lua-packages.nix
@@ -42,7 +42,7 @@ rec {
   getLuaCPath = drv: getPath drv luaLib.luaCPathList;
 
   inherit (callPackage ../development/interpreters/lua-5/hooks { })
-    luarocksMoveDataFolder luarocksCheckHook lua-setup-hook;
+    luarocksMoveDataFolder luarocksCheckHook;
 
   inherit lua;
   inherit buildLuaPackage buildLuarocksPackage buildLuaApplication;
diff --git a/pkgs/top-level/ocaml-packages.nix b/pkgs/top-level/ocaml-packages.nix
index 8a7ad8a70aeb..74661127c3d7 100644
--- a/pkgs/top-level/ocaml-packages.nix
+++ b/pkgs/top-level/ocaml-packages.nix
@@ -1292,6 +1292,7 @@ let
     ocamlformat_0_25_1 = ocamlformat.override { version = "0.25.1"; };
     ocamlformat_0_26_0 = ocamlformat.override { version = "0.26.0"; };
     ocamlformat_0_26_1 = ocamlformat.override { version = "0.26.1"; };
+    ocamlformat_0_26_2 = ocamlformat.override { version = "0.26.2"; };
 
     ocamlformat = callPackage ../development/ocaml-modules/ocamlformat/ocamlformat.nix {};
 
@@ -2010,7 +2011,7 @@ in let inherit (pkgs) callPackage; in rec
 
   ocamlPackages_5_2 = mkOcamlPackages (callPackage ../development/compilers/ocaml/5.2.nix { });
 
-  ocamlPackages_latest = ocamlPackages_5_1;
+  ocamlPackages_latest = ocamlPackages_5_2;
 
   ocamlPackages = ocamlPackages_5_1;
 
diff --git a/pkgs/top-level/packages-config.nix b/pkgs/top-level/packages-config.nix
index cd148cd6df10..bd88c98df960 100644
--- a/pkgs/top-level/packages-config.nix
+++ b/pkgs/top-level/packages-config.nix
@@ -18,8 +18,6 @@
       nodePackages
       nodePackages_latest
       platformioPackages
-      quicklispPackagesClisp
-      quicklispPackagesSBCL
       rPackages
       roundcubePlugins
       sourceHanPackages
diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index a247be4c7d33..acce6d00aac0 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -3312,6 +3312,9 @@ with self; {
       "-Wno-error=implicit-int"
       "-Wno-error=int-conversion"
     ]);
+    postPatch = ''
+      substituteInPlace Makefile.PL --replace pkg-config $PKG_CONFIG
+    '';
     NIX_CFLAGS_LINK = "-L${lib.getLib pkgs.pcsclite}/lib -lpcsclite";
     # tests fail; look unfinished
     doCheck = false;
@@ -10394,10 +10397,10 @@ with self; {
 
   FinanceQuote = buildPerlPackage rec {
     pname = "Finance-Quote";
-    version = "1.60";
+    version = "1.61";
     src = fetchurl {
       url = "mirror://cpan/authors/id/B/BP/BPSCHUCK/Finance-Quote-${version}.tar.gz";
-      hash = "sha256-UXrYQNvOhzdVjnMxNJ/fa7J5u7sMobV+3SN7T5jVw34=";
+      hash = "sha256-Qw7p3yLcqjLrYwpNf7V6KFQvn+UHsmawo39nVLTzWgg=";
     };
     buildInputs = [ DateManip DateRange DateSimple DateTime DateTimeFormatISO8601 StringUtil TestKwalitee TestPerlCritic TestPod TestPodCoverage ];
     propagatedBuildInputs = [ DateManip DateTimeFormatStrptime Encode HTMLTableExtract HTMLTokeParserSimple HTMLTree HTMLTreeBuilderXPath HTTPCookies HTTPCookieJar JSON IOCompress IOString LWPProtocolHttps Readonly StringUtil SpreadsheetXLSX TextTemplate TryTiny WebScraper XMLLibXML libwwwperl ];
@@ -29042,10 +29045,10 @@ with self; {
 
   YAMLLibYAML = buildPerlPackage {
     pname = "YAML-LibYAML";
-    version = "0.88";
+    version = "0.89";
     src = fetchurl {
-      url = "mirror://cpan/authors/id/I/IN/INGY/YAML-LibYAML-0.88.tar.gz";
-      hash = "sha256-qKJzjMzDMqj3VJxMJ/PgCQyasR7vD2yFZEUXc5gTVng=";
+      url = "mirror://cpan/authors/id/T/TI/TINITA/YAML-LibYAML-0.89.tar.gz";
+      hash = "sha256-FVq4NnU0XFCt0DMRrPndkVlVcH+Qmiq9ixfXeShZsuw=";
     };
     meta = {
       description = "Perl YAML Serialization using XS and libyaml";
diff --git a/pkgs/top-level/php-packages.nix b/pkgs/top-level/php-packages.nix
index 62ffa53e54ea..c53789ca10fc 100644
--- a/pkgs/top-level/php-packages.nix
+++ b/pkgs/top-level/php-packages.nix
@@ -46,15 +46,18 @@
 , fetchpatch
 }:
 
-lib.makeScope pkgs.newScope (self: with self; {
+lib.makeScope pkgs.newScope (self: let
+  inherit (self) buildPecl callPackage mkExtension php;
+
+  builders = import ../build-support/php/builders {
+    inherit callPackages callPackage buildPecl;
+  };
+in {
   buildPecl = callPackage ../build-support/php/build-pecl.nix {
     php = php.unwrapped;
   };
 
-  composerHooks = callPackages ../build-support/php/hooks { };
-
-  mkComposerRepository = callPackage ../build-support/php/build-composer-repository.nix { };
-  buildComposerProject = callPackage ../build-support/php/build-composer-project.nix { };
+  inherit (builders.v1) buildComposerProject composerHooks mkComposerRepository;
 
   # Wrap mkDerivation to prepend pname with "php-" to make names consistent
   # with how buildPecl does it and make the file easier to overview.
@@ -425,10 +428,9 @@ lib.makeScope pkgs.newScope (self: with self; {
         }
         {
           name = "iconv";
-          configureFlags = [
-            "--with-iconv${lib.optionalString stdenv.isDarwin "=${libiconv}"}"
-          ];
-          doCheck = false;
+          buildInputs = [ libiconv ];
+          configureFlags = [ "--with-iconv" ];
+          doCheck = stdenv.isLinux;
         }
         {
           name = "imap";
@@ -672,7 +674,11 @@ lib.makeScope pkgs.newScope (self: with self; {
           env.NIX_CFLAGS_COMPILE = toString [ "-I../.." "-DHAVE_DOM" ];
           configureFlags = [ "--with-xsl=${libxslt.dev}" ];
         }
-        { name = "zend_test"; }
+        {
+          name = "zend_test";
+          internalDeps = [ php.extensions.dom ];
+          env.NIX_CFLAGS_COMPILE = "-I${libxml2.dev}/include/libxml2";
+        }
         {
           name = "zip";
           buildInputs = [ libzip pcre2 ];
diff --git a/pkgs/top-level/python-aliases.nix b/pkgs/top-level/python-aliases.nix
index e75f863bbcbc..8a2789e5dc6b 100644
--- a/pkgs/top-level/python-aliases.nix
+++ b/pkgs/top-level/python-aliases.nix
@@ -80,8 +80,10 @@ mapAliases ({
   bt_proximity = bt-proximity; # added 2021-07-02
   BTrees = btrees; # added 2023-02-19
   cacheyou = throw "cacheyou has been removed, as it was no longer used for the only consumer pdm"; # added 2023-12-21
+  cadquery = throw "cadquery was removed, because it was disabled on all python version since 3.8 and marked as broken"; # added 2024-05-13
   carrot = throw "carrot has been removed, as its development was discontinued in 2012"; # added 2022-01-18
   cchardet = faust-cchardet; # added 2023-03-02
+  cepa = throw "cepa has been removed, as onionshare switched back to stem"; # added 2024-05-07
   class-registry = phx-class-registry; # added 2021-10-05
   cntk = throw "cntk has been removed from nixpkgs, as it was broken and unmaintained"; # Added 2023-10-09
   codespell = throw "codespell has been promoted to a top-level attribute name: `pkgs.codespell`"; # Added 2022-10-02
@@ -92,6 +94,7 @@ mapAliases ({
   coronavirus = throw "coronavirus was removed, because the source is not providing the data anymore."; # added 2023-05-04
   covCore = cov-core; # added 2024-01-03
   cozy = throw "cozy was removed because it was not actually https://pypi.org/project/Cozy/."; # added 2022-01-14
+  cryptacular = throw "cryptacular was removed, because it was disabled on all python version since 3.6 and last updated in 2021"; # Added 2024-05-13
   cryptography_vectors = "cryptography_vectors is no longer exposed in python*Packages because it is used for testing cryptography only."; # Added 2022-03-23
   cx_Freeze = cx-freeze; # added 2023-08-02
   cx_oracle = cx-oracle; # added 2024-01-03
@@ -181,6 +184,7 @@ mapAliases ({
   foundationdb60 = throw "foundationdb60 is no longer maintained, use foundationdb71 instead"; # added 2023-06-06
   foundationdb61 = throw "foundationdb61 is no longer maintained, use foundationdb71 instead"; # added 2023-06-06
   functorch = throw "functorch is now part of the torch package and has therefore been removed. See https://github.com/pytorch/functorch/releases/tag/v1.13.0 for more info."; # added 2022-12-01
+  functools32 = throw "functool32 was removed from nixpkgs, because python 2.7 has reach end of life in early 2020"; # added 2024-05-16
   fritzprofiles = throw "fritzprofiles was removed from nixpkgs, because it was removed as dependency of home-assistant for which it was pacakged."; # added 2024-01-05
   garages-amsterdam = throw "garages-amsterdam has been renamed odp-amsterdam."; # added 2023-01-04
   garminconnect-ha = garminconnect; # added 2022-02-05
@@ -192,6 +196,7 @@ mapAliases ({
   GitPython = gitpython; # added 2022-10-28
   glances = throw "glances has moved to pkgs.glances"; # added 2020-20-28
   glasgow = throw "glasgow has been promoted to a top-level attribute name: `pkgs.glasgow`"; # added 2023-02-05
+  globre = throw "globre was removed, because it was disabled on all python version since 3.7 and last updated in 2020."; # added 2024-05-13
   google_api_python_client = google-api-python-client; # added 2021-03-19
   googleapis_common_protos = googleapis-common-protos; # added 2021-03-19
   google-apitools = throw "google-apitools was removed because it is deprecated and unsupported by upstream"; # added 2023-02-25
@@ -278,6 +283,7 @@ mapAliases ({
   mailman-hyperkitty = throw "Please use pkgs.mailmanPackages.mailman-hyperkitty"; # added 2022-04-29
   mailman-web = throw "Please use pkgs.mailman-web"; # added 2022-04-29
   manticore = throw "manticore has been removed because its dependency wasm no longer builds and is unmaintained"; # added 2023-05-20
+  marshmallow-enum = throw "marshmallow-enum has been removed because it was archived in 2022 and had no maintainer"; # added 2024-05-10
   markerlib = throw "markerlib has been removed because it's abandoned since 2013"; # added 2023-05-19
   memory_profiler = memory-profiler; # added 2023-10-09
   mir_eval = mir-eval; # added 2024-01-07
@@ -305,6 +311,7 @@ mapAliases ({
   pafy = throw "pafy has been removed because it is unmaintained and only a dependency of mps-youtube, itself superseded by yewtube"; # Added 2023-01-19
   pam = python-pam; # added 2020-09-07.
   PasteDeploy = pastedeploy; # added 2021-10-07
+  pathlib = throw "pathlib was removed as it has been integrated in python standard library in version 3.4"; # added 2024-05-13
   pathpy = path; # added 2022-04-12
   pcbnew-transition = pcbnewtransition; # added 2024-03-21
   pdfposter = throw "pdfposter was promoted to a top-level attribute"; # Added 2023-06-29
@@ -325,12 +332,14 @@ mapAliases ({
   pur = throw "pur has been renamed to pkgs.pur"; # added 2021-11-08
   pushbullet = pushbullet-py;  # Added 2022-10-15
   Pweave = pweave; # added 2023-02-19
+  pxml = throw "pxml was removed, because it was disabled on all python version since 3.8 and last updated in 2020."; # added 2024-05-13
   py-radix = throw "py-radix has been removed, since it abandoned"; # added 2023-07-07
   py_stringmatching = py-stringmatching; # added 2023-11-12
   pyalmond = throw "pyalmond has been removed, since its API endpoints have been shutdown"; # added 2023-02-02
   pyblake2 = throw "pyblake2 is deprecated in favor of hashlib"; # added 2023-04-23
   pyblock = throw "pyblock has been removed, since it is abandoned and broken"; # added 2023-06-20
   pydrive = throw "pydrive is broken and deprecated and has been replaced with pydrive2."; # added 2022-06-01
+  pyjet = throw "pyjet is deprecated, use fastjet instead"; # added 2023-05-10
   pygame_sdl2 = pygame-sdl2; # added 2024-01-07
   pygbm = throw "pygbm has been removed, since it is abandoned and broken"; # added 2023-06-20
   PyGithub = pygithub; # added 2023-02-19
@@ -343,7 +352,6 @@ mapAliases ({
   pyialarmxr = pyialarmxr-homeassistant; # added 2022-06-07
   pyialarmxr-homeassistant = throw "The package was removed together with the component support in home-assistant 2022.7.0"; # added 2022-07-07
   PyICU = pyicu; # Added 2022-12-22
-  pyjson5 = json5; # added 2022-08-28
   pyhs100 = throw "pyhs100 has been removed in favor of python-kasa."; # added 2024-01-05
   pylibgen = throw "pylibgen is unmaintained upstreamed, and removed from nixpkgs"; # added 2020-06-20
   PyLD = pyld; # added 2022-06-22
@@ -426,6 +434,7 @@ mapAliases ({
   PyVirtualDisplay = pyvirtualdisplay; # added 2023-02-19
   pywick = throw "pywick has been removed, since it is no longer maintained"; # added 2023-07-01
   pyxb = throw "pyxb has been removed, its last release was in 2017 and it has finally been archived in April 2023."; # added 2024-01-05
+  pyzufall =  throw "pyzufall was removed, because it is no longer maintained"; # added 2024-05-14
   qasm2image = throw "qasm2image is no longer maintained (since November 2018), and is not compatible with the latest pythonPackages.qiskit versions."; # added 2020-12-09
   qds_sdk = qds-sdk; # added 2023-10-21
   Quandl = quandl; # added 2023-02-19
@@ -491,6 +500,7 @@ mapAliases ({
   sphinx-navtree = throw "sphinx-navtree has been removed since it is not compatible with sphinx 3.3 and unmaintained"; # added 2023-07-03
   sqlalchemy_migrate = sqlalchemy-migrate; # added 2021-10-28
   SQLAlchemy-ImageAttach = throw "sqlalchemy-imageattach has been removed as it is incompatible with sqlalchemy 1.4 and unmaintained"; # added 2022-04-23
+  sqlsoup = throw "sqlsoup has been removed as it is incompatible with modern SQLAlchemy and unmaintained"; # added 2024-05-13
   subdownloader = throw "subdownloader has been removed, because it depended on pyqt4"; # added 2022-06-09
   suds-jurko = throw "suds-jurko has been removed, it was using setuptools 2to3 translation feature, which has been removed in setuptools 58"; # added 2023-02-27
   supervise_api = supervise-api; # added 2023-10-11
diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix
index 754a18310412..455b2ddbff3b 100644
--- a/pkgs/top-level/python-packages.nix
+++ b/pkgs/top-level/python-packages.nix
@@ -249,6 +249,8 @@ self: super: with self; {
 
   aiohttp-fast-url-dispatcher = callPackage ../development/python-modules/aiohttp-fast-url-dispatcher { };
 
+  aiohttp-isal = callPackage ../development/python-modules/aiohttp-isal { };
+
   aiohttp-jinja2 = callPackage ../development/python-modules/aiohttp-jinja2 { };
 
   aiohttp-oauthlib = callPackage ../development/python-modules/aiohttp-oauthlib { };
@@ -259,6 +261,8 @@ self: super: with self; {
 
   aiohttp-retry = callPackage ../development/python-modules/aiohttp-retry { };
 
+  aiohttp-session = callPackage ../development/python-modules/aiohttp-session { };
+
   aiohttp-socks = callPackage ../development/python-modules/aiohttp-socks { };
 
   aiohttp-swagger = callPackage ../development/python-modules/aiohttp-swagger { };
@@ -307,6 +311,8 @@ self: super: with self; {
 
   aiolyric = callPackage ../development/python-modules/aiolyric { };
 
+  aiomcache = callPackage ../development/python-modules/aiomcache { };
+
   aiomisc = callPackage ../development/python-modules/aiomisc { };
 
   aiomisc-pytest = callPackage ../development/python-modules/aiomisc-pytest { };
@@ -925,6 +931,8 @@ self: super: with self; {
 
   atsim-potentials = callPackage ../development/python-modules/atsim-potentials { };
 
+  attacut = callPackage ../development/python-modules/attacut { };
+
   attrdict = callPackage ../development/python-modules/attrdict { };
 
   attrs = callPackage ../development/python-modules/attrs { };
@@ -1016,6 +1024,8 @@ self: super: with self; {
 
   avro-python3 = callPackage ../development/python-modules/avro-python3 { };
 
+  avwx-engine = callPackage ../development/python-modules/avwx-engine { };
+
   aw-client = callPackage ../development/python-modules/aw-client { };
 
   aw-core = callPackage ../development/python-modules/aw-core { };
@@ -1330,6 +1340,8 @@ self: super: with self; {
 
   paddlepaddle = callPackage ../development/python-modules/paddlepaddle { };
 
+  pcffont = callPackage ../development/python-modules/pcffont { };
+
   pueblo = callPackage ../development/python-modules/pueblo { };
 
   pulumi = callPackage ../development/python-modules/pulumi { inherit (pkgs) pulumi; };
@@ -1455,6 +1467,14 @@ self: super: with self; {
 
   beancount-docverif = callPackage ../development/python-modules/beancount-docverif { };
 
+  beanhub-cli = callPackage ../development/python-modules/beanhub-cli { };
+
+  beanhub-extract = callPackage ../development/python-modules/beanhub-extract { };
+
+  beanhub-forms = callPackage ../development/python-modules/beanhub-forms { };
+
+  beanhub-import = callPackage ../development/python-modules/beanhub-import { };
+
   beanstalkc = callPackage ../development/python-modules/beanstalkc { };
 
   beartype = callPackage ../development/python-modules/beartype { };
@@ -1507,6 +1527,8 @@ self: super: with self; {
 
   bimmer-connected = callPackage ../development/python-modules/bimmer-connected { };
 
+  binance-connector = callPackage ../development/python-modules/binance-connector { };
+
   binary = callPackage ../development/python-modules/binary { };
 
   binary2strings = callPackage ../development/python-modules/binary2strings { };
@@ -1523,6 +1545,8 @@ self: super: with self; {
 
   binwalk-full = self.binwalk.override { visualizationSupport = true; };
 
+  biom-format = callPackage ../development/python-modules/biom-format { };
+
   biopandas = callPackage ../development/python-modules/biopandas { };
 
   biopython = callPackage ../development/python-modules/biopython { };
@@ -1844,10 +1868,6 @@ self: super: with self; {
 
   cachy = callPackage ../development/python-modules/cachy { };
 
-  cadquery = callPackage ../development/python-modules/cadquery {
-    inherit (pkgs.darwin.apple_sdk.frameworks) Cocoa;
-  };
-
   caffe = toPythonModule (pkgs.caffe.override {
     pythonSupport = true;
     inherit (self) python numpy boost;
@@ -1992,8 +2012,6 @@ self: super: with self; {
 
   coqpit = callPackage ../development/python-modules/coqpit { };
 
-  cepa = callPackage ../development/python-modules/cepa { };
-
   cerberus = callPackage ../development/python-modules/cerberus { };
 
   cert-chain-resolver = callPackage ../development/python-modules/cert-chain-resolver { };
@@ -2559,14 +2577,11 @@ self: super: with self; {
 
   crownstone-uart = callPackage ../development/python-modules/crownstone-uart { };
 
-  cryptacular = callPackage ../development/python-modules/cryptacular { };
-
   cryptg = callPackage ../development/python-modules/cryptg { };
 
   cryptodatahub = callPackage ../development/python-modules/cryptodatahub { };
 
   cryptography = callPackage ../development/python-modules/cryptography {
-    inherit (pkgs.darwin) libiconv;
     inherit (pkgs.darwin.apple_sdk.frameworks) Security;
   };
 
@@ -2591,7 +2606,6 @@ self: super: with self; {
   css-html-js-minify = callPackage ../development/python-modules/css-html-js-minify { };
 
   css-inline = callPackage ../development/python-modules/css-inline {
-    inherit (pkgs.darwin) libiconv;
     inherit (pkgs.darwin.apple_sdk.frameworks) Security SystemConfiguration;
   };
 
@@ -2615,6 +2629,8 @@ self: super: with self; {
 
   cu2qu = callPackage ../development/python-modules/cu2qu { };
 
+  customtkinter = callPackage ../development/python-modules/customtkinter { };
+
   cucumber-tag-expressions = callPackage ../development/python-modules/cucumber-tag-expressions { };
 
   cufflinks = callPackage ../development/python-modules/cufflinks { };
@@ -2626,6 +2642,8 @@ self: super: with self; {
 
   curlify = callPackage ../development/python-modules/curlify { };
 
+  curl-cffi = callPackage ../development/python-modules/curl-cffi { };
+
   curtsies = callPackage ../development/python-modules/curtsies { };
 
   curve25519-donna = callPackage ../development/python-modules/curve25519-donna { };
@@ -3024,6 +3042,8 @@ self: super: with self; {
 
   dissect = callPackage ../development/python-modules/dissect { };
 
+  dissect-archive = callPackage ../development/python-modules/dissect-archive { };
+
   dissect-btrfs = callPackage ../development/python-modules/dissect-btrfs { };
 
   dissect-cim = callPackage ../development/python-modules/dissect-cim { };
@@ -3408,6 +3428,8 @@ self: super: with self; {
 
   dmenu-python = callPackage ../development/python-modules/dmenu { };
 
+  dm-control = callPackage ../development/python-modules/dm-control { };
+
   dm-env = callPackage ../development/python-modules/dm-env { };
 
   dm-haiku = callPackage ../development/python-modules/dm-haiku { };
@@ -3530,6 +3552,8 @@ self: super: with self; {
 
   drawilleplot = callPackage ../development/python-modules/drawilleplot { };
 
+  drawsvg = callPackage ../development/python-modules/drawsvg { };
+
   dremel3dpy = callPackage ../development/python-modules/dremel3dpy { };
 
   drf-jwt = callPackage ../development/python-modules/drf-jwt { };
@@ -4173,6 +4197,8 @@ self: super: with self; {
 
   filecheck = callPackage ../development/python-modules/filecheck { };
 
+  filedate = callPackage ../development/python-modules/filedate { };
+
   filedepot = callPackage ../development/python-modules/filedepot { };
 
   filelock = callPackage ../development/python-modules/filelock { };
@@ -4544,8 +4570,6 @@ self: super: with self; {
 
   functiontrace = callPackage ../development/python-modules/functiontrace { };
 
-  functools32 = callPackage ../development/python-modules/functools32 { };
-
   funcy = callPackage ../development/python-modules/funcy { };
 
   funsor = callPackage ../development/python-modules/funsor { };
@@ -4753,6 +4777,8 @@ self: super: with self; {
 
   gfsubsets = callPackage ../development/python-modules/gfsubsets { };
 
+  gguf = callPackage ../development/python-modules/gguf { };
+
   ghapi = callPackage ../development/python-modules/ghapi { };
 
   ghdiff = callPackage ../development/python-modules/ghdiff { };
@@ -4820,8 +4846,6 @@ self: super: with self; {
 
   glob2 = callPackage ../development/python-modules/glob2 { };
 
-  globre = callPackage ../development/python-modules/globre { };
-
   globus-sdk = callPackage ../development/python-modules/globus-sdk { };
 
   glom = callPackage ../development/python-modules/glom { };
@@ -5358,6 +5382,8 @@ self: super: with self; {
 
   hikari = callPackage ../development/python-modules/hikari { };
 
+  hikari-lightbulb = callPackage ../development/python-modules/hikari-lightbulb { };
+
   hikvision = callPackage ../development/python-modules/hikvision { };
 
   hiredis = callPackage ../development/python-modules/hiredis { };
@@ -5515,6 +5541,8 @@ self: super: with self; {
 
   httpx-sse = callPackage ../development/python-modules/httpx-sse { };
 
+  httpx-ws = callPackage ../development/python-modules/httpx-ws { };
+
   huawei-lte-api = callPackage ../development/python-modules/huawei-lte-api { };
 
   huey = callPackage ../development/python-modules/huey { };
@@ -5895,9 +5923,13 @@ self: super: with self; {
 
   irctokens = callPackage ../development/python-modules/irctokens { };
 
+  isal = callPackage ../development/python-modules/isal { };
+
   isbnlib = callPackage ../development/python-modules/isbnlib { };
 
-  islpy = callPackage ../development/python-modules/islpy { };
+  islpy = callPackage ../development/python-modules/islpy {
+    isl = pkgs.isl_0_24;
+  };
 
   iso3166 = callPackage ../development/python-modules/iso3166 { };
 
@@ -5931,6 +5963,8 @@ self: super: with self; {
 
   itemloaders = callPackage ../development/python-modules/itemloaders { };
 
+  iterable-io = callPackage ../development/python-modules/iterable-io { };
+
   iteration-utilities = callPackage ../development/python-modules/iteration-utilities { };
 
   iterative-telemetry = callPackage ../development/python-modules/iterative-telemetry { };
@@ -6562,6 +6596,8 @@ self: super: with self; {
 
   pa-ringbuffer = callPackage ../development/python-modules/pa-ringbuffer { };
 
+  lib4sbom = callPackage ../development/python-modules/lib4sbom { };
+
   libais = callPackage ../development/python-modules/libais { };
 
   libarchive-c = callPackage ../development/python-modules/libarchive-c {
@@ -6616,6 +6652,8 @@ self: super: with self; {
     inherit (pkgs.config) cudaSupport;
   };
 
+  libgravatar = callPackage ../development/python-modules/libgravatar { };
+
   libiio = (toPythonModule (pkgs.libiio.override {
     pythonSupport = true;
     inherit python;
@@ -6932,6 +6970,8 @@ self: super: with self; {
 
   lnkparse3 = callPackage ../development/python-modules/lnkparse3 { };
 
+  loadcredential = callPackage ../development/python-modules/loadcredential { };
+
   loca = callPackage ../development/python-modules/loca { };
 
   localimport = callPackage ../development/python-modules/localimport { };
@@ -7170,8 +7210,6 @@ self: super: with self; {
 
   marshmallow-dataclass = callPackage ../development/python-modules/marshmallow-dataclass { };
 
-  marshmallow-enum = callPackage ../development/python-modules/marshmallow-enum { };
-
   marshmallow-oneofschema = callPackage ../development/python-modules/marshmallow-oneofschema { };
 
   marshmallow-polyfield = callPackage ../development/python-modules/marshmallow-polyfield { };
@@ -7229,7 +7267,8 @@ self: super: with self; {
   maya = callPackage ../development/python-modules/maya { };
 
   mayavi = pkgs.libsForQt5.callPackage ../development/python-modules/mayavi {
-    inherit (self) buildPythonPackage pythonOlder pythonAtLeast pyface pygments numpy packaging vtk traitsui envisage apptools pyqt5;
+    inherit buildPythonPackage pythonOlder pythonAtLeast;
+    inherit (self) pyface pygments numpy packaging vtk traitsui envisage apptools pyqt5;
   };
 
   mayim = callPackage ../development/python-modules/mayim { };
@@ -7371,6 +7410,8 @@ self: super: with self; {
 
   mhcgnomes = callPackage ../development/python-modules/mhcgnomes { };
 
+  miasm = callPackage ../development/python-modules/miasm { };
+
   miauth = callPackage ../development/python-modules/miauth { };
 
   micawber = callPackage ../development/python-modules/micawber { };
@@ -7409,6 +7450,8 @@ self: super: with self; {
 
   millheater = callPackage ../development/python-modules/millheater { };
 
+  minari = callPackage ../development/python-modules/minari { };
+
   mindsdb-evaluator = callPackage ../development/python-modules/mindsdb-evaluator { };
 
   minexr = callPackage ../development/python-modules/minexr { };
@@ -7658,6 +7701,8 @@ self: super: with self; {
 
   mpd2 = callPackage ../development/python-modules/mpd2 { };
 
+  mpegdash = callPackage ../development/python-modules/mpegdash { };
+
   mpi4py = callPackage ../development/python-modules/mpi4py { };
 
   mpldatacursor = callPackage ../development/python-modules/mpldatacursor { };
@@ -8612,6 +8657,8 @@ self: super: with self; {
 
   nbformat = callPackage ../development/python-modules/nbformat { };
 
+  nbmake = callPackage ../development/python-modules/nbmake { };
+
   nbmerge = callPackage ../development/python-modules/nbmerge { };
 
   nbsmoke = callPackage ../development/python-modules/nbsmoke { };
@@ -8710,10 +8757,9 @@ self: super: with self; {
 
   nfcpy = callPackage ../development/python-modules/nfcpy { };
 
-  nftables = toPythonModule (pkgs.nftables.override {
-    python3 = python;
-    withPython = true;
-  });
+  nftables = callPackage ../os-specific/linux/nftables/python.nix {
+    inherit (pkgs) nftables;
+  };
 
   nh3 = callPackage ../development/python-modules/nh3 { };
 
@@ -8835,6 +8881,8 @@ self: super: with self; {
 
   nose-warnings-filters = callPackage ../development/python-modules/nose-warnings-filters { };
 
+  nose-xunitmp = callPackage ../development/python-modules/nose-xunitmp { };
+
   nosexcover = callPackage ../development/python-modules/nosexcover { };
 
   notebook = callPackage ../development/python-modules/notebook { };
@@ -9239,6 +9287,8 @@ self: super: with self; {
 
   optimum = callPackage ../development/python-modules/optimum { };
 
+  optree = callPackage ../development/python-modules/optree { };
+
   optuna = callPackage ../development/python-modules/optuna { };
 
   opuslib = callPackage ../development/python-modules/opuslib { };
@@ -9475,8 +9525,6 @@ self: super: with self; {
 
   pathlib2 = callPackage ../development/python-modules/pathlib2 { };
 
-  pathlib = callPackage ../development/python-modules/pathlib { };
-
   pathlib-abc = callPackage ../development/python-modules/pathlib-abc { };
 
   pathos = callPackage ../development/python-modules/pathos { };
@@ -9565,6 +9613,8 @@ self: super: with self; {
 
   peco = callPackage ../development/python-modules/peco { };
 
+  pettingzoo = callPackage ../development/python-modules/pettingzoo { };
+
   peewee = callPackage ../development/python-modules/peewee { };
 
   peewee-migrate = callPackage ../development/python-modules/peewee-migrate { };
@@ -9623,6 +9673,8 @@ self: super: with self; {
 
   pins = callPackage ../development/python-modules/pins { };
 
+  pipetools = callPackage ../development/python-modules/pipetools { };
+
   pg8000 = callPackage ../development/python-modules/pg8000 { };
 
   pgcli = callPackage ../development/python-modules/pgcli { };
@@ -9719,6 +9771,8 @@ self: super: with self; {
 
   phpserialize = callPackage ../development/python-modules/phpserialize { };
 
+  phunspell = callPackage ../development/python-modules/phunspell { };
+
   phx-class-registry = callPackage ../development/python-modules/phx-class-registry { };
 
   pi1wire = callPackage ../development/python-modules/pi1wire { };
@@ -9845,6 +9899,8 @@ self: super: with self; {
 
   ppdeep = callPackage ../development/python-modules/ppdeep { };
 
+  private-gpt = callPackage ../development/python-modules/private-gpt { };
+
   prodict = callPackage ../development/python-modules/prodict { };
 
   prometheus-pandas = callPackage ../development/python-modules/prometheus-pandas { };
@@ -9871,6 +9927,8 @@ self: super: with self; {
 
   pycketcasts = callPackage ../development/python-modules/pycketcasts { };
 
+  pycomm3 = callPackage ../development/python-modules/pycomm3 { };
+
   pycomposefile = callPackage ../development/python-modules/pycomposefile { };
   pycontrol4 = callPackage ../development/python-modules/pycontrol4 { };
 
@@ -10225,6 +10283,8 @@ self: super: with self; {
 
   portend = callPackage ../development/python-modules/portend { };
 
+  portion = callPackage ../development/python-modules/portion { };
+
   port-for = callPackage ../development/python-modules/port-for { };
 
   portpicker = callPackage ../development/python-modules/portpicker { };
@@ -10285,6 +10345,8 @@ self: super: with self; {
 
   pretend = callPackage ../development/python-modules/pretend { };
 
+  pretty-errors = callPackage ../development/python-modules/pretty-errors { };
+
   prettytable = callPackage ../development/python-modules/prettytable { };
 
   primecountpy = callPackage ../development/python-modules/primecountpy { };
@@ -10471,6 +10533,8 @@ self: super: with self; {
 
   pweave = callPackage ../development/python-modules/pweave { };
 
+  pwkit = callPackage ../development/python-modules/pwkit { };
+
   pwlf = callPackage ../development/python-modules/pwlf { };
 
   pwndbg = callPackage ../development/python-modules/pwndbg { };
@@ -10479,8 +10543,6 @@ self: super: with self; {
     debugger = pkgs.gdb;
   };
 
-  pxml = callPackage ../development/python-modules/pxml { };
-
   py-air-control = callPackage ../development/python-modules/py-air-control { };
 
   py-air-control-exporter = callPackage ../development/python-modules/py-air-control-exporter { };
@@ -10547,6 +10609,8 @@ self: super: with self; {
 
   pyairvisual = callPackage ../development/python-modules/pyairvisual { };
 
+  pyais = callPackage ../development/python-modules/pyais { };
+
   pyalgotrade = callPackage ../development/python-modules/pyalgotrade { };
 
   pyamg = callPackage ../development/python-modules/pyamg { };
@@ -11109,12 +11173,12 @@ self: super: with self; {
 
   pyisbn = callPackage ../development/python-modules/pyisbn { };
 
-  pyjet = callPackage ../development/python-modules/pyjet { };
-
   pyjks = callPackage ../development/python-modules/pyjks { };
 
   pyjnius = callPackage ../development/python-modules/pyjnius { };
 
+  pyjson5 = callPackage ../development/python-modules/pyjson5 { };
+
   pyjsparser = callPackage ../development/python-modules/pyjsparser { };
 
   pyjwkest = callPackage ../development/python-modules/pyjwkest { };
@@ -11640,9 +11704,7 @@ self: super: with self; {
 
   pyreaderwriterlock = callPackage ../development/python-modules/pyreaderwriterlock { };
 
-  pyreadstat = callPackage ../development/python-modules/pyreadstat {
-    inherit (pkgs.darwin) libiconv;
-  };
+  pyreadstat = callPackage ../development/python-modules/pyreadstat { };
 
   pyrealsense2 = toPythonModule (pkgs.librealsense.override {
     enablePython = true;
@@ -12097,6 +12159,8 @@ self: super: with self; {
 
   pytest-logdog = callPackage ../development/python-modules/pytest-logdog { };
 
+  pytest-markdown-docs = callPackage ../development/python-modules/pytest-markdown-docs { };
+
   pytest-md-report = callPackage ../development/python-modules/pytest-md-report { };
 
   pytest-metadata = callPackage ../development/python-modules/pytest-metadata { };
@@ -12772,8 +12836,6 @@ self: super: with self; {
 
   pyzmq = callPackage ../development/python-modules/pyzmq { };
 
-  pyzufall = callPackage ../development/python-modules/pyzufall { };
-
   qbittorrent-api = callPackage ../development/python-modules/qbittorrent-api { };
 
   qasync = callPackage ../development/python-modules/qasync { };
@@ -13102,6 +13164,8 @@ self: super: with self; {
 
   reportlab = callPackage ../development/python-modules/reportlab { };
 
+  reportlab-qrcode = callPackage ../development/python-modules/reportlab-qrcode { };
+
   repoze-lru = callPackage ../development/python-modules/repoze-lru { };
 
   repoze-sphinx-autointerface = callPackage ../development/python-modules/repoze-sphinx-autointerface { };
@@ -13262,6 +13326,8 @@ self: super: with self; {
 
   rlax = callPackage ../development/python-modules/rlax { };
 
+  rlcard = callPackage ../development/python-modules/rlcard { };
+
   rlp = callPackage ../development/python-modules/rlp { };
 
   rmcl = callPackage ../development/python-modules/rmcl { };
@@ -13506,6 +13572,8 @@ self: super: with self; {
 
   sarif-om = callPackage ../development/python-modules/sarif-om { };
 
+  sarif-tools = callPackage ../development/python-modules/sarif-tools { };
+
   sarge = callPackage ../development/python-modules/sarge { };
 
   sasmodels = callPackage ../development/python-modules/sasmodels { };
@@ -13796,6 +13864,8 @@ self: super: with self; {
     inherit (pkgs) cmake llvmPackages;
   });
 
+  shimmy = callPackage ../development/python-modules/shimmy { };
+
   shippai = callPackage ../development/python-modules/shippai { };
 
   shiv = callPackage ../development/python-modules/shiv { };
@@ -14388,6 +14458,8 @@ self: super: with self; {
 
   sqlglot = callPackage ../development/python-modules/sqlglot { };
 
+  sqlite-anyio = callPackage ../development/python-modules/sqlite-anyio { };
+
   sqlitedict = callPackage ../development/python-modules/sqlitedict { };
 
   sqlite-migrate = callPackage ../development/python-modules/sqlite-migrate { };
@@ -14406,8 +14478,6 @@ self: super: with self; {
 
   sqlparse = callPackage ../development/python-modules/sqlparse { };
 
-  sqlsoup = callPackage ../development/python-modules/sqlsoup { };
-
   sqltrie = callPackage ../development/python-modules/sqltrie { };
 
   squarify = callPackage ../development/python-modules/squarify { };
@@ -14815,6 +14885,8 @@ self: super: with self; {
 
   tensorflow-bin = callPackage ../development/python-modules/tensorflow/bin.nix {
     inherit (pkgs.config) cudaSupport;
+    # https://www.tensorflow.org/install/source#gpu
+    cudaPackages = pkgs.cudaPackages_11;
   };
 
   tensorflow-build = let
@@ -14822,6 +14894,8 @@ self: super: with self; {
       protobufTF = pkgs.protobuf_21.override {
         abseil-cpp = pkgs.abseil-cpp_202301;
       };
+      # https://www.tensorflow.org/install/source#gpu
+      cudaPackagesTF = pkgs.cudaPackages_11;
       grpcTF = (pkgs.grpc.overrideAttrs (
         oldAttrs: rec {
           # nvcc fails on recent grpc versions, so we use the latest patch level
@@ -14867,6 +14941,7 @@ self: super: with self; {
     inherit (pkgs.darwin.apple_sdk.frameworks) Foundation Security;
     flatbuffers-core = pkgs.flatbuffers;
     flatbuffers-python = self.flatbuffers;
+    cudaPackages = compat.cudaPackagesTF;
     protobuf-core = compat.protobufTF;
     protobuf-python = compat.protobuf-pythonTF;
     grpc = compat.grpcTF;
@@ -15123,6 +15198,8 @@ self: super: with self; {
 
   tinysegmenter = callPackage ../development/python-modules/tinysegmenter { };
 
+  tinytuya = callPackage ../development/python-modules/tinytuya { };
+
   tissue = callPackage ../development/python-modules/tissue { };
 
   titlecase = callPackage ../development/python-modules/titlecase { };
@@ -15194,6 +15271,8 @@ self: super: with self; {
     openai-triton = self.openai-triton-bin;
   };
 
+  torchsnapshot = callPackage ../development/python-modules/torchsnapshot { };
+
   torchWithCuda = self.torch.override {
     openai-triton = self.openai-triton-cuda;
     cudaSupport = true;
@@ -15358,6 +15437,8 @@ self: super: with self; {
 
   trueskill = callPackage ../development/python-modules/trueskill { };
 
+  truncnorm = callPackage ../development/python-modules/truncnorm { };
+
   trustme = callPackage ../development/python-modules/trustme { };
 
   truststore = callPackage ../development/python-modules/truststore { };
@@ -16512,6 +16593,8 @@ self: super: with self; {
     inherit (pkgs.darwin.apple_sdk.frameworks) ApplicationServices CoreServices;
   };
 
+  uxsim = callPackage ../development/python-modules/uxsim { };
+
   vaa = callPackage ../development/python-modules/vaa { };
 
   vacuum-map-parser-base = callPackage ../development/python-modules/vacuum-map-parser-base { };
@@ -16752,6 +16835,8 @@ self: super: with self; {
 
   wavinsentio = callPackage ../development/python-modules/wavinsentio { };
 
+  waybackpy = callPackage ../development/python-modules/waybackpy {};
+
   wazeroutecalculator = callPackage ../development/python-modules/wazeroutecalculator { };
 
   wcag-contrast-ratio = callPackage ../development/python-modules/wcag-contrast-ratio { };
diff --git a/pkgs/top-level/release-attrpaths-superset.nix b/pkgs/top-level/release-attrpaths-superset.nix
index cd48453fa0ee..a80b40d36060 100644
--- a/pkgs/top-level/release-attrpaths-superset.nix
+++ b/pkgs/top-level/release-attrpaths-superset.nix
@@ -76,6 +76,7 @@ let
 
     buildHaskellPackages = true;
     buildPackages = true;
+    buildFreebsd = true;
     generateOptparseApplicativeCompletions = true;
 
     callPackage = true;
diff --git a/pkgs/top-level/release-cross.nix b/pkgs/top-level/release-cross.nix
index 93d1eaa9a83a..d6896155c920 100644
--- a/pkgs/top-level/release-cross.nix
+++ b/pkgs/top-level/release-cross.nix
@@ -93,7 +93,6 @@ let
 
   windowsCommon = recursiveUpdate gnuCommon {
     boehmgc = nativePlatforms;
-    guile_1_8 = nativePlatforms;
     libffi = nativePlatforms;
     libtool = nativePlatforms;
     libunistring = nativePlatforms;
diff --git a/pkgs/top-level/release-haskell.nix b/pkgs/top-level/release-haskell.nix
index 5ebc1c78a89f..a778583172b2 100644
--- a/pkgs/top-level/release-haskell.nix
+++ b/pkgs/top-level/release-haskell.nix
@@ -74,6 +74,7 @@ let
     ghc965
     ghc981
     ghc982
+    ghc9101
   ];
 
   # packagePlatforms applied to `haskell.packages.*`
@@ -266,7 +267,6 @@ let
         agda
         arion
         bench
-        bustle
         blucontrol
         cabal-install
         cabal2nix
@@ -504,22 +504,27 @@ let
       cabal-install = lib.subtractLists [
         compilerNames.ghc981
         compilerNames.ghc982
+        compilerNames.ghc9101
       ] released;
       Cabal_3_10_3_0 = lib.subtractLists [
         compilerNames.ghc981
         compilerNames.ghc982
+        compilerNames.ghc9101
       ] released;
       Cabal-syntax_3_10_3_0 = lib.subtractLists [
         compilerNames.ghc981
         compilerNames.ghc982
+        compilerNames.ghc9101
       ] released;
       cabal2nix = lib.subtractLists [
         compilerNames.ghc981
         compilerNames.ghc982
+        compilerNames.ghc9101
       ] released;
       cabal2nix-unstable = lib.subtractLists [
         compilerNames.ghc981
         compilerNames.ghc982
+        compilerNames.ghc9101
       ] released;
       funcmp = released;
       haskell-language-server = lib.subtractLists [
@@ -527,25 +532,31 @@ let
         compilerNames.ghc8107
         # Support ceased as of 2.5.0.0
         compilerNames.ghc902
+        # No support yet (2024-05-12)
+        compilerNames.ghc9101
       ] released;
       hoogle = lib.subtractLists [
         compilerNames.ghc981
         compilerNames.ghc982
+        compilerNames.ghc9101
       ] released;
       hlint = lib.subtractLists [
         compilerNames.ghc902
         compilerNames.ghc981
         compilerNames.ghc982
+        compilerNames.ghc9101
       ] released;
       hpack = lib.subtractLists [
         compilerNames.ghc981
         compilerNames.ghc982
+        compilerNames.ghc9101
       ] released;
       hsdns = released;
       jailbreak-cabal = released;
       language-nix = lib.subtractLists [
         compilerNames.ghc981
         compilerNames.ghc982
+        compilerNames.ghc9101
       ] released;
       large-hashable = [
         compilerNames.ghc928
@@ -554,6 +565,7 @@ let
       titlecase = lib.subtractLists [
         compilerNames.ghc981
         compilerNames.ghc982
+        compilerNames.ghc9101
       ] released;
       ghc-api-compat = [
         compilerNames.ghc8107
@@ -565,14 +577,17 @@ let
       ghc-lib = lib.subtractLists [
         compilerNames.ghc981
         compilerNames.ghc982
+        compilerNames.ghc9101
       ] released;
       ghc-lib-parser = lib.subtractLists [
         compilerNames.ghc981
         compilerNames.ghc982
+        compilerNames.ghc9101
       ] released;
       ghc-lib-parser-ex = lib.subtractLists [
         compilerNames.ghc981
         compilerNames.ghc982
+        compilerNames.ghc9101
       ] released;
       ghc-source-gen = [
         # Feel free to remove these as they break,
@@ -589,11 +604,15 @@ let
       hashable = lib.subtractLists [
         compilerNames.ghc981
         compilerNames.ghc982
+        compilerNames.ghc9101
+      ] released;
+      primitive = lib.subtractLists [
+        compilerNames.ghc9101
       ] released;
-      primitive = released;
       weeder = lib.subtractLists [
         compilerNames.ghc981
         compilerNames.ghc982
+        compilerNames.ghc9101
       ] released;
     })
     {
diff --git a/pkgs/top-level/splice.nix b/pkgs/top-level/splice.nix
index 9ac0fe2200f9..c477d797795a 100644
--- a/pkgs/top-level/splice.nix
+++ b/pkgs/top-level/splice.nix
@@ -148,17 +148,23 @@ in
   makeScopeWithSplicing' = lib.makeScopeWithSplicing' { inherit splicePackages; inherit (pkgs) newScope; };
 
   # generate 'otherSplices' for 'makeScopeWithSplicing'
-  generateSplicesForMkScope = attr:
+  generateSplicesForMkScope = attrs:
     let
-      split = X: lib.splitString "." "${X}.${attr}";
+      split = X: [ X ] ++ (
+        if builtins.isList attrs
+          then attrs
+        else if builtins.isString attrs
+          then lib.splitString "." attrs
+        else throw "generateSplicesForMkScope must be passed a list of string or string"
+      );
+      bad = throw "attribute should be found";
     in
     {
-      # nulls should never be reached
-      selfBuildBuild = lib.attrByPath (split "pkgsBuildBuild") null pkgs;
-      selfBuildHost = lib.attrByPath (split "pkgsBuildHost") null pkgs;
-      selfBuildTarget = lib.attrByPath (split "pkgsBuildTarget") null pkgs;
-      selfHostHost = lib.attrByPath (split "pkgsHostHost") null pkgs;
-      selfHostTarget = lib.attrByPath (split "pkgsHostTarget") null pkgs;
+      selfBuildBuild = lib.attrByPath (split "pkgsBuildBuild") bad pkgs;
+      selfBuildHost = lib.attrByPath (split "pkgsBuildHost") bad pkgs;
+      selfBuildTarget = lib.attrByPath (split "pkgsBuildTarget") bad pkgs;
+      selfHostHost = lib.attrByPath (split "pkgsHostHost") bad pkgs;
+      selfHostTarget = lib.attrByPath (split "pkgsHostTarget") bad pkgs;
       selfTargetTarget = lib.attrByPath (split "pkgsTargetTarget") { } pkgs;
     };
 
diff --git a/pkgs/top-level/stage.nix b/pkgs/top-level/stage.nix
index 3b84026b4696..087b43c3cb14 100644
--- a/pkgs/top-level/stage.nix
+++ b/pkgs/top-level/stage.nix
@@ -57,9 +57,7 @@ in
 , # Non-GNU/Linux OSes are currently "impure" platforms, with their libc
   # outside of the store.  Thus, GCC, GFortran, & co. must always look for files
   # in standard system directories (/usr/include, etc.)
-  noSysDirs ? stdenv.buildPlatform.system != "x86_64-freebsd"
-           && stdenv.buildPlatform.system != "i686-freebsd"
-           && stdenv.buildPlatform.system != "x86_64-solaris"
+  noSysDirs ? stdenv.buildPlatform.system != "x86_64-solaris"
            && stdenv.buildPlatform.system != "x86_64-kfreebsd-gnu"
 
 , # The configuration attribute set
@@ -283,8 +281,8 @@ let
           if stdenv.isLinux
           then makeMuslParsedPlatform stdenv.hostPlatform.parsed
           else stdenv.hostPlatform.parsed;
-      } // lib.optionalAttrs (stdenv.hostPlatform.system == "powerpc64-linux") {
-        gcc.abi = "elfv2";
+        gcc = lib.optionalAttrs (stdenv.hostPlatform.system == "powerpc64-linux") { abi = "elfv2"; } //
+          stdenv.hostPlatform.gcc or {};
       };
     });